@webstudio-is/sdk-components-react 0.71.0 → 0.73.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 (178) hide show
  1. package/lib/__generated__/button.props.js +0 -6
  2. package/lib/__generated__/image.props.js +0 -1
  3. package/lib/__generated__/link-block.props.js +1 -7
  4. package/lib/__generated__/link.props.js +1 -7
  5. package/lib/__generated__/rich-text-link.props.js +1 -7
  6. package/lib/__generated__/{radio-button-field.props.js → vimeo-play-button.props.js} +14 -0
  7. package/lib/__generated__/vimeo-preview-image.props.js +441 -0
  8. package/lib/__generated__/{checkbox-field.props.js → vimeo-spinner.props.js} +0 -1
  9. package/lib/__generated__/vimeo.props.js +555 -0
  10. package/lib/blockquote.ws.js +1 -1
  11. package/lib/box.js +2 -1
  12. package/lib/button.js +1 -6
  13. package/lib/button.ws.js +9 -2
  14. package/lib/checkbox.ws.js +19 -1
  15. package/lib/cjs/__generated__/button.props.js +0 -6
  16. package/lib/cjs/__generated__/image.props.js +0 -1
  17. package/lib/cjs/__generated__/link-block.props.js +1 -7
  18. package/lib/cjs/__generated__/link.props.js +1 -7
  19. package/lib/cjs/__generated__/rich-text-link.props.js +1 -7
  20. package/lib/cjs/__generated__/{text-block.props.js → text.props.js} +3 -3
  21. package/lib/cjs/__generated__/{radio-button-field.props.js → vimeo-play-button.props.js} +17 -3
  22. package/lib/cjs/__generated__/vimeo-preview-image.props.js +461 -0
  23. package/lib/cjs/__generated__/{checkbox-field.props.js → vimeo-spinner.props.js} +3 -4
  24. package/lib/cjs/__generated__/vimeo.props.js +575 -0
  25. package/lib/cjs/blockquote.ws.js +1 -1
  26. package/lib/cjs/box.js +2 -1
  27. package/lib/cjs/button.js +1 -6
  28. package/lib/cjs/button.ws.js +9 -2
  29. package/lib/cjs/checkbox.ws.js +19 -1
  30. package/lib/cjs/code-text.ws.js +1 -1
  31. package/lib/cjs/components.js +11 -9
  32. package/lib/cjs/heading.ws.js +1 -1
  33. package/lib/cjs/image.js +3 -3
  34. package/lib/cjs/image.ws.js +12 -9
  35. package/lib/cjs/label.ws.js +3 -6
  36. package/lib/cjs/link.js +1 -1
  37. package/lib/cjs/link.ws.js +3 -3
  38. package/lib/cjs/list-item.ws.js +1 -1
  39. package/lib/cjs/metas.js +11 -9
  40. package/lib/cjs/paragraph.ws.js +2 -2
  41. package/lib/cjs/props.js +11 -9
  42. package/lib/cjs/radio-button.ws.js +19 -1
  43. package/lib/cjs/rich-text-link.ws.js +3 -10
  44. package/lib/cjs/span.ws.js +1 -1
  45. package/lib/cjs/{text-block.js → text.js} +6 -6
  46. package/lib/cjs/{text-block.ws.js → text.ws.js} +10 -10
  47. package/lib/cjs/{link-block.js → vimeo-play-button.js} +17 -9
  48. package/lib/cjs/{link-block.ws.js → vimeo-play-button.ws.js} +13 -22
  49. package/lib/cjs/vimeo-preview-image.js +40 -0
  50. package/lib/cjs/{radio-button-field.js → vimeo-preview-image.ws.js} +17 -10
  51. package/lib/cjs/{checkbox-field.js → vimeo-spinner.js} +16 -8
  52. package/lib/cjs/{checkbox-field.ws.js → vimeo-spinner.ws.js} +11 -30
  53. package/lib/cjs/vimeo.js +294 -0
  54. package/lib/cjs/vimeo.ws.js +345 -0
  55. package/lib/code-text.ws.js +1 -1
  56. package/lib/components.js +11 -9
  57. package/lib/heading.ws.js +1 -1
  58. package/lib/image.js +6 -5
  59. package/lib/image.ws.js +12 -9
  60. package/lib/label.ws.js +4 -7
  61. package/lib/link.js +3 -3
  62. package/lib/link.ws.js +3 -3
  63. package/lib/list-item.ws.js +1 -1
  64. package/lib/metas.js +52 -50
  65. package/lib/paragraph.ws.js +2 -2
  66. package/lib/props.js +52 -50
  67. package/lib/radio-button.ws.js +19 -1
  68. package/lib/rich-text-link.ws.js +3 -10
  69. package/lib/span.ws.js +1 -1
  70. package/lib/{text-block.js → text.js} +3 -3
  71. package/lib/{text-block.ws.js → text.ws.js} +7 -7
  72. package/lib/types/__generated__/vimeo-spinner.props.d.ts +2 -0
  73. package/lib/types/__generated__/vimeo.props.d.ts +2 -0
  74. package/lib/types/box.d.ts +1 -1
  75. package/lib/types/button.d.ts +2 -6
  76. package/lib/types/button.stories.d.ts +2 -6
  77. package/lib/types/components.d.ts +5 -4
  78. package/lib/types/image.d.ts +5 -6
  79. package/lib/types/image.stories.d.ts +555 -6
  80. package/lib/types/image.ws.d.ts +8 -0
  81. package/lib/types/link.d.ts +1 -3
  82. package/lib/types/link.stories.d.ts +2 -6
  83. package/lib/types/metas.d.ts +5 -4
  84. package/lib/types/props.d.ts +5 -4
  85. package/lib/types/rich-text-link.stories.d.ts +2 -6
  86. package/lib/types/{text-block.d.ts → text.d.ts} +1 -1
  87. package/lib/types/{text-block.stories.d.ts → text.stories.d.ts} +1 -1
  88. package/lib/types/vimeo-play-button.d.ts +4 -0
  89. package/lib/types/vimeo-play-button.stories.d.ts +5 -0
  90. package/lib/types/vimeo-preview-image.d.ts +281 -0
  91. package/lib/types/vimeo-preview-image.stories.d.ts +562 -0
  92. package/lib/types/vimeo-spinner.d.ts +2 -0
  93. package/lib/types/vimeo-spinner.stories.d.ts +5 -0
  94. package/lib/types/{link-block.ws.d.ts → vimeo-spinner.ws.d.ts} +1 -1
  95. package/lib/types/vimeo.d.ts +73 -0
  96. package/lib/types/vimeo.stories.d.ts +71 -0
  97. package/lib/types/vimeo.ws.d.ts +3 -0
  98. package/lib/vimeo-play-button.js +21 -0
  99. package/lib/vimeo-play-button.ws.js +26 -0
  100. package/lib/vimeo-preview-image.js +23 -0
  101. package/lib/vimeo-preview-image.ws.js +20 -0
  102. package/lib/vimeo-spinner.js +20 -0
  103. package/lib/vimeo-spinner.ws.js +25 -0
  104. package/lib/vimeo.js +282 -0
  105. package/lib/vimeo.ws.js +327 -0
  106. package/package.json +9 -7
  107. package/src/LICENSE +21 -0
  108. package/src/__generated__/button.props.ts +0 -6
  109. package/src/__generated__/image.props.ts +0 -1
  110. package/src/__generated__/link-block.props.ts +1 -7
  111. package/src/__generated__/link.props.ts +1 -7
  112. package/src/__generated__/rich-text-link.props.ts +1 -7
  113. package/src/__generated__/{checkbox-field.props.ts → vimeo-play-button.props.ts} +14 -0
  114. package/src/__generated__/vimeo-preview-image.props.ts +486 -0
  115. package/src/__generated__/{radio-button-field.props.ts → vimeo-spinner.props.ts} +0 -1
  116. package/src/__generated__/vimeo.props.ts +621 -0
  117. package/src/blockquote.ws.tsx +1 -1
  118. package/src/box.tsx +1 -1
  119. package/src/button.tsx +3 -11
  120. package/src/button.ws.tsx +8 -1
  121. package/src/checkbox.ws.tsx +19 -1
  122. package/src/code-text.ws.tsx +1 -1
  123. package/src/components.ts +5 -4
  124. package/src/heading.ws.tsx +1 -1
  125. package/src/image.tsx +6 -5
  126. package/src/image.ws.tsx +11 -9
  127. package/src/label.ws.tsx +4 -7
  128. package/src/link.tsx +5 -11
  129. package/src/link.ws.tsx +3 -3
  130. package/src/list-item.ws.tsx +1 -1
  131. package/src/metas.ts +5 -4
  132. package/src/paragraph.ws.tsx +2 -2
  133. package/src/props.ts +5 -4
  134. package/src/radio-button.ws.tsx +19 -1
  135. package/src/rich-text-link.ws.tsx +3 -11
  136. package/src/span.ws.tsx +1 -1
  137. package/src/text.stories.tsx +16 -0
  138. package/src/{text-block.tsx → text.tsx} +2 -2
  139. package/src/{text-block.ws.tsx → text.ws.tsx} +8 -8
  140. package/src/vimeo-play-button.stories.tsx +17 -0
  141. package/src/vimeo-play-button.tsx +24 -0
  142. package/src/vimeo-play-button.ws.ts +29 -0
  143. package/src/vimeo-preview-image.stories.tsx +17 -0
  144. package/src/vimeo-preview-image.tsx +30 -0
  145. package/src/vimeo-preview-image.ws.ts +22 -0
  146. package/src/vimeo-spinner.stories.tsx +17 -0
  147. package/src/vimeo-spinner.tsx +25 -0
  148. package/src/vimeo-spinner.ws.ts +27 -0
  149. package/src/vimeo.stories.tsx +17 -0
  150. package/src/vimeo.tsx +430 -0
  151. package/src/vimeo.ws.ts +331 -0
  152. package/lib/checkbox-field.js +0 -9
  153. package/lib/checkbox-field.ws.js +0 -44
  154. package/lib/cjs/radio-button-field.ws.js +0 -62
  155. package/lib/link-block.js +0 -10
  156. package/lib/link-block.ws.js +0 -33
  157. package/lib/radio-button-field.js +0 -9
  158. package/lib/radio-button-field.ws.js +0 -44
  159. package/lib/types/checkbox-field.d.ts +0 -3
  160. package/lib/types/link-block.d.ts +0 -3
  161. package/lib/types/link-block.stories.d.ts +0 -13
  162. package/lib/types/radio-button-field.d.ts +0 -3
  163. package/src/checkbox-field.tsx +0 -10
  164. package/src/checkbox-field.ws.tsx +0 -47
  165. package/src/link-block.stories.tsx +0 -16
  166. package/src/link-block.tsx +0 -9
  167. package/src/link-block.ws.tsx +0 -38
  168. package/src/radio-button-field.tsx +0 -10
  169. package/src/radio-button-field.ws.tsx +0 -47
  170. package/src/text-block.stories.tsx +0 -16
  171. /package/lib/__generated__/{text-block.props.js → text.props.js} +0 -0
  172. /package/lib/types/__generated__/{checkbox-field.props.d.ts → text.props.d.ts} +0 -0
  173. /package/lib/types/__generated__/{radio-button-field.props.d.ts → vimeo-play-button.props.d.ts} +0 -0
  174. /package/lib/types/__generated__/{text-block.props.d.ts → vimeo-preview-image.props.d.ts} +0 -0
  175. /package/lib/types/{checkbox-field.ws.d.ts → text.ws.d.ts} +0 -0
  176. /package/lib/types/{radio-button-field.ws.d.ts → vimeo-play-button.ws.d.ts} +0 -0
  177. /package/lib/types/{text-block.ws.d.ts → vimeo-preview-image.ws.d.ts} +0 -0
  178. /package/src/__generated__/{text-block.props.ts → text.props.ts} +0 -0
@@ -24,7 +24,6 @@ __export(components_exports, {
24
24
  Box: () => import_box.Box,
25
25
  Button: () => import_button.Button,
26
26
  Checkbox: () => import_checkbox.Checkbox,
27
- CheckboxField: () => import_checkbox_field.CheckboxField,
28
27
  CodeText: () => import_code_text.CodeText,
29
28
  ErrorMessage: () => import_error_message.ErrorMessage,
30
29
  Form: () => import_form.Form,
@@ -36,12 +35,10 @@ __export(components_exports, {
36
35
  Italic: () => import_italic.Italic,
37
36
  Label: () => import_label.Label,
38
37
  Link: () => import_link.Link,
39
- LinkBlock: () => import_link_block.LinkBlock,
40
38
  List: () => import_list.List,
41
39
  ListItem: () => import_list_item.ListItem,
42
40
  Paragraph: () => import_paragraph.Paragraph,
43
41
  RadioButton: () => import_radio_button.RadioButton,
44
- RadioButtonField: () => import_radio_button_field.RadioButtonField,
45
42
  RichTextLink: () => import_rich_text_link.RichTextLink,
46
43
  Separator: () => import_separator.Separator,
47
44
  Slot: () => import_slot.Slot,
@@ -49,8 +46,12 @@ __export(components_exports, {
49
46
  Subscript: () => import_subscript.Subscript,
50
47
  SuccessMessage: () => import_success_message.SuccessMessage,
51
48
  Superscript: () => import_superscript.Superscript,
52
- TextBlock: () => import_text_block.TextBlock,
53
- Textarea: () => import_textarea.Textarea
49
+ Text: () => import_text.Text,
50
+ Textarea: () => import_textarea.Textarea,
51
+ Vimeo: () => import_vimeo.Vimeo,
52
+ VimeoPlayButton: () => import_vimeo_play_button.VimeoPlayButton,
53
+ VimeoPreviewImage: () => import_vimeo_preview_image.VimeoPreviewImage,
54
+ VimeoSpinner: () => import_vimeo_spinner.VimeoSpinner
54
55
  });
55
56
  module.exports = __toCommonJS(components_exports);
56
57
  var import_slot = require("./slot");
@@ -58,11 +59,10 @@ var import_fragment = require("./fragment");
58
59
  var import_html_embed = require("./html-embed");
59
60
  var import_body = require("./body");
60
61
  var import_box = require("./box");
61
- var import_text_block = require("./text-block");
62
+ var import_text = require("./text");
62
63
  var import_heading = require("./heading");
63
64
  var import_paragraph = require("./paragraph");
64
65
  var import_link = require("./link");
65
- var import_link_block = require("./link-block");
66
66
  var import_rich_text_link = require("./rich-text-link");
67
67
  var import_span = require("./span");
68
68
  var import_bold = require("./bold");
@@ -82,7 +82,9 @@ var import_label = require("./label");
82
82
  var import_success_message = require("./success-message");
83
83
  var import_error_message = require("./error-message");
84
84
  var import_textarea = require("./textarea");
85
- var import_radio_button_field = require("./radio-button-field");
86
85
  var import_radio_button = require("./radio-button");
87
- var import_checkbox_field = require("./checkbox-field");
88
86
  var import_checkbox = require("./checkbox");
87
+ var import_vimeo = require("./vimeo");
88
+ var import_vimeo_preview_image = require("./vimeo-preview-image");
89
+ var import_vimeo_play_button = require("./vimeo-play-button");
90
+ var import_vimeo_spinner = require("./vimeo-spinner");
@@ -36,7 +36,7 @@ const presetStyle = {
36
36
  };
37
37
  const meta = {
38
38
  category: "text",
39
- type: "rich-text",
39
+ type: "container",
40
40
  label: "Heading",
41
41
  icon: import_svg.HeadingIcon,
42
42
  states: import_react_sdk.defaultStates,
package/lib/cjs/image.js CHANGED
@@ -52,11 +52,11 @@ const imagePlaceholderSvg = `data:image/svg+xml;base64,${btoa(`<svg
52
52
  </svg>`)}`;
53
53
  const Image = (0, import_react.forwardRef)(
54
54
  (props, ref) => {
55
+ const { imageBaseUrl } = (0, import_react.useContext)(import_react_sdk.ReactSdkContext);
55
56
  const asset = (0, import_react_sdk.usePropAsset)((0, import_react_sdk.getInstanceIdFromComponentProps)(props), "src");
56
57
  const loader = (0, import_react.useMemo)(() => {
57
- const params = (0, import_react_sdk.getParams)();
58
- return (0, import_image.createImageLoader)({ imageBaseUrl: params.imageBaseUrl });
59
- }, []);
58
+ return (0, import_image.createImageLoader)({ imageBaseUrl });
59
+ }, [imageBaseUrl]);
60
60
  const src = asset?.name ?? props.src;
61
61
  if (asset == null || loader == null) {
62
62
  return /* @__PURE__ */ (0, import_jsx_runtime.jsx)("img", { ...props, src: src || imagePlaceholderSvg, ref }, src);
@@ -19,7 +19,8 @@ var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: tru
19
19
  var image_ws_exports = {};
20
20
  __export(image_ws_exports, {
21
21
  meta: () => meta,
22
- propsMeta: () => propsMeta
22
+ propsMeta: () => propsMeta,
23
+ propsOverrides: () => propsOverrides
23
24
  });
24
25
  module.exports = __toCommonJS(image_ws_exports);
25
26
  var import_svg = require("@webstudio-is/icons/svg");
@@ -51,16 +52,18 @@ const meta = {
51
52
  presetStyle,
52
53
  order: 0
53
54
  };
54
- const { loader, ...publicProps } = import_image.props;
55
+ const propsOverrides = {
56
+ src: {
57
+ type: "string",
58
+ control: "file",
59
+ label: "Source",
60
+ required: false
61
+ }
62
+ };
55
63
  const propsMeta = {
56
64
  props: {
57
- ...publicProps,
58
- src: {
59
- type: "string",
60
- control: "file",
61
- label: "Source",
62
- required: false
63
- }
65
+ ...import_image.props,
66
+ ...propsOverrides
64
67
  },
65
68
  initialProps: ["src", "width", "height", "alt", "loading"]
66
69
  };
@@ -34,9 +34,9 @@ const presetStyle = {
34
34
  };
35
35
  const meta = {
36
36
  category: "forms",
37
- type: "rich-text",
37
+ type: "container",
38
38
  label: "Input Label",
39
- icon: import_svg.TextBlockIcon,
39
+ icon: import_svg.TextIcon,
40
40
  states: import_react_sdk.defaultStates,
41
41
  presetStyle,
42
42
  order: 2,
@@ -52,10 +52,7 @@ const propsMeta = {
52
52
  props: {
53
53
  ...import_label.props,
54
54
  htmlFor: {
55
- required: false,
56
- control: "text",
57
- type: "string",
58
- rows: 0,
55
+ ...import_label.props.htmlFor,
59
56
  label: "For"
60
57
  }
61
58
  },
package/lib/cjs/link.js CHANGED
@@ -27,8 +27,8 @@ var import_react = require("react");
27
27
  var import_react_sdk = require("@webstudio-is/react-sdk");
28
28
  const defaultTag = "a";
29
29
  const Link = (0, import_react.forwardRef)((props, ref) => {
30
+ const { assetBaseUrl } = (0, import_react.useContext)(import_react_sdk.ReactSdkContext);
30
31
  const href = (0, import_react_sdk.usePropUrl)((0, import_react_sdk.getInstanceIdFromComponentProps)(props), "href");
31
- const { assetBaseUrl } = (0, import_react_sdk.getParams)();
32
32
  let url = "#";
33
33
  switch (href?.type) {
34
34
  case "page":
@@ -41,8 +41,8 @@ const presetStyle = {
41
41
  };
42
42
  const meta = {
43
43
  category: "general",
44
- type: "rich-text",
45
- label: "Link Text",
44
+ type: "container",
45
+ label: "Link",
46
46
  icon: import_svg.LinkIcon,
47
47
  presetStyle,
48
48
  order: 1,
@@ -75,5 +75,5 @@ const propsMeta = {
75
75
  required: false
76
76
  }
77
77
  },
78
- initialProps: ["href", "target", "prefetch"]
78
+ initialProps: ["href", "target"]
79
79
  };
@@ -31,7 +31,7 @@ const presetStyle = {
31
31
  };
32
32
  const meta = {
33
33
  category: "general",
34
- type: "rich-text",
34
+ type: "container",
35
35
  requiredAncestors: ["List"],
36
36
  label: "List Item",
37
37
  icon: import_svg.ListItemIcon,
package/lib/cjs/metas.js CHANGED
@@ -24,7 +24,6 @@ __export(metas_exports, {
24
24
  Box: () => import_box.meta,
25
25
  Button: () => import_button.meta,
26
26
  Checkbox: () => import_checkbox.meta,
27
- CheckboxField: () => import_checkbox_field.meta,
28
27
  CodeText: () => import_code_text.meta,
29
28
  ErrorMessage: () => import_error_message.meta,
30
29
  Form: () => import_form.meta,
@@ -36,12 +35,10 @@ __export(metas_exports, {
36
35
  Italic: () => import_italic.meta,
37
36
  Label: () => import_label.meta,
38
37
  Link: () => import_link.meta,
39
- LinkBlock: () => import_link_block.meta,
40
38
  List: () => import_list.meta,
41
39
  ListItem: () => import_list_item.meta,
42
40
  Paragraph: () => import_paragraph.meta,
43
41
  RadioButton: () => import_radio_button.meta,
44
- RadioButtonField: () => import_radio_button_field.meta,
45
42
  RichTextLink: () => import_rich_text_link.meta,
46
43
  Separator: () => import_separator.meta,
47
44
  Slot: () => import_slot.meta,
@@ -49,8 +46,12 @@ __export(metas_exports, {
49
46
  Subscript: () => import_subscript.meta,
50
47
  SuccessMessage: () => import_success_message.meta,
51
48
  Superscript: () => import_superscript.meta,
52
- TextBlock: () => import_text_block.meta,
53
- Textarea: () => import_textarea.meta
49
+ Text: () => import_text.meta,
50
+ Textarea: () => import_textarea.meta,
51
+ Vimeo: () => import_vimeo.meta,
52
+ VimeoPlayButton: () => import_vimeo_play_button.meta,
53
+ VimeoPreviewImage: () => import_vimeo_preview_image.meta,
54
+ VimeoSpinner: () => import_vimeo_spinner.meta
54
55
  });
55
56
  module.exports = __toCommonJS(metas_exports);
56
57
  var import_slot = require("./slot.ws");
@@ -58,11 +59,10 @@ var import_fragment = require("./fragment.ws");
58
59
  var import_html_embed = require("./html-embed.ws");
59
60
  var import_body = require("./body.ws");
60
61
  var import_box = require("./box.ws");
61
- var import_text_block = require("./text-block.ws");
62
+ var import_text = require("./text.ws");
62
63
  var import_heading = require("./heading.ws");
63
64
  var import_paragraph = require("./paragraph.ws");
64
65
  var import_link = require("./link.ws");
65
- var import_link_block = require("./link-block.ws");
66
66
  var import_rich_text_link = require("./rich-text-link.ws");
67
67
  var import_span = require("./span.ws");
68
68
  var import_bold = require("./bold.ws");
@@ -82,7 +82,9 @@ var import_label = require("./label.ws");
82
82
  var import_success_message = require("./success-message.ws");
83
83
  var import_error_message = require("./error-message.ws");
84
84
  var import_textarea = require("./textarea.ws");
85
- var import_radio_button_field = require("./radio-button-field.ws");
86
85
  var import_radio_button = require("./radio-button.ws");
87
- var import_checkbox_field = require("./checkbox-field.ws");
88
86
  var import_checkbox = require("./checkbox.ws");
87
+ var import_vimeo = require("./vimeo.ws");
88
+ var import_vimeo_preview_image = require("./vimeo-preview-image.ws");
89
+ var import_vimeo_play_button = require("./vimeo-play-button.ws");
90
+ var import_vimeo_spinner = require("./vimeo-spinner.ws");
@@ -31,7 +31,7 @@ const presetStyle = {
31
31
  };
32
32
  const meta = {
33
33
  category: "text",
34
- type: "rich-text",
34
+ type: "container",
35
35
  label: "Paragraph",
36
36
  icon: import_svg.TextAlignLeftIcon,
37
37
  states: import_react_sdk.defaultStates,
@@ -40,7 +40,7 @@ const meta = {
40
40
  {
41
41
  type: "instance",
42
42
  component: "Paragraph",
43
- children: [{ type: "text", value: "Pragraph you can edit" }]
43
+ children: [{ type: "text", value: "Paragraph you can edit" }]
44
44
  }
45
45
  ],
46
46
  order: 2
package/lib/cjs/props.js CHANGED
@@ -24,7 +24,6 @@ __export(props_exports, {
24
24
  Box: () => import_box.propsMeta,
25
25
  Button: () => import_button.propsMeta,
26
26
  Checkbox: () => import_checkbox.propsMeta,
27
- CheckboxField: () => import_checkbox_field.propsMeta,
28
27
  CodeText: () => import_code_text.propsMeta,
29
28
  ErrorMessage: () => import_error_message.propsMeta,
30
29
  Form: () => import_form.propsMeta,
@@ -36,12 +35,10 @@ __export(props_exports, {
36
35
  Italic: () => import_italic.propsMeta,
37
36
  Label: () => import_label.propsMeta,
38
37
  Link: () => import_link.propsMeta,
39
- LinkBlock: () => import_link_block.propsMeta,
40
38
  List: () => import_list.propsMeta,
41
39
  ListItem: () => import_list_item.propsMeta,
42
40
  Paragraph: () => import_paragraph.propsMeta,
43
41
  RadioButton: () => import_radio_button.propsMeta,
44
- RadioButtonField: () => import_radio_button_field.propsMeta,
45
42
  RichTextLink: () => import_rich_text_link.propsMeta,
46
43
  Separator: () => import_separator.propsMeta,
47
44
  Slot: () => import_slot.propsMeta,
@@ -49,8 +46,12 @@ __export(props_exports, {
49
46
  Subscript: () => import_subscript.propsMeta,
50
47
  SuccessMessage: () => import_success_message.propsMeta,
51
48
  Superscript: () => import_superscript.propsMeta,
52
- TextBlock: () => import_text_block.propsMeta,
53
- Textarea: () => import_textarea.propsMeta
49
+ Text: () => import_text.propsMeta,
50
+ Textarea: () => import_textarea.propsMeta,
51
+ Vimeo: () => import_vimeo.propsMeta,
52
+ VimeoPlayButton: () => import_vimeo_play_button.propsMeta,
53
+ VimeoPreviewImage: () => import_vimeo_preview_image.propsMeta,
54
+ VimeoSpinner: () => import_vimeo_spinner.propsMeta
54
55
  });
55
56
  module.exports = __toCommonJS(props_exports);
56
57
  var import_slot = require("./slot.ws");
@@ -58,11 +59,10 @@ var import_fragment = require("./fragment.ws");
58
59
  var import_html_embed = require("./html-embed.ws");
59
60
  var import_body = require("./body.ws");
60
61
  var import_box = require("./box.ws");
61
- var import_text_block = require("./text-block.ws");
62
+ var import_text = require("./text.ws");
62
63
  var import_heading = require("./heading.ws");
63
64
  var import_paragraph = require("./paragraph.ws");
64
65
  var import_link = require("./link.ws");
65
- var import_link_block = require("./link-block.ws");
66
66
  var import_rich_text_link = require("./rich-text-link.ws");
67
67
  var import_span = require("./span.ws");
68
68
  var import_bold = require("./bold.ws");
@@ -82,7 +82,9 @@ var import_label = require("./label.ws");
82
82
  var import_success_message = require("./success-message.ws");
83
83
  var import_error_message = require("./error-message.ws");
84
84
  var import_textarea = require("./textarea.ws");
85
- var import_radio_button_field = require("./radio-button-field.ws");
86
85
  var import_radio_button = require("./radio-button.ws");
87
- var import_checkbox_field = require("./checkbox-field.ws");
88
86
  var import_checkbox = require("./checkbox.ws");
87
+ var import_vimeo = require("./vimeo.ws");
88
+ var import_vimeo_preview_image = require("./vimeo-preview-image.ws");
89
+ var import_vimeo_play_button = require("./vimeo-play-button.ws");
90
+ var import_vimeo_spinner = require("./vimeo-spinner.ws");
@@ -36,8 +36,9 @@ const presetStyle = {
36
36
  ]
37
37
  };
38
38
  const meta = {
39
+ category: "forms",
39
40
  type: "control",
40
- label: "Radio Input",
41
+ label: "Radio",
41
42
  icon: import_svg.RadioCheckedIcon,
42
43
  presetStyle,
43
44
  order: 5,
@@ -50,6 +51,23 @@ const meta = {
50
51
  { selector: ":enabled", label: "Enabled" },
51
52
  { selector: ":read-only", label: "Read Only" },
52
53
  { selector: ":read-write", label: "Read Write" }
54
+ ],
55
+ template: [
56
+ {
57
+ type: "instance",
58
+ component: "Label",
59
+ label: "Radio Field",
60
+ children: [
61
+ { type: "instance", component: "RadioButton", props: [], children: [] },
62
+ {
63
+ type: "instance",
64
+ component: "Text",
65
+ label: "Radio Label",
66
+ props: [{ type: "string", name: "tag", value: "span" }],
67
+ children: [{ type: "text", value: "Radio" }]
68
+ }
69
+ ]
70
+ }
53
71
  ]
54
72
  };
55
73
  const propsMeta = {
@@ -22,18 +22,11 @@ __export(rich_text_link_ws_exports, {
22
22
  propsMeta: () => propsMeta
23
23
  });
24
24
  module.exports = __toCommonJS(rich_text_link_ws_exports);
25
- var import_rich_text_link = require("./__generated__/rich-text-link.props");
26
25
  var import_link = require("./link.ws");
27
- const { category, ...linkMetaRest } = import_link.meta;
28
26
  const meta = {
29
- ...linkMetaRest,
27
+ ...import_link.meta,
28
+ category: "hidden",
30
29
  type: "rich-text-child",
31
30
  template: []
32
31
  };
33
- const propsMeta = {
34
- initialProps: import_link.propsMeta.initialProps,
35
- props: {
36
- ...import_rich_text_link.props,
37
- href: import_link.propsMeta.props.href
38
- }
39
- };
32
+ const propsMeta = import_link.propsMeta;
@@ -31,7 +31,7 @@ const presetStyle = {
31
31
  };
32
32
  const meta = {
33
33
  type: "rich-text-child",
34
- label: "Styled Text",
34
+ label: "Text",
35
35
  icon: import_svg.PaintBrushIcon,
36
36
  states: import_react_sdk.defaultStates,
37
37
  presetStyle
@@ -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 text_block_exports = {};
20
- __export(text_block_exports, {
21
- TextBlock: () => TextBlock,
19
+ var text_exports = {};
20
+ __export(text_exports, {
21
+ Text: () => Text,
22
22
  defaultTag: () => defaultTag
23
23
  });
24
- module.exports = __toCommonJS(text_block_exports);
24
+ module.exports = __toCommonJS(text_exports);
25
25
  var import_react = require("react");
26
26
  const defaultTag = "div";
27
- const TextBlock = (0, import_react.forwardRef)(
27
+ const Text = (0, import_react.forwardRef)(
28
28
  ({ tag = defaultTag, ...props }, ref) => {
29
29
  return (0, import_react.createElement)(tag, { ...props, ref });
30
30
  }
31
31
  );
32
- TextBlock.displayName = "TextBlock";
32
+ Text.displayName = "Text";
@@ -16,16 +16,16 @@ 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 text_block_ws_exports = {};
20
- __export(text_block_ws_exports, {
19
+ var text_ws_exports = {};
20
+ __export(text_ws_exports, {
21
21
  meta: () => meta,
22
22
  propsMeta: () => propsMeta
23
23
  });
24
- module.exports = __toCommonJS(text_block_ws_exports);
24
+ module.exports = __toCommonJS(text_ws_exports);
25
25
  var import_svg = require("@webstudio-is/icons/svg");
26
26
  var import_react_sdk = require("@webstudio-is/react-sdk");
27
27
  var import_css_normalize = require("@webstudio-is/react-sdk/css-normalize");
28
- var import_text_block = require("./__generated__/text-block.props");
28
+ var import_text = require("./__generated__/text.props");
29
29
  const presetStyle = {
30
30
  div: [
31
31
  ...import_css_normalize.div,
@@ -37,21 +37,21 @@ const presetStyle = {
37
37
  };
38
38
  const meta = {
39
39
  category: "text",
40
- type: "rich-text",
41
- label: "Text Block",
42
- icon: import_svg.TextBlockIcon,
40
+ type: "container",
41
+ label: "Text",
42
+ icon: import_svg.TextIcon,
43
43
  states: import_react_sdk.defaultStates,
44
44
  presetStyle,
45
45
  template: [
46
46
  {
47
47
  type: "instance",
48
- component: "TextBlock",
49
- children: [{ type: "text", value: "Block of text you can edit" }]
48
+ component: "Text",
49
+ children: [{ type: "text", value: "The text you can edit" }]
50
50
  }
51
51
  ],
52
52
  order: 0
53
53
  };
54
54
  const propsMeta = {
55
- props: import_text_block.props,
55
+ props: import_text.props,
56
56
  initialProps: ["tag"]
57
57
  };
@@ -16,15 +16,23 @@ 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 link_block_exports = {};
20
- __export(link_block_exports, {
21
- LinkBlock: () => LinkBlock,
22
- defaultTag: () => import_link2.defaultTag
19
+ var vimeo_play_button_exports = {};
20
+ __export(vimeo_play_button_exports, {
21
+ VimeoPlayButton: () => VimeoPlayButton,
22
+ defaultTag: () => import_button.defaultTag
23
23
  });
24
- module.exports = __toCommonJS(link_block_exports);
24
+ module.exports = __toCommonJS(vimeo_play_button_exports);
25
25
  var import_jsx_runtime = require("react/jsx-runtime");
26
26
  var import_react = require("react");
27
- var import_link = require("./link");
28
- var import_link2 = require("./link");
29
- const LinkBlock = (0, import_react.forwardRef)((props, ref) => /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_link.Link, { ...props, ref }));
30
- LinkBlock.displayName = "LinkBlock";
27
+ var import_vimeo = require("./vimeo");
28
+ var import_button = require("./button");
29
+ const VimeoPlayButton = (0, import_react.forwardRef)(
30
+ (props, ref) => {
31
+ const vimeoContext = (0, import_react.useContext)(import_vimeo.VimeoContext);
32
+ if (vimeoContext.status !== "initial") {
33
+ return null;
34
+ }
35
+ return /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_button.Button, { ...props, onClick: vimeoContext.onInitPlayer, ref });
36
+ }
37
+ );
38
+ VimeoPlayButton.displayName = "VimeoPlayButton";
@@ -16,38 +16,29 @@ 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 link_block_ws_exports = {};
20
- __export(link_block_ws_exports, {
19
+ var vimeo_play_button_ws_exports = {};
20
+ __export(vimeo_play_button_ws_exports, {
21
21
  meta: () => meta,
22
22
  propsMeta: () => propsMeta
23
23
  });
24
- module.exports = __toCommonJS(link_block_ws_exports);
24
+ module.exports = __toCommonJS(vimeo_play_button_ws_exports);
25
+ var import_react_sdk = require("@webstudio-is/react-sdk");
26
+ var import_vimeo_play_button = require("./__generated__/vimeo-play-button.props");
25
27
  var import_svg = require("@webstudio-is/icons/svg");
26
28
  var import_css_normalize = require("@webstudio-is/react-sdk/css-normalize");
27
- var import_link_block = require("./__generated__/link-block.props");
28
- var import_link = require("./link.ws");
29
29
  const presetStyle = {
30
- a: [
31
- ...import_css_normalize.a,
32
- {
33
- property: "display",
34
- value: { type: "keyword", value: "inline-block" }
35
- }
36
- ]
30
+ button: import_css_normalize.button
37
31
  };
38
32
  const meta = {
39
- category: "general",
33
+ category: "hidden",
40
34
  type: "container",
41
- label: "Link Block",
42
- icon: import_svg.LinkBlockIcon,
43
- states: import_link.meta.states,
35
+ invalidAncestors: ["Button"],
36
+ requiredAncestors: ["Vimeo"],
37
+ label: "Play Button",
38
+ icon: import_svg.ButtonElementIcon,
44
39
  presetStyle,
45
- order: 2
40
+ states: import_react_sdk.defaultStates
46
41
  };
47
42
  const propsMeta = {
48
- props: {
49
- ...import_link_block.props,
50
- href: import_link.propsMeta.props.href
51
- },
52
- initialProps: import_link.propsMeta.initialProps
43
+ props: import_vimeo_play_button.props
53
44
  };
@@ -0,0 +1,40 @@
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 vimeo_preview_image_exports = {};
20
+ __export(vimeo_preview_image_exports, {
21
+ VimeoPreviewImage: () => VimeoPreviewImage
22
+ });
23
+ module.exports = __toCommonJS(vimeo_preview_image_exports);
24
+ var import_jsx_runtime = require("react/jsx-runtime");
25
+ var import_react = require("react");
26
+ var import_image = require("./image");
27
+ var import_vimeo = require("./vimeo");
28
+ const base64Preview = `data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAEAAAABCAQAAAC1HAwCAAAAC0lEQVR42mNkOAMAANIAzr59FiYAAAAASUVORK5CYII=`;
29
+ const VimeoPreviewImage = (0, import_react.forwardRef)(({ src, ...rest }, ref) => {
30
+ const vimeoContext = (0, import_react.useContext)(import_vimeo.VimeoContext);
31
+ return /* @__PURE__ */ (0, import_jsx_runtime.jsx)(
32
+ import_image.Image,
33
+ {
34
+ ...rest,
35
+ src: String(vimeoContext.previewImageUrl ?? src ?? base64Preview),
36
+ ref
37
+ }
38
+ );
39
+ });
40
+ VimeoPreviewImage.displayName = "VimeoPreviewImage";
@@ -16,14 +16,21 @@ 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 radio_button_field_exports = {};
20
- __export(radio_button_field_exports, {
21
- RadioButtonField: () => RadioButtonField,
22
- defaultTag: () => defaultTag
19
+ var vimeo_preview_image_ws_exports = {};
20
+ __export(vimeo_preview_image_ws_exports, {
21
+ meta: () => meta,
22
+ propsMeta: () => propsMeta
23
23
  });
24
- module.exports = __toCommonJS(radio_button_field_exports);
25
- var import_jsx_runtime = require("react/jsx-runtime");
26
- var import_react = require("react");
27
- const defaultTag = "label";
28
- const RadioButtonField = (0, import_react.forwardRef)((props, ref) => /* @__PURE__ */ (0, import_jsx_runtime.jsx)("label", { ...props, ref }));
29
- RadioButtonField.displayName = "RadioButtonField";
24
+ module.exports = __toCommonJS(vimeo_preview_image_ws_exports);
25
+ var import_image = require("./image.ws");
26
+ var import_vimeo_preview_image = require("./__generated__/vimeo-preview-image.props");
27
+ const meta = {
28
+ ...import_image.meta,
29
+ category: "hidden",
30
+ label: "Preview Image",
31
+ requiredAncestors: ["Vimeo"]
32
+ };
33
+ const propsMeta = {
34
+ props: { ...import_vimeo_preview_image.props, ...import_image.propsOverrides },
35
+ initialProps: import_image.propsMeta.initialProps
36
+ };