ripple 0.3.67 → 0.3.69

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 (182) hide show
  1. package/CHANGELOG.md +57 -0
  2. package/package.json +3 -3
  3. package/src/jsx-runtime.d.ts +2 -2
  4. package/src/runtime/element.js +1 -1
  5. package/src/runtime/index-client.js +11 -11
  6. package/src/runtime/index-server.js +7 -4
  7. package/src/runtime/internal/client/bindings.js +1 -1
  8. package/src/runtime/internal/client/blocks.js +13 -4
  9. package/src/runtime/internal/client/component.js +55 -0
  10. package/src/runtime/internal/client/composite.js +4 -2
  11. package/src/runtime/internal/client/expression.js +65 -7
  12. package/src/runtime/internal/client/hmr.js +54 -43
  13. package/src/runtime/internal/client/index.js +5 -1
  14. package/src/runtime/internal/client/portal.js +70 -69
  15. package/src/runtime/internal/client/render.js +3 -0
  16. package/src/runtime/internal/server/index.js +92 -8
  17. package/tests/client/__snapshots__/html.test.tsrx.snap +3 -3
  18. package/tests/client/array/array.copy-within.test.tsrx +33 -31
  19. package/tests/client/array/array.derived.test.tsrx +186 -169
  20. package/tests/client/array/array.iteration.test.tsrx +40 -37
  21. package/tests/client/array/array.mutations.test.tsrx +113 -101
  22. package/tests/client/array/array.static.test.tsrx +119 -101
  23. package/tests/client/array/array.to-methods.test.tsrx +24 -21
  24. package/tests/client/async-suspend.test.tsrx +247 -246
  25. package/tests/client/basic/__snapshots__/basic.rendering.test.tsrx.snap +0 -1
  26. package/tests/client/basic/basic.attributes.test.tsrx +428 -423
  27. package/tests/client/basic/basic.collections.test.tsrx +109 -102
  28. package/tests/client/basic/basic.components.test.tsrx +323 -205
  29. package/tests/client/basic/basic.errors.test.tsrx +91 -91
  30. package/tests/client/basic/basic.events.test.tsrx +114 -115
  31. package/tests/client/basic/basic.get-set.test.tsrx +97 -87
  32. package/tests/client/basic/basic.hmr.test.tsrx +19 -16
  33. package/tests/client/basic/basic.reactivity.test.tsrx +199 -191
  34. package/tests/client/basic/basic.rendering.test.tsrx +272 -182
  35. package/tests/client/basic/basic.styling.test.tsrx +23 -22
  36. package/tests/client/basic/basic.utilities.test.tsrx +10 -8
  37. package/tests/client/boundaries.test.tsrx +26 -26
  38. package/tests/client/compiler/__snapshots__/compiler.assignments.test.rsrx.snap +5 -5
  39. package/tests/client/compiler/__snapshots__/compiler.assignments.test.tsrx.snap +5 -5
  40. package/tests/client/compiler/compiler.assignments.test.tsrx +77 -81
  41. package/tests/client/compiler/compiler.attributes.test.tsrx +15 -15
  42. package/tests/client/compiler/compiler.basic.test.tsrx +322 -314
  43. package/tests/client/compiler/compiler.regex.test.tsrx +44 -47
  44. package/tests/client/compiler/compiler.tracked-access.test.tsrx +38 -38
  45. package/tests/client/compiler/compiler.try-in-function.test.tsrx +16 -16
  46. package/tests/client/compiler/compiler.typescript.test.tsrx +2 -2
  47. package/tests/client/composite/composite.dynamic-components.test.tsrx +47 -48
  48. package/tests/client/composite/composite.generics.test.tsrx +168 -192
  49. package/tests/client/composite/composite.props.test.tsrx +97 -81
  50. package/tests/client/composite/composite.reactivity.test.tsrx +177 -147
  51. package/tests/client/composite/composite.render.test.tsrx +122 -105
  52. package/tests/client/computed-properties.test.tsrx +28 -28
  53. package/tests/client/context.test.tsrx +21 -21
  54. package/tests/client/css/global-additional-cases.test.tsrx +58 -58
  55. package/tests/client/css/global-advanced-selectors.test.tsrx +16 -16
  56. package/tests/client/css/global-at-rules.test.tsrx +10 -10
  57. package/tests/client/css/global-basic.test.tsrx +14 -14
  58. package/tests/client/css/global-classes-ids.test.tsrx +14 -14
  59. package/tests/client/css/global-combinators.test.tsrx +10 -10
  60. package/tests/client/css/global-complex-nesting.test.tsrx +14 -14
  61. package/tests/client/css/global-edge-cases.test.tsrx +18 -18
  62. package/tests/client/css/global-keyframes.test.tsrx +12 -12
  63. package/tests/client/css/global-nested.test.tsrx +10 -10
  64. package/tests/client/css/global-pseudo.test.tsrx +12 -12
  65. package/tests/client/css/global-scoping.test.tsrx +20 -20
  66. package/tests/client/css/style-identifier.test.tsrx +143 -291
  67. package/tests/client/date.test.tsrx +146 -133
  68. package/tests/client/dynamic-elements.test.tsrx +398 -365
  69. package/tests/client/events.test.tsrx +292 -290
  70. package/tests/client/for.test.tsrx +156 -153
  71. package/tests/client/head.test.tsrx +105 -96
  72. package/tests/client/html.test.tsrx +122 -26
  73. package/tests/client/input-value.test.tsrx +1361 -1314
  74. package/tests/client/lazy-array.test.tsrx +16 -13
  75. package/tests/client/lazy-destructuring.test.tsrx +257 -213
  76. package/tests/client/map.test.tsrx +65 -60
  77. package/tests/client/media-query.test.tsrx +22 -20
  78. package/tests/client/object.test.tsrx +87 -81
  79. package/tests/client/portal.test.tsrx +57 -51
  80. package/tests/client/ref.test.tsrx +233 -202
  81. package/tests/client/return.test.tsrx +71 -2560
  82. package/tests/client/set.test.tsrx +54 -45
  83. package/tests/client/svg.test.tsrx +216 -186
  84. package/tests/client/switch.test.tsrx +194 -193
  85. package/tests/client/track-async-hydration.test.tsrx +18 -14
  86. package/tests/client/tracked-index-access.test.tsrx +28 -18
  87. package/tests/client/try.test.tsrx +675 -548
  88. package/tests/client/tsx.test.tsrx +373 -311
  89. package/tests/client/typescript-generics.test.tsrx +145 -145
  90. package/tests/client/url/url.derived.test.tsrx +33 -28
  91. package/tests/client/url/url.parsing.test.tsrx +61 -51
  92. package/tests/client/url/url.partial-removal.test.tsrx +56 -48
  93. package/tests/client/url/url.reactivity.test.tsrx +142 -125
  94. package/tests/client/url/url.serialization.test.tsrx +13 -11
  95. package/tests/client/url-search-params/url-search-params.derived.test.tsrx +34 -29
  96. package/tests/client/url-search-params/url-search-params.initialization.test.tsrx +25 -21
  97. package/tests/client/url-search-params/url-search-params.iteration.test.tsrx +50 -45
  98. package/tests/client/url-search-params/url-search-params.mutation.test.tsrx +111 -99
  99. package/tests/client/url-search-params/url-search-params.retrieval.test.tsrx +49 -43
  100. package/tests/client/url-search-params/url-search-params.serialization.test.tsrx +14 -12
  101. package/tests/client/url-search-params/url-search-params.tracked-url.test.tsrx +16 -14
  102. package/tests/hydration/basic.test.js +3 -3
  103. package/tests/hydration/compiled/client/basic.js +586 -651
  104. package/tests/hydration/compiled/client/composite.js +79 -104
  105. package/tests/hydration/compiled/client/events.js +140 -148
  106. package/tests/hydration/compiled/client/for.js +1005 -1018
  107. package/tests/hydration/compiled/client/head.js +124 -134
  108. package/tests/hydration/compiled/client/hmr.js +41 -48
  109. package/tests/hydration/compiled/client/html-in-template.js +38 -41
  110. package/tests/hydration/compiled/client/html.js +970 -1314
  111. package/tests/hydration/compiled/client/if-children.js +234 -249
  112. package/tests/hydration/compiled/client/if.js +182 -189
  113. package/tests/hydration/compiled/client/mixed-control-flow.js +347 -303
  114. package/tests/hydration/compiled/client/nested-control-flow.js +1084 -832
  115. package/tests/hydration/compiled/client/portal.js +65 -85
  116. package/tests/hydration/compiled/client/reactivity.js +84 -90
  117. package/tests/hydration/compiled/client/return.js +38 -1939
  118. package/tests/hydration/compiled/client/switch.js +218 -224
  119. package/tests/hydration/compiled/client/track-async-serialization.js +250 -259
  120. package/tests/hydration/compiled/client/try.js +123 -132
  121. package/tests/hydration/compiled/server/basic.js +773 -831
  122. package/tests/hydration/compiled/server/composite.js +166 -191
  123. package/tests/hydration/compiled/server/events.js +170 -184
  124. package/tests/hydration/compiled/server/for.js +851 -909
  125. package/tests/hydration/compiled/server/head.js +206 -216
  126. package/tests/hydration/compiled/server/hmr.js +64 -72
  127. package/tests/hydration/compiled/server/html-in-template.js +42 -76
  128. package/tests/hydration/compiled/server/html.js +1362 -1667
  129. package/tests/hydration/compiled/server/if-children.js +419 -445
  130. package/tests/hydration/compiled/server/if.js +194 -208
  131. package/tests/hydration/compiled/server/mixed-control-flow.js +249 -257
  132. package/tests/hydration/compiled/server/nested-control-flow.js +491 -515
  133. package/tests/hydration/compiled/server/portal.js +152 -160
  134. package/tests/hydration/compiled/server/reactivity.js +94 -106
  135. package/tests/hydration/compiled/server/return.js +28 -2172
  136. package/tests/hydration/compiled/server/switch.js +274 -286
  137. package/tests/hydration/compiled/server/track-async-serialization.js +340 -358
  138. package/tests/hydration/compiled/server/try.js +167 -185
  139. package/tests/hydration/components/basic.tsrx +320 -272
  140. package/tests/hydration/components/composite.tsrx +44 -32
  141. package/tests/hydration/components/events.tsrx +101 -91
  142. package/tests/hydration/components/for.tsrx +510 -452
  143. package/tests/hydration/components/head.tsrx +87 -80
  144. package/tests/hydration/components/hmr.tsrx +22 -17
  145. package/tests/hydration/components/html-in-template.tsrx +22 -17
  146. package/tests/hydration/components/html.tsrx +525 -443
  147. package/tests/hydration/components/if-children.tsrx +158 -148
  148. package/tests/hydration/components/if.tsrx +109 -95
  149. package/tests/hydration/components/mixed-control-flow.tsrx +100 -96
  150. package/tests/hydration/components/nested-control-flow.tsrx +215 -203
  151. package/tests/hydration/components/portal.tsrx +41 -34
  152. package/tests/hydration/components/reactivity.tsrx +37 -27
  153. package/tests/hydration/components/return.tsrx +12 -556
  154. package/tests/hydration/components/switch.tsrx +120 -114
  155. package/tests/hydration/components/track-async-serialization.tsrx +107 -91
  156. package/tests/hydration/components/try.tsrx +55 -40
  157. package/tests/hydration/html.test.js +4 -4
  158. package/tests/hydration/return.test.js +13 -532
  159. package/tests/server/await.test.tsrx +3 -3
  160. package/tests/server/basic.attributes.test.tsrx +264 -195
  161. package/tests/server/basic.components.test.tsrx +296 -169
  162. package/tests/server/basic.test.tsrx +300 -198
  163. package/tests/server/compiler.test.tsrx +62 -60
  164. package/tests/server/composite.props.test.tsrx +77 -63
  165. package/tests/server/composite.test.tsrx +168 -192
  166. package/tests/server/context.test.tsrx +18 -12
  167. package/tests/server/dynamic-elements.test.tsrx +197 -180
  168. package/tests/server/for.test.tsrx +85 -78
  169. package/tests/server/head.test.tsrx +50 -43
  170. package/tests/server/html-nesting-validation.test.tsrx +8 -8
  171. package/tests/server/if.test.tsrx +57 -51
  172. package/tests/server/lazy-destructuring.test.tsrx +366 -294
  173. package/tests/server/return.test.tsrx +76 -1355
  174. package/tests/server/streaming-ssr.test.tsrx +4 -75
  175. package/tests/server/style-identifier.test.tsrx +169 -148
  176. package/tests/server/switch.test.tsrx +91 -85
  177. package/tests/server/track-async-serialization.test.tsrx +105 -85
  178. package/tests/server/try.test.tsrx +374 -280
  179. package/tests/utils/compiler-compat-config.test.js +2 -2
  180. package/tests/utils/runtime-imports.test.js +10 -0
  181. package/types/index.d.ts +8 -0
  182. package/tests/client/__snapshots__/html.test.rsrx.snap +0 -40
@@ -4,235 +4,227 @@ import * as _$_ from 'ripple/internal/server';
4
4
  import { Portal, track } from 'ripple/server';
5
5
 
6
6
  export function SimplePortal() {
7
- _$_.push_component();
8
-
9
- _$_.regular_block(() => {
10
- _$_.output_push('<div');
11
- _$_.output_push(' class="container"');
12
- _$_.output_push('>');
13
-
14
- {
15
- _$_.output_push('<h1');
7
+ return _$_.tsrx_element(() => {
8
+ _$_.regular_block(() => {
9
+ _$_.output_push('<div');
10
+ _$_.output_push(' class="container"');
16
11
  _$_.output_push('>');
17
12
 
18
13
  {
19
- _$_.output_push('Main Content');
20
- }
21
-
22
- _$_.output_push('</h1>');
23
-
24
- {
25
- const comp = Portal;
26
-
27
- const args = [
28
- {
29
- target: typeof document !== 'undefined' ? document.body : null,
30
- children: _$_.tsrx_element(function render_children() {
31
- _$_.push_component();
32
- _$_.output_push('<div');
33
- _$_.output_push(' class="portal-content"');
34
- _$_.output_push('>');
35
-
36
- {
37
- _$_.output_push('Portal content');
38
- }
39
-
40
- _$_.output_push('</div>');
41
- _$_.pop_component();
42
- })
43
- }
44
- ];
14
+ _$_.output_push('<h1');
15
+ _$_.output_push('>');
45
16
 
46
- if (comp) {
47
- comp(...args);
17
+ {
18
+ _$_.output_push('Main Content');
48
19
  }
49
- }
50
- }
51
20
 
52
- _$_.output_push('</div>');
53
- });
54
-
55
- _$_.pop_component();
56
- }
57
-
58
- export function ConditionalPortal() {
59
- _$_.push_component();
60
-
61
- let lazy = _$_.track(true, '4f6df174');
62
-
63
- _$_.regular_block(() => {
64
- _$_.output_push('<div');
65
- _$_.output_push(' class="container"');
66
- _$_.output_push('>');
67
-
68
- {
69
- _$_.output_push('<button');
70
- _$_.output_push(' class="toggle"');
71
- _$_.output_push('>');
21
+ _$_.output_push('</h1>');
72
22
 
73
- {
74
- _$_.output_push('Toggle');
75
- }
76
-
77
- _$_.output_push('</button>');
78
- _$_.output_push('<!--[-->');
79
-
80
- if (lazy.value) {
81
23
  {
82
24
  const comp = Portal;
83
25
 
84
26
  const args = [
85
27
  {
86
28
  target: typeof document !== 'undefined' ? document.body : null,
87
- children: _$_.tsrx_element(function render_children() {
88
- _$_.push_component();
89
- _$_.output_push('<div');
90
- _$_.output_push(' class="portal-content"');
91
- _$_.output_push('>');
92
-
93
- {
94
- _$_.output_push('Portal is visible');
95
- }
96
-
97
- _$_.output_push('</div>');
98
- _$_.pop_component();
29
+ children: _$_.tsrx_element(() => {
30
+ return _$_.tsrx_element(() => {
31
+ _$_.output_push('<div');
32
+ _$_.output_push(' class="portal-content"');
33
+ _$_.output_push('>');
34
+
35
+ {
36
+ _$_.output_push('Portal content');
37
+ }
38
+
39
+ _$_.output_push('</div>');
40
+ });
99
41
  })
100
42
  }
101
43
  ];
102
44
 
103
45
  if (comp) {
104
- comp(...args);
46
+ _$_.render_component(comp, ...args);
105
47
  }
106
48
  }
107
49
  }
108
50
 
109
- _$_.output_push('<!--]-->');
110
- }
111
-
112
- _$_.output_push('</div>');
51
+ _$_.output_push('</div>');
52
+ });
113
53
  });
114
-
115
- _$_.pop_component();
116
54
  }
117
55
 
118
- export function PortalWithMainContent() {
119
- _$_.push_component();
120
-
121
- _$_.regular_block(() => {
122
- _$_.output_push('<div');
123
- _$_.output_push('>');
56
+ export function ConditionalPortal() {
57
+ return _$_.tsrx_element(() => {
58
+ let lazy = _$_.track(true, '4f6df174');
124
59
 
125
- {
60
+ _$_.regular_block(() => {
126
61
  _$_.output_push('<div');
127
- _$_.output_push(' class="main-content"');
62
+ _$_.output_push(' class="container"');
128
63
  _$_.output_push('>');
129
64
 
130
65
  {
131
- _$_.output_push('Main page content');
132
- }
66
+ _$_.output_push('<button');
67
+ _$_.output_push(' class="toggle"');
68
+ _$_.output_push('>');
133
69
 
134
- _$_.output_push('</div>');
70
+ {
71
+ _$_.output_push('Toggle');
72
+ }
135
73
 
136
- {
137
- const comp = Portal;
74
+ _$_.output_push('</button>');
75
+ _$_.output_push('<!--[-->');
138
76
 
139
- const args = [
77
+ if (lazy.value) {
140
78
  {
141
- target: typeof document !== 'undefined' ? document.body : null,
142
- children: _$_.tsrx_element(function render_children() {
143
- _$_.push_component();
144
- _$_.output_push('<div');
145
- _$_.output_push(' class="portal-content"');
146
- _$_.output_push('>');
79
+ const comp = Portal;
147
80
 
81
+ const args = [
148
82
  {
149
- _$_.output_push('Modal content');
83
+ target: typeof document !== 'undefined' ? document.body : null,
84
+ children: _$_.tsrx_element(() => {
85
+ return _$_.tsrx_element(() => {
86
+ _$_.output_push('<div');
87
+ _$_.output_push(' class="portal-content"');
88
+ _$_.output_push('>');
89
+
90
+ {
91
+ _$_.output_push('Portal is visible');
92
+ }
93
+
94
+ _$_.output_push('</div>');
95
+ });
96
+ })
150
97
  }
98
+ ];
151
99
 
152
- _$_.output_push('</div>');
153
- _$_.pop_component();
154
- })
100
+ if (comp) {
101
+ _$_.render_component(comp, ...args);
102
+ }
155
103
  }
156
- ];
157
-
158
- if (comp) {
159
- comp(...args);
160
104
  }
105
+
106
+ _$_.output_push('<!--]-->');
161
107
  }
162
108
 
109
+ _$_.output_push('</div>');
110
+ });
111
+ });
112
+ }
113
+
114
+ export function PortalWithMainContent() {
115
+ return _$_.tsrx_element(() => {
116
+ _$_.regular_block(() => {
163
117
  _$_.output_push('<div');
164
- _$_.output_push(' class="footer"');
165
118
  _$_.output_push('>');
166
119
 
167
120
  {
168
- _$_.output_push('Footer');
169
- }
170
-
171
- _$_.output_push('</div>');
172
- }
121
+ _$_.output_push('<div');
122
+ _$_.output_push(' class="main-content"');
123
+ _$_.output_push('>');
173
124
 
174
- _$_.output_push('</div>');
175
- });
125
+ {
126
+ _$_.output_push('Main page content');
127
+ }
176
128
 
177
- _$_.pop_component();
178
- }
129
+ _$_.output_push('</div>');
179
130
 
180
- export function NestedContentWithPortal() {
181
- _$_.push_component();
131
+ {
132
+ const comp = Portal;
182
133
 
183
- _$_.regular_block(() => {
184
- _$_.output_push('<div');
185
- _$_.output_push(' class="outer"');
186
- _$_.output_push('>');
134
+ const args = [
135
+ {
136
+ target: typeof document !== 'undefined' ? document.body : null,
137
+ children: _$_.tsrx_element(() => {
138
+ return _$_.tsrx_element(() => {
139
+ _$_.output_push('<div');
140
+ _$_.output_push(' class="portal-content"');
141
+ _$_.output_push('>');
142
+
143
+ {
144
+ _$_.output_push('Modal content');
145
+ }
146
+
147
+ _$_.output_push('</div>');
148
+ });
149
+ })
150
+ }
151
+ ];
187
152
 
188
- {
189
- _$_.output_push('<div');
190
- _$_.output_push(' class="inner"');
191
- _$_.output_push('>');
153
+ if (comp) {
154
+ _$_.render_component(comp, ...args);
155
+ }
156
+ }
192
157
 
193
- {
194
- _$_.output_push('<span');
158
+ _$_.output_push('<div');
159
+ _$_.output_push(' class="footer"');
195
160
  _$_.output_push('>');
196
161
 
197
162
  {
198
- _$_.output_push('Nested content');
163
+ _$_.output_push('Footer');
199
164
  }
200
165
 
201
- _$_.output_push('</span>');
166
+ _$_.output_push('</div>');
202
167
  }
203
168
 
204
169
  _$_.output_push('</div>');
170
+ });
171
+ });
172
+ }
173
+
174
+ export function NestedContentWithPortal() {
175
+ return _$_.tsrx_element(() => {
176
+ _$_.regular_block(() => {
177
+ _$_.output_push('<div');
178
+ _$_.output_push(' class="outer"');
179
+ _$_.output_push('>');
205
180
 
206
181
  {
207
- const comp = Portal;
182
+ _$_.output_push('<div');
183
+ _$_.output_push(' class="inner"');
184
+ _$_.output_push('>');
185
+
186
+ {
187
+ _$_.output_push('<span');
188
+ _$_.output_push('>');
208
189
 
209
- const args = [
210
190
  {
211
- target: typeof document !== 'undefined' ? document.body : null,
212
- children: _$_.tsrx_element(function render_children() {
213
- _$_.push_component();
214
- _$_.output_push('<div');
215
- _$_.output_push(' class="portal-content"');
216
- _$_.output_push('>');
191
+ _$_.output_push('Nested content');
192
+ }
217
193
 
218
- {
219
- _$_.output_push('Portal content');
220
- }
194
+ _$_.output_push('</span>');
195
+ }
221
196
 
222
- _$_.output_push('</div>');
223
- _$_.pop_component();
224
- })
225
- }
226
- ];
197
+ _$_.output_push('</div>');
227
198
 
228
- if (comp) {
229
- comp(...args);
199
+ {
200
+ const comp = Portal;
201
+
202
+ const args = [
203
+ {
204
+ target: typeof document !== 'undefined' ? document.body : null,
205
+ children: _$_.tsrx_element(() => {
206
+ return _$_.tsrx_element(() => {
207
+ _$_.output_push('<div');
208
+ _$_.output_push(' class="portal-content"');
209
+ _$_.output_push('>');
210
+
211
+ {
212
+ _$_.output_push('Portal content');
213
+ }
214
+
215
+ _$_.output_push('</div>');
216
+ });
217
+ })
218
+ }
219
+ ];
220
+
221
+ if (comp) {
222
+ _$_.render_component(comp, ...args);
223
+ }
230
224
  }
231
225
  }
232
- }
233
226
 
234
- _$_.output_push('</div>');
227
+ _$_.output_push('</div>');
228
+ });
235
229
  });
236
-
237
- _$_.pop_component();
238
230
  }
@@ -4,153 +4,141 @@ import * as _$_ from 'ripple/internal/server';
4
4
  import { track } from 'ripple/server';
5
5
 
6
6
  export function TrackedState() {
7
- _$_.push_component();
7
+ return _$_.tsrx_element(() => {
8
+ let lazy = _$_.track(0, 'c1818584');
8
9
 
9
- let lazy = _$_.track(0, 'c1818584');
10
-
11
- _$_.regular_block(() => {
12
- _$_.output_push('<div');
13
- _$_.output_push(' class="count"');
14
- _$_.output_push('>');
10
+ _$_.regular_block(() => {
11
+ _$_.output_push('<div');
12
+ _$_.output_push(' class="count"');
13
+ _$_.output_push('>');
15
14
 
16
- {
17
- _$_.output_push(_$_.escape(lazy.value));
18
- }
15
+ {
16
+ _$_.output_push(_$_.escape(lazy.value));
17
+ }
19
18
 
20
- _$_.output_push('</div>');
19
+ _$_.output_push('</div>');
20
+ });
21
21
  });
22
-
23
- _$_.pop_component();
24
22
  }
25
23
 
26
24
  export function CounterWithInitial(props) {
27
- _$_.push_component();
25
+ return _$_.tsrx_element(() => {
26
+ let lazy_1 = _$_.track(props.initial, '03ea4348');
28
27
 
29
- let lazy_1 = _$_.track(props.initial, '03ea4348');
30
-
31
- _$_.regular_block(() => {
32
- _$_.output_push('<div');
33
- _$_.output_push('>');
34
-
35
- {
36
- _$_.output_push('<span');
37
- _$_.output_push(' class="count"');
28
+ _$_.regular_block(() => {
29
+ _$_.output_push('<div');
38
30
  _$_.output_push('>');
39
31
 
40
32
  {
41
- _$_.output_push(_$_.escape(lazy_1.value));
42
- }
33
+ _$_.output_push('<span');
34
+ _$_.output_push(' class="count"');
35
+ _$_.output_push('>');
43
36
 
44
- _$_.output_push('</span>');
45
- }
37
+ {
38
+ _$_.output_push(_$_.escape(lazy_1.value));
39
+ }
46
40
 
47
- _$_.output_push('</div>');
48
- });
41
+ _$_.output_push('</span>');
42
+ }
49
43
 
50
- _$_.pop_component();
44
+ _$_.output_push('</div>');
45
+ });
46
+ });
51
47
  }
52
48
 
53
49
  export function CounterWrapper() {
54
- _$_.push_component();
55
-
56
- _$_.regular_block(() => {
57
- {
58
- const comp = CounterWithInitial;
59
- const args = [{ initial: 5 }];
50
+ return _$_.tsrx_element(() => {
51
+ _$_.regular_block(() => {
52
+ {
53
+ const comp = CounterWithInitial;
54
+ const args = [{ initial: 5 }];
60
55
 
61
- comp(...args);
62
- }
56
+ _$_.render_component(comp, ...args);
57
+ }
58
+ });
63
59
  });
64
-
65
- _$_.pop_component();
66
60
  }
67
61
 
68
62
  export function ComputedValues() {
69
- _$_.push_component();
70
-
71
- let lazy_2 = _$_.track(2, 'b78281db');
72
- let lazy_3 = _$_.track(3, 'a0cf6c6d');
73
- const sum = () => lazy_2.value + lazy_3.value;
74
-
75
- _$_.regular_block(() => {
76
- _$_.output_push('<div');
77
- _$_.output_push(' class="sum"');
78
- _$_.output_push('>');
63
+ return _$_.tsrx_element(() => {
64
+ let lazy_2 = _$_.track(2, 'b78281db');
65
+ let lazy_3 = _$_.track(3, 'a0cf6c6d');
66
+ const sum = () => lazy_2.value + lazy_3.value;
67
+
68
+ _$_.regular_block(() => {
69
+ _$_.output_push('<div');
70
+ _$_.output_push(' class="sum"');
71
+ _$_.output_push('>');
79
72
 
80
- {
81
- _$_.output_push(_$_.escape(sum()));
82
- }
73
+ {
74
+ _$_.output_push(_$_.escape(sum()));
75
+ }
83
76
 
84
- _$_.output_push('</div>');
77
+ _$_.output_push('</div>');
78
+ });
85
79
  });
86
-
87
- _$_.pop_component();
88
80
  }
89
81
 
90
82
  export function MultipleTracked() {
91
- _$_.push_component();
92
-
93
- let lazy_4 = _$_.track(10, '843522de');
94
- let lazy_5 = _$_.track(20, '1308996d');
95
- let lazy_6 = _$_.track(30, '048c3fd0');
83
+ return _$_.tsrx_element(() => {
84
+ let lazy_4 = _$_.track(10, '843522de');
85
+ let lazy_5 = _$_.track(20, '1308996d');
86
+ let lazy_6 = _$_.track(30, '048c3fd0');
87
+
88
+ _$_.regular_block(() => {
89
+ _$_.output_push('<div');
90
+ _$_.output_push(' class="x"');
91
+ _$_.output_push('>');
96
92
 
97
- _$_.regular_block(() => {
98
- _$_.output_push('<div');
99
- _$_.output_push(' class="x"');
100
- _$_.output_push('>');
93
+ {
94
+ _$_.output_push(_$_.escape(lazy_4.value));
95
+ }
101
96
 
102
- {
103
- _$_.output_push(_$_.escape(lazy_4.value));
104
- }
97
+ _$_.output_push('</div>');
98
+ });
105
99
 
106
- _$_.output_push('</div>');
107
- });
108
-
109
- _$_.regular_block(() => {
110
- _$_.output_push('<div');
111
- _$_.output_push(' class="y"');
112
- _$_.output_push('>');
100
+ _$_.regular_block(() => {
101
+ _$_.output_push('<div');
102
+ _$_.output_push(' class="y"');
103
+ _$_.output_push('>');
113
104
 
114
- {
115
- _$_.output_push(_$_.escape(lazy_5.value));
116
- }
105
+ {
106
+ _$_.output_push(_$_.escape(lazy_5.value));
107
+ }
117
108
 
118
- _$_.output_push('</div>');
119
- });
109
+ _$_.output_push('</div>');
110
+ });
120
111
 
121
- _$_.regular_block(() => {
122
- _$_.output_push('<div');
123
- _$_.output_push(' class="z"');
124
- _$_.output_push('>');
112
+ _$_.regular_block(() => {
113
+ _$_.output_push('<div');
114
+ _$_.output_push(' class="z"');
115
+ _$_.output_push('>');
125
116
 
126
- {
127
- _$_.output_push(_$_.escape(lazy_6.value));
128
- }
117
+ {
118
+ _$_.output_push(_$_.escape(lazy_6.value));
119
+ }
129
120
 
130
- _$_.output_push('</div>');
121
+ _$_.output_push('</div>');
122
+ });
131
123
  });
132
-
133
- _$_.pop_component();
134
124
  }
135
125
 
136
126
  export function DerivedState() {
137
- _$_.push_component();
138
-
139
- let lazy_7 = _$_.track('John', '6015eeca');
140
- let lazy_8 = _$_.track('Doe', '4fa9a20e');
141
- const fullName = () => `${lazy_7.value} ${lazy_8.value}`;
142
-
143
- _$_.regular_block(() => {
144
- _$_.output_push('<div');
145
- _$_.output_push(' class="name"');
146
- _$_.output_push('>');
127
+ return _$_.tsrx_element(() => {
128
+ let lazy_7 = _$_.track('John', '6015eeca');
129
+ let lazy_8 = _$_.track('Doe', '4fa9a20e');
130
+ const fullName = () => `${lazy_7.value} ${lazy_8.value}`;
131
+
132
+ _$_.regular_block(() => {
133
+ _$_.output_push('<div');
134
+ _$_.output_push(' class="name"');
135
+ _$_.output_push('>');
147
136
 
148
- {
149
- _$_.output_push(_$_.escape(fullName()));
150
- }
137
+ {
138
+ _$_.output_push(_$_.escape(fullName()));
139
+ }
151
140
 
152
- _$_.output_push('</div>');
141
+ _$_.output_push('</div>');
142
+ });
153
143
  });
154
-
155
- _$_.pop_component();
156
144
  }