@innovaccer/design-system 2.5.0 → 2.7.0-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 (462) hide show
  1. package/.eslintrc.json +54 -0
  2. package/.github/workflows/chromatic.yml +5 -0
  3. package/.github/workflows/main.yml +2 -2
  4. package/.github/workflows/pull_request.yml +2 -2
  5. package/.github/workflows/test.yml +1 -1
  6. package/.husky/commit-msg +4 -0
  7. package/.prettierrc +2 -2
  8. package/.storybook/main.js +4 -0
  9. package/.vscode/settings.json +11 -0
  10. package/CHANGELOG.md +78 -0
  11. package/CONTRIBUTING.md +180 -98
  12. package/commitlint.config.js +1 -0
  13. package/core/accessibility/utils/index.ts +5 -0
  14. package/core/accessibility/utils/isEnterKey.ts +5 -0
  15. package/core/accessibility/utils/isSpaceKey.ts +5 -0
  16. package/core/accessibility/utils/useAccessibilityProps.ts +33 -0
  17. package/core/common.type.tsx +22 -0
  18. package/core/components/atoms/_chip/__tests__/__snapshots__/_chip.test.tsx.snap +17 -9
  19. package/core/components/atoms/_chip/index.tsx +19 -3
  20. package/core/components/atoms/avatar/Avatar.tsx +4 -14
  21. package/core/components/atoms/avatar/__stories__/variants/Appearance.story.tsx +3 -2
  22. package/core/components/atoms/avatar/__tests__/Avatar.test.tsx +14 -9
  23. package/core/components/atoms/avatarGroup/AvatarGroup.tsx +3 -5
  24. package/core/components/atoms/badge/Badge.tsx +2 -12
  25. package/core/components/atoms/badge/__tests__/Badge.test.tsx +22 -7
  26. package/core/components/atoms/badge/_stories_/variants/Appearance.story.tsx +3 -2
  27. package/core/components/atoms/badge/_stories_/variants/Subtle.story.tsx +3 -2
  28. package/core/components/atoms/button/Button.tsx +10 -7
  29. package/core/components/atoms/button/__stories__/Alert.story.tsx +8 -1
  30. package/core/components/atoms/button/__stories__/Cancel.story.tsx +4 -1
  31. package/core/components/atoms/button/__stories__/IconButtonGroup.story.tsx +12 -3
  32. package/core/components/atoms/button/__stories__/IconButtonSecondary.story.tsx +6 -1
  33. package/core/components/atoms/button/__stories__/IconLeftSecondary.story.tsx +4 -1
  34. package/core/components/atoms/button/__stories__/IconRightSecondary.story.tsx +4 -1
  35. package/core/components/atoms/button/__stories__/IconTransparent.story.tsx +4 -1
  36. package/core/components/atoms/button/__stories__/LabelButtonGroup.story.tsx +14 -3
  37. package/core/components/atoms/button/__stories__/LargeIconExpanded.story.tsx +4 -1
  38. package/core/components/atoms/button/__stories__/LoadingPrimary.story.tsx +4 -1
  39. package/core/components/atoms/button/__stories__/Primary.story.tsx +5 -2
  40. package/core/components/atoms/button/__stories__/SplitButton.story.tsx +6 -1
  41. package/core/components/atoms/button/__stories__/Transparent.story.tsx +8 -1
  42. package/core/components/atoms/button/__stories__/index.story.tsx +12 -2
  43. package/core/components/atoms/button/__stories__/variants/Appearance.story.tsx +6 -2
  44. package/core/components/atoms/button/__stories__/variants/Expanded.story.tsx +6 -2
  45. package/core/components/atoms/button/__stories__/variants/Size.story.tsx +4 -0
  46. package/core/components/atoms/button/__stories__/variants/icon/Icon.story.tsx +15 -0
  47. package/core/components/atoms/button/__stories__/variants/icon/IconLeft.story.tsx +6 -2
  48. package/core/components/atoms/button/__stories__/variants/icon/IconRight.story.tsx +6 -2
  49. package/core/components/atoms/button/__stories__/variants/state/Alert.story.tsx +7 -17
  50. package/core/components/atoms/button/__stories__/variants/state/Basic.story.tsx +9 -17
  51. package/core/components/atoms/button/__stories__/variants/state/Primary.story.tsx +7 -17
  52. package/core/components/atoms/button/__stories__/variants/state/Transparent.story.tsx +13 -17
  53. package/core/components/atoms/button/__tests__/Button.test.tsx +1 -1
  54. package/core/components/atoms/button/__tests__/__snapshots__/Button.test.tsx.snap +0 -137
  55. package/core/components/atoms/card/__stories__/empty.story.tsx +1 -1
  56. package/core/components/atoms/card/__stories__/nested.story.tsx +1 -1
  57. package/core/components/atoms/card/__stories__/scroll.story.tsx +1 -1
  58. package/core/components/atoms/checkbox/Checkbox.tsx +8 -9
  59. package/core/components/atoms/checkbox/__stories__/variants/Size.story.tsx +2 -2
  60. package/core/components/atoms/chip/Chip.tsx +3 -2
  61. package/core/components/atoms/chip/__stories__/variants/Selection.story.tsx +17 -0
  62. package/core/components/atoms/chip/__stories__/variants/Type.story.tsx +2 -2
  63. package/core/components/atoms/chip/__tests__/Chip.test.tsx +7 -0
  64. package/core/components/atoms/chipGroup/__tests__/__snapshots__/chipGroup.test.tsx.snap +11 -5
  65. package/core/components/atoms/chipGroup/__tests__/chipGroup.test.tsx +2 -2
  66. package/core/components/atoms/chipGroup/_stories_/index.story.tsx +2 -2
  67. package/core/components/atoms/collapsible/__tests__/__snapshots__/Collapsible.test.tsx.snap +8 -0
  68. package/core/components/atoms/divider/Divider.tsx +44 -0
  69. package/core/components/atoms/divider/__stories__/BasicDividerInCard.story.tsx +74 -0
  70. package/core/components/atoms/divider/__stories__/HeaderDividerInCard.story.tsx +35 -0
  71. package/core/components/atoms/divider/__stories__/IndentedDivider.story.tsx +49 -0
  72. package/core/components/atoms/divider/__stories__/Vertical.story.tsx +51 -0
  73. package/core/components/atoms/divider/__stories__/index.story.tsx +91 -0
  74. package/core/components/atoms/divider/__stories__/variants/HorizontalDivider.story.tsx +27 -0
  75. package/core/components/atoms/divider/__tests__/Divider.test.tsx +50 -0
  76. package/core/components/atoms/divider/__tests__/__snapshots__/Divider.test.tsx.snap +53 -0
  77. package/core/components/atoms/divider/index.tsx +2 -0
  78. package/core/components/atoms/dropdown/Dropdown.tsx +18 -17
  79. package/core/components/atoms/dropdown/DropdownButton.tsx +2 -2
  80. package/core/components/atoms/dropdown/DropdownList.tsx +18 -7
  81. package/core/components/atoms/dropdown/Loading.tsx +1 -1
  82. package/core/components/atoms/dropdown/__stories__/CustomSearchPlaceholder.story.tsx +45 -0
  83. package/core/components/atoms/dropdown/__stories__/_common_/types.tsx +3 -0
  84. package/core/components/atoms/dropdown/__stories__/variants/Size.story.tsx +2 -2
  85. package/core/components/atoms/dropdown/__stories__/variants/controlledDropdown/MultiSelect.story.tsx +28 -18
  86. package/core/components/atoms/dropdown/__tests__/Dropdown.test.tsx +12 -1
  87. package/core/components/atoms/dropdown/__tests__/Loading.test.tsx +0 -1
  88. package/core/components/atoms/dropdown/option/DefaultOption.tsx +3 -0
  89. package/core/components/atoms/dropdown/option/IconOption.tsx +3 -0
  90. package/core/components/atoms/dropdown/option/IconWithMetaOption.tsx +3 -0
  91. package/core/components/atoms/dropdown/option/MetaOption.tsx +3 -0
  92. package/core/components/atoms/dropdown/option/index.tsx +1 -1
  93. package/core/components/atoms/editable/Editable.tsx +3 -0
  94. package/core/components/atoms/heading/Heading.tsx +4 -4
  95. package/core/components/atoms/heading/__stories__/variants/Appearance.story.tsx +3 -2
  96. package/core/components/atoms/heading/__tests__/Heading.test.tsx +4 -3
  97. package/core/components/atoms/icon/Icon.tsx +16 -5
  98. package/core/components/atoms/icon/__stories__/variants/Image.story.tsx +6 -1
  99. package/core/components/atoms/icon/__tests__/__snapshots__/Icon.test.tsx.snap +74 -0
  100. package/core/components/atoms/input/Input.tsx +17 -7
  101. package/core/components/atoms/input/__stories__/BasicInput.story.tsx +2 -1
  102. package/core/components/atoms/input/__stories__/InputWithCaption.story.tsx +91 -9
  103. package/core/components/atoms/input/__stories__/InputWithLabel.story.tsx +11 -3
  104. package/core/components/atoms/input/__stories__/LabelPosition.story.tsx +46 -4
  105. package/core/components/atoms/input/__stories__/RequiredVsOptional.story.tsx +12 -8
  106. package/core/components/atoms/input/__stories__/variants/controlledInput.story.tsx +46 -0
  107. package/core/components/atoms/input/__stories__/variants/types/BasicInput.story.tsx +2 -2
  108. package/core/components/atoms/input/__stories__/variants/types/IconLeft.story.tsx +2 -10
  109. package/core/components/atoms/input/__stories__/variants/types/WithLabel.story.tsx +1 -9
  110. package/core/components/atoms/input/__tests__/__snapshots__/Input.test.tsx.snap +19 -0
  111. package/core/components/atoms/label/Label.tsx +1 -1
  112. package/core/components/atoms/legend/Legend.tsx +5 -2
  113. package/core/components/atoms/legend/__stories__/variants/labelAppearance.story.tsx +2 -2
  114. package/core/components/atoms/link/Link.tsx +4 -4
  115. package/core/components/atoms/message/Message.tsx +12 -12
  116. package/core/components/atoms/message/__stories__/index.story.tsx +1 -1
  117. package/core/components/atoms/message/__stories__/variants/Appearance.story.tsx +1 -1
  118. package/core/components/atoms/message/__stories__/variants/AppearanceTitle.story.tsx +1 -1
  119. package/core/components/atoms/message/__tests__/Message.test.tsx +1 -6
  120. package/core/components/atoms/message/__tests__/__snapshots__/Message.test.tsx.snap +0 -45
  121. package/core/components/atoms/metaList/__tests__/MetaList.test.tsx +2 -2
  122. package/core/components/atoms/metricInput/MetricInput.tsx +17 -7
  123. package/core/components/atoms/metricInput/__stories__/DefaultMetric.story.tsx +8 -2
  124. package/core/components/atoms/metricInput/__stories__/WithPrefix.story.tsx +6 -2
  125. package/core/components/atoms/metricInput/__stories__/index.story.tsx +1 -0
  126. package/core/components/atoms/metricInput/__stories__/variants/Controlled.story.tsx +2 -0
  127. package/core/components/atoms/metricInput/__stories__/variants/Size.story.tsx +2 -2
  128. package/core/components/atoms/metricInput/__stories__/withSuffix.story.tsx +6 -2
  129. package/core/components/atoms/metricInput/__tests__/__snapshots__/MetricInput.test.tsx.snap +20 -4
  130. package/core/components/atoms/multiSlider/Handle.tsx +3 -0
  131. package/core/components/atoms/multiSlider/SliderUtils.tsx +1 -4
  132. package/core/components/atoms/multiSlider/index.tsx +9 -4
  133. package/core/components/atoms/outsideClick/OutsideClick.tsx +1 -2
  134. package/core/components/atoms/paragraph/Paragraph.tsx +2 -2
  135. package/core/components/atoms/paragraph/__stories__/variants/Appearance.story.tsx +2 -2
  136. package/core/components/atoms/paragraph/__tests__/Paragraph.test.tsx +2 -2
  137. package/core/components/atoms/pills/Pills.tsx +2 -12
  138. package/core/components/atoms/pills/__stories__/variants/Appearance.story.tsx +3 -2
  139. package/core/components/atoms/pills/__stories__/variants/Subtle.story.tsx +3 -2
  140. package/core/components/atoms/pills/__tests__/Pills.test.tsx +3 -2
  141. package/core/components/atoms/placeholderImage/PlaceholderImage.tsx +2 -2
  142. package/core/components/atoms/placeholderImage/__stories__/variants/Size.story.tsx +2 -2
  143. package/core/components/atoms/placeholderParagraph/PlaceholderParagraph.tsx +2 -2
  144. package/core/components/atoms/placeholderParagraph/__stories__/variants/Size.story.tsx +2 -2
  145. package/core/components/atoms/popperWrapper/PopperWrapper.tsx +2 -6
  146. package/core/components/atoms/progressRing/ProgressRing.tsx +2 -2
  147. package/core/components/atoms/progressRing/__stories__/variants/Size.story.tsx +1 -1
  148. package/core/components/atoms/radio/Radio.tsx +4 -5
  149. package/core/components/atoms/rangeSlider/RangeSlider.tsx +1 -2
  150. package/core/components/atoms/rangeSlider/__stories__/index.story.tsx +1 -2
  151. package/core/components/atoms/rangeSlider/__stories__/variants/Controlled.story.tsx +1 -2
  152. package/core/components/atoms/rangeSlider/__stories__/variants/CustomLabels.story.tsx +1 -2
  153. package/core/components/atoms/spinner/Spinner.tsx +4 -4
  154. package/core/components/atoms/spinner/__stories__/variants/Appearance.story.tsx +2 -2
  155. package/core/components/atoms/spinner/__stories__/variants/Size.story.tsx +1 -1
  156. package/core/components/atoms/statusHint/StatusHint.tsx +5 -3
  157. package/core/components/atoms/statusHint/__stories__/variants/Appearance.story.tsx +3 -2
  158. package/core/components/atoms/statusHint/__tests__/StatusHint.test.tsx +3 -2
  159. package/core/components/atoms/subheading/Subheading.tsx +2 -2
  160. package/core/components/atoms/subheading/__stories__/variants/Appearance.story.tsx +3 -2
  161. package/core/components/atoms/subheading/__tests__/Subheading.test.tsx +3 -2
  162. package/core/components/atoms/switchInput/Switch.tsx +14 -9
  163. package/core/components/atoms/switchInput/__stories__/DefaultSwitch.story.tsx +4 -1
  164. package/core/components/atoms/switchInput/__stories__/OffState.story.tsx +4 -1
  165. package/core/components/atoms/switchInput/__stories__/index.story.tsx +26 -3
  166. package/core/components/atoms/switchInput/__stories__/variants/Size.story.tsx +10 -1
  167. package/core/components/atoms/switchInput/__stories__/variants/State.story.tsx +9 -2
  168. package/core/components/atoms/text/Text.tsx +4 -4
  169. package/core/components/atoms/text/__stories__/variants/Appearance.story.tsx +2 -2
  170. package/core/components/atoms/text/__tests__/Text.test.tsx +2 -3
  171. package/core/components/atoms/textarea/__stories__/TextareaWithCaption.story.tsx +9 -3
  172. package/core/components/atoms/textarea/__stories__/defaultTextarea.story.tsx +10 -2
  173. package/core/components/atoms/textarea/__stories__/index.story.tsx +1 -0
  174. package/core/components/atoms/textarea/__stories__/variants/Disable.story.tsx +1 -0
  175. package/core/components/atoms/toast/ActionButton.tsx +2 -2
  176. package/core/components/atoms/toast/Toast.tsx +11 -6
  177. package/core/components/atoms/toast/__stories__/index.story.tsx +2 -6
  178. package/core/components/atoms/toast/__stories__/variants/Appearance.story.tsx +3 -2
  179. package/core/components/atoms/toast/__stories__/variants/ToastMessage.story.tsx +3 -2
  180. package/core/components/atoms/toast/__stories__/variants/ToastWithAction.story.tsx +3 -2
  181. package/core/components/atoms/toast/__tests__/Toast.test.tsx +1 -1
  182. package/core/components/atoms/toast/__tests__/__snapshots__/Toast.test.tsx.snap +24 -125
  183. package/core/components/css-utilities/Schema.tsx +1 -1
  184. package/core/components/css-utilities/Spacing/Schema.tsx +1 -1
  185. package/core/components/molecules/chatMessage/Box.tsx +3 -0
  186. package/core/components/molecules/chipInput/ChipInput.tsx +3 -0
  187. package/core/components/molecules/chipInput/__tests__/__snapshots__/ChipInput.test.tsx.snap +14 -2
  188. package/core/components/molecules/dropzone/Dropzone.tsx +6 -3
  189. package/core/components/molecules/dropzone/DropzoneBase.tsx +22 -38
  190. package/core/components/molecules/dropzone/FileSelectorUtils.tsx +1 -1
  191. package/core/components/molecules/dropzone/__stories__/index.story.tsx +151 -41
  192. package/core/components/molecules/dropzone/__tests__/Dropzone.test.tsx +2 -2
  193. package/core/components/molecules/dropzone/utils.tsx +6 -4
  194. package/core/components/molecules/editableChipInput/EditableChipInput.tsx +9 -5
  195. package/core/components/molecules/editableChipInput/__stories__/Uncontrolled.story.tsx +1 -1
  196. package/core/components/molecules/editableChipInput/__tests__/__snapshots__/EditableChipInput.test.tsx.snap +12 -4
  197. package/core/components/molecules/editableDropdown/EditableDropdown.tsx +2 -2
  198. package/core/components/molecules/editableInput/EditableInput.tsx +13 -4
  199. package/core/components/molecules/emptyState/EmptyState.tsx +9 -5
  200. package/core/components/molecules/emptyState/__stories__/pageNotLoadedWithSVG.story.tsx +26 -26
  201. package/core/components/molecules/fileList/FileListItem.tsx +3 -2
  202. package/core/components/molecules/fileUploader/FileUploaderItem.tsx +3 -2
  203. package/core/components/molecules/fileUploader/FileUploaderStatus.tsx +1 -1
  204. package/core/components/molecules/fileUploader/__stories__/_common_/types.tsx +3 -0
  205. package/core/components/molecules/fileUploader/__stories__/index.story.tsx +3 -222
  206. package/core/components/molecules/fullscreenModal/FullscreenModal.tsx +5 -7
  207. package/core/components/molecules/inputMask/InputMask.tsx +212 -146
  208. package/core/components/molecules/inputMask/__stories__/index.story.tsx +24 -0
  209. package/core/components/molecules/inputMask/__tests__/__snapshots__/InputMask.test.tsx.snap +1 -0
  210. package/core/components/molecules/modal/Modal.tsx +4 -6
  211. package/core/components/molecules/modal/__stories__/Confirmation.story.tsx +1 -1
  212. package/core/components/molecules/pagination/__tests__/__snapshots__/Pagination.test.tsx.snap +5 -1
  213. package/core/components/molecules/placeholder/Placeholder.tsx +2 -2
  214. package/core/components/molecules/popover/Popover.tsx +2 -9
  215. package/core/components/molecules/sidesheet/Sidesheet.tsx +5 -7
  216. package/core/components/molecules/sidesheet/__stories__/variants/CustomHeader.story.tsx +172 -0
  217. package/core/components/molecules/stepper/Step.tsx +2 -0
  218. package/core/components/molecules/tabs/Tabs.tsx +2 -0
  219. package/core/components/molecules/tabs/TabsWrapper.tsx +2 -0
  220. package/core/components/molecules/tabs/__stories__/CustomLabels.story.tsx +1 -1
  221. package/core/components/molecules/tooltip/Tooltip.tsx +4 -4
  222. package/core/components/molecules/verificationCodeInput/VerificationCodeInput.tsx +8 -4
  223. package/core/components/molecules/verificationCodeInput/__stories__/index.story.tsx +3 -1
  224. package/core/components/molecules/verificationCodeInput/__tests__/__snapshots__/VerificationCodeInput.test.tsx.snap +1 -0
  225. package/core/components/organisms/calendar/Calendar.tsx +130 -8
  226. package/core/components/organisms/calendar/__stories__/variants/firstDayOfWeek.story.tsx +2 -2
  227. package/core/components/organisms/calendar/__tests__/Calendar.test.tsx +27 -0
  228. package/core/components/organisms/calendar/utility.ts +3 -3
  229. package/core/components/organisms/choiceList/ChoiceList.tsx +12 -12
  230. package/core/components/organisms/datePicker/DatePicker.tsx +31 -16
  231. package/core/components/organisms/datePicker/Trigger.tsx +1 -5
  232. package/core/components/organisms/datePicker/__tests__/__snapshots__/DatePicker.test.tsx.snap +4518 -4479
  233. package/core/components/organisms/dateRangePicker/DateRangePicker.tsx +9 -10
  234. package/core/components/organisms/dateRangePicker/SingleInputTrigger.tsx +0 -1
  235. package/core/components/organisms/dateRangePicker/Trigger.tsx +2 -2
  236. package/core/components/organisms/dateRangePicker/__stories__/variants/monthsInView.story.tsx +2 -2
  237. package/core/components/organisms/dateRangePicker/__tests__/__snapshots__/DateRangePicker.test.tsx.snap +112 -40
  238. package/core/components/organisms/grid/Cell.tsx +23 -19
  239. package/core/components/organisms/grid/Grid.tsx +3 -4
  240. package/core/components/organisms/grid/GridBody.tsx +0 -1
  241. package/core/components/organisms/grid/GridContext.ts +1 -1
  242. package/core/components/organisms/grid/GridRow.tsx +4 -0
  243. package/core/components/organisms/grid/__stories__/_common_/editableSchema.tsx +1 -3
  244. package/core/components/organisms/grid/__stories__/_common_/fetchData.ts +3 -3
  245. package/core/components/organisms/grid/__stories__/_common_/loaderSchema.ts +0 -2
  246. package/core/components/organisms/grid/__stories__/_common_/schema.tsx +1 -3
  247. package/core/components/organisms/grid/__stories__/_common_/simpleLoaderSchema.ts +0 -2
  248. package/core/components/organisms/grid/__stories__/_common_/statusSchema.ts +0 -2
  249. package/core/components/organisms/horizontalNav/HorizontalNav.tsx +2 -0
  250. package/core/components/organisms/inlineMessage/InlineMessage.tsx +5 -7
  251. package/core/components/organisms/inlineMessage/__tests__/InlineMessage.test.tsx +3 -2
  252. package/core/components/organisms/inlineMessage/__tests__/__snapshots__/InlineMessage.test.tsx.snap +30 -40
  253. package/core/components/organisms/list/__stories__/_common_/types.tsx +3 -0
  254. package/core/components/organisms/list/__stories__/index.story.tsx +0 -16
  255. package/core/components/organisms/navigation/VerticalNavigation.tsx +4 -0
  256. package/core/components/organisms/table/Table.tsx +3 -2
  257. package/core/components/organisms/table/__stories__/CompressedTable.story.tsx +1 -1
  258. package/core/components/organisms/table/__stories__/DataTable.story.tsx +1 -1
  259. package/core/components/organisms/table/__stories__/NestedTableWithNestedCard.story.tsx +1 -1
  260. package/core/components/organisms/table/__stories__/PinnedColumn.story.tsx +1 -1
  261. package/core/components/organisms/table/__stories__/ResourceTable.story.tsx +4 -3
  262. package/core/components/organisms/table/__stories__/Selection.story.tsx +2 -2
  263. package/core/components/organisms/table/__stories__/StandardTable.story.tsx +1 -1
  264. package/core/components/organisms/table/__stories__/TableAsDescriptionList.story.tsx +2 -2
  265. package/core/components/organisms/table/__stories__/TableAsOptionList.story.tsx +2 -2
  266. package/core/components/organisms/table/__stories__/TightStory.story.tsx +1 -1
  267. package/core/components/organisms/table/__stories__/_common_/types.tsx +3 -0
  268. package/core/components/organisms/table/__stories__/syncTable.story.tsx +14 -6
  269. package/core/components/organisms/table/__stories__/variants/showHead.story.tsx +2 -2
  270. package/core/components/organisms/table/__stories__/variants/showMenu.story.tsx +2 -2
  271. package/core/components/organisms/table/__stories__/variants/size.story.tsx +2 -2
  272. package/core/components/organisms/table/__stories__/variants/type.story.tsx +2 -2
  273. package/core/components/organisms/table/__stories__/variants/withCheckbox.story.tsx +2 -2
  274. package/core/components/organisms/table/__stories__/variants/withHeader.story.tsx +0 -2
  275. package/core/components/organisms/table/__stories__/variants/withPagination.story.tsx +2 -2
  276. package/core/components/organisms/timePicker/TimePicker.tsx +4 -8
  277. package/core/components/organisms/timePicker/__tests__/__snapshots__/TimePicker.test.tsx.snap +14 -2
  278. package/core/components/organisms/verticalNav/MenuItem.tsx +2 -0
  279. package/core/components/organisms/verticalNav/__stories__/schema.tsx +0 -2
  280. package/core/components/organisms/verticalNav/__tests__/VerticalNav.test.tsx +1 -2
  281. package/core/components/patterns/datePicker/datePickerWithPresets.story.tsx +126 -0
  282. package/core/components/patterns/dateRangePicker/withCustomPopover.story.tsx +8 -8
  283. package/core/components/patterns/forms/CreatePassword.story.tsx +1 -1
  284. package/core/components/patterns/forms/VerificationCodeInput.story.tsx +2 -2
  285. package/core/components/patterns/table/Table with Header/tableWithHeader.story.jsx +7 -7
  286. package/core/global.d.ts +9 -0
  287. package/core/index.tsx +2 -1
  288. package/core/index.type.tsx +1 -0
  289. package/core/utils/Keys.ts +4 -0
  290. package/core/utils/__tests__/__snapshots__/TS.test.tsx.snap +562 -541
  291. package/core/utils/docPage/generateImports.tsx +2 -3
  292. package/core/utils/docPage/index.tsx +52 -37
  293. package/core/utils/docPage/sandbox.tsx +14 -7
  294. package/core/utils/overlayHelper.ts +7 -3
  295. package/core/utils/testHelper.ts +2 -2
  296. package/core/utils/types.tsx +1 -1
  297. package/core/utils/validators.ts +37 -34
  298. package/css/dist/index.css +1550 -1415
  299. package/css/dist/index.css.map +1 -1
  300. package/css/src/components/Legend.css +7 -7
  301. package/css/src/components/ProgressBar.css +1 -1
  302. package/css/src/components/avatarGroup.css +1 -1
  303. package/css/src/components/backdrop.css +12 -6
  304. package/css/src/components/badge.css +52 -52
  305. package/css/src/components/button.css +95 -94
  306. package/css/src/components/calendar.css +137 -126
  307. package/css/src/components/card.css +0 -1
  308. package/css/src/components/cardSubdued.css +3 -5
  309. package/css/src/components/chat.css +1 -1
  310. package/css/src/components/checkbox.css +71 -70
  311. package/css/src/components/chip.css +20 -17
  312. package/css/src/components/chipGroup.css +5 -5
  313. package/css/src/components/chipInput.css +1 -1
  314. package/css/src/components/choiceList.css +4 -4
  315. package/css/src/components/dateRangePicker.css +13 -13
  316. package/css/src/components/divider.css +20 -0
  317. package/css/src/components/dropdown.css +61 -61
  318. package/css/src/components/dropdownButton.css +36 -36
  319. package/css/src/components/dropzone.css +16 -20
  320. package/css/src/components/editableChipInput.css +10 -9
  321. package/css/src/components/editableDropdown.css +1 -1
  322. package/css/src/components/editableInput.css +1 -1
  323. package/css/src/components/emptyState.css +15 -15
  324. package/css/src/components/fileList.css +44 -45
  325. package/css/src/components/fullscreenModal.css +4 -3
  326. package/css/src/components/grid.css +217 -199
  327. package/css/src/components/horizontalNav.css +0 -1
  328. package/css/src/components/icon.css +1 -7
  329. package/css/src/components/inlineMessage.css +2 -1
  330. package/css/src/components/input.css +62 -62
  331. package/css/src/components/link.css +1 -1
  332. package/css/src/components/list.css +10 -10
  333. package/css/src/components/message.css +64 -70
  334. package/css/src/components/metaList.css +26 -26
  335. package/css/src/components/metricInput.css +3 -4
  336. package/css/src/components/modal.css +1 -1
  337. package/css/src/components/navigation.css +3 -3
  338. package/css/src/components/pageHeader.css +1 -2
  339. package/css/src/components/pagination.css +36 -36
  340. package/css/src/components/pills.css +19 -19
  341. package/css/src/components/placeholder.css +10 -5
  342. package/css/src/components/popover.css +2 -2
  343. package/css/src/components/progressRing.css +1 -1
  344. package/css/src/components/radio.css +74 -74
  345. package/css/src/components/slider.css +5 -5
  346. package/css/src/components/statusHints.css +15 -15
  347. package/css/src/components/switch.css +66 -41
  348. package/css/src/components/table.css +15 -15
  349. package/css/src/components/tabs.css +53 -53
  350. package/css/src/components/textarea.css +1 -1
  351. package/css/src/components/toast.css +51 -56
  352. package/css/src/components/verificationCodeInput.css +5 -6
  353. package/css/src/components/verticalNav.css +1 -2
  354. package/css/src/core/base.css +3 -0
  355. package/css/src/core/typography.css +1 -1
  356. package/css/src/core/utilities.css +1 -1
  357. package/css/src/tokens/index.css +63 -63
  358. package/css/src/utils/align.css +1 -1
  359. package/css/src/utils/background.css +1 -1
  360. package/css/src/utils/cursor.css +1 -1
  361. package/css/src/utils/display.css +1 -1
  362. package/css/src/utils/flex.css +1 -1
  363. package/css/src/utils/grid.css +1 -1
  364. package/css/src/utils/overflow.css +1 -1
  365. package/css/src/utils/position.css +1 -1
  366. package/css/src/utils/spacing.css +1 -1
  367. package/css/src/utils/utility.css +13 -13
  368. package/css/src/variables/index.css +6 -3
  369. package/dist/core/accessibility/utils/index.d.ts +4 -0
  370. package/dist/core/accessibility/utils/isEnterKey.d.ts +3 -0
  371. package/dist/core/accessibility/utils/isSpaceKey.d.ts +3 -0
  372. package/dist/core/accessibility/utils/useAccessibilityProps.d.ts +18 -0
  373. package/dist/core/common.type.d.ts +12 -0
  374. package/dist/core/components/atoms/avatar/Avatar.d.ts +4 -4
  375. package/dist/core/components/atoms/avatarGroup/AvatarGroup.d.ts +2 -3
  376. package/dist/core/components/atoms/badge/Badge.d.ts +2 -2
  377. package/dist/core/components/atoms/button/Button.d.ts +6 -6
  378. package/dist/core/components/atoms/checkbox/Checkbox.d.ts +3 -3
  379. package/dist/core/components/atoms/chip/Chip.d.ts +2 -2
  380. package/dist/core/components/atoms/divider/Divider.d.ts +15 -0
  381. package/dist/core/components/atoms/divider/index.d.ts +2 -0
  382. package/dist/core/components/atoms/dropdown/Dropdown.d.ts +18 -17
  383. package/dist/core/components/atoms/dropdown/DropdownButton.d.ts +2 -2
  384. package/dist/core/components/atoms/dropdown/DropdownList.d.ts +4 -3
  385. package/dist/core/components/atoms/dropdown/option/index.d.ts +1 -1
  386. package/dist/core/components/atoms/heading/Heading.d.ts +4 -4
  387. package/dist/core/components/atoms/icon/Icon.d.ts +5 -3
  388. package/dist/core/components/atoms/input/Input.d.ts +4 -4
  389. package/dist/core/components/atoms/legend/Legend.d.ts +2 -2
  390. package/dist/core/components/atoms/link/Link.d.ts +4 -4
  391. package/dist/core/components/atoms/message/Message.d.ts +2 -2
  392. package/dist/core/components/atoms/metricInput/MetricInput.d.ts +3 -3
  393. package/dist/core/components/atoms/multiSlider/SliderUtils.d.ts +1 -1
  394. package/dist/core/components/atoms/multiSlider/index.d.ts +3 -3
  395. package/dist/core/components/atoms/paragraph/Paragraph.d.ts +2 -2
  396. package/dist/core/components/atoms/pills/Pills.d.ts +2 -2
  397. package/dist/core/components/atoms/placeholderImage/PlaceholderImage.d.ts +2 -2
  398. package/dist/core/components/atoms/placeholderParagraph/PlaceholderParagraph.d.ts +2 -2
  399. package/dist/core/components/atoms/popperWrapper/PopperWrapper.d.ts +51 -51
  400. package/dist/core/components/atoms/progressRing/ProgressRing.d.ts +2 -2
  401. package/dist/core/components/atoms/radio/Radio.d.ts +4 -4
  402. package/dist/core/components/atoms/rangeSlider/RangeSlider.d.ts +1 -1
  403. package/dist/core/components/atoms/spinner/Spinner.d.ts +4 -4
  404. package/dist/core/components/atoms/statusHint/StatusHint.d.ts +2 -2
  405. package/dist/core/components/atoms/subheading/Subheading.d.ts +2 -2
  406. package/dist/core/components/atoms/switchInput/Switch.d.ts +7 -6
  407. package/dist/core/components/atoms/text/Text.d.ts +4 -4
  408. package/dist/core/components/atoms/toast/ActionButton.d.ts +2 -2
  409. package/dist/core/components/atoms/toast/Toast.d.ts +2 -2
  410. package/dist/core/components/molecules/dropzone/Dropzone.d.ts +3 -3
  411. package/dist/core/components/molecules/dropzone/DropzoneBase.d.ts +1 -1
  412. package/dist/core/components/molecules/dropzone/utils.d.ts +5 -3
  413. package/dist/core/components/molecules/emptyState/EmptyState.d.ts +4 -4
  414. package/dist/core/components/molecules/fileList/FileListItem.d.ts +1 -1
  415. package/dist/core/components/molecules/fileUploader/FileUploaderItem.d.ts +1 -1
  416. package/dist/core/components/molecules/fileUploader/FileUploaderStatus.d.ts +1 -1
  417. package/dist/core/components/molecules/fullscreenModal/FullscreenModal.d.ts +4 -7
  418. package/dist/core/components/molecules/inputMask/InputMask.d.ts +10 -2
  419. package/dist/core/components/molecules/modal/Modal.d.ts +3 -6
  420. package/dist/core/components/molecules/placeholder/Placeholder.d.ts +2 -2
  421. package/dist/core/components/molecules/popover/Popover.d.ts +0 -1
  422. package/dist/core/components/molecules/sidesheet/Sidesheet.d.ts +3 -6
  423. package/dist/core/components/molecules/tooltip/Tooltip.d.ts +3 -3
  424. package/dist/core/components/organisms/calendar/Calendar.d.ts +31 -0
  425. package/dist/core/components/organisms/choiceList/ChoiceList.d.ts +5 -6
  426. package/dist/core/components/organisms/datePicker/DatePicker.d.ts +2 -0
  427. package/dist/core/components/organisms/dateRangePicker/DateRangePicker.d.ts +24 -0
  428. package/dist/core/components/organisms/grid/Cell.d.ts +1 -1
  429. package/dist/core/components/organisms/grid/Grid.d.ts +3 -3
  430. package/dist/core/components/organisms/grid/GridContext.d.ts +1 -1
  431. package/dist/core/components/organisms/inlineMessage/InlineMessage.d.ts +2 -2
  432. package/dist/core/components/organisms/table/Table.d.ts +2 -2
  433. package/dist/core/components/patterns/datePicker/datePickerWithPresets.story.d.ts +15 -0
  434. package/dist/core/components/patterns/dateRangePicker/withCustomPopover.story.d.ts +5 -1
  435. package/dist/core/index.d.ts +1 -0
  436. package/dist/core/index.type.d.ts +1 -0
  437. package/dist/core/utils/docPage/generateImports.d.ts +1 -1
  438. package/dist/core/utils/overlayHelper.d.ts +1 -1
  439. package/dist/core/utils/types.d.ts +1 -1
  440. package/dist/index.esm.js +1039 -729
  441. package/dist/index.js +532 -371
  442. package/dist/index.js.map +1 -1
  443. package/dist/index.umd.js +1 -1
  444. package/dist/index.umd.js.br +0 -0
  445. package/dist/index.umd.js.gz +0 -0
  446. package/dts.config.js +11 -2
  447. package/package.json +32 -27
  448. package/tsconfig.json +3 -16
  449. package/tsconfig.type.json +2 -1
  450. package/types/index.d.ts +2217 -0
  451. package/types/{innovaccer-design-system/tsconfig.json → tsconfig.json} +1 -1
  452. package/types/{innovaccer-design-system/tslint.json → tslint.json} +0 -0
  453. package/types/types-tests.tsx +936 -0
  454. package/.husky/prepare-commit-msg +0 -6
  455. package/core/components/atoms/button/__stories__/variants/state/Success.story.tsx +0 -99
  456. package/core/components/atoms/message/__stories__/default.story.tsx +0 -16
  457. package/core/components/atoms/toast/__stories__/DefaultToast.story.tsx +0 -16
  458. package/core/components/molecules/dropzone/__stories__/variants/DropzoneWithFileList.story.tsx +0 -176
  459. package/core/components/molecules/fileUploader/__stories__/variants/FileUploaderList.story.tsx +0 -80
  460. package/tslint.json +0 -30
  461. package/types/innovaccer-design-system/index.d.ts +0 -39
  462. package/types/innovaccer-design-system/innovaccer-design-system-tests.ts +0 -0
@@ -1,7 +1,7 @@
1
1
  import * as React from 'react';
2
2
  import Button from '../Button';
3
3
 
4
- export const transparentIconButton = () => <Button appearance="transparent" icon="more_horiz" />;
4
+ export const transparentIconButton = () => <Button appearance="transparent" icon="more_horiz" aria-label="Menu" />;
5
5
 
6
6
  export default {
7
7
  title: 'Components/Button/Transparent Icon Button',
@@ -11,6 +11,9 @@ export default {
11
11
  docPage: {
12
12
  title: 'Button',
13
13
  description: 'Transparent button with icon.',
14
+ a11yProps: `
15
+ **aria-label:** Add \`aria-label='Menu'\` to describe the action of button.
16
+ `,
14
17
  },
15
18
  },
16
19
  },
@@ -3,13 +3,15 @@ import Button from '@/components/atoms/button';
3
3
 
4
4
  export const labelButtonGroup = () => (
5
5
  <div className="d-flex">
6
- <Button size="tiny" className="mr-2">
6
+ <Button size="tiny" className="mr-4" aria-label="Copy">
7
7
  Copy
8
8
  </Button>
9
- <Button size="tiny" className="mr-2">
9
+ <Button size="tiny" className="mr-4" aria-label="Paste">
10
10
  Paste
11
11
  </Button>
12
- <Button size="tiny">Delete</Button>
12
+ <Button size="tiny" aria-label="Delete">
13
+ Delete
14
+ </Button>
13
15
  </div>
14
16
  );
15
17
 
@@ -21,6 +23,15 @@ export default {
21
23
  docPage: {
22
24
  title: 'Button',
23
25
  description: 'A pattern using buttons in a group.',
26
+ a11yProps: `
27
+ **aria-label:**
28
+ <br/>
29
+ - Add \`aria-label='Copy'\` on button with *copy* icon to describe the action of button.
30
+ <br/>
31
+ - Add \`aria-label='Paste'\` on button with *paste* icon to describe the action of button.
32
+ <br/>
33
+ - Add \`aria-label='Delete'\` on button with *delete* icon to describe the action of button.
34
+ `,
24
35
  },
25
36
  },
26
37
  },
@@ -2,7 +2,7 @@ import * as React from 'react';
2
2
  import Button from '../Button';
3
3
 
4
4
  export const ExpandedButton = () => (
5
- <Button appearance="primary" size="large" expanded={true}>
5
+ <Button appearance="primary" size="large" expanded={true} aria-label="Login">
6
6
  Login
7
7
  </Button>
8
8
  );
@@ -15,6 +15,9 @@ export default {
15
15
  docPage: {
16
16
  title: 'Button',
17
17
  description: 'Large expanded button.',
18
+ a11yProps: `
19
+ **aria-label:** Add \`aria-label='Login'\` to describe the action of button
20
+ `,
18
21
  },
19
22
  },
20
23
  },
@@ -1,7 +1,7 @@
1
1
  import * as React from 'react';
2
2
  import Button from '../Button';
3
3
 
4
- export const LoaderInButton = () => <Button appearance="primary" loading={true} />;
4
+ export const LoaderInButton = () => <Button appearance="primary" loading={true} aria-label="loading" />;
5
5
 
6
6
  export default {
7
7
  title: 'Components/Button/Loader In Button',
@@ -11,6 +11,9 @@ export default {
11
11
  docPage: {
12
12
  title: 'Button',
13
13
  description: 'Primary button in loading state.',
14
+ a11yProps: `
15
+ **aria-label:** Add \`aria-label='loading'\` to describe the action of button.
16
+ `,
14
17
  },
15
18
  },
16
19
  },
@@ -2,8 +2,8 @@ import * as React from 'react';
2
2
  import Button from '../Button';
3
3
 
4
4
  export const PrimaryButton = () => (
5
- <Button appearance="primary" size="regular">
6
- Submit
5
+ <Button appearance="primary" size="regular" aria-label="Submit your response">
6
+ Submit your response
7
7
  </Button>
8
8
  );
9
9
 
@@ -15,6 +15,9 @@ export default {
15
15
  docPage: {
16
16
  title: 'Button',
17
17
  description: 'Primary button',
18
+ a11yProps: `
19
+ **aria-label:** Add \`aria-label='Submit your response'\` to describe the action of button
20
+ `,
18
21
  },
19
22
  },
20
23
  },
@@ -15,7 +15,9 @@ const options = [
15
15
 
16
16
  export const splitButton = () => (
17
17
  <div className="d-flex">
18
- <Button className="mr-2">Request review</Button>
18
+ <Button className="mr-2" aria-label="Request review">
19
+ Request review
20
+ </Button>
19
21
  <div className="mb-10" style={{ width: '150px' }}>
20
22
  <Dropdown menu={true} icon="expand_more" options={options} />
21
23
  </div>
@@ -30,6 +32,9 @@ export default {
30
32
  docPage: {
31
33
  title: 'Button',
32
34
  description: 'Split button.',
35
+ a11yProps: `
36
+ **aria-label:** Add \`aria-label='Request review'\` to describe the action of button
37
+ `,
33
38
  },
34
39
  },
35
40
  },
@@ -1,7 +1,11 @@
1
1
  import * as React from 'react';
2
2
  import Button from '../Button';
3
3
 
4
- export const transparentButton = () => <Button appearance="transparent">Re-evaluate</Button>;
4
+ export const transparentButton = () => (
5
+ <Button appearance="transparent" aria-label="Re-evaluate">
6
+ Re-evaluate
7
+ </Button>
8
+ );
5
9
 
6
10
  export default {
7
11
  title: 'Components/Button/Transparent Button',
@@ -11,6 +15,9 @@ export default {
11
15
  docPage: {
12
16
  title: 'Button',
13
17
  description: 'Transparent button.',
18
+ a11yProps: `
19
+ **aria-label:** Add \`aria-label='Re-evaluate'\` to describe the action of button
20
+ `,
14
21
  },
15
22
  },
16
23
  },
@@ -7,7 +7,7 @@ import Button from '../Button';
7
7
  export const all = () => {
8
8
  const type = select('type', ['button', 'submit', 'reset'], undefined);
9
9
 
10
- const appearance = select('appearance', ['basic', 'primary', 'success', 'alert', 'transparent'], undefined);
10
+ const appearance = select('appearance', ['basic', 'primary', 'alert', 'transparent'], undefined);
11
11
 
12
12
  const size = select('size', ['tiny', 'regular', 'large'], undefined);
13
13
 
@@ -21,7 +21,7 @@ export const all = () => {
21
21
 
22
22
  const iconAlign = select('iconAlign', ['left', 'right'], undefined);
23
23
 
24
- const children = text('children', 'Button');
24
+ const children = text('children', 'Open');
25
25
 
26
26
  return (
27
27
  <Button
@@ -36,6 +36,7 @@ export const all = () => {
36
36
  loading={loading}
37
37
  icon={icon}
38
38
  iconAlign={iconAlign}
39
+ aria-label="Open"
39
40
  >
40
41
  {children}
41
42
  </Button>
@@ -45,4 +46,13 @@ export const all = () => {
45
46
  export default {
46
47
  title: 'Components/Button/All',
47
48
  component: Button,
49
+ parameters: {
50
+ docs: {
51
+ docPage: {
52
+ a11yProps: `
53
+ **aria-label:** Add \`aria-label='Open'\` to describe the action of button
54
+ `,
55
+ },
56
+ },
57
+ },
48
58
  };
@@ -1,7 +1,7 @@
1
1
  import * as React from 'react';
2
2
  import { text } from '@storybook/addon-knobs';
3
3
  import { action } from '@storybook/addon-actions';
4
- import Button, { Appearance } from '../../Button';
4
+ import Button, { ButtonAppearance } from '../../Button';
5
5
  import Text from '@/components/atoms/text';
6
6
 
7
7
  // CSF format story
@@ -10,7 +10,7 @@ export const appearance = () => {
10
10
  const expanded = false;
11
11
  const loading = false;
12
12
 
13
- const appearances: Appearance[] = ['basic', 'primary', 'success', 'alert', 'transparent'];
13
+ const appearances: ButtonAppearance[] = ['basic', 'primary', 'alert', 'transparent'];
14
14
 
15
15
  const children = text('children', 'Button');
16
16
 
@@ -28,6 +28,7 @@ export const appearance = () => {
28
28
  expanded={expanded}
29
29
  disabled={disabled}
30
30
  loading={loading}
31
+ aria-label={`${appear}`}
31
32
  >
32
33
  {children}
33
34
  </Button>
@@ -47,6 +48,9 @@ export default {
47
48
  docs: {
48
49
  docPage: {
49
50
  title: 'Button',
51
+ a11yProps: `
52
+ **aria-label:** name accordingly which describe the action of button
53
+ `,
50
54
  },
51
55
  },
52
56
  },
@@ -1,7 +1,7 @@
1
1
  import * as React from 'react';
2
2
  import { text } from '@storybook/addon-knobs';
3
3
  import { action } from '@storybook/addon-actions';
4
- import Button, { Appearance } from '../../Button';
4
+ import Button, { ButtonAppearance } from '../../Button';
5
5
  import Text from '@/components/atoms/text';
6
6
 
7
7
  // CSF format story
@@ -10,7 +10,7 @@ export const expanded = () => {
10
10
  const ButtonExpanded = true;
11
11
  const loading = false;
12
12
 
13
- const appearances: Appearance[] = ['basic', 'primary', 'success', 'alert'];
13
+ const appearances: ButtonAppearance[] = ['basic', 'primary', 'alert'];
14
14
 
15
15
  const children = text('children', 'Button');
16
16
 
@@ -28,6 +28,7 @@ export const expanded = () => {
28
28
  expanded={ButtonExpanded}
29
29
  disabled={disabled}
30
30
  loading={loading}
31
+ aria-label={`${appear}`}
31
32
  >
32
33
  {children}
33
34
  </Button>
@@ -47,6 +48,9 @@ export default {
47
48
  docs: {
48
49
  docPage: {
49
50
  title: 'Button',
51
+ a11yProps: `
52
+ **aria-label:** name accordingly which describe the action of button
53
+ `,
50
54
  },
51
55
  },
52
56
  },
@@ -29,6 +29,7 @@ export const size = () => {
29
29
  expanded={expanded}
30
30
  disabled={disabled}
31
31
  loading={loading}
32
+ aria-label={`${ButtonSize}`}
32
33
  >
33
34
  {children}
34
35
  </Button>
@@ -49,6 +50,9 @@ export default {
49
50
  docs: {
50
51
  docPage: {
51
52
  title: 'Button',
53
+ a11yProps: `
54
+ **aria-label:** name accordingly which describe the action of button
55
+ `,
52
56
  },
53
57
  },
54
58
  },
@@ -19,6 +19,7 @@ export const icon = () => {
19
19
  icon="add"
20
20
  size="tiny"
21
21
  largeIcon={false}
22
+ aria-label="Add document"
22
23
  />
23
24
  <Button
24
25
  onClick={action('button-clicked')}
@@ -28,6 +29,7 @@ export const icon = () => {
28
29
  icon="add"
29
30
  size="tiny"
30
31
  largeIcon={true}
32
+ aria-label="Add document"
31
33
  />
32
34
  </div>
33
35
  </div>
@@ -44,6 +46,7 @@ export const icon = () => {
44
46
  icon="print"
45
47
  size="regular"
46
48
  largeIcon={false}
49
+ aria-label="Print"
47
50
  />
48
51
  <Button
49
52
  onClick={action('button-clicked')}
@@ -53,6 +56,7 @@ export const icon = () => {
53
56
  icon="print"
54
57
  size="regular"
55
58
  largeIcon={true}
59
+ aria-label="Print"
56
60
  />
57
61
  </div>
58
62
  </div>
@@ -69,6 +73,7 @@ export const icon = () => {
69
73
  icon="more_horiz"
70
74
  size="large"
71
75
  largeIcon={false}
76
+ aria-label="Menu"
72
77
  />
73
78
  <Button
74
79
  onClick={action('button-clicked')}
@@ -78,6 +83,7 @@ export const icon = () => {
78
83
  icon="more_horiz"
79
84
  size="large"
80
85
  largeIcon={true}
86
+ aria-label="Menu"
81
87
  />
82
88
  </div>
83
89
  </div>
@@ -92,6 +98,15 @@ export default {
92
98
  docs: {
93
99
  docPage: {
94
100
  title: 'Button',
101
+ a11yProps: `
102
+ **aria-label:**
103
+ <br/>
104
+ - Add \`aria-label='Add document'\` on button with *add* icon to indicate its purpose.
105
+ <br/>
106
+ - Add \`aria-label='Print'\` on button with *print* icon to indicate its purpose.
107
+ <br/>
108
+ - Add \`aria-label='Menu'\` on button with *menu* icon to indicate its purpose.
109
+ `,
95
110
  },
96
111
  },
97
112
  },
@@ -1,7 +1,7 @@
1
1
  import * as React from 'react';
2
2
  import { text } from '@storybook/addon-knobs';
3
3
  import { action } from '@storybook/addon-actions';
4
- import Button, { Size } from '../../../Button';
4
+ import Button, { ButtonSize } from '../../../Button';
5
5
  import Text from '@/components/atoms/text';
6
6
 
7
7
  // CSF format story
@@ -11,7 +11,7 @@ export const iconLeft = () => {
11
11
  const loading = false;
12
12
  const iconAlign = 'left';
13
13
 
14
- const size: Size[] = ['tiny', 'regular', 'large'];
14
+ const size: ButtonSize[] = ['tiny', 'regular', 'large'];
15
15
 
16
16
  const icon = text('icon', 'refresh');
17
17
  const children = text('children', 'Button');
@@ -32,6 +32,7 @@ export const iconLeft = () => {
32
32
  loading={loading}
33
33
  icon={icon}
34
34
  iconAlign={iconAlign}
35
+ aria-label="Refresh"
35
36
  >
36
37
  {children}
37
38
  </Button>
@@ -52,6 +53,9 @@ export default {
52
53
  docs: {
53
54
  docPage: {
54
55
  title: 'Button',
56
+ a11yProps: `
57
+ **aria-label:** Add \`aria-label='Refresh'\` to describe the action of button
58
+ `,
55
59
  },
56
60
  },
57
61
  },
@@ -1,7 +1,7 @@
1
1
  import * as React from 'react';
2
2
  import { text } from '@storybook/addon-knobs';
3
3
  import { action } from '@storybook/addon-actions';
4
- import Button, { Size } from '../../../Button';
4
+ import Button, { ButtonSize } from '../../../Button';
5
5
  import Text from '@/components/atoms/text';
6
6
 
7
7
  // CSF format story
@@ -11,7 +11,7 @@ export const iconRight = () => {
11
11
  const loading = false;
12
12
  const iconAlign = 'right';
13
13
 
14
- const size: Size[] = ['tiny', 'regular', 'large'];
14
+ const size: ButtonSize[] = ['tiny', 'regular', 'large'];
15
15
 
16
16
  const icon = text('icon', 'refresh');
17
17
  const children = text('children', 'Button');
@@ -32,6 +32,7 @@ export const iconRight = () => {
32
32
  loading={loading}
33
33
  icon={icon}
34
34
  iconAlign={iconAlign}
35
+ aria-label="Refresh"
35
36
  >
36
37
  {children}
37
38
  </Button>
@@ -52,6 +53,9 @@ export default {
52
53
  docs: {
53
54
  docPage: {
54
55
  title: 'Button',
56
+ a11yProps: `
57
+ **aria-label:** Add \`aria-label='Refresh'\` to describe the action of button
58
+ `,
55
59
  },
56
60
  },
57
61
  },
@@ -10,7 +10,7 @@ export const alert = () => {
10
10
  const expanded = false;
11
11
  const loading = false;
12
12
 
13
- const children = text('children', 'Button');
13
+ const children = text('children', 'Delete');
14
14
 
15
15
  const style = {
16
16
  justifyContent: 'space-between',
@@ -28,6 +28,7 @@ export const alert = () => {
28
28
  expanded={expanded}
29
29
  disabled={disabled}
30
30
  loading={loading}
31
+ aria-label="Delete"
31
32
  >
32
33
  {children}
33
34
  </Button>
@@ -44,6 +45,7 @@ export const alert = () => {
44
45
  expanded={expanded}
45
46
  disabled={true}
46
47
  loading={loading}
48
+ aria-label="Delete"
47
49
  >
48
50
  {children}
49
51
  </Button>
@@ -60,28 +62,13 @@ export const alert = () => {
60
62
  expanded={expanded}
61
63
  disabled={disabled}
62
64
  loading={true}
65
+ aria-label="Loading"
63
66
  >
64
67
  {''}
65
68
  </Button>
66
69
  <br />
67
70
  <Text weight="strong">Loading</Text>
68
71
  </div>
69
- <div className="mr-9">
70
- <Button
71
- onClick={action('button-clicked')}
72
- onMouseEnter={action('mouse-enter')}
73
- onMouseLeave={action('mouse-leave')}
74
- appearance={'alert'}
75
- size={'regular'}
76
- expanded={expanded}
77
- disabled={disabled}
78
- loading={true}
79
- >
80
- {children}
81
- </Button>
82
- <br />
83
- <Text weight="strong">Loading with Text</Text>
84
- </div>
85
72
  </div>
86
73
  );
87
74
  };
@@ -93,6 +80,9 @@ export default {
93
80
  docs: {
94
81
  docPage: {
95
82
  title: 'Button',
83
+ a11yProps: `
84
+ **aria-label:** Add \`aria-label='Delete'\` to describe the action of button
85
+ `,
96
86
  },
97
87
  },
98
88
  },
@@ -10,7 +10,7 @@ export const basic = () => {
10
10
  const expanded = false;
11
11
  const loading = false;
12
12
 
13
- const children = text('children', 'Button');
13
+ const children = text('children', 'Open');
14
14
 
15
15
  const style = {
16
16
  justifyContent: 'space-between',
@@ -28,6 +28,7 @@ export const basic = () => {
28
28
  expanded={expanded}
29
29
  disabled={disabled}
30
30
  loading={loading}
31
+ aria-label="Open"
31
32
  >
32
33
  {children}
33
34
  </Button>
@@ -44,6 +45,7 @@ export const basic = () => {
44
45
  expanded={expanded}
45
46
  disabled={true}
46
47
  loading={loading}
48
+ aria-label="Open"
47
49
  >
48
50
  {children}
49
51
  </Button>
@@ -60,28 +62,13 @@ export const basic = () => {
60
62
  expanded={expanded}
61
63
  disabled={disabled}
62
64
  loading={true}
65
+ aria-label="Loading"
63
66
  >
64
67
  {''}
65
68
  </Button>
66
69
  <br />
67
70
  <Text weight="strong">Loading</Text>
68
71
  </div>
69
- <div className="mr-9">
70
- <Button
71
- onClick={action('button-clicked')}
72
- onMouseEnter={action('mouse-enter')}
73
- onMouseLeave={action('mouse-leave')}
74
- appearance={'basic'}
75
- size={'regular'}
76
- expanded={expanded}
77
- disabled={disabled}
78
- loading={true}
79
- >
80
- {children}
81
- </Button>
82
- <br />
83
- <Text weight="strong">Loading with Text</Text>
84
- </div>
85
72
  <div className="mr-9">
86
73
  <Button
87
74
  onClick={action('button-clicked')}
@@ -90,6 +77,7 @@ export const basic = () => {
90
77
  appearance={'basic'}
91
78
  size={'regular'}
92
79
  selected={true}
80
+ aria-label="Selected"
93
81
  >
94
82
  {children}
95
83
  </Button>
@@ -105,6 +93,7 @@ export const basic = () => {
105
93
  size={'regular'}
106
94
  selected={true}
107
95
  icon="events"
96
+ aria-label="Selected"
108
97
  />
109
98
  <br />
110
99
  <Text weight="strong">Selected Icon</Text>
@@ -120,6 +109,9 @@ export default {
120
109
  docs: {
121
110
  docPage: {
122
111
  title: 'Button',
112
+ a11yProps: `
113
+ **aria-label:** Add \`aria-label='Open'\` to describe the action of button
114
+ `,
123
115
  },
124
116
  },
125
117
  },
@@ -10,7 +10,7 @@ export const primary = () => {
10
10
  const expanded = false;
11
11
  const loading = false;
12
12
 
13
- const children = text('children', 'Button');
13
+ const children = text('children', 'Login');
14
14
 
15
15
  const style = {
16
16
  justifyContent: 'space-between',
@@ -27,6 +27,7 @@ export const primary = () => {
27
27
  expanded={expanded}
28
28
  disabled={disabled}
29
29
  loading={loading}
30
+ aria-label="Login"
30
31
  >
31
32
  {children}
32
33
  </Button>
@@ -43,6 +44,7 @@ export const primary = () => {
43
44
  expanded={expanded}
44
45
  disabled={true}
45
46
  loading={loading}
47
+ aria-label="Login"
46
48
  >
47
49
  {children}
48
50
  </Button>
@@ -59,28 +61,13 @@ export const primary = () => {
59
61
  expanded={expanded}
60
62
  disabled={disabled}
61
63
  loading={true}
64
+ aria-label="Loading"
62
65
  >
63
66
  {''}
64
67
  </Button>
65
68
  <br />
66
69
  <Text weight="strong">Loading</Text>
67
70
  </div>
68
- <div className="mr-9">
69
- <Button
70
- onClick={action('button-clicked')}
71
- onMouseEnter={action('mouse-enter')}
72
- onMouseLeave={action('mouse-leave')}
73
- appearance={'primary'}
74
- size={'regular'}
75
- expanded={expanded}
76
- disabled={disabled}
77
- loading={true}
78
- >
79
- {children}
80
- </Button>
81
- <br />
82
- <Text weight="strong">Loading with Text</Text>
83
- </div>
84
71
  </div>
85
72
  );
86
73
  };
@@ -92,6 +79,9 @@ export default {
92
79
  docs: {
93
80
  docPage: {
94
81
  title: 'Button',
82
+ a11yProps: `
83
+ **aria-label:** Add \`aria-label='Login'\` to describe the action of button
84
+ `,
95
85
  },
96
86
  },
97
87
  },