@react-ui-org/react-ui 0.52.0 → 0.53.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (260) hide show
  1. package/CODEOWNERS +23 -0
  2. package/README.md +10 -7
  3. package/dist/react-ui.css +42 -0
  4. package/dist/react-ui.js +1 -0
  5. package/package.json +64 -77
  6. package/src/{lib/components → components}/Alert/Alert.jsx +1 -1
  7. package/src/{lib/components/Alert/README.mdx → components/Alert/README.md} +84 -100
  8. package/src/{lib/components → components}/Badge/Badge.jsx +1 -1
  9. package/src/{lib/components → components}/Badge/Badge.scss +1 -1
  10. package/src/components/Badge/README.md +103 -0
  11. package/src/{lib/components → components}/Button/Button.jsx +1 -1
  12. package/src/components/Button/README.md +580 -0
  13. package/src/{lib/components → components}/ButtonGroup/ButtonGroup.jsx +11 -9
  14. package/src/{lib/components/ButtonGroup/README.mdx → components/ButtonGroup/README.md} +128 -134
  15. package/src/{lib/components → components}/Card/Card.jsx +1 -1
  16. package/src/components/Card/README.md +314 -0
  17. package/src/{lib/components/CheckboxField/README.mdx → components/CheckboxField/README.md} +96 -108
  18. package/src/{lib/components/FileInputField/README.mdx → components/FileInputField/README.md} +83 -95
  19. package/src/{lib/components → components}/FormLayout/FormLayout.jsx +4 -4
  20. package/src/components/FormLayout/README.md +462 -0
  21. package/src/{lib/components → components}/Grid/Grid.jsx +2 -2
  22. package/src/components/Grid/README.md +281 -0
  23. package/src/{lib/components → components}/InputGroup/InputGroup.jsx +20 -19
  24. package/src/{lib/components → components}/InputGroup/InputGroup.scss +1 -6
  25. package/src/{lib/components/InputGroup/README.mdx → components/InputGroup/README.md} +145 -163
  26. package/src/{lib/components → components}/Modal/Modal.jsx +6 -6
  27. package/src/components/Modal/README.md +1090 -0
  28. package/src/components/Modal/_hooks/useModalScrollPrevention.js +37 -0
  29. package/src/{lib/components/Paper/README.mdx → components/Paper/README.md} +18 -30
  30. package/src/{lib/components/Popover/README.mdx → components/Popover/README.md} +102 -132
  31. package/src/{lib/components/Radio/README.mdx → components/Radio/README.md} +122 -134
  32. package/src/{lib/components → components}/Radio/Radio.jsx +11 -12
  33. package/src/{lib/components → components}/Radio/Radio.scss +1 -6
  34. package/src/components/ScrollView/README.md +503 -0
  35. package/src/{lib/components → components}/ScrollView/ScrollView.jsx +12 -3
  36. package/src/components/SelectField/README.md +681 -0
  37. package/src/components/Table/README.md +259 -0
  38. package/src/{lib/components → components}/Table/Table.jsx +4 -1
  39. package/src/{lib/components → components}/Table/_components/TableHeaderCell/TableHeaderCell.jsx +1 -1
  40. package/src/{lib/components/Tabs/README.mdx → components/Tabs/README.md} +117 -134
  41. package/src/{lib/components → components}/Tabs/TabsItem.jsx +3 -3
  42. package/src/components/Text/README.md +220 -0
  43. package/src/components/TextArea/README.md +359 -0
  44. package/src/{lib/components/TextField/README.mdx → components/TextField/README.md} +336 -342
  45. package/src/{lib/components/TextLink/README.mdx → components/TextLink/README.md} +19 -31
  46. package/src/{lib/components/Toggle/README.mdx → components/Toggle/README.md} +98 -110
  47. package/src/components/Toolbar/README.md +359 -0
  48. package/src/{lib/components → components}/Toolbar/_helpers/getAlignClassName.js +12 -4
  49. package/src/components/_helpers/getRootPriorityClassName.js +15 -0
  50. package/src/{lib/index.js → index.js} +6 -0
  51. package/src/{lib/provider → provider}/RUIProvider.jsx +17 -11
  52. package/src/{lib/styles → styles}/tools/_caret.scss +1 -1
  53. package/src/{lib/styles → styles}/tools/form-fields/_box-field-elements.scss +1 -1
  54. package/src/{lib/styles → styles}/tools/form-fields/_box-field-layout.scss +26 -14
  55. package/src/{lib/styles → styles}/tools/form-fields/_inline-field-elements.scss +2 -2
  56. package/src/{lib/theme.scss → theme.scss} +4 -3
  57. package/CONTRIBUTING.md +0 -137
  58. package/dist/lib.development.js +0 -3179
  59. package/dist/lib.js +0 -1
  60. package/public/racom.svg +0 -11
  61. package/src/lib/components/Badge/README.mdx +0 -126
  62. package/src/lib/components/Button/README.mdx +0 -581
  63. package/src/lib/components/Card/README.mdx +0 -326
  64. package/src/lib/components/FormLayout/README.mdx +0 -501
  65. package/src/lib/components/Grid/README.mdx +0 -299
  66. package/src/lib/components/Modal/README.mdx +0 -1360
  67. package/src/lib/components/Modal/_hooks/useModalScrollPrevention.js +0 -35
  68. package/src/lib/components/ScrollView/README.mdx +0 -521
  69. package/src/lib/components/SelectField/README.mdx +0 -693
  70. package/src/lib/components/Table/README.mdx +0 -275
  71. package/src/lib/components/Text/README.mdx +0 -241
  72. package/src/lib/components/TextArea/README.mdx +0 -366
  73. package/src/lib/components/Toolbar/README.mdx +0 -386
  74. package/src/{lib/components → components}/Alert/Alert.scss +0 -0
  75. package/src/{lib/components → components}/Alert/_settings.scss +0 -0
  76. package/src/{lib/components → components}/Alert/_theme.scss +0 -0
  77. package/src/{lib/components → components}/Alert/_tools.scss +0 -0
  78. package/src/{lib/components → components}/Alert/index.js +0 -0
  79. package/src/{lib/components → components}/Badge/index.js +0 -0
  80. package/src/{lib/components → components}/Button/Button.scss +0 -0
  81. package/src/{lib/components → components}/Button/_base.scss +0 -0
  82. package/src/{lib/components → components}/Button/_priorities.scss +0 -0
  83. package/src/{lib/components → components}/Button/_settings.scss +0 -0
  84. package/src/{lib/components → components}/Button/_theme.scss +0 -0
  85. package/src/{lib/components → components}/Button/_tools.scss +0 -0
  86. package/src/{lib/components → components}/Button/helpers/getRootLabelVisibilityClassName.js +0 -0
  87. package/src/{lib/components/_helpers → components/Button/helpers}/getRootPriorityClassName.js +0 -0
  88. package/src/{lib/components → components}/Button/index.js +0 -0
  89. package/src/{lib/components → components}/ButtonGroup/ButtonGroup.scss +0 -0
  90. package/src/{lib/components → components}/ButtonGroup/ButtonGroupContext.js +0 -0
  91. package/src/{lib/components → components}/ButtonGroup/_theme.scss +0 -0
  92. package/src/{lib/components → components}/ButtonGroup/index.js +0 -0
  93. package/src/{lib/components → components}/Card/Card.scss +0 -0
  94. package/src/{lib/components → components}/Card/CardBody.jsx +0 -0
  95. package/src/{lib/components → components}/Card/CardFooter.jsx +0 -0
  96. package/src/{lib/components → components}/Card/_theme.scss +0 -0
  97. package/src/{lib/components → components}/Card/_tools.scss +0 -0
  98. package/src/{lib/components → components}/Card/index.js +0 -0
  99. package/src/{lib/components → components}/CheckboxField/CheckboxField.jsx +0 -0
  100. package/src/{lib/components → components}/CheckboxField/CheckboxField.scss +0 -0
  101. package/src/{lib/components → components}/CheckboxField/index.js +0 -0
  102. package/src/{lib/components → components}/FileInputField/FileInputField.jsx +0 -0
  103. package/src/{lib/components → components}/FileInputField/FileInputField.scss +0 -0
  104. package/src/{lib/components → components}/FileInputField/index.js +0 -0
  105. package/src/{lib/components → components}/FormLayout/FormLayout.scss +0 -0
  106. package/src/{lib/components → components}/FormLayout/FormLayoutContext.js +0 -0
  107. package/src/{lib/components → components}/FormLayout/FormLayoutCustomField.jsx +4 -4
  108. package/src/{lib/components → components}/FormLayout/FormLayoutCustomField.scss +0 -0
  109. package/src/{lib/components → components}/FormLayout/_theme.scss +0 -0
  110. package/src/{lib/components → components}/FormLayout/index.js +0 -0
  111. package/src/{lib/components → components}/Grid/Grid.scss +0 -0
  112. package/src/{lib/components → components}/Grid/GridSpan.jsx +0 -0
  113. package/src/{lib/components → components}/Grid/_helpers/generateResponsiveCustomProperties.js +0 -0
  114. package/src/{lib/components → components}/Grid/_settings.scss +0 -0
  115. package/src/{lib/components → components}/Grid/_tools.scss +0 -0
  116. package/src/{lib/components → components}/Grid/index.js +0 -0
  117. package/src/{lib/components → components}/InputGroup/InputGroupContext.js +0 -0
  118. package/src/{lib/components → components}/InputGroup/_theme.scss +0 -0
  119. package/src/{lib/components → components}/InputGroup/index.js +0 -0
  120. package/src/{lib/components → components}/Modal/Modal.scss +0 -0
  121. package/src/{lib/components → components}/Modal/ModalBody.jsx +0 -0
  122. package/src/{lib/components → components}/Modal/ModalBody.scss +0 -0
  123. package/src/{lib/components → components}/Modal/ModalCloseButton.jsx +1 -1
  124. package/src/{lib/components → components}/Modal/ModalCloseButton.scss +0 -0
  125. package/src/{lib/components → components}/Modal/ModalContent.jsx +0 -0
  126. package/src/{lib/components → components}/Modal/ModalContent.scss +0 -0
  127. package/src/{lib/components → components}/Modal/ModalFooter.jsx +0 -0
  128. package/src/{lib/components → components}/Modal/ModalFooter.scss +0 -0
  129. package/src/{lib/components → components}/Modal/ModalHeader.jsx +0 -0
  130. package/src/{lib/components → components}/Modal/ModalHeader.scss +0 -0
  131. package/src/{lib/components → components}/Modal/ModalTitle.jsx +0 -0
  132. package/src/{lib/components → components}/Modal/ModalTitle.scss +0 -0
  133. package/src/{lib/components → components}/Modal/_helpers/getJustifyClassName.js +0 -0
  134. package/src/{lib/components → components}/Modal/_helpers/getPositionClassName.js +0 -0
  135. package/src/{lib/components → components}/Modal/_helpers/getScrollingClassName.js +0 -0
  136. package/src/{lib/components → components}/Modal/_helpers/getSizeClassName.js +0 -0
  137. package/src/{lib/components → components}/Modal/_hooks/useModalFocus.js +0 -0
  138. package/src/{lib/components → components}/Modal/_settings.scss +0 -0
  139. package/src/{lib/components → components}/Modal/_theme.scss +0 -0
  140. package/src/{lib/components → components}/Modal/index.js +0 -0
  141. package/src/{lib/components → components}/Paper/Paper.jsx +0 -0
  142. package/src/{lib/components → components}/Paper/Paper.scss +0 -0
  143. package/src/{lib/components → components}/Paper/_theme.scss +0 -0
  144. package/src/{lib/components → components}/Paper/index.js +0 -0
  145. package/src/{lib/components → components}/Popover/Popover.jsx +0 -0
  146. package/src/{lib/components → components}/Popover/Popover.scss +0 -0
  147. package/src/{lib/components → components}/Popover/PopoverWrapper.jsx +0 -0
  148. package/src/{lib/components → components}/Popover/PopoverWrapper.scss +0 -0
  149. package/src/{lib/components → components}/Popover/_helpers/getRootAlignmentClassName.js +0 -0
  150. package/src/{lib/components → components}/Popover/_helpers/getRootSideClassName.js +0 -0
  151. package/src/{lib/components → components}/Popover/_theme.scss +0 -0
  152. package/src/{lib/components → components}/Popover/index.js +0 -0
  153. package/src/{lib/components → components}/Radio/index.js +0 -0
  154. package/src/{lib/components → components}/ScrollView/ScrollView.scss +0 -0
  155. package/src/{lib/components → components}/ScrollView/_helpers/getElementsPositionDifference.js +0 -0
  156. package/src/{lib/components → components}/ScrollView/_hooks/useLoadResizeHook.js +0 -0
  157. package/src/{lib/components → components}/ScrollView/_hooks/useScrollPositionHook.js +0 -0
  158. package/src/{lib/components → components}/ScrollView/index.js +0 -0
  159. package/src/{lib/components → components}/SelectField/SelectField.jsx +0 -0
  160. package/src/{lib/components → components}/SelectField/SelectField.scss +0 -0
  161. package/src/{lib/components → components}/SelectField/_components/Option/Option.jsx +0 -0
  162. package/src/{lib/components → components}/SelectField/_components/Option/index.js +0 -0
  163. package/src/{lib/components → components}/SelectField/index.js +0 -0
  164. package/src/{lib/components → components}/Table/Table.scss +0 -0
  165. package/src/{lib/components → components}/Table/_components/TableBodyCell/TableBodyCell.jsx +0 -0
  166. package/src/{lib/components → components}/Table/_components/TableBodyCell/index.js +0 -0
  167. package/src/{lib/components → components}/Table/_components/TableCell.scss +0 -0
  168. package/src/{lib/components → components}/Table/_components/TableHeaderCell/index.js +0 -0
  169. package/src/{lib/components → components}/Table/_settings.scss +0 -0
  170. package/src/{lib/components → components}/Table/index.js +0 -0
  171. package/src/{lib/components → components}/Tabs/Tabs.jsx +0 -0
  172. package/src/{lib/components → components}/Tabs/Tabs.scss +0 -0
  173. package/src/{lib/components → components}/Tabs/TabsItem.scss +0 -0
  174. package/src/{lib/components → components}/Tabs/_theme.scss +0 -0
  175. package/src/{lib/components → components}/Tabs/index.js +0 -0
  176. package/src/{lib/components → components}/Text/Text.jsx +0 -0
  177. package/src/{lib/components → components}/Text/Text.scss +0 -0
  178. package/src/{lib/components → components}/Text/_helpers/getRootClampClassName.js +0 -0
  179. package/src/{lib/components → components}/Text/_helpers/getRootHyphensClassName.js +0 -0
  180. package/src/{lib/components → components}/Text/_helpers/getRootWordWrappingClassName.js +0 -0
  181. package/src/{lib/components → components}/Text/index.js +0 -0
  182. package/src/{lib/components → components}/TextArea/TextArea.jsx +0 -0
  183. package/src/{lib/components → components}/TextArea/TextArea.scss +0 -0
  184. package/src/{lib/components → components}/TextArea/index.js +0 -0
  185. package/src/{lib/components → components}/TextField/TextField.jsx +0 -0
  186. package/src/{lib/components → components}/TextField/TextField.scss +0 -0
  187. package/src/{lib/components → components}/TextField/index.js +0 -0
  188. package/src/{lib/components → components}/TextLink/TextLink.jsx +1 -1
  189. /package/src/{lib/components → components}/TextLink/TextLink.scss +0 -0
  190. /package/src/{lib/components → components}/TextLink/_theme.scss +0 -0
  191. /package/src/{lib/components → components}/TextLink/index.js +0 -0
  192. /package/src/{lib/components → components}/Toggle/Toggle.jsx +0 -0
  193. /package/src/{lib/components → components}/Toggle/Toggle.scss +0 -0
  194. /package/src/{lib/components → components}/Toggle/index.js +0 -0
  195. /package/src/{lib/components → components}/Toolbar/Toolbar.jsx +0 -0
  196. /package/src/{lib/components → components}/Toolbar/Toolbar.scss +0 -0
  197. /package/src/{lib/components → components}/Toolbar/ToolbarGroup.jsx +0 -0
  198. /package/src/{lib/components → components}/Toolbar/ToolbarItem.jsx +0 -0
  199. /package/src/{lib/components → components}/Toolbar/_helpers/getJustifyClassName.js +0 -0
  200. /package/src/{lib/components → components}/Toolbar/_theme.scss +0 -0
  201. /package/src/{lib/components → components}/Toolbar/index.js +0 -0
  202. /package/src/{lib/components → components}/_helpers/getRootColorClassName.js +0 -0
  203. /package/src/{lib/components → components}/_helpers/getRootSizeClassName.js +0 -0
  204. /package/src/{lib/components → components}/_helpers/getRootValidationStateClassName.js +0 -0
  205. /package/src/{lib/components → components}/_helpers/isChildrenEmpty.js +0 -0
  206. /package/src/{lib/components → components}/_helpers/resolveContextOrProp.js +0 -0
  207. /package/src/{lib/components → components}/_helpers/transferProps.js +0 -0
  208. /package/src/{lib/foundation.scss → foundation.scss} +0 -0
  209. /package/src/{lib/helpers.scss → helpers.scss} +0 -0
  210. /package/src/{lib/provider → provider}/RUIContext.jsx +0 -0
  211. /package/src/{lib/provider → provider}/index.js +0 -0
  212. /package/src/{lib/provider → provider}/withGlobalProps.jsx +0 -0
  213. /package/src/{lib/styles → styles}/_utilities.scss +0 -0
  214. /package/src/{lib/styles → styles}/elements/_code.scss +0 -0
  215. /package/src/{lib/styles → styles}/elements/_links.scss +0 -0
  216. /package/src/{lib/styles → styles}/elements/_lists.scss +0 -0
  217. /package/src/{lib/styles → styles}/elements/_page.scss +0 -0
  218. /package/src/{lib/styles → styles}/elements/_rulers.scss +0 -0
  219. /package/src/{lib/styles → styles}/elements/_small.scss +0 -0
  220. /package/src/{lib/styles → styles}/generic/_box-sizing.scss +0 -0
  221. /package/src/{lib/styles → styles}/generic/_focus.scss +0 -0
  222. /package/src/{lib/styles → styles}/generic/_forms.scss +0 -0
  223. /package/src/{lib/styles → styles}/generic/_reset.scss +0 -0
  224. /package/src/{lib/styles → styles}/generic/_shared.scss +0 -0
  225. /package/src/{lib/styles → styles}/helpers/_animation.scss +0 -0
  226. /package/src/{lib/styles → styles}/settings/_animations.scss +0 -0
  227. /package/src/{lib/styles → styles}/settings/_breakpoints.scss +0 -0
  228. /package/src/{lib/styles → styles}/settings/_escaped-characters.scss +0 -0
  229. /package/src/{lib/styles → styles}/settings/_form-fields.scss +0 -0
  230. /package/src/{lib/styles → styles}/settings/_forms.scss +0 -0
  231. /package/src/{lib/styles → styles}/settings/_utilities.scss +0 -0
  232. /package/src/{lib/styles → styles}/settings/_z-indexes.scss +0 -0
  233. /package/src/{lib/styles → styles}/theme/_accessibility.scss +0 -0
  234. /package/src/{lib/styles → styles}/theme/_borders.scss +0 -0
  235. /package/src/{lib/styles → styles}/theme/_code.scss +0 -0
  236. /package/src/{lib/styles → styles}/theme/_form-fields.scss +0 -0
  237. /package/src/{lib/styles → styles}/theme/_links.scss +0 -0
  238. /package/src/{lib/styles → styles}/theme/_lists.scss +0 -0
  239. /package/src/{lib/styles → styles}/theme/_page.scss +0 -0
  240. /package/src/{lib/styles → styles}/theme/_spacing.scss +0 -0
  241. /package/src/{lib/styles → styles}/theme/_typography.scss +0 -0
  242. /package/src/{lib/styles → styles}/theme-constants/_breakpoints.scss +0 -0
  243. /package/src/{lib/styles → styles}/theme-constants/_colors.scss +0 -0
  244. /package/src/{lib/styles → styles}/theme-constants/_svg.scss +0 -0
  245. /package/src/{lib/styles → styles}/tools/_accessibility.scss +0 -0
  246. /package/src/{lib/styles → styles}/tools/_breakpoint.scss +0 -0
  247. /package/src/{lib/styles → styles}/tools/_colors.scss +0 -0
  248. /package/src/{lib/styles → styles}/tools/_reset.scss +0 -0
  249. /package/src/{lib/styles → styles}/tools/_scrollbar.scss +0 -0
  250. /package/src/{lib/styles → styles}/tools/_spacing.scss +0 -0
  251. /package/src/{lib/styles → styles}/tools/_string.scss +0 -0
  252. /package/src/{lib/styles → styles}/tools/_svg.scss +0 -0
  253. /package/src/{lib/styles → styles}/tools/_transition.scss +0 -0
  254. /package/src/{lib/styles → styles}/tools/_utilities.scss +0 -0
  255. /package/src/{lib/styles → styles}/tools/form-fields/_box-field-sizes.scss +0 -0
  256. /package/src/{lib/styles → styles}/tools/form-fields/_foundation.scss +0 -0
  257. /package/src/{lib/styles → styles}/tools/form-fields/_inline-field-layout.scss +0 -0
  258. /package/src/{lib/styles → styles}/tools/form-fields/_variants.scss +0 -0
  259. /package/src/{lib/translations → translations}/en.js +0 -0
  260. /package/src/{lib/utils → utils}/classNames.js +0 -0
@@ -1,17 +1,5 @@
1
- ---
2
- name: TextLink
3
- menu: 'Actions'
4
- route: /components/text-link
5
- ---
6
-
7
1
  # TextLink
8
2
 
9
- import {
10
- Playground,
11
- Props,
12
- } from 'docz'
13
- import { TextLink } from '../..'
14
-
15
3
  TextLink allows users to follow navigation.
16
4
 
17
5
  ## Basic Usage
@@ -24,18 +12,18 @@ import { TextLink } from '@react-ui-org/react-ui';
24
12
 
25
13
  And use it:
26
14
 
27
- <Playground>
28
- <TextLink
29
- href="/contribute/guidelines"
30
- label="How can I contribute to React UI?"
31
- />
32
- </Playground>
15
+ ```docoff-react-preview
16
+ <TextLink
17
+ href="/docs/contribute/general-guidelines"
18
+ label="How can I contribute to React UI?"
19
+ />
20
+ ```
33
21
 
34
22
  See [API](#api) for all available options.
35
23
 
36
24
  ## General Guidelines
37
25
 
38
- **Avoid using links for actions**, use a [Button](/components/button)
26
+ **Avoid using links for actions**, use a [Button](/components/Button/)
39
27
  instead. This is because users expect navigation to happen when clicking on
40
28
  something what looks like a link.
41
29
 
@@ -44,17 +32,17 @@ something what looks like a link.
44
32
  It's common to use custom function for routing within SPAs. Use the
45
33
  `onClick` option to provide such function.
46
34
 
47
- <Playground>
48
- <TextLink
49
- href="/contribute/guidelines"
50
- label="This link is controlled by custom function"
51
- onClick={(event) => {
52
- event.preventDefault();
53
- alert('You will be redirected.')
54
- window.location = event.currentTarget.getAttribute('href');
55
- }}
56
- />
57
- </Playground>
35
+ ```docoff-react-preview
36
+ <TextLink
37
+ href="/docs/contribute/general-guidelines"
38
+ label="This link is controlled by custom function"
39
+ onClick={(event) => {
40
+ event.preventDefault();
41
+ alert('You will be redirected.')
42
+ window.location = event.currentTarget.getAttribute('href');
43
+ }}
44
+ />
45
+ ```
58
46
 
59
47
  ## Forwarding HTML Attributes
60
48
 
@@ -69,7 +57,7 @@ accessibility.
69
57
 
70
58
  ## API
71
59
 
72
- <Props table of={TextLink} />
60
+ <docoff-react-props src="/components/TextLink/TextLink.jsx"></docoff-react-props>
73
61
 
74
62
  ## Theming
75
63
 
@@ -1,19 +1,7 @@
1
- ---
2
- name: Toggle
3
- menu: 'Inputs'
4
- route: /components/toggle
5
- ---
6
-
7
1
  # Toggle
8
2
 
9
3
  Toggle switches things on and off.
10
4
 
11
- import {
12
- Playground,
13
- Props,
14
- } from 'docz'
15
- import { Toggle } from '../..'
16
-
17
5
  ## Basic Usage
18
6
 
19
7
  To implement the Toggle component, you need to import it first:
@@ -24,18 +12,18 @@ import { Toggle } from '@react-ui-org/react-ui';
24
12
 
25
13
  And use it:
26
14
 
27
- <Playground>
28
- {() => {
29
- const [studioQuality, setStudioQuality] = React.useState(true);
30
- return (
31
- <Toggle
32
- checked={studioQuality}
33
- label="Listen in studio quality"
34
- onChange={() => setStudioQuality(!studioQuality)}
35
- />
36
- );
37
- }}
38
- </Playground>
15
+ ```docoff-react-preview
16
+ React.createElement(() => {
17
+ const [studioQuality, setStudioQuality] = React.useState(true);
18
+ return (
19
+ <Toggle
20
+ checked={studioQuality}
21
+ label="Listen in studio quality"
22
+ onChange={() => setStudioQuality(!studioQuality)}
23
+ />
24
+ );
25
+ });
26
+ ```
39
27
 
40
28
  See [API](#api) for all available options.
41
29
 
@@ -44,7 +32,7 @@ See [API](#api) for all available options.
44
32
  - Use the toggle only for boolean (true/false) input **with an immediate effect
45
33
  (without confirmation)**. To toggle things on or off in forms that require to
46
34
  be submitted by a button, use rather the
47
- [CheckboxField](/components/checkbox-field) component.
35
+ [CheckboxField](/components/CheckboxField) component.
48
36
 
49
37
  - **Use positive wording for the toggle label,** so that it's clear what will
50
38
  happen when the user turns on the toggle. Avoid negations such as “Don't send
@@ -63,64 +51,64 @@ See [API](#api) for all available options.
63
51
  - The toggle is designed for **switching things on and off.** Don't use it to
64
52
  switch between two different things that cannot be described as on or off
65
53
  using a single label, e.g. different viewing modes. In such cases, consider
66
- using the [ButtonGroup](/components/button-group) component.
54
+ using the [ButtonGroup](/components/ButtonGroup) component.
67
55
 
68
56
  ## Help Text
69
57
 
70
58
  You may provide an additional help text to clarify what will be the impact of
71
59
  turning the toggle on or off.
72
60
 
73
- <Playground>
74
- {() => {
75
- const [studioQuality, setStudioQuality] = React.useState(true);
76
- return (
77
- <Toggle
78
- checked={studioQuality}
79
- helpText={
80
- 'Unrivaled audio quality. Uses the MQA audio format. '
81
- + 'Transfers a lot of data.'
82
- }
83
- label="Listen in studio quality"
84
- onChange={() => setStudioQuality(!studioQuality)}
85
- />
86
- );
87
- }}
88
- </Playground>
61
+ ```docoff-react-preview
62
+ React.createElement(() => {
63
+ const [studioQuality, setStudioQuality] = React.useState(true);
64
+ return (
65
+ <Toggle
66
+ checked={studioQuality}
67
+ helpText={
68
+ 'Unrivaled audio quality. Uses the MQA audio format. '
69
+ + 'Transfers a lot of data.'
70
+ }
71
+ label="Listen in studio quality"
72
+ onChange={() => setStudioQuality(!studioQuality)}
73
+ />
74
+ );
75
+ });
76
+ ```
89
77
 
90
78
  ## Label Options
91
79
 
92
80
  In some cases, it may be convenient to visually hide the toggle label. The label
93
81
  remains accessible to assistive technologies.
94
82
 
95
- <Playground>
96
- {() => {
97
- const [studioQuality, setStudioQuality] = React.useState(true);
98
- return (
99
- <Toggle
100
- checked={studioQuality}
101
- isLabelVisible={false}
102
- label="You cannot see this"
103
- onChange={() => setStudioQuality(!studioQuality)}
104
- />
105
- );
106
- }}
107
- </Playground>
83
+ ```docoff-react-preview
84
+ React.createElement(() => {
85
+ const [studioQuality, setStudioQuality] = React.useState(true);
86
+ return (
87
+ <Toggle
88
+ checked={studioQuality}
89
+ isLabelVisible={false}
90
+ label="You cannot see this"
91
+ onChange={() => setStudioQuality(!studioQuality)}
92
+ />
93
+ );
94
+ });
95
+ ```
108
96
 
109
97
  It's also possible to display the label before the input:
110
98
 
111
- <Playground>
112
- {() => {
113
- const [studioQuality, setStudioQuality] = React.useState(true);
114
- return (
115
- <Toggle
116
- checked={studioQuality}
117
- label="Listen in studio quality"
118
- labelPosition="before"
119
- onChange={() => setStudioQuality(!studioQuality)}
120
- />
121
- );
122
- }}
123
- </Playground>
99
+ ```docoff-react-preview
100
+ React.createElement(() => {
101
+ const [studioQuality, setStudioQuality] = React.useState(true);
102
+ return (
103
+ <Toggle
104
+ checked={studioQuality}
105
+ label="Listen in studio quality"
106
+ labelPosition="before"
107
+ onChange={() => setStudioQuality(!studioQuality)}
108
+ />
109
+ );
110
+ });
111
+ ```
124
112
 
125
113
  ## States
126
114
 
@@ -131,51 +119,51 @@ should always **provide a validation message for states other than valid** so
131
119
  users know what happened and what action they should take or what options they
132
120
  have.
133
121
 
134
- <Playground>
135
- {() => {
136
- const [studioQuality, setStudioQuality] = React.useState(true);
137
- return (
138
- <>
139
- <Toggle
140
- checked={studioQuality}
141
- label="Listen in studio quality"
142
- onChange={() => setStudioQuality(!studioQuality)}
143
- validationState="valid"
144
- />
145
- <Toggle
146
- checked={studioQuality}
147
- label="Listen in studio quality"
148
- onChange={() => setStudioQuality(!studioQuality)}
149
- validationState="warning"
150
- validationText={
151
- 'Looks like you are connected over cellular network. '
152
- + 'Please make sure you know what you are doing.'
153
- }
154
- />
155
- <Toggle
156
- checked={studioQuality}
157
- label="Listen in studio quality"
158
- onChange={() => setStudioQuality(!studioQuality)}
159
- validationState="invalid"
160
- validationText="Please upgrade your plan to make this option available."
161
- />
162
- </>
163
- );
164
- }}
165
- </Playground>
122
+ ```docoff-react-preview
123
+ React.createElement(() => {
124
+ const [studioQuality, setStudioQuality] = React.useState(true);
125
+ return (
126
+ <>
127
+ <Toggle
128
+ checked={studioQuality}
129
+ label="Listen in studio quality"
130
+ onChange={() => setStudioQuality(!studioQuality)}
131
+ validationState="valid"
132
+ />
133
+ <Toggle
134
+ checked={studioQuality}
135
+ label="Listen in studio quality"
136
+ onChange={() => setStudioQuality(!studioQuality)}
137
+ validationState="warning"
138
+ validationText={
139
+ 'Looks like you are connected over cellular network. '
140
+ + 'Please make sure you know what you are doing.'
141
+ }
142
+ />
143
+ <Toggle
144
+ checked={studioQuality}
145
+ label="Listen in studio quality"
146
+ onChange={() => setStudioQuality(!studioQuality)}
147
+ validationState="invalid"
148
+ validationText="Please upgrade your plan to make this option available."
149
+ />
150
+ </>
151
+ );
152
+ });
153
+ ```
166
154
 
167
155
  ### Disabled State
168
156
 
169
157
  Disabled state makes the input unavailable.
170
158
 
171
- <Playground>
172
- <Toggle label="Disabled toggle" disabled />
173
- <Toggle
174
- label="Disabled toggle, checked"
175
- disabled
176
- checked
177
- />
178
- </Playground>
159
+ ```docoff-react-preview
160
+ <Toggle label="Disabled toggle" disabled />
161
+ <Toggle
162
+ label="Disabled toggle, checked"
163
+ disabled
164
+ checked
165
+ />
166
+ ```
179
167
 
180
168
  ## Forwarding HTML Attributes
181
169
 
@@ -194,11 +182,11 @@ If you provide [ref], it is forwarded to the native HTML `<input>` element.
194
182
 
195
183
  ## API
196
184
 
197
- <Props table of={Toggle} />
185
+ <docoff-react-props src="/components/Toggle/Toggle.jsx"></docoff-react-props>
198
186
 
199
187
  ## Theming
200
188
 
201
- Head to [Forms Theming](/customize/theming/forms) to see shared form theming
189
+ Head to [Forms Theming](/docs/customize/theming/forms) to see shared form theming
202
190
  options. On top of that, the following options are available for Toggle.
203
191
 
204
192
  | Custom Property | Description |