{
  "name": "sf-decomposer",
  "description": "Decompose Salesforce metadata into granular, VCS-friendly files; recompose for deployment.",
  "version": "6.38.5",
  "dependencies": {
    "@oclif/core": "4.11.11",
    "@salesforce/core": "8.31.4",
    "@salesforce/sf-plugins-core": "12.2.25",
    "@salesforce/source-deploy-retrieve": "12.37.0",
    "config-disassembler": "3.0.2"
  },
  "devDependencies": {
    "@biomejs/biome": "2.5.1",
    "@commitlint/cli": "21.1.0",
    "@commitlint/config-conventional": "21.1.0",
    "@salesforce/cli-plugins-testkit": "5.3.62",
    "@salesforce/dev-config": "4.3.3",
    "@stryker-mutator/core": "9.6.1",
    "@stryker-mutator/vitest-runner": "9.6.1",
    "@types/node": "25.9.4",
    "@vitest/coverage-v8": "4.1.9",
    "husky": "9.1.7",
    "knip": "6.23.0",
    "lint-staged": "17.0.8",
    "oclif": "4.23.24",
    "patch-package": "8.0.1",
    "shx": "0.4.0",
    "tsx": "4.23.0",
    "typescript": "7.0.2",
    "vitest": "4.1.9",
    "wireit": "0.14.13"
  },
  "engines": {
    "node": ">=22.0.0"
  },
  "files": [
    "/lib",
    "/messages",
    "/oclif.manifest.json",
    "/oclif.lock",
    "/CHANGELOG.md",
    "/HANDBOOK.md"
  ],
  "keywords": [
    "salesforce",
    "salesforcedx",
    "sf",
    "sf-plugin",
    "sfdx-plugin",
    "git",
    "version-control",
    "vcs",
    "decomposition",
    "deployment",
    "xml",
    "yaml",
    "json",
    "decompose",
    "reassemble",
    "disassemble",
    "split",
    "merge",
    "metadata"
  ],
  "license": "MIT",
  "oclif": {
    "commands": "./lib/commands",
    "bin": "sf",
    "topicSeparator": " ",
    "topics": {
      "decomposer": {
        "description": "Decompose and recompose Salesforce metadata files"
      }
    },
    "devPlugins": [
      "@oclif/plugin-help"
    ],
    "hooks": {
      "scopedPostRetrieve": "./lib/hooks/scopedPostRetrieve",
      "prerun": "./lib/hooks/prerun"
    },
    "flexibleTaxonomy": true
  },
  "scripts": {
    "audit": "tsx scripts/audit/audit.ts",
    "audit:roundtrip": "tsx scripts/audit/roundtrip.ts",
    "audit:sweep": "tsx scripts/audit/sweep.ts",
    "audit:xsd": "tsx scripts/audit/xsd-unique-id-candidates.ts",
    "build": "wireit",
    "clean": "wireit",
    "clean:build": "wireit",
    "clean:package-manager": "wireit",
    "compile": "wireit",
    "docs:metadata-support": "tsx scripts/update-metadata-support.ts",
    "format": "wireit",
    "lint": "wireit",
    "lint:dependencies": "wireit",
    "postpack": "shx rm -f oclif.manifest.json oclif.lock",
    "prepack": "wireit",
    "prepare": "husky && patch-package",
    "test": "wireit",
    "test:mutation": "stryker run",
    "test:mutation:incremental": "node scripts/incremental-mutation.mjs",
    "test:nuts": "wireit",
    "test:only": "wireit",
    "test:perf": "wireit",
    "test:perf:gen": "tsx scripts/gen-perf-fixtures.ts"
  },
  "publishConfig": {
    "access": "public"
  },
  "wireit": {
    "clean": {
      "command": "shx rm -rf 'reports/*' oclif.manifest.json oclif.lock package.tgz 'sf-decomposer-*.tgz' 'stderr*.txt' 'stdout*.txt' '.stryker-tmp/*'",
      "files": [
        ".stryker-tmp/*",
        "lib",
        "oclif.manifest.json",
        "oclif.lock",
        "package.tgz",
        "reports/*",
        "sf-decomposer-v*.tgz",
        "stderr*.txt",
        "stdout*.txt"
      ],
      "dependencies": [
        "clean:build"
      ]
    },
    "clean:build": {
      "command": "shx rm -rf lib .wireit",
      "files": [
        ".wireit/*",
        "lib/*"
      ]
    },
    "clean:package-manager": {
      "command": "shx rm -rf node_modules tsconfig.tsbuildinfo",
      "files": [
        "node_modules/*"
      ]
    },
    "build": {
      "dependencies": [
        "compile",
        "lint"
      ]
    },
    "compile": {
      "command": "tsc -p . --pretty --incremental",
      "files": [
        "src/**/*.ts",
        "**/tsconfig.json",
        "messages/**"
      ],
      "output": [
        "lib/**",
        "*.tsbuildinfo"
      ],
      "clean": "if-file-deleted"
    },
    "format": {
      "command": "biome format --write src test",
      "files": [
        "src/**/*.ts",
        "test/**/*.ts",
        "biome.json"
      ],
      "output": []
    },
    "lint": {
      "command": "biome check src test",
      "files": [
        "src/**/*.ts",
        "test/**/*.ts",
        "messages/**",
        "biome.json",
        "**/tsconfig.json"
      ],
      "output": []
    },
    "lint:dependencies": {
      "command": "knip",
      "files": [
        "src/**/*.ts",
        "test/**/*.ts",
        "knip.config.ts",
        "package.json"
      ],
      "output": [],
      "dependencies": [
        "lint"
      ]
    },
    "prepack": {
      "command": "oclif manifest && oclif readme",
      "files": [
        "src/commands/decomposer/decompose.ts",
        "src/commands/decomposer/recompose.ts",
        "src/commands/decomposer/verify.ts",
        "messages/decomposer.decompose.md",
        "messages/decomposer.recompose.md",
        "messages/decomposer.verify.md",
        "README.md"
      ],
      "dependencies": [
        "build"
      ],
      "output": [
        "README.md"
      ],
      "clean": false
    },
    "test:compile": {
      "command": "tsc -p \"./test\" --pretty",
      "files": [
        "test/**/*.ts",
        "**/tsconfig.json"
      ],
      "output": []
    },
    "test": {
      "dependencies": [
        "test:compile",
        "test:only",
        "lint"
      ]
    },
    "test:nuts": {
      "command": "vitest run --config ./vitest.nut.config.ts && shx rm -f oclif.manifest.json oclif.lock *.tsbuildinfo",
      "files": [
        "test/**/*.nut.ts",
        "**/tsconfig.json",
        "vitest.nut.config.ts"
      ],
      "output": [],
      "dependencies": [
        "build",
        "prepack"
      ]
    },
    "test:perf": {
      "command": "vitest run --config ./vitest.perf.config.ts",
      "files": [
        "test/perf/**/*.perf.ts",
        "**/tsconfig.json",
        "vitest.perf.config.ts"
      ],
      "output": [],
      "dependencies": [
        "build"
      ]
    },
    "test:only": {
      "command": "vitest run --coverage",
      "env": {
        "FORCE_COLOR": "2"
      },
      "files": [
        "test/**/*.ts",
        "src/**/*.ts",
        "**/tsconfig.json",
        "!*.nut.ts",
        "vitest.config.ts"
      ],
      "output": []
    }
  },
  "exports": "./lib/index.js",
  "type": "module",
  "author": "Matt Carvin",
  "repository": {
    "type": "git",
    "url": "git+https://github.com/mcarvin8/sf-decomposer.git"
  },
  "bugs": {
    "url": "https://github.com/mcarvin8/sf-decomposer/issues"
  }
}
