@webstudio-is/sdk-components-react 0.88.0 → 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 (158) 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 +264 -47
  7. package/lib/__generated__/code-text.props.js +111 -20
  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 +266 -48
  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 +264 -47
  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 +112 -20
  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 +1 -0
  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 +264 -47
  40. package/lib/cjs/__generated__/code-text.props.js +111 -20
  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 +266 -48
  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 +264 -47
  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 +112 -20
  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 +1 -0
  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.ws.js +2 -0
  68. package/lib/cjs/form.ws.js +1 -0
  69. package/lib/cjs/heading.ws.js +2 -0
  70. package/lib/cjs/html-embed.ws.js +1 -0
  71. package/lib/cjs/image.ws.js +1 -0
  72. package/lib/cjs/input.ws.js +1 -0
  73. package/lib/cjs/label.ws.js +1 -1
  74. package/lib/cjs/link.ws.js +2 -0
  75. package/lib/cjs/list-item.ws.js +1 -0
  76. package/lib/cjs/list.ws.js +1 -0
  77. package/lib/cjs/paragraph.ws.js +2 -0
  78. package/lib/cjs/radio-button.ws.js +1 -0
  79. package/lib/cjs/separator.ws.js +1 -0
  80. package/lib/cjs/text.ws.js +1 -0
  81. package/lib/cjs/textarea.ws.js +1 -0
  82. package/lib/cjs/vimeo.ws.js +1 -0
  83. package/lib/code-text.ws.js +2 -0
  84. package/lib/form.ws.js +1 -0
  85. package/lib/heading.ws.js +2 -0
  86. package/lib/html-embed.ws.js +1 -0
  87. package/lib/image.ws.js +1 -0
  88. package/lib/input.ws.js +1 -0
  89. package/lib/label.ws.js +1 -1
  90. package/lib/link.ws.js +2 -0
  91. package/lib/list-item.ws.js +1 -0
  92. package/lib/list.ws.js +1 -0
  93. package/lib/paragraph.ws.js +2 -0
  94. package/lib/radio-button.ws.js +1 -0
  95. package/lib/separator.ws.js +1 -0
  96. package/lib/text.ws.js +1 -0
  97. package/lib/textarea.ws.js +1 -0
  98. package/lib/types/box.d.ts +1 -0
  99. package/lib/types/heading.d.ts +1 -0
  100. package/lib/types/list.d.ts +1 -0
  101. package/lib/types/text.d.ts +1 -0
  102. package/lib/types/vimeo.d.ts +1 -1
  103. package/lib/vimeo.ws.js +1 -0
  104. package/package.json +6 -6
  105. package/src/__generated__/blockquote.props.ts +131 -20
  106. package/src/__generated__/body.props.ts +124 -19
  107. package/src/__generated__/bold.props.ts +124 -19
  108. package/src/__generated__/box.props.ts +126 -19
  109. package/src/__generated__/button.props.ts +180 -27
  110. package/src/__generated__/checkbox.props.ts +292 -44
  111. package/src/__generated__/code-text.props.ts +124 -19
  112. package/src/__generated__/form.props.ts +179 -27
  113. package/src/__generated__/heading.props.ts +126 -19
  114. package/src/__generated__/image.props.ts +160 -24
  115. package/src/__generated__/input.props.ts +294 -44
  116. package/src/__generated__/italic.props.ts +124 -19
  117. package/src/__generated__/label.props.ts +137 -21
  118. package/src/__generated__/link.props.ts +159 -24
  119. package/src/__generated__/list-item.props.ts +124 -19
  120. package/src/__generated__/list.props.ts +140 -21
  121. package/src/__generated__/paragraph.props.ts +124 -19
  122. package/src/__generated__/radio-button.props.ts +292 -44
  123. package/src/__generated__/rich-text-link.props.ts +159 -24
  124. package/src/__generated__/separator.props.ts +124 -19
  125. package/src/__generated__/span.props.ts +124 -19
  126. package/src/__generated__/subscript.props.ts +124 -19
  127. package/src/__generated__/superscript.props.ts +124 -19
  128. package/src/__generated__/text.props.ts +126 -19
  129. package/src/__generated__/textarea.props.ts +195 -30
  130. package/src/__generated__/vimeo-play-button.props.ts +179 -27
  131. package/src/__generated__/vimeo-preview-image.props.ts +160 -24
  132. package/src/__generated__/vimeo-spinner.props.ts +124 -19
  133. package/src/__generated__/vimeo.props.ts +125 -20
  134. package/src/blockquote.ws.tsx +2 -0
  135. package/src/box.tsx +1 -0
  136. package/src/box.ws.ts +2 -0
  137. package/src/button.ws.tsx +2 -0
  138. package/src/checkbox.ws.tsx +2 -0
  139. package/src/code-text.ws.tsx +3 -0
  140. package/src/form.ws.tsx +1 -0
  141. package/src/heading.tsx +1 -0
  142. package/src/heading.ws.tsx +3 -0
  143. package/src/html-embed.ws.ts +1 -0
  144. package/src/image.ws.tsx +2 -0
  145. package/src/input.ws.tsx +2 -0
  146. package/src/label.ws.tsx +1 -1
  147. package/src/link.ws.tsx +3 -0
  148. package/src/list-item.ws.tsx +1 -0
  149. package/src/list.tsx +1 -0
  150. package/src/list.ws.tsx +1 -0
  151. package/src/paragraph.ws.tsx +2 -0
  152. package/src/radio-button.ws.tsx +2 -0
  153. package/src/separator.ws.tsx +2 -0
  154. package/src/text.tsx +1 -0
  155. package/src/text.ws.tsx +2 -0
  156. package/src/textarea.ws.tsx +2 -0
  157. package/src/vimeo.tsx +1 -1
  158. package/src/vimeo.ws.ts +2 -0
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,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,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" | "span" | "figcaption" | "cite";
5
6
  };
6
7
  export declare const Text: import("react").ForwardRefExoticComponent<Omit<Props, "ref"> & import("react").RefAttributes<HTMLDivElement>>;
@@ -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.88.0",
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.88.0",
44
- "@webstudio-is/generate-arg-types": "^0.88.0",
45
- "@webstudio-is/icons": "^0.88.0",
46
- "@webstudio-is/image": "^0.88.0",
47
- "@webstudio-is/react-sdk": "^0.88.0"
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: {
@@ -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,20 +387,73 @@ 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
406
  className: { required: false, control: "text", type: "string" },
390
- color: { required: false, control: "color", type: "string" },
391
- content: { required: false, control: "text", type: "string" },
392
- contextMenu: { required: false, control: "text", type: "string" },
407
+ color: {
408
+ required: false,
409
+ control: "color",
410
+ type: "string",
411
+ description:
412
+ "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.",
413
+ },
414
+ content: {
415
+ required: false,
416
+ control: "text",
417
+ type: "string",
418
+ description:
419
+ "A value associated with http-equiv orname depending on the context.",
420
+ },
421
+ contextMenu: {
422
+ required: false,
423
+ control: "text",
424
+ type: "string",
425
+ description:
426
+ "Defines the ID of a menu element which willserve as the element's context menu.",
427
+ },
393
428
  datatype: { required: false, control: "text", type: "string" },
394
429
  defaultChecked: { required: false, control: "boolean", type: "boolean" },
395
- dir: { required: false, control: "text", type: "string" },
396
- draggable: { required: false, control: "boolean", type: "boolean" },
397
- hidden: { required: false, control: "boolean", type: "boolean" },
398
- id: { required: false, control: "text", type: "string" },
430
+ dir: {
431
+ required: false,
432
+ control: "text",
433
+ type: "string",
434
+ description:
435
+ "Defines the text direction. Allowed values are ltr (Left-To-Right) or rtl (Right-To-Left)",
436
+ },
437
+ draggable: {
438
+ required: false,
439
+ control: "boolean",
440
+ type: "boolean",
441
+ description: "Defines whether the element can be dragged.",
442
+ },
443
+ hidden: {
444
+ required: false,
445
+ control: "boolean",
446
+ type: "boolean",
447
+ description:
448
+ "Prevents rendering of given element, while keeping child elements, e.g. script elements, active.",
449
+ },
450
+ id: {
451
+ required: false,
452
+ control: "text",
453
+ type: "string",
454
+ description:
455
+ "Often used with CSS to style a specific element. The value of this attribute must be unique.",
456
+ },
399
457
  inputMode: {
400
458
  description:
401
459
  "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",
@@ -425,20 +483,53 @@ export const props: Record<string, PropMeta> = {
425
483
  itemRef: { required: false, control: "text", type: "string" },
426
484
  itemScope: { required: false, control: "boolean", type: "boolean" },
427
485
  itemType: { required: false, control: "text", type: "string" },
428
- lang: { required: false, control: "text", type: "string" },
486
+ lang: {
487
+ required: false,
488
+ control: "text",
489
+ type: "string",
490
+ description: "Defines the language used in the element.",
491
+ },
429
492
  nonce: { required: false, control: "text", type: "string" },
430
- placeholder: { required: false, control: "text", type: "string" },
493
+ placeholder: {
494
+ required: false,
495
+ control: "text",
496
+ type: "string",
497
+ description:
498
+ "Provides a hint to the user of what can be entered in the field.",
499
+ },
431
500
  prefix: { required: false, control: "text", type: "string" },
432
501
  property: { required: false, control: "text", type: "string" },
433
502
  radioGroup: { required: false, control: "text", type: "string" },
434
- rel: { required: false, control: "text", type: "string" },
503
+ rel: {
504
+ required: false,
505
+ control: "text",
506
+ type: "string",
507
+ description:
508
+ "Specifies the relationship of the target object to the link object.",
509
+ },
435
510
  resource: { required: false, control: "text", type: "string" },
436
511
  results: { required: false, control: "number", type: "number" },
437
512
  rev: { required: false, control: "text", type: "string" },
438
- role: { required: false, control: "text", type: "string" },
513
+ role: {
514
+ required: false,
515
+ control: "text",
516
+ type: "string",
517
+ description:
518
+ "Defines an explicit role for an element for use by assistive technologies.",
519
+ },
439
520
  security: { required: false, control: "text", type: "string" },
440
- slot: { required: false, control: "text", type: "string" },
441
- spellCheck: { required: false, control: "boolean", type: "boolean" },
521
+ slot: {
522
+ required: false,
523
+ control: "text",
524
+ type: "string",
525
+ description: "Assigns a slot in a shadow DOM shadow tree to an element.",
526
+ },
527
+ spellCheck: {
528
+ required: false,
529
+ control: "boolean",
530
+ type: "boolean",
531
+ description: "Indicates whether spell checking is allowed for the element.",
532
+ },
442
533
  suppressContentEditableWarning: {
443
534
  required: false,
444
535
  control: "boolean",
@@ -449,13 +540,27 @@ export const props: Record<string, PropMeta> = {
449
540
  control: "boolean",
450
541
  type: "boolean",
451
542
  },
452
- tabIndex: { required: false, control: "number", type: "number" },
453
- title: { required: false, control: "text", type: "string" },
543
+ tabIndex: {
544
+ required: false,
545
+ control: "number",
546
+ type: "number",
547
+ description:
548
+ "Overrides the browser's default tab order and follows the one specified instead.",
549
+ },
550
+ title: {
551
+ required: false,
552
+ control: "text",
553
+ type: "string",
554
+ description:
555
+ "Text to be displayed in a tooltip when hovering over the element.",
556
+ },
454
557
  translate: {
455
558
  required: false,
456
559
  control: "radio",
457
560
  type: "string",
458
561
  options: ["yes", "no"],
562
+ description:
563
+ "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.",
459
564
  },
460
565
  typeof: { required: false, control: "text", type: "string" },
461
566
  unselectable: {