@ilo-org/react 0.0.1

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 (348) hide show
  1. package/.eslintrc.js +36 -0
  2. package/.storybook/main.js +28 -0
  3. package/.storybook/manager-head.html +7 -0
  4. package/.storybook/manager.js +6 -0
  5. package/.storybook/preview.tsx +33 -0
  6. package/.storybook/styles.scss +1 -0
  7. package/.storybook/theme.js +11 -0
  8. package/.turbo/turbo-build.log +513 -0
  9. package/.turbo/turbo-check.log +5 -0
  10. package/.turbo/turbo-test.log +1676 -0
  11. package/=6.4.0 +115 -0
  12. package/=7.21.4 +21 -0
  13. package/LICENSE +201 -0
  14. package/README.md +11 -0
  15. package/lib/index.esm.js +24 -0
  16. package/lib/index.esm.js.map +1 -0
  17. package/lib/index.js +24 -0
  18. package/lib/index.js.map +1 -0
  19. package/package.json +115 -0
  20. package/rollup.config.js +40 -0
  21. package/src/__tests__/Accordion.test.tsx +52 -0
  22. package/src/__tests__/Button.test.tsx +60 -0
  23. package/src/__tests__/Callout.test.tsx +41 -0
  24. package/src/__tests__/ContextMenu.test.tsx +19 -0
  25. package/src/__tests__/Dropdown.test.tsx +38 -0
  26. package/src/__tests__/Form.test.tsx +34 -0
  27. package/src/__tests__/Heading.test.tsx +51 -0
  28. package/src/__tests__/Hero.test.tsx +22 -0
  29. package/src/__tests__/Image.test.tsx +21 -0
  30. package/src/__tests__/LinkList.test.tsx +17 -0
  31. package/src/__tests__/List.test.tsx +37 -0
  32. package/src/__tests__/Loading.text.tsx +33 -0
  33. package/src/__tests__/Notification.test.tsx +39 -0
  34. package/src/__tests__/Pagination.test.tsx +58 -0
  35. package/src/__tests__/Profile.test.tsx +48 -0
  36. package/src/__tests__/ReadMore.test.tsx +42 -0
  37. package/src/__tests__/RichText.test.tsx +16 -0
  38. package/src/__tests__/SearchField.test.tsx +35 -0
  39. package/src/__tests__/TableOfContents.test.tsx +12 -0
  40. package/src/__tests__/Tag.test.tsx +10 -0
  41. package/src/components/Accordion/Accordion.args.ts +19 -0
  42. package/src/components/Accordion/Accordion.props.d.ts +39 -0
  43. package/src/components/Accordion/Accordion.tsx +70 -0
  44. package/src/components/Accordion/AccordionButton.props.d.ts +13 -0
  45. package/src/components/Accordion/AccordionButton.tsx +60 -0
  46. package/src/components/Accordion/AccordionItem.props.d.ts +25 -0
  47. package/src/components/Accordion/AccordionItem.tsx +33 -0
  48. package/src/components/Accordion/AccordionPanel.props.d.ts +20 -0
  49. package/src/components/Accordion/AccordionPanel.tsx +47 -0
  50. package/src/components/Accordion/index.ts +4 -0
  51. package/src/components/Button/Button.args.ts +353 -0
  52. package/src/components/Button/Button.props.d.ts +74 -0
  53. package/src/components/Button/Button.tsx +67 -0
  54. package/src/components/Button/index.ts +1 -0
  55. package/src/components/Callout/Callout.args.ts +64 -0
  56. package/src/components/Callout/Callout.props.d.ts +61 -0
  57. package/src/components/Callout/Callout.tsx +80 -0
  58. package/src/components/Callout/index.ts +1 -0
  59. package/src/components/Checkbox/Checkbox.args.ts +22 -0
  60. package/src/components/Checkbox/Checkbox.props.d.ts +61 -0
  61. package/src/components/Checkbox/Checkbox.tsx +92 -0
  62. package/src/components/Checkbox/index.ts +1 -0
  63. package/src/components/ChoiceGroup/ChoiceGroup.args.ts +90 -0
  64. package/src/components/ChoiceGroup/ChoiceGroup.props.d.ts +57 -0
  65. package/src/components/ChoiceGroup/ChoiceGroup.tsx +42 -0
  66. package/src/components/ChoiceGroup/index.ts +1 -0
  67. package/src/components/Collapse/Collapse.props.d.ts +92 -0
  68. package/src/components/Collapse/Collapse.tsx +130 -0
  69. package/src/components/Collapse/index.ts +1 -0
  70. package/src/components/ContextMenu/ContextMenu.args.ts +62 -0
  71. package/src/components/ContextMenu/ContextMenu.props.d.ts +28 -0
  72. package/src/components/ContextMenu/ContextMenu.tsx +32 -0
  73. package/src/components/ContextMenu/index.ts +1 -0
  74. package/src/components/Credit/Credit.args.ts +14 -0
  75. package/src/components/Credit/Credit.props.d.ts +11 -0
  76. package/src/components/Credit/Credit.tsx +41 -0
  77. package/src/components/Credit/index.ts +1 -0
  78. package/src/components/DatePicker/DatePicker.args.ts +82 -0
  79. package/src/components/DatePicker/DatePicker.props.d.ts +68 -0
  80. package/src/components/DatePicker/DatePicker.tsx +119 -0
  81. package/src/components/DatePicker/index.ts +1 -0
  82. package/src/components/Dropdown/Dropdown.args.ts +220 -0
  83. package/src/components/Dropdown/Dropdown.props.d.ts +84 -0
  84. package/src/components/Dropdown/Dropdown.tsx +82 -0
  85. package/src/components/Dropdown/index.ts +1 -0
  86. package/src/components/Empty/Empty.args.ts +14 -0
  87. package/src/components/Empty/Empty.props.d.ts +6 -0
  88. package/src/components/Empty/Empty.tsx +16 -0
  89. package/src/components/Empty/index.ts +1 -0
  90. package/src/components/Fieldset/Fieldset.props.d.ts +36 -0
  91. package/src/components/Fieldset/Fieldset.tsx +90 -0
  92. package/src/components/Fieldset/index.ts +1 -0
  93. package/src/components/FileUpload/FileUpload.args.ts +62 -0
  94. package/src/components/FileUpload/FileUpload.props.d.ts +63 -0
  95. package/src/components/FileUpload/FileUpload.tsx +82 -0
  96. package/src/components/FileUpload/index.ts +1 -0
  97. package/src/components/Form/Form.args.ts +265 -0
  98. package/src/components/Form/Form.props.d.ts +84 -0
  99. package/src/components/Form/Form.tsx +83 -0
  100. package/src/components/Form/index.ts +1 -0
  101. package/src/components/FormElement/FormElement.props.d.ts +53 -0
  102. package/src/components/FormElement/FormElement.tsx +26 -0
  103. package/src/components/FormElement/index.ts +1 -0
  104. package/src/components/FormGroup/FormGroup.args.ts +84 -0
  105. package/src/components/FormGroup/FormGroup.props.d.ts +71 -0
  106. package/src/components/FormGroup/FormGroup.tsx +73 -0
  107. package/src/components/FormGroup/index.ts +1 -0
  108. package/src/components/GlobalProvider/GlobalProvider.props.d.ts +15 -0
  109. package/src/components/GlobalProvider/GlobalProvider.tsx +27 -0
  110. package/src/components/GlobalProvider/index.js +4 -0
  111. package/src/components/Heading/Heading.args.ts +46 -0
  112. package/src/components/Heading/Heading.props.d.ts +24 -0
  113. package/src/components/Heading/Heading.tsx +28 -0
  114. package/src/components/Heading/index.ts +1 -0
  115. package/src/components/Hero/Hero.args.ts +296 -0
  116. package/src/components/Hero/Hero.props.d.ts +29 -0
  117. package/src/components/Hero/Hero.tsx +35 -0
  118. package/src/components/Hero/HeroCard.props.d.ts +65 -0
  119. package/src/components/Hero/HeroCard.tsx +53 -0
  120. package/src/components/Hero/index.ts +2 -0
  121. package/src/components/Icon/Icon.args.ts +15 -0
  122. package/src/components/Icon/Icon.props.d.ts +16 -0
  123. package/src/components/Icon/Icon.tsx +25 -0
  124. package/src/components/Icon/index.ts +1 -0
  125. package/src/components/Image/Image.args.ts +35 -0
  126. package/src/components/Image/Image.props.d.ts +38 -0
  127. package/src/components/Image/Image.tsx +51 -0
  128. package/src/components/Image/index.ts +1 -0
  129. package/src/components/Input/Input.args.ts +139 -0
  130. package/src/components/Input/Input.props.d.ts +63 -0
  131. package/src/components/Input/Input.tsx +63 -0
  132. package/src/components/Input/index.ts +1 -0
  133. package/src/components/Link/Link.args.ts +36 -0
  134. package/src/components/Link/Link.props.d.ts +34 -0
  135. package/src/components/Link/Link.tsx +49 -0
  136. package/src/components/Link/index.ts +1 -0
  137. package/src/components/LinkList/LinkList.args.ts +193 -0
  138. package/src/components/LinkList/LinkList.props.d.ts +52 -0
  139. package/src/components/LinkList/LinkList.tsx +59 -0
  140. package/src/components/LinkList/index.ts +1 -0
  141. package/src/components/List/List.args.ts +38 -0
  142. package/src/components/List/List.props.d.ts +36 -0
  143. package/src/components/List/List.tsx +47 -0
  144. package/src/components/List/ListItem.props.d.ts +25 -0
  145. package/src/components/List/ListItem.tsx +23 -0
  146. package/src/components/List/index.ts +2 -0
  147. package/src/components/Loading/Loading.args.ts +55 -0
  148. package/src/components/Loading/Loading.props.d.ts +23 -0
  149. package/src/components/Loading/Loading.tsx +24 -0
  150. package/src/components/Loading/index.ts +1 -0
  151. package/src/components/Notification/Notification.args.ts +157 -0
  152. package/src/components/Notification/Notification.props.d.ts +67 -0
  153. package/src/components/Notification/Notification.tsx +78 -0
  154. package/src/components/Notification/index.ts +1 -0
  155. package/src/components/NumberPicker/NumberPicker.args.ts +58 -0
  156. package/src/components/NumberPicker/NumberPicker.props.d.ts +56 -0
  157. package/src/components/NumberPicker/NumberPicker.tsx +65 -0
  158. package/src/components/NumberPicker/index.ts +1 -0
  159. package/src/components/Pagination/Pagination.args.ts +43 -0
  160. package/src/components/Pagination/Pagination.props.d.ts +66 -0
  161. package/src/components/Pagination/Pagination.tsx +114 -0
  162. package/src/components/Pagination/index.ts +1 -0
  163. package/src/components/Profile/Profile.args.ts +58 -0
  164. package/src/components/Profile/Profile.props.d.ts +43 -0
  165. package/src/components/Profile/Profile.tsx +43 -0
  166. package/src/components/Profile/index.ts +1 -0
  167. package/src/components/Radio/Radio.args.ts +22 -0
  168. package/src/components/Radio/Radio.props.d.ts +61 -0
  169. package/src/components/Radio/Radio.tsx +64 -0
  170. package/src/components/Radio/index.ts +1 -0
  171. package/src/components/ReadMore/ReadMore.props.d.ts +38 -0
  172. package/src/components/ReadMore/ReadMore.tsx +55 -0
  173. package/src/components/ReadMore/index.ts +1 -0
  174. package/src/components/ReadMore/readMore.args.ts +35 -0
  175. package/src/components/RichText/RichText.props.d.ts +11 -0
  176. package/src/components/RichText/RichText.tsx +22 -0
  177. package/src/components/RichText/index.ts +1 -0
  178. package/src/components/RichText/richText.args.ts +15 -0
  179. package/src/components/SearchField/SearchField.args.ts +73 -0
  180. package/src/components/SearchField/SearchField.props.d.ts +35 -0
  181. package/src/components/SearchField/SearchField.tsx +55 -0
  182. package/src/components/SearchField/index.ts +1 -0
  183. package/src/components/TableOfContents/TableOfContents.args.ts +35 -0
  184. package/src/components/TableOfContents/TableOfContents.props.d.ts +23 -0
  185. package/src/components/TableOfContents/TableOfContents.tsx +32 -0
  186. package/src/components/TableOfContents/index.ts +1 -0
  187. package/src/components/Tag/Tag.args.ts +15 -0
  188. package/src/components/Tag/Tag.props.d.ts +34 -0
  189. package/src/components/Tag/Tag.tsx +99 -0
  190. package/src/components/Tag/TagSet.args.ts +39 -0
  191. package/src/components/Tag/TagSet.props.d.ts +36 -0
  192. package/src/components/Tag/TagSet.tsx +71 -0
  193. package/src/components/Tag/index.ts +2 -0
  194. package/src/components/Textarea/Textarea.args.ts +62 -0
  195. package/src/components/Textarea/Textarea.props.d.ts +71 -0
  196. package/src/components/Textarea/Textarea.tsx +67 -0
  197. package/src/components/Textarea/index.ts +1 -0
  198. package/src/components/Tooltip/Tooltip.args.ts +43 -0
  199. package/src/components/Tooltip/Tooltip.props.d.ts +48 -0
  200. package/src/components/Tooltip/Tooltip.tsx +139 -0
  201. package/src/components/Tooltip/index.ts +1 -0
  202. package/src/components/Video/Video.args.ts +81 -0
  203. package/src/components/Video/Video.props.d.ts +82 -0
  204. package/src/components/Video/Video.tsx +29 -0
  205. package/src/components/Video/VideoPlayer.props.d.ts +80 -0
  206. package/src/components/Video/VideoPlayer.tsx +285 -0
  207. package/src/components/Video/index.ts +1 -0
  208. package/src/hooks/useGlobalSettings.ts +13 -0
  209. package/src/hooks/useVideoPlayer.ts +85 -0
  210. package/src/index.ts +19 -0
  211. package/src/public/favicon.ico +0 -0
  212. package/src/public/index.html +43 -0
  213. package/src/public/logo192.png +0 -0
  214. package/src/public/logo512.png +0 -0
  215. package/src/public/manifest.json +25 -0
  216. package/src/public/robots.txt +3 -0
  217. package/src/setup.ts +6 -0
  218. package/src/stories/Accordion.stories.tsx +94 -0
  219. package/src/stories/Button.stories.tsx +491 -0
  220. package/src/stories/Callout.stories.tsx +154 -0
  221. package/src/stories/ContextMenu.stories.tsx +72 -0
  222. package/src/stories/Dropdown.stories.tsx +85 -0
  223. package/src/stories/Empty.stories.tsx +48 -0
  224. package/src/stories/Form.stories.tsx +67 -0
  225. package/src/stories/Heading.stories.tsx +191 -0
  226. package/src/stories/Hero.stories.tsx +129 -0
  227. package/src/stories/Image.stories.tsx +71 -0
  228. package/src/stories/Introduction.stories.mdx +12 -0
  229. package/src/stories/Link.stories.tsx +99 -0
  230. package/src/stories/LinkList.stories.tsx +68 -0
  231. package/src/stories/List.stories.tsx +246 -0
  232. package/src/stories/Loading.stories.tsx +103 -0
  233. package/src/stories/Notification.stories.tsx +154 -0
  234. package/src/stories/Pagination.stories.tsx +63 -0
  235. package/src/stories/Profile.stories.tsx +84 -0
  236. package/src/stories/ReadMore.stories.tsx +80 -0
  237. package/src/stories/RichText.stories.tsx +59 -0
  238. package/src/stories/SearchField.stories.tsx +87 -0
  239. package/src/stories/TableOfContents.stories.tsx +50 -0
  240. package/src/stories/Tag.stories.tsx +194 -0
  241. package/src/stories/Tooltip.stories.tsx +83 -0
  242. package/src/stories/Video.stories.tsx +69 -0
  243. package/src/stories/assets/code-brackets.svg +1 -0
  244. package/src/stories/assets/colors.svg +1 -0
  245. package/src/stories/assets/comments.svg +1 -0
  246. package/src/stories/assets/direction.svg +1 -0
  247. package/src/stories/assets/flow.svg +1 -0
  248. package/src/stories/assets/plugin.svg +1 -0
  249. package/src/stories/assets/repo.svg +1 -0
  250. package/src/stories/assets/stackalt.svg +1 -0
  251. package/src/types/index.ts +49 -0
  252. package/src/types/temp.d.ts +9 -0
  253. package/src/utils/checkArrayDuplicates.ts +3 -0
  254. package/src/utils/createChainedFunction.ts +31 -0
  255. package/src/utils/getDefaultDimensionValue.ts +28 -0
  256. package/src/utils/hoursMinutesSeconds.ts +8 -0
  257. package/src/utils/transitionEndListener.ts +29 -0
  258. package/src/utils/triggerBrowserReflow.ts +4 -0
  259. package/storybook-static/0.f9bb25299a048d2bb825.manager.bundle.js +2 -0
  260. package/storybook-static/0.f9bb25299a048d2bb825.manager.bundle.js.LICENSE.txt +8 -0
  261. package/storybook-static/01daf23af61cc99e9d75.woff2 +0 -0
  262. package/storybook-static/06a2da828c8b6497ba7a.woff +0 -0
  263. package/storybook-static/0fa24adac56865ac7e5f.ttf +0 -0
  264. package/storybook-static/12ec02e7e66abaf38243.eot +0 -0
  265. package/storybook-static/164.8f6e5926.iframe.bundle.js +2 -0
  266. package/storybook-static/164.8f6e5926.iframe.bundle.js.LICENSE.txt +8 -0
  267. package/storybook-static/181.1d6d475b.iframe.bundle.js +1 -0
  268. package/storybook-static/1cc3364249fd0db446ad.ttf +0 -0
  269. package/storybook-static/1dbed2ef5cef8fcb4cbe.ttf +0 -0
  270. package/storybook-static/1fa1c16a4a45d13f0df8.ttf +0 -0
  271. package/storybook-static/23cdaa8575b5e003dcde.eot +0 -0
  272. package/storybook-static/248db78ddf1e3568728d.woff +0 -0
  273. package/storybook-static/27d33755a2b827666dc5.woff +0 -0
  274. package/storybook-static/29.8e0bc9a8.iframe.bundle.js +2 -0
  275. package/storybook-static/29.8e0bc9a8.iframe.bundle.js.LICENSE.txt +102 -0
  276. package/storybook-static/2ac1a95228cf06e17040.woff2 +0 -0
  277. package/storybook-static/337.b8defe66.iframe.bundle.js +2 -0
  278. package/storybook-static/337.b8defe66.iframe.bundle.js.LICENSE.txt +11 -0
  279. package/storybook-static/3579203659b1428de036.eot +0 -0
  280. package/storybook-static/36229f80a738c199462d.woff2 +0 -0
  281. package/storybook-static/409a9c398a28ee4d74ff.eot +0 -0
  282. package/storybook-static/431.8ab7c276.iframe.bundle.js +1 -0
  283. package/storybook-static/431.b32fed6077acc140df7c.manager.bundle.js +1 -0
  284. package/storybook-static/4bf5fc6f93ba10519c82.eot +0 -0
  285. package/storybook-static/51d7da3f5e58e3a24a84.woff +0 -0
  286. package/storybook-static/697.1f42ad69d33c2733c631.manager.bundle.js +1 -0
  287. package/storybook-static/697.9e56beef.iframe.bundle.js +1 -0
  288. package/storybook-static/6a159f0a2005668f1f78.woff +0 -0
  289. package/storybook-static/6f781753b674130d947a.ttf +0 -0
  290. package/storybook-static/70a240717e773fe567b3.woff2 +0 -0
  291. package/storybook-static/720.f44d4e1f5203b6083ae4.manager.bundle.js +1 -0
  292. package/storybook-static/730.1240c246.iframe.bundle.js +1 -0
  293. package/storybook-static/730.7223b772132e3e068755.manager.bundle.js +1 -0
  294. package/storybook-static/73ba1c910e0f7bfc6b18.woff2 +0 -0
  295. package/storybook-static/88739612501023fa15e3.woff +0 -0
  296. package/storybook-static/8a142c29a318c432117a.woff +0 -0
  297. package/storybook-static/914.8ddb80ae2badda1468b0.manager.bundle.js +2 -0
  298. package/storybook-static/914.8ddb80ae2badda1468b0.manager.bundle.js.LICENSE.txt +94 -0
  299. package/storybook-static/978.236a5d9d5736517b960e.manager.bundle.js +2 -0
  300. package/storybook-static/978.236a5d9d5736517b960e.manager.bundle.js.LICENSE.txt +12 -0
  301. package/storybook-static/978.32e8032b.iframe.bundle.js +2 -0
  302. package/storybook-static/978.32e8032b.iframe.bundle.js.LICENSE.txt +12 -0
  303. package/storybook-static/9db5d05810cb98f2831f.ttf +0 -0
  304. package/storybook-static/9ff97e342523931a4992.eot +0 -0
  305. package/storybook-static/a40d436619020fb67db5.woff +0 -0
  306. package/storybook-static/a41d7e330757fb4b2125.woff2 +0 -0
  307. package/storybook-static/ab3494afe25b712485ed.woff +0 -0
  308. package/storybook-static/b53d0e74edc5a5fbef0a.ttf +0 -0
  309. package/storybook-static/b70a9c0ad8e8b43f5e6c.ttf +0 -0
  310. package/storybook-static/c12a83f816844ff94375.ttf +0 -0
  311. package/storybook-static/c5116d16544f932eba4b.eot +0 -0
  312. package/storybook-static/c807e115c00aaffbac11.woff2 +0 -0
  313. package/storybook-static/cadb6b94d6b0ecc3a86a.woff2 +0 -0
  314. package/storybook-static/d0cff1b064bcd84324fe.eot +0 -0
  315. package/storybook-static/d3434771ad7e9030387e.ttf +0 -0
  316. package/storybook-static/d8610c2a4fe5c177f4f6.woff +0 -0
  317. package/storybook-static/d970f426740b938f39e1.woff +0 -0
  318. package/storybook-static/d9c7eba773ff1c8df5bb.eot +0 -0
  319. package/storybook-static/dd4645bdb2f1e1a47ed7.woff2 +0 -0
  320. package/storybook-static/e0a63577ac642885f067.eot +0 -0
  321. package/storybook-static/e2625b8a1277972c9240.ttf +0 -0
  322. package/storybook-static/f469ea3aa8aacf7ad83a.eot +0 -0
  323. package/storybook-static/f632ebfa0d7b7085d542.woff2 +0 -0
  324. package/storybook-static/f93e2252d7112c3bcca5.woff2 +0 -0
  325. package/storybook-static/favicon.ico +0 -0
  326. package/storybook-static/iframe.html +348 -0
  327. package/storybook-static/index.html +59 -0
  328. package/storybook-static/main.01e6a863.iframe.bundle.js +1 -0
  329. package/storybook-static/main.dc406261155f1ebb44ce.manager.bundle.js +1 -0
  330. package/storybook-static/reactPlayerDailyMotion.469cc00f.iframe.bundle.js +1 -0
  331. package/storybook-static/reactPlayerFacebook.1423bb15.iframe.bundle.js +1 -0
  332. package/storybook-static/reactPlayerFilePlayer.e19e24a0.iframe.bundle.js +1 -0
  333. package/storybook-static/reactPlayerKaltura.d1eb0868.iframe.bundle.js +1 -0
  334. package/storybook-static/reactPlayerMixcloud.9f1b1691.iframe.bundle.js +1 -0
  335. package/storybook-static/reactPlayerPreview.9295696b.iframe.bundle.js +1 -0
  336. package/storybook-static/reactPlayerSoundCloud.d420395c.iframe.bundle.js +1 -0
  337. package/storybook-static/reactPlayerStreamable.9b655bf3.iframe.bundle.js +1 -0
  338. package/storybook-static/reactPlayerTwitch.e90e6dea.iframe.bundle.js +1 -0
  339. package/storybook-static/reactPlayerVidyard.a37ae6b3.iframe.bundle.js +1 -0
  340. package/storybook-static/reactPlayerVimeo.a7f367ee.iframe.bundle.js +1 -0
  341. package/storybook-static/reactPlayerWistia.fb351944.iframe.bundle.js +1 -0
  342. package/storybook-static/reactPlayerYouTube.3514e11a.iframe.bundle.js +1 -0
  343. package/storybook-static/runtime~main.012769eac0433a7ec083.manager.bundle.js +1 -0
  344. package/storybook-static/runtime~main.f3168ed5.iframe.bundle.js +1 -0
  345. package/storybook-static/static/css/main.3d116812.css +3 -0
  346. package/storybook-static/static/css/main.3d116812.css.map +1 -0
  347. package/tsconfig.build.json +15 -0
  348. package/tsconfig.json +7 -0
@@ -0,0 +1,85 @@
1
+ import { Story, Meta } from "@storybook/react";
2
+ import {
3
+ Title,
4
+ Subtitle,
5
+ Description,
6
+ Primary,
7
+ Stories,
8
+ Subheading,
9
+ } from "@storybook/addon-docs";
10
+ import { Dropdown } from "../components/Dropdown";
11
+ import { DropdownProps } from "../components/Dropdown/Dropdown.props";
12
+ import dropdownArgs from "../components/Dropdown/Dropdown.args";
13
+
14
+ const propsDoc = `
15
+ The Dropdown receives a prop for 'options,' which has three parameters:
16
+
17
+ | Prop | Description |
18
+ |----------|-------------|
19
+ | \`disabled\` | Is *this* option disabled? |
20
+ | \`label\` | The human-readable label for the option. |
21
+ | \`value\` | The value of the option which is what is submitted with the form. |
22
+ `;
23
+
24
+ /**
25
+ * Profile Story
26
+ *
27
+ */
28
+ export default {
29
+ title: "Components/Dropdown",
30
+ component: Dropdown,
31
+ parameters: {
32
+ componentSubtitle: "Component",
33
+ docs: {
34
+ page: () => (
35
+ <>
36
+ <Subtitle />
37
+ <Title />
38
+ <Description>
39
+ The Dropdown displays a select element with options, and is most
40
+ commonly used in forms.
41
+ </Description>
42
+ <Primary />
43
+ <Subheading>Props</Subheading>
44
+ <Description>{propsDoc}</Description>
45
+ <Stories title="Examples"></Stories>
46
+ </>
47
+ ),
48
+ },
49
+ },
50
+ } as Meta<typeof Dropdown>;
51
+
52
+ /**
53
+ * Dropdown Template
54
+ *
55
+ * create a Storybook template for this component
56
+ *
57
+ *@param (Object) args - props to be passed to the component
58
+ */
59
+ const DropdownTemplate: Story<DropdownProps> = (args) => <Dropdown {...args} />;
60
+
61
+ export const Basic = DropdownTemplate.bind({});
62
+
63
+ export const HasError = DropdownTemplate.bind({});
64
+
65
+ export const HasHelper = DropdownTemplate.bind({});
66
+
67
+ export const HasTooltip = DropdownTemplate.bind({});
68
+
69
+ export const IsDisabled = DropdownTemplate.bind({});
70
+
71
+ // enumerate the props for the variations on the Dropdown component
72
+ Basic.args = dropdownArgs.basic;
73
+ Basic.storyName = "Dropdown - Basic";
74
+
75
+ HasError.args = dropdownArgs.haserror;
76
+ HasError.storyName = "Dropdown - Has Error";
77
+
78
+ HasHelper.args = dropdownArgs.hashelper;
79
+ HasHelper.storyName = "Dropdown - Has Helper";
80
+
81
+ HasTooltip.args = dropdownArgs.hastooltip;
82
+ HasTooltip.storyName = "Dropdown - Has Tooltip";
83
+
84
+ IsDisabled.args = dropdownArgs.isdisabled;
85
+ IsDisabled.storyName = "Dropdown - Is Disabled";
@@ -0,0 +1,48 @@
1
+ import { Story, Meta } from "@storybook/react";
2
+ import {
3
+ Title,
4
+ Subtitle,
5
+ Description,
6
+ Primary,
7
+ Stories,
8
+ } from "@storybook/addon-docs";
9
+ import { Empty } from "../components/Empty";
10
+ import { EmptyProps } from "../components/Empty/Empty.props";
11
+ import emptyArgs from "../components/Empty/Empty.args";
12
+
13
+ /**
14
+ * Empty Story
15
+ *
16
+ */
17
+ export default {
18
+ title: "Components/Empty",
19
+ component: Empty,
20
+ parameters: {
21
+ componentSubtitle: "Component",
22
+ docs: {
23
+ page: () => (
24
+ <>
25
+ <Subtitle />
26
+ <Title />
27
+ <Description>
28
+ The Empty component receives no props. It it displayed on page load
29
+ as a placeholder component while data loads.
30
+ </Description>
31
+ <Primary />
32
+ <Stories title="Examples"></Stories>
33
+ </>
34
+ ),
35
+ },
36
+ },
37
+ } as Meta<typeof Empty>;
38
+
39
+ /**
40
+ * Empty Template
41
+ *
42
+ * create a Storybook template for this component
43
+ *
44
+ *@param (Object) args - props to be passed to the component
45
+ */
46
+ const EmptyTemplate: Story<EmptyProps> = () => <Empty {...emptyArgs.empty1} />;
47
+
48
+ export const Empty1 = EmptyTemplate.bind({});
@@ -0,0 +1,67 @@
1
+ import { Story, Meta } from "@storybook/react";
2
+ import {
3
+ Title,
4
+ Subtitle,
5
+ Description,
6
+ Primary,
7
+ ArgsTable,
8
+ Stories,
9
+ } from "@storybook/addon-docs";
10
+ import { Form } from "../components/Form";
11
+ import { FormProps } from "../components/Form/Form.props";
12
+ import FormArgs from "../components/Form/Form.args";
13
+
14
+ /**
15
+ * Form Story
16
+ *
17
+ */
18
+ export default {
19
+ title: "Components/Form",
20
+ component: Form,
21
+ argTypes: {},
22
+ parameters: {
23
+ componentSubtitle: "Component",
24
+ docs: {
25
+ page: () => (
26
+ <>
27
+ <Subtitle />
28
+ <Title />
29
+ <Description>The Form component displays a form.</Description>
30
+ <Primary />
31
+ <ArgsTable />
32
+ <Stories title="Examples"></Stories>
33
+ </>
34
+ ),
35
+ },
36
+ },
37
+ } as Meta<typeof Form>;
38
+
39
+ /**
40
+ * Form Template
41
+ *
42
+ * create a Storybook template for this component
43
+ *
44
+ *@param (Object) args - props to be passed to the component
45
+ */
46
+ const FormTemplate: Story<FormProps> = (args) => <Form {...args} />;
47
+
48
+ export const FormDefault = FormTemplate.bind({});
49
+
50
+ export const FormHasHelper = FormTemplate.bind({});
51
+
52
+ export const FormHasError = FormTemplate.bind({});
53
+
54
+ export const FormHasTooltip = FormTemplate.bind({});
55
+
56
+ // enumerate the props for the default search field
57
+ FormDefault.args = FormArgs.basic;
58
+ FormDefault.storyName = "Default Form";
59
+
60
+ FormHasHelper.args = FormArgs.hashelper;
61
+ FormHasHelper.storyName = "Default Form with Helper Text";
62
+
63
+ FormHasError.args = FormArgs.haserror;
64
+ FormHasError.storyName = "Default Form with errors";
65
+
66
+ FormHasTooltip.args = FormArgs.hastooltip;
67
+ FormHasTooltip.storyName = "Default Form with Tooltips";
@@ -0,0 +1,191 @@
1
+ import { Story, Meta } from "@storybook/react";
2
+ import {
3
+ Title,
4
+ Subtitle,
5
+ Description,
6
+ Primary,
7
+ ArgsTable,
8
+ Stories,
9
+ Subheading,
10
+ } from "@storybook/addon-docs";
11
+ import { Heading } from "../components/Heading";
12
+ import { HeadingProps } from "../components/Heading/Heading.props";
13
+ import headingArgs from "../components/Heading/Heading.args";
14
+
15
+ const headingDoc = `
16
+ By changing the \`level\` prop you can use different heading levels. The default heading level if not specified is \`h3\`.
17
+
18
+ | level | Description |
19
+ |----------|-------------|
20
+ | \`h1\` | heading level 1. |
21
+ | \`h2\` | heading level 2. |
22
+ | \`h3\` | heading level 3. |
23
+ | \`h4\` | heading level 4. |
24
+ | \`h5\` | heading level 5. |
25
+ | \`h6\` | heading level 6. |
26
+ `;
27
+
28
+ const typeDoc = `
29
+ By changing the \`type\` prop you can change the color of the heading. If not specified, the heading will inherit the color.
30
+
31
+ | type | Description |
32
+ |----------|-------------|
33
+ | \`default\` | Set the heading color to the base/default label theme. |
34
+ | \`actionable\` | set the heading color to the actionable label theme. |
35
+ | \`light\` | Set the heading color to the light label theme. |
36
+ `;
37
+
38
+ /**
39
+ * Accordion Story
40
+ *
41
+ */
42
+ export default {
43
+ title: "Components/Heading",
44
+ component: Heading,
45
+ argTypes: {
46
+ level: {
47
+ control: "text",
48
+ },
49
+ className: {
50
+ control: "text",
51
+ },
52
+ },
53
+ parameters: {
54
+ componentSubtitle: "Component",
55
+ docs: {
56
+ page: () => (
57
+ <>
58
+ <Subtitle />
59
+ <Title />
60
+ <Primary />
61
+ <ArgsTable />
62
+ <Subheading>Heading Level Prop</Subheading>
63
+ <Description>{headingDoc}</Description>
64
+ <Subheading>Color Prop</Subheading>
65
+ <Description>{typeDoc}</Description>
66
+ <Stories title="Examples" />
67
+ </>
68
+ ),
69
+ },
70
+ },
71
+ } as Meta<typeof Heading>;
72
+
73
+ /**
74
+ * Heading 1 Template
75
+ *
76
+ * create a Storybook template for this component
77
+ *
78
+ *@param (Object) args - props to be passed to the component
79
+ */
80
+ const Heading1Template: Story<HeadingProps> = () => (
81
+ <Heading {...headingArgs.heading1} />
82
+ );
83
+
84
+ /**
85
+ * Heading 2 Template
86
+ *
87
+ * create a Storybook template for this component
88
+ *
89
+ *@param (Object) args - props to be passed to the component
90
+ */
91
+ const Heading2Template: Story<HeadingProps> = () => (
92
+ <Heading {...headingArgs.heading2} />
93
+ );
94
+
95
+ /**
96
+ * Heading 3 Template
97
+ *
98
+ * create a Storybook template for this component
99
+ *
100
+ *@param (Object) args - props to be passed to the component
101
+ */
102
+ const Heading3Template: Story<HeadingProps> = () => (
103
+ <Heading {...headingArgs.heading3} />
104
+ );
105
+
106
+ /**
107
+ * Heading 4 Template
108
+ *
109
+ * create a Storybook template for this component
110
+ *
111
+ *@param (Object) args - props to be passed to the component
112
+ */
113
+ const Heading4Template: Story<HeadingProps> = () => (
114
+ <Heading {...headingArgs.heading4} />
115
+ );
116
+
117
+ /**
118
+ * Heading 5 Template
119
+ *
120
+ * create a Storybook template for this component
121
+ *
122
+ *@param (Object) args - props to be passed to the component
123
+ */
124
+ const Heading5Template: Story<HeadingProps> = () => (
125
+ <Heading {...headingArgs.heading5} />
126
+ );
127
+
128
+ /**
129
+ * Heading 6 Template
130
+ *
131
+ * create a Storybook template for this component
132
+ *
133
+ *@param (Object) args - props to be passed to the component
134
+ */
135
+ const Heading6Template: Story<HeadingProps> = () => (
136
+ <Heading {...headingArgs.heading6} />
137
+ );
138
+
139
+ /**
140
+ * Heading 1 Instance
141
+ *
142
+ */
143
+ export const Heading1 = Heading1Template.bind({});
144
+
145
+ /**
146
+ * Heading 2 Instance
147
+ *
148
+ */
149
+ export const Heading2 = Heading2Template.bind({});
150
+
151
+ /**
152
+ * Heading 3 Instance
153
+ *
154
+ */
155
+ export const Heading3 = Heading3Template.bind({});
156
+
157
+ /**
158
+ * Heading 4 Instance
159
+ *
160
+ */
161
+ export const Heading4 = Heading4Template.bind({});
162
+
163
+ /**
164
+ * Heading 5 Instance
165
+ *
166
+ */
167
+ export const Heading5 = Heading5Template.bind({});
168
+
169
+ /**
170
+ * Heading 6 Instance
171
+ *
172
+ */
173
+ export const Heading6 = Heading6Template.bind({});
174
+
175
+ // enumerate the props for the heading 1.
176
+ Heading1.storyName = "Heading Level 1";
177
+
178
+ // enumerate the props
179
+ Heading2.storyName = "Heading Level 2";
180
+
181
+ // enumerate the props
182
+ Heading3.storyName = "Heading Level 3";
183
+
184
+ // enumerate the props
185
+ Heading4.storyName = "Heading Level 4";
186
+
187
+ // enumerate the props
188
+ Heading5.storyName = "Heading Level 5";
189
+
190
+ // enumerate the props
191
+ Heading6.storyName = "Heading Level 6";
@@ -0,0 +1,129 @@
1
+ import { Story, Meta } from "@storybook/react";
2
+ import {
3
+ Title,
4
+ Subtitle,
5
+ Description,
6
+ Primary,
7
+ ArgsTable,
8
+ Stories,
9
+ } from "@storybook/addon-docs";
10
+ import { Hero } from "../components/Hero";
11
+ import { HeroProps } from "../components/Hero/Hero.props";
12
+ import heroArgs from "../components/Hero/Hero.args";
13
+
14
+ /**
15
+ * Hero Story
16
+ *
17
+ */
18
+ export default {
19
+ title: "Components/Hero",
20
+ component: Hero,
21
+ argTypes: {},
22
+ parameters: {
23
+ componentSubtitle: "Component",
24
+ docs: {
25
+ page: () => (
26
+ <>
27
+ <Subtitle />
28
+ <Title />
29
+ <Description>
30
+ The Hero component displays an hero, along with an hero credit and
31
+ optional caption.
32
+ </Description>
33
+ <Primary />
34
+ <ArgsTable />
35
+ <Stories title="Examples"></Stories>
36
+ </>
37
+ ),
38
+ },
39
+ },
40
+ } as Meta<typeof Hero>;
41
+
42
+ /**
43
+ * HeroTemplate
44
+ *
45
+ * create a Storybook template for this component
46
+ *
47
+ *@param (Object) args - props to be passed to the component
48
+ */
49
+ const HeroTemplate: Story<HeroProps> = (args) => <Hero {...args} />;
50
+
51
+ /**
52
+ * Home Hero Instance
53
+ *
54
+ */
55
+ export const HomeHero = HeroTemplate.bind({});
56
+
57
+ // enumerate the props for the hero only option
58
+ HomeHero.args = heroArgs.homeHero;
59
+ HomeHero.storyName = "Home Hero";
60
+
61
+ /**
62
+ * Article Hero Instance
63
+ *
64
+ */
65
+ export const ArticleHero = HeroTemplate.bind({});
66
+
67
+ // enumerate the props for the hero only option
68
+ ArticleHero.args = heroArgs.articleHero;
69
+ ArticleHero.storyName = "Article Hero";
70
+
71
+ /**
72
+ * Article Centered Hero Instance
73
+ *
74
+ */
75
+ export const ArticleCenteredHero = HeroTemplate.bind({});
76
+
77
+ // enumerate the props for the hero only option
78
+ ArticleCenteredHero.args = heroArgs.articleCenteredHero;
79
+ ArticleCenteredHero.storyName = "Article Centered Hero";
80
+
81
+ /**
82
+ * Article No-Image Hero Instance
83
+ *
84
+ */
85
+ export const ArticleNoImageHero = HeroTemplate.bind({});
86
+
87
+ // enumerate the props for the hero only option
88
+ ArticleNoImageHero.args = heroArgs.articleNoImageHero;
89
+ ArticleNoImageHero.storyName = "Article No Image Hero";
90
+
91
+ /**
92
+ * Graphic Hero Instance
93
+ *
94
+ */
95
+ export const GraphicHero = HeroTemplate.bind({});
96
+
97
+ // enumerate the props for the hero only option
98
+ GraphicHero.args = heroArgs.graphicHero;
99
+ GraphicHero.storyName = "Graphic Hero";
100
+
101
+ /**
102
+ * Portal Hero Instance
103
+ *
104
+ */
105
+ export const PortalHero = HeroTemplate.bind({});
106
+
107
+ // enumerate the props for the hero only option
108
+ PortalHero.args = heroArgs.portalHero;
109
+ PortalHero.storyName = "Portal Hero";
110
+
111
+ /**
112
+ * Project Hero Instance
113
+ *
114
+ */
115
+ export const ProjectHero = HeroTemplate.bind({});
116
+
117
+ // enumerate the props for the hero only option
118
+ ProjectHero.args = heroArgs.projectHero;
119
+ ProjectHero.storyName = "Project Hero";
120
+
121
+ /**
122
+ * Publication Hero Instance
123
+ *
124
+ */
125
+ export const PublicationHero = HeroTemplate.bind({});
126
+
127
+ // enumerate the props for the hero only option
128
+ PublicationHero.args = heroArgs.publicationHero;
129
+ PublicationHero.storyName = "Publication Hero";
@@ -0,0 +1,71 @@
1
+ import { Story, Meta } from "@storybook/react";
2
+ import {
3
+ Title,
4
+ Subtitle,
5
+ Description,
6
+ Primary,
7
+ ArgsTable,
8
+ Stories,
9
+ Subheading,
10
+ } from "@storybook/addon-docs";
11
+ import { Image } from "../components/Image";
12
+ import { ImageProps } from "../components/Image/Image.props";
13
+ import imageArgs from "../components/Image/Image.args";
14
+
15
+ const urlDoc = `
16
+ The \`url\` prop expects an array of object each containing a \`breakpoint\` and a \`src\` prop. There must be a minimuim of one of these, but preferably multiple items corresponding to the same image at different raw sizes, so that responsive images can be displayed.
17
+
18
+ | Prop | Description |
19
+ |----------|-------------|
20
+ | \`breakpoint\` | The min-width at which to start displaying this size of the image - the first item in the array should always have a breakpoint value of 0 |
21
+ | \`src\` | The image src to display at this breakpoint |
22
+ `;
23
+
24
+ /**
25
+ * Button Story
26
+ *
27
+ */
28
+ export default {
29
+ title: "Components/Image",
30
+ component: Image,
31
+ argTypes: {},
32
+ parameters: {
33
+ componentSubtitle: "Component",
34
+ docs: {
35
+ page: () => (
36
+ <>
37
+ <Subtitle />
38
+ <Title />
39
+ <Description>
40
+ The Image component displays an image, along with an image credit
41
+ and optional caption.
42
+ </Description>
43
+ <Primary />
44
+ <ArgsTable />
45
+ <Subheading>URL Prop</Subheading>
46
+ <Description>{urlDoc}</Description>
47
+ <Stories title="Examples"></Stories>
48
+ </>
49
+ ),
50
+ },
51
+ },
52
+ } as Meta<typeof Image>;
53
+
54
+ /**
55
+ * ImageTemplate
56
+ *
57
+ * create a Storybook template for this component
58
+ *
59
+ *@param (Object) args - props to be passed to the component
60
+ */
61
+ const ImageTemplate: Story<ImageProps> = (args) => <Image {...args} />;
62
+
63
+ /**
64
+ * Image Only Instance
65
+ *
66
+ */
67
+ export const ImageMedia = ImageTemplate.bind({});
68
+
69
+ // enumerate the props for the image only option
70
+ ImageMedia.args = imageArgs.image;
71
+ ImageMedia.storyName = "Image";
@@ -0,0 +1,12 @@
1
+ import { Meta } from "@storybook/addon-docs";
2
+
3
+ <Meta title="Introduction" />
4
+
5
+ # ILO Design System
6
+
7
+ <br />
8
+
9
+ ### Current Project Status: _Proof of Concept_
10
+
11
+ Browse example stories now by navigating to them in the sidebar.
12
+ View their code in the `src/stories` directory to learn how they work.
@@ -0,0 +1,99 @@
1
+ import { Story, Meta } from "@storybook/react";
2
+ import {
3
+ Title,
4
+ Subtitle,
5
+ Description,
6
+ Primary,
7
+ ArgsTable,
8
+ Stories,
9
+ Subheading,
10
+ } from "@storybook/addon-docs";
11
+ import { Link } from "../components/Link";
12
+ import { LinkProps } from "../components/Link/Link.props";
13
+ import linkArgs from "../components/Link/Link.args";
14
+
15
+ const themeDoc = `
16
+ By changing the \`theme\` prop you can change base coloring of the links. By default this is set to \`light\`.
17
+
18
+ | Theme | Description |
19
+ |----------|-------------|
20
+ | \`light\` | Link theme for a light background color. |
21
+ | \`dark\` | Link theme for a dark background color. |
22
+ | \`footer\` | Link theme for a dark background color. |
23
+ `;
24
+
25
+ /**
26
+ * Link Story
27
+ *
28
+ */
29
+ export default {
30
+ title: "Components/Link",
31
+ component: Link,
32
+ argTypes: {},
33
+ parameters: {
34
+ componentSubtitle: "Component",
35
+ docs: {
36
+ page: () => (
37
+ <>
38
+ <Subtitle />
39
+ <Title />
40
+ <Description>
41
+ The link component creates an anchor link with a specific theme.
42
+ </Description>
43
+ <Primary />
44
+ <ArgsTable />
45
+ <Subheading>Theme Prop</Subheading>
46
+ <Description>{themeDoc}</Description>
47
+ <Stories title="Examples"></Stories>
48
+ </>
49
+ ),
50
+ },
51
+ },
52
+ } as Meta<typeof Link>;
53
+
54
+ /**
55
+ * Link Template
56
+ *
57
+ * create a Storybook template for this component
58
+ *
59
+ *@param (Object) args - props to be passed to the component
60
+ */
61
+ const LinkTemplate: Story<LinkProps> = (args) => (
62
+ <Link {...args}>This is text for the link</Link>
63
+ );
64
+
65
+ /**
66
+ * Light Link Instance
67
+ *
68
+ */
69
+ export const BaseLink = LinkTemplate.bind({});
70
+
71
+ /**
72
+ * Dark Link Instance
73
+ *
74
+ */
75
+ export const DarkLink = LinkTemplate.bind({});
76
+
77
+ /**
78
+ * Footer Link Instance
79
+ *
80
+ */
81
+ export const FooterLink = LinkTemplate.bind({});
82
+
83
+ // enumerate the props for the light link.
84
+ BaseLink.args = linkArgs.light;
85
+ BaseLink.args.url = "https://www.google.com/";
86
+ BaseLink.storyName = "Light Link";
87
+
88
+ // enumerate the props dark link
89
+ DarkLink.args = linkArgs.dark;
90
+ DarkLink.parameters = {
91
+ backgrounds: { default: "dark" },
92
+ };
93
+ DarkLink.args.url = "https://www.wikipedia.org/";
94
+ DarkLink.storyName = "Dark Link";
95
+
96
+ // enumerate the props dark link
97
+ FooterLink.args = linkArgs.footer;
98
+ FooterLink.args.url = "https://www.weather.com/";
99
+ FooterLink.storyName = "Footer Link";