ripple 0.3.72 → 0.3.76

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 (172) hide show
  1. package/CHANGELOG.md +116 -0
  2. package/package.json +3 -3
  3. package/src/jsx-runtime.d.ts +4 -10
  4. package/src/runtime/dynamic-client.js +33 -0
  5. package/src/runtime/dynamic-server.js +80 -0
  6. package/src/runtime/index-client.js +5 -13
  7. package/src/runtime/index-server.js +2 -0
  8. package/src/runtime/internal/client/blocks.js +6 -27
  9. package/src/runtime/internal/client/composite.js +11 -6
  10. package/src/runtime/internal/client/for.js +80 -5
  11. package/src/runtime/internal/client/index.js +0 -2
  12. package/src/runtime/internal/client/render.js +5 -2
  13. package/src/runtime/internal/client/types.d.ts +0 -10
  14. package/src/runtime/internal/server/index.js +8 -1
  15. package/tests/client/__snapshots__/computed-properties.test.tsrx.snap +8 -0
  16. package/tests/client/__snapshots__/for.test.tsrx.snap +22 -0
  17. package/tests/client/__snapshots__/html.test.tsrx.snap +4 -0
  18. package/tests/client/array/array.copy-within.test.tsrx +19 -19
  19. package/tests/client/array/array.derived.test.tsrx +97 -109
  20. package/tests/client/array/array.iteration.test.tsrx +28 -28
  21. package/tests/client/array/array.mutations.test.tsrx +68 -68
  22. package/tests/client/array/array.static.test.tsrx +82 -92
  23. package/tests/client/array/array.to-methods.test.tsrx +15 -15
  24. package/tests/client/async-suspend.test.tsrx +180 -179
  25. package/tests/client/basic/__snapshots__/basic.attributes.test.tsrx.snap +2 -0
  26. package/tests/client/basic/__snapshots__/basic.rendering.test.tsrx.snap +4 -0
  27. package/tests/client/basic/basic.attributes.test.tsrx +273 -317
  28. package/tests/client/basic/basic.collections.test.tsrx +55 -61
  29. package/tests/client/basic/basic.components.test.tsrx +198 -220
  30. package/tests/client/basic/basic.errors.test.tsrx +70 -76
  31. package/tests/client/basic/basic.events.test.tsrx +80 -85
  32. package/tests/client/basic/basic.get-set.test.tsrx +54 -64
  33. package/tests/client/basic/basic.hmr.test.tsrx +15 -19
  34. package/tests/client/basic/basic.reactivity.test.tsrx +121 -135
  35. package/tests/client/basic/basic.rendering.test.tsrx +273 -178
  36. package/tests/client/basic/basic.styling.test.tsrx +16 -14
  37. package/tests/client/basic/basic.utilities.test.tsrx +8 -10
  38. package/tests/client/boundaries.test.tsrx +18 -18
  39. package/tests/client/compiler/compiler.assignments.test.tsrx +77 -76
  40. package/tests/client/compiler/compiler.attributes.test.tsrx +18 -14
  41. package/tests/client/compiler/compiler.basic.test.tsrx +357 -288
  42. package/tests/client/compiler/compiler.regex.test.tsrx +40 -44
  43. package/tests/client/compiler/compiler.tracked-access.test.tsrx +57 -38
  44. package/tests/client/compiler/compiler.try-in-function.test.tsrx +16 -16
  45. package/tests/client/compiler/compiler.typescript.test.tsrx +4 -3
  46. package/tests/client/composite/composite.dynamic-components.test.tsrx +62 -47
  47. package/tests/client/composite/composite.generics.test.tsrx +165 -167
  48. package/tests/client/composite/composite.props.test.tsrx +66 -74
  49. package/tests/client/composite/composite.reactivity.test.tsrx +132 -166
  50. package/tests/client/composite/composite.render.test.tsrx +92 -101
  51. package/tests/client/computed-properties.test.tsrx +14 -18
  52. package/tests/client/context.test.tsrx +14 -18
  53. package/tests/client/css/global-additional-cases.test.tsrx +493 -439
  54. package/tests/client/css/global-advanced-selectors.test.tsrx +169 -153
  55. package/tests/client/css/global-at-rules.test.tsrx +71 -66
  56. package/tests/client/css/global-basic.test.tsrx +105 -98
  57. package/tests/client/css/global-classes-ids.test.tsrx +128 -114
  58. package/tests/client/css/global-combinators.test.tsrx +83 -78
  59. package/tests/client/css/global-complex-nesting.test.tsrx +134 -120
  60. package/tests/client/css/global-edge-cases.test.tsrx +138 -120
  61. package/tests/client/css/global-keyframes.test.tsrx +108 -96
  62. package/tests/client/css/global-nested.test.tsrx +88 -78
  63. package/tests/client/css/global-pseudo.test.tsrx +104 -98
  64. package/tests/client/css/global-scoping.test.tsrx +145 -125
  65. package/tests/client/css/style-identifier.test.tsrx +65 -72
  66. package/tests/client/date.test.tsrx +83 -83
  67. package/tests/client/dynamic-elements.test.tsrx +318 -299
  68. package/tests/client/events.test.tsrx +252 -266
  69. package/tests/client/for.test.tsrx +120 -127
  70. package/tests/client/head.test.tsrx +74 -48
  71. package/tests/client/html.test.tsrx +37 -49
  72. package/tests/client/input-value.test.tsrx +1125 -1354
  73. package/tests/client/lazy-array.test.tsrx +10 -16
  74. package/tests/client/lazy-destructuring.test.tsrx +169 -221
  75. package/tests/client/map.test.tsrx +39 -41
  76. package/tests/client/media-query.test.tsrx +15 -19
  77. package/tests/client/object.test.tsrx +46 -56
  78. package/tests/client/portal.test.tsrx +31 -37
  79. package/tests/client/ref.test.tsrx +173 -193
  80. package/tests/client/return.test.tsrx +62 -37
  81. package/tests/client/set.test.tsrx +33 -33
  82. package/tests/client/svg.test.tsrx +197 -216
  83. package/tests/client/switch.test.tsrx +201 -191
  84. package/tests/client/track-async-hydration.test.tsrx +14 -18
  85. package/tests/client/tracked-index-access.test.tsrx +18 -28
  86. package/tests/client/try.test.tsrx +494 -619
  87. package/tests/client/tsx.test.tsrx +286 -292
  88. package/tests/client/typescript-generics.test.tsrx +121 -129
  89. package/tests/client/url/url.derived.test.tsrx +21 -25
  90. package/tests/client/url/url.parsing.test.tsrx +35 -35
  91. package/tests/client/url/url.partial-removal.test.tsrx +32 -32
  92. package/tests/client/url/url.reactivity.test.tsrx +68 -72
  93. package/tests/client/url/url.serialization.test.tsrx +8 -8
  94. package/tests/client/url-search-params/url-search-params.derived.test.tsrx +21 -27
  95. package/tests/client/url-search-params/url-search-params.initialization.test.tsrx +16 -16
  96. package/tests/client/url-search-params/url-search-params.iteration.test.tsrx +37 -37
  97. package/tests/client/url-search-params/url-search-params.mutation.test.tsrx +56 -60
  98. package/tests/client/url-search-params/url-search-params.retrieval.test.tsrx +32 -34
  99. package/tests/client/url-search-params/url-search-params.serialization.test.tsrx +9 -9
  100. package/tests/client/url-search-params/url-search-params.tracked-url.test.tsrx +10 -10
  101. package/tests/hydration/compiled/client/basic.js +390 -319
  102. package/tests/hydration/compiled/client/composite.js +52 -44
  103. package/tests/hydration/compiled/client/for.js +734 -604
  104. package/tests/hydration/compiled/client/head.js +183 -103
  105. package/tests/hydration/compiled/client/html.js +93 -86
  106. package/tests/hydration/compiled/client/if-children.js +95 -71
  107. package/tests/hydration/compiled/client/if.js +113 -89
  108. package/tests/hydration/compiled/client/mixed-control-flow.js +225 -209
  109. package/tests/hydration/compiled/client/nested-control-flow.js +94 -98
  110. package/tests/hydration/compiled/client/reactivity.js +26 -24
  111. package/tests/hydration/compiled/client/return.js +8 -42
  112. package/tests/hydration/compiled/client/switch.js +208 -173
  113. package/tests/hydration/compiled/client/track-async-serialization.js +176 -128
  114. package/tests/hydration/compiled/client/try.js +29 -21
  115. package/tests/hydration/compiled/server/basic.js +210 -221
  116. package/tests/hydration/compiled/server/composite.js +13 -14
  117. package/tests/hydration/compiled/server/for.js +427 -444
  118. package/tests/hydration/compiled/server/head.js +199 -189
  119. package/tests/hydration/compiled/server/html.js +33 -41
  120. package/tests/hydration/compiled/server/if-children.js +114 -117
  121. package/tests/hydration/compiled/server/if.js +77 -83
  122. package/tests/hydration/compiled/server/mixed-control-flow.js +145 -150
  123. package/tests/hydration/compiled/server/nested-control-flow.js +10 -0
  124. package/tests/hydration/compiled/server/reactivity.js +24 -22
  125. package/tests/hydration/compiled/server/return.js +6 -18
  126. package/tests/hydration/compiled/server/switch.js +179 -176
  127. package/tests/hydration/compiled/server/track-async-serialization.js +88 -70
  128. package/tests/hydration/compiled/server/try.js +31 -35
  129. package/tests/hydration/components/basic.tsrx +216 -258
  130. package/tests/hydration/components/composite.tsrx +32 -42
  131. package/tests/hydration/components/events.tsrx +81 -101
  132. package/tests/hydration/components/for.tsrx +270 -336
  133. package/tests/hydration/components/head.tsrx +43 -39
  134. package/tests/hydration/components/hmr.tsrx +16 -22
  135. package/tests/hydration/components/html-in-template.tsrx +15 -21
  136. package/tests/hydration/components/html.tsrx +442 -526
  137. package/tests/hydration/components/if-children.tsrx +107 -125
  138. package/tests/hydration/components/if.tsrx +68 -90
  139. package/tests/hydration/components/mixed-control-flow.tsrx +65 -72
  140. package/tests/hydration/components/nested-control-flow.tsrx +202 -216
  141. package/tests/hydration/components/portal.tsrx +33 -41
  142. package/tests/hydration/components/reactivity.tsrx +26 -34
  143. package/tests/hydration/components/return.tsrx +4 -6
  144. package/tests/hydration/components/switch.tsrx +73 -78
  145. package/tests/hydration/components/track-async-serialization.tsrx +83 -93
  146. package/tests/hydration/components/try.tsrx +37 -51
  147. package/tests/hydration/switch.test.js +8 -8
  148. package/tests/server/await.test.tsrx +3 -3
  149. package/tests/server/basic.attributes.test.tsrx +117 -162
  150. package/tests/server/basic.components.test.tsrx +164 -194
  151. package/tests/server/basic.test.tsrx +299 -199
  152. package/tests/server/compiler.test.tsrx +142 -72
  153. package/tests/server/composite.props.test.tsrx +54 -58
  154. package/tests/server/composite.test.tsrx +165 -167
  155. package/tests/server/context.test.tsrx +13 -17
  156. package/tests/server/dynamic-elements.test.tsrx +147 -148
  157. package/tests/server/for.test.tsrx +115 -84
  158. package/tests/server/head.test.tsrx +54 -31
  159. package/tests/server/html-nesting-validation.test.tsrx +16 -8
  160. package/tests/server/if.test.tsrx +49 -59
  161. package/tests/server/lazy-destructuring.test.tsrx +288 -366
  162. package/tests/server/return.test.tsrx +58 -36
  163. package/tests/server/streaming-ssr.test.tsrx +4 -4
  164. package/tests/server/style-identifier.test.tsrx +61 -69
  165. package/tests/server/switch.test.tsrx +89 -97
  166. package/tests/server/track-async-serialization.test.tsrx +85 -103
  167. package/tests/server/try.test.tsrx +275 -360
  168. package/tests/utils/ref-types.test.js +72 -0
  169. package/tests/utils/vite-plugin-config.test.js +41 -74
  170. package/types/index.d.ts +29 -4
  171. package/src/runtime/internal/client/compat.js +0 -40
  172. package/tests/utils/compiler-compat-config.test.js +0 -38
@@ -10,23 +10,25 @@ var root_6 = _$_.template(`<!>`, 1, 1);
10
10
  var root_2 = _$_.template(`<!>`, 1, 1);
11
11
  var root_1 = _$_.template(`<!>`, 1, 1);
12
12
  var root = _$_.template(`<section class="mixed-static"></section>`, 0);
13
- var root_13 = _$_.template(`<p> </p>`, 0);
14
- var root_14 = _$_.template(`<p class="pending">pending a</p>`, 0);
13
+ var root_14 = _$_.template(`<p> </p>`, 0);
14
+ var root_15 = _$_.template(`<p class="pending">pending a</p>`, 0);
15
+ var root_13 = _$_.template(`<!>`, 1, 1);
16
+ var root_17 = _$_.template(`<p> </p>`, 0);
17
+ var root_18 = _$_.template(`<p class="pending">pending b</p>`, 0);
18
+ var root_16 = _$_.template(`<!>`, 1, 1);
15
19
  var root_12 = _$_.template(`<!>`, 1, 1);
16
- var root_16 = _$_.template(`<p> </p>`, 0);
17
- var root_17 = _$_.template(`<p class="pending">pending b</p>`, 0);
18
- var root_15 = _$_.template(`<!>`, 1, 1);
19
- var root_11 = _$_.template(`<!>`, 1, 1);
20
- var root_10 = _$_.template(`<div class="mixed-reactive-list"></div>`, 0);
21
- var root_9 = _$_.template(`<button class="toggle-show">Toggle Show</button><button class="toggle-mode">Toggle Mode</button><button class="add-item">Add Item</button><!>`, 1, 4);
20
+ var root_11 = _$_.template(`<div class="mixed-reactive-list"></div>`, 0);
21
+ var root_10 = _$_.template(`<button class="toggle-show">Toggle Show</button><button class="toggle-mode">Toggle Mode</button><button class="add-item">Add Item</button><!>`, 1, 4);
22
+ var root_9 = _$_.template(`<!>`, 1, 1);
23
+ var root_24 = _$_.template(`<!>`, 1, 1);
24
+ var root_25 = _$_.template(`<div> </div>`, 0);
25
+ var root_23 = _$_.template(`<!>`, 1, 1);
26
+ var root_26 = _$_.template(`<div class="unexpected">unexpected</div>`, 0);
22
27
  var root_22 = _$_.template(`<!>`, 1, 1);
23
- var root_23 = _$_.template(`<div> </div>`, 0);
24
28
  var root_21 = _$_.template(`<!>`, 1, 1);
25
- var root_24 = _$_.template(`<div class="unexpected">unexpected</div>`, 0);
26
- var root_20 = _$_.template(`<!>`, 1, 1);
29
+ var root_20 = _$_.template(`<div class="before">before</div><!>`, 1, 2);
27
30
  var root_19 = _$_.template(`<!>`, 1, 1);
28
- var root_18 = _$_.template(`<div class="before">before</div><!>`, 1, 2);
29
- var root_25 = _$_.template(`<div class="resolved-row"> </div>`, 0);
31
+ var root_27 = _$_.template(`<div class="resolved-row"> </div>`, 0);
30
32
 
31
33
  import { track, trackAsync } from 'ripple';
32
34
 
@@ -194,160 +196,167 @@ export function MixedControlFlowReactive() {
194
196
  let lazy_1 = _$_.track('a', __block, '5b53eda2');
195
197
  let lazy_2 = _$_.track([{ id: 1, label: 'One' }, { id: 2, label: 'Two' }], __block, '7890dad6');
196
198
  var fragment_4 = root_9();
197
- var button_1 = _$_.first_child_frag(fragment_4);
199
+ var node_8 = _$_.first_child_frag(fragment_4);
198
200
 
199
- button_1.__click = () => {
200
- _$_.set(lazy, !lazy.value);
201
- };
201
+ _$_.expression(node_8, () => _$_.tsrx_element((__anchor, __block) => {
202
+ var fragment_5 = root_10();
203
+ var button_1 = _$_.first_child_frag(fragment_5);
202
204
 
203
- var button_2 = _$_.sibling(button_1);
204
-
205
- button_2.__click = () => {
206
- _$_.set(lazy_1, lazy_1.value === 'a' ? 'b' : 'a');
207
- };
208
-
209
- var button_3 = _$_.sibling(button_2);
210
-
211
- button_3.__click = () => {
212
- _$_.set(lazy_2, [...lazy_2.value, { id: 3, label: 'Three' }]);
213
- };
205
+ button_1.__click = () => {
206
+ _$_.set(lazy, !lazy.value);
207
+ };
214
208
 
215
- var node_4 = _$_.sibling(button_3);
209
+ var button_2 = _$_.sibling(button_1);
216
210
 
217
- {
218
- var consequent_1 = (__anchor) => {
219
- var div_5 = root_10();
211
+ button_2.__click = () => {
212
+ _$_.set(lazy_1, lazy_1.value === 'a' ? 'b' : 'a');
213
+ };
220
214
 
221
- {
222
- _$_.for_keyed(
223
- div_5,
224
- () => lazy_2.value,
225
- (__anchor, pattern_1) => {
226
- var fragment_5 = root_11();
227
- var node_5 = _$_.first_child_frag(fragment_5);
215
+ var button_3 = _$_.sibling(button_2);
228
216
 
229
- {
230
- var switch_case_0_1 = (__anchor) => {
231
- var fragment_6 = root_12();
232
- var node_6 = _$_.first_child_frag(fragment_6);
217
+ button_3.__click = () => {
218
+ _$_.set(lazy_2, [...lazy_2.value, { id: 3, label: 'Three' }]);
219
+ };
233
220
 
234
- _$_.try(
235
- node_6,
236
- (__anchor) => {
237
- var p_1 = root_13();
221
+ var node_4 = _$_.sibling(button_3);
238
222
 
239
- {
240
- var expression_2 = _$_.child(p_1, true);
223
+ {
224
+ var consequent_1 = (__anchor) => {
225
+ var div_5 = root_11();
241
226
 
242
- _$_.pop(p_1);
227
+ {
228
+ _$_.for_keyed(
229
+ div_5,
230
+ () => lazy_2.value,
231
+ (__anchor, pattern_1) => {
232
+ var fragment_6 = root_12();
233
+ var node_5 = _$_.first_child_frag(fragment_6);
234
+
235
+ {
236
+ var switch_case_0_1 = (__anchor) => {
237
+ var fragment_7 = root_13();
238
+ var node_6 = _$_.first_child_frag(fragment_7);
239
+
240
+ _$_.try(
241
+ node_6,
242
+ (__anchor) => {
243
+ var p_1 = root_14();
244
+
245
+ {
246
+ var expression_2 = _$_.child(p_1, true);
247
+
248
+ _$_.pop(p_1);
249
+ }
250
+
251
+ _$_.render(
252
+ (__prev) => {
253
+ var __a = `A:${_$_.get(pattern_1).label}`;
254
+
255
+ if (__prev.a !== __a) {
256
+ _$_.set_text(expression_2, __prev.a = __a);
257
+ }
258
+
259
+ var __b = `item item-${_$_.get(pattern_1).id}`;
260
+
261
+ if (__prev.b !== __b) {
262
+ _$_.set_class(p_1, __prev.b = __b, void 0, true);
263
+ }
264
+ },
265
+ { a: ' ', b: Symbol() }
266
+ );
267
+
268
+ _$_.append(__anchor, p_1);
269
+ },
270
+ null,
271
+ (__anchor) => {
272
+ var p_2 = root_15();
273
+
274
+ _$_.append(__anchor, p_2);
243
275
  }
276
+ );
244
277
 
245
- _$_.render(
246
- (__prev) => {
247
- var __a = `A:${_$_.get(pattern_1).label}`;
278
+ _$_.append(__anchor, fragment_7);
279
+ };
248
280
 
249
- if (__prev.a !== __a) {
250
- _$_.set_text(expression_2, __prev.a = __a);
251
- }
281
+ var switch_case_default_1 = (__anchor) => {
282
+ var fragment_8 = root_16();
283
+ var node_7 = _$_.first_child_frag(fragment_8);
252
284
 
253
- var __b = `item item-${_$_.get(pattern_1).id}`;
285
+ _$_.try(
286
+ node_7,
287
+ (__anchor) => {
288
+ var p_3 = root_17();
254
289
 
255
- if (__prev.b !== __b) {
256
- _$_.set_class(p_1, __prev.b = __b, void 0, true);
257
- }
258
- },
259
- { a: ' ', b: Symbol() }
260
- );
290
+ {
291
+ var expression_3 = _$_.child(p_3, true);
261
292
 
262
- _$_.append(__anchor, p_1);
263
- },
264
- null,
265
- (__anchor) => {
266
- var p_2 = root_14();
293
+ _$_.pop(p_3);
294
+ }
267
295
 
268
- _$_.append(__anchor, p_2);
269
- }
270
- );
296
+ _$_.render(
297
+ (__prev) => {
298
+ var __a = `B:${_$_.get(pattern_1).label}`;
271
299
 
272
- _$_.append(__anchor, fragment_6);
273
- };
300
+ if (__prev.a !== __a) {
301
+ _$_.set_text(expression_3, __prev.a = __a);
302
+ }
274
303
 
275
- var switch_case_default_1 = (__anchor) => {
276
- var fragment_7 = root_15();
277
- var node_7 = _$_.first_child_frag(fragment_7);
304
+ var __b = `item item-${_$_.get(pattern_1).id}`;
278
305
 
279
- _$_.try(
280
- node_7,
281
- (__anchor) => {
282
- var p_3 = root_16();
306
+ if (__prev.b !== __b) {
307
+ _$_.set_class(p_3, __prev.b = __b, void 0, true);
308
+ }
309
+ },
310
+ { a: ' ', b: Symbol() }
311
+ );
283
312
 
284
- {
285
- var expression_3 = _$_.child(p_3, true);
313
+ _$_.append(__anchor, p_3);
314
+ },
315
+ null,
316
+ (__anchor) => {
317
+ var p_4 = root_18();
286
318
 
287
- _$_.pop(p_3);
319
+ _$_.append(__anchor, p_4);
288
320
  }
321
+ );
289
322
 
290
- _$_.render(
291
- (__prev) => {
292
- var __a = `B:${_$_.get(pattern_1).label}`;
293
-
294
- if (__prev.a !== __a) {
295
- _$_.set_text(expression_3, __prev.a = __a);
296
- }
297
-
298
- var __b = `item item-${_$_.get(pattern_1).id}`;
323
+ _$_.append(__anchor, fragment_8);
324
+ };
299
325
 
300
- if (__prev.b !== __b) {
301
- _$_.set_class(p_3, __prev.b = __b, void 0, true);
302
- }
303
- },
304
- { a: ' ', b: Symbol() }
305
- );
326
+ _$_.switch(node_5, () => {
327
+ var result = [];
306
328
 
307
- _$_.append(__anchor, p_3);
308
- },
309
- null,
310
- (__anchor) => {
311
- var p_4 = root_17();
329
+ switch (lazy_1.value) {
330
+ case 'a':
331
+ result.push(switch_case_0_1);
332
+ return result;
312
333
 
313
- _$_.append(__anchor, p_4);
334
+ default:
335
+ result.push(switch_case_default_1);
336
+ return result;
314
337
  }
315
- );
316
-
317
- _$_.append(__anchor, fragment_7);
318
- };
319
-
320
- _$_.switch(node_5, () => {
321
- var result = [];
338
+ });
339
+ }
322
340
 
323
- switch (lazy_1.value) {
324
- case 'a':
325
- result.push(switch_case_0_1);
326
- return result;
341
+ _$_.append(__anchor, fragment_6);
342
+ },
343
+ 4,
344
+ (pattern_1) => _$_.get(pattern_1).id
345
+ );
327
346
 
328
- default:
329
- result.push(switch_case_default_1);
330
- return result;
331
- }
332
- });
333
- }
334
-
335
- _$_.append(__anchor, fragment_5);
336
- },
337
- 4,
338
- (pattern_1) => _$_.get(pattern_1).id
339
- );
347
+ _$_.pop(div_5);
348
+ }
340
349
 
341
- _$_.pop(div_5);
342
- }
350
+ _$_.append(__anchor, div_5);
351
+ };
343
352
 
344
- _$_.append(__anchor, div_5);
345
- };
353
+ _$_.if(node_4, (__render) => {
354
+ if (lazy.value) __render(consequent_1);
355
+ });
356
+ }
346
357
 
347
- _$_.if(node_4, (__render) => {
348
- if (lazy.value) __render(consequent_1);
349
- });
350
- }
358
+ _$_.append(__anchor, fragment_5);
359
+ }));
351
360
 
352
361
  _$_.append(__anchor, fragment_4);
353
362
  });
@@ -357,98 +366,105 @@ export function MixedControlFlowAsyncPending() {
357
366
  return _$_.tsrx_element((__anchor, __block) => {
358
367
  const rows = [1, 2];
359
368
  const state = 'slow';
360
- var fragment_8 = root_18();
361
- var div_6 = _$_.first_child_frag(fragment_8);
362
- var node_8 = _$_.sibling(div_6);
363
-
364
- _$_.for(
365
- node_8,
366
- () => rows,
367
- (__anchor, row) => {
368
- var fragment_9 = root_19();
369
- var node_9 = _$_.first_child_frag(fragment_9);
370
-
371
- {
372
- var consequent_2 = (__anchor) => {
373
- var fragment_10 = root_20();
374
- var node_10 = _$_.first_child_frag(fragment_10);
375
-
376
- {
377
- var switch_case_0_2 = (__anchor) => {
378
- var fragment_11 = root_21();
379
- var node_11 = _$_.first_child_frag(fragment_11);
380
-
381
- _$_.try(
382
- node_11,
383
- (__anchor) => {
384
- var fragment_12 = root_22();
385
- var node_12 = _$_.first_child_frag(fragment_12);
386
-
387
- _$_.render_component(AsyncRow, node_12, { label: `row-${row}` });
388
- _$_.append(__anchor, fragment_12);
389
- },
390
- null,
391
- (__anchor) => {
392
- var div_7 = root_23();
393
-
394
- _$_.set_class(div_7, `pending-row pending-row-${row}`, void 0, true);
395
-
396
- {
397
- var expression_4 = _$_.child(div_7, true);
398
-
399
- expression_4.nodeValue = `pending ${row}`;
400
- _$_.pop(div_7);
369
+ var fragment_9 = root_19();
370
+ var node_14 = _$_.first_child_frag(fragment_9);
371
+
372
+ _$_.expression(node_14, () => _$_.tsrx_element((__anchor, __block) => {
373
+ var fragment_10 = root_20();
374
+ var div_6 = _$_.first_child_frag(fragment_10);
375
+ var node_9 = _$_.sibling(div_6);
376
+
377
+ _$_.for(
378
+ node_9,
379
+ () => rows,
380
+ (__anchor, row) => {
381
+ var fragment_11 = root_21();
382
+ var node_10 = _$_.first_child_frag(fragment_11);
383
+
384
+ {
385
+ var consequent_2 = (__anchor) => {
386
+ var fragment_12 = root_22();
387
+ var node_11 = _$_.first_child_frag(fragment_12);
388
+
389
+ {
390
+ var switch_case_0_2 = (__anchor) => {
391
+ var fragment_13 = root_23();
392
+ var node_12 = _$_.first_child_frag(fragment_13);
393
+
394
+ _$_.try(
395
+ node_12,
396
+ (__anchor) => {
397
+ var fragment_14 = root_24();
398
+ var node_13 = _$_.first_child_frag(fragment_14);
399
+
400
+ _$_.render_component(AsyncRow, node_13, { label: `row-${row}` });
401
+ _$_.append(__anchor, fragment_14);
402
+ },
403
+ null,
404
+ (__anchor) => {
405
+ var div_7 = root_25();
406
+
407
+ _$_.set_class(div_7, `pending-row pending-row-${row}`, void 0, true);
408
+
409
+ {
410
+ var expression_4 = _$_.child(div_7, true);
411
+
412
+ expression_4.nodeValue = `pending ${row}`;
413
+ _$_.pop(div_7);
414
+ }
415
+
416
+ _$_.append(__anchor, div_7);
401
417
  }
418
+ );
402
419
 
403
- _$_.append(__anchor, div_7);
404
- }
405
- );
420
+ _$_.append(__anchor, fragment_13);
421
+ };
406
422
 
407
- _$_.append(__anchor, fragment_11);
408
- };
423
+ var switch_case_default_2 = (__anchor) => {
424
+ var div_8 = root_26();
409
425
 
410
- var switch_case_default_2 = (__anchor) => {
411
- var div_8 = root_24();
426
+ _$_.append(__anchor, div_8);
427
+ };
412
428
 
413
- _$_.append(__anchor, div_8);
414
- };
429
+ _$_.switch(node_11, () => {
430
+ var result = [];
415
431
 
416
- _$_.switch(node_10, () => {
417
- var result = [];
432
+ switch (state) {
433
+ case 'slow':
434
+ result.push(switch_case_0_2);
435
+ return result;
418
436
 
419
- switch (state) {
420
- case 'slow':
421
- result.push(switch_case_0_2);
422
- return result;
437
+ default:
438
+ result.push(switch_case_default_2);
439
+ return result;
440
+ }
441
+ });
442
+ }
423
443
 
424
- default:
425
- result.push(switch_case_default_2);
426
- return result;
427
- }
428
- });
429
- }
444
+ _$_.append(__anchor, fragment_12);
445
+ };
430
446
 
431
- _$_.append(__anchor, fragment_10);
432
- };
447
+ _$_.if(node_10, (__render) => {
448
+ if (row === 1) __render(consequent_2);
449
+ });
450
+ }
433
451
 
434
- _$_.if(node_9, (__render) => {
435
- if (row === 1) __render(consequent_2);
436
- });
437
- }
452
+ _$_.append(__anchor, fragment_11);
453
+ },
454
+ 0
455
+ );
438
456
 
439
- _$_.append(__anchor, fragment_9);
440
- },
441
- 0
442
- );
457
+ _$_.append(__anchor, fragment_10);
458
+ }));
443
459
 
444
- _$_.append(__anchor, fragment_8);
460
+ _$_.append(__anchor, fragment_9);
445
461
  });
446
462
  }
447
463
 
448
464
  function AsyncRow({ label }) {
449
465
  return _$_.tsrx_element((__anchor, __block) => {
450
466
  let lazy_3 = _$_.track_async(() => _$_.with_scope(__block, () => Promise.resolve(label)), __block, '10cc79a0');
451
- var div_9 = root_25();
467
+ var div_9 = root_27();
452
468
 
453
469
  {
454
470
  var expression_5 = _$_.child(div_9);