@webstudio-is/react-sdk 0.65.0 → 0.67.0

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 (172) hide show
  1. package/lib/app/custom-components/form.ws.js +2 -2
  2. package/lib/app/custom-components/image.js +7 -13
  3. package/lib/app/custom-components/index.js +4 -1
  4. package/lib/app/params.js +1 -0
  5. package/lib/cjs/app/custom-components/form.ws.js +2 -2
  6. package/lib/cjs/app/custom-components/image.js +3 -12
  7. package/lib/cjs/app/custom-components/index.js +4 -1
  8. package/lib/cjs/app/params.js +1 -0
  9. package/lib/cjs/components/__generated__/{code.props.js → code-text.props.js} +3 -3
  10. package/lib/cjs/components/__generated__/html-embed.props.js +31 -0
  11. package/lib/cjs/components/blockquote.ws.js +2 -2
  12. package/lib/cjs/components/body.ws.js +2 -2
  13. package/lib/cjs/components/bold.ws.js +2 -2
  14. package/lib/cjs/components/box.ws.js +2 -2
  15. package/lib/cjs/components/button.ws.js +2 -2
  16. package/lib/cjs/components/checkbox-field.ws.js +2 -2
  17. package/lib/cjs/components/checkbox.ws.js +2 -2
  18. package/lib/cjs/components/{code.js → code-text.js} +6 -6
  19. package/lib/cjs/components/{code.ws.js → code-text.ws.js} +10 -10
  20. package/lib/cjs/components/component-meta.js +2 -2
  21. package/lib/cjs/components/components-utils.js +1 -43
  22. package/lib/cjs/components/components.js +4 -2
  23. package/lib/cjs/components/error-message.ws.js +2 -2
  24. package/lib/cjs/components/form.ws.js +2 -2
  25. package/lib/cjs/components/fragment.ws.js +1 -1
  26. package/lib/cjs/components/heading.ws.js +2 -2
  27. package/lib/cjs/components/html-embed.js +80 -0
  28. package/lib/cjs/components/html-embed.ws.js +43 -0
  29. package/lib/cjs/components/image.ws.js +2 -2
  30. package/lib/cjs/components/index.js +11 -57
  31. package/lib/cjs/components/input.ws.js +2 -2
  32. package/lib/cjs/components/italic.ws.js +2 -2
  33. package/lib/cjs/components/label.ws.js +2 -2
  34. package/lib/cjs/components/link-block.ws.js +2 -2
  35. package/lib/cjs/components/link.ws.js +2 -2
  36. package/lib/cjs/components/list-item.ws.js +2 -2
  37. package/lib/cjs/components/list.ws.js +2 -2
  38. package/lib/cjs/components/paragraph.ws.js +2 -2
  39. package/lib/cjs/components/radio-button-field.ws.js +2 -2
  40. package/lib/cjs/components/radio-button.ws.js +2 -2
  41. package/lib/cjs/components/separator.ws.js +2 -2
  42. package/lib/cjs/components/slot.ws.js +2 -2
  43. package/lib/cjs/components/span.ws.js +2 -2
  44. package/lib/cjs/components/subscript.ws.js +2 -2
  45. package/lib/cjs/components/success-message.ws.js +2 -2
  46. package/lib/cjs/components/superscript.ws.js +2 -2
  47. package/lib/cjs/components/text-block.ws.js +2 -2
  48. package/lib/cjs/components/textarea.ws.js +2 -2
  49. package/lib/cjs/css/css.js +2 -5
  50. package/lib/cjs/css/normalize.js +1 -1
  51. package/lib/cjs/css/presets.js +8 -1
  52. package/lib/cjs/tree/create-elements-tree.js +2 -4
  53. package/lib/components/__generated__/html-embed.props.js +11 -0
  54. package/lib/components/blockquote.ws.js +2 -2
  55. package/lib/components/body.ws.js +2 -2
  56. package/lib/components/bold.ws.js +2 -2
  57. package/lib/components/box.ws.js +2 -2
  58. package/lib/components/button.ws.js +2 -2
  59. package/lib/components/checkbox-field.ws.js +2 -2
  60. package/lib/components/checkbox.ws.js +2 -2
  61. package/lib/components/{code.js → code-text.js} +3 -3
  62. package/lib/components/{code.ws.js → code-text.ws.js} +5 -5
  63. package/lib/components/component-meta.js +3 -3
  64. package/lib/components/components-utils.js +1 -43
  65. package/lib/components/components.js +4 -2
  66. package/lib/components/error-message.ws.js +2 -2
  67. package/lib/components/form.ws.js +2 -2
  68. package/lib/components/fragment.ws.js +1 -1
  69. package/lib/components/heading.ws.js +2 -2
  70. package/lib/components/html-embed.js +65 -0
  71. package/lib/components/html-embed.ws.js +23 -0
  72. package/lib/components/image.ws.js +2 -2
  73. package/lib/components/index.js +11 -57
  74. package/lib/components/input.ws.js +2 -2
  75. package/lib/components/italic.ws.js +2 -2
  76. package/lib/components/label.ws.js +2 -2
  77. package/lib/components/link-block.ws.js +2 -2
  78. package/lib/components/link.ws.js +2 -2
  79. package/lib/components/list-item.ws.js +2 -2
  80. package/lib/components/list.ws.js +2 -2
  81. package/lib/components/paragraph.ws.js +2 -2
  82. package/lib/components/radio-button-field.ws.js +2 -2
  83. package/lib/components/radio-button.ws.js +2 -2
  84. package/lib/components/separator.ws.js +2 -2
  85. package/lib/components/slot.ws.js +2 -2
  86. package/lib/components/span.ws.js +2 -2
  87. package/lib/components/subscript.ws.js +2 -2
  88. package/lib/components/success-message.ws.js +2 -2
  89. package/lib/components/superscript.ws.js +2 -2
  90. package/lib/components/text-block.ws.js +2 -2
  91. package/lib/components/textarea.ws.js +2 -2
  92. package/lib/css/css.js +2 -5
  93. package/lib/css/normalize.js +2 -2
  94. package/lib/css/presets.js +8 -1
  95. package/lib/tree/create-elements-tree.js +2 -4
  96. package/lib/types/app/params.d.ts +22 -1
  97. package/lib/types/components/__generated__/html-embed.props.d.ts +2 -0
  98. package/lib/types/components/{code.d.ts → code-text.d.ts} +1 -1
  99. package/lib/types/components/{code.stories.d.ts → code-text.stories.d.ts} +1 -1
  100. package/lib/types/components/component-meta.d.ts +1785 -10
  101. package/lib/types/components/components-utils.d.ts +6 -3
  102. package/lib/types/components/components.d.ts +2 -1
  103. package/lib/types/components/html-embed.d.ts +7 -0
  104. package/lib/types/components/html-embed.stories.d.ts +11 -0
  105. package/lib/types/components/html-embed.ws.d.ts +3 -0
  106. package/lib/types/components/index.d.ts +2 -2
  107. package/lib/types/context.d.ts +1 -0
  108. package/lib/types/css/css.d.ts +2 -0
  109. package/lib/types/css/presets.d.ts +1 -0
  110. package/lib/types/css/style-rules.d.ts +1 -1
  111. package/lib/types/embed-template.d.ts +1 -1
  112. package/lib/types/tree/create-elements-tree.d.ts +2 -2
  113. package/package.json +14 -13
  114. package/src/app/custom-components/form.ws.tsx +2 -2
  115. package/src/app/custom-components/image.tsx +7 -13
  116. package/src/app/custom-components/index.ts +4 -1
  117. package/src/app/params.ts +23 -1
  118. package/src/components/__generated__/html-embed.props.ts +10 -0
  119. package/src/components/blockquote.ws.tsx +2 -2
  120. package/src/components/body.ws.tsx +2 -2
  121. package/src/components/bold.ws.tsx +2 -2
  122. package/src/components/box.ws.ts +2 -2
  123. package/src/components/button.ws.tsx +2 -2
  124. package/src/components/checkbox-field.ws.tsx +2 -2
  125. package/src/components/checkbox.ws.tsx +2 -2
  126. package/src/components/code-text.stories.tsx +16 -0
  127. package/src/components/{code.tsx → code-text.tsx} +2 -2
  128. package/src/components/{code.ws.tsx → code-text.ws.tsx} +5 -5
  129. package/src/components/component-meta.ts +3 -6
  130. package/src/components/components-utils.ts +14 -58
  131. package/src/components/components.ts +2 -1
  132. package/src/components/error-message.ws.tsx +2 -2
  133. package/src/components/form.ws.tsx +2 -2
  134. package/src/components/fragment.ws.ts +1 -1
  135. package/src/components/heading.ws.tsx +2 -2
  136. package/src/components/html-embed.stories.tsx +16 -0
  137. package/src/components/html-embed.tsx +96 -0
  138. package/src/components/html-embed.ws.ts +22 -0
  139. package/src/components/image.ws.tsx +2 -2
  140. package/src/components/index.ts +10 -87
  141. package/src/components/input.ws.tsx +2 -2
  142. package/src/components/italic.ws.tsx +2 -2
  143. package/src/components/label.ws.tsx +2 -2
  144. package/src/components/link-block.ws.tsx +2 -2
  145. package/src/components/link.ws.tsx +2 -2
  146. package/src/components/list-item.ws.tsx +2 -2
  147. package/src/components/list.ws.tsx +2 -2
  148. package/src/components/paragraph.ws.tsx +2 -2
  149. package/src/components/radio-button-field.ws.tsx +2 -2
  150. package/src/components/radio-button.ws.tsx +2 -2
  151. package/src/components/separator.ws.tsx +2 -2
  152. package/src/components/slot.ws.ts +2 -2
  153. package/src/components/span.ws.tsx +2 -2
  154. package/src/components/subscript.ws.tsx +2 -2
  155. package/src/components/success-message.ws.tsx +2 -2
  156. package/src/components/superscript.ws.tsx +2 -2
  157. package/src/components/text-block.ws.tsx +2 -2
  158. package/src/components/textarea.ws.tsx +2 -2
  159. package/src/context.tsx +1 -0
  160. package/src/css/css.ts +4 -5
  161. package/src/css/normalize.ts +2 -2
  162. package/src/css/presets.ts +7 -0
  163. package/src/tree/create-elements-tree.tsx +3 -5
  164. package/lib/cjs/tree/session-storage-polyfill.js +0 -65
  165. package/lib/tree/session-storage-polyfill.js +0 -45
  166. package/lib/types/tree/session-storage-polyfill.d.ts +0 -2
  167. package/src/components/code.stories.tsx +0 -16
  168. package/src/tree/session-storage-polyfill.tsx +0 -50
  169. /package/lib/components/__generated__/{code.props.js → code-text.props.js} +0 -0
  170. /package/lib/types/components/__generated__/{code.props.d.ts → code-text.props.d.ts} +0 -0
  171. /package/lib/types/components/{code.ws.d.ts → code-text.ws.d.ts} +0 -0
  172. /package/src/components/__generated__/{code.props.ts → code-text.props.ts} +0 -0
@@ -0,0 +1,43 @@
1
+ "use strict";
2
+ var __defProp = Object.defineProperty;
3
+ var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
4
+ var __getOwnPropNames = Object.getOwnPropertyNames;
5
+ var __hasOwnProp = Object.prototype.hasOwnProperty;
6
+ var __export = (target, all) => {
7
+ for (var name in all)
8
+ __defProp(target, name, { get: all[name], enumerable: true });
9
+ };
10
+ var __copyProps = (to, from, except, desc) => {
11
+ if (from && typeof from === "object" || typeof from === "function") {
12
+ for (let key of __getOwnPropNames(from))
13
+ if (!__hasOwnProp.call(to, key) && key !== except)
14
+ __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
15
+ }
16
+ return to;
17
+ };
18
+ var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
19
+ var html_embed_ws_exports = {};
20
+ __export(html_embed_ws_exports, {
21
+ meta: () => meta,
22
+ propsMeta: () => propsMeta
23
+ });
24
+ module.exports = __toCommonJS(html_embed_ws_exports);
25
+ var import_svg = require("@webstudio-is/icons/svg");
26
+ var import_html_embed = require("./__generated__/html-embed.props");
27
+ const meta = {
28
+ category: "general",
29
+ type: "embed",
30
+ label: "HTML Embed",
31
+ icon: import_svg.EmbedIcon
32
+ };
33
+ const propsMeta = {
34
+ props: {
35
+ ...import_html_embed.props,
36
+ code: {
37
+ required: true,
38
+ control: "code",
39
+ type: "string",
40
+ rows: 10
41
+ }
42
+ }
43
+ };
@@ -22,7 +22,7 @@ __export(image_ws_exports, {
22
22
  propsMeta: () => propsMeta
23
23
  });
24
24
  module.exports = __toCommonJS(image_ws_exports);
25
- var import_icons = require("@webstudio-is/icons");
25
+ var import_svg = require("@webstudio-is/icons/svg");
26
26
  var import_normalize = require("../css/normalize");
27
27
  var import_component_meta = require("./component-meta");
28
28
  var import_image = require("./__generated__/image.props");
@@ -46,7 +46,7 @@ const meta = {
46
46
  category: "media",
47
47
  type: "embed",
48
48
  label: "Image",
49
- Icon: import_icons.ImageIcon,
49
+ icon: import_svg.ImageIcon,
50
50
  states: import_component_meta.defaultStates,
51
51
  presetStyle
52
52
  };
@@ -19,17 +19,17 @@ var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: tru
19
19
  var components_exports = {};
20
20
  __export(components_exports, {
21
21
  canAcceptComponent: () => canAcceptComponent,
22
+ defaultMetas: () => defaultMetas,
23
+ defaultPropsMetas: () => defaultPropsMetas,
22
24
  getComponentMeta: () => getComponentMeta,
23
- getComponentPropsMeta: () => getComponentPropsMeta,
24
25
  registerComponentMetas: () => registerComponentMetas,
25
- registerComponentPropsMetas: () => registerComponentPropsMetas,
26
26
  registerComponents: () => registerComponents,
27
27
  registeredComponents: () => registeredComponents
28
28
  });
29
29
  module.exports = __toCommonJS(components_exports);
30
- var import_generate_arg_types = require("@webstudio-is/generate-arg-types");
31
30
  var import_slot = require("./slot.ws");
32
31
  var import_fragment = require("./fragment.ws");
32
+ var import_html_embed = require("./html-embed.ws");
33
33
  var import_body = require("./body.ws");
34
34
  var import_box = require("./box.ws");
35
35
  var import_text_block = require("./text-block.ws");
@@ -51,7 +51,7 @@ var import_blockquote = require("./blockquote.ws");
51
51
  var import_list = require("./list.ws");
52
52
  var import_list_item = require("./list-item.ws");
53
53
  var import_separator = require("./separator.ws");
54
- var import_code = require("./code.ws");
54
+ var import_code_text = require("./code-text.ws");
55
55
  var import_label = require("./label.ws");
56
56
  var import_success_message = require("./success-message.ws");
57
57
  var import_error_message = require("./error-message.ws");
@@ -62,6 +62,7 @@ var import_checkbox_field = require("./checkbox-field.ws");
62
62
  var import_checkbox = require("./checkbox.ws");
63
63
  var import_slot2 = require("./slot.ws");
64
64
  var import_fragment2 = require("./fragment.ws");
65
+ var import_html_embed2 = require("./html-embed.ws");
65
66
  var import_body2 = require("./body.ws");
66
67
  var import_box2 = require("./box.ws");
67
68
  var import_text_block2 = require("./text-block.ws");
@@ -83,7 +84,7 @@ var import_blockquote2 = require("./blockquote.ws");
83
84
  var import_list2 = require("./list.ws");
84
85
  var import_list_item2 = require("./list-item.ws");
85
86
  var import_separator2 = require("./separator.ws");
86
- var import_code2 = require("./code.ws");
87
+ var import_code_text2 = require("./code-text.ws");
87
88
  var import_label2 = require("./label.ws");
88
89
  var import_success_message2 = require("./success-message.ws");
89
90
  var import_error_message2 = require("./error-message.ws");
@@ -95,6 +96,7 @@ var import_checkbox2 = require("./checkbox.ws");
95
96
  const defaultMetas = {
96
97
  Slot: import_slot.meta,
97
98
  Fragment: import_fragment.meta,
99
+ HtmlEmbed: import_html_embed.meta,
98
100
  Box: import_box.meta,
99
101
  Body: import_body.meta,
100
102
  TextBlock: import_text_block.meta,
@@ -116,7 +118,7 @@ const defaultMetas = {
116
118
  List: import_list.meta,
117
119
  ListItem: import_list_item.meta,
118
120
  Separator: import_separator.meta,
119
- Code: import_code.meta,
121
+ CodeText: import_code_text.meta,
120
122
  Label: import_label.meta,
121
123
  SuccessMessage: import_success_message.meta,
122
124
  ErrorMessage: import_error_message.meta,
@@ -137,9 +139,10 @@ const registerComponentMetas = (overrides) => {
137
139
  }
138
140
  currentMetas = result;
139
141
  };
140
- const defaultPropsMetasRaw = {
142
+ const defaultPropsMetas = {
141
143
  Slot: import_slot2.propsMeta,
142
144
  Fragment: import_fragment2.propsMeta,
145
+ HtmlEmbed: import_html_embed2.propsMeta,
143
146
  Box: import_box2.propsMeta,
144
147
  Body: import_body2.propsMeta,
145
148
  TextBlock: import_text_block2.propsMeta,
@@ -161,7 +164,7 @@ const defaultPropsMetasRaw = {
161
164
  List: import_list2.propsMeta,
162
165
  ListItem: import_list_item2.propsMeta,
163
166
  Separator: import_separator2.propsMeta,
164
- Code: import_code2.propsMeta,
167
+ CodeText: import_code_text2.propsMeta,
165
168
  Label: import_label2.propsMeta,
166
169
  SuccessMessage: import_success_message2.propsMeta,
167
170
  ErrorMessage: import_error_message2.propsMeta,
@@ -171,59 +174,10 @@ const defaultPropsMetasRaw = {
171
174
  CheckboxField: import_checkbox_field2.propsMeta,
172
175
  Checkbox: import_checkbox2.propsMeta
173
176
  };
174
- const defaultPropsMetas = defaultPropsMetasRaw;
175
- let registeredPropsMetas = {};
176
- let currentPropsMetas = void 0;
177
- const getComponentPropsMeta = (name) => {
178
- if (currentPropsMetas === void 0) {
179
- currentPropsMetas = {};
180
- for (const name2 of Object.keys(defaultPropsMetas)) {
181
- const props = computeProps(
182
- defaultPropsMetas[name2],
183
- registeredPropsMetas[name2] ?? {}
184
- );
185
- const initialProps = computeInitialProps(
186
- props,
187
- defaultPropsMetas[name2],
188
- registeredPropsMetas[name2] ?? {}
189
- );
190
- currentPropsMetas[name2] = { props, initialProps };
191
- }
192
- }
193
- return currentPropsMetas[name];
194
- };
195
- const registerComponentPropsMetas = (metas) => {
196
- registeredPropsMetas = metas;
197
- currentPropsMetas = void 0;
198
- };
199
177
  let registeredComponents;
200
178
  const registerComponents = (components) => {
201
179
  registeredComponents = components;
202
180
  };
203
- const computeProps = (defaults, overrides) => {
204
- if (overrides) {
205
- const allNames = (/* @__PURE__ */ new Set([
206
- ...Object.keys(defaults.props ?? {}),
207
- ...Object.keys(overrides?.props ?? {})
208
- ])).values();
209
- const result = {};
210
- for (const name of allNames) {
211
- result[name] = import_generate_arg_types.PropMeta.parse({
212
- ...defaults.props[name],
213
- ...overrides?.props?.[name]
214
- });
215
- }
216
- return result;
217
- }
218
- return defaults.props;
219
- };
220
- const computeInitialProps = (props, defaults, overrides) => {
221
- const initialProps = overrides?.initialProps ?? defaults?.initialProps ?? [];
222
- const requiredProps = props ? Object.entries(props).filter(
223
- ([name, value]) => value?.required && initialProps.includes(name) === false
224
- ).map(([name]) => name) : [];
225
- return [...initialProps, ...requiredProps];
226
- };
227
181
  const canAcceptComponent = (parentComponent, childComponent) => {
228
182
  const parentMeta = getComponentMeta(parentComponent);
229
183
  const childMeta = getComponentMeta(childComponent);
@@ -22,7 +22,7 @@ __export(input_ws_exports, {
22
22
  propsMeta: () => propsMeta
23
23
  });
24
24
  module.exports = __toCommonJS(input_ws_exports);
25
- var import_icons = require("@webstudio-is/icons");
25
+ var import_svg = require("@webstudio-is/icons/svg");
26
26
  var import_normalize = require("../css/normalize");
27
27
  var import_component_meta = require("./component-meta");
28
28
  var import_input = require("./__generated__/input.props");
@@ -33,7 +33,7 @@ const meta = {
33
33
  category: "forms",
34
34
  type: "control",
35
35
  label: "Text Input",
36
- Icon: import_icons.FormTextFieldIcon,
36
+ icon: import_svg.FormTextFieldIcon,
37
37
  presetStyle,
38
38
  states: [
39
39
  ...import_component_meta.defaultStates,
@@ -22,7 +22,7 @@ __export(italic_ws_exports, {
22
22
  propsMeta: () => propsMeta
23
23
  });
24
24
  module.exports = __toCommonJS(italic_ws_exports);
25
- var import_icons = require("@webstudio-is/icons");
25
+ var import_svg = require("@webstudio-is/icons/svg");
26
26
  var import_component_meta = require("./component-meta");
27
27
  var import_italic = require("./__generated__/italic.props");
28
28
  var import_normalize = require("../css/normalize");
@@ -38,7 +38,7 @@ const presetStyle = {
38
38
  const meta = {
39
39
  type: "rich-text-child",
40
40
  label: "Italic Text",
41
- Icon: import_icons.TextItalicIcon,
41
+ icon: import_svg.TextItalicIcon,
42
42
  states: import_component_meta.defaultStates,
43
43
  presetStyle
44
44
  };
@@ -22,7 +22,7 @@ __export(label_ws_exports, {
22
22
  propsMeta: () => propsMeta
23
23
  });
24
24
  module.exports = __toCommonJS(label_ws_exports);
25
- var import_icons = require("@webstudio-is/icons");
25
+ var import_svg = require("@webstudio-is/icons/svg");
26
26
  var import_component_meta = require("./component-meta");
27
27
  var import_label = require("./__generated__/label.props");
28
28
  var import_normalize = require("../css/normalize");
@@ -36,7 +36,7 @@ const meta = {
36
36
  category: "forms",
37
37
  type: "rich-text",
38
38
  label: "Input Label",
39
- Icon: import_icons.TextBlockIcon,
39
+ icon: import_svg.TextBlockIcon,
40
40
  states: import_component_meta.defaultStates,
41
41
  presetStyle,
42
42
  children: [{ type: "text", value: "Form Label" }]
@@ -22,7 +22,7 @@ __export(link_block_ws_exports, {
22
22
  propsMeta: () => propsMeta
23
23
  });
24
24
  module.exports = __toCommonJS(link_block_ws_exports);
25
- var import_icons = require("@webstudio-is/icons");
25
+ var import_svg = require("@webstudio-is/icons/svg");
26
26
  var import_link_block = require("./__generated__/link-block.props");
27
27
  var import_link = require("./link.ws");
28
28
  var import_normalize = require("../css/normalize");
@@ -39,7 +39,7 @@ const meta = {
39
39
  category: "general",
40
40
  type: "container",
41
41
  label: "Link Block",
42
- Icon: import_icons.LinkBlockIcon,
42
+ icon: import_svg.LinkBlockIcon,
43
43
  states: import_link.meta.states,
44
44
  presetStyle
45
45
  };
@@ -22,7 +22,7 @@ __export(link_ws_exports, {
22
22
  propsMeta: () => propsMeta
23
23
  });
24
24
  module.exports = __toCommonJS(link_ws_exports);
25
- var import_icons = require("@webstudio-is/icons");
25
+ var import_svg = require("@webstudio-is/icons/svg");
26
26
  var import_normalize = require("../css/normalize");
27
27
  var import_component_meta = require("./component-meta");
28
28
  var import_link = require("./__generated__/link.props");
@@ -43,7 +43,7 @@ const meta = {
43
43
  category: "general",
44
44
  type: "rich-text",
45
45
  label: "Link Text",
46
- Icon: import_icons.LinkIcon,
46
+ icon: import_svg.LinkIcon,
47
47
  presetStyle,
48
48
  states: [
49
49
  ...import_component_meta.defaultStates,
@@ -22,7 +22,7 @@ __export(list_item_ws_exports, {
22
22
  propsMeta: () => propsMeta
23
23
  });
24
24
  module.exports = __toCommonJS(list_item_ws_exports);
25
- var import_icons = require("@webstudio-is/icons");
25
+ var import_svg = require("@webstudio-is/icons/svg");
26
26
  var import_normalize = require("../css/normalize");
27
27
  var import_component_meta = require("./component-meta");
28
28
  var import_list_item = require("./__generated__/list-item.props");
@@ -34,7 +34,7 @@ const meta = {
34
34
  type: "rich-text",
35
35
  acceptedParents: ["List"],
36
36
  label: "List Item",
37
- Icon: import_icons.ListItemIcon,
37
+ icon: import_svg.ListItemIcon,
38
38
  children: [{ type: "text", value: "List Item you can edit" }],
39
39
  states: import_component_meta.defaultStates,
40
40
  presetStyle
@@ -22,7 +22,7 @@ __export(list_ws_exports, {
22
22
  propsMeta: () => propsMeta
23
23
  });
24
24
  module.exports = __toCommonJS(list_ws_exports);
25
- var import_icons = require("@webstudio-is/icons");
25
+ var import_svg = require("@webstudio-is/icons/svg");
26
26
  var import_component_meta = require("./component-meta");
27
27
  var import_list = require("./__generated__/list.props");
28
28
  var import_normalize = require("../css/normalize");
@@ -62,7 +62,7 @@ const meta = {
62
62
  category: "typography",
63
63
  type: "container",
64
64
  label: "List",
65
- Icon: import_icons.ListIcon,
65
+ icon: import_svg.ListIcon,
66
66
  states: import_component_meta.defaultStates,
67
67
  presetStyle,
68
68
  children: []
@@ -22,7 +22,7 @@ __export(paragraph_ws_exports, {
22
22
  propsMeta: () => propsMeta
23
23
  });
24
24
  module.exports = __toCommonJS(paragraph_ws_exports);
25
- var import_icons = require("@webstudio-is/icons");
25
+ var import_svg = require("@webstudio-is/icons/svg");
26
26
  var import_normalize = require("../css/normalize");
27
27
  var import_component_meta = require("./component-meta");
28
28
  var import_paragraph = require("./__generated__/paragraph.props");
@@ -33,7 +33,7 @@ const meta = {
33
33
  category: "typography",
34
34
  type: "rich-text",
35
35
  label: "Paragraph",
36
- Icon: import_icons.TextAlignLeftIcon,
36
+ icon: import_svg.TextAlignLeftIcon,
37
37
  children: [{ type: "text", value: "Pragraph you can edit" }],
38
38
  states: import_component_meta.defaultStates,
39
39
  presetStyle
@@ -22,7 +22,7 @@ __export(radio_button_field_ws_exports, {
22
22
  propsMeta: () => propsMeta
23
23
  });
24
24
  module.exports = __toCommonJS(radio_button_field_ws_exports);
25
- var import_icons = require("@webstudio-is/icons");
25
+ var import_svg = require("@webstudio-is/icons/svg");
26
26
  var import_component_meta = require("./component-meta");
27
27
  var import_radio_button_field = require("./__generated__/radio-button-field.props");
28
28
  var import_normalize = require("../css/normalize");
@@ -36,7 +36,7 @@ const meta = {
36
36
  category: "forms",
37
37
  type: "container",
38
38
  label: "Radio",
39
- Icon: import_icons.RadioCheckedIcon,
39
+ icon: import_svg.RadioCheckedIcon,
40
40
  states: import_component_meta.defaultStates,
41
41
  presetStyle,
42
42
  children: [
@@ -22,7 +22,7 @@ __export(radio_button_ws_exports, {
22
22
  propsMeta: () => propsMeta
23
23
  });
24
24
  module.exports = __toCommonJS(radio_button_ws_exports);
25
- var import_icons = require("@webstudio-is/icons");
25
+ var import_svg = require("@webstudio-is/icons/svg");
26
26
  var import_component_meta = require("./component-meta");
27
27
  var import_normalize = require("../css/normalize");
28
28
  var import_radio_button = require("./__generated__/radio-button.props");
@@ -38,7 +38,7 @@ const presetStyle = {
38
38
  const meta = {
39
39
  type: "control",
40
40
  label: "Radio Input",
41
- Icon: import_icons.RadioCheckedIcon,
41
+ icon: import_svg.RadioCheckedIcon,
42
42
  presetStyle,
43
43
  states: [
44
44
  ...import_component_meta.defaultStates,
@@ -22,7 +22,7 @@ __export(separator_ws_exports, {
22
22
  propsMeta: () => propsMeta
23
23
  });
24
24
  module.exports = __toCommonJS(separator_ws_exports);
25
- var import_icons = require("@webstudio-is/icons");
25
+ var import_svg = require("@webstudio-is/icons/svg");
26
26
  var import_component_meta = require("./component-meta");
27
27
  var import_separator = require("./__generated__/separator.props");
28
28
  var import_normalize = require("../css/normalize");
@@ -59,7 +59,7 @@ const meta = {
59
59
  category: "general",
60
60
  type: "embed",
61
61
  label: "Separator",
62
- Icon: import_icons.DashIcon,
62
+ icon: import_svg.DashIcon,
63
63
  states: import_component_meta.defaultStates,
64
64
  presetStyle,
65
65
  children: []
@@ -22,12 +22,12 @@ __export(slot_ws_exports, {
22
22
  propsMeta: () => propsMeta
23
23
  });
24
24
  module.exports = __toCommonJS(slot_ws_exports);
25
- var import_icons = require("@webstudio-is/icons");
25
+ var import_svg = require("@webstudio-is/icons/svg");
26
26
  const meta = {
27
27
  category: "general",
28
28
  type: "container",
29
29
  label: "Slot",
30
- Icon: import_icons.SlotComponentIcon
30
+ icon: import_svg.SlotComponentIcon
31
31
  };
32
32
  const propsMeta = {
33
33
  props: {}
@@ -22,7 +22,7 @@ __export(span_ws_exports, {
22
22
  propsMeta: () => propsMeta
23
23
  });
24
24
  module.exports = __toCommonJS(span_ws_exports);
25
- var import_icons = require("@webstudio-is/icons");
25
+ var import_svg = require("@webstudio-is/icons/svg");
26
26
  var import_normalize = require("../css/normalize");
27
27
  var import_component_meta = require("./component-meta");
28
28
  var import_span = require("./__generated__/span.props");
@@ -32,7 +32,7 @@ const presetStyle = {
32
32
  const meta = {
33
33
  type: "rich-text-child",
34
34
  label: "Styled Text",
35
- Icon: import_icons.PaintBrushIcon,
35
+ icon: import_svg.PaintBrushIcon,
36
36
  states: import_component_meta.defaultStates,
37
37
  presetStyle
38
38
  };
@@ -22,7 +22,7 @@ __export(subscript_ws_exports, {
22
22
  propsMeta: () => propsMeta
23
23
  });
24
24
  module.exports = __toCommonJS(subscript_ws_exports);
25
- var import_icons = require("@webstudio-is/icons");
25
+ var import_svg = require("@webstudio-is/icons/svg");
26
26
  var import_normalize = require("../css/normalize");
27
27
  var import_component_meta = require("./component-meta");
28
28
  var import_subscript = require("./__generated__/subscript.props");
@@ -32,7 +32,7 @@ const presetStyle = {
32
32
  const meta = {
33
33
  type: "rich-text-child",
34
34
  label: "Subscript Text",
35
- Icon: import_icons.SubscriptIcon,
35
+ icon: import_svg.SubscriptIcon,
36
36
  states: import_component_meta.defaultStates,
37
37
  presetStyle
38
38
  };
@@ -22,7 +22,7 @@ __export(success_message_ws_exports, {
22
22
  propsMeta: () => propsMeta
23
23
  });
24
24
  module.exports = __toCommonJS(success_message_ws_exports);
25
- var import_icons = require("@webstudio-is/icons");
25
+ var import_svg = require("@webstudio-is/icons/svg");
26
26
  var import_success_message = require("./__generated__/success-message.props");
27
27
  var import_normalize = require("../css/normalize");
28
28
  const presetStyle = {
@@ -31,7 +31,7 @@ const presetStyle = {
31
31
  const meta = {
32
32
  type: "container",
33
33
  label: "Success Message",
34
- Icon: import_icons.BoxIcon,
34
+ icon: import_svg.BoxIcon,
35
35
  presetStyle
36
36
  };
37
37
  const propsMeta = {
@@ -22,7 +22,7 @@ __export(superscript_ws_exports, {
22
22
  propsMeta: () => propsMeta
23
23
  });
24
24
  module.exports = __toCommonJS(superscript_ws_exports);
25
- var import_icons = require("@webstudio-is/icons");
25
+ var import_svg = require("@webstudio-is/icons/svg");
26
26
  var import_normalize = require("../css/normalize");
27
27
  var import_component_meta = require("./component-meta");
28
28
  var import_superscript = require("./__generated__/superscript.props");
@@ -32,7 +32,7 @@ const presetStyle = {
32
32
  const meta = {
33
33
  type: "rich-text-child",
34
34
  label: "Superscript Text",
35
- Icon: import_icons.SuperscriptIcon,
35
+ icon: import_svg.SuperscriptIcon,
36
36
  states: import_component_meta.defaultStates,
37
37
  presetStyle
38
38
  };
@@ -22,7 +22,7 @@ __export(text_block_ws_exports, {
22
22
  propsMeta: () => propsMeta
23
23
  });
24
24
  module.exports = __toCommonJS(text_block_ws_exports);
25
- var import_icons = require("@webstudio-is/icons");
25
+ var import_svg = require("@webstudio-is/icons/svg");
26
26
  var import_component_meta = require("./component-meta");
27
27
  var import_text_block = require("./__generated__/text-block.props");
28
28
  var import_normalize = require("../css/normalize");
@@ -39,7 +39,7 @@ const meta = {
39
39
  category: "typography",
40
40
  type: "rich-text",
41
41
  label: "Text Block",
42
- Icon: import_icons.TextBlockIcon,
42
+ icon: import_svg.TextBlockIcon,
43
43
  states: import_component_meta.defaultStates,
44
44
  presetStyle,
45
45
  children: [{ type: "text", value: "Block of text you can edit" }]
@@ -22,7 +22,7 @@ __export(textarea_ws_exports, {
22
22
  propsMeta: () => propsMeta
23
23
  });
24
24
  module.exports = __toCommonJS(textarea_ws_exports);
25
- var import_icons = require("@webstudio-is/icons");
25
+ var import_svg = require("@webstudio-is/icons/svg");
26
26
  var import_normalize = require("../css/normalize");
27
27
  var import_component_meta = require("./component-meta");
28
28
  var import_textarea = require("./__generated__/textarea.props");
@@ -37,7 +37,7 @@ const meta = {
37
37
  category: "forms",
38
38
  type: "control",
39
39
  label: "Text Area",
40
- Icon: import_icons.FormTextAreaIcon,
40
+ icon: import_svg.FormTextAreaIcon,
41
41
  presetStyle,
42
42
  states: [
43
43
  ...import_component_meta.defaultStates,
@@ -23,8 +23,6 @@ __export(css_exports, {
23
23
  });
24
24
  module.exports = __toCommonJS(css_exports);
25
25
  var import_css_engine = require("@webstudio-is/css-engine");
26
- var import_components_utils = require("../components/components-utils");
27
- var import_components = require("../components");
28
26
  var import_tree = require("../tree");
29
27
  var import_global_rules = require("./global-rules");
30
28
  var import_style_rules = require("./style-rules");
@@ -61,9 +59,8 @@ const generateCssText = (data, options) => {
61
59
  for (const breakpoint of breakpoints.values()) {
62
60
  engine.addMediaRule(breakpoint.id, breakpoint);
63
61
  }
64
- for (const component of (0, import_components_utils.getComponentNames)()) {
65
- const meta = (0, import_components.getComponentMeta)(component);
66
- const presetStyle = meta?.presetStyle;
62
+ for (const [component, meta] of data.componentMetas) {
63
+ const presetStyle = meta.presetStyle;
67
64
  if (presetStyle === void 0) {
68
65
  continue;
69
66
  }
@@ -72,7 +72,7 @@ const boxSizing = {
72
72
  property: "boxSizing",
73
73
  value: { type: "keyword", value: "border-box" }
74
74
  };
75
- const baseStyle = [boxSizing, ...import_presets.borders];
75
+ const baseStyle = [boxSizing, ...import_presets.borders, ...import_presets.outline];
76
76
  const div = baseStyle;
77
77
  const address = baseStyle;
78
78
  const article = baseStyle;
@@ -18,7 +18,8 @@ var __copyProps = (to, from, except, desc) => {
18
18
  var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
19
19
  var presets_exports = {};
20
20
  __export(presets_exports, {
21
- borders: () => borders
21
+ borders: () => borders,
22
+ outline: () => outline
22
23
  });
23
24
  module.exports = __toCommonJS(presets_exports);
24
25
  const borders = [
@@ -39,3 +40,9 @@ const borders = [
39
40
  value: { type: "unit", value: 1, unit: "px" }
40
41
  }
41
42
  ];
43
+ const outline = [
44
+ {
45
+ property: "outlineWidth",
46
+ value: { type: "unit", value: 1, unit: "px" }
47
+ }
48
+ ];
@@ -25,11 +25,10 @@ var import_jsx_runtime = require("react/jsx-runtime");
25
25
  var import_react = require("react");
26
26
  var import_react2 = require("@remix-run/react");
27
27
  var import_context = require("../context");
28
- var import_session_storage_polyfill = require("./session-storage-polyfill");
29
28
  const createElementsTree = ({
29
+ renderer,
30
30
  instances,
31
31
  rootInstanceId,
32
- sandbox,
33
32
  propsByInstanceIdStore,
34
33
  assetsStore,
35
34
  pagesStore,
@@ -55,7 +54,6 @@ const createElementsTree = ({
55
54
  children: [
56
55
  /* @__PURE__ */ (0, import_jsx_runtime.jsxs)(import_react.Fragment, { children: [
57
56
  children,
58
- sandbox && /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_session_storage_polyfill.SessionStoragePolyfill, {}),
59
57
  /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_react2.ScrollRestoration, {}),
60
58
  /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_react2.Scripts, {})
61
59
  ] }, "children")
@@ -65,7 +63,7 @@ const createElementsTree = ({
65
63
  return /* @__PURE__ */ (0, import_jsx_runtime.jsx)(
66
64
  import_context.ReactSdkContext.Provider,
67
65
  {
68
- value: { propsByInstanceIdStore, assetsStore, pagesStore },
66
+ value: { propsByInstanceIdStore, assetsStore, pagesStore, renderer },
69
67
  children: root
70
68
  }
71
69
  );
@@ -0,0 +1,11 @@
1
+ const props = {
2
+ code: { required: true, control: "text", type: "string" },
3
+ executeScriptOnCanvas: {
4
+ required: true,
5
+ control: "boolean",
6
+ type: "boolean"
7
+ }
8
+ };
9
+ export {
10
+ props
11
+ };
@@ -1,4 +1,4 @@
1
- import { BlockquoteIcon } from "@webstudio-is/icons";
1
+ import { BlockquoteIcon } from "@webstudio-is/icons/svg";
2
2
  import {
3
3
  defaultStates
4
4
  } from "./component-meta";
@@ -55,7 +55,7 @@ const meta = {
55
55
  category: "typography",
56
56
  type: "rich-text",
57
57
  label: "Blockquote",
58
- Icon: BlockquoteIcon,
58
+ icon: BlockquoteIcon,
59
59
  states: defaultStates,
60
60
  presetStyle,
61
61
  children: [{ type: "text", value: "Blockquote you can edit" }]