Adds scripts/compliance/emit-data-map.mjs which walks Payload collection configs (packages/*/integrations/cms/collections/*.ts), applies PAYLOAD_AUTH_PII_DEFAULTS + custom.authPii overrides, and emits a deterministic YAML PII inventory at compliance/data-map.yml. Supports --print (stdout) and --check (diff vs committed, exit 1 on mismatch) modes. Ships with 26 unit tests covering happy path, auth defaults, authPii overrides, --check match/mismatch, and empty collections. Wired as `compliance:data-map` root package script. Adds @typescript-eslint/parser to root devDependencies (already in workspace via core-eslint, now made explicit for scripts/ usage). Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
55 lines
1.9 KiB
JSON
55 lines
1.9 KiB
JSON
{
|
|
"name": "template-vertical",
|
|
"version": "0.1.0",
|
|
"private": true,
|
|
"packageManager": "pnpm@9.15.4",
|
|
"engines": {
|
|
"node": ">=20"
|
|
},
|
|
"scripts": {
|
|
"build": "turbo run build",
|
|
"dev": "turbo run dev",
|
|
"lint": "turbo run lint",
|
|
"test": "turbo run test",
|
|
"test:e2e": "turbo run test:e2e",
|
|
"test:stories": "turbo run test:stories",
|
|
"test:visual": "pnpm --filter @repo/storybook exec concurrently -k -s first -n 'SB,VRT' -c 'magenta,blue' 'pnpm --filter @repo/storybook exec http-server storybook-static --port 6006 --silent' 'pnpm --filter @repo/storybook exec wait-on tcp:6006 && pnpm exec playwright test'",
|
|
"typecheck": "turbo run typecheck",
|
|
"conformance": "node scripts/conformance.mjs",
|
|
"coverage:diff": "node scripts/coverage/diff.mjs",
|
|
"coverage:aggregate": "node scripts/coverage/aggregate.mjs",
|
|
"mutate": "node scripts/coverage/mutate.mjs",
|
|
"fallow": "fallow",
|
|
"fallow:audit": "fallow audit --base main",
|
|
"compliance:data-map": "node scripts/compliance/emit-data-map.mjs",
|
|
"work": "node scripts/work/cli.mjs",
|
|
"format": "prettier --write \"**/*.{ts,tsx,js,jsx,json,md}\"",
|
|
"format:check": "prettier --check \"**/*.{ts,tsx,js,jsx,json,md}\"",
|
|
"prepare": "husky"
|
|
},
|
|
"devDependencies": {
|
|
"@ai-hero/sandcastle": "*",
|
|
"@typescript-eslint/parser": "^8.25.0",
|
|
"zod": "^3.25.0",
|
|
"@playwright/test": "^1.49.0",
|
|
"@stryker-mutator/core": "^8.7.0",
|
|
"@stryker-mutator/vitest-runner": "^8.7.0",
|
|
"@turbo/gen": "^2.4.0",
|
|
"@types/node": "^22.0.0",
|
|
"fallow": "^2.73.0",
|
|
"husky": "^9.0.0",
|
|
"lint-staged": "^16.0.0",
|
|
"prettier": "^3.5.0",
|
|
"turbo": "^2.4.0",
|
|
"typescript": "^5.8.0"
|
|
},
|
|
"lint-staged": {
|
|
"*.{ts,tsx,js,mjs,jsx}": [
|
|
"eslint --fix --max-warnings=0 --no-warn-ignored"
|
|
],
|
|
"*.{ts,tsx,js,mjs,jsx,json,md,yml,yaml}": [
|
|
"prettier --write"
|
|
]
|
|
}
|
|
}
|