ripple 0.3.84 → 0.3.86

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 (59) hide show
  1. package/CHANGELOG.md +81 -0
  2. package/package.json +3 -3
  3. package/src/constants.js +4 -0
  4. package/src/runtime/internal/client/blocks.js +53 -0
  5. package/src/runtime/internal/client/component.js +3 -3
  6. package/src/runtime/internal/client/constants.js +4 -0
  7. package/src/runtime/internal/client/for.js +87 -14
  8. package/src/runtime/internal/client/if.js +18 -2
  9. package/src/runtime/internal/client/index.js +1 -0
  10. package/src/runtime/internal/client/operations.js +25 -0
  11. package/src/runtime/internal/client/runtime.js +62 -10
  12. package/src/runtime/internal/client/switch.js +33 -5
  13. package/src/runtime/internal/client/template.js +10 -2
  14. package/src/runtime/internal/client/try.js +12 -2
  15. package/src/runtime/internal/client/types.d.ts +4 -0
  16. package/tests/client/__snapshots__/for.test.tsrx.snap +0 -2
  17. package/tests/client/compiler/compiler.basic.test.tsrx +5 -2
  18. package/tests/client/composite/__snapshots__/composite.render.test.tsrx.snap +0 -4
  19. package/tests/client/for-single-root-items.test.tsrx +130 -0
  20. package/tests/client/scoped-flush.test.tsrx +105 -0
  21. package/tests/hydration/compiled/client/basic.js +198 -214
  22. package/tests/hydration/compiled/client/composite.js +23 -72
  23. package/tests/hydration/compiled/client/for.js +66 -72
  24. package/tests/hydration/compiled/client/hmr.js +2 -13
  25. package/tests/hydration/compiled/client/html.js +619 -479
  26. package/tests/hydration/compiled/client/if-children.js +72 -84
  27. package/tests/hydration/compiled/client/if-fragment-controlflow.js +463 -0
  28. package/tests/hydration/compiled/client/if.js +87 -92
  29. package/tests/hydration/compiled/client/mixed-control-flow.js +120 -160
  30. package/tests/hydration/compiled/client/nested-control-flow.js +288 -360
  31. package/tests/hydration/compiled/client/portal.js +15 -21
  32. package/tests/hydration/compiled/client/reactivity.js +7 -12
  33. package/tests/hydration/compiled/client/switch.js +113 -115
  34. package/tests/hydration/compiled/client/track-async-serialization.js +71 -122
  35. package/tests/hydration/compiled/client/try.js +26 -41
  36. package/tests/hydration/compiled/server/basic.js +295 -556
  37. package/tests/hydration/compiled/server/composite.js +31 -50
  38. package/tests/hydration/compiled/server/events.js +37 -173
  39. package/tests/hydration/compiled/server/for.js +236 -847
  40. package/tests/hydration/compiled/server/head.js +110 -241
  41. package/tests/hydration/compiled/server/hmr.js +14 -41
  42. package/tests/hydration/compiled/server/html-in-template.js +14 -38
  43. package/tests/hydration/compiled/server/html.js +951 -1176
  44. package/tests/hydration/compiled/server/if-children.js +59 -493
  45. package/tests/hydration/compiled/server/if-fragment-controlflow.js +227 -0
  46. package/tests/hydration/compiled/server/if.js +57 -209
  47. package/tests/hydration/compiled/server/mixed-control-flow.js +144 -250
  48. package/tests/hydration/compiled/server/nested-control-flow.js +309 -559
  49. package/tests/hydration/compiled/server/portal.js +94 -156
  50. package/tests/hydration/compiled/server/reactivity.js +23 -65
  51. package/tests/hydration/compiled/server/return.js +6 -16
  52. package/tests/hydration/compiled/server/switch.js +91 -219
  53. package/tests/hydration/compiled/server/track-async-serialization.js +211 -256
  54. package/tests/hydration/compiled/server/try.js +67 -126
  55. package/tests/hydration/components/html.tsrx +75 -0
  56. package/tests/hydration/components/if-fragment-controlflow.tsrx +145 -0
  57. package/tests/hydration/html.test.js +50 -0
  58. package/tests/hydration/if-fragment-controlflow.test.js +95 -0
  59. package/tests/server/compiler.test.tsrx +6 -2
@@ -0,0 +1,463 @@
1
+ // @ts-nocheck
2
+ import * as _$_ from 'ripple/internal/client';
3
+
4
+ var root_3 = _$_.template(`<p class="muze"> </p>`, 0);
5
+ var root_2 = _$_.template(`<!><span class="after">after</span>`, 1, 2);
6
+ var root_1 = _$_.template(`<!>`, 1, 1);
7
+ var root = _$_.template(`<div class="feed-c"><!></div>`, 0);
8
+ var root_7 = _$_.template(`<p class="muze"> </p>`, 0);
9
+ var root_8 = _$_.template(`<span class="has-items">has items</span>`, 0);
10
+ var root_9 = _$_.template(`<span class="empty">empty</span>`, 0);
11
+ var root_6 = _$_.template(`<!><!><!>`, 1, 3);
12
+ var root_5 = _$_.template(`<!>`, 1, 1);
13
+ var root_4 = _$_.template(`<div class="feed"><!></div>`, 0);
14
+ var root_12 = _$_.template(`<p class="muze">b</p><p class="muze">c</p>`, 1, 2);
15
+ var root_11 = _$_.template(`<!>`, 1, 1);
16
+ var root_10 = _$_.template(`<div class="feed-b"><!></div>`, 0);
17
+ var root_15 = _$_.template(`<p class="muze"> </p>`, 0);
18
+ var root_14 = _$_.template(`<!><span class="after">after</span>`, 1, 2);
19
+ var root_13 = _$_.template(`<!>`, 1, 1);
20
+ var root_17 = _$_.template(`<p class="muze"> </p>`, 0);
21
+ var root_18 = _$_.template(`<!><span class="after">after</span>`, 1, 2);
22
+ var root_16 = _$_.template(`<!>`, 1, 1);
23
+ var root_21 = _$_.template(`<p class="muze"> </p>`, 0);
24
+ var root_22 = _$_.template(`<!><span class="after">after</span>`, 1, 2);
25
+ var root_20 = _$_.template(`<!>`, 1, 1);
26
+ var root_19 = _$_.template(`<div class="feed-f"><!></div>`, 0);
27
+ var root_24 = _$_.template(`<span class="loading">loading</span>`, 0);
28
+ var root_27 = _$_.template(`<p class="muze"> </p>`, 0);
29
+ var root_26 = _$_.template(`<!><span class="after">after</span>`, 1, 2);
30
+ var root_25 = _$_.template(`<!>`, 1, 1);
31
+ var root_23 = _$_.template(`<div class="feed-d"><!></div>`, 0);
32
+ var root_31 = _$_.template(`<p class="muze"> </p>`, 0);
33
+ var root_30 = _$_.template(`<!><span class="after">after</span>`, 1, 2);
34
+ var root_29 = _$_.template(`<section><!></section>`, 0);
35
+ var root_28 = _$_.template(`<div class="feed-e"><!></div>`, 0);
36
+
37
+ export function IfFragmentForElement() {
38
+ return _$_.tsrx_element((__anchor, __block) => {
39
+ const muzes = [{ muzeId: 'b' }, { muzeId: 'c' }];
40
+ const hasLoaded = true;
41
+ var div_1 = root();
42
+
43
+ {
44
+ var node = _$_.child(div_1);
45
+
46
+ {
47
+ var consequent = (__anchor) => {
48
+ var fragment = root_1();
49
+ var node_2 = _$_.first_child_frag(fragment);
50
+
51
+ _$_.expression(node_2, () => _$_.tsrx_element((__anchor, __block) => {
52
+ var fragment_1 = root_2();
53
+ var node_1 = _$_.first_child_frag(fragment_1);
54
+
55
+ _$_.for_keyed(
56
+ node_1,
57
+ () => muzes,
58
+ (__anchor, pattern) => {
59
+ var p_1 = root_3();
60
+
61
+ {
62
+ var expression = _$_.child(p_1);
63
+
64
+ _$_.expression(expression, () => _$_.get(pattern).muzeId);
65
+ _$_.pop(p_1);
66
+ }
67
+
68
+ _$_.append(__anchor, p_1);
69
+ },
70
+ 0,
71
+ (pattern) => _$_.get(pattern).muzeId
72
+ );
73
+
74
+ _$_.append(__anchor, fragment_1);
75
+ }));
76
+
77
+ _$_.append(__anchor, fragment);
78
+ };
79
+
80
+ _$_.if(node, (__render) => {
81
+ if (hasLoaded) __render(consequent);
82
+ });
83
+ }
84
+
85
+ _$_.pop(div_1);
86
+ }
87
+
88
+ _$_.append(__anchor, div_1);
89
+ });
90
+ }
91
+
92
+ export function IfFragmentForIfIf() {
93
+ return _$_.tsrx_element((__anchor, __block) => {
94
+ const muzes = [{ muzeId: 'b' }, { muzeId: 'c' }];
95
+ const hasLoaded = true;
96
+ var div_2 = root_4();
97
+
98
+ {
99
+ var node_3 = _$_.child(div_2);
100
+
101
+ {
102
+ var consequent_3 = (__anchor) => {
103
+ var fragment_2 = root_5();
104
+ var node_7 = _$_.first_child_frag(fragment_2);
105
+
106
+ _$_.expression(node_7, () => _$_.tsrx_element((__anchor, __block) => {
107
+ var fragment_3 = root_6();
108
+ var node_4 = _$_.first_child_frag(fragment_3);
109
+
110
+ _$_.for_keyed(
111
+ node_4,
112
+ () => muzes,
113
+ (__anchor, pattern_1) => {
114
+ var p_2 = root_7();
115
+
116
+ {
117
+ var expression_1 = _$_.child(p_2);
118
+
119
+ _$_.expression(expression_1, () => _$_.get(pattern_1).muzeId);
120
+ _$_.pop(p_2);
121
+ }
122
+
123
+ _$_.append(__anchor, p_2);
124
+ },
125
+ 0,
126
+ (pattern_1) => _$_.get(pattern_1).muzeId
127
+ );
128
+
129
+ var node_5 = _$_.sibling(node_4);
130
+
131
+ {
132
+ var consequent_1 = (__anchor) => {
133
+ var span_1 = root_8();
134
+
135
+ _$_.append(__anchor, span_1);
136
+ };
137
+
138
+ _$_.if(node_5, (__render) => {
139
+ if (muzes.length > 0) __render(consequent_1);
140
+ });
141
+ }
142
+
143
+ var node_6 = _$_.sibling(node_5);
144
+
145
+ {
146
+ var consequent_2 = (__anchor) => {
147
+ var span_2 = root_9();
148
+
149
+ _$_.append(__anchor, span_2);
150
+ };
151
+
152
+ _$_.if(node_6, (__render) => {
153
+ if (muzes.length === 0) __render(consequent_2);
154
+ });
155
+ }
156
+
157
+ _$_.append(__anchor, fragment_3);
158
+ }));
159
+
160
+ _$_.append(__anchor, fragment_2);
161
+ };
162
+
163
+ _$_.if(node_3, (__render) => {
164
+ if (hasLoaded) __render(consequent_3);
165
+ });
166
+ }
167
+
168
+ _$_.pop(div_2);
169
+ }
170
+
171
+ _$_.append(__anchor, div_2);
172
+ });
173
+ }
174
+
175
+ export function IfFragmentElements() {
176
+ return _$_.tsrx_element((__anchor, __block) => {
177
+ const hasLoaded = true;
178
+ var div_3 = root_10();
179
+
180
+ {
181
+ var node_8 = _$_.child(div_3);
182
+
183
+ {
184
+ var consequent_4 = (__anchor) => {
185
+ var fragment_4 = root_11();
186
+ var node_9 = _$_.first_child_frag(fragment_4);
187
+
188
+ _$_.expression(node_9, () => _$_.tsrx_element((__anchor, __block) => {
189
+ var fragment_5 = root_12();
190
+
191
+ _$_.append(__anchor, fragment_5);
192
+ }));
193
+
194
+ _$_.append(__anchor, fragment_4);
195
+ };
196
+
197
+ _$_.if(node_8, (__render) => {
198
+ if (hasLoaded) __render(consequent_4);
199
+ });
200
+ }
201
+
202
+ _$_.pop(div_3);
203
+ }
204
+
205
+ _$_.append(__anchor, div_3);
206
+ });
207
+ }
208
+
209
+ export function ComponentBodyFragmentControlFlow() {
210
+ return _$_.tsrx_element((__anchor, __block) => {
211
+ const muzes = [{ muzeId: 'b' }, { muzeId: 'c' }];
212
+ var fragment_6 = root_13();
213
+ var node_11 = _$_.first_child_frag(fragment_6);
214
+
215
+ _$_.expression(node_11, () => _$_.tsrx_element((__anchor, __block) => {
216
+ var fragment_7 = root_14();
217
+ var node_10 = _$_.first_child_frag(fragment_7);
218
+
219
+ _$_.for_keyed(
220
+ node_10,
221
+ () => muzes,
222
+ (__anchor, pattern_2) => {
223
+ var p_3 = root_15();
224
+
225
+ {
226
+ var expression_2 = _$_.child(p_3);
227
+
228
+ _$_.expression(expression_2, () => _$_.get(pattern_2).muzeId);
229
+ _$_.pop(p_3);
230
+ }
231
+
232
+ _$_.append(__anchor, p_3);
233
+ },
234
+ 0,
235
+ (pattern_2) => _$_.get(pattern_2).muzeId
236
+ );
237
+
238
+ _$_.append(__anchor, fragment_7);
239
+ }));
240
+
241
+ _$_.append(__anchor, fragment_6);
242
+ });
243
+ }
244
+
245
+ export function ComponentBodyCodeBlockControlFlow() {
246
+ return _$_.tsrx_element((__anchor, __block) => {
247
+ const muzes = [{ muzeId: 'b' }, { muzeId: 'c' }];
248
+ var fragment_8 = root_16();
249
+ var node_12 = _$_.first_child_frag(fragment_8);
250
+
251
+ _$_.expression(node_12, () => _$_.tsrx_element((__anchor, __block) => {
252
+ var fragment_9 = root_18();
253
+ var expression_4 = _$_.first_child_frag(fragment_9);
254
+
255
+ _$_.expression(expression_4, () => _$_.tsrx_element((__anchor, __block) => {
256
+ const rows = muzes;
257
+
258
+ _$_.for_keyed(
259
+ __anchor,
260
+ () => rows,
261
+ (__anchor, pattern_3) => {
262
+ var p_4 = root_17();
263
+
264
+ {
265
+ var expression_3 = _$_.child(p_4);
266
+
267
+ _$_.expression(expression_3, () => _$_.get(pattern_3).muzeId);
268
+ _$_.pop(p_4);
269
+ }
270
+
271
+ _$_.append(__anchor, p_4);
272
+ },
273
+ 16,
274
+ (pattern_3) => _$_.get(pattern_3).muzeId
275
+ );
276
+ }));
277
+
278
+ _$_.append(__anchor, fragment_9);
279
+ }));
280
+
281
+ _$_.append(__anchor, fragment_8);
282
+ });
283
+ }
284
+
285
+ export function IfCodeBlockControlFlow() {
286
+ return _$_.tsrx_element((__anchor, __block) => {
287
+ const muzes = [{ muzeId: 'b' }, { muzeId: 'c' }];
288
+ const hasLoaded = true;
289
+ var div_4 = root_19();
290
+
291
+ {
292
+ var node_13 = _$_.child(div_4);
293
+
294
+ {
295
+ var consequent_5 = (__anchor) => {
296
+ var fragment_10 = root_20();
297
+ var node_14 = _$_.first_child_frag(fragment_10);
298
+
299
+ _$_.expression(node_14, () => _$_.tsrx_element((__anchor, __block) => {
300
+ var fragment_11 = root_22();
301
+ var expression_6 = _$_.first_child_frag(fragment_11);
302
+
303
+ _$_.expression(expression_6, () => _$_.tsrx_element((__anchor, __block) => {
304
+ const rows = muzes;
305
+
306
+ _$_.for_keyed(
307
+ __anchor,
308
+ () => rows,
309
+ (__anchor, pattern_4) => {
310
+ var p_5 = root_21();
311
+
312
+ {
313
+ var expression_5 = _$_.child(p_5);
314
+
315
+ _$_.expression(expression_5, () => _$_.get(pattern_4).muzeId);
316
+ _$_.pop(p_5);
317
+ }
318
+
319
+ _$_.append(__anchor, p_5);
320
+ },
321
+ 16,
322
+ (pattern_4) => _$_.get(pattern_4).muzeId
323
+ );
324
+ }));
325
+
326
+ _$_.append(__anchor, fragment_11);
327
+ }));
328
+
329
+ _$_.append(__anchor, fragment_10);
330
+ };
331
+
332
+ _$_.if(node_13, (__render) => {
333
+ if (hasLoaded) __render(consequent_5);
334
+ });
335
+ }
336
+
337
+ _$_.pop(div_4);
338
+ }
339
+
340
+ _$_.append(__anchor, div_4);
341
+ });
342
+ }
343
+
344
+ export function IfElseFragment() {
345
+ return _$_.tsrx_element((__anchor, __block) => {
346
+ const muzes = [{ muzeId: 'b' }, { muzeId: 'c' }];
347
+ const hasLoaded = false;
348
+ var div_5 = root_23();
349
+
350
+ {
351
+ var node_15 = _$_.child(div_5);
352
+
353
+ {
354
+ var consequent_6 = (__anchor) => {
355
+ var span_3 = root_24();
356
+
357
+ _$_.append(__anchor, span_3);
358
+ };
359
+
360
+ var alternate = (__anchor) => {
361
+ var fragment_12 = root_25();
362
+ var node_17 = _$_.first_child_frag(fragment_12);
363
+
364
+ _$_.expression(node_17, () => _$_.tsrx_element((__anchor, __block) => {
365
+ var fragment_13 = root_26();
366
+ var node_16 = _$_.first_child_frag(fragment_13);
367
+
368
+ _$_.for_keyed(
369
+ node_16,
370
+ () => muzes,
371
+ (__anchor, pattern_5) => {
372
+ var p_6 = root_27();
373
+
374
+ {
375
+ var expression_7 = _$_.child(p_6);
376
+
377
+ _$_.expression(expression_7, () => _$_.get(pattern_5).muzeId);
378
+ _$_.pop(p_6);
379
+ }
380
+
381
+ _$_.append(__anchor, p_6);
382
+ },
383
+ 0,
384
+ (pattern_5) => _$_.get(pattern_5).muzeId
385
+ );
386
+
387
+ _$_.append(__anchor, fragment_13);
388
+ }));
389
+
390
+ _$_.append(__anchor, fragment_12);
391
+ };
392
+
393
+ _$_.if(node_15, (__render) => {
394
+ if (hasLoaded) __render(consequent_6); else __render(alternate, false);
395
+ });
396
+ }
397
+
398
+ _$_.pop(div_5);
399
+ }
400
+
401
+ _$_.append(__anchor, div_5);
402
+ });
403
+ }
404
+
405
+ export function IfDivFragment() {
406
+ return _$_.tsrx_element((__anchor, __block) => {
407
+ const muzes = [{ muzeId: 'b' }, { muzeId: 'c' }];
408
+ const hasLoaded = true;
409
+ var div_6 = root_28();
410
+
411
+ {
412
+ var node_18 = _$_.child(div_6);
413
+
414
+ {
415
+ var consequent_7 = (__anchor) => {
416
+ var section_1 = root_29();
417
+
418
+ {
419
+ var node_20 = _$_.child(section_1);
420
+
421
+ _$_.expression(node_20, () => _$_.tsrx_element((__anchor, __block) => {
422
+ var fragment_14 = root_30();
423
+ var node_19 = _$_.first_child_frag(fragment_14);
424
+
425
+ _$_.for_keyed(
426
+ node_19,
427
+ () => muzes,
428
+ (__anchor, pattern_6) => {
429
+ var p_7 = root_31();
430
+
431
+ {
432
+ var expression_8 = _$_.child(p_7);
433
+
434
+ _$_.expression(expression_8, () => _$_.get(pattern_6).muzeId);
435
+ _$_.pop(p_7);
436
+ }
437
+
438
+ _$_.append(__anchor, p_7);
439
+ },
440
+ 0,
441
+ (pattern_6) => _$_.get(pattern_6).muzeId
442
+ );
443
+
444
+ _$_.append(__anchor, fragment_14);
445
+ }));
446
+
447
+ _$_.pop(section_1);
448
+ }
449
+
450
+ _$_.append(__anchor, section_1);
451
+ };
452
+
453
+ _$_.if(node_18, (__render) => {
454
+ if (hasLoaded) __render(consequent_7);
455
+ });
456
+ }
457
+
458
+ _$_.pop(div_6);
459
+ }
460
+
461
+ _$_.append(__anchor, div_6);
462
+ });
463
+ }