@empline/preflight 1.1.11 → 1.1.13

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (709) hide show
  1. package/dist/checks/consolidated/auth-storage-state.d.ts +3 -0
  2. package/dist/checks/consolidated/auth-storage-state.d.ts.map +1 -0
  3. package/dist/checks/consolidated/auth-storage-state.js +146 -0
  4. package/dist/checks/consolidated/auth-storage-state.js.map +1 -0
  5. package/dist/checks/consolidated/business.d.ts +50 -0
  6. package/dist/checks/consolidated/business.d.ts.map +1 -0
  7. package/dist/checks/consolidated/business.js +252 -0
  8. package/dist/checks/consolidated/business.js.map +1 -0
  9. package/dist/checks/consolidated/caching-strategy.d.ts +104 -0
  10. package/dist/checks/consolidated/caching-strategy.d.ts.map +1 -0
  11. package/dist/checks/consolidated/caching-strategy.js +725 -0
  12. package/dist/checks/consolidated/caching-strategy.js.map +1 -0
  13. package/dist/checks/consolidated/code-quality.d.ts +83 -0
  14. package/dist/checks/consolidated/code-quality.d.ts.map +1 -0
  15. package/dist/checks/consolidated/code-quality.js +445 -0
  16. package/dist/checks/consolidated/code-quality.js.map +1 -0
  17. package/dist/checks/consolidated/console-statements.d.ts +32 -0
  18. package/dist/checks/consolidated/console-statements.d.ts.map +1 -0
  19. package/dist/checks/consolidated/console-statements.js +304 -0
  20. package/dist/checks/consolidated/console-statements.js.map +1 -0
  21. package/dist/checks/consolidated/css-advanced-validation.d.ts +24 -0
  22. package/dist/checks/consolidated/css-advanced-validation.d.ts.map +1 -0
  23. package/dist/checks/consolidated/css-advanced-validation.js +415 -0
  24. package/dist/checks/consolidated/css-advanced-validation.js.map +1 -0
  25. package/dist/checks/consolidated/css-organization.d.ts +14 -0
  26. package/dist/checks/consolidated/css-organization.d.ts.map +1 -0
  27. package/dist/checks/consolidated/css-organization.js +432 -0
  28. package/dist/checks/consolidated/css-organization.js.map +1 -0
  29. package/dist/checks/consolidated/css-runtime-validation.d.ts +22 -0
  30. package/dist/checks/consolidated/css-runtime-validation.d.ts.map +1 -0
  31. package/dist/checks/consolidated/css-runtime-validation.js +330 -0
  32. package/dist/checks/consolidated/css-runtime-validation.js.map +1 -0
  33. package/dist/checks/consolidated/css-variable-validation.d.ts +17 -0
  34. package/dist/checks/consolidated/css-variable-validation.d.ts.map +1 -0
  35. package/dist/checks/consolidated/css-variable-validation.js +412 -0
  36. package/dist/checks/consolidated/css-variable-validation.js.map +1 -0
  37. package/dist/checks/consolidated/dark-mode-consistency.d.ts +23 -0
  38. package/dist/checks/consolidated/dark-mode-consistency.d.ts.map +1 -0
  39. package/dist/checks/consolidated/dark-mode-consistency.js +291 -0
  40. package/dist/checks/consolidated/dark-mode-consistency.js.map +1 -0
  41. package/dist/checks/consolidated/database.d.ts +95 -0
  42. package/dist/checks/consolidated/database.d.ts.map +1 -0
  43. package/dist/checks/consolidated/database.js +427 -0
  44. package/dist/checks/consolidated/database.js.map +1 -0
  45. package/dist/checks/consolidated/e2e-checks.d.ts +52 -0
  46. package/dist/checks/consolidated/e2e-checks.d.ts.map +1 -0
  47. package/dist/checks/consolidated/e2e-checks.js +157 -0
  48. package/dist/checks/consolidated/e2e-checks.js.map +1 -0
  49. package/dist/checks/consolidated/e2e-regression-coverage.d.ts +14 -0
  50. package/dist/checks/consolidated/e2e-regression-coverage.d.ts.map +1 -0
  51. package/dist/checks/consolidated/e2e-regression-coverage.js +151 -0
  52. package/dist/checks/consolidated/e2e-regression-coverage.js.map +1 -0
  53. package/dist/checks/consolidated/e2e-validation.d.ts +137 -0
  54. package/dist/checks/consolidated/e2e-validation.d.ts.map +1 -0
  55. package/dist/checks/consolidated/e2e-validation.js +1001 -0
  56. package/dist/checks/consolidated/e2e-validation.js.map +1 -0
  57. package/dist/checks/consolidated/enterprise-baseline.d.ts +9 -0
  58. package/dist/checks/consolidated/enterprise-baseline.d.ts.map +1 -0
  59. package/dist/checks/consolidated/enterprise-baseline.js +277 -0
  60. package/dist/checks/consolidated/enterprise-baseline.js.map +1 -0
  61. package/dist/checks/consolidated/generate-pageload-config.d.ts +6 -0
  62. package/dist/checks/consolidated/generate-pageload-config.d.ts.map +1 -0
  63. package/dist/checks/consolidated/generate-pageload-config.js +161 -0
  64. package/dist/checks/consolidated/generate-pageload-config.js.map +1 -0
  65. package/dist/checks/consolidated/hardened-checks.d.ts +276 -0
  66. package/dist/checks/consolidated/hardened-checks.d.ts.map +1 -0
  67. package/dist/checks/consolidated/hardened-checks.js +3056 -0
  68. package/dist/checks/consolidated/hardened-checks.js.map +1 -0
  69. package/dist/checks/consolidated/homepage-ux.d.ts +12 -0
  70. package/dist/checks/consolidated/homepage-ux.d.ts.map +1 -0
  71. package/dist/checks/consolidated/homepage-ux.js +242 -0
  72. package/dist/checks/consolidated/homepage-ux.js.map +1 -0
  73. package/dist/checks/consolidated/images.d.ts +76 -0
  74. package/dist/checks/consolidated/images.d.ts.map +1 -0
  75. package/dist/checks/consolidated/images.js +311 -0
  76. package/dist/checks/consolidated/images.js.map +1 -0
  77. package/dist/checks/consolidated/import-cycles.d.ts +63 -0
  78. package/dist/checks/consolidated/import-cycles.d.ts.map +1 -0
  79. package/dist/checks/consolidated/import-cycles.js +291 -0
  80. package/dist/checks/consolidated/import-cycles.js.map +1 -0
  81. package/dist/checks/consolidated/imports.d.ts +112 -0
  82. package/dist/checks/consolidated/imports.d.ts.map +1 -0
  83. package/dist/checks/consolidated/imports.js +977 -0
  84. package/dist/checks/consolidated/imports.js.map +1 -0
  85. package/dist/checks/consolidated/inline-style-conflicts.d.ts +21 -0
  86. package/dist/checks/consolidated/inline-style-conflicts.d.ts.map +1 -0
  87. package/dist/checks/consolidated/inline-style-conflicts.js +300 -0
  88. package/dist/checks/consolidated/inline-style-conflicts.js.map +1 -0
  89. package/dist/checks/consolidated/lib-organization.d.ts +12 -0
  90. package/dist/checks/consolidated/lib-organization.d.ts.map +1 -0
  91. package/dist/checks/consolidated/lib-organization.js +419 -0
  92. package/dist/checks/consolidated/lib-organization.js.map +1 -0
  93. package/dist/checks/consolidated/n-plus-one.d.ts +63 -0
  94. package/dist/checks/consolidated/n-plus-one.d.ts.map +1 -0
  95. package/dist/checks/consolidated/n-plus-one.js +331 -0
  96. package/dist/checks/consolidated/n-plus-one.js.map +1 -0
  97. package/dist/checks/consolidated/nextjs.d.ts +51 -0
  98. package/dist/checks/consolidated/nextjs.d.ts.map +1 -0
  99. package/dist/checks/consolidated/nextjs.js +205 -0
  100. package/dist/checks/consolidated/nextjs.js.map +1 -0
  101. package/dist/checks/consolidated/organization.d.ts +54 -0
  102. package/dist/checks/consolidated/organization.d.ts.map +1 -0
  103. package/dist/checks/consolidated/organization.js +158 -0
  104. package/dist/checks/consolidated/organization.js.map +1 -0
  105. package/dist/checks/consolidated/pageload.d.ts +12 -0
  106. package/dist/checks/consolidated/pageload.d.ts.map +1 -0
  107. package/dist/checks/consolidated/pageload.js +138 -0
  108. package/dist/checks/consolidated/pageload.js.map +1 -0
  109. package/dist/checks/consolidated/performance.d.ts +112 -0
  110. package/dist/checks/consolidated/performance.d.ts.map +1 -0
  111. package/dist/checks/consolidated/performance.js +1546 -0
  112. package/dist/checks/consolidated/performance.js.map +1 -0
  113. package/dist/checks/consolidated/quality.d.ts +52 -0
  114. package/dist/checks/consolidated/quality.d.ts.map +1 -0
  115. package/dist/checks/consolidated/quality.js +253 -0
  116. package/dist/checks/consolidated/quality.js.map +1 -0
  117. package/dist/checks/consolidated/react.d.ts +48 -0
  118. package/dist/checks/consolidated/react.d.ts.map +1 -0
  119. package/dist/checks/consolidated/react.js +203 -0
  120. package/dist/checks/consolidated/react.js.map +1 -0
  121. package/dist/checks/consolidated/regression-hygiene.d.ts +17 -0
  122. package/dist/checks/consolidated/regression-hygiene.d.ts.map +1 -0
  123. package/dist/checks/consolidated/regression-hygiene.js +242 -0
  124. package/dist/checks/consolidated/regression-hygiene.js.map +1 -0
  125. package/dist/checks/consolidated/regression.d.ts +20 -0
  126. package/dist/checks/consolidated/regression.d.ts.map +1 -0
  127. package/dist/checks/consolidated/regression.js +121 -0
  128. package/dist/checks/consolidated/regression.js.map +1 -0
  129. package/dist/checks/consolidated/runtime.d.ts +53 -0
  130. package/dist/checks/consolidated/runtime.d.ts.map +1 -0
  131. package/dist/checks/consolidated/runtime.js +160 -0
  132. package/dist/checks/consolidated/runtime.js.map +1 -0
  133. package/dist/checks/consolidated/script-performance.d.ts +17 -0
  134. package/dist/checks/consolidated/script-performance.d.ts.map +1 -0
  135. package/dist/checks/consolidated/script-performance.js +137 -0
  136. package/dist/checks/consolidated/script-performance.js.map +1 -0
  137. package/dist/checks/consolidated/security.d.ts +78 -0
  138. package/dist/checks/consolidated/security.d.ts.map +1 -0
  139. package/dist/checks/consolidated/security.js +404 -0
  140. package/dist/checks/consolidated/security.js.map +1 -0
  141. package/dist/checks/consolidated/seo.d.ts +31 -0
  142. package/dist/checks/consolidated/seo.d.ts.map +1 -0
  143. package/dist/checks/consolidated/seo.js +1438 -0
  144. package/dist/checks/consolidated/seo.js.map +1 -0
  145. package/dist/checks/consolidated/sx-prop-deprecation.d.ts +22 -0
  146. package/dist/checks/consolidated/sx-prop-deprecation.d.ts.map +1 -0
  147. package/dist/checks/consolidated/sx-prop-deprecation.js +280 -0
  148. package/dist/checks/consolidated/sx-prop-deprecation.js.map +1 -0
  149. package/dist/checks/consolidated/tailwind-class-validation.d.ts +25 -0
  150. package/dist/checks/consolidated/tailwind-class-validation.d.ts.map +1 -0
  151. package/dist/checks/consolidated/tailwind-class-validation.js +533 -0
  152. package/dist/checks/consolidated/tailwind-class-validation.js.map +1 -0
  153. package/dist/checks/consolidated/testing.d.ts +54 -0
  154. package/dist/checks/consolidated/testing.d.ts.map +1 -0
  155. package/dist/checks/consolidated/testing.js +163 -0
  156. package/dist/checks/consolidated/testing.js.map +1 -0
  157. package/dist/checks/consolidated/typescript.d.ts +3 -0
  158. package/dist/checks/consolidated/typescript.d.ts.map +1 -0
  159. package/dist/checks/consolidated/typescript.js +31 -0
  160. package/dist/checks/consolidated/typescript.js.map +1 -0
  161. package/dist/checks/consolidated/ui-accessibility-advanced.d.ts +104 -0
  162. package/dist/checks/consolidated/ui-accessibility-advanced.d.ts.map +1 -0
  163. package/dist/checks/consolidated/ui-accessibility-advanced.js +689 -0
  164. package/dist/checks/consolidated/ui-accessibility-advanced.js.map +1 -0
  165. package/dist/checks/consolidated/ui-accessibility.d.ts +121 -0
  166. package/dist/checks/consolidated/ui-accessibility.d.ts.map +1 -0
  167. package/dist/checks/consolidated/ui-accessibility.js +776 -0
  168. package/dist/checks/consolidated/ui-accessibility.js.map +1 -0
  169. package/dist/checks/consolidated/ui-advanced-spacing.d.ts +142 -0
  170. package/dist/checks/consolidated/ui-advanced-spacing.d.ts.map +1 -0
  171. package/dist/checks/consolidated/ui-advanced-spacing.js +1220 -0
  172. package/dist/checks/consolidated/ui-advanced-spacing.js.map +1 -0
  173. package/dist/checks/consolidated/ui-animation-duration.d.ts +108 -0
  174. package/dist/checks/consolidated/ui-animation-duration.d.ts.map +1 -0
  175. package/dist/checks/consolidated/ui-animation-duration.js +531 -0
  176. package/dist/checks/consolidated/ui-animation-duration.js.map +1 -0
  177. package/dist/checks/consolidated/ui-border-radius.d.ts +90 -0
  178. package/dist/checks/consolidated/ui-border-radius.d.ts.map +1 -0
  179. package/dist/checks/consolidated/ui-border-radius.js +519 -0
  180. package/dist/checks/consolidated/ui-border-radius.js.map +1 -0
  181. package/dist/checks/consolidated/ui-buttons.d.ts +32 -0
  182. package/dist/checks/consolidated/ui-buttons.d.ts.map +1 -0
  183. package/dist/checks/consolidated/ui-buttons.js +481 -0
  184. package/dist/checks/consolidated/ui-buttons.js.map +1 -0
  185. package/dist/checks/consolidated/ui-cards.d.ts +29 -0
  186. package/dist/checks/consolidated/ui-cards.d.ts.map +1 -0
  187. package/dist/checks/consolidated/ui-cards.js +504 -0
  188. package/dist/checks/consolidated/ui-cards.js.map +1 -0
  189. package/dist/checks/consolidated/ui-checks.d.ts +48 -0
  190. package/dist/checks/consolidated/ui-checks.d.ts.map +1 -0
  191. package/dist/checks/consolidated/ui-checks.js +264 -0
  192. package/dist/checks/consolidated/ui-checks.js.map +1 -0
  193. package/dist/checks/consolidated/ui-cleanup.d.ts +81 -0
  194. package/dist/checks/consolidated/ui-cleanup.d.ts.map +1 -0
  195. package/dist/checks/consolidated/ui-cleanup.js +650 -0
  196. package/dist/checks/consolidated/ui-cleanup.js.map +1 -0
  197. package/dist/checks/consolidated/ui-components.d.ts +255 -0
  198. package/dist/checks/consolidated/ui-components.d.ts.map +1 -0
  199. package/dist/checks/consolidated/ui-components.js +2008 -0
  200. package/dist/checks/consolidated/ui-components.js.map +1 -0
  201. package/dist/checks/consolidated/ui-consistency-advanced.d.ts +130 -0
  202. package/dist/checks/consolidated/ui-consistency-advanced.d.ts.map +1 -0
  203. package/dist/checks/consolidated/ui-consistency-advanced.js +982 -0
  204. package/dist/checks/consolidated/ui-consistency-advanced.js.map +1 -0
  205. package/dist/checks/consolidated/ui-consistency-comprehensive.d.ts +30 -0
  206. package/dist/checks/consolidated/ui-consistency-comprehensive.d.ts.map +1 -0
  207. package/dist/checks/consolidated/ui-consistency-comprehensive.js +1018 -0
  208. package/dist/checks/consolidated/ui-consistency-comprehensive.js.map +1 -0
  209. package/dist/checks/consolidated/ui-consistency-extended.d.ts +26 -0
  210. package/dist/checks/consolidated/ui-consistency-extended.d.ts.map +1 -0
  211. package/dist/checks/consolidated/ui-consistency-extended.js +606 -0
  212. package/dist/checks/consolidated/ui-consistency-extended.js.map +1 -0
  213. package/dist/checks/consolidated/ui-data-display.d.ts +103 -0
  214. package/dist/checks/consolidated/ui-data-display.d.ts.map +1 -0
  215. package/dist/checks/consolidated/ui-data-display.js +740 -0
  216. package/dist/checks/consolidated/ui-data-display.js.map +1 -0
  217. package/dist/checks/consolidated/ui-deprecated.d.ts +22 -0
  218. package/dist/checks/consolidated/ui-deprecated.d.ts.map +1 -0
  219. package/dist/checks/consolidated/ui-deprecated.js +336 -0
  220. package/dist/checks/consolidated/ui-deprecated.js.map +1 -0
  221. package/dist/checks/consolidated/ui-empty-null-states.d.ts +90 -0
  222. package/dist/checks/consolidated/ui-empty-null-states.d.ts.map +1 -0
  223. package/dist/checks/consolidated/ui-empty-null-states.js +511 -0
  224. package/dist/checks/consolidated/ui-empty-null-states.js.map +1 -0
  225. package/dist/checks/consolidated/ui-error-states.d.ts +99 -0
  226. package/dist/checks/consolidated/ui-error-states.d.ts.map +1 -0
  227. package/dist/checks/consolidated/ui-error-states.js +694 -0
  228. package/dist/checks/consolidated/ui-error-states.js.map +1 -0
  229. package/dist/checks/consolidated/ui-feedback-confirmations.d.ts +90 -0
  230. package/dist/checks/consolidated/ui-feedback-confirmations.d.ts.map +1 -0
  231. package/dist/checks/consolidated/ui-feedback-confirmations.js +596 -0
  232. package/dist/checks/consolidated/ui-feedback-confirmations.js.map +1 -0
  233. package/dist/checks/consolidated/ui-forms.d.ts +32 -0
  234. package/dist/checks/consolidated/ui-forms.d.ts.map +1 -0
  235. package/dist/checks/consolidated/ui-forms.js +568 -0
  236. package/dist/checks/consolidated/ui-forms.js.map +1 -0
  237. package/dist/checks/consolidated/ui-gradient-shadow.d.ts +90 -0
  238. package/dist/checks/consolidated/ui-gradient-shadow.d.ts.map +1 -0
  239. package/dist/checks/consolidated/ui-gradient-shadow.js +568 -0
  240. package/dist/checks/consolidated/ui-gradient-shadow.js.map +1 -0
  241. package/dist/checks/consolidated/ui-grid-responsive.d.ts +27 -0
  242. package/dist/checks/consolidated/ui-grid-responsive.d.ts.map +1 -0
  243. package/dist/checks/consolidated/ui-grid-responsive.js +441 -0
  244. package/dist/checks/consolidated/ui-grid-responsive.js.map +1 -0
  245. package/dist/checks/consolidated/ui-icon-size-tokens.d.ts +104 -0
  246. package/dist/checks/consolidated/ui-icon-size-tokens.d.ts.map +1 -0
  247. package/dist/checks/consolidated/ui-icon-size-tokens.js +514 -0
  248. package/dist/checks/consolidated/ui-icon-size-tokens.js.map +1 -0
  249. package/dist/checks/consolidated/ui-iconography.d.ts +90 -0
  250. package/dist/checks/consolidated/ui-iconography.d.ts.map +1 -0
  251. package/dist/checks/consolidated/ui-iconography.js +565 -0
  252. package/dist/checks/consolidated/ui-iconography.js.map +1 -0
  253. package/dist/checks/consolidated/ui-interactive-states.d.ts +240 -0
  254. package/dist/checks/consolidated/ui-interactive-states.d.ts.map +1 -0
  255. package/dist/checks/consolidated/ui-interactive-states.js +2474 -0
  256. package/dist/checks/consolidated/ui-interactive-states.js.map +1 -0
  257. package/dist/checks/consolidated/ui-layout.d.ts +256 -0
  258. package/dist/checks/consolidated/ui-layout.d.ts.map +1 -0
  259. package/dist/checks/consolidated/ui-layout.js +1371 -0
  260. package/dist/checks/consolidated/ui-layout.js.map +1 -0
  261. package/dist/checks/consolidated/ui-loading-skeletons.d.ts +11 -0
  262. package/dist/checks/consolidated/ui-loading-skeletons.d.ts.map +1 -0
  263. package/dist/checks/consolidated/ui-loading-skeletons.js +145 -0
  264. package/dist/checks/consolidated/ui-loading-skeletons.js.map +1 -0
  265. package/dist/checks/consolidated/ui-loading-state-skeletons.d.ts +9 -0
  266. package/dist/checks/consolidated/ui-loading-state-skeletons.d.ts.map +1 -0
  267. package/dist/checks/consolidated/ui-loading-state-skeletons.js +125 -0
  268. package/dist/checks/consolidated/ui-loading-state-skeletons.js.map +1 -0
  269. package/dist/checks/consolidated/ui-media.d.ts +74 -0
  270. package/dist/checks/consolidated/ui-media.d.ts.map +1 -0
  271. package/dist/checks/consolidated/ui-media.js +408 -0
  272. package/dist/checks/consolidated/ui-media.js.map +1 -0
  273. package/dist/checks/consolidated/ui-micro-interactions.d.ts +107 -0
  274. package/dist/checks/consolidated/ui-micro-interactions.d.ts.map +1 -0
  275. package/dist/checks/consolidated/ui-micro-interactions.js +825 -0
  276. package/dist/checks/consolidated/ui-micro-interactions.js.map +1 -0
  277. package/dist/checks/consolidated/ui-microcopy-consistency.d.ts +114 -0
  278. package/dist/checks/consolidated/ui-microcopy-consistency.d.ts.map +1 -0
  279. package/dist/checks/consolidated/ui-microcopy-consistency.js +566 -0
  280. package/dist/checks/consolidated/ui-microcopy-consistency.js.map +1 -0
  281. package/dist/checks/consolidated/ui-mobile-ux.d.ts +251 -0
  282. package/dist/checks/consolidated/ui-mobile-ux.d.ts.map +1 -0
  283. package/dist/checks/consolidated/ui-mobile-ux.js +2212 -0
  284. package/dist/checks/consolidated/ui-mobile-ux.js.map +1 -0
  285. package/dist/checks/consolidated/ui-motion-accessibility.d.ts +93 -0
  286. package/dist/checks/consolidated/ui-motion-accessibility.d.ts.map +1 -0
  287. package/dist/checks/consolidated/ui-motion-accessibility.js +450 -0
  288. package/dist/checks/consolidated/ui-motion-accessibility.js.map +1 -0
  289. package/dist/checks/consolidated/ui-navigation.d.ts +85 -0
  290. package/dist/checks/consolidated/ui-navigation.d.ts.map +1 -0
  291. package/dist/checks/consolidated/ui-navigation.js +673 -0
  292. package/dist/checks/consolidated/ui-navigation.js.map +1 -0
  293. package/dist/checks/consolidated/ui-patterns.d.ts +174 -0
  294. package/dist/checks/consolidated/ui-patterns.d.ts.map +1 -0
  295. package/dist/checks/consolidated/ui-patterns.js +1532 -0
  296. package/dist/checks/consolidated/ui-patterns.js.map +1 -0
  297. package/dist/checks/consolidated/ui-responsive.d.ts +89 -0
  298. package/dist/checks/consolidated/ui-responsive.d.ts.map +1 -0
  299. package/dist/checks/consolidated/ui-responsive.js +588 -0
  300. package/dist/checks/consolidated/ui-responsive.js.map +1 -0
  301. package/dist/checks/consolidated/ui-spacing-standards.d.ts +43 -0
  302. package/dist/checks/consolidated/ui-spacing-standards.d.ts.map +1 -0
  303. package/dist/checks/consolidated/ui-spacing-standards.js +874 -0
  304. package/dist/checks/consolidated/ui-spacing-standards.js.map +1 -0
  305. package/dist/checks/consolidated/ui-spacing.d.ts +751 -0
  306. package/dist/checks/consolidated/ui-spacing.d.ts.map +1 -0
  307. package/dist/checks/consolidated/ui-spacing.js +4996 -0
  308. package/dist/checks/consolidated/ui-spacing.js.map +1 -0
  309. package/dist/checks/consolidated/ui-standards-auto-fixer.d.ts +70 -0
  310. package/dist/checks/consolidated/ui-standards-auto-fixer.d.ts.map +1 -0
  311. package/dist/checks/consolidated/ui-standards-auto-fixer.js +429 -0
  312. package/dist/checks/consolidated/ui-standards-auto-fixer.js.map +1 -0
  313. package/dist/checks/consolidated/ui-standards-enforcement.d.ts +100 -0
  314. package/dist/checks/consolidated/ui-standards-enforcement.d.ts.map +1 -0
  315. package/dist/checks/consolidated/ui-standards-enforcement.js +935 -0
  316. package/dist/checks/consolidated/ui-standards-enforcement.js.map +1 -0
  317. package/dist/checks/consolidated/ui-state-consistency.d.ts +90 -0
  318. package/dist/checks/consolidated/ui-state-consistency.d.ts.map +1 -0
  319. package/dist/checks/consolidated/ui-state-consistency.js +659 -0
  320. package/dist/checks/consolidated/ui-state-consistency.js.map +1 -0
  321. package/dist/checks/consolidated/ui-style-validation.d.ts +74 -0
  322. package/dist/checks/consolidated/ui-style-validation.d.ts.map +1 -0
  323. package/dist/checks/consolidated/ui-style-validation.js +403 -0
  324. package/dist/checks/consolidated/ui-style-validation.js.map +1 -0
  325. package/dist/checks/consolidated/ui-tokens.d.ts +110 -0
  326. package/dist/checks/consolidated/ui-tokens.d.ts.map +1 -0
  327. package/dist/checks/consolidated/ui-tokens.js +990 -0
  328. package/dist/checks/consolidated/ui-tokens.js.map +1 -0
  329. package/dist/checks/consolidated/ui-typography.d.ts +77 -0
  330. package/dist/checks/consolidated/ui-typography.d.ts.map +1 -0
  331. package/dist/checks/consolidated/ui-typography.js +416 -0
  332. package/dist/checks/consolidated/ui-typography.js.map +1 -0
  333. package/dist/checks/consolidated/ui-visual-hierarchy.d.ts +90 -0
  334. package/dist/checks/consolidated/ui-visual-hierarchy.d.ts.map +1 -0
  335. package/dist/checks/consolidated/ui-visual-hierarchy.js +562 -0
  336. package/dist/checks/consolidated/ui-visual-hierarchy.js.map +1 -0
  337. package/dist/checks/consolidated/woocommerce.d.ts +50 -0
  338. package/dist/checks/consolidated/woocommerce.d.ts.map +1 -0
  339. package/dist/checks/consolidated/woocommerce.js +198 -0
  340. package/dist/checks/consolidated/woocommerce.js.map +1 -0
  341. package/dist/checks/core/api-route-protection.d.ts +2 -0
  342. package/dist/checks/core/api-route-protection.d.ts.map +1 -0
  343. package/dist/checks/core/api-route-protection.js +101 -0
  344. package/dist/checks/core/api-route-protection.js.map +1 -0
  345. package/dist/checks/core/critical.d.ts +8 -0
  346. package/dist/checks/core/critical.d.ts.map +1 -0
  347. package/dist/checks/core/critical.js +200 -0
  348. package/dist/checks/core/critical.js.map +1 -0
  349. package/dist/checks/core/database.d.ts +8 -0
  350. package/dist/checks/core/database.d.ts.map +1 -0
  351. package/dist/checks/core/database.js +699 -0
  352. package/dist/checks/core/database.js.map +1 -0
  353. package/dist/checks/core/development.d.ts +8 -0
  354. package/dist/checks/core/development.d.ts.map +1 -0
  355. package/dist/checks/core/development.js +417 -0
  356. package/dist/checks/core/development.js.map +1 -0
  357. package/dist/checks/core/hydration-mismatch-check.d.ts +38 -0
  358. package/dist/checks/core/hydration-mismatch-check.d.ts.map +1 -0
  359. package/dist/checks/core/hydration-mismatch-check.js +411 -0
  360. package/dist/checks/core/hydration-mismatch-check.js.map +1 -0
  361. package/dist/checks/core/performance.d.ts +8 -0
  362. package/dist/checks/core/performance.d.ts.map +1 -0
  363. package/dist/checks/core/performance.js +474 -0
  364. package/dist/checks/core/performance.js.map +1 -0
  365. package/dist/checks/core/security.d.ts +8 -0
  366. package/dist/checks/core/security.d.ts.map +1 -0
  367. package/dist/checks/core/security.js +275 -0
  368. package/dist/checks/core/security.js.map +1 -0
  369. package/dist/checks/core/standardized-error-handling.d.ts +43 -0
  370. package/dist/checks/core/standardized-error-handling.d.ts.map +1 -0
  371. package/dist/checks/core/standardized-error-handling.js +384 -0
  372. package/dist/checks/core/standardized-error-handling.js.map +1 -0
  373. package/dist/checks/core/supercatch.d.ts +8 -0
  374. package/dist/checks/core/supercatch.d.ts.map +1 -0
  375. package/dist/checks/core/supercatch.js +750 -0
  376. package/dist/checks/core/supercatch.js.map +1 -0
  377. package/dist/checks/core/suppression-check.d.ts +2 -0
  378. package/dist/checks/core/suppression-check.d.ts.map +1 -0
  379. package/dist/checks/core/suppression-check.js +129 -0
  380. package/dist/checks/core/suppression-check.js.map +1 -0
  381. package/dist/checks/core/ui-quality.d.ts +8 -0
  382. package/dist/checks/core/ui-quality.d.ts.map +1 -0
  383. package/dist/checks/core/ui-quality.js +1736 -0
  384. package/dist/checks/core/ui-quality.js.map +1 -0
  385. package/dist/checks/core/unused-assets-check.d.ts +2 -0
  386. package/dist/checks/core/unused-assets-check.d.ts.map +1 -0
  387. package/dist/checks/core/unused-assets-check.js +112 -0
  388. package/dist/checks/core/unused-assets-check.js.map +1 -0
  389. package/dist/checks/core/use-status-ssr-safety.d.ts +34 -0
  390. package/dist/checks/core/use-status-ssr-safety.d.ts.map +1 -0
  391. package/dist/checks/core/use-status-ssr-safety.js +283 -0
  392. package/dist/checks/core/use-status-ssr-safety.js.map +1 -0
  393. package/dist/checks/email/email-flow-validation.d.ts +23 -0
  394. package/dist/checks/email/email-flow-validation.d.ts.map +1 -0
  395. package/dist/checks/email/email-flow-validation.js +468 -0
  396. package/dist/checks/email/email-flow-validation.js.map +1 -0
  397. package/dist/checks/email/email-template-db-verification.d.ts +20 -0
  398. package/dist/checks/email/email-template-db-verification.d.ts.map +1 -0
  399. package/dist/checks/email/email-template-db-verification.js +46 -0
  400. package/dist/checks/email/email-template-db-verification.js.map +1 -0
  401. package/dist/checks/email/email-template-validation.d.ts +24 -0
  402. package/dist/checks/email/email-template-validation.d.ts.map +1 -0
  403. package/dist/checks/email/email-template-validation.js +688 -0
  404. package/dist/checks/email/email-template-validation.js.map +1 -0
  405. package/dist/checks/jsx/comment-placement.d.ts +45 -0
  406. package/dist/checks/jsx/comment-placement.d.ts.map +1 -0
  407. package/dist/checks/jsx/comment-placement.js +316 -0
  408. package/dist/checks/jsx/comment-placement.js.map +1 -0
  409. package/dist/checks/specialized/admin-layout-check.d.ts +19 -0
  410. package/dist/checks/specialized/admin-layout-check.d.ts.map +1 -0
  411. package/dist/checks/specialized/admin-layout-check.js +166 -0
  412. package/dist/checks/specialized/admin-layout-check.js.map +1 -0
  413. package/dist/checks/specialized/client-server-separation.d.ts +14 -0
  414. package/dist/checks/specialized/client-server-separation.d.ts.map +1 -0
  415. package/dist/checks/specialized/client-server-separation.js +197 -0
  416. package/dist/checks/specialized/client-server-separation.js.map +1 -0
  417. package/dist/checks/specialized/cost-optimization.d.ts +18 -0
  418. package/dist/checks/specialized/cost-optimization.d.ts.map +1 -0
  419. package/dist/checks/specialized/cost-optimization.js +78 -0
  420. package/dist/checks/specialized/cost-optimization.js.map +1 -0
  421. package/dist/checks/specialized/database-migration-sync.d.ts +21 -0
  422. package/dist/checks/specialized/database-migration-sync.d.ts.map +1 -0
  423. package/dist/checks/specialized/database-migration-sync.js +150 -0
  424. package/dist/checks/specialized/database-migration-sync.js.map +1 -0
  425. package/dist/checks/specialized/database-model-validation.d.ts +15 -0
  426. package/dist/checks/specialized/database-model-validation.d.ts.map +1 -0
  427. package/dist/checks/specialized/database-model-validation.js +35 -0
  428. package/dist/checks/specialized/database-model-validation.js.map +1 -0
  429. package/dist/checks/specialized/database-schema-migrations-diff.d.ts +27 -0
  430. package/dist/checks/specialized/database-schema-migrations-diff.d.ts.map +1 -0
  431. package/dist/checks/specialized/database-schema-migrations-diff.js +177 -0
  432. package/dist/checks/specialized/database-schema-migrations-diff.js.map +1 -0
  433. package/dist/checks/specialized/database-schema-sync.d.ts +23 -0
  434. package/dist/checks/specialized/database-schema-sync.d.ts.map +1 -0
  435. package/dist/checks/specialized/database-schema-sync.js +77 -0
  436. package/dist/checks/specialized/database-schema-sync.js.map +1 -0
  437. package/dist/checks/specialized/decimal-serialization.d.ts +24 -0
  438. package/dist/checks/specialized/decimal-serialization.d.ts.map +1 -0
  439. package/dist/checks/specialized/decimal-serialization.js +400 -0
  440. package/dist/checks/specialized/decimal-serialization.js.map +1 -0
  441. package/dist/checks/specialized/detect-router-issues.d.ts +14 -0
  442. package/dist/checks/specialized/detect-router-issues.d.ts.map +1 -0
  443. package/dist/checks/specialized/detect-router-issues.js +96 -0
  444. package/dist/checks/specialized/detect-router-issues.js.map +1 -0
  445. package/dist/checks/specialized/enum-validation.d.ts +15 -0
  446. package/dist/checks/specialized/enum-validation.d.ts.map +1 -0
  447. package/dist/checks/specialized/enum-validation.js +35 -0
  448. package/dist/checks/specialized/enum-validation.js.map +1 -0
  449. package/dist/checks/specialized/hash-collision.d.ts +18 -0
  450. package/dist/checks/specialized/hash-collision.d.ts.map +1 -0
  451. package/dist/checks/specialized/hash-collision.js +78 -0
  452. package/dist/checks/specialized/hash-collision.js.map +1 -0
  453. package/dist/checks/specialized/id-generation-enforcement.d.ts +16 -0
  454. package/dist/checks/specialized/id-generation-enforcement.d.ts.map +1 -0
  455. package/dist/checks/specialized/id-generation-enforcement.js +307 -0
  456. package/dist/checks/specialized/id-generation-enforcement.js.map +1 -0
  457. package/dist/checks/specialized/image-data-integrity.d.ts +15 -0
  458. package/dist/checks/specialized/image-data-integrity.d.ts.map +1 -0
  459. package/dist/checks/specialized/image-data-integrity.js +79 -0
  460. package/dist/checks/specialized/image-data-integrity.js.map +1 -0
  461. package/dist/checks/specialized/image-health.d.ts +14 -0
  462. package/dist/checks/specialized/image-health.d.ts.map +1 -0
  463. package/dist/checks/specialized/image-health.js +122 -0
  464. package/dist/checks/specialized/image-health.js.map +1 -0
  465. package/dist/checks/specialized/image-metadata-validation.d.ts +14 -0
  466. package/dist/checks/specialized/image-metadata-validation.d.ts.map +1 -0
  467. package/dist/checks/specialized/image-metadata-validation.js +95 -0
  468. package/dist/checks/specialized/image-metadata-validation.js.map +1 -0
  469. package/dist/checks/specialized/image-optimization.d.ts +16 -0
  470. package/dist/checks/specialized/image-optimization.d.ts.map +1 -0
  471. package/dist/checks/specialized/image-optimization.js +86 -0
  472. package/dist/checks/specialized/image-optimization.js.map +1 -0
  473. package/dist/checks/specialized/invalid-module-imports.d.ts +24 -0
  474. package/dist/checks/specialized/invalid-module-imports.d.ts.map +1 -0
  475. package/dist/checks/specialized/invalid-module-imports.js +209 -0
  476. package/dist/checks/specialized/invalid-module-imports.js.map +1 -0
  477. package/dist/checks/specialized/lint-validation.d.ts +26 -0
  478. package/dist/checks/specialized/lint-validation.d.ts.map +1 -0
  479. package/dist/checks/specialized/lint-validation.js +193 -0
  480. package/dist/checks/specialized/lint-validation.js.map +1 -0
  481. package/dist/checks/specialized/listing-workflow.d.ts +19 -0
  482. package/dist/checks/specialized/listing-workflow.d.ts.map +1 -0
  483. package/dist/checks/specialized/listing-workflow.js +89 -0
  484. package/dist/checks/specialized/listing-workflow.js.map +1 -0
  485. package/dist/checks/specialized/mui-imports-validation.d.ts +18 -0
  486. package/dist/checks/specialized/mui-imports-validation.d.ts.map +1 -0
  487. package/dist/checks/specialized/mui-imports-validation.js +134 -0
  488. package/dist/checks/specialized/mui-imports-validation.js.map +1 -0
  489. package/dist/checks/specialized/nextauth-v5-compliance.d.ts +16 -0
  490. package/dist/checks/specialized/nextauth-v5-compliance.d.ts.map +1 -0
  491. package/dist/checks/specialized/nextauth-v5-compliance.js +164 -0
  492. package/dist/checks/specialized/nextauth-v5-compliance.js.map +1 -0
  493. package/dist/checks/specialized/nextjs-params-check.d.ts +14 -0
  494. package/dist/checks/specialized/nextjs-params-check.d.ts.map +1 -0
  495. package/dist/checks/specialized/nextjs-params-check.js +140 -0
  496. package/dist/checks/specialized/nextjs-params-check.js.map +1 -0
  497. package/dist/checks/specialized/no-legacy-catalog-aliases-validation.d.ts +16 -0
  498. package/dist/checks/specialized/no-legacy-catalog-aliases-validation.d.ts.map +1 -0
  499. package/dist/checks/specialized/no-legacy-catalog-aliases-validation.js +36 -0
  500. package/dist/checks/specialized/no-legacy-catalog-aliases-validation.js.map +1 -0
  501. package/dist/checks/specialized/no-wata-cardgraded-validation.d.ts +22 -0
  502. package/dist/checks/specialized/no-wata-cardgraded-validation.d.ts.map +1 -0
  503. package/dist/checks/specialized/no-wata-cardgraded-validation.js +97 -0
  504. package/dist/checks/specialized/no-wata-cardgraded-validation.js.map +1 -0
  505. package/dist/checks/specialized/parameter-consistency-check.d.ts +20 -0
  506. package/dist/checks/specialized/parameter-consistency-check.d.ts.map +1 -0
  507. package/dist/checks/specialized/parameter-consistency-check.js +115 -0
  508. package/dist/checks/specialized/parameter-consistency-check.js.map +1 -0
  509. package/dist/checks/specialized/prisma-field-names-validation.d.ts +15 -0
  510. package/dist/checks/specialized/prisma-field-names-validation.d.ts.map +1 -0
  511. package/dist/checks/specialized/prisma-field-names-validation.js +35 -0
  512. package/dist/checks/specialized/prisma-field-names-validation.js.map +1 -0
  513. package/dist/checks/specialized/prisma-null-syntax.d.ts +34 -0
  514. package/dist/checks/specialized/prisma-null-syntax.d.ts.map +1 -0
  515. package/dist/checks/specialized/prisma-null-syntax.js +330 -0
  516. package/dist/checks/specialized/prisma-null-syntax.js.map +1 -0
  517. package/dist/checks/specialized/prisma-query-validation.d.ts +15 -0
  518. package/dist/checks/specialized/prisma-query-validation.d.ts.map +1 -0
  519. package/dist/checks/specialized/prisma-query-validation.js +35 -0
  520. package/dist/checks/specialized/prisma-query-validation.js.map +1 -0
  521. package/dist/checks/specialized/product-type-validation.d.ts +17 -0
  522. package/dist/checks/specialized/product-type-validation.d.ts.map +1 -0
  523. package/dist/checks/specialized/product-type-validation.js +129 -0
  524. package/dist/checks/specialized/product-type-validation.js.map +1 -0
  525. package/dist/checks/specialized/responsive-image-validation.d.ts +14 -0
  526. package/dist/checks/specialized/responsive-image-validation.d.ts.map +1 -0
  527. package/dist/checks/specialized/responsive-image-validation.js +101 -0
  528. package/dist/checks/specialized/responsive-image-validation.js.map +1 -0
  529. package/dist/checks/specialized/root-cleanliness.d.ts +21 -0
  530. package/dist/checks/specialized/root-cleanliness.d.ts.map +1 -0
  531. package/dist/checks/specialized/root-cleanliness.js +251 -0
  532. package/dist/checks/specialized/root-cleanliness.js.map +1 -0
  533. package/dist/checks/specialized/rotation-detection-validation.d.ts +16 -0
  534. package/dist/checks/specialized/rotation-detection-validation.d.ts.map +1 -0
  535. package/dist/checks/specialized/rotation-detection-validation.js +113 -0
  536. package/dist/checks/specialized/rotation-detection-validation.js.map +1 -0
  537. package/dist/checks/specialized/script-organization.d.ts +17 -0
  538. package/dist/checks/specialized/script-organization.d.ts.map +1 -0
  539. package/dist/checks/specialized/script-organization.js +487 -0
  540. package/dist/checks/specialized/script-organization.js.map +1 -0
  541. package/dist/checks/specialized/shared-components-migration.d.ts +137 -0
  542. package/dist/checks/specialized/shared-components-migration.d.ts.map +1 -0
  543. package/dist/checks/specialized/shared-components-migration.js +1288 -0
  544. package/dist/checks/specialized/shared-components-migration.js.map +1 -0
  545. package/dist/checks/specialized/store-specialties-normalization.d.ts +10 -0
  546. package/dist/checks/specialized/store-specialties-normalization.d.ts.map +1 -0
  547. package/dist/checks/specialized/store-specialties-normalization.js +126 -0
  548. package/dist/checks/specialized/store-specialties-normalization.js.map +1 -0
  549. package/dist/checks/specialized/two-stage-trim-validation.d.ts +16 -0
  550. package/dist/checks/specialized/two-stage-trim-validation.d.ts.map +1 -0
  551. package/dist/checks/specialized/two-stage-trim-validation.js +115 -0
  552. package/dist/checks/specialized/two-stage-trim-validation.js.map +1 -0
  553. package/dist/checks/specialized/underscore-variable-audit.d.ts +26 -0
  554. package/dist/checks/specialized/underscore-variable-audit.d.ts.map +1 -0
  555. package/dist/checks/specialized/underscore-variable-audit.js +219 -0
  556. package/dist/checks/specialized/underscore-variable-audit.js.map +1 -0
  557. package/dist/checks/specialized/unified-badge-consistency.d.ts +16 -0
  558. package/dist/checks/specialized/unified-badge-consistency.d.ts.map +1 -0
  559. package/dist/checks/specialized/unified-badge-consistency.js +284 -0
  560. package/dist/checks/specialized/unified-badge-consistency.js.map +1 -0
  561. package/dist/checks/specialized/validate-integration-enums.d.ts +15 -0
  562. package/dist/checks/specialized/validate-integration-enums.d.ts.map +1 -0
  563. package/dist/checks/specialized/validate-integration-enums.js +131 -0
  564. package/dist/checks/specialized/validate-integration-enums.js.map +1 -0
  565. package/dist/checks/testing/action-regression.d.ts +23 -0
  566. package/dist/checks/testing/action-regression.d.ts.map +1 -0
  567. package/dist/checks/testing/action-regression.js +192 -0
  568. package/dist/checks/testing/action-regression.js.map +1 -0
  569. package/dist/checks/testing/critical-api-coverage.d.ts +21 -0
  570. package/dist/checks/testing/critical-api-coverage.d.ts.map +1 -0
  571. package/dist/checks/testing/critical-api-coverage.js +158 -0
  572. package/dist/checks/testing/critical-api-coverage.js.map +1 -0
  573. package/dist/checks/testing/data-entry-regression-required.d.ts +24 -0
  574. package/dist/checks/testing/data-entry-regression-required.d.ts.map +1 -0
  575. package/dist/checks/testing/data-entry-regression-required.js +378 -0
  576. package/dist/checks/testing/data-entry-regression-required.js.map +1 -0
  577. package/dist/checks/testing/e2e-best-practices.d.ts +24 -0
  578. package/dist/checks/testing/e2e-best-practices.d.ts.map +1 -0
  579. package/dist/checks/testing/e2e-best-practices.js +791 -0
  580. package/dist/checks/testing/e2e-best-practices.js.map +1 -0
  581. package/dist/checks/testing/e2e-flake-patterns.d.ts +26 -0
  582. package/dist/checks/testing/e2e-flake-patterns.d.ts.map +1 -0
  583. package/dist/checks/testing/e2e-flake-patterns.js +305 -0
  584. package/dist/checks/testing/e2e-flake-patterns.js.map +1 -0
  585. package/dist/checks/testing/e2e-redundant-visibility-checks.d.ts +25 -0
  586. package/dist/checks/testing/e2e-redundant-visibility-checks.d.ts.map +1 -0
  587. package/dist/checks/testing/e2e-redundant-visibility-checks.js +613 -0
  588. package/dist/checks/testing/e2e-redundant-visibility-checks.js.map +1 -0
  589. package/dist/checks/testing/e2e-slow-tests.d.ts +9 -0
  590. package/dist/checks/testing/e2e-slow-tests.d.ts.map +1 -0
  591. package/dist/checks/testing/e2e-slow-tests.js +142 -0
  592. package/dist/checks/testing/e2e-slow-tests.js.map +1 -0
  593. package/dist/checks/testing/e2e-timeouts.d.ts +9 -0
  594. package/dist/checks/testing/e2e-timeouts.d.ts.map +1 -0
  595. package/dist/checks/testing/e2e-timeouts.js +82 -0
  596. package/dist/checks/testing/e2e-timeouts.js.map +1 -0
  597. package/dist/checks/testing/integration-e2e-depth.d.ts +20 -0
  598. package/dist/checks/testing/integration-e2e-depth.d.ts.map +1 -0
  599. package/dist/checks/testing/integration-e2e-depth.js +575 -0
  600. package/dist/checks/testing/integration-e2e-depth.js.map +1 -0
  601. package/dist/checks/testing/playwright-feature-coverage-gaps.d.ts +31 -0
  602. package/dist/checks/testing/playwright-feature-coverage-gaps.d.ts.map +1 -0
  603. package/dist/checks/testing/playwright-feature-coverage-gaps.js +1582 -0
  604. package/dist/checks/testing/playwright-feature-coverage-gaps.js.map +1 -0
  605. package/dist/checks/testing/playwright-mock-inventory.d.ts +24 -0
  606. package/dist/checks/testing/playwright-mock-inventory.d.ts.map +1 -0
  607. package/dist/checks/testing/playwright-mock-inventory.js +380 -0
  608. package/dist/checks/testing/playwright-mock-inventory.js.map +1 -0
  609. package/dist/checks/testing/test-coverage-threshold.d.ts +25 -0
  610. package/dist/checks/testing/test-coverage-threshold.d.ts.map +1 -0
  611. package/dist/checks/testing/test-coverage-threshold.js +166 -0
  612. package/dist/checks/testing/test-coverage-threshold.js.map +1 -0
  613. package/dist/checks/testing/test-flakiness-score.d.ts +27 -0
  614. package/dist/checks/testing/test-flakiness-score.d.ts.map +1 -0
  615. package/dist/checks/testing/test-flakiness-score.js +358 -0
  616. package/dist/checks/testing/test-flakiness-score.js.map +1 -0
  617. package/dist/checks/testing/test-patterns.d.ts +16 -0
  618. package/dist/checks/testing/test-patterns.d.ts.map +1 -0
  619. package/dist/checks/testing/test-patterns.js +156 -0
  620. package/dist/checks/testing/test-patterns.js.map +1 -0
  621. package/dist/checks/workflows/a-plus-rating-validation.d.ts +42 -0
  622. package/dist/checks/workflows/a-plus-rating-validation.d.ts.map +1 -0
  623. package/dist/checks/workflows/a-plus-rating-validation.js +527 -0
  624. package/dist/checks/workflows/a-plus-rating-validation.js.map +1 -0
  625. package/dist/checks/workflows/affected.d.ts +14 -0
  626. package/dist/checks/workflows/affected.d.ts.map +1 -0
  627. package/dist/checks/workflows/affected.js +126 -0
  628. package/dist/checks/workflows/affected.js.map +1 -0
  629. package/dist/checks/workflows/ai.d.ts +6 -0
  630. package/dist/checks/workflows/ai.d.ts.map +1 -0
  631. package/dist/checks/workflows/ai.js +42 -0
  632. package/dist/checks/workflows/ai.js.map +1 -0
  633. package/dist/checks/workflows/all.d.ts +31 -0
  634. package/dist/checks/workflows/all.d.ts.map +1 -0
  635. package/dist/checks/workflows/all.js +2688 -0
  636. package/dist/checks/workflows/all.js.map +1 -0
  637. package/dist/checks/workflows/commit.d.ts +19 -0
  638. package/dist/checks/workflows/commit.d.ts.map +1 -0
  639. package/dist/checks/workflows/commit.js +207 -0
  640. package/dist/checks/workflows/commit.js.map +1 -0
  641. package/dist/checks/workflows/critical.d.ts +9 -0
  642. package/dist/checks/workflows/critical.d.ts.map +1 -0
  643. package/dist/checks/workflows/critical.js +213 -0
  644. package/dist/checks/workflows/critical.js.map +1 -0
  645. package/dist/checks/workflows/database-id-validation.d.ts +9 -0
  646. package/dist/checks/workflows/database-id-validation.d.ts.map +1 -0
  647. package/dist/checks/workflows/database-id-validation.js +13 -0
  648. package/dist/checks/workflows/database-id-validation.js.map +1 -0
  649. package/dist/checks/workflows/deploy.d.ts +20 -0
  650. package/dist/checks/workflows/deploy.d.ts.map +1 -0
  651. package/dist/checks/workflows/deploy.js +107 -0
  652. package/dist/checks/workflows/deploy.js.map +1 -0
  653. package/dist/checks/workflows/deployment-readiness.d.ts +12 -0
  654. package/dist/checks/workflows/deployment-readiness.d.ts.map +1 -0
  655. package/dist/checks/workflows/deployment-readiness.js +403 -0
  656. package/dist/checks/workflows/deployment-readiness.js.map +1 -0
  657. package/dist/checks/workflows/dev.d.ts +19 -0
  658. package/dist/checks/workflows/dev.d.ts.map +1 -0
  659. package/dist/checks/workflows/dev.js +88 -0
  660. package/dist/checks/workflows/dev.js.map +1 -0
  661. package/dist/checks/workflows/development.d.ts +9 -0
  662. package/dist/checks/workflows/development.d.ts.map +1 -0
  663. package/dist/checks/workflows/development.js +65 -0
  664. package/dist/checks/workflows/development.js.map +1 -0
  665. package/dist/checks/workflows/enterprise.d.ts +10 -0
  666. package/dist/checks/workflows/enterprise.d.ts.map +1 -0
  667. package/dist/checks/workflows/enterprise.js +359 -0
  668. package/dist/checks/workflows/enterprise.js.map +1 -0
  669. package/dist/checks/workflows/images.d.ts +6 -0
  670. package/dist/checks/workflows/images.d.ts.map +1 -0
  671. package/dist/checks/workflows/images.js +58 -0
  672. package/dist/checks/workflows/images.js.map +1 -0
  673. package/dist/checks/workflows/naming.d.ts +19 -0
  674. package/dist/checks/workflows/naming.d.ts.map +1 -0
  675. package/dist/checks/workflows/naming.js +42 -0
  676. package/dist/checks/workflows/naming.js.map +1 -0
  677. package/dist/checks/workflows/performance.d.ts +8 -0
  678. package/dist/checks/workflows/performance.d.ts.map +1 -0
  679. package/dist/checks/workflows/performance.js +77 -0
  680. package/dist/checks/workflows/performance.js.map +1 -0
  681. package/dist/checks/workflows/pre-deploy.d.ts +6 -0
  682. package/dist/checks/workflows/pre-deploy.d.ts.map +1 -0
  683. package/dist/checks/workflows/pre-deploy.js +41 -0
  684. package/dist/checks/workflows/pre-deploy.js.map +1 -0
  685. package/dist/checks/workflows/security.d.ts +8 -0
  686. package/dist/checks/workflows/security.d.ts.map +1 -0
  687. package/dist/checks/workflows/security.js +71 -0
  688. package/dist/checks/workflows/security.js.map +1 -0
  689. package/dist/checks/workflows/supercatch.d.ts +8 -0
  690. package/dist/checks/workflows/supercatch.d.ts.map +1 -0
  691. package/dist/checks/workflows/supercatch.js +127 -0
  692. package/dist/checks/workflows/supercatch.js.map +1 -0
  693. package/dist/checks/workflows/ui-quality.d.ts +9 -0
  694. package/dist/checks/workflows/ui-quality.d.ts.map +1 -0
  695. package/dist/checks/workflows/ui-quality.js +264 -0
  696. package/dist/checks/workflows/ui-quality.js.map +1 -0
  697. package/dist/checks/workflows/ui-uniformity.d.ts +18 -0
  698. package/dist/checks/workflows/ui-uniformity.d.ts.map +1 -0
  699. package/dist/checks/workflows/ui-uniformity.js +265 -0
  700. package/dist/checks/workflows/ui-uniformity.js.map +1 -0
  701. package/dist/checks/workflows/vercel.d.ts +16 -0
  702. package/dist/checks/workflows/vercel.d.ts.map +1 -0
  703. package/dist/checks/workflows/vercel.js +173 -0
  704. package/dist/checks/workflows/vercel.js.map +1 -0
  705. package/dist/utils/validation-helpers.d.ts +43 -0
  706. package/dist/utils/validation-helpers.d.ts.map +1 -0
  707. package/dist/utils/validation-helpers.js +370 -0
  708. package/dist/utils/validation-helpers.js.map +1 -0
  709. package/package.json +1 -1
@@ -0,0 +1,990 @@
1
+ #!/usr/bin/env tsx
2
+ "use strict";
3
+ /**
4
+ * Consolidated UI Token Enforcement Preflight
5
+ *
6
+ * Combines 7 separate token checks into one comprehensive module:
7
+ * - tokenization-check (colors, spacing, typography, z-index, layout)
8
+ * - spacing-token-enforcement
9
+ * - color-token-enforcement
10
+ * - shadow-token-enforcement
11
+ * - zindex-token-enforcement
12
+ * - design-token-enforcement
13
+ * - animation-token-enforcement
14
+ *
15
+ * Usage:
16
+ * pnpm preflight:ui-tokens # All token checks
17
+ * pnpm preflight:ui-tokens colors # Color tokens only
18
+ * pnpm preflight:ui-tokens spacing # Spacing tokens only
19
+ * pnpm preflight:ui-tokens shadows # Shadow tokens only
20
+ * pnpm preflight:ui-tokens zindex # Z-index tokens only
21
+ * pnpm preflight:ui-tokens animation # Animation tokens only
22
+ * pnpm preflight:ui-tokens design # Design tokens (borderRadius, fontSize)
23
+ */
24
+ var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
25
+ if (k2 === undefined) k2 = k;
26
+ var desc = Object.getOwnPropertyDescriptor(m, k);
27
+ if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
28
+ desc = { enumerable: true, get: function() { return m[k]; } };
29
+ }
30
+ Object.defineProperty(o, k2, desc);
31
+ }) : (function(o, m, k, k2) {
32
+ if (k2 === undefined) k2 = k;
33
+ o[k2] = m[k];
34
+ }));
35
+ var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
36
+ Object.defineProperty(o, "default", { enumerable: true, value: v });
37
+ }) : function(o, v) {
38
+ o["default"] = v;
39
+ });
40
+ var __importStar = (this && this.__importStar) || (function () {
41
+ var ownKeys = function(o) {
42
+ ownKeys = Object.getOwnPropertyNames || function (o) {
43
+ var ar = [];
44
+ for (var k in o) if (Object.prototype.hasOwnProperty.call(o, k)) ar[ar.length] = k;
45
+ return ar;
46
+ };
47
+ return ownKeys(o);
48
+ };
49
+ return function (mod) {
50
+ if (mod && mod.__esModule) return mod;
51
+ var result = {};
52
+ if (mod != null) for (var k = ownKeys(mod), i = 0; i < k.length; i++) if (k[i] !== "default") __createBinding(result, mod, k[i]);
53
+ __setModuleDefault(result, mod);
54
+ return result;
55
+ };
56
+ })();
57
+ Object.defineProperty(exports, "__esModule", { value: true });
58
+ exports.UITokensPreflightModule = void 0;
59
+ const fs = __importStar(require("fs"));
60
+ const path = __importStar(require("path"));
61
+ const console_chars_1 = require("../../utils/console-chars");
62
+ const file_cache_1 = require("../../shared/file-cache");
63
+ const universal_progress_reporter_1 = require("../system/universal-progress-reporter");
64
+ const concurrency_config_1 = require("../../shared/concurrency-config");
65
+ // PATTERNS - Consolidated from individual preflight files
66
+ const PATTERNS = {
67
+ // From tokenization-check.js
68
+ hexColor: /#[0-9a-fA-F]{3,6}(?![^<]*var\()/g,
69
+ rgbColor: /rgba?\([^)]+\)(?![^<]*var\()/g,
70
+ hardcodedPx: /(?:padding|margin|gap|width|height):\s*['"]?\d+px/g,
71
+ hardcodedFontSize: /fontSize:\s*['"]?\d+(?:px|rem)/g,
72
+ hardcodedZIndex: /z-index:\s*\d+(?![^<]*var\()/g,
73
+ tailwindSpacing: /\b(?:p|m|gap|space)-(?:x-|y-)?(\d+)\b/g,
74
+ tailwindPadding: /\b(?:px|py|pt|pb|pl|pr)-(\d+)\b/g,
75
+ tailwindMargin: /\b(?:mx|my|mt|mb|ml|mr)-(\d+)\b/g,
76
+ // From spacing-token-enforcement.js
77
+ muiSpacing: /\b(mb|mt|ml|mr|mx|my|m|pb|pt|pl|pr|px|py|p|gap):\s*([0-9]+)(?:\s*[,}\n])/g,
78
+ // From color-token-enforcement.js
79
+ hexColorProp: /(color|bgcolor|backgroundColor|borderColor):\s*["']#([0-9a-fA-F]{3,8})["']/g,
80
+ // From shadow-token-enforcement.js
81
+ hardcodedShadow: /boxShadow:\s*["'](?!var\()([^"']+)["']/g,
82
+ // From zindex-token-enforcement.js
83
+ hardcodedZIndexProp: /zIndex:\s*([0-9]+)/g,
84
+ // From design-token-enforcement.js
85
+ hardcodedBorderRadius: /borderRadius:\s*["']?(\d+)["']?\s*[,}]/g,
86
+ hardcodedFontSizeWithUnit: /fontSize:\s*["'](\d+\.?\d*)(rem|px|em)["']/g,
87
+ // From animation-token-enforcement.js
88
+ hardcodedTransition: /transition:\s*['"]?[^'"]*(\d+ms|\d+\.?\d*s)[^'"]*['"]?/i,
89
+ hardcodedAnimation: /animation:\s*['"]?[^'"]*(\d+ms|\d+\.?\d*s)[^'"]*['"]?/i,
90
+ hardcodedEasing: /cubic-bezier\([^)]+\)/i,
91
+ tailwindTransition: /\btransition-(\w+)\b/,
92
+ tailwindDuration: /\bduration-(\d+)\b/,
93
+ tailwindEase: /\bease-(in|out|in-out|linear)\b/,
94
+ };
95
+ const ALLOWED_EXCEPTIONS = [
96
+ "rgba(0, 0, 0,",
97
+ "rgba(255, 255, 255,",
98
+ "rgba(255,255,255,", // No spaces variant
99
+ "rgba(0,0,0,", // No spaces variant
100
+ "rgb(0, 0, 0)",
101
+ "rgb(0,0,0)",
102
+ "rgb(255, 255, 255)",
103
+ "rgb(255,255,255)",
104
+ "transparent",
105
+ "inherit",
106
+ "currentColor",
107
+ "animation:",
108
+ "transition:",
109
+ "shadow-",
110
+ "blur-",
111
+ "opacity-",
112
+ ];
113
+ // Brand colors that should stay hardcoded (external brand identity)
114
+ // Also includes basic black/white and common neutral grays
115
+ const BRAND_COLORS = {
116
+ // Basic black/white (legitimate for high contrast)
117
+ "#000": "Black",
118
+ "#000000": "Black",
119
+ "#fff": "White",
120
+ "#ffffff": "White",
121
+ // eBay
122
+ "#e53238": "eBay red",
123
+ "#0064d2": "eBay blue",
124
+ "#f5af02": "eBay yellow",
125
+ "#86b817": "eBay green",
126
+ // Amazon
127
+ "#ff9900": "Amazon orange",
128
+ "#0066c0": "Amazon blue",
129
+ // Walmart
130
+ "#0071ce": "Walmart blue",
131
+ "#007dc6": "Walmart blue alt",
132
+ // Etsy
133
+ "#f56400": "Etsy orange",
134
+ // Whatnot
135
+ "#7c3aed": "Purple (Whatnot / Tailwind violet-600)",
136
+ // Shopify
137
+ "#96bf48": "Shopify green",
138
+ // WooCommerce
139
+ "#7f54b3": "WooCommerce purple",
140
+ // Shippo
141
+ "#2d9cdb": "Shippo blue",
142
+ // ShipStation
143
+ "#1a73e8": "ShipStation blue",
144
+ // Webhook/API
145
+ "#6366f1": "Indigo (Webhook / Tailwind indigo-500)",
146
+ // Target
147
+ "#cc0c39": "Target red",
148
+ // Stripe
149
+ "#5469d4": "Stripe purple",
150
+ // PayPal
151
+ "#00457c": "PayPal blue",
152
+ "#003087": "PayPal dark blue",
153
+ "#009cde": "PayPal light blue",
154
+ "#ffc439": "PayPal yellow",
155
+ // Social
156
+ "#1877f2": "Facebook blue",
157
+ "#1da1f2": "Twitter blue",
158
+ "#e4405f": "Instagram pink",
159
+ "#ff0000": "YouTube red",
160
+ "#25d366": "WhatsApp green",
161
+ // Google
162
+ "#4285f4": "Google blue",
163
+ "#34a853": "Google green",
164
+ "#fbbc05": "Google yellow",
165
+ "#ea4335": "Google red",
166
+ // Tailwind palette hex colors (commonly used in components)
167
+ "#3b82f6": "Tailwind blue-500",
168
+ "#2563eb": "Tailwind blue-600",
169
+ "#1d4ed8": "Tailwind blue-700",
170
+ "#60a5fa": "Tailwind blue-400",
171
+ "#ef4444": "Tailwind red-500",
172
+ "#dc2626": "Tailwind red-600",
173
+ "#b91c1c": "Tailwind red-700",
174
+ "#f87171": "Tailwind red-400",
175
+ "#22c55e": "Tailwind green-500",
176
+ "#16a34a": "Tailwind green-600",
177
+ "#15803d": "Tailwind green-700",
178
+ "#4ade80": "Tailwind green-400",
179
+ "#10b981": "Tailwind emerald-500",
180
+ "#059669": "Tailwind emerald-600",
181
+ "#f59e0b": "Tailwind amber-500",
182
+ "#d97706": "Tailwind amber-600",
183
+ "#eab308": "Tailwind yellow-500",
184
+ "#ca8a04": "Tailwind yellow-600",
185
+ "#a855f7": "Tailwind purple-500",
186
+ "#9333ea": "Tailwind purple-600",
187
+ "#8b5cf6": "Tailwind violet-500",
188
+ "#4f46e5": "Tailwind indigo-600",
189
+ "#06b6d4": "Tailwind cyan-500",
190
+ "#0891b2": "Tailwind cyan-600",
191
+ "#14b8a6": "Tailwind teal-500",
192
+ "#0d9488": "Tailwind teal-600",
193
+ "#f97316": "Tailwind orange-500",
194
+ "#ea580c": "Tailwind orange-600",
195
+ "#ec4899": "Tailwind pink-500",
196
+ "#db2777": "Tailwind pink-600",
197
+ "#f43f5e": "Tailwind rose-500",
198
+ "#e11d48": "Tailwind rose-600",
199
+ "#6b7280": "Tailwind gray-500",
200
+ "#4b5563": "Tailwind gray-600",
201
+ "#374151": "Tailwind gray-700",
202
+ "#64748b": "Tailwind slate-500",
203
+ "#475569": "Tailwind slate-600",
204
+ "#334155": "Tailwind slate-700",
205
+ };
206
+ // Tailwind palette RGB values used in rgba() - these are design system colors
207
+ // When used in rgba() for opacity effects, they're legitimate
208
+ const TAILWIND_RGB_VALUES = [
209
+ // Blue (blue-500, blue-600, etc.)
210
+ "59, 130, 246", // blue-500
211
+ "37, 99, 235", // blue-600
212
+ "29, 78, 216", // blue-700
213
+ "96, 165, 250", // blue-400
214
+ // Red (red-500, red-600, etc.)
215
+ "239, 68, 68", // red-500
216
+ "220, 38, 38", // red-600
217
+ "185, 28, 28", // red-700
218
+ "248, 113, 113", // red-400
219
+ // Green (green-500, green-600, etc.)
220
+ "34, 197, 94", // green-500
221
+ "22, 163, 74", // green-600
222
+ "21, 128, 61", // green-700
223
+ "74, 222, 128", // green-400
224
+ // Yellow/Amber (amber-500, yellow-500, etc.)
225
+ "245, 158, 11", // amber-500
226
+ "217, 119, 6", // amber-600
227
+ "234, 179, 8", // yellow-500
228
+ "202, 138, 4", // yellow-600
229
+ // Purple (purple-500, violet-500, etc.)
230
+ "168, 85, 247", // purple-500
231
+ "139, 92, 246", // violet-500
232
+ "124, 58, 237", // violet-600
233
+ // Gray (gray-500, slate-500, etc.)
234
+ "107, 114, 128", // gray-500
235
+ "100, 116, 139", // slate-500
236
+ "71, 85, 105", // slate-600
237
+ // Indigo
238
+ "99, 102, 241", // indigo-500
239
+ "79, 70, 229", // indigo-600
240
+ // Cyan/Teal
241
+ "6, 182, 212", // cyan-500
242
+ "20, 184, 166", // teal-500
243
+ // Orange
244
+ "249, 115, 22", // orange-500
245
+ "234, 88, 12", // orange-600
246
+ // Pink/Rose
247
+ "236, 72, 153", // pink-500
248
+ "244, 63, 94", // rose-500
249
+ // Emerald (additional shades)
250
+ "16, 185, 129", // emerald-500
251
+ "5, 150, 105", // emerald-600
252
+ // Common neutral grays (used in dark/light mode backgrounds)
253
+ "38, 50, 56", // Dark mode gray (blueGray-900 equivalent)
254
+ "245, 245, 245", // Light mode gray (gray-100 equivalent)
255
+ "250, 250, 250", // Very light gray
256
+ "229, 231, 235", // gray-200
257
+ "209, 213, 219", // gray-300
258
+ "156, 163, 175", // gray-400
259
+ "75, 85, 99", // gray-600
260
+ "55, 65, 81", // gray-700
261
+ "31, 41, 55", // gray-800
262
+ "17, 24, 39", // gray-900
263
+ ];
264
+ // Keyframe animation names (legitimate - these are CSS animation references)
265
+ const KEYFRAME_ANIMATION_NAMES = [
266
+ "shimmer",
267
+ "pulse",
268
+ "spin",
269
+ "bounce",
270
+ "fade",
271
+ "slide",
272
+ "glow",
273
+ "sparkle",
274
+ "dropzonePulse",
275
+ "turbo-glow",
276
+ "holographic",
277
+ "rainbow",
278
+ "wave",
279
+ "float",
280
+ "shake",
281
+ "wiggle",
282
+ "ping",
283
+ "skeleton",
284
+ ];
285
+ // Small icon sizes that are legitimate (not spacing)
286
+ const ICON_SIZES = [
287
+ "12px",
288
+ "14px",
289
+ "16px",
290
+ "18px",
291
+ "20px",
292
+ "24px",
293
+ "28px",
294
+ "32px",
295
+ "36px",
296
+ "40px",
297
+ "48px",
298
+ ];
299
+ const ZINDEX_MAP = {
300
+ 1: "var(--z-base)",
301
+ 10: "var(--z-dropdown)",
302
+ 100: "var(--z-sticky)",
303
+ 1000: "var(--z-dropdown)",
304
+ 1020: "var(--z-sticky)",
305
+ 1030: "var(--z-fixed)",
306
+ 1040: "var(--z-modal-backdrop)",
307
+ 1050: "var(--z-modal)",
308
+ 1060: "var(--z-popover)",
309
+ 1070: "var(--z-tooltip)",
310
+ 1080: "var(--z-toast)",
311
+ 9999: "var(--z-max)",
312
+ };
313
+ const EXCLUDED_PATTERNS = [
314
+ "**/node_modules/**",
315
+ "**/.next/**",
316
+ "**/dist/**",
317
+ "**/build/**",
318
+ "**/coverage/**",
319
+ "**/test-results/**",
320
+ "**/packages/ui/**",
321
+ "**/*.test.{ts,tsx}",
322
+ "**/*.spec.{ts,tsx}",
323
+ "**/*.stories.{ts,tsx}",
324
+ "**/storybook/**",
325
+ "**/admin/analytics/**",
326
+ ];
327
+ // TOKEN CHECK IMPLEMENTATIONS
328
+ // CACHED FILE LISTS - Scan once, use everywhere
329
+ let _cachedComponentsTsxJsxFiles = null;
330
+ async function getComponentsTsxJsxFiles() {
331
+ if (!_cachedComponentsTsxJsxFiles) {
332
+ _cachedComponentsTsxJsxFiles = await file_cache_1.fileCache.getComponentsTsxJsxFiles();
333
+ }
334
+ return _cachedComponentsTsxJsxFiles;
335
+ }
336
+ // Get concurrency from shared config (respects PREFLIGHT_CONCURRENCY env var)
337
+ const concurrencyConfig = (0, concurrency_config_1.getConcurrencyConfig)();
338
+ class UITokensPreflightModule {
339
+ verbose;
340
+ parallel = false;
341
+ issues = [];
342
+ constructor(options = {}) {
343
+ this.verbose = options.verbose || false;
344
+ this.parallel = options.parallel || concurrencyConfig.parallel;
345
+ }
346
+ isException(line) {
347
+ return ALLOWED_EXCEPTIONS.some((exception) => line.includes(exception));
348
+ }
349
+ async getFiles() {
350
+ return await file_cache_1.fileCache.getAppAndComponentsTSX();
351
+ }
352
+ /**
353
+ * Color Token Check (from color-token-enforcement.js + tokenization-check.js)
354
+ */
355
+ async checkColorTokens() {
356
+ const startTime = Date.now();
357
+ const issues = [];
358
+ const files = await this.getFiles();
359
+ for (const file of files) {
360
+ const content = fs.readFileSync(file, "utf8");
361
+ const lines = content.split("\n");
362
+ lines.forEach((line, index) => {
363
+ if (line.trim().startsWith("//") || line.trim().startsWith("/*"))
364
+ return;
365
+ // Check hex colors in props (backgroundColor, color, borderColor)
366
+ PATTERNS.hexColorProp.lastIndex = 0;
367
+ let match;
368
+ while ((match = PATTERNS.hexColorProp.exec(line)) !== null) {
369
+ const hexColor = `#${match[2]}`.toLowerCase();
370
+ // Skip brand colors and basic black/white
371
+ const isBrandColor = BRAND_COLORS[hexColor] !== undefined;
372
+ if (!isBrandColor) {
373
+ issues.push({
374
+ file,
375
+ line: index + 1,
376
+ type: "color-prop",
377
+ value: `#${match[2]}`,
378
+ suggestion: "Use var(--color-{name}) or var(--text-{name}) token",
379
+ snippet: line.trim().substring(0, 80),
380
+ });
381
+ }
382
+ }
383
+ // Check general hex colors
384
+ const hexMatches = line.match(PATTERNS.hexColor);
385
+ if (hexMatches &&
386
+ !this.isException(line) &&
387
+ !line.includes("var(") &&
388
+ !line.includes("color-mix(")) {
389
+ // Skip card numbers in titles (e.g., "Billy Waddy #162")
390
+ const isCardNumber = (line.includes("title") || line.includes("Title")) && /[A-Za-z]\s*#\d+/.test(line);
391
+ const hexColor = hexMatches[0].toLowerCase();
392
+ const isBrandColor = BRAND_COLORS[hexColor] !== undefined;
393
+ // Skip gradients - they often use Tailwind palette colors which is fine
394
+ const isGradient = line.includes("gradient") ||
395
+ line.includes("Gradient") ||
396
+ line.includes("linear-gradient") ||
397
+ line.includes("radial-gradient");
398
+ // Skip brand colors (external brand identity - should stay hardcoded)
399
+ if (!isCardNumber && !isBrandColor && !isGradient) {
400
+ issues.push({
401
+ file,
402
+ line: index + 1,
403
+ type: "hex-color",
404
+ value: hexMatches[0],
405
+ suggestion: "Use var(--color-{name}) token",
406
+ snippet: line.trim().substring(0, 80),
407
+ });
408
+ }
409
+ }
410
+ // Check RGB colors - skip dynamic values with template literals/variables
411
+ const rgbMatches = line.match(PATTERNS.rgbColor);
412
+ if (rgbMatches &&
413
+ !this.isException(line) &&
414
+ !line.includes("gradient") &&
415
+ !line.includes("animation")) {
416
+ // Skip dynamic rgba with variables (e.g., rgba(255, 219, 112, ${0.4 * intensity}))
417
+ const hasDynamicValue = line.includes("${") || line.includes("` +") || line.includes("+ `");
418
+ // Skip Tailwind palette colors used in rgba() - these are design system colors
419
+ const isTailwindColor = TAILWIND_RGB_VALUES.some((rgb) => line.includes(rgb));
420
+ // Skip rgba in shadow contexts - shadows often need custom opacity
421
+ const isShadowContext = line.includes("shadow") || line.includes("Shadow");
422
+ if (!hasDynamicValue && !isTailwindColor && !isShadowContext) {
423
+ issues.push({
424
+ file,
425
+ line: index + 1,
426
+ type: "rgb-color",
427
+ value: rgbMatches[0],
428
+ suggestion: "Use var(--color-{name}) token or color-mix()",
429
+ snippet: line.trim().substring(0, 80),
430
+ });
431
+ }
432
+ }
433
+ });
434
+ }
435
+ return {
436
+ name: "Color Tokens",
437
+ passed: issues.length === 0,
438
+ issues,
439
+ duration: Date.now() - startTime,
440
+ };
441
+ }
442
+ /**
443
+ * Spacing Token Check (from spacing-token-enforcement.js + tokenization-check.js)
444
+ *
445
+ * NOTE: Tailwind spacing classes (mb-4, gap-6, etc.) are NOT flagged because
446
+ * Tailwind IS a design system. Only flags:
447
+ * - MUI sx prop spacing (legacy pattern being migrated)
448
+ * - Hardcoded px values in style objects (should use tokens)
449
+ */
450
+ async checkSpacingTokens() {
451
+ const startTime = Date.now();
452
+ const issues = [];
453
+ const files = await this.getFiles();
454
+ for (const file of files) {
455
+ const content = fs.readFileSync(file, "utf8");
456
+ const lines = content.split("\n");
457
+ lines.forEach((line, index) => {
458
+ if (line.trim().startsWith("//") || line.trim().startsWith("/*"))
459
+ return;
460
+ // Check MUI spacing props (mb, mt, p, etc.) - only in sx props
461
+ // Skip if it's a className (Tailwind) - those are fine
462
+ if (line.includes("sx={{") || line.includes("sx={")) {
463
+ PATTERNS.muiSpacing.lastIndex = 0;
464
+ let match;
465
+ while ((match = PATTERNS.muiSpacing.exec(line)) !== null) {
466
+ const [, prop, value] = match;
467
+ const numValue = parseInt(value, 10);
468
+ if (numValue >= 2) {
469
+ issues.push({
470
+ file,
471
+ line: index + 1,
472
+ type: "mui-spacing",
473
+ value: `${prop}: ${numValue}`,
474
+ suggestion: `Use ${prop}: "var(--spacing-${numValue})"`,
475
+ snippet: line.trim().substring(0, 80),
476
+ });
477
+ }
478
+ }
479
+ }
480
+ // Check hardcoded px values in style objects only
481
+ // Skip className (Tailwind), sizes attribute, media queries, icon sizes
482
+ if (line.includes("style={{") || line.includes("style={")) {
483
+ const pxMatches = line.match(PATTERNS.hardcodedPx);
484
+ if (pxMatches && !this.isException(line)) {
485
+ const pxValue = pxMatches[0].match(/\d+px/)?.[0];
486
+ const numValue = pxMatches[0].match(/\d+/)?.[0];
487
+ const isMediaQuery = line.includes("useMediaQuery") || line.includes("@media");
488
+ const isImageSize = line.includes("sizes=");
489
+ // Skip icon sizes (width/height for icons are legitimate)
490
+ const isIconSize = pxValue &&
491
+ ICON_SIZES.includes(pxValue) &&
492
+ (line.includes("width") || line.includes("height")) &&
493
+ (line.toLowerCase().includes("icon") ||
494
+ line.includes("Icon") ||
495
+ line.includes("svg") ||
496
+ line.includes("SVG"));
497
+ // Only flag larger values (>= 16px) in style objects, skip icon sizes
498
+ if (numValue &&
499
+ parseInt(numValue) >= 16 &&
500
+ !isMediaQuery &&
501
+ !isImageSize &&
502
+ !isIconSize) {
503
+ // Also skip if it's a width/height for small UI elements
504
+ const isSmallUIElement = pxValue && ICON_SIZES.includes(pxValue);
505
+ if (!isSmallUIElement) {
506
+ issues.push({
507
+ file,
508
+ line: index + 1,
509
+ type: "hardcoded-px",
510
+ value: pxMatches[0],
511
+ suggestion: "Use var(--spacing-*) token",
512
+ snippet: line.trim().substring(0, 80),
513
+ });
514
+ }
515
+ }
516
+ }
517
+ }
518
+ // NOTE: Tailwind spacing classes are NOT flagged
519
+ // Tailwind IS a design system - mb-4, gap-6, p-8 are all valid
520
+ });
521
+ }
522
+ return {
523
+ name: "Spacing Tokens",
524
+ passed: issues.length === 0,
525
+ issues,
526
+ duration: Date.now() - startTime,
527
+ };
528
+ }
529
+ /**
530
+ * Shadow Token Check (from shadow-token-enforcement.js)
531
+ *
532
+ * NOTE: Shadows that already use CSS variables (var(--color-{name}), var(--glass-{name}), color-mix())
533
+ * are NOT flagged - they're using the design system correctly, just with custom shadow geometry.
534
+ */
535
+ async checkShadowTokens() {
536
+ const startTime = Date.now();
537
+ const issues = [];
538
+ const files = await this.getFiles();
539
+ for (const file of files) {
540
+ const content = fs.readFileSync(file, "utf8");
541
+ if (!content.includes("boxShadow"))
542
+ continue;
543
+ const lines = content.split("\n");
544
+ lines.forEach((line, index) => {
545
+ PATTERNS.hardcodedShadow.lastIndex = 0;
546
+ let match;
547
+ while ((match = PATTERNS.hardcodedShadow.exec(line)) !== null) {
548
+ const value = match[1];
549
+ if (value === "none" || value === "inherit")
550
+ return;
551
+ // Skip shadows that use CSS variables - they're using the design system
552
+ const usesTokens = value.includes("var(--") || value.includes("color-mix(");
553
+ if (usesTokens)
554
+ return;
555
+ issues.push({
556
+ file,
557
+ line: index + 1,
558
+ type: "hardcoded-shadow",
559
+ value: value.substring(0, 40) + (value.length > 40 ? "..." : ""),
560
+ suggestion: "Use var(--shadow-sm|md|lg|xl)",
561
+ snippet: line.trim().substring(0, 80),
562
+ });
563
+ }
564
+ });
565
+ }
566
+ return {
567
+ name: "Shadow Tokens",
568
+ passed: issues.length === 0,
569
+ issues,
570
+ duration: Date.now() - startTime,
571
+ };
572
+ }
573
+ /**
574
+ * Z-Index Token Check (from zindex-token-enforcement.js + tokenization-check.js)
575
+ */
576
+ async checkZIndexTokens() {
577
+ const startTime = Date.now();
578
+ const issues = [];
579
+ const files = await this.getFiles();
580
+ for (const file of files) {
581
+ const content = fs.readFileSync(file, "utf8");
582
+ if (!content.includes("zIndex") && !content.includes("z-index"))
583
+ continue;
584
+ const lines = content.split("\n");
585
+ lines.forEach((line, index) => {
586
+ // Check zIndex prop
587
+ PATTERNS.hardcodedZIndexProp.lastIndex = 0;
588
+ let match;
589
+ while ((match = PATTERNS.hardcodedZIndexProp.exec(line)) !== null) {
590
+ const value = parseInt(match[1], 10);
591
+ const suggestion = ZINDEX_MAP[value] || "var(--z-*)";
592
+ issues.push({
593
+ file,
594
+ line: index + 1,
595
+ type: "hardcoded-zindex",
596
+ value: `zIndex: ${value}`,
597
+ suggestion,
598
+ snippet: line.trim().substring(0, 80),
599
+ });
600
+ }
601
+ // Check z-index CSS property
602
+ const zMatches = line.match(PATTERNS.hardcodedZIndex);
603
+ if (zMatches && !this.isException(line)) {
604
+ const value = zMatches[0].match(/\d+/)?.[0];
605
+ if (value && parseInt(value) > 10) {
606
+ issues.push({
607
+ file,
608
+ line: index + 1,
609
+ type: "css-zindex",
610
+ value: zMatches[0],
611
+ suggestion: "Use var(--z-*) token",
612
+ snippet: line.trim().substring(0, 80),
613
+ });
614
+ }
615
+ }
616
+ });
617
+ }
618
+ return {
619
+ name: "Z-Index Tokens",
620
+ passed: issues.length === 0,
621
+ issues,
622
+ duration: Date.now() - startTime,
623
+ };
624
+ }
625
+ /**
626
+ * Animation Token Check (from animation-token-enforcement.js)
627
+ *
628
+ * NOTE: Tailwind transition classes (transition-all, duration-200, ease-in-out)
629
+ * are NOT flagged because Tailwind IS a design system. Only flags:
630
+ * - Hardcoded transitions in style objects (should use tokens)
631
+ * - Hardcoded cubic-bezier in style objects
632
+ *
633
+ * Also skips keyframe animation names (shimmer, pulse, glow, etc.) - these are
634
+ * CSS @keyframes references, not hardcoded values.
635
+ */
636
+ async checkAnimationTokens() {
637
+ const startTime = Date.now();
638
+ const issues = [];
639
+ const files = await getComponentsTsxJsxFiles();
640
+ for (const file of files) {
641
+ const content = fs.readFileSync(file, "utf8");
642
+ const lines = content.split("\n");
643
+ lines.forEach((line, index) => {
644
+ if (line.trim().startsWith("//") || line.trim().startsWith("/*"))
645
+ return;
646
+ // Only check style objects, not className (Tailwind is fine)
647
+ const isStyleObject = line.includes("style={{") ||
648
+ line.includes("style={") ||
649
+ line.includes("transition:") ||
650
+ line.includes("animation:");
651
+ if (!isStyleObject)
652
+ return;
653
+ // Check hardcoded transitions in style objects
654
+ const transitionMatch = line.match(PATTERNS.hardcodedTransition);
655
+ if (transitionMatch &&
656
+ !line.includes("var(--transition-") &&
657
+ !line.includes("var(--ease-")) {
658
+ issues.push({
659
+ file,
660
+ line: index + 1,
661
+ type: "hardcoded-transition",
662
+ value: transitionMatch[0],
663
+ suggestion: "Use var(--transition-base) or var(--transition-fast)",
664
+ snippet: line.trim().substring(0, 80),
665
+ });
666
+ }
667
+ // Check hardcoded animations in style objects
668
+ // Skip keyframe animation names - these are CSS @keyframes references
669
+ const animationMatch = line.match(PATTERNS.hardcodedAnimation);
670
+ if (animationMatch &&
671
+ !line.includes("var(--transition-") &&
672
+ !line.includes("var(--ease-")) {
673
+ // Check if this is a keyframe animation name (legitimate)
674
+ const isKeyframeRef = KEYFRAME_ANIMATION_NAMES.some((name) => line.toLowerCase().includes(name.toLowerCase()));
675
+ if (!isKeyframeRef) {
676
+ issues.push({
677
+ file,
678
+ line: index + 1,
679
+ type: "hardcoded-animation",
680
+ value: animationMatch[0],
681
+ suggestion: "Use var(--transition-*) tokens",
682
+ snippet: line.trim().substring(0, 80),
683
+ });
684
+ }
685
+ }
686
+ // Check hardcoded easing (cubic-bezier) in style objects
687
+ const easingMatch = line.match(PATTERNS.hardcodedEasing);
688
+ if (easingMatch && !line.includes("var(--ease-")) {
689
+ issues.push({
690
+ file,
691
+ line: index + 1,
692
+ type: "hardcoded-easing",
693
+ value: easingMatch[0],
694
+ suggestion: "Use var(--ease-in-out) or var(--ease-out)",
695
+ snippet: line.trim().substring(0, 80),
696
+ });
697
+ }
698
+ // NOTE: Tailwind transition classes are NOT flagged
699
+ // transition-all, duration-200, ease-in-out are all valid Tailwind
700
+ });
701
+ }
702
+ return {
703
+ name: "Animation Tokens",
704
+ passed: issues.length === 0,
705
+ issues,
706
+ duration: Date.now() - startTime,
707
+ };
708
+ }
709
+ /**
710
+ * Design Token Check (from design-token-enforcement.js)
711
+ *
712
+ * NOTE: Skips:
713
+ * - "undefinedundefined" values (code bugs, not token issues - should be caught by TypeScript)
714
+ * - Icon sizes (40px, 48px for icons are legitimate)
715
+ */
716
+ async checkDesignTokens() {
717
+ const startTime = Date.now();
718
+ const issues = [];
719
+ const files = await this.getFiles();
720
+ for (const file of files) {
721
+ const content = fs.readFileSync(file, "utf8");
722
+ const lines = content.split("\n");
723
+ lines.forEach((line, index) => {
724
+ if (line.trim().startsWith("//") || line.trim().startsWith("*"))
725
+ return;
726
+ // Check hardcoded borderRadius
727
+ const borderRadiusMatch = line.match(PATTERNS.hardcodedBorderRadius);
728
+ if (borderRadiusMatch) {
729
+ const value = borderRadiusMatch[1];
730
+ if (parseInt(value) > 0) {
731
+ issues.push({
732
+ file,
733
+ line: index + 1,
734
+ type: "hardcoded-border-radius",
735
+ value: `borderRadius: ${value}`,
736
+ suggestion: "Use var(--radius-sm|md|lg|xl)",
737
+ snippet: line.trim().substring(0, 80),
738
+ });
739
+ }
740
+ }
741
+ // Check hardcoded fontSize with units
742
+ const fontSizeMatch = line.match(PATTERNS.hardcodedFontSizeWithUnit);
743
+ if (fontSizeMatch) {
744
+ const sizeValue = `${fontSizeMatch[1]}${fontSizeMatch[2]}`;
745
+ // Skip "undefinedundefined" - that's a code bug, not a token issue
746
+ if (sizeValue.includes("undefined"))
747
+ return;
748
+ // Skip icon sizes (fontSize for icons is legitimate)
749
+ const isIconSize = ICON_SIZES.includes(sizeValue) &&
750
+ (line.toLowerCase().includes("icon") || line.includes("Icon"));
751
+ if (!isIconSize) {
752
+ issues.push({
753
+ file,
754
+ line: index + 1,
755
+ type: "hardcoded-font-size",
756
+ value: `fontSize: "${sizeValue}"`,
757
+ suggestion: "Use Typography component or var(--font-size-*)",
758
+ snippet: line.trim().substring(0, 80),
759
+ });
760
+ }
761
+ }
762
+ // Check hardcoded fontSize without units (from tokenization-check)
763
+ const fontMatches = line.match(PATTERNS.hardcodedFontSize);
764
+ if (fontMatches && !this.isException(line)) {
765
+ // Skip "undefinedundefined" - that's a code bug, not a token issue
766
+ if (line.includes("undefined"))
767
+ return;
768
+ issues.push({
769
+ file,
770
+ line: index + 1,
771
+ type: "hardcoded-font-size",
772
+ value: fontMatches[0],
773
+ suggestion: "Use var(--font-size-*) token",
774
+ snippet: line.trim().substring(0, 80),
775
+ });
776
+ }
777
+ });
778
+ }
779
+ return {
780
+ name: "Design Tokens (borderRadius, fontSize)",
781
+ passed: issues.length === 0,
782
+ issues,
783
+ duration: Date.now() - startTime,
784
+ };
785
+ }
786
+ /**
787
+ * Run all token checks
788
+ */
789
+ async runAll() {
790
+ const startTime = Date.now();
791
+ console.log(`\n${console_chars_1.emoji.palette} CONSOLIDATED UI TOKEN ENFORCEMENT`);
792
+ console.log((0, console_chars_1.createDivider)(80, "heavy"));
793
+ const checks = [];
794
+ console.log(`\n${console_chars_1.emoji.search} Running token checks...\n`);
795
+ checks.push(await this.checkColorTokens());
796
+ checks.push(await this.checkSpacingTokens());
797
+ checks.push(await this.checkShadowTokens());
798
+ checks.push(await this.checkZIndexTokens());
799
+ checks.push(await this.checkAnimationTokens());
800
+ checks.push(await this.checkDesignTokens());
801
+ const totalDuration = Date.now() - startTime;
802
+ const totalIssues = checks.reduce((sum, c) => sum + c.issues.length, 0);
803
+ const passed = totalIssues === 0;
804
+ const summary = {
805
+ total: checks.length,
806
+ passed: checks.filter((c) => c.passed).length,
807
+ failed: checks.filter((c) => !c.passed).length,
808
+ totalIssues,
809
+ };
810
+ this.printResults(checks, totalDuration, summary);
811
+ return {
812
+ module: "ui-tokens",
813
+ passed,
814
+ totalDuration,
815
+ checks,
816
+ summary,
817
+ };
818
+ }
819
+ printResults(checks, totalDuration, summary) {
820
+ console.log("\n" + (0, console_chars_1.createDivider)(80, "heavy"));
821
+ console.log(`${console_chars_1.emoji.chart} UI TOKEN ENFORCEMENT RESULTS`);
822
+ console.log((0, console_chars_1.createDivider)(80, "heavy"));
823
+ checks.forEach((check) => {
824
+ const icon = check.passed ? `${console_chars_1.emoji.success}` : `${console_chars_1.emoji.warning}`;
825
+ const time = `${(check.duration / 1000).toFixed(1)}s`;
826
+ const count = check.issues.length > 0 ? ` (${check.issues.length} issues)` : "";
827
+ console.log(`${icon} ${check.name.padEnd(40)} ${time.padStart(8)}${count}`);
828
+ if (this.verbose && check.issues.length > 0) {
829
+ check.issues.slice(0, 5).forEach((issue) => {
830
+ console.log(` ${console_chars_1.chars.bullet} ${issue.file}:${issue.line} - ${issue.value}`);
831
+ });
832
+ if (check.issues.length > 5) {
833
+ console.log(` ... and ${check.issues.length - 5} more`);
834
+ }
835
+ }
836
+ });
837
+ console.log((0, console_chars_1.createDivider)(80, "heavy"));
838
+ console.log(`Total Checks: ${summary.total}`);
839
+ console.log(`${console_chars_1.emoji.success} Passed: ${summary.passed}`);
840
+ console.log(`${console_chars_1.emoji.warning} With Issues: ${summary.failed}`);
841
+ console.log(`${console_chars_1.emoji.clipboard} Total Issues: ${summary.totalIssues}`);
842
+ console.log(`${console_chars_1.emoji.clock} Total Time: ${(totalDuration / 1000).toFixed(1)}s`);
843
+ console.log((0, console_chars_1.createDivider)(80, "heavy"));
844
+ // Token reference
845
+ console.log(`\n${console_chars_1.emoji.clipboard} Token Reference:`);
846
+ console.log(" Colors: var(--color-{name}), var(--text-{name}), var(--bg-{name})");
847
+ console.log(" Spacing: var(--spacing-1) through var(--spacing-24)");
848
+ console.log(" Shadows: var(--shadow-sm|md|lg|xl)");
849
+ console.log(" Z-Index: var(--z-dropdown|sticky|modal|tooltip)");
850
+ console.log(" Animation: var(--transition-fast|base|slow), var(--ease-*)");
851
+ console.log(" Border Radius: var(--radius-sm|md|lg|xl)");
852
+ console.log(" Font Size: var(--font-size-xs|sm|base|lg|xl|2xl|...)");
853
+ if (summary.totalIssues === 0) {
854
+ console.log(`\n${console_chars_1.emoji.success} UI TOKEN ENFORCEMENT PASSED`);
855
+ }
856
+ else {
857
+ console.log(`\n${console_chars_1.emoji.warning} UI TOKEN ENFORCEMENT: Issues found (non-blocking)`);
858
+ console.log(" New code should use design tokens");
859
+ }
860
+ }
861
+ }
862
+ exports.UITokensPreflightModule = UITokensPreflightModule;
863
+ // CLI INTERFACE
864
+ async function main() {
865
+ const reporter = (0, universal_progress_reporter_1.createUniversalProgressReporter)(path.basename(__filename, ".ts"));
866
+ const args = process.argv.slice(2);
867
+ const mode = args[0] || "all";
868
+ const verbose = args.includes("--verbose") || args.includes("-v");
869
+ const parallel = args.includes("--parallel") || args.includes("-p");
870
+ const module = new UITokensPreflightModule({ verbose, parallel });
871
+ try {
872
+ let result;
873
+ switch (mode) {
874
+ case "colors":
875
+ case "color":
876
+ console.log("Running color token checks only...");
877
+ const colorCheck = await module.checkColorTokens();
878
+ result = {
879
+ module: "ui-tokens:colors",
880
+ passed: colorCheck.passed,
881
+ totalDuration: colorCheck.duration,
882
+ checks: [colorCheck],
883
+ summary: {
884
+ total: 1,
885
+ passed: colorCheck.passed ? 1 : 0,
886
+ failed: colorCheck.passed ? 0 : 1,
887
+ totalIssues: colorCheck.issues.length,
888
+ },
889
+ };
890
+ break;
891
+ case "spacing":
892
+ console.log("Running spacing token checks only...");
893
+ const spacingCheck = await module.checkSpacingTokens();
894
+ result = {
895
+ module: "ui-tokens:spacing",
896
+ passed: spacingCheck.passed,
897
+ totalDuration: spacingCheck.duration,
898
+ checks: [spacingCheck],
899
+ summary: {
900
+ total: 1,
901
+ passed: spacingCheck.passed ? 1 : 0,
902
+ failed: spacingCheck.passed ? 0 : 1,
903
+ totalIssues: spacingCheck.issues.length,
904
+ },
905
+ };
906
+ break;
907
+ case "shadows":
908
+ case "shadow":
909
+ console.log("Running shadow token checks only...");
910
+ const shadowCheck = await module.checkShadowTokens();
911
+ result = {
912
+ module: "ui-tokens:shadows",
913
+ passed: shadowCheck.passed,
914
+ totalDuration: shadowCheck.duration,
915
+ checks: [shadowCheck],
916
+ summary: {
917
+ total: 1,
918
+ passed: shadowCheck.passed ? 1 : 0,
919
+ failed: shadowCheck.passed ? 0 : 1,
920
+ totalIssues: shadowCheck.issues.length,
921
+ },
922
+ };
923
+ break;
924
+ case "zindex":
925
+ case "z-index":
926
+ console.log("Running z-index token checks only...");
927
+ const zindexCheck = await module.checkZIndexTokens();
928
+ result = {
929
+ module: "ui-tokens:zindex",
930
+ passed: zindexCheck.passed,
931
+ totalDuration: zindexCheck.duration,
932
+ checks: [zindexCheck],
933
+ summary: {
934
+ total: 1,
935
+ passed: zindexCheck.passed ? 1 : 0,
936
+ failed: zindexCheck.passed ? 0 : 1,
937
+ totalIssues: zindexCheck.issues.length,
938
+ },
939
+ };
940
+ break;
941
+ case "animation":
942
+ case "animations":
943
+ console.log("Running animation token checks only...");
944
+ const animationCheck = await module.checkAnimationTokens();
945
+ result = {
946
+ module: "ui-tokens:animation",
947
+ passed: animationCheck.passed,
948
+ totalDuration: animationCheck.duration,
949
+ checks: [animationCheck],
950
+ summary: {
951
+ total: 1,
952
+ passed: animationCheck.passed ? 1 : 0,
953
+ failed: animationCheck.passed ? 0 : 1,
954
+ totalIssues: animationCheck.issues.length,
955
+ },
956
+ };
957
+ break;
958
+ case "design":
959
+ console.log("Running design token checks only...");
960
+ const designCheck = await module.checkDesignTokens();
961
+ result = {
962
+ module: "ui-tokens:design",
963
+ passed: designCheck.passed,
964
+ totalDuration: designCheck.duration,
965
+ checks: [designCheck],
966
+ summary: {
967
+ total: 1,
968
+ passed: designCheck.passed ? 1 : 0,
969
+ failed: designCheck.passed ? 0 : 1,
970
+ totalIssues: designCheck.issues.length,
971
+ },
972
+ };
973
+ break;
974
+ case "all":
975
+ default:
976
+ result = await module.runAll();
977
+ break;
978
+ }
979
+ // Non-blocking - always exit 0 for token checks (warnings only)
980
+ process.exit(0);
981
+ }
982
+ catch (error) {
983
+ console.error(`${console_chars_1.emoji.error} Fatal error running UI token preflight:`, error);
984
+ process.exit(1);
985
+ }
986
+ }
987
+ if (require.main === module) {
988
+ main();
989
+ }
990
+ //# sourceMappingURL=ui-tokens.js.map