sellmate-design-system-react 9.0.0-beta.7 โ 9.0.0-beta.71
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 +1873 -250
- package/README.md +76 -24
- 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 +13 -4
- package/dist/components/SBarcodeInput/SBarcodeInput.d.ts +18 -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 +17 -2
- package/dist/components/SChipInput/SChipInput.d.ts +16 -3
- package/dist/components/SChipInput/index.d.ts +1 -1
- package/dist/components/SCircleProgress/README.md +8 -0
- 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 +21 -2
- package/dist/components/SDatePicker/SDatePicker.d.ts +35 -5
- package/dist/components/SDateRangePicker/README.md +21 -4
- package/dist/components/SDateRangePicker/SDateRangePicker.d.ts +37 -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 +204 -0
- package/dist/components/SEditor/SEditor.d.ts +121 -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 +36 -0
- package/dist/components/SExpansionItem/index.d.ts +1 -1
- package/dist/components/SField/README.md +36 -5
- package/dist/components/SField/SField.d.ts +33 -8
- package/dist/components/SField/index.d.ts +1 -1
- package/dist/components/SFilePicker/README.md +19 -4
- package/dist/components/SFilePicker/SFilePicker.d.ts +19 -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 +97 -7
- package/dist/components/SGnb/SGnb.d.ts +94 -10
- 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 +7 -4
- package/dist/components/SInput/SInput.d.ts +13 -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 +81 -0
- package/dist/components/SLauncherListBox/SLauncherListBox.d.ts +67 -0
- package/dist/components/SLauncherListBox/index.d.ts +2 -0
- package/dist/components/SLauncherListBox/launcherListBox.config.d.ts +118 -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 +15 -0
- package/dist/components/SLinearProgress/SLinearProgress.d.ts +3 -0
- 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 +41 -0
- 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 +39 -0
- package/dist/components/SLoginCard/index.d.ts +1 -0
- package/dist/components/SLogo/README.md +54 -0
- package/dist/components/SLogo/SLogo.d.ts +47 -0
- package/dist/components/SLogo/index.d.ts +2 -0
- package/dist/components/SLogo/logo.config.d.ts +14 -0
- package/dist/components/SLogo/sellmate-wordmark.d.ts +20 -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 +18 -8
- package/dist/components/SNumberInput/SNumberInput.d.ts +42 -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 +18 -0
- package/dist/components/SRadioButton/SRadioButton.d.ts +1 -1
- 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 +38 -11
- package/dist/components/SSelect/SSelect.d.ts +80 -9
- package/dist/components/SSelect/select.config.d.ts +15 -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 +116 -11
- package/dist/components/STable/STable.d.ts +243 -23
- 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 -2
- package/dist/components/STabs/STabs.d.ts +3 -5
- package/dist/components/STabs/index.d.ts +1 -1
- package/dist/components/STabs/tabs.config.d.ts +3 -4
- 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 +19 -1
- package/dist/components/STextLink/STextLink.d.ts +5 -1
- package/dist/components/STextarea/README.md +11 -5
- package/dist/components/STextarea/STextarea.d.ts +42 -6
- package/dist/components/STimePicker/README.md +18 -2
- package/dist/components/STimePicker/STimePicker.d.ts +29 -6
- package/dist/components/STimePicker/timepicker.config.d.ts +4 -2
- package/dist/components/STimeRangePicker/README.md +30 -2
- package/dist/components/STimeRangePicker/STimeRangePicker.d.ts +28 -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 +25 -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 +20593 -10374
- package/dist/index.cjs.map +1 -1
- package/dist/index.d.ts +22 -0
- package/dist/index.js +20517 -10374
- 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 +5904 -550
- package/dist/llms.txt +1918 -267
- 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/ExcelFilePopupPage.d.ts +5 -0
- package/dist/recipes/LoginPage.d.ts +6 -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/TransferOrderPopupPage.d.ts +2 -0
- package/dist/recipes/api.d.ts +91 -0
- package/dist/recipes/recipe-story.d.ts +33 -0
- package/dist/recipes/router.d.ts +9 -0
- package/dist/styles.css +3331 -258
- package/dist/theme.css +589 -33
- package/eslint/index.mjs +9 -0
- package/eslint/lib/table-column.mjs +26 -0
- package/eslint/rules/divider-vertical-height.mjs +137 -0
- package/eslint/rules/field-width-grade.mjs +27 -10
- package/eslint/rules/prefer-typo-preset.mjs +1 -1
- package/eslint/rules/table-column-width.mjs +110 -0
- package/eslint/scale.gen.mjs +6 -3
- package/package.json +17 -3
|
@@ -0,0 +1,119 @@
|
|
|
1
|
+
import type { CSSProperties } from 'react';
|
|
2
|
+
import type { SColor } from '../../lib/color';
|
|
3
|
+
/** ํด๋ฐ์ ๋์ ์ ์๋ ํญ๋ชฉ. `'|'` ๋ ๊ตฌ๋ถ์ ์ด๋ค. */
|
|
4
|
+
export declare const SEDITOR_TOOLBAR_ITEMS: readonly ["heading", "fontSize", "bold", "italic", "underline", "strike", "code", "color", "alignLeft", "alignCenter", "alignRight", "alignJustify", "bulletList", "orderedList", "taskList", "list", "blockquote", "codeBlock", "horizontalRule", "link", "image", "table", "undo", "redo"];
|
|
5
|
+
export type SEditorToolbarAction = (typeof SEDITOR_TOOLBAR_ITEMS)[number];
|
|
6
|
+
export type SEditorToolbarItem = SEditorToolbarAction | '|';
|
|
7
|
+
/**
|
|
8
|
+
* ๊ธฐ๋ณธ ํด๋ฐ โ ์ธ ์ ์๋ ๊ฒ์ **๋ชจ๋** ๋ณด์ธ๋ค. ์์๋ tiptap Simple Editor ํ
ํ๋ฆฟ์ ๋ฐ๋ฅธ๋ค.
|
|
9
|
+
*
|
|
10
|
+
* ์ด๋ ฅ โ ๋ธ๋ก(์ ๋ชฉยท๊ธ์ ํฌ๊ธฐยท๋ชฉ๋กยท์ธ์ฉยท์ฝ๋๋ธ๋ก) โ ์์ โ ์ ๋ ฌ โ ์ฝ์
.
|
|
11
|
+
*
|
|
12
|
+
* ๋น ์ง ๊ฒ์ `bulletList`ยท`orderedList`ยท`taskList` ๋ฟ์ธ๋ฐ, ์ด ์
์ `list` ๋๋กญ๋ค์ด ํ๋๋ก
|
|
13
|
+
* ์ด๋ฏธ ๋ค์ด์ ์๋ค โ ํจ๊ป ๋์ผ๋ฉด ๊ฐ์ ๋ช
๋ น์ด ํด๋ฐ์ ๋ ๋ฒ ๋์จ๋ค. ๋ชฉ๋ก์ ๋๋กญ๋ค์ด์ด ์๋๋ผ
|
|
14
|
+
* ๋ฒํผ ์
์ผ๋ก ํผ์น๊ณ ์ถ์ ํ๋ฉด๋ง `toolbar` ๋ก ์ง์ ์กฐํฉํ๋ค.
|
|
15
|
+
*
|
|
16
|
+
* `image` ๋ `onImageUpload` ๋ฅผ ๋ฐ์์ ๋๋ง ๊ทธ๋ ค์ง๋ค (ํ
์ด ์์ผ๋ฉด ์ ์ฅํ ๊ณณ์ด ์๋ค).
|
|
17
|
+
*/
|
|
18
|
+
export declare const SEDITOR_DEFAULT_TOOLBAR: SEditorToolbarItem[];
|
|
19
|
+
/**
|
|
20
|
+
* ๊ฐ๋จ ํด๋ฐ (`simple`) โ **๊ธ์์ ๊ฑฐ๋ ์์๋ง** ๋จ๊ธด๋ค.
|
|
21
|
+
*
|
|
22
|
+
* ๋ชฉ๋กยท์ ๋ ฌยท์ธ์ฉยท์ฝ๋ยท๋งํฌยท์ด๋ฏธ์งยท๊ตฌ๋ถ์ ์ฒ๋ผ **๊ธ์ ๊ตฌ์กฐ๋ฅผ ๋ฐ๊พธ๋** ํญ๋ชฉ์ ๋บ ๊ตฌ์ฑ์ด๋ค.
|
|
23
|
+
* ๋ฐ์ ๊ธ์ด ๋ค์ ํ๋ฉด์ ๊ทธ๋ ค์ง ๋ ๋ฌธ๋จ ๊ตฌ์กฐ๊น์ง ์์ฑ์๋ฅผ ๋ฐ๋ผ๊ฐ๋ฉด ๊ณค๋ํ ์๋ฆฌ โ ์ข์ ์นธ์
|
|
24
|
+
* ๋์ธ ๋ฉ๋ชจยท์ฌ์ ยท์งง์ ์๋ด๋ฌธ โ ๋ฅผ ์ํ ๊ฒ์ด๋ค.
|
|
25
|
+
*
|
|
26
|
+
* ์ ๋ชฉยท๊ธ์ ํฌ๊ธฐ๋ ๋จ๊ธด๋ค. ๋ ๋ค ๊ธ์ ๋ผ๋๊ฐ ์๋๋ผ **๊ธ์์ ํฌ๊ธฐ**๋ฅผ ์ ํ๋ ํญ๋ชฉ์ด๋ผ
|
|
27
|
+
* ๊ฐ์กฐ๋ฅผ ๊ฑฐ๋ ๋ฐ ์ฐ์ด๊ณ , ์ด๊ฒ๊น์ง ๋นผ๋ฉด ๋จ๋ ๊ฒ์ด ๊ตต๊ฒยท์๋ฟ์ด๋ผ `STextarea` ์ ๋ค๋ฅผ ๋ฐ ์๋ค.
|
|
28
|
+
*/
|
|
29
|
+
export declare const SEDITOR_SIMPLE_TOOLBAR: SEditorToolbarItem[];
|
|
30
|
+
/**
|
|
31
|
+
* ๊ธฐ๋ณธ ๋ฒ๋ธ ๋ฉ๋ด โ ๊ธ์ ์ ํํ์ ๋ ๊ทธ ์์ ๋จ๋ ํ์ ๊ตฌ์ฑ.
|
|
32
|
+
*
|
|
33
|
+
* tiptap Simple Editor ์๋ ๋ฒ๋ธ ๋ฉ๋ด๊ฐ ์๋ค. ๊ทธ๋์ ๊ตฌ์ฑ์ ํ
ํ๋ฆฟ ํด๋ฐ์ **์์ ๋ฌถ์**์
|
|
34
|
+
* ๊ทธ๋๋ก ๊ฐ์ ธ์๋ค โ ์ ํํ ๊ธ์ ๋ฐ๋ก ๊ฑธ ์ ์๋ ๊ฒ๋ง ๋จ๊ธฐ๊ณ ๋ธ๋ก(์ ๋ชฉยท๋ชฉ๋กยท์ธ์ฉ)ยท์ ๋ ฌยท
|
|
35
|
+
* ์ฝ์
์ ๋บ๋ค. ๊ทธ๊ฒ๋ค์ ์ปค์๋ง ์์ด๋ ๋๋ฏ๋ก ๋ง๋์์ ๋๋ฅด๋ ํธ์ด ๋ซ๋ค.
|
|
36
|
+
*
|
|
37
|
+
* ํ์ ์ ํ ์์ญ ์์ ๋จ๋ ํ ์ค์ด๋ผ ์ค๋ฐ๊ฟํ์ง ์๋๋ค โ ํญ๋ชฉ์ ๋๋ฆด ๋ ํญ์ ํจ๊ป ๋ณธ๋ค.
|
|
38
|
+
*/
|
|
39
|
+
export declare const SEDITOR_DEFAULT_BUBBLE_MENU: SEditorToolbarItem[];
|
|
40
|
+
/**
|
|
41
|
+
* ๊ฐ๋จ ๋ชจ๋(`simple`)์ ๋ฒ๋ธ ๋ฉ๋ด โ ๋ง๋์ ๊ฐ์ ๋ฒ์๋ก ๋ง์ถ๋ค.
|
|
42
|
+
*
|
|
43
|
+
* ๋ง๋์์ ๋งํฌยท์ฝ๋๋ฅผ ๋บ๋๋ฐ ํ์๋ ๋จ์ ์์ผ๋ฉด ๊ฐ๋จ ๋ชจ๋๊ฐ ์๋ฌด๊ฒ๋ ๋ง์ง ๋ชปํ๋ค.
|
|
44
|
+
* ์ ํํ ๊ธ์ ๊ฑธ ์ ์๋ ๊ฒ์ ๋ ๊ณณ์ด ๊ฐ์์ผ ํ๋ค.
|
|
45
|
+
*/
|
|
46
|
+
export declare const SEDITOR_SIMPLE_BUBBLE_MENU: SEditorToolbarItem[];
|
|
47
|
+
/** ์ ๋ชฉ ๋จ๊ณ โ ๋ณธ๋ฌธ 12px ์๋ก 14 / 16 / 18 (DS ํ์ดํฌ heading smยทmdยทlg) */
|
|
48
|
+
export declare const SEDITOR_HEADING_LEVELS: readonly [1, 2, 3];
|
|
49
|
+
export type SEditorHeadingLevel = (typeof SEDITOR_HEADING_LEVELS)[number];
|
|
50
|
+
export declare const SEDITOR_HEADING_LABELS: Record<SEditorHeadingLevel | 0, string>;
|
|
51
|
+
/**
|
|
52
|
+
* ๊ธ์ ํฌ๊ธฐ ์ ํ์ง (px) โ ์๋ํ๋ก์ธ์์ ๋๊ธ๊ณผ ๊ฐ์ ๋จ๊ณ๋ค.
|
|
53
|
+
*
|
|
54
|
+
* ํ๋ฉด์ ๋ณธ๋ฌธ ๋ฆฌ๋ฌ์ DS ํ์ดํฌ ์ค์ผ์ผ(`--text-*`)์ด ์ก๋๋ค. ์ด ๋ชฉ๋ก์ ๊ทธ ๋ฆฌ๋ฌ์ด ์๋๋ผ
|
|
55
|
+
* **์์ฑ์๊ฐ ๊ธ ์์์ ์ง์ ํฌ๊ธฐ๋ฅผ ์ง์ ํ ๋** ์ฐ๋ ๋๊ธ์ด๋ผ ํจ์ฌ ๋๋ค โ 24 ์ด์์ ์๋ด๋ฌธ
|
|
56
|
+
* ํ์งยทํ์ฌ ๋ฐฐ๋์ฒ๋ผ ๋ณธ๋ฌธ์ด ์๋ ๊ธ์ ์ํ ๊ฒ์ด๋ค.
|
|
57
|
+
*
|
|
58
|
+
* **๋๊ธ์ ์ขํ๋ prop ์ ์๋ค** โ ํ๋ฉด๋ง๋ค ๊ณ ๋ฅผ ์ ์๋ ํฌ๊ธฐ๊ฐ ๋ค๋ฅด๋ฉด ๊ฐ์ ๊ธ์ด ์ด๋์
|
|
59
|
+
* ๋ถ๋๋์ ๋ฐ๋ผ ๋ค๋ฅด๊ฒ ๋ณด์ธ๋ค. ์์ฑ์๊ฐ ๋ฆฌ๋ฌ(AGENTS.md ยง2-1: ๋ณธ๋ฌธ 12px)์ ๋ฒ์ด๋๋ฉด ๊ณค๋ํ
|
|
60
|
+
* ์๋ฆฌ๋ผ๋ฉด ์ ์ด์ `SEditor` ๊ฐ ์๋๋ผ `STextarea` ๊ฐ ๋ง๋ ์๋ฆฌ์ธ์ง ๋จผ์ ๋ณธ๋ค.
|
|
61
|
+
*/
|
|
62
|
+
export declare const SEDITOR_FONT_SIZES: readonly [8, 9, 10, 11, 12, 14, 16, 18, 24, 30, 36, 48, 60, 72];
|
|
63
|
+
/**
|
|
64
|
+
* ํฌ๊ธฐ๋ฅผ ์ง์ ํ์ง ์์ ๋ฌธ๋จ์ด ์ค์ ๋ก ๋ณด์ด๋ ํฌ๊ธฐ โ ๋๋กญ๋ค์ด์ `๊ธฐ๋ณธ` ํญ๋ชฉ์ด ๋๋๋ฆฌ๋ ์๋ฆฌ๋ค.
|
|
65
|
+
* ์ ๋ชฉ(h1~h3)์ ์๊ธฐ ํฌ๊ธฐ๋ฅผ ๋ฐ๋ก ๊ฐ์ง๋ฏ๋ก ์ด ๊ฐ๊ณผ ๋ฌด๊ดํ๋ค.
|
|
66
|
+
*/
|
|
67
|
+
export declare const SEDITOR_DEFAULT_FONT_SIZE = 12;
|
|
68
|
+
export interface SEditorColorOption {
|
|
69
|
+
/** ํ๋ ํธ ์นธ์ ์ ๊ทผ์ฑ ๋ ์ด๋ธยทํดํ */
|
|
70
|
+
label: string;
|
|
71
|
+
/** ํ๋ ํธ ํค(`red_75` โฆ) ๋๋ CSS ์์ ๋ฌธ์์ด */
|
|
72
|
+
color: SColor;
|
|
73
|
+
}
|
|
74
|
+
/**
|
|
75
|
+
* ๊ธ์์ ํ๋ ํธ โ ์ญํ ํ ํฐ(`--color-fg-*`)์ ๊ทธ๋๋ก ์ด๋ค. ๋ฐ๊พธ๋ prop ์ ์๋ค.
|
|
76
|
+
*
|
|
77
|
+
* ์ ์ฅ๋๋ HTML ์ `style="color: var(--color-fg-danger)"` ํํ๋ก ๋จ์ผ๋ฏ๋ก ํ ํฐ์ด ๋ฐ๋๋ฉด
|
|
78
|
+
* ์ด๋ฏธ ์ ์ฅ๋ ๊ธ๋ ๋ฐ๋ผ๊ฐ๋ค. ๋์ **DS `theme.css` ๊ฐ ์๋ ํ๊ฒฝ(๋ฉ์ผ ๋ณธ๋ฌธ ๋ฑ)์ผ๋ก ๊ทธ๋๋ก
|
|
79
|
+
* ๋ด๋ณด๋ด๋ฉด ์์ด ํ๋ฆฐ๋ค** โ ๊ทธ๋ฐ ๋ฐ์ถ์ด ํ์ํ๋ฉด ๋ด๋ณด๋ด๋ ์ชฝ์์ ํ ํฐ์ ์ค์ ์์ผ๋ก ํผ๋ค.
|
|
80
|
+
*/
|
|
81
|
+
export declare const SEDITOR_DEFAULT_COLORS: SEditorColorOption[];
|
|
82
|
+
/**
|
|
83
|
+
* ProseMirror ๊ฐ ๋ง๋๋ ์์์ ๋ถ๋ ํด๋์ค โ ์์ ์ ํ์์ ๊ธฐ์ค์ ์ด ๋๋ค.
|
|
84
|
+
*
|
|
85
|
+
* **์๋ `SEDITOR_CONTENT_CLASS` ์์๋ ์ด ์์๋ฅผ ๋ผ์ ๋ฃ์ง ๋ง๊ณ ์ด๋ฆ์ ๊ทธ๋๋ก ์ ๋๋ค.**
|
|
86
|
+
* Tailwind ๋ ์์ค๋ฅผ ๊ธ์๋ก ํ์ ๋ฟ ์ฝ๋๋ฅผ ๋๋ ค ๋ณด์ง ์์ `` `[&_.${TASK_LIST_CLASS}]:pl-0` ``
|
|
87
|
+
* ๊ฐ์ ๋ฌธ์์ด์์๋ ํด๋์ค ํ๋ณด๋ฅผ ์ฐพ์ง ๋ชปํ๊ณ , ๊ทธ ๊ท์น์ด ํต์งธ๋ก CSS ์์ ๋น ์ง๋ค โ ํ๋ฉด์๋
|
|
88
|
+
* ์๋ฌด ์๋ฌ ์์ด ์คํ์ผ๋ง ์ฌ๋ผ์ง๋ค (ํ ํ
๋๋ฆฌ๊ฐ ํต์งธ๋ก ์๋ ์ค์ ์ฌ๊ณ ).
|
|
89
|
+
*/
|
|
90
|
+
export declare const TASK_LIST_CLASS = "sd-editor-task-list";
|
|
91
|
+
export declare const TASK_ITEM_CLASS = "sd-editor-task-item";
|
|
92
|
+
export declare const IMAGE_CLASS = "sd-editor-image";
|
|
93
|
+
export declare const TABLE_CLASS = "sd-editor-table";
|
|
94
|
+
export declare const TABLE_ROW_CLASS = "sd-editor-table-row";
|
|
95
|
+
export declare const TABLE_HEADER_CLASS = "sd-editor-table-header";
|
|
96
|
+
export declare const TABLE_CELL_CLASS = "sd-editor-table-cell";
|
|
97
|
+
export interface SEditorExtensionOptions {
|
|
98
|
+
/** ๋น ๋ฌธ์์ ๋ณด์ผ ๋ฌธ๊ตฌ๋ฅผ ๊ทธ๋๊ทธ๋ ์ฝ์ด ์ค๋ ๊ฒํฐ */
|
|
99
|
+
getPlaceholder: () => string;
|
|
100
|
+
}
|
|
101
|
+
/**
|
|
102
|
+
* ํธ์ง ์์ญ ์์ชฝ ์์ ์คํ์ผ.
|
|
103
|
+
*
|
|
104
|
+
* ProseMirror ๊ฐ ๋ง๋๋ ์์ ์์(h1ยทulยทblockquote โฆ)๋ JSX ์ ์์ด ํด๋์ค๋ฅผ ๋ฌ ์ ์๊ณ ,
|
|
105
|
+
* Tailwind preflight ๊ฐ ๋ชฉ๋กยท์ ๋ชฉ์ ๊ธฐ๋ณธ ์คํ์ผ์ ์ง์ ๋ฒ๋ฆฐ๋ค. ์ด ํจํค์ง์๋ ์ปดํฌ๋ํธ CSS
|
|
106
|
+
* ํ์ผ์ด ์์ผ๋ฏ๋ก arbitrary variant ๋ก ์์ ์ ํ์๋ฅผ ์ง์ ์ด๋ค.
|
|
107
|
+
*/
|
|
108
|
+
export declare const SEDITOR_CONTENT_CLASS: string;
|
|
109
|
+
export interface SEditorContentStyleOptions {
|
|
110
|
+
minHeight?: number | string;
|
|
111
|
+
maxHeight?: number | string;
|
|
112
|
+
disabled?: boolean;
|
|
113
|
+
}
|
|
114
|
+
/**
|
|
115
|
+
* ํธ์ง ์์ญ(๊ทธ๋ฆฌ๊ณ ์์ง์ ๋ถ๋ฌ์ค๋ ๋์ ๊ทธ ์๋ฆฌ๋ฅผ ๋์ ํ๋ ๋น ์์ญ)์ ์์ยทํ์ดํฌ.
|
|
116
|
+
*
|
|
117
|
+
* ๋ ๊ณณ์ด ๊ฐ์ ๊ฐ์ ์จ์ผ ๋ก๋ฉ์ด ๋๋๋ ์๊ฐ ๊ธ์ด ํ์ง ์๋๋ค.
|
|
118
|
+
*/
|
|
119
|
+
export declare const editorContentStyle: ({ minHeight, maxHeight, disabled, }: SEditorContentStyleOptions) => CSSProperties;
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
export { SEditor, type SEditorProps, type SEditorHandle } from './SEditor';
|
|
2
|
+
/**
|
|
3
|
+
* ์ฌ๊ธฐ ๋จ์ ๊ฒ์ **์ ์ฅ๋ HTML ์ด ์ด๋ป๊ฒ ๋ณด์ด๋์ง**๋ฅผ ์๋ ค ์ฃผ๋ ๊ฐ๋ฟ์ด๋ค โ ์ฝ๊ธฐ ํ๋ฉด์
|
|
4
|
+
* ์ง์ ๊ทธ๋ฆด ๋ ์ด๋ค. ํด๋ฐ ๊ตฌ์ฑ(`SEDITOR_*_TOOLBAR`ยท`SEditorToolbarItem` โฆ)ยท๊ธ์์
|
|
5
|
+
* ํ๋ ํธยท๊ธ์ ํฌ๊ธฐ ๋๊ธ์ฒ๋ผ **์๋ํฐ์ ๋๊ธฐ๋ ๊ฐ**์ ๊ทธ๊ฒ์ ๋ฐ๊พธ๋ prop ์ด ๋ชจ๋ ์์ด์ ธ
|
|
6
|
+
* ๋ด๋ณด๋ด์ง ์๋๋ค. ํด๋ฐ ๊ตฌ์ฑ์ `simple` ๋ก๋ง ๊ณ ๋ฅธ๋ค.
|
|
7
|
+
*/
|
|
8
|
+
export { SEDITOR_HEADING_LEVELS, SEDITOR_HEADING_LABELS, SEDITOR_DEFAULT_FONT_SIZE, type SEditorHeadingLevel, } from './editor.config';
|
|
@@ -0,0 +1,29 @@
|
|
|
1
|
+
import type { AnyExtension } from '@tiptap/core';
|
|
2
|
+
import { type SEditorExtensionOptions } from './editor.config';
|
|
3
|
+
type TiptapReact = typeof import('@tiptap/react');
|
|
4
|
+
type TiptapMenus = typeof import('@tiptap/react/menus');
|
|
5
|
+
/** ๋์ ์ผ๋ก ๋ถ๋ฌ์จ tiptap โ ์ด ๊ฐ์ฒด๋ฅผ ๊ฑฐ์น์ง ์๊ณ ๋ ์๋ํฐ ์ฝ๋๊ฐ tiptap ์ ๋ง์ง์ง ์๋๋ค. */
|
|
6
|
+
export interface TiptapApi {
|
|
7
|
+
useEditor: TiptapReact['useEditor'];
|
|
8
|
+
useEditorState: TiptapReact['useEditorState'];
|
|
9
|
+
EditorContent: TiptapReact['EditorContent'];
|
|
10
|
+
/** ์ ํ ์์ญ ์์ ๋จ๋ ํ โ ์๋ฆฌ๋ floating-ui ๊ฐ ์ก๋๋ค */
|
|
11
|
+
BubbleMenu: TiptapMenus['BubbleMenu'];
|
|
12
|
+
/** tiptap ํ์ฅ ๊ตฌ์ฑ โ ์๋ createExtensions ์ฃผ์ ์ฐธ๊ณ */
|
|
13
|
+
createExtensions: (options: SEditorExtensionOptions) => AnyExtension[];
|
|
14
|
+
}
|
|
15
|
+
/**
|
|
16
|
+
* tiptap ์ ๋ถ๋ฌ์จ๋ค (์ด๋ฏธ ๋ถ๋ฌ์์ผ๋ฉด ๊ฐ์ ์ฝ์์ ๋๋ ค์ค๋ค).
|
|
17
|
+
*
|
|
18
|
+
* ์คํจํ๋ฉด ์บ์๋ฅผ ๋น์ ๋ค์ ๋ง์ดํธ๊ฐ ๋ค์ ์๋ํ๊ฒ ํ๋ค โ ์ ๊น์ ๋คํธ์ํฌ ๋ฌธ์ ๋ก
|
|
19
|
+
* ๊ทธ ์ธ์
๋ด๋ด ์๋ํฐ๊ฐ ๋จ์ง ์๋ ์ผ์ ๋ง๋๋ค.
|
|
20
|
+
*/
|
|
21
|
+
export declare const loadTiptapApi: () => Promise<TiptapApi>;
|
|
22
|
+
/**
|
|
23
|
+
* ๋ถ๋ฌ์จ tiptap. ์์ง ์ค๋น๋์ง ์์์ผ๋ฉด `null`.
|
|
24
|
+
*
|
|
25
|
+
* ๋ ๋ฒ์งธ ๋ง์ดํธ๋ถํฐ๋ ์ฒซ ๋ ๋์ ๋ฐ๋ก ๊ฐ์ด ์์ด ๋น ์๋ฆฌ๊ฐ ๋ณด์ด์ง ์๋๋ค.
|
|
26
|
+
* ์๋ฒ ๋ ๋์์๋ ์ธ์ ๋ `null` ์ด๋ผ ํ์ด๋๋ ์ด์
์ด ์ด๊ธ๋์ง ์๋๋ค.
|
|
27
|
+
*/
|
|
28
|
+
export declare const useTiptapApi: () => TiptapApi | null;
|
|
29
|
+
export {};
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* ์ข์ ํ๋ฉด์ธ๊ฐ (SEditor ์ ์ฉ โ ๋ค๋ฅธ ์ปดํฌ๋ํธ์์ import ํ์ง ์๋๋ค).
|
|
3
|
+
*
|
|
4
|
+
* ์ด DS ์๋ ๋ธ๋ ์ดํฌํฌ์ธํธ ๊ฐ๋
์ด ์๋ค. ์ฌ๊ธฐ์ ํ์ํ ์ด์ ๋ ํ๋๋ฟ์ด๋ผ์ โ ์๊ฐ๋ฝ์ผ๋ก
|
|
5
|
+
* ์ฐ๋ ์ข์ ํ๋ฉด์์๋ ํด๋ฐ ์์ ๋จ๋ ํ์ค๋ฒ(๊ธ์์ ํ๋ ํธยท๋งํฌ ์
๋ ฅ)๊ฐ ํ๋ฉด ๋ฐ์ผ๋ก
|
|
6
|
+
* ๋ฐ๋ฆฌ๊ฑฐ๋ ์ํํธ ํค๋ณด๋์ ๊ฐ๋ฆฐ๋ค โ ๊ณต์ฉ `lib/` ๋ก ์ฌ๋ฆฌ์ง ์๊ณ ์ด ํด๋์ ๋๋ค. ๋์ค์
|
|
7
|
+
* DS ์ฐจ์์ ๋ธ๋ ์ดํฌํฌ์ธํธ๊ฐ ์๊ธฐ๋ฉด ๊ทธ๊ฑธ๋ก ๊ฐ์๋ผ์ด๋ค.
|
|
8
|
+
*
|
|
9
|
+
* **๋ทฐํฌํธ ํญ**์ ๋ณธ๋ค. ํ๋ ์์ ์ ํญ์ด ์๋๋ค โ ๋์ ํ๋ฉด์์ ์ข์ ์นธ์ ๋์ธ ์๋ํฐ๋
|
|
10
|
+
* ํ์ค๋ฒ๋ฅผ ๋์ธ ์๋ฆฌ๊ฐ ์์ ์ผ๋ง๋ ์ง ์์ผ๋ฏ๋ก ํ์ ๋ทฐ๋ก ๋ฐ๊ฟ ์ด์ ๊ฐ ์๋ค.
|
|
11
|
+
*
|
|
12
|
+
* ์๋ฒ ๋ ๋์ ์ฒซ ๋ ๋์์๋ ์ธ์ ๋ `false` ๋ค (ํ์ด๋๋ ์ด์
์ด ์ด๊ธ๋์ง ์๊ฒ).
|
|
13
|
+
*/
|
|
14
|
+
export declare const useIsMobile: () => boolean;
|
|
@@ -31,6 +31,42 @@
|
|
|
31
31
|
|-------|------|-------------|
|
|
32
32
|
| `onToggle` | `(expanded: boolean, event: MouseEvent<HTMLButtonElement>) => void` | |
|
|
33
33
|
|
|
34
|
+
## Types
|
|
35
|
+
|
|
36
|
+
### SExpansionItemSupportingTextPosition
|
|
37
|
+
|
|
38
|
+
```ts
|
|
39
|
+
export type SExpansionItemSupportingTextPosition = 'right' | 'bottom';
|
|
40
|
+
```
|
|
41
|
+
|
|
42
|
+
### SExpansionItemRenderProp
|
|
43
|
+
|
|
44
|
+
```ts
|
|
45
|
+
export type SExpansionItemRenderProp = (state: SExpansionItemRenderState) => ReactNode;
|
|
46
|
+
```
|
|
47
|
+
|
|
48
|
+
### SExpansionItemInteraction
|
|
49
|
+
|
|
50
|
+
```ts
|
|
51
|
+
export type SExpansionItemInteraction = 'chevron';
|
|
52
|
+
```
|
|
53
|
+
|
|
54
|
+
### SExpansionItemSize
|
|
55
|
+
|
|
56
|
+
```ts
|
|
57
|
+
export type SExpansionItemSize = 'sm' | 'md';
|
|
58
|
+
```
|
|
59
|
+
|
|
60
|
+
### SExpansionItemRenderState
|
|
61
|
+
|
|
62
|
+
```ts
|
|
63
|
+
export interface SExpansionItemRenderState {
|
|
64
|
+
expanded: boolean;
|
|
65
|
+
selected: boolean;
|
|
66
|
+
disabled: boolean;
|
|
67
|
+
}
|
|
68
|
+
```
|
|
69
|
+
|
|
34
70
|
## Dependencies
|
|
35
71
|
|
|
36
72
|
### Used by
|
|
@@ -1 +1 @@
|
|
|
1
|
-
export { SExpansionItem, type SExpansionItemProps, type SExpansionItemRenderProp, type SExpansionItemRenderState, type SExpansionItemSupportingTextPosition, } from './SExpansionItem';
|
|
1
|
+
export { SExpansionItem, type SExpansionItemInteraction, type SExpansionItemProps, type SExpansionItemRenderProp, type SExpansionItemRenderState, type SExpansionItemSize, type SExpansionItemSupportingTextPosition, } from './SExpansionItem';
|
|
@@ -14,6 +14,7 @@
|
|
|
14
14
|
| `iconColor?` | `SColor` | โ | ๋ ์ด๋ธ ์์ญ ์์ด์ฝ ์์. ๋ฏธ์ง์ ์ currentColor ์์ |
|
|
15
15
|
| `labelTooltip?` | `string` | `''` | ๋ ์ด๋ธ ํดํ ํ
์คํธ |
|
|
16
16
|
| `labelTooltipProps?` | `Partial<STooltipProps>` | โ | ๋ ์ด๋ธ ํดํ ์์ธ ์ต์
(SdTooltipProps ๋์) |
|
|
17
|
+
| `labelPosition?` | `SFieldLabelPosition` | `'left'` | ๋ ์ด๋ธ์ ์ปจํธ๋กค **์ผ์ชฝ**์ ๋์ง **์**์ ๋์ง. ๊ธฐ๋ณธ์ `left` โ ์ด ์๋น์ค์ ํผ์ ๋ผ๋ฒจ ์ด์ ์ธ๋ก๋ก ๋ง์ถฐ ์ฝ๋๋ค. ๋ผ๋ฒจ์ด ๊ธธ๊ฑฐ๋ ์ปจํธ๋กค์ด ์ข์ ํ ์ค์ ๊ฐ์ด ์ธ์ฐ๊ธฐ ์ด๋ ค์ธ ๋(๋ชจ๋ฌ ์์ ํผ, ํ ์ค์ง๋ฆฌ ์นธ) `top` ์ ์ด๋ค. **ํ ํผ ์์์๋ ์์ง ์๋๋ค** โ ๋ผ๋ฒจ ์์์ ์ด ํ๋ง๋ค ์ด๊ธ๋ ์ธ๋ก ์ ๋ ฌ์ด ๊นจ์ง๋ค. `top` ์ด๋ฉด ๋ผ๋ฒจ๊ณผ ์ปจํธ๋กค ์ฌ์ด ๊ฐ๊ฒฉ์ `--sys-space-field-vertical-gap` ์ด ์ ํ๋ค (smยทmd ๊ตฌ๋ถ ์์ด ๊ณ ์ ). ๋ผ๋ฒจ์ ์ค ์ธ์ฐ๋ ์ฅ์น์ธ `labelWidth`ยท`labelHeight` ๋ ์์ ์ ๋ผ๋ฒจ์๋ ๋ป์ด ์์ด ๋ฌด์๋๋ค โ `addonLabel` ์ ํญ์๋ ๊ทธ๋๋ก ์ ์ฉ๋๋ค. |
|
|
17
18
|
| `labelWidth?` | `number \| string` | โ | ๋ ์ด๋ธ/์ด๋์จ ๋ ์ด๋ธ ๋๋น (์ซ์=px). labelยทaddonLabel ํญ์ ๊ณตํต ์ ์ฉ |
|
|
18
19
|
| `labelHeight?` | `number \| string` | โ | ๋ ์ด๋ธ ๋ฐ์ค ๋์ด (์ซ์=px). ๋ฏธ์ง์ ์ size๋ณ ๊ธฐ๋ณธ๊ฐ ์ฌ์ฉ. ์ปจํธ๋กค ๋ฐ์ค๊ฐ ๊ธฐ๋ณธ ํ๋ ๋์ด๋ณด๋ค ํฐ ๊ฒฝ์ฐ(multiline ๋ฑ) ์ฒซ ํ์ ์ธ๋ก ์ค์ ์ ๋ ฌ์ ๋ง์ถ๊ธฐ ์ํด ์ปจํธ๋กค ๋ฐ์ค ๋์ด๋ฅผ ๋๊ฒจ๋ฐ๋๋ค. |
|
|
19
20
|
| `size?` | `SFieldSize` | `'sm'` | ํ๋ ํฌ๊ธฐ |
|
|
@@ -22,15 +23,15 @@
|
|
|
22
23
|
| `error?` | `boolean` | `false` | ์๋ฌ ์ํ |
|
|
23
24
|
| `errorMessage?` | `string` | `''` | ์๋ฌ ๋ฉ์์ง |
|
|
24
25
|
| `status?` | `SFieldStatus` | โ | ํ๋ ์ํ โ 'error' | 'pass' | 'default'. 'pass'๋ฉด ์ด๋ก ํ
๋๋ฆฌ |
|
|
25
|
-
| `focused?` | `boolean` | `false` | ํฌ์ปค์ค
|
|
26
|
-
| `hovered?` | `boolean` | `false` | ํธ๋ฒ
|
|
26
|
+
| `focused?` | `boolean` | `false` | ํฌ์ปค์ค ์ํ๋ฅผ ๋ฐ์์ ์ง์ ํ๋ค. ํ๋๋ฅผ ๊ฐ์ผ ์ชฝ์ด ํฌ์ปค์ค๋ฅผ ์ฅ๊ณ ์์ด(์ปค์คํ
ํธ๋ฆฌ๊ฑฐยท๋ณตํฉ ์ปจํธ๋กค) ํ๋ ์์ ์ `:focus-within` ์ด ๊ฑธ๋ฆฌ์ง ์์ ๋ ์ด๋ค. ์ผ๋ฉด ๊ฐ์กฐ ํ
๋๋ฆฌยท๋ง์ด error/pass ๋ณด๋ค ์ฐ์ ํ๋ค. |
|
|
27
|
+
| `hovered?` | `boolean` | `false` | ํธ๋ฒ ์ํ๋ฅผ ๋ฐ์์ ์ง์ ํ๋ค. `focused` ์ ๊ฐ์ ์ด์ ๋ก ์ฐ๋ฉฐ, ๊ฐ์กฐ๋ ๊ฐ๋ค โ ์ค์ `:hover` ์ ๊ตฌ๋ถ๋์ง ์๋ ๋ชจ์์ด์ด์ผ ๋ฐ์์ ํ๋ด ๋ธ ๊ฒ์ด ํฐ๊ฐ ๋์ง ์๋๋ค. |
|
|
27
28
|
| `rules?` | `Rule[]` | โ | ์ ํจ์ฑ ๊ท์น (๊ฒ์ฆ์ ์ปจํธ๋กค์์ ์ํ, API ํจ๋ฆฌํฐ) |
|
|
28
29
|
| `hint?` | `string` | `''` | ํ๋จ ํํธ |
|
|
29
30
|
| `disabled?` | `boolean` | `false` | ๋นํ์ฑ |
|
|
30
31
|
| `readOnly?` | `boolean` | `false` | ์ฝ๊ธฐ ์ ์ฉ (ํ์ ๋ฐฐ๊ฒฝ) |
|
|
31
|
-
| `width?` | `
|
|
32
|
-
| `minWidth?` | `
|
|
33
|
-
| `maxWidth?` | `
|
|
32
|
+
| `width?` | `SFieldWidth` | โ | ์ปจํธ๋กค ๋๋น. ์ง์ ํ๋ฉด ํ๋๊ฐ ๋ถ๋ชจ ํญ์ ๋ค ๋จน์ง ์๊ณ (๋ ์ด๋ธ + width) ๋งํผ๋ง ์ฐจ์งํ๋ค. ๋ค๋ฅธ ์์์ ๋๋ํ ๋์ผ๋ ค๋ฉด ๋ถ๋ชจ๋ฅผ flex ๋ก ๋๋ฉด ๋๋ค. **ํญ ๋ฑ๊ธ(`'xs' | 'sm' | 'md' | 'lg' | 'xl'`)์ผ๋ก ์ค๋ค** โ `--cmp-field-width-*` ํ ํฐ์ผ๋ก ํ๋ฆฌ๋ฏ๋ก ํ ํฐ์ด ๋ฐ๋๋ฉด ํ๋ฉด์ด ๋ฐ๋ผ๊ฐ๋ค. ๋ฑ๊ธ์ `maxLength`(= ์คํค๋ง ์ํ)๋ก ๊ณ ๋ฅด๊ณ , ์ํ์ด `xl` ์ ๋๊ฑฐ๋ ์ํ์ด ์์ผ๋ฉด `"100%"` ๋ก ๋๋ค. (`sellmate/field-width-grade` ๊ฐ ๊ฒ์ฌํ๋ค) ์ซ์๋ px, ๊ทธ ๋ฐ์ ๋ฌธ์์ด์ CSS ๊ธธ์ด ๊ทธ๋๋ก๋ค. |
|
|
33
|
+
| `minWidth?` | `SFieldWidth` | โ | ์ปจํธ๋กค ์ต์ ๋๋น (๋ฑ๊ธ ยท ์ซ์=px ยท CSS ๊ธธ์ด). ํํ์ ๋ง ์ง์ ํ๋ฉฐ ํ๋๋ ๊ณ์ ๋ถ๋ชจ ํญ์ ์ฑ์ด๋ค |
|
|
34
|
+
| `maxWidth?` | `SFieldWidth` | โ | ์ปจํธ๋กค ์ต๋ ๋๋น (๋ฑ๊ธ ยท ์ซ์=px ยท CSS ๊ธธ์ด). ์ํ์ ๋ง ์ง์ ํ๋ฉฐ ํ๋๋ ๊ทธ ์๋์์ ๋ถ๋ชจ ํญ์ ์ฑ์ด๋ค. `width` ์ ๋ฌ๋ฆฌ hug ๋ก ์ ํํ์ง ์๋๋ค โ ๋ถ๋ชจ๊ฐ ์ข์ผ๋ฉด ๊ฐ์ด ์ข์์ง๊ณ , ๋์ด๋ ์ฌ๊ธฐ์ ๋ฉ์ถ๋ค. ๊ฐ ๊ธธ์ด๊ฐ ์ ํด์ง ์ปจํธ๋กค(๋ ์งยท์๊ฐ)์ด `width="100%"` ๋ฅผ ๋ฐ์ ํ ์ ์ฒด๋ก ๋์ด๋๋ ๊ฒ์ ๋ง๋ ๋ฐ ์ด๋ค. **๋ผ๋ฒจ์ ์ํ์ ๋ค์ด๊ฐ์ง ์๋๋ค** โ ๋ผ๋ฒจ์ ์ปจํธ๋กค์ ํ์ ๋ผ ์ด ์ํ ๋ฐ์ด๋ค. `addonLabel` ์ ํ
๋๋ฆฌ ๋ฐ์ค ์์ด๋ผ ์ํ์ ๋๋ ๋จน์ผ๋ฏ๋ก, `labelWidth`(= addon ํญ)๋งํผ ์ํ์ ์๋์ผ๋ก ๋๋ฆฐ๋ค. addon ์ด ์๋๋ฐ `labelWidth` ๊ฐ ์์ผ๋ฉด ํญ์ ์ ์ ์์ด ์ํ์ ๊ฑธ์ง ์๋๋ค โ ์ปจํธ๋กค์ด ์๋ฆฌ๋ ๊ฒ๋ณด๋ค ๋์ ํธ์ด ๋ซ๋ค. |
|
|
34
35
|
| `multiline?` | `boolean` | `false` | ๋ฉํฐ๋ผ์ธ(textarea) โ ์ปจํธ๋กค ๋์ด๋ฅผ ๊ณ ์ ํ์ง ์๊ณ min-height๋ง ์ ์ฉ |
|
|
35
36
|
| `borderless?` | `boolean` | `false` | ํ
๋๋ฆฌ ๋ฐ์ค ์ ๊ฑฐ (inline ์ปจํธ๋กค์ฉ) โ border/๋ฐฐ๊ฒฝ/hoverยทfocus ๊ฐ์กฐ๋ง ์ฌ๋ผ์ง๊ณ labelยทhintยทerrorMessage ๋ฑ ๋๋จธ์ง ํ๋ ๊ตฌ์ฑ์ ๊ทธ๋๋ก ๋์ํ๋ค. |
|
|
36
37
|
| `children?` | `ReactNode` | โ | ์ค์ ์ปจํธ๋กค (input/select ๋ฑ) โ ํ
๋๋ฆฌ ์์ด ๋ ๋, ํ
๋๋ฆฌ๋ SField๊ฐ ์ ๊ณต |
|
|
@@ -50,6 +51,32 @@
|
|
|
50
51
|
|--------|------|-------------|
|
|
51
52
|
| `focus` | `() => void` | ๋ด๋ถ ์ปจํธ๋กค์ ํฌ์ปค์คํ๊ณ ํ๋๋ฅผ ํ๋ฉด์ ์คํฌ๋กคํฉ๋๋ค. |
|
|
52
53
|
|
|
54
|
+
## Types
|
|
55
|
+
|
|
56
|
+
### SFieldLabelPosition
|
|
57
|
+
|
|
58
|
+
```ts
|
|
59
|
+
export type SFieldLabelPosition = 'left' | 'top';
|
|
60
|
+
```
|
|
61
|
+
|
|
62
|
+
### SFieldSize
|
|
63
|
+
|
|
64
|
+
```ts
|
|
65
|
+
export type SFieldSize = 'sm' | 'md';
|
|
66
|
+
```
|
|
67
|
+
|
|
68
|
+
### SFieldAddonAlign
|
|
69
|
+
|
|
70
|
+
```ts
|
|
71
|
+
export type SFieldAddonAlign = 'start' | 'center' | 'end';
|
|
72
|
+
```
|
|
73
|
+
|
|
74
|
+
### SFieldStatus
|
|
75
|
+
|
|
76
|
+
```ts
|
|
77
|
+
export type SFieldStatus = 'default' | 'pass' | 'error';
|
|
78
|
+
```
|
|
79
|
+
|
|
53
80
|
## Dependencies
|
|
54
81
|
|
|
55
82
|
### Used by
|
|
@@ -58,9 +85,11 @@
|
|
|
58
85
|
- [SChipInput](../SChipInput)
|
|
59
86
|
- [SDatePicker](../SDatePicker)
|
|
60
87
|
- [SDateRangePicker](../SDateRangePicker)
|
|
88
|
+
- [SEditor](../SEditor)
|
|
61
89
|
- [SFilePicker](../SFilePicker)
|
|
62
90
|
- [SInput](../SInput)
|
|
63
91
|
- [SNumberInput](../SNumberInput)
|
|
92
|
+
- [SSearchInput](../SSearchInput)
|
|
64
93
|
- [SSelect](../SSelect)
|
|
65
94
|
- [STextarea](../STextarea)
|
|
66
95
|
- [STimePicker](../STimePicker)
|
|
@@ -81,9 +110,11 @@ graph TD;
|
|
|
81
110
|
SChipInput --> SField
|
|
82
111
|
SDatePicker --> SField
|
|
83
112
|
SDateRangePicker --> SField
|
|
113
|
+
SEditor --> SField
|
|
84
114
|
SFilePicker --> SField
|
|
85
115
|
SInput --> SField
|
|
86
116
|
SNumberInput --> SField
|
|
117
|
+
SSearchInput --> SField
|
|
87
118
|
SSelect --> SField
|
|
88
119
|
STextarea --> SField
|
|
89
120
|
STimePicker --> SField
|
|
@@ -3,9 +3,11 @@ import { type SIconName } from '../SIcon';
|
|
|
3
3
|
import { type STooltipProps } from '../STooltip';
|
|
4
4
|
import { type SColor } from '../../lib/color';
|
|
5
5
|
import { type Rule } from '../../lib/form';
|
|
6
|
+
import { type SFieldWidth } from '../../lib/field-width';
|
|
6
7
|
export type SFieldSize = 'sm' | 'md';
|
|
7
8
|
export type SFieldAddonAlign = 'start' | 'center' | 'end';
|
|
8
9
|
export type SFieldStatus = 'default' | 'pass' | 'error';
|
|
10
|
+
export type SFieldLabelPosition = 'left' | 'top';
|
|
9
11
|
/** ref๋ก ๋
ธ์ถ๋๋ UX ๋ฉ์๋ (sd-field @Method sdFocus ๋์) */
|
|
10
12
|
export interface SFieldHandle {
|
|
11
13
|
/** ๋ด๋ถ ์ปจํธ๋กค์ ํฌ์ปค์คํ๊ณ ํ๋๋ฅผ ํ๋ฉด์ ์คํฌ๋กคํฉ๋๋ค. */
|
|
@@ -24,6 +26,18 @@ export interface SFieldProps {
|
|
|
24
26
|
labelTooltip?: string;
|
|
25
27
|
/** ๋ ์ด๋ธ ํดํ ์์ธ ์ต์
(SdTooltipProps ๋์) */
|
|
26
28
|
labelTooltipProps?: Partial<STooltipProps>;
|
|
29
|
+
/**
|
|
30
|
+
* ๋ ์ด๋ธ์ ์ปจํธ๋กค **์ผ์ชฝ**์ ๋์ง **์**์ ๋์ง.
|
|
31
|
+
*
|
|
32
|
+
* ๊ธฐ๋ณธ์ `left` โ ์ด ์๋น์ค์ ํผ์ ๋ผ๋ฒจ ์ด์ ์ธ๋ก๋ก ๋ง์ถฐ ์ฝ๋๋ค. ๋ผ๋ฒจ์ด ๊ธธ๊ฑฐ๋ ์ปจํธ๋กค์ด
|
|
33
|
+
* ์ข์ ํ ์ค์ ๊ฐ์ด ์ธ์ฐ๊ธฐ ์ด๋ ค์ธ ๋(๋ชจ๋ฌ ์์ ํผ, ํ ์ค์ง๋ฆฌ ์นธ) `top` ์ ์ด๋ค.
|
|
34
|
+
* **ํ ํผ ์์์๋ ์์ง ์๋๋ค** โ ๋ผ๋ฒจ ์์์ ์ด ํ๋ง๋ค ์ด๊ธ๋ ์ธ๋ก ์ ๋ ฌ์ด ๊นจ์ง๋ค.
|
|
35
|
+
*
|
|
36
|
+
* `top` ์ด๋ฉด ๋ผ๋ฒจ๊ณผ ์ปจํธ๋กค ์ฌ์ด ๊ฐ๊ฒฉ์ `--sys-space-field-vertical-gap` ์ด ์ ํ๋ค
|
|
37
|
+
* (smยทmd ๊ตฌ๋ถ ์์ด ๊ณ ์ ). ๋ผ๋ฒจ์ ์ค ์ธ์ฐ๋ ์ฅ์น์ธ `labelWidth`ยท`labelHeight` ๋
|
|
38
|
+
* ์์ ์ ๋ผ๋ฒจ์๋ ๋ป์ด ์์ด ๋ฌด์๋๋ค โ `addonLabel` ์ ํญ์๋ ๊ทธ๋๋ก ์ ์ฉ๋๋ค.
|
|
39
|
+
*/
|
|
40
|
+
labelPosition?: SFieldLabelPosition;
|
|
27
41
|
/** ๋ ์ด๋ธ/์ด๋์จ ๋ ์ด๋ธ ๋๋น (์ซ์=px). labelยทaddonLabel ํญ์ ๊ณตํต ์ ์ฉ */
|
|
28
42
|
labelWidth?: number | string;
|
|
29
43
|
/**
|
|
@@ -44,9 +58,15 @@ export interface SFieldProps {
|
|
|
44
58
|
errorMessage?: string;
|
|
45
59
|
/** ํ๋ ์ํ โ 'error' | 'pass' | 'default'. 'pass'๋ฉด ์ด๋ก ํ
๋๋ฆฌ */
|
|
46
60
|
status?: SFieldStatus;
|
|
47
|
-
/**
|
|
61
|
+
/**
|
|
62
|
+
* ํฌ์ปค์ค ์ํ๋ฅผ ๋ฐ์์ ์ง์ ํ๋ค. ํ๋๋ฅผ ๊ฐ์ผ ์ชฝ์ด ํฌ์ปค์ค๋ฅผ ์ฅ๊ณ ์์ด(์ปค์คํ
ํธ๋ฆฌ๊ฑฐยท๋ณตํฉ ์ปจํธ๋กค)
|
|
63
|
+
* ํ๋ ์์ ์ `:focus-within` ์ด ๊ฑธ๋ฆฌ์ง ์์ ๋ ์ด๋ค. ์ผ๋ฉด ๊ฐ์กฐ ํ
๋๋ฆฌยท๋ง์ด error/pass ๋ณด๋ค ์ฐ์ ํ๋ค.
|
|
64
|
+
*/
|
|
48
65
|
focused?: boolean;
|
|
49
|
-
/**
|
|
66
|
+
/**
|
|
67
|
+
* ํธ๋ฒ ์ํ๋ฅผ ๋ฐ์์ ์ง์ ํ๋ค. `focused` ์ ๊ฐ์ ์ด์ ๋ก ์ฐ๋ฉฐ, ๊ฐ์กฐ๋ ๊ฐ๋ค โ
|
|
68
|
+
* ์ค์ `:hover` ์ ๊ตฌ๋ถ๋์ง ์๋ ๋ชจ์์ด์ด์ผ ๋ฐ์์ ํ๋ด ๋ธ ๊ฒ์ด ํฐ๊ฐ ๋์ง ์๋๋ค.
|
|
69
|
+
*/
|
|
50
70
|
hovered?: boolean;
|
|
51
71
|
/** ์ ํจ์ฑ ๊ท์น (๊ฒ์ฆ์ ์ปจํธ๋กค์์ ์ํ, API ํจ๋ฆฌํฐ) */
|
|
52
72
|
rules?: Rule[];
|
|
@@ -57,14 +77,19 @@ export interface SFieldProps {
|
|
|
57
77
|
/** ์ฝ๊ธฐ ์ ์ฉ (ํ์ ๋ฐฐ๊ฒฝ) */
|
|
58
78
|
readOnly?: boolean;
|
|
59
79
|
/**
|
|
60
|
-
* ์ปจํธ๋กค
|
|
80
|
+
* ์ปจํธ๋กค ๋๋น. ์ง์ ํ๋ฉด ํ๋๊ฐ ๋ถ๋ชจ ํญ์ ๋ค ๋จน์ง ์๊ณ (๋ ์ด๋ธ + width) ๋งํผ๋ง ์ฐจ์งํ๋ค.
|
|
61
81
|
* ๋ค๋ฅธ ์์์ ๋๋ํ ๋์ผ๋ ค๋ฉด ๋ถ๋ชจ๋ฅผ flex ๋ก ๋๋ฉด ๋๋ค.
|
|
82
|
+
*
|
|
83
|
+
* **ํญ ๋ฑ๊ธ(`'xs' | 'sm' | 'md' | 'lg' | 'xl'`)์ผ๋ก ์ค๋ค** โ `--cmp-field-width-*` ํ ํฐ์ผ๋ก ํ๋ฆฌ๋ฏ๋ก
|
|
84
|
+
* ํ ํฐ์ด ๋ฐ๋๋ฉด ํ๋ฉด์ด ๋ฐ๋ผ๊ฐ๋ค. ๋ฑ๊ธ์ `maxLength`(= ์คํค๋ง ์ํ)๋ก ๊ณ ๋ฅด๊ณ , ์ํ์ด `xl` ์
|
|
85
|
+
* ๋๊ฑฐ๋ ์ํ์ด ์์ผ๋ฉด `"100%"` ๋ก ๋๋ค. (`sellmate/field-width-grade` ๊ฐ ๊ฒ์ฌํ๋ค)
|
|
86
|
+
* ์ซ์๋ px, ๊ทธ ๋ฐ์ ๋ฌธ์์ด์ CSS ๊ธธ์ด ๊ทธ๋๋ก๋ค.
|
|
62
87
|
*/
|
|
63
|
-
width?:
|
|
64
|
-
/** ์ปจํธ๋กค ์ต์ ๋๋น (์ซ์=px). ํํ์ ๋ง ์ง์ ํ๋ฉฐ ํ๋๋ ๊ณ์ ๋ถ๋ชจ ํญ์ ์ฑ์ด๋ค */
|
|
65
|
-
minWidth?:
|
|
88
|
+
width?: SFieldWidth;
|
|
89
|
+
/** ์ปจํธ๋กค ์ต์ ๋๋น (๋ฑ๊ธ ยท ์ซ์=px ยท CSS ๊ธธ์ด). ํํ์ ๋ง ์ง์ ํ๋ฉฐ ํ๋๋ ๊ณ์ ๋ถ๋ชจ ํญ์ ์ฑ์ด๋ค */
|
|
90
|
+
minWidth?: SFieldWidth;
|
|
66
91
|
/**
|
|
67
|
-
* ์ปจํธ๋กค ์ต๋ ๋๋น (์ซ์=px). ์ํ์ ๋ง ์ง์ ํ๋ฉฐ ํ๋๋ ๊ทธ ์๋์์ ๋ถ๋ชจ ํญ์ ์ฑ์ด๋ค.
|
|
92
|
+
* ์ปจํธ๋กค ์ต๋ ๋๋น (๋ฑ๊ธ ยท ์ซ์=px ยท CSS ๊ธธ์ด). ์ํ์ ๋ง ์ง์ ํ๋ฉฐ ํ๋๋ ๊ทธ ์๋์์ ๋ถ๋ชจ ํญ์ ์ฑ์ด๋ค.
|
|
68
93
|
*
|
|
69
94
|
* `width` ์ ๋ฌ๋ฆฌ hug ๋ก ์ ํํ์ง ์๋๋ค โ ๋ถ๋ชจ๊ฐ ์ข์ผ๋ฉด ๊ฐ์ด ์ข์์ง๊ณ , ๋์ด๋ ์ฌ๊ธฐ์ ๋ฉ์ถ๋ค.
|
|
70
95
|
* ๊ฐ ๊ธธ์ด๊ฐ ์ ํด์ง ์ปจํธ๋กค(๋ ์งยท์๊ฐ)์ด `width="100%"` ๋ฅผ ๋ฐ์ ํ ์ ์ฒด๋ก ๋์ด๋๋ ๊ฒ์ ๋ง๋ ๋ฐ ์ด๋ค.
|
|
@@ -74,7 +99,7 @@ export interface SFieldProps {
|
|
|
74
99
|
* ์ํ์ ์๋์ผ๋ก ๋๋ฆฐ๋ค. addon ์ด ์๋๋ฐ `labelWidth` ๊ฐ ์์ผ๋ฉด ํญ์ ์ ์ ์์ด ์ํ์
|
|
75
100
|
* ๊ฑธ์ง ์๋๋ค โ ์ปจํธ๋กค์ด ์๋ฆฌ๋ ๊ฒ๋ณด๋ค ๋์ ํธ์ด ๋ซ๋ค.
|
|
76
101
|
*/
|
|
77
|
-
maxWidth?:
|
|
102
|
+
maxWidth?: SFieldWidth;
|
|
78
103
|
/** ๋ฉํฐ๋ผ์ธ(textarea) โ ์ปจํธ๋กค ๋์ด๋ฅผ ๊ณ ์ ํ์ง ์๊ณ min-height๋ง ์ ์ฉ */
|
|
79
104
|
multiline?: boolean;
|
|
80
105
|
/**
|
|
@@ -1 +1 @@
|
|
|
1
|
-
export { SField, type SFieldHandle, type SFieldProps, type SFieldSize, type SFieldAddonAlign, type SFieldStatus, } from './SField';
|
|
1
|
+
export { SField, type SFieldHandle, type SFieldProps, type SFieldSize, type SFieldAddonAlign, type SFieldStatus, type SFieldLabelPosition, } from './SField';
|
|
@@ -11,11 +11,11 @@
|
|
|
11
11
|
| `value?` | `SFilePickerValue` | `null` | |
|
|
12
12
|
| `placeholder?` | `string` | `'Click to upload'` | |
|
|
13
13
|
| `disabled?` | `boolean` | `false` | |
|
|
14
|
-
| `focused?` | `boolean` | `false` | ํฌ์ปค์ค
|
|
15
|
-
| `hovered?` | `boolean` | `false` | ํธ๋ฒ
|
|
14
|
+
| `focused?` | `boolean` | `false` | ํฌ์ปค์ค ์ํ๋ฅผ ๋ฐ์์ ์ง์ ํ๋ค โ ๊ฐ์กฐ ํ
๋๋ฆฌยท๋ง์ด ์ฆ์ ๊ฑธ๋ฆฐ๋ค (SField ๋ก ๊ทธ๋๋ก ๋์ด๊ฐ๋ค) |
|
|
15
|
+
| `hovered?` | `boolean` | `false` | ํธ๋ฒ ์ํ๋ฅผ ๋ฐ์์ ์ง์ ํ๋ค โ ๊ฐ์กฐ๋ `focused` ์ ๊ฐ๋ค (SField ๋ก ๊ทธ๋๋ก ๋์ด๊ฐ๋ค) |
|
|
16
16
|
| `inline?` | `boolean` | `false` | ์ธ๋ผ์ธ ํ์ โ SField ํ
๋๋ฆฌ ๋ฐ์ค๋ง ์ฌ๋ผ์ง๊ณ label/rules/hint ๋ ๊ทธ๋๋ก ๋์ |
|
|
17
17
|
| `multiple?` | `boolean` | `false` | |
|
|
18
|
-
| `
|
|
18
|
+
| `showMultipleListBox?` | `boolean` | `false` | multiple ํ์ผ ๋ชฉ๋ก์ ํ๋ ์๋ ์นฉ ๋์ , caret(โผ) ํด๋ฆญ ์ ์ด๋ฆฌ๋ ๋ฆฌ์คํธ๋ฐ์ค ์นด๋๋ก ํ์ (๋ฐ๊นฅ ํด๋ฆญ ์ ๋ซํ) |
|
|
19
19
|
| `accept?` | `string` | โ | |
|
|
20
20
|
| `maxFileSize?` | `number \| string` | โ | |
|
|
21
21
|
| `maxTotalSize?` | `number \| string` | โ | |
|
|
@@ -25,6 +25,7 @@
|
|
|
25
25
|
| `status?` | `SFieldStatus` | โ | |
|
|
26
26
|
| `size?` | `SFieldSize` | `'sm'` | |
|
|
27
27
|
| `label?` | `string` | โ | |
|
|
28
|
+
| `labelPosition?` | `SFieldLabelPosition` | โ | ๋ ์ด๋ธ ์์น โ `top` ์ด๋ฉด ๋ผ๋ฒจ์ด ์ปจํธ๋กค ์์ ์ ๋ค (SField ๋ก ๊ทธ๋๋ก ๋์ด๊ฐ๋ค). |
|
|
28
29
|
| `labelWidth?` | `number \| string` | โ | |
|
|
29
30
|
| `icon?` | `SIconName` | โ | |
|
|
30
31
|
| `iconColor?` | `SColor` | โ | |
|
|
@@ -35,7 +36,7 @@
|
|
|
35
36
|
| `hint?` | `string` | โ | |
|
|
36
37
|
| `error?` | `boolean` | โ | |
|
|
37
38
|
| `errorMessage?` | `string` | โ | |
|
|
38
|
-
| `width?` | `
|
|
39
|
+
| `width?` | `SFieldWidth` | โ | ์ปจํธ๋กค ๋๋น โ ํญ ๋ฑ๊ธ(`'xs' | 'sm' | 'md' | 'lg' | 'xl'`) ยท ์ซ์=px ยท CSS ๊ธธ์ด. ๋ฑ๊ธ์ `--cmp-field-width-*` ํ ํฐ์ผ๋ก ํ๋ฆฌ๋ฏ๋ก ํ ํฐ์ด ๋ฐ๋๋ฉด ํ๋ฉด์ด ๋ฐ๋ผ๊ฐ๋ค. ๊ฐ ๊ธธ์ด์ ์ํ์ด ์์ผ๋ฉด `"100%"` ๋ก ๋์ด ํ ์ ์ฒด๋ฅผ ์ด๋ค. |
|
|
39
40
|
| `className?` | `string` | โ | |
|
|
40
41
|
| `style?` | `CSSProperties` | โ | |
|
|
41
42
|
|
|
@@ -46,6 +47,20 @@
|
|
|
46
47
|
| `onValueChange` | `(value: SFilePickerValue) => void` | ํ์ผ ๋ณ๊ฒฝ (sdUpdate) |
|
|
47
48
|
| `onReject` | `(detail: { files: File[]; reason: SFilePickerRejectReason }) => void` | ์ ํ ์ด๊ณผ ๊ฑฐ๋ถ (sdReject) |
|
|
48
49
|
|
|
50
|
+
## Types
|
|
51
|
+
|
|
52
|
+
### SFilePickerValue
|
|
53
|
+
|
|
54
|
+
```ts
|
|
55
|
+
export type SFilePickerValue = File[] | File | null;
|
|
56
|
+
```
|
|
57
|
+
|
|
58
|
+
### SFilePickerRejectReason
|
|
59
|
+
|
|
60
|
+
```ts
|
|
61
|
+
export type SFilePickerRejectReason = 'max-file-size' | 'max-total-size' | 'max-files';
|
|
62
|
+
```
|
|
63
|
+
|
|
49
64
|
## Dependencies
|
|
50
65
|
|
|
51
66
|
### 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 SFilePickerValue = File[] | File | null;
|
|
8
9
|
export type SFilePickerRejectReason = 'max-file-size' | 'max-total-size' | 'max-files';
|
|
9
10
|
export interface SFilePickerProps {
|
|
@@ -17,15 +18,15 @@ export interface SFilePickerProps {
|
|
|
17
18
|
}) => void;
|
|
18
19
|
placeholder?: string;
|
|
19
20
|
disabled?: boolean;
|
|
20
|
-
/** ํฌ์ปค์ค
|
|
21
|
+
/** ํฌ์ปค์ค ์ํ๋ฅผ ๋ฐ์์ ์ง์ ํ๋ค โ ๊ฐ์กฐ ํ
๋๋ฆฌยท๋ง์ด ์ฆ์ ๊ฑธ๋ฆฐ๋ค (SField ๋ก ๊ทธ๋๋ก ๋์ด๊ฐ๋ค) */
|
|
21
22
|
focused?: boolean;
|
|
22
|
-
/** ํธ๋ฒ
|
|
23
|
+
/** ํธ๋ฒ ์ํ๋ฅผ ๋ฐ์์ ์ง์ ํ๋ค โ ๊ฐ์กฐ๋ `focused` ์ ๊ฐ๋ค (SField ๋ก ๊ทธ๋๋ก ๋์ด๊ฐ๋ค) */
|
|
23
24
|
hovered?: boolean;
|
|
24
25
|
/** ์ธ๋ผ์ธ ํ์ โ SField ํ
๋๋ฆฌ ๋ฐ์ค๋ง ์ฌ๋ผ์ง๊ณ label/rules/hint ๋ ๊ทธ๋๋ก ๋์ */
|
|
25
26
|
inline?: boolean;
|
|
26
27
|
multiple?: boolean;
|
|
27
28
|
/** multiple ํ์ผ ๋ชฉ๋ก์ ํ๋ ์๋ ์นฉ ๋์ , caret(โผ) ํด๋ฆญ ์ ์ด๋ฆฌ๋ ๋ฆฌ์คํธ๋ฐ์ค ์นด๋๋ก ํ์ (๋ฐ๊นฅ ํด๋ฆญ ์ ๋ซํ) */
|
|
28
|
-
|
|
29
|
+
showMultipleListBox?: boolean;
|
|
29
30
|
accept?: string;
|
|
30
31
|
maxFileSize?: number | string;
|
|
31
32
|
maxTotalSize?: number | string;
|
|
@@ -35,6 +36,13 @@ export interface SFilePickerProps {
|
|
|
35
36
|
status?: SFieldStatus;
|
|
36
37
|
size?: SFieldSize;
|
|
37
38
|
label?: string;
|
|
39
|
+
/**
|
|
40
|
+
* ๋ ์ด๋ธ ์์น โ `top` ์ด๋ฉด ๋ผ๋ฒจ์ด ์ปจํธ๋กค ์์ ์ ๋ค (SField ๋ก ๊ทธ๋๋ก ๋์ด๊ฐ๋ค).
|
|
41
|
+
*
|
|
42
|
+
* @nodemo SField ์์ ๋ด๋ ค์ค๋ ๊ณตํต ํ๋ ์ต์
์ด๋ค โ ๊ฐ์ ๋ฐ๋ชจ๋ฅผ ์ปจํธ๋กค๋ง๋ค ๋ณต์ ํ์ง ์๊ณ
|
|
43
|
+
* ๋ํ ์ปจํธ๋กค `SInput` ๊ณผ `SField` ์ ํ ๋ฒ ๋๋ค (scripts/check-docs-coverage.mjs ๋จธ๋ฆฌ๋ง).
|
|
44
|
+
*/
|
|
45
|
+
labelPosition?: SFieldLabelPosition;
|
|
38
46
|
labelWidth?: number | string;
|
|
39
47
|
icon?: SIconName;
|
|
40
48
|
iconColor?: SColor;
|
|
@@ -45,9 +53,14 @@ export interface SFilePickerProps {
|
|
|
45
53
|
hint?: string;
|
|
46
54
|
error?: boolean;
|
|
47
55
|
errorMessage?: string;
|
|
48
|
-
|
|
56
|
+
/**
|
|
57
|
+
* ์ปจํธ๋กค ๋๋น โ ํญ ๋ฑ๊ธ(`'xs' | 'sm' | 'md' | 'lg' | 'xl'`) ยท ์ซ์=px ยท CSS ๊ธธ์ด.
|
|
58
|
+
* ๋ฑ๊ธ์ `--cmp-field-width-*` ํ ํฐ์ผ๋ก ํ๋ฆฌ๋ฏ๋ก ํ ํฐ์ด ๋ฐ๋๋ฉด ํ๋ฉด์ด ๋ฐ๋ผ๊ฐ๋ค.
|
|
59
|
+
* ๊ฐ ๊ธธ์ด์ ์ํ์ด ์์ผ๋ฉด `"100%"` ๋ก ๋์ด ํ ์ ์ฒด๋ฅผ ์ด๋ค.
|
|
60
|
+
*/
|
|
61
|
+
width?: SFieldWidth;
|
|
49
62
|
className?: string;
|
|
50
63
|
style?: CSSProperties;
|
|
51
64
|
}
|
|
52
65
|
/** SFilePicker โ sd-file-picker ํฌํ
. ๋จ์ผ/๋ค์ค ํ์ผ + ํฌ๊ธฐยท๊ฐ์ ๊ฒ์ฆ + ์นฉ ๋ชฉ๋ก. */
|
|
53
|
-
export declare function SFilePicker({ value, onValueChange, onReject, placeholder, disabled, focused, hovered, inline, multiple,
|
|
66
|
+
export declare function SFilePicker({ value, onValueChange, onReject, placeholder, disabled, focused, hovered, inline, multiple, showMultipleListBox, accept, maxFileSize, maxTotalSize, maxFiles, name, rules, status, size, label, labelPosition, labelWidth, icon, iconColor, labelTooltip, labelTooltipProps, addonLabel, addonAlign, hint, error, errorMessage, width, className, style, }: SFilePickerProps): import("react").JSX.Element;
|
|
@@ -9,6 +9,7 @@
|
|
|
9
9
|
| Prop | Type | Default | Description |
|
|
10
10
|
|------|------|---------|-------------|
|
|
11
11
|
| `bg?` | `SFooterBg` | `'white'` | ๋ฐฐ๊ฒฝ์ |
|
|
12
|
+
| `size?` | `SFooterSize` | `'md'` | ํฌ๊ธฐ. ๊ธฐ๋ณธ์ `md` โ ์ค๋ฒ๋ ์ด ํ๋จ ์ก์
์์ญ์ ํฌ๊ธฐ๋ค |
|
|
12
13
|
| `left?` | `ReactNode` | โ | footer ์ข์ธก slot |
|
|
13
14
|
| `children?` | `ReactNode` | โ | footer ์ข์ธก slot. left์ ํจ๊ป ์ฐ๋ฉด left ๋ค์ ๋ ๋๋๋ค |
|
|
14
15
|
| `button?` | `SFooterButton` | โ | ์ฐ์ธก ๊ธฐ๋ณธ ์ก์
๋ฒํผ |
|
|
@@ -16,13 +17,54 @@
|
|
|
16
17
|
| `leftClassName?` | `string` | โ | |
|
|
17
18
|
| `style?` | `CSSProperties` | โ | |
|
|
18
19
|
|
|
20
|
+
## Types
|
|
21
|
+
|
|
22
|
+
### SFooterBg
|
|
23
|
+
|
|
24
|
+
```ts
|
|
25
|
+
export type SFooterBg = 'white' | 'grey';
|
|
26
|
+
```
|
|
27
|
+
|
|
28
|
+
### SFooterSize
|
|
29
|
+
|
|
30
|
+
```ts
|
|
31
|
+
/**
|
|
32
|
+
* footer ํฌ๊ธฐ. ๋ฒํผ ํฌ๊ธฐ๊ฐ ์ฌ๊ธฐ์ ๋ธ๋ ค ์จ๋ค โ `md` ๋ `SButton size="md"`, `sm` ์ `"sm"`.
|
|
33
|
+
*
|
|
34
|
+
* ๋ฒํผ ํฌ๊ธฐ๋ฅผ ๋ฐ๋ก ๋ฐ์ง ์๊ณ footer ์์ฒด๋ฅผ ๋ถ๊ธฐํ๋ ์ด์ : ํฌ๊ธฐ๋ฅผ ์ ํ๋ ๊ฒ์ ๋ฒํผ์ด ์๋๋ผ
|
|
35
|
+
* **๋ฒํผ์ด ๋์ธ ์๋ฆฌ**์ด๊ธฐ ๋๋ฌธ์ด๋ค (AGENTS.md ยง3-5-2). ์ข์ธก ์ฌ๋กฏ ๋ฒํผ๊น์ง ํ ๋ฒ๋ก ๋ง์ถฐ์ผ
|
|
36
|
+
* ํ๋๋ฐ, ์ฐ์ธก ๋ฒํผ๋ง ํฌ๊ธฐ๋ฅผ ๋ฐ์ผ๋ฉด ์ข์ฐ๊ฐ ์ด๊ธ๋ footer ๋ฅผ ๋ง๋ค ๊ธธ์ด ์ด๋ฆฐ๋ค.
|
|
37
|
+
*/
|
|
38
|
+
export type SFooterSize = 'sm' | 'md';
|
|
39
|
+
```
|
|
40
|
+
|
|
41
|
+
### SFooterButton
|
|
42
|
+
|
|
43
|
+
```ts
|
|
44
|
+
/**
|
|
45
|
+
* footer ์ฐ์ธก ๊ธฐ๋ณธ ์ก์
๋ฒํผ ์ค์ โ `SButton` ์ prop ์ ๊ทธ๋๋ก ๋ฐ๋๋ค.
|
|
46
|
+
*
|
|
47
|
+
* ๊ณจ๋ผ ๋ด์ ๋ถ๋ถ์งํฉ์ผ๋ก ๋์ง ์๋ ์ด์ : `SButton` ์ prop ์ด ๋ ๋๋ง๋ค ์ด ๋ชฉ๋ก๋ง ์กฐ์ฉํ
|
|
48
|
+
* ๋ค์ฒ์ ธ, ์์ด์ฝ ํ๋ ๋ถ์ด๋ ค ํด๋ footer ์์๋ ๊ธธ์ด ์๋ ์ํ๊ฐ ๋๋ค.
|
|
49
|
+
*
|
|
50
|
+
* **`size` ๋ง ๋บ๋ค.** ๋ฒํผ ํฌ๊ธฐ๋ ๋์ด๋ ์์น๊ฐ ์ ํ๋ฏ๋ก footer ์ `size` ๊ฐ ์ ํ๋ค
|
|
51
|
+
* (AGENTS.md ยง3-5-2) โ ๋ฒํผ์ด ์๊ธฐ ํฌ๊ธฐ๋ฅผ ๋ฐ๋ก ์ฃผ์ฅํ ์๋ฆฌ๊ฐ ์๋๋ค.
|
|
52
|
+
*
|
|
53
|
+
* `label`ยท`color` ๋ ์ฃผ์ง ์์ผ๋ฉด footer ๊ฐ ์ฃผ ์ก์
๊ธฐ๋ณธ๊ฐ(`'ํ์ธ'`ยท`'primary'`)์ผ๋ก ์ก๋๋ค.
|
|
54
|
+
* ํ๊ดด์ ์ก์
์ด๋ผ `danger` ๊ฐ ํ์ํ ๊ฒฝ์ฐ๋ ์ด์ด ๋๋ค (ยง3-5-3).
|
|
55
|
+
*/
|
|
56
|
+
export type SFooterButton = Omit<SButtonProps, 'size'>;
|
|
57
|
+
```
|
|
58
|
+
|
|
19
59
|
## Dependencies
|
|
20
60
|
|
|
21
61
|
### Used by
|
|
22
62
|
|
|
23
63
|
- [SActionModal](../SActionModal)
|
|
64
|
+
- [SCard](../SCard)
|
|
24
65
|
- [SDrawer](../SDrawer)
|
|
25
66
|
- [SPopup](../SPopup)
|
|
67
|
+
- [SSectionHeaderCard](../SSectionHeaderCard)
|
|
26
68
|
|
|
27
69
|
### Depends on
|
|
28
70
|
|
|
@@ -34,7 +76,9 @@
|
|
|
34
76
|
graph TD;
|
|
35
77
|
SFooter --> SButton
|
|
36
78
|
SActionModal --> SFooter
|
|
79
|
+
SCard --> SFooter
|
|
37
80
|
SDrawer --> SFooter
|
|
38
81
|
SPopup --> SFooter
|
|
82
|
+
SSectionHeaderCard --> SFooter
|
|
39
83
|
style SFooter fill:#f9f,stroke:#333,stroke-width:4px
|
|
40
84
|
```
|
|
@@ -1,21 +1,36 @@
|
|
|
1
1
|
import { type CSSProperties, type ReactNode } from 'react';
|
|
2
|
-
import { type
|
|
2
|
+
import { type SButtonProps } from '../SButton';
|
|
3
3
|
export type SFooterBg = 'white' | 'grey';
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
4
|
+
/**
|
|
5
|
+
* footer ํฌ๊ธฐ. ๋ฒํผ ํฌ๊ธฐ๊ฐ ์ฌ๊ธฐ์ ๋ธ๋ ค ์จ๋ค โ `md` ๋ `SButton size="md"`, `sm` ์ `"sm"`.
|
|
6
|
+
*
|
|
7
|
+
* ๋ฒํผ ํฌ๊ธฐ๋ฅผ ๋ฐ๋ก ๋ฐ์ง ์๊ณ footer ์์ฒด๋ฅผ ๋ถ๊ธฐํ๋ ์ด์ : ํฌ๊ธฐ๋ฅผ ์ ํ๋ ๊ฒ์ ๋ฒํผ์ด ์๋๋ผ
|
|
8
|
+
* **๋ฒํผ์ด ๋์ธ ์๋ฆฌ**์ด๊ธฐ ๋๋ฌธ์ด๋ค (AGENTS.md ยง3-5-2). ์ข์ธก ์ฌ๋กฏ ๋ฒํผ๊น์ง ํ ๋ฒ๋ก ๋ง์ถฐ์ผ
|
|
9
|
+
* ํ๋๋ฐ, ์ฐ์ธก ๋ฒํผ๋ง ํฌ๊ธฐ๋ฅผ ๋ฐ์ผ๋ฉด ์ข์ฐ๊ฐ ์ด๊ธ๋ footer ๋ฅผ ๋ง๋ค ๊ธธ์ด ์ด๋ฆฐ๋ค.
|
|
10
|
+
*/
|
|
11
|
+
export type SFooterSize = 'sm' | 'md';
|
|
12
|
+
/**
|
|
13
|
+
* footer ์ฐ์ธก ๊ธฐ๋ณธ ์ก์
๋ฒํผ ์ค์ โ `SButton` ์ prop ์ ๊ทธ๋๋ก ๋ฐ๋๋ค.
|
|
14
|
+
*
|
|
15
|
+
* ๊ณจ๋ผ ๋ด์ ๋ถ๋ถ์งํฉ์ผ๋ก ๋์ง ์๋ ์ด์ : `SButton` ์ prop ์ด ๋ ๋๋ง๋ค ์ด ๋ชฉ๋ก๋ง ์กฐ์ฉํ
|
|
16
|
+
* ๋ค์ฒ์ ธ, ์์ด์ฝ ํ๋ ๋ถ์ด๋ ค ํด๋ footer ์์๋ ๊ธธ์ด ์๋ ์ํ๊ฐ ๋๋ค.
|
|
17
|
+
*
|
|
18
|
+
* **`size` ๋ง ๋บ๋ค.** ๋ฒํผ ํฌ๊ธฐ๋ ๋์ด๋ ์์น๊ฐ ์ ํ๋ฏ๋ก footer ์ `size` ๊ฐ ์ ํ๋ค
|
|
19
|
+
* (AGENTS.md ยง3-5-2) โ ๋ฒํผ์ด ์๊ธฐ ํฌ๊ธฐ๋ฅผ ๋ฐ๋ก ์ฃผ์ฅํ ์๋ฆฌ๊ฐ ์๋๋ค.
|
|
20
|
+
*
|
|
21
|
+
* `label`ยท`color` ๋ ์ฃผ์ง ์์ผ๋ฉด footer ๊ฐ ์ฃผ ์ก์
๊ธฐ๋ณธ๊ฐ(`'ํ์ธ'`ยท`'primary'`)์ผ๋ก ์ก๋๋ค.
|
|
22
|
+
* ํ๊ดด์ ์ก์
์ด๋ผ `danger` ๊ฐ ํ์ํ ๊ฒฝ์ฐ๋ ์ด์ด ๋๋ค (ยง3-5-3).
|
|
23
|
+
*/
|
|
24
|
+
export type SFooterButton = Omit<SButtonProps, 'size'>;
|
|
12
25
|
/**
|
|
13
26
|
* @internal
|
|
14
|
-
*
|
|
27
|
+
* ๋ชจ๋ฌยท๋๋ก์ดยทํ์
ยท์นด๋ ํ๋จ ์์ญ ๊ณตํต props.
|
|
15
28
|
*/
|
|
16
29
|
export interface SFooterProps {
|
|
17
30
|
/** ๋ฐฐ๊ฒฝ์ */
|
|
18
31
|
bg?: SFooterBg;
|
|
32
|
+
/** ํฌ๊ธฐ. ๊ธฐ๋ณธ์ `md` โ ์ค๋ฒ๋ ์ด ํ๋จ ์ก์
์์ญ์ ํฌ๊ธฐ๋ค */
|
|
33
|
+
size?: SFooterSize;
|
|
19
34
|
/** footer ์ข์ธก slot */
|
|
20
35
|
left?: ReactNode;
|
|
21
36
|
/** footer ์ข์ธก slot. left์ ํจ๊ป ์ฐ๋ฉด left ๋ค์ ๋ ๋๋๋ค */
|
|
@@ -27,10 +42,11 @@ export interface SFooterProps {
|
|
|
27
42
|
style?: CSSProperties;
|
|
28
43
|
}
|
|
29
44
|
/**
|
|
30
|
-
* SFooter โ
|
|
45
|
+
* SFooter โ ์ค๋ฒ๋ ์ดยท์นด๋ ๋ด๋ถ ์ ์ฉ footer.
|
|
31
46
|
*
|
|
32
47
|
* @internal
|
|
33
|
-
* SActionModal/SConfirmModal/SDrawer/SPopup ์ ํ๋จ ์ก์
์์ญ๋ง
|
|
48
|
+
* SActionModal/SConfirmModal/SDrawer/SPopup ๊ณผ SCard/SSectionHeaderCard ์ ํ๋จ ์ก์
์์ญ๋ง
|
|
49
|
+
* ๊ณตํตํํ๋ค. ์๋น์๋ ํธ์คํธ ์ปดํฌ๋ํธ์ `footerLeft`ยท`button` prop ์ผ๋ก๋ง ๋ฟ๋๋ค โ
|
|
34
50
|
* ํจํค์ง public export ์ ์ถ๊ฐํ์ง ๋ง ๊ฒ.
|
|
35
51
|
*/
|
|
36
|
-
export declare function SFooter({ bg, left, button, children, className, leftClassName, style, }: SFooterProps): import("react").JSX.Element;
|
|
52
|
+
export declare function SFooter({ bg, size, left, button, children, className, leftClassName, style, }: SFooterProps): import("react").JSX.Element;
|