@openedx/paragon 22.0.0-alpha.24 → 22.1.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/README.md +16 -46
- package/bin/paragon-scripts.js +16 -123
- package/dist/ActionRow/_index.scss +4 -2
- package/dist/ActionRow/_variables.scss +2 -0
- package/dist/ActionRow/index.js +7 -8
- package/dist/ActionRow/index.js.map +1 -1
- package/dist/Alert/_variables.scss +24 -0
- package/dist/Alert/index.js +33 -25
- package/dist/Alert/index.js.map +1 -1
- package/dist/Alert/index.scss +32 -41
- package/dist/Annotation/_variables.scss +18 -0
- package/dist/Annotation/index.js +7 -9
- package/dist/Annotation/index.js.map +1 -1
- package/dist/Annotation/index.scss +103 -130
- package/dist/Avatar/_variables.scss +10 -0
- package/dist/Avatar/index.js +5 -7
- package/dist/Avatar/index.js.map +1 -1
- package/dist/Avatar/index.scss +20 -18
- package/dist/AvatarButton/_variables.scss +3 -0
- package/dist/AvatarButton/index.js +10 -12
- package/dist/AvatarButton/index.js.map +1 -1
- package/dist/AvatarButton/index.scss +5 -3
- package/dist/Badge/_variables.scss +16 -0
- package/dist/Badge/index.js +6 -4
- package/dist/Badge/index.js.map +1 -1
- package/dist/Badge/index.scss +2 -112
- package/dist/Breadcrumb/BreadcrumbLink.js +11 -14
- package/dist/Breadcrumb/BreadcrumbLink.js.map +1 -1
- package/dist/Breadcrumb/_variables.scss +27 -0
- package/dist/Breadcrumb/index.js +29 -29
- package/dist/Breadcrumb/index.js.map +1 -1
- package/dist/Breadcrumb/index.scss +16 -14
- package/dist/Bubble/_variables.scss +8 -0
- package/dist/Bubble/index.js +11 -13
- package/dist/Bubble/index.js.map +1 -1
- package/dist/Bubble/index.scss +12 -25
- package/dist/Button/_variables.scss +52 -0
- package/dist/Button/deprecated/index.js +149 -0
- package/dist/Button/deprecated/index.js.map +1 -0
- package/dist/Button/index.js +12 -11
- package/dist/Button/index.js.map +1 -1
- package/dist/Button/index.scss +370 -855
- package/dist/Card/CardBody.js +4 -6
- package/dist/Card/CardBody.js.map +1 -1
- package/dist/Card/CardCarousel/CardCarousel.js +11 -13
- package/dist/Card/CardCarousel/CardCarousel.js.map +1 -1
- package/dist/Card/CardCarousel/CardCarouselControls.js +6 -7
- package/dist/Card/CardCarousel/CardCarouselControls.js.map +1 -1
- package/dist/Card/CardCarousel/CardCarouselHeader.js +9 -12
- package/dist/Card/CardCarousel/CardCarouselHeader.js.map +1 -1
- package/dist/Card/CardCarousel/CardCarouselItems.js +6 -9
- package/dist/Card/CardCarousel/CardCarouselItems.js.map +1 -1
- package/dist/Card/CardCarousel/CardCarouselProvider.js +27 -28
- package/dist/Card/CardCarousel/CardCarouselProvider.js.map +1 -1
- package/dist/Card/CardCarousel/CardCarouselSubtitle.js +4 -6
- package/dist/Card/CardCarousel/CardCarouselSubtitle.js.map +1 -1
- package/dist/Card/CardCarousel/CardCarouselTitle.js +4 -6
- package/dist/Card/CardCarousel/CardCarouselTitle.js.map +1 -1
- package/dist/Card/CardContext.js +8 -10
- package/dist/Card/CardContext.js.map +1 -1
- package/dist/Card/CardDeck.js +19 -17
- package/dist/Card/CardDeck.js.map +1 -1
- package/dist/Card/CardDivider.js +3 -5
- package/dist/Card/CardDivider.js.map +1 -1
- package/dist/Card/CardFooter.js +15 -18
- package/dist/Card/CardFooter.js.map +1 -1
- package/dist/Card/CardGrid.js +13 -11
- package/dist/Card/CardGrid.js.map +1 -1
- package/dist/Card/CardHeader.js +17 -22
- package/dist/Card/CardHeader.js.map +1 -1
- package/dist/Card/CardImageCap.js +48 -33
- package/dist/Card/CardImageCap.js.map +1 -1
- package/dist/Card/CardSection.js +11 -14
- package/dist/Card/CardSection.js.map +1 -1
- package/dist/Card/CardStatus.js +11 -14
- package/dist/Card/CardStatus.js.map +1 -1
- package/dist/Card/_variables.scss +55 -0
- package/dist/Card/index.js +18 -20
- package/dist/Card/index.js.map +1 -1
- package/dist/Card/index.scss +79 -78
- package/dist/Carousel/_variables.scss +27 -0
- package/dist/Carousel/index.js +17 -11
- package/dist/Carousel/index.js.map +1 -1
- package/dist/Carousel/index.scss +2 -168
- package/dist/CheckBox/index.js +102 -0
- package/dist/CheckBox/index.js.map +1 -0
- package/dist/CheckBoxGroup/index.js +15 -0
- package/dist/CheckBoxGroup/index.js.map +1 -0
- package/dist/Chip/ChipIcon.js +47 -0
- package/dist/Chip/ChipIcon.js.map +1 -0
- package/dist/Chip/_variables.scss +28 -0
- package/dist/Chip/constants.js +5 -0
- package/dist/Chip/index.js +66 -40
- package/dist/Chip/index.js.map +1 -1
- package/dist/Chip/index.scss +102 -61
- package/dist/Chip/mixins.scss +42 -0
- package/dist/ChipCarousel/_variables.scss +3 -0
- package/dist/ChipCarousel/index.js +29 -30
- package/dist/ChipCarousel/index.js.map +1 -1
- package/dist/ChipCarousel/index.scss +4 -1
- package/dist/CloseButton/_variables.scss +6 -0
- package/dist/CloseButton/index.scss +2 -31
- package/dist/Code/_variables.scss +17 -0
- package/dist/Code/index.scss +2 -47
- package/dist/Collapsible/CollapsibleAdvanced.js +82 -62
- package/dist/Collapsible/CollapsibleAdvanced.js.map +1 -1
- package/dist/Collapsible/CollapsibleBody.js +13 -15
- package/dist/Collapsible/CollapsibleBody.js.map +1 -1
- package/dist/Collapsible/CollapsibleTrigger.js +18 -20
- package/dist/Collapsible/CollapsibleTrigger.js.map +1 -1
- package/dist/Collapsible/CollapsibleVisible.js +6 -9
- package/dist/Collapsible/CollapsibleVisible.js.map +1 -1
- package/dist/Collapsible/_variables.scss +12 -0
- package/dist/Collapsible/index.js +17 -18
- package/dist/Collapsible/index.js.map +1 -1
- package/dist/Collapsible/index.scss +15 -15
- package/dist/ColorPicker/_variables.scss +2 -0
- package/dist/ColorPicker/index.js +58 -33
- package/dist/ColorPicker/index.js.map +1 -1
- package/dist/ColorPicker/index.scss +11 -9
- package/dist/Container/_variables.scss +5 -0
- package/dist/Container/index.js +8 -9
- package/dist/Container/index.js.map +1 -1
- package/dist/DataTable/ActionDisplay.js +8 -9
- package/dist/DataTable/ActionDisplay.js.map +1 -1
- package/dist/DataTable/BulkActions.js +23 -20
- package/dist/DataTable/BulkActions.js.map +1 -1
- package/dist/DataTable/CardView.js +46 -43
- package/dist/DataTable/CardView.js.map +1 -1
- package/dist/DataTable/CollapsibleButtonGroup.js +59 -41
- package/dist/DataTable/CollapsibleButtonGroup.js.map +1 -1
- package/dist/DataTable/DataTableContext.js +1 -1
- package/dist/DataTable/DataTableContext.js.map +1 -1
- package/dist/DataTable/DataTableLayout.js +6 -9
- package/dist/DataTable/DataTableLayout.js.map +1 -1
- package/dist/DataTable/DataViewToggle.js +25 -20
- package/dist/DataTable/DataViewToggle.js.map +1 -1
- package/dist/DataTable/DropdownFilters.js +41 -28
- package/dist/DataTable/DropdownFilters.js.map +1 -1
- package/dist/DataTable/EmptyTable.js +6 -9
- package/dist/DataTable/EmptyTable.js.map +1 -1
- package/dist/DataTable/ExpandAll.js +2 -4
- package/dist/DataTable/ExpandAll.js.map +1 -1
- package/dist/DataTable/ExpandRow.js +2 -4
- package/dist/DataTable/ExpandRow.js.map +1 -1
- package/dist/DataTable/FilterStatus.js +18 -17
- package/dist/DataTable/FilterStatus.js.map +1 -1
- package/dist/DataTable/RowStatus.js +15 -18
- package/dist/DataTable/RowStatus.js.map +1 -1
- package/dist/DataTable/SidebarFilters.js +16 -13
- package/dist/DataTable/SidebarFilters.js.map +1 -1
- package/dist/DataTable/SmartStatus.js +14 -16
- package/dist/DataTable/SmartStatus.js.map +1 -1
- package/dist/DataTable/Table.js +17 -19
- package/dist/DataTable/Table.js.map +1 -1
- package/dist/DataTable/TableActions.js +11 -13
- package/dist/DataTable/TableActions.js.map +1 -1
- package/dist/DataTable/TableCell.js +6 -10
- package/dist/DataTable/TableCell.js.map +1 -1
- package/dist/DataTable/TableControlBar.js +7 -12
- package/dist/DataTable/TableControlBar.js.map +1 -1
- package/dist/DataTable/TableFilters.js +14 -12
- package/dist/DataTable/TableFilters.js.map +1 -1
- package/dist/DataTable/TableFooter.js +5 -8
- package/dist/DataTable/TableFooter.js.map +1 -1
- package/dist/DataTable/TableHeaderCell.js +11 -15
- package/dist/DataTable/TableHeaderCell.js.map +1 -1
- package/dist/DataTable/TableHeaderRow.js +6 -4
- package/dist/DataTable/TableHeaderRow.js.map +1 -1
- package/dist/DataTable/TablePagination.js +15 -9
- package/dist/DataTable/TablePagination.js.map +1 -1
- package/dist/DataTable/TablePaginationMinimal.js +14 -8
- package/dist/DataTable/TablePaginationMinimal.js.map +1 -1
- package/dist/DataTable/TableRow.js +15 -18
- package/dist/DataTable/TableRow.js.map +1 -1
- package/dist/DataTable/_variables.scss +11 -0
- package/dist/DataTable/filters/CheckboxFilter.js +23 -22
- package/dist/DataTable/filters/CheckboxFilter.js.map +1 -1
- package/dist/DataTable/filters/DropdownFilter.js +14 -19
- package/dist/DataTable/filters/DropdownFilter.js.map +1 -1
- package/dist/DataTable/filters/MultiSelectDropdownFilter.js +19 -20
- package/dist/DataTable/filters/MultiSelectDropdownFilter.js.map +1 -1
- package/dist/DataTable/filters/TextFilter.js +15 -18
- package/dist/DataTable/filters/TextFilter.js.map +1 -1
- package/dist/DataTable/hooks.js +29 -25
- package/dist/DataTable/hooks.js.map +1 -1
- package/dist/DataTable/index.js +120 -104
- package/dist/DataTable/index.js.map +1 -1
- package/dist/DataTable/index.scss +50 -48
- package/dist/DataTable/selection/BaseSelectionStatus.js +29 -31
- package/dist/DataTable/selection/BaseSelectionStatus.js.map +1 -1
- package/dist/DataTable/selection/ControlledSelect.js +13 -9
- package/dist/DataTable/selection/ControlledSelect.js.map +1 -1
- package/dist/DataTable/selection/ControlledSelectHeader.js +19 -15
- package/dist/DataTable/selection/ControlledSelectHeader.js.map +1 -1
- package/dist/DataTable/selection/ControlledSelectionStatus.js +34 -24
- package/dist/DataTable/selection/ControlledSelectionStatus.js.map +1 -1
- package/dist/DataTable/selection/SelectionStatus.js +23 -23
- package/dist/DataTable/selection/SelectionStatus.js.map +1 -1
- package/dist/DataTable/utils/getVisibleColumns.js +36 -44
- package/dist/DataTable/utils/getVisibleColumns.js.map +1 -1
- package/dist/Dropdown/_variables.scss +33 -0
- package/dist/Dropdown/deprecated/DropdownButton.js +44 -0
- package/dist/Dropdown/deprecated/DropdownButton.js.map +1 -0
- package/dist/Dropdown/deprecated/DropdownItem.js +33 -0
- package/dist/Dropdown/deprecated/DropdownItem.js.map +1 -0
- package/dist/Dropdown/deprecated/DropdownMenu.js +46 -0
- package/dist/Dropdown/deprecated/DropdownMenu.js.map +1 -0
- package/dist/Dropdown/deprecated/index.js +242 -0
- package/dist/Dropdown/deprecated/index.js.map +1 -0
- package/dist/Dropdown/index.js +34 -29
- package/dist/Dropdown/index.js.map +1 -1
- package/dist/Dropdown/index.scss +12 -11
- package/dist/Dropzone/DefaultContent.js +13 -13
- package/dist/Dropzone/DefaultContent.js.map +1 -1
- package/dist/Dropzone/DragError.js +1 -3
- package/dist/Dropzone/DragError.js.map +1 -1
- package/dist/Dropzone/GenericError.js +7 -7
- package/dist/Dropzone/GenericError.js.map +1 -1
- package/dist/Dropzone/UploadProgress.js +6 -8
- package/dist/Dropzone/UploadProgress.js.map +1 -1
- package/dist/Dropzone/_variables.scss +9 -0
- package/dist/Dropzone/index.js +144 -85
- package/dist/Dropzone/index.js.map +1 -1
- package/dist/Dropzone/index.scss +14 -12
- package/dist/Fieldset/index.js +117 -0
- package/dist/Fieldset/index.js.map +1 -0
- package/dist/Fieldset/index.scss +12 -0
- package/dist/Form/FormAutosuggest.js +284 -154
- package/dist/Form/FormAutosuggest.js.map +1 -1
- package/dist/Form/FormAutosuggestOption.js +4 -6
- package/dist/Form/FormAutosuggestOption.js.map +1 -1
- package/dist/Form/FormCheckbox.js +35 -42
- package/dist/Form/FormCheckbox.js.map +1 -1
- package/dist/Form/FormCheckboxSet.js +13 -16
- package/dist/Form/FormCheckboxSet.js.map +1 -1
- package/dist/Form/FormCheckboxSetContext.js +39 -34
- package/dist/Form/FormCheckboxSetContext.js.map +1 -1
- package/dist/Form/FormControl.js +41 -35
- package/dist/Form/FormControl.js.map +1 -1
- package/dist/Form/FormControlDecorator.js +3 -5
- package/dist/Form/FormControlDecorator.js.map +1 -1
- package/dist/Form/FormControlDecoratorGroup.js +8 -10
- package/dist/Form/FormControlDecoratorGroup.js.map +1 -1
- package/dist/Form/FormControlFeedback.js +12 -15
- package/dist/Form/FormControlFeedback.js.map +1 -1
- package/dist/Form/FormControlFloatingLabel.js +3 -6
- package/dist/Form/FormControlFloatingLabel.js.map +1 -1
- package/dist/Form/FormControlSet.js +8 -9
- package/dist/Form/FormControlSet.js.map +1 -1
- package/dist/Form/FormGroup.js +11 -12
- package/dist/Form/FormGroup.js.map +1 -1
- package/dist/Form/FormGroupContext.js +64 -39
- package/dist/Form/FormGroupContext.js.map +1 -1
- package/dist/Form/FormLabel.js +15 -17
- package/dist/Form/FormLabel.js.map +1 -1
- package/dist/Form/FormRadio.js +19 -22
- package/dist/Form/FormRadio.js.map +1 -1
- package/dist/Form/FormRadioSet.js +13 -16
- package/dist/Form/FormRadioSet.js.map +1 -1
- package/dist/Form/FormRadioSetContext.js +39 -34
- package/dist/Form/FormRadioSetContext.js.map +1 -1
- package/dist/Form/FormSwitch.js +16 -20
- package/dist/Form/FormSwitch.js.map +1 -1
- package/dist/Form/FormText.js +20 -29
- package/dist/Form/FormText.js.map +1 -1
- package/dist/Form/_FormText.scss +8 -8
- package/dist/Form/_index.scss +146 -168
- package/dist/Form/_mixins.scss +3 -216
- package/dist/Form/_variables.scss +267 -0
- package/dist/Form/useCheckboxSetValues.js +46 -23
- package/dist/Form/useCheckboxSetValues.js.map +1 -1
- package/dist/Hyperlink/index.js +25 -25
- package/dist/Hyperlink/index.js.map +1 -1
- package/dist/Hyperlink/index.scss +3 -3
- package/dist/Icon/_variables.scss +7 -0
- package/dist/Icon/index.js +21 -20
- package/dist/Icon/index.js.map +1 -1
- package/dist/Icon/index.scss +12 -10
- package/dist/IconButton/index.js +39 -35
- package/dist/IconButton/index.js.map +1 -1
- package/dist/IconButton/index.scss +74 -387
- package/dist/IconButtonToggle/index.js +16 -16
- package/dist/IconButtonToggle/index.js.map +1 -1
- package/dist/IconButtonToggle/index.scss +1 -1
- package/dist/Image/_variables.scss +13 -0
- package/dist/Image/index.scss +2 -53
- package/dist/Input/index.js +166 -0
- package/dist/Input/index.js.map +1 -0
- package/dist/InputSelect/index.js +105 -0
- package/dist/InputSelect/index.js.map +1 -0
- package/dist/InputText/index.js +45 -0
- package/dist/InputText/index.js.map +1 -0
- package/dist/Layout/index.js +33 -29
- package/dist/Layout/index.js.map +1 -1
- package/dist/ListBox/index.js +148 -0
- package/dist/ListBox/index.js.map +1 -0
- package/dist/ListBoxOption/index.js +94 -0
- package/dist/ListBoxOption/index.js.map +1 -0
- package/dist/MailtoLink/index.js +37 -34
- package/dist/MailtoLink/index.js.map +1 -1
- package/dist/Menu/MenuItem.js +11 -12
- package/dist/Menu/MenuItem.js.map +1 -1
- package/dist/Menu/SelectMenu.js +68 -44
- package/dist/Menu/SelectMenu.js.map +1 -1
- package/dist/Menu/_variables.scss +24 -0
- package/dist/Menu/index.js +10 -11
- package/dist/Menu/index.js.map +1 -1
- package/dist/Menu/index.scss +27 -25
- package/dist/Modal/AlertModal.js +5 -7
- package/dist/Modal/AlertModal.js.map +1 -1
- package/dist/Modal/FullscreenModal.js +6 -8
- package/dist/Modal/FullscreenModal.js.map +1 -1
- package/dist/Modal/MarketingModal.js +8 -10
- package/dist/Modal/MarketingModal.js.map +1 -1
- package/dist/Modal/ModalCloseButton.js +13 -15
- package/dist/Modal/ModalCloseButton.js.map +1 -1
- package/dist/Modal/ModalContext.js +13 -13
- package/dist/Modal/ModalContext.js.map +1 -1
- package/dist/Modal/ModalDialog.js +28 -25
- package/dist/Modal/ModalDialog.js.map +1 -1
- package/dist/Modal/ModalDialogBody.js +22 -11
- package/dist/Modal/ModalDialogBody.js.map +1 -1
- package/dist/Modal/ModalDialogFooter.js +6 -7
- package/dist/Modal/ModalDialogFooter.js.map +1 -1
- package/dist/Modal/ModalDialogHeader.js +6 -7
- package/dist/Modal/ModalDialogHeader.js.map +1 -1
- package/dist/Modal/ModalDialogHero.js +6 -7
- package/dist/Modal/ModalDialogHero.js.map +1 -1
- package/dist/Modal/ModalDialogHeroBackground.js +8 -9
- package/dist/Modal/ModalDialogHeroBackground.js.map +1 -1
- package/dist/Modal/ModalDialogHeroContent.js +6 -7
- package/dist/Modal/ModalDialogHeroContent.js.map +1 -1
- package/dist/Modal/ModalDialogTitle.js +6 -7
- package/dist/Modal/ModalDialogTitle.js.map +1 -1
- package/dist/Modal/ModalLayer.js +11 -17
- package/dist/Modal/ModalLayer.js.map +1 -1
- package/dist/Modal/ModalPopup.js +17 -17
- package/dist/Modal/ModalPopup.js.map +1 -1
- package/dist/Modal/PopperElement.js +25 -18
- package/dist/Modal/PopperElement.js.map +1 -1
- package/dist/Modal/Portal.js +40 -18
- package/dist/Modal/Portal.js.map +1 -1
- package/dist/Modal/StandardModal.js +6 -8
- package/dist/Modal/StandardModal.js.map +1 -1
- package/dist/Modal/_ModalDialog.scss +58 -50
- package/dist/Modal/_variables.scss +50 -0
- package/dist/Modal/index.js +293 -0
- package/dist/Modal/index.js.map +1 -0
- package/dist/Modal/index.scss +73 -6
- package/dist/Nav/_mixins.scss +4 -4
- package/dist/Nav/_variables.scss +58 -0
- package/dist/Nav/index.js +3 -2
- package/dist/Nav/index.js.map +1 -1
- package/dist/Nav/index.scss +66 -70
- package/dist/Navbar/_variables.scss +40 -0
- package/dist/Navbar/index.js +7 -6
- package/dist/Navbar/index.js.map +1 -1
- package/dist/Navbar/index.scss +2 -276
- package/dist/OverflowScroll/OverflowScroll.js +45 -37
- package/dist/OverflowScroll/OverflowScroll.js.map +1 -1
- package/dist/OverflowScroll/OverflowScrollContext.js +1 -1
- package/dist/OverflowScroll/OverflowScrollContext.js.map +1 -1
- package/dist/OverflowScroll/OverflowScrollItems.js +2 -4
- package/dist/OverflowScroll/OverflowScrollItems.js.map +1 -1
- package/dist/OverflowScroll/_variables.scss +5 -0
- package/dist/OverflowScroll/data/useOverflowScrollElementAttributes.js +3 -3
- package/dist/OverflowScroll/index.scss +1 -0
- package/dist/Overlay/index.js +6 -5
- package/dist/Overlay/index.js.map +1 -1
- package/dist/PageBanner/index.js +11 -13
- package/dist/PageBanner/index.js.map +1 -1
- package/dist/PageBanner/index.scss +21 -17
- package/dist/Pagination/DefaultPagination.js +34 -0
- package/dist/Pagination/DefaultPagination.js.map +1 -0
- package/dist/Pagination/MinimalPagination.js +8 -0
- package/dist/Pagination/MinimalPagination.js.map +1 -0
- package/dist/Pagination/PaginationContext.js +200 -0
- package/dist/Pagination/PaginationContext.js.map +1 -0
- package/dist/Pagination/ReducedPagination.js +8 -0
- package/dist/Pagination/ReducedPagination.js.map +1 -0
- package/dist/Pagination/_variables.scss +19 -0
- package/dist/Pagination/constants.js +15 -1
- package/dist/Pagination/getPaginationRange.js +4 -0
- package/dist/Pagination/index.js +44 -358
- package/dist/Pagination/index.js.map +1 -1
- package/dist/Pagination/index.scss +120 -226
- package/dist/Pagination/subcomponents/Ellipsis.js +11 -0
- package/dist/Pagination/subcomponents/Ellipsis.js.map +1 -0
- package/dist/Pagination/subcomponents/NextPageButton.js +57 -0
- package/dist/Pagination/subcomponents/NextPageButton.js.map +1 -0
- package/dist/Pagination/subcomponents/PageButton.js +31 -0
- package/dist/Pagination/subcomponents/PageButton.js.map +1 -0
- package/dist/Pagination/subcomponents/PageOfCountButton.js +17 -0
- package/dist/Pagination/subcomponents/PageOfCountButton.js.map +1 -0
- package/dist/Pagination/subcomponents/PaginationDropdown.js +34 -0
- package/dist/Pagination/subcomponents/PaginationDropdown.js.map +1 -0
- package/dist/Pagination/subcomponents/PreviousPageButton.js +57 -0
- package/dist/Pagination/subcomponents/PreviousPageButton.js.map +1 -0
- package/dist/Pagination/subcomponents/ScreenReaderText.js +13 -0
- package/dist/Pagination/subcomponents/ScreenReaderText.js.map +1 -0
- package/dist/Pagination/subcomponents/index.js +7 -0
- package/dist/Popover/_variables.scss +36 -0
- package/dist/Popover/index.js +11 -14
- package/dist/Popover/index.js.map +1 -1
- package/dist/Popover/index.scss +10 -9
- package/dist/ProductTour/Checkpoint.js +29 -22
- package/dist/ProductTour/Checkpoint.js.map +1 -1
- package/dist/ProductTour/Checkpoint.scss +43 -71
- package/dist/ProductTour/CheckpointActionRow.js +18 -16
- package/dist/ProductTour/CheckpointActionRow.js.map +1 -1
- package/dist/ProductTour/CheckpointBody.js +2 -4
- package/dist/ProductTour/CheckpointBody.js.map +1 -1
- package/dist/ProductTour/CheckpointBreadcrumbs.js +16 -16
- package/dist/ProductTour/CheckpointBreadcrumbs.js.map +1 -1
- package/dist/ProductTour/CheckpointTitle.js +2 -4
- package/dist/ProductTour/CheckpointTitle.js.map +1 -1
- package/dist/ProductTour/_variables.scss +15 -0
- package/dist/ProductTour/index.js +66 -47
- package/dist/ProductTour/index.js.map +1 -1
- package/dist/ProgressBar/_variables.scss +23 -0
- package/dist/ProgressBar/index.js +37 -35
- package/dist/ProgressBar/index.js.map +1 -1
- package/dist/ProgressBar/index.scss +36 -28
- package/dist/RadioButtonGroup/index.js +188 -0
- package/dist/RadioButtonGroup/index.js.map +1 -0
- package/dist/Scrollable/index.js +30 -15
- package/dist/Scrollable/index.js.map +1 -1
- package/dist/Scrollable/index.scss +2 -2
- package/dist/SearchField/SearchFieldAdvanced.js +56 -51
- package/dist/SearchField/SearchFieldAdvanced.js.map +1 -1
- package/dist/SearchField/SearchFieldClearButton.js +19 -20
- package/dist/SearchField/SearchFieldClearButton.js.map +1 -1
- package/dist/SearchField/SearchFieldInput.js +10 -11
- package/dist/SearchField/SearchFieldInput.js.map +1 -1
- package/dist/SearchField/SearchFieldLabel.js +5 -8
- package/dist/SearchField/SearchFieldLabel.js.map +1 -1
- package/dist/SearchField/SearchFieldSubmitButton.js +23 -23
- package/dist/SearchField/SearchFieldSubmitButton.js.map +1 -1
- package/dist/SearchField/_variables.scss +14 -0
- package/dist/SearchField/index.js +26 -31
- package/dist/SearchField/index.js.map +1 -1
- package/dist/SearchField/index.scss +23 -31
- package/dist/SelectableBox/SelectableBoxSet.js +25 -26
- package/dist/SelectableBox/SelectableBoxSet.js.map +1 -1
- package/dist/SelectableBox/_variables.scss +5 -0
- package/dist/SelectableBox/index.js +42 -38
- package/dist/SelectableBox/index.js.map +1 -1
- package/dist/SelectableBox/index.scss +13 -11
- package/dist/Sheet/SheetContainer.js +38 -16
- package/dist/Sheet/SheetContainer.js.map +1 -1
- package/dist/Sheet/index.js +65 -43
- package/dist/Sheet/index.js.map +1 -1
- package/dist/Sheet/index.scss +10 -10
- package/dist/Spinner/_variables.scss +9 -0
- package/dist/Spinner/index.js +8 -9
- package/dist/Spinner/index.js.map +1 -1
- package/dist/Spinner/index.scss +2 -57
- package/dist/Stack/_variables.scss +1 -0
- package/dist/Stack/index.js +9 -11
- package/dist/Stack/index.js.map +1 -1
- package/dist/Stack/index.scss +3 -1
- package/dist/StatefulButton/index.js +15 -17
- package/dist/StatefulButton/index.js.map +1 -1
- package/dist/StatusAlert/index.js +168 -0
- package/dist/StatusAlert/index.js.map +1 -0
- package/dist/Stepper/Stepper.js +2 -4
- package/dist/Stepper/Stepper.js.map +1 -1
- package/dist/Stepper/StepperActionRow.js +7 -10
- package/dist/Stepper/StepperActionRow.js.map +1 -1
- package/dist/Stepper/StepperContext.js +64 -32
- package/dist/Stepper/StepperContext.js.map +1 -1
- package/dist/Stepper/StepperHeader.js +23 -30
- package/dist/Stepper/StepperHeader.js.map +1 -1
- package/dist/Stepper/StepperHeaderStep.js +14 -17
- package/dist/Stepper/StepperHeaderStep.js.map +1 -1
- package/dist/Stepper/StepperStep.js +23 -24
- package/dist/Stepper/StepperStep.js.map +1 -1
- package/dist/Stepper/_variables.scss +18 -0
- package/dist/Stepper/index.scss +20 -19
- package/dist/Sticky/_variables.scss +3 -0
- package/dist/Sticky/index.js +30 -22
- package/dist/Sticky/index.js.map +1 -1
- package/dist/Sticky/index.scss +6 -4
- package/dist/Table/_variables.scss +34 -0
- package/dist/Table/index.js +267 -0
- package/dist/Table/index.js.map +1 -0
- package/dist/Table/index.scss +12 -0
- package/dist/Tabs/_variables.scss +24 -0
- package/dist/Tabs/deprecated/Tabs.scss +3 -0
- package/dist/Tabs/deprecated/index.js +123 -0
- package/dist/Tabs/deprecated/index.js.map +1 -0
- package/dist/Tabs/index.js +67 -49
- package/dist/Tabs/index.js.map +1 -1
- package/dist/Tabs/index.scss +25 -26
- package/dist/TextArea/index.js +44 -0
- package/dist/TextArea/index.js.map +1 -0
- package/dist/Toast/ToastContainer.js +38 -16
- package/dist/Toast/ToastContainer.js.map +1 -1
- package/dist/Toast/ToastContainer.scss +11 -9
- package/dist/Toast/_variables.scss +19 -0
- package/dist/Toast/index.js +33 -18
- package/dist/Toast/index.js.map +1 -1
- package/dist/Toast/index.scss +10 -9
- package/dist/Tooltip/_variables.scss +21 -0
- package/dist/Tooltip/index.js +8 -9
- package/dist/Tooltip/index.js.map +1 -1
- package/dist/Tooltip/index.scss +10 -136
- package/dist/TransitionReplace/DemoTransitionReplace.js +12 -3
- package/dist/TransitionReplace/DemoTransitionReplace.js.map +1 -1
- package/dist/TransitionReplace/index.js +136 -100
- package/dist/TransitionReplace/index.js.map +1 -1
- package/dist/Truncate/index.js +30 -24
- package/dist/Truncate/index.js.map +1 -1
- package/dist/ValidationFormGroup/index.js +106 -0
- package/dist/ValidationFormGroup/index.js.map +1 -0
- package/dist/ValidationMessage/index.js +76 -51
- package/dist/ValidationMessage/index.js.map +1 -1
- package/dist/ValidationMessage/index.scss +1 -1
- package/dist/asInput/index.js +251 -202
- package/dist/asInput/index.js.map +1 -1
- package/dist/hooks/useArrowKeyNavigation.js +46 -43
- package/dist/hooks/useArrowKeyNavigation.js.map +1 -1
- package/dist/hooks/useIndexOfLastVisibleChild.js +40 -26
- package/dist/hooks/useIndexOfLastVisibleChild.js.map +1 -1
- package/dist/hooks/useIsVisible.js +20 -13
- package/dist/hooks/useIsVisible.js.map +1 -1
- package/dist/hooks/useToggle.js +18 -11
- package/dist/hooks/useToggle.js.map +1 -1
- package/dist/hooks/useWindowSize.js +17 -6
- package/dist/hooks/useWindowSize.js.map +1 -1
- package/dist/index.js +14 -0
- package/dist/index.scss +4 -0
- package/dist/paragon.css +45 -0
- package/dist/utils/breakpoints.js +1 -1
- package/dist/utils/propTypes/utils.js +17 -2
- package/dist/withDeprecatedProps.js +79 -58
- package/dist/withDeprecatedProps.js.map +1 -1
- package/lib/help.js +23 -36
- package/lib/migrate-to-openedx-scope.js +62 -0
- package/package.json +20 -33
- package/{styles/scss → scss}/core/_functions.scss +1 -1
- package/scss/core/_grid.scss +21 -0
- package/{styles/scss → scss}/core/_utilities.scss +11 -17
- package/scss/core/_variables.scss +875 -0
- package/scss/core/core.scss +21 -0
- package/{styles/scss → scss}/core/utilities-only.scss +0 -1
- package/src/ActionRow/_index.scss +4 -2
- package/src/ActionRow/_variables.scss +2 -0
- package/src/Alert/_variables.scss +24 -0
- package/src/Alert/index.scss +32 -41
- package/src/Annotation/_variables.scss +18 -0
- package/src/Annotation/index.scss +103 -130
- package/src/Avatar/_variables.scss +10 -0
- package/src/Avatar/index.scss +20 -18
- package/src/AvatarButton/_variables.scss +3 -0
- package/src/AvatarButton/index.scss +5 -3
- package/src/Badge/_variables.scss +16 -0
- package/src/Badge/index.scss +2 -112
- package/src/Breadcrumb/_variables.scss +27 -0
- package/src/Breadcrumb/index.scss +16 -14
- package/src/Bubble/_variables.scss +8 -0
- package/src/Bubble/index.scss +12 -25
- package/src/Button/README.md +84 -0
- package/src/Button/_variables.scss +52 -0
- package/src/Button/deprecated/Button.test.jsx +34 -0
- package/src/Button/deprecated/index.jsx +145 -0
- package/src/Button/index.jsx +5 -2
- package/src/Button/index.scss +370 -855
- package/src/Card/_variables.scss +55 -0
- package/src/Card/index.scss +79 -78
- package/src/Carousel/_variables.scss +27 -0
- package/src/Carousel/index.scss +2 -168
- package/src/CheckBox/CheckBox.test.jsx +65 -0
- package/src/CheckBox/README.md +93 -0
- package/src/CheckBox/index.jsx +80 -0
- package/src/CheckBoxGroup/CheckBoxGroup.test.jsx +33 -0
- package/src/CheckBoxGroup/README.md +35 -0
- package/src/CheckBoxGroup/index.jsx +19 -0
- package/src/Chip/Chip.test.jsx +82 -16
- package/src/Chip/ChipIcon.tsx +54 -0
- package/src/Chip/README.md +116 -11
- package/src/Chip/__snapshots__/Chip.test.jsx.snap +84 -90
- package/src/Chip/_variables.scss +28 -0
- package/src/Chip/constants.js +5 -0
- package/src/Chip/index.scss +102 -61
- package/src/Chip/index.tsx +79 -46
- package/src/Chip/mixins.scss +42 -0
- package/src/ChipCarousel/_variables.scss +3 -0
- package/src/ChipCarousel/index.scss +4 -1
- package/src/CloseButton/_variables.scss +6 -0
- package/src/CloseButton/index.scss +2 -31
- package/src/Code/_variables.scss +17 -0
- package/src/Code/index.scss +2 -47
- package/src/Collapsible/_variables.scss +12 -0
- package/src/Collapsible/index.scss +15 -15
- package/src/ColorPicker/_variables.scss +2 -0
- package/src/ColorPicker/index.scss +11 -9
- package/src/Container/_variables.scss +5 -0
- package/src/DataTable/CollapsibleButtonGroup.jsx +2 -2
- package/src/DataTable/TablePagination.jsx +7 -2
- package/src/DataTable/TablePaginationMinimal.jsx +5 -0
- package/src/DataTable/_variables.scss +11 -0
- package/src/DataTable/filters/TextFilter.jsx +4 -5
- package/src/DataTable/index.scss +50 -48
- package/src/DataTable/tests/TablePagination.test.jsx +6 -6
- package/src/Dropdown/README.md +93 -0
- package/src/Dropdown/_variables.scss +33 -0
- package/src/Dropdown/deprecated/Dropdown.test.jsx +238 -0
- package/src/Dropdown/deprecated/DropdownButton.jsx +52 -0
- package/src/Dropdown/deprecated/DropdownItem.jsx +34 -0
- package/src/Dropdown/deprecated/DropdownMenu.jsx +50 -0
- package/src/Dropdown/deprecated/__snapshots__/Dropdown.test.jsx.snap +229 -0
- package/src/Dropdown/deprecated/index.jsx +222 -0
- package/src/Dropdown/index.jsx +2 -0
- package/src/Dropdown/index.scss +12 -11
- package/src/Dropzone/_variables.scss +9 -0
- package/src/Dropzone/index.scss +14 -12
- package/src/Fieldset/Fieldset.test.jsx +101 -0
- package/src/Fieldset/README.md +146 -0
- package/src/Fieldset/index.jsx +107 -0
- package/src/Fieldset/index.scss +12 -0
- package/src/Form/FormAutosuggest.jsx +332 -254
- package/src/Form/_FormText.scss +8 -8
- package/src/Form/_index.scss +146 -168
- package/src/Form/_mixins.scss +3 -216
- package/src/Form/_variables.scss +267 -0
- package/src/Form/form-autosuggest.mdx +114 -57
- package/src/Form/tests/FormAutosuggest.test.jsx +63 -16
- package/src/Hyperlink/index.scss +3 -3
- package/src/Icon/README.md +3 -3
- package/src/Icon/_variables.scss +7 -0
- package/src/Icon/index.jsx +1 -1
- package/src/Icon/index.scss +12 -10
- package/src/IconButton/README.md +15 -1
- package/src/IconButton/__snapshots__/IconButton.test.jsx.snap +28 -5
- package/src/IconButton/index.jsx +14 -7
- package/src/IconButton/index.scss +74 -387
- package/src/IconButtonToggle/index.scss +1 -1
- package/src/Image/_variables.scss +13 -0
- package/src/Image/index.scss +2 -53
- package/src/Input/README.md +74 -0
- package/src/Input/__snapshots__/input.test.jsx.snap +53 -0
- package/src/Input/index.jsx +151 -0
- package/src/Input/input.test.jsx +85 -0
- package/src/InputSelect/README.md +136 -0
- package/src/InputSelect/index.jsx +92 -0
- package/src/InputText/InputText.test.jsx +74 -0
- package/src/InputText/README.md +293 -0
- package/src/InputText/index.jsx +49 -0
- package/src/ListBox/ListBox.test.jsx +161 -0
- package/src/ListBox/README.md +185 -0
- package/src/ListBox/index.jsx +115 -0
- package/src/ListBoxOption/ListBoxOption.test.jsx +154 -0
- package/src/ListBoxOption/index.jsx +78 -0
- package/src/Menu/_variables.scss +24 -0
- package/src/Menu/index.scss +27 -25
- package/src/Modal/ModalDialog.jsx +5 -0
- package/src/Modal/README.md +148 -0
- package/src/Modal/_ModalDialog.scss +58 -50
- package/src/Modal/_variables.scss +50 -0
- package/src/Modal/index.jsx +319 -0
- package/src/Modal/index.scss +73 -6
- package/src/Modal/tests/Modal.test.jsx +261 -0
- package/src/Nav/_mixins.scss +4 -4
- package/src/Nav/_variables.scss +58 -0
- package/src/Nav/index.scss +66 -70
- package/src/Navbar/_variables.scss +40 -0
- package/src/Navbar/index.scss +2 -276
- package/src/OverflowScroll/_variables.scss +5 -0
- package/src/OverflowScroll/data/useOverflowScrollElementAttributes.js +3 -3
- package/src/OverflowScroll/index.scss +1 -0
- package/src/Overlay/index.jsx +3 -2
- package/src/PageBanner/index.scss +21 -17
- package/src/Pagination/DefaultPagination.jsx +43 -0
- package/src/Pagination/MinimalPagination.jsx +11 -0
- package/src/Pagination/Pagination.test.jsx +201 -156
- package/src/Pagination/PaginationContext.jsx +191 -0
- package/src/Pagination/README.md +86 -22
- package/src/Pagination/ReducedPagination.jsx +12 -0
- package/src/Pagination/__snapshots__/Pagination.test.jsx.snap +301 -0
- package/src/Pagination/_variables.scss +19 -0
- package/src/Pagination/constants.js +15 -1
- package/src/Pagination/getPaginationRange.js +4 -0
- package/src/Pagination/index.jsx +48 -420
- package/src/Pagination/index.scss +120 -226
- package/src/Pagination/subcomponents/Ellipsis.jsx +13 -0
- package/src/Pagination/subcomponents/NextPageButton.jsx +64 -0
- package/src/Pagination/subcomponents/PageButton.jsx +33 -0
- package/src/Pagination/subcomponents/PageOfCountButton.jsx +25 -0
- package/src/Pagination/subcomponents/PaginationDropdown.jsx +37 -0
- package/src/Pagination/subcomponents/PreviousPageButton.jsx +64 -0
- package/src/Pagination/subcomponents/ScreenReaderText.jsx +17 -0
- package/src/Pagination/subcomponents/index.js +7 -0
- package/src/Popover/_variables.scss +36 -0
- package/src/Popover/index.scss +10 -9
- package/src/ProductTour/Checkpoint.scss +43 -71
- package/src/ProductTour/_variables.scss +15 -0
- package/src/ProgressBar/_variables.scss +23 -0
- package/src/ProgressBar/index.scss +36 -28
- package/src/RadioButtonGroup/README.md +50 -0
- package/src/RadioButtonGroup/RadioButtonGroup.test.jsx +127 -0
- package/src/RadioButtonGroup/index.jsx +185 -0
- package/src/Scrollable/index.scss +2 -2
- package/src/SearchField/SearchField.test.jsx +1 -1
- package/src/SearchField/SearchFieldAdvanced.jsx +2 -4
- package/src/SearchField/SearchFieldClearButton.jsx +13 -5
- package/src/SearchField/SearchFieldInput.jsx +2 -2
- package/src/SearchField/SearchFieldSubmitButton.jsx +10 -8
- package/src/SearchField/__snapshots__/SearchField.test.jsx.snap +29 -33
- package/src/SearchField/_variables.scss +14 -0
- package/src/SearchField/index.jsx +4 -6
- package/src/SearchField/index.scss +23 -31
- package/src/SelectableBox/_variables.scss +5 -0
- package/src/SelectableBox/index.scss +13 -11
- package/src/Sheet/index.scss +10 -10
- package/src/Spinner/_variables.scss +9 -0
- package/src/Spinner/index.scss +2 -57
- package/src/Stack/_variables.scss +1 -0
- package/src/Stack/index.scss +3 -1
- package/src/StatusAlert/README.md +149 -0
- package/src/StatusAlert/StatusAlert.test.jsx +150 -0
- package/src/StatusAlert/index.jsx +144 -0
- package/src/Stepper/_variables.scss +18 -0
- package/src/Stepper/index.scss +20 -19
- package/src/Sticky/_variables.scss +3 -0
- package/src/Sticky/index.scss +6 -4
- package/src/Table/README.md +506 -0
- package/src/Table/Table.test.jsx +367 -0
- package/src/Table/_variables.scss +34 -0
- package/src/Table/index.jsx +264 -0
- package/src/Table/index.scss +12 -0
- package/src/Tabs/README.md +3 -1
- package/src/Tabs/_variables.scss +24 -0
- package/src/Tabs/deprecated/Tabs.scss +3 -0
- package/src/Tabs/deprecated/Tabs.test.jsx +50 -0
- package/src/Tabs/deprecated/index.jsx +117 -0
- package/src/Tabs/index.jsx +3 -0
- package/src/Tabs/index.scss +25 -26
- package/src/TextArea/README.md +63 -0
- package/src/TextArea/index.jsx +48 -0
- package/src/Toast/ToastContainer.scss +11 -9
- package/src/Toast/_variables.scss +19 -0
- package/src/Toast/index.scss +10 -9
- package/src/Tooltip/_variables.scss +21 -0
- package/src/Tooltip/index.scss +10 -136
- package/src/TransitionReplace/README.md +4 -4
- package/src/ValidationFormGroup/README.md +116 -0
- package/src/ValidationFormGroup/ValidationFormGroup.test.jsx +146 -0
- package/src/ValidationFormGroup/__snapshots__/ValidationFormGroup.test.jsx.snap +161 -0
- package/src/ValidationFormGroup/index.jsx +114 -0
- package/src/ValidationMessage/index.scss +1 -1
- package/src/index.js +14 -0
- package/src/index.scss +4 -0
- package/src/utils/breakpoints.js +1 -1
- package/src/utils/propTypes/utils.js +17 -2
- package/dist/Annotation/_mixins.scss +0 -104
- package/dist/Button/_mixins.scss +0 -14
- package/dist/Button/button-group.scss +0 -126
- package/dist/Card/card-bootstrap.scss +0 -168
- package/dist/Dropdown/dropdown-bootstrap.scss +0 -181
- package/dist/Form/_bootstrap-custom-forms.scss +0 -551
- package/dist/Form/_bootstrap-forms.scss +0 -381
- package/dist/Form/_input-group.scss +0 -188
- package/dist/IconButton/_mixins.scss +0 -4
- package/dist/Pagination/pagination-bootstrap.scss +0 -83
- package/dist/Popover/popover-bootstrap.scss +0 -198
- package/dist/ProgressBar/_mixins.scss +0 -22
- package/dist/ProgressBar/bootstrap-progress.scss +0 -49
- package/dist/Toast/bootstrap-toast.scss +0 -46
- package/dist/core.css +0 -16778
- package/dist/core.css.map +0 -1
- package/dist/core.min.css +0 -2
- package/dist/light.css +0 -4090
- package/dist/light.css.map +0 -1
- package/dist/light.min.css +0 -2
- package/dist/theme-urls.json +0 -21
- package/lib/build-scss.js +0 -188
- package/lib/build-tokens.js +0 -119
- package/lib/replace-variables.js +0 -38
- package/lib/utils.js +0 -9
- package/src/Annotation/_mixins.scss +0 -104
- package/src/Button/_mixins.scss +0 -14
- package/src/Button/button-group.scss +0 -126
- package/src/Card/card-bootstrap.scss +0 -168
- package/src/Dropdown/dropdown-bootstrap.scss +0 -181
- package/src/Form/_bootstrap-custom-forms.scss +0 -551
- package/src/Form/_bootstrap-forms.scss +0 -381
- package/src/Form/_input-group.scss +0 -188
- package/src/IconButton/_mixins.scss +0 -4
- package/src/Pagination/pagination-bootstrap.scss +0 -83
- package/src/Popover/popover-bootstrap.scss +0 -198
- package/src/ProgressBar/_mixins.scss +0 -22
- package/src/ProgressBar/bootstrap-progress.scss +0 -49
- package/src/Toast/bootstrap-toast.scss +0 -46
- package/styles/css/core/custom-media-breakpoints.css +0 -17
- package/styles/css/core/index.css +0 -2
- package/styles/css/core/variables.css +0 -606
- package/styles/css/themes/light/index.css +0 -2
- package/styles/css/themes/light/utility-classes.css +0 -2454
- package/styles/css/themes/light/variables.css +0 -1636
- package/styles/scss/core/_grid.scss +0 -21
- package/styles/scss/core/_variables.scss +0 -869
- package/styles/scss/core/bootstrap-override/_functions.scss +0 -104
- package/styles/scss/core/bootstrap-override/_mixins.scss +0 -4
- package/styles/scss/core/bootstrap-override/_utilities.scss +0 -4
- package/styles/scss/core/bootstrap-override/bootstrap.scss +0 -2
- package/styles/scss/core/bootstrap-override/mixins/_grid-framework.scss +0 -80
- package/styles/scss/core/bootstrap-override/mixins/_grid.scss +0 -69
- package/styles/scss/core/bootstrap-override/mixins/_list-group.scss +0 -22
- package/styles/scss/core/bootstrap-override/utilities/_background.scss +0 -7
- package/styles/scss/core/bootstrap-override/utilities/_borders.scss +0 -67
- package/styles/scss/core/bootstrap-override/utilities/_spacing.scss +0 -70
- package/styles/scss/core/bootstrap-override/utilities/_text.scss +0 -68
- package/styles/scss/core/core.scss +0 -21
- package/tokens/README.md +0 -158
- package/tokens/css-utilities.js +0 -56
- package/tokens/map-scss-to-css.js +0 -24
- package/tokens/replace-variables.js +0 -32
- package/tokens/sass-helpers.js +0 -98
- package/tokens/src/core/alias/size.json +0 -15
- package/tokens/src/core/components/ActionRow.json +0 -10
- package/tokens/src/core/components/Alert.json +0 -30
- package/tokens/src/core/components/Annotation.json +0 -25
- package/tokens/src/core/components/Avatar.json +0 -17
- package/tokens/src/core/components/AvatarButton.json +0 -11
- package/tokens/src/core/components/Badge.json +0 -33
- package/tokens/src/core/components/Breadcrumb.json +0 -37
- package/tokens/src/core/components/Bubble.json +0 -10
- package/tokens/src/core/components/Button/core.json +0 -105
- package/tokens/src/core/components/Card.json +0 -91
- package/tokens/src/core/components/Carousel.json +0 -37
- package/tokens/src/core/components/Chip.json +0 -19
- package/tokens/src/core/components/ChipCarousel.json +0 -9
- package/tokens/src/core/components/CloseButton.json +0 -14
- package/tokens/src/core/components/Code.json +0 -34
- package/tokens/src/core/components/Collapsible.json +0 -29
- package/tokens/src/core/components/ColorPicker.json +0 -8
- package/tokens/src/core/components/Container.json +0 -13
- package/tokens/src/core/components/DataTable.json +0 -27
- package/tokens/src/core/components/Dropdown.json +0 -67
- package/tokens/src/core/components/Dropzone.json +0 -21
- package/tokens/src/core/components/Form/other.json +0 -14
- package/tokens/src/core/components/Form/size.json +0 -233
- package/tokens/src/core/components/Form/spacing.json +0 -155
- package/tokens/src/core/components/Form/transition.json +0 -16
- package/tokens/src/core/components/Form/typography.json +0 -122
- package/tokens/src/core/components/Icon.json +0 -11
- package/tokens/src/core/components/IconButton.json +0 -15
- package/tokens/src/core/components/Image.json +0 -28
- package/tokens/src/core/components/Menu.json +0 -48
- package/tokens/src/core/components/Modal.json +0 -47
- package/tokens/src/core/components/Nav.json +0 -55
- package/tokens/src/core/components/Navbar.json +0 -70
- package/tokens/src/core/components/Pagination.json +0 -70
- package/tokens/src/core/components/Popover.json +0 -48
- package/tokens/src/core/components/ProductTour.json +0 -37
- package/tokens/src/core/components/ProgressBar.json +0 -39
- package/tokens/src/core/components/SearchField.json +0 -23
- package/tokens/src/core/components/SelectableBox.json +0 -9
- package/tokens/src/core/components/Sheet.json +0 -10
- package/tokens/src/core/components/Spinner.json +0 -19
- package/tokens/src/core/components/Stack.json +0 -7
- package/tokens/src/core/components/Stepper.json +0 -42
- package/tokens/src/core/components/Sticky.json +0 -7
- package/tokens/src/core/components/Tab.json +0 -19
- package/tokens/src/core/components/Tabs.json +0 -19
- package/tokens/src/core/components/Toast.json +0 -30
- package/tokens/src/core/components/Tooltip.json +0 -33
- package/tokens/src/core/components/general/caret.json +0 -13
- package/tokens/src/core/components/general/headings.json +0 -16
- package/tokens/src/core/components/general/hr.json +0 -10
- package/tokens/src/core/components/general/input.json +0 -51
- package/tokens/src/core/components/general/link.json +0 -30
- package/tokens/src/core/components/general/list.json +0 -26
- package/tokens/src/core/components/general/text.json +0 -24
- package/tokens/src/core/global/breakpoints.json +0 -12
- package/tokens/src/core/global/display.json +0 -21
- package/tokens/src/core/global/elevation.json +0 -19
- package/tokens/src/core/global/other.json +0 -4
- package/tokens/src/core/global/spacing.json +0 -35
- package/tokens/src/core/global/transition.json +0 -14
- package/tokens/src/core/global/typography.json +0 -91
- package/tokens/src/core/utilities/color.json +0 -12
- package/tokens/src/themes/light/alias/color.json +0 -114
- package/tokens/src/themes/light/components/Alert.json +0 -47
- package/tokens/src/themes/light/components/Annotation.json +0 -29
- package/tokens/src/themes/light/components/Avatar.json +0 -7
- package/tokens/src/themes/light/components/Badge.json +0 -186
- package/tokens/src/themes/light/components/Breadcrumb.json +0 -14
- package/tokens/src/themes/light/components/Bubble.json +0 -18
- package/tokens/src/themes/light/components/Button/brand.json +0 -260
- package/tokens/src/themes/light/components/Button/core.json +0 -24
- package/tokens/src/themes/light/components/Button/danger.json +0 -247
- package/tokens/src/themes/light/components/Button/dark.json +0 -230
- package/tokens/src/themes/light/components/Button/info.json +0 -238
- package/tokens/src/themes/light/components/Button/light.json +0 -236
- package/tokens/src/themes/light/components/Button/primary.json +0 -250
- package/tokens/src/themes/light/components/Button/secondary.json +0 -278
- package/tokens/src/themes/light/components/Button/success.json +0 -253
- package/tokens/src/themes/light/components/Button/tertiary.json +0 -109
- package/tokens/src/themes/light/components/Button/warning.json +0 -276
- package/tokens/src/themes/light/components/Card.json +0 -40
- package/tokens/src/themes/light/components/Carousel.json +0 -45
- package/tokens/src/themes/light/components/Chip.json +0 -19
- package/tokens/src/themes/light/components/CloseButton.json +0 -10
- package/tokens/src/themes/light/components/Code.json +0 -23
- package/tokens/src/themes/light/components/DataTable.json +0 -26
- package/tokens/src/themes/light/components/Dropdown.json +0 -41
- package/tokens/src/themes/light/components/Dropzone.json +0 -23
- package/tokens/src/themes/light/components/Form/color.json +0 -270
- package/tokens/src/themes/light/components/Form/elevation.json +0 -76
- package/tokens/src/themes/light/components/Form/other.json +0 -131
- package/tokens/src/themes/light/components/IconButton.json +0 -451
- package/tokens/src/themes/light/components/Image.json +0 -18
- package/tokens/src/themes/light/components/Menu.json +0 -30
- package/tokens/src/themes/light/components/Modal.json +0 -37
- package/tokens/src/themes/light/components/Nav.json +0 -166
- package/tokens/src/themes/light/components/Navbar.json +0 -136
- package/tokens/src/themes/light/components/OverflowScroll.json +0 -9
- package/tokens/src/themes/light/components/PageBanner.json +0 -24
- package/tokens/src/themes/light/components/Pagination.json +0 -40
- package/tokens/src/themes/light/components/Popover.json +0 -55
- package/tokens/src/themes/light/components/ProductTour.json +0 -35
- package/tokens/src/themes/light/components/ProgressBar.json +0 -20
- package/tokens/src/themes/light/components/Scrollable.json +0 -14
- package/tokens/src/themes/light/components/SearchField.json +0 -25
- package/tokens/src/themes/light/components/Sheet.json +0 -22
- package/tokens/src/themes/light/components/Stepper.json +0 -34
- package/tokens/src/themes/light/components/Sticky.json +0 -18
- package/tokens/src/themes/light/components/Tab.json +0 -62
- package/tokens/src/themes/light/components/Toast.json +0 -33
- package/tokens/src/themes/light/components/Tooltip.json +0 -30
- package/tokens/src/themes/light/components/general/body.json +0 -8
- package/tokens/src/themes/light/components/general/headings.json +0 -7
- package/tokens/src/themes/light/components/general/hr.json +0 -15
- package/tokens/src/themes/light/components/general/input.json +0 -18
- package/tokens/src/themes/light/components/general/link.json +0 -109
- package/tokens/src/themes/light/components/general/list.json +0 -38
- package/tokens/src/themes/light/components/general/text.json +0 -6
- package/tokens/src/themes/light/global/color.json +0 -1661
- package/tokens/src/themes/light/global/elevation.json +0 -201
- package/tokens/src/themes/light/global/other.json +0 -4
- package/tokens/style-dictionary.js +0 -223
- package/tokens/utils.js +0 -210
- /package/{styles/scss → scss}/core/_exports.module.scss +0 -0
- /package/{styles/scss → scss}/core/_typography.scss +0 -0
|
@@ -1,24 +1,40 @@
|
|
|
1
|
+
function _typeof(obj) { "@babel/helpers - typeof"; return _typeof = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function (obj) { return typeof obj; } : function (obj) { return obj && "function" == typeof Symbol && obj.constructor === Symbol && obj !== Symbol.prototype ? "symbol" : typeof obj; }, _typeof(obj); }
|
|
1
2
|
function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }
|
|
2
3
|
function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys(Object(source), !0).forEach(function (key) { _defineProperty(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }
|
|
3
4
|
function _defineProperty(obj, key, value) { key = _toPropertyKey(key); if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
|
|
4
|
-
function
|
|
5
|
-
function
|
|
5
|
+
function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } }
|
|
6
|
+
function _defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, _toPropertyKey(descriptor.key), descriptor); } }
|
|
7
|
+
function _createClass(Constructor, protoProps, staticProps) { if (protoProps) _defineProperties(Constructor.prototype, protoProps); if (staticProps) _defineProperties(Constructor, staticProps); Object.defineProperty(Constructor, "prototype", { writable: false }); return Constructor; }
|
|
8
|
+
function _toPropertyKey(arg) { var key = _toPrimitive(arg, "string"); return _typeof(key) === "symbol" ? key : String(key); }
|
|
9
|
+
function _toPrimitive(input, hint) { if (_typeof(input) !== "object" || input === null) return input; var prim = input[Symbol.toPrimitive]; if (prim !== undefined) { var res = prim.call(input, hint || "default"); if (_typeof(res) !== "object") return res; throw new TypeError("@@toPrimitive must return a primitive value."); } return (hint === "string" ? String : Number)(input); }
|
|
10
|
+
function _inherits(subClass, superClass) { if (typeof superClass !== "function" && superClass !== null) { throw new TypeError("Super expression must either be null or a function"); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, writable: true, configurable: true } }); Object.defineProperty(subClass, "prototype", { writable: false }); if (superClass) _setPrototypeOf(subClass, superClass); }
|
|
11
|
+
function _setPrototypeOf(o, p) { _setPrototypeOf = Object.setPrototypeOf ? Object.setPrototypeOf.bind() : function _setPrototypeOf(o, p) { o.__proto__ = p; return o; }; return _setPrototypeOf(o, p); }
|
|
12
|
+
function _createSuper(Derived) { var hasNativeReflectConstruct = _isNativeReflectConstruct(); return function _createSuperInternal() { var Super = _getPrototypeOf(Derived), result; if (hasNativeReflectConstruct) { var NewTarget = _getPrototypeOf(this).constructor; result = Reflect.construct(Super, arguments, NewTarget); } else { result = Super.apply(this, arguments); } return _possibleConstructorReturn(this, result); }; }
|
|
13
|
+
function _possibleConstructorReturn(self, call) { if (call && (_typeof(call) === "object" || typeof call === "function")) { return call; } else if (call !== void 0) { throw new TypeError("Derived constructors may only return object or undefined"); } return _assertThisInitialized(self); }
|
|
14
|
+
function _assertThisInitialized(self) { if (self === void 0) { throw new ReferenceError("this hasn't been initialised - super() hasn't been called"); } return self; }
|
|
15
|
+
function _isNativeReflectConstruct() { if (typeof Reflect === "undefined" || !Reflect.construct) return false; if (Reflect.construct.sham) return false; if (typeof Proxy === "function") return true; try { Boolean.prototype.valueOf.call(Reflect.construct(Boolean, [], function () {})); return true; } catch (e) { return false; } }
|
|
16
|
+
function _getPrototypeOf(o) { _getPrototypeOf = Object.setPrototypeOf ? Object.getPrototypeOf.bind() : function _getPrototypeOf(o) { return o.__proto__ || Object.getPrototypeOf(o); }; return _getPrototypeOf(o); }
|
|
6
17
|
import React from 'react';
|
|
7
18
|
import PropTypes from 'prop-types';
|
|
8
19
|
import { CSSTransition, TransitionGroup } from 'react-transition-group';
|
|
9
20
|
import classNames from 'classnames';
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
21
|
+
var TransitionReplace = /*#__PURE__*/function (_React$Component) {
|
|
22
|
+
_inherits(TransitionReplace, _React$Component);
|
|
23
|
+
var _super = _createSuper(TransitionReplace);
|
|
24
|
+
function TransitionReplace(props) {
|
|
25
|
+
var _this;
|
|
26
|
+
_classCallCheck(this, TransitionReplace);
|
|
27
|
+
_this = _super.call(this, props);
|
|
28
|
+
_this.state = {
|
|
14
29
|
height: null
|
|
15
30
|
};
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
31
|
+
_this.onChildEnter = _this.onChildEnter.bind(_assertThisInitialized(_this));
|
|
32
|
+
_this.onChildEntering = _this.onChildEntering.bind(_assertThisInitialized(_this));
|
|
33
|
+
_this.onChildEntered = _this.onChildEntered.bind(_assertThisInitialized(_this));
|
|
34
|
+
_this.onChildExit = _this.onChildExit.bind(_assertThisInitialized(_this));
|
|
35
|
+
_this.onChildExiting = _this.onChildExiting.bind(_assertThisInitialized(_this));
|
|
36
|
+
_this.onChildExited = _this.onChildExited.bind(_assertThisInitialized(_this));
|
|
37
|
+
return _this;
|
|
22
38
|
}
|
|
23
39
|
|
|
24
40
|
// Transition events are fired in this order:
|
|
@@ -34,101 +50,121 @@ class TransitionReplace extends React.Component {
|
|
|
34
50
|
// 1. onChildExit (explicitly set the height to match the current current)
|
|
35
51
|
// 2. onChildEntering (set the height to match the new content)
|
|
36
52
|
// 3. onChildExited (reset the height to null)
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
this.props.onChildEnter
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
onChildEntering(htmlNode) {
|
|
44
|
-
this.setState({
|
|
45
|
-
height: htmlNode.offsetHeight
|
|
46
|
-
});
|
|
47
|
-
if (this.props.onChildEntering) {
|
|
48
|
-
this.props.onChildEntering(htmlNode);
|
|
53
|
+
_createClass(TransitionReplace, [{
|
|
54
|
+
key: "onChildEnter",
|
|
55
|
+
value: function onChildEnter(htmlNode) {
|
|
56
|
+
if (this.props.onChildEnter) {
|
|
57
|
+
this.props.onChildEnter(htmlNode);
|
|
58
|
+
}
|
|
49
59
|
}
|
|
50
|
-
}
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
|
|
55
|
-
|
|
56
|
-
this.props.
|
|
60
|
+
}, {
|
|
61
|
+
key: "onChildEntering",
|
|
62
|
+
value: function onChildEntering(htmlNode) {
|
|
63
|
+
this.setState({
|
|
64
|
+
height: htmlNode.offsetHeight
|
|
65
|
+
});
|
|
66
|
+
if (this.props.onChildEntering) {
|
|
67
|
+
this.props.onChildEntering(htmlNode);
|
|
68
|
+
}
|
|
57
69
|
}
|
|
58
|
-
}
|
|
59
|
-
|
|
60
|
-
|
|
61
|
-
|
|
62
|
-
|
|
63
|
-
|
|
64
|
-
this.props.
|
|
70
|
+
}, {
|
|
71
|
+
key: "onChildEntered",
|
|
72
|
+
value: function onChildEntered(htmlNode) {
|
|
73
|
+
this.setState({
|
|
74
|
+
height: null
|
|
75
|
+
});
|
|
76
|
+
if (this.props.onChildEntered) {
|
|
77
|
+
this.props.onChildEntered(htmlNode);
|
|
78
|
+
}
|
|
65
79
|
}
|
|
66
|
-
}
|
|
67
|
-
|
|
68
|
-
|
|
69
|
-
this.
|
|
80
|
+
}, {
|
|
81
|
+
key: "onChildExit",
|
|
82
|
+
value: function onChildExit(htmlNode) {
|
|
83
|
+
this.setState({
|
|
84
|
+
height: htmlNode.offsetHeight
|
|
85
|
+
});
|
|
86
|
+
if (this.props.onChildExit) {
|
|
87
|
+
this.props.onChildExit(htmlNode);
|
|
88
|
+
}
|
|
70
89
|
}
|
|
71
|
-
}
|
|
72
|
-
|
|
73
|
-
|
|
74
|
-
|
|
75
|
-
|
|
76
|
-
|
|
77
|
-
this.props.onChildExited(htmlNode);
|
|
90
|
+
}, {
|
|
91
|
+
key: "onChildExiting",
|
|
92
|
+
value: function onChildExiting(htmlNode) {
|
|
93
|
+
if (this.props.onChildExiting) {
|
|
94
|
+
this.props.onChildExiting(htmlNode);
|
|
95
|
+
}
|
|
78
96
|
}
|
|
79
|
-
}
|
|
80
|
-
|
|
81
|
-
|
|
82
|
-
|
|
83
|
-
|
|
97
|
+
}, {
|
|
98
|
+
key: "onChildExited",
|
|
99
|
+
value: function onChildExited(htmlNode) {
|
|
100
|
+
this.setState({
|
|
101
|
+
height: null
|
|
102
|
+
});
|
|
103
|
+
if (this.props.onChildExited) {
|
|
104
|
+
this.props.onChildExited(htmlNode);
|
|
105
|
+
}
|
|
84
106
|
}
|
|
85
|
-
|
|
86
|
-
|
|
87
|
-
|
|
88
|
-
|
|
89
|
-
|
|
90
|
-
|
|
91
|
-
|
|
92
|
-
entering: {},
|
|
93
|
-
entered: {},
|
|
94
|
-
exiting: {
|
|
95
|
-
position: 'absolute',
|
|
96
|
-
top: 0,
|
|
97
|
-
left: 0,
|
|
98
|
-
right: 0,
|
|
99
|
-
pointerEvents: 'none'
|
|
100
|
-
},
|
|
101
|
-
exited: {}
|
|
102
|
-
};
|
|
103
|
-
return /*#__PURE__*/React.createElement(CSSTransition, {
|
|
104
|
-
timeout: {
|
|
105
|
-
enter: this.props.enterDuration,
|
|
106
|
-
exit: this.props.exitDuration
|
|
107
|
-
},
|
|
108
|
-
unmountOnExit: true,
|
|
109
|
-
mountOnEnter: true,
|
|
110
|
-
onEnter: this.onChildEnter,
|
|
111
|
-
onEntering: this.onChildEntering,
|
|
112
|
-
onEntered: this.onChildEntered,
|
|
113
|
-
onExit: this.onChildExit,
|
|
114
|
-
onExiting: this.onChildExiting,
|
|
115
|
-
onExited: this.onChildExited,
|
|
116
|
-
classNames: this.props.transitionClassNames
|
|
117
|
-
}, state => /*#__PURE__*/React.createElement("div", {
|
|
118
|
-
style: _objectSpread(_objectSpread(_objectSpread({}, commonChildStyles), transitionStyles[state]), this.props.transitionStyles[state])
|
|
119
|
-
}, child));
|
|
120
|
-
}
|
|
121
|
-
render() {
|
|
122
|
-
return /*#__PURE__*/React.createElement(TransitionGroup, {
|
|
123
|
-
className: classNames('pgn-transition-replace-group', 'position-relative', {
|
|
124
|
-
'overflow-hidden': this.state.height !== null
|
|
125
|
-
}, this.props.className),
|
|
126
|
-
style: {
|
|
127
|
-
height: this.state.height
|
|
107
|
+
}, {
|
|
108
|
+
key: "renderChildTransition",
|
|
109
|
+
value: function renderChildTransition(child) {
|
|
110
|
+
var _this2 = this;
|
|
111
|
+
if (!child.key && process.env.NODE_ENV === 'development') {
|
|
112
|
+
// eslint-disable-next-line no-console
|
|
113
|
+
console.warn("TransitionReplace: A child is missing a 'key' prop. Keys are required for any child of this component.");
|
|
128
114
|
}
|
|
129
|
-
|
|
130
|
-
|
|
131
|
-
|
|
115
|
+
// Makes the exiting and entering children occupy the same space
|
|
116
|
+
// SCSS handles the crossfade so it can be easily overridden
|
|
117
|
+
var commonChildStyles = {
|
|
118
|
+
// Prevent margin-collapsing which throws off height calculations
|
|
119
|
+
padding: '.1px 0'
|
|
120
|
+
};
|
|
121
|
+
var transitionStyles = {
|
|
122
|
+
entering: {},
|
|
123
|
+
entered: {},
|
|
124
|
+
exiting: {
|
|
125
|
+
position: 'absolute',
|
|
126
|
+
top: 0,
|
|
127
|
+
left: 0,
|
|
128
|
+
right: 0,
|
|
129
|
+
pointerEvents: 'none'
|
|
130
|
+
},
|
|
131
|
+
exited: {}
|
|
132
|
+
};
|
|
133
|
+
return /*#__PURE__*/React.createElement(CSSTransition, {
|
|
134
|
+
timeout: {
|
|
135
|
+
enter: this.props.enterDuration,
|
|
136
|
+
exit: this.props.exitDuration
|
|
137
|
+
},
|
|
138
|
+
unmountOnExit: true,
|
|
139
|
+
mountOnEnter: true,
|
|
140
|
+
onEnter: this.onChildEnter,
|
|
141
|
+
onEntering: this.onChildEntering,
|
|
142
|
+
onEntered: this.onChildEntered,
|
|
143
|
+
onExit: this.onChildExit,
|
|
144
|
+
onExiting: this.onChildExiting,
|
|
145
|
+
onExited: this.onChildExited,
|
|
146
|
+
classNames: this.props.transitionClassNames
|
|
147
|
+
}, function (state) {
|
|
148
|
+
return /*#__PURE__*/React.createElement("div", {
|
|
149
|
+
style: _objectSpread(_objectSpread(_objectSpread({}, commonChildStyles), transitionStyles[state]), _this2.props.transitionStyles[state])
|
|
150
|
+
}, child);
|
|
151
|
+
});
|
|
152
|
+
}
|
|
153
|
+
}, {
|
|
154
|
+
key: "render",
|
|
155
|
+
value: function render() {
|
|
156
|
+
return /*#__PURE__*/React.createElement(TransitionGroup, {
|
|
157
|
+
className: classNames('pgn-transition-replace-group', 'position-relative', {
|
|
158
|
+
'overflow-hidden': this.state.height !== null
|
|
159
|
+
}, this.props.className),
|
|
160
|
+
style: {
|
|
161
|
+
height: this.state.height
|
|
162
|
+
}
|
|
163
|
+
}, React.Children.map(this.props.children, this.renderChildTransition, this));
|
|
164
|
+
}
|
|
165
|
+
}]);
|
|
166
|
+
return TransitionReplace;
|
|
167
|
+
}(React.Component);
|
|
132
168
|
TransitionReplace.propTypes = {
|
|
133
169
|
/** Specifies an additional class for the base element */
|
|
134
170
|
children: PropTypes.element,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","names":["React","PropTypes","CSSTransition","TransitionGroup","classNames","TransitionReplace","Component","constructor","props","state","height","onChildEnter","bind","onChildEntering","onChildEntered","onChildExit","onChildExiting","onChildExited","htmlNode","setState","offsetHeight","renderChildTransition","child","key","process","env","NODE_ENV","console","warn","commonChildStyles","padding","transitionStyles","entering","entered","exiting","position","top","left","right","pointerEvents","exited","createElement","timeout","enter","enterDuration","exit","exitDuration","unmountOnExit","mountOnEnter","onEnter","onEntering","onEntered","onExit","onExiting","onExited","transitionClassNames","style","_objectSpread","render","className","Children","map","children","propTypes","element","number","string","func","shape","defaultProps","undefined"],"sources":["../../src/TransitionReplace/index.jsx"],"sourcesContent":["import React from 'react';\nimport PropTypes from 'prop-types';\nimport { CSSTransition, TransitionGroup } from 'react-transition-group';\nimport classNames from 'classnames';\n\nclass TransitionReplace extends React.Component {\n constructor(props) {\n super(props);\n\n this.state = { height: null };\n\n this.onChildEnter = this.onChildEnter.bind(this);\n this.onChildEntering = this.onChildEntering.bind(this);\n this.onChildEntered = this.onChildEntered.bind(this);\n this.onChildExit = this.onChildExit.bind(this);\n this.onChildExiting = this.onChildExiting.bind(this);\n this.onChildExited = this.onChildExited.bind(this);\n }\n\n // Transition events are fired in this order:\n //\n // onEnter > onEntering > onEntered\n // onExit > onExiting > onExited\n //\n // Keep in mind that we always have two transitions happening\n // both the entering and leaving children\n //\n // We set the container height (for animation) in this order:\n //\n // 1. onChildExit (explicitly set the height to match the current current)\n // 2. onChildEntering (set the height to match the new content)\n // 3. onChildExited (reset the height to null)\n\n onChildEnter(htmlNode) {\n if (this.props.onChildEnter) { this.props.onChildEnter(htmlNode); }\n }\n\n onChildEntering(htmlNode) {\n this.setState({ height: htmlNode.offsetHeight });\n if (this.props.onChildEntering) { this.props.onChildEntering(htmlNode); }\n }\n\n onChildEntered(htmlNode) {\n this.setState({ height: null });\n if (this.props.onChildEntered) { this.props.onChildEntered(htmlNode); }\n }\n\n onChildExit(htmlNode) {\n this.setState({ height: htmlNode.offsetHeight });\n if (this.props.onChildExit) { this.props.onChildExit(htmlNode); }\n }\n\n onChildExiting(htmlNode) {\n if (this.props.onChildExiting) { this.props.onChildExiting(htmlNode); }\n }\n\n onChildExited(htmlNode) {\n this.setState({ height: null });\n if (this.props.onChildExited) { this.props.onChildExited(htmlNode); }\n }\n\n renderChildTransition(child) {\n if (!child.key && process.env.NODE_ENV === 'development') {\n // eslint-disable-next-line no-console\n console.warn(\"TransitionReplace: A child is missing a 'key' prop. Keys are required for any child of this component.\");\n }\n // Makes the exiting and entering children occupy the same space\n // SCSS handles the crossfade so it can be easily overridden\n const commonChildStyles = {\n // Prevent margin-collapsing which throws off height calculations\n padding: '.1px 0',\n };\n\n const transitionStyles = {\n entering: {},\n entered: {},\n exiting: {\n position: 'absolute',\n top: 0,\n left: 0,\n right: 0,\n pointerEvents: 'none',\n },\n exited: {},\n };\n\n return (\n <CSSTransition\n timeout={{\n enter: this.props.enterDuration,\n exit: this.props.exitDuration,\n }}\n unmountOnExit\n mountOnEnter\n onEnter={this.onChildEnter}\n onEntering={this.onChildEntering}\n onEntered={this.onChildEntered}\n onExit={this.onChildExit}\n onExiting={this.onChildExiting}\n onExited={this.onChildExited}\n classNames={this.props.transitionClassNames}\n >\n {state => (\n <div\n style={{\n ...commonChildStyles,\n ...transitionStyles[state],\n ...this.props.transitionStyles[state],\n }}\n >\n {child}\n </div>\n )}\n </CSSTransition>\n );\n }\n\n render() {\n return (\n <TransitionGroup\n className={classNames(\n 'pgn-transition-replace-group',\n 'position-relative',\n { 'overflow-hidden': this.state.height !== null },\n this.props.className,\n )}\n style={{ height: this.state.height }}\n >\n {React.Children.map(this.props.children, this.renderChildTransition, this)}\n </TransitionGroup>\n );\n }\n}\n\nTransitionReplace.propTypes = {\n /** Specifies an additional class for the base element */\n children: PropTypes.element,\n /** Duration of the element appearance transition. */\n enterDuration: PropTypes.number,\n /** Duration of the element dismiss transition. */\n exitDuration: PropTypes.number,\n /** Specifies class name to append to the base element. */\n className: PropTypes.string,\n /** A `Transition` callback fired immediately after the `enter` or `appear` class is applied. */\n onChildEnter: PropTypes.func,\n /** A `Transition` callback fired immediately after the `enter-active` or `appear-active` class is applied. */\n onChildEntering: PropTypes.func,\n /**\n * A `Transition` callback fired immediately after the `enter` or\n * `appear` classes are removed and the done class is added to the DOM node.\n */\n onChildEntered: PropTypes.func,\n /** A `Transition` callback fired immediately after the `exit` class is applied. */\n onChildExit: PropTypes.func,\n /** A `Transition` callback fired immediately after the `exit-active` is applied. */\n onChildExiting: PropTypes.func,\n /**\n * A `Transition` callback fired immediately after the `exit` classes\n * are removed and the exit-done class is added to the DOM node.\n */\n onChildExited: PropTypes.func,\n /** An object that specifies transition styles. */\n transitionStyles: PropTypes.shape({\n entering: PropTypes.shape({}),\n entered: PropTypes.shape({}),\n exiting: PropTypes.shape({}),\n exited: PropTypes.shape({}),\n }),\n /** Specifies class name to append to the `Transition`. */\n transitionClassNames: PropTypes.string,\n};\n\nTransitionReplace.defaultProps = {\n children: undefined,\n enterDuration: 300,\n exitDuration: 300,\n className: undefined,\n onChildEnter: undefined,\n onChildEntering: undefined,\n onChildEntered: undefined,\n onChildExit: undefined,\n onChildExiting: undefined,\n onChildExited: undefined,\n transitionStyles: {},\n transitionClassNames: 'pgn__transition-replace',\n};\n\nexport default TransitionReplace;\n"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"index.js","names":["React","PropTypes","CSSTransition","TransitionGroup","classNames","TransitionReplace","_React$Component","_inherits","_super","_createSuper","props","_this","_classCallCheck","call","state","height","onChildEnter","bind","_assertThisInitialized","onChildEntering","onChildEntered","onChildExit","onChildExiting","onChildExited","_createClass","key","value","htmlNode","setState","offsetHeight","renderChildTransition","child","_this2","process","env","NODE_ENV","console","warn","commonChildStyles","padding","transitionStyles","entering","entered","exiting","position","top","left","right","pointerEvents","exited","createElement","timeout","enter","enterDuration","exit","exitDuration","unmountOnExit","mountOnEnter","onEnter","onEntering","onEntered","onExit","onExiting","onExited","transitionClassNames","style","_objectSpread","render","className","Children","map","children","Component","propTypes","element","number","string","func","shape","defaultProps","undefined"],"sources":["../../src/TransitionReplace/index.jsx"],"sourcesContent":["import React from 'react';\nimport PropTypes from 'prop-types';\nimport { CSSTransition, TransitionGroup } from 'react-transition-group';\nimport classNames from 'classnames';\n\nclass TransitionReplace extends React.Component {\n constructor(props) {\n super(props);\n\n this.state = { height: null };\n\n this.onChildEnter = this.onChildEnter.bind(this);\n this.onChildEntering = this.onChildEntering.bind(this);\n this.onChildEntered = this.onChildEntered.bind(this);\n this.onChildExit = this.onChildExit.bind(this);\n this.onChildExiting = this.onChildExiting.bind(this);\n this.onChildExited = this.onChildExited.bind(this);\n }\n\n // Transition events are fired in this order:\n //\n // onEnter > onEntering > onEntered\n // onExit > onExiting > onExited\n //\n // Keep in mind that we always have two transitions happening\n // both the entering and leaving children\n //\n // We set the container height (for animation) in this order:\n //\n // 1. onChildExit (explicitly set the height to match the current current)\n // 2. onChildEntering (set the height to match the new content)\n // 3. onChildExited (reset the height to null)\n\n onChildEnter(htmlNode) {\n if (this.props.onChildEnter) { this.props.onChildEnter(htmlNode); }\n }\n\n onChildEntering(htmlNode) {\n this.setState({ height: htmlNode.offsetHeight });\n if (this.props.onChildEntering) { this.props.onChildEntering(htmlNode); }\n }\n\n onChildEntered(htmlNode) {\n this.setState({ height: null });\n if (this.props.onChildEntered) { this.props.onChildEntered(htmlNode); }\n }\n\n onChildExit(htmlNode) {\n this.setState({ height: htmlNode.offsetHeight });\n if (this.props.onChildExit) { this.props.onChildExit(htmlNode); }\n }\n\n onChildExiting(htmlNode) {\n if (this.props.onChildExiting) { this.props.onChildExiting(htmlNode); }\n }\n\n onChildExited(htmlNode) {\n this.setState({ height: null });\n if (this.props.onChildExited) { this.props.onChildExited(htmlNode); }\n }\n\n renderChildTransition(child) {\n if (!child.key && process.env.NODE_ENV === 'development') {\n // eslint-disable-next-line no-console\n console.warn(\"TransitionReplace: A child is missing a 'key' prop. Keys are required for any child of this component.\");\n }\n // Makes the exiting and entering children occupy the same space\n // SCSS handles the crossfade so it can be easily overridden\n const commonChildStyles = {\n // Prevent margin-collapsing which throws off height calculations\n padding: '.1px 0',\n };\n\n const transitionStyles = {\n entering: {},\n entered: {},\n exiting: {\n position: 'absolute',\n top: 0,\n left: 0,\n right: 0,\n pointerEvents: 'none',\n },\n exited: {},\n };\n\n return (\n <CSSTransition\n timeout={{\n enter: this.props.enterDuration,\n exit: this.props.exitDuration,\n }}\n unmountOnExit\n mountOnEnter\n onEnter={this.onChildEnter}\n onEntering={this.onChildEntering}\n onEntered={this.onChildEntered}\n onExit={this.onChildExit}\n onExiting={this.onChildExiting}\n onExited={this.onChildExited}\n classNames={this.props.transitionClassNames}\n >\n {state => (\n <div\n style={{\n ...commonChildStyles,\n ...transitionStyles[state],\n ...this.props.transitionStyles[state],\n }}\n >\n {child}\n </div>\n )}\n </CSSTransition>\n );\n }\n\n render() {\n return (\n <TransitionGroup\n className={classNames(\n 'pgn-transition-replace-group',\n 'position-relative',\n { 'overflow-hidden': this.state.height !== null },\n this.props.className,\n )}\n style={{ height: this.state.height }}\n >\n {React.Children.map(this.props.children, this.renderChildTransition, this)}\n </TransitionGroup>\n );\n }\n}\n\nTransitionReplace.propTypes = {\n /** Specifies an additional class for the base element */\n children: PropTypes.element,\n /** Duration of the element appearance transition. */\n enterDuration: PropTypes.number,\n /** Duration of the element dismiss transition. */\n exitDuration: PropTypes.number,\n /** Specifies class name to append to the base element. */\n className: PropTypes.string,\n /** A `Transition` callback fired immediately after the `enter` or `appear` class is applied. */\n onChildEnter: PropTypes.func,\n /** A `Transition` callback fired immediately after the `enter-active` or `appear-active` class is applied. */\n onChildEntering: PropTypes.func,\n /**\n * A `Transition` callback fired immediately after the `enter` or\n * `appear` classes are removed and the done class is added to the DOM node.\n */\n onChildEntered: PropTypes.func,\n /** A `Transition` callback fired immediately after the `exit` class is applied. */\n onChildExit: PropTypes.func,\n /** A `Transition` callback fired immediately after the `exit-active` is applied. */\n onChildExiting: PropTypes.func,\n /**\n * A `Transition` callback fired immediately after the `exit` classes\n * are removed and the exit-done class is added to the DOM node.\n */\n onChildExited: PropTypes.func,\n /** An object that specifies transition styles. */\n transitionStyles: PropTypes.shape({\n entering: PropTypes.shape({}),\n entered: PropTypes.shape({}),\n exiting: PropTypes.shape({}),\n exited: PropTypes.shape({}),\n }),\n /** Specifies class name to append to the `Transition`. */\n transitionClassNames: PropTypes.string,\n};\n\nTransitionReplace.defaultProps = {\n children: undefined,\n enterDuration: 300,\n exitDuration: 300,\n className: undefined,\n onChildEnter: undefined,\n onChildEntering: undefined,\n onChildEntered: undefined,\n onChildExit: undefined,\n onChildExiting: undefined,\n onChildExited: undefined,\n transitionStyles: {},\n transitionClassNames: 'pgn__transition-replace',\n};\n\nexport default TransitionReplace;\n"],"mappings":"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"}
|
package/dist/Truncate/index.js
CHANGED
|
@@ -1,35 +1,41 @@
|
|
|
1
|
+
function _slicedToArray(arr, i) { return _arrayWithHoles(arr) || _iterableToArrayLimit(arr, i) || _unsupportedIterableToArray(arr, i) || _nonIterableRest(); }
|
|
2
|
+
function _nonIterableRest() { throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method."); }
|
|
3
|
+
function _unsupportedIterableToArray(o, minLen) { if (!o) return; if (typeof o === "string") return _arrayLikeToArray(o, minLen); var n = Object.prototype.toString.call(o).slice(8, -1); if (n === "Object" && o.constructor) n = o.constructor.name; if (n === "Map" || n === "Set") return Array.from(o); if (n === "Arguments" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _arrayLikeToArray(o, minLen); }
|
|
4
|
+
function _arrayLikeToArray(arr, len) { if (len == null || len > arr.length) len = arr.length; for (var i = 0, arr2 = new Array(len); i < len; i++) arr2[i] = arr[i]; return arr2; }
|
|
5
|
+
function _iterableToArrayLimit(arr, i) { var _i = null == arr ? null : "undefined" != typeof Symbol && arr[Symbol.iterator] || arr["@@iterator"]; if (null != _i) { var _s, _e, _x, _r, _arr = [], _n = !0, _d = !1; try { if (_x = (_i = _i.call(arr)).next, 0 === i) { if (Object(_i) !== _i) return; _n = !1; } else for (; !(_n = (_s = _x.call(_i)).done) && (_arr.push(_s.value), _arr.length !== i); _n = !0); } catch (err) { _d = !0, _e = err; } finally { try { if (!_n && null != _i["return"] && (_r = _i["return"](), Object(_r) !== _r)) return; } finally { if (_d) throw _e; } } return _arr; } }
|
|
6
|
+
function _arrayWithHoles(arr) { if (Array.isArray(arr)) return arr; }
|
|
1
7
|
import React, { useLayoutEffect, useRef } from 'react';
|
|
2
8
|
import PropTypes from 'prop-types';
|
|
3
9
|
import { truncateLines } from './utils';
|
|
4
10
|
import useWindowSize from '../hooks/useWindowSize';
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
11
|
+
var DEFAULT_TRUNCATE_LINES = 1;
|
|
12
|
+
var DEFAULT_TRUNCATE_ELLIPSIS = '...';
|
|
13
|
+
var DEFAULT_TRUNCATE_ELEMENT_TYPE = 'div';
|
|
8
14
|
function Truncate(_ref) {
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
width
|
|
21
|
-
} = useWindowSize();
|
|
22
|
-
useLayoutEffect(() => {
|
|
15
|
+
var children = _ref.children,
|
|
16
|
+
lines = _ref.lines,
|
|
17
|
+
ellipsis = _ref.ellipsis,
|
|
18
|
+
elementType = _ref.elementType,
|
|
19
|
+
className = _ref.className,
|
|
20
|
+
whiteSpace = _ref.whiteSpace,
|
|
21
|
+
onTruncate = _ref.onTruncate;
|
|
22
|
+
var textContainer = useRef();
|
|
23
|
+
var _useWindowSize = useWindowSize(),
|
|
24
|
+
width = _useWindowSize.width;
|
|
25
|
+
useLayoutEffect(function () {
|
|
23
26
|
if (textContainer.current) {
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
27
|
+
var _truncateLines = truncateLines(children, textContainer.current, {
|
|
28
|
+
ellipsis: ellipsis,
|
|
29
|
+
whiteSpace: whiteSpace,
|
|
30
|
+
lines: lines
|
|
31
|
+
}),
|
|
32
|
+
_truncateLines2 = _slicedToArray(_truncateLines, 2),
|
|
33
|
+
truncated = _truncateLines2[0],
|
|
34
|
+
original = _truncateLines2[1];
|
|
29
35
|
textContainer.current.setAttribute('title', original);
|
|
30
36
|
textContainer.current.setAttribute('aria-label', original);
|
|
31
37
|
textContainer.current.innerHTML = '';
|
|
32
|
-
truncated.forEach(element
|
|
38
|
+
truncated.forEach(function (element) {
|
|
33
39
|
textContainer.current.appendChild(element);
|
|
34
40
|
});
|
|
35
41
|
if (onTruncate) {
|
|
@@ -39,7 +45,7 @@ function Truncate(_ref) {
|
|
|
39
45
|
}, [children, ellipsis, lines, onTruncate, whiteSpace, width]);
|
|
40
46
|
return /*#__PURE__*/React.createElement(elementType, {
|
|
41
47
|
ref: textContainer,
|
|
42
|
-
className
|
|
48
|
+
className: className
|
|
43
49
|
});
|
|
44
50
|
}
|
|
45
51
|
Truncate.propTypes = {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","names":["React","useLayoutEffect","useRef","PropTypes","truncateLines","useWindowSize","DEFAULT_TRUNCATE_LINES","DEFAULT_TRUNCATE_ELLIPSIS","DEFAULT_TRUNCATE_ELEMENT_TYPE","Truncate","_ref","children","lines","ellipsis","elementType","className","whiteSpace","onTruncate","textContainer","width","current","truncated","original","setAttribute","innerHTML","forEach","element","appendChild","createElement","ref","propTypes","string","isRequired","oneOfType","number","node","bool","func","defaultProps","undefined"],"sources":["../../src/Truncate/index.jsx"],"sourcesContent":["import React, {\n useLayoutEffect, useRef,\n} from 'react';\nimport PropTypes from 'prop-types';\nimport { truncateLines } from './utils';\nimport useWindowSize from '../hooks/useWindowSize';\n\nconst DEFAULT_TRUNCATE_LINES = 1;\nconst DEFAULT_TRUNCATE_ELLIPSIS = '...';\nconst DEFAULT_TRUNCATE_ELEMENT_TYPE = 'div';\n\nfunction Truncate({\n children, lines, ellipsis, elementType, className, whiteSpace, onTruncate,\n}) {\n const textContainer = useRef();\n const { width } = useWindowSize();\n\n useLayoutEffect(() => {\n if (textContainer.current) {\n const [truncated, original] = truncateLines(children, textContainer.current, {\n ellipsis,\n whiteSpace,\n lines,\n });\n textContainer.current.setAttribute('title', original);\n textContainer.current.setAttribute('aria-label', original);\n textContainer.current.innerHTML = '';\n truncated.forEach(element => {\n textContainer.current.appendChild(element);\n });\n if (onTruncate) {\n onTruncate(truncated);\n }\n }\n }, [children, ellipsis, lines, onTruncate, whiteSpace, width]);\n\n return React.createElement(elementType, {\n ref: textContainer,\n className,\n });\n}\n\nTruncate.propTypes = {\n /** The expected text to which the ellipsis would be applied. */\n children: PropTypes.string.isRequired,\n /** The number of lines the text to be truncated to. */\n lines: PropTypes.oneOfType([PropTypes.string, PropTypes.number]),\n /** Text content for the ellipsis - will appear after the truncated lines. */\n ellipsis: PropTypes.oneOfType([PropTypes.string, PropTypes.number, PropTypes.node]),\n /** Adds the whitespace from before the ellipsis. */\n whiteSpace: PropTypes.bool,\n /** Custom html element for truncated text. */\n elementType: PropTypes.string,\n /** Specifies class name to append to the base element. */\n className: PropTypes.string,\n /** Callback fired when a text truncating */\n onTruncate: PropTypes.func,\n};\n\nTruncate.defaultProps = {\n lines: DEFAULT_TRUNCATE_LINES,\n ellipsis: DEFAULT_TRUNCATE_ELLIPSIS,\n whiteSpace: false,\n elementType: DEFAULT_TRUNCATE_ELEMENT_TYPE,\n className: undefined,\n onTruncate: undefined,\n};\n\nexport default Truncate;\n"],"mappings":"AAAA,OAAOA,KAAK,IACVC,eAAe,EAAEC,MAAM,QAClB,OAAO;AACd,OAAOC,SAAS,MAAM,YAAY;AAClC,SAASC,aAAa,QAAQ,SAAS;AACvC,OAAOC,aAAa,MAAM,wBAAwB;AAElD,
|
|
1
|
+
{"version":3,"file":"index.js","names":["React","useLayoutEffect","useRef","PropTypes","truncateLines","useWindowSize","DEFAULT_TRUNCATE_LINES","DEFAULT_TRUNCATE_ELLIPSIS","DEFAULT_TRUNCATE_ELEMENT_TYPE","Truncate","_ref","children","lines","ellipsis","elementType","className","whiteSpace","onTruncate","textContainer","_useWindowSize","width","current","_truncateLines","_truncateLines2","_slicedToArray","truncated","original","setAttribute","innerHTML","forEach","element","appendChild","createElement","ref","propTypes","string","isRequired","oneOfType","number","node","bool","func","defaultProps","undefined"],"sources":["../../src/Truncate/index.jsx"],"sourcesContent":["import React, {\n useLayoutEffect, useRef,\n} from 'react';\nimport PropTypes from 'prop-types';\nimport { truncateLines } from './utils';\nimport useWindowSize from '../hooks/useWindowSize';\n\nconst DEFAULT_TRUNCATE_LINES = 1;\nconst DEFAULT_TRUNCATE_ELLIPSIS = '...';\nconst DEFAULT_TRUNCATE_ELEMENT_TYPE = 'div';\n\nfunction Truncate({\n children, lines, ellipsis, elementType, className, whiteSpace, onTruncate,\n}) {\n const textContainer = useRef();\n const { width } = useWindowSize();\n\n useLayoutEffect(() => {\n if (textContainer.current) {\n const [truncated, original] = truncateLines(children, textContainer.current, {\n ellipsis,\n whiteSpace,\n lines,\n });\n textContainer.current.setAttribute('title', original);\n textContainer.current.setAttribute('aria-label', original);\n textContainer.current.innerHTML = '';\n truncated.forEach(element => {\n textContainer.current.appendChild(element);\n });\n if (onTruncate) {\n onTruncate(truncated);\n }\n }\n }, [children, ellipsis, lines, onTruncate, whiteSpace, width]);\n\n return React.createElement(elementType, {\n ref: textContainer,\n className,\n });\n}\n\nTruncate.propTypes = {\n /** The expected text to which the ellipsis would be applied. */\n children: PropTypes.string.isRequired,\n /** The number of lines the text to be truncated to. */\n lines: PropTypes.oneOfType([PropTypes.string, PropTypes.number]),\n /** Text content for the ellipsis - will appear after the truncated lines. */\n ellipsis: PropTypes.oneOfType([PropTypes.string, PropTypes.number, PropTypes.node]),\n /** Adds the whitespace from before the ellipsis. */\n whiteSpace: PropTypes.bool,\n /** Custom html element for truncated text. */\n elementType: PropTypes.string,\n /** Specifies class name to append to the base element. */\n className: PropTypes.string,\n /** Callback fired when a text truncating */\n onTruncate: PropTypes.func,\n};\n\nTruncate.defaultProps = {\n lines: DEFAULT_TRUNCATE_LINES,\n ellipsis: DEFAULT_TRUNCATE_ELLIPSIS,\n whiteSpace: false,\n elementType: DEFAULT_TRUNCATE_ELEMENT_TYPE,\n className: undefined,\n onTruncate: undefined,\n};\n\nexport default Truncate;\n"],"mappings":"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"}
|
|
@@ -0,0 +1,106 @@
|
|
|
1
|
+
function _typeof(obj) { "@babel/helpers - typeof"; return _typeof = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function (obj) { return typeof obj; } : function (obj) { return obj && "function" == typeof Symbol && obj.constructor === Symbol && obj !== Symbol.prototype ? "symbol" : typeof obj; }, _typeof(obj); }
|
|
2
|
+
function _defineProperty(obj, key, value) { key = _toPropertyKey(key); if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
|
|
3
|
+
function _toPropertyKey(arg) { var key = _toPrimitive(arg, "string"); return _typeof(key) === "symbol" ? key : String(key); }
|
|
4
|
+
function _toPrimitive(input, hint) { if (_typeof(input) !== "object" || input === null) return input; var prim = input[Symbol.toPrimitive]; if (prim !== undefined) { var res = prim.call(input, hint || "default"); if (_typeof(res) !== "object") return res; throw new TypeError("@@toPrimitive must return a primitive value."); } return (hint === "string" ? String : Number)(input); }
|
|
5
|
+
import React from 'react';
|
|
6
|
+
import PropTypes from 'prop-types';
|
|
7
|
+
import classNames from 'classnames';
|
|
8
|
+
import Input from '../Input';
|
|
9
|
+
import { FormControl } from '../Form';
|
|
10
|
+
var propTypes = {
|
|
11
|
+
/** Id of the form input that the validation is for */
|
|
12
|
+
"for": PropTypes.string.isRequired,
|
|
13
|
+
/** Additional classnames for this component */
|
|
14
|
+
className: PropTypes.string,
|
|
15
|
+
/** Determines if invalid styles / message will be shown */
|
|
16
|
+
invalid: PropTypes.bool,
|
|
17
|
+
/** Determines if invalid styles / message will be shown */
|
|
18
|
+
valid: PropTypes.bool,
|
|
19
|
+
/** Message to display on valid input */
|
|
20
|
+
validMessage: PropTypes.node,
|
|
21
|
+
/** Message to display on invalid input */
|
|
22
|
+
invalidMessage: PropTypes.node,
|
|
23
|
+
/** Help text for the form input */
|
|
24
|
+
helpText: PropTypes.node,
|
|
25
|
+
/** Specifies contents of the component. */
|
|
26
|
+
children: PropTypes.node
|
|
27
|
+
};
|
|
28
|
+
var defaultProps = {
|
|
29
|
+
invalid: undefined,
|
|
30
|
+
valid: undefined,
|
|
31
|
+
validMessage: undefined,
|
|
32
|
+
invalidMessage: undefined,
|
|
33
|
+
helpText: undefined,
|
|
34
|
+
children: undefined,
|
|
35
|
+
className: undefined
|
|
36
|
+
};
|
|
37
|
+
function ValidationFormGroup(props) {
|
|
38
|
+
var className = props.className,
|
|
39
|
+
invalidMessage = props.invalidMessage,
|
|
40
|
+
invalid = props.invalid,
|
|
41
|
+
valid = props.valid,
|
|
42
|
+
validMessage = props.validMessage,
|
|
43
|
+
helpText = props.helpText,
|
|
44
|
+
id = props["for"],
|
|
45
|
+
children = props.children;
|
|
46
|
+
var renderChildren = function renderChildren() {
|
|
47
|
+
return React.Children.map(children, function (child) {
|
|
48
|
+
var _classNames;
|
|
49
|
+
// Any non-user input element should pass through unmodified
|
|
50
|
+
if (['input', 'textarea', 'select', Input, FormControl].indexOf(child.type) === -1) {
|
|
51
|
+
return child;
|
|
52
|
+
}
|
|
53
|
+
|
|
54
|
+
// Add validation class names and describedby values to input element
|
|
55
|
+
return /*#__PURE__*/React.cloneElement(child, {
|
|
56
|
+
className: classNames(child.props.className, {
|
|
57
|
+
'is-invalid': invalid,
|
|
58
|
+
'is-valid': valid
|
|
59
|
+
}),
|
|
60
|
+
// This is a non-standard use of the classNames package, but it's exactly the same use case.
|
|
61
|
+
'aria-describedby': classNames(child.props['aria-describedby'], (_classNames = {}, _defineProperty(_classNames, "".concat(id, "-help-text"), Boolean(helpText)), _defineProperty(_classNames, "".concat(id, "-invalid-feedback"), invalid && invalidMessage), _defineProperty(_classNames, "".concat(id, "-valid-feedback"), valid && validMessage), _classNames))
|
|
62
|
+
});
|
|
63
|
+
});
|
|
64
|
+
};
|
|
65
|
+
var renderHelpText = function renderHelpText(text) {
|
|
66
|
+
if (!text) {
|
|
67
|
+
return null;
|
|
68
|
+
}
|
|
69
|
+
return /*#__PURE__*/React.createElement("small", {
|
|
70
|
+
id: "".concat(id, "-help-text"),
|
|
71
|
+
className: "form-text text-muted"
|
|
72
|
+
}, text);
|
|
73
|
+
};
|
|
74
|
+
|
|
75
|
+
/**
|
|
76
|
+
* The red text conveys semantic emphasis using color and font weight. For WCAG 2.1, the
|
|
77
|
+
* semantics need to be exposed programmatically as well. To do this, we use <strong/>
|
|
78
|
+
* elements and attach the formatting classes to them.
|
|
79
|
+
*/
|
|
80
|
+
var renderInvalidFeedback = function renderInvalidFeedback(message) {
|
|
81
|
+
if (!message) {
|
|
82
|
+
return null;
|
|
83
|
+
}
|
|
84
|
+
return /*#__PURE__*/React.createElement("strong", {
|
|
85
|
+
id: "".concat(id, "-invalid-feedback"),
|
|
86
|
+
className: "invalid-feedback"
|
|
87
|
+
}, message);
|
|
88
|
+
};
|
|
89
|
+
var renderValidFeedback = function renderValidFeedback(message) {
|
|
90
|
+
if (!message) {
|
|
91
|
+
return null;
|
|
92
|
+
}
|
|
93
|
+
return /*#__PURE__*/React.createElement("div", {
|
|
94
|
+
className: "valid-feedback",
|
|
95
|
+
id: "".concat(id, "-valid-feedback")
|
|
96
|
+
}, message);
|
|
97
|
+
};
|
|
98
|
+
return /*#__PURE__*/React.createElement("div", {
|
|
99
|
+
className: classNames('form-group', className),
|
|
100
|
+
"data-testid": "validation-form-group"
|
|
101
|
+
}, renderChildren(), renderHelpText(helpText), renderInvalidFeedback(invalidMessage), renderValidFeedback(validMessage));
|
|
102
|
+
}
|
|
103
|
+
ValidationFormGroup.propTypes = propTypes;
|
|
104
|
+
ValidationFormGroup.defaultProps = defaultProps;
|
|
105
|
+
export default ValidationFormGroup;
|
|
106
|
+
//# sourceMappingURL=index.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","names":["React","PropTypes","classNames","Input","FormControl","propTypes","string","isRequired","className","invalid","bool","valid","validMessage","node","invalidMessage","helpText","children","defaultProps","undefined","ValidationFormGroup","props","id","renderChildren","Children","map","child","_classNames","indexOf","type","cloneElement","_defineProperty","concat","Boolean","renderHelpText","text","createElement","renderInvalidFeedback","message","renderValidFeedback"],"sources":["../../src/ValidationFormGroup/index.jsx"],"sourcesContent":["import React from 'react';\nimport PropTypes from 'prop-types';\nimport classNames from 'classnames';\nimport Input from '../Input';\nimport { FormControl } from '../Form';\n\nconst propTypes = {\n /** Id of the form input that the validation is for */\n for: PropTypes.string.isRequired,\n /** Additional classnames for this component */\n className: PropTypes.string,\n /** Determines if invalid styles / message will be shown */\n invalid: PropTypes.bool,\n /** Determines if invalid styles / message will be shown */\n valid: PropTypes.bool,\n /** Message to display on valid input */\n validMessage: PropTypes.node,\n /** Message to display on invalid input */\n invalidMessage: PropTypes.node,\n /** Help text for the form input */\n helpText: PropTypes.node,\n /** Specifies contents of the component. */\n children: PropTypes.node,\n};\n\nconst defaultProps = {\n invalid: undefined,\n valid: undefined,\n validMessage: undefined,\n invalidMessage: undefined,\n helpText: undefined,\n children: undefined,\n className: undefined,\n};\n\nfunction ValidationFormGroup(props) {\n const {\n className,\n invalidMessage,\n invalid,\n valid,\n validMessage,\n helpText,\n for: id,\n children,\n } = props;\n\n const renderChildren = () => React.Children.map(children, (child) => {\n // Any non-user input element should pass through unmodified\n if (['input', 'textarea', 'select', Input, FormControl].indexOf(child.type) === -1) { return child; }\n\n // Add validation class names and describedby values to input element\n return React.cloneElement(child, {\n className: classNames(child.props.className, {\n 'is-invalid': invalid,\n 'is-valid': valid,\n }),\n // This is a non-standard use of the classNames package, but it's exactly the same use case.\n 'aria-describedby': classNames(child.props['aria-describedby'], {\n [`${id}-help-text`]: Boolean(helpText),\n [`${id}-invalid-feedback`]: invalid && invalidMessage,\n [`${id}-valid-feedback`]: valid && validMessage,\n }),\n });\n });\n\n const renderHelpText = (text) => {\n if (!text) { return null; }\n return <small id={`${id}-help-text`} className=\"form-text text-muted\">{text}</small>;\n };\n\n /**\n * The red text conveys semantic emphasis using color and font weight. For WCAG 2.1, the\n * semantics need to be exposed programmatically as well. To do this, we use <strong/>\n * elements and attach the formatting classes to them.\n */\n const renderInvalidFeedback = (message) => {\n if (!message) { return null; }\n return (\n <strong\n id={`${id}-invalid-feedback`}\n className=\"invalid-feedback\"\n >\n {message}\n </strong>\n );\n };\n\n const renderValidFeedback = (message) => {\n if (!message) { return null; }\n return (\n <div\n className=\"valid-feedback\"\n id={`${id}-valid-feedback`}\n >\n {message}\n </div>\n );\n };\n\n return (\n <div className={classNames('form-group', className)} data-testid=\"validation-form-group\">\n {renderChildren()}\n {renderHelpText(helpText)}\n {renderInvalidFeedback(invalidMessage)}\n {renderValidFeedback(validMessage)}\n </div>\n );\n}\n\nValidationFormGroup.propTypes = propTypes;\nValidationFormGroup.defaultProps = defaultProps;\n\nexport default ValidationFormGroup;\n"],"mappings":";;;;AAAA,OAAOA,KAAK,MAAM,OAAO;AACzB,OAAOC,SAAS,MAAM,YAAY;AAClC,OAAOC,UAAU,MAAM,YAAY;AACnC,OAAOC,KAAK,MAAM,UAAU;AAC5B,SAASC,WAAW,QAAQ,SAAS;AAErC,IAAMC,SAAS,GAAG;EAChB;EACA,OAAKJ,SAAS,CAACK,MAAM,CAACC,UAAU;EAChC;EACAC,SAAS,EAAEP,SAAS,CAACK,MAAM;EAC3B;EACAG,OAAO,EAAER,SAAS,CAACS,IAAI;EACvB;EACAC,KAAK,EAAEV,SAAS,CAACS,IAAI;EACrB;EACAE,YAAY,EAAEX,SAAS,CAACY,IAAI;EAC5B;EACAC,cAAc,EAAEb,SAAS,CAACY,IAAI;EAC9B;EACAE,QAAQ,EAAEd,SAAS,CAACY,IAAI;EACxB;EACAG,QAAQ,EAAEf,SAAS,CAACY;AACtB,CAAC;AAED,IAAMI,YAAY,GAAG;EACnBR,OAAO,EAAES,SAAS;EAClBP,KAAK,EAAEO,SAAS;EAChBN,YAAY,EAAEM,SAAS;EACvBJ,cAAc,EAAEI,SAAS;EACzBH,QAAQ,EAAEG,SAAS;EACnBF,QAAQ,EAAEE,SAAS;EACnBV,SAAS,EAAEU;AACb,CAAC;AAED,SAASC,mBAAmBA,CAACC,KAAK,EAAE;EAClC,IACEZ,SAAS,GAQPY,KAAK,CARPZ,SAAS;IACTM,cAAc,GAOZM,KAAK,CAPPN,cAAc;IACdL,OAAO,GAMLW,KAAK,CANPX,OAAO;IACPE,KAAK,GAKHS,KAAK,CALPT,KAAK;IACLC,YAAY,GAIVQ,KAAK,CAJPR,YAAY;IACZG,QAAQ,GAGNK,KAAK,CAHPL,QAAQ;IACHM,EAAE,GAELD,KAAK;IADPJ,QAAQ,GACNI,KAAK,CADPJ,QAAQ;EAGV,IAAMM,cAAc,GAAG,SAAjBA,cAAcA,CAAA;IAAA,OAAStB,KAAK,CAACuB,QAAQ,CAACC,GAAG,CAACR,QAAQ,EAAE,UAACS,KAAK,EAAK;MAAA,IAAAC,WAAA;MACnE;MACA,IAAI,CAAC,OAAO,EAAE,UAAU,EAAE,QAAQ,EAAEvB,KAAK,EAAEC,WAAW,CAAC,CAACuB,OAAO,CAACF,KAAK,CAACG,IAAI,CAAC,KAAK,CAAC,CAAC,EAAE;QAAE,OAAOH,KAAK;MAAE;;MAEpG;MACA,oBAAOzB,KAAK,CAAC6B,YAAY,CAACJ,KAAK,EAAE;QAC/BjB,SAAS,EAAEN,UAAU,CAACuB,KAAK,CAACL,KAAK,CAACZ,SAAS,EAAE;UAC3C,YAAY,EAAEC,OAAO;UACrB,UAAU,EAAEE;QACd,CAAC,CAAC;QACF;QACA,kBAAkB,EAAET,UAAU,CAACuB,KAAK,CAACL,KAAK,CAAC,kBAAkB,CAAC,GAAAM,WAAA,OAAAI,eAAA,CAAAJ,WAAA,KAAAK,MAAA,CACxDV,EAAE,iBAAeW,OAAO,CAACjB,QAAQ,CAAC,GAAAe,eAAA,CAAAJ,WAAA,KAAAK,MAAA,CAClCV,EAAE,wBAAsBZ,OAAO,IAAIK,cAAc,GAAAgB,eAAA,CAAAJ,WAAA,KAAAK,MAAA,CACjDV,EAAE,sBAAoBV,KAAK,IAAIC,YAAY,GAAAc,WAAA,CAChD;MACH,CAAC,CAAC;IACJ,CAAC,CAAC;EAAA;EAEF,IAAMO,cAAc,GAAG,SAAjBA,cAAcA,CAAIC,IAAI,EAAK;IAC/B,IAAI,CAACA,IAAI,EAAE;MAAE,OAAO,IAAI;IAAE;IAC1B,oBAAOlC,KAAA,CAAAmC,aAAA;MAAOd,EAAE,KAAAU,MAAA,CAAKV,EAAE,eAAa;MAACb,SAAS,EAAC;IAAsB,GAAE0B,IAAY,CAAC;EACtF,CAAC;;EAED;AACF;AACA;AACA;AACA;EACE,IAAME,qBAAqB,GAAG,SAAxBA,qBAAqBA,CAAIC,OAAO,EAAK;IACzC,IAAI,CAACA,OAAO,EAAE;MAAE,OAAO,IAAI;IAAE;IAC7B,oBACErC,KAAA,CAAAmC,aAAA;MACEd,EAAE,KAAAU,MAAA,CAAKV,EAAE,sBAAoB;MAC7Bb,SAAS,EAAC;IAAkB,GAE3B6B,OACK,CAAC;EAEb,CAAC;EAED,IAAMC,mBAAmB,GAAG,SAAtBA,mBAAmBA,CAAID,OAAO,EAAK;IACvC,IAAI,CAACA,OAAO,EAAE;MAAE,OAAO,IAAI;IAAE;IAC7B,oBACErC,KAAA,CAAAmC,aAAA;MACE3B,SAAS,EAAC,gBAAgB;MAC1Ba,EAAE,KAAAU,MAAA,CAAKV,EAAE;IAAkB,GAE1BgB,OACE,CAAC;EAEV,CAAC;EAED,oBACErC,KAAA,CAAAmC,aAAA;IAAK3B,SAAS,EAAEN,UAAU,CAAC,YAAY,EAAEM,SAAS,CAAE;IAAC,eAAY;EAAuB,GACrFc,cAAc,CAAC,CAAC,EAChBW,cAAc,CAAClB,QAAQ,CAAC,EACxBqB,qBAAqB,CAACtB,cAAc,CAAC,EACrCwB,mBAAmB,CAAC1B,YAAY,CAC9B,CAAC;AAEV;AAEAO,mBAAmB,CAACd,SAAS,GAAGA,SAAS;AACzCc,mBAAmB,CAACF,YAAY,GAAGA,YAAY;AAE/C,eAAeE,mBAAmB"}
|