@sellmate/design-system 1.21.0 → 1.23.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-C-F-JEv_.js → index-BuaQW9U4.js} +1 -1
- package/dist/cjs/loader.cjs.js +2 -2
- package/dist/cjs/sd-action-modal.cjs.entry.js +1 -1
- package/dist/cjs/sd-badge.cjs.entry.js +1 -1
- package/dist/cjs/sd-barcode-input.cjs.entry.js +1 -1
- package/dist/cjs/sd-button_2.cjs.entry.js +5 -5
- package/dist/cjs/sd-calendar_2.cjs.entry.js +1 -1
- package/dist/cjs/sd-callout.cjs.entry.js +1 -1
- package/dist/cjs/sd-card.cjs.entry.js +1 -1
- package/dist/cjs/sd-checkbox.cjs.entry.js +1 -1
- package/dist/cjs/sd-chip-input.cjs.entry.js +61 -19
- package/dist/cjs/sd-chip.cjs.entry.js +6 -4
- package/dist/cjs/{sd-chip.config-DiLoRpct.js → sd-chip.config-DCNCzV8s.js} +1 -1
- package/dist/cjs/sd-circle-progress.cjs.entry.js +1 -1
- package/dist/cjs/sd-confirm-modal_2.cjs.entry.js +1 -1
- package/dist/cjs/sd-date-box.cjs.entry.js +1 -1
- package/dist/cjs/sd-date-picker_7.cjs.entry.js +1 -1
- package/dist/cjs/sd-date-range-picker-calendar.cjs.entry.js +1 -1
- package/dist/cjs/sd-divider.cjs.entry.js +1 -1
- package/dist/cjs/sd-dropdown-button.cjs.entry.js +1 -1
- package/dist/cjs/sd-field_3.cjs.entry.js +2 -2
- package/dist/cjs/sd-form.cjs.entry.js +1 -1
- package/dist/cjs/sd-ghost-button_3.cjs.entry.js +4 -4
- package/dist/cjs/sd-guide.cjs.entry.js +1 -1
- package/dist/cjs/sd-key-value-table.cjs.entry.js +1 -1
- package/dist/cjs/sd-linear-progress.cjs.entry.js +1 -1
- package/dist/cjs/sd-loading-container.cjs.entry.js +1 -1
- package/dist/cjs/sd-modal-container.cjs.entry.js +1 -1
- package/dist/cjs/sd-pagination_4.cjs.entry.js +87 -8
- package/dist/cjs/sd-popover.cjs.entry.js +2 -2
- package/dist/cjs/sd-popup.cjs.entry.js +1 -1
- package/dist/cjs/sd-radio-button.cjs.entry.js +1 -1
- package/dist/cjs/sd-radio.cjs.entry.js +1 -1
- package/dist/cjs/sd-select-list-item_2.cjs.entry.js +1 -1
- package/dist/cjs/sd-select_3.cjs.entry.js +1 -1
- package/dist/cjs/sd-switch.cjs.entry.js +1 -1
- package/dist/cjs/sd-table.cjs.entry.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 +1 -1
- package/dist/cjs/sd-toast-container.cjs.entry.js +1 -1
- package/dist/cjs/sd-toast.cjs.entry.js +1 -1
- package/dist/cjs/sd-toggle.cjs.entry.js +1 -1
- package/dist/cjs/{tooltipArrow-26hYtSrD.js → tooltipArrow-VQq73W83.js} +1 -1
- package/dist/collection/components/assets/CaretDown.js +1 -1
- package/dist/collection/components/assets/CaretLeft.js +1 -1
- package/dist/collection/components/assets/CaretRight.js +1 -1
- package/dist/collection/components/assets/CaretUp.js +1 -1
- package/dist/collection/components/sd-chip/sd-chip.js +24 -2
- package/dist/collection/components/sd-chip-input/sd-chip-input.css +5 -0
- package/dist/collection/components/sd-chip-input/sd-chip-input.js +58 -16
- package/dist/collection/components/sd-ghost-button/sd-ghost-button.js +3 -3
- package/dist/collection/components/sd-table/sd-table.stories.helpers.js +97 -0
- package/dist/collection/components/sd-table/sd-thead/sd-thead.css +21 -0
- package/dist/collection/components/sd-table/sd-thead/sd-thead.js +87 -7
- package/dist/components/index.js +1 -1
- package/dist/components/{p-C1QezE7u.js → p-2-7UYvqL.js} +1 -1
- package/dist/components/{p-B-Igud6n.js → p-4I0LJNSg.js} +1 -1
- package/dist/components/p-B3bERWUt.js +1 -0
- package/dist/components/{p-DIc8C633.js → p-BDm6daTX.js} +1 -1
- package/dist/components/{p-CZYTZeMe.js → p-BFMUpKa2.js} +1 -1
- package/dist/components/{p-Cj_1bYZF.js → p-BJMpxQSk.js} +1 -1
- package/dist/components/{p-DU0IkIvI.js → p-BLsuwMw4.js} +1 -1
- package/dist/components/{p-DZikCqcw.js → p-BRKeMTWI.js} +1 -1
- package/dist/components/{p-BjSMh85k.js → p-BUB0CcPo.js} +1 -1
- package/dist/components/{p-CBDBmMmw.js → p-BYgT6mRD.js} +1 -1
- package/dist/components/p-BdFwmTyS.js +1 -0
- package/dist/components/{p-BIHVGo10.js → p-BeKMwT89.js} +1 -1
- package/dist/components/p-BnhzUsGP.js +1 -0
- package/dist/components/{p-C3mTIE8H.js → p-Btpf6Xpg.js} +1 -1
- package/dist/components/{p-B76pFg6k.js → p-BwgUEhOa.js} +1 -1
- package/dist/components/{p-CTw1Deo8.js → p-C2cNc56z.js} +1 -1
- package/dist/components/{p-CTxZT3Je.js → p-C3rOud8J.js} +1 -1
- package/dist/components/{p-D4zy1T3V.js → p-C9rjLN0u.js} +1 -1
- package/dist/components/{p-CCCwPJ5p.js → p-CEVDmQdt.js} +1 -1
- package/dist/components/{p-BQQC-6k4.js → p-CGJ1L8_Y.js} +1 -1
- package/dist/components/{p-4MIzxb0h.js → p-CZpcFpSk.js} +1 -1
- package/dist/components/p-C_g09O6z.js +1 -0
- package/dist/components/{p-B5VNSTAf.js → p-CaQ-qyG-.js} +1 -1
- package/dist/components/{p-S2-XqY2R.js → p-ChwRSZ6R.js} +1 -1
- package/dist/components/{p-s_75vJTu.js → p-ClBvavih.js} +1 -1
- package/dist/components/{p-Dz7VXmIA.js → p-CpBPNHYe.js} +1 -1
- package/dist/components/{p-FA9fGvbL.js → p-D3dq5pt5.js} +1 -1
- package/dist/components/p-DDahT3Mp.js +1 -0
- package/dist/components/{p-BrHnpCXR.js → p-DfKZyde8.js} +1 -1
- package/dist/components/{p-DPXOBYhf.js → p-DgZ_vzrA.js} +1 -1
- package/dist/components/{p-BFlmHQm9.js → p-Dj1iJxUT.js} +1 -1
- package/dist/components/{p-CEKu7cxA.js → p-Dn93jl-w.js} +1 -1
- package/dist/components/{p-CcwzTAJC.js → p-DnHzWLdY.js} +1 -1
- package/dist/components/{p-Btj50AUe.js → p-IMWw_SJ1.js} +1 -1
- package/dist/components/{p-DC5W8Uy1.js → p-iORPryb0.js} +1 -1
- package/dist/components/{p-Cugxp5lo.js → p-kDokArZu.js} +1 -1
- package/dist/components/{p-l7TaS8q9.js → p-lL2VxD2V.js} +1 -1
- package/dist/components/sd-action-modal.js +1 -1
- package/dist/components/sd-badge.js +1 -1
- package/dist/components/sd-barcode-input.js +1 -1
- package/dist/components/sd-button.js +1 -1
- package/dist/components/sd-calendar.js +1 -1
- package/dist/components/sd-callout.js +1 -1
- package/dist/components/sd-card.js +1 -1
- package/dist/components/sd-checkbox.js +1 -1
- package/dist/components/sd-chip-input.js +1 -1
- package/dist/components/sd-chip.js +1 -1
- package/dist/components/sd-circle-progress.js +1 -1
- package/dist/components/sd-confirm-modal.js +1 -1
- package/dist/components/sd-date-box.js +1 -1
- package/dist/components/sd-date-picker-trigger.js +1 -1
- package/dist/components/sd-date-picker.js +1 -1
- package/dist/components/sd-date-range-picker-calendar.js +1 -1
- package/dist/components/sd-date-range-picker.js +1 -1
- package/dist/components/sd-divider.js +1 -1
- package/dist/components/sd-dropdown-button.js +1 -1
- package/dist/components/sd-field.js +1 -1
- package/dist/components/sd-file-picker.js +1 -1
- package/dist/components/sd-floating-portal.js +1 -1
- package/dist/components/sd-form.js +1 -1
- package/dist/components/sd-ghost-button.js +1 -1
- package/dist/components/sd-guide.js +1 -1
- package/dist/components/sd-icon.js +1 -1
- package/dist/components/sd-input.js +1 -1
- package/dist/components/sd-key-value-table.js +1 -1
- package/dist/components/sd-linear-progress.js +1 -1
- package/dist/components/sd-loading-container.js +1 -1
- package/dist/components/sd-loading-modal.js +1 -1
- package/dist/components/sd-modal-container.js +1 -1
- package/dist/components/sd-number-input.js +1 -1
- package/dist/components/sd-pagination.js +1 -1
- package/dist/components/sd-popover.js +1 -1
- package/dist/components/sd-popup.js +1 -1
- package/dist/components/sd-portal.js +1 -1
- package/dist/components/sd-radio-button.js +1 -1
- package/dist/components/sd-radio-group.js +1 -1
- package/dist/components/sd-radio.js +1 -1
- package/dist/components/sd-select-list-item-search.js +1 -1
- package/dist/components/sd-select-list-item.js +1 -1
- package/dist/components/sd-select-listbox.js +1 -1
- package/dist/components/sd-select-trigger.js +1 -1
- package/dist/components/sd-select.js +1 -1
- package/dist/components/sd-switch.js +1 -1
- package/dist/components/sd-table.js +1 -1
- package/dist/components/sd-tabs.js +1 -1
- package/dist/components/sd-tag.js +1 -1
- package/dist/components/sd-tbody.js +1 -1
- package/dist/components/sd-td.js +1 -1
- package/dist/components/sd-text-link.js +1 -1
- package/dist/components/sd-textarea.js +1 -1
- package/dist/components/sd-thead.js +1 -1
- package/dist/components/sd-toast-container.js +1 -1
- package/dist/components/sd-toast.js +1 -1
- package/dist/components/sd-toggle.js +1 -1
- package/dist/components/sd-tooltip.js +1 -1
- package/dist/components/sd-tr.js +1 -1
- package/dist/design-system/design-system.css +1 -1
- package/dist/design-system/design-system.esm.js +1 -1
- package/dist/design-system/{p-2ba0b35a.entry.js → p-12e7b9fc.entry.js} +1 -1
- package/dist/design-system/{p-ccc85130.entry.js → p-1e1a5c69.entry.js} +1 -1
- package/dist/design-system/p-1e9793d6.entry.js +1 -0
- package/dist/design-system/{p-ce83eca1.entry.js → p-2646a746.entry.js} +1 -1
- package/dist/design-system/{p-a71a8b31.entry.js → p-3c4b57b5.entry.js} +1 -1
- package/dist/design-system/{p-99f33027.entry.js → p-43316703.entry.js} +1 -1
- package/dist/design-system/{p-e310f188.entry.js → p-43c79402.entry.js} +1 -1
- package/dist/design-system/{p-bfba449b.entry.js → p-45651573.entry.js} +1 -1
- package/dist/design-system/{p-88926a42.entry.js → p-496d3684.entry.js} +1 -1
- package/dist/design-system/{p-d5b535ad.entry.js → p-4d68b0a8.entry.js} +1 -1
- package/dist/design-system/{p-68687503.entry.js → p-578683b5.entry.js} +1 -1
- package/dist/design-system/{p-ce5df7ef.entry.js → p-586602a8.entry.js} +1 -1
- package/dist/design-system/{p-9dc0c2f9.entry.js → p-60f3ce4f.entry.js} +1 -1
- package/dist/design-system/{p-4f69fde0.entry.js → p-64d63a3f.entry.js} +1 -1
- package/dist/design-system/{p-563a8242.entry.js → p-6cd3da51.entry.js} +1 -1
- package/dist/design-system/p-7233ffb7.entry.js +1 -0
- package/dist/design-system/p-754c11a8.entry.js +1 -0
- package/dist/design-system/{p-ac81b46e.entry.js → p-8101c564.entry.js} +1 -1
- package/dist/design-system/{p-4bc0ce52.entry.js → p-829b7e4f.entry.js} +1 -1
- package/dist/design-system/{p-7c507d39.entry.js → p-83a86e6d.entry.js} +1 -1
- package/dist/design-system/p-86e54f19.entry.js +1 -0
- package/dist/design-system/{p-4eeca0cb.entry.js → p-93f876ce.entry.js} +1 -1
- package/dist/design-system/p-956956af.entry.js +1 -0
- package/dist/design-system/{p-90436be8.entry.js → p-9761ef4a.entry.js} +1 -1
- package/dist/design-system/{p-50b5cf37.entry.js → p-9b7d3077.entry.js} +1 -1
- package/dist/design-system/{p-C7HJ-NfO.js → p-BZ5lcC25.js} +1 -1
- package/dist/{components/p-BRmilX-4.js → design-system/p-GXE2lEVj.js} +1 -1
- package/dist/design-system/{p-DDj5KTBF.js → p-ITP9Focx.js} +1 -1
- package/dist/design-system/{p-c684cd96.entry.js → p-a42bcc11.entry.js} +1 -1
- package/dist/design-system/{p-ff726fad.entry.js → p-a5fe8b9a.entry.js} +1 -1
- package/dist/design-system/{p-2ca4902b.entry.js → p-b1f4e1e5.entry.js} +1 -1
- package/dist/design-system/{p-abcc9367.entry.js → p-b29569d7.entry.js} +1 -1
- package/dist/design-system/{p-a80cc067.entry.js → p-b2ef677a.entry.js} +1 -1
- package/dist/design-system/{p-35e1e2fa.entry.js → p-b7e80770.entry.js} +1 -1
- package/dist/design-system/{p-6d8a4a23.entry.js → p-c4c81918.entry.js} +1 -1
- package/dist/design-system/{p-2df32f8c.entry.js → p-c79bf2eb.entry.js} +1 -1
- package/dist/design-system/{p-52e88677.entry.js → p-ccbf8687.entry.js} +1 -1
- package/dist/design-system/{p-b881bbb6.entry.js → p-d10efe7e.entry.js} +1 -1
- package/dist/design-system/{p-274dbc65.entry.js → p-df5e8dba.entry.js} +1 -1
- package/dist/design-system/{p-fc65bbe2.entry.js → p-e018fdb1.entry.js} +1 -1
- package/dist/design-system/{p-9a010c12.entry.js → p-e897484c.entry.js} +1 -1
- package/dist/design-system/{p-552acf98.entry.js → p-e94bd6d7.entry.js} +1 -1
- package/dist/design-system/{p-c93c623f.entry.js → p-f280e59d.entry.js} +1 -1
- package/dist/esm/design-system.js +3 -3
- package/dist/esm/{index-C7HJ-NfO.js → index-BZ5lcC25.js} +1 -1
- package/dist/esm/loader.js +3 -3
- package/dist/esm/sd-action-modal.entry.js +1 -1
- package/dist/esm/sd-badge.entry.js +1 -1
- package/dist/esm/sd-barcode-input.entry.js +1 -1
- package/dist/esm/sd-button_2.entry.js +5 -5
- package/dist/esm/sd-calendar_2.entry.js +1 -1
- package/dist/esm/sd-callout.entry.js +1 -1
- package/dist/esm/sd-card.entry.js +1 -1
- package/dist/esm/sd-checkbox.entry.js +1 -1
- package/dist/esm/sd-chip-input.entry.js +61 -19
- package/dist/esm/{sd-chip.config-DDj5KTBF.js → sd-chip.config-ITP9Focx.js} +1 -1
- package/dist/esm/sd-chip.entry.js +6 -4
- package/dist/esm/sd-circle-progress.entry.js +1 -1
- package/dist/esm/sd-confirm-modal_2.entry.js +1 -1
- package/dist/esm/sd-date-box.entry.js +1 -1
- package/dist/esm/sd-date-picker_7.entry.js +1 -1
- package/dist/esm/sd-date-range-picker-calendar.entry.js +1 -1
- package/dist/esm/sd-divider.entry.js +1 -1
- package/dist/esm/sd-dropdown-button.entry.js +1 -1
- package/dist/esm/sd-field_3.entry.js +2 -2
- package/dist/esm/sd-form.entry.js +1 -1
- package/dist/esm/sd-ghost-button_3.entry.js +4 -4
- package/dist/esm/sd-guide.entry.js +1 -1
- package/dist/esm/sd-key-value-table.entry.js +1 -1
- package/dist/esm/sd-linear-progress.entry.js +1 -1
- package/dist/esm/sd-loading-container.entry.js +1 -1
- package/dist/esm/sd-modal-container.entry.js +1 -1
- package/dist/esm/sd-pagination_4.entry.js +87 -8
- package/dist/esm/sd-popover.entry.js +2 -2
- package/dist/esm/sd-popup.entry.js +1 -1
- package/dist/esm/sd-radio-button.entry.js +1 -1
- package/dist/esm/sd-radio.entry.js +1 -1
- package/dist/esm/sd-select-list-item_2.entry.js +1 -1
- package/dist/esm/sd-select_3.entry.js +1 -1
- package/dist/esm/sd-switch.entry.js +1 -1
- package/dist/esm/sd-table.entry.js +1 -1
- 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 +1 -1
- package/dist/esm/sd-toast-container.entry.js +1 -1
- package/dist/esm/sd-toast.entry.js +1 -1
- package/dist/esm/sd-toggle.entry.js +1 -1
- package/dist/esm/{tooltipArrow-Bgf3crs7.js → tooltipArrow-ByHjyr3Z.js} +1 -1
- package/dist/types/components/sd-chip/sd-chip.d.ts +2 -0
- package/dist/types/components/sd-table/constants.d.ts +1 -0
- package/dist/types/components/sd-table/sd-table.stories.helpers.d.ts +10 -0
- package/dist/types/components/sd-table/sd-thead/sd-thead.d.ts +8 -0
- package/dist/types/components.d.ts +11 -0
- package/hydrate/index.js +160 -35
- package/hydrate/index.mjs +160 -35
- package/package.json +1 -1
- package/dist/components/p-BVlg0BoC.js +0 -1
- package/dist/components/p-BzsHwLh6.js +0 -1
- package/dist/components/p-DJY7lCe4.js +0 -1
- package/dist/components/p-YpyfqzoP.js +0 -1
- package/dist/design-system/p-0f35cd21.entry.js +0 -1
- package/dist/design-system/p-35da166a.entry.js +0 -1
- package/dist/design-system/p-4c1559c8.entry.js +0 -1
- package/dist/design-system/p-4e44b45b.entry.js +0 -1
- package/dist/design-system/p-DUyBmuH_.js +0 -1
- package/dist/design-system/p-fe5b8eaa.entry.js +0 -1
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { r as registerInstance, c as createEvent, h, F as Fragment, a as getElement, H as Host } from './index-
|
|
1
|
+
import { r as registerInstance, c as createEvent, h, F as Fragment, a as getElement, H as Host } from './index-BZ5lcC25.js';
|
|
2
2
|
import { T as TABLE_ID_ATTR } from './constants-sZMi_32I.js';
|
|
3
3
|
import { a as TABLE_SELECTABLE_COLUMN_WIDTH, r as resolveTableIconColor, e as resolveSortIconName, c as TABLE_BORDER, f as TABLE_HEADER_RESIZING_BAR, g as TABLE_HEADER_TYPOGRAPHY, h as TABLE_HEADER_COLORS, i as TABLE_HEADER_LAYOUT, T as TABLE_BODY_LAYOUT, j as TABLE_SEPARATOR, b as TABLE_BODY_TYPOGRAPHY } from './sd-table.config-B3wuA5wX.js';
|
|
4
4
|
import './component.table-D6GUzecR.js';
|
|
@@ -232,7 +232,7 @@ const SdTbody = class {
|
|
|
232
232
|
};
|
|
233
233
|
SdTbody.style = sdTbodyCss();
|
|
234
234
|
|
|
235
|
-
const sdTheadCss = () => `sd-thead{display:contents}sd-thead *{box-sizing:border-box}.thead{display:table-header-group;height:var(--table-header-height, 36px)}.thead--sticky{position:sticky;top:0;z-index:120}.tr{display:table-row;width:100%}.th{display:table-cell;background:var(--table-header-bg, #F5FAFF);height:var(--table-header-height, 36px);padding:0 var(--table-header-padding-x, 16px);font-family:var(--table-header-font-family, inherit);font-weight:var(--table-header-font-weight, 500);font-size:var(--table-header-font-size, 12px);line-height:var(--table-header-line-height, 20px);text-decoration:var(--table-header-text-decoration, none);vertical-align:middle;border-bottom:var(--table-border-width, 1px) solid var(--table-border-color, #E1E1E1);-webkit-user-select:none;user-select:none;position:relative;overflow:hidden;white-space:nowrap;text-overflow:ellipsis;word-break:keep-all}.th--selected{position:relative;width:var(--table-selectable-width, 48px) !important;max-width:var(--table-selectable-width, 48px) !important;min-width:var(--table-selectable-width, 48px) !important;text-align:center}.th--selected sd-checkbox label{position:relative}.th--selected sd-checkbox label:before{content:"";position:absolute;inset:-6px}.th.sticky-left{position:sticky;background-color:var(--table-header-bg, #F5FAFF);z-index:110 !important;left:var(--sticky-left-offset, 0)}.th.sticky-right{position:sticky;background-color:var(--table-header-bg, #F5FAFF);z-index:110 !important;right:var(--sticky-right-offset, 0)}.th.sticky-left-edge:after{content:"";position:absolute;top:0;left:100%;right:-20px;width:20px;height:100%;z-index:101 !important;box-shadow:inset 12px 0 20px -25px;opacity:0;pointer-events:none;transition:opacity 0.2s}.th.sticky-right-edge:after{content:"";position:absolute;top:0;left:-20px;width:20px;height:100%;z-index:101 !important;box-shadow:inset -12px 0 20px -25px;opacity:0;pointer-events:none;transition:opacity 0.2s}.th.sticky-left-edge.is-scrolled-left{overflow:visible}.th.sticky-left-edge.is-scrolled-left:after{opacity:1}.th.sticky-right-edge.is-scrolled-right{overflow:visible}.th.sticky-right-edge.is-scrolled-right:after{opacity:1}.th__content{display:flex;flex-flow:row nowrap;align-items:center;gap:var(--table-header-gap, 4px)}.th__content--left{justify-content:flex-start}.th__content--center{justify-content:center}.th__content--right{justify-content:flex-end}.th__content--label{white-space:nowrap;text-overflow:ellipsis;word-break:keep-all}.th__bar{position:absolute;top:50%;right:0;transform:translateY(-50%);width:var(--table-border-width, 1px);height:var(--table-header-resizer-height, 16px);z-index:3;background-color:var(--table-header-resizer-color, #CCCCCC)}.th__resizer{position:absolute;top:50%;right:0;transform:translateY(-50%);width:4px;height:var(--table-header-resizer-height, 16px);cursor:col-resize;z-index:3;border-left:var(--table-border-width, 1px) solid var(--table-header-resizer-color, #CCCCCC);border-right:var(--table-border-width, 1px) solid var(--table-header-resizer-color, #CCCCCC)}.th__resizer--left{right:auto;left:0}`;
|
|
235
|
+
const sdTheadCss = () => `sd-thead{display:contents}sd-thead *{box-sizing:border-box}.thead{display:table-header-group;height:var(--table-header-height, 36px)}.thead--sticky{position:sticky;top:0;z-index:120}.tr{display:table-row;width:100%}.th{display:table-cell;background:var(--table-header-bg, #F5FAFF);height:var(--table-header-height, 36px);padding:0 var(--table-header-padding-x, 16px);font-family:var(--table-header-font-family, inherit);font-weight:var(--table-header-font-weight, 500);font-size:var(--table-header-font-size, 12px);line-height:var(--table-header-line-height, 20px);text-decoration:var(--table-header-text-decoration, none);vertical-align:middle;border-bottom:var(--table-border-width, 1px) solid var(--table-border-color, #E1E1E1);-webkit-user-select:none;user-select:none;position:relative;overflow:hidden;white-space:nowrap;text-overflow:ellipsis;word-break:keep-all}.th--selected{position:relative;width:var(--table-selectable-width, 48px) !important;max-width:var(--table-selectable-width, 48px) !important;min-width:var(--table-selectable-width, 48px) !important;text-align:center}.th--selected sd-checkbox label{position:relative}.th--selected sd-checkbox label:before{content:"";position:absolute;inset:-6px}.th.sticky-left{position:sticky;background-color:var(--table-header-bg, #F5FAFF);z-index:110 !important;left:var(--sticky-left-offset, 0)}.th.sticky-right{position:sticky;background-color:var(--table-header-bg, #F5FAFF);z-index:110 !important;right:var(--sticky-right-offset, 0)}.th.sticky-left-edge:after{content:"";position:absolute;top:0;left:100%;right:-20px;width:20px;height:100%;z-index:101 !important;box-shadow:inset 12px 0 20px -25px;opacity:0;pointer-events:none;transition:opacity 0.2s}.th.sticky-right-edge:after{content:"";position:absolute;top:0;left:-20px;width:20px;height:100%;z-index:101 !important;box-shadow:inset -12px 0 20px -25px;opacity:0;pointer-events:none;transition:opacity 0.2s}.th.sticky-left-edge.is-scrolled-left{overflow:visible}.th.sticky-left-edge.is-scrolled-left:after{opacity:1}.th.sticky-right-edge.is-scrolled-right{overflow:visible}.th.sticky-right-edge.is-scrolled-right:after{opacity:1}.th__content{display:flex;flex-flow:row nowrap;align-items:center;gap:var(--table-header-gap, 4px)}.th__content--left{justify-content:flex-start}.th__content--center{justify-content:center}.th__content--right{justify-content:flex-end}.th__content--label{white-space:nowrap;text-overflow:ellipsis;word-break:keep-all}.th__bar{position:absolute;top:50%;right:0;transform:translateY(-50%);width:var(--table-border-width, 1px);height:var(--table-header-resizer-height, 16px);z-index:3;background-color:var(--table-header-resizer-color, #CCCCCC)}.th__dropdown-trigger{display:flex;align-items:center;justify-content:center;flex-shrink:0;width:16px;height:16px;padding:0;border:none;background:transparent;cursor:pointer;color:inherit;border-radius:2px}.th__dropdown-trigger sd-icon{transition:transform 0.15s ease}.th__dropdown-trigger--open sd-icon{transform:rotate(180deg)}.th__resizer{position:absolute;top:50%;right:0;transform:translateY(-50%);width:4px;height:var(--table-header-resizer-height, 16px);cursor:col-resize;z-index:3;border-left:var(--table-border-width, 1px) solid var(--table-header-resizer-color, #CCCCCC);border-right:var(--table-border-width, 1px) solid var(--table-header-resizer-color, #CCCCCC)}.th__resizer--left{right:auto;left:0}`;
|
|
236
236
|
|
|
237
237
|
const SdThead = class {
|
|
238
238
|
constructor(hostRef) {
|
|
@@ -268,14 +268,29 @@ const SdThead = class {
|
|
|
268
268
|
_stickyHeader = false;
|
|
269
269
|
_scrolledLeft = false;
|
|
270
270
|
_scrolledRight = false;
|
|
271
|
+
dropdownOpenMap = {};
|
|
271
272
|
tableEl = null;
|
|
273
|
+
dropdownRefs = {};
|
|
274
|
+
dropdownThRefs = {};
|
|
275
|
+
dropdownPortals = {};
|
|
272
276
|
handleColumnsChange(newCols) {
|
|
273
277
|
if (Array.isArray(newCols) && (this.columnWidths ?? []).length === 0) {
|
|
274
278
|
this.columnWidths = newCols.map(c => (c.autoWidth ? 0 : parseInt(c.width || '120', 10)));
|
|
275
279
|
}
|
|
276
280
|
}
|
|
281
|
+
disconnectedCallback() {
|
|
282
|
+
const portals = this.dropdownPortals ?? {};
|
|
283
|
+
Object.values(portals).forEach(portal => {
|
|
284
|
+
if (portal?.parentNode != null)
|
|
285
|
+
portal.parentNode.removeChild(portal);
|
|
286
|
+
});
|
|
287
|
+
}
|
|
277
288
|
componentWillLoad() {
|
|
278
289
|
this.syncTableContext();
|
|
290
|
+
this.dropdownOpenMap = this.dropdownOpenMap ?? {};
|
|
291
|
+
this.dropdownRefs = this.dropdownRefs ?? {};
|
|
292
|
+
this.dropdownThRefs = this.dropdownThRefs ?? {};
|
|
293
|
+
this.dropdownPortals = this.dropdownPortals ?? {};
|
|
279
294
|
this.columnWidths = Array.isArray(this.columnWidths) ? this.columnWidths : [];
|
|
280
295
|
this.resolveConfig();
|
|
281
296
|
if ((this.columnWidths ?? []).length === 0) {
|
|
@@ -285,6 +300,36 @@ const SdThead = class {
|
|
|
285
300
|
componentDidLoad() {
|
|
286
301
|
this.syncTableContext();
|
|
287
302
|
this.resolveConfig();
|
|
303
|
+
this.initDropdownPortals();
|
|
304
|
+
}
|
|
305
|
+
// sd-portal을 body에 붙여 CSS transform 영향 없이 정확한 위치에 패널을 표시한다.
|
|
306
|
+
// <slot>을 render에 두지 않고 직접 DOM 이동(slot 속성 제거)으로 Stencil 슬롯 에뮬레이션 충돌을 피한다.
|
|
307
|
+
initDropdownPortals() {
|
|
308
|
+
const cols = this._columns ?? [];
|
|
309
|
+
const hasDropdownCols = cols.filter(c => c.hasDropdown === true);
|
|
310
|
+
if (hasDropdownCols.length === 0)
|
|
311
|
+
return;
|
|
312
|
+
for (const col of hasDropdownCols) {
|
|
313
|
+
const colName = col.name;
|
|
314
|
+
// 이미 포탈이 생성된 컬럼은 건너뜀 (refreshConfig 재호출 대비)
|
|
315
|
+
if ((this.dropdownPortals ?? {})[colName] != null)
|
|
316
|
+
continue;
|
|
317
|
+
const slotContent = this.el.querySelector(`[slot="dropdown-${colName}"]`);
|
|
318
|
+
if (slotContent == null)
|
|
319
|
+
continue;
|
|
320
|
+
// slot 속성 제거: Stencil 슬롯 에뮬레이션이 재배포하지 못하게 한다
|
|
321
|
+
slotContent.removeAttribute('slot');
|
|
322
|
+
const portal = document.createElement('sd-portal');
|
|
323
|
+
portal.parentRef = this.dropdownThRefs[colName] ?? null;
|
|
324
|
+
portal.open = false;
|
|
325
|
+
// 첫 open 전까지 포탈 호스트 자체를 숨긴다.
|
|
326
|
+
// moveSlotContent()가 open=true 시 children을 독립 wrapper div로 이동하므로 이후 동작에 영향 없음.
|
|
327
|
+
portal.style.display = 'none';
|
|
328
|
+
portal.addEventListener('sdClose', () => this.closeDropdown(colName));
|
|
329
|
+
portal.appendChild(slotContent);
|
|
330
|
+
document.body.appendChild(portal);
|
|
331
|
+
this.dropdownPortals[colName] = portal;
|
|
332
|
+
}
|
|
288
333
|
}
|
|
289
334
|
syncTableContext() {
|
|
290
335
|
// sd-table이 shadow:true이므로 fallback content로 렌더되면 closest가 경계를 못 넘는다.
|
|
@@ -327,6 +372,7 @@ const SdThead = class {
|
|
|
327
372
|
/** 테이블 설정을 다시 불러옵니다. */
|
|
328
373
|
async refreshConfig() {
|
|
329
374
|
this.resolveConfig();
|
|
375
|
+
this.initDropdownPortals();
|
|
330
376
|
}
|
|
331
377
|
/** 컬럼 너비를 업데이트합니다. */
|
|
332
378
|
async setColumnWidths(widths) {
|
|
@@ -371,6 +417,28 @@ const SdThead = class {
|
|
|
371
417
|
handleColumnSort = (col) => {
|
|
372
418
|
this.sdColumnSort.emit({ column: col });
|
|
373
419
|
};
|
|
420
|
+
toggleDropdown(name) {
|
|
421
|
+
const isOpen = this.dropdownOpenMap[name] !== true;
|
|
422
|
+
const portals = this.dropdownPortals ?? {};
|
|
423
|
+
const newMap = { ...this.dropdownOpenMap };
|
|
424
|
+
// _columns 기준으로 순회: portals가 비어도 dropdownOpenMap은 항상 갱신됨
|
|
425
|
+
for (const col of (this._columns ?? []).filter(c => c.hasDropdown === true)) {
|
|
426
|
+
const shouldBeOpen = col.name === name ? isOpen : false;
|
|
427
|
+
newMap[col.name] = shouldBeOpen;
|
|
428
|
+
const portal = portals[col.name];
|
|
429
|
+
if (portal != null)
|
|
430
|
+
portal.open = shouldBeOpen;
|
|
431
|
+
}
|
|
432
|
+
this.dropdownOpenMap = newMap;
|
|
433
|
+
}
|
|
434
|
+
closeDropdown(name) {
|
|
435
|
+
if (this.dropdownOpenMap[name] !== true)
|
|
436
|
+
return;
|
|
437
|
+
this.dropdownOpenMap = { ...this.dropdownOpenMap, [name]: false };
|
|
438
|
+
const portal = (this.dropdownPortals ?? {})[name];
|
|
439
|
+
if (portal != null)
|
|
440
|
+
portal.open = false;
|
|
441
|
+
}
|
|
374
442
|
handleSelectAll(checked) {
|
|
375
443
|
const nextChecked = !!checked;
|
|
376
444
|
const safeRows = Array.isArray(this.rows) ? this.rows : [];
|
|
@@ -387,6 +455,8 @@ const SdThead = class {
|
|
|
387
455
|
}
|
|
388
456
|
render() {
|
|
389
457
|
const safeRows = Array.isArray(this.rows) ? this.rows : [];
|
|
458
|
+
const dropdownOpenMap = this.dropdownOpenMap ?? {};
|
|
459
|
+
const dropdownRefs = this.dropdownRefs ?? {};
|
|
390
460
|
const stickyLeftCount = this._stickyColumn.left || 0;
|
|
391
461
|
const stickyRightCount = this._stickyColumn.right || 0;
|
|
392
462
|
const stickyLeftCols = this.visibleColumns.slice(0, stickyLeftCount);
|
|
@@ -408,22 +478,25 @@ const SdThead = class {
|
|
|
408
478
|
'--table-border-color': TABLE_BORDER.color,
|
|
409
479
|
'--table-border-width': `${TABLE_BORDER.width}px`,
|
|
410
480
|
};
|
|
411
|
-
return (h(Host, { key: '
|
|
481
|
+
return (h(Host, { key: '947f5e5b0e59e7e6f8a73e4fd44dbfa646cb630a', slot: `${this.tableId}-head`, style: headStyle }, h("thead", { key: '2e0ffbfe9d96528c6e0082d4883fa462a18831d6', class: {
|
|
412
482
|
'thead': true,
|
|
413
483
|
'thead--sticky': this._stickyHeader,
|
|
414
|
-
} }, h("tr", { key: '
|
|
484
|
+
} }, h("tr", { key: '5843a18e1548bc6546e447d4c9213375116af0e9', class: "tr" }, this._selectable && (h("th", { key: '914024ca35874747e39f1819337cd4ad1cbe733d', class: {
|
|
415
485
|
'th': true,
|
|
416
486
|
'th--selected': true,
|
|
417
487
|
'sticky-left': true,
|
|
418
488
|
'sticky-left-edge': stickyLeftCount === 0,
|
|
419
489
|
'is-scrolled-left': stickyLeftCount === 0 && this._scrolledLeft,
|
|
420
|
-
}, style: { '--sticky-left-offset': '0px' } }, h("sd-checkbox", { key: '
|
|
490
|
+
}, style: { '--sticky-left-offset': '0px' } }, h("sd-checkbox", { key: 'e07232f1f5fa02589573ddaae53ebdadbdb97674', value: this.getIsAllChecked(), disabled: safeRows.length === 0, onSdUpdate: (e) => this.handleSelectAll(e.detail) }), h("div", { key: '08b504cfd4f420e76e91d649eed28c7068517044', class: "th__bar" }))), stickyLeftCols.map((col, idx) => (h("th", { key: col.name, class: {
|
|
421
491
|
'th': true,
|
|
422
492
|
[`${col.thClass}`]: Boolean(col.thClass),
|
|
423
493
|
'sticky-left': true,
|
|
424
494
|
'sticky-left-edge': idx === stickyLeftCount - 1,
|
|
425
495
|
'is-scrolled-left': idx === stickyLeftCount - 1 && this._scrolledLeft,
|
|
426
|
-
}, style: { ...col.thStyle, ...this.getStickyStyle(idx) } }, h("div", { class: `th__content th__content--${col.align || 'left'}` }, h("div", { class: "th__content--label" }, col.label), col.icon && (h("sd-icon", { name: col.icon, size: "12", color: resolveTableIconColor(col.icon, col.iconColor) })), col.sort && (h("sd-icon", { name: resolveSortIconName(col.sort), size: "12", color: resolveTableIconColor(resolveSortIconName(col.sort), col.iconColor), onClick: () => this.handleColumnSort(col), style: { cursor: 'pointer' } })), col.tooltip && (h("sd-tooltip", { ...col.tooltipOptions }, h("div", { slot: "content" }, col.tooltip.map(text => (h("p", null, text))))))
|
|
496
|
+
}, style: { ...col.thStyle, ...this.getStickyStyle(idx) }, ref: col.hasDropdown === true ? (el => { this.dropdownThRefs[col.name] = el; }) : undefined }, h("div", { class: `th__content th__content--${col.align || 'left'}` }, h("div", { class: "th__content--label" }, col.label), col.icon && (h("sd-icon", { name: col.icon, size: "12", color: resolveTableIconColor(col.icon, col.iconColor) })), col.sort && (h("sd-icon", { name: resolveSortIconName(col.sort), size: "12", color: resolveTableIconColor(resolveSortIconName(col.sort), col.iconColor), onClick: () => this.handleColumnSort(col), style: { cursor: 'pointer' } })), col.tooltip && (h("sd-tooltip", { ...col.tooltipOptions }, h("div", { slot: "content" }, col.tooltip.map(text => (h("p", null, text)))))), col.hasDropdown === true && (h("button", { class: {
|
|
497
|
+
'th__dropdown-trigger': true,
|
|
498
|
+
'th__dropdown-trigger--open': dropdownOpenMap[col.name] === true,
|
|
499
|
+
}, ref: el => { dropdownRefs[col.name] = el; }, onClick: () => this.toggleDropdown(col.name), "aria-haspopup": "listbox", "aria-expanded": dropdownOpenMap[col.name] === true ? 'true' : 'false' }, h("sd-icon", { name: "chevronDown", size: "12" })))), this._resizable && idx !== lastColIdx && (
|
|
427
500
|
// column resize 는 마우스 드래그 전용 인터랙션이라 키보드 핸들러를 두지 않는다.
|
|
428
501
|
// eslint-disable-next-line jsx-a11y/no-static-element-interactions
|
|
429
502
|
h("div", { class: "th__resizer", onMouseDown: (evt) => this.handleResize(idx, evt) }))))), middleCols.map((col, relativeIdx) => {
|
|
@@ -431,7 +504,10 @@ const SdThead = class {
|
|
|
431
504
|
return (h("th", { key: col.name, class: {
|
|
432
505
|
th: true,
|
|
433
506
|
[`${col.thClass}`]: Boolean(col.thClass),
|
|
434
|
-
}, style: { ...col.thStyle, ...this.getStickyStyle(actualColIdx) } }, h("div", { class: `th__content th__content--${col.align || 'left'}` }, h("div", { class: "th__content--label" }, col.label), col.icon && (h("sd-icon", { name: col.icon, size: "12", color: resolveTableIconColor(col.icon, col.iconColor) })), col.sort && (h("sd-icon", { name: resolveSortIconName(col.sort), size: "12", color: resolveTableIconColor(resolveSortIconName(col.sort), col.iconColor), onClick: () => this.handleColumnSort(col), style: { cursor: 'pointer' } })), col.tooltip && (h("sd-tooltip", { ...col.tooltipOptions }, h("div", { slot: "content" }, col.tooltip.map(text => (h("p", null, text))))))
|
|
507
|
+
}, style: { ...col.thStyle, ...this.getStickyStyle(actualColIdx) }, ref: col.hasDropdown === true ? (el => { this.dropdownThRefs[col.name] = el; }) : undefined }, h("div", { class: `th__content th__content--${col.align || 'left'}` }, h("div", { class: "th__content--label" }, col.label), col.icon && (h("sd-icon", { name: col.icon, size: "12", color: resolveTableIconColor(col.icon, col.iconColor) })), col.sort && (h("sd-icon", { name: resolveSortIconName(col.sort), size: "12", color: resolveTableIconColor(resolveSortIconName(col.sort), col.iconColor), onClick: () => this.handleColumnSort(col), style: { cursor: 'pointer' } })), col.tooltip && (h("sd-tooltip", { ...col.tooltipOptions }, h("div", { slot: "content" }, col.tooltip.map(text => (h("p", null, text)))))), col.hasDropdown === true && (h("button", { class: {
|
|
508
|
+
'th__dropdown-trigger': true,
|
|
509
|
+
'th__dropdown-trigger--open': this.dropdownOpenMap[col.name] === true,
|
|
510
|
+
}, ref: el => { this.dropdownRefs[col.name] = el; }, onClick: () => this.toggleDropdown(col.name), "aria-haspopup": "listbox", "aria-expanded": this.dropdownOpenMap[col.name] === true ? 'true' : 'false' }, h("sd-icon", { name: "chevronDown", size: "12" })))), this._resizable && actualColIdx !== lastColIdx && (
|
|
435
511
|
// column resize 는 마우스 드래그 전용 인터랙션이라 키보드 핸들러를 두지 않는다.
|
|
436
512
|
// eslint-disable-next-line jsx-a11y/no-static-element-interactions
|
|
437
513
|
h("div", { class: "th__resizer", onMouseDown: (evt) => this.handleResize(actualColIdx, evt) }))));
|
|
@@ -443,7 +519,10 @@ const SdThead = class {
|
|
|
443
519
|
'sticky-right': true,
|
|
444
520
|
'sticky-right-edge': relativeIdx === 0,
|
|
445
521
|
'is-scrolled-right': relativeIdx === 0 && this._scrolledRight,
|
|
446
|
-
}, style: { ...col.thStyle, ...this.getStickyStyle(actualColIdx) } }, h("div", { class: `th__content th__content--${col.align || 'left'}` }, h("div", { class: "th__content--label" }, col.label), col.icon && (h("sd-icon", { name: col.icon, size: "12", color: resolveTableIconColor(col.icon, col.iconColor) })), col.sort && (h("sd-icon", { name: resolveSortIconName(col.sort), size: "12", color: resolveTableIconColor(resolveSortIconName(col.sort), col.iconColor), onClick: () => this.handleColumnSort(col), style: { cursor: 'pointer' } })), col.tooltip && (h("sd-tooltip", { ...col.tooltipOptions }, h("div", { slot: "content" }, col.tooltip.map(text => (h("p", null, text))))))
|
|
522
|
+
}, style: { ...col.thStyle, ...this.getStickyStyle(actualColIdx) }, ref: col.hasDropdown === true ? (el => { this.dropdownThRefs[col.name] = el; }) : undefined }, h("div", { class: `th__content th__content--${col.align || 'left'}` }, h("div", { class: "th__content--label" }, col.label), col.icon && (h("sd-icon", { name: col.icon, size: "12", color: resolveTableIconColor(col.icon, col.iconColor) })), col.sort && (h("sd-icon", { name: resolveSortIconName(col.sort), size: "12", color: resolveTableIconColor(resolveSortIconName(col.sort), col.iconColor), onClick: () => this.handleColumnSort(col), style: { cursor: 'pointer' } })), col.tooltip && (h("sd-tooltip", { ...col.tooltipOptions }, h("div", { slot: "content" }, col.tooltip.map(text => (h("p", null, text)))))), col.hasDropdown === true && (h("button", { class: {
|
|
523
|
+
'th__dropdown-trigger': true,
|
|
524
|
+
'th__dropdown-trigger--open': this.dropdownOpenMap[col.name] === true,
|
|
525
|
+
}, ref: el => { this.dropdownRefs[col.name] = el; }, onClick: () => this.toggleDropdown(col.name), "aria-haspopup": "listbox", "aria-expanded": this.dropdownOpenMap[col.name] === true ? 'true' : 'false' }, h("sd-icon", { name: "chevronDown", size: "12" })))), this._resizable && (
|
|
447
526
|
// column resize 는 마우스 드래그 전용 인터랙션이라 키보드 핸들러를 두지 않는다.
|
|
448
527
|
// eslint-disable-next-line jsx-a11y/no-static-element-interactions
|
|
449
528
|
h("div", { class: "th__resizer th__resizer--left", onMouseDown: (evt) => this.handleResize(actualColIdx, evt, true) }))));
|
|
@@ -1,5 +1,5 @@
|
|
|
1
|
-
import { r as registerInstance, c as createEvent, a as getElement, h, F as Fragment } from './index-
|
|
2
|
-
import { T as TooltipArrow } from './tooltipArrow-
|
|
1
|
+
import { r as registerInstance, c as createEvent, a as getElement, h, F as Fragment } from './index-BZ5lcC25.js';
|
|
2
|
+
import { T as TooltipArrow } from './tooltipArrow-ByHjyr3Z.js';
|
|
3
3
|
|
|
4
4
|
const popover = {
|
|
5
5
|
"default": {
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { r as registerInstance, c as createEvent, h } from './index-
|
|
1
|
+
import { r as registerInstance, c as createEvent, h } from './index-BZ5lcC25.js';
|
|
2
2
|
import { g as LIST_ITEM_LAYOUT, i as isHtmlLabel, h as LIST_ITEM_TYPOGRAPHY, j as LIST_ITEM_COLORS, k as SEARCH_DEBOUNCE_MS } from './sd-select.config-D6ktrl7E.js';
|
|
3
3
|
import { s as sanitizeInlineHtml } from './sanitize-inline-html-BE4tnQ2Z.js';
|
|
4
4
|
import './component.listItem-U8VaRj9c.js';
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { r as registerInstance, c as createEvent, a as getElement, h } from './index-
|
|
1
|
+
import { r as registerInstance, c as createEvent, a as getElement, h } from './index-BZ5lcC25.js';
|
|
2
2
|
import { n as nanoid } from './index-CCwNgVmC.js';
|
|
3
3
|
import { c as countLeaves, S as SEARCH_THRESHOLD, f as filterTree, i as isHtmlLabel, e as extractText, E as EMPTY_MESSAGE, L as LIST_BOX_LAYOUT, a as SELECT_COLORS, b as SELECT_TYPOGRAPHY, d as SELECT_LAYOUT } from './sd-select.config-D6ktrl7E.js';
|
|
4
4
|
import { s as sanitizeInlineHtml } from './sanitize-inline-html-BE4tnQ2Z.js';
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { r as registerInstance, c as createEvent, a as getElement, d as readTask, f as forceUpdate, h, H as Host } from './index-
|
|
1
|
+
import { r as registerInstance, c as createEvent, a as getElement, d as readTask, f as forceUpdate, h, H as Host } from './index-BZ5lcC25.js';
|
|
2
2
|
import { T as TABLE_ID_ATTR } from './constants-sZMi_32I.js';
|
|
3
3
|
import { T as TABLE_BODY_LAYOUT, a as TABLE_SELECTABLE_COLUMN_WIDTH, b as TABLE_BODY_TYPOGRAPHY, c as TABLE_BORDER, d as TABLE_RADIUS } from './sd-table.config-B3wuA5wX.js';
|
|
4
4
|
import './component.table-D6GUzecR.js';
|
package/dist/esm/sd-td.entry.js
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { r as registerInstance, a as getElement, f as forceUpdate, h, H as Host } from './index-
|
|
1
|
+
import { r as registerInstance, a as getElement, f as forceUpdate, h, H as Host } from './index-BZ5lcC25.js';
|
|
2
2
|
import { T as TABLE_ID_ATTR } from './constants-sZMi_32I.js';
|
|
3
3
|
|
|
4
4
|
const sdTdCss = () => `sd-td *{box-sizing:border-box}sd-td{display:contents}sd-td.align-left{text-align:left}sd-td.align-center{text-align:center}sd-td.align-right{text-align:right}`;
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { h } from './index-
|
|
1
|
+
import { h } from './index-BZ5lcC25.js';
|
|
2
2
|
|
|
3
3
|
const TooltipArrow = (props) => (h("svg", { width: "16", height: "12", viewBox: "0 0 16 12", fill: "none", xmlns: "http://www.w3.org/2000/svg", ...props }, h("path", { d: "M8.83205 10.7519C8.43623 11.3457 7.56377 11.3457 7.16795 10.7519L1.04907e-06 -1.39876e-06L16 0L8.83205 10.7519Z", fill: "currentColor" })));
|
|
4
4
|
|
|
@@ -25,5 +25,15 @@ export declare class StoryVirtualTable extends LitElement {
|
|
|
25
25
|
declare global {
|
|
26
26
|
interface HTMLElementTagNameMap {
|
|
27
27
|
'story-virtual-table': StoryVirtualTable;
|
|
28
|
+
'story-dropdown-table': StoryDropdownTable;
|
|
28
29
|
}
|
|
29
30
|
}
|
|
31
|
+
export declare class StoryDropdownTable extends LitElement {
|
|
32
|
+
createRenderRoot(): this;
|
|
33
|
+
private roleFilter;
|
|
34
|
+
private statusFilter;
|
|
35
|
+
constructor();
|
|
36
|
+
private get displayRows();
|
|
37
|
+
private itemStyle;
|
|
38
|
+
render(): TemplateResult<1>;
|
|
39
|
+
}
|
|
@@ -32,10 +32,16 @@ export declare class SdThead {
|
|
|
32
32
|
private _stickyHeader;
|
|
33
33
|
private _scrolledLeft;
|
|
34
34
|
private _scrolledRight;
|
|
35
|
+
private dropdownOpenMap;
|
|
35
36
|
private tableEl;
|
|
37
|
+
private dropdownRefs;
|
|
38
|
+
private dropdownThRefs;
|
|
39
|
+
private dropdownPortals;
|
|
36
40
|
handleColumnsChange(newCols?: SdTableColumn[]): void;
|
|
41
|
+
disconnectedCallback(): void;
|
|
37
42
|
componentWillLoad(): void;
|
|
38
43
|
componentDidLoad(): void;
|
|
44
|
+
private initDropdownPortals;
|
|
39
45
|
private syncTableContext;
|
|
40
46
|
private resolveConfig;
|
|
41
47
|
/** 테이블 설정을 다시 불러옵니다. */
|
|
@@ -48,6 +54,8 @@ export declare class SdThead {
|
|
|
48
54
|
private getStickyStyle;
|
|
49
55
|
private handleResize;
|
|
50
56
|
private handleColumnSort;
|
|
57
|
+
private toggleDropdown;
|
|
58
|
+
private closeDropdown;
|
|
51
59
|
private handleSelectAll;
|
|
52
60
|
private getIsAllChecked;
|
|
53
61
|
render(): any;
|
|
@@ -419,6 +419,11 @@ export namespace Components {
|
|
|
419
419
|
* 유효성 검사를 실행합니다.
|
|
420
420
|
*/
|
|
421
421
|
"sdValidate": () => Promise<boolean>;
|
|
422
|
+
/**
|
|
423
|
+
* 닫기 버튼 표시 여부
|
|
424
|
+
* @default true
|
|
425
|
+
*/
|
|
426
|
+
"showRemove": boolean;
|
|
422
427
|
/**
|
|
423
428
|
* 칩 텍스트 값
|
|
424
429
|
* @default ''
|
|
@@ -4470,6 +4475,11 @@ declare namespace LocalJSX {
|
|
|
4470
4475
|
* @default []
|
|
4471
4476
|
*/
|
|
4472
4477
|
"rules"?: Rule[];
|
|
4478
|
+
/**
|
|
4479
|
+
* 닫기 버튼 표시 여부
|
|
4480
|
+
* @default true
|
|
4481
|
+
*/
|
|
4482
|
+
"showRemove"?: boolean;
|
|
4473
4483
|
/**
|
|
4474
4484
|
* 칩 텍스트 값
|
|
4475
4485
|
* @default ''
|
|
@@ -7132,6 +7142,7 @@ declare namespace LocalJSX {
|
|
|
7132
7142
|
"error": boolean;
|
|
7133
7143
|
"disabled": boolean;
|
|
7134
7144
|
"editable": boolean;
|
|
7145
|
+
"showRemove": boolean;
|
|
7135
7146
|
"placeholder": string;
|
|
7136
7147
|
}
|
|
7137
7148
|
interface SdChipInputAttributes {
|