|
43 | 43 | "scripts": { |
44 | 44 | "start": "per-env", |
45 | 45 | "start:development": "npm-run-all --parallel --print-name start:development:*", |
| 46 | + "start:development:cem-analyze": "chokidar ./custom-elements.config.js './src/*.ts' './src/*.*.ts' './src/cem-analyzer-plugins/**' --ignore '**/*stories*' --ignore '**/*test*' --initial --silent --command 'tsc --noCheck --outDir ./dist && NODE_OPTIONS=--no-warnings=ExperimentalWarning cem analyze --config ./custom-elements.config.js --quiet'", |
| 47 | + "start:development:cem-analyze:comment": "JSON module imports produce a warning. Remove NODE_OPTIONS when JSON module imports are no longer experimental.", |
46 | 48 | "start:development:storybook": "storybook dev --config-dir .storybook --no-open --no-version-updates --port 6006", |
| 49 | + "start:development:ts-morph": "chokidar './src/ts-morph/**' --initial --silent --command 'tsx ./src/ts-morph/run.ts'", |
| 50 | + "start:development:ts-morph:comment:tsx": "Remove `tsx` once Node.js type stripping is available.", |
| 51 | + "start:development:ts-morph:comment:watching": "It would be helpful to also watch './custom-elements.json`. But doing so would create a loop between this script and `start:development:cem-analyze`.", |
47 | 52 | "start:production": "rimraf ./dist && npm-run-all --aggregate-output --print-label --parallel start:production:components start:production:storybook start:production:stylesheets", |
48 | 53 | "start:production:components": "tsc --noCheck --outDir ./dist && node ./terser.js", |
49 | 54 | "start:production:figma": "pnpm dt export-variables && pnpm dt build-tokens && pnpm dt build-styles", |
| 55 | + "start:production:cem-analyze": "tsc --noCheck --outDir ./dist && NODE_OPTIONS=--no-warnings=ExperimentalWarning cem analyze --config ./custom-elements.config.js --quiet && git diff --quiet -- || { echo ERROR: Uncommitted elements manifest changes. Run this command locally and commit the changes.; exit 1; }", |
50 | 56 | "start:production:storybook": "storybook build --config-dir .storybook --disable-telemetry --output-dir ./dist/storybook", |
51 | 57 | "start:production:stylesheets": "node ./esbuild.js", |
| 58 | + "start:production:ts-morph": "tsx ./src/ts-morph/run.ts && git diff --quiet -- || { echo ERROR: Uncommitted code modifications. Run this command locally and commit the changes.; exit 1; }", |
52 | 59 | "format": "per-env", |
53 | 60 | "format:development": "chokidar '**/*' --ignore 'dist/**' --ignore '.changeset/**' --ignore '.git/**' --ignore 'node_modules/**' --ignore 'pnpm-lock.yaml' --initial --silent --comand 'prettier --write --ignore-unknown {path} && stylelint {path}'", |
54 | 61 | "format:production": "prettier . --debug-check", |
|
89 | 96 | "@changesets/changelog-github": "^0.5.0", |
90 | 97 | "@changesets/cli": "^2.27.10", |
91 | 98 | "@crowdstrike/design-tokens": "^2.0.1", |
| 99 | + "@custom-elements-manifest/analyzer": "^0.10.4", |
92 | 100 | "@eslint/eslintrc": "^3.2.0", |
93 | 101 | "@eslint/js": "^9.17.0", |
94 | 102 | "@open-wc/testing": "^4.0.0", |
|
118 | 126 | "chalk": "^5.3.0", |
119 | 127 | "chokidar-cli": "^3.0.0", |
120 | 128 | "comment-parser": "^1.4.1", |
| 129 | + "custom-elements-manifest": "^2.1.0", |
121 | 130 | "esbuild": "^0.25.0", |
122 | 131 | "eslint": "^9.17.0", |
123 | 132 | "eslint-config-prettier": "^10.0.1", |
|
152 | 161 | "stylelint-use-nesting": "^6.0.0", |
153 | 162 | "terser": "^5.37.0", |
154 | 163 | "ts-lit-plugin": "^2.0.2", |
| 164 | + "ts-morph": "^25.0.1", |
| 165 | + "tsx": "^4.19.2", |
155 | 166 | "typescript": "^5.7.2", |
156 | 167 | "typescript-eslint": "^8.23.0", |
157 | 168 | "vite": "^6.0.7", |
|
0 commit comments