@ohos-ports/stacksjs-stx 0.2.287-beta.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 (946) hide show
  1. package/LICENSE.md +21 -0
  2. package/README.md +1042 -0
  3. package/dist/a11y.d.ts +256 -0
  4. package/dist/a11y.js +671 -0
  5. package/dist/analytics.d.ts +40 -0
  6. package/dist/analytics.js +159 -0
  7. package/dist/analyzer.d.ts +68 -0
  8. package/dist/analyzer.js +240 -0
  9. package/dist/animation.d.ts +123 -0
  10. package/dist/animation.js +688 -0
  11. package/dist/app-shell.d.ts +76 -0
  12. package/dist/app-shell.js +209 -0
  13. package/dist/app.d.ts +65 -0
  14. package/dist/app.js +79 -0
  15. package/dist/appearance-bootstrap.d.ts +54 -0
  16. package/dist/appearance-bootstrap.js +92 -0
  17. package/dist/asset-roots.d.ts +32 -0
  18. package/dist/asset-roots.js +7 -0
  19. package/dist/assets.d.ts +21 -0
  20. package/dist/assets.js +155 -0
  21. package/dist/ast.d.ts +265 -0
  22. package/dist/ast.js +630 -0
  23. package/dist/async-components.d.ts +123 -0
  24. package/dist/async-components.js +428 -0
  25. package/dist/auth.d.ts +13 -0
  26. package/dist/auth.js +12 -0
  27. package/dist/broadcasting.d.ts +77 -0
  28. package/dist/broadcasting.js +103 -0
  29. package/dist/browser-composables.d.ts +348 -0
  30. package/dist/browser-composables.js +606 -0
  31. package/dist/browser-core-imports.d.ts +12 -0
  32. package/dist/browser-core-imports.js +28 -0
  33. package/dist/build-assets.d.ts +32 -0
  34. package/dist/build-assets.js +29 -0
  35. package/dist/build-externalize-repeated.d.ts +34 -0
  36. package/dist/build-externalize-repeated.js +101 -0
  37. package/dist/build-externalize.d.ts +73 -0
  38. package/dist/build-externalize.js +80 -0
  39. package/dist/build-id.d.ts +57 -0
  40. package/dist/build-id.js +25 -0
  41. package/dist/build-message.d.ts +81 -0
  42. package/dist/build-message.js +65 -0
  43. package/dist/build-mode-detector.d.ts +26 -0
  44. package/dist/build-mode-detector.js +50 -0
  45. package/dist/build-optimizer.d.ts +101 -0
  46. package/dist/build-optimizer.js +433 -0
  47. package/dist/build-views.d.ts +56 -0
  48. package/dist/build-views.js +180 -0
  49. package/dist/build.d.ts +31 -0
  50. package/dist/build.js +34 -0
  51. package/dist/builtins/attrs.d.ts +49 -0
  52. package/dist/builtins/attrs.js +39 -0
  53. package/dist/builtins/drawer.d.ts +24 -0
  54. package/dist/builtins/drawer.js +37 -0
  55. package/dist/builtins/escape.d.ts +12 -0
  56. package/dist/builtins/escape.js +3 -0
  57. package/dist/builtins/icon.d.ts +45 -0
  58. package/dist/builtins/icon.js +100 -0
  59. package/dist/builtins/image-delivery.d.ts +16 -0
  60. package/dist/builtins/image-delivery.js +115 -0
  61. package/dist/builtins/image-placeholder.d.ts +78 -0
  62. package/dist/builtins/image-placeholder.js +137 -0
  63. package/dist/builtins/index.d.ts +26 -0
  64. package/dist/builtins/index.js +34 -0
  65. package/dist/builtins/modal.d.ts +26 -0
  66. package/dist/builtins/modal.js +38 -0
  67. package/dist/builtins/safe-image.d.ts +44 -0
  68. package/dist/builtins/safe-image.js +45 -0
  69. package/dist/builtins/stx-image.d.ts +29 -0
  70. package/dist/builtins/stx-image.js +222 -0
  71. package/dist/builtins/stx-link.d.ts +11 -0
  72. package/dist/builtins/stx-link.js +35 -0
  73. package/dist/builtins/stx-loading-indicator.d.ts +13 -0
  74. package/dist/builtins/stx-loading-indicator.js +35 -0
  75. package/dist/builtins/suspense.d.ts +30 -0
  76. package/dist/builtins/suspense.js +24 -0
  77. package/dist/builtins/toast.d.ts +19 -0
  78. package/dist/builtins/toast.js +42 -0
  79. package/dist/builtins/tooltip.d.ts +18 -0
  80. package/dist/builtins/tooltip.js +106 -0
  81. package/dist/builtins/transition-group.d.ts +27 -0
  82. package/dist/builtins/transition-group.js +22 -0
  83. package/dist/bun-shim.js +496 -0
  84. package/dist/bundle-analyzer/collector.d.ts +66 -0
  85. package/dist/bundle-analyzer/collector.js +233 -0
  86. package/dist/bundle-analyzer/index.d.ts +98 -0
  87. package/dist/bundle-analyzer/index.js +82 -0
  88. package/dist/bundle-analyzer/report.d.ts +39 -0
  89. package/dist/bundle-analyzer/report.js +318 -0
  90. package/dist/bundle-analyzer/treemap.d.ts +19 -0
  91. package/dist/bundle-analyzer/treemap.js +594 -0
  92. package/dist/bundle-analyzer.js +499 -0
  93. package/dist/caching.d.ts +69 -0
  94. package/dist/caching.js +135 -0
  95. package/dist/chunk-0y46fbkx.js +3 -0
  96. package/dist/chunk-122tyfre.js +2 -0
  97. package/dist/chunk-19nfvxfw.js +43 -0
  98. package/dist/chunk-1kah92n2.js +3 -0
  99. package/dist/chunk-1kms3b9d.js +2 -0
  100. package/dist/chunk-1q4y74mh.js +1194 -0
  101. package/dist/chunk-248e84r1.js +4 -0
  102. package/dist/chunk-24ps8kft.js +2 -0
  103. package/dist/chunk-2et5hxfv.js +2 -0
  104. package/dist/chunk-2r1rd8f0.js +2 -0
  105. package/dist/chunk-2tk1zkrz.js +2 -0
  106. package/dist/chunk-38ejahd9.js +3 -0
  107. package/dist/chunk-3zv4wz87.js +2 -0
  108. package/dist/chunk-4122k1bh.js +2 -0
  109. package/dist/chunk-45az9zht.js +2 -0
  110. package/dist/chunk-4qr85f07.js +2 -0
  111. package/dist/chunk-4ww3znrr.js +15 -0
  112. package/dist/chunk-54st8g2j.js +397 -0
  113. package/dist/chunk-58f0mthg.js +3 -0
  114. package/dist/chunk-5a19dhx5.js +2 -0
  115. package/dist/chunk-5kk8gsj2.js +3 -0
  116. package/dist/chunk-5w1e3yxs.js +499 -0
  117. package/dist/chunk-6gdycmxr.js +2 -0
  118. package/dist/chunk-6hmnaza7.js +4473 -0
  119. package/dist/chunk-71t0yan0.js +5 -0
  120. package/dist/chunk-74cv4ta1.js +3 -0
  121. package/dist/chunk-74v15e8z.js +2 -0
  122. package/dist/chunk-7b329e5v.js +3 -0
  123. package/dist/chunk-7q9mwh4v.js +84 -0
  124. package/dist/chunk-866y9d8b.js +8169 -0
  125. package/dist/chunk-8fwerspy.js +2 -0
  126. package/dist/chunk-8mjdpr94.js +147 -0
  127. package/dist/chunk-92mj1t26.js +60 -0
  128. package/dist/chunk-9b22663r.js +2 -0
  129. package/dist/chunk-9hjdgm4d.js +2 -0
  130. package/dist/chunk-9n0gvfrg.js +4 -0
  131. package/dist/chunk-9wr7zcad.js +18 -0
  132. package/dist/chunk-9y0g8kzt.js +358 -0
  133. package/dist/chunk-a0nfbmeh.js +3 -0
  134. package/dist/chunk-acn1b56m.js +1280 -0
  135. package/dist/chunk-awkq3xfx.js +2 -0
  136. package/dist/chunk-b6ej2fdf.js +1814 -0
  137. package/dist/chunk-b8rrnqry.js +2 -0
  138. package/dist/chunk-bfqfs07m.js +3022 -0
  139. package/dist/chunk-bs6kapy7.js +2 -0
  140. package/dist/chunk-btav940g.js +2 -0
  141. package/dist/chunk-bz820epz.js +3 -0
  142. package/dist/chunk-ccspd3mc.js +2 -0
  143. package/dist/chunk-csbgwaa5.js +2 -0
  144. package/dist/chunk-d8t4sjsp.js +2 -0
  145. package/dist/chunk-dap191q2.js +2 -0
  146. package/dist/chunk-de7fye10.js +4 -0
  147. package/dist/chunk-dgrt76d2.js +2 -0
  148. package/dist/chunk-dhh5q7qt.js +3 -0
  149. package/dist/chunk-dsffsqnt.js +2 -0
  150. package/dist/chunk-dtq7y5ym.js +2 -0
  151. package/dist/chunk-fed3xsp9.js +3 -0
  152. package/dist/chunk-ferav3bw.js +19 -0
  153. package/dist/chunk-fvhm8psm.js +3 -0
  154. package/dist/chunk-g4vpzv6b.js +2 -0
  155. package/dist/chunk-g9csmj0s.js +2 -0
  156. package/dist/chunk-gtcrpmz1.js +2 -0
  157. package/dist/chunk-h4xh8cms.js +4 -0
  158. package/dist/chunk-h8yqsz9m.js +2 -0
  159. package/dist/chunk-hcq5dw7a.js +2 -0
  160. package/dist/chunk-hm0xha6c.js +12 -0
  161. package/dist/chunk-hpybjwwf.js +8 -0
  162. package/dist/chunk-jegt35zh.js +2 -0
  163. package/dist/chunk-jr3jp3ev.js +8 -0
  164. package/dist/chunk-k56rjjc0.js +24 -0
  165. package/dist/chunk-kdh37tp8.js +194 -0
  166. package/dist/chunk-kxzb4et3.js +29 -0
  167. package/dist/chunk-mf4n3x1j.js +14 -0
  168. package/dist/chunk-mkd9kjgb.js +3 -0
  169. package/dist/chunk-mxfh1nxg.js +2 -0
  170. package/dist/chunk-n3ggrhb3.js +3 -0
  171. package/dist/chunk-nkb3scg6.js +8 -0
  172. package/dist/chunk-nnd4wq8j.js +231 -0
  173. package/dist/chunk-nsp1cw38.js +11 -0
  174. package/dist/chunk-nx5qkm8k.js +30 -0
  175. package/dist/chunk-p3242nck.js +2 -0
  176. package/dist/chunk-p98kfh94.js +2 -0
  177. package/dist/chunk-pkaabd8h.js +3 -0
  178. package/dist/chunk-pzm13sdc.js +3 -0
  179. package/dist/chunk-q4p5k2p3.js +2 -0
  180. package/dist/chunk-q9n5swx7.js +3 -0
  181. package/dist/chunk-qc1f74ek.js +3 -0
  182. package/dist/chunk-qpyjak7z.js +2 -0
  183. package/dist/chunk-qr82je1m.js +22 -0
  184. package/dist/chunk-qy73j6m4.js +288 -0
  185. package/dist/chunk-qzkhpsam.js +505 -0
  186. package/dist/chunk-r3ayvdz3.js +2 -0
  187. package/dist/chunk-r7r66978.js +2 -0
  188. package/dist/chunk-rbb7dvja.js +30 -0
  189. package/dist/chunk-refwkt87.js +71 -0
  190. package/dist/chunk-rj4kajww.js +2 -0
  191. package/dist/chunk-rp4rjjmf.js +2 -0
  192. package/dist/chunk-se0p17c2.js +898 -0
  193. package/dist/chunk-sj9pmene.js +2 -0
  194. package/dist/chunk-sscwkffs.js +2 -0
  195. package/dist/chunk-svpqxn2c.js +2 -0
  196. package/dist/chunk-t6nseeb9.js +351 -0
  197. package/dist/chunk-t8y1ggdy.js +2 -0
  198. package/dist/chunk-tndhnk9e.js +2 -0
  199. package/dist/chunk-v5e1gxwm.js +3 -0
  200. package/dist/chunk-vqxmxgaj.js +4 -0
  201. package/dist/chunk-vrrax298.js +2 -0
  202. package/dist/chunk-w3ycm4na.js +3 -0
  203. package/dist/chunk-wcm80anz.js +321 -0
  204. package/dist/chunk-wrzwgkbx.js +22 -0
  205. package/dist/chunk-x650vjcp.js +302 -0
  206. package/dist/chunk-xgnc1wy6.js +116 -0
  207. package/dist/chunk-xpp135ad.js +11 -0
  208. package/dist/chunk-xttsqmkm.js +216 -0
  209. package/dist/chunk-y11cxbxd.js +3757 -0
  210. package/dist/chunk-y7m2dpd3.js +341 -0
  211. package/dist/chunk-y98jsjqq.js +2 -0
  212. package/dist/chunk-ya386h70.js +2 -0
  213. package/dist/chunk-ydrz60kr.js +2 -0
  214. package/dist/chunk-ypmqf7tm.js +4 -0
  215. package/dist/chunk-z4jhj5e5.js +28 -0
  216. package/dist/chunk-zg75gjns.js +2 -0
  217. package/dist/chunk-zqqx1qaj.js +2 -0
  218. package/dist/cli-flags.d.ts +34 -0
  219. package/dist/cli-flags.js +20 -0
  220. package/dist/cli.js +174 -0
  221. package/dist/client/directive.d.ts +17 -0
  222. package/dist/client/directive.js +14 -0
  223. package/dist/client/index.d.ts +7 -0
  224. package/dist/client/index.js +2 -0
  225. package/dist/client-helpers.d.ts +317 -0
  226. package/dist/client-helpers.js +312 -0
  227. package/dist/client-script-bundler.d.ts +103 -0
  228. package/dist/client-script-bundler.js +390 -0
  229. package/dist/client-script.d.ts +215 -0
  230. package/dist/client-script.js +865 -0
  231. package/dist/client.d.ts +21 -0
  232. package/dist/client.js +73 -0
  233. package/dist/codemod.d.ts +33 -0
  234. package/dist/codemod.js +244 -0
  235. package/dist/color-mode-boot.d.ts +92 -0
  236. package/dist/color-mode-boot.js +72 -0
  237. package/dist/component-client-factories.d.ts +33 -0
  238. package/dist/component-client-factories.js +77 -0
  239. package/dist/component-hmr.d.ts +107 -0
  240. package/dist/component-hmr.js +585 -0
  241. package/dist/component-library.d.ts +38 -0
  242. package/dist/component-library.js +994 -0
  243. package/dist/component-processing.d.ts +198 -0
  244. package/dist/component-processing.js +677 -0
  245. package/dist/component-registry.d.ts +127 -0
  246. package/dist/component-registry.js +90 -0
  247. package/dist/component-renderer.d.ts +52 -0
  248. package/dist/component-renderer.js +790 -0
  249. package/dist/components/StxImage.stx +12 -0
  250. package/dist/components/StxLink.stx +18 -0
  251. package/dist/components.d.ts +28 -0
  252. package/dist/components.js +213 -0
  253. package/dist/composable-loader.d.ts +62 -0
  254. package/dist/composable-loader.js +190 -0
  255. package/dist/composables/index.d.ts +417 -0
  256. package/dist/composables/index.js +222 -0
  257. package/dist/composables/use-battery.d.ts +46 -0
  258. package/dist/composables/use-battery.js +101 -0
  259. package/dist/composables/use-broadcast-channel.d.ts +59 -0
  260. package/dist/composables/use-broadcast-channel.js +80 -0
  261. package/dist/composables/use-channel.d.ts +67 -0
  262. package/dist/composables/use-channel.js +124 -0
  263. package/dist/composables/use-clipboard.d.ts +30 -0
  264. package/dist/composables/use-clipboard.js +90 -0
  265. package/dist/composables/use-color-mode.d.ts +67 -0
  266. package/dist/composables/use-color-mode.js +152 -0
  267. package/dist/composables/use-cookie.d.ts +59 -0
  268. package/dist/composables/use-cookie.js +86 -0
  269. package/dist/composables/use-device-orientation.d.ts +116 -0
  270. package/dist/composables/use-device-orientation.js +181 -0
  271. package/dist/composables/use-event-listener.d.ts +35 -0
  272. package/dist/composables/use-event-listener.js +27 -0
  273. package/dist/composables/use-event-source.d.ts +90 -0
  274. package/dist/composables/use-event-source.js +166 -0
  275. package/dist/composables/use-eye-dropper.d.ts +117 -0
  276. package/dist/composables/use-eye-dropper.js +142 -0
  277. package/dist/composables/use-fetch.d.ts +59 -0
  278. package/dist/composables/use-fetch.js +273 -0
  279. package/dist/composables/use-form.d.ts +91 -0
  280. package/dist/composables/use-form.js +112 -0
  281. package/dist/composables/use-fullscreen.d.ts +47 -0
  282. package/dist/composables/use-fullscreen.js +110 -0
  283. package/dist/composables/use-geolocation.d.ts +62 -0
  284. package/dist/composables/use-geolocation.js +101 -0
  285. package/dist/composables/use-idle.d.ts +102 -0
  286. package/dist/composables/use-idle.js +182 -0
  287. package/dist/composables/use-intersection-observer.d.ts +83 -0
  288. package/dist/composables/use-intersection-observer.js +168 -0
  289. package/dist/composables/use-keyboard.d.ts +100 -0
  290. package/dist/composables/use-keyboard.js +224 -0
  291. package/dist/composables/use-media-query.d.ts +56 -0
  292. package/dist/composables/use-media-query.js +62 -0
  293. package/dist/composables/use-meta.d.ts +35 -0
  294. package/dist/composables/use-meta.js +48 -0
  295. package/dist/composables/use-mouse.d.ts +65 -0
  296. package/dist/composables/use-mouse.js +286 -0
  297. package/dist/composables/use-mutation-observer.d.ts +101 -0
  298. package/dist/composables/use-mutation-observer.js +129 -0
  299. package/dist/composables/use-network.d.ts +40 -0
  300. package/dist/composables/use-network.js +85 -0
  301. package/dist/composables/use-notification.d.ts +98 -0
  302. package/dist/composables/use-notification.js +94 -0
  303. package/dist/composables/use-permissions.d.ts +119 -0
  304. package/dist/composables/use-permissions.js +132 -0
  305. package/dist/composables/use-query.d.ts +48 -0
  306. package/dist/composables/use-query.js +0 -0
  307. package/dist/composables/use-resize-observer.d.ts +60 -0
  308. package/dist/composables/use-resize-observer.js +157 -0
  309. package/dist/composables/use-router.d.ts +80 -0
  310. package/dist/composables/use-router.js +105 -0
  311. package/dist/composables/use-scroll-lock.d.ts +13 -0
  312. package/dist/composables/use-scroll-lock.js +55 -0
  313. package/dist/composables/use-share.d.ts +74 -0
  314. package/dist/composables/use-share.js +104 -0
  315. package/dist/composables/use-speech.d.ts +117 -0
  316. package/dist/composables/use-speech.js +294 -0
  317. package/dist/composables/use-storage.d.ts +69 -0
  318. package/dist/composables/use-storage.js +196 -0
  319. package/dist/composables/use-text-selection.d.ts +121 -0
  320. package/dist/composables/use-text-selection.js +205 -0
  321. package/dist/composables/use-timer.d.ts +92 -0
  322. package/dist/composables/use-timer.js +193 -0
  323. package/dist/composables/use-utilities.d.ts +103 -0
  324. package/dist/composables/use-utilities.js +176 -0
  325. package/dist/composables/use-wake-lock.d.ts +85 -0
  326. package/dist/composables/use-wake-lock.js +122 -0
  327. package/dist/composables/use-websocket.d.ts +70 -0
  328. package/dist/composables/use-websocket.js +165 -0
  329. package/dist/composables/use-window.d.ts +84 -0
  330. package/dist/composables/use-window.js +163 -0
  331. package/dist/composables.d.ts +287 -0
  332. package/dist/composables.js +562 -0
  333. package/dist/composition-api.d.ts +197 -0
  334. package/dist/composition-api.js +199 -0
  335. package/dist/compression.d.ts +30 -0
  336. package/dist/compression.js +107 -0
  337. package/dist/computed.d.ts +138 -0
  338. package/dist/computed.js +382 -0
  339. package/dist/conditionals.d.ts +48 -0
  340. package/dist/conditionals.js +626 -0
  341. package/dist/config.d.ts +77 -0
  342. package/dist/config.js +828 -0
  343. package/dist/cookie-serialize.d.ts +40 -0
  344. package/dist/cookie-serialize.js +18 -0
  345. package/dist/craft-bridge.d.ts +525 -0
  346. package/dist/craft-bridge.js +511 -0
  347. package/dist/craft-compiler.d.ts +245 -0
  348. package/dist/craft-compiler.js +810 -0
  349. package/dist/craft-components.d.ts +739 -0
  350. package/dist/craft-components.js +1074 -0
  351. package/dist/craft-entry.d.ts +6 -0
  352. package/dist/craft-entry.js +9 -0
  353. package/dist/craft-ssr.d.ts +147 -0
  354. package/dist/craft-ssr.js +559 -0
  355. package/dist/craft.js +9 -0
  356. package/dist/csp.d.ts +295 -0
  357. package/dist/csp.js +220 -0
  358. package/dist/csrf.d.ts +38 -0
  359. package/dist/csrf.js +38 -0
  360. package/dist/custom-directives.d.ts +5 -0
  361. package/dist/custom-directives.js +136 -0
  362. package/dist/database.d.ts +391 -0
  363. package/dist/database.js +5 -0
  364. package/dist/defer.d.ts +28 -0
  365. package/dist/defer.js +156 -0
  366. package/dist/deploy/config-generators.d.ts +75 -0
  367. package/dist/deploy/config-generators.js +214 -0
  368. package/dist/deploy/index.d.ts +88 -0
  369. package/dist/deploy/index.js +203 -0
  370. package/dist/deploy/netlify.d.ts +109 -0
  371. package/dist/deploy/netlify.js +167 -0
  372. package/dist/desktop.d.ts +16 -0
  373. package/dist/desktop.js +1 -0
  374. package/dist/dev-server/index.d.ts +22 -0
  375. package/dist/dev-server/index.js +7 -0
  376. package/dist/dev-server/keyboard-shortcuts.d.ts +34 -0
  377. package/dist/dev-server/keyboard-shortcuts.js +81 -0
  378. package/dist/dev-server/native-window.d.ts +59 -0
  379. package/dist/dev-server/native-window.js +91 -0
  380. package/dist/dev-server/port-utils.d.ts +27 -0
  381. package/dist/dev-server/port-utils.js +40 -0
  382. package/dist/dev-server/serve-app.d.ts +15 -0
  383. package/dist/dev-server/serve-app.js +727 -0
  384. package/dist/dev-server/serve-file.d.ts +3 -0
  385. package/dist/dev-server/serve-file.js +443 -0
  386. package/dist/dev-server/serve-markdown.d.ts +3 -0
  387. package/dist/dev-server/serve-markdown.js +284 -0
  388. package/dist/dev-server/serve-multi.d.ts +5 -0
  389. package/dist/dev-server/serve-multi.js +596 -0
  390. package/dist/dev-server/terminal-colors.d.ts +56 -0
  391. package/dist/dev-server/terminal-colors.js +45 -0
  392. package/dist/dev-server/theme-selector.d.ts +32 -0
  393. package/dist/dev-server/theme-selector.js +111 -0
  394. package/dist/dev-server/ts-css.d.ts +108 -0
  395. package/dist/dev-server/ts-css.js +438 -0
  396. package/dist/dev-server/types.d.ts +99 -0
  397. package/dist/dev-server/types.js +43 -0
  398. package/dist/dev-server.d.ts +6 -0
  399. package/dist/dev-server.js +4 -0
  400. package/dist/devtools.d.ts +182 -0
  401. package/dist/devtools.js +593 -0
  402. package/dist/directive-api.d.ts +154 -0
  403. package/dist/directive-api.js +355 -0
  404. package/dist/docs.d.ts +56 -0
  405. package/dist/docs.js +567 -0
  406. package/dist/doctor.d.ts +29 -0
  407. package/dist/doctor.js +123 -0
  408. package/dist/document-shell.d.ts +218 -0
  409. package/dist/document-shell.js +338 -0
  410. package/dist/dynamic-components.d.ts +23 -0
  411. package/dist/dynamic-components.js +197 -0
  412. package/dist/edge-runtime.d.ts +193 -0
  413. package/dist/edge-runtime.js +525 -0
  414. package/dist/env.d.ts +3 -0
  415. package/dist/env.js +9 -0
  416. package/dist/error-boundaries.d.ts +78 -0
  417. package/dist/error-boundaries.js +281 -0
  418. package/dist/error-handling.d.ts +14 -0
  419. package/dist/error-handling.js +1 -0
  420. package/dist/errors/codes.d.ts +92 -0
  421. package/dist/errors/codes.js +97 -0
  422. package/dist/errors/formatter.d.ts +84 -0
  423. package/dist/errors/formatter.js +196 -0
  424. package/dist/errors/index.d.ts +12 -0
  425. package/dist/errors/index.js +44 -0
  426. package/dist/errors/logger.d.ts +135 -0
  427. package/dist/errors/logger.js +250 -0
  428. package/dist/errors/sanitizer.d.ts +73 -0
  429. package/dist/errors/sanitizer.js +181 -0
  430. package/dist/errors/types.d.ts +92 -0
  431. package/dist/errors/types.js +86 -0
  432. package/dist/events.d.ts +145 -0
  433. package/dist/events.js +396 -0
  434. package/dist/expressions.d.ts +180 -0
  435. package/dist/expressions.js +719 -0
  436. package/dist/find-body-tag.d.ts +50 -0
  437. package/dist/find-body-tag.js +57 -0
  438. package/dist/formatter.d.ts +19 -0
  439. package/dist/formatter.js +265 -0
  440. package/dist/forms-validation.d.ts +189 -0
  441. package/dist/forms-validation.js +421 -0
  442. package/dist/forms.d.ts +224 -0
  443. package/dist/forms.js +729 -0
  444. package/dist/fragment-container.d.ts +57 -0
  445. package/dist/fragment-container.js +123 -0
  446. package/dist/framework-composables.d.ts +73 -0
  447. package/dist/framework-composables.js +126 -0
  448. package/dist/head-injection.d.ts +61 -0
  449. package/dist/head-injection.js +28 -0
  450. package/dist/head.d.ts +282 -0
  451. package/dist/head.js +231 -0
  452. package/dist/heatmap.d.ts +206 -0
  453. package/dist/heatmap.js +566 -0
  454. package/dist/hot-reload.d.ts +87 -0
  455. package/dist/hot-reload.js +373 -0
  456. package/dist/html-masking.d.ts +125 -0
  457. package/dist/html-masking.js +196 -0
  458. package/dist/hydration-runtime.d.ts +44 -0
  459. package/dist/hydration-runtime.js +195 -0
  460. package/dist/hydration.d.ts +135 -0
  461. package/dist/hydration.js +654 -0
  462. package/dist/i18n.d.ts +342 -0
  463. package/dist/i18n.js +678 -0
  464. package/dist/image-optimization/auto-sibling.d.ts +42 -0
  465. package/dist/image-optimization/auto-sibling.js +88 -0
  466. package/dist/image-optimization/build-plugin.d.ts +54 -0
  467. package/dist/image-optimization/build-plugin.js +241 -0
  468. package/dist/image-optimization/component.d.ts +46 -0
  469. package/dist/image-optimization/component.js +244 -0
  470. package/dist/image-optimization/directive.d.ts +30 -0
  471. package/dist/image-optimization/directive.js +203 -0
  472. package/dist/image-optimization/index.d.ts +156 -0
  473. package/dist/image-optimization/index.js +54 -0
  474. package/dist/image-optimization/processor.d.ts +140 -0
  475. package/dist/image-optimization/processor.js +262 -0
  476. package/dist/image-optimization/serve.d.ts +54 -0
  477. package/dist/image-optimization/serve.js +102 -0
  478. package/dist/import-rebase.d.ts +16 -0
  479. package/dist/import-rebase.js +16 -0
  480. package/dist/imported-signals.d.ts +43 -0
  481. package/dist/imported-signals.js +35 -0
  482. package/dist/includes.d.ts +171 -0
  483. package/dist/includes.js +764 -0
  484. package/dist/index.d.ts +365 -0
  485. package/dist/index.js +202 -0
  486. package/dist/init.d.ts +39 -0
  487. package/dist/init.js +505 -0
  488. package/dist/inline-assets.d.ts +28 -0
  489. package/dist/inline-assets.js +82 -0
  490. package/dist/interactive.d.ts +14 -0
  491. package/dist/interactive.js +383 -0
  492. package/dist/internal-markdown.d.ts +22 -0
  493. package/dist/internal-markdown.js +141 -0
  494. package/dist/island-chunking.d.ts +48 -0
  495. package/dist/island-chunking.js +52 -0
  496. package/dist/isolated-build.d.ts +12 -0
  497. package/dist/isolated-build.js +18 -0
  498. package/dist/js-ts.d.ts +10 -0
  499. package/dist/js-ts.js +60 -0
  500. package/dist/jsx-runtime.d.ts +92 -0
  501. package/dist/jsx-runtime.js +289 -0
  502. package/dist/keep-alive.d.ts +108 -0
  503. package/dist/keep-alive.js +421 -0
  504. package/dist/layout-types.d.ts +45 -0
  505. package/dist/layout-types.js +56 -0
  506. package/dist/lazy-loader.d.ts +90 -0
  507. package/dist/lazy-loader.js +245 -0
  508. package/dist/lazy-module.d.ts +11 -0
  509. package/dist/lazy-module.js +18 -0
  510. package/dist/loading-indicator.d.ts +50 -0
  511. package/dist/loading-indicator.js +322 -0
  512. package/dist/loops.d.ts +91 -0
  513. package/dist/loops.js +690 -0
  514. package/dist/manifest.d.ts +41 -0
  515. package/dist/manifest.js +31 -0
  516. package/dist/markdown-view.d.ts +25 -0
  517. package/dist/markdown-view.js +39 -0
  518. package/dist/markdown.d.ts +10 -0
  519. package/dist/markdown.js +68 -0
  520. package/dist/media/client/blur-up.d.ts +66 -0
  521. package/dist/media/client/blur-up.js +217 -0
  522. package/dist/media/client/index.d.ts +93 -0
  523. package/dist/media/client/index.js +53 -0
  524. package/dist/media/client/lazy-load.d.ts +74 -0
  525. package/dist/media/client/lazy-load.js +283 -0
  526. package/dist/media/client/upload-handler.d.ts +80 -0
  527. package/dist/media/client/upload-handler.js +354 -0
  528. package/dist/media/image/component.d.ts +60 -0
  529. package/dist/media/image/component.js +574 -0
  530. package/dist/media/image/directive.d.ts +23 -0
  531. package/dist/media/image/directive.js +160 -0
  532. package/dist/media/image/editing.d.ts +212 -0
  533. package/dist/media/image/editing.js +193 -0
  534. package/dist/media/image/index.d.ts +142 -0
  535. package/dist/media/image/index.js +80 -0
  536. package/dist/media/image/placeholder.d.ts +89 -0
  537. package/dist/media/image/placeholder.js +188 -0
  538. package/dist/media/image/processor/cache.d.ts +53 -0
  539. package/dist/media/image/processor/cache.js +51 -0
  540. package/dist/media/image/processor/index.d.ts +11 -0
  541. package/dist/media/image/processor/index.js +3 -0
  542. package/dist/media/image/processor/optimizer.d.ts +24 -0
  543. package/dist/media/image/processor/optimizer.js +202 -0
  544. package/dist/media/image/processor/responsive.d.ts +28 -0
  545. package/dist/media/image/processor/responsive.js +162 -0
  546. package/dist/media/image/srcset.d.ts +157 -0
  547. package/dist/media/image/srcset.js +194 -0
  548. package/dist/media/index.d.ts +331 -0
  549. package/dist/media/index.js +198 -0
  550. package/dist/media/manager/embed.d.ts +25 -0
  551. package/dist/media/manager/embed.js +253 -0
  552. package/dist/media/protected/component.d.ts +33 -0
  553. package/dist/media/protected/component.js +235 -0
  554. package/dist/media/protected/index.d.ts +47 -0
  555. package/dist/media/protected/index.js +20 -0
  556. package/dist/media/protected/signature.d.ts +72 -0
  557. package/dist/media/protected/signature.js +205 -0
  558. package/dist/media/shared/cache.d.ts +76 -0
  559. package/dist/media/shared/cache.js +132 -0
  560. package/dist/media/shared/hash.d.ts +31 -0
  561. package/dist/media/shared/hash.js +35 -0
  562. package/dist/media/shared/index.d.ts +7 -0
  563. package/dist/media/shared/index.js +2 -0
  564. package/dist/media/types.d.ts +1477 -0
  565. package/dist/media/types.js +0 -0
  566. package/dist/media/upload/component.d.ts +9 -0
  567. package/dist/media/upload/component.js +320 -0
  568. package/dist/media/upload/index.d.ts +8 -0
  569. package/dist/media/upload/index.js +1 -0
  570. package/dist/media/video/directive.d.ts +23 -0
  571. package/dist/media/video/directive.js +142 -0
  572. package/dist/media/video/index.d.ts +76 -0
  573. package/dist/media/video/index.js +583 -0
  574. package/dist/media/video/processor/cache.d.ts +55 -0
  575. package/dist/media/video/processor/cache.js +52 -0
  576. package/dist/media/video/processor/index.d.ts +12 -0
  577. package/dist/media/video/processor/index.js +4 -0
  578. package/dist/media/video/processor/streaming.d.ts +26 -0
  579. package/dist/media/video/processor/streaming.js +197 -0
  580. package/dist/media/video/processor/thumbnail.d.ts +35 -0
  581. package/dist/media/video/processor/thumbnail.js +134 -0
  582. package/dist/media/video/processor/transcoder.d.ts +19 -0
  583. package/dist/media/video/processor/transcoder.js +283 -0
  584. package/dist/menubar.d.ts +65 -0
  585. package/dist/menubar.js +99 -0
  586. package/dist/method-spoofing.d.ts +20 -0
  587. package/dist/method-spoofing.js +17 -0
  588. package/dist/middleware.d.ts +112 -0
  589. package/dist/middleware.js +40 -0
  590. package/dist/misc-directives.d.ts +55 -0
  591. package/dist/misc-directives.js +328 -0
  592. package/dist/native-build.d.ts +88 -0
  593. package/dist/native-build.js +575 -0
  594. package/dist/owned-routes.d.ts +42 -0
  595. package/dist/owned-routes.js +26 -0
  596. package/dist/page-action.d.ts +73 -0
  597. package/dist/page-action.js +91 -0
  598. package/dist/page-meta.d.ts +38 -0
  599. package/dist/page-meta.js +16 -0
  600. package/dist/page-response.d.ts +120 -0
  601. package/dist/page-response.js +117 -0
  602. package/dist/parser/directive-parser.d.ts +119 -0
  603. package/dist/parser/directive-parser.js +249 -0
  604. package/dist/parser/expression-parser.d.ts +58 -0
  605. package/dist/parser/expression-parser.js +358 -0
  606. package/dist/parser/index.d.ts +13 -0
  607. package/dist/parser/index.js +23 -0
  608. package/dist/parser/tokenizer.d.ts +77 -0
  609. package/dist/parser/tokenizer.js +534 -0
  610. package/dist/partial-hydration.d.ts +123 -0
  611. package/dist/partial-hydration.js +427 -0
  612. package/dist/performance-utils.d.ts +318 -0
  613. package/dist/performance-utils.js +466 -0
  614. package/dist/placeholder.d.ts +54 -0
  615. package/dist/placeholder.js +35 -0
  616. package/dist/plugin-system.d.ts +301 -0
  617. package/dist/plugin-system.js +214 -0
  618. package/dist/plugin.d.ts +3 -0
  619. package/dist/plugin.js +174 -0
  620. package/dist/precompiler.d.ts +43 -0
  621. package/dist/precompiler.js +670 -0
  622. package/dist/process.d.ts +16 -0
  623. package/dist/process.js +879 -0
  624. package/dist/production-build.d.ts +163 -0
  625. package/dist/production-build.js +596 -0
  626. package/dist/production-builder.d.ts +42 -0
  627. package/dist/production-builder.js +146 -0
  628. package/dist/production-server.d.ts +19 -0
  629. package/dist/production-server.js +208 -0
  630. package/dist/prop-sentinels.d.ts +31 -0
  631. package/dist/prop-sentinels.js +7 -0
  632. package/dist/props.d.ts +216 -0
  633. package/dist/props.js +224 -0
  634. package/dist/public-env.d.ts +29 -0
  635. package/dist/public-env.js +19 -0
  636. package/dist/pwa/audit.d.ts +42 -0
  637. package/dist/pwa/audit.js +255 -0
  638. package/dist/pwa/directives.d.ts +38 -0
  639. package/dist/pwa/directives.js +332 -0
  640. package/dist/pwa/icons.d.ts +42 -0
  641. package/dist/pwa/icons.js +109 -0
  642. package/dist/pwa/index.d.ts +104 -0
  643. package/dist/pwa/index.js +47 -0
  644. package/dist/pwa/inject.d.ts +32 -0
  645. package/dist/pwa/inject.js +102 -0
  646. package/dist/pwa/manifest.d.ts +104 -0
  647. package/dist/pwa/manifest.js +186 -0
  648. package/dist/pwa/offline.d.ts +8 -0
  649. package/dist/pwa/offline.js +259 -0
  650. package/dist/pwa/precache.d.ts +35 -0
  651. package/dist/pwa/precache.js +116 -0
  652. package/dist/pwa/service-worker.d.ts +33 -0
  653. package/dist/pwa/service-worker.js +860 -0
  654. package/dist/pwa/workbox-strategies.d.ts +100 -0
  655. package/dist/pwa/workbox-strategies.js +167 -0
  656. package/dist/pwa/workbox.d.ts +51 -0
  657. package/dist/pwa/workbox.js +382 -0
  658. package/dist/pwa.d.ts +52 -0
  659. package/dist/pwa.js +236 -0
  660. package/dist/reactive-bindings.d.ts +47 -0
  661. package/dist/reactive-bindings.js +268 -0
  662. package/dist/reactive-tracking.d.ts +81 -0
  663. package/dist/reactive-tracking.js +49 -0
  664. package/dist/reactive.d.ts +117 -0
  665. package/dist/reactive.js +593 -0
  666. package/dist/reactivity.d.ts +206 -0
  667. package/dist/reactivity.js +574 -0
  668. package/dist/release.d.ts +1 -0
  669. package/dist/release.js +1 -0
  670. package/dist/render-memo.d.ts +40 -0
  671. package/dist/render-memo.js +33 -0
  672. package/dist/render.d.ts +54 -0
  673. package/dist/render.js +153 -0
  674. package/dist/resolve-stx-targets.d.ts +49 -0
  675. package/dist/resolve-stx-targets.js +38 -0
  676. package/dist/route-middleware.d.ts +2 -0
  677. package/dist/route-middleware.js +17 -0
  678. package/dist/route-types.d.ts +134 -0
  679. package/dist/route-types.js +24 -0
  680. package/dist/router.d.ts +9 -0
  681. package/dist/router.js +9 -0
  682. package/dist/routes.d.ts +6 -0
  683. package/dist/routes.js +14 -0
  684. package/dist/runtime-globals.d.ts +236 -0
  685. package/dist/runtime-globals.js +230 -0
  686. package/dist/runtime-injection.d.ts +113 -0
  687. package/dist/runtime-injection.js +156 -0
  688. package/dist/runtime.d.ts +140 -0
  689. package/dist/runtime.js +94 -0
  690. package/dist/safe-evaluator.d.ts +165 -0
  691. package/dist/safe-evaluator.js +461 -0
  692. package/dist/scaffolding.d.ts +113 -0
  693. package/dist/scaffolding.js +897 -0
  694. package/dist/screenshot.d.ts +22 -0
  695. package/dist/screenshot.js +100 -0
  696. package/dist/script-classifier.d.ts +41 -0
  697. package/dist/script-classifier.js +51 -0
  698. package/dist/script-emit.d.ts +50 -0
  699. package/dist/script-emit.js +11 -0
  700. package/dist/script-json.d.ts +36 -0
  701. package/dist/script-json.js +6 -0
  702. package/dist/script-validation.d.ts +26 -0
  703. package/dist/script-validation.js +179 -0
  704. package/dist/seo.d.ts +225 -0
  705. package/dist/seo.js +486 -0
  706. package/dist/serve.d.ts +44 -0
  707. package/dist/serve.js +233 -0
  708. package/dist/server-bindings.d.ts +39 -0
  709. package/dist/server-bindings.js +171 -0
  710. package/dist/server-components.d.ts +138 -0
  711. package/dist/server-components.js +427 -0
  712. package/dist/sfc-template.d.ts +17 -0
  713. package/dist/sfc-template.js +32 -0
  714. package/dist/signal-processing.d.ts +222 -0
  715. package/dist/signal-processing.js +1081 -0
  716. package/dist/signals-api.d.ts +459 -0
  717. package/dist/signals-api.js +172 -0
  718. package/dist/signals.d.ts +41 -0
  719. package/dist/signals.js +8233 -0
  720. package/dist/site-builder/build.d.ts +18 -0
  721. package/dist/site-builder/build.js +252 -0
  722. package/dist/site-builder/i18n.d.ts +104 -0
  723. package/dist/site-builder/i18n.js +150 -0
  724. package/dist/site-builder/index.d.ts +27 -0
  725. package/dist/site-builder/index.js +16 -0
  726. package/dist/site-builder/robots.d.ts +2 -0
  727. package/dist/site-builder/robots.js +26 -0
  728. package/dist/site-builder/router.d.ts +10 -0
  729. package/dist/site-builder/router.js +27 -0
  730. package/dist/site-builder/seo.d.ts +8 -0
  731. package/dist/site-builder/seo.js +67 -0
  732. package/dist/site-builder/sitemap.d.ts +10 -0
  733. package/dist/site-builder/sitemap.js +26 -0
  734. package/dist/site-builder/theme.d.ts +12 -0
  735. package/dist/site-builder/theme.js +38 -0
  736. package/dist/site-builder/types.d.ts +74 -0
  737. package/dist/site-builder/types.js +0 -0
  738. package/dist/site-url.d.ts +46 -0
  739. package/dist/site-url.js +70 -0
  740. package/dist/slots.d.ts +129 -0
  741. package/dist/slots.js +286 -0
  742. package/dist/source-maps.d.ts +98 -0
  743. package/dist/source-maps.js +350 -0
  744. package/dist/source-signature.d.ts +45 -0
  745. package/dist/source-signature.js +20 -0
  746. package/dist/spa-nav.d.ts +49 -0
  747. package/dist/spa-nav.js +12 -0
  748. package/dist/spa-shell.d.ts +21 -0
  749. package/dist/spa-shell.js +34 -0
  750. package/dist/ssg.d.ts +357 -0
  751. package/dist/ssg.js +94 -0
  752. package/dist/ssr.d.ts +116 -0
  753. package/dist/ssr.js +339 -0
  754. package/dist/state-dir.d.ts +36 -0
  755. package/dist/state-dir.js +22 -0
  756. package/dist/state-management.d.ts +299 -0
  757. package/dist/state-management.js +519 -0
  758. package/dist/store-imports.d.ts +47 -0
  759. package/dist/store-imports.js +16 -0
  760. package/dist/store-loader.d.ts +15 -0
  761. package/dist/store-loader.js +111 -0
  762. package/dist/stores-client.d.ts +70 -0
  763. package/dist/stores-client.js +132 -0
  764. package/dist/story/addons.d.ts +123 -0
  765. package/dist/story/addons.js +261 -0
  766. package/dist/story/analytics.d.ts +163 -0
  767. package/dist/story/analytics.js +235 -0
  768. package/dist/story/auto-stories.d.ts +38 -0
  769. package/dist/story/auto-stories.js +158 -0
  770. package/dist/story/bookmarks.d.ts +102 -0
  771. package/dist/story/bookmarks.js +277 -0
  772. package/dist/story/bun-test.d.ts +45 -0
  773. package/dist/story/bun-test.js +102 -0
  774. package/dist/story/cli.d.ts +132 -0
  775. package/dist/story/cli.js +155 -0
  776. package/dist/story/collect/analyzer.d.ts +33 -0
  777. package/dist/story/collect/analyzer.js +305 -0
  778. package/dist/story/collect/index.d.ts +31 -0
  779. package/dist/story/collect/index.js +27 -0
  780. package/dist/story/collect/parser.d.ts +17 -0
  781. package/dist/story/collect/parser.js +129 -0
  782. package/dist/story/collect/scanner.d.ts +17 -0
  783. package/dist/story/collect/scanner.js +101 -0
  784. package/dist/story/collect/tree.d.ts +24 -0
  785. package/dist/story/collect/tree.js +110 -0
  786. package/dist/story/commands/build.d.ts +19 -0
  787. package/dist/story/commands/build.js +172 -0
  788. package/dist/story/commands/dev.d.ts +23 -0
  789. package/dist/story/commands/dev.js +78 -0
  790. package/dist/story/commands/index.d.ts +9 -0
  791. package/dist/story/commands/index.js +3 -0
  792. package/dist/story/commands/preview.d.ts +21 -0
  793. package/dist/story/commands/preview.js +56 -0
  794. package/dist/story/compiled-output.d.ts +27 -0
  795. package/dist/story/compiled-output.js +151 -0
  796. package/dist/story/composition.d.ts +47 -0
  797. package/dist/story/composition.js +261 -0
  798. package/dist/story/config-watcher.d.ts +33 -0
  799. package/dist/story/config-watcher.js +67 -0
  800. package/dist/story/config.d.ts +29 -0
  801. package/dist/story/config.js +64 -0
  802. package/dist/story/context.d.ts +27 -0
  803. package/dist/story/context.js +27 -0
  804. package/dist/story/controls/index.d.ts +54 -0
  805. package/dist/story/controls/index.js +320 -0
  806. package/dist/story/desktop-preview.d.ts +34 -0
  807. package/dist/story/desktop-preview.js +105 -0
  808. package/dist/story/docs-generator.d.ts +30 -0
  809. package/dist/story/docs-generator.js +187 -0
  810. package/dist/story/errors.d.ts +47 -0
  811. package/dist/story/errors.js +239 -0
  812. package/dist/story/figma-export.d.ts +169 -0
  813. package/dist/story/figma-export.js +224 -0
  814. package/dist/story/generator.d.ts +21 -0
  815. package/dist/story/generator.js +165 -0
  816. package/dist/story/hmr.d.ts +62 -0
  817. package/dist/story/hmr.js +131 -0
  818. package/dist/story/hot-swap.d.ts +46 -0
  819. package/dist/story/hot-swap.js +207 -0
  820. package/dist/story/index.d.ts +99 -0
  821. package/dist/story/index.js +49 -0
  822. package/dist/story/interactions.d.ts +53 -0
  823. package/dist/story/interactions.js +225 -0
  824. package/dist/story/keyboard-shortcuts.d.ts +39 -0
  825. package/dist/story/keyboard-shortcuts.js +345 -0
  826. package/dist/story/output.d.ts +115 -0
  827. package/dist/story/output.js +153 -0
  828. package/dist/story/performance.d.ts +129 -0
  829. package/dist/story/performance.js +252 -0
  830. package/dist/story/presets.d.ts +123 -0
  831. package/dist/story/presets.js +289 -0
  832. package/dist/story/props-validation.d.ts +45 -0
  833. package/dist/story/props-validation.js +215 -0
  834. package/dist/story/renderer.d.ts +69 -0
  835. package/dist/story/renderer.js +209 -0
  836. package/dist/story/search-index.d.ts +47 -0
  837. package/dist/story/search-index.js +106 -0
  838. package/dist/story/search.d.ts +56 -0
  839. package/dist/story/search.js +140 -0
  840. package/dist/story/server.d.ts +31 -0
  841. package/dist/story/server.js +965 -0
  842. package/dist/story/setup.d.ts +56 -0
  843. package/dist/story/setup.js +78 -0
  844. package/dist/story/snapshots.d.ts +65 -0
  845. package/dist/story/snapshots.js +171 -0
  846. package/dist/story/testing.d.ts +83 -0
  847. package/dist/story/testing.js +164 -0
  848. package/dist/story/theme.d.ts +68 -0
  849. package/dist/story/theme.js +170 -0
  850. package/dist/story/ts-css.d.ts +29 -0
  851. package/dist/story/ts-css.js +189 -0
  852. package/dist/story/types.d.ts +342 -0
  853. package/dist/story/types.js +0 -0
  854. package/dist/story/ui/code-panel.d.ts +43 -0
  855. package/dist/story/ui/code-panel.js +175 -0
  856. package/dist/story/ui/controls-panel.d.ts +25 -0
  857. package/dist/story/ui/controls-panel.js +168 -0
  858. package/dist/story/ui/index.d.ts +8 -0
  859. package/dist/story/ui/index.js +4 -0
  860. package/dist/story/ui/navigation.d.ts +55 -0
  861. package/dist/story/ui/navigation.js +250 -0
  862. package/dist/story/ui/preview.d.ts +46 -0
  863. package/dist/story/ui/preview.js +251 -0
  864. package/dist/story/visual-testing.d.ts +45 -0
  865. package/dist/story/visual-testing.js +248 -0
  866. package/dist/streaming.d.ts +238 -0
  867. package/dist/streaming.js +537 -0
  868. package/dist/strict-lint.d.ts +52 -0
  869. package/dist/strict-lint.js +269 -0
  870. package/dist/strip-literals.d.ts +40 -0
  871. package/dist/strip-literals.js +149 -0
  872. package/dist/stx-virtual-ts.d.ts +358 -0
  873. package/dist/stx-virtual-ts.js +670 -0
  874. package/dist/stx.d.ts +924 -0
  875. package/dist/style-scoping.d.ts +42 -0
  876. package/dist/style-scoping.js +82 -0
  877. package/dist/suspense.d.ts +98 -0
  878. package/dist/suspense.js +398 -0
  879. package/dist/teleport.d.ts +31 -0
  880. package/dist/teleport.js +109 -0
  881. package/dist/template-compiler.d.ts +33 -0
  882. package/dist/template-compiler.js +68 -0
  883. package/dist/template-hydrator.d.ts +28 -0
  884. package/dist/template-hydrator.js +95 -0
  885. package/dist/template-tag-balance.d.ts +32 -0
  886. package/dist/template-tag-balance.js +93 -0
  887. package/dist/testing.d.ts +330 -0
  888. package/dist/testing.js +588 -0
  889. package/dist/theme-tokens.d.ts +88 -0
  890. package/dist/theme-tokens.js +71 -0
  891. package/dist/transitions.d.ts +99 -0
  892. package/dist/transitions.js +443 -0
  893. package/dist/ts-css-config.d.ts +71 -0
  894. package/dist/ts-css-config.js +44 -0
  895. package/dist/type-checker.d.ts +85 -0
  896. package/dist/type-checker.js +581 -0
  897. package/dist/typecheck.d.ts +70 -0
  898. package/dist/typecheck.js +365 -0
  899. package/dist/types/component-types.d.ts +248 -0
  900. package/dist/types/component-types.js +0 -0
  901. package/dist/types/config-types.d.ts +938 -0
  902. package/dist/types/config-types.js +0 -0
  903. package/dist/types/context-types.d.ts +122 -0
  904. package/dist/types/context-types.js +0 -0
  905. package/dist/types/csp-types.d.ts +83 -0
  906. package/dist/types/csp-types.js +0 -0
  907. package/dist/types/directive-types.d.ts +315 -0
  908. package/dist/types/directive-types.js +3 -0
  909. package/dist/types/index.d.ts +20 -0
  910. package/dist/types/index.js +1 -0
  911. package/dist/types/pwa-types.d.ts +338 -0
  912. package/dist/types/pwa-types.js +0 -0
  913. package/dist/types.d.ts +27 -0
  914. package/dist/types.js +1 -0
  915. package/dist/typescript-templates.d.ts +156 -0
  916. package/dist/typescript-templates.js +386 -0
  917. package/dist/unresolved-identifiers.d.ts +52 -0
  918. package/dist/unresolved-identifiers.js +148 -0
  919. package/dist/utils.d.ts +112 -0
  920. package/dist/utils.js +1170 -0
  921. package/dist/validator.d.ts +80 -0
  922. package/dist/validator.js +171 -0
  923. package/dist/variable-extractor.d.ts +142 -0
  924. package/dist/variable-extractor.js +1306 -0
  925. package/dist/view-composers.d.ts +171 -0
  926. package/dist/view-composers.js +29 -0
  927. package/dist/virtual-scrolling.d.ts +127 -0
  928. package/dist/virtual-scrolling.js +454 -0
  929. package/dist/visual-editor.d.ts +185 -0
  930. package/dist/visual-editor.js +735 -0
  931. package/dist/visual-testing.d.ts +135 -0
  932. package/dist/visual-testing.js +126 -0
  933. package/dist/vue-template.d.ts +39 -0
  934. package/dist/vue-template.js +476 -0
  935. package/dist/web-components/css-scoping.d.ts +64 -0
  936. package/dist/web-components/css-scoping.js +210 -0
  937. package/dist/web-components/index.d.ts +29 -0
  938. package/dist/web-components/index.js +13 -0
  939. package/dist/web-components/reactive-generator.d.ts +72 -0
  940. package/dist/web-components/reactive-generator.js +484 -0
  941. package/dist/web-components.d.ts +253 -0
  942. package/dist/web-components.js +1466 -0
  943. package/dist/x-element.d.ts +42 -0
  944. package/dist/x-element.js +301 -0
  945. package/package.json +107 -0
  946. package/stx.d.ts +924 -0
@@ -0,0 +1,32 @@
1
+ /**
2
+ * Theme Selector Module
3
+ * Provides UI components for syntax highlighting theme selection
4
+ */
5
+ /**
6
+ * Generate theme selector CSS styles
7
+ * Used in markdown preview pages for syntax highlighting theme selection
8
+ */
9
+ export declare function getThemeSelectorStyles(): string;
10
+ /**
11
+ * Generate theme selector HTML with dropdown
12
+ * @param themeOptions - HTML string of option elements
13
+ */
14
+ export declare function getThemeSelectorHtml(themeOptions: string): string;
15
+ /**
16
+ * Generate theme change JavaScript
17
+ * Handles toggling dark mode based on theme selection
18
+ */
19
+ export declare function getThemeSelectorScript(): string;
20
+ /**
21
+ * Generate frontmatter display HTML
22
+ * @param data - Frontmatter key-value pairs
23
+ */
24
+ export declare function getFrontmatterHtml(data: Record<string, unknown>): string;
25
+ /**
26
+ * Check if a theme name indicates a dark theme
27
+ */
28
+ export declare function isDarkTheme(themeName: string): boolean;
29
+ /**
30
+ * List of dark theme keywords for theme detection
31
+ */
32
+ export declare const DARK_THEME_KEYWORDS: readonly ['dark', 'night', 'monokai', 'dracula', 'nord', 'material', 'ayu', 'one-dark', 'tokyo', 'gruvbox', 'solarized-dark'];
@@ -0,0 +1,111 @@
1
+ export function getThemeSelectorStyles() {
2
+ return `
3
+ /* Theme selector for code blocks */
4
+ .theme-selector {
5
+ margin: 1rem 0;
6
+ padding: 0.5rem;
7
+ background: #f8f8f8;
8
+ border-radius: 4px;
9
+ text-align: right;
10
+ }
11
+ select {
12
+ padding: 0.25rem 0.5rem;
13
+ border-radius: 3px;
14
+ border: 1px solid #ddd;
15
+ }
16
+
17
+ /* Dark mode body styles */
18
+ body.dark-mode {
19
+ background-color: #121212;
20
+ color: #e1e4e8;
21
+ }
22
+
23
+ body.dark-mode h1,
24
+ body.dark-mode h2,
25
+ body.dark-mode h3 {
26
+ color: #e1e4e8;
27
+ border-color: #2f363d;
28
+ }
29
+
30
+ body.dark-mode .theme-selector {
31
+ background: #2f363d;
32
+ color: #e1e4e8;
33
+ }
34
+
35
+ body.dark-mode select {
36
+ background: #24292e;
37
+ color: #e1e4e8;
38
+ border-color: #444;
39
+ }
40
+
41
+ body.dark-mode blockquote {
42
+ background: #24292e;
43
+ color: #e1e4e8;
44
+ }
45
+
46
+ body.dark-mode .frontmatter {
47
+ background: #24292e;
48
+ }
49
+
50
+ body.dark-mode a {
51
+ color: #58a6ff;
52
+ }`;
53
+ }
54
+ export function getThemeSelectorHtml(themeOptions) {
55
+ return `
56
+ <div class="theme-selector">
57
+ Theme:
58
+ <select id="themeSelector" onchange="changeTheme()">
59
+ ${themeOptions}
60
+ </select>
61
+ </div>`;
62
+ }
63
+ export function getThemeSelectorScript() {
64
+ return `
65
+ function changeTheme() {
66
+ const theme = document.getElementById('themeSelector').value;
67
+
68
+ // Toggle dark mode class based on theme
69
+ // Dark themes typically include these keywords in their names
70
+ if (theme.includes('dark') || theme.includes('night') || theme.includes('monokai') ||
71
+ theme.includes('dracula') || theme.includes('nord') || theme.includes('material')) {
72
+ document.body.classList.add('dark-mode');
73
+ }
74
+ else {
75
+ document.body.classList.remove('dark-mode');
76
+ }
77
+ }
78
+
79
+ // Initialize theme on page load
80
+ document.addEventListener('DOMContentLoaded', changeTheme);`;
81
+ }
82
+ export function getFrontmatterHtml(data) {
83
+ if (Object.keys(data).length === 0)
84
+ return "";
85
+ return `
86
+ <div class="frontmatter">
87
+ <h3>Frontmatter</h3>
88
+ ${Object.entries(data).map(([key, value]) => `
89
+ <div class="frontmatter-item">
90
+ <span class="frontmatter-label">${key}:</span>
91
+ <span>${Array.isArray(value) ? value.join(", ") : String(value)}</span>
92
+ </div>`).join("")}
93
+ </div>`;
94
+ }
95
+ export const DARK_THEME_KEYWORDS = [
96
+ "dark",
97
+ "night",
98
+ "monokai",
99
+ "dracula",
100
+ "nord",
101
+ "material",
102
+ "ayu",
103
+ "one-dark",
104
+ "tokyo",
105
+ "gruvbox",
106
+ "solarized-dark"
107
+ ];
108
+ export function isDarkTheme(themeName) {
109
+ const lowerName = themeName.toLowerCase();
110
+ return DARK_THEME_KEYWORDS.some((keyword) => lowerName.includes(keyword));
111
+ }
@@ -0,0 +1,108 @@
1
+ /**
2
+ * Css CSS Generation Module
3
+ * Provides on-the-fly Tailwind CSS generation using Css
4
+ */
5
+ interface CssModule {
6
+ CSSGenerator: new (config: CssConfig) => CSSGenerator;
7
+ config: CssConfig;
8
+ build?: (config: CssConfig) => Promise<CssBuildResult>;
9
+ defaultConfig?: CssConfig;
10
+ /**
11
+ * Css's own extractor. Preferred over the local fallback below —
12
+ * it is the authority on what counts as a class candidate, and it keeps
13
+ * up with syntax this package would otherwise have to mirror by hand.
14
+ */
15
+ extractClasses?: (content: string) => Set<string>;
16
+ }
17
+ interface CssConfig {
18
+ content?: string[];
19
+ output?: string;
20
+ preflight?: boolean;
21
+ minify?: boolean;
22
+ preflights?: unknown[];
23
+ safelist?: string[];
24
+ [key: string]: unknown;
25
+ }
26
+ interface CssBuildResult {
27
+ css: string;
28
+ classes: Set<string>;
29
+ duration: number;
30
+ }
31
+ interface CSSGenerator {
32
+ generate(className: string): void;
33
+ toCSS(preflight: boolean, minify: boolean): string;
34
+ }
35
+ export declare function getCssServeAsset(hash: string): string | undefined;
36
+ /**
37
+ * Lazily load the Css module
38
+ * Returns null if Css is not installed
39
+ */
40
+ export declare function loadCssEngine(): Promise<CssModule | null>;
41
+ /**
42
+ * Reset the Css module cache (useful for testing)
43
+ */
44
+ export declare function resetCssCache(): void;
45
+ export declare function loadCssEngineConfig(cwd: string): Promise<CssConfig | null>;
46
+ /**
47
+ * Resolve the project's css config the way CSS generation does.
48
+ *
49
+ * Priority: the `css` field of `stx.config.ts` (a path, or an inline object
50
+ * that may itself name a path), then auto-discovery of `css.config.ts`.
51
+ *
52
+ * Extracted so the SSG's cache key can be built from the same resolution the
53
+ * stylesheet is. Two copies of this precedence would drift, and a cache key
54
+ * computed from a *different* config than the CSS is worse than no key at all —
55
+ * it would report freshness it has not checked.
56
+ */
57
+ export declare function resolveUserCssConfig(resolveRoot: string): Promise<CssConfig | null>;
58
+ /**
59
+ * A short, stable digest of a resolved css config.
60
+ *
61
+ * Hashes the resolved OBJECT rather than a file, so it covers a config
62
+ * assembled from several files, an inline `css` block in `stx.config.ts`, and a
63
+ * preflight imported from somewhere else — all cases a path mtime would miss.
64
+ *
65
+ * Functions are hashed by source text. `JSON.stringify` drops them entirely,
66
+ * which would make an edit to a function-valued plugin or preflight invisible —
67
+ * the exact silent-staleness this digest exists to prevent. Cycles are replaced
68
+ * rather than thrown on, because throwing here degrades to 'unhashable', and a
69
+ * constant digest is a cache key that never changes.
70
+ */
71
+ export declare function fingerprintConfig(config: unknown): string;
72
+ /**
73
+ * Build Css CSS using the build() API
74
+ * This scans content files and generates CSS for all used classes
75
+ */
76
+ export declare function buildCss(cwd: string): Promise<string>;
77
+ /**
78
+ * Rebuild Css CSS (called on file changes)
79
+ */
80
+ export declare function rebuildCss(cwd: string): Promise<void>;
81
+ /**
82
+ * Get the cached CSS (for serving)
83
+ */
84
+ export declare function getCachedCSS(): string;
85
+ /**
86
+ * Extract all CSS class names from HTML content.
87
+ *
88
+ * This is the FALLBACK. `generateCss` prefers Css's own
89
+ * `extractClasses`, and the difference is not cosmetic: this function only
90
+ * understands `class=""` and quoted literals inside `x-class` / `:class`, so
91
+ * every class that lives in code — a helper returning a class string, an icon
92
+ * keyed by status, anything inside a `<script client>` block — is invisible to
93
+ * it. Those classes silently generate no CSS and the element renders unstyled,
94
+ * which is what drove projects to pre-generate whole icon stylesheets and ship
95
+ * them alongside the page.
96
+ *
97
+ * Keeping a second, weaker copy of Css's extraction rules in this package
98
+ * is what let the two drift apart in the first place. It stays only for the
99
+ * case where the installed Css predates the export.
100
+ */
101
+ export declare function extractClassNames(htmlContent: string): Set<string>;
102
+ export declare function generateCss(htmlContent: string, appDir?: string): Promise<string>;
103
+ /**
104
+ * Inject generated CSS into HTML content
105
+ * Tries to inject before </head>, falls back to <body> or prepends
106
+ */
107
+ export declare function injectCss(htmlContent: string, appDir?: string, serveMode?: boolean): Promise<string>;
108
+ export {};
@@ -0,0 +1,438 @@
1
+ import path from "node:path";
2
+ import { hasLocalConfig } from "bunfig";
3
+ import { mergeCssConfig } from "../ts-css-config.js";
4
+ import { stateDir } from "../state-dir.js";
5
+ import { colors } from "./terminal-colors.js";
6
+ import { contentKey, renderMemo } from "../render-memo.js";
7
+ let cssModule = null, cssLoadAttempted = !1, cachedConfig = null, cachedCSS = "", isBuilding = !1;
8
+ const MAX_CACHE = 256, cssByClassSet = new Map, serveCssByHash = new Map;
9
+ let diskCacheRoot = null, configFingerprint = null;
10
+ function shortHash(input) {
11
+ return Bun.hash(input).toString(16).padStart(16, "0").slice(0, 16);
12
+ }
13
+ function setLruCache(key, value) {
14
+ if (cssByClassSet.has(key))
15
+ cssByClassSet.delete(key);
16
+ else if (cssByClassSet.size >= MAX_CACHE)
17
+ cssByClassSet.delete(cssByClassSet.keys().next().value);
18
+ cssByClassSet.set(key, value);
19
+ }
20
+ function registerServeCss(css) {
21
+ const hash = shortHash(css);
22
+ if (serveCssByHash.has(hash))
23
+ serveCssByHash.delete(hash);
24
+ else if (serveCssByHash.size >= MAX_CACHE)
25
+ serveCssByHash.delete(serveCssByHash.keys().next().value);
26
+ serveCssByHash.set(hash, css);
27
+ return hash;
28
+ }
29
+ export function getCssServeAsset(hash) {
30
+ const css = serveCssByHash.get(hash);
31
+ if (css === void 0)
32
+ return;
33
+ serveCssByHash.delete(hash);
34
+ serveCssByHash.set(hash, css);
35
+ return css;
36
+ }
37
+ async function readDiskCache(key) {
38
+ if (!diskCacheRoot)
39
+ return null;
40
+ try {
41
+ const file = Bun.file(path.join(diskCacheRoot, `cw-${shortHash(key)}.css`));
42
+ if (!await file.exists())
43
+ return null;
44
+ return await file.text();
45
+ } catch {
46
+ return null;
47
+ }
48
+ }
49
+ async function writeDiskCache(key, css) {
50
+ if (!diskCacheRoot)
51
+ return;
52
+ try {
53
+ if (!fs.existsSync(diskCacheRoot))
54
+ fs.mkdirSync(diskCacheRoot, { recursive: !0 });
55
+ await Bun.write(path.join(diskCacheRoot, `cw-${shortHash(key)}.css`), css);
56
+ } catch {}
57
+ }
58
+ async function tryImportCss(importPath) {
59
+ try {
60
+ const pkg = await import(importPath);
61
+ if (pkg && pkg.CSSGenerator)
62
+ return {
63
+ CSSGenerator: pkg.CSSGenerator,
64
+ config: pkg.config,
65
+ build: pkg.build,
66
+ defaultConfig: pkg.defaultConfig,
67
+ extractClasses: pkg.extractClasses
68
+ };
69
+ } catch {}
70
+ return null;
71
+ }
72
+ const ENGINE_PACKAGE_ENTRIES = [
73
+ ["@stacksjs", "ts-css", "dist", "engine", "index.js"],
74
+ ["@stacksjs", "ts-css", "src", "engine", "index.ts"]
75
+ ], ENGINE_SPECIFIERS = [
76
+ "@stacksjs/ts-css/engine",
77
+ "@stacksjs/ts-css/dist/engine/index.js"
78
+ ];
79
+ function findProjectCssPaths() {
80
+ const paths = [];
81
+ let currentDir = process.cwd();
82
+ while (currentDir !== path.dirname(currentDir)) {
83
+ for (const store of ["node_modules", "pantry"])
84
+ for (const entry of ENGINE_PACKAGE_ENTRIES)
85
+ paths.push(path.join(currentDir, store, ...entry));
86
+ currentDir = path.dirname(currentDir);
87
+ }
88
+ return paths;
89
+ }
90
+ function findDevCssPaths() {
91
+ const paths = [], homeDir = process.env.HOME || process.env.USERPROFILE || "", checkouts = [
92
+ homeDir && path.join(homeDir, "Code", "Tools", "ts-css"),
93
+ homeDir && path.join(homeDir, "Code", "Tools", "crosswind"),
94
+ homeDir && path.join(homeDir, "repos", "stacks-org", "ts-css"),
95
+ homeDir && path.join(homeDir, "repos", "stacks-org", "crosswind"),
96
+ path.join(process.cwd(), "..", "ts-css"),
97
+ path.join(process.cwd(), "..", "crosswind")
98
+ ].filter(Boolean);
99
+ for (const checkout of checkouts) {
100
+ paths.push(path.join(checkout, "packages", "toolkit", "dist", "engine", "index.js"));
101
+ paths.push(path.join(checkout, "packages", "toolkit", "src", "engine", "index.ts"));
102
+ }
103
+ if (homeDir)
104
+ paths.push(path.join(homeDir, "Code", "Tools", "stx", "node_modules", "@stacksjs", "ts-css", "dist", "engine", "index.js"));
105
+ return paths;
106
+ }
107
+ export async function loadCssEngine() {
108
+ if (cssLoadAttempted)
109
+ return cssModule;
110
+ cssLoadAttempted = !0;
111
+ try {
112
+ const loadFrom = async (candidates) => {
113
+ for (const candidate of candidates) {
114
+ if (!await Bun.file(candidate).exists())
115
+ continue;
116
+ const result = await tryImportCss(candidate);
117
+ if (result) {
118
+ if (!process.env.STACKS_DEV_QUIET)
119
+ console.log(`${colors.green}[ts-css]${colors.reset} CSS engine loaded from ${path.dirname(path.dirname(candidate))}`);
120
+ return result;
121
+ }
122
+ }
123
+ return null;
124
+ };
125
+ if (process.env.CROSSWIND_SRC) {
126
+ const explicitPath = path.resolve(process.env.CROSSWIND_SRC), explicitModule = await loadFrom([explicitPath]);
127
+ if (!explicitModule)
128
+ throw Error(`CROSSWIND_SRC did not resolve to a Css module: ${explicitPath}`);
129
+ cssModule = explicitModule;
130
+ return cssModule;
131
+ }
132
+ const projectModule = await loadFrom(findProjectCssPaths());
133
+ if (projectModule) {
134
+ cssModule = projectModule;
135
+ return cssModule;
136
+ }
137
+ const importPaths = ENGINE_SPECIFIERS;
138
+ for (const importPath of importPaths) {
139
+ const result = await tryImportCss(importPath);
140
+ if (result) {
141
+ cssModule = result;
142
+ if (!process.env.STACKS_DEV_QUIET)
143
+ console.log(`${colors.green}[ts-css]${colors.reset} CSS engine loaded`);
144
+ return cssModule;
145
+ }
146
+ }
147
+ const devModule = await loadFrom(findDevCssPaths());
148
+ if (devModule) {
149
+ cssModule = devModule;
150
+ return cssModule;
151
+ }
152
+ throw Error("Css CSSGenerator not found in any location");
153
+ } catch {
154
+ console.warn(`${colors.yellow}[ts-css] CSS engine not available, Tailwind styles will not be generated${colors.reset}`);
155
+ console.warn(`${colors.yellow}Run 'bun add @stacksjs/ts-css' to enable CSS generation${colors.reset}`);
156
+ return null;
157
+ }
158
+ }
159
+ export function resetCssCache() {
160
+ cssByPage.clear();
161
+ cssModule = null;
162
+ cssLoadAttempted = !1;
163
+ cachedConfig = null;
164
+ cachedCSS = "";
165
+ cssByClassSet.clear();
166
+ serveCssByHash.clear();
167
+ configFingerprint = null;
168
+ }
169
+ let warnedLegacyConfigName = !1;
170
+ export async function loadCssEngineConfig(cwd) {
171
+ try {
172
+ const name = hasLocalConfig({ name: "css", cwd }) ? "css" : hasLocalConfig({ name: "crosswind", cwd }) ? "crosswind" : null;
173
+ if (!name)
174
+ return null;
175
+ if (name === "crosswind" && !process.env.STACKS_DEV_QUIET && !warnedLegacyConfigName) {
176
+ warnedLegacyConfigName = !0;
177
+ console.warn(`${colors.yellow}[ts-css]${colors.reset} Reading the CSS config from a \`crosswind\` file. Rename it to \`css\` (e.g. config/css.ts) \u2014 the old name is deprecated.`);
178
+ }
179
+ const { loadConfigWithResult } = await import("bunfig"), result = await loadConfigWithResult({
180
+ name,
181
+ cwd,
182
+ defaultConfig: {},
183
+ checkEnv: !1,
184
+ verbose: !1
185
+ });
186
+ if (!result?.path || !result.config || Object.keys(result.config).length === 0)
187
+ return null;
188
+ const rel = path.relative(cwd, result.path);
189
+ if (!process.env.STACKS_DEV_QUIET)
190
+ console.log(`${colors.green}[ts-css]${colors.reset} Loaded config from ${rel || result.path}`);
191
+ return result.config;
192
+ } catch (error) {
193
+ if (error instanceof Error && error.name === "ConfigNotFoundError")
194
+ return null;
195
+ console.warn(`${colors.yellow}[ts-css]${colors.reset} Failed to load css config:`, error instanceof Error ? error.message : error);
196
+ return null;
197
+ }
198
+ }
199
+ export async function resolveUserCssConfig(resolveRoot) {
200
+ let stxCssConfig = null;
201
+ try {
202
+ const { loadStxConfig } = await import("../config.js"), stxConfig = await loadStxConfig(resolveRoot);
203
+ if (stxConfig.css)
204
+ if (typeof stxConfig.css === "string") {
205
+ const configPath = path.isAbsolute(stxConfig.css) ? stxConfig.css : path.resolve(resolveRoot, stxConfig.css);
206
+ if (await Bun.file(configPath).exists()) {
207
+ const mod = await import(configPath);
208
+ stxCssConfig = mod.default || mod;
209
+ console.log(`${colors.green}[ts-css]${colors.reset} Loaded config from stx.config.ts \u2192 ${stxConfig.css}`);
210
+ }
211
+ } else {
212
+ stxCssConfig = {
213
+ ...stxConfig.css,
214
+ content: stxConfig.css.content || [],
215
+ preflight: stxConfig.css.preflight ?? !0,
216
+ minify: stxConfig.css.minify ?? !1
217
+ };
218
+ if (stxConfig.css.config) {
219
+ const configPath = path.isAbsolute(stxConfig.css.config) ? stxConfig.css.config : path.resolve(resolveRoot, stxConfig.css.config);
220
+ if (await Bun.file(configPath).exists()) {
221
+ const mod = await import(configPath);
222
+ stxCssConfig = { ...mod.default || mod, ...stxCssConfig };
223
+ }
224
+ }
225
+ console.log(`${colors.green}[ts-css]${colors.reset} Using inline CSS config from stx.config.ts`);
226
+ }
227
+ } catch {}
228
+ return stxCssConfig || await loadCssEngineConfig(resolveRoot);
229
+ }
230
+ export function fingerprintConfig(config) {
231
+ try {
232
+ const seen = new WeakSet;
233
+ return shortHash(JSON.stringify(config ?? {}, (_key, value) => {
234
+ if (typeof value === "function")
235
+ return `[fn]${String(value)}`;
236
+ if (typeof value === "object" && value !== null) {
237
+ if (seen.has(value))
238
+ return "[circular]";
239
+ seen.add(value);
240
+ }
241
+ return value;
242
+ }) ?? "");
243
+ } catch {
244
+ return "unhashable";
245
+ }
246
+ }
247
+ export async function buildCss(cwd) {
248
+ if (isBuilding)
249
+ return cachedCSS;
250
+ isBuilding = !0;
251
+ try {
252
+ const hw = await loadCssEngine();
253
+ if (!hw || !hw.build) {
254
+ isBuilding = !1;
255
+ return "";
256
+ }
257
+ if (!cachedConfig)
258
+ cachedConfig = await loadCssEngineConfig(cwd);
259
+ if (!cachedConfig) {
260
+ isBuilding = !1;
261
+ return "";
262
+ }
263
+ const defaultTheme = hw.defaultConfig?.theme || {}, userTheme = cachedConfig.theme || {}, config = {
264
+ ...hw.defaultConfig,
265
+ ...cachedConfig,
266
+ theme: {
267
+ ...defaultTheme,
268
+ ...userTheme,
269
+ extend: {
270
+ ...defaultTheme.extend || {},
271
+ ...userTheme.extend || {}
272
+ }
273
+ }
274
+ }, start = performance.now(), result = await hw.build(config), duration = performance.now() - start;
275
+ cachedCSS = result.css;
276
+ console.log(`${colors.cyan}[ts-css]${colors.reset} Built ${result.classes.size} classes in ${duration.toFixed(1)}ms`);
277
+ if (config.output) {
278
+ const outputPath = path.isAbsolute(config.output) ? config.output : path.join(cwd, config.output), outputDir = path.dirname(outputPath);
279
+ if (!fs.existsSync(outputDir))
280
+ fs.mkdirSync(outputDir, { recursive: !0 });
281
+ await Bun.write(outputPath, result.css);
282
+ }
283
+ isBuilding = !1;
284
+ return result.css;
285
+ } catch (error) {
286
+ console.error(`${colors.red}[ts-css]${colors.reset} Build error:`, error);
287
+ isBuilding = !1;
288
+ return cachedCSS;
289
+ }
290
+ }
291
+ export async function rebuildCss(cwd) {
292
+ cachedConfig = null;
293
+ await buildCss(cwd);
294
+ }
295
+ export function getCachedCSS() {
296
+ return cachedCSS;
297
+ }
298
+ export function extractClassNames(htmlContent) {
299
+ const classes = new Set, classRegex = /class\s*=\s*["']([^"']+)["']/gi;
300
+ let match = classRegex.exec(htmlContent);
301
+ while (match !== null) {
302
+ for (const cls of match[1].split(/\s+/))
303
+ if (cls.trim())
304
+ classes.add(cls.trim());
305
+ match = classRegex.exec(htmlContent);
306
+ }
307
+ const dynRegex = /(?:x-class|:class)\s*=\s*"([^"]+)"/gi;
308
+ let dynMatch = dynRegex.exec(htmlContent);
309
+ while (dynMatch !== null) {
310
+ const strLiterals = dynMatch[1].match(/'([^']+)'/g);
311
+ if (strLiterals) {
312
+ for (const lit of strLiterals)
313
+ for (const cls of lit.slice(1, -1).split(/\s+/))
314
+ if (cls.trim())
315
+ classes.add(cls.trim());
316
+ }
317
+ dynMatch = dynRegex.exec(htmlContent);
318
+ }
319
+ return classes;
320
+ }
321
+ const cssByPage = renderMemo(64);
322
+ export async function generateCss(htmlContent, appDir) {
323
+ const remembered = cssByPage.get(contentKey(htmlContent, appDir, configFingerprint));
324
+ if (remembered !== void 0)
325
+ return remembered;
326
+ const css = await generateCssUncached(htmlContent, appDir);
327
+ if (css)
328
+ cssByPage.set(contentKey(htmlContent, appDir, configFingerprint), css);
329
+ return css;
330
+ }
331
+ async function generateCssUncached(htmlContent, appDir) {
332
+ try {
333
+ const hw = await loadCssEngine();
334
+ if (!hw)
335
+ return "";
336
+ const classes = typeof hw.extractClasses === "function" ? hw.extractClasses(htmlContent) : extractClassNames(htmlContent);
337
+ if (classes.size === 0)
338
+ return "";
339
+ const resolveRoot = appDir ? path.resolve(appDir) : process.cwd();
340
+ if (!diskCacheRoot)
341
+ diskCacheRoot = stateDir(resolveRoot, "cache");
342
+ const classSetKey = [...classes].sort().join(" "), cacheKey = `${configFingerprint || "default"}::${classSetKey}`, cached = cssByClassSet.get(cacheKey);
343
+ if (cached !== void 0) {
344
+ setLruCache(cacheKey, cached);
345
+ return cached;
346
+ }
347
+ const onDisk = await readDiskCache(cacheKey);
348
+ if (onDisk !== null) {
349
+ setLruCache(cacheKey, onDisk);
350
+ return onDisk;
351
+ }
352
+ if (!cachedConfig) {
353
+ cachedConfig = await resolveUserCssConfig(resolveRoot);
354
+ configFingerprint = fingerprintConfig(cachedConfig);
355
+ }
356
+ const baseConfig = hw.defaultConfig || hw.config, userConfig = cachedConfig || {}, merged = mergeCssConfig(baseConfig, userConfig), { safelist, includePreflight, minify, tokenCSS } = merged, cssConfig = merged.config, generator = new hw.CSSGenerator(cssConfig);
357
+ for (const cls of safelist)
358
+ generator.generate(cls);
359
+ for (const className of classes)
360
+ generator.generate(className);
361
+ let css = generator.toCSS(includePreflight, minify);
362
+ const shortcuts = cssConfig.shortcuts || userConfig.shortcuts || {};
363
+ for (const [name, classStr] of Object.entries(shortcuts)) {
364
+ if (!classes.has(name) && !safelist.includes(name))
365
+ continue;
366
+ const parts = classStr.split(/\s+/).filter(Boolean);
367
+ for (const p of parts)
368
+ generator.generate(p);
369
+ }
370
+ css = generator.toCSS(includePreflight, minify);
371
+ const cssLines = css.split(`
372
+ `);
373
+ for (const [name, classStr] of Object.entries(shortcuts)) {
374
+ if (!classes.has(name) && !safelist.includes(name))
375
+ continue;
376
+ const parts = classStr.split(/\s+/).filter(Boolean), decls = [], darkDecls = [];
377
+ for (const cls of parts) {
378
+ const isDark = cls.startsWith("dark:"), selectorTarget = `.${(isDark ? cls.slice(5) : cls).replace(/\//g, "\\/").replace(/:/g, "\\:").replace(/\./g, "\\.").replace(/\[/g, "\\[").replace(/\]/g, "\\]").replace(/%/g, "\\%")}`;
379
+ for (let i = 0;i < cssLines.length; i++) {
380
+ const line = cssLines[i].trim();
381
+ if (line === `${selectorTarget} {` || line.startsWith(`${selectorTarget} {`)) {
382
+ let j = i, ruleContent = "";
383
+ while (j < cssLines.length) {
384
+ ruleContent += cssLines[j];
385
+ if (cssLines[j].includes("}"))
386
+ break;
387
+ j++;
388
+ }
389
+ const declMatch = ruleContent.match(/\{([^}]+)\}/);
390
+ if (declMatch)
391
+ if (isDark)
392
+ darkDecls.push(declMatch[1].trim());
393
+ else
394
+ decls.push(declMatch[1].trim());
395
+ break;
396
+ }
397
+ }
398
+ }
399
+ if (decls.length)
400
+ css += `
401
+ .${name} { ${decls.join(" ")} }`;
402
+ if (darkDecls.length)
403
+ css += `
404
+ @media (prefers-color-scheme: dark) { .dark .${name} { ${darkDecls.join(" ")} } }`;
405
+ }
406
+ css = tokenCSS + css;
407
+ setLruCache(cacheKey, css);
408
+ writeDiskCache(cacheKey, css);
409
+ return css;
410
+ } catch (error) {
411
+ console.warn("Failed to generate Css CSS:", error);
412
+ return "";
413
+ }
414
+ }
415
+ export async function injectCss(htmlContent, appDir, serveMode = !1) {
416
+ const css = await generateCss(htmlContent, appDir);
417
+ if (!css)
418
+ return htmlContent;
419
+ const assetTag = serveMode ? `<link data-css="generated" rel="stylesheet" href="/_stx/css.${registerServeCss(css)}.css">` : `<style data-css="generated">
420
+ ${css}
421
+ </style>`, existing = /(?:<style\b[^>]*\bdata-css=(?:"generated"|'generated')[^>]*>[\s\S]*?<\/style>|<link\b[^>]*\bdata-css=(?:"generated"|'generated')[^>]*>)/g;
422
+ if (existing.test(htmlContent)) {
423
+ let placed = !1;
424
+ return htmlContent.replace(existing, () => {
425
+ if (placed)
426
+ return "";
427
+ placed = !0;
428
+ return assetTag;
429
+ });
430
+ }
431
+ if (htmlContent.includes("</head>"))
432
+ return htmlContent.replace("</head>", `${assetTag}
433
+ </head>`);
434
+ if (htmlContent.includes("<body"))
435
+ return htmlContent.replace(/<body([^>]*)>/, `<body$1>
436
+ ${assetTag}`);
437
+ return assetTag + htmlContent;
438
+ }