@sellmate/design-system 1.0.62 → 1.0.64
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/{component.modal-DmQUWbve.js → component.modal-BFelrSMx.js} +14 -0
- package/dist/cjs/constants-DJRV1upE.js +5 -0
- package/dist/cjs/design-system.cjs.js +3 -4
- package/dist/cjs/{index-BQt-JC6r.js → index-nsQP24mV.js} +130 -9
- package/dist/cjs/index.cjs.js +103 -32
- package/dist/cjs/loader.cjs.js +3 -4
- package/dist/cjs/sd-action-modal.cjs.entry.js +3 -3
- package/dist/cjs/sd-badge.cjs.entry.js +2 -2
- package/dist/cjs/sd-barcode-input.cjs.entry.js +4 -3
- package/dist/cjs/sd-button-v2_2.cjs.entry.js +9 -8
- package/dist/cjs/sd-button_4.cjs.entry.js +62 -18
- package/dist/cjs/sd-calendar.cjs.entry.js +1 -1
- package/dist/cjs/sd-card.cjs.entry.js +2 -2
- package/dist/cjs/sd-checkbox.cjs.entry.js +30 -5
- package/dist/cjs/sd-circle-progress.cjs.entry.js +71 -0
- package/dist/cjs/sd-confirm-modal_2.cjs.entry.js +186 -0
- package/dist/cjs/sd-date-box.cjs.entry.js +1 -1
- package/dist/cjs/sd-date-picker-calendar.cjs.entry.js +3 -3
- package/dist/cjs/sd-date-picker-trigger.cjs.entry.js +4 -4
- package/dist/cjs/sd-date-picker.cjs.entry.js +5 -4
- package/dist/cjs/{sd-date-picker.config-DWC_aiD2.js → sd-date-picker.config-D8xSALVj.js} +3 -3
- package/dist/cjs/sd-date-range-picker-calendar.cjs.entry.js +3 -3
- package/dist/cjs/sd-date-range-picker.cjs.entry.js +5 -4
- package/dist/cjs/sd-dropdown-button.cjs.entry.js +10 -5
- package/dist/cjs/sd-file-picker.cjs.entry.js +3 -2
- package/dist/cjs/sd-form.cjs.entry.js +1 -1
- package/dist/cjs/sd-ghost-button.cjs.entry.js +15 -6
- package/dist/cjs/sd-guide.cjs.entry.js +2 -2
- package/dist/cjs/sd-input_2.cjs.entry.js +8 -7
- package/dist/cjs/sd-loading-container.cjs.entry.js +29 -0
- package/dist/cjs/sd-modal-container.cjs.entry.js +45 -2
- package/dist/cjs/sd-number-input.cjs.entry.js +6 -10
- package/dist/cjs/{sd-select-v2.cjs.entry.js → sd-pagination_2.cjs.entry.js} +91 -4
- package/dist/cjs/sd-popover.cjs.entry.js +4 -4
- package/dist/cjs/sd-portal.cjs.entry.js +2 -2
- package/dist/cjs/sd-progress.cjs.entry.js +3 -3
- package/dist/cjs/sd-radio-button.cjs.entry.js +182 -0
- package/dist/cjs/sd-radio-group.cjs.entry.js +1 -1
- package/dist/cjs/sd-radio.cjs.entry.js +6 -6
- package/dist/cjs/sd-select-dropdown_2.cjs.entry.js +4 -4
- package/dist/cjs/sd-select-group.cjs.entry.js +4 -3
- package/dist/cjs/sd-select-multiple-group.cjs.entry.js +4 -3
- package/dist/cjs/sd-select-multiple.cjs.entry.js +4 -3
- package/dist/cjs/sd-select-option-group.cjs.entry.js +4 -4
- package/dist/cjs/sd-select-v2-list-item_4.cjs.entry.js +661 -0
- package/dist/cjs/sd-select.cjs.entry.js +180 -0
- package/dist/cjs/sd-switch.cjs.entry.js +110 -0
- package/dist/cjs/sd-table.cjs.entry.js +424 -651
- package/dist/cjs/sd-tabs.cjs.entry.js +2 -2
- package/dist/cjs/sd-tag.cjs.entry.js +6 -5
- package/dist/cjs/sd-tbody.cjs.entry.js +66 -0
- package/dist/cjs/sd-td.cjs.entry.js +58 -0
- package/dist/cjs/sd-text-link.cjs.entry.js +10 -12
- package/dist/cjs/sd-textarea.cjs.entry.js +3 -2
- package/dist/cjs/sd-thead.cjs.entry.js +179 -0
- package/dist/cjs/sd-toast-container.cjs.entry.js +2 -2
- package/dist/cjs/sd-toast.cjs.entry.js +3 -3
- package/dist/cjs/sd-toggle.cjs.entry.js +96 -13
- package/dist/cjs/sd-tr.cjs.entry.js +171 -0
- package/dist/cjs/table-test.cjs.entry.js +96 -0
- package/dist/cjs/{tooltipArrow-CRCpqOYA.js → tooltipArrow-DhevfDPX.js} +1 -1
- package/dist/collection/__mocks__/nanoid-non-secure.js +13 -0
- package/dist/collection/__mocks__/nanoid.js +1 -0
- package/dist/collection/collection-manifest.json +11 -4
- package/dist/collection/components/sd-action-modal/sd-action-modal.js +1 -1
- package/dist/collection/components/sd-badge/sd-badge.js +1 -1
- package/dist/collection/components/sd-barcode-input/sd-barcode-input.css +3 -0
- package/dist/collection/components/sd-barcode-input/sd-barcode-input.js +22 -1
- package/dist/collection/components/sd-button/sd-button.css +37 -37
- package/dist/collection/components/sd-button-v2/sd-button-v2.css +44 -44
- package/dist/collection/components/sd-button-v2/sd-button-v2.js +31 -6
- package/dist/collection/components/sd-card/sd-card.js +1 -1
- package/dist/collection/components/sd-checkbox/sd-checkbox.config.js +3 -0
- package/dist/collection/components/sd-checkbox/sd-checkbox.css +15 -0
- package/dist/collection/components/sd-checkbox/sd-checkbox.js +36 -2
- package/dist/collection/components/sd-circle-progress/sd-circle-progress.config.js +24 -0
- package/dist/collection/components/sd-circle-progress/sd-circle-progress.css +53 -0
- package/dist/collection/components/sd-circle-progress/sd-circle-progress.js +109 -0
- package/dist/collection/components/sd-confirm-modal/sd-confirm-modal.css +2 -2
- package/dist/collection/components/sd-confirm-modal/sd-confirm-modal.js +2 -2
- package/dist/collection/components/sd-date-picker/sd-date-picker-calendar/sd-date-picker-calendar.js +1 -1
- package/dist/collection/components/sd-date-picker/sd-date-picker-trigger/sd-date-picker-trigger.js +2 -2
- package/dist/collection/components/sd-date-picker/sd-date-picker.config.js +1 -1
- package/dist/collection/components/sd-date-picker/sd-date-picker.js +26 -5
- package/dist/collection/components/sd-date-range-picker/sd-date-range-picker-calendar/sd-date-range-picker-calendar.js +1 -1
- package/dist/collection/components/sd-date-range-picker/sd-date-range-picker.js +26 -5
- package/dist/collection/components/sd-dropdown-button/sd-dropdown-button.config.js +5 -0
- package/dist/collection/components/sd-dropdown-button/sd-dropdown-button.css +46 -36
- package/dist/collection/components/sd-dropdown-button/sd-dropdown-button.js +4 -4
- package/dist/collection/components/sd-field/sd-field.config.js +21 -0
- package/dist/collection/components/sd-field/sd-field.css +26 -16
- package/dist/collection/components/sd-field/sd-field.js +72 -11
- package/dist/collection/components/sd-file-picker/sd-file-picker.js +27 -6
- package/dist/collection/components/sd-ghost-button/sd-ghost-button.config.js +7 -1
- package/dist/collection/components/sd-ghost-button/sd-ghost-button.js +3 -3
- package/dist/collection/components/sd-guide/sd-guide.css +37 -37
- package/dist/collection/components/sd-input/sd-input.css +3 -0
- package/dist/collection/components/sd-input/sd-input.js +23 -2
- package/dist/collection/components/sd-loading-container/sd-loading-container.config.js +1 -0
- package/dist/collection/components/sd-loading-container/sd-loading-container.css +40 -0
- package/dist/collection/components/sd-loading-container/sd-loading-container.js +83 -0
- package/dist/collection/components/sd-loading-modal/sd-loading-modal.config.js +31 -0
- package/dist/collection/components/sd-loading-modal/sd-loading-modal.css +37 -0
- package/dist/collection/components/sd-loading-modal/sd-loading-modal.js +184 -0
- package/dist/collection/components/sd-modal-container/sd-modal-container.js +89 -3
- package/dist/collection/components/sd-number-input/sd-number-input.config.js +0 -2
- package/dist/collection/components/sd-number-input/sd-number-input.css +0 -1
- package/dist/collection/components/sd-number-input/sd-number-input.js +24 -4
- package/dist/collection/components/sd-pagination/sd-pagination.js +3 -3
- package/dist/collection/components/sd-popover/sd-popover.js +2 -2
- package/dist/collection/components/sd-portal/sd-portal.js +1 -1
- package/dist/collection/components/sd-progress/sd-progress.js +2 -2
- package/dist/collection/components/sd-radio/sd-radio.config.js +1 -1
- package/dist/collection/components/sd-radio-button/sd-radio-button.config.js +45 -0
- package/dist/collection/components/sd-radio-button/sd-radio-button.css +71 -0
- package/dist/collection/components/{sd-radio-button-group/sd-radio-button-group.js → sd-radio-button/sd-radio-button.js} +49 -18
- package/dist/collection/components/sd-select/sd-select-dropdown/sd-select-dropdown.js +2 -2
- package/dist/collection/components/sd-select/sd-select-option/sd-select-option.js +1 -1
- package/dist/collection/components/sd-select/sd-select-search-input/sd-select-search-input.js +3 -3
- package/dist/collection/components/sd-select/sd-select.css +4 -0
- package/dist/collection/components/sd-select/sd-select.js +22 -1
- package/dist/collection/components/sd-select-group/sd-select-group.css +4 -0
- package/dist/collection/components/sd-select-group/sd-select-group.js +22 -1
- package/dist/collection/components/sd-select-multiple/sd-select-multiple.css +4 -0
- package/dist/collection/components/sd-select-multiple/sd-select-multiple.js +22 -1
- package/dist/collection/components/sd-select-multiple-group/sd-select-multiple-group.css +4 -0
- package/dist/collection/components/sd-select-multiple-group/sd-select-multiple-group.js +22 -1
- package/dist/collection/components/sd-select-multiple-group/sd-select-option-group/sd-select-option-group.js +3 -3
- package/dist/collection/components/sd-select-v2/sd-select-v2-list-item/sd-select-v2-list-item.js +2 -2
- package/dist/collection/components/sd-select-v2/sd-select-v2-list-item-search/sd-select-v2-list-item-search.css +4 -0
- package/dist/collection/components/sd-select-v2/sd-select-v2-list-item-search/sd-select-v2-list-item-search.js +6 -3
- package/dist/collection/components/sd-select-v2/sd-select-v2-listbox/sd-select-v2-listbox.css +2 -3
- package/dist/collection/components/sd-select-v2/sd-select-v2-listbox/sd-select-v2-listbox.js +2 -1
- package/dist/collection/components/sd-select-v2/sd-select-v2-trigger/sd-select-v2-trigger.js +2 -2
- package/dist/collection/components/sd-select-v2/sd-select-v2.config.js +1 -0
- package/dist/collection/components/sd-select-v2/sd-select-v2.js +24 -3
- package/dist/collection/components/sd-switch/sd-switch.config.js +23 -0
- package/dist/collection/components/sd-switch/sd-switch.css +54 -0
- package/dist/collection/components/{sd-toggle-button/sd-toggle-button.js → sd-switch/sd-switch.js} +30 -27
- package/dist/collection/components/sd-table/constants.js +1 -0
- package/dist/collection/components/sd-table/sd-table.css +76 -248
- package/dist/collection/components/sd-table/sd-table.js +705 -700
- package/dist/collection/components/sd-table/sd-tbody/sd-tbody.css +18 -0
- package/dist/collection/components/sd-table/sd-tbody/sd-tbody.js +105 -0
- package/dist/collection/components/sd-table/sd-td/sd-td.css +15 -0
- package/dist/collection/components/sd-table/sd-td/sd-td.js +121 -0
- package/dist/collection/components/sd-table/sd-thead/sd-thead.css +147 -0
- package/dist/collection/components/sd-table/sd-thead/sd-thead.js +442 -0
- package/dist/collection/components/sd-table/sd-tr/sd-tr.css +111 -0
- package/dist/collection/components/sd-table/sd-tr/sd-tr.js +376 -0
- package/dist/collection/components/sd-tabs/sd-tabs.js +1 -1
- package/dist/collection/components/sd-tag/sd-tag.js +2 -2
- package/dist/collection/components/sd-text-link/sd-text-link.css +1 -0
- package/dist/collection/components/sd-text-link/sd-text-link.js +7 -13
- package/dist/collection/components/sd-textarea/sd-textarea.js +22 -1
- package/dist/collection/components/sd-toast/sd-toast.js +2 -2
- package/dist/collection/components/sd-toast-container/sd-toast-container.js +1 -1
- package/dist/collection/components/sd-toggle/sd-toggle.config.js +33 -0
- package/dist/collection/components/sd-toggle/sd-toggle.css +38 -50
- package/dist/collection/components/sd-toggle/sd-toggle.js +29 -12
- package/dist/collection/components/sd-tooltip/sd-tooltip.js +2 -2
- package/dist/collection/components/table-test/table-test.css +59 -0
- package/dist/collection/components/table-test/table-test.js +316 -0
- package/dist/collection/index.js +1 -0
- package/dist/collection/utils/loading.js +43 -0
- package/dist/collection/utils/modal.js +26 -0
- package/dist/components/index.js +1 -1
- package/dist/components/p-6LkBUj0w.js +1 -0
- package/dist/components/{p-DlujHEXS.js → p-6cueWz-l.js} +1 -1
- package/dist/components/{p-D0wZv01W.js → p-AKpbKrkW.js} +1 -1
- package/dist/components/p-B1S4ybd6.js +1 -0
- package/dist/components/{p-D93Cb_Vw.js → p-B6OgnOKC.js} +1 -1
- package/dist/components/{p-lKwhftf9.js → p-B6RvTdqt.js} +1 -1
- package/dist/components/p-BLC3AWW8.js +1 -0
- package/dist/components/{p-BUAwjF_Z.js → p-BZ7V5xV5.js} +1 -1
- package/dist/components/{p-BWgJ9XTj.js → p-BdsI1E5l.js} +1 -1
- package/dist/components/{p-DdBIc8AE.js → p-BgRPWxrz.js} +1 -1
- package/dist/components/{p-DCv5afjJ.js → p-Bh548Ckv.js} +1 -1
- package/dist/components/p-BjjrNz4C.js +1 -0
- package/dist/components/{p-BVBMsoZP.js → p-BkUclgga.js} +1 -1
- package/dist/components/p-C2r48NLP.js +1 -0
- package/dist/components/{p-BtH5wWA5.js → p-CGXwtYAv.js} +1 -1
- package/dist/components/p-CGssy8eb.js +1 -0
- package/dist/components/p-CKU8CeW3.js +1 -0
- package/dist/components/{p-BHQirDZt.js → p-CRl8Anfr.js} +1 -1
- package/dist/components/p-CU095QAR.js +1 -0
- package/dist/components/p-CpclstHV.js +1 -0
- package/dist/components/{p-C2Yw3PoX.js → p-Cpu_hXwN.js} +1 -1
- package/dist/components/{p-gTPCqs3t.js → p-Cr_74QR7.js} +1 -1
- package/dist/components/{p-BsJy4pgR.js → p-D9FDutsj.js} +1 -1
- package/dist/components/p-DBnszF5F.js +1 -0
- package/dist/components/p-DC9KYl3L.js +1 -0
- package/dist/components/p-DOXMJi-V.js +1 -0
- package/dist/components/p-DRY8HJ-T.js +1 -0
- package/dist/components/{p-98NWgkAU.js → p-DpsDTjcN.js} +1 -1
- package/dist/components/p-DuYi4aqj.js +1 -0
- package/dist/components/{p-AdSqif48.js → p-DxzgCf_d.js} +1 -1
- package/dist/components/p-TMuoVuhE.js +1 -0
- package/dist/components/{p-CE1Hmoij.js → p-VXLJLI30.js} +1 -1
- package/dist/components/p-bYCOh35g.js +1 -0
- package/dist/components/p-kZ5N_lFC.js +1 -0
- package/dist/components/{p-CqU3a1re.js → p-puZ1xlrr.js} +1 -1
- package/dist/components/p-sZMi_32I.js +1 -0
- package/dist/components/{p-Ci3yfjxH.js → p-xmvTLf74.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-v2.js +1 -1
- package/dist/components/sd-button.js +1 -1
- package/dist/components/sd-calendar.js +1 -1
- package/dist/components/sd-card.js +1 -1
- package/dist/components/sd-checkbox.js +1 -1
- package/dist/components/{sd-loading-spinner.d.ts → sd-circle-progress.d.ts} +4 -4
- package/dist/components/sd-circle-progress.js +1 -0
- package/dist/components/sd-confirm-modal.js +1 -1
- package/dist/components/sd-date-box.js +1 -1
- package/dist/components/sd-date-picker-calendar.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-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-radio-button-group.d.ts → sd-loading-container.d.ts} +4 -4
- package/dist/components/sd-loading-container.js +1 -0
- package/dist/components/{sd-toggle-button.d.ts → sd-loading-modal.d.ts} +4 -4
- package/dist/components/sd-loading-modal.js +1 -0
- 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-portal.js +1 -1
- package/dist/components/sd-progress.js +1 -1
- package/dist/components/sd-radio-button.d.ts +11 -0
- package/dist/components/sd-radio-button.js +1 -0
- package/dist/components/sd-radio-group.js +1 -1
- package/dist/components/sd-radio.js +1 -1
- package/dist/components/sd-select-dropdown.js +1 -1
- package/dist/components/sd-select-group.js +1 -1
- package/dist/components/sd-select-multiple-group.js +1 -1
- package/dist/components/sd-select-multiple.js +1 -1
- package/dist/components/sd-select-option-group.js +1 -1
- package/dist/components/sd-select-option.js +1 -1
- package/dist/components/sd-select-search-input.js +1 -1
- package/dist/components/sd-select-v2-list-item-search.js +1 -1
- package/dist/components/sd-select-v2-list-item.js +1 -1
- package/dist/components/sd-select-v2-listbox.js +1 -1
- package/dist/components/sd-select-v2-trigger.js +1 -1
- package/dist/components/sd-select-v2.js +1 -1
- package/dist/components/sd-select.js +1 -1
- package/dist/components/sd-switch.d.ts +11 -0
- package/dist/components/sd-switch.js +1 -0
- 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.d.ts +11 -0
- package/dist/components/sd-tbody.js +1 -0
- package/dist/components/sd-td.d.ts +11 -0
- package/dist/components/sd-td.js +1 -0
- package/dist/components/sd-text-link.js +1 -1
- package/dist/components/sd-textarea.js +1 -1
- package/dist/components/sd-thead.d.ts +11 -0
- package/dist/components/sd-thead.js +1 -0
- 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.d.ts +11 -0
- package/dist/components/sd-tr.js +1 -0
- package/dist/components/table-test.d.ts +11 -0
- package/dist/components/table-test.js +1 -0
- package/dist/design-system/design-system.css +1 -1
- package/dist/design-system/design-system.esm.js +1 -1
- package/dist/design-system/index.esm.js +1 -1
- package/dist/design-system/p-010e4f47.entry.js +1 -0
- package/dist/design-system/p-03099a57.entry.js +1 -0
- package/dist/design-system/p-04be87a4.entry.js +1 -0
- package/dist/design-system/{p-e9c28bdc.entry.js → p-09ba9dbc.entry.js} +1 -1
- package/dist/design-system/p-0fbb6d92.entry.js +1 -0
- package/dist/design-system/p-12a03c88.entry.js +1 -0
- package/dist/design-system/p-15cda79c.entry.js +1 -0
- package/dist/design-system/{p-a03ad24f.entry.js → p-1d310832.entry.js} +1 -1
- package/dist/design-system/p-2ae97b1c.entry.js +1 -0
- package/dist/design-system/p-2f64dd95.entry.js +1 -0
- package/dist/design-system/p-33e4ce64.entry.js +1 -0
- package/dist/design-system/{p-14b67a6e.entry.js → p-363da5ff.entry.js} +1 -1
- package/dist/design-system/p-3d341993.entry.js +1 -0
- package/dist/design-system/p-3f79f1d1.entry.js +1 -0
- package/dist/design-system/{p-c59191d3.entry.js → p-40495e05.entry.js} +1 -1
- package/dist/design-system/p-4128c17f.entry.js +1 -0
- package/dist/design-system/{p-614c9883.entry.js → p-4a53d7b0.entry.js} +1 -1
- package/dist/design-system/{p-9ae589c4.entry.js → p-4dcadde3.entry.js} +1 -1
- package/dist/design-system/{p-62992b73.entry.js → p-53bc77f8.entry.js} +1 -1
- package/dist/design-system/{p-28058050.entry.js → p-5a63febd.entry.js} +1 -1
- package/dist/design-system/p-6644c4a0.entry.js +1 -0
- package/dist/design-system/{p-30055371.entry.js → p-6c71d7b7.entry.js} +1 -1
- package/dist/design-system/{p-7a18a52b.entry.js → p-73acee07.entry.js} +1 -1
- package/dist/design-system/p-7e09fdd5.entry.js +1 -0
- package/dist/design-system/{p-4272b9e6.entry.js → p-84a329fb.entry.js} +1 -1
- package/dist/design-system/p-867ec4ee.entry.js +1 -0
- package/dist/design-system/p-8acf3b67.entry.js +1 -0
- package/dist/design-system/p-8d2328ae.entry.js +1 -0
- package/dist/design-system/p-96b14db1.entry.js +1 -0
- package/dist/design-system/p-BqHL8W3c.js +2 -0
- package/dist/design-system/{p-DSRYrM1n.js → p-COK6PVLC.js} +1 -1
- package/dist/design-system/p-DOXMJi-V.js +1 -0
- package/dist/design-system/{p-72b564ed.entry.js → p-a129711d.entry.js} +1 -1
- package/dist/design-system/{p-3acd076e.entry.js → p-a27718c1.entry.js} +1 -1
- package/dist/design-system/p-a983560d.entry.js +1 -0
- package/dist/design-system/{p-3d10be45.entry.js → p-a9a91e69.entry.js} +1 -1
- package/dist/design-system/p-ae1800c0.entry.js +1 -0
- package/dist/design-system/p-b1fe12f8.entry.js +1 -0
- package/dist/design-system/p-b3279f07.entry.js +1 -0
- package/dist/design-system/p-b60ae063.entry.js +1 -0
- package/dist/design-system/p-b6e02544.entry.js +1 -0
- package/dist/design-system/p-b81e0493.entry.js +1 -0
- package/dist/design-system/p-bYCOh35g.js +1 -0
- package/dist/design-system/{p-85e22acd.entry.js → p-c4e68815.entry.js} +1 -1
- package/dist/design-system/p-cb65a9e4.entry.js +1 -0
- package/dist/design-system/p-cf1156cb.entry.js +1 -0
- package/dist/design-system/p-d040ec6f.entry.js +1 -0
- package/dist/design-system/{p-5d2e8779.entry.js → p-d04551be.entry.js} +1 -1
- package/dist/design-system/p-d8eb17a8.entry.js +1 -0
- package/dist/design-system/p-e0f9e5b5.entry.js +1 -0
- package/dist/design-system/p-e1fdd540.entry.js +1 -0
- package/dist/design-system/{p-2bd887ca.entry.js → p-e33389b8.entry.js} +1 -1
- package/dist/design-system/p-e78faea6.entry.js +1 -0
- package/dist/design-system/p-ed61fe19.entry.js +1 -0
- package/dist/design-system/p-f3d082c8.entry.js +1 -0
- package/dist/design-system/p-f9b9204d.entry.js +1 -0
- package/dist/design-system/{p-13fed1bd.entry.js → p-fd296c73.entry.js} +1 -1
- package/dist/design-system/p-sZMi_32I.js +1 -0
- package/dist/esm/{component.modal-mO5GcwI3.js → component.modal-DOXMJi-V.js} +14 -0
- package/dist/esm/constants-sZMi_32I.js +3 -0
- package/dist/esm/design-system.js +3 -4
- package/dist/esm/{index-DsU722JF.js → index-BqHL8W3c.js} +128 -10
- package/dist/esm/index.js +103 -33
- package/dist/esm/loader.js +3 -4
- package/dist/esm/sd-action-modal.entry.js +3 -3
- package/dist/esm/sd-badge.entry.js +2 -2
- package/dist/esm/sd-barcode-input.entry.js +4 -3
- package/dist/esm/sd-button-v2_2.entry.js +9 -8
- package/dist/esm/sd-button_4.entry.js +62 -18
- package/dist/esm/sd-calendar.entry.js +1 -1
- package/dist/esm/sd-card.entry.js +2 -2
- package/dist/esm/sd-checkbox.entry.js +30 -5
- package/dist/esm/sd-circle-progress.entry.js +69 -0
- package/dist/esm/sd-confirm-modal_2.entry.js +183 -0
- package/dist/esm/sd-date-box.entry.js +1 -1
- package/dist/esm/sd-date-picker-calendar.entry.js +3 -3
- package/dist/esm/sd-date-picker-trigger.entry.js +4 -4
- package/dist/esm/{sd-date-picker.config-C4i826lM.js → sd-date-picker.config-bYCOh35g.js} +3 -3
- package/dist/esm/sd-date-picker.entry.js +5 -4
- package/dist/esm/sd-date-range-picker-calendar.entry.js +3 -3
- package/dist/esm/sd-date-range-picker.entry.js +5 -4
- package/dist/esm/sd-dropdown-button.entry.js +10 -5
- package/dist/esm/sd-file-picker.entry.js +3 -2
- package/dist/esm/sd-form.entry.js +1 -1
- package/dist/esm/sd-ghost-button.entry.js +15 -6
- package/dist/esm/sd-guide.entry.js +2 -2
- package/dist/esm/sd-input_2.entry.js +8 -7
- package/dist/esm/sd-loading-container.entry.js +27 -0
- package/dist/esm/sd-modal-container.entry.js +45 -2
- package/dist/esm/sd-number-input.entry.js +6 -10
- package/dist/esm/{sd-select-v2.entry.js → sd-pagination_2.entry.js} +91 -5
- package/dist/esm/sd-popover.entry.js +4 -4
- package/dist/esm/sd-portal.entry.js +2 -2
- package/dist/esm/sd-progress.entry.js +3 -3
- package/dist/esm/sd-radio-button.entry.js +180 -0
- package/dist/esm/sd-radio-group.entry.js +1 -1
- package/dist/esm/sd-radio.entry.js +6 -6
- package/dist/esm/sd-select-dropdown_2.entry.js +4 -4
- package/dist/esm/sd-select-group.entry.js +4 -3
- package/dist/esm/sd-select-multiple-group.entry.js +4 -3
- package/dist/esm/sd-select-multiple.entry.js +4 -3
- package/dist/esm/sd-select-option-group.entry.js +4 -4
- package/dist/esm/sd-select-v2-list-item_4.entry.js +656 -0
- package/dist/esm/sd-select.entry.js +178 -0
- package/dist/esm/sd-switch.entry.js +108 -0
- package/dist/esm/sd-table.entry.js +424 -651
- package/dist/esm/sd-tabs.entry.js +2 -2
- package/dist/esm/sd-tag.entry.js +6 -5
- package/dist/esm/sd-tbody.entry.js +64 -0
- package/dist/esm/sd-td.entry.js +56 -0
- package/dist/esm/sd-text-link.entry.js +10 -12
- package/dist/esm/sd-textarea.entry.js +3 -2
- package/dist/esm/sd-thead.entry.js +177 -0
- package/dist/esm/sd-toast-container.entry.js +2 -2
- package/dist/esm/sd-toast.entry.js +3 -3
- package/dist/esm/sd-toggle.entry.js +96 -13
- package/dist/esm/sd-tr.entry.js +169 -0
- package/dist/esm/table-test.entry.js +94 -0
- package/dist/esm/{tooltipArrow-CJuzsrdH.js → tooltipArrow-BcsrQx1U.js} +1 -1
- package/dist/types/__mocks__/nanoid-non-secure.d.ts +2 -0
- package/dist/types/__mocks__/nanoid.d.ts +1 -0
- package/dist/types/components/sd-barcode-input/sd-barcode-input.d.ts +1 -0
- package/dist/types/components/sd-button-v2/sd-button-v2.d.ts +1 -0
- package/dist/types/components/sd-checkbox/sd-checkbox.config.d.ts +3 -0
- package/dist/types/components/sd-checkbox/sd-checkbox.d.ts +2 -0
- package/dist/types/components/sd-circle-progress/sd-circle-progress.config.d.ts +9 -0
- package/dist/types/components/sd-circle-progress/sd-circle-progress.d.ts +8 -0
- package/dist/types/components/sd-date-picker/sd-date-picker.d.ts +1 -0
- package/dist/types/components/sd-date-range-picker/sd-date-range-picker.d.ts +1 -0
- package/dist/types/components/sd-dropdown-button/sd-dropdown-button.config.d.ts +1 -0
- package/dist/types/components/sd-field/sd-field.config.d.ts +9 -0
- package/dist/types/components/sd-field/sd-field.d.ts +3 -0
- package/dist/types/components/sd-file-picker/sd-file-picker.d.ts +1 -0
- package/dist/types/components/sd-ghost-button/sd-ghost-button.config.d.ts +1 -1
- package/dist/types/components/sd-input/sd-input.d.ts +1 -0
- package/dist/types/components/sd-loading-container/sd-loading-container.config.d.ts +4 -0
- package/dist/types/components/sd-loading-container/sd-loading-container.d.ts +8 -0
- package/dist/types/components/sd-loading-modal/sd-loading-modal.config.d.ts +25 -0
- package/dist/types/components/sd-loading-modal/sd-loading-modal.d.ts +15 -0
- package/dist/types/components/sd-modal-container/sd-modal-container.config.d.ts +10 -0
- package/dist/types/components/sd-modal-container/sd-modal-container.d.ts +6 -2
- package/dist/types/components/sd-number-input/sd-number-input.config.d.ts +0 -1
- package/dist/types/components/sd-number-input/sd-number-input.d.ts +1 -0
- package/dist/types/components/sd-radio-button/sd-radio-button.config.d.ts +44 -0
- package/dist/types/components/{sd-radio-button-group/sd-radio-button-group.d.ts → sd-radio-button/sd-radio-button.d.ts} +4 -3
- package/dist/types/components/sd-select/sd-select.d.ts +1 -0
- package/dist/types/components/sd-select-group/sd-select-group.d.ts +1 -0
- package/dist/types/components/sd-select-multiple/sd-select-multiple.d.ts +1 -0
- package/dist/types/components/sd-select-multiple-group/sd-select-multiple-group.d.ts +1 -0
- package/dist/types/components/sd-select-v2/sd-select-v2.config.d.ts +1 -0
- package/dist/types/components/sd-select-v2/sd-select-v2.d.ts +1 -0
- package/dist/types/components/sd-switch/sd-switch.config.d.ts +22 -0
- package/dist/types/components/{sd-toggle-button/sd-toggle-button.d.ts → sd-switch/sd-switch.d.ts} +2 -6
- package/dist/types/components/sd-table/constants.d.ts +44 -0
- package/dist/types/components/sd-table/sd-table.d.ts +103 -115
- package/dist/types/components/sd-table/sd-tbody/sd-tbody.d.ts +14 -0
- package/dist/types/components/sd-table/sd-td/sd-td.d.ts +12 -0
- package/dist/types/components/sd-table/sd-thead/sd-thead.d.ts +36 -0
- package/dist/types/components/sd-table/sd-tr/sd-tr.d.ts +34 -0
- package/dist/types/components/sd-textarea/sd-textarea.d.ts +1 -0
- package/dist/types/components/sd-toggle/sd-toggle.config.d.ts +32 -0
- package/dist/types/components/sd-toggle/sd-toggle.d.ts +0 -3
- package/dist/types/components/table-test/table-test.d.ts +46 -0
- package/dist/types/components.d.ts +649 -141
- package/dist/types/index.d.ts +3 -1
- package/dist/types/utils/loading.d.ts +7 -0
- package/dist/types/utils/modal.d.ts +19 -3
- package/hydrate/index.js +2500 -968
- package/hydrate/index.mjs +2500 -968
- package/package.json +1 -1
- package/readme.md +1 -1
- package/dist/cjs/app-globals-V2Kpy_OQ.js +0 -5
- package/dist/cjs/sd-confirm-modal.cjs.entry.js +0 -106
- package/dist/cjs/sd-loading-spinner_3.cjs.entry.js +0 -283
- package/dist/cjs/sd-radio-button-group.cjs.entry.js +0 -57
- package/dist/cjs/sd-select-v2-list-item_2.cjs.entry.js +0 -150
- package/dist/cjs/sd-select-v2-listbox_2.cjs.entry.js +0 -353
- package/dist/cjs/sd-select-v2.config-7xBJQhvx.js +0 -171
- package/dist/cjs/sd-toggle-button.cjs.entry.js +0 -49
- package/dist/collection/components/sd-loading-spinner/sd-loading-spinner.css +0 -44
- package/dist/collection/components/sd-loading-spinner/sd-loading-spinner.js +0 -46
- package/dist/collection/components/sd-radio-button-group/sd-radio-button-group.css +0 -85
- package/dist/collection/components/sd-toggle-button/sd-toggle-button.css +0 -47
- package/dist/components/p-5OtzmjLh.js +0 -1
- package/dist/components/p-BFaIxm6b.js +0 -1
- package/dist/components/p-BP-QKaKz.js +0 -1
- package/dist/components/p-BSZadK9N.js +0 -1
- package/dist/components/p-BbtO5CEW.js +0 -1
- package/dist/components/p-BxPyZJaz.js +0 -1
- package/dist/components/p-C-qSDgVU.js +0 -1
- package/dist/components/p-C4i826lM.js +0 -1
- package/dist/components/p-CEa1HSpw.js +0 -1
- package/dist/components/p-CYRGa0VL.js +0 -1
- package/dist/components/p-ClgihpRm.js +0 -1
- package/dist/components/p-D-Y0-FQk.js +0 -1
- package/dist/components/p-D-pFdq6g.js +0 -1
- package/dist/components/p-DPipeCRI.js +0 -1
- package/dist/components/p-DSYw-7RA.js +0 -1
- package/dist/components/p-DXAB0k9r.js +0 -1
- package/dist/components/p-mO5GcwI3.js +0 -1
- package/dist/components/sd-loading-spinner.js +0 -1
- package/dist/components/sd-radio-button-group.js +0 -1
- package/dist/components/sd-toggle-button.js +0 -1
- package/dist/design-system/p-00207f08.entry.js +0 -1
- package/dist/design-system/p-067b0b3c.entry.js +0 -1
- package/dist/design-system/p-0e6f5a99.entry.js +0 -1
- package/dist/design-system/p-22a4972a.entry.js +0 -1
- package/dist/design-system/p-27df33c1.entry.js +0 -1
- package/dist/design-system/p-3ac6a626.entry.js +0 -1
- package/dist/design-system/p-6610c16b.entry.js +0 -1
- package/dist/design-system/p-739ac181.entry.js +0 -1
- package/dist/design-system/p-7dce4241.entry.js +0 -1
- package/dist/design-system/p-7e4c0a36.entry.js +0 -1
- package/dist/design-system/p-8b5b2866.entry.js +0 -1
- package/dist/design-system/p-90f51f65.entry.js +0 -1
- package/dist/design-system/p-C3eQSZx-.js +0 -1
- package/dist/design-system/p-C4i826lM.js +0 -1
- package/dist/design-system/p-DQuL1Twl.js +0 -1
- package/dist/design-system/p-DsU722JF.js +0 -2
- package/dist/design-system/p-a6bc8512.entry.js +0 -1
- package/dist/design-system/p-afeb740a.entry.js +0 -1
- package/dist/design-system/p-b3e0e6f4.entry.js +0 -1
- package/dist/design-system/p-ba90dc5f.entry.js +0 -1
- package/dist/design-system/p-bad88292.entry.js +0 -1
- package/dist/design-system/p-cbb5575d.entry.js +0 -1
- package/dist/design-system/p-ce6a0b0f.entry.js +0 -1
- package/dist/design-system/p-d07448fe.entry.js +0 -1
- package/dist/design-system/p-d1a94401.entry.js +0 -1
- package/dist/design-system/p-d5b5cfc7.entry.js +0 -1
- package/dist/design-system/p-d75e0dc0.entry.js +0 -1
- package/dist/design-system/p-dee605b1.entry.js +0 -1
- package/dist/design-system/p-e9ed9c00.entry.js +0 -1
- package/dist/design-system/p-f8567970.entry.js +0 -1
- package/dist/design-system/p-fa22f13c.entry.js +0 -1
- package/dist/design-system/p-fa8b64c2.entry.js +0 -1
- package/dist/design-system/p-fbac6160.entry.js +0 -1
- package/dist/design-system/p-mO5GcwI3.js +0 -1
- package/dist/esm/app-globals-DQuL1Twl.js +0 -3
- package/dist/esm/sd-confirm-modal.entry.js +0 -104
- package/dist/esm/sd-loading-spinner_3.entry.js +0 -279
- package/dist/esm/sd-radio-button-group.entry.js +0 -55
- package/dist/esm/sd-select-v2-list-item_2.entry.js +0 -147
- package/dist/esm/sd-select-v2-listbox_2.entry.js +0 -350
- package/dist/esm/sd-select-v2.config-C3eQSZx-.js +0 -158
- package/dist/esm/sd-toggle-button.entry.js +0 -47
- package/dist/types/components/sd-loading-spinner/sd-loading-spinner.d.ts +0 -5
|
@@ -1 +1 @@
|
|
|
1
|
-
import{p as r,H as s,h as e,t}from"./p-
|
|
1
|
+
import{p as r,H as s,h as e,t}from"./p-DuYi4aqj.js";const o=r(class extends s{constructor(r){super(),!1!==r&&this.__registerHost()}type="bar";error=!1;percentage=0;size=80;strokeWidth=12;label;statusColor={default:"#aaaaaa",progress:"#0075ff",complete:"#12B553",error:"#FB4444"};get progressPercentage(){return this.error?100:this.percentage}get progressStatus(){if(this.error)return"error";switch(this.percentage){case 100:return"complete";case 0:return"default";default:return"progress"}}get progressColor(){return this.statusColor[this.progressStatus]}render(){return e("div",{key:"3afe47c0dd65ddb5a03c15591430febaa8947417",style:{"--progress-color":this.progressColor,"--progress-percentage":this.progressPercentage+"%"}},"bar"===this.type?this.renderBarProgress():this.renderSpinnerProgress(),this.label&&e("div",{key:"d5bf1e43002f7b16f5b609e9b3cb7cc9d417a246",class:"sd-progress__label"},this.label))}renderBarProgress(){return e("div",{class:"sd-progress__bar sd-progress__bar--"+this.progressStatus},e("div",{class:["sd-progress__bar__percent",this.progressPercentage<100?"proceed":""].join(" ")}),e("div",{class:"sd-progress__bar__indicator sd-progress__bar__indicator--left"},this.progressPercentage,"%"),e("div",{class:"sd-progress__bar__indicator sd-progress__bar__indicator--right"},this.progressPercentage,"%"))}renderSpinnerProgress(){const r=(this.size-this.strokeWidth)/2,s=2*Math.PI*r,t=s-this.progressPercentage/100*s,o=this.size+"px",i=this.size/2+"px";return e("div",{class:"sd-progress__spinner sd-progress__spinner--"+this.progressStatus},e("svg",{width:o,height:o},e("circle",{cx:i,cy:i,r,stroke:"#EEEEEE","stroke-width":this.strokeWidth,fill:"transparent"}),e("circle",{cx:i,cy:i,r,stroke:this.progressColor,"stroke-width":this.strokeWidth,fill:"transparent","stroke-dasharray":s,"stroke-dashoffset":t,"stroke-linecap":"round",class:"transition-all duration-500"})),e("strong",{class:"sd-progress__spinner__label"},this.progressPercentage," %"))}static get style(){return"sd-progress{display:block}sd-progress .sd-progress__bar{position:relative;width:100%;height:20px;overflow:hidden;border-radius:4px;background-color:#EEEEEE;text-align:center}sd-progress .sd-progress__bar__percent{width:var(--progress-percentage);height:100%;border-radius:4px;background-color:var(--progress-color, #0075FF);transition:all 0.5s}sd-progress .sd-progress__bar__percent.proceed{border-top-right-radius:50%}sd-progress .sd-progress__bar__indicator{position:absolute;left:0;top:0;height:20px;width:100%;background-color:#EEEEEE;font-size:12px;font-weight:700;line-height:20px;z-index:1}sd-progress .sd-progress__bar__indicator--left{color:var(--progress-color, #0075FF);clip-path:inset(0 0 0 var(--progress-percentage))}sd-progress .sd-progress__bar__indicator--right{color:white;background-color:var(--progress-color, #0075FF);clip-path:inset(0 calc(100% - var(--progress-percentage)) 0 0)}sd-progress .sd-progress__spinner{display:flex;flex-direction:column;align-items:center;justify-content:center}sd-progress .sd-progress__spinner svg{transform:rotate(-90deg)}sd-progress .sd-progress__spinner__label{margin-top:8px;font-size:16px;color:var(--progress-color, #0075FF)}sd-progress .sd-progress__label{margin-top:4px;font-size:12px;color:#222222;text-align:center}"}},[512,"sd-progress",{type:[1],error:[4],percentage:[2],size:[2],strokeWidth:[2,"stroke-width"],label:[1]}]),i=o,a=function(){"undefined"!=typeof customElements&&["sd-progress"].forEach((r=>{"sd-progress"===r&&(customElements.get(t(r))||customElements.define(t(r),o))}))};export{i as SdProgress,a as defineCustomElement}
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
import type { Components, JSX } from "../types/components";
|
|
2
|
+
|
|
3
|
+
interface SdRadioButton extends Components.SdRadioButton, HTMLElement {}
|
|
4
|
+
export const SdRadioButton: {
|
|
5
|
+
prototype: SdRadioButton;
|
|
6
|
+
new (): SdRadioButton;
|
|
7
|
+
};
|
|
8
|
+
/**
|
|
9
|
+
* Used to define this component and all nested components recursively.
|
|
10
|
+
*/
|
|
11
|
+
export const defineCustomElement: () => void;
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
import{p as t,H as o,c as e,h as d,t as i}from"./p-DuYi4aqj.js";var r={height:"24",paddingX:"8",typography:{fontFamily:"Pretendard Variable, Pretendard, -apple-system, BlinkMacSystemFont, system-ui, Segoe UI, Apple SD Gothic Neo, Noto Sans KR, Malgun Gothic, Apple Color Emoji, Segoe UI Emoji, sans-serif",fontSize:"12",fontWeight:"500",textDecoration:"none",lineHeight:"20"}},a={height:"28",paddingX:"12",typography:{fontFamily:"Pretendard Variable, Pretendard, -apple-system, BlinkMacSystemFont, system-ui, Segoe UI, Apple SD Gothic Neo, Noto Sans KR, Malgun Gothic, Apple Color Emoji, Segoe UI Emoji, sans-serif",fontSize:"12",fontWeight:"500",textDecoration:"none",lineHeight:"20"}},n="4",s={width:"1",default:"#CCCCCC",select:"#0075FF",disabled:"#CCCCCC"},b={default:"#FFFFFF",hover:"#0075FF",select:"#FFFFFF",disabled:"#E1E1E1"},u={default:"#555555",hover:"#FFFFFF",select:"#0075FF",disabled:"#888888"},l={gap:"-1"};const c={xs:{height:Number(r.height),paddingX:Number(r.paddingX),fontSize:Number(r.typography.fontSize),lineHeight:Number(r.typography.lineHeight),fontWeight:r.typography.fontWeight,fontFamily:r.typography.fontFamily,textDecoration:r.typography.textDecoration},sm:{height:Number(a.height),paddingX:Number(a.paddingX),fontSize:Number(a.typography.fontSize),lineHeight:Number(a.typography.lineHeight),fontWeight:a.typography.fontWeight,fontFamily:a.typography.fontFamily,textDecoration:a.typography.textDecoration}},h=Number(n),p=Number(s.width),g=Number(l.gap),f={border:{default:s.default,select:s.select,disabled:s.disabled},bg:{default:b.default,hover:b.hover,select:b.select,disabled:b.disabled},content:{default:u.default,hover:u.hover,select:u.select,disabled:u.disabled}},m=t(class extends o{constructor(t){super(),!1!==t&&this.__registerHost(),this.change=e(this,"sdUpdate",7)}value;options=[];size="sm";disabled=!1;name;change;handleRadioChange=(t,o)=>{this.disabled||o||(this.value=t,this.change.emit(t))};isOptionSelected(t){return this.value===t.value}isOptionDisabled(t){return this.disabled||!!t.disabled}getButtonClasses(t){const o=["sd-radio-button__option",this.isOptionSelected(t)?"sd-radio-button__option--selected":"sd-radio-button__option--unselected"];return this.isOptionDisabled(t)&&o.push("sd-radio-button__option--disabled"),o.join(" ")}getGroupClasses(){return["sd-radio-button","sd-radio-button--"+this.size].join(" ")}_groupName;get groupName(){return this._groupName||(this._groupName=this.name||"sd-radio-button-"+crypto.randomUUID()),this._groupName}render(){const t=c[this.size],o={"--sd-radio-button-height":t.height+"px","--sd-radio-button-padding-x":t.paddingX+"px","--sd-radio-button-font-family":t.fontFamily,"--sd-radio-button-font-weight":t.fontWeight,"--sd-radio-button-font-size":t.fontSize+"px","--sd-radio-button-line-height":t.lineHeight+"px","--sd-radio-button-text-decoration":t.textDecoration,"--sd-radio-button-radius":h+"px","--sd-radio-button-border-width":p+"px","--sd-radio-button-group-gap":g+"px","--sd-radio-button-border-default":f.border.default,"--sd-radio-button-border-select":f.border.select,"--sd-radio-button-border-disabled":f.border.disabled,"--sd-radio-button-bg-default":f.bg.default,"--sd-radio-button-bg-hover":f.bg.hover,"--sd-radio-button-bg-select":f.bg.select,"--sd-radio-button-bg-disabled":f.bg.disabled,"--sd-radio-button-content-default":f.content.default,"--sd-radio-button-content-hover":f.content.hover,"--sd-radio-button-content-select":f.content.select,"--sd-radio-button-content-disabled":f.content.disabled};return d("div",{key:"05bda776e2747aca3d7fca0286e3fa4062d7669b",class:this.getGroupClasses(),style:o,role:"radiogroup","aria-disabled":""+this.disabled},this.options.map((t=>{const o=this.isOptionSelected(t),e=this.isOptionDisabled(t);return d("label",{key:"radio-"+t.value,class:this.getButtonClasses(t),"aria-label":t.label||"radio option","data-label":t.label},d("input",{type:"radio",name:this.groupName,value:""+t.value,checked:o,disabled:e,onInput:()=>this.handleRadioChange(t.value,t.disabled)}),t.label&&d("span",{class:"sd-radio-button__label"},t.label))})))}static get style(){return"sd-radio-button{display:inline-flex;width:fit-content;height:fit-content}.sd-radio-button{display:inline-flex;flex-flow:row nowrap;gap:0}.sd-radio-button__option{display:flex;align-items:center;justify-content:center;position:relative;box-sizing:border-box;height:var(--sd-radio-button-height);padding:0 var(--sd-radio-button-padding-x);border:var(--sd-radio-button-border-width) solid var(--sd-radio-button-border-default);background-color:var(--sd-radio-button-bg-default);color:var(--sd-radio-button-content-default);font-family:var(--sd-radio-button-font-family);font-weight:var(--sd-radio-button-font-weight);font-size:var(--sd-radio-button-font-size);line-height:var(--sd-radio-button-line-height);text-decoration:var(--sd-radio-button-text-decoration);cursor:pointer;user-select:none;-webkit-user-select:none;transition:background-color 0.2s ease, border-color 0.2s ease, color 0.2s ease}.sd-radio-button__option input{display:none}.sd-radio-button__option:not(:first-child){margin-left:var(--sd-radio-button-group-gap)}.sd-radio-button__option:first-child{border-top-left-radius:var(--sd-radio-button-radius);border-bottom-left-radius:var(--sd-radio-button-radius)}.sd-radio-button__option:last-child{border-top-right-radius:var(--sd-radio-button-radius);border-bottom-right-radius:var(--sd-radio-button-radius)}.sd-radio-button__option:only-child{border-radius:var(--sd-radio-button-radius)}.sd-radio-button__option--selected{background-color:var(--sd-radio-button-bg-select);border-color:var(--sd-radio-button-border-select);color:var(--sd-radio-button-content-select);z-index:1}.sd-radio-button__option:hover:not(.sd-radio-button__option--disabled){background-color:var(--sd-radio-button-bg-hover);border-color:var(--sd-radio-button-border-select);color:var(--sd-radio-button-content-hover);z-index:2}.sd-radio-button__option--disabled{background-color:var(--sd-radio-button-bg-disabled);border-color:var(--sd-radio-button-border-disabled);color:var(--sd-radio-button-content-disabled);cursor:not-allowed}.sd-radio-button__label{user-select:none;-webkit-user-select:none}"}},[512,"sd-radio-button",{value:[1032],options:[1040],size:[1],disabled:[4],name:[1]}]),v=m,_=function(){"undefined"!=typeof customElements&&["sd-radio-button"].forEach((t=>{"sd-radio-button"===t&&(customElements.get(i(t))||customElements.define(i(t),m))}))};export{v as SdRadioButton,_ as defineCustomElement}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{p as d,H as r,c as i,h as o,t as e}from"./p-
|
|
1
|
+
import{p as d,H as r,c as i,h as o,t as e}from"./p-DuYi4aqj.js";import{d as a}from"./p-CU095QAR.js";const s=d(class extends r{constructor(d){super(),!1!==d&&this.__registerHost(),this.change=i(this,"sdUpdate",7)}value;options=[];direction="vertical";disabled=!1;groupName;change;valueChanged(d){this.value=d}handleRadioChange=d=>{if(this.disabled)return;const r=this.options.find((r=>r.value+""==d+"")),i=r?r.value:d;this.value=i,this.change?.emit(i)};getGroupClasses(){return["sd-radio-group","sd-radio-group--"+this.direction].join(" ")}render(){return o("div",{key:"4c34a3ab6790818e17c8452fa3233e7c720b8246",class:this.getGroupClasses(),role:"radiogroup"},this.options.map((d=>o("sd-radio",{key:"radio-"+d.value,val:d.value+"",value:this.value+"",label:d.label,disabled:this.disabled||!!d.disabled,onSdUpdate:({detail:d})=>this.handleRadioChange(d)}))))}static get watchers(){return{value:[{valueChanged:0}]}}static get style(){return'sd-radio{display:inline-flex;width:fit-content;height:var(--sd-radio-line-height);line-height:0}sd-radio .sd-radio{cursor:pointer;display:inline-flex;align-items:center;gap:var(--sd-radio-gap);height:var(--sd-radio-line-height);max-height:var(--sd-radio-line-height)}sd-radio .sd-radio>input{position:absolute;width:0;height:0;opacity:0;pointer-events:none}sd-radio .sd-radio>input:focus-visible+.sd-radio__circle{box-shadow:0 0 0 2px white, 0 0 0 4px var(--sd-radio-checked-border);outline:none}sd-radio .sd-radio__circle{position:relative;width:var(--sd-radio-size);height:var(--sd-radio-size);border-radius:50%;border:var(--sd-radio-border-width) solid var(--sd-radio-unchecked-border);box-sizing:border-box;background:var(--sd-radio-unchecked-bg);display:inline-flex;flex-shrink:0}sd-radio .sd-radio__label{font-size:var(--sd-radio-font-size);font-weight:var(--sd-radio-font-weight);color:var(--sd-radio-label-color);line-height:var(--sd-radio-line-height)}sd-radio .sd-radio:hover:not(.sd-radio--disabled) .sd-radio__circle{background:var(--sd-radio-unchecked-bg-hover);border-color:var(--sd-radio-unchecked-border-hover)}sd-radio .sd-radio--checked .sd-radio__circle{border-color:var(--sd-radio-checked-border)}sd-radio .sd-radio--checked .sd-radio__circle::after{content:"";position:absolute;top:50%;left:50%;transform:translate(-50%, -50%);width:10px;height:10px;border-radius:50%;background:var(--sd-radio-checked-dot)}sd-radio .sd-radio--disabled{cursor:not-allowed}sd-radio .sd-radio--disabled .sd-radio__circle{background:var(--sd-radio-disabled-bg);border-color:var(--sd-radio-disabled-border)}sd-radio .sd-radio--disabled.sd-radio--checked .sd-radio__circle::after{background:var(--sd-radio-disabled-dot)}sd-radio-group{display:inline-block}sd-radio-group .sd-radio-group{display:flex}sd-radio-group .sd-radio-group--vertical{flex-direction:column;gap:8px}sd-radio-group .sd-radio-group--horizontal{flex-direction:row;align-items:center;gap:20px}'}},[512,"sd-radio-group",{value:[1032],options:[1040],direction:[1],disabled:[4],groupName:[1,"group-name"]},void 0,{value:[{valueChanged:0}]}]),t=s,n=function(){"undefined"!=typeof customElements&&["sd-radio-group","sd-radio"].forEach((d=>{switch(d){case"sd-radio-group":customElements.get(e(d))||customElements.define(e(d),s);break;case"sd-radio":customElements.get(e(d))||a()}}))};export{t as SdRadioGroup,n as defineCustomElement}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{S as o,d as s}from"./p-
|
|
1
|
+
import{S as o,d as s}from"./p-CU095QAR.js";const p=o,r=s;export{p as SdRadio,r as defineCustomElement}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{S as o,d as s}from"./p-
|
|
1
|
+
import{S as o,d as s}from"./p-BkUclgga.js";const a=o,p=s;export{a as SdSelectDropdown,p as defineCustomElement}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{p as e,c as t,h as s,F as o,t as i}from"./p-D-pFdq6g.js";import{n as r}from"./p-CCwNgVmC.js";import{B as n}from"./p-lKwhftf9.js";import{S as l}from"./p-Cy6HMEsK.js";import{d as a}from"./p-DPipeCRI.js";import{d}from"./p-DXAB0k9r.js";import{d as p}from"./p-CEa1HSpw.js";import{d as h}from"./p-AdSqif48.js";import{d as c}from"./p-BFaIxm6b.js";import{d as u}from"./p-DSYw-7RA.js";import{d as g}from"./p-ClgihpRm.js";import{d as m}from"./p-DdBIc8AE.js";import{d as f}from"./p-DlujHEXS.js";import{d as w}from"./p-Ci3yfjxH.js";import{d as b}from"./p-BUAwjF_Z.js";const x=e(class extends n{constructor(e){super(!1),!1!==e&&this.__registerHost(),this.update=t(this,"sdUpdate",7),this.dropDownShow=t(this,"sdDropDownShow",7)}get el(){return this}value=null;options=[];placeholder="선택";optionPlaceholder="선택지가 없습니다.";width="200px";dropdownHeight="260px";autoFocus=!1;disabled=!1;clearable=!1;searchable=!1;label="";addonLabel="";icon=void 0;labelTooltip="";labelTooltipProps=null;rules=[];error=!1;containerStyle={};triggerStyle={};dropdownStyle={};optionStyle={};labelStyle={};optionRenderer;filteredOptions=[];isOpen=!1;searchText=null;itemIndex=-1;isScrolled=!1;isDropdownReady=!1;update;dropDownShow;selectRef;searchRef;triggerRef;optionRef;dropdownRef;formField;dropDownWidth="200px";name=r();async sdOpen(){await new Promise((e=>setTimeout(e,0))),this.isOpen=!0}async sdValidate(){this.formField?.sdValidate()}async sdReset(){this.formField?.sdReset()}async sdResetValidate(){this.formField?.sdResetValidation()}async sdFocus(){this.formField?.sdFocus()}optionsChanged(){this.filteredOptions=this.options,this.filterOptions()}searchTextChanged(){this.filterOptions()}async itemIndexChanged(e,t){if(this.searchable){const e=await this.getNativeInputElement();if(-1===this.itemIndex)return void e?.focus({preventScroll:!0});e?.matches(":focus")&&e?.blur()}const s=Array.from(this.dropdownRef?.querySelectorAll("sd-select-option-group")||[]),o=s?.[this.itemIndex];o&&this.isOpen&&(this.optionRef=o,await this.optionRef.isDisabled()?e>t?this.itemIndex++:this.itemIndex--:this.scrollToOption(o))}async isOpenChanged(){this.onDropdownToggle(this.isOpen),this.dropDownShow?.emit({isOpen:this.isOpen}),this.isDropdownReady=!1,!1!==this.isOpen?requestAnimationFrame((()=>{requestAnimationFrame((async()=>{const e=this.getSelectedOption();if(e){const t=this.filteredOptions.indexOf(e),s=Array.from(this.dropdownRef?.querySelectorAll("sd-select-option-group")||[]),o=Math.min(t+4,s.length-1),i=s?.[o];i&&this.scrollToOption(i)}if(this.isDropdownReady=!0,this.searchable){const e=await this.getNativeInputElement();e&&requestAnimationFrame((()=>{e.focus({preventScroll:!0})}))}}))})):await(this.formField?.sdValidate())}componentWillLoad(){this.filteredOptions=this.options,this.dropDownWidth=this.width,this.initializeEvent()}componentDidLoad(){this.autoFocus&&this.selectRef?.focus()}componentDidRender(){const e=this.triggerRef,t=e?.getBoundingClientRect();this.dropDownWidth=t?.width?t.width+"px":this.width}disconnectedCallback(){this.cleanupEvent()}handleDocumentClick(e){this.selectRef?.contains(e.target)||(this.isOpen=!1)}handleDocumentKeydown(e){if(e.stopPropagation(),["ArrowDown","ArrowUp","Enter","Escape"].includes(e.key))switch(e.preventDefault(),e.key){case"ArrowDown":case"ArrowUp":const t=new l(this.searchable,this.filteredOptions).getNextIndex(this.itemIndex,e.key);this.itemIndex=t;break;case"Enter":const s=this.filteredOptions[this.itemIndex];s&&!s.disabled&&"item"===s.type&&this.handleOptionSelection(s);break;case"Escape":this.isOpen=!1}}handleTriggerClick=e=>{e.stopPropagation(),this.disabled||(this.isOpen=!this.isOpen,this.dropDownShow?.emit({isOpen:this.isOpen}))};handleOptionClick=e=>{const{option:t,event:s}=e;s.stopPropagation(),"item"===t.type&&this.handleOptionSelection(t)};filterOptions(){if(!this.searchText||""===this.searchText.trim())return void(this.filteredOptions=this.options);const e=this.searchText.toLowerCase(),t=new Set;this.options.forEach((s=>{s.label.toLowerCase().includes(e)&&(t.add(s),this.addParentGroups(s,t))})),this.filteredOptions=this.options.filter((e=>t.has(e)))}addParentGroups(e,t){if(!e.parent)return;const s=this.options.find((t=>t.value===e.parent));s&&!t.has(s)&&(t.add(s),this.addParentGroups(s,t))}getSelectedOption(){return this.options.find((e=>e.value===this.value))}handleDropdownScroll=e=>{this.isScrolled=e.target.scrollTop>0};async getNativeInputElement(){return this.searchRef?this.searchRef.sdGetNativeElement():null}handleOptionSelection=e=>{if(!e||e.disabled)return;this.value=e.value,this.isOpen=!1;const t=this.getSelectedOption();this.update?.emit({value:t?.value||null,option:t||null})};closeDropdown(){this.isOpen=!1}async scrollToOption(e){this.dropdownRef&&e&&requestAnimationFrame((()=>{const t=this.dropdownRef,s=e.offsetTop,o=e.offsetHeight,i=t.scrollTop,r=t.clientHeight,n=t.querySelector(".sd-select-group__search-container"),l=n?n.offsetHeight:0,a=r-l,d=i+r;s<i+l?t.scrollTo({top:s-l,behavior:"instant"}):s+o>d&&t.scrollTo({top:s+o-a-l,behavior:"instant"})}))}render(){return s("sd-field",{key:"205ef7aabb819067026cf0f0dfa2bc62f3e1d3dc",label:this.label,name:this.name,rules:this.rules,error:this.error,disabled:this.disabled,icon:this.icon,addonLabel:this.addonLabel,labelTooltip:this.labelTooltip,labelTooltipProps:this.labelTooltipProps,ref:e=>this.formField=e,style:{"--field-width":this.width||"200px"}},s("div",{key:"b6db700cb68d1eaa1a99f959d3fd78c0e2088c3d",class:{"sd-select-group":!0,"sd-select-group--open":this.isOpen,"sd-select-group--disabled":this.disabled,"sd-select-group--label":!!this.label},ref:e=>this.selectRef=e},this.renderTrigger(),this.renderDropdown()))}renderTrigger(){const e=this.getSelectedOption();return s("div",{class:"sd-select-group__trigger",tabindex:this.disabled?-1:0,onClick:this.handleTriggerClick,style:this.triggerStyle,ref:e=>this.triggerRef=e},s("span",{class:"sd-select-group__value"},e?e.label:this.placeholder),this.clearable&&e&&!this.disabled&&s("sd-icon",{key:"close-icon",name:"close",size:10,color:"grey_65",class:"sd-select-group__clear",onClick:async e=>{e.stopPropagation(),this.value=null,this.update?.emit({value:null,option:null}),await(this.formField?.sdValidate())}}),s("sd-icon",{key:"arrow-icon",name:"arrowDown",color:"grey_65",class:{"sd-select-group__arrow":!0,"sd-select-group__arrow--open":this.isOpen}}))}renderDropdown(){return!1===this.isOpen?null:s("sd-portal",{open:this.isOpen,parentRef:this.selectRef,onSdClose:this.closeDropdown},s("div",{style:{width:"0",height:"0",overflow:"visible"}},s("div",{class:{"sd-select-group__dropdown":!0,"sd-select-group__dropdown--ready":this.isDropdownReady},style:{"--select-width":this.dropDownWidth||"200px","--select-dropdown-height":this.dropdownHeight||"260px",...this.dropdownStyle},onScroll:this.handleDropdownScroll,ref:e=>this.dropdownRef=e},this.searchable&&s("sd-select-search-input",{ref:e=>this.searchRef=e,isScrolled:this.isScrolled,searchText:this.searchText,onSdSearchInput:e=>this.searchText=e.detail||"",onSdSearchFocus:()=>this.itemIndex=-1}),this.filteredOptions.length>0?s(o,null,this.filteredOptions.map(((e,t)=>s("slot",{name:"option-"+e.value},s("sd-select-option-group",{option:e,index:t,isSelected:"item"===e.type&&e.value===this.value,isFocused:t===this.itemIndex,optionStyle:this.optionStyle,onOptionClick:({detail:t})=>{"item"===e.type&&this.handleOptionClick(t)},useCheckbox:!1,useIndicator:!1}))))):s("slot",{name:"option-placeholder"},s("div",{class:"sd-select-group__option-placeholder",style:this.optionStyle},this.optionPlaceholder)))))}static get watchers(){return{options:[{optionsChanged:0}],searchText:[{searchTextChanged:0}],itemIndex:[{itemIndexChanged:0}],isOpen:[{isOpenChanged:0}]}}static get style(){return".sd-select-group__dropdown .sd-select-group__option-placeholder{height:48px;display:flex;align-items:center;padding:8px 16px;font-size:12px;line-height:0;text-align:left;color:#888888}sd-select-group{display:inline-flex;flex-flow:column nowrap;width:fit-content;height:fit-content}sd-select-group:focus,sd-select-group:focus-visible,sd-select-group:focus-within{outline:none !important}sd-select-group .sd-select-group{width:100%}sd-select-group .sd-select-group .sd-select-group__trigger{padding:4px 28px 4px 12px;display:flex;width:100%;height:100%;align-items:center}sd-select-group .sd-select-group .sd-select-group__trigger .sd-select-group__value{flex:1;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;line-height:20px;font-size:12px;font-weight:400;text-align:left}sd-select-group .sd-select-group .sd-select-group__trigger .sd-select-group__clear{margin:0 4px;width:8px;height:8px;background-color:transparent;outline:none;border:none}sd-select-group .sd-select-group .sd-select-group__arrow{position:absolute;top:8px;right:8px;width:12px;height:12px;color:#888888;transition:transform 0.3s ease}sd-select-group .sd-select-group .sd-select-group__arrow--open{transform:rotate(180deg)}.sd-select-group__dropdown{overflow:auto;width:var(--select-width, 200px);max-height:var(--select-dropdown-height, 260px);padding-bottom:2px;background-color:white;box-shadow:2px 2px 12px 2px rgba(0, 0, 0, 0.1);border-radius:4px;overflow-y:auto;color:#333333;opacity:0.5;transition:opacity 0.15s ease-in}.sd-select-group__dropdown--ready{opacity:1}"}},[772,"sd-select-group",{value:[1032],options:[1040],placeholder:[1],optionPlaceholder:[1,"option-placeholder"],width:[1],dropdownHeight:[1,"dropdown-height"],autoFocus:[4,"auto-focus"],disabled:[4],clearable:[4],searchable:[4],label:[1],addonLabel:[1,"addon-label"],icon:[16],labelTooltip:[1,"label-tooltip"],labelTooltipProps:[16],rules:[16],error:[4],containerStyle:[16],triggerStyle:[16],dropdownStyle:[16],optionStyle:[16],labelStyle:[16],optionRenderer:[16],filteredOptions:[32],isOpen:[32],searchText:[32],itemIndex:[32],isScrolled:[32],isDropdownReady:[32],sdOpen:[64],sdValidate:[64],sdReset:[64],sdResetValidate:[64],sdFocus:[64]},void 0,{options:[{optionsChanged:0}],searchText:[{searchTextChanged:0}],itemIndex:[{itemIndexChanged:0}],isOpen:[{isOpenChanged:0}]}]),y=x,_=function(){"undefined"!=typeof customElements&&["sd-select-group","sd-button","sd-checkbox","sd-field","sd-floating-portal","sd-ghost-button","sd-icon","sd-input","sd-portal","sd-select-option-group","sd-select-search-input","sd-tooltip"].forEach((e=>{switch(e){case"sd-select-group":customElements.get(i(e))||customElements.define(i(e),x);break;case"sd-button":customElements.get(i(e))||a();break;case"sd-checkbox":customElements.get(i(e))||d();break;case"sd-field":customElements.get(i(e))||p();break;case"sd-floating-portal":customElements.get(i(e))||h();break;case"sd-ghost-button":customElements.get(i(e))||c();break;case"sd-icon":customElements.get(i(e))||u();break;case"sd-input":customElements.get(i(e))||g();break;case"sd-portal":customElements.get(i(e))||m();break;case"sd-select-option-group":customElements.get(i(e))||f();break;case"sd-select-search-input":customElements.get(i(e))||w();break;case"sd-tooltip":customElements.get(i(e))||b()}}))};export{y as SdSelectGroup,_ as defineCustomElement}
|
|
1
|
+
import{p as e,c as t,h as s,F as o,t as i}from"./p-DuYi4aqj.js";import{n as r}from"./p-CCwNgVmC.js";import{B as l}from"./p-B6RvTdqt.js";import{S as n}from"./p-Cy6HMEsK.js";import{d}from"./p-BLC3AWW8.js";import{d as a}from"./p-TMuoVuhE.js";import{d as p}from"./p-BjjrNz4C.js";import{d as h}from"./p-DxzgCf_d.js";import{d as c}from"./p-B1S4ybd6.js";import{d as u}from"./p-CGssy8eb.js";import{d as g}from"./p-DC9KYl3L.js";import{d as m}from"./p-BgRPWxrz.js";import{d as f}from"./p-6cueWz-l.js";import{d as w}from"./p-xmvTLf74.js";import{d as b}from"./p-BZ7V5xV5.js";const x=e(class extends l{constructor(e){super(!1),!1!==e&&this.__registerHost(),this.update=t(this,"sdUpdate",7),this.dropDownShow=t(this,"sdDropDownShow",7)}get el(){return this}value=null;options=[];placeholder="선택";optionPlaceholder="선택지가 없습니다.";width="200px";dropdownHeight="260px";autoFocus=!1;disabled=!1;clearable=!1;searchable=!1;label="";labelWidth="";addonLabel="";icon=void 0;labelTooltip="";labelTooltipProps=null;rules=[];error=!1;containerStyle={};triggerStyle={};dropdownStyle={};optionStyle={};labelStyle={};optionRenderer;filteredOptions=[];isOpen=!1;searchText=null;itemIndex=-1;isScrolled=!1;isDropdownReady=!1;update;dropDownShow;selectRef;searchRef;triggerRef;optionRef;dropdownRef;formField;dropDownWidth="200px";name=r();async sdOpen(){await new Promise((e=>setTimeout(e,0))),this.isOpen=!0}async sdValidate(){this.formField?.sdValidate()}async sdReset(){this.formField?.sdReset()}async sdResetValidate(){this.formField?.sdResetValidation()}async sdFocus(){this.formField?.sdFocus()}optionsChanged(){this.filteredOptions=this.options,this.filterOptions()}searchTextChanged(){this.filterOptions()}async itemIndexChanged(e,t){if(this.searchable){const e=await this.getNativeInputElement();if(-1===this.itemIndex)return void e?.focus({preventScroll:!0});e?.matches(":focus")&&e?.blur()}const s=Array.from(this.dropdownRef?.querySelectorAll("sd-select-option-group")||[]),o=s?.[this.itemIndex];o&&this.isOpen&&(this.optionRef=o,await this.optionRef.isDisabled()?e>t?this.itemIndex++:this.itemIndex--:this.scrollToOption(o))}async isOpenChanged(){this.onDropdownToggle(this.isOpen),this.dropDownShow?.emit({isOpen:this.isOpen}),this.isDropdownReady=!1,!1!==this.isOpen?requestAnimationFrame((()=>{requestAnimationFrame((async()=>{const e=this.getSelectedOption();if(e){const t=this.filteredOptions.indexOf(e),s=Array.from(this.dropdownRef?.querySelectorAll("sd-select-option-group")||[]),o=Math.min(t+4,s.length-1),i=s?.[o];i&&this.scrollToOption(i)}if(this.isDropdownReady=!0,this.searchable){const e=await this.getNativeInputElement();e&&requestAnimationFrame((()=>{e.focus({preventScroll:!0})}))}}))})):await(this.formField?.sdValidate())}componentWillLoad(){this.filteredOptions=this.options,this.dropDownWidth=this.width,this.initializeEvent()}componentDidLoad(){this.autoFocus&&this.selectRef?.focus()}componentDidRender(){const e=this.triggerRef,t=e?.getBoundingClientRect();this.dropDownWidth=t?.width?t.width+"px":this.width}disconnectedCallback(){this.cleanupEvent()}handleDocumentClick(e){this.selectRef?.contains(e.target)||(this.isOpen=!1)}handleDocumentKeydown(e){if(e.stopPropagation(),["ArrowDown","ArrowUp","Enter","Escape"].includes(e.key))switch(e.preventDefault(),e.key){case"ArrowDown":case"ArrowUp":const t=new n(this.searchable,this.filteredOptions).getNextIndex(this.itemIndex,e.key);this.itemIndex=t;break;case"Enter":const s=this.filteredOptions[this.itemIndex];s&&!s.disabled&&"item"===s.type&&this.handleOptionSelection(s);break;case"Escape":this.isOpen=!1}}handleTriggerClick=e=>{e.stopPropagation(),this.disabled||(this.isOpen=!this.isOpen,this.dropDownShow?.emit({isOpen:this.isOpen}))};handleOptionClick=e=>{const{option:t,event:s}=e;s.stopPropagation(),"item"===t.type&&this.handleOptionSelection(t)};filterOptions(){if(!this.searchText||""===this.searchText.trim())return void(this.filteredOptions=this.options);const e=this.searchText.toLowerCase(),t=new Set;this.options.forEach((s=>{s.label.toLowerCase().includes(e)&&(t.add(s),this.addParentGroups(s,t))})),this.filteredOptions=this.options.filter((e=>t.has(e)))}addParentGroups(e,t){if(!e.parent)return;const s=this.options.find((t=>t.value===e.parent));s&&!t.has(s)&&(t.add(s),this.addParentGroups(s,t))}getSelectedOption(){return this.options.find((e=>e.value===this.value))}handleDropdownScroll=e=>{this.isScrolled=e.target.scrollTop>0};async getNativeInputElement(){return this.searchRef?this.searchRef.sdGetNativeElement():null}handleOptionSelection=e=>{if(!e||e.disabled)return;this.value=e.value,this.isOpen=!1;const t=this.getSelectedOption();this.update?.emit({value:t?.value||null,option:t||null})};closeDropdown(){this.isOpen=!1}async scrollToOption(e){this.dropdownRef&&e&&requestAnimationFrame((()=>{const t=this.dropdownRef,s=e.offsetTop,o=e.offsetHeight,i=t.scrollTop,r=t.clientHeight,l=t.querySelector(".sd-select-group__search-container"),n=l?l.offsetHeight:0,d=r-n,a=i+r;s<i+n?t.scrollTo({top:s-n,behavior:"instant"}):s+o>a&&t.scrollTo({top:s+o-d-n,behavior:"instant"})}))}render(){return s("sd-field",{key:"1e6a0f9947f5d137bb65844fe666c07b4eefb2f7",label:this.label,labelWidth:this.labelWidth,name:this.name,rules:this.rules,error:this.error,disabled:this.disabled,icon:this.icon,addonLabel:this.addonLabel,labelTooltip:this.labelTooltip,labelTooltipProps:this.labelTooltipProps,ref:e=>this.formField=e,style:{"--field-width":this.width||"200px"}},s("div",{key:"62dcd2f37c2eda0e51f2e77de36ece6ab592c4ce",class:{"sd-select-group":!0,"sd-select-group--open":this.isOpen,"sd-select-group--disabled":this.disabled,"sd-select-group--label":!!this.label},ref:e=>this.selectRef=e},this.renderTrigger(),this.renderDropdown()))}renderTrigger(){const e=this.getSelectedOption();return s("div",{class:"sd-select-group__trigger",tabindex:this.disabled?-1:0,onClick:this.handleTriggerClick,style:this.triggerStyle,ref:e=>this.triggerRef=e},s("span",{class:"sd-select-group__value"},e?e.label:this.placeholder),this.clearable&&e&&!this.disabled&&s("sd-icon",{key:"close-icon",name:"close",size:10,color:"grey_65",class:"sd-select-group__clear",onClick:async e=>{e.stopPropagation(),this.value=null,this.update?.emit({value:null,option:null}),await(this.formField?.sdValidate())}}),s("sd-icon",{key:"arrow-icon",name:"arrowDown",color:"grey_65",class:{"sd-select-group__arrow":!0,"sd-select-group__arrow--open":this.isOpen}}))}renderDropdown(){return!1===this.isOpen?null:s("sd-portal",{open:this.isOpen,parentRef:this.selectRef,onSdClose:this.closeDropdown},s("div",{style:{width:"0",height:"0",overflow:"visible"}},s("div",{class:{"sd-select-group__dropdown":!0,"sd-select-group__dropdown--ready":this.isDropdownReady},style:{"--select-width":this.dropDownWidth||"200px","--select-dropdown-height":this.dropdownHeight||"260px",...this.dropdownStyle},onScroll:this.handleDropdownScroll,ref:e=>this.dropdownRef=e},this.searchable&&s("sd-select-search-input",{ref:e=>this.searchRef=e,isScrolled:this.isScrolled,searchText:this.searchText,onSdSearchInput:e=>this.searchText=e.detail||"",onSdSearchFocus:()=>this.itemIndex=-1}),this.filteredOptions.length>0?s(o,null,this.filteredOptions.map(((e,t)=>s("slot",{name:"option-"+e.value},s("sd-select-option-group",{option:e,index:t,isSelected:"item"===e.type&&e.value===this.value,isFocused:t===this.itemIndex,optionStyle:this.optionStyle,onOptionClick:({detail:t})=>{"item"===e.type&&this.handleOptionClick(t)},useCheckbox:!1,useIndicator:!1}))))):s("slot",{name:"option-placeholder"},s("div",{class:"sd-select-group__option-placeholder",style:this.optionStyle},this.optionPlaceholder)))))}static get watchers(){return{options:[{optionsChanged:0}],searchText:[{searchTextChanged:0}],itemIndex:[{itemIndexChanged:0}],isOpen:[{isOpenChanged:0}]}}static get style(){return".sd-select-group__dropdown .sd-select-group__option-placeholder{height:48px;display:flex;align-items:center;padding:8px 16px;font-size:12px;line-height:0;text-align:left;color:#888888}sd-select-group{display:inline-flex;flex-flow:column nowrap;width:fit-content;height:fit-content}sd-select-group:focus,sd-select-group:focus-visible,sd-select-group:focus-within{outline:none !important}sd-select-group .sd-select-group{width:100%}sd-select-group .sd-select-group .sd-select-group__trigger{padding:4px 28px 4px 12px;display:flex;width:100%;height:100%;align-items:center;cursor:pointer}.sd-field--disabled sd-select-group .sd-select-group .sd-select-group__trigger{cursor:not-allowed}sd-select-group .sd-select-group .sd-select-group__trigger .sd-select-group__value{flex:1;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;line-height:20px;font-size:12px;font-weight:400;text-align:left}sd-select-group .sd-select-group .sd-select-group__trigger .sd-select-group__clear{margin:0 4px;width:8px;height:8px;background-color:transparent;outline:none;border:none}sd-select-group .sd-select-group .sd-select-group__arrow{position:absolute;top:8px;right:8px;width:12px;height:12px;color:#888888;transition:transform 0.3s ease}sd-select-group .sd-select-group .sd-select-group__arrow--open{transform:rotate(180deg)}.sd-select-group__dropdown{overflow:auto;width:var(--select-width, 200px);max-height:var(--select-dropdown-height, 260px);padding-bottom:2px;background-color:white;box-shadow:2px 2px 12px 2px rgba(0, 0, 0, 0.1);border-radius:4px;overflow-y:auto;color:#333333;opacity:0.5;transition:opacity 0.15s ease-in}.sd-select-group__dropdown--ready{opacity:1}"}},[772,"sd-select-group",{value:[1032],options:[1040],placeholder:[1],optionPlaceholder:[1,"option-placeholder"],width:[1],dropdownHeight:[1,"dropdown-height"],autoFocus:[4,"auto-focus"],disabled:[4],clearable:[4],searchable:[4],label:[1],labelWidth:[8,"label-width"],addonLabel:[1,"addon-label"],icon:[16],labelTooltip:[1,"label-tooltip"],labelTooltipProps:[16],rules:[16],error:[4],containerStyle:[16],triggerStyle:[16],dropdownStyle:[16],optionStyle:[16],labelStyle:[16],optionRenderer:[16],filteredOptions:[32],isOpen:[32],searchText:[32],itemIndex:[32],isScrolled:[32],isDropdownReady:[32],sdOpen:[64],sdValidate:[64],sdReset:[64],sdResetValidate:[64],sdFocus:[64]},void 0,{options:[{optionsChanged:0}],searchText:[{searchTextChanged:0}],itemIndex:[{itemIndexChanged:0}],isOpen:[{isOpenChanged:0}]}]),y=x,_=function(){"undefined"!=typeof customElements&&["sd-select-group","sd-button","sd-checkbox","sd-field","sd-floating-portal","sd-ghost-button","sd-icon","sd-input","sd-portal","sd-select-option-group","sd-select-search-input","sd-tooltip"].forEach((e=>{switch(e){case"sd-select-group":customElements.get(i(e))||customElements.define(i(e),x);break;case"sd-button":customElements.get(i(e))||d();break;case"sd-checkbox":customElements.get(i(e))||a();break;case"sd-field":customElements.get(i(e))||p();break;case"sd-floating-portal":customElements.get(i(e))||h();break;case"sd-ghost-button":customElements.get(i(e))||c();break;case"sd-icon":customElements.get(i(e))||u();break;case"sd-input":customElements.get(i(e))||g();break;case"sd-portal":customElements.get(i(e))||m();break;case"sd-select-option-group":customElements.get(i(e))||f();break;case"sd-select-search-input":customElements.get(i(e))||w();break;case"sd-tooltip":customElements.get(i(e))||b()}}))};export{y as SdSelectGroup,_ as defineCustomElement}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{p as e,c as t,h as s,F as i,t as o}from"./p-D-pFdq6g.js";import{n as l}from"./p-CCwNgVmC.js";import{B as n}from"./p-lKwhftf9.js";import{S as r}from"./p-Cy6HMEsK.js";import{d as p}from"./p-DPipeCRI.js";import{d as h}from"./p-DXAB0k9r.js";import{d as a}from"./p-CEa1HSpw.js";import{d}from"./p-AdSqif48.js";import{d as c}from"./p-BFaIxm6b.js";import{d as u}from"./p-DSYw-7RA.js";import{d as m}from"./p-ClgihpRm.js";import{d as g}from"./p-DdBIc8AE.js";import{d as f}from"./p-DlujHEXS.js";import{d as w}from"./p-Ci3yfjxH.js";import{d as b}from"./p-BUAwjF_Z.js";const x=e(class extends n{constructor(e){super(!1),!1!==e&&this.__registerHost(),this.update=t(this,"sdUpdate",7),this.dropDownShow=t(this,"sdDropDownShow",7)}get el(){return this}value=null;options=[];placeholder="선택";optionPlaceholder="선택지가 없습니다.";width="200px";dropdownHeight="260px";disabled=!1;clearable=!1;searchable=!1;useCheckbox=!1;useAll=!1;allCheckedLabel="전체";allCheckOptionLabel="전체";label="";icon=void 0;labelTooltip="";labelTooltipProps=null;rules=[];error=!1;containerStyle={};triggerStyle={};dropdownStyle={};optionStyle={};labelStyle={};optionRenderer;filteredOptions=[];isOpen=!1;searchText=null;itemIndex=-1;isScrolled=!1;isDropdownReady=!1;update;dropDownShow;selectRef;searchRef;triggerRef;optionRef;dropdownRef;formField;dropDownWidth="200px";name=l();async sdOpen(){await new Promise((e=>setTimeout(e,0))),this.isOpen=!0}async sdValidate(){this.formField?.sdValidate()}async sdReset(){this.formField?.sdReset()}async sdResetValidate(){this.formField?.sdResetValidation()}async sdFocus(){this.formField?.sdFocus()}valueChanged(){this.update?.emit(this.value)}optionsChanged(){this.filteredOptions=this.options,this.filterOptions()}searchTextChanged(){this.filterOptions()}async itemIndexChanged(e,t){if(this.searchable){const e=await this.getNativeInputElement();if(-1===this.itemIndex)return void e?.focus({preventScroll:!0});e?.matches(":focus")&&e?.blur()}const s=Array.from(this.dropdownRef?.querySelectorAll("sd-select-option-group")||[]),i=this.useAll?this.itemIndex+1:this.itemIndex,o=s?.[i];o&&this.isOpen&&(this.optionRef=o,await this.optionRef.isDisabled()?e>t?this.itemIndex++:this.itemIndex--:this.scrollToOption(o))}async isOpenChanged(){this.onDropdownToggle(this.isOpen),this.dropDownShow?.emit({isOpen:this.isOpen}),this.isDropdownReady=!1,!1!==this.isOpen?requestAnimationFrame((()=>{requestAnimationFrame((async()=>{const e=this.getSelectedOption();if(e&&e.length>0){const t=this.options.indexOf(e[0]),s=Array.from(this.dropdownRef?.querySelectorAll("sd-select-option-group")||[]),i=Math.min((this.useAll?t+1:t)+4,s.length-1),o=s?.[i];o&&this.scrollToOption(o)}if(this.isDropdownReady=!0,this.searchable){const e=await this.getNativeInputElement();e&&requestAnimationFrame((()=>{e.focus({preventScroll:!0})}))}}))})):await(this.formField?.sdValidate())}componentWillLoad(){this.filteredOptions=this.options,this.dropDownWidth=this.width,this.initializeEvent()}componentDidRender(){const e=this.triggerRef,t=e?.getBoundingClientRect();this.dropDownWidth=t?.width?t.width+"px":this.width}disconnectedCallback(){this.cleanupEvent()}handleDocumentClick(e){this.selectRef?.contains(e.target)||(this.isOpen=!1)}handleDocumentKeydown(e){if(e.stopPropagation(),["ArrowDown","ArrowUp","Enter","Escape"].includes(e.key))switch(e.preventDefault(),e.key){case"ArrowDown":case"ArrowUp":const t=new r(this.searchable,this.filteredOptions).getNextIndex(this.itemIndex,e.key);this.itemIndex=t;break;case"Enter":const s=this.filteredOptions[this.itemIndex];s&&!s.disabled&&this.handleOptionSelection(s);break;case"Escape":this.isOpen=!1}}handleTriggerClick=e=>{e.stopPropagation(),this.disabled||(this.isOpen=!this.isOpen,this.dropDownShow?.emit({isOpen:this.isOpen}))};handleAllOptionClick=e=>{if(e.isSelected){const e=this.filteredOptions.filter((e=>"item"===e.type&&!e.disabled));this.value=this.value?.filter((t=>!e.some((e=>e.value===t.value))))||this.value}else{const e=new Set([...this.value||[],...this.filteredOptions.filter((e=>"item"===e.type&&!e.disabled))]);this.value=Array.from(e)}};handleOptionClick=e=>{const{option:t,event:s}=e;s.stopPropagation(),"group"===t.type&&this.handleGroupOptionClick(e),"subgroup"===t.type&&this.handleSubGroupOptionClick(e),"item"===t.type&&this.handleOptionSelection(t)};handleGroupOptionClick=e=>{const{option:t,isSelected:s}=e;this.filteredOptions.filter((e=>e.parent===t.value&&!e.disabled)).forEach((e=>{this.handleSubGroupOptionClick({option:e,isSelected:s||null===s})}))};handleSubGroupOptionClick=e=>{const{option:t,isSelected:s}=e,i=this.filteredOptions.filter((e=>e.parent===t.value&&!e.disabled));if(s||null===s)this.value=this.value?.filter((e=>!i.some((t=>t.value===e.value))))||null;else{const e=i.filter((e=>!this.value?.some((t=>t.value===e.value))));this.value=[...this.value||[],...e]}};filterOptions(){if(!this.searchText||""===this.searchText.trim())return void(this.filteredOptions=this.options);const e=this.searchText.toLowerCase(),t=new Set;this.options.forEach((s=>{s.label.toLowerCase().includes(e)&&(t.add(s),this.addParentGroups(s,t))})),this.filteredOptions=this.options.filter((e=>t.has(e)))}addParentGroups(e,t){if(!e.parent)return;const s=this.options.find((t=>t.value===e.parent));s&&!t.has(s)&&(t.add(s),this.addParentGroups(s,t))}getSelectedOption(){return this.options.filter((e=>this.value?.includes(e)))}handleDropdownScroll=e=>{this.isScrolled=e.target.scrollTop>0};async getNativeInputElement(){return this.searchRef?this.searchRef.sdGetNativeElement():null}handleOptionSelection=e=>{if(!e||e.disabled)return;const t=this.value?.some((t=>t.value===e.value));this.value=t?this.value?.filter((t=>t.value!==e.value))||null:[...this.value||[],e]};getAllItemsUnderOption(e,t=!1){const s=s=>s.parent===e.value&&(t||!s.disabled);if("subgroup"===e.type)return this.filteredOptions.filter((e=>s(e)&&"item"===e.type));const i=[],o=this.filteredOptions.filter(s);o.filter((e=>"subgroup"===e.type)).forEach((e=>{const s=this.filteredOptions.filter((s=>!(s.parent!==e.value||"item"!==s.type||!t&&s.disabled)));i.push(...s)}));const l=o.filter((e=>"item"===e.type));return i.push(...l),i}isAllChildrenSelected(e){const t=this.getAllItemsUnderOption(e);if(0===t.length)return!1;const s=t.filter((e=>this.value?.some((t=>t.value===e.value))));return s.length===t.length||s.length>0&&null}getChildrenOptions(e){const t=this.getAllItemsUnderOption(e,!0);return{selectedCount:t.filter((e=>this.value?.some((t=>t.value===e.value)))).length,totalCount:t.length}}isAllOptionsSelected(){if(!this.value||0===this.value.length)return!1;const e=this.options.filter((e=>"item"===e.type&&!e.disabled));if(0===e.length)return!1;const t=new Set(this.value.map((e=>e.value)));return e.every((e=>t.has(e.value)))}getTriggerLabel(){const e=this.getSelectedOption();return e?0===e.length?this.placeholder:this.isAllOptionsSelected()?this.allCheckedLabel:e.map((e=>e.label)).join(", "):"선택"}closeDropdown(){this.isOpen=!1}async scrollToOption(e){this.dropdownRef&&e&&requestAnimationFrame((()=>{const t=this.dropdownRef,s=e.offsetTop,i=e.offsetHeight,o=t.scrollTop,l=t.clientHeight,n=t.querySelector(".sd-select-multiple-group__search-container"),r=n?n.offsetHeight:0,p=l-r,h=o+l;s<o+r?t.scrollTo({top:s-r,behavior:"instant"}):s+i>h&&t.scrollTo({top:s+i-p-r,behavior:"instant"})}))}render(){return s("sd-field",{key:"3cc9e5b2f1062e216a0dd738dff6918084c5e3b4",label:this.label,name:this.name,rules:this.rules,error:this.error,disabled:this.disabled,icon:this.icon,labelTooltip:this.labelTooltip,labelTooltipProps:this.labelTooltipProps,ref:e=>this.formField=e,style:{"--field-width":this.width||"200px"}},s("div",{key:"60be94c561be252d6cc822e6be60a5e31390a15f",class:{"sd-select-multiple-group":!0,"sd-select-multiple-group--open":this.isOpen,"sd-select-multiple-group--disabled":this.disabled,"sd-select-multiple-group--label":!!this.label},ref:e=>this.selectRef=e},this.renderTrigger(),this.renderDropdown()))}renderTrigger(){const e=this.getSelectedOption();return s("div",{class:"sd-select-multiple-group__trigger",tabindex:this.disabled?-1:0,onClick:this.handleTriggerClick,style:this.triggerStyle},s("span",{class:"sd-select-multiple-group__value"},this.getTriggerLabel()),this.clearable&&e?.length>0&&!this.disabled&&s("sd-icon",{key:"close-icon",name:"close",size:10,color:"#888",class:"sd-select-multiple-group__clear",onClick:async e=>{e.stopPropagation(),this.value=null,await(this.formField?.sdValidate())}}),s("sd-icon",{key:"arrow-icon",name:"arrowDown",color:"#888",class:{"sd-select-multiple-group__arrow":!0,"sd-select-multiple-group__arrow--open":this.isOpen}}))}renderDropdown(){return!1===this.isOpen?null:s("sd-portal",{open:this.isOpen,parentRef:this.selectRef,onSdClose:this.closeDropdown},s("div",{style:{width:"0",height:"0",overflow:"visible"}},s("div",{class:{"sd-select-multiple-group__dropdown":!0,"sd-select-multiple-group__dropdown--ready":this.isDropdownReady},style:{"--select-width":this.dropDownWidth||"200px","--select-dropdown-height":this.dropdownHeight||"260px",...this.dropdownStyle},onScroll:this.handleDropdownScroll,ref:e=>this.dropdownRef=e},this.searchable&&s("sd-select-search-input",{ref:e=>this.searchRef=e,isScrolled:this.isScrolled,searchText:this.searchText,onSdSearchInput:e=>this.searchText=e.detail||"",onSdSearchFocus:()=>this.itemIndex=-1}),this.filteredOptions.length>0?s(i,null,this.useAll&&s("sd-select-option-group",{option:{label:this.allCheckOptionLabel,value:"",type:"all"},index:0,isSelected:this.isAllOptionsSelected(),isFocused:0===this.itemIndex,optionStyle:this.optionStyle,onOptionClick:({detail:e})=>this.handleAllOptionClick(e),useCheckbox:this.useCheckbox,useIndicator:!1}),this.filteredOptions.map(((e,t)=>s("slot",{name:"option-"+e.value},s("sd-select-option-group",{option:e,index:t,isSelected:"item"===e.type?this.value?.some((t=>t.value===e.value)):this.isAllChildrenSelected(e),isFocused:t===this.itemIndex,optionStyle:this.optionStyle,onOptionClick:({detail:t})=>{("item"===e.type||this.useCheckbox)&&this.handleOptionClick(t)},useCheckbox:this.useCheckbox,..."item"!==e.type&&{countInfo:this.getChildrenOptions(e)}}))))):s("slot",{name:"option-placeholder"},s("div",{class:"sd-select-multiple-group__option-placeholder",style:this.optionStyle},this.optionPlaceholder)))))}static get watchers(){return{value:[{valueChanged:0}],options:[{optionsChanged:0}],searchText:[{searchTextChanged:0}],itemIndex:[{itemIndexChanged:0}],isOpen:[{isOpenChanged:0}]}}static get style(){return".sd-select-multiple-group__dropdown .sd-select-multiple-group__option-placeholder{height:48px;display:flex;align-items:center;padding:8px 16px;font-size:12px;line-height:0;text-align:left;color:#888888}sd-select-multiple-group{display:inline-flex;flex-flow:column nowrap;width:fit-content;height:fit-content}sd-select-multiple-group:focus,sd-select-multiple-group:focus-visible,sd-select-multiple-group:focus-within{outline:none !important}sd-select-multiple-group .sd-select-multiple-group{width:100%}sd-select-multiple-group .sd-select-multiple-group .sd-select-multiple-group__trigger{padding:4px 20px 4px 12px;display:flex;width:100%;align-items:center}sd-select-multiple-group .sd-select-multiple-group .sd-select-multiple-group__trigger .sd-select-multiple-group__value{flex:1;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;line-height:20px;font-size:12px;font-weight:400}sd-select-multiple-group .sd-select-multiple-group .sd-select-multiple-group__trigger .sd-select-multiple-group__clear{margin:0 4px;width:8px;height:8px;background-color:transparent;outline:none;border:none}sd-select-multiple-group .sd-select-multiple-group .sd-select-multiple-group__arrow{position:absolute;top:8px;right:8px;width:12px;height:12px;color:#888888;transition:transform 0.3s ease}sd-select-multiple-group .sd-select-multiple-group .sd-select-multiple-group__arrow--open{transform:rotate(180deg)}.sd-select-multiple-group__dropdown{overflow:auto;width:var(--select-width, 200px);max-height:var(--select-dropdown-height, 260px);padding-bottom:2px;background-color:white;box-shadow:2px 2px 12px 2px rgba(0, 0, 0, 0.1);border-radius:4px;overflow-y:auto;color:#333333;opacity:0.5;transition:opacity 0.15s ease-in}.sd-select-multiple-group__dropdown--ready{opacity:1}"}},[772,"sd-select-multiple-group",{value:[1040],options:[1040],placeholder:[1],optionPlaceholder:[1,"option-placeholder"],width:[1],dropdownHeight:[1,"dropdown-height"],disabled:[4],clearable:[4],searchable:[4],useCheckbox:[4,"use-checkbox"],useAll:[4,"use-all"],allCheckedLabel:[1,"all-checked-label"],allCheckOptionLabel:[1,"all-check-option-label"],label:[1],icon:[16],labelTooltip:[1,"label-tooltip"],labelTooltipProps:[16],rules:[16],error:[4],containerStyle:[16],triggerStyle:[16],dropdownStyle:[16],optionStyle:[16],labelStyle:[16],optionRenderer:[16],filteredOptions:[32],isOpen:[32],searchText:[32],itemIndex:[32],isScrolled:[32],isDropdownReady:[32],sdOpen:[64],sdValidate:[64],sdReset:[64],sdResetValidate:[64],sdFocus:[64]},void 0,{value:[{valueChanged:0}],options:[{optionsChanged:0}],searchText:[{searchTextChanged:0}],itemIndex:[{itemIndexChanged:0}],isOpen:[{isOpenChanged:0}]}]),y=x,C=function(){"undefined"!=typeof customElements&&["sd-select-multiple-group","sd-button","sd-checkbox","sd-field","sd-floating-portal","sd-ghost-button","sd-icon","sd-input","sd-portal","sd-select-option-group","sd-select-search-input","sd-tooltip"].forEach((e=>{switch(e){case"sd-select-multiple-group":customElements.get(o(e))||customElements.define(o(e),x);break;case"sd-button":customElements.get(o(e))||p();break;case"sd-checkbox":customElements.get(o(e))||h();break;case"sd-field":customElements.get(o(e))||a();break;case"sd-floating-portal":customElements.get(o(e))||d();break;case"sd-ghost-button":customElements.get(o(e))||c();break;case"sd-icon":customElements.get(o(e))||u();break;case"sd-input":customElements.get(o(e))||m();break;case"sd-portal":customElements.get(o(e))||g();break;case"sd-select-option-group":customElements.get(o(e))||f();break;case"sd-select-search-input":customElements.get(o(e))||w();break;case"sd-tooltip":customElements.get(o(e))||b()}}))};export{y as SdSelectMultipleGroup,C as defineCustomElement}
|
|
1
|
+
import{p as e,c as t,h as s,F as i,t as o}from"./p-DuYi4aqj.js";import{n as l}from"./p-CCwNgVmC.js";import{B as r}from"./p-B6RvTdqt.js";import{S as n}from"./p-Cy6HMEsK.js";import{d as p}from"./p-BLC3AWW8.js";import{d as h}from"./p-TMuoVuhE.js";import{d}from"./p-BjjrNz4C.js";import{d as a}from"./p-DxzgCf_d.js";import{d as c}from"./p-B1S4ybd6.js";import{d as u}from"./p-CGssy8eb.js";import{d as m}from"./p-DC9KYl3L.js";import{d as g}from"./p-BgRPWxrz.js";import{d as f}from"./p-6cueWz-l.js";import{d as b}from"./p-xmvTLf74.js";import{d as w}from"./p-BZ7V5xV5.js";const x=e(class extends r{constructor(e){super(!1),!1!==e&&this.__registerHost(),this.update=t(this,"sdUpdate",7),this.dropDownShow=t(this,"sdDropDownShow",7)}get el(){return this}value=null;options=[];placeholder="선택";optionPlaceholder="선택지가 없습니다.";width="200px";dropdownHeight="260px";disabled=!1;clearable=!1;searchable=!1;useCheckbox=!1;useAll=!1;allCheckedLabel="전체";allCheckOptionLabel="전체";label="";labelWidth="";icon=void 0;labelTooltip="";labelTooltipProps=null;rules=[];error=!1;containerStyle={};triggerStyle={};dropdownStyle={};optionStyle={};labelStyle={};optionRenderer;filteredOptions=[];isOpen=!1;searchText=null;itemIndex=-1;isScrolled=!1;isDropdownReady=!1;update;dropDownShow;selectRef;searchRef;triggerRef;optionRef;dropdownRef;formField;dropDownWidth="200px";name=l();async sdOpen(){await new Promise((e=>setTimeout(e,0))),this.isOpen=!0}async sdValidate(){this.formField?.sdValidate()}async sdReset(){this.formField?.sdReset()}async sdResetValidate(){this.formField?.sdResetValidation()}async sdFocus(){this.formField?.sdFocus()}valueChanged(){this.update?.emit(this.value)}optionsChanged(){this.filteredOptions=this.options,this.filterOptions()}searchTextChanged(){this.filterOptions()}async itemIndexChanged(e,t){if(this.searchable){const e=await this.getNativeInputElement();if(-1===this.itemIndex)return void e?.focus({preventScroll:!0});e?.matches(":focus")&&e?.blur()}const s=Array.from(this.dropdownRef?.querySelectorAll("sd-select-option-group")||[]),i=this.useAll?this.itemIndex+1:this.itemIndex,o=s?.[i];o&&this.isOpen&&(this.optionRef=o,await this.optionRef.isDisabled()?e>t?this.itemIndex++:this.itemIndex--:this.scrollToOption(o))}async isOpenChanged(){this.onDropdownToggle(this.isOpen),this.dropDownShow?.emit({isOpen:this.isOpen}),this.isDropdownReady=!1,!1!==this.isOpen?requestAnimationFrame((()=>{requestAnimationFrame((async()=>{const e=this.getSelectedOption();if(e&&e.length>0){const t=this.options.indexOf(e[0]),s=Array.from(this.dropdownRef?.querySelectorAll("sd-select-option-group")||[]),i=Math.min((this.useAll?t+1:t)+4,s.length-1),o=s?.[i];o&&this.scrollToOption(o)}if(this.isDropdownReady=!0,this.searchable){const e=await this.getNativeInputElement();e&&requestAnimationFrame((()=>{e.focus({preventScroll:!0})}))}}))})):await(this.formField?.sdValidate())}componentWillLoad(){this.filteredOptions=this.options,this.dropDownWidth=this.width,this.initializeEvent()}componentDidRender(){const e=this.triggerRef,t=e?.getBoundingClientRect();this.dropDownWidth=t?.width?t.width+"px":this.width}disconnectedCallback(){this.cleanupEvent()}handleDocumentClick(e){this.selectRef?.contains(e.target)||(this.isOpen=!1)}handleDocumentKeydown(e){if(e.stopPropagation(),["ArrowDown","ArrowUp","Enter","Escape"].includes(e.key))switch(e.preventDefault(),e.key){case"ArrowDown":case"ArrowUp":const t=new n(this.searchable,this.filteredOptions).getNextIndex(this.itemIndex,e.key);this.itemIndex=t;break;case"Enter":const s=this.filteredOptions[this.itemIndex];s&&!s.disabled&&this.handleOptionSelection(s);break;case"Escape":this.isOpen=!1}}handleTriggerClick=e=>{e.stopPropagation(),this.disabled||(this.isOpen=!this.isOpen,this.dropDownShow?.emit({isOpen:this.isOpen}))};handleAllOptionClick=e=>{if(e.isSelected){const e=this.filteredOptions.filter((e=>"item"===e.type&&!e.disabled));this.value=this.value?.filter((t=>!e.some((e=>e.value===t.value))))||this.value}else{const e=new Set([...this.value||[],...this.filteredOptions.filter((e=>"item"===e.type&&!e.disabled))]);this.value=Array.from(e)}};handleOptionClick=e=>{const{option:t,event:s}=e;s.stopPropagation(),"group"===t.type&&this.handleGroupOptionClick(e),"subgroup"===t.type&&this.handleSubGroupOptionClick(e),"item"===t.type&&this.handleOptionSelection(t)};handleGroupOptionClick=e=>{const{option:t,isSelected:s}=e;this.filteredOptions.filter((e=>e.parent===t.value&&!e.disabled)).forEach((e=>{this.handleSubGroupOptionClick({option:e,isSelected:s||null===s})}))};handleSubGroupOptionClick=e=>{const{option:t,isSelected:s}=e,i=this.filteredOptions.filter((e=>e.parent===t.value&&!e.disabled));if(s||null===s)this.value=this.value?.filter((e=>!i.some((t=>t.value===e.value))))||null;else{const e=i.filter((e=>!this.value?.some((t=>t.value===e.value))));this.value=[...this.value||[],...e]}};filterOptions(){if(!this.searchText||""===this.searchText.trim())return void(this.filteredOptions=this.options);const e=this.searchText.toLowerCase(),t=new Set;this.options.forEach((s=>{s.label.toLowerCase().includes(e)&&(t.add(s),this.addParentGroups(s,t))})),this.filteredOptions=this.options.filter((e=>t.has(e)))}addParentGroups(e,t){if(!e.parent)return;const s=this.options.find((t=>t.value===e.parent));s&&!t.has(s)&&(t.add(s),this.addParentGroups(s,t))}getSelectedOption(){return this.options.filter((e=>this.value?.includes(e)))}handleDropdownScroll=e=>{this.isScrolled=e.target.scrollTop>0};async getNativeInputElement(){return this.searchRef?this.searchRef.sdGetNativeElement():null}handleOptionSelection=e=>{if(!e||e.disabled)return;const t=this.value?.some((t=>t.value===e.value));this.value=t?this.value?.filter((t=>t.value!==e.value))||null:[...this.value||[],e]};getAllItemsUnderOption(e,t=!1){const s=s=>s.parent===e.value&&(t||!s.disabled);if("subgroup"===e.type)return this.filteredOptions.filter((e=>s(e)&&"item"===e.type));const i=[],o=this.filteredOptions.filter(s);o.filter((e=>"subgroup"===e.type)).forEach((e=>{const s=this.filteredOptions.filter((s=>!(s.parent!==e.value||"item"!==s.type||!t&&s.disabled)));i.push(...s)}));const l=o.filter((e=>"item"===e.type));return i.push(...l),i}isAllChildrenSelected(e){const t=this.getAllItemsUnderOption(e);if(0===t.length)return!1;const s=t.filter((e=>this.value?.some((t=>t.value===e.value))));return s.length===t.length||s.length>0&&null}getChildrenOptions(e){const t=this.getAllItemsUnderOption(e,!0);return{selectedCount:t.filter((e=>this.value?.some((t=>t.value===e.value)))).length,totalCount:t.length}}isAllOptionsSelected(){if(!this.value||0===this.value.length)return!1;const e=this.options.filter((e=>"item"===e.type&&!e.disabled));if(0===e.length)return!1;const t=new Set(this.value.map((e=>e.value)));return e.every((e=>t.has(e.value)))}getTriggerLabel(){const e=this.getSelectedOption();return e?0===e.length?this.placeholder:this.isAllOptionsSelected()?this.allCheckedLabel:e.map((e=>e.label)).join(", "):"선택"}closeDropdown(){this.isOpen=!1}async scrollToOption(e){this.dropdownRef&&e&&requestAnimationFrame((()=>{const t=this.dropdownRef,s=e.offsetTop,i=e.offsetHeight,o=t.scrollTop,l=t.clientHeight,r=t.querySelector(".sd-select-multiple-group__search-container"),n=r?r.offsetHeight:0,p=l-n,h=o+l;s<o+n?t.scrollTo({top:s-n,behavior:"instant"}):s+i>h&&t.scrollTo({top:s+i-p-n,behavior:"instant"})}))}render(){return s("sd-field",{key:"e7d00571a19a83e8d243d0c4f7433d931d4a2304",label:this.label,labelWidth:this.labelWidth,name:this.name,rules:this.rules,error:this.error,disabled:this.disabled,icon:this.icon,labelTooltip:this.labelTooltip,labelTooltipProps:this.labelTooltipProps,ref:e=>this.formField=e,style:{"--field-width":this.width||"200px"}},s("div",{key:"8c7288d853fed5bb829f1ef90af5e96a512c11b3",class:{"sd-select-multiple-group":!0,"sd-select-multiple-group--open":this.isOpen,"sd-select-multiple-group--disabled":this.disabled,"sd-select-multiple-group--label":!!this.label},ref:e=>this.selectRef=e},this.renderTrigger(),this.renderDropdown()))}renderTrigger(){const e=this.getSelectedOption();return s("div",{class:"sd-select-multiple-group__trigger",tabindex:this.disabled?-1:0,onClick:this.handleTriggerClick,style:this.triggerStyle},s("span",{class:"sd-select-multiple-group__value"},this.getTriggerLabel()),this.clearable&&e?.length>0&&!this.disabled&&s("sd-icon",{key:"close-icon",name:"close",size:10,color:"#888",class:"sd-select-multiple-group__clear",onClick:async e=>{e.stopPropagation(),this.value=null,await(this.formField?.sdValidate())}}),s("sd-icon",{key:"arrow-icon",name:"arrowDown",color:"#888",class:{"sd-select-multiple-group__arrow":!0,"sd-select-multiple-group__arrow--open":this.isOpen}}))}renderDropdown(){return!1===this.isOpen?null:s("sd-portal",{open:this.isOpen,parentRef:this.selectRef,onSdClose:this.closeDropdown},s("div",{style:{width:"0",height:"0",overflow:"visible"}},s("div",{class:{"sd-select-multiple-group__dropdown":!0,"sd-select-multiple-group__dropdown--ready":this.isDropdownReady},style:{"--select-width":this.dropDownWidth||"200px","--select-dropdown-height":this.dropdownHeight||"260px",...this.dropdownStyle},onScroll:this.handleDropdownScroll,ref:e=>this.dropdownRef=e},this.searchable&&s("sd-select-search-input",{ref:e=>this.searchRef=e,isScrolled:this.isScrolled,searchText:this.searchText,onSdSearchInput:e=>this.searchText=e.detail||"",onSdSearchFocus:()=>this.itemIndex=-1}),this.filteredOptions.length>0?s(i,null,this.useAll&&s("sd-select-option-group",{option:{label:this.allCheckOptionLabel,value:"",type:"all"},index:0,isSelected:this.isAllOptionsSelected(),isFocused:0===this.itemIndex,optionStyle:this.optionStyle,onOptionClick:({detail:e})=>this.handleAllOptionClick(e),useCheckbox:this.useCheckbox,useIndicator:!1}),this.filteredOptions.map(((e,t)=>s("slot",{name:"option-"+e.value},s("sd-select-option-group",{option:e,index:t,isSelected:"item"===e.type?this.value?.some((t=>t.value===e.value)):this.isAllChildrenSelected(e),isFocused:t===this.itemIndex,optionStyle:this.optionStyle,onOptionClick:({detail:t})=>{("item"===e.type||this.useCheckbox)&&this.handleOptionClick(t)},useCheckbox:this.useCheckbox,..."item"!==e.type&&{countInfo:this.getChildrenOptions(e)}}))))):s("slot",{name:"option-placeholder"},s("div",{class:"sd-select-multiple-group__option-placeholder",style:this.optionStyle},this.optionPlaceholder)))))}static get watchers(){return{value:[{valueChanged:0}],options:[{optionsChanged:0}],searchText:[{searchTextChanged:0}],itemIndex:[{itemIndexChanged:0}],isOpen:[{isOpenChanged:0}]}}static get style(){return".sd-select-multiple-group__dropdown .sd-select-multiple-group__option-placeholder{height:48px;display:flex;align-items:center;padding:8px 16px;font-size:12px;line-height:0;text-align:left;color:#888888}sd-select-multiple-group{display:inline-flex;flex-flow:column nowrap;width:fit-content;height:fit-content}sd-select-multiple-group:focus,sd-select-multiple-group:focus-visible,sd-select-multiple-group:focus-within{outline:none !important}sd-select-multiple-group .sd-select-multiple-group{width:100%}sd-select-multiple-group .sd-select-multiple-group .sd-select-multiple-group__trigger{padding:4px 20px 4px 12px;display:flex;width:100%;align-items:center;cursor:pointer}.sd-field--disabled sd-select-multiple-group .sd-select-multiple-group .sd-select-multiple-group__trigger{cursor:not-allowed}sd-select-multiple-group .sd-select-multiple-group .sd-select-multiple-group__trigger .sd-select-multiple-group__value{flex:1;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;line-height:20px;font-size:12px;font-weight:400}sd-select-multiple-group .sd-select-multiple-group .sd-select-multiple-group__trigger .sd-select-multiple-group__clear{margin:0 4px;width:8px;height:8px;background-color:transparent;outline:none;border:none}sd-select-multiple-group .sd-select-multiple-group .sd-select-multiple-group__arrow{position:absolute;top:8px;right:8px;width:12px;height:12px;color:#888888;transition:transform 0.3s ease}sd-select-multiple-group .sd-select-multiple-group .sd-select-multiple-group__arrow--open{transform:rotate(180deg)}.sd-select-multiple-group__dropdown{overflow:auto;width:var(--select-width, 200px);max-height:var(--select-dropdown-height, 260px);padding-bottom:2px;background-color:white;box-shadow:2px 2px 12px 2px rgba(0, 0, 0, 0.1);border-radius:4px;overflow-y:auto;color:#333333;opacity:0.5;transition:opacity 0.15s ease-in}.sd-select-multiple-group__dropdown--ready{opacity:1}"}},[772,"sd-select-multiple-group",{value:[1040],options:[1040],placeholder:[1],optionPlaceholder:[1,"option-placeholder"],width:[1],dropdownHeight:[1,"dropdown-height"],disabled:[4],clearable:[4],searchable:[4],useCheckbox:[4,"use-checkbox"],useAll:[4,"use-all"],allCheckedLabel:[1,"all-checked-label"],allCheckOptionLabel:[1,"all-check-option-label"],label:[1],labelWidth:[8,"label-width"],icon:[16],labelTooltip:[1,"label-tooltip"],labelTooltipProps:[16],rules:[16],error:[4],containerStyle:[16],triggerStyle:[16],dropdownStyle:[16],optionStyle:[16],labelStyle:[16],optionRenderer:[16],filteredOptions:[32],isOpen:[32],searchText:[32],itemIndex:[32],isScrolled:[32],isDropdownReady:[32],sdOpen:[64],sdValidate:[64],sdReset:[64],sdResetValidate:[64],sdFocus:[64]},void 0,{value:[{valueChanged:0}],options:[{optionsChanged:0}],searchText:[{searchTextChanged:0}],itemIndex:[{itemIndexChanged:0}],isOpen:[{isOpenChanged:0}]}]),y=x,C=function(){"undefined"!=typeof customElements&&["sd-select-multiple-group","sd-button","sd-checkbox","sd-field","sd-floating-portal","sd-ghost-button","sd-icon","sd-input","sd-portal","sd-select-option-group","sd-select-search-input","sd-tooltip"].forEach((e=>{switch(e){case"sd-select-multiple-group":customElements.get(o(e))||customElements.define(o(e),x);break;case"sd-button":customElements.get(o(e))||p();break;case"sd-checkbox":customElements.get(o(e))||h();break;case"sd-field":customElements.get(o(e))||d();break;case"sd-floating-portal":customElements.get(o(e))||a();break;case"sd-ghost-button":customElements.get(o(e))||c();break;case"sd-icon":customElements.get(o(e))||u();break;case"sd-input":customElements.get(o(e))||m();break;case"sd-portal":customElements.get(o(e))||g();break;case"sd-select-option-group":customElements.get(o(e))||f();break;case"sd-select-search-input":customElements.get(o(e))||b();break;case"sd-tooltip":customElements.get(o(e))||w()}}))};export{y as SdSelectMultipleGroup,C as defineCustomElement}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{p as e,c as s,h as t,t as i}from"./p-
|
|
1
|
+
import{p as e,c as s,h as t,t as i}from"./p-DuYi4aqj.js";import{S as l}from"./p-Cy6HMEsK.js";import{B as o}from"./p-B6RvTdqt.js";import{n as d}from"./p-CCwNgVmC.js";import{d as r}from"./p-BLC3AWW8.js";import{d as n}from"./p-TMuoVuhE.js";import{d as a}from"./p-BjjrNz4C.js";import{d as c}from"./p-DxzgCf_d.js";import{d as p}from"./p-B1S4ybd6.js";import{d as h}from"./p-CGssy8eb.js";import{d as m}from"./p-DC9KYl3L.js";import{d as u}from"./p-BgRPWxrz.js";import{d as f}from"./p-BkUclgga.js";import{d as b}from"./p-Bh548Ckv.js";import{d as w}from"./p-xmvTLf74.js";import{d as g}from"./p-BZ7V5xV5.js";const x=e(class extends o{constructor(e){super(!1),!1!==e&&this.__registerHost(),this.update=s(this,"sdUpdate",7),this.dropDownShow=s(this,"sdDropDownShow",7)}get el(){return this}value=null;options=[];placeholder="선택";optionPlaceholder="선택지가 없습니다.";width="200px";dropdownHeight="260px";autoFocus=!1;disabled=!1;clearable=!1;searchable=!1;useAll=!1;useCheckbox=!1;label="";labelWidth="";icon=void 0;labelTooltip="";labelTooltipProps=null;rules=[];error=!1;optionRenderer;isOpen=!1;itemIndex=-1;isScrolled=!1;update;dropDownShow;selectRef;triggerRef;formField;filteredOptions=[];dropDownWidth="200px";name=d();async sdOpen(){this.isOpen=!0}async sdValidate(){this.formField?.sdValidate()}async sdReset(){this.formField?.sdReset()}async sdResetValidate(){this.formField?.sdResetValidation()}async sdFocus(){this.formField?.sdFocus()}async isOpenChanged(){this.onDropdownToggle(this.isOpen),this.dropDownShow?.emit({isOpen:this.isOpen}),!1===this.isOpen&&await(this.formField?.sdValidate())}componentWillLoad(){this.filteredOptions=this.options,this.dropDownWidth=this.width,this.initializeEvent()}componentDidLoad(){this.autoFocus&&this.selectRef?.focus()}componentDidRender(){const e=this.triggerRef,s=e?.getBoundingClientRect();this.dropDownWidth=s?.width?s.width+"px":this.width}disconnectedCallback(){this.cleanupEvent()}handleDocumentClick(e){this.selectRef?.contains(e.target)||(this.isOpen=!1)}handleDocumentKeydown(e){if(e.stopPropagation(),["ArrowDown","ArrowUp","Enter","Escape"].includes(e.key))switch(e.preventDefault(),e.key){case"ArrowDown":case"ArrowUp":const s=new l(this.searchable,this.filteredOptions).getNextIndex(this.itemIndex,e.key);this.itemIndex=s;break;case"Enter":const t=this.filteredOptions[this.itemIndex];t&&!t.disabled&&this.handleOptionSelection(t);break;case"Escape":this.isOpen=!1}}handleOptionSelection=e=>{if(!e||e.disabled)return;const s=this.value?.some((s=>s.value===e.value));this.value=s?this.value?.filter((s=>s.value!==e.value))||null:[...this.value||[],e],this.update?.emit(this.value)};getSelectedOption(){return this.options.filter((e=>this.value?.includes(e)))}closeDropdown(){this.isOpen=!1}handleTriggerClick=e=>{e.stopPropagation(),this.disabled||(this.isOpen=!this.isOpen,this.dropDownShow?.emit({isOpen:this.isOpen}))};handleOptionClick=e=>{const{option:s,event:t}=e;t.stopPropagation(),this.handleOptionSelection(s)};render(){return t("sd-field",{key:"f5dda40563661955aa194d841ca89628afd496cb",label:this.label,labelWidth:this.labelWidth,name:this.name,rules:this.rules,error:this.error,disabled:this.disabled,icon:this.icon,labelTooltip:this.labelTooltip,labelTooltipProps:this.labelTooltipProps,ref:e=>this.formField=e},t("div",{key:"81541d9adabfea7c3af1c22ed419036f56e1a353",class:{"sd-select-multiple":!0,"sd-select-multiple--open":this.isOpen,"sd-select-multiple--disabled":this.disabled,"sd-select-multiple--error":!!this.error},ref:e=>this.selectRef=e},this.renderTrigger(),this.renderDropdown()))}renderTrigger(){const e=this.getSelectedOption();return t("div",{class:"sd-select-multiple__trigger",tabindex:this.disabled?-1:0,onClick:this.handleTriggerClick,ref:e=>this.triggerRef=e},t("span",{class:"sd-select-multiple__value"},e&&0!==e.length?e.map((e=>e.label)).join(", "):this.placeholder),this.clearable&&e?.length>0&&!this.disabled&&t("sd-icon",{key:"close-icon",name:"close",size:10,color:"#888",class:"sd-select-multiple__clear",onClick:async e=>{e.stopPropagation(),this.value=null,await(this.formField?.sdValidate())}}),t("sd-icon",{key:"arrow-icon",name:"arrowDown",color:"#888",class:{"sd-select-multiple__arrow":!0,"sd-select-multiple__arrow--open":this.isOpen}}))}renderDropdown(){if(!1===this.isOpen)return null;const e=this.selectRef?.querySelector(".sd-select-multiple__trigger")||this.selectRef;return t("sd-portal",{open:this.isOpen,parentRef:e,onSdClose:this.closeDropdown},t("sd-select-dropdown",{value:this.value,options:this.options,itemIndex:this.itemIndex,width:this.dropDownWidth,dropdownHeight:this.dropdownHeight,searchable:this.searchable,optionPlaceholder:this.optionPlaceholder,useCheckbox:this.useCheckbox,useAll:this.useAll,onSdOptionClick:({detail:e})=>this.handleOptionClick(e),onSdOptionFiltered:({detail:e})=>this.filteredOptions=e}))}static get watchers(){return{isOpen:[{isOpenChanged:0}]}}static get style(){return"sd-select-multiple{display:inline-flex;flex-flow:column nowrap;height:fit-content}sd-select-multiple *:focus,sd-select-multiple *:focus-visible,sd-select-multiple *:focus-within{outline:none !important}sd-select-multiple .sd-select-multiple{width:100%}sd-select-multiple .sd-select-multiple .sd-select-multiple__trigger{padding:4px 28px 4px 12px;display:flex;width:100%;align-items:center;cursor:pointer}.sd-field--disabled sd-select-multiple .sd-select-multiple .sd-select-multiple__trigger{cursor:not-allowed}sd-select-multiple .sd-select-multiple .sd-select-multiple__trigger .sd-select-multiple__value{flex:1;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;line-height:20px;font-size:12px;font-weight:400;text-align:left}sd-select-multiple .sd-select-multiple .sd-select-multiple__trigger .sd-select-multiple__clear{margin:0 4px;width:8px;height:8px;background-color:transparent;outline:none;border:none}sd-select-multiple .sd-select-multiple__arrow{position:absolute;top:8px;right:8px;width:12px;height:12px;color:#888888;transition:transform 0.3s ease;margin-left:8px}sd-select-multiple .sd-select-multiple__arrow--open{transform:rotate(180deg)}"}},[512,"sd-select-multiple",{value:[1040],options:[1040],placeholder:[1],optionPlaceholder:[1,"option-placeholder"],width:[1],dropdownHeight:[1,"dropdown-height"],autoFocus:[4,"auto-focus"],disabled:[4],clearable:[4],searchable:[4],useAll:[4,"use-all"],useCheckbox:[4,"use-checkbox"],label:[1],labelWidth:[8,"label-width"],icon:[16],labelTooltip:[1,"label-tooltip"],labelTooltipProps:[16],rules:[16],error:[4],optionRenderer:[16],isOpen:[32],itemIndex:[32],isScrolled:[32],sdOpen:[64],sdValidate:[64],sdReset:[64],sdResetValidate:[64],sdFocus:[64]},void 0,{isOpen:[{isOpenChanged:0}]}]),k=x,_=function(){"undefined"!=typeof customElements&&["sd-select-multiple","sd-button","sd-checkbox","sd-field","sd-floating-portal","sd-ghost-button","sd-icon","sd-input","sd-portal","sd-select-dropdown","sd-select-option","sd-select-search-input","sd-tooltip"].forEach((e=>{switch(e){case"sd-select-multiple":customElements.get(i(e))||customElements.define(i(e),x);break;case"sd-button":customElements.get(i(e))||r();break;case"sd-checkbox":customElements.get(i(e))||n();break;case"sd-field":customElements.get(i(e))||a();break;case"sd-floating-portal":customElements.get(i(e))||c();break;case"sd-ghost-button":customElements.get(i(e))||p();break;case"sd-icon":customElements.get(i(e))||h();break;case"sd-input":customElements.get(i(e))||m();break;case"sd-portal":customElements.get(i(e))||u();break;case"sd-select-dropdown":customElements.get(i(e))||f();break;case"sd-select-option":customElements.get(i(e))||b();break;case"sd-select-search-input":customElements.get(i(e))||w();break;case"sd-tooltip":customElements.get(i(e))||g()}}))};export{k as SdSelectMultiple,_ as defineCustomElement}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{S as o,d as s}from"./p-
|
|
1
|
+
import{S as o,d as s}from"./p-6cueWz-l.js";const p=o,r=s;export{p as SdSelectOptionGroup,r as defineCustomElement}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{S as o,d as s}from"./p-
|
|
1
|
+
import{S as o,d as s}from"./p-Bh548Ckv.js";const p=o,r=s;export{p as SdSelectOption,r as defineCustomElement}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{S as o,d as s}from"./p-
|
|
1
|
+
import{S as o,d as s}from"./p-xmvTLf74.js";const m=o,p=s;export{m as SdSelectSearchInput,p as defineCustomElement}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{S as o,d as s}from"./p-
|
|
1
|
+
import{S as o,d as s}from"./p-DRY8HJ-T.js";const p=o,r=s;export{p as SdSelectV2ListItemSearch,r as defineCustomElement}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{S as o,d as s}from"./p-
|
|
1
|
+
import{S as o,d as s}from"./p-kZ5N_lFC.js";const p=o,r=s;export{p as SdSelectV2ListItem,r as defineCustomElement}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{S as
|
|
1
|
+
import{S as s,d as o}from"./p-DpsDTjcN.js";const p=s,r=o;export{p as SdSelectV2Listbox,r as defineCustomElement}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{S as o,d as s}from"./p-
|
|
1
|
+
import{S as o,d as s}from"./p-B6OgnOKC.js";const p=o,r=s;export{p as SdSelectV2Trigger,r as defineCustomElement}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{
|
|
1
|
+
import{S as o,d as s}from"./p-CKU8CeW3.js";const p=o,r=s;export{p as SdSelectV2,r as defineCustomElement}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{S as
|
|
1
|
+
import{p as s,c as e,h as t,t as i}from"./p-DuYi4aqj.js";import{B as o}from"./p-B6RvTdqt.js";import{S as l}from"./p-Cy6HMEsK.js";import{n as d}from"./p-CCwNgVmC.js";import{d as r}from"./p-BLC3AWW8.js";import{d as n}from"./p-TMuoVuhE.js";import{d as a}from"./p-BjjrNz4C.js";import{d as c}from"./p-DxzgCf_d.js";import{d as h}from"./p-B1S4ybd6.js";import{d as p}from"./p-CGssy8eb.js";import{d as m}from"./p-DC9KYl3L.js";import{d as u}from"./p-BgRPWxrz.js";import{d as b}from"./p-BkUclgga.js";import{d as f}from"./p-Bh548Ckv.js";import{d as g}from"./p-xmvTLf74.js";import{d as w}from"./p-BZ7V5xV5.js";const x=s(class extends o{constructor(s){super(!1),!1!==s&&this.__registerHost(),this.update=e(this,"sdUpdate",7),this.dropDownShow=e(this,"sdDropDownShow",7)}get el(){return this}value=null;options=[];placeholder="선택";optionPlaceholder="선택지가 없습니다.";width="200px";dropdownHeight="260px";autoFocus=!1;disabled=!1;clearable=!1;searchable=!1;label="";labelWidth="";addonLabel="";icon=void 0;labelTooltip="";labelTooltipProps=null;rules=[];error=!1;optionRenderer;isOpen=!1;itemIndex=-1;isScrolled=!1;update;dropDownShow;selectRef;triggerRef;formField;filteredOptions=[];dropDownWidth="200px";name=d();async sdOpen(){this.isOpen=!0}async sdValidate(){this.formField?.sdValidate()}async sdReset(){this.formField?.sdReset()}async sdResetValidate(){this.formField?.sdResetValidation()}async sdFocus(){this.formField?.sdFocus()}async isOpenChanged(){this.onDropdownToggle(this.isOpen),this.dropDownShow?.emit({isOpen:this.isOpen}),!1===this.isOpen&&await(this.formField?.sdValidate())}componentWillLoad(){this.filteredOptions=this.options,this.dropDownWidth=this.width,this.initializeEvent()}componentDidLoad(){this.autoFocus&&this.selectRef?.focus()}componentDidRender(){const s=this.triggerRef,e=s?.getBoundingClientRect();this.dropDownWidth=e?.width?e.width+"px":this.width}disconnectedCallback(){this.cleanupEvent()}handleDocumentClick(s){this.selectRef?.contains(s.target)||(this.isOpen=!1)}handleDocumentKeydown(s){if(s.stopPropagation(),["ArrowDown","ArrowUp","Enter","Escape"].includes(s.key))switch(s.preventDefault(),s.key){case"ArrowDown":case"ArrowUp":const e=new l(this.searchable,this.filteredOptions).getNextIndex(this.itemIndex,s.key);this.itemIndex=e;break;case"Enter":const t=this.filteredOptions[this.itemIndex];t&&!t.disabled&&(this.value=t.value,this.isOpen=!1);break;case"Escape":this.isOpen=!1}}getSelectedOption(){return this.options.find((s=>s.value===this.value))}closeDropdown(){this.isOpen=!1}handleTriggerClick=s=>{s.stopPropagation(),this.disabled||(this.isOpen=!this.isOpen,this.dropDownShow?.emit({isOpen:this.isOpen}))};handleOptionClick=s=>{const{option:e,event:t}=s;if(t.stopPropagation(),!e.disabled){this.value=e.value,this.isOpen=!1;const s=this.getSelectedOption();this.update?.emit({value:s?.value||null,option:s||null})}};render(){return t("sd-field",{key:"d96961fe4c425c3f0fcb1c2f438c8b70c510b632",label:this.label,labelWidth:this.labelWidth,name:this.name,rules:this.rules,error:this.error,disabled:this.disabled,icon:this.icon,addonLabel:this.addonLabel,labelTooltip:this.labelTooltip,labelTooltipProps:this.labelTooltipProps,ref:s=>this.formField=s},t("div",{key:"0113ffb76ea79cbe3b77dff85d8186a5b994e7b6",class:{"sd-select":!0,"sd-select--disabled":this.disabled,"sd-select--error":!!this.error,"sd-select--label":!!this.label},ref:s=>this.selectRef=s},this.renderTrigger(),this.renderDropdown()))}renderTrigger(){const s=this.getSelectedOption();return t("div",{class:"sd-select__trigger",tabindex:this.disabled?-1:0,onClick:this.handleTriggerClick,ref:s=>this.triggerRef=s},t("span",{class:"sd-select__value"},s?s.label:this.placeholder),this.clearable&&s&&!this.disabled&&t("sd-icon",{key:"clear-icon",name:"close",size:10,color:"#888",class:"sd-select__clear",onClick:async s=>{s.stopPropagation(),this.value=null,await(this.formField?.sdValidate())}}),t("sd-icon",{key:"arrow-icon",name:"arrowDown",color:"#888",class:{"sd-select__arrow":!0,"sd-select__arrow--open":this.isOpen}}))}renderDropdown(){if(!1===this.isOpen)return null;const s=this.selectRef?.querySelector(".sd-select__trigger")||this.selectRef;return t("sd-portal",{open:this.isOpen,parentRef:s,onSdClose:this.closeDropdown},t("sd-select-dropdown",{value:this.value,options:this.options,itemIndex:this.itemIndex,width:this.dropDownWidth,dropdownHeight:this.dropdownHeight,searchable:this.searchable,optionPlaceholder:this.optionPlaceholder,onSdOptionClick:({detail:s})=>this.handleOptionClick(s),onSdOptionFiltered:({detail:s})=>this.filteredOptions=s}))}static get watchers(){return{isOpen:[{isOpenChanged:0}]}}static get style(){return"sd-select{display:inline-flex;flex-flow:column nowrap;height:fit-content}sd-select *:focus,sd-select *:focus-visible,sd-select *:focus-within{outline:none !important}sd-select .sd-select{width:100%}sd-select .sd-select .sd-select__trigger{padding:4px 28px 4px 12px;display:flex;width:100%;height:100%;align-items:center;cursor:pointer}.sd-field--disabled sd-select .sd-select .sd-select__trigger{cursor:not-allowed}sd-select .sd-select .sd-select__trigger .sd-select__value{flex:1;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;line-height:20px;font-size:12px;font-weight:400;text-align:left}sd-select .sd-select .sd-select__trigger .sd-select__clear{margin:0 4px;width:8px;height:8px;background-color:transparent;outline:none;border:none}sd-select .sd-select .sd-select__arrow{position:absolute;top:8px;right:8px;width:12px;height:12px;color:#888888;transition:transform 0.3s ease;margin-left:8px}sd-select .sd-select .sd-select__arrow--open{transform:rotate(180deg)}"}},[512,"sd-select",{value:[1032],options:[1040],placeholder:[1],optionPlaceholder:[1,"option-placeholder"],width:[1],dropdownHeight:[1,"dropdown-height"],autoFocus:[4,"auto-focus"],disabled:[4],clearable:[4],searchable:[4],label:[1],labelWidth:[8,"label-width"],addonLabel:[1,"addon-label"],icon:[16],labelTooltip:[1,"label-tooltip"],labelTooltipProps:[16],rules:[16],error:[4],optionRenderer:[16],isOpen:[32],itemIndex:[32],isScrolled:[32],sdOpen:[64],sdValidate:[64],sdReset:[64],sdResetValidate:[64],sdFocus:[64]},void 0,{isOpen:[{isOpenChanged:0}]}]),k=x,_=function(){"undefined"!=typeof customElements&&["sd-select","sd-button","sd-checkbox","sd-field","sd-floating-portal","sd-ghost-button","sd-icon","sd-input","sd-portal","sd-select-dropdown","sd-select-option","sd-select-search-input","sd-tooltip"].forEach((s=>{switch(s){case"sd-select":customElements.get(i(s))||customElements.define(i(s),x);break;case"sd-button":customElements.get(i(s))||r();break;case"sd-checkbox":customElements.get(i(s))||n();break;case"sd-field":customElements.get(i(s))||a();break;case"sd-floating-portal":customElements.get(i(s))||c();break;case"sd-ghost-button":customElements.get(i(s))||h();break;case"sd-icon":customElements.get(i(s))||p();break;case"sd-input":customElements.get(i(s))||m();break;case"sd-portal":customElements.get(i(s))||u();break;case"sd-select-dropdown":customElements.get(i(s))||b();break;case"sd-select-option":customElements.get(i(s))||f();break;case"sd-select-search-input":customElements.get(i(s))||g();break;case"sd-tooltip":customElements.get(i(s))||w()}}))};export{k as SdSelect,_ as defineCustomElement}
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
import type { Components, JSX } from "../types/components";
|
|
2
|
+
|
|
3
|
+
interface SdSwitch extends Components.SdSwitch, HTMLElement {}
|
|
4
|
+
export const SdSwitch: {
|
|
5
|
+
prototype: SdSwitch;
|
|
6
|
+
new (): SdSwitch;
|
|
7
|
+
};
|
|
8
|
+
/**
|
|
9
|
+
* Used to define this component and all nested components recursively.
|
|
10
|
+
*/
|
|
11
|
+
export const defineCustomElement: () => void;
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
import{p as s,H as t,c as i,h as e,t as d}from"./p-DuYi4aqj.js";var a="20",c="2",h="9999",o={size:"16",bg:"#FFFFFF"},n={on:"#0075FF",off:"#CCCCCC",disabled:{on:"#BBDAFF",off:"#E1E1E1"}},r={typography:{fontFamily:"Pretendard Variable, Pretendard, -apple-system, BlinkMacSystemFont, system-ui, Segoe UI, Apple SD Gothic Neo, Noto Sans KR, Malgun Gothic, Apple Color Emoji, Segoe UI Emoji, sans-serif",fontWeight:"500",fontSize:"12",textDecoration:"none",lineHeight:"20"}},b="6";const w=Number("32"),l=Number(a),f=Number(c),g=Number(h),p=Number(o.size),k=Number(b),u={knobBg:o.bg,bgOn:n.on,bgOff:n.off,bgDisabledOn:n.disabled.on,bgDisabledOff:n.disabled.off},m={fontFamily:r.typography.fontFamily,fontWeight:r.typography.fontWeight,fontSize:Number(r.typography.fontSize),lineHeight:Number(r.typography.lineHeight),textDecoration:r.typography.textDecoration},v=s(class extends t{constructor(s){super(),!1!==s&&this.__registerHost(),this.change=i(this,"sdUpdate",7)}value=!1;label="";disabled=!1;change;get switchClasses(){const s=["sd-switch",this.value?"sd-switch--on":"sd-switch--off"];return this.disabled&&s.push("sd-switch--disabled"),s.join(" ")}handleChange=()=>{if(this.disabled)return;const s=!this.value;this.value=s,this.change.emit(s)};render(){return e("label",{key:"44ff8ae899d3f1d7f20df43cab5ceb0987d0dab3","aria-label":this.label||"switch",class:this.switchClasses,style:{"--sd-switch-track-width":w+"px","--sd-switch-track-height":l+"px","--sd-switch-track-padding":f+"px","--sd-switch-track-radius":g+"px","--sd-switch-knob-size":p+"px","--sd-switch-knob-offset":w-p-2*f+"px","--sd-switch-knob-bg":u.knobBg,"--sd-switch-bg-on":u.bgOn,"--sd-switch-bg-off":u.bgOff,"--sd-switch-bg-disabled-on":u.bgDisabledOn,"--sd-switch-bg-disabled-off":u.bgDisabledOff,"--sd-switch-gap":k+"px","--sd-switch-font-family":m.fontFamily,"--sd-switch-font-weight":m.fontWeight,"--sd-switch-font-size":m.fontSize+"px","--sd-switch-line-height":m.lineHeight+"px","--sd-switch-text-decoration":m.textDecoration}},e("input",{key:"c7bd9e8ab470c575a52c33b482f83e0113917fda",type:"checkbox",checked:this.value,disabled:this.disabled,onInput:this.handleChange}),e("div",{key:"604c57baaea22b389e0d19b2c8a06421ab44063e",class:"sd-switch__track"},e("div",{key:"a9329987d6c2295a90fe6b4904eeea98b075b30c",class:"sd-switch__knob"})),this.label&&e("span",{key:"77cab17a2dbab5245f26c218a8b60f956770e316",class:"sd-switch__label"},this.label))}static get style(){return"sd-switch{display:inline-block;line-height:0}sd-switch .sd-switch{cursor:pointer;display:inline-flex;align-items:center;gap:var(--sd-switch-gap)}sd-switch .sd-switch>input{display:none}sd-switch .sd-switch__track{position:relative;width:var(--sd-switch-track-width);height:var(--sd-switch-track-height);border-radius:var(--sd-switch-track-radius);background:var(--sd-switch-bg-off);transition:background-color 0.2s ease}sd-switch .sd-switch__knob{position:absolute;top:var(--sd-switch-track-padding);left:var(--sd-switch-track-padding);width:var(--sd-switch-knob-size);height:var(--sd-switch-knob-size);border-radius:50%;background:var(--sd-switch-knob-bg);box-shadow:0 2px 4px rgba(0, 0, 0, 0.16);transition:transform 0.2s ease}sd-switch .sd-switch__label{font-family:var(--sd-switch-font-family);font-weight:var(--sd-switch-font-weight);font-size:var(--sd-switch-font-size);line-height:var(--sd-switch-line-height);text-decoration:var(--sd-switch-text-decoration)}sd-switch .sd-switch--on .sd-switch__track{background:var(--sd-switch-bg-on)}sd-switch .sd-switch--on .sd-switch__knob{transform:translateX(var(--sd-switch-knob-offset))}sd-switch .sd-switch--disabled{cursor:not-allowed}sd-switch .sd-switch--disabled.sd-switch--on .sd-switch__track{background:var(--sd-switch-bg-disabled-on)}sd-switch .sd-switch--disabled.sd-switch--off .sd-switch__track{background:var(--sd-switch-bg-disabled-off)}"}},[512,"sd-switch",{value:[1028],label:[1],disabled:[4]}]),y=v,x=function(){"undefined"!=typeof customElements&&["sd-switch"].forEach((s=>{"sd-switch"===s&&(customElements.get(d(s))||customElements.define(d(s),v))}))};export{y as SdSwitch,x as defineCustomElement}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{p as t,H as e,c as s,d as i,h as a,F as l,t as d}from"./p-D-pFdq6g.js";import{d as r}from"./p-DPipeCRI.js";import{d as n}from"./p-DXAB0k9r.js";import{d as h}from"./p-CEa1HSpw.js";import{d as o}from"./p-AdSqif48.js";import{d as c}from"./p-BFaIxm6b.js";import{d as b}from"./p-DSYw-7RA.js";import{d as _}from"./p-ClgihpRm.js";import{d as p}from"./p-BbtO5CEW.js";import{d as u}from"./p-CE1Hmoij.js";import{d as g}from"./p-DdBIc8AE.js";import{d as m}from"./p-BP-QKaKz.js";import{d as f}from"./p-BVBMsoZP.js";import{d as y}from"./p-DCv5afjJ.js";import{d as w}from"./p-Ci3yfjxH.js";import{d as k}from"./p-BUAwjF_Z.js";const v=t(class extends e{constructor(t){super(),!1!==t&&this.__registerHost(),this.sdSelectChange=s(this,"sdSelectChange",7),this.sdPageChange=s(this,"sdPageChange",7),this.sdRowsPerPageChange=s(this,"sdRowsPerPageChange",7)}get el(){return this}columns;rows;selected=[];rowKey="id";selectable=!1;resizable=!1;width;height;stickyHeader=!1;stickyColumn={left:0,right:0};noDataLabel="데이터가 없습니다.";isLoading=!1;pagination;useInternalPagination=!1;useRowsPerPageSelect=!1;rowsPerPageOption=[{label:"10개씩 보기",value:10},{label:"25개씩 보기",value:25},{label:"50개씩 보기",value:50},{label:"100개씩 보기",value:100}];useVirtualScroll={};virtualRowHeight=44;virtualColumnWidth=120;virtualBufferSize={vertical:5,horizontal:5};sdSelectChange;sdPageChange;sdRowsPerPageChange;currentPage=this.pagination?.page||1;innerRows=[];innerSelected=new Set;columnWidths=[];scrolledLeft=!1;scrolledRight=!1;virtualStartIndex=0;virtualEndIndex=0;scrollTopPosition=0;virtualStartColIdx=0;virtualEndColIdx=0;scrollLeftPosition=0;scrollRequestAnimationFrame=null;scrollContainer=null;resizeObserver=null;rafScheduled=!1;pendingUpdates={vertical:!1,horizontal:!1};cachedVirtualRows=null;cachedVirtualIndexKey="";cachedColumnOrder=null;lastColumnOrderKey="";cachedContainerHeight=0;cachedContainerWidth=0;stickyStyleCache=new Map;cachedIsAllChecked;lastSelectionKey="";onScroll;handleColumnsChange(t){this.columnWidths=this.getColumnWidths(t),this.refreshColumnLayout()}handleUseVirtualScrollChange(){this.columnWidths=this.getColumnWidths(this.columns||[]),this.refreshColumnLayout(),this.useVirtualScroll.vertical&&this.scheduleUpdate("vertical")}handleVirtualColumnWidthChange(){this.useVirtualScroll.horizontal&&(this.columnWidths=this.getColumnWidths(this.columns||[]),this.refreshColumnLayout())}handleSelectableChange(){this.refreshColumnLayout()}handleStickyColumnChange(){this.refreshColumnLayout()}handleColumnWidthsChange(){this.stickyStyleCache.clear(),this.useVirtualScroll.horizontal&&this.scheduleUpdate("horizontal")}handleRowsChange(t){this.innerRows=[...t],this.clearRowDerivedCache(),this.useVirtualScroll.vertical&&this.scheduleUpdate("vertical")}handleSelectedChange(t){this.innerSelected=new Set(this.dedupeRowsByKey(t||[])),this.clearSelectionCache()}cleanUpVirtualCache(){this.cachedVirtualRows=null,this.cachedVirtualIndexKey="",this.cachedColumnOrder=null,this.lastColumnOrderKey=""}refreshColumnLayout(){this.cleanUpVirtualCache(),this.stickyStyleCache.clear(),this.useVirtualScroll.horizontal&&this.scheduleUpdate("horizontal")}clearSelectionCache(){this.cachedIsAllChecked=void 0,this.lastSelectionKey=""}clearRowDerivedCache(){this.cleanUpVirtualCache(),this.clearSelectionCache()}handlePaginationChange(t){this.clearRowDerivedCache(),t?.page&&t.page!==this.currentPage&&(this.currentPage=t.page,this.useVirtualScroll.vertical&&this.scrollContainer&&(this.scrollContainer.scrollTo({top:0,behavior:"instant"}),this.scrollTopPosition=0,this.calculateVisibleRange()))}componentWillLoad(){this.innerRows=[...this.rows||[]],this.innerSelected=new Set(this.dedupeRowsByKey(this.selected||[])),this.columnWidths=this.getColumnWidths(this.columns||[]),this.pagination?.page&&(this.currentPage=this.pagination.page)}componentDidLoad(){i((()=>{const t=this.el.querySelector(".sd-table__middle");t&&(this.onScroll=()=>{const e=t.scrollLeft,s=t.scrollTop,i=this.useVirtualScroll.vertical&&this.scrollTopPosition!==s,a=this.useVirtualScroll.horizontal&&this.scrollLeftPosition!==e,l=e>0,d=e+t.clientWidth<t.scrollWidth;this.scrolledLeft===l&&this.scrolledRight===d||(this.scrolledLeft=l,this.scrolledRight=d),(i||a)&&(null!==this.scrollRequestAnimationFrame&&cancelAnimationFrame(this.scrollRequestAnimationFrame),this.scrollRequestAnimationFrame=requestAnimationFrame((()=>{i&&(this.scrollTopPosition=s,this.calculateVisibleRange()),a&&(this.scrollLeftPosition=e,this.calculateVisibleColumnRange()),this.scrollRequestAnimationFrame=null})))},this.scrollContainer=t,requestAnimationFrame((()=>{this.scrollContainer&&this.onScroll&&(this.cachedContainerHeight=this.scrollContainer.clientHeight,this.cachedContainerWidth=this.scrollContainer.clientWidth,t.addEventListener("scroll",this.onScroll,{passive:!0}),this.startResizeObserver(),this.useVirtualScroll.vertical&&this.calculateVisibleRange(),this.useVirtualScroll.horizontal&&this.calculateVisibleColumnRange(),this.onScroll())})))}))}changePage(t){this.useInternalPagination?(this.currentPage=t,this.clearRowDerivedCache(),this.useVirtualScroll.vertical&&this.scrollContainer&&(this.scrollContainer.scrollTo({top:0,behavior:"instant"}),this.scrollTopPosition=0,this.calculateVisibleRange()),this.sdPageChange.emit(this.currentPage)):this.sdPageChange.emit(t)}changeRowsPerPage(t){const e=t?Number(t):0;if(!this.useInternalPagination)return void this.sdRowsPerPageChange.emit(e);const s=Number(t||0);let i=Math.max(1,Math.ceil(this.innerRows.length/s)),a=this.currentPage;a>i&&(a=i),this.pagination={page:a,rowsPerPage:s,lastPage:i},this.currentPage=a,this.clearRowDerivedCache(),this.useVirtualScroll.vertical&&this.scrollContainer&&(this.scrollContainer.scrollTo({top:0,behavior:"instant"}),this.scrollTopPosition=0,this.calculateVisibleRange()),this.sdRowsPerPageChange.emit(e)}disconnectedCallback(){this.scrollContainer&&this.onScroll&&this.scrollContainer.removeEventListener("scroll",this.onScroll),this.resizeObserver?.disconnect(),null!==this.scrollRequestAnimationFrame&&cancelAnimationFrame(this.scrollRequestAnimationFrame)}get tableColumns(){return this.columns||[]}get paginatedRows(){if(!this.pagination||!this.useInternalPagination)return this.innerRows;const{rowsPerPage:t=this.rows.length}=this.pagination||{};return this.innerRows.slice((this.currentPage-1)*t,this.currentPage*t)}get virtualRows(){const t=`${this.useInternalPagination?`${this.currentPage}-${this.pagination?.rowsPerPage??"all"}`:"all"}-${this.innerRows.length}-${this.virtualStartIndex}-${this.virtualEndIndex}`;return this.cachedVirtualRows&&this.cachedVirtualIndexKey===t||(this.cachedVirtualIndexKey=t,this.cachedVirtualRows=this.useVirtualScroll.vertical?this.paginatedRows.slice(this.virtualStartIndex,this.virtualEndIndex+1).map(((t,e)=>({row:t,actualIndex:this.virtualStartIndex+e}))):this.paginatedRows.map(((t,e)=>({row:t,actualIndex:e})))),this.cachedVirtualRows}get topSpacerHeight(){return this.useVirtualScroll.vertical&&0!==this.virtualStartIndex?this.virtualStartIndex*this.virtualRowHeight:0}get bottomSpacerHeight(){if(!this.useVirtualScroll.vertical)return 0;const t=this.paginatedRows.length-this.virtualEndIndex-1;return t>0?t*this.virtualRowHeight:0}getHorizontalSpacerWidth(t){const{stickyLeftCount:e,stickyRightCount:s}=this.getNormalizedStickyCounts(),i=this.columnWidths.slice(e,this.tableColumns.length-s);return"right"===t&&i.length-this.virtualEndColIdx-1<=0?0:i.slice(..."left"===t?[0,this.virtualStartColIdx]:[this.virtualEndColIdx+1]).reduce(((t,e)=>t+e),0)}get leftSpacerWidth(){return this.useVirtualScroll.horizontal&&0!==this.virtualStartColIdx?this.getHorizontalSpacerWidth("left"):0}get rightSpacerWidth(){return this.useVirtualScroll.horizontal?this.getHorizontalSpacerWidth("right"):0}get totalVirtualHeight(){return this.useVirtualScroll.vertical?this.paginatedRows.length*this.virtualRowHeight:0}get lastPageNumber(){const{lastPage:t,rowsPerPage:e=this.rows.length}=this.pagination||{};return t??Math.max(1,Math.ceil(this.rows.length/e))}get sdTableClasses(){return["sd-table",this.stickyHeader&&"sd-table--sticky-header",this.selectable&&"sd-table--selectable",this.resizable&&"sd-table--resizable",!this.innerRows.length&&"sd-table--no-data",this.hasStickyColumn&&"sd-table--sticky-column",this.scrolledLeft&&"sd-table--scrolled-left",this.scrolledRight&&"sd-table--scrolled-right"].filter(Boolean).join(" ")}get hasStickyColumn(){const{stickyLeftCount:t,stickyRightCount:e}=this.getNormalizedStickyCounts();return this.selectable||t>0||e>0}get hasStickyLeftDataColumn(){return this.getNormalizedStickyCounts().stickyLeftCount>0}isRowSelected(t){return Array.from(this.innerSelected).some((e=>this.getRowKeyValue(e)===this.getRowKeyValue(t)))}updateRowSelect(t){const e=Array.from(this.innerSelected),s=this.isRowSelected(t)?e.filter((e=>this.getRowKeyValue(e)!==this.getRowKeyValue(t))):[...e,t];s.length!==e.length&&(this.innerSelected=new Set(this.dedupeRowsByKey(s)),this.clearSelectionCache(),this.selected=Array.from(this.innerSelected),this.sdSelectChange.emit(Array.from(this.innerSelected)))}toggleSelectAll(t){const e=Array.from(this.innerSelected);if(t)this.innerSelected=new Set(this.dedupeRowsByKey([...e,...this.paginatedRows]));else{const t=new Set(this.paginatedRows.map((t=>this.getRowKeyValue(t))));this.innerSelected=new Set(e.filter((e=>!t.has(this.getRowKeyValue(e)))))}this.clearSelectionCache(),this.selected=Array.from(this.innerSelected),this.sdSelectChange.emit(Array.from(this.innerSelected))}get isAllChecked(){const t=`${this.paginatedRows.map((t=>this.getRowKeyValue(t)+"")).join("|")}::${Array.from(this.innerSelected).map((t=>this.getRowKeyValue(t)+"")).sort().join("|")}`;if(void 0!==this.cachedIsAllChecked&&this.lastSelectionKey===t)return this.cachedIsAllChecked;const e=this.paginatedRows.length,s=this.paginatedRows.filter((t=>Array.from(this.innerSelected).some((e=>this.getRowKeyValue(e)===this.getRowKeyValue(t))))).length;let i;return i=0!==s&&(s===e||null),this.cachedIsAllChecked=i,this.lastSelectionKey=t,i}scheduleUpdate(t){this.pendingUpdates[t]=!0,this.rafScheduled||(this.rafScheduled=!0,this.scrollRequestAnimationFrame=requestAnimationFrame((()=>{this.pendingUpdates.vertical&&this.calculateVisibleRange(),this.pendingUpdates.horizontal&&this.calculateVisibleColumnRange(),this.pendingUpdates={vertical:!1,horizontal:!1},this.rafScheduled=!1,this.scrollRequestAnimationFrame=null})))}calculateVisibleRange(){if(!this.useVirtualScroll.vertical)return this.virtualStartIndex=0,void(this.virtualEndIndex=this.paginatedRows.length-1);const t=this.scrollTopPosition;let e=this.cachedContainerHeight;0===e&&this.scrollContainer&&(e=this.scrollContainer.clientHeight,this.cachedContainerHeight=e);const s=this.virtualBufferSize.vertical||5,i=Math.floor(t/this.virtualRowHeight),a=i+Math.ceil(e/this.virtualRowHeight)-1,l=Math.max(0,i-s),d=Math.min(this.paginatedRows.length-1,a+s);this.virtualStartIndex===l&&this.virtualEndIndex===d||(this.virtualStartIndex=l,this.virtualEndIndex=d)}calculateVisibleColumnRange(){if(!this.useVirtualScroll.horizontal)return this.virtualStartColIdx=0,void(this.virtualEndColIdx=this.tableColumns.length-1);const t=this.scrollLeftPosition;let e=this.cachedContainerWidth;0===e&&this.scrollContainer&&(e=this.scrollContainer.clientWidth,this.cachedContainerWidth=e);const{stickyLeftCount:s,stickyRightCount:i}=this.getNormalizedStickyCounts(),a=this.tableColumns.slice(s,this.tableColumns.length-i);if(0===a.length)return this.virtualStartColIdx=0,void(this.virtualEndColIdx=0);const l=this.columnWidths.slice(0,s).reduce(((t,e)=>t+e),0)+(this.selectable?52:0),d=e-l-this.columnWidths.slice(this.tableColumns.length-i).reduce(((t,e)=>t+e),0),r=this.columnWidths.slice(s,this.tableColumns.length-i),n=Math.max(0,t-l),h=r.reduce(((t,e,s)=>(t.push((t[s-1]||0)+e),t)),[]);let o=0,c=a.length-1;for(let t=0;t<h.length;t++)if(h[t]>n){o=Math.max(0,t);break}const b=n+d;for(let t=o;t<h.length;t++)if(h[t]>=b){c=Math.min(a.length-1,t);break}const _=this.virtualBufferSize.horizontal||5,p=Math.max(0,o-_),u=Math.min(a.length-1,c+_);this.virtualStartColIdx===p&&this.virtualEndColIdx===u||(this.virtualStartColIdx=p,this.virtualEndColIdx=u)}getStickyStyle(t){if(this.stickyStyleCache.has(t))return this.stickyStyleCache.get(t);const e=this.columnWidths.slice(0,t).reduce(((t,e)=>t+e),0)+(this.selectable?52:0),{stickyRightCount:s}=this.getNormalizedStickyCounts(),i={"--sticky-left-offset":e+"px","--sticky-right-offset":this.columnWidths.filter(((e,i)=>i>=this.tableColumns.length-s&&i>t)).reduce(((t,e)=>t+e),0)+"px",width:this.columnWidths[t]+"px",minWidth:this.columnWidths[t]+"px",maxWidth:this.columnWidths[t]+"px"};return this.stickyStyleCache.set(t,i),i}startResizeObserver(){this.scrollContainer&&"undefined"!=typeof ResizeObserver&&(this.resizeObserver?.disconnect(),this.resizeObserver=new ResizeObserver((()=>{if(!this.scrollContainer)return;const t=this.scrollContainer.clientHeight,e=this.scrollContainer.clientWidth,s=this.cachedContainerHeight!==t,i=this.cachedContainerWidth!==e;(s||i)&&(this.cachedContainerHeight=t,this.cachedContainerWidth=e,s&&this.useVirtualScroll.vertical&&this.scheduleUpdate("vertical"),i&&this.useVirtualScroll.horizontal&&this.scheduleUpdate("horizontal"))})),this.resizeObserver.observe(this.scrollContainer))}parseColumnWidth(t,e){if("number"==typeof t)return Number.isFinite(t)?t:e;if("string"!=typeof t)return e;const s=t.trim();return s&&(/^\d+(\.\d+)?px$/.test(s)||/^\d+(\.\d+)?$/.test(s))?Number.parseFloat(s):e}getColumnWidths(t=[]){const e=this.useVirtualScroll.horizontal?this.virtualColumnWidth:120;return t.map((t=>this.parseColumnWidth(t.width,e)))}getNormalizedStickyCounts(){const t=this.tableColumns.length,e=Number(this.stickyColumn?.left??0)||0,s=Number(this.stickyColumn?.right??0)||0,i=Math.min(t,Math.max(0,e));return{stickyLeftCount:i,stickyRightCount:Math.min(Math.max(0,t-i),Math.max(0,s))}}getRowKeyValue(t){return t?.[this.rowKey]}dedupeRowsByKey(t){const e=new Map;return t.forEach((t=>{e.set(this.getRowKeyValue(t),t)})),Array.from(e.values())}handleResize(t,e){if("undefined"==typeof document)return;const s=e.clientX,i=this.columnWidths[t],a=e=>{if(!this.columnWidths[t])return;const a=this.tableColumns[t],l=a?.minWidth||50,d=a?.maxWidth||9999,r=Math.min(Math.max(i+e.clientX-s,l),d);this.columnWidths=this.columnWidths.map(((e,s)=>s===t?r:e))},l=()=>{document.removeEventListener("mousemove",a),document.removeEventListener("mouseup",l)};document.addEventListener("mousemove",a),document.addEventListener("mouseup",l)}getCellValue(t,e){const{field:s,format:i,name:a}=t,l="function"==typeof s?s(e):s?e[s]:e[a];return i?i(l,e):l}getColumnRenderedInOrder(){const{stickyLeftCount:t,stickyRightCount:e}=this.getNormalizedStickyCounts(),s=`${this.tableColumns.map((t=>t.name)).join("|")}-${t}-${e}-${this.useVirtualScroll.horizontal?`${this.virtualStartColIdx}-${this.virtualEndColIdx}`:"all"}`;if(this.cachedColumnOrder&&this.lastColumnOrderKey===s)return this.cachedColumnOrder;const i=this.tableColumns.slice(0,t),a=this.tableColumns.slice(this.tableColumns.length-e),l=this.useVirtualScroll.horizontal?this.tableColumns.slice(t,this.tableColumns.length-e).slice(this.virtualStartColIdx,this.virtualEndColIdx+1):this.tableColumns.slice(t,this.tableColumns.length-e);return this.cachedColumnOrder={stickyLeftCount:t,stickyRightCount:e,stickyLeftCols:i,middleCols:l,stickyRightCols:a},this.lastColumnOrderKey=s,this.cachedColumnOrder}renderHead(){const{stickyLeftCount:t,stickyRightCount:e,stickyLeftCols:s,middleCols:i,stickyRightCols:l}=this.getColumnRenderedInOrder();return a("thead",null,a("tr",null,this.selectable&&a("th",{class:{"sd-th":!0,"sd-th--selected":!0,"sticky-left":!0,"sticky-left-edge":!this.hasStickyLeftDataColumn},style:{"--sticky-left-offset":"0px"}},a("sd-checkbox",{value:this.isAllChecked,disabled:!this.paginatedRows.length,onSdUpdate:t=>this.toggleSelectAll(t.detail)})),s.map(((e,s)=>a("th",{key:e.name,class:{"sd-th":!0,[""+e.thClass]:!!e.thClass,"sticky-left":!0,"sticky-left-edge":s===t-1},style:{...e.thStyle,...this.getStickyStyle(s)}},a("div",{class:"sd-th__content sd-th__content--"+(e.align||"left")},a("slot",{name:"header-cell-"+e.name},a("div",{class:"sd-th__content--label"},e.label)),e.usePageMoveIcon&&a("sd-icon",{name:"pageMove",size:"12",color:"#006AC1"}),e.tooltip&&a("sd-tooltip",{...e.tooltipOptions},a("div",{slot:"content"},e.tooltip.map((t=>a("p",null,t)))))),this.resizable&&"undefined"!=typeof window&&a("div",{class:"sd-th__resizer",onMouseDown:t=>this.handleResize(s,t)})))),this.renderSpacerTh("left"),i.map(((e,s)=>{const i=t+this.virtualStartColIdx+s;return a("th",{key:e.name,class:{"sd-th":!0,[""+e.thClass]:!!e.thClass},style:{...e.thStyle,...this.getStickyStyle(i)}},a("div",{class:"sd-th__content sd-th__content--"+(e.align||"left")},a("slot",{name:"header-cell-"+e.name},a("div",{class:"sd-th__content--label"},e.label)),e.usePageMoveIcon&&a("sd-icon",{name:"pageMove",size:"12",color:"#006AC1"}),e.tooltip&&a("sd-tooltip",{...e.tooltipOptions},a("div",{slot:"content"},e.tooltip.map((t=>a("p",null,t)))))),this.resizable&&"undefined"!=typeof window&&a("div",{class:"sd-th__resizer",onMouseDown:t=>this.handleResize(i,t)}))})),this.renderSpacerTh("right"),l.map(((t,s)=>{const i=this.tableColumns.length-e+s;return a("th",{key:t.name,class:{"sd-th":!0,[""+t.thClass]:!!t.thClass,"sticky-right":!0,"sticky-right-edge":0===s},style:{...t.thStyle,...this.getStickyStyle(i)}},a("div",{class:"sd-th__content sd-th__content--"+(t.align||"left")},a("slot",{name:"header-cell-"+t.name},a("div",{class:"sd-th__content--label"},t.label)),t.usePageMoveIcon&&a("sd-icon",{name:"pageMove",size:"12",color:"#006AC1"}),t.tooltip&&a("sd-tooltip",{...t.tooltipOptions},a("div",{slot:"content"},t.tooltip.map((t=>a("p",null,t)))))),this.resizable&&"undefined"!=typeof window&&a("div",{class:"sd-th__resizer",onMouseDown:t=>this.handleResize(i,t)}))}))))}renderBody(){return a("tbody",{...!this.paginatedRows.length&&{part:"tbody-empty"},class:"sd-table-tbody "+(this.useVirtualScroll.vertical?"sd-table-tbody--virtual-scroll":""),style:{"--total-virtual-height":this.totalVirtualHeight+"px"}},this.useVirtualScroll.vertical&&this.topSpacerHeight>0&&this.renderSpacerRow("top"),this.paginatedRows.length>0&&this.virtualRows.map((({row:t,actualIndex:e})=>this.renderRow(t,e))),this.useVirtualScroll.vertical&&this.bottomSpacerHeight>0&&this.renderSpacerRow("bottom"))}renderRow(t,e){const{stickyLeftCount:s,stickyRightCount:i,stickyLeftCols:l,middleCols:d,stickyRightCols:r}=this.getColumnRenderedInOrder();return a("tr",{key:t[this.rowKey],class:"hover:bg-Grey_Lighten-6",style:this.useVirtualScroll.vertical?{height:this.virtualRowHeight+"px"}:{}},this.selectable&&a("td",{class:{"sd-td":!0,"sd-td--selected":!0,"sticky-left":!0,"sticky-left-edge":!this.hasStickyLeftDataColumn},style:{"--sticky-left-offset":"0px"}},a("sd-checkbox",{value:this.isRowSelected(t),disabled:!this.paginatedRows.length,onSdUpdate:()=>this.updateRowSelect(t)})),l.map(((i,l)=>a("td",{key:i.name,part:"td-"+i.name,class:{"sd-td":!0,["sd-td--"+(i.align||"left")]:!0,"sticky-left":!0,"sticky-left-edge":l===s-1,[""+i.tdClass]:!!i.tdClass},style:this.getStickyStyle(l)},a("slot",{name:`body-cell-${i.name}-${e}`},this.getCellValue(i,t))))),this.renderSpacerTd("left",e),d.map(((i,l)=>{const d=s+this.virtualStartColIdx+l;return a("td",{key:i.name,part:"td-"+i.name,class:{"sd-td":!0,["sd-td--"+(i.align||"left")]:!0,[""+i.tdClass]:!!i.tdClass},style:this.getStickyStyle(d)},a("slot",{name:`body-cell-${i.name}-${e}`},this.getCellValue(i,t)))})),this.renderSpacerTd("right",e),r.map(((s,l)=>{const d=this.tableColumns.length-i+l;return a("td",{key:s.name,part:"td-"+s.name,class:{"sd-td":!0,["sd-td--"+(s.align||"left")]:!0,"sticky-right":!0,"sticky-right-edge":0===l,[""+s.tdClass]:!!s.tdClass},style:this.getStickyStyle(d)},a("slot",{name:`body-cell-${s.name}-${e}`},this.getCellValue(s,t)))})))}renderSpacerRow(t){return a("tr",{key:`virtual-${t}-spacer`,class:"sd-table__virtual-row-spacer",style:{height:("top"===t?this.topSpacerHeight:this.bottomSpacerHeight)+"px"},"aria-hidden":"true"},a("td",{colSpan:this.tableColumns.length+(this.selectable?1:0)},a("div",{class:"sd-table__skeleton",style:{"--row-height":this.virtualRowHeight+"px"}})))}getSpacerCellStyle(t){return{width:t+"px",minWidth:t+"px",maxWidth:t+"px",padding:"0",border:"none"}}renderSpacerTh(t){return("left"===t?this.useVirtualScroll.horizontal&&this.leftSpacerWidth>0:this.useVirtualScroll.horizontal&&this.rightSpacerWidth>0)?a("th",{key:`virtual-${t}-spacer-header`,class:"sd-table__virtual-spacer",style:this.getSpacerCellStyle("left"===t?this.leftSpacerWidth:this.rightSpacerWidth),"aria-hidden":"true"},a("div",{class:"sd-table__skeleton-cell"})):null}renderSpacerTd(t,e){return("left"===t?this.useVirtualScroll.horizontal&&this.leftSpacerWidth>0:this.useVirtualScroll.horizontal&&this.rightSpacerWidth>0)?a("td",{key:`virtual-${t}-spacer-${e}`,class:"sd-table__virtual-spacer",style:this.getSpacerCellStyle("left"===t?this.leftSpacerWidth:this.rightSpacerWidth),"aria-hidden":"true"},a("div",{class:"sd-table__skeleton-cell"})):null}render(){return a(l,{key:"cc7236bc2511f0b7c6bd31610e005c558e4dda81"},a("div",{key:"c78feb1d4ba89c8340660405598c8892d660078d",class:"sd-table__wrapper",style:{"--table-width":this.width,"--table-height":this.height}},a("div",{key:"e127e5e51cfa1b930a79d031ff4fbffac3cf8b69",class:"sd-table__container",style:{"--table-container-height":`calc(${this.height} - ${this.pagination&&this.innerRows.length>0?48:0}px)`}},a("div",{key:"ea47affe622b7f7c98b9c044db73f275a9c7b8ba",class:{"sd-table__middle":!0,"sd-table__middle--scrollable":this.paginatedRows.length>0,"sd-table__middle--loading":this.isLoading}},this.isLoading&&a("div",{key:"52c9d3a0b83bf786980cb6561b39234d3f1697ad",class:"sd-table__middle--loading__spinner"},a("sd-loading-spinner",{key:"60d8f10a4f35e509969190ab23713057f9fb1efb"})),a("table",{key:"fd25840b4aeddd456d97c7397541da58c8d0aed9",part:"table",class:this.sdTableClasses},this.renderHead(),this.renderBody())),!this.paginatedRows.length&&a("div",{key:"5d1ed19126eb328a78ff50e701392b0d18208030",class:"sd-table__bottom"},a("div",{key:"e3cc512088e0bf7f6ec9699c1ce948910d621e45",class:"sd-table__no-data"},a("slot",{key:"a5285e5d607a66a6e9f7993c6a82dc9bd6d53a08",name:"no-data"},this.noDataLabel)))),this.pagination&&this.innerRows.length>0&&a("div",{key:"1a57bf7960624ebfd80005cd320d0d29ed7b6123",class:"sd-table__pagination"},a("sd-pagination",{key:"dbc457c10036556928c3503ef84b8bfc29849342",currentPage:this.useInternalPagination?this.currentPage:this.pagination.page,lastPage:this.useInternalPagination?this.lastPageNumber:this.pagination.lastPage,onSdPageChange:t=>this.changePage(t.detail)}),this.useRowsPerPageSelect&&a("sd-select",{key:"6a0bdf472ed0dfca4c57725635c50bf1a375f11c",value:this.pagination.rowsPerPage,options:this.rowsPerPageOption,width:"128px",onSdUpdate:t=>this.changeRowsPerPage(t.detail.value)}))))}static get watchers(){return{columns:[{handleColumnsChange:0}],useVirtualScroll:[{handleUseVirtualScrollChange:0}],virtualColumnWidth:[{handleVirtualColumnWidthChange:0}],selectable:[{handleSelectableChange:0}],stickyColumn:[{handleStickyColumnChange:0}],columnWidths:[{handleColumnWidthsChange:0}],rows:[{handleRowsChange:0}],selected:[{handleSelectedChange:0}],pagination:[{handlePaginationChange:0}]}}static get style(){return'.sd-table__wrapper{height:var(--table-height, auto);width:var(--table-width, 100%);color:#222222}.sd-table__wrapper .sd-table__container{width:100%;height:var(--table-container-height, auto);display:flex;flex-direction:column;position:relative;border:1px solid #E1E1E1;border-radius:8px;font-size:12px;overflow:hidden;background:#FFFFFF}.sd-table__wrapper .sd-table__container .sd-table__middle{overflow:auto;will-change:scroll-position;min-height:var(--table-container-height, auto)}.sd-table__wrapper .sd-table__container .sd-table__middle--scrollable{height:var(--table-container-height, auto)}.sd-table__wrapper .sd-table__container .sd-table__middle--loading{overflow:hidden !important;pointer-events:none}.sd-table__wrapper .sd-table__container .sd-table__middle--loading__spinner{position:absolute;top:0;left:0;width:100%;height:var(--table-container-height, 100%);min-height:var(--table-container-height, 100%);background:rgba(255, 255, 255, 0.6);z-index:200;display:flex;align-items:center;justify-content:center}.sd-table__wrapper .sd-table__container .sd-table__middle .sd-table{background-color:white;display:table;width:100%;border-collapse:separate;border-spacing:0;table-layout:fixed}.sd-table__wrapper .sd-table__container .sd-table__middle .sd-table tbody.sd-table-tbody--virtual-scroll{position:relative;height:var(--total-virtual-height, --table-container-height, auto)}.sd-table__wrapper .sd-table__container .sd-table__middle .sd-table tbody.sd-table-tbody--virtual-scroll tr:not([aria-hidden=true]){width:100%}.sd-table__wrapper .sd-table__container .sd-table__middle .sd-table tbody.sd-table-tbody--virtual-scroll tr[aria-hidden=true]{padding:0;border:none}.sd-table__wrapper .sd-table__container .sd-table__middle .sd-table tbody.sd-table-tbody--virtual-scroll tr[aria-hidden=true]:not(.sd-table__virtual-row-spacer) td{display:none}.sd-table__wrapper .sd-table__container .sd-table__middle .sd-table--selectable td.sd-td--selected,.sd-table__wrapper .sd-table__container .sd-table__middle .sd-table--selectable th.sd-th--selected{position:relative;width:52px !important;max-width:52px !important;min-width:52px !important;padding:0 10px 0 24px;text-align:left}.sd-table__wrapper .sd-table__container .sd-table__middle .sd-table--selectable td.sd-td--selected sd-checkbox label,.sd-table__wrapper .sd-table__container .sd-table__middle .sd-table--selectable th.sd-th--selected sd-checkbox label{position:relative}.sd-table__wrapper .sd-table__container .sd-table__middle .sd-table--selectable td.sd-td--selected sd-checkbox label:before,.sd-table__wrapper .sd-table__container .sd-table__middle .sd-table--selectable th.sd-th--selected sd-checkbox label:before{content:"";position:absolute;inset:-6px}.sd-table__wrapper .sd-table__container .sd-table__middle .sd-table--sticky-header thead{position:sticky;top:0;z-index:120}.sd-table__wrapper .sd-table__container .sd-table__middle .sd-table--sticky-column th.sticky-left,.sd-table__wrapper .sd-table__container .sd-table__middle .sd-table--sticky-column th.sticky-right{position:sticky;background-color:#F5FAFF;z-index:110 !important}.sd-table__wrapper .sd-table__container .sd-table__middle .sd-table--sticky-column td.sticky-left,.sd-table__wrapper .sd-table__container .sd-table__middle .sd-table--sticky-column td.sticky-right{position:sticky;background-color:white;z-index:100 !important}.sd-table__wrapper .sd-table__container .sd-table__middle .sd-table--sticky-column .sticky-left{left:var(--sticky-left-offset, 0)}.sd-table__wrapper .sd-table__container .sd-table__middle .sd-table--sticky-column .sticky-right{right:var(--sticky-right-offset, 0)}.sd-table__wrapper .sd-table__container .sd-table__middle .sd-table--sticky-column th.sticky-cell{position:sticky;z-index:102;background-color:#F5FAFF}.sd-table__wrapper .sd-table__container .sd-table__middle .sd-table--sticky-column td.sticky-cell{position:sticky;z-index:101;background-color:white}.sd-table__wrapper .sd-table__container .sd-table__middle .sd-table--scrolled-left th.sticky-left-edge,.sd-table__wrapper .sd-table__container .sd-table__middle .sd-table--scrolled-left td.sticky-left-edge{overflow:visible}.sd-table__wrapper .sd-table__container .sd-table__middle .sd-table--scrolled-left th.sticky-left-edge:after,.sd-table__wrapper .sd-table__container .sd-table__middle .sd-table--scrolled-left td.sticky-left-edge:after{content:"";position:absolute;top:0;left:100%;right:-20px;width:20px;height:100%;z-index:101 !important;box-shadow:inset 12px 0 20px -25px;opacity:1;pointer-events:none}.sd-table__wrapper .sd-table__container .sd-table__middle .sd-table--scrolled-right th.sticky-right-edge,.sd-table__wrapper .sd-table__container .sd-table__middle .sd-table--scrolled-right td.sticky-right-edge{overflow:visible}.sd-table__wrapper .sd-table__container .sd-table__middle .sd-table--scrolled-right th.sticky-right-edge:after,.sd-table__wrapper .sd-table__container .sd-table__middle .sd-table--scrolled-right td.sticky-right-edge:after{content:"";position:absolute;top:0;left:-20px;width:20px;height:100%;z-index:101 !important;box-shadow:inset -12px 0 20px -25px;opacity:1;pointer-events:none}.sd-table__wrapper .sd-table__container .sd-table__middle .sd-table--no-data thead{opacity:0.4}.sd-table__wrapper .sd-table__container .sd-table__middle .sd-table--no-data thead tr th.sd-th{border-bottom:1px solid rgba(225, 225, 225, 0.4) !important}.sd-table__wrapper .sd-table__container .sd-table__middle .sd-table sd-td,.sd-table__wrapper .sd-table__container .sd-table__middle .sd-table sd-th,.sd-table__wrapper .sd-table__container .sd-table__middle .sd-table .sd-th__content--label{overflow:hidden;white-space:nowrap;text-overflow:ellipsis;word-break:keep-all}.sd-table__wrapper .sd-table__container .sd-table__middle .sd-table thead{height:36px}.sd-table__wrapper .sd-table__container .sd-table__middle .sd-table thead tr{width:100%}.sd-table__wrapper .sd-table__container .sd-table__middle .sd-table thead tr th{background:#F5FAFF;height:36px;padding:0 16px;font-weight:500;vertical-align:middle;border-bottom:1px solid #E1E1E1;-webkit-user-select:none;user-select:none;position:relative}.sd-table__wrapper .sd-table__container .sd-table__middle .sd-table thead tr th.sd-th .sd-th__content{display:flex;flex-flow:row nowrap;align-items:center;gap:4px}.sd-table__wrapper .sd-table__container .sd-table__middle .sd-table thead tr th.sd-th .sd-th__content--left{justify-content:flex-start}.sd-table__wrapper .sd-table__container .sd-table__middle .sd-table thead tr th.sd-th .sd-th__content--center{justify-content:center}.sd-table__wrapper .sd-table__container .sd-table__middle .sd-table thead tr th.sd-th .sd-th__content--right{justify-content:flex-end}.sd-table__wrapper .sd-table__container .sd-table__middle .sd-table thead tr th.sd-th .sd-th__resizer{position:absolute;top:50%;right:0;transform:translateY(-50%);width:4px;height:16px;cursor:col-resize;z-index:3;border-left:1px solid #CCCCCC;border-right:1px solid #CCCCCC}.sd-table__wrapper .sd-table__container .sd-table__middle .sd-table tbody tr td{height:44px;padding:0 16px;border-bottom:1px solid #E1E1E1;background:white;vertical-align:middle}.sd-table__wrapper .sd-table__container .sd-table__middle .sd-table tbody tr td.sd-td--left{text-align:left}.sd-table__wrapper .sd-table__container .sd-table__middle .sd-table tbody tr td.sd-td--center{text-align:center}.sd-table__wrapper .sd-table__container .sd-table__middle .sd-table tbody tr td.sd-td--right{text-align:right}.sd-table__wrapper .sd-table__container .sd-table__bottom{background:transparent;text-align:center;display:flex;align-items:center;justify-content:center;flex:1;min-height:240px;translate:0 -10%;pointer-events:none}.sd-table__wrapper .sd-table__container .sd-table__bottom .sd-table__no-data{font-size:12px;color:#888888}.sd-table__wrapper .sd-table__pagination{position:relative;background:#F9F9F9;height:48px;display:flex;align-items:center;justify-content:center;border:1px solid #E1E1E1;border-top:none;border-radius:8px}.sd-table__wrapper .sd-table__pagination sd-select{position:absolute;right:10px;top:50%;transform:translateY(-50%)}.sd-table__wrapper .sd-table__virtual-spacer,.sd-table__wrapper .sd-table__virtual-row-spacer{padding:0 !important}.sd-table__wrapper .sd-table__virtual-spacer td,.sd-table__wrapper .sd-table__virtual-row-spacer td{padding:0 !important;border:none}.sd-table__wrapper .sd-table__virtual-spacer .sd-table__skeleton,.sd-table__wrapper .sd-table__virtual-row-spacer .sd-table__skeleton{width:100%;height:100%;background-image:repeating-linear-gradient(0deg, rgba(246, 246, 246, 0.3) 0px, rgba(225, 225, 225, 0.5) calc(var(--row-height, 44px) / 2), rgba(246, 246, 246, 0.3) var(--row-height, 44px));background-size:100% 200%;animation:skeleton-loading 1.5s ease-in-out infinite;position:relative}.sd-table__wrapper .sd-table__virtual-spacer .sd-table__skeleton::before,.sd-table__wrapper .sd-table__virtual-row-spacer .sd-table__skeleton::before{content:"";position:absolute;top:0;left:0;right:0;bottom:0;background-image:repeating-linear-gradient(to bottom, transparent 0, transparent calc(var(--row-height, 44px) - 1px), #E1E1E1 calc(var(--row-height, 44px) - 1px), #E1E1E1 var(--row-height, 44px));pointer-events:none}.sd-table__wrapper .sd-table__skeleton-cell{width:100%;height:20px;background:linear-gradient(90deg, rgba(246, 246, 246, 0.3) 0%, rgba(225, 225, 225, 0.5) 50%, rgba(246, 246, 246, 0.3) 100%);background-size:200% 100%;animation:skeleton-loading 1.5s ease-in-out infinite;border-radius:4px}@keyframes skeleton-loading{0%{background-position:0% 0%}50%{background-position:100% 100%}100%{background-position:0% 0%}}'}},[772,"sd-table",{columns:[16],rows:[1040],selected:[1040],rowKey:[1,"row-key"],selectable:[4],resizable:[4],width:[1],height:[1],stickyHeader:[4,"sticky-header"],stickyColumn:[16],noDataLabel:[1,"no-data-label"],isLoading:[4,"is-loading"],pagination:[16],useInternalPagination:[4,"use-internal-pagination"],useRowsPerPageSelect:[4,"use-rows-per-page-select"],rowsPerPageOption:[16],useVirtualScroll:[16],virtualRowHeight:[2,"virtual-row-height"],virtualColumnWidth:[2,"virtual-column-width"],virtualBufferSize:[16],currentPage:[32],innerRows:[32],innerSelected:[32],columnWidths:[32],scrolledLeft:[32],scrolledRight:[32],virtualStartIndex:[32],virtualEndIndex:[32],scrollTopPosition:[32],virtualStartColIdx:[32],virtualEndColIdx:[32],scrollLeftPosition:[32]},void 0,{columns:[{handleColumnsChange:0}],useVirtualScroll:[{handleUseVirtualScrollChange:0}],virtualColumnWidth:[{handleVirtualColumnWidthChange:0}],selectable:[{handleSelectableChange:0}],stickyColumn:[{handleStickyColumnChange:0}],columnWidths:[{handleColumnWidthsChange:0}],rows:[{handleRowsChange:0}],selected:[{handleSelectedChange:0}],pagination:[{handlePaginationChange:0}]}]),C=v,x=function(){"undefined"!=typeof customElements&&["sd-table","sd-button","sd-checkbox","sd-field","sd-floating-portal","sd-ghost-button","sd-icon","sd-input","sd-loading-spinner","sd-pagination","sd-portal","sd-select","sd-select-dropdown","sd-select-option","sd-select-search-input","sd-tooltip"].forEach((t=>{switch(t){case"sd-table":customElements.get(d(t))||customElements.define(d(t),v);break;case"sd-button":customElements.get(d(t))||r();break;case"sd-checkbox":customElements.get(d(t))||n();break;case"sd-field":customElements.get(d(t))||h();break;case"sd-floating-portal":customElements.get(d(t))||o();break;case"sd-ghost-button":customElements.get(d(t))||c();break;case"sd-icon":customElements.get(d(t))||b();break;case"sd-input":customElements.get(d(t))||_();break;case"sd-loading-spinner":customElements.get(d(t))||p();break;case"sd-pagination":customElements.get(d(t))||u();break;case"sd-portal":customElements.get(d(t))||g();break;case"sd-select":customElements.get(d(t))||m();break;case"sd-select-dropdown":customElements.get(d(t))||f();break;case"sd-select-option":customElements.get(d(t))||y();break;case"sd-select-search-input":customElements.get(d(t))||w();break;case"sd-tooltip":customElements.get(d(t))||k()}}))};export{C as SdTable,x as defineCustomElement}
|
|
1
|
+
import{p as t,H as e,c as s,e as i,h as a,d as h,t as n}from"./p-DuYi4aqj.js";import{T as l}from"./p-sZMi_32I.js";import{d as o}from"./p-BLC3AWW8.js";import{d as r}from"./p-TMuoVuhE.js";import{d}from"./p-CpclstHV.js";import{d as c}from"./p-BjjrNz4C.js";import{d as b}from"./p-DxzgCf_d.js";import{d as u}from"./p-CGssy8eb.js";import{d as g}from"./p-VXLJLI30.js";import{d as p}from"./p-BgRPWxrz.js";import{d as f}from"./p-CKU8CeW3.js";import{d as m}from"./p-kZ5N_lFC.js";import{d as y}from"./p-DRY8HJ-T.js";import{d as C}from"./p-DpsDTjcN.js";import{d as w}from"./p-B6OgnOKC.js";import{d as k}from"./p-BZ7V5xV5.js";let S=(t=21)=>{let e="",s=crypto.getRandomValues(new Uint8Array(t|=0));for(;t--;)e+="useandom-26T198340PX75pxJACKVERYMINDBUSHWOLF_GQZbfghjklqvwyzrict"[63&s[t]];return e};const v=t(class t extends e{constructor(t){super(),!1!==t&&this.__registerHost(),this.__attachShadow(),this.sdSelectChange=s(this,"sdSelectChange",7),this.sdPageChange=s(this,"sdPageChange",7),this.sdRowsPerPageChange=s(this,"sdRowsPerPageChange",7),this.sdVirtualUpdate=s(this,"sdVirtualUpdate",7),this.sdVirtualReachEnd=s(this,"sdVirtualReachEnd",7)}static DEFAULT_NO_DATA_LABEL="데이터가 없습니다.";get el(){return this}tableId=S(8);fallbackTableId=S(8);columns=[];rows;selected=[];rowKey="id";selectable=!1;resizable=!1;width;height;stickyHeader=!1;stickyColumn={left:0,right:0};noDataLabel=t.DEFAULT_NO_DATA_LABEL;resolvedNoDataLabel=t.DEFAULT_NO_DATA_LABEL;isLoading=!1;pagination;useInternalPagination=!1;useRowsPerPageSelect=!1;useVirtualScroll=!1;rowHeight=40;virtualBuffer=5;virtualEndThreshold=10;rowsPerPageOption=[{label:"10개씩 보기",value:10},{label:"25개씩 보기",value:25},{label:"50개씩 보기",value:50},{label:"100개씩 보기",value:100}];sdSelectChange;sdPageChange;sdRowsPerPageChange;sdVirtualUpdate;sdVirtualReachEnd;currentPage=1;innerRowsPerPage=10;innerSelected=new Set;columnWidths=[];scrolledLeft=!1;scrolledRight=!1;rowCount=0;loadingScrollTop=0;vsStart=0;vsEnd=0;lastReachEndNotifiedRowCount=-1;scrollContainer=null;onScroll;toFiniteNumber(t,e){const s="number"==typeof t?t:Number(t);return Number.isFinite(s)?s:e}isRowsPerPageValue(t){return null===t||"string"==typeof t||"number"==typeof t}isValidTableId(t){return"string"==typeof t&&t.trim().length>0&&"undefined"!==t&&"null"!==t}getResolvedTableId(){if(this.isValidTableId(this.tableId))return this.tableId;const t=this.el?.getAttribute(l);return this.isValidTableId(t)?t:this.fallbackTableId}syncTableIdAttribute(){const t=this.getResolvedTableId();this.el?.getAttribute(l)!==t&&this.el.setAttribute(l,t)}handleIsLoadingChange(t){t&&(this.loadingScrollTop=this.scrollContainer?.scrollTop??0)}handleUseVirtualScrollChange(t){t&&i((()=>this.propagateVirtualUpdate()))}handleColumnsChange(t){this.columnWidths=t.map((t=>parseInt(t.width||"120",10))),this.refreshChildrenConfig()}handleRowsChange(t){Array.isArray(t)&&(this.rowCount=t.length,this.useVirtualScroll&&this.propagateVirtualUpdate(!0),this.pushRowsToChildren(t))}handleTableIdChange(){this.syncTableIdAttribute()}handleNoDataLabelChange(e){this.resolvedNoDataLabel="string"==typeof e&&e.trim().length>0&&"undefined"!==e&&"null"!==e?e:t.DEFAULT_NO_DATA_LABEL}handleConfigChange(){this.refreshChildrenConfig()}handleSelectedChange(t){this.innerSelected=new Set(t)}handlePaginationChange(t){t?.page&&t.page!==this.currentPage&&(this.currentPage=t.page),t?.rowsPerPage&&t.rowsPerPage!==this.innerRowsPerPage&&(this.innerRowsPerPage=t.rowsPerPage)}componentWillLoad(){this.syncTableIdAttribute(),this.handleNoDataLabelChange(this.noDataLabel),this.innerSelected=new Set(this.selected||[]),this.columnWidths=(this.columns||[]).map((t=>parseInt(t.width||"120",10))),this.pagination?.page&&(this.currentPage=this.pagination.page),this.pagination?.rowsPerPage&&(this.innerRowsPerPage=this.pagination.rowsPerPage);const t=this.el;t.isRowSelectedSync=this.isRowSelectedSync.bind(this),t.updateRowSelectSync=this.updateRowSelectSync.bind(this),t.toggleSelectAllSync=this.toggleSelectAllSync.bind(this),t.getIsAllCheckedSync=this.getIsAllCheckedSync.bind(this),t.getStickyStyleSync=this.getStickyStyleSync.bind(this),t.setRowCountSync=this.setRowCountSync.bind(this),t.handleResize=this.handleResize.bind(this),t.getPaginationInfoSync=this.getPaginationInfoSync.bind(this),t.getVirtualScrollRangeSync=this.getVirtualScrollRangeSync.bind(this),t.getConfigSync=this.getConfigSync.bind(this),t.getTableIdSync=()=>this.getResolvedTableId(),t.getVirtualScrollConfigSync=this.getVirtualScrollConfigSync.bind(this),t.calculateVisibleRange=this.calculateVisibleRange.bind(this),Array.isArray(this.rows)&&(this.rowCount=this.rows.length,this.pushRowsToChildren(this.rows))}componentDidLoad(){Array.isArray(this.rows)&&this.pushRowsToChildren(this.rows),i((()=>{const t=this.el.shadowRoot?.querySelector(".sd-table__wrapper");if(!t)return;let e=!1;this.onScroll=()=>{const s=t.scrollLeft,i=s>0,a=s+t.clientWidth<t.scrollWidth;this.scrolledLeft===i&&this.scrolledRight===a||(this.scrolledLeft=i,this.scrolledRight=a,this.refreshChildrenConfig()),this.useVirtualScroll&&!e&&(e=!0,requestAnimationFrame((()=>{e=!1,this.propagateVirtualUpdate()})))},this.scrollContainer=t,t.addEventListener("scroll",this.onScroll,{passive:!0}),this.onScroll(),this.useVirtualScroll&&this.propagateVirtualUpdate()}))}disconnectedCallback(){this.scrollContainer&&this.onScroll&&this.scrollContainer.removeEventListener("scroll",this.onScroll)}pushRowsToChildren(t){const e=this.el.querySelector("sd-tbody");e&&(e.rows=t);const s=this.el.querySelector("sd-thead");s&&(s.rows=t)}handleStructureSlotChange=()=>{Array.isArray(this.rows)&&this.pushRowsToChildren(this.rows),this.refreshChildrenConfig()};refreshChildrenSelection(){const t=this.el.querySelector("sd-thead"),e=this.el.querySelectorAll("sd-tr");t?.refreshSelection?.(),e.forEach((t=>t?.refreshSelection?.()))}refreshChildrenConfig(){const t=this.el.querySelector("sd-thead"),e=this.el.querySelectorAll("sd-tr");t?.refreshConfig?.(),e.forEach((t=>t?.refreshConfig?.()))}maybeEmitVirtualReachEnd(t,e){const s=Math.max(1,this.virtualEndThreshold);e>=Math.max(0,this.rowCount-s)&&this.lastReachEndNotifiedRowCount!==this.rowCount&&(this.lastReachEndNotifiedRowCount=this.rowCount,this.sdVirtualReachEnd.emit({from:t,to:e,rowCount:this.rowCount,threshold:s}))}propagateVirtualUpdate(t=!1){if(!this.scrollContainer||!this.useVirtualScroll)return;const e=this.toFiniteNumber(this.scrollContainer.scrollTop,0),s=this.toFiniteNumber(this.scrollContainer.clientHeight,0),{start:i,end:a}=this.calculateVisibleRange(e,s);if(!Number.isFinite(i)||!Number.isFinite(a))return;const h=this.vsStart!==i||this.vsEnd!==a;if(!h&&!t)return;this.vsStart=i,this.vsEnd=a;const n=i*this.rowHeight,l=Math.max(0,(this.rowCount-a)*this.rowHeight),o=this.el.querySelector("sd-tbody");o?.setSpacersSync?.(n,l),h&&this.sdVirtualUpdate.emit({from:i,to:a}),this.maybeEmitVirtualReachEnd(i,a)}getVirtualScrollConfigSync(){return{useVirtualScroll:this.useVirtualScroll,rowHeight:this.rowHeight,virtualBuffer:this.virtualBuffer,vsStart:this.vsStart,vsEnd:this.vsEnd,rowCount:this.rowCount}}getConfigSync(){return{columns:this.columns,selectable:this.selectable,resizable:this.resizable,stickyColumn:this.stickyColumn,stickyHeader:this.stickyHeader,scrolledLeft:this.scrolledLeft,scrolledRight:this.scrolledRight,columnWidths:this.columnWidths}}isRowSelectedSync(t){return Array.from(this.innerSelected).some((e=>e[this.rowKey]===t[this.rowKey]))}async isRowSelected(t){return this.isRowSelectedSync(t)}updateRowSelectSync(t){const e=Array.from(this.innerSelected),s=this.isRowSelectedSync(t)?e.filter((e=>e[this.rowKey]!==t[this.rowKey])):[...e,t];s.length!==e.length&&(this.innerSelected=new Set(s),this.selected=Array.from(this.innerSelected),this.sdSelectChange.emit(Array.from(this.innerSelected)),this.refreshChildrenSelection())}async updateRowSelect(t){this.updateRowSelectSync(t)}toggleSelectAllSync(t,e){if(t){const t=new Set([...e]);this.innerSelected=new Set([...this.innerSelected,...t])}else{const t=e.map((t=>t[this.rowKey]));this.innerSelected=new Set([...this.innerSelected].filter((e=>!t.includes(e[this.rowKey]))))}this.selected=Array.from(this.innerSelected),this.sdSelectChange.emit(Array.from(this.innerSelected)),this.refreshChildrenSelection()}async toggleSelectAll(t,e){this.toggleSelectAllSync(t,e)}getIsAllCheckedSync(t){const e=t.length,s=t.filter((t=>Array.from(this.innerSelected).some((e=>e[this.rowKey]===t[this.rowKey])))).length;return 0!==s&&(s===e||null)}async getIsAllChecked(t){return this.getIsAllCheckedSync(t)}changePage(t){this.useInternalPagination?(this.currentPage=t,this.sdPageChange.emit(this.currentPage),this.updateRowsVisibility()):this.sdPageChange.emit(t)}updateRowsVisibility(){this.el.querySelectorAll("sd-tr").forEach((t=>t?.updateVisibility?.()))}changeRowsPerPage(t){const e=t?Number(t):0;if(!this.useInternalPagination)return void this.sdRowsPerPageChange.emit(e);this.innerRowsPerPage=e;const s=Math.max(1,Math.ceil(this.rowCount/e));this.currentPage>s&&(this.currentPage=s),this.sdRowsPerPageChange.emit(e),this.updateRowsVisibility()}get lastPageNumber(){if(this.useInternalPagination)return Math.max(1,Math.ceil(this.rowCount/this.innerRowsPerPage));const{lastPage:t,rowsPerPage:e=10}=this.pagination||{};return t??Math.max(1,Math.ceil(this.rowCount/e))}handleResize(t,e,s=!1){if("undefined"==typeof document)return;const i=e.clientX,a=this.columnWidths[t],h=e=>{const h=this.columns[t];if(!h)return;const n=h.maxWidth||9999,l=e.clientX-i,o=Math.min(Math.max(a+(s?-l:l),h.minWidth||50),n);this.columnWidths=this.columnWidths.map(((e,s)=>s===t?o:e));const r=this.el.querySelector("sd-thead"),d=this.el.querySelectorAll("sd-tr");r?.setColumnWidths?.(this.columnWidths),d.forEach((t=>t?.setColumnWidths?.(this.columnWidths)));const c=this.stickyColumn?.right||0,b=this.columns.filter((t=>!1!==t.visible)).length;c>0&&t===b-c&&requestAnimationFrame((()=>{this.onScroll?.()}))},n=()=>{document.removeEventListener("mousemove",h),document.removeEventListener("mouseup",n)};document.addEventListener("mousemove",h),document.addEventListener("mouseup",n)}getStickyStyleSync(t){return{"--sticky-left-offset":this.columnWidths.slice(0,t).reduce(((t,e)=>t+e),this.selectable?52:0)+"px","--sticky-right-offset":this.columnWidths.filter(((e,s)=>s>=this.columns.filter((t=>!1!==t.visible)).length-(this.stickyColumn?.right||0)&&s>t)).reduce(((t,e)=>t+e),0)+"px",width:this.columnWidths[t]+"px",minWidth:this.columnWidths[t]+"px",maxWidth:this.columnWidths[t]+"px"}}async getStickyStyle(t){return this.getStickyStyleSync(t)}setRowCountSync(t){const e=Math.max(0,Math.floor(this.toFiniteNumber(t,0)));e!==this.rowCount&&(this.lastReachEndNotifiedRowCount=-1),this.rowCount=e,this.useVirtualScroll&&this.propagateVirtualUpdate(!0)}async setRowCount(t){this.setRowCountSync(t)}calculateVisibleRange(t,e){const s=Math.max(1,this.toFiniteNumber(this.rowHeight,40)),i=Math.max(0,Math.floor(this.toFiniteNumber(this.virtualBuffer,5))),a=Math.max(0,this.toFiniteNumber(t,0)),h=Math.max(0,this.toFiniteNumber(e,0)),n=Math.max(0,Math.floor(this.toFiniteNumber(this.rowCount,0))),l=Math.floor(a/s),o=Math.ceil(h/s);return{start:Math.max(0,l-i),end:Math.min(n,l+o+i)}}getPaginationInfoSync(){if(!this.useInternalPagination||!this.pagination)return null;const t=(this.currentPage-1)*this.innerRowsPerPage;return{startIndex:t,endIndex:t+this.innerRowsPerPage,currentPage:this.currentPage,rowsPerPage:this.innerRowsPerPage}}async getPaginationInfo(){return this.getPaginationInfoSync()}getVirtualScrollRangeSync(){return this.useVirtualScroll&&this.vsEnd>0?{from:this.vsStart,to:this.vsEnd}:null}get tableClasses(){return["sd-table",this.stickyHeader&&"sd-table--sticky-header",this.selectable&&"sd-table--selectable",this.resizable&&"sd-table--resizable",(this.selectable||(this.stickyColumn?.left??0)>0||(this.stickyColumn?.right??0)>0)&&"sd-table--sticky-column",this.scrolledLeft&&"sd-table--scrolled-left",this.scrolledRight&&"sd-table--scrolled-right",0===this.rowCount&&!this.isLoading&&"sd-table--no-data"].filter(Boolean).join(" ")}render(){const t=this.getResolvedTableId();return a(h,{key:"dd25a84ce29a197a7e853d1812ce0f0fbdf043bd"},a("div",{key:"8b256e995d55c36ff9622148054911fcbe8aa89b",class:"sd-table__container",style:{"--table-width":this.width,"--table-height":this.height,"--table-container-height":`calc(${this.height||"100%"} - ${this.pagination&&this.rowCount>0&&!this.useVirtualScroll?48:0}px)`}},a("div",{key:"b4949fed8c50b93bcddace22978aff358ea7c210",class:{"sd-table__clip":!0,"sd-table__clip--has-pagination":!(!(this.pagination&&this.pagination.rowsPerPage>0&&this.rowCount>0)||this.useVirtualScroll)}},a("div",{key:"5fcceeb27568afdd367e7dbf2886fcbd107089c5",class:{"sd-table__wrapper":!0,"sd-table__wrapper--loading":this.isLoading,"sd-table__wrapper--no-data":0===this.rowCount&&!this.isLoading}},this.isLoading&&a("div",{key:"edabfb6b601cfad985e3b8614d603f2df1da8f98",class:"sd-table__loading",style:{top:this.loadingScrollTop+"px"}},a("sd-circle-progress",{key:"40de9b2b97407523d1b02b97f208682e4946be66",indeterminate:!0})),0===this.rowCount&&!this.isLoading&&a("div",{key:"fe0d54f45a2a0a8ca1cc6552a42c7725ecd84c99",class:"sd-table__no-data"},a("slot",{key:"f64d232d1b3bd69d7c43a5170d06e73cbc586226",name:"no-data"},a("span",{key:"71f5dcf2e5af2403032bdefd19a3cc4793a823e9"},this.resolvedNoDataLabel))),a("table",{key:"e32c9f96523db174a57efffa584237836a67214a",class:this.tableClasses},a("slot",{key:"ce5e49454ac9044d6b3fcf3ac51809bb1e5465f8",name:t+"-head",onSlotchange:this.handleStructureSlotChange}),a("slot",{key:"800b45ddc05aac02cf8827b31beca5d0f363b55f",name:t+"-body",onSlotchange:this.handleStructureSlotChange})))),this.pagination&&this.pagination.rowsPerPage>0&&this.rowCount>0&&!this.useVirtualScroll&&a("div",{key:"ea2afbe59f7b249d3f4e9d9763ab402438e47008",class:"sd-table__pagination"},a("sd-pagination",{key:"a64223b9d2374142cbf12ec582e580f1b9f8f8dc",currentPage:this.useInternalPagination?this.currentPage:this.pagination.page,lastPage:this.useInternalPagination?this.lastPageNumber:this.pagination.lastPage,onSdPageChange:t=>this.changePage(t.detail)}),this.useRowsPerPageSelect&&a("sd-select-v2",{key:"597cd596ac0ce2752ab6fc792887ce447c863eb8",value:this.useInternalPagination?this.innerRowsPerPage:this.pagination.rowsPerPage,options:this.rowsPerPageOption,width:"128px",emitValue:!0,onSdUpdate:t=>{this.isRowsPerPageValue(t.detail)&&this.changeRowsPerPage(t.detail)}}))))}static get watchers(){return{isLoading:[{handleIsLoadingChange:0}],useVirtualScroll:[{handleUseVirtualScrollChange:0}],columns:[{handleColumnsChange:0}],rows:[{handleRowsChange:0}],tableId:[{handleTableIdChange:0}],noDataLabel:[{handleNoDataLabelChange:0}],selectable:[{handleConfigChange:0}],resizable:[{handleConfigChange:0}],stickyColumn:[{handleConfigChange:0}],stickyHeader:[{handleConfigChange:0}],selected:[{handleSelectedChange:0}],pagination:[{handlePaginationChange:0}]}}static get style(){return"sd-table,:host{display:block;width:100%;max-width:100%;min-width:0}sd-table *,:host *{box-sizing:border-box}.sd-table__container{height:var(--table-height, auto);width:var(--table-width, 100%);max-width:100%;min-width:0;color:#222222;display:flex;flex-direction:column}.sd-table__clip{width:100%;min-width:0;height:var(--table-container-height, 400px);border:1px solid #E1E1E1;border-radius:8px;overflow:hidden}.sd-table__clip--has-pagination{border-radius:8px 8px 0 0}.sd-table__wrapper{width:100%;height:100%;display:flex;flex-direction:column;position:relative;font-size:12px;overflow:auto;background:#FFFFFF}.sd-table__wrapper--loading{overflow:hidden !important;pointer-events:none}.sd-table__wrapper--no-data{overflow:hidden;pointer-events:none}.sd-table__no-data{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;font-size:12px;color:#888888;pointer-events:none;z-index:200;background:rgba(255, 255, 255, 0.6)}.sd-table__loading{position:absolute;top:0;left:0;width:100%;height:100%;background:rgba(255, 255, 255, 0.6);z-index:200;display:flex;align-items:center;justify-content:center;pointer-events:none}.sd-table{background-color:white;display:table;width:100%;border-collapse:separate;border-spacing:0;table-layout:fixed}.sd-table--selectable sd-thead,.sd-table--selectable sd-tbody{--selectable:true}.sd-table--sticky-header sd-thead thead{position:sticky;top:0;z-index:120}.sd-table--sticky-column sd-thead,.sd-table--sticky-column sd-tbody{--sticky-column:true}.sd-table--scrolled-left sd-thead,.sd-table--scrolled-left sd-tbody{--scrolled-left:true}.sd-table--scrolled-right sd-thead,.sd-table--scrolled-right sd-tbody{--scrolled-right:true}.sd-table--resizable sd-thead{--resizable:true}.sd-table--no-data sd-thead{opacity:0.4}.sd-table__pagination{position:relative;background:#F9F9F9;height:48px;display:flex;align-items:center;justify-content:center;border:1px solid #E1E1E1;border-top:none;border-radius:0 0 8px 8px}.sd-table__pagination sd-select-v2{position:absolute;right:10px;top:50%;transform:translateY(-50%)}"}},[769,"sd-table",{tableId:[513,"table-id"],columns:[16],rows:[16],selected:[1040],rowKey:[1,"row-key"],selectable:[4],resizable:[4],width:[1],height:[1],stickyHeader:[4,"sticky-header"],stickyColumn:[16],noDataLabel:[1,"no-data-label"],isLoading:[4,"is-loading"],pagination:[16],useInternalPagination:[4,"use-internal-pagination"],useRowsPerPageSelect:[4,"use-rows-per-page-select"],useVirtualScroll:[4,"use-virtual-scroll"],rowHeight:[2,"row-height"],virtualBuffer:[2,"virtual-buffer"],virtualEndThreshold:[2,"virtual-end-threshold"],rowsPerPageOption:[16],resolvedNoDataLabel:[32],currentPage:[32],innerRowsPerPage:[32],innerSelected:[32],columnWidths:[32],scrolledLeft:[32],scrolledRight:[32],rowCount:[32],loadingScrollTop:[32],isRowSelected:[64],updateRowSelect:[64],toggleSelectAll:[64],getIsAllChecked:[64],getStickyStyle:[64],setRowCount:[64],getPaginationInfo:[64]},void 0,{isLoading:[{handleIsLoadingChange:0}],useVirtualScroll:[{handleUseVirtualScrollChange:0}],columns:[{handleColumnsChange:0}],rows:[{handleRowsChange:0}],tableId:[{handleTableIdChange:0}],noDataLabel:[{handleNoDataLabelChange:0}],selectable:[{handleConfigChange:0}],resizable:[{handleConfigChange:0}],stickyColumn:[{handleConfigChange:0}],stickyHeader:[{handleConfigChange:0}],selected:[{handleSelectedChange:0}],pagination:[{handlePaginationChange:0}]}]),x=v,_=function(){"undefined"!=typeof customElements&&["sd-table","sd-button","sd-checkbox","sd-circle-progress","sd-field","sd-floating-portal","sd-icon","sd-pagination","sd-portal","sd-select-v2","sd-select-v2-list-item","sd-select-v2-list-item-search","sd-select-v2-listbox","sd-select-v2-trigger","sd-tooltip"].forEach((t=>{switch(t){case"sd-table":customElements.get(n(t))||customElements.define(n(t),v);break;case"sd-button":customElements.get(n(t))||o();break;case"sd-checkbox":customElements.get(n(t))||r();break;case"sd-circle-progress":customElements.get(n(t))||d();break;case"sd-field":customElements.get(n(t))||c();break;case"sd-floating-portal":customElements.get(n(t))||b();break;case"sd-icon":customElements.get(n(t))||u();break;case"sd-pagination":customElements.get(n(t))||g();break;case"sd-portal":customElements.get(n(t))||p();break;case"sd-select-v2":customElements.get(n(t))||f();break;case"sd-select-v2-list-item":customElements.get(n(t))||m();break;case"sd-select-v2-list-item-search":customElements.get(n(t))||y();break;case"sd-select-v2-listbox":customElements.get(n(t))||C();break;case"sd-select-v2-trigger":customElements.get(n(t))||w();break;case"sd-tooltip":customElements.get(n(t))||k()}}))};export{x as SdTable,_ as defineCustomElement}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{p as s,H as t,c as e,h as a,t as b}from"./p-
|
|
1
|
+
import{p as s,H as t,c as e,h as a,t as b}from"./p-DuYi4aqj.js";import{d as o}from"./p-CGssy8eb.js";import{d}from"./p-CGXwtYAv.js";const i=s(class extends t{constructor(s){super(),!1!==s&&this.__registerHost(),this.update=e(this,"sdUpdate",7)}value;tabs=[];size="md";isSub=!1;update;componentWillLoad(){null!=this.value&&(this.value=this.value)}valueChanged(s){this.value=s}handleTabClick=s=>{this.value=s,this.update.emit(s)};isTabSelected(s){return this.value===s.value}getTabClasses(s){return["sd-tabs__tab",this.isTabSelected(s)?"sd-tabs__tab--selected":"sd-tabs__tab--unselected"].join(" ")}getContainerClasses(){const s=["sd-tabs","sd-tabs--"+this.size];return this.isSub&&s.push("sd-tabs--sub"),s.join(" ")}getBadgeName(s){return"square_xs_"+(this.isTabSelected(s)?"blue":"grey")}render(){return a("div",{key:"3ac46ee8a763ba5a4a566fb25d4e32366ff8288b",class:this.getContainerClasses()},this.tabs.map(((s,t)=>{const e=this.getBadgeName(s);return a("div",{key:"tab-"+t,class:this.getTabClasses(s),"aria-label":s.label||"tab",onClick:()=>this.handleTabClick(s.value)},a("span",{"data-label":s.label,class:"sd-tabs__label"},s.label),s.badge&&a("sd-tag",{name:e,label:""+s.badge}))})))}static get watchers(){return{value:[{valueChanged:0}]}}static get style(){return'sd-tabs{display:inline-block;width:100%}sd-tabs .sd-tabs{display:flex;flex-direction:row;gap:4px;border-bottom:1px solid #0075FF}sd-tabs .sd-tabs__tab{display:flex;align-items:center;justify-content:center;gap:8px;cursor:pointer;border:1px solid #CCCCCC;border-bottom:none;border-radius:4px 4px 0 0;background-color:#F6F6F6;color:#888888;font-weight:400;transition:all 0.2s ease;position:relative;user-select:none}sd-tabs .sd-tabs__tab::before{content:"";position:absolute;inset:0;opacity:0;transition:all 0.3s}sd-tabs .sd-tabs__tab--selected{border-color:#0075FF;color:#0075FF;background-color:white}sd-tabs .sd-tabs__tab--selected .sd-tabs__label::before{font-weight:700}sd-tabs .sd-tabs__tab--selected:hover::before{background-color:#0075FF;opacity:0.15}sd-tabs .sd-tabs__tab--unselected:hover::before{background-color:#888888;opacity:0.15}sd-tabs .sd-tabs__label{user-select:none;font-weight:700;visibility:hidden;position:relative;white-space:nowrap}sd-tabs .sd-tabs__label::before{content:attr(data-label);visibility:visible;position:absolute;inset:0;font-weight:400;transition:font-weight 0.2s ease}sd-tabs .sd-tabs--md .sd-tabs__tab{padding:12px 32px;font-size:12px;line-height:20px}sd-tabs .sd-tabs--sm .sd-tabs__tab{padding:8px 20px;font-size:12px;line-height:16px}sd-tabs .sd-tabs--sub{gap:32px;border-bottom:none}sd-tabs .sd-tabs--sub .sd-tabs__tab{border:none;border-radius:0;background-color:transparent;color:#222222;font-weight:400;padding:0 0 2px 0;position:relative}sd-tabs .sd-tabs--sub .sd-tabs__tab::before{content:"";position:absolute;top:100%;left:0;right:0;height:1px;width:100%;background-color:#0075FF;opacity:0;transition:opacity 0.2s ease}sd-tabs .sd-tabs--sub .sd-tabs__tab::after{font-weight:400}sd-tabs .sd-tabs--sub .sd-tabs__tab--selected{color:#0075FF;background-color:transparent}sd-tabs .sd-tabs--sub .sd-tabs__tab--selected::before{opacity:1}sd-tabs .sd-tabs--sub .sd-tabs__tab--selected::after{font-weight:700}'}},[512,"sd-tabs",{value:[1537],tabs:[1040],size:[513],isSub:[516,"is-sub"]},void 0,{value:[{valueChanged:0}]}]),n=i,r=function(){"undefined"!=typeof customElements&&["sd-tabs","sd-icon","sd-tag"].forEach((s=>{switch(s){case"sd-tabs":customElements.get(b(s))||customElements.define(b(s),i);break;case"sd-icon":customElements.get(b(s))||o();break;case"sd-tag":customElements.get(b(s))||d()}}))};export{n as SdTabs,r as defineCustomElement}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{S as o,d as s}from"./p-
|
|
1
|
+
import{S as o,d as s}from"./p-CGXwtYAv.js";const t=o,p=s;export{t as SdTag,p as defineCustomElement}
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
import type { Components, JSX } from "../types/components";
|
|
2
|
+
|
|
3
|
+
interface SdTbody extends Components.SdTbody, HTMLElement {}
|
|
4
|
+
export const SdTbody: {
|
|
5
|
+
prototype: SdTbody;
|
|
6
|
+
new (): SdTbody;
|
|
7
|
+
};
|
|
8
|
+
/**
|
|
9
|
+
* Used to define this component and all nested components recursively.
|
|
10
|
+
*/
|
|
11
|
+
export const defineCustomElement: () => void;
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
import{p as t,H as s,h as e,d as o,t as a}from"./p-DuYi4aqj.js";import{T as d}from"./p-sZMi_32I.js";const i=t(class extends s{constructor(t){super(),!1!==t&&this.__registerHost(),this.__attachShadow()}get el(){return this}rows=[];tableId="";topSpacerHeight=0;bottomSpacerHeight=0;tableEl=null;handleRowsChange(t){const s=t??[];this.tableEl?.setRowCountSync&&this.tableEl.setRowCountSync(s.length)}componentWillLoad(){this.syncTableContext(),this.rows=this.rows??[],this.tableEl?.setRowCountSync&&this.tableEl.setRowCountSync(this.rows.length),this.el.setSpacersSync=(t,s)=>{this.topSpacerHeight=t,this.bottomSpacerHeight=s}}componentDidLoad(){this.syncTableContext()}syncTableContext(){const t=this.el.closest("sd-table");this.tableEl=t;const s=t?.getTableIdSync?.(),e=t?.getAttribute(d),o=(s&&"undefined"!==s?s:null)??(e&&"undefined"!==e?e:null)??"";o&&o!==this.tableId&&(this.tableId=o)}render(){const t=this.rows.length>0;return e(o,{key:"aaa6a5a3ae24728e004c769f8652c838f852aefc",slot:this.tableId+"-body"},e("tbody",{key:"de2909b4fe23293abd69778aed02abdab4ee8120",class:{tbody:!0,"tbody--empty":!t}},t?[this.topSpacerHeight>0&&e("tr",{key:"spacer-top",class:"tbody__spacer",style:{height:this.topSpacerHeight+"px",display:"block"}}),e("slot",null),this.bottomSpacerHeight>0&&e("tr",{key:"spacer-bottom",class:"tbody__spacer",style:{height:this.bottomSpacerHeight+"px",display:"block"}})]:e("tr",{class:"tbody__no-data-row"},e("td",{class:"tbody__no-data-cell",colSpan:100},e("slot",{name:"no-data"})))))}static get watchers(){return{rows:[{handleRowsChange:0}]}}static get style(){return":host{display:contents}:host *{box-sizing:border-box}.tbody{display:table-row-group}.tbody--empty .tbody__no-data-row{display:table-row}.tbody--empty .tbody__no-data-cell{display:table-cell;padding:0;border-bottom:none}"}},[769,"sd-tbody",{rows:[16],tableId:[32],topSpacerHeight:[32],bottomSpacerHeight:[32]},void 0,{rows:[{handleRowsChange:0}]}]),l=i,n=function(){"undefined"!=typeof customElements&&["sd-tbody"].forEach((t=>{"sd-tbody"===t&&(customElements.get(a(t))||customElements.define(a(t),i))}))};export{l as SdTbody,n as defineCustomElement}
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
import type { Components, JSX } from "../types/components";
|
|
2
|
+
|
|
3
|
+
interface SdTd extends Components.SdTd, HTMLElement {}
|
|
4
|
+
export const SdTd: {
|
|
5
|
+
prototype: SdTd;
|
|
6
|
+
new (): SdTd;
|
|
7
|
+
};
|
|
8
|
+
/**
|
|
9
|
+
* Used to define this component and all nested components recursively.
|
|
10
|
+
*/
|
|
11
|
+
export const defineCustomElement: () => void;
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
import{p as e,H as t,f as s,h as d,d as n,t as i}from"./p-DuYi4aqj.js";import{T as l}from"./p-sZMi_32I.js";const a=e(class extends t{constructor(e){super(),!1!==e&&this.__registerHost()}get el(){return this}field;rowKey;align;handleFieldChange(){this.syncSlotName()}handleRowKeyChange(){this.syncSlotName()}componentWillLoad(){this.syncSlotName();const e=this.el.parentElement;"sd-tr"===e?.tagName?.toLowerCase()&&s(e)}componentDidLoad(){this.syncSlotName()}syncSlotName(){const e=this.el.closest("sd-table"),t=e?.getTableIdSync?.(),s=e?.getAttribute(l),d=(t&&"undefined"!==t?t:null)??(s&&"undefined"!==s?s:null)??"";this.field&&void 0!==this.rowKey&&d&&this.el.setAttribute("slot",`${d}-${this.field}-${this.rowKey}`)}render(){return d(n,{key:"9fdf1f552785399ec47244f1d534d49070dd6fa1",class:{["align-"+this.align]:!!this.align}},d("slot",{key:"845eddc0d15fd8bb2f2f93e146aa8fa1eb9d194f"}))}static get watchers(){return{field:[{handleFieldChange:0}],rowKey:[{handleRowKeyChange:0}]}}static get style(){return"sd-td *{box-sizing:border-box}sd-td{display:contents}sd-td.align-left{text-align:left}sd-td.align-center{text-align:center}sd-td.align-right{text-align:right}"}},[772,"sd-td",{field:[1],rowKey:[1,"row-key"],align:[1]},void 0,{field:[{handleFieldChange:0}],rowKey:[{handleRowKeyChange:0}]}]),o=a,r=function(){"undefined"!=typeof customElements&&["sd-td"].forEach((e=>{"sd-td"===e&&(customElements.get(i(e))||customElements.define(i(e),a))}))};export{o as SdTd,r as defineCustomElement}
|