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,79 @@
|
|
|
1
|
+
import { type HTMLAttributes } from 'react';
|
|
2
|
+
/** 리스트박스의 한 행 — 라벨은 기본값이 있고 클릭만 앱이 준다 */
|
|
3
|
+
export interface SAccountListBoxItem {
|
|
4
|
+
/** 라벨 텍스트. 행마다 기본값이 있다 */
|
|
5
|
+
label?: string;
|
|
6
|
+
/** 클릭 */
|
|
7
|
+
onClick?: () => void;
|
|
8
|
+
}
|
|
9
|
+
/** 언어 변경 하위 메뉴의 한 칸 */
|
|
10
|
+
export interface SAccountListBoxLanguageOption {
|
|
11
|
+
/** 값. `SAccountListBoxLanguage.value` 와 맞춰 지금 언어를 가린다 */
|
|
12
|
+
value: string;
|
|
13
|
+
/** 화면에 적히는 언어명 */
|
|
14
|
+
label: string;
|
|
15
|
+
}
|
|
16
|
+
/** 언어 변경 행 — 지금 쓰는 언어가 우측에 붙고, 고를 것이 있으면 눌러서 편다 */
|
|
17
|
+
export interface SAccountListBoxLanguage extends SAccountListBoxItem {
|
|
18
|
+
/**
|
|
19
|
+
* 지금 선택돼 있는 언어. 우측에 브랜드색으로 붙는다.
|
|
20
|
+
* `options` 를 함께 주면 그 목록에서 같은 `value` 를 찾아 `label` 로 적는다.
|
|
21
|
+
*/
|
|
22
|
+
value?: string;
|
|
23
|
+
/**
|
|
24
|
+
* 고를 수 있는 언어. 주면 행을 눌렀을 때 **하위 메뉴가 우측 아래로 펼쳐지고**,
|
|
25
|
+
* 그동안 계정 패널은 닫히지 않는다. 주지 않으면 행을 누르는 것 자체가 액션이라
|
|
26
|
+
* `onClick` 만 돌고 패널이 닫힌다 — 언어 화면을 따로 두는 앱이 그렇다.
|
|
27
|
+
*/
|
|
28
|
+
options?: SAccountListBoxLanguageOption[];
|
|
29
|
+
/** 하위 메뉴에서 언어를 고름. 고르면 하위 메뉴와 계정 패널이 함께 닫힌다 */
|
|
30
|
+
onChange?: (value: string) => void;
|
|
31
|
+
}
|
|
32
|
+
export interface SAccountListBoxProps extends HTMLAttributes<HTMLDivElement> {
|
|
33
|
+
/** 로그인한 계정의 이메일 */
|
|
34
|
+
email?: string;
|
|
35
|
+
/** 로그인한 계정의 이름 */
|
|
36
|
+
name?: string;
|
|
37
|
+
/**
|
|
38
|
+
* 권한. 이름 오른쪽 끝에 붙는다. 없으면 이름만 남는다.
|
|
39
|
+
* (`role` 이 아닌 이유 — 그 이름은 DOM 의 ARIA 속성이라 소비 앱의 a11y lint 가 값을 ARIA 롤로 읽는다)
|
|
40
|
+
*/
|
|
41
|
+
authority?: string;
|
|
42
|
+
/** 계정 설정 행. 주지 않으면 행이 빠진다 */
|
|
43
|
+
accountSetting?: SAccountListBoxItem;
|
|
44
|
+
/** 언어 변경 행. 주지 않으면 행이 빠진다 */
|
|
45
|
+
language?: SAccountListBoxLanguage;
|
|
46
|
+
/** 로그아웃 행. 이 행은 늘 있고, 라벨과 클릭만 받는다 */
|
|
47
|
+
logout?: SAccountListBoxItem;
|
|
48
|
+
}
|
|
49
|
+
/**
|
|
50
|
+
* 리스트박스에 **담기는 내용**만 추린 것.
|
|
51
|
+
* 팝오버로 띄우는 쪽(`SSystemActionButton` 의 `option` · `SGnbSystem` 의 `account.listBox`)이
|
|
52
|
+
* 이 덩어리째 넘겨받으므로, 패널의 DOM 속성(className·style …)과 분리해 둔다.
|
|
53
|
+
*/
|
|
54
|
+
export type SAccountListBoxContent = Pick<SAccountListBoxProps, 'email' | 'name' | 'authority' | 'accountSetting' | 'language' | 'logout'>;
|
|
55
|
+
/**
|
|
56
|
+
* SAccountListBox — GNB system 의 계정 행을 눌렀을 때 뜨는 계정 리스트박스.
|
|
57
|
+
*
|
|
58
|
+
* 판에서는 계정 행이 맨 아래에 있어 **행 위로 · 행 왼쪽 끝에 맞춰**, 전폭 상단바에서는 **행 아래로 ·
|
|
59
|
+
* 오른쪽 끝에 맞춰** 펼쳐진다. 이 방향은 고정이라 앱이 고르지 않는다.
|
|
60
|
+
*
|
|
61
|
+
* 위에서부터 [사용자정보(이메일 · 이름 + 권한)] · [계정 설정] · [언어 변경] · [계정 로그아웃] 이다.
|
|
62
|
+
* **권한(`authority`) · 계정 설정 · 언어 변경은 옵션**이고, 사용자정보와 로그아웃은 늘 있다 — 이 패널이 존재하는
|
|
63
|
+
* 이유가 "지금 누구로 로그인해 있는가"와 "나가기"이기 때문이다. 옵션을 빼면 그 줄이 통째로 사라지고
|
|
64
|
+
* 나머지가 위로 붙는다.
|
|
65
|
+
*
|
|
66
|
+
* 폭은 토큰이 정하는 고정값(240px)이라 앱이 늘리지 않는다 — 이 패널은 GNB 폭에 맞춰 뜬다.
|
|
67
|
+
* 행 라벨·아이콘은 무엇을 하는 행인지가 곧 정체라 아이콘을 밖에서 바꾸지 않고, 라벨만 바꿀 수 있다.
|
|
68
|
+
*
|
|
69
|
+
* **언어 변경만 하위 메뉴를 가질 수 있다.** `language.options` 를 주면 그 행이 우측 값 아래로
|
|
70
|
+
* 목록을 펴고, 고를 때까지 계정 패널은 열려 있는다. 주지 않으면 행을 누르는 것 자체가 액션이라
|
|
71
|
+
* `onClick` 만 돌고 패널이 닫힌다 — 언어를 고르는 화면을 따로 두는 앱이 그렇다.
|
|
72
|
+
*
|
|
73
|
+
* **이 컴포넌트는 패널만 그린다.** 계정 행에 붙여 띄우는 것은 `SSystemActionButton` 의
|
|
74
|
+
* `type="account"` 이 맡으므로(`option` 에 이 내용을 넘긴다 — 필수다), 앱이 직접 팝오버를 조립할
|
|
75
|
+
* 일은 없다. 계정 행은 예외 없이 이 패널의 트리거다.
|
|
76
|
+
*
|
|
77
|
+
* 토큰은 `--cmp-gnb-system-accountListBox-*` · `--cmp-gnb-system-accountButton-*`.
|
|
78
|
+
*/
|
|
79
|
+
export declare const SAccountListBox: import("react").ForwardRefExoticComponent<SAccountListBoxProps & import("react").RefAttributes<HTMLDivElement>>;
|
|
@@ -0,0 +1,58 @@
|
|
|
1
|
+
import { type RefObject } from 'react';
|
|
2
|
+
import { type SPortalAlign, type SPortalPlacement } from '../SPortal';
|
|
3
|
+
import { type STagColor } from '../STag';
|
|
4
|
+
/**
|
|
5
|
+
* 시스템 메뉴의 한 칸.
|
|
6
|
+
*
|
|
7
|
+
* `color` 를 주면 그 칸은 **상태 칸**이 되어 점과 글자가 같은 색으로 물든다(시안) — 상태는 색 자체가
|
|
8
|
+
* 뜻이라, 고르는 자리에서도 그 색을 보고 고른다. 주지 않으면 글자만 있는 칸이고, 지금 값만
|
|
9
|
+
* 브랜드색으로 떠오른다.
|
|
10
|
+
*/
|
|
11
|
+
export interface SystemMenuOption {
|
|
12
|
+
/** 값. 지금 값과 맞춰 어느 칸이 선택돼 있는지를 가린다 */
|
|
13
|
+
value: string;
|
|
14
|
+
/** 화면에 적히는 이름 */
|
|
15
|
+
label: string;
|
|
16
|
+
/** 상태 칸의 색. 주면 점 + 같은 색 글자로 그린다 */
|
|
17
|
+
color?: STagColor;
|
|
18
|
+
}
|
|
19
|
+
interface SystemMenuPortalProps {
|
|
20
|
+
/** 표시 여부 */
|
|
21
|
+
open: boolean;
|
|
22
|
+
/** 표시 상태 변경 */
|
|
23
|
+
onOpenChange: (open: boolean) => void;
|
|
24
|
+
/** 붙을 자리 — 값 아래로 펼 때는 **바뀌는 값**(우측 값 묶음 · 상태 태그), 옆으로 펼 때는 행 자체 */
|
|
25
|
+
anchorRef: RefObject<HTMLElement | null>;
|
|
26
|
+
/** 뜨는 방향. 기본 `'bottom'`(앵커 아래) */
|
|
27
|
+
placement?: SPortalPlacement;
|
|
28
|
+
/** 교차축 정렬. 아래로 펼 때는 값이 놓인 쪽 끝, 옆으로 펼 때는 위쪽 끝(`start`) */
|
|
29
|
+
align: SPortalAlign;
|
|
30
|
+
/**
|
|
31
|
+
* 메뉴를 여는 행. 이 행 위의 클릭은 행이 스스로 토글하므로 여기서 닫지 않는다 —
|
|
32
|
+
* 앵커는 행이 아니라 그 안의 값이라, 값 밖(라벨 쪽)을 누르면 닫혔다가 곧바로 다시 열린다.
|
|
33
|
+
*/
|
|
34
|
+
triggerRef?: RefObject<HTMLElement | null>;
|
|
35
|
+
/** 접근성 이름 — 무엇을 고르는 메뉴인지 */
|
|
36
|
+
ariaLabel?: string;
|
|
37
|
+
/** 지금 값 */
|
|
38
|
+
value?: string;
|
|
39
|
+
/** 고를 수 있는 칸 */
|
|
40
|
+
options: SystemMenuOption[];
|
|
41
|
+
/** 칸을 고름 */
|
|
42
|
+
onSelect: (value: string) => void;
|
|
43
|
+
}
|
|
44
|
+
/**
|
|
45
|
+
* GNB system 의 값 고르기 메뉴.
|
|
46
|
+
*
|
|
47
|
+
* 계정 패널의 언어 변경 행 · `SSystemActionButton` 의 `subSelect` · `status` 가 모두 이것을 연다 —
|
|
48
|
+
* 세 자리 모두 "지금 값이 적혀 있고, 눌러서 다른 값으로 바꾼다" 는 같은 일이라, 뜨는 자리와 닫히는
|
|
49
|
+
* 시점을 한 곳에 모아 두지 않으면 자리마다 동작이 갈린다.
|
|
50
|
+
*
|
|
51
|
+
* **뜨는 자리는 부르는 쪽이 정한다.** 계정 패널 안의 행처럼 판 안에서 열리는 자리는 바꾸는 대상인
|
|
52
|
+
* 값 바로 아래로, 값이 놓인 쪽 끝에 맞춰 편다(패널 폭 안에 갇혀 있어 옆이 없다). 판 없이 행 하나로
|
|
53
|
+
* 서는 자리는 행 오른쪽으로 편다 — 행 아래는 다음 행이 이어지는 자리라 메뉴가 그 위를 덮는다.
|
|
54
|
+
*
|
|
55
|
+
* 공개 API 가 아니므로 index.ts 로 내보내지 않는다 — 앱은 각 행의 `options` 로 닿는다.
|
|
56
|
+
*/
|
|
57
|
+
export declare function SystemMenuPortal({ open, onOpenChange, anchorRef, placement, align, triggerRef, ariaLabel, value, options, onSelect, }: SystemMenuPortalProps): import("react").JSX.Element;
|
|
58
|
+
export {};
|
|
@@ -0,0 +1,64 @@
|
|
|
1
|
+
/** 행의 성격. default = 보통 행, negative = 되돌릴 수 없는 행(로그아웃) */
|
|
2
|
+
export declare const ACCOUNT_LIST_BOX_ITEM_TONES: readonly ["default", "negative"];
|
|
3
|
+
export type SAccountListBoxItemTone = (typeof ACCOUNT_LIST_BOX_ITEM_TONES)[number];
|
|
4
|
+
/** 행마다 정해져 있는 아이콘 — 무엇을 하는 행인지가 아이콘으로 읽히므로 밖에서 바꾸지 않는다 */
|
|
5
|
+
export declare const ACCOUNT_LIST_BOX_ICONS: {
|
|
6
|
+
readonly accountSetting: "account";
|
|
7
|
+
readonly language: "global";
|
|
8
|
+
readonly logout: "logout";
|
|
9
|
+
};
|
|
10
|
+
/** 행 라벨 기본값 — 시안 문구. 앱이 바꿀 수 있다 */
|
|
11
|
+
export declare const ACCOUNT_LIST_BOX_LABELS: {
|
|
12
|
+
readonly accountSetting: "계정 설정";
|
|
13
|
+
readonly language: "언어 변경";
|
|
14
|
+
readonly logout: "계정 로그아웃";
|
|
15
|
+
};
|
|
16
|
+
/** 행 성격별 색 */
|
|
17
|
+
export declare const ACCOUNT_LIST_BOX_TONE_CONFIG: Record<SAccountListBoxItemTone, {
|
|
18
|
+
bg: string;
|
|
19
|
+
bgHover: string;
|
|
20
|
+
text: string;
|
|
21
|
+
icon: string;
|
|
22
|
+
}>;
|
|
23
|
+
/** 치수·색 — 전부 토큰 참조 */
|
|
24
|
+
export declare const ACCOUNT_LIST_BOX_LAYOUT: {
|
|
25
|
+
/** 패널 고정 폭 */
|
|
26
|
+
readonly width: string;
|
|
27
|
+
/** 패널 배경 */
|
|
28
|
+
readonly bg: string;
|
|
29
|
+
/** 패널 라운드 */
|
|
30
|
+
readonly radius: string;
|
|
31
|
+
/** 사용자정보 영역 배경 */
|
|
32
|
+
readonly userdataBg: string;
|
|
33
|
+
/** 사용자정보 영역 좌우 여백 */
|
|
34
|
+
readonly userdataPaddingX: string;
|
|
35
|
+
/** 사용자정보 영역 상하 여백 */
|
|
36
|
+
readonly userdataPaddingY: string;
|
|
37
|
+
/** 이메일 글자색 */
|
|
38
|
+
readonly emailColor: string;
|
|
39
|
+
/** 이름 글자색 */
|
|
40
|
+
readonly nameColor: string;
|
|
41
|
+
/** 권한 글자색 */
|
|
42
|
+
readonly roleColor: string;
|
|
43
|
+
/** 행 묶음의 상하 여백 */
|
|
44
|
+
readonly listPaddingY: string;
|
|
45
|
+
/** 행 좌우 여백 */
|
|
46
|
+
readonly itemPaddingX: string;
|
|
47
|
+
/** 행 상하 여백 */
|
|
48
|
+
readonly itemPaddingY: string;
|
|
49
|
+
/** 행 아이콘 ↔ 라벨 간격 */
|
|
50
|
+
readonly itemGap: string;
|
|
51
|
+
/** 행 아이콘 크기 */
|
|
52
|
+
readonly itemIcon: string;
|
|
53
|
+
/** 우측 값 ↔ 화살표 간격 */
|
|
54
|
+
readonly selectDataGap: string;
|
|
55
|
+
/** 우측 화살표 크기 */
|
|
56
|
+
readonly selectDataIcon: string;
|
|
57
|
+
/** 우측 값 글자색 */
|
|
58
|
+
readonly selectDataText: string;
|
|
59
|
+
/** 시스템 메뉴에서 지금 값인 칸의 글자색 — 계정 행이 아니라 목록 항목이라
|
|
60
|
+
* listBoxItem 의 선택 색을 그대로 따른다(다른 목록의 선택 표시와 같은 색) */
|
|
61
|
+
readonly menuSelectedText: string;
|
|
62
|
+
/** 우측 화살표색 */
|
|
63
|
+
readonly selectDataIconColor: string;
|
|
64
|
+
};
|
|
@@ -0,0 +1,2 @@
|
|
|
1
|
+
export { SAccountListBox, type SAccountListBoxProps, type SAccountListBoxContent, type SAccountListBoxItem, type SAccountListBoxLanguage, type SAccountListBoxLanguageOption, } from './SAccountListBox';
|
|
2
|
+
export { ACCOUNT_LIST_BOX_ICONS, ACCOUNT_LIST_BOX_ITEM_TONES, ACCOUNT_LIST_BOX_LABELS, ACCOUNT_LIST_BOX_LAYOUT, ACCOUNT_LIST_BOX_TONE_CONFIG, type SAccountListBoxItemTone, } from './accountListBox.config';
|
|
@@ -10,6 +10,7 @@
|
|
|
10
10
|
|------|------|---------|-------------|
|
|
11
11
|
| `open?` | `boolean` | — | |
|
|
12
12
|
| `persistent?` | `boolean` | — | 백드롭·ESC로 안 닫히고 흔들림 (sd-modal-container persistent). **기본값 true** |
|
|
13
|
+
| `showClose?` | `boolean` | `true` | 우측 상단 닫기(X) 버튼. **기본값 true** `false` 는 **액션을 끝내야만 나갈 수 있는 모달**에만 준다 — 필수 약관 동의, 필수 정보 입력처럼 중간에 빠져나가면 앱이 정의되지 않은 상태로 남는 경우다. `persistent` 기본값(true)과 겹치면 나가는 길이 모달 안의 버튼 하나뿐이 되므로, `button` 이나 `footerLeft` 로 그 길을 반드시 둔다. |
|
|
13
14
|
| `modalTitle?` | `string` | `''` | |
|
|
14
15
|
| `description?` | `ReactNode` | — | 제목 오른쪽에 붙는 보조 설명 (sd-action-modal 의 header-sub-title 슬롯). 문자열이면 서브텍스트 스타일로 렌더하고, 노드를 넘기면 그대로 배치한다. |
|
|
15
16
|
| `button?` | `SFooterButton` | — | 하단 액션 버튼 (주 액션 1개). 의도적으로 단수다 — 보조 버튼(취소·삭제 등)은 `footerLeft` 슬롯에 직접 배치한다. |
|
|
@@ -7,6 +7,14 @@ export interface SActionModalProps {
|
|
|
7
7
|
onClose?: () => void;
|
|
8
8
|
/** 백드롭·ESC로 안 닫히고 흔들림 (sd-modal-container persistent). **기본값 true** */
|
|
9
9
|
persistent?: boolean;
|
|
10
|
+
/**
|
|
11
|
+
* 우측 상단 닫기(X) 버튼. **기본값 true**
|
|
12
|
+
*
|
|
13
|
+
* `false` 는 **액션을 끝내야만 나갈 수 있는 모달**에만 준다 — 필수 약관 동의, 필수 정보 입력처럼
|
|
14
|
+
* 중간에 빠져나가면 앱이 정의되지 않은 상태로 남는 경우다. `persistent` 기본값(true)과 겹치면
|
|
15
|
+
* 나가는 길이 모달 안의 버튼 하나뿐이 되므로, `button` 이나 `footerLeft` 로 그 길을 반드시 둔다.
|
|
16
|
+
*/
|
|
17
|
+
showClose?: boolean;
|
|
10
18
|
modalTitle?: string;
|
|
11
19
|
/**
|
|
12
20
|
* 제목 오른쪽에 붙는 보조 설명 (sd-action-modal 의 header-sub-title 슬롯).
|
|
@@ -36,4 +44,4 @@ export interface SActionModalProps {
|
|
|
36
44
|
* `button` 은 의도적으로 단수다. 주 액션은 오른쪽에 하나만 두고, 보조 버튼은 `footerLeft` 슬롯에
|
|
37
45
|
* 소비자가 직접 배치한다. (buttons 배열 API 를 추가하지 말 것)
|
|
38
46
|
*/
|
|
39
|
-
export declare function SActionModal({ open, onOpenChange, onClose, persistent, modalTitle, description, button, footerLeft, width, height, children, }: SActionModalProps): import("react").JSX.Element;
|
|
47
|
+
export declare function SActionModal({ open, onOpenChange, onClose, persistent, modalTitle, description, button, footerLeft, showClose, width, height, children, }: SActionModalProps): import("react").JSX.Element;
|
|
@@ -10,16 +10,43 @@
|
|
|
10
10
|
|------|------|---------|-------------|
|
|
11
11
|
| `color?` | `SBadgeColor` | `'blue'` | 뱃지 색상 |
|
|
12
12
|
|
|
13
|
+
## Types
|
|
14
|
+
|
|
15
|
+
### SBadgeColor
|
|
16
|
+
|
|
17
|
+
```ts
|
|
18
|
+
export type SBadgeColor = (typeof BADGE_COLORS)[number];
|
|
19
|
+
```
|
|
20
|
+
|
|
21
|
+
### BADGE_COLORS
|
|
22
|
+
|
|
23
|
+
```ts
|
|
24
|
+
export const BADGE_COLORS = [
|
|
25
|
+
'red',
|
|
26
|
+
'orange',
|
|
27
|
+
'yellow',
|
|
28
|
+
'green',
|
|
29
|
+
'lightblue',
|
|
30
|
+
'blue',
|
|
31
|
+
'darkblue',
|
|
32
|
+
'indigo',
|
|
33
|
+
'purple',
|
|
34
|
+
'grey',
|
|
35
|
+
] as const;
|
|
36
|
+
```
|
|
37
|
+
|
|
13
38
|
## Dependencies
|
|
14
39
|
|
|
15
40
|
### Used by
|
|
16
41
|
|
|
42
|
+
- [SCalendarBoard](../SCalendarBoard)
|
|
17
43
|
- [SSectionHeaderCard](../SSectionHeaderCard)
|
|
18
44
|
|
|
19
45
|
### Graph
|
|
20
46
|
|
|
21
47
|
```mermaid
|
|
22
48
|
graph TD;
|
|
49
|
+
SCalendarBoard --> SBadge
|
|
23
50
|
SSectionHeaderCard --> SBadge
|
|
24
51
|
style SBadge fill:#f9f,stroke:#333,stroke-width:4px
|
|
25
52
|
```
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { type HTMLAttributes } from 'react';
|
|
2
|
-
export declare const BADGE_COLORS: readonly ["red", "orange", "yellow", "green", "blue", "darkblue", "indigo", "grey"];
|
|
2
|
+
export declare const BADGE_COLORS: readonly ["red", "orange", "yellow", "green", "lightblue", "blue", "darkblue", "indigo", "purple", "grey"];
|
|
3
3
|
export type SBadgeColor = (typeof BADGE_COLORS)[number];
|
|
4
4
|
export interface SBadgeProps extends HTMLAttributes<HTMLSpanElement> {
|
|
5
5
|
/** 뱃지 색상 */
|
|
@@ -0,0 +1,122 @@
|
|
|
1
|
+
# SBarChart
|
|
2
|
+
|
|
3
|
+
> 자동 생성 문서 — `npm run docs:gen`. 소스: 각 컴포넌트의 Props/Handle 인터페이스 + import 의존성.
|
|
4
|
+
|
|
5
|
+
### SBarChart
|
|
6
|
+
|
|
7
|
+
#### Props
|
|
8
|
+
|
|
9
|
+
| Prop | Type | Default | Description |
|
|
10
|
+
|------|------|---------|-------------|
|
|
11
|
+
| `categories` | `string[]` | — | 가로축(가로 막대면 세로축)에 놓일 항목 이름 |
|
|
12
|
+
| `series` | `SBarChartSeries[]` | — | 계열 목록. 각 `data` 는 `categories` 와 같은 순서다 |
|
|
13
|
+
| `title?` | `string` | — | 차트 제목 — 왼쪽 위에 놓인다 |
|
|
14
|
+
| `unit?` | `string` | — | 단위 — 오른쪽 위에 "단위 : " 를 붙여 놓는다 |
|
|
15
|
+
| `direction?` | `SBarChartDirection` | `'vertical'` | 막대가 자라는 방향 |
|
|
16
|
+
| `stacked?` | `boolean` | `false` | 계열을 나란히 놓는 대신 **한 막대에 쌓는다**. 항목의 크기와 그 안의 구성을 함께 볼 때 쓴다. 첫 계열이 기준선에 붙고, 값 라벨은 조각마다가 아니라 **항목의 합계**를 한 번 적는다. 음수는 0 아래로 따로 쌓이며, 값 축도 개별 값이 아닌 항목별 합계로 잡힌다 |
|
|
17
|
+
| `palette?` | `SBarChartPalette` | `'default'` | 색 팔레트. 계열이 하나면 계열 대신 **항목**마다 색이 바뀐다. `custom` 일 때만 `colors` 를 본다 |
|
|
18
|
+
| `colors?` | `SBarChartColor[]` | — | `palette='custom'` 에서 쓸 색 이름을 계열 순서대로. 계열보다 짧으면 앞에서부터 순환한다 |
|
|
19
|
+
| `max?` | `number` | — | 값 축의 최댓값. 주지 않으면 데이터에서 읽기 좋은 값으로 정한다 |
|
|
20
|
+
| `tickCount?` | `number` | `8` | 값 축 눈금 개수 |
|
|
21
|
+
| `barSize?` | `number` | `BAR_SIZE_MAX` | 막대 두께 상한(px, 24~80). 낮추면 좌우 여백 상한도 같은 비율로 따라 내려온다 |
|
|
22
|
+
| `showValueLabel?` | `boolean` | `true` | 막대마다 값을 적는다 |
|
|
23
|
+
| `showLegend?` | `boolean` | `true` | 범례를 보인다 |
|
|
24
|
+
| `legendPosition?` | `SBarChartLegendPosition` | `'top'` | 범례 위치 |
|
|
25
|
+
| `showTooltip?` | `boolean` | `true` | 막대에 마우스를 올리면 값 상자를 띄운다 |
|
|
26
|
+
| `formatValue?` | `(value: number) => string` | `defaultFormat` | 값 표시 형식 |
|
|
27
|
+
| `height?` | `number \| string` | — | 차트 높이. **아래 축 텍스트까지 포함한 값**이다 — 그림은 그만큼 줄어든다 |
|
|
28
|
+
| `tooltipFooter?` | `(category: SBarChartTooltipCategory) => ReactNode` | — | 툴팁의 값 아래에 덧붙일 내용. 짚은 항목을 받아 그린다 — 계열 값만으로 모자란 맥락 (합계, 전월 대비 등)을 적는다. 툴팁은 누를 수 없으므로 버튼·링크는 넣지 않는다 |
|
|
29
|
+
| `className?` | `string` | — | |
|
|
30
|
+
| `style?` | `CSSProperties` | — | |
|
|
31
|
+
|
|
32
|
+
#### Events
|
|
33
|
+
|
|
34
|
+
| Event | Type | Description |
|
|
35
|
+
|-------|------|-------------|
|
|
36
|
+
| `onBarClick` | `(point: SBarChartPoint) => void` | 막대를 눌렀을 때 |
|
|
37
|
+
|
|
38
|
+
## Types
|
|
39
|
+
|
|
40
|
+
### SBarChartSeries
|
|
41
|
+
|
|
42
|
+
```ts
|
|
43
|
+
/** 한 계열 — 범례 한 줄에 대응한다. */
|
|
44
|
+
export interface SBarChartSeries {
|
|
45
|
+
/** 범례·툴팁에 표시할 이름 */
|
|
46
|
+
name: string;
|
|
47
|
+
/** `categories` 와 같은 순서의 값. 짧으면 남는 항목은 막대를 그리지 않는다 */
|
|
48
|
+
data: number[];
|
|
49
|
+
}
|
|
50
|
+
```
|
|
51
|
+
|
|
52
|
+
### SBarChartDirection
|
|
53
|
+
|
|
54
|
+
```ts
|
|
55
|
+
/** 막대가 자라는 방향. */
|
|
56
|
+
export type SBarChartDirection = 'vertical' | 'horizontal';
|
|
57
|
+
```
|
|
58
|
+
|
|
59
|
+
### SBarChartPalette
|
|
60
|
+
|
|
61
|
+
```ts
|
|
62
|
+
/**
|
|
63
|
+
* 색 팔레트.
|
|
64
|
+
* - `default` 파랑 한 색. 계열이 하나거나 색으로 나눌 것이 없을 때
|
|
65
|
+
* - `multi` 서로 무관한 항목(11색)을 순서대로
|
|
66
|
+
* - `gradation` 한 지표의 단계(6색)를 진한 쪽부터 순서대로
|
|
67
|
+
* - `custom` `colors` 로 고른 색을 순서대로
|
|
68
|
+
*/
|
|
69
|
+
export type SBarChartPalette = 'default' | 'multi' | 'gradation' | 'custom';
|
|
70
|
+
```
|
|
71
|
+
|
|
72
|
+
### SBarChartColor
|
|
73
|
+
|
|
74
|
+
```ts
|
|
75
|
+
/**
|
|
76
|
+
* `palette='custom'` 에서 고를 수 있는 색 이름.
|
|
77
|
+
* positive=늘어남 · negative=줄어듦 · neutral=변화 없음 을 뜻하므로 뜻에 맞게 고른다.
|
|
78
|
+
*/
|
|
79
|
+
export type SBarChartColor =
|
|
80
|
+
| 'positivePrimary'
|
|
81
|
+
| 'positiveSecondary'
|
|
82
|
+
| 'negativePrimary'
|
|
83
|
+
| 'negativeSecondary'
|
|
84
|
+
| 'neutralPrimary'
|
|
85
|
+
| 'neutralSecondary';
|
|
86
|
+
```
|
|
87
|
+
|
|
88
|
+
### SBarChartLegendPosition
|
|
89
|
+
|
|
90
|
+
```ts
|
|
91
|
+
/** 범례 위치. */
|
|
92
|
+
export type SBarChartLegendPosition = 'top' | 'bottom';
|
|
93
|
+
```
|
|
94
|
+
|
|
95
|
+
### SBarChartPoint
|
|
96
|
+
|
|
97
|
+
```ts
|
|
98
|
+
/** 툴팁·클릭이 가리키는 지점. */
|
|
99
|
+
export interface SBarChartPoint {
|
|
100
|
+
/** 계열 인덱스 */
|
|
101
|
+
seriesIndex: number;
|
|
102
|
+
/** 카테고리 인덱스 */
|
|
103
|
+
categoryIndex: number;
|
|
104
|
+
/** 그 지점의 값 */
|
|
105
|
+
value: number;
|
|
106
|
+
}
|
|
107
|
+
```
|
|
108
|
+
|
|
109
|
+
### SBarChartTooltipCategory
|
|
110
|
+
|
|
111
|
+
```ts
|
|
112
|
+
/** 툴팁 하단(`tooltipFooter`)이 받는 짚은 항목. */
|
|
113
|
+
export interface SBarChartTooltipCategory {
|
|
114
|
+
/** 카테고리 인덱스 */
|
|
115
|
+
categoryIndex: number;
|
|
116
|
+
/** 카테고리 이름 */
|
|
117
|
+
name: string;
|
|
118
|
+
/** 툴팁에 값이 뜬 지점들 — 값이 없는 계열은 빠진다 */
|
|
119
|
+
points: SBarChartPoint[];
|
|
120
|
+
}
|
|
121
|
+
```
|
|
122
|
+
|
|
@@ -0,0 +1,99 @@
|
|
|
1
|
+
import { type CSSProperties, type ReactNode } from 'react';
|
|
2
|
+
/** 막대가 자라는 방향. */
|
|
3
|
+
export type SBarChartDirection = 'vertical' | 'horizontal';
|
|
4
|
+
/** 범례 위치. */
|
|
5
|
+
export type SBarChartLegendPosition = 'top' | 'bottom';
|
|
6
|
+
/**
|
|
7
|
+
* 색 팔레트.
|
|
8
|
+
* - `default` 파랑 한 색. 계열이 하나거나 색으로 나눌 것이 없을 때
|
|
9
|
+
* - `multi` 서로 무관한 항목(11색)을 순서대로
|
|
10
|
+
* - `gradation` 한 지표의 단계(6색)를 진한 쪽부터 순서대로
|
|
11
|
+
* - `custom` `colors` 로 고른 색을 순서대로
|
|
12
|
+
*/
|
|
13
|
+
export type SBarChartPalette = 'default' | 'multi' | 'gradation' | 'custom';
|
|
14
|
+
/**
|
|
15
|
+
* `palette='custom'` 에서 고를 수 있는 색 이름.
|
|
16
|
+
* positive=늘어남 · negative=줄어듦 · neutral=변화 없음 을 뜻하므로 뜻에 맞게 고른다.
|
|
17
|
+
*/
|
|
18
|
+
export type SBarChartColor = 'positivePrimary' | 'positiveSecondary' | 'negativePrimary' | 'negativeSecondary' | 'neutralPrimary' | 'neutralSecondary';
|
|
19
|
+
/** 툴팁·클릭이 가리키는 지점. */
|
|
20
|
+
export interface SBarChartPoint {
|
|
21
|
+
/** 계열 인덱스 */
|
|
22
|
+
seriesIndex: number;
|
|
23
|
+
/** 카테고리 인덱스 */
|
|
24
|
+
categoryIndex: number;
|
|
25
|
+
/** 그 지점의 값 */
|
|
26
|
+
value: number;
|
|
27
|
+
}
|
|
28
|
+
/** 툴팁 하단(`tooltipFooter`)이 받는 짚은 항목. */
|
|
29
|
+
export interface SBarChartTooltipCategory {
|
|
30
|
+
/** 카테고리 인덱스 */
|
|
31
|
+
categoryIndex: number;
|
|
32
|
+
/** 카테고리 이름 */
|
|
33
|
+
name: string;
|
|
34
|
+
/** 툴팁에 값이 뜬 지점들 — 값이 없는 계열은 빠진다 */
|
|
35
|
+
points: SBarChartPoint[];
|
|
36
|
+
}
|
|
37
|
+
/** 한 계열 — 범례 한 줄에 대응한다. */
|
|
38
|
+
export interface SBarChartSeries {
|
|
39
|
+
/** 범례·툴팁에 표시할 이름 */
|
|
40
|
+
name: string;
|
|
41
|
+
/** `categories` 와 같은 순서의 값. 짧으면 남는 항목은 막대를 그리지 않는다 */
|
|
42
|
+
data: number[];
|
|
43
|
+
}
|
|
44
|
+
export interface SBarChartProps {
|
|
45
|
+
/** 가로축(가로 막대면 세로축)에 놓일 항목 이름 */
|
|
46
|
+
categories: string[];
|
|
47
|
+
/** 계열 목록. 각 `data` 는 `categories` 와 같은 순서다 */
|
|
48
|
+
series: SBarChartSeries[];
|
|
49
|
+
/** 차트 제목 — 왼쪽 위에 놓인다 */
|
|
50
|
+
title?: string;
|
|
51
|
+
/** 단위 — 오른쪽 위에 "단위 : " 를 붙여 놓는다 */
|
|
52
|
+
unit?: string;
|
|
53
|
+
/** 막대가 자라는 방향 */
|
|
54
|
+
direction?: SBarChartDirection;
|
|
55
|
+
/**
|
|
56
|
+
* 계열을 나란히 놓는 대신 **한 막대에 쌓는다**. 항목의 크기와 그 안의 구성을 함께 볼 때 쓴다.
|
|
57
|
+
* 첫 계열이 기준선에 붙고, 값 라벨은 조각마다가 아니라 **항목의 합계**를 한 번 적는다.
|
|
58
|
+
* 음수는 0 아래로 따로 쌓이며, 값 축도 개별 값이 아닌 항목별 합계로 잡힌다
|
|
59
|
+
*/
|
|
60
|
+
stacked?: boolean;
|
|
61
|
+
/** 색 팔레트. 계열이 하나면 계열 대신 **항목**마다 색이 바뀐다. `custom` 일 때만 `colors` 를 본다 */
|
|
62
|
+
palette?: SBarChartPalette;
|
|
63
|
+
/** `palette='custom'` 에서 쓸 색 이름을 계열 순서대로. 계열보다 짧으면 앞에서부터 순환한다 */
|
|
64
|
+
colors?: SBarChartColor[];
|
|
65
|
+
/** 값 축의 최댓값. 주지 않으면 데이터에서 읽기 좋은 값으로 정한다 */
|
|
66
|
+
max?: number;
|
|
67
|
+
/** 값 축 눈금 개수 */
|
|
68
|
+
tickCount?: number;
|
|
69
|
+
/** 막대 두께 상한(px, 24~80). 낮추면 좌우 여백 상한도 같은 비율로 따라 내려온다 */
|
|
70
|
+
barSize?: number;
|
|
71
|
+
/** 막대마다 값을 적는다 */
|
|
72
|
+
showValueLabel?: boolean;
|
|
73
|
+
/** 범례를 보인다 */
|
|
74
|
+
showLegend?: boolean;
|
|
75
|
+
/** 범례 위치 */
|
|
76
|
+
legendPosition?: SBarChartLegendPosition;
|
|
77
|
+
/** 막대에 마우스를 올리면 값 상자를 띄운다 */
|
|
78
|
+
showTooltip?: boolean;
|
|
79
|
+
/** 값 표시 형식 */
|
|
80
|
+
formatValue?: (value: number) => string;
|
|
81
|
+
/** 차트 높이. **아래 축 텍스트까지 포함한 값**이다 — 그림은 그만큼 줄어든다 */
|
|
82
|
+
height?: number | string;
|
|
83
|
+
/** 막대를 눌렀을 때 */
|
|
84
|
+
onBarClick?: (point: SBarChartPoint) => void;
|
|
85
|
+
/**
|
|
86
|
+
* 툴팁의 값 아래에 덧붙일 내용. 짚은 항목을 받아 그린다 — 계열 값만으로 모자란 맥락
|
|
87
|
+
* (합계, 전월 대비 등)을 적는다. 툴팁은 누를 수 없으므로 버튼·링크는 넣지 않는다
|
|
88
|
+
*/
|
|
89
|
+
tooltipFooter?: (category: SBarChartTooltipCategory) => ReactNode;
|
|
90
|
+
className?: string;
|
|
91
|
+
style?: CSSProperties;
|
|
92
|
+
}
|
|
93
|
+
/**
|
|
94
|
+
* SBarChart — 막대 그래프.
|
|
95
|
+
*
|
|
96
|
+
* 값은 항상 0 에서 자란다. 음수가 있으면 기준선이 축 가운데로 내려오고 막대가
|
|
97
|
+
* 아래(또는 왼쪽)로 자란다.
|
|
98
|
+
*/
|
|
99
|
+
export declare const SBarChart: import("react").ForwardRefExoticComponent<SBarChartProps & import("react").RefAttributes<HTMLDivElement>>;
|
|
@@ -0,0 +1,85 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* SBarChart 의 치수·색 상수와 막대 배치 계산.
|
|
3
|
+
*/
|
|
4
|
+
import { AXIS_EDGE_PADDING } from '../../lib/chart/cartesian';
|
|
5
|
+
export { AXIS_EDGE_PADDING };
|
|
6
|
+
/**
|
|
7
|
+
* 막대 두께 하한(px) — 시안 `bar width min : 24`.
|
|
8
|
+
* 이보다 얇아지지 않는다. 카테고리가 너무 많으면 막대가 겹치는데, 그건
|
|
9
|
+
* "얇아서 못 읽는 그래프"보다 낫다는 디자인 판단이다(그때는 가로 막대를 쓴다).
|
|
10
|
+
*/
|
|
11
|
+
export declare const BAR_SIZE_MIN = 24;
|
|
12
|
+
/** 막대 두께 상한(px) — 시안 `bar width max : 80`. 자리가 남으면 여기까지 두꺼워진다. */
|
|
13
|
+
export declare const BAR_SIZE_MAX = 80;
|
|
14
|
+
/** 한 카테고리 안, 계열 막대 사이 간격(px) — 시안 `bar gap : 6 (fixed)`. */
|
|
15
|
+
export declare const BAR_GAP = 6;
|
|
16
|
+
/** 막대 묶음 좌우 여백의 하한(px) — 시안 `bar group paddingX min : 8`. */
|
|
17
|
+
export declare const GROUP_PADDING_MIN = 8;
|
|
18
|
+
/** 막대 묶음 좌우 여백의 상한(px) — 시안 `bar group paddingX max : 24`. */
|
|
19
|
+
export declare const GROUP_PADDING_MAX = 24;
|
|
20
|
+
/**
|
|
21
|
+
* 막대 끝과 값 라벨 사이 간격(px) — 토큰 `chart.dataLabel.gap`(점·막대 ↔ 값 라벨).
|
|
22
|
+
* 라벨 자리를 좌표로 잡으므로 `var()` 가 아니라 같은 값을 손으로 맞춰 둔다.
|
|
23
|
+
*/
|
|
24
|
+
export declare const VALUE_LABEL_GAP = 4;
|
|
25
|
+
/**
|
|
26
|
+
* 막대 모서리 반경(px). SVG 경로를 좌표로 계산하므로 `var(--cmp-chart-bar-radius)`
|
|
27
|
+
* 문자열이 아니라 **숫자**여야 한다 — 시안의 clipPath 도 같은 이유로 8 을 좌표에
|
|
28
|
+
* 박아 두고 있다. 토큰(`chart.bar.radius`)과 같은 값을 손으로 맞춰 둔 유일한 자리다.
|
|
29
|
+
*/
|
|
30
|
+
export declare const BAR_RADIUS = 8;
|
|
31
|
+
/**
|
|
32
|
+
* 기본 불투명도는 막대만의 값이 아니라 차트 공용(`chart.opacity.default`)이다 —
|
|
33
|
+
* 도넛·파이도 같은 값을 쓴다. 흐려진 상태만 막대 고유(`chart.bar.opacity.dimmed`)다.
|
|
34
|
+
*/
|
|
35
|
+
export declare const BAR_OPACITY_DEFAULT = "var(--cmp-chart-opacity-default)";
|
|
36
|
+
export declare const BAR_OPACITY_DIMMED = "var(--cmp-chart-bar-opacity-dimmed)";
|
|
37
|
+
/**
|
|
38
|
+
* 호버한 항목의 막대 — 완전히 불투명하다.
|
|
39
|
+
*
|
|
40
|
+
* `--opacity-*` 스케일에 100% 가 없다. "투명하지 않음"은 값이 아니라 값의 부재라
|
|
41
|
+
* 디자인 토큰으로 두지 않는 쪽이 맞으므로, 여기서는 토큰 대신 1 을 쓴다.
|
|
42
|
+
*/
|
|
43
|
+
export declare const BAR_OPACITY_HOVER = 1;
|
|
44
|
+
export declare const BAR_DATA_LABEL_COLOR = "var(--cmp-chart-dataLabel-color-default)";
|
|
45
|
+
/**
|
|
46
|
+
* 값 라벨의 타이포 — 호버한 항목만 굵고 크게 뜬다.
|
|
47
|
+
*
|
|
48
|
+
* 타이포 토큰은 `--cmp-*` 변수로 나오지 않고 `.typo-*` 유틸로만 나오므로,
|
|
49
|
+
* `chart.dataLabel.typography.default`(`body.sm.medium`) ·
|
|
50
|
+
* `.hover`(`body.md.bold`) 에 대응하는 클래스를 여기서 짝지어 둔다.
|
|
51
|
+
*/
|
|
52
|
+
export declare const BAR_DATA_LABEL_TYPO = "typo-body-sm-medium";
|
|
53
|
+
export declare const BAR_DATA_LABEL_TYPO_HOVER = "typo-body-md-bold";
|
|
54
|
+
export interface BandLayout {
|
|
55
|
+
/** 카테고리 하나가 차지하는 폭(px) */
|
|
56
|
+
band: number;
|
|
57
|
+
/** 막대 하나의 두께(px) */
|
|
58
|
+
bar: number;
|
|
59
|
+
/** 계열 막대 묶음 전체의 두께(px) */
|
|
60
|
+
group: number;
|
|
61
|
+
/** 묶음 좌우로 실제로 남은 여백(px) */
|
|
62
|
+
padding: number;
|
|
63
|
+
/** 카테고리가 적어 band 가 상한에 걸렸을 때, 막대 전체를 가운데로 미는 거리(px) */
|
|
64
|
+
offset: number;
|
|
65
|
+
}
|
|
66
|
+
/**
|
|
67
|
+
* 축을 카테고리 수만큼 균등하게 나누고(band), 그 가운데에 계열 막대를 모아 놓는다.
|
|
68
|
+
*
|
|
69
|
+
* band 중앙 정렬이라 카테고리 라벨도 같은 비율로 놓으면 자동으로 막대 위에 온다 —
|
|
70
|
+
* 라벨과 막대의 정렬을 따로 맞출 필요가 없다.
|
|
71
|
+
*
|
|
72
|
+
* **두께와 여백은 한 손잡이로 함께 움직인다.** 막대 하나가 차지할 자리는 최소
|
|
73
|
+
* `8+24+8`(=40px)에서 최대 `24+80+24`(=128px)까지 늘어나는데, 그 사이 어디에 있든
|
|
74
|
+
* 두께와 여백이 같은 비율(`t`)로 커진다. 여백만 8인 채 두께가 80이 되는 조합은 없다.
|
|
75
|
+
*
|
|
76
|
+
* bar = 24 + 56·t
|
|
77
|
+
* padding = 8 + 16·t (t ∈ [0, 1])
|
|
78
|
+
*
|
|
79
|
+
* 자리가 최소보다 좁으면 `t=0` 에서 멈춘다 — 더 얇아지는 대신 호출 쪽이 스크롤을
|
|
80
|
+
* 만든다. 반대로 자리가 남으면 `t=1` 에서 멈추고 남는 폭은 `offset` 으로 가운데 모은다.
|
|
81
|
+
*
|
|
82
|
+
* 양끝 `AXIS_EDGE_PADDING` 은 band 가 나눠 갖기 전에 먼저 떼어 둔다 — band 안의
|
|
83
|
+
* `padding` 과 달리 카테고리 수·두께와 무관하게 항상 그대로 남아야 한다.
|
|
84
|
+
*/
|
|
85
|
+
export declare function bandLayout(size: number, categoryCount: number, seriesCount: number, barSizeMax?: number): BandLayout;
|
|
@@ -0,0 +1,2 @@
|
|
|
1
|
+
export { SBarChart, type SBarChartProps, type SBarChartSeries, type SBarChartPoint, type SBarChartTooltipCategory, type SBarChartPalette, type SBarChartColor, type SBarChartDirection, type SBarChartLegendPosition, } from './SBarChart';
|
|
2
|
+
export { BAR_SIZE_MIN, BAR_SIZE_MAX, BAR_GAP } from './barChart.config';
|
|
@@ -18,13 +18,15 @@
|
|
|
18
18
|
| `readOnly?` | `boolean` | `false` | |
|
|
19
19
|
| `rules?` | `Rule[]` | — | |
|
|
20
20
|
| `status?` | `SFieldStatus` | — | |
|
|
21
|
-
| `focused?` | `boolean` | — |
|
|
22
|
-
| `hovered?` | `boolean` | — |
|
|
21
|
+
| `focused?` | `boolean` | — | 포커스 상태를 밖에서 지정한다 — 강조 테두리·링이 즉시 걸린다 (SField 로 그대로 넘어간다) |
|
|
22
|
+
| `hovered?` | `boolean` | — | 호버 상태를 밖에서 지정한다 — 강조는 `focused` 와 같다 (SField 로 그대로 넘어간다) |
|
|
23
23
|
| `prefix?` | `ReactNode` | — | 입력 앞 슬롯 |
|
|
24
24
|
| `suffix?` | `ReactNode` | — | 입력 뒤 슬롯 |
|
|
25
|
-
| `
|
|
25
|
+
| `inputClassName?` | `string` | — | |
|
|
26
26
|
| `inputStyle?` | `CSSProperties` | — | |
|
|
27
27
|
| `label?` | `string` | — | |
|
|
28
|
+
| `labelPosition?` | `SFieldLabelPosition` | — | 레이블 위치 — `top` 이면 라벨이 컨트롤 위에 선다 (SField 로 그대로 넘어간다). |
|
|
29
|
+
| `subLabel?` | `string` | — | 보조 레이블 — 레이블 오른쪽 같은 줄에 붙는다 (SField 로 그대로 넘어간다). |
|
|
28
30
|
| `labelWidth?` | `number \| string` | — | |
|
|
29
31
|
| `icon?` | `SIconName` | — | |
|
|
30
32
|
| `iconColor?` | `SColor` | — | |
|
|
@@ -35,7 +37,7 @@
|
|
|
35
37
|
| `hint?` | `string` | — | |
|
|
36
38
|
| `error?` | `boolean` | — | |
|
|
37
39
|
| `errorMessage?` | `string` | — | |
|
|
38
|
-
| `width?` | `
|
|
40
|
+
| `width?` | `SFieldWidth` | — | 컨트롤 너비 — 폭 등급(`'xs' | 'sm' | 'md' | 'lg' | 'xl'`) · 숫자=px · CSS 길이. 등급은 `--cmp-field-width-*` 토큰으로 풀리며 `maxLength`(= 스키마 상한)로 고른다. 상한이 `xl` 을 넘거나 상한이 없으면 `"100%"`. (`sellmate/field-width-grade` 가 검사한다) |
|
|
39
41
|
| `className?` | `string` | — | |
|
|
40
42
|
| `style?` | `CSSProperties` | — | |
|
|
41
43
|
|
|
@@ -47,6 +49,14 @@
|
|
|
47
49
|
| `onFocus` | `() => void` | |
|
|
48
50
|
| `onBlur` | `() => void` | |
|
|
49
51
|
|
|
52
|
+
## Types
|
|
53
|
+
|
|
54
|
+
### SBarcodeInputSize
|
|
55
|
+
|
|
56
|
+
```ts
|
|
57
|
+
export type SBarcodeInputSize = SFieldSize;
|
|
58
|
+
```
|
|
59
|
+
|
|
50
60
|
## Dependencies
|
|
51
61
|
|
|
52
62
|
### Depends on
|