@webstudio-is/react-sdk 0.59.0 → 0.61.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/app/custom-components/shared/remix-link.js +2 -2
  2. package/lib/app/index.js +0 -1
  3. package/lib/cjs/app/custom-components/shared/remix-link.js +2 -2
  4. package/lib/cjs/app/index.js +0 -1
  5. package/lib/cjs/components/__generated__/blockquote.props.js +5 -0
  6. package/lib/cjs/components/__generated__/body.props.js +5 -0
  7. package/lib/cjs/components/__generated__/bold.props.js +5 -0
  8. package/lib/cjs/components/__generated__/box.props.js +5 -0
  9. package/lib/cjs/components/__generated__/button.props.js +5 -1
  10. package/lib/cjs/components/__generated__/code.props.js +5 -0
  11. package/lib/cjs/components/__generated__/form.props.js +5 -0
  12. package/lib/cjs/components/__generated__/heading.props.js +5 -0
  13. package/lib/cjs/components/__generated__/image.props.js +5 -0
  14. package/lib/cjs/components/__generated__/input.props.js +11 -2
  15. package/lib/cjs/components/__generated__/italic.props.js +5 -0
  16. package/lib/cjs/components/__generated__/link-block.props.js +5 -1
  17. package/lib/cjs/components/__generated__/link.props.js +5 -1
  18. package/lib/cjs/components/__generated__/list-item.props.js +5 -0
  19. package/lib/cjs/components/__generated__/list.props.js +5 -0
  20. package/lib/cjs/components/__generated__/paragraph.props.js +5 -0
  21. package/lib/cjs/components/__generated__/rich-text-link.props.js +5 -1
  22. package/lib/cjs/components/__generated__/separator.props.js +5 -0
  23. package/lib/cjs/components/__generated__/span.props.js +5 -0
  24. package/lib/cjs/components/__generated__/subscript.props.js +5 -0
  25. package/lib/cjs/components/__generated__/superscript.props.js +5 -0
  26. package/lib/cjs/components/__generated__/text-block.props.js +5 -0
  27. package/lib/cjs/components/blockquote.ws.js +36 -48
  28. package/lib/cjs/components/body.ws.js +19 -24
  29. package/lib/cjs/components/button.ws.js +1 -1
  30. package/lib/cjs/components/code.ws.js +20 -28
  31. package/lib/cjs/components/component-meta.js +2 -1
  32. package/lib/cjs/components/form.ws.js +14 -7
  33. package/lib/cjs/components/heading.ws.js +1 -1
  34. package/lib/cjs/components/image.ws.js +8 -9
  35. package/lib/cjs/components/italic.ws.js +5 -5
  36. package/lib/cjs/components/link-block.ws.js +5 -5
  37. package/lib/cjs/components/link.js +1 -1
  38. package/lib/cjs/components/link.ws.js +9 -10
  39. package/lib/cjs/components/list-item.ws.js +1 -1
  40. package/lib/cjs/components/list.ws.js +22 -22
  41. package/lib/cjs/components/paragraph.ws.js +1 -1
  42. package/lib/cjs/components/separator.ws.js +20 -20
  43. package/lib/cjs/components/text-block.ws.js +6 -7
  44. package/lib/cjs/css/css.js +6 -9
  45. package/lib/cjs/css/normalize.js +166 -185
  46. package/lib/cjs/css/presets.js +14 -34
  47. package/lib/cjs/css/style-rules.js +17 -0
  48. package/lib/cjs/embed-template.js +160 -0
  49. package/lib/cjs/index.js +1 -0
  50. package/lib/components/__generated__/blockquote.props.js +5 -0
  51. package/lib/components/__generated__/body.props.js +5 -0
  52. package/lib/components/__generated__/bold.props.js +5 -0
  53. package/lib/components/__generated__/box.props.js +5 -0
  54. package/lib/components/__generated__/button.props.js +5 -1
  55. package/lib/components/__generated__/code.props.js +5 -0
  56. package/lib/components/__generated__/form.props.js +5 -0
  57. package/lib/components/__generated__/heading.props.js +5 -0
  58. package/lib/components/__generated__/image.props.js +5 -0
  59. package/lib/components/__generated__/input.props.js +11 -2
  60. package/lib/components/__generated__/italic.props.js +5 -0
  61. package/lib/components/__generated__/link-block.props.js +5 -1
  62. package/lib/components/__generated__/link.props.js +5 -1
  63. package/lib/components/__generated__/list-item.props.js +5 -0
  64. package/lib/components/__generated__/list.props.js +5 -0
  65. package/lib/components/__generated__/paragraph.props.js +5 -0
  66. package/lib/components/__generated__/rich-text-link.props.js +5 -1
  67. package/lib/components/__generated__/separator.props.js +5 -0
  68. package/lib/components/__generated__/span.props.js +5 -0
  69. package/lib/components/__generated__/subscript.props.js +5 -0
  70. package/lib/components/__generated__/superscript.props.js +5 -0
  71. package/lib/components/__generated__/text-block.props.js +5 -0
  72. package/lib/components/blockquote.ws.js +36 -48
  73. package/lib/components/body.ws.js +19 -24
  74. package/lib/components/button.ws.js +1 -1
  75. package/lib/components/code.ws.js +20 -28
  76. package/lib/components/component-meta.js +2 -1
  77. package/lib/components/form.ws.js +14 -7
  78. package/lib/components/heading.ws.js +1 -1
  79. package/lib/components/image.ws.js +8 -9
  80. package/lib/components/italic.ws.js +5 -5
  81. package/lib/components/link-block.ws.js +5 -5
  82. package/lib/components/link.js +1 -1
  83. package/lib/components/link.ws.js +9 -10
  84. package/lib/components/list-item.ws.js +1 -1
  85. package/lib/components/list.ws.js +22 -22
  86. package/lib/components/paragraph.ws.js +1 -1
  87. package/lib/components/separator.ws.js +20 -20
  88. package/lib/components/text-block.ws.js +6 -7
  89. package/lib/css/css.js +8 -11
  90. package/lib/css/normalize.js +166 -185
  91. package/lib/css/presets.js +14 -34
  92. package/lib/css/style-rules.js +17 -0
  93. package/lib/embed-template.js +140 -0
  94. package/lib/index.js +1 -0
  95. package/lib/types/app/index.d.ts +0 -1
  96. package/lib/types/components/box.stories.d.ts +2 -2
  97. package/lib/types/components/component-meta.d.ts +20 -5
  98. package/lib/types/components/components-utils.d.ts +1 -1
  99. package/lib/types/css/normalize.d.ts +8786 -2286
  100. package/lib/types/css/presets.d.ts +2 -38
  101. package/lib/types/css/style-rules.d.ts +11 -9
  102. package/lib/types/embed-template.d.ts +1725 -0
  103. package/lib/types/embed-template.test.d.ts +1 -0
  104. package/lib/types/index.d.ts +1 -0
  105. package/package.json +16 -19
  106. package/src/app/custom-components/shared/remix-link.tsx +2 -2
  107. package/src/app/index.ts +0 -1
  108. package/src/components/__generated__/blockquote.props.ts +5 -0
  109. package/src/components/__generated__/body.props.ts +5 -0
  110. package/src/components/__generated__/bold.props.ts +5 -0
  111. package/src/components/__generated__/box.props.ts +5 -0
  112. package/src/components/__generated__/button.props.ts +5 -1
  113. package/src/components/__generated__/code.props.ts +5 -0
  114. package/src/components/__generated__/form.props.ts +5 -0
  115. package/src/components/__generated__/heading.props.ts +5 -0
  116. package/src/components/__generated__/image.props.ts +5 -0
  117. package/src/components/__generated__/input.props.ts +11 -2
  118. package/src/components/__generated__/italic.props.ts +5 -0
  119. package/src/components/__generated__/link-block.props.ts +5 -1
  120. package/src/components/__generated__/link.props.ts +5 -1
  121. package/src/components/__generated__/list-item.props.ts +5 -0
  122. package/src/components/__generated__/list.props.ts +5 -0
  123. package/src/components/__generated__/paragraph.props.ts +5 -0
  124. package/src/components/__generated__/rich-text-link.props.ts +5 -1
  125. package/src/components/__generated__/separator.props.ts +5 -0
  126. package/src/components/__generated__/span.props.ts +5 -0
  127. package/src/components/__generated__/subscript.props.ts +5 -0
  128. package/src/components/__generated__/superscript.props.ts +5 -0
  129. package/src/components/__generated__/text-block.props.ts +5 -0
  130. package/src/components/blockquote.ws.tsx +42 -52
  131. package/src/components/body.ws.tsx +25 -32
  132. package/src/components/bold.ws.tsx +6 -3
  133. package/src/components/box.ws.ts +6 -3
  134. package/src/components/button.ws.tsx +7 -4
  135. package/src/components/code.ws.tsx +26 -32
  136. package/src/components/component-meta.ts +5 -3
  137. package/src/components/form.ws.tsx +19 -9
  138. package/src/components/heading.ws.tsx +7 -4
  139. package/src/components/image.ws.tsx +14 -12
  140. package/src/components/input.ws.tsx +6 -3
  141. package/src/components/italic.ws.tsx +11 -8
  142. package/src/components/link-block.ws.tsx +11 -8
  143. package/src/components/link.tsx +1 -1
  144. package/src/components/link.ws.tsx +15 -13
  145. package/src/components/list-item.ws.tsx +7 -4
  146. package/src/components/list.ws.tsx +28 -25
  147. package/src/components/paragraph.ws.tsx +7 -4
  148. package/src/components/separator.ws.tsx +26 -25
  149. package/src/components/span.ws.tsx +6 -3
  150. package/src/components/subscript.ws.tsx +6 -3
  151. package/src/components/superscript.ws.tsx +6 -3
  152. package/src/components/text-block.ws.tsx +12 -11
  153. package/src/css/css.ts +8 -11
  154. package/src/css/normalize.ts +165 -188
  155. package/src/css/presets.ts +15 -37
  156. package/src/css/style-rules.ts +24 -0
  157. package/src/embed-template.test.ts +210 -0
  158. package/src/embed-template.ts +187 -0
  159. package/src/index.ts +1 -0
  160. package/lib/app/handle-request.server.js +0 -16
  161. package/lib/cjs/app/handle-request.server.js +0 -36
  162. package/lib/types/app/handle-request.server.d.ts +0 -2
  163. package/src/app/handle-request.server.tsx +0 -21
@@ -0,0 +1 @@
1
+ export {};
@@ -7,3 +7,4 @@ export * from "./components/components";
7
7
  export * from "./components/components-utils";
8
8
  export { customComponents, customComponentMetas, customComponentPropsMetas, } from "./app/custom-components";
9
9
  export { type WsComponentPropsMeta, type WsComponentMeta, type ComponentState, componentCategories, } from "./components/component-meta";
10
+ export * from "./embed-template";
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@webstudio-is/react-sdk",
3
- "version": "0.59.0",
3
+ "version": "0.61.0",
4
4
  "description": "Webstudio JavaScript / TypeScript API",
5
5
  "author": "Webstudio <github@webstudio.is>",
6
6
  "homepage": "https://webstudio.is",
@@ -8,11 +8,8 @@
8
8
  "devDependencies": {
9
9
  "@babel/core": "^7.21.0",
10
10
  "@jest/globals": "^29.3.1",
11
- "@remix-run/node": "1.15.0",
12
- "@remix-run/react": "1.15.0",
13
- "@remix-run/server-runtime": "1.15.0",
11
+ "@remix-run/react": "^1.15.0",
14
12
  "@storybook/react": "^6.5.16",
15
- "@types/node": "^18.11.18",
16
13
  "@types/react": "^18.0.35",
17
14
  "@types/react-dom": "^18.0.11",
18
15
  "jest": "^29.3.1",
@@ -20,14 +17,13 @@
20
17
  "react-dom": "^18.2.0",
21
18
  "typescript": "5.0.3",
22
19
  "zod": "^3.19.1",
23
- "@webstudio-is/jest-config": "^1.0.5",
20
+ "@webstudio-is/jest-config": "^1.0.6",
24
21
  "@webstudio-is/scripts": "^0.0.0",
25
22
  "@webstudio-is/storybook-config": "^0.0.0",
26
- "@webstudio-is/tsconfig": "^1.0.5"
23
+ "@webstudio-is/tsconfig": "^1.0.6"
27
24
  },
28
25
  "peerDependencies": {
29
- "@remix-run/react": "1.9.0",
30
- "@remix-run/server-runtime": "1.9.0",
26
+ "@remix-run/react": "^1.15.0",
31
27
  "react": "^18.2.0",
32
28
  "react-dom": "^18.2.0",
33
29
  "zod": "^3.19.1"
@@ -37,17 +33,18 @@
37
33
  "detect-font": "^0.1.5",
38
34
  "html-tags": "^3.2.0",
39
35
  "nanoevents": "^7.0.1",
36
+ "nanoid": "^3.2.0",
40
37
  "nanostores": "^0.7.1",
41
- "@webstudio-is/asset-uploader": "^0.59.0",
42
- "@webstudio-is/css-data": "^0.59.0",
43
- "@webstudio-is/css-engine": "^0.59.0",
44
- "@webstudio-is/css-vars": "^0.59.0",
45
- "@webstudio-is/fonts": "^0.59.0",
46
- "@webstudio-is/generate-arg-types": "^0.59.0",
47
- "@webstudio-is/icons": "^0.59.0",
48
- "@webstudio-is/image": "^0.59.0",
49
- "@webstudio-is/prisma-client": "^0.59.0",
50
- "@webstudio-is/project-build": "^0.59.0"
38
+ "@webstudio-is/asset-uploader": "^0.61.0",
39
+ "@webstudio-is/css-data": "^0.61.0",
40
+ "@webstudio-is/css-engine": "^0.61.0",
41
+ "@webstudio-is/css-vars": "^0.61.0",
42
+ "@webstudio-is/fonts": "^0.61.0",
43
+ "@webstudio-is/generate-arg-types": "^0.61.0",
44
+ "@webstudio-is/icons": "^0.61.0",
45
+ "@webstudio-is/image": "^0.61.0",
46
+ "@webstudio-is/prisma-client": "^0.61.0",
47
+ "@webstudio-is/project-build": "^0.61.0"
51
48
  },
52
49
  "exports": {
53
50
  ".": {
@@ -1,4 +1,4 @@
1
- import { Link as RemixLink } from "@remix-run/react";
1
+ import { NavLink as RemixLink } from "@remix-run/react";
2
2
  import type { ComponentPropsWithoutRef } from "react";
3
3
  import { forwardRef } from "react";
4
4
  import type { Link } from "../../../components/link";
@@ -12,7 +12,7 @@ export const wrapLinkComponent = (BaseLink: LinkComponent) => {
12
12
  const href = usePropUrl(getInstanceIdFromComponentProps(props), "href");
13
13
 
14
14
  if (href?.type === "page") {
15
- let to = href.page.path;
15
+ let to = href.page.path === "" ? "/" : href.page.path;
16
16
  if (href.hash !== undefined) {
17
17
  to += `#${href.hash}`;
18
18
  }
package/src/app/index.ts CHANGED
@@ -1,3 +1,2 @@
1
1
  export * from "./root";
2
- export * from "./handle-request.server";
3
2
  export * from "./params";
@@ -18,6 +18,7 @@ export const props: Record<string, PropMeta> = {
18
18
  type: "boolean",
19
19
  },
20
20
  accessKey: { required: false, control: "text", type: "string" },
21
+ autoFocus: { required: false, control: "boolean", type: "boolean" },
21
22
  className: { required: false, control: "text", type: "string" },
22
23
  contentEditable: { required: false, control: "text", type: "string" },
23
24
  contextMenu: { required: false, control: "text", type: "string" },
@@ -26,6 +27,7 @@ export const props: Record<string, PropMeta> = {
26
27
  hidden: { required: false, control: "boolean", type: "boolean" },
27
28
  id: { required: false, control: "text", type: "string" },
28
29
  lang: { required: false, control: "text", type: "string" },
30
+ nonce: { required: false, control: "text", type: "string" },
29
31
  placeholder: { required: false, control: "text", type: "string" },
30
32
  spellCheck: { required: false, control: "boolean", type: "boolean" },
31
33
  tabIndex: { required: false, control: "number", type: "number" },
@@ -38,11 +40,14 @@ export const props: Record<string, PropMeta> = {
38
40
  radioGroup: { required: false, control: "text", type: "string" },
39
41
  role: { required: false, control: "text", type: "string" },
40
42
  about: { required: false, control: "text", type: "string" },
43
+ content: { required: false, control: "text", type: "string" },
41
44
  datatype: { required: false, control: "text", type: "string" },
42
45
  inlist: { required: false, control: "text", type: "string" },
43
46
  prefix: { required: false, control: "text", type: "string" },
44
47
  property: { required: false, control: "text", type: "string" },
48
+ rel: { required: false, control: "text", type: "string" },
45
49
  resource: { required: false, control: "text", type: "string" },
50
+ rev: { required: false, control: "text", type: "string" },
46
51
  typeof: { required: false, control: "text", type: "string" },
47
52
  vocab: { required: false, control: "text", type: "string" },
48
53
  autoCapitalize: { required: false, control: "text", type: "string" },
@@ -17,6 +17,7 @@ export const props: Record<string, PropMeta> = {
17
17
  type: "boolean",
18
18
  },
19
19
  accessKey: { required: false, control: "text", type: "string" },
20
+ autoFocus: { required: false, control: "boolean", type: "boolean" },
20
21
  className: { required: false, control: "text", type: "string" },
21
22
  contentEditable: { required: false, control: "text", type: "string" },
22
23
  contextMenu: { required: false, control: "text", type: "string" },
@@ -25,6 +26,7 @@ export const props: Record<string, PropMeta> = {
25
26
  hidden: { required: false, control: "boolean", type: "boolean" },
26
27
  id: { required: false, control: "text", type: "string" },
27
28
  lang: { required: false, control: "text", type: "string" },
29
+ nonce: { required: false, control: "text", type: "string" },
28
30
  placeholder: { required: false, control: "text", type: "string" },
29
31
  spellCheck: { required: false, control: "boolean", type: "boolean" },
30
32
  tabIndex: { required: false, control: "number", type: "number" },
@@ -37,11 +39,14 @@ export const props: Record<string, PropMeta> = {
37
39
  radioGroup: { required: false, control: "text", type: "string" },
38
40
  role: { required: false, control: "text", type: "string" },
39
41
  about: { required: false, control: "text", type: "string" },
42
+ content: { required: false, control: "text", type: "string" },
40
43
  datatype: { required: false, control: "text", type: "string" },
41
44
  inlist: { required: false, control: "text", type: "string" },
42
45
  prefix: { required: false, control: "text", type: "string" },
43
46
  property: { required: false, control: "text", type: "string" },
47
+ rel: { required: false, control: "text", type: "string" },
44
48
  resource: { required: false, control: "text", type: "string" },
49
+ rev: { required: false, control: "text", type: "string" },
45
50
  typeof: { required: false, control: "text", type: "string" },
46
51
  vocab: { required: false, control: "text", type: "string" },
47
52
  autoCapitalize: { required: false, control: "text", type: "string" },
@@ -17,6 +17,7 @@ export const props: Record<string, PropMeta> = {
17
17
  type: "boolean",
18
18
  },
19
19
  accessKey: { required: false, control: "text", type: "string" },
20
+ autoFocus: { required: false, control: "boolean", type: "boolean" },
20
21
  className: { required: false, control: "text", type: "string" },
21
22
  contentEditable: { required: false, control: "text", type: "string" },
22
23
  contextMenu: { required: false, control: "text", type: "string" },
@@ -25,6 +26,7 @@ export const props: Record<string, PropMeta> = {
25
26
  hidden: { required: false, control: "boolean", type: "boolean" },
26
27
  id: { required: false, control: "text", type: "string" },
27
28
  lang: { required: false, control: "text", type: "string" },
29
+ nonce: { required: false, control: "text", type: "string" },
28
30
  placeholder: { required: false, control: "text", type: "string" },
29
31
  spellCheck: { required: false, control: "boolean", type: "boolean" },
30
32
  tabIndex: { required: false, control: "number", type: "number" },
@@ -37,11 +39,14 @@ export const props: Record<string, PropMeta> = {
37
39
  radioGroup: { required: false, control: "text", type: "string" },
38
40
  role: { required: false, control: "text", type: "string" },
39
41
  about: { required: false, control: "text", type: "string" },
42
+ content: { required: false, control: "text", type: "string" },
40
43
  datatype: { required: false, control: "text", type: "string" },
41
44
  inlist: { required: false, control: "text", type: "string" },
42
45
  prefix: { required: false, control: "text", type: "string" },
43
46
  property: { required: false, control: "text", type: "string" },
47
+ rel: { required: false, control: "text", type: "string" },
44
48
  resource: { required: false, control: "text", type: "string" },
49
+ rev: { required: false, control: "text", type: "string" },
45
50
  typeof: { required: false, control: "text", type: "string" },
46
51
  vocab: { required: false, control: "text", type: "string" },
47
52
  autoCapitalize: { required: false, control: "text", type: "string" },
@@ -17,6 +17,7 @@ export const props: Record<string, PropMeta> = {
17
17
  type: "boolean",
18
18
  },
19
19
  accessKey: { required: false, control: "text", type: "string" },
20
+ autoFocus: { required: false, control: "boolean", type: "boolean" },
20
21
  className: { required: false, control: "text", type: "string" },
21
22
  contentEditable: { required: false, control: "text", type: "string" },
22
23
  contextMenu: { required: false, control: "text", type: "string" },
@@ -25,6 +26,7 @@ export const props: Record<string, PropMeta> = {
25
26
  hidden: { required: false, control: "boolean", type: "boolean" },
26
27
  id: { required: false, control: "text", type: "string" },
27
28
  lang: { required: false, control: "text", type: "string" },
29
+ nonce: { required: false, control: "text", type: "string" },
28
30
  placeholder: { required: false, control: "text", type: "string" },
29
31
  spellCheck: { required: false, control: "boolean", type: "boolean" },
30
32
  tabIndex: { required: false, control: "number", type: "number" },
@@ -37,11 +39,14 @@ export const props: Record<string, PropMeta> = {
37
39
  radioGroup: { required: false, control: "text", type: "string" },
38
40
  role: { required: false, control: "text", type: "string" },
39
41
  about: { required: false, control: "text", type: "string" },
42
+ content: { required: false, control: "text", type: "string" },
40
43
  datatype: { required: false, control: "text", type: "string" },
41
44
  inlist: { required: false, control: "text", type: "string" },
42
45
  prefix: { required: false, control: "text", type: "string" },
43
46
  property: { required: false, control: "text", type: "string" },
47
+ rel: { required: false, control: "text", type: "string" },
44
48
  resource: { required: false, control: "text", type: "string" },
49
+ rev: { required: false, control: "text", type: "string" },
45
50
  typeof: { required: false, control: "text", type: "string" },
46
51
  vocab: { required: false, control: "text", type: "string" },
47
52
  autoCapitalize: { required: false, control: "text", type: "string" },
@@ -5,7 +5,6 @@ export const props: Record<string, PropMeta> = {
5
5
  slot: { required: false, control: "text", type: "string" },
6
6
  style: { required: false, control: "text", type: "string" },
7
7
  title: { required: false, control: "text", type: "string" },
8
- autoFocus: { required: false, control: "boolean", type: "boolean" },
9
8
  disabled: { required: false, control: "boolean", type: "boolean" },
10
9
  formAction: { required: false, control: "text", type: "string" },
11
10
  formEncType: { required: false, control: "text", type: "string" },
@@ -34,6 +33,7 @@ export const props: Record<string, PropMeta> = {
34
33
  type: "boolean",
35
34
  },
36
35
  accessKey: { required: false, control: "text", type: "string" },
36
+ autoFocus: { required: false, control: "boolean", type: "boolean" },
37
37
  className: { required: false, control: "text", type: "string" },
38
38
  contentEditable: { required: false, control: "text", type: "string" },
39
39
  contextMenu: { required: false, control: "text", type: "string" },
@@ -42,6 +42,7 @@ export const props: Record<string, PropMeta> = {
42
42
  hidden: { required: false, control: "boolean", type: "boolean" },
43
43
  id: { required: false, control: "text", type: "string" },
44
44
  lang: { required: false, control: "text", type: "string" },
45
+ nonce: { required: false, control: "text", type: "string" },
45
46
  placeholder: { required: false, control: "text", type: "string" },
46
47
  spellCheck: { required: false, control: "boolean", type: "boolean" },
47
48
  tabIndex: { required: false, control: "number", type: "number" },
@@ -54,11 +55,14 @@ export const props: Record<string, PropMeta> = {
54
55
  radioGroup: { required: false, control: "text", type: "string" },
55
56
  role: { required: false, control: "text", type: "string" },
56
57
  about: { required: false, control: "text", type: "string" },
58
+ content: { required: false, control: "text", type: "string" },
57
59
  datatype: { required: false, control: "text", type: "string" },
58
60
  inlist: { required: false, control: "text", type: "string" },
59
61
  prefix: { required: false, control: "text", type: "string" },
60
62
  property: { required: false, control: "text", type: "string" },
63
+ rel: { required: false, control: "text", type: "string" },
61
64
  resource: { required: false, control: "text", type: "string" },
65
+ rev: { required: false, control: "text", type: "string" },
62
66
  typeof: { required: false, control: "text", type: "string" },
63
67
  vocab: { required: false, control: "text", type: "string" },
64
68
  autoCapitalize: { required: false, control: "text", type: "string" },
@@ -18,6 +18,7 @@ export const props: Record<string, PropMeta> = {
18
18
  type: "boolean",
19
19
  },
20
20
  accessKey: { required: false, control: "text", type: "string" },
21
+ autoFocus: { required: false, control: "boolean", type: "boolean" },
21
22
  className: { required: false, control: "text", type: "string" },
22
23
  contentEditable: { required: false, control: "text", type: "string" },
23
24
  contextMenu: { required: false, control: "text", type: "string" },
@@ -26,6 +27,7 @@ export const props: Record<string, PropMeta> = {
26
27
  hidden: { required: false, control: "boolean", type: "boolean" },
27
28
  id: { required: false, control: "text", type: "string" },
28
29
  lang: { required: false, control: "text", type: "string" },
30
+ nonce: { required: false, control: "text", type: "string" },
29
31
  placeholder: { required: false, control: "text", type: "string" },
30
32
  spellCheck: { required: false, control: "boolean", type: "boolean" },
31
33
  tabIndex: { required: false, control: "number", type: "number" },
@@ -38,11 +40,14 @@ export const props: Record<string, PropMeta> = {
38
40
  radioGroup: { required: false, control: "text", type: "string" },
39
41
  role: { required: false, control: "text", type: "string" },
40
42
  about: { required: false, control: "text", type: "string" },
43
+ content: { required: false, control: "text", type: "string" },
41
44
  datatype: { required: false, control: "text", type: "string" },
42
45
  inlist: { required: false, control: "text", type: "string" },
43
46
  prefix: { required: false, control: "text", type: "string" },
44
47
  property: { required: false, control: "text", type: "string" },
48
+ rel: { required: false, control: "text", type: "string" },
45
49
  resource: { required: false, control: "text", type: "string" },
50
+ rev: { required: false, control: "text", type: "string" },
46
51
  typeof: { required: false, control: "text", type: "string" },
47
52
  vocab: { required: false, control: "text", type: "string" },
48
53
  autoCapitalize: { required: false, control: "text", type: "string" },
@@ -25,6 +25,7 @@ export const props: Record<string, PropMeta> = {
25
25
  type: "boolean",
26
26
  },
27
27
  accessKey: { required: false, control: "text", type: "string" },
28
+ autoFocus: { required: false, control: "boolean", type: "boolean" },
28
29
  className: { required: false, control: "text", type: "string" },
29
30
  contentEditable: { required: false, control: "text", type: "string" },
30
31
  contextMenu: { required: false, control: "text", type: "string" },
@@ -33,6 +34,7 @@ export const props: Record<string, PropMeta> = {
33
34
  hidden: { required: false, control: "boolean", type: "boolean" },
34
35
  id: { required: false, control: "text", type: "string" },
35
36
  lang: { required: false, control: "text", type: "string" },
37
+ nonce: { required: false, control: "text", type: "string" },
36
38
  placeholder: { required: false, control: "text", type: "string" },
37
39
  spellCheck: { required: false, control: "boolean", type: "boolean" },
38
40
  tabIndex: { required: false, control: "number", type: "number" },
@@ -45,11 +47,14 @@ export const props: Record<string, PropMeta> = {
45
47
  radioGroup: { required: false, control: "text", type: "string" },
46
48
  role: { required: false, control: "text", type: "string" },
47
49
  about: { required: false, control: "text", type: "string" },
50
+ content: { required: false, control: "text", type: "string" },
48
51
  datatype: { required: false, control: "text", type: "string" },
49
52
  inlist: { required: false, control: "text", type: "string" },
50
53
  prefix: { required: false, control: "text", type: "string" },
51
54
  property: { required: false, control: "text", type: "string" },
55
+ rel: { required: false, control: "text", type: "string" },
52
56
  resource: { required: false, control: "text", type: "string" },
57
+ rev: { required: false, control: "text", type: "string" },
53
58
  typeof: { required: false, control: "text", type: "string" },
54
59
  vocab: { required: false, control: "text", type: "string" },
55
60
  autoCapitalize: { required: false, control: "text", type: "string" },
@@ -17,6 +17,7 @@ export const props: Record<string, PropMeta> = {
17
17
  type: "boolean",
18
18
  },
19
19
  accessKey: { required: false, control: "text", type: "string" },
20
+ autoFocus: { required: false, control: "boolean", type: "boolean" },
20
21
  className: { required: false, control: "text", type: "string" },
21
22
  contentEditable: { required: false, control: "text", type: "string" },
22
23
  contextMenu: { required: false, control: "text", type: "string" },
@@ -25,6 +26,7 @@ export const props: Record<string, PropMeta> = {
25
26
  hidden: { required: false, control: "boolean", type: "boolean" },
26
27
  id: { required: false, control: "text", type: "string" },
27
28
  lang: { required: false, control: "text", type: "string" },
29
+ nonce: { required: false, control: "text", type: "string" },
28
30
  placeholder: { required: false, control: "text", type: "string" },
29
31
  spellCheck: { required: false, control: "boolean", type: "boolean" },
30
32
  tabIndex: { required: false, control: "number", type: "number" },
@@ -37,11 +39,14 @@ export const props: Record<string, PropMeta> = {
37
39
  radioGroup: { required: false, control: "text", type: "string" },
38
40
  role: { required: false, control: "text", type: "string" },
39
41
  about: { required: false, control: "text", type: "string" },
42
+ content: { required: false, control: "text", type: "string" },
40
43
  datatype: { required: false, control: "text", type: "string" },
41
44
  inlist: { required: false, control: "text", type: "string" },
42
45
  prefix: { required: false, control: "text", type: "string" },
43
46
  property: { required: false, control: "text", type: "string" },
47
+ rel: { required: false, control: "text", type: "string" },
44
48
  resource: { required: false, control: "text", type: "string" },
49
+ rev: { required: false, control: "text", type: "string" },
45
50
  typeof: { required: false, control: "text", type: "string" },
46
51
  vocab: { required: false, control: "text", type: "string" },
47
52
  autoCapitalize: { required: false, control: "text", type: "string" },
@@ -58,6 +58,7 @@ export const props: Record<string, PropMeta> = {
58
58
  type: "boolean",
59
59
  },
60
60
  accessKey: { required: false, control: "text", type: "string" },
61
+ autoFocus: { required: false, control: "boolean", type: "boolean" },
61
62
  className: { required: false, control: "text", type: "string" },
62
63
  contentEditable: { required: false, control: "text", type: "string" },
63
64
  contextMenu: { required: false, control: "text", type: "string" },
@@ -66,6 +67,7 @@ export const props: Record<string, PropMeta> = {
66
67
  hidden: { required: false, control: "boolean", type: "boolean" },
67
68
  id: { required: false, control: "text", type: "string" },
68
69
  lang: { required: false, control: "text", type: "string" },
70
+ nonce: { required: false, control: "text", type: "string" },
69
71
  placeholder: { required: false, control: "text", type: "string" },
70
72
  spellCheck: { required: false, control: "boolean", type: "boolean" },
71
73
  tabIndex: { required: false, control: "number", type: "number" },
@@ -78,11 +80,14 @@ export const props: Record<string, PropMeta> = {
78
80
  radioGroup: { required: false, control: "text", type: "string" },
79
81
  role: { required: false, control: "text", type: "string" },
80
82
  about: { required: false, control: "text", type: "string" },
83
+ content: { required: false, control: "text", type: "string" },
81
84
  datatype: { required: false, control: "text", type: "string" },
82
85
  inlist: { required: false, control: "text", type: "string" },
83
86
  prefix: { required: false, control: "text", type: "string" },
84
87
  property: { required: false, control: "text", type: "string" },
88
+ rel: { required: false, control: "text", type: "string" },
85
89
  resource: { required: false, control: "text", type: "string" },
90
+ rev: { required: false, control: "text", type: "string" },
86
91
  typeof: { required: false, control: "text", type: "string" },
87
92
  vocab: { required: false, control: "text", type: "string" },
88
93
  autoCapitalize: { required: false, control: "text", type: "string" },
@@ -9,10 +9,14 @@ export const props: Record<string, PropMeta> = {
9
9
  accept: { required: false, control: "text", type: "string" },
10
10
  alt: { required: false, control: "text", type: "string" },
11
11
  autoComplete: { required: false, control: "text", type: "string" },
12
- autoFocus: { required: false, control: "boolean", type: "boolean" },
13
12
  capture: { required: false, control: "text", type: "string" },
14
13
  checked: { required: false, control: "boolean", type: "boolean" },
15
- crossOrigin: { required: false, control: "text", type: "string" },
14
+ crossOrigin: {
15
+ required: false,
16
+ control: "radio",
17
+ type: "string",
18
+ options: ["", "anonymous", "use-credentials"],
19
+ },
16
20
  disabled: { required: false, control: "boolean", type: "boolean" },
17
21
  enterKeyHint: {
18
22
  required: false,
@@ -56,6 +60,7 @@ export const props: Record<string, PropMeta> = {
56
60
  type: "boolean",
57
61
  },
58
62
  accessKey: { required: false, control: "text", type: "string" },
63
+ autoFocus: { required: false, control: "boolean", type: "boolean" },
59
64
  className: { required: false, control: "text", type: "string" },
60
65
  contentEditable: { required: false, control: "text", type: "string" },
61
66
  contextMenu: { required: false, control: "text", type: "string" },
@@ -64,6 +69,7 @@ export const props: Record<string, PropMeta> = {
64
69
  hidden: { required: false, control: "boolean", type: "boolean" },
65
70
  id: { required: false, control: "text", type: "string" },
66
71
  lang: { required: false, control: "text", type: "string" },
72
+ nonce: { required: false, control: "text", type: "string" },
67
73
  spellCheck: { required: false, control: "boolean", type: "boolean" },
68
74
  tabIndex: { required: false, control: "number", type: "number" },
69
75
  translate: {
@@ -75,11 +81,14 @@ export const props: Record<string, PropMeta> = {
75
81
  radioGroup: { required: false, control: "text", type: "string" },
76
82
  role: { required: false, control: "text", type: "string" },
77
83
  about: { required: false, control: "text", type: "string" },
84
+ content: { required: false, control: "text", type: "string" },
78
85
  datatype: { required: false, control: "text", type: "string" },
79
86
  inlist: { required: false, control: "text", type: "string" },
80
87
  prefix: { required: false, control: "text", type: "string" },
81
88
  property: { required: false, control: "text", type: "string" },
89
+ rel: { required: false, control: "text", type: "string" },
82
90
  resource: { required: false, control: "text", type: "string" },
91
+ rev: { required: false, control: "text", type: "string" },
83
92
  typeof: { required: false, control: "text", type: "string" },
84
93
  vocab: { required: false, control: "text", type: "string" },
85
94
  autoCapitalize: { required: false, control: "text", type: "string" },
@@ -17,6 +17,7 @@ export const props: Record<string, PropMeta> = {
17
17
  type: "boolean",
18
18
  },
19
19
  accessKey: { required: false, control: "text", type: "string" },
20
+ autoFocus: { required: false, control: "boolean", type: "boolean" },
20
21
  className: { required: false, control: "text", type: "string" },
21
22
  contentEditable: { required: false, control: "text", type: "string" },
22
23
  contextMenu: { required: false, control: "text", type: "string" },
@@ -25,6 +26,7 @@ export const props: Record<string, PropMeta> = {
25
26
  hidden: { required: false, control: "boolean", type: "boolean" },
26
27
  id: { required: false, control: "text", type: "string" },
27
28
  lang: { required: false, control: "text", type: "string" },
29
+ nonce: { required: false, control: "text", type: "string" },
28
30
  placeholder: { required: false, control: "text", type: "string" },
29
31
  spellCheck: { required: false, control: "boolean", type: "boolean" },
30
32
  tabIndex: { required: false, control: "number", type: "number" },
@@ -37,11 +39,14 @@ export const props: Record<string, PropMeta> = {
37
39
  radioGroup: { required: false, control: "text", type: "string" },
38
40
  role: { required: false, control: "text", type: "string" },
39
41
  about: { required: false, control: "text", type: "string" },
42
+ content: { required: false, control: "text", type: "string" },
40
43
  datatype: { required: false, control: "text", type: "string" },
41
44
  inlist: { required: false, control: "text", type: "string" },
42
45
  prefix: { required: false, control: "text", type: "string" },
43
46
  property: { required: false, control: "text", type: "string" },
47
+ rel: { required: false, control: "text", type: "string" },
44
48
  resource: { required: false, control: "text", type: "string" },
49
+ rev: { required: false, control: "text", type: "string" },
45
50
  typeof: { required: false, control: "text", type: "string" },
46
51
  vocab: { required: false, control: "text", type: "string" },
47
52
  autoCapitalize: { required: false, control: "text", type: "string" },
@@ -15,7 +15,6 @@ export const props: Record<string, PropMeta> = {
15
15
  hrefLang: { required: false, control: "text", type: "string" },
16
16
  media: { required: false, control: "text", type: "string" },
17
17
  ping: { required: false, control: "text", type: "string" },
18
- rel: { required: false, control: "text", type: "string" },
19
18
  type: { required: false, control: "text", type: "string" },
20
19
  referrerPolicy: {
21
20
  required: false,
@@ -46,6 +45,7 @@ export const props: Record<string, PropMeta> = {
46
45
  type: "boolean",
47
46
  },
48
47
  accessKey: { required: false, control: "text", type: "string" },
48
+ autoFocus: { required: false, control: "boolean", type: "boolean" },
49
49
  className: { required: false, control: "text", type: "string" },
50
50
  contentEditable: { required: false, control: "text", type: "string" },
51
51
  contextMenu: { required: false, control: "text", type: "string" },
@@ -54,6 +54,7 @@ export const props: Record<string, PropMeta> = {
54
54
  hidden: { required: false, control: "boolean", type: "boolean" },
55
55
  id: { required: false, control: "text", type: "string" },
56
56
  lang: { required: false, control: "text", type: "string" },
57
+ nonce: { required: false, control: "text", type: "string" },
57
58
  placeholder: { required: false, control: "text", type: "string" },
58
59
  spellCheck: { required: false, control: "boolean", type: "boolean" },
59
60
  tabIndex: { required: false, control: "number", type: "number" },
@@ -66,11 +67,14 @@ export const props: Record<string, PropMeta> = {
66
67
  radioGroup: { required: false, control: "text", type: "string" },
67
68
  role: { required: false, control: "text", type: "string" },
68
69
  about: { required: false, control: "text", type: "string" },
70
+ content: { required: false, control: "text", type: "string" },
69
71
  datatype: { required: false, control: "text", type: "string" },
70
72
  inlist: { required: false, control: "text", type: "string" },
71
73
  prefix: { required: false, control: "text", type: "string" },
72
74
  property: { required: false, control: "text", type: "string" },
75
+ rel: { required: false, control: "text", type: "string" },
73
76
  resource: { required: false, control: "text", type: "string" },
77
+ rev: { required: false, control: "text", type: "string" },
74
78
  typeof: { required: false, control: "text", type: "string" },
75
79
  vocab: { required: false, control: "text", type: "string" },
76
80
  autoCapitalize: { required: false, control: "text", type: "string" },
@@ -15,7 +15,6 @@ export const props: Record<string, PropMeta> = {
15
15
  hrefLang: { required: false, control: "text", type: "string" },
16
16
  media: { required: false, control: "text", type: "string" },
17
17
  ping: { required: false, control: "text", type: "string" },
18
- rel: { required: false, control: "text", type: "string" },
19
18
  type: { required: false, control: "text", type: "string" },
20
19
  referrerPolicy: {
21
20
  required: false,
@@ -46,6 +45,7 @@ export const props: Record<string, PropMeta> = {
46
45
  type: "boolean",
47
46
  },
48
47
  accessKey: { required: false, control: "text", type: "string" },
48
+ autoFocus: { required: false, control: "boolean", type: "boolean" },
49
49
  className: { required: false, control: "text", type: "string" },
50
50
  contentEditable: { required: false, control: "text", type: "string" },
51
51
  contextMenu: { required: false, control: "text", type: "string" },
@@ -54,6 +54,7 @@ export const props: Record<string, PropMeta> = {
54
54
  hidden: { required: false, control: "boolean", type: "boolean" },
55
55
  id: { required: false, control: "text", type: "string" },
56
56
  lang: { required: false, control: "text", type: "string" },
57
+ nonce: { required: false, control: "text", type: "string" },
57
58
  placeholder: { required: false, control: "text", type: "string" },
58
59
  spellCheck: { required: false, control: "boolean", type: "boolean" },
59
60
  tabIndex: { required: false, control: "number", type: "number" },
@@ -66,11 +67,14 @@ export const props: Record<string, PropMeta> = {
66
67
  radioGroup: { required: false, control: "text", type: "string" },
67
68
  role: { required: false, control: "text", type: "string" },
68
69
  about: { required: false, control: "text", type: "string" },
70
+ content: { required: false, control: "text", type: "string" },
69
71
  datatype: { required: false, control: "text", type: "string" },
70
72
  inlist: { required: false, control: "text", type: "string" },
71
73
  prefix: { required: false, control: "text", type: "string" },
72
74
  property: { required: false, control: "text", type: "string" },
75
+ rel: { required: false, control: "text", type: "string" },
73
76
  resource: { required: false, control: "text", type: "string" },
77
+ rev: { required: false, control: "text", type: "string" },
74
78
  typeof: { required: false, control: "text", type: "string" },
75
79
  vocab: { required: false, control: "text", type: "string" },
76
80
  autoCapitalize: { required: false, control: "text", type: "string" },
@@ -18,6 +18,7 @@ export const props: Record<string, PropMeta> = {
18
18
  type: "boolean",
19
19
  },
20
20
  accessKey: { required: false, control: "text", type: "string" },
21
+ autoFocus: { required: false, control: "boolean", type: "boolean" },
21
22
  className: { required: false, control: "text", type: "string" },
22
23
  contentEditable: { required: false, control: "text", type: "string" },
23
24
  contextMenu: { required: false, control: "text", type: "string" },
@@ -26,6 +27,7 @@ export const props: Record<string, PropMeta> = {
26
27
  hidden: { required: false, control: "boolean", type: "boolean" },
27
28
  id: { required: false, control: "text", type: "string" },
28
29
  lang: { required: false, control: "text", type: "string" },
30
+ nonce: { required: false, control: "text", type: "string" },
29
31
  placeholder: { required: false, control: "text", type: "string" },
30
32
  spellCheck: { required: false, control: "boolean", type: "boolean" },
31
33
  tabIndex: { required: false, control: "number", type: "number" },
@@ -38,11 +40,14 @@ export const props: Record<string, PropMeta> = {
38
40
  radioGroup: { required: false, control: "text", type: "string" },
39
41
  role: { required: false, control: "text", type: "string" },
40
42
  about: { required: false, control: "text", type: "string" },
43
+ content: { required: false, control: "text", type: "string" },
41
44
  datatype: { required: false, control: "text", type: "string" },
42
45
  inlist: { required: false, control: "text", type: "string" },
43
46
  prefix: { required: false, control: "text", type: "string" },
44
47
  property: { required: false, control: "text", type: "string" },
48
+ rel: { required: false, control: "text", type: "string" },
45
49
  resource: { required: false, control: "text", type: "string" },
50
+ rev: { required: false, control: "text", type: "string" },
46
51
  typeof: { required: false, control: "text", type: "string" },
47
52
  vocab: { required: false, control: "text", type: "string" },
48
53
  autoCapitalize: { required: false, control: "text", type: "string" },
@@ -17,6 +17,7 @@ export const props: Record<string, PropMeta> = {
17
17
  type: "boolean",
18
18
  },
19
19
  accessKey: { required: false, control: "text", type: "string" },
20
+ autoFocus: { required: false, control: "boolean", type: "boolean" },
20
21
  className: { required: false, control: "text", type: "string" },
21
22
  contentEditable: { required: false, control: "text", type: "string" },
22
23
  contextMenu: { required: false, control: "text", type: "string" },
@@ -25,6 +26,7 @@ export const props: Record<string, PropMeta> = {
25
26
  hidden: { required: false, control: "boolean", type: "boolean" },
26
27
  id: { required: false, control: "text", type: "string" },
27
28
  lang: { required: false, control: "text", type: "string" },
29
+ nonce: { required: false, control: "text", type: "string" },
28
30
  placeholder: { required: false, control: "text", type: "string" },
29
31
  spellCheck: { required: false, control: "boolean", type: "boolean" },
30
32
  tabIndex: { required: false, control: "number", type: "number" },
@@ -37,11 +39,14 @@ export const props: Record<string, PropMeta> = {
37
39
  radioGroup: { required: false, control: "text", type: "string" },
38
40
  role: { required: false, control: "text", type: "string" },
39
41
  about: { required: false, control: "text", type: "string" },
42
+ content: { required: false, control: "text", type: "string" },
40
43
  datatype: { required: false, control: "text", type: "string" },
41
44
  inlist: { required: false, control: "text", type: "string" },
42
45
  prefix: { required: false, control: "text", type: "string" },
43
46
  property: { required: false, control: "text", type: "string" },
47
+ rel: { required: false, control: "text", type: "string" },
44
48
  resource: { required: false, control: "text", type: "string" },
49
+ rev: { required: false, control: "text", type: "string" },
45
50
  typeof: { required: false, control: "text", type: "string" },
46
51
  vocab: { required: false, control: "text", type: "string" },
47
52
  autoCapitalize: { required: false, control: "text", type: "string" },