@lunit/oui 2.4.18 → 3.0.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/assets/ic-ellipse-exclude-outlined-20px.js +3 -0
- package/dist/assets/ic-ellipse-include-outlined-20px.js +3 -0
- package/dist/assets/ic-rectangle-exclude-outlined-20px.js +3 -0
- package/dist/assets/ic-rectangle-include-outlined-20px.js +3 -0
- package/dist/assets/index.js +4 -0
- package/dist/components/Checkbox/Checkbox.js +1 -1
- package/dist/components/DataTable/DataTable.js +2 -2
- package/dist/components/DataTable/DataTable.styled.js +12 -13
- 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/Dropdown/Dropdown.js +0 -1
- 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/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/foundations/palette.js +4 -0
- package/dist/icons/EllipseExclude/index.js +13 -0
- package/dist/icons/EllipseInclude/index.js +13 -0
- package/dist/icons/RectangleExclude/index.js +13 -0
- package/dist/icons/RectangleInclude/index.js +13 -0
- package/dist/icons/index.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/assets/ic-ellipse-exclude-outlined-20px.d.ts +3 -0
- package/dist/types/assets/ic-ellipse-include-outlined-20px.d.ts +3 -0
- package/dist/types/assets/ic-rectangle-exclude-outlined-20px.d.ts +3 -0
- package/dist/types/assets/ic-rectangle-include-outlined-20px.d.ts +3 -0
- package/dist/{assets → types/assets}/index.d.ts +4 -0
- package/dist/{components → types/components}/Checkbox/Checkbox.types.d.ts +2 -2
- package/dist/types/components/DataTable/DataTable.d.ts +3 -0
- package/dist/{components → types/components}/DatePicker/DatePicker.types.d.ts +1 -1
- 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/{components → types/components}/Menu/Menu.types.d.ts +3 -1
- 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/{foundations → types/foundations}/typography.d.ts +2 -2
- package/dist/types/icons/EllipseExclude/index.d.ts +12 -0
- package/dist/types/icons/EllipseInclude/index.d.ts +12 -0
- package/dist/types/icons/RectangleExclude/index.d.ts +12 -0
- package/dist/types/icons/RectangleInclude/index.d.ts +12 -0
- package/dist/{icons → types/icons}/index.d.ts +4 -0
- package/dist/{theme.d.ts → types/theme.d.ts} +1 -0
- package/docs/COMPONENTS.md +121 -0
- package/docs/TOKENS.md +60 -0
- package/llms.txt +58 -0
- package/package.json +31 -22
- package/dist/components/DataTable/DataTable.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-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-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/{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}/DataTable/index.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.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/{components → types/components}/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}/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}/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/{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
|
@@ -10,6 +10,6 @@ export interface CheckboxProps extends Omit<BoxProps<'span'>, 'onChange' | 'onCh
|
|
|
10
10
|
onChange?: MuiCheckboxProps['onChange'];
|
|
11
11
|
onChangeCapture?: MuiCheckboxProps['onChangeCapture'];
|
|
12
12
|
label?: string;
|
|
13
|
-
inputProps?:
|
|
14
|
-
inputRef?:
|
|
13
|
+
inputProps?: React.InputHTMLAttributes<HTMLInputElement>;
|
|
14
|
+
inputRef?: React.Ref<HTMLInputElement>;
|
|
15
15
|
}
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import type { DatePickerProps as MuiDatePickerProps } from '@mui/x-date-pickers/DatePicker';
|
|
2
2
|
export type DatePickerAlignment = 'left' | 'center' | 'right';
|
|
3
|
-
export interface DatePickerProps extends MuiDatePickerProps
|
|
3
|
+
export interface DatePickerProps extends MuiDatePickerProps {
|
|
4
4
|
alignment?: DatePickerAlignment;
|
|
5
5
|
placeholder?: string;
|
|
6
6
|
}
|
|
@@ -7,6 +7,7 @@ type BaseDropdownProps<T = unknown> = SelectProps<T>;
|
|
|
7
7
|
interface DropdownProps<T = unknown> extends Omit<BaseDropdownProps<T>, 'IconComponent' | 'error' | 'sx' | 'style'> {
|
|
8
8
|
error?: string;
|
|
9
9
|
helperMsg?: string;
|
|
10
|
+
placeholder?: string;
|
|
10
11
|
ContainerProps?: BoxProps;
|
|
11
12
|
sx?: SelectProps['sx'];
|
|
12
13
|
style?: SelectProps['style'];
|
|
@@ -1,10 +1,9 @@
|
|
|
1
1
|
import type { TypographyProps } from '@mui/system';
|
|
2
2
|
import type { BaseDropdownProps } from '../Dropdown/Dropdown.types';
|
|
3
|
-
|
|
3
|
+
type BaseIconDropdownProps = BaseDropdownProps & {
|
|
4
4
|
isToggled?: boolean;
|
|
5
|
-
}
|
|
6
|
-
|
|
7
|
-
}
|
|
5
|
+
};
|
|
6
|
+
type IconDropdownProps = BaseIconDropdownProps;
|
|
8
7
|
interface PlaceholderProps extends TypographyProps {
|
|
9
8
|
disabled?: boolean;
|
|
10
9
|
}
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import type { MenuProps as MuiMenuProps } from '@mui/material';
|
|
1
|
+
import type { MenuProps as MuiMenuProps, PaperProps } from '@mui/material';
|
|
2
2
|
export type MenuSize = 'small' | 'medium';
|
|
3
3
|
export interface MenuProps extends StyledMenuProps {
|
|
4
4
|
size?: MenuSize;
|
|
@@ -7,6 +7,8 @@ export interface MenuProps extends StyledMenuProps {
|
|
|
7
7
|
}
|
|
8
8
|
export interface StyledMenuProps extends MuiMenuProps {
|
|
9
9
|
size?: MenuSize;
|
|
10
|
+
/** @deprecated Use slotProps={{ paper: ... }} instead */
|
|
11
|
+
PaperProps?: PaperProps;
|
|
10
12
|
}
|
|
11
13
|
export interface MenuContextValue {
|
|
12
14
|
size: MenuSize;
|
|
@@ -9,6 +9,6 @@ export interface RadioProps extends Omit<BoxProps<'span'>, 'onChange' | 'onChang
|
|
|
9
9
|
onChange?: MuiRadioProps['onChange'];
|
|
10
10
|
onChangeCapture?: MuiRadioProps['onChangeCapture'];
|
|
11
11
|
label?: string;
|
|
12
|
-
inputProps?:
|
|
13
|
-
inputRef?:
|
|
12
|
+
inputProps?: React.InputHTMLAttributes<HTMLInputElement>;
|
|
13
|
+
inputRef?: React.Ref<HTMLInputElement>;
|
|
14
14
|
}
|
|
@@ -8,8 +8,8 @@ export interface ToggleProps extends Omit<BoxProps<'span'>, 'onChange' | 'onChan
|
|
|
8
8
|
required?: MuiSwitchProps['required'];
|
|
9
9
|
onChange?: MuiSwitchProps['onChange'];
|
|
10
10
|
onChangeCapture?: MuiSwitchProps['onChangeCapture'];
|
|
11
|
-
inputProps?:
|
|
12
|
-
inputRef?:
|
|
11
|
+
inputProps?: React.InputHTMLAttributes<HTMLInputElement>;
|
|
12
|
+
inputRef?: React.Ref<HTMLInputElement>;
|
|
13
13
|
indeterminate?: boolean;
|
|
14
14
|
label?: string;
|
|
15
15
|
labelPlacement?: 'left' | 'right';
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import {
|
|
1
|
+
import type { TypographyVariantsOptions } from '@mui/material/styles';
|
|
2
2
|
export interface LunitTypographyVariants {
|
|
3
3
|
h7: React.CSSProperties;
|
|
4
4
|
h8: React.CSSProperties;
|
|
@@ -153,5 +153,5 @@ declare module '@mui/material/Typography' {
|
|
|
153
153
|
interface TypographyPropsVariantOverrides extends LunitTypographyPropsVariantOverrides {
|
|
154
154
|
}
|
|
155
155
|
}
|
|
156
|
-
declare const typographyOptions:
|
|
156
|
+
declare const typographyOptions: TypographyVariantsOptions;
|
|
157
157
|
export default typographyOptions;
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
import { SvgIconProps } from '@mui/material/SvgIcon';
|
|
2
|
+
declare const variants: readonly ["outlined"];
|
|
3
|
+
type Variant = (typeof variants)[number];
|
|
4
|
+
type IconProps = SvgIconProps & {
|
|
5
|
+
variant?: Variant;
|
|
6
|
+
};
|
|
7
|
+
declare const EllipseExclude: {
|
|
8
|
+
({ variant, ...rest }: IconProps): import("react/jsx-runtime").JSX.Element | null;
|
|
9
|
+
displayName: string;
|
|
10
|
+
variants: readonly ["outlined"];
|
|
11
|
+
};
|
|
12
|
+
export default EllipseExclude;
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
import { SvgIconProps } from '@mui/material/SvgIcon';
|
|
2
|
+
declare const variants: readonly ["outlined"];
|
|
3
|
+
type Variant = (typeof variants)[number];
|
|
4
|
+
type IconProps = SvgIconProps & {
|
|
5
|
+
variant?: Variant;
|
|
6
|
+
};
|
|
7
|
+
declare const EllipseInclude: {
|
|
8
|
+
({ variant, ...rest }: IconProps): import("react/jsx-runtime").JSX.Element | null;
|
|
9
|
+
displayName: string;
|
|
10
|
+
variants: readonly ["outlined"];
|
|
11
|
+
};
|
|
12
|
+
export default EllipseInclude;
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
import { SvgIconProps } from '@mui/material/SvgIcon';
|
|
2
|
+
declare const variants: readonly ["outlined"];
|
|
3
|
+
type Variant = (typeof variants)[number];
|
|
4
|
+
type IconProps = SvgIconProps & {
|
|
5
|
+
variant?: Variant;
|
|
6
|
+
};
|
|
7
|
+
declare const RectangleExclude: {
|
|
8
|
+
({ variant, ...rest }: IconProps): import("react/jsx-runtime").JSX.Element | null;
|
|
9
|
+
displayName: string;
|
|
10
|
+
variants: readonly ["outlined"];
|
|
11
|
+
};
|
|
12
|
+
export default RectangleExclude;
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
import { SvgIconProps } from '@mui/material/SvgIcon';
|
|
2
|
+
declare const variants: readonly ["outlined"];
|
|
3
|
+
type Variant = (typeof variants)[number];
|
|
4
|
+
type IconProps = SvgIconProps & {
|
|
5
|
+
variant?: Variant;
|
|
6
|
+
};
|
|
7
|
+
declare const RectangleInclude: {
|
|
8
|
+
({ variant, ...rest }: IconProps): import("react/jsx-runtime").JSX.Element | null;
|
|
9
|
+
displayName: string;
|
|
10
|
+
variants: readonly ["outlined"];
|
|
11
|
+
};
|
|
12
|
+
export default RectangleInclude;
|
|
@@ -3,6 +3,8 @@ export { default as CloseLarge } from './CloseLarge';
|
|
|
3
3
|
export { default as CloseSmall } from './CloseSmall';
|
|
4
4
|
export { default as DownloadPdf } from './DownloadPdf';
|
|
5
5
|
export { default as Ellipse } from './Ellipse';
|
|
6
|
+
export { default as EllipseExclude } from './EllipseExclude';
|
|
7
|
+
export { default as EllipseInclude } from './EllipseInclude';
|
|
6
8
|
export { default as FilterNoti } from './FilterNoti';
|
|
7
9
|
export { default as HideLarge } from './HideLarge';
|
|
8
10
|
export { default as HideSmall } from './HideSmall';
|
|
@@ -10,6 +12,8 @@ export { default as InformationLarge } from './InformationLarge';
|
|
|
10
12
|
export { default as InformationSmall } from './InformationSmall';
|
|
11
13
|
export { default as Manufacturer } from './Manufacturer';
|
|
12
14
|
export { default as Rectangle } from './Rectangle';
|
|
15
|
+
export { default as RectangleExclude } from './RectangleExclude';
|
|
16
|
+
export { default as RectangleInclude } from './RectangleInclude';
|
|
13
17
|
export { default as RefreshLeft } from './RefreshLeft';
|
|
14
18
|
export { default as RefreshRight } from './RefreshRight';
|
|
15
19
|
export { default as ShowLarge } from './ShowLarge';
|
|
@@ -0,0 +1,121 @@
|
|
|
1
|
+
# @lunit/oui — Component Catalog
|
|
2
|
+
|
|
3
|
+
A scannable index of components for AI/developers. Each entry: **what it is · key props · example**.
|
|
4
|
+
The exact props are defined by each component's `*.types.ts` (source of truth). When you add a new component, add a line here too.
|
|
5
|
+
|
|
6
|
+
## Install & Setup
|
|
7
|
+
|
|
8
|
+
```bash
|
|
9
|
+
npm i --save @lunit/oui
|
|
10
|
+
```
|
|
11
|
+
|
|
12
|
+
Wrap your app root with `ThemeProvider` to inject the OUI theme so every component renders correctly.
|
|
13
|
+
|
|
14
|
+
```tsx
|
|
15
|
+
import { ThemeProvider, CssBaseline } from '@mui/material';
|
|
16
|
+
import { theme } from '@lunit/oui';
|
|
17
|
+
|
|
18
|
+
<ThemeProvider theme={theme}>
|
|
19
|
+
<CssBaseline />
|
|
20
|
+
<App />
|
|
21
|
+
</ThemeProvider>
|
|
22
|
+
```
|
|
23
|
+
|
|
24
|
+
## Import paths
|
|
25
|
+
|
|
26
|
+
```ts
|
|
27
|
+
import { Button, Dialog, TextField } from '@lunit/oui'; // components
|
|
28
|
+
import { ArrowDoubleDown } from '@lunit/oui/icons'; // icons
|
|
29
|
+
import { theme, palette, typography, spacing } from '@lunit/oui'; // theme & tokens
|
|
30
|
+
```
|
|
31
|
+
|
|
32
|
+
❌ Do not import Button/TextField etc. directly from `@mui/material`. ✅ Prefer the equivalent `@lunit/oui` component.
|
|
33
|
+
|
|
34
|
+
---
|
|
35
|
+
|
|
36
|
+
## Components
|
|
37
|
+
|
|
38
|
+
### Input / Form
|
|
39
|
+
|
|
40
|
+
| Component | Purpose | Key props |
|
|
41
|
+
|---|---|---|
|
|
42
|
+
| **Button** | Trigger actions. Supports label/icon buttons and loading | `variant: 'contained' \| 'ghost' \| 'outlined'`, `color: 'primary' \| 'secondary' \| 'error'`, `size: 'small' \| 'medium' \| 'large'`, `label`, `icon`, `loading` |
|
|
43
|
+
| **TextField** / **BaseTextField** | Text input | extends MUI TextField |
|
|
44
|
+
| **Checkbox** | Checkbox | — |
|
|
45
|
+
| **Radio** | Radio button | — |
|
|
46
|
+
| **Toggle** | on/off switch | — |
|
|
47
|
+
| **Dropdown** | Selection dropdown | — |
|
|
48
|
+
| **DatePicker** | Date selection (based on `@mui/x-date-pickers`) | — |
|
|
49
|
+
| **FileDnDZone** | File drag-and-drop area | — |
|
|
50
|
+
| **UploadManager** | Upload progress/management UI | — |
|
|
51
|
+
|
|
52
|
+
### Display / Layout
|
|
53
|
+
|
|
54
|
+
| Component | Purpose | Key props |
|
|
55
|
+
|---|---|---|
|
|
56
|
+
| **Card** | Content card container | `size: 'small' \| 'large'` |
|
|
57
|
+
| **Divider** | Separator line | `orientation: 'horizontal' \| 'vertical'` |
|
|
58
|
+
| **List** | List | `size: 'small' \| 'medium' \| 'large'` |
|
|
59
|
+
| **DataTable** | Data table (based on `@mui/x-data-grid`) | — |
|
|
60
|
+
| **EllipsisTypography** | Text with ellipsis (...) truncation | — |
|
|
61
|
+
| **ProductLabel** | Product label badge | — |
|
|
62
|
+
| **NoMatchContainer** | Empty state (e.g. no search results) | — |
|
|
63
|
+
|
|
64
|
+
### Feedback / Overlay
|
|
65
|
+
|
|
66
|
+
| Component | Purpose | Key props |
|
|
67
|
+
|---|---|---|
|
|
68
|
+
| **Alert** | Inline notification (info/success/error/warning) | — |
|
|
69
|
+
| **Dialog** | Modal dialog | — |
|
|
70
|
+
| **Tooltip** | Tooltip | `size: 'small' \| 'large'`, `placement` |
|
|
71
|
+
| **Progress** | Progress indicator (Circular/Linear) | `CircularProgress`: `size`, `circleColor` |
|
|
72
|
+
| **LoadingIndicator** | Loading spinner | — |
|
|
73
|
+
| **Chip** | Chip/tag | `preset` (ChipsPreset) |
|
|
74
|
+
|
|
75
|
+
### Navigation / Structure
|
|
76
|
+
|
|
77
|
+
| Component | Purpose | Key props |
|
|
78
|
+
|---|---|---|
|
|
79
|
+
| **Menu** | Menu | `size: 'small' \| 'medium'` |
|
|
80
|
+
| **Pagination** | Pagination | `size: number` |
|
|
81
|
+
| **Stepper** | Step progress indicator | — |
|
|
82
|
+
| **TabbedPanel** | Tab panel | `size: 'small' \| 'medium'`, `variant: 'normal' \| 'toggle'` |
|
|
83
|
+
|
|
84
|
+
### Utility
|
|
85
|
+
|
|
86
|
+
| Component | Purpose |
|
|
87
|
+
|---|---|
|
|
88
|
+
| **ResizeObserver** | Size-change detection wrapper |
|
|
89
|
+
|
|
90
|
+
---
|
|
91
|
+
|
|
92
|
+
## Presentations (domain-specific components)
|
|
93
|
+
|
|
94
|
+
Exported together from `@lunit/oui`. Composite components for the oncology analysis domain.
|
|
95
|
+
|
|
96
|
+
`Accordion`, `AnalysisBar`, `FreeText`, `Histogram`, `HorizonDivider`, `ModelType`, `Preview`, `Score`, `Statistic`, `Threshold`, `ToggleControl`, `ToggleControlGroup`
|
|
97
|
+
|
|
98
|
+
---
|
|
99
|
+
|
|
100
|
+
## Usage examples
|
|
101
|
+
|
|
102
|
+
```tsx
|
|
103
|
+
import { Button, Dialog } from '@lunit/oui';
|
|
104
|
+
|
|
105
|
+
// basic button
|
|
106
|
+
<Button variant="contained" color="primary" size="medium" label="Save" onClick={save} />
|
|
107
|
+
|
|
108
|
+
// loading state
|
|
109
|
+
<Button variant="contained" loading label="Processing" />
|
|
110
|
+
|
|
111
|
+
// icon button
|
|
112
|
+
import { Close } from '@lunit/oui/icons';
|
|
113
|
+
<Button icon={<Close />} onClick={close} />
|
|
114
|
+
```
|
|
115
|
+
|
|
116
|
+
### Do / Don't
|
|
117
|
+
|
|
118
|
+
- ✅ Use only the union values defined above for variant/size/color.
|
|
119
|
+
- ✅ Use `theme.palette.*` / `theme.spacing()` tokens for color and spacing (→ [TOKENS.md](TOKENS.md)).
|
|
120
|
+
- ❌ Do not use the equivalent `@mui/material` component directly.
|
|
121
|
+
- ❌ Do not hardcode magic values like `#fff` or `16px` in `sx`.
|
package/docs/TOKENS.md
ADDED
|
@@ -0,0 +1,60 @@
|
|
|
1
|
+
# @lunit/oui — Design Tokens
|
|
2
|
+
|
|
3
|
+
Always use tokens for color, spacing, and typography. Never hardcode magic values (`#3BC9DB`, `16px`).
|
|
4
|
+
The source of truth is `src/foundations/` (palette.ts / spacing.ts / typography.ts).
|
|
5
|
+
|
|
6
|
+
```ts
|
|
7
|
+
import { palette, spacing, typography, theme } from '@lunit/oui';
|
|
8
|
+
// Inside a component's styled, access via the theme arg: (theme) => ({ color: theme.palette.lunitTeal[40] })
|
|
9
|
+
```
|
|
10
|
+
|
|
11
|
+
## Usage rules
|
|
12
|
+
|
|
13
|
+
| Kind | ❌ Don't | ✅ Do |
|
|
14
|
+
|---|---|---|
|
|
15
|
+
| Color | `color: '#3BC9DB'` | `color: theme.palette.lunitTeal[30]` |
|
|
16
|
+
| Spacing | `padding: '16px'` | `padding: theme.spacing(4)` |
|
|
17
|
+
| Typography | `fontSize: 14, fontWeight: 600` | `<Typography variant="body_sb1">` |
|
|
18
|
+
|
|
19
|
+
## Color (palette)
|
|
20
|
+
|
|
21
|
+
Form: `theme.palette.<group>[<key>]`. The key is a brightness scale (lower = brighter).
|
|
22
|
+
|
|
23
|
+
| Group | Key scale | Purpose |
|
|
24
|
+
|---|---|---|
|
|
25
|
+
| `brand` | `primary`, `secondary` | Brand colors (`#3BC9DB`, `#96EDFF`) |
|
|
26
|
+
| `lunitTeal` | 5–90 | Main teal palette (primary actions) |
|
|
27
|
+
| `neutralGrey` | 0–100 | Grayscale (0 = white, 100 = black). Backgrounds, text, borders |
|
|
28
|
+
| `red` | 5–50 | Error/danger |
|
|
29
|
+
| `blue` | 5–75 | Info |
|
|
30
|
+
| `green` | 10–50 | Success |
|
|
31
|
+
| `yellow` / `orange` | 5–20 | Caution/warning |
|
|
32
|
+
| `magenta` / `purple` | — | Secondary accents |
|
|
33
|
+
| `text` | `primary`, `secondary`, `disabled` | Text colors |
|
|
34
|
+
| `alert` | `InfoBG`, `SuccessBG`, `ErrorBG`, `WarningBG` | Alert backgrounds |
|
|
35
|
+
|
|
36
|
+
### Domain (histology) colors
|
|
37
|
+
|
|
38
|
+
Color groups exclusive to tumor analysis — do not use them for general UI.
|
|
39
|
+
`pdl1Tps`, `pdl1Cps`, `io`, `tumorPurity`, `her2`, `erpr`, `analysisStatus`
|
|
40
|
+
|
|
41
|
+
## Spacing
|
|
42
|
+
|
|
43
|
+
base unit = **4px**. `theme.spacing(n)` = `n * 4px`.
|
|
44
|
+
|
|
45
|
+
```
|
|
46
|
+
spacing(1)=4px spacing(2)=8px spacing(3)=12px spacing(4)=16px spacing(6)=24px
|
|
47
|
+
```
|
|
48
|
+
|
|
49
|
+
## Typography (variants)
|
|
50
|
+
|
|
51
|
+
Use via `<Typography variant="...">`, or `theme.typography.<variant>` in styled. Custom variants:
|
|
52
|
+
|
|
53
|
+
- **Heading**: `h7`, `h8`, `h9`, `h10`, `subtitle3`
|
|
54
|
+
- **Body (weight suffix)**: `b`=bold, `sb`=semibold, `m`=medium, none=regular, `l`=light
|
|
55
|
+
- `body_b1~2`, `body_sb1~5`, `body_m1~2`, `body1~8`
|
|
56
|
+
- `small_body_b1~5`, `small_body_sb1`, `small_body_m1~7`, `small_body1~5`, `small_body_l1~2`
|
|
57
|
+
- **Other**: `button1`, `button2`, `overline`, `caption`
|
|
58
|
+
|
|
59
|
+
> If you need a new token, define it in `src/foundations/` first. When you extend palette/typography,
|
|
60
|
+
> also update the `declare module '@mui/material/styles'` type augmentation in `theme.ts`.
|
package/llms.txt
ADDED
|
@@ -0,0 +1,58 @@
|
|
|
1
|
+
# @lunit/oui
|
|
2
|
+
|
|
3
|
+
> React UI component library for Lunit Scope applications. Built on MUI v9.
|
|
4
|
+
> When building UI in an app that uses this package, do not use MUI directly —
|
|
5
|
+
> use the OUI components and design tokens below.
|
|
6
|
+
|
|
7
|
+
## Setup
|
|
8
|
+
|
|
9
|
+
Wrap your app root with the OUI theme:
|
|
10
|
+
|
|
11
|
+
```tsx
|
|
12
|
+
import { ThemeProvider, CssBaseline } from '@mui/material';
|
|
13
|
+
import { theme } from '@lunit/oui';
|
|
14
|
+
|
|
15
|
+
<ThemeProvider theme={theme}>
|
|
16
|
+
<CssBaseline />
|
|
17
|
+
<App />
|
|
18
|
+
</ThemeProvider>
|
|
19
|
+
```
|
|
20
|
+
|
|
21
|
+
## Import rules
|
|
22
|
+
|
|
23
|
+
- Components: `import { Button, Dialog, TextField } from '@lunit/oui'`
|
|
24
|
+
- Icons: `import { ArrowDoubleDown } from '@lunit/oui/icons'`
|
|
25
|
+
- Tokens/theme: `import { theme, palette, spacing, typography } from '@lunit/oui'`
|
|
26
|
+
|
|
27
|
+
## Core rules (must follow)
|
|
28
|
+
|
|
29
|
+
- ❌ Do not import equivalent components (Button/TextField/Dialog, etc.) directly from `@mui/material`.
|
|
30
|
+
✅ Use the `@lunit/oui` component for the same functionality.
|
|
31
|
+
- ❌ Do not hardcode magic values like `#fff` or `16px` in `sx`/styles.
|
|
32
|
+
✅ Use tokens: color `theme.palette.lunitTeal[40]`, spacing `theme.spacing(n)` (base 4px), typography `<Typography variant="body_b1">`.
|
|
33
|
+
- For variant/size/color, use only the union values each component allows (e.g. Button `variant: contained|ghost|outlined`).
|
|
34
|
+
|
|
35
|
+
## Common components
|
|
36
|
+
|
|
37
|
+
- Button: `variant` contained|ghost|outlined, `color` primary|secondary|error, `size` small|medium|large, `label`, `icon`, `loading`
|
|
38
|
+
- TextField, Checkbox, Radio, Toggle, Dropdown, DatePicker — input/form
|
|
39
|
+
- Card(`size` small|large), List, Divider, DataTable, EllipsisTypography — display/layout
|
|
40
|
+
- Alert, Dialog, Tooltip, Progress, LoadingIndicator, Chip — feedback/overlay
|
|
41
|
+
- Menu, Pagination, Stepper, TabbedPanel — navigation
|
|
42
|
+
|
|
43
|
+
## Examples
|
|
44
|
+
|
|
45
|
+
```tsx
|
|
46
|
+
import { Button } from '@lunit/oui';
|
|
47
|
+
import { Close } from '@lunit/oui/icons';
|
|
48
|
+
|
|
49
|
+
<Button variant="contained" color="primary" size="medium" label="Save" onClick={save} />
|
|
50
|
+
<Button variant="contained" loading label="Processing" />
|
|
51
|
+
<Button icon={<Close />} onClick={close} />
|
|
52
|
+
```
|
|
53
|
+
|
|
54
|
+
## See also
|
|
55
|
+
|
|
56
|
+
- Full component catalog: docs/COMPONENTS.md
|
|
57
|
+
- Design tokens (color/spacing/typography): docs/TOKENS.md
|
|
58
|
+
- Interactive docs: Storybook (`npm run storybook`)
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@lunit/oui",
|
|
3
|
-
"version": "
|
|
3
|
+
"version": "3.0.0",
|
|
4
4
|
"validate-branch-name": {
|
|
5
5
|
"pattern": "^(main|develop)|(feature|fix|release|hotfix|qe)/.+$",
|
|
6
6
|
"errorMsg": "The branch name is not correct. Please check the pattern. (ex. feature/add-something)"
|
|
@@ -8,25 +8,24 @@
|
|
|
8
8
|
"peerDependencies": {
|
|
9
9
|
"@emotion/react": "^11.11.1",
|
|
10
10
|
"@emotion/styled": "^11.11.0",
|
|
11
|
-
"@mui/icons-material": "^
|
|
12
|
-
"@mui/lab": "^
|
|
13
|
-
"@mui/material": "^
|
|
14
|
-
"@mui/system": "^
|
|
15
|
-
"@mui/x-
|
|
16
|
-
"@mui/x-date-pickers": "^6.18.6",
|
|
11
|
+
"@mui/icons-material": "^9.0.0",
|
|
12
|
+
"@mui/lab": "^9.0.0",
|
|
13
|
+
"@mui/material": "^9.0.0",
|
|
14
|
+
"@mui/system": "^9.0.0",
|
|
15
|
+
"@mui/x-date-pickers": "^9.0.0",
|
|
17
16
|
"react": "^18.2.0",
|
|
18
17
|
"react-dom": "^18.2.0"
|
|
19
18
|
},
|
|
20
19
|
"dependencies": {
|
|
21
|
-
"@date-io/date-fns": "^2.
|
|
20
|
+
"@date-io/date-fns": "^3.2.1",
|
|
22
21
|
"@lunit/design-system-icons": "2.1.0",
|
|
23
22
|
"@lunit/design-system-logo": "1.1.1",
|
|
24
23
|
"@uppy/core": "^3.12.0",
|
|
25
24
|
"clsx": "^2.0.0",
|
|
26
|
-
"date-fns": "
|
|
25
|
+
"date-fns": "^3.6.0",
|
|
27
26
|
"lodash": "^4.17.21",
|
|
28
27
|
"tinycolor2": "^1.6.0",
|
|
29
|
-
"uuid": "^
|
|
28
|
+
"uuid": "^14.0.0",
|
|
30
29
|
"victory": "^37.3.6",
|
|
31
30
|
"web-vitals": "^2.1.4"
|
|
32
31
|
},
|
|
@@ -122,12 +121,12 @@
|
|
|
122
121
|
"@emotion/styled": "11.11.0",
|
|
123
122
|
"@lottiefiles/react-lottie-player": "^3.5.3",
|
|
124
123
|
"@lunit/eslint-config": "^2.0.0",
|
|
125
|
-
"@mui/icons-material": "
|
|
126
|
-
"@mui/lab": "
|
|
127
|
-
"@mui/material": "
|
|
128
|
-
"@mui/system": "
|
|
129
|
-
"@mui/x-data-grid": "
|
|
130
|
-
"@mui/x-date-pickers": "
|
|
124
|
+
"@mui/icons-material": "9.1.0",
|
|
125
|
+
"@mui/lab": "9.0.0-beta.3",
|
|
126
|
+
"@mui/material": "9.1.0",
|
|
127
|
+
"@mui/system": "9.1.0",
|
|
128
|
+
"@mui/x-data-grid-pro": "9.4.0",
|
|
129
|
+
"@mui/x-date-pickers": "9.4.0",
|
|
131
130
|
"@pmmmwh/react-refresh-webpack-plugin": "^0.5.3",
|
|
132
131
|
"@storybook/addon-actions": "^7.6.17",
|
|
133
132
|
"@storybook/addon-essentials": "^7.6.17",
|
|
@@ -157,12 +156,12 @@
|
|
|
157
156
|
"babel-loader": "^8.2.3",
|
|
158
157
|
"babel-plugin-named-asset-import": "^0.3.8",
|
|
159
158
|
"babel-preset-react-app": "^10.0.1",
|
|
160
|
-
"bfj": "^
|
|
159
|
+
"bfj": "^9.1.3",
|
|
161
160
|
"browserslist": "^4.18.1",
|
|
162
161
|
"camelcase": "^6.2.1",
|
|
163
162
|
"case-sensitive-paths-webpack-plugin": "^2.4.0",
|
|
164
163
|
"css-loader": "^6.5.1",
|
|
165
|
-
"css-minimizer-webpack-plugin": "^
|
|
164
|
+
"css-minimizer-webpack-plugin": "^8.0.0",
|
|
166
165
|
"dotenv": "^10.0.0",
|
|
167
166
|
"dotenv-expand": "^5.1.0",
|
|
168
167
|
"eslint": "^8.3.0",
|
|
@@ -176,7 +175,7 @@
|
|
|
176
175
|
"html-webpack-plugin": "^5.5.0",
|
|
177
176
|
"husky": "^8.0.0",
|
|
178
177
|
"identity-obj-proxy": "^3.0.0",
|
|
179
|
-
"jest": "^
|
|
178
|
+
"jest": "^30.3.0",
|
|
180
179
|
"jest-resolve": "^27.4.2",
|
|
181
180
|
"jest-watch-typeahead": "^1.0.0",
|
|
182
181
|
"lint-staged": "^15.2.0",
|
|
@@ -211,7 +210,7 @@
|
|
|
211
210
|
"webpack-dev-server": "^5.2.3",
|
|
212
211
|
"webpack-manifest-plugin": "^4.0.2",
|
|
213
212
|
"webpack-node-externals": "^3.0.0",
|
|
214
|
-
"workbox-webpack-plugin": "^
|
|
213
|
+
"workbox-webpack-plugin": "^7.4.0"
|
|
215
214
|
},
|
|
216
215
|
"description": "Lunit Oncology UI components",
|
|
217
216
|
"main": "dist/index.js",
|
|
@@ -220,7 +219,9 @@
|
|
|
220
219
|
"sideEffects": false,
|
|
221
220
|
"files": [
|
|
222
221
|
"dist",
|
|
223
|
-
"README.md"
|
|
222
|
+
"README.md",
|
|
223
|
+
"llms.txt",
|
|
224
|
+
"docs"
|
|
224
225
|
],
|
|
225
226
|
"exports": {
|
|
226
227
|
".": {
|
|
@@ -267,6 +268,14 @@
|
|
|
267
268
|
"overrides": {
|
|
268
269
|
"nanoid": "^5.0.9",
|
|
269
270
|
"postcss": "^8.4.31",
|
|
270
|
-
"esbuild": "^0.
|
|
271
|
+
"esbuild": "^0.28.1",
|
|
272
|
+
"react-is": "^18.3.1",
|
|
273
|
+
"tar": ">=7.5.11",
|
|
274
|
+
"sockjs": {
|
|
275
|
+
"uuid": ">=11.1.1"
|
|
276
|
+
},
|
|
277
|
+
"@storybook/addon-actions": {
|
|
278
|
+
"uuid": ">=11.1.1"
|
|
279
|
+
}
|
|
271
280
|
}
|
|
272
281
|
}
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|