@sellmate/design-system 0.0.43 → 0.0.45
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/{esm/resolveColor-BYf-ybt2.js → cjs/color-Oz29vj7L.js} +6 -14
- package/dist/cjs/color-Oz29vj7L.js.map +1 -0
- package/dist/cjs/design-system.cjs.js +1 -1
- package/dist/cjs/loader.cjs.js +1 -1
- package/dist/cjs/resolveColor-CauSLF0s.js +18 -0
- package/dist/{esm/resolveColor-BYf-ybt2.js.map → cjs/resolveColor-CauSLF0s.js.map} +1 -1
- package/dist/cjs/sd-badge.cjs.entry.js +3 -2
- package/dist/cjs/sd-badge.entry.cjs.js.map +1 -1
- package/dist/cjs/sd-button.sd-checkbox.sd-icon.sd-input.sd-loading-spinner.sd-pagination.sd-portal.sd-select.sd-select-option.sd-table-backup.sd-tooltip.sd-tooltip-portal.entry.cjs.js.map +1 -0
- package/dist/cjs/{sd-button_15.cjs.entry.js → sd-button_12.cjs.entry.js} +184 -175
- package/dist/cjs/sd-card.cjs.entry.js +1 -1
- package/dist/cjs/sd-date-picker.cjs.entry.js +1 -1
- package/dist/cjs/sd-date-range-picker.cjs.entry.js +2 -2
- package/dist/cjs/sd-guide.cjs.entry.js +85 -0
- package/dist/cjs/sd-guide.entry.cjs.js.map +1 -0
- package/dist/cjs/sd-modal-card.cjs.entry.js +56 -0
- package/dist/cjs/sd-modal-card.entry.cjs.js.map +1 -0
- package/dist/cjs/sd-popover.cjs.entry.js +2 -3
- package/dist/cjs/sd-popover.entry.cjs.js.map +1 -1
- package/dist/cjs/sd-progress.cjs.entry.js +2 -2
- package/dist/cjs/sd-select-multiple-group.cjs.entry.js +2 -2
- package/dist/cjs/sd-select-multiple.cjs.entry.js +2 -2
- package/dist/cjs/sd-select-option-group.cjs.entry.js +3 -3
- package/dist/cjs/sd-table.cjs.entry.js +242 -0
- package/dist/cjs/sd-table.entry.cjs.js.map +1 -0
- package/dist/cjs/sd-tag.cjs.entry.js +1 -1
- package/dist/cjs/sd-tbody.sd-th.sd-tr.entry.cjs.js.map +1 -0
- package/dist/cjs/sd-tbody_3.cjs.entry.js +44 -0
- package/dist/cjs/sd-td.cjs.entry.js +2 -2
- package/dist/collection/collection-manifest.json +1 -0
- package/dist/collection/components/sd-badge/sd-badge.js +1 -1
- package/dist/collection/components/sd-button/sd-button.css +6 -0
- package/dist/collection/components/sd-card/sd-card.js +1 -1
- package/dist/collection/components/sd-date-picker/sd-date-picker.js +1 -1
- package/dist/collection/components/sd-date-range-picker/sd-date-range-picker.js +2 -2
- package/dist/collection/components/sd-guide/sd-guide.css +6 -0
- package/dist/collection/components/sd-guide/sd-guide.js +25 -4
- package/dist/collection/components/sd-guide/sd-guide.js.map +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-loading-spinner/sd-loading-spinner.js +1 -1
- package/dist/collection/components/sd-modal-card/sd-modal-card.css +50 -0
- package/dist/collection/components/sd-modal-card/sd-modal-card.js +387 -0
- package/dist/collection/components/sd-modal-card/sd-modal-card.js.map +1 -0
- package/dist/collection/components/sd-pagination/sd-pagination.js +2 -17
- package/dist/collection/components/sd-pagination/sd-pagination.js.map +1 -1
- package/dist/collection/components/sd-popover/sd-popover.js +2 -3
- package/dist/collection/components/sd-popover/sd-popover.js.map +1 -1
- package/dist/collection/components/sd-portal/sd-portal.js +1 -1
- package/dist/collection/components/sd-progress/sd-progress.js +2 -2
- package/dist/collection/components/sd-select/sd-select-option/sd-select-option.js +1 -1
- package/dist/collection/components/sd-select/sd-select.js +2 -2
- package/dist/collection/components/sd-select-multiple/sd-select-multiple.js +2 -2
- package/dist/collection/components/sd-select-multiple-group/sd-select-multiple-group.js +2 -2
- package/dist/collection/components/sd-select-multiple-group/sd-select-option-group/sd-select-option-group.js +3 -3
- package/dist/collection/components/sd-table/sd-table.js +3 -3
- package/dist/collection/components/sd-table/sd-tbody/sd-tbody.js +1 -1
- package/dist/collection/components/sd-table/sd-td/sd-td.js +2 -2
- package/dist/collection/components/sd-table/sd-th/sd-th.js +1 -1
- package/dist/collection/components/sd-table/sd-tr/sd-tr.js +1 -1
- package/dist/collection/components/sd-table-backup/sd-table-backup.css +14 -0
- package/dist/collection/components/sd-table-backup/sd-table-backup.js +176 -27
- package/dist/collection/components/sd-table-backup/sd-table-backup.js.map +1 -1
- package/dist/collection/components/sd-tag/sd-tag.js +1 -1
- package/dist/collection/components/sd-tooltip/sd-tooltip.js +4 -4
- package/dist/collection/components/sd-tooltip-portal/sd-tooltip-portal.js +1 -1
- package/dist/components/{p-DdLgl05o.js → p-B6GiEilD.js} +3 -3
- package/dist/components/{p-DdLgl05o.js.map → p-B6GiEilD.js.map} +1 -1
- package/dist/components/{p-zBDALS_T.js → p-BBhUxTuK.js} +9 -9
- package/dist/components/{p-zBDALS_T.js.map → p-BBhUxTuK.js.map} +1 -1
- package/dist/components/{p-vpG6iign.js → p-BlDZogGu.js} +3 -3
- package/dist/components/{p-vpG6iign.js.map → p-BlDZogGu.js.map} +1 -1
- package/dist/components/{p-CJYeJzO3.js → p-Bn_wuPsh.js} +7 -7
- package/dist/components/{p-CJYeJzO3.js.map → p-Bn_wuPsh.js.map} +1 -1
- package/dist/components/{p-DEpODYm6.js → p-C9qV_qzP.js} +5 -18
- package/dist/components/p-C9qV_qzP.js.map +1 -0
- package/dist/components/{p-DURogU3W.js → p-CIkSynaQ.js} +3 -3
- package/dist/components/{p-DURogU3W.js.map → p-CIkSynaQ.js.map} +1 -1
- package/dist/components/{p-CXuU0Q0J.js → p-CMcI4ZlP.js} +4 -4
- package/dist/components/p-CMcI4ZlP.js.map +1 -0
- package/dist/components/{p-4n8y_ubX.js → p-Cb33bhDR.js} +3 -3
- package/dist/components/{p-4n8y_ubX.js.map → p-Cb33bhDR.js.map} +1 -1
- package/dist/components/{p-B9diVGL_.js → p-D2rvzY8X.js} +3 -3
- package/dist/components/{p-B9diVGL_.js.map → p-D2rvzY8X.js.map} +1 -1
- package/dist/components/{p-DkdbagIN.js → p-DCDoqfn8.js} +3 -3
- package/dist/components/{p-DkdbagIN.js.map → p-DCDoqfn8.js.map} +1 -1
- package/dist/components/{p-C5VIAyqc.js → p-DWfls6IE.js} +9 -9
- package/dist/components/{p-C5VIAyqc.js.map → p-DWfls6IE.js.map} +1 -1
- package/dist/components/{p-D1PUeI-N.js → p-DsXAGqf9.js} +3 -3
- package/dist/components/{p-D1PUeI-N.js.map → p-DsXAGqf9.js.map} +1 -1
- package/dist/components/{p-CrKCm3ZD.js → p-WhZES_rm.js} +5 -5
- package/dist/components/{p-CrKCm3ZD.js.map → p-WhZES_rm.js.map} +1 -1
- package/dist/components/{p-CgMn3XX-.js → p-lS2AF6uZ.js} +5 -5
- package/dist/components/{p-CgMn3XX-.js.map → p-lS2AF6uZ.js.map} +1 -1
- package/dist/components/{p-CgvMD0f4.js → p-t7JZlmXM.js} +3 -3
- package/dist/components/{p-CgvMD0f4.js.map → p-t7JZlmXM.js.map} +1 -1
- package/dist/components/sd-badge.js +1 -1
- package/dist/components/sd-button.js +1 -1
- package/dist/components/sd-card.js +1 -1
- package/dist/components/sd-checkbox.js +1 -1
- package/dist/components/sd-date-picker.js +4 -4
- package/dist/components/sd-date-range-picker.js +5 -5
- package/dist/components/sd-guide.js +10 -8
- package/dist/components/sd-guide.js.map +1 -1
- package/dist/components/sd-icon.js +1 -1
- package/dist/components/sd-input.js +1 -1
- package/dist/components/sd-loading-spinner.js +1 -1
- package/dist/components/sd-modal-card.d.ts +11 -0
- package/dist/components/sd-modal-card.js +95 -0
- package/dist/components/sd-modal-card.js.map +1 -0
- package/dist/components/sd-pagination.js +1 -1
- package/dist/components/sd-popover.js +5 -6
- package/dist/components/sd-popover.js.map +1 -1
- package/dist/components/sd-portal.js +1 -1
- package/dist/components/sd-progress.js +2 -2
- package/dist/components/sd-select-multiple-group.js +7 -7
- package/dist/components/sd-select-multiple.js +7 -7
- package/dist/components/sd-select-option-group.js +1 -1
- package/dist/components/sd-select-option.js +1 -1
- package/dist/components/sd-select.js +1 -1
- package/dist/components/sd-table-backup.js +131 -39
- package/dist/components/sd-table-backup.js.map +1 -1
- package/dist/components/sd-table.js +16 -16
- package/dist/components/sd-tag.js +1 -1
- package/dist/components/sd-tbody.js +1 -1
- package/dist/components/sd-td.js +2 -2
- package/dist/components/sd-th.js +1 -1
- package/dist/components/sd-tooltip-portal.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/p-059ca6cb.entry.js +2 -0
- package/dist/design-system/p-0d776157.entry.js +2 -0
- package/dist/design-system/p-0d776157.entry.js.map +1 -0
- package/dist/design-system/{p-da63329a.entry.js → p-3574f319.entry.js} +2 -2
- package/dist/design-system/{p-90e25920.entry.js → p-390283f7.entry.js} +2 -2
- package/dist/design-system/p-4386db36.entry.js +2 -0
- package/dist/design-system/p-4386db36.entry.js.map +1 -0
- package/dist/design-system/p-6320b9c6.entry.js +2 -0
- package/dist/design-system/{p-8b64e66b.entry.js.map → p-6320b9c6.entry.js.map} +1 -1
- package/dist/design-system/p-7b4fe5bf.entry.js +2 -0
- package/dist/design-system/p-7e8db11c.entry.js +2 -0
- package/dist/design-system/p-7e8db11c.entry.js.map +1 -0
- package/dist/design-system/p-826c6517.entry.js +2 -0
- package/dist/design-system/p-826c6517.entry.js.map +1 -0
- package/dist/design-system/{p-e76b69e2.entry.js → p-8734ded6.entry.js} +2 -2
- package/dist/design-system/p-BoLmB6pG.js +2 -0
- package/dist/design-system/{p-BYf-ybt2.js.map → p-BoLmB6pG.js.map} +1 -1
- package/dist/design-system/{p-BYf-ybt2.js → p-CgyTlXBV.js} +2 -2
- package/dist/design-system/p-CgyTlXBV.js.map +1 -0
- package/dist/design-system/{p-e1eb49de.entry.js → p-ce8fe1fd.entry.js} +2 -2
- package/dist/design-system/{p-c70b5ef1.entry.js → p-d4b5575e.entry.js} +2 -2
- package/dist/design-system/p-d4e043c5.entry.js +2 -0
- package/dist/design-system/p-d4e043c5.entry.js.map +1 -0
- package/dist/design-system/{p-2d43c3ce.entry.js → p-db0f705b.entry.js} +2 -2
- package/dist/design-system/p-de32d163.entry.js +2 -0
- package/dist/design-system/p-de32d163.entry.js.map +1 -0
- package/dist/design-system/p-f9d01bdb.entry.js +2 -0
- package/dist/design-system/p-f9d01bdb.entry.js.map +1 -0
- package/dist/design-system/sd-badge.entry.esm.js.map +1 -1
- package/dist/design-system/sd-button.sd-checkbox.sd-icon.sd-input.sd-loading-spinner.sd-pagination.sd-portal.sd-select.sd-select-option.sd-table-backup.sd-tooltip.sd-tooltip-portal.entry.esm.js.map +1 -0
- package/dist/design-system/sd-guide.entry.esm.js.map +1 -0
- package/dist/design-system/sd-modal-card.entry.esm.js.map +1 -0
- package/dist/design-system/sd-popover.entry.esm.js.map +1 -1
- package/dist/design-system/sd-table.entry.esm.js.map +1 -0
- package/dist/design-system/sd-tbody.sd-th.sd-tr.entry.esm.js.map +1 -0
- package/dist/{cjs/resolveColor-DxvExwgo.js → esm/color-CgyTlXBV.js} +4 -17
- package/dist/esm/color-CgyTlXBV.js.map +1 -0
- package/dist/esm/design-system.js +1 -1
- package/dist/esm/loader.js +1 -1
- package/dist/esm/resolveColor-CswQ9y2Q.js +16 -0
- package/dist/{cjs/resolveColor-DxvExwgo.js.map → esm/resolveColor-CswQ9y2Q.js.map} +1 -1
- package/dist/esm/sd-badge.entry.js +3 -2
- package/dist/esm/sd-badge.entry.js.map +1 -1
- package/dist/esm/sd-button.sd-checkbox.sd-icon.sd-input.sd-loading-spinner.sd-pagination.sd-portal.sd-select.sd-select-option.sd-table-backup.sd-tooltip.sd-tooltip-portal.entry.js.map +1 -0
- package/dist/esm/{sd-button_15.entry.js → sd-button_12.entry.js} +183 -171
- package/dist/esm/sd-card.entry.js +1 -1
- package/dist/esm/sd-date-picker.entry.js +1 -1
- package/dist/esm/sd-date-range-picker.entry.js +2 -2
- package/dist/esm/sd-guide.entry.js +83 -0
- package/dist/esm/sd-guide.entry.js.map +1 -0
- package/dist/esm/sd-modal-card.entry.js +54 -0
- package/dist/esm/sd-modal-card.entry.js.map +1 -0
- package/dist/esm/sd-popover.entry.js +2 -3
- package/dist/esm/sd-popover.entry.js.map +1 -1
- package/dist/esm/sd-progress.entry.js +2 -2
- package/dist/esm/sd-select-multiple-group.entry.js +2 -2
- package/dist/esm/sd-select-multiple.entry.js +2 -2
- package/dist/esm/sd-select-option-group.entry.js +3 -3
- package/dist/esm/sd-table.entry.js +240 -0
- package/dist/esm/sd-table.entry.js.map +1 -0
- package/dist/esm/sd-tag.entry.js +1 -1
- package/dist/esm/sd-tbody.sd-th.sd-tr.entry.js.map +1 -0
- package/dist/esm/sd-tbody_3.entry.js +40 -0
- package/dist/esm/sd-td.entry.js +2 -2
- package/dist/types/components/sd-guide/sd-guide.d.ts +1 -0
- package/dist/types/components/sd-modal-card/sd-modal-card.d.ts +25 -0
- package/dist/types/components/sd-pagination/sd-pagination.d.ts +0 -1
- package/dist/types/components/sd-table-backup/sd-table-backup.d.ts +15 -0
- package/dist/types/components.d.ts +129 -0
- package/hydrate/index.js +234 -85
- package/hydrate/index.mjs +234 -85
- package/package.json +2 -2
- package/dist/cjs/sd-button.sd-checkbox.sd-guide.sd-icon.sd-input.sd-pagination.sd-portal.sd-select.sd-select-option.sd-table.sd-tbody.sd-th.sd-tooltip.sd-tooltip-portal.sd-tr.entry.cjs.js.map +0 -1
- package/dist/cjs/sd-loading-spinner.cjs.entry.js +0 -18
- package/dist/cjs/sd-loading-spinner.entry.cjs.js.map +0 -1
- package/dist/cjs/sd-table-backup.cjs.entry.js +0 -278
- package/dist/cjs/sd-table-backup.entry.cjs.js.map +0 -1
- package/dist/components/p-CXuU0Q0J.js.map +0 -1
- package/dist/components/p-DEpODYm6.js.map +0 -1
- package/dist/design-system/p-34d84584.entry.js +0 -2
- package/dist/design-system/p-34d84584.entry.js.map +0 -1
- package/dist/design-system/p-5eb63212.entry.js +0 -2
- package/dist/design-system/p-66a3fe4d.entry.js +0 -2
- package/dist/design-system/p-66a3fe4d.entry.js.map +0 -1
- package/dist/design-system/p-7dbd4fe6.entry.js +0 -2
- package/dist/design-system/p-874ce442.entry.js +0 -2
- package/dist/design-system/p-874ce442.entry.js.map +0 -1
- package/dist/design-system/p-8b64e66b.entry.js +0 -2
- package/dist/design-system/p-9e5946b6.entry.js +0 -2
- package/dist/design-system/p-9e5946b6.entry.js.map +0 -1
- package/dist/design-system/p-e572253b.entry.js +0 -2
- package/dist/design-system/p-e572253b.entry.js.map +0 -1
- package/dist/design-system/sd-button.sd-checkbox.sd-guide.sd-icon.sd-input.sd-pagination.sd-portal.sd-select.sd-select-option.sd-table.sd-tbody.sd-th.sd-tooltip.sd-tooltip-portal.sd-tr.entry.esm.js.map +0 -1
- package/dist/design-system/sd-loading-spinner.entry.esm.js.map +0 -1
- package/dist/design-system/sd-table-backup.entry.esm.js.map +0 -1
- package/dist/esm/sd-button.sd-checkbox.sd-guide.sd-icon.sd-input.sd-pagination.sd-portal.sd-select.sd-select-option.sd-table.sd-tbody.sd-th.sd-tooltip.sd-tooltip-portal.sd-tr.entry.js.map +0 -1
- package/dist/esm/sd-loading-spinner.entry.js +0 -16
- package/dist/esm/sd-loading-spinner.entry.js.map +0 -1
- package/dist/esm/sd-table-backup.entry.js +0 -276
- package/dist/esm/sd-table-backup.entry.js.map +0 -1
- /package/dist/design-system/{p-5eb63212.entry.js.map → p-059ca6cb.entry.js.map} +0 -0
- /package/dist/design-system/{p-da63329a.entry.js.map → p-3574f319.entry.js.map} +0 -0
- /package/dist/design-system/{p-90e25920.entry.js.map → p-390283f7.entry.js.map} +0 -0
- /package/dist/design-system/{p-7dbd4fe6.entry.js.map → p-7b4fe5bf.entry.js.map} +0 -0
- /package/dist/design-system/{p-e76b69e2.entry.js.map → p-8734ded6.entry.js.map} +0 -0
- /package/dist/design-system/{p-e1eb49de.entry.js.map → p-ce8fe1fd.entry.js.map} +0 -0
- /package/dist/design-system/{p-c70b5ef1.entry.js.map → p-d4b5575e.entry.js.map} +0 -0
- /package/dist/design-system/{p-2d43c3ce.entry.js.map → p-db0f705b.entry.js.map} +0 -0
package/hydrate/index.js
CHANGED
|
@@ -3682,7 +3682,7 @@ class SdBadge {
|
|
|
3682
3682
|
label = '';
|
|
3683
3683
|
render() {
|
|
3684
3684
|
const resolvedColor = resolveColor(this.color);
|
|
3685
|
-
return (hAsync(Host, { key: '
|
|
3685
|
+
return (hAsync(Host, { key: 'b88fba271994742a1a1d3379db44e8a307c5a308' }, hAsync("div", { key: '961c25f3f87dc51cd670aa18706d5a5f3517f8bf', class: `sd-badge sd-badge--${this.size}`, style: { '--sd-badge-color': resolvedColor } }, hAsync("div", { key: '2de1b86cc1e714a436cb2d2810b2646a2ac4fd7c', class: "sd-badge__dot" }), hAsync("div", { key: '89943a046b33c105155236a7e0b411dfbcd72487', class: "sd-badge__label" }, this.label))));
|
|
3686
3686
|
}
|
|
3687
3687
|
static get style() { return sdBadgeCss; }
|
|
3688
3688
|
static get cmpMeta() { return {
|
|
@@ -3699,7 +3699,7 @@ class SdBadge {
|
|
|
3699
3699
|
}; }
|
|
3700
3700
|
}
|
|
3701
3701
|
|
|
3702
|
-
const sdButtonCss = ".sd-button{text-decoration:none;cursor:pointer;border-radius:4px;transition:all 0.2s ease-in-out;position:relative;overflow:hidden;white-space:nowrap;-webkit-user-select:none;user-select:none;box-sizing:border-box;display:inline-flex;align-items:center;justify-content:center}.sd-button--xs{padding:0 8px;font-size:12px;font-weight:500;line-height:20px;min-height:24px}.sd-button--sm{padding:0 12px;font-size:12px;font-weight:500;line-height:20px;min-height:28px}.sd-button--md{padding:0 20px;font-size:16px;font-weight:500;line-height:26px;min-height:34px}.sd-button--lg{padding:0 28px;font-size:18px;font-weight:500;line-height:30px;min-height:62px}.sd-button--primary{background-color:var(--button-color);color:white;transition:filter 0.2s ease}.sd-button--primary::before{content:\"\";position:absolute;inset:0;background:#000000;opacity:0;transition:opacity 0.2s ease;z-index:0}.sd-button--primary:hover:not(.sd-button--disabled):not(.sd-button--loading)::before{opacity:0.25}.sd-button--outline{background:white;border:1px solid var(--button-color);color:var(--button-color)}.sd-button--outline::before{content:\"\";position:absolute;inset:0;background:var(--button-color);opacity:0;transition:opacity 0.2s ease;z-index:0}.sd-button--outline:hover:not(.sd-button--disabled):not(.sd-button--loading)::before{opacity:0.15}.sd-button--outline .sd-button__content{position:relative;z-index:1}.sd-button--ghost{background-color:transparent;color:var(--button-color);border-color:transparent}.sd-button--ghost::before{content:\"\";position:absolute;inset:0;background:var(--button-color);opacity:0;transition:opacity 0.2s ease;z-index:0}.sd-button--ghost:hover:not(.sd-button--disabled):not(.sd-button--loading)::before{opacity:0.15}.sd-button--ghost .sd-button__content{position:relative;z-index:1}.sd-button--disabled{border:1px solid #cccccc;background:#e1e1e1;color:#888888;cursor:not-allowed !important}.sd-button--icon-only{padding:0;width:fit-content;height:fit-content;aspect-ratio:1/1}.sd-button--no-hover:hover::before{opacity:0 !important}.sd-button .sd-button__content{display:inline-flex;align-items:center;justify-content:center;gap:4px;z-index:1;font-weight:500}";
|
|
3702
|
+
const sdButtonCss = "sd-button{display:inline-block;width:fit-content;height:fit-content}.sd-button{text-decoration:none;cursor:pointer;border-radius:4px;transition:all 0.2s ease-in-out;position:relative;overflow:hidden;white-space:nowrap;-webkit-user-select:none;user-select:none;box-sizing:border-box;display:inline-flex;align-items:center;justify-content:center}.sd-button--xs{padding:0 8px;font-size:12px;font-weight:500;line-height:20px;min-height:24px}.sd-button--sm{padding:0 12px;font-size:12px;font-weight:500;line-height:20px;min-height:28px}.sd-button--md{padding:0 20px;font-size:16px;font-weight:500;line-height:26px;min-height:34px}.sd-button--lg{padding:0 28px;font-size:18px;font-weight:500;line-height:30px;min-height:62px}.sd-button--primary{background-color:var(--button-color);color:white;transition:filter 0.2s ease}.sd-button--primary::before{content:\"\";position:absolute;inset:0;background:#000000;opacity:0;transition:opacity 0.2s ease;z-index:0}.sd-button--primary:hover:not(.sd-button--disabled):not(.sd-button--loading)::before{opacity:0.25}.sd-button--outline{background:white;border:1px solid var(--button-color);color:var(--button-color)}.sd-button--outline::before{content:\"\";position:absolute;inset:0;background:var(--button-color);opacity:0;transition:opacity 0.2s ease;z-index:0}.sd-button--outline:hover:not(.sd-button--disabled):not(.sd-button--loading)::before{opacity:0.15}.sd-button--outline .sd-button__content{position:relative;z-index:1}.sd-button--ghost{background-color:transparent;color:var(--button-color);border-color:transparent}.sd-button--ghost::before{content:\"\";position:absolute;inset:0;background:var(--button-color);opacity:0;transition:opacity 0.2s ease;z-index:0}.sd-button--ghost:hover:not(.sd-button--disabled):not(.sd-button--loading)::before{opacity:0.15}.sd-button--ghost .sd-button__content{position:relative;z-index:1}.sd-button--disabled{border:1px solid #cccccc;background:#e1e1e1;color:#888888;cursor:not-allowed !important}.sd-button--icon-only{padding:0;width:fit-content;height:fit-content;aspect-ratio:1/1}.sd-button--no-hover:hover::before{opacity:0 !important}.sd-button .sd-button__content{display:inline-flex;align-items:center;justify-content:center;gap:4px;z-index:1;font-weight:500}";
|
|
3703
3703
|
|
|
3704
3704
|
const ICON_SIZES = {
|
|
3705
3705
|
xs: 12,
|
|
@@ -3789,7 +3789,7 @@ class SdCard {
|
|
|
3789
3789
|
bordered = true;
|
|
3790
3790
|
class = '';
|
|
3791
3791
|
render() {
|
|
3792
|
-
return (hAsync(Host, { key: '
|
|
3792
|
+
return (hAsync(Host, { key: 'b39b016a66f0df13d09ff3a1ce453bb5eda23b52' }, hAsync("div", { key: '2a22dcc5ede4067ecbb2bbbe985d95ffaee3a3a6', class: `sd-card ${this.bordered ? 'sd-card--bordered' : ''} ${this.class}` }, hAsync("slot", { key: 'f73cae0097be43bcd666ade2db27c585090eca75' }))));
|
|
3793
3793
|
}
|
|
3794
3794
|
static get style() { return sdCardCss; }
|
|
3795
3795
|
static get cmpMeta() { return {
|
|
@@ -4100,7 +4100,7 @@ class SdDatePicker {
|
|
|
4100
4100
|
this.isOpen = false;
|
|
4101
4101
|
};
|
|
4102
4102
|
render() {
|
|
4103
|
-
return (hAsync(Host, { key: '
|
|
4103
|
+
return (hAsync(Host, { key: '67bc480db5e0f16fa5af8bd75b6dde76d457b4dd', class: "sd-date-picker" }, hAsync("sd-input", { key: 'd31e41161179efb1b961ea00f7333b048e43467a', ref: el => (this.inputEl = el), value: this.date, label: this.label, "inside-label": true, readonly: true, disabled: this.disabled, inputClass: "text-center", onClick: () => this.openMenu() }, hAsync("sd-icon", { key: '1a3c2d291628a00d217a0b20ddeb38d8590706f7', slot: "prefix", name: "date", size: "16", color: "#737373", class: "date-icon", onClick: () => this.openMenu() })), this.isOpen && (hAsync("sd-portal", { key: '85b52726ad96ed74cb42e1eda4e014eb8095face', open: this.isOpen, parentRef: this.inputEl, onSdClose: this.handleClose }, hAsync("div", { key: 'e398ac0094ef23907b7d3a7f88b37587207ade33', class: "sd-date-picker__menu" }, hAsync("div", { key: '328de8581f0cb895bb3e6e3758a7adedbad302de', class: "sd-date-picker__header" }, hAsync("div", { key: '633feae88e423ffa6fa6eb6841a937be3558ccc5', class: "year-nav" }, hAsync("button", { key: '89c3d4593c0a2c2917003a93ac1ff0176c611d72', type: "button", name: "prev-year", title: "Previous Year", onClick: () => this.setCurrentYear(this.currentYear - 1) }, hAsync("sd-icon", { key: '140655e36c73784f4704a51a89c79ae72d237218', name: "arrowLeft", size: "12", color: "#CCCCCC" })), hAsync("span", { key: '3917a8caec91a855b9bf6f42b3c8e856d490817a', class: "year-nav__current" }, this.currentYear), hAsync("button", { key: 'b5a7e7903594482bff30c72afaca8609b04f8aea', type: "button", name: "next-year", title: "Next Year", onClick: () => this.setCurrentYear(this.currentYear + 1) }, hAsync("sd-icon", { key: '49364c66f35a9a5e724644963f3ab276245241af', name: "arrowRight", size: "12", color: "#CCCCCC" }))), hAsync("div", { key: '153ee788090ed23b32cec5f660eeda741076b2a6', class: "month-nav" }, hAsync("button", { key: '33f7a059d08bd761cc6ca083f5fd1980017e3f2d', type: "button", name: "prev-month", title: "Previous ", onClick: () => this.handleUpdateMonth('prev') }, hAsync("sd-icon", { key: 'c641505d42a0683bea0e6b7a3db9cf6352a78d4d', name: "arrowLeft", size: "12", color: "#CCCCCC" })), hAsync("span", { key: '5fb032ee2040e4abd333dc640c3998e3288662f2', class: "month-nav__current" }, this.currentMonth, "\uC6D4"), hAsync("button", { key: 'da13b27ba6f74fae110383e294be1d01e0d74eb1', type: "button", name: "next-month", title: "Next Month", onClick: () => this.handleUpdateMonth('next') }, hAsync("sd-icon", { key: '223b006490c3f3a3d6d7036115da2b88e801dca7', name: "arrowRight", size: "12", color: "#CCCCCC" })))), hAsync("div", { key: '1251dd00b4cb02ebddaf1aa93e1fc8a351bee10f', class: "sd-date-picker__days" }, ['일', '월', '화', '수', '목', '금', '토'].map(day => (hAsync("div", { key: day, class: "day" }, day)))), hAsync("div", { key: '474772b41df806093a4e578b67420adb6a973018', class: "sd-date-picker__body" }, [
|
|
4104
4104
|
...this.calendar.prevMonthDays,
|
|
4105
4105
|
...this.calendar.days,
|
|
4106
4106
|
...this.calendar.afterMonthDays,
|
|
@@ -4273,9 +4273,9 @@ class SdDateRangePicker {
|
|
|
4273
4273
|
this.isOpen = false;
|
|
4274
4274
|
};
|
|
4275
4275
|
render() {
|
|
4276
|
-
return (hAsync(Host, { key: '
|
|
4276
|
+
return (hAsync(Host, { key: '01d8def2e141ae3767fb57880482845a5bfcc6ca', class: "sd-date-range-picker" }, hAsync("sd-input", { key: 'f3738314482ac84517958672d2f75cdc7cd6d354', ref: el => (this.inputEl = el), value: `${this.dateRange[0]} ~ ${this.dateRange[1]}`, label: this.label, "inside-label": true, readonly: true, disabled: this.disabled, inputClass: "text-center", inputStyle: {
|
|
4277
4277
|
margin: '0 0 0 8px',
|
|
4278
|
-
}, onClick: () => this.openMenu() }, hAsync("sd-icon", { key: '
|
|
4278
|
+
}, onClick: () => this.openMenu() }, hAsync("sd-icon", { key: '2ca7e4428256374866a74bf550fd7fc825fca4c1', slot: "prefix", name: "date", size: "16", color: "#737373", class: "date-icon", onClick: () => this.openMenu() })), this.isOpen && (hAsync("sd-portal", { key: '381b44e43ed021a1200854e445f113e02112b21b', open: this.isOpen, parentRef: this.inputEl, onSdClose: this.handleClose }, hAsync("div", { key: '47f31a5136e236899ac861cdd66a0424ed9507ee', class: "sd-date-range-picker__menu" }, hAsync("div", { key: '3c5c4050f4ea36e93b7cc02e0935f3898bca7523', class: "sd-date-range-picker__header mb-16pxr flex flex-nowrap items-center justify-center" }, hAsync("button", { key: 'b5ddf46fbc15290df316697c99502a07499452fb', type: "button", name: "prev", title: "Previous", onClick: () => this.setPrevYear(this.prevYear - 1) }, hAsync("sd-icon", { key: 'fded6383fd7a90e80cba1b222a334764bcd1f4c2', name: "arrowLeft", size: "12", color: "#CCCCCC" })), hAsync("div", { key: 'b8408d970c42fc373b5300ce91887010e78c29f9', class: "header-label" }, this.prevYear), hAsync("button", { key: 'bc4c97952e8ae30ad685de8f966e5b0445e5f6a0', type: "button", name: "next", title: "Next", onClick: () => this.setPrevYear(this.prevYear + 1) }, hAsync("sd-icon", { key: '7dff57a2d3c44a810ab078c9418155dbadb7988d', name: "arrowRight", size: "12", color: "#CCCCCC" }))), hAsync("div", { key: '9c43dd586c0f702490093204c06102186cf27ebe', class: "sd-date-range-picker__body" }, [this.prevCalendar, this.nextCalendar].map((calendar, index) => (hAsync(Fragment, null, index === 1 && hAsync("div", { class: "separator" }), hAsync("div", { key: index, class: "calendar-container" }, hAsync("div", { class: "calendar-header" }, hAsync("button", { type: "button", name: "month", title: "Month", class: index === 0 ? 'header-button-prev' : 'header-button-next', onClick: () => this.updateYearMonth(index === 0 ? 'prev' : 'next') }, hAsync("sd-icon", { name: index === 0 ? 'arrowLeft' : 'arrowRight', size: "12", color: "#CCCCCC" })), index === 0
|
|
4279
4279
|
? `${this.prevYear}.${String(this.prevMonth).padStart(2, '0')}`
|
|
4280
4280
|
: `${this.nextYear}.${String(this.nextMonth).padStart(2, '0')}`), hAsync("div", { class: "calendar-days" }, ['일', '월', '화', '수', '목', '금', '토'].map(day => (hAsync("sd-date-box", { key: day, date: day, disabled: true, class: "day" })))), hAsync("div", { class: "calendar-body mt-12pxr grid grid-cols-7 gap-y-8pxr" }, [...calendar.prevMonthDays, ...calendar.days, ...calendar.afterMonthDays].map((day, idx) => (hAsync("sd-date-box", { key: `prev${day}_${idx}`, date: !day ? '' : Number(day), selected: this.dateRange.some(date => date ===
|
|
4281
4281
|
this.dateUtil.formatDate(index === 0 ? this.prevYear : this.nextYear, index === 0 ? this.prevMonth : this.nextMonth, Number(day))), type: this.getDateBoxType(this.dateUtil.formatDate(index === 0 ? this.prevYear : this.nextYear, index === 0 ? this.prevMonth : this.nextMonth, Number(day))), isToday: today ===
|
|
@@ -4305,13 +4305,13 @@ class SdDateRangePicker {
|
|
|
4305
4305
|
}; }
|
|
4306
4306
|
}
|
|
4307
4307
|
|
|
4308
|
-
const sdGuideCss = "@charset \"UTF-8\"
|
|
4308
|
+
const sdGuideCss = "@charset \"UTF-8\";sd-button{display:inline-block;width:fit-content;height:fit-content}.sd-button{text-decoration:none;cursor:pointer;border-radius:4px;transition:all 0.2s ease-in-out;position:relative;overflow:hidden;white-space:nowrap;-webkit-user-select:none;user-select:none;box-sizing:border-box;display:inline-flex;align-items:center;justify-content:center}.sd-button--xs{padding:0 8px;font-size:12px;font-weight:500;line-height:20px;min-height:24px}.sd-button--sm{padding:0 12px;font-size:12px;font-weight:500;line-height:20px;min-height:28px}.sd-button--md{padding:0 20px;font-size:16px;font-weight:500;line-height:26px;min-height:34px}.sd-button--lg{padding:0 28px;font-size:18px;font-weight:500;line-height:30px;min-height:62px}.sd-button--primary{background-color:var(--button-color);color:white;transition:filter 0.2s ease}.sd-button--primary::before{content:\"\";position:absolute;inset:0;background:#000000;opacity:0;transition:opacity 0.2s ease;z-index:0}.sd-button--primary:hover:not(.sd-button--disabled):not(.sd-button--loading)::before{opacity:0.25}.sd-button--outline{background:white;border:1px solid var(--button-color);color:var(--button-color)}.sd-button--outline::before{content:\"\";position:absolute;inset:0;background:var(--button-color);opacity:0;transition:opacity 0.2s ease;z-index:0}.sd-button--outline:hover:not(.sd-button--disabled):not(.sd-button--loading)::before{opacity:0.15}.sd-button--outline .sd-button__content{position:relative;z-index:1}.sd-button--ghost{background-color:transparent;color:var(--button-color);border-color:transparent}.sd-button--ghost::before{content:\"\";position:absolute;inset:0;background:var(--button-color);opacity:0;transition:opacity 0.2s ease;z-index:0}.sd-button--ghost:hover:not(.sd-button--disabled):not(.sd-button--loading)::before{opacity:0.15}.sd-button--ghost .sd-button__content{position:relative;z-index:1}.sd-button--disabled{border:1px solid #cccccc;background:#e1e1e1;color:#888888;cursor:not-allowed !important}.sd-button--icon-only{padding:0;width:fit-content;height:fit-content;aspect-ratio:1/1}.sd-button--no-hover:hover::before{opacity:0 !important}.sd-button .sd-button__content{display:inline-flex;align-items:center;justify-content:center;gap:4px;z-index:1;font-weight:500}sd-guide{display:inline-block;height:fit-content}sd-guide .sd-guide{display:inline-block}sd-guide .sd-guide .sd-button{padding:0 16px 0 12px;border-radius:16px;color:#333333 !important;display:flex;align-items:center;transition:none}sd-guide .sd-guide .sd-button .sd-button__content{color:#333333 !important}sd-guide .sd-guide .sd-button .sd-button__content .sd-button__label{color:#333333 !important;margin-left:4px}sd-guide .sd-guide--active .sd-button{border:1px solid #12b553}sd-guide .sd-guide--active .sd-button .sd-button__content .sd-button__label{color:white !important}.sd-guide__popup{position:relative;padding:20px 32px;border-radius:8px;box-shadow:4px 4px 24px 4px rgba(0, 0, 0, 0.1);background:white}.sd-guide__popup>.sd-guide__popup__close{position:absolute;top:12px;right:12px}.sd-guide__popup__header{display:flex;align-items:center;gap:8px;margin-bottom:12px}.sd-guide__popup__header .sd-guide__popup__title{margin-top:0;font-size:16px;font-weight:700;line-height:26px;color:#333333}.sd-guide__popup__list{width:100%;padding:0;margin:0}.sd-guide__popup__list__item{display:flex;width:100%;align-items:start;list-style:none;color:#333333;font-size:12px;font-weight:400}.sd-guide__popup__list__item p{width:100%;padding:0;margin:0;word-wrap:break-word;word-break:break-word;white-space:normal;overflow-wrap:break-word;min-width:0}.sd-guide__popup__list__item::before{display:block;content:\"-\";width:6px;color:#333333;font-size:12px;font-weight:400;margin-left:10px;margin-right:12px;flex-shrink:0}.sd-guide__popup__list__item--depth-2::before{content:\"•\"}.sd-guide__popup__list__item--depth-2{padding-left:26px}";
|
|
4309
4309
|
|
|
4310
4310
|
const GUIDE_LABEL = {
|
|
4311
4311
|
help: '활용 TIP',
|
|
4312
4312
|
pdf: 'PDF Guide',
|
|
4313
4313
|
youtube: 'Video Guide',
|
|
4314
|
-
notion: '
|
|
4314
|
+
notion: '사용법 안내',
|
|
4315
4315
|
event: 'Event Button',
|
|
4316
4316
|
};
|
|
4317
4317
|
const GUIDE_ICON = {
|
|
@@ -4334,6 +4334,7 @@ class SdGuide {
|
|
|
4334
4334
|
label = '';
|
|
4335
4335
|
message = '';
|
|
4336
4336
|
guideUrl = '';
|
|
4337
|
+
popupTitle = '';
|
|
4337
4338
|
popupWidth;
|
|
4338
4339
|
popupShow = false;
|
|
4339
4340
|
guideRef;
|
|
@@ -4357,11 +4358,11 @@ class SdGuide {
|
|
|
4357
4358
|
};
|
|
4358
4359
|
render() {
|
|
4359
4360
|
const { name: iconName, size: iconSize, color: iconColor } = GUIDE_ICON[this.type];
|
|
4360
|
-
return (hAsync(Host, { key: '
|
|
4361
|
+
return (hAsync(Host, { key: '8de1cc4591dd1294a374421965322d6a958c9797', style: {
|
|
4361
4362
|
'--sd-guide-color': GUIDE_ICON[this.type].color,
|
|
4362
|
-
} }, hAsync("sd-button", { key: '
|
|
4363
|
+
} }, hAsync("sd-button", { key: '8dc820b941d8e3003f2440a4fa1ccd36be0a854e', ref: el => (this.guideRef = el), class: this.guideClass, variant: this.popupShow ? 'primary' : 'outline', label: this.label || GUIDE_LABEL[this.type], size: "sm", color: this.popupShow ? GUIDE_ICON[this.type].color : 'grey_45', icon: iconName, iconColor: this.popupShow ? 'white' : iconColor, iconSize: iconSize, noHover: this.popupShow, onSdClick: this.handleClickGuide }), this.type === 'help' && this.popupShow && (hAsync("sd-portal", { key: 'd8cbafa686da33b2ced3a00fe13f673ebab247e5', open: this.popupShow, parentRef: this.guideRef, onSdClose: this.closeDropdown, offset: [0, 4] }, hAsync("div", { key: 'f5048c842dcec0414ee747f69c2033b688ba1672', class: "sd-guide__popup", style: { width: this.popupWidth ? this.popupWidth + 'px' : '426px' } }, hAsync("sd-button", { key: 'a7cb87e50b7b9ff3a40742cd4881ac8c413f18a5', class: "sd-guide__popup__close", icon: "close", color: colors$1.grey_65, size: "md", variant: "ghost", noHover: true,
|
|
4363
4364
|
// buttonStyle={{ padding: '0px', minHeight: '0px' }}
|
|
4364
|
-
onSdClick: this.closeDropdown }), hAsync("div", { key: '
|
|
4365
|
+
onSdClick: this.closeDropdown }), hAsync("div", { key: 'dd2a7ceeb8fa28c2d430a2d10778b87db5bc576d', class: "sd-guide__popup__header" }, hAsync("sd-icon", { key: '40ccb8d9fc31c7f0c68ce4fd8aacbfdf7e4cf4dc', name: "helpOutline", size: 24, color: colors$1.green_65 }), hAsync("h3", { key: '55726b9de8d9cd996154700ffb0c5178face6916', class: "sd-guide__popup__title" }, this.popupTitle || GUIDE_LABEL[this.type])), hAsync("ul", { key: '3221ed8367735883cb65c8ab66b63d977eae24dd', class: "sd-guide__popup__list" }, this.renderListItem(this.message)))))));
|
|
4365
4366
|
}
|
|
4366
4367
|
// 현재 2depth까지만 스타일 적용
|
|
4367
4368
|
renderListItem(message, depth = 0) {
|
|
@@ -4388,6 +4389,7 @@ class SdGuide {
|
|
|
4388
4389
|
"label": [1],
|
|
4389
4390
|
"message": [1],
|
|
4390
4391
|
"guideUrl": [1, "guide-url"],
|
|
4392
|
+
"popupTitle": [1, "popup-title"],
|
|
4391
4393
|
"popupWidth": [2, "popup-width"],
|
|
4392
4394
|
"popupShow": [32]
|
|
4393
4395
|
},
|
|
@@ -6406,7 +6408,7 @@ class SdIcon {
|
|
|
6406
6408
|
}
|
|
6407
6409
|
render() {
|
|
6408
6410
|
const IconComponent = Icons[this.name]?.[this.size];
|
|
6409
|
-
return (hAsync("i", { key: '
|
|
6411
|
+
return (hAsync("i", { key: '738453a8bc8d1b9bb67fbaaffb7de203c2982c30', class: this.getIconClasses(), style: this.iconStyle }, hAsync(IconComponent, { key: '2f970609756be608b660a522949dd79cca64fcc8', color: this.resolvedColor })));
|
|
6410
6412
|
}
|
|
6411
6413
|
static get style() { return sdIconCss; }
|
|
6412
6414
|
static get cmpMeta() { return {
|
|
@@ -6526,11 +6528,11 @@ class SdInput {
|
|
|
6526
6528
|
'--input-width': typeof this.width === 'number' ? `${this.width}px` : this.width,
|
|
6527
6529
|
}
|
|
6528
6530
|
: {};
|
|
6529
|
-
return (hAsync(Host, { key: '
|
|
6531
|
+
return (hAsync(Host, { key: '87a102220530a2e06620619967f1925f193b4794', style: inputWidth }, this.label && hAsync("div", { key: 'dec1ef5b27dadc7b2c6c0e9f5dab978b338b5a45', class: "sd-input__label" }, this.label), hAsync("label", { key: '72ba8b8b0019fd1bfc222207df4b42735457873d', class: {
|
|
6530
6532
|
'sd-input': true,
|
|
6531
6533
|
[this.getInputStatus()]: true,
|
|
6532
6534
|
'sd-input--barcode': !!this.barcode,
|
|
6533
|
-
}, onMouseEnter: () => (this.hovered = true), onMouseLeave: () => (this.hovered = false), style: this.inputStyle }, hAsync("slot", { key: '
|
|
6535
|
+
}, onMouseEnter: () => (this.hovered = true), onMouseLeave: () => (this.hovered = false), style: this.inputStyle }, hAsync("slot", { key: '7745177f5638351670adb3610325d44df156826e', name: "prefix" }), hAsync("input", { key: '976949537b8071a409d94e93f803128946d73d48', ref: el => (this.nativeEl = el), class: `sd-input__native_element ${this.inputClass}`, type: "text", value: this.internalValue || '', placeholder: this.placeholder, disabled: this.disabled, readonly: this.readonly, autofocus: this.autoFocus, onInput: this.handleInput, onChange: this.handleChange, onFocus: event => this.handleFocus('focus', event), onBlur: event => this.handleFocus('blur', event) }), hAsync("slot", { key: 'b62387e0c2122cfb9f5599a108d54682df59fef6', name: "suffix" }), this.clearable && this.internalValue && (hAsync("sd-icon", { key: 'b860d9c2387adf97d7317bba550b169ac9f4ac49', name: "close", color: "#888", class: "sd-input__clear-icon", onClick: () => {
|
|
6534
6536
|
this.internalValue = '';
|
|
6535
6537
|
this.sdChange?.emit(this.internalValue);
|
|
6536
6538
|
this.sdInput?.emit(this.internalValue);
|
|
@@ -6577,7 +6579,7 @@ class SdLoadingSpinner {
|
|
|
6577
6579
|
registerInstance(this, hostRef);
|
|
6578
6580
|
}
|
|
6579
6581
|
render() {
|
|
6580
|
-
return (hAsync(Host, { key: '
|
|
6582
|
+
return (hAsync(Host, { key: '54446b42c83eff572c2d0d63c367a7e407d722a5' }, hAsync("svg", { key: '92ad1f0446dc5912a656512d09ab4b8b3b262156', class: "sd-loading-spinner text-positive", width: "72px", height: "72px", viewBox: "25 25 50 50" }, hAsync("circle", { key: 'b9b0c2ea5233fb5f5c784d0262c6ba526dc00622', class: "path", cx: "50", cy: "50", r: "20", fill: "none", stroke: "currentColor", "stroke-width": "5", "stroke-miterlimit": "10" }))));
|
|
6581
6583
|
}
|
|
6582
6584
|
static get style() { return sdLoadingSpinnerCss; }
|
|
6583
6585
|
static get cmpMeta() { return {
|
|
@@ -6590,6 +6592,71 @@ class SdLoadingSpinner {
|
|
|
6590
6592
|
}; }
|
|
6591
6593
|
}
|
|
6592
6594
|
|
|
6595
|
+
const sdModalCardCss = "sd-modal-card{display:block}sd-modal-card .sd-modal-card{position:relative;padding:40px 32px;border-radius:8px;box-shadow:4px 4px 24px 4px rgba(0, 0, 0, 0.2)}sd-modal-card .sd-modal-card__close-button{position:absolute;top:16px;right:16px;cursor:pointer}sd-modal-card .sd-modal-card sd-icon.sd-modal-card__icon{display:block;width:32px;height:32px;margin:0 auto 12px auto}sd-modal-card .sd-modal-card__title{color:var(--point-color);font-size:18px;font-weight:700;line-height:30px;text-align:center;margin:0 0 20px 0}sd-modal-card .sd-modal-card__message{color:#222222;font-weight:400;font-size:12px;line-height:22px;text-align:center;margin:0}sd-modal-card .sd-modal-card__button-container{display:flex;margin:32px auto 0 auto;justify-content:center;align-items:center;gap:8px}sd-modal-card .sd-modal-card__button-container.flex-column{flex-direction:column}sd-modal-card .sd-modal-card__button-container button.sd-modal-card__button{width:89px}";
|
|
6596
|
+
|
|
6597
|
+
class SdModalCard {
|
|
6598
|
+
constructor(hostRef) {
|
|
6599
|
+
registerInstance(this, hostRef);
|
|
6600
|
+
this.sdClose = createEvent(this, "sdClose");
|
|
6601
|
+
this.sdConfirm = createEvent(this, "sdConfirm");
|
|
6602
|
+
}
|
|
6603
|
+
type = 'info';
|
|
6604
|
+
system = 'normal';
|
|
6605
|
+
useCloseButton = true;
|
|
6606
|
+
modalTitle = 'normal';
|
|
6607
|
+
buttonFlexDirection = 'row';
|
|
6608
|
+
buttonProps = [
|
|
6609
|
+
{
|
|
6610
|
+
label: '확인',
|
|
6611
|
+
color: 'grey_80',
|
|
6612
|
+
size: 'md',
|
|
6613
|
+
},
|
|
6614
|
+
];
|
|
6615
|
+
message = [];
|
|
6616
|
+
modalClass = '';
|
|
6617
|
+
sdClose;
|
|
6618
|
+
sdConfirm;
|
|
6619
|
+
get pointColor() {
|
|
6620
|
+
if (this.type !== 'normal') {
|
|
6621
|
+
return 'grey_95';
|
|
6622
|
+
}
|
|
6623
|
+
switch (this.system) {
|
|
6624
|
+
case 'positive':
|
|
6625
|
+
return resolveColor('brilliantblue_75');
|
|
6626
|
+
case 'negative':
|
|
6627
|
+
return resolveColor('red_75');
|
|
6628
|
+
default:
|
|
6629
|
+
return resolveColor('grey_95');
|
|
6630
|
+
}
|
|
6631
|
+
}
|
|
6632
|
+
get getModalClass() {
|
|
6633
|
+
let modalClass = `sd-modal-card ${this.modalClass}`;
|
|
6634
|
+
modalClass += ' ' + `sd-modal-card-${this.system}`;
|
|
6635
|
+
return modalClass;
|
|
6636
|
+
}
|
|
6637
|
+
render() {
|
|
6638
|
+
return (hAsync(Host, { key: 'a7b84787e02fd73d3df5af58011b92bd70bf5418', style: { '--point-color': this.pointColor } }, hAsync("div", { key: 'ee1e08e2dca1c4192bbdf21cba148a1ad72459e1', class: this.getModalClass }, this.useCloseButton && (hAsync("sd-icon", { key: 'ec9aad87db22a57f01326db6fac695eb2d4617ad', class: "sd-modal-card__close-button", name: "close", size: "20", color: "grey_65", onClick: () => this.sdClose.emit() })), this.type !== 'normal' && (hAsync("sd-icon", { key: 'ccf36cbb5ef0a793d422cee2312d338436bd6d61', class: "sd-modal-card__icon", name: this.type === 'info' ? 'notificationOutline' : 'warningOutline', size: "32", color: this.type === 'info' ? 'brilliantblue_75' : 'red_75' })), hAsync("h2", { key: '9d1e9f949bc75697960d2c44667f7cad52d976c4', class: "sd-modal-card__title" }, this.modalTitle), hAsync("slot", { key: 'f2b75146e58d78ac8431a1549068e9a219be4506' }, hAsync("div", { key: '75d035874b34f388c3c6acb60f4a90dae46ff7e6', class: `sd-modal-card__message-container` }, this.message.map(msg => (hAsync("p", { class: "sd-modal-card__message" }, msg))))), hAsync("div", { key: '39f99159776d7c107b2b3410e5681a67766b2ce8', class: `sd-modal-card__button-container flex-${this.buttonFlexDirection}` }, this.buttonProps.map(button => (hAsync("sd-button", { class: 'sd-modal-card__button', variant: button.variant ? button.variant : 'outline', label: button.label, color: button.color, size: button.size, onClick: () => !button.type || button.type === 'confirm' ? this.sdConfirm.emit() : this.sdClose.emit(), ...(button.class && { class: button.class }) })))))));
|
|
6639
|
+
}
|
|
6640
|
+
static get style() { return sdModalCardCss; }
|
|
6641
|
+
static get cmpMeta() { return {
|
|
6642
|
+
"$flags$": 772,
|
|
6643
|
+
"$tagName$": "sd-modal-card",
|
|
6644
|
+
"$members$": {
|
|
6645
|
+
"type": [1],
|
|
6646
|
+
"system": [1],
|
|
6647
|
+
"useCloseButton": [4, "use-close-button"],
|
|
6648
|
+
"modalTitle": [1, "modal-title"],
|
|
6649
|
+
"buttonFlexDirection": [1, "button-flex-direction"],
|
|
6650
|
+
"buttonProps": [16],
|
|
6651
|
+
"message": [16],
|
|
6652
|
+
"modalClass": [1, "modal-class"]
|
|
6653
|
+
},
|
|
6654
|
+
"$listeners$": undefined,
|
|
6655
|
+
"$lazyBundleId$": "-",
|
|
6656
|
+
"$attrsToReflect$": []
|
|
6657
|
+
}; }
|
|
6658
|
+
}
|
|
6659
|
+
|
|
6593
6660
|
const sdPaginationCss = ".sd-pagination{display:flex;flex-flow:row nowrap;align-items:center;justify-content:center;gap:8px;color:#555555;width:100%;font-size:12px}.sd-pagination .prepend-btns{display:flex;flex-flow:row nowrap;align-items:center;gap:8px;width:60px}.sd-pagination .prepend-btns button{width:26px;height:26px;border:0;background:none}.sd-pagination .prepend-btns button:hover{border:1px solid #006ac1;border-radius:14px}.sd-pagination .append-btns{display:flex;flex-flow:row nowrap;align-items:center;gap:8px;width:60px}.sd-pagination .append-btns button{width:26px;height:26px;border:0;background:none}.sd-pagination .append-btns button:hover{border:1px solid #006ac1;border-radius:14px}.sd-pagination .pagination-btn{display:flex;align-items:center;justify-content:center;border-radius:14px;outline:none;border:none;cursor:pointer;height:26px;color:#555555;width:var(--pagination-btn-width, 26px)}.sd-pagination .pagination-btn--selected{background-color:#006ac1;color:white}.sd-pagination .pagination-btn:hover{border:1px solid #006ac1}.sd-pagination--simple .pagination-info{line-height:26px;display:flex;flex-flow:row nowrap;align-items:center;gap:8px}.sd-pagination--simple .pagination-info .current-page,.sd-pagination--simple .pagination-info .last-page{padding:0 2px}";
|
|
6594
6661
|
|
|
6595
6662
|
const BUTTON_WIDTH = {
|
|
@@ -6609,12 +6676,6 @@ class SdPagination {
|
|
|
6609
6676
|
lastPage = 1;
|
|
6610
6677
|
simple = false;
|
|
6611
6678
|
pageChange;
|
|
6612
|
-
onPropChange() {
|
|
6613
|
-
console.log('Pagination props changed', {
|
|
6614
|
-
currentPage: this.currentPage,
|
|
6615
|
-
lastPage: this.lastPage,
|
|
6616
|
-
});
|
|
6617
|
-
}
|
|
6618
6679
|
get paginationClasses() {
|
|
6619
6680
|
const classes = ['sd-pagination'];
|
|
6620
6681
|
if (this.simple) {
|
|
@@ -6670,17 +6731,13 @@ class SdPagination {
|
|
|
6670
6731
|
}
|
|
6671
6732
|
}
|
|
6672
6733
|
render() {
|
|
6673
|
-
return (hAsync("div", { key: '
|
|
6734
|
+
return (hAsync("div", { key: '3b65d74d4b70b8b3292a20daa5d89ffb7d9a66e7', class: this.paginationClasses }, hAsync("div", { key: 'a3be2b1c24ac6ac7ecde25223d9208e63e558bf3', class: "prepend-btns" }, this.renderPrevButtons()), this.simple ? (hAsync("div", { class: "pagination-info" }, hAsync("span", { class: "current-page" }, this.currentPage), hAsync("span", null, "/"), hAsync("span", { class: "last-page" }, this.lastPage))) : (this.pageNumbers.map(n => (hAsync("button", { type: "button", "aria-current": this.currentPage === n ? 'page' : undefined, class: {
|
|
6674
6735
|
'pagination-btn': true,
|
|
6675
6736
|
'pagination-btn--selected': this.currentPage === n,
|
|
6676
6737
|
}, disabled: this.currentPage === n, style: {
|
|
6677
6738
|
'--pagination-btn-width': `${this.buttonWidth}px`,
|
|
6678
|
-
}, onClick: () => this.handlePageChange(n) }, n)))), hAsync("div", { key: '
|
|
6739
|
+
}, onClick: () => this.handlePageChange(n) }, n)))), hAsync("div", { key: '9c145c18eacc2ab0115d162cbb50e5ad3ea62c80', class: "append-btns" }, this.renderNextButtons())));
|
|
6679
6740
|
}
|
|
6680
|
-
static get watchers() { return {
|
|
6681
|
-
"currentPage": ["onPropChange"],
|
|
6682
|
-
"lastPage": ["onPropChange"]
|
|
6683
|
-
}; }
|
|
6684
6741
|
static get style() { return sdPaginationCss; }
|
|
6685
6742
|
static get cmpMeta() { return {
|
|
6686
6743
|
"$flags$": 768,
|
|
@@ -6727,18 +6784,17 @@ class SdPopover {
|
|
|
6727
6784
|
componentWillLoad() {
|
|
6728
6785
|
this.showPopover = this.show;
|
|
6729
6786
|
this.slotContent = this.el.innerHTML;
|
|
6730
|
-
console.log(this.el);
|
|
6731
6787
|
}
|
|
6732
6788
|
buttonEl;
|
|
6733
6789
|
handleClose = () => {
|
|
6734
6790
|
this.showPopover = false;
|
|
6735
6791
|
};
|
|
6736
6792
|
render() {
|
|
6737
|
-
return (hAsync(Fragment, { key: '
|
|
6793
|
+
return (hAsync(Fragment, { key: '60031ca070a366a90f74d93908ec956076b4e8be' }, this.label ? (hAsync("sd-button", { ref: el => (this.buttonEl = el), label: this.label, icon: this.icon, size: this.buttonSize, color: this.color, variant: this.buttonVariant, class: "sd-popover", onClick: () => (this.showPopover = !this.showPopover) })) : (hAsync("sd-icon", { ref: el => (this.buttonEl = el), name: this.icon, size: this.iconSize, color: this.color, class: "sd-popover", onClick: () => (this.showPopover = !this.showPopover) })), this.showPopover && (hAsync("sd-tooltip-portal", { key: '199246e3638600c05ae9f9cab99c00540f2525ef', parentRef: this.buttonEl, onSdClose: this.handleClose, placement: this.placement }, hAsync("div", { key: '204b3dcf316277e5b2ce4fab3273c7726f1485c7', class: {
|
|
6738
6794
|
'sd-popover-menu': true,
|
|
6739
6795
|
[`sd-popover-menu--${this.placement}`]: true,
|
|
6740
6796
|
[this.menuClass]: !!this.menuClass,
|
|
6741
|
-
} }, hAsync("i", { key: '
|
|
6797
|
+
} }, hAsync("i", { key: '344b1aace077490124078499dbcc08c3bc9af92d', class: `sd-popover-menu__arrow sd-popover-menu__arrow--${this.placement}` }, hAsync(TooltipArrow, { key: 'be3b82a87f9292d44177927330e0b7d7b1ba2c0f' })), hAsync("div", { key: 'ac1223f53514958384fa1b3e7f3bad84933436cd', class: "sd-popover-menu__content" }, this.menuTitle && hAsync("div", { key: 'a191a3fa975ff94711a6bbc7ab2fdc4bea0d5f9c', class: "sd-popover-menu__title" }, this.menuTitle), this.messages.length > 0 && (hAsync("div", { key: 'a830419f35e0cdf43cf4059d1a815d4b169a4625', class: "sd-popover-menu__messages" }, this.messages.map(message => (hAsync("div", null, message))))), this.buttons.length > 0 && (hAsync("div", { key: 'd66775a5ec5899caa040e0ae53a1bce0eea3c167', class: `sd-popover-menu__buttons sd-popover-menu__buttons--${this.buttons.length}` }, this.buttons.map(button => (hAsync("sd-button", { ...button })))))), this.useClose && (hAsync("button", { key: '19f1f43ec6908e51f3f5b07268f0c59c3f1db1fe', class: "sd-popover-menu__close-button", onClick: () => this.handleClose() }, hAsync("sd-icon", { key: 'b658485e35e837c50886da6cf911d1b9d8f81ff1', name: "close", size: "12", color: "#AAAAAA" }))))))));
|
|
6742
6798
|
}
|
|
6743
6799
|
static get watchers() { return {
|
|
6744
6800
|
"show": ["watchShowHandler"]
|
|
@@ -6889,7 +6945,7 @@ class SdPortal {
|
|
|
6889
6945
|
this.sdClose.emit();
|
|
6890
6946
|
}
|
|
6891
6947
|
render() {
|
|
6892
|
-
return hAsync("slot", { key: '
|
|
6948
|
+
return hAsync("slot", { key: 'b24b7f844564365e887dc8cee8b98e26a94961cd' });
|
|
6893
6949
|
}
|
|
6894
6950
|
static get cmpMeta() { return {
|
|
6895
6951
|
"$flags$": 772,
|
|
@@ -6926,10 +6982,10 @@ class SdProgress {
|
|
|
6926
6982
|
error: '#FB4444',
|
|
6927
6983
|
};
|
|
6928
6984
|
render() {
|
|
6929
|
-
return (hAsync(Host, { key: '
|
|
6985
|
+
return (hAsync(Host, { key: 'e5a1be5c3343e0645db107b076fac36d1a935ca7', style: {
|
|
6930
6986
|
'--progress-color': this.statusColor[this.status],
|
|
6931
6987
|
'--progress-percentage': `${this.percentage}%`,
|
|
6932
|
-
} }, this.type === 'bar' ? this.renderBarProgress() : this.renderSpinnerProgress(), this.label && hAsync("div", { key: '
|
|
6988
|
+
} }, this.type === 'bar' ? this.renderBarProgress() : this.renderSpinnerProgress(), this.label && hAsync("div", { key: 'd2676df17ad3474f88d3c0972802a7b373b5652e', class: "sd-progress__label" }, this.label)));
|
|
6933
6989
|
}
|
|
6934
6990
|
renderBarProgress() {
|
|
6935
6991
|
return (hAsync("div", { class: `sd-progress__bar sd-progress__bar--${this.status}` }, hAsync("div", { class: ['sd-progress__bar__percent', this.percentage < 100 ? 'proceed' : ''].join(' ') }), hAsync("div", { class: "sd-progress__bar__indicator sd-progress__bar__indicator--left" }, this.percentage, "%"), hAsync("div", { class: "sd-progress__bar__indicator sd-progress__bar__indicator--right" }, this.percentage, "%")));
|
|
@@ -7276,11 +7332,11 @@ class SdSelect extends BaseDropdownEvent {
|
|
|
7276
7332
|
'--select-width': this.width || '200px',
|
|
7277
7333
|
'--select-dropdown-height': this.dropdownHeight || '260px',
|
|
7278
7334
|
};
|
|
7279
|
-
return (hAsync(Host, { key: '
|
|
7335
|
+
return (hAsync(Host, { key: '94880c07678eb6a478c9c80de0c42c5c7724936e', style: style }, hAsync("div", { key: '872f918214118adb99b50533c323e9de7ca27353', class: {
|
|
7280
7336
|
'sd-select': true,
|
|
7281
7337
|
'sd-select--open': this.isOpen,
|
|
7282
7338
|
'sd-select--disabled': this.disabled,
|
|
7283
|
-
}, ref: el => (this.selectRef = el) }, this.renderLabel(this.label), hAsync("div", { key: '
|
|
7339
|
+
}, ref: el => (this.selectRef = el) }, this.renderLabel(this.label), hAsync("div", { key: '30e44d67c6d8b81c59c798ffa4de43337de6f195', class: "sd-select__container" }, this.renderTrigger(), this.renderDropdown()))));
|
|
7284
7340
|
}
|
|
7285
7341
|
renderLabel(label) {
|
|
7286
7342
|
if (!label)
|
|
@@ -7557,11 +7613,11 @@ class SdSelectMultiple extends BaseDropdownEvent {
|
|
|
7557
7613
|
'--select-width': this.width || '200px',
|
|
7558
7614
|
'--select-dropdown-height': this.dropdownHeight || '260px',
|
|
7559
7615
|
};
|
|
7560
|
-
return (hAsync(Host, { key: '
|
|
7616
|
+
return (hAsync(Host, { key: '0e488c3906b12e73abc6e6216e14b2b4e6a130c8', style: style }, hAsync("div", { key: '714a95f446631269a19e44d098ef0dc81c7c6fd5', class: {
|
|
7561
7617
|
'sd-select-multiple': true,
|
|
7562
7618
|
'sd-select-multiple--open': this.isOpen,
|
|
7563
7619
|
'sd-select-multiple--disabled': this.disabled,
|
|
7564
|
-
}, ref: el => (this.selectRef = el) }, this.renderLabel(this.label), hAsync("div", { key: '
|
|
7620
|
+
}, ref: el => (this.selectRef = el) }, this.renderLabel(this.label), hAsync("div", { key: '08912b8586c926107cbcaed28b73bd6eb94d47d9', class: "sd-select-multiple__container" }, this.renderTrigger(), this.renderDropdown()))));
|
|
7565
7621
|
}
|
|
7566
7622
|
renderLabel(label) {
|
|
7567
7623
|
if (!label)
|
|
@@ -7969,11 +8025,11 @@ class SdSelectMultipleGroup extends BaseDropdownEvent {
|
|
|
7969
8025
|
'--select-width': this.width || '200px',
|
|
7970
8026
|
'--select-dropdown-height': this.dropdownHeight || '260px',
|
|
7971
8027
|
};
|
|
7972
|
-
return (hAsync(Host, { key: '
|
|
8028
|
+
return (hAsync(Host, { key: 'bcafcfbb33940882bd7e22a6d197974194554968', style: style }, hAsync("div", { key: 'a8547e4aa07d8ccdfbb7955f122eaa3955c5d30e', class: {
|
|
7973
8029
|
'sd-select-multiple-group': true,
|
|
7974
8030
|
'sd-select-multiple-group--open': this.isOpen,
|
|
7975
8031
|
'sd-select-multiple-group--disabled': this.disabled,
|
|
7976
|
-
}, style: this.containerStyle, ref: el => (this.selectRef = el) }, this.renderLabel(this.label, this.labelStyle), hAsync("div", { key: '
|
|
8032
|
+
}, style: this.containerStyle, ref: el => (this.selectRef = el) }, this.renderLabel(this.label, this.labelStyle), hAsync("div", { key: '90ba61f1d83692e2eaf430f42a1a0fd55380d774', class: "sd-select-multiple-group__container" }, this.renderTrigger(), this.renderDropdown()))));
|
|
7977
8033
|
}
|
|
7978
8034
|
renderLabel(label, labelStyle) {
|
|
7979
8035
|
if (!label)
|
|
@@ -8091,7 +8147,7 @@ class SdSelectOption {
|
|
|
8091
8147
|
}
|
|
8092
8148
|
};
|
|
8093
8149
|
render() {
|
|
8094
|
-
return (hAsync(Host, { key: '
|
|
8150
|
+
return (hAsync(Host, { key: 'f1874b4e539573ddaa48cb2bdc9d13ea96bf350e' }, hAsync("div", { key: '5a3bbd66f6623a1c02d5e1295bb974e82883b8a1', class: {
|
|
8095
8151
|
'sd-select__option': true,
|
|
8096
8152
|
'sd-select__option--selected': this.isSelected,
|
|
8097
8153
|
'sd-select__option--disabled': !!this.option.disabled,
|
|
@@ -8177,7 +8233,7 @@ class SdSelectOptionGroup {
|
|
|
8177
8233
|
}
|
|
8178
8234
|
};
|
|
8179
8235
|
render() {
|
|
8180
|
-
return (hAsync("div", { key: '
|
|
8236
|
+
return (hAsync("div", { key: 'e96411f172ed4ed5359fef2a124bf49df88e10ec', class: {
|
|
8181
8237
|
'sd-select__option-group': true,
|
|
8182
8238
|
'sd-select__option-group--selected': !!this.isSelected,
|
|
8183
8239
|
'sd-select__option-group--disabled': !!this.option.disabled,
|
|
@@ -8186,10 +8242,10 @@ class SdSelectOptionGroup {
|
|
|
8186
8242
|
'sd-select__option-group--group': this.option.type === 'group',
|
|
8187
8243
|
'sd-select__option-group--subgroup': this.option.type === 'subgroup',
|
|
8188
8244
|
'sd-select__option-group--item': this.option.type === 'item',
|
|
8189
|
-
}, onMouseEnter: () => (this.isHovered = true), onMouseLeave: () => (this.isHovered = false), style: this.optionStyle, "data-index": this.index, onClick: event => this.handleClick(this.option, this.isSelected, event) }, hAsync("div", { key: '
|
|
8245
|
+
}, onMouseEnter: () => (this.isHovered = true), onMouseLeave: () => (this.isHovered = false), style: this.optionStyle, "data-index": this.index, onClick: event => this.handleClick(this.option, this.isSelected, event) }, hAsync("div", { key: 'fa9464cac1ee58b46b983f17882eeb847e3dc9b7', class: "sd-select__option-group__label-wrapper" }, this.useCheckbox && (hAsync("sd-checkbox", { key: 'f9a7ab839d566671d6ee9e7164424d307a81f2d6', checked: this.isSelected, disabled: this.option.disabled, onClick: e => {
|
|
8190
8246
|
e.preventDefault();
|
|
8191
8247
|
this.handleClick(this.option, this.isSelected, e);
|
|
8192
|
-
} })), hAsync("span", { key: '
|
|
8248
|
+
} })), hAsync("span", { key: 'ee27fb5e2d14acf898c7ce1e22b8cbffe59cec31', class: "sd-select__option-group-label" }, this.option.label), this.useIndicator && this.option.type !== 'item' && (hAsync("span", { key: 'aaf9552da0a665ac34848ab5649d5993133394c4', class: "sd-select__option-group__count-indicator" }, `(${this.countInfo?.selectedCount}/${this.countInfo?.totalCount})`)))));
|
|
8193
8249
|
}
|
|
8194
8250
|
static get style() { return sdSelectOptionGroupCss; }
|
|
8195
8251
|
static get cmpMeta() { return {
|
|
@@ -8408,10 +8464,10 @@ let SdTable$1 = class SdTable {
|
|
|
8408
8464
|
}, style: this.getStickyStyle(colIdx) }, hAsync("div", { class: `sd-th__content sd-th__content--${col.align || 'left'}` }, hAsync("slot", { name: `header-cell-${col.name}` }, hAsync("div", { class: "sd-th__content--label" }, col.label)), col.usePageMoveIcon && hAsync("sd-icon", { name: "pageMove", size: "12", color: "#006AC1" }), col.tooltip && (hAsync("sd-tooltip", { ...col.tooltipOptions }, hAsync("div", { slot: "content" }, col.tooltip.map(text => (hAsync("p", null, text))))))), this.resizable && typeof window !== 'undefined' && (hAsync("div", { class: "sd-th__resizer", onMouseDown: (evt) => this.handleResize(colIdx, evt) }))))))));
|
|
8409
8465
|
}
|
|
8410
8466
|
render() {
|
|
8411
|
-
return (hAsync(Host, { key: '
|
|
8467
|
+
return (hAsync(Host, { key: '9b6b47737ddd9b97c477fb029260bbdb5088593a' }, hAsync("div", { key: '4235585df56fb9c83606e58d2b3ad6efc7b50259', class: "sd-table__wrapper", style: {
|
|
8412
8468
|
'--table-width': this.width,
|
|
8413
8469
|
'--table-height': this.height,
|
|
8414
|
-
} }, hAsync("div", { key: '
|
|
8470
|
+
} }, hAsync("div", { key: 'ea92597b3cba31951da90d3d42a7783ef043248a', class: "sd-table__container" }, hAsync("div", { key: '95b5ef2432643b3c1386f52344e91d17dd6ba726', class: "sd-table__middle", role: "table" }, hAsync("div", { key: '1e834ed7ce963ff0e3bc0c22c7b5d8dcd02d754d', part: "table", class: this.sdTableClasses }, this.renderHeader(), hAsync("sd-tbody", { key: 'f7cf5c3d5e430f4259b2dae2660c38b0b0f6d17e' }, hAsync("slot", { key: 'b21b99f21baaf9431ce653e680a59531cc275c26' })))), hAsync("div", { key: '3fb77951c1e27c6feb13411aa56b4ac907135e24', class: "sd-table__bottom" })), this.pagination && this.innerRows.length > 0 && (hAsync("div", { key: 'e74003c49fa592869346f28dfd10ef6acd6a64e9', class: "sd-table__pagination" }, hAsync("sd-pagination", { key: '0284aa186f53cac17cecc45770afce1cb1675c36', currentPage: !this.useInternalPagination ? this.pagination.page : this.currentPage, lastPage: !this.useInternalPagination ? this.pagination.lastPage : this.lastPageNumber, onPageChange: (e) => {
|
|
8415
8471
|
if (!this.useInternalPagination) {
|
|
8416
8472
|
this.sdPageChange.emit(e.detail);
|
|
8417
8473
|
}
|
|
@@ -8419,7 +8475,7 @@ let SdTable$1 = class SdTable {
|
|
|
8419
8475
|
this.currentPage = e.detail;
|
|
8420
8476
|
this.sdPageChange.emit(this.currentPage);
|
|
8421
8477
|
}
|
|
8422
|
-
} }), this.useRowsPerPageSelect && (hAsync("sd-select", { key: '
|
|
8478
|
+
} }), this.useRowsPerPageSelect && (hAsync("sd-select", { key: '23a648a6581bee5cf755afbb9146bf2090e6be65', value: this.pagination.rowsPerPage, options: this.rowsPerPageOption, width: "128px", onSdChange: (e) => {
|
|
8423
8479
|
const changedRowsPerPage = e.detail.value ? Number(e.detail.value) : 0;
|
|
8424
8480
|
if (!this.useInternalPagination) {
|
|
8425
8481
|
this.sdRowsPerPageChange.emit(changedRowsPerPage);
|
|
@@ -8482,7 +8538,7 @@ let SdTable$1 = class SdTable {
|
|
|
8482
8538
|
}; }
|
|
8483
8539
|
};
|
|
8484
8540
|
|
|
8485
|
-
const sdTableBackupCss = ".sd-table__wrapper .sd-table__container .sd-table__middle{overflow-y:auto;overflow-x:hidden;scroll-behavior:smooth}.sd-table__wrapper .sd-table__container .sd-table__middle::-webkit-scrollbar{opacity:0;background:#e5e5e5}.sd-table__wrapper .sd-table__container .sd-table__middle::-webkit-scrollbar:horizontal{height:8px}.sd-table__wrapper .sd-table__container .sd-table__middle::-webkit-scrollbar:vertical{width:8px}.sd-table__wrapper .sd-table__container .sd-table__middle::-webkit-scrollbar-thumb{height:80px;background-color:#cccccc;border-radius:4px}.sd-table__wrapper .sd-table__container .sd-table__middle::-webkit-scrollbar-track{background-color:transparent}.sd-table__wrapper{height:var(--table-height, auto);width:var(--table-width, 100%);color:#222222}.sd-table__wrapper .sd-table__container{width:100%;height:var(--table-height, auto);position:relative;border:1px solid #e1e1e1;border-radius:8px;font-size:12px;overflow:hidden;background:#ffffff}.sd-table__wrapper .sd-table__container .sd-table__middle{overflow:auto;will-change:scroll-position}.sd-table__wrapper .sd-table__container .sd-table__middle--scrollable{height:var(--table-height, auto)}.sd-table__wrapper .sd-table__container .sd-table__middle--loading{overflow:hidden !important}.sd-table__wrapper .sd-table__container .sd-table__middle .sd-table{background-color:white;display:table;width:100%;border-collapse:separate;border-spacing:0;table-layout:fixed}.sd-table__wrapper .sd-table__container .sd-table__middle .sd-table--selectable td.sd-td--selected,.sd-table__wrapper .sd-table__container .sd-table__middle .sd-table--selectable th.sd-th--selected{width:52px !important;max-width:52px !important;min-width:52px !important;padding:0 10px 0 24px;text-align:left}.sd-table__wrapper .sd-table__container .sd-table__middle .sd-table--sticky-header thead{position:sticky;top:0;z-index:120}.sd-table__wrapper .sd-table__container .sd-table__middle .sd-table--sticky-column th.sticky-left,.sd-table__wrapper .sd-table__container .sd-table__middle .sd-table--sticky-column th.sticky-right{position:sticky;background-color:#f5faff;z-index:110 !important}.sd-table__wrapper .sd-table__container .sd-table__middle .sd-table--sticky-column td.sticky-left,.sd-table__wrapper .sd-table__container .sd-table__middle .sd-table--sticky-column td.sticky-right{position:sticky;background-color:white;z-index:100 !important}.sd-table__wrapper .sd-table__container .sd-table__middle .sd-table--sticky-column .sticky-left{left:var(--sticky-left-offset, 0)}.sd-table__wrapper .sd-table__container .sd-table__middle .sd-table--sticky-column .sticky-right{right:var(--sticky-right-offset, 0)}.sd-table__wrapper .sd-table__container .sd-table__middle .sd-table--sticky-column th.sticky-cell{position:sticky;z-index:102;background-color:#f5faff}.sd-table__wrapper .sd-table__container .sd-table__middle .sd-table--sticky-column td.sticky-cell{position:sticky;z-index:101;background-color:white}.sd-table__wrapper .sd-table__container .sd-table__middle .sd-table--scrolled-left th.sticky-left-edge,.sd-table__wrapper .sd-table__container .sd-table__middle .sd-table--scrolled-left td.sticky-left-edge{overflow:visible}.sd-table__wrapper .sd-table__container .sd-table__middle .sd-table--scrolled-left th.sticky-left-edge:after,.sd-table__wrapper .sd-table__container .sd-table__middle .sd-table--scrolled-left td.sticky-left-edge:after{content:\"\";position:absolute;top:0;left:100%;right:-20px;width:20px;height:100%;z-index:101 !important;box-shadow:inset 12px 0 20px -25px;opacity:1;pointer-events:none}.sd-table__wrapper .sd-table__container .sd-table__middle .sd-table--scrolled-right th.sticky-right-edge,.sd-table__wrapper .sd-table__container .sd-table__middle .sd-table--scrolled-right td.sticky-right-edge{overflow:visible}.sd-table__wrapper .sd-table__container .sd-table__middle .sd-table--scrolled-right th.sticky-right-edge:after,.sd-table__wrapper .sd-table__container .sd-table__middle .sd-table--scrolled-right td.sticky-right-edge:after{content:\"\";position:absolute;top:0;left:-20px;width:20px;height:100%;z-index:101 !important;box-shadow:inset -12px 0 20px -25px;opacity:1;pointer-events:none}.sd-table__wrapper .sd-table__container .sd-table__middle .sd-table--no-data thead{opacity:0.4}.sd-table__wrapper .sd-table__container .sd-table__middle .sd-table--no-data thead tr th.sd-th{border-bottom:1px solid rgba(225, 225, 225, 0.4) !important}.sd-table__wrapper .sd-table__container .sd-table__middle .sd-table sd-td,.sd-table__wrapper .sd-table__container .sd-table__middle .sd-table sd-th,.sd-table__wrapper .sd-table__container .sd-table__middle .sd-table .sd-th__content--label{overflow:hidden;white-space:nowrap;text-overflow:ellipsis;word-break:keep-all}.sd-table__wrapper .sd-table__container .sd-table__middle .sd-table thead{height:36px}.sd-table__wrapper .sd-table__container .sd-table__middle .sd-table thead tr{width:100%}.sd-table__wrapper .sd-table__container .sd-table__middle .sd-table thead tr th{background:#f5faff;height:36px;padding:0 16px;font-weight:500;vertical-align:middle;border-bottom:1px solid #e1e1e1;-webkit-user-select:none;user-select:none;position:relative}.sd-table__wrapper .sd-table__container .sd-table__middle .sd-table thead tr th.sd-th .sd-th__content{display:flex;flex-flow:row nowrap;align-items:center;gap:4px}.sd-table__wrapper .sd-table__container .sd-table__middle .sd-table thead tr th.sd-th .sd-th__content--left{justify-content:flex-start}.sd-table__wrapper .sd-table__container .sd-table__middle .sd-table thead tr th.sd-th .sd-th__content--center{justify-content:center}.sd-table__wrapper .sd-table__container .sd-table__middle .sd-table thead tr th.sd-th .sd-th__content--right{justify-content:flex-end}.sd-table__wrapper .sd-table__container .sd-table__middle .sd-table thead tr th.sd-th .sd-th__resizer{position:absolute;top:50%;right:0;transform:translateY(-50%);width:4px;height:16px;cursor:col-resize;z-index:3;border-left:1px solid #cccccc;border-right:1px solid #cccccc}.sd-table__wrapper .sd-table__container .sd-table__middle .sd-table tbody .sd-table__loading{position:absolute;top:0;left:0;width:100%;height:100%;min-height:100%;background:rgba(255, 255, 255, 0.6);z-index:200;display:flex;align-items:center;justify-content:center}.sd-table__wrapper .sd-table__container .sd-table__middle .sd-table tbody tr td{height:44px;padding:0 16px;border-bottom:1px solid #e1e1e1;background:white;vertical-align:middle}.sd-table__wrapper .sd-table__container .sd-table__middle .sd-table tbody tr td.sd-td--left{text-align:left}.sd-table__wrapper .sd-table__container .sd-table__middle .sd-table tbody tr td.sd-td--center{text-align:center}.sd-table__wrapper .sd-table__container .sd-table__middle .sd-table tbody tr td.sd-td--right{text-align:right}.sd-table__wrapper .sd-table__container .sd-table__bottom{background:white;text-align:center}.sd-table__wrapper .sd-table__container .sd-table__bottom .sd-table__no-data{padding-top:15%;color:#888888}.sd-table__wrapper .sd-table__pagination{position:relative;background:#f9f9f9;height:48px;display:flex;align-items:center;justify-content:center;border:1px solid #e1e1e1;border-top:none;border-radius:8px}.sd-table__wrapper .sd-table__pagination sd-select{position:absolute;right:10px;top:50%;transform:translateY(-50%)}";
|
|
8541
|
+
const sdTableBackupCss = ".sd-table__wrapper .sd-table__container .sd-table__middle{overflow-y:auto;overflow-x:hidden;scroll-behavior:smooth}.sd-table__wrapper .sd-table__container .sd-table__middle::-webkit-scrollbar{opacity:0;background:#e5e5e5}.sd-table__wrapper .sd-table__container .sd-table__middle::-webkit-scrollbar:horizontal{height:8px}.sd-table__wrapper .sd-table__container .sd-table__middle::-webkit-scrollbar:vertical{width:8px}.sd-table__wrapper .sd-table__container .sd-table__middle::-webkit-scrollbar-thumb{height:80px;background-color:#cccccc;border-radius:4px}.sd-table__wrapper .sd-table__container .sd-table__middle::-webkit-scrollbar-track{background-color:transparent}.sd-table__wrapper{height:var(--table-height, auto);width:var(--table-width, 100%);color:#222222}.sd-table__wrapper .sd-table__container{width:100%;height:var(--table-height, auto);position:relative;border:1px solid #e1e1e1;border-radius:8px;font-size:12px;overflow:hidden;background:#ffffff}.sd-table__wrapper .sd-table__container .sd-table__middle{overflow:auto;will-change:scroll-position}.sd-table__wrapper .sd-table__container .sd-table__middle--scrollable{height:var(--table-height, auto)}.sd-table__wrapper .sd-table__container .sd-table__middle--loading{overflow:hidden !important}.sd-table__wrapper .sd-table__container .sd-table__middle .sd-table{background-color:white;display:table;width:100%;border-collapse:separate;border-spacing:0;table-layout:fixed}.sd-table__wrapper .sd-table__container .sd-table__middle .sd-table tbody.sd-table-tbody--virtual-scroll{position:relative;height:var(--total-virtual-height, auto)}.sd-table__wrapper .sd-table__container .sd-table__middle .sd-table tbody.sd-table-tbody--virtual-scroll tr:not([aria-hidden=true]){width:100%}.sd-table__wrapper .sd-table__container .sd-table__middle .sd-table tbody.sd-table-tbody--virtual-scroll tr[aria-hidden=true]{padding:0;border:none}.sd-table__wrapper .sd-table__container .sd-table__middle .sd-table tbody.sd-table-tbody--virtual-scroll tr[aria-hidden=true] td{display:none}.sd-table__wrapper .sd-table__container .sd-table__middle .sd-table--selectable td.sd-td--selected,.sd-table__wrapper .sd-table__container .sd-table__middle .sd-table--selectable th.sd-th--selected{width:52px !important;max-width:52px !important;min-width:52px !important;padding:0 10px 0 24px;text-align:left}.sd-table__wrapper .sd-table__container .sd-table__middle .sd-table--sticky-header thead{position:sticky;top:0;z-index:120}.sd-table__wrapper .sd-table__container .sd-table__middle .sd-table--sticky-column th.sticky-left,.sd-table__wrapper .sd-table__container .sd-table__middle .sd-table--sticky-column th.sticky-right{position:sticky;background-color:#f5faff;z-index:110 !important}.sd-table__wrapper .sd-table__container .sd-table__middle .sd-table--sticky-column td.sticky-left,.sd-table__wrapper .sd-table__container .sd-table__middle .sd-table--sticky-column td.sticky-right{position:sticky;background-color:white;z-index:100 !important}.sd-table__wrapper .sd-table__container .sd-table__middle .sd-table--sticky-column .sticky-left{left:var(--sticky-left-offset, 0)}.sd-table__wrapper .sd-table__container .sd-table__middle .sd-table--sticky-column .sticky-right{right:var(--sticky-right-offset, 0)}.sd-table__wrapper .sd-table__container .sd-table__middle .sd-table--sticky-column th.sticky-cell{position:sticky;z-index:102;background-color:#f5faff}.sd-table__wrapper .sd-table__container .sd-table__middle .sd-table--sticky-column td.sticky-cell{position:sticky;z-index:101;background-color:white}.sd-table__wrapper .sd-table__container .sd-table__middle .sd-table--scrolled-left th.sticky-left-edge,.sd-table__wrapper .sd-table__container .sd-table__middle .sd-table--scrolled-left td.sticky-left-edge{overflow:visible}.sd-table__wrapper .sd-table__container .sd-table__middle .sd-table--scrolled-left th.sticky-left-edge:after,.sd-table__wrapper .sd-table__container .sd-table__middle .sd-table--scrolled-left td.sticky-left-edge:after{content:\"\";position:absolute;top:0;left:100%;right:-20px;width:20px;height:100%;z-index:101 !important;box-shadow:inset 12px 0 20px -25px;opacity:1;pointer-events:none}.sd-table__wrapper .sd-table__container .sd-table__middle .sd-table--scrolled-right th.sticky-right-edge,.sd-table__wrapper .sd-table__container .sd-table__middle .sd-table--scrolled-right td.sticky-right-edge{overflow:visible}.sd-table__wrapper .sd-table__container .sd-table__middle .sd-table--scrolled-right th.sticky-right-edge:after,.sd-table__wrapper .sd-table__container .sd-table__middle .sd-table--scrolled-right td.sticky-right-edge:after{content:\"\";position:absolute;top:0;left:-20px;width:20px;height:100%;z-index:101 !important;box-shadow:inset -12px 0 20px -25px;opacity:1;pointer-events:none}.sd-table__wrapper .sd-table__container .sd-table__middle .sd-table--no-data thead{opacity:0.4}.sd-table__wrapper .sd-table__container .sd-table__middle .sd-table--no-data thead tr th.sd-th{border-bottom:1px solid rgba(225, 225, 225, 0.4) !important}.sd-table__wrapper .sd-table__container .sd-table__middle .sd-table sd-td,.sd-table__wrapper .sd-table__container .sd-table__middle .sd-table sd-th,.sd-table__wrapper .sd-table__container .sd-table__middle .sd-table .sd-th__content--label{overflow:hidden;white-space:nowrap;text-overflow:ellipsis;word-break:keep-all}.sd-table__wrapper .sd-table__container .sd-table__middle .sd-table thead{height:36px}.sd-table__wrapper .sd-table__container .sd-table__middle .sd-table thead tr{width:100%}.sd-table__wrapper .sd-table__container .sd-table__middle .sd-table thead tr th{background:#f5faff;height:36px;padding:0 16px;font-weight:500;vertical-align:middle;border-bottom:1px solid #e1e1e1;-webkit-user-select:none;user-select:none;position:relative}.sd-table__wrapper .sd-table__container .sd-table__middle .sd-table thead tr th.sd-th .sd-th__content{display:flex;flex-flow:row nowrap;align-items:center;gap:4px}.sd-table__wrapper .sd-table__container .sd-table__middle .sd-table thead tr th.sd-th .sd-th__content--left{justify-content:flex-start}.sd-table__wrapper .sd-table__container .sd-table__middle .sd-table thead tr th.sd-th .sd-th__content--center{justify-content:center}.sd-table__wrapper .sd-table__container .sd-table__middle .sd-table thead tr th.sd-th .sd-th__content--right{justify-content:flex-end}.sd-table__wrapper .sd-table__container .sd-table__middle .sd-table thead tr th.sd-th .sd-th__resizer{position:absolute;top:50%;right:0;transform:translateY(-50%);width:4px;height:16px;cursor:col-resize;z-index:3;border-left:1px solid #cccccc;border-right:1px solid #cccccc}.sd-table__wrapper .sd-table__container .sd-table__middle .sd-table tbody .sd-table__loading{position:absolute;top:0;left:0;width:100%;height:100%;min-height:100%;background:rgba(255, 255, 255, 0.6);z-index:200;display:flex;align-items:center;justify-content:center}.sd-table__wrapper .sd-table__container .sd-table__middle .sd-table tbody tr td{height:44px;padding:0 16px;border-bottom:1px solid #e1e1e1;background:white;vertical-align:middle}.sd-table__wrapper .sd-table__container .sd-table__middle .sd-table tbody tr td.sd-td--left{text-align:left}.sd-table__wrapper .sd-table__container .sd-table__middle .sd-table tbody tr td.sd-td--center{text-align:center}.sd-table__wrapper .sd-table__container .sd-table__middle .sd-table tbody tr td.sd-td--right{text-align:right}.sd-table__wrapper .sd-table__container .sd-table__bottom{background:white;text-align:center}.sd-table__wrapper .sd-table__container .sd-table__bottom .sd-table__no-data{padding-top:15%;color:#888888}.sd-table__wrapper .sd-table__pagination{position:relative;background:#f9f9f9;height:48px;display:flex;align-items:center;justify-content:center;border:1px solid #e1e1e1;border-top:none;border-radius:8px}.sd-table__wrapper .sd-table__pagination sd-select{position:absolute;right:10px;top:50%;transform:translateY(-50%)}";
|
|
8486
8542
|
|
|
8487
8543
|
class SdTable {
|
|
8488
8544
|
constructor(hostRef) {
|
|
@@ -8514,6 +8570,9 @@ class SdTable {
|
|
|
8514
8570
|
{ label: '50개씩 보기', value: 50 },
|
|
8515
8571
|
{ label: '100개씩 보기', value: 100 },
|
|
8516
8572
|
];
|
|
8573
|
+
useVirtualScroll = false; // 가상 스크롤 사용 여부
|
|
8574
|
+
virtualRowHeight = 44; // 가상 스크롤 사용시 각 행의 높이 - 가상 스크롤 사용시 필수값
|
|
8575
|
+
virtualBufferSize = 5; // 가상 스크롤 위아래 버퍼 크기
|
|
8517
8576
|
sdSelectChange;
|
|
8518
8577
|
sdPageChange;
|
|
8519
8578
|
sdRowsPerPageChange;
|
|
@@ -8523,18 +8582,34 @@ class SdTable {
|
|
|
8523
8582
|
columnWidths = [];
|
|
8524
8583
|
scrolledLeft = false;
|
|
8525
8584
|
scrolledRight = false;
|
|
8585
|
+
virtualStartIndex = 0; // 렌더링 시작 인덱스
|
|
8586
|
+
virtualEndIndex = 0; // 렌더링 종료 인덱스
|
|
8587
|
+
scrollTopPosition = 0;
|
|
8588
|
+
scrollRequestAnimationFrame = null;
|
|
8589
|
+
scrollContainer = null;
|
|
8526
8590
|
handleColumnsChange(newCols) {
|
|
8527
8591
|
this.columnWidths = newCols.map(c => parseInt(c.width || '120', 10));
|
|
8528
8592
|
}
|
|
8529
8593
|
handleRowsChange(newRows) {
|
|
8530
8594
|
this.innerRows = [...newRows];
|
|
8595
|
+
if (this.useVirtualScroll) {
|
|
8596
|
+
requestAnimationFrame(() => {
|
|
8597
|
+
this.calculateVisibleRange();
|
|
8598
|
+
});
|
|
8599
|
+
}
|
|
8531
8600
|
}
|
|
8532
8601
|
handleSelectedChange(newSelected) {
|
|
8533
8602
|
this.innerSelected = new Set(newSelected);
|
|
8534
8603
|
}
|
|
8535
8604
|
handlePaginationChange(newVal) {
|
|
8536
|
-
if (newVal?.page && newVal.page !== this.currentPage)
|
|
8605
|
+
if (newVal?.page && newVal.page !== this.currentPage) {
|
|
8537
8606
|
this.currentPage = newVal.page;
|
|
8607
|
+
if (this.useVirtualScroll && this.scrollContainer) {
|
|
8608
|
+
this.scrollContainer.scrollTop = 0;
|
|
8609
|
+
this.scrollTopPosition = 0;
|
|
8610
|
+
this.calculateVisibleRange();
|
|
8611
|
+
}
|
|
8612
|
+
}
|
|
8538
8613
|
}
|
|
8539
8614
|
componentWillLoad() {
|
|
8540
8615
|
this.innerRows = [...(this.rows || [])];
|
|
@@ -8551,14 +8626,30 @@ class SdTable {
|
|
|
8551
8626
|
const middle = this.el.querySelector('.sd-table__middle');
|
|
8552
8627
|
if (!middle)
|
|
8553
8628
|
return;
|
|
8629
|
+
this.scrollContainer = middle;
|
|
8554
8630
|
const onScroll = () => {
|
|
8555
|
-
const { scrollLeft, scrollWidth, clientWidth } = middle;
|
|
8631
|
+
const { scrollLeft, scrollWidth, clientWidth, scrollTop } = middle;
|
|
8556
8632
|
this.scrolledLeft = scrollLeft > 0;
|
|
8557
8633
|
this.scrolledRight = scrollLeft + clientWidth < scrollWidth;
|
|
8634
|
+
if (this.useVirtualScroll) {
|
|
8635
|
+
if (this.scrollRequestAnimationFrame !== null) {
|
|
8636
|
+
cancelAnimationFrame(this.scrollRequestAnimationFrame);
|
|
8637
|
+
}
|
|
8638
|
+
this.scrollRequestAnimationFrame = requestAnimationFrame(() => {
|
|
8639
|
+
this.scrollTopPosition = scrollTop;
|
|
8640
|
+
this.calculateVisibleRange();
|
|
8641
|
+
this.scrollRequestAnimationFrame = null;
|
|
8642
|
+
});
|
|
8643
|
+
}
|
|
8558
8644
|
};
|
|
8559
8645
|
middle.addEventListener('scroll', onScroll, { passive: true });
|
|
8560
8646
|
onScroll();
|
|
8561
8647
|
}
|
|
8648
|
+
disconnectedCallback() {
|
|
8649
|
+
if (this.scrollRequestAnimationFrame !== null) {
|
|
8650
|
+
cancelAnimationFrame(this.scrollRequestAnimationFrame);
|
|
8651
|
+
}
|
|
8652
|
+
}
|
|
8562
8653
|
// ----- Derived getters -----
|
|
8563
8654
|
get visibleColumns() {
|
|
8564
8655
|
return this.columns.filter(col => col.visible !== false);
|
|
@@ -8570,6 +8661,33 @@ class SdTable {
|
|
|
8570
8661
|
const result = this.innerRows.slice((this.currentPage - 1) * rowsPerPage, this.currentPage * rowsPerPage);
|
|
8571
8662
|
return result;
|
|
8572
8663
|
}
|
|
8664
|
+
get virtualRows() {
|
|
8665
|
+
if (!this.useVirtualScroll) {
|
|
8666
|
+
return this.paginatedRows.map((row, idx) => ({ row, actualIndex: idx }));
|
|
8667
|
+
}
|
|
8668
|
+
return this.paginatedRows
|
|
8669
|
+
.slice(this.virtualStartIndex, this.virtualEndIndex + 1)
|
|
8670
|
+
.map((row, relativeIdx) => ({
|
|
8671
|
+
row,
|
|
8672
|
+
actualIndex: this.virtualStartIndex + relativeIdx,
|
|
8673
|
+
}));
|
|
8674
|
+
}
|
|
8675
|
+
get topSpacerHeight() {
|
|
8676
|
+
if (!this.useVirtualScroll || this.virtualStartIndex === 0)
|
|
8677
|
+
return 0;
|
|
8678
|
+
return this.virtualStartIndex * this.virtualRowHeight;
|
|
8679
|
+
}
|
|
8680
|
+
get bottomSpacerHeight() {
|
|
8681
|
+
if (!this.useVirtualScroll)
|
|
8682
|
+
return 0;
|
|
8683
|
+
const remainingRows = this.paginatedRows.length - this.virtualEndIndex - 1;
|
|
8684
|
+
return remainingRows > 0 ? remainingRows * this.virtualRowHeight : 0;
|
|
8685
|
+
}
|
|
8686
|
+
get totalVirtualHeight() {
|
|
8687
|
+
if (!this.useVirtualScroll)
|
|
8688
|
+
return 0;
|
|
8689
|
+
return this.paginatedRows.length * this.virtualRowHeight;
|
|
8690
|
+
}
|
|
8573
8691
|
get lastPageNumber() {
|
|
8574
8692
|
const { lastPage, rowsPerPage = this.rows.length } = this.pagination || {};
|
|
8575
8693
|
return lastPage ?? Math.max(1, Math.ceil(this.rows.length / rowsPerPage));
|
|
@@ -8625,6 +8743,20 @@ class SdTable {
|
|
|
8625
8743
|
return true; // 전부 선택됨
|
|
8626
8744
|
return null; // 일부만 선택됨
|
|
8627
8745
|
}
|
|
8746
|
+
calculateVisibleRange() {
|
|
8747
|
+
if (!this.useVirtualScroll) {
|
|
8748
|
+
this.virtualStartIndex = 0;
|
|
8749
|
+
this.virtualEndIndex = this.paginatedRows.length - 1;
|
|
8750
|
+
return;
|
|
8751
|
+
}
|
|
8752
|
+
const scrollTop = this.scrollTopPosition;
|
|
8753
|
+
const containerHeight = this.scrollContainer?.clientHeight || 0;
|
|
8754
|
+
const startIndex = Math.floor(scrollTop / this.virtualRowHeight);
|
|
8755
|
+
const visibleCount = Math.ceil(containerHeight / this.virtualRowHeight);
|
|
8756
|
+
const endIndex = startIndex + visibleCount;
|
|
8757
|
+
this.virtualStartIndex = Math.max(0, startIndex - this.virtualBufferSize);
|
|
8758
|
+
this.virtualEndIndex = Math.min(this.paginatedRows.length - 1, endIndex + this.virtualBufferSize);
|
|
8759
|
+
}
|
|
8628
8760
|
// ----- Helpers -----
|
|
8629
8761
|
getStickyStyle(colIdx) {
|
|
8630
8762
|
const leftOffset = this.columnWidths.slice(0, colIdx).reduce((a, b) => a + b, 0) + (this.selectable ? 52 : 0);
|
|
@@ -8685,37 +8817,47 @@ class SdTable {
|
|
|
8685
8817
|
}, style: { ...col.thStyle, ...this.getStickyStyle(colIdx) } }, hAsync("div", { class: `sd-th__content sd-th__content--${col.align || 'left'}` }, hAsync("slot", { name: `header-cell-${col.name}` }, hAsync("div", { class: "sd-th__content--label" }, col.label)), col.usePageMoveIcon && hAsync("sd-icon", { name: "pageMove", size: "12", color: "#006AC1" }), col.tooltip && (hAsync("sd-tooltip", { ...col.tooltipOptions }, hAsync("div", { slot: "content" }, col.tooltip.map(text => (hAsync("p", null, text))))))), this.resizable && typeof window !== 'undefined' && (hAsync("div", { class: "sd-th__resizer", onMouseDown: (evt) => this.handleResize(colIdx, evt) }))))))));
|
|
8686
8818
|
}
|
|
8687
8819
|
renderBody() {
|
|
8688
|
-
return (hAsync("tbody", { ...(!this.paginatedRows.length && { part: 'tbody-empty' }) }, this.isLoading && (hAsync("div", { class: "sd-table__loading" }, hAsync("sd-loading-spinner", null))), this.
|
|
8689
|
-
|
|
8820
|
+
return (hAsync("tbody", { ...(!this.paginatedRows.length && { part: 'tbody-empty' }), class: `sd-table-tbody ${this.useVirtualScroll ? 'sd-table-tbody--virtual-scroll' : ''}`, style: { '--total-virtual-height': `${this.totalVirtualHeight}px` } }, this.isLoading && (hAsync("div", { class: "sd-table__loading" }, hAsync("sd-loading-spinner", null))), this.useVirtualScroll && this.topSpacerHeight > 0 && (hAsync("tr", { key: "virtual-top-spacer", style: {
|
|
8821
|
+
height: `${this.topSpacerHeight}px`,
|
|
8822
|
+
}, "aria-hidden": "true" })), this.paginatedRows.length > 0 &&
|
|
8823
|
+
this.virtualRows.map(({ row, actualIndex }) => this.renderRow(row, actualIndex)), this.useVirtualScroll && this.bottomSpacerHeight > 0 && (hAsync("tr", { key: "virtual-bottom-spacer", style: {
|
|
8824
|
+
height: `${this.bottomSpacerHeight}px`,
|
|
8825
|
+
}, "aria-hidden": "true" }))));
|
|
8826
|
+
}
|
|
8827
|
+
renderRow(row, rowIdx) {
|
|
8828
|
+
return (hAsync("tr", { key: row[this.rowKey], class: "hover:bg-Grey_Lighten-6", style: this.useVirtualScroll
|
|
8829
|
+
? {
|
|
8830
|
+
height: `${this.virtualRowHeight}px`,
|
|
8831
|
+
}
|
|
8832
|
+
: {} }, this.selectable && (hAsync("td", { class: {
|
|
8833
|
+
'sd-td': true,
|
|
8834
|
+
'sd-td--selected': true,
|
|
8835
|
+
'sticky-left': Boolean(this.stickyColumn.left && this.stickyColumn.left > 0),
|
|
8836
|
+
}, style: {
|
|
8837
|
+
'--sticky-left-offset': '0px',
|
|
8838
|
+
} }, hAsync("sd-checkbox", { checked: this.isRowSelected(row), disabled: !this.paginatedRows.length, onSdChange: () => this.updateRowSelect(row) }))), this.visibleColumns.map((column, colIdx) => {
|
|
8839
|
+
const rendered = this.bodyCellRenderer?.(column, row);
|
|
8840
|
+
return (hAsync("td", { key: column.name, part: `td-${column.name}`, class: {
|
|
8690
8841
|
'sd-td': true,
|
|
8691
|
-
|
|
8692
|
-
'sticky-left': Boolean(this.stickyColumn.left && this.stickyColumn.left
|
|
8693
|
-
|
|
8694
|
-
'
|
|
8695
|
-
|
|
8696
|
-
|
|
8697
|
-
|
|
8698
|
-
|
|
8699
|
-
|
|
8700
|
-
'sticky-left': Boolean(this.stickyColumn.left && colIdx < this.stickyColumn.left),
|
|
8701
|
-
'sticky-right': Boolean(this.stickyColumn.right &&
|
|
8702
|
-
colIdx >= this.visibleColumns.length - this.stickyColumn.right),
|
|
8703
|
-
'sticky-left-edge': Boolean(this.stickyColumn.left && colIdx === this.stickyColumn.left - 1),
|
|
8704
|
-
'sticky-right-edge': Boolean(this.stickyColumn.right &&
|
|
8705
|
-
colIdx === this.visibleColumns.length - this.stickyColumn.right),
|
|
8706
|
-
[`${column.tdClass}`]: Boolean(column.tdClass),
|
|
8707
|
-
}, style: this.getStickyStyle(colIdx) }, hAsync("slot", { name: `body-cell-${column.name}-${rowIdx}` }, rendered ? (typeof rendered === 'string' ? (hAsync("span", { innerHTML: rendered })) : (rendered)) : (this.getCellValue(column, row)))));
|
|
8708
|
-
}))))));
|
|
8842
|
+
[`sd-td--${column.align || 'left'}`]: true,
|
|
8843
|
+
'sticky-left': Boolean(this.stickyColumn.left && colIdx < this.stickyColumn.left),
|
|
8844
|
+
'sticky-right': Boolean(this.stickyColumn.right && colIdx >= this.visibleColumns.length - this.stickyColumn.right),
|
|
8845
|
+
'sticky-left-edge': Boolean(this.stickyColumn.left && colIdx === this.stickyColumn.left - 1),
|
|
8846
|
+
'sticky-right-edge': Boolean(this.stickyColumn.right &&
|
|
8847
|
+
colIdx === this.visibleColumns.length - this.stickyColumn.right),
|
|
8848
|
+
[`${column.tdClass}`]: Boolean(column.tdClass),
|
|
8849
|
+
}, style: this.getStickyStyle(colIdx) }, hAsync("slot", { name: `body-cell-${column.name}-${rowIdx}` }, rendered ? (typeof rendered === 'string' ? (hAsync("span", { innerHTML: rendered })) : (rendered)) : (this.getCellValue(column, row)))));
|
|
8850
|
+
})));
|
|
8709
8851
|
}
|
|
8710
8852
|
render() {
|
|
8711
|
-
return (hAsync(Host, { key: '
|
|
8853
|
+
return (hAsync(Host, { key: 'd115d90e244b233e0387352e7c26b3dea94e26a5' }, hAsync("div", { key: '8c4f4b675a8448e9acddc5411a6ab2cb3ef489c5', class: "sd-table__wrapper", style: {
|
|
8712
8854
|
'--table-width': this.width,
|
|
8713
8855
|
'--table-height': this.height,
|
|
8714
|
-
} }, hAsync("div", { key: '
|
|
8856
|
+
} }, hAsync("div", { key: 'dd5c88ed37ab202dacb295c503ff2184b6440f5b', class: "sd-table__container" }, hAsync("div", { key: '5cf3e8b5c99a486e494803319d76a7e32cf0f9a9', class: {
|
|
8715
8857
|
'sd-table__middle': true,
|
|
8716
8858
|
'sd-table__middle--scrollable': this.paginatedRows.length > 0,
|
|
8717
8859
|
'sd-table__middle--loading': this.isLoading,
|
|
8718
|
-
} }, hAsync("table", { key: '
|
|
8860
|
+
} }, hAsync("table", { key: 'e73f16d894af4ef1c9ed657db6c1bc98ce855961', part: "table", class: this.sdTableClasses }, this.renderHeader(), this.renderBody())), hAsync("div", { key: '462ad10d70dcff218b39a68a610cef43fe976de6', class: "sd-table__bottom" }, !this.paginatedRows.length && (hAsync("div", { key: '865e54d58c0f7b67d7ad6b323f671bb837e074e4', class: "sd-table__no-data" }, hAsync("slot", { key: '29b4a7f1eeaf588a4e6eed9d58adfd366b0dcce0', name: "no-data" }, this.noDataLabel))))), this.pagination && this.innerRows.length > 0 && (hAsync("div", { key: '870b309d1876ea9880342d1d5da70619bb8fcaad', class: "sd-table__pagination" }, hAsync("sd-pagination", { key: '1f037172e2220912c9f81a106ae6dcc30e267273', currentPage: !this.useInternalPagination ? this.pagination.page : this.currentPage, lastPage: !this.useInternalPagination ? this.pagination.lastPage : this.lastPageNumber, onPageChange: (e) => {
|
|
8719
8861
|
if (!this.useInternalPagination) {
|
|
8720
8862
|
this.sdPageChange.emit(e.detail);
|
|
8721
8863
|
}
|
|
@@ -8723,7 +8865,7 @@ class SdTable {
|
|
|
8723
8865
|
this.currentPage = e.detail;
|
|
8724
8866
|
this.sdPageChange.emit(this.currentPage);
|
|
8725
8867
|
}
|
|
8726
|
-
} }), this.useRowsPerPageSelect && (hAsync("sd-select", { key: '
|
|
8868
|
+
} }), this.useRowsPerPageSelect && (hAsync("sd-select", { key: 'c767d22ce24a4c10886eeee8410362ac9391b22d', value: this.pagination.rowsPerPage, options: this.rowsPerPageOption, width: "128px", onSdChange: (e) => {
|
|
8727
8869
|
const changedRowsPerPage = e.detail.value ? Number(e.detail.value) : 0;
|
|
8728
8870
|
if (!this.useInternalPagination) {
|
|
8729
8871
|
this.sdRowsPerPageChange.emit(changedRowsPerPage);
|
|
@@ -8773,12 +8915,18 @@ class SdTable {
|
|
|
8773
8915
|
"useInternalPagination": [4, "use-internal-pagination"],
|
|
8774
8916
|
"useRowsPerPageSelect": [4, "use-rows-per-page-select"],
|
|
8775
8917
|
"rowsPerPageOption": [16],
|
|
8918
|
+
"useVirtualScroll": [4, "use-virtual-scroll"],
|
|
8919
|
+
"virtualRowHeight": [2, "virtual-row-height"],
|
|
8920
|
+
"virtualBufferSize": [2, "virtual-buffer-size"],
|
|
8776
8921
|
"currentPage": [32],
|
|
8777
8922
|
"innerRows": [32],
|
|
8778
8923
|
"innerSelected": [32],
|
|
8779
8924
|
"columnWidths": [32],
|
|
8780
8925
|
"scrolledLeft": [32],
|
|
8781
|
-
"scrolledRight": [32]
|
|
8926
|
+
"scrolledRight": [32],
|
|
8927
|
+
"virtualStartIndex": [32],
|
|
8928
|
+
"virtualEndIndex": [32],
|
|
8929
|
+
"scrollTopPosition": [32]
|
|
8782
8930
|
},
|
|
8783
8931
|
"$listeners$": undefined,
|
|
8784
8932
|
"$lazyBundleId$": "-",
|
|
@@ -8829,7 +8977,7 @@ class SdTag {
|
|
|
8829
8977
|
}
|
|
8830
8978
|
render() {
|
|
8831
8979
|
const tagClasses = this.getTagClasses();
|
|
8832
|
-
return (hAsync("span", { key: '
|
|
8980
|
+
return (hAsync("span", { key: '674d187602c90a83016377bd8c25bd288aa819ec', class: tagClasses, style: {
|
|
8833
8981
|
'--tag-bg-color': this.bgColor,
|
|
8834
8982
|
'--tag-text-color': this.textColor,
|
|
8835
8983
|
}, "aria-label": this.label || 'tag' }, this.renderContent()));
|
|
@@ -8859,7 +9007,7 @@ class SdTbody {
|
|
|
8859
9007
|
registerInstance(this, hostRef);
|
|
8860
9008
|
}
|
|
8861
9009
|
render() {
|
|
8862
|
-
return (hAsync(Host, { key: '
|
|
9010
|
+
return (hAsync(Host, { key: 'b94310b0ad1566cf9ccbac3ccdc5fbcdd2e53f8c' }, hAsync("slot", { key: '382fb835aa4516adad374443556084703b8560c3' })));
|
|
8863
9011
|
}
|
|
8864
9012
|
static get style() { return sdTbodyCss; }
|
|
8865
9013
|
static get cmpMeta() { return {
|
|
@@ -8883,11 +9031,11 @@ class SdTd {
|
|
|
8883
9031
|
tdStyle;
|
|
8884
9032
|
tdClass;
|
|
8885
9033
|
render() {
|
|
8886
|
-
return (hAsync(Host, { key: '
|
|
9034
|
+
return (hAsync(Host, { key: '87c947cf0092ac524cdfed0be5f1703685a64db6', role: "cell", class: {
|
|
8887
9035
|
'sd-td': true,
|
|
8888
9036
|
[`sd-td--${this.align}`]: true,
|
|
8889
9037
|
[this.tdClass || '']: Boolean(this.tdClass),
|
|
8890
|
-
}, style: this.tdStyle }, hAsync("slot", { key: '
|
|
9038
|
+
}, style: this.tdStyle }, hAsync("slot", { key: '4369629e345d8cc5bb17166d6877dba421522e4d' })));
|
|
8891
9039
|
}
|
|
8892
9040
|
static get style() { return sdTdCss; }
|
|
8893
9041
|
static get cmpMeta() { return {
|
|
@@ -8912,7 +9060,7 @@ class SdTh {
|
|
|
8912
9060
|
registerInstance(this, hostRef);
|
|
8913
9061
|
}
|
|
8914
9062
|
render() {
|
|
8915
|
-
return (hAsync(Host, { key: '
|
|
9063
|
+
return (hAsync(Host, { key: 'cf30b704166adc6d7de5ade8d455d34ecf575199', role: "columnheader" }, hAsync("slot", { key: '7863306b924a749aba5ba55f70b8b3d5c205d133' })));
|
|
8916
9064
|
}
|
|
8917
9065
|
static get style() { return sdThCss; }
|
|
8918
9066
|
static get cmpMeta() { return {
|
|
@@ -8973,20 +9121,20 @@ class SdTooltip {
|
|
|
8973
9121
|
: {
|
|
8974
9122
|
onClick: () => (this.showTooltip = !this.showTooltip),
|
|
8975
9123
|
};
|
|
8976
|
-
return (hAsync(Fragment, { key: '
|
|
9124
|
+
return (hAsync(Fragment, { key: 'fc892ba2872491bca673db93fed5c4b724c7141d' }, this.label ? (hAsync("sd-button", { ref: el => (this.buttonEl = el), label: this.label, icon: this.icon, size: this.buttonSize, color: this.color, variant: this.buttonVariant, class: "sd-tooltip", ...handleTrigger })) : (hAsync("sd-icon", { ref: el => (this.buttonEl = el), name: this.icon, size: this.iconSize, color: this.color, class: "sd-tooltip", ...handleTrigger })), this.showTooltip && (hAsync("sd-tooltip-portal", { key: 'd6b8099b49ffc120c05bd797e3eb2c2c9c40238e', parentRef: this.buttonEl, onSdClose: () => this.handleClose(), placement: this.placement }, hAsync("div", { key: '06eca5d091eec639a556472605140bdccf6c4869', class: {
|
|
8977
9125
|
'sd-tooltip-menu': true,
|
|
8978
9126
|
[`sd-tooltip-menu--${this.type}`]: true,
|
|
8979
9127
|
[`sd-tooltip-menu--${this.placement}`]: true,
|
|
8980
9128
|
'sd-tooltip-menu--with-close': this.useClose,
|
|
8981
9129
|
[`bg-${SdTooltip.COLOR_OF_TYPE[this.type].background}`]: true,
|
|
8982
9130
|
[`text-${SdTooltip.COLOR_OF_TYPE[this.type].text}`]: true,
|
|
8983
|
-
} }, hAsync("i", { key: '
|
|
9131
|
+
} }, hAsync("i", { key: '38ad3f0461c6578140e9a0f253c1f0cd5343f0bf', class: `sd-tooltip-menu__arrow sd-tooltip-menu__arrow--${this.placement}` }, hAsync(TooltipArrow, { key: '58b5d5e25512f191ee652c34815f8ad33a496a31', class: {
|
|
8984
9132
|
[`text-${SdTooltip.COLOR_OF_TYPE[this.type].background}`]: true,
|
|
8985
|
-
} })), hAsync("div", { key: '
|
|
9133
|
+
} })), hAsync("div", { key: 'a29c4aa221aa9b833b9b0de101b658f5c5351ec0', class: "sd-tooltip-menu__content", ref: el => {
|
|
8986
9134
|
if (el && this.slotContent && !el.hasChildNodes()) {
|
|
8987
9135
|
el.appendChild(this.slotContent.cloneNode(true));
|
|
8988
9136
|
}
|
|
8989
|
-
} }, !this.slotContent && hAsync("span", { key: '
|
|
9137
|
+
} }, !this.slotContent && hAsync("span", { key: 'a9e016d086156d522980b99187c9b040ccb232b9' }, this.el.textContent)), this.useClose && (hAsync("div", { key: 'ae54793f18dcb7e759bd4ea2d7570cd56f45eb9a', class: "sd-tooltip-menu__close-button" }, hAsync("button", { key: '1c3dc26d1bba1eaaed42757dae9a38613a86aea8', type: "button", "aria-label": "Close tooltip", title: "Close tooltip", onClick: () => this.handleClose() }, hAsync("sd-icon", { key: '3b7f9dafaa7f1a3686f123a12acae6b35fd1849d', name: "close", size: "12", color: "#AAAAAA" })))))))));
|
|
8990
9138
|
}
|
|
8991
9139
|
static get style() { return sdTooltipCss; }
|
|
8992
9140
|
static get cmpMeta() { return {
|
|
@@ -9162,7 +9310,7 @@ class SdTooltipPortal {
|
|
|
9162
9310
|
this.sdClose.emit();
|
|
9163
9311
|
}
|
|
9164
9312
|
render() {
|
|
9165
|
-
return hAsync("slot", { key: '
|
|
9313
|
+
return hAsync("slot", { key: 'b8c60526ca9acb16821b1952b526fad452d1d5e7' });
|
|
9166
9314
|
}
|
|
9167
9315
|
static get cmpMeta() { return {
|
|
9168
9316
|
"$flags$": 777,
|
|
@@ -9188,7 +9336,7 @@ class SdTr {
|
|
|
9188
9336
|
registerInstance(this, hostRef);
|
|
9189
9337
|
}
|
|
9190
9338
|
render() {
|
|
9191
|
-
return (hAsync(Host, { key: '
|
|
9339
|
+
return (hAsync(Host, { key: '2cfec32649fa440cb44f83392c439e58dcb24644', role: "row" }, hAsync("slot", { key: '0146af3690a7a6445b65893f86e0b9e5cd1d8a02' })));
|
|
9192
9340
|
}
|
|
9193
9341
|
static get style() { return sdTrCss; }
|
|
9194
9342
|
static get cmpMeta() { return {
|
|
@@ -9213,6 +9361,7 @@ registerComponents([
|
|
|
9213
9361
|
SdIcon,
|
|
9214
9362
|
SdInput,
|
|
9215
9363
|
SdLoadingSpinner,
|
|
9364
|
+
SdModalCard,
|
|
9216
9365
|
SdPagination,
|
|
9217
9366
|
SdPopover,
|
|
9218
9367
|
SdPortal,
|