ripple 0.4.3 → 0.4.5

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 (42) hide show
  1. package/CHANGELOG.md +81 -0
  2. package/package.json +3 -3
  3. package/src/constants.js +6 -0
  4. package/src/runtime/internal/client/attributes.js +259 -126
  5. package/src/runtime/internal/client/blocks.js +16 -6
  6. package/src/runtime/internal/client/composite.js +292 -100
  7. package/src/runtime/internal/client/constants.js +8 -0
  8. package/src/runtime/internal/client/events.js +15 -1
  9. package/src/runtime/internal/client/expression.js +4 -4
  10. package/src/runtime/internal/client/for.js +13 -38
  11. package/src/runtime/internal/client/if.js +56 -1
  12. package/src/runtime/internal/client/index.js +8 -6
  13. package/src/runtime/internal/client/operations.js +9 -4
  14. package/src/runtime/internal/client/render.js +37 -0
  15. package/src/runtime/internal/client/runtime.js +94 -20
  16. package/src/runtime/internal/client/template-ns.js +45 -4
  17. package/src/runtime/internal/client/template.js +103 -0
  18. package/tests/client/composite/composite.dynamic-components.test.tsrx +40 -0
  19. package/tests/client/css/scoped-styles.test.tsrx +3 -1
  20. package/tests/client/svg.test.tsrx +273 -1
  21. package/tests/hydration/compiled/client/basic.js +79 -51
  22. package/tests/hydration/compiled/client/composite.js +13 -4
  23. package/tests/hydration/compiled/client/events.js +22 -7
  24. package/tests/hydration/compiled/client/for.js +110 -71
  25. package/tests/hydration/compiled/client/fragment-cursor.js +342 -156
  26. package/tests/hydration/compiled/client/head.js +13 -13
  27. package/tests/hydration/compiled/client/hmr.js +16 -4
  28. package/tests/hydration/compiled/client/html-in-template.js +1 -1
  29. package/tests/hydration/compiled/client/html.js +144 -87
  30. package/tests/hydration/compiled/client/if-children.js +118 -33
  31. package/tests/hydration/compiled/client/if-fragment-controlflow.js +41 -21
  32. package/tests/hydration/compiled/client/if.js +70 -18
  33. package/tests/hydration/compiled/client/mixed-control-flow.js +50 -20
  34. package/tests/hydration/compiled/client/nested-control-flow.js +191 -100
  35. package/tests/hydration/compiled/client/portal.js +29 -9
  36. package/tests/hydration/compiled/client/reactivity.js +9 -5
  37. package/tests/hydration/compiled/client/streaming.js +21 -18
  38. package/tests/hydration/compiled/client/switch.js +17 -17
  39. package/tests/hydration/compiled/client/track-async-serialization.js +29 -21
  40. package/tests/hydration/compiled/client/try.js +13 -10
  41. package/tests/hydration/compiled/client/typed-text.js +3 -2
  42. package/tests/utils/inline-drift.test.js +83 -0
@@ -1,7 +1,7 @@
1
1
  // @ts-nocheck
2
2
  import * as _$_ from 'ripple/internal/client';
3
3
 
4
- var root = _$_.template(`<div>`);
4
+ var root = _$_.template_el('div');
5
5
 
6
6
  function StaticHtml_render(__anchor, __block) {
7
7
  const html = '<p><strong>Bold</strong> text</p>';
@@ -13,7 +13,7 @@ function StaticHtml_render(__anchor, __block) {
13
13
 
14
14
  StaticHtml[_$_.$r] = StaticHtml_render;
15
15
 
16
- var root_1 = _$_.template(`<div>`);
16
+ var root_1 = _$_.template_el('div');
17
17
 
18
18
  function DynamicHtml_render(__anchor, __block) {
19
19
  const content = '<p>Dynamic <span>HTML</span> content</p>';
@@ -25,7 +25,7 @@ function DynamicHtml_render(__anchor, __block) {
25
25
 
26
26
  DynamicHtml[_$_.$r] = DynamicHtml_render;
27
27
 
28
- var root_2 = _$_.template(`<div>`);
28
+ var root_2 = _$_.template_el('div');
29
29
 
30
30
  function EmptyHtml_render(__anchor, __block) {
31
31
  const html = '';
@@ -37,7 +37,7 @@ function EmptyHtml_render(__anchor, __block) {
37
37
 
38
38
  EmptyHtml[_$_.$r] = EmptyHtml_render;
39
39
 
40
- var root_3 = _$_.template(`<section>`);
40
+ var root_3 = _$_.template_el('section');
41
41
 
42
42
  function ComplexHtml_render(__anchor, __block) {
43
43
  const html = '<div class="nested"><span>Nested <em>content</em></span></div>';
@@ -49,7 +49,7 @@ function ComplexHtml_render(__anchor, __block) {
49
49
 
50
50
  ComplexHtml[_$_.$r] = ComplexHtml_render;
51
51
 
52
- var root_4 = _$_.template(`<div><!><!>`);
52
+ var root_4 = _$_.template_el('div', null, [null, null]);
53
53
 
54
54
  function render(__prev) {
55
55
  _$_.html(__prev._a, () => __prev._b);
@@ -74,7 +74,7 @@ function MultipleHtml_render(__anchor, __block) {
74
74
 
75
75
  MultipleHtml[_$_.$r] = MultipleHtml_render;
76
76
 
77
- var root_5 = _$_.template(`<div><!><button>Increment`);
77
+ var root_5 = _$_.template_el('div', null, [null, ['button', null, 'Increment']]);
78
78
 
79
79
  function render_1(__prev) {
80
80
  _$_.html(__prev._a, () => "<p>Count: 0</p>");
@@ -95,7 +95,7 @@ function HtmlWithReactivity_render(__anchor, __block) {
95
95
 
96
96
  HtmlWithReactivity[_$_.$r] = HtmlWithReactivity_render;
97
97
 
98
- var root_6 = _$_.template(`<div class=wrapper><div class=inner><!>`);
98
+ var root_6 = _$_.template_el('div', ['class', 'wrapper'], [['div', ['class', 'inner'], [null]]]);
99
99
 
100
100
  function HtmlWrapper_render(__anchor, __block, { children }) {
101
101
  var div_5 = root_6();
@@ -116,7 +116,7 @@ function HtmlWrapper_render(__anchor, __block, { children }) {
116
116
 
117
117
  HtmlWrapper[_$_.$r] = HtmlWrapper_render;
118
118
 
119
- var root_7 = _$_.template(`<div class=vp-doc>`);
119
+ var root_7 = _$_.template_el('div', ['class', 'vp-doc']);
120
120
 
121
121
  function HtmlInChildren_render(__anchor, __block) {
122
122
  const content = '<p><strong>Bold</strong> text</p>';
@@ -152,7 +152,7 @@ function HtmlInChildrenWithSiblings_render(__anchor, __block) {
152
152
 
153
153
  HtmlInChildrenWithSiblings[_$_.$r] = HtmlInChildrenWithSiblings_render;
154
154
 
155
- var root_9 = _$_.template(`<div class=doc><!><!>`);
155
+ var root_9 = _$_.template_el('div', ['class', 'doc'], [null, null]);
156
156
 
157
157
  function render_2(__prev) {
158
158
  _$_.html(__prev._a, () => __prev._b);
@@ -182,7 +182,7 @@ function MultipleHtmlInChildren_render(__anchor, __block) {
182
182
 
183
183
  MultipleHtmlInChildren[_$_.$r] = MultipleHtmlInChildren_render;
184
184
 
185
- var root_10 = _$_.template(`<div>`);
185
+ var root_10 = _$_.template_el('div');
186
186
 
187
187
  function HtmlWithComments_render(__anchor, __block) {
188
188
  const content = '<p>Before comment</p><!-- TODO: Elaborate --><p>After comment</p>';
@@ -194,7 +194,7 @@ function HtmlWithComments_render(__anchor, __block) {
194
194
 
195
195
  HtmlWithComments[_$_.$r] = HtmlWithComments_render;
196
196
 
197
- var root_11 = _$_.template(`<div>`);
197
+ var root_11 = _$_.template_el('div');
198
198
 
199
199
  function HtmlWithEmptyComment_render(__anchor, __block) {
200
200
  const content = '<p>Before</p><!----><p>After</p>';
@@ -206,7 +206,7 @@ function HtmlWithEmptyComment_render(__anchor, __block) {
206
206
 
207
207
  HtmlWithEmptyComment[_$_.$r] = HtmlWithEmptyComment_render;
208
208
 
209
- var root_12 = _$_.template(`<div class=vp-doc>`);
209
+ var root_12 = _$_.template_el('div', ['class', 'vp-doc']);
210
210
 
211
211
  function HtmlWithCommentsInChildren_render(__anchor, __block) {
212
212
  const content = '<h2 id="intro">Introduction</h2><p>Some text</p><!-- TODO --><p>More text</p>';
@@ -223,7 +223,7 @@ function HtmlWithCommentsInChildren_render(__anchor, __block) {
223
223
 
224
224
  HtmlWithCommentsInChildren[_$_.$r] = HtmlWithCommentsInChildren_render;
225
225
 
226
- var root_13 = _$_.template(`<footer class=doc-footer>Footer content`);
226
+ var root_13 = _$_.template_el('footer', ['class', 'doc-footer'], 'Footer content');
227
227
 
228
228
  function DocFooter_render(__anchor, __block) {
229
229
  var footer = root_13();
@@ -233,7 +233,7 @@ function DocFooter_render(__anchor, __block) {
233
233
 
234
234
  DocFooter[_$_.$r] = DocFooter_render;
235
235
 
236
- var root_15 = _$_.template(`<div class=edit-link><a>Edit`);
236
+ var root_15 = _$_.template_el('div', ['class', 'edit-link'], [['a', null, 'Edit']]);
237
237
 
238
238
  function consequent(__anchor, editPath) {
239
239
  var div_16 = root_15();
@@ -241,7 +241,7 @@ function consequent(__anchor, editPath) {
241
241
  {
242
242
  var a = _$_.hydrating ? _$_.hydrate_child() : div_16.firstChild;
243
243
 
244
- _$_.set_attribute(a, 'href', `https://github.com/edit/${editPath}`);
244
+ a.setAttribute('href', `https://github.com/edit/${editPath}`);
245
245
  }
246
246
 
247
247
  _$_.append(__anchor, div_16);
@@ -251,7 +251,7 @@ function if_1(editPath) {
251
251
  if (editPath) return consequent;
252
252
  }
253
253
 
254
- var root_16 = _$_.template(`<nav class=prev-next><a> `);
254
+ var root_16 = _$_.template_el('nav', ['class', 'prev-next'], [['a', null, ' ']]);
255
255
 
256
256
  function render_3(__prev) {
257
257
  var __a = __prev._a.href;
@@ -283,7 +283,7 @@ function if_2(nextLink) {
283
283
  if (nextLink) return consequent_1;
284
284
  }
285
285
 
286
- var root_18 = _$_.template(`<li><a>`);
286
+ var root_18 = _$_.template_el('li', null, [['a']]);
287
287
 
288
288
  function render_4(__prev) {
289
289
  var __a = __prev._a.text;
@@ -300,7 +300,7 @@ function render_4(__prev) {
300
300
  }
301
301
  }
302
302
 
303
- var root_17 = _$_.template(`<div class=toc><ul>`);
303
+ var root_17 = _$_.template_el('div', ['class', 'toc'], [['ul']]);
304
304
 
305
305
  function consequent_2(__anchor, toc) {
306
306
  var div_17 = root_17();
@@ -338,7 +338,22 @@ function if_3(toc) {
338
338
  if (toc.length > 0) return consequent_2;
339
339
  }
340
340
 
341
- var root_14 = _$_.template(`<div class=layout><div class=content-container><article><div><!></div></article></div><aside><!>`);
341
+ var root_14 = _$_.template_el('div', ['class', 'layout'], [
342
+ [
343
+ 'div',
344
+ ['class', 'content-container'],
345
+ [['article', null, [['div', null, [null]]]]]
346
+ ],
347
+ ['aside', null, [null]]
348
+ ]);
349
+
350
+ function render_5(__prev) {
351
+ var __a = if_3(__prev._a);
352
+
353
+ if (__prev.a !== __a) {
354
+ _$_.if_update(__prev._b, __prev.a = __a);
355
+ }
356
+ }
342
357
 
343
358
  function DocLayout_render(
344
359
  __anchor,
@@ -384,18 +399,19 @@ function DocLayout_render(
384
399
 
385
400
  {
386
401
  var node_8 = _$_.hydrating ? _$_.hydrate_child() : aside.firstChild;
402
+ var ifs = _$_.if_static(node_8, if_3, 0, toc);
387
403
 
388
- _$_.if(node_8, if_3, false, toc);
389
404
  _$_.hydrating && _$_.pop(aside);
390
405
  }
391
406
  }
392
407
 
408
+ _$_.render(render_5, { a: _$_.UNINITIALIZED, _a: toc, _b: ifs });
393
409
  _$_.append(__anchor, div_13);
394
410
  }
395
411
 
396
412
  DocLayout[_$_.$r] = DocLayout_render;
397
413
 
398
- var root_19 = _$_.template(`<div class=vp-doc>`);
414
+ var root_19 = _$_.template_el('div', ['class', 'vp-doc']);
399
415
 
400
416
  function HtmlWithServerData_render(__anchor, __block) {
401
417
  const content = '<h1 id="intro" class="doc-h1">Introduction</h1><p>Ripple is a framework.</p>';
@@ -419,7 +435,7 @@ function HtmlWithServerData_render(__anchor, __block) {
419
435
 
420
436
  HtmlWithServerData[_$_.$r] = HtmlWithServerData_render;
421
437
 
422
- var root_20 = _$_.template(`<div class=vp-doc>`);
438
+ var root_20 = _$_.template_el('div', ['class', 'vp-doc']);
423
439
 
424
440
  function HtmlWithClientDefaults_render(__anchor, __block) {
425
441
  const content = '<h1 id="intro" class="doc-h1">Introduction</h1><p>Ripple is a framework.</p>';
@@ -436,7 +452,7 @@ function HtmlWithClientDefaults_render(__anchor, __block) {
436
452
 
437
453
  HtmlWithClientDefaults[_$_.$r] = HtmlWithClientDefaults_render;
438
454
 
439
- var root_21 = _$_.template(`<div class=vp-doc>`);
455
+ var root_21 = _$_.template_el('div', ['class', 'vp-doc']);
440
456
 
441
457
  function HtmlWithUndefinedContent_render(__anchor, __block) {
442
458
  const content = undefined;
@@ -453,8 +469,8 @@ function HtmlWithUndefinedContent_render(__anchor, __block) {
453
469
 
454
470
  HtmlWithUndefinedContent[_$_.$r] = HtmlWithUndefinedContent_render;
455
471
 
456
- var root_22 = _$_.template(`<h1 class=heading><!>`);
457
- var root_23 = _$_.template(`<h2 class=heading><!>`);
472
+ var root_22 = _$_.template_el('h1', ['class', 'heading'], [null]);
473
+ var root_23 = _$_.template_el('h2', ['class', 'heading'], [null]);
458
474
 
459
475
  function switch_case_0(__anchor, { a: level, b: children }) {
460
476
  var h1_1 = root_22();
@@ -498,7 +514,14 @@ function DynamicHeading_render(__anchor, __block, { level, children }) {
498
514
 
499
515
  DynamicHeading[_$_.$r] = DynamicHeading_render;
500
516
 
501
- var root_24 = _$_.template(`<div class=code-block><div class=header><button>Copy</button><span class=lang>js</span></div><div class=content>`);
517
+ var root_24 = _$_.template_el('div', ['class', 'code-block'], [
518
+ [
519
+ 'div',
520
+ ['class', 'header'],
521
+ [['button', null, 'Copy'], ['span', ['class', 'lang'], 'js']]
522
+ ],
523
+ ['div', ['class', 'content']]
524
+ ]);
502
525
 
503
526
  function CodeBlock_render(__anchor, __block, { code }) {
504
527
  const highlighted = `<pre class="shiki"><code>${code}</code></pre>`;
@@ -516,7 +539,7 @@ function CodeBlock_render(__anchor, __block, { code }) {
516
539
 
517
540
  CodeBlock[_$_.$r] = CodeBlock_render;
518
541
 
519
- var root_25 = _$_.template(`<div class=wrapper><div class=inner><!>`);
542
+ var root_25 = _$_.template_el('div', ['class', 'wrapper'], [['div', ['class', 'inner'], [null]]]);
520
543
 
521
544
  function ContentWrapper_render(__anchor, __block, { children }) {
522
545
  var div_24 = root_25();
@@ -567,8 +590,8 @@ function HtmlAfterSwitchInChildren_render(__anchor, __block) {
567
590
 
568
591
  HtmlAfterSwitchInChildren[_$_.$r] = HtmlAfterSwitchInChildren_render;
569
592
 
570
- var root_27 = _$_.template(`<h1 class=heading><!>`);
571
- var root_28 = _$_.template(`<h2 class=heading><!>`);
593
+ var root_27 = _$_.template_el('h1', ['class', 'heading'], [null]);
594
+ var root_28 = _$_.template_el('h2', ['class', 'heading'], [null]);
572
595
 
573
596
  function consequent_3(__anchor, { a: primary, b: children }) {
574
597
  var h1_2 = root_27();
@@ -636,7 +659,7 @@ function HtmlAfterIfInChildren_render(__anchor, __block) {
636
659
 
637
660
  HtmlAfterIfInChildren[_$_.$r] = HtmlAfterIfInChildren_render;
638
661
 
639
- var root_30 = _$_.template(`<span class=for-item>`);
662
+ var root_30 = _$_.template_el('span', ['class', 'for-item']);
640
663
 
641
664
  function ForList_render(__anchor, __block, { items }) {
642
665
  _$_.for(
@@ -679,8 +702,8 @@ function HtmlAfterForInChildren_render(__anchor, __block) {
679
702
 
680
703
  HtmlAfterForInChildren[_$_.$r] = HtmlAfterForInChildren_render;
681
704
 
682
- var root_32 = _$_.template(`<div class=try-box>`);
683
- var root_33 = _$_.template(`<span>error`);
705
+ var root_32 = _$_.template_el('div', ['class', 'try-box']);
706
+ var root_33 = _$_.template_el('span', null, 'error');
684
707
 
685
708
  function TryBox_render(__anchor, __block, { value }) {
686
709
  _$_.try(
@@ -728,7 +751,7 @@ function HtmlAfterTryInChildren_render(__anchor, __block) {
728
751
 
729
752
  HtmlAfterTryInChildren[_$_.$r] = HtmlAfterTryInChildren_render;
730
753
 
731
- var root_35 = _$_.template(`<span class=boxed><!>`);
754
+ var root_35 = _$_.template_el('span', ['class', 'boxed'], [null]);
732
755
 
733
756
  function Boxed_render(__anchor, __block, { children }) {
734
757
  var span_2 = root_35();
@@ -783,7 +806,7 @@ function HtmlAfterComponentInChildren_render(__anchor, __block) {
783
806
 
784
807
  HtmlAfterComponentInChildren[_$_.$r] = HtmlAfterComponentInChildren_render;
785
808
 
786
- var root_39 = _$_.template(`<div class=indicator>`);
809
+ var root_39 = _$_.template_el('div', ['class', 'indicator']);
787
810
 
788
811
  function consequent_4(__anchor, active) {
789
812
  var div_28 = root_39();
@@ -795,7 +818,7 @@ function if_5(active) {
795
818
  if (active) return consequent_4;
796
819
  }
797
820
 
798
- var root_38 = _$_.template(`<div><a><span>`);
821
+ var root_38 = _$_.template_el('div', null, [['a', null, [['span']]]]);
799
822
 
800
823
  function NavItem_render(__anchor, __block, { href, text: label, active = false }) {
801
824
  var div_27 = root_38();
@@ -827,7 +850,7 @@ function NavItem_render(__anchor, __block, { href, text: label, active = false }
827
850
 
828
851
  NavItem[_$_.$r] = NavItem_render;
829
852
 
830
- var root_41 = _$_.template(`<div class=section-items><!>`);
853
+ var root_41 = _$_.template_el('div', ['class', 'section-items'], [null]);
831
854
 
832
855
  function consequent_5(__anchor, { a: expanded, b: children }) {
833
856
  var div_30 = root_41();
@@ -846,7 +869,21 @@ function if_6({ a: expanded, b: children }) {
846
869
  if (expanded.value) return consequent_5;
847
870
  }
848
871
 
849
- var root_40 = _$_.template(`<section class=sidebar-section><div class=section-header><h2></h2><button>Toggle`);
872
+ var root_40 = _$_.template_el('section', ['class', 'sidebar-section'], [
873
+ [
874
+ 'div',
875
+ ['class', 'section-header'],
876
+ [['h2'], ['button', null, 'Toggle']]
877
+ ]
878
+ ]);
879
+
880
+ function render_6(__prev) {
881
+ var __a = if_6({ a: __prev._a, b: __prev._b });
882
+
883
+ if (__prev.a !== __a) {
884
+ _$_.if_update(__prev._c, __prev.a = __a);
885
+ }
886
+ }
850
887
 
851
888
  function SidebarSection_render(__anchor, __block, { title, children }) {
852
889
  const expanded = _$_.track(true, __block, 'tmjvjj');
@@ -873,10 +910,12 @@ function SidebarSection_render(__anchor, __block, { title, children }) {
873
910
  ? _$_.hydrate_sibling()
874
911
  : _$_.append_into(section_1, true);
875
912
 
876
- _$_.if(node_20, if_6, false, { a: expanded, b: children });
913
+ var ifs_1 = _$_.if_static(node_20, if_6, 0, { a: expanded, b: children });
914
+
877
915
  _$_.hydrating && _$_.pop(section_1);
878
916
  }
879
917
 
918
+ _$_.render(render_6, { a: _$_.UNINITIALIZED, _a: expanded, _b: children, _c: ifs_1 });
880
919
  _$_.append(__anchor, section_1);
881
920
  }
882
921
 
@@ -884,7 +923,14 @@ SidebarSection[_$_.$r] = SidebarSection_render;
884
923
 
885
924
  var root_43 = _$_.template(`<!><!>`, 1, 2);
886
925
  var root_44 = _$_.template(`<!><!>`, 1, 2);
887
- var root_42 = _$_.template(`<aside class=sidebar><nav><div class=group></div><div class=group>`);
926
+
927
+ var root_42 = _$_.template_el('aside', ['class', 'sidebar'], [
928
+ [
929
+ 'nav',
930
+ null,
931
+ [['div', ['class', 'group']], ['div', ['class', 'group']]]
932
+ ]
933
+ ]);
888
934
 
889
935
  function SideNav_render(__anchor, __block, { currentPath }) {
890
936
  var aside_1 = root_42();
@@ -964,7 +1010,7 @@ function SideNav_render(__anchor, __block, { currentPath }) {
964
1010
 
965
1011
  SideNav[_$_.$r] = SideNav_render;
966
1012
 
967
- var root_45 = _$_.template(`<header class=page-header><div class=logo>MyApp`);
1013
+ var root_45 = _$_.template_el('header', ['class', 'page-header'], [['div', ['class', 'logo'], 'MyApp']]);
968
1014
 
969
1015
  function PageHeader_render(__anchor, __block) {
970
1016
  var header = root_45();
@@ -974,7 +1020,7 @@ function PageHeader_render(__anchor, __block) {
974
1020
 
975
1021
  PageHeader[_$_.$r] = PageHeader_render;
976
1022
 
977
- var root_47 = _$_.template(`<div class=edit-link><a href=/edit>Edit`);
1023
+ var root_47 = _$_.template_el('div', ['class', 'edit-link'], [['a', ['href', '/edit'], 'Edit']]);
978
1024
 
979
1025
  function consequent_6(__anchor) {
980
1026
  var div_36 = root_47();
@@ -1028,7 +1074,7 @@ function LayoutWithSidebarAndMain_render(__anchor, __block) {
1028
1074
 
1029
1075
  LayoutWithSidebarAndMain[_$_.$r] = LayoutWithSidebarAndMain_render;
1030
1076
 
1031
- var root_48 = _$_.template(`<article class=doc-content><div><!>`);
1077
+ var root_48 = _$_.template_el('article', ['class', 'doc-content'], [['div', null, [null]]]);
1032
1078
 
1033
1079
  function ArticleWrapper_render(__anchor, __block, { children }) {
1034
1080
  var article_1 = root_48();
@@ -1049,7 +1095,7 @@ function ArticleWrapper_render(__anchor, __block, { children }) {
1049
1095
 
1050
1096
  ArticleWrapper[_$_.$r] = ArticleWrapper_render;
1051
1097
 
1052
- var root_49 = _$_.template(`<footer class=doc-footer>Footer`);
1098
+ var root_49 = _$_.template_el('footer', ['class', 'doc-footer'], 'Footer');
1053
1099
 
1054
1100
  function SimpleFooter_render(__anchor, __block) {
1055
1101
  var footer_1 = root_49();
@@ -1060,7 +1106,7 @@ function SimpleFooter_render(__anchor, __block) {
1060
1106
  SimpleFooter[_$_.$r] = SimpleFooter_render;
1061
1107
 
1062
1108
  var root_51 = _$_.template(`<h1>Title</h1><p>Content goes here.`, 1, 2);
1063
- var root_52 = _$_.template(`<div class=edit-link><a href=/edit>Edit`);
1109
+ var root_52 = _$_.template_el('div', ['class', 'edit-link'], [['a', ['href', '/edit'], 'Edit']]);
1064
1110
 
1065
1111
  function consequent_7(__anchor) {
1066
1112
  var div_39 = root_52();
@@ -1072,7 +1118,7 @@ function if_8() {
1072
1118
  if (true) return consequent_7;
1073
1119
  }
1074
1120
 
1075
- var root_53 = _$_.template(`<nav class=prev-next><a href=/prev>Previous`);
1121
+ var root_53 = _$_.template_el('nav', ['class', 'prev-next'], [['a', ['href', '/prev'], 'Previous']]);
1076
1122
 
1077
1123
  function consequent_8(__anchor) {
1078
1124
  var nav_2 = root_53();
@@ -1084,7 +1130,7 @@ function if_9() {
1084
1130
  if (true) return consequent_8;
1085
1131
  }
1086
1132
 
1087
- var root_50 = _$_.template(`<div class=content-container><!><!><!><!>`);
1133
+ var root_50 = _$_.template_el('div', ['class', 'content-container'], [null, null, null, null]);
1088
1134
 
1089
1135
  function ArticleWithChildrenThenSibling_render(__anchor, __block) {
1090
1136
  var div_38 = root_50();
@@ -1120,8 +1166,8 @@ function ArticleWithChildrenThenSibling_render(__anchor, __block) {
1120
1166
 
1121
1167
  ArticleWithChildrenThenSibling[_$_.$r] = ArticleWithChildrenThenSibling_render;
1122
1168
 
1123
- var root_55 = _$_.template(`<div class=doc-content>`);
1124
- var root_56 = _$_.template(`<div class=edit-link><a href=/edit>Edit`);
1169
+ var root_55 = _$_.template_el('div', ['class', 'doc-content']);
1170
+ var root_56 = _$_.template_el('div', ['class', 'edit-link'], [['a', ['href', '/edit'], 'Edit']]);
1125
1171
 
1126
1172
  function consequent_9(__anchor) {
1127
1173
  var div_42 = root_56();
@@ -1133,7 +1179,7 @@ function if_10() {
1133
1179
  if (true) return consequent_9;
1134
1180
  }
1135
1181
 
1136
- var root_54 = _$_.template(`<div class=content-container><!><!><!>`);
1182
+ var root_54 = _$_.template_el('div', ['class', 'content-container'], [null, null, null]);
1137
1183
 
1138
1184
  function ArticleWithHtmlChildThenSibling_render(__anchor, __block) {
1139
1185
  const htmlContent = '<pre><code>const x = 1;</code></pre>';
@@ -1166,7 +1212,7 @@ function ArticleWithHtmlChildThenSibling_render(__anchor, __block) {
1166
1212
 
1167
1213
  ArticleWithHtmlChildThenSibling[_$_.$r] = ArticleWithHtmlChildThenSibling_render;
1168
1214
 
1169
- var root_58 = _$_.template(`<div class=edit-link><a href=/edit>Edit`);
1215
+ var root_58 = _$_.template_el('div', ['class', 'edit-link'], [['a', ['href', '/edit'], 'Edit']]);
1170
1216
 
1171
1217
  function consequent_10(__anchor) {
1172
1218
  var div_45 = root_58();
@@ -1178,7 +1224,9 @@ function if_11() {
1178
1224
  if (true) return consequent_10;
1179
1225
  }
1180
1226
 
1181
- var root_57 = _$_.template(`<div class=content-container><article class=doc-content><div><!>`);
1227
+ var root_57 = _$_.template_el('div', ['class', 'content-container'], [
1228
+ ['article', ['class', 'doc-content'], [['div', null, [null]]]]
1229
+ ]);
1182
1230
 
1183
1231
  function InlineArticleLayout_render(__anchor, __block, { children }) {
1184
1232
  var div_43 = root_57();
@@ -1214,7 +1262,7 @@ function InlineArticleLayout_render(__anchor, __block, { children }) {
1214
1262
 
1215
1263
  InlineArticleLayout[_$_.$r] = InlineArticleLayout_render;
1216
1264
 
1217
- var root_59 = _$_.template(`<div class=doc-content>`);
1265
+ var root_59 = _$_.template_el('div', ['class', 'doc-content']);
1218
1266
 
1219
1267
  function InlineArticleWithHtmlChild_render(__anchor, __block) {
1220
1268
  const htmlContent = '<pre><code>const x = 1;</code></pre>';
@@ -1231,7 +1279,7 @@ function InlineArticleWithHtmlChild_render(__anchor, __block) {
1231
1279
 
1232
1280
  InlineArticleWithHtmlChild[_$_.$r] = InlineArticleWithHtmlChild_render;
1233
1281
 
1234
- var root_60 = _$_.template(`<header class=header>Header`);
1282
+ var root_60 = _$_.template_el('header', ['class', 'header'], 'Header');
1235
1283
 
1236
1284
  function HeaderStub_render(__anchor, __block) {
1237
1285
  var header_1 = root_60();
@@ -1241,7 +1289,7 @@ function HeaderStub_render(__anchor, __block) {
1241
1289
 
1242
1290
  HeaderStub[_$_.$r] = HeaderStub_render;
1243
1291
 
1244
- var root_61 = _$_.template(`<aside class=sidebar>Sidebar`);
1292
+ var root_61 = _$_.template_el('aside', ['class', 'sidebar'], 'Sidebar');
1245
1293
 
1246
1294
  function SidebarStub_render(__anchor, __block) {
1247
1295
  var aside_2 = root_61();
@@ -1251,7 +1299,7 @@ function SidebarStub_render(__anchor, __block) {
1251
1299
 
1252
1300
  SidebarStub[_$_.$r] = SidebarStub_render;
1253
1301
 
1254
- var root_62 = _$_.template(`<footer class=footer>Footer`);
1302
+ var root_62 = _$_.template_el('footer', ['class', 'footer'], 'Footer');
1255
1303
 
1256
1304
  function FooterStub_render(__anchor, __block) {
1257
1305
  var footer_2 = root_62();
@@ -1261,7 +1309,7 @@ function FooterStub_render(__anchor, __block) {
1261
1309
 
1262
1310
  FooterStub[_$_.$r] = FooterStub_render;
1263
1311
 
1264
- var root_64 = _$_.template(`<div class=edit-link><a href=/edit>Edit on GitHub`);
1312
+ var root_64 = _$_.template_el('div', ['class', 'edit-link'], [['a', ['href', '/edit'], 'Edit on GitHub']]);
1265
1313
 
1266
1314
  function consequent_11(__anchor, editPath) {
1267
1315
  var div_53 = root_64();
@@ -1273,9 +1321,9 @@ function if_12(editPath) {
1273
1321
  if (editPath) return consequent_11;
1274
1322
  }
1275
1323
 
1276
- var root_65 = _$_.template(`<nav class=prev-next><a> `);
1324
+ var root_65 = _$_.template_el('nav', ['class', 'prev-next'], [['a', null, ' ']]);
1277
1325
 
1278
- function render_5(__prev) {
1326
+ function render_7(__prev) {
1279
1327
  var __a = __prev._a.href;
1280
1328
 
1281
1329
  if (__prev.a !== __a) {
@@ -1297,7 +1345,7 @@ function consequent_12(__anchor, nextLink) {
1297
1345
  }
1298
1346
  }
1299
1347
 
1300
- _$_.render(render_5, { a: void 0, _a: nextLink, _b: a_4 });
1348
+ _$_.render(render_7, { a: void 0, _a: nextLink, _b: a_4 });
1301
1349
  _$_.append(__anchor, nav_3);
1302
1350
  }
1303
1351
 
@@ -1381,7 +1429,7 @@ function DocsLayoutInner_render(
1381
1429
 
1382
1430
  DocsLayoutInner[_$_.$r] = DocsLayoutInner_render;
1383
1431
 
1384
- var root_66 = _$_.template(`<div class=doc-content>`);
1432
+ var root_66 = _$_.template_el('div', ['class', 'doc-content']);
1385
1433
 
1386
1434
  function DocsLayoutWithData_render(__anchor, __block) {
1387
1435
  const htmlContent = '<h1>Title</h1><p>Content</p>';
@@ -1400,7 +1448,7 @@ function DocsLayoutWithData_render(__anchor, __block) {
1400
1448
 
1401
1449
  DocsLayoutWithData[_$_.$r] = DocsLayoutWithData_render;
1402
1450
 
1403
- var root_67 = _$_.template(`<div class=doc-content>`);
1451
+ var root_67 = _$_.template_el('div', ['class', 'doc-content']);
1404
1452
 
1405
1453
  function DocsLayoutWithoutData_render(__anchor, __block) {
1406
1454
  const htmlContent = undefined;
@@ -1417,7 +1465,7 @@ function DocsLayoutWithoutData_render(__anchor, __block) {
1417
1465
 
1418
1466
  DocsLayoutWithoutData[_$_.$r] = DocsLayoutWithoutData_render;
1419
1467
 
1420
- var root_69 = _$_.template(`<div class=edit-link><a>Edit on GitHub`);
1468
+ var root_69 = _$_.template_el('div', ['class', 'edit-link'], [['a', null, 'Edit on GitHub']]);
1421
1469
 
1422
1470
  function consequent_13(__anchor, editPath) {
1423
1471
  var div_62 = root_69();
@@ -1425,7 +1473,7 @@ function consequent_13(__anchor, editPath) {
1425
1473
  {
1426
1474
  var a_5 = _$_.hydrating ? _$_.hydrate_child() : div_62.firstChild;
1427
1475
 
1428
- _$_.set_attribute(a_5, 'href', `/edit/${editPath}`);
1476
+ a_5.setAttribute('href', `/edit/${editPath}`);
1429
1477
  }
1430
1478
 
1431
1479
  _$_.append(__anchor, div_62);
@@ -1435,9 +1483,9 @@ function if_14(editPath) {
1435
1483
  if (editPath) return consequent_13;
1436
1484
  }
1437
1485
 
1438
- var root_71 = _$_.template(`<a class="pager prev"><span class=title> `);
1486
+ var root_71 = _$_.template_el('a', ['class', 'pager prev'], [['span', ['class', 'title'], ' ']]);
1439
1487
 
1440
- function render_6(__prev) {
1488
+ function render_8(__prev) {
1441
1489
  var __a = __prev._a.href;
1442
1490
 
1443
1491
  if (__prev.a !== __a) {
@@ -1445,7 +1493,7 @@ function render_6(__prev) {
1445
1493
  }
1446
1494
  }
1447
1495
 
1448
- var root_72 = _$_.template(`<span>`);
1496
+ var root_72 = _$_.template_el('span');
1449
1497
 
1450
1498
  function consequent_14(__anchor, prevLink) {
1451
1499
  var a_6 = root_71();
@@ -1461,7 +1509,7 @@ function consequent_14(__anchor, prevLink) {
1461
1509
  }
1462
1510
  }
1463
1511
 
1464
- _$_.render(render_6, { a: void 0, _a: prevLink, _b: a_6 });
1512
+ _$_.render(render_8, { a: void 0, _a: prevLink, _b: a_6 });
1465
1513
  _$_.append(__anchor, a_6);
1466
1514
  }
1467
1515
 
@@ -1475,9 +1523,9 @@ function if_15(prevLink) {
1475
1523
  if (prevLink) return consequent_14; else return alternate_1;
1476
1524
  }
1477
1525
 
1478
- var root_73 = _$_.template(`<a class="pager next"><span class=title> `);
1526
+ var root_73 = _$_.template_el('a', ['class', 'pager next'], [['span', ['class', 'title'], ' ']]);
1479
1527
 
1480
- function render_7(__prev) {
1528
+ function render_9(__prev) {
1481
1529
  var __a = __prev._a.href;
1482
1530
 
1483
1531
  if (__prev.a !== __a) {
@@ -1499,7 +1547,7 @@ function consequent_15(__anchor, nextLink) {
1499
1547
  }
1500
1548
  }
1501
1549
 
1502
- _$_.render(render_7, { a: void 0, _a: nextLink, _b: a_7 });
1550
+ _$_.render(render_9, { a: void 0, _a: nextLink, _b: a_7 });
1503
1551
  _$_.append(__anchor, a_7);
1504
1552
  }
1505
1553
 
@@ -1507,7 +1555,7 @@ function if_16(nextLink) {
1507
1555
  if (nextLink) return consequent_15;
1508
1556
  }
1509
1557
 
1510
- var root_70 = _$_.template(`<nav class=prev-next><!><!>`);
1558
+ var root_70 = _$_.template_el('nav', ['class', 'prev-next'], [null, null]);
1511
1559
 
1512
1560
  function consequent_16(__anchor, { a: prevLink, b: nextLink }) {
1513
1561
  var nav_4 = root_70();
@@ -1530,9 +1578,9 @@ function if_17({ a: prevLink, b: nextLink }) {
1530
1578
  if (prevLink || nextLink) return consequent_16;
1531
1579
  }
1532
1580
 
1533
- var root_75 = _$_.template(`<a>`);
1581
+ var root_75 = _$_.template_el('a');
1534
1582
 
1535
- function render_8(__prev) {
1583
+ function render_10(__prev) {
1536
1584
  var __a = __prev._a.text;
1537
1585
 
1538
1586
  if (__prev.a !== __a) {
@@ -1547,7 +1595,7 @@ function render_8(__prev) {
1547
1595
  }
1548
1596
  }
1549
1597
 
1550
- var root_74 = _$_.template(`<div class=aside-content><nav class=outline>`);
1598
+ var root_74 = _$_.template_el('div', ['class', 'aside-content'], [['nav', ['class', 'outline']]]);
1551
1599
 
1552
1600
  function consequent_17(__anchor, toc) {
1553
1601
  var div_63 = root_74();
@@ -1567,7 +1615,7 @@ function consequent_17(__anchor, toc) {
1567
1615
  },
1568
1616
  4,
1569
1617
  void 0,
1570
- render_8
1618
+ render_10
1571
1619
  );
1572
1620
 
1573
1621
  _$_.hydrating && _$_.pop(nav_5);
@@ -1583,6 +1631,14 @@ function if_18(toc) {
1583
1631
 
1584
1632
  var root_68 = _$_.template(`<div class=layout><div class=docs-wrapper><main class=docs-main><div class=docs-container><div class=content><div class=content-container><article class=doc-content><div><!></div></article></div></div><aside class=aside><!>`);
1585
1633
 
1634
+ function render_11(__prev) {
1635
+ var __a = if_18(__prev._a);
1636
+
1637
+ if (__prev.a !== __a) {
1638
+ _$_.if_update(__prev._b, __prev.a = __a);
1639
+ }
1640
+ }
1641
+
1586
1642
  function DocsLayoutExact_render(
1587
1643
  __anchor,
1588
1644
  __block,
@@ -1656,8 +1712,8 @@ function DocsLayoutExact_render(
1656
1712
 
1657
1713
  {
1658
1714
  var node_50 = _$_.hydrating ? _$_.hydrate_child() : aside_3.firstChild;
1715
+ var ifs_2 = _$_.if_static(node_50, if_18, 0, toc);
1659
1716
 
1660
- _$_.if(node_50, if_18, false, toc);
1661
1717
  _$_.hydrating && _$_.pop(aside_3);
1662
1718
  }
1663
1719
  }
@@ -1669,12 +1725,13 @@ function DocsLayoutExact_render(
1669
1725
  _$_.hydrating && _$_.pop(div_56);
1670
1726
  }
1671
1727
 
1728
+ _$_.render(render_11, { a: _$_.UNINITIALIZED, _a: toc, _b: ifs_2 });
1672
1729
  _$_.append(__anchor, div_56);
1673
1730
  }
1674
1731
 
1675
1732
  DocsLayoutExact[_$_.$r] = DocsLayoutExact_render;
1676
1733
 
1677
- var root_76 = _$_.template(`<div class=doc-content>`);
1734
+ var root_76 = _$_.template_el('div', ['class', 'doc-content']);
1678
1735
 
1679
1736
  function DocsLayoutExactWithData_render(__anchor, __block) {
1680
1737
  const htmlContent = '<h1>Styling Guide</h1><p>Content</p>';
@@ -1699,7 +1756,7 @@ function DocsLayoutExactWithData_render(__anchor, __block) {
1699
1756
 
1700
1757
  DocsLayoutExactWithData[_$_.$r] = DocsLayoutExactWithData_render;
1701
1758
 
1702
- var root_77 = _$_.template(`<div class=doc-content>`);
1759
+ var root_77 = _$_.template_el('div', ['class', 'doc-content']);
1703
1760
 
1704
1761
  function DocsLayoutExactWithoutData_render(__anchor, __block) {
1705
1762
  const htmlContent = undefined;
@@ -1726,7 +1783,7 @@ DocsLayoutExactWithoutData[_$_.$r] = DocsLayoutExactWithoutData_render;
1726
1783
 
1727
1784
  var root_78 = _$_.template(`<div><template id=t1></template><p class=content>Main content`);
1728
1785
 
1729
- function render_9(__prev) {
1786
+ function render_12(__prev) {
1730
1787
  var __a = _$_.with_scope(__prev._a, () => JSON.stringify(__prev._b));
1731
1788
 
1732
1789
  if (__prev.a !== __a) {
@@ -1742,7 +1799,7 @@ function TemplateWithHtmlContent_render(__anchor, __block) {
1742
1799
  var template = _$_.hydrating ? _$_.hydrate_child() : div_66.firstChild;
1743
1800
  }
1744
1801
 
1745
- _$_.render(render_9, { a: template.innerHTML, _a: __block, _b: data, _c: template });
1802
+ _$_.render(render_12, { a: template.innerHTML, _a: __block, _b: data, _c: template });
1746
1803
  _$_.append(__anchor, div_66);
1747
1804
  }
1748
1805
 
@@ -1750,7 +1807,7 @@ TemplateWithHtmlContent[_$_.$r] = TemplateWithHtmlContent_render;
1750
1807
 
1751
1808
  var root_79 = _$_.template(`<div class=wrapper><h1>Title</h1><template id=data-template></template><p class=after-template>Content after template`);
1752
1809
 
1753
- function render_10(__prev) {
1810
+ function render_13(__prev) {
1754
1811
  var __a = _$_.with_scope(__prev._a, () => JSON.stringify(__prev._b));
1755
1812
 
1756
1813
  if (__prev.a !== __a) {
@@ -1767,7 +1824,7 @@ function TemplateWithHtmlAndSiblings_render(__anchor, __block) {
1767
1824
  var template_1 = _$_.hydrating ? _$_.hydrate_sibling() : h1_3.nextSibling;
1768
1825
  }
1769
1826
 
1770
- _$_.render(render_10, {
1827
+ _$_.render(render_13, {
1771
1828
  a: template_1.innerHTML,
1772
1829
  _a: __block,
1773
1830
  _b: data,
@@ -1781,7 +1838,7 @@ TemplateWithHtmlAndSiblings[_$_.$r] = TemplateWithHtmlAndSiblings_render;
1781
1838
 
1782
1839
  var root_80 = _$_.template(`<div class=layout><template id=page-data></template><main><!>`);
1783
1840
 
1784
- function render_11(__prev) {
1841
+ function render_14(__prev) {
1785
1842
  var __a = _$_.with_scope(__prev._a, () => JSON.stringify(__prev._b));
1786
1843
 
1787
1844
  if (__prev.a !== __a) {
@@ -1804,7 +1861,7 @@ function LayoutWithTemplate_render(__anchor, __block, { children, data }) {
1804
1861
  }
1805
1862
  }
1806
1863
 
1807
- _$_.render(render_11, {
1864
+ _$_.render(render_14, {
1808
1865
  a: template_2.innerHTML,
1809
1866
  _a: __block,
1810
1867
  _b: data,
@@ -1816,9 +1873,9 @@ function LayoutWithTemplate_render(__anchor, __block, { children, data }) {
1816
1873
 
1817
1874
  LayoutWithTemplate[_$_.$r] = LayoutWithTemplate_render;
1818
1875
 
1819
- var root_81 = _$_.template(`<div class=doc-content>`);
1876
+ var root_81 = _$_.template_el('div', ['class', 'doc-content']);
1820
1877
 
1821
- function render_12(__prev) {
1878
+ function render_15(__prev) {
1822
1879
  var __a = __prev._a.html;
1823
1880
 
1824
1881
  if (__prev.a !== __a) {
@@ -1834,7 +1891,7 @@ function NestedTemplateInLayout_render(__anchor, __block) {
1834
1891
  children: _$_.tsrx_element((__anchor, __block) => {
1835
1892
  var div_69 = root_81();
1836
1893
 
1837
- _$_.render(render_12, { a: div_69.innerHTML, _a: doc, _b: div_69 });
1894
+ _$_.render(render_15, { a: div_69.innerHTML, _a: doc, _b: div_69 });
1838
1895
  _$_.append(__anchor, div_69);
1839
1896
  })
1840
1897
  });