@sellmate/design-system 1.17.0 → 1.19.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/component.listItem-Bnh0r_CA.js +53 -0
- package/dist/cjs/design-system.cjs.js +1 -1
- package/dist/cjs/index.cjs.js +11 -0
- package/dist/cjs/loader.cjs.js +1 -1
- package/dist/cjs/sd-button_2.cjs.entry.js +54 -0
- package/dist/cjs/sd-calendar_2.cjs.entry.js +2 -2
- package/dist/cjs/sd-chip-input.cjs.entry.js +263 -18
- package/dist/cjs/sd-circle-progress.cjs.entry.js +2 -2
- package/dist/cjs/sd-confirm-modal_2.cjs.entry.js +3 -3
- package/dist/cjs/sd-date-picker_7.cjs.entry.js +9 -9
- package/dist/cjs/sd-date-range-picker-calendar.cjs.entry.js +1 -1
- package/dist/cjs/sd-divider.cjs.entry.js +2 -2
- package/dist/cjs/sd-dropdown-button.cjs.entry.js +17 -7
- package/dist/cjs/sd-field_3.cjs.entry.js +8 -8
- package/dist/cjs/sd-ghost-button_2.cjs.entry.js +2 -2
- package/dist/cjs/sd-guide.cjs.entry.js +1 -1
- package/dist/cjs/sd-key-value-table.cjs.entry.js +40 -13
- package/dist/cjs/sd-linear-progress.cjs.entry.js +2 -2
- package/dist/cjs/sd-loading-container.cjs.entry.js +2 -2
- package/dist/cjs/sd-modal-container.cjs.entry.js +8 -1
- package/dist/cjs/sd-pagination_4.cjs.entry.js +10 -10
- package/dist/cjs/sd-popup.cjs.entry.js +2 -2
- package/dist/cjs/sd-portal.cjs.entry.js +16 -12
- package/dist/cjs/sd-select-list-item_2.cjs.entry.js +8 -7
- package/dist/cjs/{sd-select.config-DrJ4LNVz.js → sd-select.config-C9Ohe1QA.js} +25 -71
- package/dist/cjs/sd-select_3.cjs.entry.js +12 -11
- package/dist/cjs/sd-switch.cjs.entry.js +1 -1
- package/dist/cjs/sd-table.cjs.entry.js +12 -11
- package/dist/cjs/{sd-table.config-BjJW74Zx.js → sd-table.config-B7MuRLoR.js} +1 -1
- package/dist/cjs/sd-tabs.cjs.entry.js +1 -1
- package/dist/cjs/sd-td.cjs.entry.js +1 -1
- package/dist/cjs/sd-text-link.cjs.entry.js +4 -4
- package/dist/cjs/sd-toast-container.cjs.entry.js +1 -1
- package/dist/cjs/sd-toast.cjs.entry.js +2 -2
- package/dist/cjs/sd-toggle.cjs.entry.js +1 -1
- package/dist/cjs/{system-CdAyz3ej.js → system-MjrAugX-.js} +7 -0
- package/dist/collection/collection-manifest.json +1 -1
- package/dist/collection/components/assets/Bill.js +5 -0
- package/dist/collection/components/assets/Coupon.js +5 -0
- package/dist/collection/components/assets/Delete.js +5 -0
- package/dist/collection/components/assets/Dot.js +5 -0
- package/dist/collection/components/assets/Launcher.js +5 -0
- package/dist/collection/components/assets/Monitor.js +5 -0
- package/dist/collection/components/assets/Shield.js +5 -0
- package/dist/collection/components/assets/Sidebar.js +5 -0
- package/dist/collection/components/assets/Store.js +5 -0
- package/dist/collection/components/assets/index.js +18 -0
- package/dist/collection/components/sd-button/sd-button.js +2 -2
- package/dist/collection/components/sd-chip-input/sd-chip-input.config.js +29 -0
- package/dist/collection/components/sd-chip-input/sd-chip-input.css +50 -0
- package/dist/collection/components/sd-chip-input/sd-chip-input.js +367 -19
- package/dist/collection/components/sd-circle-progress/sd-circle-progress.js +1 -1
- package/dist/collection/components/sd-confirm-modal/sd-confirm-modal.js +2 -2
- 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 +2 -2
- 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-divider/sd-divider.js +1 -1
- package/dist/collection/components/sd-dropdown-button/sd-dropdown-button.config.js +7 -0
- package/dist/collection/components/sd-dropdown-button/sd-dropdown-button.js +10 -7
- package/dist/collection/components/sd-field/sd-field.js +5 -5
- package/dist/collection/components/sd-floating-portal/sd-floating-portal.js +1 -1
- package/dist/collection/components/sd-ghost-button/sd-ghost-button.js +1 -1
- package/dist/collection/components/sd-icon/sd-icon.js +1 -1
- package/dist/collection/components/sd-input/sd-input.js +2 -2
- package/dist/collection/components/sd-key-value-table/sd-key-value-table.config.js +3 -3
- package/dist/collection/components/sd-key-value-table/sd-key-value-table.css +11 -4
- package/dist/collection/components/sd-key-value-table/sd-key-value-table.js +42 -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 +8 -1
- package/dist/collection/components/sd-number-input/sd-number-input.js +4 -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-popup/sd-popup.js +1 -1
- package/dist/collection/components/sd-portal/sd-portal.js +16 -12
- 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 +4 -4
- package/dist/collection/components/sd-select/sd-select-trigger/sd-select-trigger.js +2 -2
- package/dist/collection/components/sd-select/sd-select.config.js +2 -2
- package/dist/collection/components/sd-select/sd-select.js +4 -4
- package/dist/collection/components/sd-switch/sd-switch.js +1 -1
- package/dist/collection/components/sd-table/sd-table.css +4 -1
- package/dist/collection/components/sd-table/sd-table.js +15 -14
- package/dist/collection/components/sd-table/sd-tbody/sd-tbody.js +2 -2
- package/dist/collection/components/sd-table/sd-td/sd-td.js +1 -1
- package/dist/collection/components/sd-table/sd-thead/sd-thead.js +3 -3
- package/dist/collection/components/sd-tabs/sd-tabs.js +1 -1
- package/dist/collection/components/sd-tag/sd-tag.js +3 -3
- package/dist/collection/components/sd-text-link/sd-text-link.js +4 -4
- package/dist/collection/components/sd-textarea/sd-textarea.js +1 -1
- package/dist/collection/components/sd-toast/sd-toast.js +3 -3
- 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 +4 -4
- package/dist/collection/utils/modal.js +11 -0
- package/dist/components/index.js +1 -1
- package/dist/components/{p-DfZ8X4ly.js → p-4HPAPKne.js} +1 -1
- package/dist/components/{p-B57sOZvR.js → p-79DExV92.js} +1 -1
- package/dist/components/{p-RE577yb-.js → p-AI4YlQmL.js} +1 -1
- package/dist/components/{p-B4pLCd0_.js → p-B-4ulKJj.js} +1 -1
- package/dist/components/{p-G_N9xEDL.js → p-B3SKaQId.js} +1 -1
- package/dist/components/p-BD8OoYud.js +1 -0
- package/dist/components/p-BJfiMC9H.js +1 -0
- package/dist/components/{p-DknZgTo9.js → p-BLNc_TL-.js} +1 -1
- package/dist/components/{p-CLEAGFjW.js → p-BMIgVp9-.js} +1 -1
- package/dist/components/{p-vS0t7bWk.js → p-BX5uKVOt.js} +1 -1
- package/dist/components/p-BYTrIk62.js +1 -0
- package/dist/components/{p-_P21dOPl.js → p-B_5uwji5.js} +1 -1
- package/dist/components/{p-DUwrMHYa.js → p-Bzo51vnP.js} +1 -1
- package/dist/components/{p-DtG23tkr.js → p-C0tkFuhj.js} +1 -1
- package/dist/components/{p-YlaidN9T.js → p-C3wv8gVC.js} +1 -1
- package/dist/components/{p-YKESuy-p.js → p-CH6cVc2a.js} +1 -1
- package/dist/components/{p-Bfrg9lvO.js → p-CQWZv8vY.js} +1 -1
- package/dist/components/{p-BsQf9d7Q.js → p-CXRFEcE_.js} +1 -1
- package/dist/components/{p-B-61rIur.js → p-C_r3z9VA.js} +1 -1
- package/dist/components/{p-BvAJ_toQ.js → p-Cl5io5TH.js} +1 -1
- package/dist/components/p-ClKABgST.js +1 -0
- package/dist/components/{p-DGyTYauz.js → p-Cmg10jpN.js} +1 -1
- package/dist/components/{p-DeXO3mpJ.js → p-CtWfOIxb.js} +1 -1
- package/dist/components/{p-CIZpVJBx.js → p-CzCu_NDl.js} +1 -1
- package/dist/components/{p-FGvi8J2D.js → p-DAOeioSV.js} +1 -1
- package/dist/components/{p-iGvyLmbb.js → p-DDR0VcRU.js} +1 -1
- package/dist/components/{p-CnfnK5aj.js → p-DMS9mQsg.js} +1 -1
- package/dist/components/{p-B73U-Zw2.js → p-DTFXzlvq.js} +1 -1
- package/dist/components/{p-CHjF0mwj.js → p-DbLQoVx6.js} +1 -1
- package/dist/components/p-Dr5Q2ZKB.js +1 -0
- package/dist/components/{p-B4UxhQes.js → p-DrSHJYop.js} +1 -1
- package/dist/components/p-DvvGi4J_.js +1 -0
- package/dist/components/{p-BrzBnO1L.js → p-DyVh4pNL.js} +1 -1
- package/dist/components/{p-C_6HUUGg.js → p-Ng3JMPxb.js} +1 -1
- package/dist/components/p-U8VaRj9c.js +1 -0
- package/dist/components/{p-BY1ItC8N.js → p-hzCGj0On.js} +1 -1
- package/dist/components/{p-BMVHvEDw.js → p-qJeUUOyB.js} +1 -1
- package/dist/components/sd-action-modal.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-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-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-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-select-list-item-search.js +1 -1
- package/dist/components/sd-select-list-item.js +1 -1
- package/dist/components/sd-select-listbox.js +1 -1
- package/dist/components/sd-select-trigger.js +1 -1
- package/dist/components/sd-select.js +1 -1
- package/dist/components/sd-switch.js +1 -1
- package/dist/components/sd-table.js +1 -1
- package/dist/components/sd-tabs.js +1 -1
- package/dist/components/sd-tag.js +1 -1
- package/dist/components/sd-tbody.js +1 -1
- package/dist/components/sd-td.js +1 -1
- package/dist/components/sd-text-link.js +1 -1
- package/dist/components/sd-textarea.js +1 -1
- package/dist/components/sd-thead.js +1 -1
- package/dist/components/sd-toast-container.js +1 -1
- package/dist/components/sd-toast.js +1 -1
- package/dist/components/sd-toggle.js +1 -1
- package/dist/components/sd-tooltip.js +1 -1
- package/dist/components/sd-tr.js +1 -1
- package/dist/design-system/design-system.esm.js +1 -1
- package/dist/design-system/index.esm.js +1 -1
- package/dist/design-system/p-12306783.entry.js +1 -0
- package/dist/design-system/{p-b457611c.entry.js → p-1602a5fa.entry.js} +1 -1
- package/dist/design-system/p-1f3c1cca.entry.js +1 -0
- package/dist/design-system/{p-3045ffe1.entry.js → p-22484d65.entry.js} +1 -1
- package/dist/design-system/p-3caf2c5b.entry.js +1 -0
- package/dist/design-system/p-3f7349ae.entry.js +1 -0
- package/dist/design-system/{p-b8ea656d.entry.js → p-43529bba.entry.js} +1 -1
- package/dist/design-system/p-46da89f2.entry.js +1 -0
- package/dist/design-system/p-4b15247b.entry.js +1 -0
- package/dist/design-system/p-4b626171.entry.js +1 -0
- package/dist/design-system/{p-a1f756ab.entry.js → p-4e1d76b8.entry.js} +1 -1
- package/dist/design-system/{p-03bcd782.entry.js → p-683c3b91.entry.js} +1 -1
- package/dist/design-system/{p-99ffe505.entry.js → p-6ce68bf2.entry.js} +1 -1
- package/dist/design-system/{p-a5131a43.entry.js → p-80bde621.entry.js} +1 -1
- package/dist/design-system/{p-22883fe1.entry.js → p-81aa23d1.entry.js} +1 -1
- package/dist/design-system/{p-c78b8822.entry.js → p-827f067b.entry.js} +1 -1
- package/dist/design-system/p-8a025f91.entry.js +1 -0
- package/dist/design-system/{p-3e62a3ea.entry.js → p-8a84a4fe.entry.js} +1 -1
- package/dist/design-system/{p-d2833150.entry.js → p-8f90620b.entry.js} +1 -1
- package/dist/design-system/{p-a0775a0c.entry.js → p-9124a1af.entry.js} +1 -1
- package/dist/design-system/p-9d35b674.entry.js +1 -0
- package/dist/design-system/p-BJfiMC9H.js +1 -0
- package/dist/design-system/p-CAFz8W8_.js +1 -0
- package/dist/design-system/{p-DGyTYauz.js → p-Cmg10jpN.js} +1 -1
- package/dist/design-system/p-U8VaRj9c.js +1 -0
- package/dist/design-system/{p-c6307ba4.entry.js → p-a263af1b.entry.js} +1 -1
- package/dist/design-system/p-aa312937.entry.js +1 -0
- package/dist/design-system/p-b4b20a86.entry.js +1 -0
- package/dist/design-system/{p-7eb31041.entry.js → p-bbbc4b27.entry.js} +1 -1
- package/dist/design-system/{p-14340e46.entry.js → p-cc5f5bff.entry.js} +1 -1
- package/dist/design-system/{p-8140a225.entry.js → p-d5032f31.entry.js} +1 -1
- package/dist/design-system/{p-6d765b25.entry.js → p-e93dda25.entry.js} +1 -1
- package/dist/design-system/{p-c4e1641b.entry.js → p-f5190934.entry.js} +1 -1
- package/dist/esm/component.listItem-U8VaRj9c.js +50 -0
- package/dist/esm/design-system.js +1 -1
- package/dist/esm/index.js +11 -0
- package/dist/esm/loader.js +1 -1
- package/dist/esm/sd-button_2.entry.js +54 -0
- package/dist/esm/sd-calendar_2.entry.js +2 -2
- package/dist/esm/sd-chip-input.entry.js +263 -18
- package/dist/esm/sd-circle-progress.entry.js +2 -2
- package/dist/esm/sd-confirm-modal_2.entry.js +3 -3
- package/dist/esm/sd-date-picker_7.entry.js +9 -9
- package/dist/esm/sd-date-range-picker-calendar.entry.js +1 -1
- package/dist/esm/sd-divider.entry.js +2 -2
- package/dist/esm/sd-dropdown-button.entry.js +17 -7
- package/dist/esm/sd-field_3.entry.js +8 -8
- package/dist/esm/sd-ghost-button_2.entry.js +2 -2
- package/dist/esm/sd-guide.entry.js +1 -1
- package/dist/esm/sd-key-value-table.entry.js +40 -13
- package/dist/esm/sd-linear-progress.entry.js +2 -2
- package/dist/esm/sd-loading-container.entry.js +2 -2
- package/dist/esm/sd-modal-container.entry.js +8 -1
- package/dist/esm/sd-pagination_4.entry.js +10 -10
- package/dist/esm/sd-popup.entry.js +2 -2
- package/dist/esm/sd-portal.entry.js +16 -12
- package/dist/esm/sd-select-list-item_2.entry.js +8 -7
- package/dist/esm/{sd-select.config-DtrsLG0Z.js → sd-select.config-D6ktrl7E.js} +4 -50
- package/dist/esm/sd-select_3.entry.js +12 -11
- package/dist/esm/sd-switch.entry.js +1 -1
- package/dist/esm/{sd-table.config-D9meRqTx.js → sd-table.config-B3wuA5wX.js} +1 -1
- package/dist/esm/sd-table.entry.js +12 -11
- package/dist/esm/sd-tabs.entry.js +1 -1
- package/dist/esm/sd-td.entry.js +1 -1
- package/dist/esm/sd-text-link.entry.js +4 -4
- package/dist/esm/sd-toast-container.entry.js +1 -1
- package/dist/esm/sd-toast.entry.js +2 -2
- package/dist/esm/sd-toggle.entry.js +1 -1
- package/dist/esm/{system-j2khhcHY.js → system-BJfiMC9H.js} +7 -0
- package/dist/types/components/assets/Bill.d.ts +1 -0
- package/dist/types/components/assets/Coupon.d.ts +1 -0
- package/dist/types/components/assets/Delete.d.ts +1 -0
- package/dist/types/components/assets/Dot.d.ts +1 -0
- package/dist/types/components/assets/Launcher.d.ts +1 -0
- package/dist/types/components/assets/Monitor.d.ts +1 -0
- package/dist/types/components/assets/Shield.d.ts +1 -0
- package/dist/types/components/assets/Sidebar.d.ts +1 -0
- package/dist/types/components/assets/Store.d.ts +1 -0
- package/dist/types/components/assets/index.d.ts +9 -0
- package/dist/types/components/sd-chip-input/sd-chip-input.config.d.ts +24 -0
- package/dist/types/components/sd-chip-input/sd-chip-input.d.ts +19 -0
- package/dist/types/components/sd-dropdown-button/sd-dropdown-button.config.d.ts +4 -0
- package/dist/types/components/sd-dropdown-button/sd-dropdown-button.d.ts +1 -0
- package/dist/types/components/sd-key-value-table/sd-key-value-table.config.d.ts +2 -2
- package/dist/types/components/sd-key-value-table/sd-key-value-table.d.ts +10 -3
- package/dist/types/components/sd-modal-container/sd-modal-container.config.d.ts +2 -0
- package/dist/types/components/sd-portal/sd-portal.d.ts +1 -0
- package/dist/types/components/sd-table/sd-table.d.ts +1 -1
- package/dist/types/components.d.ts +62 -20
- package/dist/types/utils/modal.d.ts +6 -0
- package/hydrate/index.js +576 -213
- package/hydrate/index.mjs +576 -213
- package/package.json +3 -3
- package/dist/components/p-6oSCGUOo.js +0 -1
- package/dist/components/p-BWoC-hMr.js +0 -1
- package/dist/components/p-C5wgHjtx.js +0 -1
- package/dist/components/p-Cftyepf_.js +0 -1
- package/dist/components/p-IgBxAXyL.js +0 -1
- package/dist/components/p-j2khhcHY.js +0 -1
- package/dist/design-system/p-0c5192b8.entry.js +0 -1
- package/dist/design-system/p-13b0db59.entry.js +0 -1
- package/dist/design-system/p-1652ae55.entry.js +0 -1
- package/dist/design-system/p-21fa7f85.entry.js +0 -1
- package/dist/design-system/p-2753c6c9.entry.js +0 -1
- package/dist/design-system/p-56a45ef9.entry.js +0 -1
- package/dist/design-system/p-71739336.entry.js +0 -1
- package/dist/design-system/p-DtrsLG0Z.js +0 -1
- package/dist/design-system/p-b22cb811.entry.js +0 -1
- package/dist/design-system/p-b576bc21.entry.js +0 -1
- package/dist/design-system/p-c1f71355.entry.js +0 -1
- package/dist/design-system/p-da90b448.entry.js +0 -1
- package/dist/design-system/p-j2khhcHY.js +0 -1
|
@@ -2,7 +2,7 @@ import { h, } from "@stencil/core";
|
|
|
2
2
|
import { BaseDropdownEvent } from "../../utils/base-dropdown-event";
|
|
3
3
|
import { sanitizeInlineHtml } from "../../utils/html/sanitize-inline-html";
|
|
4
4
|
import { BUTTON_FOCUS_RING_COLOR } from "../sd-button/sd-button.config";
|
|
5
|
-
import { DROPDOWN_BUTTON_CONFIG, DROPDOWN_CHEVRON_ICON_SIZE, DROPDOWN_DISABLED_BACKGROUND, DROPDOWN_DISABLED_BORDER, DROPDOWN_DISABLED_ICON, DROPDOWN_DISABLED_TEXT, getDropdownButtonPreset, isDropdownButtonName, PRESET_BORDER_COLORS, PRESET_TEXT_COLORS, PRESET_ICON_COLORS, PRESET_DIVIDER_COLORS, PRESET_HOVER_BACKGROUNDS, PRESET_MENU_ITEM_ACTIVE_BACKGROUNDS, PRESET_MENU_ITEM_ACTIVE_COLORS, PRESET_MENU_ITEM_COLORS, } from "./sd-dropdown-button.config";
|
|
5
|
+
import { DROPDOWN_BUTTON_CONFIG, DROPDOWN_BUTTON_MIN_WIDTH, DROPDOWN_CHEVRON_ICON_SIZE, DROPDOWN_DISABLED_BACKGROUND, DROPDOWN_DISABLED_BORDER, DROPDOWN_DISABLED_ICON, DROPDOWN_DISABLED_TEXT, getDropdownButtonPreset, isDropdownButtonName, PRESET_BORDER_COLORS, PRESET_TEXT_COLORS, PRESET_ICON_COLORS, PRESET_DIVIDER_COLORS, PRESET_HOVER_BACKGROUNDS, PRESET_MENU_ITEM_ACTIVE_BACKGROUNDS, PRESET_MENU_ITEM_ACTIVE_COLORS, PRESET_MENU_ITEM_COLORS, } from "./sd-dropdown-button.config";
|
|
6
6
|
export class SdDropdownButton extends BaseDropdownEvent {
|
|
7
7
|
constructor() {
|
|
8
8
|
super();
|
|
@@ -18,6 +18,7 @@ export class SdDropdownButton extends BaseDropdownEvent {
|
|
|
18
18
|
isAnimatingOut = false;
|
|
19
19
|
itemIndex = -1;
|
|
20
20
|
triggerRef;
|
|
21
|
+
splitContainerRef;
|
|
21
22
|
menuRef;
|
|
22
23
|
closeAnimationTimer;
|
|
23
24
|
click;
|
|
@@ -196,10 +197,11 @@ export class SdDropdownButton extends BaseDropdownEvent {
|
|
|
196
197
|
return classes.join(' ');
|
|
197
198
|
}
|
|
198
199
|
renderDropdown(preset) {
|
|
199
|
-
|
|
200
|
+
const anchorRef = this.split ? this.splitContainerRef : this.triggerRef;
|
|
201
|
+
if ((!this.isOpen && !this.isAnimatingOut) || !anchorRef)
|
|
200
202
|
return null;
|
|
201
|
-
return (h("sd-portal", { open: this.isOpen, parentRef:
|
|
202
|
-
'--sd-dropdown-button-menu-min-width': `${
|
|
203
|
+
return (h("sd-portal", { open: this.isOpen, parentRef: anchorRef, onSdClose: this.closeDropdown }, h("div", { class: "sd-dropdown-button__menu", role: "menu", ref: el => (this.menuRef = el), style: {
|
|
204
|
+
'--sd-dropdown-button-menu-min-width': `${anchorRef.offsetWidth}px`,
|
|
203
205
|
'--sd-dropdown-button-menu-item-color': PRESET_MENU_ITEM_COLORS[preset],
|
|
204
206
|
'--sd-dropdown-button-menu-item-active-bg': PRESET_MENU_ITEM_ACTIVE_BACKGROUNDS[preset],
|
|
205
207
|
'--sd-dropdown-button-menu-item-active-color': PRESET_MENU_ITEM_ACTIVE_COLORS[preset],
|
|
@@ -213,7 +215,7 @@ export class SdDropdownButton extends BaseDropdownEvent {
|
|
|
213
215
|
this.itemIndex = index;
|
|
214
216
|
}
|
|
215
217
|
} }, item.icon && (h("sd-icon", { class: "sd-dropdown-button__menu-item-icon", name: item.icon, size: 12, color: "var(--sd-dropdown-button-menu-item-current-color)" })), h("span", { class: "sd-dropdown-button__menu-item-label", innerHTML: sanitizeInlineHtml(item.label) })));
|
|
216
|
-
}))))
|
|
218
|
+
}))));
|
|
217
219
|
}
|
|
218
220
|
renderChevron(size) {
|
|
219
221
|
const iconName = this.split ? 'etc' : 'caretDown';
|
|
@@ -225,10 +227,11 @@ export class SdDropdownButton extends BaseDropdownEvent {
|
|
|
225
227
|
render() {
|
|
226
228
|
const { config, preset } = this.resolvedConfig;
|
|
227
229
|
const triggerStyle = this.getTriggerStyle(config, preset);
|
|
230
|
+
const minWidth = DROPDOWN_BUTTON_MIN_WIDTH[config.size];
|
|
228
231
|
if (this.split) {
|
|
229
|
-
return (h("div", { class: "sd-dropdown-button sd-dropdown-button--split" }, h("button", { type: "button", class: this.getTriggerClasses(preset, config.size, this.disabled, this.isOpen, 'label'), disabled: this.disabled, onClick: this.handleButtonClick, style: triggerStyle }, h("span", { class: "sd-dropdown-button__trigger-label" }, this.label)), h("button", { type: "button", class: this.getTriggerClasses(preset, config.size, this.disabled, this.isOpen, 'chevron'), disabled: this.disabled, "aria-haspopup": "menu", "aria-expanded": String(this.isOpen), "aria-label": "dropdown toggle", onClick: this.toggleDropdown, ref: el => (this.triggerRef = el), style: triggerStyle }, this.renderChevron(config.size)), this.renderDropdown(preset)));
|
|
232
|
+
return (h("div", { class: "sd-dropdown-button sd-dropdown-button--split", ref: el => (this.splitContainerRef = el), style: { minWidth: `${minWidth.split}px` } }, h("button", { type: "button", class: this.getTriggerClasses(preset, config.size, this.disabled, this.isOpen, 'label'), disabled: this.disabled, onClick: this.handleButtonClick, style: triggerStyle }, h("span", { class: "sd-dropdown-button__trigger-label" }, this.label)), h("button", { type: "button", class: this.getTriggerClasses(preset, config.size, this.disabled, this.isOpen, 'chevron'), disabled: this.disabled, "aria-haspopup": "menu", "aria-expanded": String(this.isOpen), "aria-label": "dropdown toggle", onClick: this.toggleDropdown, ref: el => (this.triggerRef = el), style: triggerStyle }, this.renderChevron(config.size)), this.renderDropdown(preset)));
|
|
230
233
|
}
|
|
231
|
-
return (h("div", { class: "sd-dropdown-button" }, h("button", { type: "button", class: this.getTriggerClasses(preset, config.size, this.disabled, this.isOpen), disabled: this.disabled, "aria-haspopup": "menu", "aria-expanded": String(this.isOpen), onClick: this.toggleDropdown, ref: el => (this.triggerRef = el), style: triggerStyle }, h("span", { class: "sd-dropdown-button__trigger-label" }, this.label), this.renderChevron(config.size)), this.renderDropdown(preset)));
|
|
234
|
+
return (h("div", { class: "sd-dropdown-button" }, h("button", { type: "button", class: this.getTriggerClasses(preset, config.size, this.disabled, this.isOpen), disabled: this.disabled, "aria-haspopup": "menu", "aria-expanded": String(this.isOpen), onClick: this.toggleDropdown, ref: el => (this.triggerRef = el), style: { ...triggerStyle, minWidth: `${minWidth.default}px` } }, h("span", { class: "sd-dropdown-button__trigger-label" }, this.label), this.renderChevron(config.size)), this.renderDropdown(preset)));
|
|
232
235
|
}
|
|
233
236
|
static get is() { return "sd-dropdown-button"; }
|
|
234
237
|
static get originalStyleUrls() {
|
|
@@ -182,21 +182,21 @@ export class SdField {
|
|
|
182
182
|
: {}),
|
|
183
183
|
}
|
|
184
184
|
: {};
|
|
185
|
-
return (h("div", { key: '
|
|
185
|
+
return (h("div", { key: '9edafceb24a4fcde7cfb966f421bfb73f1b07617', class: {
|
|
186
186
|
'sd-field': true,
|
|
187
187
|
'sd-field--has-label': this.label !== '',
|
|
188
188
|
'sd-field--has-addon': addon !== '',
|
|
189
189
|
[this.fieldStatus]: this.fieldStatus !== '',
|
|
190
|
-
}, style: { ...sizeCssVars, ...labelCssVars, ...addonCssVars, ...messageCssVars } }, h("div", { key: '
|
|
190
|
+
}, style: { ...sizeCssVars, ...labelCssVars, ...addonCssVars, ...messageCssVars } }, h("div", { key: 'e5c4a8aad05afb40f3eccc492135b2b968ffc646', class: "sd-field__wrapper" }, this.renderLabel(this.label), h("div", { key: 'e88d62a979eaab9f6794c851813e5f56c3c5c4ac', class: "sd-field__main", style: this.width !== '' && this.width !== 0
|
|
191
191
|
? {
|
|
192
192
|
width: typeof this.width === 'number' ? `${this.width}px` : this.width,
|
|
193
193
|
flex: 'none',
|
|
194
194
|
}
|
|
195
|
-
: {} }, h("div", { key: '
|
|
195
|
+
: {} }, h("div", { key: 'be69d7e48d90dda0872ffc43c2a1b4044e99ac00', class: {
|
|
196
196
|
'sd-field__control': true,
|
|
197
197
|
'sd-field__control--has-addon': addon !== '',
|
|
198
|
-
} }, addon && (h("div", { key: '
|
|
199
|
-
Number(FIELD_LABEL_SIZE_MAP[(this.size in FIELD_LABEL_SIZE_MAP ? this.size : 'sm')].icon), color: this.icon.color, rotate: this.icon.rotate })), addon)), h("slot", { key: '
|
|
198
|
+
} }, addon && (h("div", { key: '2c631ac0f8b9001cf6344908cf8cbcdf182cc1a7', class: "sd-field__addon" }, this.icon && (h("sd-icon", { key: '34a49839ee200cd59c3ff5b84caf5ded2c50f7b0', name: this.icon.name, size: this.icon.size ??
|
|
199
|
+
Number(FIELD_LABEL_SIZE_MAP[(this.size in FIELD_LABEL_SIZE_MAP ? this.size : 'sm')].icon), color: this.icon.color, rotate: this.icon.rotate })), addon)), h("slot", { key: '693f20c529e5f2ea84d381e59327392edb7b4c15' })), this.errorMsg !== '' || this.errorMessage !== '' ? (h("div", { class: "sd-field__error-message" }, this.errorMsg !== '' ? this.errorMsg : this.errorMessage)) : (this.hint !== '' && h("div", { class: "sd-field__hint" }, this.hint))))));
|
|
200
200
|
}
|
|
201
201
|
renderLabel(label) {
|
|
202
202
|
if (label == null || label === '')
|
|
@@ -152,7 +152,7 @@ export class SdFloatingPopover {
|
|
|
152
152
|
}
|
|
153
153
|
}
|
|
154
154
|
render() {
|
|
155
|
-
return h("slot", { key: '
|
|
155
|
+
return h("slot", { key: 'f20806555ad198c33a62ec938ea7b77200fa1585' });
|
|
156
156
|
}
|
|
157
157
|
static get is() { return "sd-floating-portal"; }
|
|
158
158
|
static get originalStyleUrls() {
|
|
@@ -76,7 +76,7 @@ export class SdGhostButton {
|
|
|
76
76
|
"mutable": false,
|
|
77
77
|
"complexType": {
|
|
78
78
|
"original": "IconName",
|
|
79
|
-
"resolved": "\"add\" | \"alert\" | \"alignKorean\" | \"archive\" | \"arrowDown\" | \"arrowLeft\" | \"arrowRight\" | \"arrowUp\" | \"attachFile\" | \"barcode\" | \"bell\" | \"board\" | \"box\" | \"camera\" | \"cancelFill\" | \"cancelOutline\" | \"caretDown\" | \"caretLeft\" | \"caretRight\" | \"caretUp\" | \"check\" | \"checkFill\" | \"checkOutline\" | \"checkboxCheck\" | \"checkboxIndeterminate\" | \"chevronDown\" | \"chevronLeft\" | \"chevronLeftEnd\" | \"chevronRight\" | \"chevronRightEnd\" | \"chevronUp\" | \"clockFill\" | \"clockOutline\" | \"close\" | \"copy\" | \"dashboard\" | \"date\" | \"download\" | \"drag\" | \"edit\" | \"etc\" | \"event\" | \"global\" | \"helpFill\" | \"helpOutline\" | \"history\" | \"imageFill\" | \"imageOutline\" | \"inline\" | \"line\" | \"location\" | \"logout\" | \"minus\" | \"new\" | \"notificationFill\" | \"notificationOutline\" | \"notion\" | \"outline\" | \"pageEdit\" | \"pageMove\" | \"pdf\" | \"print\" | \"remove\" | \"reset\" | \"robot\" | \"row\" | \"save\" | \"search\" | \"setting\" | \"star\" | \"synchronize\" | \"updown\" | \"user\" | \"visibilityOff\" | \"visibilityOn\" | \"warehouseFill\" | \"warehouseOutline\" | \"warningFill\" | \"warningOutline\" | \"youtube\"",
|
|
79
|
+
"resolved": "\"add\" | \"alert\" | \"alignKorean\" | \"archive\" | \"arrowDown\" | \"arrowLeft\" | \"arrowRight\" | \"arrowUp\" | \"attachFile\" | \"barcode\" | \"bell\" | \"bill\" | \"board\" | \"box\" | \"camera\" | \"cancelFill\" | \"cancelOutline\" | \"caretDown\" | \"caretLeft\" | \"caretRight\" | \"caretUp\" | \"check\" | \"checkFill\" | \"checkOutline\" | \"checkboxCheck\" | \"checkboxIndeterminate\" | \"chevronDown\" | \"chevronLeft\" | \"chevronLeftEnd\" | \"chevronRight\" | \"chevronRightEnd\" | \"chevronUp\" | \"clockFill\" | \"clockOutline\" | \"close\" | \"copy\" | \"coupon\" | \"dashboard\" | \"date\" | \"delete\" | \"dot\" | \"download\" | \"drag\" | \"edit\" | \"etc\" | \"event\" | \"global\" | \"helpFill\" | \"helpOutline\" | \"history\" | \"imageFill\" | \"imageOutline\" | \"inline\" | \"launcher\" | \"line\" | \"location\" | \"logout\" | \"minus\" | \"monitor\" | \"new\" | \"notificationFill\" | \"notificationOutline\" | \"notion\" | \"outline\" | \"pageEdit\" | \"pageMove\" | \"pdf\" | \"print\" | \"remove\" | \"reset\" | \"robot\" | \"row\" | \"save\" | \"search\" | \"setting\" | \"shield\" | \"sidebar\" | \"star\" | \"store\" | \"synchronize\" | \"updown\" | \"user\" | \"visibilityOff\" | \"visibilityOn\" | \"warehouseFill\" | \"warehouseOutline\" | \"warningFill\" | \"warningOutline\" | \"youtube\"",
|
|
80
80
|
"references": {
|
|
81
81
|
"IconName": {
|
|
82
82
|
"location": "global",
|
|
@@ -48,7 +48,7 @@ export class SdIcon {
|
|
|
48
48
|
"mutable": false,
|
|
49
49
|
"complexType": {
|
|
50
50
|
"original": "IconName",
|
|
51
|
-
"resolved": "\"add\" | \"alert\" | \"alignKorean\" | \"archive\" | \"arrowDown\" | \"arrowLeft\" | \"arrowRight\" | \"arrowUp\" | \"attachFile\" | \"barcode\" | \"bell\" | \"board\" | \"box\" | \"camera\" | \"cancelFill\" | \"cancelOutline\" | \"caretDown\" | \"caretLeft\" | \"caretRight\" | \"caretUp\" | \"check\" | \"checkFill\" | \"checkOutline\" | \"checkboxCheck\" | \"checkboxIndeterminate\" | \"chevronDown\" | \"chevronLeft\" | \"chevronLeftEnd\" | \"chevronRight\" | \"chevronRightEnd\" | \"chevronUp\" | \"clockFill\" | \"clockOutline\" | \"close\" | \"copy\" | \"dashboard\" | \"date\" | \"download\" | \"drag\" | \"edit\" | \"etc\" | \"event\" | \"global\" | \"helpFill\" | \"helpOutline\" | \"history\" | \"imageFill\" | \"imageOutline\" | \"inline\" | \"line\" | \"location\" | \"logout\" | \"minus\" | \"new\" | \"notificationFill\" | \"notificationOutline\" | \"notion\" | \"outline\" | \"pageEdit\" | \"pageMove\" | \"pdf\" | \"print\" | \"remove\" | \"reset\" | \"robot\" | \"row\" | \"save\" | \"search\" | \"setting\" | \"star\" | \"synchronize\" | \"updown\" | \"user\" | \"visibilityOff\" | \"visibilityOn\" | \"warehouseFill\" | \"warehouseOutline\" | \"warningFill\" | \"warningOutline\" | \"youtube\"",
|
|
51
|
+
"resolved": "\"add\" | \"alert\" | \"alignKorean\" | \"archive\" | \"arrowDown\" | \"arrowLeft\" | \"arrowRight\" | \"arrowUp\" | \"attachFile\" | \"barcode\" | \"bell\" | \"bill\" | \"board\" | \"box\" | \"camera\" | \"cancelFill\" | \"cancelOutline\" | \"caretDown\" | \"caretLeft\" | \"caretRight\" | \"caretUp\" | \"check\" | \"checkFill\" | \"checkOutline\" | \"checkboxCheck\" | \"checkboxIndeterminate\" | \"chevronDown\" | \"chevronLeft\" | \"chevronLeftEnd\" | \"chevronRight\" | \"chevronRightEnd\" | \"chevronUp\" | \"clockFill\" | \"clockOutline\" | \"close\" | \"copy\" | \"coupon\" | \"dashboard\" | \"date\" | \"delete\" | \"dot\" | \"download\" | \"drag\" | \"edit\" | \"etc\" | \"event\" | \"global\" | \"helpFill\" | \"helpOutline\" | \"history\" | \"imageFill\" | \"imageOutline\" | \"inline\" | \"launcher\" | \"line\" | \"location\" | \"logout\" | \"minus\" | \"monitor\" | \"new\" | \"notificationFill\" | \"notificationOutline\" | \"notion\" | \"outline\" | \"pageEdit\" | \"pageMove\" | \"pdf\" | \"print\" | \"remove\" | \"reset\" | \"robot\" | \"row\" | \"save\" | \"search\" | \"setting\" | \"shield\" | \"sidebar\" | \"star\" | \"store\" | \"synchronize\" | \"updown\" | \"user\" | \"visibilityOff\" | \"visibilityOn\" | \"warehouseFill\" | \"warehouseOutline\" | \"warningFill\" | \"warningOutline\" | \"youtube\"",
|
|
52
52
|
"references": {
|
|
53
53
|
"IconName": {
|
|
54
54
|
"location": "global",
|
|
@@ -112,12 +112,12 @@ export class SdInput {
|
|
|
112
112
|
'--sd-system-size-field-sm-height': `${sizeTokens.height}px`,
|
|
113
113
|
'--sd-system-radius-field-sm': `${sizeTokens.radius}px`,
|
|
114
114
|
};
|
|
115
|
-
return (h("sd-field", { key: '
|
|
115
|
+
return (h("sd-field", { key: '64e7a3ba5e223341336248ba31e621b4416987fd', 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, disabled: this.disabled, readonly: this.readonly, focused: this.focused, hovered: this.hovered, status: this.status, 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("label", { key: 'b66e286c35cc14c1eb02badcaaff24b38ff0a7b3', class: "sd-input__content" }, h("slot", { key: 'dc8b900eb2b38c18b85663bc930e810be77bdbd7', name: "prefix" }), h("input", { key: '36d35464338838aaaeff6f728020241d33a493ec', name: this.name, ref: el => (this.nativeEl = el), class: `sd-input__native ${this.inputClass}`, type: this.type === 'password' && this.passwordVisible ? 'text' : (this.type ?? 'text'), value: this.internalValue || '', placeholder: this.placeholder ?? '입력해 주세요.', disabled: this.disabled, readonly: this.readonly, autofocus: this.autoFocus, autocomplete: this.autocomplete || undefined, maxlength: this.maxlength, minlength: this.minlength, inputmode: this.inputmode, enterkeyhint: this.enterkeyhint, spellcheck: this.spellcheck, onInput: this.handleInput, onFocus: event => this.handleFocus('focus', event), onBlur: event => this.handleFocus('blur', event), style: this.inputStyle }), h("slot", { key: '4f30d4a59794c0692f367d41af4311e191c5427b', name: "suffix" }), this.clearable && this.internalValue && !this.disabled && !this.readonly && (h("sd-ghost-button", { key: '247da41512f20d8e562f345b08bd5bc13486734b', icon: "close", ariaLabel: "clear", size: "xxs", disabled: this.disabled, class: "sd-input__clear-icon", onClick: async () => {
|
|
116
116
|
if (this.disabled || this.readonly)
|
|
117
117
|
return;
|
|
118
118
|
this.internalValue = '';
|
|
119
119
|
await this.formField?.sdValidate();
|
|
120
|
-
} })), this.type === 'password' && (h("sd-ghost-button", { key: '
|
|
120
|
+
} })), this.type === 'password' && (h("sd-ghost-button", { key: '70c596ef0072bf369bd59e2c58d0a6f8c6fd1b11', icon: this.passwordVisible ? 'visibilityOn' : 'visibilityOff', ariaLabel: "visibility", size: "xxs", disabled: this.disabled || this.readonly, class: "sd-input__password-icon", onClick: () => {
|
|
121
121
|
if (this.disabled || this.readonly)
|
|
122
122
|
return;
|
|
123
123
|
this.passwordVisible = !this.passwordVisible;
|
|
@@ -5,8 +5,8 @@ export const KEY_VALUE_TABLE_LAYOUT = {
|
|
|
5
5
|
rowHeight: Number(t.keyValue.height),
|
|
6
6
|
thWidth: 120,
|
|
7
7
|
borderRadius: Number(t.radius),
|
|
8
|
-
|
|
9
|
-
|
|
8
|
+
thPaddingX: Number(t.header.paddingX),
|
|
9
|
+
padding: Number(t.keyValue.body.padding),
|
|
10
10
|
helpIconSize: 16,
|
|
11
11
|
requiredIconSize: 12,
|
|
12
12
|
gap: Number(t.header.gap),
|
|
@@ -27,7 +27,7 @@ export const KEY_VALUE_TABLE_COLORS = {
|
|
|
27
27
|
export const KEY_VALUE_TABLE_TYPOGRAPHY = {
|
|
28
28
|
labelFontFamily: t.header.typography.fontFamily,
|
|
29
29
|
labelFontSize: Number(t.header.typography.fontSize),
|
|
30
|
-
labelFontWeight:
|
|
30
|
+
labelFontWeight: 700,
|
|
31
31
|
labelLineHeight: Number(t.header.typography.lineHeight),
|
|
32
32
|
tdFontFamily: t.body.typography.fontFamily,
|
|
33
33
|
tdFontSize: Number(t.body.typography.fontSize),
|
|
@@ -14,16 +14,19 @@ sd-key-value-table .sd-key-value-table__wrapper .sd-key-value-table {
|
|
|
14
14
|
border: 0;
|
|
15
15
|
border-radius: 0;
|
|
16
16
|
}
|
|
17
|
-
sd-key-value-table .sd-key-value-table__wrapper.sd-key-value-table__wrapper--
|
|
17
|
+
sd-key-value-table .sd-key-value-table__wrapper.sd-key-value-table__wrapper--radius-usetop {
|
|
18
18
|
border-top-left-radius: 0;
|
|
19
19
|
border-top-right-radius: 0;
|
|
20
20
|
}
|
|
21
|
+
sd-key-value-table .sd-key-value-table__wrapper.sd-key-value-table__wrapper--radius-full {
|
|
22
|
+
border-radius: 0;
|
|
23
|
+
}
|
|
21
24
|
sd-key-value-table .sd-key-value-table__search-panel {
|
|
22
25
|
display: flex;
|
|
23
26
|
align-items: center;
|
|
24
27
|
justify-content: center;
|
|
25
28
|
flex: 0 0 auto;
|
|
26
|
-
padding: var(--sd-kvt-padding
|
|
29
|
+
padding: var(--sd-kvt-padding) var(--sd-kvt-search-padding-x);
|
|
27
30
|
background: var(--sd-kvt-search-bg);
|
|
28
31
|
border-left: var(--sd-kvt-border-width) solid var(--sd-kvt-border-color);
|
|
29
32
|
}
|
|
@@ -36,13 +39,15 @@ sd-key-value-table .sd-key-value-table {
|
|
|
36
39
|
border-spacing: 0;
|
|
37
40
|
overflow: hidden;
|
|
38
41
|
}
|
|
39
|
-
sd-key-value-table .sd-key-value-table.sd-key-value-table--
|
|
42
|
+
sd-key-value-table .sd-key-value-table.sd-key-value-table--radius-usetop {
|
|
40
43
|
border-top-left-radius: 0;
|
|
41
44
|
border-top-right-radius: 0;
|
|
42
45
|
}
|
|
46
|
+
sd-key-value-table .sd-key-value-table.sd-key-value-table--radius-full {
|
|
47
|
+
border-radius: 0;
|
|
48
|
+
}
|
|
43
49
|
sd-key-value-table .sd-key-value-table__th, sd-key-value-table .sd-key-value-table__td {
|
|
44
50
|
height: var(--sd-kvt-row-height);
|
|
45
|
-
padding: var(--sd-kvt-padding-y) var(--sd-kvt-padding-x);
|
|
46
51
|
box-sizing: border-box;
|
|
47
52
|
vertical-align: middle;
|
|
48
53
|
text-align: left;
|
|
@@ -54,6 +59,7 @@ sd-key-value-table .sd-key-value-table tbody > tr:first-child > .sd-key-value-ta
|
|
|
54
59
|
border-top: 0;
|
|
55
60
|
}
|
|
56
61
|
sd-key-value-table .sd-key-value-table__th {
|
|
62
|
+
padding: var(--sd-kvt-padding) var(--sd-kvt-th-padding-x);
|
|
57
63
|
width: var(--sd-kvt-th-width);
|
|
58
64
|
background: var(--sd-kvt-th-bg);
|
|
59
65
|
color: var(--sd-kvt-th-color);
|
|
@@ -87,6 +93,7 @@ sd-key-value-table .sd-key-value-table__help {
|
|
|
87
93
|
flex-shrink: 0;
|
|
88
94
|
}
|
|
89
95
|
sd-key-value-table .sd-key-value-table__td {
|
|
96
|
+
padding: var(--sd-kvt-padding);
|
|
90
97
|
background: var(--sd-kvt-td-bg);
|
|
91
98
|
color: var(--sd-kvt-td-color);
|
|
92
99
|
}
|
|
@@ -11,10 +11,12 @@ export class SdKeyValueTable {
|
|
|
11
11
|
*/
|
|
12
12
|
search = false;
|
|
13
13
|
/**
|
|
14
|
-
*
|
|
15
|
-
*
|
|
14
|
+
* 테이블 border-radius 제어.
|
|
15
|
+
* - 'default': 전체 radius 적용
|
|
16
|
+
* - 'usetop': 상단 radius 0 (헤더·탭 등 하단에 붙여 쓸 때)
|
|
17
|
+
* - 'full': 상하단 모두 radius 0 (요소 사이에 끼워 쓸 때)
|
|
16
18
|
*/
|
|
17
|
-
|
|
19
|
+
radius = 'default';
|
|
18
20
|
change;
|
|
19
21
|
searchEvent;
|
|
20
22
|
emit = (name, value) => {
|
|
@@ -101,6 +103,28 @@ export class SdKeyValueTable {
|
|
|
101
103
|
});
|
|
102
104
|
return max;
|
|
103
105
|
}
|
|
106
|
+
/**
|
|
107
|
+
* thStyle의 CSS 속성 값을 해당 CSS 변수로도 반영.
|
|
108
|
+
* label span이 var()로 스타일을 참조하기 때문에, 인라인 스타일만으로는 상속이 되지 않음.
|
|
109
|
+
*/
|
|
110
|
+
buildThStyle(thStyle) {
|
|
111
|
+
const s = { ...thStyle };
|
|
112
|
+
if (thStyle.color != null)
|
|
113
|
+
s['--sd-kvt-th-color'] = thStyle.color;
|
|
114
|
+
if (thStyle.background != null)
|
|
115
|
+
s['--sd-kvt-th-bg'] = thStyle.background;
|
|
116
|
+
if (thStyle.backgroundColor != null)
|
|
117
|
+
s['--sd-kvt-th-bg'] = thStyle.backgroundColor;
|
|
118
|
+
if (thStyle.fontFamily != null)
|
|
119
|
+
s['--sd-kvt-label-font-family'] = thStyle.fontFamily;
|
|
120
|
+
if (thStyle.fontSize != null)
|
|
121
|
+
s['--sd-kvt-label-font-size'] = thStyle.fontSize;
|
|
122
|
+
if (thStyle.fontWeight != null)
|
|
123
|
+
s['--sd-kvt-label-font-weight'] = thStyle.fontWeight;
|
|
124
|
+
if (thStyle.lineHeight != null)
|
|
125
|
+
s['--sd-kvt-label-line-height'] = thStyle.lineHeight;
|
|
126
|
+
return s;
|
|
127
|
+
}
|
|
104
128
|
renderTh(field, r, c) {
|
|
105
129
|
const thRowSpan = field.thRowSpan != null && field.thRowSpan > 1 ? field.thRowSpan : undefined;
|
|
106
130
|
const thColSpan = field.thColSpan != null && field.thColSpan > 1 ? field.thColSpan : undefined;
|
|
@@ -111,7 +135,8 @@ export class SdKeyValueTable {
|
|
|
111
135
|
else if (Array.isArray(field.thClass)) {
|
|
112
136
|
field.thClass.forEach(cls => (classObj[cls] = true));
|
|
113
137
|
}
|
|
114
|
-
|
|
138
|
+
const thStyle = field.thStyle != null ? this.buildThStyle(field.thStyle) : undefined;
|
|
139
|
+
return (h("th", { key: `th-${r}-${c}`, class: classObj, style: thStyle, scope: "row", rowSpan: thRowSpan, colSpan: thColSpan }, h("div", { class: "sd-key-value-table__th-inner" }, h("span", { class: "sd-key-value-table__label" }, field.label, field.required && (h("sd-icon", { class: "sd-key-value-table__required", name: "star", size: KEY_VALUE_TABLE_LAYOUT.requiredIconSize, color: KEY_VALUE_TABLE_COLORS.required, label: "required" }))), field.helpText && this.renderHelpIcon(field.helpText))));
|
|
115
140
|
}
|
|
116
141
|
renderTd(field, r, c) {
|
|
117
142
|
const tdRowSpan = field.tdRowSpan != null && field.tdRowSpan > 1 ? field.tdRowSpan : undefined;
|
|
@@ -139,8 +164,8 @@ export class SdKeyValueTable {
|
|
|
139
164
|
'--sd-kvt-row-height': `${KEY_VALUE_TABLE_LAYOUT.rowHeight}px`,
|
|
140
165
|
'--sd-kvt-th-width': `${KEY_VALUE_TABLE_LAYOUT.thWidth}px`,
|
|
141
166
|
'--sd-kvt-radius': `${KEY_VALUE_TABLE_LAYOUT.borderRadius}px`,
|
|
142
|
-
'--sd-kvt-padding-x': `${KEY_VALUE_TABLE_LAYOUT.
|
|
143
|
-
'--sd-kvt-padding
|
|
167
|
+
'--sd-kvt-th-padding-x': `${KEY_VALUE_TABLE_LAYOUT.thPaddingX}px`,
|
|
168
|
+
'--sd-kvt-padding': `${KEY_VALUE_TABLE_LAYOUT.padding}px`,
|
|
144
169
|
'--sd-kvt-gap': `${KEY_VALUE_TABLE_LAYOUT.gap}px`,
|
|
145
170
|
'--sd-kvt-label-gap': `${KEY_VALUE_TABLE_LAYOUT.labelGap}px`,
|
|
146
171
|
'--sd-kvt-border-width': `${KEY_VALUE_TABLE_LAYOUT.borderWidth}px`,
|
|
@@ -166,7 +191,8 @@ export class SdKeyValueTable {
|
|
|
166
191
|
const maxCols = this.computeMaxCols(autoSkip);
|
|
167
192
|
const tableEl = (h("table", { class: {
|
|
168
193
|
'sd-key-value-table': true,
|
|
169
|
-
'sd-key-value-table--
|
|
194
|
+
'sd-key-value-table--radius-usetop': this.radius === 'usetop',
|
|
195
|
+
'sd-key-value-table--radius-full': this.radius === 'full',
|
|
170
196
|
}, style: cssVars }, h("colgroup", null, Array.from({ length: maxCols }, (_, i) => {
|
|
171
197
|
if (i % 2 !== 0)
|
|
172
198
|
return h("col", { key: `col-${i}` });
|
|
@@ -190,7 +216,8 @@ export class SdKeyValueTable {
|
|
|
190
216
|
return tableEl;
|
|
191
217
|
return (h("div", { class: {
|
|
192
218
|
'sd-key-value-table__wrapper': true,
|
|
193
|
-
'sd-key-value-table__wrapper--
|
|
219
|
+
'sd-key-value-table__wrapper--radius-usetop': this.radius === 'usetop',
|
|
220
|
+
'sd-key-value-table__wrapper--radius-full': this.radius === 'full',
|
|
194
221
|
}, style: cssVars }, tableEl, h("div", { class: "sd-key-value-table__search-panel" }, h("sd-button", { label: "\uAC80\uC0C9", name: "neutral_outline_md", onSdClick: this.handleSearchClick }))));
|
|
195
222
|
}
|
|
196
223
|
static get is() { return "sd-key-value-table"; }
|
|
@@ -251,25 +278,25 @@ export class SdKeyValueTable {
|
|
|
251
278
|
"attribute": "search",
|
|
252
279
|
"defaultValue": "false"
|
|
253
280
|
},
|
|
254
|
-
"
|
|
255
|
-
"type": "
|
|
281
|
+
"radius": {
|
|
282
|
+
"type": "string",
|
|
256
283
|
"mutable": false,
|
|
257
284
|
"complexType": {
|
|
258
|
-
"original": "
|
|
259
|
-
"resolved": "
|
|
285
|
+
"original": "'default' | 'usetop' | 'full'",
|
|
286
|
+
"resolved": "\"default\" | \"full\" | \"usetop\"",
|
|
260
287
|
"references": {}
|
|
261
288
|
},
|
|
262
289
|
"required": false,
|
|
263
290
|
"optional": false,
|
|
264
291
|
"docs": {
|
|
265
292
|
"tags": [],
|
|
266
|
-
"text": "
|
|
293
|
+
"text": "\uD14C\uC774\uBE14 border-radius \uC81C\uC5B4.\n- 'default': \uC804\uCCB4 radius \uC801\uC6A9\n- 'usetop': \uC0C1\uB2E8 radius 0 (\uD5E4\uB354\u00B7\uD0ED \uB4F1 \uD558\uB2E8\uC5D0 \uBD99\uC5EC \uC4F8 \uB54C)\n- 'full': \uC0C1\uD558\uB2E8 \uBAA8\uB450 radius 0 (\uC694\uC18C \uC0AC\uC774\uC5D0 \uB07C\uC6CC \uC4F8 \uB54C)"
|
|
267
294
|
},
|
|
268
295
|
"getter": false,
|
|
269
296
|
"setter": false,
|
|
270
297
|
"reflect": false,
|
|
271
|
-
"attribute": "
|
|
272
|
-
"defaultValue": "
|
|
298
|
+
"attribute": "radius",
|
|
299
|
+
"defaultValue": "'default'"
|
|
273
300
|
}
|
|
274
301
|
};
|
|
275
302
|
}
|
|
@@ -28,7 +28,7 @@ export class SdLinearProgress {
|
|
|
28
28
|
clipPath: `inset(0 ${100 - this.clampedValue}% 0 0)`,
|
|
29
29
|
};
|
|
30
30
|
const valueText = `${Math.round(this.clampedValue)}%`;
|
|
31
|
-
return (h(Host, { key: '
|
|
31
|
+
return (h(Host, { key: '26b1e15732e289a9a37a6d3dbea24aec1ab60ffd', style: hostStyle }, h("div", { key: '5162d60390656286b56f6a96fd4b3932f399412a', class: 'sd-linear-progress__track' }, h("div", { key: 'a46b815f935b243e4b7f8988af65167e3f87b554', class: 'sd-linear-progress__fill', style: fillStyle }), !this.indeterminate && (h("span", { key: 'bc91914addd5addb84c7684a1f862033950905fc', class: 'sd-linear-progress__value sd-linear-progress__value--on-track' }, valueText)), !this.indeterminate && (h("span", { key: 'c62cdc59464823286ff42fc7e97a7a255a2beeb4', class: 'sd-linear-progress__value sd-linear-progress__value--on-fill', style: valueOnFillStyle }, valueText))), this.label && h("span", { key: '4c7c280885c8411329f99c3fe04f5ede8b1f0708', class: 'sd-linear-progress__label' }, this.label)));
|
|
32
32
|
}
|
|
33
33
|
static get is() { return "sd-linear-progress"; }
|
|
34
34
|
static get originalStyleUrls() {
|
|
@@ -10,10 +10,10 @@ export class SdLoadingContainer {
|
|
|
10
10
|
this.visible = false;
|
|
11
11
|
}
|
|
12
12
|
render() {
|
|
13
|
-
return (h("div", { key: '
|
|
13
|
+
return (h("div", { key: '2ad17acec76cfb7ceba0629f055600a7240a67e8', class: {
|
|
14
14
|
'sd-loading-container': true,
|
|
15
15
|
'sd-loading-container--visible': this.visible,
|
|
16
|
-
}, "aria-hidden": this.visible ? 'false' : 'true' }, h("div", { key: '
|
|
16
|
+
}, "aria-hidden": this.visible ? 'false' : 'true' }, h("div", { key: '1e842f21f2990b22820974147b22d859be010683', class: "sd-loading-container__backdrop" }), h("div", { key: '4a48bafd9882a22c210dd1b2ca45efc43cc0c8da', class: "sd-loading-container__content" }, h("sd-circle-progress", { key: '8eb7377230f0e8c9c482dfc9ca1313f323895d14', indeterminate: true, type: "inverse" }), this.message && (h("p", { key: 'af2fc52b0740ee1d2cea55b688e5b4b77e80c7e3', class: "sd-loading-container__message" }, this.message)))));
|
|
17
17
|
}
|
|
18
18
|
static get is() { return "sd-loading-container"; }
|
|
19
19
|
static get originalStyleUrls() {
|
|
@@ -46,7 +46,7 @@ export class SdLoadingModal {
|
|
|
46
46
|
'--sd-loading-modal-width': this.toCssSize(this.width) ?? `${LOADING_MODAL_LAYOUT.minWidth}px`,
|
|
47
47
|
'--sd-loading-modal-height': this.toCssSize(this.height) ?? `${LOADING_MODAL_LAYOUT.minHeight}px`,
|
|
48
48
|
};
|
|
49
|
-
return (h(Host, { key: '
|
|
49
|
+
return (h(Host, { key: 'f40dcf4fa7e2ee7b4023be11be2b9361ec167610', style: hostStyle }, h("div", { key: '02bab8da4e09156340e8e9badef25755b57193d5', class: "sd-loading-modal" }, h("div", { key: '776833f7f85a5587dda59fe75e36ebb4b9109c3e', class: "sd-loading-modal__content" }, this.resolvedState === 'loading' ? (this.progress !== undefined ? (h("sd-circle-progress", { value: this.progress })) : (h("sd-circle-progress", { indeterminate: true }))) : (h("sd-icon", { class: "sd-loading-modal__icon", name: "warningOutline", size: LOADING_MODAL_LAYOUT.contentSize, color: LOADING_MODAL_COLORS.errorIcon }))), h("div", { key: '4bb9e434a4a2d6be6dbbe2ed4e89563bf7278c65', class: "sd-loading-modal__message-wrapper" }, Array.isArray(this.resolvedMessage) ? (this.resolvedMessage.map(message => (h("p", { class: "sd-loading-modal__message" }, message)))) : (h("p", { class: "sd-loading-modal__message" }, this.resolvedMessage))), this.useButton && (h("div", { key: '5da761513fdc38e5e646f72f75072e25d5313384', class: "sd-loading-modal__button" }, h("sd-button", { key: '2bf9beb84ab4a6c1e6793db453e04b947c432d13', name: LOADING_MODAL_BUTTON_PRESET, label: this.resolvedButtonLabel, onSdClick: this.handleClick }))))));
|
|
50
50
|
}
|
|
51
51
|
static get is() { return "sd-loading-modal"; }
|
|
52
52
|
static get originalStyleUrls() {
|
|
@@ -109,7 +109,14 @@ export class SdModalContainer {
|
|
|
109
109
|
});
|
|
110
110
|
}
|
|
111
111
|
attachModalEventListeners(id, modalEl) {
|
|
112
|
-
modalEl.addEventListener('sdOk', () =>
|
|
112
|
+
modalEl.addEventListener('sdOk', () => {
|
|
113
|
+
const entry = this.entries.find(e => e.id === id);
|
|
114
|
+
if (entry?.modalRef._hasSubmit?.()) {
|
|
115
|
+
entry.modalRef._triggerSubmit?.();
|
|
116
|
+
return;
|
|
117
|
+
}
|
|
118
|
+
this.requestDismiss(id, 'confirm');
|
|
119
|
+
});
|
|
113
120
|
modalEl.addEventListener('sdCancel', () => this.requestDismiss(id, 'cancel'));
|
|
114
121
|
modalEl.addEventListener('sdClose', () => this.requestDismiss(id, 'close'));
|
|
115
122
|
}
|
|
@@ -275,15 +275,15 @@ export class SdNumberInput {
|
|
|
275
275
|
'--sd-textinput-input-hint-typography-line-height': `${NUMBER_INPUT_HINT.typography.lineHeight}px`,
|
|
276
276
|
'--sd-textinput-input-contents-gap': `${NUMBER_INPUT_CONTENTS_GAP}px`,
|
|
277
277
|
};
|
|
278
|
-
return (h("sd-field", { key: '
|
|
278
|
+
return (h("sd-field", { key: 'ad212dcbaf8e19cac070e6bdfa292ca614480fbc', 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, disabled: this.disabled, readonly: this.readonly, focused: this.focused, hovered: this.hovered, status: this.status, 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: 'b9c403df166e2f05f815ebf3851b6517b8afbd2a', class: {
|
|
279
279
|
'sd-number-input__content': true,
|
|
280
280
|
'sd-number-input__content--no-stepper': !this.useButton,
|
|
281
|
-
} }, this.useButton && (h("button", { key: '
|
|
281
|
+
} }, this.useButton && (h("button", { key: '206f45b19bf8dd56b65ff55fb65d760e36d80ba7', type: "button", class: "sd-number-input__stepper sd-number-input__stepper--decrement", disabled: this.isDecrementDisabled(), onClick: this.handleDecrement, tabindex: -1 }, h("sd-icon", { key: 'd39cadc9a83cf7a0170144b8734a90f71d7aa9d1', name: "minus", size: iconSize, color: this.isDecrementDisabled()
|
|
282
282
|
? NUMBER_INPUT_STEPPER.icon.disabled
|
|
283
|
-
: NUMBER_INPUT_STEPPER.icon.default }))), this.inputPrefix && h("span", { key: '
|
|
283
|
+
: NUMBER_INPUT_STEPPER.icon.default }))), this.inputPrefix && h("span", { key: '0c97309540467d56ee3415001df7a027ba581a3d', class: "sd-number-input__prefix" }, this.inputPrefix), h("input", { key: '9462f0c7ac028c038894ad184c7cf052e366e48c', name: this.name, ref: el => (this.nativeEl = el), class: `sd-number-input__native ${this.inputClass}`, type: "text", inputMode: "numeric", value: this.displayValue, placeholder: this.placeholder ?? '입력해 주세요.', disabled: this.disabled, readonly: this.readonly, autofocus: this.autoFocus, onInput: this.handleInput, onKeyDown: this.handleKeyDown, onFocus: this.handleFocus, onBlur: this.handleBlur, style: {
|
|
284
284
|
textAlign: this.useButton ? 'center' : 'right',
|
|
285
285
|
...this.inputStyle,
|
|
286
|
-
} }), this.inputSuffix && h("span", { key: '
|
|
286
|
+
} }), this.inputSuffix && h("span", { key: 'fdd4f4e680fe5de55cb68c848615ec6b00f00430', class: "sd-number-input__suffix" }, this.inputSuffix), this.useButton && (h("button", { key: '8cdfcc46a010fb0f503b48c34290fd096403524a', type: "button", class: "sd-number-input__stepper sd-number-input__stepper--increment", disabled: this.isIncrementDisabled(), onClick: this.handleIncrement, tabindex: -1 }, h("sd-icon", { key: 'ec8826370cd9d8c6054ca6ab216de6baa62d90db', name: "add", size: iconSize, color: this.isIncrementDisabled()
|
|
287
287
|
? NUMBER_INPUT_STEPPER.icon.disabled
|
|
288
288
|
: NUMBER_INPUT_STEPPER.icon.default }))))));
|
|
289
289
|
}
|
|
@@ -83,13 +83,13 @@ export class SdPagination {
|
|
|
83
83
|
'--sd-pagination-bg-selected': PAGINATION_COLORS.bgSelected,
|
|
84
84
|
'--sd-pagination-item-width': `${this.buttonWidth}px`,
|
|
85
85
|
};
|
|
86
|
-
return (h("div", { key: '
|
|
86
|
+
return (h("div", { key: 'c1925f0f312cf5c18f08f158efb599e5b6f0d503', class: {
|
|
87
87
|
'sd-pagination': true,
|
|
88
88
|
'sd-pagination--simple': this.simple,
|
|
89
|
-
}, style: cssVars }, h("div", { key: '
|
|
89
|
+
}, style: cssVars }, h("div", { key: '1f22be76697820bf455cea5476efa84a09d03c44', class: "sd-pagination__group sd-pagination__group--prev" }, this.renderPrevButtons()), this.simple ? (h("div", { class: "sd-pagination__info" }, h("span", { class: "sd-pagination__current" }, this.currentPage), h("span", { class: "sd-pagination__divider" }, "/"), h("span", { class: "sd-pagination__last" }, this.lastPage))) : (h("div", { class: "sd-pagination__numbers" }, this.pageNumbers.map(n => (h("button", { type: "button", "aria-current": this.currentPage === n ? 'page' : undefined, class: {
|
|
90
90
|
'sd-pagination__item': true,
|
|
91
91
|
'sd-pagination__item--selected': this.currentPage === n,
|
|
92
|
-
}, onClick: () => this.handlePageChange(n) }, n))))), h("div", { key: '
|
|
92
|
+
}, onClick: () => this.handlePageChange(n) }, n))))), h("div", { key: 'b85b00b637152d5071db0652b6682541fbfd6ab5', class: "sd-pagination__group sd-pagination__group--next" }, this.renderNextButtons())));
|
|
93
93
|
}
|
|
94
94
|
static get is() { return "sd-pagination"; }
|
|
95
95
|
static get originalStyleUrls() {
|
|
@@ -143,7 +143,7 @@ export class SdPopover {
|
|
|
143
143
|
"mutable": false,
|
|
144
144
|
"complexType": {
|
|
145
145
|
"original": "IconName",
|
|
146
|
-
"resolved": "\"add\" | \"alert\" | \"alignKorean\" | \"archive\" | \"arrowDown\" | \"arrowLeft\" | \"arrowRight\" | \"arrowUp\" | \"attachFile\" | \"barcode\" | \"bell\" | \"board\" | \"box\" | \"camera\" | \"cancelFill\" | \"cancelOutline\" | \"caretDown\" | \"caretLeft\" | \"caretRight\" | \"caretUp\" | \"check\" | \"checkFill\" | \"checkOutline\" | \"checkboxCheck\" | \"checkboxIndeterminate\" | \"chevronDown\" | \"chevronLeft\" | \"chevronLeftEnd\" | \"chevronRight\" | \"chevronRightEnd\" | \"chevronUp\" | \"clockFill\" | \"clockOutline\" | \"close\" | \"copy\" | \"dashboard\" | \"date\" | \"download\" | \"drag\" | \"edit\" | \"etc\" | \"event\" | \"global\" | \"helpFill\" | \"helpOutline\" | \"history\" | \"imageFill\" | \"imageOutline\" | \"inline\" | \"line\" | \"location\" | \"logout\" | \"minus\" | \"new\" | \"notificationFill\" | \"notificationOutline\" | \"notion\" | \"outline\" | \"pageEdit\" | \"pageMove\" | \"pdf\" | \"print\" | \"remove\" | \"reset\" | \"robot\" | \"row\" | \"save\" | \"search\" | \"setting\" | \"star\" | \"synchronize\" | \"updown\" | \"user\" | \"visibilityOff\" | \"visibilityOn\" | \"warehouseFill\" | \"warehouseOutline\" | \"warningFill\" | \"warningOutline\" | \"youtube\"",
|
|
146
|
+
"resolved": "\"add\" | \"alert\" | \"alignKorean\" | \"archive\" | \"arrowDown\" | \"arrowLeft\" | \"arrowRight\" | \"arrowUp\" | \"attachFile\" | \"barcode\" | \"bell\" | \"bill\" | \"board\" | \"box\" | \"camera\" | \"cancelFill\" | \"cancelOutline\" | \"caretDown\" | \"caretLeft\" | \"caretRight\" | \"caretUp\" | \"check\" | \"checkFill\" | \"checkOutline\" | \"checkboxCheck\" | \"checkboxIndeterminate\" | \"chevronDown\" | \"chevronLeft\" | \"chevronLeftEnd\" | \"chevronRight\" | \"chevronRightEnd\" | \"chevronUp\" | \"clockFill\" | \"clockOutline\" | \"close\" | \"copy\" | \"coupon\" | \"dashboard\" | \"date\" | \"delete\" | \"dot\" | \"download\" | \"drag\" | \"edit\" | \"etc\" | \"event\" | \"global\" | \"helpFill\" | \"helpOutline\" | \"history\" | \"imageFill\" | \"imageOutline\" | \"inline\" | \"launcher\" | \"line\" | \"location\" | \"logout\" | \"minus\" | \"monitor\" | \"new\" | \"notificationFill\" | \"notificationOutline\" | \"notion\" | \"outline\" | \"pageEdit\" | \"pageMove\" | \"pdf\" | \"print\" | \"remove\" | \"reset\" | \"robot\" | \"row\" | \"save\" | \"search\" | \"setting\" | \"shield\" | \"sidebar\" | \"star\" | \"store\" | \"synchronize\" | \"updown\" | \"user\" | \"visibilityOff\" | \"visibilityOn\" | \"warehouseFill\" | \"warehouseOutline\" | \"warningFill\" | \"warningOutline\" | \"youtube\"",
|
|
147
147
|
"references": {
|
|
148
148
|
"IconName": {
|
|
149
149
|
"location": "global",
|
|
@@ -235,7 +235,7 @@ export class SdPopover {
|
|
|
235
235
|
"mutable": false,
|
|
236
236
|
"complexType": {
|
|
237
237
|
"original": "IconName",
|
|
238
|
-
"resolved": "\"add\" | \"alert\" | \"alignKorean\" | \"archive\" | \"arrowDown\" | \"arrowLeft\" | \"arrowRight\" | \"arrowUp\" | \"attachFile\" | \"barcode\" | \"bell\" | \"board\" | \"box\" | \"camera\" | \"cancelFill\" | \"cancelOutline\" | \"caretDown\" | \"caretLeft\" | \"caretRight\" | \"caretUp\" | \"check\" | \"checkFill\" | \"checkOutline\" | \"checkboxCheck\" | \"checkboxIndeterminate\" | \"chevronDown\" | \"chevronLeft\" | \"chevronLeftEnd\" | \"chevronRight\" | \"chevronRightEnd\" | \"chevronUp\" | \"clockFill\" | \"clockOutline\" | \"close\" | \"copy\" | \"dashboard\" | \"date\" | \"download\" | \"drag\" | \"edit\" | \"etc\" | \"event\" | \"global\" | \"helpFill\" | \"helpOutline\" | \"history\" | \"imageFill\" | \"imageOutline\" | \"inline\" | \"line\" | \"location\" | \"logout\" | \"minus\" | \"new\" | \"notificationFill\" | \"notificationOutline\" | \"notion\" | \"outline\" | \"pageEdit\" | \"pageMove\" | \"pdf\" | \"print\" | \"remove\" | \"reset\" | \"robot\" | \"row\" | \"save\" | \"search\" | \"setting\" | \"star\" | \"synchronize\" | \"updown\" | \"user\" | \"visibilityOff\" | \"visibilityOn\" | \"warehouseFill\" | \"warehouseOutline\" | \"warningFill\" | \"warningOutline\" | \"youtube\" | undefined",
|
|
238
|
+
"resolved": "\"add\" | \"alert\" | \"alignKorean\" | \"archive\" | \"arrowDown\" | \"arrowLeft\" | \"arrowRight\" | \"arrowUp\" | \"attachFile\" | \"barcode\" | \"bell\" | \"bill\" | \"board\" | \"box\" | \"camera\" | \"cancelFill\" | \"cancelOutline\" | \"caretDown\" | \"caretLeft\" | \"caretRight\" | \"caretUp\" | \"check\" | \"checkFill\" | \"checkOutline\" | \"checkboxCheck\" | \"checkboxIndeterminate\" | \"chevronDown\" | \"chevronLeft\" | \"chevronLeftEnd\" | \"chevronRight\" | \"chevronRightEnd\" | \"chevronUp\" | \"clockFill\" | \"clockOutline\" | \"close\" | \"copy\" | \"coupon\" | \"dashboard\" | \"date\" | \"delete\" | \"dot\" | \"download\" | \"drag\" | \"edit\" | \"etc\" | \"event\" | \"global\" | \"helpFill\" | \"helpOutline\" | \"history\" | \"imageFill\" | \"imageOutline\" | \"inline\" | \"launcher\" | \"line\" | \"location\" | \"logout\" | \"minus\" | \"monitor\" | \"new\" | \"notificationFill\" | \"notificationOutline\" | \"notion\" | \"outline\" | \"pageEdit\" | \"pageMove\" | \"pdf\" | \"print\" | \"remove\" | \"reset\" | \"robot\" | \"row\" | \"save\" | \"search\" | \"setting\" | \"shield\" | \"sidebar\" | \"star\" | \"store\" | \"synchronize\" | \"updown\" | \"user\" | \"visibilityOff\" | \"visibilityOn\" | \"warehouseFill\" | \"warehouseOutline\" | \"warningFill\" | \"warningOutline\" | \"youtube\" | undefined",
|
|
239
239
|
"references": {
|
|
240
240
|
"IconName": {
|
|
241
241
|
"location": "global",
|
|
@@ -36,7 +36,7 @@ export class SdPopup {
|
|
|
36
36
|
...DEFAULT_SUBMIT_BUTTON_PROPS,
|
|
37
37
|
...this.submitButtonProps,
|
|
38
38
|
};
|
|
39
|
-
return (h("div", { key: '
|
|
39
|
+
return (h("div", { key: 'a978706454e3964818cc96b3a583880b952c2533', class: `sd-popup sd-popup--${this.type}`, style: cssVars }, h("header", { key: '1164fc29d4040d51b74ebc45fedc4fd19038e900', class: "sd-popup__header" }, h("h2", { key: '6ac1ea61e52f952f3bea4c4149222b4ff43b61db', class: "sd-popup__title" }, this.popupTitle)), h("div", { key: 'fe8cebfc5ea513ae07e3a2987a8c7d9b36ed26e9', class: "sd-popup__body" }, h("slot", { key: 'f7ce06ae60cc8af6dbae2b24db4fd6b00e13d365' })), this.useFooter && (h("footer", { key: '84251ae1e48522fcf47d0081c9c0689e5fb236a6', class: "sd-popup__footer" }, h("div", { key: 'c7d4a8546bd185c812a98569cc3b2a818cbb2963', class: "sd-popup__footer-slot sd-popup__footer-slot--left" }, h("slot", { key: '474e09481472b96ff4eacc66502aa06987b463b8', name: "footer-left" })), h("sd-button", { key: '2b23204ffad997f022dd06b772433ceb69950d04', ...submitButtonProps, class: "sd-popup__submit", onSdClick: () => this.submit.emit() })))));
|
|
40
40
|
}
|
|
41
41
|
static get is() { return "sd-popup"; }
|
|
42
42
|
static get originalStyleUrls() {
|
|
@@ -48,7 +48,7 @@ export class SdPortal {
|
|
|
48
48
|
createWrapper() {
|
|
49
49
|
this.wrapper = document.createElement('div');
|
|
50
50
|
Object.assign(this.wrapper.style, {
|
|
51
|
-
position: '
|
|
51
|
+
position: 'fixed',
|
|
52
52
|
top: '0',
|
|
53
53
|
left: '0',
|
|
54
54
|
zIndex: (this.zIndex ?? 998).toString(),
|
|
@@ -122,13 +122,13 @@ export class SdPortal {
|
|
|
122
122
|
const wrapperRect = this.wrapper.getBoundingClientRect();
|
|
123
123
|
const availableBelow = viewport.height - parentRect.bottom - offset[1] - viewportPadding;
|
|
124
124
|
const availableAbove = parentRect.top - offset[1] - viewportPadding;
|
|
125
|
-
let top = parentRect.bottom +
|
|
126
|
-
let left = parentRect.left +
|
|
125
|
+
let top = parentRect.bottom + offset[1];
|
|
126
|
+
let left = parentRect.left + offset[0];
|
|
127
127
|
if (availableBelow < wrapperRect.height && availableAbove > availableBelow) {
|
|
128
|
-
top = parentRect.top
|
|
128
|
+
top = parentRect.top - wrapperRect.height - offset[1];
|
|
129
129
|
}
|
|
130
|
-
const minTop =
|
|
131
|
-
const maxTop =
|
|
130
|
+
const minTop = viewportPadding;
|
|
131
|
+
const maxTop = viewport.height - viewportPadding - wrapperRect.height;
|
|
132
132
|
if (maxTop < minTop) {
|
|
133
133
|
top = minTop;
|
|
134
134
|
}
|
|
@@ -136,10 +136,10 @@ export class SdPortal {
|
|
|
136
136
|
top = Math.min(Math.max(top, minTop), maxTop);
|
|
137
137
|
}
|
|
138
138
|
if (parentRect.left + wrapperRect.width + offset[0] > viewport.width - viewportPadding) {
|
|
139
|
-
left = parentRect.right
|
|
139
|
+
left = parentRect.right - wrapperRect.width - offset[0];
|
|
140
140
|
}
|
|
141
|
-
const minLeft =
|
|
142
|
-
const maxLeft =
|
|
141
|
+
const minLeft = viewportPadding;
|
|
142
|
+
const maxLeft = viewport.width - viewportPadding - wrapperRect.width;
|
|
143
143
|
if (maxLeft < minLeft) {
|
|
144
144
|
left = minLeft;
|
|
145
145
|
}
|
|
@@ -206,21 +206,25 @@ export class SdPortal {
|
|
|
206
206
|
}
|
|
207
207
|
return scrollParents;
|
|
208
208
|
}
|
|
209
|
+
isInsideTarget(target) {
|
|
210
|
+
return !!((this.wrapper?.contains(target)) ||
|
|
211
|
+
(this.parentRef?.contains(target)));
|
|
212
|
+
}
|
|
209
213
|
// 외부 클릭 감지
|
|
210
214
|
handleMouseDown(e) {
|
|
211
|
-
this.isInsideClick =
|
|
215
|
+
this.isInsideClick = this.isInsideTarget(e.target);
|
|
212
216
|
}
|
|
213
217
|
handleWindowClick(e) {
|
|
214
218
|
if (this.isInsideClick) {
|
|
215
219
|
this.isInsideClick = false;
|
|
216
220
|
return;
|
|
217
221
|
}
|
|
218
|
-
if (this.
|
|
222
|
+
if (this.isInsideTarget(e.target))
|
|
219
223
|
return;
|
|
220
224
|
this.close.emit();
|
|
221
225
|
}
|
|
222
226
|
render() {
|
|
223
|
-
return h("slot", { key: '
|
|
227
|
+
return h("slot", { key: '22e09896836d017f33a9c6b92772a00fc85f8997' });
|
|
224
228
|
}
|
|
225
229
|
static get is() { return "sd-portal"; }
|
|
226
230
|
static get properties() {
|