@sellmate/design-system 1.28.0 → 1.31.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/cjs/design-system.cjs.js +2 -2
- package/dist/cjs/{index-D12oddge.js → index-Jr8OU0y9.js} +1 -15
- package/dist/cjs/loader.cjs.js +2 -2
- package/dist/cjs/sd-action-modal.cjs.entry.js +2 -2
- package/dist/cjs/sd-badge.cjs.entry.js +2 -2
- package/dist/cjs/sd-barcode-input.cjs.entry.js +2 -2
- package/dist/cjs/sd-button_2.cjs.entry.js +3 -3
- package/dist/cjs/sd-calendar_2.cjs.entry.js +8 -9
- package/dist/cjs/sd-callout.cjs.entry.js +2 -2
- package/dist/cjs/sd-card.cjs.entry.js +2 -2
- package/dist/cjs/sd-checkbox.cjs.entry.js +5 -5
- package/dist/cjs/sd-chip-input.cjs.entry.js +22 -17
- package/dist/cjs/sd-chip.cjs.entry.js +7 -7
- package/dist/cjs/sd-circle-progress.cjs.entry.js +4 -4
- package/dist/cjs/sd-confirm-modal_2.cjs.entry.js +33 -36
- package/dist/cjs/sd-date-box.cjs.entry.js +1 -1
- package/dist/cjs/{component.datepicker-CUQbDSku.js → sd-date-picker.config-CgyNxY03.js} +64 -0
- package/dist/cjs/{sd-date-picker_7.cjs.entry.js → sd-date-picker_8.cjs.entry.js} +446 -47
- package/dist/cjs/sd-date-range-picker-calendar.cjs.entry.js +162 -12
- package/dist/cjs/sd-divider.cjs.entry.js +3 -3
- package/dist/cjs/sd-dropdown-button.cjs.entry.js +2 -2
- package/dist/cjs/sd-field_3.cjs.entry.js +51 -52
- package/dist/cjs/sd-form.cjs.entry.js +1 -1
- package/dist/cjs/sd-ghost-button_3.cjs.entry.js +14 -10
- package/dist/cjs/sd-guide.cjs.entry.js +2 -2
- package/dist/cjs/sd-key-value-table.cjs.entry.js +88 -18
- package/dist/cjs/sd-linear-progress.cjs.entry.js +3 -3
- package/dist/cjs/sd-loading-container.cjs.entry.js +3 -3
- package/dist/cjs/sd-modal-container.cjs.entry.js +16 -2
- package/dist/cjs/sd-pagination.cjs.entry.js +173 -0
- package/dist/cjs/sd-popover.cjs.entry.js +134 -44
- package/dist/cjs/sd-popup.cjs.entry.js +3 -3
- package/dist/cjs/sd-radio-button.cjs.entry.js +3 -3
- package/dist/cjs/sd-radio.cjs.entry.js +4 -2
- package/dist/cjs/{sd-select_3.cjs.entry.js → sd-select-list-item_4.cjs.entry.js} +294 -315
- package/dist/cjs/sd-switch.cjs.entry.js +13 -3
- package/dist/cjs/sd-tabs.cjs.entry.js +2 -2
- package/dist/cjs/sd-text-link.cjs.entry.js +4 -4
- package/dist/cjs/sd-time-picker-selector.cjs.entry.js +179 -0
- package/dist/cjs/sd-time-picker-trigger.cjs.entry.js +75 -0
- package/dist/cjs/sd-time-picker.cjs.entry.js +173 -0
- package/dist/cjs/sd-time-picker.config-C7REB08L.js +156 -0
- package/dist/cjs/sd-time-range-picker-selector.cjs.entry.js +219 -0
- package/dist/cjs/sd-time-range-picker.cjs.entry.js +204 -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 +2 -2
- package/dist/cjs/{system-MjrAugX-.js → system-B4KkVpu2.js} +1 -7
- package/dist/cjs/{tooltipArrow-Dda4ik0V.js → tooltipArrow-BlrFItn5.js} +1 -1
- package/dist/cjs/useDatePicker-j06ymWZ_.js +103 -0
- package/dist/collection/collection-manifest.json +8 -8
- 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.js +1 -1
- package/dist/collection/components/sd-button/sd-button.js +2 -2
- package/dist/collection/components/sd-calendar/sd-calendar.js +3 -3
- package/dist/collection/components/sd-callout/sd-callout.js +1 -1
- package/dist/collection/components/sd-card/sd-card.js +1 -1
- package/dist/collection/components/sd-checkbox/sd-checkbox.js +8 -8
- package/dist/collection/components/sd-chip/sd-chip.js +8 -8
- package/dist/collection/components/sd-chip-input/sd-chip-input.css +3 -0
- package/dist/collection/components/sd-chip-input/sd-chip-input.js +43 -17
- package/dist/collection/components/sd-circle-progress/sd-circle-progress.css +1 -0
- package/dist/collection/components/sd-circle-progress/sd-circle-progress.js +1 -1
- package/dist/collection/components/sd-confirm-modal/sd-confirm-modal.css +3 -0
- package/dist/collection/components/sd-confirm-modal/sd-confirm-modal.js +35 -59
- 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.js +23 -2
- package/dist/collection/components/sd-date-range-picker/sd-date-range-picker-calendar/sd-date-range-picker-calendar.css +75 -0
- package/dist/collection/components/sd-date-range-picker/sd-date-range-picker-calendar/sd-date-range-picker-calendar.js +152 -6
- package/dist/collection/components/sd-date-range-picker/sd-date-range-picker.config.js +27 -0
- package/dist/collection/components/sd-date-range-picker/sd-date-range-picker.js +59 -3
- package/dist/collection/components/sd-divider/sd-divider.js +1 -1
- package/dist/collection/components/sd-field/sd-field.css +4 -0
- package/dist/collection/components/sd-field/sd-field.js +58 -5
- package/dist/collection/components/sd-file-picker/sd-file-picker.config.js +17 -10
- package/dist/collection/components/sd-file-picker/sd-file-picker.js +46 -16
- package/dist/collection/components/sd-floating-portal/sd-floating-portal.js +1 -1
- package/dist/collection/components/sd-ghost-button/sd-ghost-button.js +27 -3
- package/dist/collection/components/sd-input/sd-input.js +4 -4
- package/dist/collection/components/sd-key-value-table/sd-key-value-table.config.js +2 -0
- package/dist/collection/components/sd-key-value-table/sd-key-value-table.css +5 -1
- package/dist/collection/components/sd-key-value-table/sd-key-value-table.js +65 -15
- package/dist/collection/components/sd-linear-progress/sd-linear-progress.js +1 -1
- package/dist/collection/components/sd-loading-container/sd-loading-container.js +2 -2
- package/dist/collection/components/sd-loading-modal/sd-loading-modal.js +1 -1
- package/dist/collection/components/sd-modal-container/sd-modal-container.js +15 -1
- package/dist/collection/components/sd-number-input/sd-number-input.js +58 -7
- package/dist/collection/components/sd-pagination/sd-pagination.js +3 -3
- package/dist/collection/components/sd-popover/sd-popover.config.js +41 -0
- package/dist/collection/components/sd-popover/sd-popover.js +189 -191
- package/dist/collection/components/sd-popup/sd-popup.js +1 -1
- package/dist/collection/components/sd-portal/sd-portal.js +1 -1
- package/dist/collection/components/sd-radio/sd-radio.js +25 -4
- package/dist/collection/components/sd-radio-button/sd-radio-button.js +6 -6
- package/dist/collection/components/sd-radio-group/sd-radio-group.js +7 -7
- package/dist/collection/components/sd-select/sd-select-list-item/sd-select-list-item.js +2 -2
- package/dist/collection/components/sd-select/sd-select-list-item-search/sd-select-list-item-search.js +4 -4
- package/dist/collection/components/sd-select/sd-select-listbox/sd-select-listbox.js +2 -2
- package/dist/collection/components/sd-select/sd-select-trigger/sd-select-trigger.js +2 -2
- package/dist/collection/components/sd-select/sd-select.js +4 -4
- package/dist/collection/components/sd-switch/sd-switch.js +54 -3
- package/dist/collection/components/sd-tabs/sd-tabs.js +1 -1
- package/dist/collection/components/sd-tag/sd-tag.js +7 -8
- package/dist/collection/components/sd-text-link/sd-text-link.js +3 -3
- package/dist/collection/components/sd-textarea/sd-textarea.js +1 -1
- package/dist/collection/components/sd-time-picker/sd-time-picker-selector/sd-time-picker-selector.css +87 -0
- package/dist/collection/components/sd-time-picker/sd-time-picker-selector/sd-time-picker-selector.js +266 -0
- package/dist/collection/components/sd-time-picker/sd-time-picker-trigger/sd-time-picker-trigger.css +38 -0
- package/dist/collection/components/sd-time-picker/sd-time-picker-trigger/sd-time-picker-trigger.js +216 -0
- package/dist/collection/components/sd-time-picker/sd-time-picker.config.js +78 -0
- package/dist/collection/components/sd-time-picker/sd-time-picker.css +12 -0
- package/dist/collection/components/sd-time-picker/sd-time-picker.js +761 -0
- package/dist/collection/components/sd-time-range-picker/sd-time-range-picker-selector/sd-time-range-picker-selector.css +102 -0
- package/dist/collection/components/sd-time-range-picker/sd-time-range-picker-selector/sd-time-range-picker-selector.js +338 -0
- package/dist/collection/components/sd-time-range-picker/sd-time-range-picker.config.js +23 -0
- package/dist/collection/components/sd-time-range-picker/sd-time-range-picker.css +12 -0
- package/dist/collection/components/sd-time-range-picker/sd-time-range-picker.js +809 -0
- 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.js +1 -1
- package/dist/collection/components/sd-tooltip/sd-tooltip.js +36 -189
- package/dist/components/index.js +1 -1
- package/dist/components/p-1DsQj3tv.js +1 -0
- package/dist/components/p-2g4jlJ3i.js +1 -0
- package/dist/components/{p-BE6ymp9E.js → p-6U1qyU5A.js} +1 -1
- package/dist/components/{p-1i6Q61TF.js → p-B-EV9bey.js} +1 -1
- package/dist/components/p-B887QQl2.js +1 -0
- package/dist/components/{p-BysikR_g.js → p-BPzs63D8.js} +1 -1
- package/dist/components/p-Bth2l1cy.js +1 -0
- package/dist/components/{p-CTDPl65u.js → p-BvJ14GuJ.js} +1 -1
- package/dist/components/p-Bxv2AFOb.js +1 -0
- package/dist/components/p-C6o10dl7.js +1 -0
- package/dist/components/p-C6wuKkUq.js +1 -0
- package/dist/components/{p-BAVsc1Ml.js → p-C9IKm4j5.js} +1 -1
- package/dist/components/{p-BuADVB78.js → p-CH9dgzTr.js} +1 -1
- package/dist/components/p-CKV2W-zU.js +1 -0
- package/dist/components/p-CTCt17CE.js +1 -0
- package/dist/components/{p-laVsm9VM.js → p-CghFB91T.js} +1 -1
- package/dist/components/p-Ckr9iuVb.js +1 -0
- package/dist/components/p-ClbD4Gsr.js +1 -0
- package/dist/components/p-CmCOLnc0.js +1 -0
- package/dist/components/{p-DNbbdJIc.js → p-CwzkplrI.js} +1 -1
- package/dist/components/p-CzJ9g73f.js +1 -0
- package/dist/components/p-D8yhjm54.js +1 -0
- package/dist/components/p-D9qp3o5Y.js +1 -0
- package/dist/components/{p-Bgxca9o5.js → p-DE8Ws9As.js} +1 -1
- package/dist/components/p-DMm_GeZC.js +1 -0
- package/dist/components/{p-BnI9HUOv.js → p-DOfLrOEu.js} +1 -1
- package/dist/components/{p-vtuEYpc6.js → p-DSWD8udu.js} +1 -1
- package/dist/components/{p-BKV1WAFb.js → p-DWnuCSqC.js} +1 -1
- package/dist/components/p-DYjaQs6e.js +1 -0
- package/dist/components/{p-pwGA4sDj.js → p-DasiqnrU.js} +1 -1
- package/dist/components/p-Dc9g3-5z.js +1 -0
- package/dist/components/{p-ClD0nx1l.js → p-DnlLqzGM.js} +1 -1
- package/dist/components/p-DsZwiWiU.js +1 -0
- package/dist/components/{p-IDlLs_KA.js → p-FGII920I.js} +1 -1
- package/dist/components/p-Hjv7LqkN.js +1 -0
- package/dist/components/{p-CHHlQceE.js → p-In6mljvA.js} +1 -1
- package/dist/components/p-OnBLxJAP.js +1 -0
- package/dist/components/p-SYnTIeiO.js +1 -0
- package/dist/{design-system/p-D2S9Zafz.js → components/p-bXzpfkfN.js} +1 -1
- package/dist/components/p-mcbwNjNT.js +1 -0
- package/dist/components/p-qZxAQy4p.js +1 -0
- package/dist/components/sd-action-modal.js +1 -1
- package/dist/components/sd-badge.js +1 -1
- package/dist/components/sd-barcode-input.js +1 -1
- package/dist/components/sd-button.js +1 -1
- package/dist/components/sd-calendar.js +1 -1
- package/dist/components/sd-callout.js +1 -1
- package/dist/components/sd-card.js +1 -1
- package/dist/components/sd-checkbox.js +1 -1
- package/dist/components/sd-chip-input.js +1 -1
- package/dist/components/sd-chip.js +1 -1
- package/dist/components/sd-circle-progress.js +1 -1
- package/dist/components/sd-confirm-modal.js +1 -1
- package/dist/components/sd-date-box.js +1 -1
- package/dist/components/sd-date-picker-trigger.js +1 -1
- package/dist/components/sd-date-picker.js +1 -1
- package/dist/components/sd-date-range-picker-calendar.js +1 -1
- package/dist/components/sd-date-range-picker.js +1 -1
- package/dist/components/sd-divider.js +1 -1
- package/dist/components/sd-dropdown-button.js +1 -1
- package/dist/components/sd-field.js +1 -1
- package/dist/components/sd-file-picker.js +1 -1
- package/dist/components/sd-floating-portal.js +1 -1
- package/dist/components/sd-form.js +1 -1
- package/dist/components/sd-ghost-button.js +1 -1
- package/dist/components/sd-guide.js +1 -1
- package/dist/components/sd-icon.js +1 -1
- package/dist/components/sd-input.js +1 -1
- package/dist/components/sd-key-value-table.js +1 -1
- package/dist/components/sd-linear-progress.js +1 -1
- package/dist/components/sd-loading-container.js +1 -1
- package/dist/components/sd-loading-modal.js +1 -1
- package/dist/components/sd-modal-container.js +1 -1
- package/dist/components/sd-number-input.js +1 -1
- package/dist/components/sd-pagination.js +1 -1
- package/dist/components/sd-popover.js +1 -1
- package/dist/components/sd-popup.js +1 -1
- package/dist/components/sd-portal.js +1 -1
- package/dist/components/sd-radio-button.js +1 -1
- package/dist/components/sd-radio-group.js +1 -1
- package/dist/components/sd-radio.js +1 -1
- package/dist/components/sd-select-list-item-search.js +1 -1
- package/dist/components/sd-select-list-item.js +1 -1
- package/dist/components/sd-select-listbox.js +1 -1
- package/dist/components/sd-select-trigger.js +1 -1
- package/dist/components/sd-select.js +1 -1
- package/dist/components/sd-switch.js +1 -1
- package/dist/components/sd-tabs.js +1 -1
- package/dist/components/sd-tag.js +1 -1
- package/dist/components/sd-text-link.js +1 -1
- package/dist/components/sd-textarea.js +1 -1
- package/dist/components/sd-time-picker-selector.d.ts +11 -0
- package/dist/components/sd-time-picker-selector.js +1 -0
- package/dist/components/{sd-table.d.ts → sd-time-picker-trigger.d.ts} +4 -4
- package/dist/components/sd-time-picker-trigger.js +1 -0
- package/dist/components/{sd-thead.d.ts → sd-time-picker.d.ts} +4 -4
- package/dist/components/sd-time-picker.js +1 -0
- package/dist/components/sd-time-range-picker-selector.d.ts +11 -0
- package/dist/components/sd-time-range-picker-selector.js +1 -0
- package/dist/components/{sd-td.d.ts → sd-time-range-picker.d.ts} +4 -4
- package/dist/components/sd-time-range-picker.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/design-system/design-system.css +1 -1
- package/dist/design-system/design-system.esm.js +1 -1
- package/dist/design-system/{p-750a9112.entry.js → p-129b6330.entry.js} +1 -1
- package/dist/design-system/p-15f43b9b.entry.js +1 -0
- package/dist/design-system/p-16b9eac4.entry.js +1 -0
- package/dist/design-system/{p-0b8c86c3.entry.js → p-1858636f.entry.js} +1 -1
- package/dist/design-system/{p-a938ffee.entry.js → p-21672bb8.entry.js} +1 -1
- package/dist/design-system/{p-3b3a46cd.entry.js → p-219288ef.entry.js} +1 -1
- package/dist/design-system/{p-26f2f4c2.entry.js → p-22ac9e05.entry.js} +1 -1
- package/dist/design-system/p-2534d3d4.entry.js +1 -0
- package/dist/design-system/p-3859316f.entry.js +1 -0
- package/dist/design-system/{p-67f19734.entry.js → p-46da4e95.entry.js} +1 -1
- package/dist/design-system/{p-287d8016.entry.js → p-46eb3421.entry.js} +1 -1
- package/dist/design-system/p-4782331f.entry.js +1 -0
- package/dist/design-system/p-4a117dd6.entry.js +1 -0
- package/dist/design-system/{p-58ec51db.entry.js → p-4ae0a64a.entry.js} +1 -1
- package/dist/design-system/{p-bbd24816.entry.js → p-52b1be6f.entry.js} +1 -1
- package/dist/design-system/p-56e7c87b.entry.js +1 -0
- package/dist/design-system/p-570b9e91.entry.js +1 -0
- package/dist/design-system/p-5a113197.entry.js +1 -0
- package/dist/design-system/p-62ff77e4.entry.js +1 -0
- package/dist/design-system/{p-1230b51b.entry.js → p-655324cd.entry.js} +1 -1
- package/dist/design-system/p-66cff123.entry.js +1 -0
- package/dist/design-system/{p-4970f1ff.entry.js → p-6c4fa9d7.entry.js} +1 -1
- package/dist/design-system/{p-071e73e0.entry.js → p-809a0a71.entry.js} +1 -1
- package/dist/design-system/{p-70608fec.entry.js → p-82cb62a9.entry.js} +1 -1
- package/dist/design-system/p-843d1a8a.entry.js +1 -0
- package/dist/design-system/{p-fbeed0e4.entry.js → p-8836d9ff.entry.js} +1 -1
- package/dist/design-system/p-8af8e302.entry.js +1 -0
- package/dist/design-system/p-9c131122.entry.js +1 -0
- package/dist/design-system/{p-BqWuC4-J.js → p-BnUjeY2n.js} +1 -1
- package/dist/design-system/p-Bth2l1cy.js +1 -0
- package/dist/design-system/p-C599jhDs.js +2 -0
- package/dist/design-system/{p-CRWmn35N.js → p-Cn8LZw1e.js} +1 -1
- package/dist/design-system/p-DMm_GeZC.js +1 -0
- package/dist/design-system/p-Dz23PPdF.js +1 -0
- package/dist/design-system/p-a0c55a19.entry.js +1 -0
- package/dist/design-system/p-a6c292d1.entry.js +1 -0
- package/dist/design-system/p-a9cc4697.entry.js +1 -0
- package/dist/design-system/{p-2553bb1f.entry.js → p-b2dc1202.entry.js} +1 -1
- package/dist/design-system/{p-9c0bca09.entry.js → p-b5229957.entry.js} +1 -1
- package/dist/design-system/{p-d7e302af.entry.js → p-b75cc0dd.entry.js} +1 -1
- package/dist/design-system/p-b97a6cf3.entry.js +1 -0
- package/dist/design-system/p-c1e625e5.entry.js +1 -0
- package/dist/design-system/{p-5687ed0c.entry.js → p-c7f03dea.entry.js} +1 -1
- package/dist/design-system/p-cdb2433a.entry.js +1 -0
- package/dist/design-system/{p-61f5d5ea.entry.js → p-d5325895.entry.js} +1 -1
- package/dist/design-system/p-e0e4a451.entry.js +1 -0
- package/dist/design-system/p-e387ec65.entry.js +1 -0
- package/dist/design-system/{p-bab692c6.entry.js → p-efe3601d.entry.js} +1 -1
- package/dist/esm/design-system.js +3 -3
- package/dist/esm/{index-DDNBPrZh.js → index-C599jhDs.js} +2 -14
- package/dist/esm/loader.js +3 -3
- package/dist/esm/sd-action-modal.entry.js +2 -2
- package/dist/esm/sd-badge.entry.js +2 -2
- package/dist/esm/sd-barcode-input.entry.js +2 -2
- package/dist/esm/sd-button_2.entry.js +3 -3
- package/dist/esm/sd-calendar_2.entry.js +8 -9
- package/dist/esm/sd-callout.entry.js +2 -2
- package/dist/esm/sd-card.entry.js +2 -2
- package/dist/esm/sd-checkbox.entry.js +5 -5
- package/dist/esm/sd-chip-input.entry.js +22 -17
- package/dist/esm/sd-chip.entry.js +7 -7
- package/dist/esm/sd-circle-progress.entry.js +4 -4
- package/dist/esm/sd-confirm-modal_2.entry.js +33 -36
- package/dist/esm/sd-date-box.entry.js +1 -1
- package/dist/esm/{component.datepicker-laVsm9VM.js → sd-date-picker.config-CdXJcOGr.js} +63 -1
- package/dist/esm/{sd-date-picker_7.entry.js → sd-date-picker_8.entry.js} +446 -48
- package/dist/esm/sd-date-range-picker-calendar.entry.js +158 -8
- package/dist/esm/sd-divider.entry.js +3 -3
- package/dist/esm/sd-dropdown-button.entry.js +2 -2
- package/dist/esm/sd-field_3.entry.js +51 -52
- package/dist/esm/sd-form.entry.js +1 -1
- package/dist/esm/sd-ghost-button_3.entry.js +14 -10
- package/dist/esm/sd-guide.entry.js +2 -2
- package/dist/esm/sd-key-value-table.entry.js +87 -17
- package/dist/esm/sd-linear-progress.entry.js +3 -3
- package/dist/esm/sd-loading-container.entry.js +3 -3
- package/dist/esm/sd-modal-container.entry.js +16 -2
- package/dist/esm/sd-pagination.entry.js +171 -0
- package/dist/esm/sd-popover.entry.js +134 -44
- package/dist/esm/sd-popup.entry.js +3 -3
- package/dist/esm/sd-radio-button.entry.js +3 -3
- package/dist/esm/sd-radio.entry.js +4 -2
- package/dist/esm/{sd-select_3.entry.js → sd-select-list-item_4.entry.js} +277 -299
- package/dist/esm/sd-switch.entry.js +13 -3
- package/dist/esm/sd-tabs.entry.js +2 -2
- package/dist/esm/sd-text-link.entry.js +4 -4
- package/dist/esm/sd-time-picker-selector.entry.js +177 -0
- package/dist/esm/sd-time-picker-trigger.entry.js +73 -0
- package/dist/esm/sd-time-picker.config-DUq29Nhs.js +148 -0
- package/dist/esm/sd-time-picker.entry.js +171 -0
- package/dist/esm/sd-time-range-picker-selector.entry.js +217 -0
- package/dist/esm/sd-time-range-picker.entry.js +202 -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 +2 -2
- package/dist/esm/{system-BJfiMC9H.js → system-Bth2l1cy.js} +1 -7
- package/dist/esm/{tooltipArrow-blL0aWPE.js → tooltipArrow-DbLihSLI.js} +1 -1
- package/dist/esm/{useDatePicker-DoUg--aq.js → useDatePicker-DQ5Kyy_D.js} +1 -1
- package/dist/types/components/sd-checkbox/sd-checkbox.d.ts +2 -2
- package/dist/types/components/sd-chip/sd-chip.d.ts +3 -3
- package/dist/types/components/sd-chip-input/sd-chip-input.d.ts +4 -2
- package/dist/types/components/sd-confirm-modal/sd-confirm-modal.d.ts +10 -10
- package/dist/types/components/sd-date-picker/sd-date-picker.d.ts +2 -0
- package/dist/types/components/sd-date-range-picker/sd-date-range-picker-calendar/sd-date-range-picker-calendar.d.ts +20 -0
- package/dist/types/components/sd-date-range-picker/sd-date-range-picker.config.d.ts +25 -0
- package/dist/types/components/sd-date-range-picker/sd-date-range-picker.d.ts +9 -0
- package/dist/types/components/sd-field/sd-field.d.ts +7 -0
- package/dist/types/components/sd-file-picker/sd-file-picker.config.d.ts +28 -0
- package/dist/types/components/sd-file-picker/sd-file-picker.d.ts +3 -1
- package/dist/types/components/sd-ghost-button/sd-ghost-button.d.ts +5 -0
- package/dist/types/components/sd-input/sd-input.d.ts +1 -1
- package/dist/types/components/sd-key-value-table/sd-key-value-table.config.d.ts +22 -3
- package/dist/types/components/sd-key-value-table/sd-key-value-table.d.ts +9 -1
- package/dist/types/components/sd-modal-container/sd-modal-container.config.d.ts +3 -0
- package/dist/types/components/sd-modal-container/sd-modal-container.d.ts +2 -0
- package/dist/types/components/sd-number-input/sd-number-input.d.ts +8 -0
- package/dist/types/components/sd-popover/sd-popover.config.d.ts +22 -0
- package/dist/types/components/sd-popover/sd-popover.d.ts +29 -36
- package/dist/types/components/sd-radio/sd-radio.d.ts +3 -1
- package/dist/types/components/sd-radio-button/sd-radio-button.d.ts +2 -2
- package/dist/types/components/sd-radio-group/sd-radio-group.d.ts +2 -2
- package/dist/types/components/sd-switch/sd-switch.d.ts +8 -1
- package/dist/types/components/sd-tag/sd-tag.d.ts +2 -2
- package/dist/types/components/sd-time-picker/sd-time-picker-selector/sd-time-picker-selector.d.ts +35 -0
- package/dist/types/components/sd-time-picker/sd-time-picker-trigger/sd-time-picker-trigger.d.ts +21 -0
- package/dist/types/components/sd-time-picker/sd-time-picker.config.d.ts +71 -0
- package/dist/types/components/sd-time-picker/sd-time-picker.d.ts +84 -0
- package/dist/types/components/sd-time-range-picker/sd-time-range-picker-selector/sd-time-range-picker-selector.d.ts +40 -0
- package/dist/types/components/sd-time-range-picker/sd-time-range-picker.config.d.ts +9 -0
- package/dist/types/components/sd-time-range-picker/sd-time-range-picker.d.ts +88 -0
- package/dist/types/components/sd-tooltip/sd-tooltip.d.ts +7 -22
- package/dist/types/components.d.ts +1093 -885
- package/dist/types/index.d.ts +0 -1
- package/hydrate/index.js +2573 -3144
- package/hydrate/index.mjs +2573 -3144
- package/package.json +1 -1
- package/dist/cjs/component.table-POXY492T.js +0 -72
- package/dist/cjs/constants-DJRV1upE.js +0 -5
- package/dist/cjs/sd-date-picker.config-De7ahWIs.js +0 -41
- package/dist/cjs/sd-pagination_4.cjs.entry.js +0 -858
- package/dist/cjs/sd-select-list-item_2.cjs.entry.js +0 -173
- package/dist/cjs/sd-select.config-omyxekRa.js +0 -144
- package/dist/cjs/sd-table.cjs.entry.js +0 -956
- package/dist/cjs/sd-table.config-DFy_S4bc.js +0 -83
- package/dist/cjs/sd-td.cjs.entry.js +0 -201
- package/dist/cjs/useDatePicker-iMd6WToc.js +0 -103
- package/dist/collection/components/sd-table/constants.js +0 -1
- package/dist/collection/components/sd-table/sd-table.config.js +0 -88
- package/dist/collection/components/sd-table/sd-table.css +0 -180
- package/dist/collection/components/sd-table/sd-table.js +0 -1709
- package/dist/collection/components/sd-table/sd-table.stories.helpers.js +0 -242
- package/dist/collection/components/sd-table/sd-tbody/sd-tbody.css +0 -10
- package/dist/collection/components/sd-table/sd-tbody/sd-tbody.js +0 -110
- package/dist/collection/components/sd-table/sd-td/sd-td.css +0 -15
- package/dist/collection/components/sd-table/sd-td/sd-td.js +0 -381
- package/dist/collection/components/sd-table/sd-thead/sd-thead.css +0 -186
- package/dist/collection/components/sd-table/sd-thead/sd-thead.js +0 -629
- package/dist/collection/components/sd-table/sd-tr/sd-tr.css +0 -145
- package/dist/collection/components/sd-table/sd-tr/sd-tr.js +0 -530
- package/dist/components/p-5pkzwl5N.js +0 -1
- package/dist/components/p-B-pJW3nY.js +0 -1
- package/dist/components/p-B2pYDEK7.js +0 -1
- package/dist/components/p-B3HYnTGx.js +0 -1
- package/dist/components/p-B6ezDhRg.js +0 -1
- package/dist/components/p-BCxePXvg.js +0 -1
- package/dist/components/p-BJfiMC9H.js +0 -1
- package/dist/components/p-BNHhtZUf.js +0 -1
- package/dist/components/p-BQ4Okfcm.js +0 -1
- package/dist/components/p-BSxleKw8.js +0 -1
- package/dist/components/p-BUgGuigd.js +0 -1
- package/dist/components/p-BWHQn4fD.js +0 -1
- package/dist/components/p-BZXgIBUG.js +0 -1
- package/dist/components/p-Bxb7TcZh.js +0 -1
- package/dist/components/p-C0tnN4yn.js +0 -1
- package/dist/components/p-CMvHDxR5.js +0 -1
- package/dist/components/p-CSh-DcM7.js +0 -1
- package/dist/components/p-Cf62Nvrx.js +0 -1
- package/dist/components/p-DbPS61bp.js +0 -1
- package/dist/components/p-DckXBMgo.js +0 -1
- package/dist/components/p-DmAnTwUx.js +0 -1
- package/dist/components/p-E8OA_psS.js +0 -1
- package/dist/components/p-PFLrdhQj.js +0 -1
- package/dist/components/p-l9RiSWRc.js +0 -1
- package/dist/components/p-paSLRXAR.js +0 -1
- package/dist/components/p-sZMi_32I.js +0 -1
- package/dist/components/p-yxZBh03f.js +0 -1
- package/dist/components/sd-table.js +0 -1
- package/dist/components/sd-tbody.d.ts +0 -11
- package/dist/components/sd-tbody.js +0 -1
- package/dist/components/sd-td.js +0 -1
- package/dist/components/sd-thead.js +0 -1
- package/dist/components/sd-tr.d.ts +0 -11
- package/dist/components/sd-tr.js +0 -1
- package/dist/design-system/p-0048de73.entry.js +0 -1
- package/dist/design-system/p-20f69606.entry.js +0 -1
- package/dist/design-system/p-27197194.entry.js +0 -1
- package/dist/design-system/p-5c8f4d9c.entry.js +0 -1
- package/dist/design-system/p-5pkzwl5N.js +0 -1
- package/dist/design-system/p-75726e20.entry.js +0 -1
- package/dist/design-system/p-7abf62f3.entry.js +0 -1
- package/dist/design-system/p-7ae27a26.entry.js +0 -1
- package/dist/design-system/p-84d0181b.entry.js +0 -1
- package/dist/design-system/p-91f7be74.entry.js +0 -1
- package/dist/design-system/p-94d6b7b4.entry.js +0 -1
- package/dist/design-system/p-9b21773a.entry.js +0 -1
- package/dist/design-system/p-BJfiMC9H.js +0 -1
- package/dist/design-system/p-Cf62Nvrx.js +0 -1
- package/dist/design-system/p-CuAh9n2o.js +0 -1
- package/dist/design-system/p-DDNBPrZh.js +0 -2
- package/dist/design-system/p-a12d7362.entry.js +0 -1
- package/dist/design-system/p-b831eded.entry.js +0 -1
- package/dist/design-system/p-c5502585.entry.js +0 -1
- package/dist/design-system/p-c81898a0.entry.js +0 -1
- package/dist/design-system/p-d4e2f412.entry.js +0 -1
- package/dist/design-system/p-d6b3d78b.entry.js +0 -1
- package/dist/design-system/p-dbfa3931.entry.js +0 -1
- package/dist/design-system/p-f16985c9.entry.js +0 -1
- package/dist/design-system/p-fa967329.entry.js +0 -1
- package/dist/design-system/p-laVsm9VM.js +0 -1
- package/dist/design-system/p-sZMi_32I.js +0 -1
- package/dist/esm/component.table-5pkzwl5N.js +0 -70
- package/dist/esm/constants-sZMi_32I.js +0 -3
- package/dist/esm/sd-date-picker.config-D-ks6qNf.js +0 -38
- package/dist/esm/sd-pagination_4.entry.js +0 -853
- package/dist/esm/sd-select-list-item_2.entry.js +0 -170
- package/dist/esm/sd-select.config-CeHGlqOT.js +0 -129
- package/dist/esm/sd-table.config-DmOBlnsM.js +0 -70
- package/dist/esm/sd-table.entry.js +0 -954
- package/dist/esm/sd-td.entry.js +0 -199
- package/dist/types/components/sd-table/constants.d.ts +0 -50
- package/dist/types/components/sd-table/sd-table.config.d.ts +0 -71
- package/dist/types/components/sd-table/sd-table.d.ts +0 -199
- package/dist/types/components/sd-table/sd-table.stories.helpers.d.ts +0 -39
- package/dist/types/components/sd-table/sd-tbody/sd-tbody.d.ts +0 -15
- package/dist/types/components/sd-table/sd-td/sd-td.d.ts +0 -38
- package/dist/types/components/sd-table/sd-thead/sd-thead.d.ts +0 -62
- package/dist/types/components/sd-table/sd-tr/sd-tr.d.ts +0 -54
|
@@ -3,8 +3,8 @@ import { sanitizeInlineHtml } from "../../utils/html/sanitize-inline-html";
|
|
|
3
3
|
import { CONFIRM_MODAL_DEFAULT_BUTTON, CONFIRM_MODAL_ICON_COLOR, CONFIRM_MODAL_ICON_MAP, SUB_BUTTON_PRESET, TITLE_ICON_SIZE, } from "./sd-confirm-modal.config";
|
|
4
4
|
export class SdConfirmModal {
|
|
5
5
|
el;
|
|
6
|
-
|
|
7
|
-
|
|
6
|
+
hasTagSlot = false;
|
|
7
|
+
hasOptionSlot = false;
|
|
8
8
|
slotObserver;
|
|
9
9
|
/** 모달 타입 (아이콘·버튼 색상 결정) */
|
|
10
10
|
type = 'positive';
|
|
@@ -22,14 +22,12 @@ export class SdConfirmModal {
|
|
|
22
22
|
mainButtonLabel = '확인';
|
|
23
23
|
/** 취소 버튼 레이블 (없으면 취소 버튼 미표시) */
|
|
24
24
|
subButtonLabel = '';
|
|
25
|
-
/** 콘텐츠
|
|
25
|
+
/** 콘텐츠 박스 tag 슬롯 기본 태그 프리셋 (slot="tag" 미지정 시) */
|
|
26
26
|
tagPreset = 'square_sm_grey';
|
|
27
|
-
/** 콘텐츠
|
|
27
|
+
/** 콘텐츠 박스 tag 슬롯 기본 태그 레이블 (slot="tag" 미지정 시) */
|
|
28
28
|
tagLabel = '';
|
|
29
|
-
/** 콘텐츠
|
|
29
|
+
/** 콘텐츠 박스 option 슬롯 기본 텍스트 (slot="option" 미지정 시) */
|
|
30
30
|
slotLabel = '';
|
|
31
|
-
/** 콘텐츠 박스에 직접 삽입할 HTMLElement */
|
|
32
|
-
tagContents;
|
|
33
31
|
/** 닫기 버튼 클릭 시 발생합니다. */
|
|
34
32
|
close;
|
|
35
33
|
/** 취소 버튼 클릭 시 발생합니다. */
|
|
@@ -48,17 +46,6 @@ export class SdConfirmModal {
|
|
|
48
46
|
characterData: true,
|
|
49
47
|
});
|
|
50
48
|
}
|
|
51
|
-
componentDidRender() {
|
|
52
|
-
if (this.customContentRef && this.tagContents instanceof HTMLElement) {
|
|
53
|
-
if (typeof this.customContentRef.replaceChildren === 'function') {
|
|
54
|
-
this.customContentRef.replaceChildren(this.tagContents);
|
|
55
|
-
}
|
|
56
|
-
else {
|
|
57
|
-
this.customContentRef.innerHTML = '';
|
|
58
|
-
this.customContentRef.appendChild(this.tagContents);
|
|
59
|
-
}
|
|
60
|
-
}
|
|
61
|
-
}
|
|
62
49
|
disconnectedCallback() {
|
|
63
50
|
this.slotObserver?.disconnect();
|
|
64
51
|
}
|
|
@@ -68,29 +55,39 @@ export class SdConfirmModal {
|
|
|
68
55
|
get resolvedMainButton() {
|
|
69
56
|
return this.mainButtonName ?? CONFIRM_MODAL_DEFAULT_BUTTON[this.resolvedType];
|
|
70
57
|
}
|
|
71
|
-
|
|
72
|
-
|
|
73
|
-
|
|
58
|
+
/** tag 위치 콘텐츠 박스 표시 여부 (tagLabel fallback 또는 slot="tag") */
|
|
59
|
+
get showTagBox() {
|
|
60
|
+
return this.tagLabel !== '' || this.hasTagSlot;
|
|
74
61
|
}
|
|
75
|
-
|
|
76
|
-
|
|
62
|
+
/** option 위치(bottomMessage 아래) 표시 여부 (slotLabel fallback 또는 slot="option") */
|
|
63
|
+
get showOption() {
|
|
64
|
+
return this.slotLabel !== '' || this.hasOptionSlot;
|
|
77
65
|
}
|
|
66
|
+
/** light-DOM 에 slot="tag" / slot="option" 콘텐츠가 있는지 감지 */
|
|
78
67
|
syncHasSlottedContent() {
|
|
79
|
-
|
|
80
|
-
|
|
81
|
-
|
|
82
|
-
|
|
83
|
-
|
|
84
|
-
|
|
85
|
-
|
|
68
|
+
let hasTagSlot = false;
|
|
69
|
+
let hasOptionSlot = false;
|
|
70
|
+
Array.from(this.el.children).forEach(node => {
|
|
71
|
+
if (!(node instanceof HTMLElement))
|
|
72
|
+
return;
|
|
73
|
+
if (node.classList.contains('sd-confirm-modal'))
|
|
74
|
+
return;
|
|
75
|
+
const slot = node.getAttribute('slot');
|
|
76
|
+
if (slot === 'tag')
|
|
77
|
+
hasTagSlot = true;
|
|
78
|
+
else if (slot === 'option')
|
|
79
|
+
hasOptionSlot = true;
|
|
80
|
+
});
|
|
81
|
+
if (hasTagSlot !== this.hasTagSlot)
|
|
82
|
+
this.hasTagSlot = hasTagSlot;
|
|
83
|
+
if (hasOptionSlot !== this.hasOptionSlot)
|
|
84
|
+
this.hasOptionSlot = hasOptionSlot;
|
|
86
85
|
}
|
|
87
86
|
render() {
|
|
88
87
|
const type = this.resolvedType;
|
|
89
88
|
const iconName = CONFIRM_MODAL_ICON_MAP[type];
|
|
90
89
|
const iconColor = CONFIRM_MODAL_ICON_COLOR[type];
|
|
91
|
-
return (h("div", { key: '
|
|
92
|
-
this.customContentRef = el;
|
|
93
|
-
} })) : (h("slot", { onSlotchange: () => this.syncHasSlottedContent() }, this.tagLabel && (h("sd-tag", { name: this.tagPreset ?? 'square_sm_grey', label: this.tagLabel })), this.slotLabel && (h("span", { class: "sd-confirm-modal__slot-label" }, this.slotLabel)))))), (this.bottomMessage ?? []).length > 0 && (h("div", { key: 'e99adc95c95be16945407d54833164908aad0b50', class: "sd-confirm-modal__message" }, (this.bottomMessage ?? []).map(msg => (h("p", { class: "sd-confirm-modal__message-text", innerHTML: sanitizeInlineHtml(msg) })))))), h("div", { key: '20a6660323e1d9f4ee096f0c07bf0596f5a2445a', class: "sd-confirm-modal__button" }, this.subButtonLabel && (h("sd-button", { key: '73141dd6fc6f703bff11e71ca9820cf3e1045466', name: SUB_BUTTON_PRESET, label: this.subButtonLabel, onSdClick: () => this.cancel.emit() })), h("sd-button", { key: 'bed2d910b4b35d59897e14222f86f20a7e8c3bde', name: this.resolvedMainButton, label: this.mainButtonLabel ?? '확인', onSdClick: () => this.ok.emit() }))));
|
|
90
|
+
return (h("div", { key: '8d84d72de4a8194100a22c2f19190d35da8ad9d0', class: "sd-confirm-modal" }, h("sd-ghost-button", { key: '8d3c11e01819fc4b3a92ef2c00afab336b12a4d8', class: "sd-confirm-modal__close-button", icon: "close", ariaLabel: "close", onClick: () => this.close.emit() }), iconName && (h("sd-icon", { key: 'f5013d2753d946a46666c3fc4e7e5ec79ebb5bf3', class: "sd-confirm-modal__icon", name: iconName, size: TITLE_ICON_SIZE, color: iconColor })), h("h2", { key: '88ca2b2d80ec9dfe06aa6d9ae4d65a9bf365e52e', class: `sd-confirm-modal__title ${this.titleClass ?? ''}` }, this.modalTitle), h("div", { key: 'ab9ad0c312d4155a5d8985d43c31f4ab11fc9110', class: "sd-confirm-modal__body" }, (this.topMessage ?? []).length > 0 && (h("div", { key: '294bea4d946392e63ec152f4a109e75fd9c5a743', class: "sd-confirm-modal__message" }, (this.topMessage ?? []).map(msg => (h("p", { class: "sd-confirm-modal__message-text", innerHTML: sanitizeInlineHtml(msg) }))))), this.showTagBox && (h("div", { key: '6ab23578df59a6c29718087fda729a256f32e725', class: "sd-confirm-modal__content-box" }, h("slot", { key: '48c21c001a4608d1b36c4a8feee99d7ee05422c7', name: "tag", onSlotchange: () => this.syncHasSlottedContent() }, this.tagLabel && (h("sd-tag", { key: 'fb227ba974fc9b176e90bfa906c212099c23c98b', name: this.tagPreset ?? 'square_sm_grey', label: this.tagLabel }))))), (this.bottomMessage ?? []).length > 0 && (h("div", { key: '665429ebae13b9c71e4eeaf372c45dbb98b71aa8', class: "sd-confirm-modal__message" }, (this.bottomMessage ?? []).map(msg => (h("p", { class: "sd-confirm-modal__message-text", innerHTML: sanitizeInlineHtml(msg) }))))), this.showOption && (h("div", { key: '589d730c0952cd6370f96984f2d0e3c9a9fe50e6', class: "sd-confirm-modal__option" }, h("slot", { key: '23a57ca4663436aabd4f606246c80d3c3aec1ecf', name: "option", onSlotchange: () => this.syncHasSlottedContent() }, this.slotLabel && (h("span", { key: '6dead5dc544f4f1ed68a50d2619a6c10f438ea67', class: "sd-confirm-modal__slot-label" }, this.slotLabel)))))), h("div", { key: '7156c27678f8f9a6de5afdbeed191a954420f1fa', class: "sd-confirm-modal__button" }, this.subButtonLabel && (h("sd-button", { key: '02a6b6ffe4218e93ceef0dad349cd122587864df', name: SUB_BUTTON_PRESET, label: this.subButtonLabel, onSdClick: () => this.cancel.emit() })), h("sd-button", { key: '6441fda6cebcc24fd48715ed85909b652725788f', name: this.resolvedMainButton, label: this.mainButtonLabel ?? '확인', onSdClick: () => this.ok.emit() }))));
|
|
94
91
|
}
|
|
95
92
|
static get is() { return "sd-confirm-modal"; }
|
|
96
93
|
static get originalStyleUrls() {
|
|
@@ -293,7 +290,7 @@ export class SdConfirmModal {
|
|
|
293
290
|
"optional": false,
|
|
294
291
|
"docs": {
|
|
295
292
|
"tags": [],
|
|
296
|
-
"text": "\uCF58\uD150\uCE20 \uBC15\uC2A4\
|
|
293
|
+
"text": "\uCF58\uD150\uCE20 \uBC15\uC2A4 tag \uC2AC\uB86F \uAE30\uBCF8 \uD0DC\uADF8 \uD504\uB9AC\uC14B (slot=\"tag\" \uBBF8\uC9C0\uC815 \uC2DC)"
|
|
297
294
|
},
|
|
298
295
|
"getter": false,
|
|
299
296
|
"setter": false,
|
|
@@ -313,7 +310,7 @@ export class SdConfirmModal {
|
|
|
313
310
|
"optional": false,
|
|
314
311
|
"docs": {
|
|
315
312
|
"tags": [],
|
|
316
|
-
"text": "\uCF58\uD150\uCE20 \uBC15\uC2A4\
|
|
313
|
+
"text": "\uCF58\uD150\uCE20 \uBC15\uC2A4 tag \uC2AC\uB86F \uAE30\uBCF8 \uD0DC\uADF8 \uB808\uC774\uBE14 (slot=\"tag\" \uBBF8\uC9C0\uC815 \uC2DC)"
|
|
317
314
|
},
|
|
318
315
|
"getter": false,
|
|
319
316
|
"setter": false,
|
|
@@ -333,41 +330,20 @@ export class SdConfirmModal {
|
|
|
333
330
|
"optional": false,
|
|
334
331
|
"docs": {
|
|
335
332
|
"tags": [],
|
|
336
|
-
"text": "\uCF58\uD150\uCE20 \uBC15\uC2A4\
|
|
333
|
+
"text": "\uCF58\uD150\uCE20 \uBC15\uC2A4 option \uC2AC\uB86F \uAE30\uBCF8 \uD14D\uC2A4\uD2B8 (slot=\"option\" \uBBF8\uC9C0\uC815 \uC2DC)"
|
|
337
334
|
},
|
|
338
335
|
"getter": false,
|
|
339
336
|
"setter": false,
|
|
340
337
|
"reflect": false,
|
|
341
338
|
"attribute": "slot-label",
|
|
342
339
|
"defaultValue": "''"
|
|
343
|
-
},
|
|
344
|
-
"tagContents": {
|
|
345
|
-
"type": "unknown",
|
|
346
|
-
"mutable": false,
|
|
347
|
-
"complexType": {
|
|
348
|
-
"original": "HTMLElement",
|
|
349
|
-
"resolved": "HTMLElement | undefined",
|
|
350
|
-
"references": {
|
|
351
|
-
"HTMLElement": {
|
|
352
|
-
"location": "global",
|
|
353
|
-
"id": "global::HTMLElement"
|
|
354
|
-
}
|
|
355
|
-
}
|
|
356
|
-
},
|
|
357
|
-
"required": false,
|
|
358
|
-
"optional": true,
|
|
359
|
-
"docs": {
|
|
360
|
-
"tags": [],
|
|
361
|
-
"text": "\uCF58\uD150\uCE20 \uBC15\uC2A4\uC5D0 \uC9C1\uC811 \uC0BD\uC785\uD560 HTMLElement"
|
|
362
|
-
},
|
|
363
|
-
"getter": false,
|
|
364
|
-
"setter": false
|
|
365
340
|
}
|
|
366
341
|
};
|
|
367
342
|
}
|
|
368
343
|
static get states() {
|
|
369
344
|
return {
|
|
370
|
-
"
|
|
345
|
+
"hasTagSlot": {},
|
|
346
|
+
"hasOptionSlot": {}
|
|
371
347
|
};
|
|
372
348
|
}
|
|
373
349
|
static get events() {
|
package/dist/collection/components/sd-date-picker/sd-date-picker-trigger/sd-date-picker-trigger.js
CHANGED
|
@@ -38,7 +38,7 @@ export class SdDatePickerTrigger {
|
|
|
38
38
|
? DATEPICKER_COLORS.icon.disabled
|
|
39
39
|
: DATEPICKER_COLORS.icon.default,
|
|
40
40
|
};
|
|
41
|
-
return (h("div", { key: '
|
|
41
|
+
return (h("div", { key: 'b52c18bc057886ed8d6b1f5d145225a4c31f0035', role: "button", tabindex: this.disabled ? -1 : 0, class: {
|
|
42
42
|
'sd-date-picker-trigger': true,
|
|
43
43
|
'sd-date-picker-trigger--disabled': this.disabled,
|
|
44
44
|
}, style: cssVars, onClick: this.handleClick, onKeyDown: e => {
|
|
@@ -46,7 +46,7 @@ export class SdDatePickerTrigger {
|
|
|
46
46
|
e.preventDefault();
|
|
47
47
|
this.handleClick();
|
|
48
48
|
}
|
|
49
|
-
} }, h("sd-icon", { key: '
|
|
49
|
+
} }, h("sd-icon", { key: 'd653fa9a79c41b39e77a6a77afba2233a977ba29', name: "date", size: Number(sizeTokens.iconSize), color: "var(--trigger-icon-color)", class: "sd-date-picker-trigger__icon" }), h("span", { key: 'e37f745bab9ea7ac1864ce0944ffd9d1d62eecd2', class: "sd-date-picker-trigger__text" }, hasValue ? this.displayText : this.placeholder)));
|
|
50
50
|
}
|
|
51
51
|
static get is() { return "sd-date-picker-trigger"; }
|
|
52
52
|
static get originalStyleUrls() {
|
|
@@ -33,6 +33,8 @@ export class SdDatePicker {
|
|
|
33
33
|
rules = [];
|
|
34
34
|
/** 에러 상태 여부 */
|
|
35
35
|
error = false;
|
|
36
|
+
/** 필드 상태 (없으면 error/rules 결과로 자동 결정) */
|
|
37
|
+
status;
|
|
36
38
|
/** 레이블 영역 아이콘 */
|
|
37
39
|
icon = undefined;
|
|
38
40
|
/** 레이블 툴팁 텍스트 */
|
|
@@ -116,9 +118,9 @@ export class SdDatePicker {
|
|
|
116
118
|
'--sd-system-color-field-border-focus': DATEPICKER_COLORS.border.focus,
|
|
117
119
|
'--sd-system-color-field-bg-default': DATEPICKER_COLORS.bg.default,
|
|
118
120
|
};
|
|
119
|
-
return (h("sd-field", { key: '
|
|
121
|
+
return (h("sd-field", { key: 'c3adbcb65f372a7c33350a747b29b5a35990c292', name: this.name, label: this.label, labelWidth: this.labelWidth, addonLabel: this.addonLabel, addonAlign: this.addonAlign, hint: this.hint, errorMessage: this.errorMessage, width: this.width, rules: this.rules, error: this.error, status: this.status, disabled: this.disabled, focused: this.focused, hovered: this.hovered, size: this.size, icon: this.icon, labelTooltip: this.labelTooltip, labelTooltipProps: this.labelTooltipProps, ref: el => (this.formField = el), onMouseEnter: () => (this.hovered = true), onMouseLeave: () => (this.hovered = false), style: cssVars }, h("div", { key: 'aac9b498321c4506a6979a17de4896c4521887a1', class: "sd-date-picker", ref: el => {
|
|
120
122
|
this.triggerRef = el;
|
|
121
|
-
} }, h("sd-date-picker-trigger", { key: '
|
|
123
|
+
} }, h("sd-date-picker-trigger", { key: '00a558ac1c9a5af666c62c15e18e240036e1bb34', displayText: this.value ?? '', placeholder: this.placeholder, disabled: this.disabled, size: this.size, onSdTriggerClick: this.handleTriggerClick })), (this.isOpen || this.isAnimatingOut) && (h("sd-portal", { key: '142098d59d8a5df4054e7a39f4d93b0ddc06109b', open: this.isOpen, parentRef: this.triggerRef, onSdClose: () => this.closeDropdown() }, h("sd-calendar", { key: '319dc85ff9a41e8b04fdaecc1c7e9e01c953014b', elevated: true, value: this.value, selectable: this.selectable, onSdUpdate: this.handleSelect, onSdViewChange: this.handleViewChange })))));
|
|
122
124
|
}
|
|
123
125
|
static get is() { return "sd-date-picker"; }
|
|
124
126
|
static get originalStyleUrls() {
|
|
@@ -429,6 +431,25 @@ export class SdDatePicker {
|
|
|
429
431
|
"attribute": "error",
|
|
430
432
|
"defaultValue": "false"
|
|
431
433
|
},
|
|
434
|
+
"status": {
|
|
435
|
+
"type": "string",
|
|
436
|
+
"mutable": false,
|
|
437
|
+
"complexType": {
|
|
438
|
+
"original": "'default' | 'pass' | 'error'",
|
|
439
|
+
"resolved": "\"default\" | \"error\" | \"pass\" | undefined",
|
|
440
|
+
"references": {}
|
|
441
|
+
},
|
|
442
|
+
"required": false,
|
|
443
|
+
"optional": true,
|
|
444
|
+
"docs": {
|
|
445
|
+
"tags": [],
|
|
446
|
+
"text": "\uD544\uB4DC \uC0C1\uD0DC (\uC5C6\uC73C\uBA74 error/rules \uACB0\uACFC\uB85C \uC790\uB3D9 \uACB0\uC815)"
|
|
447
|
+
},
|
|
448
|
+
"getter": false,
|
|
449
|
+
"setter": false,
|
|
450
|
+
"reflect": false,
|
|
451
|
+
"attribute": "status"
|
|
452
|
+
},
|
|
432
453
|
"icon": {
|
|
433
454
|
"type": "unknown",
|
|
434
455
|
"mutable": false,
|
|
@@ -12,6 +12,9 @@ sd-date-range-picker-calendar .sd-date-range-picker-calendar {
|
|
|
12
12
|
box-shadow: 2px 2px 12px 2px rgba(0, 0, 0, 0.2);
|
|
13
13
|
user-select: none;
|
|
14
14
|
}
|
|
15
|
+
sd-date-range-picker-calendar .sd-date-range-picker-calendar--with-time {
|
|
16
|
+
height: auto;
|
|
17
|
+
}
|
|
15
18
|
sd-date-range-picker-calendar .sd-date-range-picker-calendar__top-bar {
|
|
16
19
|
position: relative;
|
|
17
20
|
display: flex;
|
|
@@ -181,4 +184,76 @@ sd-date-range-picker-calendar .sd-date-range-picker-calendar__day--empty {
|
|
|
181
184
|
visibility: hidden;
|
|
182
185
|
pointer-events: none;
|
|
183
186
|
background: transparent;
|
|
187
|
+
}
|
|
188
|
+
sd-date-range-picker-calendar .sd-date-range-picker-calendar__time-divider {
|
|
189
|
+
width: 100%;
|
|
190
|
+
height: 1px;
|
|
191
|
+
background: var(--range-divider);
|
|
192
|
+
}
|
|
193
|
+
sd-date-range-picker-calendar .sd-date-range-picker-calendar__time {
|
|
194
|
+
display: flex;
|
|
195
|
+
flex-direction: row;
|
|
196
|
+
gap: var(--time-gap);
|
|
197
|
+
}
|
|
198
|
+
sd-date-range-picker-calendar .sd-date-range-picker-calendar__time-section {
|
|
199
|
+
display: flex;
|
|
200
|
+
flex: 1;
|
|
201
|
+
align-items: center;
|
|
202
|
+
justify-content: center;
|
|
203
|
+
gap: var(--time-section-gap);
|
|
204
|
+
padding: var(--time-padding-y) var(--time-padding-x);
|
|
205
|
+
border-radius: var(--time-radius);
|
|
206
|
+
background: var(--time-bg-default);
|
|
207
|
+
font-size: var(--time-font-size);
|
|
208
|
+
line-height: var(--time-line-height);
|
|
209
|
+
font-weight: var(--time-font-weight);
|
|
210
|
+
}
|
|
211
|
+
sd-date-range-picker-calendar .sd-date-range-picker-calendar__time-section--active {
|
|
212
|
+
background: var(--time-bg-selected);
|
|
213
|
+
}
|
|
214
|
+
sd-date-range-picker-calendar .sd-date-range-picker-calendar__time-date {
|
|
215
|
+
display: inline-flex;
|
|
216
|
+
align-items: center;
|
|
217
|
+
gap: var(--time-date-gap);
|
|
218
|
+
}
|
|
219
|
+
sd-date-range-picker-calendar .sd-date-range-picker-calendar__time-num {
|
|
220
|
+
color: var(--time-date-label);
|
|
221
|
+
}
|
|
222
|
+
sd-date-range-picker-calendar .sd-date-range-picker-calendar__time-unit {
|
|
223
|
+
color: var(--time-date-unit);
|
|
224
|
+
}
|
|
225
|
+
sd-date-range-picker-calendar .sd-date-range-picker-calendar__time-input-group {
|
|
226
|
+
display: inline-flex;
|
|
227
|
+
align-items: center;
|
|
228
|
+
gap: var(--time-unit-gap);
|
|
229
|
+
}
|
|
230
|
+
sd-date-range-picker-calendar .sd-date-range-picker-calendar__time-input {
|
|
231
|
+
width: 40px;
|
|
232
|
+
height: var(--time-input-height);
|
|
233
|
+
padding: 0;
|
|
234
|
+
border: 1px solid var(--time-input-border);
|
|
235
|
+
border-radius: var(--time-input-radius);
|
|
236
|
+
background: var(--calendar-bg);
|
|
237
|
+
text-align: center;
|
|
238
|
+
font-size: var(--time-font-size);
|
|
239
|
+
line-height: var(--time-line-height);
|
|
240
|
+
font-weight: var(--time-font-weight);
|
|
241
|
+
color: var(--time-input-text);
|
|
242
|
+
box-sizing: border-box;
|
|
243
|
+
outline: none;
|
|
244
|
+
}
|
|
245
|
+
sd-date-range-picker-calendar .sd-date-range-picker-calendar__time-input::placeholder {
|
|
246
|
+
color: var(--time-input-placeholder);
|
|
247
|
+
}
|
|
248
|
+
sd-date-range-picker-calendar .sd-date-range-picker-calendar__time-input:focus {
|
|
249
|
+
border-color: var(--time-input-border-focus);
|
|
250
|
+
}
|
|
251
|
+
sd-date-range-picker-calendar .sd-date-range-picker-calendar__time-input:disabled {
|
|
252
|
+
cursor: not-allowed;
|
|
253
|
+
}
|
|
254
|
+
sd-date-range-picker-calendar .sd-date-range-picker-calendar__time-colon {
|
|
255
|
+
color: var(--time-date-label);
|
|
256
|
+
}
|
|
257
|
+
sd-date-range-picker-calendar .sd-date-range-picker-calendar__time-suffix {
|
|
258
|
+
color: var(--time-date-unit);
|
|
184
259
|
}
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import { h, Fragment } from "@stencil/core";
|
|
2
2
|
import { today, addDays } from "../../../utils/date";
|
|
3
3
|
import { useDatePicker } from "../../../modules/useDatePicker";
|
|
4
|
-
import { CALENDAR_LAYOUT, RANGE_LAYOUT, WEEK_LABELS } from "../sd-date-range-picker.config";
|
|
4
|
+
import { CALENDAR_LAYOUT, RANGE_LAYOUT, TIME_LAYOUT, WEEK_LABELS, } from "../sd-date-range-picker.config";
|
|
5
5
|
export class SdDateRangePickerCalendar {
|
|
6
6
|
/** 선택된 날짜 범위 [시작일, 종료일] */
|
|
7
7
|
value = null;
|
|
@@ -9,11 +9,20 @@ export class SdDateRangePickerCalendar {
|
|
|
9
9
|
selectable;
|
|
10
10
|
/** 최대 선택 가능 일 수 */
|
|
11
11
|
maxRange;
|
|
12
|
+
/** 시간(시:분) 선택 푸터 사용 여부 */
|
|
13
|
+
useTimePicker = false;
|
|
12
14
|
currentYear;
|
|
13
15
|
currentMonth;
|
|
14
16
|
pendingStart = '';
|
|
15
17
|
hoverDate = '';
|
|
16
18
|
displayValue = null;
|
|
19
|
+
// 시:분은 2자리 미만도 허용하기 위해 문자열로 관리하고 emit/blur 시 패딩한다
|
|
20
|
+
startHour = '00';
|
|
21
|
+
startMinute = '00';
|
|
22
|
+
endHour = '00';
|
|
23
|
+
endMinute = '00';
|
|
24
|
+
/** 직접 emit한 값이 value prop으로 되돌아오는 에코를 구분해 시간 입력 clobber를 막는다 */
|
|
25
|
+
lastEmitted = '';
|
|
17
26
|
/** 날짜 범위 선택 시 발생합니다. */
|
|
18
27
|
select;
|
|
19
28
|
/** 달력 뷰가 변경될 때 발생합니다. */
|
|
@@ -26,13 +35,31 @@ export class SdDateRangePickerCalendar {
|
|
|
26
35
|
this.syncFromValue();
|
|
27
36
|
}
|
|
28
37
|
syncFromValue() {
|
|
29
|
-
|
|
38
|
+
// 자신이 emit한 값이 그대로 돌아온 경우(에코)에는 시간 입력 상태를 건드리지 않는다
|
|
39
|
+
if (this.useTimePicker && JSON.stringify(this.value) === this.lastEmitted)
|
|
40
|
+
return;
|
|
41
|
+
const start = this.splitDateTime(this.value?.[0]);
|
|
42
|
+
const end = this.splitDateTime(this.value?.[1]);
|
|
43
|
+
const base = start.date || today;
|
|
30
44
|
const [year, month] = base.split('-').map(Number);
|
|
31
45
|
this.currentYear = year;
|
|
32
46
|
this.currentMonth = month;
|
|
33
47
|
this.pendingStart = '';
|
|
34
48
|
this.hoverDate = '';
|
|
35
|
-
|
|
49
|
+
// displayValue는 날짜 부분만 보관 — 캘린더 그리드 로직은 시간과 무관하게 동작한다
|
|
50
|
+
this.displayValue = this.value ? [start.date, end.date] : null;
|
|
51
|
+
this.startHour = start.hour;
|
|
52
|
+
this.startMinute = start.minute;
|
|
53
|
+
this.endHour = end.hour;
|
|
54
|
+
this.endMinute = end.minute;
|
|
55
|
+
}
|
|
56
|
+
/** "YYYY-MM-DD HH:mm" 또는 "YYYY-MM-DD"를 날짜/시/분으로 분리한다 */
|
|
57
|
+
splitDateTime(v) {
|
|
58
|
+
if (v == null || v === '')
|
|
59
|
+
return { date: '', hour: '00', minute: '00' };
|
|
60
|
+
const [date = '', time = ''] = v.split(' ');
|
|
61
|
+
const [hour = '00', minute = '00'] = time.split(':');
|
|
62
|
+
return { date, hour, minute };
|
|
36
63
|
}
|
|
37
64
|
get rightYear() {
|
|
38
65
|
return this.currentMonth === 12 ? this.currentYear + 1 : this.currentYear;
|
|
@@ -139,13 +166,69 @@ export class SdDateRangePickerCalendar {
|
|
|
139
166
|
this.pendingStart = cell.date;
|
|
140
167
|
this.displayValue = null;
|
|
141
168
|
this.hoverDate = '';
|
|
169
|
+
// 새 범위 선택을 시작하면 시작=00:00, 종료=23:59(하루 전체)로 초기화한다
|
|
170
|
+
if (this.useTimePicker) {
|
|
171
|
+
this.startHour = '00';
|
|
172
|
+
this.startMinute = '00';
|
|
173
|
+
this.endHour = '23';
|
|
174
|
+
this.endMinute = '59';
|
|
175
|
+
}
|
|
142
176
|
return;
|
|
143
177
|
}
|
|
144
178
|
const newRange = [this.pendingStart, cell.date];
|
|
145
179
|
this.pendingStart = '';
|
|
146
180
|
this.hoverDate = '';
|
|
147
181
|
this.displayValue = newRange;
|
|
148
|
-
this.
|
|
182
|
+
this.emitRange(newRange[0], newRange[1]);
|
|
183
|
+
}
|
|
184
|
+
/** 날짜 범위(+ useTimePicker면 시:분)를 결합해 sdSelect로 emit한다 */
|
|
185
|
+
emitRange(startDate, endDate) {
|
|
186
|
+
const range = this.useTimePicker
|
|
187
|
+
? [
|
|
188
|
+
`${startDate} ${this.pad(this.startHour)}:${this.pad(this.startMinute)}`,
|
|
189
|
+
`${endDate} ${this.pad(this.endHour)}:${this.pad(this.endMinute)}`,
|
|
190
|
+
]
|
|
191
|
+
: [startDate, endDate];
|
|
192
|
+
this.lastEmitted = JSON.stringify(range);
|
|
193
|
+
this.select.emit(range);
|
|
194
|
+
}
|
|
195
|
+
pad(v) {
|
|
196
|
+
return String(Number(v) || 0).padStart(2, '0');
|
|
197
|
+
}
|
|
198
|
+
/** 시:분 입력 — 숫자만/2자리로 제한하고 범위(시 0~23, 분 0~59)로 클램프한다 */
|
|
199
|
+
handleTimeInput(which, part, event) {
|
|
200
|
+
const input = event.target;
|
|
201
|
+
const digits = input.value.replace(/\D/g, '').slice(0, 2);
|
|
202
|
+
const max = part === 'h' ? 23 : 59;
|
|
203
|
+
const next = digits !== '' && Number(digits) > max ? String(max) : digits;
|
|
204
|
+
input.value = next;
|
|
205
|
+
this.setTimePart(which, part, next);
|
|
206
|
+
// 범위가 확정된 상태면 실시간으로 재emit한다
|
|
207
|
+
if (this.displayValue != null && this.displayValue[0] !== '' && this.displayValue[1] !== '') {
|
|
208
|
+
this.emitRange(this.displayValue[0], this.displayValue[1]);
|
|
209
|
+
}
|
|
210
|
+
}
|
|
211
|
+
handleTimeBlur(which, part) {
|
|
212
|
+
this.setTimePart(which, part, this.pad(this.getTimePart(which, part)));
|
|
213
|
+
}
|
|
214
|
+
getTimePart(which, part) {
|
|
215
|
+
if (which === 'start')
|
|
216
|
+
return part === 'h' ? this.startHour : this.startMinute;
|
|
217
|
+
return part === 'h' ? this.endHour : this.endMinute;
|
|
218
|
+
}
|
|
219
|
+
setTimePart(which, part, value) {
|
|
220
|
+
if (which === 'start') {
|
|
221
|
+
if (part === 'h')
|
|
222
|
+
this.startHour = value;
|
|
223
|
+
else
|
|
224
|
+
this.startMinute = value;
|
|
225
|
+
}
|
|
226
|
+
else {
|
|
227
|
+
if (part === 'h')
|
|
228
|
+
this.endHour = value;
|
|
229
|
+
else
|
|
230
|
+
this.endMinute = value;
|
|
231
|
+
}
|
|
149
232
|
}
|
|
150
233
|
handleDayHover(cell) {
|
|
151
234
|
if (!cell.inCurrentMonth)
|
|
@@ -211,6 +294,22 @@ export class SdDateRangePickerCalendar {
|
|
|
211
294
|
}, disabled: !cell.inCurrentMonth || isDisabled, tabindex: !cell.inCurrentMonth ? -1 : undefined, "aria-hidden": !cell.inCurrentMonth ? 'true' : undefined, onClick: () => this.handleDayClick(cell), onMouseEnter: () => this.handleDayHover(cell) }, h("span", { class: "sd-date-range-picker-calendar__day-circle" }, cell.inCurrentMonth ? cell.day : '')));
|
|
212
295
|
}))));
|
|
213
296
|
}
|
|
297
|
+
renderTimeSection(which, date, suffix) {
|
|
298
|
+
const active = date !== '';
|
|
299
|
+
const [year = '', month = '', day = ''] = active ? date.split('-') : [];
|
|
300
|
+
const hour = which === 'start' ? this.startHour : this.endHour;
|
|
301
|
+
const minute = which === 'start' ? this.startMinute : this.endMinute;
|
|
302
|
+
const renderNum = (n, strip) => (h("span", { class: "sd-date-range-picker-calendar__time-num" }, active && n !== '' ? (strip ? String(Number(n)) : n) : '-'));
|
|
303
|
+
return (h("div", { class: {
|
|
304
|
+
'sd-date-range-picker-calendar__time-section': true,
|
|
305
|
+
'sd-date-range-picker-calendar__time-section--active': active,
|
|
306
|
+
} }, h("div", { class: "sd-date-range-picker-calendar__time-date" }, renderNum(year, false), h("span", { class: "sd-date-range-picker-calendar__time-unit" }, "\uB144"), renderNum(month, true), h("span", { class: "sd-date-range-picker-calendar__time-unit" }, "\uC6D4"), renderNum(day, true), h("span", { class: "sd-date-range-picker-calendar__time-unit" }, "\uC77C")), h("div", { class: "sd-date-range-picker-calendar__time-input-group" }, h("input", { type: "text", inputMode: "numeric", maxLength: 2, class: "sd-date-range-picker-calendar__time-input", placeholder: "--", "aria-label": `${suffix} 시`, disabled: !active, value: active ? hour : '', onInput: e => this.handleTimeInput(which, 'h', e), onBlur: () => this.handleTimeBlur(which, 'h') }), h("span", { class: "sd-date-range-picker-calendar__time-colon" }, ":"), h("input", { type: "text", inputMode: "numeric", maxLength: 2, class: "sd-date-range-picker-calendar__time-input", placeholder: "--", "aria-label": `${suffix} 분`, disabled: !active, value: active ? minute : '', onInput: e => this.handleTimeInput(which, 'm', e), onBlur: () => this.handleTimeBlur(which, 'm') })), h("span", { class: "sd-date-range-picker-calendar__time-suffix" }, suffix)));
|
|
307
|
+
}
|
|
308
|
+
renderTimeFooter() {
|
|
309
|
+
const startDate = this.pendingStart || this.displayValue?.[0] || '';
|
|
310
|
+
const endDate = this.displayValue?.[1] || '';
|
|
311
|
+
return (h(Fragment, null, h("span", { class: "sd-date-range-picker-calendar__time-divider", "aria-hidden": "true" }), h("div", { class: "sd-date-range-picker-calendar__time" }, this.renderTimeSection('start', startDate, '부터'), this.renderTimeSection('end', endDate, '까지'))));
|
|
312
|
+
}
|
|
214
313
|
render() {
|
|
215
314
|
const cssVars = {
|
|
216
315
|
'--calendar-bg': CALENDAR_LAYOUT.bg,
|
|
@@ -243,8 +342,31 @@ export class SdDateRangePickerCalendar {
|
|
|
243
342
|
'--range-height': `${RANGE_LAYOUT.height}px`,
|
|
244
343
|
'--range-panel-gap': `${RANGE_LAYOUT.panelGap}px`,
|
|
245
344
|
'--range-divider': RANGE_LAYOUT.divider,
|
|
345
|
+
'--time-bg-default': TIME_LAYOUT.bgDefault,
|
|
346
|
+
'--time-bg-selected': TIME_LAYOUT.bgSelected,
|
|
347
|
+
'--time-date-label': TIME_LAYOUT.dateLabel,
|
|
348
|
+
'--time-date-unit': TIME_LAYOUT.dateUnit,
|
|
349
|
+
'--time-date-gap': `${TIME_LAYOUT.dateGap}px`,
|
|
350
|
+
'--time-radius': `${TIME_LAYOUT.radius}px`,
|
|
351
|
+
'--time-padding-x': `${TIME_LAYOUT.paddingX}px`,
|
|
352
|
+
'--time-padding-y': `${TIME_LAYOUT.paddingY}px`,
|
|
353
|
+
'--time-gap': `${TIME_LAYOUT.gap}px`,
|
|
354
|
+
'--time-section-gap': `${TIME_LAYOUT.sectionGap}px`,
|
|
355
|
+
'--time-unit-gap': `${TIME_LAYOUT.unitGap}px`,
|
|
356
|
+
'--time-font-size': `${TIME_LAYOUT.fontSize}px`,
|
|
357
|
+
'--time-line-height': `${TIME_LAYOUT.lineHeight}px`,
|
|
358
|
+
'--time-font-weight': TIME_LAYOUT.fontWeight,
|
|
359
|
+
'--time-input-height': `${TIME_LAYOUT.input.height}px`,
|
|
360
|
+
'--time-input-radius': `${TIME_LAYOUT.input.radius}px`,
|
|
361
|
+
'--time-input-border': TIME_LAYOUT.input.border,
|
|
362
|
+
'--time-input-border-focus': TIME_LAYOUT.input.borderFocus,
|
|
363
|
+
'--time-input-text': TIME_LAYOUT.input.text,
|
|
364
|
+
'--time-input-placeholder': TIME_LAYOUT.input.placeholder,
|
|
246
365
|
};
|
|
247
|
-
return (h(Fragment, { key: '
|
|
366
|
+
return (h(Fragment, { key: '7d368d23f2c9d2b28c847a7fee5de474edc350f0' }, h("div", { key: '6d97bfa728eb65c46d21f53c3b046b1a0c7d2ff6', class: {
|
|
367
|
+
'sd-date-range-picker-calendar': true,
|
|
368
|
+
'sd-date-range-picker-calendar--with-time': this.useTimePicker,
|
|
369
|
+
}, style: cssVars }, this.renderYearNav(), h("div", { key: '45b4a2488f6e73814d3a6be9710d7c14fd2e8130', class: "sd-date-range-picker-calendar__panels" }, this.renderPanel(this.currentYear, this.currentMonth, true), h("span", { key: 'f1d741f8684ca213d30f559e7f6fc5a4388bbac1', class: "sd-date-range-picker-calendar__divider", "aria-hidden": "true" }), this.renderPanel(this.rightYear, this.rightMonth, false)), this.useTimePicker && this.renderTimeFooter())));
|
|
248
370
|
}
|
|
249
371
|
static get is() { return "sd-date-range-picker-calendar"; }
|
|
250
372
|
static get originalStyleUrls() {
|
|
@@ -312,6 +434,26 @@ export class SdDateRangePickerCalendar {
|
|
|
312
434
|
"setter": false,
|
|
313
435
|
"reflect": false,
|
|
314
436
|
"attribute": "max-range"
|
|
437
|
+
},
|
|
438
|
+
"useTimePicker": {
|
|
439
|
+
"type": "boolean",
|
|
440
|
+
"mutable": false,
|
|
441
|
+
"complexType": {
|
|
442
|
+
"original": "boolean",
|
|
443
|
+
"resolved": "boolean",
|
|
444
|
+
"references": {}
|
|
445
|
+
},
|
|
446
|
+
"required": false,
|
|
447
|
+
"optional": false,
|
|
448
|
+
"docs": {
|
|
449
|
+
"tags": [],
|
|
450
|
+
"text": "\uC2DC\uAC04(\uC2DC:\uBD84) \uC120\uD0DD \uD478\uD130 \uC0AC\uC6A9 \uC5EC\uBD80"
|
|
451
|
+
},
|
|
452
|
+
"getter": false,
|
|
453
|
+
"setter": false,
|
|
454
|
+
"reflect": false,
|
|
455
|
+
"attribute": "use-time-picker",
|
|
456
|
+
"defaultValue": "false"
|
|
315
457
|
}
|
|
316
458
|
};
|
|
317
459
|
}
|
|
@@ -321,7 +463,11 @@ export class SdDateRangePickerCalendar {
|
|
|
321
463
|
"currentMonth": {},
|
|
322
464
|
"pendingStart": {},
|
|
323
465
|
"hoverDate": {},
|
|
324
|
-
"displayValue": {}
|
|
466
|
+
"displayValue": {},
|
|
467
|
+
"startHour": {},
|
|
468
|
+
"startMinute": {},
|
|
469
|
+
"endHour": {},
|
|
470
|
+
"endMinute": {}
|
|
325
471
|
};
|
|
326
472
|
}
|
|
327
473
|
static get events() {
|
|
@@ -8,3 +8,30 @@ export const RANGE_LAYOUT = {
|
|
|
8
8
|
panelGap: datepickerTokens.datepicker.calendar.range.panelGap,
|
|
9
9
|
divider: datepickerTokens.datepicker.calendar.range.divider,
|
|
10
10
|
};
|
|
11
|
+
const timeTokens = datepickerTokens.datepicker.calendar.time;
|
|
12
|
+
/** 시간(시:분) 선택 푸터 레이아웃 토큰 */
|
|
13
|
+
export const TIME_LAYOUT = {
|
|
14
|
+
bgDefault: timeTokens.bg.default,
|
|
15
|
+
bgSelected: timeTokens.bg.selected,
|
|
16
|
+
dateLabel: timeTokens.date.label,
|
|
17
|
+
dateUnit: timeTokens.date.unit,
|
|
18
|
+
dateGap: timeTokens.date.gap,
|
|
19
|
+
radius: timeTokens.radius,
|
|
20
|
+
paddingX: timeTokens.paddingX,
|
|
21
|
+
paddingY: timeTokens.paddingY,
|
|
22
|
+
gap: timeTokens.gap,
|
|
23
|
+
sectionGap: timeTokens.section.gap,
|
|
24
|
+
unitGap: timeTokens.unit.gap,
|
|
25
|
+
fontSize: timeTokens.typography.fontSize,
|
|
26
|
+
lineHeight: timeTokens.typography.lineHeight,
|
|
27
|
+
fontWeight: timeTokens.typography.fontWeight,
|
|
28
|
+
// 시:분 입력 박스는 datepicker 필드(sm) 토큰을 재사용한다
|
|
29
|
+
input: {
|
|
30
|
+
height: DATEPICKER_SIZE_MAP.sm.height,
|
|
31
|
+
radius: DATEPICKER_SIZE_MAP.sm.radius,
|
|
32
|
+
border: DATEPICKER_COLORS.border.default,
|
|
33
|
+
borderFocus: DATEPICKER_COLORS.border.focus,
|
|
34
|
+
text: DATEPICKER_COLORS.text.default,
|
|
35
|
+
placeholder: DATEPICKER_COLORS.text.disabled,
|
|
36
|
+
},
|
|
37
|
+
};
|