@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
@@ -10,7 +10,7 @@ export const transparent = () => {
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',
@@ -27,6 +27,7 @@ export const transparent = () => {
27
27
  expanded={expanded}
28
28
  disabled={disabled}
29
29
  loading={loading}
30
+ aria-label="Open"
30
31
  >
31
32
  {children}
32
33
  </Button>
@@ -43,6 +44,7 @@ export const transparent = () => {
43
44
  expanded={expanded}
44
45
  disabled={true}
45
46
  loading={loading}
47
+ aria-label="Open"
46
48
  >
47
49
  {children}
48
50
  </Button>
@@ -59,28 +61,13 @@ export const transparent = () => {
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={'transparent'}
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 className="mr-9">
85
72
  <Button
86
73
  onClick={action('button-clicked')}
@@ -89,6 +76,7 @@ export const transparent = () => {
89
76
  appearance={'transparent'}
90
77
  size={'regular'}
91
78
  selected={true}
79
+ aria-label="Open"
92
80
  >
93
81
  {children}
94
82
  </Button>
@@ -104,6 +92,7 @@ export const transparent = () => {
104
92
  size={'regular'}
105
93
  selected={true}
106
94
  icon="events"
95
+ aria-label="Events"
107
96
  />
108
97
  <br />
109
98
  <Text weight="strong">Selected Icon</Text>
@@ -119,6 +108,13 @@ export default {
119
108
  docs: {
120
109
  docPage: {
121
110
  title: 'Button',
111
+ a11yProps: `
112
+ **aria-label:**
113
+ <br/>
114
+ - Add \`aria-label='Open'\` to describe the action of button.
115
+ <br/>
116
+ - Add \`aria-label='Events'\` on button with *event* icon to define its purpose.
117
+ `,
122
118
  },
123
119
  },
124
120
  },
@@ -10,7 +10,7 @@ const buttonType = ['button', 'submit', 'reset'];
10
10
  const icon = 'events';
11
11
  const iconAlign = ['left', 'right'];
12
12
  const sizes: Props['size'][] = ['tiny', 'regular', 'large'];
13
- const appearance = ['basic', 'primary', 'success', 'alert', 'transparent'];
13
+ const appearance = ['basic', 'primary', 'alert', 'transparent'];
14
14
  const sizeMapping: Record<MakeRequired<Props['size']>, number> = {
15
15
  tiny: 12,
16
16
  regular: 16,
@@ -306,108 +306,6 @@ exports[`Button component
306
306
  </body>
307
307
  `;
308
308
 
309
- exports[`Button component
310
- appearance: "success", disabled: true
311
- 1`] = `
312
- <body>
313
- <div>
314
- <button
315
- class="Button Button--regular Button--success Button--iconAlign-left"
316
- data-test="DesignSystem-Button"
317
- disabled=""
318
- tabindex="0"
319
- >
320
- Button
321
- </button>
322
- </div>
323
- </body>
324
- `;
325
-
326
- exports[`Button component
327
- appearance: "success", expanded: false
328
- 1`] = `
329
- <body>
330
- <div>
331
- <button
332
- class="Button Button--regular Button--success Button--iconAlign-left"
333
- data-test="DesignSystem-Button"
334
- tabindex="0"
335
- >
336
- Button
337
- </button>
338
- </div>
339
- </body>
340
- `;
341
-
342
- exports[`Button component
343
- appearance: "success", expanded: true
344
- 1`] = `
345
- <body>
346
- <div>
347
- <button
348
- class="Button Button--expanded Button--regular Button--success Button--iconAlign-left"
349
- data-test="DesignSystem-Button"
350
- tabindex="0"
351
- >
352
- Button
353
- </button>
354
- </div>
355
- </body>
356
- `;
357
-
358
- exports[`Button component
359
- appearance: "success", loading: true
360
- 1`] = `
361
- <body>
362
- <div>
363
- <button
364
- class="Button Button--regular Button--success Button--iconAlign-left"
365
- data-test="DesignSystem-Button"
366
- disabled=""
367
- tabindex="0"
368
- >
369
- <svg
370
- class="Spinner Spinner--small Button-spinner"
371
- data-test="DesignSystem-Button--Spinner"
372
- viewBox="0 0 50 50"
373
- >
374
- <circle
375
- class="Circle Circle--white"
376
- cx="25"
377
- cy="25"
378
- fill="none"
379
- r="20"
380
- stroke-miterlimit="10"
381
- stroke-width="4"
382
- />
383
- </svg>
384
- <span
385
- class="Text Text--default Text--regular Button-text Button-text--hidden"
386
- data-test="DesignSystem-Text"
387
- >
388
- Button
389
- </span>
390
- </button>
391
- </div>
392
- </body>
393
- `;
394
-
395
- exports[`Button component
396
- appearance: "success", selected: true
397
- 1`] = `
398
- <body>
399
- <div>
400
- <button
401
- class="Button Button--regular Button--success Button--iconAlign-left"
402
- data-test="DesignSystem-Button"
403
- tabindex="0"
404
- >
405
- Button
406
- </button>
407
- </div>
408
- </body>
409
- `;
410
-
411
309
  exports[`Button component
412
310
  appearance: "transparent", disabled: true
413
311
  1`] = `
@@ -957,41 +855,6 @@ exports[`Button component with no children
957
855
  </body>
958
856
  `;
959
857
 
960
- exports[`Button component with no children
961
- appearance: "success", loading: true
962
- 1`] = `
963
- <body>
964
- <div>
965
- <button
966
- class="Button Button--regular Button--regularSquare Button--success"
967
- data-test="DesignSystem-Button"
968
- disabled=""
969
- tabindex="0"
970
- >
971
- <svg
972
- class="Spinner Spinner--small Button-spinner"
973
- data-test="DesignSystem-Button--Spinner"
974
- viewBox="0 0 50 50"
975
- >
976
- <circle
977
- class="Circle Circle--white"
978
- cx="25"
979
- cy="25"
980
- fill="none"
981
- r="20"
982
- stroke-miterlimit="10"
983
- stroke-width="4"
984
- />
985
- </svg>
986
- <span
987
- class="Text Text--default Text--regular Button-text Button-text--hidden"
988
- data-test="DesignSystem-Text"
989
- />
990
- </button>
991
- </div>
992
- </body>
993
- `;
994
-
995
858
  exports[`Button component with no children
996
859
  appearance: "transparent", loading: true
997
860
  1`] = `
@@ -1,5 +1,5 @@
1
1
  import * as React from 'react';
2
- import { Card, CardBody, CardHeader, Heading, Row, Column, Paragraph, Button, EmptyState } from '@/index';
2
+ import { Card, CardBody, CardHeader, Heading, Row, Column, Button, EmptyState } from '@/index';
3
3
  import image from './assets/empty.png';
4
4
 
5
5
  // CSF format story
@@ -1,4 +1,4 @@
1
- import React from 'react';
1
+ import * as React from 'react';
2
2
  import { Card, Row, Column, CardHeader, CardBody, Heading, Text, Badge } from '@/index';
3
3
 
4
4
  export const CardWithinACard = () => {
@@ -1,4 +1,4 @@
1
- import React from 'react';
1
+ import * as React from 'react';
2
2
  import { Card, Text, List, CardHeader, Heading, Paragraph } from '@/index';
3
3
  import { data } from './data';
4
4
 
@@ -4,16 +4,15 @@ import Text from '@/components/atoms/text';
4
4
  import Icon from '@/components/atoms/icon';
5
5
  import { BaseProps, OmitNativeProps } from '@/utils/types';
6
6
  import uidGenerator from '@/utils/uidGenerator';
7
- export type Size = 'regular' | 'tiny';
8
-
9
- type ChangeEvent = React.ChangeEvent<HTMLInputElement>;
7
+ import { ChangeEvent } from '@/common.type';
8
+ export type CheckBoxSize = 'regular' | 'tiny';
10
9
 
11
10
  export interface CheckboxProps extends BaseProps, OmitNativeProps<HTMLInputElement, 'onChange'> {
12
11
  /**
13
12
  * Size of the `Checkbox`
14
13
  * @default "regular"
15
14
  */
16
- size?: Size;
15
+ size?: CheckBoxSize;
17
16
  /**
18
17
  * Default value of checked (Used in case of uncontrolled `Checkbox`)
19
18
  */
@@ -85,17 +84,17 @@ export const Checkbox = React.forwardRef<HTMLInputElement, CheckboxProps>((props
85
84
  return ref.current as HTMLInputElement;
86
85
  });
87
86
 
88
- const [checked, setChecked] = React.useState(props.checked === undefined ? defaultChecked : props.checked);
87
+ const [checked, setChecked] = React.useState(checkedProp === undefined ? defaultChecked : checkedProp);
89
88
 
90
89
  React.useEffect(() => {
91
90
  setIndeterminate(indeterminate);
92
91
  }, [indeterminate]);
93
92
 
94
93
  React.useEffect(() => {
95
- if (props.checked !== undefined) {
96
- setChecked(props.checked);
94
+ if (checkedProp !== undefined) {
95
+ setChecked(checkedProp);
97
96
  }
98
- }, [props.checked]);
97
+ }, [checkedProp]);
99
98
 
100
99
  const CheckboxClass = classNames(
101
100
  {
@@ -129,7 +128,7 @@ export const Checkbox = React.forwardRef<HTMLInputElement, CheckboxProps>((props
129
128
  };
130
129
 
131
130
  const onChangeHandler = (e: React.ChangeEvent<HTMLInputElement>) => {
132
- if (props.checked === undefined) {
131
+ if (checkedProp === undefined) {
133
132
  setChecked(e.target.checked);
134
133
  setIndeterminate(e.target.indeterminate);
135
134
  }
@@ -1,12 +1,12 @@
1
1
  import * as React from 'react';
2
2
  import { text } from '@storybook/addon-knobs';
3
3
  import Checkbox from '../../index';
4
- import { Size } from '../../Checkbox';
4
+ import { CheckBoxSize } from '../../Checkbox';
5
5
  import Text from '@/components/atoms/text';
6
6
 
7
7
  // CSF format story
8
8
  export const size = () => {
9
- const sizes: Size[] = ['tiny', 'regular'];
9
+ const sizes: CheckBoxSize[] = ['tiny', 'regular'];
10
10
  const label = text('label', 'Checkbox');
11
11
  return (
12
12
  <div className="d-flex">
@@ -3,7 +3,7 @@ import GenericChip from '../_chip';
3
3
  import classNames from 'classnames';
4
4
  import { BaseProps, extractBaseProps } from '@/utils/types';
5
5
 
6
- export type Type = 'action' | 'selection' | 'input';
6
+ export type ChipType = 'action' | 'selection' | 'input';
7
7
  export type Name = number | string;
8
8
 
9
9
  export interface ChipProps extends BaseProps {
@@ -30,7 +30,7 @@ export interface ChipProps extends BaseProps {
30
30
  /**
31
31
  * Type of chip
32
32
  */
33
- type: Type;
33
+ type: ChipType;
34
34
  /**
35
35
  * Handler to be called when Chip is closed
36
36
  */
@@ -60,6 +60,7 @@ export const Chip = (props: ChipProps) => {
60
60
  [`Chip-${type}--disabled`]: disabled,
61
61
  [`Chip--${type}`]: type && !disabled,
62
62
  [`Chip-${type}--selected`]: selected && !disabled,
63
+ [`Chip-selection--selectedDisabled`]: type === 'selection' && selected && disabled,
63
64
  },
64
65
  className
65
66
  );
@@ -42,6 +42,23 @@ export const Selection = () => {
42
42
  <br />
43
43
  <Text weight="strong">Selected: true</Text>
44
44
  </div>
45
+ <div className="mr-9">
46
+ <Chip
47
+ icon={icon}
48
+ label={label}
49
+ clearButton={true}
50
+ type="selection"
51
+ onClose={action(`onClose: ${name}`)}
52
+ onClick={action(`onClick: ${name}`)}
53
+ selected={true}
54
+ disabled={true}
55
+ name={'chip'}
56
+ />
57
+ <br />
58
+ <Text weight="strong">Selected: true</Text>
59
+ <br></br>
60
+ <Text weight="strong">Disabled: true</Text>
61
+ </div>
45
62
  </div>
46
63
  );
47
64
  };
@@ -1,10 +1,10 @@
1
1
  import * as React from 'react';
2
2
  import { boolean, text } from '@storybook/addon-knobs';
3
- import Chip, { Type } from '../../Chip';
3
+ import Chip, { ChipType } from '../../Chip';
4
4
  import { action } from '@storybook/addon-actions';
5
5
  import Text from '@/components/atoms/text';
6
6
  export const Types = () => {
7
- const types: Type[] = ['action', 'selection', 'input'];
7
+ const types: ChipType[] = ['action', 'selection', 'input'];
8
8
  const icon = text('icon', 'assessment');
9
9
  const label = text('label', 'ChipLabel');
10
10
  const clearButton = boolean('clearButton', true);
@@ -131,4 +131,11 @@ describe('Chip component', () => {
131
131
  fireEvent.click(onClose);
132
132
  expect(FunctionValue).toHaveBeenCalled();
133
133
  });
134
+
135
+ it('renders chip component with prop: selected, disabled and type selection', () => {
136
+ const { queryByTestId } = render(
137
+ <Chip label="Chip" name="Chip" type="selection" disabled={true} selected={true} />
138
+ );
139
+ expect(queryByTestId('DesignSystem-Chip--GenericChip')).toHaveClass('Chip-selection--selectedDisabled');
140
+ });
134
141
  });
@@ -39,7 +39,7 @@ exports[`ChipGroup component
39
39
  data-test="DesignSystem-ChipGroup--Chip"
40
40
  >
41
41
  <i
42
- class="material-icons material-icons-round Icon Icon--default Chip-icon Chip-icon--left"
42
+ class="material-icons material-icons-round Icon Chip-icon Chip-icon--left"
43
43
  data-test="DesignSystem-GenericChip--Icon"
44
44
  style="font-size: 16px; width: 16px;"
45
45
  >
@@ -52,9 +52,11 @@ exports[`ChipGroup component
52
52
  Input
53
53
  </span>
54
54
  <i
55
- class="material-icons material-icons-round Icon Icon--subtle Chip-icon Chip-icon--right cursor-pointer"
55
+ class="material-icons material-icons-round Icon Chip-icon Chip-icon--right cursor-pointer"
56
56
  data-test="DesignSystem-GenericChip--clearButton"
57
+ role="button"
57
58
  style="font-size: 16px; width: 16px;"
59
+ tabindex="0"
58
60
  >
59
61
  clear_round
60
62
  </i>
@@ -75,7 +77,7 @@ exports[`ChipGroup component
75
77
  assessment_round
76
78
  </i>
77
79
  <span
78
- class="Text Text--default Text--regular"
80
+ class="Text Text--link Text--regular"
79
81
  data-test="DesignSystem-GenericChip--Text"
80
82
  >
81
83
  Selection
@@ -83,7 +85,9 @@ exports[`ChipGroup component
83
85
  <i
84
86
  class="material-icons material-icons-round Icon Icon--info Chip-icon Chip-icon--right cursor-pointer"
85
87
  data-test="DesignSystem-GenericChip--clearButton"
88
+ role="button"
86
89
  style="font-size: 16px; width: 16px;"
90
+ tabindex="0"
87
91
  >
88
92
  clear_round
89
93
  </i>
@@ -97,7 +101,7 @@ exports[`ChipGroup component
97
101
  data-test="DesignSystem-ChipGroup--Chip"
98
102
  >
99
103
  <i
100
- class="material-icons material-icons-round Icon Icon--default Chip-icon Chip-icon--left"
104
+ class="material-icons material-icons-round Icon Chip-icon Chip-icon--left"
101
105
  data-test="DesignSystem-GenericChip--Icon"
102
106
  style="font-size: 16px; width: 16px;"
103
107
  >
@@ -110,9 +114,11 @@ exports[`ChipGroup component
110
114
  Selection
111
115
  </span>
112
116
  <i
113
- class="material-icons material-icons-round Icon Icon--subtle Chip-icon Chip-icon--right cursor-pointer"
117
+ class="material-icons material-icons-round Icon Chip-icon Chip-icon--right cursor-pointer"
114
118
  data-test="DesignSystem-GenericChip--clearButton"
119
+ role="button"
115
120
  style="font-size: 16px; width: 16px;"
121
+ tabindex="0"
116
122
  >
117
123
  clear_round
118
124
  </i>
@@ -3,9 +3,9 @@ import { render, fireEvent } from '@testing-library/react';
3
3
  import { testHelper, filterUndefined, valueHelper, testMessageHelper } from '@/utils/testHelper';
4
4
  import { ChipGroup } from '@/index';
5
5
  import { ChipGroupProps as Props } from '@/index.type';
6
- import { Type } from '../../chip/Chip';
6
+ import { ChipType } from '../../chip/Chip';
7
7
 
8
- const type: Type[] = ['action', 'input', 'selection'];
8
+ const type: ChipType[] = ['action', 'input', 'selection'];
9
9
  const FunctionValue = jest.fn();
10
10
  const onClick = jest.fn();
11
11
  const onClose = jest.fn();
@@ -1,9 +1,9 @@
1
1
  import * as React from 'react';
2
- import { Type } from '../../chip/Chip';
2
+ import { ChipType } from '../../chip/Chip';
3
3
  import { action } from '@storybook/addon-actions';
4
4
  import { ChipGroup } from '../ChipGroup';
5
5
  export const all = () => {
6
- const type: Type[] = ['action', 'input', 'selection'];
6
+ const type: ChipType[] = ['action', 'input', 'selection'];
7
7
  const list = [
8
8
  {
9
9
  label: 'Action',
@@ -30,7 +30,9 @@ exports[`Collapsible component
30
30
  <i
31
31
  class="material-icons material-icons-round Icon px-5 py-4 my-2 cursor-pointer"
32
32
  data-test="DesignSystem-Collapsible--FooterIcon"
33
+ role="button"
33
34
  style="font-size: 16px; width: 16px;"
35
+ tabindex="0"
34
36
  >
35
37
  keyboard_arrow_right_round
36
38
  </i>
@@ -71,7 +73,9 @@ exports[`Collapsible component
71
73
  <i
72
74
  class="material-icons material-icons-round Icon px-5 py-4 my-2 cursor-pointer"
73
75
  data-test="DesignSystem-Collapsible--FooterIcon"
76
+ role="button"
74
77
  style="font-size: 16px; width: 16px;"
78
+ tabindex="0"
75
79
  >
76
80
  keyboard_arrow_right_round
77
81
  </i>
@@ -112,7 +116,9 @@ exports[`Collapsible component
112
116
  <i
113
117
  class="material-icons material-icons-round Icon px-5 py-4 my-2 cursor-pointer"
114
118
  data-test="DesignSystem-Collapsible--FooterIcon"
119
+ role="button"
115
120
  style="font-size: 16px; width: 16px;"
121
+ tabindex="0"
116
122
  >
117
123
  keyboard_arrow_left_round
118
124
  </i>
@@ -154,7 +160,9 @@ exports[`Collapsible component
154
160
  <i
155
161
  class="material-icons material-icons-round Icon px-5 py-4 my-2 cursor-pointer"
156
162
  data-test="DesignSystem-Collapsible--FooterIcon"
163
+ role="button"
157
164
  style="font-size: 16px; width: 16px;"
165
+ tabindex="0"
158
166
  >
159
167
  keyboard_arrow_left_round
160
168
  </i>
@@ -0,0 +1,44 @@
1
+ import * as React from 'react';
2
+ import classNames from 'classnames';
3
+ import { BaseProps, extractBaseProps } from '@/utils/types';
4
+
5
+ type DividerType = 'basic' | 'header';
6
+
7
+ export interface DividerProps extends BaseProps {
8
+ /**
9
+ * Determines if orientation of `Divider` is vertical
10
+ */
11
+ vertical: boolean;
12
+ /**
13
+ * Types of `Divider`
14
+ * @default "basic"
15
+ */
16
+ appearance: DividerType;
17
+ }
18
+
19
+ export const Divider = (props: DividerProps) => {
20
+ const { vertical, appearance, className } = props;
21
+
22
+ const baseProps = extractBaseProps(props);
23
+
24
+ const DividerClass = classNames(
25
+ {
26
+ ['Divider']: true,
27
+ ['Divider--horizontal']: !vertical,
28
+ ['Divider--vertical']: vertical,
29
+ ['Divider--basic']: appearance !== 'header',
30
+ ['Divider--header']: !vertical && appearance === 'header',
31
+ },
32
+ className
33
+ );
34
+
35
+ return <hr data-test="DesignSystem-Divider" {...baseProps} className={DividerClass} />;
36
+ };
37
+
38
+ Divider.displayName = 'Divider';
39
+ Divider.defaultProps = {
40
+ appearance: 'basic',
41
+ vertical: false,
42
+ };
43
+
44
+ export default Divider;
@@ -0,0 +1,74 @@
1
+ import * as React from 'react';
2
+ import { Divider, Row, Column, Card, CardBody, Text, Badge } from '@/index';
3
+
4
+ export const BasicDividerInCard = () => {
5
+ return (
6
+ <Row>
7
+ <Column size="5">
8
+ <Card className="pt-6" shadow="none">
9
+ <CardBody>
10
+ <Row>
11
+ <Column size={10}>
12
+ <Text appearance="disabled">MSSP - Track 3</Text>
13
+ </Column>
14
+ <Column size={2}>
15
+ <Badge appearance="success" subtle={true}>
16
+ ACTIVE
17
+ </Badge>
18
+ </Column>
19
+ </Row>
20
+ <br />
21
+ <Text small={true}>Medicare</Text>
22
+ <br />
23
+ <div className="py-6">
24
+ <Text appearance="disabled" small={true}>
25
+ Subscriber
26
+ </Text>
27
+ <br />
28
+ <Text appearance="disabled">LAWSON, JOY (Self)</Text>
29
+ <br />
30
+ <Text weight="medium">ZGP123456789</Text>
31
+ </div>
32
+ </CardBody>
33
+
34
+ {/* Horizontal Divider */}
35
+ <Divider />
36
+
37
+ <CardBody className="pt-4">
38
+ <Row>
39
+ <Column>
40
+ <Text appearance="disabled" small={true}>
41
+ Last attr:
42
+ </Text>
43
+ <Text className="ml-3" small={true}>
44
+ 04/19
45
+ </Text>
46
+ </Column>
47
+ <Column>
48
+ <Text appearance="disabled" small={true}>
49
+ Plan ID:
50
+ </Text>
51
+ <Text className="ml-3" small={true}>
52
+ 040
53
+ </Text>
54
+ </Column>
55
+ <Column>
56
+ <Text appearance="disabled" small={true}>
57
+ Payer ID:
58
+ </Text>
59
+ <Text className="ml-3" small={true}>
60
+ 001
61
+ </Text>
62
+ </Column>
63
+ </Row>
64
+ </CardBody>
65
+ </Card>
66
+ </Column>
67
+ </Row>
68
+ );
69
+ };
70
+
71
+ export default {
72
+ title: 'Components/Divider/Basic Divider In Card',
73
+ component: Divider,
74
+ };