@webstudio-is/react-sdk 0.34.0 → 0.36.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 (234) hide show
  1. package/lib/app/custom-components/image.js +1 -1
  2. package/lib/app/custom-components/index.js +1 -6
  3. package/lib/cjs/app/custom-components/image.cjs +2 -2
  4. package/lib/cjs/app/custom-components/index.cjs +1 -6
  5. package/lib/cjs/components/__generated__/blockquote.props.cjs +414 -0
  6. package/lib/cjs/components/__generated__/body.props.cjs +413 -0
  7. package/lib/cjs/components/__generated__/bold.props.cjs +413 -0
  8. package/lib/cjs/components/__generated__/box.props.cjs +431 -0
  9. package/lib/cjs/components/__generated__/button.props.cjs +430 -0
  10. package/lib/cjs/components/__generated__/code.props.cjs +420 -0
  11. package/lib/cjs/components/__generated__/form.props.cjs +421 -0
  12. package/lib/cjs/components/__generated__/heading.props.cjs +420 -0
  13. package/lib/cjs/components/__generated__/image.props.cjs +454 -0
  14. package/lib/cjs/components/__generated__/input.props.cjs +451 -0
  15. package/lib/cjs/components/__generated__/italic.props.cjs +413 -0
  16. package/lib/cjs/components/__generated__/link.props.cjs +437 -0
  17. package/lib/cjs/components/__generated__/list-item.props.cjs +414 -0
  18. package/lib/cjs/components/__generated__/list.props.cjs +427 -0
  19. package/lib/cjs/components/__generated__/paragraph.props.cjs +413 -0
  20. package/lib/cjs/components/__generated__/rich-text-link.props.cjs +437 -0
  21. package/lib/cjs/components/__generated__/separator.props.cjs +413 -0
  22. package/lib/cjs/components/__generated__/span.props.cjs +413 -0
  23. package/lib/cjs/components/__generated__/subscript.props.cjs +413 -0
  24. package/lib/cjs/components/__generated__/superscript.props.cjs +413 -0
  25. package/lib/cjs/components/__generated__/text-block.props.cjs +413 -0
  26. package/lib/cjs/components/blockquote.cjs +31 -0
  27. package/lib/cjs/components/blockquote.ws.cjs +75 -0
  28. package/lib/cjs/components/body.ws.cjs +2 -8
  29. package/lib/cjs/components/bold.ws.cjs +2 -8
  30. package/lib/cjs/components/box.ws.cjs +2 -8
  31. package/lib/cjs/components/button.ws.cjs +2 -8
  32. package/lib/cjs/components/code.cjs +38 -0
  33. package/lib/cjs/components/code.ws.cjs +66 -0
  34. package/lib/cjs/components/components-utils.cjs +71 -0
  35. package/lib/cjs/components/components.cjs +64 -0
  36. package/lib/cjs/components/form.ws.cjs +2 -8
  37. package/lib/cjs/components/heading.ws.cjs +2 -8
  38. package/lib/cjs/components/image.ws.cjs +8 -9
  39. package/lib/cjs/components/index.cjs +28 -53
  40. package/lib/cjs/components/input.ws.cjs +2 -8
  41. package/lib/cjs/components/italic.ws.cjs +2 -8
  42. package/lib/cjs/components/link.ws.cjs +2 -8
  43. package/lib/cjs/{css/breakpoints.cjs → components/list-item.cjs} +12 -10
  44. package/lib/cjs/components/list-item.ws.cjs +35 -0
  45. package/lib/cjs/components/list.cjs +31 -0
  46. package/lib/cjs/components/list.ws.cjs +51 -0
  47. package/lib/cjs/components/paragraph.ws.cjs +2 -8
  48. package/lib/cjs/components/rich-text-link.ws.cjs +2 -8
  49. package/lib/cjs/components/separator.cjs +31 -0
  50. package/lib/cjs/components/separator.ws.cjs +51 -0
  51. package/lib/cjs/components/span.ws.cjs +2 -8
  52. package/lib/cjs/components/subscript.ws.cjs +2 -8
  53. package/lib/cjs/components/superscript.ws.cjs +2 -8
  54. package/lib/cjs/components/text-block.ws.cjs +2 -8
  55. package/lib/cjs/css/get-browser-style.cjs +13 -5
  56. package/lib/cjs/css/index.cjs +0 -1
  57. package/lib/cjs/index.cjs +2 -0
  58. package/lib/cjs/tree/create-elements-tree.cjs +10 -9
  59. package/lib/cjs/tree/index.cjs +1 -1
  60. package/lib/cjs/tree/root.cjs +28 -4
  61. package/lib/cjs/tree/{wrapper-component.cjs → webstudio-component.cjs} +12 -11
  62. package/lib/components/__generated__/blockquote.props.js +394 -0
  63. package/lib/components/__generated__/body.props.js +393 -0
  64. package/lib/components/__generated__/bold.props.js +393 -0
  65. package/lib/components/__generated__/box.props.js +411 -0
  66. package/lib/components/__generated__/button.props.js +410 -0
  67. package/lib/components/__generated__/code.props.js +400 -0
  68. package/lib/components/__generated__/form.props.js +401 -0
  69. package/lib/components/__generated__/heading.props.js +400 -0
  70. package/lib/components/__generated__/image.props.js +434 -0
  71. package/lib/components/__generated__/input.props.js +431 -0
  72. package/lib/components/__generated__/italic.props.js +393 -0
  73. package/lib/components/__generated__/link.props.js +417 -0
  74. package/lib/components/__generated__/list-item.props.js +394 -0
  75. package/lib/components/__generated__/list.props.js +407 -0
  76. package/lib/components/__generated__/paragraph.props.js +393 -0
  77. package/lib/components/__generated__/rich-text-link.props.js +417 -0
  78. package/lib/components/__generated__/separator.props.js +393 -0
  79. package/lib/components/__generated__/span.props.js +393 -0
  80. package/lib/components/__generated__/subscript.props.js +393 -0
  81. package/lib/components/__generated__/superscript.props.js +393 -0
  82. package/lib/components/__generated__/text-block.props.js +393 -0
  83. package/lib/components/blockquote.js +14 -0
  84. package/lib/components/blockquote.ws.js +55 -0
  85. package/lib/components/body.ws.js +1 -1
  86. package/lib/components/bold.ws.js +1 -1
  87. package/lib/components/box.ws.js +1 -1
  88. package/lib/components/button.ws.js +1 -1
  89. package/lib/components/code.js +21 -0
  90. package/lib/components/code.ws.js +46 -0
  91. package/lib/components/components-utils.js +45 -0
  92. package/lib/components/components.js +44 -0
  93. package/lib/components/form.ws.js +1 -1
  94. package/lib/components/heading.ws.js +1 -1
  95. package/lib/components/image.ws.js +7 -2
  96. package/lib/components/index.js +28 -53
  97. package/lib/components/input.ws.js +1 -1
  98. package/lib/components/italic.ws.js +1 -1
  99. package/lib/components/link.ws.js +1 -1
  100. package/lib/components/list-item.js +14 -0
  101. package/lib/components/list-item.ws.js +15 -0
  102. package/lib/components/list.js +14 -0
  103. package/lib/components/list.ws.js +31 -0
  104. package/lib/components/paragraph.ws.js +1 -1
  105. package/lib/components/rich-text-link.ws.js +1 -1
  106. package/lib/components/separator.js +14 -0
  107. package/lib/components/separator.ws.js +31 -0
  108. package/lib/components/span.ws.js +1 -1
  109. package/lib/components/subscript.ws.js +1 -1
  110. package/lib/components/superscript.ws.js +1 -1
  111. package/lib/components/text-block.ws.js +1 -1
  112. package/lib/css/get-browser-style.js +9 -1
  113. package/lib/css/index.js +0 -1
  114. package/lib/index.js +2 -0
  115. package/lib/tree/create-elements-tree.js +10 -9
  116. package/lib/tree/index.js +1 -1
  117. package/lib/tree/root.js +28 -4
  118. package/lib/tree/{wrapper-component.js → webstudio-component.js} +8 -7
  119. package/package.json +14 -11
  120. package/src/app/custom-components/image.tsx +1 -1
  121. package/src/app/custom-components/index.ts +2 -7
  122. package/src/components/__generated__/blockquote.props.ts +439 -0
  123. package/src/components/__generated__/body.props.ts +438 -0
  124. package/src/components/__generated__/bold.props.ts +438 -0
  125. package/src/components/__generated__/box.props.ts +456 -0
  126. package/src/components/__generated__/button.props.ts +455 -0
  127. package/src/components/__generated__/code.props.ts +445 -0
  128. package/src/components/__generated__/form.props.ts +446 -0
  129. package/src/components/__generated__/heading.props.ts +445 -0
  130. package/src/components/__generated__/image.props.ts +479 -0
  131. package/src/components/__generated__/input.props.ts +476 -0
  132. package/src/components/__generated__/italic.props.ts +438 -0
  133. package/src/components/__generated__/link.props.ts +462 -0
  134. package/src/components/__generated__/list-item.props.ts +439 -0
  135. package/src/components/__generated__/list.props.ts +452 -0
  136. package/src/components/__generated__/paragraph.props.ts +438 -0
  137. package/src/components/__generated__/rich-text-link.props.ts +462 -0
  138. package/src/components/__generated__/separator.props.ts +438 -0
  139. package/src/components/__generated__/span.props.ts +438 -0
  140. package/src/components/__generated__/subscript.props.ts +438 -0
  141. package/src/components/__generated__/superscript.props.ts +438 -0
  142. package/src/components/__generated__/text-block.props.ts +438 -0
  143. package/src/components/blockquote.stories.tsx +16 -0
  144. package/src/components/blockquote.tsx +18 -0
  145. package/src/components/blockquote.ws.tsx +55 -0
  146. package/src/components/body.ws.tsx +3 -3
  147. package/src/components/bold.ws.tsx +3 -3
  148. package/src/components/box.ws.ts +3 -3
  149. package/src/components/button.ws.tsx +3 -3
  150. package/src/components/code.stories.tsx +16 -0
  151. package/src/components/code.tsx +31 -0
  152. package/src/components/code.ws.tsx +46 -0
  153. package/src/components/components-utils.ts +75 -0
  154. package/src/components/components.ts +28 -0
  155. package/src/components/form.ws.tsx +3 -3
  156. package/src/components/heading.ws.tsx +3 -3
  157. package/src/components/image.ws.tsx +9 -4
  158. package/src/components/index.ts +28 -63
  159. package/src/components/input.ws.tsx +3 -3
  160. package/src/components/italic.ws.tsx +3 -3
  161. package/src/components/link.ws.tsx +3 -3
  162. package/src/components/list-item.stories.tsx +16 -0
  163. package/src/components/list-item.tsx +18 -0
  164. package/src/components/list-item.ws.tsx +14 -0
  165. package/src/components/list.stories.tsx +17 -0
  166. package/src/components/list.tsx +24 -0
  167. package/src/components/list.ws.tsx +31 -0
  168. package/src/components/paragraph.ws.tsx +3 -3
  169. package/src/components/rich-text-link.ws.tsx +3 -3
  170. package/src/components/separator.stories.tsx +14 -0
  171. package/src/components/separator.tsx +18 -0
  172. package/src/components/separator.ws.tsx +31 -0
  173. package/src/components/span.ws.tsx +3 -3
  174. package/src/components/subscript.ws.tsx +3 -3
  175. package/src/components/superscript.ws.tsx +3 -3
  176. package/src/components/text-block.ws.tsx +3 -3
  177. package/src/css/get-browser-style.ts +14 -3
  178. package/src/css/index.ts +0 -1
  179. package/src/index.ts +2 -0
  180. package/src/props.ts +1 -1
  181. package/src/tree/create-elements-tree.tsx +16 -32
  182. package/src/tree/index.ts +1 -1
  183. package/src/tree/root.ts +37 -5
  184. package/src/tree/{wrapper-component.tsx → webstudio-component.tsx} +11 -9
  185. package/lib/cjs/components/__generated__/body.props.json +0 -743
  186. package/lib/cjs/components/__generated__/bold.props.json +0 -743
  187. package/lib/cjs/components/__generated__/box.props.json +0 -765
  188. package/lib/cjs/components/__generated__/button.props.json +0 -824
  189. package/lib/cjs/components/__generated__/form.props.json +0 -799
  190. package/lib/cjs/components/__generated__/heading.props.json +0 -754
  191. package/lib/cjs/components/__generated__/image.props.json +0 -846
  192. package/lib/cjs/components/__generated__/input.props.json +0 -977
  193. package/lib/cjs/components/__generated__/italic.props.json +0 -743
  194. package/lib/cjs/components/__generated__/link.props.json +0 -820
  195. package/lib/cjs/components/__generated__/paragraph.props.json +0 -743
  196. package/lib/cjs/components/__generated__/rich-text-link.props.json +0 -820
  197. package/lib/cjs/components/__generated__/span.props.json +0 -743
  198. package/lib/cjs/components/__generated__/subscript.props.json +0 -743
  199. package/lib/cjs/components/__generated__/superscript.props.json +0 -743
  200. package/lib/cjs/components/__generated__/text-block.props.json +0 -743
  201. package/lib/components/__generated__/body.props.json +0 -743
  202. package/lib/components/__generated__/bold.props.json +0 -743
  203. package/lib/components/__generated__/box.props.json +0 -765
  204. package/lib/components/__generated__/button.props.json +0 -824
  205. package/lib/components/__generated__/form.props.json +0 -799
  206. package/lib/components/__generated__/heading.props.json +0 -754
  207. package/lib/components/__generated__/image.props.json +0 -846
  208. package/lib/components/__generated__/input.props.json +0 -977
  209. package/lib/components/__generated__/italic.props.json +0 -743
  210. package/lib/components/__generated__/link.props.json +0 -820
  211. package/lib/components/__generated__/paragraph.props.json +0 -743
  212. package/lib/components/__generated__/rich-text-link.props.json +0 -820
  213. package/lib/components/__generated__/span.props.json +0 -743
  214. package/lib/components/__generated__/subscript.props.json +0 -743
  215. package/lib/components/__generated__/superscript.props.json +0 -743
  216. package/lib/components/__generated__/text-block.props.json +0 -743
  217. package/lib/css/breakpoints.js +0 -9
  218. package/src/components/__generated__/body.props.json +0 -743
  219. package/src/components/__generated__/bold.props.json +0 -743
  220. package/src/components/__generated__/box.props.json +0 -765
  221. package/src/components/__generated__/button.props.json +0 -824
  222. package/src/components/__generated__/form.props.json +0 -799
  223. package/src/components/__generated__/heading.props.json +0 -754
  224. package/src/components/__generated__/image.props.json +0 -846
  225. package/src/components/__generated__/input.props.json +0 -977
  226. package/src/components/__generated__/italic.props.json +0 -743
  227. package/src/components/__generated__/link.props.json +0 -820
  228. package/src/components/__generated__/paragraph.props.json +0 -743
  229. package/src/components/__generated__/rich-text-link.props.json +0 -820
  230. package/src/components/__generated__/span.props.json +0 -743
  231. package/src/components/__generated__/subscript.props.json +0 -743
  232. package/src/components/__generated__/superscript.props.json +0 -743
  233. package/src/components/__generated__/text-block.props.json +0 -743
  234. package/src/css/breakpoints.ts +0 -10
@@ -0,0 +1,31 @@
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 list_exports = {};
20
+ __export(list_exports, {
21
+ List: () => List
22
+ });
23
+ module.exports = __toCommonJS(list_exports);
24
+ var import_react = require("react");
25
+ const unorderedTag = "ul";
26
+ const orderedTag = "ol";
27
+ const List = (0, import_react.forwardRef)(({ ordered = false, ...props }, ref) => {
28
+ const tag = ordered ? orderedTag : unorderedTag;
29
+ return (0, import_react.createElement)(tag, { ...props, ref });
30
+ });
31
+ List.displayName = "List";
@@ -0,0 +1,51 @@
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 list_ws_exports = {};
20
+ __export(list_ws_exports, {
21
+ meta: () => meta,
22
+ propsMeta: () => propsMeta
23
+ });
24
+ module.exports = __toCommonJS(list_ws_exports);
25
+ var import_icons = require("@webstudio-is/icons");
26
+ var import_list = require("./__generated__/list.props");
27
+ const presetStyle = {
28
+ marginTop: {
29
+ type: "keyword",
30
+ value: "0"
31
+ },
32
+ marginBottom: {
33
+ type: "keyword",
34
+ value: "10px"
35
+ },
36
+ paddingLeft: {
37
+ type: "keyword",
38
+ value: "40px"
39
+ }
40
+ };
41
+ const meta = {
42
+ type: "container",
43
+ label: "List",
44
+ Icon: import_icons.ListIcon,
45
+ presetStyle,
46
+ children: []
47
+ };
48
+ const propsMeta = {
49
+ props: import_list.props,
50
+ initialProps: ["ordered", "type", "starts", "reversed"]
51
+ };
@@ -1,9 +1,7 @@
1
1
  "use strict";
2
- var __create = Object.create;
3
2
  var __defProp = Object.defineProperty;
4
3
  var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
5
4
  var __getOwnPropNames = Object.getOwnPropertyNames;
6
- var __getProtoOf = Object.getPrototypeOf;
7
5
  var __hasOwnProp = Object.prototype.hasOwnProperty;
8
6
  var __export = (target, all) => {
9
7
  for (var name in all)
@@ -17,10 +15,6 @@ var __copyProps = (to, from, except, desc) => {
17
15
  }
18
16
  return to;
19
17
  };
20
- var __toESM = (mod, isNodeMode, target) => (target = mod != null ? __create(__getProtoOf(mod)) : {}, __copyProps(
21
- isNodeMode || !mod || !mod.__esModule ? __defProp(target, "default", { value: mod, enumerable: true }) : target,
22
- mod
23
- ));
24
18
  var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
25
19
  var paragraph_ws_exports = {};
26
20
  __export(paragraph_ws_exports, {
@@ -29,7 +23,7 @@ __export(paragraph_ws_exports, {
29
23
  });
30
24
  module.exports = __toCommonJS(paragraph_ws_exports);
31
25
  var import_icons = require("@webstudio-is/icons");
32
- var import_paragraph_props = __toESM(require("./__generated__/paragraph.props.json"), 1);
26
+ var import_paragraph = require("./__generated__/paragraph.props");
33
27
  const meta = {
34
28
  type: "rich-text",
35
29
  label: "Paragraph",
@@ -37,5 +31,5 @@ const meta = {
37
31
  children: ["Pragraph you can edit"]
38
32
  };
39
33
  const propsMeta = {
40
- props: import_paragraph_props.default
34
+ props: import_paragraph.props
41
35
  };
@@ -1,9 +1,7 @@
1
1
  "use strict";
2
- var __create = Object.create;
3
2
  var __defProp = Object.defineProperty;
4
3
  var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
5
4
  var __getOwnPropNames = Object.getOwnPropertyNames;
6
- var __getProtoOf = Object.getPrototypeOf;
7
5
  var __hasOwnProp = Object.prototype.hasOwnProperty;
8
6
  var __export = (target, all) => {
9
7
  for (var name in all)
@@ -17,10 +15,6 @@ var __copyProps = (to, from, except, desc) => {
17
15
  }
18
16
  return to;
19
17
  };
20
- var __toESM = (mod, isNodeMode, target) => (target = mod != null ? __create(__getProtoOf(mod)) : {}, __copyProps(
21
- isNodeMode || !mod || !mod.__esModule ? __defProp(target, "default", { value: mod, enumerable: true }) : target,
22
- mod
23
- ));
24
18
  var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
25
19
  var rich_text_link_ws_exports = {};
26
20
  __export(rich_text_link_ws_exports, {
@@ -29,12 +23,12 @@ __export(rich_text_link_ws_exports, {
29
23
  });
30
24
  module.exports = __toCommonJS(rich_text_link_ws_exports);
31
25
  var import_icons = require("@webstudio-is/icons");
32
- var import_rich_text_link_props = __toESM(require("./__generated__/rich-text-link.props.json"), 1);
26
+ var import_rich_text_link = require("./__generated__/rich-text-link.props");
33
27
  const meta = {
34
28
  type: "rich-text-child",
35
29
  label: "Link",
36
30
  Icon: import_icons.Link2Icon
37
31
  };
38
32
  const propsMeta = {
39
- props: import_rich_text_link_props.default
33
+ props: import_rich_text_link.props
40
34
  };
@@ -0,0 +1,31 @@
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 separator_exports = {};
20
+ __export(separator_exports, {
21
+ Separator: () => Separator
22
+ });
23
+ module.exports = __toCommonJS(separator_exports);
24
+ var import_react = require("react");
25
+ const defaultTag = "hr";
26
+ const Separator = (0, import_react.forwardRef)(
27
+ (props, ref) => {
28
+ return (0, import_react.createElement)(defaultTag, { ...props, ref });
29
+ }
30
+ );
31
+ Separator.displayName = "Separator";
@@ -0,0 +1,51 @@
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 separator_ws_exports = {};
20
+ __export(separator_ws_exports, {
21
+ meta: () => meta,
22
+ propsMeta: () => propsMeta
23
+ });
24
+ module.exports = __toCommonJS(separator_ws_exports);
25
+ var import_icons = require("@webstudio-is/icons");
26
+ var import_separator = require("./__generated__/separator.props");
27
+ const presetStyle = {
28
+ height: {
29
+ type: "keyword",
30
+ value: "1px"
31
+ },
32
+ backgroundColor: {
33
+ type: "keyword",
34
+ value: "gray"
35
+ },
36
+ border: {
37
+ type: "keyword",
38
+ value: "none"
39
+ }
40
+ };
41
+ const meta = {
42
+ type: "embed",
43
+ label: "Separator",
44
+ Icon: import_icons.DashIcon,
45
+ presetStyle,
46
+ children: []
47
+ };
48
+ const propsMeta = {
49
+ props: import_separator.props,
50
+ initialProps: []
51
+ };
@@ -1,9 +1,7 @@
1
1
  "use strict";
2
- var __create = Object.create;
3
2
  var __defProp = Object.defineProperty;
4
3
  var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
5
4
  var __getOwnPropNames = Object.getOwnPropertyNames;
6
- var __getProtoOf = Object.getPrototypeOf;
7
5
  var __hasOwnProp = Object.prototype.hasOwnProperty;
8
6
  var __export = (target, all) => {
9
7
  for (var name in all)
@@ -17,10 +15,6 @@ var __copyProps = (to, from, except, desc) => {
17
15
  }
18
16
  return to;
19
17
  };
20
- var __toESM = (mod, isNodeMode, target) => (target = mod != null ? __create(__getProtoOf(mod)) : {}, __copyProps(
21
- isNodeMode || !mod || !mod.__esModule ? __defProp(target, "default", { value: mod, enumerable: true }) : target,
22
- mod
23
- ));
24
18
  var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
25
19
  var span_ws_exports = {};
26
20
  __export(span_ws_exports, {
@@ -29,12 +23,12 @@ __export(span_ws_exports, {
29
23
  });
30
24
  module.exports = __toCommonJS(span_ws_exports);
31
25
  var import_icons = require("@webstudio-is/icons");
32
- var import_span_props = __toESM(require("./__generated__/span.props.json"), 1);
26
+ var import_span = require("./__generated__/span.props");
33
27
  const meta = {
34
28
  type: "rich-text-child",
35
29
  label: "Styled Text",
36
30
  Icon: import_icons.BrushIcon
37
31
  };
38
32
  const propsMeta = {
39
- props: import_span_props.default
33
+ props: import_span.props
40
34
  };
@@ -1,9 +1,7 @@
1
1
  "use strict";
2
- var __create = Object.create;
3
2
  var __defProp = Object.defineProperty;
4
3
  var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
5
4
  var __getOwnPropNames = Object.getOwnPropertyNames;
6
- var __getProtoOf = Object.getPrototypeOf;
7
5
  var __hasOwnProp = Object.prototype.hasOwnProperty;
8
6
  var __export = (target, all) => {
9
7
  for (var name in all)
@@ -17,10 +15,6 @@ var __copyProps = (to, from, except, desc) => {
17
15
  }
18
16
  return to;
19
17
  };
20
- var __toESM = (mod, isNodeMode, target) => (target = mod != null ? __create(__getProtoOf(mod)) : {}, __copyProps(
21
- isNodeMode || !mod || !mod.__esModule ? __defProp(target, "default", { value: mod, enumerable: true }) : target,
22
- mod
23
- ));
24
18
  var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
25
19
  var subscript_ws_exports = {};
26
20
  __export(subscript_ws_exports, {
@@ -29,12 +23,12 @@ __export(subscript_ws_exports, {
29
23
  });
30
24
  module.exports = __toCommonJS(subscript_ws_exports);
31
25
  var import_icons = require("@webstudio-is/icons");
32
- var import_subscript_props = __toESM(require("./__generated__/subscript.props.json"), 1);
26
+ var import_subscript = require("./__generated__/subscript.props");
33
27
  const meta = {
34
28
  type: "rich-text-child",
35
29
  label: "Subscript Text",
36
30
  Icon: import_icons.SubscriptIcon
37
31
  };
38
32
  const propsMeta = {
39
- props: import_subscript_props.default
33
+ props: import_subscript.props
40
34
  };
@@ -1,9 +1,7 @@
1
1
  "use strict";
2
- var __create = Object.create;
3
2
  var __defProp = Object.defineProperty;
4
3
  var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
5
4
  var __getOwnPropNames = Object.getOwnPropertyNames;
6
- var __getProtoOf = Object.getPrototypeOf;
7
5
  var __hasOwnProp = Object.prototype.hasOwnProperty;
8
6
  var __export = (target, all) => {
9
7
  for (var name in all)
@@ -17,10 +15,6 @@ var __copyProps = (to, from, except, desc) => {
17
15
  }
18
16
  return to;
19
17
  };
20
- var __toESM = (mod, isNodeMode, target) => (target = mod != null ? __create(__getProtoOf(mod)) : {}, __copyProps(
21
- isNodeMode || !mod || !mod.__esModule ? __defProp(target, "default", { value: mod, enumerable: true }) : target,
22
- mod
23
- ));
24
18
  var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
25
19
  var superscript_ws_exports = {};
26
20
  __export(superscript_ws_exports, {
@@ -29,12 +23,12 @@ __export(superscript_ws_exports, {
29
23
  });
30
24
  module.exports = __toCommonJS(superscript_ws_exports);
31
25
  var import_icons = require("@webstudio-is/icons");
32
- var import_superscript_props = __toESM(require("./__generated__/superscript.props.json"), 1);
26
+ var import_superscript = require("./__generated__/superscript.props");
33
27
  const meta = {
34
28
  type: "rich-text-child",
35
29
  label: "Superscript Text",
36
30
  Icon: import_icons.SuperscriptIcon
37
31
  };
38
32
  const propsMeta = {
39
- props: import_superscript_props.default
33
+ props: import_superscript.props
40
34
  };
@@ -1,9 +1,7 @@
1
1
  "use strict";
2
- var __create = Object.create;
3
2
  var __defProp = Object.defineProperty;
4
3
  var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
5
4
  var __getOwnPropNames = Object.getOwnPropertyNames;
6
- var __getProtoOf = Object.getPrototypeOf;
7
5
  var __hasOwnProp = Object.prototype.hasOwnProperty;
8
6
  var __export = (target, all) => {
9
7
  for (var name in all)
@@ -17,10 +15,6 @@ var __copyProps = (to, from, except, desc) => {
17
15
  }
18
16
  return to;
19
17
  };
20
- var __toESM = (mod, isNodeMode, target) => (target = mod != null ? __create(__getProtoOf(mod)) : {}, __copyProps(
21
- isNodeMode || !mod || !mod.__esModule ? __defProp(target, "default", { value: mod, enumerable: true }) : target,
22
- mod
23
- ));
24
18
  var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
25
19
  var text_block_ws_exports = {};
26
20
  __export(text_block_ws_exports, {
@@ -29,7 +23,7 @@ __export(text_block_ws_exports, {
29
23
  });
30
24
  module.exports = __toCommonJS(text_block_ws_exports);
31
25
  var import_icons = require("@webstudio-is/icons");
32
- var import_text_block_props = __toESM(require("./__generated__/text-block.props.json"), 1);
26
+ var import_text_block = require("./__generated__/text-block.props");
33
27
  const presetStyle = {
34
28
  minHeight: {
35
29
  type: "unit",
@@ -45,5 +39,5 @@ const meta = {
45
39
  children: ["Block of text you can edit"]
46
40
  };
47
41
  const propsMeta = {
48
- props: import_text_block_props.default
42
+ props: import_text_block.props
49
43
  };
@@ -23,7 +23,8 @@ __export(get_browser_style_exports, {
23
23
  module.exports = __toCommonJS(get_browser_style_exports);
24
24
  var import_detect_font = require("detect-font");
25
25
  var import_css_data = require("@webstudio-is/css-data");
26
- const unitsList = Object.values(import_css_data.units).flat();
26
+ var import_css_data2 = require("@webstudio-is/css-data");
27
+ const unitsList = Object.values(import_css_data2.units).flat();
27
28
  const unitRegex = new RegExp(`${unitsList.join("|")}`);
28
29
  const parseValue = (property, value) => {
29
30
  const number = Number.parseFloat(value);
@@ -32,13 +33,20 @@ const parseValue = (property, value) => {
32
33
  value = "transparent";
33
34
  }
34
35
  if (Number.isNaN(number)) {
36
+ const values = import_css_data.keywordValues[property];
37
+ if (values?.includes(value)) {
38
+ return {
39
+ type: "keyword",
40
+ value
41
+ };
42
+ }
35
43
  return {
36
- type: "keyword",
44
+ type: "unparsed",
37
45
  value
38
46
  };
39
47
  }
40
- if (number === 0 && property in import_css_data.properties) {
41
- return import_css_data.properties[property].initial;
48
+ if (number === 0 && property in import_css_data2.properties) {
49
+ return import_css_data2.properties[property].initial;
42
50
  }
43
51
  if (parsedUnit === null) {
44
52
  return {
@@ -60,7 +68,7 @@ const getBrowserStyle = (element) => {
60
68
  }
61
69
  let knownProperty;
62
70
  const computedStyle = getComputedStyle(element);
63
- for (knownProperty in import_css_data.properties) {
71
+ for (knownProperty in import_css_data2.properties) {
64
72
  if (knownProperty in computedStyle === false) {
65
73
  continue;
66
74
  }
@@ -17,4 +17,3 @@ var css_exports = {};
17
17
  module.exports = __toCommonJS(css_exports);
18
18
  __reExport(css_exports, require("./get-browser-style"), module.exports);
19
19
  __reExport(css_exports, require("./categories"), module.exports);
20
- __reExport(css_exports, require("./breakpoints"), module.exports);
package/lib/cjs/index.cjs CHANGED
@@ -29,4 +29,6 @@ __reExport(src_exports, require("./tree"), module.exports);
29
29
  __reExport(src_exports, require("./components"), module.exports);
30
30
  __reExport(src_exports, require("./pubsub"), module.exports);
31
31
  __reExport(src_exports, require("./app"), module.exports);
32
+ __reExport(src_exports, require("./components/components"), module.exports);
33
+ __reExport(src_exports, require("./components/components-utils"), module.exports);
32
34
  var import_custom_components = require("./app/custom-components");
@@ -32,12 +32,12 @@ const createElementsTree = ({
32
32
  propsByInstanceIdStore,
33
33
  assetsStore,
34
34
  Component,
35
- onChangeChildren
35
+ getComponent
36
36
  }) => {
37
37
  const children = createInstanceChildrenElements({
38
38
  Component,
39
39
  children: instance.children,
40
- onChangeChildren
40
+ getComponent
41
41
  });
42
42
  const body = createInstanceElement({
43
43
  Component,
@@ -51,7 +51,8 @@ const createElementsTree = ({
51
51
  /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_react2.Scripts, {})
52
52
  ]
53
53
  }, "children")
54
- ]
54
+ ],
55
+ getComponent
55
56
  });
56
57
  return /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_context.ReactSdkContext.Provider, {
57
58
  value: { propsByInstanceIdStore, assetsStore },
@@ -61,7 +62,7 @@ const createElementsTree = ({
61
62
  const createInstanceChildrenElements = ({
62
63
  children,
63
64
  Component,
64
- onChangeChildren
65
+ getComponent
65
66
  }) => {
66
67
  const elements = [];
67
68
  for (const child of children) {
@@ -72,13 +73,13 @@ const createInstanceChildrenElements = ({
72
73
  const children2 = createInstanceChildrenElements({
73
74
  children: child.children,
74
75
  Component,
75
- onChangeChildren
76
+ getComponent
76
77
  });
77
78
  const element = createInstanceElement({
78
79
  instance: child,
79
80
  Component,
80
- onChangeChildren,
81
- children: children2
81
+ children: children2,
82
+ getComponent
82
83
  });
83
84
  elements.push(element);
84
85
  }
@@ -88,13 +89,13 @@ const createInstanceElement = ({
88
89
  Component,
89
90
  instance,
90
91
  children = [],
91
- onChangeChildren
92
+ getComponent
92
93
  }) => {
93
94
  const props = {
94
95
  instance,
95
96
  children,
96
97
  key: instance.id,
97
- onChangeChildren
98
+ getComponent
98
99
  };
99
100
  return /* @__PURE__ */ (0, import_jsx_runtime.jsx)(Component, {
100
101
  ...props
@@ -17,4 +17,4 @@ var tree_exports = {};
17
17
  module.exports = __toCommonJS(tree_exports);
18
18
  __reExport(tree_exports, require("./create-elements-tree"), module.exports);
19
19
  __reExport(tree_exports, require("./root"), module.exports);
20
- __reExport(tree_exports, require("./wrapper-component"), module.exports);
20
+ __reExport(tree_exports, require("./webstudio-component"), module.exports);
@@ -23,15 +23,38 @@ __export(root_exports, {
23
23
  module.exports = __toCommonJS(root_exports);
24
24
  var import_nanostores = require("nanostores");
25
25
  var import_create_elements_tree = require("./create-elements-tree");
26
- var import_wrapper_component = require("./wrapper-component");
26
+ var import_webstudio_component = require("./webstudio-component");
27
27
  var import_components = require("../components");
28
28
  var import_custom_components = require("../app/custom-components");
29
29
  var import_params = require("../app/params");
30
30
  var import_props = require("../props");
31
+ const denormalizeTree = (instances) => {
32
+ const convertTree = (instance) => {
33
+ const legacyInstance = {
34
+ type: "instance",
35
+ id: instance.id,
36
+ component: instance.component,
37
+ children: []
38
+ };
39
+ for (const child of instance.children) {
40
+ if (child.type === "id") {
41
+ const childInstance = instances.get(child.value);
42
+ if (childInstance) {
43
+ legacyInstance.children.push(convertTree(childInstance));
44
+ }
45
+ } else {
46
+ legacyInstance.children.push(child);
47
+ }
48
+ }
49
+ return legacyInstance;
50
+ };
51
+ return convertTree(Array.from(instances.values())[0]);
52
+ };
31
53
  const InstanceRoot = ({
32
54
  data,
33
55
  Component,
34
- customComponents = import_custom_components.customComponents
56
+ customComponents = import_custom_components.customComponents,
57
+ getComponent
35
58
  }) => {
36
59
  if (data.tree === null) {
37
60
  throw new Error("Tree is null");
@@ -39,11 +62,12 @@ const InstanceRoot = ({
39
62
  (0, import_params.setParams)(data.params ?? null);
40
63
  (0, import_components.registerComponents)(customComponents);
41
64
  return (0, import_create_elements_tree.createElementsTree)({
42
- instance: data.tree.root,
65
+ instance: denormalizeTree(new Map(data.tree.instances)),
43
66
  propsByInstanceIdStore: (0, import_nanostores.atom)(
44
67
  (0, import_props.getPropsByInstanceId)(new Map(data.tree.props))
45
68
  ),
46
69
  assetsStore: (0, import_nanostores.atom)(new Map(data.assets.map((asset) => [asset.id, asset]))),
47
- Component: Component ?? import_wrapper_component.WrapperComponent
70
+ Component: Component ?? import_webstudio_component.WebstudioComponent,
71
+ getComponent
48
72
  });
49
73
  };
@@ -16,17 +16,17 @@ var __copyProps = (to, from, except, desc) => {
16
16
  return to;
17
17
  };
18
18
  var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
19
- var wrapper_component_exports = {};
20
- __export(wrapper_component_exports, {
21
- WrapperComponent: () => WrapperComponent,
19
+ var webstudio_component_exports = {};
20
+ __export(webstudio_component_exports, {
21
+ WebstudioComponent: () => WebstudioComponent,
22
+ collapsedAttribute: () => collapsedAttribute,
22
23
  componentAttribute: () => componentAttribute,
23
24
  idAttribute: () => idAttribute,
24
- renderWrapperComponentChildren: () => renderWrapperComponentChildren
25
+ renderWebstudioComponentChildren: () => renderWebstudioComponentChildren
25
26
  });
26
- module.exports = __toCommonJS(wrapper_component_exports);
27
+ module.exports = __toCommonJS(webstudio_component_exports);
27
28
  var import_jsx_runtime = require("react/jsx-runtime");
28
29
  var import_react = require("react");
29
- var import_components = require("../components");
30
30
  var import_props = require("../props");
31
31
  const renderText = (text) => {
32
32
  const lines = text.split("\n");
@@ -37,7 +37,7 @@ const renderText = (text) => {
37
37
  ]
38
38
  }, index));
39
39
  };
40
- const renderWrapperComponentChildren = (children) => {
40
+ const renderWebstudioComponentChildren = (children) => {
41
41
  if (children === void 0 || children.length === 0) {
42
42
  return;
43
43
  }
@@ -45,10 +45,10 @@ const renderWrapperComponentChildren = (children) => {
45
45
  return typeof child === "string" ? renderText(child) : child;
46
46
  });
47
47
  };
48
- const WrapperComponent = ({
48
+ const WebstudioComponent = ({
49
49
  instance,
50
- onChangeChildren,
51
50
  children,
51
+ getComponent,
52
52
  ...rest
53
53
  }) => {
54
54
  const instanceProps = (0, import_props.useInstanceProps)(instance.id);
@@ -58,14 +58,15 @@ const WrapperComponent = ({
58
58
  [idAttribute]: instance.id,
59
59
  [componentAttribute]: instance.component
60
60
  };
61
- const Component = (0, import_components.getComponent)(instance.component);
61
+ const Component = getComponent(instance.component);
62
62
  if (Component === void 0) {
63
63
  return /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_jsx_runtime.Fragment, {});
64
64
  }
65
65
  return /* @__PURE__ */ (0, import_jsx_runtime.jsx)(Component, {
66
66
  ...props,
67
- children: renderWrapperComponentChildren(children)
67
+ children: renderWebstudioComponentChildren(children)
68
68
  });
69
69
  };
70
70
  const idAttribute = "data-ws-id";
71
71
  const componentAttribute = "data-ws-component";
72
+ const collapsedAttribute = "data-ws-collapsed";