@torpor/view 0.3.4 → 0.4.1
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/CHANGELOG.md +24 -0
- package/dist/Cleanup-BGQ5zaxE.d.cts +9 -0
- package/dist/Cleanup-BGQ5zaxE.d.cts.map +1 -0
- package/dist/Cleanup-Ca8IspaG.d.ts +9 -0
- package/dist/Cleanup-Ca8IspaG.d.ts.map +1 -0
- package/dist/Component-C-2ML-6s.d.cts +11 -0
- package/dist/Component-C-2ML-6s.d.cts.map +1 -0
- package/dist/Component-ODmDVKFt.d.ts +11 -0
- package/dist/Component-ODmDVKFt.d.ts.map +1 -0
- package/dist/Region-BrsZLZUe.d.ts +201 -0
- package/dist/Region-BrsZLZUe.d.ts.map +1 -0
- package/dist/Region-Cf7OeBIQ.d.cts +201 -0
- package/dist/Region-Cf7OeBIQ.d.cts.map +1 -0
- package/dist/compile.cjs +294 -284
- package/dist/compile.cjs.map +1 -1
- package/dist/compile.d.cts +34 -30
- package/dist/compile.d.cts.map +1 -1
- package/dist/compile.d.ts +34 -30
- package/dist/compile.d.ts.map +1 -1
- package/dist/compile.js +294 -284
- package/dist/compile.js.map +1 -1
- package/dist/dev.cjs +204 -0
- package/dist/dev.cjs.map +1 -0
- package/dist/dev.d.cts +53 -0
- package/dist/dev.d.cts.map +1 -0
- package/dist/dev.d.ts +53 -0
- package/dist/dev.d.ts.map +1 -0
- package/dist/dev.js +201 -0
- package/dist/dev.js.map +1 -0
- package/dist/devContext-CM-9Rx7k.js +25 -0
- package/dist/devContext-CM-9Rx7k.js.map +1 -0
- package/dist/devContext-nomc0xCl.cjs +31 -0
- package/dist/devContext-nomc0xCl.cjs.map +1 -0
- package/dist/formatText-Ck04q8_X.cjs +59 -0
- package/dist/formatText-Ck04q8_X.cjs.map +1 -0
- package/dist/formatText-CsMp2ujg.d.cts +11 -0
- package/dist/formatText-CsMp2ujg.d.cts.map +1 -0
- package/dist/formatText-OyD8MNAM.js +41 -0
- package/dist/formatText-OyD8MNAM.js.map +1 -0
- package/dist/formatText-nmPEE0iI.d.ts +11 -0
- package/dist/formatText-nmPEE0iI.d.ts.map +1 -0
- package/dist/index.cjs +741 -349
- package/dist/index.cjs.map +1 -1
- package/dist/index.d.cts +80 -265
- package/dist/index.d.cts.map +1 -1
- package/dist/index.d.ts +80 -265
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +712 -320
- package/dist/index.js.map +1 -1
- package/dist/ssr.cjs +32 -14
- package/dist/ssr.cjs.map +1 -1
- package/dist/ssr.d.cts +30 -8
- package/dist/ssr.d.cts.map +1 -1
- package/dist/ssr.d.ts +30 -8
- package/dist/ssr.d.ts.map +1 -1
- package/dist/ssr.js +30 -12
- package/dist/ssr.js.map +1 -1
- package/package.json +13 -8
- package/src/compile/build/client/BuildStatus.ts +4 -4
- package/src/compile/build/client/addMappedText.ts +5 -5
- package/src/compile/build/client/addPopDevBoundary.ts +10 -0
- package/src/compile/build/client/addPushDevBoundary.ts +25 -0
- package/src/compile/build/client/buildAddFragment.ts +5 -5
- package/src/compile/build/client/buildAwaitNode.ts +33 -24
- package/src/compile/build/client/buildCode.ts +21 -8
- package/src/compile/build/client/buildComponentNode.ts +37 -11
- package/src/compile/build/client/buildElementNode.ts +16 -62
- package/src/compile/build/client/buildForNode.ts +65 -38
- package/src/compile/build/client/buildFragment.ts +5 -5
- package/src/compile/build/client/buildHtmlNode.ts +9 -9
- package/src/compile/build/client/buildIfNode.ts +23 -12
- package/src/compile/build/client/buildReplaceNode.ts +9 -9
- package/src/compile/build/client/buildRun.ts +8 -2
- package/src/compile/build/client/buildScriptNode.ts +1 -1
- package/src/compile/build/client/buildSwitchNode.ts +25 -17
- package/src/compile/build/client/buildTextNode.ts +1 -1
- package/src/compile/build/client/replaceForVarNames.ts +2 -2
- package/src/compile/build/client/stashRun.ts +3 -3
- package/src/compile/build/client/stashRunWithOffsets.ts +3 -3
- package/src/compile/build/server/BuildServerStatus.ts +1 -1
- package/src/compile/build/server/buildServerCode.ts +1 -1
- package/src/compile/build/server/buildServerElementNode.ts +11 -11
- package/src/compile/build.ts +1 -1
- package/src/compile/buildType.ts +1 -1
- package/src/compile/parse/ParseStatus.ts +4 -2
- package/src/compile/parse/addSpaceElement.ts +1 -1
- package/src/compile/parse/parseCode.ts +18 -33
- package/src/compile/parse/parseControl.ts +6 -6
- package/src/compile/parse/parseElement.ts +12 -15
- package/src/compile/parse/parseMarkup.ts +1 -1
- package/src/compile/parse/parseStyles.ts +1 -0
- package/src/compile/parse/parseTag.ts +2 -2
- package/src/compile/parse/parseText.ts +5 -5
- package/src/compile/parse/slottifyChildNodes.ts +1 -1
- package/src/compile/types/BuildOptions.ts +25 -0
- package/src/compile/types/ScriptChunk.ts +2 -2
- package/src/compile/types/SourceMapping.ts +3 -3
- package/src/compile/types/SourceSpan.ts +4 -0
- package/src/compile/types/nodes/Attribute.ts +2 -2
- package/src/compile/types/nodes/ControlNode.ts +2 -2
- package/src/compile/types/nodes/ElementNode.ts +2 -2
- package/src/compile/types/nodes/Fragment.ts +2 -2
- package/src/compile/types/nodes/TextNode.ts +2 -2
- package/src/debug/printRegions.ts +74 -0
- package/src/dev/devContext.ts +31 -0
- package/src/dev/popDevBoundary.ts +5 -0
- package/src/dev/pushDevBoundary.ts +25 -0
- package/src/dev/setDevMode.ts +235 -0
- package/src/dev/types/DevBoundary.ts +7 -0
- package/src/dev/types/DevContext.ts +28 -0
- package/src/dev.ts +6 -0
- package/src/index.ts +15 -16
- package/src/render/addAnimation.ts +1 -1
- package/src/render/addEvent.ts +1 -1
- package/src/render/addFragment.ts +22 -18
- package/src/render/animate.ts +52 -0
- package/src/render/applyProps.ts +1 -1
- package/src/render/clearLayoutSlot.ts +6 -4
- package/src/render/clearRegion.ts +71 -0
- package/src/render/context.ts +39 -32
- package/src/render/fillLayoutSlot.ts +10 -9
- package/src/render/hydrate.ts +9 -7
- package/src/render/mount.ts +9 -6
- package/src/render/moveRegion.ts +14 -0
- package/src/render/newListItem.ts +8 -3
- package/src/render/newRegion.ts +13 -0
- package/src/render/nodeRoot.ts +3 -3
- package/src/render/popRegion.ts +9 -0
- package/src/render/pushRegion.ts +30 -0
- package/src/render/runControl.ts +9 -12
- package/src/render/runControlBranch.ts +15 -14
- package/src/render/runList.ts +10 -14
- package/src/render/runListItems.ts +29 -17
- package/src/ssr.ts +9 -8
- package/src/types/Context.ts +9 -9
- package/src/types/ListItem.ts +2 -2
- package/src/types/Region.ts +19 -0
- package/src/watch/$batch.ts +22 -0
- package/src/watch/$cache.ts +34 -0
- package/src/watch/$mount.ts +11 -0
- package/src/watch/$peek.ts +14 -0
- package/src/watch/$run.ts +33 -0
- package/src/watch/$unwrap.ts +12 -0
- package/src/watch/$watch.ts +49 -0
- package/src/watch/propagateSignal.ts +99 -0
- package/src/watch/proxyGet.ts +9 -9
- package/src/watch/proxySet.ts +9 -5
- package/src/watch/runComputed.ts +2 -2
- package/src/watch/runEffect.ts +4 -0
- package/src/watch/trackProxySignal.ts +21 -0
- package/src/watch/trackSignal.ts +69 -0
- package/src/watch/transferEffects.ts +1 -1
- package/src/wrappers/ReactiveDate.ts +4 -4
- package/test/attributes/attributes.test.ts +22 -14
- package/test/attributes/components/output/Attributes-client.ts +3 -3
- package/test/attributes/components/output/Disappearing-client.ts +38 -0
- package/test/attributes/components/output/Disappearing-server.ts +18 -0
- package/test/attributes/components/output/Disappearing-types.ts +10 -0
- package/test/attributes/components/temp/Attributes-client-3bd2893680ee0c727dc67385478c21caa0316f82.ts +38 -0
- package/test/attributes/components/temp/Disappearing-client-3bd2893680ee0c727dc67385478c21caa0316f82.ts +38 -0
- package/test/attributes/components/temp/Disappearing-server-ff919598a34afdc67888e3fb80a79d1b27170d1c.ts +18 -0
- package/test/attributes/components/temp/Disappearing-types-5892927754ac19a8b3a8560fa1c78ce653e5f318.ts +10 -0
- package/test/attributes/disappearing.test.ts +22 -14
- package/test/await/await.test.ts +37 -10
- package/test/await/components/output/Await-client.ts +10 -9
- package/test/await/components/output/Await-server.ts +1 -1
- package/test/await/components/temp/Await-client-8ad3f252c4550020753eea3c04cde0da435c6aae.ts +112 -0
- package/test/await/components/temp/Await-server-4187f28e62fa1789ccd5e336457f74d158981055.ts +38 -0
- package/test/bench/bench.bench.ts +2 -2
- package/test/bench/components/output/Bench-client.ts +387 -177
- package/test/bench/components/output/Bench-server.ts +18 -6
- package/test/bench/components/temp/Bench-client-49f3ccc588596e2139b3c7911faf6804e77f9c7f.ts +421 -0
- package/test/bench/components/temp/Bench-server-d42ad0e83d431c6ff0f185e964792b04c4b97c06.ts +18 -6
- package/test/bind/bind-component.test.ts +55 -0
- package/test/bind/bind-text.test.ts +65 -0
- package/test/bind/components/output/BindComponent-client.ts +8 -8
- package/test/bind/components/output/BindComponent-server.ts +1 -1
- package/test/bind/components/output/BindText-client.ts +6 -6
- package/test/bind/components/output/BindText-server.ts +1 -1
- package/test/bind/components/temp/BindComponent-client-9da323149e29bbb0d7eaf5a86ed541357f1219f8.ts +82 -0
- package/test/bind/components/temp/BindComponent-server-2e2d1fe69007b6d2b084c3117a5be4a06258872e.ts +46 -0
- package/test/bind/components/temp/BindText-client-eebe53ed8c48b5bbd046621efa6d9b5d3d753f6f.ts +53 -0
- package/test/bind/components/temp/BindText-server-b8c0e4e7e82cf0bfb92f2301b0e444b0cb6b404c.ts +23 -0
- package/test/build-server/components/output/IfNested-client.ts +94 -77
- package/test/build-server/components/temp/IfNested-client-b0df2bb83863455bc0ea0be7612e3bc50765a43e.ts +116 -0
- package/test/buildOutputFiles.ts +49 -22
- package/test/child-component/child-component.test.ts +16 -9
- package/test/child-component/components/output/ChildComponent-client.ts +68 -0
- package/test/child-component/components/temp/ChildComponent-client-6033ce1f59fe1ce3f3dfb3d7845807e7f047b18d.ts +68 -0
- package/test/class/class.test.ts +57 -14
- package/test/class/components/output/Class-client.ts +7 -7
- package/test/class/components/temp/Class-client-a5e3f4dd7b0272d69b856f3ef4aa43b83bc2d849.ts +81 -0
- package/test/component/component.test.ts +16 -9
- package/test/component/components/output/Component-client.ts +33 -6
- package/test/component/components/output/Component-server.ts +17 -2
- package/test/component/components/temp/Component-client-ff200ee2a7a5f08d0473fddffa1f3ba5eb641d2a.ts +68 -0
- package/test/component/components/temp/Component-server-3fcb9457d9f0d0eefc9626801634751a83110f60.ts +42 -0
- package/test/console/components/output/Console-client.ts +1 -1
- package/test/console/components/temp/Console-client-216948ecb8660c46e6614dcfea02114ba9fd84f3.ts +32 -0
- package/test/console/console.test.ts +11 -8
- package/test/const/components/output/Const-client.ts +3 -3
- package/test/const/components/temp/Const-client-e15d20cc9c3e75577a7dee834a421883b18983de.ts +39 -0
- package/test/const/const.test.ts +13 -10
- package/test/context/components/output/Context-client.ts +106 -0
- package/test/context/components/output/Context-server.ts +69 -0
- package/test/context/components/temp/Context-client-b05948865340ce7743af46cb4400dc542e1e7260.ts +106 -0
- package/test/context/components/temp/Context-server-9c25c1e4456e2b24b5afd87ba27e55ca45308ef0.ts +69 -0
- package/test/context/context.test.ts +31 -9
- package/test/effects/components/output/ForEffect-client.ts +79 -0
- package/test/effects/components/output/IfEffect-client.ts +68 -0
- package/test/effects/components/output/NestedIfEffect-client.ts +95 -0
- package/test/effects/components/temp/ForEffect-client-b1cff64d6b44a881a4bcf4b1a3dee3fa64c9ec7b.ts +79 -0
- package/test/effects/components/temp/IfEffect-client-b2eb2a38dec9cad49b7d1103aab0d2c3324e569a.ts +68 -0
- package/test/effects/components/temp/NestedIfEffect-client-a75dd167f3469f4a5f6730445128d3eff956afe2.ts +95 -0
- package/test/effects/for-effect.test.ts +14 -11
- package/test/effects/if-effect.test.ts +16 -11
- package/test/effects/nested-if-effect.test.ts +21 -14
- package/test/events/components/output/Events-client.ts +49 -0
- package/test/events/components/output/Events-server.ts +26 -0
- package/test/events/components/temp/Events-client-af611081aa6cb1567461367daf3068df86c6ff23.ts +49 -0
- package/test/events/components/temp/Events-server-e9b3526168eb4472cc70f4afc89c69d2238defac.ts +26 -0
- package/test/events/events.test.ts +25 -10
- package/test/for/components/output/For-client.ts +25 -25
- package/test/for/components/output/ForAfterFor-client.ts +122 -0
- package/test/for/components/output/ForAfterFor-server.ts +27 -0
- package/test/for/components/output/ForAfterFor-types.ts +10 -0
- package/test/for/components/output/ForContainingFor-client.ts +117 -0
- package/test/for/components/output/ForContainingFor-server.ts +27 -0
- package/test/for/components/output/ForContainingFor-types.ts +10 -0
- package/test/for/components/output/ForContainingFunction-client.ts +89 -0
- package/test/for/components/output/ForContainingFunction-server.ts +29 -0
- package/test/for/components/output/ForContainingFunction-types.ts +10 -0
- package/test/for/components/output/ForContainingIf-client.ts +111 -0
- package/test/for/components/output/ForContainingIf-server.ts +27 -0
- package/test/for/components/output/ForContainingIf-types.ts +10 -0
- package/test/for/components/output/ForEscape-client.ts +35 -35
- package/test/for/components/output/ForIn-client.ts +25 -25
- package/test/for/components/output/ForOf-client.ts +25 -25
- package/test/for/components/temp/For-client-8fd92bf0c26cb8e97006a302104ebb2fdcd2e818.ts +81 -0
- package/test/for/components/temp/ForAfterFor-client-509955ddc13396ede05c9986a6dcc8bbebd00cf3.ts +122 -0
- package/test/for/components/temp/ForAfterFor-server-2e927aa1fb165ed46b798d930a62a9125486c2f1.ts +27 -0
- package/test/for/components/temp/ForAfterFor-types-443c279cbffc1d07b01b09349cfddc6c081be6bb.ts +10 -0
- package/test/for/components/temp/ForContainingFor-client-4f600c73a6583c84d981a82fae42332f983f0b36.ts +117 -0
- package/test/for/components/temp/ForContainingFor-server-5e9e48ef3a3a2f411e4261d8aef8d68ace4f941b.ts +27 -0
- package/test/for/components/temp/ForContainingFor-types-e29bd72e1a1b98bbd196088afb0d6296b8eb9014.ts +10 -0
- package/test/for/components/temp/ForContainingFunction-client-9bacc4a7214f2385d98b358d29443363f8b9e78d.ts +89 -0
- package/test/for/components/temp/ForContainingFunction-server-bce5cf9e382b61c9eee613c6377525c9b0446228.ts +29 -0
- package/test/for/components/temp/ForContainingFunction-types-16613a1611dfc0b949a78fadd771f6737de61703.ts +10 -0
- package/test/for/components/temp/ForContainingIf-client-92b3c13b0fbe3d7900c05dd2e833d8e51d1bc66c.ts +111 -0
- package/test/for/components/temp/ForContainingIf-server-77dc43708cb24365aa0e8e8a3e0249d699511684.ts +27 -0
- package/test/for/components/temp/ForContainingIf-types-16613a1611dfc0b949a78fadd771f6737de61703.ts +10 -0
- package/test/for/components/temp/ForEscape-client-29cdd1ae0528a32f5737295287489e9bbd42889d.ts +100 -0
- package/test/for/components/temp/ForIn-client-fffaa596adb40e4067931af81cc13fc971dd1813.ts +80 -0
- package/test/for/components/temp/ForOf-client-e6d0948fbd00bfbcbc7099f84331bc3d493abc28.ts +80 -0
- package/test/for/for-after-for.test.ts +56 -0
- package/test/for/for-containing-for.test.ts +46 -0
- package/test/for/for-containing-function.test.ts +47 -0
- package/test/for/for-containing-if.test.ts +48 -0
- package/test/for/for-escape.test.ts +20 -10
- package/test/for/for-in.test.ts +18 -11
- package/test/for/for-of.test.ts +18 -11
- package/test/for/for.test.ts +17 -10
- package/test/function/components/output/Function-client.ts +4 -4
- package/test/function/components/output/Function-server.ts +1 -1
- package/test/function/components/temp/Function-client-8ae7f26bcaee6b57251659efc2abcdfd9c0d30e1.ts +49 -0
- package/test/function/components/temp/Function-server-44ab0f134c3da5672c71e6bdabc92295af6afa85.ts +28 -0
- package/test/function/function.test.ts +19 -10
- package/test/helpers.ts +4 -4
- package/test/html/components/output/Html-client.ts +5 -5
- package/test/html/components/temp/Html-client-14bf031fae1c40ea86913ca71aee00b947d88b4d.ts +49 -0
- package/test/html/html.test.ts +17 -14
- package/test/if/components/output/ElseIfTrue-client.ts +78 -0
- package/test/if/components/output/ElseTrue-client.ts +78 -0
- package/test/if/components/output/IfAfterIf-client.ts +14 -12
- package/test/if/components/output/IfCache-client.ts +10 -9
- package/test/if/components/output/IfContainingFor-client.ts +109 -0
- package/test/if/components/output/IfContainingFor-server.ts +26 -0
- package/test/if/components/output/IfContainingFor-types.ts +10 -0
- package/test/if/components/output/IfContainingFunction-client.ts +70 -0
- package/test/if/components/output/IfContainingFunction-server.ts +27 -0
- package/test/if/components/output/IfContainingFunction-types.ts +10 -0
- package/test/if/components/output/IfContainingIf-client.ts +95 -0
- package/test/if/components/output/IfContainingIf-server.ts +28 -0
- package/test/if/components/output/IfContainingIf-types.ts +10 -0
- package/test/if/components/output/IfElseFalse-client.ts +68 -0
- package/test/if/components/output/IfElseTrue-client.ts +68 -0
- package/test/if/components/output/IfFalse-client.ts +9 -8
- package/test/if/components/output/IfNested-client.ts +14 -12
- package/test/if/components/temp/ElseIfTrue-client-e4ab334d09c6eb8190c00102160e5db88c14bef4.ts +78 -0
- package/test/if/components/temp/ElseIfTrue-server-d16c5f90da5cb991243d0ea131e7eb2a717d6515.ts +27 -0
- package/test/if/components/temp/ElseIfTrue-types-a492d2b6e8517f598befca7127cd514244239984.ts +10 -0
- package/test/if/components/temp/ElseTrue-client-e4ab334d09c6eb8190c00102160e5db88c14bef4.ts +78 -0
- package/test/if/components/temp/ElseTrue-server-d16c5f90da5cb991243d0ea131e7eb2a717d6515.ts +27 -0
- package/test/if/components/temp/ElseTrue-types-a492d2b6e8517f598befca7127cd514244239984.ts +10 -0
- package/test/if/components/temp/IfAfterIf-client-b12abbd827f186b231ce7669ce676f612c66220d.ts +89 -0
- package/test/if/components/temp/IfCache-client-d9e7265dbce9b89bf67f4d0eb33967c89a4bec3f.ts +73 -0
- package/test/if/components/temp/IfContainingFor-client-a1246616d908018a77caa27aca6f9fa63e325960.ts +109 -0
- package/test/if/components/temp/IfContainingFor-server-a54062a628b406040428c6a4b9b06067e02fe478.ts +26 -0
- package/test/if/components/temp/IfContainingFor-types-f93572daa0ecf537aabeba1277394d193fe39e9a.ts +10 -0
- package/test/if/components/temp/IfContainingFunction-client-1d8f1ce12f4098b425be18149d9c58ea9c4e8de6.ts +70 -0
- package/test/if/components/temp/IfContainingFunction-server-4666fe29a65d47a998a9357ca34453cf3210f239.ts +27 -0
- package/test/if/components/temp/IfContainingFunction-types-f93572daa0ecf537aabeba1277394d193fe39e9a.ts +10 -0
- package/test/if/components/temp/IfContainingIf-client-c92cd49733d7b28ccbc37ec62936a195020a7a10.ts +95 -0
- package/test/if/components/temp/IfContainingIf-server-ad5fe7a67235cce0e92432a72ceb278d168c9d7f.ts +28 -0
- package/test/if/components/temp/IfContainingIf-types-f93572daa0ecf537aabeba1277394d193fe39e9a.ts +10 -0
- package/test/if/components/temp/IfElseFalse-client-63cb84ef58ec24276372af50e9f213391d4c9d1c.ts +68 -0
- package/test/if/components/temp/IfElseFalse-server-fcb8e3008932399fb4cca53ef09bdd201030d3cb.ts +24 -0
- package/test/if/components/temp/IfElseFalse-types-e81080227f8f69ac1d81141d97a07e0a0e9391c1.ts +10 -0
- package/test/if/components/temp/IfElseTrue-client-63cb84ef58ec24276372af50e9f213391d4c9d1c.ts +68 -0
- package/test/if/components/temp/IfElseTrue-server-fcb8e3008932399fb4cca53ef09bdd201030d3cb.ts +24 -0
- package/test/if/components/temp/IfElseTrue-types-e81080227f8f69ac1d81141d97a07e0a0e9391c1.ts +10 -0
- package/test/if/components/temp/IfFalse-client-b8f2b5b8fe046cfbb48be281edf8a0e11f35db18.ts +62 -0
- package/test/if/components/temp/IfNested-client-c6e1a6f5db2525cfab93214e65ed624e76dfc504.ts +101 -0
- package/test/if/else-if-true.test.ts +27 -14
- package/test/if/else-true.test.ts +27 -14
- package/test/if/if-after-if.test.ts +24 -14
- package/test/if/if-cache.test.ts +23 -14
- package/test/if/if-containing-for.test.ts +65 -0
- package/test/if/if-containing-function.test.ts +57 -0
- package/test/if/if-containing-if.test.ts +67 -0
- package/test/if/if-else-false.test.ts +26 -14
- package/test/if/if-else-true.test.ts +26 -14
- package/test/if/if-false.test.ts +19 -14
- package/test/if/if-nested.test.ts +29 -14
- package/test/importComponent.ts +19 -8
- package/test/importComponentFromFile.ts +19 -0
- package/test/mount/components/output/Mount-client.ts +2 -2
- package/test/mount/components/output/Mount-server.ts +1 -1
- package/test/mount/components/temp/Mount-client-3465b845172e105e5114e495b85925e383711c11.ts +39 -0
- package/test/mount/components/temp/Mount-server-55416a0e5c937354b3777edfe04c3eeb149f843c.ts +25 -0
- package/test/mount/mount.test.ts +16 -9
- package/test/on-mount/components/output/OnMount-client.ts +2 -2
- package/test/on-mount/components/temp/OnMount-client-eae1a7ae40d1b402761ef6452e1da94f3da52209.ts +35 -0
- package/test/on-mount/on-mount.test.ts +11 -10
- package/test/party/1-declare-state.test.ts +14 -9
- package/test/party/10-on-mount.test.ts +18 -9
- package/test/party/12-props.test.ts +29 -9
- package/test/party/13-emit-to-parent.test.ts +31 -9
- package/test/party/14-slot.test.ts +33 -9
- package/test/party/15-slot-fallback.test.ts +33 -9
- package/test/party/16-context.test.ts +33 -9
- package/test/party/17-input-text.test.ts +15 -9
- package/test/party/18-input-checkbox.test.ts +17 -9
- package/test/party/19-input-radio.test.ts +20 -9
- package/test/party/2-update-state.test.ts +15 -9
- package/test/party/20-input-select.test.ts +29 -9
- package/test/party/3-computed-state.test.ts +17 -9
- package/test/party/4-minimal-template.test.ts +11 -10
- package/test/party/5-styling.test.ts +17 -9
- package/test/party/6-loop.test.ts +17 -9
- package/test/party/7-event-click.test.ts +19 -9
- package/test/party/8-dom-ref.test.ts +17 -9
- package/test/party/9-conditional.test.ts +33 -9
- package/test/party/components/output/ComputedState-client.ts +45 -0
- package/test/party/components/output/ComputedState-server.ts +27 -0
- package/test/party/components/output/Conditional-client.ts +105 -0
- package/test/party/components/output/Conditional-server.ts +42 -0
- package/test/party/components/output/Context-client.ts +88 -0
- package/test/party/components/output/Context-server.ts +53 -0
- package/test/party/components/output/DeclareState-client.ts +42 -0
- package/test/party/components/output/DeclareState-server.ts +24 -0
- package/test/party/components/output/DomRef-client.ts +40 -0
- package/test/party/components/output/DomRef-server.ts +26 -0
- package/test/party/components/output/EmitToParent-client.ts +89 -0
- package/test/party/components/output/EmitToParent-server.ts +56 -0
- package/test/party/components/output/EventClick-client.ts +49 -0
- package/test/party/components/output/EventClick-server.ts +28 -0
- package/test/party/components/output/InputCheckbox-client.ts +48 -0
- package/test/party/components/output/InputCheckbox-server.ts +24 -0
- package/test/party/components/output/InputRadio-client.ts +57 -0
- package/test/party/components/output/InputRadio-server.ts +25 -0
- package/test/party/components/output/InputSelect-client.ts +106 -0
- package/test/party/components/output/InputSelect-server.ts +36 -0
- package/test/party/components/output/InputText-client.ts +48 -0
- package/test/party/components/output/InputText-server.ts +25 -0
- package/test/party/components/output/Loop-client.ts +83 -0
- package/test/party/components/output/MinimalTemplate-client.ts +30 -0
- package/test/party/components/output/OnMount-client.ts +46 -0
- package/test/party/components/output/OnMount-server.ts +29 -0
- package/test/party/components/output/Props-client.ts +83 -0
- package/test/party/components/output/Props-server.ts +50 -0
- package/test/party/components/output/Slot-client.ts +89 -0
- package/test/party/components/output/Slot-server.ts +70 -0
- package/test/party/components/output/SlotFallback-client.ts +89 -0
- package/test/party/components/output/SlotFallback-server.ts +70 -0
- package/test/party/components/output/Styling-client.ts +30 -0
- package/test/party/components/output/UpdateState-client.ts +43 -0
- package/test/party/components/output/UpdateState-server.ts +25 -0
- package/test/party/components/temp/ComputedState-client-eef842f02b6aa7abda42221f86c5b973dd9de829.ts +45 -0
- package/test/party/components/temp/ComputedState-server-d8f17812ea8bb9218940e4abcfe49824ab16e8f7.ts +27 -0
- package/test/party/components/temp/Conditional-client-ed1ba6a97d722503560ffbb3dece1d9af5fbadd2.ts +105 -0
- package/test/party/components/temp/Conditional-server-d19a62e18b1e5340c2133d32c4c20d7b03acb275.ts +42 -0
- package/test/party/components/temp/Context-client-fd121c4a2766ee5b41caf79f485f5f11142e43e0.ts +88 -0
- package/test/party/components/temp/Context-server-e4140b5eff2774645270cd83276137f3deb9bf1b.ts +53 -0
- package/test/party/components/temp/DeclareState-client-ac001e93d902207dd1bfc6315be47947a4872212.ts +42 -0
- package/test/party/components/temp/DeclareState-server-6cd408635cfdd584fe908babcca131e1da65cf27.ts +24 -0
- package/test/party/components/temp/DomRef-client-6849a0bf523f0193b369591d543a2b52103e35b0.ts +40 -0
- package/test/party/components/temp/DomRef-server-a1c79cff631364be4aabe8892c08022135ee4fea.ts +26 -0
- package/test/party/components/temp/EmitToParent-client-02c78412e4cacc27cbc857d68d5a064474ccc882.ts +89 -0
- package/test/party/components/temp/EmitToParent-server-f5a5dac8cf1c9e443dd76797435942bf8ec687be.ts +56 -0
- package/test/party/components/temp/EventClick-client-4344b8012e6f6310b25c6b43d9f5991dc93037e8.ts +49 -0
- package/test/party/components/temp/EventClick-server-6caf88d4154969d1d5b502425ce67c07d2e4a79a.ts +28 -0
- package/test/party/components/temp/InputCheckbox-client-1caf209b10b5eaa74bf6eb9b7068b425e294e940.ts +48 -0
- package/test/party/components/temp/InputCheckbox-server-1d56579ca4fcd39e228c9f19fa4602774fcffbc4.ts +24 -0
- package/test/party/components/temp/InputRadio-client-a3d5bfe78006351fb9d1653ac8f24c193e4cf173.ts +57 -0
- package/test/party/components/temp/InputRadio-server-10fda5f41d12f9c23e38d6ea3f9d5c6da64e2d44.ts +25 -0
- package/test/party/components/temp/InputSelect-client-49f9978ab5f32d13ada9d1c3d7522cbafa4c3cc7.ts +106 -0
- package/test/party/components/temp/InputSelect-server-090193bc5786a342e83e566cd6c423478955368a.ts +36 -0
- package/test/party/components/temp/InputText-client-8ae588dfd76e4fd83614100be45513ab77a7357b.ts +48 -0
- package/test/party/components/temp/InputText-server-3a93651aa9f344c68ee65d638fc34f3361690ea9.ts +25 -0
- package/test/party/components/temp/Loop-client-d8be7f7caf99d17b048d915d2dbe1db97c44aecf.ts +83 -0
- package/test/party/components/temp/MinimalTemplate-client-727021df06e846bc9d184dfd7cfa2a3fd92556b1.ts +30 -0
- package/test/party/components/temp/OnMount-client-4725eee82d65a2a9e098a0aa0b04c0eb15617ca6.ts +46 -0
- package/test/party/components/temp/OnMount-server-cb12c3a94e5a15306e2c78aad4aa2ee1f9be3f05.ts +29 -0
- package/test/party/components/temp/Props-client-c126fe2030c202b8371f72d8395d0a210a0d67c2.ts +83 -0
- package/test/party/components/temp/Props-server-945071c89c88628544956a35d7f0cadc47caa955.ts +50 -0
- package/test/party/components/temp/Slot-client-573e4ca6d35aea12306749eb7377f20ac90292dc.ts +89 -0
- package/test/party/components/temp/Slot-server-aaffce53c1d9bac7d24eba6f2400fced2b7a9f7c.ts +70 -0
- package/test/party/components/temp/Slot-types-ea73d641565a4478759166f462206dd97c92cedd.ts +10 -0
- package/test/party/components/temp/SlotFallback-client-573e4ca6d35aea12306749eb7377f20ac90292dc.ts +89 -0
- package/test/party/components/temp/SlotFallback-server-aaffce53c1d9bac7d24eba6f2400fced2b7a9f7c.ts +70 -0
- package/test/party/components/temp/SlotFallback-types-ea73d641565a4478759166f462206dd97c92cedd.ts +10 -0
- package/test/party/components/temp/Styling-client-262de42541af3154966ba60eef7b04572ebbb2a7.ts +30 -0
- package/test/party/components/temp/UpdateState-client-394ff9d0df2e1b8ab85e7f851f4784787f129ed0.ts +43 -0
- package/test/party/components/temp/UpdateState-server-d1f8f1f61ece4bad87d20019006625ca03021226.ts +25 -0
- package/test/preact.test.ts +5 -5
- package/test/props/components/output/Reactive-client.ts +6 -6
- package/test/props/components/output/Reactive-server.ts +1 -1
- package/test/props/components/temp/Reactive-client-626575b72eeb6e7eafe7352f0acda1502b0c3d37.ts +75 -0
- package/test/props/components/temp/Reactive-server-738cf1237188d69c8cfa76ff3a8f3344f3512c78.ts +44 -0
- package/test/props/reactive.test.ts +21 -9
- package/test/replace/components/output/Replace-client.ts +7 -7
- package/test/replace/components/temp/Replace-client-81652c7f64437d91a034e7fe1de7cec08ccacd53.ts +57 -0
- package/test/replace/replace.test.ts +18 -13
- package/test/run/watch-array.test.ts +2 -2
- package/test/run/watch-defined-property.test.ts +2 -2
- package/test/run/watch-effect.test.ts +2 -2
- package/test/run/watch-function.test.ts +2 -2
- package/test/run/watch-getter.test.ts +2 -2
- package/test/run/watch-set-same-value.test.ts +2 -2
- package/test/slots/basic-slot.test.ts +22 -9
- package/test/slots/components/output/BasicSlot-client.ts +83 -0
- package/test/slots/components/output/BasicSlot-server.ts +55 -0
- package/test/slots/components/output/LetSlot-client.ts +133 -0
- package/test/slots/components/output/LetSlot-server.ts +60 -0
- package/test/slots/components/output/NamedSlot-client.ts +101 -0
- package/test/slots/components/output/NamedSlot-server.ts +70 -0
- package/test/slots/components/output/UnusedSlot-client.ts +70 -0
- package/test/slots/components/output/UnusedSlot-server.ts +45 -0
- package/test/slots/components/temp/BasicSlot-client-8a51c7a21638cc96da2b2766e46310d099687f8e.ts +83 -0
- package/test/slots/components/temp/BasicSlot-server-8d3adcd44f4a021022fcc289ce0529946f2d9bab.ts +55 -0
- package/test/slots/components/temp/LetSlot-client-2cd77fd4f84810a55926f0265a9b780516982d5b.ts +133 -0
- package/test/slots/components/temp/LetSlot-server-1c56e0f0ccc3c2bad37f89ed13bcdec58ac58ea7.ts +60 -0
- package/test/slots/components/temp/NamedSlot-client-f0b62a74a30ecb0d0fe715d56eb772a38fe13e87.ts +101 -0
- package/test/slots/components/temp/NamedSlot-server-48c68d96b467ea74ca8f2c87ef27292eaa0b4fbb.ts +70 -0
- package/test/slots/components/temp/UnusedSlot-client-b8794d03a1566ab0a7ec888b907dd94e685fcf52.ts +70 -0
- package/test/slots/components/temp/UnusedSlot-server-bc71b5741d284ecd3036cc177ff00f62002d20fa.ts +45 -0
- package/test/slots/let-slot.test.ts +27 -10
- package/test/slots/named-slot.test.ts +29 -9
- package/test/slots/unused-slot.test.ts +20 -9
- package/test/special-component/components/output/SpecialComponent-client.ts +128 -0
- package/test/special-component/components/output/SpecialComponent-server.ts +82 -0
- package/test/special-component/components/temp/SpecialComponent-client-1955ef6a59b67e29ea076ed28758625922ff7d7b.ts +128 -0
- package/test/special-component/components/temp/SpecialComponent-server-dfed8066f3d6cfc5bc0f13c7a575aa0d20a2fb31.ts +82 -0
- package/test/special-component/special-component.test.ts +37 -13
- package/test/special-element/components/output/SpecialElement-client.ts +39 -0
- package/test/special-element/components/temp/SpecialElement-client-56b2d385272626ac7c75ff7b2b6876ff2280d5db.ts +39 -0
- package/test/special-element/special-element.test.ts +17 -14
- package/test/special-head/components/output/SpecialHead-client.ts +25 -0
- package/test/special-head/components/temp/SpecialHead-client-1aeeecccf0bc9ef671d422cbac5b6e460ae3c18b.ts +25 -0
- package/test/special-head/special-head.test.ts +15 -14
- package/test/special-self/components/output/SpecialSelf-client.ts +77 -0
- package/test/special-self/components/temp/SpecialSelf-client-126d3318d9aee9b2e6309c0ae5b91b2e56e9e647.ts +77 -0
- package/test/special-self/special-self.test.ts +18 -14
- package/test/style/components/output/Style-client.ts +3 -3
- package/test/style/components/temp/Style-client-9fac281c13b602dd3c56709a922987a0a922f289.ts +35 -0
- package/test/style/style.test.ts +17 -14
- package/test/svg/components/output/Svg-client.ts +74 -0
- package/test/svg/components/temp/Svg-client-ce4c8c2bb0954f69797b74f29f97f0caa1f1efca.ts +74 -0
- package/test/svg/svg.test.ts +21 -14
- package/test/switch/components/output/Switch-client.ts +9 -8
- package/test/switch/components/temp/Switch-client-5e9c1cd0d99c95a53136b8647289c95d4475ed19.ts +91 -0
- package/test/switch/switch.test.ts +81 -0
- package/test/text/components/output/Text-client.ts +3 -6
- package/test/text/components/output/Text-server.ts +0 -3
- package/test/text/components/output/Text-types.ts +0 -3
- package/test/text/components/temp/Text-client-e8ac547ff02dd3514e6daaa3f194e955edfe7eb9.ts +41 -0
- package/test/text/components/temp/Text-server-2010bf7bc69e04835349a96f405394d2dc905f74.ts +21 -0
- package/test/text/components/temp/Text-types-8734fa84ea5e6d078b66a771ec48b821c954573f.ts +13 -0
- package/test/text/text.test.ts +21 -13
- package/test/watch/watch-nested-object.test.ts +1 -1
- package/test/watch/watch-null-object.test.ts +1 -1
- package/test/watch/watch-null-property.test.ts +1 -1
- package/test/watch/watch-simple-object.test.ts +1 -1
- package/test/watch/watch-undefined-object.test.ts +1 -1
- package/test/watch/watch-undefined-property.test.ts +1 -1
- package/test/watch-array/array-all-functions-unkeyed.test.ts +20 -11
- package/test/watch-array/array-all-functions.test.ts +21 -11
- package/test/watch-array/array-empty.test.ts +21 -12
- package/test/watch-array/array-entries.test.ts +22 -11
- package/test/watch-array/array-indexes.test.ts +22 -11
- package/test/watch-array/array-pop.test.ts +21 -12
- package/test/watch-array/array-push.test.ts +21 -12
- package/test/watch-array/array-reassign.test.ts +21 -12
- package/test/watch-array/array-reverse.test.ts +21 -12
- package/test/watch-array/array-set-object.test.ts +21 -12
- package/test/watch-array/array-set-property.test.ts +21 -12
- package/test/watch-array/array-shift.test.ts +21 -12
- package/test/watch-array/array-sort.test.ts +21 -12
- package/test/watch-array/array-splice-add.test.ts +21 -12
- package/test/watch-array/array-splice-delete-all.test.ts +21 -12
- package/test/watch-array/array-splice-delete-and-add.test.ts +21 -12
- package/test/watch-array/array-splice-delete-end.test.ts +21 -12
- package/test/watch-array/array-splice-delete.test.ts +21 -12
- package/test/watch-array/array-swap.test.ts +21 -12
- package/test/watch-array/array-unshift.test.ts +21 -12
- package/test/watch-array/array-update-assignment.test.ts +21 -12
- package/test/watch-array/components/output/ArrayAllFunctions-client.ts +80 -0
- package/test/watch-array/components/output/ArrayAllFunctionsUnkeyed-client.ts +80 -0
- package/test/watch-array/components/output/ArrayEmpty-client.ts +80 -0
- package/test/watch-array/components/output/ArrayEntries-client.ts +25 -25
- package/test/watch-array/components/output/ArrayIndexes-client.ts +25 -25
- package/test/watch-array/components/output/ArrayPop-client.ts +80 -0
- package/test/watch-array/components/output/ArrayPop-server.ts +22 -0
- package/test/watch-array/components/output/ArrayPop-types.ts +10 -0
- package/test/watch-array/components/output/ArrayPush-client.ts +80 -0
- package/test/watch-array/components/output/ArrayPush-server.ts +22 -0
- package/test/watch-array/components/output/ArrayPush-types.ts +10 -0
- package/test/watch-array/components/output/ArrayReassign-client.ts +80 -0
- package/test/watch-array/components/output/ArrayReassign-server.ts +22 -0
- package/test/watch-array/components/output/ArrayReassign-types.ts +10 -0
- package/test/watch-array/components/output/ArrayReverse-client.ts +80 -0
- package/test/watch-array/components/output/ArrayReverse-server.ts +22 -0
- package/test/watch-array/components/output/ArrayReverse-types.ts +10 -0
- package/test/watch-array/components/output/ArraySetObject-client.ts +80 -0
- package/test/watch-array/components/output/ArraySetObject-server.ts +22 -0
- package/test/watch-array/components/output/ArraySetObject-types.ts +10 -0
- package/test/watch-array/components/output/ArraySetProperty-client.ts +80 -0
- package/test/watch-array/components/output/ArraySetProperty-server.ts +22 -0
- package/test/watch-array/components/output/ArraySetProperty-types.ts +10 -0
- package/test/watch-array/components/output/ArrayShift-client.ts +80 -0
- package/test/watch-array/components/output/ArrayShift-server.ts +22 -0
- package/test/watch-array/components/output/ArrayShift-types.ts +10 -0
- package/test/watch-array/components/output/ArraySort-client.ts +80 -0
- package/test/watch-array/components/output/ArraySort-server.ts +22 -0
- package/test/watch-array/components/output/ArraySort-types.ts +10 -0
- package/test/watch-array/components/output/ArraySpliceAdd-client.ts +80 -0
- package/test/watch-array/components/output/ArraySpliceAdd-server.ts +22 -0
- package/test/watch-array/components/output/ArraySpliceAdd-types.ts +10 -0
- package/test/watch-array/components/output/ArraySpliceDelete-client.ts +80 -0
- package/test/watch-array/components/output/ArraySpliceDelete-server.ts +22 -0
- package/test/watch-array/components/output/ArraySpliceDelete-types.ts +10 -0
- package/test/watch-array/components/output/ArraySpliceDeleteAll-client.ts +80 -0
- package/test/watch-array/components/output/ArraySpliceDeleteAll-server.ts +22 -0
- package/test/watch-array/components/output/ArraySpliceDeleteAll-types.ts +10 -0
- package/test/watch-array/components/output/ArraySpliceDeleteAndAdd-client.ts +80 -0
- package/test/watch-array/components/output/ArraySpliceDeleteAndAdd-server.ts +22 -0
- package/test/watch-array/components/output/ArraySpliceDeleteAndAdd-types.ts +10 -0
- package/test/watch-array/components/output/ArraySpliceDeleteEnd-client.ts +80 -0
- package/test/watch-array/components/output/ArraySpliceDeleteEnd-server.ts +22 -0
- package/test/watch-array/components/output/ArraySpliceDeleteEnd-types.ts +10 -0
- package/test/watch-array/components/output/ArraySwap-client.ts +80 -0
- package/test/watch-array/components/output/ArraySwap-server.ts +22 -0
- package/test/watch-array/components/output/ArraySwap-types.ts +10 -0
- package/test/watch-array/components/output/ArrayUnshift-client.ts +80 -0
- package/test/watch-array/components/output/ArrayUnshift-server.ts +22 -0
- package/test/watch-array/components/output/ArrayUnshift-types.ts +10 -0
- package/test/watch-array/components/output/ArrayUpdateAssignment-client.ts +80 -0
- package/test/watch-array/components/output/ArrayUpdateAssignment-server.ts +22 -0
- package/test/watch-array/components/output/ArrayUpdateAssignment-types.ts +10 -0
- package/test/watch-array/components/temp/ArrayAllFunctions-client-bf2caf578a29ef32ca77f51ec2402c6034c219db.ts +80 -0
- package/test/watch-array/components/temp/ArrayAllFunctions-server-f463a29dee7f143455591e89d001dd42dab9db7b.ts +22 -0
- package/test/watch-array/components/temp/ArrayAllFunctions-types-4afcc38999fa0a5d5b28b8c54ea8f25659d91165.ts +10 -0
- package/test/watch-array/components/temp/ArrayAllFunctionsUnkeyed-client-9d10d33225715295edde4c036977dfbc57e3fda9.ts +80 -0
- package/test/watch-array/components/temp/ArrayEmpty-client-bf2caf578a29ef32ca77f51ec2402c6034c219db.ts +80 -0
- package/test/watch-array/components/temp/ArrayEmpty-server-f463a29dee7f143455591e89d001dd42dab9db7b.ts +22 -0
- package/test/watch-array/components/temp/ArrayEmpty-types-4afcc38999fa0a5d5b28b8c54ea8f25659d91165.ts +10 -0
- package/test/watch-array/components/temp/ArrayEntries-client-ef539f1f3238595af775cdcdf0fe43608e9e9162.ts +82 -0
- package/test/watch-array/components/temp/ArrayIndexes-client-e57339b7f87549f78154ccbaaf1a9b35d5844a5e.ts +80 -0
- package/test/watch-array/components/temp/ArrayPop-client-bf2caf578a29ef32ca77f51ec2402c6034c219db.ts +80 -0
- package/test/watch-array/components/temp/ArrayPop-server-f463a29dee7f143455591e89d001dd42dab9db7b.ts +22 -0
- package/test/watch-array/components/temp/ArrayPop-types-4afcc38999fa0a5d5b28b8c54ea8f25659d91165.ts +10 -0
- package/test/watch-array/components/temp/ArrayPush-client-bf2caf578a29ef32ca77f51ec2402c6034c219db.ts +80 -0
- package/test/watch-array/components/temp/ArrayPush-server-f463a29dee7f143455591e89d001dd42dab9db7b.ts +22 -0
- package/test/watch-array/components/temp/ArrayPush-types-4afcc38999fa0a5d5b28b8c54ea8f25659d91165.ts +10 -0
- package/test/watch-array/components/temp/ArrayReassign-client-bf2caf578a29ef32ca77f51ec2402c6034c219db.ts +80 -0
- package/test/watch-array/components/temp/ArrayReassign-server-f463a29dee7f143455591e89d001dd42dab9db7b.ts +22 -0
- package/test/watch-array/components/temp/ArrayReassign-types-4afcc38999fa0a5d5b28b8c54ea8f25659d91165.ts +10 -0
- package/test/watch-array/components/temp/ArrayReverse-client-bf2caf578a29ef32ca77f51ec2402c6034c219db.ts +80 -0
- package/test/watch-array/components/temp/ArrayReverse-server-f463a29dee7f143455591e89d001dd42dab9db7b.ts +22 -0
- package/test/watch-array/components/temp/ArrayReverse-types-4afcc38999fa0a5d5b28b8c54ea8f25659d91165.ts +10 -0
- package/test/watch-array/components/temp/ArraySetObject-client-bf2caf578a29ef32ca77f51ec2402c6034c219db.ts +80 -0
- package/test/watch-array/components/temp/ArraySetObject-server-f463a29dee7f143455591e89d001dd42dab9db7b.ts +22 -0
- package/test/watch-array/components/temp/ArraySetObject-types-4afcc38999fa0a5d5b28b8c54ea8f25659d91165.ts +10 -0
- package/test/watch-array/components/temp/ArraySetProperty-client-bf2caf578a29ef32ca77f51ec2402c6034c219db.ts +80 -0
- package/test/watch-array/components/temp/ArraySetProperty-server-f463a29dee7f143455591e89d001dd42dab9db7b.ts +22 -0
- package/test/watch-array/components/temp/ArraySetProperty-types-4afcc38999fa0a5d5b28b8c54ea8f25659d91165.ts +10 -0
- package/test/watch-array/components/temp/ArrayShift-client-bf2caf578a29ef32ca77f51ec2402c6034c219db.ts +80 -0
- package/test/watch-array/components/temp/ArrayShift-server-f463a29dee7f143455591e89d001dd42dab9db7b.ts +22 -0
- package/test/watch-array/components/temp/ArrayShift-types-4afcc38999fa0a5d5b28b8c54ea8f25659d91165.ts +10 -0
- package/test/watch-array/components/temp/ArraySort-client-bf2caf578a29ef32ca77f51ec2402c6034c219db.ts +80 -0
- package/test/watch-array/components/temp/ArraySort-server-f463a29dee7f143455591e89d001dd42dab9db7b.ts +22 -0
- package/test/watch-array/components/temp/ArraySort-types-4afcc38999fa0a5d5b28b8c54ea8f25659d91165.ts +10 -0
- package/test/watch-array/components/temp/ArraySpliceAdd-client-bf2caf578a29ef32ca77f51ec2402c6034c219db.ts +80 -0
- package/test/watch-array/components/temp/ArraySpliceAdd-server-f463a29dee7f143455591e89d001dd42dab9db7b.ts +22 -0
- package/test/watch-array/components/temp/ArraySpliceAdd-types-4afcc38999fa0a5d5b28b8c54ea8f25659d91165.ts +10 -0
- package/test/watch-array/components/temp/ArraySpliceDelete-client-bf2caf578a29ef32ca77f51ec2402c6034c219db.ts +80 -0
- package/test/watch-array/components/temp/ArraySpliceDelete-server-f463a29dee7f143455591e89d001dd42dab9db7b.ts +22 -0
- package/test/watch-array/components/temp/ArraySpliceDelete-types-4afcc38999fa0a5d5b28b8c54ea8f25659d91165.ts +10 -0
- package/test/watch-array/components/temp/ArraySpliceDeleteAll-client-bf2caf578a29ef32ca77f51ec2402c6034c219db.ts +80 -0
- package/test/watch-array/components/temp/ArraySpliceDeleteAll-server-f463a29dee7f143455591e89d001dd42dab9db7b.ts +22 -0
- package/test/watch-array/components/temp/ArraySpliceDeleteAll-types-4afcc38999fa0a5d5b28b8c54ea8f25659d91165.ts +10 -0
- package/test/watch-array/components/temp/ArraySpliceDeleteAndAdd-client-bf2caf578a29ef32ca77f51ec2402c6034c219db.ts +80 -0
- package/test/watch-array/components/temp/ArraySpliceDeleteAndAdd-server-f463a29dee7f143455591e89d001dd42dab9db7b.ts +22 -0
- package/test/watch-array/components/temp/ArraySpliceDeleteAndAdd-types-4afcc38999fa0a5d5b28b8c54ea8f25659d91165.ts +10 -0
- package/test/watch-array/components/temp/ArraySpliceDeleteEnd-client-bf2caf578a29ef32ca77f51ec2402c6034c219db.ts +80 -0
- package/test/watch-array/components/temp/ArraySpliceDeleteEnd-server-f463a29dee7f143455591e89d001dd42dab9db7b.ts +22 -0
- package/test/watch-array/components/temp/ArraySpliceDeleteEnd-types-4afcc38999fa0a5d5b28b8c54ea8f25659d91165.ts +10 -0
- package/test/watch-array/components/temp/ArraySwap-client-bf2caf578a29ef32ca77f51ec2402c6034c219db.ts +80 -0
- package/test/watch-array/components/temp/ArraySwap-server-f463a29dee7f143455591e89d001dd42dab9db7b.ts +22 -0
- package/test/watch-array/components/temp/ArraySwap-types-4afcc38999fa0a5d5b28b8c54ea8f25659d91165.ts +10 -0
- package/test/watch-array/components/temp/ArrayUnshift-client-bf2caf578a29ef32ca77f51ec2402c6034c219db.ts +80 -0
- package/test/watch-array/components/temp/ArrayUnshift-server-f463a29dee7f143455591e89d001dd42dab9db7b.ts +22 -0
- package/test/watch-array/components/temp/ArrayUnshift-types-4afcc38999fa0a5d5b28b8c54ea8f25659d91165.ts +10 -0
- package/test/watch-array/components/temp/ArrayUpdateAssignment-client-bf2caf578a29ef32ca77f51ec2402c6034c219db.ts +80 -0
- package/test/watch-array/components/temp/ArrayUpdateAssignment-server-f463a29dee7f143455591e89d001dd42dab9db7b.ts +22 -0
- package/test/watch-array/components/temp/ArrayUpdateAssignment-types-4afcc38999fa0a5d5b28b8c54ea8f25659d91165.ts +10 -0
- package/test/watch-object/components/output/WatchObject-client.ts +36 -0
- package/test/watch-object/components/temp/WatchObject-client-fa0eda21911b5d8674baa290bfdbd8329cbc7f08.ts +36 -0
- package/test/watch-object/watch-object.test.ts +19 -14
- package/tsdown.config.ts +1 -1
- package/dist/Component-C6Y3UwGs.d.cts +0 -11
- package/dist/Component-C6Y3UwGs.d.cts.map +0 -1
- package/dist/Component-d19HOoEw.d.ts +0 -11
- package/dist/Component-d19HOoEw.d.ts.map +0 -1
- package/dist/ServerSlotRender-BiG4xB8e.d.ts +0 -41
- package/dist/ServerSlotRender-BiG4xB8e.d.ts.map +0 -1
- package/dist/ServerSlotRender-COS6H8Yk.d.cts +0 -41
- package/dist/ServerSlotRender-COS6H8Yk.d.cts.map +0 -1
- package/dist/formatText-B0FXBdFT.js +0 -410
- package/dist/formatText-B0FXBdFT.js.map +0 -1
- package/dist/formatText-DufG5l83.cjs +0 -500
- package/dist/formatText-DufG5l83.cjs.map +0 -1
- package/src/compile/parse/ParseComponentStatus.ts +0 -29
- package/src/compile/types/SourceRange.ts +0 -4
- package/src/debug/printRanges.ts +0 -74
- package/src/motion/animate.ts +0 -54
- package/src/render/$batch.ts +0 -22
- package/src/render/$cache.ts +0 -34
- package/src/render/$mount.ts +0 -11
- package/src/render/$peek.ts +0 -14
- package/src/render/$run.ts +0 -30
- package/src/render/$unwrap.ts +0 -12
- package/src/render/$watch.ts +0 -43
- package/src/render/clearRange.ts +0 -63
- package/src/render/moveRange.ts +0 -14
- package/src/render/newRange.ts +0 -13
- package/src/render/popRange.ts +0 -6
- package/src/render/pushRange.ts +0 -26
- package/src/types/BuildOptions.ts +0 -21
- package/src/types/Range.ts +0 -19
- package/src/watch/trackEffect.ts +0 -71
- package/src/watch/trackProxyEffect.ts +0 -21
- package/src/watch/updateSignal.ts +0 -102
- package/test/attributes/components/Attributes.torp +0 -12
- package/test/attributes/components/temp/Attributes-client-9ed61e9998dac100aac3eb329c0fe7fff28a913d.ts +0 -38
- package/test/await/components/Await.torp +0 -31
- package/test/await/components/temp/Await-client-0d7c687e5e358a56842de5231393c368e3ceec73.ts +0 -111
- package/test/await/components/temp/Await-server-d9b0bd351ee7809f68bd86c8eb82e7f48b4711d5.ts +0 -38
- package/test/bench/components/temp/Bench-client-ccbc27f7bcd97e547fa09bc27f87b483e5fb5162.ts +0 -211
- package/test/bind/bind.test.ts +0 -55
- package/test/bind/component.test.ts +0 -45
- package/test/bind/components/BindComponent.torp +0 -14
- package/test/bind/components/BindText.torp +0 -14
- package/test/bind/components/temp/BindComponent-client-dec2fa31d2f61180b49259084b2cc73608d9dfeb.ts +0 -82
- package/test/bind/components/temp/BindComponent-server-d84c043390f513a6018b4463c9da8fff17197785.ts +0 -46
- package/test/bind/components/temp/BindText-client-4a899bd8a77d46dfa44ea88815cc590990cd1d45.ts +0 -53
- package/test/bind/components/temp/BindText-server-284367fdc908af89815cfb593d4bfc01db30f27a.ts +0 -23
- package/test/build-server/components/temp/IfNested-client-310998120f8c965d3ab916699173e4b44faebe8c.ts +0 -99
- package/test/child-component/components/ParentChild.torp +0 -11
- package/test/child-component/components/output/ParentChild-client.ts +0 -69
- package/test/child-component/components/temp/ParentChild-client-4f54913f71d760332bbc54c09827240bb020b1fa.ts +0 -69
- package/test/class/components/Class.torp +0 -47
- package/test/class/components/temp/Class-client-9e8da6a69f8795af9b180d1db1bd9f16820886ba.ts +0 -81
- package/test/component/components/Component.torp +0 -7
- package/test/component/components/Header.torp +0 -5
- package/test/component/components/output/Header-client.ts +0 -36
- package/test/component/components/output/Header-server.ts +0 -18
- package/test/component/components/output/Header-types.ts +0 -10
- package/test/component/components/temp/Component-client-18e68dd4956aa0a39a64061e21b0d379fe577124.ts +0 -41
- package/test/component/components/temp/Component-server-90896e6b74e2a126f374d067dad8aab30e618a6e.ts +0 -27
- package/test/component/components/temp/Header-client-55270c2ae3edb26dfdd07fcbb06bd5bc3d671cff.ts +0 -36
- package/test/component/components/temp/Header-server-268c10517d0abcb7dc7577acc226df495e0636c7.ts +0 -18
- package/test/component/components/temp/Header-types-c56a108c6fb5a22b8ae156936bc05e58eef199c2.ts +0 -10
- package/test/console/components/Console.torp +0 -7
- package/test/console/components/temp/Console-client-58a51b6842e5ce72a0476e8b45610deb4081567d.ts +0 -32
- package/test/const/components/Const.torp +0 -8
- package/test/const/components/temp/Const-client-d3ad39ce125ecbb4146070dca4271fa317164901.ts +0 -39
- package/test/context/components/ChildA.torp +0 -10
- package/test/context/components/ChildB.torp +0 -8
- package/test/context/components/Parent.torp +0 -11
- package/test/context/components/output/ChildA-client.ts +0 -43
- package/test/context/components/output/ChildA-server.ts +0 -21
- package/test/context/components/output/ChildA-types.ts +0 -10
- package/test/context/components/output/ChildB-client.ts +0 -32
- package/test/context/components/output/ChildB-server.ts +0 -20
- package/test/context/components/output/ChildB-types.ts +0 -10
- package/test/context/components/output/Parent-client.ts +0 -46
- package/test/context/components/output/Parent-server.ts +0 -33
- package/test/context/components/temp/ChildA-client-aff532cbefba57c045b1e46f17ef8d000c8a57e7.ts +0 -43
- package/test/context/components/temp/ChildA-server-7875ecf1de524d64b65442f9551357cb3d8406c8.ts +0 -21
- package/test/context/components/temp/ChildA-types-2ee15b25e68166d1574582f08e2280cbae948e5d.ts +0 -10
- package/test/context/components/temp/ChildB-client-f91667c6809e100f44401f8e4ac92ca2457f955e.ts +0 -32
- package/test/context/components/temp/ChildB-server-4e50197bcac7f277867eb384a9428bd71a1a481d.ts +0 -20
- package/test/context/components/temp/ChildB-types-531f67cfda5bd04468e827c14f9358a431853fc5.ts +0 -10
- package/test/context/components/temp/Parent-client-024253a71ed829c4a4af2a685551f0566ce9c990.ts +0 -46
- package/test/context/components/temp/Parent-server-23bd397e7c1d1abe774a217d2eccdd9794342526.ts +0 -33
- package/test/effects/components/For.torp +0 -7
- package/test/effects/components/If.torp +0 -9
- package/test/effects/components/NestedIf.torp +0 -11
- package/test/effects/components/output/For-client.ts +0 -79
- package/test/effects/components/output/If-client.ts +0 -67
- package/test/effects/components/output/NestedIf-client.ts +0 -93
- package/test/effects/components/temp/For-client-f532f1ee363da143e17a4c03cdfdeb8fb231b471.ts +0 -79
- package/test/effects/components/temp/If-client-55ae315d1e4e8a4beb0141bed27065752a967406.ts +0 -67
- package/test/effects/components/temp/NestedIf-client-6a3aa24e5601821dd884da50dd6f29a014fb4105.ts +0 -93
- package/test/events/components/Increment.torp +0 -19
- package/test/events/components/output/Increment-client.ts +0 -49
- package/test/events/components/output/Increment-server.ts +0 -26
- package/test/events/components/temp/Increment-client-1bcd6590718945f279fbf9ace53397d6cb0c5798.ts +0 -49
- package/test/events/components/temp/Increment-server-5c3613fa3049b61c78afc3421a5f7913f3f1a17d.ts +0 -26
- package/test/for/components/For.torp +0 -11
- package/test/for/components/ForEscape.torp +0 -14
- package/test/for/components/ForIn.torp +0 -11
- package/test/for/components/ForOf.torp +0 -11
- package/test/for/components/temp/For-client-9b3bfe804fafe13b51ef872cd22d05560ff8b534.ts +0 -81
- package/test/for/components/temp/ForEscape-client-a4ca70bc1efbad834b6532599a2709656126dc02.ts +0 -100
- package/test/for/components/temp/ForIn-client-798ce3de40acd8cf41bd768de216a94da368d44e.ts +0 -80
- package/test/for/components/temp/ForOf-client-e2f943a36ad6a3744fbed9a785650980c23dd2b8.ts +0 -80
- package/test/function/components/Function.torp +0 -13
- package/test/function/components/temp/Function-client-52e7497bab8bb30904b5483fb8b7c54889cbc38f.ts +0 -49
- package/test/function/components/temp/Function-server-df776ecd882d3092e095189f6a4993bd035f4dfd.ts +0 -28
- package/test/html/components/Html.torp +0 -7
- package/test/html/components/temp/Html-client-bf657455a7032b6954a27fca8e10c12626bb6cc9.ts +0 -49
- package/test/if/components/IfAfterIf.torp +0 -15
- package/test/if/components/IfCache.torp +0 -14
- package/test/if/components/IfElse.torp +0 -17
- package/test/if/components/IfElseIf.torp +0 -18
- package/test/if/components/IfFalse.torp +0 -10
- package/test/if/components/IfNested.torp +0 -19
- package/test/if/components/output/IfElse-client.ts +0 -67
- package/test/if/components/output/IfElseIf-client.ts +0 -77
- package/test/if/components/temp/IfAfterIf-client-81a15684c43a0fe4e17e3df9318c616631fb8ff8.ts +0 -87
- package/test/if/components/temp/IfCache-client-fe5987ab326c12977fed0b0aefc063ff5de2726a.ts +0 -72
- package/test/if/components/temp/IfElse-client-a24f8d0cc5b4bb3a436710170664865611ad353f.ts +0 -67
- package/test/if/components/temp/IfElseIf-client-82f3475956b6568a57317a403a3e0be561e8889f.ts +0 -77
- package/test/if/components/temp/IfFalse-client-895238468c443109683b1e68ffc90c0d97f3681f.ts +0 -61
- package/test/if/components/temp/IfNested-client-310998120f8c965d3ab916699173e4b44faebe8c.ts +0 -99
- package/test/mount/components/Mount.torp +0 -11
- package/test/mount/components/temp/Mount-client-6fa717b32323386e7bb7ef1c923ac505f1555383.ts +0 -39
- package/test/mount/components/temp/Mount-server-c1712e41936a50bfce050acf010a27fb33715582.ts +0 -25
- package/test/on-mount/components/OnMount.torp +0 -5
- package/test/on-mount/components/temp/OnMount-client-a4e4e0453bb3dc0adfe6a46ec685c44b8a25b47e.ts +0 -35
- package/test/party/components/AnswerButton.torp +0 -6
- package/test/party/components/AnswerButtonApp.torp +0 -21
- package/test/party/components/ColorSelect.torp +0 -24
- package/test/party/components/Colors.torp +0 -12
- package/test/party/components/Counter.torp +0 -14
- package/test/party/components/CssStyle.torp +0 -12
- package/test/party/components/DoubleCount.torp +0 -12
- package/test/party/components/FunnyButton.torp +0 -21
- package/test/party/components/FunnyButtonApp.torp +0 -9
- package/test/party/components/HelloWorld.torp +0 -5
- package/test/party/components/InputFocused.torp +0 -12
- package/test/party/components/InputHello.torp +0 -10
- package/test/party/components/IsAvailable.torp +0 -12
- package/test/party/components/Name.torp +0 -9
- package/test/party/components/NameUpdate.torp +0 -10
- package/test/party/components/PageTitle.torp +0 -13
- package/test/party/components/PickPill.torp +0 -15
- package/test/party/components/Time.torp +0 -17
- package/test/party/components/TrafficLight.torp +0 -28
- package/test/party/components/UserProfile.torp +0 -13
- package/test/party/components/UserProfileApp.torp +0 -12
- package/test/party/components/UserProfileContext.torp +0 -12
- package/test/party/components/UserProfileContextApp.torp +0 -18
- package/test/party/components/output/AnswerButton-client.ts +0 -34
- package/test/party/components/output/AnswerButton-server.ts +0 -17
- package/test/party/components/output/AnswerButton-types.ts +0 -10
- package/test/party/components/output/AnswerButtonApp-client.ts +0 -65
- package/test/party/components/output/AnswerButtonApp-server.ts +0 -42
- package/test/party/components/output/ColorSelect-client.ts +0 -106
- package/test/party/components/output/ColorSelect-server.ts +0 -36
- package/test/party/components/output/Colors-client.ts +0 -83
- package/test/party/components/output/Counter-client.ts +0 -49
- package/test/party/components/output/Counter-server.ts +0 -28
- package/test/party/components/output/CssStyle-client.ts +0 -30
- package/test/party/components/output/DoubleCount-client.ts +0 -45
- package/test/party/components/output/DoubleCount-server.ts +0 -27
- package/test/party/components/output/FunnyButton-client.ts +0 -42
- package/test/party/components/output/FunnyButton-server.ts +0 -33
- package/test/party/components/output/FunnyButton-types.ts +0 -10
- package/test/party/components/output/FunnyButtonApp-client.ts +0 -56
- package/test/party/components/output/FunnyButtonApp-server.ts +0 -40
- package/test/party/components/output/HelloWorld-client.ts +0 -30
- package/test/party/components/output/InputFocused-client.ts +0 -40
- package/test/party/components/output/InputFocused-server.ts +0 -26
- package/test/party/components/output/InputHello-client.ts +0 -48
- package/test/party/components/output/InputHello-server.ts +0 -25
- package/test/party/components/output/IsAvailable-client.ts +0 -48
- package/test/party/components/output/IsAvailable-server.ts +0 -24
- package/test/party/components/output/Name-client.ts +0 -42
- package/test/party/components/output/Name-server.ts +0 -24
- package/test/party/components/output/NameUpdate-client.ts +0 -43
- package/test/party/components/output/NameUpdate-server.ts +0 -25
- package/test/party/components/output/PageTitle-client.ts +0 -46
- package/test/party/components/output/PageTitle-server.ts +0 -29
- package/test/party/components/output/PickPill-client.ts +0 -57
- package/test/party/components/output/PickPill-server.ts +0 -25
- package/test/party/components/output/Time-client.ts +0 -50
- package/test/party/components/output/Time-server.ts +0 -33
- package/test/party/components/output/Time-types.ts +0 -10
- package/test/party/components/output/TrafficLight-client.ts +0 -104
- package/test/party/components/output/TrafficLight-server.ts +0 -42
- package/test/party/components/output/UserProfile-client.ts +0 -47
- package/test/party/components/output/UserProfile-server.ts +0 -23
- package/test/party/components/output/UserProfile-types.ts +0 -15
- package/test/party/components/output/UserProfileApp-client.ts +0 -49
- package/test/party/components/output/UserProfileApp-server.ts +0 -30
- package/test/party/components/output/UserProfileContext-client.ts +0 -45
- package/test/party/components/output/UserProfileContext-server.ts +0 -22
- package/test/party/components/output/UserProfileContext-types.ts +0 -10
- package/test/party/components/output/UserProfileContextApp-client.ts +0 -55
- package/test/party/components/output/UserProfileContextApp-server.ts +0 -36
- package/test/party/components/temp/AnswerButton-client-7177780ae1893d63f157696e8fd69457d2be7dae.ts +0 -34
- package/test/party/components/temp/AnswerButton-server-046732866b73d89e159611fefbe624d46c2b5fab.ts +0 -17
- package/test/party/components/temp/AnswerButton-types-7dc4d046e52be1e6cb46d6235ce7540bd3e7b2a5.ts +0 -10
- package/test/party/components/temp/AnswerButtonApp-client-4e1e446230bf19a6d15351ee85eef6d884cd8ae3.ts +0 -65
- package/test/party/components/temp/AnswerButtonApp-server-62fca6fe2548e137bad23a5eb275a26347487cf8.ts +0 -42
- package/test/party/components/temp/ColorSelect-client-e8b9847a6d173588f12e2edf9bb80b013cad45db.ts +0 -106
- package/test/party/components/temp/ColorSelect-server-70795372721a40a66a7c645a0739e05ebe92ace6.ts +0 -36
- package/test/party/components/temp/Colors-client-02829cd951ddad1017fb8bbc38105f0217a5c948.ts +0 -83
- package/test/party/components/temp/Counter-client-29835651186148b79e45df97a645ad89746539b3.ts +0 -49
- package/test/party/components/temp/Counter-server-44037f4e43afe66c1a2323ab228600c8d0c07034.ts +0 -28
- package/test/party/components/temp/CssStyle-client-ef6bb508854c44e6a2e0b6afe24354e778e16dd5.ts +0 -30
- package/test/party/components/temp/DoubleCount-client-5ff6544f8b35598d946cd79b84832c0fb8ecdad3.ts +0 -45
- package/test/party/components/temp/DoubleCount-server-debf090eddaf376df8779e033bcdb0388277958e.ts +0 -27
- package/test/party/components/temp/FunnyButton-client-e11fe0ccb1e1d8a5cc3494ec703821a87be30b48.ts +0 -42
- package/test/party/components/temp/FunnyButton-server-1a8ec64dfcb4ce3f57d49e93065214bfbcc08332.ts +0 -33
- package/test/party/components/temp/FunnyButton-types-7780d5c5dfe3ff2369f8e3c505616036cfcd3759.ts +0 -10
- package/test/party/components/temp/FunnyButtonApp-client-0ac296ea8c4d64c4cccb16cb60812bba773cae34.ts +0 -56
- package/test/party/components/temp/FunnyButtonApp-server-988d7be123837437c1cd83ec955af912b7f8c0ed.ts +0 -40
- package/test/party/components/temp/HelloWorld-client-bb60ff2a9b3e6be414458f0964428868abcc6c8b.ts +0 -30
- package/test/party/components/temp/InputFocused-client-28e89cbfa55a205bbb67379c7d72c9daa32e2b22.ts +0 -40
- package/test/party/components/temp/InputFocused-server-f2c33f77d036a13a539145aac92e69a13e5c244f.ts +0 -26
- package/test/party/components/temp/InputHello-client-94b5024f8b42ff650b22a8fcab4adabad5954b38.ts +0 -48
- package/test/party/components/temp/InputHello-server-b651f6b1b6d20f8db7f24c9aa2f9c7a6a98d2565.ts +0 -25
- package/test/party/components/temp/IsAvailable-client-2f4341d03fffd034ea6477cf98ac0984c3b48f19.ts +0 -48
- package/test/party/components/temp/IsAvailable-server-755235b8555a1b04422e65f78c2f568dbfbb0f6a.ts +0 -24
- package/test/party/components/temp/Name-client-aa921e496d4553c27489b7a104b369d7c042b10a.ts +0 -42
- package/test/party/components/temp/Name-server-17ed5d5d55f0e8dced9c2318901fa4fa752d3328.ts +0 -24
- package/test/party/components/temp/NameUpdate-client-a644414fb1d115facf07929340288114b47e82a7.ts +0 -43
- package/test/party/components/temp/NameUpdate-server-d5ee008860ddb688406b7c215b362cb6a7ae3dfb.ts +0 -25
- package/test/party/components/temp/PageTitle-client-6ac26df6766da904274c83151b7bea506173b166.ts +0 -46
- package/test/party/components/temp/PageTitle-server-a8756ac6e8d37cd1fddc5e587785188a2ddcad57.ts +0 -29
- package/test/party/components/temp/PickPill-client-d4d8a094e60fba2e2ce4f9b86bce6eecb35c7586.ts +0 -57
- package/test/party/components/temp/PickPill-server-863c275ffa01f0bea59aec7a62617fe3d64de0c4.ts +0 -25
- package/test/party/components/temp/Time-client-4be874ec1b0ba02833eaf8fc91db04ee135c6dc2.ts +0 -50
- package/test/party/components/temp/Time-server-b565c1796597a684c27ceb233fb6ba97c9e68b0c.ts +0 -33
- package/test/party/components/temp/Time-types-2bf6facfbb2d6e7de472d18760029afaefbb93e1.ts +0 -10
- package/test/party/components/temp/TrafficLight-client-fde946ab1dcedf0bc58ad66395ab7353b61ecd88.ts +0 -104
- package/test/party/components/temp/TrafficLight-server-7d314df847fb93f30306336686aebc7d733b7f2a.ts +0 -42
- package/test/party/components/temp/UserProfile-client-918160167576eda57d3f5c10821f121326434fc7.ts +0 -47
- package/test/party/components/temp/UserProfile-server-f2af9259f1673db9764940a79c8376ac6107a9a7.ts +0 -23
- package/test/party/components/temp/UserProfile-types-412089462c8dcc757d2f53e7ff8030296d3100c2.ts +0 -15
- package/test/party/components/temp/UserProfileApp-client-8aec52d853b05b770fe38d86f728704336a725f5.ts +0 -49
- package/test/party/components/temp/UserProfileApp-server-64a42a364541da400567ebd576cbc5f8a39b7b19.ts +0 -30
- package/test/party/components/temp/UserProfileContext-client-6a5b20d54444950be9d9ace5b18ac633a3a940e0.ts +0 -45
- package/test/party/components/temp/UserProfileContext-server-1babc15d4fcaeb42b317dd8b5f658fdb79ad9920.ts +0 -22
- package/test/party/components/temp/UserProfileContext-types-076b9fa0a87d3ca098884a003284050b36172cc6.ts +0 -10
- package/test/party/components/temp/UserProfileContextApp-client-c78122a89df250c38f3cabd9f83092e935d781dc.ts +0 -55
- package/test/party/components/temp/UserProfileContextApp-server-a0e9a8e842f94e587da700e5b0610335dcfa5d83.ts +0 -36
- package/test/props/components/Reactive.torp +0 -16
- package/test/props/components/temp/Reactive-client-ce85ee92aefc3d711232c6ec8b79d0f6c0d7b9be.ts +0 -75
- package/test/props/components/temp/Reactive-server-4f621a48a08889e1b4067f61d63f4dc2ad422560.ts +0 -44
- package/test/replace/components/Replace.torp +0 -9
- package/test/replace/components/temp/Replace-client-33026574cfdd565e54a36a7c335fe8947482f460.ts +0 -57
- package/test/slots/components/Article.torp +0 -11
- package/test/slots/components/Basic.torp +0 -9
- package/test/slots/components/Header.torp +0 -9
- package/test/slots/components/Let.torp +0 -11
- package/test/slots/components/List.torp +0 -11
- package/test/slots/components/Named.torp +0 -14
- package/test/slots/components/Unused.torp +0 -7
- package/test/slots/components/output/Article-client.ts +0 -46
- package/test/slots/components/output/Article-server.ts +0 -29
- package/test/slots/components/output/Article-types.ts +0 -10
- package/test/slots/components/output/Basic-client.ts +0 -51
- package/test/slots/components/output/Basic-server.ts +0 -35
- package/test/slots/components/output/Header-client.ts +0 -41
- package/test/slots/components/output/Header-server.ts +0 -23
- package/test/slots/components/output/Header-types.ts +0 -10
- package/test/slots/components/output/Let-client.ts +0 -60
- package/test/slots/components/output/Let-server.ts +0 -37
- package/test/slots/components/output/List-client.ts +0 -84
- package/test/slots/components/output/List-server.ts +0 -26
- package/test/slots/components/output/List-types.ts +0 -10
- package/test/slots/components/output/Named-client.ts +0 -64
- package/test/slots/components/output/Named-server.ts +0 -44
- package/test/slots/components/output/Unused-client.ts +0 -38
- package/test/slots/components/output/Unused-server.ts +0 -25
- package/test/slots/components/temp/Article-client-939fd695ec9564d416c1680b54ddb3066964cc89.ts +0 -46
- package/test/slots/components/temp/Article-server-a8234a25d52032abc1d1ad48f66b65904a33c82e.ts +0 -29
- package/test/slots/components/temp/Article-types-d3d960fbab7644ec2d90dfe39d908fbb65abaaa2.ts +0 -10
- package/test/slots/components/temp/Basic-client-0f7b10de026a6ae5b691be3814227832162c4ab1.ts +0 -51
- package/test/slots/components/temp/Basic-server-ed282e95697d448477249e4472731e62137a6e2f.ts +0 -35
- package/test/slots/components/temp/Header-client-f6e35c967b5ac01eb4a1a00373a5a2ea793205f2.ts +0 -41
- package/test/slots/components/temp/Header-server-c1b31b919bfe09f1c4b29b9727707552491c610a.ts +0 -23
- package/test/slots/components/temp/Header-types-c56a108c6fb5a22b8ae156936bc05e58eef199c2.ts +0 -10
- package/test/slots/components/temp/Let-client-b143435da62c03adc78abf22ffa77321bfa0064c.ts +0 -60
- package/test/slots/components/temp/Let-server-d6f219ca663f3db1a506054533f6d4ab8f0fd767.ts +0 -37
- package/test/slots/components/temp/List-client-2e2134b3dae44ad784b1da0e55dbc33eb8d3c7f1.ts +0 -84
- package/test/slots/components/temp/List-server-eb833ad2f15347f77193294b1fd6062b3bf64325.ts +0 -26
- package/test/slots/components/temp/List-types-fd59ad7d85c06e67ee766a2cf14a637dd129569e.ts +0 -10
- package/test/slots/components/temp/Named-client-eb1dff9abed47889adc7f63cc93ed6ebdffb51d5.ts +0 -64
- package/test/slots/components/temp/Named-server-624f94c0236240ee7fa369eaa3a2ac89eb790bf7.ts +0 -44
- package/test/slots/components/temp/Unused-client-03b8bd23f61020b9977bd875614b6b0c2c52dc00.ts +0 -38
- package/test/slots/components/temp/Unused-server-8774285a676281e07ff66f99d4235bd20bea10ec.ts +0 -25
- package/test/source-maps/components/Source.torp +0 -19
- package/test/source-maps/components/output/Source-client.ts +0 -71
- package/test/source-maps/components/output/Source-server.ts +0 -28
- package/test/source-maps/components/output/Source-types.ts +0 -10
- package/test/source-maps/components/temp/Source-client-5a64a2dcf1f8e50b0e175d5aef6b2980e46f07bd.ts +0 -71
- package/test/source-maps/components/temp/Source-server-593d42212a4999e0d3c6c0c4ed486950cfd37ffd.ts +0 -28
- package/test/source-maps/components/temp/Source-types-69770c124317e0a0fd6aeb3d4f331b50231452fa.ts +0 -10
- package/test/special-component/components/BigTitle.torp +0 -7
- package/test/special-component/components/Component.torp +0 -15
- package/test/special-component/components/SmallTitle.torp +0 -7
- package/test/special-component/components/output/BigTitle-client.ts +0 -36
- package/test/special-component/components/output/BigTitle-server.ts +0 -21
- package/test/special-component/components/output/BigTitle-types.ts +0 -10
- package/test/special-component/components/output/Component-client.ts +0 -74
- package/test/special-component/components/output/Component-server.ts +0 -45
- package/test/special-component/components/output/SmallTitle-client.ts +0 -36
- package/test/special-component/components/output/SmallTitle-server.ts +0 -21
- package/test/special-component/components/output/SmallTitle-types.ts +0 -10
- package/test/special-component/components/temp/BigTitle-client-3c747affe6dfc07f73232b9f377de47d7e5f8bb5.ts +0 -36
- package/test/special-component/components/temp/BigTitle-server-e400758bfe84a7ffb98aa2d96f6aed387b809241.ts +0 -21
- package/test/special-component/components/temp/BigTitle-types-cb6363da78f853772d3408240f32030d5e826859.ts +0 -10
- package/test/special-component/components/temp/Component-client-0f8b087e7164f683fc1af88b178638f51aa4ad2b.ts +0 -74
- package/test/special-component/components/temp/Component-server-182ab0d2f5120f217e55405e84106afb073a31d4.ts +0 -45
- package/test/special-component/components/temp/SmallTitle-client-f0f3227bab50bebb96a327101961d6496c4b6586.ts +0 -36
- package/test/special-component/components/temp/SmallTitle-server-714ee28840dafde47596814aad7232d2bf3940fe.ts +0 -21
- package/test/special-component/components/temp/SmallTitle-types-629b435eb6f9a402ff576511db3e1d150f8c612b.ts +0 -10
- package/test/special-element/components/Element.torp +0 -7
- package/test/special-element/components/output/Element-client.ts +0 -39
- package/test/special-element/components/temp/Element-client-23fef3e11ab8dc78463d8da4b349d4151a6823a8.ts +0 -39
- package/test/special-head/components/Head.torp +0 -5
- package/test/special-head/components/output/Head-client.ts +0 -25
- package/test/special-head/components/temp/Head-client-cee01a372b59ea6d708fa0a8036658ff586093e2.ts +0 -25
- package/test/special-self/components/Self.torp +0 -9
- package/test/special-self/components/output/Self-client.ts +0 -76
- package/test/special-self/components/temp/Self-client-fb940707018d8f13a018e34c7e032586eab56f97.ts +0 -76
- package/test/style/components/Style.torp +0 -7
- package/test/style/components/temp/Style-client-f321541fd176424a7e8dad3db90d0519ffeba0a9.ts +0 -35
- package/test/svg/components/Shape.torp +0 -12
- package/test/svg/components/output/Shape-client.ts +0 -73
- package/test/svg/components/temp/Shape-client-4194f6d0c068a021093dcaadf7b8b6fc9c189bf8.ts +0 -73
- package/test/switch/components/Switch.torp +0 -29
- package/test/switch/components/temp/Switch-client-96afd31d61d6e10e2e7f7d72873d7094ab6cdd16.ts +0 -90
- package/test/switch/switch-values.test.ts +0 -57
- package/test/text/components/Text.torp +0 -15
- package/test/text/components/temp/Text-client-4e4d536d08e0483bf1054070f48487474086be0f.ts +0 -44
- package/test/text/components/temp/Text-server-baea3dc3200f14f37125d3bba59c5463e220aeaa.ts +0 -24
- package/test/text/components/temp/Text-types-f9e6d77cf5a6def5aff78be41ebca3e8e6a54278.ts +0 -16
- package/test/watch-array/components/Array.torp +0 -14
- package/test/watch-array/components/ArrayEntries.torp +0 -15
- package/test/watch-array/components/ArrayIndexes.torp +0 -15
- package/test/watch-array/components/ArrayUnkeyed.torp +0 -13
- package/test/watch-array/components/output/Array-client.ts +0 -80
- package/test/watch-array/components/output/ArrayUnkeyed-client.ts +0 -80
- package/test/watch-array/components/temp/Array-client-0743e918c3ac7f3277c64809af70cfcb4e603518.ts +0 -80
- package/test/watch-array/components/temp/ArrayEntries-client-1d83a3ae4f02357d53d54daf47ffb12a739c5793.ts +0 -82
- package/test/watch-array/components/temp/ArrayIndexes-client-10f461700a0b52c1f7ef1f15b7818c472e60f7ef.ts +0 -80
- package/test/watch-array/components/temp/ArrayUnkeyed-client-4446d86d01138d783e9de03749386eb19ee16724.ts +0 -80
- package/test/watch-object/components/Watched.torp +0 -9
- package/test/watch-object/components/output/Watched-client.ts +0 -36
- package/test/watch-object/components/temp/Watched-client-7d20fcb742a33f59403d70d68afc9b9d1616a0dd.ts +0 -36
- /package/src/{render → ssr}/$serverBatch.ts +0 -0
- /package/src/{render → ssr}/$serverCache.ts +0 -0
- /package/src/{render → ssr}/$serverMount.ts +0 -0
- /package/src/{render → ssr}/$serverPeek.ts +0 -0
- /package/src/{render → ssr}/$serverRun.ts +0 -0
- /package/src/{render → ssr}/$serverUnwrap.ts +0 -0
- /package/src/{render → ssr}/$serverWatch.ts +0 -0
- /package/src/{render → watch}/$stream.ts +0 -0
- /package/test/child-component/components/output/{ParentChild-server.ts → ChildComponent-server.ts} +0 -0
- /package/test/child-component/components/output/{ParentChild-types.ts → ChildComponent-types.ts} +0 -0
- /package/test/child-component/components/temp/{ParentChild-server-ec2d2faa587fb40711072956f1eb4a4eed9510d3.ts → ChildComponent-server-ec2d2faa587fb40711072956f1eb4a4eed9510d3.ts} +0 -0
- /package/test/child-component/components/temp/{ParentChild-types-4d26850ef18600f398f7aa9c4502071349bf5624.ts → ChildComponent-types-4d26850ef18600f398f7aa9c4502071349bf5624.ts} +0 -0
- /package/test/context/components/output/{Parent-types.ts → Context-types.ts} +0 -0
- /package/test/context/components/temp/{Parent-types-e6be7d1cf118d7a8927af59db780010392966d01.ts → Context-types-e6be7d1cf118d7a8927af59db780010392966d01.ts} +0 -0
- /package/test/effects/components/output/{For-server.ts → ForEffect-server.ts} +0 -0
- /package/test/effects/components/output/{For-types.ts → ForEffect-types.ts} +0 -0
- /package/test/effects/components/output/{If-server.ts → IfEffect-server.ts} +0 -0
- /package/test/effects/components/output/{If-types.ts → IfEffect-types.ts} +0 -0
- /package/test/effects/components/output/{NestedIf-server.ts → NestedIfEffect-server.ts} +0 -0
- /package/test/effects/components/output/{NestedIf-types.ts → NestedIfEffect-types.ts} +0 -0
- /package/test/effects/components/temp/{For-server-3211305e6a2145f78bc3e14d2f26b7db0e192ec1.ts → ForEffect-server-3211305e6a2145f78bc3e14d2f26b7db0e192ec1.ts} +0 -0
- /package/test/effects/components/temp/{For-types-cfec41b41b054674bf8b01ce0e0003c8a6640a82.ts → ForEffect-types-cfec41b41b054674bf8b01ce0e0003c8a6640a82.ts} +0 -0
- /package/test/effects/components/temp/{If-server-81d8f48c6fcb57d99a18b394f8a6320adfb5f864.ts → IfEffect-server-81d8f48c6fcb57d99a18b394f8a6320adfb5f864.ts} +0 -0
- /package/test/effects/components/temp/{If-types-7b245b6e531e122e0d0cfb72903bb88223b98793.ts → IfEffect-types-7b245b6e531e122e0d0cfb72903bb88223b98793.ts} +0 -0
- /package/test/effects/components/temp/{NestedIf-server-78aa084b0f5ff89c543ce3287254bc3269450090.ts → NestedIfEffect-server-78aa084b0f5ff89c543ce3287254bc3269450090.ts} +0 -0
- /package/test/effects/components/temp/{NestedIf-types-0912466d777f52f3616557823a7e47f5901cb755.ts → NestedIfEffect-types-0912466d777f52f3616557823a7e47f5901cb755.ts} +0 -0
- /package/test/events/components/output/{Increment-types.ts → Events-types.ts} +0 -0
- /package/test/events/components/temp/{Increment-types-f259dd221aa967b0426746303f1f2c33aeeaf068.ts → Events-types-f259dd221aa967b0426746303f1f2c33aeeaf068.ts} +0 -0
- /package/test/if/components/output/{IfElseIf-server.ts → ElseIfTrue-server.ts} +0 -0
- /package/test/if/components/output/{IfElseIf-types.ts → ElseIfTrue-types.ts} +0 -0
- /package/test/if/components/{temp/IfElseIf-server-d16c5f90da5cb991243d0ea131e7eb2a717d6515.ts → output/ElseTrue-server.ts} +0 -0
- /package/test/if/components/{temp/IfElseIf-types-a492d2b6e8517f598befca7127cd514244239984.ts → output/ElseTrue-types.ts} +0 -0
- /package/test/if/components/output/{IfElse-server.ts → IfElseFalse-server.ts} +0 -0
- /package/test/if/components/output/{IfElse-types.ts → IfElseFalse-types.ts} +0 -0
- /package/test/if/components/{temp/IfElse-server-fcb8e3008932399fb4cca53ef09bdd201030d3cb.ts → output/IfElseTrue-server.ts} +0 -0
- /package/test/if/components/{temp/IfElse-types-e81080227f8f69ac1d81141d97a07e0a0e9391c1.ts → output/IfElseTrue-types.ts} +0 -0
- /package/test/party/components/output/{DoubleCount-types.ts → ComputedState-types.ts} +0 -0
- /package/test/party/components/output/{TrafficLight-types.ts → Conditional-types.ts} +0 -0
- /package/test/party/components/output/{UserProfileContextApp-types.ts → Context-types.ts} +0 -0
- /package/test/party/components/output/{Name-types.ts → DeclareState-types.ts} +0 -0
- /package/test/party/components/output/{InputFocused-types.ts → DomRef-types.ts} +0 -0
- /package/test/party/components/output/{AnswerButtonApp-types.ts → EmitToParent-types.ts} +0 -0
- /package/test/party/components/output/{Counter-types.ts → EventClick-types.ts} +0 -0
- /package/test/party/components/output/{IsAvailable-types.ts → InputCheckbox-types.ts} +0 -0
- /package/test/party/components/output/{PickPill-types.ts → InputRadio-types.ts} +0 -0
- /package/test/party/components/output/{ColorSelect-types.ts → InputSelect-types.ts} +0 -0
- /package/test/party/components/output/{InputHello-types.ts → InputText-types.ts} +0 -0
- /package/test/party/components/output/{Colors-server.ts → Loop-server.ts} +0 -0
- /package/test/party/components/output/{Colors-types.ts → Loop-types.ts} +0 -0
- /package/test/party/components/output/{HelloWorld-server.ts → MinimalTemplate-server.ts} +0 -0
- /package/test/party/components/output/{HelloWorld-types.ts → MinimalTemplate-types.ts} +0 -0
- /package/test/party/components/output/{PageTitle-types.ts → OnMount-types.ts} +0 -0
- /package/test/party/components/output/{UserProfileApp-types.ts → Props-types.ts} +0 -0
- /package/test/party/components/output/{FunnyButtonApp-types.ts → Slot-types.ts} +0 -0
- /package/test/party/components/{temp/FunnyButtonApp-types-ea73d641565a4478759166f462206dd97c92cedd.ts → output/SlotFallback-types.ts} +0 -0
- /package/test/party/components/output/{CssStyle-server.ts → Styling-server.ts} +0 -0
- /package/test/party/components/output/{CssStyle-types.ts → Styling-types.ts} +0 -0
- /package/test/party/components/output/{NameUpdate-types.ts → UpdateState-types.ts} +0 -0
- /package/test/party/components/temp/{DoubleCount-types-436bd75fe7808c3a30389aeb1740aea361aa8681.ts → ComputedState-types-436bd75fe7808c3a30389aeb1740aea361aa8681.ts} +0 -0
- /package/test/party/components/temp/{TrafficLight-types-d301a2317da01a215fc8e5222dc6ff87226fa250.ts → Conditional-types-d301a2317da01a215fc8e5222dc6ff87226fa250.ts} +0 -0
- /package/test/party/components/temp/{UserProfileContextApp-types-d04199ab7d43ecc12ceccb7a0bef7ff38ac1e8b1.ts → Context-types-d04199ab7d43ecc12ceccb7a0bef7ff38ac1e8b1.ts} +0 -0
- /package/test/party/components/temp/{Name-types-06f89338c785a1fd352ed7de3ebe02b30722760d.ts → DeclareState-types-06f89338c785a1fd352ed7de3ebe02b30722760d.ts} +0 -0
- /package/test/party/components/temp/{InputFocused-types-33da14c13216ca00edaa8f02508db21f5cd32d31.ts → DomRef-types-33da14c13216ca00edaa8f02508db21f5cd32d31.ts} +0 -0
- /package/test/party/components/temp/{AnswerButtonApp-types-10a6f55029e859366f9a3a73cdcdb3f63e89dbeb.ts → EmitToParent-types-10a6f55029e859366f9a3a73cdcdb3f63e89dbeb.ts} +0 -0
- /package/test/party/components/temp/{Counter-types-206b0704ee2e25f5f3198d716fa524295581c075.ts → EventClick-types-206b0704ee2e25f5f3198d716fa524295581c075.ts} +0 -0
- /package/test/party/components/temp/{IsAvailable-types-23d4e196c659901c347a7b3e5c9e4a6668234adb.ts → InputCheckbox-types-23d4e196c659901c347a7b3e5c9e4a6668234adb.ts} +0 -0
- /package/test/party/components/temp/{PickPill-types-526e2bb4c36ec1bed87eaf5722093a0eaefcd9d3.ts → InputRadio-types-526e2bb4c36ec1bed87eaf5722093a0eaefcd9d3.ts} +0 -0
- /package/test/party/components/temp/{ColorSelect-types-e652a36ebdd98e8c23a8de3156c4499023f09301.ts → InputSelect-types-e652a36ebdd98e8c23a8de3156c4499023f09301.ts} +0 -0
- /package/test/party/components/temp/{InputHello-types-ab629048402441fde9a292bc2d376c0deea482a8.ts → InputText-types-ab629048402441fde9a292bc2d376c0deea482a8.ts} +0 -0
- /package/test/party/components/temp/{Colors-server-7a462b2de89d0d49b878c794b874ddc1bc518c50.ts → Loop-server-7a462b2de89d0d49b878c794b874ddc1bc518c50.ts} +0 -0
- /package/test/party/components/temp/{Colors-types-075975e9b9074b49f96f99d660f0ee580546a630.ts → Loop-types-075975e9b9074b49f96f99d660f0ee580546a630.ts} +0 -0
- /package/test/party/components/temp/{HelloWorld-server-8ab84a3653ec59bd140782dcd7aea0d16abf0019.ts → MinimalTemplate-server-8ab84a3653ec59bd140782dcd7aea0d16abf0019.ts} +0 -0
- /package/test/party/components/temp/{HelloWorld-types-3c153ac7af343dbce6cb081f1ae1b4f85d7f0b10.ts → MinimalTemplate-types-3c153ac7af343dbce6cb081f1ae1b4f85d7f0b10.ts} +0 -0
- /package/test/party/components/temp/{PageTitle-types-dfb55ea9b607c89167dbd7538523a484a6eec300.ts → OnMount-types-dfb55ea9b607c89167dbd7538523a484a6eec300.ts} +0 -0
- /package/test/party/components/temp/{UserProfileApp-types-3e70c106e03c68b4aa06c2fe21dfeceffe7cc313.ts → Props-types-3e70c106e03c68b4aa06c2fe21dfeceffe7cc313.ts} +0 -0
- /package/test/party/components/temp/{CssStyle-server-781c357ad52d626180f766a0301a4ee05db4bdf1.ts → Styling-server-781c357ad52d626180f766a0301a4ee05db4bdf1.ts} +0 -0
- /package/test/party/components/temp/{CssStyle-types-f1ce4f0b03d404c70704f271ce9bfc5d5107346c.ts → Styling-types-f1ce4f0b03d404c70704f271ce9bfc5d5107346c.ts} +0 -0
- /package/test/party/components/temp/{NameUpdate-types-9c69805006d2d3bb457c5d4d87db8baeb431aeb6.ts → UpdateState-types-9c69805006d2d3bb457c5d4d87db8baeb431aeb6.ts} +0 -0
- /package/test/slots/components/output/{Basic-types.ts → BasicSlot-types.ts} +0 -0
- /package/test/slots/components/output/{Let-types.ts → LetSlot-types.ts} +0 -0
- /package/test/slots/components/output/{Named-types.ts → NamedSlot-types.ts} +0 -0
- /package/test/slots/components/output/{Unused-types.ts → UnusedSlot-types.ts} +0 -0
- /package/test/slots/components/temp/{Basic-types-709765786c453e34088db3e894a59fb3332d3ed1.ts → BasicSlot-types-709765786c453e34088db3e894a59fb3332d3ed1.ts} +0 -0
- /package/test/slots/components/temp/{Let-types-3d05614de77a23df63a3cc1873b27ce1b0148c58.ts → LetSlot-types-3d05614de77a23df63a3cc1873b27ce1b0148c58.ts} +0 -0
- /package/test/slots/components/temp/{Named-types-ed10fb6338eb9bd67281b9658bd7b10b572d346a.ts → NamedSlot-types-ed10fb6338eb9bd67281b9658bd7b10b572d346a.ts} +0 -0
- /package/test/slots/components/temp/{Unused-types-88f7e38611b4cae1067969cf702cde41422837ae.ts → UnusedSlot-types-88f7e38611b4cae1067969cf702cde41422837ae.ts} +0 -0
- /package/test/special-component/components/output/{Component-types.ts → SpecialComponent-types.ts} +0 -0
- /package/test/special-component/components/temp/{Component-types-196e5e5c55f61a9d24837f8de1fb9e9eeb2dd3f1.ts → SpecialComponent-types-196e5e5c55f61a9d24837f8de1fb9e9eeb2dd3f1.ts} +0 -0
- /package/test/special-element/components/output/{Element-server.ts → SpecialElement-server.ts} +0 -0
- /package/test/special-element/components/output/{Element-types.ts → SpecialElement-types.ts} +0 -0
- /package/test/special-element/components/temp/{Element-server-95a4f433ff0a417556de779629f99b39885c6671.ts → SpecialElement-server-95a4f433ff0a417556de779629f99b39885c6671.ts} +0 -0
- /package/test/special-element/components/temp/{Element-types-478aac6fcc8cc71dc587b534bb45ddcde069e2cb.ts → SpecialElement-types-478aac6fcc8cc71dc587b534bb45ddcde069e2cb.ts} +0 -0
- /package/test/special-head/components/output/{Head-server.ts → SpecialHead-server.ts} +0 -0
- /package/test/special-head/components/output/{Head-types.ts → SpecialHead-types.ts} +0 -0
- /package/test/special-head/components/temp/{Head-server-8a44ede68129efa2ee87425cec6e959e59bdd15b.ts → SpecialHead-server-8a44ede68129efa2ee87425cec6e959e59bdd15b.ts} +0 -0
- /package/test/special-head/components/temp/{Head-types-88772e6c9aefe7f65c342350ad45b29e7fa16604.ts → SpecialHead-types-88772e6c9aefe7f65c342350ad45b29e7fa16604.ts} +0 -0
- /package/test/special-self/components/output/{Self-server.ts → SpecialSelf-server.ts} +0 -0
- /package/test/special-self/components/output/{Self-types.ts → SpecialSelf-types.ts} +0 -0
- /package/test/special-self/components/temp/{Self-server-6693e5b04f32373b538a43e9e2070ce3a8384882.ts → SpecialSelf-server-6693e5b04f32373b538a43e9e2070ce3a8384882.ts} +0 -0
- /package/test/special-self/components/temp/{Self-types-d438955d6f42951942dfa72ec1b79ad4ee95e966.ts → SpecialSelf-types-d438955d6f42951942dfa72ec1b79ad4ee95e966.ts} +0 -0
- /package/test/svg/components/output/{Shape-server.ts → Svg-server.ts} +0 -0
- /package/test/svg/components/output/{Shape-types.ts → Svg-types.ts} +0 -0
- /package/test/svg/components/temp/{Shape-server-b9b60e589502533127c30e89967d9dec0828d1a5.ts → Svg-server-b9b60e589502533127c30e89967d9dec0828d1a5.ts} +0 -0
- /package/test/svg/components/temp/{Shape-types-70f9e311a005452b58286636c0dcb67a73e9fab4.ts → Svg-types-70f9e311a005452b58286636c0dcb67a73e9fab4.ts} +0 -0
- /package/test/watch-array/components/output/{Array-server.ts → ArrayAllFunctions-server.ts} +0 -0
- /package/test/watch-array/components/output/{Array-types.ts → ArrayAllFunctions-types.ts} +0 -0
- /package/test/watch-array/components/output/{ArrayUnkeyed-server.ts → ArrayAllFunctionsUnkeyed-server.ts} +0 -0
- /package/test/watch-array/components/output/{ArrayUnkeyed-types.ts → ArrayAllFunctionsUnkeyed-types.ts} +0 -0
- /package/test/watch-array/components/{temp/Array-server-f463a29dee7f143455591e89d001dd42dab9db7b.ts → output/ArrayEmpty-server.ts} +0 -0
- /package/test/watch-array/components/{temp/Array-types-4afcc38999fa0a5d5b28b8c54ea8f25659d91165.ts → output/ArrayEmpty-types.ts} +0 -0
- /package/test/watch-array/components/temp/{ArrayUnkeyed-server-322c441892520db8657a2a9d9d7e85f5c46794f2.ts → ArrayAllFunctionsUnkeyed-server-322c441892520db8657a2a9d9d7e85f5c46794f2.ts} +0 -0
- /package/test/watch-array/components/temp/{ArrayUnkeyed-types-6f544a6b354c46913b9ee0e843d0a6482af2745d.ts → ArrayAllFunctionsUnkeyed-types-6f544a6b354c46913b9ee0e843d0a6482af2745d.ts} +0 -0
- /package/test/watch-object/components/output/{Watched-server.ts → WatchObject-server.ts} +0 -0
- /package/test/watch-object/components/output/{Watched-types.ts → WatchObject-types.ts} +0 -0
- /package/test/watch-object/components/temp/{Watched-server-a31141b2d513f4d7244698e72f3888524fd8e55e.ts → WatchObject-server-a31141b2d513f4d7244698e72f3888524fd8e55e.ts} +0 -0
- /package/test/watch-object/components/temp/{Watched-types-70c7bde732f624bfbb8e353bf9d1be8dbaea63e1.ts → WatchObject-types-70c7bde732f624bfbb8e353bf9d1be8dbaea63e1.ts} +0 -0
package/dist/compile.cjs
CHANGED
|
@@ -61,14 +61,14 @@ var Builder = class {
|
|
|
61
61
|
|
|
62
62
|
//#endregion
|
|
63
63
|
//#region src/compile/build/client/addMappedText.ts
|
|
64
|
-
function addMappedText(preText, text, postText,
|
|
65
|
-
if (status.options
|
|
64
|
+
function addMappedText(preText, text, postText, span, status, b) {
|
|
65
|
+
if (status.options.mapped === true) {
|
|
66
66
|
let start = b.toString().length + preText.length;
|
|
67
67
|
b.append(preText + text + postText);
|
|
68
|
-
let end = start + text.length
|
|
68
|
+
let end = start + text.length;
|
|
69
69
|
status.map.push({
|
|
70
70
|
script: text,
|
|
71
|
-
source:
|
|
71
|
+
source: span,
|
|
72
72
|
compiled: {
|
|
73
73
|
start,
|
|
74
74
|
end
|
|
@@ -77,6 +77,27 @@ function addMappedText(preText, text, postText, range, status, b) {
|
|
|
77
77
|
} else b.append(preText + text + postText);
|
|
78
78
|
}
|
|
79
79
|
|
|
80
|
+
//#endregion
|
|
81
|
+
//#region src/compile/build/client/addPopDevBoundary.ts
|
|
82
|
+
function addPopDevBoundary(status, b) {
|
|
83
|
+
if (status.options.dev === true) {
|
|
84
|
+
status.imports.add("t_pop_dev_bound");
|
|
85
|
+
b.append("");
|
|
86
|
+
b.append(`t_pop_dev_bound();`);
|
|
87
|
+
}
|
|
88
|
+
}
|
|
89
|
+
|
|
90
|
+
//#endregion
|
|
91
|
+
//#region src/compile/build/client/addPushDevBoundary.ts
|
|
92
|
+
function addPushDevBoundary(type, name, status, b) {
|
|
93
|
+
if (status.options.dev === true) {
|
|
94
|
+
status.imports.add("t_push_dev_bound");
|
|
95
|
+
if (!(name.startsWith("'") && name.endsWith("'") || name.startsWith("\"") && name.endsWith("\"") || name.startsWith("`") || name.endsWith("`"))) name = `"${name}"`;
|
|
96
|
+
b.append(`t_push_dev_bound("${type}", ${name});`);
|
|
97
|
+
b.append("");
|
|
98
|
+
}
|
|
99
|
+
}
|
|
100
|
+
|
|
80
101
|
//#endregion
|
|
81
102
|
//#region src/compile/types/comments.ts
|
|
82
103
|
const ANCHOR_COMMENT = "<!>";
|
|
@@ -285,14 +306,14 @@ function buildAddFragment(node, status, b, parentName, anchorName) {
|
|
|
285
306
|
status.imports.add("t_add_fragment");
|
|
286
307
|
if (fragment.effects.length > 0) {
|
|
287
308
|
status.imports.add("$run");
|
|
288
|
-
b.append(
|
|
289
|
-
if (status.options
|
|
309
|
+
b.append("$run(() => {");
|
|
310
|
+
if (status.options.mapped === true) for (let effect of fragment.effects) for (let i = 0; i < effect.spans.length; i++) {
|
|
290
311
|
let start = b.toString().length + effect.offsets[i];
|
|
291
312
|
b.append(effect.functionBody);
|
|
292
313
|
let end = start + effect.lengths[i];
|
|
293
314
|
status.map.push({
|
|
294
315
|
script: effect.functionBody,
|
|
295
|
-
source: effect.
|
|
316
|
+
source: effect.spans[i],
|
|
296
317
|
compiled: {
|
|
297
318
|
start,
|
|
298
319
|
end
|
|
@@ -300,7 +321,7 @@ function buildAddFragment(node, status, b, parentName, anchorName) {
|
|
|
300
321
|
});
|
|
301
322
|
}
|
|
302
323
|
else b.append(fragment.effects.map((e) => e.functionBody).join("\n"));
|
|
303
|
-
b.append("})
|
|
324
|
+
b.append(`}${status.options.dev === true ? `, "setAttributes"` : ""});`);
|
|
304
325
|
}
|
|
305
326
|
let params = [
|
|
306
327
|
fragmentName,
|
|
@@ -372,7 +393,7 @@ function buildFragment(node, status, b, parentName, anchorName) {
|
|
|
372
393
|
if (node.fragment) {
|
|
373
394
|
const fragment = node.fragment;
|
|
374
395
|
const fragmentName = `t_fragment_${fragment.number}`;
|
|
375
|
-
if (status.options
|
|
396
|
+
if (status.options.useCreateElement === true) {
|
|
376
397
|
let fragmentPath = {
|
|
377
398
|
parent: null,
|
|
378
399
|
type: "fragment",
|
|
@@ -449,11 +470,9 @@ function declareControlFragmentVars(fragment, node, path, status, b, parentName,
|
|
|
449
470
|
case "@for group":
|
|
450
471
|
case "@await group":
|
|
451
472
|
case "@replace group":
|
|
452
|
-
case "@html group":
|
|
453
|
-
|
|
454
|
-
declareParentAndAnchorFragmentVars(fragment, node, path, status, b, parentName, anchorName, varPaths, operation, declare);
|
|
473
|
+
case "@html group":
|
|
474
|
+
declareParentAndAnchorFragmentVars(fragment, node, path, status, b, parentName, anchorName, varPaths, node.operation.substring(1).replace(" group", ""), declare);
|
|
455
475
|
break;
|
|
456
|
-
}
|
|
457
476
|
default:
|
|
458
477
|
for (let [i, child] of node.children.entries()) declareFragmentVars(fragment, child, path, status, b, parentName, anchorName, varPaths, i === node.children.length - 1, declare);
|
|
459
478
|
break;
|
|
@@ -485,7 +504,7 @@ function declareElementFragmentVars(fragment, node, path, status, b, parentName,
|
|
|
485
504
|
node.varName = nextVarName(tagName, status);
|
|
486
505
|
if (topLevel) fragment.endVarName = node.varName;
|
|
487
506
|
const varPath = getFragmentVarPath(fragment, status, node.varName, elementPath, varPaths);
|
|
488
|
-
if (status.options
|
|
507
|
+
if (status.options.useCreateElement === true) b.append(`let ${node.varName};`);
|
|
489
508
|
else if (node.tagName === "@element") b.append(`let ${node.varName} = ${varPath} as ${elementTypeName(node)};`);
|
|
490
509
|
else {
|
|
491
510
|
b.append(`const ${node.varName} = ${varPath} as ${elementTypeName(node)};`);
|
|
@@ -530,7 +549,7 @@ function declareTextFragmentVars(fragment, node, path, status, b, varPaths, last
|
|
|
530
549
|
node.varName = nextVarName("text", status);
|
|
531
550
|
if (topLevel) fragment.endVarName = node.varName;
|
|
532
551
|
const varPath = getFragmentVarPath(fragment, status, node.varName, textPath, varPaths);
|
|
533
|
-
if (status.options
|
|
552
|
+
if (status.options.useCreateElement === true) b.append(`let ${node.varName};`);
|
|
534
553
|
else {
|
|
535
554
|
b.append(`const ${node.varName} = ${varPath};`);
|
|
536
555
|
printDebug(node.varName, status, b);
|
|
@@ -575,7 +594,7 @@ function declareParentAndAnchorFragmentVars(fragment, node, path, status, b, par
|
|
|
575
594
|
if (varPaths.has(parentVarPath)) node.parentName = varPaths.get(parentVarPath);
|
|
576
595
|
else if (declare) {
|
|
577
596
|
node.parentName = nextVarName(`${name}_parent`, status);
|
|
578
|
-
if (status.options
|
|
597
|
+
if (status.options.useCreateElement === true) b.append(`let ${node.parentName} as HTMLElement;`);
|
|
579
598
|
else {
|
|
580
599
|
b.append(`const ${node.parentName} = ${parentVarPath} as HTMLElement;`);
|
|
581
600
|
printDebug(node.parentName, status, b);
|
|
@@ -592,7 +611,7 @@ function declareParentAndAnchorFragmentVars(fragment, node, path, status, b, par
|
|
|
592
611
|
path.children.push(anchorPath);
|
|
593
612
|
node.varName = nextVarName(`${name}_anchor`, status);
|
|
594
613
|
const anchorVarPath = getFragmentVarPath(fragment, status, node.varName, anchorPath, varPaths);
|
|
595
|
-
if (status.options
|
|
614
|
+
if (status.options.useCreateElement === true) b.append(`let ${node.varName};`);
|
|
596
615
|
else {
|
|
597
616
|
status.imports.add("t_anchor");
|
|
598
617
|
b.append(`let ${node.varName} = t_anchor(${anchorVarPath}) as HTMLElement;`);
|
|
@@ -629,8 +648,7 @@ function getFragmentVarPath(fragment, status, name, path, varPaths) {
|
|
|
629
648
|
break;
|
|
630
649
|
} else level--;
|
|
631
650
|
const tail = varPath.substring(end + count);
|
|
632
|
-
|
|
633
|
-
varPath = `${head}t_skip(${param}, ${count})${tail}`;
|
|
651
|
+
varPath = `${head}t_skip(${varPath.substring(pos + match.length, end)}, ${count})${tail}`;
|
|
634
652
|
}
|
|
635
653
|
varPath = varPath.replaceAll("t_next_text", "t_next");
|
|
636
654
|
return varPath;
|
|
@@ -661,7 +679,7 @@ function printDebug(varName, status, b) {}
|
|
|
661
679
|
* Variables used within a for loop need to be retrieved from the loop data.
|
|
662
680
|
*/
|
|
663
681
|
function replaceForVarNames(value, status) {
|
|
664
|
-
for (let varName of status.forVarNames) value = value.replaceAll(new RegExp(`(^|\\s|\\(|\\[|\\{)${varName}($|\\s|\\.|\\(|\\)|\\[|\\]|\\}|;)`, "g"), `$
|
|
682
|
+
for (let varName of status.forVarNames) value = value.replaceAll(new RegExp(`(^|\\s|\\(|\\[|\\{|!)${varName[0]}($|\\s|\\.|\\(|\\)|\\[|\\]|\\}|;)`, "g"), `$1${varName[1]}$2`);
|
|
665
683
|
return value;
|
|
666
684
|
}
|
|
667
685
|
|
|
@@ -669,10 +687,12 @@ function replaceForVarNames(value, status) {
|
|
|
669
687
|
//#region src/compile/build/client/buildRun.ts
|
|
670
688
|
function buildRun(functionName, functionBody, status, b) {
|
|
671
689
|
functionBody = replaceForVarNames(functionBody, status);
|
|
690
|
+
addPushDevBoundary("run", functionName, status, b);
|
|
672
691
|
status.imports.add("$run");
|
|
673
|
-
b.append(
|
|
692
|
+
b.append("$run(() => {");
|
|
674
693
|
b.append(functionBody);
|
|
675
|
-
b.append("}
|
|
694
|
+
b.append(`}${status.options.dev === true ? `, "${functionName}"` : ""});`);
|
|
695
|
+
addPopDevBoundary(status, b);
|
|
676
696
|
}
|
|
677
697
|
|
|
678
698
|
//#endregion
|
|
@@ -684,24 +704,48 @@ function buildComponentNode(node, status, b, root = false) {
|
|
|
684
704
|
const propsName = componentHasProps ? nextVarName("props", status) : "undefined";
|
|
685
705
|
if (componentHasProps) {
|
|
686
706
|
status.imports.add("$watch");
|
|
687
|
-
|
|
707
|
+
let props = [];
|
|
708
|
+
let runs = [];
|
|
709
|
+
let bindingRuns = [];
|
|
688
710
|
for (let { name, value, reactive, fullyReactive } of node.attributes) if (name === "self" && node.tagName === "@component") {} else if (name.startsWith("&") && value != null && fullyReactive) {
|
|
689
711
|
name = name.substring(1);
|
|
690
|
-
|
|
691
|
-
|
|
712
|
+
props.push({
|
|
713
|
+
name,
|
|
714
|
+
value
|
|
715
|
+
});
|
|
716
|
+
runs.push(`${propsName}["${name}"] = ${value};`);
|
|
717
|
+
bindingRuns.push(`${value} = ${propsName}["${name}"];`);
|
|
692
718
|
} else if (name === "class" && value != null) {
|
|
693
719
|
status.imports.add("t_class");
|
|
694
720
|
const params = [value];
|
|
695
721
|
if (node.scopeStyles) params.push(`"torp-${status.styleHash}"`);
|
|
696
|
-
|
|
722
|
+
value = `t_class(${params.join(", ")})`;
|
|
723
|
+
props.push({
|
|
724
|
+
name,
|
|
725
|
+
value
|
|
726
|
+
});
|
|
727
|
+
runs.push(`${propsName}["${name}"] = ${value};`);
|
|
697
728
|
} else if (name === "style" && value != null) {
|
|
698
729
|
status.imports.add("t_style");
|
|
699
|
-
|
|
730
|
+
value = `t_style(${value})`;
|
|
731
|
+
props.push({
|
|
732
|
+
name,
|
|
733
|
+
value
|
|
734
|
+
});
|
|
735
|
+
runs.push(`${propsName}["${name}"] = ${value};`);
|
|
700
736
|
} else if (value != null) {
|
|
701
|
-
|
|
702
|
-
|
|
703
|
-
|
|
704
|
-
|
|
737
|
+
props.push({
|
|
738
|
+
name,
|
|
739
|
+
value
|
|
740
|
+
});
|
|
741
|
+
if (reactive) runs.push(`${propsName}["${name}"] = ${value};`);
|
|
742
|
+
} else props.push({
|
|
743
|
+
name,
|
|
744
|
+
value: "true"
|
|
745
|
+
});
|
|
746
|
+
b.append(`const ${propsName} = $watch({ ${replaceForVarNames(props.map((p) => `${p.name}: ${p.value}`).join(", "), status)} });`);
|
|
747
|
+
if (runs.length) buildRun("setProps", replaceForVarNames(runs.join("\n"), status), status, b);
|
|
748
|
+
if (bindingRuns.length) buildRun("setBindings", replaceForVarNames(bindingRuns.join("\n"), status), status, b);
|
|
705
749
|
if (root) {
|
|
706
750
|
status.imports.add("$run");
|
|
707
751
|
b.append(`
|
|
@@ -740,16 +784,14 @@ function buildComponentNode(node, status, b, root = false) {
|
|
|
740
784
|
b.append(`}`);
|
|
741
785
|
}
|
|
742
786
|
}
|
|
743
|
-
|
|
744
|
-
const compAnchorName = node.varName;
|
|
745
|
-
let renderParams = `${compParentName}, ${compAnchorName}, ${propsName}, $context`;
|
|
787
|
+
let renderParams = `${node.parentName}, ${node.varName}, ${propsName}, $context`;
|
|
746
788
|
if (slotsName !== "undefined") renderParams += `, ${slotsName}`;
|
|
747
789
|
let componentName = node.tagName;
|
|
748
790
|
if (componentName === "@component") {
|
|
749
791
|
let selfAttribute = node.attributes.find((a) => a.name === "self");
|
|
750
792
|
if (selfAttribute && selfAttribute.value && selfAttribute.fullyReactive) componentName = selfAttribute.value;
|
|
751
793
|
}
|
|
752
|
-
addMappedText("", `${componentName}(${renderParams})`, ";", node.
|
|
794
|
+
addMappedText("", `${componentName}(${renderParams})`, ";", node.span, status, b);
|
|
753
795
|
b.append("");
|
|
754
796
|
}
|
|
755
797
|
|
|
@@ -777,7 +819,7 @@ function trimMatched(text, startChar, endChar) {
|
|
|
777
819
|
function buildAwaitNode(node, status, b) {
|
|
778
820
|
const anchorName = node.varName;
|
|
779
821
|
const parentName = node.parentName;
|
|
780
|
-
const
|
|
822
|
+
const regionName = nextVarName("await_region", status);
|
|
781
823
|
const stateName = "$" + nextVarName("await_state", status);
|
|
782
824
|
const creatorsName = nextVarName("await_creators", status);
|
|
783
825
|
const awaitVarsName = nextVarName("await_vars", status);
|
|
@@ -790,7 +832,7 @@ function buildAwaitNode(node, status, b) {
|
|
|
790
832
|
operation: "@then",
|
|
791
833
|
statement: "then",
|
|
792
834
|
children: [],
|
|
793
|
-
|
|
835
|
+
span: {
|
|
794
836
|
start: 0,
|
|
795
837
|
end: 0
|
|
796
838
|
}
|
|
@@ -801,7 +843,7 @@ function buildAwaitNode(node, status, b) {
|
|
|
801
843
|
operation: "@catch",
|
|
802
844
|
statement: "catch",
|
|
803
845
|
children: [],
|
|
804
|
-
|
|
846
|
+
span: {
|
|
805
847
|
start: 0,
|
|
806
848
|
end: 0
|
|
807
849
|
}
|
|
@@ -811,43 +853,46 @@ function buildAwaitNode(node, status, b) {
|
|
|
811
853
|
const catchVar = trimMatched(catchBranch.statement.substring(5).trim(), "(", ")");
|
|
812
854
|
status.imports.add("$watch");
|
|
813
855
|
status.imports.add("$run");
|
|
814
|
-
status.imports.add("
|
|
856
|
+
status.imports.add("t_region");
|
|
815
857
|
status.imports.add("t_run_control");
|
|
816
858
|
status.imports.add("t_run_branch");
|
|
817
859
|
b.append("");
|
|
860
|
+
b.append("/* @await */");
|
|
861
|
+
addPushDevBoundary("control", `@${branches[0].statement}`, status, b);
|
|
818
862
|
b.append(`
|
|
819
|
-
|
|
820
|
-
const ${rangeName} = t_range();
|
|
863
|
+
const ${regionName} = t_region(${status.options.dev === true ? `"await"` : ""});
|
|
821
864
|
let ${stateName} = $watch({ index: -1 });
|
|
822
|
-
let ${creatorsName}: ((t_before: Node | null) => void)[] = []
|
|
823
|
-
b.append(`
|
|
865
|
+
let ${creatorsName}: ((t_before: Node | null) => void)[] = [];
|
|
824
866
|
let ${awaitVarsName} = { t_token: 0 };
|
|
825
|
-
$run(
|
|
867
|
+
$run(() => {`);
|
|
826
868
|
let index = 0;
|
|
827
869
|
buildAwaitBranch(awaitBranch, status, b, parentName, stateName, creatorsName, index++);
|
|
828
|
-
b.append(
|
|
829
|
-
|
|
830
|
-
|
|
831
|
-
|
|
832
|
-
|
|
833
|
-
|
|
870
|
+
b.append(`
|
|
871
|
+
${awaitVarsName}.t_token++;
|
|
872
|
+
((t_token) => {`);
|
|
873
|
+
awaitBranch.span.start += 7;
|
|
874
|
+
addMappedText("", replaceForVarNames(awaiterName, status), "", awaitBranch.span, status, b);
|
|
875
|
+
thenBranch.span.start -= 1;
|
|
876
|
+
addMappedText(".then((", replaceForVarNames(thenVar, status), ") => {", thenBranch.span, status, b);
|
|
834
877
|
b.append(`if (t_token === ${awaitVarsName}.t_token) {`);
|
|
835
878
|
buildAwaitBranch(thenBranch, status, b, parentName, stateName, creatorsName, index++);
|
|
836
879
|
b.append(`}
|
|
837
880
|
})`);
|
|
838
|
-
catchBranch.
|
|
839
|
-
addMappedText(".catch((", replaceForVarNames(catchVar, status), ") => {", catchBranch.
|
|
840
|
-
b.append(`
|
|
841
|
-
if (t_token === ${awaitVarsName}.t_token) {`);
|
|
881
|
+
catchBranch.span.start -= 1;
|
|
882
|
+
addMappedText(".catch((", replaceForVarNames(catchVar, status), ") => {", catchBranch.span, status, b);
|
|
883
|
+
b.append(`if (t_token === ${awaitVarsName}.t_token) {`);
|
|
842
884
|
buildAwaitBranch(catchBranch, status, b, parentName, stateName, creatorsName, index++);
|
|
843
885
|
b.append(`}
|
|
844
886
|
});
|
|
845
887
|
})(${awaitVarsName}.t_token);
|
|
846
|
-
});`);
|
|
888
|
+
}${status.options.dev === true ? `, "runAwait"` : ""});`);
|
|
847
889
|
b.append(`
|
|
848
|
-
t_run_control(${
|
|
849
|
-
|
|
850
|
-
|
|
890
|
+
t_run_control(${regionName}, ${anchorName}, (t_before) => {
|
|
891
|
+
const index = ${stateName}.index;`);
|
|
892
|
+
b.append(`t_run_branch(${regionName}, () => ${creatorsName}[index](t_before)${status.options.dev === true ? ", `branch ${index}`" : ""});`);
|
|
893
|
+
addPopDevBoundary(status, b);
|
|
894
|
+
b.append("});");
|
|
895
|
+
addPopDevBoundary(status, b);
|
|
851
896
|
b.append("");
|
|
852
897
|
}
|
|
853
898
|
function buildAwaitBranch(node, status, b, parentName, stateName, creatorsName, index) {
|
|
@@ -888,8 +933,8 @@ const forLoopRegex = /for\s*\((.+?);.*?;.*?\)/;
|
|
|
888
933
|
const forLoopVarsRegex = /(?:let\s+|var\s+){0,1}([^\s,;+=]+)(?:\s*=\s*[^,;]+){0,1}/g;
|
|
889
934
|
const forOfRegex = /for\s*\(\s*(?:let\s*|var\s*){0,1}(.+?)\s+(?:of|in).*?\)/;
|
|
890
935
|
function buildForNode(node, status, b) {
|
|
891
|
-
const
|
|
892
|
-
const
|
|
936
|
+
const parentName = node.parentName;
|
|
937
|
+
const anchorName = node.varName;
|
|
893
938
|
node = node.children[0];
|
|
894
939
|
const forVarNames = [];
|
|
895
940
|
const forIndexMatch = node.statement.match(forLoopRegex);
|
|
@@ -904,65 +949,76 @@ function buildForNode(node, status, b) {
|
|
|
904
949
|
else forVarNames.push(match);
|
|
905
950
|
}
|
|
906
951
|
}
|
|
907
|
-
const
|
|
952
|
+
const regionName = nextVarName("for_region", status);
|
|
953
|
+
const listItemsName = nextVarName("new_items", status);
|
|
954
|
+
const previousItemName = nextVarName("previous_item", status);
|
|
955
|
+
const nextItemName = nextVarName("next_item", status);
|
|
956
|
+
const newItemName = nextVarName("new_item", status);
|
|
957
|
+
const itemName = nextVarName("item", status);
|
|
958
|
+
const beforeName = nextVarName("before", status);
|
|
908
959
|
const key = node.children.find((n) => n.type === "control" && n.operation === "@key");
|
|
909
960
|
let keyStatement = key ? key.statement : "";
|
|
910
961
|
if (keyStatement) keyStatement = trimEnd(keyStatement.substring(keyStatement.indexOf("=") + 1).trim(), ";");
|
|
911
|
-
status.imports.add("
|
|
962
|
+
status.imports.add("t_region");
|
|
912
963
|
status.imports.add("t_run_list");
|
|
913
964
|
status.imports.add("t_list_item");
|
|
914
965
|
status.imports.add("ListItem");
|
|
915
966
|
b.append("");
|
|
967
|
+
b.append("/* @for */");
|
|
968
|
+
addPushDevBoundary("control", `@${node.statement}`, status, b);
|
|
916
969
|
b.append(`
|
|
917
|
-
|
|
918
|
-
|
|
919
|
-
|
|
920
|
-
|
|
921
|
-
|
|
922
|
-
|
|
923
|
-
|
|
924
|
-
|
|
925
|
-
|
|
926
|
-
|
|
927
|
-
|
|
970
|
+
let ${regionName} = t_region(${status.options.dev === true ? `"for"` : ""});
|
|
971
|
+
t_run_list(
|
|
972
|
+
${regionName},
|
|
973
|
+
${parentName},
|
|
974
|
+
${anchorName},
|
|
975
|
+
${status.options.dev === true ? "function createNewItems() {" : "() => {"}
|
|
976
|
+
let ${listItemsName}: ListItem[] = [];
|
|
977
|
+
let ${previousItemName} = ${regionName};
|
|
978
|
+
let ${nextItemName} = ${regionName}.nextRegion;`);
|
|
979
|
+
addMappedText("", `${replaceForVarNames(node.statement, status)}`, " {", node.span, status, b);
|
|
980
|
+
let params = [`{ ${forVarNames.join(",\n")} }`, keyStatement || "undefined"];
|
|
981
|
+
if (status.options.dev === true) params.push(`"for item"`);
|
|
928
982
|
b.append(`
|
|
929
|
-
let
|
|
930
|
-
|
|
931
|
-
|
|
932
|
-
|
|
933
|
-
|
|
934
|
-
}
|
|
935
|
-
${
|
|
936
|
-
return
|
|
983
|
+
let ${newItemName} = t_list_item(${params.join(", ")});
|
|
984
|
+
${newItemName}.previousRegion = ${previousItemName};
|
|
985
|
+
${previousItemName}.nextRegion = ${newItemName};
|
|
986
|
+
${previousItemName} = ${newItemName};
|
|
987
|
+
${listItemsName}.push(${newItemName});
|
|
988
|
+
}
|
|
989
|
+
${regionName}.nextRegion = ${nextItemName};
|
|
990
|
+
return ${listItemsName};
|
|
937
991
|
},
|
|
938
|
-
function createListItem(
|
|
939
|
-
|
|
940
|
-
|
|
941
|
-
status
|
|
992
|
+
${status.options.dev === true ? `function createListItem(${itemName}, ${beforeName}) {` : `(${itemName}, ${beforeName}) => {`}`);
|
|
993
|
+
let oldForVarNames = status.forVarNames;
|
|
994
|
+
status.forVarNames = [...status.forVarNames, ...forVarNames.map((v) => [v, `${itemName}.data.${v}`])];
|
|
995
|
+
buildForItem(node, status, b, parentName, beforeName, itemName);
|
|
996
|
+
status.forVarNames = oldForVarNames;
|
|
942
997
|
b.append(`},
|
|
943
|
-
function updateListItem(t_old_item, t_new_item) {`);
|
|
998
|
+
${status.options.dev === true ? "function updateListItem(t_old_item, t_new_item) {" : "(t_old_item, t_new_item) => {"}`);
|
|
944
999
|
for (let varName of forVarNames) b.append(`t_old_item.data.${varName} = t_new_item.data.${varName};`);
|
|
945
1000
|
b.append(`}
|
|
946
1001
|
);`);
|
|
1002
|
+
addPopDevBoundary(status, b);
|
|
947
1003
|
b.append("");
|
|
948
1004
|
}
|
|
949
|
-
function buildForItem(node, status, b, parentName) {
|
|
950
|
-
const
|
|
951
|
-
status.imports.add("
|
|
952
|
-
b.append(`let ${
|
|
953
|
-
buildFragment(node, status, b, parentName,
|
|
1005
|
+
function buildForItem(node, status, b, parentName, beforeName, itemName) {
|
|
1006
|
+
const oldRegionName = nextVarName("old_region", status);
|
|
1007
|
+
status.imports.add("t_push_region");
|
|
1008
|
+
b.append(`let ${oldRegionName} = t_push_region(${itemName});`);
|
|
1009
|
+
buildFragment(node, status, b, parentName, beforeName);
|
|
954
1010
|
status.fragmentStack.push({
|
|
955
1011
|
fragment: node.fragment,
|
|
956
1012
|
path: ""
|
|
957
1013
|
});
|
|
958
1014
|
for (let child of node.children) {
|
|
959
1015
|
if (isControlNode(child) && child.operation === "@key") continue;
|
|
960
|
-
buildNode(child, status, b, parentName,
|
|
1016
|
+
buildNode(child, status, b, parentName, beforeName);
|
|
961
1017
|
}
|
|
962
1018
|
status.fragmentStack.pop();
|
|
963
|
-
buildAddFragment(node, status, b, parentName,
|
|
964
|
-
status.imports.add("
|
|
965
|
-
b.append(`
|
|
1019
|
+
buildAddFragment(node, status, b, parentName, beforeName);
|
|
1020
|
+
status.imports.add("t_pop_region");
|
|
1021
|
+
b.append(`t_pop_region(${oldRegionName});`);
|
|
966
1022
|
}
|
|
967
1023
|
|
|
968
1024
|
//#endregion
|
|
@@ -970,30 +1026,30 @@ function buildForItem(node, status, b, parentName) {
|
|
|
970
1026
|
function buildHtmlNode(node, status, b) {
|
|
971
1027
|
const htmlAnchorName = node.varName;
|
|
972
1028
|
const htmlParentName = node.parentName || htmlAnchorName + ".parentNode";
|
|
973
|
-
const
|
|
1029
|
+
const htmlRegionName = nextVarName("html_region", status);
|
|
974
1030
|
node = node.children[0];
|
|
975
|
-
status.imports.add("
|
|
1031
|
+
status.imports.add("t_region");
|
|
976
1032
|
status.imports.add("t_run_control");
|
|
977
1033
|
b.append("");
|
|
978
1034
|
b.append(`
|
|
979
1035
|
/* @html */
|
|
980
|
-
const ${
|
|
981
|
-
t_run_control(${
|
|
982
|
-
buildHtmlBranch(node, status, b, htmlParentName,
|
|
983
|
-
b.append("})
|
|
1036
|
+
const ${htmlRegionName} = t_region(${status.options.dev === true ? `"html"` : ""});
|
|
1037
|
+
t_run_control(${htmlRegionName}, ${htmlAnchorName}, (t_before) => {`);
|
|
1038
|
+
buildHtmlBranch(node, status, b, htmlParentName, htmlRegionName);
|
|
1039
|
+
b.append(`}${status.options.dev === true ? ", \"html\"" : ""});`);
|
|
984
1040
|
b.append("");
|
|
985
1041
|
}
|
|
986
|
-
function buildHtmlBranch(node, status, b, parentName,
|
|
1042
|
+
function buildHtmlBranch(node, status, b, parentName, regionName) {
|
|
987
1043
|
status.imports.add("t_run_branch");
|
|
988
1044
|
b.append(`${node.statement};`);
|
|
989
|
-
b.append(`t_run_branch(${
|
|
1045
|
+
b.append(`t_run_branch(${regionName}, () => {`);
|
|
990
1046
|
const templateName = nextVarName("template", status);
|
|
991
1047
|
const fragmentName = `t_fragment_${node.fragment.number}`;
|
|
992
1048
|
b.append(`const ${templateName} = document.createElement("template");`);
|
|
993
1049
|
b.append(`${templateName}.innerHTML = ${node.statement};`);
|
|
994
1050
|
b.append(`let ${fragmentName} = ${templateName}.content.cloneNode(true) as DocumentFragment;`);
|
|
995
1051
|
buildAddFragment(node, status, b, parentName, "t_before");
|
|
996
|
-
b.append(`});`);
|
|
1052
|
+
b.append(`}${status.options.dev === true ? ", \"html\"" : ""});`);
|
|
997
1053
|
}
|
|
998
1054
|
|
|
999
1055
|
//#endregion
|
|
@@ -1001,7 +1057,7 @@ function buildHtmlBranch(node, status, b, parentName, rangeName) {
|
|
|
1001
1057
|
function buildIfNode(node, status, b) {
|
|
1002
1058
|
const anchorName = node.varName;
|
|
1003
1059
|
const parentName = node.parentName || anchorName + ".parentNode";
|
|
1004
|
-
const
|
|
1060
|
+
const regionName = nextVarName("if_region", status);
|
|
1005
1061
|
const stateName = "$" + nextVarName("if_state", status);
|
|
1006
1062
|
const creatorsName = nextVarName("if_creators", status);
|
|
1007
1063
|
const branches = node.children.filter((n) => isControlNode(n));
|
|
@@ -1010,34 +1066,38 @@ function buildIfNode(node, status, b) {
|
|
|
1010
1066
|
operation: "@else",
|
|
1011
1067
|
statement: "else",
|
|
1012
1068
|
children: [],
|
|
1013
|
-
|
|
1069
|
+
span: {
|
|
1014
1070
|
start: 0,
|
|
1015
1071
|
end: 0
|
|
1016
1072
|
}
|
|
1017
1073
|
});
|
|
1018
1074
|
status.imports.add("$watch");
|
|
1019
1075
|
status.imports.add("$run");
|
|
1020
|
-
status.imports.add("
|
|
1076
|
+
status.imports.add("t_region");
|
|
1021
1077
|
status.imports.add("t_run_control");
|
|
1022
1078
|
status.imports.add("t_run_branch");
|
|
1023
1079
|
b.append("");
|
|
1080
|
+
b.append("/* @if */");
|
|
1081
|
+
addPushDevBoundary("control", `@${branches[0].statement}`, status, b);
|
|
1024
1082
|
b.append(`
|
|
1025
|
-
|
|
1026
|
-
const ${rangeName} = t_range();
|
|
1083
|
+
const ${regionName} = t_region(${status.options.dev === true ? `"if"` : ""});
|
|
1027
1084
|
let ${stateName} = $watch({ index: -1 });
|
|
1028
|
-
let ${creatorsName}: ((t_before: Node | null) => void)[] = []
|
|
1029
|
-
|
|
1085
|
+
let ${creatorsName}: ((t_before: Node | null) => void)[] = [];
|
|
1086
|
+
$run(() => {`);
|
|
1030
1087
|
let index = 0;
|
|
1031
1088
|
for (let branch of branches) buildIfBranch(branch, status, b, parentName, stateName, creatorsName, index++);
|
|
1032
|
-
b.append(`});`);
|
|
1089
|
+
b.append(`}${status.options.dev === true ? `, "runIf"` : ""});`);
|
|
1033
1090
|
b.append(`
|
|
1034
|
-
t_run_control(${
|
|
1035
|
-
|
|
1036
|
-
|
|
1091
|
+
t_run_control(${regionName}, ${anchorName}, (t_before) => {
|
|
1092
|
+
const index = ${stateName}.index;`);
|
|
1093
|
+
b.append(`t_run_branch(${regionName}, () => ${creatorsName}[index](t_before)${status.options.dev === true ? ", `branch ${index}`" : ""});`);
|
|
1094
|
+
addPopDevBoundary(status, b);
|
|
1095
|
+
b.append("});");
|
|
1096
|
+
addPopDevBoundary(status, b);
|
|
1037
1097
|
b.append("");
|
|
1038
1098
|
}
|
|
1039
1099
|
function buildIfBranch(node, status, b, parentName, stateName, creatorsName, index) {
|
|
1040
|
-
addMappedText("", `${replaceForVarNames(node.statement, status)}`, " {", node.
|
|
1100
|
+
addMappedText("", `${replaceForVarNames(node.statement, status)}`, " {", node.span, status, b);
|
|
1041
1101
|
if (node.children.length > 0) {
|
|
1042
1102
|
b.append(`${creatorsName}[${index}] = (t_before) => {`);
|
|
1043
1103
|
buildFragment(node, status, b, parentName, "t_before");
|
|
@@ -1059,23 +1119,23 @@ function buildIfBranch(node, status, b, parentName, stateName, creatorsName, ind
|
|
|
1059
1119
|
function buildReplaceNode(node, status, b) {
|
|
1060
1120
|
const replaceAnchorName = node.varName;
|
|
1061
1121
|
const replaceParentName = node.parentName || replaceAnchorName + ".parentNode";
|
|
1062
|
-
const
|
|
1122
|
+
const replaceRegionName = nextVarName("replace_region", status);
|
|
1063
1123
|
node = node.children[0];
|
|
1064
|
-
status.imports.add("
|
|
1124
|
+
status.imports.add("t_region");
|
|
1065
1125
|
status.imports.add("t_run_control");
|
|
1066
1126
|
b.append("");
|
|
1067
1127
|
b.append(`
|
|
1068
1128
|
/* @replace */
|
|
1069
|
-
const ${
|
|
1070
|
-
t_run_control(${
|
|
1071
|
-
buildReplaceBranch(node, status, b, replaceParentName,
|
|
1072
|
-
b.append("})
|
|
1129
|
+
const ${replaceRegionName} = t_region(${status.options.dev === true ? `"replace"` : ""});
|
|
1130
|
+
t_run_control(${replaceRegionName}, ${replaceAnchorName}, (t_before) => {`);
|
|
1131
|
+
buildReplaceBranch(node, status, b, replaceParentName, replaceRegionName);
|
|
1132
|
+
b.append(`}${status.options.dev === true ? ", \"replace\"" : ""});`);
|
|
1073
1133
|
b.append("");
|
|
1074
1134
|
}
|
|
1075
|
-
function buildReplaceBranch(node, status, b, parentName,
|
|
1135
|
+
function buildReplaceBranch(node, status, b, parentName, regionName) {
|
|
1076
1136
|
status.imports.add("t_run_branch");
|
|
1077
1137
|
b.append(`${replaceForVarNames(node.statement, status)};`);
|
|
1078
|
-
b.append(`t_run_branch(${
|
|
1138
|
+
b.append(`t_run_branch(${regionName}, () => {`);
|
|
1079
1139
|
buildFragment(node, status, b, parentName, "t_before");
|
|
1080
1140
|
status.fragmentStack.push({
|
|
1081
1141
|
fragment: node.fragment,
|
|
@@ -1084,14 +1144,14 @@ function buildReplaceBranch(node, status, b, parentName, rangeName) {
|
|
|
1084
1144
|
for (let child of node.children) buildNode(child, status, b, parentName, "t_before");
|
|
1085
1145
|
status.fragmentStack.pop();
|
|
1086
1146
|
buildAddFragment(node, status, b, parentName, "t_before");
|
|
1087
|
-
b.append(`});`);
|
|
1147
|
+
b.append(`}${status.options.dev === true ? ", \"replace\"" : ""});`);
|
|
1088
1148
|
}
|
|
1089
1149
|
|
|
1090
1150
|
//#endregion
|
|
1091
1151
|
//#region src/compile/build/client/buildScriptNode.ts
|
|
1092
1152
|
function buildScriptNode(node, status, b) {
|
|
1093
1153
|
b.append(`/* ${node.operation} */`);
|
|
1094
|
-
addMappedText("", `${maybeAppend$1(node.statement, ";")}`, "", node.
|
|
1154
|
+
addMappedText("", `${maybeAppend$1(node.statement, ";")}`, "", node.span, status, b);
|
|
1095
1155
|
}
|
|
1096
1156
|
function maybeAppend$1(text, end) {
|
|
1097
1157
|
if (!text.endsWith(end)) text += end;
|
|
@@ -1103,7 +1163,7 @@ function maybeAppend$1(text, end) {
|
|
|
1103
1163
|
function buildSwitchNode(node, status, b) {
|
|
1104
1164
|
const anchorName = node.varName;
|
|
1105
1165
|
const parentName = node.parentName;
|
|
1106
|
-
const
|
|
1166
|
+
const regionName = nextVarName("switch_region", status);
|
|
1107
1167
|
const stateName = "$" + nextVarName("switch_state", status);
|
|
1108
1168
|
const creatorsName = nextVarName("switch_creators", status);
|
|
1109
1169
|
const branches = node.children.filter((n) => isControlNode(n));
|
|
@@ -1112,38 +1172,41 @@ function buildSwitchNode(node, status, b) {
|
|
|
1112
1172
|
operation: "@default",
|
|
1113
1173
|
statement: "default",
|
|
1114
1174
|
children: [],
|
|
1115
|
-
|
|
1175
|
+
span: {
|
|
1116
1176
|
start: 0,
|
|
1117
1177
|
end: 0
|
|
1118
1178
|
}
|
|
1119
1179
|
});
|
|
1120
1180
|
status.imports.add("$watch");
|
|
1121
1181
|
status.imports.add("$run");
|
|
1122
|
-
status.imports.add("
|
|
1182
|
+
status.imports.add("t_region");
|
|
1123
1183
|
status.imports.add("t_run_control");
|
|
1124
1184
|
status.imports.add("t_run_branch");
|
|
1125
1185
|
b.append("");
|
|
1186
|
+
b.append("/* @switch */");
|
|
1187
|
+
addPushDevBoundary("control", `@${branches[0].statement}`, status, b);
|
|
1126
1188
|
b.append(`
|
|
1127
|
-
|
|
1128
|
-
const ${rangeName} = t_range();
|
|
1189
|
+
const ${regionName} = t_region(${status.options.dev === true ? `"switch"` : ""});
|
|
1129
1190
|
let ${stateName} = $watch({ index: -1 });
|
|
1130
|
-
let ${creatorsName}: ((t_before: Node | null) => void)[] = []
|
|
1131
|
-
|
|
1132
|
-
|
|
1191
|
+
let ${creatorsName}: ((t_before: Node | null) => void)[] = [];
|
|
1192
|
+
$run(() => {`);
|
|
1193
|
+
addMappedText("", `${replaceForVarNames(node.statement, status)}`, " {", node.span, status, b);
|
|
1133
1194
|
let index = 0;
|
|
1134
|
-
addMappedText("", `${replaceForVarNames(node.statement, status)}`, " {", node.range, status, b);
|
|
1135
1195
|
for (let branch of branches) buildSwitchBranch(branch, status, b, parentName, stateName, creatorsName, index++);
|
|
1136
1196
|
b.append(`
|
|
1137
1197
|
}
|
|
1138
|
-
});`);
|
|
1198
|
+
}${status.options.dev === true ? `, "runSwitch"` : ""});`);
|
|
1139
1199
|
b.append(`
|
|
1140
|
-
t_run_control(${
|
|
1141
|
-
|
|
1142
|
-
|
|
1200
|
+
t_run_control(${regionName}, ${anchorName}, (t_before) => {
|
|
1201
|
+
const index = ${stateName}.index;`);
|
|
1202
|
+
b.append(`t_run_branch(${regionName}, () => ${creatorsName}[index](t_before)${status.options.dev === true ? ", `branch ${index}`" : ""});`);
|
|
1203
|
+
addPopDevBoundary(status, b);
|
|
1204
|
+
b.append("});");
|
|
1205
|
+
addPopDevBoundary(status, b);
|
|
1143
1206
|
b.append("");
|
|
1144
1207
|
}
|
|
1145
1208
|
function buildSwitchBranch(node, status, b, parentName, stateName, creatorsName, index) {
|
|
1146
|
-
addMappedText("", `${replaceForVarNames(node.statement, status)}`, " {", node.
|
|
1209
|
+
addMappedText("", `${replaceForVarNames(node.statement, status)}`, " {", node.span, status, b);
|
|
1147
1210
|
if (node.children.length > 0) {
|
|
1148
1211
|
b.append(`${creatorsName}[${index}] = (t_before) => {`);
|
|
1149
1212
|
buildFragment(node, status, b, parentName, "t_before");
|
|
@@ -1223,12 +1286,12 @@ function buildMount(functionName, functionBody, status, b) {
|
|
|
1223
1286
|
|
|
1224
1287
|
//#endregion
|
|
1225
1288
|
//#region src/compile/build/client/stashRun.ts
|
|
1226
|
-
function stashRun(fragment, functionStart, value, functionEnd,
|
|
1289
|
+
function stashRun(fragment, functionStart, value, functionEnd, span, status) {
|
|
1227
1290
|
value = replaceForVarNames(value, status);
|
|
1228
1291
|
let functionBody = functionStart + value + functionEnd;
|
|
1229
1292
|
fragment.effects.push({
|
|
1230
1293
|
functionBody,
|
|
1231
|
-
|
|
1294
|
+
spans: [span],
|
|
1232
1295
|
offsets: [functionStart.length],
|
|
1233
1296
|
lengths: [value.length]
|
|
1234
1297
|
});
|
|
@@ -1263,7 +1326,7 @@ function buildDynamicElementNode(node, status, b) {
|
|
|
1263
1326
|
status.imports.add("$run");
|
|
1264
1327
|
status.imports.add("t_dynamic");
|
|
1265
1328
|
let selfValue = selfAttribute.value;
|
|
1266
|
-
b.append(
|
|
1329
|
+
b.append("$run(() => {");
|
|
1267
1330
|
b.append(`${node.varName} = t_dynamic(${node.varName}, ${selfValue});`);
|
|
1268
1331
|
let parentName = node.varName;
|
|
1269
1332
|
buildFragment(node, status, b, parentName, "null");
|
|
@@ -1274,7 +1337,7 @@ function buildDynamicElementNode(node, status, b) {
|
|
|
1274
1337
|
for (let child of node.children) buildNode(child, status, b, parentName, "null");
|
|
1275
1338
|
status.fragmentStack.pop();
|
|
1276
1339
|
buildAddFragment(node, status, b, parentName, "null");
|
|
1277
|
-
b.append(`});`);
|
|
1340
|
+
b.append(`}${status.options.dev === true ? `, "setDynamic"` : ""});`);
|
|
1278
1341
|
}
|
|
1279
1342
|
}
|
|
1280
1343
|
function buildTitleNode(node, status, b) {
|
|
@@ -1295,25 +1358,24 @@ function buildTitleNode(node, status, b) {
|
|
|
1295
1358
|
else content = `\`${content.replaceAll("{", "${t_fmt(").replaceAll("}", ")}")}\``;
|
|
1296
1359
|
} else content = `"${content}"`;
|
|
1297
1360
|
status.imports.add("$run");
|
|
1361
|
+
b.append("$run(() => {");
|
|
1298
1362
|
b.append(`
|
|
1299
|
-
$run(function runTitle() {
|
|
1300
1363
|
const t_old_title = document.title;
|
|
1301
1364
|
document.title = ${content};
|
|
1302
1365
|
return () => document.title = t_old_title;
|
|
1303
|
-
});`);
|
|
1366
|
+
}${status.options.dev === true ? `, "runTitle"` : ""});`);
|
|
1304
1367
|
}
|
|
1305
1368
|
function buildHeadNode(node, status, b) {
|
|
1306
1369
|
status.imports.add("$run");
|
|
1370
|
+
b.append("$run(() => {");
|
|
1307
1371
|
b.append(`
|
|
1308
|
-
$run(function runHead() {
|
|
1309
1372
|
const t_headel = document.createElement("${node.tagName}");
|
|
1310
1373
|
document.getElementsByTagName("head")[0].appendChild(t_headel);`);
|
|
1311
1374
|
for (let { name, value } of node.attributes) if (value != null) {
|
|
1312
1375
|
status.imports.add("t_attribute");
|
|
1313
1376
|
b.append(`t_attribute(t_headel, "${name}", ${value});`);
|
|
1314
1377
|
}
|
|
1315
|
-
b.append(`
|
|
1316
|
-
});`);
|
|
1378
|
+
b.append(`}${status.options.dev === true ? `, "runHead"` : ""});`);
|
|
1317
1379
|
}
|
|
1318
1380
|
function buildElementAttributes$1(node, varName, status, b) {
|
|
1319
1381
|
let fragment = status.fragmentStack.at(-1)?.fragment;
|
|
@@ -1323,7 +1385,7 @@ function buildElementAttributes$1(node, varName, status, b) {
|
|
|
1323
1385
|
let { value, fullyReactive } = refAttribute;
|
|
1324
1386
|
if (value != null && fullyReactive) b.append(`${value} = ${varName};`);
|
|
1325
1387
|
}
|
|
1326
|
-
for (let { name, value, reactive, range } of node.attributes) if (name === "self" && node.tagName === "@element") {} else if (name === "&ref") {} else if (value != null && reactive) if (name === "&group") buildBindGroupAttribute(node, varName, value, status, b);
|
|
1388
|
+
for (let { name, value, reactive, span: range } of node.attributes) if (name === "self" && node.tagName === "@element") {} else if (name === "&ref") {} else if (value != null && reactive) if (name === "&group") buildBindGroupAttribute(node, varName, value, status, b);
|
|
1327
1389
|
else if (name === "&value" || name === "&checked") buildBindAttribute(node, varName, name, value, status, b);
|
|
1328
1390
|
else if (name === "onmount") buildMount("elMount", `return (${trimEnd(value.trim(), ";")})(${varName});`, status, b);
|
|
1329
1391
|
else if (name.startsWith("on")) buildEventAttribute(varName, name, value, range, status, b);
|
|
@@ -1332,8 +1394,7 @@ function buildElementAttributes$1(node, varName, status, b) {
|
|
|
1332
1394
|
status.imports.add("t_class");
|
|
1333
1395
|
const params = [value];
|
|
1334
1396
|
if (node.scopeStyles) params.push(`"torp-${status.styleHash}"`);
|
|
1335
|
-
|
|
1336
|
-
stashRun(fragment, `${varName}.${propName} = t_class(`, params.join(", "), ");", range, status);
|
|
1397
|
+
stashRun(fragment, `${varName}.${status.ns ? "className.baseVal" : "className"} = t_class(`, params.join(", "), ");", range, status);
|
|
1337
1398
|
} else if (name === "style") {
|
|
1338
1399
|
status.imports.add("t_style");
|
|
1339
1400
|
stashRun(fragment, `${varName}.setAttribute("style", t_style(`, value, "));", range, status);
|
|
@@ -1351,8 +1412,7 @@ function buildBindGroupAttribute(node, varName, value, status, b) {
|
|
|
1351
1412
|
let inputValue = node.attributes.find((a) => a.name === "value")?.value;
|
|
1352
1413
|
let set = `${value} == ${inputValue}`;
|
|
1353
1414
|
let propName = "checked";
|
|
1354
|
-
|
|
1355
|
-
buildRun("setBinding", `${setAttribute};`, status, b);
|
|
1415
|
+
buildRun("setBinding", `${`${varName}.${propName} = ${set}`};`, status, b);
|
|
1356
1416
|
status.imports.add("t_event");
|
|
1357
1417
|
b.append(`t_event(${varName}, "${eventName}", (e) => {
|
|
1358
1418
|
if (e.target.${propName}) ${value} = ${inputValue};
|
|
@@ -1381,17 +1441,15 @@ function buildBindAttribute(node, varName, name, value, status, b) {
|
|
|
1381
1441
|
}
|
|
1382
1442
|
} else if (node.tagName === "select") eventName = "change";
|
|
1383
1443
|
let set = `${value} || ${defaultValue}`;
|
|
1384
|
-
|
|
1385
|
-
const setAttribute = `${varName}.${propName} = ${set}`;
|
|
1386
|
-
buildRun("setBinding", `${setAttribute};`, status, b);
|
|
1444
|
+
buildRun("setBinding", `${`${varName}.${name.substring(1)} = ${set}`};`, status, b);
|
|
1387
1445
|
status.imports.add("t_event");
|
|
1388
1446
|
b.append(`t_event(${varName}, "${eventName}", (e) => ${value} = ${inputValue});`);
|
|
1389
1447
|
}
|
|
1390
|
-
function buildEventAttribute(varName, name, value,
|
|
1448
|
+
function buildEventAttribute(varName, name, value, span, status, b) {
|
|
1391
1449
|
value = replaceForVarNames(value, status);
|
|
1392
1450
|
const eventName = name.substring(2);
|
|
1393
1451
|
status.imports.add("t_event");
|
|
1394
|
-
addMappedText(`t_event(${varName}, "${eventName}", `, value, `);`,
|
|
1452
|
+
addMappedText(`t_event(${varName}, "${eventName}", `, value, `);`, span, status, b);
|
|
1395
1453
|
}
|
|
1396
1454
|
function buildTransitionAttribute(node, varName, name, value, status, b) {
|
|
1397
1455
|
value = replaceForVarNames(value, status);
|
|
@@ -1399,56 +1457,26 @@ function buildTransitionAttribute(node, varName, name, value, status, b) {
|
|
|
1399
1457
|
let entryVarName = nextVarName("trans_in", status);
|
|
1400
1458
|
let exitVarName = nextVarName("trans_out", status);
|
|
1401
1459
|
if (name === "transition") {
|
|
1402
|
-
b.append(`const ${entryVarName} = ${
|
|
1460
|
+
b.append(`const ${entryVarName} = (${value})(${varName});`);
|
|
1403
1461
|
b.append(`const ${exitVarName} = ${entryVarName};`);
|
|
1404
1462
|
b.append(`t_animate(${varName}, ${entryVarName}, ${exitVarName});`);
|
|
1405
1463
|
} else if (name === "transition-in") {
|
|
1406
1464
|
let outAttribute = node.attributes.find((a) => a.name === "transition-out");
|
|
1407
1465
|
if (outAttribute && outAttribute.value && outAttribute.fullyReactive) {
|
|
1408
1466
|
let outValue = outAttribute.value;
|
|
1409
|
-
b.append(`const ${entryVarName} = ${
|
|
1410
|
-
b.append(`const ${exitVarName} = ${
|
|
1467
|
+
b.append(`const ${entryVarName} = (${value})(${varName});`);
|
|
1468
|
+
b.append(`const ${exitVarName} = (${outValue})(${varName});`);
|
|
1411
1469
|
b.append(`t_animate(${varName}, ${entryVarName}, ${exitVarName});`);
|
|
1412
1470
|
} else {
|
|
1413
|
-
b.append(`const ${entryVarName} = ${
|
|
1471
|
+
b.append(`const ${entryVarName} = (${value})(${varName});`);
|
|
1414
1472
|
b.append(`t_animate(${varName}, ${entryVarName});`);
|
|
1415
1473
|
}
|
|
1416
1474
|
} else if (name === "transition-out") if (node.attributes.find((a) => a.name === "transition-in")) return;
|
|
1417
1475
|
else {
|
|
1418
|
-
b.append(`const ${exitVarName} = ${
|
|
1476
|
+
b.append(`const ${exitVarName} = (${value})(${varName});`);
|
|
1419
1477
|
b.append(`t_animate(${varName}, null, ${entryVarName});`);
|
|
1420
1478
|
}
|
|
1421
1479
|
}
|
|
1422
|
-
function getAnimationDetails(value) {
|
|
1423
|
-
let parts = [];
|
|
1424
|
-
let start = 0;
|
|
1425
|
-
let squareCount = 0;
|
|
1426
|
-
let curlyCount = 0;
|
|
1427
|
-
for (let i = 0; i < value.length; i++) switch (value[i]) {
|
|
1428
|
-
case ",":
|
|
1429
|
-
if (squareCount === 0 && curlyCount === 0) {
|
|
1430
|
-
parts.push(value.substring(start, i));
|
|
1431
|
-
start = i + 1;
|
|
1432
|
-
}
|
|
1433
|
-
break;
|
|
1434
|
-
case "[":
|
|
1435
|
-
squareCount += 1;
|
|
1436
|
-
break;
|
|
1437
|
-
case "]":
|
|
1438
|
-
squareCount -= 1;
|
|
1439
|
-
break;
|
|
1440
|
-
case "{":
|
|
1441
|
-
curlyCount += 1;
|
|
1442
|
-
break;
|
|
1443
|
-
case "}":
|
|
1444
|
-
curlyCount -= 1;
|
|
1445
|
-
break;
|
|
1446
|
-
}
|
|
1447
|
-
parts.push(value.substring(start));
|
|
1448
|
-
let keyframes = parts[0]?.trim();
|
|
1449
|
-
let options = parts[1]?.trim();
|
|
1450
|
-
return `{ ${[`keyframes: ${keyframes}`, options ? `options: ${options}` : null].filter(Boolean).join(", ")} }`;
|
|
1451
|
-
}
|
|
1452
1480
|
|
|
1453
1481
|
//#endregion
|
|
1454
1482
|
//#region src/compile/build/client/buildRootNode.ts
|
|
@@ -1533,7 +1561,7 @@ function endOfString(char, content, start) {
|
|
|
1533
1561
|
|
|
1534
1562
|
//#endregion
|
|
1535
1563
|
//#region src/compile/build/client/stashRunWithOffsets.ts
|
|
1536
|
-
function stashRunWithOffsets(fragment, functionBody,
|
|
1564
|
+
function stashRunWithOffsets(fragment, functionBody, spans, offsets, lengths, status) {
|
|
1537
1565
|
for (let i = 0; i < offsets.length; i++) {
|
|
1538
1566
|
const oldLength = functionBody.length;
|
|
1539
1567
|
functionBody = functionBody.substring(0, offsets[i]) + replaceForVarNames(functionBody.substring(offsets[i], offsets[i] + lengths[i]), status) + functionBody.substring(offsets[i] + lengths[i]);
|
|
@@ -1543,7 +1571,7 @@ function stashRunWithOffsets(fragment, functionBody, ranges, offsets, lengths, s
|
|
|
1543
1571
|
}
|
|
1544
1572
|
fragment.effects.push({
|
|
1545
1573
|
functionBody,
|
|
1546
|
-
|
|
1574
|
+
spans,
|
|
1547
1575
|
offsets,
|
|
1548
1576
|
lengths
|
|
1549
1577
|
});
|
|
@@ -1622,7 +1650,7 @@ function buildTextNode(node, status) {
|
|
|
1622
1650
|
offsetChange += functionBody.length;
|
|
1623
1651
|
offsets.map((_, i) => offsets[i] += offsetChange);
|
|
1624
1652
|
functionBody += `${textContent};`;
|
|
1625
|
-
stashRunWithOffsets(fragment, functionBody, node.
|
|
1653
|
+
stashRunWithOffsets(fragment, functionBody, node.spans, offsets, lengths, status);
|
|
1626
1654
|
}
|
|
1627
1655
|
}
|
|
1628
1656
|
|
|
@@ -1666,9 +1694,9 @@ const importsMap$1 = {
|
|
|
1666
1694
|
$unwrap: "import { $unwrap } from \"${folder}\";",
|
|
1667
1695
|
$peek: "import { $peek } from \"${folder}\";",
|
|
1668
1696
|
$batch: "import { $batch } from \"${folder}\";",
|
|
1669
|
-
|
|
1670
|
-
|
|
1671
|
-
|
|
1697
|
+
t_region: "import { t_region } from \"${folder}\";",
|
|
1698
|
+
t_push_region: "import { t_push_region } from \"${folder}\";",
|
|
1699
|
+
t_pop_region: "import { t_pop_region } from \"${folder}\";",
|
|
1672
1700
|
t_run_control: "import { t_run_control } from \"${folder}\";",
|
|
1673
1701
|
t_run_branch: "import { t_run_branch } from \"${folder}\";",
|
|
1674
1702
|
t_list_item: "import { t_list_item } from \"${folder}\";",
|
|
@@ -1694,7 +1722,10 @@ const importsMap$1 = {
|
|
|
1694
1722
|
t_cmt: "import { t_cmt } from \"${folder}\";",
|
|
1695
1723
|
t_print: "import { t_print } from \"${folder}\";",
|
|
1696
1724
|
ListItem: "import { type ListItem } from \"${folder}\";",
|
|
1697
|
-
SlotRender: "import { type SlotRender } from \"${folder}\";"
|
|
1725
|
+
SlotRender: "import { type SlotRender } from \"${folder}\";",
|
|
1726
|
+
devContext: "import { devContext } from \"${folder}/dev\";",
|
|
1727
|
+
t_push_dev_bound: "import { t_push_dev_bound } from \"${folder}/dev\";",
|
|
1728
|
+
t_pop_dev_bound: "import { t_pop_dev_bound } from \"${folder}/dev\";"
|
|
1698
1729
|
};
|
|
1699
1730
|
function buildCode(template, map, options) {
|
|
1700
1731
|
let b = new Builder(options?.mapped);
|
|
@@ -1705,8 +1736,10 @@ function buildCode(template, map, options) {
|
|
|
1705
1736
|
if (imports.size) {
|
|
1706
1737
|
b.prepend("");
|
|
1707
1738
|
for (let imp of Array.from(imports).sort().reverse()) {
|
|
1708
|
-
|
|
1709
|
-
|
|
1739
|
+
let importStatement = importsMap$1[imp] ?? imp;
|
|
1740
|
+
let folder = options?.renderFolder ?? "@torpor/view";
|
|
1741
|
+
importStatement = importStatement.replace("${folder}", folder);
|
|
1742
|
+
b.prepend(importStatement);
|
|
1710
1743
|
}
|
|
1711
1744
|
}
|
|
1712
1745
|
if (options?.mapped) {
|
|
@@ -1744,6 +1777,7 @@ function buildTemplate(template, map, imports, b, options) {
|
|
|
1744
1777
|
b.append(params.join(",\n"));
|
|
1745
1778
|
} else if (chunk.script === ") /* @return_type */ {") b.append("): void {");
|
|
1746
1779
|
else if (chunk.script === "/* @start */") {
|
|
1780
|
+
addPushDevBoundary("component", current.name || "Anon Component", status, b);
|
|
1747
1781
|
if (current.contextProps?.length) b.append(`$context = Object.assign({}, $context);`);
|
|
1748
1782
|
b.append("$peek(() => { /**/");
|
|
1749
1783
|
b.append("");
|
|
@@ -1764,10 +1798,11 @@ function buildTemplate(template, map, imports, b, options) {
|
|
|
1764
1798
|
status.inHead = false;
|
|
1765
1799
|
}
|
|
1766
1800
|
} else if (chunk.script === "/* @style */") {} else if (chunk.script === "/* @end */") {
|
|
1801
|
+
addPopDevBoundary(status, b);
|
|
1767
1802
|
b.append("/**/ });");
|
|
1768
1803
|
currentIndex += 1;
|
|
1769
1804
|
current = template.components[currentIndex];
|
|
1770
|
-
} else addMappedText("", chunk.script, "", chunk.
|
|
1805
|
+
} else addMappedText("", chunk.script, "", chunk.span, status, b);
|
|
1771
1806
|
}
|
|
1772
1807
|
function makeStatus(imports, map, current, options) {
|
|
1773
1808
|
return {
|
|
@@ -1782,7 +1817,8 @@ function makeStatus(imports, map, current, options) {
|
|
|
1782
1817
|
forVarNames: [],
|
|
1783
1818
|
ns: false,
|
|
1784
1819
|
preserveWhitespace: false,
|
|
1785
|
-
|
|
1820
|
+
inHead: false,
|
|
1821
|
+
options: options ?? {}
|
|
1786
1822
|
};
|
|
1787
1823
|
}
|
|
1788
1824
|
|
|
@@ -2132,12 +2168,7 @@ function buildServerElementNode(node, status, b) {
|
|
|
2132
2168
|
function buildElementAttributes(node, status) {
|
|
2133
2169
|
let needsClass = node.scopeStyles;
|
|
2134
2170
|
let attributes = [];
|
|
2135
|
-
for (let { name, value, reactive, fullyReactive } of node.attributes) if (name === "self" && node.tagName === "@element") {} else if (name === "&ref") {} else if (name.startsWith("on") || name.startsWith(":on")) {} else if (name.startsWith("transition") && value) {
|
|
2136
|
-
value = value.split(",")[0].trim();
|
|
2137
|
-
if (value.startsWith("[")) value = value.substring(1);
|
|
2138
|
-
else value = value + "[0]";
|
|
2139
|
-
attributes.push(`style="\${Object.entries(${value}).map(([k, v]) => \`$\{k}: $\{v}\`).join("; ")}"`);
|
|
2140
|
-
} else if (value != null && fullyReactive) if (name === "&value" || name === "&checked" || name === "&group") {
|
|
2171
|
+
for (let { name, value, reactive, fullyReactive } of node.attributes) if (name === "self" && node.tagName === "@element") {} else if (name === "&ref") {} else if (name.startsWith("on") || name.startsWith(":on")) {} else if (name.startsWith("transition") && value) {} else if (value != null && fullyReactive) if (name === "&value" || name === "&checked" || name === "&group") {
|
|
2141
2172
|
let defaultValue = "";
|
|
2142
2173
|
let typeAttribute = node.attributes.find((a) => a.name === "type");
|
|
2143
2174
|
if (typeAttribute && typeAttribute.value) switch (trimQuotes(typeAttribute.value)) {
|
|
@@ -2414,14 +2445,12 @@ function buildServerTemplate(template, imports, b, options) {
|
|
|
2414
2445
|
*/
|
|
2415
2446
|
function build(template, options) {
|
|
2416
2447
|
let map = [];
|
|
2417
|
-
let code = options?.server ? buildServerCode(template, options) : buildCode(template, map, options);
|
|
2418
|
-
let styles = template.components.map((c) => c.style ? {
|
|
2419
|
-
style: buildStyles(c.style, c.style.hash),
|
|
2420
|
-
hash: c.style.hash
|
|
2421
|
-
} : void 0).filter((c) => c !== void 0);
|
|
2422
2448
|
return {
|
|
2423
|
-
code,
|
|
2424
|
-
styles
|
|
2449
|
+
code: options?.server ? buildServerCode(template, options) : buildCode(template, map, options),
|
|
2450
|
+
styles: template.components.map((c) => c.style ? {
|
|
2451
|
+
style: buildStyles(c.style, c.style.hash),
|
|
2452
|
+
hash: c.style.hash
|
|
2453
|
+
} : void 0).filter((c) => c !== void 0),
|
|
2425
2454
|
map
|
|
2426
2455
|
};
|
|
2427
2456
|
}
|
|
@@ -2549,7 +2578,7 @@ function addSpaceElement(parent, status) {
|
|
|
2549
2578
|
const space = {
|
|
2550
2579
|
type: "text",
|
|
2551
2580
|
content,
|
|
2552
|
-
|
|
2581
|
+
spans: []
|
|
2553
2582
|
};
|
|
2554
2583
|
parent.children.push(space);
|
|
2555
2584
|
}
|
|
@@ -2649,7 +2678,7 @@ function parseTag(status) {
|
|
|
2649
2678
|
closed: selfClosed || void 0,
|
|
2650
2679
|
attributes,
|
|
2651
2680
|
children: [],
|
|
2652
|
-
|
|
2681
|
+
span: {
|
|
2653
2682
|
start: tagStart,
|
|
2654
2683
|
end: tagEnd
|
|
2655
2684
|
}
|
|
@@ -2702,7 +2731,7 @@ function parseAttribute(status) {
|
|
|
2702
2731
|
value,
|
|
2703
2732
|
reactive,
|
|
2704
2733
|
fullyReactive,
|
|
2705
|
-
|
|
2734
|
+
span: {
|
|
2706
2735
|
start: valueStart,
|
|
2707
2736
|
end: valueEnd
|
|
2708
2737
|
}
|
|
@@ -2731,7 +2760,7 @@ function parseAttributeValue(status) {
|
|
|
2731
2760
|
//#endregion
|
|
2732
2761
|
//#region src/compile/parse/parseText.ts
|
|
2733
2762
|
function parseText(status, element) {
|
|
2734
|
-
let
|
|
2763
|
+
let spans = [];
|
|
2735
2764
|
const start = status.i;
|
|
2736
2765
|
let end = -1;
|
|
2737
2766
|
for (let j = status.i; j < status.source.length; j++) {
|
|
@@ -2755,7 +2784,7 @@ function parseText(status, element) {
|
|
|
2755
2784
|
}
|
|
2756
2785
|
}
|
|
2757
2786
|
}
|
|
2758
|
-
|
|
2787
|
+
spans.push({
|
|
2759
2788
|
start: reactiveStart,
|
|
2760
2789
|
end: j
|
|
2761
2790
|
});
|
|
@@ -2775,12 +2804,12 @@ function parseText(status, element) {
|
|
|
2775
2804
|
const previousNode = element.children[element.children.length - 1];
|
|
2776
2805
|
if (previousNode && isTextNode(previousNode)) {
|
|
2777
2806
|
previousNode.content += content + spaceContent;
|
|
2778
|
-
previousNode.
|
|
2807
|
+
previousNode.spans.push(...spans);
|
|
2779
2808
|
} else {
|
|
2780
2809
|
const text = {
|
|
2781
2810
|
type: "text",
|
|
2782
2811
|
content: content + spaceContent,
|
|
2783
|
-
|
|
2812
|
+
spans
|
|
2784
2813
|
};
|
|
2785
2814
|
element.children.push(text);
|
|
2786
2815
|
}
|
|
@@ -2805,7 +2834,7 @@ function slottifyChildNodes(node) {
|
|
|
2805
2834
|
tagName: "fill",
|
|
2806
2835
|
attributes: [],
|
|
2807
2836
|
children: nonFillNodes,
|
|
2808
|
-
|
|
2837
|
+
span: {
|
|
2809
2838
|
start: 0,
|
|
2810
2839
|
end: 0
|
|
2811
2840
|
}
|
|
@@ -2868,8 +2897,7 @@ function parseElement(status) {
|
|
|
2868
2897
|
}
|
|
2869
2898
|
if (voidTags_default.includes(element.tagName)) checkVoidElement(status, element);
|
|
2870
2899
|
if (!element.selfClosed && !voidTags_default.includes(element.tagName)) {
|
|
2871
|
-
|
|
2872
|
-
current.stack.push(element);
|
|
2900
|
+
status.stack.push(element);
|
|
2873
2901
|
while (status.i < status.source.length) {
|
|
2874
2902
|
addSpaceElement(element, status);
|
|
2875
2903
|
if (accept("}", status, false)) break;
|
|
@@ -2877,14 +2905,14 @@ function parseElement(status) {
|
|
|
2877
2905
|
else if (accept("@//", status)) status.i = status.source.indexOf("\n", status.i) + 1;
|
|
2878
2906
|
else if (accept("@/*", status)) status.i = status.source.indexOf("*/", status.i) + 2;
|
|
2879
2907
|
else if (accept("</", status, false)) {
|
|
2880
|
-
if (checkCloseTag(status, element
|
|
2908
|
+
if (checkCloseTag(status, element)) break;
|
|
2881
2909
|
} else if (accept("<", status, false)) {
|
|
2882
2910
|
const child = parseElement(status);
|
|
2883
2911
|
element.children.push(child);
|
|
2884
2912
|
} else if (accept("@", status, false)) parseControl(status, element);
|
|
2885
2913
|
else parseText(status, element);
|
|
2886
2914
|
}
|
|
2887
|
-
|
|
2915
|
+
status.stack.pop();
|
|
2888
2916
|
}
|
|
2889
2917
|
if (/[A-Z]/.test(element.tagName[0])) {
|
|
2890
2918
|
element.type = "component";
|
|
@@ -2913,12 +2941,12 @@ function parseElement(status) {
|
|
|
2913
2941
|
operation: "@replace",
|
|
2914
2942
|
statement: selfValue,
|
|
2915
2943
|
children: [element],
|
|
2916
|
-
|
|
2944
|
+
span: {
|
|
2917
2945
|
start: 0,
|
|
2918
2946
|
end: 0
|
|
2919
2947
|
}
|
|
2920
2948
|
}],
|
|
2921
|
-
|
|
2949
|
+
span: {
|
|
2922
2950
|
start: 0,
|
|
2923
2951
|
end: 0
|
|
2924
2952
|
}
|
|
@@ -2943,7 +2971,7 @@ function checkVoidElement(status, element) {
|
|
|
2943
2971
|
}
|
|
2944
2972
|
status.i = i;
|
|
2945
2973
|
}
|
|
2946
|
-
function checkCloseTag(status, element
|
|
2974
|
+
function checkCloseTag(status, element) {
|
|
2947
2975
|
const start = status.i;
|
|
2948
2976
|
accept("</", status);
|
|
2949
2977
|
consumeSpace(status);
|
|
@@ -2953,12 +2981,10 @@ function checkCloseTag(status, element, current) {
|
|
|
2953
2981
|
consumeSpace(status);
|
|
2954
2982
|
accept(">", status);
|
|
2955
2983
|
let found = false;
|
|
2956
|
-
if (
|
|
2957
|
-
|
|
2958
|
-
|
|
2959
|
-
|
|
2960
|
-
break;
|
|
2961
|
-
}
|
|
2984
|
+
for (let i = status.stack.length - 1; i >= 0; i--) if (closingTagName === status.stack[i].tagName) {
|
|
2985
|
+
status.stack[i].closed = true;
|
|
2986
|
+
found = true;
|
|
2987
|
+
break;
|
|
2962
2988
|
}
|
|
2963
2989
|
if (!found) addError(status, `Non-matching close tag: ${closingTagName} (expected ${element.tagName})`, start, start + element.tagName.length + 1);
|
|
2964
2990
|
return found;
|
|
@@ -3048,7 +3074,7 @@ function parseControlOpen(status) {
|
|
|
3048
3074
|
operation,
|
|
3049
3075
|
statement,
|
|
3050
3076
|
children: [],
|
|
3051
|
-
|
|
3077
|
+
span: {
|
|
3052
3078
|
start: statementStart,
|
|
3053
3079
|
end: status.i
|
|
3054
3080
|
}
|
|
@@ -3081,7 +3107,7 @@ function wrangleControlNode(node, parentNode) {
|
|
|
3081
3107
|
operation: "@if group",
|
|
3082
3108
|
statement: "",
|
|
3083
3109
|
children: [node],
|
|
3084
|
-
|
|
3110
|
+
span: {
|
|
3085
3111
|
start: 0,
|
|
3086
3112
|
end: 0
|
|
3087
3113
|
}
|
|
@@ -3102,7 +3128,7 @@ function wrangleControlNode(node, parentNode) {
|
|
|
3102
3128
|
operation: "@for group",
|
|
3103
3129
|
statement: "",
|
|
3104
3130
|
children: [node],
|
|
3105
|
-
|
|
3131
|
+
span: {
|
|
3106
3132
|
start: 0,
|
|
3107
3133
|
end: 0
|
|
3108
3134
|
}
|
|
@@ -3117,7 +3143,7 @@ function wrangleControlNode(node, parentNode) {
|
|
|
3117
3143
|
operation: "@await group",
|
|
3118
3144
|
statement: "",
|
|
3119
3145
|
children: [node],
|
|
3120
|
-
|
|
3146
|
+
span: {
|
|
3121
3147
|
start: 0,
|
|
3122
3148
|
end: 0
|
|
3123
3149
|
}
|
|
@@ -3136,7 +3162,7 @@ function wrangleControlNode(node, parentNode) {
|
|
|
3136
3162
|
operation: "@replace group",
|
|
3137
3163
|
statement: "",
|
|
3138
3164
|
children: [node],
|
|
3139
|
-
|
|
3165
|
+
span: {
|
|
3140
3166
|
start: 0,
|
|
3141
3167
|
end: 0
|
|
3142
3168
|
}
|
|
@@ -3148,7 +3174,7 @@ function wrangleControlNode(node, parentNode) {
|
|
|
3148
3174
|
operation: "@html group",
|
|
3149
3175
|
statement: "",
|
|
3150
3176
|
children: [node],
|
|
3151
|
-
|
|
3177
|
+
span: {
|
|
3152
3178
|
start: 0,
|
|
3153
3179
|
end: 0
|
|
3154
3180
|
}
|
|
@@ -3192,7 +3218,7 @@ function parseMarkup(status, source) {
|
|
|
3192
3218
|
const text = {
|
|
3193
3219
|
type: "text",
|
|
3194
3220
|
content: consumeSpace(status),
|
|
3195
|
-
|
|
3221
|
+
spans: []
|
|
3196
3222
|
};
|
|
3197
3223
|
current.markup.children.push(text);
|
|
3198
3224
|
} else if (accept("<", status, false)) {
|
|
@@ -3262,6 +3288,7 @@ function parseStyles(source, status) {
|
|
|
3262
3288
|
imports: [],
|
|
3263
3289
|
script: [],
|
|
3264
3290
|
components: [],
|
|
3291
|
+
stack: [],
|
|
3265
3292
|
errors: []
|
|
3266
3293
|
};
|
|
3267
3294
|
while (styleStatus.i < styleStatus.source.length) if (isSpaceChar(styleStatus.source, styleStatus.i)) consumeSpace(styleStatus);
|
|
@@ -3360,6 +3387,7 @@ function parseCode(source) {
|
|
|
3360
3387
|
imports: [],
|
|
3361
3388
|
script: [],
|
|
3362
3389
|
components: [],
|
|
3390
|
+
stack: [],
|
|
3363
3391
|
errors: []
|
|
3364
3392
|
};
|
|
3365
3393
|
for (status.i; status.i < source.length; status.i++) if (consumeScriptComments(status)) {} else if (status.source[status.i] === "{") status.level += 1;
|
|
@@ -3391,7 +3419,7 @@ function parseCode(source) {
|
|
|
3391
3419
|
else if (accept("@style", status, false)) parseComponentStyle(status);
|
|
3392
3420
|
status.script.push({
|
|
3393
3421
|
script: source.substring(status.marker, source.length),
|
|
3394
|
-
|
|
3422
|
+
span: {
|
|
3395
3423
|
start: status.marker,
|
|
3396
3424
|
end: source.length
|
|
3397
3425
|
}
|
|
@@ -3405,23 +3433,7 @@ function parseCode(source) {
|
|
|
3405
3433
|
template: ok ? {
|
|
3406
3434
|
imports: status.imports,
|
|
3407
3435
|
script: status.script,
|
|
3408
|
-
components: status.components
|
|
3409
|
-
return {
|
|
3410
|
-
start: c.start,
|
|
3411
|
-
name: c.name,
|
|
3412
|
-
exported: c.exported,
|
|
3413
|
-
default: c.default,
|
|
3414
|
-
documentation: c.documentation,
|
|
3415
|
-
params: c.params,
|
|
3416
|
-
markup: c.markup,
|
|
3417
|
-
head: c.head,
|
|
3418
|
-
style: c.style,
|
|
3419
|
-
propsType: c.propsType,
|
|
3420
|
-
props: c.props,
|
|
3421
|
-
contextProps: c.contextProps,
|
|
3422
|
-
slotProps: c.slotProps
|
|
3423
|
-
};
|
|
3424
|
-
})
|
|
3436
|
+
components: status.components
|
|
3425
3437
|
} : void 0
|
|
3426
3438
|
};
|
|
3427
3439
|
}
|
|
@@ -3431,11 +3443,9 @@ function parseComponentStart(status) {
|
|
|
3431
3443
|
let def = /export\s+default\s+(function\s+|const\s+)*$/.test(source);
|
|
3432
3444
|
let isConst = /const\s+$/.test(source);
|
|
3433
3445
|
let isAnon = /export default\s+$/.test(source);
|
|
3434
|
-
let componentStart = status.i;
|
|
3435
|
-
let name = consumeAlphaNumeric(status);
|
|
3436
3446
|
const current = {
|
|
3437
|
-
start:
|
|
3438
|
-
name,
|
|
3447
|
+
start: status.i,
|
|
3448
|
+
name: consumeAlphaNumeric(status),
|
|
3439
3449
|
exported,
|
|
3440
3450
|
default: def
|
|
3441
3451
|
};
|
|
@@ -3469,14 +3479,14 @@ function parseComponentStart(status) {
|
|
|
3469
3479
|
}
|
|
3470
3480
|
status.script.push({
|
|
3471
3481
|
script: status.source.substring(status.marker, start),
|
|
3472
|
-
|
|
3482
|
+
span: {
|
|
3473
3483
|
start: status.marker,
|
|
3474
3484
|
end: start
|
|
3475
3485
|
}
|
|
3476
3486
|
});
|
|
3477
3487
|
status.script.push({
|
|
3478
3488
|
script: "/* @params */",
|
|
3479
|
-
|
|
3489
|
+
span: {
|
|
3480
3490
|
start: 0,
|
|
3481
3491
|
end: 0
|
|
3482
3492
|
}
|
|
@@ -3490,7 +3500,7 @@ function parseComponentStart(status) {
|
|
|
3490
3500
|
if (propsTypeStart !== -1) {
|
|
3491
3501
|
let bracesStart = status.source.indexOf("{", propsTypeStart);
|
|
3492
3502
|
if (bracesStart !== -1) {
|
|
3493
|
-
const
|
|
3503
|
+
const propsType = parseInlineScript({
|
|
3494
3504
|
source: status.source,
|
|
3495
3505
|
i: bracesStart + 1,
|
|
3496
3506
|
marker: 0,
|
|
@@ -3498,9 +3508,9 @@ function parseComponentStart(status) {
|
|
|
3498
3508
|
imports: [],
|
|
3499
3509
|
script: [],
|
|
3500
3510
|
components: [],
|
|
3511
|
+
stack: [],
|
|
3501
3512
|
errors: []
|
|
3502
|
-
};
|
|
3503
|
-
const propsType = parseInlineScript(status2);
|
|
3513
|
+
});
|
|
3504
3514
|
if (propsType) current.propsType = `${status.source.substring(propsTypeStart, bracesStart)}{${propsType}}`;
|
|
3505
3515
|
}
|
|
3506
3516
|
}
|
|
@@ -3517,7 +3527,7 @@ function parseComponentStart(status) {
|
|
|
3517
3527
|
status.level += 1;
|
|
3518
3528
|
const postFunctionChunk = {
|
|
3519
3529
|
script: status.source.substring(status.marker, status.i),
|
|
3520
|
-
|
|
3530
|
+
span: {
|
|
3521
3531
|
start: status.marker,
|
|
3522
3532
|
end: status.i
|
|
3523
3533
|
}
|
|
@@ -3526,7 +3536,7 @@ function parseComponentStart(status) {
|
|
|
3526
3536
|
status.script.push(postFunctionChunk);
|
|
3527
3537
|
status.script.push({
|
|
3528
3538
|
script: "/* @start */",
|
|
3529
|
-
|
|
3539
|
+
span: {
|
|
3530
3540
|
start: 0,
|
|
3531
3541
|
end: 0
|
|
3532
3542
|
}
|
|
@@ -3535,7 +3545,7 @@ function parseComponentStart(status) {
|
|
|
3535
3545
|
const space = consumeSpace(status);
|
|
3536
3546
|
status.script.push({
|
|
3537
3547
|
script: space,
|
|
3538
|
-
|
|
3548
|
+
span: {
|
|
3539
3549
|
start: status.marker,
|
|
3540
3550
|
end: status.i
|
|
3541
3551
|
}
|
|
@@ -3549,14 +3559,14 @@ function parseComponentRender(status) {
|
|
|
3549
3559
|
if (current.markup) addError(status, `Multiple @render sections`, status.i, status.i + 7);
|
|
3550
3560
|
status.script.push({
|
|
3551
3561
|
script: status.source.substring(status.marker, status.i),
|
|
3552
|
-
|
|
3562
|
+
span: {
|
|
3553
3563
|
start: status.marker,
|
|
3554
3564
|
end: status.i
|
|
3555
3565
|
}
|
|
3556
3566
|
});
|
|
3557
3567
|
status.script.push({
|
|
3558
3568
|
script: "/* @render */",
|
|
3559
|
-
|
|
3569
|
+
span: {
|
|
3560
3570
|
start: 0,
|
|
3561
3571
|
end: 0
|
|
3562
3572
|
}
|
|
@@ -3575,14 +3585,14 @@ function parseComponentHead(status) {
|
|
|
3575
3585
|
if (current.head) addError(status, `Multiple @head sections`, status.i, status.i + 5);
|
|
3576
3586
|
status.script.push({
|
|
3577
3587
|
script: status.source.substring(status.marker, status.i),
|
|
3578
|
-
|
|
3588
|
+
span: {
|
|
3579
3589
|
start: status.marker,
|
|
3580
3590
|
end: status.i
|
|
3581
3591
|
}
|
|
3582
3592
|
});
|
|
3583
3593
|
status.script.push({
|
|
3584
3594
|
script: "/* @head */",
|
|
3585
|
-
|
|
3595
|
+
span: {
|
|
3586
3596
|
start: 0,
|
|
3587
3597
|
end: 0
|
|
3588
3598
|
}
|
|
@@ -3603,14 +3613,14 @@ function parseComponentStyle(status) {
|
|
|
3603
3613
|
if (current.style) addError(status, `Multiple @style sections`, status.i, status.i + 6);
|
|
3604
3614
|
status.script.push({
|
|
3605
3615
|
script: status.source.substring(status.marker, status.i),
|
|
3606
|
-
|
|
3616
|
+
span: {
|
|
3607
3617
|
start: status.marker,
|
|
3608
3618
|
end: status.i
|
|
3609
3619
|
}
|
|
3610
3620
|
});
|
|
3611
3621
|
status.script.push({
|
|
3612
3622
|
script: "/* @style */",
|
|
3613
|
-
|
|
3623
|
+
span: {
|
|
3614
3624
|
start: 0,
|
|
3615
3625
|
end: 0
|
|
3616
3626
|
}
|
|
@@ -3654,14 +3664,14 @@ function parseComponentEnd(status) {
|
|
|
3654
3664
|
if (!current) return;
|
|
3655
3665
|
status.script.push({
|
|
3656
3666
|
script: status.source.substring(status.marker, status.i),
|
|
3657
|
-
|
|
3667
|
+
span: {
|
|
3658
3668
|
start: status.marker,
|
|
3659
3669
|
end: status.i
|
|
3660
3670
|
}
|
|
3661
3671
|
});
|
|
3662
3672
|
status.script.push({
|
|
3663
3673
|
script: "/* @end */",
|
|
3664
|
-
|
|
3674
|
+
span: {
|
|
3665
3675
|
start: 0,
|
|
3666
3676
|
end: 0
|
|
3667
3677
|
}
|