sellmate-design-system-react 9.0.0-beta.8 → 9.0.0-beta.80
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/AGENTS.md +3974 -267
- package/README.md +76 -24
- package/bin/sellmate-ds.mjs +91 -59
- package/dist/components/SAccountListBox/AccountListBoxPortal.d.ts +31 -0
- package/dist/components/SAccountListBox/README.md +86 -0
- package/dist/components/SAccountListBox/SAccountListBox.d.ts +79 -0
- package/dist/components/SAccountListBox/SystemMenuPortal.d.ts +58 -0
- package/dist/components/SAccountListBox/accountListBox.config.d.ts +64 -0
- package/dist/components/SAccountListBox/index.d.ts +2 -0
- package/dist/components/SActionModal/README.md +1 -0
- package/dist/components/SActionModal/SActionModal.d.ts +9 -1
- package/dist/components/SBadge/README.md +27 -0
- package/dist/components/SBadge/SBadge.d.ts +1 -1
- package/dist/components/SBarChart/README.md +122 -0
- package/dist/components/SBarChart/SBarChart.d.ts +99 -0
- package/dist/components/SBarChart/barChart.config.d.ts +85 -0
- package/dist/components/SBarChart/index.d.ts +2 -0
- package/dist/components/SBarcodeInput/README.md +14 -4
- package/dist/components/SBarcodeInput/SBarcodeInput.d.ts +25 -3
- package/dist/components/SButton/README.md +40 -0
- package/dist/components/SCalendar/README.md +13 -0
- package/dist/components/SCalendarBoard/CalendarDayCard.d.ts +53 -0
- package/dist/components/SCalendarBoard/CalendarDayEventListBox.d.ts +26 -0
- package/dist/components/SCalendarBoard/CalendarEventButton.d.ts +20 -0
- package/dist/components/SCalendarBoard/CalendarMoreButton.d.ts +18 -0
- package/dist/components/SCalendarBoard/README.md +148 -0
- package/dist/components/SCalendarBoard/SCalendarBoard.d.ts +83 -0
- package/dist/components/SCalendarBoard/calendar-board-layout.d.ts +59 -0
- package/dist/components/SCalendarBoard/calendarBoard.config.d.ts +38 -0
- package/dist/components/SCalendarBoard/index.d.ts +3 -0
- package/dist/components/SCalendarBoard/types.d.ts +40 -0
- package/dist/components/SCallout/README.md +17 -1
- package/dist/components/SCallout/SCallout.d.ts +14 -4
- package/dist/components/SCard/README.md +17 -0
- package/dist/components/SCard/SCard.d.ts +26 -2
- package/dist/components/SChatAttachedFile/README.md +33 -0
- package/dist/components/SChatAttachedFile/SChatAttachedFile.d.ts +13 -0
- package/dist/components/SChatAttachedFile/chatAttachedFile.config.d.ts +23 -0
- package/dist/components/SChatAttachedFile/index.d.ts +2 -0
- package/dist/components/SChatFile/README.md +33 -0
- package/dist/components/SChatFile/SChatFile.d.ts +37 -0
- package/dist/components/SChatFile/chatFile.config.d.ts +56 -0
- package/dist/components/SChatFile/index.d.ts +2 -0
- package/dist/components/SChatInput/README.md +44 -0
- package/dist/components/SChatInput/SChatInput.d.ts +60 -0
- package/dist/components/SChatInput/index.d.ts +1 -0
- package/dist/components/SChatMessage/README.md +86 -0
- package/dist/components/SChatMessage/SChatMessage.d.ts +123 -0
- package/dist/components/SChatMessage/index.d.ts +1 -0
- package/dist/components/SChatSystemMessage/README.md +12 -0
- package/dist/components/SChatSystemMessage/SChatSystemMessage.d.ts +18 -0
- package/dist/components/SChatSystemMessage/index.d.ts +1 -0
- package/dist/components/SCheckbox/README.md +8 -0
- package/dist/components/SChip/README.md +25 -0
- package/dist/components/SChip/SChip.d.ts +8 -0
- package/dist/components/SChip/index.d.ts +1 -1
- package/dist/components/SChipFilter/README.md +369 -14
- package/dist/components/SChipFilter/SChipFilter.d.ts +169 -60
- package/dist/components/SChipFilter/index.d.ts +1 -1
- package/dist/components/SChipInput/README.md +18 -2
- package/dist/components/SChipInput/SChipInput.d.ts +23 -3
- package/dist/components/SChipInput/index.d.ts +1 -1
- package/dist/components/SCircleProgress/README.md +13 -2
- package/dist/components/SCircleProgress/SCircleProgress.d.ts +11 -3
- package/dist/components/SConfirmModal/README.md +13 -4
- package/dist/components/SConfirmModal/SConfirmModal.d.ts +46 -9
- package/dist/components/SContextAlert/README.md +52 -0
- package/dist/components/SContextAlert/SContextAlert.d.ts +51 -0
- package/dist/components/SContextAlert/contextAlert.config.d.ts +22 -0
- package/dist/components/SContextAlert/index.d.ts +2 -0
- package/dist/components/SDatePicker/README.md +22 -2
- package/dist/components/SDatePicker/SDatePicker.d.ts +42 -5
- package/dist/components/SDateRangePicker/README.md +22 -4
- package/dist/components/SDateRangePicker/SDateRangePicker.d.ts +44 -7
- package/dist/components/SDivider/README.md +7 -0
- package/dist/components/SDivider/SDivider.d.ts +11 -0
- package/dist/components/SDonutChart/README.md +105 -0
- package/dist/components/SDonutChart/SDonutChart.d.ts +82 -0
- package/dist/components/SDonutChart/index.d.ts +1 -0
- package/dist/components/SDraggableItem/README.md +37 -0
- package/dist/components/SDraggableItem/SDraggableItem.d.ts +2 -0
- package/dist/components/SDraggableItem/index.d.ts +1 -1
- package/dist/components/SDraggableList/README.md +33 -3
- package/dist/components/SDraggableList/SDraggableList.d.ts +18 -3
- package/dist/components/SDraggableList/index.d.ts +1 -1
- package/dist/components/SDrawer/README.md +8 -0
- package/dist/components/SDropdownButton/README.md +19 -0
- package/dist/components/SEditor/EditorBody.d.ts +36 -0
- package/dist/components/SEditor/EditorToolbar.d.ts +93 -0
- package/dist/components/SEditor/README.md +205 -0
- package/dist/components/SEditor/SEditor.d.ts +128 -0
- package/dist/components/SEditor/editor-icons.d.ts +63 -0
- package/dist/components/SEditor/editor.config.d.ts +119 -0
- package/dist/components/SEditor/index.d.ts +8 -0
- package/dist/components/SEditor/tiptap-api.d.ts +29 -0
- package/dist/components/SEditor/use-is-mobile.d.ts +14 -0
- package/dist/components/SExpansionItem/README.md +38 -2
- package/dist/components/SExpansionItem/SExpansionItem.d.ts +8 -2
- package/dist/components/SExpansionItem/index.d.ts +1 -1
- package/dist/components/SField/README.md +37 -5
- package/dist/components/SField/SField.d.ts +40 -8
- package/dist/components/SField/index.d.ts +1 -1
- package/dist/components/SFilePicker/README.md +20 -4
- package/dist/components/SFilePicker/SFilePicker.d.ts +26 -6
- package/dist/components/SFooter/README.md +44 -0
- package/dist/components/SFooter/SFooter.d.ts +29 -13
- package/dist/components/SFooter/index.d.ts +1 -1
- package/dist/components/SForm/README.md +12 -1
- package/dist/components/SForm/SForm.d.ts +2 -2
- package/dist/components/SGhostButton/README.md +28 -4
- package/dist/components/SGhostButton/SGhostButton.d.ts +4 -1
- package/dist/components/SGnb/README.md +109 -8
- package/dist/components/SGnb/SGnb.d.ts +112 -11
- package/dist/components/SGnb/gnb.config.d.ts +18 -5
- package/dist/components/SGnb/index.d.ts +1 -1
- package/dist/components/SGnbSystem/README.md +186 -0
- package/dist/components/SGnbSystem/SGnbSystem.d.ts +179 -0
- package/dist/components/SGnbSystem/gnbSystem.config.d.ts +122 -0
- package/dist/components/SGnbSystem/index.d.ts +2 -0
- package/dist/components/SGuide/README.md +16 -1
- package/dist/components/SGuide/SGuide.d.ts +5 -2
- package/dist/components/SIcon/README.md +20 -0
- package/dist/components/SIcon/SIcon.d.ts +1 -1
- package/dist/components/SIcon/icons.gen.d.ts +20 -1
- package/dist/components/SImage/README.md +23 -1
- package/dist/components/SImage/SImage.d.ts +11 -8
- package/dist/components/SInput/README.md +8 -4
- package/dist/components/SInput/SInput.d.ts +17 -5
- package/dist/components/SKeyValueTable/README.md +88 -0
- package/dist/components/SKeyValueTable/SKeyValueTable.d.ts +30 -3
- package/dist/components/SKeyValueTable/index.d.ts +1 -1
- package/dist/components/SLauncherListBox/README.md +82 -0
- package/dist/components/SLauncherListBox/SLauncherListBox.d.ts +80 -0
- package/dist/components/SLauncherListBox/index.d.ts +2 -0
- package/dist/components/SLauncherListBox/launcherListBox.config.d.ts +154 -0
- package/dist/components/SLayout/README.md +22 -1
- package/dist/components/SLayout/SLayout.d.ts +6 -2
- package/dist/components/SLayout/index.d.ts +1 -1
- package/dist/components/SLineChart/README.md +131 -0
- package/dist/components/SLineChart/SLineChart.d.ts +110 -0
- package/dist/components/SLineChart/index.d.ts +1 -0
- package/dist/components/SLineChart/lineChart.config.d.ts +95 -0
- package/dist/components/SLinearProgress/README.md +16 -1
- package/dist/components/SLinearProgress/SLinearProgress.d.ts +11 -2
- package/dist/components/SLinearProgress/index.d.ts +1 -1
- package/dist/components/SList/README.md +15 -2
- package/dist/components/SList/SList.d.ts +7 -3
- package/dist/components/SList/index.d.ts +1 -1
- package/dist/components/SListItem/README.md +43 -2
- package/dist/components/SListItem/SListItem.d.ts +8 -2
- package/dist/components/SListItem/index.d.ts +1 -1
- package/dist/components/SLoadingContainer/index.d.ts +1 -1
- package/dist/components/SLoadingContainer/loading.d.ts +41 -6
- package/dist/components/SLoadingModal/README.md +10 -2
- package/dist/components/SLoadingModal/SLoadingModal.d.ts +4 -4
- package/dist/components/SLoadingModal/index.d.ts +1 -1
- package/dist/components/SLoginCard/README.md +37 -0
- package/dist/components/SLoginCard/SLoginCard.d.ts +43 -0
- package/dist/components/SLoginCard/index.d.ts +1 -0
- package/dist/components/SLogo/README.md +103 -0
- package/dist/components/SLogo/SLogo.d.ts +72 -0
- package/dist/components/SLogo/index.d.ts +2 -0
- package/dist/components/SLogo/logo.config.d.ts +29 -0
- package/dist/components/SLogo/logos.d.ts +16 -0
- package/dist/components/SMeatballButton/README.md +67 -0
- package/dist/components/SMeatballButton/SMeatballButton.d.ts +36 -0
- package/dist/components/SMeatballButton/index.d.ts +1 -0
- package/dist/components/SModal/README.md +15 -5
- package/dist/components/SModal/SModal.d.ts +1 -1
- package/dist/components/SNumberInput/README.md +19 -8
- package/dist/components/SNumberInput/SNumberInput.d.ts +49 -7
- package/dist/components/SPage/README.md +105 -5
- package/dist/components/SPage/SPage.d.ts +34 -10
- package/dist/components/SPage/SPageHeader.d.ts +31 -13
- package/dist/components/SPage/index.d.ts +2 -2
- package/dist/components/SPage/page-column.d.ts +34 -0
- package/dist/components/SPage/page-width.d.ts +23 -0
- package/dist/components/SPage/page.config.d.ts +26 -0
- package/dist/components/SPieChart/README.md +93 -0
- package/dist/components/SPieChart/SPieChart.d.ts +73 -0
- package/dist/components/SPieChart/index.d.ts +1 -0
- package/dist/components/SPopover/README.md +15 -0
- package/dist/components/SPopup/README.md +26 -2
- package/dist/components/SPopup/SPopup.d.ts +13 -10
- package/dist/components/SPopup/index.d.ts +1 -1
- package/dist/components/SPortal/README.md +20 -0
- package/dist/components/SRadio/README.md +20 -0
- package/dist/components/SRadioButton/README.md +26 -0
- package/dist/components/SRadioButton/SRadioButton.d.ts +9 -2
- package/dist/components/SRadioCard/README.md +78 -0
- package/dist/components/SRadioCard/SRadioCard.d.ts +29 -0
- package/dist/components/SRadioCard/SRadioCardGroup.d.ts +36 -0
- package/dist/components/SRadioCard/index.d.ts +2 -0
- package/dist/components/SScrollArea/README.md +28 -0
- package/dist/components/SScrollArea/SScrollArea.d.ts +17 -0
- package/dist/components/SSearchInput/README.md +63 -0
- package/dist/components/SSearchInput/SSearchInput.d.ts +52 -0
- package/dist/components/SSearchInput/index.d.ts +1 -0
- package/dist/components/SSectionHeaderCard/README.md +38 -0
- package/dist/components/SSectionHeaderCard/SSectionHeaderCard.d.ts +19 -0
- package/dist/components/SSelect/README.md +64 -11
- package/dist/components/SSelect/SSelect.d.ts +135 -15
- package/dist/components/SSelect/index.d.ts +1 -1
- package/dist/components/SSelect/select.config.d.ts +17 -0
- package/dist/components/SSkeleton/README.md +55 -0
- package/dist/components/SSkeleton/SSkeleton.d.ts +39 -0
- package/dist/components/SSkeleton/index.d.ts +2 -0
- package/dist/components/SSkeleton/skeleton.config.d.ts +22 -0
- package/dist/components/SSplitter/README.md +17 -2
- package/dist/components/SSplitter/SSplitter.d.ts +7 -3
- package/dist/components/SStepper/README.md +26 -0
- package/dist/components/SSwitch/README.md +13 -1
- package/dist/components/SSwitch/SSwitch.d.ts +1 -3
- package/dist/components/SSystemActionButton/README.md +246 -0
- package/dist/components/SSystemActionButton/SSystemActionButton.d.ts +167 -0
- package/dist/components/SSystemActionButton/index.d.ts +2 -0
- package/dist/components/SSystemActionButton/systemActionButton.config.d.ts +93 -0
- package/dist/components/STable/README.md +135 -20
- package/dist/components/STable/STable.d.ts +292 -46
- package/dist/components/STable/index.d.ts +1 -1
- package/dist/components/STableBar/README.md +1 -0
- package/dist/components/STableBar/STableBar.d.ts +8 -1
- package/dist/components/STabs/README.md +13 -1
- package/dist/components/STabs/STabs.d.ts +2 -2
- package/dist/components/STag/README.md +55 -0
- package/dist/components/STag/STag.d.ts +3 -1
- package/dist/components/STag/tag.config.d.ts +1 -1
- package/dist/components/STextLink/README.md +21 -1
- package/dist/components/STextLink/STextLink.d.ts +5 -1
- package/dist/components/STextarea/README.md +12 -5
- package/dist/components/STextarea/STextarea.d.ts +49 -6
- package/dist/components/STimePicker/README.md +19 -2
- package/dist/components/STimePicker/STimePicker.d.ts +36 -6
- package/dist/components/STimePicker/timepicker.config.d.ts +4 -2
- package/dist/components/STimeRangePicker/README.md +31 -2
- package/dist/components/STimeRangePicker/STimeRangePicker.d.ts +35 -6
- package/dist/components/SToast/README.md +25 -1
- package/dist/components/SToast/SToast.d.ts +2 -2
- package/dist/components/SToggle/README.md +8 -0
- package/dist/components/SToggle/index.d.ts +1 -1
- package/dist/components/STooltip/README.md +27 -1
- package/dist/components/STooltip/STooltip.d.ts +1 -1
- package/dist/components/STree/README.md +42 -4
- package/dist/components/STree/STree.d.ts +18 -6
- package/dist/components/STree/STree.examples.d.ts +2 -0
- package/dist/docs/Gallery.d.ts +9 -0
- package/dist/docs/RecipeGallery.d.ts +13 -0
- package/dist/docs/gallery-previews.d.ts +24 -0
- package/dist/fonts/LICENSE.txt +94 -0
- package/dist/fonts/woff2-dynamic-subset/PretendardVariable.subset.0.woff2 +0 -0
- package/dist/fonts/woff2-dynamic-subset/PretendardVariable.subset.1.woff2 +0 -0
- package/dist/fonts/woff2-dynamic-subset/PretendardVariable.subset.10.woff2 +0 -0
- package/dist/fonts/woff2-dynamic-subset/PretendardVariable.subset.11.woff2 +0 -0
- package/dist/fonts/woff2-dynamic-subset/PretendardVariable.subset.12.woff2 +0 -0
- package/dist/fonts/woff2-dynamic-subset/PretendardVariable.subset.13.woff2 +0 -0
- package/dist/fonts/woff2-dynamic-subset/PretendardVariable.subset.14.woff2 +0 -0
- package/dist/fonts/woff2-dynamic-subset/PretendardVariable.subset.15.woff2 +0 -0
- package/dist/fonts/woff2-dynamic-subset/PretendardVariable.subset.16.woff2 +0 -0
- package/dist/fonts/woff2-dynamic-subset/PretendardVariable.subset.17.woff2 +0 -0
- package/dist/fonts/woff2-dynamic-subset/PretendardVariable.subset.18.woff2 +0 -0
- package/dist/fonts/woff2-dynamic-subset/PretendardVariable.subset.19.woff2 +0 -0
- package/dist/fonts/woff2-dynamic-subset/PretendardVariable.subset.2.woff2 +0 -0
- package/dist/fonts/woff2-dynamic-subset/PretendardVariable.subset.20.woff2 +0 -0
- package/dist/fonts/woff2-dynamic-subset/PretendardVariable.subset.21.woff2 +0 -0
- package/dist/fonts/woff2-dynamic-subset/PretendardVariable.subset.22.woff2 +0 -0
- package/dist/fonts/woff2-dynamic-subset/PretendardVariable.subset.23.woff2 +0 -0
- package/dist/fonts/woff2-dynamic-subset/PretendardVariable.subset.24.woff2 +0 -0
- package/dist/fonts/woff2-dynamic-subset/PretendardVariable.subset.25.woff2 +0 -0
- package/dist/fonts/woff2-dynamic-subset/PretendardVariable.subset.26.woff2 +0 -0
- package/dist/fonts/woff2-dynamic-subset/PretendardVariable.subset.27.woff2 +0 -0
- package/dist/fonts/woff2-dynamic-subset/PretendardVariable.subset.28.woff2 +0 -0
- package/dist/fonts/woff2-dynamic-subset/PretendardVariable.subset.29.woff2 +0 -0
- package/dist/fonts/woff2-dynamic-subset/PretendardVariable.subset.3.woff2 +0 -0
- package/dist/fonts/woff2-dynamic-subset/PretendardVariable.subset.30.woff2 +0 -0
- package/dist/fonts/woff2-dynamic-subset/PretendardVariable.subset.31.woff2 +0 -0
- package/dist/fonts/woff2-dynamic-subset/PretendardVariable.subset.32.woff2 +0 -0
- package/dist/fonts/woff2-dynamic-subset/PretendardVariable.subset.33.woff2 +0 -0
- package/dist/fonts/woff2-dynamic-subset/PretendardVariable.subset.34.woff2 +0 -0
- package/dist/fonts/woff2-dynamic-subset/PretendardVariable.subset.35.woff2 +0 -0
- package/dist/fonts/woff2-dynamic-subset/PretendardVariable.subset.36.woff2 +0 -0
- package/dist/fonts/woff2-dynamic-subset/PretendardVariable.subset.37.woff2 +0 -0
- package/dist/fonts/woff2-dynamic-subset/PretendardVariable.subset.38.woff2 +0 -0
- package/dist/fonts/woff2-dynamic-subset/PretendardVariable.subset.39.woff2 +0 -0
- package/dist/fonts/woff2-dynamic-subset/PretendardVariable.subset.4.woff2 +0 -0
- package/dist/fonts/woff2-dynamic-subset/PretendardVariable.subset.40.woff2 +0 -0
- package/dist/fonts/woff2-dynamic-subset/PretendardVariable.subset.41.woff2 +0 -0
- package/dist/fonts/woff2-dynamic-subset/PretendardVariable.subset.42.woff2 +0 -0
- package/dist/fonts/woff2-dynamic-subset/PretendardVariable.subset.43.woff2 +0 -0
- package/dist/fonts/woff2-dynamic-subset/PretendardVariable.subset.44.woff2 +0 -0
- package/dist/fonts/woff2-dynamic-subset/PretendardVariable.subset.45.woff2 +0 -0
- package/dist/fonts/woff2-dynamic-subset/PretendardVariable.subset.46.woff2 +0 -0
- package/dist/fonts/woff2-dynamic-subset/PretendardVariable.subset.47.woff2 +0 -0
- package/dist/fonts/woff2-dynamic-subset/PretendardVariable.subset.48.woff2 +0 -0
- package/dist/fonts/woff2-dynamic-subset/PretendardVariable.subset.49.woff2 +0 -0
- package/dist/fonts/woff2-dynamic-subset/PretendardVariable.subset.5.woff2 +0 -0
- package/dist/fonts/woff2-dynamic-subset/PretendardVariable.subset.50.woff2 +0 -0
- package/dist/fonts/woff2-dynamic-subset/PretendardVariable.subset.51.woff2 +0 -0
- package/dist/fonts/woff2-dynamic-subset/PretendardVariable.subset.52.woff2 +0 -0
- package/dist/fonts/woff2-dynamic-subset/PretendardVariable.subset.53.woff2 +0 -0
- package/dist/fonts/woff2-dynamic-subset/PretendardVariable.subset.54.woff2 +0 -0
- package/dist/fonts/woff2-dynamic-subset/PretendardVariable.subset.55.woff2 +0 -0
- package/dist/fonts/woff2-dynamic-subset/PretendardVariable.subset.56.woff2 +0 -0
- package/dist/fonts/woff2-dynamic-subset/PretendardVariable.subset.57.woff2 +0 -0
- package/dist/fonts/woff2-dynamic-subset/PretendardVariable.subset.58.woff2 +0 -0
- package/dist/fonts/woff2-dynamic-subset/PretendardVariable.subset.59.woff2 +0 -0
- package/dist/fonts/woff2-dynamic-subset/PretendardVariable.subset.6.woff2 +0 -0
- package/dist/fonts/woff2-dynamic-subset/PretendardVariable.subset.60.woff2 +0 -0
- package/dist/fonts/woff2-dynamic-subset/PretendardVariable.subset.61.woff2 +0 -0
- package/dist/fonts/woff2-dynamic-subset/PretendardVariable.subset.62.woff2 +0 -0
- package/dist/fonts/woff2-dynamic-subset/PretendardVariable.subset.63.woff2 +0 -0
- package/dist/fonts/woff2-dynamic-subset/PretendardVariable.subset.64.woff2 +0 -0
- package/dist/fonts/woff2-dynamic-subset/PretendardVariable.subset.65.woff2 +0 -0
- package/dist/fonts/woff2-dynamic-subset/PretendardVariable.subset.66.woff2 +0 -0
- package/dist/fonts/woff2-dynamic-subset/PretendardVariable.subset.67.woff2 +0 -0
- package/dist/fonts/woff2-dynamic-subset/PretendardVariable.subset.68.woff2 +0 -0
- package/dist/fonts/woff2-dynamic-subset/PretendardVariable.subset.69.woff2 +0 -0
- package/dist/fonts/woff2-dynamic-subset/PretendardVariable.subset.7.woff2 +0 -0
- package/dist/fonts/woff2-dynamic-subset/PretendardVariable.subset.70.woff2 +0 -0
- package/dist/fonts/woff2-dynamic-subset/PretendardVariable.subset.71.woff2 +0 -0
- package/dist/fonts/woff2-dynamic-subset/PretendardVariable.subset.72.woff2 +0 -0
- package/dist/fonts/woff2-dynamic-subset/PretendardVariable.subset.73.woff2 +0 -0
- package/dist/fonts/woff2-dynamic-subset/PretendardVariable.subset.74.woff2 +0 -0
- package/dist/fonts/woff2-dynamic-subset/PretendardVariable.subset.75.woff2 +0 -0
- package/dist/fonts/woff2-dynamic-subset/PretendardVariable.subset.76.woff2 +0 -0
- package/dist/fonts/woff2-dynamic-subset/PretendardVariable.subset.77.woff2 +0 -0
- package/dist/fonts/woff2-dynamic-subset/PretendardVariable.subset.78.woff2 +0 -0
- package/dist/fonts/woff2-dynamic-subset/PretendardVariable.subset.79.woff2 +0 -0
- package/dist/fonts/woff2-dynamic-subset/PretendardVariable.subset.8.woff2 +0 -0
- package/dist/fonts/woff2-dynamic-subset/PretendardVariable.subset.80.woff2 +0 -0
- package/dist/fonts/woff2-dynamic-subset/PretendardVariable.subset.81.woff2 +0 -0
- package/dist/fonts/woff2-dynamic-subset/PretendardVariable.subset.82.woff2 +0 -0
- package/dist/fonts/woff2-dynamic-subset/PretendardVariable.subset.83.woff2 +0 -0
- package/dist/fonts/woff2-dynamic-subset/PretendardVariable.subset.84.woff2 +0 -0
- package/dist/fonts/woff2-dynamic-subset/PretendardVariable.subset.85.woff2 +0 -0
- package/dist/fonts/woff2-dynamic-subset/PretendardVariable.subset.86.woff2 +0 -0
- package/dist/fonts/woff2-dynamic-subset/PretendardVariable.subset.87.woff2 +0 -0
- package/dist/fonts/woff2-dynamic-subset/PretendardVariable.subset.88.woff2 +0 -0
- package/dist/fonts/woff2-dynamic-subset/PretendardVariable.subset.89.woff2 +0 -0
- package/dist/fonts/woff2-dynamic-subset/PretendardVariable.subset.9.woff2 +0 -0
- package/dist/fonts/woff2-dynamic-subset/PretendardVariable.subset.90.woff2 +0 -0
- package/dist/fonts/woff2-dynamic-subset/PretendardVariable.subset.91.woff2 +0 -0
- package/dist/index.cjs +21789 -10666
- package/dist/index.cjs.map +1 -1
- package/dist/index.d.ts +23 -0
- package/dist/index.js +21704 -10665
- package/dist/index.js.map +1 -1
- package/dist/lib/chart/cartesian.d.ts +56 -0
- package/dist/lib/chart/frame.d.ts +21 -0
- package/dist/lib/chart/hover-dim.d.ts +19 -0
- package/dist/lib/chart/legend.d.ts +21 -0
- package/dist/lib/chart/palette.d.ts +28 -0
- package/dist/lib/chart/radial.d.ts +99 -0
- package/dist/lib/chart/scale.d.ts +26 -0
- package/dist/lib/chart/tooltip.d.ts +60 -0
- package/dist/lib/chart/types.d.ts +29 -0
- package/dist/lib/chart/use-element-size.d.ts +39 -0
- package/dist/lib/date.d.ts +2 -1
- package/dist/lib/depth-filter.d.ts +27 -0
- package/dist/lib/doc-sections.d.ts +35 -0
- package/dist/lib/dropdown-menu.d.ts +19 -0
- package/dist/lib/field-width.d.ts +31 -0
- package/dist/lib/floating-height.d.ts +15 -0
- package/dist/lib/global-overlay.d.ts +5 -0
- package/dist/lib/hover-preview.d.ts +32 -0
- package/dist/lib/inert.d.ts +11 -0
- package/dist/lib/overlay-scrollbar.d.ts +32 -0
- package/dist/lib/row-metrics.d.ts +61 -0
- package/dist/lib/story-docs.d.ts +19 -3
- package/dist/llms-full.txt +9674 -2059
- package/dist/llms.txt +4062 -326
- package/dist/playground/categories.d.ts +19 -0
- package/dist/pretendard.css +937 -0
- package/dist/recipes/AppShell.d.ts +21 -0
- package/dist/recipes/CategoryManagePage.d.ts +1 -0
- package/dist/recipes/ConsultConsolePage.d.ts +1 -0
- package/dist/recipes/ExcelFilePopupPage.d.ts +5 -0
- package/dist/recipes/LoginPage.d.ts +6 -0
- package/dist/recipes/ProductBulkUploadPage.d.ts +1 -0
- package/dist/recipes/ProductCreatePage.d.ts +1 -0
- package/dist/recipes/ProductCreateSectionsPage.d.ts +5 -0
- package/dist/recipes/ProductDetailInlineEditPage.d.ts +9 -0
- package/dist/recipes/ProductDetailPage.d.ts +1 -0
- package/dist/recipes/ProductListChipFilterPage.d.ts +1 -0
- package/dist/recipes/ProductListPage.d.ts +1 -0
- package/dist/recipes/ProductOverlayPage.d.ts +1 -0
- package/dist/recipes/SalesDashboardPage.d.ts +1 -0
- package/dist/recipes/SettingsPage.d.ts +1 -0
- package/dist/recipes/StoreSetupPage.d.ts +1 -0
- package/dist/recipes/TransferOrderPopupPage.d.ts +2 -0
- package/dist/recipes/api.d.ts +220 -0
- package/dist/recipes/recipe-story.d.ts +33 -0
- package/dist/recipes/router.d.ts +9 -0
- package/dist/styles.css +3541 -262
- package/dist/theme.css +598 -28
- package/eslint/index.mjs +44 -35
- package/eslint/lib/class-names.mjs +23 -25
- package/eslint/lib/table-column.mjs +34 -8
- package/eslint/rules/component-group-gap.mjs +32 -30
- package/eslint/rules/divider-vertical-height.mjs +137 -0
- package/eslint/rules/field-width-grade.mjs +69 -52
- package/eslint/rules/no-arbitrary-class.mjs +63 -20
- package/eslint/rules/no-off-scale-spacing.mjs +61 -41
- package/eslint/rules/no-raw-html-control.mjs +38 -36
- package/eslint/rules/prefer-typo-preset.mjs +23 -17
- package/eslint/rules/require-locale-number.mjs +14 -19
- package/eslint/rules/table-column-width.mjs +114 -0
- package/eslint/rules/table-numeric-align.mjs +14 -14
- package/eslint/scale.gen.mjs +6 -3
- package/package.json +19 -5
|
@@ -0,0 +1,103 @@
|
|
|
1
|
+
# SLogo
|
|
2
|
+
|
|
3
|
+
> 자동 생성 문서 — `npm run docs:gen`. 소스: 각 컴포넌트의 Props/Handle 인터페이스 + import 의존성.
|
|
4
|
+
|
|
5
|
+
### SLogo
|
|
6
|
+
|
|
7
|
+
#### Props
|
|
8
|
+
|
|
9
|
+
| Prop | Type | Default | Description |
|
|
10
|
+
|------|------|---------|-------------|
|
|
11
|
+
| `name?` | `SLogoName` | `'sellmate'` | 로고명 — 셀메이트 본체(`sellmate`) 또는 서비스(`wms` · `account` · `crm` …). 서비스 로고는 [셀메이트 워드마크 + 서비스 표기]가 한 덩어리로 나온다 — 앱이 표기를 잇지 않는다. |
|
|
12
|
+
| `mode?` | `SLogoMode` | `'light'` | 로고가 서는 배경. 밝은 면에는 `light`(남색 워드마크), 어두운 면에는 `dark`(흰 워드마크). 서비스 표기 색도 원본이 모드마다 정한 값으로 바뀐다. |
|
|
13
|
+
| `direction?` | `SLogoDirection` | `'horizontal'` | 배치. `horizontal` 은 워드마크 오른쪽에 서비스 표기, `vertical` 은 워드마크 아래 가운데에 표기 (로그인 카드처럼 폭이 좁고 로고가 가운데 서는 자리). `sellmate` 는 표기가 없어 어느 쪽이든 같다. 표기 색이 가로와 다른 로고도 있다(POS 세로는 light 에서도 `#4886FF`) — 원본을 따른다. |
|
|
14
|
+
| `size?` | `number \| 'auto' \| (string & {})` | `LOGO_DEFAULT_SIZE` | **높이**(px 또는 CSS 길이). 폭은 주지 않는다 — 로고 비율에서 저절로 나온다. `SIcon` 의 `size` 와 달리 정사각이 아니다(로고는 가로로 길다). `vertical` 은 두 줄 전체의 높이다 — 같은 `size` 면 워드마크가 가로보다 작게 선다. `'auto'` 면 높이를 정하지 않는다 — **부모 폭을 꽉 채우고 높이는 비율로 따라온다.** 로고 자리의 폭이 정해진 곳(`SGnb` `header="fix"` 의 로고 칸)에서 쓴다. 부모에 폭이 없으면 기준을 잃어 브라우저 기본 크기(300px)로 그려진다. |
|
|
15
|
+
| `color?` | `SColor` | — | 색. 팔레트 키(`grey_45`, `red_95` …) 또는 임의 CSS 색상. **워드마크와 서비스 표기가 모두 이 한 색이 된다.** 미지정 시 **브랜드 색**(`mode` 가 정한 워드마크 색 + 서비스 색)이다 — `SIcon` 과 달리 currentColor 를 상속하지 않는다. 로고가 주변 글자색을 따라 물들면 브랜드 색이 화면마다 달라지기 때문이다. 비활성처럼 물러나야 하는 자리에서만 색을 준다. |
|
|
16
|
+
| `label?` | `string` | — | 접근성 라벨. 없으면 `aria-hidden` 이다 — 로고 옆에 서비스 이름이 이미 적혀 있는 자리 (런처 목록의 한 줄 등)에서는 이름이 두 번 읽히지 않도록 그대로 둔다. 로고가 그 자리의 유일한 이름이면(로그인 화면·상단바) 브랜드명을 넘긴다. |
|
|
17
|
+
| `className?` | `string` | — | |
|
|
18
|
+
| `style?` | `CSSProperties` | — | |
|
|
19
|
+
|
|
20
|
+
## Types
|
|
21
|
+
|
|
22
|
+
### SLogoName
|
|
23
|
+
|
|
24
|
+
```ts
|
|
25
|
+
export type SLogoName = (typeof LOGO_NAMES)[number];
|
|
26
|
+
```
|
|
27
|
+
|
|
28
|
+
### SLogoMode
|
|
29
|
+
|
|
30
|
+
```ts
|
|
31
|
+
export type SLogoMode = (typeof LOGO_MODES)[number];
|
|
32
|
+
```
|
|
33
|
+
|
|
34
|
+
### SLogoDirection
|
|
35
|
+
|
|
36
|
+
```ts
|
|
37
|
+
export type SLogoDirection = (typeof LOGO_DIRECTIONS)[number];
|
|
38
|
+
```
|
|
39
|
+
|
|
40
|
+
### LOGO_NAMES
|
|
41
|
+
|
|
42
|
+
```ts
|
|
43
|
+
/**
|
|
44
|
+
* SLogo 설정.
|
|
45
|
+
*
|
|
46
|
+
* 로고는 브랜드 자산이라 **색·비율이 토큰을 따르지 않는다** — 테마가 바뀌어도 로고는 그대로여야
|
|
47
|
+
* 하고, 워드마크의 비율은 자산 자체가 정한다. 그래서 이 파일의 값은 토큰 참조가 아니다.
|
|
48
|
+
*/
|
|
49
|
+
|
|
50
|
+
/**
|
|
51
|
+
* 담고 있는 로고 — 셀메이트 본체와 서비스들, 그리고 통합 콘솔. 로고 한 벌은 [셀메이트 워드마크 + 표기]다.
|
|
52
|
+
* 늘어나면 여기와 `logos.tsx` 의 맵에 함께 추가한다.
|
|
53
|
+
*/
|
|
54
|
+
export const LOGO_NAMES = [
|
|
55
|
+
'sellmate',
|
|
56
|
+
'wms',
|
|
57
|
+
'chat',
|
|
58
|
+
'chatbot',
|
|
59
|
+
'plm',
|
|
60
|
+
'account',
|
|
61
|
+
'people',
|
|
62
|
+
'crm',
|
|
63
|
+
'work',
|
|
64
|
+
'pos',
|
|
65
|
+
'console',
|
|
66
|
+
] as const;
|
|
67
|
+
```
|
|
68
|
+
|
|
69
|
+
### LOGO_MODES
|
|
70
|
+
|
|
71
|
+
```ts
|
|
72
|
+
/**
|
|
73
|
+
* 로고가 서는 배경. 밝은 면에는 `light`(남색 워드마크), 어두운 면에는 `dark`(흰 워드마크).
|
|
74
|
+
* 서비스 표기 색도 모드마다 원본이 정한 값으로 바뀐다(Account·POS 는 dark 에서 더 밝다).
|
|
75
|
+
*/
|
|
76
|
+
export const LOGO_MODES = ['light', 'dark'] as const;
|
|
77
|
+
```
|
|
78
|
+
|
|
79
|
+
### LOGO_DIRECTIONS
|
|
80
|
+
|
|
81
|
+
```ts
|
|
82
|
+
/**
|
|
83
|
+
* 로고의 배치. `horizontal` 은 워드마크 오른쪽에 서비스 표기, `vertical` 은 워드마크 아래 가운데에 표기.
|
|
84
|
+
* 모든 서비스 로고가 세로 원본을 갖는다. 셀메이트 본체는 표기가 없어 세로여도 모양이 같다.
|
|
85
|
+
*/
|
|
86
|
+
export const LOGO_DIRECTIONS = ['horizontal', 'vertical'] as const;
|
|
87
|
+
```
|
|
88
|
+
|
|
89
|
+
## Dependencies
|
|
90
|
+
|
|
91
|
+
### Used by
|
|
92
|
+
|
|
93
|
+
- [SLauncherListBox](../SLauncherListBox)
|
|
94
|
+
- [SLoginCard](../SLoginCard)
|
|
95
|
+
|
|
96
|
+
### Graph
|
|
97
|
+
|
|
98
|
+
```mermaid
|
|
99
|
+
graph TD;
|
|
100
|
+
SLauncherListBox --> SLogo
|
|
101
|
+
SLoginCard --> SLogo
|
|
102
|
+
style SLogo fill:#f9f,stroke:#333,stroke-width:4px
|
|
103
|
+
```
|
|
@@ -0,0 +1,72 @@
|
|
|
1
|
+
import { type CSSProperties } from 'react';
|
|
2
|
+
import { type SColor } from '../../lib/color';
|
|
3
|
+
import { type SLogoDirection, type SLogoMode, type SLogoName } from './logo.config';
|
|
4
|
+
export interface SLogoProps {
|
|
5
|
+
/**
|
|
6
|
+
* 로고명 — 셀메이트 본체(`sellmate`) 또는 서비스(`wms` · `account` · `crm` …).
|
|
7
|
+
* 서비스 로고는 [셀메이트 워드마크 + 서비스 표기]가 한 덩어리로 나온다 — 앱이 표기를 잇지 않는다.
|
|
8
|
+
*/
|
|
9
|
+
name?: SLogoName;
|
|
10
|
+
/**
|
|
11
|
+
* 로고가 서는 배경. 밝은 면에는 `light`(남색 워드마크), 어두운 면에는 `dark`(흰 워드마크).
|
|
12
|
+
* 서비스 표기 색도 원본이 모드마다 정한 값으로 바뀐다.
|
|
13
|
+
*/
|
|
14
|
+
mode?: SLogoMode;
|
|
15
|
+
/**
|
|
16
|
+
* 배치. `horizontal` 은 워드마크 오른쪽에 서비스 표기, `vertical` 은 워드마크 아래 가운데에 표기
|
|
17
|
+
* (로그인 카드처럼 폭이 좁고 로고가 가운데 서는 자리). `sellmate` 는 표기가 없어 어느 쪽이든 같다.
|
|
18
|
+
* 표기 색이 가로와 다른 로고도 있다(POS 세로는 light 에서도 `#4886FF`) — 원본을 따른다.
|
|
19
|
+
*/
|
|
20
|
+
direction?: SLogoDirection;
|
|
21
|
+
/**
|
|
22
|
+
* **높이**(px 또는 CSS 길이). 폭은 주지 않는다 — 로고 비율에서 저절로 나온다.
|
|
23
|
+
* `SIcon` 의 `size` 와 달리 정사각이 아니다(로고는 가로로 길다).
|
|
24
|
+
* `vertical` 은 두 줄 전체의 높이다 — 같은 `size` 면 워드마크가 가로보다 작게 선다.
|
|
25
|
+
*
|
|
26
|
+
* `'auto'` 면 높이를 정하지 않는다 — **부모 폭을 꽉 채우고 높이는 비율로 따라온다.**
|
|
27
|
+
* 로고 자리의 폭이 정해진 곳(`SGnb` `header="fix"` 의 로고 칸)에서 쓴다. 부모에 폭이 없으면
|
|
28
|
+
* 기준을 잃어 브라우저 기본 크기(300px)로 그려진다.
|
|
29
|
+
*/
|
|
30
|
+
size?: number | 'auto' | (string & {});
|
|
31
|
+
/**
|
|
32
|
+
* 색. 팔레트 키(`grey_45`, `red_95` …) 또는 임의 CSS 색상. **워드마크와 서비스 표기가 모두
|
|
33
|
+
* 이 한 색이 된다.**
|
|
34
|
+
*
|
|
35
|
+
* 미지정 시 **브랜드 색**(`mode` 가 정한 워드마크 색 + 서비스 색)이다 — `SIcon` 과 달리
|
|
36
|
+
* currentColor 를 상속하지 않는다. 로고가 주변 글자색을 따라 물들면 브랜드 색이 화면마다
|
|
37
|
+
* 달라지기 때문이다. 비활성처럼 물러나야 하는 자리에서만 색을 준다.
|
|
38
|
+
*/
|
|
39
|
+
color?: SColor;
|
|
40
|
+
/**
|
|
41
|
+
* 접근성 라벨. 없으면 `aria-hidden` 이다 — 로고 옆에 서비스 이름이 이미 적혀 있는 자리
|
|
42
|
+
* (런처 목록의 한 줄 등)에서는 이름이 두 번 읽히지 않도록 그대로 둔다.
|
|
43
|
+
* 로고가 그 자리의 유일한 이름이면(로그인 화면·상단바) 브랜드명을 넘긴다.
|
|
44
|
+
*/
|
|
45
|
+
label?: string;
|
|
46
|
+
className?: string;
|
|
47
|
+
style?: CSSProperties;
|
|
48
|
+
}
|
|
49
|
+
/**
|
|
50
|
+
* SLogo — 브랜드 로고를 아이콘처럼 쓰는 컴포넌트.
|
|
51
|
+
*
|
|
52
|
+
* `SIcon` 과 같은 손맛(`name` · `size` · `color`)이지만 두 가지가 다르다.
|
|
53
|
+
* - **`size` 는 높이다.** 로고는 가로로 길어 정사각으로 그리면 찌그러진다 — 폭은 비율에서 나온다.
|
|
54
|
+
* `size="auto"` 면 거꾸로 부모 폭을 채우고 높이가 비율에서 나온다.
|
|
55
|
+
* - **색을 주지 않으면 브랜드 색이다.** currentColor 를 상속하지 않는다(위 `color` 참고).
|
|
56
|
+
*
|
|
57
|
+
* **서비스 이름을 넣으면 그 서비스 로고가 나온다.** 워드마크 오른쪽에 표기를 앱이 따로 잇지 않는다 —
|
|
58
|
+
* 원본 로고의 자간·색이 서비스마다 달라서, 이어 붙이면 원본과 어긋난다.
|
|
59
|
+
*
|
|
60
|
+
* 배경이 어두우면 `mode="dark"` 를 준다 — 워드마크가 흰색이 되고 서비스 표기도 원본의 dark 색으로 바뀐다.
|
|
61
|
+
*
|
|
62
|
+
* ```tsx
|
|
63
|
+
* <SLogo /> // 셀메이트, 브랜드 색, 높이 24
|
|
64
|
+
* <SLogo name="wms" size={12} /> // 런처 목록의 한 줄
|
|
65
|
+
* <SLogo name="account" mode="dark" /> // 어두운 면 위
|
|
66
|
+
* <SLogo name="wms" direction="vertical" size={48} /> // 워드마크 아래에 표기
|
|
67
|
+
* <SLogo name="account" mode="dark" size="auto" /> // 폭이 정해진 로고 칸(fix GNB)을 채운다
|
|
68
|
+
* <SLogo name="crm" color="grey_45" /> // 아직 못 쓰는 서비스 — 로고 전체가 한 색
|
|
69
|
+
* <SLogo size={32} label="Sellmate" /> // 로고가 그 자리의 유일한 이름일 때
|
|
70
|
+
* ```
|
|
71
|
+
*/
|
|
72
|
+
export declare const SLogo: import("react").ForwardRefExoticComponent<SLogoProps & import("react").RefAttributes<HTMLSpanElement>>;
|
|
@@ -0,0 +1,29 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* SLogo 설정.
|
|
3
|
+
*
|
|
4
|
+
* 로고는 브랜드 자산이라 **색·비율이 토큰을 따르지 않는다** — 테마가 바뀌어도 로고는 그대로여야
|
|
5
|
+
* 하고, 워드마크의 비율은 자산 자체가 정한다. 그래서 이 파일의 값은 토큰 참조가 아니다.
|
|
6
|
+
*/
|
|
7
|
+
/**
|
|
8
|
+
* 담고 있는 로고 — 셀메이트 본체와 서비스들, 그리고 통합 콘솔. 로고 한 벌은 [셀메이트 워드마크 + 표기]다.
|
|
9
|
+
* 늘어나면 여기와 `logos.tsx` 의 맵에 함께 추가한다.
|
|
10
|
+
*/
|
|
11
|
+
export declare const LOGO_NAMES: readonly ["sellmate", "wms", "chat", "chatbot", "plm", "account", "people", "crm", "work", "pos", "console"];
|
|
12
|
+
export type SLogoName = (typeof LOGO_NAMES)[number];
|
|
13
|
+
/**
|
|
14
|
+
* 로고가 서는 배경. 밝은 면에는 `light`(남색 워드마크), 어두운 면에는 `dark`(흰 워드마크).
|
|
15
|
+
* 서비스 표기 색도 모드마다 원본이 정한 값으로 바뀐다(Account·POS 는 dark 에서 더 밝다).
|
|
16
|
+
*/
|
|
17
|
+
export declare const LOGO_MODES: readonly ["light", "dark"];
|
|
18
|
+
export type SLogoMode = (typeof LOGO_MODES)[number];
|
|
19
|
+
/**
|
|
20
|
+
* 로고의 배치. `horizontal` 은 워드마크 오른쪽에 서비스 표기, `vertical` 은 워드마크 아래 가운데에 표기.
|
|
21
|
+
* 모든 서비스 로고가 세로 원본을 갖는다. 셀메이트 본체는 표기가 없어 세로여도 모양이 같다.
|
|
22
|
+
*/
|
|
23
|
+
export declare const LOGO_DIRECTIONS: readonly ["horizontal", "vertical"];
|
|
24
|
+
export type SLogoDirection = (typeof LOGO_DIRECTIONS)[number];
|
|
25
|
+
/**
|
|
26
|
+
* 기본 높이(px). `SIcon` 과 같은 값이라 나란히 쓸 때 손에 익은 크기가 같다.
|
|
27
|
+
* 폭은 주지 않는다 — 로고마다 다른 비율에서 저절로 나온다.
|
|
28
|
+
*/
|
|
29
|
+
export declare const LOGO_DEFAULT_SIZE = 24;
|
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
import type { CSSProperties } from 'react';
|
|
2
|
+
import type { SLogoDirection, SLogoMode, SLogoName } from './logo.config';
|
|
3
|
+
interface LogoGlyphProps {
|
|
4
|
+
name: SLogoName;
|
|
5
|
+
mode: SLogoMode;
|
|
6
|
+
direction: SLogoDirection;
|
|
7
|
+
/** 로고 전체를 덮을 한 색. 비우면 원본 브랜드 색(워드마크 + 서비스 색)이다 */
|
|
8
|
+
color?: string;
|
|
9
|
+
style?: CSSProperties;
|
|
10
|
+
}
|
|
11
|
+
/**
|
|
12
|
+
* @internal
|
|
13
|
+
* 로고 글리프 하나. 높이는 `style` 로 받고 폭은 viewBox 비율에서 나온다. 접근성 이름은 `SLogo` 가 붙인다.
|
|
14
|
+
*/
|
|
15
|
+
export declare function LogoGlyph({ name, mode, direction, color, style }: LogoGlyphProps): import("react").JSX.Element | null;
|
|
16
|
+
export {};
|
|
@@ -0,0 +1,67 @@
|
|
|
1
|
+
# SMeatballButton
|
|
2
|
+
|
|
3
|
+
> 자동 생성 문서 — `npm run docs:gen`. 소스: 각 컴포넌트의 Props/Handle 인터페이스 + import 의존성.
|
|
4
|
+
|
|
5
|
+
### SMeatballButton
|
|
6
|
+
|
|
7
|
+
#### Props
|
|
8
|
+
|
|
9
|
+
| Prop | Type | Default | Description |
|
|
10
|
+
|------|------|---------|-------------|
|
|
11
|
+
| `size?` | `SMeatballButtonSize` | `'sm'` | 버튼 크기 |
|
|
12
|
+
| `intent?` | `SMeatballButtonIntent` | `'default'` | 색상 의도. 어두운 배경 위에서는 inverse |
|
|
13
|
+
| `items?` | `SMeatballButtonItem[]` | `[]` | 메뉴 항목 목록 |
|
|
14
|
+
| `tooltipText?` | `string` | `'기능 더 보기'` | 호버 시 표시할 툴팁 텍스트. 빈 문자열이면 툴팁을 띄우지 않는다. 메뉴가 열려 있는 동안은 숨는다. |
|
|
15
|
+
| `ariaLabel?` | `string` | — | 스크린리더용 접근성 레이블. 미지정 시 tooltipText, 그것도 비면 '기능 더 보기' |
|
|
16
|
+
| `disabled?` | `boolean` | `false` | 비활성 |
|
|
17
|
+
| `className?` | `string` | — | 버튼을 감싸는 요소의 클래스. 위치 조정(absolute 배치 등)용 |
|
|
18
|
+
| `style?` | `CSSProperties` | — | 버튼을 감싸는 요소의 스타일. 위치 조정용 |
|
|
19
|
+
|
|
20
|
+
#### Events
|
|
21
|
+
|
|
22
|
+
| Event | Type | Description |
|
|
23
|
+
|-------|------|-------------|
|
|
24
|
+
| `onItemClick` | `(value: string \| number) => void` | 메뉴 항목 선택 |
|
|
25
|
+
| `onOpenChange` | `(open: boolean) => void` | 열림/닫힘 변경 |
|
|
26
|
+
|
|
27
|
+
#### Methods (ref)
|
|
28
|
+
|
|
29
|
+
| Method | Type | Description |
|
|
30
|
+
|--------|------|-------------|
|
|
31
|
+
| `open` | `() => void` | 메뉴 열기 |
|
|
32
|
+
| `close` | `() => void` | 메뉴 닫기 |
|
|
33
|
+
|
|
34
|
+
## Types
|
|
35
|
+
|
|
36
|
+
### SMeatballButtonSize
|
|
37
|
+
|
|
38
|
+
```ts
|
|
39
|
+
export type SMeatballButtonSize = SGhostButtonSize;
|
|
40
|
+
```
|
|
41
|
+
|
|
42
|
+
### SMeatballButtonIntent
|
|
43
|
+
|
|
44
|
+
```ts
|
|
45
|
+
export type SMeatballButtonIntent = 'default' | 'inverse';
|
|
46
|
+
```
|
|
47
|
+
|
|
48
|
+
### SMeatballButtonItem
|
|
49
|
+
|
|
50
|
+
```ts
|
|
51
|
+
/** 메뉴 항목 — SDropdownButton 과 같은 모양이다 */
|
|
52
|
+
export type SMeatballButtonItem = SDropdownButtonItem;
|
|
53
|
+
```
|
|
54
|
+
|
|
55
|
+
## Dependencies
|
|
56
|
+
|
|
57
|
+
### Depends on
|
|
58
|
+
|
|
59
|
+
- [SGhostButton](../SGhostButton)
|
|
60
|
+
|
|
61
|
+
### Graph
|
|
62
|
+
|
|
63
|
+
```mermaid
|
|
64
|
+
graph TD;
|
|
65
|
+
SMeatballButton --> SGhostButton
|
|
66
|
+
style SMeatballButton fill:#f9f,stroke:#333,stroke-width:4px
|
|
67
|
+
```
|
|
@@ -0,0 +1,36 @@
|
|
|
1
|
+
import { type CSSProperties } from 'react';
|
|
2
|
+
import { type SGhostButtonSize } from '../SGhostButton';
|
|
3
|
+
import type { SDropdownButtonItem } from '../SDropdownButton';
|
|
4
|
+
export type SMeatballButtonSize = SGhostButtonSize;
|
|
5
|
+
export type SMeatballButtonIntent = 'default' | 'inverse';
|
|
6
|
+
/** 메뉴 항목 — SDropdownButton 과 같은 모양이다 */
|
|
7
|
+
export type SMeatballButtonItem = SDropdownButtonItem;
|
|
8
|
+
export interface SMeatballButtonHandle {
|
|
9
|
+
/** 메뉴 열기 */
|
|
10
|
+
open: () => void;
|
|
11
|
+
/** 메뉴 닫기 */
|
|
12
|
+
close: () => void;
|
|
13
|
+
}
|
|
14
|
+
export interface SMeatballButtonProps {
|
|
15
|
+
/** 버튼 크기 */
|
|
16
|
+
size?: SMeatballButtonSize;
|
|
17
|
+
/** 색상 의도. 어두운 배경 위에서는 inverse */
|
|
18
|
+
intent?: SMeatballButtonIntent;
|
|
19
|
+
/** 메뉴 항목 목록 */
|
|
20
|
+
items?: SMeatballButtonItem[];
|
|
21
|
+
/** 호버 시 표시할 툴팁 텍스트. 빈 문자열이면 툴팁을 띄우지 않는다. 메뉴가 열려 있는 동안은 숨는다. */
|
|
22
|
+
tooltipText?: string;
|
|
23
|
+
/** 스크린리더용 접근성 레이블. 미지정 시 tooltipText, 그것도 비면 '기능 더 보기' */
|
|
24
|
+
ariaLabel?: string;
|
|
25
|
+
/** 비활성 */
|
|
26
|
+
disabled?: boolean;
|
|
27
|
+
/** 메뉴 항목 선택 */
|
|
28
|
+
onItemClick?: (value: string | number) => void;
|
|
29
|
+
/** 열림/닫힘 변경 */
|
|
30
|
+
onOpenChange?: (open: boolean) => void;
|
|
31
|
+
/** 버튼을 감싸는 요소의 클래스. 위치 조정(absolute 배치 등)용 */
|
|
32
|
+
className?: string;
|
|
33
|
+
/** 버튼을 감싸는 요소의 스타일. 위치 조정용 */
|
|
34
|
+
style?: CSSProperties;
|
|
35
|
+
}
|
|
36
|
+
export declare const SMeatballButton: import("react").ForwardRefExoticComponent<SMeatballButtonProps & import("react").RefAttributes<SMeatballButtonHandle>>;
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export { SMeatballButton, type SMeatballButtonProps, type SMeatballButtonHandle, type SMeatballButtonItem, type SMeatballButtonSize, type SMeatballButtonIntent, } from './SMeatballButton';
|
|
@@ -47,7 +47,7 @@ import { SModalOutlet } from 'sellmate-design-system-react';
|
|
|
47
47
|
|
|
48
48
|
## SModal.confirm
|
|
49
49
|
|
|
50
|
-
아이콘 + 제목 + 메시지 +
|
|
50
|
+
아이콘 + 제목 + 메시지 + 확인 버튼. `type` 에 따라 아이콘·메인 버튼 색이 결정된다.
|
|
51
51
|
|
|
52
52
|
```tsx
|
|
53
53
|
SModal.confirm({
|
|
@@ -55,13 +55,23 @@ SModal.confirm({
|
|
|
55
55
|
modalTitle: '삭제하시겠습니까?',
|
|
56
56
|
topMessage: ['이 작업은 되돌릴 수 없습니다.'],
|
|
57
57
|
mainButtonLabel: '삭제',
|
|
58
|
-
|
|
58
|
+
}).onOk(() => deleteItem());
|
|
59
|
+
```
|
|
60
|
+
|
|
61
|
+
**`subButtonLabel` 은 기본이 비어 있고, 그대로 두는 것이 기본이다.** `onCancel` 이 닫는 것 말고 따로 할 일이 있을 때만 준다 — 눌러도 창만 닫힌다면 X 버튼이 이미 하는 일이라(백드롭·ESC 도 열려 있다) 같은 버튼을 하나 더 세우지 않는다. 되묻는 모달도 예외가 아니다. 서브 버튼이 설 자리는 확인과 대등한 두 번째 선택지일 때이고, 그때 글자는 `취소`·`닫기` 가 아니라 그 버튼이 하는 일의 이름이 된다.
|
|
62
|
+
|
|
63
|
+
```tsx
|
|
64
|
+
SModal.confirm({
|
|
65
|
+
type: 'negative',
|
|
66
|
+
modalTitle: '재고가 모자란 주문이 있습니다',
|
|
67
|
+
mainButtonLabel: '자동 취소',
|
|
68
|
+
subButtonLabel: '수동 처리',
|
|
59
69
|
})
|
|
60
|
-
.onOk(() =>
|
|
61
|
-
.onCancel(() =>
|
|
70
|
+
.onOk(() => cancelShortOrders())
|
|
71
|
+
.onCancel(() => openManualFlow());
|
|
62
72
|
```
|
|
63
73
|
|
|
64
|
-
**옵션 (`SConfirmOptions`)** — 선언형 `SConfirmModalProps` 에서 제어 흐름 props(`open`/`onOpenChange`/`onOk`/`onCancel`/`onClose`)를 제외한 전부. 주요 키: `type`, `modalTitle`, `topMessage`/`bottomMessage`, `mainButtonLabel`/`
|
|
74
|
+
**옵션 (`SConfirmOptions`)** — 선언형 `SConfirmModalProps` 에서 제어 흐름 props(`open`/`onOpenChange`/`onOk`/`onCancel`/`onClose`)를 제외한 전부. 주요 키: `type`, `modalTitle`, `topMessage`/`bottomMessage`, `mainButtonLabel`/`mainButtonOutline`/`mainButtonDisabled`, `subButtonLabel`, `tagSlot`/`optionSlot`/`contentSlot`, `persistent`.
|
|
65
75
|
|
|
66
76
|
---
|
|
67
77
|
|
|
@@ -82,7 +82,7 @@ export interface SModalRef {
|
|
|
82
82
|
*
|
|
83
83
|
* @example
|
|
84
84
|
* // 확인/취소
|
|
85
|
-
* SModal.confirm({ type: 'negative', modalTitle: '삭제하시겠습니까?', mainButtonLabel: '삭제'
|
|
85
|
+
* SModal.confirm({ type: 'negative', modalTitle: '삭제하시겠습니까?', mainButtonLabel: '삭제' })
|
|
86
86
|
* .onOk(() => deleteItem())
|
|
87
87
|
* .onCancel(() => {});
|
|
88
88
|
*
|
|
@@ -10,15 +10,16 @@
|
|
|
10
10
|
|------|------|---------|-------------|
|
|
11
11
|
| `value?` | `string \| number \| null` | — | 입력 값 |
|
|
12
12
|
| `size?` | `SNumberInputSize` | `'sm'` | 크기 |
|
|
13
|
-
| `min?` | `number` | `Number.NEGATIVE_INFINITY` | 최솟값 |
|
|
14
|
-
| `max?` | `number` | `Number.POSITIVE_INFINITY` | 최댓값 |
|
|
13
|
+
| `min?` | `number` | `Number.NEGATIVE_INFINITY` | 최솟값 — **검증 경계**다 (`<input type="number">` 의 `min` 과 같다). 값을 고쳐 쓰지 않는다. 벗어나면 blur·제출 시 에러 상태가 서고 안내 문구가 자동으로 붙는다. 스테퍼(`showButton`)와 위/아래 화살표는 이 값을 한계로 삼는다. |
|
|
14
|
+
| `max?` | `number` | `Number.POSITIVE_INFINITY` | 최댓값 — **검증 경계**다 (`<input type="number">` 의 `max` 와 같다). 값을 고쳐 쓰지 않는다. 벗어나면 blur·제출 시 에러 상태가 서고 안내 문구가 자동으로 붙는다. 스테퍼(`showButton`)와 위/아래 화살표는 이 값을 한계로 삼는다. |
|
|
15
|
+
| `clampOnBlur?` | `boolean` | `false` | blur 시 값을 `[min, max]` 경계로 끌어당길지. 기본 `false`. 기본값에서는 사용자가 친 값이 그대로 보존되고, 범위를 벗어나면 에러 상태로 알린다 — 그래야 소비자의 범위 검증에 실제 입력값이 도달한다. `true` 로 켜면 범위 밖 값이 경계값으로 **말없이 바뀌고** `onValueChange` 로 되쏘아진다 (`min={1}` 인 칸에 `0` 을 넣고 blur 하면 `onValueChange(1)` 이 발화한다). 경계로 붙여도 사용자가 놀라지 않는 값에만 켠다. 켜면 범위 에러는 서지 않는다 — 고쳐 쓴 값은 언제나 범위 안이기 때문이다. |
|
|
15
16
|
| `step?` | `number` | `1` | 스텝 단위 |
|
|
16
|
-
| `
|
|
17
|
-
| `
|
|
17
|
+
| `showButton?` | `boolean` | `false` | 증감 버튼 표시 |
|
|
18
|
+
| `allowDecimal?` | `boolean` | `false` | 소수점 입력 허용 |
|
|
18
19
|
| `maxDecimalLength?` | `number` | — | 소수점 이하 최대 자리수 |
|
|
19
20
|
| `inputPrefix?` | `string` | `''` | 입력 앞 접두 텍스트 |
|
|
20
21
|
| `inputSuffix?` | `string` | `''` | 입력 뒤 접미 텍스트 |
|
|
21
|
-
| `
|
|
22
|
+
| `inputClassName?` | `string` | — | 네이티브 input className |
|
|
22
23
|
| `inputStyle?` | `CSSProperties` | — | 네이티브 input style |
|
|
23
24
|
| `autoFocus?` | `boolean` | — | 마운트 시 자동 포커스 |
|
|
24
25
|
| `name?` | `string` | — | 폼 연동 name |
|
|
@@ -27,9 +28,11 @@
|
|
|
27
28
|
| `readOnly?` | `boolean` | `false` | |
|
|
28
29
|
| `rules?` | `Rule[]` | — | 유효성 규칙 — blur 시 검증 |
|
|
29
30
|
| `status?` | `SFieldStatus` | — | |
|
|
30
|
-
| `focused?` | `boolean` | — |
|
|
31
|
-
| `hovered?` | `boolean` | — |
|
|
31
|
+
| `focused?` | `boolean` | — | 포커스 상태를 밖에서 지정한다 — 강조 테두리·링이 즉시 걸린다 (SField 로 그대로 넘어간다) |
|
|
32
|
+
| `hovered?` | `boolean` | — | 호버 상태를 밖에서 지정한다 — 강조는 `focused` 와 같다 (SField 로 그대로 넘어간다) |
|
|
32
33
|
| `label?` | `string` | — | |
|
|
34
|
+
| `labelPosition?` | `SFieldLabelPosition` | — | 레이블 위치 — `top` 이면 라벨이 컨트롤 위에 선다 (SField 로 그대로 넘어간다). |
|
|
35
|
+
| `subLabel?` | `string` | — | 보조 레이블 — 레이블 오른쪽 같은 줄에 붙는다 (SField 로 그대로 넘어간다). |
|
|
33
36
|
| `labelWidth?` | `number \| string` | — | |
|
|
34
37
|
| `icon?` | `SIconName` | — | |
|
|
35
38
|
| `iconColor?` | `SColor` | — | |
|
|
@@ -40,7 +43,7 @@
|
|
|
40
43
|
| `hint?` | `string` | — | |
|
|
41
44
|
| `error?` | `boolean` | — | |
|
|
42
45
|
| `errorMessage?` | `string` | — | |
|
|
43
|
-
| `width?` | `
|
|
46
|
+
| `width?` | `SFieldWidth` | — | 컨트롤 너비 — 폭 등급(`'xs' | 'sm' | 'md' | 'lg' | 'xl'`) · 숫자=px · CSS 길이. 등급은 `--cmp-field-width-*` 토큰으로 풀리며 `max`(= 스키마 상한)로 고른다. 상한이 `xl` 을 넘거나 상한이 없으면 `"100%"`. (`sellmate/field-width-grade` 가 검사한다) |
|
|
44
47
|
| `className?` | `string` | — | |
|
|
45
48
|
| `style?` | `CSSProperties` | — | |
|
|
46
49
|
|
|
@@ -52,6 +55,14 @@
|
|
|
52
55
|
| `onFocus` | `(e: React.FocusEvent<HTMLInputElement>) => void` | 포커스 이벤트 (sdFocus) |
|
|
53
56
|
| `onBlur` | `(e: React.FocusEvent<HTMLInputElement>) => void` | 블러 이벤트 (sdBlur) |
|
|
54
57
|
|
|
58
|
+
## Types
|
|
59
|
+
|
|
60
|
+
### SNumberInputSize
|
|
61
|
+
|
|
62
|
+
```ts
|
|
63
|
+
export type SNumberInputSize = SFieldSize;
|
|
64
|
+
```
|
|
65
|
+
|
|
55
66
|
## Dependencies
|
|
56
67
|
|
|
57
68
|
### Used by
|
|
@@ -1,9 +1,10 @@
|
|
|
1
1
|
import { type CSSProperties } from 'react';
|
|
2
|
-
import { type SFieldSize, type SFieldAddonAlign, type SFieldStatus } from '../SField';
|
|
2
|
+
import { type SFieldSize, type SFieldAddonAlign, type SFieldStatus, type SFieldLabelPosition } from '../SField';
|
|
3
3
|
import { type SIconName } from '../SIcon';
|
|
4
4
|
import { type SColor } from '../../lib/color';
|
|
5
5
|
import { type Rule } from '../../lib/form';
|
|
6
6
|
import { type STooltipProps } from '../STooltip';
|
|
7
|
+
import { type SFieldWidth } from '../../lib/field-width';
|
|
7
8
|
export type SNumberInputSize = SFieldSize;
|
|
8
9
|
export interface SNumberInputProps {
|
|
9
10
|
/** 입력 값 */
|
|
@@ -12,16 +13,36 @@ export interface SNumberInputProps {
|
|
|
12
13
|
onValueChange?: (value: number | null) => void;
|
|
13
14
|
/** 크기 */
|
|
14
15
|
size?: SNumberInputSize;
|
|
15
|
-
/**
|
|
16
|
+
/**
|
|
17
|
+
* 최솟값 — **검증 경계**다 (`<input type="number">` 의 `min` 과 같다).
|
|
18
|
+
* 값을 고쳐 쓰지 않는다. 벗어나면 blur·제출 시 에러 상태가 서고 안내 문구가 자동으로 붙는다.
|
|
19
|
+
* 스테퍼(`showButton`)와 위/아래 화살표는 이 값을 한계로 삼는다.
|
|
20
|
+
*/
|
|
16
21
|
min?: number;
|
|
17
|
-
/**
|
|
22
|
+
/**
|
|
23
|
+
* 최댓값 — **검증 경계**다 (`<input type="number">` 의 `max` 와 같다).
|
|
24
|
+
* 값을 고쳐 쓰지 않는다. 벗어나면 blur·제출 시 에러 상태가 서고 안내 문구가 자동으로 붙는다.
|
|
25
|
+
* 스테퍼(`showButton`)와 위/아래 화살표는 이 값을 한계로 삼는다.
|
|
26
|
+
*/
|
|
18
27
|
max?: number;
|
|
28
|
+
/**
|
|
29
|
+
* blur 시 값을 `[min, max]` 경계로 끌어당길지. 기본 `false`.
|
|
30
|
+
*
|
|
31
|
+
* 기본값에서는 사용자가 친 값이 그대로 보존되고, 범위를 벗어나면 에러 상태로 알린다 —
|
|
32
|
+
* 그래야 소비자의 범위 검증에 실제 입력값이 도달한다.
|
|
33
|
+
*
|
|
34
|
+
* `true` 로 켜면 범위 밖 값이 경계값으로 **말없이 바뀌고** `onValueChange` 로 되쏘아진다
|
|
35
|
+
* (`min={1}` 인 칸에 `0` 을 넣고 blur 하면 `onValueChange(1)` 이 발화한다).
|
|
36
|
+
* 경계로 붙여도 사용자가 놀라지 않는 값에만 켠다. 켜면 범위 에러는 서지 않는다 —
|
|
37
|
+
* 고쳐 쓴 값은 언제나 범위 안이기 때문이다.
|
|
38
|
+
*/
|
|
39
|
+
clampOnBlur?: boolean;
|
|
19
40
|
/** 스텝 단위 */
|
|
20
41
|
step?: number;
|
|
21
42
|
/** 증감 버튼 표시 */
|
|
22
|
-
|
|
43
|
+
showButton?: boolean;
|
|
23
44
|
/** 소수점 입력 허용 */
|
|
24
|
-
|
|
45
|
+
allowDecimal?: boolean;
|
|
25
46
|
/** 소수점 이하 최대 자리수 */
|
|
26
47
|
maxDecimalLength?: number;
|
|
27
48
|
/** 입력 앞 접두 텍스트 */
|
|
@@ -29,7 +50,7 @@ export interface SNumberInputProps {
|
|
|
29
50
|
/** 입력 뒤 접미 텍스트 */
|
|
30
51
|
inputSuffix?: string;
|
|
31
52
|
/** 네이티브 input className */
|
|
32
|
-
|
|
53
|
+
inputClassName?: string;
|
|
33
54
|
/** 네이티브 input style */
|
|
34
55
|
inputStyle?: CSSProperties;
|
|
35
56
|
/** 마운트 시 자동 포커스 */
|
|
@@ -46,9 +67,25 @@ export interface SNumberInputProps {
|
|
|
46
67
|
/** 유효성 규칙 — blur 시 검증 */
|
|
47
68
|
rules?: Rule[];
|
|
48
69
|
status?: SFieldStatus;
|
|
70
|
+
/** 포커스 상태를 밖에서 지정한다 — 강조 테두리·링이 즉시 걸린다 (SField 로 그대로 넘어간다) */
|
|
49
71
|
focused?: boolean;
|
|
72
|
+
/** 호버 상태를 밖에서 지정한다 — 강조는 `focused` 와 같다 (SField 로 그대로 넘어간다) */
|
|
50
73
|
hovered?: boolean;
|
|
51
74
|
label?: string;
|
|
75
|
+
/**
|
|
76
|
+
* 레이블 위치 — `top` 이면 라벨이 컨트롤 위에 선다 (SField 로 그대로 넘어간다).
|
|
77
|
+
*
|
|
78
|
+
* @nodemo SField 에서 내려오는 공통 필드 옵션이다 — 같은 데모를 컨트롤마다 복제하지 않고
|
|
79
|
+
* 대표 컨트롤 `SInput` 과 `SField` 에 한 번 둔다 (scripts/check-docs-coverage.mjs 머리말).
|
|
80
|
+
*/
|
|
81
|
+
labelPosition?: SFieldLabelPosition;
|
|
82
|
+
/**
|
|
83
|
+
* 보조 레이블 — 레이블 오른쪽 같은 줄에 붙는다 (SField 로 그대로 넘어간다).
|
|
84
|
+
*
|
|
85
|
+
* @nodemo SField 에서 내려오는 공통 필드 옵션이다 — 같은 데모를 컨트롤마다 복제하지 않고
|
|
86
|
+
* 대표 컨트롤 `SInput` 과 `SField` 에 한 번 둔다 (scripts/check-docs-coverage.mjs 머리말).
|
|
87
|
+
*/
|
|
88
|
+
subLabel?: string;
|
|
52
89
|
labelWidth?: number | string;
|
|
53
90
|
icon?: SIconName;
|
|
54
91
|
iconColor?: SColor;
|
|
@@ -59,7 +96,12 @@ export interface SNumberInputProps {
|
|
|
59
96
|
hint?: string;
|
|
60
97
|
error?: boolean;
|
|
61
98
|
errorMessage?: string;
|
|
62
|
-
|
|
99
|
+
/**
|
|
100
|
+
* 컨트롤 너비 — 폭 등급(`'xs' | 'sm' | 'md' | 'lg' | 'xl'`) · 숫자=px · CSS 길이.
|
|
101
|
+
* 등급은 `--cmp-field-width-*` 토큰으로 풀리며 `max`(= 스키마 상한)로 고른다.
|
|
102
|
+
* 상한이 `xl` 을 넘거나 상한이 없으면 `"100%"`. (`sellmate/field-width-grade` 가 검사한다)
|
|
103
|
+
*/
|
|
104
|
+
width?: SFieldWidth;
|
|
63
105
|
className?: string;
|
|
64
106
|
style?: CSSProperties;
|
|
65
107
|
}
|