@innovaccer/design-system 2.5.0-4 → 2.6.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 (264) hide show
  1. package/.all-contributorsrc +1 -1
  2. package/.eslintrc.json +53 -0
  3. package/.github/workflows/jira.yml +1 -2
  4. package/.github/workflows/main.yml +2 -2
  5. package/.github/workflows/pull_request.yml +1 -1
  6. package/.github/workflows/test.yml +1 -1
  7. package/.husky/commit-msg +4 -0
  8. package/.prettierrc +2 -2
  9. package/CHANGELOG.md +38 -88
  10. package/CONTRIBUTING.md +173 -97
  11. package/README.md +1 -1
  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 +31 -0
  17. package/core/components/atoms/_chip/__tests__/__snapshots__/_chip.test.tsx.snap +8 -0
  18. package/core/components/atoms/_chip/index.tsx +2 -0
  19. package/core/components/atoms/button/__stories__/Alert.story.tsx +8 -1
  20. package/core/components/atoms/button/__stories__/Cancel.story.tsx +4 -1
  21. package/core/components/atoms/button/__stories__/IconButtonGroup.story.tsx +12 -3
  22. package/core/components/atoms/button/__stories__/IconButtonSecondary.story.tsx +6 -1
  23. package/core/components/atoms/button/__stories__/IconLeftSecondary.story.tsx +4 -1
  24. package/core/components/atoms/button/__stories__/IconRightSecondary.story.tsx +4 -1
  25. package/core/components/atoms/button/__stories__/IconTransparent.story.tsx +4 -1
  26. package/core/components/atoms/button/__stories__/LabelButtonGroup.story.tsx +14 -3
  27. package/core/components/atoms/button/__stories__/LargeIconExpanded.story.tsx +4 -1
  28. package/core/components/atoms/button/__stories__/LoadingPrimary.story.tsx +4 -1
  29. package/core/components/atoms/button/__stories__/Primary.story.tsx +5 -2
  30. package/core/components/atoms/button/__stories__/SplitButton.story.tsx +6 -1
  31. package/core/components/atoms/button/__stories__/Transparent.story.tsx +8 -1
  32. package/core/components/atoms/button/__stories__/index.story.tsx +11 -1
  33. package/core/components/atoms/button/__stories__/variants/Appearance.story.tsx +4 -0
  34. package/core/components/atoms/button/__stories__/variants/Expanded.story.tsx +4 -0
  35. package/core/components/atoms/button/__stories__/variants/Size.story.tsx +4 -0
  36. package/core/components/atoms/button/__stories__/variants/icon/Icon.story.tsx +15 -0
  37. package/core/components/atoms/button/__stories__/variants/icon/IconLeft.story.tsx +4 -0
  38. package/core/components/atoms/button/__stories__/variants/icon/IconRight.story.tsx +4 -0
  39. package/core/components/atoms/button/__stories__/variants/state/Alert.story.tsx +7 -17
  40. package/core/components/atoms/button/__stories__/variants/state/Basic.story.tsx +9 -17
  41. package/core/components/atoms/button/__stories__/variants/state/Primary.story.tsx +7 -17
  42. package/core/components/atoms/button/__stories__/variants/state/Success.story.tsx +7 -17
  43. package/core/components/atoms/button/__stories__/variants/state/Transparent.story.tsx +13 -17
  44. package/core/components/atoms/chipGroup/__tests__/__snapshots__/chipGroup.test.tsx.snap +6 -0
  45. package/core/components/atoms/collapsible/__stories__/index.story.tsx +2 -2
  46. package/core/components/atoms/collapsible/__tests__/__snapshots__/Collapsible.test.tsx.snap +8 -0
  47. package/core/components/atoms/divider/Divider.tsx +44 -0
  48. package/core/components/atoms/divider/__stories__/BasicDividerInCard.story.tsx +74 -0
  49. package/core/components/atoms/divider/__stories__/HeaderDividerInCard.story.tsx +35 -0
  50. package/core/components/atoms/divider/__stories__/IndentedDivider.story.tsx +49 -0
  51. package/core/components/atoms/divider/__stories__/Vertical.story.tsx +51 -0
  52. package/core/components/atoms/divider/__stories__/index.story.tsx +91 -0
  53. package/core/components/atoms/divider/__stories__/variants/HorizontalDivider.story.tsx +27 -0
  54. package/core/components/atoms/divider/__tests__/Divider.test.tsx +50 -0
  55. package/core/components/atoms/divider/__tests__/__snapshots__/Divider.test.tsx.snap +53 -0
  56. package/core/components/atoms/divider/index.tsx +2 -0
  57. package/core/components/atoms/dropdown/DropdownList.tsx +8 -2
  58. package/core/components/atoms/dropdown/__stories__/variants/controlledDropdown/MultiSelect.story.tsx +27 -17
  59. package/core/components/atoms/dropdown/option/DefaultOption.tsx +3 -0
  60. package/core/components/atoms/dropdown/option/IconOption.tsx +3 -0
  61. package/core/components/atoms/dropdown/option/IconWithMetaOption.tsx +3 -0
  62. package/core/components/atoms/dropdown/option/MetaOption.tsx +3 -0
  63. package/core/components/atoms/editable/Editable.tsx +3 -0
  64. package/core/components/atoms/icon/Icon.tsx +14 -3
  65. package/core/components/atoms/icon/__stories__/variants/Image.story.tsx +6 -1
  66. package/core/components/atoms/icon/__tests__/__snapshots__/Icon.test.tsx.snap +74 -0
  67. package/core/components/atoms/input/Input.tsx +14 -4
  68. package/core/components/atoms/input/__stories__/BasicInput.story.tsx +2 -1
  69. package/core/components/atoms/input/__stories__/InputWithCaption.story.tsx +29 -9
  70. package/core/components/atoms/input/__stories__/InputWithLabel.story.tsx +11 -3
  71. package/core/components/atoms/input/__stories__/LabelPosition.story.tsx +8 -4
  72. package/core/components/atoms/input/__stories__/RequiredVsOptional.story.tsx +12 -8
  73. package/core/components/atoms/input/__tests__/__snapshots__/Input.test.tsx.snap +19 -0
  74. package/core/components/atoms/legend/Legend.tsx +3 -0
  75. package/core/components/atoms/message/__stories__/CustomDescription.tsx +25 -0
  76. package/core/components/atoms/metricInput/MetricInput.tsx +12 -2
  77. package/core/components/atoms/metricInput/__stories__/DefaultMetric.story.tsx +8 -2
  78. package/core/components/atoms/metricInput/__stories__/WithPrefix.story.tsx +6 -2
  79. package/core/components/atoms/metricInput/__stories__/index.story.tsx +1 -0
  80. package/core/components/atoms/metricInput/__stories__/variants/Controlled.story.tsx +2 -0
  81. package/core/components/atoms/metricInput/__stories__/variants/Size.story.tsx +2 -2
  82. package/core/components/atoms/metricInput/__stories__/withSuffix.story.tsx +6 -2
  83. package/core/components/atoms/metricInput/__tests__/__snapshots__/MetricInput.test.tsx.snap +20 -4
  84. package/core/components/atoms/multiSlider/Handle.tsx +3 -0
  85. package/core/components/atoms/multiSlider/index.tsx +6 -0
  86. package/core/components/atoms/outsideClick/__stories__/index.story.tsx +1 -1
  87. package/core/components/atoms/statusHint/StatusHint.tsx +3 -0
  88. package/core/components/atoms/switchInput/Switch.tsx +10 -4
  89. package/core/components/atoms/switchInput/__stories__/DefaultSwitch.story.tsx +4 -1
  90. package/core/components/atoms/switchInput/__stories__/OffState.story.tsx +4 -1
  91. package/core/components/atoms/switchInput/__stories__/index.story.tsx +26 -3
  92. package/core/components/atoms/switchInput/__stories__/variants/Size.story.tsx +10 -1
  93. package/core/components/atoms/switchInput/__stories__/variants/State.story.tsx +9 -2
  94. package/core/components/atoms/textarea/__stories__/TextareaWithCaption.story.tsx +9 -3
  95. package/core/components/atoms/textarea/__stories__/defaultTextarea.story.tsx +10 -2
  96. package/core/components/atoms/textarea/__stories__/index.story.tsx +1 -0
  97. package/core/components/atoms/textarea/__stories__/variants/Disable.story.tsx +1 -0
  98. package/core/components/atoms/toast/__tests__/__snapshots__/Toast.test.tsx.snap +30 -0
  99. package/core/components/css-utilities/Align/Align.story.tsx +1 -1
  100. package/core/components/css-utilities/Background/Background.story.tsx +1 -1
  101. package/core/components/css-utilities/Border/Border.story.tsx +1 -1
  102. package/core/components/css-utilities/Display/Display.story.tsx +1 -1
  103. package/core/components/css-utilities/Flex/Flex.story.tsx +1 -1
  104. package/core/components/css-utilities/Miscellaneous/Miscellaneous.story.tsx +1 -1
  105. package/core/components/css-utilities/Overflow/Overflow.story.tsx +1 -1
  106. package/core/components/css-utilities/Position/Position.story.tsx +1 -1
  107. package/core/components/css-utilities/Sizing/Sizing.story.tsx +1 -1
  108. package/core/components/css-utilities/Spacing/Spacing.story.tsx +1 -1
  109. package/core/components/molecules/chatMessage/Box.tsx +3 -0
  110. package/core/components/molecules/chipInput/ChipInput.tsx +3 -0
  111. package/core/components/molecules/chipInput/__tests__/__snapshots__/ChipInput.test.tsx.snap +12 -0
  112. package/core/components/molecules/dropzone/Dropzone.tsx +3 -0
  113. package/core/components/molecules/dropzone/FileSelectorUtils.tsx +1 -1
  114. package/core/components/molecules/editableChipInput/EditableChipInput.tsx +9 -5
  115. package/core/components/molecules/editableChipInput/__stories__/Uncontrolled.story.tsx +1 -1
  116. package/core/components/molecules/editableChipInput/__tests__/__snapshots__/EditableChipInput.test.tsx.snap +8 -0
  117. package/core/components/molecules/editableDropdown/EditableDropdown.tsx +2 -2
  118. package/core/components/molecules/editableInput/EditableInput.tsx +13 -4
  119. package/core/components/molecules/emptyState/EmptyState.tsx +5 -1
  120. package/core/components/molecules/fileList/FileListItem.tsx +2 -0
  121. package/core/components/molecules/fileUploader/FileUploaderItem.tsx +2 -0
  122. package/core/components/molecules/fileUploader/__stories__/index.story.tsx +156 -21
  123. package/core/components/molecules/inputMask/InputMask.tsx +1 -1
  124. package/core/components/molecules/inputMask/__tests__/__snapshots__/InputMask.test.tsx.snap +1 -0
  125. package/core/components/molecules/pagination/__tests__/__snapshots__/Pagination.test.tsx.snap +5 -1
  126. package/core/components/molecules/stepper/Step.tsx +2 -0
  127. package/core/components/molecules/tabs/Tabs.tsx +2 -0
  128. package/core/components/molecules/tabs/TabsWrapper.tsx +2 -0
  129. package/core/components/molecules/tabs/__stories__/CustomLabels.story.tsx +1 -1
  130. package/core/components/molecules/verificationCodeInput/VerificationCodeInput.tsx +8 -4
  131. package/core/components/molecules/verificationCodeInput/__stories__/index.story.tsx +3 -1
  132. package/core/components/molecules/verificationCodeInput/__tests__/__snapshots__/VerificationCodeInput.test.tsx.snap +1 -0
  133. package/core/components/organisms/calendar/Calendar.tsx +130 -8
  134. package/core/components/organisms/calendar/__tests__/Calendar.test.tsx +27 -0
  135. package/core/components/organisms/choiceList/ChoiceList.tsx +1 -1
  136. package/core/components/organisms/datePicker/DatePicker.tsx +30 -15
  137. package/core/components/organisms/datePicker/__tests__/DatePicker.test.tsx +136 -46
  138. package/core/components/organisms/datePicker/__tests__/__snapshots__/DatePicker.test.tsx.snap +4388 -1857
  139. package/core/components/organisms/dateRangePicker/__tests__/__snapshots__/DateRangePicker.test.tsx.snap +112 -40
  140. package/core/components/organisms/grid/Cell.tsx +4 -0
  141. package/core/components/organisms/grid/GridRow.tsx +4 -0
  142. package/core/components/organisms/grid/__stories__/_common_/fetchData.ts +2 -2
  143. package/core/components/organisms/horizontalNav/HorizontalNav.tsx +2 -0
  144. package/core/components/organisms/inlineMessage/InlineMessage.tsx +3 -5
  145. package/core/components/organisms/inlineMessage/__tests__/__snapshots__/InlineMessage.test.tsx.snap +30 -40
  146. package/core/components/organisms/navigation/VerticalNavigation.tsx +4 -0
  147. package/core/components/organisms/table/Table.tsx +1 -0
  148. package/core/components/organisms/table/__stories__/NestedTableWithNestedCard.story.tsx +4 -1
  149. package/core/components/organisms/table/__stories__/ResourceTable.story.tsx +3 -2
  150. package/core/components/organisms/table/__stories__/Selection.story.tsx +2 -2
  151. package/core/components/organisms/table/__stories__/TableAsDescriptionList.story.tsx +1 -1
  152. package/core/components/organisms/table/__stories__/TableAsOptionList.story.tsx +1 -1
  153. package/core/components/organisms/table/__stories__/syncTable.story.tsx +14 -6
  154. package/core/components/organisms/table/__stories__/variants/nestedRows.story.tsx +5 -2
  155. package/core/components/organisms/table/__stories__/variants/withHeader.story.tsx +0 -2
  156. package/core/components/organisms/timePicker/TimePicker.tsx +1 -1
  157. package/core/components/organisms/timePicker/__tests__/__snapshots__/TimePicker.test.tsx.snap +14 -2
  158. package/core/components/organisms/verticalNav/MenuItem.tsx +2 -0
  159. package/core/components/patterns/datePicker/datePickerWithPresets.story.tsx +126 -0
  160. package/core/components/patterns/dateRangePicker/withCustomPopover.story.tsx +8 -8
  161. package/core/components/patterns/forms/CreatePassword.story.tsx +1 -1
  162. package/core/components/patterns/forms/VerificationCodeInput.story.tsx +2 -2
  163. package/core/components/patterns/table/Table with Header/tableWithHeader.story.jsx +7 -7
  164. package/core/index.tsx +1 -0
  165. package/core/index.type.tsx +1 -0
  166. package/core/utils/Keys.ts +4 -0
  167. package/core/utils/__tests__/__snapshots__/TS.test.tsx.snap +544 -536
  168. package/core/utils/docPage/index.tsx +22 -17
  169. package/core/utils/testHelper.ts +1 -1
  170. package/core/utils/validators.ts +37 -34
  171. package/css/dist/index.css +1523 -1402
  172. package/css/dist/index.css.map +1 -1
  173. package/css/src/components/Legend.css +7 -7
  174. package/css/src/components/ProgressBar.css +1 -1
  175. package/css/src/components/avatarGroup.css +1 -1
  176. package/css/src/components/backdrop.css +12 -6
  177. package/css/src/components/badge.css +52 -52
  178. package/css/src/components/button.css +99 -94
  179. package/css/src/components/calendar.css +137 -126
  180. package/css/src/components/card.css +0 -1
  181. package/css/src/components/cardSubdued.css +3 -5
  182. package/css/src/components/chat.css +1 -1
  183. package/css/src/components/checkbox.css +71 -70
  184. package/css/src/components/chip.css +14 -13
  185. package/css/src/components/chipGroup.css +5 -5
  186. package/css/src/components/chipInput.css +1 -1
  187. package/css/src/components/choiceList.css +4 -4
  188. package/css/src/components/dateRangePicker.css +13 -13
  189. package/css/src/components/divider.css +20 -0
  190. package/css/src/components/dropdown.css +61 -61
  191. package/css/src/components/dropdownButton.css +36 -36
  192. package/css/src/components/dropzone.css +16 -20
  193. package/css/src/components/editableChipInput.css +10 -9
  194. package/css/src/components/editableDropdown.css +1 -1
  195. package/css/src/components/editableInput.css +1 -1
  196. package/css/src/components/emptyState.css +15 -15
  197. package/css/src/components/fileList.css +44 -45
  198. package/css/src/components/grid.css +217 -199
  199. package/css/src/components/horizontalNav.css +0 -1
  200. package/css/src/components/icon.css +1 -7
  201. package/css/src/components/inlineMessage.css +2 -1
  202. package/css/src/components/input.css +62 -62
  203. package/css/src/components/link.css +1 -1
  204. package/css/src/components/list.css +10 -10
  205. package/css/src/components/message.css +69 -70
  206. package/css/src/components/metaList.css +26 -26
  207. package/css/src/components/metricInput.css +3 -4
  208. package/css/src/components/modal.css +1 -1
  209. package/css/src/components/navigation.css +3 -3
  210. package/css/src/components/pageHeader.css +1 -2
  211. package/css/src/components/pagination.css +36 -36
  212. package/css/src/components/pills.css +19 -19
  213. package/css/src/components/placeholder.css +10 -5
  214. package/css/src/components/popover.css +2 -2
  215. package/css/src/components/progressRing.css +1 -1
  216. package/css/src/components/radio.css +74 -74
  217. package/css/src/components/slider.css +5 -5
  218. package/css/src/components/statusHints.css +15 -15
  219. package/css/src/components/switch.css +45 -41
  220. package/css/src/components/table.css +15 -15
  221. package/css/src/components/tabs.css +53 -53
  222. package/css/src/components/textarea.css +1 -1
  223. package/css/src/components/toast.css +53 -53
  224. package/css/src/components/verificationCodeInput.css +5 -6
  225. package/css/src/components/verticalNav.css +1 -2
  226. package/css/src/core/base.css +3 -0
  227. package/css/src/core/typography.css +1 -1
  228. package/css/src/core/utilities.css +1 -1
  229. package/css/src/tokens/index.css +63 -63
  230. package/css/src/utils/align.css +1 -1
  231. package/css/src/utils/background.css +1 -1
  232. package/css/src/utils/cursor.css +1 -1
  233. package/css/src/utils/display.css +1 -1
  234. package/css/src/utils/flex.css +1 -1
  235. package/css/src/utils/grid.css +1 -1
  236. package/css/src/utils/overflow.css +1 -1
  237. package/css/src/utils/position.css +1 -1
  238. package/css/src/utils/spacing.css +1 -1
  239. package/css/src/utils/utility.css +13 -13
  240. package/css/src/variables/index.css +1 -1
  241. package/dist/core/accessibility/utils/index.d.ts +4 -0
  242. package/dist/core/accessibility/utils/isEnterKey.d.ts +3 -0
  243. package/dist/core/accessibility/utils/isSpaceKey.d.ts +3 -0
  244. package/dist/core/accessibility/utils/useAccessibilityProps.d.ts +15 -0
  245. package/dist/core/components/atoms/divider/Divider.d.ts +15 -0
  246. package/dist/core/components/atoms/divider/index.d.ts +2 -0
  247. package/dist/core/components/atoms/icon/Icon.d.ts +3 -1
  248. package/dist/core/components/atoms/input/Input.d.ts +1 -1
  249. package/dist/core/components/atoms/popperWrapper/PopperWrapper.d.ts +50 -49
  250. package/dist/core/components/atoms/switchInput/Switch.d.ts +2 -1
  251. package/dist/core/components/organisms/calendar/Calendar.d.ts +31 -0
  252. package/dist/core/components/organisms/datePicker/DatePicker.d.ts +2 -0
  253. package/dist/core/components/patterns/datePicker/datePickerWithPresets.story.d.ts +15 -0
  254. package/dist/core/index.d.ts +1 -0
  255. package/dist/core/index.type.d.ts +1 -0
  256. package/dist/index.esm.js +829 -495
  257. package/dist/index.js +313 -144
  258. package/dist/index.js.map +1 -1
  259. package/dist/index.umd.js +1 -1
  260. package/dist/index.umd.js.br +0 -0
  261. package/dist/index.umd.js.gz +0 -0
  262. package/package.json +17 -14
  263. package/.husky/prepare-commit-msg +0 -6
  264. package/tslint.json +0 -30
@@ -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
  },
@@ -10,7 +10,7 @@ export const success = () => {
10
10
  const expanded = false;
11
11
  const loading = false;
12
12
 
13
- const children = text('children', 'Button');
13
+ const children = text('children', 'Submit');
14
14
 
15
15
  const style = {
16
16
  justifyContent: 'space-between',
@@ -28,6 +28,7 @@ export const success = () => {
28
28
  expanded={expanded}
29
29
  disabled={disabled}
30
30
  loading={loading}
31
+ aria-label="Submit form"
31
32
  >
32
33
  {children}
33
34
  </Button>
@@ -44,6 +45,7 @@ export const success = () => {
44
45
  expanded={expanded}
45
46
  disabled={true}
46
47
  loading={loading}
48
+ aria-label="Submit form"
47
49
  >
48
50
  {children}
49
51
  </Button>
@@ -60,28 +62,13 @@ export const success = () => {
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={'success'}
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='Submit form'\` to describe the action of button
85
+ `,
96
86
  },
97
87
  },
98
88
  },
@@ -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
  },
@@ -54,7 +54,9 @@ exports[`ChipGroup component
54
54
  <i
55
55
  class="material-icons material-icons-round Icon Icon--subtle 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>
@@ -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>
@@ -112,7 +116,9 @@ exports[`ChipGroup component
112
116
  <i
113
117
  class="material-icons material-icons-round Icon Icon--subtle 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>
@@ -12,7 +12,7 @@ export const all = () => {
12
12
  <div className="d-flex">
13
13
  <Collapsible expanded={expanded} hoverable={hoverable} height="100vh" onToggle={setExpanded}>
14
14
  <div className="d-flex pt-4">
15
- <Icon name="events" className="d-flex align-items-center px-5" />
15
+ <Icon name="events" className="d-flex align-items-center px-5 Text--regular" />
16
16
  {expanded && <Text className="mr-6">Collapsible</Text>}
17
17
  </div>
18
18
  </Collapsible>
@@ -31,7 +31,7 @@ const customCode = `() => {
31
31
  onToggle={setExpanded}
32
32
  >
33
33
  <div className="d-flex pt-4">
34
- <Icon name="events" className="d-flex align-items-center px-5" />
34
+ <Icon name="events" className="d-flex align-items-center px-5 Text--regular" />
35
35
  {expanded && (
36
36
  <Text className="mr-6">Collapsible</Text>
37
37
  )}
@@ -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
+ };
@@ -0,0 +1,35 @@
1
+ import * as React from 'react';
2
+ import { Divider, Row, Column, Card, CardBody, Radio, Heading } from '@/index';
3
+
4
+ export const HeaderDividerInCard = () => {
5
+ return (
6
+ <Row>
7
+ <Column size="6">
8
+ <Card className="pb-6" shadow="none">
9
+ <CardBody className="p-0">
10
+ <Row className="p-4">
11
+ <Heading size="s">Section 1</Heading>
12
+ </Row>
13
+
14
+ <Divider appearance="header" />
15
+
16
+ <div className="px-4 pt-4">
17
+ <Heading size="s">1. Little interest or pleasure in doing things.</Heading>
18
+ <br />
19
+ <Column className="px-4">
20
+ <Radio defaultChecked={true} label="Not at all" name="section" size="regular" value="Not at all" />
21
+ <Radio label="Several Days" name="section" size="regular" value="Several Days" />
22
+ <Radio label="More than half the days" name="section" size="regular" value="More than half days" />
23
+ </Column>
24
+ </div>
25
+ </CardBody>
26
+ </Card>
27
+ </Column>
28
+ </Row>
29
+ );
30
+ };
31
+
32
+ export default {
33
+ title: 'Components/Divider/Header Divider In Card',
34
+ component: Divider,
35
+ };
@@ -0,0 +1,49 @@
1
+ import * as React from 'react';
2
+ import { Divider, Row, Column, Card, CardBody, Heading, Input, Text } from '@/index';
3
+
4
+ export const IndentedDivider = () => {
5
+ return (
6
+ <Row>
7
+ <Column size="6">
8
+ <Heading size="m">Select assessment</Heading>
9
+ <Card>
10
+ <CardBody className="p-0">
11
+ <Row className="p-6">
12
+ <Column size={8}>
13
+ <Input className="w-25" icon="search" name="input" placeholder="Search" />
14
+ </Column>
15
+ </Row>
16
+
17
+ <Divider appearance="header" />
18
+
19
+ <div className="pl-6">
20
+ <div className="py-6">
21
+ <Text>Functional Assessment - Initial</Text>
22
+ </div>
23
+ <Divider />
24
+
25
+ <div className="py-6">
26
+ <Text>Functional Assessment - Discharge</Text>
27
+ </div>
28
+ <Divider />
29
+
30
+ <div className="py-6">
31
+ <Text>Social Influence of Health</Text>
32
+ </div>
33
+ <Divider />
34
+
35
+ <div className="py-6">
36
+ <Text>Social Determinants of Health</Text>
37
+ </div>
38
+ </div>
39
+ </CardBody>
40
+ </Card>
41
+ </Column>
42
+ </Row>
43
+ );
44
+ };
45
+
46
+ export default {
47
+ title: 'Components/Divider/Indented Divider',
48
+ component: Divider,
49
+ };
@@ -0,0 +1,51 @@
1
+ import * as React from 'react';
2
+ import { Divider, Row, Column, Card, CardBody, Text, Heading, Radio } from '@/index';
3
+
4
+ export const VerticalDivider = () => {
5
+ return (
6
+ <Row>
7
+ <Column size="8">
8
+ <Card shadow="none">
9
+ <CardBody className="p-0">
10
+ <Row>
11
+ <Column className="p-6">
12
+ <Text appearance="disabled">MSSP - Track 3</Text>
13
+ <br />
14
+ <Text small={true}>Medicare</Text>
15
+ <br />
16
+ <div className="pt-6">
17
+ <Text appearance="disabled" small={true}>
18
+ Subscriber
19
+ </Text>
20
+ <br />
21
+ <Text appearance="disabled">LAWSON, JOY (Self)</Text>
22
+ <br />
23
+ <Text weight="medium">ZGP123456789</Text>
24
+ </div>
25
+ </Column>
26
+
27
+ <Divider vertical={true} />
28
+
29
+ <Column className="p-6">
30
+ <div>
31
+ <Heading size="s">1. Little interest or pleasure in doing things.</Heading>
32
+ <br />
33
+ <Column className="px-4">
34
+ <Radio defaultChecked={true} label="Not at all" name="section" size="regular" value="Not at all" />
35
+ <Radio label="Several Days" name="section" size="regular" value="Several Days" />
36
+ <Radio label="More than half the days" name="section" size="regular" value="More than half days" />
37
+ </Column>
38
+ </div>
39
+ </Column>
40
+ </Row>
41
+ </CardBody>
42
+ </Card>
43
+ </Column>
44
+ </Row>
45
+ );
46
+ };
47
+
48
+ export default {
49
+ title: 'Components/Divider/Vertical Divider',
50
+ component: Divider,
51
+ };
@@ -0,0 +1,91 @@
1
+ import * as React from 'react';
2
+ import { Divider, Row, Column, Card, CardBody, Text, Heading } from '@/index';
3
+
4
+ export const All = () => {
5
+ return (
6
+ <Row>
7
+ <Column size="10">
8
+ <Card shadow="none">
9
+ <CardBody className="p-0">
10
+ <Row className="py-4 px-6">
11
+ <Heading>Assessment Report</Heading>
12
+ </Row>
13
+
14
+ <Divider appearance="header" />
15
+ <Row>
16
+ <Column>
17
+ <div className="p-6">
18
+ <Heading size="s">Select Assessment</Heading>
19
+ </div>
20
+ <Divider />
21
+ <div className="pl-6">
22
+ <div className="py-4">
23
+ <Text>Functional Assessment - Initial</Text>
24
+ </div>
25
+ <Divider />
26
+
27
+ <div className="py-4">
28
+ <Text>Social Influence of Health</Text>
29
+ </div>
30
+ <Divider />
31
+
32
+ <div className="py-4">
33
+ <Text>Social Determinants of Health</Text>
34
+ </div>
35
+ <Divider />
36
+
37
+ <div className="py-4">
38
+ <Text>Functional Assessment - Discharge</Text>
39
+ </div>
40
+ </div>
41
+ </Column>
42
+ <Divider vertical={true} />
43
+
44
+ <Column>
45
+ <div className="p-6">
46
+ <Text appearance="disabled">MSSP - Track 3</Text>
47
+ <br />
48
+ <Text small={true}>Medicare</Text>
49
+ <br />
50
+ <div className="pt-6">
51
+ <Text appearance="disabled" small={true}>
52
+ Subscriber
53
+ </Text>
54
+ <br />
55
+ <Text appearance="disabled">LAWSON, JOY (Self)</Text>
56
+ <br />
57
+ <Text weight="medium">ZGP123456789</Text>
58
+ </div>
59
+ </div>
60
+ <Divider />
61
+ <Row className="p-6">
62
+ <Column>
63
+ <Text appearance="disabled" small={true}>
64
+ Last attr:
65
+ </Text>
66
+ <Text className="ml-3" small={true}>
67
+ 04/19
68
+ </Text>
69
+ </Column>
70
+ <Column>
71
+ <Text appearance="disabled" small={true}>
72
+ Plan ID:
73
+ </Text>
74
+ <Text className="ml-3" small={true}>
75
+ 040
76
+ </Text>
77
+ </Column>
78
+ </Row>
79
+ </Column>
80
+ </Row>
81
+ </CardBody>
82
+ </Card>
83
+ </Column>
84
+ </Row>
85
+ );
86
+ };
87
+
88
+ export default {
89
+ title: 'Components/Divider/All',
90
+ component: Divider,
91
+ };
@@ -0,0 +1,27 @@
1
+ import * as React from 'react';
2
+ import { Divider, Row, Column, Text } from '@/index';
3
+
4
+ export const HorizontalDivider = () => {
5
+ return (
6
+ <div>
7
+ <Row>
8
+ <Column className="p-6">
9
+ <Divider />
10
+ <br />
11
+ <Text weight="strong">Default Divider</Text>
12
+ </Column>
13
+
14
+ <Column className="p-6">
15
+ <Divider appearance="header" />
16
+ <br />
17
+ <Text weight="strong">Header Divider</Text>
18
+ </Column>
19
+ </Row>
20
+ </div>
21
+ );
22
+ };
23
+
24
+ export default {
25
+ title: 'Components/Divider/variants/Horizontal Divider',
26
+ component: Divider,
27
+ };