@webstudio-is/sdk-components-react 0.87.1 → 0.89.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 (163) hide show
  1. package/lib/__generated__/blockquote.props.js +117 -21
  2. package/lib/__generated__/body.props.js +111 -20
  3. package/lib/__generated__/bold.props.js +111 -20
  4. package/lib/__generated__/box.props.js +112 -20
  5. package/lib/__generated__/button.props.js +161 -29
  6. package/lib/__generated__/checkbox.props.js +261 -50
  7. package/lib/__generated__/code-text.props.js +108 -24
  8. package/lib/__generated__/form.props.js +159 -28
  9. package/lib/__generated__/heading.props.js +112 -20
  10. package/lib/__generated__/image.props.js +149 -29
  11. package/lib/__generated__/input.props.js +263 -51
  12. package/lib/__generated__/italic.props.js +111 -20
  13. package/lib/__generated__/label.props.js +123 -22
  14. package/lib/__generated__/link.props.js +145 -27
  15. package/lib/__generated__/list-item.props.js +111 -20
  16. package/lib/__generated__/list.props.js +126 -23
  17. package/lib/__generated__/paragraph.props.js +111 -20
  18. package/lib/__generated__/radio-button.props.js +261 -50
  19. package/lib/__generated__/rich-text-link.props.js +145 -27
  20. package/lib/__generated__/separator.props.js +111 -20
  21. package/lib/__generated__/span.props.js +111 -20
  22. package/lib/__generated__/subscript.props.js +111 -20
  23. package/lib/__generated__/superscript.props.js +111 -20
  24. package/lib/__generated__/text.props.js +114 -22
  25. package/lib/__generated__/textarea.props.js +177 -31
  26. package/lib/__generated__/vimeo-play-button.props.js +161 -29
  27. package/lib/__generated__/vimeo-preview-image.props.js +149 -29
  28. package/lib/__generated__/vimeo-spinner.props.js +111 -20
  29. package/lib/__generated__/vimeo.props.js +112 -21
  30. package/lib/blockquote.ws.js +2 -1
  31. package/lib/box.ws.js +1 -0
  32. package/lib/button.ws.js +1 -0
  33. package/lib/checkbox.ws.js +1 -0
  34. package/lib/cjs/__generated__/blockquote.props.js +117 -21
  35. package/lib/cjs/__generated__/body.props.js +111 -20
  36. package/lib/cjs/__generated__/bold.props.js +111 -20
  37. package/lib/cjs/__generated__/box.props.js +112 -20
  38. package/lib/cjs/__generated__/button.props.js +161 -29
  39. package/lib/cjs/__generated__/checkbox.props.js +261 -50
  40. package/lib/cjs/__generated__/code-text.props.js +108 -24
  41. package/lib/cjs/__generated__/form.props.js +159 -28
  42. package/lib/cjs/__generated__/heading.props.js +112 -20
  43. package/lib/cjs/__generated__/image.props.js +149 -29
  44. package/lib/cjs/__generated__/input.props.js +263 -51
  45. package/lib/cjs/__generated__/italic.props.js +111 -20
  46. package/lib/cjs/__generated__/label.props.js +123 -22
  47. package/lib/cjs/__generated__/link.props.js +145 -27
  48. package/lib/cjs/__generated__/list-item.props.js +111 -20
  49. package/lib/cjs/__generated__/list.props.js +126 -23
  50. package/lib/cjs/__generated__/paragraph.props.js +111 -20
  51. package/lib/cjs/__generated__/radio-button.props.js +261 -50
  52. package/lib/cjs/__generated__/rich-text-link.props.js +145 -27
  53. package/lib/cjs/__generated__/separator.props.js +111 -20
  54. package/lib/cjs/__generated__/span.props.js +111 -20
  55. package/lib/cjs/__generated__/subscript.props.js +111 -20
  56. package/lib/cjs/__generated__/superscript.props.js +111 -20
  57. package/lib/cjs/__generated__/text.props.js +114 -22
  58. package/lib/cjs/__generated__/textarea.props.js +177 -31
  59. package/lib/cjs/__generated__/vimeo-play-button.props.js +161 -29
  60. package/lib/cjs/__generated__/vimeo-preview-image.props.js +149 -29
  61. package/lib/cjs/__generated__/vimeo-spinner.props.js +111 -20
  62. package/lib/cjs/__generated__/vimeo.props.js +112 -21
  63. package/lib/cjs/blockquote.ws.js +2 -1
  64. package/lib/cjs/box.ws.js +1 -0
  65. package/lib/cjs/button.ws.js +1 -0
  66. package/lib/cjs/checkbox.ws.js +1 -0
  67. package/lib/cjs/code-text.js +4 -13
  68. package/lib/cjs/code-text.ws.js +10 -9
  69. package/lib/cjs/form.ws.js +1 -0
  70. package/lib/cjs/heading.ws.js +2 -0
  71. package/lib/cjs/html-embed.ws.js +1 -0
  72. package/lib/cjs/image.ws.js +1 -0
  73. package/lib/cjs/input.ws.js +1 -0
  74. package/lib/cjs/label.ws.js +1 -1
  75. package/lib/cjs/link.ws.js +2 -0
  76. package/lib/cjs/list-item.ws.js +1 -0
  77. package/lib/cjs/list.ws.js +1 -0
  78. package/lib/cjs/paragraph.ws.js +2 -0
  79. package/lib/cjs/radio-button.ws.js +1 -0
  80. package/lib/cjs/separator.ws.js +1 -0
  81. package/lib/cjs/text.ws.js +1 -0
  82. package/lib/cjs/textarea.ws.js +1 -0
  83. package/lib/cjs/vimeo.ws.js +1 -0
  84. package/lib/code-text.js +4 -13
  85. package/lib/code-text.ws.js +8 -7
  86. package/lib/form.ws.js +1 -0
  87. package/lib/heading.ws.js +2 -0
  88. package/lib/html-embed.ws.js +1 -0
  89. package/lib/image.ws.js +1 -0
  90. package/lib/input.ws.js +1 -0
  91. package/lib/label.ws.js +1 -1
  92. package/lib/link.ws.js +2 -0
  93. package/lib/list-item.ws.js +1 -0
  94. package/lib/list.ws.js +1 -0
  95. package/lib/paragraph.ws.js +2 -0
  96. package/lib/radio-button.ws.js +1 -0
  97. package/lib/separator.ws.js +1 -0
  98. package/lib/text.ws.js +1 -0
  99. package/lib/textarea.ws.js +1 -0
  100. package/lib/types/box.d.ts +1 -0
  101. package/lib/types/code-text.d.ts +2 -8
  102. package/lib/types/heading.d.ts +1 -0
  103. package/lib/types/list.d.ts +1 -0
  104. package/lib/types/text.d.ts +2 -1
  105. package/lib/types/vimeo-preview-image.d.ts +2 -2
  106. package/lib/types/vimeo.d.ts +1 -1
  107. package/lib/vimeo.ws.js +1 -0
  108. package/package.json +6 -6
  109. package/src/__generated__/blockquote.props.ts +131 -20
  110. package/src/__generated__/body.props.ts +124 -19
  111. package/src/__generated__/bold.props.ts +124 -19
  112. package/src/__generated__/box.props.ts +126 -19
  113. package/src/__generated__/button.props.ts +180 -27
  114. package/src/__generated__/checkbox.props.ts +289 -47
  115. package/src/__generated__/code-text.props.ts +121 -23
  116. package/src/__generated__/form.props.ts +179 -27
  117. package/src/__generated__/heading.props.ts +126 -19
  118. package/src/__generated__/image.props.ts +160 -24
  119. package/src/__generated__/input.props.ts +291 -47
  120. package/src/__generated__/italic.props.ts +124 -19
  121. package/src/__generated__/label.props.ts +137 -21
  122. package/src/__generated__/link.props.ts +159 -24
  123. package/src/__generated__/list-item.props.ts +124 -19
  124. package/src/__generated__/list.props.ts +140 -21
  125. package/src/__generated__/paragraph.props.ts +124 -19
  126. package/src/__generated__/radio-button.props.ts +289 -47
  127. package/src/__generated__/rich-text-link.props.ts +159 -24
  128. package/src/__generated__/separator.props.ts +124 -19
  129. package/src/__generated__/span.props.ts +124 -19
  130. package/src/__generated__/subscript.props.ts +124 -19
  131. package/src/__generated__/superscript.props.ts +124 -19
  132. package/src/__generated__/text.props.ts +128 -21
  133. package/src/__generated__/textarea.props.ts +195 -30
  134. package/src/__generated__/vimeo-play-button.props.ts +179 -27
  135. package/src/__generated__/vimeo-preview-image.props.ts +160 -24
  136. package/src/__generated__/vimeo-spinner.props.ts +124 -19
  137. package/src/__generated__/vimeo.props.ts +125 -20
  138. package/src/blockquote.ws.tsx +3 -1
  139. package/src/box.tsx +1 -0
  140. package/src/box.ws.ts +2 -0
  141. package/src/button.ws.tsx +2 -0
  142. package/src/checkbox.ws.tsx +2 -0
  143. package/src/code-text.tsx +8 -22
  144. package/src/code-text.ws.tsx +10 -7
  145. package/src/form.ws.tsx +1 -0
  146. package/src/heading.tsx +1 -0
  147. package/src/heading.ws.tsx +3 -0
  148. package/src/html-embed.ws.ts +1 -0
  149. package/src/image.ws.tsx +2 -0
  150. package/src/input.ws.tsx +2 -0
  151. package/src/label.ws.tsx +1 -1
  152. package/src/link.ws.tsx +3 -0
  153. package/src/list-item.ws.tsx +1 -0
  154. package/src/list.tsx +1 -0
  155. package/src/list.ws.tsx +1 -0
  156. package/src/paragraph.ws.tsx +2 -0
  157. package/src/radio-button.ws.tsx +2 -0
  158. package/src/separator.ws.tsx +2 -0
  159. package/src/text.tsx +2 -1
  160. package/src/text.ws.tsx +2 -0
  161. package/src/textarea.ws.tsx +2 -0
  162. package/src/vimeo.tsx +1 -1
  163. package/src/vimeo.ws.ts +2 -0
@@ -41,6 +41,7 @@ const meta = {
41
41
  category: "forms",
42
42
  type: "control",
43
43
  label: "Text Area",
44
+ description: "A multi-line text input for collecting longer string data from your users.",
44
45
  icon: import_svg.FormTextAreaIcon,
45
46
  presetStyle,
46
47
  order: 4,
@@ -34,6 +34,7 @@ const meta = {
34
34
  category: "media",
35
35
  type: "container",
36
36
  label: "Vimeo",
37
+ description: "Add a video to your page that is hosted on Vimeo. Paste a Vimeo URL and configure the video in the Settings tab.",
37
38
  order: 1,
38
39
  icon: import_svg.VimeoIcon,
39
40
  states: import_react_sdk.defaultStates,
package/lib/code-text.js CHANGED
@@ -2,21 +2,12 @@ import {
2
2
  forwardRef,
3
3
  createElement
4
4
  } from "react";
5
- import { cssVars } from "@webstudio-is/css-vars";
6
5
  const defaultTag = "code";
7
- const displayVarNamespace = cssVars.define("code-display");
8
- const blockStyle = {
9
- [cssVars.define(displayVarNamespace)]: "block"
10
- };
11
- const CodeText = forwardRef(
12
- ({ inline = false, ...props }, ref) => {
13
- const style = inline ? void 0 : blockStyle;
14
- return createElement(defaultTag, { ...props, style, ref });
15
- }
16
- );
6
+ const CodeText = forwardRef((props, ref) => {
7
+ return createElement(defaultTag, { ...props, ref });
8
+ });
17
9
  CodeText.displayName = "CodeText";
18
10
  export {
19
11
  CodeText,
20
- defaultTag,
21
- displayVarNamespace
12
+ defaultTag
22
13
  };
@@ -3,18 +3,17 @@ import {
3
3
  defaultStates
4
4
  } from "@webstudio-is/react-sdk";
5
5
  import { code } from "@webstudio-is/react-sdk/css-normalize";
6
- import { displayVarNamespace } from "./code-text";
7
6
  import { props } from "./__generated__/code-text.props";
8
7
  const presetStyle = {
9
8
  code: [
10
9
  ...code,
11
10
  {
12
11
  property: "display",
13
- value: {
14
- type: "var",
15
- value: displayVarNamespace,
16
- fallbacks: [{ type: "keyword", value: "inline-block" }]
17
- }
12
+ value: { type: "keyword", value: "block" }
13
+ },
14
+ {
15
+ property: "whiteSpace",
16
+ value: { type: "keyword", value: "pre-wrap" }
18
17
  },
19
18
  {
20
19
  property: "paddingLeft",
@@ -34,7 +33,9 @@ const meta = {
34
33
  category: "general",
35
34
  type: "container",
36
35
  label: "Code Text",
36
+ description: "Use this component when you want to display code as text on the page.",
37
37
  icon: CodeTextIcon,
38
+ invalidAncestors: ["CodeText"],
38
39
  states: defaultStates,
39
40
  presetStyle,
40
41
  template: [
@@ -48,7 +49,7 @@ const meta = {
48
49
  };
49
50
  const propsMeta = {
50
51
  props,
51
- initialProps: ["id", "inline", "lang", "meta"]
52
+ initialProps: ["id", "lang"]
52
53
  };
53
54
  export {
54
55
  meta,
package/lib/form.ws.js CHANGED
@@ -15,6 +15,7 @@ const meta = {
15
15
  type: "container",
16
16
  invalidAncestors: ["Form"],
17
17
  label: "Form",
18
+ description: "Collect information from your users using validation rules.",
18
19
  icon: FormIcon,
19
20
  states: defaultStates,
20
21
  presetStyle,
package/lib/heading.ws.js CHANGED
@@ -16,7 +16,9 @@ const meta = {
16
16
  category: "text",
17
17
  type: "container",
18
18
  label: "Heading",
19
+ description: "Use HTML headings to structure and organize content. Use the Tag property in settings to change the heading level (h1-h6).",
19
20
  icon: HeadingIcon,
21
+ invalidAncestors: ["Heading"],
20
22
  states: defaultStates,
21
23
  presetStyle,
22
24
  template: [
@@ -4,6 +4,7 @@ const meta = {
4
4
  category: "general",
5
5
  type: "embed",
6
6
  label: "HTML Embed",
7
+ description: "Used to add HTML code to the page, such as an SVG or script.",
7
8
  icon: EmbedIcon,
8
9
  stylable: false,
9
10
  order: 7
package/lib/image.ws.js CHANGED
@@ -24,6 +24,7 @@ const meta = {
24
24
  category: "media",
25
25
  type: "embed",
26
26
  label: "Image",
27
+ description: "Add an image asset to the page. Webstudio automatically converts images to WebP or AVIF format and makes them responsive for best performance.",
27
28
  icon: ImageIcon,
28
29
  states: defaultStates,
29
30
  presetStyle,
package/lib/input.ws.js CHANGED
@@ -18,6 +18,7 @@ const meta = {
18
18
  invalidAncestors: ["Button"],
19
19
  type: "control",
20
20
  label: "Text Input",
21
+ description: "A single-line text input for collecting string data from your users.",
21
22
  icon: FormTextFieldIcon,
22
23
  presetStyle,
23
24
  order: 3,
package/lib/label.ws.js CHANGED
@@ -12,7 +12,7 @@ const presetStyle = {
12
12
  };
13
13
  const meta = {
14
14
  category: "forms",
15
- invalidAncestors: ["Button"],
15
+ invalidAncestors: ["Button", "Label"],
16
16
  type: "container",
17
17
  label: "Input Label",
18
18
  icon: LabelIcon,
package/lib/link.ws.js CHANGED
@@ -21,7 +21,9 @@ const meta = {
21
21
  category: "general",
22
22
  type: "container",
23
23
  label: "Link",
24
+ description: "Use a link to send your users to another page, section, or resource. Configure links in the Settings panel.",
24
25
  icon: LinkIcon,
26
+ invalidAncestors: ["Link"],
25
27
  presetStyle,
26
28
  order: 1,
27
29
  states: [
@@ -12,6 +12,7 @@ const meta = {
12
12
  type: "container",
13
13
  requiredAncestors: ["List"],
14
14
  label: "List Item",
15
+ description: "Adds a new item to an existing list.",
15
16
  icon: ListItemIcon,
16
17
  states: defaultStates,
17
18
  presetStyle,
package/lib/list.ws.js CHANGED
@@ -40,6 +40,7 @@ const meta = {
40
40
  category: "general",
41
41
  type: "container",
42
42
  label: "List",
43
+ description: "Groups content, like links in a menu or steps in a recipe.",
43
44
  icon: ListIcon,
44
45
  states: defaultStates,
45
46
  presetStyle,
@@ -11,7 +11,9 @@ const meta = {
11
11
  category: "text",
12
12
  type: "container",
13
13
  label: "Paragraph",
14
+ description: "A container for multi-line text.",
14
15
  icon: TextAlignLeftIcon,
16
+ invalidAncestors: ["Paragraph"],
15
17
  states: defaultStates,
16
18
  presetStyle,
17
19
  template: [
@@ -18,6 +18,7 @@ const meta = {
18
18
  invalidAncestors: ["Button"],
19
19
  type: "control",
20
20
  label: "Radio",
21
+ description: "Use within a form to allow your users to select a single option from a set of mutually exclusive choices. Group multiple radios by matching their \u201CName\u201D properties.",
21
22
  icon: RadioCheckedIcon,
22
23
  presetStyle,
23
24
  order: 5,
@@ -37,6 +37,7 @@ const meta = {
37
37
  category: "general",
38
38
  type: "embed",
39
39
  label: "Separator",
40
+ description: "Used to visually divide sections of content, helping to improve readability and organization within a webpage.",
40
41
  icon: DashIcon,
41
42
  states: defaultStates,
42
43
  presetStyle,
package/lib/text.ws.js CHANGED
@@ -17,6 +17,7 @@ const meta = {
17
17
  category: "text",
18
18
  type: "container",
19
19
  label: "Text",
20
+ description: "A generic container for any text content that is not a heading or a link.",
20
21
  icon: TextIcon,
21
22
  states: defaultStates,
22
23
  presetStyle,
@@ -19,6 +19,7 @@ const meta = {
19
19
  category: "forms",
20
20
  type: "control",
21
21
  label: "Text Area",
22
+ description: "A multi-line text input for collecting longer string data from your users.",
22
23
  icon: FormTextAreaIcon,
23
24
  presetStyle,
24
25
  order: 4,
@@ -1,6 +1,7 @@
1
1
  import { type ComponentProps } from "react";
2
2
  export declare const defaultTag = "div";
3
3
  type Props = ComponentProps<typeof defaultTag> & {
4
+ /** Use this property to change the HTML tag of this element to semantically structure and describe the content of a webpage. This can be important for accessibility tools and search engine optimization. */
4
5
  tag?: "div" | "header" | "footer" | "nav" | "main" | "section" | "article" | "aside" | "address" | "figure";
5
6
  };
6
7
  export declare const Box: import("react").ForwardRefExoticComponent<Omit<Props, "ref"> & import("react").RefAttributes<HTMLDivElement>>;
@@ -1,9 +1,3 @@
1
- import { type ComponentProps } from "react";
1
+ /// <reference types="react" />
2
2
  export declare const defaultTag = "code";
3
- export declare const displayVarNamespace: "--code-display-w7ovd";
4
- type Props = Omit<ComponentProps<typeof defaultTag>, "inline"> & {
5
- inline?: boolean;
6
- meta?: string;
7
- };
8
- export declare const CodeText: import("react").ForwardRefExoticComponent<Omit<Props, "ref"> & import("react").RefAttributes<HTMLElement>>;
9
- export {};
3
+ export declare const CodeText: import("react").ForwardRefExoticComponent<Omit<import("react").DetailedHTMLProps<import("react").HTMLAttributes<HTMLElement>, HTMLElement>, "ref"> & import("react").RefAttributes<HTMLElement>>;
@@ -1,6 +1,7 @@
1
1
  import { type ComponentProps } from "react";
2
2
  declare const defaultTag = "h1";
3
3
  type Props = ComponentProps<typeof defaultTag> & {
4
+ /** Use HTML heading levels (h1-h6) to structure content hierarchically, with h1 as the main title and subsequent levels representing sub-sections. Maintain a logical order and avoid skipping levels to ensure consistent and meaningful organization. */
4
5
  tag?: "h1" | "h2" | "h3" | "h4" | "h5" | "h6";
5
6
  };
6
7
  export declare const Heading: import("react").ForwardRefExoticComponent<Omit<Props, "ref"> & import("react").RefAttributes<HTMLHeadingElement>>;
@@ -3,6 +3,7 @@ declare const unorderedTag = "ul";
3
3
  declare const orderedTag = "ol";
4
4
  export type ListTag = typeof unorderedTag | typeof orderedTag;
5
5
  type Props = ComponentProps<typeof unorderedTag> & ComponentProps<typeof orderedTag> & {
6
+ /** Shows numbers instead of bullets when toggled. See the “List Style Type” property under the “List Item” section in the Style panel for more options. */
6
7
  ordered?: boolean;
7
8
  };
8
9
  export declare const List: import("react").ForwardRefExoticComponent<Omit<Props, "ref"> & import("react").RefAttributes<HTMLUListElement>>;
@@ -1,7 +1,8 @@
1
1
  import { type ComponentProps } from "react";
2
2
  export declare const defaultTag = "div";
3
3
  type Props = ComponentProps<typeof defaultTag> & {
4
- tag?: "div" | "span" | "figcaption";
4
+ /** Use this property to change the HTML tag of this element to semantically structure and describe the content of a webpage. This can be important for accessibility tools and search engine optimization. */
5
+ tag?: "div" | "span" | "figcaption" | "cite";
5
6
  };
6
7
  export declare const Text: import("react").ForwardRefExoticComponent<Omit<Props, "ref"> & import("react").RefAttributes<HTMLDivElement>>;
7
8
  export {};
@@ -272,12 +272,12 @@ export declare const VimeoPreviewImage: import("react").ForwardRefExoticComponen
272
272
  onTransitionEndCapture?: import("react").TransitionEventHandler<HTMLImageElement> | undefined;
273
273
  height?: string | number | undefined;
274
274
  width?: string | number | undefined;
275
- alt?: string | undefined;
276
275
  src?: string | undefined;
277
- crossOrigin?: "" | "anonymous" | "use-credentials" | undefined;
276
+ alt?: string | undefined;
278
277
  referrerPolicy?: import("react").HTMLAttributeReferrerPolicy | undefined;
279
278
  quality?: number | undefined;
280
279
  sizes?: string | undefined;
280
+ crossOrigin?: "" | "anonymous" | "use-credentials" | undefined;
281
281
  decoding?: "auto" | "async" | "sync" | undefined;
282
282
  loading?: "eager" | "lazy" | undefined;
283
283
  srcSet?: string | undefined;
@@ -8,7 +8,7 @@ type VimeoPlayerOptions = {
8
8
  interactive_params?: string;
9
9
  title?: boolean;
10
10
  portrait?: boolean;
11
- /** The ID or the URL of the video on Vimeo. You must supply one of these values to identify the video. When the video's privacy setting is Private, you must use the URL, and the URL must include the h parameter. For more information, see our introductory guide. */
11
+ /** The ID or the URL of the video on Vimeo. You must supply one of these values to identify the video. When the video's privacy setting is Private, you must use the URL, and the URL must include the h parameter. For more information, see Vimeo’s introductory guide. */
12
12
  url?: string;
13
13
  /** Whether to pause the current video when another Vimeo video on the same page starts to play. Set this value to false to permit simultaneous playback of all the videos on the page. This option has no effect if you've disabled cookies in your browser, either through browser settings or with an extension or plugin. */
14
14
  autopause?: boolean;
package/lib/vimeo.ws.js CHANGED
@@ -12,6 +12,7 @@ const meta = {
12
12
  category: "media",
13
13
  type: "container",
14
14
  label: "Vimeo",
15
+ description: "Add a video to your page that is hosted on Vimeo. Paste a Vimeo URL and configure the video in the Settings tab.",
15
16
  order: 1,
16
17
  icon: VimeoIcon,
17
18
  states: defaultStates,
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@webstudio-is/sdk-components-react",
3
- "version": "0.87.1",
3
+ "version": "0.89.0",
4
4
  "description": "Webstudio default library for react",
5
5
  "author": "Webstudio <github@webstudio.is>",
6
6
  "homepage": "https://webstudio.is",
@@ -40,11 +40,11 @@
40
40
  "@react-aria/utils": "^3.19.0",
41
41
  "colord": "^2.9.3",
42
42
  "shallow-equal": "^3.1.0",
43
- "@webstudio-is/css-vars": "^0.87.1",
44
- "@webstudio-is/generate-arg-types": "^0.87.1",
45
- "@webstudio-is/icons": "^0.87.1",
46
- "@webstudio-is/image": "^0.87.1",
47
- "@webstudio-is/react-sdk": "^0.87.1"
43
+ "@webstudio-is/css-vars": "^0.89.0",
44
+ "@webstudio-is/generate-arg-types": "^0.89.0",
45
+ "@webstudio-is/icons": "^0.89.0",
46
+ "@webstudio-is/image": "^0.89.0",
47
+ "@webstudio-is/react-sdk": "^0.89.0"
48
48
  },
49
49
  "devDependencies": {
50
50
  "@storybook/react": "^7.2.1",
@@ -2,7 +2,12 @@ import type { PropMeta } from "@webstudio-is/generate-arg-types";
2
2
 
3
3
  export const props: Record<string, PropMeta> = {
4
4
  about: { required: false, control: "text", type: "string" },
5
- accessKey: { required: false, control: "text", type: "string" },
5
+ accessKey: {
6
+ required: false,
7
+ control: "text",
8
+ type: "string",
9
+ description: "Keyboard shortcut to activate or add focus to the element.",
10
+ },
6
11
  "aria-activedescendant": {
7
12
  description:
8
13
  "Identifies the currently active element when DOM focus is on a composite widget, textbox, group, or application.",
@@ -183,7 +188,7 @@ export const props: Record<string, PropMeta> = {
183
188
  },
184
189
  "aria-label": {
185
190
  description:
186
- "Defines a string value that labels the current element.\n@see aria-labelledby.",
191
+ "Provides the accessible name that describes an interactive element if no other accessible name exists, for example in a button that contains an image with no text.",
187
192
  required: false,
188
193
  control: "text",
189
194
  type: "string",
@@ -382,21 +387,80 @@ export const props: Record<string, PropMeta> = {
382
387
  control: "text",
383
388
  type: "string",
384
389
  },
385
- autoCapitalize: { required: false, control: "text", type: "string" },
390
+ autoCapitalize: {
391
+ required: false,
392
+ control: "text",
393
+ type: "string",
394
+ description:
395
+ "Sets whether input is automatically capitalized when entered by user.",
396
+ },
386
397
  autoCorrect: { required: false, control: "text", type: "string" },
387
- autoFocus: { required: false, control: "boolean", type: "boolean" },
398
+ autoFocus: {
399
+ required: false,
400
+ control: "boolean",
401
+ type: "boolean",
402
+ description:
403
+ "Indicates that an element should be focused on page load, or when its parent dialog is displayed.",
404
+ },
388
405
  autoSave: { required: false, control: "text", type: "string" },
389
- cite: { required: false, control: "text", type: "string" },
406
+ cite: {
407
+ required: false,
408
+ control: "text",
409
+ type: "string",
410
+ description:
411
+ "Contains a URI which points to the source of the quote or change.",
412
+ },
390
413
  className: { required: false, control: "text", type: "string" },
391
- color: { required: false, control: "color", type: "string" },
392
- content: { required: false, control: "text", type: "string" },
393
- contextMenu: { required: false, control: "text", type: "string" },
414
+ color: {
415
+ required: false,
416
+ control: "color",
417
+ type: "string",
418
+ description:
419
+ "This attribute sets the text color using either a named color or a color specified in the hexadecimal #RRGGBB format. Note: This is a legacy attribute. Please use the CSS color property instead.",
420
+ },
421
+ content: {
422
+ required: false,
423
+ control: "text",
424
+ type: "string",
425
+ description:
426
+ "A value associated with http-equiv orname depending on the context.",
427
+ },
428
+ contextMenu: {
429
+ required: false,
430
+ control: "text",
431
+ type: "string",
432
+ description:
433
+ "Defines the ID of a menu element which willserve as the element's context menu.",
434
+ },
394
435
  datatype: { required: false, control: "text", type: "string" },
395
436
  defaultChecked: { required: false, control: "boolean", type: "boolean" },
396
- dir: { required: false, control: "text", type: "string" },
397
- draggable: { required: false, control: "boolean", type: "boolean" },
398
- hidden: { required: false, control: "boolean", type: "boolean" },
399
- id: { required: false, control: "text", type: "string" },
437
+ dir: {
438
+ required: false,
439
+ control: "text",
440
+ type: "string",
441
+ description:
442
+ "Defines the text direction. Allowed values are ltr (Left-To-Right) or rtl (Right-To-Left)",
443
+ },
444
+ draggable: {
445
+ required: false,
446
+ control: "boolean",
447
+ type: "boolean",
448
+ description: "Defines whether the element can be dragged.",
449
+ },
450
+ hidden: {
451
+ required: false,
452
+ control: "boolean",
453
+ type: "boolean",
454
+ description:
455
+ "Prevents rendering of given element, while keeping child elements, e.g. script elements, active.",
456
+ },
457
+ id: {
458
+ required: false,
459
+ control: "text",
460
+ type: "string",
461
+ description:
462
+ "Often used with CSS to style a specific element. The value of this attribute must be unique.",
463
+ },
400
464
  inputMode: {
401
465
  description:
402
466
  "Hints at the type of data that might be entered by the user while editing the element or its contents\n@see https://html.spec.whatwg.org/multipage/interaction.html#input-modalities:-the-inputmode-attribute",
@@ -426,20 +490,53 @@ export const props: Record<string, PropMeta> = {
426
490
  itemRef: { required: false, control: "text", type: "string" },
427
491
  itemScope: { required: false, control: "boolean", type: "boolean" },
428
492
  itemType: { required: false, control: "text", type: "string" },
429
- lang: { required: false, control: "text", type: "string" },
493
+ lang: {
494
+ required: false,
495
+ control: "text",
496
+ type: "string",
497
+ description: "Defines the language used in the element.",
498
+ },
430
499
  nonce: { required: false, control: "text", type: "string" },
431
- placeholder: { required: false, control: "text", type: "string" },
500
+ placeholder: {
501
+ required: false,
502
+ control: "text",
503
+ type: "string",
504
+ description:
505
+ "Provides a hint to the user of what can be entered in the field.",
506
+ },
432
507
  prefix: { required: false, control: "text", type: "string" },
433
508
  property: { required: false, control: "text", type: "string" },
434
509
  radioGroup: { required: false, control: "text", type: "string" },
435
- rel: { required: false, control: "text", type: "string" },
510
+ rel: {
511
+ required: false,
512
+ control: "text",
513
+ type: "string",
514
+ description:
515
+ "Specifies the relationship of the target object to the link object.",
516
+ },
436
517
  resource: { required: false, control: "text", type: "string" },
437
518
  results: { required: false, control: "number", type: "number" },
438
519
  rev: { required: false, control: "text", type: "string" },
439
- role: { required: false, control: "text", type: "string" },
520
+ role: {
521
+ required: false,
522
+ control: "text",
523
+ type: "string",
524
+ description:
525
+ "Defines an explicit role for an element for use by assistive technologies.",
526
+ },
440
527
  security: { required: false, control: "text", type: "string" },
441
- slot: { required: false, control: "text", type: "string" },
442
- spellCheck: { required: false, control: "boolean", type: "boolean" },
528
+ slot: {
529
+ required: false,
530
+ control: "text",
531
+ type: "string",
532
+ description: "Assigns a slot in a shadow DOM shadow tree to an element.",
533
+ },
534
+ spellCheck: {
535
+ required: false,
536
+ control: "boolean",
537
+ type: "boolean",
538
+ description: "Indicates whether spell checking is allowed for the element.",
539
+ },
443
540
  suppressContentEditableWarning: {
444
541
  required: false,
445
542
  control: "boolean",
@@ -450,13 +547,27 @@ export const props: Record<string, PropMeta> = {
450
547
  control: "boolean",
451
548
  type: "boolean",
452
549
  },
453
- tabIndex: { required: false, control: "number", type: "number" },
454
- title: { required: false, control: "text", type: "string" },
550
+ tabIndex: {
551
+ required: false,
552
+ control: "number",
553
+ type: "number",
554
+ description:
555
+ "Overrides the browser's default tab order and follows the one specified instead.",
556
+ },
557
+ title: {
558
+ required: false,
559
+ control: "text",
560
+ type: "string",
561
+ description:
562
+ "Text to be displayed in a tooltip when hovering over the element.",
563
+ },
455
564
  translate: {
456
565
  required: false,
457
566
  control: "radio",
458
567
  type: "string",
459
568
  options: ["yes", "no"],
569
+ description:
570
+ "Specify whether an element's attribute values and the values of its text node children are to be translated when the page is localized, or whether to leave them unchanged.",
460
571
  },
461
572
  typeof: { required: false, control: "text", type: "string" },
462
573
  unselectable: {