@stacksjs/stx 0.2.95 → 0.2.97

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 (612) hide show
  1. package/dist/a11y.js +598 -2
  2. package/dist/analytics.js +159 -2
  3. package/dist/analyzer.js +240 -2
  4. package/dist/animation.js +688 -2
  5. package/dist/app-shell.js +220 -2
  6. package/dist/app.js +79 -2
  7. package/dist/assets.js +155 -2
  8. package/dist/ast.js +630 -2
  9. package/dist/async-components.js +428 -2
  10. package/dist/auth.js +12 -2
  11. package/dist/broadcasting.js +102 -2
  12. package/dist/browser-composables.js +565 -2
  13. package/dist/build-assets.js +29 -2
  14. package/dist/build-mode-detector.js +50 -2
  15. package/dist/build-optimizer.js +433 -2
  16. package/dist/build-views.js +180 -2
  17. package/dist/build.js +33 -2
  18. package/dist/builtins/drawer.js +37 -2
  19. package/dist/builtins/escape.js +3 -2
  20. package/dist/builtins/icon.js +83 -2
  21. package/dist/builtins/index.js +34 -2
  22. package/dist/builtins/modal.js +38 -2
  23. package/dist/builtins/safe-image.js +51 -2
  24. package/dist/builtins/stx-image.js +200 -2
  25. package/dist/builtins/stx-link.js +41 -2
  26. package/dist/builtins/stx-loading-indicator.js +35 -2
  27. package/dist/builtins/suspense.js +24 -2
  28. package/dist/builtins/toast.js +42 -2
  29. package/dist/builtins/tooltip.js +106 -2
  30. package/dist/builtins/transition-group.js +22 -2
  31. package/dist/bundle-analyzer/collector.js +233 -2
  32. package/dist/bundle-analyzer/index.js +82 -2
  33. package/dist/bundle-analyzer/report.js +318 -2
  34. package/dist/bundle-analyzer/treemap.js +594 -2
  35. package/dist/caching.js +131 -2
  36. package/dist/cli.js +11317 -10982
  37. package/dist/client/directive.js +14 -2
  38. package/dist/client/index.js +2 -2
  39. package/dist/client-helpers.js +312 -2
  40. package/dist/client-script-bundler.js +216 -6
  41. package/dist/client-script.js +754 -2
  42. package/dist/client.js +73 -4
  43. package/dist/component-hmr.js +585 -2
  44. package/dist/component-library.d.ts +6 -0
  45. package/dist/component-library.js +683 -0
  46. package/dist/component-processing.js +613 -2
  47. package/dist/component-registry.js +90 -2
  48. package/dist/component-renderer.js +660 -2
  49. package/dist/components.js +213 -2
  50. package/dist/composables/index.js +220 -2
  51. package/dist/composables/use-battery.js +101 -2
  52. package/dist/composables/use-broadcast-channel.js +80 -2
  53. package/dist/composables/use-channel.js +124 -2
  54. package/dist/composables/use-clipboard.js +79 -2
  55. package/dist/composables/use-color-mode.js +131 -2
  56. package/dist/composables/use-cookie.js +86 -2
  57. package/dist/composables/use-device-orientation.js +181 -2
  58. package/dist/composables/use-event-listener.js +27 -2
  59. package/dist/composables/use-event-source.js +166 -2
  60. package/dist/composables/use-eye-dropper.js +142 -2
  61. package/dist/composables/use-fetch.js +223 -2
  62. package/dist/composables/use-fullscreen.js +110 -2
  63. package/dist/composables/use-geolocation.js +101 -2
  64. package/dist/composables/use-idle.js +182 -2
  65. package/dist/composables/use-intersection-observer.js +168 -2
  66. package/dist/composables/use-keyboard.js +224 -2
  67. package/dist/composables/use-media-query.js +62 -2
  68. package/dist/composables/use-meta.js +48 -2
  69. package/dist/composables/use-mouse.js +286 -2
  70. package/dist/composables/use-mutation-observer.js +129 -2
  71. package/dist/composables/use-network.js +85 -2
  72. package/dist/composables/use-notification.js +94 -2
  73. package/dist/composables/use-permissions.js +132 -2
  74. package/dist/composables/use-query.js +0 -1
  75. package/dist/composables/use-resize-observer.js +157 -2
  76. package/dist/composables/use-router.js +51 -2
  77. package/dist/composables/use-share.js +104 -2
  78. package/dist/composables/use-speech.js +294 -2
  79. package/dist/composables/use-storage.js +130 -2
  80. package/dist/composables/use-text-selection.js +205 -4
  81. package/dist/composables/use-timer.js +183 -2
  82. package/dist/composables/use-utilities.js +176 -2
  83. package/dist/composables/use-wake-lock.js +122 -2
  84. package/dist/composables/use-websocket.js +165 -2
  85. package/dist/composables/use-window.js +163 -2
  86. package/dist/composables.js +552 -2
  87. package/dist/composition-api.js +190 -2
  88. package/dist/computed.js +376 -8
  89. package/dist/conditionals.js +599 -2
  90. package/dist/config.js +751 -2
  91. package/dist/craft-bridge.js +432 -2
  92. package/dist/craft-compiler.js +810 -2
  93. package/dist/craft-components.js +945 -2
  94. package/dist/craft-entry.js +5 -2
  95. package/dist/craft-ssr.js +559 -2
  96. package/dist/csp.js +220 -2
  97. package/dist/csrf.js +38 -2
  98. package/dist/custom-directives.js +136 -2
  99. package/dist/defer.js +156 -2
  100. package/dist/deploy/config-generators.js +214 -2
  101. package/dist/deploy/index.js +203 -2
  102. package/dist/deploy/netlify.js +167 -2
  103. package/dist/dev-server/crosswind.js +379 -2
  104. package/dist/dev-server/index.js +7 -2
  105. package/dist/dev-server/keyboard-shortcuts.js +81 -2
  106. package/dist/dev-server/native-window.js +91 -2
  107. package/dist/dev-server/port-utils.js +40 -2
  108. package/dist/dev-server/serve-app.js +682 -2
  109. package/dist/dev-server/serve-file.js +439 -2
  110. package/dist/dev-server/serve-markdown.js +281 -2
  111. package/dist/dev-server/serve-multi.js +579 -2
  112. package/dist/dev-server/terminal-colors.js +45 -2
  113. package/dist/dev-server/theme-selector.js +111 -2
  114. package/dist/dev-server/types.js +43 -2
  115. package/dist/dev-server.js +4 -2
  116. package/dist/devtools.js +462 -18
  117. package/dist/directive-api.js +355 -2
  118. package/dist/docs.js +567 -2
  119. package/dist/doctor.js +123 -2
  120. package/dist/document-shell.js +105 -2
  121. package/dist/dynamic-components.js +78 -2
  122. package/dist/edge-runtime.js +539 -2
  123. package/dist/env.js +9 -2
  124. package/dist/error-boundaries.js +62 -12
  125. package/dist/error-handling.js +1 -2
  126. package/dist/errors/codes.js +97 -2
  127. package/dist/errors/formatter.js +196 -2
  128. package/dist/errors/index.js +44 -2
  129. package/dist/errors/logger.js +250 -2
  130. package/dist/errors/sanitizer.js +181 -2
  131. package/dist/errors/types.js +86 -2
  132. package/dist/events.js +382 -2
  133. package/dist/expressions.js +650 -2
  134. package/dist/formatter.js +265 -2
  135. package/dist/forms-validation.js +510 -4
  136. package/dist/forms.js +709 -2
  137. package/dist/head.js +224 -2
  138. package/dist/heatmap.js +566 -2
  139. package/dist/hot-reload.js +367 -2
  140. package/dist/html-masking.js +73 -2
  141. package/dist/hydration-runtime.js +195 -2
  142. package/dist/hydration.js +654 -2
  143. package/dist/i18n.js +633 -2
  144. package/dist/image-optimization/auto-sibling.js +88 -2
  145. package/dist/image-optimization/build-plugin.js +241 -2
  146. package/dist/image-optimization/component.js +244 -2
  147. package/dist/image-optimization/directive.js +203 -2
  148. package/dist/image-optimization/index.js +54 -2
  149. package/dist/image-optimization/processor.js +262 -2
  150. package/dist/image-optimization/serve.js +102 -2
  151. package/dist/includes.js +733 -2
  152. package/dist/index.d.ts +1 -0
  153. package/dist/index.js +134 -2
  154. package/dist/init.js +505 -2
  155. package/dist/inline-assets.js +82 -2
  156. package/dist/interactive.js +383 -2
  157. package/dist/internal-markdown.js +141 -2
  158. package/dist/island-chunking.js +52 -2
  159. package/dist/js-ts.js +57 -2
  160. package/dist/jsx-runtime.js +289 -2
  161. package/dist/keep-alive.js +421 -2
  162. package/dist/lazy-loader.js +245 -2
  163. package/dist/loading-indicator.js +322 -2
  164. package/dist/loops.js +643 -2
  165. package/dist/manifest.js +31 -2
  166. package/dist/markdown.js +68 -2
  167. package/dist/media/client/blur-up.js +217 -2
  168. package/dist/media/client/index.js +53 -2
  169. package/dist/media/client/lazy-load.js +283 -2
  170. package/dist/media/client/upload-handler.js +354 -2
  171. package/dist/media/image/component.js +574 -2
  172. package/dist/media/image/directive.js +160 -2
  173. package/dist/media/image/editing.js +193 -2
  174. package/dist/media/image/index.js +80 -2
  175. package/dist/media/image/placeholder.js +188 -2
  176. package/dist/media/image/processor/cache.js +51 -2
  177. package/dist/media/image/processor/index.js +3 -2
  178. package/dist/media/image/processor/optimizer.js +202 -2
  179. package/dist/media/image/processor/responsive.js +162 -2
  180. package/dist/media/image/srcset.js +194 -2
  181. package/dist/media/index.js +198 -2
  182. package/dist/media/manager/embed.js +253 -2
  183. package/dist/media/protected/component.js +235 -2
  184. package/dist/media/protected/index.js +20 -2
  185. package/dist/media/protected/signature.js +205 -2
  186. package/dist/media/shared/cache.js +132 -2
  187. package/dist/media/shared/hash.js +35 -2
  188. package/dist/media/shared/index.js +2 -2
  189. package/dist/media/types.js +0 -1
  190. package/dist/media/upload/component.js +320 -2
  191. package/dist/media/upload/index.js +1 -2
  192. package/dist/media/video/directive.js +142 -2
  193. package/dist/media/video/index.js +583 -2
  194. package/dist/media/video/processor/cache.js +52 -2
  195. package/dist/media/video/processor/index.js +4 -2
  196. package/dist/media/video/processor/streaming.js +197 -2
  197. package/dist/media/video/processor/thumbnail.js +134 -2
  198. package/dist/media/video/processor/transcoder.js +283 -2
  199. package/dist/method-spoofing.js +17 -2
  200. package/dist/middleware.js +40 -2
  201. package/dist/misc-directives.js +222 -2
  202. package/dist/native-build.js +511 -2
  203. package/dist/parser/directive-parser.js +239 -2
  204. package/dist/parser/expression-parser.js +358 -2
  205. package/dist/parser/index.js +23 -2
  206. package/dist/parser/tokenizer.js +534 -2
  207. package/dist/partial-hydration.js +427 -2
  208. package/dist/performance-utils.js +430 -2
  209. package/dist/placeholder.js +35 -2
  210. package/dist/plugin-system.js +214 -2
  211. package/dist/plugin.js +173 -2
  212. package/dist/precompiler.js +660 -81
  213. package/dist/process.js +711 -2
  214. package/dist/production-build.js +596 -2
  215. package/dist/production-builder.js +132 -2
  216. package/dist/production-server.js +188 -2
  217. package/dist/props.js +224 -2
  218. package/dist/public-env.js +19 -2
  219. package/dist/pwa/audit.js +255 -2
  220. package/dist/pwa/directives.js +332 -2
  221. package/dist/pwa/icons.js +109 -2
  222. package/dist/pwa/index.js +47 -2
  223. package/dist/pwa/inject.js +102 -2
  224. package/dist/pwa/manifest.js +186 -2
  225. package/dist/pwa/offline.js +259 -2
  226. package/dist/pwa/precache.js +116 -2
  227. package/dist/pwa/service-worker.js +860 -2
  228. package/dist/pwa/workbox-strategies.js +167 -2
  229. package/dist/pwa/workbox.js +382 -2
  230. package/dist/pwa.js +427 -427
  231. package/dist/reactive-bindings.js +266 -2
  232. package/dist/reactive.js +569 -2
  233. package/dist/reactivity.js +559 -2
  234. package/dist/release.js +1 -2
  235. package/dist/render.js +165 -2
  236. package/dist/route-middleware.js +17 -2
  237. package/dist/router.js +9 -2
  238. package/dist/routes.js +14 -2
  239. package/dist/runtime-injection.js +120 -2
  240. package/dist/runtime.js +94 -2
  241. package/dist/safe-evaluator.js +444 -2
  242. package/dist/scaffolding.js +897 -2
  243. package/dist/screenshot.js +87 -2
  244. package/dist/script-classifier.js +32 -2
  245. package/dist/script-validation.js +158 -2
  246. package/dist/seo.js +457 -2
  247. package/dist/serve.js +237 -2
  248. package/dist/server-bindings.js +108 -2
  249. package/dist/server-components.js +338 -11
  250. package/dist/signal-processing.js +946 -2
  251. package/dist/signals-api.js +154 -2
  252. package/dist/signals.js +5287 -2
  253. package/dist/site-builder/build.js +224 -2
  254. package/dist/site-builder/i18n.js +140 -2
  255. package/dist/site-builder/index.js +15 -2
  256. package/dist/site-builder/robots.js +26 -2
  257. package/dist/site-builder/router.js +27 -2
  258. package/dist/site-builder/seo.js +36 -2
  259. package/dist/site-builder/sitemap.js +26 -2
  260. package/dist/site-builder/theme.js +33 -2
  261. package/dist/site-builder/types.js +0 -1
  262. package/dist/slots.js +201 -2
  263. package/dist/source-maps.js +350 -2
  264. package/dist/spa-shell.js +34 -2
  265. package/dist/ssg.js +389 -389
  266. package/dist/ssr.js +355 -2
  267. package/dist/state-management.js +533 -2
  268. package/dist/store-imports.js +13 -2
  269. package/dist/store-loader.js +72 -5
  270. package/dist/stores-client.js +132 -2
  271. package/dist/story/addons.js +261 -2
  272. package/dist/story/analytics.js +235 -2
  273. package/dist/story/auto-stories.js +158 -2
  274. package/dist/story/bookmarks.js +277 -2
  275. package/dist/story/bun-test.js +102 -2
  276. package/dist/story/cli.js +155 -2
  277. package/dist/story/collect/analyzer.js +305 -2
  278. package/dist/story/collect/index.js +27 -2
  279. package/dist/story/collect/parser.js +129 -2
  280. package/dist/story/collect/scanner.js +101 -2
  281. package/dist/story/collect/tree.js +110 -2
  282. package/dist/story/commands/build.js +172 -2
  283. package/dist/story/commands/dev.js +78 -2
  284. package/dist/story/commands/index.js +3 -2
  285. package/dist/story/commands/preview.js +56 -2
  286. package/dist/story/compiled-output.js +151 -2
  287. package/dist/story/composition.js +261 -2
  288. package/dist/story/config-watcher.js +67 -2
  289. package/dist/story/config.js +64 -2
  290. package/dist/story/context.js +27 -2
  291. package/dist/story/controls/index.js +320 -2
  292. package/dist/story/crosswind.js +189 -2
  293. package/dist/story/desktop-preview.js +105 -2
  294. package/dist/story/docs-generator.js +186 -2
  295. package/dist/story/errors.js +239 -2
  296. package/dist/story/figma-export.js +224 -2
  297. package/dist/story/generator.js +165 -2
  298. package/dist/story/hmr.js +131 -2
  299. package/dist/story/hot-swap.js +207 -2
  300. package/dist/story/index.js +49 -2
  301. package/dist/story/interactions.js +225 -2
  302. package/dist/story/keyboard-shortcuts.js +345 -2
  303. package/dist/story/output.js +153 -2
  304. package/dist/story/performance.js +252 -2
  305. package/dist/story/presets.js +289 -2
  306. package/dist/story/props-validation.js +215 -2
  307. package/dist/story/renderer.js +209 -2
  308. package/dist/story/search-index.js +106 -2
  309. package/dist/story/search.js +140 -2
  310. package/dist/story/server.js +965 -2
  311. package/dist/story/setup.js +78 -2
  312. package/dist/story/snapshots.js +170 -2
  313. package/dist/story/testing.js +163 -2
  314. package/dist/story/theme.js +170 -2
  315. package/dist/story/types.js +0 -2
  316. package/dist/story/ui/code-panel.js +175 -2
  317. package/dist/story/ui/controls-panel.js +168 -2
  318. package/dist/story/ui/index.js +4 -2
  319. package/dist/story/ui/navigation.js +250 -2
  320. package/dist/story/ui/preview.js +251 -2
  321. package/dist/story/visual-testing.js +247 -2
  322. package/dist/streaming.js +537 -2
  323. package/dist/strict-lint.js +288 -2
  324. package/dist/style-scoping.js +50 -2
  325. package/dist/suspense.js +398 -2
  326. package/dist/teleport.js +109 -2
  327. package/dist/template-compiler.js +63 -2
  328. package/dist/template-hydrator.js +82 -2
  329. package/dist/template-tag-balance.js +93 -2
  330. package/dist/testing.js +581 -2
  331. package/dist/transitions.js +443 -2
  332. package/dist/type-checker.js +581 -2
  333. package/dist/types/component-types.d.ts +54 -0
  334. package/dist/types/component-types.js +0 -1
  335. package/dist/types/config-types.js +0 -1
  336. package/dist/types/context-types.js +0 -1
  337. package/dist/types/csp-types.js +0 -1
  338. package/dist/types/directive-types.js +3 -2
  339. package/dist/types/index.d.ts +5 -0
  340. package/dist/types/index.js +1 -2
  341. package/dist/types/pwa-types.js +0 -1
  342. package/dist/types.js +1 -2
  343. package/dist/typescript-templates.js +386 -4
  344. package/dist/utils.js +942 -2
  345. package/dist/validator.js +171 -2
  346. package/dist/variable-extractor.js +1094 -2
  347. package/dist/view-composers.js +29 -2
  348. package/dist/virtual-scrolling.js +454 -2
  349. package/dist/visual-editor.js +688 -28
  350. package/dist/vue-template.js +475 -2
  351. package/dist/web-components/css-scoping.js +177 -2
  352. package/dist/web-components/index.js +13 -2
  353. package/dist/web-components/reactive-generator.js +121 -56
  354. package/dist/web-components.js +1447 -2
  355. package/dist/x-element.js +17 -5
  356. package/package.json +5 -6
  357. package/dist/chunk-04n64bnt.js +0 -5
  358. package/dist/chunk-06w68hyg.js +0 -7
  359. package/dist/chunk-07y6m5xx.js +0 -3
  360. package/dist/chunk-095s3972.js +0 -99
  361. package/dist/chunk-09k66d8a.js +0 -3
  362. package/dist/chunk-0a61y94n.js +0 -24
  363. package/dist/chunk-0b9w2w1y.js +0 -1
  364. package/dist/chunk-0dx4q6yq.js +0 -3
  365. package/dist/chunk-0dz85jrp.js +0 -3
  366. package/dist/chunk-0jd0pndq.js +0 -3
  367. package/dist/chunk-0p0nyq50.js +0 -6
  368. package/dist/chunk-0p1h3p3w.js +0 -3
  369. package/dist/chunk-0qakwen3.js +0 -1
  370. package/dist/chunk-0qnz93q2.js +0 -3
  371. package/dist/chunk-10debkj5.js +0 -71
  372. package/dist/chunk-15nesxgt.js +0 -5224
  373. package/dist/chunk-1sr54zp8.js +0 -3
  374. package/dist/chunk-1v49fwr5.js +0 -3
  375. package/dist/chunk-1xz0w746.js +0 -1539
  376. package/dist/chunk-1z5nhbjt.js +0 -90
  377. package/dist/chunk-1zgsgk4b.js +0 -1
  378. package/dist/chunk-20swzkx3.js +0 -216
  379. package/dist/chunk-27zsyhrd.js +0 -4
  380. package/dist/chunk-29y0hk5z.js +0 -3
  381. package/dist/chunk-2cdvw21b.js +0 -274
  382. package/dist/chunk-2j21d3ka.js +0 -161
  383. package/dist/chunk-2jxbwnkz.js +0 -2
  384. package/dist/chunk-31dr4bys.js +0 -6
  385. package/dist/chunk-35faj94w.js +0 -15
  386. package/dist/chunk-39gm08bn.js +0 -39
  387. package/dist/chunk-3a4qsygv.js +0 -51
  388. package/dist/chunk-3te20hqw.js +0 -3
  389. package/dist/chunk-43t7faps.js +0 -24
  390. package/dist/chunk-44hd3kab.js +0 -1
  391. package/dist/chunk-47kpewks.js +0 -71
  392. package/dist/chunk-4aj7ftqb.js +0 -1
  393. package/dist/chunk-4d2y57k7.js +0 -3
  394. package/dist/chunk-4deg33rw.js +0 -57
  395. package/dist/chunk-4k7d8p8d.js +0 -188
  396. package/dist/chunk-4qcy5tx6.js +0 -53
  397. package/dist/chunk-4x7kae4j.js +0 -3
  398. package/dist/chunk-55nwdnsd.js +0 -3
  399. package/dist/chunk-55yp0q8t.js +0 -201
  400. package/dist/chunk-5f43yz6z.js +0 -12
  401. package/dist/chunk-5shey2e4.js +0 -3
  402. package/dist/chunk-6b5k6w2q.js +0 -7
  403. package/dist/chunk-6djzdes9.js +0 -14
  404. package/dist/chunk-6e4c6g46.js +0 -3
  405. package/dist/chunk-6eqbxcrd.js +0 -8
  406. package/dist/chunk-7074g241.js +0 -3
  407. package/dist/chunk-7b6s3g65.js +0 -179
  408. package/dist/chunk-7cgmq685.js +0 -33
  409. package/dist/chunk-7dkz6z2s.js +0 -3
  410. package/dist/chunk-7ed3tean.js +0 -3
  411. package/dist/chunk-7gd339hd.js +0 -109
  412. package/dist/chunk-7j5e8sdj.js +0 -3
  413. package/dist/chunk-7n8g0nfn.js +0 -38
  414. package/dist/chunk-7sqdeqsw.js +0 -1
  415. package/dist/chunk-80g54ncj.js +0 -3
  416. package/dist/chunk-8a5bxece.js +0 -4
  417. package/dist/chunk-8ahwt6a4.js +0 -721
  418. package/dist/chunk-8b3z0zd5.js +0 -8
  419. package/dist/chunk-8dhdpa5h.js +0 -4
  420. package/dist/chunk-8n9nnqr6.js +0 -3
  421. package/dist/chunk-8qc1bsym.js +0 -3
  422. package/dist/chunk-8va64c9n.js +0 -3
  423. package/dist/chunk-8vtm0m84.js +0 -3
  424. package/dist/chunk-8xj7c3mf.js +0 -8
  425. package/dist/chunk-988dw6q3.js +0 -9
  426. package/dist/chunk-9b6cec0v.js +0 -321
  427. package/dist/chunk-9cf97f9p.js +0 -3
  428. package/dist/chunk-9ecv8aqj.js +0 -14
  429. package/dist/chunk-9eq3ht5f.js +0 -8
  430. package/dist/chunk-9jtj77jx.js +0 -3
  431. package/dist/chunk-9t14se2t.js +0 -83
  432. package/dist/chunk-9wmq2272.js +0 -3
  433. package/dist/chunk-9zbk5zx5.js +0 -57
  434. package/dist/chunk-a2g2qb2y.js +0 -386
  435. package/dist/chunk-a3hyn4we.js +0 -79
  436. package/dist/chunk-a87qqft6.js +0 -194
  437. package/dist/chunk-ah88wzbg.js +0 -10
  438. package/dist/chunk-akf1r75r.js +0 -102
  439. package/dist/chunk-amaa1bev.js +0 -2
  440. package/dist/chunk-avx8aydt.js +0 -3
  441. package/dist/chunk-ay9qf4zj.js +0 -6
  442. package/dist/chunk-aywxfqev.js +0 -3
  443. package/dist/chunk-azkegjd8.js +0 -61
  444. package/dist/chunk-b77wjyn7.js +0 -84
  445. package/dist/chunk-baf1hfwh.js +0 -231
  446. package/dist/chunk-bdk6g1vj.js +0 -3
  447. package/dist/chunk-bhqgmyqw.js +0 -36
  448. package/dist/chunk-bk3j0n82.js +0 -341
  449. package/dist/chunk-bndmdahk.js +0 -3
  450. package/dist/chunk-bpgg59wa.js +0 -3
  451. package/dist/chunk-bs3gmfxz.js +0 -5
  452. package/dist/chunk-bxc7kjsk.js +0 -32
  453. package/dist/chunk-c7jg8w13.js +0 -3
  454. package/dist/chunk-ckxjqqn9.js +0 -3
  455. package/dist/chunk-cn8az1b4.js +0 -1
  456. package/dist/chunk-d0zjtdw4.js +0 -29
  457. package/dist/chunk-d1qh1x2g.js +0 -3
  458. package/dist/chunk-djddhmcc.js +0 -60
  459. package/dist/chunk-dqn9gyhb.js +0 -21
  460. package/dist/chunk-drjq2zwg.js +0 -3
  461. package/dist/chunk-dvfs1h3c.js +0 -117
  462. package/dist/chunk-e2q9c5vq.js +0 -8
  463. package/dist/chunk-e98v1bc6.js +0 -12
  464. package/dist/chunk-ejayeex8.js +0 -2
  465. package/dist/chunk-ejh8fyak.js +0 -3
  466. package/dist/chunk-ek2w6zvy.js +0 -4
  467. package/dist/chunk-ewa88139.js +0 -6
  468. package/dist/chunk-fjk3x41y.js +0 -3
  469. package/dist/chunk-frg705zq.js +0 -302
  470. package/dist/chunk-fzm3y0r3.js +0 -267
  471. package/dist/chunk-g1vt329s.js +0 -21
  472. package/dist/chunk-g4ps1dj8.js +0 -140
  473. package/dist/chunk-gkzq8zw4.js +0 -23
  474. package/dist/chunk-gz5fmp3q.js +0 -3
  475. package/dist/chunk-h0hjy0kn.js +0 -292
  476. package/dist/chunk-h5jxydqq.js +0 -147
  477. package/dist/chunk-h5wa62ek.js +0 -145
  478. package/dist/chunk-h7aq56qj.js +0 -28
  479. package/dist/chunk-h82kjdr4.js +0 -83
  480. package/dist/chunk-hbehnm18.js +0 -3
  481. package/dist/chunk-hbgxbgam.js +0 -58
  482. package/dist/chunk-hc2mf5h6.js +0 -4
  483. package/dist/chunk-hjm2xab3.js +0 -3
  484. package/dist/chunk-hjv76kcw.js +0 -1
  485. package/dist/chunk-hrnnh4tq.js +0 -142
  486. package/dist/chunk-ht43ds42.js +0 -236
  487. package/dist/chunk-hxx3za24.js +0 -62
  488. package/dist/chunk-hy8820vc.js +0 -6
  489. package/dist/chunk-j447q024.js +0 -28
  490. package/dist/chunk-j58vh0w6.js +0 -314
  491. package/dist/chunk-j8tn8enq.js +0 -3
  492. package/dist/chunk-jc0fc4ht.js +0 -11
  493. package/dist/chunk-jcs0ymw7.js +0 -3
  494. package/dist/chunk-jjamhxpm.js +0 -139
  495. package/dist/chunk-jjb05d21.js +0 -3
  496. package/dist/chunk-jjdq01dv.js +0 -128
  497. package/dist/chunk-jnmgm2xw.js +0 -5
  498. package/dist/chunk-jpndqst5.js +0 -3
  499. package/dist/chunk-jt0ezawy.js +0 -351
  500. package/dist/chunk-jz73j3qs.js +0 -169
  501. package/dist/chunk-k21df0pg.js +0 -10
  502. package/dist/chunk-k848dzsa.js +0 -429
  503. package/dist/chunk-kdfe4t91.js +0 -3
  504. package/dist/chunk-keawsbpn.js +0 -5
  505. package/dist/chunk-kgym7ch9.js +0 -8
  506. package/dist/chunk-khdn7jwe.js +0 -3
  507. package/dist/chunk-km25cwz6.js +0 -3
  508. package/dist/chunk-knm8a8yx.js +0 -398
  509. package/dist/chunk-krqn0ddk.js +0 -3
  510. package/dist/chunk-ktkmvaa8.js +0 -1
  511. package/dist/chunk-kx6eb6ma.js +0 -4
  512. package/dist/chunk-kypas8vy.js +0 -4
  513. package/dist/chunk-m167kjhv.js +0 -4
  514. package/dist/chunk-m491r0rj.js +0 -358
  515. package/dist/chunk-m8448qby.js +0 -11
  516. package/dist/chunk-mgj88zeq.js +0 -64
  517. package/dist/chunk-mhgk632d.js +0 -3
  518. package/dist/chunk-mv4fb50w.js +0 -1
  519. package/dist/chunk-n5kg7fpx.js +0 -7
  520. package/dist/chunk-n98x35xd.js +0 -8
  521. package/dist/chunk-n9dhs1dw.js +0 -106
  522. package/dist/chunk-nd9rmddh.js +0 -6
  523. package/dist/chunk-ngxfwzq3.js +0 -3
  524. package/dist/chunk-nhv099jv.js +0 -19
  525. package/dist/chunk-nm15ccsg.js +0 -5
  526. package/dist/chunk-npfmdb6y.js +0 -71
  527. package/dist/chunk-nvwb4x04.js +0 -3
  528. package/dist/chunk-nw34xajc.js +0 -8
  529. package/dist/chunk-p077sw22.js +0 -3
  530. package/dist/chunk-p1h8065h.js +0 -3
  531. package/dist/chunk-p3e0cqtt.js +0 -34
  532. package/dist/chunk-p3fpb79v.js +0 -477
  533. package/dist/chunk-p52yzjq6.js +0 -498
  534. package/dist/chunk-p73meypx.js +0 -134
  535. package/dist/chunk-pa9zb7ty.js +0 -4
  536. package/dist/chunk-payfb24w.js +0 -207
  537. package/dist/chunk-pcm1vd8w.js +0 -3
  538. package/dist/chunk-pcntd9h4.js +0 -3
  539. package/dist/chunk-pg1fvqb9.js +0 -167
  540. package/dist/chunk-psc3wfcf.js +0 -1115
  541. package/dist/chunk-pznnww6k.js +0 -6
  542. package/dist/chunk-q6zhd9yf.js +0 -3
  543. package/dist/chunk-qa59zejf.js +0 -246
  544. package/dist/chunk-qvrbjpdc.js +0 -3
  545. package/dist/chunk-qygvvygy.js +0 -12
  546. package/dist/chunk-r0jcmpv6.js +0 -68
  547. package/dist/chunk-r5m9xtm7.js +0 -3
  548. package/dist/chunk-rh80q1nd.js +0 -1
  549. package/dist/chunk-rkffm9sy.js +0 -128
  550. package/dist/chunk-rpx5fa65.js +0 -3
  551. package/dist/chunk-rqxf5hns.js +0 -3
  552. package/dist/chunk-rtr974rc.js +0 -30
  553. package/dist/chunk-rvptcndz.js +0 -3
  554. package/dist/chunk-rw26rpek.js +0 -171
  555. package/dist/chunk-rw7937v4.js +0 -19
  556. package/dist/chunk-rwrv9wbf.js +0 -3
  557. package/dist/chunk-rz2ec6g7.js +0 -347
  558. package/dist/chunk-s6ja2bdg.js +0 -66
  559. package/dist/chunk-scpkdrdb.js +0 -4
  560. package/dist/chunk-shv88d2d.js +0 -10
  561. package/dist/chunk-t0c9wvpr.js +0 -3
  562. package/dist/chunk-tffh3b1e.js +0 -35
  563. package/dist/chunk-tg2f1mzq.js +0 -11
  564. package/dist/chunk-trfswy66.js +0 -77
  565. package/dist/chunk-tzwtg722.js +0 -3
  566. package/dist/chunk-v7f8jj15.js +0 -4
  567. package/dist/chunk-v8j49spx.js +0 -3
  568. package/dist/chunk-v97390pe.js +0 -1
  569. package/dist/chunk-vcr5pzpx.js +0 -233
  570. package/dist/chunk-veeerpwa.js +0 -3
  571. package/dist/chunk-vg5kt6az.js +0 -4
  572. package/dist/chunk-vgv7jvyz.js +0 -219
  573. package/dist/chunk-vjbefncc.js +0 -3
  574. package/dist/chunk-vmxjghsm.js +0 -3
  575. package/dist/chunk-vw7vqd76.js +0 -3
  576. package/dist/chunk-vx22he47.js +0 -1
  577. package/dist/chunk-w3b6m427.js +0 -45
  578. package/dist/chunk-wazkqv7n.js +0 -3
  579. package/dist/chunk-wf7zrjsw.js +0 -138
  580. package/dist/chunk-wfg2gm11.js +0 -3
  581. package/dist/chunk-wg9k6h8w.js +0 -12
  582. package/dist/chunk-wkz2vwkr.js +0 -81
  583. package/dist/chunk-wvef3ngh.js +0 -127
  584. package/dist/chunk-wvf31nzs.js +0 -3
  585. package/dist/chunk-x05nxhyv.js +0 -262
  586. package/dist/chunk-x0770gt9.js +0 -4
  587. package/dist/chunk-x24s4heg.js +0 -1166
  588. package/dist/chunk-x3r64r0c.js +0 -6
  589. package/dist/chunk-x5g9w4hh.js +0 -5
  590. package/dist/chunk-xgkv66q5.js +0 -2230
  591. package/dist/chunk-xqq1vxb6.js +0 -1
  592. package/dist/chunk-xs03kc1h.js +0 -196
  593. package/dist/chunk-xv34zbp4.js +0 -3
  594. package/dist/chunk-xw36p73h.js +0 -90
  595. package/dist/chunk-xyg1r5w0.js +0 -4
  596. package/dist/chunk-xys2sxh6.js +0 -16
  597. package/dist/chunk-y0qg6rrv.js +0 -3
  598. package/dist/chunk-y1k17c8b.js +0 -21
  599. package/dist/chunk-y5xz0jc4.js +0 -141
  600. package/dist/chunk-y6xsqe9a.js +0 -10
  601. package/dist/chunk-yb1t2h8h.js +0 -11
  602. package/dist/chunk-ygvyc6wv.js +0 -90
  603. package/dist/chunk-yj4x5ehw.js +0 -21
  604. package/dist/chunk-yn38c15w.js +0 -4
  605. package/dist/chunk-ynhngsdh.js +0 -3
  606. package/dist/chunk-yrsb6j3z.js +0 -3
  607. package/dist/chunk-yywfvfph.js +0 -2
  608. package/dist/chunk-zcxzdrn7.js +0 -5
  609. package/dist/chunk-zen6ax1y.js +0 -27
  610. package/dist/chunk-zf2pek72.js +0 -3
  611. package/dist/chunk-zk3d0jjf.js +0 -7
  612. package/dist/chunk-zy3rp1ab.js +0 -93
@@ -1,8 +0,0 @@
1
- // @bun
2
- var Y=[{pattern:/document\.getElementById\s*\(/g,message:"document.getElementById() is prohibited",suggestion:'Use useRef("name") instead'},{pattern:/document\.querySelector\s*\(/g,message:"document.querySelector() is prohibited",suggestion:'Use useRef("name") instead'},{pattern:/document\.querySelectorAll\s*\(/g,message:"document.querySelectorAll() is prohibited",suggestion:'Use useRef("name") and access children instead'},{pattern:/document\.getElementsBy\w+\s*\(/g,message:"document.getElementsBy*() is prohibited",suggestion:'Use useRef("name") instead'},{pattern:/document\.createElement\s*\(/g,message:"document.createElement() is prohibited",suggestion:"Use template directives or component composition instead"},{pattern:/document\.activeElement(?![A-Za-z])/g,message:"document.activeElement is prohibited",suggestion:"Use useRef() to track focused elements"},{pattern:/document\.title\s*=/g,message:"document.title assignment is prohibited",suggestion:"Use useTitle() from composables"},{pattern:/document\.cookie(?![A-Za-z])/g,message:"document.cookie is prohibited",suggestion:"Use useCookie() from composables"},{pattern:/document\.addEventListener\s*\(/g,message:"document.addEventListener() is prohibited",suggestion:"Use useEventListener() or template @event directives"},{pattern:/window\.location(?![A-Za-z])/g,message:"window.location is prohibited",suggestion:"Use navigate() or useRoute()"},{pattern:/window\.history(?![A-Za-z])/g,message:"window.history is prohibited",suggestion:"Use navigate(), goBack(), goForward()"},{pattern:/window\.addEventListener\s*\(/g,message:"window.addEventListener() is prohibited",suggestion:"Use useEventListener() or @click directives"},{pattern:/window\.localStorage(?![A-Za-z])/g,message:"window.localStorage is prohibited",suggestion:"Use useLocalStorage() from composables"},{pattern:/window\.sessionStorage(?![A-Za-z])/g,message:"window.sessionStorage is prohibited",suggestion:"Use useSessionStorage() from composables"},{pattern:/window\.scrollTo\s*\(/g,message:"window.scrollTo() is prohibited",suggestion:"Use useScroll().scrollTo() from composables"},{pattern:/window\.alert\s*\(/g,message:"window.alert() is prohibited",suggestion:"Use stx modal/dialog APIs instead"},{pattern:/window\.confirm\s*\(/g,message:"window.confirm() is prohibited",suggestion:"Use stx modal/dialog APIs instead"},{pattern:/window\.prompt\s*\(/g,message:"window.prompt() is prohibited",suggestion:"Use stx modal/dialog APIs instead"},{pattern:/(?<!\w)setTimeout\s*\(/g,message:"setTimeout() is prohibited",suggestion:"Use useTimeout() or useDebounce() from composables"},{pattern:/(?<!\w)setInterval\s*\(/g,message:"setInterval() is prohibited",suggestion:"Use useInterval() from composables"},{pattern:/(?<!\w)clearTimeout\s*\(/g,message:"clearTimeout() is prohibited",suggestion:"Use useTimeout().stop() or useDebounce().cancel()"},{pattern:/(?<!\w)clearInterval\s*\(/g,message:"clearInterval() is prohibited",suggestion:"Use useInterval().pause()"},{pattern:/(?<!\w)location\.href\s*=/g,message:"location.href assignment is prohibited",suggestion:"Use navigate() instead"},{pattern:/(?<!\w)location\.assign\s*\(/g,message:"location.assign() is prohibited",suggestion:"Use navigate() instead"},{pattern:/(?<!\w)location\.replace\s*\(/g,message:"location.replace() is prohibited",suggestion:"Use navigate() instead"}];function Z(J,K,q){let z=typeof q==="boolean"?{enabled:q,failOnViolation:q}:q??{enabled:!1},Q=z.allowPatterns??[],G=[];for(let{pattern:j,message:k,suggestion:U}of Y){if(Q.some((v)=>k.includes(v)||j.source.includes(v)))continue;j.lastIndex=0;let L=J.match(j);if(L&&L.length>0){let v=J.split(`
3
- `),y=[];v.forEach((W,X)=>{if(j.lastIndex=0,j.test(W))y.push(X+1)});let V=y.length>0?` (line${y.length>1?"s":""}: ${y.join(", ")})`:"";G.push(` \u2717 ${k}${V}
4
- \u2192 ${U}`)}}if(G.length>0&&z.enabled){let k=`[STX] DOM API violation in ${K.split("/").pop()||K}:
5
- ${G.join(`
6
- `)}
7
- Tip: prefer useRef(), navigate(), and composables for component code`;if(z.failOnViolation)throw Error(k);else console.warn(k)}}
8
- export{Y as ut,Z as vt};
@@ -1,4 +0,0 @@
1
- // @bun
2
- import{Fi as S}from"./chunk-kdfe4t91.js";import{Gi as g}from"./chunk-t0c9wvpr.js";import{$k as A,al as D}from"./chunk-80g54ncj.js";import{Zp as C,_p as P}from"./chunk-rvptcndz.js";import{Nq as f}from"./chunk-d0zjtdw4.js";import{Rr as R}from"./chunk-1xz0w746.js";import{Hw as b}from"./chunk-nhv099jv.js";import{Rw as y}from"./chunk-shv88d2d.js";import V from"fs";import H from"path";var d=new Set([".DS_Store","Thumbs.db","desktop.ini",".gitkeep",".gitignore"]);function n(J,K){let X=0,z=0;if(!V.existsSync(J))return{copied:X,bytes:z};function Q(E,O){let U=V.readdirSync(E,{withFileTypes:!0});for(let W of U){if(d.has(W.name))continue;let G=H.join(E,W.name),Y=H.join(O,W.name);if(W.isDirectory())V.mkdirSync(Y,{recursive:!0}),Q(G,Y);else if(W.isFile()){if(V.existsSync(Y))continue;V.copyFileSync(G,Y),X++,z+=V.statSync(Y).size}}}return Q(J,K),{copied:X,bytes:z}}async function zq(J={}){let K=Date.now(),X=H.resolve(J.root||process.cwd()),z=H.resolve(X,J.outputDir||".output");console.log("[stx build] Starting production build...");let Q={};try{Q=await R()}catch{}let E=J.componentsDir??Q.componentsDir??"components",O=J.partialsDir??Q.partialsDir??"partials",U=J.layoutsDir??Q.layoutsDir??"layouts",W=J.publicDir??Q.publicDir??"public",G=Q.app?.head||{},Y=Q.router?.container||"main";if(V.existsSync(z))V.rmSync(z,{recursive:!0});let h=[H.join(z,"public","__stx"),H.join(z,"public","assets"),H.join(z,"server","pages"),H.join(z,"server","fragments")];for(let F of h)V.mkdirSync(F,{recursive:!0});console.log("[stx build] Discovering routes...");let I=g(X),m=["components","layouts","partials"],k=I.filter((F)=>{return!m.some((q)=>F.pattern.startsWith(`/${q}/`)||F.pattern===`/${q}`)});console.log(`[stx build] Found ${k.length} page routes (${I.length-k.length} non-page files excluded)`),console.log("[stx build] Generating shared assets...");let $=C(J.debug),Z=P();await Bun.write(H.join(z,"public","__stx",$.filename),$.content),await Bun.write(H.join(z,"public","__stx",Z.filename),Z.content),console.log(`[stx build] Runtime: ${$.filename} (${($.content.length/1024).toFixed(1)}KB)`),console.log(`[stx build] Router: ${Z.filename} (${(Z.content.length/1024).toFixed(1)}KB)`),console.log("[stx build] Compiling templates...");let v=[],N=[];for(let F of k)try{let q=await S(F.filePath,F.pattern,{componentsDir:E,partialsDir:O,layoutsDir:U,debug:J.debug});if(v.push(q),q.html=q.html.replace(/runtime\.__STX_HASH__\.js/g,$.filename).replace(/router\.__STX_HASH__\.js/g,Z.filename),q.html=b(q.html,G,{bodyScripts:[`<script src="/__stx/${Z.filename}"></script>`]}),!/<body[^>]*\bdata-stx=/.test(q.html)){let B=q.html.match(/<(?!body\b)[a-zA-Z][a-zA-Z0-9-]*\b[^>]*?\s(data-stx="[^"]+")[^>]*>/);if(B&&B[1]){let x=B[1];q.html=q.html.replace(" "+x,""),q.html=q.html.replace(/<body([^>]*)>/,`<body$1 ${x}>`)}}q.html=q.html.replace(/<style data-crosswind="generated">[\s\S]*?<\/style>\s*/g,""),q.html=await y(q.html),q.fragment=f(q.html,Y);let w=F.pattern==="/"?"index":F.pattern.slice(1).replace(/\//g,"-").replace(/[[\]]/g,"_"),M=H.join("server","pages",`${w}.compiled.json`),j=H.join("server","fragments",`${w}.html`);await Bun.write(H.join(z,M),JSON.stringify(q,null,2)),await Bun.write(H.join(z,j),q.fragment),N.push({pattern:F.pattern,compiledPath:M,fragmentPath:j,isDynamic:q.hasServerScripts,hasParams:F.pattern.includes(":")||F.pattern.includes("[")}),console.log(`[stx build] \u2713 ${F.pattern}`)}catch(q){console.error(`[stx build] \u2717 ${F.pattern}:`,q instanceof Error?q.message:q)}let _=H.resolve(X,W);if(V.existsSync(_)){let{copied:F,bytes:q}=n(_,H.join(z,"public"));if(F>0)console.log(`[stx build] Copied ${F} public asset${F===1?"":"s"} (${(q/1024).toFixed(1)}KB) from ${W}/`)}let L={runtime:$.filename,router:Z.filename},l=A(N,L,z);D(l,z);let T=Date.now()-K;return console.log(`
3
- [stx build] Done in ${T}ms \u2014 ${v.length} pages compiled`),{pageCount:v.length,assets:L,outputDir:z,duration:T}}
4
- export{zq as Ei};
@@ -1,3 +0,0 @@
1
- // @bun
2
- var nk={enabled:!0,image:{enabled:!0,defaultWidths:[320,480,640,768,1024,1280,1536,1920],defaultFormats:["avif","webp","jpeg"],defaultQuality:80,placeholderStrategy:"thumbhash",lazyByDefault:!0,enableDpr:!0,defaultDpr:[1,2,3]},video:{enabled:!0,lazyByDefault:!0,defaultControls:!0},upload:{enabled:!0,maxSize:10485760,allowedTypes:["image/*","video/*","audio/*","application/pdf"],maxConcurrent:3},protected:{enabled:!0,expirationSeconds:3600,batchSize:10},cache:{enabled:!0,directory:".stx/media-cache",maxAge:30,maxSize:500}};
3
- export{nk as wj};
@@ -1,3 +0,0 @@
1
- // @bun
2
- var M=/<script\b[^>]*>/iy,Q=/<\/script\s*>/ig,U=/<style\b[^>]*>/iy,V=/<\/style\s*>/ig;function J(f,j,w,B){w.lastIndex=j;let z=w.exec(f);if(!z||z.index!==j)return-1;B.lastIndex=w.lastIndex;let v=B.exec(f);if(!v)return-1;return v.index+v[0].length}function W(f,j){return J(f,j,M,Q)}function Z(f,j){return J(f,j,U,V)}function $(f,j){if(!f.startsWith("<!--",j))return-1;let w=f.indexOf("-->",j+4);if(w===-1)return-1;return w+3}function X(f,j,w){let B=[],z="",v=0,K=f.length,H=!1,F=null;while(v<K){let D=f[v];if(H){if(z+=D,F){if(D===F)F=null}else if(D==='"'||D==="'")F=D;else if(D===">")H=!1;v++;continue}if(D==="<"){let G=j(f,v);if(G>v){z+=w(f.slice(v,G),B.length),B.push(f.slice(v,G)),v=G;continue}if(/^<\/?[a-zA-Z]/.test(f.slice(v,v+2)))H=!0;z+=D,v++;continue}z+=D,v++}return{output:z,tokens:B}}function b(f){let{output:j,tokens:w}=X(f,W,(B,z)=>`\x00STX_SCRIPT_${z}\x00`);return{output:j,scripts:w}}function y(f,j){if(j.length===0)return f;return f.replace(/\x00STX_SCRIPT_(\d+)\x00/g,(w,B)=>j[+B]??"")}
3
- export{W as kv,Z as lv,$ as mv,X as nv,b as ov,y as pv};
@@ -1,3 +0,0 @@
1
- // @bun
2
- import{Rr as O}from"./chunk-1xz0w746.js";import M from"path";var Q=/<script\b[^>]*\bserver\b/i,W=/<script\b[^>]*\bclient\b/i;async function Z(q){let u=performance.now(),k=await O(q),z=q||k.root||process.cwd(),G=[k.build?.pagesDir||k.pagesDir||"pages",k.componentsDir||"components",k.layoutsDir||"layouts",k.partialsDir||"partials"].map((w)=>M.resolve(z,w)),A=[],B=0;for(let w of G){let H=await U(w);for(let J of H){B++;let K=await Bun.file(J).text();if(Q.test(K))A.push(M.relative(z,J))}}return{mode:A.length>0?"ssr":"ssg",serverScriptFiles:A,totalFilesScanned:B,scanDurationMs:Math.round(performance.now()-u)}}async function $(q){let u=await O(q),k=q||u.root||process.cwd(),z=M.resolve(k,u.componentsDir||"components"),G=[],A=await U(z);for(let B of A){let w=await Bun.file(B).text(),H=Q.test(w),J=W.test(w)||/<script\b(?![^>]*\bserver\b)[^>]*>/i.test(w)&&!H;if(H&&J){let K=M.relative(k,B);G.push({file:K,message:`Component "${K}" has both <script server> and <script client>. `+"Components should be server OR client \u2014 compose them via props/slots."})}}return G}async function U(q){let u=[];try{let k=new Bun.Glob("**/*.stx");for await(let z of k.scan({cwd:q,absolute:!0}))u.push(z)}catch{}return u}
3
- export{Z as oq,$ as pq};
@@ -1,3 +0,0 @@
1
- // @bun
2
- async function y(z,w,A,B){let j=w[0]?.replace(/['"]/g,"")||"main",b=q();if(j!=="main")b=b.replace("container:'main'",`container:'${j}'`);return`<script data-stx-router>${b}</script>`}var E={name:"stxRouter",handler:y,hasEndTag:!1,description:"Inject the STX SPA router script for client-side navigation"};import{getRouterScript as q}from"stx-router";
3
- export{q as Vy,y as Wy,E as Xy};
@@ -1,8 +0,0 @@
1
- // @bun
2
- var f={sm:640,md:768,lg:1024,xl:1280,"2xl":1536},D=[320,640,768,1024,1280,1536,1920];function Q(j){return j.replace(/&/g,"&amp;").replace(/"/g,"&quot;").replace(/</g,"&lt;").replace(/>/g,"&gt;")}function Y(j,J){if(j.serverDynamic[J]!==void 0)return String(j.serverDynamic[J]);let G=j.static[J];if(typeof G==="string")return G;return}function E(j,J,G=!1){let q=j.serverDynamic[J];if(q!==void 0)return q!==!1&&q!=="false";let M=j.static[J];if(M!==void 0)return M!=="false"&&M!==!1;return G}function u(j){if(j.includes("(")||j.includes(","))return j;let J=j.trim().split(/\s+/),G=[];for(let q of J)if(q.includes(":")){let[M,x]=q.split(":"),X=f[M];if(X)G.push(`(max-width: ${X}px) ${x}`);else{let F=Number.parseInt(M);if(!Number.isNaN(F))G.push(`(max-width: ${F}px) ${x}`)}}else G.push(q);return G.join(", ")}function H(j,J,G,q){return J.map((M)=>`${B(j,M,void 0,G,q)} ${M}w`).join(", ")}function n(j,J,G,q,M){return J.map((x)=>{let X=G?G*x:void 0;return`${B(j,X,void 0,q,M)} ${x}x`}).join(", ")}function B(j,J,G,q,M){if(!q||q==="local"||q==="static")return j;if(q==="cloudinary"){let x=[];if(J)x.push(`w_${J}`);if(G)x.push(`h_${G}`);if(M)x.push(`f_${M}`);x.push("q_auto");let X=x.join(",");return j.replace("/upload/",`/upload/${X}/`)}if(q==="imgix"){let x=new URLSearchParams;if(J)x.set("w",String(J));if(G)x.set("h",String(G));if(M)x.set("fm",M);x.set("auto","format");let X=j.includes("?")?"&":"?";return`${j}${X}${x.toString()}`}if(q==="bunny"){let x=new URLSearchParams;if(J)x.set("width",String(J));if(G)x.set("height",String(G));if(M)x.set("format",M);let X=j.includes("?")?"&":"?";return`${j}${X}${x.toString()}`}return j}function m(j,J,G="#e5e7eb"){let q=`<svg xmlns="http://www.w3.org/2000/svg" width="${j}" height="${J}"><rect width="100%" height="100%" fill="${G}"/></svg>`;return`data:image/svg+xml;base64,${btoa(q)}`}var c={name:"StxImage",aliases:["stx-image","stx-img"],render(j,J,G){let q=Y(j,"src")||"",M=Y(j,"alt")||"",x=Y(j,"width"),X=Y(j,"height"),F=Y(j,"sizes"),y=Y(j,"srcset"),W=Y(j,"densities"),O=Y(j,"format"),I=Y(j,"placeholder"),w=Y(j,"placeholderColor")||"#e5e7eb",L=Y(j,"provider"),k=Y(j,"class")||Y(j,"className")||"",T=Y(j,"style")||"",h=Y(j,"quality"),A=E(j,"lazy",!0),g=E(j,"preload",!1),v=E(j,"picture",!1)||!!O,R=x?Number.parseInt(x):void 0,b=X?Number.parseInt(X):void 0,N=y||"",V="";if(!N&&F)N=H(q,D,L,O),V=u(F);else if(!N&&W){let $=W.split(/\s+/).map((K)=>Number.parseFloat(K.replace("x","")));N=n(q,$,R,L,O)}else if(F)V=u(F);let C=[];if(T)C.push(T);if(R&&b)C.push(`aspect-ratio:${R}/${b}`);if(I==="blur"||I==="color"||I==="thumbhash"){let $=m(R||16,b||9,w);C.push(`background-image:url(${$})`),C.push("background-size:cover"),C.push("background-repeat:no-repeat")}else if(I&&I!=="empty"&&I!=="none")C.push(`background-image:url(${Q(I)})`),C.push("background-size:cover"),C.push("background-repeat:no-repeat");let P=B(q,R,b,L,O),Z=[];if(Z.push(`src="${Q(P)}"`),Z.push(`alt="${Q(M)}"`),x)Z.push(`width="${Q(x)}"`);if(X)Z.push(`height="${Q(X)}"`);if(A)Z.push('loading="lazy"');if(Z.push('decoding="async"'),k)Z.push(`class="${Q(k)}"`);if(C.length>0)Z.push(`style="${Q(C.join(";"))}"`);if(N)Z.push(`srcset="${Q(N)}"`);if(V)Z.push(`sizes="${Q(V)}"`);let S=new Set(["src","alt","width","height","lazy","sizes","srcset","placeholder","placeholderColor","class","className","style","format","provider","quality","densities","preload","picture"]);for(let[$,K]of Object.entries(j.static)){if(S.has($))continue;if(typeof K==="boolean"){if(K)Z.push(Q($))}else Z.push(`${Q($)}="${Q(K)}"`)}let z=`<img ${Z.join(" ")} />`,U="";if(g){let K=O==="webp"?"image/webp":O==="avif"?"image/avif":"";U=`<link rel="preload" as="image" href="${Q(P)}"${K?` type="${K}"`:""}${N?` imagesrcset="${Q(N)}"`:""}${V?` imagesizes="${Q(V)}"`:""} />
3
- `}if(v){let $=[];if(O==="avif"||O==="auto"){let K=B(q,R,b,L,"avif"),_=N?H(q,D,L,"avif"):`${K}`;$.push(`<source type="image/avif" srcset="${Q(_)}"${V?` sizes="${Q(V)}"`:""} />`)}if(O==="webp"||O==="auto"){let K=B(q,R,b,L,"webp"),_=N?H(q,D,L,"webp"):`${K}`;$.push(`<source type="image/webp" srcset="${Q(_)}"${V?` sizes="${Q(V)}"`:""} />`)}return`${U}<picture>
4
- ${$.join(`
5
- `)}
6
- ${z}
7
- </picture>`}return`${U}${z}`}};
8
- export{c as iz};
@@ -1,9 +0,0 @@
1
- // @bun
2
- import{Ty as $}from"./chunk-7ed3tean.js";import H from"path";function Z(j){return j.startsWith("http://")||j.startsWith("https://")||j.startsWith("//")}async function _(j,z,Q){try{let q;if(j.startsWith("/")){let B=z;for(let J=0;J<5;J++){let K=H.join(B,j);if(await Bun.file(K).exists())return K;B=H.dirname(B)}q=H.join(z,j)}else if(j.startsWith("./")||j.startsWith("../"))q=H.resolve(z,j);else q=H.resolve(z,j);if(await Bun.file(q).exists())return q;return null}catch{return null}}async function I(j,z,Q){let q=j,B=H.dirname(z),J=/<script\b([^>]*)src=["']([^"']+)["']([^>]*)><\/script>/gi,K;while((K=J.exec(q))!==null){let[T,X,w,Y]=K;if(Z(w))continue;let G=await _(w,B,z);if(G)try{let O=await Bun.file(G).text();if(Q.add(G),w.endsWith(".ts")||w.endsWith(".tsx")){let N=await Bun.build({entrypoints:[G],target:"browser",minify:!1,define:$()});if(N.outputs.length>0)O=await N.outputs[0].text()}let L=`<script>
3
- // Source: ${w}
4
- ${O}
5
- </script>`;q=q.replace(T,L),J.lastIndex=0}catch(O){}}let V=/<link\b([^>]*)href=["']([^"']+)["']([^>]*)(?:\/?>)/gi,W;while((W=V.exec(q))!==null){let[T,X,w,Y]=W,G=X+Y;if(Z(w))continue;if(/rel=["']stylesheet["']/.test(G)||w.endsWith(".css")){let L=await _(w,B,z);if(L)try{let N=await Bun.file(L).text();Q.add(L);let y=`<style>
6
- /* Source: ${w} */
7
- ${N}
8
- </style>`;q=q.replace(T,y),V.lastIndex=0}catch(N){}}}return q}
9
- export{Z as hv,_ as iv,I as jv};
@@ -1,321 +0,0 @@
1
- // @bun
2
- function L(b,j={}){return{enterFrom:j.enterClass||`${b}-enter-from`,enterActive:j.enterActiveClass||`${b}-enter-active`,enterTo:j.enterToClass||`${b}-enter-to`,leaveFrom:j.leaveClass||`${b}-leave-from`,leaveActive:j.leaveActiveClass||`${b}-leave-active`,leaveTo:j.leaveToClass||`${b}-leave-to`}}function Q(b){let j=getComputedStyle(b),B=j.transitionDuration||"0s",q=j.animationDuration||"0s",A=(z)=>{let F=z.match(/^([\d.]+)(s|ms)?$/);if(!F)return 0;let G=parseFloat(F[1]);return(F[2]||"s")==="ms"?G:G*1000};return Math.max(A(B),A(q))}function N(b,j){return new Promise((B)=>{let q=j??Q(b);if(q===0){B();return}let A=!1,z=()=>{if(A)return;A=!0,b.removeEventListener("transitionend",F),b.removeEventListener("animationend",F),B()},F=(G)=>{if(G.target===b)z()};b.addEventListener("transitionend",F),b.addEventListener("animationend",F),setTimeout(z,q+50)})}function P(b){b.offsetHeight}async function W(b,j={}){let B=j.name||"stx",q=L(B,j),A=typeof j.duration==="object"?j.duration.enter:j.duration;if(j.onBeforeEnter?.(b),b.classList.add(q.enterFrom),b.classList.add(q.enterActive),P(b),b.classList.remove(q.enterFrom),b.classList.add(q.enterTo),j.onEnter)await new Promise((z)=>{j.onEnter(b,z)});else await N(b,A);b.classList.remove(q.enterActive),b.classList.remove(q.enterTo),j.onAfterEnter?.(b)}async function X(b,j={}){let B=j.name||"stx",q=L(B,j),A=typeof j.duration==="object"?j.duration.leave:j.duration;if(j.onBeforeLeave?.(b),b.classList.add(q.leaveFrom),b.classList.add(q.leaveActive),P(b),b.classList.remove(q.leaveFrom),b.classList.add(q.leaveTo),j.onLeave)await new Promise((z)=>{j.onLeave(b,z)});else await N(b,A);b.classList.remove(q.leaveActive),b.classList.remove(q.leaveTo),j.onAfterLeave?.(b)}function Y(b,j={},B){let q=/@transition\s*\(([^)]*)\)([\s\S]*?)@endtransition/gi;return b.replace(q,(A,z,F)=>{let G=U(z),H=G.name||"stx",J=G.duration||300,K=`stx-transition-${Math.random().toString(36).slice(2,9)}`;return`
3
- <div
4
- class="stx-transition-wrapper"
5
- data-transition="${H}"
6
- data-transition-id="${K}"
7
- data-transition-duration="${J}"
8
- ${G.mode?`data-transition-mode="${G.mode}"`:""}
9
- >
10
- ${F.trim()}
11
- </div>
12
- <script>
13
- (function() {
14
- const wrapper = document.querySelector('[data-transition-id="${K}"]');
15
- if (!wrapper) return;
16
-
17
- const name = '${H}';
18
- const duration = ${J};
19
-
20
- // Observe for child changes to trigger transitions
21
- const observer = new MutationObserver(function(mutations) {
22
- mutations.forEach(function(mutation) {
23
- mutation.addedNodes.forEach(function(node) {
24
- if (node.nodeType === 1) {
25
- window.STX?.transition?.enter(node, { name: name, duration: duration });
26
- }
27
- });
28
- mutation.removedNodes.forEach(function(node) {
29
- if (node.nodeType === 1) {
30
- // Leave transition handled before removal
31
- }
32
- });
33
- });
34
- });
35
-
36
- observer.observe(wrapper, { childList: true });
37
-
38
- // Initial enter transition for existing children
39
- Array.from(wrapper.children).forEach(function(child) {
40
- window.STX?.transition?.enter(child, { name: name, duration: duration });
41
- });
42
- })();
43
- </script>
44
- `})}function U(b){let j={},B=/(\w+)\s*:\s*(?:'([^']*)'|"([^"]*)"|(\d+)|(\w+))/g,q;while((q=B.exec(b))!==null){let A=q[1],z=q[2]||q[3]||q[4]||q[5];switch(A){case"name":j.name=z;break;case"duration":j.duration=parseInt(z,10);break;case"mode":j.mode=z;break;case"easing":j.easing=z;break}}return j}function Z(){return`
45
- /* STX Transition Presets */
46
-
47
- /* Fade */
48
- .fade-enter-from,
49
- .fade-leave-to {
50
- opacity: 0;
51
- }
52
- .fade-enter-active,
53
- .fade-leave-active {
54
- transition: opacity 0.3s ease;
55
- }
56
- .fade-enter-to,
57
- .fade-leave-from {
58
- opacity: 1;
59
- }
60
-
61
- /* Slide Up */
62
- .slide-up-enter-from,
63
- .slide-up-leave-to {
64
- opacity: 0;
65
- transform: translateY(20px);
66
- }
67
- .slide-up-enter-active,
68
- .slide-up-leave-active {
69
- transition: opacity 0.3s ease, transform 0.3s ease;
70
- }
71
- .slide-up-enter-to,
72
- .slide-up-leave-from {
73
- opacity: 1;
74
- transform: translateY(0);
75
- }
76
-
77
- /* Slide Down */
78
- .slide-down-enter-from,
79
- .slide-down-leave-to {
80
- opacity: 0;
81
- transform: translateY(-20px);
82
- }
83
- .slide-down-enter-active,
84
- .slide-down-leave-active {
85
- transition: opacity 0.3s ease, transform 0.3s ease;
86
- }
87
- .slide-down-enter-to,
88
- .slide-down-leave-from {
89
- opacity: 1;
90
- transform: translateY(0);
91
- }
92
-
93
- /* Slide Left */
94
- .slide-left-enter-from {
95
- opacity: 0;
96
- transform: translateX(20px);
97
- }
98
- .slide-left-leave-to {
99
- opacity: 0;
100
- transform: translateX(-20px);
101
- }
102
- .slide-left-enter-active,
103
- .slide-left-leave-active {
104
- transition: opacity 0.3s ease, transform 0.3s ease;
105
- }
106
- .slide-left-enter-to,
107
- .slide-left-leave-from {
108
- opacity: 1;
109
- transform: translateX(0);
110
- }
111
-
112
- /* Slide Right */
113
- .slide-right-enter-from {
114
- opacity: 0;
115
- transform: translateX(-20px);
116
- }
117
- .slide-right-leave-to {
118
- opacity: 0;
119
- transform: translateX(20px);
120
- }
121
- .slide-right-enter-active,
122
- .slide-right-leave-active {
123
- transition: opacity 0.3s ease, transform 0.3s ease;
124
- }
125
- .slide-right-enter-to,
126
- .slide-right-leave-from {
127
- opacity: 1;
128
- transform: translateX(0);
129
- }
130
-
131
- /* Scale */
132
- .scale-enter-from,
133
- .scale-leave-to {
134
- opacity: 0;
135
- transform: scale(0.9);
136
- }
137
- .scale-enter-active,
138
- .scale-leave-active {
139
- transition: opacity 0.3s ease, transform 0.3s ease;
140
- }
141
- .scale-enter-to,
142
- .scale-leave-from {
143
- opacity: 1;
144
- transform: scale(1);
145
- }
146
-
147
- /* Scale Up (grow) */
148
- .scale-up-enter-from,
149
- .scale-up-leave-to {
150
- opacity: 0;
151
- transform: scale(0.5);
152
- }
153
- .scale-up-enter-active,
154
- .scale-up-leave-active {
155
- transition: opacity 0.3s ease, transform 0.3s ease;
156
- }
157
- .scale-up-enter-to,
158
- .scale-up-leave-from {
159
- opacity: 1;
160
- transform: scale(1);
161
- }
162
-
163
- /* Bounce */
164
- .bounce-enter-active {
165
- animation: bounce-in 0.5s;
166
- }
167
- .bounce-leave-active {
168
- animation: bounce-in 0.5s reverse;
169
- }
170
- @keyframes bounce-in {
171
- 0% {
172
- transform: scale(0);
173
- }
174
- 50% {
175
- transform: scale(1.1);
176
- }
177
- 100% {
178
- transform: scale(1);
179
- }
180
- }
181
-
182
- /* Flip */
183
- .flip-enter-from,
184
- .flip-leave-to {
185
- opacity: 0;
186
- transform: perspective(400px) rotateY(90deg);
187
- }
188
- .flip-enter-active,
189
- .flip-leave-active {
190
- transition: opacity 0.4s ease, transform 0.4s ease;
191
- }
192
- .flip-enter-to,
193
- .flip-leave-from {
194
- opacity: 1;
195
- transform: perspective(400px) rotateY(0);
196
- }
197
-
198
- /* Zoom */
199
- .zoom-enter-from,
200
- .zoom-leave-to {
201
- opacity: 0;
202
- transform: scale(0);
203
- }
204
- .zoom-enter-active,
205
- .zoom-leave-active {
206
- transition: opacity 0.3s ease, transform 0.3s cubic-bezier(0.175, 0.885, 0.32, 1.275);
207
- }
208
- .zoom-enter-to,
209
- .zoom-leave-from {
210
- opacity: 1;
211
- transform: scale(1);
212
- }
213
-
214
- /* Collapse (height) */
215
- .collapse-enter-from,
216
- .collapse-leave-to {
217
- opacity: 0;
218
- max-height: 0;
219
- overflow: hidden;
220
- }
221
- .collapse-enter-active,
222
- .collapse-leave-active {
223
- transition: opacity 0.3s ease, max-height 0.3s ease;
224
- overflow: hidden;
225
- }
226
- .collapse-enter-to,
227
- .collapse-leave-from {
228
- opacity: 1;
229
- max-height: 1000px;
230
- }
231
- `}function _(){return`
232
- // STX Transition Runtime
233
- (function() {
234
- if (typeof window === 'undefined') return;
235
-
236
- window.STX = window.STX || {};
237
- window.STX.transition = {
238
- // Perform enter transition
239
- enter: function(el, options) {
240
- options = options || {};
241
- const name = options.name || 'stx';
242
- const duration = options.duration || 300;
243
-
244
- const classes = {
245
- enterFrom: name + '-enter-from',
246
- enterActive: name + '-enter-active',
247
- enterTo: name + '-enter-to'
248
- };
249
-
250
- // Add initial classes
251
- el.classList.add(classes.enterFrom);
252
- el.classList.add(classes.enterActive);
253
-
254
- // Force reflow
255
- void el.offsetHeight;
256
-
257
- // Start transition
258
- el.classList.remove(classes.enterFrom);
259
- el.classList.add(classes.enterTo);
260
-
261
- // Cleanup after transition
262
- setTimeout(function() {
263
- el.classList.remove(classes.enterActive);
264
- el.classList.remove(classes.enterTo);
265
- }, duration + 50);
266
-
267
- return el;
268
- },
269
-
270
- // Perform leave transition
271
- leave: function(el, options) {
272
- return new Promise(function(resolve) {
273
- options = options || {};
274
- const name = options.name || 'stx';
275
- const duration = options.duration || 300;
276
-
277
- const classes = {
278
- leaveFrom: name + '-leave-from',
279
- leaveActive: name + '-leave-active',
280
- leaveTo: name + '-leave-to'
281
- };
282
-
283
- // Add initial classes
284
- el.classList.add(classes.leaveFrom);
285
- el.classList.add(classes.leaveActive);
286
-
287
- // Force reflow
288
- void el.offsetHeight;
289
-
290
- // Start transition
291
- el.classList.remove(classes.leaveFrom);
292
- el.classList.add(classes.leaveTo);
293
-
294
- // Cleanup and resolve after transition
295
- setTimeout(function() {
296
- el.classList.remove(classes.leaveActive);
297
- el.classList.remove(classes.leaveTo);
298
- resolve(el);
299
- }, duration + 50);
300
- });
301
- },
302
-
303
- // Toggle with transition
304
- toggle: function(el, show, options) {
305
- if (show) {
306
- el.style.display = '';
307
- return this.enter(el, options);
308
- }
309
- else {
310
- return this.leave(el, options).then(function() {
311
- el.style.display = 'none';
312
- return el;
313
- });
314
- }
315
- }
316
- };
317
-
318
- console.log('[stx] Transition runtime initialized');
319
- })();
320
- `}function $(b){let j=/@transition\.([a-z-]+)(?:\.(\d+))?="([^"]+)"/gi;return b.replace(j,(B,q,A,z)=>{let F=A||"300",G=`stx-t-${Math.random().toString(36).slice(2,7)}`;return`data-stx-transition="${q}" data-stx-transition-duration="${F}" data-stx-transition-condition="${z}" data-stx-transition-id="${G}"`})}
321
- export{W as Qf,X as Rf,Y as Sf,Z as Tf,_ as Uf,$ as Vf};
@@ -1,3 +0,0 @@
1
- // @bun
2
- import{mt as H,nt as J}from"./chunk-6djzdes9.js";function Y(B,z){if(!/<style\s+[^>]*\bscoped\b/i.test(B))return{html:B,hasScoped:!1};let D=H(z),v=`data-v-${D}`,q=B,E=/<style\s+([^>]*\bscoped\b[^>]*)>([\s\S]*?)<\/style>/gi,F=!1;if(q=q.replace(E,(V,K,L)=>{F=!0;let M=Q(L,v),G=K.replace(/\bscoped\b/gi,"").trim(),O=G?` ${G}`:"";return`<style data-stx-scoped="${D}"${O}>${M}</style>`}),!F)return{html:B,hasScoped:!1};return q=U(q,v),{html:q,hasScoped:!0}}function Q(B,z){return J(B,"__SCOPE_PLACEHOLDER__",{preserveHost:!1}).replace(/\.(__SCOPE_PLACEHOLDER__) /g,`[${z}] `).replace(/\.(__SCOPE_PLACEHOLDER__)/g,`[${z}]`)}function U(B,z){let D=new Set(["script","style","template","html","head","body","meta","link","title","base","!doctype","!DOCTYPE"]);return B.replace(/<([a-zA-Z][a-zA-Z0-9-]*)(\s[^>]*)?\/?>/g,(v,q,E)=>{if(D.has(q.toLowerCase()))return v;if(v.includes(z))return v;if(q.toLowerCase()==="style"||q.toLowerCase()==="script")return v;if(E)return v.replace(`<${q}${E}`,`<${q} ${z}${E}`);if(v.endsWith("/>"))return`<${q} ${z} />`;return`<${q} ${z}>`})}
3
- export{Y as lt};
@@ -1,14 +0,0 @@
1
- // @bun
2
- class I{cache=new Map;maxSize;constructor(j=100){this.maxSize=j}get(j){if(!this.cache.has(j))return;let F=this.cache.get(j);return this.cache.delete(j),this.cache.set(j,F),F}set(j,F){if(this.cache.has(j))this.cache.delete(j);else if(this.cache.size>=this.maxSize){let D=this.cache.keys().next().value;if(D!==void 0)this.cache.delete(D)}this.cache.set(j,F)}has(j){return this.cache.has(j)}delete(j){return this.cache.delete(j)}clear(){this.cache.clear()}get size(){return this.cache.size}keys(){return this.cache.keys()}values(){return this.cache.values()}}var U=new Map,V=500;function z(j,F){if(F?.includes("g"))return new RegExp(j,F);let D=`${j}:${F||""}`;if(!U.has(D)){if(U.size>=V){let J=U.keys().next().value;if(J)U.delete(J)}U.set(D,new RegExp(j,F))}return U.get(D)}function A(){U.clear()}class G{cache=new Map;maxSize;ttl;constructor(j=1000,F=300000){this.maxSize=j,this.ttl=F}get(j){let F=this.cache.get(j);if(!F)return null;if(Date.now()-F.timestamp>this.ttl)return this.cache.delete(j),null;return F.result}set(j,F,D=new Set){if(this.cache.size>=this.maxSize){let J=this.cache.keys().next().value;if(J)this.cache.delete(J)}this.cache.set(j,{result:F,timestamp:Date.now(),dependencies:D})}invalidateDependency(j){let F=0;for(let[D,J]of this.cache.entries())if(J.dependencies.has(j))this.cache.delete(D),F++;return F}clear(){this.cache.clear()}getStats(){return{size:this.cache.size,maxSize:this.maxSize}}}function X(j,F){let D;return(...J)=>{if(D)clearTimeout(D);D=setTimeout(()=>{j(...J)},F)}}function M(j,F){let D=0,J;return(...N)=>{let Q=Date.now();if(Q-D>=F)D=Q,J=j(...N);return J}}function P(j,F=100){let D=new Map;return(...J)=>{let N;try{N=JSON.stringify(J)}catch{return j(...J)}if(D.has(N))return D.get(N);if(D.size>=F){let O=D.keys().next().value;if(O)D.delete(O)}let Q=j(...J);return D.set(N,Q),Q}}function R(j,F,D,J){if(typeof F==="string"){let N=z(F,J);if(typeof D==="string"&&J?.includes("i")){let Q=D;return j.replace(N,(O)=>{if(O===O.toUpperCase()&&O!==O.toLowerCase())return Q.toUpperCase();else if(O[0]===O[0].toUpperCase()&&O[0]!==O[0].toLowerCase())return Q[0].toUpperCase()+Q.slice(1).toLowerCase();else return Q.toLowerCase()})}return j.replace(N,D)}return j.replace(F,D)}class L{pool=[];maxPoolSize=10;fnCache=new Map;fnCacheMaxSize=200;getEvaluator(j){let F=Array.from(new Set(j)),D=F.sort().join(","),J=this.pool.find((T)=>T.context.join(",")===D);if(J)return J.func;let N=this.fnCache,Q=this.fnCacheMaxSize,O=(...T)=>{return(Y)=>{try{let Z=`${D}:${Y}`,$=N.get(Z);if(!$){if(N.size>=Q){let q=N.keys().next().value;if(q)N.delete(q)}$=Function(...F,`
3
- 'use strict';
4
- try {
5
- return ${Y};
6
- }
7
- catch (e) {
8
- if (e instanceof ReferenceError || e instanceof TypeError) {
9
- return undefined;
10
- }
11
- throw e;
12
- }
13
- `),N.set(Z,$)}return $(...T)}catch{return}}};if(this.pool.length<this.maxPoolSize)this.pool.push({func:O,context:F.slice()});return O}clear(){this.pool.length=0,this.fnCache.clear()}}var S=new L;class W{metrics=new Map;budgets=new Map;violations=[];maxViolations=100;violationHandlers=[];enabled=!0;setEnabled(j){this.enabled=j}isEnabled(){return this.enabled}setBudget(j,F){this.budgets.set(j,{warnThreshold:0.8,action:"warn",...F})}setBudgets(j){for(let[F,D]of Object.entries(j))this.setBudget(F,D)}removeBudget(j){this.budgets.delete(j)}getBudgets(){let j={};for(let[F,D]of this.budgets.entries())j[F]=D;return j}onViolation(j){this.violationHandlers.push(j)}offViolation(j){let F=this.violationHandlers.indexOf(j);if(F!==-1)this.violationHandlers.splice(F,1)}time(j,F){if(!this.enabled)return F();let D=performance.now(),J=F(),N=performance.now()-D;return this.recordTime(j,N),this.checkBudget(j,N),J}async timeAsync(j,F){if(!this.enabled)return F();let D=performance.now(),J=await F(),N=performance.now()-D;return this.recordTime(j,N),this.checkBudget(j,N),J}checkBudget(j,F){let D=this.budgets.get(j);if(!D)return;let J=F/D.maxTime*100,N=D.warnThreshold!==void 0?F>=D.maxTime*D.warnThreshold&&F<D.maxTime:!1,Q=F>=D.maxTime;if(!N&&!Q)return;let O={label:j,actualTime:F,budgetTime:D.maxTime,exceedancePercent:J,timestamp:new Date,isWarning:N};this.violations.push(O);while(this.violations.length>this.maxViolations)this.violations.shift();for(let Y of this.violationHandlers)try{Y(O)}catch{}let T=N?`[Performance Warning] "${j}" took ${F.toFixed(2)}ms (${J.toFixed(1)}% of ${D.maxTime}ms budget)`:`[Performance Budget Exceeded] "${j}" took ${F.toFixed(2)}ms (exceeded ${D.maxTime}ms budget by ${(J-100).toFixed(1)}%)`;switch(D.action){case"log":console.log(T);break;case"warn":console.warn(T);break;case"error":console.error(T);break;case"throw":if(Q)throw Error(T);else console.warn(T);break}}recordTime(j,F){let D=this.metrics.get(j);if(D)D.count++,D.totalTime+=F,D.maxTime=Math.max(D.maxTime,F),D.minTime=Math.min(D.minTime,F);else this.metrics.set(j,{count:1,totalTime:F,maxTime:F,minTime:F})}getStats(j){if(j){let D=this.metrics.get(j);if(!D)return{};let J=this.budgets.get(j);return{count:D.count,avgTime:D.totalTime/D.count,totalTime:D.totalTime,maxTime:D.maxTime,minTime:D.minTime,budget:J?.maxTime,budgetUtilization:J?D.totalTime/D.count/J.maxTime*100:void 0}}let F={};for(let[D,J]of this.metrics.entries()){let N=this.budgets.get(D);F[D]={count:J.count,avgTime:J.totalTime/J.count,totalTime:J.totalTime,maxTime:J.maxTime,minTime:J.minTime,budget:N?.maxTime,budgetUtilization:N?J.totalTime/J.count/N.maxTime*100:void 0}}return F}getViolations(j){if(j)return this.violations.filter((F)=>F.label===j);return[...this.violations]}getViolationStats(){let j={},F=0,D=0;for(let J of this.violations)if(j[J.label]=(j[J.label]||0)+1,J.isWarning)F++;else D++;return{total:this.violations.length,byLabel:j,warnings:F,errors:D}}clear(){this.metrics.clear()}clearViolations(){this.violations.length=0}clearBudgets(){this.budgets.clear()}reset(){this.clear(),this.clearViolations(),this.clearBudgets(),this.violationHandlers.length=0}}var H={processDirectives:{maxTime:500,warnThreshold:0.8,action:"warn"},processTemplate:{maxTime:200,warnThreshold:0.8,action:"warn"},processIncludes:{maxTime:100,warnThreshold:0.8,action:"warn"},processLoops:{maxTime:50,warnThreshold:0.8,action:"warn"},processConditionals:{maxTime:50,warnThreshold:0.8,action:"warn"},processExpressions:{maxTime:100,warnThreshold:0.8,action:"warn"},renderComponent:{maxTime:150,warnThreshold:0.8,action:"warn"},buildWebComponents:{maxTime:1000,warnThreshold:0.8,action:"warn"}},B=null;function w(){if(!B)B=new W;return B}var _=new Proxy({},{get(j,F){return w()[F]}});function v(j=w()){j.setBudgets(H)}function K(){B=null}
14
- export{I as Ax,z as Bx,A as Cx,G as Dx,X as Ex,M as Fx,P as Gx,R as Hx,S as Ix,W as Jx,H as Kx,w as Lx,_ as Mx,v as Nx,K as Ox};
@@ -1,8 +0,0 @@
1
- // @bun
2
- function j(g){let f=g.robots??"allow";if(f===!1)return null;if(typeof f==="string"&&f!=="allow"&&f!=="disallow")return f.endsWith(`
3
- `)?f:`${f}
4
- `;let h=g.sitemap!==!1?`Sitemap: ${g.url.replace(/\/$/,"")}/sitemap.xml
5
- `:"";if(f==="disallow")return["User-agent: *","Disallow: /","",h].filter(Boolean).join(`
6
- `);return["User-agent: *","Allow: /","",h].filter(Boolean).join(`
7
- `)}
8
- export{j as fh};
@@ -1,3 +0,0 @@
1
- // @bun
2
- import{gz as L}from"./chunk-gz5fmp3q.js";import{pB as $}from"./chunk-xv34zbp4.js";import{existsSync as j,readFileSync as u}from"fs";var I=new Map;function q(E){try{return $.resolve(`@iconify/json/json/${E}.json`)}catch{}let G=process.cwd();for(let H of[`${G}/node_modules/@iconify/json/json/${E}.json`,`${G}/pantry/@iconify/json/json/${E}.json`])if(j(H))return H;return null}function D(E){if(I.has(E))return I.get(E);let G=q(E);if(!G)return null;try{let H=JSON.parse(u(G,"utf8"));return I.set(E,H.icons),H.icons}catch{return null}}async function R(E){if(I.has(E))return I.get(E);let G=q(E);if(!G)return null;try{let H=await Bun.file(G).json();return I.set(E,H.icons),H.icons}catch{return null}}function J(E,G){if(E.serverDynamic[G]!==void 0)return String(E.serverDynamic[G]);if(E.static[G]!==void 0)return String(E.static[G]);if(E.clientReactive[G]!==void 0)return E.clientReactive[G];return}var b={name:"Icon",aliases:["icon","stx-icon"],render(E,G,H){let M=J(E,"name")??J(E,"icon");if(!M)return"<!-- Icon: missing name/icon prop -->";let K="lucide",Q=M;if(M.includes(":")){let Z=M.split(":");K=Z[0],Q=Z[1]}let U=L(J(E,"size")||"24"),V=L(J(E,"color")||"currentColor"),W=L(J(E,"class")||""),X=L(J(E,"style")||""),Y=I.get(K)??D(K);if(!Y)return`<!-- Icon: collection "${K}" not loaded -->`;let O=Y[Q];if(!O)return`<!-- Icon: "${Q}" not found in ${K} -->`;let B=O.width||24,F=O.height||24,z=`0 0 ${B} ${F}`,T=O.body;if(V!=="currentColor")T=T.replace(/currentColor/g,V);let S=W?` class="${W}"`:"",g=X?` style="${X}"`:"";return`<svg xmlns="http://www.w3.org/2000/svg" width="${U}" height="${U}" viewBox="${z}" fill="none"${S}${g}>${T}</svg>`}};async function A(E="lucide"){await R(E)}
3
- export{b as dz,A as ez};
@@ -1,83 +0,0 @@
1
- // @bun
2
- function x(){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
- }`}function z(b){return`
53
- <div class="theme-selector">
54
- Theme:
55
- <select id="themeSelector" onchange="changeTheme()">
56
- ${b}
57
- </select>
58
- </div>`}function B(){return`
59
- function changeTheme() {
60
- const theme = document.getElementById('themeSelector').value;
61
-
62
- // Toggle dark mode class based on theme
63
- // Dark themes typically include these keywords in their names
64
- if (theme.includes('dark') || theme.includes('night') || theme.includes('monokai') ||
65
- theme.includes('dracula') || theme.includes('nord') || theme.includes('material')) {
66
- document.body.classList.add('dark-mode');
67
- }
68
- else {
69
- document.body.classList.remove('dark-mode');
70
- }
71
- }
72
-
73
- // Initialize theme on page load
74
- document.addEventListener('DOMContentLoaded', changeTheme);`}function F(b){if(Object.keys(b).length===0)return"";return`
75
- <div class="frontmatter">
76
- <h3>Frontmatter</h3>
77
- ${Object.entries(b).map(([j,g])=>`
78
- <div class="frontmatter-item">
79
- <span class="frontmatter-label">${j}:</span>
80
- <span>${Array.isArray(g)?g.join(", "):String(g)}</span>
81
- </div>`).join("")}
82
- </div>`}var q=["dark","night","monokai","dracula","nord","material","ayu","one-dark","tokyo","gruvbox","solarized-dark"];function G(b){let j=b.toLowerCase();return q.some((g)=>j.includes(g))}
83
- export{x as mo,z as no,B as oo,F as po,q as qo,G as ro};
@@ -1,3 +0,0 @@
1
- // @bun
2
- import{Buffer as R}from"buffer";import S from"crypto";var W=40,V="_token",w=null;function X(j=W){let q=S.randomBytes(Math.ceil(j/2)).toString("hex").slice(0,j);return w=q,q}function Y(){if(!w)X();return w}function v(){w=null}function G(j){w=j}function Z(j=V){let q=Y();return`<input type="hidden" name="${j}" value="${q}">`}function H(j){return j.replace(/@csrf(?:\((['"])([^'"]*)\1\))?/g,(q,J,z)=>{return Z(z||V)})}function K(j,q){let J=q??w;if(!J)return!1;let z=R.from(j),Q=R.from(J);if(z.length!==Q.length)return!1;return S.timingSafeEqual(z,Q)}
3
- export{X as sx,Y as tx,v as ux,G as vx,Z as wx,H as xx,K as yx};
@@ -1,57 +0,0 @@
1
- // @bun
2
- import{$j as R,Wj as _,Xj as M}from"./chunk-trfswy66.js";async function y(q){let{src:w,alt:j="",signatureEndpoint:z="/api/sign",signatureConfig:F={},auth:J,fallback:K,oneTimeUse:G=!0}=q,W=q.class,X=q.style;if(J){if(!await _(J)){if(K)return{html:`<img src="${B(K)}" alt="${B(j)}"${W?` class="${B(W)}"`:""}${X?` style="${B(X)}"`:""} />`};return{html:"<!-- Protected content: access denied -->"}}}let $={endpoint:z,oneTimeUse:G,...F,params:J?M(J):F.params},Y=`stx-protected-${Math.random().toString(36).slice(2,8)}`,O=[`id="${Y}"`,`data-protected-src="${B(w)}"`,`data-signature-endpoint="${B(z)}"`,`alt="${B(j)}"`];if(K)O.push(`data-fallback="${B(K)}"`),O.push(`src="${B(K)}"`);else O.push('src="data:image/gif;base64,R0lGODlhAQABAIAAAAAAAP///yH5BAEAAAAALAAAAAABAAEAAAIBRAA7"');if(W)O.push(`class="${B(W)}"`);if(X)O.push(`style="${B(X)}"`);let Z=`
3
- (function() {
4
- var el = document.getElementById('${Y}');
5
- if (!el) return;
6
-
7
- STX.loadProtectedMedia(el, {
8
- endpoint: '${B(z)}',
9
- oneTimeUse: ${G},
10
- expirationSeconds: ${F.expirationSeconds||3600}
11
- });
12
- })();
13
- `.trim();return{html:`<img ${O.join(" ")} />`,script:Z}}async function C(q){let{src:w,signatureEndpoint:j="/api/sign",signatureConfig:z={},auth:F,fallback:J,oneTimeUse:K=!0,poster:G,controls:W=!0,autoplay:X=!1,muted:$=!1,loop:Y=!1}=q,O=q.class,Z=q.style,P=q.alt;if(F){if(!await _(F))return{html:"<!-- Protected video: access denied -->"}}let H=`stx-protected-video-${Math.random().toString(36).slice(2,8)}`,Q=[`id="${H}"`,`data-protected-src="${B(w)}"`,`data-signature-endpoint="${B(j)}"`];if(G)Q.push(`poster="${B(G)}"`);if(W)Q.push("controls");if(X)Q.push("autoplay");if($)Q.push("muted");if(Y)Q.push("loop");if(O)Q.push(`class="${B(O)}"`);if(Z)Q.push(`style="${B(Z)}"`);if(J)Q.push(`data-fallback="${B(J)}"`);let V=`
14
- (function() {
15
- var el = document.getElementById('${H}');
16
- if (!el) return;
17
-
18
- STX.loadProtectedMedia(el, {
19
- endpoint: '${B(j)}',
20
- oneTimeUse: ${K},
21
- expirationSeconds: ${z.expirationSeconds||3600}
22
- });
23
- })();
24
- `.trim();return{html:`<video ${Q.join(" ")}></video>`,script:V}}async function x(q,w){let j=/data-protected-src="([^"]+)"/g,z=[],F;while((F=j.exec(q))!==null)z.push(F[1]);if(z.length===0)return{html:q,script:""};let J=R()+`
25
-
26
- `;return J+=`
27
- (function() {
28
- var sources = ${JSON.stringify(z)};
29
- var endpoint = '${B(w)}';
30
-
31
- // Batch sign all URLs
32
- STX.batchSignUrls(sources, { endpoint: endpoint })
33
- .then(function(data) {
34
- sources.forEach(function(src) {
35
- var els = document.querySelectorAll('[data-protected-src="' + src + '"]');
36
- var signedUrl = data.signatures && data.signatures[src];
37
-
38
- els.forEach(function(el) {
39
- if (signedUrl) {
40
- if (el.tagName === 'IMG') el.src = signedUrl.url;
41
- else if (el.tagName === 'VIDEO') { el.src = signedUrl.url; el.load(); }
42
- }
43
- else if (el.dataset.fallback) {
44
- el.src = el.dataset.fallback;
45
- }
46
- });
47
- });
48
- })
49
- .catch(function(error) {
50
- console.error('Failed to sign protected media:', error);
51
- document.querySelectorAll('[data-protected-src]').forEach(function(el) {
52
- if (el.dataset.fallback) el.src = el.dataset.fallback;
53
- });
54
- });
55
- })();
56
- `.trim(),{html:q,script:J}}function E(q,w,j){if(w.src)return{src:String(w.src),alt:String(w.alt||""),signatureEndpoint:String(w.signatureEndpoint||"/api/sign"),auth:w.auth,fallback:w.fallback?String(w.fallback):void 0,oneTimeUse:w.oneTimeUse!==!1};let z=q.trim();if(z.startsWith("@protected(")||z.startsWith("("))z=z.replace(/^@protected\(/,"").replace(/^\(/,"").replace(/\)$/,"");let F=D(z);return{src:L(F[0],j)||"",alt:L(F[1],j)||"",...typeof F[2]==="object"?F[2]:{}}}function D(q){let w=[],j="",z=!1,F="",J=0;for(let K=0;K<q.length;K++){let G=q[K],W=K>0?q[K-1]:"";if((G==='"'||G==="'")&&W!=="\\"){if(!z)z=!0,F=G;else if(G===F)z=!1;else j+=G;continue}if(!z){if(G==="{")J++;if(G==="}")J--;if(G===","&&J===0){w.push(j.trim()),j="";continue}}j+=G}if(j.trim())w.push(j.trim());return w}function L(q,w){if(typeof q!=="string")return q;let j=q.trim();if(j.startsWith('"')&&j.endsWith('"')||j.startsWith("'")&&j.endsWith("'"))return j.slice(1,-1);if(w[j]!==void 0)return w[j];if(j.startsWith("{"))try{return JSON.parse(j)}catch{}return j}function B(q){return q.replace(/&/g,"&amp;").replace(/"/g,"&quot;").replace(/'/g,"&#039;").replace(/</g,"&lt;").replace(/>/g,"&gt;")}
57
- export{y as Mj,C as Nj,x as Oj,E as Pj};