@openedx/paragon 23.14.2 → 23.14.3
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/dist/ActionRow/index.d.ts +18 -0
- package/dist/ActionRow/index.js +6 -24
- package/dist/ActionRow/index.js.map +1 -1
- package/dist/Alert/index.js +21 -24
- package/dist/Alert/index.js.map +1 -1
- package/dist/Annotation/index.d.ts +13 -0
- package/dist/Annotation/index.js +11 -30
- package/dist/Annotation/index.js.map +1 -1
- package/dist/Avatar/index.d.ts +11 -0
- package/dist/Avatar/index.js +7 -21
- package/dist/Avatar/index.js.map +1 -1
- package/dist/AvatarButton/index.d.ts +17 -0
- package/dist/AvatarButton/index.js +11 -33
- package/dist/AvatarButton/index.js.map +1 -1
- package/dist/Breadcrumb/BreadcrumbLink.js +5 -6
- package/dist/Breadcrumb/BreadcrumbLink.js.map +1 -1
- package/dist/Breadcrumb/index.js +11 -12
- package/dist/Breadcrumb/index.js.map +1 -1
- package/dist/Bubble/index.js +15 -18
- package/dist/Bubble/index.js.map +1 -1
- package/dist/Button/index.d.ts +42 -7
- package/dist/Button/index.js +43 -115
- package/dist/Button/index.js.map +1 -1
- package/dist/Card/BaseCard.js +11 -12
- package/dist/Card/BaseCard.js.map +1 -1
- package/dist/Card/CardBody.js +9 -12
- package/dist/Card/CardBody.js.map +1 -1
- package/dist/Card/CardCarousel/CardCarousel.js +13 -14
- package/dist/Card/CardCarousel/CardCarousel.js.map +1 -1
- package/dist/Card/CardCarousel/CardCarouselHeader.js +4 -5
- package/dist/Card/CardCarousel/CardCarouselHeader.js.map +1 -1
- package/dist/Card/CardCarousel/CardCarouselItems.js +3 -4
- package/dist/Card/CardCarousel/CardCarouselItems.js.map +1 -1
- package/dist/Card/CardCarousel/CardCarouselProvider.js +7 -8
- package/dist/Card/CardCarousel/CardCarouselProvider.js.map +1 -1
- package/dist/Card/CardCarousel/CardCarouselSubtitle.js +5 -6
- package/dist/Card/CardCarousel/CardCarouselSubtitle.js.map +1 -1
- package/dist/Card/CardCarousel/CardCarouselTitle.js +5 -6
- package/dist/Card/CardCarousel/CardCarouselTitle.js.map +1 -1
- package/dist/Card/CardCarousel/messages.d.ts +13 -0
- package/dist/Card/CardCarousel/messages.js +4 -5
- package/dist/Card/CardCarousel/messages.js.map +1 -0
- package/dist/Card/CardContext.js +6 -7
- package/dist/Card/CardContext.js.map +1 -1
- package/dist/Card/CardDeck.js +9 -10
- package/dist/Card/CardDeck.js.map +1 -1
- package/dist/Card/CardDivider.js +8 -11
- package/dist/Card/CardDivider.js.map +1 -1
- package/dist/Card/CardFooter.js +9 -10
- package/dist/Card/CardFooter.js.map +1 -1
- package/dist/Card/CardGrid.js +6 -7
- package/dist/Card/CardGrid.js.map +1 -1
- package/dist/Card/CardHeader.js +9 -10
- package/dist/Card/CardHeader.js.map +1 -1
- package/dist/Card/CardImageCap.js +15 -16
- package/dist/Card/CardImageCap.js.map +1 -1
- package/dist/Card/CardSection.js +9 -10
- package/dist/Card/CardSection.js.map +1 -1
- package/dist/Card/CardStatus.js +9 -10
- package/dist/Card/CardStatus.js.map +1 -1
- package/dist/Card/index.js +9 -10
- package/dist/Card/index.js.map +1 -1
- package/dist/Chip/ChipIcon.js +8 -9
- package/dist/Chip/ChipIcon.js.map +1 -1
- package/dist/Chip/index.d.ts +22 -0
- package/dist/Chip/index.js +15 -70
- package/dist/Chip/index.js.map +1 -1
- package/dist/ChipCarousel/index.js +49 -53
- package/dist/ChipCarousel/index.js.map +1 -1
- package/dist/ChipCarousel/messages.d.ts +13 -0
- package/dist/ChipCarousel/messages.js +4 -5
- package/dist/ChipCarousel/messages.js.map +1 -0
- package/dist/CloseButton/index.js.map +1 -1
- package/dist/Collapse/index.js.map +1 -1
- package/dist/Collapsible/CollapsibleBody.js +6 -7
- package/dist/Collapsible/CollapsibleBody.js.map +1 -1
- package/dist/Collapsible/CollapsibleTrigger.js +9 -10
- package/dist/Collapsible/CollapsibleTrigger.js.map +1 -1
- package/dist/Collapsible/CollapsibleVisible.js +5 -6
- package/dist/Collapsible/CollapsibleVisible.js.map +1 -1
- package/dist/ColorPicker/index.js +6 -7
- package/dist/ColorPicker/index.js.map +1 -1
- package/dist/Container/index.js +9 -12
- package/dist/Container/index.js.map +1 -1
- package/dist/DataTable/BulkActions.js +4 -5
- package/dist/DataTable/BulkActions.js.map +1 -1
- package/dist/DataTable/CardView.js +16 -18
- package/dist/DataTable/CardView.js.map +1 -1
- package/dist/DataTable/CollapsibleButtonGroup.js +5 -6
- package/dist/DataTable/CollapsibleButtonGroup.js.map +1 -1
- package/dist/DataTable/DataTableLayout.js +5 -6
- package/dist/DataTable/DataTableLayout.js.map +1 -1
- package/dist/DataTable/EmptyTable.js +5 -6
- package/dist/DataTable/EmptyTable.js.map +1 -1
- package/dist/DataTable/ExpandAll.js +4 -5
- package/dist/DataTable/ExpandAll.js.map +1 -1
- package/dist/DataTable/ExpandRow.js +3 -4
- package/dist/DataTable/ExpandRow.js.map +1 -1
- package/dist/DataTable/FilterStatus.js +8 -9
- package/dist/DataTable/FilterStatus.js.map +1 -1
- package/dist/DataTable/RowStatus.js +4 -5
- package/dist/DataTable/RowStatus.js.map +1 -1
- package/dist/DataTable/SidebarFilters.js +3 -4
- package/dist/DataTable/SidebarFilters.js.map +1 -1
- package/dist/DataTable/Table.js +3 -4
- package/dist/DataTable/Table.js.map +1 -1
- package/dist/DataTable/TableActions.js +3 -4
- package/dist/DataTable/TableActions.js.map +1 -1
- package/dist/DataTable/TableCell.js +5 -6
- package/dist/DataTable/TableCell.js.map +1 -1
- package/dist/DataTable/TableControlBar.js +3 -4
- package/dist/DataTable/TableControlBar.js.map +1 -1
- package/dist/DataTable/TableFilters.js +6 -7
- package/dist/DataTable/TableFilters.js.map +1 -1
- package/dist/DataTable/TableFooter.js +4 -5
- package/dist/DataTable/TableFooter.js.map +1 -1
- package/dist/DataTable/TableHeaderCell.js +13 -15
- package/dist/DataTable/TableHeaderCell.js.map +1 -1
- package/dist/DataTable/TableHeaderRow.js +3 -4
- package/dist/DataTable/TableHeaderRow.js.map +1 -1
- package/dist/DataTable/TableRow.js +3 -4
- package/dist/DataTable/TableRow.js.map +1 -1
- package/dist/DataTable/filters/CheckboxFilter.js +25 -29
- package/dist/DataTable/filters/CheckboxFilter.js.map +1 -1
- package/dist/DataTable/filters/DropdownFilter.js +16 -20
- package/dist/DataTable/filters/DropdownFilter.js.map +1 -1
- package/dist/DataTable/filters/MultiSelectDropdownFilter.js +25 -29
- package/dist/DataTable/filters/MultiSelectDropdownFilter.js.map +1 -1
- package/dist/DataTable/filters/TextFilter.js +8 -9
- package/dist/DataTable/filters/TextFilter.js.map +1 -1
- package/dist/DataTable/hooks.js +11 -13
- package/dist/DataTable/hooks.js.map +1 -1
- package/dist/DataTable/index.js +35 -36
- package/dist/DataTable/index.js.map +1 -1
- package/dist/DataTable/messages.d.ts +13 -0
- package/dist/DataTable/messages.js +4 -5
- package/dist/DataTable/messages.js.map +1 -0
- package/dist/DataTable/selection/BaseSelectionStatus.js +11 -12
- package/dist/DataTable/selection/BaseSelectionStatus.js.map +1 -1
- package/dist/DataTable/selection/ControlledSelect.js +3 -4
- package/dist/DataTable/selection/ControlledSelect.js.map +1 -1
- package/dist/DataTable/selection/ControlledSelectHeader.js +3 -4
- package/dist/DataTable/selection/ControlledSelectHeader.js.map +1 -1
- package/dist/DataTable/selection/ControlledSelectionStatus.js +4 -5
- package/dist/DataTable/selection/ControlledSelectionStatus.js.map +1 -1
- package/dist/DataTable/selection/SelectionStatus.js +4 -5
- package/dist/DataTable/selection/SelectionStatus.js.map +1 -1
- package/dist/DataTable/utils/getVisibleColumns.js +9 -13
- package/dist/DataTable/utils/getVisibleColumns.js.map +1 -1
- package/dist/Dropdown/index.js +17 -20
- package/dist/Dropdown/index.js.map +1 -1
- package/dist/Dropzone/DefaultContent.js +5 -6
- package/dist/Dropzone/DefaultContent.js.map +1 -1
- package/dist/Dropzone/DragError.js +3 -4
- package/dist/Dropzone/DragError.js.map +1 -1
- package/dist/Dropzone/GenericError.js +4 -5
- package/dist/Dropzone/GenericError.js.map +1 -1
- package/dist/Dropzone/UploadProgress.js +6 -7
- package/dist/Dropzone/UploadProgress.js.map +1 -1
- package/dist/Dropzone/index.js +14 -15
- package/dist/Dropzone/index.js.map +1 -1
- package/dist/Dropzone/messages.d.ts +53 -0
- package/dist/Dropzone/messages.js +12 -13
- package/dist/Dropzone/messages.js.map +1 -0
- package/dist/Fade/index.js.map +1 -1
- package/dist/Form/FormAutosuggest.js +18 -20
- package/dist/Form/FormAutosuggest.js.map +1 -1
- package/dist/Form/FormAutosuggestOption.js +6 -7
- package/dist/Form/FormAutosuggestOption.js.map +1 -1
- package/dist/Form/FormCheckbox.js +16 -18
- package/dist/Form/FormCheckbox.js.map +1 -1
- package/dist/Form/FormCheckboxSet.js +11 -12
- package/dist/Form/FormCheckboxSet.js.map +1 -1
- package/dist/Form/FormCheckboxSetContext.js +9 -10
- package/dist/Form/FormCheckboxSetContext.js.map +1 -1
- package/dist/Form/FormControl.js +12 -13
- package/dist/Form/FormControl.js.map +1 -1
- package/dist/Form/FormControlDecorator.js +4 -5
- package/dist/Form/FormControlDecorator.js.map +1 -1
- package/dist/Form/FormControlDecoratorGroup.js +8 -9
- package/dist/Form/FormControlDecoratorGroup.js.map +1 -1
- package/dist/Form/FormControlFeedback.js +4 -5
- package/dist/Form/FormControlFeedback.js.map +1 -1
- package/dist/Form/FormControlFloatingLabel.js +3 -4
- package/dist/Form/FormControlFloatingLabel.js.map +1 -1
- package/dist/Form/FormControlSet.js +7 -8
- package/dist/Form/FormControlSet.js.map +1 -1
- package/dist/Form/FormGroup.js +9 -10
- package/dist/Form/FormGroup.js.map +1 -1
- package/dist/Form/FormGroupContext.js +7 -8
- package/dist/Form/FormGroupContext.js.map +1 -1
- package/dist/Form/FormLabel.d.ts +2 -11
- package/dist/Form/FormLabel.js +5 -15
- package/dist/Form/FormLabel.js.map +1 -1
- package/dist/Form/FormRadio.js +28 -31
- package/dist/Form/FormRadio.js.map +1 -1
- package/dist/Form/FormRadioSet.js +11 -12
- package/dist/Form/FormRadioSet.js.map +1 -1
- package/dist/Form/FormRadioSetContext.js +9 -10
- package/dist/Form/FormRadioSetContext.js.map +1 -1
- package/dist/Form/FormSwitch.js +25 -29
- package/dist/Form/FormSwitch.js.map +1 -1
- package/dist/Form/FormText.js +16 -19
- package/dist/Form/FormText.js.map +1 -1
- package/dist/Form/fieldUtils.js +11 -22
- package/dist/Form/fieldUtils.js.map +1 -1
- package/dist/Form/useCheckboxSetValues.js +1 -2
- package/dist/Form/useCheckboxSetValues.js.map +1 -1
- package/dist/Hyperlink/index.js +17 -21
- package/dist/Hyperlink/index.js.map +1 -1
- package/dist/Icon/index.js +10 -11
- package/dist/Icon/index.js.map +1 -1
- package/dist/IconButton/index.d.ts +8 -304
- package/dist/IconButton/index.js +21 -84
- package/dist/IconButton/index.js.map +1 -1
- package/dist/IconButtonToggle/index.js +5 -6
- package/dist/IconButtonToggle/index.js.map +1 -1
- package/dist/Image/index.js.map +1 -1
- package/dist/Layout/index.js +4 -5
- package/dist/Layout/index.js.map +1 -1
- package/dist/Media/index.js.map +1 -1
- package/dist/Menu/MenuItem.js +8 -9
- package/dist/Menu/MenuItem.js.map +1 -1
- package/dist/Menu/SelectMenu.js +8 -9
- package/dist/Menu/SelectMenu.js.map +1 -1
- package/dist/Menu/index.js +6 -7
- package/dist/Menu/index.js.map +1 -1
- package/dist/Modal/AlertModal.js +6 -7
- package/dist/Modal/AlertModal.js.map +1 -1
- package/dist/Modal/FullscreenModal.js +7 -8
- package/dist/Modal/FullscreenModal.js.map +1 -1
- package/dist/Modal/MarketingModal.js +9 -10
- package/dist/Modal/MarketingModal.js.map +1 -1
- package/dist/Modal/ModalCloseButton.js +5 -6
- package/dist/Modal/ModalCloseButton.js.map +1 -1
- package/dist/Modal/ModalContext.js +6 -7
- package/dist/Modal/ModalContext.js.map +1 -1
- package/dist/Modal/ModalDialog.js +16 -17
- package/dist/Modal/ModalDialog.js.map +1 -1
- package/dist/Modal/ModalDialogBody.js +5 -6
- package/dist/Modal/ModalDialogBody.js.map +1 -1
- package/dist/Modal/ModalDialogFooter.js +5 -6
- package/dist/Modal/ModalDialogFooter.js.map +1 -1
- package/dist/Modal/ModalDialogHeader.js +9 -12
- package/dist/Modal/ModalDialogHeader.js.map +1 -1
- package/dist/Modal/ModalDialogHero.js +5 -6
- package/dist/Modal/ModalDialogHero.js.map +1 -1
- package/dist/Modal/ModalDialogHeroBackground.js +6 -7
- package/dist/Modal/ModalDialogHeroBackground.js.map +1 -1
- package/dist/Modal/ModalDialogHeroContent.js +5 -6
- package/dist/Modal/ModalDialogHeroContent.js.map +1 -1
- package/dist/Modal/ModalDialogTitle.js +5 -6
- package/dist/Modal/ModalDialogTitle.js.map +1 -1
- package/dist/Modal/ModalLayer.js +13 -16
- package/dist/Modal/ModalLayer.js.map +1 -1
- package/dist/Modal/ModalPopup.js +11 -12
- package/dist/Modal/ModalPopup.js.map +1 -1
- package/dist/Modal/PopperElement.js +7 -8
- package/dist/Modal/PopperElement.js.map +1 -1
- package/dist/Modal/StandardModal.js +7 -8
- package/dist/Modal/StandardModal.js.map +1 -1
- package/dist/OverflowScroll/OverflowScroll.js +12 -13
- package/dist/OverflowScroll/OverflowScroll.js.map +1 -1
- package/dist/OverflowScroll/OverflowScrollItems.js +3 -4
- package/dist/OverflowScroll/OverflowScrollItems.js.map +1 -1
- package/dist/Overlay/index.d.ts +2 -2
- package/dist/PageBanner/index.js +9 -10
- package/dist/PageBanner/index.js.map +1 -1
- package/dist/Pagination/PaginationContext.js +12 -13
- package/dist/Pagination/PaginationContext.js.map +1 -1
- package/dist/Pagination/subcomponents/PageButton.js +3 -4
- package/dist/Pagination/subcomponents/PageButton.js.map +1 -1
- package/dist/Popover/index.js +11 -14
- package/dist/Popover/index.js.map +1 -1
- package/dist/ProductTour/Checkpoint.js +12 -13
- package/dist/ProductTour/Checkpoint.js.map +1 -1
- package/dist/ProductTour/CheckpointActionRow.js +10 -11
- package/dist/ProductTour/CheckpointActionRow.js.map +1 -1
- package/dist/ProductTour/CheckpointBody.js +3 -4
- package/dist/ProductTour/CheckpointBody.js.map +1 -1
- package/dist/ProductTour/CheckpointHeader.js +7 -8
- package/dist/ProductTour/CheckpointHeader.js.map +1 -1
- package/dist/ProductTour/CheckpointTitle.js +6 -9
- package/dist/ProductTour/CheckpointTitle.js.map +1 -1
- package/dist/ProductTour/index.js +3 -4
- package/dist/ProductTour/index.js.map +1 -1
- package/dist/ProductTour/messages.d.ts +23 -0
- package/dist/ProductTour/messages.js +6 -7
- package/dist/ProductTour/messages.js.map +1 -0
- package/dist/ProgressBar/index.js +11 -12
- package/dist/ProgressBar/index.js.map +1 -1
- package/dist/ResponsiveEmbed/index.js.map +1 -1
- package/dist/Scrollable/index.js +4 -5
- package/dist/Scrollable/index.js.map +1 -1
- package/dist/SearchField/SearchFieldLabel.js +4 -5
- package/dist/SearchField/SearchFieldLabel.js.map +1 -1
- package/dist/SelectableBox/SelectableBoxSet.js +13 -14
- package/dist/SelectableBox/SelectableBoxSet.js.map +1 -1
- package/dist/SelectableBox/index.js +14 -15
- package/dist/SelectableBox/index.js.map +1 -1
- package/dist/Skeleton/index.js.map +1 -1
- package/dist/Spinner/index.js +5 -6
- package/dist/Spinner/index.js.map +1 -1
- package/dist/Stack/index.js +12 -15
- package/dist/Stack/index.js.map +1 -1
- package/dist/StatefulButton/index.js +9 -10
- package/dist/StatefulButton/index.js.map +1 -1
- package/dist/Stepper/Stepper.js +4 -5
- package/dist/Stepper/Stepper.js.map +1 -1
- package/dist/Stepper/StepperActionRow.js +6 -7
- package/dist/Stepper/StepperActionRow.js.map +1 -1
- package/dist/Stepper/StepperContext.js +4 -5
- package/dist/Stepper/StepperContext.js.map +1 -1
- package/dist/Stepper/StepperHeader.js +23 -31
- package/dist/Stepper/StepperHeader.js.map +1 -1
- package/dist/Stepper/StepperHeaderStep.js +8 -9
- package/dist/Stepper/StepperHeaderStep.js.map +1 -1
- package/dist/Stepper/StepperStep.js +10 -11
- package/dist/Stepper/StepperStep.js.map +1 -1
- package/dist/Sticky/index.js +8 -12
- package/dist/Sticky/index.js.map +1 -1
- package/dist/Tabs/index.js +8 -9
- package/dist/Tabs/index.js.map +1 -1
- package/dist/Toast/ToastContainer.js +3 -4
- package/dist/Toast/ToastContainer.js.map +1 -1
- package/dist/Toast/index.d.ts +20 -41
- package/dist/Toast/index.js +11 -48
- package/dist/Toast/index.js.map +1 -1
- package/dist/ToggleButton/index.js.map +1 -1
- package/dist/Tooltip/index.js +11 -14
- package/dist/Tooltip/index.js.map +1 -1
- package/dist/Truncate/index.js +9 -10
- package/dist/Truncate/index.js.map +1 -1
- package/dist/asInput/index.js +9 -13
- package/dist/asInput/index.js.map +1 -1
- package/dist/hooks/useArrowKeyNavigationHook.js +17 -21
- package/dist/hooks/useArrowKeyNavigationHook.js.map +1 -1
- package/dist/hooks/useIsVisibleHook.js +4 -6
- package/dist/hooks/useIsVisibleHook.js.map +1 -1
- package/dist/hooks/useToggleHook.js +1 -3
- package/dist/hooks/useToggleHook.js.map +1 -1
- package/dist/index.d.ts +4 -4
- package/dist/index.js +4 -8
- package/dist/index.js.map +1 -1
- package/dist/utils/newId.js +1 -2
- package/dist/utils/newId.js.map +1 -1
- package/package.json +1 -1
- package/src/ActionRow/{index.jsx → index.tsx} +14 -22
- package/src/Annotation/{index.jsx → index.tsx} +15 -22
- package/src/Avatar/{index.jsx → index.tsx} +13 -19
- package/src/AvatarButton/{index.jsx → index.tsx} +23 -31
- package/src/Button/index.tsx +68 -93
- package/src/Chip/index.tsx +26 -59
- package/src/CloseButton/index.tsx +1 -0
- package/src/Collapse/index.tsx +1 -0
- package/src/Fade/index.tsx +1 -0
- package/src/Form/FormLabel.tsx +2 -10
- package/src/IconButton/index.tsx +17 -81
- package/src/Image/index.tsx +2 -0
- package/src/Media/index.tsx +1 -0
- package/src/Modal/modal-popup.mdx +1 -1
- package/src/ResponsiveEmbed/index.tsx +1 -0
- package/src/Skeleton/index.tsx +1 -0
- package/src/Toast/index.tsx +21 -40
- package/src/ToggleButton/index.tsx +2 -0
- package/src/index.ts +4 -8
- /package/{src/CloseButton/index.jsx → dist/CloseButton/index.d.ts} +0 -0
- /package/{src/Collapse/index.jsx → dist/Collapse/index.d.ts} +0 -0
- /package/{src/Fade/index.jsx → dist/Fade/index.d.ts} +0 -0
- /package/{src/Image/index.jsx → dist/Image/index.d.ts} +0 -0
- /package/{src/Media/index.jsx → dist/Media/index.d.ts} +0 -0
- /package/{src/ResponsiveEmbed/index.jsx → dist/ResponsiveEmbed/index.d.ts} +0 -0
- /package/{src/Skeleton/index.jsx → dist/Skeleton/index.d.ts} +0 -0
- /package/{src/ToggleButton/index.jsx → dist/ToggleButton/index.d.ts} +0 -0
- /package/src/Card/CardCarousel/{messages.js → messages.ts} +0 -0
- /package/src/ChipCarousel/{messages.js → messages.ts} +0 -0
- /package/src/DataTable/{messages.js → messages.ts} +0 -0
- /package/src/Dropzone/{messages.js → messages.ts} +0 -0
- /package/src/ProductTour/{messages.js → messages.ts} +0 -0
package/dist/Stack/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","names":["React","forwardRef","PropTypes","classNames","DIRECTION_VARIANTS","Stack","
|
|
1
|
+
{"version":3,"file":"index.js","names":["React","forwardRef","PropTypes","classNames","DIRECTION_VARIANTS","Stack","direction","gap","reversed","children","className","rest","ref","createElement","propTypes","node","isRequired","oneOf","number","bool","string","defaultProps","undefined"],"sources":["../../src/Stack/index.jsx"],"sourcesContent":["import React, { forwardRef } from 'react';\nimport PropTypes from 'prop-types';\nimport classNames from 'classnames';\n\nconst DIRECTION_VARIANTS = [\n 'horizontal',\n 'vertical',\n];\n\nconst Stack = forwardRef(({\n direction,\n gap,\n reversed,\n children,\n className,\n ...rest\n}, ref) => (\n <div\n ref={ref}\n className={classNames(\n direction === 'horizontal' ? 'pgn__hstack' : 'pgn__vstack',\n gap ? `pgn__stack-gap--${gap}` : '',\n reversed ? 'pgn__stack-reversed' : '',\n className,\n )}\n {...rest}\n >\n {children}\n </div>\n));\n\nStack.propTypes = {\n /** Specifies the content of the `Stack`. */\n children: PropTypes.node.isRequired,\n /** Specifies direction of the children blocks (column/row). */\n direction: PropTypes.oneOf(DIRECTION_VARIANTS),\n /**\n * Specifies inner space between children blocks.\n *\n * Valid values are based on `the spacing classes`:\n * `0, 0.5, ... 6`.\n */\n gap: PropTypes.number,\n /** Specifies the order of the children. */\n reversed: PropTypes.bool,\n /** Specifies an additional `className` to add to the base element. */\n className: PropTypes.string,\n};\n\nStack.defaultProps = {\n direction: 'vertical',\n gap: 0,\n className: undefined,\n reversed: false,\n};\n\nexport default Stack;\n"],"mappings":"AAAA,OAAOA,KAAK,IAAIC,UAAU,QAAQ,OAAO;AACzC,OAAOC,SAAS,MAAM,YAAY;AAClC,OAAOC,UAAU,MAAM,YAAY;AAEnC,MAAMC,kBAAkB,GAAG,CACzB,YAAY,EACZ,UAAU,CACX;AAED,MAAMC,KAAK,gBAAGJ,UAAU,CAAC,CAAC;EACxBK,SAAS;EACTC,GAAG;EACHC,QAAQ;EACRC,QAAQ;EACRC,SAAS;EACT,GAAGC;AACL,CAAC,EAAEC,GAAG,kBACJZ,KAAA,CAAAa,aAAA;EACED,GAAG,EAAEA,GAAI;EACTF,SAAS,EAAEP,UAAU,CACnBG,SAAS,KAAK,YAAY,GAAG,aAAa,GAAG,aAAa,EAC1DC,GAAG,GAAG,mBAAmBA,GAAG,EAAE,GAAG,EAAE,EACnCC,QAAQ,GAAG,qBAAqB,GAAG,EAAE,EACrCE,SACF,CAAE;EAAA,GACEC;AAAI,GAEPF,QACE,CACN,CAAC;AAEFJ,KAAK,CAACS,SAAS,GAAG;EAChB;EACAL,QAAQ,EAAEP,SAAS,CAACa,IAAI,CAACC,UAAU;EACnC;EACAV,SAAS,EAAEJ,SAAS,CAACe,KAAK,CAACb,kBAAkB,CAAC;EAC9C;AACF;AACA;AACA;AACA;AACA;EACEG,GAAG,EAAEL,SAAS,CAACgB,MAAM;EACrB;EACAV,QAAQ,EAAEN,SAAS,CAACiB,IAAI;EACxB;EACAT,SAAS,EAAER,SAAS,CAACkB;AACvB,CAAC;AAEDf,KAAK,CAACgB,YAAY,GAAG;EACnBf,SAAS,EAAE,UAAU;EACrBC,GAAG,EAAE,CAAC;EACNG,SAAS,EAAEY,SAAS;EACpBd,QAAQ,EAAE;AACZ,CAAC;AAED,eAAeH,KAAK","ignoreList":[]}
|
|
@@ -4,16 +4,15 @@ import classNames from 'classnames';
|
|
|
4
4
|
import { Cancel, CheckCircleOutline, SpinnerSimple } from '../../icons';
|
|
5
5
|
import Button from '../Button';
|
|
6
6
|
import Icon from '../Icon';
|
|
7
|
-
function StatefulButton(
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
} = _ref;
|
|
7
|
+
function StatefulButton({
|
|
8
|
+
className,
|
|
9
|
+
state,
|
|
10
|
+
labels,
|
|
11
|
+
icons,
|
|
12
|
+
disabledStates,
|
|
13
|
+
onClick,
|
|
14
|
+
...attributes
|
|
15
|
+
}) {
|
|
17
16
|
const isDisabled = disabledStates.indexOf(state) !== -1;
|
|
18
17
|
const icon = icons[state] !== undefined ? icons[state] : icons.default;
|
|
19
18
|
const label = labels[state] !== undefined ? labels[state] : labels.default;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","names":["React","PropTypes","classNames","Cancel","CheckCircleOutline","SpinnerSimple","Button","Icon","StatefulButton","
|
|
1
|
+
{"version":3,"file":"index.js","names":["React","PropTypes","classNames","Cancel","CheckCircleOutline","SpinnerSimple","Button","Icon","StatefulButton","className","state","labels","icons","disabledStates","onClick","attributes","isDisabled","indexOf","icon","undefined","default","label","createElement","disabled","e","preventDefault","propTypes","string","objectOf","node","isRequired","arrayOf","func","defaultProps","pending","src","complete","error"],"sources":["../../src/StatefulButton/index.jsx"],"sourcesContent":["import React from 'react';\nimport PropTypes from 'prop-types';\nimport classNames from 'classnames';\nimport { Cancel, CheckCircleOutline, SpinnerSimple } from '../../icons';\nimport Button from '../Button';\nimport Icon from '../Icon';\n\nfunction StatefulButton({\n className,\n state,\n labels,\n icons,\n disabledStates,\n onClick,\n ...attributes\n}) {\n const isDisabled = disabledStates.indexOf(state) !== -1;\n const icon = icons[state] !== undefined ? icons[state] : icons.default;\n const label = labels[state] !== undefined ? labels[state] : labels.default;\n\n return (\n <Button\n aria-live=\"assertive\"\n aria-disabled={isDisabled}\n className={classNames(\n 'pgn__stateful-btn',\n `pgn__stateful-btn-state-${state}`,\n className,\n { disabled: isDisabled },\n )}\n onClick={(e) => {\n // Swallow clicks if the button is disabled.\n // We do this instead of disabling the button to prevent\n // it from losing focus (disabled elements cannot have focus).\n if (isDisabled) {\n e.preventDefault();\n return;\n }\n\n if (onClick) {\n onClick(e);\n }\n }}\n {...attributes}\n >\n <span className=\"d-flex align-items-center justify-content-center\">\n {icon && <span className={classNames({ 'pgn__stateful-btn-icon': !!label })}>{icon}</span>}\n {label ? <span>{label}</span> : <span className=\"sr-only\">{state}</span>}\n </span>\n </Button>\n );\n}\n\nStatefulButton.propTypes = {\n className: PropTypes.string,\n /**\n * Each state has:\n * - A label (required)\n * - An icon\n * - an option to be disabled\n *\n * Control the state with the `state` prop. Example usage:\n *\n * ```jsx\n * <StatefulButton\n * state=\"pending\"\n * labels={{\n * default: 'Download',\n * pending: 'Downloading',\n * complete: 'Downloaded',\n * }}\n * icons={{\n * default: <Icon className=\"fa fa-download\" />,\n * pending: <Icon className=\"fa fa-spinner fa-spin\" />,\n * complete: <Icon className=\"fa fa-check\" />,\n * }}\n * disabledStates=['pending']\n * className='btn-primary mr-2'\n * />\n * ```\n */\n state: PropTypes.string,\n /** Required. Each state has a `label`. */\n labels: PropTypes.objectOf(PropTypes.node).isRequired,\n /** Required. Each state has an `icon`. */\n icons: PropTypes.objectOf(PropTypes.node),\n /** Required. Each state has a `disabledState` */\n disabledStates: PropTypes.arrayOf(PropTypes.string),\n /** Specifies the callback function when the button is clicked */\n onClick: PropTypes.func,\n};\n\nStatefulButton.defaultProps = {\n className: undefined,\n state: 'default',\n icons: {\n default: undefined,\n pending: <Icon src={SpinnerSimple} className={classNames('icon-spin')} />,\n complete: <Icon src={CheckCircleOutline} />,\n error: <Icon src={Cancel} />,\n },\n disabledStates: ['pending', 'complete'],\n onClick: undefined,\n};\n\nexport default StatefulButton;\n"],"mappings":"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","ignoreList":[]}
|
package/dist/Stepper/Stepper.js
CHANGED
|
@@ -4,11 +4,10 @@ import StepperStep from './StepperStep';
|
|
|
4
4
|
import StepperHeader from './StepperHeader';
|
|
5
5
|
import StepperActionRow from './StepperActionRow';
|
|
6
6
|
import { StepperContextProvider } from './StepperContext';
|
|
7
|
-
function Stepper(
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
} = _ref;
|
|
7
|
+
function Stepper({
|
|
8
|
+
children,
|
|
9
|
+
activeKey
|
|
10
|
+
}) {
|
|
12
11
|
return /*#__PURE__*/React.createElement(StepperContextProvider, {
|
|
13
12
|
activeKey: activeKey
|
|
14
13
|
}, children);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Stepper.js","names":["React","PropTypes","StepperStep","StepperHeader","StepperActionRow","StepperContextProvider","Stepper","
|
|
1
|
+
{"version":3,"file":"Stepper.js","names":["React","PropTypes","StepperStep","StepperHeader","StepperActionRow","StepperContextProvider","Stepper","children","activeKey","createElement","propTypes","node","isRequired","string","Step","Header","ActionRow"],"sources":["../../src/Stepper/Stepper.jsx"],"sourcesContent":["import React from 'react';\nimport PropTypes from 'prop-types';\nimport StepperStep from './StepperStep';\nimport StepperHeader from './StepperHeader';\nimport StepperActionRow from './StepperActionRow';\nimport { StepperContextProvider } from './StepperContext';\n\nfunction Stepper({ children, activeKey }) {\n return (\n <StepperContextProvider activeKey={activeKey}>\n {children}\n </StepperContextProvider>\n );\n}\n\nStepper.propTypes = {\n /**\n * Specifies the content of the `Stepper`.\n */\n children: PropTypes.node.isRequired,\n /**\n * The eventKey of the step to display.\n */\n activeKey: PropTypes.string.isRequired,\n};\n\nStepper.Step = StepperStep;\nStepper.Header = StepperHeader;\nStepper.ActionRow = StepperActionRow;\n\nexport default Stepper;\n"],"mappings":"AAAA,OAAOA,KAAK,MAAM,OAAO;AACzB,OAAOC,SAAS,MAAM,YAAY;AAClC,OAAOC,WAAW,MAAM,eAAe;AACvC,OAAOC,aAAa,MAAM,iBAAiB;AAC3C,OAAOC,gBAAgB,MAAM,oBAAoB;AACjD,SAASC,sBAAsB,QAAQ,kBAAkB;AAEzD,SAASC,OAAOA,CAAC;EAAEC,QAAQ;EAAEC;AAAU,CAAC,EAAE;EACxC,oBACER,KAAA,CAAAS,aAAA,CAACJ,sBAAsB;IAACG,SAAS,EAAEA;EAAU,GAC1CD,QACqB,CAAC;AAE7B;AAEAD,OAAO,CAACI,SAAS,GAAG;EAClB;AACF;AACA;EACEH,QAAQ,EAAEN,SAAS,CAACU,IAAI,CAACC,UAAU;EACnC;AACF;AACA;EACEJ,SAAS,EAAEP,SAAS,CAACY,MAAM,CAACD;AAC9B,CAAC;AAEDN,OAAO,CAACQ,IAAI,GAAGZ,WAAW;AAC1BI,OAAO,CAACS,MAAM,GAAGZ,aAAa;AAC9BG,OAAO,CAACU,SAAS,GAAGZ,gBAAgB;AAEpC,eAAeE,OAAO","ignoreList":[]}
|
|
@@ -2,13 +2,12 @@ import React, { useContext } from 'react';
|
|
|
2
2
|
import PropTypes from 'prop-types';
|
|
3
3
|
import { StepperContext } from './StepperContext';
|
|
4
4
|
import ActionRow from '../ActionRow';
|
|
5
|
-
function StepperActionRow(
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
} = _ref;
|
|
5
|
+
function StepperActionRow({
|
|
6
|
+
as,
|
|
7
|
+
children,
|
|
8
|
+
eventKey,
|
|
9
|
+
...props
|
|
10
|
+
}) {
|
|
12
11
|
const {
|
|
13
12
|
activeKey
|
|
14
13
|
} = useContext(StepperContext);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"StepperActionRow.js","names":["React","useContext","PropTypes","StepperContext","ActionRow","StepperActionRow","
|
|
1
|
+
{"version":3,"file":"StepperActionRow.js","names":["React","useContext","PropTypes","StepperContext","ActionRow","StepperActionRow","as","children","eventKey","props","activeKey","isActive","createElement","propTypes","node","isRequired","string","elementType","defaultProps","Spacer"],"sources":["../../src/Stepper/StepperActionRow.jsx"],"sourcesContent":["import React, { useContext } from 'react';\nimport PropTypes from 'prop-types';\nimport { StepperContext } from './StepperContext';\nimport ActionRow from '../ActionRow';\n\nfunction StepperActionRow({\n as,\n children,\n eventKey,\n ...props\n}) {\n const { activeKey } = useContext(StepperContext);\n const isActive = activeKey === eventKey;\n\n if (!isActive) {\n return null;\n }\n\n return React.createElement(as, props, children);\n}\n\nStepperActionRow.propTypes = {\n /** Specifies the content of the `ActionRow`. */\n children: PropTypes.node.isRequired,\n /**\n * An identifier of the `ActionRow`. When `activeKey` on the\n * `Stepper` equals to the `eventKey`, the `ActionRow` will be displayed.\n */\n eventKey: PropTypes.string.isRequired,\n /** Specifies the base element */\n as: PropTypes.elementType,\n};\n\nStepperActionRow.defaultProps = {\n as: ActionRow,\n};\n\nStepperActionRow.Spacer = ActionRow.Spacer;\n\nexport default StepperActionRow;\n"],"mappings":"AAAA,OAAOA,KAAK,IAAIC,UAAU,QAAQ,OAAO;AACzC,OAAOC,SAAS,MAAM,YAAY;AAClC,SAASC,cAAc,QAAQ,kBAAkB;AACjD,OAAOC,SAAS,MAAM,cAAc;AAEpC,SAASC,gBAAgBA,CAAC;EACxBC,EAAE;EACFC,QAAQ;EACRC,QAAQ;EACR,GAAGC;AACL,CAAC,EAAE;EACD,MAAM;IAAEC;EAAU,CAAC,GAAGT,UAAU,CAACE,cAAc,CAAC;EAChD,MAAMQ,QAAQ,GAAGD,SAAS,KAAKF,QAAQ;EAEvC,IAAI,CAACG,QAAQ,EAAE;IACb,OAAO,IAAI;EACb;EAEA,oBAAOX,KAAK,CAACY,aAAa,CAACN,EAAE,EAAEG,KAAK,EAAEF,QAAQ,CAAC;AACjD;AAEAF,gBAAgB,CAACQ,SAAS,GAAG;EAC3B;EACAN,QAAQ,EAAEL,SAAS,CAACY,IAAI,CAACC,UAAU;EACnC;AACF;AACA;AACA;EACEP,QAAQ,EAAEN,SAAS,CAACc,MAAM,CAACD,UAAU;EACrC;EACAT,EAAE,EAAEJ,SAAS,CAACe;AAChB,CAAC;AAEDZ,gBAAgB,CAACa,YAAY,GAAG;EAC9BZ,EAAE,EAAEF;AACN,CAAC;AAEDC,gBAAgB,CAACc,MAAM,GAAGf,SAAS,CAACe,MAAM;AAE1C,eAAed,gBAAgB","ignoreList":[]}
|
|
@@ -29,11 +29,10 @@ const stepsReducer = (stepsState, action) => {
|
|
|
29
29
|
return newStepsState;
|
|
30
30
|
}
|
|
31
31
|
};
|
|
32
|
-
export function StepperContextProvider(
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
} = _ref;
|
|
32
|
+
export function StepperContextProvider({
|
|
33
|
+
children,
|
|
34
|
+
activeKey
|
|
35
|
+
}) {
|
|
37
36
|
const [steps, dispatch] = useReducer(stepsReducer, []);
|
|
38
37
|
const [currentBoundary, setCurrentBoundary] = useState(0);
|
|
39
38
|
const registerStep = useCallback(step => dispatch({
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"StepperContext.js","names":["React","useCallback","useEffect","useReducer","useState","PropTypes","StepperContext","createContext","activeKey","stepsReducer","stepsState","action","newStepsState","type","filter","step","eventKey","some","map","index","sort","a","b","StepperContextProvider","
|
|
1
|
+
{"version":3,"file":"StepperContext.js","names":["React","useCallback","useEffect","useReducer","useState","PropTypes","StepperContext","createContext","activeKey","stepsReducer","stepsState","action","newStepsState","type","filter","step","eventKey","some","map","index","sort","a","b","StepperContextProvider","children","steps","dispatch","currentBoundary","setCurrentBoundary","registerStep","removeStep","getIsViewed","activeIndex","findIndex","prevState","createElement","Provider","value","propTypes","node","isRequired"],"sources":["../../src/Stepper/StepperContext.jsx"],"sourcesContent":["import React, {\n useCallback, useEffect, useReducer, useState,\n} from 'react';\nimport PropTypes from 'prop-types';\n\nexport const StepperContext = React.createContext({\n activeKey: '',\n});\n\nconst stepsReducer = (stepsState, action) => {\n let newStepsState = [];\n switch (action.type) {\n case 'remove':\n return stepsState.filter(step => step.eventKey !== action.eventKey);\n case 'register':\n default:\n // If it is existing step\n if (stepsState.some(step => step.eventKey === action.step.eventKey)) {\n newStepsState = stepsState.map(step => {\n if (step.eventKey === action.step.eventKey) {\n return action.step;\n }\n return step;\n });\n } else {\n newStepsState = [...stepsState, action.step];\n }\n\n // If using the index prop\n if (stepsState.some(step => step.index)) {\n return newStepsState.sort((a, b) => (\n a.index > b.index ? 1 : -1\n ));\n }\n return newStepsState;\n }\n};\n\nexport function StepperContextProvider({ children, activeKey }) {\n const [steps, dispatch] = useReducer(stepsReducer, []);\n const [currentBoundary, setCurrentBoundary] = useState(0);\n const registerStep = useCallback((step) => dispatch({ step, type: 'register' }), []);\n const removeStep = useCallback((eventKey) => dispatch({ eventKey, type: 'remove' }), []);\n\n const getIsViewed = (index) => index <= currentBoundary;\n\n useEffect(() => {\n const activeIndex = steps.findIndex(step => step.eventKey === activeKey);\n setCurrentBoundary((prevState) => (activeIndex >= prevState ? activeIndex : prevState));\n }, [activeKey, steps]);\n\n return (\n <StepperContext.Provider\n value={{\n activeKey,\n registerStep,\n steps,\n removeStep,\n getIsViewed,\n }}\n >\n {children}\n </StepperContext.Provider>\n );\n}\n\nStepperContextProvider.propTypes = {\n /** Specifies the content of the `ContextProvider`. */\n children: PropTypes.node.isRequired,\n /** Specifies the current step of the `Stepper`. */\n activeKey: PropTypes.node.isRequired,\n};\n\nexport { stepsReducer };\n"],"mappings":"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","ignoreList":[]}
|
|
@@ -11,40 +11,32 @@ function StepListSeparator() {
|
|
|
11
11
|
className: "pgn__stepper-header-line"
|
|
12
12
|
});
|
|
13
13
|
}
|
|
14
|
-
function StepList(
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
} = _ref;
|
|
14
|
+
function StepList({
|
|
15
|
+
steps,
|
|
16
|
+
activeKey
|
|
17
|
+
}) {
|
|
19
18
|
return /*#__PURE__*/React.createElement("ul", {
|
|
20
19
|
className: "pgn__stepper-header-step-list"
|
|
21
|
-
}, steps.map((
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
isActive: activeKey === stepProps.eventKey
|
|
32
|
-
}, label));
|
|
33
|
-
}));
|
|
20
|
+
}, steps.map(({
|
|
21
|
+
label,
|
|
22
|
+
...stepProps
|
|
23
|
+
}, index) => /*#__PURE__*/React.createElement(React.Fragment, {
|
|
24
|
+
key: stepProps.eventKey
|
|
25
|
+
}, index !== 0 && /*#__PURE__*/React.createElement(StepListSeparator, null), /*#__PURE__*/React.createElement(StepperHeaderStep, {
|
|
26
|
+
...stepProps,
|
|
27
|
+
index: index,
|
|
28
|
+
isActive: activeKey === stepProps.eventKey
|
|
29
|
+
}, label))));
|
|
34
30
|
}
|
|
35
|
-
const PageCount =
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
className,
|
|
45
|
-
PageCountComponent,
|
|
46
|
-
compactWidth
|
|
47
|
-
} = _ref4;
|
|
31
|
+
const PageCount = ({
|
|
32
|
+
activeStepIndex,
|
|
33
|
+
totalSteps
|
|
34
|
+
}) => `Step ${activeStepIndex + 1} of ${totalSteps}`;
|
|
35
|
+
function StepperHeader({
|
|
36
|
+
className,
|
|
37
|
+
PageCountComponent,
|
|
38
|
+
compactWidth
|
|
39
|
+
}) {
|
|
48
40
|
const {
|
|
49
41
|
steps,
|
|
50
42
|
activeKey
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"StepperHeader.js","names":["React","useContext","PropTypes","classNames","StepperHeaderStep","StepperContext","useWindowSize","breakpoints","Size","StepListSeparator","createElement","className","StepList","
|
|
1
|
+
{"version":3,"file":"StepperHeader.js","names":["React","useContext","PropTypes","classNames","StepperHeaderStep","StepperContext","useWindowSize","breakpoints","Size","StepListSeparator","createElement","className","StepList","steps","activeKey","map","label","stepProps","index","Fragment","key","eventKey","isActive","PageCount","activeStepIndex","totalSteps","StepperHeader","PageCountComponent","compactWidth","windowDimensions","size","breakpointWidth","maxWidth","Infinity","isCompactView","width","findIndex","step","activeStep","length","propTypes","string","elementType","oneOf","defaultProps","arrayOf","shape","title","description","hasError","bool","isRequired","Step"],"sources":["../../src/Stepper/StepperHeader.jsx"],"sourcesContent":["import React, { useContext } from 'react';\nimport PropTypes from 'prop-types';\nimport classNames from 'classnames';\nimport StepperHeaderStep from './StepperHeaderStep';\nimport { StepperContext } from './StepperContext';\nimport useWindowSize from '../hooks/useWindowSizeHook';\nimport breakpoints, { Size } from '../utils/breakpoints';\n\nfunction StepListSeparator() {\n return <li aria-hidden=\"true\" className=\"pgn__stepper-header-line\" />;\n}\n\nfunction StepList({ steps, activeKey }) {\n return (\n <ul className=\"pgn__stepper-header-step-list\">\n {steps.map(({ label, ...stepProps }, index) => (\n <React.Fragment key={stepProps.eventKey}>\n {index !== 0 && <StepListSeparator />}\n <StepperHeaderStep\n {...stepProps}\n index={index}\n isActive={activeKey === stepProps.eventKey}\n >\n {label}\n </StepperHeaderStep>\n </React.Fragment>\n ))}\n </ul>\n );\n}\n\nconst PageCount = ({ activeStepIndex, totalSteps }) => `Step ${activeStepIndex + 1} of ${totalSteps}`;\n\nfunction StepperHeader({ className, PageCountComponent, compactWidth }) {\n const { steps, activeKey } = useContext(StepperContext);\n const windowDimensions = useWindowSize();\n const size = Size[compactWidth] || 'small';\n const breakpointWidth = breakpoints[size].maxWidth || Infinity;\n const isCompactView = windowDimensions.width < breakpointWidth;\n\n if (isCompactView) {\n const activeStepIndex = steps.findIndex(step => step.eventKey === activeKey);\n const activeStep = steps[activeStepIndex];\n return (\n <div className={classNames('pgn__stepper-header', className)}>\n <StepperHeaderStep\n {...activeStep}\n index={activeStepIndex}\n isActive\n />\n <div className=\"flex-grow-1\" />\n <div>\n <PageCountComponent\n activeStepIndex={activeStepIndex}\n totalSteps={steps.length}\n />\n </div>\n </div>\n );\n }\n\n // Show all steps\n return (\n <div className={classNames('pgn__stepper-header', className)}>\n <StepList steps={steps} activeKey={activeKey} />\n </div>\n );\n}\n\nStepperHeader.propTypes = {\n /** Specifies class name to append to the base element. */\n className: PropTypes.string,\n /** A component that receives `activeStepIndex` and `totalSteps` props to display them. */\n PageCountComponent: PropTypes.elementType,\n /** The max width in which the compact view of the header will switch to display the step number that is\n * currently in progress. Options include 'xs', 'sm', 'md', 'lg', 'xl', and 'xxl'.\n */\n compactWidth: PropTypes.oneOf(['xs', 'sm', 'md', 'lg', 'xl', 'xxl']),\n};\n\nStepperHeader.defaultProps = {\n className: null,\n PageCountComponent: PageCount,\n compactWidth: 'sm',\n};\n\nStepList.propTypes = {\n steps: PropTypes.arrayOf(PropTypes.shape({\n eventKey: PropTypes.string,\n title: PropTypes.string,\n description: PropTypes.string,\n hasError: PropTypes.bool,\n })),\n activeKey: PropTypes.string.isRequired,\n};\n\nStepList.defaultProps = {\n steps: [],\n};\n\nStepperHeader.Step = StepperHeaderStep;\n\nexport default StepperHeader;\n"],"mappings":"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","ignoreList":[]}
|
|
@@ -5,15 +5,14 @@ import { Check, Error } from '../../icons';
|
|
|
5
5
|
import { StepperContext } from './StepperContext';
|
|
6
6
|
import Icon from '../Icon';
|
|
7
7
|
import Bubble from '../Bubble';
|
|
8
|
-
function StepperHeaderStep(
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
} = _ref;
|
|
8
|
+
function StepperHeaderStep({
|
|
9
|
+
title,
|
|
10
|
+
isActive,
|
|
11
|
+
hasError,
|
|
12
|
+
description,
|
|
13
|
+
index,
|
|
14
|
+
onClick
|
|
15
|
+
}) {
|
|
17
16
|
const {
|
|
18
17
|
getIsViewed
|
|
19
18
|
} = useContext(StepperContext);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"StepperHeaderStep.js","names":["React","useContext","PropTypes","classNames","Check","Error","StepperContext","Icon","Bubble","StepperHeaderStep","
|
|
1
|
+
{"version":3,"file":"StepperHeaderStep.js","names":["React","useContext","PropTypes","classNames","Check","Error","StepperContext","Icon","Bubble","StepperHeaderStep","title","isActive","hasError","description","index","onClick","getIsViewed","isComplete","isViewed","stepIcon","createElement","src","errorIcon","isClickable","type","className","onKeyPress","variant","disabled","propTypes","number","isRequired","string","bool","func","defaultProps","undefined"],"sources":["../../src/Stepper/StepperHeaderStep.jsx"],"sourcesContent":["import React, { useContext } from 'react';\nimport PropTypes from 'prop-types';\nimport classNames from 'classnames';\n\nimport { Check, Error } from '../../icons';\nimport { StepperContext } from './StepperContext';\nimport Icon from '../Icon';\nimport Bubble from '../Bubble';\n\nfunction StepperHeaderStep({\n title,\n isActive,\n hasError,\n description,\n index,\n onClick,\n}) {\n const { getIsViewed } = useContext(StepperContext);\n const isComplete = getIsViewed(index + 1);\n const isViewed = getIsViewed(index);\n const stepIcon = isComplete ? <Icon src={Check} /> : <span>{index + 1}</span>;\n const errorIcon = <Icon src={Error} data-testid=\"step-error\" />;\n const isClickable = onClick && isViewed && !isActive;\n\n if (isClickable) {\n return (\n <button\n type=\"button\"\n aria-label={`${title} step`}\n className={classNames(\n 'pgn__stepper-header-step',\n {\n 'pgn__stepper-header-step-has-error': hasError,\n 'pgn__stepper-header-step-complete': isComplete,\n },\n )}\n onClick={onClick}\n onKeyPress={onClick}\n >\n <Bubble variant={hasError ? 'error' : 'primary'} disabled>\n {hasError ? errorIcon : stepIcon}\n </Bubble>\n <div className=\"pgn__stepper-header-step-title-description\">\n <div className=\"pgn__stepper-header-step-title\">{title}</div>\n <div className=\"pgn__stepper-header-step-description\">{description}</div>\n </div>\n </button>\n );\n }\n\n return (\n <li\n className={classNames(\n 'pgn__stepper-header-step',\n {\n 'pgn__stepper-header-step-active': isActive,\n 'pgn__stepper-header-step-has-error': hasError,\n 'pgn__stepper-header-step-complete': isComplete,\n },\n )}\n data-testid=\"step\"\n >\n <Bubble variant={hasError ? 'error' : 'primary'} disabled={!isActive}>\n {hasError ? errorIcon : stepIcon}\n </Bubble>\n <div className=\"pgn__stepper-header-step-title-description\">\n <div className=\"pgn__stepper-header-step-title\">{title}</div>\n <div className=\"pgn__stepper-header-step-description\">{description}</div>\n </div>\n </li>\n );\n}\n\nStepperHeaderStep.propTypes = {\n /** A number that will be display in the icon of the `HeaderStep`. */\n index: PropTypes.number.isRequired,\n /** A text of the `HeaderStep`. */\n title: PropTypes.string.isRequired,\n /** Specifies that this `HeaderStep` is active. */\n isActive: PropTypes.bool,\n /** Informs user if this `Step` has errors. */\n hasError: PropTypes.bool,\n /** A text under the `title`. */\n description: PropTypes.string,\n /** Callback fired when element gets clicked. */\n onClick: PropTypes.func,\n};\n\nStepperHeaderStep.defaultProps = {\n isActive: false,\n hasError: false,\n description: undefined,\n onClick: undefined,\n};\n\nexport default StepperHeaderStep;\n"],"mappings":"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","ignoreList":[]}
|
|
@@ -2,17 +2,16 @@ import React, { useContext, useEffect } from 'react';
|
|
|
2
2
|
import PropTypes from 'prop-types';
|
|
3
3
|
import classNames from 'classnames';
|
|
4
4
|
import { StepperContext } from './StepperContext';
|
|
5
|
-
export default function StepperStep(
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
} = _ref;
|
|
5
|
+
export default function StepperStep({
|
|
6
|
+
children,
|
|
7
|
+
eventKey,
|
|
8
|
+
className,
|
|
9
|
+
title,
|
|
10
|
+
index,
|
|
11
|
+
description,
|
|
12
|
+
hasError,
|
|
13
|
+
onClick
|
|
14
|
+
}) {
|
|
16
15
|
const {
|
|
17
16
|
activeKey,
|
|
18
17
|
registerStep,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"StepperStep.js","names":["React","useContext","useEffect","PropTypes","classNames","StepperContext","StepperStep","
|
|
1
|
+
{"version":3,"file":"StepperStep.js","names":["React","useContext","useEffect","PropTypes","classNames","StepperContext","StepperStep","children","eventKey","className","title","index","description","hasError","onClick","activeKey","registerStep","removeStep","isActive","createElement","propTypes","node","isRequired","string","bool","number","func","defaultProps","undefined"],"sources":["../../src/Stepper/StepperStep.jsx"],"sourcesContent":["import React, { useContext, useEffect } from 'react';\nimport PropTypes from 'prop-types';\nimport classNames from 'classnames';\nimport { StepperContext } from './StepperContext';\n\nexport default function StepperStep({\n children,\n eventKey,\n className,\n title,\n index,\n description,\n hasError,\n onClick,\n}) {\n const { activeKey, registerStep, removeStep } = useContext(StepperContext);\n\n useEffect(() => {\n registerStep({\n title,\n index,\n eventKey,\n description,\n hasError,\n onClick,\n });\n return () => removeStep(eventKey);\n }, [title, eventKey, description, hasError, index, registerStep, removeStep, onClick]);\n\n const isActive = activeKey === eventKey;\n\n if (!isActive) {\n return null;\n }\n\n return (\n <div className={classNames('pgn__stepper-step', className)}>\n {children}\n </div>\n );\n}\n\nStepperStep.propTypes = {\n /** Specifies the content of the `Step`. */\n children: PropTypes.node.isRequired,\n /** Specifies class name to append to the base element */\n className: PropTypes.string,\n /**\n * An identifier of the `Step`. When `activeKey` on the\n * `Stepper` equals to the `eventKey`, the `Step` will be displayed.\n */\n eventKey: PropTypes.string.isRequired,\n /** A text of the `Step`. */\n title: PropTypes.string.isRequired,\n /** A text under the `title`. */\n description: PropTypes.string,\n /** Informs user if this `Step` has errors. */\n hasError: PropTypes.bool,\n /**\n * Position of the `Step`, only required if adding error state\n * or conditionally rendering steps.\n * */\n index: PropTypes.number,\n /**\n * Click handler for the `Step`. Takes effect only after the `Step` has been visited, making it clickable\n * and invoking this function on click. Should be used to provide navigation between steps.\n */\n onClick: PropTypes.func,\n};\n\nStepperStep.defaultProps = {\n className: undefined,\n description: undefined,\n hasError: false,\n index: undefined,\n onClick: undefined,\n};\n"],"mappings":"AAAA,OAAOA,KAAK,IAAIC,UAAU,EAAEC,SAAS,QAAQ,OAAO;AACpD,OAAOC,SAAS,MAAM,YAAY;AAClC,OAAOC,UAAU,MAAM,YAAY;AACnC,SAASC,cAAc,QAAQ,kBAAkB;AAEjD,eAAe,SAASC,WAAWA,CAAC;EAClCC,QAAQ;EACRC,QAAQ;EACRC,SAAS;EACTC,KAAK;EACLC,KAAK;EACLC,WAAW;EACXC,QAAQ;EACRC;AACF,CAAC,EAAE;EACD,MAAM;IAAEC,SAAS;IAAEC,YAAY;IAAEC;EAAW,CAAC,GAAGhB,UAAU,CAACI,cAAc,CAAC;EAE1EH,SAAS,CAAC,MAAM;IACdc,YAAY,CAAC;MACXN,KAAK;MACLC,KAAK;MACLH,QAAQ;MACRI,WAAW;MACXC,QAAQ;MACRC;IACF,CAAC,CAAC;IACF,OAAO,MAAMG,UAAU,CAACT,QAAQ,CAAC;EACnC,CAAC,EAAE,CAACE,KAAK,EAAEF,QAAQ,EAAEI,WAAW,EAAEC,QAAQ,EAAEF,KAAK,EAAEK,YAAY,EAAEC,UAAU,EAAEH,OAAO,CAAC,CAAC;EAEtF,MAAMI,QAAQ,GAAGH,SAAS,KAAKP,QAAQ;EAEvC,IAAI,CAACU,QAAQ,EAAE;IACb,OAAO,IAAI;EACb;EAEA,oBACElB,KAAA,CAAAmB,aAAA;IAAKV,SAAS,EAAEL,UAAU,CAAC,mBAAmB,EAAEK,SAAS;EAAE,GACxDF,QACE,CAAC;AAEV;AAEAD,WAAW,CAACc,SAAS,GAAG;EACtB;EACAb,QAAQ,EAAEJ,SAAS,CAACkB,IAAI,CAACC,UAAU;EACnC;EACAb,SAAS,EAAEN,SAAS,CAACoB,MAAM;EAC3B;AACF;AACA;AACA;EACEf,QAAQ,EAAEL,SAAS,CAACoB,MAAM,CAACD,UAAU;EACrC;EACAZ,KAAK,EAAEP,SAAS,CAACoB,MAAM,CAACD,UAAU;EAClC;EACAV,WAAW,EAAET,SAAS,CAACoB,MAAM;EAC7B;EACAV,QAAQ,EAAEV,SAAS,CAACqB,IAAI;EACxB;AACF;AACA;AACA;EACEb,KAAK,EAAER,SAAS,CAACsB,MAAM;EACvB;AACF;AACA;AACA;EACEX,OAAO,EAAEX,SAAS,CAACuB;AACrB,CAAC;AAEDpB,WAAW,CAACqB,YAAY,GAAG;EACzBlB,SAAS,EAAEmB,SAAS;EACpBhB,WAAW,EAAEgB,SAAS;EACtBf,QAAQ,EAAE,KAAK;EACfF,KAAK,EAAEiB,SAAS;EAChBd,OAAO,EAAEc;AACX,CAAC","ignoreList":[]}
|
package/dist/Sticky/index.js
CHANGED
|
@@ -2,14 +2,13 @@ import React, { useLayoutEffect, useState } from 'react';
|
|
|
2
2
|
import PropTypes from 'prop-types';
|
|
3
3
|
import classNames from 'classnames';
|
|
4
4
|
const POSITION_VARIANTS = ['top', 'bottom'];
|
|
5
|
-
const Sticky = /*#__PURE__*/React.forwardRef((
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
} = _ref;
|
|
5
|
+
const Sticky = /*#__PURE__*/React.forwardRef(({
|
|
6
|
+
position,
|
|
7
|
+
children,
|
|
8
|
+
offset,
|
|
9
|
+
className,
|
|
10
|
+
...rest
|
|
11
|
+
}, ref) => {
|
|
13
12
|
const [isSticky, setIsSticky] = useState(false);
|
|
14
13
|
const defaultRef = React.useRef();
|
|
15
14
|
const resolvedRef = ref || defaultRef;
|
|
@@ -26,10 +25,7 @@ const Sticky = /*#__PURE__*/React.forwardRef((_ref, ref) => {
|
|
|
26
25
|
// 1 pixel above/bellow + offset pixels that determines
|
|
27
26
|
// when callback function is called
|
|
28
27
|
const elementWithOffset = 1 + (parseInt(elementOffset, 10) || 0);
|
|
29
|
-
const observer = new IntersectionObserver(
|
|
30
|
-
let [entry] = _ref2;
|
|
31
|
-
return setIsSticky(entry.intersectionRatio < 1);
|
|
32
|
-
}, {
|
|
28
|
+
const observer = new IntersectionObserver(([entry]) => setIsSticky(entry.intersectionRatio < 1), {
|
|
33
29
|
threshold: [1],
|
|
34
30
|
rootMargin: position === 'bottom' ? `0px 0px -${elementWithOffset}px 0px` : `-${elementWithOffset}px 0px 0px 0px`
|
|
35
31
|
});
|
package/dist/Sticky/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","names":["React","useLayoutEffect","useState","PropTypes","classNames","POSITION_VARIANTS","Sticky","forwardRef","
|
|
1
|
+
{"version":3,"file":"index.js","names":["React","useLayoutEffect","useState","PropTypes","classNames","POSITION_VARIANTS","Sticky","forwardRef","position","children","offset","className","rest","ref","isSticky","setIsSticky","defaultRef","useRef","resolvedRef","current","stickyElement","elementStyles","window","getComputedStyle","elementOffset","elementWithOffset","parseInt","observer","IntersectionObserver","entry","intersectionRatio","threshold","rootMargin","observe","unobserve","createElement","propTypes","node","isRequired","oneOf","oneOfType","number","string","defaultProps","undefined"],"sources":["../../src/Sticky/index.jsx"],"sourcesContent":["import React, { useLayoutEffect, useState } from 'react';\nimport PropTypes from 'prop-types';\nimport classNames from 'classnames';\n\nconst POSITION_VARIANTS = [\n 'top',\n 'bottom',\n];\n\nconst Sticky = React.forwardRef(({\n position,\n children,\n offset,\n className,\n ...rest\n}, ref) => {\n const [isSticky, setIsSticky] = useState(false);\n const defaultRef = React.useRef();\n const resolvedRef = ref || defaultRef;\n\n // eslint-disable-next-line consistent-return\n useLayoutEffect(() => {\n if (resolvedRef.current) {\n const stickyElement = resolvedRef.current;\n // getComputedStyle is used to get real top/bottom\n // values on the page for proper shadows display\n const elementStyles = window.getComputedStyle(stickyElement);\n const elementOffset = elementStyles[position || 'top'];\n // Margin calculations according to the offset.\n // 1 pixel above/bellow + offset pixels that determines\n // when callback function is called\n const elementWithOffset = 1 + (parseInt(elementOffset, 10) || 0);\n const observer = new IntersectionObserver(\n ([entry]) => setIsSticky(entry.intersectionRatio < 1),\n {\n threshold: [1],\n rootMargin: position === 'bottom'\n ? `0px 0px -${elementWithOffset}px 0px`\n : `-${elementWithOffset}px 0px 0px 0px`,\n },\n );\n observer.observe(stickyElement);\n\n return () => {\n observer.unobserve(stickyElement);\n };\n }\n }, [position, resolvedRef]);\n\n return (\n <div\n className={classNames(\n 'pgn__sticky',\n `pgn__sticky-${position || 'top'}`,\n offset ? `pgn__sticky-offset--${offset}` : '',\n { 'pgn__sticky-shadow': isSticky },\n className,\n )}\n ref={resolvedRef}\n {...rest}\n >\n {children}\n </div>\n );\n});\n\nSticky.propTypes = {\n /** Specifies content of the component. */\n children: PropTypes.node.isRequired,\n /** Specifies position of the element. */\n position: PropTypes.oneOf(POSITION_VARIANTS),\n /**\n * Specifies offset from top/bottom depending on the `position` property.\n *\n * Valid values are based on `the spacing classes`:\n * `0, 0.5, ... 6`.\n */\n offset: PropTypes.oneOfType([PropTypes.number, PropTypes.string]),\n /** Specifies an additional `className` to add to the base element. */\n className: PropTypes.string,\n};\n\nSticky.defaultProps = {\n position: 'top',\n offset: undefined,\n className: undefined,\n};\n\nexport default Sticky;\n"],"mappings":"AAAA,OAAOA,KAAK,IAAIC,eAAe,EAAEC,QAAQ,QAAQ,OAAO;AACxD,OAAOC,SAAS,MAAM,YAAY;AAClC,OAAOC,UAAU,MAAM,YAAY;AAEnC,MAAMC,iBAAiB,GAAG,CACxB,KAAK,EACL,QAAQ,CACT;AAED,MAAMC,MAAM,gBAAGN,KAAK,CAACO,UAAU,CAAC,CAAC;EAC/BC,QAAQ;EACRC,QAAQ;EACRC,MAAM;EACNC,SAAS;EACT,GAAGC;AACL,CAAC,EAAEC,GAAG,KAAK;EACT,MAAM,CAACC,QAAQ,EAAEC,WAAW,CAAC,GAAGb,QAAQ,CAAC,KAAK,CAAC;EAC/C,MAAMc,UAAU,GAAGhB,KAAK,CAACiB,MAAM,CAAC,CAAC;EACjC,MAAMC,WAAW,GAAGL,GAAG,IAAIG,UAAU;;EAErC;EACAf,eAAe,CAAC,MAAM;IACpB,IAAIiB,WAAW,CAACC,OAAO,EAAE;MACvB,MAAMC,aAAa,GAAGF,WAAW,CAACC,OAAO;MACzC;MACA;MACA,MAAME,aAAa,GAAGC,MAAM,CAACC,gBAAgB,CAACH,aAAa,CAAC;MAC5D,MAAMI,aAAa,GAAGH,aAAa,CAACb,QAAQ,IAAI,KAAK,CAAC;MACtD;MACA;MACA;MACA,MAAMiB,iBAAiB,GAAG,CAAC,IAAIC,QAAQ,CAACF,aAAa,EAAE,EAAE,CAAC,IAAI,CAAC,CAAC;MAChE,MAAMG,QAAQ,GAAG,IAAIC,oBAAoB,CACvC,CAAC,CAACC,KAAK,CAAC,KAAKd,WAAW,CAACc,KAAK,CAACC,iBAAiB,GAAG,CAAC,CAAC,EACrD;QACEC,SAAS,EAAE,CAAC,CAAC,CAAC;QACdC,UAAU,EAAExB,QAAQ,KAAK,QAAQ,GAC7B,YAAYiB,iBAAiB,QAAQ,GACrC,IAAIA,iBAAiB;MAC3B,CACF,CAAC;MACDE,QAAQ,CAACM,OAAO,CAACb,aAAa,CAAC;MAE/B,OAAO,MAAM;QACXO,QAAQ,CAACO,SAAS,CAACd,aAAa,CAAC;MACnC,CAAC;IACH;EACF,CAAC,EAAE,CAACZ,QAAQ,EAAEU,WAAW,CAAC,CAAC;EAE3B,oBACElB,KAAA,CAAAmC,aAAA;IACExB,SAAS,EAAEP,UAAU,CACnB,aAAa,EACb,eAAeI,QAAQ,IAAI,KAAK,EAAE,EAClCE,MAAM,GAAG,uBAAuBA,MAAM,EAAE,GAAG,EAAE,EAC7C;MAAE,oBAAoB,EAAEI;IAAS,CAAC,EAClCH,SACF,CAAE;IACFE,GAAG,EAAEK,WAAY;IAAA,GACbN;EAAI,GAEPH,QACE,CAAC;AAEV,CAAC,CAAC;AAEFH,MAAM,CAAC8B,SAAS,GAAG;EACjB;EACA3B,QAAQ,EAAEN,SAAS,CAACkC,IAAI,CAACC,UAAU;EACnC;EACA9B,QAAQ,EAAEL,SAAS,CAACoC,KAAK,CAAClC,iBAAiB,CAAC;EAC5C;AACF;AACA;AACA;AACA;AACA;EACEK,MAAM,EAAEP,SAAS,CAACqC,SAAS,CAAC,CAACrC,SAAS,CAACsC,MAAM,EAAEtC,SAAS,CAACuC,MAAM,CAAC,CAAC;EACjE;EACA/B,SAAS,EAAER,SAAS,CAACuC;AACvB,CAAC;AAEDpC,MAAM,CAACqC,YAAY,GAAG;EACpBnC,QAAQ,EAAE,KAAK;EACfE,MAAM,EAAEkC,SAAS;EACjBjC,SAAS,EAAEiC;AACb,CAAC;AAED,eAAetC,MAAM","ignoreList":[]}
|
package/dist/Tabs/index.js
CHANGED
|
@@ -7,15 +7,14 @@ import Dropdown from '../Dropdown';
|
|
|
7
7
|
import useIndexOfLastVisibleChild from '../hooks/useIndexOfLastVisibleChildHook';
|
|
8
8
|
import Tab from './Tab';
|
|
9
9
|
export const MORE_TAB_TEXT = 'More...';
|
|
10
|
-
function Tabs(
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
} = _ref;
|
|
10
|
+
function Tabs({
|
|
11
|
+
children,
|
|
12
|
+
className,
|
|
13
|
+
moreTabText = MORE_TAB_TEXT,
|
|
14
|
+
defaultActiveKey,
|
|
15
|
+
activeKey,
|
|
16
|
+
...props
|
|
17
|
+
}) {
|
|
19
18
|
const [containerElementRef, setContainerElementRef] = useState(null);
|
|
20
19
|
const overflowElementRef = useRef(null);
|
|
21
20
|
const indexOfLastVisibleChild = useIndexOfLastVisibleChild(containerElementRef?.firstChild, overflowElementRef.current?.parentNode);
|
package/dist/Tabs/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","names":["React","useEffect","useMemo","useRef","useState","useCallback","classNames","PropTypes","BaseTabs","Bubble","Dropdown","useIndexOfLastVisibleChild","Tab","MORE_TAB_TEXT","Tabs","_ref","children","className","moreTabText","defaultActiveKey","activeKey","props","containerElementRef","setContainerElementRef","overflowElementRef","indexOfLastVisibleChild","firstChild","current","parentNode","observer","MutationObserver","mutations","forEach","mutation","eventKey","target","getAttribute","isActive","element","querySelector","moreTab","classList","add","remove","observe","attributes","subtree","attributeFilter","disconnect","undefined","tabIndex","handleDropdownTabClick","hiddenTab","click","tabsChildren","indexOfOverflowStart","handleDropdownKeyPress","e","key","childrenList","Children","map","child","index","type","name","process","env","NODE_ENV","console","error","isValidElement","title","notification","tabClassName","rest","newTitle","createElement","Fragment","variant","role","expandable","tabClass","modifiedTab","cloneElement","moreTabHasNotification","overflowChildren","slice","overflowChild","Item","as","onClick","onKeyPress","disabled","datakey","active","splice","length","ref","Toggle","id","Menu","propTypes","oneOf","node","isRequired","string","defaultProps","default","TabContainer","TabContent","TabPane"],"sources":["../../src/Tabs/index.jsx"],"sourcesContent":["import React, {\n useEffect,\n useMemo,\n useRef,\n useState,\n useCallback,\n} from 'react';\nimport classNames from 'classnames';\nimport PropTypes from 'prop-types';\nimport BaseTabs from 'react-bootstrap/Tabs';\nimport Bubble from '../Bubble';\nimport Dropdown from '../Dropdown';\nimport useIndexOfLastVisibleChild from '../hooks/useIndexOfLastVisibleChildHook';\nimport Tab from './Tab';\n\nexport const MORE_TAB_TEXT = 'More...';\n\nfunction Tabs({\n children,\n className,\n moreTabText = MORE_TAB_TEXT,\n defaultActiveKey,\n activeKey,\n ...props\n}) {\n const [containerElementRef, setContainerElementRef] = useState(null);\n const overflowElementRef = useRef(null);\n const indexOfLastVisibleChild = useIndexOfLastVisibleChild(\n containerElementRef?.firstChild,\n overflowElementRef.current?.parentNode,\n );\n\n useEffect(() => {\n if (containerElementRef) {\n const observer = new MutationObserver((mutations => {\n mutations.forEach(mutation => {\n // React-Bootstrap attribute 'data-rb-event-key' is responsible for the tab identification\n const eventKey = mutation.target.getAttribute('data-rb-event-key');\n // React-Bootstrap attribute 'aria-selected' is responsible for selected/unselected state\n const isActive = mutation.target.getAttribute('aria-selected') === 'true';\n // datakey attribute is added manually to the dropdown\n // elements so that they correspond to the native tabs' eventKey\n const element = containerElementRef.querySelector(`[datakey='${eventKey}']`);\n const moreTab = containerElementRef.querySelector('.pgn__tab_more');\n if (isActive) {\n element?.classList.add('active');\n // Here we add active class to the 'More Tab' if element exists in the dropdown\n if (element) {\n moreTab.classList.add('active');\n } else {\n moreTab.classList.remove('active');\n }\n } else {\n element?.classList.remove('active');\n }\n });\n }));\n observer.observe(containerElementRef, {\n attributes: true, subtree: true, attributeFilter: ['aria-selected'],\n });\n return () => observer.disconnect();\n }\n return undefined;\n }, [containerElementRef]);\n\n useEffect(() => {\n if (overflowElementRef.current?.parentNode) {\n overflowElementRef.current.parentNode.tabIndex = -1;\n }\n }, [overflowElementRef.current?.parentNode]);\n\n const handleDropdownTabClick = useCallback((eventKey) => {\n const hiddenTab = containerElementRef.querySelector(`[data-rb-event-key='${eventKey}']`);\n hiddenTab.click();\n }, [containerElementRef]);\n\n const tabsChildren = useMemo(() => {\n const indexOfOverflowStart = indexOfLastVisibleChild + 1;\n const handleDropdownKeyPress = (e, eventKey) => {\n if (e.key === 'Enter') {\n handleDropdownTabClick(eventKey);\n }\n };\n const childrenList = React.Children.map(children, (child, index) => {\n if (child?.type?.name !== 'Tab' && process.env.NODE_ENV === 'development') {\n // eslint-disable-next-line no-console\n console.error(\n `Tabs children can only be of type Tab. ${children[index]} was passed instead.`,\n );\n }\n if (!React.isValidElement(child)) {\n return child;\n }\n const {\n title, notification, tabClassName, ...rest\n } = child.props;\n let newTitle;\n if (notification) {\n newTitle = (\n <>\n {title}\n <Bubble\n variant=\"error\"\n role=\"status\"\n className=\"pgn__tab-notification\"\n aria-live=\"polite\"\n expandable\n >\n {notification}\n </Bubble>\n </>\n );\n } else {\n newTitle = title;\n }\n const tabClass = index > indexOfLastVisibleChild ? 'pgn__tab_invisible' : '';\n const modifiedTab = React.cloneElement(child, {\n ...rest,\n title: newTitle,\n tabClassName: classNames(tabClass, tabClassName),\n });\n return modifiedTab;\n });\n let moreTabHasNotification = false;\n const overflowChildren = childrenList.slice(indexOfOverflowStart)\n .map(overflowChild => {\n if (!moreTabHasNotification && overflowChild.props.notification) {\n moreTabHasNotification = true;\n }\n return (\n <Dropdown.Item\n as=\"li\"\n tabIndex=\"0\"\n key={`${overflowChild.props.eventKey}overflow`}\n onClick={() => handleDropdownTabClick(overflowChild.props.eventKey)}\n onKeyPress={(e) => handleDropdownKeyPress(e, overflowChild.props.eventKey)}\n disabled={overflowChild.props.disabled}\n datakey={overflowChild.props.eventKey}\n className={classNames({\n active: overflowChild.props.eventKey === defaultActiveKey || overflowChild.props.eventKey === activeKey,\n }, 'pgn__tabs__dropdown-item')}\n >\n {overflowChild.props.title}\n </Dropdown.Item>\n );\n });\n\n childrenList.splice(indexOfOverflowStart, 0, (<Tab\n key=\"moreTabKey\"\n tabClassName={classNames(!overflowChildren.length && 'pgn__tab_invisible', 'pgn__tab_more')}\n title={(\n <Dropdown ref={overflowElementRef}>\n <Dropdown.Toggle\n variant=\"link\"\n className=\"nav-link\"\n id=\"pgn__tab-toggle\"\n >\n {moreTabText}\n {moreTabHasNotification && (\n <Bubble\n variant=\"error\"\n role=\"status\"\n className=\"pgn__tab-notification\"\n />\n )}\n </Dropdown.Toggle>\n <Dropdown.Menu as=\"ul\" className=\"dropdown-menu-right\">{overflowChildren}</Dropdown.Menu>\n </Dropdown>\n )}\n />\n ));\n return childrenList;\n }, [activeKey, children, defaultActiveKey, indexOfLastVisibleChild, moreTabText, handleDropdownTabClick]);\n\n return (\n <div ref={setContainerElementRef}>\n <BaseTabs\n defaultActiveKey={defaultActiveKey}\n activeKey={activeKey}\n {...props}\n className={classNames(className, 'pgn__tabs')}\n >\n {tabsChildren}\n </BaseTabs>\n </div>\n );\n}\n\nTabs.propTypes = {\n /** Specifies variant to use. */\n variant: PropTypes.oneOf(['tabs', 'pills', 'inverse-tabs', 'inverse-pills', 'button-group']),\n /** Specifies elements that is processed to create tabs. */\n children: PropTypes.node.isRequired,\n /** Specifies class name to append to the base element. */\n className: PropTypes.string,\n /** Specifies text for the 'More' tab. */\n moreTabText: PropTypes.string,\n /** Specifies default active tab (uncontrolled usage). */\n defaultActiveKey: PropTypes.string,\n /** Specifies active tab (controlled usage). */\n activeKey: PropTypes.string,\n};\n\nTabs.defaultProps = {\n variant: 'tabs',\n className: undefined,\n moreTabText: MORE_TAB_TEXT,\n defaultActiveKey: undefined,\n activeKey: undefined,\n};\n\nexport default Tabs;\nexport { Tab };\nexport { default as TabContainer } from 'react-bootstrap/TabContainer';\nexport { default as TabContent } from 'react-bootstrap/TabContent';\nexport { default as TabPane } from 'react-bootstrap/TabPane';\n"],"mappings":"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","ignoreList":[]}
|
|
1
|
+
{"version":3,"file":"index.js","names":["React","useEffect","useMemo","useRef","useState","useCallback","classNames","PropTypes","BaseTabs","Bubble","Dropdown","useIndexOfLastVisibleChild","Tab","MORE_TAB_TEXT","Tabs","children","className","moreTabText","defaultActiveKey","activeKey","props","containerElementRef","setContainerElementRef","overflowElementRef","indexOfLastVisibleChild","firstChild","current","parentNode","observer","MutationObserver","mutations","forEach","mutation","eventKey","target","getAttribute","isActive","element","querySelector","moreTab","classList","add","remove","observe","attributes","subtree","attributeFilter","disconnect","undefined","tabIndex","handleDropdownTabClick","hiddenTab","click","tabsChildren","indexOfOverflowStart","handleDropdownKeyPress","e","key","childrenList","Children","map","child","index","type","name","process","env","NODE_ENV","console","error","isValidElement","title","notification","tabClassName","rest","newTitle","createElement","Fragment","variant","role","expandable","tabClass","modifiedTab","cloneElement","moreTabHasNotification","overflowChildren","slice","overflowChild","Item","as","onClick","onKeyPress","disabled","datakey","active","splice","length","ref","Toggle","id","Menu","propTypes","oneOf","node","isRequired","string","defaultProps","default","TabContainer","TabContent","TabPane"],"sources":["../../src/Tabs/index.jsx"],"sourcesContent":["import React, {\n useEffect,\n useMemo,\n useRef,\n useState,\n useCallback,\n} from 'react';\nimport classNames from 'classnames';\nimport PropTypes from 'prop-types';\nimport BaseTabs from 'react-bootstrap/Tabs';\nimport Bubble from '../Bubble';\nimport Dropdown from '../Dropdown';\nimport useIndexOfLastVisibleChild from '../hooks/useIndexOfLastVisibleChildHook';\nimport Tab from './Tab';\n\nexport const MORE_TAB_TEXT = 'More...';\n\nfunction Tabs({\n children,\n className,\n moreTabText = MORE_TAB_TEXT,\n defaultActiveKey,\n activeKey,\n ...props\n}) {\n const [containerElementRef, setContainerElementRef] = useState(null);\n const overflowElementRef = useRef(null);\n const indexOfLastVisibleChild = useIndexOfLastVisibleChild(\n containerElementRef?.firstChild,\n overflowElementRef.current?.parentNode,\n );\n\n useEffect(() => {\n if (containerElementRef) {\n const observer = new MutationObserver((mutations => {\n mutations.forEach(mutation => {\n // React-Bootstrap attribute 'data-rb-event-key' is responsible for the tab identification\n const eventKey = mutation.target.getAttribute('data-rb-event-key');\n // React-Bootstrap attribute 'aria-selected' is responsible for selected/unselected state\n const isActive = mutation.target.getAttribute('aria-selected') === 'true';\n // datakey attribute is added manually to the dropdown\n // elements so that they correspond to the native tabs' eventKey\n const element = containerElementRef.querySelector(`[datakey='${eventKey}']`);\n const moreTab = containerElementRef.querySelector('.pgn__tab_more');\n if (isActive) {\n element?.classList.add('active');\n // Here we add active class to the 'More Tab' if element exists in the dropdown\n if (element) {\n moreTab.classList.add('active');\n } else {\n moreTab.classList.remove('active');\n }\n } else {\n element?.classList.remove('active');\n }\n });\n }));\n observer.observe(containerElementRef, {\n attributes: true, subtree: true, attributeFilter: ['aria-selected'],\n });\n return () => observer.disconnect();\n }\n return undefined;\n }, [containerElementRef]);\n\n useEffect(() => {\n if (overflowElementRef.current?.parentNode) {\n overflowElementRef.current.parentNode.tabIndex = -1;\n }\n }, [overflowElementRef.current?.parentNode]);\n\n const handleDropdownTabClick = useCallback((eventKey) => {\n const hiddenTab = containerElementRef.querySelector(`[data-rb-event-key='${eventKey}']`);\n hiddenTab.click();\n }, [containerElementRef]);\n\n const tabsChildren = useMemo(() => {\n const indexOfOverflowStart = indexOfLastVisibleChild + 1;\n const handleDropdownKeyPress = (e, eventKey) => {\n if (e.key === 'Enter') {\n handleDropdownTabClick(eventKey);\n }\n };\n const childrenList = React.Children.map(children, (child, index) => {\n if (child?.type?.name !== 'Tab' && process.env.NODE_ENV === 'development') {\n // eslint-disable-next-line no-console\n console.error(\n `Tabs children can only be of type Tab. ${children[index]} was passed instead.`,\n );\n }\n if (!React.isValidElement(child)) {\n return child;\n }\n const {\n title, notification, tabClassName, ...rest\n } = child.props;\n let newTitle;\n if (notification) {\n newTitle = (\n <>\n {title}\n <Bubble\n variant=\"error\"\n role=\"status\"\n className=\"pgn__tab-notification\"\n aria-live=\"polite\"\n expandable\n >\n {notification}\n </Bubble>\n </>\n );\n } else {\n newTitle = title;\n }\n const tabClass = index > indexOfLastVisibleChild ? 'pgn__tab_invisible' : '';\n const modifiedTab = React.cloneElement(child, {\n ...rest,\n title: newTitle,\n tabClassName: classNames(tabClass, tabClassName),\n });\n return modifiedTab;\n });\n let moreTabHasNotification = false;\n const overflowChildren = childrenList.slice(indexOfOverflowStart)\n .map(overflowChild => {\n if (!moreTabHasNotification && overflowChild.props.notification) {\n moreTabHasNotification = true;\n }\n return (\n <Dropdown.Item\n as=\"li\"\n tabIndex=\"0\"\n key={`${overflowChild.props.eventKey}overflow`}\n onClick={() => handleDropdownTabClick(overflowChild.props.eventKey)}\n onKeyPress={(e) => handleDropdownKeyPress(e, overflowChild.props.eventKey)}\n disabled={overflowChild.props.disabled}\n datakey={overflowChild.props.eventKey}\n className={classNames({\n active: overflowChild.props.eventKey === defaultActiveKey || overflowChild.props.eventKey === activeKey,\n }, 'pgn__tabs__dropdown-item')}\n >\n {overflowChild.props.title}\n </Dropdown.Item>\n );\n });\n\n childrenList.splice(indexOfOverflowStart, 0, (<Tab\n key=\"moreTabKey\"\n tabClassName={classNames(!overflowChildren.length && 'pgn__tab_invisible', 'pgn__tab_more')}\n title={(\n <Dropdown ref={overflowElementRef}>\n <Dropdown.Toggle\n variant=\"link\"\n className=\"nav-link\"\n id=\"pgn__tab-toggle\"\n >\n {moreTabText}\n {moreTabHasNotification && (\n <Bubble\n variant=\"error\"\n role=\"status\"\n className=\"pgn__tab-notification\"\n />\n )}\n </Dropdown.Toggle>\n <Dropdown.Menu as=\"ul\" className=\"dropdown-menu-right\">{overflowChildren}</Dropdown.Menu>\n </Dropdown>\n )}\n />\n ));\n return childrenList;\n }, [activeKey, children, defaultActiveKey, indexOfLastVisibleChild, moreTabText, handleDropdownTabClick]);\n\n return (\n <div ref={setContainerElementRef}>\n <BaseTabs\n defaultActiveKey={defaultActiveKey}\n activeKey={activeKey}\n {...props}\n className={classNames(className, 'pgn__tabs')}\n >\n {tabsChildren}\n </BaseTabs>\n </div>\n );\n}\n\nTabs.propTypes = {\n /** Specifies variant to use. */\n variant: PropTypes.oneOf(['tabs', 'pills', 'inverse-tabs', 'inverse-pills', 'button-group']),\n /** Specifies elements that is processed to create tabs. */\n children: PropTypes.node.isRequired,\n /** Specifies class name to append to the base element. */\n className: PropTypes.string,\n /** Specifies text for the 'More' tab. */\n moreTabText: PropTypes.string,\n /** Specifies default active tab (uncontrolled usage). */\n defaultActiveKey: PropTypes.string,\n /** Specifies active tab (controlled usage). */\n activeKey: PropTypes.string,\n};\n\nTabs.defaultProps = {\n variant: 'tabs',\n className: undefined,\n moreTabText: MORE_TAB_TEXT,\n defaultActiveKey: undefined,\n activeKey: undefined,\n};\n\nexport default Tabs;\nexport { Tab };\nexport { default as TabContainer } from 'react-bootstrap/TabContainer';\nexport { default as TabContent } from 'react-bootstrap/TabContent';\nexport { default as TabPane } from 'react-bootstrap/TabPane';\n"],"mappings":"AAAA,OAAOA,KAAK,IACVC,SAAS,EACTC,OAAO,EACPC,MAAM,EACNC,QAAQ,EACRC,WAAW,QACN,OAAO;AACd,OAAOC,UAAU,MAAM,YAAY;AACnC,OAAOC,SAAS,MAAM,YAAY;AAClC,OAAOC,QAAQ,MAAM,sBAAsB;AAC3C,OAAOC,MAAM,MAAM,WAAW;AAC9B,OAAOC,QAAQ,MAAM,aAAa;AAClC,OAAOC,0BAA0B,MAAM,yCAAyC;AAChF,OAAOC,GAAG,MAAM,OAAO;AAEvB,OAAO,MAAMC,aAAa,GAAG,SAAS;AAEtC,SAASC,IAAIA,CAAC;EACZC,QAAQ;EACRC,SAAS;EACTC,WAAW,GAAGJ,aAAa;EAC3BK,gBAAgB;EAChBC,SAAS;EACT,GAAGC;AACL,CAAC,EAAE;EACD,MAAM,CAACC,mBAAmB,EAAEC,sBAAsB,CAAC,GAAGlB,QAAQ,CAAC,IAAI,CAAC;EACpE,MAAMmB,kBAAkB,GAAGpB,MAAM,CAAC,IAAI,CAAC;EACvC,MAAMqB,uBAAuB,GAAGb,0BAA0B,CACxDU,mBAAmB,EAAEI,UAAU,EAC/BF,kBAAkB,CAACG,OAAO,EAAEC,UAC9B,CAAC;EAED1B,SAAS,CAAC,MAAM;IACd,IAAIoB,mBAAmB,EAAE;MACvB,MAAMO,QAAQ,GAAG,IAAIC,gBAAgB,CAAEC,SAAS,IAAI;QAClDA,SAAS,CAACC,OAAO,CAACC,QAAQ,IAAI;UAC5B;UACA,MAAMC,QAAQ,GAAGD,QAAQ,CAACE,MAAM,CAACC,YAAY,CAAC,mBAAmB,CAAC;UAClE;UACA,MAAMC,QAAQ,GAAGJ,QAAQ,CAACE,MAAM,CAACC,YAAY,CAAC,eAAe,CAAC,KAAK,MAAM;UACzE;UACA;UACA,MAAME,OAAO,GAAGhB,mBAAmB,CAACiB,aAAa,CAAC,aAAaL,QAAQ,IAAI,CAAC;UAC5E,MAAMM,OAAO,GAAGlB,mBAAmB,CAACiB,aAAa,CAAC,gBAAgB,CAAC;UACnE,IAAIF,QAAQ,EAAE;YACZC,OAAO,EAAEG,SAAS,CAACC,GAAG,CAAC,QAAQ,CAAC;YAChC;YACA,IAAIJ,OAAO,EAAE;cACXE,OAAO,CAACC,SAAS,CAACC,GAAG,CAAC,QAAQ,CAAC;YACjC,CAAC,MAAM;cACLF,OAAO,CAACC,SAAS,CAACE,MAAM,CAAC,QAAQ,CAAC;YACpC;UACF,CAAC,MAAM;YACLL,OAAO,EAAEG,SAAS,CAACE,MAAM,CAAC,QAAQ,CAAC;UACrC;QACF,CAAC,CAAC;MACJ,CAAE,CAAC;MACHd,QAAQ,CAACe,OAAO,CAACtB,mBAAmB,EAAE;QACpCuB,UAAU,EAAE,IAAI;QAAEC,OAAO,EAAE,IAAI;QAAEC,eAAe,EAAE,CAAC,eAAe;MACpE,CAAC,CAAC;MACF,OAAO,MAAMlB,QAAQ,CAACmB,UAAU,CAAC,CAAC;IACpC;IACA,OAAOC,SAAS;EAClB,CAAC,EAAE,CAAC3B,mBAAmB,CAAC,CAAC;EAEzBpB,SAAS,CAAC,MAAM;IACd,IAAIsB,kBAAkB,CAACG,OAAO,EAAEC,UAAU,EAAE;MAC1CJ,kBAAkB,CAACG,OAAO,CAACC,UAAU,CAACsB,QAAQ,GAAG,CAAC,CAAC;IACrD;EACF,CAAC,EAAE,CAAC1B,kBAAkB,CAACG,OAAO,EAAEC,UAAU,CAAC,CAAC;EAE5C,MAAMuB,sBAAsB,GAAG7C,WAAW,CAAE4B,QAAQ,IAAK;IACvD,MAAMkB,SAAS,GAAG9B,mBAAmB,CAACiB,aAAa,CAAC,uBAAuBL,QAAQ,IAAI,CAAC;IACxFkB,SAAS,CAACC,KAAK,CAAC,CAAC;EACnB,CAAC,EAAE,CAAC/B,mBAAmB,CAAC,CAAC;EAEzB,MAAMgC,YAAY,GAAGnD,OAAO,CAAC,MAAM;IACjC,MAAMoD,oBAAoB,GAAG9B,uBAAuB,GAAG,CAAC;IACxD,MAAM+B,sBAAsB,GAAGA,CAACC,CAAC,EAAEvB,QAAQ,KAAK;MAC9C,IAAIuB,CAAC,CAACC,GAAG,KAAK,OAAO,EAAE;QACrBP,sBAAsB,CAACjB,QAAQ,CAAC;MAClC;IACF,CAAC;IACD,MAAMyB,YAAY,GAAG1D,KAAK,CAAC2D,QAAQ,CAACC,GAAG,CAAC7C,QAAQ,EAAE,CAAC8C,KAAK,EAAEC,KAAK,KAAK;MAClE,IAAID,KAAK,EAAEE,IAAI,EAAEC,IAAI,KAAK,KAAK,IAAIC,OAAO,CAACC,GAAG,CAACC,QAAQ,KAAK,aAAa,EAAE;QACzE;QACAC,OAAO,CAACC,KAAK,CACX,0CAA0CtD,QAAQ,CAAC+C,KAAK,CAAC,sBAC3D,CAAC;MACH;MACA,IAAI,eAAC9D,KAAK,CAACsE,cAAc,CAACT,KAAK,CAAC,EAAE;QAChC,OAAOA,KAAK;MACd;MACA,MAAM;QACJU,KAAK;QAAEC,YAAY;QAAEC,YAAY;QAAE,GAAGC;MACxC,CAAC,GAAGb,KAAK,CAACzC,KAAK;MACf,IAAIuD,QAAQ;MACZ,IAAIH,YAAY,EAAE;QAChBG,QAAQ,gBACN3E,KAAA,CAAA4E,aAAA,CAAA5E,KAAA,CAAA6E,QAAA,QACGN,KAAK,eACNvE,KAAA,CAAA4E,aAAA,CAACnE,MAAM;UACLqE,OAAO,EAAC,OAAO;UACfC,IAAI,EAAC,QAAQ;UACb/D,SAAS,EAAC,uBAAuB;UACjC,aAAU,QAAQ;UAClBgE,UAAU;QAAA,GAETR,YACK,CACR,CACH;MACH,CAAC,MAAM;QACLG,QAAQ,GAAGJ,KAAK;MAClB;MACA,MAAMU,QAAQ,GAAGnB,KAAK,GAAGtC,uBAAuB,GAAG,oBAAoB,GAAG,EAAE;MAC5E,MAAM0D,WAAW,gBAAGlF,KAAK,CAACmF,YAAY,CAACtB,KAAK,EAAE;QAC5C,GAAGa,IAAI;QACPH,KAAK,EAAEI,QAAQ;QACfF,YAAY,EAAEnE,UAAU,CAAC2E,QAAQ,EAAER,YAAY;MACjD,CAAC,CAAC;MACF,OAAOS,WAAW;IACpB,CAAC,CAAC;IACF,IAAIE,sBAAsB,GAAG,KAAK;IAClC,MAAMC,gBAAgB,GAAG3B,YAAY,CAAC4B,KAAK,CAAChC,oBAAoB,CAAC,CAC9DM,GAAG,CAAC2B,aAAa,IAAI;MACpB,IAAI,CAACH,sBAAsB,IAAIG,aAAa,CAACnE,KAAK,CAACoD,YAAY,EAAE;QAC/DY,sBAAsB,GAAG,IAAI;MAC/B;MACA,oBACEpF,KAAA,CAAA4E,aAAA,CAAClE,QAAQ,CAAC8E,IAAI;QACZC,EAAE,EAAC,IAAI;QACPxC,QAAQ,EAAC,GAAG;QACZQ,GAAG,EAAE,GAAG8B,aAAa,CAACnE,KAAK,CAACa,QAAQ,UAAW;QAC/CyD,OAAO,EAAEA,CAAA,KAAMxC,sBAAsB,CAACqC,aAAa,CAACnE,KAAK,CAACa,QAAQ,CAAE;QACpE0D,UAAU,EAAGnC,CAAC,IAAKD,sBAAsB,CAACC,CAAC,EAAE+B,aAAa,CAACnE,KAAK,CAACa,QAAQ,CAAE;QAC3E2D,QAAQ,EAAEL,aAAa,CAACnE,KAAK,CAACwE,QAAS;QACvCC,OAAO,EAAEN,aAAa,CAACnE,KAAK,CAACa,QAAS;QACtCjB,SAAS,EAAEV,UAAU,CAAC;UACpBwF,MAAM,EAAEP,aAAa,CAACnE,KAAK,CAACa,QAAQ,KAAKf,gBAAgB,IAAIqE,aAAa,CAACnE,KAAK,CAACa,QAAQ,KAAKd;QAChG,CAAC,EAAE,0BAA0B;MAAE,GAE9BoE,aAAa,CAACnE,KAAK,CAACmD,KACR,CAAC;IAEpB,CAAC,CAAC;IAEJb,YAAY,CAACqC,MAAM,CAACzC,oBAAoB,EAAE,CAAC,eAAGtD,KAAA,CAAA4E,aAAA,CAAChE,GAAG;MAChD6C,GAAG,EAAC,YAAY;MAChBgB,YAAY,EAAEnE,UAAU,CAAC,CAAC+E,gBAAgB,CAACW,MAAM,IAAI,oBAAoB,EAAE,eAAe,CAAE;MAC5FzB,KAAK,eACHvE,KAAA,CAAA4E,aAAA,CAAClE,QAAQ;QAACuF,GAAG,EAAE1E;MAAmB,gBAChCvB,KAAA,CAAA4E,aAAA,CAAClE,QAAQ,CAACwF,MAAM;QACdpB,OAAO,EAAC,MAAM;QACd9D,SAAS,EAAC,UAAU;QACpBmF,EAAE,EAAC;MAAiB,GAEnBlF,WAAW,EACXmE,sBAAsB,iBACrBpF,KAAA,CAAA4E,aAAA,CAACnE,MAAM;QACLqE,OAAO,EAAC,OAAO;QACfC,IAAI,EAAC,QAAQ;QACb/D,SAAS,EAAC;MAAuB,CAClC,CAEY,CAAC,eAClBhB,KAAA,CAAA4E,aAAA,CAAClE,QAAQ,CAAC0F,IAAI;QAACX,EAAE,EAAC,IAAI;QAACzE,SAAS,EAAC;MAAqB,GAAEqE,gBAAgC,CAChF;IACV,CACH,CACA,CAAC;IACF,OAAO3B,YAAY;EACrB,CAAC,EAAE,CAACvC,SAAS,EAAEJ,QAAQ,EAAEG,gBAAgB,EAAEM,uBAAuB,EAAEP,WAAW,EAAEiC,sBAAsB,CAAC,CAAC;EAEzG,oBACElD,KAAA,CAAA4E,aAAA;IAAKqB,GAAG,EAAE3E;EAAuB,gBAC/BtB,KAAA,CAAA4E,aAAA,CAACpE,QAAQ;IACPU,gBAAgB,EAAEA,gBAAiB;IACnCC,SAAS,EAAEA,SAAU;IAAA,GACjBC,KAAK;IACTJ,SAAS,EAAEV,UAAU,CAACU,SAAS,EAAE,WAAW;EAAE,GAE7CqC,YACO,CACP,CAAC;AAEV;AAEAvC,IAAI,CAACuF,SAAS,GAAG;EACf;EACAvB,OAAO,EAAEvE,SAAS,CAAC+F,KAAK,CAAC,CAAC,MAAM,EAAE,OAAO,EAAE,cAAc,EAAE,eAAe,EAAE,cAAc,CAAC,CAAC;EAC5F;EACAvF,QAAQ,EAAER,SAAS,CAACgG,IAAI,CAACC,UAAU;EACnC;EACAxF,SAAS,EAAET,SAAS,CAACkG,MAAM;EAC3B;EACAxF,WAAW,EAAEV,SAAS,CAACkG,MAAM;EAC7B;EACAvF,gBAAgB,EAAEX,SAAS,CAACkG,MAAM;EAClC;EACAtF,SAAS,EAAEZ,SAAS,CAACkG;AACvB,CAAC;AAED3F,IAAI,CAAC4F,YAAY,GAAG;EAClB5B,OAAO,EAAE,MAAM;EACf9D,SAAS,EAAEgC,SAAS;EACpB/B,WAAW,EAAEJ,aAAa;EAC1BK,gBAAgB,EAAE8B,SAAS;EAC3B7B,SAAS,EAAE6B;AACb,CAAC;AAED,eAAelC,IAAI;AACnB,SAASF,GAAG;AACZ,SAAS+F,OAAO,IAAIC,YAAY,QAAQ,8BAA8B;AACtE,SAASD,OAAO,IAAIE,UAAU,QAAQ,4BAA4B;AAClE,SAASF,OAAO,IAAIG,OAAO,QAAQ,yBAAyB","ignoreList":[]}
|