{
  "$schema": "https://docs.renovatebot.com/renovate-schema.json",
  "automerge": false,
  "dependencyDashboard": true,
  "extends": [
    "config:recommended",
    ":dependencyDashboard",
    "schedule:weekly",
    ":prHourlyLimitNone",
    ":prConcurrentLimitNone",
    ":semanticPrefixFixDepsChoreOthers",
    "group:monorepos",
    "group:recommended",
    "replacements:all",
    "workarounds:all"
  ],
  "ignoreDeps": [],
  "labels": ["dependencies"],
  "packageRules": [
    {
      "description": "Un-group tilde ranges",
      "matchManagers": ["npm", "pnpm", "yarn", "bun"],
      "matchCurrentValue": "^~.*$",
      "groupName": null,
      "groupSlug": null,
      "separateMajorMinor": true,
      "separateMinorPatch": true
    },
    {
      "description": "Un-group pinned deps (exact x.y.z)",
      "matchManagers": ["npm", "pnpm", "yarn", "bun"],
      "matchCurrentValue": "/^\\d+\\.\\d+\\.\\d+([+-][0-9A-Za-z.-]+)?$/",
      "groupName": null,
      "groupSlug": null,
      "separateMajorMinor": true,
      "separateMinorPatch": true
    },
    {
      "description": "Un-group experimental caret ranges (^0.x)",
      "matchManagers": ["npm", "pnpm", "yarn", "bun"],
      "matchCurrentValue": "^\\^0\\.\\d+(\\.\\d+)?([+-][0-9A-Za-z.-]+)?$",
      "groupName": null,
      "separateMajorMinor": true,
      "separateMinorPatch": true
    },
    {
      "description": "Group ^>=1 ranges for patch/minor",
      "matchManagers": ["npm", "pnpm", "yarn", "bun"],
      "matchCurrentValue": "/^\\^[1-9]+[0-9]*(\\.\\d+){0,2}([+-][0-9A-Za-z.-]+)?$/",
      "matchUpdateTypes": ["minor", "patch"],
      "groupName": "all non-major dependencies",
      "groupSlug": "all-non-major-dependencies"
    }
  ],
  "postUpdateOptions": ["yarnDedupeHighest"],
  "prConcurrentLimit": 30,
  "prHourlyLimit": 0,
  "rangeStrategy": "bump",
  "rebaseWhen": "conflicted",
  "schedule": "on sunday before 6:00am",
  "separateMajorMinor": true,
  "separateMinorPatch": false,
  "timezone": "UTC"
}