UNPKG

@scania/tegel

Version:
1 lines 5.03 kB
import{t as e,p as t,H as s,c as d,h as a,a as i}from"./index.js";import{d as l}from"./p-Zx1hN-_O.js";const o=["multiselect","expandableRows","verticalDividers","compactDesign","noMinWidth"],n=t(class extends s{constructor(e){super(),!1!==e&&this.__registerHost(),this.__attachShadow(),this.tdsSelectAll=d(this,"tdsSelectAll",6),this.allSelected=!1,this.disabled=!1,this.indeterminate=!1,this.multiselect=!1,this.expandableRows=!1,this.mainCheckboxSelected=!1,this.mainExpendSelected=!1,this.verticalDividers=!1,this.compactDesign=!1,this.noMinWidth=!1,this.whiteBackground=!1,this.enableToolbarDesign=!1,this.tableId=""}internalTdsPropChangeListener(e){this.tableId===e.detail.tableId&&e.detail.changed.filter((e=>o.includes(e))).forEach((t=>{if(void 0===this[t])throw Error("Table prop is not supported: "+t);this[t]=e.detail[t]}))}internalTdsRowExpandedListener(e){this.tableId===e.detail[0]&&setTimeout((()=>{this.bodyExpandClicked()}),100)}bodyExpandClicked(){var e;const t=null===(e=this.host.parentElement)||void 0===e?void 0:e.querySelector("tds-table-body");if(t){const e=t.getElementsByClassName("tds-table__row-extend--active").length,s=t.getElementsByTagName("tds-table-body-row-expendable").length;this.mainExpendSelected=s===e}}connectedCallback(){var e;this.tableEl=this.host.closest("tds-table"),this.tableId=null===(e=this.tableEl)||void 0===e?void 0:e.tableId}componentWillLoad(){o.forEach((e=>{var t;this[e]=null===(t=this.tableEl)||void 0===t?void 0:t[e]}))}componentWillRender(){const e=this.host.closest("tds-table");e&&(this.enableToolbarDesign=(null==e?void 0:e.getElementsByTagName("tds-table-toolbar").length)>=1)}async handleCheckboxChange(e){var t;this.allSelected=e.detail.checked,this.tdsSelectAll.emit({tableId:this.tableId,checked:e.detail.checked,selectedRows:await(null===(t=this.tableEl)||void 0===t?void 0:t.getSelectedRows())})}render(){return a(i,{key:"6694732da4046fe06dd5583dabcd7f08b1eca27e",class:{"tds-table--compact":this.compactDesign,"tds-table--divider":this.verticalDividers,"tds-table--toolbar-available":this.enableToolbarDesign}},a("tr",{key:"ae44f1f20feedd4833dcad0f5eb166dbcb8271c2"},this.multiselect&&a("th",{key:"7164dda86ee3eb21dc04c11ebd0dd074a8fdf00d",class:"tds-table__header-cell tds-table__header-cell--checkbox"},a("div",{key:"791a29bf597e9395c84bae6d408f146f8d240967",class:"tds-form-label tds-form-label--table"},a("tds-checkbox",{key:"6bad99498d9e67dfe068e393ed15dc229a6229de",checked:this.allSelected||this.selected,disabled:this.disabled,indeterminate:this.indeterminate,onTdsChange:e=>this.handleCheckboxChange(e)}))),this.expandableRows&&a("th",{key:"5818a44e2ce485265fecef36135dbbe113ac2bdf",class:"tds-table__header-cell tds-table__header-cell--checkbox"}),a("slot",{key:"a8cd6f4cde24922bf8a1998a4120c7ff02cf60f3"})))}get host(){return this}static get style(){return":host{box-sizing:border-box;display:table-header-group}:host *{box-sizing:border-box}:host .tds-table__header-cell--checkbox{font:var(--tds-headline-07);letter-spacing:var(--tds-headline-07-ls);display:table-cell;text-align:left;color:var(--tds-table-color);background-color:var(--tds-table-header-background);border-bottom:1px solid var(--tds-table-divider);height:48px;box-sizing:border-box;overflow:hidden;transition:background-color 200ms ease;min-width:unset;width:48px;padding:0;border-top-left-radius:4px}:host .tds-form-label--table{width:100%;height:48px;display:flex;justify-content:center;align-items:center;cursor:pointer}:host .tds-table__expand-control-container{display:flex;justify-content:center;align-items:center;height:48px;cursor:pointer}:host .tds-table__expand-control-container .tds-table__expand-input{display:none}:host .tds-table__expand-control-container .tds-expandable-row-icon{height:20px;width:20px;transition:transform 200ms ease;transform:rotate(0)}:host .tds-table__expand-control-container .tds-expandable-row-icon--opened{transform:rotate(180deg)}:host(.tds-table--compact) .tds-table__header-cell--checkbox{height:32px}:host(.tds-table--compact) .tds-form-label--table{height:32px}:host(.tds-table--divider) .tds-table__header-cell--checkbox{border-right:1px solid var(--tds-table-divider)}:host(.tds-table--toolbar-available) .tds-table__header-cell--checkbox{border-top-left-radius:0}"}},[257,"tds-table-header",{allSelected:[1540,"all-selected"],selected:[1540],disabled:[1540],indeterminate:[4],multiselect:[32],expandableRows:[32],mainCheckboxSelected:[32],mainExpendSelected:[32],verticalDividers:[32],compactDesign:[32],noMinWidth:[32],whiteBackground:[32],enableToolbarDesign:[32],tableId:[32]},[[16,"internalTdsTablePropChange","internalTdsPropChangeListener"],[16,"internalTdsRowExpanded","internalTdsRowExpandedListener"]]]);function r(){"undefined"!=typeof customElements&&["tds-table-header","tds-checkbox"].forEach((t=>{switch(t){case"tds-table-header":customElements.get(e(t))||customElements.define(e(t),n);break;case"tds-checkbox":customElements.get(e(t))||l()}}))}r();const c=n,h=r;export{c as TdsTableHeader,h as defineCustomElement}