@lunit/oui 2.4.19 → 3.0.1
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/components/Autocomplete/Autocomplete.js +22 -0
- package/dist/components/Autocomplete/Autocomplete.styled.js +36 -0
- package/dist/components/Autocomplete/Autocomplete.types.js +1 -0
- package/dist/components/Autocomplete/index.js +2 -0
- package/dist/components/Checkbox/Checkbox.js +1 -1
- package/dist/components/Collapse/Collapse.js +6 -0
- package/dist/components/Collapse/Collapse.types.js +1 -0
- package/dist/components/Collapse/index.js +2 -0
- package/dist/components/DataTable/DataTable.js +7 -5
- package/dist/components/DataTable/DataTable.styled.js +12 -13
- package/dist/components/DataTable/DataTable.types.js +1 -0
- package/dist/components/DatePicker/DatePicker.js +13 -17
- package/dist/components/DatePicker/DatePicker.styled.js +24 -6
- package/dist/components/Dialog/Dialog.js +4 -2
- package/dist/components/Drawer/Drawer.js +6 -0
- package/dist/components/Drawer/Drawer.styled.js +29 -0
- package/dist/components/Drawer/Drawer.types.js +1 -0
- package/dist/components/Drawer/index.js +2 -0
- package/dist/components/Dropdown/Dropdown.js +0 -1
- package/dist/components/EllipsisTypography/EllipsisTypography.js +51 -15
- package/dist/components/Menu/Menu.js +5 -2
- package/dist/components/MuiInputBase.js +2 -2
- package/dist/components/NoMatchContainer/NoMatchContainer.js +6 -3
- package/dist/components/Popover/Popover.js +6 -0
- package/dist/components/Popover/Popover.styled.js +10 -0
- package/dist/components/Popover/Popover.types.js +1 -0
- package/dist/components/Popover/index.js +2 -0
- package/dist/components/Progress/LinearProgress.styled.js +1 -1
- package/dist/components/Radio/Radio.js +1 -1
- package/dist/components/TabbedPanel/TabbedPanel.js +1 -1
- package/dist/components/TabbedPanel/TabbedPanel.styled.js +1 -1
- package/dist/components/Toggle/Toggle.js +8 -5
- package/dist/components/Tooltip/Tooltip.js +2 -2
- package/dist/components/UploadManager/UploadManager.js +7 -5
- package/dist/components/index.js +4 -0
- package/dist/foundations/palette.js +4 -0
- package/dist/presentations/AnalysisBar/AnalysisBar.styled.js +7 -4
- package/dist/presentations/FreeText/FreeText.js +40 -22
- package/dist/theme.js +1 -0
- package/dist/types/components/Autocomplete/Autocomplete.d.ts +3 -0
- package/dist/types/components/Autocomplete/Autocomplete.styled.d.ts +6 -0
- package/dist/types/components/Autocomplete/Autocomplete.types.d.ts +20 -0
- package/dist/types/components/Autocomplete/index.d.ts +4 -0
- package/dist/{components → types/components}/Checkbox/Checkbox.types.d.ts +2 -2
- package/dist/types/components/Collapse/Collapse.d.ts +3 -0
- package/dist/types/components/Collapse/Collapse.types.d.ts +4 -0
- package/dist/types/components/Collapse/index.d.ts +4 -0
- package/dist/types/components/DataTable/DataTable.d.ts +3 -0
- package/dist/types/components/DataTable/DataTable.types.d.ts +8 -0
- package/dist/types/components/DataTable/index.d.ts +2 -0
- package/dist/{components → types/components}/DatePicker/DatePicker.types.d.ts +1 -1
- package/dist/types/components/Drawer/Drawer.d.ts +3 -0
- package/dist/types/components/Drawer/Drawer.styled.d.ts +3 -0
- package/dist/types/components/Drawer/Drawer.types.d.ts +14 -0
- package/dist/types/components/Drawer/index.d.ts +4 -0
- package/dist/{components → types/components}/Dropdown/Dropdown.types.d.ts +1 -0
- package/dist/{components → types/components}/Dropdown/IconDropdown.types.d.ts +3 -4
- package/dist/types/components/EllipsisTypography/EllipsisTypography.d.ts +4 -0
- package/dist/{components → types/components}/Menu/Menu.types.d.ts +3 -1
- package/dist/types/components/Popover/Popover.d.ts +3 -0
- package/dist/types/components/Popover/Popover.styled.d.ts +2 -0
- package/dist/types/components/Popover/Popover.types.d.ts +4 -0
- package/dist/types/components/Popover/index.d.ts +4 -0
- package/dist/{components → types/components}/Radio/Radio.types.d.ts +2 -2
- package/dist/{components → types/components}/Toggle/Toggle.types.d.ts +2 -2
- package/dist/{components → types/components}/index.d.ts +4 -0
- package/dist/{foundations → types/foundations}/typography.d.ts +2 -2
- package/dist/{theme.d.ts → types/theme.d.ts} +1 -0
- package/docs/COMPONENTS.md +125 -0
- package/docs/TOKENS.md +60 -0
- package/llms.txt +58 -0
- package/package.json +35 -24
- package/dist/components/DataTable/DataTable.d.ts +0 -3
- package/dist/components/DataTable/index.d.ts +0 -1
- package/dist/components/EllipsisTypography/EllipsisTypography.d.ts +0 -3
- /package/dist/{assets → types/assets}/ic-bell-noti-outlined-20px.d.ts +0 -0
- /package/dist/{assets → types/assets}/ic-close-large-outlined-20px.d.ts +0 -0
- /package/dist/{assets → types/assets}/ic-close-small-outlined-20px.d.ts +0 -0
- /package/dist/{assets → types/assets}/ic-copy-coordinates-outlined-20px.d.ts +0 -0
- /package/dist/{assets → types/assets}/ic-copy-coordinates-url-outlined-20px.d.ts +0 -0
- /package/dist/{assets → types/assets}/ic-download-pdf-outlined-20px.d.ts +0 -0
- /package/dist/{assets → types/assets}/ic-ellipse-exclude-outlined-20px.d.ts +0 -0
- /package/dist/{assets → types/assets}/ic-ellipse-include-outlined-20px.d.ts +0 -0
- /package/dist/{assets → types/assets}/ic-ellipse-outlined-20px.d.ts +0 -0
- /package/dist/{assets → types/assets}/ic-filter-noti-outlined-20px.d.ts +0 -0
- /package/dist/{assets → types/assets}/ic-hide-large-outlined-20px.d.ts +0 -0
- /package/dist/{assets → types/assets}/ic-hide-small-outlined-20px.d.ts +0 -0
- /package/dist/{assets → types/assets}/ic-information-large-outlined-20px.d.ts +0 -0
- /package/dist/{assets → types/assets}/ic-information-small-outlined-20px.d.ts +0 -0
- /package/dist/{assets → types/assets}/ic-manufacturer-outlined-20px.d.ts +0 -0
- /package/dist/{assets → types/assets}/ic-rectangle-exclude-outlined-20px.d.ts +0 -0
- /package/dist/{assets → types/assets}/ic-rectangle-include-outlined-20px.d.ts +0 -0
- /package/dist/{assets → types/assets}/ic-rectangle-outlined-20px.d.ts +0 -0
- /package/dist/{assets → types/assets}/ic-refresh-left-outlined-20px.d.ts +0 -0
- /package/dist/{assets → types/assets}/ic-refresh-right-outlined-20px.d.ts +0 -0
- /package/dist/{assets → types/assets}/ic-show-large-outlined-20px.d.ts +0 -0
- /package/dist/{assets → types/assets}/ic-show-small-outlined-20px.d.ts +0 -0
- /package/dist/{assets → types/assets}/index.d.ts +0 -0
- /package/dist/{components → types/components}/Alert/Alert.d.ts +0 -0
- /package/dist/{components → types/components}/Alert/Alert.styled.d.ts +0 -0
- /package/dist/{components → types/components}/Alert/Alert.types.d.ts +0 -0
- /package/dist/{components → types/components}/Alert/Alert.utils.d.ts +0 -0
- /package/dist/{components → types/components}/Alert/index.d.ts +0 -0
- /package/dist/{components → types/components}/BaseTextField/BaseTextField.styled.d.ts +0 -0
- /package/dist/{components → types/components}/BaseTextField/BaseTextField.types.d.ts +0 -0
- /package/dist/{components → types/components}/BaseTextField/BaseTextField.utils.d.ts +0 -0
- /package/dist/{components → types/components}/Button/BaseButton.d.ts +0 -0
- /package/dist/{components → types/components}/Button/Button.d.ts +0 -0
- /package/dist/{components → types/components}/Button/Button.types.d.ts +0 -0
- /package/dist/{components → types/components}/Button/Button.utils.d.ts +0 -0
- /package/dist/{components → types/components}/Button/index.d.ts +0 -0
- /package/dist/{components → types/components}/Button/styleds/BaseButton.styled.d.ts +0 -0
- /package/dist/{components → types/components}/Button/styleds/ContainedButton.styled.d.ts +0 -0
- /package/dist/{components → types/components}/Button/styleds/GhostButton.styled.d.ts +0 -0
- /package/dist/{components → types/components}/Button/styleds/IconButton.styled.d.ts +0 -0
- /package/dist/{components → types/components}/Button/styleds/OutlinedButton.styled.d.ts +0 -0
- /package/dist/{components → types/components}/Card/Card.d.ts +0 -0
- /package/dist/{components → types/components}/Card/Card.styled.d.ts +0 -0
- /package/dist/{components → types/components}/Card/Card.types.d.ts +0 -0
- /package/dist/{components → types/components}/Card/index.d.ts +0 -0
- /package/dist/{components → types/components}/Checkbox/Checkbox.d.ts +0 -0
- /package/dist/{components → types/components}/Checkbox/Checkbox.styled.d.ts +0 -0
- /package/dist/{components → types/components}/Checkbox/Checkbox.utils.d.ts +0 -0
- /package/dist/{components → types/components}/Checkbox/index.d.ts +0 -0
- /package/dist/{components → types/components}/Chip/Chip.d.ts +0 -0
- /package/dist/{components → types/components}/Chip/Chip.styled.d.ts +0 -0
- /package/dist/{components → types/components}/Chip/Chip.types.d.ts +0 -0
- /package/dist/{components → types/components}/Chip/Chip.utils.d.ts +0 -0
- /package/dist/{components → types/components}/Chip/index.d.ts +0 -0
- /package/dist/{components → types/components}/DataTable/DataTable.styled.d.ts +0 -0
- /package/dist/{components → types/components}/DatePicker/DatePicker.d.ts +0 -0
- /package/dist/{components → types/components}/DatePicker/DatePicker.styled.d.ts +0 -0
- /package/dist/{components → types/components}/DatePicker/index.d.ts +0 -0
- /package/dist/{components → types/components}/Dialog/Dialog.d.ts +0 -0
- /package/dist/{components → types/components}/Dialog/Dialog.styled.d.ts +0 -0
- /package/dist/{components → types/components}/Dialog/Dialog.types.d.ts +0 -0
- /package/dist/{components → types/components}/Dialog/index.d.ts +0 -0
- /package/dist/{components → types/components}/Divider/Divider.d.ts +0 -0
- /package/dist/{components → types/components}/Divider/Divider.styled.d.ts +0 -0
- /package/dist/{components → types/components}/Divider/Divider.types.d.ts +0 -0
- /package/dist/{components → types/components}/Divider/index.d.ts +0 -0
- /package/dist/{components → types/components}/Dropdown/Dropdown.d.ts +0 -0
- /package/dist/{components → types/components}/Dropdown/Dropdown.styled.d.ts +0 -0
- /package/dist/{components → types/components}/Dropdown/Dropdown.utils.d.ts +0 -0
- /package/dist/{components → types/components}/Dropdown/DropdownItem.d.ts +0 -0
- /package/dist/{components → types/components}/Dropdown/DropdownItem.styled.d.ts +0 -0
- /package/dist/{components → types/components}/Dropdown/DropdownItem.types.d.ts +0 -0
- /package/dist/{components → types/components}/Dropdown/DropdownItem.utils.d.ts +0 -0
- /package/dist/{components → types/components}/Dropdown/DropdownSubtitle.d.ts +0 -0
- /package/dist/{components → types/components}/Dropdown/DropdownSubtitle.styled.d.ts +0 -0
- /package/dist/{components → types/components}/Dropdown/DropdownSubtitle.types.d.ts +0 -0
- /package/dist/{components → types/components}/Dropdown/IconDropdown.d.ts +0 -0
- /package/dist/{components → types/components}/Dropdown/IconDropdown.styled.d.ts +0 -0
- /package/dist/{components → types/components}/Dropdown/index.d.ts +0 -0
- /package/dist/{components → types/components}/EllipsisTypography/EllipsisTypography.styled.d.ts +0 -0
- /package/dist/{components → types/components}/EllipsisTypography/EllipsisTypography.types.d.ts +0 -0
- /package/dist/{components → types/components}/EllipsisTypography/index.d.ts +0 -0
- /package/dist/{components → types/components}/FileDnDZone/FileDnDZone.d.ts +0 -0
- /package/dist/{components → types/components}/FileDnDZone/FileDnDZone.styled.d.ts +0 -0
- /package/dist/{components → types/components}/FileDnDZone/FileDnDZone.types.d.ts +0 -0
- /package/dist/{components → types/components}/FileDnDZone/FileDnDZone.utils.d.ts +0 -0
- /package/dist/{components → types/components}/FileDnDZone/index.d.ts +0 -0
- /package/dist/{components → types/components}/List/List.d.ts +0 -0
- /package/dist/{components → types/components}/List/List.styled.d.ts +0 -0
- /package/dist/{components → types/components}/List/List.types.d.ts +0 -0
- /package/dist/{components → types/components}/List/List.utils.d.ts +0 -0
- /package/dist/{components → types/components}/List/ListItem.d.ts +0 -0
- /package/dist/{components → types/components}/List/ListItem.styled.d.ts +0 -0
- /package/dist/{components → types/components}/List/ListItem.types.d.ts +0 -0
- /package/dist/{components → types/components}/List/ListItemCaption.d.ts +0 -0
- /package/dist/{components → types/components}/List/ListItemCaption.styled.d.ts +0 -0
- /package/dist/{components → types/components}/List/ListItemCaption.types.d.ts +0 -0
- /package/dist/{components → types/components}/List/index.d.ts +0 -0
- /package/dist/{components → types/components}/LoadingIndicator/LoadingIndicator.d.ts +0 -0
- /package/dist/{components → types/components}/LoadingIndicator/LoadingIndicator.styled.d.ts +0 -0
- /package/dist/{components → types/components}/LoadingIndicator/LoadingIndicator.types.d.ts +0 -0
- /package/dist/{components → types/components}/LoadingIndicator/index.d.ts +0 -0
- /package/dist/{components → types/components}/Menu/Menu.d.ts +0 -0
- /package/dist/{components → types/components}/Menu/Menu.styled.d.ts +0 -0
- /package/dist/{components → types/components}/Menu/MenuItem.d.ts +0 -0
- /package/dist/{components → types/components}/Menu/MenuItem.styled.d.ts +0 -0
- /package/dist/{components → types/components}/Menu/MenuItem.types.d.ts +0 -0
- /package/dist/{components → types/components}/Menu/index.d.ts +0 -0
- /package/dist/{components → types/components}/MuiCssBaseline.d.ts +0 -0
- /package/dist/{components → types/components}/MuiInputBase.d.ts +0 -0
- /package/dist/{components → types/components}/MuiOutlinedInput.d.ts +0 -0
- /package/dist/{components → types/components}/MuiTextField.d.ts +0 -0
- /package/dist/{components → types/components}/NoMatchContainer/NoMatchContainer.d.ts +0 -0
- /package/dist/{components → types/components}/NoMatchContainer/index.d.ts +0 -0
- /package/dist/{components → types/components}/Pagination/Pagination.d.ts +0 -0
- /package/dist/{components → types/components}/Pagination/Pagination.styled.d.ts +0 -0
- /package/dist/{components → types/components}/Pagination/Pagination.types.d.ts +0 -0
- /package/dist/{components → types/components}/Pagination/index.d.ts +0 -0
- /package/dist/{components → types/components}/ProductLabel/ProductLabel.d.ts +0 -0
- /package/dist/{components → types/components}/ProductLabel/ProductLabel.styled.d.ts +0 -0
- /package/dist/{components → types/components}/ProductLabel/ProductLabel.types.d.ts +0 -0
- /package/dist/{components → types/components}/ProductLabel/index.d.ts +0 -0
- /package/dist/{components → types/components}/Progress/CircularProgress.d.ts +0 -0
- /package/dist/{components → types/components}/Progress/CircularProgress.styled.d.ts +0 -0
- /package/dist/{components → types/components}/Progress/CircularProgress.types.d.ts +0 -0
- /package/dist/{components → types/components}/Progress/LinearProgress.d.ts +0 -0
- /package/dist/{components → types/components}/Progress/LinearProgress.styled.d.ts +0 -0
- /package/dist/{components → types/components}/Progress/LinearProgress.types.d.ts +0 -0
- /package/dist/{components → types/components}/Progress/index.d.ts +0 -0
- /package/dist/{components → types/components}/Radio/Radio.d.ts +0 -0
- /package/dist/{components → types/components}/Radio/Radio.styled.d.ts +0 -0
- /package/dist/{components → types/components}/Radio/RadioGroup.d.ts +0 -0
- /package/dist/{components → types/components}/Radio/RadioGroup.styled.d.ts +0 -0
- /package/dist/{components → types/components}/Radio/RadioGroup.types.d.ts +0 -0
- /package/dist/{components → types/components}/Radio/index.d.ts +0 -0
- /package/dist/{components → types/components}/ResizeObserver/ResizeObserverContext.d.ts +0 -0
- /package/dist/{components → types/components}/ResizeObserver/index.d.ts +0 -0
- /package/dist/{components → types/components}/Stepper/Stepper.d.ts +0 -0
- /package/dist/{components → types/components}/Stepper/Stepper.styled.d.ts +0 -0
- /package/dist/{components → types/components}/Stepper/Stepper.types.d.ts +0 -0
- /package/dist/{components → types/components}/Stepper/index.d.ts +0 -0
- /package/dist/{components → types/components}/TabbedPanel/TabbedPanel.d.ts +0 -0
- /package/dist/{components → types/components}/TabbedPanel/TabbedPanel.styled.d.ts +0 -0
- /package/dist/{components → types/components}/TabbedPanel/TabbedPanel.types.d.ts +0 -0
- /package/dist/{components → types/components}/TabbedPanel/TabbedPanel.utils.d.ts +0 -0
- /package/dist/{components → types/components}/TabbedPanel/index.d.ts +0 -0
- /package/dist/{components → types/components}/TextField/TextArea.d.ts +0 -0
- /package/dist/{components → types/components}/TextField/TextArea.styled.d.ts +0 -0
- /package/dist/{components → types/components}/TextField/TextArea.types.d.ts +0 -0
- /package/dist/{components → types/components}/TextField/TextInput.d.ts +0 -0
- /package/dist/{components → types/components}/TextField/TextInput.styled.d.ts +0 -0
- /package/dist/{components → types/components}/TextField/TextInput.types.d.ts +0 -0
- /package/dist/{components → types/components}/TextField/TextInput.utils.d.ts +0 -0
- /package/dist/{components → types/components}/TextField/components/Buttons.d.ts +0 -0
- /package/dist/{components → types/components}/TextField/components/FileInput.d.ts +0 -0
- /package/dist/{components → types/components}/TextField/components/NormalTextInput.d.ts +0 -0
- /package/dist/{components → types/components}/TextField/components/PasswordInput.d.ts +0 -0
- /package/dist/{components → types/components}/TextField/index.d.ts +0 -0
- /package/dist/{components → types/components}/Toggle/Toggle.d.ts +0 -0
- /package/dist/{components → types/components}/Toggle/Toggle.styled.d.ts +0 -0
- /package/dist/{components → types/components}/Toggle/index.d.ts +0 -0
- /package/dist/{components → types/components}/Tooltip/Tooltip.d.ts +0 -0
- /package/dist/{components → types/components}/Tooltip/Tooltip.styled.d.ts +0 -0
- /package/dist/{components → types/components}/Tooltip/Tooltip.types.d.ts +0 -0
- /package/dist/{components → types/components}/Tooltip/Tooltip.utils.d.ts +0 -0
- /package/dist/{components → types/components}/Tooltip/index.d.ts +0 -0
- /package/dist/{components → types/components}/UploadManager/UploadManager.d.ts +0 -0
- /package/dist/{components → types/components}/UploadManager/UploadManager.styled.d.ts +0 -0
- /package/dist/{components → types/components}/UploadManager/UploadManager.types.d.ts +0 -0
- /package/dist/{components → types/components}/UploadManager/index.d.ts +0 -0
- /package/dist/{foundations → types/foundations}/index.d.ts +0 -0
- /package/dist/{foundations → types/foundations}/palette.d.ts +0 -0
- /package/dist/{foundations → types/foundations}/spacing.d.ts +0 -0
- /package/dist/{foundations → types/foundations}/styles.d.ts +0 -0
- /package/dist/{icons → types/icons}/BellNoti/index.d.ts +0 -0
- /package/dist/{icons → types/icons}/CloseLarge/index.d.ts +0 -0
- /package/dist/{icons → types/icons}/CloseSmall/index.d.ts +0 -0
- /package/dist/{icons → types/icons}/CopyCoordinates/index.d.ts +0 -0
- /package/dist/{icons → types/icons}/CopyCoordinatesUrl/index.d.ts +0 -0
- /package/dist/{icons → types/icons}/DownloadPdf/index.d.ts +0 -0
- /package/dist/{icons → types/icons}/Ellipse/index.d.ts +0 -0
- /package/dist/{icons → types/icons}/EllipseExclude/index.d.ts +0 -0
- /package/dist/{icons → types/icons}/EllipseInclude/index.d.ts +0 -0
- /package/dist/{icons → types/icons}/FilterNoti/index.d.ts +0 -0
- /package/dist/{icons → types/icons}/HideLarge/index.d.ts +0 -0
- /package/dist/{icons → types/icons}/HideSmall/index.d.ts +0 -0
- /package/dist/{icons → types/icons}/InformationLarge/index.d.ts +0 -0
- /package/dist/{icons → types/icons}/InformationSmall/index.d.ts +0 -0
- /package/dist/{icons → types/icons}/Manufacturer/index.d.ts +0 -0
- /package/dist/{icons → types/icons}/Rectangle/index.d.ts +0 -0
- /package/dist/{icons → types/icons}/RectangleExclude/index.d.ts +0 -0
- /package/dist/{icons → types/icons}/RectangleInclude/index.d.ts +0 -0
- /package/dist/{icons → types/icons}/RefreshLeft/index.d.ts +0 -0
- /package/dist/{icons → types/icons}/RefreshRight/index.d.ts +0 -0
- /package/dist/{icons → types/icons}/ShowLarge/index.d.ts +0 -0
- /package/dist/{icons → types/icons}/ShowSmall/index.d.ts +0 -0
- /package/dist/{icons → types/icons}/index.d.ts +0 -0
- /package/dist/{index.d.ts → types/index.d.ts} +0 -0
- /package/dist/{presentations → types/presentations}/Accordion/Accordion.d.ts +0 -0
- /package/dist/{presentations → types/presentations}/Accordion/Accordion.styled.d.ts +0 -0
- /package/dist/{presentations → types/presentations}/Accordion/Accordion.types.d.ts +0 -0
- /package/dist/{presentations → types/presentations}/Accordion/index.d.ts +0 -0
- /package/dist/{presentations → types/presentations}/AnalysisBar/AnalysisBar.d.ts +0 -0
- /package/dist/{presentations → types/presentations}/AnalysisBar/AnalysisBar.styled.d.ts +0 -0
- /package/dist/{presentations → types/presentations}/AnalysisBar/AnalysisBar.types.d.ts +0 -0
- /package/dist/{presentations → types/presentations}/AnalysisBar/AnalysisBar.utils.d.ts +0 -0
- /package/dist/{presentations → types/presentations}/AnalysisBar/HeatmapGraphIcon/HeatmapGraphSVG.d.ts +0 -0
- /package/dist/{presentations → types/presentations}/AnalysisBar/HeatmapGraphIcon/index.d.ts +0 -0
- /package/dist/{presentations → types/presentations}/AnalysisBar/index.d.ts +0 -0
- /package/dist/{presentations → types/presentations}/FreeText/FreeText.d.ts +0 -0
- /package/dist/{presentations → types/presentations}/FreeText/FreeText.types.d.ts +0 -0
- /package/dist/{presentations → types/presentations}/FreeText/index.d.ts +0 -0
- /package/dist/{presentations → types/presentations}/Histogram/Histogram.d.ts +0 -0
- /package/dist/{presentations → types/presentations}/Histogram/Histogram.styled.d.ts +0 -0
- /package/dist/{presentations → types/presentations}/Histogram/Histogram.types.d.ts +0 -0
- /package/dist/{presentations → types/presentations}/Histogram/Histogram.utils.d.ts +0 -0
- /package/dist/{presentations → types/presentations}/Histogram/HistogramCharts.d.ts +0 -0
- /package/dist/{presentations → types/presentations}/Histogram/HistogramTabs.d.ts +0 -0
- /package/dist/{presentations → types/presentations}/Histogram/index.d.ts +0 -0
- /package/dist/{presentations → types/presentations}/HorizonDivider/HorizonDivider.d.ts +0 -0
- /package/dist/{presentations → types/presentations}/HorizonDivider/HorizonDivider.types.d.ts +0 -0
- /package/dist/{presentations → types/presentations}/HorizonDivider/index.d.ts +0 -0
- /package/dist/{presentations → types/presentations}/ModelType/ModelType.d.ts +0 -0
- /package/dist/{presentations → types/presentations}/ModelType/ModelType.styled.d.ts +0 -0
- /package/dist/{presentations → types/presentations}/ModelType/ModelType.types.d.ts +0 -0
- /package/dist/{presentations → types/presentations}/ModelType/index.d.ts +0 -0
- /package/dist/{presentations → types/presentations}/Preview/ModelTypeControl.d.ts +0 -0
- /package/dist/{presentations → types/presentations}/Preview/Preview.d.ts +0 -0
- /package/dist/{presentations → types/presentations}/Preview/Preview.styled.d.ts +0 -0
- /package/dist/{presentations → types/presentations}/Preview/Preview.types.d.ts +0 -0
- /package/dist/{presentations → types/presentations}/Preview/ThresholdControl.d.ts +0 -0
- /package/dist/{presentations → types/presentations}/Preview/index.d.ts +0 -0
- /package/dist/{presentations → types/presentations}/Score/Score.d.ts +0 -0
- /package/dist/{presentations → types/presentations}/Score/Score.types.d.ts +0 -0
- /package/dist/{presentations → types/presentations}/Score/index.d.ts +0 -0
- /package/dist/{presentations → types/presentations}/Statistic/Statistic.d.ts +0 -0
- /package/dist/{presentations → types/presentations}/Statistic/Statistic.styled.d.ts +0 -0
- /package/dist/{presentations → types/presentations}/Statistic/Statistic.types.d.ts +0 -0
- /package/dist/{presentations → types/presentations}/Statistic/index.d.ts +0 -0
- /package/dist/{presentations → types/presentations}/Threshold/Threshold.d.ts +0 -0
- /package/dist/{presentations → types/presentations}/Threshold/Threshold.styled.d.ts +0 -0
- /package/dist/{presentations → types/presentations}/Threshold/Threshold.types.d.ts +0 -0
- /package/dist/{presentations → types/presentations}/Threshold/Threshold.utils.d.ts +0 -0
- /package/dist/{presentations → types/presentations}/Threshold/index.d.ts +0 -0
- /package/dist/{presentations → types/presentations}/ToggleControl/ToggleControl.d.ts +0 -0
- /package/dist/{presentations → types/presentations}/ToggleControl/ToggleControl.styled.d.ts +0 -0
- /package/dist/{presentations → types/presentations}/ToggleControl/ToggleControl.types.d.ts +0 -0
- /package/dist/{presentations → types/presentations}/ToggleControl/index.d.ts +0 -0
- /package/dist/{presentations → types/presentations}/ToggleControlGroup/ToggleControlGroup.d.ts +0 -0
- /package/dist/{presentations → types/presentations}/ToggleControlGroup/ToggleControlGroup.styled.d.ts +0 -0
- /package/dist/{presentations → types/presentations}/ToggleControlGroup/ToggleControlGroup.types.d.ts +0 -0
- /package/dist/{presentations → types/presentations}/ToggleControlGroup/index.d.ts +0 -0
- /package/dist/{presentations → types/presentations}/index.d.ts +0 -0
- /package/dist/{presentations → types/presentations}/presentations.styled.d.ts +0 -0
- /package/dist/{presentations → types/presentations}/presentations.types.d.ts +0 -0
- /package/dist/{systems → types/systems}/drawer.d.ts +0 -0
- /package/dist/{systems → types/systems}/index.d.ts +0 -0
|
@@ -0,0 +1,22 @@
|
|
|
1
|
+
import { jsx as _jsx, Fragment as _Fragment, jsxs as _jsxs } from "react/jsx-runtime";
|
|
2
|
+
import { Autocomplete as MuiAutocomplete, TextField, useTheme } from '@mui/material';
|
|
3
|
+
import { Chip } from '../Chip';
|
|
4
|
+
import { Button } from '../Button';
|
|
5
|
+
import { CircularProgress } from '../Progress';
|
|
6
|
+
import { CloseSmall } from '../../icons';
|
|
7
|
+
import { autocompleteSx, paperSx } from './Autocomplete.styled';
|
|
8
|
+
const LOADING_SPINNER_SIZE = 20;
|
|
9
|
+
function Autocomplete({ placeholder = '', error, helperText, loading = false, noOptionsText, onDelete, onClearButtonClick, disabled, inputValue, sx, ...otherProps }) {
|
|
10
|
+
const theme = useTheme();
|
|
11
|
+
return (_jsx(MuiAutocomplete, { multiple: true, freeSolo: true, disableClearable: true, disabled: disabled, loading: loading, loadingText: noOptionsText, inputValue: inputValue, sx: [autocompleteSx(theme, disabled), ...(Array.isArray(sx) ? sx : [sx])], slotProps: {
|
|
12
|
+
listbox: { style: { maxHeight: '180px', overflow: 'auto' } },
|
|
13
|
+
paper: { sx: paperSx(theme) },
|
|
14
|
+
}, renderValue: (values) => values.map((option) => (_jsx(Chip, { disabled: disabled, label: option, onDelete: onDelete ? () => onDelete(option) : undefined }, option))), renderInput: (params) => (_jsx(TextField, { ...params, variant: "outlined", placeholder: placeholder, error: error, helperText: helperText, slotProps: {
|
|
15
|
+
...params.slotProps,
|
|
16
|
+
input: {
|
|
17
|
+
...params.slotProps?.input,
|
|
18
|
+
endAdornment: (_jsxs(_Fragment, { children: [loading ? (_jsx(CircularProgress, { size: LOADING_SPINNER_SIZE, sx: { color: theme.palette.neutralGrey[45] } })) : null, onClearButtonClick ? (_jsx(Button, { icon: _jsx(CloseSmall, { style: { color: theme.palette.neutralGrey[45] } }), size: "small", variant: "ghost", onClick: onClearButtonClick })) : null] })),
|
|
19
|
+
},
|
|
20
|
+
} })), ...otherProps }));
|
|
21
|
+
}
|
|
22
|
+
export default Autocomplete;
|
|
@@ -0,0 +1,36 @@
|
|
|
1
|
+
const MIN_INPUT_HEIGHT = '44px';
|
|
2
|
+
/** Tokenized styling for the underlying MUI Autocomplete. */
|
|
3
|
+
export const autocompleteSx = (theme, disabled) => ({
|
|
4
|
+
'.MuiAutocomplete-inputRoot': {
|
|
5
|
+
padding: `${theme.spacing(1.5, 3.5)} !important`,
|
|
6
|
+
gap: theme.spacing(1),
|
|
7
|
+
'& .MuiInputBase-input::placeholder': {
|
|
8
|
+
opacity: disabled ? 0.42 : 1,
|
|
9
|
+
},
|
|
10
|
+
'& .MuiAutocomplete-input': {
|
|
11
|
+
height: '100%',
|
|
12
|
+
},
|
|
13
|
+
},
|
|
14
|
+
'.MuiOutlinedInput-root': {
|
|
15
|
+
minHeight: MIN_INPUT_HEIGHT,
|
|
16
|
+
},
|
|
17
|
+
'.MuiInputBase-root.Mui-disabled': {
|
|
18
|
+
border: `1px solid ${theme.palette.neutralGrey[70]}`,
|
|
19
|
+
color: theme.palette.neutralGrey[45],
|
|
20
|
+
backgroundColor: theme.palette.neutralGrey[75],
|
|
21
|
+
pointerEvents: 'none',
|
|
22
|
+
opacity: 0.8,
|
|
23
|
+
},
|
|
24
|
+
'.MuiFormHelperText-root.Mui-error': {
|
|
25
|
+
...theme.typography.body5,
|
|
26
|
+
color: theme.palette.error.main,
|
|
27
|
+
margin: 0,
|
|
28
|
+
paddingLeft: theme.spacing(1),
|
|
29
|
+
},
|
|
30
|
+
});
|
|
31
|
+
/** Tokenized styling for the listbox paper. */
|
|
32
|
+
export const paperSx = (theme) => ({
|
|
33
|
+
backgroundColor: theme.palette.neutralGrey[70],
|
|
34
|
+
borderRadius: theme.spacing(2),
|
|
35
|
+
backgroundImage: 'none',
|
|
36
|
+
});
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export {};
|
|
@@ -5,6 +5,6 @@ import clsx from 'clsx';
|
|
|
5
5
|
import { Container, StyledCheckbox } from './Checkbox.styled';
|
|
6
6
|
import { UncheckedIcon, CheckedIcon, IndeterminateIcon } from './Checkbox.utils';
|
|
7
7
|
const Checkbox = forwardRef(({ value, name, checked, defaultChecked, disabled, required, indeterminate, onChange, onChangeCapture, label, inputProps, inputRef, ...rootProps }, ref) => {
|
|
8
|
-
return (_jsxs(Container, { ...rootProps, className: clsx('checkbox', rootProps.className), component: label != null ? 'label' : 'span', ref: ref, children: [_jsx(StyledCheckbox, { disableRipple: true, icon: _jsx(UncheckedIcon, {}), checkedIcon: _jsx(CheckedIcon, {}), indeterminateIcon: _jsx(IndeterminateIcon, {}), value: value, name: name, checked: indeterminate ? true : checked, defaultChecked: defaultChecked, disabled: disabled, required: required, indeterminate: indeterminate, onChange: onChange, onChangeCapture: onChangeCapture,
|
|
8
|
+
return (_jsxs(Container, { ...rootProps, className: clsx('checkbox', rootProps.className), component: label != null ? 'label' : 'span', ref: ref, children: [_jsx(StyledCheckbox, { disableRipple: true, icon: _jsx(UncheckedIcon, {}), checkedIcon: _jsx(CheckedIcon, {}), indeterminateIcon: _jsx(IndeterminateIcon, {}), value: value, name: name, checked: indeterminate ? true : checked, defaultChecked: defaultChecked, disabled: disabled, required: required, indeterminate: indeterminate, onChange: onChange, onChangeCapture: onChangeCapture, slotProps: { input: { ...inputProps, ref: inputRef } } }), label && (_jsx(Typography, { variant: "body5", sx: { display: 'flex', alignItems: 'center' }, children: label }))] }));
|
|
9
9
|
});
|
|
10
10
|
export default Checkbox;
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export {};
|
|
@@ -1,11 +1,13 @@
|
|
|
1
1
|
import { jsx as _jsx } from "react/jsx-runtime";
|
|
2
|
-
import {
|
|
2
|
+
import { DataGridPro } from '@mui/x-data-grid-pro';
|
|
3
3
|
import DataGridContainer from './DataTable.styled';
|
|
4
4
|
import { Checkbox } from '../Checkbox';
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
5
|
+
const EmptyOverlay = () => _jsx("div", {});
|
|
6
|
+
function DataTable({ rows, columns, slots, ...otherProps }) {
|
|
7
|
+
return (_jsx(DataGridContainer, { children: _jsx(DataGridPro, { rows: rows, columns: columns, columnHeaderHeight: 40, rowHeight: 40, showColumnVerticalBorder: true, showCellVerticalBorder: true, disableColumnMenu: true, hideFooter: true, ...otherProps, slots: {
|
|
8
|
+
noRowsOverlay: EmptyOverlay,
|
|
8
9
|
baseCheckbox: Checkbox,
|
|
9
|
-
|
|
10
|
+
...slots,
|
|
11
|
+
} }) }));
|
|
10
12
|
}
|
|
11
13
|
export default DataTable;
|
|
@@ -6,15 +6,7 @@ const DataGridContainer = styled('div')(({ theme }) => ({
|
|
|
6
6
|
border: 'none',
|
|
7
7
|
overflowY: 'hidden',
|
|
8
8
|
borderRadius: 0,
|
|
9
|
-
'
|
|
10
|
-
borderColor: theme.palette.neutralGrey[80],
|
|
11
|
-
},
|
|
12
|
-
'.MuiDataGrid-withBorder': {
|
|
13
|
-
borderRight: `1px solid ${theme.palette.neutralGrey[80]}`,
|
|
14
|
-
padding: theme.spacing(0, 2),
|
|
15
|
-
height: '40px',
|
|
16
|
-
'&:last-child': { borderRight: 'none' },
|
|
17
|
-
},
|
|
9
|
+
'--DataGrid-rowBorderColor': theme.palette.neutralGrey[80],
|
|
18
10
|
'.MuiDataGrid-row': {
|
|
19
11
|
'&:last-child .MuiDataGrid-cell': {
|
|
20
12
|
borderBottom: `1px solid ${theme.palette.neutralGrey[80]}`,
|
|
@@ -32,16 +24,23 @@ const DataGridContainer = styled('div')(({ theme }) => ({
|
|
|
32
24
|
'&:hover .hover-shown, & .hover-shown.menu-active': { opacity: 1 },
|
|
33
25
|
},
|
|
34
26
|
'.MuiDataGrid-cell': {
|
|
35
|
-
|
|
36
|
-
|
|
27
|
+
fontWeight: theme.typography.body5.fontWeight,
|
|
28
|
+
fontSize: theme.typography.body5.fontSize,
|
|
37
29
|
padding: theme.spacing(0, 2),
|
|
30
|
+
'&.MuiDataGrid-cell--withRightBorder:not(.MuiDataGrid-cellCheckbox)': {
|
|
31
|
+
borderRight: `1px solid ${theme.palette.neutralGrey[80]}`,
|
|
32
|
+
},
|
|
38
33
|
'&:focus, &:focus-within, &:focus-visible': { outline: 'none' },
|
|
39
34
|
},
|
|
40
|
-
'.MuiDataGrid-columnSeparator': { position: 'relative' },
|
|
41
|
-
'.MuiDataGrid-iconSeparator': { display: 'none' },
|
|
42
35
|
'.MuiDataGrid-columnHeader': {
|
|
36
|
+
padding: theme.spacing(0, 2),
|
|
37
|
+
'&.MuiDataGrid-columnHeader--withRightBorder:not(.MuiDataGrid-columnHeaderCheckbox)': {
|
|
38
|
+
borderRight: `1px solid ${theme.palette.neutralGrey[80]}`,
|
|
39
|
+
},
|
|
43
40
|
'&:focus': { outline: 'none' },
|
|
44
41
|
},
|
|
42
|
+
'.MuiDataGrid-columnSeparator': { position: 'relative' },
|
|
43
|
+
'.MuiDataGrid-iconSeparator': { display: 'none' },
|
|
45
44
|
'.MuiDataGrid-columnHeaderTitleContainer': {
|
|
46
45
|
padding: 0,
|
|
47
46
|
'&:focus': { outline: 'none' },
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export {};
|
|
@@ -71,27 +71,23 @@ function DatePicker({ alignment, placeholder, onChange, value, ...props }) {
|
|
|
71
71
|
textField: {
|
|
72
72
|
variant: 'outlined',
|
|
73
73
|
onClick: handleFieldClick,
|
|
74
|
-
|
|
75
|
-
|
|
76
|
-
|
|
77
|
-
|
|
78
|
-
|
|
79
|
-
|
|
80
|
-
|
|
81
|
-
|
|
82
|
-
|
|
83
|
-
'& input': {
|
|
74
|
+
slotProps: {
|
|
75
|
+
input: {
|
|
76
|
+
sx: {
|
|
77
|
+
borderRadius: '8px',
|
|
78
|
+
// According to designer, the width of the date picker should be enforced at 320px
|
|
79
|
+
// when the placement is bottom. that is why we have !important here.
|
|
80
|
+
width: popperPlacement === 'bottom' ? '320px !important' : 'auto',
|
|
81
|
+
borderColor: 'red',
|
|
82
|
+
...theme.typography.body5,
|
|
84
83
|
textTransform: 'lowercase',
|
|
85
84
|
},
|
|
86
|
-
'& ::placeholder': {
|
|
87
|
-
textTransform: 'none',
|
|
88
|
-
},
|
|
89
85
|
},
|
|
90
|
-
|
|
91
|
-
|
|
92
|
-
|
|
86
|
+
htmlInput: {
|
|
87
|
+
placeholder: placeholder || 'mm/dd/yyyy',
|
|
88
|
+
onMouseDown: (e) => {
|
|
93
89
|
e.preventDefault();
|
|
94
|
-
}
|
|
90
|
+
},
|
|
95
91
|
},
|
|
96
92
|
},
|
|
97
93
|
},
|
|
@@ -1,15 +1,33 @@
|
|
|
1
1
|
import { DesktopDatePicker } from '@mui/x-date-pickers/DesktopDatePicker';
|
|
2
2
|
import { styled } from '@mui/material/styles';
|
|
3
|
+
// MUI X v8+ renders the picker field with the accessible DOM structure, so the
|
|
4
|
+
// field root is `.MuiPickersInputBase-root` (not `.MuiInputBase-root`) and the
|
|
5
|
+
// border lives on `.MuiPickersOutlinedInput-notchedOutline` (not a `fieldset`).
|
|
3
6
|
const StyledDatePicker = styled(DesktopDatePicker)(({ theme }) => ({
|
|
4
|
-
'.
|
|
7
|
+
'.MuiPickersInputBase-root': {
|
|
5
8
|
height: '36px',
|
|
6
9
|
backgroundColor: theme.palette.neutralGrey[75],
|
|
7
|
-
'&:hover
|
|
8
|
-
borderColor: theme.palette.neutralGrey[45]
|
|
10
|
+
'&:hover .MuiPickersOutlinedInput-notchedOutline': {
|
|
11
|
+
borderColor: `${theme.palette.neutralGrey[45]} !important`,
|
|
9
12
|
},
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
+
// The library focus rule (`&.Mui-focused:not(.Mui-error) .notchedOutline`)
|
|
14
|
+
// has higher specificity and forces `primary.main` at 2px, so we need
|
|
15
|
+
// `!important` to keep the original teal 1px focus border.
|
|
16
|
+
'&.Mui-focused .MuiPickersOutlinedInput-notchedOutline': {
|
|
17
|
+
borderColor: `${theme.palette.lunitTeal[10]} !important`,
|
|
18
|
+
borderWidth: '1px !important',
|
|
19
|
+
},
|
|
20
|
+
// When the field is empty the hidden input shows its placeholder, so
|
|
21
|
+
// `:placeholder-shown` matches. In that state, stop clicking from
|
|
22
|
+
// selecting/highlighting the placeholder sections — restoring the original
|
|
23
|
+
// single-input behavior where the placeholder was never selectable.
|
|
24
|
+
'&:has(.MuiPickersInputBase-input:placeholder-shown)': {
|
|
25
|
+
'& .MuiPickersInputBase-sectionsContainer': {
|
|
26
|
+
userSelect: 'none',
|
|
27
|
+
},
|
|
28
|
+
'& .MuiPickersInputBase-sectionContent::selection': {
|
|
29
|
+
backgroundColor: 'transparent',
|
|
30
|
+
},
|
|
13
31
|
},
|
|
14
32
|
},
|
|
15
33
|
}));
|
|
@@ -11,8 +11,10 @@ function Dialog({ open, title, icon, closable, isPrompt, cancelText, submitText,
|
|
|
11
11
|
}
|
|
12
12
|
};
|
|
13
13
|
const displayChildren = !text && !!children;
|
|
14
|
-
return (_jsxs(StyledDialog, { open: open, onClose: handleClose, displayChildren: displayChildren, isPrompt: isPrompt, sx: sx, className: "customDialog",
|
|
15
|
-
|
|
14
|
+
return (_jsxs(StyledDialog, { open: open, onClose: handleClose, displayChildren: displayChildren, isPrompt: isPrompt, sx: sx, className: "customDialog", slotProps: {
|
|
15
|
+
paper: {
|
|
16
|
+
className: 'dialogPaper',
|
|
17
|
+
},
|
|
16
18
|
}, children: [_jsxs(StyledHeaderBox, { isPrompt: isPrompt, displayChildren: displayChildren, className: "dialogTitle", children: [_jsx(Box, { children: _jsxs(StyledDialogTitle, { children: [icon && _jsx("div", { className: "dialogIcon", children: icon }), title] }) }), closable && (_jsx(Button, { size: "small", variant: "ghost", label: "", disabled: loading, onClick: (event) => handleClose(event, 'cancel'), icon: _jsx(CloseSmall, { sx: { color: theme.palette.neutralGrey[0] } }) }))] }), !displayChildren && _jsx(StyledDialogContent, { children: text }), displayChildren && (_jsx(StyledDialogContent, { className: "childrenDialog", children: children })), dialogAction && _jsx(StyledDialogActions, { children: dialogAction }), !dialogAction && (cancelText || submitText) && (_jsxs(StyledDialogActions, { children: [cancelText && (_jsx(Button, { label: cancelText, size: buttonSize, disabled: loading, variant: "ghost", onClick: () => handleClose(null, 'cancel') })), submitText && (_jsx(Button, { disabled: disableSubmit || loading, loading: loading, label: submitText, size: buttonSize, sx: loading ? { width: '75px' } : null, onClick: () => handleClose(null, 'submit') }))] }))] }));
|
|
17
19
|
}
|
|
18
20
|
export default Dialog;
|
|
@@ -0,0 +1,6 @@
|
|
|
1
|
+
import { jsx as _jsx } from "react/jsx-runtime";
|
|
2
|
+
import BaseDrawer from './Drawer.styled';
|
|
3
|
+
function Drawer({ children, open = true, wide, variant = 'permanent', ...otherProps }) {
|
|
4
|
+
return (_jsx(BaseDrawer, { variant: variant, open: open, wide: wide, ...otherProps, children: children }));
|
|
5
|
+
}
|
|
6
|
+
export default Drawer;
|
|
@@ -0,0 +1,29 @@
|
|
|
1
|
+
import { Drawer as MuiDrawer, paperClasses } from '@mui/material';
|
|
2
|
+
import { styled } from '@mui/material/styles';
|
|
3
|
+
const DEFAULT_CLOSED_WIDTH = '52px';
|
|
4
|
+
const DEFAULT_OPEN_WIDTH = '240px';
|
|
5
|
+
const DEFAULT_WIDE_WIDTH = '280px';
|
|
6
|
+
const WIDTH_TRANSITION = 'width 0.2s';
|
|
7
|
+
const FORWARDED_EXCLUDES = ['wide', 'closedWidth', 'openWidth', 'wideWidth'];
|
|
8
|
+
const BaseDrawer = styled(MuiDrawer, {
|
|
9
|
+
shouldForwardProp: (prop) => !FORWARDED_EXCLUDES.includes(prop.toString()),
|
|
10
|
+
})(({ theme, open, wide, closedWidth, openWidth, wideWidth }) => {
|
|
11
|
+
const resolvedClosed = closedWidth ?? DEFAULT_CLOSED_WIDTH;
|
|
12
|
+
const resolvedOpen = openWidth ?? DEFAULT_OPEN_WIDTH;
|
|
13
|
+
const resolvedWide = wideWidth ?? DEFAULT_WIDE_WIDTH;
|
|
14
|
+
const width = !open ? resolvedClosed : wide ? resolvedWide : resolvedOpen;
|
|
15
|
+
return {
|
|
16
|
+
width,
|
|
17
|
+
background: theme.palette.neutralGrey[90],
|
|
18
|
+
boxSizing: 'border-box',
|
|
19
|
+
transition: WIDTH_TRANSITION,
|
|
20
|
+
[`& .${paperClasses.root}`]: {
|
|
21
|
+
width,
|
|
22
|
+
background: theme.palette.neutralGrey[90],
|
|
23
|
+
boxSizing: 'border-box',
|
|
24
|
+
transition: WIDTH_TRANSITION,
|
|
25
|
+
overflowY: 'hidden',
|
|
26
|
+
},
|
|
27
|
+
};
|
|
28
|
+
});
|
|
29
|
+
export default BaseDrawer;
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export {};
|
|
@@ -40,7 +40,6 @@ const Dropdown = (({ children, placeholder, value, error, helperMsg, onChange, s
|
|
|
40
40
|
: isOpen,
|
|
41
41
|
// MUI expects a value of '' if undefined :S
|
|
42
42
|
value: value ?? '', MenuProps: MenuProps ?? {
|
|
43
|
-
disablePortal: true,
|
|
44
43
|
sx: {
|
|
45
44
|
'.MuiPaper-root': {
|
|
46
45
|
marginTop: '4px',
|
|
@@ -1,33 +1,69 @@
|
|
|
1
1
|
import { jsx as _jsx } from "react/jsx-runtime";
|
|
2
|
-
import { useContext, useEffect, useRef, useState } from 'react';
|
|
2
|
+
import { forwardRef, useCallback, useContext, useEffect, useRef, useState } from 'react';
|
|
3
3
|
import StyledTypography from './EllipsisTypography.styled';
|
|
4
4
|
import { Tooltip } from '../Tooltip';
|
|
5
5
|
import { ResizeObserverContext } from '../ResizeObserver/ResizeObserverContext';
|
|
6
|
-
|
|
7
|
-
|
|
6
|
+
const MAX_RETRY_COUNT = 10;
|
|
7
|
+
const RETRY_DELAY_MS = 50;
|
|
8
|
+
const DEFAULT_HEIGHT_THRESHOLD = 1;
|
|
9
|
+
const EllipsisTypography = forwardRef(({ children, heightThreshold: heightThresholdProp, tooltipPlacement = 'bottom', maxLines = 1, ...otherProps }, forwardedRef) => {
|
|
10
|
+
const internalRef = useRef(null);
|
|
11
|
+
const retryCountRef = useRef(0);
|
|
12
|
+
const timeoutRef = useRef(null);
|
|
8
13
|
const direction = otherProps.direction || 'row';
|
|
9
|
-
const heightThreshold = heightThresholdProp
|
|
14
|
+
const heightThreshold = heightThresholdProp ?? DEFAULT_HEIGHT_THRESHOLD;
|
|
10
15
|
const [showTooltip, setShowTooltip] = useState(false);
|
|
11
16
|
const { addResizeHandler, removeResizeHandler } = useContext(ResizeObserverContext);
|
|
17
|
+
const heightThresholdRef = useRef(heightThreshold);
|
|
18
|
+
heightThresholdRef.current = heightThreshold;
|
|
19
|
+
const checkOverflow = useCallback((target) => {
|
|
20
|
+
if (!target)
|
|
21
|
+
return;
|
|
22
|
+
const { scrollHeight, clientHeight, scrollWidth, clientWidth } = target;
|
|
23
|
+
// The element may not be laid out yet (all metrics 0); retry until it is.
|
|
24
|
+
if (scrollHeight === 0 && clientHeight === 0 && scrollWidth === 0 && clientWidth === 0) {
|
|
25
|
+
if (retryCountRef.current < MAX_RETRY_COUNT) {
|
|
26
|
+
retryCountRef.current += 1;
|
|
27
|
+
timeoutRef.current = setTimeout(() => checkOverflow(target), RETRY_DELAY_MS);
|
|
28
|
+
}
|
|
29
|
+
return;
|
|
30
|
+
}
|
|
31
|
+
retryCountRef.current = 0;
|
|
32
|
+
const threshold = heightThresholdRef.current;
|
|
33
|
+
// Single-line ellipsis truncates horizontally (scrollHeight === clientHeight), so width must
|
|
34
|
+
// also be compared. Multi-line clamp still overflows vertically.
|
|
35
|
+
const isOverflowing = scrollWidth > clientWidth + threshold || scrollHeight > clientHeight + threshold;
|
|
36
|
+
setShowTooltip(isOverflowing);
|
|
37
|
+
}, []);
|
|
38
|
+
const setRefs = useCallback((node) => {
|
|
39
|
+
internalRef.current = node;
|
|
40
|
+
if (typeof forwardedRef === 'function') {
|
|
41
|
+
forwardedRef(node);
|
|
42
|
+
}
|
|
43
|
+
else if (forwardedRef) {
|
|
44
|
+
forwardedRef.current = node;
|
|
45
|
+
}
|
|
46
|
+
}, [forwardedRef]);
|
|
12
47
|
useEffect(() => {
|
|
13
|
-
|
|
48
|
+
const target = internalRef.current;
|
|
49
|
+
if (!target)
|
|
14
50
|
return;
|
|
15
|
-
const
|
|
16
|
-
const checkOverflow = () => {
|
|
17
|
-
const isOverflowing = target.scrollHeight - target.clientHeight > heightThreshold;
|
|
18
|
-
setShowTooltip(isOverflowing);
|
|
19
|
-
};
|
|
51
|
+
const run = () => checkOverflow(target);
|
|
20
52
|
if (addResizeHandler) {
|
|
21
|
-
addResizeHandler(target,
|
|
53
|
+
addResizeHandler(target, run);
|
|
22
54
|
}
|
|
23
|
-
|
|
55
|
+
run();
|
|
24
56
|
return () => {
|
|
57
|
+
if (timeoutRef.current) {
|
|
58
|
+
clearTimeout(timeoutRef.current);
|
|
59
|
+
}
|
|
25
60
|
if (removeResizeHandler) {
|
|
26
61
|
removeResizeHandler(target);
|
|
27
62
|
}
|
|
28
63
|
};
|
|
29
|
-
}, [
|
|
30
|
-
const TypographyComponent = (_jsx(StyledTypography, { ...otherProps, ref:
|
|
64
|
+
}, [children, maxLines, checkOverflow, addResizeHandler, removeResizeHandler]);
|
|
65
|
+
const TypographyComponent = (_jsx(StyledTypography, { ...otherProps, ref: setRefs, direction: direction, maxLines: maxLines, children: children }));
|
|
31
66
|
return showTooltip ? (_jsx(Tooltip, { title: children, placement: tooltipPlacement, size: "small", children: TypographyComponent })) : (TypographyComponent);
|
|
32
|
-
}
|
|
67
|
+
});
|
|
68
|
+
EllipsisTypography.displayName = 'EllipsisTypography';
|
|
33
69
|
export default EllipsisTypography;
|
|
@@ -5,8 +5,11 @@ export const MenuContext = createContext({
|
|
|
5
5
|
size: 'small',
|
|
6
6
|
showCheck: false,
|
|
7
7
|
});
|
|
8
|
-
const Menu = forwardRef(({ subheader, size = 'small', showCheck = false, children, ...props }, ref) => {
|
|
8
|
+
const Menu = forwardRef(({ subheader, size = 'small', showCheck = false, children, PaperProps: paperProps, slotProps, ...props }, ref) => {
|
|
9
9
|
const contextValue = useMemo(() => ({ size, showCheck }), [size, showCheck]);
|
|
10
|
-
|
|
10
|
+
const mergedSlotProps = paperProps
|
|
11
|
+
? { ...slotProps, paper: { ...paperProps, ...slotProps?.paper } }
|
|
12
|
+
: slotProps;
|
|
13
|
+
return (_jsx(MenuContext.Provider, { value: contextValue, children: _jsxs(StyledMenu, { size: size, ref: ref, slotProps: mergedSlotProps, ...props, children: [subheader && _jsx(StyledListSubheader, { children: subheader }), children] }) }));
|
|
11
14
|
});
|
|
12
15
|
export default Menu;
|
|
@@ -11,9 +11,12 @@ const NoMatchContainer = () => {
|
|
|
11
11
|
display: 'flex',
|
|
12
12
|
flexDirection: 'column',
|
|
13
13
|
alignItems: 'center',
|
|
14
|
-
}, children: [_jsx(Typography, { variant: "h7",
|
|
14
|
+
}, children: [_jsx(Typography, { variant: "h7", sx: {
|
|
15
|
+
color: "neutralGrey.25",
|
|
15
16
|
mt: '100px',
|
|
16
|
-
mb: '16px'
|
|
17
|
-
}, children: "Nothing matches your search" }), _jsx(Typography, { variant: "h9",
|
|
17
|
+
mb: '16px'
|
|
18
|
+
}, children: "Nothing matches your search" }), _jsx(Typography, { variant: "h9", sx: {
|
|
19
|
+
color: "neutralGrey.25"
|
|
20
|
+
}, children: "Please try again!" })] }) }));
|
|
18
21
|
};
|
|
19
22
|
export default NoMatchContainer;
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
import { Popover as MuiPopover } from '@mui/material';
|
|
2
|
+
import { styled } from '@mui/material/styles';
|
|
3
|
+
const StyledPopover = styled(MuiPopover)(({ theme }) => ({
|
|
4
|
+
'& .MuiPopover-paper': {
|
|
5
|
+
backgroundColor: theme.palette.neutralGrey[70],
|
|
6
|
+
borderRadius: theme.spacing(2),
|
|
7
|
+
backgroundImage: 'none',
|
|
8
|
+
},
|
|
9
|
+
}));
|
|
10
|
+
export default StyledPopover;
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export {};
|
|
@@ -5,7 +5,7 @@ const BaseLinearProgress = styled(MuiLinearProgress, {
|
|
|
5
5
|
width: '100%',
|
|
6
6
|
height,
|
|
7
7
|
backgroundColor: 'transparent',
|
|
8
|
-
[`& .${linearProgressClasses.
|
|
8
|
+
[`& .${linearProgressClasses.bar}`]: {
|
|
9
9
|
backgroundColor: barColor || theme.palette.lunitTeal[40],
|
|
10
10
|
},
|
|
11
11
|
}));
|
|
@@ -4,6 +4,6 @@ import clsx from 'clsx';
|
|
|
4
4
|
import { forwardRef } from 'react';
|
|
5
5
|
import { Container, StyledRadio, UncheckedIcon, CheckedIcon } from './Radio.styled';
|
|
6
6
|
const Radio = forwardRef(({ value, name, checked, defaultChecked, disabled, required, onChange, onChangeCapture, inputProps, inputRef, label, ...rootProps }, ref) => {
|
|
7
|
-
return (_jsxs(Container, { ...rootProps, className: clsx('radio', rootProps.className), component: label != null ? 'label' : 'span', ref: ref, children: [_jsx(StyledRadio, { disableRipple: true, icon: _jsx(UncheckedIcon, {}), checkedIcon: _jsx(CheckedIcon, {}), value: value, name: name, checked: checked, defaultChecked: defaultChecked, disabled: disabled, required: required, onChange: onChange, onChangeCapture: onChangeCapture,
|
|
7
|
+
return (_jsxs(Container, { ...rootProps, className: clsx('radio', rootProps.className), component: label != null ? 'label' : 'span', ref: ref, children: [_jsx(StyledRadio, { disableRipple: true, icon: _jsx(UncheckedIcon, {}), checkedIcon: _jsx(CheckedIcon, {}), value: value, name: name, checked: checked, defaultChecked: defaultChecked, disabled: disabled, required: required, onChange: onChange, onChangeCapture: onChangeCapture, slotProps: { input: { ...inputProps, ref: inputRef } } }), label && (_jsx(Typography, { variant: "body_m1", sx: { display: 'flex', alignItems: 'center' }, children: label }))] }));
|
|
8
8
|
});
|
|
9
9
|
export default Radio;
|
|
@@ -12,6 +12,6 @@ const TabbedPanel = ({ tabs, size = 'medium', buttonVariant = 'normal', activate
|
|
|
12
12
|
// If prop is not explicitly set, use standard when there is only one tab
|
|
13
13
|
// This means by default, it will left-align when there is only one tab.
|
|
14
14
|
const menuVariantSetting = menuVariant || tabs.length < 2 ? 'standard' : 'fullWidth';
|
|
15
|
-
return (_jsx(Box, { children: _jsxs(TabContext, { value: activatedTab, children: [_jsx(BaseTabMenu, { size: size, value: activatedTab, onChange: handleChange, variant: menuVariantSetting, buttonVariant: buttonVariant,
|
|
15
|
+
return (_jsx(Box, { children: _jsxs(TabContext, { value: activatedTab, children: [_jsx(BaseTabMenu, { size: size, value: activatedTab, onChange: handleChange, variant: menuVariantSetting, buttonVariant: buttonVariant, slotProps: { indicator: { sx: { display: 'none' } } }, ...TabsProps, children: tabs.map((t) => (_jsx(BaseTab, { buttonVariant: buttonVariant, size: size, disabled: t.disabled, disableTouchRipple: true, disableRipple: true, label: _jsx(Typography, { variant: "body_sb1", children: t.value }), value: t.value, ...TabProps }, t.value))) }), tabs.map((t) => (_jsx(BaseTabPanel, { value: t.value, ...TabPanelProps, children: t.element }, t.value)))] }) }));
|
|
16
16
|
};
|
|
17
17
|
export default TabbedPanel;
|
|
@@ -7,10 +7,13 @@ const Toggle = ({ value, name, checked, defaultChecked, disabled, required, onCh
|
|
|
7
7
|
return (_jsxs(Container, { ...rootProps, className: clsx('toggle', { 'is-disabled': disabled }, rootProps.className), component: label != null ? 'label' : 'span', children: [_jsx(ToggleComponent, { disableRipple: true, value: true, name: name,
|
|
8
8
|
// indeterminate가 true인 Toggle을 클릭했을 때
|
|
9
9
|
// 발생하는 change event target의 checked property의 일관성을 보장함
|
|
10
|
-
checked: indeterminate ? true : checked, defaultChecked: defaultChecked, disabled: disabled, required: required, onChange: onChange, onChangeCapture: onChangeCapture,
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
10
|
+
checked: indeterminate ? true : checked, defaultChecked: defaultChecked, disabled: disabled, required: required, onChange: onChange, onChangeCapture: onChangeCapture, slotProps: { input: { ...inputProps, ref: inputRef } }, focusRipple: false, toggleColor: toggleColor }), label && (_jsx(Typography, { variant: "body_m1", sx: [{
|
|
11
|
+
display: 'flex',
|
|
12
|
+
alignItems: 'center'
|
|
13
|
+
}, labelPlacement === 'left' ? {
|
|
14
|
+
order: -1
|
|
15
|
+
} : {
|
|
16
|
+
order: 1
|
|
17
|
+
}], children: label }))] }));
|
|
15
18
|
};
|
|
16
19
|
export default Toggle;
|
|
@@ -3,8 +3,8 @@ import { Box, Typography } from '@mui/material';
|
|
|
3
3
|
import { forwardRef } from 'react';
|
|
4
4
|
import BaseTooltip from './Tooltip.styled';
|
|
5
5
|
const Tooltip = forwardRef(({ icon, title, children, size = 'small', placement = 'bottom', noPadding = false, ...otherProps }, ref) => {
|
|
6
|
-
return (_jsx(BaseTooltip, { ref: ref, arrow: true, size: size,
|
|
7
|
-
|
|
6
|
+
return (_jsx(BaseTooltip, { ref: ref, arrow: true, size: size, slotProps: {
|
|
7
|
+
popper: {
|
|
8
8
|
modifiers: [
|
|
9
9
|
{
|
|
10
10
|
name: 'offset',
|
|
@@ -36,7 +36,7 @@ const UploadFile = ({ file, onCancel, onRetry }) => {
|
|
|
36
36
|
marginRight: '16px',
|
|
37
37
|
overflow: 'hidden',
|
|
38
38
|
textOverflow: 'ellipsis',
|
|
39
|
-
}, children: file.name }), progress < 100 && (_jsx(Tooltip, { title: "Cancel", children: _jsx(Box, { children: _jsx(Button, { onClick: () => onCancel && onCancel(file.id), variant: "ghost", color: "secondary", icon: _jsx(Close, { style: { color: theme.palette.neutralGrey[40] } }) }) }) })), progress === 100 && file.meta.postProcessComplete && (_jsx(Tooltip, { title: "Done", children: _jsx(Box, { children: _jsx(Button, { variant: "ghost", icon: _jsx(Success, {}) }) }) }))] })), file.meta.errorMessage && (_jsxs(_Fragment, { children: [_jsx(Typography, { variant: "body5", sx: {
|
|
39
|
+
}, children: file.name }), progress < 100 && (_jsx(Tooltip, { title: "Cancel", children: _jsx(Box, { children: _jsx(Button, { onClick: () => onCancel && onCancel(file.id), variant: "ghost", color: "secondary", icon: _jsx(Close, { style: { color: theme.palette.neutralGrey[40] } }) }) }) })), progress === 100 && !!file.meta.postProcessComplete && (_jsx(Tooltip, { title: "Done", children: _jsx(Box, { children: _jsx(Button, { variant: "ghost", icon: _jsx(Success, {}) }) }) }))] })), !!file.meta.errorMessage && (_jsxs(_Fragment, { children: [_jsx(Typography, { variant: "body5", sx: {
|
|
40
40
|
width: '79px',
|
|
41
41
|
marginRight: '16px',
|
|
42
42
|
whiteSpace: 'nowrap',
|
|
@@ -59,7 +59,7 @@ const UploadFile = ({ file, onCancel, onRetry }) => {
|
|
|
59
59
|
}
|
|
60
60
|
}, icon: mouseOnErrorIconButton ? (_jsx(RefreshLeft, { style: { color: theme.palette.neutralGrey[0] } })) : (_jsx(Warning16, { style: { color: theme.palette.red[5] } })), variant: "ghost", color: "secondary", sx: {
|
|
61
61
|
cursor: file.meta.retry ? 'pointer' : 'default',
|
|
62
|
-
} }) }) })] })), !file.meta.errorMessage && file.meta.postProcessConverting && (_jsxs(Typography, { variant: "body5", sx: {
|
|
62
|
+
} }) }) })] })), !file.meta.errorMessage && !!file.meta.postProcessConverting && (_jsxs(Typography, { variant: "body5", sx: {
|
|
63
63
|
flexGrow: 3,
|
|
64
64
|
flexShrink: 0,
|
|
65
65
|
flexBasis: 'auto',
|
|
@@ -83,8 +83,10 @@ const UploadManager = ({ title, subTitle, files, onClose, onCancel, onRetry, })
|
|
|
83
83
|
bottom: '20px',
|
|
84
84
|
right: '20px',
|
|
85
85
|
zIndex: 10,
|
|
86
|
-
}, children: _jsxs(StyledPaper, { elevation: 1, children: [_jsxs(StyledToolbar, { children: [_jsx(Typography, { variant: "h9", children: title }), _jsx(Typography, { variant: "body1", sx: { marginLeft: '8px' }, children: subTitle }), _jsxs(StyledToolbarButtonContainer, { children: [_jsx(Tooltip, { title: expanded ? 'Minimize' : 'Maximize', children: _jsx(Box, { children: _jsx(Button, { onClick: handleExpandClick, variant: "ghost", color: "secondary", icon: _jsx(ArrowUp, { style: { color: theme.palette.neutralGrey[40] } }), size: "small", sx: {
|
|
87
|
-
|
|
88
|
-
|
|
86
|
+
}, children: _jsxs(StyledPaper, { elevation: 1, children: [_jsxs(StyledToolbar, { children: [_jsx(Typography, { variant: "h9", children: title }), _jsx(Typography, { variant: "body1", sx: { marginLeft: '8px' }, children: subTitle }), _jsxs(StyledToolbarButtonContainer, { children: [_jsx(Tooltip, { title: expanded ? 'Minimize' : 'Maximize', children: _jsx(Box, { children: _jsx(Button, { onClick: handleExpandClick, variant: "ghost", color: "secondary", icon: _jsx(ArrowUp, { style: { color: theme.palette.neutralGrey[40] } }), size: "small", sx: [expanded ? {
|
|
87
|
+
transform: 'rotate(0deg)'
|
|
88
|
+
} : {
|
|
89
|
+
transform: 'rotate(180deg)'
|
|
90
|
+
}] }) }) }), _jsx(Tooltip, { title: "Close", children: _jsx(Box, { children: _jsx(Button, { onClick: onClose, variant: "ghost", color: "secondary", icon: _jsx(Close, { style: { color: theme.palette.neutralGrey[40] } }), size: "small" }) }) })] })] }), expanded && _jsx(Divider, { orientation: "horizontal" }), _jsx(StyledCollapse, { in: expanded, timeout: "auto", unmountOnExit: true, children: files.map((download, index) => (_jsxs(Fragment, { children: [_jsx(UploadFile, { file: download, onCancel: onCancel, onRetry: onRetry }), index !== files.length - 1 && _jsx(Divider, { orientation: "horizontal" })] }, download.id))) })] }) }));
|
|
89
91
|
};
|
|
90
92
|
export default UploadManager;
|
package/dist/components/index.js
CHANGED
|
@@ -1,16 +1,20 @@
|
|
|
1
1
|
export * from './Alert';
|
|
2
|
+
export * from './Autocomplete';
|
|
2
3
|
export * from './Button';
|
|
3
4
|
export * from './Card';
|
|
4
5
|
export * from './Checkbox';
|
|
5
6
|
export * from './Chip';
|
|
7
|
+
export * from './Collapse';
|
|
6
8
|
export * from './DataTable';
|
|
7
9
|
export * from './DatePicker';
|
|
8
10
|
export * from './Dialog';
|
|
9
11
|
export * from './Divider';
|
|
12
|
+
export * from './Drawer';
|
|
10
13
|
export * from './Dropdown';
|
|
11
14
|
export * from './EllipsisTypography';
|
|
12
15
|
export * from './FileDnDZone';
|
|
13
16
|
export * from './List';
|
|
17
|
+
export * from './Popover';
|
|
14
18
|
export * from './LoadingIndicator';
|
|
15
19
|
export * from './Menu';
|
|
16
20
|
export * from './Pagination';
|