@builder.io/mitosis 0.4.0 → 0.4.2

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 (196) hide show
  1. package/dist/src/constants/media-sizes.js +4 -5
  2. package/dist/src/generators/alpine/generate.js +114 -132
  3. package/dist/src/generators/alpine/render-mount-hook.js +8 -5
  4. package/dist/src/generators/alpine/render-update-hooks.js +13 -13
  5. package/dist/src/generators/angular/helpers.js +19 -9
  6. package/dist/src/generators/angular/index.js +599 -584
  7. package/dist/src/generators/builder.js +200 -165
  8. package/dist/src/generators/context/angular.js +32 -26
  9. package/dist/src/generators/context/helpers/context-with-symbol-key.js +25 -21
  10. package/dist/src/generators/context/qwik.js +21 -21
  11. package/dist/src/generators/context/react.js +22 -22
  12. package/dist/src/generators/context/rsc.js +20 -22
  13. package/dist/src/generators/context/solid.js +22 -22
  14. package/dist/src/generators/context/svelte.js +33 -28
  15. package/dist/src/generators/context/vue.js +1 -1
  16. package/dist/src/generators/helpers/context.js +6 -13
  17. package/dist/src/generators/helpers/functions.js +8 -8
  18. package/dist/src/generators/helpers/on-mount.js +9 -5
  19. package/dist/src/generators/helpers/rsc.js +7 -9
  20. package/dist/src/generators/html.js +995 -534
  21. package/dist/src/generators/liquid.js +81 -79
  22. package/dist/src/generators/lit/collect-class-string.js +10 -12
  23. package/dist/src/generators/lit/generate.js +204 -159
  24. package/dist/src/generators/marko/generate.js +193 -183
  25. package/dist/src/generators/minify.js +5 -9
  26. package/dist/src/generators/mitosis.js +135 -134
  27. package/dist/src/generators/qwik/component-generator.js +159 -154
  28. package/dist/src/generators/qwik/component.js +51 -81
  29. package/dist/src/generators/qwik/directives.js +68 -84
  30. package/dist/src/generators/qwik/helpers/add-prevent-default.js +6 -7
  31. package/dist/src/generators/qwik/helpers/convert-method-to-function.js +38 -38
  32. package/dist/src/generators/qwik/helpers/handlers.js +16 -25
  33. package/dist/src/generators/qwik/helpers/stable-inject.js +7 -8
  34. package/dist/src/generators/qwik/helpers/stable-serialize.js +7 -8
  35. package/dist/src/generators/qwik/helpers/state.js +36 -43
  36. package/dist/src/generators/qwik/helpers/styles.js +19 -40
  37. package/dist/src/generators/qwik/jsx.js +63 -75
  38. package/dist/src/generators/qwik/src-generator.js +134 -167
  39. package/dist/src/generators/react/blocks.js +122 -127
  40. package/dist/src/generators/react/generator.js +314 -259
  41. package/dist/src/generators/react/helpers.js +23 -28
  42. package/dist/src/generators/react/state.js +34 -51
  43. package/dist/src/generators/react-native/index.js +72 -84
  44. package/dist/src/generators/react-native/sanitize-react-native-block-styles.js +14 -26
  45. package/dist/src/generators/rsc.js +30 -36
  46. package/dist/src/generators/solid/blocks.js +46 -43
  47. package/dist/src/generators/solid/helpers/styles.js +11 -11
  48. package/dist/src/generators/solid/index.js +199 -190
  49. package/dist/src/generators/solid/state/helpers.js +76 -90
  50. package/dist/src/generators/solid/state/signals.js +30 -37
  51. package/dist/src/generators/solid/state/state.js +35 -48
  52. package/dist/src/generators/solid/state/store.js +40 -46
  53. package/dist/src/generators/stencil/collect-class-string.js +10 -12
  54. package/dist/src/generators/stencil/generate.js +158 -145
  55. package/dist/src/generators/svelte/blocks.js +146 -144
  56. package/dist/src/generators/svelte/helpers.js +10 -17
  57. package/dist/src/generators/svelte/svelte.js +321 -287
  58. package/dist/src/generators/swift-ui.js +162 -101
  59. package/dist/src/generators/taro.js +32 -36
  60. package/dist/src/generators/template.js +71 -74
  61. package/dist/src/generators/vue/blocks.js +116 -107
  62. package/dist/src/generators/vue/compositionApi.js +67 -50
  63. package/dist/src/generators/vue/helpers.js +71 -96
  64. package/dist/src/generators/vue/optionsApi.js +134 -105
  65. package/dist/src/generators/vue/vue.js +210 -207
  66. package/dist/src/helpers/babel-transform.js +40 -63
  67. package/dist/src/helpers/bindings.js +4 -12
  68. package/dist/src/helpers/camel-case.js +4 -5
  69. package/dist/src/helpers/capitalize.js +1 -1
  70. package/dist/src/helpers/component-file-extensions.js +23 -35
  71. package/dist/src/helpers/create-mitosis-component.js +22 -26
  72. package/dist/src/helpers/create-mitosis-context.js +5 -12
  73. package/dist/src/helpers/create-mitosis-node.js +10 -12
  74. package/dist/src/helpers/dash-case.js +2 -2
  75. package/dist/src/helpers/dedent.js +18 -22
  76. package/dist/src/helpers/event-handlers.js +1 -1
  77. package/dist/src/helpers/fast-clone.js +1 -1
  78. package/dist/src/helpers/filter-empty-text-nodes.js +2 -2
  79. package/dist/src/helpers/generic-format.js +7 -8
  80. package/dist/src/helpers/get-bindings.js +4 -4
  81. package/dist/src/helpers/get-components-used.js +3 -3
  82. package/dist/src/helpers/get-components.js +4 -4
  83. package/dist/src/helpers/get-custom-imports.js +10 -12
  84. package/dist/src/helpers/get-prop-functions.js +7 -8
  85. package/dist/src/helpers/get-props-ref.js +8 -8
  86. package/dist/src/helpers/get-props.js +12 -13
  87. package/dist/src/helpers/get-refs.js +4 -4
  88. package/dist/src/helpers/get-state-object-string.js +42 -61
  89. package/dist/src/helpers/get-state-used.js +7 -8
  90. package/dist/src/helpers/get-styles.js +6 -6
  91. package/dist/src/helpers/getters-to-functions.js +8 -12
  92. package/dist/src/helpers/handle-missing-state.js +3 -3
  93. package/dist/src/helpers/has-bindings-text.js +6 -6
  94. package/dist/src/helpers/has-component.js +4 -4
  95. package/dist/src/helpers/has-props.js +3 -3
  96. package/dist/src/helpers/has-stateful-dom.js +4 -4
  97. package/dist/src/helpers/has.js +3 -3
  98. package/dist/src/helpers/indent.js +2 -3
  99. package/dist/src/helpers/is-children.js +4 -5
  100. package/dist/src/helpers/is-component.js +1 -1
  101. package/dist/src/helpers/is-html-attribute.js +2 -11
  102. package/dist/src/helpers/is-mitosis-node.js +1 -1
  103. package/dist/src/helpers/is-root-text-node.js +1 -1
  104. package/dist/src/helpers/is-upper-case.js +1 -1
  105. package/dist/src/helpers/is-valid-attribute-name.js +1 -1
  106. package/dist/src/helpers/json.js +2 -2
  107. package/dist/src/helpers/map-refs.js +29 -40
  108. package/dist/src/helpers/merge-options.js +20 -31
  109. package/dist/src/helpers/mitosis-imports.js +5 -6
  110. package/dist/src/helpers/nodes/for.js +2 -3
  111. package/dist/src/helpers/nullable.js +1 -3
  112. package/dist/src/helpers/on-event.js +32 -36
  113. package/dist/src/helpers/output.js +4 -5
  114. package/dist/src/helpers/parse-node.js +13 -5
  115. package/dist/src/helpers/parsers.js +10 -14
  116. package/dist/src/helpers/patterns.js +6 -8
  117. package/dist/src/helpers/plugins/process-code/index.js +114 -120
  118. package/dist/src/helpers/plugins/process-signals.js +114 -125
  119. package/dist/src/helpers/plugins/process-target-blocks.js +18 -20
  120. package/dist/src/helpers/process-http-requests.js +8 -4
  121. package/dist/src/helpers/remove-surrounding-block.js +2 -2
  122. package/dist/src/helpers/render-imports.js +99 -111
  123. package/dist/src/helpers/replace-identifiers.js +40 -49
  124. package/dist/src/helpers/replace-new-lines-in-strings.js +3 -3
  125. package/dist/src/helpers/signals/signals.js +27 -35
  126. package/dist/src/helpers/slots.js +11 -20
  127. package/dist/src/helpers/state.js +1 -3
  128. package/dist/src/helpers/strip-meta-properties.js +6 -6
  129. package/dist/src/helpers/strip-state-and-props-refs.js +21 -32
  130. package/dist/src/helpers/styles/collect-css.js +39 -44
  131. package/dist/src/helpers/styles/collect-styled-components.js +30 -28
  132. package/dist/src/helpers/styles/helpers.js +23 -29
  133. package/dist/src/helpers/trace-reference-to-module-path.js +3 -4
  134. package/dist/src/helpers/transform-state-setters.js +16 -19
  135. package/dist/src/helpers/traverse-nodes.js +2 -2
  136. package/dist/src/helpers/try-prettier-format.js +3 -3
  137. package/dist/src/helpers/typescript-project.js +25 -25
  138. package/dist/src/helpers/typescript.js +1 -3
  139. package/dist/src/modules/plugins.js +20 -28
  140. package/dist/src/parsers/angular.js +49 -57
  141. package/dist/src/parsers/builder/builder.js +448 -343
  142. package/dist/src/parsers/builder/helpers.js +10 -10
  143. package/dist/src/parsers/context.js +15 -17
  144. package/dist/src/parsers/jsx/ast.js +11 -11
  145. package/dist/src/parsers/jsx/component-types.js +22 -32
  146. package/dist/src/parsers/jsx/context.js +12 -12
  147. package/dist/src/parsers/jsx/element-parser.js +43 -54
  148. package/dist/src/parsers/jsx/exports.js +12 -14
  149. package/dist/src/parsers/jsx/function-parser.js +108 -119
  150. package/dist/src/parsers/jsx/helpers.js +11 -13
  151. package/dist/src/parsers/jsx/hooks/helpers.js +14 -16
  152. package/dist/src/parsers/jsx/hooks/index.js +34 -44
  153. package/dist/src/parsers/jsx/hooks/use-target.js +27 -27
  154. package/dist/src/parsers/jsx/imports.js +7 -17
  155. package/dist/src/parsers/jsx/jsx.js +92 -91
  156. package/dist/src/parsers/jsx/props-types.js +8 -10
  157. package/dist/src/parsers/jsx/props.js +15 -23
  158. package/dist/src/parsers/jsx/signals.js +28 -29
  159. package/dist/src/parsers/jsx/state.d.ts +2 -4
  160. package/dist/src/parsers/jsx/state.js +59 -93
  161. package/dist/src/parsers/svelte/css/index.js +1 -1
  162. package/dist/src/parsers/svelte/helpers/bindings.js +18 -19
  163. package/dist/src/parsers/svelte/helpers/children.js +5 -6
  164. package/dist/src/parsers/svelte/helpers/expressions.js +7 -9
  165. package/dist/src/parsers/svelte/helpers/hooks.js +2 -2
  166. package/dist/src/parsers/svelte/helpers/post-process.js +49 -70
  167. package/dist/src/parsers/svelte/helpers/string.js +5 -5
  168. package/dist/src/parsers/svelte/html/actions.js +17 -10
  169. package/dist/src/parsers/svelte/html/each.js +11 -16
  170. package/dist/src/parsers/svelte/html/element.js +68 -78
  171. package/dist/src/parsers/svelte/html/fragment.js +3 -3
  172. package/dist/src/parsers/svelte/html/if-else.js +11 -18
  173. package/dist/src/parsers/svelte/html/index.js +14 -14
  174. package/dist/src/parsers/svelte/html/mustache-tag.js +5 -5
  175. package/dist/src/parsers/svelte/html/slot.js +5 -5
  176. package/dist/src/parsers/svelte/html/text.js +7 -14
  177. package/dist/src/parsers/svelte/index.js +23 -72
  178. package/dist/src/parsers/svelte/instance/context.js +17 -17
  179. package/dist/src/parsers/svelte/instance/expressions.js +2 -2
  180. package/dist/src/parsers/svelte/instance/functions.js +35 -30
  181. package/dist/src/parsers/svelte/instance/hooks.js +4 -5
  182. package/dist/src/parsers/svelte/instance/imports.js +11 -21
  183. package/dist/src/parsers/svelte/instance/index.js +22 -22
  184. package/dist/src/parsers/svelte/instance/properties.js +11 -23
  185. package/dist/src/parsers/svelte/instance/reactive.js +11 -11
  186. package/dist/src/parsers/svelte/instance/references.js +13 -13
  187. package/dist/src/parsers/svelte/instance/statements.js +3 -3
  188. package/dist/src/parsers/svelte/module/index.js +14 -26
  189. package/dist/src/parsers/svelte/typescript/index.js +27 -36
  190. package/dist/src/plugins/compile-away-builder-components.js +223 -156
  191. package/dist/src/plugins/compile-away-components.js +13 -21
  192. package/dist/src/plugins/map-styles.js +7 -7
  193. package/dist/src/symbols/symbol-processor.js +44 -62
  194. package/dist/src/targets.js +19 -19
  195. package/dist/src/types/mitosis-node.js +1 -1
  196. package/package.json +1 -1
@@ -1,19 +1,4 @@
1
1
  "use strict";
2
- var __makeTemplateObject = (this && this.__makeTemplateObject) || function (cooked, raw) {
3
- if (Object.defineProperty) { Object.defineProperty(cooked, "raw", { value: raw }); } else { cooked.raw = raw; }
4
- return cooked;
5
- };
6
- var __assign = (this && this.__assign) || function () {
7
- __assign = Object.assign || function(t) {
8
- for (var s, i = 1, n = arguments.length; i < n; i++) {
9
- s = arguments[i];
10
- for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
11
- t[p] = s[p];
12
- }
13
- return t;
14
- };
15
- return __assign.apply(this, arguments);
16
- };
17
2
  var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
18
3
  if (k2 === undefined) k2 = k;
19
4
  var desc = Object.getOwnPropertyDescriptor(m, k);
@@ -37,52 +22,43 @@ var __importStar = (this && this.__importStar) || function (mod) {
37
22
  __setModuleDefault(result, mod);
38
23
  return result;
39
24
  };
40
- var __spreadArray = (this && this.__spreadArray) || function (to, from, pack) {
41
- if (pack || arguments.length === 2) for (var i = 0, l = from.length, ar; i < l; i++) {
42
- if (ar || !(i in from)) {
43
- if (!ar) ar = Array.prototype.slice.call(from, 0, i);
44
- ar[i] = from[i];
45
- }
46
- }
47
- return to.concat(ar || Array.prototype.slice.call(from));
48
- };
49
25
  var __importDefault = (this && this.__importDefault) || function (mod) {
50
26
  return (mod && mod.__esModule) ? mod : { "default": mod };
51
27
  };
52
28
  Object.defineProperty(exports, "__esModule", { value: true });
53
29
  exports.componentToSolid = void 0;
54
- var bindings_1 = require("../../helpers/bindings");
55
- var create_mitosis_node_1 = require("../../helpers/create-mitosis-node");
56
- var dedent_1 = require("../../helpers/dedent");
57
- var fast_clone_1 = require("../../helpers/fast-clone");
58
- var filter_empty_text_nodes_1 = require("../../helpers/filter-empty-text-nodes");
59
- var get_components_used_1 = require("../../helpers/get-components-used");
60
- var get_refs_1 = require("../../helpers/get-refs");
61
- var get_state_object_string_1 = require("../../helpers/get-state-object-string");
62
- var is_mitosis_node_1 = require("../../helpers/is-mitosis-node");
63
- var is_root_text_node_1 = require("../../helpers/is-root-text-node");
64
- var merge_options_1 = require("../../helpers/merge-options");
65
- var nullable_1 = require("../../helpers/nullable");
66
- var on_event_1 = require("../../helpers/on-event");
67
- var process_code_1 = require("../../helpers/plugins/process-code");
68
- var render_imports_1 = require("../../helpers/render-imports");
69
- var strip_meta_properties_1 = require("../../helpers/strip-meta-properties");
70
- var collect_css_1 = require("../../helpers/styles/collect-css");
71
- var helpers_1 = require("../../helpers/styles/helpers");
72
- var Array_1 = require("fp-ts/lib/Array");
73
- var S = __importStar(require("fp-ts/string"));
74
- var hash_sum_1 = __importDefault(require("hash-sum"));
75
- var legacy_1 = __importDefault(require("neotraverse/legacy"));
76
- var standalone_1 = require("prettier/standalone");
77
- var plugins_1 = require("../../modules/plugins");
78
- var context_1 = require("../helpers/context");
79
- var blocks_1 = require("./blocks");
80
- var state_1 = require("./state");
81
- var helpers_2 = require("./state/helpers");
30
+ const bindings_1 = require("../../helpers/bindings");
31
+ const create_mitosis_node_1 = require("../../helpers/create-mitosis-node");
32
+ const dedent_1 = require("../../helpers/dedent");
33
+ const fast_clone_1 = require("../../helpers/fast-clone");
34
+ const filter_empty_text_nodes_1 = require("../../helpers/filter-empty-text-nodes");
35
+ const get_components_used_1 = require("../../helpers/get-components-used");
36
+ const get_refs_1 = require("../../helpers/get-refs");
37
+ const get_state_object_string_1 = require("../../helpers/get-state-object-string");
38
+ const is_mitosis_node_1 = require("../../helpers/is-mitosis-node");
39
+ const is_root_text_node_1 = require("../../helpers/is-root-text-node");
40
+ const merge_options_1 = require("../../helpers/merge-options");
41
+ const nullable_1 = require("../../helpers/nullable");
42
+ const on_event_1 = require("../../helpers/on-event");
43
+ const process_code_1 = require("../../helpers/plugins/process-code");
44
+ const render_imports_1 = require("../../helpers/render-imports");
45
+ const strip_meta_properties_1 = require("../../helpers/strip-meta-properties");
46
+ const collect_css_1 = require("../../helpers/styles/collect-css");
47
+ const helpers_1 = require("../../helpers/styles/helpers");
48
+ const Array_1 = require("fp-ts/lib/Array");
49
+ const S = __importStar(require("fp-ts/string"));
50
+ const hash_sum_1 = __importDefault(require("hash-sum"));
51
+ const legacy_1 = __importDefault(require("neotraverse/legacy"));
52
+ const standalone_1 = require("prettier/standalone");
53
+ const plugins_1 = require("../../modules/plugins");
54
+ const context_1 = require("../helpers/context");
55
+ const blocks_1 = require("./blocks");
56
+ const state_1 = require("./state");
57
+ const helpers_2 = require("./state/helpers");
82
58
  // Transform <foo.bar key={value} /> to <Dynamic compnent={foo.bar} key={value} />
83
59
  function processDynamicComponents(json, options) {
84
- var found = false;
85
- (0, legacy_1.default)(json).forEach(function (node) {
60
+ let found = false;
61
+ (0, legacy_1.default)(json).forEach((node) => {
86
62
  if ((0, is_mitosis_node_1.isMitosisNode)(node)) {
87
63
  if (node.name.includes('.') && !node.name.endsWith('.Provider')) {
88
64
  node.bindings.component = (0, bindings_1.createSingleBinding)({ code: node.name });
@@ -94,157 +70,190 @@ function processDynamicComponents(json, options) {
94
70
  return found;
95
71
  }
96
72
  function getContextString(component, options) {
97
- var str = '';
98
- for (var key in component.context.get) {
99
- str += "\n const ".concat(key, " = useContext(").concat(component.context.get[key].name, ");\n ");
73
+ let str = '';
74
+ for (const key in component.context.get) {
75
+ str += `
76
+ const ${key} = useContext(${component.context.get[key].name});
77
+ `;
100
78
  }
101
79
  return str;
102
80
  }
103
- var getRefsString = function (json, options) {
104
- return Array.from((0, get_refs_1.getRefs)(json))
105
- .map(function (ref) {
106
- var _a;
107
- // fix prettier issue when encounter `let props.ref`
108
- // Prettier playground: https://prettier.io/playground/#N4Igxg9gdgLgprEAuEAzArlMMCW0AEAsgJ4DCEAtgA7QIwAUVAThFQM5ICGUxAlPsAA6UfPgA2cGPmas2AOhxQq6GACU4qANzDRTSeiYj6O0fgA8i5VPx7UAXmAz2CpSvWoAhAF9RAegB8JqK8wl7CcAAeNExSACYanOhiUiTk1LSwmiAANCCsuNBsyKCcTCwA7gAKpQhFKJxi5ZzERbkARkycYADWkgDKnBRwADKKcMioDWxw7Z09-VRdigDmyDBM6DMg0xQ4axtbkVRwTDhDsA0AKidQpThwdZNi07lsKxIAiugQ8BNTWwArNgRPrvOBfH7jJBPF4gACO33glRY7GQIE4bAAtFA4HB4rEciB1pwcGIVmkKJw0Q0xIS3lBlhIAIIwdY4NoqOCVE6jHF-Z5bAAWMAoYgA6oKcPA2IswHA+rUpTgAG5S4hosBsVogZWbACSUHisD6YFOVBgTMNfRgxAk-NhMmmYs6VDRzAeJ2V41yimmMWRnGWlPtW0WTD9aJtxzYppw5sJzEUMDFOFiMEFyAAHAAGXJ6BE4PQBoNU6H-XIwThtFNpjNIABMuXQ00uVce5ZAcAobTx+OG3GW6EDcAAYhAmJTWStqSoICAvF4gA
109
- if (ref.includes('.'))
110
- return '';
111
- var typeParameter = (options.typescript && ((_a = json['refs'][ref]) === null || _a === void 0 ? void 0 : _a.typeParameter)) || '';
112
- return "let ".concat(ref).concat(typeParameter ? ': ' + typeParameter : '', ";");
113
- })
114
- .join('\n');
115
- };
81
+ const getRefsString = (json, options) => Array.from((0, get_refs_1.getRefs)(json))
82
+ .map((ref) => {
83
+ var _a;
84
+ // fix prettier issue when encounter `let props.ref`
85
+ // Prettier playground: https://prettier.io/playground/#N4Igxg9gdgLgprEAuEAzArlMMCW0AEAsgJ4DCEAtgA7QIwAUVAThFQM5ICGUxAlPsAA6UfPgA2cGPmas2AOhxQq6GACU4qANzDRTSeiYj6O0fgA8i5VPx7UAXmAz2CpSvWoAhAF9RAegB8JqK8wl7CcAAeNExSACYanOhiUiTk1LSwmiAANCCsuNBsyKCcTCwA7gAKpQhFKJxi5ZzERbkARkycYADWkgDKnBRwADKKcMioDWxw7Z09-VRdigDmyDBM6DMg0xQ4axtbkVRwTDhDsA0AKidQpThwdZNi07lsKxIAiugQ8BNTWwArNgRPrvOBfH7jJBPF4gACO33glRY7GQIE4bAAtFA4HB4rEciB1pwcGIVmkKJw0Q0xIS3lBlhIAIIwdY4NoqOCVE6jHF-Z5bAAWMAoYgA6oKcPA2IswHA+rUpTgAG5S4hosBsVogZWbACSUHisD6YFOVBgTMNfRgxAk-NhMmmYs6VDRzAeJ2V41yimmMWRnGWlPtW0WTD9aJtxzYppw5sJzEUMDFOFiMEFyAAHAAGXJ6BE4PQBoNU6H-XIwThtFNpjNIABMuXQ00uVce5ZAcAobTx+OG3GW6EDcAAYhAmJTWStqSoICAvF4gA
86
+ if (ref.includes('.'))
87
+ return '';
88
+ const typeParameter = (options.typescript && ((_a = json['refs'][ref]) === null || _a === void 0 ? void 0 : _a.typeParameter)) || '';
89
+ return `let ${ref}${typeParameter ? ': ' + typeParameter : ''};`;
90
+ })
91
+ .join('\n');
116
92
  function addProviderComponents(json, options) {
117
- for (var key in json.context.set) {
118
- var _a = json.context.set[key], name_1 = _a.name, value = _a.value, ref = _a.ref;
119
- var bindingValue = value
93
+ for (const key in json.context.set) {
94
+ const { name, value, ref } = json.context.set[key];
95
+ const bindingValue = value
120
96
  ? (0, bindings_1.createSingleBinding)({ code: (0, get_state_object_string_1.stringifyContextValue)(value) })
121
97
  : ref
122
98
  ? (0, bindings_1.createSingleBinding)({ code: ref })
123
99
  : undefined;
124
100
  json.children = [
125
- (0, create_mitosis_node_1.createMitosisNode)(__assign({ name: "".concat(name_1, ".Provider"), children: json.children }, (bindingValue && { bindings: { value: bindingValue } }))),
101
+ (0, create_mitosis_node_1.createMitosisNode)({
102
+ name: `${name}.Provider`,
103
+ children: json.children,
104
+ ...(bindingValue && { bindings: { value: bindingValue } }),
105
+ }),
126
106
  ];
127
107
  }
128
108
  }
129
- var DEFAULT_OPTIONS = {
109
+ const DEFAULT_OPTIONS = {
130
110
  state: 'signals',
131
111
  stylesType: 'style-tag',
132
112
  };
133
- var componentToSolid = function (passedOptions) {
134
- return function (_a) {
135
- var _b, _c, _d, _e, _f, _g, _h;
136
- var component = _a.component;
137
- var json = (0, fast_clone_1.fastClone)(component);
138
- var options = (0, merge_options_1.initializeOptions)({
139
- target: 'solid',
140
- component: component,
141
- defaults: DEFAULT_OPTIONS,
142
- userOptions: passedOptions,
113
+ const componentToSolid = (passedOptions) => ({ component }) => {
114
+ var _a, _b, _c, _d, _e, _f, _g;
115
+ let json = (0, fast_clone_1.fastClone)(component);
116
+ const options = (0, merge_options_1.initializeOptions)({
117
+ target: 'solid',
118
+ component,
119
+ defaults: DEFAULT_OPTIONS,
120
+ userOptions: passedOptions,
121
+ });
122
+ options.plugins = [
123
+ ...(options.plugins || []),
124
+ (0, on_event_1.processOnEventHooksPlugin)(),
125
+ (0, process_code_1.CODE_PROCESSOR_PLUGIN)((codeType) => {
126
+ switch (codeType) {
127
+ case 'state':
128
+ case 'context-set':
129
+ case 'dynamic-jsx-elements':
130
+ case 'types':
131
+ return (c) => c;
132
+ case 'bindings':
133
+ case 'hooks':
134
+ case 'hooks-deps':
135
+ case 'properties':
136
+ return (0, helpers_2.updateStateCode)({
137
+ component: json,
138
+ options,
139
+ updateSetters: codeType === 'properties' ? false : true,
140
+ });
141
+ }
142
+ }),
143
+ ];
144
+ if (options.plugins) {
145
+ json = (0, plugins_1.runPreJsonPlugins)({ json, plugins: options.plugins });
146
+ }
147
+ addProviderComponents(json, options);
148
+ const componentHasStyles = (0, helpers_1.hasCss)(json);
149
+ const hasCustomStyles = !!((_a = json.style) === null || _a === void 0 ? void 0 : _a.length);
150
+ const shouldInjectCustomStyles = hasCustomStyles && options.stylesType === 'styled-components';
151
+ const addWrapper = json.children.filter(filter_empty_text_nodes_1.filterEmptyTextNodes).length !== 1 ||
152
+ options.stylesType === 'style-tag' ||
153
+ shouldInjectCustomStyles ||
154
+ (0, is_root_text_node_1.isRootTextNode)(json);
155
+ // we need to run this before we run the code processor plugin, so the dynamic component variables are transformed
156
+ const foundDynamicComponents = processDynamicComponents(json, options);
157
+ if (options.plugins) {
158
+ json = (0, plugins_1.runPostJsonPlugins)({ json, plugins: options.plugins });
159
+ }
160
+ (0, strip_meta_properties_1.stripMetaProperties)(json);
161
+ const css = options.stylesType === 'style-tag' && (0, collect_css_1.collectCss)(json, { prefix: (0, hash_sum_1.default)(json) });
162
+ const state = (0, state_1.getState)({ json, options });
163
+ const componentsUsed = (0, get_components_used_1.getComponentsUsed)(json);
164
+ const hasShowComponent = componentsUsed.has('Show');
165
+ const hasForComponent = componentsUsed.has('For');
166
+ const solidJSImports = (0, Array_1.uniq)(S.Eq)([
167
+ (0, context_1.hasGetContext)(json) ? 'useContext' : undefined,
168
+ hasShowComponent ? 'Show' : undefined,
169
+ hasForComponent ? 'For' : undefined,
170
+ json.hooks.onMount.length ? 'onMount' : undefined,
171
+ ...(((_b = json.hooks.onUpdate) === null || _b === void 0 ? void 0 : _b.length) ? ['on', 'createEffect', 'createMemo'] : []),
172
+ ...((_c = state === null || state === void 0 ? void 0 : state.import.solidjs) !== null && _c !== void 0 ? _c : []),
173
+ ].filter(nullable_1.checkIsDefined));
174
+ const storeImports = (_d = state === null || state === void 0 ? void 0 : state.import.store) !== null && _d !== void 0 ? _d : [];
175
+ const propType = json.propsTypeRef || 'any';
176
+ const propsArgs = `props${options.typescript ? `:${propType}` : ''}`;
177
+ let str = (0, dedent_1.dedent) `
178
+ ${solidJSImports.length > 0 ? `import { ${solidJSImports.join(', ')} } from 'solid-js';` : ''}
179
+ ${!foundDynamicComponents ? '' : `import { Dynamic } from 'solid-js/web';`}
180
+ ${storeImports.length > 0 ? `import { ${storeImports.join(', ')} } from 'solid-js/store';` : ''}
181
+ ${componentHasStyles && options.stylesType === 'styled-components'
182
+ ? 'import { css } from "solid-styled-components";'
183
+ : ``}
184
+ ${json.types && options.typescript ? json.types.join('\n') : ''}
185
+ ${(0, render_imports_1.renderPreComponent)({
186
+ explicitImportFileExtension: options.explicitImportFileExtension,
187
+ component: json,
188
+ target: 'solid',
189
+ })}
190
+
191
+ function ${json.name}(${propsArgs}) {
192
+ ${(_e = state === null || state === void 0 ? void 0 : state.str) !== null && _e !== void 0 ? _e : ''}
193
+
194
+ ${getRefsString(json, options)}
195
+ ${getContextString(json, options)}
196
+ ${(_g = (_f = json.hooks.onInit) === null || _f === void 0 ? void 0 : _f.code) !== null && _g !== void 0 ? _g : ''}
197
+
198
+ ${json.hooks.onMount.map((hook) => `onMount(() => { ${hook.code} })`).join('\n')}
199
+ ${json.hooks.onUpdate
200
+ ? json.hooks.onUpdate
201
+ .map((hook, index) => {
202
+ // TO-DO: support `onUpdate` without `deps`
203
+ if (!hook.deps)
204
+ return '';
205
+ const hookName = `onUpdateFn_${index}`;
206
+ const depsArray = hook.deps
207
+ .slice(1, hook.deps.length - 1)
208
+ .split(',')
209
+ .map((x) => x.trim());
210
+ const getReactiveDepName = (dep) => {
211
+ const newLocal = dep.replace(/(\.|\?|\(|\)|\[|\])/g, '_');
212
+ return `${hookName}_${newLocal}`;
213
+ };
214
+ const needsMemo = (dep) => true;
215
+ const reactiveDepsWorkaround = depsArray
216
+ .filter(needsMemo)
217
+ .map((dep) => `const ${getReactiveDepName(dep)} = createMemo(() => ${dep});`)
218
+ .join('\n');
219
+ const depsArrayStr = depsArray
220
+ .map((x) => (needsMemo(x) ? `${getReactiveDepName(x)}()` : x))
221
+ .join(', ');
222
+ return `
223
+ ${reactiveDepsWorkaround}
224
+ function ${hookName}() { ${hook.code} };
225
+ createEffect(on(() => [${depsArrayStr}], ${hookName}));
226
+ `;
227
+ })
228
+ .join('\n')
229
+ : ''}
230
+
231
+ return (${addWrapper ? '<>' : ''}
232
+ ${json.children
233
+ .filter(filter_empty_text_nodes_1.filterEmptyTextNodes)
234
+ .map((item) => (0, blocks_1.blockToSolid)({ component, json: item, options }))
235
+ .join('\n')}
236
+ ${options.stylesType === 'style-tag' && css && css.trim().length > 4
237
+ ? `<style>{\`${css}\`}</style>`
238
+ : ''}
239
+ ${shouldInjectCustomStyles ? `<style>{\`${json.style}\`}</style>` : ''}
240
+ ${addWrapper ? '</>' : ''})
241
+ }
242
+
243
+ export default ${json.name};
244
+ `;
245
+ if (options.plugins) {
246
+ str = (0, plugins_1.runPreCodePlugins)({ json, code: str, plugins: options.plugins });
247
+ }
248
+ if (options.prettier !== false) {
249
+ str = (0, standalone_1.format)(str, {
250
+ parser: 'typescript',
251
+ plugins: [require('prettier/parser-typescript'), require('prettier/parser-postcss')],
143
252
  });
144
- options.plugins = __spreadArray(__spreadArray([], (options.plugins || []), true), [
145
- (0, on_event_1.processOnEventHooksPlugin)(),
146
- (0, process_code_1.CODE_PROCESSOR_PLUGIN)(function (codeType) {
147
- switch (codeType) {
148
- case 'state':
149
- case 'context-set':
150
- case 'dynamic-jsx-elements':
151
- case 'types':
152
- return function (c) { return c; };
153
- case 'bindings':
154
- case 'hooks':
155
- case 'hooks-deps':
156
- case 'properties':
157
- return (0, helpers_2.updateStateCode)({
158
- component: json,
159
- options: options,
160
- updateSetters: codeType === 'properties' ? false : true,
161
- });
162
- }
163
- }),
164
- ], false);
165
- if (options.plugins) {
166
- json = (0, plugins_1.runPreJsonPlugins)({ json: json, plugins: options.plugins });
167
- }
168
- addProviderComponents(json, options);
169
- var componentHasStyles = (0, helpers_1.hasCss)(json);
170
- var hasCustomStyles = !!((_b = json.style) === null || _b === void 0 ? void 0 : _b.length);
171
- var shouldInjectCustomStyles = hasCustomStyles && options.stylesType === 'styled-components';
172
- var addWrapper = json.children.filter(filter_empty_text_nodes_1.filterEmptyTextNodes).length !== 1 ||
173
- options.stylesType === 'style-tag' ||
174
- shouldInjectCustomStyles ||
175
- (0, is_root_text_node_1.isRootTextNode)(json);
176
- // we need to run this before we run the code processor plugin, so the dynamic component variables are transformed
177
- var foundDynamicComponents = processDynamicComponents(json, options);
178
- if (options.plugins) {
179
- json = (0, plugins_1.runPostJsonPlugins)({ json: json, plugins: options.plugins });
180
- }
181
- (0, strip_meta_properties_1.stripMetaProperties)(json);
182
- var css = options.stylesType === 'style-tag' && (0, collect_css_1.collectCss)(json, { prefix: (0, hash_sum_1.default)(json) });
183
- var state = (0, state_1.getState)({ json: json, options: options });
184
- var componentsUsed = (0, get_components_used_1.getComponentsUsed)(json);
185
- var hasShowComponent = componentsUsed.has('Show');
186
- var hasForComponent = componentsUsed.has('For');
187
- var solidJSImports = (0, Array_1.uniq)(S.Eq)(__spreadArray(__spreadArray([
188
- (0, context_1.hasGetContext)(json) ? 'useContext' : undefined,
189
- hasShowComponent ? 'Show' : undefined,
190
- hasForComponent ? 'For' : undefined,
191
- json.hooks.onMount.length ? 'onMount' : undefined
192
- ], (((_c = json.hooks.onUpdate) === null || _c === void 0 ? void 0 : _c.length) ? ['on', 'createEffect', 'createMemo'] : []), true), ((_d = state === null || state === void 0 ? void 0 : state.import.solidjs) !== null && _d !== void 0 ? _d : []), true).filter(nullable_1.checkIsDefined));
193
- var storeImports = (_e = state === null || state === void 0 ? void 0 : state.import.store) !== null && _e !== void 0 ? _e : [];
194
- var propType = json.propsTypeRef || 'any';
195
- var propsArgs = "props".concat(options.typescript ? ":".concat(propType) : '');
196
- var str = (0, dedent_1.dedent)(templateObject_1 || (templateObject_1 = __makeTemplateObject(["\n ", "\n ", "\n ", "\n ", "\n ", "\n ", "\n\n function ", "(", ") {\n ", "\n\n ", "\n ", "\n ", "\n\n ", "\n ", "\n\n return (", "\n ", "\n ", "\n ", "\n ", ")\n }\n\n export default ", ";\n "], ["\n ", "\n ", "\n ", "\n ", "\n ", "\n ", "\n\n function ", "(", ") {\n ", "\n\n ", "\n ", "\n ", "\n\n ", "\n ", "\n\n return (", "\n ", "\n ", "\n ", "\n ", ")\n }\n\n export default ", ";\n "])), solidJSImports.length > 0 ? "import { ".concat(solidJSImports.join(', '), " } from 'solid-js';") : '', !foundDynamicComponents ? '' : "import { Dynamic } from 'solid-js/web';", storeImports.length > 0 ? "import { ".concat(storeImports.join(', '), " } from 'solid-js/store';") : '', componentHasStyles && options.stylesType === 'styled-components'
197
- ? 'import { css } from "solid-styled-components";'
198
- : "", json.types && options.typescript ? json.types.join('\n') : '', (0, render_imports_1.renderPreComponent)({
199
- explicitImportFileExtension: options.explicitImportFileExtension,
200
- component: json,
201
- target: 'solid',
202
- }), json.name, propsArgs, (_f = state === null || state === void 0 ? void 0 : state.str) !== null && _f !== void 0 ? _f : '', getRefsString(json, options), getContextString(json, options), (_h = (_g = json.hooks.onInit) === null || _g === void 0 ? void 0 : _g.code) !== null && _h !== void 0 ? _h : '', json.hooks.onMount.map(function (hook) { return "onMount(() => { ".concat(hook.code, " })"); }).join('\n'), json.hooks.onUpdate
203
- ? json.hooks.onUpdate
204
- .map(function (hook, index) {
205
- // TO-DO: support `onUpdate` without `deps`
206
- if (!hook.deps)
207
- return '';
208
- var hookName = "onUpdateFn_".concat(index);
209
- var depsArray = hook.deps
210
- .slice(1, hook.deps.length - 1)
211
- .split(',')
212
- .map(function (x) { return x.trim(); });
213
- var getReactiveDepName = function (dep) {
214
- var newLocal = dep.replace(/(\.|\?|\(|\)|\[|\])/g, '_');
215
- return "".concat(hookName, "_").concat(newLocal);
216
- };
217
- var needsMemo = function (dep) { return true; };
218
- var reactiveDepsWorkaround = depsArray
219
- .filter(needsMemo)
220
- .map(function (dep) { return "const ".concat(getReactiveDepName(dep), " = createMemo(() => ").concat(dep, ");"); })
221
- .join('\n');
222
- var depsArrayStr = depsArray
223
- .map(function (x) { return (needsMemo(x) ? "".concat(getReactiveDepName(x), "()") : x); })
224
- .join(', ');
225
- return "\n ".concat(reactiveDepsWorkaround, "\n function ").concat(hookName, "() { ").concat(hook.code, " };\n createEffect(on(() => [").concat(depsArrayStr, "], ").concat(hookName, "));\n ");
226
- })
227
- .join('\n')
228
- : '', addWrapper ? '<>' : '', json.children
229
- .filter(filter_empty_text_nodes_1.filterEmptyTextNodes)
230
- .map(function (item) { return (0, blocks_1.blockToSolid)({ component: component, json: item, options: options }); })
231
- .join('\n'), options.stylesType === 'style-tag' && css && css.trim().length > 4
232
- ? "<style>{`".concat(css, "`}</style>")
233
- : '', shouldInjectCustomStyles ? "<style>{`".concat(json.style, "`}</style>") : '', addWrapper ? '</>' : '', json.name);
234
- if (options.plugins) {
235
- str = (0, plugins_1.runPreCodePlugins)({ json: json, code: str, plugins: options.plugins });
236
- }
237
- if (options.prettier !== false) {
238
- str = (0, standalone_1.format)(str, {
239
- parser: 'typescript',
240
- plugins: [require('prettier/parser-typescript'), require('prettier/parser-postcss')],
241
- });
242
- }
243
- if (options.plugins) {
244
- str = (0, plugins_1.runPostCodePlugins)({ json: json, code: str, plugins: options.plugins });
245
- }
246
- return str;
247
- };
253
+ }
254
+ if (options.plugins) {
255
+ str = (0, plugins_1.runPostCodePlugins)({ json, code: str, plugins: options.plugins });
256
+ }
257
+ return str;
248
258
  };
249
259
  exports.componentToSolid = componentToSolid;
250
- var templateObject_1;
@@ -1,102 +1,88 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.updateStateCode = exports.getStateTypeForValue = exports.getStateSetterName = void 0;
4
- var core_1 = require("@babel/core");
5
- var function_1 = require("fp-ts/lib/function");
6
- var capitalize_1 = require("../../../helpers/capitalize");
7
- var replace_identifiers_1 = require("../../../helpers/replace-identifiers");
8
- var strip_state_and_props_refs_1 = require("../../../helpers/strip-state-and-props-refs");
9
- var transform_state_setters_1 = require("../../../helpers/transform-state-setters");
10
- var getStateSetterName = function (stateName) { return "set".concat((0, capitalize_1.capitalize)(stateName)); };
4
+ const core_1 = require("@babel/core");
5
+ const function_1 = require("fp-ts/lib/function");
6
+ const capitalize_1 = require("../../../helpers/capitalize");
7
+ const replace_identifiers_1 = require("../../../helpers/replace-identifiers");
8
+ const strip_state_and_props_refs_1 = require("../../../helpers/strip-state-and-props-refs");
9
+ const transform_state_setters_1 = require("../../../helpers/transform-state-setters");
10
+ const getStateSetterName = (stateName) => `set${(0, capitalize_1.capitalize)(stateName)}`;
11
11
  exports.getStateSetterName = getStateSetterName;
12
- var getStateTypeForValue = function (_a) {
13
- var _b, _c, _d, _e;
14
- var value = _a.value, component = _a.component, options = _a.options;
12
+ const getStateTypeForValue = ({ value, component, options, }) => {
13
+ var _a, _b, _c, _d;
15
14
  // e.g. state.useContent?.blocks[0].id => useContent
16
- var extractStateSliceName = (0, strip_state_and_props_refs_1.stripStateAndPropsRefs)(value).split('.')[0].split('?')[0];
17
- var stateOverrideForValue = (_e = (_d = (_c = (_b = component.meta) === null || _b === void 0 ? void 0 : _b.useMetadata) === null || _c === void 0 ? void 0 : _c.solid) === null || _d === void 0 ? void 0 : _d.state) === null || _e === void 0 ? void 0 : _e[extractStateSliceName];
18
- var stateType = stateOverrideForValue || options.state;
15
+ const extractStateSliceName = (0, strip_state_and_props_refs_1.stripStateAndPropsRefs)(value).split('.')[0].split('?')[0];
16
+ const stateOverrideForValue = (_d = (_c = (_b = (_a = component.meta) === null || _a === void 0 ? void 0 : _a.useMetadata) === null || _b === void 0 ? void 0 : _b.solid) === null || _c === void 0 ? void 0 : _c.state) === null || _d === void 0 ? void 0 : _d[extractStateSliceName];
17
+ const stateType = stateOverrideForValue || options.state;
19
18
  return stateType;
20
19
  };
21
20
  exports.getStateTypeForValue = getStateTypeForValue;
22
- var getNewStateSetterExpression = function (stateType) {
23
- return function (_a) {
24
- var path = _a.path, propertyName = _a.propertyName;
25
- /**
26
- * passes the value to the setter function
27
- * ```ts
28
- * // BEFORE
29
- * state.count = newCount
30
- * // AFTER
31
- * setCount(newCount)
32
- * ```
33
- */
34
- var callValueSetter = function (args) {
35
- return core_1.types.callExpression(core_1.types.identifier((0, exports.getStateSetterName)(propertyName)), [args]);
36
- };
37
- switch (stateType) {
38
- case 'signals':
39
- return callValueSetter(path.node.right);
40
- case 'store':
41
- /**
42
- * Wrap value in a reconcile() call for Stores updates
43
- * ```ts
44
- * // BEFORE
45
- * state.count = newCount
46
- * // AFTER
47
- * setCount(reconcile(newCount))
48
- * ```
49
- */
50
- return callValueSetter(core_1.types.callExpression(core_1.types.identifier('reconcile'), [path.node.right]));
51
- }
52
- };
21
+ const getNewStateSetterExpression = (stateType) => ({ path, propertyName, }) => {
22
+ /**
23
+ * passes the value to the setter function
24
+ * ```ts
25
+ * // BEFORE
26
+ * state.count = newCount
27
+ * // AFTER
28
+ * setCount(newCount)
29
+ * ```
30
+ */
31
+ const callValueSetter = (args) => core_1.types.callExpression(core_1.types.identifier((0, exports.getStateSetterName)(propertyName)), [args]);
32
+ switch (stateType) {
33
+ case 'signals':
34
+ return callValueSetter(path.node.right);
35
+ case 'store':
36
+ /**
37
+ * Wrap value in a reconcile() call for Stores updates
38
+ * ```ts
39
+ * // BEFORE
40
+ * state.count = newCount
41
+ * // AFTER
42
+ * setCount(reconcile(newCount))
43
+ * ```
44
+ */
45
+ return callValueSetter(core_1.types.callExpression(core_1.types.identifier('reconcile'), [path.node.right]));
46
+ }
53
47
  };
54
- var updateStateSettersInCode = function (_a) {
55
- var options = _a.options, component = _a.component;
56
- return function (value) {
57
- var stateType = (0, exports.getStateTypeForValue)({ value: value, component: component, options: options });
58
- switch (stateType) {
59
- case 'mutable':
60
- return value;
61
- case 'store':
62
- case 'signals':
63
- try {
64
- return (0, transform_state_setters_1.transformStateSetters)({
65
- value: value,
66
- transformer: getNewStateSetterExpression(stateType),
67
- });
68
- }
69
- catch (error) {
70
- console.error("[Solid.js]: could not update state setters in ".concat(stateType, " code"), value);
71
- throw error;
72
- }
73
- }
74
- };
48
+ const updateStateSettersInCode = ({ options, component }) => (value) => {
49
+ const stateType = (0, exports.getStateTypeForValue)({ value, component, options });
50
+ switch (stateType) {
51
+ case 'mutable':
52
+ return value;
53
+ case 'store':
54
+ case 'signals':
55
+ try {
56
+ return (0, transform_state_setters_1.transformStateSetters)({
57
+ value,
58
+ transformer: getNewStateSetterExpression(stateType),
59
+ });
60
+ }
61
+ catch (error) {
62
+ console.error(`[Solid.js]: could not update state setters in ${stateType} code`, value);
63
+ throw error;
64
+ }
65
+ }
75
66
  };
76
- var updateStateGettersInCode = function (options, component) {
77
- return (0, replace_identifiers_1.replaceStateIdentifier)(function (name) {
78
- var stateType = (0, exports.getStateTypeForValue)({ value: name, component: component, options: options });
79
- var state = component.state[name];
80
- switch (stateType) {
81
- case 'signals':
82
- if (
83
- // signal accessors are lazy, so we need to add a function call to property calls
84
- (state === null || state === void 0 ? void 0 : state.type) === 'property' ||
85
- // getters become plain functions, requiring a function call to access their value
86
- (state === null || state === void 0 ? void 0 : state.type) === 'getter') {
87
- return "".concat(name, "()");
88
- }
89
- else {
90
- return name;
91
- }
92
- case 'store':
93
- case 'mutable':
67
+ const updateStateGettersInCode = (options, component) => (0, replace_identifiers_1.replaceStateIdentifier)((name) => {
68
+ const stateType = (0, exports.getStateTypeForValue)({ value: name, component, options });
69
+ const state = component.state[name];
70
+ switch (stateType) {
71
+ case 'signals':
72
+ if (
73
+ // signal accessors are lazy, so we need to add a function call to property calls
74
+ (state === null || state === void 0 ? void 0 : state.type) === 'property' ||
75
+ // getters become plain functions, requiring a function call to access their value
76
+ (state === null || state === void 0 ? void 0 : state.type) === 'getter') {
77
+ return `${name}()`;
78
+ }
79
+ else {
94
80
  return name;
95
- }
96
- });
97
- };
98
- var updateStateCode = function (_a) {
99
- var options = _a.options, component = _a.component, _b = _a.updateSetters, updateSetters = _b === void 0 ? true : _b;
100
- return (0, function_1.flow)(updateSetters ? updateStateSettersInCode({ options: options, component: component }) : function_1.identity, updateStateGettersInCode(options, component), function (x) { return x.trim(); });
101
- };
81
+ }
82
+ case 'store':
83
+ case 'mutable':
84
+ return name;
85
+ }
86
+ });
87
+ const updateStateCode = ({ options, component, updateSetters = true, }) => (0, function_1.flow)(updateSetters ? updateStateSettersInCode({ options, component }) : function_1.identity, updateStateGettersInCode(options, component), (x) => x.trim());
102
88
  exports.updateStateCode = updateStateCode;