@webstudio-is/sdk-components-react 0.72.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 (130) hide show
  1. package/lib/__generated__/button.props.js +0 -6
  2. package/lib/__generated__/image.props.js +0 -1
  3. package/lib/__generated__/vimeo-play-button.props.js +1 -2
  4. package/lib/__generated__/vimeo-preview-image.props.js +0 -1
  5. package/lib/blockquote.ws.js +1 -1
  6. package/lib/button.js +1 -6
  7. package/lib/button.ws.js +9 -2
  8. package/lib/checkbox.ws.js +19 -1
  9. package/lib/cjs/__generated__/button.props.js +0 -6
  10. package/lib/cjs/__generated__/image.props.js +0 -1
  11. package/lib/cjs/__generated__/{text-block.props.js → text.props.js} +3 -3
  12. package/lib/cjs/__generated__/vimeo-play-button.props.js +1 -2
  13. package/lib/cjs/__generated__/vimeo-preview-image.props.js +0 -1
  14. package/lib/cjs/blockquote.ws.js +1 -1
  15. package/lib/cjs/button.js +1 -6
  16. package/lib/cjs/button.ws.js +9 -2
  17. package/lib/cjs/checkbox.ws.js +19 -1
  18. package/lib/cjs/code-text.ws.js +1 -1
  19. package/lib/cjs/components.js +2 -8
  20. package/lib/cjs/heading.ws.js +1 -1
  21. package/lib/cjs/image.js +3 -3
  22. package/lib/cjs/image.ws.js +1 -2
  23. package/lib/cjs/label.ws.js +3 -6
  24. package/lib/cjs/link.js +1 -1
  25. package/lib/cjs/link.ws.js +2 -2
  26. package/lib/cjs/list-item.ws.js +1 -1
  27. package/lib/cjs/metas.js +2 -8
  28. package/lib/cjs/paragraph.ws.js +2 -2
  29. package/lib/cjs/props.js +2 -8
  30. package/lib/cjs/radio-button.ws.js +19 -1
  31. package/lib/cjs/span.ws.js +1 -1
  32. package/lib/cjs/{text-block.js → text.js} +6 -6
  33. package/lib/cjs/{text-block.ws.js → text.ws.js} +10 -10
  34. package/lib/cjs/vimeo.ws.js +6 -1
  35. package/lib/code-text.ws.js +1 -1
  36. package/lib/components.js +2 -8
  37. package/lib/heading.ws.js +1 -1
  38. package/lib/image.js +6 -5
  39. package/lib/image.ws.js +1 -2
  40. package/lib/label.ws.js +4 -7
  41. package/lib/link.js +3 -3
  42. package/lib/link.ws.js +2 -2
  43. package/lib/list-item.ws.js +1 -1
  44. package/lib/metas.js +52 -58
  45. package/lib/paragraph.ws.js +2 -2
  46. package/lib/props.js +52 -58
  47. package/lib/radio-button.ws.js +19 -1
  48. package/lib/span.ws.js +1 -1
  49. package/lib/{text-block.js → text.js} +3 -3
  50. package/lib/{text-block.ws.js → text.ws.js} +7 -7
  51. package/lib/types/button.d.ts +2 -6
  52. package/lib/types/button.stories.d.ts +2 -6
  53. package/lib/types/components.d.ts +1 -4
  54. package/lib/types/image.d.ts +5 -6
  55. package/lib/types/image.stories.d.ts +555 -6
  56. package/lib/types/metas.d.ts +1 -4
  57. package/lib/types/props.d.ts +1 -4
  58. package/lib/types/{text-block.d.ts → text.d.ts} +1 -1
  59. package/lib/types/{text-block.stories.d.ts → text.stories.d.ts} +1 -1
  60. package/lib/types/vimeo-play-button.d.ts +1 -3
  61. package/lib/types/vimeo-play-button.stories.d.ts +2 -6
  62. package/lib/types/vimeo-preview-image.d.ts +278 -3
  63. package/lib/types/vimeo-preview-image.stories.d.ts +555 -6
  64. package/lib/vimeo.ws.js +6 -1
  65. package/package.json +7 -7
  66. package/src/__generated__/button.props.ts +0 -6
  67. package/src/__generated__/image.props.ts +0 -1
  68. package/src/__generated__/vimeo-play-button.props.ts +0 -1
  69. package/src/__generated__/vimeo-preview-image.props.ts +0 -1
  70. package/src/blockquote.ws.tsx +1 -1
  71. package/src/button.tsx +3 -11
  72. package/src/button.ws.tsx +8 -1
  73. package/src/checkbox.ws.tsx +19 -1
  74. package/src/code-text.ws.tsx +1 -1
  75. package/src/components.ts +1 -4
  76. package/src/heading.ws.tsx +1 -1
  77. package/src/image.tsx +6 -5
  78. package/src/image.ws.tsx +1 -4
  79. package/src/label.ws.tsx +4 -7
  80. package/src/link.tsx +3 -4
  81. package/src/link.ws.tsx +2 -2
  82. package/src/list-item.ws.tsx +1 -1
  83. package/src/metas.ts +1 -4
  84. package/src/paragraph.ws.tsx +2 -2
  85. package/src/props.ts +1 -4
  86. package/src/radio-button.ws.tsx +19 -1
  87. package/src/span.ws.tsx +1 -1
  88. package/src/text.stories.tsx +16 -0
  89. package/src/{text-block.tsx → text.tsx} +2 -2
  90. package/src/{text-block.ws.tsx → text.ws.tsx} +8 -8
  91. package/src/vimeo.ws.ts +6 -1
  92. package/lib/__generated__/checkbox-field.props.js +0 -399
  93. package/lib/__generated__/radio-button-field.props.js +0 -399
  94. package/lib/checkbox-field.js +0 -9
  95. package/lib/checkbox-field.ws.js +0 -44
  96. package/lib/cjs/__generated__/checkbox-field.props.js +0 -419
  97. package/lib/cjs/__generated__/radio-button-field.props.js +0 -419
  98. package/lib/cjs/checkbox-field.js +0 -29
  99. package/lib/cjs/checkbox-field.ws.js +0 -62
  100. package/lib/cjs/link-block.js +0 -30
  101. package/lib/cjs/link-block.ws.js +0 -46
  102. package/lib/cjs/radio-button-field.js +0 -29
  103. package/lib/cjs/radio-button-field.ws.js +0 -62
  104. package/lib/link-block.js +0 -10
  105. package/lib/link-block.ws.js +0 -26
  106. package/lib/radio-button-field.js +0 -9
  107. package/lib/radio-button-field.ws.js +0 -44
  108. package/lib/types/__generated__/radio-button-field.props.d.ts +0 -2
  109. package/lib/types/__generated__/text-block.props.d.ts +0 -2
  110. package/lib/types/checkbox-field.d.ts +0 -3
  111. package/lib/types/link-block.d.ts +0 -3
  112. package/lib/types/link-block.stories.d.ts +0 -9
  113. package/lib/types/link-block.ws.d.ts +0 -3
  114. package/lib/types/radio-button-field.d.ts +0 -3
  115. package/lib/types/radio-button-field.ws.d.ts +0 -3
  116. package/lib/types/text-block.ws.d.ts +0 -3
  117. package/src/__generated__/checkbox-field.props.ts +0 -444
  118. package/src/__generated__/radio-button-field.props.ts +0 -444
  119. package/src/checkbox-field.tsx +0 -10
  120. package/src/checkbox-field.ws.tsx +0 -47
  121. package/src/link-block.stories.tsx +0 -16
  122. package/src/link-block.tsx +0 -9
  123. package/src/link-block.ws.tsx +0 -31
  124. package/src/radio-button-field.tsx +0 -10
  125. package/src/radio-button-field.ws.tsx +0 -47
  126. package/src/text-block.stories.tsx +0 -16
  127. /package/lib/__generated__/{text-block.props.js → text.props.js} +0 -0
  128. /package/lib/types/__generated__/{checkbox-field.props.d.ts → text.props.d.ts} +0 -0
  129. /package/lib/types/{checkbox-field.ws.d.ts → text.ws.d.ts} +0 -0
  130. /package/src/__generated__/{text-block.props.ts → text.props.ts} +0 -0
@@ -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
  };
@@ -65,7 +65,7 @@ const meta = {
65
65
  value: { type: "keyword", value: "absolute" }
66
66
  },
67
67
  {
68
- property: "objectPosition",
68
+ property: "objectFit",
69
69
  value: { type: "keyword", value: "cover" }
70
70
  },
71
71
  {
@@ -103,6 +103,11 @@ const meta = {
103
103
  type: "string",
104
104
  name: "alt",
105
105
  value: "Vimeo video preview image"
106
+ },
107
+ {
108
+ type: "string",
109
+ name: "sizes",
110
+ value: "100vw"
106
111
  }
107
112
  ]
108
113
  },
@@ -32,7 +32,7 @@ const presetStyle = {
32
32
  };
33
33
  const meta = {
34
34
  category: "general",
35
- type: "rich-text",
35
+ type: "container",
36
36
  label: "Code Text",
37
37
  icon: CodeTextIcon,
38
38
  states: defaultStates,
package/lib/components.js CHANGED
@@ -3,11 +3,10 @@ import { Fragment } from "./fragment";
3
3
  import { HtmlEmbed } from "./html-embed";
4
4
  import { Body } from "./body";
5
5
  import { Box } from "./box";
6
- import { TextBlock } from "./text-block";
6
+ import { Text } from "./text";
7
7
  import { Heading } from "./heading";
8
8
  import { Paragraph } from "./paragraph";
9
9
  import { Link } from "./link";
10
- import { LinkBlock } from "./link-block";
11
10
  import { RichTextLink } from "./rich-text-link";
12
11
  import { Span } from "./span";
13
12
  import { Bold } from "./bold";
@@ -27,9 +26,7 @@ import { Label } from "./label";
27
26
  import { SuccessMessage } from "./success-message";
28
27
  import { ErrorMessage } from "./error-message";
29
28
  import { Textarea } from "./textarea";
30
- import { RadioButtonField } from "./radio-button-field";
31
29
  import { RadioButton } from "./radio-button";
32
- import { CheckboxField } from "./checkbox-field";
33
30
  import { Checkbox } from "./checkbox";
34
31
  import { Vimeo } from "./vimeo";
35
32
  import { VimeoPreviewImage } from "./vimeo-preview-image";
@@ -42,7 +39,6 @@ export {
42
39
  Box,
43
40
  Button,
44
41
  Checkbox,
45
- CheckboxField,
46
42
  CodeText,
47
43
  ErrorMessage,
48
44
  Form,
@@ -54,12 +50,10 @@ export {
54
50
  Italic,
55
51
  Label,
56
52
  Link,
57
- LinkBlock,
58
53
  List,
59
54
  ListItem,
60
55
  Paragraph,
61
56
  RadioButton,
62
- RadioButtonField,
63
57
  RichTextLink,
64
58
  Separator,
65
59
  Slot,
@@ -67,7 +61,7 @@ export {
67
61
  Subscript,
68
62
  SuccessMessage,
69
63
  Superscript,
70
- TextBlock,
64
+ Text,
71
65
  Textarea,
72
66
  Vimeo,
73
67
  VimeoPlayButton,
package/lib/heading.ws.js CHANGED
@@ -14,7 +14,7 @@ const presetStyle = {
14
14
  };
15
15
  const meta = {
16
16
  category: "text",
17
- type: "rich-text",
17
+ type: "container",
18
18
  label: "Heading",
19
19
  icon: HeadingIcon,
20
20
  states: defaultStates,
package/lib/image.js CHANGED
@@ -1,7 +1,8 @@
1
1
  import { jsx } from "react/jsx-runtime";
2
2
  import {
3
3
  forwardRef,
4
- useMemo
4
+ useMemo,
5
+ useContext
5
6
  } from "react";
6
7
  import {
7
8
  Image as WebstudioImage,
@@ -10,7 +11,7 @@ import {
10
11
  import {
11
12
  usePropAsset,
12
13
  getInstanceIdFromComponentProps,
13
- getParams
14
+ ReactSdkContext
14
15
  } from "@webstudio-is/react-sdk";
15
16
  const defaultTag = "img";
16
17
  const imagePlaceholderSvg = `data:image/svg+xml;base64,${btoa(`<svg
@@ -38,11 +39,11 @@ const imagePlaceholderSvg = `data:image/svg+xml;base64,${btoa(`<svg
38
39
  </svg>`)}`;
39
40
  const Image = forwardRef(
40
41
  (props, ref) => {
42
+ const { imageBaseUrl } = useContext(ReactSdkContext);
41
43
  const asset = usePropAsset(getInstanceIdFromComponentProps(props), "src");
42
44
  const loader = useMemo(() => {
43
- const params = getParams();
44
- return createImageLoader({ imageBaseUrl: params.imageBaseUrl });
45
- }, []);
45
+ return createImageLoader({ imageBaseUrl });
46
+ }, [imageBaseUrl]);
46
47
  const src = asset?.name ?? props.src;
47
48
  if (asset == null || loader == null) {
48
49
  return /* @__PURE__ */ jsx("img", { ...props, src: src || imagePlaceholderSvg, ref }, src);
package/lib/image.ws.js CHANGED
@@ -29,7 +29,6 @@ const meta = {
29
29
  presetStyle,
30
30
  order: 0
31
31
  };
32
- const { loader, ...publicProps } = props;
33
32
  const propsOverrides = {
34
33
  src: {
35
34
  type: "string",
@@ -40,7 +39,7 @@ const propsOverrides = {
40
39
  };
41
40
  const propsMeta = {
42
41
  props: {
43
- ...publicProps,
42
+ ...props,
44
43
  ...propsOverrides
45
44
  },
46
45
  initialProps: ["src", "width", "height", "alt", "loading"]
package/lib/label.ws.js CHANGED
@@ -1,4 +1,4 @@
1
- import { TextBlockIcon } from "@webstudio-is/icons/svg";
1
+ import { TextIcon } from "@webstudio-is/icons/svg";
2
2
  import {
3
3
  defaultStates
4
4
  } from "@webstudio-is/react-sdk";
@@ -12,9 +12,9 @@ const presetStyle = {
12
12
  };
13
13
  const meta = {
14
14
  category: "forms",
15
- type: "rich-text",
15
+ type: "container",
16
16
  label: "Input Label",
17
- icon: TextBlockIcon,
17
+ icon: TextIcon,
18
18
  states: defaultStates,
19
19
  presetStyle,
20
20
  order: 2,
@@ -30,10 +30,7 @@ const propsMeta = {
30
30
  props: {
31
31
  ...props,
32
32
  htmlFor: {
33
- required: false,
34
- control: "text",
35
- type: "string",
36
- rows: 0,
33
+ ...props.htmlFor,
37
34
  label: "For"
38
35
  }
39
36
  },
package/lib/link.js CHANGED
@@ -1,14 +1,14 @@
1
1
  import { jsx } from "react/jsx-runtime";
2
- import { forwardRef } from "react";
2
+ import { forwardRef, useContext } from "react";
3
3
  import {
4
4
  usePropUrl,
5
5
  getInstanceIdFromComponentProps,
6
- getParams
6
+ ReactSdkContext
7
7
  } from "@webstudio-is/react-sdk";
8
8
  const defaultTag = "a";
9
9
  const Link = forwardRef((props, ref) => {
10
+ const { assetBaseUrl } = useContext(ReactSdkContext);
10
11
  const href = usePropUrl(getInstanceIdFromComponentProps(props), "href");
11
- const { assetBaseUrl } = getParams();
12
12
  let url = "#";
13
13
  switch (href?.type) {
14
14
  case "page":
package/lib/link.ws.js CHANGED
@@ -19,8 +19,8 @@ const presetStyle = {
19
19
  };
20
20
  const meta = {
21
21
  category: "general",
22
- type: "rich-text",
23
- label: "Link Text",
22
+ type: "container",
23
+ label: "Link",
24
24
  icon: LinkIcon,
25
25
  presetStyle,
26
26
  order: 1,
@@ -9,7 +9,7 @@ const presetStyle = {
9
9
  };
10
10
  const meta = {
11
11
  category: "general",
12
- type: "rich-text",
12
+ type: "container",
13
13
  requiredAncestors: ["List"],
14
14
  label: "List Item",
15
15
  icon: ListItemIcon,
package/lib/metas.js CHANGED
@@ -3,74 +3,68 @@ import { meta as meta2 } from "./fragment.ws";
3
3
  import { meta as meta3 } from "./html-embed.ws";
4
4
  import { meta as meta4 } from "./body.ws";
5
5
  import { meta as meta5 } from "./box.ws";
6
- import { meta as meta6 } from "./text-block.ws";
6
+ import { meta as meta6 } from "./text.ws";
7
7
  import { meta as meta7 } from "./heading.ws";
8
8
  import { meta as meta8 } from "./paragraph.ws";
9
9
  import { meta as meta9 } from "./link.ws";
10
- import { meta as meta10 } from "./link-block.ws";
11
- import { meta as meta11 } from "./rich-text-link.ws";
12
- import { meta as meta12 } from "./span.ws";
13
- import { meta as meta13 } from "./bold.ws";
14
- import { meta as meta14 } from "./italic.ws";
15
- import { meta as meta15 } from "./superscript.ws";
16
- import { meta as meta16 } from "./subscript.ws";
17
- import { meta as meta17 } from "./button.ws";
18
- import { meta as meta18 } from "./input.ws";
19
- import { meta as meta19 } from "./form.ws";
20
- import { meta as meta20 } from "./image.ws";
21
- import { meta as meta21 } from "./blockquote.ws";
22
- import { meta as meta22 } from "./list.ws";
23
- import { meta as meta23 } from "./list-item.ws";
24
- import { meta as meta24 } from "./separator.ws";
25
- import { meta as meta25 } from "./code-text.ws";
26
- import { meta as meta26 } from "./label.ws";
27
- import { meta as meta27 } from "./success-message.ws";
28
- import { meta as meta28 } from "./error-message.ws";
29
- import { meta as meta29 } from "./textarea.ws";
30
- import { meta as meta30 } from "./radio-button-field.ws";
31
- import { meta as meta31 } from "./radio-button.ws";
32
- import { meta as meta32 } from "./checkbox-field.ws";
33
- import { meta as meta33 } from "./checkbox.ws";
34
- import { meta as meta34 } from "./vimeo.ws";
35
- import { meta as meta35 } from "./vimeo-preview-image.ws";
36
- import { meta as meta36 } from "./vimeo-play-button.ws";
37
- import { meta as meta37 } from "./vimeo-spinner.ws";
10
+ import { meta as meta10 } from "./rich-text-link.ws";
11
+ import { meta as meta11 } from "./span.ws";
12
+ import { meta as meta12 } from "./bold.ws";
13
+ import { meta as meta13 } from "./italic.ws";
14
+ import { meta as meta14 } from "./superscript.ws";
15
+ import { meta as meta15 } from "./subscript.ws";
16
+ import { meta as meta16 } from "./button.ws";
17
+ import { meta as meta17 } from "./input.ws";
18
+ import { meta as meta18 } from "./form.ws";
19
+ import { meta as meta19 } from "./image.ws";
20
+ import { meta as meta20 } from "./blockquote.ws";
21
+ import { meta as meta21 } from "./list.ws";
22
+ import { meta as meta22 } from "./list-item.ws";
23
+ import { meta as meta23 } from "./separator.ws";
24
+ import { meta as meta24 } from "./code-text.ws";
25
+ import { meta as meta25 } from "./label.ws";
26
+ import { meta as meta26 } from "./success-message.ws";
27
+ import { meta as meta27 } from "./error-message.ws";
28
+ import { meta as meta28 } from "./textarea.ws";
29
+ import { meta as meta29 } from "./radio-button.ws";
30
+ import { meta as meta30 } from "./checkbox.ws";
31
+ import { meta as meta31 } from "./vimeo.ws";
32
+ import { meta as meta32 } from "./vimeo-preview-image.ws";
33
+ import { meta as meta33 } from "./vimeo-play-button.ws";
34
+ import { meta as meta34 } from "./vimeo-spinner.ws";
38
35
  export {
39
- meta21 as Blockquote,
36
+ meta20 as Blockquote,
40
37
  meta4 as Body,
41
- meta13 as Bold,
38
+ meta12 as Bold,
42
39
  meta5 as Box,
43
- meta17 as Button,
44
- meta33 as Checkbox,
45
- meta32 as CheckboxField,
46
- meta25 as CodeText,
47
- meta28 as ErrorMessage,
48
- meta19 as Form,
40
+ meta16 as Button,
41
+ meta30 as Checkbox,
42
+ meta24 as CodeText,
43
+ meta27 as ErrorMessage,
44
+ meta18 as Form,
49
45
  meta2 as Fragment,
50
46
  meta7 as Heading,
51
47
  meta3 as HtmlEmbed,
52
- meta20 as Image,
53
- meta18 as Input,
54
- meta14 as Italic,
55
- meta26 as Label,
48
+ meta19 as Image,
49
+ meta17 as Input,
50
+ meta13 as Italic,
51
+ meta25 as Label,
56
52
  meta9 as Link,
57
- meta10 as LinkBlock,
58
- meta22 as List,
59
- meta23 as ListItem,
53
+ meta21 as List,
54
+ meta22 as ListItem,
60
55
  meta8 as Paragraph,
61
- meta31 as RadioButton,
62
- meta30 as RadioButtonField,
63
- meta11 as RichTextLink,
64
- meta24 as Separator,
56
+ meta29 as RadioButton,
57
+ meta10 as RichTextLink,
58
+ meta23 as Separator,
65
59
  meta as Slot,
66
- meta12 as Span,
67
- meta16 as Subscript,
68
- meta27 as SuccessMessage,
69
- meta15 as Superscript,
70
- meta6 as TextBlock,
71
- meta29 as Textarea,
72
- meta34 as Vimeo,
73
- meta36 as VimeoPlayButton,
74
- meta35 as VimeoPreviewImage,
75
- meta37 as VimeoSpinner
60
+ meta11 as Span,
61
+ meta15 as Subscript,
62
+ meta26 as SuccessMessage,
63
+ meta14 as Superscript,
64
+ meta6 as Text,
65
+ meta28 as Textarea,
66
+ meta31 as Vimeo,
67
+ meta33 as VimeoPlayButton,
68
+ meta32 as VimeoPreviewImage,
69
+ meta34 as VimeoSpinner
76
70
  };
@@ -9,7 +9,7 @@ const presetStyle = {
9
9
  };
10
10
  const meta = {
11
11
  category: "text",
12
- type: "rich-text",
12
+ type: "container",
13
13
  label: "Paragraph",
14
14
  icon: TextAlignLeftIcon,
15
15
  states: defaultStates,
@@ -18,7 +18,7 @@ const meta = {
18
18
  {
19
19
  type: "instance",
20
20
  component: "Paragraph",
21
- children: [{ type: "text", value: "Pragraph you can edit" }]
21
+ children: [{ type: "text", value: "Paragraph you can edit" }]
22
22
  }
23
23
  ],
24
24
  order: 2
package/lib/props.js CHANGED
@@ -3,74 +3,68 @@ import { propsMeta as propsMeta2 } from "./fragment.ws";
3
3
  import { propsMeta as propsMeta3 } from "./html-embed.ws";
4
4
  import { propsMeta as propsMeta4 } from "./body.ws";
5
5
  import { propsMeta as propsMeta5 } from "./box.ws";
6
- import { propsMeta as propsMeta6 } from "./text-block.ws";
6
+ import { propsMeta as propsMeta6 } from "./text.ws";
7
7
  import { propsMeta as propsMeta7 } from "./heading.ws";
8
8
  import { propsMeta as propsMeta8 } from "./paragraph.ws";
9
9
  import { propsMeta as propsMeta9 } from "./link.ws";
10
- import { propsMeta as propsMeta10 } from "./link-block.ws";
11
- import { propsMeta as propsMeta11 } from "./rich-text-link.ws";
12
- import { propsMeta as propsMeta12 } from "./span.ws";
13
- import { propsMeta as propsMeta13 } from "./bold.ws";
14
- import { propsMeta as propsMeta14 } from "./italic.ws";
15
- import { propsMeta as propsMeta15 } from "./superscript.ws";
16
- import { propsMeta as propsMeta16 } from "./subscript.ws";
17
- import { propsMeta as propsMeta17 } from "./button.ws";
18
- import { propsMeta as propsMeta18 } from "./input.ws";
19
- import { propsMeta as propsMeta19 } from "./form.ws";
20
- import { propsMeta as propsMeta20 } from "./image.ws";
21
- import { propsMeta as propsMeta21 } from "./blockquote.ws";
22
- import { propsMeta as propsMeta22 } from "./list.ws";
23
- import { propsMeta as propsMeta23 } from "./list-item.ws";
24
- import { propsMeta as propsMeta24 } from "./separator.ws";
25
- import { propsMeta as propsMeta25 } from "./code-text.ws";
26
- import { propsMeta as propsMeta26 } from "./label.ws";
27
- import { propsMeta as propsMeta27 } from "./success-message.ws";
28
- import { propsMeta as propsMeta28 } from "./error-message.ws";
29
- import { propsMeta as propsMeta29 } from "./textarea.ws";
30
- import { propsMeta as propsMeta30 } from "./radio-button-field.ws";
31
- import { propsMeta as propsMeta31 } from "./radio-button.ws";
32
- import { propsMeta as propsMeta32 } from "./checkbox-field.ws";
33
- import { propsMeta as propsMeta33 } from "./checkbox.ws";
34
- import { propsMeta as propsMeta34 } from "./vimeo.ws";
35
- import { propsMeta as propsMeta35 } from "./vimeo-preview-image.ws";
36
- import { propsMeta as propsMeta36 } from "./vimeo-play-button.ws";
37
- import { propsMeta as propsMeta37 } from "./vimeo-spinner.ws";
10
+ import { propsMeta as propsMeta10 } from "./rich-text-link.ws";
11
+ import { propsMeta as propsMeta11 } from "./span.ws";
12
+ import { propsMeta as propsMeta12 } from "./bold.ws";
13
+ import { propsMeta as propsMeta13 } from "./italic.ws";
14
+ import { propsMeta as propsMeta14 } from "./superscript.ws";
15
+ import { propsMeta as propsMeta15 } from "./subscript.ws";
16
+ import { propsMeta as propsMeta16 } from "./button.ws";
17
+ import { propsMeta as propsMeta17 } from "./input.ws";
18
+ import { propsMeta as propsMeta18 } from "./form.ws";
19
+ import { propsMeta as propsMeta19 } from "./image.ws";
20
+ import { propsMeta as propsMeta20 } from "./blockquote.ws";
21
+ import { propsMeta as propsMeta21 } from "./list.ws";
22
+ import { propsMeta as propsMeta22 } from "./list-item.ws";
23
+ import { propsMeta as propsMeta23 } from "./separator.ws";
24
+ import { propsMeta as propsMeta24 } from "./code-text.ws";
25
+ import { propsMeta as propsMeta25 } from "./label.ws";
26
+ import { propsMeta as propsMeta26 } from "./success-message.ws";
27
+ import { propsMeta as propsMeta27 } from "./error-message.ws";
28
+ import { propsMeta as propsMeta28 } from "./textarea.ws";
29
+ import { propsMeta as propsMeta29 } from "./radio-button.ws";
30
+ import { propsMeta as propsMeta30 } from "./checkbox.ws";
31
+ import { propsMeta as propsMeta31 } from "./vimeo.ws";
32
+ import { propsMeta as propsMeta32 } from "./vimeo-preview-image.ws";
33
+ import { propsMeta as propsMeta33 } from "./vimeo-play-button.ws";
34
+ import { propsMeta as propsMeta34 } from "./vimeo-spinner.ws";
38
35
  export {
39
- propsMeta21 as Blockquote,
36
+ propsMeta20 as Blockquote,
40
37
  propsMeta4 as Body,
41
- propsMeta13 as Bold,
38
+ propsMeta12 as Bold,
42
39
  propsMeta5 as Box,
43
- propsMeta17 as Button,
44
- propsMeta33 as Checkbox,
45
- propsMeta32 as CheckboxField,
46
- propsMeta25 as CodeText,
47
- propsMeta28 as ErrorMessage,
48
- propsMeta19 as Form,
40
+ propsMeta16 as Button,
41
+ propsMeta30 as Checkbox,
42
+ propsMeta24 as CodeText,
43
+ propsMeta27 as ErrorMessage,
44
+ propsMeta18 as Form,
49
45
  propsMeta2 as Fragment,
50
46
  propsMeta7 as Heading,
51
47
  propsMeta3 as HtmlEmbed,
52
- propsMeta20 as Image,
53
- propsMeta18 as Input,
54
- propsMeta14 as Italic,
55
- propsMeta26 as Label,
48
+ propsMeta19 as Image,
49
+ propsMeta17 as Input,
50
+ propsMeta13 as Italic,
51
+ propsMeta25 as Label,
56
52
  propsMeta9 as Link,
57
- propsMeta10 as LinkBlock,
58
- propsMeta22 as List,
59
- propsMeta23 as ListItem,
53
+ propsMeta21 as List,
54
+ propsMeta22 as ListItem,
60
55
  propsMeta8 as Paragraph,
61
- propsMeta31 as RadioButton,
62
- propsMeta30 as RadioButtonField,
63
- propsMeta11 as RichTextLink,
64
- propsMeta24 as Separator,
56
+ propsMeta29 as RadioButton,
57
+ propsMeta10 as RichTextLink,
58
+ propsMeta23 as Separator,
65
59
  propsMeta as Slot,
66
- propsMeta12 as Span,
67
- propsMeta16 as Subscript,
68
- propsMeta27 as SuccessMessage,
69
- propsMeta15 as Superscript,
70
- propsMeta6 as TextBlock,
71
- propsMeta29 as Textarea,
72
- propsMeta34 as Vimeo,
73
- propsMeta36 as VimeoPlayButton,
74
- propsMeta35 as VimeoPreviewImage,
75
- propsMeta37 as VimeoSpinner
60
+ propsMeta11 as Span,
61
+ propsMeta15 as Subscript,
62
+ propsMeta26 as SuccessMessage,
63
+ propsMeta14 as Superscript,
64
+ propsMeta6 as Text,
65
+ propsMeta28 as Textarea,
66
+ propsMeta31 as Vimeo,
67
+ propsMeta33 as VimeoPlayButton,
68
+ propsMeta32 as VimeoPreviewImage,
69
+ propsMeta34 as VimeoSpinner
76
70
  };
@@ -14,8 +14,9 @@ const presetStyle = {
14
14
  ]
15
15
  };
16
16
  const meta = {
17
+ category: "forms",
17
18
  type: "control",
18
- label: "Radio Input",
19
+ label: "Radio",
19
20
  icon: RadioCheckedIcon,
20
21
  presetStyle,
21
22
  order: 5,
@@ -28,6 +29,23 @@ const meta = {
28
29
  { selector: ":enabled", label: "Enabled" },
29
30
  { selector: ":read-only", label: "Read Only" },
30
31
  { selector: ":read-write", label: "Read Write" }
32
+ ],
33
+ template: [
34
+ {
35
+ type: "instance",
36
+ component: "Label",
37
+ label: "Radio Field",
38
+ children: [
39
+ { type: "instance", component: "RadioButton", props: [], children: [] },
40
+ {
41
+ type: "instance",
42
+ component: "Text",
43
+ label: "Radio Label",
44
+ props: [{ type: "string", name: "tag", value: "span" }],
45
+ children: [{ type: "text", value: "Radio" }]
46
+ }
47
+ ]
48
+ }
31
49
  ]
32
50
  };
33
51
  const propsMeta = {
package/lib/span.ws.js CHANGED
@@ -9,7 +9,7 @@ const presetStyle = {
9
9
  };
10
10
  const meta = {
11
11
  type: "rich-text-child",
12
- label: "Styled Text",
12
+ label: "Text",
13
13
  icon: PaintBrushIcon,
14
14
  states: defaultStates,
15
15
  presetStyle
@@ -3,13 +3,13 @@ import {
3
3
  forwardRef
4
4
  } from "react";
5
5
  const defaultTag = "div";
6
- const TextBlock = forwardRef(
6
+ const Text = forwardRef(
7
7
  ({ tag = defaultTag, ...props }, ref) => {
8
8
  return createElement(tag, { ...props, ref });
9
9
  }
10
10
  );
11
- TextBlock.displayName = "TextBlock";
11
+ Text.displayName = "Text";
12
12
  export {
13
- TextBlock,
13
+ Text,
14
14
  defaultTag
15
15
  };
@@ -1,9 +1,9 @@
1
- import { TextBlockIcon } from "@webstudio-is/icons/svg";
1
+ import { TextIcon } from "@webstudio-is/icons/svg";
2
2
  import {
3
3
  defaultStates
4
4
  } from "@webstudio-is/react-sdk";
5
5
  import { div } from "@webstudio-is/react-sdk/css-normalize";
6
- import { props } from "./__generated__/text-block.props";
6
+ import { props } from "./__generated__/text.props";
7
7
  const presetStyle = {
8
8
  div: [
9
9
  ...div,
@@ -15,16 +15,16 @@ const presetStyle = {
15
15
  };
16
16
  const meta = {
17
17
  category: "text",
18
- type: "rich-text",
19
- label: "Text Block",
20
- icon: TextBlockIcon,
18
+ type: "container",
19
+ label: "Text",
20
+ icon: TextIcon,
21
21
  states: defaultStates,
22
22
  presetStyle,
23
23
  template: [
24
24
  {
25
25
  type: "instance",
26
- component: "TextBlock",
27
- children: [{ type: "text", value: "Block of text you can edit" }]
26
+ component: "Text",
27
+ children: [{ type: "text", value: "The text you can edit" }]
28
28
  }
29
29
  ],
30
30
  order: 0
@@ -1,7 +1,3 @@
1
- import { type ComponentProps } from "react";
1
+ /// <reference types="react" />
2
2
  export declare const defaultTag = "button";
3
- type ButtonProps = ComponentProps<typeof defaultTag> & {
4
- innerText?: string;
5
- };
6
- export declare const Button: import("react").ForwardRefExoticComponent<Omit<ButtonProps, "ref"> & import("react").RefAttributes<HTMLButtonElement>>;
7
- export {};
3
+ export declare const Button: import("react").ForwardRefExoticComponent<Omit<import("react").DetailedHTMLProps<import("react").ButtonHTMLAttributes<HTMLButtonElement>, HTMLButtonElement>, "ref"> & import("react").RefAttributes<HTMLButtonElement>>;