@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.
- package/.eslintrc.json +54 -0
- package/.github/workflows/chromatic.yml +5 -0
- package/.github/workflows/main.yml +2 -2
- package/.github/workflows/pull_request.yml +2 -2
- package/.github/workflows/test.yml +1 -1
- package/.husky/commit-msg +4 -0
- package/.prettierrc +2 -2
- package/.storybook/main.js +4 -0
- package/.vscode/settings.json +11 -0
- package/CHANGELOG.md +78 -0
- package/CONTRIBUTING.md +180 -98
- package/commitlint.config.js +1 -0
- package/core/accessibility/utils/index.ts +5 -0
- package/core/accessibility/utils/isEnterKey.ts +5 -0
- package/core/accessibility/utils/isSpaceKey.ts +5 -0
- package/core/accessibility/utils/useAccessibilityProps.ts +33 -0
- package/core/common.type.tsx +22 -0
- package/core/components/atoms/_chip/__tests__/__snapshots__/_chip.test.tsx.snap +17 -9
- package/core/components/atoms/_chip/index.tsx +19 -3
- package/core/components/atoms/avatar/Avatar.tsx +4 -14
- package/core/components/atoms/avatar/__stories__/variants/Appearance.story.tsx +3 -2
- package/core/components/atoms/avatar/__tests__/Avatar.test.tsx +14 -9
- package/core/components/atoms/avatarGroup/AvatarGroup.tsx +3 -5
- package/core/components/atoms/badge/Badge.tsx +2 -12
- package/core/components/atoms/badge/__tests__/Badge.test.tsx +22 -7
- package/core/components/atoms/badge/_stories_/variants/Appearance.story.tsx +3 -2
- package/core/components/atoms/badge/_stories_/variants/Subtle.story.tsx +3 -2
- package/core/components/atoms/button/Button.tsx +10 -7
- package/core/components/atoms/button/__stories__/Alert.story.tsx +8 -1
- package/core/components/atoms/button/__stories__/Cancel.story.tsx +4 -1
- package/core/components/atoms/button/__stories__/IconButtonGroup.story.tsx +12 -3
- package/core/components/atoms/button/__stories__/IconButtonSecondary.story.tsx +6 -1
- package/core/components/atoms/button/__stories__/IconLeftSecondary.story.tsx +4 -1
- package/core/components/atoms/button/__stories__/IconRightSecondary.story.tsx +4 -1
- package/core/components/atoms/button/__stories__/IconTransparent.story.tsx +4 -1
- package/core/components/atoms/button/__stories__/LabelButtonGroup.story.tsx +14 -3
- package/core/components/atoms/button/__stories__/LargeIconExpanded.story.tsx +4 -1
- package/core/components/atoms/button/__stories__/LoadingPrimary.story.tsx +4 -1
- package/core/components/atoms/button/__stories__/Primary.story.tsx +5 -2
- package/core/components/atoms/button/__stories__/SplitButton.story.tsx +6 -1
- package/core/components/atoms/button/__stories__/Transparent.story.tsx +8 -1
- package/core/components/atoms/button/__stories__/index.story.tsx +12 -2
- package/core/components/atoms/button/__stories__/variants/Appearance.story.tsx +6 -2
- package/core/components/atoms/button/__stories__/variants/Expanded.story.tsx +6 -2
- package/core/components/atoms/button/__stories__/variants/Size.story.tsx +4 -0
- package/core/components/atoms/button/__stories__/variants/icon/Icon.story.tsx +15 -0
- package/core/components/atoms/button/__stories__/variants/icon/IconLeft.story.tsx +6 -2
- package/core/components/atoms/button/__stories__/variants/icon/IconRight.story.tsx +6 -2
- package/core/components/atoms/button/__stories__/variants/state/Alert.story.tsx +7 -17
- package/core/components/atoms/button/__stories__/variants/state/Basic.story.tsx +9 -17
- package/core/components/atoms/button/__stories__/variants/state/Primary.story.tsx +7 -17
- package/core/components/atoms/button/__stories__/variants/state/Transparent.story.tsx +13 -17
- package/core/components/atoms/button/__tests__/Button.test.tsx +1 -1
- package/core/components/atoms/button/__tests__/__snapshots__/Button.test.tsx.snap +0 -137
- package/core/components/atoms/card/__stories__/empty.story.tsx +1 -1
- package/core/components/atoms/card/__stories__/nested.story.tsx +1 -1
- package/core/components/atoms/card/__stories__/scroll.story.tsx +1 -1
- package/core/components/atoms/checkbox/Checkbox.tsx +8 -9
- package/core/components/atoms/checkbox/__stories__/variants/Size.story.tsx +2 -2
- package/core/components/atoms/chip/Chip.tsx +3 -2
- package/core/components/atoms/chip/__stories__/variants/Selection.story.tsx +17 -0
- package/core/components/atoms/chip/__stories__/variants/Type.story.tsx +2 -2
- package/core/components/atoms/chip/__tests__/Chip.test.tsx +7 -0
- package/core/components/atoms/chipGroup/__tests__/__snapshots__/chipGroup.test.tsx.snap +11 -5
- package/core/components/atoms/chipGroup/__tests__/chipGroup.test.tsx +2 -2
- package/core/components/atoms/chipGroup/_stories_/index.story.tsx +2 -2
- package/core/components/atoms/collapsible/__tests__/__snapshots__/Collapsible.test.tsx.snap +8 -0
- package/core/components/atoms/divider/Divider.tsx +44 -0
- package/core/components/atoms/divider/__stories__/BasicDividerInCard.story.tsx +74 -0
- package/core/components/atoms/divider/__stories__/HeaderDividerInCard.story.tsx +35 -0
- package/core/components/atoms/divider/__stories__/IndentedDivider.story.tsx +49 -0
- package/core/components/atoms/divider/__stories__/Vertical.story.tsx +51 -0
- package/core/components/atoms/divider/__stories__/index.story.tsx +91 -0
- package/core/components/atoms/divider/__stories__/variants/HorizontalDivider.story.tsx +27 -0
- package/core/components/atoms/divider/__tests__/Divider.test.tsx +50 -0
- package/core/components/atoms/divider/__tests__/__snapshots__/Divider.test.tsx.snap +53 -0
- package/core/components/atoms/divider/index.tsx +2 -0
- package/core/components/atoms/dropdown/Dropdown.tsx +18 -17
- package/core/components/atoms/dropdown/DropdownButton.tsx +2 -2
- package/core/components/atoms/dropdown/DropdownList.tsx +18 -7
- package/core/components/atoms/dropdown/Loading.tsx +1 -1
- package/core/components/atoms/dropdown/__stories__/CustomSearchPlaceholder.story.tsx +45 -0
- package/core/components/atoms/dropdown/__stories__/_common_/types.tsx +3 -0
- package/core/components/atoms/dropdown/__stories__/variants/Size.story.tsx +2 -2
- package/core/components/atoms/dropdown/__stories__/variants/controlledDropdown/MultiSelect.story.tsx +28 -18
- package/core/components/atoms/dropdown/__tests__/Dropdown.test.tsx +12 -1
- package/core/components/atoms/dropdown/__tests__/Loading.test.tsx +0 -1
- package/core/components/atoms/dropdown/option/DefaultOption.tsx +3 -0
- package/core/components/atoms/dropdown/option/IconOption.tsx +3 -0
- package/core/components/atoms/dropdown/option/IconWithMetaOption.tsx +3 -0
- package/core/components/atoms/dropdown/option/MetaOption.tsx +3 -0
- package/core/components/atoms/dropdown/option/index.tsx +1 -1
- package/core/components/atoms/editable/Editable.tsx +3 -0
- package/core/components/atoms/heading/Heading.tsx +4 -4
- package/core/components/atoms/heading/__stories__/variants/Appearance.story.tsx +3 -2
- package/core/components/atoms/heading/__tests__/Heading.test.tsx +4 -3
- package/core/components/atoms/icon/Icon.tsx +16 -5
- package/core/components/atoms/icon/__stories__/variants/Image.story.tsx +6 -1
- package/core/components/atoms/icon/__tests__/__snapshots__/Icon.test.tsx.snap +74 -0
- package/core/components/atoms/input/Input.tsx +17 -7
- package/core/components/atoms/input/__stories__/BasicInput.story.tsx +2 -1
- package/core/components/atoms/input/__stories__/InputWithCaption.story.tsx +91 -9
- package/core/components/atoms/input/__stories__/InputWithLabel.story.tsx +11 -3
- package/core/components/atoms/input/__stories__/LabelPosition.story.tsx +46 -4
- package/core/components/atoms/input/__stories__/RequiredVsOptional.story.tsx +12 -8
- package/core/components/atoms/input/__stories__/variants/controlledInput.story.tsx +46 -0
- package/core/components/atoms/input/__stories__/variants/types/BasicInput.story.tsx +2 -2
- package/core/components/atoms/input/__stories__/variants/types/IconLeft.story.tsx +2 -10
- package/core/components/atoms/input/__stories__/variants/types/WithLabel.story.tsx +1 -9
- package/core/components/atoms/input/__tests__/__snapshots__/Input.test.tsx.snap +19 -0
- package/core/components/atoms/label/Label.tsx +1 -1
- package/core/components/atoms/legend/Legend.tsx +5 -2
- package/core/components/atoms/legend/__stories__/variants/labelAppearance.story.tsx +2 -2
- package/core/components/atoms/link/Link.tsx +4 -4
- package/core/components/atoms/message/Message.tsx +12 -12
- package/core/components/atoms/message/__stories__/index.story.tsx +1 -1
- package/core/components/atoms/message/__stories__/variants/Appearance.story.tsx +1 -1
- package/core/components/atoms/message/__stories__/variants/AppearanceTitle.story.tsx +1 -1
- package/core/components/atoms/message/__tests__/Message.test.tsx +1 -6
- package/core/components/atoms/message/__tests__/__snapshots__/Message.test.tsx.snap +0 -45
- package/core/components/atoms/metaList/__tests__/MetaList.test.tsx +2 -2
- package/core/components/atoms/metricInput/MetricInput.tsx +17 -7
- package/core/components/atoms/metricInput/__stories__/DefaultMetric.story.tsx +8 -2
- package/core/components/atoms/metricInput/__stories__/WithPrefix.story.tsx +6 -2
- package/core/components/atoms/metricInput/__stories__/index.story.tsx +1 -0
- package/core/components/atoms/metricInput/__stories__/variants/Controlled.story.tsx +2 -0
- package/core/components/atoms/metricInput/__stories__/variants/Size.story.tsx +2 -2
- package/core/components/atoms/metricInput/__stories__/withSuffix.story.tsx +6 -2
- package/core/components/atoms/metricInput/__tests__/__snapshots__/MetricInput.test.tsx.snap +20 -4
- package/core/components/atoms/multiSlider/Handle.tsx +3 -0
- package/core/components/atoms/multiSlider/SliderUtils.tsx +1 -4
- package/core/components/atoms/multiSlider/index.tsx +9 -4
- package/core/components/atoms/outsideClick/OutsideClick.tsx +1 -2
- package/core/components/atoms/paragraph/Paragraph.tsx +2 -2
- package/core/components/atoms/paragraph/__stories__/variants/Appearance.story.tsx +2 -2
- package/core/components/atoms/paragraph/__tests__/Paragraph.test.tsx +2 -2
- package/core/components/atoms/pills/Pills.tsx +2 -12
- package/core/components/atoms/pills/__stories__/variants/Appearance.story.tsx +3 -2
- package/core/components/atoms/pills/__stories__/variants/Subtle.story.tsx +3 -2
- package/core/components/atoms/pills/__tests__/Pills.test.tsx +3 -2
- package/core/components/atoms/placeholderImage/PlaceholderImage.tsx +2 -2
- package/core/components/atoms/placeholderImage/__stories__/variants/Size.story.tsx +2 -2
- package/core/components/atoms/placeholderParagraph/PlaceholderParagraph.tsx +2 -2
- package/core/components/atoms/placeholderParagraph/__stories__/variants/Size.story.tsx +2 -2
- package/core/components/atoms/popperWrapper/PopperWrapper.tsx +2 -6
- package/core/components/atoms/progressRing/ProgressRing.tsx +2 -2
- package/core/components/atoms/progressRing/__stories__/variants/Size.story.tsx +1 -1
- package/core/components/atoms/radio/Radio.tsx +4 -5
- package/core/components/atoms/rangeSlider/RangeSlider.tsx +1 -2
- package/core/components/atoms/rangeSlider/__stories__/index.story.tsx +1 -2
- package/core/components/atoms/rangeSlider/__stories__/variants/Controlled.story.tsx +1 -2
- package/core/components/atoms/rangeSlider/__stories__/variants/CustomLabels.story.tsx +1 -2
- package/core/components/atoms/spinner/Spinner.tsx +4 -4
- package/core/components/atoms/spinner/__stories__/variants/Appearance.story.tsx +2 -2
- package/core/components/atoms/spinner/__stories__/variants/Size.story.tsx +1 -1
- package/core/components/atoms/statusHint/StatusHint.tsx +5 -3
- package/core/components/atoms/statusHint/__stories__/variants/Appearance.story.tsx +3 -2
- package/core/components/atoms/statusHint/__tests__/StatusHint.test.tsx +3 -2
- package/core/components/atoms/subheading/Subheading.tsx +2 -2
- package/core/components/atoms/subheading/__stories__/variants/Appearance.story.tsx +3 -2
- package/core/components/atoms/subheading/__tests__/Subheading.test.tsx +3 -2
- package/core/components/atoms/switchInput/Switch.tsx +14 -9
- package/core/components/atoms/switchInput/__stories__/DefaultSwitch.story.tsx +4 -1
- package/core/components/atoms/switchInput/__stories__/OffState.story.tsx +4 -1
- package/core/components/atoms/switchInput/__stories__/index.story.tsx +26 -3
- package/core/components/atoms/switchInput/__stories__/variants/Size.story.tsx +10 -1
- package/core/components/atoms/switchInput/__stories__/variants/State.story.tsx +9 -2
- package/core/components/atoms/text/Text.tsx +4 -4
- package/core/components/atoms/text/__stories__/variants/Appearance.story.tsx +2 -2
- package/core/components/atoms/text/__tests__/Text.test.tsx +2 -3
- package/core/components/atoms/textarea/__stories__/TextareaWithCaption.story.tsx +9 -3
- package/core/components/atoms/textarea/__stories__/defaultTextarea.story.tsx +10 -2
- package/core/components/atoms/textarea/__stories__/index.story.tsx +1 -0
- package/core/components/atoms/textarea/__stories__/variants/Disable.story.tsx +1 -0
- package/core/components/atoms/toast/ActionButton.tsx +2 -2
- package/core/components/atoms/toast/Toast.tsx +11 -6
- package/core/components/atoms/toast/__stories__/index.story.tsx +2 -6
- package/core/components/atoms/toast/__stories__/variants/Appearance.story.tsx +3 -2
- package/core/components/atoms/toast/__stories__/variants/ToastMessage.story.tsx +3 -2
- package/core/components/atoms/toast/__stories__/variants/ToastWithAction.story.tsx +3 -2
- package/core/components/atoms/toast/__tests__/Toast.test.tsx +1 -1
- package/core/components/atoms/toast/__tests__/__snapshots__/Toast.test.tsx.snap +24 -125
- package/core/components/css-utilities/Schema.tsx +1 -1
- package/core/components/css-utilities/Spacing/Schema.tsx +1 -1
- package/core/components/molecules/chatMessage/Box.tsx +3 -0
- package/core/components/molecules/chipInput/ChipInput.tsx +3 -0
- package/core/components/molecules/chipInput/__tests__/__snapshots__/ChipInput.test.tsx.snap +14 -2
- package/core/components/molecules/dropzone/Dropzone.tsx +6 -3
- package/core/components/molecules/dropzone/DropzoneBase.tsx +22 -38
- package/core/components/molecules/dropzone/FileSelectorUtils.tsx +1 -1
- package/core/components/molecules/dropzone/__stories__/index.story.tsx +151 -41
- package/core/components/molecules/dropzone/__tests__/Dropzone.test.tsx +2 -2
- package/core/components/molecules/dropzone/utils.tsx +6 -4
- package/core/components/molecules/editableChipInput/EditableChipInput.tsx +9 -5
- package/core/components/molecules/editableChipInput/__stories__/Uncontrolled.story.tsx +1 -1
- package/core/components/molecules/editableChipInput/__tests__/__snapshots__/EditableChipInput.test.tsx.snap +12 -4
- package/core/components/molecules/editableDropdown/EditableDropdown.tsx +2 -2
- package/core/components/molecules/editableInput/EditableInput.tsx +13 -4
- package/core/components/molecules/emptyState/EmptyState.tsx +9 -5
- package/core/components/molecules/emptyState/__stories__/pageNotLoadedWithSVG.story.tsx +26 -26
- package/core/components/molecules/fileList/FileListItem.tsx +3 -2
- package/core/components/molecules/fileUploader/FileUploaderItem.tsx +3 -2
- package/core/components/molecules/fileUploader/FileUploaderStatus.tsx +1 -1
- package/core/components/molecules/fileUploader/__stories__/_common_/types.tsx +3 -0
- package/core/components/molecules/fileUploader/__stories__/index.story.tsx +3 -222
- package/core/components/molecules/fullscreenModal/FullscreenModal.tsx +5 -7
- package/core/components/molecules/inputMask/InputMask.tsx +212 -146
- package/core/components/molecules/inputMask/__stories__/index.story.tsx +24 -0
- package/core/components/molecules/inputMask/__tests__/__snapshots__/InputMask.test.tsx.snap +1 -0
- package/core/components/molecules/modal/Modal.tsx +4 -6
- package/core/components/molecules/modal/__stories__/Confirmation.story.tsx +1 -1
- package/core/components/molecules/pagination/__tests__/__snapshots__/Pagination.test.tsx.snap +5 -1
- package/core/components/molecules/placeholder/Placeholder.tsx +2 -2
- package/core/components/molecules/popover/Popover.tsx +2 -9
- package/core/components/molecules/sidesheet/Sidesheet.tsx +5 -7
- package/core/components/molecules/sidesheet/__stories__/variants/CustomHeader.story.tsx +172 -0
- package/core/components/molecules/stepper/Step.tsx +2 -0
- package/core/components/molecules/tabs/Tabs.tsx +2 -0
- package/core/components/molecules/tabs/TabsWrapper.tsx +2 -0
- package/core/components/molecules/tabs/__stories__/CustomLabels.story.tsx +1 -1
- package/core/components/molecules/tooltip/Tooltip.tsx +4 -4
- package/core/components/molecules/verificationCodeInput/VerificationCodeInput.tsx +8 -4
- package/core/components/molecules/verificationCodeInput/__stories__/index.story.tsx +3 -1
- package/core/components/molecules/verificationCodeInput/__tests__/__snapshots__/VerificationCodeInput.test.tsx.snap +1 -0
- package/core/components/organisms/calendar/Calendar.tsx +130 -8
- package/core/components/organisms/calendar/__stories__/variants/firstDayOfWeek.story.tsx +2 -2
- package/core/components/organisms/calendar/__tests__/Calendar.test.tsx +27 -0
- package/core/components/organisms/calendar/utility.ts +3 -3
- package/core/components/organisms/choiceList/ChoiceList.tsx +12 -12
- package/core/components/organisms/datePicker/DatePicker.tsx +31 -16
- package/core/components/organisms/datePicker/Trigger.tsx +1 -5
- package/core/components/organisms/datePicker/__tests__/__snapshots__/DatePicker.test.tsx.snap +4518 -4479
- package/core/components/organisms/dateRangePicker/DateRangePicker.tsx +9 -10
- package/core/components/organisms/dateRangePicker/SingleInputTrigger.tsx +0 -1
- package/core/components/organisms/dateRangePicker/Trigger.tsx +2 -2
- package/core/components/organisms/dateRangePicker/__stories__/variants/monthsInView.story.tsx +2 -2
- package/core/components/organisms/dateRangePicker/__tests__/__snapshots__/DateRangePicker.test.tsx.snap +112 -40
- package/core/components/organisms/grid/Cell.tsx +23 -19
- package/core/components/organisms/grid/Grid.tsx +3 -4
- package/core/components/organisms/grid/GridBody.tsx +0 -1
- package/core/components/organisms/grid/GridContext.ts +1 -1
- package/core/components/organisms/grid/GridRow.tsx +4 -0
- package/core/components/organisms/grid/__stories__/_common_/editableSchema.tsx +1 -3
- package/core/components/organisms/grid/__stories__/_common_/fetchData.ts +3 -3
- package/core/components/organisms/grid/__stories__/_common_/loaderSchema.ts +0 -2
- package/core/components/organisms/grid/__stories__/_common_/schema.tsx +1 -3
- package/core/components/organisms/grid/__stories__/_common_/simpleLoaderSchema.ts +0 -2
- package/core/components/organisms/grid/__stories__/_common_/statusSchema.ts +0 -2
- package/core/components/organisms/horizontalNav/HorizontalNav.tsx +2 -0
- package/core/components/organisms/inlineMessage/InlineMessage.tsx +5 -7
- package/core/components/organisms/inlineMessage/__tests__/InlineMessage.test.tsx +3 -2
- package/core/components/organisms/inlineMessage/__tests__/__snapshots__/InlineMessage.test.tsx.snap +30 -40
- package/core/components/organisms/list/__stories__/_common_/types.tsx +3 -0
- package/core/components/organisms/list/__stories__/index.story.tsx +0 -16
- package/core/components/organisms/navigation/VerticalNavigation.tsx +4 -0
- package/core/components/organisms/table/Table.tsx +3 -2
- package/core/components/organisms/table/__stories__/CompressedTable.story.tsx +1 -1
- package/core/components/organisms/table/__stories__/DataTable.story.tsx +1 -1
- package/core/components/organisms/table/__stories__/NestedTableWithNestedCard.story.tsx +1 -1
- package/core/components/organisms/table/__stories__/PinnedColumn.story.tsx +1 -1
- package/core/components/organisms/table/__stories__/ResourceTable.story.tsx +4 -3
- package/core/components/organisms/table/__stories__/Selection.story.tsx +2 -2
- package/core/components/organisms/table/__stories__/StandardTable.story.tsx +1 -1
- package/core/components/organisms/table/__stories__/TableAsDescriptionList.story.tsx +2 -2
- package/core/components/organisms/table/__stories__/TableAsOptionList.story.tsx +2 -2
- package/core/components/organisms/table/__stories__/TightStory.story.tsx +1 -1
- package/core/components/organisms/table/__stories__/_common_/types.tsx +3 -0
- package/core/components/organisms/table/__stories__/syncTable.story.tsx +14 -6
- package/core/components/organisms/table/__stories__/variants/showHead.story.tsx +2 -2
- package/core/components/organisms/table/__stories__/variants/showMenu.story.tsx +2 -2
- package/core/components/organisms/table/__stories__/variants/size.story.tsx +2 -2
- package/core/components/organisms/table/__stories__/variants/type.story.tsx +2 -2
- package/core/components/organisms/table/__stories__/variants/withCheckbox.story.tsx +2 -2
- package/core/components/organisms/table/__stories__/variants/withHeader.story.tsx +0 -2
- package/core/components/organisms/table/__stories__/variants/withPagination.story.tsx +2 -2
- package/core/components/organisms/timePicker/TimePicker.tsx +4 -8
- package/core/components/organisms/timePicker/__tests__/__snapshots__/TimePicker.test.tsx.snap +14 -2
- package/core/components/organisms/verticalNav/MenuItem.tsx +2 -0
- package/core/components/organisms/verticalNav/__stories__/schema.tsx +0 -2
- package/core/components/organisms/verticalNav/__tests__/VerticalNav.test.tsx +1 -2
- package/core/components/patterns/datePicker/datePickerWithPresets.story.tsx +126 -0
- package/core/components/patterns/dateRangePicker/withCustomPopover.story.tsx +8 -8
- package/core/components/patterns/forms/CreatePassword.story.tsx +1 -1
- package/core/components/patterns/forms/VerificationCodeInput.story.tsx +2 -2
- package/core/components/patterns/table/Table with Header/tableWithHeader.story.jsx +7 -7
- package/core/global.d.ts +9 -0
- package/core/index.tsx +2 -1
- package/core/index.type.tsx +1 -0
- package/core/utils/Keys.ts +4 -0
- package/core/utils/__tests__/__snapshots__/TS.test.tsx.snap +562 -541
- package/core/utils/docPage/generateImports.tsx +2 -3
- package/core/utils/docPage/index.tsx +52 -37
- package/core/utils/docPage/sandbox.tsx +14 -7
- package/core/utils/overlayHelper.ts +7 -3
- package/core/utils/testHelper.ts +2 -2
- package/core/utils/types.tsx +1 -1
- package/core/utils/validators.ts +37 -34
- package/css/dist/index.css +1550 -1415
- package/css/dist/index.css.map +1 -1
- package/css/src/components/Legend.css +7 -7
- package/css/src/components/ProgressBar.css +1 -1
- package/css/src/components/avatarGroup.css +1 -1
- package/css/src/components/backdrop.css +12 -6
- package/css/src/components/badge.css +52 -52
- package/css/src/components/button.css +95 -94
- package/css/src/components/calendar.css +137 -126
- package/css/src/components/card.css +0 -1
- package/css/src/components/cardSubdued.css +3 -5
- package/css/src/components/chat.css +1 -1
- package/css/src/components/checkbox.css +71 -70
- package/css/src/components/chip.css +20 -17
- package/css/src/components/chipGroup.css +5 -5
- package/css/src/components/chipInput.css +1 -1
- package/css/src/components/choiceList.css +4 -4
- package/css/src/components/dateRangePicker.css +13 -13
- package/css/src/components/divider.css +20 -0
- package/css/src/components/dropdown.css +61 -61
- package/css/src/components/dropdownButton.css +36 -36
- package/css/src/components/dropzone.css +16 -20
- package/css/src/components/editableChipInput.css +10 -9
- package/css/src/components/editableDropdown.css +1 -1
- package/css/src/components/editableInput.css +1 -1
- package/css/src/components/emptyState.css +15 -15
- package/css/src/components/fileList.css +44 -45
- package/css/src/components/fullscreenModal.css +4 -3
- package/css/src/components/grid.css +217 -199
- package/css/src/components/horizontalNav.css +0 -1
- package/css/src/components/icon.css +1 -7
- package/css/src/components/inlineMessage.css +2 -1
- package/css/src/components/input.css +62 -62
- package/css/src/components/link.css +1 -1
- package/css/src/components/list.css +10 -10
- package/css/src/components/message.css +64 -70
- package/css/src/components/metaList.css +26 -26
- package/css/src/components/metricInput.css +3 -4
- package/css/src/components/modal.css +1 -1
- package/css/src/components/navigation.css +3 -3
- package/css/src/components/pageHeader.css +1 -2
- package/css/src/components/pagination.css +36 -36
- package/css/src/components/pills.css +19 -19
- package/css/src/components/placeholder.css +10 -5
- package/css/src/components/popover.css +2 -2
- package/css/src/components/progressRing.css +1 -1
- package/css/src/components/radio.css +74 -74
- package/css/src/components/slider.css +5 -5
- package/css/src/components/statusHints.css +15 -15
- package/css/src/components/switch.css +66 -41
- package/css/src/components/table.css +15 -15
- package/css/src/components/tabs.css +53 -53
- package/css/src/components/textarea.css +1 -1
- package/css/src/components/toast.css +51 -56
- package/css/src/components/verificationCodeInput.css +5 -6
- package/css/src/components/verticalNav.css +1 -2
- package/css/src/core/base.css +3 -0
- package/css/src/core/typography.css +1 -1
- package/css/src/core/utilities.css +1 -1
- package/css/src/tokens/index.css +63 -63
- package/css/src/utils/align.css +1 -1
- package/css/src/utils/background.css +1 -1
- package/css/src/utils/cursor.css +1 -1
- package/css/src/utils/display.css +1 -1
- package/css/src/utils/flex.css +1 -1
- package/css/src/utils/grid.css +1 -1
- package/css/src/utils/overflow.css +1 -1
- package/css/src/utils/position.css +1 -1
- package/css/src/utils/spacing.css +1 -1
- package/css/src/utils/utility.css +13 -13
- package/css/src/variables/index.css +6 -3
- package/dist/core/accessibility/utils/index.d.ts +4 -0
- package/dist/core/accessibility/utils/isEnterKey.d.ts +3 -0
- package/dist/core/accessibility/utils/isSpaceKey.d.ts +3 -0
- package/dist/core/accessibility/utils/useAccessibilityProps.d.ts +18 -0
- package/dist/core/common.type.d.ts +12 -0
- package/dist/core/components/atoms/avatar/Avatar.d.ts +4 -4
- package/dist/core/components/atoms/avatarGroup/AvatarGroup.d.ts +2 -3
- package/dist/core/components/atoms/badge/Badge.d.ts +2 -2
- package/dist/core/components/atoms/button/Button.d.ts +6 -6
- package/dist/core/components/atoms/checkbox/Checkbox.d.ts +3 -3
- package/dist/core/components/atoms/chip/Chip.d.ts +2 -2
- package/dist/core/components/atoms/divider/Divider.d.ts +15 -0
- package/dist/core/components/atoms/divider/index.d.ts +2 -0
- package/dist/core/components/atoms/dropdown/Dropdown.d.ts +18 -17
- package/dist/core/components/atoms/dropdown/DropdownButton.d.ts +2 -2
- package/dist/core/components/atoms/dropdown/DropdownList.d.ts +4 -3
- package/dist/core/components/atoms/dropdown/option/index.d.ts +1 -1
- package/dist/core/components/atoms/heading/Heading.d.ts +4 -4
- package/dist/core/components/atoms/icon/Icon.d.ts +5 -3
- package/dist/core/components/atoms/input/Input.d.ts +4 -4
- package/dist/core/components/atoms/legend/Legend.d.ts +2 -2
- package/dist/core/components/atoms/link/Link.d.ts +4 -4
- package/dist/core/components/atoms/message/Message.d.ts +2 -2
- package/dist/core/components/atoms/metricInput/MetricInput.d.ts +3 -3
- package/dist/core/components/atoms/multiSlider/SliderUtils.d.ts +1 -1
- package/dist/core/components/atoms/multiSlider/index.d.ts +3 -3
- package/dist/core/components/atoms/paragraph/Paragraph.d.ts +2 -2
- package/dist/core/components/atoms/pills/Pills.d.ts +2 -2
- package/dist/core/components/atoms/placeholderImage/PlaceholderImage.d.ts +2 -2
- package/dist/core/components/atoms/placeholderParagraph/PlaceholderParagraph.d.ts +2 -2
- package/dist/core/components/atoms/popperWrapper/PopperWrapper.d.ts +51 -51
- package/dist/core/components/atoms/progressRing/ProgressRing.d.ts +2 -2
- package/dist/core/components/atoms/radio/Radio.d.ts +4 -4
- package/dist/core/components/atoms/rangeSlider/RangeSlider.d.ts +1 -1
- package/dist/core/components/atoms/spinner/Spinner.d.ts +4 -4
- package/dist/core/components/atoms/statusHint/StatusHint.d.ts +2 -2
- package/dist/core/components/atoms/subheading/Subheading.d.ts +2 -2
- package/dist/core/components/atoms/switchInput/Switch.d.ts +7 -6
- package/dist/core/components/atoms/text/Text.d.ts +4 -4
- package/dist/core/components/atoms/toast/ActionButton.d.ts +2 -2
- package/dist/core/components/atoms/toast/Toast.d.ts +2 -2
- package/dist/core/components/molecules/dropzone/Dropzone.d.ts +3 -3
- package/dist/core/components/molecules/dropzone/DropzoneBase.d.ts +1 -1
- package/dist/core/components/molecules/dropzone/utils.d.ts +5 -3
- package/dist/core/components/molecules/emptyState/EmptyState.d.ts +4 -4
- package/dist/core/components/molecules/fileList/FileListItem.d.ts +1 -1
- package/dist/core/components/molecules/fileUploader/FileUploaderItem.d.ts +1 -1
- package/dist/core/components/molecules/fileUploader/FileUploaderStatus.d.ts +1 -1
- package/dist/core/components/molecules/fullscreenModal/FullscreenModal.d.ts +4 -7
- package/dist/core/components/molecules/inputMask/InputMask.d.ts +10 -2
- package/dist/core/components/molecules/modal/Modal.d.ts +3 -6
- package/dist/core/components/molecules/placeholder/Placeholder.d.ts +2 -2
- package/dist/core/components/molecules/popover/Popover.d.ts +0 -1
- package/dist/core/components/molecules/sidesheet/Sidesheet.d.ts +3 -6
- package/dist/core/components/molecules/tooltip/Tooltip.d.ts +3 -3
- package/dist/core/components/organisms/calendar/Calendar.d.ts +31 -0
- package/dist/core/components/organisms/choiceList/ChoiceList.d.ts +5 -6
- package/dist/core/components/organisms/datePicker/DatePicker.d.ts +2 -0
- package/dist/core/components/organisms/dateRangePicker/DateRangePicker.d.ts +24 -0
- package/dist/core/components/organisms/grid/Cell.d.ts +1 -1
- package/dist/core/components/organisms/grid/Grid.d.ts +3 -3
- package/dist/core/components/organisms/grid/GridContext.d.ts +1 -1
- package/dist/core/components/organisms/inlineMessage/InlineMessage.d.ts +2 -2
- package/dist/core/components/organisms/table/Table.d.ts +2 -2
- package/dist/core/components/patterns/datePicker/datePickerWithPresets.story.d.ts +15 -0
- package/dist/core/components/patterns/dateRangePicker/withCustomPopover.story.d.ts +5 -1
- package/dist/core/index.d.ts +1 -0
- package/dist/core/index.type.d.ts +1 -0
- package/dist/core/utils/docPage/generateImports.d.ts +1 -1
- package/dist/core/utils/overlayHelper.d.ts +1 -1
- package/dist/core/utils/types.d.ts +1 -1
- package/dist/index.esm.js +1039 -729
- package/dist/index.js +532 -371
- package/dist/index.js.map +1 -1
- package/dist/index.umd.js +1 -1
- package/dist/index.umd.js.br +0 -0
- package/dist/index.umd.js.gz +0 -0
- package/dts.config.js +11 -2
- package/package.json +32 -27
- package/tsconfig.json +3 -16
- package/tsconfig.type.json +2 -1
- package/types/index.d.ts +2217 -0
- package/types/{innovaccer-design-system/tsconfig.json → tsconfig.json} +1 -1
- package/types/{innovaccer-design-system/tslint.json → tslint.json} +0 -0
- package/types/types-tests.tsx +936 -0
- package/.husky/prepare-commit-msg +0 -6
- package/core/components/atoms/button/__stories__/variants/state/Success.story.tsx +0 -99
- package/core/components/atoms/message/__stories__/default.story.tsx +0 -16
- package/core/components/atoms/toast/__stories__/DefaultToast.story.tsx +0 -16
- package/core/components/molecules/dropzone/__stories__/variants/DropzoneWithFileList.story.tsx +0 -176
- package/core/components/molecules/fileUploader/__stories__/variants/FileUploaderList.story.tsx +0 -80
- package/tslint.json +0 -30
- package/types/innovaccer-design-system/index.d.ts +0 -39
- package/types/innovaccer-design-system/innovaccer-design-system-tests.ts +0 -0
|
@@ -7,9 +7,13 @@ export const defaultMetric = () => {
|
|
|
7
7
|
|
|
8
8
|
return (
|
|
9
9
|
<div className="d-flex align-items-center">
|
|
10
|
-
<Label className="mr-5">
|
|
10
|
+
<Label htmlFor="metric-input" className="mr-5">
|
|
11
|
+
No. of Days
|
|
12
|
+
</Label>
|
|
11
13
|
<div style={{ width: 'var(--spacing-6)' }}>
|
|
12
14
|
<MetricInput
|
|
15
|
+
id="metric-input"
|
|
16
|
+
name="metric-input"
|
|
13
17
|
size="regular"
|
|
14
18
|
value={value}
|
|
15
19
|
onChange={(e) => {
|
|
@@ -26,9 +30,11 @@ const customCode = `() => {
|
|
|
26
30
|
|
|
27
31
|
return (
|
|
28
32
|
<div className="d-flex align-items-center">
|
|
29
|
-
<Label className="mr-5">
|
|
33
|
+
<Label htmlFor="metric-input" className="mr-5">
|
|
30
34
|
<div style={{ width: 'var(--spacing-6)' }}>
|
|
31
35
|
<MetricInput
|
|
36
|
+
id="metric-input"
|
|
37
|
+
name="metric-input"
|
|
32
38
|
size="regular"
|
|
33
39
|
value={value}
|
|
34
40
|
onChange={e => { setValue(e.target.value); }}
|
|
@@ -7,9 +7,12 @@ export const withPrefix = () => {
|
|
|
7
7
|
|
|
8
8
|
return (
|
|
9
9
|
<div className="d-flex align-items-center">
|
|
10
|
-
<Label className="mr-5">
|
|
10
|
+
<Label htmlFor="metric-input" className="mr-5">
|
|
11
|
+
Cost
|
|
12
|
+
</Label>
|
|
11
13
|
<div style={{ width: 'var(--spacing-7)' }}>
|
|
12
14
|
<MetricInput
|
|
15
|
+
id="metric-input"
|
|
13
16
|
prefix="USD"
|
|
14
17
|
value={value}
|
|
15
18
|
onChange={(e) => {
|
|
@@ -26,9 +29,10 @@ const customCode = `() => {
|
|
|
26
29
|
|
|
27
30
|
return (
|
|
28
31
|
<div className="d-flex align-items-center">
|
|
29
|
-
<Label className="mr-5">Cost</Label>
|
|
32
|
+
<Label htmlFor="metric-input" className="mr-5">Cost</Label>
|
|
30
33
|
<div style={{ width: 'var(--spacing-7)' }}>
|
|
31
34
|
<MetricInput
|
|
35
|
+
id="metric-input"
|
|
32
36
|
prefix="USD"
|
|
33
37
|
value={value}
|
|
34
38
|
onChange={e => { setValue(e.target.value); }}
|
|
@@ -8,6 +8,7 @@ export const controlledMetricInput = () => {
|
|
|
8
8
|
return (
|
|
9
9
|
<div style={{ width: 'var(--spacing-6)' }}>
|
|
10
10
|
<MetricInput
|
|
11
|
+
aria-label="Metric Input Label"
|
|
11
12
|
value={value}
|
|
12
13
|
onChange={(e) => {
|
|
13
14
|
setValue(e.target.value);
|
|
@@ -23,6 +24,7 @@ const customCode = `() => {
|
|
|
23
24
|
return (
|
|
24
25
|
<div style={{ width: 'var(--spacing-6)' }}>
|
|
25
26
|
<MetricInput
|
|
27
|
+
aria-label="Metric Input Label"
|
|
26
28
|
value={value}
|
|
27
29
|
onChange={(e) => { setValue(e.target.value) }}
|
|
28
30
|
/>
|
|
@@ -5,11 +5,11 @@ import { MetricInput, Text } from '@/index';
|
|
|
5
5
|
export const size = () => (
|
|
6
6
|
<div className="d-flex" style={{ width: 'var(--spacing-8)' }}>
|
|
7
7
|
<div className="d-flex flex-column align-items-center mr-8">
|
|
8
|
-
<MetricInput size="regular" className="mb-3" />
|
|
8
|
+
<MetricInput aria-label="Metric input regular size" size="regular" className="mb-3" />
|
|
9
9
|
<Text>Regular</Text>
|
|
10
10
|
</div>
|
|
11
11
|
<div className="d-flex flex-column align-items-center">
|
|
12
|
-
<MetricInput size="large" className="mb-3" />
|
|
12
|
+
<MetricInput aria-label="Metric input large size" size="large" className="mb-3" />
|
|
13
13
|
<Text>Large</Text>
|
|
14
14
|
</div>
|
|
15
15
|
</div>
|
|
@@ -7,9 +7,12 @@ export const withSuffix = () => {
|
|
|
7
7
|
|
|
8
8
|
return (
|
|
9
9
|
<div className="d-flex align-items-center">
|
|
10
|
-
<Label className="mr-5">
|
|
10
|
+
<Label htmlFor="metric-input" className="mr-5">
|
|
11
|
+
Body Height
|
|
12
|
+
</Label>
|
|
11
13
|
<div style={{ width: 'var(--spacing-6)' }}>
|
|
12
14
|
<MetricInput
|
|
15
|
+
id="metric-input"
|
|
13
16
|
suffix="in"
|
|
14
17
|
value={value}
|
|
15
18
|
onChange={(e) => {
|
|
@@ -26,9 +29,10 @@ const customCode = `() => {
|
|
|
26
29
|
|
|
27
30
|
return (
|
|
28
31
|
<div className="d-flex align-items-center">
|
|
29
|
-
<Label className="mr-5">Body Height</Label>
|
|
32
|
+
<Label htmlFor="metric-input" className="mr-5">Body Height</Label>
|
|
30
33
|
<div style={{ width: 'var(--spacing-6)' }}>
|
|
31
34
|
<MetricInput
|
|
35
|
+
id="metric-input"
|
|
32
36
|
suffix="in"
|
|
33
37
|
value={value}
|
|
34
38
|
onChange={e => { setValue(e.target.value); }}
|
|
@@ -8,6 +8,7 @@ exports[`MetricInput component
|
|
|
8
8
|
<div
|
|
9
9
|
class="MetricInput MetricInput--regular"
|
|
10
10
|
data-test="DesignSystem-MetricInputWrapper"
|
|
11
|
+
role="presentation"
|
|
11
12
|
>
|
|
12
13
|
<i
|
|
13
14
|
class="material-icons material-icons-round Icon Icon--subtle MetricInput-icon MetricInput-icon--regular"
|
|
@@ -24,19 +25,22 @@ exports[`MetricInput component
|
|
|
24
25
|
/>
|
|
25
26
|
<div
|
|
26
27
|
class="MetricInput-arrowIcons"
|
|
27
|
-
tabindex="0"
|
|
28
28
|
>
|
|
29
29
|
<i
|
|
30
30
|
class="material-icons material-icons-round Icon MetricInput-arrowIcon MetricInput-arrowIcon--regular MetricInput-arrowIcon--up"
|
|
31
31
|
data-test="DesignSystem-MetricInput--upIcon"
|
|
32
|
+
role="button"
|
|
32
33
|
style="font-size: 12px; width: 12px;"
|
|
34
|
+
tabindex="0"
|
|
33
35
|
>
|
|
34
36
|
keyboard_arrow_up_round
|
|
35
37
|
</i>
|
|
36
38
|
<i
|
|
37
39
|
class="material-icons material-icons-round Icon MetricInput-arrowIcon MetricInput-arrowIcon--regular MetricInput-arrowIcon--down"
|
|
38
40
|
data-test="DesignSystem-MetricInput--downIcon"
|
|
41
|
+
role="button"
|
|
39
42
|
style="font-size: 12px; width: 12px;"
|
|
43
|
+
tabindex="0"
|
|
40
44
|
>
|
|
41
45
|
keyboard_arrow_down_round
|
|
42
46
|
</i>
|
|
@@ -54,6 +58,7 @@ exports[`MetricInput component
|
|
|
54
58
|
<div
|
|
55
59
|
class="MetricInput MetricInput--regular MetricInput--error"
|
|
56
60
|
data-test="DesignSystem-MetricInputWrapper"
|
|
61
|
+
role="presentation"
|
|
57
62
|
>
|
|
58
63
|
<i
|
|
59
64
|
class="material-icons material-icons-round Icon Icon--subtle MetricInput-icon MetricInput-icon--regular"
|
|
@@ -70,19 +75,22 @@ exports[`MetricInput component
|
|
|
70
75
|
/>
|
|
71
76
|
<div
|
|
72
77
|
class="MetricInput-arrowIcons"
|
|
73
|
-
tabindex="0"
|
|
74
78
|
>
|
|
75
79
|
<i
|
|
76
80
|
class="material-icons material-icons-round Icon MetricInput-arrowIcon MetricInput-arrowIcon--regular MetricInput-arrowIcon--up"
|
|
77
81
|
data-test="DesignSystem-MetricInput--upIcon"
|
|
82
|
+
role="button"
|
|
78
83
|
style="font-size: 12px; width: 12px;"
|
|
84
|
+
tabindex="0"
|
|
79
85
|
>
|
|
80
86
|
keyboard_arrow_up_round
|
|
81
87
|
</i>
|
|
82
88
|
<i
|
|
83
89
|
class="material-icons material-icons-round Icon MetricInput-arrowIcon MetricInput-arrowIcon--regular MetricInput-arrowIcon--down"
|
|
84
90
|
data-test="DesignSystem-MetricInput--downIcon"
|
|
91
|
+
role="button"
|
|
85
92
|
style="font-size: 12px; width: 12px;"
|
|
93
|
+
tabindex="0"
|
|
86
94
|
>
|
|
87
95
|
keyboard_arrow_down_round
|
|
88
96
|
</i>
|
|
@@ -100,6 +108,7 @@ exports[`MetricInput component
|
|
|
100
108
|
<div
|
|
101
109
|
class="MetricInput MetricInput--large"
|
|
102
110
|
data-test="DesignSystem-MetricInputWrapper"
|
|
111
|
+
role="presentation"
|
|
103
112
|
>
|
|
104
113
|
<span
|
|
105
114
|
class="Text Text--subtle Text--large mr-5"
|
|
@@ -122,19 +131,22 @@ exports[`MetricInput component
|
|
|
122
131
|
</span>
|
|
123
132
|
<div
|
|
124
133
|
class="MetricInput-arrowIcons"
|
|
125
|
-
tabindex="0"
|
|
126
134
|
>
|
|
127
135
|
<i
|
|
128
136
|
class="material-icons material-icons-round Icon MetricInput-arrowIcon MetricInput-arrowIcon--large MetricInput-arrowIcon--up"
|
|
129
137
|
data-test="DesignSystem-MetricInput--upIcon"
|
|
138
|
+
role="button"
|
|
130
139
|
style="font-size: 16px; width: 16px;"
|
|
140
|
+
tabindex="0"
|
|
131
141
|
>
|
|
132
142
|
keyboard_arrow_up_round
|
|
133
143
|
</i>
|
|
134
144
|
<i
|
|
135
145
|
class="material-icons material-icons-round Icon MetricInput-arrowIcon MetricInput-arrowIcon--large MetricInput-arrowIcon--down"
|
|
136
146
|
data-test="DesignSystem-MetricInput--downIcon"
|
|
147
|
+
role="button"
|
|
137
148
|
style="font-size: 16px; width: 16px;"
|
|
149
|
+
tabindex="0"
|
|
138
150
|
>
|
|
139
151
|
keyboard_arrow_down_round
|
|
140
152
|
</i>
|
|
@@ -152,6 +164,7 @@ exports[`MetricInput component
|
|
|
152
164
|
<div
|
|
153
165
|
class="MetricInput MetricInput--regular"
|
|
154
166
|
data-test="DesignSystem-MetricInputWrapper"
|
|
167
|
+
role="presentation"
|
|
155
168
|
>
|
|
156
169
|
<span
|
|
157
170
|
class="Text Text--subtle Text--regular mr-4"
|
|
@@ -174,19 +187,22 @@ exports[`MetricInput component
|
|
|
174
187
|
</span>
|
|
175
188
|
<div
|
|
176
189
|
class="MetricInput-arrowIcons"
|
|
177
|
-
tabindex="0"
|
|
178
190
|
>
|
|
179
191
|
<i
|
|
180
192
|
class="material-icons material-icons-round Icon MetricInput-arrowIcon MetricInput-arrowIcon--regular MetricInput-arrowIcon--up"
|
|
181
193
|
data-test="DesignSystem-MetricInput--upIcon"
|
|
194
|
+
role="button"
|
|
182
195
|
style="font-size: 12px; width: 12px;"
|
|
196
|
+
tabindex="0"
|
|
183
197
|
>
|
|
184
198
|
keyboard_arrow_up_round
|
|
185
199
|
</i>
|
|
186
200
|
<i
|
|
187
201
|
class="material-icons material-icons-round Icon MetricInput-arrowIcon MetricInput-arrowIcon--regular MetricInput-arrowIcon--down"
|
|
188
202
|
data-test="DesignSystem-MetricInput--downIcon"
|
|
203
|
+
role="button"
|
|
189
204
|
style="font-size: 12px; width: 12px;"
|
|
205
|
+
tabindex="0"
|
|
190
206
|
>
|
|
191
207
|
keyboard_arrow_down_round
|
|
192
208
|
</i>
|
|
@@ -182,6 +182,8 @@ export class Handle extends React.Component<InternalHandleProps, HandleState> {
|
|
|
182
182
|
});
|
|
183
183
|
|
|
184
184
|
return (
|
|
185
|
+
// TODO(a11y): fix accessibility
|
|
186
|
+
/* eslint-disable */
|
|
185
187
|
<>
|
|
186
188
|
<div
|
|
187
189
|
className={className}
|
|
@@ -195,6 +197,7 @@ export class Handle extends React.Component<InternalHandleProps, HandleState> {
|
|
|
195
197
|
tabIndex={1}
|
|
196
198
|
data-test="DesignSystem-MultiSlider-Handle"
|
|
197
199
|
/>
|
|
200
|
+
{/* eslint-enable */}
|
|
198
201
|
<div className={TooltipClass} style={style}>
|
|
199
202
|
{label}
|
|
200
203
|
</div>
|
|
@@ -59,9 +59,6 @@ export function fillValues<T>(values: T[], startIndex: number, endIndex: number,
|
|
|
59
59
|
}
|
|
60
60
|
}
|
|
61
61
|
|
|
62
|
-
export function isElementOfType
|
|
63
|
-
element: any,
|
|
64
|
-
_ComponentType: React.ComponentType<P>
|
|
65
|
-
): element is React.ReactElement<P> {
|
|
62
|
+
export function isElementOfType(element: React.ReactElement) {
|
|
66
63
|
return element != null && element.type != null;
|
|
67
64
|
}
|
|
@@ -13,8 +13,7 @@ import {
|
|
|
13
13
|
fillValues,
|
|
14
14
|
isElementOfType,
|
|
15
15
|
} from './SliderUtils';
|
|
16
|
-
|
|
17
|
-
type NumberRange = [number, number];
|
|
16
|
+
import { NumberRange } from '@/common.type';
|
|
18
17
|
|
|
19
18
|
export interface MultiSliderProps extends BaseProps {
|
|
20
19
|
/**
|
|
@@ -130,8 +129,8 @@ export class MultiSlider extends React.Component<InternalMultiSliderProps, Multi
|
|
|
130
129
|
};
|
|
131
130
|
|
|
132
131
|
getHandleValues = (props: React.PropsWithChildren<InternalMultiSliderProps>) => {
|
|
133
|
-
const maybeHandles = React.Children.map(props.children, (child) =>
|
|
134
|
-
isElementOfType(child
|
|
132
|
+
const maybeHandles = React.Children.map(props.children as React.ReactElement, (child) =>
|
|
133
|
+
isElementOfType(child) ? child.props : null
|
|
135
134
|
);
|
|
136
135
|
|
|
137
136
|
let handles = maybeHandles != null ? maybeHandles : [];
|
|
@@ -322,6 +321,8 @@ export class MultiSlider extends React.Component<InternalMultiSliderProps, Multi
|
|
|
322
321
|
}
|
|
323
322
|
};
|
|
324
323
|
|
|
324
|
+
// TODO(a11y): fix accessibility
|
|
325
|
+
/* eslint-disable */
|
|
325
326
|
labels.push(
|
|
326
327
|
<div
|
|
327
328
|
onClick={onClickHandler}
|
|
@@ -332,6 +333,7 @@ export class MultiSlider extends React.Component<InternalMultiSliderProps, Multi
|
|
|
332
333
|
onMouseLeave={this.handleLabelMouseLeave}
|
|
333
334
|
data-test="DesignSystem-MultiSlider-Label"
|
|
334
335
|
>
|
|
336
|
+
{/* eslint-enable */}
|
|
335
337
|
<span className={'Slider-ticks'} />
|
|
336
338
|
{labelRenderer !== false && (
|
|
337
339
|
<Text size="small" appearance={active ? 'default' : 'disabled'}>
|
|
@@ -414,12 +416,15 @@ export class MultiSlider extends React.Component<InternalMultiSliderProps, Multi
|
|
|
414
416
|
<div {...baseProps} className={SliderClass} data-test="DesignSystem-MultiSlider">
|
|
415
417
|
{label && <Label withInput={true}>{label}</Label>}
|
|
416
418
|
<div className={WrapperClass}>
|
|
419
|
+
{/* TODO(a11y): fix accessibility */}
|
|
420
|
+
{/* eslint-disable */}
|
|
417
421
|
<div
|
|
418
422
|
className="Slider-track"
|
|
419
423
|
ref={(ref) => (this.trackElement = ref)}
|
|
420
424
|
onMouseDown={this.maybeHandleTrackClick}
|
|
421
425
|
data-test="DesignSystem-MultiSlider-Slider-Track"
|
|
422
426
|
>
|
|
427
|
+
{/* eslint-enable */}
|
|
423
428
|
{this.renderTracks()}
|
|
424
429
|
</div>
|
|
425
430
|
<div className="Slider-axis">{this.renderLabels()}</div>
|
|
@@ -1,5 +1,4 @@
|
|
|
1
1
|
import * as React from 'react';
|
|
2
|
-
import * as ReactDOM from 'react-dom';
|
|
3
2
|
import { BaseHtmlProps, BaseProps } from '@/utils/types';
|
|
4
3
|
import classNames from 'classnames';
|
|
5
4
|
|
|
@@ -35,7 +34,7 @@ export const OutsideClick = React.forwardRef<HTMLDivElement, OutsideClickProps>(
|
|
|
35
34
|
return;
|
|
36
35
|
}
|
|
37
36
|
|
|
38
|
-
if (!
|
|
37
|
+
if (!element.current!.contains(event.target as HTMLElement)) {
|
|
39
38
|
onOutsideClick(event);
|
|
40
39
|
}
|
|
41
40
|
}, []);
|
|
@@ -3,7 +3,7 @@ import GenericText from '../_text';
|
|
|
3
3
|
import classNames from 'classnames';
|
|
4
4
|
import { BaseHtmlProps, BaseProps } from '@/utils/types';
|
|
5
5
|
|
|
6
|
-
export type
|
|
6
|
+
export type ParagraphAppearance = 'default' | 'white' | 'destructive' | 'subtle' | 'disabled';
|
|
7
7
|
|
|
8
8
|
export interface ParagraphProps extends BaseProps, BaseHtmlProps<HTMLParagraphElement> {
|
|
9
9
|
/**
|
|
@@ -14,7 +14,7 @@ export interface ParagraphProps extends BaseProps, BaseHtmlProps<HTMLParagraphEl
|
|
|
14
14
|
/**
|
|
15
15
|
* Color of `Paragraph`
|
|
16
16
|
*/
|
|
17
|
-
appearance:
|
|
17
|
+
appearance: ParagraphAppearance;
|
|
18
18
|
}
|
|
19
19
|
|
|
20
20
|
export const Paragraph = (props: ParagraphProps) => {
|
|
@@ -1,10 +1,10 @@
|
|
|
1
1
|
import * as React from 'react';
|
|
2
|
-
import Paragraph, {
|
|
2
|
+
import Paragraph, { ParagraphAppearance } from '../../index';
|
|
3
3
|
import Text from '@/components/atoms/text';
|
|
4
4
|
|
|
5
5
|
// CSF format story
|
|
6
6
|
export const appearance = () => {
|
|
7
|
-
const appearances:
|
|
7
|
+
const appearances: ParagraphAppearance[] = ['default', 'white', 'destructive', 'subtle', 'disabled'];
|
|
8
8
|
return (
|
|
9
9
|
<div className="d-flex">
|
|
10
10
|
{appearances.map((appear, ind) => {
|
|
@@ -1,9 +1,9 @@
|
|
|
1
1
|
import * as React from 'react';
|
|
2
2
|
import { render } from '@testing-library/react';
|
|
3
|
-
import Paragraph, { ParagraphProps as Props,
|
|
3
|
+
import Paragraph, { ParagraphProps as Props, ParagraphAppearance } from '../Paragraph';
|
|
4
4
|
import { testHelper, filterUndefined, valueHelper, testMessageHelper } from '@/utils/testHelper';
|
|
5
5
|
|
|
6
|
-
const appearance:
|
|
6
|
+
const appearance: ParagraphAppearance[] = ['default', 'white', 'destructive', 'subtle', 'disabled'];
|
|
7
7
|
|
|
8
8
|
const mapper = {
|
|
9
9
|
appearance: valueHelper(appearance, { required: true, iterate: true }),
|
|
@@ -1,23 +1,13 @@
|
|
|
1
1
|
import * as React from 'react';
|
|
2
2
|
import classNames from 'classnames';
|
|
3
3
|
import { BaseProps, extractBaseProps } from '@/utils/types';
|
|
4
|
-
|
|
5
|
-
export type Appearance =
|
|
6
|
-
| 'primary'
|
|
7
|
-
| 'secondary'
|
|
8
|
-
| 'alert'
|
|
9
|
-
| 'warning'
|
|
10
|
-
| 'success'
|
|
11
|
-
| 'accent1'
|
|
12
|
-
| 'accent2'
|
|
13
|
-
| 'accent3'
|
|
14
|
-
| 'accent4';
|
|
4
|
+
import { AccentAppearance } from '@/common.type';
|
|
15
5
|
|
|
16
6
|
export interface PillsProps extends BaseProps {
|
|
17
7
|
/**
|
|
18
8
|
* Color of the `Pills`
|
|
19
9
|
*/
|
|
20
|
-
appearance:
|
|
10
|
+
appearance: AccentAppearance;
|
|
21
11
|
/**
|
|
22
12
|
* Makes `Pills` appearance subtle
|
|
23
13
|
*/
|
|
@@ -1,7 +1,8 @@
|
|
|
1
1
|
import * as React from 'react';
|
|
2
2
|
import { text } from '@storybook/addon-knobs';
|
|
3
|
-
import Pills
|
|
3
|
+
import Pills from '../../Pills';
|
|
4
4
|
import Text from '@/components/atoms/text';
|
|
5
|
+
import { AccentAppearance } from '@/common.type';
|
|
5
6
|
|
|
6
7
|
// CSF format story
|
|
7
8
|
export const appearance = () => {
|
|
@@ -10,7 +11,7 @@ export const appearance = () => {
|
|
|
10
11
|
|
|
11
12
|
const children = text('children', 'Pills');
|
|
12
13
|
|
|
13
|
-
const appearances:
|
|
14
|
+
const appearances: AccentAppearance[] = [
|
|
14
15
|
'primary',
|
|
15
16
|
'secondary',
|
|
16
17
|
'alert',
|
|
@@ -1,7 +1,8 @@
|
|
|
1
1
|
import * as React from 'react';
|
|
2
2
|
import { text } from '@storybook/addon-knobs';
|
|
3
|
-
import Pills
|
|
3
|
+
import Pills from '../../Pills';
|
|
4
4
|
import Text from '@/components/atoms/text';
|
|
5
|
+
import { AccentAppearance } from '@/common.type';
|
|
5
6
|
|
|
6
7
|
// CSF format story
|
|
7
8
|
export const subtle = () => {
|
|
@@ -10,7 +11,7 @@ export const subtle = () => {
|
|
|
10
11
|
|
|
11
12
|
const children = text('children', 'Pills');
|
|
12
13
|
|
|
13
|
-
const appearances:
|
|
14
|
+
const appearances: AccentAppearance[] = [
|
|
14
15
|
'primary',
|
|
15
16
|
'secondary',
|
|
16
17
|
'alert',
|
|
@@ -1,9 +1,10 @@
|
|
|
1
1
|
import * as React from 'react';
|
|
2
2
|
import { render } from '@testing-library/react';
|
|
3
|
-
import Pills, { PillsProps as Props
|
|
3
|
+
import Pills, { PillsProps as Props } from '../Pills';
|
|
4
4
|
import { testHelper, filterUndefined, valueHelper, testMessageHelper } from '@/utils/testHelper';
|
|
5
|
+
import { AccentAppearance } from '@/common.type';
|
|
5
6
|
|
|
6
|
-
const appearances:
|
|
7
|
+
const appearances: AccentAppearance[] = [
|
|
7
8
|
'primary',
|
|
8
9
|
'alert',
|
|
9
10
|
'warning',
|
|
@@ -2,7 +2,7 @@ import * as React from 'react';
|
|
|
2
2
|
import classNames from 'classnames';
|
|
3
3
|
import { BaseProps, extractBaseProps } from '@/utils/types';
|
|
4
4
|
|
|
5
|
-
export type
|
|
5
|
+
export type PlaceholderImageSize = 'small' | 'medium' | 'large';
|
|
6
6
|
|
|
7
7
|
export interface PlaceholderImageProps extends BaseProps {
|
|
8
8
|
/**
|
|
@@ -12,7 +12,7 @@ export interface PlaceholderImageProps extends BaseProps {
|
|
|
12
12
|
/**
|
|
13
13
|
* Specifies dimension of `Placeholder`
|
|
14
14
|
*/
|
|
15
|
-
size:
|
|
15
|
+
size: PlaceholderImageSize;
|
|
16
16
|
}
|
|
17
17
|
|
|
18
18
|
export const PlaceholderImage = (props: PlaceholderImageProps) => {
|
|
@@ -1,11 +1,11 @@
|
|
|
1
1
|
import * as React from 'react';
|
|
2
2
|
import { boolean } from '@storybook/addon-knobs';
|
|
3
|
-
import PlaceholderImage, {
|
|
3
|
+
import PlaceholderImage, { PlaceholderImageSize } from '../../PlaceholderImage';
|
|
4
4
|
import Text from '@/components/atoms/text';
|
|
5
5
|
|
|
6
6
|
export const size = () => {
|
|
7
7
|
const round = boolean('round', false);
|
|
8
|
-
const sizes:
|
|
8
|
+
const sizes: PlaceholderImageSize[] = ['small', 'medium', 'large'];
|
|
9
9
|
const options = {
|
|
10
10
|
round,
|
|
11
11
|
};
|
|
@@ -3,7 +3,7 @@ import classNames from 'classnames';
|
|
|
3
3
|
import { BaseProps, extractBaseProps } from '@/utils/types';
|
|
4
4
|
|
|
5
5
|
export type Length = 'small' | 'medium' | 'large';
|
|
6
|
-
export type
|
|
6
|
+
export type PlaceholderParagraphSize = 'xxs' | 'xs' | 's' | 'm' | 'l' | 'xl' | 'xxl' | 'xxxl';
|
|
7
7
|
|
|
8
8
|
export interface PlaceholderParagraphProps extends BaseProps {
|
|
9
9
|
/**
|
|
@@ -31,7 +31,7 @@ export interface PlaceholderParagraphProps extends BaseProps {
|
|
|
31
31
|
*
|
|
32
32
|
* xxxl: `Heading` size: xxl
|
|
33
33
|
*/
|
|
34
|
-
size?:
|
|
34
|
+
size?: PlaceholderParagraphSize;
|
|
35
35
|
}
|
|
36
36
|
|
|
37
37
|
export const PlaceholderParagraph = (props: PlaceholderParagraphProps) => {
|
|
@@ -1,9 +1,9 @@
|
|
|
1
1
|
import * as React from 'react';
|
|
2
|
-
import PlaceholderParagraph, {
|
|
2
|
+
import PlaceholderParagraph, { PlaceholderParagraphSize } from '../../PlaceholderParagraph';
|
|
3
3
|
import Text from '@/components/atoms/text';
|
|
4
4
|
|
|
5
5
|
export const size = () => {
|
|
6
|
-
const sizes:
|
|
6
|
+
const sizes: PlaceholderParagraphSize[] = ['xxs', 'xs', 's', 'm', 'l', 'xl', 'xxl', 'xxxl'];
|
|
7
7
|
|
|
8
8
|
return (
|
|
9
9
|
<div>
|
|
@@ -142,7 +142,7 @@ export class PopperWrapper extends React.Component<PopperWrapperProps, PopperWra
|
|
|
142
142
|
if (prevProps.open !== this.props.open) {
|
|
143
143
|
this._throttleWait = false;
|
|
144
144
|
if (this.props.open) {
|
|
145
|
-
const triggerElement = this.
|
|
145
|
+
const triggerElement = this.triggerRef.current;
|
|
146
146
|
const zIndex = this.getZIndexForLayer(triggerElement);
|
|
147
147
|
|
|
148
148
|
this.setState({
|
|
@@ -216,12 +216,8 @@ export class PopperWrapper extends React.Component<PopperWrapperProps, PopperWra
|
|
|
216
216
|
onToggle(newValue === undefined ? !open : newValue, type);
|
|
217
217
|
};
|
|
218
218
|
|
|
219
|
-
findDOMNode = (ref: React.RefObject<HTMLElement>) => {
|
|
220
|
-
return ReactDOM.findDOMNode(ref.current!) as Element | null;
|
|
221
|
-
};
|
|
222
|
-
|
|
223
219
|
doesEventContainsElement = (event: Event, ref: React.RefObject<any>) => {
|
|
224
|
-
const el =
|
|
220
|
+
const el = ref.current;
|
|
225
221
|
return el && el.contains(event.target as HTMLElement);
|
|
226
222
|
};
|
|
227
223
|
|
|
@@ -2,13 +2,13 @@ import * as React from 'react';
|
|
|
2
2
|
import classNames from 'classnames';
|
|
3
3
|
import { BaseProps, extractBaseProps } from '@/utils/types';
|
|
4
4
|
|
|
5
|
-
export type
|
|
5
|
+
export type ProgressRingSize = 'small' | 'regular';
|
|
6
6
|
|
|
7
7
|
export interface ProgressRingProps extends BaseProps {
|
|
8
8
|
/**
|
|
9
9
|
* Size of `Progress Ring`
|
|
10
10
|
*/
|
|
11
|
-
size:
|
|
11
|
+
size: ProgressRingSize;
|
|
12
12
|
/**
|
|
13
13
|
* Specifies how much of the task that has been completed. Value should lie between 0 to max.
|
|
14
14
|
*/
|
|
@@ -3,17 +3,16 @@ import classNames from 'classnames';
|
|
|
3
3
|
import Text from '@/components/atoms/text';
|
|
4
4
|
import { BaseProps, OmitNativeProps } from '@/utils/types';
|
|
5
5
|
import uidGenerator from '@/utils/uidGenerator';
|
|
6
|
+
import { ChangeEvent } from '@/common.type';
|
|
6
7
|
|
|
7
|
-
export type
|
|
8
|
-
|
|
9
|
-
type MouseEvent = React.ChangeEvent<HTMLInputElement>;
|
|
8
|
+
export type RadioSize = 'regular' | 'tiny';
|
|
10
9
|
|
|
11
10
|
export interface RadioProps extends BaseProps, OmitNativeProps<HTMLInputElement, 'onChange'> {
|
|
12
11
|
/**
|
|
13
12
|
* Size of `Radio`
|
|
14
13
|
* @default "regular"
|
|
15
14
|
*/
|
|
16
|
-
size?:
|
|
15
|
+
size?: RadioSize;
|
|
17
16
|
/**
|
|
18
17
|
* Disables the `Radio`, making it unable to be pressed
|
|
19
18
|
*/
|
|
@@ -45,7 +44,7 @@ export interface RadioProps extends BaseProps, OmitNativeProps<HTMLInputElement,
|
|
|
45
44
|
/**
|
|
46
45
|
* Callback function called when user the selects an option
|
|
47
46
|
*/
|
|
48
|
-
onChange?: (event:
|
|
47
|
+
onChange?: (event: ChangeEvent) => void;
|
|
49
48
|
}
|
|
50
49
|
|
|
51
50
|
export const Radio = React.forwardRef<HTMLInputElement, RadioProps>((props, forwardedRef) => {
|
|
@@ -2,8 +2,7 @@ import * as React from 'react';
|
|
|
2
2
|
import { text, boolean, number } from '@storybook/addon-knobs';
|
|
3
3
|
import { action } from '@storybook/addon-actions';
|
|
4
4
|
import RangeSlider from '../RangeSlider';
|
|
5
|
-
|
|
6
|
-
type NumberRange = [number, number];
|
|
5
|
+
import { NumberRange } from '@/common.type';
|
|
7
6
|
|
|
8
7
|
// CSF format story
|
|
9
8
|
export const all = () => {
|