{
  "$schema": "https://docs.renovatebot.com/renovate-schema.json",
  "automerge": false,
  "commitMessageAction": "Bump",
  "commitMessageExtra": "to {{newValue}}",
  "commitMessageTopic": "{{depName}}",
  "dependencyDashboard": true,
  "rebaseWhen": "conflicted",
  "labels": ["dependencies"],
  "stopUpdatingLabel": "on hold",
  "packageRules": [
    {
      "matchDepTypes": ["devDependencies"],
      "matchUpdateTypes": ["minor", "patch", "pin", "digest"],
      "automerge": true
    },
    {
      "matchDepTypes": ["peerDependencies"],
      "rangeStrategy": "widen"
    },
    {
      "groupName": "babel",
      "matchPackageNames": ["@babel/**"]
    },
    {
      "groupName": "D3",
      "matchPackageNames": ["d3-*", "@types/d3-*"]
    },
    {
      "groupName": "react-spring",
      "matchPackageNames": ["@react-spring/**"]
    },
    {
      "groupName": "Emotion",
      "matchPackageNames": ["@emotion/**"]
    },
    {
      "groupName": "core-js",
      "matchPackageNames": ["core-js"],
      "allowedVersions": "< 2.0.0"
    },
    {
      "groupName": "React",
      "matchPackageNames": [
        "react",
        "react-dom",
        "react-is",
        "react-test-renderer",
        "@types/react",
        "@types/react-dom"
      ]
    },
    {
      "groupName": "React router",
      "matchPackageNames": ["react-router", "react-router-dom"]
    },
    {
      "groupName": "typescript-eslint",
      "matchPackageNames": ["@typescript-eslint/**"]
    },
    {
      "groupName": "ESLint plugins",
      "matchPackageNames": ["eslint-plugin-*", "!eslint-plugin-react-compiler"]
    },
    {
      "groupName": "@types/node",
      "matchPackageNames": ["@types/node"],
      "allowedVersions": "< 21.0.0"
    },
    {
      "groupName": "bundling fixtures",
      "matchFileNames": ["test/bundling/fixtures/**/package.json"],
      "schedule": "every 6 months on the first day of the month"
    },
    {
      "groupName": "examples",
      "matchFileNames": ["examples/**/package.json"],
      "minor": {
        "enabled": false
      },
      "patch": {
        "enabled": false
      }
    },
    {
      "groupName": "node",
      "matchPackageNames": ["node", "cimg/node"],
      "enabled": false
    },
    {
      "groupName": "MUI Core",
      "matchPackageNames": [
        "@mui/icons-material",
        "@mui/joy",
        "@mui/lab",
        "@mui/material",
        "@mui/material-nextjs",
        "@mui/styles",
        "@mui/system",
        "@mui/types",
        "@mui/utils"
      ],
      "allowedVersions": "< 6.0.0"
    },
    {
      "groupName": "MUI Internal",
      "matchPackageNames": ["@mui/internal-*", "@mui/docs"]
    },
    {
      "groupName": "Playwright",
      "matchPackageNames": ["playwright", "@playwright/test"]
    },
    {
      "matchDepTypes": ["action"],
      "pinDigests": true,
      "automerge": true
    },
    {
      "groupName": "GitHub Actions",
      "matchManagers": ["github-actions"]
    },
    {
      "groupName": "Vite & Vitest",
      "matchPackageNames": ["@vitejs/**", "/vitest/"]
    }
  ],
  "postUpdateOptions": ["pnpmDedupe"],
  "prConcurrentLimit": 30,
  "prHourlyLimit": 0,
  "rangeStrategy": "bump",
  "schedule": "on sunday before 6:00am",
  "timezone": "UTC",
  "lockFileMaintenance": {
    "enabled": true,
    "schedule": "before 6:00am on the first day of the month"
  }
}
