ripple 0.4.3 → 0.4.4

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 (38) hide show
  1. package/CHANGELOG.md +57 -0
  2. package/package.json +3 -3
  3. package/src/constants.js +6 -0
  4. package/src/runtime/internal/client/attributes.js +251 -125
  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/expression.js +4 -4
  9. package/src/runtime/internal/client/for.js +13 -38
  10. package/src/runtime/internal/client/if.js +56 -1
  11. package/src/runtime/internal/client/index.js +6 -6
  12. package/src/runtime/internal/client/runtime.js +73 -11
  13. package/src/runtime/internal/client/template-ns.js +45 -4
  14. package/src/runtime/internal/client/template.js +56 -0
  15. package/tests/client/composite/composite.dynamic-components.test.tsrx +40 -0
  16. package/tests/client/css/scoped-styles.test.tsrx +3 -1
  17. package/tests/client/svg.test.tsrx +273 -1
  18. package/tests/hydration/compiled/client/basic.js +36 -35
  19. package/tests/hydration/compiled/client/composite.js +11 -2
  20. package/tests/hydration/compiled/client/events.js +1 -1
  21. package/tests/hydration/compiled/client/for.js +73 -62
  22. package/tests/hydration/compiled/client/fragment-cursor.js +182 -115
  23. package/tests/hydration/compiled/client/head.js +10 -10
  24. package/tests/hydration/compiled/client/hmr.js +11 -2
  25. package/tests/hydration/compiled/client/html-in-template.js +1 -1
  26. package/tests/hydration/compiled/client/html.js +78 -50
  27. package/tests/hydration/compiled/client/if-children.js +94 -26
  28. package/tests/hydration/compiled/client/if-fragment-controlflow.js +34 -14
  29. package/tests/hydration/compiled/client/if.js +65 -17
  30. package/tests/hydration/compiled/client/mixed-control-flow.js +50 -20
  31. package/tests/hydration/compiled/client/nested-control-flow.js +188 -97
  32. package/tests/hydration/compiled/client/portal.js +14 -5
  33. package/tests/hydration/compiled/client/reactivity.js +3 -3
  34. package/tests/hydration/compiled/client/streaming.js +17 -17
  35. package/tests/hydration/compiled/client/switch.js +17 -17
  36. package/tests/hydration/compiled/client/track-async-serialization.js +19 -19
  37. package/tests/hydration/compiled/client/try.js +9 -9
  38. package/tests/hydration/compiled/client/typed-text.js +3 -2
@@ -1,7 +1,7 @@
1
1
  // @ts-nocheck
2
2
  import * as _$_ from 'ripple/internal/client';
3
3
 
4
- var root_1 = _$_.template(`<div>Content`);
4
+ var root_1 = _$_.template_el('div', null, 'Content');
5
5
  var root = _$_.template(`<!>`, 1, 1);
6
6
 
7
7
  function StaticTitle_render(__anchor, __block) {
@@ -60,7 +60,7 @@ function ReactiveTitle_render(__anchor, __block) {
60
60
  ReactiveTitle[_$_.$r] = ReactiveTitle_render;
61
61
 
62
62
  var root_6 = _$_.template(`<meta name=description content="Page description"><link rel=stylesheet href=/styles.css>`, 1, 2);
63
- var root_5 = _$_.template(`<div>Page content`);
63
+ var root_5 = _$_.template_el('div', null, 'Page content');
64
64
  var root_4 = _$_.template(`<!>`, 1, 1);
65
65
 
66
66
  function MultipleHeadElements_render(__anchor, __block) {
@@ -86,8 +86,8 @@ function MultipleHeadElements_render(__anchor, __block) {
86
86
 
87
87
  MultipleHeadElements[_$_.$r] = MultipleHeadElements_render;
88
88
 
89
- var root_9 = _$_.template(`<meta name=description>`);
90
- var root_8 = _$_.template(`<div> `);
89
+ var root_9 = _$_.template_el('meta', ['name', 'description']);
90
+ var root_8 = _$_.template_el('div', null, ' ');
91
91
  var root_7 = _$_.template(`<!>`, 1, 1);
92
92
 
93
93
  function ReactiveMetaTags_render(__anchor, __block) {
@@ -121,7 +121,7 @@ function ReactiveMetaTags_render(__anchor, __block) {
121
121
 
122
122
  ReactiveMetaTags[_$_.$r] = ReactiveMetaTags_render;
123
123
 
124
- var root_11 = _$_.template(`<div> `);
124
+ var root_11 = _$_.template_el('div', null, ' ');
125
125
  var root_10 = _$_.template(`<!>`, 1, 1);
126
126
 
127
127
  function TitleWithTemplate_render(__anchor, __block) {
@@ -153,7 +153,7 @@ function TitleWithTemplate_render(__anchor, __block) {
153
153
 
154
154
  TitleWithTemplate[_$_.$r] = TitleWithTemplate_render;
155
155
 
156
- var root_13 = _$_.template(`<div>Empty title test`);
156
+ var root_13 = _$_.template_el('div', null, 'Empty title test');
157
157
  var root_12 = _$_.template(`<!>`, 1, 1);
158
158
 
159
159
  function EmptyTitle_render(__anchor, __block) {
@@ -175,7 +175,7 @@ function EmptyTitle_render(__anchor, __block) {
175
175
 
176
176
  EmptyTitle[_$_.$r] = EmptyTitle_render;
177
177
 
178
- var root_15 = _$_.template(`<div> `);
178
+ var root_15 = _$_.template_el('div', null, ' ');
179
179
  var root_14 = _$_.template(`<!>`, 1, 1);
180
180
 
181
181
  function ConditionalTitle_render(__anchor, __block) {
@@ -249,8 +249,8 @@ function ComputedTitle_render(__anchor, __block) {
249
249
 
250
250
  ComputedTitle[_$_.$r] = ComputedTitle_render;
251
251
 
252
- var root_20 = _$_.template(`<meta name=author content="Test Author">`);
253
- var root_19 = _$_.template(`<div>Content`);
252
+ var root_20 = _$_.template_el('meta', ['name', 'author', 'content', 'Test Author']);
253
+ var root_19 = _$_.template_el('div', null, 'Content');
254
254
  var root_18 = _$_.template(`<!>`, 1, 1);
255
255
 
256
256
  function MultipleHeadBlocks_render(__anchor, __block) {
@@ -278,7 +278,7 @@ function MultipleHeadBlocks_render(__anchor, __block) {
278
278
 
279
279
  MultipleHeadBlocks[_$_.$r] = MultipleHeadBlocks_render;
280
280
 
281
- var root_22 = _$_.template(`<div>Styled content`);
281
+ var root_22 = _$_.template_el('div', null, 'Styled content');
282
282
  var root_21 = _$_.template(`<!>`, 1, 1);
283
283
 
284
284
  function HeadWithStyle_render(__anchor, __block) {
@@ -23,7 +23,7 @@ function Layout_render(__anchor, __block, { children }) {
23
23
 
24
24
  Layout[_$_.$r] = Layout_render;
25
25
 
26
- var root_2 = _$_.template(`<p class=text>Hello world`);
26
+ var root_2 = _$_.template_el('p', ['class', 'text'], 'Hello world');
27
27
 
28
28
  function consequent(__anchor, visible) {
29
29
  var p = root_2();
@@ -37,17 +37,26 @@ function if_1(visible) {
37
37
 
38
38
  var root_1 = _$_.template(`<div class=content><!>`);
39
39
 
40
+ function render(__prev) {
41
+ var __a = if_1(__prev._a);
42
+
43
+ if (__prev.a !== __a) {
44
+ _$_.if_update(__prev._b, __prev.a = __a);
45
+ }
46
+ }
47
+
40
48
  function Content_render(__anchor, __block) {
41
49
  const visible = _$_.track(true, __block, '3af9q8');
42
50
  var div_1 = root_1();
43
51
 
44
52
  {
45
53
  var node = _$_.hydrating ? _$_.hydrate_child() : div_1.firstChild;
54
+ var ifs = _$_.if_static(node, if_1, 0, visible);
46
55
 
47
- _$_.if(node, if_1, false, visible);
48
56
  _$_.hydrating && _$_.pop(div_1);
49
57
  }
50
58
 
59
+ _$_.render(render, { a: _$_.UNINITIALIZED, _a: visible, _b: ifs });
51
60
  _$_.append(__anchor, div_1);
52
61
  }
53
62
 
@@ -25,7 +25,7 @@ function TemplateWithJSON_render(__anchor, __block) {
25
25
 
26
26
  TemplateWithJSON[_$_.$r] = TemplateWithJSON_render;
27
27
 
28
- var root_3 = _$_.template(`<span class=inside>inside`);
28
+ var root_3 = _$_.template_el('span', ['class', 'inside'], 'inside');
29
29
 
30
30
  function consequent(__anchor, show) {
31
31
  var span = root_3();
@@ -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>';
@@ -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>';
@@ -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();
@@ -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);
@@ -340,6 +340,14 @@ function if_3(toc) {
340
340
 
341
341
  var root_14 = _$_.template(`<div class=layout><div class=content-container><article><div><!></div></article></div><aside><!>`);
342
342
 
343
+ function render_5(__prev) {
344
+ var __a = if_3(__prev._a);
345
+
346
+ if (__prev.a !== __a) {
347
+ _$_.if_update(__prev._b, __prev.a = __a);
348
+ }
349
+ }
350
+
343
351
  function DocLayout_render(
344
352
  __anchor,
345
353
  __block,
@@ -384,18 +392,19 @@ function DocLayout_render(
384
392
 
385
393
  {
386
394
  var node_8 = _$_.hydrating ? _$_.hydrate_child() : aside.firstChild;
395
+ var ifs = _$_.if_static(node_8, if_3, 0, toc);
387
396
 
388
- _$_.if(node_8, if_3, false, toc);
389
397
  _$_.hydrating && _$_.pop(aside);
390
398
  }
391
399
  }
392
400
 
401
+ _$_.render(render_5, { a: _$_.UNINITIALIZED, _a: toc, _b: ifs });
393
402
  _$_.append(__anchor, div_13);
394
403
  }
395
404
 
396
405
  DocLayout[_$_.$r] = DocLayout_render;
397
406
 
398
- var root_19 = _$_.template(`<div class=vp-doc>`);
407
+ var root_19 = _$_.template_el('div', ['class', 'vp-doc']);
399
408
 
400
409
  function HtmlWithServerData_render(__anchor, __block) {
401
410
  const content = '<h1 id="intro" class="doc-h1">Introduction</h1><p>Ripple is a framework.</p>';
@@ -419,7 +428,7 @@ function HtmlWithServerData_render(__anchor, __block) {
419
428
 
420
429
  HtmlWithServerData[_$_.$r] = HtmlWithServerData_render;
421
430
 
422
- var root_20 = _$_.template(`<div class=vp-doc>`);
431
+ var root_20 = _$_.template_el('div', ['class', 'vp-doc']);
423
432
 
424
433
  function HtmlWithClientDefaults_render(__anchor, __block) {
425
434
  const content = '<h1 id="intro" class="doc-h1">Introduction</h1><p>Ripple is a framework.</p>';
@@ -436,7 +445,7 @@ function HtmlWithClientDefaults_render(__anchor, __block) {
436
445
 
437
446
  HtmlWithClientDefaults[_$_.$r] = HtmlWithClientDefaults_render;
438
447
 
439
- var root_21 = _$_.template(`<div class=vp-doc>`);
448
+ var root_21 = _$_.template_el('div', ['class', 'vp-doc']);
440
449
 
441
450
  function HtmlWithUndefinedContent_render(__anchor, __block) {
442
451
  const content = undefined;
@@ -636,7 +645,7 @@ function HtmlAfterIfInChildren_render(__anchor, __block) {
636
645
 
637
646
  HtmlAfterIfInChildren[_$_.$r] = HtmlAfterIfInChildren_render;
638
647
 
639
- var root_30 = _$_.template(`<span class=for-item>`);
648
+ var root_30 = _$_.template_el('span', ['class', 'for-item']);
640
649
 
641
650
  function ForList_render(__anchor, __block, { items }) {
642
651
  _$_.for(
@@ -679,8 +688,8 @@ function HtmlAfterForInChildren_render(__anchor, __block) {
679
688
 
680
689
  HtmlAfterForInChildren[_$_.$r] = HtmlAfterForInChildren_render;
681
690
 
682
- var root_32 = _$_.template(`<div class=try-box>`);
683
- var root_33 = _$_.template(`<span>error`);
691
+ var root_32 = _$_.template_el('div', ['class', 'try-box']);
692
+ var root_33 = _$_.template_el('span', null, 'error');
684
693
 
685
694
  function TryBox_render(__anchor, __block, { value }) {
686
695
  _$_.try(
@@ -783,7 +792,7 @@ function HtmlAfterComponentInChildren_render(__anchor, __block) {
783
792
 
784
793
  HtmlAfterComponentInChildren[_$_.$r] = HtmlAfterComponentInChildren_render;
785
794
 
786
- var root_39 = _$_.template(`<div class=indicator>`);
795
+ var root_39 = _$_.template_el('div', ['class', 'indicator']);
787
796
 
788
797
  function consequent_4(__anchor, active) {
789
798
  var div_28 = root_39();
@@ -848,6 +857,14 @@ function if_6({ a: expanded, b: children }) {
848
857
 
849
858
  var root_40 = _$_.template(`<section class=sidebar-section><div class=section-header><h2></h2><button>Toggle`);
850
859
 
860
+ function render_6(__prev) {
861
+ var __a = if_6({ a: __prev._a, b: __prev._b });
862
+
863
+ if (__prev.a !== __a) {
864
+ _$_.if_update(__prev._c, __prev.a = __a);
865
+ }
866
+ }
867
+
851
868
  function SidebarSection_render(__anchor, __block, { title, children }) {
852
869
  const expanded = _$_.track(true, __block, 'tmjvjj');
853
870
  var section_1 = root_40();
@@ -873,10 +890,12 @@ function SidebarSection_render(__anchor, __block, { title, children }) {
873
890
  ? _$_.hydrate_sibling()
874
891
  : _$_.append_into(section_1, true);
875
892
 
876
- _$_.if(node_20, if_6, false, { a: expanded, b: children });
893
+ var ifs_1 = _$_.if_static(node_20, if_6, 0, { a: expanded, b: children });
894
+
877
895
  _$_.hydrating && _$_.pop(section_1);
878
896
  }
879
897
 
898
+ _$_.render(render_6, { a: _$_.UNINITIALIZED, _a: expanded, _b: children, _c: ifs_1 });
880
899
  _$_.append(__anchor, section_1);
881
900
  }
882
901
 
@@ -1049,7 +1068,7 @@ function ArticleWrapper_render(__anchor, __block, { children }) {
1049
1068
 
1050
1069
  ArticleWrapper[_$_.$r] = ArticleWrapper_render;
1051
1070
 
1052
- var root_49 = _$_.template(`<footer class=doc-footer>Footer`);
1071
+ var root_49 = _$_.template_el('footer', ['class', 'doc-footer'], 'Footer');
1053
1072
 
1054
1073
  function SimpleFooter_render(__anchor, __block) {
1055
1074
  var footer_1 = root_49();
@@ -1120,7 +1139,7 @@ function ArticleWithChildrenThenSibling_render(__anchor, __block) {
1120
1139
 
1121
1140
  ArticleWithChildrenThenSibling[_$_.$r] = ArticleWithChildrenThenSibling_render;
1122
1141
 
1123
- var root_55 = _$_.template(`<div class=doc-content>`);
1142
+ var root_55 = _$_.template_el('div', ['class', 'doc-content']);
1124
1143
  var root_56 = _$_.template(`<div class=edit-link><a href=/edit>Edit`);
1125
1144
 
1126
1145
  function consequent_9(__anchor) {
@@ -1214,7 +1233,7 @@ function InlineArticleLayout_render(__anchor, __block, { children }) {
1214
1233
 
1215
1234
  InlineArticleLayout[_$_.$r] = InlineArticleLayout_render;
1216
1235
 
1217
- var root_59 = _$_.template(`<div class=doc-content>`);
1236
+ var root_59 = _$_.template_el('div', ['class', 'doc-content']);
1218
1237
 
1219
1238
  function InlineArticleWithHtmlChild_render(__anchor, __block) {
1220
1239
  const htmlContent = '<pre><code>const x = 1;</code></pre>';
@@ -1231,7 +1250,7 @@ function InlineArticleWithHtmlChild_render(__anchor, __block) {
1231
1250
 
1232
1251
  InlineArticleWithHtmlChild[_$_.$r] = InlineArticleWithHtmlChild_render;
1233
1252
 
1234
- var root_60 = _$_.template(`<header class=header>Header`);
1253
+ var root_60 = _$_.template_el('header', ['class', 'header'], 'Header');
1235
1254
 
1236
1255
  function HeaderStub_render(__anchor, __block) {
1237
1256
  var header_1 = root_60();
@@ -1241,7 +1260,7 @@ function HeaderStub_render(__anchor, __block) {
1241
1260
 
1242
1261
  HeaderStub[_$_.$r] = HeaderStub_render;
1243
1262
 
1244
- var root_61 = _$_.template(`<aside class=sidebar>Sidebar`);
1263
+ var root_61 = _$_.template_el('aside', ['class', 'sidebar'], 'Sidebar');
1245
1264
 
1246
1265
  function SidebarStub_render(__anchor, __block) {
1247
1266
  var aside_2 = root_61();
@@ -1251,7 +1270,7 @@ function SidebarStub_render(__anchor, __block) {
1251
1270
 
1252
1271
  SidebarStub[_$_.$r] = SidebarStub_render;
1253
1272
 
1254
- var root_62 = _$_.template(`<footer class=footer>Footer`);
1273
+ var root_62 = _$_.template_el('footer', ['class', 'footer'], 'Footer');
1255
1274
 
1256
1275
  function FooterStub_render(__anchor, __block) {
1257
1276
  var footer_2 = root_62();
@@ -1275,7 +1294,7 @@ function if_12(editPath) {
1275
1294
 
1276
1295
  var root_65 = _$_.template(`<nav class=prev-next><a> `);
1277
1296
 
1278
- function render_5(__prev) {
1297
+ function render_7(__prev) {
1279
1298
  var __a = __prev._a.href;
1280
1299
 
1281
1300
  if (__prev.a !== __a) {
@@ -1297,7 +1316,7 @@ function consequent_12(__anchor, nextLink) {
1297
1316
  }
1298
1317
  }
1299
1318
 
1300
- _$_.render(render_5, { a: void 0, _a: nextLink, _b: a_4 });
1319
+ _$_.render(render_7, { a: void 0, _a: nextLink, _b: a_4 });
1301
1320
  _$_.append(__anchor, nav_3);
1302
1321
  }
1303
1322
 
@@ -1381,7 +1400,7 @@ function DocsLayoutInner_render(
1381
1400
 
1382
1401
  DocsLayoutInner[_$_.$r] = DocsLayoutInner_render;
1383
1402
 
1384
- var root_66 = _$_.template(`<div class=doc-content>`);
1403
+ var root_66 = _$_.template_el('div', ['class', 'doc-content']);
1385
1404
 
1386
1405
  function DocsLayoutWithData_render(__anchor, __block) {
1387
1406
  const htmlContent = '<h1>Title</h1><p>Content</p>';
@@ -1400,7 +1419,7 @@ function DocsLayoutWithData_render(__anchor, __block) {
1400
1419
 
1401
1420
  DocsLayoutWithData[_$_.$r] = DocsLayoutWithData_render;
1402
1421
 
1403
- var root_67 = _$_.template(`<div class=doc-content>`);
1422
+ var root_67 = _$_.template_el('div', ['class', 'doc-content']);
1404
1423
 
1405
1424
  function DocsLayoutWithoutData_render(__anchor, __block) {
1406
1425
  const htmlContent = undefined;
@@ -1425,7 +1444,7 @@ function consequent_13(__anchor, editPath) {
1425
1444
  {
1426
1445
  var a_5 = _$_.hydrating ? _$_.hydrate_child() : div_62.firstChild;
1427
1446
 
1428
- _$_.set_attribute(a_5, 'href', `/edit/${editPath}`);
1447
+ a_5.setAttribute('href', `/edit/${editPath}`);
1429
1448
  }
1430
1449
 
1431
1450
  _$_.append(__anchor, div_62);
@@ -1437,7 +1456,7 @@ function if_14(editPath) {
1437
1456
 
1438
1457
  var root_71 = _$_.template(`<a class="pager prev"><span class=title> `);
1439
1458
 
1440
- function render_6(__prev) {
1459
+ function render_8(__prev) {
1441
1460
  var __a = __prev._a.href;
1442
1461
 
1443
1462
  if (__prev.a !== __a) {
@@ -1445,7 +1464,7 @@ function render_6(__prev) {
1445
1464
  }
1446
1465
  }
1447
1466
 
1448
- var root_72 = _$_.template(`<span>`);
1467
+ var root_72 = _$_.template_el('span');
1449
1468
 
1450
1469
  function consequent_14(__anchor, prevLink) {
1451
1470
  var a_6 = root_71();
@@ -1461,7 +1480,7 @@ function consequent_14(__anchor, prevLink) {
1461
1480
  }
1462
1481
  }
1463
1482
 
1464
- _$_.render(render_6, { a: void 0, _a: prevLink, _b: a_6 });
1483
+ _$_.render(render_8, { a: void 0, _a: prevLink, _b: a_6 });
1465
1484
  _$_.append(__anchor, a_6);
1466
1485
  }
1467
1486
 
@@ -1477,7 +1496,7 @@ function if_15(prevLink) {
1477
1496
 
1478
1497
  var root_73 = _$_.template(`<a class="pager next"><span class=title> `);
1479
1498
 
1480
- function render_7(__prev) {
1499
+ function render_9(__prev) {
1481
1500
  var __a = __prev._a.href;
1482
1501
 
1483
1502
  if (__prev.a !== __a) {
@@ -1499,7 +1518,7 @@ function consequent_15(__anchor, nextLink) {
1499
1518
  }
1500
1519
  }
1501
1520
 
1502
- _$_.render(render_7, { a: void 0, _a: nextLink, _b: a_7 });
1521
+ _$_.render(render_9, { a: void 0, _a: nextLink, _b: a_7 });
1503
1522
  _$_.append(__anchor, a_7);
1504
1523
  }
1505
1524
 
@@ -1530,9 +1549,9 @@ function if_17({ a: prevLink, b: nextLink }) {
1530
1549
  if (prevLink || nextLink) return consequent_16;
1531
1550
  }
1532
1551
 
1533
- var root_75 = _$_.template(`<a>`);
1552
+ var root_75 = _$_.template_el('a');
1534
1553
 
1535
- function render_8(__prev) {
1554
+ function render_10(__prev) {
1536
1555
  var __a = __prev._a.text;
1537
1556
 
1538
1557
  if (__prev.a !== __a) {
@@ -1567,7 +1586,7 @@ function consequent_17(__anchor, toc) {
1567
1586
  },
1568
1587
  4,
1569
1588
  void 0,
1570
- render_8
1589
+ render_10
1571
1590
  );
1572
1591
 
1573
1592
  _$_.hydrating && _$_.pop(nav_5);
@@ -1583,6 +1602,14 @@ function if_18(toc) {
1583
1602
 
1584
1603
  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
1604
 
1605
+ function render_11(__prev) {
1606
+ var __a = if_18(__prev._a);
1607
+
1608
+ if (__prev.a !== __a) {
1609
+ _$_.if_update(__prev._b, __prev.a = __a);
1610
+ }
1611
+ }
1612
+
1586
1613
  function DocsLayoutExact_render(
1587
1614
  __anchor,
1588
1615
  __block,
@@ -1656,8 +1683,8 @@ function DocsLayoutExact_render(
1656
1683
 
1657
1684
  {
1658
1685
  var node_50 = _$_.hydrating ? _$_.hydrate_child() : aside_3.firstChild;
1686
+ var ifs_2 = _$_.if_static(node_50, if_18, 0, toc);
1659
1687
 
1660
- _$_.if(node_50, if_18, false, toc);
1661
1688
  _$_.hydrating && _$_.pop(aside_3);
1662
1689
  }
1663
1690
  }
@@ -1669,12 +1696,13 @@ function DocsLayoutExact_render(
1669
1696
  _$_.hydrating && _$_.pop(div_56);
1670
1697
  }
1671
1698
 
1699
+ _$_.render(render_11, { a: _$_.UNINITIALIZED, _a: toc, _b: ifs_2 });
1672
1700
  _$_.append(__anchor, div_56);
1673
1701
  }
1674
1702
 
1675
1703
  DocsLayoutExact[_$_.$r] = DocsLayoutExact_render;
1676
1704
 
1677
- var root_76 = _$_.template(`<div class=doc-content>`);
1705
+ var root_76 = _$_.template_el('div', ['class', 'doc-content']);
1678
1706
 
1679
1707
  function DocsLayoutExactWithData_render(__anchor, __block) {
1680
1708
  const htmlContent = '<h1>Styling Guide</h1><p>Content</p>';
@@ -1699,7 +1727,7 @@ function DocsLayoutExactWithData_render(__anchor, __block) {
1699
1727
 
1700
1728
  DocsLayoutExactWithData[_$_.$r] = DocsLayoutExactWithData_render;
1701
1729
 
1702
- var root_77 = _$_.template(`<div class=doc-content>`);
1730
+ var root_77 = _$_.template_el('div', ['class', 'doc-content']);
1703
1731
 
1704
1732
  function DocsLayoutExactWithoutData_render(__anchor, __block) {
1705
1733
  const htmlContent = undefined;
@@ -1726,7 +1754,7 @@ DocsLayoutExactWithoutData[_$_.$r] = DocsLayoutExactWithoutData_render;
1726
1754
 
1727
1755
  var root_78 = _$_.template(`<div><template id=t1></template><p class=content>Main content`);
1728
1756
 
1729
- function render_9(__prev) {
1757
+ function render_12(__prev) {
1730
1758
  var __a = _$_.with_scope(__prev._a, () => JSON.stringify(__prev._b));
1731
1759
 
1732
1760
  if (__prev.a !== __a) {
@@ -1742,7 +1770,7 @@ function TemplateWithHtmlContent_render(__anchor, __block) {
1742
1770
  var template = _$_.hydrating ? _$_.hydrate_child() : div_66.firstChild;
1743
1771
  }
1744
1772
 
1745
- _$_.render(render_9, { a: template.innerHTML, _a: __block, _b: data, _c: template });
1773
+ _$_.render(render_12, { a: template.innerHTML, _a: __block, _b: data, _c: template });
1746
1774
  _$_.append(__anchor, div_66);
1747
1775
  }
1748
1776
 
@@ -1750,7 +1778,7 @@ TemplateWithHtmlContent[_$_.$r] = TemplateWithHtmlContent_render;
1750
1778
 
1751
1779
  var root_79 = _$_.template(`<div class=wrapper><h1>Title</h1><template id=data-template></template><p class=after-template>Content after template`);
1752
1780
 
1753
- function render_10(__prev) {
1781
+ function render_13(__prev) {
1754
1782
  var __a = _$_.with_scope(__prev._a, () => JSON.stringify(__prev._b));
1755
1783
 
1756
1784
  if (__prev.a !== __a) {
@@ -1767,7 +1795,7 @@ function TemplateWithHtmlAndSiblings_render(__anchor, __block) {
1767
1795
  var template_1 = _$_.hydrating ? _$_.hydrate_sibling() : h1_3.nextSibling;
1768
1796
  }
1769
1797
 
1770
- _$_.render(render_10, {
1798
+ _$_.render(render_13, {
1771
1799
  a: template_1.innerHTML,
1772
1800
  _a: __block,
1773
1801
  _b: data,
@@ -1781,7 +1809,7 @@ TemplateWithHtmlAndSiblings[_$_.$r] = TemplateWithHtmlAndSiblings_render;
1781
1809
 
1782
1810
  var root_80 = _$_.template(`<div class=layout><template id=page-data></template><main><!>`);
1783
1811
 
1784
- function render_11(__prev) {
1812
+ function render_14(__prev) {
1785
1813
  var __a = _$_.with_scope(__prev._a, () => JSON.stringify(__prev._b));
1786
1814
 
1787
1815
  if (__prev.a !== __a) {
@@ -1804,7 +1832,7 @@ function LayoutWithTemplate_render(__anchor, __block, { children, data }) {
1804
1832
  }
1805
1833
  }
1806
1834
 
1807
- _$_.render(render_11, {
1835
+ _$_.render(render_14, {
1808
1836
  a: template_2.innerHTML,
1809
1837
  _a: __block,
1810
1838
  _b: data,
@@ -1816,9 +1844,9 @@ function LayoutWithTemplate_render(__anchor, __block, { children, data }) {
1816
1844
 
1817
1845
  LayoutWithTemplate[_$_.$r] = LayoutWithTemplate_render;
1818
1846
 
1819
- var root_81 = _$_.template(`<div class=doc-content>`);
1847
+ var root_81 = _$_.template_el('div', ['class', 'doc-content']);
1820
1848
 
1821
- function render_12(__prev) {
1849
+ function render_15(__prev) {
1822
1850
  var __a = __prev._a.html;
1823
1851
 
1824
1852
  if (__prev.a !== __a) {
@@ -1834,7 +1862,7 @@ function NestedTemplateInLayout_render(__anchor, __block) {
1834
1862
  children: _$_.tsrx_element((__anchor, __block) => {
1835
1863
  var div_69 = root_81();
1836
1864
 
1837
- _$_.render(render_12, { a: div_69.innerHTML, _a: doc, _b: div_69 });
1865
+ _$_.render(render_15, { a: div_69.innerHTML, _a: doc, _b: div_69 });
1838
1866
  _$_.append(__anchor, div_69);
1839
1867
  })
1840
1868
  });