nuclie 1.0.0

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 (779) hide show
  1. package/LICENSE +21 -0
  2. package/README.md +516 -0
  3. package/dist/ai/analyzer.d.ts +29 -0
  4. package/dist/ai/analyzer.js +202 -0
  5. package/dist/ai/chat/cli.d.ts +3 -0
  6. package/dist/ai/chat/cli.js +38 -0
  7. package/dist/ai/client.d.ts +17 -0
  8. package/dist/ai/client.js +68 -0
  9. package/dist/ai/cloud/api.d.ts +28 -0
  10. package/dist/ai/cloud/api.js +118 -0
  11. package/dist/ai/cloud/modelSync.d.ts +18 -0
  12. package/dist/ai/cloud/modelSync.js +104 -0
  13. package/dist/ai/cloud/telemetry.d.ts +14 -0
  14. package/dist/ai/cloud/telemetry.js +23 -0
  15. package/dist/ai/config.d.ts +14 -0
  16. package/dist/ai/config.js +9 -0
  17. package/dist/ai/core/errorMemory.d.ts +14 -0
  18. package/dist/ai/core/errorMemory.js +36 -0
  19. package/dist/ai/dashboard/cli.d.ts +3 -0
  20. package/dist/ai/dashboard/cli.js +32 -0
  21. package/dist/ai/healer/applier.d.ts +9 -0
  22. package/dist/ai/healer/applier.js +74 -0
  23. package/dist/ai/healer/cli.d.ts +3 -0
  24. package/dist/ai/healer/cli.js +57 -0
  25. package/dist/ai/healer/collector.d.ts +16 -0
  26. package/dist/ai/healer/collector.js +41 -0
  27. package/dist/ai/healer/fixer.d.ts +12 -0
  28. package/dist/ai/healer/fixer.js +40 -0
  29. package/dist/ai/healer/llm.d.ts +9 -0
  30. package/dist/ai/healer/llm.js +20 -0
  31. package/dist/ai/healer/parser.d.ts +16 -0
  32. package/dist/ai/healer/parser.js +67 -0
  33. package/dist/ai/learning/evolver.d.ts +8 -0
  34. package/dist/ai/learning/evolver.js +24 -0
  35. package/dist/ai/llm/fixGenerator.d.ts +9 -0
  36. package/dist/ai/llm/fixGenerator.js +21 -0
  37. package/dist/ai/llm/ollama.d.ts +10 -0
  38. package/dist/ai/llm/ollama.js +56 -0
  39. package/dist/ai/local/fixStore.d.ts +19 -0
  40. package/dist/ai/local/fixStore.js +105 -0
  41. package/dist/ai/optimizer/analyzer.d.ts +9 -0
  42. package/dist/ai/optimizer/analyzer.js +65 -0
  43. package/dist/ai/optimizer/engine.d.ts +16 -0
  44. package/dist/ai/optimizer/engine.js +51 -0
  45. package/dist/ai/optimizer/llm.d.ts +8 -0
  46. package/dist/ai/optimizer/llm.js +14 -0
  47. package/dist/ai/optimizer/profiler.d.ts +11 -0
  48. package/dist/ai/optimizer/profiler.js +111 -0
  49. package/dist/ai/optimizer/rules.d.ts +12 -0
  50. package/dist/ai/optimizer/rules.js +37 -0
  51. package/dist/ai/patterns/common.d.ts +8 -0
  52. package/dist/ai/patterns/common.js +181 -0
  53. package/dist/ai/reporter/assembler.d.ts +11 -0
  54. package/dist/ai/reporter/assembler.js +10 -0
  55. package/dist/ai/reporter/generator.d.ts +4 -0
  56. package/dist/ai/reporter/generator.js +42 -0
  57. package/dist/ai/reporter/narrator.d.ts +8 -0
  58. package/dist/ai/reporter/narrator.js +29 -0
  59. package/dist/ai/schema.d.ts +104 -0
  60. package/dist/ai/schema.js +45 -0
  61. package/dist/ai/telemetry.d.ts +14 -0
  62. package/dist/ai/telemetry.js +96 -0
  63. package/dist/audit/a11y.d.ts +5 -0
  64. package/dist/audit/a11y.js +123 -0
  65. package/dist/audit/best-practices.d.ts +5 -0
  66. package/dist/audit/best-practices.js +68 -0
  67. package/dist/audit/build-integration.d.ts +59 -0
  68. package/dist/audit/build-integration.js +138 -0
  69. package/dist/audit/core.d.ts +62 -0
  70. package/dist/audit/core.js +327 -0
  71. package/dist/audit/index.d.ts +4 -0
  72. package/dist/audit/index.js +60 -0
  73. package/dist/audit/perf.d.ts +5 -0
  74. package/dist/audit/perf.js +69 -0
  75. package/dist/audit/seo.d.ts +5 -0
  76. package/dist/audit/seo.js +63 -0
  77. package/dist/audit/types.d.ts +35 -0
  78. package/dist/audit/types.js +1 -0
  79. package/dist/audit-stub/types.d.ts +25 -0
  80. package/dist/audit-stub/types.js +1 -0
  81. package/dist/build/bundle-stats.d.ts +2 -0
  82. package/dist/build/bundle-stats.js +42 -0
  83. package/dist/build/bundler.d.ts +46 -0
  84. package/dist/build/bundler.js +31 -0
  85. package/dist/build/index.d.ts +36 -0
  86. package/dist/build/index.js +69 -0
  87. package/dist/build/pipeline.d.ts +31 -0
  88. package/dist/build/pipeline.js +68 -0
  89. package/dist/builder/server.d.ts +11 -0
  90. package/dist/builder/server.js +253 -0
  91. package/dist/cache/incremental.d.ts +75 -0
  92. package/dist/cache/incremental.js +200 -0
  93. package/dist/cache/index.d.ts +17 -0
  94. package/dist/cache/index.js +186 -0
  95. package/dist/cache/rocksdb.d.ts +18 -0
  96. package/dist/cache/rocksdb.js +63 -0
  97. package/dist/cli/css-cli.d.ts +5 -0
  98. package/dist/cli/css-cli.js +112 -0
  99. package/dist/cli/inspect.d.ts +1 -0
  100. package/dist/cli/inspect.js +94 -0
  101. package/dist/cli.d.ts +2 -0
  102. package/dist/cli.js +586 -0
  103. package/dist/commands/analyze.d.ts +1 -0
  104. package/dist/commands/analyze.js +295 -0
  105. package/dist/commands/doctor.d.ts +21 -0
  106. package/dist/commands/doctor.js +364 -0
  107. package/dist/commands/ssr.d.ts +12 -0
  108. package/dist/commands/ssr.js +30 -0
  109. package/dist/commands/verify.d.ts +38 -0
  110. package/dist/commands/verify.js +459 -0
  111. package/dist/config/index.d.ts +145 -0
  112. package/dist/config/index.js +227 -0
  113. package/dist/config/live-config.d.ts +22 -0
  114. package/dist/config/live-config.js +88 -0
  115. package/dist/core/__tests__/permissions.test.d.ts +1 -0
  116. package/dist/core/__tests__/permissions.test.js +16 -0
  117. package/dist/core/__tests__/universal-transformer.test.d.ts +1 -0
  118. package/dist/core/__tests__/universal-transformer.test.js +27 -0
  119. package/dist/core/build/globalOptimizer.d.ts +8 -0
  120. package/dist/core/build/globalOptimizer.js +21 -0
  121. package/dist/core/build/incremental.d.ts +13 -0
  122. package/dist/core/build/incremental.js +29 -0
  123. package/dist/core/bundler-rolldown.d.ts +42 -0
  124. package/dist/core/bundler-rolldown.js +100 -0
  125. package/dist/core/cache/lazy-init.d.ts +50 -0
  126. package/dist/core/cache/lazy-init.js +153 -0
  127. package/dist/core/cache-manager.d.ts +51 -0
  128. package/dist/core/cache-manager.js +149 -0
  129. package/dist/core/css/engine.d.ts +37 -0
  130. package/dist/core/css/engine.js +113 -0
  131. package/dist/core/css-framework-detector.d.ts +10 -0
  132. package/dist/core/css-framework-detector.js +169 -0
  133. package/dist/core/detection/files.d.ts +2 -0
  134. package/dist/core/detection/files.js +77 -0
  135. package/dist/core/detection/index.d.ts +8 -0
  136. package/dist/core/detection/index.js +39 -0
  137. package/dist/core/detection/resolver.d.ts +2 -0
  138. package/dist/core/detection/resolver.js +116 -0
  139. package/dist/core/detection/scanner.d.ts +4 -0
  140. package/dist/core/detection/scanner.js +145 -0
  141. package/dist/core/detection/types.d.ts +33 -0
  142. package/dist/core/detection/types.js +12 -0
  143. package/dist/core/engine/cache.d.ts +18 -0
  144. package/dist/core/engine/cache.js +72 -0
  145. package/dist/core/engine/config.d.ts +11 -0
  146. package/dist/core/engine/config.js +158 -0
  147. package/dist/core/engine/emit.d.ts +8 -0
  148. package/dist/core/engine/emit.js +60 -0
  149. package/dist/core/engine/events.d.ts +13 -0
  150. package/dist/core/engine/events.js +35 -0
  151. package/dist/core/engine/execute.d.ts +5 -0
  152. package/dist/core/engine/execute.js +226 -0
  153. package/dist/core/engine/hash.d.ts +8 -0
  154. package/dist/core/engine/hash.js +39 -0
  155. package/dist/core/engine/index.d.ts +49 -0
  156. package/dist/core/engine/index.js +156 -0
  157. package/dist/core/engine/optimize.d.ts +2 -0
  158. package/dist/core/engine/optimize.js +99 -0
  159. package/dist/core/engine/plan.d.ts +9 -0
  160. package/dist/core/engine/plan.js +196 -0
  161. package/dist/core/engine/types.d.ts +120 -0
  162. package/dist/core/engine/types.js +1 -0
  163. package/dist/core/errors/hero-errors.d.ts +57 -0
  164. package/dist/core/errors/hero-errors.js +269 -0
  165. package/dist/core/framework-detector.d.ts +20 -0
  166. package/dist/core/framework-detector.js +148 -0
  167. package/dist/core/graph/js-graph-analyzer.d.ts +51 -0
  168. package/dist/core/graph/js-graph-analyzer.js +178 -0
  169. package/dist/core/graph/serializer.d.ts +7 -0
  170. package/dist/core/graph/serializer.js +24 -0
  171. package/dist/core/interop/analyze.d.ts +8 -0
  172. package/dist/core/interop/analyze.js +82 -0
  173. package/dist/core/interop/analyze_ast.d.ts +9 -0
  174. package/dist/core/interop/analyze_ast.js +174 -0
  175. package/dist/core/interop/index.d.ts +19 -0
  176. package/dist/core/interop/index.js +36 -0
  177. package/dist/core/interop/resolve.d.ts +9 -0
  178. package/dist/core/interop/resolve.js +55 -0
  179. package/dist/core/interop/types.d.ts +28 -0
  180. package/dist/core/interop/types.js +2 -0
  181. package/dist/core/interop/wrapper.d.ts +11 -0
  182. package/dist/core/interop/wrapper.js +50 -0
  183. package/dist/core/parser-bun.d.ts +54 -0
  184. package/dist/core/parser-bun.js +86 -0
  185. package/dist/core/permissions.d.ts +16 -0
  186. package/dist/core/permissions.js +47 -0
  187. package/dist/core/pipeline/framework-pipeline.d.ts +71 -0
  188. package/dist/core/pipeline/framework-pipeline.js +113 -0
  189. package/dist/core/plugins/index.d.ts +5 -0
  190. package/dist/core/plugins/index.js +5 -0
  191. package/dist/core/plugins/manager.d.ts +30 -0
  192. package/dist/core/plugins/manager.js +123 -0
  193. package/dist/core/plugins/sandbox_js.d.ts +9 -0
  194. package/dist/core/plugins/sandbox_js.js +37 -0
  195. package/dist/core/plugins/sandbox_wasm.d.ts +10 -0
  196. package/dist/core/plugins/sandbox_wasm.js +68 -0
  197. package/dist/core/plugins/types.d.ts +37 -0
  198. package/dist/core/plugins/types.js +2 -0
  199. package/dist/core/plugins/validation.d.ts +8 -0
  200. package/dist/core/plugins/validation.js +30 -0
  201. package/dist/core/sandbox.d.ts +9 -0
  202. package/dist/core/sandbox.js +79 -0
  203. package/dist/core/steps/css-optimization.d.ts +65 -0
  204. package/dist/core/steps/css-optimization.js +318 -0
  205. package/dist/core/steps.d.ts +7 -0
  206. package/dist/core/steps.js +17 -0
  207. package/dist/core/transform/batchTransformer.d.ts +12 -0
  208. package/dist/core/transform/batchTransformer.js +24 -0
  209. package/dist/core/transform/transformer.d.ts +9 -0
  210. package/dist/core/transform/transformer.js +189 -0
  211. package/dist/core/universal-transformer.d.ts +81 -0
  212. package/dist/core/universal-transformer.js +780 -0
  213. package/dist/create/index.d.ts +25 -0
  214. package/dist/create/index.js +584 -0
  215. package/dist/create/ui.d.ts +13 -0
  216. package/dist/create/ui.js +218 -0
  217. package/dist/create-nuclie/cli.d.ts +7 -0
  218. package/dist/create-nuclie/cli.js +73 -0
  219. package/dist/create-nuclie/templates.d.ts +18 -0
  220. package/dist/create-nuclie/templates.js +73 -0
  221. package/dist/create-nuclie.d.ts +2 -0
  222. package/dist/create-nuclie.js +7 -0
  223. package/dist/dashboard/metrics.d.ts +31 -0
  224. package/dist/dashboard/metrics.js +59 -0
  225. package/dist/dashboard/server/router.d.ts +52 -0
  226. package/dist/dashboard/server/router.js +36 -0
  227. package/dist/dev/__tests__/preBundler.test.d.ts +1 -0
  228. package/dist/dev/__tests__/preBundler.test.js +51 -0
  229. package/dist/dev/configWatcher.d.ts +10 -0
  230. package/dist/dev/configWatcher.js +42 -0
  231. package/dist/dev/devServer.d.ts +2 -0
  232. package/dist/dev/devServer.js +1398 -0
  233. package/dist/dev/devServer.minimal.d.ts +8 -0
  234. package/dist/dev/devServer.minimal.js +122 -0
  235. package/dist/dev/federation-dev.d.ts +14 -0
  236. package/dist/dev/federation-dev.js +69 -0
  237. package/dist/dev/hmr-engine.d.ts +12 -0
  238. package/dist/dev/hmr-engine.js +66 -0
  239. package/dist/dev/hmr-v2.d.ts +40 -0
  240. package/dist/dev/hmr-v2.js +87 -0
  241. package/dist/dev/hmrThrottle.d.ts +13 -0
  242. package/dist/dev/hmrThrottle.js +56 -0
  243. package/dist/dev/overlay/overlay-client.d.ts +7 -0
  244. package/dist/dev/overlay/overlay-client.js +53 -0
  245. package/dist/dev/overlay/overlay-ui.d.ts +17 -0
  246. package/dist/dev/overlay/overlay-ui.js +133 -0
  247. package/dist/dev/preBundler.d.ts +17 -0
  248. package/dist/dev/preBundler.js +343 -0
  249. package/dist/dev/statusHandler.d.ts +11 -0
  250. package/dist/dev/statusHandler.js +44 -0
  251. package/dist/dev/types.d.ts +30 -0
  252. package/dist/dev/types.js +1 -0
  253. package/dist/dev/watcher.d.ts +11 -0
  254. package/dist/dev/watcher.js +40 -0
  255. package/dist/dev-server-manual.d.ts +5 -0
  256. package/dist/dev-server-manual.js +24 -0
  257. package/dist/dev-server.d.ts +25 -0
  258. package/dist/dev-server.js +255 -0
  259. package/dist/env/api.d.ts +27 -0
  260. package/dist/env/api.js +36 -0
  261. package/dist/fix/ast-transforms.d.ts +81 -0
  262. package/dist/fix/ast-transforms.js +449 -0
  263. package/dist/hmr/classifier.d.ts +51 -0
  264. package/dist/hmr/classifier.js +232 -0
  265. package/dist/hmr/index.d.ts +5 -0
  266. package/dist/hmr/index.js +5 -0
  267. package/dist/hmr/overlay.d.ts +39 -0
  268. package/dist/hmr/overlay.js +285 -0
  269. package/dist/index.d.ts +46 -0
  270. package/dist/index.js +57 -0
  271. package/dist/init/bootstrap.d.ts +1 -0
  272. package/dist/init/bootstrap.js +106 -0
  273. package/dist/init/index.d.ts +1 -0
  274. package/dist/init/index.js +74 -0
  275. package/dist/init/templates.d.ts +2 -0
  276. package/dist/init/templates.js +227 -0
  277. package/dist/main.d.ts +1 -0
  278. package/dist/main.js +3 -0
  279. package/dist/marketplace/client.d.ts +25 -0
  280. package/dist/marketplace/client.js +73 -0
  281. package/dist/marketplace/db.d.ts +24 -0
  282. package/dist/marketplace/db.js +57 -0
  283. package/dist/marketplace/plugin-adapter.d.ts +14 -0
  284. package/dist/marketplace/plugin-adapter.js +85 -0
  285. package/dist/marketplace/server.d.ts +66 -0
  286. package/dist/marketplace/server.js +97 -0
  287. package/dist/meta-frameworks/base-router.d.ts +63 -0
  288. package/dist/meta-frameworks/base-router.js +259 -0
  289. package/dist/meta-frameworks/index.d.ts +8 -0
  290. package/dist/meta-frameworks/index.js +8 -0
  291. package/dist/meta-frameworks/nextjs/router.d.ts +35 -0
  292. package/dist/meta-frameworks/nextjs/router.js +176 -0
  293. package/dist/meta-frameworks/nuxt/router.d.ts +22 -0
  294. package/dist/meta-frameworks/nuxt/router.js +84 -0
  295. package/dist/meta-frameworks/remix/router.d.ts +28 -0
  296. package/dist/meta-frameworks/remix/router.js +136 -0
  297. package/dist/meta-frameworks/ssr/react-renderer.d.ts +24 -0
  298. package/dist/meta-frameworks/ssr/react-renderer.js +53 -0
  299. package/dist/meta-frameworks/ssr/server.d.ts +92 -0
  300. package/dist/meta-frameworks/ssr/server.js +312 -0
  301. package/dist/meta-frameworks/ssr/vue-renderer.d.ts +11 -0
  302. package/dist/meta-frameworks/ssr/vue-renderer.js +35 -0
  303. package/dist/meta-frameworks/types.d.ts +76 -0
  304. package/dist/meta-frameworks/types.js +5 -0
  305. package/dist/migrate/analyzer.d.ts +46 -0
  306. package/dist/migrate/analyzer.js +254 -0
  307. package/dist/migrate/cli.d.ts +10 -0
  308. package/dist/migrate/cli.js +63 -0
  309. package/dist/migrate/generator.d.ts +32 -0
  310. package/dist/migrate/generator.js +214 -0
  311. package/dist/native/cache.d.ts +86 -0
  312. package/dist/native/cache.js +154 -0
  313. package/dist/native/index.d.ts +4 -0
  314. package/dist/native/index.js +56 -0
  315. package/dist/native/orchestrator.d.ts +78 -0
  316. package/dist/native/orchestrator.js +107 -0
  317. package/dist/native/wasm.d.ts +22 -0
  318. package/dist/native/wasm.js +33 -0
  319. package/dist/nuclie_native.node +0 -0
  320. package/dist/plugins/assets.d.ts +2 -0
  321. package/dist/plugins/assets.js +50 -0
  322. package/dist/plugins/compat/adapter.d.ts +33 -0
  323. package/dist/plugins/compat/adapter.js +102 -0
  324. package/dist/plugins/compat/deferred.d.ts +17 -0
  325. package/dist/plugins/compat/deferred.js +28 -0
  326. package/dist/plugins/compat/index.d.ts +11 -0
  327. package/dist/plugins/compat/index.js +11 -0
  328. package/dist/plugins/compat/rollup.d.ts +19 -0
  329. package/dist/plugins/compat/rollup.js +76 -0
  330. package/dist/plugins/compat/tier-a.d.ts +60 -0
  331. package/dist/plugins/compat/tier-a.js +132 -0
  332. package/dist/plugins/compat/tier-b.d.ts +34 -0
  333. package/dist/plugins/compat/tier-b.js +90 -0
  334. package/dist/plugins/compat/tier-c.d.ts +48 -0
  335. package/dist/plugins/compat/tier-c.js +49 -0
  336. package/dist/plugins/compat/webpack.d.ts +26 -0
  337. package/dist/plugins/compat/webpack.js +77 -0
  338. package/dist/plugins/core/linker.d.ts +8 -0
  339. package/dist/plugins/core/linker.js +51 -0
  340. package/dist/plugins/css/bootstrap.d.ts +25 -0
  341. package/dist/plugins/css/bootstrap.js +110 -0
  342. package/dist/plugins/css/bulma.d.ts +23 -0
  343. package/dist/plugins/css/bulma.js +75 -0
  344. package/dist/plugins/css/css-modules.d.ts +19 -0
  345. package/dist/plugins/css/css-modules.js +96 -0
  346. package/dist/plugins/css/css-optimizer.d.ts +43 -0
  347. package/dist/plugins/css/css-optimizer.js +155 -0
  348. package/dist/plugins/css/emotion.d.ts +35 -0
  349. package/dist/plugins/css/emotion.js +109 -0
  350. package/dist/plugins/css/less.d.ts +6 -0
  351. package/dist/plugins/css/less.js +33 -0
  352. package/dist/plugins/css/material.d.ts +24 -0
  353. package/dist/plugins/css/material.js +97 -0
  354. package/dist/plugins/css/postcss.d.ts +2 -0
  355. package/dist/plugins/css/postcss.js +96 -0
  356. package/dist/plugins/css/sass.d.ts +6 -0
  357. package/dist/plugins/css/sass.js +36 -0
  358. package/dist/plugins/css/styled-components.d.ts +33 -0
  359. package/dist/plugins/css/styled-components.js +94 -0
  360. package/dist/plugins/css/stylus.d.ts +6 -0
  361. package/dist/plugins/css/stylus.js +41 -0
  362. package/dist/plugins/css/tailwind.d.ts +9 -0
  363. package/dist/plugins/css/tailwind.js +132 -0
  364. package/dist/plugins/css-in-js.d.ts +10 -0
  365. package/dist/plugins/css-in-js.js +24 -0
  366. package/dist/plugins/edge.d.ts +7 -0
  367. package/dist/plugins/edge.js +38 -0
  368. package/dist/plugins/esbuildAdapter.d.ts +3 -0
  369. package/dist/plugins/esbuildAdapter.js +77 -0
  370. package/dist/plugins/federation_next.d.ts +16 -0
  371. package/dist/plugins/federation_next.js +78 -0
  372. package/dist/plugins/framework-plugins.d.ts +3 -0
  373. package/dist/plugins/framework-plugins.js +40 -0
  374. package/dist/plugins/frameworks/index.d.ts +8 -0
  375. package/dist/plugins/frameworks/index.js +10 -0
  376. package/dist/plugins/frameworks/lit.d.ts +36 -0
  377. package/dist/plugins/frameworks/lit.js +114 -0
  378. package/dist/plugins/frameworks/react.d.ts +38 -0
  379. package/dist/plugins/frameworks/react.js +144 -0
  380. package/dist/plugins/frameworks/solid.d.ts +36 -0
  381. package/dist/plugins/frameworks/solid.js +108 -0
  382. package/dist/plugins/frameworks/svelte.d.ts +43 -0
  383. package/dist/plugins/frameworks/svelte.js +144 -0
  384. package/dist/plugins/frameworks/vue.d.ts +43 -0
  385. package/dist/plugins/frameworks/vue.js +240 -0
  386. package/dist/plugins/governance.d.ts +36 -0
  387. package/dist/plugins/governance.js +50 -0
  388. package/dist/plugins/html.d.ts +2 -0
  389. package/dist/plugins/html.js +49 -0
  390. package/dist/plugins/implementations/analytics.d.ts +7 -0
  391. package/dist/plugins/implementations/analytics.js +15 -0
  392. package/dist/plugins/implementations/apollo.d.ts +7 -0
  393. package/dist/plugins/implementations/apollo.js +15 -0
  394. package/dist/plugins/implementations/audit.d.ts +7 -0
  395. package/dist/plugins/implementations/audit.js +30 -0
  396. package/dist/plugins/implementations/auto-fix.d.ts +7 -0
  397. package/dist/plugins/implementations/auto-fix.js +15 -0
  398. package/dist/plugins/implementations/avif.d.ts +7 -0
  399. package/dist/plugins/implementations/avif.js +27 -0
  400. package/dist/plugins/implementations/babel.d.ts +7 -0
  401. package/dist/plugins/implementations/babel.js +15 -0
  402. package/dist/plugins/implementations/bundle-analyzer.d.ts +7 -0
  403. package/dist/plugins/implementations/bundle-analyzer.js +21 -0
  404. package/dist/plugins/implementations/bundle-size.d.ts +7 -0
  405. package/dist/plugins/implementations/bundle-size.js +21 -0
  406. package/dist/plugins/implementations/checker.d.ts +7 -0
  407. package/dist/plugins/implementations/checker.js +15 -0
  408. package/dist/plugins/implementations/chromatic.d.ts +7 -0
  409. package/dist/plugins/implementations/chromatic.js +15 -0
  410. package/dist/plugins/implementations/cloudflare.d.ts +7 -0
  411. package/dist/plugins/implementations/cloudflare.js +15 -0
  412. package/dist/plugins/implementations/code-split.d.ts +7 -0
  413. package/dist/plugins/implementations/code-split.js +21 -0
  414. package/dist/plugins/implementations/compression.d.ts +7 -0
  415. package/dist/plugins/implementations/compression.js +21 -0
  416. package/dist/plugins/implementations/copy.d.ts +7 -0
  417. package/dist/plugins/implementations/copy.js +15 -0
  418. package/dist/plugins/implementations/critical-css.d.ts +7 -0
  419. package/dist/plugins/implementations/critical-css.js +25 -0
  420. package/dist/plugins/implementations/crypto-sign.d.ts +7 -0
  421. package/dist/plugins/implementations/crypto-sign.js +30 -0
  422. package/dist/plugins/implementations/css-framework.d.ts +7 -0
  423. package/dist/plugins/implementations/css-framework.js +25 -0
  424. package/dist/plugins/implementations/css.d.ts +7 -0
  425. package/dist/plugins/implementations/css.js +25 -0
  426. package/dist/plugins/implementations/cypress.d.ts +7 -0
  427. package/dist/plugins/implementations/cypress.js +15 -0
  428. package/dist/plugins/implementations/determinism.d.ts +7 -0
  429. package/dist/plugins/implementations/determinism.js +21 -0
  430. package/dist/plugins/implementations/edge.d.ts +8 -0
  431. package/dist/plugins/implementations/edge.js +35 -0
  432. package/dist/plugins/implementations/env-validation.d.ts +7 -0
  433. package/dist/plugins/implementations/env-validation.js +30 -0
  434. package/dist/plugins/implementations/eslint.d.ts +7 -0
  435. package/dist/plugins/implementations/eslint.js +15 -0
  436. package/dist/plugins/implementations/federation.d.ts +7 -0
  437. package/dist/plugins/implementations/federation.js +15 -0
  438. package/dist/plugins/implementations/file.d.ts +7 -0
  439. package/dist/plugins/implementations/file.js +27 -0
  440. package/dist/plugins/implementations/font-subset.d.ts +7 -0
  441. package/dist/plugins/implementations/font-subset.js +27 -0
  442. package/dist/plugins/implementations/fonts.d.ts +7 -0
  443. package/dist/plugins/implementations/fonts.js +27 -0
  444. package/dist/plugins/implementations/formatjs.d.ts +7 -0
  445. package/dist/plugins/implementations/formatjs.js +18 -0
  446. package/dist/plugins/implementations/graphql.d.ts +7 -0
  447. package/dist/plugins/implementations/graphql.js +15 -0
  448. package/dist/plugins/implementations/hmr-classify.d.ts +7 -0
  449. package/dist/plugins/implementations/hmr-classify.js +21 -0
  450. package/dist/plugins/implementations/html.d.ts +7 -0
  451. package/dist/plugins/implementations/html.js +15 -0
  452. package/dist/plugins/implementations/i18n.d.ts +7 -0
  453. package/dist/plugins/implementations/i18n.js +15 -0
  454. package/dist/plugins/implementations/icon.d.ts +7 -0
  455. package/dist/plugins/implementations/icon.js +27 -0
  456. package/dist/plugins/implementations/imagemin.d.ts +7 -0
  457. package/dist/plugins/implementations/imagemin.js +27 -0
  458. package/dist/plugins/implementations/inspect.d.ts +7 -0
  459. package/dist/plugins/implementations/inspect.js +15 -0
  460. package/dist/plugins/implementations/jest.d.ts +7 -0
  461. package/dist/plugins/implementations/jest.js +19 -0
  462. package/dist/plugins/implementations/jotai.d.ts +8 -0
  463. package/dist/plugins/implementations/jotai.js +35 -0
  464. package/dist/plugins/implementations/lazy-load.d.ts +7 -0
  465. package/dist/plugins/implementations/lazy-load.js +21 -0
  466. package/dist/plugins/implementations/legacy.d.ts +7 -0
  467. package/dist/plugins/implementations/legacy.js +15 -0
  468. package/dist/plugins/implementations/lighthouse.d.ts +7 -0
  469. package/dist/plugins/implementations/lighthouse.js +21 -0
  470. package/dist/plugins/implementations/manifest.d.ts +7 -0
  471. package/dist/plugins/implementations/manifest.js +15 -0
  472. package/dist/plugins/implementations/markdown.d.ts +7 -0
  473. package/dist/plugins/implementations/markdown.js +15 -0
  474. package/dist/plugins/implementations/md.d.ts +7 -0
  475. package/dist/plugins/implementations/md.js +15 -0
  476. package/dist/plugins/implementations/mdx.d.ts +7 -0
  477. package/dist/plugins/implementations/mdx.js +15 -0
  478. package/dist/plugins/implementations/meta-tags.d.ts +7 -0
  479. package/dist/plugins/implementations/meta-tags.js +15 -0
  480. package/dist/plugins/implementations/mini-css-extract-plugin.d.ts +7 -0
  481. package/dist/plugins/implementations/mini-css-extract-plugin.js +25 -0
  482. package/dist/plugins/implementations/mobx.d.ts +8 -0
  483. package/dist/plugins/implementations/mobx.js +35 -0
  484. package/dist/plugins/implementations/mock.d.ts +7 -0
  485. package/dist/plugins/implementations/mock.js +15 -0
  486. package/dist/plugins/implementations/msw.d.ts +7 -0
  487. package/dist/plugins/implementations/msw.js +19 -0
  488. package/dist/plugins/implementations/nanostores.d.ts +7 -0
  489. package/dist/plugins/implementations/nanostores.js +18 -0
  490. package/dist/plugins/implementations/netlify.d.ts +7 -0
  491. package/dist/plugins/implementations/netlify.js +15 -0
  492. package/dist/plugins/implementations/observability.d.ts +7 -0
  493. package/dist/plugins/implementations/observability.js +15 -0
  494. package/dist/plugins/implementations/og-image.d.ts +7 -0
  495. package/dist/plugins/implementations/og-image.js +15 -0
  496. package/dist/plugins/implementations/pages.d.ts +7 -0
  497. package/dist/plugins/implementations/pages.js +15 -0
  498. package/dist/plugins/implementations/pinia.d.ts +8 -0
  499. package/dist/plugins/implementations/pinia.js +35 -0
  500. package/dist/plugins/implementations/plausible.d.ts +7 -0
  501. package/dist/plugins/implementations/plausible.js +18 -0
  502. package/dist/plugins/implementations/playwright.d.ts +7 -0
  503. package/dist/plugins/implementations/playwright.js +15 -0
  504. package/dist/plugins/implementations/postcss.d.ts +7 -0
  505. package/dist/plugins/implementations/postcss.js +25 -0
  506. package/dist/plugins/implementations/posthog.d.ts +7 -0
  507. package/dist/plugins/implementations/posthog.js +18 -0
  508. package/dist/plugins/implementations/prebundle.d.ts +7 -0
  509. package/dist/plugins/implementations/prebundle.js +21 -0
  510. package/dist/plugins/implementations/prefetch.d.ts +7 -0
  511. package/dist/plugins/implementations/prefetch.js +21 -0
  512. package/dist/plugins/implementations/preload.d.ts +7 -0
  513. package/dist/plugins/implementations/preload.js +21 -0
  514. package/dist/plugins/implementations/prisma.d.ts +7 -0
  515. package/dist/plugins/implementations/prisma.js +15 -0
  516. package/dist/plugins/implementations/pwa.d.ts +7 -0
  517. package/dist/plugins/implementations/pwa.js +15 -0
  518. package/dist/plugins/implementations/qr-code.d.ts +7 -0
  519. package/dist/plugins/implementations/qr-code.js +19 -0
  520. package/dist/plugins/implementations/razorpay.d.ts +7 -0
  521. package/dist/plugins/implementations/razorpay.js +19 -0
  522. package/dist/plugins/implementations/react-i18next.d.ts +7 -0
  523. package/dist/plugins/implementations/react-i18next.js +18 -0
  524. package/dist/plugins/implementations/react-query.d.ts +8 -0
  525. package/dist/plugins/implementations/react-query.js +35 -0
  526. package/dist/plugins/implementations/react.d.ts +8 -0
  527. package/dist/plugins/implementations/react.js +35 -0
  528. package/dist/plugins/implementations/recoil.d.ts +8 -0
  529. package/dist/plugins/implementations/recoil.js +35 -0
  530. package/dist/plugins/implementations/redux.d.ts +8 -0
  531. package/dist/plugins/implementations/redux.js +35 -0
  532. package/dist/plugins/implementations/relay.d.ts +7 -0
  533. package/dist/plugins/implementations/relay.js +15 -0
  534. package/dist/plugins/implementations/repro.d.ts +7 -0
  535. package/dist/plugins/implementations/repro.js +15 -0
  536. package/dist/plugins/implementations/robots.d.ts +7 -0
  537. package/dist/plugins/implementations/robots.js +15 -0
  538. package/dist/plugins/implementations/root-cause.d.ts +7 -0
  539. package/dist/plugins/implementations/root-cause.js +15 -0
  540. package/dist/plugins/implementations/rss.d.ts +7 -0
  541. package/dist/plugins/implementations/rss.js +15 -0
  542. package/dist/plugins/implementations/sass.d.ts +7 -0
  543. package/dist/plugins/implementations/sass.js +25 -0
  544. package/dist/plugins/implementations/sentry.d.ts +7 -0
  545. package/dist/plugins/implementations/sentry.js +15 -0
  546. package/dist/plugins/implementations/sitemap.d.ts +7 -0
  547. package/dist/plugins/implementations/sitemap.js +15 -0
  548. package/dist/plugins/implementations/solid.d.ts +8 -0
  549. package/dist/plugins/implementations/solid.js +35 -0
  550. package/dist/plugins/implementations/sprite.d.ts +7 -0
  551. package/dist/plugins/implementations/sprite.js +27 -0
  552. package/dist/plugins/implementations/ssr.d.ts +8 -0
  553. package/dist/plugins/implementations/ssr.js +35 -0
  554. package/dist/plugins/implementations/storybook.d.ts +7 -0
  555. package/dist/plugins/implementations/storybook.js +15 -0
  556. package/dist/plugins/implementations/stripe.d.ts +7 -0
  557. package/dist/plugins/implementations/stripe.js +19 -0
  558. package/dist/plugins/implementations/style.d.ts +7 -0
  559. package/dist/plugins/implementations/style.js +25 -0
  560. package/dist/plugins/implementations/svelte.d.ts +8 -0
  561. package/dist/plugins/implementations/svelte.js +35 -0
  562. package/dist/plugins/implementations/tailwind.d.ts +7 -0
  563. package/dist/plugins/implementations/tailwind.js +25 -0
  564. package/dist/plugins/implementations/tanstack-query.d.ts +7 -0
  565. package/dist/plugins/implementations/tanstack-query.js +18 -0
  566. package/dist/plugins/implementations/terser.d.ts +7 -0
  567. package/dist/plugins/implementations/terser.js +21 -0
  568. package/dist/plugins/implementations/testing-library-react.d.ts +7 -0
  569. package/dist/plugins/implementations/testing-library-react.js +19 -0
  570. package/dist/plugins/implementations/testing-library.d.ts +7 -0
  571. package/dist/plugins/implementations/testing-library.js +15 -0
  572. package/dist/plugins/implementations/tree-shake.d.ts +7 -0
  573. package/dist/plugins/implementations/tree-shake.js +21 -0
  574. package/dist/plugins/implementations/trpc.d.ts +7 -0
  575. package/dist/plugins/implementations/trpc.js +15 -0
  576. package/dist/plugins/implementations/ts.d.ts +7 -0
  577. package/dist/plugins/implementations/ts.js +15 -0
  578. package/dist/plugins/implementations/typescript.d.ts +7 -0
  579. package/dist/plugins/implementations/typescript.js +15 -0
  580. package/dist/plugins/implementations/unocss.d.ts +7 -0
  581. package/dist/plugins/implementations/unocss.js +25 -0
  582. package/dist/plugins/implementations/upi-payment.d.ts +7 -0
  583. package/dist/plugins/implementations/upi-payment.js +19 -0
  584. package/dist/plugins/implementations/url.d.ts +7 -0
  585. package/dist/plugins/implementations/url.js +27 -0
  586. package/dist/plugins/implementations/vercel.d.ts +7 -0
  587. package/dist/plugins/implementations/vercel.js +15 -0
  588. package/dist/plugins/implementations/visualizer.d.ts +7 -0
  589. package/dist/plugins/implementations/visualizer.js +15 -0
  590. package/dist/plugins/implementations/vite-svg-loader.d.ts +7 -0
  591. package/dist/plugins/implementations/vite-svg-loader.js +27 -0
  592. package/dist/plugins/implementations/vitest.d.ts +7 -0
  593. package/dist/plugins/implementations/vitest.js +15 -0
  594. package/dist/plugins/implementations/vue-i18n-next.d.ts +7 -0
  595. package/dist/plugins/implementations/vue-i18n-next.js +18 -0
  596. package/dist/plugins/implementations/vue-i18n.d.ts +7 -0
  597. package/dist/plugins/implementations/vue-i18n.js +15 -0
  598. package/dist/plugins/implementations/vue-layouts.d.ts +8 -0
  599. package/dist/plugins/implementations/vue-layouts.js +35 -0
  600. package/dist/plugins/implementations/vue.d.ts +8 -0
  601. package/dist/plugins/implementations/vue.js +35 -0
  602. package/dist/plugins/implementations/vuex.d.ts +8 -0
  603. package/dist/plugins/implementations/vuex.js +35 -0
  604. package/dist/plugins/implementations/wasm-sandbox.d.ts +7 -0
  605. package/dist/plugins/implementations/wasm-sandbox.js +30 -0
  606. package/dist/plugins/implementations/webp.d.ts +7 -0
  607. package/dist/plugins/implementations/webp.js +27 -0
  608. package/dist/plugins/implementations/windicss.d.ts +7 -0
  609. package/dist/plugins/implementations/windicss.js +25 -0
  610. package/dist/plugins/implementations/workbox.d.ts +7 -0
  611. package/dist/plugins/implementations/workbox.js +15 -0
  612. package/dist/plugins/implementations/xstate.d.ts +7 -0
  613. package/dist/plugins/implementations/xstate.js +18 -0
  614. package/dist/plugins/implementations/zod.d.ts +7 -0
  615. package/dist/plugins/implementations/zod.js +15 -0
  616. package/dist/plugins/implementations/zustand-devtools.d.ts +7 -0
  617. package/dist/plugins/implementations/zustand-devtools.js +18 -0
  618. package/dist/plugins/implementations/zustand.d.ts +8 -0
  619. package/dist/plugins/implementations/zustand.js +35 -0
  620. package/dist/plugins/index.d.ts +49 -0
  621. package/dist/plugins/index.js +117 -0
  622. package/dist/plugins/js-transform.d.ts +2 -0
  623. package/dist/plugins/js-transform.js +49 -0
  624. package/dist/plugins/json.d.ts +2 -0
  625. package/dist/plugins/json.js +34 -0
  626. package/dist/plugins/pluginWorker.mjs +95 -0
  627. package/dist/plugins/ported/adapter.d.ts +92 -0
  628. package/dist/plugins/ported/adapter.js +226 -0
  629. package/dist/plugins/registry.d.ts +51 -0
  630. package/dist/plugins/registry.js +151 -0
  631. package/dist/plugins/reporter.d.ts +5 -0
  632. package/dist/plugins/reporter.js +47 -0
  633. package/dist/plugins/samplePlugin.mjs +4 -0
  634. package/dist/plugins/sandbox.d.ts +12 -0
  635. package/dist/plugins/sandbox.js +126 -0
  636. package/dist/plugins/signer.d.ts +53 -0
  637. package/dist/plugins/signer.js +109 -0
  638. package/dist/plugins/static.d.ts +2 -0
  639. package/dist/plugins/static.js +47 -0
  640. package/dist/plugins/svelte.d.ts +7 -0
  641. package/dist/plugins/svelte.js +27 -0
  642. package/dist/plugins/testSandbox.d.ts +1 -0
  643. package/dist/plugins/testSandbox.js +14 -0
  644. package/dist/plugins/verify.d.ts +3 -0
  645. package/dist/plugins/verify.js +113 -0
  646. package/dist/plugins/vue.d.ts +7 -0
  647. package/dist/plugins/vue.js +86 -0
  648. package/dist/plugins/wasm-runtime.d.ts +15 -0
  649. package/dist/plugins/wasm-runtime.js +33 -0
  650. package/dist/plugins/wasm.d.ts +5 -0
  651. package/dist/plugins/wasm.js +44 -0
  652. package/dist/polyfills/corejs.d.ts +9 -0
  653. package/dist/polyfills/corejs.js +18 -0
  654. package/dist/presets/core.d.ts +111 -0
  655. package/dist/presets/core.js +239 -0
  656. package/dist/presets/frameworks.d.ts +34 -0
  657. package/dist/presets/frameworks.js +270 -0
  658. package/dist/presets/index.d.ts +8 -0
  659. package/dist/presets/index.js +3 -0
  660. package/dist/presets/infrastructure.d.ts +2 -0
  661. package/dist/presets/infrastructure.js +33 -0
  662. package/dist/presets/spa.d.ts +2 -0
  663. package/dist/presets/spa.js +15 -0
  664. package/dist/presets/ssg.d.ts +2 -0
  665. package/dist/presets/ssg.js +9 -0
  666. package/dist/presets/ssr.d.ts +2 -0
  667. package/dist/presets/ssr.js +13 -0
  668. package/dist/repro/dashboard.d.ts +83 -0
  669. package/dist/repro/dashboard.js +251 -0
  670. package/dist/repro/github.d.ts +26 -0
  671. package/dist/repro/github.js +73 -0
  672. package/dist/resolve/css-precedence.d.ts +16 -0
  673. package/dist/resolve/css-precedence.js +56 -0
  674. package/dist/resolve/graph.d.ts +48 -0
  675. package/dist/resolve/graph.js +232 -0
  676. package/dist/resolve/utils.d.ts +13 -0
  677. package/dist/resolve/utils.js +53 -0
  678. package/dist/runtime/client.d.ts +9 -0
  679. package/dist/runtime/client.js +218 -0
  680. package/dist/runtime/error-overlay.d.ts +15 -0
  681. package/dist/runtime/error-overlay.js +327 -0
  682. package/dist/runtime/federation-fallback.d.ts +67 -0
  683. package/dist/runtime/federation-fallback.js +225 -0
  684. package/dist/runtime/federation.d.ts +27 -0
  685. package/dist/runtime/federation.js +210 -0
  686. package/dist/runtime/federation_runtime.js +90 -0
  687. package/dist/runtime/hmr-client.d.ts +5 -0
  688. package/dist/runtime/hmr-client.js +70 -0
  689. package/dist/security/anomaly.d.ts +41 -0
  690. package/dist/security/anomaly.js +77 -0
  691. package/dist/server/security-headers.d.ts +37 -0
  692. package/dist/server/security-headers.js +110 -0
  693. package/dist/ssr/adapters/edge.d.ts +12 -0
  694. package/dist/ssr/adapters/edge.js +26 -0
  695. package/dist/ssr/adapters/index.d.ts +23 -0
  696. package/dist/ssr/adapters/index.js +58 -0
  697. package/dist/ssr/app-router.d.ts +24 -0
  698. package/dist/ssr/app-router.js +70 -0
  699. package/dist/ssr/edge/handlers.d.ts +24 -0
  700. package/dist/ssr/edge/handlers.js +48 -0
  701. package/dist/ssr/image.d.ts +24 -0
  702. package/dist/ssr/image.js +38 -0
  703. package/dist/ssr/isr.d.ts +14 -0
  704. package/dist/ssr/isr.js +29 -0
  705. package/dist/ssr/rsc.d.ts +19 -0
  706. package/dist/ssr/rsc.js +33 -0
  707. package/dist/ssr/streaming.d.ts +31 -0
  708. package/dist/ssr/streaming.js +78 -0
  709. package/dist/ssr/universal-engine.d.ts +36 -0
  710. package/dist/ssr/universal-engine.js +139 -0
  711. package/dist/templates/manager.d.ts +28 -0
  712. package/dist/templates/manager.js +162 -0
  713. package/dist/templates/starters/angular-spa.d.ts +6 -0
  714. package/dist/templates/starters/angular-spa.js +149 -0
  715. package/dist/templates/starters/edge.d.ts +6 -0
  716. package/dist/templates/starters/edge.js +93 -0
  717. package/dist/templates/starters/fintech.d.ts +6 -0
  718. package/dist/templates/starters/fintech.js +211 -0
  719. package/dist/templates/starters/monorepo.d.ts +6 -0
  720. package/dist/templates/starters/monorepo.js +133 -0
  721. package/dist/templates/starters/nextjs-app.d.ts +13 -0
  722. package/dist/templates/starters/nextjs-app.js +116 -0
  723. package/dist/templates/starters/preact-spa.d.ts +6 -0
  724. package/dist/templates/starters/preact-spa.js +97 -0
  725. package/dist/templates/starters/premium-dashboard.d.ts +6 -0
  726. package/dist/templates/starters/premium-dashboard.js +762 -0
  727. package/dist/templates/starters/react-spa.d.ts +6 -0
  728. package/dist/templates/starters/react-spa.js +152 -0
  729. package/dist/templates/starters/react-ssr.d.ts +6 -0
  730. package/dist/templates/starters/react-ssr.js +190 -0
  731. package/dist/templates/starters/remix-app.d.ts +12 -0
  732. package/dist/templates/starters/remix-app.js +108 -0
  733. package/dist/templates/starters/solid-spa.d.ts +6 -0
  734. package/dist/templates/starters/solid-spa.js +158 -0
  735. package/dist/templates/starters/svelte-spa.d.ts +6 -0
  736. package/dist/templates/starters/svelte-spa.js +147 -0
  737. package/dist/templates/starters/vue-spa.d.ts +6 -0
  738. package/dist/templates/starters/vue-spa.js +136 -0
  739. package/dist/test/api.d.ts +58 -0
  740. package/dist/test/api.js +154 -0
  741. package/dist/test/coverage.d.ts +1 -0
  742. package/dist/test/coverage.js +134 -0
  743. package/dist/test/determinism.d.ts +1 -0
  744. package/dist/test/determinism.js +122 -0
  745. package/dist/test/regression.d.ts +1 -0
  746. package/dist/test/regression.js +30 -0
  747. package/dist/test/runner.d.ts +1 -0
  748. package/dist/test/runner.js +159 -0
  749. package/dist/test-server.d.ts +1 -0
  750. package/dist/test-server.js +22 -0
  751. package/dist/ui/terminal-warnings.d.ts +10 -0
  752. package/dist/ui/terminal-warnings.js +26 -0
  753. package/dist/ui/types.d.ts +13 -0
  754. package/dist/ui/types.js +5 -0
  755. package/dist/ui/warning-detector.d.ts +46 -0
  756. package/dist/ui/warning-detector.js +178 -0
  757. package/dist/ui/warning-library.d.ts +51 -0
  758. package/dist/ui/warning-library.js +283 -0
  759. package/dist/utils/interactive.d.ts +2 -0
  760. package/dist/utils/interactive.js +37 -0
  761. package/dist/utils/logger.d.ts +26 -0
  762. package/dist/utils/logger.js +130 -0
  763. package/dist/utils/path-normalize.d.ts +24 -0
  764. package/dist/utils/path-normalize.js +37 -0
  765. package/dist/visual/chart-generator.d.ts +11 -0
  766. package/dist/visual/chart-generator.js +30 -0
  767. package/dist/visual/client/renderer.d.ts +31 -0
  768. package/dist/visual/client/renderer.js +98 -0
  769. package/dist/visual/federation-editor.d.ts +1 -0
  770. package/dist/visual/federation-editor.js +231 -0
  771. package/dist/visual/graph-engine.d.ts +38 -0
  772. package/dist/visual/graph-engine.js +64 -0
  773. package/dist/visual/graph-ui.d.ts +2 -0
  774. package/dist/visual/graph-ui.js +119 -0
  775. package/dist/visual/graph-visualizer.d.ts +69 -0
  776. package/dist/visual/graph-visualizer.js +282 -0
  777. package/dist/visual/root-cause.d.ts +83 -0
  778. package/dist/visual/root-cause.js +265 -0
  779. package/package.json +169 -0
@@ -0,0 +1,51 @@
1
+ import { canonicalHash } from '../../core/engine/hash.js';
2
+ /**
3
+ * Internal Linker Plugin
4
+ *
5
+ * Rewrites import/require specifiers using the DependencyGraph's specifierMap.
6
+ * This runs after all other transformations to ensure final code uses Nuclie module IDs.
7
+ */
8
+ export function createLinkerPlugin() {
9
+ return {
10
+ manifest: {
11
+ name: 'nuclie:linker',
12
+ version: '1.0.0',
13
+ engineVersion: '1.0.0',
14
+ type: 'js',
15
+ hooks: ['transformModule'],
16
+ permissions: { fs: 'none' }
17
+ },
18
+ id: canonicalHash('nuclie:linker'),
19
+ async runHook(hook, input, context) {
20
+ if (hook !== 'transformModule')
21
+ return input;
22
+ // We need the graph to do linking
23
+ const graph = context?.graph;
24
+ if (!graph)
25
+ return input;
26
+ // Find the node for this file
27
+ // Note: input.path is absolute
28
+ const node = Array.from(graph.nodes.values()).find((n) => n.path === input.path);
29
+ if (!node || !node.specifierMap)
30
+ return input;
31
+ let code = input.code;
32
+ // Basic speculative replacement for performance
33
+ // In a production world, we'd use a proper AST walker or a regex that guards against comments
34
+ // For now, let's use a regex that matches require("specifier") or from "specifier"
35
+ for (const [specifier, targetId] of Object.entries(node.specifierMap)) {
36
+ // Escape regex special chars
37
+ const escaped = specifier.replace(/[.*+?^${}()|[\]\\]/g, '\\$&');
38
+ // Replace in require()
39
+ const requireRegex = new RegExp(`require\\s*\\(\\s*['"]${escaped}['"]\\s*\\)`, 'g');
40
+ code = code.replace(requireRegex, `require(${JSON.stringify(targetId)})`);
41
+ // Replace in import ... from "..."
42
+ const importRegex = new RegExp(`from\\s*['"]${escaped}['"]`, 'g');
43
+ code = code.replace(importRegex, `from ${JSON.stringify(targetId)}`);
44
+ // Replace in import("...")
45
+ const dynamicImportRegex = new RegExp(`import\\s*\\(\\s*['"]${escaped}['"]\\s*\\)`, 'g');
46
+ code = code.replace(dynamicImportRegex, `import(${JSON.stringify(targetId)})`);
47
+ }
48
+ return { ...input, code };
49
+ }
50
+ };
51
+ }
@@ -0,0 +1,25 @@
1
+ import { Plugin } from 'esbuild';
2
+ export interface BootstrapConfig {
3
+ version?: string;
4
+ useCDN?: boolean;
5
+ includeIcons?: boolean;
6
+ autoprefixer?: boolean;
7
+ purgeUnused?: boolean;
8
+ }
9
+ /**
10
+ * Bootstrap Plugin for esbuild
11
+ * Supports CDN injection, local node_modules, autoprefixer, and SCSS purge
12
+ */
13
+ export declare function bootstrapPlugin(config?: BootstrapConfig): Plugin;
14
+ /**
15
+ * Inject Bootstrap CDN links into HTML
16
+ */
17
+ export declare function injectBootstrapCDN(html: string, config?: BootstrapConfig): string;
18
+ /**
19
+ * Auto-detect Bootstrap usage in project
20
+ */
21
+ export declare function detectBootstrapUsage(root: string): Promise<boolean>;
22
+ /**
23
+ * Get Bootstrap configuration from project
24
+ */
25
+ export declare function getBootstrapConfig(root: string): Promise<BootstrapConfig>;
@@ -0,0 +1,110 @@
1
+ import fs from 'fs/promises';
2
+ import path from 'path';
3
+ /**
4
+ * Bootstrap Plugin for esbuild
5
+ * Supports CDN injection, local node_modules, autoprefixer, and SCSS purge
6
+ */
7
+ export function bootstrapPlugin(config = {}) {
8
+ const { version = '5.3.2', useCDN = false, includeIcons = true, autoprefixer = true, purgeUnused = false } = config;
9
+ return {
10
+ name: 'bootstrap-plugin',
11
+ setup(build) {
12
+ // Intercept Bootstrap CSS imports
13
+ build.onResolve({ filter: /^bootstrap\/dist\/css\/bootstrap/ }, args => {
14
+ if (useCDN) {
15
+ // Return external for CDN usage
16
+ return { path: args.path, external: true };
17
+ }
18
+ // Resolve to local node_modules
19
+ return {
20
+ path: require.resolve('bootstrap/dist/css/bootstrap.min.css', {
21
+ paths: [args.resolveDir]
22
+ })
23
+ };
24
+ });
25
+ // Intercept Bootstrap Icons imports
26
+ if (includeIcons) {
27
+ build.onResolve({ filter: /^bootstrap-icons/ }, args => {
28
+ if (useCDN) {
29
+ return { path: args.path, external: true };
30
+ }
31
+ return {
32
+ path: require.resolve('bootstrap-icons/font/bootstrap-icons.css', {
33
+ paths: [args.resolveDir]
34
+ })
35
+ };
36
+ });
37
+ }
38
+ // Intercept Bootstrap JS imports
39
+ build.onResolve({ filter: /^bootstrap$/ }, args => {
40
+ return {
41
+ path: require.resolve('bootstrap/dist/js/bootstrap.bundle.min.js', {
42
+ paths: [args.resolveDir]
43
+ })
44
+ };
45
+ });
46
+ // Handle SCSS imports
47
+ build.onResolve({ filter: /^bootstrap\/scss/ }, args => {
48
+ return {
49
+ path: require.resolve(args.path.replace('bootstrap/scss', 'bootstrap/scss'), {
50
+ paths: [args.resolveDir]
51
+ })
52
+ };
53
+ });
54
+ }
55
+ };
56
+ }
57
+ /**
58
+ * Inject Bootstrap CDN links into HTML
59
+ */
60
+ export function injectBootstrapCDN(html, config = {}) {
61
+ const { version = '5.3.2', includeIcons = true } = config;
62
+ const cdnLinks = `
63
+ <!-- Bootstrap CSS -->
64
+ <link href="https://cdn.jsdelivr.net/npm/bootstrap@${version}/dist/css/bootstrap.min.css" rel="stylesheet" integrity="sha384-T3c6CoIi6uLrA9TneNEoa7RxnatzjcDSCmG1MXxSR1GAsXEV/Dwwykc2MPK8M2HN" crossorigin="anonymous">
65
+ ${includeIcons ? `<!-- Bootstrap Icons -->
66
+ <link rel="stylesheet" href="https://cdn.jsdelivr.net/npm/bootstrap-icons@1.11.1/font/bootstrap-icons.css">` : ''}
67
+ `;
68
+ const jsLink = `
69
+ <!-- Bootstrap JS -->
70
+ <script src="https://cdn.jsdelivr.net/npm/bootstrap@${version}/dist/js/bootstrap.bundle.min.js" integrity="sha384-C6RzsynM9kWDrMNeT87bh95OGNyZPhcTNXj1NW7RuBCsyN/o0jlpcV8Qyq46cDfL" crossorigin="anonymous"></script>
71
+ `;
72
+ // Inject CSS in <head>
73
+ html = html.replace('</head>', `${cdnLinks}\n </head>`);
74
+ // Inject JS before </body>
75
+ html = html.replace('</body>', `${jsLink}\n </body>`);
76
+ return html;
77
+ }
78
+ /**
79
+ * Auto-detect Bootstrap usage in project
80
+ */
81
+ export async function detectBootstrapUsage(root) {
82
+ try {
83
+ const pkgPath = path.join(root, 'package.json');
84
+ const content = await fs.readFile(pkgPath, 'utf-8');
85
+ const pkg = JSON.parse(content);
86
+ const deps = { ...pkg.dependencies, ...pkg.devDependencies };
87
+ return !!(deps['bootstrap'] || deps['bootstrap-icons']);
88
+ }
89
+ catch {
90
+ return false;
91
+ }
92
+ }
93
+ /**
94
+ * Get Bootstrap configuration from project
95
+ */
96
+ export async function getBootstrapConfig(root) {
97
+ const hasBootstrap = await detectBootstrapUsage(root);
98
+ if (!hasBootstrap) {
99
+ return { useCDN: true }; // Default to CDN if not installed
100
+ }
101
+ // Check if node_modules/bootstrap exists
102
+ const localPath = path.join(root, 'node_modules', 'bootstrap');
103
+ const hasLocal = await fs.access(localPath).then(() => true).catch(() => false);
104
+ return {
105
+ useCDN: !hasLocal,
106
+ includeIcons: true,
107
+ autoprefixer: true,
108
+ purgeUnused: false
109
+ };
110
+ }
@@ -0,0 +1,23 @@
1
+ import { Plugin } from 'esbuild';
2
+ export interface BulmaConfig {
3
+ version?: string;
4
+ useCDN?: boolean;
5
+ includeExtensions?: boolean;
6
+ }
7
+ /**
8
+ * Bulma Plugin for esbuild
9
+ * Supports CDN injection and local node_modules
10
+ */
11
+ export declare function bulmaPlugin(config?: BulmaConfig): Plugin;
12
+ /**
13
+ * Inject Bulma CDN link into HTML
14
+ */
15
+ export declare function injectBulmaCDN(html: string, config?: BulmaConfig): string;
16
+ /**
17
+ * Auto-detect Bulma usage in project
18
+ */
19
+ export declare function detectBulmaUsage(root: string): Promise<boolean>;
20
+ /**
21
+ * Get Bulma configuration from project
22
+ */
23
+ export declare function getBulmaConfig(root: string): Promise<BulmaConfig>;
@@ -0,0 +1,75 @@
1
+ import fs from 'fs/promises';
2
+ import path from 'path';
3
+ /**
4
+ * Bulma Plugin for esbuild
5
+ * Supports CDN injection and local node_modules
6
+ */
7
+ export function bulmaPlugin(config = {}) {
8
+ const { version = '0.9.4', useCDN = false, includeExtensions = false } = config;
9
+ return {
10
+ name: 'bulma-plugin',
11
+ setup(build) {
12
+ // Intercept Bulma CSS imports
13
+ build.onResolve({ filter: /^bulma\/css\/bulma/ }, args => {
14
+ if (useCDN) {
15
+ return { path: args.path, external: true };
16
+ }
17
+ return {
18
+ path: require.resolve('bulma/css/bulma.min.css', {
19
+ paths: [args.resolveDir]
20
+ })
21
+ };
22
+ });
23
+ // Handle SASS imports
24
+ build.onResolve({ filter: /^bulma$/ }, args => {
25
+ return {
26
+ path: require.resolve('bulma/bulma.sass', {
27
+ paths: [args.resolveDir]
28
+ })
29
+ };
30
+ });
31
+ }
32
+ };
33
+ }
34
+ /**
35
+ * Inject Bulma CDN link into HTML
36
+ */
37
+ export function injectBulmaCDN(html, config = {}) {
38
+ const { version = '0.9.4' } = config;
39
+ const cdnLink = `
40
+ <!-- Bulma CSS -->
41
+ <link rel="stylesheet" href="https://cdn.jsdelivr.net/npm/bulma@${version}/css/bulma.min.css">
42
+ `;
43
+ // Inject CSS in <head>
44
+ return html.replace('</head>', `${cdnLink}\n </head>`);
45
+ }
46
+ /**
47
+ * Auto-detect Bulma usage in project
48
+ */
49
+ export async function detectBulmaUsage(root) {
50
+ try {
51
+ const pkgPath = path.join(root, 'package.json');
52
+ const content = await fs.readFile(pkgPath, 'utf-8');
53
+ const pkg = JSON.parse(content);
54
+ const deps = { ...pkg.dependencies, ...pkg.devDependencies };
55
+ return !!deps['bulma'];
56
+ }
57
+ catch {
58
+ return false;
59
+ }
60
+ }
61
+ /**
62
+ * Get Bulma configuration from project
63
+ */
64
+ export async function getBulmaConfig(root) {
65
+ const hasBulma = await detectBulmaUsage(root);
66
+ if (!hasBulma) {
67
+ return { useCDN: true };
68
+ }
69
+ const localPath = path.join(root, 'node_modules', 'bulma');
70
+ const hasLocal = await fs.access(localPath).then(() => true).catch(() => false);
71
+ return {
72
+ useCDN: !hasLocal,
73
+ includeExtensions: false
74
+ };
75
+ }
@@ -0,0 +1,19 @@
1
+ import { Plugin } from 'esbuild';
2
+ export interface CSSModulesConfig {
3
+ generateScopedName?: string;
4
+ exportGlobals?: boolean;
5
+ generateTypings?: boolean;
6
+ }
7
+ /**
8
+ * CSS Modules Plugin for esbuild
9
+ * Transforms CSS files into scoped modules
10
+ */
11
+ export declare function cssModulesPlugin(config?: CSSModulesConfig): Plugin;
12
+ /**
13
+ * Auto-detect CSS Modules usage
14
+ */
15
+ export declare function detectCSSModules(root: string): Promise<boolean>;
16
+ /**
17
+ * Get CSS Modules configuration
18
+ */
19
+ export declare function getCSSModulesConfig(root: string): Promise<CSSModulesConfig>;
@@ -0,0 +1,96 @@
1
+ import fs from 'fs/promises';
2
+ import path from 'path';
3
+ import crypto from 'crypto';
4
+ /**
5
+ * CSS Modules Plugin for esbuild
6
+ * Transforms CSS files into scoped modules
7
+ */
8
+ export function cssModulesPlugin(config = {}) {
9
+ const { generateScopedName = '[name]__[local]___[hash:base64:5]', exportGlobals = false, generateTypings = true } = config;
10
+ return {
11
+ name: 'css-modules-plugin',
12
+ setup(build) {
13
+ // Intercept .module.css files
14
+ build.onLoad({ filter: /\.module\.css$/ }, async (args) => {
15
+ const source = await fs.readFile(args.path, 'utf-8');
16
+ // Simple CSS Modules transformation
17
+ const classNames = {};
18
+ const cssLines = [];
19
+ // Parse CSS and generate scoped names
20
+ const classRegex = /\.([a-zA-Z_-][a-zA-Z0-9_-]*)/g;
21
+ let match;
22
+ while ((match = classRegex.exec(source)) !== null) {
23
+ const originalName = match[1];
24
+ if (!classNames[originalName]) {
25
+ const hash = crypto.createHash('md5')
26
+ .update(args.path + originalName)
27
+ .digest('base64')
28
+ .substring(0, 5)
29
+ .replace(/[+/=]/g, '_');
30
+ const fileName = path.basename(args.path, '.module.css');
31
+ classNames[originalName] = `${fileName}__${originalName}___${hash}`;
32
+ }
33
+ }
34
+ // Replace class names in CSS
35
+ let transformedCSS = source;
36
+ for (const [original, scoped] of Object.entries(classNames)) {
37
+ transformedCSS = transformedCSS.replace(new RegExp(`\\.${original}\\b`, 'g'), `.${scoped}`);
38
+ }
39
+ // Generate TypeScript declarations if enabled
40
+ if (generateTypings) {
41
+ const dtsPath = args.path + '.d.ts';
42
+ const dtsContent = `declare const styles: {\n${Object.keys(classNames).map(name => ` ${name}: string;`).join('\n')}\n};\nexport default styles;\n`;
43
+ await fs.writeFile(dtsPath, dtsContent);
44
+ }
45
+ // Return JavaScript module that exports class names
46
+ const jsContent = `
47
+ const styles = ${JSON.stringify(classNames)};
48
+
49
+ // Inject CSS
50
+ if (typeof document !== 'undefined') {
51
+ const style = document.createElement('style');
52
+ style.textContent = ${JSON.stringify(transformedCSS)};
53
+ document.head.appendChild(style);
54
+ }
55
+
56
+ export default styles;
57
+ `;
58
+ return {
59
+ contents: jsContent,
60
+ loader: 'js'
61
+ };
62
+ });
63
+ }
64
+ };
65
+ }
66
+ /**
67
+ * Auto-detect CSS Modules usage
68
+ */
69
+ export async function detectCSSModules(root) {
70
+ try {
71
+ // Check for .module.css files
72
+ const srcPath = path.join(root, 'src');
73
+ const srcExists = await fs.access(srcPath).then(() => true).catch(() => false);
74
+ if (!srcExists)
75
+ return false;
76
+ const files = await fs.readdir(srcPath, { recursive: true });
77
+ return files.some((file) => typeof file === 'string' && file.endsWith('.module.css'));
78
+ }
79
+ catch {
80
+ return false;
81
+ }
82
+ }
83
+ /**
84
+ * Get CSS Modules configuration
85
+ */
86
+ export async function getCSSModulesConfig(root) {
87
+ const hasModules = await detectCSSModules(root);
88
+ if (!hasModules) {
89
+ return {};
90
+ }
91
+ return {
92
+ generateScopedName: '[name]__[local]___[hash:base64:5]',
93
+ exportGlobals: false,
94
+ generateTypings: true
95
+ };
96
+ }
@@ -0,0 +1,43 @@
1
+ export interface CSSOptimizationConfig {
2
+ splitCritical?: boolean;
3
+ criticalThreshold?: number;
4
+ purgeUnused?: boolean;
5
+ framework?: 'tailwind' | 'bootstrap' | 'bulma' | 'material' | 'none';
6
+ }
7
+ /**
8
+ * Split CSS into critical (above-fold) and async (below-fold)
9
+ */
10
+ export declare function splitCSSBundle(css: string, config?: CSSOptimizationConfig): Promise<{
11
+ critical: string;
12
+ async: string;
13
+ }>;
14
+ /**
15
+ * Framework-aware CSS purging
16
+ * Removes unused CSS classes based on framework patterns
17
+ */
18
+ export declare function purgeUnusedCSS(css: string, usedClasses: Set<string>, config?: CSSOptimizationConfig): Promise<string>;
19
+ /**
20
+ * Compose source maps across preprocessors
21
+ */
22
+ export interface SourceMapComposition {
23
+ version: number;
24
+ sources: string[];
25
+ mappings: string;
26
+ names: string[];
27
+ }
28
+ export declare function composeSourceMaps(maps: SourceMapComposition[]): Promise<SourceMapComposition>;
29
+ /**
30
+ * Extract critical CSS for above-the-fold content
31
+ */
32
+ export declare function extractCriticalCSS(html: string, css: string): Promise<string>;
33
+ /**
34
+ * Analyze CSS bundle and provide optimization suggestions
35
+ */
36
+ export interface CSSAnalysis {
37
+ totalSize: number;
38
+ ruleCount: number;
39
+ unusedRules: number;
40
+ duplicateRules: number;
41
+ suggestions: string[];
42
+ }
43
+ export declare function analyzeCSS(css: string, usedClasses: Set<string>): Promise<CSSAnalysis>;
@@ -0,0 +1,155 @@
1
+ import { log } from '../../utils/logger.js';
2
+ /**
3
+ * Split CSS into critical (above-fold) and async (below-fold)
4
+ */
5
+ export async function splitCSSBundle(css, config = {}) {
6
+ const { criticalThreshold = 14000 } = config; // 14KB default
7
+ // Simple heuristic: first N bytes are critical
8
+ if (css.length <= criticalThreshold) {
9
+ return { critical: css, async: '' };
10
+ }
11
+ // Split at a rule boundary
12
+ const rules = css.split('}');
13
+ let critical = '';
14
+ let async = '';
15
+ let currentSize = 0;
16
+ for (const rule of rules) {
17
+ const ruleWithBrace = rule + '}';
18
+ if (currentSize + ruleWithBrace.length <= criticalThreshold) {
19
+ critical += ruleWithBrace;
20
+ currentSize += ruleWithBrace.length;
21
+ }
22
+ else {
23
+ async += ruleWithBrace;
24
+ }
25
+ }
26
+ return { critical, async };
27
+ }
28
+ /**
29
+ * Framework-aware CSS purging
30
+ * Removes unused CSS classes based on framework patterns
31
+ */
32
+ export async function purgeUnusedCSS(css, usedClasses, config = {}) {
33
+ const { framework = 'none' } = config;
34
+ // Framework-specific class patterns to preserve
35
+ const preservePatterns = {
36
+ tailwind: [
37
+ /^(hover|focus|active|disabled|group-hover|peer-|dark):/,
38
+ /^(sm|md|lg|xl|2xl):/,
39
+ ],
40
+ bootstrap: [
41
+ /^(btn|nav|card|modal|dropdown|collapse|accordion)-/,
42
+ /^(show|active|disabled|fade|collapse)/,
43
+ ],
44
+ bulma: [
45
+ /^(is|has)-/,
46
+ /^(button|hero|section|column|box)/,
47
+ ],
48
+ material: [
49
+ /^(mdc|mat)-/,
50
+ /^(ripple|elevation|theme)/,
51
+ ],
52
+ none: [],
53
+ };
54
+ const patterns = preservePatterns[framework] || [];
55
+ // Parse CSS and remove unused rules
56
+ const rules = css.split('}').filter(rule => rule.trim());
57
+ const purgedRules = [];
58
+ for (const rule of rules) {
59
+ // Extract class name, handling escaped characters
60
+ const classMatch = rule.match(/\.([a-zA-Z0-9_\\:-]+)/);
61
+ if (!classMatch) {
62
+ purgedRules.push(rule + '}');
63
+ continue;
64
+ }
65
+ const className = classMatch[1];
66
+ // Remove escape characters for comparison
67
+ const normalizedClass = className.replace(/\\/g, '');
68
+ // Keep if used or matches preserve pattern
69
+ const shouldKeep = usedClasses.has(className) ||
70
+ usedClasses.has(normalizedClass) ||
71
+ patterns.some(pattern => pattern.test(normalizedClass));
72
+ if (shouldKeep) {
73
+ purgedRules.push(rule + '}');
74
+ }
75
+ }
76
+ const purgedCSS = purgedRules.join('\n');
77
+ const originalSize = css.length;
78
+ const purgedSize = purgedCSS.length;
79
+ const reduction = ((1 - purgedSize / originalSize) * 100).toFixed(1);
80
+ log.success(`CSS purged: ${originalSize}B → ${purgedSize}B (${reduction}% reduction)`);
81
+ return purgedCSS;
82
+ }
83
+ export async function composeSourceMaps(maps) {
84
+ // Simple source map composition
85
+ // In production, use a library like 'source-map' for proper composition
86
+ const composed = {
87
+ version: 3,
88
+ sources: [],
89
+ mappings: '',
90
+ names: [],
91
+ };
92
+ for (const map of maps) {
93
+ composed.sources.push(...map.sources);
94
+ composed.names.push(...map.names);
95
+ // Simplified: just concatenate mappings
96
+ composed.mappings += map.mappings;
97
+ }
98
+ return composed;
99
+ }
100
+ /**
101
+ * Extract critical CSS for above-the-fold content
102
+ */
103
+ export async function extractCriticalCSS(html, css) {
104
+ // Extract classes used in HTML
105
+ const classRegex = /class="([^"]+)"/g;
106
+ const usedClasses = new Set();
107
+ let match;
108
+ while ((match = classRegex.exec(html)) !== null) {
109
+ const classes = match[1].split(/\s+/);
110
+ classes.forEach(cls => usedClasses.add(cls));
111
+ }
112
+ // Filter CSS to only include used classes
113
+ const rules = css.split('}').filter(rule => rule.trim());
114
+ const criticalRules = [];
115
+ for (const rule of rules) {
116
+ const classMatch = rule.match(/\.([a-zA-Z0-9_-]+)/);
117
+ if (classMatch && usedClasses.has(classMatch[1])) {
118
+ criticalRules.push(rule + '}');
119
+ }
120
+ }
121
+ return criticalRules.join('\n');
122
+ }
123
+ export async function analyzeCSS(css, usedClasses) {
124
+ const rules = css.split('}').filter(rule => rule.trim());
125
+ const ruleMap = new Map();
126
+ let unusedCount = 0;
127
+ for (const rule of rules) {
128
+ const classMatch = rule.match(/\.([a-zA-Z0-9_-]+)/);
129
+ if (classMatch) {
130
+ const className = classMatch[1];
131
+ ruleMap.set(rule, (ruleMap.get(rule) || 0) + 1);
132
+ if (!usedClasses.has(className)) {
133
+ unusedCount++;
134
+ }
135
+ }
136
+ }
137
+ const duplicateCount = Array.from(ruleMap.values()).filter(count => count > 1).length;
138
+ const suggestions = [];
139
+ if (unusedCount > 0) {
140
+ suggestions.push(`Remove ${unusedCount} unused CSS rules`);
141
+ }
142
+ if (duplicateCount > 0) {
143
+ suggestions.push(`Deduplicate ${duplicateCount} duplicate rules`);
144
+ }
145
+ if (css.length > 100000) {
146
+ suggestions.push('Consider code splitting for large CSS bundle');
147
+ }
148
+ return {
149
+ totalSize: css.length,
150
+ ruleCount: rules.length,
151
+ unusedRules: unusedCount,
152
+ duplicateRules: duplicateCount,
153
+ suggestions,
154
+ };
155
+ }
@@ -0,0 +1,35 @@
1
+ import { Plugin } from 'esbuild';
2
+ export interface EmotionConfig {
3
+ ssr?: boolean;
4
+ cssProp?: boolean;
5
+ autoLabel?: boolean;
6
+ labelFormat?: string;
7
+ }
8
+ /**
9
+ * Emotion Plugin for esbuild
10
+ * Integrates @emotion/babel-plugin for css prop and optimization
11
+ */
12
+ export declare function emotionPlugin(config?: EmotionConfig): Plugin;
13
+ /**
14
+ * Get Babel plugin configuration for Emotion
15
+ */
16
+ export declare function getEmotionBabelConfig(config?: EmotionConfig): {
17
+ presets?: (string | {
18
+ runtime: string;
19
+ importSource: string;
20
+ })[][] | undefined;
21
+ plugins: (string | {
22
+ sourceMap: boolean;
23
+ autoLabel: string;
24
+ labelFormat: string;
25
+ cssPropOptimization: boolean;
26
+ })[][];
27
+ };
28
+ /**
29
+ * Auto-detect Emotion usage
30
+ */
31
+ export declare function detectEmotion(root: string): Promise<boolean>;
32
+ /**
33
+ * Get Emotion configuration
34
+ */
35
+ export declare function getEmotionConfig(root: string): Promise<EmotionConfig>;