@sellmate/design-system 1.20.1 → 1.21.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/cjs/design-system.cjs.js +1 -1
- package/dist/cjs/{index-DXm0PH2A.js → index-C-F-JEv_.js} +1 -1
- package/dist/cjs/loader.cjs.js +1 -1
- package/dist/cjs/sd-action-modal.cjs.entry.js +8 -2
- package/dist/cjs/sd-badge.cjs.entry.js +3 -2
- package/dist/cjs/sd-barcode-input.cjs.entry.js +35 -2
- package/dist/cjs/sd-button_2.cjs.entry.js +12 -3
- package/dist/cjs/sd-calendar_2.cjs.entry.js +17 -6
- package/dist/cjs/sd-callout.cjs.entry.js +4 -2
- package/dist/cjs/sd-card.cjs.entry.js +4 -2
- package/dist/cjs/sd-checkbox.cjs.entry.js +21 -12
- package/dist/cjs/sd-chip-input.cjs.entry.js +38 -4
- package/dist/cjs/sd-chip.cjs.entry.js +19 -2
- package/dist/cjs/sd-circle-progress.cjs.entry.js +6 -2
- package/dist/cjs/sd-confirm-modal_2.cjs.entry.js +27 -4
- package/dist/cjs/sd-date-box.cjs.entry.js +13 -3
- package/dist/cjs/sd-date-picker_7.cjs.entry.js +209 -13
- package/dist/cjs/sd-date-range-picker-calendar.cjs.entry.js +7 -2
- package/dist/cjs/sd-divider.cjs.entry.js +1 -1
- package/dist/cjs/sd-dropdown-button.cjs.entry.js +11 -1
- package/dist/cjs/sd-field_3.cjs.entry.js +70 -12
- package/dist/cjs/sd-form.cjs.entry.js +10 -2
- package/dist/cjs/sd-ghost-button_3.cjs.entry.js +54 -15
- package/dist/cjs/sd-guide.cjs.entry.js +9 -3
- package/dist/cjs/sd-key-value-table.cjs.entry.js +3 -1
- package/dist/cjs/sd-linear-progress.cjs.entry.js +7 -4
- package/dist/cjs/sd-loading-container.cjs.entry.js +5 -3
- package/dist/cjs/sd-modal-container.cjs.entry.js +7 -1
- package/dist/cjs/sd-pagination_4.cjs.entry.js +38 -9
- package/dist/cjs/sd-popover.cjs.entry.js +21 -5
- package/dist/cjs/sd-popup.cjs.entry.js +7 -3
- package/dist/cjs/sd-radio-button.cjs.entry.js +8 -2
- package/dist/cjs/sd-radio.cjs.entry.js +7 -2
- package/dist/cjs/sd-select-list-item_2.cjs.entry.js +18 -7
- package/dist/cjs/sd-select_3.cjs.entry.js +56 -9
- package/dist/cjs/sd-switch.cjs.entry.js +6 -2
- package/dist/cjs/sd-table.cjs.entry.js +42 -7
- package/dist/cjs/sd-tabs.cjs.entry.js +8 -2
- package/dist/cjs/sd-td.cjs.entry.js +11 -2
- package/dist/cjs/sd-text-link.cjs.entry.js +13 -4
- package/dist/cjs/sd-toast-container.cjs.entry.js +11 -2
- package/dist/cjs/sd-toast.cjs.entry.js +12 -3
- package/dist/cjs/sd-toggle.cjs.entry.js +6 -2
- package/dist/cjs/{tooltipArrow-D3P3JC08.js → tooltipArrow-26hYtSrD.js} +1 -1
- package/dist/collection/components/sd-action-modal/sd-action-modal.js +13 -7
- package/dist/collection/components/sd-badge/sd-badge.js +3 -2
- package/dist/collection/components/sd-barcode-input/sd-barcode-input.js +67 -34
- package/dist/collection/components/sd-button/sd-button.js +18 -10
- package/dist/collection/components/sd-calendar/sd-calendar.js +15 -9
- package/dist/collection/components/sd-callout/sd-callout.js +5 -3
- package/dist/collection/components/sd-card/sd-card.js +5 -3
- package/dist/collection/components/sd-checkbox/sd-checkbox.config.js +5 -3
- package/dist/collection/components/sd-checkbox/sd-checkbox.css +16 -0
- package/dist/collection/components/sd-checkbox/sd-checkbox.js +5 -3
- package/dist/collection/components/sd-chip/sd-chip.js +35 -18
- package/dist/collection/components/sd-chip-input/sd-chip-input.css +1 -0
- package/dist/collection/components/sd-chip-input/sd-chip-input.js +69 -35
- package/dist/collection/components/sd-circle-progress/sd-circle-progress.js +9 -5
- package/dist/collection/components/sd-confirm-modal/sd-confirm-modal.js +32 -17
- package/dist/collection/components/sd-date-box/sd-date-box.js +22 -12
- package/dist/collection/components/sd-date-picker/sd-date-picker-trigger/sd-date-picker-trigger.js +12 -7
- package/dist/collection/components/sd-date-picker/sd-date-picker.js +48 -25
- package/dist/collection/components/sd-date-range-picker/sd-date-range-picker-calendar/sd-date-range-picker-calendar.js +11 -6
- package/dist/collection/components/sd-date-range-picker/sd-date-range-picker.js +50 -26
- package/dist/collection/components/sd-dropdown-button/sd-dropdown-button.js +20 -10
- package/dist/collection/components/sd-field/sd-field.js +51 -28
- package/dist/collection/components/sd-file-picker/sd-file-picker.js +60 -30
- package/dist/collection/components/sd-floating-portal/sd-floating-portal.js +32 -11
- package/dist/collection/components/sd-form/sd-form.js +17 -9
- package/dist/collection/components/sd-ghost-button/sd-ghost-button.js +28 -13
- package/dist/collection/components/sd-guide/sd-guide.js +14 -8
- package/dist/collection/components/sd-icon/sd-icon.js +2 -1
- package/dist/collection/components/sd-input/sd-input.js +82 -42
- package/dist/collection/components/sd-key-value-table/sd-key-value-table.js +4 -2
- package/dist/collection/components/sd-linear-progress/sd-linear-progress.js +10 -7
- package/dist/collection/components/sd-loading-container/sd-loading-container.js +6 -4
- package/dist/collection/components/sd-loading-modal/sd-loading-modal.js +17 -9
- package/dist/collection/components/sd-modal-container/sd-modal-container.js +12 -6
- package/dist/collection/components/sd-number-input/sd-number-input.js +82 -43
- package/dist/collection/components/sd-pagination/sd-pagination.js +11 -7
- package/dist/collection/components/sd-popover/sd-popover.js +35 -19
- package/dist/collection/components/sd-popup/sd-popup.js +11 -7
- package/dist/collection/components/sd-portal/sd-portal.js +35 -14
- package/dist/collection/components/sd-radio/sd-radio.js +11 -6
- package/dist/collection/components/sd-radio-button/sd-radio-button.js +13 -7
- package/dist/collection/components/sd-radio-group/sd-radio-group.js +13 -7
- package/dist/collection/components/sd-select/sd-select-list-item/sd-select-list-item.js +16 -9
- package/dist/collection/components/sd-select/sd-select-list-item-search/sd-select-list-item-search.js +12 -8
- package/dist/collection/components/sd-select/sd-select-listbox/sd-select-listbox.js +22 -12
- package/dist/collection/components/sd-select/sd-select-trigger/sd-select-trigger.js +18 -10
- package/dist/collection/components/sd-select/sd-select.js +62 -33
- package/dist/collection/components/sd-switch/sd-switch.js +9 -5
- package/dist/collection/components/sd-table/sd-table.js +76 -41
- package/dist/collection/components/sd-table/sd-tbody/sd-tbody.js +4 -3
- package/dist/collection/components/sd-table/sd-td/sd-td.js +19 -10
- package/dist/collection/components/sd-table/sd-thead/sd-thead.js +29 -16
- package/dist/collection/components/sd-table/sd-tr/sd-tr.js +22 -11
- package/dist/collection/components/sd-tabs/sd-tabs.js +13 -7
- package/dist/collection/components/sd-tag/sd-tag.js +10 -7
- package/dist/collection/components/sd-text-link/sd-text-link.js +21 -12
- package/dist/collection/components/sd-textarea/sd-textarea.js +69 -35
- package/dist/collection/components/sd-toast/sd-toast.js +20 -11
- package/dist/collection/components/sd-toast-container/sd-toast-container.js +19 -10
- package/dist/collection/components/sd-toggle/sd-toggle.js +9 -5
- package/dist/collection/components/sd-tooltip/sd-tooltip.js +30 -16
- package/dist/components/index.js +1 -1
- package/dist/components/{p-D99vy8Ip.js → p-4MIzxb0h.js} +1 -1
- package/dist/components/{p-CQozoo2-.js → p-B-Igud6n.js} +1 -1
- package/dist/components/{p-CoqA9KgU.js → p-B5VNSTAf.js} +1 -1
- package/dist/components/{p-DertIGhs.js → p-B76pFg6k.js} +1 -1
- package/dist/components/{p-MJG6EZeP.js → p-BFlmHQm9.js} +1 -1
- package/dist/components/{p-Rwc_ltPn.js → p-BIHVGo10.js} +1 -1
- package/dist/components/{p-uSEbiD29.js → p-BQQC-6k4.js} +1 -1
- package/dist/{design-system/p-L_He_WSA.js → components/p-BRmilX-4.js} +1 -1
- package/dist/components/{p-CZfsknba.js → p-BVlg0BoC.js} +1 -1
- package/dist/components/{p-CRwvv7YM.js → p-BjSMh85k.js} +1 -1
- package/dist/components/{p-gOIeNT-Z.js → p-BrHnpCXR.js} +1 -1
- package/dist/components/{p-Bz93hWXV.js → p-Btj50AUe.js} +1 -1
- package/dist/components/{p-CLlAhEDc.js → p-BzsHwLh6.js} +1 -1
- package/dist/components/{p-9Z-q6kKD.js → p-C1QezE7u.js} +1 -1
- package/dist/components/{p-Dl89_4C3.js → p-C3mTIE8H.js} +1 -1
- package/dist/components/{p-CTPImLDQ.js → p-CBDBmMmw.js} +1 -1
- package/dist/components/p-CCCwPJ5p.js +1 -0
- package/dist/components/p-CEKu7cxA.js +1 -0
- package/dist/components/{p-5imde6N9.js → p-CTw1Deo8.js} +1 -1
- package/dist/components/p-CTxZT3Je.js +1 -0
- package/dist/components/{p-CB2A3pJ5.js → p-CZYTZeMe.js} +1 -1
- package/dist/components/{p-BZfVV3gu.js → p-CcwzTAJC.js} +1 -1
- package/dist/components/p-Cj_1bYZF.js +1 -0
- package/dist/components/{p-B5bya7Gp.js → p-Cugxp5lo.js} +1 -1
- package/dist/components/{p-CUR9smP5.js → p-D4zy1T3V.js} +1 -1
- package/dist/components/{p-BjcGzaFR.js → p-DC5W8Uy1.js} +1 -1
- package/dist/components/{p-DDAA-zcg.js → p-DIc8C633.js} +1 -1
- package/dist/components/{p-DIlNesBH.js → p-DJY7lCe4.js} +1 -1
- package/dist/components/{p-CrT06Uwc.js → p-DPXOBYhf.js} +1 -1
- package/dist/components/{p-BiBLp9_a.js → p-DU0IkIvI.js} +1 -1
- package/dist/components/{p-DZTxHJlP.js → p-DZikCqcw.js} +1 -1
- package/dist/components/{p-DNnI3Nru.js → p-Dz7VXmIA.js} +1 -1
- package/dist/components/p-FA9fGvbL.js +1 -0
- package/dist/components/p-S2-XqY2R.js +1 -0
- package/dist/components/{p-ZvI5A-_t.js → p-YpyfqzoP.js} +1 -1
- package/dist/components/{p-CJ69QmR3.js → p-l7TaS8q9.js} +1 -1
- package/dist/components/{p-FTvXz0-a.js → p-s_75vJTu.js} +1 -1
- package/dist/components/sd-action-modal.js +1 -1
- package/dist/components/sd-badge.js +1 -1
- package/dist/components/sd-barcode-input.js +1 -1
- package/dist/components/sd-button.js +1 -1
- package/dist/components/sd-calendar.js +1 -1
- package/dist/components/sd-callout.js +1 -1
- package/dist/components/sd-card.js +1 -1
- package/dist/components/sd-checkbox.js +1 -1
- package/dist/components/sd-chip-input.js +1 -1
- package/dist/components/sd-chip.js +1 -1
- package/dist/components/sd-circle-progress.js +1 -1
- package/dist/components/sd-confirm-modal.js +1 -1
- package/dist/components/sd-date-box.js +1 -1
- package/dist/components/sd-date-picker-trigger.js +1 -1
- package/dist/components/sd-date-picker.js +1 -1
- package/dist/components/sd-date-range-picker-calendar.js +1 -1
- package/dist/components/sd-date-range-picker.js +1 -1
- package/dist/components/sd-divider.js +1 -1
- package/dist/components/sd-dropdown-button.js +1 -1
- package/dist/components/sd-field.js +1 -1
- package/dist/components/sd-file-picker.js +1 -1
- package/dist/components/sd-floating-portal.js +1 -1
- package/dist/components/sd-form.js +1 -1
- package/dist/components/sd-ghost-button.js +1 -1
- package/dist/components/sd-guide.js +1 -1
- package/dist/components/sd-icon.js +1 -1
- package/dist/components/sd-input.js +1 -1
- package/dist/components/sd-key-value-table.js +1 -1
- package/dist/components/sd-linear-progress.js +1 -1
- package/dist/components/sd-loading-container.js +1 -1
- package/dist/components/sd-loading-modal.js +1 -1
- package/dist/components/sd-modal-container.js +1 -1
- package/dist/components/sd-number-input.js +1 -1
- package/dist/components/sd-pagination.js +1 -1
- package/dist/components/sd-popover.js +1 -1
- package/dist/components/sd-popup.js +1 -1
- package/dist/components/sd-portal.js +1 -1
- package/dist/components/sd-radio-button.js +1 -1
- package/dist/components/sd-radio-group.js +1 -1
- package/dist/components/sd-radio.js +1 -1
- package/dist/components/sd-select-list-item-search.js +1 -1
- package/dist/components/sd-select-list-item.js +1 -1
- package/dist/components/sd-select-listbox.js +1 -1
- package/dist/components/sd-select-trigger.js +1 -1
- package/dist/components/sd-select.js +1 -1
- package/dist/components/sd-switch.js +1 -1
- package/dist/components/sd-table.js +1 -1
- package/dist/components/sd-tabs.js +1 -1
- package/dist/components/sd-tag.js +1 -1
- package/dist/components/sd-tbody.js +1 -1
- package/dist/components/sd-td.js +1 -1
- package/dist/components/sd-text-link.js +1 -1
- package/dist/components/sd-textarea.js +1 -1
- package/dist/components/sd-thead.js +1 -1
- package/dist/components/sd-toast-container.js +1 -1
- package/dist/components/sd-toast.js +1 -1
- package/dist/components/sd-toggle.js +1 -1
- package/dist/components/sd-tooltip.js +1 -1
- package/dist/components/sd-tr.js +1 -1
- package/dist/design-system/design-system.css +1 -1
- package/dist/design-system/design-system.esm.js +1 -1
- package/dist/design-system/p-0f35cd21.entry.js +1 -0
- package/dist/design-system/{p-e9d1dbb5.entry.js → p-274dbc65.entry.js} +1 -1
- package/dist/design-system/{p-b291baab.entry.js → p-2ba0b35a.entry.js} +1 -1
- package/dist/design-system/{p-52f551a1.entry.js → p-2ca4902b.entry.js} +1 -1
- package/dist/design-system/p-2df32f8c.entry.js +1 -0
- package/dist/design-system/{p-cb80327c.entry.js → p-35da166a.entry.js} +1 -1
- package/dist/design-system/p-35e1e2fa.entry.js +1 -0
- package/dist/design-system/{p-6ce68bf2.entry.js → p-4bc0ce52.entry.js} +1 -1
- package/dist/design-system/p-4c1559c8.entry.js +1 -0
- package/dist/design-system/{p-9c38ee79.entry.js → p-4e44b45b.entry.js} +1 -1
- package/dist/design-system/{p-da4e2674.entry.js → p-4eeca0cb.entry.js} +1 -1
- package/dist/design-system/{p-646a7830.entry.js → p-4f69fde0.entry.js} +1 -1
- package/dist/design-system/{p-ccf1a3fc.entry.js → p-50b5cf37.entry.js} +1 -1
- package/dist/design-system/p-52e88677.entry.js +1 -0
- package/dist/design-system/{p-4acfc5f9.entry.js → p-552acf98.entry.js} +1 -1
- package/dist/design-system/{p-23006577.entry.js → p-563a8242.entry.js} +1 -1
- package/dist/design-system/{p-e3990243.entry.js → p-68687503.entry.js} +1 -1
- package/dist/design-system/{p-1f3c1cca.entry.js → p-6d8a4a23.entry.js} +1 -1
- package/dist/design-system/{p-d5032f31.entry.js → p-7c507d39.entry.js} +1 -1
- package/dist/design-system/{p-717eba5f.entry.js → p-88926a42.entry.js} +1 -1
- package/dist/design-system/{p-35d390f1.entry.js → p-90436be8.entry.js} +1 -1
- package/dist/design-system/{p-9289eb14.entry.js → p-99f33027.entry.js} +1 -1
- package/dist/design-system/{p-c47198fc.entry.js → p-9a010c12.entry.js} +1 -1
- package/dist/design-system/{p-54853a2b.entry.js → p-9dc0c2f9.entry.js} +1 -1
- package/dist/{components/p-Bg9XySrz.js → design-system/p-C7HJ-NfO.js} +2 -1
- package/dist/{components/p-0VCXAYrh.js → design-system/p-DUyBmuH_.js} +1 -1
- package/dist/design-system/{p-d5c3bac9.entry.js → p-a71a8b31.entry.js} +1 -1
- package/dist/design-system/{p-a4331364.entry.js → p-a80cc067.entry.js} +1 -1
- package/dist/design-system/{p-ae344950.entry.js → p-abcc9367.entry.js} +1 -1
- package/dist/design-system/p-ac81b46e.entry.js +1 -0
- package/dist/design-system/{p-08343698.entry.js → p-b881bbb6.entry.js} +1 -1
- package/dist/design-system/{p-2151e081.entry.js → p-bfba449b.entry.js} +1 -1
- package/dist/design-system/p-c684cd96.entry.js +1 -0
- package/dist/design-system/{p-b63b8df9.entry.js → p-c93c623f.entry.js} +1 -1
- package/dist/design-system/{p-98e0b332.entry.js → p-ccc85130.entry.js} +1 -1
- package/dist/design-system/{p-aa1c6202.entry.js → p-ce5df7ef.entry.js} +1 -1
- package/dist/design-system/{p-adfddf3b.entry.js → p-ce83eca1.entry.js} +1 -1
- package/dist/design-system/{p-7ed8c8f1.entry.js → p-d5b535ad.entry.js} +1 -1
- package/dist/design-system/{p-df7c721d.entry.js → p-e310f188.entry.js} +1 -1
- package/dist/design-system/{p-bdb7492c.entry.js → p-fc65bbe2.entry.js} +1 -1
- package/dist/design-system/{p-17dcf0e4.entry.js → p-fe5b8eaa.entry.js} +1 -1
- package/dist/design-system/{p-a5a586da.entry.js → p-ff726fad.entry.js} +1 -1
- package/dist/esm/design-system.js +2 -2
- package/dist/esm/{index-CAxodB5I.js → index-C7HJ-NfO.js} +1 -1
- package/dist/esm/loader.js +2 -2
- package/dist/esm/sd-action-modal.entry.js +8 -2
- package/dist/esm/sd-badge.entry.js +3 -2
- package/dist/esm/sd-barcode-input.entry.js +35 -2
- package/dist/esm/sd-button_2.entry.js +12 -3
- package/dist/esm/sd-calendar_2.entry.js +17 -6
- package/dist/esm/sd-callout.entry.js +4 -2
- package/dist/esm/sd-card.entry.js +4 -2
- package/dist/esm/sd-checkbox.entry.js +21 -12
- package/dist/esm/sd-chip-input.entry.js +38 -4
- package/dist/esm/sd-chip.entry.js +19 -2
- package/dist/esm/sd-circle-progress.entry.js +6 -2
- package/dist/esm/sd-confirm-modal_2.entry.js +27 -4
- package/dist/esm/sd-date-box.entry.js +13 -3
- package/dist/esm/sd-date-picker_7.entry.js +209 -13
- package/dist/esm/sd-date-range-picker-calendar.entry.js +7 -2
- package/dist/esm/sd-divider.entry.js +1 -1
- package/dist/esm/sd-dropdown-button.entry.js +11 -1
- package/dist/esm/sd-field_3.entry.js +70 -12
- package/dist/esm/sd-form.entry.js +10 -2
- package/dist/esm/sd-ghost-button_3.entry.js +54 -15
- package/dist/esm/sd-guide.entry.js +9 -3
- package/dist/esm/sd-key-value-table.entry.js +3 -1
- package/dist/esm/sd-linear-progress.entry.js +7 -4
- package/dist/esm/sd-loading-container.entry.js +5 -3
- package/dist/esm/sd-modal-container.entry.js +7 -1
- package/dist/esm/sd-pagination_4.entry.js +38 -9
- package/dist/esm/sd-popover.entry.js +21 -5
- package/dist/esm/sd-popup.entry.js +7 -3
- package/dist/esm/sd-radio-button.entry.js +8 -2
- package/dist/esm/sd-radio.entry.js +7 -2
- package/dist/esm/sd-select-list-item_2.entry.js +18 -7
- package/dist/esm/sd-select_3.entry.js +56 -9
- package/dist/esm/sd-switch.entry.js +6 -2
- package/dist/esm/sd-table.entry.js +42 -7
- package/dist/esm/sd-tabs.entry.js +8 -2
- package/dist/esm/sd-td.entry.js +11 -2
- package/dist/esm/sd-text-link.entry.js +13 -4
- package/dist/esm/sd-toast-container.entry.js +11 -2
- package/dist/esm/sd-toast.entry.js +12 -3
- package/dist/esm/sd-toggle.entry.js +6 -2
- package/dist/esm/{tooltipArrow-DLr6VvUK.js → tooltipArrow-Bgf3crs7.js} +1 -1
- package/dist/types/components/sd-action-modal/sd-action-modal.d.ts +6 -0
- package/dist/types/components/sd-badge/sd-badge.d.ts +1 -0
- package/dist/types/components/sd-barcode-input/sd-barcode-input.d.ts +33 -0
- package/dist/types/components/sd-button/sd-button.d.ts +8 -0
- package/dist/types/components/sd-calendar/sd-calendar.d.ts +6 -0
- package/dist/types/components/sd-callout/sd-callout.d.ts +2 -0
- package/dist/types/components/sd-card/sd-card.d.ts +2 -0
- package/dist/types/components/sd-checkbox/sd-checkbox.config.d.ts +2 -0
- package/dist/types/components/sd-chip/sd-chip.d.ts +17 -0
- package/dist/types/components/sd-chip-input/sd-chip-input.d.ts +33 -0
- package/dist/types/components/sd-circle-progress/sd-circle-progress.d.ts +4 -0
- package/dist/types/components/sd-confirm-modal/sd-confirm-modal.d.ts +15 -0
- package/dist/types/components/sd-date-box/sd-date-box.d.ts +10 -0
- package/dist/types/components/sd-date-picker/sd-date-picker-trigger/sd-date-picker-trigger.d.ts +5 -0
- package/dist/types/components/sd-date-picker/sd-date-picker.d.ts +23 -0
- package/dist/types/components/sd-date-range-picker/sd-date-range-picker-calendar/sd-date-range-picker-calendar.d.ts +5 -0
- package/dist/types/components/sd-date-range-picker/sd-date-range-picker.d.ts +24 -0
- package/dist/types/components/sd-dropdown-button/sd-dropdown-button.d.ts +10 -0
- package/dist/types/components/sd-field/sd-field.d.ts +23 -0
- package/dist/types/components/sd-file-picker/sd-file-picker.d.ts +30 -0
- package/dist/types/components/sd-floating-portal/sd-floating-portal.d.ts +12 -0
- package/dist/types/components/sd-form/sd-form.d.ts +8 -0
- package/dist/types/components/sd-ghost-button/sd-ghost-button.d.ts +7 -0
- package/dist/types/components/sd-guide/sd-guide.d.ts +6 -0
- package/dist/types/components/sd-icon/sd-icon.d.ts +1 -0
- package/dist/types/components/sd-input/sd-input.d.ts +40 -0
- package/dist/types/components/sd-key-value-table/sd-key-value-table.d.ts +2 -0
- package/dist/types/components/sd-linear-progress/sd-linear-progress.d.ts +4 -0
- package/dist/types/components/sd-loading-container/sd-loading-container.d.ts +2 -0
- package/dist/types/components/sd-loading-modal/sd-loading-modal.d.ts +8 -0
- package/dist/types/components/sd-modal-container/sd-modal-container.d.ts +6 -0
- package/dist/types/components/sd-number-input/sd-number-input.d.ts +39 -0
- package/dist/types/components/sd-pagination/sd-pagination.d.ts +4 -0
- package/dist/types/components/sd-popover/sd-popover.d.ts +16 -0
- package/dist/types/components/sd-popup/sd-popup.d.ts +5 -0
- package/dist/types/components/sd-portal/sd-portal.d.ts +13 -0
- package/dist/types/components/sd-radio/sd-radio.d.ts +5 -0
- package/dist/types/components/sd-radio-button/sd-radio-button.d.ts +6 -0
- package/dist/types/components/sd-radio-group/sd-radio-group.d.ts +6 -0
- package/dist/types/components/sd-select/sd-select-list-item/sd-select-list-item.d.ts +7 -0
- package/dist/types/components/sd-select/sd-select-list-item-search/sd-select-list-item-search.d.ts +4 -0
- package/dist/types/components/sd-select/sd-select-listbox/sd-select-listbox.d.ts +10 -0
- package/dist/types/components/sd-select/sd-select-trigger/sd-select-trigger.d.ts +8 -0
- package/dist/types/components/sd-select/sd-select.d.ts +29 -0
- package/dist/types/components/sd-switch/sd-switch.d.ts +4 -0
- package/dist/types/components/sd-table/sd-table.d.ts +35 -0
- package/dist/types/components/sd-table/sd-tbody/sd-tbody.d.ts +1 -0
- package/dist/types/components/sd-table/sd-td/sd-td.d.ts +9 -0
- package/dist/types/components/sd-table/sd-thead/sd-thead.d.ts +13 -0
- package/dist/types/components/sd-table/sd-tr/sd-tr.d.ts +11 -0
- package/dist/types/components/sd-tabs/sd-tabs.d.ts +6 -0
- package/dist/types/components/sd-tag/sd-tag.d.ts +4 -0
- package/dist/types/components/sd-text-link/sd-text-link.d.ts +9 -0
- package/dist/types/components/sd-textarea/sd-textarea.d.ts +34 -0
- package/dist/types/components/sd-toast/sd-toast.d.ts +9 -0
- package/dist/types/components/sd-toast-container/sd-toast-container.d.ts +9 -0
- package/dist/types/components/sd-toggle/sd-toggle.d.ts +4 -0
- package/dist/types/components/sd-tooltip/sd-tooltip.d.ts +14 -0
- package/dist/types/components.d.ts +1827 -7
- package/hydrate/index.js +823 -124
- package/hydrate/index.mjs +823 -124
- package/package.json +1 -1
- package/dist/components/p-B7PHGGFH.js +0 -1
- package/dist/components/p-CXeOxSQ-.js +0 -1
- package/dist/components/p-CvSqieCH.js +0 -1
- package/dist/components/p-P2jWtk8J.js +0 -1
- package/dist/components/p-xkRWGISE.js +0 -1
- package/dist/design-system/p-316b8a08.entry.js +0 -1
- package/dist/design-system/p-5039241c.entry.js +0 -1
- package/dist/design-system/p-5eaa12af.entry.js +0 -1
- package/dist/design-system/p-CAxodB5I.js +0 -2
- package/dist/design-system/p-c995e6c3.entry.js +0 -1
- package/dist/design-system/p-eef6d4a3.entry.js +0 -1
- package/dist/design-system/p-faf7b64c.entry.js +0 -1
- package/dist/design-system/p-fd7abbfa.entry.js +0 -1
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
'use strict';
|
|
2
2
|
|
|
3
|
-
var index = require('./index-
|
|
3
|
+
var index = require('./index-C-F-JEv_.js');
|
|
4
4
|
var useDatePicker = require('./useDatePicker-iMd6WToc.js');
|
|
5
5
|
var component_datepicker = require('./component.datepicker-CUQbDSku.js');
|
|
6
6
|
|
|
@@ -31,15 +31,20 @@ const SdDateRangePickerCalendar = class {
|
|
|
31
31
|
this.select = index.createEvent(this, "sdSelect", 7);
|
|
32
32
|
this.viewChange = index.createEvent(this, "sdViewChange", 7);
|
|
33
33
|
}
|
|
34
|
+
/** 선택된 날짜 범위 [시작일, 종료일] */
|
|
34
35
|
value = null;
|
|
36
|
+
/** 선택 가능한 날짜 범위 제한 */
|
|
35
37
|
selectable;
|
|
38
|
+
/** 최대 선택 가능 일 수 */
|
|
36
39
|
maxRange;
|
|
37
40
|
currentYear;
|
|
38
41
|
currentMonth;
|
|
39
42
|
pendingStart = '';
|
|
40
43
|
hoverDate = '';
|
|
41
44
|
displayValue = null;
|
|
45
|
+
/** 날짜 범위 선택 시 발생합니다. */
|
|
42
46
|
select;
|
|
47
|
+
/** 달력 뷰가 변경될 때 발생합니다. */
|
|
43
48
|
viewChange;
|
|
44
49
|
dateUtil = useDatePicker.useDatePicker();
|
|
45
50
|
componentWillLoad() {
|
|
@@ -267,7 +272,7 @@ const SdDateRangePickerCalendar = class {
|
|
|
267
272
|
'--range-panel-gap': `${RANGE_LAYOUT.panelGap}px`,
|
|
268
273
|
'--range-divider': RANGE_LAYOUT.divider,
|
|
269
274
|
};
|
|
270
|
-
return (index.h(index.Fragment, { key: '
|
|
275
|
+
return (index.h(index.Fragment, { key: '351cf65dcf32acba409f32c5bfa0681989093f32' }, index.h("div", { key: '99f29a4e401d2ebaea0ebb55c2a4e55d55f23a7f', class: "sd-date-range-picker-calendar", style: cssVars }, this.renderYearNav(), index.h("div", { key: '251fe254a39d7093633be176c413608abd3c47c1', class: "sd-date-range-picker-calendar__panels" }, this.renderPanel(this.currentYear, this.currentMonth, true), index.h("span", { key: 'fb69fea401d17f3862b4a21162747161246c42e2', class: "sd-date-range-picker-calendar__divider", "aria-hidden": "true" }), this.renderPanel(this.rightYear, this.rightMonth, false)))));
|
|
271
276
|
}
|
|
272
277
|
static get watchers() { return {
|
|
273
278
|
"value": [{
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
'use strict';
|
|
2
2
|
|
|
3
|
-
var index = require('./index-
|
|
3
|
+
var index = require('./index-C-F-JEv_.js');
|
|
4
4
|
var sanitizeInlineHtml = require('./sanitize-inline-html-CRCAeQ46.js');
|
|
5
5
|
var sdButton_config = require('./sd-button.config-eTAJM2iW.js');
|
|
6
6
|
var system = require('./system-MjrAugX-.js');
|
|
@@ -168,10 +168,15 @@ const SdDropdownButton = class extends BaseDropdownEvent {
|
|
|
168
168
|
this.dropDownShow = index.createEvent(this, "sdDropDownShow", 7);
|
|
169
169
|
}
|
|
170
170
|
get el() { return index.getElement(this); }
|
|
171
|
+
/** 버튼 프리셋 이름 (크기와 색상 조합) */
|
|
171
172
|
name = 'primary_sm';
|
|
173
|
+
/** 버튼 레이블 */
|
|
172
174
|
label = '';
|
|
175
|
+
/** 드롭다운 메뉴 아이템 목록 */
|
|
173
176
|
items = [];
|
|
177
|
+
/** 비활성 상태 여부 */
|
|
174
178
|
disabled = false;
|
|
179
|
+
/** 레이블 버튼과 드롭다운 토글을 분리하는 split 모드 여부 */
|
|
175
180
|
split = false;
|
|
176
181
|
static CLOSE_ANIMATION_DURATION = 150;
|
|
177
182
|
isOpen = false;
|
|
@@ -181,8 +186,11 @@ const SdDropdownButton = class extends BaseDropdownEvent {
|
|
|
181
186
|
splitContainerRef;
|
|
182
187
|
menuRef;
|
|
183
188
|
closeAnimationTimer;
|
|
189
|
+
/** 메뉴 아이템 선택 시 해당 아이템의 value를 전달합니다. */
|
|
184
190
|
click;
|
|
191
|
+
/** split 모드에서 레이블 버튼 클릭 시 발생합니다. */
|
|
185
192
|
buttonClick;
|
|
193
|
+
/** 드롭다운 열림/닫힘 상태 변경 시 발생합니다. */
|
|
186
194
|
dropDownShow;
|
|
187
195
|
handleOpenChange(isOpen) {
|
|
188
196
|
this.onDropdownToggle(isOpen);
|
|
@@ -199,11 +207,13 @@ const SdDropdownButton = class extends BaseDropdownEvent {
|
|
|
199
207
|
if (this.closeAnimationTimer)
|
|
200
208
|
clearTimeout(this.closeAnimationTimer);
|
|
201
209
|
}
|
|
210
|
+
/** 드롭다운 메뉴를 엽니다. */
|
|
202
211
|
async sdOpen() {
|
|
203
212
|
if (this.disabled || this.items.length === 0)
|
|
204
213
|
return;
|
|
205
214
|
this.isOpen = true;
|
|
206
215
|
}
|
|
216
|
+
/** 드롭다운 메뉴를 닫습니다. */
|
|
207
217
|
async sdClose() {
|
|
208
218
|
this.closeDropdown();
|
|
209
219
|
}
|
|
@@ -1,8 +1,8 @@
|
|
|
1
1
|
'use strict';
|
|
2
2
|
|
|
3
|
-
var index = require('./index-
|
|
3
|
+
var index = require('./index-C-F-JEv_.js');
|
|
4
4
|
var component_field = require('./component.field-YIQ9TAhV.js');
|
|
5
|
-
var tooltipArrow = require('./tooltipArrow-
|
|
5
|
+
var tooltipArrow = require('./tooltipArrow-26hYtSrD.js');
|
|
6
6
|
|
|
7
7
|
const FIELD_ADDON_ALIGN_MAP = {
|
|
8
8
|
start: 'flex-start',
|
|
@@ -48,25 +48,44 @@ const SdField = class {
|
|
|
48
48
|
index.registerInstance(this, hostRef);
|
|
49
49
|
}
|
|
50
50
|
get el() { return index.getElement(this); }
|
|
51
|
+
/** 폼 연동용 name 속성 */
|
|
51
52
|
name = '';
|
|
53
|
+
/** 유효성 검사 규칙 목록 */
|
|
52
54
|
rules = [];
|
|
55
|
+
/** 에러 상태 여부 */
|
|
53
56
|
error = false;
|
|
57
|
+
/** 비활성 상태 여부 */
|
|
54
58
|
disabled = false;
|
|
59
|
+
/** 읽기 전용 여부 */
|
|
55
60
|
readonly = false;
|
|
61
|
+
/** 호버 상태 여부 */
|
|
56
62
|
hovered = false;
|
|
63
|
+
/** 포커스 상태 여부 */
|
|
57
64
|
focused = false;
|
|
65
|
+
/** 필드 상태 (없으면 rules 결과로 자동 결정) */
|
|
58
66
|
status;
|
|
67
|
+
/** 필드 하단 힌트 텍스트 */
|
|
59
68
|
hint = '';
|
|
69
|
+
/** 에러 메시지 */
|
|
60
70
|
errorMessage = '';
|
|
71
|
+
/** 필드 너비 (숫자면 px, 문자열이면 그대로 적용) */
|
|
61
72
|
width = '';
|
|
73
|
+
/** 필드 크기 */
|
|
62
74
|
size = 'sm';
|
|
63
75
|
// props - label
|
|
76
|
+
/** 레이블 텍스트 */
|
|
64
77
|
label = '';
|
|
78
|
+
/** 레이블 너비 */
|
|
65
79
|
labelWidth = '';
|
|
80
|
+
/** 필드 우측 어드온 레이블 */
|
|
66
81
|
addonLabel = '';
|
|
82
|
+
/** 어드온 정렬 방향 */
|
|
67
83
|
addonAlign = 'start';
|
|
84
|
+
/** 레이블 영역 아이콘 */
|
|
68
85
|
icon = undefined;
|
|
86
|
+
/** 레이블 툴팁 텍스트 */
|
|
69
87
|
labelTooltip = '';
|
|
88
|
+
/** 레이블 툴팁 상세 옵션 */
|
|
70
89
|
labelTooltipProps = null;
|
|
71
90
|
errorMsg = '';
|
|
72
91
|
hostElement = null;
|
|
@@ -131,6 +150,7 @@ const SdField = class {
|
|
|
131
150
|
form.sdUnregisterField(this);
|
|
132
151
|
});
|
|
133
152
|
}
|
|
153
|
+
/** 유효성 검사를 실행합니다. */
|
|
134
154
|
async sdValidate() {
|
|
135
155
|
if (!this.rules || this.rules.length === 0)
|
|
136
156
|
return true;
|
|
@@ -144,15 +164,18 @@ const SdField = class {
|
|
|
144
164
|
this.setError(false, '');
|
|
145
165
|
return true;
|
|
146
166
|
}
|
|
167
|
+
/** 필드 값과 유효성 상태를 초기화합니다. */
|
|
147
168
|
async sdReset() {
|
|
148
169
|
if (this.hostElement) {
|
|
149
170
|
this.hostElement.value = null;
|
|
150
171
|
}
|
|
151
172
|
this.setError(false, '');
|
|
152
173
|
}
|
|
174
|
+
/** 유효성 상태만 초기화합니다. */
|
|
153
175
|
async sdResetValidation() {
|
|
154
176
|
this.setError(false, '');
|
|
155
177
|
}
|
|
178
|
+
/** 필드에 포커스를 이동하고 스크롤합니다. */
|
|
156
179
|
async sdFocus() {
|
|
157
180
|
this.hostElement?.focus?.();
|
|
158
181
|
this.hostElement?.scrollIntoView({ behavior: 'smooth', block: 'center' });
|
|
@@ -216,21 +239,21 @@ const SdField = class {
|
|
|
216
239
|
: {}),
|
|
217
240
|
}
|
|
218
241
|
: {};
|
|
219
|
-
return (index.h("div", { key: '
|
|
242
|
+
return (index.h("div", { key: 'baf943d77385c9c02e2fe1d938f9622bd858129c', class: {
|
|
220
243
|
'sd-field': true,
|
|
221
244
|
'sd-field--has-label': this.label !== '',
|
|
222
245
|
'sd-field--has-addon': addon !== '',
|
|
223
246
|
[this.fieldStatus]: this.fieldStatus !== '',
|
|
224
|
-
}, style: { ...sizeCssVars, ...labelCssVars, ...addonCssVars, ...messageCssVars } }, index.h("div", { key: '
|
|
247
|
+
}, style: { ...sizeCssVars, ...labelCssVars, ...addonCssVars, ...messageCssVars } }, index.h("div", { key: 'f5f204929ef4a4e1a260d7609bc00d9a1fe998f4', class: "sd-field__wrapper" }, this.renderLabel(this.label), index.h("div", { key: 'eff02956e5aae08691b2850bb0d1978865a446f9', class: "sd-field__main", style: this.width !== '' && this.width !== 0
|
|
225
248
|
? {
|
|
226
249
|
width: typeof this.width === 'number' ? `${this.width}px` : this.width,
|
|
227
250
|
flex: 'none',
|
|
228
251
|
}
|
|
229
|
-
: {} }, index.h("div", { key: '
|
|
252
|
+
: {} }, index.h("div", { key: 'bf00b81dbb3d36a8a8ddf4919c9ec3383a1f3f14', class: {
|
|
230
253
|
'sd-field__control': true,
|
|
231
254
|
'sd-field__control--has-addon': addon !== '',
|
|
232
|
-
} }, addon && (index.h("div", { key: '
|
|
233
|
-
Number(FIELD_LABEL_SIZE_MAP[(this.size in FIELD_LABEL_SIZE_MAP ? this.size : 'sm')].icon), color: this.icon.color, rotate: this.icon.rotate })), addon)), index.h("slot", { key: '
|
|
255
|
+
} }, addon && (index.h("div", { key: '4cef1308de0b709d5924ff7a02ee5bd3b78c1502', class: "sd-field__addon" }, this.icon && (index.h("sd-icon", { key: '7fdfca555d80f5409082c43967224fd8108a6f29', name: this.icon.name, size: this.icon.size ??
|
|
256
|
+
Number(FIELD_LABEL_SIZE_MAP[(this.size in FIELD_LABEL_SIZE_MAP ? this.size : 'sm')].icon), color: this.icon.color, rotate: this.icon.rotate })), addon)), index.h("slot", { key: 'c523813390db6f6f4acce3ffb8377820ffb95fad' })), this.errorMsg !== '' || this.errorMessage !== '' ? (index.h("div", { class: "sd-field__error-message" }, this.errorMsg !== '' ? this.errorMsg : this.errorMessage)) : (this.hint !== '' && index.h("div", { class: "sd-field__hint" }, this.hint))))));
|
|
234
257
|
}
|
|
235
258
|
renderLabel(label) {
|
|
236
259
|
if (label == null || label === '')
|
|
@@ -249,12 +272,19 @@ const SdFloatingPopover = class {
|
|
|
249
272
|
this.close = index.createEvent(this, "sdClose", 7);
|
|
250
273
|
}
|
|
251
274
|
get el() { return index.getElement(this); }
|
|
275
|
+
/** 포탈 콘텐츠를 마운트할 대상 (CSS 선택자 또는 HTMLElement) */
|
|
252
276
|
to = 'body';
|
|
277
|
+
/** 위치 기준이 되는 부모 엘리먼트 */
|
|
253
278
|
parentRef = null;
|
|
279
|
+
/** [x, y] 오프셋 (px) */
|
|
254
280
|
offset = [0, 0];
|
|
255
|
-
|
|
281
|
+
/** z-index */
|
|
282
|
+
zIndex = 996;
|
|
283
|
+
/** 콘텐츠를 표시할 방향 */
|
|
256
284
|
placement = 'bottom';
|
|
285
|
+
/** 표시 여부 */
|
|
257
286
|
open = false;
|
|
287
|
+
/** 외부 클릭 등으로 닫힐 때 발생합니다. */
|
|
258
288
|
close;
|
|
259
289
|
container;
|
|
260
290
|
wrapper;
|
|
@@ -309,11 +339,25 @@ const SdFloatingPopover = class {
|
|
|
309
339
|
const el = typeof this.to === 'string' ? document.querySelector(this.to) : this.to;
|
|
310
340
|
return el instanceof HTMLElement ? el : document.body;
|
|
311
341
|
}
|
|
342
|
+
/**
|
|
343
|
+
* 트리거(parentRef)가 모달 내부에 있으면 해당 모달보다 위에, 아니면 페이지 기본값에 둔다.
|
|
344
|
+
* 페이지 기본값(996)은 모달(997)보다 낮아, 모달 뒤의 페이지 포털이 모달 위로 떠오르지 않는다.
|
|
345
|
+
*/
|
|
346
|
+
resolveZIndex() {
|
|
347
|
+
const base = this.zIndex ?? 996;
|
|
348
|
+
const layer = this.parentRef?.closest('.sd-modal-container__layer');
|
|
349
|
+
if (!layer)
|
|
350
|
+
return base;
|
|
351
|
+
const container = layer.closest('.sd-modal-container');
|
|
352
|
+
const z = container instanceof HTMLElement ? parseInt(getComputedStyle(container).zIndex, 10) : NaN;
|
|
353
|
+
const modalZIndex = Number.isFinite(z) ? z : 997;
|
|
354
|
+
return Math.max(base, modalZIndex + 1);
|
|
355
|
+
}
|
|
312
356
|
createWrapper() {
|
|
313
357
|
this.wrapper = document.createElement('div');
|
|
314
358
|
Object.assign(this.wrapper.style, {
|
|
315
359
|
position: 'fixed',
|
|
316
|
-
zIndex:
|
|
360
|
+
zIndex: this.resolveZIndex().toString(),
|
|
317
361
|
transition: 'opacity 0.4s',
|
|
318
362
|
top: '-9999px',
|
|
319
363
|
left: '-9999px',
|
|
@@ -400,7 +444,7 @@ const SdFloatingPopover = class {
|
|
|
400
444
|
}
|
|
401
445
|
}
|
|
402
446
|
render() {
|
|
403
|
-
return index.h("slot", { key: '
|
|
447
|
+
return index.h("slot", { key: 'ee2a502ac1c924abb9be9fae19b4450659515c15' });
|
|
404
448
|
}
|
|
405
449
|
};
|
|
406
450
|
SdFloatingPopover.style = sdFloatingPortalCss();
|
|
@@ -437,19 +481,33 @@ const SdTooltip = class {
|
|
|
437
481
|
index.registerInstance(this, hostRef);
|
|
438
482
|
}
|
|
439
483
|
get el() { return index.getElement(this); }
|
|
484
|
+
/** 툴팁 트리거 방식 */
|
|
440
485
|
trigger = 'hover';
|
|
486
|
+
/** 툴팁 표시 방향 */
|
|
441
487
|
placement = 'top';
|
|
488
|
+
/** 아이콘 트리거 색상 */
|
|
442
489
|
color = '#01BB4B';
|
|
490
|
+
/** 툴팁 배경/텍스트 색상 타입 */
|
|
443
491
|
tooltipType = 'default';
|
|
492
|
+
/** 아이콘 트리거 아이콘명 */
|
|
444
493
|
icon = 'helpOutline';
|
|
494
|
+
/** 아이콘 트리거 크기 */
|
|
445
495
|
iconSize = 12;
|
|
496
|
+
/** 버튼 트리거 레이블 (있으면 아이콘 대신 버튼 렌더링) */
|
|
446
497
|
label = '';
|
|
498
|
+
/** 버튼 트리거 프리셋 */
|
|
447
499
|
name = 'primary_sm';
|
|
500
|
+
/** 버튼 트리거 우측 아이콘 */
|
|
448
501
|
rightIcon;
|
|
502
|
+
/** 스크린리더용 접근성 레이블 */
|
|
449
503
|
ariaLabel = '';
|
|
504
|
+
/** 비활성 상태 여부 */
|
|
450
505
|
disabled = false;
|
|
506
|
+
/** 버튼 type 속성 */
|
|
451
507
|
type = 'button';
|
|
508
|
+
/** 툴팁 우측 상단 닫기 버튼 표시 여부 */
|
|
452
509
|
useClose = false;
|
|
510
|
+
/** 트리거 래퍼(.sd-tooltip-trigger)에 추가할 클래스 */
|
|
453
511
|
sdClass = '';
|
|
454
512
|
/**
|
|
455
513
|
* 툴팁 본문에 표시할 메시지. 각 항목이 한 줄로 innerHTML 렌더링됩니다.
|
|
@@ -562,7 +620,7 @@ const SdTooltip = class {
|
|
|
562
620
|
const bodyHTML = this.message && this.message.length > 0
|
|
563
621
|
? this.message.map(line => `<div>${line}</div>`).join('')
|
|
564
622
|
: this.slotContentHTML;
|
|
565
|
-
return (index.h(index.Fragment, { key: '
|
|
623
|
+
return (index.h(index.Fragment, { key: 'c5a5c69267ac8a7d7f06324a63b6410092b84f04' }, index.h("div", { key: 'f7323385e1b2e6ef4199c6318bdc55984182d3da', ref: el => (this.triggerEl = el), class: triggerClasses, ...divTrigger }, anchorMode ? (index.h("slot", { name: "anchor" })) : hasLabel ? (index.h("sd-button", { ref: el => (this.buttonEl = el), name: this.name ?? 'primary_sm', label: this.label, icon: icon, rightIcon: this.rightIcon, ariaLabel: this.ariaLabel, disabled: this.disabled, type: this.type ?? 'button', class: "sd-tooltip", ...buttonClickTrigger })) : (index.h("sd-icon", { ref: el => (this.buttonEl = el), name: icon, size: this.iconSize ?? 12, color: color, class: "sd-tooltip" }))), this.showTooltip && (index.h("sd-floating-portal", { key: '0ba07ee2a20862df43755264d9390b3229da57e6', parentRef: anchorMode ? this.triggerEl : this.buttonEl, onSdClose: this.handleClose, placement: placement, offset: this.tooltipOffset }, index.h("div", { key: 'f92217cb8cca4d1467cbeac7b36f9a00f28babd3', ref: el => (this.menuEl = el), class: {
|
|
566
624
|
'sd-floating-menu': true,
|
|
567
625
|
[`sd-floating-menu--${tooltipType}`]: true,
|
|
568
626
|
[`sd-floating-menu--${placement}`]: true,
|
|
@@ -570,7 +628,7 @@ const SdTooltip = class {
|
|
|
570
628
|
}, style: {
|
|
571
629
|
'--sd-floating-bg': typeConfig.bg,
|
|
572
630
|
'--sd-floating-content': typeConfig.content,
|
|
573
|
-
}, onMouseEnter: () => this.openTooltip(), onMouseLeave: () => !this.useClose && this.startHideTimer() }, index.h("i", { key: '
|
|
631
|
+
}, onMouseEnter: () => this.openTooltip(), onMouseLeave: () => !this.useClose && this.startHideTimer() }, index.h("i", { key: '6d7671dbac4fa026788f0804df4a97ca86c492c1', class: `sd-floating-menu__arrow sd-floating-menu__arrow--${placement}` }, index.h(tooltipArrow.TooltipArrow, { key: '31321fbfef392af0fa64111a32c3ecd6c6144d35' })), index.h("div", { key: '67e54a935c9f684d713ab943e7049737d5a8596a', class: "sd-floating-menu__content", innerHTML: bodyHTML }), this.useClose && (index.h("sd-ghost-button", { key: '355101a4efed88fbb687e1f972f88b6dfb4be309', class: "sd-floating-menu__close-button", icon: "close", ariaLabel: "close", size: "xxs", onClick: () => this.closeTooltip() })))))));
|
|
574
632
|
}
|
|
575
633
|
};
|
|
576
634
|
SdTooltip.style = sdTooltipCss();
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
'use strict';
|
|
2
2
|
|
|
3
|
-
var index = require('./index-
|
|
3
|
+
var index = require('./index-C-F-JEv_.js');
|
|
4
4
|
|
|
5
5
|
const SdForm = class {
|
|
6
6
|
constructor(hostRef) {
|
|
@@ -8,9 +8,12 @@ const SdForm = class {
|
|
|
8
8
|
this.sdSubmit = index.createEvent(this, "sdSubmit", 7);
|
|
9
9
|
this.sdValidationError = index.createEvent(this, "sdValidationError", 7);
|
|
10
10
|
}
|
|
11
|
+
/** form 엘리먼트에 추가할 클래스 */
|
|
11
12
|
formClass = '';
|
|
12
13
|
fields = [];
|
|
14
|
+
/** 유효성 검사 통과 후 submit 시 발생합니다. */
|
|
13
15
|
sdSubmit;
|
|
16
|
+
/** 유효성 검사 실패 시 실패한 필드 name 목록을 전달합니다. */
|
|
14
17
|
sdValidationError;
|
|
15
18
|
sortFieldsByDomOrder() {
|
|
16
19
|
this.fields.sort((a, b) => {
|
|
@@ -28,6 +31,7 @@ const SdForm = class {
|
|
|
28
31
|
return 0;
|
|
29
32
|
});
|
|
30
33
|
}
|
|
34
|
+
/** 폼에 필드를 등록합니다. */
|
|
31
35
|
async sdRegisterField(field) {
|
|
32
36
|
if (field.name === '') {
|
|
33
37
|
console.warn('[sd-form] field.name is required');
|
|
@@ -38,6 +42,7 @@ const SdForm = class {
|
|
|
38
42
|
this.fields.push(field);
|
|
39
43
|
this.sortFieldsByDomOrder();
|
|
40
44
|
}
|
|
45
|
+
/** 폼에서 필드를 제거합니다. */
|
|
41
46
|
async sdUnregisterField(fieldOrName) {
|
|
42
47
|
if (typeof fieldOrName === 'string') {
|
|
43
48
|
const index = this.fields.findIndex(field => field.name === fieldOrName);
|
|
@@ -58,13 +63,16 @@ const SdForm = class {
|
|
|
58
63
|
}
|
|
59
64
|
return { valid: invalidFields.length === 0, invalidFields };
|
|
60
65
|
}
|
|
66
|
+
/** 모든 등록된 필드의 유효성 검사를 실행합니다. */
|
|
61
67
|
async sdValidate() {
|
|
62
68
|
const { valid } = await this.runValidation();
|
|
63
69
|
return valid;
|
|
64
70
|
}
|
|
71
|
+
/** 모든 필드의 값과 유효성 상태를 초기화합니다. */
|
|
65
72
|
async sdReset() {
|
|
66
73
|
this.fields.forEach(f => f.sdReset());
|
|
67
74
|
}
|
|
75
|
+
/** 모든 필드의 유효성 상태만 초기화합니다. */
|
|
68
76
|
async sdResetValidation() {
|
|
69
77
|
this.fields.forEach(f => f.sdResetValidation());
|
|
70
78
|
}
|
|
@@ -78,7 +86,7 @@ const SdForm = class {
|
|
|
78
86
|
this.sdSubmit.emit();
|
|
79
87
|
}
|
|
80
88
|
render() {
|
|
81
|
-
return (index.h("form", { key: '
|
|
89
|
+
return (index.h("form", { key: 'f533f9dcf3a13e66d37644baa5217b90a67350a2', onSubmit: e => this.onSubmit(e), class: this.formClass }, index.h("slot", { key: '8a108703faeb2ed7d1e47a72b407b7a7fc88063d' })));
|
|
82
90
|
}
|
|
83
91
|
};
|
|
84
92
|
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
'use strict';
|
|
2
2
|
|
|
3
|
-
var index = require('./index-
|
|
3
|
+
var index = require('./index-C-F-JEv_.js');
|
|
4
4
|
|
|
5
5
|
const ghostButton = {
|
|
6
6
|
xxs: {
|
|
@@ -121,14 +121,21 @@ const SdGhostButton = class {
|
|
|
121
121
|
index.registerInstance(this, hostRef);
|
|
122
122
|
this.click = index.createEvent(this, "sdClick", 7);
|
|
123
123
|
}
|
|
124
|
+
/** 버튼에 표시할 아이콘명 */
|
|
124
125
|
icon;
|
|
126
|
+
/** 버튼 크기 */
|
|
125
127
|
size = 'sm';
|
|
128
|
+
/** 버튼 색상 의도 */
|
|
126
129
|
intent = 'default';
|
|
130
|
+
/** 스크린리더용 접근성 레이블 */
|
|
127
131
|
ariaLabel = '';
|
|
132
|
+
/** 호버 시 표시할 툴팁 텍스트 */
|
|
128
133
|
tooltipText;
|
|
134
|
+
/** 비활성 상태 여부 */
|
|
129
135
|
disabled = false;
|
|
130
136
|
get hostEl() { return index.getElement(this); }
|
|
131
137
|
isTooltipOpen = false;
|
|
138
|
+
/** 버튼 클릭 시 발생합니다. */
|
|
132
139
|
click;
|
|
133
140
|
hasWarnedMissingAriaLabel = false;
|
|
134
141
|
componentWillLoad() {
|
|
@@ -143,10 +150,18 @@ const SdGhostButton = class {
|
|
|
143
150
|
}
|
|
144
151
|
this.click.emit(event);
|
|
145
152
|
};
|
|
146
|
-
handleMouseEnter = () => {
|
|
147
|
-
|
|
148
|
-
|
|
149
|
-
|
|
153
|
+
handleMouseEnter = () => {
|
|
154
|
+
this.isTooltipOpen = true;
|
|
155
|
+
};
|
|
156
|
+
handleMouseLeave = () => {
|
|
157
|
+
this.isTooltipOpen = false;
|
|
158
|
+
};
|
|
159
|
+
handleFocus = () => {
|
|
160
|
+
this.isTooltipOpen = true;
|
|
161
|
+
};
|
|
162
|
+
handleBlur = () => {
|
|
163
|
+
this.isTooltipOpen = false;
|
|
164
|
+
};
|
|
150
165
|
componentWillRender() {
|
|
151
166
|
this.warnIfMissingAriaLabel();
|
|
152
167
|
}
|
|
@@ -171,7 +186,7 @@ const SdGhostButton = class {
|
|
|
171
186
|
const accessibleName = (this.ariaLabel ?? '').trim() || undefined;
|
|
172
187
|
const tooltipText = (this.tooltipText ?? '').trim();
|
|
173
188
|
const hasTooltip = tooltipText.length > 0;
|
|
174
|
-
return (index.h("button", { key: '
|
|
189
|
+
return (index.h("button", { key: 'a49c5b93f4dfcd434c20225acae4c7454e8f8e4f', class: {
|
|
175
190
|
'sd-ghost-button': true,
|
|
176
191
|
'sd-ghost-button--disabled': this.disabled,
|
|
177
192
|
}, type: "button", disabled: this.disabled, "aria-label": accessibleName, style: {
|
|
@@ -180,7 +195,7 @@ const SdGhostButton = class {
|
|
|
180
195
|
'--sd-ghost-button-hover-bg': GHOST_BUTTON_HOVER_BG_COLORS[intent],
|
|
181
196
|
'--sd-ghost-button-hover-opacity': GHOST_BUTTON_HOVER_OPACITY,
|
|
182
197
|
'--sd-ghost-button-accent': GHOST_BUTTON_FOCUS_RING_COLOR,
|
|
183
|
-
}, onClick: this.handleClick, onMouseEnter: this.handleMouseEnter, onMouseLeave: this.handleMouseLeave, onFocus: this.handleFocus, onBlur: this.handleBlur }, hasTooltip && this.isTooltipOpen && !this.disabled && (index.h("sd-portal", { key: '
|
|
198
|
+
}, onClick: this.handleClick, onMouseEnter: this.handleMouseEnter, onMouseLeave: this.handleMouseLeave, onFocus: this.handleFocus, onBlur: this.handleBlur }, hasTooltip && this.isTooltipOpen && !this.disabled && (index.h("sd-portal", { key: '36ef78d79a99da1fd26c282ef68293b9fb9f87b1', parentRef: this.hostEl, open: true, offset: [sizeConfig.size / 2, 4], placement: "top" }, index.h("div", { key: 'a0cf8b4e84a79841ab09e6a81ee6bcbfe57e6805', class: "sd-ghost-button__tooltip-inner", "aria-hidden": "true" }, index.h("sd-tag", { key: 'a263167142b891add0a32900504f541dcb3a4959', name: "square_xs_grey", label: tooltipText })))), index.h("sd-icon", { key: 'ba90e9b489b4f43577313052635db598e3d30037', name: this.icon, size: sizeConfig.icon, color: contentColor })));
|
|
184
199
|
}
|
|
185
200
|
};
|
|
186
201
|
SdGhostButton.style = sdGhostButtonCss();
|
|
@@ -191,13 +206,21 @@ const SdPortal = class {
|
|
|
191
206
|
this.close = index.createEvent(this, "sdClose", 3);
|
|
192
207
|
}
|
|
193
208
|
get hostEl() { return index.getElement(this); }
|
|
209
|
+
/** 포탈 콘텐츠를 마운트할 대상 (CSS 선택자 또는 HTMLElement) */
|
|
194
210
|
to = 'body';
|
|
211
|
+
/** 위치 기준이 되는 부모 엘리먼트 */
|
|
195
212
|
parentRef = null;
|
|
213
|
+
/** [x, y] 오프셋 (px) */
|
|
196
214
|
offset = [0, 4];
|
|
215
|
+
/** 뷰포트 경계 여백 (px) */
|
|
197
216
|
viewportPadding = 0;
|
|
198
|
-
|
|
217
|
+
/** z-index */
|
|
218
|
+
zIndex = 996;
|
|
219
|
+
/** 표시 여부 */
|
|
199
220
|
open = false;
|
|
221
|
+
/** 콘텐츠를 표시할 방향 (공간이 부족하면 자동으로 반대 방향으로 전환) */
|
|
200
222
|
placement = 'bottom';
|
|
223
|
+
/** 외부 클릭 등으로 닫힐 때 발생합니다. */
|
|
201
224
|
close;
|
|
202
225
|
container;
|
|
203
226
|
wrapper;
|
|
@@ -236,13 +259,27 @@ const SdPortal = class {
|
|
|
236
259
|
const el = typeof this.to === 'string' ? document.querySelector(this.to) : this.to;
|
|
237
260
|
return el instanceof HTMLElement ? el : document.body;
|
|
238
261
|
}
|
|
262
|
+
/**
|
|
263
|
+
* 트리거(parentRef)가 모달 내부에 있으면 해당 모달보다 위에, 아니면 페이지 기본값에 둔다.
|
|
264
|
+
* 페이지 기본값(996)은 모달(997)보다 낮아, 모달 뒤의 페이지 포털이 모달 위로 떠오르지 않는다.
|
|
265
|
+
*/
|
|
266
|
+
resolveZIndex() {
|
|
267
|
+
const base = this.zIndex ?? 996;
|
|
268
|
+
const layer = this.parentRef?.closest('.sd-modal-container__layer');
|
|
269
|
+
if (!layer)
|
|
270
|
+
return base;
|
|
271
|
+
const container = layer.closest('.sd-modal-container');
|
|
272
|
+
const z = container instanceof HTMLElement ? parseInt(getComputedStyle(container).zIndex, 10) : NaN;
|
|
273
|
+
const modalZIndex = Number.isFinite(z) ? z : 997;
|
|
274
|
+
return Math.max(base, modalZIndex + 1);
|
|
275
|
+
}
|
|
239
276
|
createWrapper() {
|
|
240
277
|
this.wrapper = document.createElement('div');
|
|
241
278
|
Object.assign(this.wrapper.style, {
|
|
242
279
|
position: 'fixed',
|
|
243
280
|
top: '0',
|
|
244
281
|
left: '0',
|
|
245
|
-
zIndex:
|
|
282
|
+
zIndex: this.resolveZIndex().toString(),
|
|
246
283
|
opacity: '0',
|
|
247
284
|
transition: 'opacity 0.15s ease-out',
|
|
248
285
|
boxSizing: 'border-box',
|
|
@@ -408,8 +445,7 @@ const SdPortal = class {
|
|
|
408
445
|
return scrollParents;
|
|
409
446
|
}
|
|
410
447
|
isInsideTarget(target) {
|
|
411
|
-
return !!(
|
|
412
|
-
(this.parentRef?.contains(target)));
|
|
448
|
+
return !!(this.wrapper?.contains(target) || this.parentRef?.contains(target));
|
|
413
449
|
}
|
|
414
450
|
// 외부 클릭 감지
|
|
415
451
|
handleMouseDown(e) {
|
|
@@ -425,7 +461,7 @@ const SdPortal = class {
|
|
|
425
461
|
this.close.emit();
|
|
426
462
|
}
|
|
427
463
|
render() {
|
|
428
|
-
return index.h("slot", { key: '
|
|
464
|
+
return index.h("slot", { key: 'e4523bbb6fd56072c4f5a4dc241ab8a3ac0ea1bf' });
|
|
429
465
|
}
|
|
430
466
|
static get watchers() { return {
|
|
431
467
|
"open": [{
|
|
@@ -615,11 +651,14 @@ const SdTag = class {
|
|
|
615
651
|
constructor(hostRef) {
|
|
616
652
|
index.registerInstance(this, hostRef);
|
|
617
653
|
}
|
|
654
|
+
/** 태그 프리셋 이름 */
|
|
618
655
|
name = 'square_sm_grey';
|
|
656
|
+
/** 표시할 레이블 텍스트 */
|
|
619
657
|
label = '';
|
|
658
|
+
/** 아이콘명 */
|
|
620
659
|
icon;
|
|
621
660
|
// 아이콘이 좌측 배치되는 게 자연스러운 default. prop 이름 변경(isRight 등)은 public API breaking 이라 별도 이슈로 분리.
|
|
622
|
-
|
|
661
|
+
/** true이면 아이콘을 레이블 왼쪽에 배치 */
|
|
623
662
|
isLeft = true;
|
|
624
663
|
componentWillLoad() {
|
|
625
664
|
this.name = this.name ?? 'square_sm_grey';
|
|
@@ -641,7 +680,7 @@ const SdTag = class {
|
|
|
641
680
|
render() {
|
|
642
681
|
const config = this.resolvedConfig;
|
|
643
682
|
const iconNode = this.renderIcon(config.icon, config.iconSize);
|
|
644
|
-
return (index.h("span", { key: '
|
|
683
|
+
return (index.h("span", { key: '09cc181654983b64dec9860fdf656677ebcfcd15', class: "sd-tag", style: {
|
|
645
684
|
'--sd-tag-background': config.background,
|
|
646
685
|
'--sd-tag-content': config.content,
|
|
647
686
|
'--sd-tag-height': config.height,
|
|
@@ -651,7 +690,7 @@ const SdTag = class {
|
|
|
651
690
|
'--sd-tag-font-weight': config.fontWeight,
|
|
652
691
|
'--sd-tag-line-height': config.lineHeight,
|
|
653
692
|
'--sd-tag-radius': config.radius,
|
|
654
|
-
}, "aria-label": this.label || 'tag' }, this.icon && this.isLeft && iconNode, index.h("span", { key: '
|
|
693
|
+
}, "aria-label": this.label || 'tag' }, this.icon && this.isLeft && iconNode, index.h("span", { key: '044ab51afc474799b400c608fd5531bed9a7ad18', class: "sd-tag__label" }, this.label), this.icon && !this.isLeft && iconNode));
|
|
655
694
|
}
|
|
656
695
|
};
|
|
657
696
|
SdTag.style = sdTagCss();
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
'use strict';
|
|
2
2
|
|
|
3
|
-
var index = require('./index-
|
|
3
|
+
var index = require('./index-C-F-JEv_.js');
|
|
4
4
|
var system = require('./system-MjrAugX-.js');
|
|
5
5
|
var sanitizeInlineHtml = require('./sanitize-inline-html-CRCAeQ46.js');
|
|
6
6
|
|
|
@@ -122,11 +122,17 @@ const SdGuide = class {
|
|
|
122
122
|
index.registerInstance(this, hostRef);
|
|
123
123
|
}
|
|
124
124
|
get el() { return index.getElement(this); }
|
|
125
|
+
/** 가이드 타입 (tip: 팝업, notion: 외부 링크) */
|
|
125
126
|
type = 'tip';
|
|
127
|
+
/** 버튼에 표시할 레이블 (없으면 type에 따른 기본값 사용) */
|
|
126
128
|
label = '';
|
|
129
|
+
/** 팝업에 표시할 메시지 (배열이면 리스트로 렌더링) */
|
|
127
130
|
message = '';
|
|
131
|
+
/** notion 타입일 때 클릭 시 이동할 URL */
|
|
128
132
|
url = '';
|
|
133
|
+
/** 팝업 제목 (없으면 type에 따른 기본값 사용) */
|
|
129
134
|
popupTitle = '';
|
|
135
|
+
/** 팝업 너비 (px, 없으면 426px) */
|
|
130
136
|
popupWidth;
|
|
131
137
|
popupShow = false;
|
|
132
138
|
guideRef;
|
|
@@ -188,10 +194,10 @@ const SdGuide = class {
|
|
|
188
194
|
const buttonClasses = ['sd-guide__button', `sd-guide__button--type-${this.type ?? 'tip'}`];
|
|
189
195
|
if (isActive)
|
|
190
196
|
buttonClasses.push('sd-guide__button--active');
|
|
191
|
-
return (index.h("div", { key: '
|
|
197
|
+
return (index.h("div", { key: 'd89a517d78a8f9624c94d320291e5a4b5bd0715d', class: "sd-guide", style: this.guideStyle }, index.h("sd-button", { key: '6e959f0f5fd6f816fd1cef4545852b860d30de85', ref: el => (this.guideRef = el), class: buttonClasses.join(' '), name: isActive ? 'primary_sm' : 'neutral_outline_sm', label: this.label || defaultLabel, icon: iconName, onSdClick: this.handleClickGuide }), this.popupShow && (index.h("sd-portal", { key: 'a837cababa5504400293729ad28e4dcd2450eeec', open: this.popupShow, parentRef: this.guideRef, onSdClose: this.closeDropdown, offset: [0, 4] }, index.h("div", { key: '61dd3c574495f85021495d80865e162999368f9c', class: "sd-guide__popup", style: {
|
|
192
198
|
...this.guideStyle,
|
|
193
199
|
width: this.popupWidth != null ? this.popupWidth + 'px' : '426px',
|
|
194
|
-
} }, index.h("sd-ghost-button", { key: '
|
|
200
|
+
} }, index.h("sd-ghost-button", { key: 'dbf8aebd1be4b5286bf726d22e0a5f80c29e867f', class: "sd-guide__popup__close", icon: "close", ariaLabel: "close", size: "sm", onSdClick: this.closeDropdown }), index.h("div", { key: '5a08fa823bb8839e654d7bb2ba027df2dc68b85b', class: "sd-guide__popup__header" }, index.h("sd-icon", { key: '1dda43d100b4f5f3b7fa81115a1ac4bfbd584a51', name: iconName, size: 24, color: popupIconColor }), index.h("h3", { key: 'cfe6342f44f4e1355397ed94d6db74807f917548', class: "sd-guide__popup__title" }, this.popupTitle || defaultLabel)), index.h("ul", { key: '9acc2f507ed3d3d6f1fda27a9e5cf66dcc2f619d', class: "sd-guide__popup__list" }, this.renderListItem(this.message)))))));
|
|
195
201
|
}
|
|
196
202
|
// 현재 2depth까지만 스타일 적용
|
|
197
203
|
renderListItem(message, depth = 0) {
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
'use strict';
|
|
2
2
|
|
|
3
|
-
var index = require('./index-
|
|
3
|
+
var index = require('./index-C-F-JEv_.js');
|
|
4
4
|
var system = require('./system-MjrAugX-.js');
|
|
5
5
|
var component_table = require('./component.table-DIxmbGBT.js');
|
|
6
6
|
|
|
@@ -63,7 +63,9 @@ const SdKeyValueTable = class {
|
|
|
63
63
|
* - 'full': 상하단 모두 radius 0 (요소 사이에 끼워 쓸 때)
|
|
64
64
|
*/
|
|
65
65
|
radius = 'default';
|
|
66
|
+
/** 필드 값이 변경될 때 `{ name, value }` 형태로 발생합니다. */
|
|
66
67
|
change;
|
|
68
|
+
/** search 패널의 검색 버튼 클릭 시 발생합니다. */
|
|
67
69
|
searchEvent;
|
|
68
70
|
emit = (name, value) => {
|
|
69
71
|
this.change.emit({ name, value });
|