@clickhouse/click-ui 0.6.2-rc3 → 0.8.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/dist/cjs/click-ui.css +3521 -236
- package/dist/cjs/components/Alert/index.cjs +2 -2
- package/dist/cjs/components/Alert/index.cjs.map +1 -1
- package/dist/cjs/components/Assets/Logos/Polaris.cjs +22 -0
- package/dist/cjs/components/Assets/Logos/Polaris.cjs.map +1 -0
- package/dist/cjs/components/Assets/Logos/system/LogosDark.cjs +2 -0
- package/dist/cjs/components/Assets/Logos/system/LogosDark.cjs.map +1 -1
- package/dist/cjs/components/Assets/Logos/system/LogosLight.cjs +2 -0
- package/dist/cjs/components/Assets/Logos/system/LogosLight.cjs.map +1 -1
- package/dist/cjs/components/AutoComplete/AutoComplete.css +97 -0
- package/dist/cjs/components/AutoComplete/AutoComplete.module.css.cjs +18 -0
- package/dist/cjs/components/AutoComplete/AutoComplete.module.css.cjs.map +1 -0
- package/dist/cjs/components/AutoComplete/index.cjs +14 -74
- package/dist/cjs/components/AutoComplete/index.cjs.map +1 -1
- package/dist/cjs/components/BigStat/BigStat.css +77 -0
- package/dist/cjs/components/BigStat/BigStat.module.css.cjs +22 -0
- package/dist/cjs/components/BigStat/BigStat.module.css.cjs.map +1 -0
- package/dist/cjs/components/BigStat/index.cjs +60 -52
- package/dist/cjs/components/BigStat/index.cjs.map +1 -1
- package/dist/cjs/components/Button/BaseButton.cjs +10 -31
- package/dist/cjs/components/Button/BaseButton.cjs.map +1 -1
- package/dist/cjs/components/Button/BaseButton.css +40 -0
- package/dist/cjs/components/Button/BaseButton.module.css.cjs +10 -0
- package/dist/cjs/components/Button/BaseButton.module.css.cjs.map +1 -0
- package/dist/cjs/components/ButtonGroup/index.cjs +1 -1
- package/dist/cjs/components/ButtonGroup/index.cjs.map +1 -1
- package/dist/cjs/components/CardPromotion/CardPromotion.css +52 -0
- package/dist/cjs/components/CardPromotion/CardPromotion.module.css.cjs +21 -0
- package/dist/cjs/components/CardPromotion/CardPromotion.module.css.cjs.map +1 -0
- package/dist/cjs/components/CardPromotion/index.cjs +8 -54
- package/dist/cjs/components/CardPromotion/index.cjs.map +1 -1
- package/dist/cjs/components/CardSecondary/CardSecondary.css +99 -0
- package/dist/cjs/components/CardSecondary/CardSecondary.module.css.cjs +39 -0
- package/dist/cjs/components/CardSecondary/CardSecondary.module.css.cjs.map +1 -0
- package/dist/cjs/components/CardSecondary/index.cjs +35 -84
- package/dist/cjs/components/CardSecondary/index.cjs.map +1 -1
- package/dist/cjs/components/CodeBlock/CodeBlock.css +48 -0
- package/dist/cjs/components/CodeBlock/CodeBlock.module.css.cjs +22 -0
- package/dist/cjs/components/CodeBlock/CodeBlock.module.css.cjs.map +1 -0
- package/dist/cjs/components/CodeBlock/InlineCodeBlock.cjs +7 -14
- package/dist/cjs/components/CodeBlock/InlineCodeBlock.cjs.map +1 -1
- package/dist/cjs/components/CodeBlock/InlineCodeBlock.css +10 -0
- package/dist/cjs/components/CodeBlock/InlineCodeBlock.module.css.cjs +12 -0
- package/dist/cjs/components/CodeBlock/InlineCodeBlock.module.css.cjs.map +1 -0
- package/dist/cjs/components/CodeBlock/index.cjs +18 -49
- package/dist/cjs/components/CodeBlock/index.cjs.map +1 -1
- package/dist/cjs/components/CodeBlock/useColorStyle.cjs +15 -0
- package/dist/cjs/components/CodeBlock/useColorStyle.cjs.map +1 -1
- package/dist/cjs/components/ConfirmationDialog/ConfirmationDialog.css +20 -0
- package/dist/cjs/components/ConfirmationDialog/ConfirmationDialog.module.css.cjs +15 -0
- package/dist/cjs/components/ConfirmationDialog/ConfirmationDialog.module.css.cjs.map +1 -0
- package/dist/cjs/components/ConfirmationDialog/index.cjs +6 -11
- package/dist/cjs/components/ConfirmationDialog/index.cjs.map +1 -1
- package/dist/cjs/components/ContextMenu/ContextMenu.css +40 -0
- package/dist/cjs/components/ContextMenu/ContextMenu.module.css.cjs +17 -0
- package/dist/cjs/components/ContextMenu/ContextMenu.module.css.cjs.map +1 -0
- package/dist/cjs/components/ContextMenu/index.cjs +33 -47
- package/dist/cjs/components/ContextMenu/index.cjs.map +1 -1
- package/dist/cjs/components/CrossButton/CrossButton.css +12 -0
- package/dist/cjs/components/CrossButton/CrossButton.module.css.cjs +10 -0
- package/dist/cjs/components/CrossButton/CrossButton.module.css.cjs.map +1 -0
- package/dist/cjs/components/CrossButton/index.cjs +11 -14
- package/dist/cjs/components/CrossButton/index.cjs.map +1 -1
- package/dist/cjs/components/DatePicker/Common.cjs +1 -1
- package/dist/cjs/components/DatePicker/Common.cjs.map +1 -1
- package/dist/cjs/components/DatePicker/DateTimeRangePicker.cjs +1 -1
- package/dist/cjs/components/DatePicker/DateTimeRangePicker.cjs.map +1 -1
- package/dist/cjs/components/Dropdown/Dropdown.css +36 -0
- package/dist/cjs/components/Dropdown/Dropdown.module.css.cjs +13 -0
- package/dist/cjs/components/Dropdown/Dropdown.module.css.cjs.map +1 -0
- package/dist/cjs/components/Dropdown/index.cjs +28 -33
- package/dist/cjs/components/Dropdown/index.cjs.map +1 -1
- package/dist/cjs/components/EllipsisContent/EllipsisContent.css +21 -0
- package/dist/cjs/components/EllipsisContent/EllipsisContent.module.css.cjs +10 -0
- package/dist/cjs/components/EllipsisContent/EllipsisContent.module.css.cjs.map +1 -0
- package/dist/cjs/components/EllipsisContent/index.cjs +7 -6
- package/dist/cjs/components/EllipsisContent/index.cjs.map +1 -1
- package/dist/cjs/components/EmptyButton/EmptyButton.css +21 -0
- package/dist/cjs/components/EmptyButton/EmptyButton.module.css.cjs +10 -0
- package/dist/cjs/components/EmptyButton/EmptyButton.module.css.cjs.map +1 -0
- package/dist/cjs/components/EmptyButton/index.cjs +10 -4
- package/dist/cjs/components/EmptyButton/index.cjs.map +1 -1
- package/dist/cjs/components/FileTabs/FileTabs.css +167 -0
- package/dist/cjs/components/FileTabs/FileTabs.module.css.cjs +38 -0
- package/dist/cjs/components/FileTabs/FileTabs.module.css.cjs.map +1 -0
- package/dist/cjs/components/FileTabs/index.cjs +51 -80
- package/dist/cjs/components/FileTabs/index.cjs.map +1 -1
- package/dist/cjs/components/FileUpload/FileMultiUpload.cjs +3 -9
- package/dist/cjs/components/FileUpload/FileMultiUpload.cjs.map +1 -1
- package/dist/cjs/components/FileUpload/FileMultiUpload.css +8 -0
- package/dist/cjs/components/FileUpload/FileMultiUpload.module.css.cjs +10 -0
- package/dist/cjs/components/FileUpload/FileMultiUpload.module.css.cjs.map +1 -0
- package/dist/cjs/components/FileUpload/FileUpload.stories-common.css +14 -0
- package/dist/cjs/components/FileUpload/FileUploadArea.cjs +87 -64
- package/dist/cjs/components/FileUpload/FileUploadArea.cjs.map +1 -1
- package/dist/cjs/components/FileUpload/FileUploadArea.css +130 -0
- package/dist/cjs/components/FileUpload/FileUploadArea.module.css.cjs +38 -0
- package/dist/cjs/components/FileUpload/FileUploadArea.module.css.cjs.map +1 -0
- package/dist/cjs/components/FileUpload/FileUploadItem.cjs +56 -64
- package/dist/cjs/components/FileUpload/FileUploadItem.cjs.map +1 -1
- package/dist/cjs/components/FileUpload/FileUploadItem.css +82 -0
- package/dist/cjs/components/FileUpload/FileUploadItem.module.css.cjs +27 -0
- package/dist/cjs/components/FileUpload/FileUploadItem.module.css.cjs.map +1 -0
- package/dist/cjs/components/Flyout/Flyout.css +231 -0
- package/dist/cjs/components/Flyout/Flyout.module.css.cjs +93 -0
- package/dist/cjs/components/Flyout/Flyout.module.css.cjs.map +1 -0
- package/dist/cjs/components/Flyout/index.cjs +148 -126
- package/dist/cjs/components/Flyout/index.cjs.map +1 -1
- package/dist/cjs/components/FormContainer/Error.cjs +8 -9
- package/dist/cjs/components/FormContainer/Error.cjs.map +1 -1
- package/dist/cjs/components/FormContainer/Error.css +4 -0
- package/dist/cjs/components/FormContainer/Error.module.css.cjs +12 -0
- package/dist/cjs/components/FormContainer/Error.module.css.cjs.map +1 -0
- package/dist/cjs/components/FormContainer/FormElementContainer.cjs +8 -6
- package/dist/cjs/components/FormContainer/FormElementContainer.cjs.map +1 -1
- package/dist/cjs/components/FormContainer/FormElementContainer.css +14 -0
- package/dist/cjs/components/FormContainer/FormElementContainer.module.css.cjs +10 -0
- package/dist/cjs/components/FormContainer/FormElementContainer.module.css.cjs.map +1 -0
- package/dist/cjs/components/FormContainer/FormRoot.cjs +32 -18
- package/dist/cjs/components/FormContainer/FormRoot.cjs.map +1 -1
- package/dist/cjs/components/FormContainer/FormRoot.css +33 -0
- package/dist/cjs/components/FormContainer/FormRoot.module.css.cjs +15 -0
- package/dist/cjs/components/FormContainer/FormRoot.module.css.cjs.map +1 -0
- package/dist/cjs/components/GenericMenu/GenericMenu.css +176 -0
- package/dist/cjs/components/GenericMenu/GenericMenu.module.css.cjs +23 -0
- package/dist/cjs/components/GenericMenu/GenericMenu.module.css.cjs.map +1 -0
- package/dist/cjs/components/GenericMenu/index.cjs +93 -99
- package/dist/cjs/components/GenericMenu/index.cjs.map +1 -1
- package/dist/cjs/components/GridCenter/GridCenter.css +6 -0
- package/dist/cjs/components/GridContainer/GridContainer.css +71 -0
- package/dist/cjs/components/GridContainer/GridContainer.module.css.cjs +12 -0
- package/dist/cjs/components/GridContainer/GridContainer.module.css.cjs.map +1 -0
- package/dist/cjs/components/GridContainer/index.cjs +64 -64
- package/dist/cjs/components/GridContainer/index.cjs.map +1 -1
- package/dist/cjs/components/HoverCard/index.cjs +1 -1
- package/dist/cjs/components/HoverCard/index.cjs.map +1 -1
- package/dist/cjs/components/IconButton/index.cjs +2 -1
- package/dist/cjs/components/IconButton/index.cjs.map +1 -1
- package/dist/cjs/components/InputWrapper/InputWrapper.css +221 -0
- package/dist/cjs/components/InputWrapper/InputWrapper.module.css.cjs +39 -0
- package/dist/cjs/components/InputWrapper/InputWrapper.module.css.cjs.map +1 -0
- package/dist/cjs/components/InputWrapper/index.cjs +84 -185
- package/dist/cjs/components/InputWrapper/index.cjs.map +1 -1
- package/dist/cjs/components/MiddleTruncator/MiddleTruncator.css +22 -0
- package/dist/cjs/components/MiddleTruncator/MiddleTruncator.module.css.cjs +18 -0
- package/dist/cjs/components/MiddleTruncator/MiddleTruncator.module.css.cjs.map +1 -0
- package/dist/cjs/components/MiddleTruncator/index.cjs +5 -17
- package/dist/cjs/components/MiddleTruncator/index.cjs.map +1 -1
- package/dist/cjs/components/Pagination/Pagination.css +7 -0
- package/dist/cjs/components/Pagination/Pagination.module.css.cjs +10 -0
- package/dist/cjs/components/Pagination/Pagination.module.css.cjs.map +1 -0
- package/dist/cjs/components/Pagination/index.cjs +3 -5
- package/dist/cjs/components/Pagination/index.cjs.map +1 -1
- package/dist/cjs/components/Panel/Panel.css +116 -0
- package/dist/cjs/components/Panel/Panel.module.css.cjs +87 -0
- package/dist/cjs/components/Panel/Panel.module.css.cjs.map +1 -0
- package/dist/cjs/components/Panel/index.cjs +85 -35
- package/dist/cjs/components/Panel/index.cjs.map +1 -1
- package/dist/cjs/components/Popover/Popover.css +32 -0
- package/dist/cjs/components/Popover/Popover.module.css.cjs +15 -0
- package/dist/cjs/components/Popover/Popover.module.css.cjs.map +1 -0
- package/dist/cjs/components/Popover/index.cjs +27 -36
- package/dist/cjs/components/Popover/index.cjs.map +1 -1
- package/dist/cjs/components/RadioGroup/RadioGroup.css +99 -0
- package/dist/cjs/components/RadioGroup/RadioGroup.module.css.cjs +18 -0
- package/dist/cjs/components/RadioGroup/RadioGroup.module.css.cjs.map +1 -0
- package/dist/cjs/components/RadioGroup/index.cjs +28 -77
- package/dist/cjs/components/RadioGroup/index.cjs.map +1 -1
- package/dist/cjs/components/Select/MultiSelectValue.cjs +4 -9
- package/dist/cjs/components/Select/MultiSelectValue.cjs.map +1 -1
- package/dist/cjs/components/Select/MultiSelectValue.css +19 -0
- package/dist/cjs/components/Select/MultiSelectValue.module.css.cjs +11 -0
- package/dist/cjs/components/Select/MultiSelectValue.module.css.cjs.map +1 -0
- package/dist/cjs/components/Select/SingleSelectValue.cjs +3 -5
- package/dist/cjs/components/Select/SingleSelectValue.cjs.map +1 -1
- package/dist/cjs/components/Select/SingleSelectValue.css +10 -0
- package/dist/cjs/components/Select/SingleSelectValue.module.css.cjs +10 -0
- package/dist/cjs/components/Select/SingleSelectValue.module.css.cjs.map +1 -0
- package/dist/cjs/components/Select/common/InternalSelect.cjs +18 -23
- package/dist/cjs/components/Select/common/InternalSelect.cjs.map +1 -1
- package/dist/cjs/components/Select/common/SelectComponents.cjs +110 -0
- package/dist/cjs/components/Select/common/SelectComponents.cjs.map +1 -0
- package/dist/cjs/components/Select/common/SelectComponents.css +296 -0
- package/dist/cjs/components/Select/common/SelectComponents.module.css.cjs +31 -0
- package/dist/cjs/components/Select/common/SelectComponents.module.css.cjs.map +1 -0
- package/dist/cjs/components/SplitButton/SplitButton.css +138 -0
- package/dist/cjs/components/SplitButton/SplitButton.module.css.cjs +19 -0
- package/dist/cjs/components/SplitButton/SplitButton.module.css.cjs.map +1 -0
- package/dist/cjs/components/SplitButton/index.cjs +43 -88
- package/dist/cjs/components/SplitButton/index.cjs.map +1 -1
- package/dist/cjs/components/Table/Table.css +375 -0
- package/dist/cjs/components/Table/Table.module.css.cjs +86 -0
- package/dist/cjs/components/Table/Table.module.css.cjs.map +1 -0
- package/dist/cjs/components/Table/index.cjs +132 -214
- package/dist/cjs/components/Table/index.cjs.map +1 -1
- package/dist/cjs/components/Toast/Toast.css +142 -0
- package/dist/cjs/components/Toast/Toast.module.css.cjs +38 -0
- package/dist/cjs/components/Toast/Toast.module.css.cjs.map +1 -0
- package/dist/cjs/components/Toast/index.cjs +43 -96
- package/dist/cjs/components/Toast/index.cjs.map +1 -1
- package/dist/cjs/components/Tooltip/Tooltip.css +17 -0
- package/dist/cjs/components/Tooltip/Tooltip.module.css.cjs +15 -0
- package/dist/cjs/components/Tooltip/Tooltip.module.css.cjs.map +1 -0
- package/dist/cjs/components/Tooltip/index.cjs +12 -24
- package/dist/cjs/components/Tooltip/index.cjs.map +1 -1
- package/dist/cjs/components/VerticalStepper/VerticalStepper.css +302 -0
- package/dist/cjs/components/VerticalStepper/VerticalStepper.module.css.cjs +84 -0
- package/dist/cjs/components/VerticalStepper/VerticalStepper.module.css.cjs.map +1 -0
- package/dist/cjs/components/VerticalStepper/index.cjs +85 -110
- package/dist/cjs/components/VerticalStepper/index.cjs.map +1 -1
- package/dist/esm/click-ui.css +3521 -236
- package/dist/esm/components/Alert/index.js +2 -2
- package/dist/esm/components/Alert/index.js.map +1 -1
- package/dist/esm/components/Assets/Logos/Polaris.js +18 -0
- package/dist/esm/components/Assets/Logos/Polaris.js.map +1 -0
- package/dist/esm/components/Assets/Logos/system/LogosDark.js +2 -0
- package/dist/esm/components/Assets/Logos/system/LogosDark.js.map +1 -1
- package/dist/esm/components/Assets/Logos/system/LogosLight.js +2 -0
- package/dist/esm/components/Assets/Logos/system/LogosLight.js.map +1 -1
- package/dist/esm/components/AutoComplete/AutoComplete.css +97 -0
- package/dist/esm/components/AutoComplete/AutoComplete.module.css.js +14 -0
- package/dist/esm/components/AutoComplete/AutoComplete.module.css.js.map +1 -0
- package/dist/esm/components/AutoComplete/index.js +15 -75
- package/dist/esm/components/AutoComplete/index.js.map +1 -1
- package/dist/esm/components/BigStat/BigStat.css +77 -0
- package/dist/esm/components/BigStat/BigStat.module.css.js +18 -0
- package/dist/esm/components/BigStat/BigStat.module.css.js.map +1 -0
- package/dist/esm/components/BigStat/index.js +60 -52
- package/dist/esm/components/BigStat/index.js.map +1 -1
- package/dist/esm/components/Button/BaseButton.css +40 -0
- package/dist/esm/components/Button/BaseButton.js +11 -32
- package/dist/esm/components/Button/BaseButton.js.map +1 -1
- package/dist/esm/components/Button/BaseButton.module.css.js +6 -0
- package/dist/esm/components/Button/BaseButton.module.css.js.map +1 -0
- package/dist/esm/components/ButtonGroup/index.js +1 -1
- package/dist/esm/components/ButtonGroup/index.js.map +1 -1
- package/dist/esm/components/CardPromotion/CardPromotion.css +52 -0
- package/dist/esm/components/CardPromotion/CardPromotion.module.css.js +13 -0
- package/dist/esm/components/CardPromotion/CardPromotion.module.css.js.map +1 -0
- package/dist/esm/components/CardPromotion/index.js +8 -54
- package/dist/esm/components/CardPromotion/index.js.map +1 -1
- package/dist/esm/components/CardSecondary/CardSecondary.css +99 -0
- package/dist/esm/components/CardSecondary/CardSecondary.module.css.js +25 -0
- package/dist/esm/components/CardSecondary/CardSecondary.module.css.js.map +1 -0
- package/dist/esm/components/CardSecondary/index.js +35 -84
- package/dist/esm/components/CardSecondary/index.js.map +1 -1
- package/dist/esm/components/CodeBlock/CodeBlock.css +48 -0
- package/dist/esm/components/CodeBlock/CodeBlock.module.css.js +14 -0
- package/dist/esm/components/CodeBlock/CodeBlock.module.css.js.map +1 -0
- package/dist/esm/components/CodeBlock/InlineCodeBlock.css +10 -0
- package/dist/esm/components/CodeBlock/InlineCodeBlock.js +7 -14
- package/dist/esm/components/CodeBlock/InlineCodeBlock.js.map +1 -1
- package/dist/esm/components/CodeBlock/InlineCodeBlock.module.css.js +7 -0
- package/dist/esm/components/CodeBlock/InlineCodeBlock.module.css.js.map +1 -0
- package/dist/esm/components/CodeBlock/index.js +20 -51
- package/dist/esm/components/CodeBlock/index.js.map +1 -1
- package/dist/esm/components/CodeBlock/useColorStyle.js +14 -1
- package/dist/esm/components/CodeBlock/useColorStyle.js.map +1 -1
- package/dist/esm/components/ConfirmationDialog/ConfirmationDialog.css +20 -0
- package/dist/esm/components/ConfirmationDialog/ConfirmationDialog.module.css.js +9 -0
- package/dist/esm/components/ConfirmationDialog/ConfirmationDialog.module.css.js.map +1 -0
- package/dist/esm/components/ConfirmationDialog/index.js +6 -11
- package/dist/esm/components/ConfirmationDialog/index.js.map +1 -1
- package/dist/esm/components/ContextMenu/ContextMenu.css +40 -0
- package/dist/esm/components/ContextMenu/ContextMenu.module.css.js +11 -0
- package/dist/esm/components/ContextMenu/ContextMenu.module.css.js.map +1 -0
- package/dist/esm/components/ContextMenu/index.js +34 -48
- package/dist/esm/components/ContextMenu/index.js.map +1 -1
- package/dist/esm/components/CrossButton/CrossButton.css +12 -0
- package/dist/esm/components/CrossButton/CrossButton.module.css.js +6 -0
- package/dist/esm/components/CrossButton/CrossButton.module.css.js.map +1 -0
- package/dist/esm/components/CrossButton/index.js +11 -14
- package/dist/esm/components/CrossButton/index.js.map +1 -1
- package/dist/esm/components/DatePicker/Common.js +1 -1
- package/dist/esm/components/DatePicker/Common.js.map +1 -1
- package/dist/esm/components/DatePicker/DateTimeRangePicker.js +1 -1
- package/dist/esm/components/DatePicker/DateTimeRangePicker.js.map +1 -1
- package/dist/esm/components/Dropdown/Dropdown.css +36 -0
- package/dist/esm/components/Dropdown/Dropdown.module.css.js +9 -0
- package/dist/esm/components/Dropdown/Dropdown.module.css.js.map +1 -0
- package/dist/esm/components/Dropdown/index.js +28 -33
- package/dist/esm/components/Dropdown/index.js.map +1 -1
- package/dist/esm/components/EllipsisContent/EllipsisContent.css +21 -0
- package/dist/esm/components/EllipsisContent/EllipsisContent.module.css.js +6 -0
- package/dist/esm/components/EllipsisContent/EllipsisContent.module.css.js.map +1 -0
- package/dist/esm/components/EllipsisContent/index.js +7 -6
- package/dist/esm/components/EllipsisContent/index.js.map +1 -1
- package/dist/esm/components/EmptyButton/EmptyButton.css +21 -0
- package/dist/esm/components/EmptyButton/EmptyButton.module.css.js +6 -0
- package/dist/esm/components/EmptyButton/EmptyButton.module.css.js.map +1 -0
- package/dist/esm/components/EmptyButton/index.js +10 -4
- package/dist/esm/components/EmptyButton/index.js.map +1 -1
- package/dist/esm/components/FileTabs/FileTabs.css +167 -0
- package/dist/esm/components/FileTabs/FileTabs.module.css.js +26 -0
- package/dist/esm/components/FileTabs/FileTabs.module.css.js.map +1 -0
- package/dist/esm/components/FileTabs/index.js +51 -80
- package/dist/esm/components/FileTabs/index.js.map +1 -1
- package/dist/esm/components/FileUpload/FileMultiUpload.css +8 -0
- package/dist/esm/components/FileUpload/FileMultiUpload.js +3 -9
- package/dist/esm/components/FileUpload/FileMultiUpload.js.map +1 -1
- package/dist/esm/components/FileUpload/FileMultiUpload.module.css.js +6 -0
- package/dist/esm/components/FileUpload/FileMultiUpload.module.css.js.map +1 -0
- package/dist/esm/components/FileUpload/FileUpload.stories-common.css +14 -0
- package/dist/esm/components/FileUpload/FileUploadArea.css +130 -0
- package/dist/esm/components/FileUpload/FileUploadArea.js +87 -64
- package/dist/esm/components/FileUpload/FileUploadArea.js.map +1 -1
- package/dist/esm/components/FileUpload/FileUploadArea.module.css.js +32 -0
- package/dist/esm/components/FileUpload/FileUploadArea.module.css.js.map +1 -0
- package/dist/esm/components/FileUpload/FileUploadItem.css +82 -0
- package/dist/esm/components/FileUpload/FileUploadItem.js +56 -64
- package/dist/esm/components/FileUpload/FileUploadItem.js.map +1 -1
- package/dist/esm/components/FileUpload/FileUploadItem.module.css.js +21 -0
- package/dist/esm/components/FileUpload/FileUploadItem.module.css.js.map +1 -0
- package/dist/esm/components/Flyout/Flyout.css +231 -0
- package/dist/esm/components/Flyout/Flyout.module.css.js +62 -0
- package/dist/esm/components/Flyout/Flyout.module.css.js.map +1 -0
- package/dist/esm/components/Flyout/index.js +149 -127
- package/dist/esm/components/Flyout/index.js.map +1 -1
- package/dist/esm/components/FormContainer/Error.css +4 -0
- package/dist/esm/components/FormContainer/Error.js +8 -9
- package/dist/esm/components/FormContainer/Error.js.map +1 -1
- package/dist/esm/components/FormContainer/Error.module.css.js +7 -0
- package/dist/esm/components/FormContainer/Error.module.css.js.map +1 -0
- package/dist/esm/components/FormContainer/FormElementContainer.css +14 -0
- package/dist/esm/components/FormContainer/FormElementContainer.js +8 -6
- package/dist/esm/components/FormContainer/FormElementContainer.js.map +1 -1
- package/dist/esm/components/FormContainer/FormElementContainer.module.css.js +6 -0
- package/dist/esm/components/FormContainer/FormElementContainer.module.css.js.map +1 -0
- package/dist/esm/components/FormContainer/FormRoot.css +33 -0
- package/dist/esm/components/FormContainer/FormRoot.js +32 -18
- package/dist/esm/components/FormContainer/FormRoot.js.map +1 -1
- package/dist/esm/components/FormContainer/FormRoot.module.css.js +11 -0
- package/dist/esm/components/FormContainer/FormRoot.module.css.js.map +1 -0
- package/dist/esm/components/GenericMenu/GenericMenu.css +176 -0
- package/dist/esm/components/GenericMenu/GenericMenu.module.css.js +18 -0
- package/dist/esm/components/GenericMenu/GenericMenu.module.css.js.map +1 -0
- package/dist/esm/components/GenericMenu/index.js +93 -99
- package/dist/esm/components/GenericMenu/index.js.map +1 -1
- package/dist/esm/components/GridCenter/GridCenter.css +6 -0
- package/dist/esm/components/GridContainer/GridContainer.css +71 -0
- package/dist/esm/components/GridContainer/GridContainer.module.css.js +8 -0
- package/dist/esm/components/GridContainer/GridContainer.module.css.js.map +1 -0
- package/dist/esm/components/GridContainer/index.js +65 -65
- package/dist/esm/components/GridContainer/index.js.map +1 -1
- package/dist/esm/components/HoverCard/index.js +1 -1
- package/dist/esm/components/HoverCard/index.js.map +1 -1
- package/dist/esm/components/IconButton/index.js +2 -1
- package/dist/esm/components/IconButton/index.js.map +1 -1
- package/dist/esm/components/InputWrapper/InputWrapper.css +221 -0
- package/dist/esm/components/InputWrapper/InputWrapper.module.css.js +27 -0
- package/dist/esm/components/InputWrapper/InputWrapper.module.css.js.map +1 -0
- package/dist/esm/components/InputWrapper/index.js +84 -185
- package/dist/esm/components/InputWrapper/index.js.map +1 -1
- package/dist/esm/components/MiddleTruncator/MiddleTruncator.css +22 -0
- package/dist/esm/components/MiddleTruncator/MiddleTruncator.module.css.js +11 -0
- package/dist/esm/components/MiddleTruncator/MiddleTruncator.module.css.js.map +1 -0
- package/dist/esm/components/MiddleTruncator/index.js +5 -17
- package/dist/esm/components/MiddleTruncator/index.js.map +1 -1
- package/dist/esm/components/Pagination/Pagination.css +7 -0
- package/dist/esm/components/Pagination/Pagination.module.css.js +6 -0
- package/dist/esm/components/Pagination/Pagination.module.css.js.map +1 -0
- package/dist/esm/components/Pagination/index.js +3 -5
- package/dist/esm/components/Pagination/index.js.map +1 -1
- package/dist/esm/components/Panel/Panel.css +116 -0
- package/dist/esm/components/Panel/Panel.module.css.js +58 -0
- package/dist/esm/components/Panel/Panel.module.css.js.map +1 -0
- package/dist/esm/components/Panel/index.js +85 -35
- package/dist/esm/components/Panel/index.js.map +1 -1
- package/dist/esm/components/Popover/Popover.css +32 -0
- package/dist/esm/components/Popover/Popover.module.css.js +10 -0
- package/dist/esm/components/Popover/Popover.module.css.js.map +1 -0
- package/dist/esm/components/Popover/index.js +27 -36
- package/dist/esm/components/Popover/index.js.map +1 -1
- package/dist/esm/components/RadioGroup/RadioGroup.css +99 -0
- package/dist/esm/components/RadioGroup/RadioGroup.module.css.js +13 -0
- package/dist/esm/components/RadioGroup/RadioGroup.module.css.js.map +1 -0
- package/dist/esm/components/RadioGroup/index.js +28 -77
- package/dist/esm/components/RadioGroup/index.js.map +1 -1
- package/dist/esm/components/Select/MultiSelectValue.css +19 -0
- package/dist/esm/components/Select/MultiSelectValue.js +4 -9
- package/dist/esm/components/Select/MultiSelectValue.js.map +1 -1
- package/dist/esm/components/Select/MultiSelectValue.module.css.js +7 -0
- package/dist/esm/components/Select/MultiSelectValue.module.css.js.map +1 -0
- package/dist/esm/components/Select/SingleSelectValue.css +10 -0
- package/dist/esm/components/Select/SingleSelectValue.js +3 -5
- package/dist/esm/components/Select/SingleSelectValue.js.map +1 -1
- package/dist/esm/components/Select/SingleSelectValue.module.css.js +6 -0
- package/dist/esm/components/Select/SingleSelectValue.module.css.js.map +1 -0
- package/dist/esm/components/Select/common/InternalSelect.js +4 -9
- package/dist/esm/components/Select/common/InternalSelect.js.map +1 -1
- package/dist/esm/components/Select/common/SelectComponents.css +296 -0
- package/dist/esm/components/Select/common/SelectComponents.js +92 -0
- package/dist/esm/components/Select/common/SelectComponents.js.map +1 -0
- package/dist/esm/components/Select/common/SelectComponents.module.css.js +27 -0
- package/dist/esm/components/Select/common/SelectComponents.module.css.js.map +1 -0
- package/dist/esm/components/SplitButton/SplitButton.css +138 -0
- package/dist/esm/components/SplitButton/SplitButton.module.css.js +15 -0
- package/dist/esm/components/SplitButton/SplitButton.module.css.js.map +1 -0
- package/dist/esm/components/SplitButton/index.js +44 -89
- package/dist/esm/components/SplitButton/index.js.map +1 -1
- package/dist/esm/components/Table/Table.css +375 -0
- package/dist/esm/components/Table/Table.module.css.js +63 -0
- package/dist/esm/components/Table/Table.module.css.js.map +1 -0
- package/dist/esm/components/Table/index.js +132 -214
- package/dist/esm/components/Table/index.js.map +1 -1
- package/dist/esm/components/Toast/Toast.css +142 -0
- package/dist/esm/components/Toast/Toast.module.css.js +26 -0
- package/dist/esm/components/Toast/Toast.module.css.js.map +1 -0
- package/dist/esm/components/Toast/index.js +43 -96
- package/dist/esm/components/Toast/index.js.map +1 -1
- package/dist/esm/components/Tooltip/Tooltip.css +17 -0
- package/dist/esm/components/Tooltip/Tooltip.module.css.js +9 -0
- package/dist/esm/components/Tooltip/Tooltip.module.css.js.map +1 -0
- package/dist/esm/components/Tooltip/index.js +12 -24
- package/dist/esm/components/Tooltip/index.js.map +1 -1
- package/dist/esm/components/VerticalStepper/VerticalStepper.css +302 -0
- package/dist/esm/components/VerticalStepper/VerticalStepper.module.css.js +55 -0
- package/dist/esm/components/VerticalStepper/VerticalStepper.module.css.js.map +1 -0
- package/dist/esm/components/VerticalStepper/index.js +85 -110
- package/dist/esm/components/VerticalStepper/index.js.map +1 -1
- package/dist/types/components/Assets/Logos/Polaris.d.ts +3 -0
- package/dist/types/components/Assets/Logos/system/types.d.ts +1 -1
- package/dist/types/components/AutoComplete/AutoComplete.d.ts +1 -1
- package/dist/types/components/BigStat/BigStat.d.ts +1 -1
- package/dist/types/components/Button/BaseButton.d.ts +2 -1
- package/dist/types/components/CardPromotion/CardPromotion.d.ts +1 -1
- package/dist/types/components/CardSecondary/CardSecondary.d.ts +1 -1
- package/dist/types/components/CodeBlock/CodeBlock.d.ts +1 -1
- package/dist/types/components/CodeBlock/InlineCodeBlock.d.ts +1 -1
- package/dist/types/components/CodeBlock/useColorStyle.d.ts +6 -112
- package/dist/types/components/ConfirmationDialog/ConfirmationDialog.d.ts +1 -1
- package/dist/types/components/ContextMenu/ContextMenu.d.ts +1 -1
- package/dist/types/components/CrossButton/CrossButton.d.ts +2 -3
- package/dist/types/components/Dropdown/Dropdown.d.ts +2 -2
- package/dist/types/components/EmptyButton/EmptyButton.d.ts +2 -1
- package/dist/types/components/FileTabs/FileTabs.d.ts +3 -3
- package/dist/types/components/FileUpload/FileUpload.stories-common.d.ts +4 -1
- package/dist/types/components/Flyout/Flyout.d.ts +8 -6
- package/dist/types/components/Flyout/Flyout.types.d.ts +3 -0
- package/dist/types/components/FormContainer/Error.d.ts +2 -1
- package/dist/types/components/FormContainer/FormElementContainer.d.ts +2 -1
- package/dist/types/components/FormContainer/FormRoot.d.ts +6 -4
- package/dist/types/components/GenericMenu/GenericMenu.d.ts +29 -12
- package/dist/types/components/GridCenter/GridCenter.d.ts +9 -1
- package/dist/types/components/IconButton/IconButton.types.d.ts +3 -0
- package/dist/types/components/InputWrapper/InputWrapper.d.ts +17 -13
- package/dist/types/components/Panel/Panel.d.ts +2 -39
- package/dist/types/components/RadioGroup/RadioGroup.d.ts +2 -2
- package/dist/types/components/Select/common/SelectComponents.d.ts +33 -0
- package/dist/types/components/SplitButton/SplitButton.d.ts +1 -1
- package/dist/types/components/SplitButton/SplitButton.types.d.ts +3 -0
- package/dist/types/components/Toast/Toast.d.ts +1 -1
- package/dist/types/components/Tooltip/Tooltip.d.ts +1 -1
- package/dist/types/components/VerticalStepper/VerticalStepper.d.ts +2 -2
- package/package.json +1 -1
- package/dist/cjs/components/Select/common/SelectStyled.cjs +0 -194
- package/dist/cjs/components/Select/common/SelectStyled.cjs.map +0 -1
- package/dist/esm/components/Select/common/SelectStyled.js +0 -176
- package/dist/esm/components/Select/common/SelectStyled.js.map +0 -1
- package/dist/types/components/Select/common/SelectStyled.d.ts +0 -34
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
/* Kept at zero specificity via :where() so that downstream styled-components
|
|
2
|
+
overrides on a styled(EmptyButton) (e.g. CrossButton overriding background and
|
|
3
|
+
padding, the Popover/CodeBlock close/copy buttons overriding color and padding)
|
|
4
|
+
win without needing a specificity hack — EmptyButton is a CSS Module, whose
|
|
5
|
+
rules otherwise beat equal-specificity styled-components by source order. */
|
|
6
|
+
:where(.empty-button__1ynA8) {
|
|
7
|
+
padding: 0;
|
|
8
|
+
border: 0;
|
|
9
|
+
background: transparent;
|
|
10
|
+
color: inherit;
|
|
11
|
+
font: inherit;
|
|
12
|
+
outline: none;
|
|
13
|
+
cursor: pointer;
|
|
14
|
+
}
|
|
15
|
+
|
|
16
|
+
/* Also scoped with :where() so the disabled cursor stays at zero specificity
|
|
17
|
+
and a downstream styled(EmptyButton) `&:disabled` override wins naturally,
|
|
18
|
+
rather than tying on specificity and losing to the CSS Module by source order. */
|
|
19
|
+
:where(.empty-button__1ynA8):disabled {
|
|
20
|
+
cursor: not-allowed;
|
|
21
|
+
}
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
'use strict';
|
|
2
|
+
|
|
3
|
+
Object.defineProperties(exports, { __esModule: { value: true }, [Symbol.toStringTag]: { value: 'Module' } });
|
|
4
|
+
|
|
5
|
+
const styles = {
|
|
6
|
+
"empty-button": "empty-button__1ynA8"
|
|
7
|
+
};
|
|
8
|
+
|
|
9
|
+
exports.default = styles;
|
|
10
|
+
//# sourceMappingURL=EmptyButton.module.css.cjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"EmptyButton.module.css.cjs","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;;;;;;;"}
|
|
@@ -1,12 +1,18 @@
|
|
|
1
|
+
require("./EmptyButton.css");
|
|
1
2
|
'use strict';
|
|
2
3
|
|
|
3
4
|
Object.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });
|
|
4
5
|
|
|
5
|
-
const
|
|
6
|
+
const jsxRuntime = require('react/jsx-runtime');
|
|
7
|
+
const react = require('react');
|
|
8
|
+
const cva = require('../../lib/cva.cjs');
|
|
9
|
+
const EmptyButton_module = require('./EmptyButton.module.css.cjs');
|
|
6
10
|
|
|
7
|
-
const EmptyButton =
|
|
8
|
-
|
|
9
|
-
|
|
11
|
+
const EmptyButton = react.forwardRef(({
|
|
12
|
+
className,
|
|
13
|
+
...props
|
|
14
|
+
}, ref) => /* @__PURE__ */ jsxRuntime.jsx("button", { ref, ...props, className: cva.cn(EmptyButton_module.default["empty-button"], className) }));
|
|
15
|
+
EmptyButton.displayName = "EmptyButton";
|
|
10
16
|
|
|
11
17
|
exports.EmptyButton = EmptyButton;
|
|
12
18
|
//# sourceMappingURL=index.cjs.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.cjs","sources":["../../../../src/components/EmptyButton/EmptyButton.tsx"],"sourcesContent":["import {
|
|
1
|
+
{"version":3,"file":"index.cjs","sources":["../../../../src/components/EmptyButton/EmptyButton.tsx"],"sourcesContent":["import { ButtonHTMLAttributes, forwardRef } from 'react';\nimport { cn } from '@/lib/cva';\nimport styles from './EmptyButton.module.css';\n\nexport const EmptyButton = forwardRef<\n HTMLButtonElement,\n ButtonHTMLAttributes<HTMLButtonElement>\n>(({ className, ...props }, ref) => (\n <button\n ref={ref}\n {...props}\n className={cn(styles['empty-button'], className)}\n />\n));\n\nEmptyButton.displayName = 'EmptyButton';\n"],"names":["EmptyButton","forwardRef","className","props","ref","jsx","cn","styles","displayName"],"mappings":";;;;;;;;;AAIO,MAAMA,WAAAA,GAAcC,iBAGzB,CAAC;AAAA,EAAEC,SAAAA;AAAAA,EAAW,GAAGC;AAAM,CAAA,EAAGC,GAAAA,qBAC1BC,cAAA,CAAC,QAAA,EAAA,EACC,GAAA,KACIF,KAAAA,EACJ,SAAA,EAAWG,MAAAA,CAAGC,0BAAAA,CAAO,cAAc,CAAA,EAAGL,SAAS,IAElD;AAEDF,WAAAA,CAAYQ,WAAAA,GAAc,aAAA;;;;"}
|
|
@@ -0,0 +1,167 @@
|
|
|
1
|
+
/* stylelint-disable custom-property-pattern -- design tokens use camelCase (e.g. fileTabs) */
|
|
2
|
+
.tabs__jY99b {
|
|
3
|
+
display: flex;
|
|
4
|
+
position: relative;
|
|
5
|
+
max-width: var(--file-tabs-count-width);
|
|
6
|
+
overflow: auto;
|
|
7
|
+
/* stylelint-disable plugin/no-unsupported-browser-features, declaration-property-value-no-unknown -- preserves the styled-components original verbatim; the invalid scrollbar-width value is ignored by browsers and the scrollbar is hidden via the ::-webkit-scrollbar rule below */
|
|
8
|
+
overscroll-behavior: none;
|
|
9
|
+
scrollbar-width: 0;
|
|
10
|
+
/* stylelint-enable plugin/no-unsupported-browser-features, declaration-property-value-no-unknown */
|
|
11
|
+
}
|
|
12
|
+
|
|
13
|
+
.tabs__jY99b::-webkit-scrollbar {
|
|
14
|
+
height: 0;
|
|
15
|
+
}
|
|
16
|
+
|
|
17
|
+
.tabs-sortable__7e-D1 {
|
|
18
|
+
display: flex;
|
|
19
|
+
}
|
|
20
|
+
|
|
21
|
+
.tabs-sortable__7e-D1 > div {
|
|
22
|
+
width: clamp(100px, 100%, 200px);
|
|
23
|
+
min-width: 100px;
|
|
24
|
+
height: 100%;
|
|
25
|
+
outline: none;
|
|
26
|
+
}
|
|
27
|
+
|
|
28
|
+
.tabs-sortable__7e-D1 > div.sortable-ghost__1JlRB {
|
|
29
|
+
opacity: 0;
|
|
30
|
+
}
|
|
31
|
+
|
|
32
|
+
.tab__Fud6d {
|
|
33
|
+
display: grid;
|
|
34
|
+
box-sizing: border-box;
|
|
35
|
+
max-width: 100%;
|
|
36
|
+
/* stylelint-disable plugin/no-unsupported-browser-features, declaration-property-value-no-unknown -- the original rule used this same width fallback chain (100% → -webkit-fill-available → fill-available → stretch) so the tab fills the available inline space */
|
|
37
|
+
max-width: -webkit-fill-available;
|
|
38
|
+
max-width: fill-available;
|
|
39
|
+
max-width: stretch;
|
|
40
|
+
/* stylelint-enable plugin/no-unsupported-browser-features, declaration-property-value-no-unknown */
|
|
41
|
+
height: 100%;
|
|
42
|
+
max-height: 100%;
|
|
43
|
+
padding: var(--click-tabs-fileTabs-space-y) var(--click-tabs-fileTabs-space-x);
|
|
44
|
+
justify-content: flex-start;
|
|
45
|
+
align-items: center;
|
|
46
|
+
gap: var(--click-tabs-fileTabs-space-gap);
|
|
47
|
+
grid-template-columns: 1fr;
|
|
48
|
+
border: none;
|
|
49
|
+
border-right: 1px solid var(--click-tabs-fileTabs-color-stroke-default);
|
|
50
|
+
border-radius: var(--click-tabs-fileTabs-radii-all);
|
|
51
|
+
background: var(--click-tabs-fileTabs-color-background-default);
|
|
52
|
+
color: var(--click-tabs-fileTabs-color-text-default);
|
|
53
|
+
font: var(--click-tabs-fileTabs-typography-label-default);
|
|
54
|
+
outline: none;
|
|
55
|
+
cursor: pointer;
|
|
56
|
+
}
|
|
57
|
+
|
|
58
|
+
.tab__Fud6d svg,
|
|
59
|
+
.tab__Fud6d [data-indicator] {
|
|
60
|
+
width: var(--click-tabs-fileTabs-icon-size-width);
|
|
61
|
+
height: var(--click-tabs-fileTabs-icon-size-height);
|
|
62
|
+
}
|
|
63
|
+
|
|
64
|
+
.tab__Fud6d [data-type='close'] {
|
|
65
|
+
display: none;
|
|
66
|
+
}
|
|
67
|
+
|
|
68
|
+
.tab__Fud6d [data-indicator] {
|
|
69
|
+
display: block;
|
|
70
|
+
}
|
|
71
|
+
|
|
72
|
+
.tab__Fud6d:hover [data-type='close'] {
|
|
73
|
+
display: block;
|
|
74
|
+
}
|
|
75
|
+
|
|
76
|
+
.tab__Fud6d:hover [data-indicator] {
|
|
77
|
+
display: none;
|
|
78
|
+
}
|
|
79
|
+
|
|
80
|
+
.tab_active__nqwS6 {
|
|
81
|
+
border-right: 1px solid var(--click-tabs-fileTabs-color-stroke-active);
|
|
82
|
+
background: var(--click-tabs-fileTabs-color-background-active);
|
|
83
|
+
color: var(--click-tabs-fileTabs-color-text-active);
|
|
84
|
+
font: var(--click-tabs-fileTabs-typography-label-active);
|
|
85
|
+
}
|
|
86
|
+
|
|
87
|
+
.tab_inactive__tflkU:hover {
|
|
88
|
+
border-right: 1px solid var(--click-tabs-fileTabs-color-stroke-hover);
|
|
89
|
+
background: var(--click-tabs-fileTabs-color-background-hover);
|
|
90
|
+
color: var(--click-tabs-fileTabs-color-text-hover);
|
|
91
|
+
font: var(--click-tabs-fileTabs-typography-label-hover);
|
|
92
|
+
}
|
|
93
|
+
|
|
94
|
+
.tab_full-width__sU4rf {
|
|
95
|
+
width: 100%;
|
|
96
|
+
}
|
|
97
|
+
|
|
98
|
+
.tab_fixed__S0Bwz {
|
|
99
|
+
width: auto;
|
|
100
|
+
}
|
|
101
|
+
|
|
102
|
+
.tab_preview__FR-Q6 {
|
|
103
|
+
font-style: italic;
|
|
104
|
+
}
|
|
105
|
+
|
|
106
|
+
.tab_dismissable__ud86m {
|
|
107
|
+
grid-template-columns: 1fr var(--click-tabs-fileTabs-icon-size-width);
|
|
108
|
+
}
|
|
109
|
+
|
|
110
|
+
.indicator__ZD0YM {
|
|
111
|
+
position: relative;
|
|
112
|
+
}
|
|
113
|
+
|
|
114
|
+
.indicator__ZD0YM::after {
|
|
115
|
+
content: '';
|
|
116
|
+
position: absolute;
|
|
117
|
+
top: 0.25rem;
|
|
118
|
+
left: 0.25rem;
|
|
119
|
+
width: 0.5rem;
|
|
120
|
+
height: 0.5rem;
|
|
121
|
+
border-radius: 50%;
|
|
122
|
+
background: transparent;
|
|
123
|
+
}
|
|
124
|
+
|
|
125
|
+
.indicator__ZD0YM[data-indicator='success']::after {
|
|
126
|
+
background: var(--click-alert-color-text-success);
|
|
127
|
+
}
|
|
128
|
+
|
|
129
|
+
.indicator__ZD0YM[data-indicator='neutral']::after {
|
|
130
|
+
background: var(--click-alert-color-text-neutral);
|
|
131
|
+
}
|
|
132
|
+
|
|
133
|
+
.indicator__ZD0YM[data-indicator='danger']::after {
|
|
134
|
+
background: var(--click-alert-color-text-danger);
|
|
135
|
+
}
|
|
136
|
+
|
|
137
|
+
.indicator__ZD0YM[data-indicator='warning']::after {
|
|
138
|
+
background: var(--click-alert-color-text-warning);
|
|
139
|
+
}
|
|
140
|
+
|
|
141
|
+
.indicator__ZD0YM[data-indicator='info']::after {
|
|
142
|
+
background: var(--click-alert-color-text-info);
|
|
143
|
+
}
|
|
144
|
+
|
|
145
|
+
.tab-content__JX6iV {
|
|
146
|
+
display: flex;
|
|
147
|
+
overflow: hidden;
|
|
148
|
+
flex-wrap: nowrap;
|
|
149
|
+
justify-content: flex-start;
|
|
150
|
+
align-items: center;
|
|
151
|
+
gap: var(--click-tabs-fileTabs-space-gap);
|
|
152
|
+
}
|
|
153
|
+
|
|
154
|
+
.tab-content-text__zXnlM {
|
|
155
|
+
display: inline-block;
|
|
156
|
+
overflow: hidden;
|
|
157
|
+
white-space: nowrap;
|
|
158
|
+
text-overflow: ellipsis;
|
|
159
|
+
}
|
|
160
|
+
|
|
161
|
+
.empty-button__czm-t {
|
|
162
|
+
padding: 0;
|
|
163
|
+
}
|
|
164
|
+
|
|
165
|
+
.empty-button__czm-t:hover {
|
|
166
|
+
background: var(--click-tabs-fileTabs-color-closeButton-background-hover);
|
|
167
|
+
}
|
|
@@ -0,0 +1,38 @@
|
|
|
1
|
+
'use strict';
|
|
2
|
+
|
|
3
|
+
Object.defineProperties(exports, { __esModule: { value: true }, [Symbol.toStringTag]: { value: 'Module' } });
|
|
4
|
+
|
|
5
|
+
const tabs = "tabs__jY99b";
|
|
6
|
+
const tab = "tab__Fud6d";
|
|
7
|
+
const tab_active = "tab_active__nqwS6";
|
|
8
|
+
const tab_inactive = "tab_inactive__tflkU";
|
|
9
|
+
const tab_fixed = "tab_fixed__S0Bwz";
|
|
10
|
+
const tab_preview = "tab_preview__FR-Q6";
|
|
11
|
+
const tab_dismissable = "tab_dismissable__ud86m";
|
|
12
|
+
const indicator = "indicator__ZD0YM";
|
|
13
|
+
const styles = {
|
|
14
|
+
tabs: tabs,
|
|
15
|
+
"tabs-sortable": "tabs-sortable__7e-D1",
|
|
16
|
+
tab: tab,
|
|
17
|
+
tab_active: tab_active,
|
|
18
|
+
tab_inactive: tab_inactive,
|
|
19
|
+
"tab_full-width": "tab_full-width__sU4rf",
|
|
20
|
+
tab_fixed: tab_fixed,
|
|
21
|
+
tab_preview: tab_preview,
|
|
22
|
+
tab_dismissable: tab_dismissable,
|
|
23
|
+
indicator: indicator,
|
|
24
|
+
"tab-content": "tab-content__JX6iV",
|
|
25
|
+
"tab-content-text": "tab-content-text__zXnlM",
|
|
26
|
+
"empty-button": "empty-button__czm-t"
|
|
27
|
+
};
|
|
28
|
+
|
|
29
|
+
exports.default = styles;
|
|
30
|
+
exports.indicator = indicator;
|
|
31
|
+
exports.tab = tab;
|
|
32
|
+
exports.tab_active = tab_active;
|
|
33
|
+
exports.tab_dismissable = tab_dismissable;
|
|
34
|
+
exports.tab_fixed = tab_fixed;
|
|
35
|
+
exports.tab_inactive = tab_inactive;
|
|
36
|
+
exports.tab_preview = tab_preview;
|
|
37
|
+
exports.tabs = tabs;
|
|
38
|
+
//# sourceMappingURL=FileTabs.module.css.cjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"FileTabs.module.css.cjs","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;"}
|
|
@@ -1,13 +1,16 @@
|
|
|
1
|
+
require("./FileTabs.css");
|
|
1
2
|
'use strict';
|
|
2
3
|
|
|
3
4
|
Object.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });
|
|
4
5
|
|
|
5
6
|
const jsxRuntime = require('react/jsx-runtime');
|
|
6
7
|
const react = require('react');
|
|
7
|
-
const
|
|
8
|
+
const cva = require('../../lib/cva.cjs');
|
|
9
|
+
const FileTabs_module = require('./FileTabs.module.css.cjs');
|
|
8
10
|
const ReactSortableModule = require('react-sortablejs/dist/index.js');
|
|
9
11
|
const Icon = require('../Icon/index.cjs');
|
|
10
12
|
const IconButton = require('../IconButton/index.cjs');
|
|
13
|
+
const classVarianceAuthority = require('class-variance-authority');
|
|
11
14
|
|
|
12
15
|
const _interopDefault = e => e && e.__esModule ? e : { default: e };
|
|
13
16
|
|
|
@@ -16,14 +19,6 @@ const ReactSortableModule__default = /*#__PURE__*/_interopDefault(ReactSortableM
|
|
|
16
19
|
const {
|
|
17
20
|
ReactSortable
|
|
18
21
|
} = ReactSortableModule__default.default;
|
|
19
|
-
const TabsContainer = styledComponents.styled.div.withConfig({
|
|
20
|
-
componentId: "sc-137ymle-0"
|
|
21
|
-
})(["display:flex;position:relative;overflow:auto;overscroll-behavior:none;scrollbar-width:0;max-width:", ";&::-webkit-scrollbar{height:0;}"], ({
|
|
22
|
-
$count
|
|
23
|
-
}) => `${$count * 200}px`);
|
|
24
|
-
const TabsSortableContainer = styledComponents.styled(ReactSortable).withConfig({
|
|
25
|
-
componentId: "sc-137ymle-1"
|
|
26
|
-
})(["display:flex;& > div{height:100%;outline:none;min-width:100px;width:clamp(100px,100%,200px);&.sortable-ghost{opacity:0;}}"]);
|
|
27
22
|
const TabContext = react.createContext({
|
|
28
23
|
selectedIndex: void 0,
|
|
29
24
|
onClose: () => null
|
|
@@ -46,6 +41,7 @@ const FileTabs = ({
|
|
|
46
41
|
onEnd,
|
|
47
42
|
direction,
|
|
48
43
|
group,
|
|
44
|
+
className,
|
|
49
45
|
...props
|
|
50
46
|
}) => {
|
|
51
47
|
const ref = react.useRef(null);
|
|
@@ -76,10 +72,12 @@ const FileTabs = ({
|
|
|
76
72
|
ref.current.scrollLeft += evt.deltaY;
|
|
77
73
|
}
|
|
78
74
|
};
|
|
79
|
-
return /* @__PURE__ */ jsxRuntime.jsx(TabContext.Provider, { value, children: /* @__PURE__ */ jsxRuntime.jsx(
|
|
75
|
+
return /* @__PURE__ */ jsxRuntime.jsx(TabContext.Provider, { value, children: /* @__PURE__ */ jsxRuntime.jsx("div", { ref, onWheel, role: "tablist", onScroll: (e) => {
|
|
80
76
|
e.preventDefault();
|
|
81
77
|
e.stopPropagation();
|
|
82
|
-
},
|
|
78
|
+
}, className: FileTabs_module.default.tabs, style: {
|
|
79
|
+
"--file-tabs-count-width": `${(listProp ?? list).length * 200}px`
|
|
80
|
+
}, children: /* @__PURE__ */ jsxRuntime.jsx(ReactSortable, { direction: direction ?? "horizontal", group: group ?? "tabbar", list: listProp ?? list, setList: setListProp ?? setList, onEnd: (evt, sortable, store) => {
|
|
83
81
|
const {
|
|
84
82
|
newDraggableIndex,
|
|
85
83
|
oldDraggableIndex
|
|
@@ -90,70 +88,33 @@ const FileTabs = ({
|
|
|
90
88
|
if (typeof onEnd === "function") {
|
|
91
89
|
onEnd(evt, sortable, store);
|
|
92
90
|
}
|
|
93
|
-
}, revertOnSpill: true, ...props, children: react.Children.map(children, (child, index) => /* @__PURE__ */ jsxRuntime.jsx("div", { tabIndex: index + 1, role: "tab", onClick: onSelect(index), children: child }, `tab-element-${index}`)) }) }) });
|
|
91
|
+
}, revertOnSpill: true, ...props, className: cva.cn(FileTabs_module.default["tabs-sortable"], className), children: react.Children.map(children, (child, index) => /* @__PURE__ */ jsxRuntime.jsx("div", { tabIndex: index + 1, role: "tab", onClick: onSelect(index), children: child }, `tab-element-${index}`)) }) }) });
|
|
94
92
|
};
|
|
95
|
-
const
|
|
96
|
-
|
|
97
|
-
|
|
98
|
-
|
|
99
|
-
|
|
100
|
-
|
|
101
|
-
|
|
102
|
-
|
|
103
|
-
|
|
104
|
-
|
|
105
|
-
|
|
106
|
-
|
|
107
|
-
|
|
108
|
-
|
|
109
|
-
|
|
110
|
-
|
|
111
|
-
|
|
112
|
-
font: ${theme.click.tabs.fileTabs.typography.label.default};
|
|
113
|
-
svg,
|
|
114
|
-
[data-indicator] {
|
|
115
|
-
height: ${theme.click.tabs.fileTabs.icon.size.height};
|
|
116
|
-
width: ${theme.click.tabs.fileTabs.icon.size.width};
|
|
93
|
+
const tabVariants = classVarianceAuthority.cva(FileTabs_module.default.tab, {
|
|
94
|
+
variants: {
|
|
95
|
+
active: {
|
|
96
|
+
true: FileTabs_module.default.tab_active,
|
|
97
|
+
false: FileTabs_module.default.tab_inactive
|
|
98
|
+
},
|
|
99
|
+
fixed: {
|
|
100
|
+
true: FileTabs_module.default.tab_fixed,
|
|
101
|
+
false: FileTabs_module.default["tab_full-width"]
|
|
102
|
+
},
|
|
103
|
+
preview: {
|
|
104
|
+
true: FileTabs_module.default.tab_preview,
|
|
105
|
+
false: ""
|
|
106
|
+
},
|
|
107
|
+
dismissable: {
|
|
108
|
+
true: FileTabs_module.default.tab_dismissable,
|
|
109
|
+
false: ""
|
|
117
110
|
}
|
|
118
|
-
|
|
119
|
-
|
|
120
|
-
|
|
121
|
-
|
|
122
|
-
|
|
123
|
-
|
|
124
|
-
|
|
125
|
-
background: ${theme.click.tabs.fileTabs.color.background.hover};
|
|
126
|
-
color: ${theme.click.tabs.fileTabs.color.text.hover};
|
|
127
|
-
font: ${theme.click.tabs.fileTabs.typography.label.hover};
|
|
128
|
-
border-right: 1px solid ${theme.click.tabs.fileTabs.color.stroke.hover};
|
|
129
|
-
}
|
|
130
|
-
`}
|
|
131
|
-
${$preview === true ? "font-style: italic;" : ""}
|
|
132
|
-
`);
|
|
133
|
-
const Indicator = styledComponents.styled.div.withConfig({
|
|
134
|
-
componentId: "sc-137ymle-3"
|
|
135
|
-
})(["position:relative;&::after{position:absolute;left:0.25rem;top:0.25rem;content:'';width:0.5rem;height:0.5rem;", "}"], ({
|
|
136
|
-
theme,
|
|
137
|
-
$status
|
|
138
|
-
}) => `
|
|
139
|
-
background: ${$status === "default" ? "transparent" : theme.click.alert.color.text[$status]};
|
|
140
|
-
border-radius: 50%;
|
|
141
|
-
`);
|
|
142
|
-
const TabContent = styledComponents.styled.div.withConfig({
|
|
143
|
-
componentId: "sc-137ymle-4"
|
|
144
|
-
})(["display:flex;justify-content:flex-start;align-items:center;flex-wrap:nowrap;overflow:hidden;gap:", ";"], ({
|
|
145
|
-
theme
|
|
146
|
-
}) => theme.click.tabs.fileTabs.space.gap);
|
|
147
|
-
const TabContentText = styledComponents.styled.span.withConfig({
|
|
148
|
-
componentId: "sc-137ymle-5"
|
|
149
|
-
})(["display:inline-block;text-overflow:ellipsis;white-space:nowrap;overflow:hidden;"]);
|
|
150
|
-
const EmptyButton = styledComponents.styled.button.withConfig({
|
|
151
|
-
componentId: "sc-137ymle-6"
|
|
152
|
-
})(["padding:0;", ";&:hover{background:", ";}"], ({
|
|
153
|
-
theme
|
|
154
|
-
}) => theme.click.tabs.fileTabs.color.closeButton.background.default, ({
|
|
155
|
-
theme
|
|
156
|
-
}) => theme.click.tabs.fileTabs.color.closeButton.background.hover);
|
|
111
|
+
},
|
|
112
|
+
defaultVariants: {
|
|
113
|
+
fixed: false,
|
|
114
|
+
preview: false,
|
|
115
|
+
dismissable: false
|
|
116
|
+
}
|
|
117
|
+
});
|
|
157
118
|
const Tab = ({
|
|
158
119
|
text,
|
|
159
120
|
index,
|
|
@@ -162,6 +123,7 @@ const Tab = ({
|
|
|
162
123
|
status = "default",
|
|
163
124
|
testId,
|
|
164
125
|
preview,
|
|
126
|
+
className,
|
|
165
127
|
...props
|
|
166
128
|
}) => {
|
|
167
129
|
const {
|
|
@@ -183,13 +145,17 @@ const Tab = ({
|
|
|
183
145
|
e.stopPropagation();
|
|
184
146
|
onCloseProp(index);
|
|
185
147
|
};
|
|
186
|
-
return /* @__PURE__ */ jsxRuntime.jsxs(
|
|
187
|
-
|
|
148
|
+
return /* @__PURE__ */ jsxRuntime.jsxs("div", { onMouseDown, "data-testid": testId ? `${testId}-${index}` : void 0, ...props, className: cva.cn(tabVariants({
|
|
149
|
+
active: selectedIndex === index,
|
|
150
|
+
preview,
|
|
151
|
+
dismissable: true
|
|
152
|
+
}), className), children: [
|
|
153
|
+
/* @__PURE__ */ jsxRuntime.jsxs("div", { className: FileTabs_module.default["tab-content"], children: [
|
|
188
154
|
typeof icon === "string" ? /* @__PURE__ */ jsxRuntime.jsx(Icon.Icon, { name: icon }) : icon,
|
|
189
|
-
/* @__PURE__ */ jsxRuntime.jsx(
|
|
155
|
+
/* @__PURE__ */ jsxRuntime.jsx("span", { className: FileTabs_module.default["tab-content-text"], children: text })
|
|
190
156
|
] }),
|
|
191
|
-
/* @__PURE__ */ jsxRuntime.jsx(
|
|
192
|
-
/* @__PURE__ */ jsxRuntime.jsx(
|
|
157
|
+
/* @__PURE__ */ jsxRuntime.jsx(IconButton.IconButton, { className: FileTabs_module.default["empty-button"], htmlType: "button", icon: "cross", onClick: onClose, "data-type": "close", "data-testid": testId ? `${testId}-${index}-close` : void 0 }),
|
|
158
|
+
/* @__PURE__ */ jsxRuntime.jsx("div", { className: FileTabs_module.default.indicator, "data-indicator": status, "data-testid": testId ? `${testId}-${index}-status` : void 0 })
|
|
193
159
|
] });
|
|
194
160
|
};
|
|
195
161
|
Tab.displayName = "FileTab";
|
|
@@ -199,11 +165,16 @@ const FileTabElement = ({
|
|
|
199
165
|
children,
|
|
200
166
|
active = false,
|
|
201
167
|
preview,
|
|
168
|
+
className,
|
|
202
169
|
...props
|
|
203
170
|
}) => {
|
|
204
|
-
return /* @__PURE__ */ jsxRuntime.jsxs(
|
|
171
|
+
return /* @__PURE__ */ jsxRuntime.jsxs("div", { ...props, className: cva.cn(tabVariants({
|
|
172
|
+
active,
|
|
173
|
+
preview,
|
|
174
|
+
fixed: true
|
|
175
|
+
}), className), children: [
|
|
205
176
|
typeof icon === "string" ? /* @__PURE__ */ jsxRuntime.jsx(Icon.Icon, { name: icon }) : icon,
|
|
206
|
-
children && /* @__PURE__ */ jsxRuntime.jsx(
|
|
177
|
+
children && /* @__PURE__ */ jsxRuntime.jsx("span", { className: FileTabs_module.default["tab-content-text"], children })
|
|
207
178
|
] });
|
|
208
179
|
};
|
|
209
180
|
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.cjs","sources":["../../../../src/components/FileTabs/FileTabs.tsx"],"sourcesContent":["import {\n HTMLAttributes,\n createContext,\n useContext,\n ReactElement,\n Children,\n useState,\n MouseEvent,\n useEffect,\n ReactNode,\n WheelEvent,\n useRef,\n} from 'react';\nimport { styled } from 'styled-components';\nimport { Icon } from '@/components/Icon';\nimport { IconButton } from '@/components/IconButton';\nimport type { IconName } from '@/components/Icon/Icon.types';\n\n// TODO: Check if react-sortablejs has ESM version\nimport ReactSortableModule from 'react-sortablejs/dist/index.js';\nimport type {\n ItemInterface,\n Sortable,\n Store,\n ReactSortableProps,\n} from 'react-sortablejs';\nconst { ReactSortable } = ReactSortableModule;\n\nexport type FileTabStatusType =\n | 'default'\n | 'success'\n | 'neutral'\n | 'danger'\n | 'warning'\n | 'info';\n\nconst TabsContainer = styled.div<{ $count: number }>`\n display: flex;\n position: relative;\n overflow: auto;\n overscroll-behavior: none;\n scrollbar-width: 0;\n max-width: ${({ $count }) => `${$count * 200}px`};\n &::-webkit-scrollbar {\n height: 0;\n }\n`;\n\nconst TabsSortableContainer = styled(ReactSortable)`\n display: flex;\n & > div {\n height: 100%;\n outline: none;\n min-width: 100px;\n width: clamp(100px, 100%, 200px);\n &.sortable-ghost {\n opacity: 0;\n }\n }\n`;\n\ninterface ContextProps {\n selectedIndex?: number;\n onClose: (index: number) => void;\n}\n\nexport const TabContext = createContext<ContextProps>({\n selectedIndex: undefined,\n onClose: () => null,\n});\n\nexport interface FileTabProps extends Omit<HTMLAttributes<HTMLDivElement>, 'children'> {\n /** Callback when the tab is closed */\n onClose?: () => void;\n /** Index of the tab in the list */\n index: number;\n /** Status indicator for the tab */\n status?: FileTabStatusType;\n /** Icon to display in the tab */\n icon?: IconName | ReactNode;\n /** Text to display in the tab */\n text: string;\n /** Test ID for testing */\n testId?: string;\n /** Whether the tab is in preview mode (italic text) */\n preview?: boolean;\n}\nexport interface FileTabsProps extends Omit<\n ReactSortableProps<ItemInterface>,\n 'onSelect' | 'list' | 'setList'\n> {\n /** Index of the currently selected tab */\n selectedIndex?: number;\n /** The tab elements to render */\n children: ReactElement<FileTabProps> | ReactElement<FileTabProps>[];\n /** Callback when a tab is reordered via drag and drop */\n onReorderTab: (sourcePosition: number, destinationPosition: number) => void;\n /** Callback when a tab is closed */\n onClose: (index: number) => void;\n /** Callback when a tab is selected */\n onSelect: (index: number) => void;\n /** List of items for sortable functionality */\n list?: ItemInterface[];\n /** Setter for the sortable list */\n setList?: (newState: ItemInterface[], sortable: Sortable | null, store: Store) => void;\n}\n\nconst useSelect = () => {\n const result = useContext(TabContext);\n if (!result) {\n throw new Error('Context used outside of its Provider!');\n }\n return result;\n};\n\nexport const FileTabs = ({\n selectedIndex,\n children,\n onReorderTab,\n onClose: onCloseProp,\n onSelect: onSelectProp,\n list: listProp,\n setList: setListProp,\n onEnd,\n direction,\n group,\n ...props\n}: FileTabsProps) => {\n const ref = useRef<HTMLDivElement>(null);\n const [list, setList] = useState<ItemInterface[]>(\n Children.map(children, (_, index) => ({\n id: `tab-element-${index}`,\n }))\n );\n useEffect(() => {\n setList(\n Children.map(children, (_, index) => ({\n id: `tab-element-${index}`,\n }))\n );\n }, [children]);\n\n const onClose = (index: number) => {\n onCloseProp(index);\n setList(list => {\n list.splice(index, 1);\n return [...list];\n });\n };\n\n const onSelect = (index: number) => () => {\n onSelectProp(index);\n };\n\n const value = {\n selectedIndex,\n onClose,\n };\n\n const onWheel = (evt: WheelEvent<HTMLDivElement>) => {\n if (ref.current) {\n ref.current.scrollLeft += evt.deltaY;\n }\n };\n return (\n <TabContext.Provider value={value}>\n <TabsContainer\n ref={ref}\n onWheel={onWheel}\n role=\"tablist\"\n onScroll={e => {\n e.preventDefault();\n e.stopPropagation();\n }}\n $count={(listProp ?? list).length}\n >\n <TabsSortableContainer\n direction={direction ?? 'horizontal'}\n group={group ?? 'tabbar'}\n list={listProp ?? list}\n setList={setListProp ?? setList}\n onEnd={(evt, sortable, store) => {\n const { newDraggableIndex, oldDraggableIndex } = evt;\n if (\n typeof newDraggableIndex === 'number' &&\n typeof oldDraggableIndex === 'number' &&\n oldDraggableIndex !== newDraggableIndex\n ) {\n onReorderTab(oldDraggableIndex, newDraggableIndex);\n }\n if (typeof onEnd === 'function') {\n onEnd(evt, sortable, store);\n }\n }}\n revertOnSpill\n {...props}\n >\n {Children.map(children, (child, index) => (\n <div\n tabIndex={index + 1}\n role=\"tab\"\n onClick={onSelect(index)}\n key={`tab-element-${index}`}\n >\n {child}\n </div>\n ))}\n </TabsSortableContainer>\n </TabsContainer>\n </TabContext.Provider>\n );\n};\n\nconst TabElement = styled.div<{\n $active: boolean;\n $preview?: boolean;\n $dismissable: boolean;\n $fixedTabElement?: boolean;\n}>`\n display: grid;\n justify-content: flex-start;\n align-items: center;\n outline: none;\n max-width: 100%;\n max-width: -webkit-fill-available;\n max-width: fill-available;\n max-width: stretch;\n border: none;\n cursor: pointer;\n height: 100%;\n max-height: 100%;\n box-sizing: border-box;\n ${({ theme, $active, $preview, $dismissable, $fixedTabElement }) => `\n width:${$fixedTabElement ? 'auto' : '100%'};\n grid-template-columns: 1fr ${\n $dismissable ? theme.click.tabs.fileTabs.icon.size.width : ''\n };\n padding: ${theme.click.tabs.fileTabs.space.y} ${theme.click.tabs.fileTabs.space.x};\n gap: ${theme.click.tabs.fileTabs.space.gap};\n border-radius: ${theme.click.tabs.fileTabs.radii.all};\n border-right: 1px solid ${theme.click.tabs.fileTabs.color.stroke.default};\n background: ${theme.click.tabs.fileTabs.color.background.default};\n color: ${theme.click.tabs.fileTabs.color.text.default};\n font: ${theme.click.tabs.fileTabs.typography.label.default};\n svg,\n [data-indicator] {\n height: ${theme.click.tabs.fileTabs.icon.size.height};\n width: ${theme.click.tabs.fileTabs.icon.size.width};\n }\n ${\n $active\n ? `\n background: ${theme.click.tabs.fileTabs.color.background.active};\n color: ${theme.click.tabs.fileTabs.color.text.active};\n font: ${theme.click.tabs.fileTabs.typography.label.active};\n border-right: 1px solid ${theme.click.tabs.fileTabs.color.stroke.active};\n `\n : `\n &:hover {\n background: ${theme.click.tabs.fileTabs.color.background.hover};\n color: ${theme.click.tabs.fileTabs.color.text.hover};\n font: ${theme.click.tabs.fileTabs.typography.label.hover};\n border-right: 1px solid ${theme.click.tabs.fileTabs.color.stroke.hover};\n }\n `\n }\n ${$preview === true ? 'font-style: italic;' : ''}\n `}\n [data-type=\"close\"] {\n display: none;\n }\n [data-indicator] {\n display: block;\n }\n &:hover {\n [data-type='close'] {\n display: block;\n }\n [data-indicator] {\n display: none;\n }\n }\n`;\n\nconst Indicator = styled.div<{ $status: FileTabStatusType }>`\n position: relative;\n &::after {\n position: absolute;\n left: 0.25rem;\n top: 0.25rem;\n content: '';\n width: 0.5rem;\n height: 0.5rem;\n ${({ theme, $status }) => `\n background: ${\n $status === 'default' ? 'transparent' : theme.click.alert.color.text[$status]\n };\n border-radius: 50%;\n `}\n }\n`;\n\nconst TabContent = styled.div`\n display: flex;\n justify-content: flex-start;\n align-items: center;\n flex-wrap: nowrap;\n overflow: hidden;\n gap: ${({ theme }) => theme.click.tabs.fileTabs.space.gap};\n`;\n\nconst TabContentText = styled.span`\n display: inline-block;\n text-overflow: ellipsis;\n white-space: nowrap;\n overflow: hidden;\n`;\n\nconst EmptyButton = styled.button`\n padding: 0;\n ${({ theme }) => theme.click.tabs.fileTabs.color.closeButton.background.default};\n &:hover {\n background: ${({ theme }) =>\n theme.click.tabs.fileTabs.color.closeButton.background.hover};\n }\n`;\n\nconst Tab = ({\n text,\n index,\n icon,\n onMouseDown: onMouseDownProp,\n status = 'default',\n testId,\n preview,\n ...props\n}: FileTabProps) => {\n const { selectedIndex, onClose: onCloseProp } = useSelect();\n const onMouseDown = (e: MouseEvent<HTMLDivElement>) => {\n e.currentTarget.scrollIntoView({\n behavior: 'smooth',\n block: 'nearest',\n inline: 'center',\n });\n if (typeof onMouseDownProp === 'function') {\n onMouseDownProp(e);\n }\n };\n\n const onClose = (e: MouseEvent<HTMLButtonElement>): void => {\n e.preventDefault();\n e.stopPropagation();\n onCloseProp(index);\n };\n\n return (\n <TabElement\n $active={selectedIndex === index}\n onMouseDown={onMouseDown}\n data-testid={testId ? `${testId}-${index}` : undefined}\n $preview={preview}\n $dismissable\n {...props}\n >\n <TabContent>\n {typeof icon === 'string' ? <Icon name={icon as IconName} /> : icon}\n <TabContentText>{text}</TabContentText>\n </TabContent>\n <EmptyButton\n as={IconButton}\n icon=\"cross\"\n onClick={onClose}\n data-type=\"close\"\n data-testid={testId ? `${testId}-${index}-close` : undefined}\n />\n <Indicator\n $status={status}\n data-indicator={status}\n data-testid={testId ? `${testId}-${index}-status` : undefined}\n />\n </TabElement>\n );\n};\n\nTab.displayName = 'FileTab';\n\nFileTabs.Tab = Tab;\n\ninterface FileTabElementProps extends HTMLAttributes<HTMLDivElement> {\n icon?: IconName | ReactNode;\n active?: boolean;\n preview?: boolean;\n}\nexport const FileTabElement = ({\n icon,\n children,\n active = false,\n preview,\n ...props\n}: FileTabElementProps) => {\n return (\n <TabElement\n $active={active}\n $preview={preview}\n $dismissable={false}\n $fixedTabElement\n {...props}\n >\n {typeof icon === 'string' ? <Icon name={icon as IconName} /> : icon}\n {children && <TabContentText>{children}</TabContentText>}\n </TabElement>\n );\n};\n"],"names":["ReactSortable","ReactSortableModule","TabsContainer","styled","div","withConfig","componentId","$count","TabsSortableContainer","TabContext","createContext","selectedIndex","undefined","onClose","useSelect","result","useContext","Error","FileTabs","children","onReorderTab","onCloseProp","onSelect","onSelectProp","list","listProp","setList","setListProp","onEnd","direction","group","props","ref","useRef","useState","Children","map","_","index","id","useEffect","splice","value","onWheel","evt","current","scrollLeft","deltaY","jsx","e","preventDefault","stopPropagation","length","sortable","store","newDraggableIndex","oldDraggableIndex","child","TabElement","theme","$active","$preview","$dismissable","$fixedTabElement","click","tabs","fileTabs","icon","size","width","space","y","x","gap","radii","all","color","stroke","default","background","text","typography","label","height","active","hover","Indicator","$status","alert","TabContent","TabContentText","span","EmptyButton","button","closeButton","Tab","onMouseDown","onMouseDownProp","status","testId","preview","currentTarget","scrollIntoView","behavior","block","inline","jsxs","Icon","IconButton","displayName","FileTabElement"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"index.cjs","sources":["../../../../src/components/FileTabs/FileTabs.tsx"],"sourcesContent":["import {\n HTMLAttributes,\n createContext,\n useContext,\n ReactElement,\n Children,\n useState,\n MouseEvent,\n useEffect,\n ReactNode,\n WheelEvent,\n useRef,\n CSSProperties,\n} from 'react';\nimport { cn, cva } from '@/lib/cva';\nimport { Icon } from '@/components/Icon';\nimport { IconButton } from '@/components/IconButton';\nimport type { IconName } from '@/components/Icon/Icon.types';\nimport styles from './FileTabs.module.css';\n\n// TODO: Check if react-sortablejs has ESM version\nimport ReactSortableModule from 'react-sortablejs/dist/index.js';\nimport type {\n ItemInterface,\n Sortable,\n Store,\n ReactSortableProps,\n} from 'react-sortablejs';\nconst { ReactSortable } = ReactSortableModule;\n\nexport type FileTabStatusType =\n | 'default'\n | 'success'\n | 'neutral'\n | 'danger'\n | 'warning'\n | 'info';\n\ninterface ContextProps {\n selectedIndex?: number;\n onClose: (index: number) => void;\n}\n\nexport const TabContext = createContext<ContextProps>({\n selectedIndex: undefined,\n onClose: () => null,\n});\n\nexport interface FileTabProps extends Omit<HTMLAttributes<HTMLDivElement>, 'children'> {\n /** Callback when the tab is closed */\n onClose?: () => void;\n /** Index of the tab in the list */\n index: number;\n /** Status indicator for the tab */\n status?: FileTabStatusType;\n /** Icon to display in the tab */\n icon?: IconName | ReactNode;\n /** Text to display in the tab */\n text: string;\n /** Test ID for testing */\n testId?: string;\n /** Whether the tab is in preview mode (italic text) */\n preview?: boolean;\n}\nexport interface FileTabsProps extends Omit<\n ReactSortableProps<ItemInterface>,\n 'onSelect' | 'list' | 'setList'\n> {\n /** Index of the currently selected tab */\n selectedIndex?: number;\n /** The tab elements to render */\n children: ReactElement<FileTabProps> | ReactElement<FileTabProps>[];\n /** Callback when a tab is reordered via drag and drop */\n onReorderTab: (sourcePosition: number, destinationPosition: number) => void;\n /** Callback when a tab is closed */\n onClose: (index: number) => void;\n /** Callback when a tab is selected */\n onSelect: (index: number) => void;\n /** List of items for sortable functionality */\n list?: ItemInterface[];\n /** Setter for the sortable list */\n setList?: (newState: ItemInterface[], sortable: Sortable | null, store: Store) => void;\n}\n\nconst useSelect = () => {\n const result = useContext(TabContext);\n if (!result) {\n throw new Error('Context used outside of its Provider!');\n }\n return result;\n};\n\nexport const FileTabs = ({\n selectedIndex,\n children,\n onReorderTab,\n onClose: onCloseProp,\n onSelect: onSelectProp,\n list: listProp,\n setList: setListProp,\n onEnd,\n direction,\n group,\n className,\n ...props\n}: FileTabsProps) => {\n const ref = useRef<HTMLDivElement>(null);\n const [list, setList] = useState<ItemInterface[]>(\n Children.map(children, (_, index) => ({\n id: `tab-element-${index}`,\n }))\n );\n useEffect(() => {\n setList(\n Children.map(children, (_, index) => ({\n id: `tab-element-${index}`,\n }))\n );\n }, [children]);\n\n const onClose = (index: number) => {\n onCloseProp(index);\n setList(list => {\n list.splice(index, 1);\n return [...list];\n });\n };\n\n const onSelect = (index: number) => () => {\n onSelectProp(index);\n };\n\n const value = {\n selectedIndex,\n onClose,\n };\n\n const onWheel = (evt: WheelEvent<HTMLDivElement>) => {\n if (ref.current) {\n ref.current.scrollLeft += evt.deltaY;\n }\n };\n return (\n <TabContext.Provider value={value}>\n <div\n ref={ref}\n onWheel={onWheel}\n role=\"tablist\"\n onScroll={e => {\n e.preventDefault();\n e.stopPropagation();\n }}\n className={styles.tabs}\n style={\n {\n '--file-tabs-count-width': `${(listProp ?? list).length * 200}px`,\n } as CSSProperties\n }\n >\n <ReactSortable\n direction={direction ?? 'horizontal'}\n group={group ?? 'tabbar'}\n list={listProp ?? list}\n setList={setListProp ?? setList}\n onEnd={(evt, sortable, store) => {\n const { newDraggableIndex, oldDraggableIndex } = evt;\n if (\n typeof newDraggableIndex === 'number' &&\n typeof oldDraggableIndex === 'number' &&\n oldDraggableIndex !== newDraggableIndex\n ) {\n onReorderTab(oldDraggableIndex, newDraggableIndex);\n }\n if (typeof onEnd === 'function') {\n onEnd(evt, sortable, store);\n }\n }}\n revertOnSpill\n {...props}\n className={cn(styles['tabs-sortable'], className)}\n >\n {Children.map(children, (child, index) => (\n <div\n tabIndex={index + 1}\n role=\"tab\"\n onClick={onSelect(index)}\n key={`tab-element-${index}`}\n >\n {child}\n </div>\n ))}\n </ReactSortable>\n </div>\n </TabContext.Provider>\n );\n};\n\nconst tabVariants = cva(styles.tab, {\n variants: {\n active: {\n true: styles.tab_active,\n false: styles.tab_inactive,\n },\n fixed: {\n true: styles.tab_fixed,\n false: styles['tab_full-width'],\n },\n preview: {\n true: styles.tab_preview,\n false: '',\n },\n dismissable: {\n true: styles.tab_dismissable,\n false: '',\n },\n },\n defaultVariants: {\n fixed: false,\n preview: false,\n dismissable: false,\n },\n});\n\nconst Tab = ({\n text,\n index,\n icon,\n onMouseDown: onMouseDownProp,\n status = 'default',\n testId,\n preview,\n className,\n ...props\n}: FileTabProps) => {\n const { selectedIndex, onClose: onCloseProp } = useSelect();\n const onMouseDown = (e: MouseEvent<HTMLDivElement>) => {\n e.currentTarget.scrollIntoView({\n behavior: 'smooth',\n block: 'nearest',\n inline: 'center',\n });\n if (typeof onMouseDownProp === 'function') {\n onMouseDownProp(e);\n }\n };\n\n const onClose = (e: MouseEvent<HTMLButtonElement>): void => {\n e.preventDefault();\n e.stopPropagation();\n onCloseProp(index);\n };\n\n return (\n <div\n onMouseDown={onMouseDown}\n data-testid={testId ? `${testId}-${index}` : undefined}\n {...props}\n className={cn(\n tabVariants({\n active: selectedIndex === index,\n preview,\n dismissable: true,\n }),\n className\n )}\n >\n <div className={styles['tab-content']}>\n {typeof icon === 'string' ? <Icon name={icon as IconName} /> : icon}\n <span className={styles['tab-content-text']}>{text}</span>\n </div>\n <IconButton\n className={styles['empty-button']}\n htmlType=\"button\"\n icon=\"cross\"\n onClick={onClose}\n data-type=\"close\"\n data-testid={testId ? `${testId}-${index}-close` : undefined}\n />\n <div\n className={styles.indicator}\n data-indicator={status}\n data-testid={testId ? `${testId}-${index}-status` : undefined}\n />\n </div>\n );\n};\n\nTab.displayName = 'FileTab';\n\nFileTabs.Tab = Tab;\n\ninterface FileTabElementProps extends HTMLAttributes<HTMLDivElement> {\n icon?: IconName | ReactNode;\n active?: boolean;\n preview?: boolean;\n}\nexport const FileTabElement = ({\n icon,\n children,\n active = false,\n preview,\n className,\n ...props\n}: FileTabElementProps) => {\n return (\n <div\n {...props}\n className={cn(tabVariants({ active, preview, fixed: true }), className)}\n >\n {typeof icon === 'string' ? <Icon name={icon as IconName} /> : icon}\n {children && <span className={styles['tab-content-text']}>{children}</span>}\n </div>\n );\n};\n"],"names":["ReactSortable","ReactSortableModule","TabContext","createContext","selectedIndex","undefined","onClose","useSelect","result","useContext","Error","FileTabs","children","onReorderTab","onCloseProp","onSelect","onSelectProp","list","listProp","setList","setListProp","onEnd","direction","group","className","props","ref","useRef","useState","Children","map","_","index","id","useEffect","splice","value","onWheel","evt","current","scrollLeft","deltaY","jsx","e","preventDefault","stopPropagation","styles","tabs","length","sortable","store","newDraggableIndex","oldDraggableIndex","cn","child","tabVariants","cva","tab","variants","active","true","tab_active","false","tab_inactive","fixed","tab_fixed","preview","tab_preview","dismissable","tab_dismissable","defaultVariants","Tab","text","icon","onMouseDown","onMouseDownProp","status","testId","currentTarget","scrollIntoView","behavior","block","inline","jsxs","Icon","IconButton","indicator","displayName","FileTabElement"],"mappings":"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"}
|
|
@@ -1,21 +1,15 @@
|
|
|
1
|
+
require("./FileMultiUpload.css");
|
|
1
2
|
'use strict';
|
|
2
3
|
|
|
3
4
|
Object.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });
|
|
4
5
|
|
|
5
6
|
const jsxRuntime = require('react/jsx-runtime');
|
|
6
7
|
const react = require('react');
|
|
7
|
-
const styledComponents = require('styled-components');
|
|
8
8
|
const FileUploadArea = require('./FileUploadArea.cjs');
|
|
9
9
|
const FileUploadItem = require('./FileUploadItem.cjs');
|
|
10
10
|
const useDragAndDrop = require('./useDragAndDrop.cjs');
|
|
11
|
+
const FileMultiUpload_module = require('./FileMultiUpload.module.css.cjs');
|
|
11
12
|
|
|
12
|
-
const FilesList = styledComponents.styled.div.withConfig({
|
|
13
|
-
componentId: "sc-1w9rsfj-0"
|
|
14
|
-
})(["display:flex;flex-direction:column;gap:", ";width:100%;margin-top:", ";"], ({
|
|
15
|
-
theme
|
|
16
|
-
}) => theme.click.fileUpload.sm.space.gap, ({
|
|
17
|
-
theme
|
|
18
|
-
}) => theme.click.fileUpload.md.space.gap);
|
|
19
13
|
const FileMultiUpload = ({
|
|
20
14
|
title,
|
|
21
15
|
supportedFileTypes = [".txt", ".sql"],
|
|
@@ -61,7 +55,7 @@ const FileMultiUpload = ({
|
|
|
61
55
|
const acceptedFileTypes = supportedFileTypes.join(",");
|
|
62
56
|
return /* @__PURE__ */ jsxRuntime.jsxs(jsxRuntime.Fragment, { children: [
|
|
63
57
|
/* @__PURE__ */ jsxRuntime.jsx(FileUploadArea.FileUploadArea, { title, supportedFileTypes, size: "md", isDragging, isNotSupported, hasFile: false, multiple: true, onDragEnter: handleDragEnter, onDragLeave: handleDragLeave, onDragOver: handleDragOver, onDrop: handleDrop, onClick: handleBrowseClick }),
|
|
64
|
-
files.length > 0 && /* @__PURE__ */ jsxRuntime.jsx(
|
|
58
|
+
files.length > 0 && /* @__PURE__ */ jsxRuntime.jsx("div", { className: FileMultiUpload_module.default["files-list"], children: files.map((file) => /* @__PURE__ */ jsxRuntime.jsx(FileUploadItem.FileUploadItem, { fileName: file.name, fileSize: file.size, progress: file.progress, showSuccess: file.status === "success", showProgress: file.status === "uploading", failureMessage: file.errorMessage || "Upload failed", onRetry: () => handleRetryUpload(file.id), onRemove: () => handleRemoveFile(file.id), size: "sm", inline: false }, file.id)) }),
|
|
65
59
|
/* @__PURE__ */ jsxRuntime.jsx("input", { type: "file", ref: fileInputRef, accept: acceptedFileTypes, onChange: handleFileSelect, multiple: true, style: {
|
|
66
60
|
display: "none"
|
|
67
61
|
} })
|