@torpor/view 0.1.4 → 0.1.6

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (359) hide show
  1. package/CHANGELOG.md +16 -0
  2. package/dist/compile.cjs +324 -270
  3. package/dist/compile.cjs.map +1 -1
  4. package/dist/compile.js +324 -270
  5. package/dist/compile.js.map +1 -1
  6. package/dist/index.cjs +145 -97
  7. package/dist/index.cjs.map +1 -1
  8. package/dist/index.d.cts +72 -29
  9. package/dist/index.d.ts +72 -29
  10. package/dist/index.js +142 -97
  11. package/dist/index.js.map +1 -1
  12. package/dist/metafile-cjs.json +1 -1
  13. package/dist/metafile-esm.json +1 -1
  14. package/package.json +3 -3
  15. package/src/compile/build/client/buildAddFragment.ts +5 -1
  16. package/src/compile/build/client/buildCode.ts +2 -0
  17. package/src/compile/build/client/buildComponentNode.ts +1 -0
  18. package/src/compile/build/client/buildControlNode.ts +2 -1
  19. package/src/compile/build/client/buildFragment.ts +47 -21
  20. package/src/compile/build/client/buildRootNode.ts +5 -1
  21. package/src/compile/build/client/buildStyles.ts +18 -14
  22. package/src/compile/build/server/buildServerComponentNode.ts +2 -4
  23. package/src/compile/build/server/buildServerControlNode.ts +2 -1
  24. package/src/compile/build/server/buildServerForNode.ts +2 -2
  25. package/src/compile/build/server/buildServerIfNode.ts +4 -0
  26. package/src/compile/build/server/buildServerRootNode.ts +3 -1
  27. package/src/compile/build/server/buildServerSwitchNode.ts +4 -0
  28. package/src/compile/parse/ParseStatus.ts +2 -1
  29. package/src/compile/parse/parseCode.ts +5 -8
  30. package/src/compile/parse/parseControl.ts +19 -6
  31. package/src/compile/parse/parseMarkup.ts +15 -8
  32. package/src/compile/types/comments.ts +2 -2
  33. package/src/compile/types/nodes/OperationType.ts +2 -1
  34. package/src/debug/printNode.ts +54 -36
  35. package/src/index.ts +5 -1
  36. package/src/render/addFragment.ts +5 -4
  37. package/src/render/clearLayoutSlot.ts +6 -0
  38. package/src/render/clearRange.ts +1 -1
  39. package/src/render/hydrationMarkers.ts +2 -2
  40. package/src/render/isComment.ts +2 -2
  41. package/src/render/isText.ts +3 -0
  42. package/src/render/nodeAnchor.ts +62 -27
  43. package/src/render/nodeCheckHydrationBreak.ts +25 -0
  44. package/src/render/nodeChild.ts +12 -7
  45. package/src/render/nodeNext.ts +16 -25
  46. package/src/render/nodeRoot.ts +26 -9
  47. package/src/render/nodeSkip.ts +20 -0
  48. package/src/render/runLayoutSlot.ts +26 -0
  49. package/test/attributes/components/output/Attributes-client.ts +7 -4
  50. package/test/attributes/components/output/Attributes-server.ts +1 -1
  51. package/test/attributes/components/temp/{Attributes-client-7b8f7b9996208e8d2d0a12d4f4a40a73df63d9d8.ts → Attributes-client-4620a40099e57a7fdaab895b204d85881f6dbfb7.ts} +7 -4
  52. package/test/attributes/components/temp/{Attributes-server-a1289434a5a801be1d63bfc85b621579e06452f0.ts → Attributes-server-80f9f58fd6cb30df11867386d4f0b15b44401ebe.ts} +1 -1
  53. package/test/await/components/output/Await-client.ts +18 -15
  54. package/test/await/components/output/Await-server.ts +2 -2
  55. package/test/await/components/temp/{Await-client-a7bf000bf2b59a3d5251a0fa18ec79890a52a547.ts → Await-client-5d753441145fbac078393af24cccadb208453d69.ts} +18 -15
  56. package/test/await/components/temp/{Await-server-06cd2a3d8c7eb5bef026ffe2fb11793becf547c2.ts → Await-server-f02f39af3bb3344ca6b18a1d64d60b21913fba31.ts} +2 -2
  57. package/test/bind/components/output/BindComponent-client.ts +18 -12
  58. package/test/bind/components/output/BindComponent-server.ts +3 -3
  59. package/test/bind/components/output/BindText-client.ts +10 -8
  60. package/test/bind/components/output/BindText-server.ts +1 -1
  61. package/test/bind/components/temp/{BindComponent-client-a645474748485a878871c062ad69e6bcf35e6550.ts → BindComponent-client-aaeb489ce72b664c6372f8764f7e665994a751a7.ts} +18 -12
  62. package/test/bind/components/temp/{BindComponent-server-c557e7aa944517ab87415b8bb35b41b0034254e7.ts → BindComponent-server-c630dee0bee6cea49d5eb8bea04979a737bb8f5e.ts} +3 -3
  63. package/test/bind/components/temp/{BindText-client-d5f7d721df55020ef337f660e5d278eb80fcc330.ts → BindText-client-134676d616abbad6b8a7ec48df0a2e38cbfe3b87.ts} +10 -8
  64. package/test/bind/components/temp/{BindText-server-4b94cdf60d9c9a2088306c4407e2ae30785169b0.ts → BindText-server-807a1ddcb68410b30429cb088d2e204ed6f585b2.ts} +1 -1
  65. package/test/buildHtml.ts +1 -1
  66. package/test/buildOutputFiles.ts +8 -1
  67. package/test/child-component/components/output/ParentChild-client.ts +17 -11
  68. package/test/child-component/components/output/ParentChild-server.ts +3 -3
  69. package/test/child-component/components/temp/{ParentChild-client-eaefb0cbfd251badab3c57ae2037d973f785a1b8.ts → ParentChild-client-6cf4d156ea46338815270faf67f56472f1a4ccd4.ts} +17 -11
  70. package/test/child-component/components/temp/{ParentChild-server-8f2fc556f87867e6e3393e2e9e6d696cda107b69.ts → ParentChild-server-a34a8b5acf1c00d1990f8ab7433599506265a45a.ts} +3 -3
  71. package/test/class/class.test.ts +1 -1
  72. package/test/class/components/output/Class-client.ts +27 -20
  73. package/test/class/components/output/Class-server.ts +4 -4
  74. package/test/class/components/temp/{Class-client-12f09850a5f8c27de6cf94c23a2b17aadbf66f01.ts → Class-client-0405eff591f854c04e5728df0479014ef91efc61.ts} +27 -20
  75. package/test/class/components/temp/Class-server-daf30ffb1bacf9877e3385dc9a3eede61c972329.ts +40 -0
  76. package/test/component/components/output/Component-client.ts +9 -4
  77. package/test/component/components/output/Component-server.ts +2 -0
  78. package/test/component/components/output/Header-client.ts +7 -5
  79. package/test/component/components/output/Header-server.ts +1 -1
  80. package/test/component/components/temp/{Component-client-a2fb6f30fc340bac909b64cb4f5ac68cde376de3.ts → Component-client-355b42e5f7411c399e2f50fba3580f4f7c3fa943.ts} +9 -4
  81. package/test/component/components/temp/{Component-server-40be12cd528ccf768f1ad40ef2a435ad2b2a2d71.ts → Component-server-81012827b18e82d787d194a0a1a9d4e07311a336.ts} +2 -0
  82. package/test/component/components/temp/{Header-client-75cb4aa868295ac168c16ba7b275fbb5ab9256f9.ts → Header-client-903877003b220272b0cb5bfd62d7d748ad46c477.ts} +7 -5
  83. package/test/component/components/temp/{Header-server-f73307874bec34a95dcd152d7f83a3ad13a0f4ac.ts → Header-server-6969d20782edd8f99d4b5c5b7b5563ce26e6dc2d.ts} +1 -1
  84. package/test/console/components/output/Console-client.ts +6 -4
  85. package/test/console/components/output/Console-server.ts +1 -1
  86. package/test/console/components/temp/{Console-client-2f206752ce59e59fba9bb91263b4102fd515951e.ts → Console-client-4fa3b3679cee88bf6151185438e36d14010944b7.ts} +6 -4
  87. package/test/console/components/temp/{Console-server-b4b15f7a0d1d2b50d87bad4870e1b8d368707c04.ts → Console-server-cfb2208b130d5f15403df19ae8341aaa1c9ad33a.ts} +1 -1
  88. package/test/const/components/output/Const-client.ts +7 -5
  89. package/test/const/components/output/Const-server.ts +2 -2
  90. package/test/const/components/temp/{Const-client-536e8fdf18d6f4f7f23b2789de2330ecf62d7865.ts → Const-client-7dff2758c14bfbd208e301a702ae1781e6daba1b.ts} +7 -5
  91. package/test/const/components/temp/{Const-server-8f84096c03a19296425aee5d243af0734b70ca61.ts → Const-server-1cf6ed84f72d3b15b318b80937b8de1f2c0f188c.ts} +2 -2
  92. package/test/effects/components/output/For-client.ts +12 -9
  93. package/test/effects/components/output/For-server.ts +2 -2
  94. package/test/effects/components/output/If-client.ts +14 -11
  95. package/test/effects/components/output/If-server.ts +4 -4
  96. package/test/effects/components/output/NestedIf-client.ts +17 -14
  97. package/test/effects/components/output/NestedIf-server.ts +5 -5
  98. package/test/effects/components/temp/{For-client-d8d4e4424ec3238fe9f79cc907d673612b63bcdf.ts → For-client-fbe876286c0f99b8391ff0c06c92b58bf580218f.ts} +12 -9
  99. package/test/effects/components/temp/{For-server-1f853c161bea31a1a5b11b00d7a021b70c778066.ts → For-server-efe60939d185315f4c9b567b6867c6d5af14d9aa.ts} +2 -2
  100. package/test/effects/components/temp/{If-client-bb06988422395321bf298a75bf5563c6f750f776.ts → If-client-420a093f13de6ce07d2d4bc94705901809096cd9.ts} +14 -11
  101. package/test/effects/components/temp/{If-server-97e3cbe059306fc607985dcd1b187df3a278d979.ts → If-server-2424b7b812d350d7eb8ff9afb1146807217320cd.ts} +4 -4
  102. package/test/effects/components/temp/{NestedIf-client-dc880c1ec92e716ec730dfa0bac0e3d9265bdf27.ts → NestedIf-client-af88ec303b1a4184263bb370ef5b1f1e8aca8efc.ts} +17 -14
  103. package/test/effects/components/temp/{NestedIf-server-9f199a33bae5d5fe34920d6a419937537a2b18dc.ts → NestedIf-server-ab260586490cb5afed31377d2226bb5a1fc30e2d.ts} +5 -5
  104. package/test/events/components/output/Increment-client.ts +9 -7
  105. package/test/events/components/output/Increment-server.ts +1 -1
  106. package/test/events/components/temp/{Increment-client-41bd7bc91aac8c7a9bf73527c8f7ba1794b09ab3.ts → Increment-client-1b5f9e231c5c4fc059d77ca0da632719283e5ac4.ts} +9 -7
  107. package/test/events/components/temp/{Increment-server-bbf5ac93c4f73382c4262ae42f4cc836bcb8ac1b.ts → Increment-server-b084f43082e2ec31dbe5f9edc1cb6e37e4c8df9d.ts} +1 -1
  108. package/test/for/components/output/For-client.ts +12 -9
  109. package/test/for/components/output/For-server.ts +2 -2
  110. package/test/for/components/output/ForEscape-client.ts +16 -13
  111. package/test/for/components/output/ForEscape-server.ts +2 -2
  112. package/test/for/components/output/ForIn-client.ts +12 -9
  113. package/test/for/components/output/ForIn-server.ts +2 -2
  114. package/test/for/components/output/ForOf-client.ts +12 -9
  115. package/test/for/components/output/ForOf-server.ts +2 -2
  116. package/test/for/components/temp/{For-client-0be5994e98c07a3455cd8a18a2b1b8ef3605aba6.ts → For-client-421f2a6ca501d135c0aef9d1aaea25de0e1c00e4.ts} +12 -9
  117. package/test/for/components/temp/{For-server-8490f15d02ae76b218feb7fa266415f44b2a4ab9.ts → For-server-3b6ead39728c79206203c519a215390d07d80f7e.ts} +2 -2
  118. package/test/for/components/temp/{ForEscape-client-a973a145e28b32ca55fe3dca53d885fcf5e11c37.ts → ForEscape-client-72879c80f7544c2edfc224095740bdea20e1e12d.ts} +16 -13
  119. package/test/for/components/temp/{ForEscape-server-375744ca1e10e5c8ed7dd6420beef72107e55568.ts → ForEscape-server-ed906c8cd593a0b467073ada415734de31dc38d9.ts} +2 -2
  120. package/test/for/components/temp/{ForIn-client-5cc25a98e10826e8477fe6f931d5d2bbd0b13c9f.ts → ForIn-client-e12c45d7f53e50ea3ed456110138dfb95f6930e0.ts} +12 -9
  121. package/test/for/components/temp/{ForIn-server-d68e82c048f7e0f1525f74724b91e5cd01cdc6a6.ts → ForIn-server-c8f13304a2ba235e091685256909fbfa50bdd5fd.ts} +2 -2
  122. package/test/for/components/temp/{ForOf-client-70b0d59ff72f1cffe2e0ac8523dd7ccdca4ffe39.ts → ForOf-client-422d67d6c046f1d1de655719d061ea29f67d23f7.ts} +12 -9
  123. package/test/for/components/temp/{ForOf-server-ac08d98dd249a3e64a366b8488450e6ce0d18def.ts → ForOf-server-8c2c33ca6595bf0a5e952ca9971e595e18446623.ts} +2 -2
  124. package/test/function/components/output/Function-client.ts +8 -6
  125. package/test/function/components/output/Function-server.ts +2 -2
  126. package/test/function/components/temp/{Function-client-b3ff029a821d47e1a2249a52dfb681f4b2e96232.ts → Function-client-4e2168306756eb927d5ed4b673334b357eecaa74.ts} +8 -6
  127. package/test/function/components/temp/{Function-server-2d32fbe35260c0948a135f287f131c5520e8bce7.ts → Function-server-2b19d0cd881c31dc67132107c6e322a18701c318.ts} +2 -2
  128. package/test/html/components/output/Html-client.ts +9 -6
  129. package/test/html/components/output/Html-server.ts +1 -1
  130. package/test/html/components/temp/{Html-client-766ba4a63f28f929ca16cd7d1640fe92f9b30792.ts → Html-client-2f309b06c3304a952d249057dec058a514d52874.ts} +9 -6
  131. package/test/html/components/temp/{Html-server-0a41da8b81bf833f331f3becdbac14be7ddc6c8c.ts → Html-server-d159b0ef04b1f65ae4f9e05a7b44b21e7aa14cf9.ts} +1 -1
  132. package/test/hydrateComponent.ts +1 -0
  133. package/test/if/components/IfAfterIf.torp +10 -12
  134. package/test/if/components/IfElse.torp +12 -11
  135. package/test/if/components/IfElseIf.torp +13 -15
  136. package/test/if/components/IfFalse.torp +10 -0
  137. package/test/if/components/IfNested.torp +11 -13
  138. package/test/if/components/output/IfAfterIf-client.ts +14 -13
  139. package/test/if/components/output/IfAfterIf-server.ts +4 -4
  140. package/test/if/components/output/IfElse-client.ts +14 -13
  141. package/test/if/components/output/IfElse-server.ts +4 -4
  142. package/test/if/components/output/IfElseIf-client.ts +16 -15
  143. package/test/if/components/output/IfElseIf-server.ts +5 -5
  144. package/test/if/components/output/IfFalse-client.ts +56 -0
  145. package/test/if/components/output/IfFalse-server.ts +21 -0
  146. package/test/if/components/output/IfNested-client.ts +19 -18
  147. package/test/if/components/output/IfNested-server.ts +6 -6
  148. package/test/if/components/temp/{IfAfterIf-client-49b6b8c42b0a351561f9f5f22c2ae2e844bf3b58.ts → IfAfterIf-client-5ddfc6dc62ffbc9a518220458403008e88e69e6c.ts} +14 -13
  149. package/test/if/components/temp/{IfAfterIf-server-eb67cf1fcf6711882266219940a47bd4a66497f3.ts → IfAfterIf-server-a5005147e7902d1a5a048c9fe07feb9804eb6560.ts} +4 -4
  150. package/test/if/components/temp/{IfElse-client-e236d4a2e99262ff09675bc519c07e2826c0d70b.ts → IfElse-client-815057ffb2d9a1861bb316d445321947ddedbb65.ts} +14 -13
  151. package/test/if/components/temp/{IfElse-server-c077e0e30f4d2adec41ab779198362d21542d055.ts → IfElse-server-80d93e5fc4ceba7a645f7081fa11b177dbe730d0.ts} +4 -4
  152. package/test/if/components/temp/{IfElseIf-client-b92106861f0c7ec3d09e3a42bb93d8f5bd4e3bdf.ts → IfElseIf-client-a7b16a8af24fdd3caa7b9e8e56d4bdb6ad3ab855.ts} +16 -15
  153. package/test/if/components/temp/{IfElseIf-server-67991eee3f56dc687cda600511c31396438e0a77.ts → IfElseIf-server-ddc7348705d51b02538301e0aa704130748992cf.ts} +5 -5
  154. package/test/if/components/temp/IfFalse-client-6507ff8abd4842b78da27d8a9d4964abc1d9b727.ts +56 -0
  155. package/test/if/components/temp/IfFalse-server-e8385013cfdde584b43cc0d71311cbb417859116.ts +21 -0
  156. package/test/if/components/temp/{IfNested-client-f563ac1b16a2280e457557281c4925ed447a9cd7.ts → IfNested-client-e09f8af625b4e0b3e9eb210440f8edda720f0d53.ts} +19 -18
  157. package/test/if/components/temp/{IfNested-server-0a2a9643324ab73b02b310cad61ba87dab146ab2.ts → IfNested-server-285a5d8e0e0fcc8ccf421df152fdc00811782835.ts} +6 -6
  158. package/test/if/if-else-false.test.ts +54 -0
  159. package/test/if/{if-true.test.ts → if-else-true.test.ts} +5 -2
  160. package/test/if/if-false.test.ts +1 -4
  161. package/test/importComponent.ts +4 -0
  162. package/test/mount/components/output/Mount-client.ts +7 -4
  163. package/test/mount/components/output/Mount-server.ts +1 -1
  164. package/test/mount/components/temp/{Mount-client-36dbc95a61345a1b7dcf07e6b0c998af2afca691.ts → Mount-client-efa5c34fbfc7646e114a1a58f0814b6dff33e566.ts} +7 -4
  165. package/test/mount/components/temp/{Mount-server-8bef1924a731f3db63cb827be3938fec685e53af.ts → Mount-server-62f94f276c2d6c9048765a77b575cb21146917f1.ts} +1 -1
  166. package/test/on-mount/components/output/OnMount-client.ts +7 -4
  167. package/test/on-mount/components/output/OnMount-server.ts +1 -1
  168. package/test/on-mount/components/temp/{OnMount-client-21708a638d2939ee8b017f5dc819cee4748bde87.ts → OnMount-client-4bb62e8bf1fcd67798598fe03bf5455a57f0a6be.ts} +7 -4
  169. package/test/on-mount/components/temp/{OnMount-server-1758fe2b16972fca7d4b9bb49d9256fce99780eb.ts → OnMount-server-c531f718eb68754ea6c3001d5db9c07c511e434c.ts} +1 -1
  170. package/test/party/components/output/AnswerButton-client.ts +8 -6
  171. package/test/party/components/output/AnswerButton-server.ts +1 -1
  172. package/test/party/components/output/AnswerButtonApp-client.ts +11 -7
  173. package/test/party/components/output/AnswerButtonApp-server.ts +2 -2
  174. package/test/party/components/output/ColorSelect-client.ts +11 -9
  175. package/test/party/components/output/ColorSelect-server.ts +2 -2
  176. package/test/party/components/output/Colors-client.ts +12 -9
  177. package/test/party/components/output/Colors-server.ts +2 -2
  178. package/test/party/components/output/Counter-client.ts +8 -6
  179. package/test/party/components/output/Counter-server.ts +1 -1
  180. package/test/party/components/output/CssStyle-client.ts +6 -4
  181. package/test/party/components/output/CssStyle-server.ts +1 -1
  182. package/test/party/components/output/DoubleCount-client.ts +7 -5
  183. package/test/party/components/output/DoubleCount-server.ts +1 -1
  184. package/test/party/components/output/FunnyButton-client.ts +12 -9
  185. package/test/party/components/output/FunnyButton-server.ts +2 -2
  186. package/test/party/components/output/FunnyButtonApp-client.ts +15 -9
  187. package/test/party/components/output/FunnyButtonApp-server.ts +3 -3
  188. package/test/party/components/output/HelloWorld-client.ts +6 -4
  189. package/test/party/components/output/HelloWorld-server.ts +1 -1
  190. package/test/party/components/output/InputFocused-client.ts +7 -4
  191. package/test/party/components/output/InputFocused-server.ts +1 -1
  192. package/test/party/components/output/InputHello-client.ts +8 -6
  193. package/test/party/components/output/InputHello-server.ts +1 -1
  194. package/test/party/components/output/IsAvailable-client.ts +8 -6
  195. package/test/party/components/output/IsAvailable-server.ts +1 -1
  196. package/test/party/components/output/Name-client.ts +7 -5
  197. package/test/party/components/output/Name-server.ts +1 -1
  198. package/test/party/components/output/NameUpdate-client.ts +7 -5
  199. package/test/party/components/output/NameUpdate-server.ts +1 -1
  200. package/test/party/components/output/PageTitle-client.ts +7 -5
  201. package/test/party/components/output/PageTitle-server.ts +1 -1
  202. package/test/party/components/output/PickPill-client.ts +9 -7
  203. package/test/party/components/output/PickPill-server.ts +1 -1
  204. package/test/party/components/output/Time-client.ts +7 -5
  205. package/test/party/components/output/Time-server.ts +1 -1
  206. package/test/party/components/output/TrafficLight-client.ts +19 -17
  207. package/test/party/components/output/TrafficLight-server.ts +5 -5
  208. package/test/party/components/output/UserProfile-client.ts +10 -8
  209. package/test/party/components/output/UserProfile-server.ts +1 -1
  210. package/test/party/components/output/UserProfileApp-client.ts +9 -4
  211. package/test/party/components/output/UserProfileApp-server.ts +2 -0
  212. package/test/party/components/output/UserProfileContext-client.ts +9 -7
  213. package/test/party/components/output/UserProfileContext-server.ts +1 -1
  214. package/test/party/components/output/UserProfileContextApp-client.ts +11 -7
  215. package/test/party/components/output/UserProfileContextApp-server.ts +2 -2
  216. package/test/party/components/temp/{AnswerButton-client-c3dc7edbfff2db1ea111086002147d771ee12193.ts → AnswerButton-client-ad8f8db36b7aaa68d8de5898a324bacfbe9f20df.ts} +8 -6
  217. package/test/party/components/temp/{AnswerButton-server-427442fa8cfc0a18817c2d37f9cb5cbcb3a88a05.ts → AnswerButton-server-928b5d447afa865fa09e0142c79bb1f2c1b86875.ts} +1 -1
  218. package/test/party/components/temp/{AnswerButtonApp-client-3e0b63a6bbc1dee3e6cb715c0297cc2ce58d3e4e.ts → AnswerButtonApp-client-a2b16c738467742436b1a2ddaf2d767795a4d625.ts} +11 -7
  219. package/test/party/components/temp/{AnswerButtonApp-server-bbc8bb739d2060ccda77ce406aa6b15d8f90b91c.ts → AnswerButtonApp-server-16161f2c9062dd11b8b6b8c898f9f1249ae2400d.ts} +2 -2
  220. package/test/party/components/temp/{ColorSelect-client-5ffa6f9d77de967993088c9a01b9f976f3333176.ts → ColorSelect-client-4e848c296047911f4c0e3bc1447e5562ce06087c.ts} +11 -9
  221. package/test/party/components/temp/{ColorSelect-server-3ed19eff17bf10b31d03ec507974ff913932c97a.ts → ColorSelect-server-90f83722bd85155ebb2b8ccdaf053cd28d3152be.ts} +2 -2
  222. package/test/party/components/temp/{Colors-client-3dafffc5c2a72037f4419fc45d08963872a29958.ts → Colors-client-dde7bf60e2b16383ec981b08f8414b1ebeb349a5.ts} +12 -9
  223. package/test/party/components/temp/{Colors-server-f9b3037a5f25979f71b5f8f3e658140be7c27920.ts → Colors-server-e13d49ba57f7b0dc6fb10a333ec872f5207e1ff0.ts} +2 -2
  224. package/test/party/components/temp/{Counter-client-4d553521fcfc6c9a4e05dce89e70b2ecf8785c4e.ts → Counter-client-3b876c148f2b14da1766eff77eb6c494f7be6414.ts} +8 -6
  225. package/test/party/components/temp/{Counter-server-36d1137c519691f5b86a18a5c27b7cf615b7e37c.ts → Counter-server-7adf9376b38d97f1fd4b9c14108e6814e81f14ea.ts} +1 -1
  226. package/test/party/components/temp/{CssStyle-client-59c0f261f67bc04f2829a0371f655d146101cec6.ts → CssStyle-client-37465dd48d1479db1bae513eb0b92c4e9a15e9ea.ts} +6 -4
  227. package/test/party/components/temp/{CssStyle-server-3e58d7e2f5c381a251f593245d3d8bf4b50925ae.ts → CssStyle-server-90a950501a20bfa5feac84ca6d97898c25bce2ed.ts} +1 -1
  228. package/test/party/components/temp/{DoubleCount-client-0426f128507a8d4516ef7501cd180662112b6d1d.ts → DoubleCount-client-6d4cf1e54368e3c6082e37c1e04f9ecde90624f2.ts} +7 -5
  229. package/test/party/components/temp/{DoubleCount-server-40fc88156e52281b80fd6b12dd73d2469201fa29.ts → DoubleCount-server-62c94483ebe9661e5ecc4f489787e32448ddcafa.ts} +1 -1
  230. package/test/party/components/temp/{FunnyButton-client-45f2c5dd56f2cdb80102193a978df6b0cec822ab.ts → FunnyButton-client-61a1699da08e210375edff33f7b27d3cc0e99cc3.ts} +12 -9
  231. package/test/party/components/temp/{FunnyButton-server-e8ab55e47c735f7e42c55d2b7504dfa4190a1b40.ts → FunnyButton-server-e0adab2be2d283acb8a8b580479ade999dc918e9.ts} +2 -2
  232. package/test/party/components/temp/{FunnyButtonApp-client-ac7101af922dc6ba472b75a428f340caca6be74a.ts → FunnyButtonApp-client-cbce6a591bae38ab8b312551f8741d50ae6294bf.ts} +15 -9
  233. package/test/party/components/temp/{FunnyButtonApp-server-f1a98a946e0bb9d1bb76b01e26d6ead8f55d32bb.ts → FunnyButtonApp-server-48d37de0c755843a2be34d7c7cb5c730689dcc2f.ts} +3 -3
  234. package/test/party/components/temp/{HelloWorld-client-791e8b9a0bd4b01e87fbe70f2b28d4ac356e3624.ts → HelloWorld-client-7344e400b4adb975fa8263d3081a06de0a793e57.ts} +6 -4
  235. package/test/party/components/temp/{HelloWorld-server-3c4b9a995a78d652d9220a20124c9e0d18fc7101.ts → HelloWorld-server-e0ed80e7531f303952a4af30d646263ff2e4ead6.ts} +1 -1
  236. package/test/party/components/temp/{InputFocused-client-11a9cb08909b26945bbc2451ab4c1dac09e6d113.ts → InputFocused-client-20d755aea7dfaf1fd5e42dcade8fb7867f59ef28.ts} +7 -4
  237. package/test/party/components/temp/{InputFocused-server-82be1a63c80d1dd3f06efaf0bef349d58cf1d9af.ts → InputFocused-server-ee70758a515227c04788be0e298a79c277994ccd.ts} +1 -1
  238. package/test/party/components/temp/{InputHello-client-b0453caeae0d43dc1878039c6b49318d12624d48.ts → InputHello-client-2a4cbd980534fde14b9d3e8a2f8e4f59a4f15d64.ts} +8 -6
  239. package/test/party/components/temp/{InputHello-server-6c982438e58d3649ee3890efec636ca4590a5cdb.ts → InputHello-server-1b9dd5442ded022abe92a9075ca5a4bb90486cbe.ts} +1 -1
  240. package/test/party/components/temp/{IsAvailable-client-d789346a68b26fd3f5d9f7aebc4c7bd181c47cad.ts → IsAvailable-client-3949f85aea0e935c3b59ab1389baee836eff1866.ts} +8 -6
  241. package/test/party/components/temp/{IsAvailable-server-a35b7ec5f111472c76aa1b67c857b169fe363594.ts → IsAvailable-server-123daa1ae56b77defe6666faddb44ba4252dd0fb.ts} +1 -1
  242. package/test/party/components/temp/{Name-client-cb8bef7cfca1306386b65410a0bd7a8acfaed359.ts → Name-client-62f0dab96aff130e81882099d7c0a111ba99cebd.ts} +7 -5
  243. package/test/party/components/temp/{Name-server-9da0823f748e9751e017078f39717298be232636.ts → Name-server-a402418f1ca2d8a0e6403596ec03ec47b5ff40ec.ts} +1 -1
  244. package/test/party/components/temp/{NameUpdate-client-ebef69b0da12d640994099592ce06c7e4b5089d4.ts → NameUpdate-client-6ceb440637c99142bafcf8512eabf831c113b8c7.ts} +7 -5
  245. package/test/party/components/temp/{NameUpdate-server-1856bdb5e010f7d7e5e67f2a0d87ac3f92f4e0ee.ts → NameUpdate-server-b7dcc875e894a5606544fcd78bda575ea07632ca.ts} +1 -1
  246. package/test/party/components/temp/{PageTitle-client-403645e918294e5cdeea8cb3f602e0a2642b2650.ts → PageTitle-client-75fea3a37fb1213bc13f56160bb6779486b2e6e9.ts} +7 -5
  247. package/test/party/components/temp/{PageTitle-server-4d959183b7029b6817372abd1d60a7e996baeb15.ts → PageTitle-server-12dcb4e437aaef227c704a2ee8bbdee55ca323dc.ts} +1 -1
  248. package/test/party/components/temp/{PickPill-client-b47d371ae5f41d87c96b3cdeed0a8bc06fbfa9c7.ts → PickPill-client-0f13aa652cb1bd45f57d5a249f8364e80204441a.ts} +9 -7
  249. package/test/party/components/temp/{PickPill-server-49e033c5f97dd2f98e1498327e16eb9c8c9d2f66.ts → PickPill-server-f10dae4708e36775a5e1a5ad10c6c0c309335009.ts} +1 -1
  250. package/test/party/components/temp/{Time-client-7ba4ca9322af2cb88a873c812fc776760c337c64.ts → Time-client-2013f274e90b45be3138727f2298305e1951131f.ts} +7 -5
  251. package/test/party/components/temp/{Time-server-08f66c7f3f32b13de06d75fe679cf58b5727c473.ts → Time-server-8e0278a4b16925903f3c4ceedbf1332cde4921fa.ts} +1 -1
  252. package/test/party/components/temp/{TrafficLight-client-549f9fe3418c113fb240cfa17e09c42e1e7f346a.ts → TrafficLight-client-4010f51fde4c8c21e6c232eff974c86820dbad4f.ts} +19 -17
  253. package/test/party/components/temp/{TrafficLight-server-ed2a8640fd82cf381eee8f4fb83bb09d174a4557.ts → TrafficLight-server-04bb3b2f11322ccc97a9a8a8fbb26c3c99843042.ts} +5 -5
  254. package/test/party/components/temp/{UserProfile-client-2c13aac1ad915e51dc557f9af765669e636c0fea.ts → UserProfile-client-11c2a928de5a5ed4cab45186f08ca09f6161afb5.ts} +10 -8
  255. package/test/party/components/temp/{UserProfile-server-cc1162a4297f6163bfb86e7a8aeea08e8c0625c6.ts → UserProfile-server-a0576b8d9dd15b3fab6c11758984c686ddfe2f66.ts} +1 -1
  256. package/test/party/components/temp/{UserProfileApp-client-2be7a11319cca4d7bfa0f3d2205c441d7e203780.ts → UserProfileApp-client-32b5cc129b32af5cdd94f39c6fb09a2e4806b04e.ts} +9 -4
  257. package/test/party/components/temp/{UserProfileApp-server-ab9ff66f787f775aa8571314fee8bcbef85489ef.ts → UserProfileApp-server-97397c42aaac0ee3902218d02c0ce6884434cc5b.ts} +2 -0
  258. package/test/party/components/temp/{UserProfileContext-client-2aa36f436a5f20614d77f48963ec5ca442eebd90.ts → UserProfileContext-client-c97c077254210061b3c9ba561f681c0cf4f6167f.ts} +9 -7
  259. package/test/party/components/temp/{UserProfileContext-server-cf58767df1e2d1dde919f59de73cdd9764bbc006.ts → UserProfileContext-server-2d32476b00448bdec6c1c45aac5087a5152c2471.ts} +1 -1
  260. package/test/party/components/temp/{UserProfileContextApp-client-5099052fdcd8fb4c368c45090390947424a4e9b0.ts → UserProfileContextApp-client-c4b64ccf44069bcbf18acb585afa62ac9127aeb9.ts} +11 -7
  261. package/test/party/components/temp/{UserProfileContextApp-server-6be8dab2ed4f8911f26bef137e7dea164f2b894d.ts → UserProfileContextApp-server-95a4b12d30cef621db55d5de102a906ac7286fb2.ts} +2 -2
  262. package/test/props/components/output/Reactive-client.ts +18 -12
  263. package/test/props/components/output/Reactive-server.ts +3 -3
  264. package/test/props/components/temp/{Reactive-client-e3e5f6ee2f22c46337c6ab1df2f241133c7e2646.ts → Reactive-client-249382840865c9911857b89085bc85ff901b8e8f.ts} +18 -12
  265. package/test/props/components/temp/{Reactive-server-0914d91287a1bc6d32d7cc56d086624762dbfc04.ts → Reactive-server-770cd3df7c877c0c99e156b2ba6d1f8b35914027.ts} +3 -3
  266. package/test/replace/components/output/Replace-client.ts +11 -8
  267. package/test/replace/components/output/Replace-server.ts +2 -2
  268. package/test/replace/components/temp/{Replace-client-3fdab63871fa4bb792317caefd3539b1888325b1.ts → Replace-client-ef66f06bc0cfa91e800b185dbccbca6a98693c21.ts} +11 -8
  269. package/test/replace/components/temp/{Replace-server-857aca7a58deffc3a1c95ab9d31628b4051ca203.ts → Replace-server-9519943d193b681e1d7894a0d7952affdfb0660c.ts} +2 -2
  270. package/test/slots/components/output/Article-client.ts +13 -9
  271. package/test/slots/components/output/Article-server.ts +2 -2
  272. package/test/slots/components/output/Basic-client.ts +9 -5
  273. package/test/slots/components/output/Basic-server.ts +2 -0
  274. package/test/slots/components/output/Header-client.ts +10 -7
  275. package/test/slots/components/output/Header-server.ts +2 -2
  276. package/test/slots/components/output/Let-client.ts +9 -5
  277. package/test/slots/components/output/Let-server.ts +2 -0
  278. package/test/slots/components/output/List-client.ts +12 -9
  279. package/test/slots/components/output/List-server.ts +2 -2
  280. package/test/slots/components/output/Named-client.ts +12 -8
  281. package/test/slots/components/output/Named-server.ts +2 -0
  282. package/test/slots/components/output/Unused-client.ts +9 -4
  283. package/test/slots/components/output/Unused-server.ts +2 -0
  284. package/test/slots/components/temp/{Article-client-80848d6cadd8abac61865d14ddd35685844797e0.ts → Article-client-f7676836f5ded94222b11ef81e41dd675d1af04b.ts} +13 -9
  285. package/test/slots/components/temp/{Article-server-a6bd47a621cc213db4313eb775a52246541dd203.ts → Article-server-b84141b05064f5ea1e4b535faafe459df0d875fb.ts} +2 -2
  286. package/test/slots/components/temp/{Basic-client-97b18686412869e8c814fd4542dfe826b1f7669f.ts → Basic-client-e7650b8be5f6e50fa0f2f343a145f86edfe14ff4.ts} +9 -5
  287. package/test/slots/components/temp/{Basic-server-248392e2cd147b537cd44e9a5a71885ef20102e4.ts → Basic-server-aed46a5b459cce50e7ddb311c42a76b9e91c2dae.ts} +2 -0
  288. package/test/slots/components/temp/{Header-client-e2e1e7d60b48b0841cd0c20224f520330ca96458.ts → Header-client-127c27e6bfcd5b37cc871164cd665b740418dc82.ts} +10 -7
  289. package/test/slots/components/temp/{Header-server-1c195508a91c32822da22a08576c8a30c9070636.ts → Header-server-d8e8ccb129d84478f0c4f8dc8ad1d2091188cc7b.ts} +2 -2
  290. package/test/slots/components/temp/{Let-client-be69c1f5aa32faf16239050d7836db46cfdcba2f.ts → Let-client-c107eb0fe42f125996d2c9a83ab7b3c1916ca26d.ts} +9 -5
  291. package/test/slots/components/temp/{Let-server-c3293219ed27aec61a6af36d451ddf6609c40027.ts → Let-server-62727e5e2db3df405cdbe7a2d339a99113fc7f4a.ts} +2 -0
  292. package/test/slots/components/temp/{List-client-a829b33214de829de689a72d2e8703b2266ad7a4.ts → List-client-ca1d8f9a9cc8b513323de7c5531a4ec03898d920.ts} +12 -9
  293. package/test/slots/components/temp/{List-server-06503834c9bfae9b8c2b61742568b020a3de961c.ts → List-server-f4f63df4d19e15311da347284935a1bb530a8df4.ts} +2 -2
  294. package/test/slots/components/temp/{Named-client-2d9d88f5fdf74d81c3ed1d769a476f4ac36c8b99.ts → Named-client-636b6a18c25a27099f883cb9eeb04e182e248941.ts} +12 -8
  295. package/test/slots/components/temp/{Named-server-65a7bbf038111475c8f07dccb34040ab8c1392c4.ts → Named-server-829daa82c94fd7142a721cabac1b3402cca8fce6.ts} +2 -0
  296. package/test/slots/components/temp/{Unused-client-1b16491cb800bbbbd871d9fbf5966c7275244019.ts → Unused-client-0aefcc79e9ae050358fa049a35b7e8e0a6bc2d66.ts} +9 -4
  297. package/test/slots/components/temp/{Unused-server-e5d1e85116bebc7e1a2882cb8f2c9ae7975a1de7.ts → Unused-server-379b45ff313e82f8b2949385f50d8ea482094520.ts} +2 -0
  298. package/test/special-component/components/output/BigTitle-client.ts +9 -6
  299. package/test/special-component/components/output/BigTitle-server.ts +2 -2
  300. package/test/special-component/components/output/Component-client.ts +10 -4
  301. package/test/special-component/components/output/Component-server.ts +2 -2
  302. package/test/special-component/components/output/SmallTitle-client.ts +9 -6
  303. package/test/special-component/components/output/SmallTitle-server.ts +2 -2
  304. package/test/special-component/components/temp/{BigTitle-client-881a9f84876fb3f6d994736edb253b96e71de926.ts → BigTitle-client-04ca3c7b6aaf76b81baa5a3d3720fbd2a1760550.ts} +9 -6
  305. package/test/special-component/components/temp/{BigTitle-server-9efc738f5eb131a4b859c4a99a8e255d93834e9a.ts → BigTitle-server-d8919a4c975e022c936584bd668917cb89aa8e20.ts} +2 -2
  306. package/test/special-component/components/temp/{Component-client-22f7e1d0955fb3d90939e956a1f0f77118c259b6.ts → Component-client-24cd39596c4281ee2709e6aa482818d071825b4f.ts} +10 -4
  307. package/test/special-component/components/temp/{Component-server-ce596cd84dc11f67c9f0588060a5b672eddf9715.ts → Component-server-3564dfcef8d015cab4944a3c75cc6cf329f3fad6.ts} +2 -2
  308. package/test/special-component/components/temp/{SmallTitle-client-25b3097b7ae47848dd82967403faf7745fc43388.ts → SmallTitle-client-213b422377a30fe0b12f7256e654bf0313ac9cf9.ts} +9 -6
  309. package/test/special-component/components/temp/{SmallTitle-server-fc105db9a91b83644d67e049ce583a3d1a61f50c.ts → SmallTitle-server-0a9b5098e4dda96f8c1da30294d71b39997dd118.ts} +2 -2
  310. package/test/special-element/components/output/Element-client.ts +8 -6
  311. package/test/special-element/components/output/Element-server.ts +1 -1
  312. package/test/special-element/components/temp/{Element-client-21c92c04579b1d29e8813265a10897d069aad5c5.ts → Element-client-c5701ed44faa4ec8ae558505063684a84cada3f2.ts} +8 -6
  313. package/test/special-element/components/temp/{Element-server-4bed9653529f39e72754126147fe8618f328853a.ts → Element-server-166d672256ef4635168de0090e490e48b569c7d6.ts} +1 -1
  314. package/test/special-head/components/output/Head-client.ts +6 -4
  315. package/test/special-head/components/output/Head-server.ts +1 -1
  316. package/test/special-head/components/temp/{Head-client-07e8af6386d767a52667a4fdc978a335ec388302.ts → Head-client-18616689a7d6f83ca076c9d825606b049de9d3ef.ts} +6 -4
  317. package/test/special-head/components/temp/{Head-server-d80a0f1ee10e9942d9a631df35a24cb1cfb15555.ts → Head-server-c0956653b544ff632e36da15d5f7623fa285953a.ts} +1 -1
  318. package/test/special-self/components/output/Self-client.ts +12 -8
  319. package/test/special-self/components/output/Self-server.ts +4 -4
  320. package/test/special-self/components/temp/{Self-client-911c67194be1fdd997537310bcafe712161e8251.ts → Self-client-99b34229c85a477881299311f56f48686352c3b3.ts} +12 -8
  321. package/test/special-self/components/temp/{Self-server-49ba9be1f6255dd4daf490c640f5222a85960218.ts → Self-server-ee440757ca9772d7b4111451a9ee05a157302e7c.ts} +4 -4
  322. package/test/style/components/output/Style-client.ts +7 -4
  323. package/test/style/components/output/Style-server.ts +1 -1
  324. package/test/style/components/temp/{Style-client-cbfac1e255c33a867ccbd5f9d1484a855d91a2d7.ts → Style-client-bc13f8dbb5f754e4eebb2473fc63a139ebf1ba92.ts} +7 -4
  325. package/test/style/components/temp/{Style-server-763d82ee2296be3f7620814aed950b505329c04c.ts → Style-server-85720cb43e20ab000f98bc632c29454a51ae92d9.ts} +1 -1
  326. package/test/svg/components/output/Shape-client.ts +14 -11
  327. package/test/svg/components/output/Shape-server.ts +4 -4
  328. package/test/svg/components/temp/{Shape-client-cb98b36ab2a0d9f06b484a3c988fb43c3a71a4a0.ts → Shape-client-368789c592401c3e4c99ddcdb8fe6dded45eb34a.ts} +14 -11
  329. package/test/svg/components/temp/{Shape-server-500d7fe4556026234ce5379b8e90595ddd094edc.ts → Shape-server-9951ff1dcc7aa0827f28d3f8d970813767115ae3.ts} +4 -4
  330. package/test/switch/components/output/Switch-client.ts +17 -14
  331. package/test/switch/components/output/Switch-server.ts +5 -5
  332. package/test/switch/components/temp/{Switch-client-9980de45e3346b79525c445edec7cbc3b375e8a4.ts → Switch-client-5ef1937202adac7fd5aae866357d95beb4b5805f.ts} +17 -14
  333. package/test/switch/components/temp/{Switch-server-1c5690726f28008bb565966af69b6e4e019dea82.ts → Switch-server-c1b5e1c657438ee3d8afdbf2166c5295cafc5604.ts} +5 -5
  334. package/test/template/errors.test.ts +8 -6
  335. package/test/text/components/output/Text-client.ts +8 -6
  336. package/test/text/components/output/Text-server.ts +1 -1
  337. package/test/text/components/temp/{Text-client-63f1d3bf9b3bd145c7ce7058716640e27144055e.ts → Text-client-e335aae6d8aef389dfdbb5bee14e3dd3d41e86bd.ts} +8 -6
  338. package/test/text/components/temp/{Text-server-9d3dd6f51e893e63c1999ceafce19ca1697d76ea.ts → Text-server-e37d33aa182f36461927d8ce36040bfd05e2f227.ts} +1 -1
  339. package/test/watch-array/components/output/Array-client.ts +12 -9
  340. package/test/watch-array/components/output/Array-server.ts +2 -2
  341. package/test/watch-array/components/output/ArrayEntries-client.ts +12 -9
  342. package/test/watch-array/components/output/ArrayEntries-server.ts +2 -2
  343. package/test/watch-array/components/output/ArrayIndexes-client.ts +12 -9
  344. package/test/watch-array/components/output/ArrayIndexes-server.ts +2 -2
  345. package/test/watch-array/components/output/ArrayUnkeyed-client.ts +12 -9
  346. package/test/watch-array/components/output/ArrayUnkeyed-server.ts +2 -2
  347. package/test/watch-array/components/temp/{Array-client-ffd82188a45877d74053c82fb3616e4aed0fc2ad.ts → Array-client-24ccac431fa237432ec4875234773f36a9a5b120.ts} +12 -9
  348. package/test/watch-array/components/temp/{Array-server-3715e815af887e8487b214e7de324850fe99e312.ts → Array-server-c907209008ac6177f614b62931a2bb1f1c3a04e1.ts} +2 -2
  349. package/test/watch-array/components/temp/{ArrayEntries-client-b6e982660628576061dbb44539e970b9549bdcfa.ts → ArrayEntries-client-ebfb391a78325be4411f24a1ecfdc45ca3a6a621.ts} +12 -9
  350. package/test/watch-array/components/temp/{ArrayEntries-server-85cbe80fbb7f6885287825e2cc0dfc1cb9835d79.ts → ArrayEntries-server-57c1ab0045fa4a02de95f69a65de6f54efe9850c.ts} +2 -2
  351. package/test/watch-array/components/temp/{ArrayIndexes-client-39337aa43bd8c10a53db836c3be233d48dd39b91.ts → ArrayIndexes-client-0a4b3226862bb1de13fdbc7a14f689d9f7ade2a1.ts} +12 -9
  352. package/test/watch-array/components/temp/{ArrayIndexes-server-ec623c724af0c7212675d61ea68e9dee87f96caa.ts → ArrayIndexes-server-f093878b94a37617e2e697a786caa680f75630a7.ts} +2 -2
  353. package/test/watch-array/components/temp/{ArrayUnkeyed-client-7606f9a6a221c8cf6a8b51e4895d10a3d7bccc11.ts → ArrayUnkeyed-client-0966fa5ed460f4c627d8d619e493601098d6a33e.ts} +12 -9
  354. package/test/watch-array/components/temp/{ArrayUnkeyed-server-db21cd576a4c70973abe10f6c8ef5cecb3ead86c.ts → ArrayUnkeyed-server-c893fa024be07e5e7fce608c3ae456bdf2279dbe.ts} +2 -2
  355. package/test/watch-object/components/output/Watched-client.ts +7 -5
  356. package/test/watch-object/components/output/Watched-server.ts +1 -1
  357. package/test/watch-object/components/temp/{Watched-client-bbffbf2cede1a5c071b770670eb39c0f0be725af.ts → Watched-client-d26e846bbeb8271ec5dc2a1ceb75b362af44d3bd.ts} +7 -5
  358. package/test/watch-object/components/temp/{Watched-server-0252addaf92fb0f0c1e2937f42918a1c9f31d196.ts → Watched-server-312fca1e769d7594fc5bb6295ccf55b544dd2f4d.ts} +1 -1
  359. package/test/class/components/temp/Class-server-853a463d2ad1a1e3da4da5ad59ad1c75461d2431.ts +0 -40
package/dist/index.cjs CHANGED
@@ -24,8 +24,10 @@ __export(index_exports, {
24
24
  $run: () => $run,
25
25
  $unwrap: () => $unwrap,
26
26
  $watch: () => $watch,
27
+ clearLayoutSlot: () => clearLayoutSlot,
27
28
  hydrate: () => hydrate,
28
29
  mount: () => mount,
30
+ runLayoutSlot: () => runLayoutSlot,
29
31
  t_add_fragment: () => addFragment,
30
32
  t_anchor: () => nodeAnchor,
31
33
  t_animate: () => addAnimation,
@@ -46,6 +48,7 @@ __export(index_exports, {
46
48
  t_run_branch: () => runControlBranch,
47
49
  t_run_control: () => runControl,
48
50
  t_run_list: () => runList,
51
+ t_skip: () => nodeSkip,
49
52
  t_style: () => getStyles
50
53
  });
51
54
  module.exports = __toCommonJS(index_exports);
@@ -307,12 +310,12 @@ async function animate(el, enter, keyframes, options) {
307
310
  }
308
311
 
309
312
  // src/render/addFragment.ts
310
- function addFragment(fragment, parent, before) {
313
+ function addFragment(fragment, parent, before, endNode) {
311
314
  const range = context_default.activeRange;
312
315
  const hydrationNode = context_default.hydrationNode;
313
316
  if (range) {
314
317
  if (hydrationNode) {
315
- range.endNode = hydrationNode;
318
+ range.endNode = endNode ?? hydrationNode;
316
319
  } else {
317
320
  range.startNode = fragment.firstChild;
318
321
  range.endNode = fragment.lastChild;
@@ -326,7 +329,7 @@ function addFragment(fragment, parent, before) {
326
329
  parent.insertBefore(fragment, before);
327
330
  }
328
331
  if (!parentIsFragment) {
329
- if (!context_default.hydrationNode) {
332
+ if (!hydrationNode) {
330
333
  for (let effect of context_default.mountEffects) {
331
334
  $run(effect);
332
335
  }
@@ -378,6 +381,59 @@ function applyProps(el, props, propNamesUsed) {
378
381
  }
379
382
  }
380
383
 
384
+ // src/render/clearRange.ts
385
+ function clearRange(range) {
386
+ let animations = [];
387
+ clearEffects(range, animations);
388
+ if (animations.length) {
389
+ Promise.all(animations.map((a) => a.finished)).then(() => clearNodes(range));
390
+ } else {
391
+ clearNodes(range);
392
+ }
393
+ }
394
+ function clearEffects(range, animations) {
395
+ if (range.effects) {
396
+ const oldRange = context_default.activeRange;
397
+ context_default.activeRange = range;
398
+ for (let effect of range.effects) {
399
+ removeEffect(effect);
400
+ }
401
+ context_default.activeRange = oldRange;
402
+ }
403
+ if (range.animations) {
404
+ for (let animation of range.animations) {
405
+ animations.push(animation);
406
+ }
407
+ }
408
+ if (range.children) {
409
+ for (let child of range.children) {
410
+ clearEffects(child, animations);
411
+ }
412
+ range.children.length = 0;
413
+ }
414
+ }
415
+ function clearNodes(range) {
416
+ if (range.startNode) {
417
+ let currentNode = range.endNode || range.startNode;
418
+ if (range.startNode.parentNode !== currentNode.parentNode) {
419
+ throw new Error("range nodes have different parents");
420
+ }
421
+ while (currentNode !== range.startNode) {
422
+ let nextNode = currentNode.previousSibling;
423
+ currentNode.remove();
424
+ currentNode = nextNode;
425
+ }
426
+ currentNode.remove();
427
+ range.startNode = null;
428
+ range.endNode = null;
429
+ }
430
+ }
431
+
432
+ // src/render/clearLayoutSlot.ts
433
+ function clearLayoutSlot(range) {
434
+ clearRange(range);
435
+ }
436
+
381
437
  // src/render/formatText.ts
382
438
  function formatText(value) {
383
439
  return value ?? "";
@@ -487,58 +543,71 @@ function newRange() {
487
543
  // src/render/hydrationMarkers.ts
488
544
  var HYDRATION_START = "[";
489
545
  var HYDRATION_END = "]";
490
- var HYDRATION_BRANCH = "^";
546
+ var HYDRATION_BREAK = "^";
491
547
 
492
548
  // src/render/isComment.ts
493
549
  function isComment(node) {
494
- return node.nodeType === 8;
550
+ return node?.nodeType === 8;
495
551
  }
496
552
 
497
- // src/render/nodeNext.ts
498
- function nodeNext(node, count) {
499
- let nextNode = checkHydrationNode(node.nextSibling);
500
- if (count) {
501
- for (let i = 1; i < count; i++) {
502
- nextNode = checkHydrationNode(nextNode.nextSibling);
503
- }
504
- }
505
- return nextNode;
553
+ // src/render/isText.ts
554
+ function isText(node) {
555
+ return node?.nodeType === 3;
506
556
  }
507
- function checkHydrationNode(nextNode) {
557
+
558
+ // src/render/nodeCheckHydrationBreak.ts
559
+ function nodeCheckHydrationBreak(node) {
508
560
  if (context_default.hydrationNode) {
509
- if (nextNode && isComment(nextNode) && nextNode.data === HYDRATION_BRANCH) {
510
- let comment = nextNode;
511
- nextNode = nextNode.nextSibling;
561
+ if (node && isComment(node) && node.data === HYDRATION_BREAK) {
562
+ let comment = node;
563
+ node = node.nextSibling;
512
564
  comment.remove();
513
565
  }
514
- context_default.hydrationNode = nextNode;
566
+ context_default.hydrationNode = node;
515
567
  }
568
+ return node;
569
+ }
570
+
571
+ // src/render/nodeNext.ts
572
+ function nodeNext(node, text = false) {
573
+ if (context_default.hydrationNode && text && isText(node)) {
574
+ return node;
575
+ }
576
+ let nextNode = nodeCheckHydrationBreak(node.nextSibling);
516
577
  return nextNode;
517
578
  }
518
579
 
519
580
  // src/render/nodeAnchor.ts
520
- function nodeAnchor(node) {
521
- if (context_default.hydrationNode && isComment(node) && node.data === HYDRATION_START) {
522
- let currentNode = nodeNext(node);
523
- node.remove();
524
- let level = 1;
525
- while (currentNode) {
526
- if (isComment(currentNode)) {
527
- if (currentNode.data === HYDRATION_START) {
528
- level += 1;
529
- } else if (currentNode.data === HYDRATION_END) {
530
- level -= 1;
531
- }
532
- if (level === 0) {
533
- const endNode = currentNode.nextSibling;
534
- currentNode.remove();
535
- return endNode;
581
+ function nodeAnchor(node, subsequent = false) {
582
+ if (context_default.hydrationNode) {
583
+ if (subsequent) {
584
+ return context_default.hydrationNode;
585
+ }
586
+ if (isComment(node) && node.data === HYDRATION_START) {
587
+ let currentNode = nodeNext(node);
588
+ node.remove();
589
+ let level = 1;
590
+ while (currentNode) {
591
+ if (isComment(currentNode)) {
592
+ if (currentNode.data === HYDRATION_START) {
593
+ level += 1;
594
+ } else if (currentNode.data === HYDRATION_END) {
595
+ level -= 1;
596
+ if (level === 0) {
597
+ const endNode = currentNode.nextSibling;
598
+ currentNode.remove();
599
+ if (context_default.hydrationNode === currentNode) {
600
+ context_default.hydrationNode = endNode;
601
+ }
602
+ return endNode;
603
+ }
604
+ }
536
605
  }
606
+ currentNode = currentNode.nextSibling;
607
+ }
608
+ if (!currentNode) {
609
+ throw new Error("End hydration comment not found");
537
610
  }
538
- currentNode = currentNode.nextSibling;
539
- }
540
- if (!currentNode) {
541
- throw new Error("End hydration comment not found");
542
611
  }
543
612
  }
544
613
  return node;
@@ -546,30 +615,43 @@ function nodeAnchor(node) {
546
615
 
547
616
  // src/render/nodeChild.ts
548
617
  function nodeChild(parent) {
549
- let child = parent.firstChild;
618
+ let childNode = parent.firstChild;
550
619
  if (context_default.hydrationNode) {
551
- if (!child) {
552
- child = parent.appendChild(parent.ownerDocument.createTextNode(""));
620
+ if (!childNode) {
621
+ childNode = parent.appendChild(parent.ownerDocument.createTextNode(""));
553
622
  }
554
- context_default.hydrationNode = child;
623
+ context_default.hydrationNode = childNode;
555
624
  }
556
- return child;
625
+ return childNode;
557
626
  }
558
627
 
559
628
  // src/render/nodeRoot.ts
560
- function nodeRoot(parent) {
561
- const hydrationNode = context_default.hydrationNode;
562
- if (hydrationNode) {
629
+ function nodeRoot(parent, text = false) {
630
+ if (context_default.hydrationNode) {
631
+ let rootNode = context_default.hydrationNode;
632
+ if (text && !isText(rootNode) && isText(rootNode.previousSibling)) {
633
+ rootNode = rootNode.previousSibling;
634
+ context_default.hydrationNode = rootNode;
635
+ }
563
636
  const range = context_default.activeRange;
564
637
  if (range && !range.startNode) {
565
- range.startNode = hydrationNode;
638
+ range.startNode = rootNode;
566
639
  }
567
- return hydrationNode;
640
+ return rootNode;
568
641
  } else {
569
642
  return parent.firstChild;
570
643
  }
571
644
  }
572
645
 
646
+ // src/render/nodeSkip.ts
647
+ function nodeSkip(node, count) {
648
+ let nextNode = node;
649
+ for (let i = 0; i < count; i++) {
650
+ nextNode = nodeCheckHydrationBreak(nextNode.nextSibling);
651
+ }
652
+ return nextNode;
653
+ }
654
+
573
655
  // src/render/popRange.ts
574
656
  function popRange(oldRange) {
575
657
  context_default.activeRange = oldRange;
@@ -600,54 +682,6 @@ function runControl(range, anchor, create) {
600
682
  popRange(oldRange);
601
683
  }
602
684
 
603
- // src/render/clearRange.ts
604
- function clearRange(range) {
605
- let animations = [];
606
- clearEffects(range, animations);
607
- if (animations.length) {
608
- Promise.all(animations.map((a) => a.finished)).then(() => clearNodes(range));
609
- } else {
610
- clearNodes(range);
611
- }
612
- }
613
- function clearEffects(range, animations) {
614
- if (range.effects) {
615
- const oldRange = context_default.activeRange;
616
- context_default.activeRange = range;
617
- for (let effect of range.effects) {
618
- removeEffect(effect);
619
- }
620
- context_default.activeRange = oldRange;
621
- }
622
- if (range.animations) {
623
- for (let animation of range.animations) {
624
- animations.push(animation);
625
- }
626
- }
627
- if (range.children) {
628
- for (let child of range.children) {
629
- clearEffects(child, animations);
630
- }
631
- range.children.length = 0;
632
- }
633
- }
634
- function clearNodes(range) {
635
- if (range.startNode) {
636
- let currentNode = range.endNode || range.startNode;
637
- if (range.startNode.parentNode !== currentNode.parentNode) {
638
- throw new Error("range nodes have different parents");
639
- }
640
- while (currentNode !== range.startNode) {
641
- let nextNode = currentNode.previousSibling;
642
- currentNode.remove();
643
- currentNode = nextNode;
644
- }
645
- currentNode.remove();
646
- range.startNode = null;
647
- range.endNode = null;
648
- }
649
- }
650
-
651
685
  // src/render/runControlBranch.ts
652
686
  function runControlBranch(range, index, create) {
653
687
  if (index >= 0 && range.index === index) {
@@ -666,6 +700,17 @@ function runControlBranch(range, index, create) {
666
700
  range.index = index;
667
701
  }
668
702
 
703
+ // src/render/runLayoutSlot.ts
704
+ function runLayoutSlot(component, slot, parent, anchor, $props, $context) {
705
+ const range = newRange();
706
+ const oldRange = pushRange(range, true);
707
+ component(parent, anchor, $props, $context, {
708
+ _: slot
709
+ });
710
+ popRange(oldRange);
711
+ return range;
712
+ }
713
+
669
714
  // src/render/moveRange.ts
670
715
  function moveRange(parent, range, before) {
671
716
  const endNode = range.endNode || range.startNode;
@@ -823,8 +868,10 @@ function setDynamicElement(el, tag) {
823
868
  $run,
824
869
  $unwrap,
825
870
  $watch,
871
+ clearLayoutSlot,
826
872
  hydrate,
827
873
  mount,
874
+ runLayoutSlot,
828
875
  t_add_fragment,
829
876
  t_anchor,
830
877
  t_animate,
@@ -845,6 +892,7 @@ function setDynamicElement(el, tag) {
845
892
  t_run_branch,
846
893
  t_run_control,
847
894
  t_run_list,
895
+ t_skip,
848
896
  t_style
849
897
  });
850
898
  //# sourceMappingURL=index.cjs.map