@builder.io/mitosis 0.4.0 → 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 (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 +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.js +427 -341
  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,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(block.bindings)), mapBuilderBindingsToMitosisBindingWithCode((_b = block.code) === null || _b === void 0 ? void 0 : _b.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,41 +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 = innerBindings._text
396
+ const text = block.component.options.text;
397
+ const innerProperties = innerBindings._text
373
398
  ? {}
374
- : (_a = {},
375
- _a[options.preserveTextBlocks ? 'innerHTML' : '_text'] = text,
376
- _a);
399
+ : {
400
+ [options.preserveTextBlocks ? 'innerHTML' : '_text']: text,
401
+ };
377
402
  if (options.preserveTextBlocks) {
378
403
  return (0, create_mitosis_node_1.createMitosisNode)({
379
404
  name: block.tagName || 'div',
380
- bindings: bindings,
381
- properties: properties,
405
+ bindings,
406
+ properties,
382
407
  meta: (0, exports.getMetaFromBlock)(block, options),
383
408
  children: [
384
409
  (0, create_mitosis_node_1.createMitosisNode)({
385
410
  bindings: innerBindings,
386
- properties: __assign(__assign({}, innerProperties), { class: 'builder-text' }),
411
+ properties: {
412
+ ...innerProperties,
413
+ class: 'builder-text',
414
+ },
387
415
  }),
388
416
  ],
389
417
  });
390
418
  }
391
419
  // Disabling for now
392
- var assumeLink = false;
393
- var finalProperties = __assign(__assign({}, (assumeLink
394
- ? {
395
- href: '...',
396
- }
397
- : {})), properties);
398
- 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');
399
430
  if ((block.tagName && block.tagName !== 'div') ||
400
431
  hasStyles(block) ||
401
432
  hasComponent(block) ||
@@ -403,7 +434,7 @@ var componentMappers = __assign(__assign({ Symbol: function (block, options) {
403
434
  hasProperties(block)) {
404
435
  return (0, create_mitosis_node_1.createMitosisNode)({
405
436
  name: finalTagname,
406
- bindings: bindings,
437
+ bindings,
407
438
  properties: finalProperties,
408
439
  meta: (0, exports.getMetaFromBlock)(block, options),
409
440
  children: [
@@ -416,52 +447,58 @@ var componentMappers = __assign(__assign({ Symbol: function (block, options) {
416
447
  }
417
448
  return (0, create_mitosis_node_1.createMitosisNode)({
418
449
  name: finalTagname,
419
- properties: __assign(__assign(__assign({}, finalProperties), properties), innerProperties),
420
- bindings: __assign(__assign({}, bindings), innerBindings),
450
+ properties: {
451
+ ...finalProperties,
452
+ ...properties,
453
+ ...innerProperties,
454
+ },
455
+ bindings: {
456
+ ...bindings,
457
+ ...innerBindings,
458
+ },
421
459
  meta: (0, exports.getMetaFromBlock)(block, options),
422
460
  });
423
- } });
424
- var builderElementToMitosisNode = function (block, options, _internalOptions) {
425
- var _a;
426
- var _b, _c, _d, _e, _f, _g, _h, _j, _k, _l, _m, _o, _p, _q, _r, _s, _t, _u, _v, _w;
427
- if (_internalOptions === void 0) { _internalOptions = {}; }
428
- var _x = options.includeSpecialBindings, includeSpecialBindings = _x === void 0 ? true : _x;
429
- 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') {
430
467
  block.component.name = 'Fragment';
431
468
  }
432
- 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;
433
470
  if (forBinding) {
434
- 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';
435
472
  // TODO: handle having other things, like a repeat too
436
473
  if (isFragment) {
437
474
  return (0, create_mitosis_node_1.createMitosisNode)({
438
475
  name: 'For',
439
476
  bindings: {
440
477
  each: (0, bindings_1.createSingleBinding)({
441
- 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),
442
479
  }),
443
480
  },
444
481
  scope: {
445
- 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',
446
483
  indexName: '$index',
447
484
  },
448
485
  meta: (0, exports.getMetaFromBlock)(block, options),
449
- 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))) || [],
450
487
  });
451
488
  }
452
489
  else {
453
- 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
454
491
  ? block.children[0]
455
492
  : block;
456
493
  return (0, create_mitosis_node_1.createMitosisNode)({
457
494
  name: 'For',
458
495
  bindings: {
459
496
  each: (0, bindings_1.createSingleBinding)({
460
- 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),
461
498
  }),
462
499
  },
463
500
  scope: {
464
- 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',
465
502
  indexName: '$index',
466
503
  },
467
504
  meta: (0, exports.getMetaFromBlock)(block, options),
@@ -471,77 +508,92 @@ var builderElementToMitosisNode = function (block, options, _internalOptions) {
471
508
  }
472
509
  // Special builder properties
473
510
  // TODO: support hide and repeat
474
- var blockBindings = getBlockBindings(block, options);
475
- var code = undefined;
511
+ const blockBindings = getBlockBindings(block, options);
512
+ let code = undefined;
476
513
  if (blockBindings.show) {
477
514
  code = wrapBindingIfNeeded(blockBindings.show, options);
478
515
  }
479
516
  else if (blockBindings.hide) {
480
- code = "!(".concat(wrapBindingIfNeeded(blockBindings.hide, options), ")");
517
+ code = `!(${wrapBindingIfNeeded(blockBindings.hide, options)})`;
481
518
  }
482
519
  if (code) {
483
- 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';
484
521
  // TODO: handle having other things, like a repeat too
485
522
  if (isFragment) {
486
523
  return (0, create_mitosis_node_1.createMitosisNode)({
487
524
  name: 'Show',
488
- bindings: { when: (0, bindings_1.createSingleBinding)({ code: code }) },
525
+ bindings: { when: (0, bindings_1.createSingleBinding)({ code }) },
489
526
  meta: (0, exports.getMetaFromBlock)(block, options),
490
- 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))) || [],
491
528
  });
492
529
  }
493
530
  else {
494
531
  return (0, create_mitosis_node_1.createMitosisNode)({
495
532
  name: 'Show',
496
- bindings: { when: (0, bindings_1.createSingleBinding)({ code: code }) },
533
+ bindings: { when: (0, bindings_1.createSingleBinding)({ code }) },
497
534
  meta: (0, exports.getMetaFromBlock)(block, options),
498
535
  children: [
499
- (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),
500
544
  ],
501
545
  });
502
546
  }
503
547
  }
504
- var mapper = !_internalOptions.skipMapper && block.component && componentMappers[block.component.name];
548
+ const mapper = !_internalOptions.skipMapper && block.component && componentMappers[block.component.name];
505
549
  if (mapper) {
506
550
  return mapper(block, options);
507
551
  }
508
- var bindings = {};
509
- var children = [];
510
- var slots = {};
552
+ const bindings = {};
553
+ const children = [];
554
+ const slots = {};
511
555
  if (blockBindings) {
512
- for (var key in blockBindings) {
556
+ for (const key in blockBindings) {
513
557
  if (key === 'css') {
514
558
  continue;
515
559
  }
516
- var useKey = key.replace(/^(component\.)?options\./, '');
560
+ const useKey = key.replace(/^(component\.)?options\./, '');
517
561
  if (!useKey.includes('.')) {
518
562
  bindings[useKey] = (0, bindings_1.createSingleBinding)({
519
563
  code: blockBindings[key].code || blockBindings[key],
520
564
  });
521
565
  }
522
566
  else if (useKey.includes('style') && useKey.includes('.')) {
523
- var styleProperty = useKey.split('.')[1];
567
+ const styleProperty = useKey.split('.')[1];
524
568
  // TODO: add me in
525
569
  // styleBindings[styleProperty] =
526
570
  // block.code?.bindings?.[key] || blockBindings[key];
527
571
  }
528
572
  }
529
573
  }
530
- var properties = __assign(__assign(__assign({}, block.properties), (options.includeBuilderExtras && (_a = {},
531
- _a['builder-id'] = block.id,
532
- _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
+ };
533
582
  if (block.layerName) {
534
583
  properties.$name = block.layerName;
535
584
  }
536
585
  if (block.linkUrl) {
537
586
  properties.href = block.linkUrl;
538
587
  }
539
- if ((_p = block.component) === null || _p === void 0 ? void 0 : _p.options) {
540
- for (var key in block.component.options) {
541
- var value = block.component.options[key];
542
- var valueIsArrayOfBuilderElements = Array.isArray(value) && value.every(exports.isBuilderElement);
543
- var transformBldrElementToMitosisNode = function (item) {
544
- 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
+ });
545
597
  return node;
546
598
  };
547
599
  if ((0, exports.isBuilderElement)(value)) {
@@ -551,8 +603,8 @@ var builderElementToMitosisNode = function (block, options, _internalOptions) {
551
603
  properties[key] = value;
552
604
  }
553
605
  else if (valueIsArrayOfBuilderElements) {
554
- var childrenElements = value
555
- .filter(function (item) {
606
+ const childrenElements = value
607
+ .filter((item) => {
556
608
  var _a, _b;
557
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')) {
558
610
  return false;
@@ -570,41 +622,52 @@ var builderElementToMitosisNode = function (block, options, _internalOptions) {
570
622
  if (block.component && block.tagName && block.tagName !== 'div') {
571
623
  properties.builderTag = block.tagName;
572
624
  }
573
- var css = getCssFromBlock(block);
574
- var styleString = getStyleStringFromBlock(block, options);
575
- var actionBindings = getActionBindingsFromBlock(block, options);
576
- 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) {
577
629
  if (binding.startsWith('component.options') || binding.startsWith('options')) {
578
- var value = blockBindings[binding];
579
- var useKey = binding.replace(/^(component\.options\.|options\.)/, '');
630
+ const value = blockBindings[binding];
631
+ const useKey = binding.replace(/^(component\.options\.|options\.)/, '');
580
632
  bindings[useKey] = (0, bindings_1.createSingleBinding)({ code: value });
581
633
  }
582
634
  }
583
- var node = (0, create_mitosis_node_1.createMitosisNode)({
584
- 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, '')) ||
585
637
  block.tagName ||
586
638
  (block.linkUrl ? 'a' : 'div'),
587
- properties: __assign(__assign(__assign({}, (block.component && includeSpecialBindings && { $tagName: block.tagName })), (block.class && { class: block.class })), properties),
588
- bindings: __assign(__assign(__assign(__assign({}, bindings), actionBindings), (styleString && {
589
- style: (0, bindings_1.createSingleBinding)({ code: styleString }),
590
- })), (css &&
591
- Object.keys(css).length && {
592
- css: (0, bindings_1.createSingleBinding)({ code: JSON.stringify(css) }),
593
- })),
594
- 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
+ },
595
658
  meta: (0, exports.getMetaFromBlock)(block, options),
596
659
  });
597
660
  // Has single text node child
598
- var firstChild = (_s = block.children) === null || _s === void 0 ? void 0 : _s[0];
599
- if (((_t = block.children) === null || _t === void 0 ? void 0 : _t.length) === 1 &&
600
- ((_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' &&
601
664
  !options.preserveTextBlocks) {
602
- var textProperties = (0, exports.builderElementToMitosisNode)(firstChild, options);
603
- var parsedNodeCss = json5_1.default.parse(((_v = node.bindings.css) === null || _v === void 0 ? void 0 : _v.code) || '{}');
604
- var parsedTextCss = json5_1.default.parse(((_w = textProperties.bindings.css) === null || _w === void 0 ? void 0 : _w.code) || '{}');
605
- 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);
606
669
  // Don't merge if text has styling that matters
607
- var doNotMerge =
670
+ const doNotMerge =
608
671
  // Text has flex alignment
609
672
  ['end', 'right', 'center'].includes(parsedTextCss.alignSelf) ||
610
673
  // Text has specific styling
@@ -613,42 +676,51 @@ var builderElementToMitosisNode = function (block, options, _internalOptions) {
613
676
  parsedTextCss.background;
614
677
  if (!doNotMerge) {
615
678
  return (0, lodash_1.merge)({}, textProperties, node, {
616
- bindings: __assign({}, (Object.keys(mergedCss).length && {
617
- css: { code: json5_1.default.stringify(mergedCss) },
618
- })),
679
+ bindings: {
680
+ ...(Object.keys(mergedCss).length && {
681
+ css: { code: json5_1.default.stringify(mergedCss) },
682
+ }),
683
+ },
619
684
  });
620
685
  }
621
686
  }
622
- 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)));
623
688
  return node;
624
689
  };
625
690
  exports.builderElementToMitosisNode = builderElementToMitosisNode;
626
- var getBuilderPropsForSymbol = function (block) {
691
+ const getBuilderPropsForSymbol = (block) => {
627
692
  var _a, _b;
628
693
  if (((_a = block.children) === null || _a === void 0 ? void 0 : _a.length) === 1) {
629
- var child = block.children[0];
630
- 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'];
631
696
  if (builderContentId) {
632
697
  return { 'builder-content-id': builderContentId };
633
698
  }
634
699
  }
635
700
  return undefined;
636
701
  };
637
- var getMetaFromBlock = function (block, options) {
638
- var _a = options.includeMeta, includeMeta = _a === void 0 ? false : _a;
702
+ const getMetaFromBlock = (block, options) => {
703
+ const { includeMeta = false } = options;
639
704
  return includeMeta
640
- ? __assign({ 'builder-id': block.id }, block.meta) : {};
705
+ ? {
706
+ 'builder-id': block.id,
707
+ ...block.meta,
708
+ }
709
+ : {};
641
710
  };
642
711
  exports.getMetaFromBlock = getMetaFromBlock;
643
- var getHooks = function (content) {
712
+ const getHooks = (content) => {
644
713
  var _a, _b;
645
- 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) || '');
646
715
  try {
647
- return (0, jsx_1.parseJsx)("\n export default function TemporaryComponent() {\n ".concat(
716
+ return (0, jsx_1.parseJsx)(`
717
+ export default function TemporaryComponent() {
718
+ ${
648
719
  // Mitosis parser looks for useStore to be a variable assignment,
649
720
  // but in Builder that's not how it works. For now do a replace to
650
721
  // easily resuse the same parsing code as this is the only difference
651
- code.replace("useStore(", "var state = useStore("), "\n }"));
722
+ code.replace(`useStore(`, `var state = useStore(`)}
723
+ }`);
652
724
  }
653
725
  catch (err) {
654
726
  console.warn('Could not parse js code as a Mitosis component body', err, code);
@@ -661,18 +733,18 @@ var getHooks = function (content) {
661
733
  * code extracted
662
734
  */
663
735
  function extractStateHook(code) {
664
- var types = babel.types;
665
- var state = {};
666
- var body = (0, parsers_1.parseCode)(code);
667
- var newBody = body.slice();
668
- for (var i = 0; i < body.length; i++) {
669
- 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];
670
742
  if (types.isExpressionStatement(statement)) {
671
- var expression = statement.expression;
743
+ const { expression } = statement;
672
744
  // Check for useStore
673
745
  if (types.isCallExpression(expression)) {
674
746
  if (types.isIdentifier(expression.callee) && expression.callee.name === 'useStore') {
675
- var arg = expression.arguments[0];
747
+ const arg = expression.arguments[0];
676
748
  if (types.isObjectExpression(arg)) {
677
749
  state = (0, state_1.parseStateObjectToMitosisState)(arg);
678
750
  newBody.splice(i, 1);
@@ -683,7 +755,7 @@ function extractStateHook(code) {
683
755
  expression.callee.object.name === 'Object') {
684
756
  if (types.isIdentifier(expression.callee.property) &&
685
757
  expression.callee.property.name === 'assign') {
686
- var arg = expression.arguments[1];
758
+ const arg = expression.arguments[1];
687
759
  if (types.isObjectExpression(arg)) {
688
760
  state = (0, state_1.parseStateObjectToMitosisState)(arg);
689
761
  newBody.splice(i, 1);
@@ -694,17 +766,17 @@ function extractStateHook(code) {
694
766
  }
695
767
  }
696
768
  }
697
- var newCode = (0, generator_1.default)(types.program(newBody)).code || '';
698
- return { code: newCode, state: state };
769
+ const newCode = (0, generator_1.default)(types.program(newBody)).code || '';
770
+ return { code: newCode, state };
699
771
  }
700
772
  exports.extractStateHook = extractStateHook;
701
773
  function convertExportDefaultToReturn(code) {
702
774
  try {
703
- var types = babel.types;
704
- var body = (0, parsers_1.parseCode)(code);
705
- var newBody = body.slice();
706
- for (var i = 0; i < body.length; i++) {
707
- 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];
708
780
  if (types.isExportDefaultDeclaration(statement)) {
709
781
  if (types.isCallExpression(statement.declaration) ||
710
782
  types.isExpression(statement.declaration)) {
@@ -715,7 +787,7 @@ function convertExportDefaultToReturn(code) {
715
787
  return (0, generator_1.default)(types.program(newBody)).code || '';
716
788
  }
717
789
  catch (e) {
718
- var error = e;
790
+ const error = e;
719
791
  if (error.code === 'BABEL_PARSE_ERROR') {
720
792
  return code;
721
793
  }
@@ -728,8 +800,8 @@ exports.convertExportDefaultToReturn = convertExportDefaultToReturn;
728
800
  // TODO: maybe this should be part of the builder -> Mitosis part
729
801
  function extractSymbols(json) {
730
802
  var _a, _b, _c, _d;
731
- var subComponents = [];
732
- var symbols = [];
803
+ const subComponents = [];
804
+ const symbols = [];
733
805
  (0, legacy_1.default)(json).forEach(function (item) {
734
806
  var _a;
735
807
  if ((0, exports.isBuilderElement)(item)) {
@@ -738,14 +810,13 @@ function extractSymbols(json) {
738
810
  }
739
811
  }
740
812
  });
741
- var symbolsSortedDeepestFirst = (0, lodash_1.sortBy)(symbols, function (info) { return info.depth; })
813
+ const symbolsSortedDeepestFirst = (0, lodash_1.sortBy)(symbols, (info) => info.depth)
742
814
  .reverse()
743
- .map(function (el) { return el.element; });
744
- var symbolsFound = 0;
745
- for (var _i = 0, symbolsSortedDeepestFirst_1 = symbolsSortedDeepestFirst; _i < symbolsSortedDeepestFirst_1.length; _i++) {
746
- var el = symbolsSortedDeepestFirst_1[_i];
747
- var symbolValue = (_b = (_a = el.component) === null || _a === void 0 ? void 0 : _a.options) === null || _b === void 0 ? void 0 : _b.symbol;
748
- 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;
749
820
  if (!elContent) {
750
821
  console.warn('Symbol missing content', el.id);
751
822
  if ((_c = el.component) === null || _c === void 0 ? void 0 : _c.options.symbol.content) {
@@ -753,7 +824,7 @@ function extractSymbols(json) {
753
824
  }
754
825
  continue;
755
826
  }
756
- var componentName = 'Symbol' + ++symbolsFound;
827
+ const componentName = 'Symbol' + ++symbolsFound;
757
828
  el.component.name = componentName;
758
829
  if ((_d = el.component) === null || _d === void 0 ? void 0 : _d.options.symbol.content) {
759
830
  delete el.component.options.symbol.content;
@@ -765,18 +836,19 @@ function extractSymbols(json) {
765
836
  }
766
837
  return {
767
838
  content: json,
768
- subComponents: subComponents,
839
+ subComponents,
769
840
  };
770
841
  }
771
- 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
+ });
772
847
  exports.createBuilderElement = createBuilderElement;
773
- var isBuilderElement = function (el) {
774
- return (el === null || el === void 0 ? void 0 : el['@type']) === '@builder.io/sdk:Element';
775
- };
848
+ const isBuilderElement = (el) => (el === null || el === void 0 ? void 0 : el['@type']) === '@builder.io/sdk:Element';
776
849
  exports.isBuilderElement = isBuilderElement;
777
- var builderContentPartToMitosisComponent = function (builderContent, options) {
850
+ const builderContentPartToMitosisComponent = (builderContent, options = {}) => {
778
851
  var _a, _b, _c, _d, _e, _f, _g, _h;
779
- if (options === void 0) { options = {}; }
780
852
  builderContent = (0, fast_clone_1.fastClone)(builderContent);
781
853
  (0, legacy_1.default)(builderContent).forEach(function (elem) {
782
854
  var _a, _b;
@@ -785,7 +857,7 @@ var builderContentPartToMitosisComponent = function (builderContent, options) {
785
857
  // blocks can contain arbitrary HTML
786
858
  // List taken from https://developer.mozilla.org/en-US/docs/Glossary/Empty_element
787
859
  // TODO: Maybe this should be using something more robust than a regular expression
788
- 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;
789
861
  try {
790
862
  if (((_a = elem.component) === null || _a === void 0 ? void 0 : _a.name) === 'Text') {
791
863
  elem.component.options.text = elem.component.options.text.replace(voidElemRegex, '$1 />');
@@ -804,54 +876,67 @@ var builderContentPartToMitosisComponent = function (builderContent, options) {
804
876
  }
805
877
  }
806
878
  });
807
- 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;
808
- var customCode = convertExportDefaultToReturn(code);
809
- var parsed = getHooks(builderContent);
810
- var parsedState = (parsed === null || parsed === void 0 ? void 0 : parsed.state) || {};
811
- 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
812
884
  ? parsedState
813
- : __assign(__assign({}, state), (0, helpers_1.mapBuilderContentStateToMitosisState)(((_c = builderContent.data) === null || _c === void 0 ? void 0 : _c.state) || {}));
814
- var componentJson = (0, create_mitosis_component_1.createMitosisComponent)({
815
- 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: {
816
892
  httpRequests: (_d = builderContent.data) === null || _d === void 0 ? void 0 : _d.httpRequests,
817
- } }, (((_e = builderContent.data) === null || _e === void 0 ? void 0 : _e.cssCode) && { cssCode: builderContent.data.cssCode })),
818
- 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) => ({
819
897
  name: input.name,
820
898
  defaultValue: input.defaultValue,
821
- }); }),
899
+ })),
822
900
  state: mitosisState,
823
901
  hooks: {
824
- onMount: __spreadArray([], ((parsed === null || parsed === void 0 ? void 0 : parsed.hooks.onMount.length)
825
- ? parsed === null || parsed === void 0 ? void 0 : parsed.hooks.onMount
826
- : customCode
827
- ? [{ code: customCode }]
828
- : []), 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
+ ],
829
909
  },
830
910
  children: (((_h = builderContent.data) === null || _h === void 0 ? void 0 : _h.blocks) || [])
831
- .filter(function (item) {
911
+ .filter((item) => {
832
912
  var _a, _b;
833
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')) {
834
914
  return false;
835
915
  }
836
916
  return true;
837
917
  })
838
- .map(function (item) { return (0, exports.builderElementToMitosisNode)(item, options); }),
918
+ .map((item) => (0, exports.builderElementToMitosisNode)(item, options)),
839
919
  });
840
920
  return componentJson;
841
921
  };
842
- var builderContentToMitosisComponent = function (builderContent, options) {
843
- if (options === void 0) { options = {}; }
922
+ const builderContentToMitosisComponent = (builderContent, options = {}) => {
844
923
  builderContent = (0, fast_clone_1.fastClone)(builderContent);
845
- var separated = extractSymbols(builderContent);
846
- 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
+ };
847
932
  return componentJson;
848
933
  };
849
934
  exports.builderContentToMitosisComponent = builderContentToMitosisComponent;
850
935
  function mapBuilderBindingsToMitosisBindingWithCode(bindings) {
851
- var result = {};
936
+ const result = {};
852
937
  bindings &&
853
- Object.keys(bindings).forEach(function (key) {
854
- var value = bindings[key];
938
+ Object.keys(bindings).forEach((key) => {
939
+ const value = bindings[key];
855
940
  if (typeof value === 'string') {
856
941
  result[key] = (0, bindings_1.createSingleBinding)({ code: value });
857
942
  }
@@ -865,29 +950,30 @@ function mapBuilderBindingsToMitosisBindingWithCode(bindings) {
865
950
  return result;
866
951
  }
867
952
  function removeFalsey(obj) {
868
- 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%');
869
954
  }
870
955
  function combineStyles(parent, child) {
871
- var marginStyles = ['marginTop', 'marginBottom', 'marginLeft', 'marginRight'];
872
- var paddingStyles = ['paddingTop', 'paddingBottom', 'paddingLeft', 'paddingRight'];
873
- var distanceStylesToCombine = __spreadArray(__spreadArray([], paddingStyles, true), marginStyles, true);
874
- var merged = __assign(__assign({}, (0, lodash_1.omit)(removeFalsey(child), distanceStylesToCombine)), removeFalsey(parent));
875
- for (var _i = 0, distanceStylesToCombine_1 = distanceStylesToCombine; _i < distanceStylesToCombine_1.length; _i++) {
876
- 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) {
877
964
  // Funky things happen if different alignment
878
965
  if (parent.alignSelf !== child.alignSelf && (key === 'marginLeft' || key === 'marginRight')) {
879
966
  merged[key] = parent[key];
880
967
  continue;
881
968
  }
882
- var childNum = parseFloat(child[key]) || 0;
883
- var parentKeyToUse = key.replace(/margin/, 'padding');
884
- 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;
885
972
  if (childNum || parentNum) {
886
- merged[parentKeyToUse] = "".concat(childNum + parentNum, "px");
973
+ merged[parentKeyToUse] = `${childNum + parentNum}px`;
887
974
  }
888
975
  }
889
- for (var _a = 0, _b = Object.entries(merged); _a < _b.length; _a++) {
890
- var _c = _b[_a], key = _c[0], value = _c[1];
976
+ for (const [key, value] of Object.entries(merged)) {
891
977
  if (value && typeof value === 'object') {
892
978
  merged[key] = combineStyles(parent[key] || {}, child[key] || {});
893
979
  }