ripple 0.3.11 → 0.3.13

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 (190) hide show
  1. package/CHANGELOG.md +43 -0
  2. package/package.json +8 -2
  3. package/src/compiler/phases/1-parse/index.js +73 -30
  4. package/src/compiler/phases/2-analyze/index.js +28 -58
  5. package/src/compiler/phases/3-transform/client/index.js +127 -164
  6. package/src/compiler/phases/3-transform/segments.js +4 -8
  7. package/src/compiler/phases/3-transform/server/index.js +210 -360
  8. package/src/compiler/types/import.d.ts +0 -12
  9. package/src/compiler/types/index.d.ts +12 -5
  10. package/src/compiler/types/parse.d.ts +2 -0
  11. package/src/compiler/utils.js +39 -44
  12. package/src/helpers.d.ts +2 -0
  13. package/src/runtime/index-client.js +15 -13
  14. package/src/runtime/index-server.js +18 -11
  15. package/src/runtime/internal/client/blocks.js +19 -23
  16. package/src/runtime/internal/client/constants.js +20 -9
  17. package/src/runtime/internal/client/index.js +14 -4
  18. package/src/runtime/internal/client/runtime.js +435 -173
  19. package/src/runtime/internal/client/try.js +334 -156
  20. package/src/runtime/internal/client/types.d.ts +26 -0
  21. package/src/runtime/internal/server/blocks.js +183 -0
  22. package/src/runtime/internal/server/constants.js +7 -0
  23. package/src/runtime/internal/server/index.js +780 -148
  24. package/src/runtime/internal/server/types.d.ts +35 -0
  25. package/src/server/index.js +1 -1
  26. package/src/utils/async.js +35 -0
  27. package/src/utils/builders.js +3 -1
  28. package/tests/client/__snapshots__/computed-properties.test.rsrx.snap +49 -0
  29. package/tests/client/__snapshots__/for.test.rsrx.snap +319 -0
  30. package/tests/client/__snapshots__/html.test.rsrx.snap +40 -0
  31. package/tests/client/_etc.test.rsrx +7 -0
  32. package/tests/client/array/{array.static.test.ripple → array.static.test.rsrx} +18 -20
  33. package/tests/client/async-suspend.test.rsrx +662 -0
  34. package/tests/client/basic/__snapshots__/basic.attributes.test.rsrx.snap +60 -0
  35. package/tests/client/basic/__snapshots__/basic.rendering.test.rsrx.snap +59 -0
  36. package/tests/client/basic/{basic.errors.test.ripple → basic.errors.test.rsrx} +2 -2
  37. package/tests/client/compiler/__snapshots__/compiler.assignments.test.rsrx.snap +12 -0
  38. package/tests/client/compiler/__snapshots__/compiler.typescript.test.rsrx.snap +46 -0
  39. package/tests/client/compiler/{compiler.try-in-function.test.ripple → compiler.try-in-function.test.rsrx} +8 -6
  40. package/tests/client/composite/__snapshots__/composite.render.test.rsrx.snap +37 -0
  41. package/tests/client/{function-overload.test.ripple → function-overload.test.rsrx} +1 -1
  42. package/tests/client/try.test.rsrx +1702 -0
  43. package/tests/hydration/build-components.js +5 -3
  44. package/tests/hydration/compiled/client/head.js +11 -11
  45. package/tests/hydration/compiled/client/mixed-control-flow.js +55 -70
  46. package/tests/hydration/compiled/client/nested-control-flow.js +72 -88
  47. package/tests/hydration/compiled/client/try.js +42 -54
  48. package/tests/hydration/compiled/server/basic.js +491 -369
  49. package/tests/hydration/compiled/server/composite.js +153 -128
  50. package/tests/hydration/compiled/server/events.js +166 -145
  51. package/tests/hydration/compiled/server/for.js +821 -677
  52. package/tests/hydration/compiled/server/head.js +200 -165
  53. package/tests/hydration/compiled/server/hmr.js +62 -54
  54. package/tests/hydration/compiled/server/html-in-template.js +64 -55
  55. package/tests/hydration/compiled/server/html.js +1477 -1360
  56. package/tests/hydration/compiled/server/if-children.js +448 -408
  57. package/tests/hydration/compiled/server/if.js +204 -171
  58. package/tests/hydration/compiled/server/mixed-control-flow.js +237 -195
  59. package/tests/hydration/compiled/server/nested-control-flow.js +533 -467
  60. package/tests/hydration/compiled/server/portal.js +94 -107
  61. package/tests/hydration/compiled/server/reactivity.js +87 -64
  62. package/tests/hydration/compiled/server/return.js +1424 -1174
  63. package/tests/hydration/compiled/server/switch.js +268 -238
  64. package/tests/hydration/compiled/server/try.js +98 -87
  65. package/tests/hydration/components/{mixed-control-flow.ripple → mixed-control-flow.rsrx} +2 -2
  66. package/tests/hydration/components/{try.ripple → try.rsrx} +4 -2
  67. package/tests/hydration/mixed-control-flow.test.js +14 -0
  68. package/tests/hydration/nested-control-flow.test.js +50 -48
  69. package/tests/hydration/try.test.js +25 -0
  70. package/tests/server/__snapshots__/compiler.test.ripple.snap +0 -32
  71. package/tests/server/__snapshots__/compiler.test.rsrx.snap +95 -0
  72. package/tests/server/{compiler.test.ripple → compiler.test.rsrx} +0 -17
  73. package/tests/server/{html-nesting-validation.test.ripple → html-nesting-validation.test.rsrx} +3 -3
  74. package/tests/server/streaming-ssr.test.rsrx +115 -0
  75. package/tests/server/try.test.rsrx +503 -0
  76. package/tests/utils/compiler-compat-config.test.js +3 -3
  77. package/tests/utils/vite-plugin-config.test.js +1 -1
  78. package/tests/utils/vite-plugin-hmr.test.js +5 -5
  79. package/tsconfig.json +4 -0
  80. package/types/index.d.ts +13 -23
  81. package/types/server.d.ts +43 -16
  82. package/tests/client/_etc.test.ripple +0 -5
  83. package/tests/client/async-suspend.test.ripple +0 -94
  84. package/tests/client/try.test.ripple +0 -196
  85. package/tests/server/streaming-ssr.test.ripple +0 -68
  86. package/tests/server/try.test.ripple +0 -82
  87. /package/tests/client/array/{array.copy-within.test.ripple → array.copy-within.test.rsrx} +0 -0
  88. /package/tests/client/array/{array.derived.test.ripple → array.derived.test.rsrx} +0 -0
  89. /package/tests/client/array/{array.iteration.test.ripple → array.iteration.test.rsrx} +0 -0
  90. /package/tests/client/array/{array.mutations.test.ripple → array.mutations.test.rsrx} +0 -0
  91. /package/tests/client/array/{array.to-methods.test.ripple → array.to-methods.test.rsrx} +0 -0
  92. /package/tests/client/basic/{basic.attributes.test.ripple → basic.attributes.test.rsrx} +0 -0
  93. /package/tests/client/basic/{basic.collections.test.ripple → basic.collections.test.rsrx} +0 -0
  94. /package/tests/client/basic/{basic.components.test.ripple → basic.components.test.rsrx} +0 -0
  95. /package/tests/client/basic/{basic.events.test.ripple → basic.events.test.rsrx} +0 -0
  96. /package/tests/client/basic/{basic.get-set.test.ripple → basic.get-set.test.rsrx} +0 -0
  97. /package/tests/client/basic/{basic.hmr.test.ripple → basic.hmr.test.rsrx} +0 -0
  98. /package/tests/client/basic/{basic.reactivity.test.ripple → basic.reactivity.test.rsrx} +0 -0
  99. /package/tests/client/basic/{basic.rendering.test.ripple → basic.rendering.test.rsrx} +0 -0
  100. /package/tests/client/basic/{basic.styling.test.ripple → basic.styling.test.rsrx} +0 -0
  101. /package/tests/client/basic/{basic.utilities.test.ripple → basic.utilities.test.rsrx} +0 -0
  102. /package/tests/client/{boundaries.test.ripple → boundaries.test.rsrx} +0 -0
  103. /package/tests/client/compiler/{compiler.assignments.test.ripple → compiler.assignments.test.rsrx} +0 -0
  104. /package/tests/client/compiler/{compiler.attributes.test.ripple → compiler.attributes.test.rsrx} +0 -0
  105. /package/tests/client/compiler/{compiler.basic.test.ripple → compiler.basic.test.rsrx} +0 -0
  106. /package/tests/client/compiler/{compiler.regex.test.ripple → compiler.regex.test.rsrx} +0 -0
  107. /package/tests/client/compiler/{compiler.tracked-access.test.ripple → compiler.tracked-access.test.rsrx} +0 -0
  108. /package/tests/client/compiler/{compiler.typescript.test.ripple → compiler.typescript.test.rsrx} +0 -0
  109. /package/tests/client/composite/{composite.dynamic-components.test.ripple → composite.dynamic-components.test.rsrx} +0 -0
  110. /package/tests/client/composite/{composite.generics.test.ripple → composite.generics.test.rsrx} +0 -0
  111. /package/tests/client/composite/{composite.props.test.ripple → composite.props.test.rsrx} +0 -0
  112. /package/tests/client/composite/{composite.reactivity.test.ripple → composite.reactivity.test.rsrx} +0 -0
  113. /package/tests/client/composite/{composite.render.test.ripple → composite.render.test.rsrx} +0 -0
  114. /package/tests/client/{computed-properties.test.ripple → computed-properties.test.rsrx} +0 -0
  115. /package/tests/client/{context.test.ripple → context.test.rsrx} +0 -0
  116. /package/tests/client/css/{global-additional-cases.test.ripple → global-additional-cases.test.rsrx} +0 -0
  117. /package/tests/client/css/{global-advanced-selectors.test.ripple → global-advanced-selectors.test.rsrx} +0 -0
  118. /package/tests/client/css/{global-at-rules.test.ripple → global-at-rules.test.rsrx} +0 -0
  119. /package/tests/client/css/{global-basic.test.ripple → global-basic.test.rsrx} +0 -0
  120. /package/tests/client/css/{global-classes-ids.test.ripple → global-classes-ids.test.rsrx} +0 -0
  121. /package/tests/client/css/{global-combinators.test.ripple → global-combinators.test.rsrx} +0 -0
  122. /package/tests/client/css/{global-complex-nesting.test.ripple → global-complex-nesting.test.rsrx} +0 -0
  123. /package/tests/client/css/{global-edge-cases.test.ripple → global-edge-cases.test.rsrx} +0 -0
  124. /package/tests/client/css/{global-keyframes.test.ripple → global-keyframes.test.rsrx} +0 -0
  125. /package/tests/client/css/{global-nested.test.ripple → global-nested.test.rsrx} +0 -0
  126. /package/tests/client/css/{global-pseudo.test.ripple → global-pseudo.test.rsrx} +0 -0
  127. /package/tests/client/css/{global-scoping.test.ripple → global-scoping.test.rsrx} +0 -0
  128. /package/tests/client/css/{style-identifier.test.ripple → style-identifier.test.rsrx} +0 -0
  129. /package/tests/client/{date.test.ripple → date.test.rsrx} +0 -0
  130. /package/tests/client/{dynamic-elements.test.ripple → dynamic-elements.test.rsrx} +0 -0
  131. /package/tests/client/{events.test.ripple → events.test.rsrx} +0 -0
  132. /package/tests/client/{for.test.ripple → for.test.rsrx} +0 -0
  133. /package/tests/client/{function-overload-import.ripple → function-overload-import.rsrx} +0 -0
  134. /package/tests/client/{head.test.ripple → head.test.rsrx} +0 -0
  135. /package/tests/client/{html.test.ripple → html.test.rsrx} +0 -0
  136. /package/tests/client/{input-value.test.ripple → input-value.test.rsrx} +0 -0
  137. /package/tests/client/{lazy-destructuring.test.ripple → lazy-destructuring.test.rsrx} +0 -0
  138. /package/tests/client/{map.test.ripple → map.test.rsrx} +0 -0
  139. /package/tests/client/{media-query.test.ripple → media-query.test.rsrx} +0 -0
  140. /package/tests/client/{object.test.ripple → object.test.rsrx} +0 -0
  141. /package/tests/client/{portal.test.ripple → portal.test.rsrx} +0 -0
  142. /package/tests/client/{ref.test.ripple → ref.test.rsrx} +0 -0
  143. /package/tests/client/{return.test.ripple → return.test.rsrx} +0 -0
  144. /package/tests/client/{set.test.ripple → set.test.rsrx} +0 -0
  145. /package/tests/client/{svg.test.ripple → svg.test.rsrx} +0 -0
  146. /package/tests/client/{switch.test.ripple → switch.test.rsrx} +0 -0
  147. /package/tests/client/{tsx.test.ripple → tsx.test.rsrx} +0 -0
  148. /package/tests/client/{typescript-generics.test.ripple → typescript-generics.test.rsrx} +0 -0
  149. /package/tests/client/url/{url.derived.test.ripple → url.derived.test.rsrx} +0 -0
  150. /package/tests/client/url/{url.parsing.test.ripple → url.parsing.test.rsrx} +0 -0
  151. /package/tests/client/url/{url.partial-removal.test.ripple → url.partial-removal.test.rsrx} +0 -0
  152. /package/tests/client/url/{url.reactivity.test.ripple → url.reactivity.test.rsrx} +0 -0
  153. /package/tests/client/url/{url.serialization.test.ripple → url.serialization.test.rsrx} +0 -0
  154. /package/tests/client/url-search-params/{url-search-params.derived.test.ripple → url-search-params.derived.test.rsrx} +0 -0
  155. /package/tests/client/url-search-params/{url-search-params.initialization.test.ripple → url-search-params.initialization.test.rsrx} +0 -0
  156. /package/tests/client/url-search-params/{url-search-params.iteration.test.ripple → url-search-params.iteration.test.rsrx} +0 -0
  157. /package/tests/client/url-search-params/{url-search-params.mutation.test.ripple → url-search-params.mutation.test.rsrx} +0 -0
  158. /package/tests/client/url-search-params/{url-search-params.retrieval.test.ripple → url-search-params.retrieval.test.rsrx} +0 -0
  159. /package/tests/client/url-search-params/{url-search-params.serialization.test.ripple → url-search-params.serialization.test.rsrx} +0 -0
  160. /package/tests/client/url-search-params/{url-search-params.tracked-url.test.ripple → url-search-params.tracked-url.test.rsrx} +0 -0
  161. /package/tests/hydration/components/{basic.ripple → basic.rsrx} +0 -0
  162. /package/tests/hydration/components/{composite.ripple → composite.rsrx} +0 -0
  163. /package/tests/hydration/components/{events.ripple → events.rsrx} +0 -0
  164. /package/tests/hydration/components/{for.ripple → for.rsrx} +0 -0
  165. /package/tests/hydration/components/{head.ripple → head.rsrx} +0 -0
  166. /package/tests/hydration/components/{hmr.ripple → hmr.rsrx} +0 -0
  167. /package/tests/hydration/components/{html-in-template.ripple → html-in-template.rsrx} +0 -0
  168. /package/tests/hydration/components/{html.ripple → html.rsrx} +0 -0
  169. /package/tests/hydration/components/{if-children.ripple → if-children.rsrx} +0 -0
  170. /package/tests/hydration/components/{if.ripple → if.rsrx} +0 -0
  171. /package/tests/hydration/components/{nested-control-flow.ripple → nested-control-flow.rsrx} +0 -0
  172. /package/tests/hydration/components/{portal.ripple → portal.rsrx} +0 -0
  173. /package/tests/hydration/components/{reactivity.ripple → reactivity.rsrx} +0 -0
  174. /package/tests/hydration/components/{return.ripple → return.rsrx} +0 -0
  175. /package/tests/hydration/components/{switch.ripple → switch.rsrx} +0 -0
  176. /package/tests/server/{await.test.ripple → await.test.rsrx} +0 -0
  177. /package/tests/server/{basic.attributes.test.ripple → basic.attributes.test.rsrx} +0 -0
  178. /package/tests/server/{basic.components.test.ripple → basic.components.test.rsrx} +0 -0
  179. /package/tests/server/{basic.test.ripple → basic.test.rsrx} +0 -0
  180. /package/tests/server/{composite.props.test.ripple → composite.props.test.rsrx} +0 -0
  181. /package/tests/server/{composite.test.ripple → composite.test.rsrx} +0 -0
  182. /package/tests/server/{context.test.ripple → context.test.rsrx} +0 -0
  183. /package/tests/server/{dynamic-elements.test.ripple → dynamic-elements.test.rsrx} +0 -0
  184. /package/tests/server/{for.test.ripple → for.test.rsrx} +0 -0
  185. /package/tests/server/{head.test.ripple → head.test.rsrx} +0 -0
  186. /package/tests/server/{if.test.ripple → if.test.rsrx} +0 -0
  187. /package/tests/server/{lazy-destructuring.test.ripple → lazy-destructuring.test.rsrx} +0 -0
  188. /package/tests/server/{return.test.ripple → return.test.rsrx} +0 -0
  189. /package/tests/server/{style-identifier.test.ripple → style-identifier.test.rsrx} +0 -0
  190. /package/tests/server/{switch.test.ripple → switch.test.rsrx} +0 -0
@@ -3,295 +3,328 @@ import * as _$_ from 'ripple/internal/server';
3
3
 
4
4
  import { track } from 'ripple/server';
5
5
 
6
- export function IfTruthy(__output) {
6
+ export function IfTruthy() {
7
7
  _$_.push_component();
8
8
 
9
9
  const show = true;
10
10
 
11
- __output.push('<!--[-->');
11
+ _$_.regular_block(() => {
12
+ _$_.output_push('<!--[-->');
12
13
 
13
- if (show) {
14
- __output.push('<div');
15
- __output.push(' class="shown"');
16
- __output.push('>');
14
+ if (show) {
15
+ _$_.output_push('<div');
16
+ _$_.output_push(' class="shown"');
17
+ _$_.output_push('>');
17
18
 
18
- {
19
- __output.push('Visible');
19
+ {
20
+ _$_.output_push('Visible');
21
+ }
22
+
23
+ _$_.output_push('</div>');
20
24
  }
21
25
 
22
- __output.push('</div>');
23
- }
26
+ _$_.output_push('<!--]-->');
27
+ });
24
28
 
25
- __output.push('<!--]-->');
26
29
  _$_.pop_component();
27
30
  }
28
31
 
29
- export function IfFalsy(__output) {
32
+ export function IfFalsy() {
30
33
  _$_.push_component();
31
34
 
32
35
  const show = false;
33
36
 
34
- __output.push('<!--[-->');
37
+ _$_.regular_block(() => {
38
+ _$_.output_push('<!--[-->');
35
39
 
36
- if (show) {
37
- __output.push('<div');
38
- __output.push(' class="shown"');
39
- __output.push('>');
40
+ if (show) {
41
+ _$_.output_push('<div');
42
+ _$_.output_push(' class="shown"');
43
+ _$_.output_push('>');
40
44
 
41
- {
42
- __output.push('Visible');
45
+ {
46
+ _$_.output_push('Visible');
47
+ }
48
+
49
+ _$_.output_push('</div>');
43
50
  }
44
51
 
45
- __output.push('</div>');
46
- }
52
+ _$_.output_push('<!--]-->');
53
+ });
47
54
 
48
- __output.push('<!--]-->');
49
55
  _$_.pop_component();
50
56
  }
51
57
 
52
- export function IfElse(__output) {
58
+ export function IfElse() {
53
59
  _$_.push_component();
54
60
 
55
61
  const isLoggedIn = true;
56
62
 
57
- __output.push('<!--[-->');
63
+ _$_.regular_block(() => {
64
+ _$_.output_push('<!--[-->');
58
65
 
59
- if (isLoggedIn) {
60
- __output.push('<div');
61
- __output.push(' class="logged-in"');
62
- __output.push('>');
66
+ if (isLoggedIn) {
67
+ _$_.output_push('<div');
68
+ _$_.output_push(' class="logged-in"');
69
+ _$_.output_push('>');
63
70
 
64
- {
65
- __output.push('Welcome back!');
66
- }
71
+ {
72
+ _$_.output_push('Welcome back!');
73
+ }
67
74
 
68
- __output.push('</div>');
69
- } else {
70
- __output.push('<div');
71
- __output.push(' class="logged-out"');
72
- __output.push('>');
75
+ _$_.output_push('</div>');
76
+ } else {
77
+ _$_.output_push('<div');
78
+ _$_.output_push(' class="logged-out"');
79
+ _$_.output_push('>');
73
80
 
74
- {
75
- __output.push('Please log in');
81
+ {
82
+ _$_.output_push('Please log in');
83
+ }
84
+
85
+ _$_.output_push('</div>');
76
86
  }
77
87
 
78
- __output.push('</div>');
79
- }
88
+ _$_.output_push('<!--]-->');
89
+ });
80
90
 
81
- __output.push('<!--]-->');
82
91
  _$_.pop_component();
83
92
  }
84
93
 
85
- export function ReactiveIf(__output) {
94
+ export function ReactiveIf() {
86
95
  _$_.push_component();
87
96
 
88
97
  let lazy = _$_.track(true);
89
98
 
90
- __output.push('<button');
91
- __output.push(' class="toggle"');
92
- __output.push('>');
99
+ _$_.regular_block(() => {
100
+ _$_.output_push('<button');
101
+ _$_.output_push(' class="toggle"');
102
+ _$_.output_push('>');
93
103
 
94
- {
95
- __output.push('Toggle');
96
- }
104
+ {
105
+ _$_.output_push('Toggle');
106
+ }
97
107
 
98
- __output.push('</button>');
99
- __output.push('<!--[-->');
108
+ _$_.output_push('</button>');
109
+ });
100
110
 
101
- if (_$_.get(lazy)) {
102
- __output.push('<div');
103
- __output.push(' class="content"');
104
- __output.push('>');
111
+ _$_.regular_block(() => {
112
+ _$_.output_push('<!--[-->');
105
113
 
106
- {
107
- __output.push('Content visible');
114
+ if (_$_.get(lazy)) {
115
+ _$_.output_push('<div');
116
+ _$_.output_push(' class="content"');
117
+ _$_.output_push('>');
118
+
119
+ {
120
+ _$_.output_push('Content visible');
121
+ }
122
+
123
+ _$_.output_push('</div>');
108
124
  }
109
125
 
110
- __output.push('</div>');
111
- }
126
+ _$_.output_push('<!--]-->');
127
+ });
112
128
 
113
- __output.push('<!--]-->');
114
129
  _$_.pop_component();
115
130
  }
116
131
 
117
- export function ReactiveIfElse(__output) {
132
+ export function ReactiveIfElse() {
118
133
  _$_.push_component();
119
134
 
120
135
  let lazy_1 = _$_.track(false);
121
136
 
122
- __output.push('<button');
123
- __output.push(' class="toggle"');
124
- __output.push('>');
137
+ _$_.regular_block(() => {
138
+ _$_.output_push('<button');
139
+ _$_.output_push(' class="toggle"');
140
+ _$_.output_push('>');
125
141
 
126
- {
127
- __output.push('Toggle');
128
- }
142
+ {
143
+ _$_.output_push('Toggle');
144
+ }
129
145
 
130
- __output.push('</button>');
131
- __output.push('<!--[-->');
146
+ _$_.output_push('</button>');
147
+ });
132
148
 
133
- if (_$_.get(lazy_1)) {
134
- __output.push('<div');
135
- __output.push(' class="on"');
136
- __output.push('>');
149
+ _$_.regular_block(() => {
150
+ _$_.output_push('<!--[-->');
137
151
 
138
- {
139
- __output.push('ON');
140
- }
152
+ if (_$_.get(lazy_1)) {
153
+ _$_.output_push('<div');
154
+ _$_.output_push(' class="on"');
155
+ _$_.output_push('>');
141
156
 
142
- __output.push('</div>');
143
- } else {
144
- __output.push('<div');
145
- __output.push(' class="off"');
146
- __output.push('>');
157
+ {
158
+ _$_.output_push('ON');
159
+ }
147
160
 
148
- {
149
- __output.push('OFF');
161
+ _$_.output_push('</div>');
162
+ } else {
163
+ _$_.output_push('<div');
164
+ _$_.output_push(' class="off"');
165
+ _$_.output_push('>');
166
+
167
+ {
168
+ _$_.output_push('OFF');
169
+ }
170
+
171
+ _$_.output_push('</div>');
150
172
  }
151
173
 
152
- __output.push('</div>');
153
- }
174
+ _$_.output_push('<!--]-->');
175
+ });
154
176
 
155
- __output.push('<!--]-->');
156
177
  _$_.pop_component();
157
178
  }
158
179
 
159
- export function NestedIf(__output) {
180
+ export function NestedIf() {
160
181
  _$_.push_component();
161
182
 
162
183
  let lazy_2 = _$_.track(true);
163
184
  let lazy_3 = _$_.track(true);
164
185
 
165
- __output.push('<button');
166
- __output.push(' class="outer-toggle"');
167
- __output.push('>');
186
+ _$_.regular_block(() => {
187
+ _$_.output_push('<button');
188
+ _$_.output_push(' class="outer-toggle"');
189
+ _$_.output_push('>');
190
+
191
+ {
192
+ _$_.output_push('Outer');
193
+ }
194
+
195
+ _$_.output_push('</button>');
196
+ });
168
197
 
169
- {
170
- __output.push('Outer');
171
- }
198
+ _$_.regular_block(() => {
199
+ _$_.output_push('<button');
200
+ _$_.output_push(' class="inner-toggle"');
201
+ _$_.output_push('>');
172
202
 
173
- __output.push('</button>');
174
- __output.push('<button');
175
- __output.push(' class="inner-toggle"');
176
- __output.push('>');
203
+ {
204
+ _$_.output_push('Inner');
205
+ }
177
206
 
178
- {
179
- __output.push('Inner');
180
- }
207
+ _$_.output_push('</button>');
208
+ });
181
209
 
182
- __output.push('</button>');
183
- __output.push('<!--[-->');
210
+ _$_.regular_block(() => {
211
+ _$_.output_push('<!--[-->');
184
212
 
185
- if (_$_.get(lazy_2)) {
186
- __output.push('<div');
187
- __output.push(' class="outer-content"');
188
- __output.push('>');
213
+ if (_$_.get(lazy_2)) {
214
+ _$_.output_push('<div');
215
+ _$_.output_push(' class="outer-content"');
216
+ _$_.output_push('>');
189
217
 
190
- {
191
- __output.push('Outer');
192
- __output.push('<!--[-->');
218
+ {
219
+ _$_.output_push('Outer');
220
+ _$_.output_push('<!--[-->');
193
221
 
194
- if (_$_.get(lazy_3)) {
195
- __output.push('<span');
196
- __output.push(' class="inner-content"');
197
- __output.push('>');
222
+ if (_$_.get(lazy_3)) {
223
+ _$_.output_push('<span');
224
+ _$_.output_push(' class="inner-content"');
225
+ _$_.output_push('>');
198
226
 
199
- {
200
- __output.push('Inner');
227
+ {
228
+ _$_.output_push('Inner');
229
+ }
230
+
231
+ _$_.output_push('</span>');
201
232
  }
202
233
 
203
- __output.push('</span>');
234
+ _$_.output_push('<!--]-->');
204
235
  }
205
236
 
206
- __output.push('<!--]-->');
237
+ _$_.output_push('</div>');
207
238
  }
208
239
 
209
- __output.push('</div>');
210
- }
240
+ _$_.output_push('<!--]-->');
241
+ });
211
242
 
212
- __output.push('<!--]-->');
213
243
  _$_.pop_component();
214
244
  }
215
245
 
216
- export function IfElseIfChain(__output) {
246
+ export function IfElseIfChain() {
217
247
  _$_.push_component();
218
248
 
219
249
  let lazy_4 = _$_.track('loading');
220
250
 
221
- __output.push('<div');
222
- __output.push('>');
223
-
224
- {
225
- __output.push('<button');
226
- __output.push(' class="success"');
227
- __output.push('>');
228
-
229
- {
230
- __output.push('Success');
231
- }
232
-
233
- __output.push('</button>');
234
- __output.push('<button');
235
- __output.push(' class="error"');
236
- __output.push('>');
251
+ _$_.regular_block(() => {
252
+ _$_.output_push('<div');
253
+ _$_.output_push('>');
237
254
 
238
255
  {
239
- __output.push('Error');
240
- }
256
+ _$_.output_push('<button');
257
+ _$_.output_push(' class="success"');
258
+ _$_.output_push('>');
241
259
 
242
- __output.push('</button>');
243
- __output.push('<button');
244
- __output.push(' class="loading"');
245
- __output.push('>');
260
+ {
261
+ _$_.output_push('Success');
262
+ }
246
263
 
247
- {
248
- __output.push('Loading');
249
- }
264
+ _$_.output_push('</button>');
265
+ _$_.output_push('<button');
266
+ _$_.output_push(' class="error"');
267
+ _$_.output_push('>');
250
268
 
251
- __output.push('</button>');
252
- __output.push('<!--[-->');
269
+ {
270
+ _$_.output_push('Error');
271
+ }
253
272
 
254
- if (_$_.get(lazy_4) === 'loading') {
255
- __output.push('<div');
256
- __output.push(' class="state"');
257
- __output.push('>');
273
+ _$_.output_push('</button>');
274
+ _$_.output_push('<button');
275
+ _$_.output_push(' class="loading"');
276
+ _$_.output_push('>');
258
277
 
259
278
  {
260
- __output.push('Loading...');
279
+ _$_.output_push('Loading');
261
280
  }
262
281
 
263
- __output.push('</div>');
264
- } else {
265
- __output.push('<!--[-->');
282
+ _$_.output_push('</button>');
283
+ _$_.output_push('<!--[-->');
266
284
 
267
- if (_$_.get(lazy_4) === 'success') {
268
- __output.push('<div');
269
- __output.push(' class="state"');
270
- __output.push('>');
285
+ if (_$_.get(lazy_4) === 'loading') {
286
+ _$_.output_push('<div');
287
+ _$_.output_push(' class="state"');
288
+ _$_.output_push('>');
271
289
 
272
290
  {
273
- __output.push('Success!');
291
+ _$_.output_push('Loading...');
274
292
  }
275
293
 
276
- __output.push('</div>');
294
+ _$_.output_push('</div>');
277
295
  } else {
278
- __output.push('<div');
279
- __output.push(' class="state"');
280
- __output.push('>');
296
+ _$_.output_push('<!--[-->');
281
297
 
282
- {
283
- __output.push('Error occurred');
298
+ if (_$_.get(lazy_4) === 'success') {
299
+ _$_.output_push('<div');
300
+ _$_.output_push(' class="state"');
301
+ _$_.output_push('>');
302
+
303
+ {
304
+ _$_.output_push('Success!');
305
+ }
306
+
307
+ _$_.output_push('</div>');
308
+ } else {
309
+ _$_.output_push('<div');
310
+ _$_.output_push(' class="state"');
311
+ _$_.output_push('>');
312
+
313
+ {
314
+ _$_.output_push('Error occurred');
315
+ }
316
+
317
+ _$_.output_push('</div>');
284
318
  }
285
319
 
286
- __output.push('</div>');
320
+ _$_.output_push('<!--]-->');
287
321
  }
288
322
 
289
- __output.push('<!--]-->');
323
+ _$_.output_push('<!--]-->');
290
324
  }
291
325
 
292
- __output.push('<!--]-->');
293
- }
326
+ _$_.output_push('</div>');
327
+ });
294
328
 
295
- __output.push('</div>');
296
329
  _$_.pop_component();
297
330
  }