@builder.io/mitosis 0.3.22 → 0.4.1

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 (197) 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 +176 -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.d.ts +1 -1
  142. package/dist/src/parsers/builder/builder.js +432 -344
  143. package/dist/src/parsers/builder/helpers.js +10 -10
  144. package/dist/src/parsers/context.js +15 -17
  145. package/dist/src/parsers/jsx/ast.js +11 -11
  146. package/dist/src/parsers/jsx/component-types.js +22 -32
  147. package/dist/src/parsers/jsx/context.js +12 -12
  148. package/dist/src/parsers/jsx/element-parser.js +43 -54
  149. package/dist/src/parsers/jsx/exports.js +12 -14
  150. package/dist/src/parsers/jsx/function-parser.js +108 -119
  151. package/dist/src/parsers/jsx/helpers.js +11 -13
  152. package/dist/src/parsers/jsx/hooks/helpers.js +14 -16
  153. package/dist/src/parsers/jsx/hooks/index.js +34 -44
  154. package/dist/src/parsers/jsx/hooks/use-target.js +27 -27
  155. package/dist/src/parsers/jsx/imports.js +7 -17
  156. package/dist/src/parsers/jsx/jsx.js +92 -91
  157. package/dist/src/parsers/jsx/props-types.js +8 -10
  158. package/dist/src/parsers/jsx/props.js +15 -23
  159. package/dist/src/parsers/jsx/signals.js +28 -29
  160. package/dist/src/parsers/jsx/state.d.ts +2 -4
  161. package/dist/src/parsers/jsx/state.js +59 -93
  162. package/dist/src/parsers/svelte/css/index.js +1 -1
  163. package/dist/src/parsers/svelte/helpers/bindings.js +18 -19
  164. package/dist/src/parsers/svelte/helpers/children.js +5 -6
  165. package/dist/src/parsers/svelte/helpers/expressions.js +7 -9
  166. package/dist/src/parsers/svelte/helpers/hooks.js +2 -2
  167. package/dist/src/parsers/svelte/helpers/post-process.js +49 -70
  168. package/dist/src/parsers/svelte/helpers/string.js +5 -5
  169. package/dist/src/parsers/svelte/html/actions.js +17 -10
  170. package/dist/src/parsers/svelte/html/each.js +11 -16
  171. package/dist/src/parsers/svelte/html/element.js +68 -78
  172. package/dist/src/parsers/svelte/html/fragment.js +3 -3
  173. package/dist/src/parsers/svelte/html/if-else.js +11 -18
  174. package/dist/src/parsers/svelte/html/index.js +14 -14
  175. package/dist/src/parsers/svelte/html/mustache-tag.js +5 -5
  176. package/dist/src/parsers/svelte/html/slot.js +5 -5
  177. package/dist/src/parsers/svelte/html/text.js +7 -14
  178. package/dist/src/parsers/svelte/index.js +23 -72
  179. package/dist/src/parsers/svelte/instance/context.js +17 -17
  180. package/dist/src/parsers/svelte/instance/expressions.js +2 -2
  181. package/dist/src/parsers/svelte/instance/functions.js +35 -30
  182. package/dist/src/parsers/svelte/instance/hooks.js +4 -5
  183. package/dist/src/parsers/svelte/instance/imports.js +11 -21
  184. package/dist/src/parsers/svelte/instance/index.js +22 -22
  185. package/dist/src/parsers/svelte/instance/properties.js +11 -23
  186. package/dist/src/parsers/svelte/instance/reactive.js +11 -11
  187. package/dist/src/parsers/svelte/instance/references.js +13 -13
  188. package/dist/src/parsers/svelte/instance/statements.js +3 -3
  189. package/dist/src/parsers/svelte/module/index.js +14 -26
  190. package/dist/src/parsers/svelte/typescript/index.js +27 -36
  191. package/dist/src/plugins/compile-away-builder-components.js +223 -156
  192. package/dist/src/plugins/compile-away-components.js +13 -21
  193. package/dist/src/plugins/map-styles.js +7 -7
  194. package/dist/src/symbols/symbol-processor.js +44 -62
  195. package/dist/src/targets.js +19 -19
  196. package/dist/src/types/mitosis-node.js +1 -1
  197. package/package.json +1 -1
@@ -1,15 +1,4 @@
1
1
  "use strict";
2
- var __assign = (this && this.__assign) || function () {
3
- __assign = Object.assign || function(t) {
4
- for (var s, i = 1, n = arguments.length; i < n; i++) {
5
- s = arguments[i];
6
- for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
7
- t[p] = s[p];
8
- }
9
- return t;
10
- };
11
- return __assign.apply(this, arguments);
12
- };
13
2
  var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
14
3
  if (k2 === undefined) k2 = k;
15
4
  var desc = Object.getOwnPropertyDescriptor(m, k);
@@ -33,62 +22,56 @@ var __importStar = (this && this.__importStar) || function (mod) {
33
22
  __setModuleDefault(result, mod);
34
23
  return result;
35
24
  };
36
- var __spreadArray = (this && this.__spreadArray) || function (to, from, pack) {
37
- if (pack || arguments.length === 2) for (var i = 0, l = from.length, ar; i < l; i++) {
38
- if (ar || !(i in from)) {
39
- if (!ar) ar = Array.prototype.slice.call(from, 0, i);
40
- ar[i] = from[i];
41
- }
42
- }
43
- return to.concat(ar || Array.prototype.slice.call(from));
44
- };
45
25
  var __importDefault = (this && this.__importDefault) || function (mod) {
46
26
  return (mod && mod.__esModule) ? mod : { "default": mod };
47
27
  };
48
28
  Object.defineProperty(exports, "__esModule", { value: true });
49
29
  exports.builderContentToMitosisComponent = exports.isBuilderElement = exports.createBuilderElement = exports.convertExportDefaultToReturn = exports.extractStateHook = exports.getMetaFromBlock = exports.builderElementToMitosisNode = exports.symbolBlocksAsChildren = void 0;
50
- var symbol_processor_1 = require("../../symbols/symbol-processor");
51
- var babel = __importStar(require("@babel/core"));
52
- var generator_1 = __importDefault(require("@babel/generator"));
53
- var json5_1 = __importDefault(require("json5"));
54
- var lodash_1 = require("lodash");
55
- var legacy_1 = __importDefault(require("neotraverse/legacy"));
56
- var media_sizes_1 = require("../../constants/media-sizes");
57
- var bindings_1 = require("../../helpers/bindings");
58
- var capitalize_1 = require("../../helpers/capitalize");
59
- var create_mitosis_component_1 = require("../../helpers/create-mitosis-component");
60
- var create_mitosis_node_1 = require("../../helpers/create-mitosis-node");
61
- var fast_clone_1 = require("../../helpers/fast-clone");
62
- var parsers_1 = require("../../helpers/parsers");
63
- var jsx_1 = require("../jsx");
64
- var state_1 = require("../jsx/state");
65
- var helpers_1 = require("./helpers");
30
+ const symbol_processor_1 = require("../../symbols/symbol-processor");
31
+ const babel = __importStar(require("@babel/core"));
32
+ const generator_1 = __importDefault(require("@babel/generator"));
33
+ const json5_1 = __importDefault(require("json5"));
34
+ const lodash_1 = require("lodash");
35
+ const legacy_1 = __importDefault(require("neotraverse/legacy"));
36
+ const media_sizes_1 = require("../../constants/media-sizes");
37
+ const bindings_1 = require("../../helpers/bindings");
38
+ const capitalize_1 = require("../../helpers/capitalize");
39
+ const create_mitosis_component_1 = require("../../helpers/create-mitosis-component");
40
+ const create_mitosis_node_1 = require("../../helpers/create-mitosis-node");
41
+ const fast_clone_1 = require("../../helpers/fast-clone");
42
+ const parsers_1 = require("../../helpers/parsers");
43
+ const jsx_1 = require("../jsx");
44
+ const state_1 = require("../jsx/state");
45
+ const helpers_1 = require("./helpers");
66
46
  // Omit some superflous styles that can come from Builder's web importer
67
- var styleOmitList = [
47
+ const styleOmitList = [
68
48
  'backgroundRepeatX',
69
49
  'backgroundRepeatY',
70
50
  'backgroundPositionX',
71
51
  'backgroundPositionY',
72
52
  ];
73
- var getCssFromBlock = function (block) {
53
+ const getCssFromBlock = (block) => {
74
54
  var _a;
75
- var blockSizes = Object.keys(block.responsiveStyles || {}).filter(function (size) {
76
- return media_sizes_1.sizeNames.includes(size);
77
- });
78
- var css = {};
79
- for (var _i = 0, blockSizes_1 = blockSizes; _i < blockSizes_1.length; _i++) {
80
- var size = blockSizes_1[_i];
55
+ const blockSizes = Object.keys(block.responsiveStyles || {}).filter((size) => media_sizes_1.sizeNames.includes(size));
56
+ let css = {};
57
+ for (const size of blockSizes) {
81
58
  if (size === 'large') {
82
- css = (0, lodash_1.omit)(__assign(__assign({}, css), (_a = block.responsiveStyles) === null || _a === void 0 ? void 0 : _a.large), styleOmitList);
59
+ css = (0, lodash_1.omit)({
60
+ ...css,
61
+ ...(_a = block.responsiveStyles) === null || _a === void 0 ? void 0 : _a.large,
62
+ }, styleOmitList);
83
63
  }
84
64
  else if (block.responsiveStyles && block.responsiveStyles[size]) {
85
- var mediaQueryKey = "@media (max-width: ".concat(media_sizes_1.sizes[size].max, "px)");
86
- css[mediaQueryKey] = (0, lodash_1.omit)(__assign(__assign({}, css[mediaQueryKey]), block.responsiveStyles[size]), styleOmitList);
65
+ const mediaQueryKey = `@media (max-width: ${media_sizes_1.sizes[size].max}px)`;
66
+ css[mediaQueryKey] = (0, lodash_1.omit)({
67
+ ...css[mediaQueryKey],
68
+ ...block.responsiveStyles[size],
69
+ }, styleOmitList);
87
70
  }
88
71
  }
89
72
  return css;
90
73
  };
91
- var verifyIsValid = function (code) {
74
+ const verifyIsValid = (code) => {
92
75
  try {
93
76
  if (babel.parse(code)) {
94
77
  return { valid: true, error: null };
@@ -99,71 +82,73 @@ var verifyIsValid = function (code) {
99
82
  }
100
83
  return { valid: false, error: null };
101
84
  };
102
- var getActionBindingsFromBlock = function (block, options) {
85
+ const getActionBindingsFromBlock = (block, options) => {
103
86
  var _a;
104
- var actions = __assign(__assign({}, block.actions), (_a = block.code) === null || _a === void 0 ? void 0 : _a.actions);
105
- var bindings = {};
106
- var actionKeys = Object.keys(actions);
87
+ const actions = {
88
+ ...block.actions,
89
+ ...(_a = block.code) === null || _a === void 0 ? void 0 : _a.actions,
90
+ };
91
+ const bindings = {};
92
+ const actionKeys = Object.keys(actions);
107
93
  if (actionKeys.length) {
108
- for (var _i = 0, actionKeys_1 = actionKeys; _i < actionKeys_1.length; _i++) {
109
- var key = actionKeys_1[_i];
110
- var value = actions[key];
94
+ for (const key of actionKeys) {
95
+ const value = actions[key];
111
96
  // Skip empty values
112
97
  if (!value.trim()) {
113
98
  continue;
114
99
  }
115
- var _b = verifyIsValid(value), error = _b.error, valid = _b.valid;
100
+ const { error, valid } = verifyIsValid(value);
116
101
  if (!valid) {
117
102
  console.warn('Skipping invalid binding', error);
118
103
  continue;
119
104
  }
120
- var useKey = "on".concat((0, lodash_1.upperFirst)(key));
121
- bindings[useKey] = (0, bindings_1.createSingleBinding)({ code: "".concat(wrapBindingIfNeeded(value, options)) });
105
+ const useKey = `on${(0, lodash_1.upperFirst)(key)}`;
106
+ bindings[useKey] = (0, bindings_1.createSingleBinding)({ code: `${wrapBindingIfNeeded(value, options)}` });
122
107
  }
123
108
  }
124
109
  return bindings;
125
110
  };
126
- var getStyleStringFromBlock = function (block, options) {
111
+ const getStyleStringFromBlock = (block, options) => {
127
112
  var _a, _b;
128
- var styleBindings = {};
129
- var styleString = '';
113
+ const styleBindings = {};
114
+ let styleString = '';
130
115
  if (block.bindings) {
131
- for (var key in block.bindings) {
116
+ for (const key in block.bindings) {
132
117
  if (key.includes('style') && key.includes('.')) {
133
- var styleProperty = key.split('.')[1];
118
+ const styleProperty = key.split('.')[1];
134
119
  styleBindings[styleProperty] = convertExportDefaultToReturn(((_b = (_a = block.code) === null || _a === void 0 ? void 0 : _a.bindings) === null || _b === void 0 ? void 0 : _b[key]) || block.bindings[key]);
135
120
  }
136
121
  }
137
122
  }
138
- var styleKeys = Object.keys(styleBindings);
123
+ const styleKeys = Object.keys(styleBindings);
139
124
  if (styleKeys.length) {
140
125
  styleString = '{';
141
- styleKeys.forEach(function (key) {
126
+ styleKeys.forEach((key) => {
142
127
  // TODO: figure out how to have multiline style bindings here
143
128
  // I tried (function{binding code})() and that did not work
144
- styleString += " ".concat(key, ": ").concat((options.includeBuilderExtras
129
+ styleString += ` ${key}: ${(options.includeBuilderExtras
145
130
  ? wrapBinding(styleBindings[key])
146
131
  : styleBindings[key]
147
132
  .replace(/var _virtual_index\s*=\s*/g, '')
148
- .replace(/;*\s*return _virtual_index;*/, '')).replace(/;$/, ''), ",");
133
+ .replace(/;*\s*return _virtual_index;*/, '')).replace(/;$/, '')},`;
149
134
  });
150
135
  styleString += ' }';
151
136
  }
152
137
  return styleString;
153
138
  };
154
- var hasComponent = function (block) {
139
+ const hasComponent = (block) => {
155
140
  var _a;
156
141
  return Boolean((_a = block.component) === null || _a === void 0 ? void 0 : _a.name);
157
142
  };
158
- var hasProperties = function (block) {
143
+ const hasProperties = (block) => {
159
144
  return Boolean(block.properties && Object.keys(block.properties).length);
160
145
  };
161
- var hasBindings = function (block) {
146
+ const hasBindings = (block) => {
162
147
  return Boolean(block.bindings && Object.keys(block.bindings).length);
163
148
  };
164
- var hasStyles = function (block) {
149
+ const hasStyles = (block) => {
165
150
  if (block.responsiveStyles) {
166
- for (var key in block.responsiveStyles) {
151
+ for (const key in block.responsiveStyles) {
167
152
  if (Object.keys(block.responsiveStyles[key]).length) {
168
153
  return true;
169
154
  }
@@ -171,48 +156,53 @@ var hasStyles = function (block) {
171
156
  }
172
157
  return false;
173
158
  };
174
- var wrapBindingIfNeeded = function (value, options) {
159
+ const wrapBindingIfNeeded = (value, options) => {
175
160
  if (options.includeBuilderExtras) {
176
161
  return wrapBinding(value);
177
162
  }
178
163
  if ((value === null || value === void 0 ? void 0 : value.includes(';')) && !(value === null || value === void 0 ? void 0 : value.trim().startsWith('{'))) {
179
- return "{ ".concat(value, " }");
164
+ return `{ ${value} }`;
180
165
  }
181
166
  return value;
182
167
  };
183
- var getBlockActions = function (block, options) {
168
+ const getBlockActions = (block, options) => {
184
169
  var _a;
185
- var obj = __assign(__assign({}, block.actions), (_a = block.code) === null || _a === void 0 ? void 0 : _a.actions);
170
+ const obj = {
171
+ ...block.actions,
172
+ ...(_a = block.code) === null || _a === void 0 ? void 0 : _a.actions,
173
+ };
186
174
  if (options.includeBuilderExtras) {
187
- for (var key in obj) {
188
- var value = obj[key];
175
+ for (const key in obj) {
176
+ const value = obj[key];
189
177
  // TODO: plugin/option for for this
190
178
  obj[key] = wrapBinding(value);
191
179
  }
192
180
  }
193
181
  return obj;
194
182
  };
195
- var getBlockActionsAsBindings = function (block, options) {
196
- return (0, lodash_1.mapKeys)(getBlockActions(block, options), function (value, key) { return "on".concat((0, capitalize_1.capitalize)(key)); });
183
+ const getBlockActionsAsBindings = (block, options) => {
184
+ return (0, lodash_1.mapKeys)(getBlockActions(block, options), (value, key) => `on${(0, capitalize_1.capitalize)(key)}`);
197
185
  };
198
- var isValidBindingKey = function (str) {
186
+ const isValidBindingKey = (str) => {
199
187
  return Boolean(str && /^[a-z0-9_\.]$/i.test(str));
200
188
  };
201
- var getBlockNonActionBindings = function (block, options) {
189
+ const getBlockNonActionBindings = (block, options) => {
202
190
  var _a;
203
- var _b;
204
- var obj = __assign(__assign({}, block.bindings), (_b = block.code) === null || _b === void 0 ? void 0 : _b.bindings);
191
+ const obj = {
192
+ ...block.bindings,
193
+ ...(_a = block.code) === null || _a === void 0 ? void 0 : _a.bindings,
194
+ };
205
195
  if (options.includeBuilderExtras) {
206
- for (var key in obj) {
196
+ for (const key in obj) {
207
197
  if (!isValidBindingKey(key)) {
208
198
  console.warn('Skipping invalid binding key:', key);
209
199
  continue;
210
200
  }
211
- var value = obj[key];
201
+ const value = obj[key];
212
202
  // TODO: verify the bindings are valid
213
- var _c = verifyIsValid(value), valid = _c.valid, error = _c.error;
203
+ let { valid, error } = verifyIsValid(value);
214
204
  if (!valid) {
215
- (_a = verifyIsValid("function () { ".concat(value, " }")), valid = _a.valid, error = _a.error);
205
+ ({ valid, error } = verifyIsValid(`function () { ${value} }`));
216
206
  }
217
207
  if (valid) {
218
208
  obj[key] = wrapBinding(value);
@@ -232,98 +222,125 @@ function wrapBinding(value) {
232
222
  if (!(value.includes(';') || value.match(/(^|\s|;)return[^a-z0-9A-Z]/))) {
233
223
  return value;
234
224
  }
235
- return "(() => {\n try { ".concat((0, parsers_1.isExpression)(value) ? 'return ' : '').concat(value, " }\n catch (err) {\n console.warn('Builder code error', err);\n }\n })()");
225
+ return `(() => {
226
+ try { ${(0, parsers_1.isExpression)(value) ? 'return ' : ''}${value} }
227
+ catch (err) {
228
+ console.warn('Builder code error', err);
229
+ }
230
+ })()`;
236
231
  }
237
- var getBlockBindings = function (block, options) {
238
- var obj = __assign(__assign({}, getBlockNonActionBindings(block, options)), getBlockActionsAsBindings(block, options));
232
+ const getBlockBindings = (block, options) => {
233
+ const obj = {
234
+ ...getBlockNonActionBindings(block, options),
235
+ ...getBlockActionsAsBindings(block, options),
236
+ };
239
237
  return obj;
240
238
  };
241
239
  // add back if this direction (blocks as children not prop) is desired
242
240
  exports.symbolBlocksAsChildren = false;
243
- var componentMappers = __assign(__assign({ Symbol: function (block, options) {
241
+ const componentMappers = {
242
+ Symbol(block, options) {
244
243
  var _a, _b;
245
- var css = getCssFromBlock(block);
246
- var styleString = getStyleStringFromBlock(block, options);
247
- var actionBindings = getActionBindingsFromBlock(block, options);
248
- var bindings = __assign(__assign(__assign({ symbol: (0, bindings_1.createSingleBinding)({
244
+ let css = getCssFromBlock(block);
245
+ const styleString = getStyleStringFromBlock(block, options);
246
+ const actionBindings = getActionBindingsFromBlock(block, options);
247
+ const bindings = {
248
+ symbol: (0, bindings_1.createSingleBinding)({
249
249
  code: JSON.stringify({
250
250
  data: (_a = block.component) === null || _a === void 0 ? void 0 : _a.options.symbol.data,
251
251
  content: (_b = block.component) === null || _b === void 0 ? void 0 : _b.options.symbol.content,
252
252
  }),
253
- }) }, actionBindings), (styleString && {
254
- style: (0, bindings_1.createSingleBinding)({ code: styleString }),
255
- })), (Object.keys(css).length && {
256
- css: (0, bindings_1.createSingleBinding)({ code: JSON.stringify(css) }),
257
- }));
253
+ }),
254
+ ...actionBindings,
255
+ ...(styleString && {
256
+ style: (0, bindings_1.createSingleBinding)({ code: styleString }),
257
+ }),
258
+ ...(Object.keys(css).length && {
259
+ css: (0, bindings_1.createSingleBinding)({ code: JSON.stringify(css) }),
260
+ }),
261
+ };
258
262
  return (0, create_mitosis_node_1.createMitosisNode)({
259
263
  name: 'Symbol',
260
264
  bindings: bindings,
261
265
  meta: (0, exports.getMetaFromBlock)(block, options),
262
266
  });
263
- } }, (!exports.symbolBlocksAsChildren
264
- ? {}
265
- : {
266
- Symbol: function (block, options) {
267
- var _a, _b, _c;
268
- var css = getCssFromBlock(block);
269
- var styleString = getStyleStringFromBlock(block, options);
270
- var actionBindings = getActionBindingsFromBlock(block, options);
271
- var content = (_a = block.component) === null || _a === void 0 ? void 0 : _a.options.symbol.content;
272
- var blocks = (_b = content === null || content === void 0 ? void 0 : content.data) === null || _b === void 0 ? void 0 : _b.blocks;
273
- if (blocks) {
274
- content.data.blocks = null;
275
- }
276
- return (0, create_mitosis_node_1.createMitosisNode)({
277
- name: 'Symbol',
278
- bindings: __assign(__assign(__assign({
279
- // TODO: this doesn't use all attrs
280
- symbol: (0, bindings_1.createSingleBinding)({
281
- code: JSON.stringify({
282
- data: (_c = block.component) === null || _c === void 0 ? void 0 : _c.options.symbol.content.data,
283
- content: content, // TODO: convert to <SymbolInternal>...</SymbolInternal> so can be parsed
267
+ },
268
+ ...(!exports.symbolBlocksAsChildren
269
+ ? {}
270
+ : {
271
+ Symbol(block, options) {
272
+ var _a, _b, _c;
273
+ let css = getCssFromBlock(block);
274
+ const styleString = getStyleStringFromBlock(block, options);
275
+ const actionBindings = getActionBindingsFromBlock(block, options);
276
+ const content = (_a = block.component) === null || _a === void 0 ? void 0 : _a.options.symbol.content;
277
+ const blocks = (_b = content === null || content === void 0 ? void 0 : content.data) === null || _b === void 0 ? void 0 : _b.blocks;
278
+ if (blocks) {
279
+ content.data.blocks = null;
280
+ }
281
+ return (0, create_mitosis_node_1.createMitosisNode)({
282
+ name: 'Symbol',
283
+ bindings: {
284
+ // TODO: this doesn't use all attrs
285
+ symbol: (0, bindings_1.createSingleBinding)({
286
+ code: JSON.stringify({
287
+ data: (_c = block.component) === null || _c === void 0 ? void 0 : _c.options.symbol.content.data,
288
+ content: content, // TODO: convert to <SymbolInternal>...</SymbolInternal> so can be parsed
289
+ }),
284
290
  }),
285
- }) }, actionBindings), (styleString && {
286
- style: (0, bindings_1.createSingleBinding)({ code: styleString }),
287
- })), (Object.keys(css).length && {
288
- css: (0, bindings_1.createSingleBinding)({ code: JSON.stringify(css) }),
289
- })),
290
- meta: (0, exports.getMetaFromBlock)(block, options),
291
- children: !blocks
292
- ? []
293
- : [
294
- (0, create_mitosis_node_1.createMitosisNode)({
295
- // TODO: the Builder generator side of this converting to blocks
296
- name: 'BuilderSymbolContents',
297
- children: blocks.map(function (item) { return (0, exports.builderElementToMitosisNode)(item, options); }),
291
+ ...actionBindings,
292
+ ...(styleString && {
293
+ style: (0, bindings_1.createSingleBinding)({ code: styleString }),
298
294
  }),
299
- ],
300
- });
301
- },
302
- })), { Columns: function (block, options) {
295
+ ...(Object.keys(css).length && {
296
+ css: (0, bindings_1.createSingleBinding)({ code: JSON.stringify(css) }),
297
+ }),
298
+ },
299
+ meta: (0, exports.getMetaFromBlock)(block, options),
300
+ children: !blocks
301
+ ? []
302
+ : [
303
+ (0, create_mitosis_node_1.createMitosisNode)({
304
+ // TODO: the Builder generator side of this converting to blocks
305
+ name: 'BuilderSymbolContents',
306
+ children: blocks.map((item) => (0, exports.builderElementToMitosisNode)(item, options)),
307
+ }),
308
+ ],
309
+ });
310
+ },
311
+ }),
312
+ Columns(block, options) {
303
313
  var _a, _b;
304
- var node = (0, exports.builderElementToMitosisNode)(block, options, {
314
+ const node = (0, exports.builderElementToMitosisNode)(block, options, {
305
315
  skipMapper: true,
306
316
  });
307
317
  delete node.bindings.columns;
308
318
  delete node.properties.columns;
309
319
  node.children =
310
- ((_b = (_a = block.component) === null || _a === void 0 ? void 0 : _a.options.columns) === null || _b === void 0 ? void 0 : _b.map(function (col, index) {
320
+ ((_b = (_a = block.component) === null || _a === void 0 ? void 0 : _a.options.columns) === null || _b === void 0 ? void 0 : _b.map((col, index) => {
311
321
  var _a;
312
- return (0, create_mitosis_node_1.createMitosisNode)(__assign(__assign({ name: 'Column', bindings: {
322
+ return (0, create_mitosis_node_1.createMitosisNode)({
323
+ name: 'Column',
324
+ bindings: {
313
325
  width: { code: (_a = col.width) === null || _a === void 0 ? void 0 : _a.toString() },
314
- } }, (col.link && {
315
- properties: {
316
- link: col.link,
317
326
  },
318
- })), { meta: (0, exports.getMetaFromBlock)(block, options), children: col.blocks.map(function (col) { return (0, exports.builderElementToMitosisNode)(col, options); }) }));
327
+ ...(col.link && {
328
+ properties: {
329
+ link: col.link,
330
+ },
331
+ }),
332
+ meta: (0, exports.getMetaFromBlock)(block, options),
333
+ children: col.blocks.map((col) => (0, exports.builderElementToMitosisNode)(col, options)),
334
+ });
319
335
  })) || [];
320
336
  return node;
321
- }, 'Shopify:For': function (block, options) {
337
+ },
338
+ 'Shopify:For': (block, options) => {
322
339
  return (0, create_mitosis_node_1.createMitosisNode)({
323
340
  name: 'For',
324
341
  bindings: {
325
342
  each: (0, bindings_1.createSingleBinding)({
326
- code: "state.".concat(block.component.options.repeat.collection),
343
+ code: `state.${block.component.options.repeat.collection}`,
327
344
  }),
328
345
  },
329
346
  scope: {
@@ -331,29 +348,37 @@ var componentMappers = __assign(__assign({ Symbol: function (block, options) {
331
348
  indexName: '$index',
332
349
  },
333
350
  meta: (0, exports.getMetaFromBlock)(block, options),
334
- children: (block.children || []).map(function (child) { return (0, exports.builderElementToMitosisNode)(child, options); }),
351
+ children: (block.children || []).map((child) => (0, exports.builderElementToMitosisNode)(child, options)),
335
352
  });
336
- }, Text: function (block, options) {
353
+ },
354
+ Text: (block, options) => {
337
355
  var _a;
338
- var _b;
339
- var css = getCssFromBlock(block);
340
- var styleString = getStyleStringFromBlock(block, options);
341
- var actionBindings = getActionBindingsFromBlock(block, options);
342
- var blockBindings = __assign(__assign({}, mapBuilderBindingsToMitosisBindingWithCode((_b = block.code) === null || _b === void 0 ? void 0 : _b.bindings)), mapBuilderBindingsToMitosisBindingWithCode(block.bindings));
343
- var bindings = __assign(__assign(__assign(__assign({}, (0, lodash_1.omitBy)(blockBindings, function (value, key) {
344
- if (key === 'component.options.text') {
345
- return true;
346
- }
347
- if (key && key.includes('style')) {
348
- return true;
349
- }
350
- return false;
351
- })), actionBindings), (styleString && {
352
- style: { code: styleString },
353
- })), (Object.keys(css).length && {
354
- css: { code: JSON.stringify(css) },
355
- }));
356
- var properties = __assign({}, block.properties);
356
+ let css = getCssFromBlock(block);
357
+ const styleString = getStyleStringFromBlock(block, options);
358
+ const actionBindings = getActionBindingsFromBlock(block, options);
359
+ const blockBindings = {
360
+ ...mapBuilderBindingsToMitosisBindingWithCode(block.bindings),
361
+ ...mapBuilderBindingsToMitosisBindingWithCode((_a = block.code) === null || _a === void 0 ? void 0 : _a.bindings),
362
+ };
363
+ const bindings = {
364
+ ...(0, lodash_1.omitBy)(blockBindings, (value, key) => {
365
+ if (key === 'component.options.text') {
366
+ return true;
367
+ }
368
+ if (key && key.includes('style')) {
369
+ return true;
370
+ }
371
+ return false;
372
+ }),
373
+ ...actionBindings,
374
+ ...(styleString && {
375
+ style: { code: styleString },
376
+ }),
377
+ ...(Object.keys(css).length && {
378
+ css: { code: JSON.stringify(css) },
379
+ }),
380
+ };
381
+ const properties = { ...block.properties };
357
382
  if (options.includeBuilderExtras && block.id)
358
383
  properties['builder-id'] = block.id;
359
384
  if (block.class)
@@ -361,39 +386,47 @@ var componentMappers = __assign(__assign({ Symbol: function (block, options) {
361
386
  if (block.layerName) {
362
387
  properties.$name = block.layerName;
363
388
  }
364
- var innerBindings = {};
365
- var componentOptionsText = blockBindings['component.options.text'];
389
+ const innerBindings = {};
390
+ const componentOptionsText = blockBindings['component.options.text'];
366
391
  if (componentOptionsText) {
367
392
  innerBindings[options.preserveTextBlocks ? 'innerHTML' : '_text'] = (0, bindings_1.createSingleBinding)({
368
393
  code: wrapBindingIfNeeded(componentOptionsText.code, options),
369
394
  });
370
395
  }
371
- var text = block.component.options.text;
372
- var innerProperties = (_a = {},
373
- _a[options.preserveTextBlocks ? 'innerHTML' : '_text'] = text,
374
- _a);
396
+ const text = block.component.options.text;
397
+ const innerProperties = innerBindings._text
398
+ ? {}
399
+ : {
400
+ [options.preserveTextBlocks ? 'innerHTML' : '_text']: text,
401
+ };
375
402
  if (options.preserveTextBlocks) {
376
403
  return (0, create_mitosis_node_1.createMitosisNode)({
377
404
  name: block.tagName || 'div',
378
- bindings: bindings,
379
- properties: properties,
405
+ bindings,
406
+ properties,
380
407
  meta: (0, exports.getMetaFromBlock)(block, options),
381
408
  children: [
382
409
  (0, create_mitosis_node_1.createMitosisNode)({
383
410
  bindings: innerBindings,
384
- properties: __assign(__assign({}, innerProperties), { class: 'builder-text' }),
411
+ properties: {
412
+ ...innerProperties,
413
+ class: 'builder-text',
414
+ },
385
415
  }),
386
416
  ],
387
417
  });
388
418
  }
389
419
  // Disabling for now
390
- var assumeLink = false;
391
- var finalProperties = __assign(__assign({}, (assumeLink
392
- ? {
393
- href: '...',
394
- }
395
- : {})), properties);
396
- var finalTagname = block.tagName || (assumeLink ? 'a' : 'div');
420
+ const assumeLink = false;
421
+ const finalProperties = {
422
+ ...(assumeLink
423
+ ? {
424
+ href: '...',
425
+ }
426
+ : {}),
427
+ ...properties,
428
+ };
429
+ const finalTagname = block.tagName || (assumeLink ? 'a' : 'div');
397
430
  if ((block.tagName && block.tagName !== 'div') ||
398
431
  hasStyles(block) ||
399
432
  hasComponent(block) ||
@@ -401,7 +434,7 @@ var componentMappers = __assign(__assign({ Symbol: function (block, options) {
401
434
  hasProperties(block)) {
402
435
  return (0, create_mitosis_node_1.createMitosisNode)({
403
436
  name: finalTagname,
404
- bindings: bindings,
437
+ bindings,
405
438
  properties: finalProperties,
406
439
  meta: (0, exports.getMetaFromBlock)(block, options),
407
440
  children: [
@@ -414,52 +447,58 @@ var componentMappers = __assign(__assign({ Symbol: function (block, options) {
414
447
  }
415
448
  return (0, create_mitosis_node_1.createMitosisNode)({
416
449
  name: finalTagname,
417
- properties: __assign(__assign(__assign({}, finalProperties), properties), innerProperties),
418
- bindings: __assign(__assign({}, bindings), innerBindings),
450
+ properties: {
451
+ ...finalProperties,
452
+ ...properties,
453
+ ...innerProperties,
454
+ },
455
+ bindings: {
456
+ ...bindings,
457
+ ...innerBindings,
458
+ },
419
459
  meta: (0, exports.getMetaFromBlock)(block, options),
420
460
  });
421
- } });
422
- var builderElementToMitosisNode = function (block, options, _internalOptions) {
423
- var _a;
424
- var _b, _c, _d, _e, _f, _g, _h, _j, _k, _l, _m, _o, _p, _q, _r, _s, _t, _u, _v, _w;
425
- if (_internalOptions === void 0) { _internalOptions = {}; }
426
- var _x = options.includeSpecialBindings, includeSpecialBindings = _x === void 0 ? true : _x;
427
- if (((_b = block.component) === null || _b === void 0 ? void 0 : _b.name) === 'Core:Fragment') {
461
+ },
462
+ };
463
+ const builderElementToMitosisNode = (block, options, _internalOptions = {}) => {
464
+ var _a, _b, _c, _d, _e, _f, _g, _h, _j, _k, _l, _m, _o, _p, _q, _r, _s, _t, _u, _v;
465
+ const { includeSpecialBindings = true } = options;
466
+ if (((_a = block.component) === null || _a === void 0 ? void 0 : _a.name) === 'Core:Fragment') {
428
467
  block.component.name = 'Fragment';
429
468
  }
430
- var forBinding = (_c = block.repeat) === null || _c === void 0 ? void 0 : _c.collection;
469
+ const forBinding = (_b = block.repeat) === null || _b === void 0 ? void 0 : _b.collection;
431
470
  if (forBinding) {
432
- var isFragment = ((_d = block.component) === null || _d === void 0 ? void 0 : _d.name) === 'Fragment';
471
+ const isFragment = ((_c = block.component) === null || _c === void 0 ? void 0 : _c.name) === 'Fragment';
433
472
  // TODO: handle having other things, like a repeat too
434
473
  if (isFragment) {
435
474
  return (0, create_mitosis_node_1.createMitosisNode)({
436
475
  name: 'For',
437
476
  bindings: {
438
477
  each: (0, bindings_1.createSingleBinding)({
439
- code: wrapBindingIfNeeded((_e = block.repeat) === null || _e === void 0 ? void 0 : _e.collection, options),
478
+ code: wrapBindingIfNeeded((_d = block.repeat) === null || _d === void 0 ? void 0 : _d.collection, options),
440
479
  }),
441
480
  },
442
481
  scope: {
443
- forName: ((_f = block.repeat) === null || _f === void 0 ? void 0 : _f.itemName) || 'item',
482
+ forName: ((_e = block.repeat) === null || _e === void 0 ? void 0 : _e.itemName) || 'item',
444
483
  indexName: '$index',
445
484
  },
446
485
  meta: (0, exports.getMetaFromBlock)(block, options),
447
- children: ((_g = block.children) === null || _g === void 0 ? void 0 : _g.map(function (child) { return (0, exports.builderElementToMitosisNode)(child, options); })) || [],
486
+ children: ((_f = block.children) === null || _f === void 0 ? void 0 : _f.map((child) => (0, exports.builderElementToMitosisNode)(child, options))) || [],
448
487
  });
449
488
  }
450
489
  else {
451
- var useBlock = ((_h = block.component) === null || _h === void 0 ? void 0 : _h.name) === 'Core:Fragment' && ((_j = block.children) === null || _j === void 0 ? void 0 : _j.length) === 1
490
+ const useBlock = ((_g = block.component) === null || _g === void 0 ? void 0 : _g.name) === 'Core:Fragment' && ((_h = block.children) === null || _h === void 0 ? void 0 : _h.length) === 1
452
491
  ? block.children[0]
453
492
  : block;
454
493
  return (0, create_mitosis_node_1.createMitosisNode)({
455
494
  name: 'For',
456
495
  bindings: {
457
496
  each: (0, bindings_1.createSingleBinding)({
458
- code: wrapBindingIfNeeded((_k = block.repeat) === null || _k === void 0 ? void 0 : _k.collection, options),
497
+ code: wrapBindingIfNeeded((_j = block.repeat) === null || _j === void 0 ? void 0 : _j.collection, options),
459
498
  }),
460
499
  },
461
500
  scope: {
462
- forName: ((_l = block.repeat) === null || _l === void 0 ? void 0 : _l.itemName) || 'item',
501
+ forName: ((_k = block.repeat) === null || _k === void 0 ? void 0 : _k.itemName) || 'item',
463
502
  indexName: '$index',
464
503
  },
465
504
  meta: (0, exports.getMetaFromBlock)(block, options),
@@ -469,77 +508,92 @@ var builderElementToMitosisNode = function (block, options, _internalOptions) {
469
508
  }
470
509
  // Special builder properties
471
510
  // TODO: support hide and repeat
472
- var blockBindings = getBlockBindings(block, options);
473
- var code = undefined;
511
+ const blockBindings = getBlockBindings(block, options);
512
+ let code = undefined;
474
513
  if (blockBindings.show) {
475
514
  code = wrapBindingIfNeeded(blockBindings.show, options);
476
515
  }
477
516
  else if (blockBindings.hide) {
478
- code = "!(".concat(wrapBindingIfNeeded(blockBindings.hide, options), ")");
517
+ code = `!(${wrapBindingIfNeeded(blockBindings.hide, options)})`;
479
518
  }
480
519
  if (code) {
481
- var isFragment = ((_m = block.component) === null || _m === void 0 ? void 0 : _m.name) === 'Fragment';
520
+ const isFragment = ((_l = block.component) === null || _l === void 0 ? void 0 : _l.name) === 'Fragment';
482
521
  // TODO: handle having other things, like a repeat too
483
522
  if (isFragment) {
484
523
  return (0, create_mitosis_node_1.createMitosisNode)({
485
524
  name: 'Show',
486
- bindings: { when: (0, bindings_1.createSingleBinding)({ code: code }) },
525
+ bindings: { when: (0, bindings_1.createSingleBinding)({ code }) },
487
526
  meta: (0, exports.getMetaFromBlock)(block, options),
488
- children: ((_o = block.children) === null || _o === void 0 ? void 0 : _o.map(function (child) { return (0, exports.builderElementToMitosisNode)(child, options); })) || [],
527
+ children: ((_m = block.children) === null || _m === void 0 ? void 0 : _m.map((child) => (0, exports.builderElementToMitosisNode)(child, options))) || [],
489
528
  });
490
529
  }
491
530
  else {
492
531
  return (0, create_mitosis_node_1.createMitosisNode)({
493
532
  name: 'Show',
494
- bindings: { when: (0, bindings_1.createSingleBinding)({ code: code }) },
533
+ bindings: { when: (0, bindings_1.createSingleBinding)({ code }) },
495
534
  meta: (0, exports.getMetaFromBlock)(block, options),
496
535
  children: [
497
- (0, exports.builderElementToMitosisNode)(__assign(__assign({}, block), { code: __assign(__assign({}, block.code), { bindings: (0, lodash_1.omit)(blockBindings, 'show', 'hide') }), bindings: (0, lodash_1.omit)(blockBindings, 'show', 'hide') }), options),
536
+ (0, exports.builderElementToMitosisNode)({
537
+ ...block,
538
+ code: {
539
+ ...block.code,
540
+ bindings: (0, lodash_1.omit)(blockBindings, 'show', 'hide'),
541
+ },
542
+ bindings: (0, lodash_1.omit)(blockBindings, 'show', 'hide'),
543
+ }, options),
498
544
  ],
499
545
  });
500
546
  }
501
547
  }
502
- var mapper = !_internalOptions.skipMapper && block.component && componentMappers[block.component.name];
548
+ const mapper = !_internalOptions.skipMapper && block.component && componentMappers[block.component.name];
503
549
  if (mapper) {
504
550
  return mapper(block, options);
505
551
  }
506
- var bindings = {};
507
- var children = [];
508
- var slots = {};
552
+ const bindings = {};
553
+ const children = [];
554
+ const slots = {};
509
555
  if (blockBindings) {
510
- for (var key in blockBindings) {
556
+ for (const key in blockBindings) {
511
557
  if (key === 'css') {
512
558
  continue;
513
559
  }
514
- var useKey = key.replace(/^(component\.)?options\./, '');
560
+ const useKey = key.replace(/^(component\.)?options\./, '');
515
561
  if (!useKey.includes('.')) {
516
562
  bindings[useKey] = (0, bindings_1.createSingleBinding)({
517
563
  code: blockBindings[key].code || blockBindings[key],
518
564
  });
519
565
  }
520
566
  else if (useKey.includes('style') && useKey.includes('.')) {
521
- var styleProperty = useKey.split('.')[1];
567
+ const styleProperty = useKey.split('.')[1];
522
568
  // TODO: add me in
523
569
  // styleBindings[styleProperty] =
524
570
  // block.code?.bindings?.[key] || blockBindings[key];
525
571
  }
526
572
  }
527
573
  }
528
- var properties = __assign(__assign(__assign({}, block.properties), (options.includeBuilderExtras && (_a = {},
529
- _a['builder-id'] = block.id,
530
- _a))), (options.includeBuilderExtras && getBuilderPropsForSymbol(block)));
574
+ const properties = {
575
+ ...block.properties,
576
+ ...(options.includeBuilderExtras && {
577
+ ['builder-id']: block.id,
578
+ // class: `builder-block ${block.id} ${block.properties?.class || ''}`,
579
+ }),
580
+ ...(options.includeBuilderExtras && getBuilderPropsForSymbol(block)),
581
+ };
531
582
  if (block.layerName) {
532
583
  properties.$name = block.layerName;
533
584
  }
534
585
  if (block.linkUrl) {
535
586
  properties.href = block.linkUrl;
536
587
  }
537
- if ((_p = block.component) === null || _p === void 0 ? void 0 : _p.options) {
538
- for (var key in block.component.options) {
539
- var value = block.component.options[key];
540
- var valueIsArrayOfBuilderElements = Array.isArray(value) && value.every(exports.isBuilderElement);
541
- var transformBldrElementToMitosisNode = function (item) {
542
- var node = (0, exports.builderElementToMitosisNode)(item, __assign(__assign({}, options), { includeSpecialBindings: false }));
588
+ if ((_o = block.component) === null || _o === void 0 ? void 0 : _o.options) {
589
+ for (const key in block.component.options) {
590
+ const value = block.component.options[key];
591
+ const valueIsArrayOfBuilderElements = Array.isArray(value) && value.every(exports.isBuilderElement);
592
+ const transformBldrElementToMitosisNode = (item) => {
593
+ const node = (0, exports.builderElementToMitosisNode)(item, {
594
+ ...options,
595
+ includeSpecialBindings: false,
596
+ });
543
597
  return node;
544
598
  };
545
599
  if ((0, exports.isBuilderElement)(value)) {
@@ -549,8 +603,8 @@ var builderElementToMitosisNode = function (block, options, _internalOptions) {
549
603
  properties[key] = value;
550
604
  }
551
605
  else if (valueIsArrayOfBuilderElements) {
552
- var childrenElements = value
553
- .filter(function (item) {
606
+ const childrenElements = value
607
+ .filter((item) => {
554
608
  var _a, _b;
555
609
  if ((_b = (_a = item.properties) === null || _a === void 0 ? void 0 : _a.src) === null || _b === void 0 ? void 0 : _b.includes('/api/v1/pixel')) {
556
610
  return false;
@@ -568,41 +622,52 @@ var builderElementToMitosisNode = function (block, options, _internalOptions) {
568
622
  if (block.component && block.tagName && block.tagName !== 'div') {
569
623
  properties.builderTag = block.tagName;
570
624
  }
571
- var css = getCssFromBlock(block);
572
- var styleString = getStyleStringFromBlock(block, options);
573
- var actionBindings = getActionBindingsFromBlock(block, options);
574
- for (var binding in blockBindings) {
625
+ const css = getCssFromBlock(block);
626
+ let styleString = getStyleStringFromBlock(block, options);
627
+ const actionBindings = getActionBindingsFromBlock(block, options);
628
+ for (const binding in blockBindings) {
575
629
  if (binding.startsWith('component.options') || binding.startsWith('options')) {
576
- var value = blockBindings[binding];
577
- var useKey = binding.replace(/^(component\.options\.|options\.)/, '');
630
+ const value = blockBindings[binding];
631
+ const useKey = binding.replace(/^(component\.options\.|options\.)/, '');
578
632
  bindings[useKey] = (0, bindings_1.createSingleBinding)({ code: value });
579
633
  }
580
634
  }
581
- var node = (0, create_mitosis_node_1.createMitosisNode)({
582
- name: ((_r = (_q = block.component) === null || _q === void 0 ? void 0 : _q.name) === null || _r === void 0 ? void 0 : _r.replace(/[^a-z0-9]/gi, '')) ||
635
+ const node = (0, create_mitosis_node_1.createMitosisNode)({
636
+ name: ((_q = (_p = block.component) === null || _p === void 0 ? void 0 : _p.name) === null || _q === void 0 ? void 0 : _q.replace(/[^a-z0-9]/gi, '')) ||
583
637
  block.tagName ||
584
638
  (block.linkUrl ? 'a' : 'div'),
585
- properties: __assign(__assign(__assign({}, (block.component && includeSpecialBindings && { $tagName: block.tagName })), (block.class && { class: block.class })), properties),
586
- bindings: __assign(__assign(__assign(__assign({}, bindings), actionBindings), (styleString && {
587
- style: (0, bindings_1.createSingleBinding)({ code: styleString }),
588
- })), (css &&
589
- Object.keys(css).length && {
590
- css: (0, bindings_1.createSingleBinding)({ code: JSON.stringify(css) }),
591
- })),
592
- slots: __assign({}, slots),
639
+ properties: {
640
+ ...(block.component && includeSpecialBindings && { $tagName: block.tagName }),
641
+ ...(block.class && { class: block.class }),
642
+ ...properties,
643
+ },
644
+ bindings: {
645
+ ...bindings,
646
+ ...actionBindings,
647
+ ...(styleString && {
648
+ style: (0, bindings_1.createSingleBinding)({ code: styleString }),
649
+ }),
650
+ ...(css &&
651
+ Object.keys(css).length && {
652
+ css: (0, bindings_1.createSingleBinding)({ code: JSON.stringify(css) }),
653
+ }),
654
+ },
655
+ slots: {
656
+ ...slots,
657
+ },
593
658
  meta: (0, exports.getMetaFromBlock)(block, options),
594
659
  });
595
660
  // Has single text node child
596
- var firstChild = (_s = block.children) === null || _s === void 0 ? void 0 : _s[0];
597
- if (((_t = block.children) === null || _t === void 0 ? void 0 : _t.length) === 1 &&
598
- ((_u = firstChild === null || firstChild === void 0 ? void 0 : firstChild.component) === null || _u === void 0 ? void 0 : _u.name) === 'Text' &&
661
+ const firstChild = (_r = block.children) === null || _r === void 0 ? void 0 : _r[0];
662
+ if (((_s = block.children) === null || _s === void 0 ? void 0 : _s.length) === 1 &&
663
+ ((_t = firstChild === null || firstChild === void 0 ? void 0 : firstChild.component) === null || _t === void 0 ? void 0 : _t.name) === 'Text' &&
599
664
  !options.preserveTextBlocks) {
600
- var textProperties = (0, exports.builderElementToMitosisNode)(firstChild, options);
601
- var parsedNodeCss = json5_1.default.parse(((_v = node.bindings.css) === null || _v === void 0 ? void 0 : _v.code) || '{}');
602
- var parsedTextCss = json5_1.default.parse(((_w = textProperties.bindings.css) === null || _w === void 0 ? void 0 : _w.code) || '{}');
603
- var mergedCss = combineStyles(parsedNodeCss, parsedTextCss);
665
+ const textProperties = (0, exports.builderElementToMitosisNode)(firstChild, options);
666
+ const parsedNodeCss = json5_1.default.parse(((_u = node.bindings.css) === null || _u === void 0 ? void 0 : _u.code) || '{}');
667
+ const parsedTextCss = json5_1.default.parse(((_v = textProperties.bindings.css) === null || _v === void 0 ? void 0 : _v.code) || '{}');
668
+ const mergedCss = combineStyles(parsedNodeCss, parsedTextCss);
604
669
  // Don't merge if text has styling that matters
605
- var doNotMerge =
670
+ const doNotMerge =
606
671
  // Text has flex alignment
607
672
  ['end', 'right', 'center'].includes(parsedTextCss.alignSelf) ||
608
673
  // Text has specific styling
@@ -611,42 +676,51 @@ var builderElementToMitosisNode = function (block, options, _internalOptions) {
611
676
  parsedTextCss.background;
612
677
  if (!doNotMerge) {
613
678
  return (0, lodash_1.merge)({}, textProperties, node, {
614
- bindings: __assign({}, (Object.keys(mergedCss).length && {
615
- css: { code: json5_1.default.stringify(mergedCss) },
616
- })),
679
+ bindings: {
680
+ ...(Object.keys(mergedCss).length && {
681
+ css: { code: json5_1.default.stringify(mergedCss) },
682
+ }),
683
+ },
617
684
  });
618
685
  }
619
686
  }
620
- node.children = children.concat((block.children || []).map(function (item) { return (0, exports.builderElementToMitosisNode)(item, options); }));
687
+ node.children = children.concat((block.children || []).map((item) => (0, exports.builderElementToMitosisNode)(item, options)));
621
688
  return node;
622
689
  };
623
690
  exports.builderElementToMitosisNode = builderElementToMitosisNode;
624
- var getBuilderPropsForSymbol = function (block) {
691
+ const getBuilderPropsForSymbol = (block) => {
625
692
  var _a, _b;
626
693
  if (((_a = block.children) === null || _a === void 0 ? void 0 : _a.length) === 1) {
627
- var child = block.children[0];
628
- var builderContentId = (_b = child.properties) === null || _b === void 0 ? void 0 : _b['builder-content-id'];
694
+ const child = block.children[0];
695
+ const builderContentId = (_b = child.properties) === null || _b === void 0 ? void 0 : _b['builder-content-id'];
629
696
  if (builderContentId) {
630
697
  return { 'builder-content-id': builderContentId };
631
698
  }
632
699
  }
633
700
  return undefined;
634
701
  };
635
- var getMetaFromBlock = function (block, options) {
636
- var _a = options.includeMeta, includeMeta = _a === void 0 ? false : _a;
702
+ const getMetaFromBlock = (block, options) => {
703
+ const { includeMeta = false } = options;
637
704
  return includeMeta
638
- ? __assign({ 'builder-id': block.id }, block.meta) : {};
705
+ ? {
706
+ 'builder-id': block.id,
707
+ ...block.meta,
708
+ }
709
+ : {};
639
710
  };
640
711
  exports.getMetaFromBlock = getMetaFromBlock;
641
- var getHooks = function (content) {
712
+ const getHooks = (content) => {
642
713
  var _a, _b;
643
- var code = convertExportDefaultToReturn(((_a = content.data) === null || _a === void 0 ? void 0 : _a.tsCode) || ((_b = content.data) === null || _b === void 0 ? void 0 : _b.jsCode) || '');
714
+ const code = convertExportDefaultToReturn(((_a = content.data) === null || _a === void 0 ? void 0 : _a.tsCode) || ((_b = content.data) === null || _b === void 0 ? void 0 : _b.jsCode) || '');
644
715
  try {
645
- return (0, jsx_1.parseJsx)("\n export default function TemporaryComponent() {\n ".concat(
646
- // Mitosis parser looks for useState to be a variable assignment,
716
+ return (0, jsx_1.parseJsx)(`
717
+ export default function TemporaryComponent() {
718
+ ${
719
+ // Mitosis parser looks for useStore to be a variable assignment,
647
720
  // but in Builder that's not how it works. For now do a replace to
648
721
  // easily resuse the same parsing code as this is the only difference
649
- code.replace("useState(", "var state = useState("), "\n }"));
722
+ code.replace(`useStore(`, `var state = useStore(`)}
723
+ }`);
650
724
  }
651
725
  catch (err) {
652
726
  console.warn('Could not parse js code as a Mitosis component body', err, code);
@@ -654,23 +728,23 @@ var getHooks = function (content) {
654
728
  }
655
729
  };
656
730
  /**
657
- * Take Builder custom jsCode and extract the contents of the useState hook
731
+ * Take Builder custom jsCode and extract the contents of the useStore hook
658
732
  * and return it as a JS object along with the inputted code with the hook
659
733
  * code extracted
660
734
  */
661
735
  function extractStateHook(code) {
662
- var types = babel.types;
663
- var state = {};
664
- var body = (0, parsers_1.parseCode)(code);
665
- var newBody = body.slice();
666
- for (var i = 0; i < body.length; i++) {
667
- var statement = body[i];
736
+ const { types } = babel;
737
+ let state = {};
738
+ const body = (0, parsers_1.parseCode)(code);
739
+ const newBody = body.slice();
740
+ for (let i = 0; i < body.length; i++) {
741
+ const statement = body[i];
668
742
  if (types.isExpressionStatement(statement)) {
669
- var expression = statement.expression;
670
- // Check for useState
743
+ const { expression } = statement;
744
+ // Check for useStore
671
745
  if (types.isCallExpression(expression)) {
672
- if (types.isIdentifier(expression.callee) && expression.callee.name === 'useState') {
673
- var arg = expression.arguments[0];
746
+ if (types.isIdentifier(expression.callee) && expression.callee.name === 'useStore') {
747
+ const arg = expression.arguments[0];
674
748
  if (types.isObjectExpression(arg)) {
675
749
  state = (0, state_1.parseStateObjectToMitosisState)(arg);
676
750
  newBody.splice(i, 1);
@@ -681,7 +755,7 @@ function extractStateHook(code) {
681
755
  expression.callee.object.name === 'Object') {
682
756
  if (types.isIdentifier(expression.callee.property) &&
683
757
  expression.callee.property.name === 'assign') {
684
- var arg = expression.arguments[1];
758
+ const arg = expression.arguments[1];
685
759
  if (types.isObjectExpression(arg)) {
686
760
  state = (0, state_1.parseStateObjectToMitosisState)(arg);
687
761
  newBody.splice(i, 1);
@@ -692,17 +766,17 @@ function extractStateHook(code) {
692
766
  }
693
767
  }
694
768
  }
695
- var newCode = (0, generator_1.default)(types.program(newBody)).code || '';
696
- return { code: newCode, state: state };
769
+ const newCode = (0, generator_1.default)(types.program(newBody)).code || '';
770
+ return { code: newCode, state };
697
771
  }
698
772
  exports.extractStateHook = extractStateHook;
699
773
  function convertExportDefaultToReturn(code) {
700
774
  try {
701
- var types = babel.types;
702
- var body = (0, parsers_1.parseCode)(code);
703
- var newBody = body.slice();
704
- for (var i = 0; i < body.length; i++) {
705
- var statement = body[i];
775
+ const { types } = babel;
776
+ const body = (0, parsers_1.parseCode)(code);
777
+ const newBody = body.slice();
778
+ for (let i = 0; i < body.length; i++) {
779
+ const statement = body[i];
706
780
  if (types.isExportDefaultDeclaration(statement)) {
707
781
  if (types.isCallExpression(statement.declaration) ||
708
782
  types.isExpression(statement.declaration)) {
@@ -713,7 +787,7 @@ function convertExportDefaultToReturn(code) {
713
787
  return (0, generator_1.default)(types.program(newBody)).code || '';
714
788
  }
715
789
  catch (e) {
716
- var error = e;
790
+ const error = e;
717
791
  if (error.code === 'BABEL_PARSE_ERROR') {
718
792
  return code;
719
793
  }
@@ -726,8 +800,8 @@ exports.convertExportDefaultToReturn = convertExportDefaultToReturn;
726
800
  // TODO: maybe this should be part of the builder -> Mitosis part
727
801
  function extractSymbols(json) {
728
802
  var _a, _b, _c, _d;
729
- var subComponents = [];
730
- var symbols = [];
803
+ const subComponents = [];
804
+ const symbols = [];
731
805
  (0, legacy_1.default)(json).forEach(function (item) {
732
806
  var _a;
733
807
  if ((0, exports.isBuilderElement)(item)) {
@@ -736,14 +810,13 @@ function extractSymbols(json) {
736
810
  }
737
811
  }
738
812
  });
739
- var symbolsSortedDeepestFirst = (0, lodash_1.sortBy)(symbols, function (info) { return info.depth; })
813
+ const symbolsSortedDeepestFirst = (0, lodash_1.sortBy)(symbols, (info) => info.depth)
740
814
  .reverse()
741
- .map(function (el) { return el.element; });
742
- var symbolsFound = 0;
743
- for (var _i = 0, symbolsSortedDeepestFirst_1 = symbolsSortedDeepestFirst; _i < symbolsSortedDeepestFirst_1.length; _i++) {
744
- var el = symbolsSortedDeepestFirst_1[_i];
745
- var symbolValue = (_b = (_a = el.component) === null || _a === void 0 ? void 0 : _a.options) === null || _b === void 0 ? void 0 : _b.symbol;
746
- var elContent = symbolValue === null || symbolValue === void 0 ? void 0 : symbolValue.content;
815
+ .map((el) => el.element);
816
+ let symbolsFound = 0;
817
+ for (const el of symbolsSortedDeepestFirst) {
818
+ const symbolValue = (_b = (_a = el.component) === null || _a === void 0 ? void 0 : _a.options) === null || _b === void 0 ? void 0 : _b.symbol;
819
+ const elContent = symbolValue === null || symbolValue === void 0 ? void 0 : symbolValue.content;
747
820
  if (!elContent) {
748
821
  console.warn('Symbol missing content', el.id);
749
822
  if ((_c = el.component) === null || _c === void 0 ? void 0 : _c.options.symbol.content) {
@@ -751,7 +824,7 @@ function extractSymbols(json) {
751
824
  }
752
825
  continue;
753
826
  }
754
- var componentName = 'Symbol' + ++symbolsFound;
827
+ const componentName = 'Symbol' + ++symbolsFound;
755
828
  el.component.name = componentName;
756
829
  if ((_d = el.component) === null || _d === void 0 ? void 0 : _d.options.symbol.content) {
757
830
  delete el.component.options.symbol.content;
@@ -763,18 +836,19 @@ function extractSymbols(json) {
763
836
  }
764
837
  return {
765
838
  content: json,
766
- subComponents: subComponents,
839
+ subComponents,
767
840
  };
768
841
  }
769
- var createBuilderElement = function (options) { return (__assign({ '@type': '@builder.io/sdk:Element', id: 'builder-' + (0, symbol_processor_1.hashCodeAsString)(options) }, options)); };
842
+ const createBuilderElement = (options) => ({
843
+ '@type': '@builder.io/sdk:Element',
844
+ id: 'builder-' + (0, symbol_processor_1.hashCodeAsString)(options),
845
+ ...options,
846
+ });
770
847
  exports.createBuilderElement = createBuilderElement;
771
- var isBuilderElement = function (el) {
772
- return (el === null || el === void 0 ? void 0 : el['@type']) === '@builder.io/sdk:Element';
773
- };
848
+ const isBuilderElement = (el) => (el === null || el === void 0 ? void 0 : el['@type']) === '@builder.io/sdk:Element';
774
849
  exports.isBuilderElement = isBuilderElement;
775
- var builderContentPartToMitosisComponent = function (builderContent, options) {
850
+ const builderContentPartToMitosisComponent = (builderContent, options = {}) => {
776
851
  var _a, _b, _c, _d, _e, _f, _g, _h;
777
- if (options === void 0) { options = {}; }
778
852
  builderContent = (0, fast_clone_1.fastClone)(builderContent);
779
853
  (0, legacy_1.default)(builderContent).forEach(function (elem) {
780
854
  var _a, _b;
@@ -783,7 +857,7 @@ var builderContentPartToMitosisComponent = function (builderContent, options) {
783
857
  // blocks can contain arbitrary HTML
784
858
  // List taken from https://developer.mozilla.org/en-US/docs/Glossary/Empty_element
785
859
  // TODO: Maybe this should be using something more robust than a regular expression
786
- var voidElemRegex = /(<area|base|br|col|embed|hr|img|input|keygen|link|meta|param|source|track|wbr[^>]+)>/gm;
860
+ const voidElemRegex = /(<area|base|br|col|embed|hr|img|input|keygen|link|meta|param|source|track|wbr[^>]+)>/gm;
787
861
  try {
788
862
  if (((_a = elem.component) === null || _a === void 0 ? void 0 : _a.name) === 'Text') {
789
863
  elem.component.options.text = elem.component.options.text.replace(voidElemRegex, '$1 />');
@@ -802,54 +876,67 @@ var builderContentPartToMitosisComponent = function (builderContent, options) {
802
876
  }
803
877
  }
804
878
  });
805
- var _j = extractStateHook(((_a = builderContent === null || builderContent === void 0 ? void 0 : builderContent.data) === null || _a === void 0 ? void 0 : _a.tsCode) || ((_b = builderContent === null || builderContent === void 0 ? void 0 : builderContent.data) === null || _b === void 0 ? void 0 : _b.jsCode) || ''), state = _j.state, code = _j.code;
806
- var customCode = convertExportDefaultToReturn(code);
807
- var parsed = getHooks(builderContent);
808
- var parsedState = (parsed === null || parsed === void 0 ? void 0 : parsed.state) || {};
809
- var mitosisState = Object.keys(parsedState).length > 0
879
+ const { state, code } = extractStateHook(((_a = builderContent === null || builderContent === void 0 ? void 0 : builderContent.data) === null || _a === void 0 ? void 0 : _a.tsCode) || ((_b = builderContent === null || builderContent === void 0 ? void 0 : builderContent.data) === null || _b === void 0 ? void 0 : _b.jsCode) || '');
880
+ const customCode = convertExportDefaultToReturn(code);
881
+ const parsed = getHooks(builderContent);
882
+ const parsedState = (parsed === null || parsed === void 0 ? void 0 : parsed.state) || {};
883
+ const mitosisState = Object.keys(parsedState).length > 0
810
884
  ? parsedState
811
- : __assign(__assign({}, state), (0, helpers_1.mapBuilderContentStateToMitosisState)(((_c = builderContent.data) === null || _c === void 0 ? void 0 : _c.state) || {}));
812
- var componentJson = (0, create_mitosis_component_1.createMitosisComponent)({
813
- meta: __assign({ useMetadata: {
885
+ : {
886
+ ...state,
887
+ ...(0, helpers_1.mapBuilderContentStateToMitosisState)(((_c = builderContent.data) === null || _c === void 0 ? void 0 : _c.state) || {}),
888
+ };
889
+ const componentJson = (0, create_mitosis_component_1.createMitosisComponent)({
890
+ meta: {
891
+ useMetadata: {
814
892
  httpRequests: (_d = builderContent.data) === null || _d === void 0 ? void 0 : _d.httpRequests,
815
- } }, (((_e = builderContent.data) === null || _e === void 0 ? void 0 : _e.cssCode) && { cssCode: builderContent.data.cssCode })),
816
- inputs: (_g = (_f = builderContent.data) === null || _f === void 0 ? void 0 : _f.inputs) === null || _g === void 0 ? void 0 : _g.map(function (input) { return ({
893
+ },
894
+ ...(((_e = builderContent.data) === null || _e === void 0 ? void 0 : _e.cssCode) && { cssCode: builderContent.data.cssCode }),
895
+ },
896
+ inputs: (_g = (_f = builderContent.data) === null || _f === void 0 ? void 0 : _f.inputs) === null || _g === void 0 ? void 0 : _g.map((input) => ({
817
897
  name: input.name,
818
898
  defaultValue: input.defaultValue,
819
- }); }),
899
+ })),
820
900
  state: mitosisState,
821
901
  hooks: {
822
- onMount: __spreadArray([], ((parsed === null || parsed === void 0 ? void 0 : parsed.hooks.onMount.length)
823
- ? parsed === null || parsed === void 0 ? void 0 : parsed.hooks.onMount
824
- : customCode
825
- ? [{ code: customCode }]
826
- : []), true),
902
+ onMount: [
903
+ ...((parsed === null || parsed === void 0 ? void 0 : parsed.hooks.onMount.length)
904
+ ? parsed === null || parsed === void 0 ? void 0 : parsed.hooks.onMount
905
+ : customCode
906
+ ? [{ code: customCode }]
907
+ : []),
908
+ ],
827
909
  },
828
910
  children: (((_h = builderContent.data) === null || _h === void 0 ? void 0 : _h.blocks) || [])
829
- .filter(function (item) {
911
+ .filter((item) => {
830
912
  var _a, _b;
831
913
  if ((_b = (_a = item.properties) === null || _a === void 0 ? void 0 : _a.src) === null || _b === void 0 ? void 0 : _b.includes('/api/v1/pixel')) {
832
914
  return false;
833
915
  }
834
916
  return true;
835
917
  })
836
- .map(function (item) { return (0, exports.builderElementToMitosisNode)(item, options); }),
918
+ .map((item) => (0, exports.builderElementToMitosisNode)(item, options)),
837
919
  });
838
920
  return componentJson;
839
921
  };
840
- var builderContentToMitosisComponent = function (builderContent, options) {
841
- if (options === void 0) { options = {}; }
922
+ const builderContentToMitosisComponent = (builderContent, options = {}) => {
842
923
  builderContent = (0, fast_clone_1.fastClone)(builderContent);
843
- var separated = extractSymbols(builderContent);
844
- var componentJson = __assign(__assign({}, builderContentPartToMitosisComponent(separated.content, options)), { subComponents: separated.subComponents.map(function (item) { return (__assign(__assign({}, builderContentPartToMitosisComponent(item.content, options)), { name: item.name })); }) });
924
+ const separated = extractSymbols(builderContent);
925
+ const componentJson = {
926
+ ...builderContentPartToMitosisComponent(separated.content, options),
927
+ subComponents: separated.subComponents.map((item) => ({
928
+ ...builderContentPartToMitosisComponent(item.content, options),
929
+ name: item.name,
930
+ })),
931
+ };
845
932
  return componentJson;
846
933
  };
847
934
  exports.builderContentToMitosisComponent = builderContentToMitosisComponent;
848
935
  function mapBuilderBindingsToMitosisBindingWithCode(bindings) {
849
- var result = {};
936
+ const result = {};
850
937
  bindings &&
851
- Object.keys(bindings).forEach(function (key) {
852
- var value = bindings[key];
938
+ Object.keys(bindings).forEach((key) => {
939
+ const value = bindings[key];
853
940
  if (typeof value === 'string') {
854
941
  result[key] = (0, bindings_1.createSingleBinding)({ code: value });
855
942
  }
@@ -863,29 +950,30 @@ function mapBuilderBindingsToMitosisBindingWithCode(bindings) {
863
950
  return result;
864
951
  }
865
952
  function removeFalsey(obj) {
866
- return (0, lodash_1.omitBy)(obj, function (value) { return !value || value === '0' || value === '0px' || value === 'none' || value === '0%'; });
953
+ return (0, lodash_1.omitBy)(obj, (value) => !value || value === '0' || value === '0px' || value === 'none' || value === '0%');
867
954
  }
868
955
  function combineStyles(parent, child) {
869
- var marginStyles = ['marginTop', 'marginBottom', 'marginLeft', 'marginRight'];
870
- var paddingStyles = ['paddingTop', 'paddingBottom', 'paddingLeft', 'paddingRight'];
871
- var distanceStylesToCombine = __spreadArray(__spreadArray([], paddingStyles, true), marginStyles, true);
872
- var merged = __assign(__assign({}, (0, lodash_1.omit)(removeFalsey(child), distanceStylesToCombine)), removeFalsey(parent));
873
- for (var _i = 0, distanceStylesToCombine_1 = distanceStylesToCombine; _i < distanceStylesToCombine_1.length; _i++) {
874
- var key = distanceStylesToCombine_1[_i];
956
+ const marginStyles = ['marginTop', 'marginBottom', 'marginLeft', 'marginRight'];
957
+ const paddingStyles = ['paddingTop', 'paddingBottom', 'paddingLeft', 'paddingRight'];
958
+ const distanceStylesToCombine = [...paddingStyles, ...marginStyles];
959
+ const merged = {
960
+ ...(0, lodash_1.omit)(removeFalsey(child), distanceStylesToCombine),
961
+ ...removeFalsey(parent),
962
+ };
963
+ for (const key of distanceStylesToCombine) {
875
964
  // Funky things happen if different alignment
876
965
  if (parent.alignSelf !== child.alignSelf && (key === 'marginLeft' || key === 'marginRight')) {
877
966
  merged[key] = parent[key];
878
967
  continue;
879
968
  }
880
- var childNum = parseFloat(child[key]) || 0;
881
- var parentKeyToUse = key.replace(/margin/, 'padding');
882
- var parentNum = parseFloat(parent[parentKeyToUse]) || 0;
969
+ const childNum = parseFloat(child[key]) || 0;
970
+ const parentKeyToUse = key.replace(/margin/, 'padding');
971
+ const parentNum = parseFloat(parent[parentKeyToUse]) || 0;
883
972
  if (childNum || parentNum) {
884
- merged[parentKeyToUse] = "".concat(childNum + parentNum, "px");
973
+ merged[parentKeyToUse] = `${childNum + parentNum}px`;
885
974
  }
886
975
  }
887
- for (var _a = 0, _b = Object.entries(merged); _a < _b.length; _a++) {
888
- var _c = _b[_a], key = _c[0], value = _c[1];
976
+ for (const [key, value] of Object.entries(merged)) {
889
977
  if (value && typeof value === 'object') {
890
978
  merged[key] = combineStyles(parent[key] || {}, child[key] || {});
891
979
  }