@stacksjs/stx 0.2.91 → 0.2.93
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.
- package/dist/a11y.js +1 -1
- package/dist/analytics.js +1 -1
- package/dist/analyzer.js +1 -1
- package/dist/animation.js +1 -1
- package/dist/app-shell.js +1 -1
- package/dist/app.js +1 -1
- package/dist/assets.js +1 -1
- package/dist/ast.js +1 -1
- package/dist/async-components.js +1 -1
- package/dist/auth.js +1 -1
- package/dist/broadcasting.js +1 -1
- package/dist/browser-composables.js +1 -1
- package/dist/build-assets.js +1 -1
- package/dist/build-mode-detector.js +1 -1
- package/dist/build-optimizer.js +1 -1
- package/dist/build-views.js +1 -1
- package/dist/build.js +1 -1
- package/dist/builtins/drawer.js +1 -1
- package/dist/builtins/escape.js +1 -1
- package/dist/builtins/icon.js +1 -1
- package/dist/builtins/index.js +1 -1
- package/dist/builtins/modal.js +1 -1
- package/dist/builtins/safe-image.js +1 -1
- package/dist/builtins/stx-image.js +1 -1
- package/dist/builtins/stx-link.js +1 -1
- package/dist/builtins/stx-loading-indicator.js +1 -1
- package/dist/builtins/suspense.js +1 -1
- package/dist/builtins/toast.js +1 -1
- package/dist/builtins/tooltip.js +1 -1
- package/dist/builtins/transition-group.js +1 -1
- package/dist/bundle-analyzer/collector.js +1 -1
- package/dist/bundle-analyzer/index.js +1 -1
- package/dist/bundle-analyzer/report.js +1 -1
- package/dist/bundle-analyzer/treemap.js +1 -1
- package/dist/caching.js +1 -1
- package/dist/{chunk-5y4q9abj.js → chunk-04n64bnt.js} +1 -1
- package/dist/{chunk-7m6jbrky.js → chunk-06w68hyg.js} +2 -2
- package/dist/{chunk-ccgmxmjk.js → chunk-07y6m5xx.js} +1 -1
- package/dist/{chunk-j25swncq.js → chunk-095s3972.js} +1 -1
- package/dist/{chunk-ckz0ppkr.js → chunk-09k66d8a.js} +1 -1
- package/dist/{chunk-tqzv7g2r.js → chunk-0a61y94n.js} +2 -2
- package/dist/{chunk-exfw0aqe.js → chunk-0dx4q6yq.js} +1 -1
- package/dist/{chunk-t1dzvz5z.js → chunk-0dz85jrp.js} +1 -1
- package/dist/{chunk-k7yp9h17.js → chunk-0jd0pndq.js} +1 -1
- package/dist/{chunk-r738cjs3.js → chunk-0p0nyq50.js} +2 -2
- package/dist/{chunk-ke7rcrfm.js → chunk-0p1h3p3w.js} +1 -1
- package/dist/{chunk-9pzdyd8q.js → chunk-0qnz93q2.js} +2 -2
- package/dist/{chunk-j6d9ksyj.js → chunk-10debkj5.js} +1 -1
- package/dist/{chunk-pzc0bs5r.js → chunk-15nesxgt.js} +2 -2
- package/dist/{chunk-snj1hfpb.js → chunk-1sr54zp8.js} +1 -1
- package/dist/{chunk-3whqk46c.js → chunk-1v49fwr5.js} +1 -1
- package/dist/chunk-1xz0w746.js +1539 -0
- package/dist/{chunk-jmky0qzm.js → chunk-1z5nhbjt.js} +1 -1
- package/dist/{chunk-qhrcts5t.js → chunk-20swzkx3.js} +1 -1
- package/dist/{chunk-jm460jxs.js → chunk-27zsyhrd.js} +1 -1
- package/dist/{chunk-t88cgftn.js → chunk-29y0hk5z.js} +2 -2
- package/dist/{chunk-zv9jfm2f.js → chunk-2cdvw21b.js} +1 -1
- package/dist/{chunk-2rd0ykrg.js → chunk-2j21d3ka.js} +1 -1
- package/dist/chunk-2jxbwnkz.js +2 -0
- package/dist/{chunk-a2xzs4kd.js → chunk-31dr4bys.js} +2 -2
- package/dist/{chunk-08ncwhv7.js → chunk-35faj94w.js} +1 -1
- package/dist/{chunk-nv3k4bf9.js → chunk-39gm08bn.js} +1 -1
- package/dist/{chunk-dtcj9r7p.js → chunk-3a4qsygv.js} +2 -2
- package/dist/{chunk-xkzz5rb0.js → chunk-3te20hqw.js} +2 -2
- package/dist/{chunk-z06myqr1.js → chunk-43t7faps.js} +2 -2
- package/dist/{chunk-jcjzg6r5.js → chunk-47kpewks.js} +1 -1
- package/dist/{chunk-my0qmjw4.js → chunk-4d2y57k7.js} +2 -2
- package/dist/{chunk-c9f5k95v.js → chunk-4deg33rw.js} +2 -2
- package/dist/{chunk-t38vt890.js → chunk-4k7d8p8d.js} +1 -1
- package/dist/{chunk-n2wmny2b.js → chunk-4qcy5tx6.js} +2 -2
- package/dist/{chunk-9d0q9k3p.js → chunk-4x7kae4j.js} +2 -2
- package/dist/{chunk-qr72av66.js → chunk-55nwdnsd.js} +1 -1
- package/dist/{chunk-1vz36hw3.js → chunk-55yp0q8t.js} +1 -1
- package/dist/{chunk-rqwhb85x.js → chunk-5f43yz6z.js} +2 -2
- package/dist/{chunk-b0w1cm1s.js → chunk-5shey2e4.js} +1 -1
- package/dist/{chunk-b37f9ebf.js → chunk-6b5k6w2q.js} +1 -1
- package/dist/{chunk-zwdargbj.js → chunk-6djzdes9.js} +1 -1
- package/dist/{chunk-knefeadt.js → chunk-6e4c6g46.js} +2 -2
- package/dist/{chunk-0fsrhs3d.js → chunk-6eqbxcrd.js} +1 -1
- package/dist/{chunk-9p45wwff.js → chunk-7074g241.js} +1 -1
- package/dist/{chunk-88wdr7f3.js → chunk-7b6s3g65.js} +1 -1
- package/dist/{chunk-5wecgn5n.js → chunk-7cgmq685.js} +1 -1
- package/dist/{chunk-eghdf4qq.js → chunk-7dkz6z2s.js} +2 -2
- package/dist/{chunk-h6s1thg6.js → chunk-7ed3tean.js} +1 -1
- package/dist/{chunk-zr8631g4.js → chunk-7gd339hd.js} +1 -1
- package/dist/{chunk-vbysnq00.js → chunk-7j5e8sdj.js} +2 -2
- package/dist/{chunk-j55xkgq8.js → chunk-7n8g0nfn.js} +2 -2
- package/dist/{chunk-31w1xfs1.js → chunk-80g54ncj.js} +1 -1
- package/dist/{chunk-6wqrqn2x.js → chunk-8a5bxece.js} +2 -2
- package/dist/{chunk-nsbwxkj5.js → chunk-8ahwt6a4.js} +2 -2
- package/dist/{chunk-y92w0240.js → chunk-8b3z0zd5.js} +1 -1
- package/dist/{chunk-2hnv9414.js → chunk-8dhdpa5h.js} +2 -2
- package/dist/{chunk-04yrgvdd.js → chunk-8n9nnqr6.js} +1 -1
- package/dist/{chunk-h1035wzj.js → chunk-8qc1bsym.js} +1 -1
- package/dist/{chunk-0n11c9hw.js → chunk-8va64c9n.js} +2 -2
- package/dist/{chunk-yssvz8zs.js → chunk-8vtm0m84.js} +1 -1
- package/dist/{chunk-c23697dp.js → chunk-8xj7c3mf.js} +1 -1
- package/dist/{chunk-8g0jb444.js → chunk-988dw6q3.js} +2 -2
- package/dist/{chunk-ktvdeqjr.js → chunk-9b6cec0v.js} +1 -1
- package/dist/{chunk-m911bf2b.js → chunk-9cf97f9p.js} +2 -2
- package/dist/{chunk-xgmza98t.js → chunk-9ecv8aqj.js} +1 -1
- package/dist/{chunk-ydhza16t.js → chunk-9eq3ht5f.js} +1 -1
- package/dist/{chunk-sd2c11bp.js → chunk-9jtj77jx.js} +2 -2
- package/dist/{chunk-yywc3yge.js → chunk-9t14se2t.js} +1 -1
- package/dist/{chunk-w719zps0.js → chunk-9wmq2272.js} +1 -1
- package/dist/{chunk-wk7mgg5n.js → chunk-9zbk5zx5.js} +2 -2
- package/dist/{chunk-rdaavfsg.js → chunk-a2g2qb2y.js} +1 -1
- package/dist/{chunk-agzvhej1.js → chunk-a3hyn4we.js} +1 -1
- package/dist/{chunk-fk6ted7p.js → chunk-a87qqft6.js} +2 -2
- package/dist/{chunk-md4j8nch.js → chunk-ah88wzbg.js} +1 -1
- package/dist/{chunk-wdtanmx1.js → chunk-akf1r75r.js} +1 -1
- package/dist/{chunk-xw9skf0n.js → chunk-amaa1bev.js} +1 -1
- package/dist/{chunk-rth1890k.js → chunk-avx8aydt.js} +2 -2
- package/dist/{chunk-kh976zgv.js → chunk-ay9qf4zj.js} +1 -1
- package/dist/{chunk-aaaxvn5r.js → chunk-aywxfqev.js} +1 -1
- package/dist/{chunk-19f7xyy7.js → chunk-azkegjd8.js} +2 -2
- package/dist/{chunk-tgvekhwz.js → chunk-b77wjyn7.js} +1 -1
- package/dist/{chunk-tj9kmtnx.js → chunk-baf1hfwh.js} +2 -2
- package/dist/{chunk-zxxt0c9q.js → chunk-bdk6g1vj.js} +2 -2
- package/dist/{chunk-j1myedcr.js → chunk-bhqgmyqw.js} +1 -1
- package/dist/{chunk-13mkbvxc.js → chunk-bk3j0n82.js} +1 -1
- package/dist/{chunk-jtx73fsh.js → chunk-bndmdahk.js} +2 -2
- package/dist/{chunk-nacsxc1r.js → chunk-bpgg59wa.js} +1 -1
- package/dist/{chunk-xmjedbkt.js → chunk-bs3gmfxz.js} +1 -1
- package/dist/{chunk-dnkq5y2j.js → chunk-bxc7kjsk.js} +2 -2
- package/dist/{chunk-0qzxbxgp.js → chunk-c7jg8w13.js} +1 -1
- package/dist/{chunk-nh418dpm.js → chunk-ckxjqqn9.js} +2 -2
- package/dist/{chunk-tfjem6g3.js → chunk-d0zjtdw4.js} +2 -2
- package/dist/{chunk-4bpb2es7.js → chunk-d1qh1x2g.js} +2 -2
- package/dist/{chunk-6jhqq7es.js → chunk-djddhmcc.js} +1 -1
- package/dist/{chunk-5tv1swsr.js → chunk-dqn9gyhb.js} +1 -1
- package/dist/{chunk-krxvy5wr.js → chunk-drjq2zwg.js} +2 -2
- package/dist/{chunk-cf86cs0k.js → chunk-dvfs1h3c.js} +2 -2
- package/dist/{chunk-p4wm4a45.js → chunk-e2q9c5vq.js} +2 -2
- package/dist/{chunk-pthx7bxa.js → chunk-e98v1bc6.js} +2 -2
- package/dist/chunk-ejayeex8.js +2 -0
- package/dist/{chunk-a4zj7qpt.js → chunk-ejh8fyak.js} +1 -1
- package/dist/{chunk-fh1d8bxd.js → chunk-ek2w6zvy.js} +1 -1
- package/dist/{chunk-0m53nxvy.js → chunk-ewa88139.js} +1 -1
- package/dist/{chunk-pjaa8q7x.js → chunk-fjk3x41y.js} +2 -2
- package/dist/{chunk-6sx4d083.js → chunk-frg705zq.js} +1 -1
- package/dist/{chunk-acry1mfc.js → chunk-fzm3y0r3.js} +1 -1
- package/dist/{chunk-4wsmprpm.js → chunk-g1vt329s.js} +12 -12
- package/dist/{chunk-zxsqbve0.js → chunk-g4ps1dj8.js} +2 -2
- package/dist/{chunk-x6n8z1n8.js → chunk-gkzq8zw4.js} +1 -1
- package/dist/{chunk-hkjq64we.js → chunk-gz5fmp3q.js} +1 -1
- package/dist/{chunk-ddst5g08.js → chunk-h0hjy0kn.js} +1 -1
- package/dist/{chunk-e792k31a.js → chunk-h5jxydqq.js} +1 -1
- package/dist/{chunk-at9v5saf.js → chunk-h5wa62ek.js} +1 -1
- package/dist/{chunk-91gyjg5c.js → chunk-h7aq56qj.js} +2 -2
- package/dist/{chunk-ecabspxs.js → chunk-h82kjdr4.js} +1 -1
- package/dist/{chunk-xxgdw2s8.js → chunk-hbehnm18.js} +2 -2
- package/dist/{chunk-v9199ywv.js → chunk-hbgxbgam.js} +2 -2
- package/dist/{chunk-5e2khb7q.js → chunk-hc2mf5h6.js} +2 -2
- package/dist/{chunk-r7d26vjj.js → chunk-hjm2xab3.js} +1 -1
- package/dist/{chunk-y248bdr9.js → chunk-hrnnh4tq.js} +2 -2
- package/dist/{chunk-fze9db64.js → chunk-ht43ds42.js} +2 -2
- package/dist/{chunk-22xxm2x5.js → chunk-hxx3za24.js} +1 -1
- package/dist/{chunk-nqxqy9v2.js → chunk-hy8820vc.js} +1 -1
- package/dist/{chunk-fbbv5x9m.js → chunk-j447q024.js} +2 -2
- package/dist/{chunk-am5rtv86.js → chunk-j58vh0w6.js} +1 -1
- package/dist/{chunk-sgsb5xp4.js → chunk-j8tn8enq.js} +2 -2
- package/dist/{chunk-vwp4dw7e.js → chunk-jc0fc4ht.js} +1 -1
- package/dist/{chunk-kemb0fyc.js → chunk-jcs0ymw7.js} +1 -1
- package/dist/{chunk-fnt3srfr.js → chunk-jjamhxpm.js} +1 -1
- package/dist/{chunk-w7bgs9ze.js → chunk-jjb05d21.js} +2 -2
- package/dist/{chunk-g3f1xq76.js → chunk-jjdq01dv.js} +1 -1
- package/dist/{chunk-a33kr9b0.js → chunk-jnmgm2xw.js} +1 -1
- package/dist/{chunk-kqtchwz7.js → chunk-jpndqst5.js} +1 -1
- package/dist/{chunk-1hyk728h.js → chunk-jt0ezawy.js} +1 -1
- package/dist/{chunk-w4a3cvtp.js → chunk-jz73j3qs.js} +1 -1
- package/dist/{chunk-n3k3e9n5.js → chunk-k21df0pg.js} +1 -1
- package/dist/{chunk-dcp0znhd.js → chunk-k848dzsa.js} +1 -1
- package/dist/{chunk-4e3yxhkd.js → chunk-kdfe4t91.js} +2 -2
- package/dist/{chunk-7aph6rw7.js → chunk-keawsbpn.js} +1 -1
- package/dist/{chunk-jdy93c39.js → chunk-kgym7ch9.js} +1 -1
- package/dist/{chunk-1htmc8mb.js → chunk-khdn7jwe.js} +2 -2
- package/dist/{chunk-f9j3mr9z.js → chunk-km25cwz6.js} +1 -1
- package/dist/{chunk-r1m8g439.js → chunk-knm8a8yx.js} +1 -1
- package/dist/{chunk-zepv7y44.js → chunk-krqn0ddk.js} +2 -2
- package/dist/{chunk-2aydpj2n.js → chunk-kx6eb6ma.js} +1 -1
- package/dist/{chunk-syffx53n.js → chunk-kypas8vy.js} +2 -2
- package/dist/{chunk-npj33yqb.js → chunk-m167kjhv.js} +1 -1
- package/dist/{chunk-x4qr3b2z.js → chunk-m491r0rj.js} +1 -1
- package/dist/{chunk-ktpc2rc4.js → chunk-m8448qby.js} +1 -1
- package/dist/{chunk-fk0m346m.js → chunk-mgj88zeq.js} +2 -2
- package/dist/{chunk-7sd6c9wv.js → chunk-mhgk632d.js} +1 -1
- package/dist/{chunk-sn7pmfn4.js → chunk-n5kg7fpx.js} +1 -1
- package/dist/{chunk-02bd1cng.js → chunk-n98x35xd.js} +1 -1
- package/dist/{chunk-4ep9gk7d.js → chunk-n9dhs1dw.js} +1 -1
- package/dist/{chunk-8x58wmgs.js → chunk-nd9rmddh.js} +2 -2
- package/dist/{chunk-xm3hz63f.js → chunk-ngxfwzq3.js} +1 -1
- package/dist/{chunk-tavtph8x.js → chunk-nhv099jv.js} +1 -1
- package/dist/{chunk-1k3k1tf8.js → chunk-nm15ccsg.js} +2 -2
- package/dist/{chunk-2g16stee.js → chunk-npfmdb6y.js} +2 -2
- package/dist/{chunk-fngb9apr.js → chunk-nvwb4x04.js} +1 -1
- package/dist/{chunk-ydhrdatx.js → chunk-nw34xajc.js} +1 -1
- package/dist/{chunk-9v7q6xn4.js → chunk-p077sw22.js} +1 -1
- package/dist/{chunk-hrgg37a9.js → chunk-p1h8065h.js} +2 -2
- package/dist/{chunk-tb9c2mq7.js → chunk-p3e0cqtt.js} +2 -2
- package/dist/{chunk-gapx9vqm.js → chunk-p3fpb79v.js} +1 -1
- package/dist/{chunk-c7zedzbg.js → chunk-p52yzjq6.js} +2 -2
- package/dist/{chunk-wtgrc6ya.js → chunk-p73meypx.js} +1 -1
- package/dist/{chunk-9fj7hpwa.js → chunk-pa9zb7ty.js} +1 -1
- package/dist/{chunk-3wth4wa6.js → chunk-payfb24w.js} +1 -1
- package/dist/{chunk-tzehzwyr.js → chunk-pcm1vd8w.js} +1 -1
- package/dist/{chunk-h3mb2q51.js → chunk-pcntd9h4.js} +2 -2
- package/dist/{chunk-xecnz132.js → chunk-pg1fvqb9.js} +1 -1
- package/dist/{chunk-hdv4tnvh.js → chunk-psc3wfcf.js} +2 -2
- package/dist/{chunk-1qy4gac6.js → chunk-pznnww6k.js} +2 -2
- package/dist/{chunk-6e08xfzp.js → chunk-q6zhd9yf.js} +1 -1
- package/dist/{chunk-crjrbczd.js → chunk-qa59zejf.js} +3 -3
- package/dist/{chunk-r6sb1sm4.js → chunk-qvrbjpdc.js} +2 -2
- package/dist/{chunk-sk1gmrr8.js → chunk-qygvvygy.js} +2 -2
- package/dist/{chunk-wntaqqhz.js → chunk-r0jcmpv6.js} +1 -1
- package/dist/{chunk-t7ghqd7e.js → chunk-r5m9xtm7.js} +2 -2
- package/dist/{chunk-kpp2baaz.js → chunk-rkffm9sy.js} +1 -1
- package/dist/{chunk-xnf61ake.js → chunk-rpx5fa65.js} +2 -2
- package/dist/{chunk-1yg3x73j.js → chunk-rqxf5hns.js} +1 -1
- package/dist/{chunk-f7f4g33p.js → chunk-rtr974rc.js} +2 -2
- package/dist/{chunk-fyq5573f.js → chunk-rvptcndz.js} +2 -2
- package/dist/{chunk-bdp5z6mt.js → chunk-rw26rpek.js} +2 -2
- package/dist/{chunk-gfj0a29j.js → chunk-rw7937v4.js} +2 -2
- package/dist/{chunk-zvyc82ke.js → chunk-rwrv9wbf.js} +1 -1
- package/dist/{chunk-bg1xym0q.js → chunk-rz2ec6g7.js} +1 -1
- package/dist/{chunk-64bwamng.js → chunk-s6ja2bdg.js} +1 -1
- package/dist/{chunk-4ewrwqwn.js → chunk-scpkdrdb.js} +1 -1
- package/dist/{chunk-29qrr0nc.js → chunk-shv88d2d.js} +2 -2
- package/dist/{chunk-8xbj6dqe.js → chunk-t0c9wvpr.js} +1 -1
- package/dist/{chunk-f228sm5e.js → chunk-tffh3b1e.js} +1 -1
- package/dist/{chunk-3rgj1qn6.js → chunk-tg2f1mzq.js} +2 -2
- package/dist/{chunk-fcpxs8mm.js → chunk-trfswy66.js} +1 -1
- package/dist/{chunk-rkr7cgs8.js → chunk-tzwtg722.js} +1 -1
- package/dist/{chunk-a50svyjn.js → chunk-v7f8jj15.js} +1 -1
- package/dist/{chunk-qvmrwh8n.js → chunk-v8j49spx.js} +1 -1
- package/dist/{chunk-zwpm1pa8.js → chunk-vcr5pzpx.js} +1 -1
- package/dist/{chunk-j0mbt7fb.js → chunk-veeerpwa.js} +2 -2
- package/dist/{chunk-p993psbk.js → chunk-vg5kt6az.js} +1 -1
- package/dist/{chunk-hd27hhzr.js → chunk-vgv7jvyz.js} +1 -1
- package/dist/{chunk-9ezvda3j.js → chunk-vjbefncc.js} +1 -1
- package/dist/{chunk-e8x46y38.js → chunk-vmxjghsm.js} +1 -1
- package/dist/{chunk-dkt9p3bk.js → chunk-vw7vqd76.js} +1 -1
- package/dist/{chunk-p5j0686t.js → chunk-w3b6m427.js} +1 -1
- package/dist/{chunk-593x2ccf.js → chunk-wazkqv7n.js} +2 -2
- package/dist/{chunk-bgan5edn.js → chunk-wf7zrjsw.js} +1 -1
- package/dist/{chunk-b5xf2v7f.js → chunk-wfg2gm11.js} +1 -1
- package/dist/{chunk-1w3354fv.js → chunk-wg9k6h8w.js} +2 -2
- package/dist/{chunk-dcpbe8a1.js → chunk-wkz2vwkr.js} +2 -2
- package/dist/{chunk-mp9dsjrg.js → chunk-wvef3ngh.js} +1 -1
- package/dist/{chunk-w3e1fm1q.js → chunk-wvf31nzs.js} +1 -1
- package/dist/{chunk-1bzckhs2.js → chunk-x05nxhyv.js} +2 -2
- package/dist/{chunk-ybe2cpx1.js → chunk-x0770gt9.js} +1 -1
- package/dist/{chunk-ds6g241c.js → chunk-x24s4heg.js} +1 -1
- package/dist/{chunk-f6s1jx8c.js → chunk-x3r64r0c.js} +2 -2
- package/dist/{chunk-n7j8tczc.js → chunk-x5g9w4hh.js} +2 -2
- package/dist/{chunk-nsrqf0dg.js → chunk-xgkv66q5.js} +1 -1
- package/dist/{chunk-kyhq6hzp.js → chunk-xs03kc1h.js} +1 -1
- package/dist/{chunk-6r70w54p.js → chunk-xv34zbp4.js} +1 -1
- package/dist/{chunk-zhr3za7x.js → chunk-xw36p73h.js} +2 -2
- package/dist/{chunk-ms6793rw.js → chunk-xyg1r5w0.js} +2 -2
- package/dist/{chunk-1bknva4p.js → chunk-xys2sxh6.js} +1 -1
- package/dist/{chunk-vg97xcma.js → chunk-y0qg6rrv.js} +1 -1
- package/dist/{chunk-04jkv9xx.js → chunk-y1k17c8b.js} +2 -2
- package/dist/{chunk-zasq08k3.js → chunk-y5xz0jc4.js} +1 -1
- package/dist/{chunk-sx35cb80.js → chunk-y6xsqe9a.js} +2 -2
- package/dist/{chunk-7t4hkmxb.js → chunk-yb1t2h8h.js} +2 -2
- package/dist/{chunk-c03qara0.js → chunk-ygvyc6wv.js} +1 -1
- package/dist/{chunk-71n355cg.js → chunk-yj4x5ehw.js} +2 -2
- package/dist/{chunk-pdv5dhen.js → chunk-yn38c15w.js} +1 -1
- package/dist/{chunk-dgf2g708.js → chunk-ynhngsdh.js} +1 -1
- package/dist/{chunk-hkabmxjj.js → chunk-yrsb6j3z.js} +2 -2
- package/dist/chunk-yywfvfph.js +2 -0
- package/dist/{chunk-fp417rws.js → chunk-zcxzdrn7.js} +2 -2
- package/dist/{chunk-gcsqn7x9.js → chunk-zen6ax1y.js} +2 -2
- package/dist/{chunk-vawc9ak6.js → chunk-zf2pek72.js} +1 -1
- package/dist/{chunk-zmsj7wh8.js → chunk-zk3d0jjf.js} +1 -1
- package/dist/{chunk-6zhv4fcq.js → chunk-zy3rp1ab.js} +1 -1
- package/dist/cli.js +10934 -10934
- package/dist/client/directive.js +1 -1
- package/dist/client/index.js +1 -1
- package/dist/client-helpers.js +1 -1
- package/dist/client-script-bundler.js +1 -1
- package/dist/client-script.js +1 -1
- package/dist/client.js +0 -86
- package/dist/component-hmr.js +1 -1
- package/dist/component-processing.js +1 -1
- package/dist/component-registry.js +1 -1
- package/dist/component-renderer.js +1 -1
- package/dist/components.js +1 -1
- package/dist/composables/index.js +1 -1
- package/dist/composables/use-battery.js +1 -1
- package/dist/composables/use-broadcast-channel.js +1 -1
- package/dist/composables/use-channel.js +1 -1
- package/dist/composables/use-clipboard.js +1 -1
- package/dist/composables/use-color-mode.js +1 -1
- package/dist/composables/use-cookie.js +1 -1
- package/dist/composables/use-device-orientation.js +1 -1
- package/dist/composables/use-event-listener.js +1 -1
- package/dist/composables/use-event-source.js +1 -1
- package/dist/composables/use-eye-dropper.js +1 -1
- package/dist/composables/use-fetch.js +1 -1
- package/dist/composables/use-fullscreen.js +1 -1
- package/dist/composables/use-geolocation.js +1 -1
- package/dist/composables/use-idle.js +1 -1
- package/dist/composables/use-intersection-observer.js +1 -1
- package/dist/composables/use-keyboard.js +1 -1
- package/dist/composables/use-media-query.js +1 -1
- package/dist/composables/use-meta.js +1 -1
- package/dist/composables/use-mouse.js +1 -1
- package/dist/composables/use-mutation-observer.js +1 -1
- package/dist/composables/use-network.js +1 -1
- package/dist/composables/use-notification.js +1 -1
- package/dist/composables/use-permissions.js +1 -1
- package/dist/composables/use-resize-observer.js +1 -1
- package/dist/composables/use-router.js +1 -1
- package/dist/composables/use-share.js +1 -1
- package/dist/composables/use-speech.js +1 -1
- package/dist/composables/use-storage.js +1 -1
- package/dist/composables/use-text-selection.js +3 -1
- package/dist/composables/use-timer.js +1 -1
- package/dist/composables/use-utilities.js +1 -1
- package/dist/composables/use-wake-lock.js +1 -1
- package/dist/composables/use-websocket.js +1 -1
- package/dist/composables/use-window.js +1 -1
- package/dist/composables.js +1 -1
- package/dist/composition-api.js +1 -1
- package/dist/computed.js +1 -1
- package/dist/conditionals.js +1 -1
- package/dist/config.js +1 -1
- package/dist/craft-bridge.js +1 -1
- package/dist/craft-compiler.js +1 -1
- package/dist/craft-components.js +1 -1
- package/dist/craft-entry.js +1 -1
- package/dist/craft-ssr.js +1 -1
- package/dist/csp.js +1 -1
- package/dist/csrf.js +1 -1
- package/dist/custom-directives.js +1 -1
- package/dist/defer.js +1 -1
- package/dist/deploy/config-generators.js +1 -1
- package/dist/deploy/index.js +1 -1
- package/dist/deploy/netlify.js +1 -1
- package/dist/dev-server/crosswind.js +1 -1
- package/dist/dev-server/index.js +1 -1
- package/dist/dev-server/keyboard-shortcuts.js +1 -1
- package/dist/dev-server/native-window.js +1 -1
- package/dist/dev-server/port-utils.js +1 -1
- package/dist/dev-server/serve-app.js +1 -1
- package/dist/dev-server/serve-file.js +1 -1
- package/dist/dev-server/serve-markdown.js +1 -1
- package/dist/dev-server/serve-multi.js +1 -1
- package/dist/dev-server/terminal-colors.js +1 -1
- package/dist/dev-server/theme-selector.js +1 -1
- package/dist/dev-server/types.js +1 -1
- package/dist/dev-server.js +1 -1
- package/dist/devtools.js +1 -1
- package/dist/directive-api.js +1 -1
- package/dist/docs.js +1 -1
- package/dist/doctor.js +1 -1
- package/dist/document-shell.js +1 -1
- package/dist/dynamic-components.js +1 -1
- package/dist/edge-runtime.js +1 -1
- package/dist/env.js +1 -1
- package/dist/error-boundaries.js +1 -1
- package/dist/error-handling.js +1 -1
- package/dist/errors/codes.js +1 -1
- package/dist/errors/formatter.js +1 -1
- package/dist/errors/index.js +1 -1
- package/dist/errors/logger.js +1 -1
- package/dist/errors/sanitizer.js +1 -1
- package/dist/errors/types.js +1 -1
- package/dist/events.js +1 -1
- package/dist/expressions.js +1 -1
- package/dist/formatter.js +1 -1
- package/dist/forms-validation.js +1 -1
- package/dist/forms.js +1 -1
- package/dist/head.js +1 -1
- package/dist/heatmap.js +1 -1
- package/dist/hot-reload.js +1 -1
- package/dist/html-masking.js +1 -1
- package/dist/hydration-runtime.js +1 -1
- package/dist/hydration.js +1 -1
- package/dist/i18n.js +1 -1
- package/dist/image-optimization/auto-sibling.js +1 -1
- package/dist/image-optimization/build-plugin.js +1 -1
- package/dist/image-optimization/component.js +1 -1
- package/dist/image-optimization/directive.js +1 -1
- package/dist/image-optimization/index.js +1 -1
- package/dist/image-optimization/processor.js +1 -1
- package/dist/image-optimization/serve.js +1 -1
- package/dist/includes.js +1 -1
- package/dist/index.js +1 -1
- package/dist/init.js +1 -1
- package/dist/inline-assets.js +1 -1
- package/dist/interactive.js +1 -1
- package/dist/internal-markdown.js +1 -1
- package/dist/island-chunking.js +1 -1
- package/dist/js-ts.js +1 -1
- package/dist/jsx-runtime.js +1 -1
- package/dist/keep-alive.js +1 -1
- package/dist/lazy-loader.js +1 -1
- package/dist/loading-indicator.js +1 -1
- package/dist/loops.js +1 -1
- package/dist/manifest.js +1 -1
- package/dist/markdown.js +1 -1
- package/dist/media/client/blur-up.js +1 -1
- package/dist/media/client/index.js +1 -1
- package/dist/media/client/lazy-load.js +1 -1
- package/dist/media/client/upload-handler.js +1 -1
- package/dist/media/image/component.js +1 -1
- package/dist/media/image/directive.js +1 -1
- package/dist/media/image/editing.js +1 -1
- package/dist/media/image/index.js +1 -1
- package/dist/media/image/placeholder.js +1 -1
- package/dist/media/image/processor/cache.js +1 -1
- package/dist/media/image/processor/index.js +1 -1
- package/dist/media/image/processor/optimizer.js +1 -1
- package/dist/media/image/processor/responsive.js +1 -1
- package/dist/media/image/srcset.js +1 -1
- package/dist/media/index.js +1 -1
- package/dist/media/manager/embed.js +1 -1
- package/dist/media/protected/component.js +1 -1
- package/dist/media/protected/index.js +1 -1
- package/dist/media/protected/signature.js +1 -1
- package/dist/media/shared/cache.js +1 -1
- package/dist/media/shared/hash.js +1 -1
- package/dist/media/shared/index.js +1 -1
- package/dist/media/upload/component.js +1 -1
- package/dist/media/upload/index.js +1 -1
- package/dist/media/video/directive.js +1 -1
- package/dist/media/video/index.js +1 -1
- package/dist/media/video/processor/cache.js +1 -1
- package/dist/media/video/processor/index.js +1 -1
- package/dist/media/video/processor/streaming.js +1 -1
- package/dist/media/video/processor/thumbnail.js +1 -1
- package/dist/media/video/processor/transcoder.js +1 -1
- package/dist/method-spoofing.js +1 -1
- package/dist/middleware.js +1 -1
- package/dist/misc-directives.js +1 -1
- package/dist/native-build.js +1 -1
- package/dist/parser/directive-parser.js +1 -1
- package/dist/parser/expression-parser.js +1 -1
- package/dist/parser/index.js +1 -1
- package/dist/parser/tokenizer.js +1 -1
- package/dist/partial-hydration.js +1 -1
- package/dist/performance-utils.js +1 -1
- package/dist/placeholder.js +1 -1
- package/dist/plugin-system.js +1 -1
- package/dist/plugin.js +1 -1
- package/dist/precompiler.js +1 -1
- package/dist/process.js +1 -1
- package/dist/production-build.js +1 -1
- package/dist/production-builder.js +1 -1
- package/dist/production-server.js +1 -1
- package/dist/props.js +1 -1
- package/dist/public-env.js +1 -1
- package/dist/pwa/audit.js +1 -1
- package/dist/pwa/directives.js +1 -1
- package/dist/pwa/icons.js +1 -1
- package/dist/pwa/index.js +1 -1
- package/dist/pwa/inject.js +1 -1
- package/dist/pwa/manifest.js +1 -1
- package/dist/pwa/offline.js +1 -1
- package/dist/pwa/precache.js +1 -1
- package/dist/pwa/service-worker.js +1 -1
- package/dist/pwa/workbox-strategies.js +1 -1
- package/dist/pwa/workbox.js +1 -1
- package/dist/pwa.js +457 -457
- package/dist/reactive-bindings.js +1 -1
- package/dist/reactive.js +1 -1
- package/dist/reactivity.js +1 -1
- package/dist/release.js +1 -1
- package/dist/render.js +1 -1
- package/dist/route-middleware.js +1 -1
- package/dist/router.js +1 -1
- package/dist/routes.js +1 -1
- package/dist/runtime-injection.js +1 -1
- package/dist/runtime.js +1 -1
- package/dist/safe-evaluator.js +1 -1
- package/dist/scaffolding.js +1 -1
- package/dist/screenshot.js +1 -1
- package/dist/script-classifier.js +1 -1
- package/dist/script-validation.js +1 -1
- package/dist/seo.js +1 -1
- package/dist/serve.js +1 -1
- package/dist/server-bindings.js +1 -1
- package/dist/server-components.js +1 -1
- package/dist/signal-processing.js +1 -1
- package/dist/signals-api.js +1 -1
- package/dist/signals.js +1 -1
- package/dist/site-builder/build.js +1 -1
- package/dist/site-builder/i18n.js +1 -1
- package/dist/site-builder/index.js +1 -1
- package/dist/site-builder/robots.js +1 -1
- package/dist/site-builder/router.js +1 -1
- package/dist/site-builder/seo.js +1 -1
- package/dist/site-builder/sitemap.js +1 -1
- package/dist/site-builder/theme.js +1 -1
- package/dist/slots.js +1 -1
- package/dist/source-maps.js +1 -1
- package/dist/spa-shell.js +1 -1
- package/dist/ssg.js +425 -425
- package/dist/ssr.js +1 -1
- package/dist/state-management.js +1 -1
- package/dist/store-imports.js +1 -1
- package/dist/store-loader.js +1 -1
- package/dist/stores-client.js +1 -1
- package/dist/story/addons.js +1 -1
- package/dist/story/analytics.js +1 -1
- package/dist/story/auto-stories.js +1 -1
- package/dist/story/bookmarks.js +1 -1
- package/dist/story/bun-test.js +1 -1
- package/dist/story/cli.js +1 -1
- package/dist/story/collect/analyzer.js +1 -1
- package/dist/story/collect/index.js +1 -1
- package/dist/story/collect/parser.js +1 -1
- package/dist/story/collect/scanner.js +1 -1
- package/dist/story/collect/tree.js +1 -1
- package/dist/story/commands/build.js +1 -1
- package/dist/story/commands/dev.js +1 -1
- package/dist/story/commands/index.js +1 -1
- package/dist/story/commands/preview.js +1 -1
- package/dist/story/compiled-output.js +1 -1
- package/dist/story/composition.js +1 -1
- package/dist/story/config-watcher.js +1 -1
- package/dist/story/config.js +1 -1
- package/dist/story/context.js +1 -1
- package/dist/story/controls/index.js +1 -1
- package/dist/story/crosswind.js +1 -1
- package/dist/story/desktop-preview.js +1 -1
- package/dist/story/docs-generator.js +1 -1
- package/dist/story/errors.js +1 -1
- package/dist/story/figma-export.js +1 -1
- package/dist/story/generator.js +1 -1
- package/dist/story/hmr.js +1 -1
- package/dist/story/hot-swap.js +1 -1
- package/dist/story/index.js +1 -1
- package/dist/story/interactions.js +1 -1
- package/dist/story/keyboard-shortcuts.js +1 -1
- package/dist/story/output.js +1 -1
- package/dist/story/performance.js +1 -1
- package/dist/story/presets.js +1 -1
- package/dist/story/props-validation.js +1 -1
- package/dist/story/renderer.js +1 -1
- package/dist/story/search-index.js +1 -1
- package/dist/story/search.js +1 -1
- package/dist/story/server.js +1 -1
- package/dist/story/setup.js +1 -1
- package/dist/story/snapshots.js +1 -1
- package/dist/story/testing.js +1 -1
- package/dist/story/theme.js +1 -1
- package/dist/story/ui/code-panel.js +1 -1
- package/dist/story/ui/controls-panel.js +1 -1
- package/dist/story/ui/index.js +1 -1
- package/dist/story/ui/navigation.js +1 -1
- package/dist/story/ui/preview.js +1 -1
- package/dist/story/visual-testing.js +1 -1
- package/dist/streaming.js +1 -1
- package/dist/strict-lint.js +1 -1
- package/dist/style-scoping.js +1 -1
- package/dist/suspense.js +1 -1
- package/dist/teleport.js +1 -1
- package/dist/template-compiler.js +1 -1
- package/dist/template-hydrator.js +1 -1
- package/dist/template-tag-balance.js +1 -1
- package/dist/testing.js +1 -1
- package/dist/transitions.js +1 -1
- package/dist/type-checker.js +1 -1
- package/dist/types/directive-types.js +1 -1
- package/dist/types/index.js +1 -1
- package/dist/types.js +1 -1
- package/dist/typescript-templates.js +1 -1
- package/dist/utils.js +1 -1
- package/dist/validator.js +1 -1
- package/dist/variable-extractor.js +1 -1
- package/dist/view-composers.js +1 -1
- package/dist/virtual-scrolling.js +1 -1
- package/dist/visual-editor.js +1 -1
- package/dist/vue-template.js +1 -1
- package/dist/web-components/css-scoping.js +1 -1
- package/dist/web-components/index.js +1 -1
- package/dist/web-components/reactive-generator.js +418 -1
- package/dist/web-components.js +1 -1
- package/dist/x-element.js +1 -1
- package/package.json +8 -8
- package/dist/chunk-0fmsckh1.js +0 -420
- package/dist/chunk-2t4gywvz.js +0 -3
- package/dist/chunk-2yw4e0h0.js +0 -3
- package/dist/chunk-32ka7sdc.js +0 -1
- package/dist/chunk-36jjen8k.js +0 -3
- package/dist/chunk-37q6x951.js +0 -3
- package/dist/chunk-3c7q2vbq.js +0 -3
- package/dist/chunk-3tk0sr6m.js +0 -3
- package/dist/chunk-5kjk30re.js +0 -3
- package/dist/chunk-6x5p7rhz.js +0 -3
- package/dist/chunk-73x9a59t.js +0 -3
- package/dist/chunk-9a7ce9v1.js +0 -3
- package/dist/chunk-9njgv29x.js +0 -3
- package/dist/chunk-9zkb2dsx.js +0 -3
- package/dist/chunk-bs7qttx8.js +0 -3
- package/dist/chunk-bxp8ps0f.js +0 -5
- package/dist/chunk-cnchhkk2.js +0 -3
- package/dist/chunk-cwjdwzn3.js +0 -3
- package/dist/chunk-d3at6tp3.js +0 -1
- package/dist/chunk-egn85zmj.js +0 -3
- package/dist/chunk-fcrwjh47.js +0 -3
- package/dist/chunk-ftq6q3nx.js +0 -3
- package/dist/chunk-fxfmwbny.js +0 -3
- package/dist/chunk-h4k5wnbf.js +0 -3
- package/dist/chunk-kde1c2d4.js +0 -3
- package/dist/chunk-mf35r5h2.js +0 -3
- package/dist/chunk-mz4petzg.js +0 -3
- package/dist/chunk-qjn5xmeh.js +0 -1539
- package/dist/chunk-qpg9jdqb.js +0 -3
- package/dist/chunk-r5rx348z.js +0 -3
- package/dist/chunk-rs2ejj8f.js +0 -3
- package/dist/chunk-s7fg0jy2.js +0 -3
- package/dist/chunk-s9hpp0gd.js +0 -3
- package/dist/chunk-sajzecge.js +0 -3
- package/dist/chunk-sfp05afy.js +0 -3
- package/dist/chunk-srq3dkj8.js +0 -3
- package/dist/chunk-sydw4nm4.js +0 -3
- package/dist/chunk-t6z4b0x6.js +0 -3
- package/dist/chunk-wh2szb9t.js +0 -3
- package/dist/chunk-xzjrrd36.js +0 -1
- package/dist/chunk-zx35qm5v.js +0 -3
|
@@ -87,4 +87,4 @@ var z=new Map;function q(h){if(z.has(h.id))console.warn(`Addon "${h.id}" is alre
|
|
|
87
87
|
</div>
|
|
88
88
|
</div>
|
|
89
89
|
`}}};function V(){q(D),q(E),q(F),q(G),q(H),q(I),q(J),q(K),q(L),q(M)}
|
|
90
|
-
export{q as
|
|
90
|
+
export{q as md,N as nd,O as od,P as pd,Q as qd,S as rd,T as sd,U as td,D as ud,E as vd,F as wd,G as xd,H as yd,I as zd,J as Ad,K as Bd,L as Cd,M as Dd,V as Ed};
|
|
@@ -213,4 +213,4 @@ function w(Z,M){let{itemHeight:K,containerHeight:P,overscan:F=3,keyProperty:$="i
|
|
|
213
213
|
})();
|
|
214
214
|
</script>
|
|
215
215
|
`})}var v={createVirtualList:w,processVirtualListDirectives:C,processInfiniteListDirectives:E,processVirtualGridDirectives:f,generateVirtualListCSS:b,useVirtualList:L};
|
|
216
|
-
export{w as
|
|
216
|
+
export{w as wf,C as xf,b as yf,L as zf,E as Af,f as Bf,v as Cf};
|
|
@@ -1,4 +1,4 @@
|
|
|
1
1
|
// @bun
|
|
2
2
|
var H={1001:{message:"Unclosed directive: {{directive}}",help:"Make sure to close the directive with the appropriate end tag"},1002:{message:"Unclosed expression at position {{position}}",help:"Check for missing closing braces }}"},1003:{message:"Invalid directive syntax: {{directive}}",help:"Review the directive documentation for correct syntax"},1004:{message:"Malformed expression: {{expression}}",help:"Check for syntax errors in your expression"},1005:{message:"Unexpected token: {{token}}",help:"Remove or fix the unexpected token"},1101:{message:"Undefined variable: {{variable}}",help:"Make sure the variable is defined in the template context"},1102:{message:"Type error: {{details}}",help:"Check that you are using the correct types"},1103:{message:"Evaluation error: {{details}}",help:"Review the expression for errors"},1104:{message:"Infinite loop detected in {{location}}",help:"Check your loop conditions"},1105:{message:"Circular reference detected: {{path}}",help:"Remove the circular dependency"},1201:{message:"Unsafe expression blocked: {{expression}}",help:"This expression contains potentially dangerous code"},1202:{message:"Path traversal attempt blocked: {{path}}",help:"Use only relative paths within allowed directories"},1203:{message:"Potential XSS attempt blocked",help:"Sanitize user input before rendering"},1204:{message:"Code injection attempt blocked: {{code}}",help:"Avoid executing dynamic code"},1205:{message:"Prohibited DOM API usage: {{api}}",help:"Use STX.useRefs(), STX.useRef(), STX.el() and other STX helpers instead of direct DOM manipulation"},1301:{message:"File not found: {{path}}",help:"Check that the file exists and the path is correct"},1302:{message:"Error reading file: {{path}}",help:"Check file permissions and encoding"},1303:{message:"Invalid file path: {{path}}",help:"Use a valid file path"},1304:{message:"Permission denied: {{path}}",help:"Check file permissions"},1401:{message:"Invalid configuration: {{details}}",help:"Review your stx.config.ts file"},1402:{message:"Missing required configuration: {{key}}",help:"Add the required configuration option"},1403:{message:"Deprecated configuration: {{key}}",help:"Update to the new configuration format"},1501:{message:"Component not found: {{name}}",help:"Check that the component exists in your components directory"},1502:{message:"Invalid props for component {{name}}: {{details}}",help:"Check the component prop requirements"},1503:{message:"Error rendering component {{name}}: {{details}}",help:"Check the component template for errors"},1601:{message:"Filter not found: {{filter}}",help:"Register the filter or check the filter name"},1602:{message:"Invalid arguments for filter {{filter}}: {{details}}",help:"Check the filter documentation for correct arguments"},1603:{message:"Expression evaluation timed out",help:"Simplify the expression or increase the timeout"}},z={},D="en";function K(b){D=b}function N(){return D}function O(b){z={...z,...b}}function P(){z={}}function I(b,w={}){let j=z[b]||H[b]||{message:`Unknown error (code: ${b})`},q=j.message,x=j.help;for(let[F,A]of Object.entries(w)){let B=`{{${F}}}`;if(q=q.replace(new RegExp(B,"g"),A),x)x=x.replace(new RegExp(B,"g"),A)}return{message:q,help:x}}function Q(b,w={}){let{message:j,help:q}=I(b,w);return q?`${j}
|
|
3
3
|
Help: ${q}`:j}var J={UNCLOSED_DIRECTIVE:1001,UNCLOSED_EXPRESSION:1002,INVALID_DIRECTIVE_SYNTAX:1003,MALFORMED_EXPRESSION:1004,UNEXPECTED_TOKEN:1005,UNDEFINED_VARIABLE:1101,TYPE_ERROR:1102,EVALUATION_ERROR:1103,INFINITE_LOOP:1104,CIRCULAR_REFERENCE:1105,UNSAFE_EXPRESSION:1201,PATH_TRAVERSAL:1202,XSS_ATTEMPT:1203,CODE_INJECTION:1204,DOM_API_VIOLATION:1205,FILE_NOT_FOUND:1301,FILE_READ_ERROR:1302,INVALID_FILE_PATH:1303,PERMISSION_DENIED:1304,INVALID_CONFIG:1401,MISSING_REQUIRED_CONFIG:1402,DEPRECATED_CONFIG:1403,COMPONENT_NOT_FOUND:1501,INVALID_PROPS:1502,COMPONENT_RENDER_ERROR:1503,FILTER_NOT_FOUND:1601,INVALID_FILTER_ARGS:1602,EXPRESSION_TIMEOUT:1603};function R(b){for(let[w,j]of Object.entries(J))if(j===b)return w;return}
|
|
4
|
-
export{K as
|
|
4
|
+
export{K as Ly,N as My,O as Ny,P as Oy,I as Py,Q as Qy,J as Ry,R as Sy};
|
|
@@ -1,3 +1,3 @@
|
|
|
1
1
|
// @bun
|
|
2
|
-
import{
|
|
3
|
-
export{w as
|
|
2
|
+
import{tr as y}from"./chunk-1xz0w746.js";import{qz as F,vz as V}from"./chunk-w3b6m427.js";function R(j,z){let J=1,q=z,G="<template",U="</template";while(q<j.length&&J>0){let Q=j.indexOf("<",q);if(Q===-1)break;if(q=Q,j.startsWith(G,q)&&(q+G.length>=j.length||/[\s>\/]/.test(j[q+G.length]))){J++,q+=G.length;continue}if(j.startsWith(U,q)){let W=j.indexOf(">",q+U.length);if(W!==-1){if(J--,J===0)return W+1;q=W+1;continue}}q++}return J===0?q:-1}function w(j){let z={default:"",named:new Map},J=j,q=/<template\s+(?:#([a-zA-Z][\w-]*)|v-slot:([a-zA-Z][\w-]*)|slot="([a-zA-Z][\w-]*)")(?:\s*=\s*"([^"]*)")?[^>]*>/gi,G=[],U;while((U=q.exec(j))!==null){let[X,Z,K,I,L]=U,$=Z||K||I,O=U.index+X.length,H=R(j,O);if(H!==-1){let B=j.slice(O,H-11).trim();G.push({start:U.index,end:H,slotName:$,content:B,propsBinding:L||void 0}),z.named.set($,{name:$,content:B,propsBinding:L||void 0})}}G.sort((X,Z)=>Z.start-X.start);for(let X of G)J=J.slice(0,X.start)+J.slice(X.end);let Q=[],W=/<([a-zA-Z][a-zA-Z0-9-]*)\b([^>]*?)\bslot="([^"]+)"([^>]*)>([\s\S]*?)<\/\1>/gi,Y;while((Y=W.exec(J))!==null){let[X,Z,K,I,L,$]=Y,O=K.replace(/\s*slot="[^"]*"\s*/," ").trimEnd(),H=L.replace(/\s*slot="[^"]*"\s*/," ").trimEnd(),B=(O+H).trim(),D=`<${Z}${B?" "+B:""}>${$}</${Z}>`;Q.push({start:Y.index,end:Y.index+X.length,slotName:I,element:D})}let _=/<([a-zA-Z][a-zA-Z0-9-]*)\b([^>]*?)\bslot="([^"]+)"([^>]*?)\/>/gi;while((Y=_.exec(J))!==null){let[X,Z,K,I,L]=Y,$=K.replace(/\s*slot="[^"]*"\s*/," ").trimEnd(),O=L.replace(/\s*slot="[^"]*"\s*/," ").trimEnd(),H=($+O).trim(),B=`<${Z}${H?" "+H:""} />`;Q.push({start:Y.index,end:Y.index+X.length,slotName:I,element:B})}Q.sort((X,Z)=>Z.start-X.start);for(let X of Q){let Z=z.named.get(X.slotName);if(Z)Z.content+=X.element;else z.named.set(X.slotName,{name:X.slotName,content:X.element});J=J.slice(0,X.start)+J.slice(X.end)}return z.default=J.trim(),z}function S(j){let z=j.match(/name\s*=\s*["']([^"']+)["']/),J=z?z[1]:"",q={},G=/:([a-zA-Z][\w-]*)\s*=\s*["']([^"']+)["']/g,U;while((U=G.exec(j))!==null)q[U[1]]=U[2];let Q=j.match(/<slot[^>]*>([\s\S]*?)<\/slot>/i),W=Q?Q[1].trim():"";return{name:J,props:q,defaultContent:W}}async function b(j,z,J,q){if(!j)return J;let G=j.content;if(j.propsBinding&&Object.keys(z).length>0){let U=j.propsBinding.trim(),Q={...q};if(U.startsWith("{")&&U.endsWith("}")){let W=U.slice(1,-1).split(",").map((Y)=>Y.trim()).filter(Boolean);for(let Y of W){let[_,X]=Y.split(":").map((K)=>K.trim()),Z=X||_;if(z[_]!==void 0)Q[Z]=z[_]}}else Q[U]=z;G=N(G,Q)}return G}function N(j,z){return j.replace(/\{\{\s*([^}]+)\s*\}\}/g,(J,q)=>{try{let G=q.trim(),U=P(G,z);return y(String(U??""))}catch{return`{{ ${q} }}`}})}function P(j,z){if(/^[a-zA-Z_$][\w$]*(\.[a-zA-Z_$][\w$]*)*$/.test(j)){let q=j.split("."),G=z;for(let U of q)if(G&&typeof G==="object"&&U in G)G=G[U];else return;return G}let J=j.match(/^([a-zA-Z_$][\w$]*)\s*([+\-*/])\s*(\d+)$/);if(J){let[,q,G,U]=J,Q=z[q],W=parseInt(U,10);if(typeof Q==="number")switch(G){case"+":return Q+W;case"-":return Q-W;case"*":return Q*W;case"/":return Q/W}}try{if(!F(j))return;return V(j,Object.keys(z))(...Object.values(z))}catch{return}}async function k(j,z,J){let q=j;q=await E(q,/<slot\s+name\s*=\s*["']([^"']+)["']([^>]*?)(?:\/>|>([\s\S]*?)<\/slot>)/gi,async(Q,W,Y,_)=>{let X=z.named.get(W),Z=_?.trim()||"",K=Y||"",I={},L=/:([a-zA-Z_$][\w$-]*)\s*=\s*["']([^"']+)["']/g,$;while(($=L.exec(K))!==null){let O=$[1],H=$[2];I[O]=P(H,J)}return await b(X,I,Z,J)});let U=/<slot\s*(?:\/>|>([\s\S]*?)<\/slot>)/gi;return q=q.replace(U,(Q,W)=>{if(Q.includes("name="))return Q;let Y=W?.trim()||"";return z.default||Y}),q}async function E(j,z,J){let q=[],G=[];j.replace(z,(W,...Y)=>{let _=Y[Y.length-2];return G.push({match:W,index:_}),q.push(J(W,...Y.slice(0,-2))),W});let U=await Promise.all(q),Q=j;for(let W=G.length-1;W>=0;W--){let{match:Y,index:_}=G[W];Q=Q.slice(0,_)+U[W]+Q.slice(_+Y.length)}return Q}function T(j){let z=w(j);return{defaultSlot:z.default,namedSlots:z.named}}async function M(j,z,J,q){return await k(j,{default:z,named:J},q)}
|
|
3
|
+
export{w as jg,S as kg,b as lg,k as mg,T as ng,M as og};
|
|
@@ -271,4 +271,4 @@ else {
|
|
|
271
271
|
})();
|
|
272
272
|
</script>
|
|
273
273
|
`}var J=null;function X(k){if(!J)J=new K(k);return J}function Y(){if(J)J.getRegistry().clear(),J=null}var Z={ComponentHMRHandler:K,getHMRHandler:X,resetHMRHandler:Y,generateHMRClientScript:U,wrapComponentForHMR:W};
|
|
274
|
-
export{K as
|
|
274
|
+
export{K as $o,U as ap,W as bp,X as cp,Y as dp,Z as ep};
|
|
@@ -158,4 +158,4 @@ else {
|
|
|
158
158
|
})();
|
|
159
159
|
</script>
|
|
160
160
|
`,j}function E(C){let{html:D,bindings:w,stores:j}=y(C);if(w.length===0)return C;let k=B(w,j),q=D.lastIndexOf("</body>");if(q!==-1)return D.slice(0,q)+k+D.slice(q);return D+k}
|
|
161
|
-
export{y as
|
|
161
|
+
export{y as St,B as Tt,E as Ut};
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
// @bun
|
|
2
|
-
import{
|
|
2
|
+
import{uu as $}from"./chunk-mgj88zeq.js";import{xu as Y,zu as Z}from"./chunk-m167kjhv.js";import{xw as X}from"./chunk-h5jxydqq.js";function f(){return X({name:"img",hasEndTag:!1,description:"Render an optimized responsive image with srcset and lazy loading",transform:async(G,B,j,y)=>{let{src:z,alt:N,options:q}=H(G,B,j);if(!z)return console.warn("@img directive: missing src argument"),"<!-- @img: missing src -->";let J={src:z,alt:N||"",widths:q.widths||Y,formats:q.formats||Z,quality:q.quality,sizes:q.sizes,dpr:q.dpr,params:q.params,placeholder:q.placeholder,placeholderOptions:q.placeholderOptions,lazy:q.lazy!==!1,priority:q.priority||!1,loading:q.loading,decoding:q.decoding,fetchpriority:q.fetchpriority,objectFit:q.objectFit,objectPosition:q.objectPosition,class:q.class,style:q.style,id:q.id,width:q.width,height:q.height},w=j.__isDev||!1,K=await $(J,{isDev:w}),P=K.html;if(K.preloadLink)P=K.preloadLink+`
|
|
3
3
|
`+P;if(K.css)P+=`
|
|
4
4
|
<style>${K.css}</style>`;if(K.script)P+=`
|
|
5
5
|
<script>${K.script}</script>`;return P},defaults:{src:"",alt:"",options:{lazy:!0,placeholder:"none"}}})}function H(G,B,j){if(B.src)return{src:String(B.src),alt:String(B.alt||""),options:B.options||{}};let y=G.trim();if(y.startsWith("@img(")||y.startsWith("("))y=y.replace(/^@img\(/,"").replace(/^\(/,"").replace(/\)$/,"");let z=M(y),N=Q(z[0],j)||"",q=Q(z[1],j)||"",J={};if(z[2]){let w=Q(z[2],j);if(typeof w==="object"&&w!==null)J=w;else if(typeof z[2]==="string")try{J=JSON.parse(z[2])}catch{}}return{src:N,alt:q,options:J}}function M(G){let B=[],j="",y=!1,z="",N=0,q=0;for(let J=0;J<G.length;J++){let w=G[J],K=J>0?G[J-1]:"";if((w==='"'||w==="'"||w==="`")&&K!=="\\"){if(!y)y=!0,z=w;else if(w===z)y=!1,z="";else j+=w;continue}if(!y){if(w==="{")N++;if(w==="}")N--;if(w==="[")q++;if(w==="]")q--;if(w===","&&N===0&&q===0){B.push(j.trim()),j="";continue}}j+=w}if(j.trim())B.push(j.trim());return B}function Q(G,B){if(typeof G!=="string")return G;let j=G.trim();if(j.startsWith('"')&&j.endsWith('"')||j.startsWith("'")&&j.endsWith("'"))return j.slice(1,-1);if(!j.startsWith("/")&&!j.startsWith(".")&&!j.startsWith("http")&&!j.startsWith("{")){let y=B[j];if(y!==void 0)return y}if(j.startsWith("{")||j.startsWith("["))try{return JSON.parse(j)}catch{}return j}var L=f();
|
|
6
|
-
export{f as
|
|
6
|
+
export{f as su,L as tu};
|
|
@@ -12,4 +12,4 @@ import $ from"path";function u(G,X,H,J){let q=G;q=q.replace(/@a11y\(\s*['"]([^'"
|
|
|
12
12
|
border-width: 0;
|
|
13
13
|
}
|
|
14
14
|
`.trim()}function A(){return typeof globalThis.document<"u"&&typeof globalThis.document.createElement==="function"}function M(G,X){let H=[],J=/<img\s+([^>]*)>/gi,q;q=J.exec(G);while(q!==null){let U=q[1];if(!/\balt\s*=/i.test(U))H.push({type:"missing-alt",element:q[0].substring(0,100),message:"Image missing alt attribute",impact:"serious",help:"Add alt text to images for screen readers",helpUrl:"https://web.dev/learn/accessibility/images/"});q=J.exec(G)}let K=/<button([^>]*)>\s*<\/button>/gi;q=K.exec(G);while(q!==null){let U=q[1];if(!/\baria-label\s*=/i.test(U)&&!/\btitle\s*=/i.test(U))H.push({type:"missing-accessible-name",element:q[0].substring(0,100),message:"Empty button missing accessible name",impact:"critical",help:"Add text content, aria-label, or title",helpUrl:"https://web.dev/learn/accessibility/aria-html/"});q=K.exec(G)}let N=/<a\s+([^>]*)>\s*<\/a>/gi;q=N.exec(G);while(q!==null){let U=q[1];if(!/\baria-label\s*=/i.test(U)&&!/\btitle\s*=/i.test(U))H.push({type:"link-missing-text",element:q[0].substring(0,100),message:"Link has no accessible text",impact:"serious",help:"Add text content, aria-label, or title to links",helpUrl:"https://web.dev/learn/accessibility/more-html/#links"});q=N.exec(G)}let j=/<(input|select|textarea)\s+([^>]*)>/gi;q=j.exec(G);while(q!==null){let U=q[2];if(/\btype\s*=\s*["']hidden["']/i.test(U)){q=j.exec(G);continue}let O=/\baria-label\s*=/i.test(U)||/\baria-labelledby\s*=/i.test(U),D=U.match(/\bid\s*=\s*["']([^"']+)["']/i);if(!O){let F=D&&new RegExp(`<label[^>]*\\bfor\\s*=\\s*["']${D[1]}["']`,"i").test(G),E=q.index,w=G.substring(0,E),b=G.substring(E),T=(w.match(/<label\b/gi)||[]).length,I=(w.match(/<\/label>/gi)||[]).length,B=T>I;if(!F&&!B)H.push({type:"input-missing-label",element:q[0].substring(0,100),message:"Form input missing associated label",impact:"serious",help:"Associate a label with the input or use aria-label",helpUrl:"https://web.dev/learn/accessibility/forms/"})}q=j.exec(G)}let z=/<h([1-6])[^>]*>/gi,Q=[];q=z.exec(G);while(q!==null)Q.push(Number.parseInt(q[1],10)),q=z.exec(G);let V=0;for(let U of Q){if(V>0&&U>V+1)H.push({type:"heading-skip",element:`<h${U}>`,message:`Heading level skipped from h${V} to h${U}`,impact:"moderate",help:"Maintain proper heading hierarchy without skipping levels",helpUrl:"https://web.dev/learn/accessibility/structure/"});V=U}if(/<html\b/i.test(G)&&!/<html[^>]*\slang\s*=/i.test(G))H.push({type:"missing-lang",element:"<html>",message:"Document language not specified",impact:"serious",help:"Add lang attribute to the html element",helpUrl:"https://web.dev/learn/accessibility/more-html/#language"});let Y=/<table[^>]*>([\s\S]*?)<\/table>/gi;q=Y.exec(G);while(q!==null){let U=q[1];if(!/<th\b/i.test(U))H.push({type:"table-missing-headers",element:"<table>",message:"Table missing header cells (th)",impact:"serious",help:"Use th elements for table headers",helpUrl:"https://web.dev/learn/accessibility/more-html/#tables"});q=Y.exec(G)}let _=/<(video|audio)[^>]*\sautoplay\s[^>]*>/gi;q=_.exec(G);while(q!==null){if(!/\bmuted\b/i.test(q[0]))H.push({type:"autoplay-audio",element:`<${q[1]}>`,message:"Auto-playing media may disrupt users",impact:"moderate",help:"Add muted attribute or provide controls to stop playback",helpUrl:"https://web.dev/learn/accessibility/more-html/#multimedia"});q=_.exec(G)}let Z=/\btabindex\s*=\s*["']([1-9]\d*)["']/gi;q=Z.exec(G);while(q!==null)H.push({type:"positive-tabindex",element:`tabindex="${q[1]}"`,message:"Positive tabindex disrupts natural tab order",impact:"moderate",help:'Use tabindex="0" or "-1" instead of positive values',helpUrl:"https://web.dev/learn/accessibility/focus/#tab-index"}),q=Z.exec(G);let S=/<iframe\s+([^>]*)>/gi;q=S.exec(G);while(q!==null){let U=q[1];if(!/\btitle\s*=/i.test(U)&&!/\baria-label\s*=/i.test(U))H.push({type:"iframe-missing-title",element:"<iframe>",message:"Iframe missing title attribute",impact:"serious",help:"Add a title attribute to describe the iframe content",helpUrl:"https://web.dev/learn/accessibility/more-html/#frames"});q=S.exec(G)}let W=/<([a-z]+)\s+([^>]*role\s*=\s*["']button["'][^>]*)>/gi;q=W.exec(G);while(q!==null){let U=q[1].toLowerCase(),O=q[2];if(U!=="button"&&!/\btabindex\s*=/i.test(O))H.push({type:"button-not-focusable",element:q[0].substring(0,100),message:'Element with role="button" is not keyboard focusable',impact:"serious",help:'Add tabindex="0" to make custom buttons focusable',helpUrl:"https://web.dev/learn/accessibility/focus/"});q=W.exec(G)}return H}async function C(G,X){if(!A())return M(G,X);let H=[];try{let J=globalThis.document.createElement("div");J.innerHTML=G,J.querySelectorAll("img").forEach((j)=>{if(!j.hasAttribute("alt"))H.push({type:"missing-alt",element:`<${j.outerHTML}>`,message:"Image missing alt attribute",impact:"serious",help:"Add alt text to images for screen readers",helpUrl:"https://web.dev/learn/accessibility/images/"})}),J.querySelectorAll('button, a, [role="button"]').forEach((j)=>{if(!(j.hasAttribute("aria-label")||j.hasAttribute("aria-labelledby")||j.textContent&&j.textContent.trim().length>0))H.push({type:"missing-accessible-name",element:`<${j.outerHTML}>`,message:"Interactive element missing accessible name",impact:"critical",help:"Add text content, aria-label, or aria-labelledby",helpUrl:"https://web.dev/learn/accessibility/aria-html/"})}),J.querySelectorAll("input, select, textarea").forEach((j)=>{let z=j.getAttribute("id"),Q=z&&J.querySelector(`label[for="${z}"]`),V=j.hasAttribute("aria-label")||j.hasAttribute("aria-labelledby"),Y=j.closest("label")!==null;if(!Q&&!V&&!Y)H.push({type:"input-missing-label",element:`<${j.outerHTML}>`,message:"Form input missing associated label",impact:"serious",help:"Associate a label with the input or use aria-label",helpUrl:"https://web.dev/learn/accessibility/forms/"})});let q=Array.from(J.querySelectorAll("h1, h2, h3, h4, h5, h6")),K=0;for(let j of q){let z=Number.parseInt(j.tagName.charAt(1));if(K>0&&z>K+1)H.push({type:"heading-skip",element:`<${j.outerHTML}>`,message:`Heading level skipped from h${K} to h${z}`,impact:"moderate",help:"Maintain proper heading hierarchy without skipping levels",helpUrl:"https://web.dev/learn/accessibility/structure/"});K=z}let N=J.querySelector("html");if(G.includes("<html")&&N&&!N.hasAttribute("lang"))H.push({type:"missing-lang",element:"<html>",message:"Document language not specified",impact:"serious",help:"Add lang attribute to the html element",helpUrl:"https://web.dev/learn/accessibility/more-html/#language"});if(J.querySelectorAll("a").forEach((j)=>{let z=j.textContent&&j.textContent.trim().length>0,Q=j.hasAttribute("aria-label")||j.hasAttribute("aria-labelledby"),V=j.hasAttribute("title"),Y=j.querySelector("img[alt]");if(!z&&!Q&&!V&&!Y)H.push({type:"link-missing-text",element:`<${j.outerHTML}>`,message:"Link has no accessible text",impact:"serious",help:"Add text content, aria-label, or title to links",helpUrl:"https://web.dev/learn/accessibility/more-html/#links"})}),G.includes("<nav")||G.includes("<header")){if(!J.querySelector('a[href="#main"], a[href="#content"], .skip-link, [class*="skip"]')&&J.querySelectorAll("a").length>5)H.push({type:"missing-skip-link",element:"<nav>",message:"Consider adding a skip navigation link",impact:"minor",help:"Add a skip link to allow keyboard users to bypass navigation",helpUrl:"https://web.dev/learn/accessibility/focus/#skip-links"})}if(J.querySelectorAll("table").forEach((j)=>{let z=j.querySelector("caption");if(!j.querySelector("th"))H.push({type:"table-missing-headers",element:"<table>",message:"Table missing header cells (th)",impact:"serious",help:"Use th elements for table headers",helpUrl:"https://web.dev/learn/accessibility/more-html/#tables"});if(!z&&!j.hasAttribute("aria-label")&&!j.hasAttribute("aria-labelledby"))H.push({type:"table-missing-caption",element:"<table>",message:"Table missing caption or accessible name",impact:"minor",help:"Add a caption element or aria-label to describe the table",helpUrl:"https://web.dev/learn/accessibility/more-html/#tables"})}),J.querySelectorAll('[style*="color"]').forEach((j)=>{let z=j.getAttribute("style")||"";if(z.includes("color:")&&!z.includes("background"))H.push({type:"potential-contrast-issue",element:`<${j.tagName.toLowerCase()}>`,message:"Element has inline color style - verify contrast ratio",impact:"minor",help:"Ensure text has sufficient contrast ratio (4.5:1 for normal text)",helpUrl:"https://web.dev/learn/accessibility/color-contrast/"})}),J.querySelectorAll("video[autoplay], audio[autoplay]").forEach((j)=>{if(!j.hasAttribute("muted"))H.push({type:"autoplay-audio",element:`<${j.tagName.toLowerCase()}>`,message:"Auto-playing media may disrupt users",impact:"moderate",help:"Add muted attribute or provide controls to stop playback",helpUrl:"https://web.dev/learn/accessibility/more-html/#multimedia"})}),J.querySelectorAll("[tabindex]").forEach((j)=>{if(Number.parseInt(j.getAttribute("tabindex")||"0")>0)H.push({type:"positive-tabindex",element:`<${j.tagName.toLowerCase()}>`,message:"Positive tabindex disrupts natural tab order",impact:"moderate",help:'Use tabindex="0" or "-1" instead of positive values',helpUrl:"https://web.dev/learn/accessibility/focus/#tab-index"})}),J.querySelectorAll('[role="button"]').forEach((j)=>{if(!j.hasAttribute("tabindex"))H.push({type:"button-not-focusable",element:`<${j.outerHTML}>`,message:'Element with role="button" is not keyboard focusable',impact:"serious",help:'Add tabindex="0" to make custom buttons focusable',helpUrl:"https://web.dev/learn/accessibility/focus/"})}),G.includes("<body")&&!J.querySelector('main, [role="main"]'))H.push({type:"missing-main-landmark",element:"<body>",message:"Document missing main landmark region",impact:"moderate",help:"Add a main element to identify the primary content",helpUrl:"https://web.dev/learn/accessibility/structure/#landmarks"});J.querySelectorAll("iframe").forEach((j)=>{if(!j.hasAttribute("title")&&!j.hasAttribute("aria-label"))H.push({type:"iframe-missing-title",element:"<iframe>",message:"Iframe missing title attribute",impact:"serious",help:"Add a title attribute to describe the iframe content",helpUrl:"https://web.dev/learn/accessibility/more-html/#frames"})})}catch(J){console.error(`Error checking accessibility in ${X}:`,J)}return H}async function x(G,X={}){let H={},{recursive:J=!0,ignorePaths:q=[]}=X,K=$.join(G,J?"**/*.stx":"*.stx"),N=new Bun.Glob(K),j=[];for await(let z of N.scan())if(!q.some((V)=>z.includes($.normalize(V))))j.push(z);for(let z of j)try{let Q=await Bun.file(z).text();if(z.endsWith("good-a11y.stx"))continue;let V=await C(Q,z);if(V.length>0)H[z]=V}catch(Q){console.error(`Error scanning ${z}:`,Q)}return H}var P={fixMissingAlt:!0,fixMissingLabels:!0,fixMissingFormLabels:!0,fixTableHeaders:!0,fixMissingLang:!0,fixPositiveTabindex:!0,fixButtonFocusable:!0,defaultLang:"en"};function L(G,X={}){let H={...P,...X},J=[],q=G;if(H.fixMissingAlt)q=q.replace(/<img([^>]*?)(?<!\balt\s*=\s*["'][^"']*["'])(\s*\/?>)/gi,(K,N,j)=>{if(/\balt\s*=/i.test(N))return K;let z=K,Q=`<img${N} alt=""${j}`;return J.push({type:"missing-alt",description:"Added empty alt attribute to image",before:z,after:Q}),Q});if(H.fixMissingLabels)q=q.replace(/<button([^>]*)>\s*<\/button>/gi,(K,N)=>{if(/\baria-label\s*=/i.test(N)||/\btitle\s*=/i.test(N))return K;let j=K,z=`<button${N} aria-label="Button"></button>`;return J.push({type:"missing-accessible-name",description:"Added aria-label to empty button",before:j,after:z}),z}),q=q.replace(/<a([^>]*)>\s*(<(?:i|span|svg)[^>]*(?:class="[^"]*icon[^"]*")?[^>]*>.*?<\/(?:i|span|svg)>)?\s*<\/a>/gi,(K,N,j)=>{if(/\baria-label\s*=/i.test(N)||/\btitle\s*=/i.test(N))return K;if(!j&&K.replace(/<a[^>]*>|<\/a>/gi,"").trim())return K;let z=K,Q=`<a${N} aria-label="Link">${j||""}</a>`;return J.push({type:"missing-accessible-name",description:"Added aria-label to link without text",before:z,after:Q}),Q});if(H.fixMissingFormLabels)q=q.replace(/<(input|select|textarea)([^>]*)>/gi,(K,N,j)=>{if(/\baria-label\s*=/i.test(j)||/\baria-labelledby\s*=/i.test(j))return K;if(/\btype\s*=\s*["']hidden["']/i.test(j))return K;let z=j.match(/\bname\s*=\s*["']([^"']+)["']/i),Q=j.match(/\bid\s*=\s*["']([^"']+)["']/i),V=z?.[1]||Q?.[1]||N,Y=K,_=`<${N}${j} aria-label="${V}">`;return J.push({type:"input-missing-label",description:`Added aria-label to ${N} element`,before:Y,after:_}),_});if(H.fixMissingLang)q=q.replace(/<html([^>]*)>/gi,(K,N)=>{if(/\blang\s*=/i.test(N))return K;let j=K,z=`<html${N} lang="${H.defaultLang}">`;return J.push({type:"missing-lang",description:`Added lang="${H.defaultLang}" to html element`,before:j,after:z}),z});if(H.fixPositiveTabindex)q=q.replace(/\btabindex\s*=\s*["']([1-9]\d*)["']/gi,(K,N)=>{let j=K,z='tabindex="0"';return J.push({type:"positive-tabindex",description:`Changed tabindex="${N}" to tabindex="0"`,before:j,after:'tabindex="0"'}),'tabindex="0"'});if(H.fixButtonFocusable)q=q.replace(/<([a-z]+)(\s[^>]*role\s*=\s*["']button["'][^>]*)>/gi,(K,N,j)=>{if(/\btabindex\s*=/i.test(j))return K;if(N.toLowerCase()==="button")return K;let z=K,Q=`<${N}${j} tabindex="0">`;return J.push({type:"button-not-focusable",description:'Added tabindex="0" to element with role="button"',before:z,after:Q}),Q});if(H.fixTableHeaders)q=q.replace(/<th([^>]*)>/gi,(K,N)=>{if(/\bscope\s*=/i.test(N))return K;let j=K,z=`<th${N} scope="col">`;return J.push({type:"table-missing-scope",description:'Added scope="col" to table header',before:j,after:z}),z});return{original:G,fixed:q,fixCount:J.length,fixes:J}}async function k(G,X={},H=!1){let J=await Bun.file(G).text(),q=L(J,X);if(H&&q.fixCount>0)await Bun.write(G,q.fixed);return q}async function p(G,X={},H={}){let J={},{recursive:q=!0,ignorePaths:K=[],writeBack:N=!1,extensions:j=[".stx",".html",".htm"]}=H,z=j.length===1?`*${j[0]}`:`*{${j.join(",")}}`,Q=$.join(G,q?`**/${z}`:z),V=new Bun.Glob(Q);for await(let Y of V.scan()){if(K.some((Z)=>Y.includes($.normalize(Z))))continue;try{let Z=await k(Y,X,N);if(Z.fixCount>0)J[Y]=Z}catch(Z){console.error(`Error fixing ${Y}:`,Z)}}return J}var y={name:"a11y",handler:(G,X,H,J)=>{if(!X.length)return G;let q=X[0].replace(/['"]/g,""),K=X.length>1?X[1].replace(/['"]/g,""):"",j={"aria-label":"Ensure interactive elements have accessible labels","alt-text":"Provide alternative text for images",focus:"Ensure the element can receive keyboard focus",landmark:"Use appropriate landmark roles","heading-order":"Maintain proper heading hierarchy","color-contrast":"Ensure sufficient color contrast","keyboard-nav":"Make sure element is keyboard navigable","screen-reader":"Optimize for screen reader users"}[q]||"Make this element accessible";return`<!-- a11y-hint: ${K||j} -->${G}`},hasEndTag:!1},R={name:"screenReader",handler:(G)=>{return`<span class="sr-only">${G}</span>`},hasEndTag:!0};function g(){return[y,R]}
|
|
15
|
-
export{u as
|
|
15
|
+
export{u as $z,v as aA,A as bA,C as cA,x as dA,L as eA,k as fA,p as gA,y as hA,R as iA,g as jA};
|
|
@@ -36,4 +36,4 @@ import M from"fs";import N from"path";function Q(j){return N.join(j.root,".stx",
|
|
|
36
36
|
color: #ef4444;
|
|
37
37
|
}
|
|
38
38
|
`}function O(j){return j.replace(/&/g,"&").replace(/</g,"<").replace(/>/g,">").replace(/"/g,""")}async function u(j,q){let z=await T(j,q);if(!z)return[];return[z.current,...z.history]}async function C(j,q,z=5){let A=await T(j,q);if(!A)return 0;let B=A.history.slice(z),b=Q(j),E=0;for(let K of B){let U=N.join(b,`${q}.v${K.version}.html`);try{await M.promises.unlink(U),E++}catch{}}A.history=A.history.slice(0,z);let J=R(b,q);return await M.promises.writeFile(J,JSON.stringify(A,null,2)),E}
|
|
39
|
-
export{Q as
|
|
39
|
+
export{Q as N,T as O,Z as P,_ as Q,$ as R,G as S,k as T,u as U,C as V};
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
// @bun
|
|
2
|
-
import{
|
|
2
|
+
import{pB as q}from"./chunk-xv34zbp4.js";var D={strategy:"thumbhash",width:20,quality:50,blurLevel:40,transitionDuration:300,easing:"ease-out"},K=`
|
|
3
3
|
.stx-img-placeholder {
|
|
4
4
|
position: relative;
|
|
5
5
|
overflow: hidden;
|
|
@@ -48,4 +48,4 @@ import{jE as q}from"./chunk-6r70w54p.js";var D={strategy:"thumbhash",width:20,qu
|
|
|
48
48
|
opacity: 1;
|
|
49
49
|
}
|
|
50
50
|
`.trim()}function T(j){return`background-image: url('${j.dataURL}'); background-size: cover; background-position: center;`}var Q=new Map;async function _(j,f={}){let x=`${j}:${JSON.stringify(f)}`;if(Q.has(x))return Q.get(x);let z=await Z(j,f);return Q.set(x,z),z}function C(){Q.clear()}function u(){return{size:Q.size,keys:Array.from(Q.keys())}}
|
|
51
|
-
export{D as
|
|
51
|
+
export{D as Uu,K as Vu,Z as Wu,O as Xu,b as Yu,L as Zu,y as _u,A as $u,P as av,T as bv,_ as cv,C as dv,u as ev};
|
|
@@ -1,3 +1,3 @@
|
|
|
1
1
|
// @bun
|
|
2
|
-
import{
|
|
3
|
-
export{I as
|
|
2
|
+
import{Vk as H,_k as Q}from"./chunk-jpndqst5.js";import{pB as F}from"./chunk-xv34zbp4.js";import{resolve as T,basename as E,extname as U,join as b}from"path";import{mkdir as D}from"fs/promises";async function R(){try{return await import("ts-images")}catch{return null}}var I=[320,480,640,768,1024,1280,1536,1920];async function S(K,Y,C){let Z=await R();if(!Z)return console.warn("[stx-media] ts-images not installed, skipping responsive generation"),null;let X=T(K);if(!await Q(X))return console.warn(`[stx-media] Source file not found: ${K}`),null;try{let k=Y.responsiveWidths||C.breakpoints||I,L=Y.formats||C.defaultFormats||["avif","webp","jpeg"],q=C.outputDir||"dist/images",V=C.baseUrl||"/images";await D(q,{recursive:!0});let _=await H(X),x=E(K,U(K)),M=C.formatQuality||{jpeg:{quality:82},png:{quality:80},webp:{quality:82},avif:{quality:75}},$={src:K,byFormat:{},srcsets:{}};for(let J of L){$.byFormat[J]=[];let N=[];for(let j of k){let W=`${x}-${j}w-${_}.${J}`,B=b(q,W),G=`${V}/${W}`;try{let O=M[J]?.quality||80;if(await Q(B)){$.byFormat[J].push({path:B,url:G,width:j,height:0,format:J,size:0}),N.push(`${G} ${j}w`);continue}let z=await Z.processImage({input:X,output:B,format:J,quality:O,resize:{width:j}});if(z)$.byFormat[J].push({path:B,url:G,width:j,height:z.height||Math.round(j*(z.height||1)/(z.width||1)),format:J,size:z.outputSize||0}),N.push(`${G} ${j}w`)}catch(O){console.warn(`[stx-media] Failed to generate ${J} at ${j}w: ${O}`)}}$.srcsets[J]=N.join(", ")}let A=Y.placeholder||C.placeholderStrategy||"thumbhash";if(A!=="none")try{if(A==="thumbhash"){let J=await Z.generateThumbHash(X);$.placeholder={dataURL:J.dataUrl,width:J.width||32,height:J.height||32,strategy:"thumbhash"}}else{let J=await Z.generatePlaceholder(X,{strategy:A,width:20});$.placeholder={dataURL:J.dataURL,width:J.width,height:J.height,strategy:A}}}catch(J){console.warn(`[stx-media] Failed to generate placeholder: ${J}`)}return $.sizes=Y.sizes||y(k),$}catch(k){return console.error(`[stx-media] Responsive generation failed: ${k}`),null}}function y(K){let Y=[...K].sort((Z,X)=>Z-X),C=[];for(let Z=0;Z<Y.length-1;Z++){let X=Y[Z];C.push(`(max-width: ${X}px) ${X}px`)}return C.push(`${Y[Y.length-1]}px`),C.join(", ")}function d(K,Y="width"){if(!K||K.length===0)return"";if(Y==="dpr")return K.filter((C)=>C.dpr).map((C)=>`${C.url} ${C.dpr}x`).join(", ");return K.map((C)=>`${C.url} ${C.width}w`).join(", ")}async function m(K,Y,C){let Z=[];for(let X of Y){let k=await S(X.src,{responsiveWidths:X.widths},C);if(k){for(let[L,q]of Object.entries(k.srcsets))if(q)Z.push({media:X.media,srcset:q,type:P(L)})}}return Z}function P(K){switch(K){case"avif":return"image/avif";case"webp":return"image/webp";case"jpeg":return"image/jpeg";case"png":return"image/png";case"gif":return"image/gif";default:return"image/jpeg"}}
|
|
3
|
+
export{I as Rk,S as Sk,d as Tk,m as Uk};
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
// @bun
|
|
2
|
-
import{
|
|
2
|
+
import{Md as $}from"./chunk-pznnww6k.js";import Y from"fs";import X from"path";async function V(q){let{componentsDir:A,outputDir:K=A,include:R=["**/*.stx"],exclude:M=["**/*.story.stx","**/node_modules/**"],generateVariants:O=!0,includeDefaults:Q=!0,overwrite:J=!1}=q,T=[],j=await w(A,R,M);for(let H of j){let U=H.replace(/\.stx$/,".story.stx"),W=await z(U);if(W&&!J){T.push({componentPath:H,storyPath:U,content:"",status:"skipped"});continue}let b=await $(H),B=L(b,{generateVariants:O,includeDefaults:Q}),Z=K===A?U:X.join(K,X.basename(U));await Y.promises.mkdir(X.dirname(Z),{recursive:!0}),await Y.promises.writeFile(Z,B),T.push({componentPath:H,storyPath:Z,content:B,status:W?"updated":"created"})}return T}function L(q,A={}){let{generateVariants:K=!0,includeDefaults:R=!0}=A,M=[],O={};if(R){for(let j of q.props)if(j.default!==void 0)O[j.name]=j.default}if(M.push({id:"default",title:"Default",state:O}),K){for(let j of q.props)if(j.type==="boolean")M.push({id:`${j.name}-true`,title:`${_(j.name)} (true)`,state:{...O,[j.name]:!0}}),M.push({id:`${j.name}-false`,title:`${_(j.name)} (false)`,state:{...O,[j.name]:!1}});for(let j of q.props)if(j.options&&j.options.length>0)for(let H of j.options)M.push({id:`${j.name}-${H}`,title:`${_(j.name)}: ${H}`,state:{...O,[j.name]:H}})}let Q=q.name,J=q.description||`Stories for ${Q} component`,T=M.map((j)=>{let H=Object.entries(j.state).map(([U,W])=>{if(typeof W==="string")return`${U}="${W}"`;return`:${U}="${JSON.stringify(W)}"`}).join(" ");return`
|
|
3
3
|
@story('${j.title}')
|
|
4
4
|
<${Q} ${H} />
|
|
5
5
|
@endstory`}).join(`
|
|
@@ -21,4 +21,4 @@ const meta = {
|
|
|
21
21
|
${T}
|
|
22
22
|
`}async function C(q,A={}){let K=await $(q);return L(K,A)}async function w(q,A,K){let R=[];async function M(O){let Q=await Y.promises.readdir(O,{withFileTypes:!0});for(let J of Q){let T=X.join(O,J.name),j=X.relative(q,T);if(K.some((H)=>I(j,H)))continue;if(J.isDirectory())await M(T);else if(J.isFile()){if(A.some((H)=>I(j,H)))R.push(T)}}}return await M(q),R}function I(q,A){let K=A.replace(/\*\*/g,"{{GLOBSTAR}}").replace(/\*/g,"[^/]*").replace(/\?/g,".").replace(/\{\{GLOBSTAR\}\}/g,".*");return new RegExp(`^${K}$`).test(q)}async function z(q){try{return await Y.promises.access(q),!0}catch{return!1}}function _(q){return q.replace(/([A-Z])/g," $1").replace(/^./,(A)=>A.toUpperCase()).trim()}async function x(q){let A=q[0]||"./src/components",K=q[1]||A;console.log(`Scanning for components in ${A}...`);let R=await V({componentsDir:A,outputDir:K,generateVariants:!0,includeDefaults:!0}),M=R.filter((J)=>J.status==="created").length,O=R.filter((J)=>J.status==="updated").length,Q=R.filter((J)=>J.status==="skipped").length;console.log(`
|
|
23
23
|
Results:`),console.log(` Created: ${M}`),console.log(` Updated: ${O}`),console.log(` Skipped: ${Q}`),console.log(` Total: ${R.length}`)}
|
|
24
|
-
export{V as
|
|
24
|
+
export{V as Id,L as Jd,C as Kd,x as Ld};
|
|
@@ -1,3 +1,3 @@
|
|
|
1
1
|
// @bun
|
|
2
|
-
import{
|
|
3
|
-
export{d as
|
|
2
|
+
import{pB as l}from"./chunk-xv34zbp4.js";import U from"fs";import G from"path";import I from"os";import H from"crypto";import{generatePlaceholder as m,processImage as g}from"ts-images";var d=[320,640,768,1024,1280,1536,1920],h=["webp","jpeg"],b=80,u=[".jpg",".jpeg",".png",".webp",".avif",".gif",".svg"],P={webp:"image/webp",avif:"image/avif",jpeg:"image/jpeg",png:"image/png"},N=null,W=!1;async function Y(){if(W)return N;W=!0;try{let J=await import("sharp");return N=J.default||J,N}catch{return null}}async function e(){return await Y()!==null}async function t(){return!0}async function JJ(J,K={}){let{widths:Z=d,formats:$=h,quality:q=b,fit:C="cover",placeholder:X="none",outputDir:Q=".stx/images",baseUrl:_="/images"}=K,j,x;if(typeof J==="string"){if(x=J,!await Bun.file(J).exists())throw new L(`Image not found: ${J}`,"NOT_FOUND");j=await Bun.file(J).arrayBuffer().then((V)=>Buffer.from(V))}else x="buffer-input",j=J;let w=H.createHash("sha256").update(j).digest("hex").slice(0,12),y=await O(j),{width:B,height:D}=y,A=B/D;await U.promises.mkdir(Q,{recursive:!0});let T=[],v=G.basename(x,G.extname(x)),z=Z.filter((V)=>V<=B);if(!z.includes(B)&&B<=Math.max(...Z))z.push(B);z.sort((V,R)=>V-R);for(let V of z){let R=Math.round(V/A);for(let F of $){let S=`${v}-${V}w-${w}.${F}`,k=G.join(Q,S),c=`${_}/${S}`,E=await n(j,{width:V,height:R,format:F,quality:q,fit:C});await Bun.write(k,E),T.push({path:k,url:c,width:V,height:R,format:F,size:E.length})}}let M;if(X!=="none")M=await o(j,X);return{src:x,variants:T,placeholder:M,width:B,height:D,aspectRatio:A,hash:w}}async function O(J){let K=typeof J==="string"?Buffer.from(await Bun.file(J).arrayBuffer()):J,Z=await Y();if(Z){let q=await Z(K).metadata();return{width:q.width||0,height:q.height||0,format:q.format||"unknown",hasAlpha:q.hasAlpha}}return p(K)}function p(J){if(J[0]===137&&J[1]===80&&J[2]===78&&J[3]===71){let K=J.readUInt32BE(16),Z=J.readUInt32BE(20);return{width:K,height:Z,format:"png",hasAlpha:!0}}if(J[0]===255&&J[1]===216){let K=2;while(K<J.length){if(J[K]!==255)break;let Z=J[K+1];if(Z>=192&&Z<=207&&Z!==196&&Z!==200&&Z!==204){let q=J.readUInt16BE(K+5);return{width:J.readUInt16BE(K+7),height:q,format:"jpeg",hasAlpha:!1}}let $=J.readUInt16BE(K+2);K+=2+$}}if(J.toString("utf8",0,4)==="RIFF"&&J.toString("utf8",8,12)==="WEBP"){let K=J.toString("utf8",12,16);if(K==="VP8 "){let Z=J.readUInt16LE(26)&16383,$=J.readUInt16LE(28)&16383;return{width:Z,height:$,format:"webp",hasAlpha:!1}}if(K==="VP8L"){let Z=J.readUInt32LE(21),$=(Z&16383)+1,q=(Z>>14&16383)+1;return{width:$,height:q,format:"webp",hasAlpha:!0}}}if(J.toString("utf8",0,3)==="GIF"){let K=J.readUInt16LE(6),Z=J.readUInt16LE(8);return{width:K,height:Z,format:"gif",hasAlpha:!0}}throw new L("Unable to parse image dimensions","PARSE_ERROR")}async function n(J,K){let Z=await Y();if(Z){let q=Z(J).resize(K.width,K.height,{fit:K.fit});switch(K.format){case"webp":q=q.webp({quality:K.quality});break;case"avif":q=q.avif({quality:K.quality});break;case"jpeg":q=q.jpeg({quality:K.quality});break;case"png":q=q.png({quality:K.quality});break}return q.toBuffer()}let $=G.join(I.tmpdir(),`stx-img-${H.randomBytes(8).toString("hex")}.${K.format}`);try{return await g({input:J,output:$,format:K.format,quality:K.quality,resize:{width:K.width,height:K.height,fit:K.fit}}),Buffer.from(await Bun.file($).arrayBuffer())}finally{await U.promises.unlink($).catch(()=>{})}}async function o(J,K){let Z=await Y();if(K==="blur"&&Z){let X=(await Z(J).resize(20).blur(10).toBuffer()).toString("base64"),Q=await O(J);return`data:${P[Q.format]||"image/jpeg"};base64,${X}`}if(K==="dominant-color"&&Z){let{dominant:C}=await Z(J).resize(1,1).toBuffer().then(async(X)=>{let Q=await Z(X).metadata();return{dominant:{r:128,g:128,b:128}}}).catch(()=>({dominant:{r:128,g:128,b:128}}));return`rgb(${C.r}, ${C.g}, ${C.b})`}let $=await O(J),q=G.join(I.tmpdir(),`stx-ph-${H.randomBytes(8).toString("hex")}.${$.format==="unknown"?"bin":$.format}`);try{await Bun.write(q,J);let C=K==="blur"?"blur":K==="thumbhash"?"thumbhash":"dominant-color",Q=await m(q,{strategy:C,width:C==="thumbhash"?void 0:32});if(K==="dominant-color"&&Q.dominantColor)return Q.dominantColor;if(Q.dataURL)return Q.dataURL;return"rgb(128, 128, 128)"}catch{return"rgb(128, 128, 128)"}finally{await U.promises.unlink(q).catch(()=>{})}}function KJ(J,K){return(K?J.filter(($)=>$.format===K):J).sort(($,q)=>$.width-q.width).map(($)=>`${$.url} ${$.width}w`).join(", ")}function ZJ(J){if(!J||Object.keys(J).length===0)return"100vw";return Object.entries(J).sort((Z,$)=>{let q=Number.parseInt(Z[0].replace(/\D/g,""))||0;return(Number.parseInt($[0].replace(/\D/g,""))||0)-q}).map(([Z,$])=>`(max-width: ${Z}) ${$}`).join(", ")+", 100vw"}function $J(J){let K=J.filter(($)=>$.format==="jpeg");if(K.length===0)return J[Math.floor(J.length/2)];let Z=K.sort(($,q)=>$.width-q.width);return Z[Math.floor(Z.length/2)]}function qJ(J){let K=new Map;for(let Z of J){let $=K.get(Z.format)||[];$.push(Z),K.set(Z.format,$)}return K}function CJ(J){let K=G.extname(J).toLowerCase();return u.includes(K)}function QJ(J){return P[J]||"application/octet-stream"}function VJ(J){return J.reduce((K,Z)=>K+Z.size,0)}function XJ(J){if(J<1024)return`${J} B`;if(J<1048576)return`${(J/1024).toFixed(1)} KB`;return`${(J/1048576).toFixed(2)} MB`}class L extends Error{code;constructor(J,K){super(J);this.name="ImageProcessingError",this.code=K}}
|
|
3
|
+
export{d as Mm,h as Nm,b as Om,e as Pm,t as Qm,JJ as Rm,O as Sm,n as Tm,KJ as Um,ZJ as Vm,$J as Wm,qJ as Xm,CJ as Ym,QJ as Zm,VJ as _m,XJ as $m,L as an};
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
// @bun
|
|
2
|
-
import{
|
|
2
|
+
import{pz as g,qz as M}from"./chunk-w3b6m427.js";import V from"crypto";function L(j){return String(j??"").replace(/&/g,"&").replace(/</g,"<").replace(/>/g,">").replace(/"/g,""").replace(/'/g,"'")}var W={input:"form-control",inputError:"is-invalid",checkInput:"form-check-input",label:"form-label",errorFeedback:"invalid-feedback"};function b(j){return{...W,...j.forms?.classes}}function N(j,q,K,U){let Z=j||q;return K?`${Z} ${U}`:Z}function h(){return V.randomUUID()}function v(j,q,K,U){let Z=b(U),X=j;return X=d(X,q),X=Q(X,q),X=f(X,q,Z),X=x(X,q,Z),X}function Q(j,q){let K=j;return K=K.replace(/@csrf/g,()=>{if(!q.csrf||typeof q.csrf!=="object"){let U=h();q.csrf={token:U}}if(q.csrf.field)return q.csrf.field;if(q.csrf.token)return`<input type="hidden" name="_token" value="${L(q.csrf.token)}">`;return'<input type="hidden" name="_token" value="">'}),K=K.replace(/@method\(['"]([^'"]+)['"]\)/g,(U,Z)=>{let X=Z.toUpperCase();if(Z&&!["GET","POST"].includes(X))return`<input type="hidden" name="_method" value="${L(X)}">`;return U}),K}function f(j,q,K=W){let U=j;return U=U.replace(/@form\(\s*(?:(?:'([^']+)'|"([^"]+)")\s*)?(?:,\s*(?:'([^']+)'|"([^"]+)")?)?\s*(?:,\s*\{([^}]+)\}\s*)?\)/g,(Z,X,$,Y,G,_="")=>{let w=X||$||"POST",P=Y||G||"",B=k(_),J=w.toUpperCase(),I=["GET","POST"].includes(J)?J:"POST",z=`<form method="${L(I)}" action="${L(P)}"${B?` ${B}`:""}>`;if(z+=`
|
|
3
3
|
${Q("@csrf",q)}`,!["GET","POST"].includes(J))z+=`
|
|
4
4
|
${Q(`@method('${J}')`,q)}`;return z}),U=U.replace(/@endform/g,"</form>"),U=U.replace(/@input\(\s*(?:'([^']+)'|"([^"]+)")\s*(?:,\s*(?:(?:'([^']*)'|"([^"]*)")\s*)?)?(?:,\s*\{([^}]+)\})?\s*\)/g,(Z,X,$,Y,G,_="")=>{let w=X||$||"",P=Y||G||"",B=k(_),J=H(w,q),I=J!==void 0&&J!==null?J:P||"",z=B.match(/type=['"]([^'"]+)['"]/i),T=z?z[1]:"text",R=O(w,q),D=B.match(/class=['"]([^'"]+)['"]/i),F=N(D?D[1]:"",K.input,R,K.inputError),y=B.replace(/class=['"][^'"]+['"]/i,"");return y=y.replace(/type=['"][^'"]+['"]/i,""),`<input type="${L(T)}" name="${L(w)}" value="${L(I)}" class="${F}"${y?` ${y}`:""}>`}),U=U.replace(/@textarea\(\s*['"]([^'"]+)['"]\s*(?:,\s*\{([^}]+)\})?\)([\s\S]*?)@endtextarea/g,(Z,X,$="",Y="")=>{let G=k($),_=H(X,q)||Y.trim(),w=O(X,q),P=G.match(/class=['"]([^'"]+)['"]/i),B=N(P?P[1]:"",K.input,w,K.inputError),J=G.replace(/class=['"][^'"]+['"]/i,"");return`<textarea name="${L(X)}" class="${B}"${J?` ${J}`:""}>${L(_)}</textarea>`}),U=U.replace(/@select\(\s*['"]([^'"]+)['"]\s*(?:,\s*\{([^}]+)\})?\)([\s\S]*?)@endselect/g,(Z,X,$="",Y)=>{let G=k($),_=H(X,q),w=O(X,q),P=G.match(/class=['"]([^'"]+)['"]/i),B=N(P?P[1]:"",K.input,w,K.inputError),J=G.replace(/class=['"][^'"]+['"]/i,""),I=Y;if(_!==void 0)I=Y.replace(/(<option[^>]*value=['"]([^'"]+)['"][^>]*>)/gi,(z,T,R)=>{if((Array.isArray(_)?_.some((F)=>String(F)===R):String(_)===R)&&!T.includes("selected"))return T.replace(/(<option)/,"$1 selected");return z});return`<select name="${L(X)}" class="${B}"${J?` ${J}`:""}>${I}</select>`}),U=U.replace(/@checkbox\(\s*['"]([^'"]+)['"]\s*(?:,\s*['"]([^'"]+)['"]\s*)?(?:,\s*\{([^}]+)\})?\)/g,(Z,X,$="1",Y="")=>{let G=k(Y),_=H(X,q),w=_!==void 0&&(Array.isArray(_)?_.some((I)=>String(I)===$):_===!0||String(_)===$),P=G.match(/class=['"]([^'"]+)['"]/i),B=P?P[1]:K.checkInput,J=G.replace(/class=['"][^'"]+['"]/i,"");return`<input type="checkbox" name="${L(X)}" value="${L($)}" class="${B}"${w?" checked":""}${J?` ${J}`:""}>`}),U=U.replace(/@radio\(\s*['"]([^'"]+)['"]\s*,\s*['"]([^'"]+)['"]\s*(?:,\s*\{([^}]+)\})?\)/g,(Z,X,$,Y="")=>{let G=k(Y),_=H(X,q),w=_!==void 0&&_===$,P=G.match(/class=['"]([^'"]+)['"]/i),B=P?P[1]:K.checkInput,J=G.replace(/class=['"][^'"]+['"]/i,"");return`<input type="radio" name="${L(X)}" value="${L($)}" class="${B}"${w?" checked":""}${J?` ${J}`:""}>`}),U=U.replace(/@file\(\s*['"]([^'"]+)['"]\s*(?:,\s*\{([^}]+)\})?\)/g,(Z,X,$="")=>{let Y=k($),G=Y.match(/accept=['"]([^'"]+)['"]/i),_=G?G[1]:"",w=Y.includes("multiple"),P=O(X,q),B=Y.match(/class=['"]([^'"]+)['"]/i),J=N(B?B[1]:"",K.input,P,K.inputError),I=Y.replace(/class=['"][^'"]+['"]/gi,"").replace(/accept=['"][^'"]+['"]/gi,"").replace(/\bmultiple\b/gi,"").trim(),z=[`<input type="file" name="${L(X)}"`,`class="${J}"`];if(_)z.push(`accept="${L(_)}"`);if(w)z.push("multiple");if(I)z.push(I);return`${z.join(" ")}>`}),U=U.replace(/@label\(\s*['"]([^'"]+)['"]\s*(?:,\s*\{([^}]+)\})?\)([\s\S]*?)@endlabel/g,(Z,X,$="",Y)=>{let G=k($),_=G.match(/class=['"]([^'"]+)['"]/i),w=_?_[1]:K.label,P=G.replace(/class=['"][^'"]+['"]/i,"");return`<label for="${L(X)}" class="${w}"${P?` ${P}`:""}>${Y}</label>`}),U}function x(j,q,K=W){return j.replace(/@error\(['"]([^'"]+)['"]\)([\s\S]*?)@enderror/g,(U,Z,X)=>{try{if(O(Z,q))return X.replace(/\{\{([^}]+)\}\}/g,($,Y)=>{try{if(Y.trim()==="$message"||Y.trim()==="message")return E(Z,q);if(Y.trim().includes("errors.first")||Y.trim().includes("$errors.first")){if(typeof q.errors?.first==="function")return q.errors.first(Z);return E(Z,q)}let G=Y.trim();if(M(G)){let _=g(G,q);return _!==void 0?String(_):G}return G}catch{return Y}});return""}catch($){return console.error("Error processing @error directive:",$),U}})}function O(j,q){if(!q.errors)return!1;if(typeof q.errors.has==="function")return q.errors.has(j);if(typeof q.errors==="object")return Object.prototype.hasOwnProperty.call(q.errors,j);return!1}function E(j,q){if(!q.errors)return"";if(typeof q.errors.get==="function")return q.errors.get(j);if(typeof q.errors==="object"&&Object.prototype.hasOwnProperty.call(q.errors,j)){let K=q.errors[j];return Array.isArray(K)?K[0]:String(K)}return""}function H(j,q){let K;if(q.old&&typeof q.old==="function")return q.old(j);if(q.old&&typeof q.old==="object")return q.old[j];if(j.endsWith("[]")){let U=j.slice(0,-2);if(K=q[U],K!==void 0)return K}return q[j]}function k(j){if(!j.trim())return"";let q=[],K=j.trim(),U=/([\w-]+)\s*:\s*(['"]?)([^,'"]*)\2(?:\s*,\s*|\s*$)/g,Z;while((Z=U.exec(K))!==null){let[,X,,$]=Z;q.push(`${X}="${$.trim()}"`)}return q.join(" ")}var C={required:(j,q,K)=>{if(j===void 0||j===null||j===""||Array.isArray(j)&&j.length===0)return`The ${K} field is required.`;return null},email:(j,q,K)=>{if(!j)return null;if(!/^[^\s@]+@[^\s@]+\.[^\s@]+$/.test(String(j)))return`The ${K} field must be a valid email address.`;return null},min:(j,q,K)=>{if(!j)return null;let U=Number(q[0]);if(typeof j==="string"&&j.length<U)return`The ${K} field must be at least ${U} characters.`;if(typeof j==="number"&&j<U)return`The ${K} field must be at least ${U}.`;if(Array.isArray(j)&&j.length<U)return`The ${K} field must have at least ${U} items.`;return null},max:(j,q,K)=>{if(!j)return null;let U=Number(q[0]);if(typeof j==="string"&&j.length>U)return`The ${K} field must not exceed ${U} characters.`;if(typeof j==="number"&&j>U)return`The ${K} field must not exceed ${U}.`;if(Array.isArray(j)&&j.length>U)return`The ${K} field must not have more than ${U} items.`;return null},confirmed:(j,q,K)=>{if(q[0]!==void 0&&j!==q[0])return`The ${K} confirmation does not match.`;return null},numeric:(j,q,K)=>{if(!j)return null;if(Number.isNaN(Number(j)))return`The ${K} field must be a number.`;return null},integer:(j,q,K)=>{if(!j)return null;if(!Number.isInteger(Number(j)))return`The ${K} field must be an integer.`;return null},alpha:(j,q,K)=>{if(!j)return null;if(!/^[a-z]+$/i.test(String(j)))return`The ${K} field must only contain letters.`;return null},alphanumeric:(j,q,K)=>{if(!j)return null;if(!/^[a-z0-9]+$/i.test(String(j)))return`The ${K} field must only contain letters and numbers.`;return null},url:(j,q,K)=>{if(!j)return null;try{return new URL(String(j))?null:null}catch{return`The ${K} field must be a valid URL.`}},regex:(j,q,K)=>{if(!j)return null;try{if(!new RegExp(q[0]).test(String(j)))return`The ${K} field format is invalid.`;return null}catch{return`The ${K} field has an invalid validation pattern.`}},in:(j,q,K)=>{if(!j)return null;if(!q.includes(String(j)))return`The ${K} field must be one of: ${q.join(", ")}.`;return null},notIn:(j,q,K)=>{if(!j)return null;if(q.includes(String(j)))return`The ${K} field must not be: ${q.join(", ")}.`;return null},date:(j,q,K)=>{if(!j)return null;let U=new Date(j);if(Number.isNaN(U.getTime()))return`The ${K} field must be a valid date.`;return null},before:(j,q,K)=>{if(!j)return null;let U=new Date(j),Z=new Date(q[0]);if(U>=Z)return`The ${K} field must be before ${q[0]}.`;return null},after:(j,q,K)=>{if(!j)return null;let U=new Date(j),Z=new Date(q[0]);if(U<=Z)return`The ${K} field must be after ${q[0]}.`;return null}};function i(j,q){C[j]=q}function S(j){let[q,...K]=j.split(":"),U=K.length>0?K.join(":").split(","):[];return{name:q.trim(),params:U}}function p(j,q,K,U={}){let Z=[],X=K.split("|").map(($)=>$.trim()).filter(Boolean);for(let $ of X){let Y=S($),G=C[Y.name];if(!G){console.warn(`Unknown validation rule: ${Y.name}`);continue}if(Y.name==="confirmed"){let w=`${j}_confirmation`;Y.params=[U[w]]}let _=G(q,Y.params||[],j);if(_)Z.push(Y.message||_)}return{field:j,valid:Z.length===0,errors:Z}}function o(j,q){let K={};for(let[U,Z]of Object.entries(q)){let X=p(U,j[U],Z,j);if(!X.valid)K[U]=X.errors}return K}function d(j,q){return j.replace(/@validate\(\s*['"]([^'"]+)['"]\s*,\s*['"]([^'"]+)['"]\s*(?:,\s*\{([^}]*)\})?\s*\)/g,(K,U,Z,X)=>{let $=Z.split("|").map((G)=>G.trim()),Y=[];for(let G of $){let _=S(G);switch(_.name){case"required":Y.push("required");break;case"email":Y.push('type="email"');break;case"url":Y.push('type="url"');break;case"numeric":case"integer":if(Y.push('type="number"'),_.name==="integer")Y.push('step="1"');break;case"min":if(_.params?.[0])Y.push(`minlength="${_.params[0]}"`);break;case"max":if(_.params?.[0])Y.push(`maxlength="${_.params[0]}"`);break;case"regex":if(_.params?.[0])Y.push(`pattern="${_.params[0]}"`);break}}return`<!-- @validate:${U}:${Z} -->${Y.length>0?`<!-- attrs:${Y.join(" ")} -->`:""}`})}var A={required:{name:"required",validate:(j)=>{if(j===null||j===void 0||j==="")return"This field is required";if(Array.isArray(j)&&j.length===0)return"This field is required";return!0},toHtml5:()=>["required"],message:"This field is required"},email:{name:"email",validate:(j)=>{if(!j)return!0;return/^[^\s@]+@[^\s@]+\.[^\s@]+$/.test(String(j))||"Please enter a valid email address"},toHtml5:()=>['type="email"'],message:"Please enter a valid email address"},url:{name:"url",validate:(j)=>{if(!j)return!0;try{return new URL(String(j)).protocol.startsWith("http")||"Please enter a valid URL"}catch{return"Please enter a valid URL"}},toHtml5:()=>['type="url"'],message:"Please enter a valid URL"},numeric:{name:"numeric",validate:(j)=>{if(!j)return!0;return!Number.isNaN(Number(j))||"Please enter a number"},toHtml5:()=>['type="number"'],message:"Please enter a number"},integer:{name:"integer",validate:(j)=>{if(!j)return!0;let q=Number(j);return Number.isInteger(q)||"Please enter a whole number"},toHtml5:()=>['type="number"','step="1"'],message:"Please enter a whole number"},alpha:{name:"alpha",validate:(j)=>{if(!j)return!0;return/^[a-z]+$/i.test(String(j))||"Please enter only letters"},toHtml5:()=>['pattern="[a-zA-Z]+"'],message:"Please enter only letters"},alphanumeric:{name:"alphanumeric",validate:(j)=>{if(!j)return!0;return/^[a-z0-9]+$/i.test(String(j))||"Please enter only letters and numbers"},toHtml5:()=>['pattern="[a-zA-Z0-9]+"'],message:"Please enter only letters and numbers"},min:{name:"min",validate:(j,q)=>{if(!j)return!0;let K=Number(q[0]);if(typeof j==="string")return j.length>=K||`Must be at least ${K} characters`;if(typeof j==="number")return j>=K||`Must be at least ${K}`;if(Array.isArray(j))return j.length>=K||`Must have at least ${K} items`;return!0},toHtml5:(j)=>[`minlength="${j[0]}"`,`min="${j[0]}"`],message:"Must be at least {{param}} characters"},max:{name:"max",validate:(j,q)=>{if(!j)return!0;let K=Number(q[0]);if(typeof j==="string")return j.length<=K||`Must be no more than ${K} characters`;if(typeof j==="number")return j<=K||`Must be no more than ${K}`;if(Array.isArray(j))return j.length<=K||`Must have no more than ${K} items`;return!0},toHtml5:(j)=>[`maxlength="${j[0]}"`,`max="${j[0]}"`],message:"Must be no more than {{param}} characters"},between:{name:"between",validate:(j,q)=>{if(!j)return!0;let[K,U]=q.map(Number);if(typeof j==="string")return j.length>=K&&j.length<=U||`Must be between ${K} and ${U} characters`;if(typeof j==="number")return j>=K&&j<=U||`Must be between ${K} and ${U}`;return!0},toHtml5:(j)=>[`minlength="${j[0]}"`,`maxlength="${j[1]}"`],message:"Must be between {{min}} and {{max}}"},confirmed:{name:"confirmed",validate:(j,q,K)=>{let U=Object.keys(K);for(let Z of U)if(Z.endsWith("_confirmation")&&K[Z]===j)return!0;return"Confirmation does not match"},message:"Confirmation does not match"},in:{name:"in",validate:(j,q)=>{if(!j)return!0;return q.includes(String(j))||`Must be one of: ${q.join(", ")}`},message:"Must be one of: {{values}}"},notIn:{name:"notIn",validate:(j,q)=>{if(!j)return!0;return!q.includes(String(j))||`Must not be: ${q.join(", ")}`},message:"Must not be: {{values}}"},regex:{name:"regex",validate:(j,q)=>{if(!j)return!0;try{return new RegExp(q[0]).test(String(j))||"Invalid format"}catch{return"Invalid format"}},toHtml5:(j)=>[`pattern="${j[0]}"`],message:"Invalid format"},date:{name:"date",validate:(j)=>{if(!j)return!0;let q=new Date(String(j));return!Number.isNaN(q.getTime())||"Please enter a valid date"},toHtml5:()=>['type="date"'],message:"Please enter a valid date"},before:{name:"before",validate:(j,q)=>{if(!j)return!0;let K=new Date(String(j)),U=new Date(q[0]);return K<U||`Must be before ${q[0]}`},toHtml5:(j)=>[`max="${j[0]}"`],message:"Must be before {{date}}"},after:{name:"after",validate:(j,q)=>{if(!j)return!0;let K=new Date(String(j)),U=new Date(q[0]);return K>U||`Must be after ${q[0]}`},toHtml5:(j)=>[`min="${j[0]}"`],message:"Must be after {{date}}"},size:{name:"size",validate:(j,q)=>{if(!j)return!0;let K=Number(q[0]);if(typeof j==="string")return j.length===K||`Must be exactly ${K} characters`;if(Array.isArray(j))return j.length===K||`Must have exactly ${K} items`;return!0},message:"Must be exactly {{size}}"},phone:{name:"phone",validate:(j)=>{if(!j)return!0;return/^\+?\(?\d{1,4}\)?[-\s./\d]*$/.test(String(j))||"Please enter a valid phone number"},toHtml5:()=>['type="tel"','pattern="\\+?\\(?\\d{1,4}\\)?[-\\s./\\d]*"'],message:"Please enter a valid phone number"}};function u(j){A[j.name]=j}function m(j,q,K={}){let U=[],Z=q.split("|").map((X)=>X.trim());for(let X of Z){let $=S(X),Y=A[$.name];if(!Y){console.warn(`Unknown validation rule: ${$.name}`);continue}let G=Y.validate(j,$.params||[],K);if(G!==!0)U.push(G)}return{valid:U.length===0,errors:U}}function r(j,q){let K={},U=!0;for(let[Z,X]of Object.entries(q)){let $=m(j[Z],X,j);if(!$.valid)U=!1,K[Z]=$.errors}return{valid:U,errors:K}}function s(j,q){let K=JSON.stringify(q);return`
|
|
5
5
|
<script>
|
|
@@ -54,4 +54,4 @@ catch { return 'Please enter a valid URL'; } },
|
|
|
54
54
|
});
|
|
55
55
|
})();
|
|
56
56
|
</script>`.trim()}
|
|
57
|
-
export{W as
|
|
57
|
+
export{W as Nv,v as Ov,Q as Pv,f as Qv,x as Rv,i as Sv,p as Tv,o as Uv,d as Vv,A as Wv,u as Xv,m as Yv,r as Zv,s as _v};
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
// @bun
|
|
2
|
-
import{
|
|
2
|
+
import{pB as I}from"./chunk-xv34zbp4.js";import{createHash as v}from"crypto";import{existsSync as X,mkdirSync as H,readFileSync as $,writeFileSync as T,readdirSync as B,statSync as F}from"fs";import{basename as Y,dirname as W,extname as Z,join as V,relative as N}from"path";import{gzipSync as k}from"zlib";var D={outDir:"dist",publicPath:"/",sourcemaps:!0,minify:{js:!0,css:!0,html:!0,dropConsole:!0,dropDebugger:!0,mangle:!0},splitting:{vendor:!0,minSize:20000,maxSize:250000,chunkNames:"deterministic"},css:{extract:!0,minify:!0,filename:"assets/[name].[hash].css"},assets:{inlineLimit:4096,filename:"assets/[name].[hash][ext]",hash:!0,hashLength:8,include:["png","jpg","jpeg","gif","svg","webp","woff","woff2","ttf","eot"]},compression:{gzip:!0,brotli:!0,threshold:1024,deleteOriginal:!1}};class w{config;startTime=0;outputs=[];chunks=[];assets=[];warnings=[];errors=[];moduleGraph=new Map;assetHashes=new Map;constructor(E){this.config={...D,...E}}async build(){this.startTime=Date.now(),this.outputs=[],this.chunks=[],this.assets=[],this.warnings=[],this.errors=[];try{this.ensureDir(this.config.outDir),await this.runPluginHook("setup"),await this.runPluginHook("buildStart");let E=this.collectEntries();for(let[A,G]of E)await this.buildEntry(A,G);if(this.config.css?.extract)await this.extractCss();if(await this.processAssets(),this.config.splitting)await this.performCodeSplitting();if(this.config.minify)await this.minifyOutputs();if(this.config.sourcemaps)await this.generateSourceMaps();if(await this.fingerprintAssets(),this.config.compression)await this.compressOutputs();if(this.config.analyze)await this.analyzeBundle();let q=this.getResult();return await this.runPluginHook("buildEnd",q),q}catch(E){return this.errors.push(String(E)),this.getResult()}}collectEntries(){let E=new Map,{entry:q}=this.config;if(typeof q==="string")E.set("main",q);else if(Array.isArray(q))q.forEach((A,G)=>{let J=Y(A,Z(A));E.set(J,A)});else if(typeof q==="object")Object.entries(q).forEach(([A,G])=>{E.set(A,G)});return E}async buildEntry(E,q){if(!await Bun.file(q).exists()){this.errors.push(`Entry point not found: ${q}`);return}let A=await Bun.file(q).text(),G=Z(q),J=A,L="js";if(G===".stx"||G===".html")L="html",J=await this.processTemplate(A,q);else if(G===".css")L="css",J=await this.processCss(A,q);else if(G===".js"||G===".ts")L="js",J=await this.processScript(A,q);J=await this.runPluginTransform(J,q);let K=this.generateHash(J),Q=this.getOutputName(E,L,K),R=V(this.config.outDir,Q);this.ensureDir(W(R)),await Bun.write(R,J),this.outputs.push({path:R,type:L,size:Buffer.byteLength(J),hash:K,sources:[q],isEntry:!0})}resolveRelativePath(E,q){if(q.startsWith("/"))return V(W(E),"..",q);return V(W(E),q)}async processTemplate(E,q){let A=E,G=[],J=[];if(A=A.replace(/<script\b([^>]*)\bstx-inline\b([^>]*)(?:><\/script>|><\/script>|\/>)/gi,(L,K,Q)=>{let R=(K+Q).match(/src=["']([^"']+)["']/);if(R){let U=this.resolveRelativePath(q,R[1]);if(X(U)){let _=$(U,"utf-8");G.push(`// Source: ${R[1]}
|
|
3
3
|
${_}`)}else this.warnings.push(`External script not found: ${U}`)}return""}),A=A.replace(/<link\b([^>]*)\bstx-inline\b([^>]*)(?:\/>|>)/gi,(L,K,Q)=>{let R=(K+Q).match(/href=["']([^"']+)["']/);if(R){let U=this.resolveRelativePath(q,R[1]);if(X(U)){let _=$(U,"utf-8");J.push(`/* Source: ${R[1]} */
|
|
4
4
|
${_}`)}else this.warnings.push(`External stylesheet not found: ${U}`)}return""}),A=A.replace(/<script\b(?![^>]*\bstx-inline\b)([^>]*)>([\s\S]*?)<\/script>/gi,(L,K,Q)=>{if(/\bsrc=/.test(K))return L;if(Q.trim())G.push(Q);return""}),A=A.replace(/<style\b[^>]*>([\s\S]*?)<\/style>/gi,(L,K)=>{if(K.trim())J.push(K);return""}),G.length>0){let L=G.join(`
|
|
5
5
|
|
|
@@ -50,4 +50,4 @@ ${_}`)}else this.warnings.push(`External stylesheet not found: ${U}`)}return""})
|
|
|
50
50
|
</body>
|
|
51
51
|
</html>`}generateAnalysisText(E){let q=["Bundle Analysis","=".repeat(50),""];for(let A of E.outputs)q.push(`${A.path}`),q.push(` Size: ${A.sizeFormatted}${A.gzipSizeFormatted?` (gzip: ${A.gzipSizeFormatted})`:""}`),q.push("");return q.push("=".repeat(50)),q.push(`Total: ${this.formatSize(E.totalSize)} (gzip: ${this.formatSize(E.totalGzipSize)})`),q.join(`
|
|
52
52
|
`)}async runPluginHook(E,q){if(!this.config.plugins)return;for(let A of this.config.plugins){let G=A[E];if(typeof G==="function")await G.call(A,q||this)}}async runPluginTransform(E,q){if(!this.config.plugins)return E;let A=E;for(let G of this.config.plugins)if(G.transform){let J=await G.transform(A,q);if(J!=null)A=J}return A}generateHash(E){return v("sha256").update(E).digest("hex")}getOutputName(E,q,A){let G=q==="html"?".html":q==="css"?".css":q==="js"?".js":"";return`${E}.${A.slice(0,8)}${G}`}formatSize(E){if(E<1024)return`${E} B`;if(E<1048576)return`${(E/1024).toFixed(2)} KB`;return`${(E/1048576).toFixed(2)} MB`}ensureDir(E){if(!X(E))H(E,{recursive:!0})}walkDir(E,q){if(!X(E))return;let A=B(E,{withFileTypes:!0});for(let G of A){let J=V(E,G.name);if(G.isDirectory())this.walkDir(J,q);else q(J)}}getResult(){let E=Date.now()-this.startTime,q=this.outputs.reduce((G,J)=>G+J.size,0),A=this.outputs.reduce((G,J)=>G+(J.gzipSize||0),0);return{outputs:this.outputs,duration:E,totalSize:q,gzipSize:A,chunks:this.chunks,assets:this.assets,warnings:this.warnings,errors:this.errors}}}async function C(E){return new w(E).build()}function S(E){return new w(E)}function g(E){return{...D,...E}}
|
|
53
|
-
export{w as
|
|
53
|
+
export{w as Ai,C as Bi,S as Ci,g as Di};
|
|
@@ -1,3 +1,3 @@
|
|
|
1
1
|
// @bun
|
|
2
|
-
import{
|
|
3
|
-
export{V as
|
|
2
|
+
import{Bj as B,Cj as M}from"./chunk-rtr974rc.js";import{Dj as w,Ej as x}from"./chunk-j8tn8enq.js";import{Hj as O,Ij as Q}from"./chunk-pcntd9h4.js";import{Vk as E,_k as L}from"./chunk-jpndqst5.js";import{pB as v}from"./chunk-xv34zbp4.js";import{resolve as F,basename as D,extname as C,join as b}from"path";import{mkdir as q}from"fs/promises";async function T(){try{return await import("ts-videos")}catch{return null}}function R(J){switch(J){case"very-low":return 500000;case"low":return 1e6;case"medium":return 2500000;case"high":return 5000000;case"very-high":return 1e7;case"lossless":return 0;default:return 2500000}}function y(J){switch(J){case"youtube":return{codec:"h264",maxWidth:1920,maxHeight:1080,frameRate:30,audioCodec:"aac",audioBitrate:128000};case"twitter":return{codec:"h264",maxWidth:1280,maxHeight:720,frameRate:30,bitrate:5000000,audioCodec:"aac",audioBitrate:128000};case"instagram-feed":return{codec:"h264",maxWidth:1080,maxHeight:1080,frameRate:30,bitrate:3500000,audioCodec:"aac",audioBitrate:128000};case"instagram-story":case"instagram-reels":return{codec:"h264",maxWidth:1080,maxHeight:1920,frameRate:30,bitrate:3500000,audioCodec:"aac",audioBitrate:128000};case"tiktok":return{codec:"h264",maxWidth:1080,maxHeight:1920,frameRate:30,bitrate:4000000,audioCodec:"aac",audioBitrate:128000};case"discord":return{codec:"h264",maxWidth:1920,maxHeight:1080,frameRate:60,bitrate:8000000,audioCodec:"aac",audioBitrate:192000};case"linkedin":return{codec:"h264",maxWidth:1920,maxHeight:1080,frameRate:30,bitrate:5000000,audioCodec:"aac",audioBitrate:128000};case"facebook":return{codec:"h264",maxWidth:1280,maxHeight:720,frameRate:30,bitrate:4000000,audioCodec:"aac",audioBitrate:128000};case"web-progressive":return{codec:"h264",maxWidth:1920,maxHeight:1080,frameRate:30,audioCodec:"aac",audioBitrate:128000,twoPass:!0};case"web-streaming":return{codec:"h264",maxWidth:1920,maxHeight:1080,frameRate:30,audioCodec:"aac",audioBitrate:128000};default:return{}}}async function V(J){let I=await T();if(!I)return null;try{let G=F(J),X=await new I.Input(G).getInfo();return{duration:X.duration||0,width:X.width||0,height:X.height||0,frameRate:X.frameRate||0,bitrate:X.bitrate||0,codec:X.videoCodec||"",audioCodec:X.audioCodec}}catch(G){return console.warn(`[stx-media] Failed to analyze video: ${G}`),null}}async function f(J,I,G,Y){let X=await T();if(!X)return console.warn("[stx-media] ts-videos not installed, skipping processing"),{src:J,processed:!1};let k=await O(J,I,G);if(k)return k;try{let K=F(J);if(!await L(K))return{src:J,processed:!1,errors:[`Source file not found: ${J}`]};let j=G.outputDir||"dist/videos",z=G.baseUrl||"/videos";await q(j,{recursive:!0});let A=await E(K),H=D(J,C(J)),N={src:J,processed:!0,hash:A};Y?.({percentage:5,stage:"analyzing"}),N.metadata=await V(K)||void 0;let _={};if(I.quality)_.bitrate=R(I.quality);if(I.platform)Object.assign(_,y(I.platform));if(I.transcode)Object.assign(_,I.transcode);if(Object.keys(_).length>0||I.process){Y?.({percentage:10,stage:"transcoding"});let W=`${H}-${A}.mp4`,Z=b(j,W);try{let $=await S(K,Z,_,X,(U)=>Y?.({percentage:10+U*0.5,stage:"transcoding"}));if($)N.transcoded={path:Z,url:`${z}/${W}`,duration:$.duration,size:$.size,video:{codec:_.codec||"h264",width:$.width,height:$.height,bitrate:$.bitrate,frameRate:$.frameRate},audio:$.audioCodec?{codec:_.audioCodec||"aac",bitrate:_.audioBitrate||128000,sampleRate:_.sampleRate||48000,channels:_.channels||2}:void 0}}catch($){N.errors=N.errors||[],N.errors.push(`Transcoding failed: ${$}`)}}if(I.generatePoster){Y?.({percentage:65,stage:"generating-poster"});let W=typeof I.generatePoster==="object"?I.generatePoster:{timestamp:0},Z=await w(K,W,j,z);if(Z)N.poster=Z}if(G.thumbnails?.enabled){Y?.({percentage:70,stage:"generating-thumbnails"});let W=await x(K,G.thumbnails,j,z);if(W.length>0)N.thumbnails=W}if(I.streaming){Y?.({percentage:80,stage:"generating-manifests"});let W=typeof I.streaming==="object"?I.streaming:G.streaming||{format:"hls"};if(W.format==="hls"||W.format===void 0){let Z=await B(K,W.qualities||G.streaming?.defaultQualities||[],j,z);if(Z)N.streaming={...N.streaming,hls:Z}}if(W.format==="dash"){let Z=await M(K,W.qualities||G.streaming?.defaultQualities||[],j,z);if(Z)N.streaming={...N.streaming,dash:Z}}}if(I.spriteSheet)Y?.({percentage:90,stage:"generating-sprite-sheet"});return Y?.({percentage:100,stage:"complete"}),await Q(J,I,N,G),N}catch(K){return{src:J,processed:!1,errors:[`Processing failed: ${K}`]}}}async function S(J,I,G,Y,X){try{let K=await new Y.Conversion(J,I,{videoCodec:G.codec,videoBitrate:G.bitrate,width:G.maxWidth,height:G.maxHeight,frameRate:G.frameRate,audioCodec:G.audioCodec,audioBitrate:G.audioBitrate,sampleRate:G.sampleRate,channels:G.channels}).run((j)=>{X?.(j.percentage/100)});return{duration:K.duration||0,size:K.size||0,width:K.width||G.maxWidth||0,height:K.height||G.maxHeight||0,bitrate:K.bitrate||G.bitrate||0,frameRate:K.frameRate||G.frameRate||30,audioCodec:K.audioCodec}}catch(k){return console.error(`[stx-media] Transcoding failed: ${k}`),null}}
|
|
3
|
+
export{V as yj,f as zj};
|
|
@@ -1,3 +1,3 @@
|
|
|
1
1
|
// @bun
|
|
2
2
|
import L from"fs";import C from"path";import{gzipSync as H}from"zlib";import{createHash as _}from"crypto";var Y={".js":"js",".mjs":"js",".cjs":"js",".ts":"js",".jsx":"js",".tsx":"js",".css":"css",".scss":"css",".sass":"css",".less":"css",".html":"html",".htm":"html",".png":"image",".jpg":"image",".jpeg":"image",".gif":"image",".svg":"image",".webp":"image",".avif":"image",".ico":"image",".woff":"font",".woff2":"font",".ttf":"font",".eot":"font",".otf":"font"},R=[/node_modules/,/vendor/,/bower_components/,/\.min\./],N=[/index\.(js|ts|html)$/,/main\.(js|ts)$/,/app\.(js|ts)$/,/entry\.(js|ts)$/];async function y(j,Q={}){let{includeSourceMaps:U=!1,parseImports:K=!0,detectDuplicates:W=!0,topModulesCount:X=20}=Q;if(!L.existsSync(j))throw Error(`Build directory not found: ${j}`);if(!L.statSync(j).isDirectory())throw Error(`Not a directory: ${j}`);let J=await E(j,U),q=[],V=[];for(let G of J)try{let O=await I(G,j,K);q.push(O)}catch(O){V.push(`Failed to process ${G}: ${O}`)}let $=g(q,j),B=q.reduce((G,O)=>G+O.size,0),w=q.reduce((G,O)=>G+O.gzipSize,0),A=k(q),F=W?z(q):[],v=[...q].sort((G,O)=>O.size-G.size).slice(0,X);return{timestamp:Date.now(),buildDir:C.resolve(j),chunks:$,totalSize:B,totalGzipSize:w,moduleCount:q.length,duplicates:F,byType:A,largestModules:v,warnings:V}}async function E(j,Q){let U=[];async function K(W){let X=await L.promises.readdir(W,{withFileTypes:!0});for(let Z of X){let J=C.join(W,Z.name);if(Z.isDirectory()){if(!Z.name.startsWith(".")&&Z.name!=="node_modules")await K(J)}else if(Z.isFile()){if(!Q&&Z.name.endsWith(".map"))continue;U.push(J)}}}return await K(j),U}async function I(j,Q,U){let K=await L.promises.readFile(j),W=C.relative(Q,j),X=C.extname(j).toLowerCase(),Z=K.length,J=S(K),q=T(K,X),V=_("md5").update(K).digest("hex").slice(0,8),$=Y[X]||"other",B=[];if(U&&$==="js")B.push(...x(K.toString("utf-8")));return{id:W,path:W,size:Z,gzipSize:J,parsedSize:q,extension:X,type:$,imports:B,importedBy:[],hash:V}}function S(j){try{let Q=H(j,{level:9}).length;return Math.min(Q,j.length)}catch{return j.length}}function T(j,Q){if(Q.includes(".min.")||j.length<1000)return j.length;let K=Y[Q];if(K==="js")return Math.round(j.length*0.6);if(K==="css")return Math.round(j.length*0.7);return j.length}function x(j){let Q=[],U=/import\s+(?:[\w*{}\s,]+\s+from\s+)?['"]([^'"]+)['"]/g,K;while((K=U.exec(j))!==null)Q.push(K[1]);let W=/import\s*\(\s*['"]([^'"]+)['"]\s*\)/g;while((K=W.exec(j))!==null)Q.push(K[1]);let X=/require\s*\(\s*['"]([^'"]+)['"]\s*\)/g;while((K=X.exec(j))!==null)Q.push(K[1]);return[...new Set(Q)]}function g(j,Q){let U=new Map;for(let W of j){let X=W.path.split(C.sep),Z;if(X.length===1)Z=C.basename(W.path,W.extension);else Z=X[0];let J=U.get(Z)||[];J.push(W),U.set(Z,J)}let K=[];for(let[W,X]of U){let Z=X.reduce(($,B)=>$+B.size,0),J=X.reduce(($,B)=>$+B.gzipSize,0),q=X.some(($)=>N.some((B)=>B.test($.path))),V=X.some(($)=>R.some((B)=>B.test($.path)));K.push({name:W,files:X.map(($)=>$.path),modules:X,size:Z,gzipSize:J,isEntry:q,isVendor:V})}return K.sort((W,X)=>X.size-W.size)}function k(j){let Q={js:{count:0,size:0,gzipSize:0},css:{count:0,size:0,gzipSize:0},html:{count:0,size:0,gzipSize:0},image:{count:0,size:0,gzipSize:0},font:{count:0,size:0,gzipSize:0},other:{count:0,size:0,gzipSize:0}};for(let U of j)Q[U.type].count++,Q[U.type].size+=U.size,Q[U.type].gzipSize+=U.gzipSize;return Q}function z(j){let Q=new Map;for(let K of j){let W=Q.get(K.hash)||[];W.push(K),Q.set(K.hash,W)}let U=[];for(let[,K]of Q)if(K.length>1){let W=K[0];U.push({path:W.path,count:K.length,wastedBytes:W.size*(K.length-1),locations:K.map((X)=>X.path)})}return U.sort((K,W)=>W.wastedBytes-K.wastedBytes)}function b(j){if(j<1024)return`${j} B`;if(j<1048576)return`${(j/1024).toFixed(2)} KB`;return`${(j/1048576).toFixed(2)} MB`}function h(j){let Q=j.match(/^([\d.]+)\s*(B|KB|MB|GB)?$/i);if(!Q)return 0;let U=Number.parseFloat(Q[1]);switch((Q[2]||"B").toUpperCase()){case"KB":return U*1024;case"MB":return U*1024*1024;case"GB":return U*1024*1024*1024;default:return U}}function p(j,Q){if(Q===0)return"0%";return`${(j/Q*100).toFixed(1)}%`}
|
|
3
|
-
export{y as
|
|
3
|
+
export{y as Cp,b as Dp,h as Ep,p as Fp};
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
// @bun
|
|
2
|
-
import{
|
|
2
|
+
import{Mm as O,Nm as U,Om as V,Qm as k,Rm as x,Um as F,Zm as w}from"./chunk-4d2y57k7.js";import{xw as C}from"./chunk-h5jxydqq.js";var R=new Map;function l(){R.clear()}async function D(X,P){let q=`${X}:${JSON.stringify(P)}`;if(R.has(q))return R.get(q);try{let G=await x(X,P);return R.set(q,G),G}catch{return null}}function I(){return C({name:"image",hasEndTag:!1,description:"Render an optimized image with responsive variants",transform:async(X,P,q)=>{let{src:G,alt:Z,options:J}=f(X,P,q);if(!G)return console.warn("@image directive: missing src argument"),"<!-- @image: missing src -->";let $={widths:J.widths||(J.width?[J.width]:O),formats:J.formats||U,quality:J.quality||V,placeholder:(J.placeholder==="color"?"dominant-color":J.placeholder)||"none"};if(!await k())return M(G,Z||"",J);let N=await D(G,$);if(!N)return M(G,Z||"",J);return b(N,Z||"",J)}})}function f(X,P,q){if(P.src)return{src:String(P.src),alt:String(P.alt||""),options:P.options||{}};let Z=X.trim();if(Z.startsWith("@image(")||Z.startsWith("("))Z=Z.replace(/^@image\(/,"").replace(/^\(/,"").replace(/\)$/,"");let J=y(Z),$=J[0]||"",B=J[1]||"",N={};if($&&!$.startsWith("/")&&!$.startsWith(".")&&!$.startsWith("http")){let j=q[$];if(typeof j==="string")$=j}if(J[2])try{if(typeof J[2]==="string")N=JSON.parse(J[2]);else N=J[2]}catch{}return{src:$,alt:B,options:N}}function y(X){let P=[],q="",G=!1,Z="",J=0,$=0;for(let B=0;B<X.length;B++){let N=X[B],j=B>0?X[B-1]:"";if((N==='"'||N==="'")&&j!=="\\"){if(!G)G=!0,Z=N;else if(N===Z)G=!1,Z="";else q+=N;continue}if(!G){if(N==="{")J++;if(N==="}")J--;if(N==="[")$++;if(N==="]")$--;if(N===","&&J===0&&$===0){P.push(q.trim()),q="";continue}}q+=N}if(q.trim())P.push(q.trim());return P}function M(X,P,q){let G=[`src="${Y(X)}"`];if(P)G.push(`alt="${Y(P)}"`);if(q.width)G.push(`width="${q.width}"`);if(q.height)G.push(`height="${q.height}"`);if(q.class)G.push(`class="${Y(q.class)}"`);if(q.style)G.push(`style="${Y(q.style)}"`);if(q.lazy!==!1)G.push('loading="lazy"');return G.push('decoding="async"'),`<img ${G.join(" ")} />`}function b(X,P,q){let{variants:G,placeholder:Z,width:J,height:$,aspectRatio:B}=X,N=new Map;for(let H of G){let W=N.get(H.format)||[];W.push(H),N.set(H.format,W)}let j=["avif","webp","jpeg","png"],L=[];for(let H of j){let W=N.get(H);if(W&&W.length>0){let T=F(W),u=w(H),v=q.sizes||"100vw";L.push(` <source type="${u}" srcset="${Y(T)}" sizes="${Y(v)}" />`)}}let _=N.get("jpeg")||[],E=_.length>0?_[Math.floor(_.length/2)]:G[Math.floor(G.length/2)],z=[`src="${E?.url||X.src}"`,`alt="${Y(P)}"`];if(q.width||J)z.push(`width="${q.width||J}"`);if(q.height||$)z.push(`height="${q.height||$}"`);if(q.class)z.push(`class="${Y(q.class)}"`);let K=[];if(B)K.push(`aspect-ratio: ${B.toFixed(4)}`);if(q.style)K.push(q.style);if(K.length>0)z.push(`style="${K.join("; ")}"`);if(q.lazy!==!1&&!q.priority)z.push('loading="lazy"');if(z.push('decoding="async"'),q.priority)z.push('fetchpriority="high"');let Q=`<picture>
|
|
3
3
|
`;if(Q+=L.join(`
|
|
4
4
|
`)+`
|
|
5
5
|
`,Q+=` <img ${z.join(" ")} />
|
|
@@ -9,4 +9,4 @@ ${Q}
|
|
|
9
9
|
${Q}
|
|
10
10
|
</div>`}}if(q.priority&&E){let H=w(E.format);Q=`<link rel="preload" as="image" href="${Y(E.url)}" type="${H}" />
|
|
11
11
|
`+Q}return Q}function Y(X){return X.replace(/&/g,"&").replace(/"/g,""").replace(/'/g,"'").replace(/</g,"<").replace(/>/g,">")}var h=I();
|
|
12
|
-
export{l as
|
|
12
|
+
export{l as am,I as bm,h as cm};
|
|
@@ -4,4 +4,4 @@ import M from"fs";import N from"path";async function Y(G,A,H={}){let b=H.outDir|
|
|
|
4
4
|
`)}function R(G){let A=G.props.filter((j)=>j.required||j.default!==void 0).map((j)=>{if(j.type==="boolean")return j.default?j.name:"";if(j.type==="string")return`${j.name}="${j.default||"value"}"`;return`:${j.name}="${JSON.stringify(j.default)}"`}).filter(Boolean).join(" "),H=G.slots.length>0,b=G.slots.find((j)=>j.name==="default");if(H&&b)return`<${G.name} ${A}>
|
|
5
5
|
Content goes here
|
|
6
6
|
</${G.name}>`;return`<${G.name} ${A} />`}function Z(G){let A=G.map((H)=>({name:H.name,description:H.description,category:H.category,tags:H.tags,props:H.props.map((b)=>({name:b.name,type:b.type,required:b.required,default:b.default,description:b.description})),slots:H.slots.map((b)=>({name:b.name,description:b.description}))}));return JSON.stringify(A,null,2)}function _(G){let A={colors:new Set,spacing:new Set,typography:new Set,borders:new Set,shadows:new Set};for(let H of G)for(let b of H.cssClasses){if(b.match(/^(?:text|bg|border|fill|stroke)-/))A.colors.add(b);if(b.match(/^(?:p|m|gap|space)-/))A.spacing.add(b);if(b.match(/^(?:text|font|leading|tracking)-/))A.typography.add(b);if(b.match(/^(?:border|rounded)-/))A.borders.add(b);if(b.match(/^shadow/))A.shadows.add(b)}return{colors:Array.from(A.colors),spacing:Array.from(A.spacing),typography:Array.from(A.typography),borders:Array.from(A.borders),shadows:Array.from(A.shadows)}}
|
|
7
|
-
export{Y as
|
|
7
|
+
export{Y as za,P as Aa,Q as Ba,Z as Ca,_ as Da};
|
|
@@ -11,4 +11,4 @@ ${z}
|
|
|
11
11
|
</head>`);return q+j;case"body-start":if(j.includes("<body"))return j.replace(/(<body[^>]*>)/,`$1
|
|
12
12
|
${q}`);return q+j;case"body-end":{let F=j.lastIndexOf("</body>");if(F!==-1)return j.slice(0,F)+q+`
|
|
13
13
|
`+j.slice(F);return j+q}default:return j}}function A(j){return j.trim()}
|
|
14
|
-
export{w as
|
|
14
|
+
export{w as mt,K as nt,W as ot,B as pt,A as qt};
|
|
@@ -1,3 +1,3 @@
|
|
|
1
1
|
// @bun
|
|
2
|
-
import{
|
|
3
|
-
export{V as
|
|
2
|
+
import{Xc as H,Zc as J}from"./chunk-yn38c15w.js";import D from"fs";import k from"path";function V(j,q){let z=[k.join(j.root,"stx.config.ts"),k.join(j.root,"stx.config.js"),k.join(j.root,"stx.config.mjs")],K=q.debounceMs??300,A=null,E=[];for(let B of z)try{if(!D.existsSync(B))continue;let L=D.watch(B,(N)=>{if(N==="change"){if(A)clearTimeout(A);A=setTimeout(async()=>{J("Config file changed, restarting...");try{await q.onChange()}catch(O){H(`Failed to restart: ${O}`)}},K)}});E.push(L)}catch{}return{stop(){if(A)clearTimeout(A);for(let B of E)B.close()}}}function Q(j){let q=[k.join(j,"stx.config.ts"),k.join(j,"stx.config.js"),k.join(j,"stx.config.mjs"),k.join(j,"config","stx.ts"),k.join(j,"config","stx.js"),k.join(j,"config","stx.mjs"),k.join(j,".config","stx.ts"),k.join(j,".config","stx.js"),k.join(j,".config","stx.mjs")];for(let z of q)if(D.existsSync(z))return z;return null}async function X(j){let q=Q(j);if(!q)return null;try{return(await D.promises.stat(q)).mtimeMs}catch{return null}}
|
|
3
|
+
export{V as Bc,Q as Cc,X as Dc};
|
|
@@ -5,4 +5,4 @@ ${C.join(`
|
|
|
5
5
|
<!-- /SEO -->`,M=/<!--\s*stx SEO Tags\s*-->[\s\S]*?<meta\s+name="twitter:description"[^>]*>\s*/i;if(M.test(q))q=q.replace(M,"");if(q=q.replace(/<!--\s*SEO\s*-->[\s\S]*?<!--\s*\/SEO\s*-->\s*/g,""),q=q.replace(/<title>[\s\S]*?<\/title>\s*/i,""),q=q.replace(/<meta\s+name="title"\s+content="stx Project"[^>]*>\s*/g,"").replace(/<meta\s+name="description"\s+content="A website built with stx[^"]*"[^>]*>\s*/g,"").replace(/<meta\s+property="og:title"\s+content="stx Project"[^>]*>\s*/g,"").replace(/<meta\s+property="og:description"\s+content="A website built with stx[^"]*"[^>]*>\s*/g,"").replace(/<meta\s+property="og:type"\s+content="website"[^>]*>\s*/g,"").replace(/<meta\s+name="twitter:card"\s+content="summary_large_image"[^>]*>\s*/g,"").replace(/<meta\s+name="twitter:title"\s+content="stx Project"[^>]*>\s*/g,"").replace(/<meta\s+name="twitter:description"\s+content="A website built with stx[^"]*"[^>]*>\s*/g,""),/<head[^>]*>/i.test(q))return q.replace(/<head([^>]*)>/i,`<head$1>
|
|
6
6
|
${L}`);return`${L}
|
|
7
7
|
${q}`}function w(q){return q.replace(/&/g,"&").replace(/"/g,""").replace(/</g,"<").replace(/>/g,">")}function W(q){return q.replace(/&/g,"&").replace(/</g,"<").replace(/>/g,">")}
|
|
8
|
-
export{X as
|
|
8
|
+
export{X as hh};
|
|
@@ -1,3 +1,3 @@
|
|
|
1
1
|
// @bun
|
|
2
2
|
var z={patterns:[],exact:{}};function G(q,A){if(!z.exact[q])z.exact[q]=[];z.exact[q].push(A)}function H(q,A){let D=typeof q==="string"?new RegExp(q):q;z.patterns.push({pattern:D,callback:A})}async function I(q,A){let D=q.split("/").pop()?.split(".")[0]||"";if(z.exact[q])for(let B of z.exact[q])await Promise.resolve(B(A,q));if(z.exact[D])for(let B of z.exact[D])await Promise.resolve(B(A,q));for(let{pattern:B,callback:F}of z.patterns)if(B.test(q)||B.test(D))await Promise.resolve(F(A,q))}function J(){z.patterns=[],z.exact={}}
|
|
3
|
-
export{G as
|
|
3
|
+
export{G as ht,H as it,I as jt,J as kt};
|
|
@@ -176,4 +176,4 @@ var Q=null,R=null;function $(z,A,G=new WeakSet){if(Object.is(z,A))return!0;if(ty
|
|
|
176
176
|
};
|
|
177
177
|
window.provide = provide;
|
|
178
178
|
})();
|
|
179
|
-
</script>`}export{K as
|
|
179
|
+
</script>`}export{K as ci,q as di,x as ei,N as fi,S as gi,O as hi,H as ii,m as ji,j as ki,g as li,w as mi,h as ni,I as oi,y as pi,E as qi,v as ri,Z as si,V as ti,d as ui,k as vi,f as wi};
|
|
@@ -30,4 +30,4 @@ ${q.variants.slice(1).map((B)=>` <Variant title="${B.title}">
|
|
|
30
30
|
`)}
|
|
31
31
|
</Story>
|
|
32
32
|
`}function R(h){let q=h.toLowerCase();if(q==="boolean")return"false";if(q==="number")return"0";if(q==="array")return"[]";if(q==="object")return"{}";return"''"}function U(h){return{text:"StxText",number:"StxNumber",boolean:"StxCheckbox",select:"StxSelect",radio:"StxRadio",color:"StxColorSelect",json:"StxJson",date:"StxText",textarea:"StxTextarea",slider:"StxSlider",buttongroup:"StxButtonGroup"}[h]||"StxText"}function W(h){return Object.entries(h).map(([q,x])=>{if(typeof x==="string")return`${q}="${x}"`;if(typeof x==="boolean")return x?q:`:${q}="false"`;return`:${q}="${JSON.stringify(x)}"`}).join(" ")}
|
|
33
|
-
export{J as
|
|
33
|
+
export{J as Pa,L as Qa,O as Ra,Y as Sa,Z as Ta};
|
|
@@ -1,3 +1,3 @@
|
|
|
1
1
|
// @bun
|
|
2
|
-
import{
|
|
3
|
-
export{b as
|
|
2
|
+
import{Bx as Z}from"./chunk-9ecv8aqj.js";import{py as $}from"./chunk-zen6ax1y.js";import{Ry as _}from"./chunk-27zsyhrd.js";async function b(J,L,B,y){if(!y.customDirectives||y.customDirectives.length===0)return J;let G=J;for(let j of y.customDirectives){if(!j.name||typeof j.handler!=="function"){if(y.debug)console.warn("Invalid custom directive:",j);continue}if(j.hasEndTag)G=await D(G,j,L,B,y);else G=await Q(G,j,L,B,y)}return G}async function D(J,L,B,y,G){let{name:j,handler:k}=L,O=`@${j}`,Y=`@end${j}`,H=J,V=Z(`${O}(?:\\s*\\(([^()]*(?:\\([^)]*\\)[^()]*)*)\\))?([\\s\\S]*?)${Y}`,"g"),X=[],U=V.exec(H);while(U!==null){let[z,F="",A=""]=U,K=U.index||0;try{let N=F?W(F):[],w=A.trim(),q=await k(w,N,B,y);X.push({original:z,processed:q,startIndex:K})}catch(N){let w=N instanceof Error?N.message:String(N);if(G.debug)console.error(`Error processing custom directive @${j}:`,N);X.push({original:z,processed:$("CustomDirective",`Error in @${j}${F?`(${F})`:""}: ${w}`,_.EVALUATION_ERROR),startIndex:K})}U=V.exec(H)}for(let z=X.length-1;z>=0;z--){let{original:F,processed:A}=X[z];H=H.replace(F,A)}return H}async function Q(J,L,B,y,G){let{name:j,handler:k}=L,O=J,Y=Z(`@${j}\\s*\\(([^()]*(?:\\([^)]*\\)[^()]*)*)\\)`,"g"),H=[],V=Y.exec(O);while(V!==null){let[z,F=""]=V,A=V.index||0;try{let K=W(F),N=await k("",K,B,y);H.push({original:z,processed:N,startIndex:A})}catch(K){let N=K instanceof Error?K.message:String(K);if(G.debug)console.error(`Error processing custom directive @${j}:`,K);H.push({original:z,processed:$("CustomDirective",`Error in @${j}(${F}): ${N}`,_.EVALUATION_ERROR),startIndex:A})}V=Y.exec(O)}let X=Z(`@${j}(?!\\w)(?!\\s*\\()`,"g"),U=X.exec(O);while(U!==null){let[z]=U,F=U.index||0;try{let A=await k("",[],B,y);H.push({original:z,processed:A,startIndex:F})}catch(A){let K=A instanceof Error?A.message:String(A);if(G.debug)console.error(`Error processing custom directive @${j}:`,A);H.push({original:z,processed:$("CustomDirective",`Error in @${j}: ${K}`,_.EVALUATION_ERROR),startIndex:F})}U=X.exec(O)}for(let z=H.length-1;z>=0;z--){let{original:F,processed:A}=H[z];O=O.replace(F,A)}return O}function W(J){if(!J.trim())return[];let L=[],B="",y=!1,G="";for(let j=0;j<J.length;j++){let k=J[j];if((k==='"'||k==="'")&&(j===0||J[j-1]!=="\\"))if(!y)y=!0,G=k;else if(k===G)y=!1;else B+=k;else if(k===","&&!y)L.push(B.trim()),B="";else B+=k}if(B.trim())L.push(B.trim());return L.map((j)=>{let k=j.trim();if(k.startsWith('"')&&k.endsWith('"')||k.startsWith("'")&&k.endsWith("'"))return k.substring(1,k.length-1);return k})}
|
|
3
|
+
export{b as zx};
|
|
@@ -1,3 +1,3 @@
|
|
|
1
1
|
// @bun
|
|
2
2
|
import D from"process";function F(B="STX_PUBLIC_"){let q={},A={};for(let[z,C]of Object.entries(D.env)){if(!z.startsWith(B)||C===void 0)continue;q[`import.meta.env.${z}`]=JSON.stringify(C),A[z]=C}return q["import.meta.env"]=JSON.stringify(A),q}function H(B="STX_PUBLIC_"){let q={};for(let[A,z]of Object.entries(D.env))if(A.startsWith(B)&&z!==void 0)q[A]=z;return q}
|
|
3
|
-
export{F as
|
|
3
|
+
export{F as Ty,H as Uy};
|
|
@@ -106,4 +106,4 @@ else {
|
|
|
106
106
|
})();
|
|
107
107
|
</script>`}function x(q){let j=_(q);if(j.length===0)return{template:q,bindings:[]};let F=q,z=[];for(let J=j.length-1;J>=0;J--){let G=j[J],$=G.originalTag;if(!$.includes(" id="))$=$.replace(/^<([a-z][a-z0-9-]*)/,`<$1 id="${G.elementId}"`);else{let X=$.match(/id=["']([^"']+)["']/);if(X)for(let D of G.events)D.elementId=X[1]}for(let X of G.events){let D=X.attribute.replace(/[.*+?^${}()|[\]\\]/g,"\\$&"),V=new RegExp(`\\s*${D}\\s*=\\s*"[^"]*"`,"g"),Z=new RegExp(`\\s*${D}\\s*=\\s*'[^']*'`,"g");$=$.replace(V,""),$=$.replace(Z,"")}F=F.slice(0,G.startIndex)+$+F.slice(G.endIndex),z.push(...G.events)}return{template:F,bindings:z}}function S(q,j,F){if(/\b(?:state|derived|effect)\s*(?:<[^<>()]*>)?\s*\(/.test(q)||/@(?:model|show|for|if)\s*=/.test(q)||/data-stx(?:-auto)?(?![-\w])/.test(q))return q;if(j.__stx_sfc_mode){if(/x-data\s*=\s*["']/.test(q))return q;let{template:D,bindings:V}=x(q),Z=j.__stx_event_bindings||[];return j.__stx_event_bindings=[...Z,...V],D}let J=_(q);if(J.length===0)return q;let G=q;for(let D=J.length-1;D>=0;D--){let V=J[D],Z=V.originalTag;if(!Z.includes(" id="))Z=Z.replace(/^<([a-z][a-z0-9-]*)/,`<$1 id="${V.elementId}"`);else{let K=Z.match(/id=["']([^"']+)["']/);if(K)for(let L of V.events)L.elementId=K[1]}for(let K of V.events){let L=K.attribute.replace(/[.*+?^${}()|[\]\\]/g,"\\$&"),B=new RegExp(`\\s*${L}\\s*=\\s*"[^"]*"`,"g"),Y=new RegExp(`\\s*${L}\\s*=\\s*'[^']*'`,"g");Z=Z.replace(B,""),Z=Z.replace(Y,"")}G=G.slice(0,V.startIndex)+Z+G.slice(V.endIndex)}let $=k(J),X=G.lastIndexOf("</body>");if(X!==-1)G=G.slice(0,X)+$+`
|
|
108
108
|
`+G.slice(X);else G+=$;return G}function E(q){return/@[a-z]+(?:\.[a-z]+)*\s*=\s*["'][^"']*["']/i.test(q)}
|
|
109
|
-
export{x as
|
|
109
|
+
export{x as Kv,S as Lv,E as Mv};
|