UNPKG

@scania/tegel

Version:
1 lines 5.05 kB
import{r as t,c as o,h as s,H as r,g as l}from"./p-2049fab2.js";import{g as a}from"./p-11648030.js";const e=class{constructor(s){t(this,s),this.internalTdsTablePropChange=o(this,"internalTdsTablePropChange",6),this.verticalDividers=!1,this.compactDesign=!1,this.noMinWidth=void 0,this.multiselect=!1,this.expandableRows=!1,this.responsive=!1,this.modeVariant=null,this.zebraMode="none",this.horizontalScrollWidth=null,this.tableId=a(),this.enableHorizontalScrollToolbarDesign=!1,this.enableHorizontalScrollFooterDesign=!1}emitInternalTdsPropChange(t,o){this.internalTdsTablePropChange.emit({tableId:this.tableId,changed:[t],[t]:o})}async getSelectedRows(){let t=[];const o=this.host.querySelector("tds-table-body");return Array.from(o.querySelectorAll("tds-table-body-row")).filter((t=>t.selected)).forEach((o=>{let s=[];Array.from(o.getElementsByTagName("tds-body-cell")).forEach((t=>{var o;const r={cellKey:null,cellValue:null};r.cellKey=t.cellKey,r.cellValue=null!==(o=t.cellValue)&&void 0!==o?o:t.innerText,s=[...s,r]})),t=[...t,s]})),t}getStyles(){const t={};return this.horizontalScrollWidth&&(t.width=`${this.horizontalScrollWidth}px`),t}multiselectChanged(t){this.emitInternalTdsPropChange("multiselect",t)}enableExpandableRowsChanged(t){this.emitInternalTdsPropChange("expandableRows",t)}compactDesignChanged(t){this.emitInternalTdsPropChange("compactDesign",t)}verticalDividersChanged(t){this.emitInternalTdsPropChange("verticalDividers",t)}noMinWidthChanged(t){this.emitInternalTdsPropChange("noMinWidth",t)}zebraModeChanged(t){this.emitInternalTdsPropChange("zebraMode",t)}modeVariantChanged(t){this.emitInternalTdsPropChange("modeVariant",t)}widthChanged(t){this.emitInternalTdsPropChange("horizontalScrollWidth",t)}componentWillRender(){this.horizontalScrollWidth&&(this.enableHorizontalScrollToolbarDesign=this.host.closest("tds-table").getElementsByTagName("tds-table-toolbar").length>=1,this.enableHorizontalScrollFooterDesign=this.host.closest("tds-table").getElementsByTagName("tds-table-footer").length>=1)}render(){return s(r,{key:"7a9b7fb545f7c4cd4c0f118910ce8af6d407851e",class:{"tds-table--responsive":this.responsive,"tds-mode-variant-primary":"primary"===this.modeVariant,"tds-mode-variant-secondary":"secondary"===this.modeVariant}},s("table",{key:"8a1c7e74c38a55e17d7cf322997f6690d6b29f3f",style:this.getStyles(),class:{"tds-table":!0,"tds-table--compact":this.compactDesign,"tds-table--divider":this.verticalDividers,"tds-table--no-min-width":this.noMinWidth,"tds-table--responsive":this.responsive,"tds-table--horizontal-scroll":!!this.horizontalScrollWidth,"tds-table--horizontal-scroll-toolbar":this.enableHorizontalScrollToolbarDesign&&!this.compactDesign,"tds-table--horizontal-scroll-toolbar-compact":this.enableHorizontalScrollToolbarDesign&&this.compactDesign,"tds-table--horizontal-scroll-footer":this.enableHorizontalScrollFooterDesign&&!this.compactDesign,"tds-table--horizontal-scroll-footer-compact":this.enableHorizontalScrollFooterDesign&&this.compactDesign}},s("slot",{key:"a47351a50dbd07b15f969ffaeb75f62045693968"})))}get host(){return l(this)}static get watchers(){return{multiselect:["multiselectChanged"],expandableRows:["enableExpandableRowsChanged"],compactDesign:["compactDesignChanged"],verticalDividers:["verticalDividersChanged"],noMinWidth:["noMinWidthChanged"],zebraMode:["zebraModeChanged"],modeVariant:["modeVariantChanged"],horizontalScrollWidth:["widthChanged"]}}};e.style=":host{--tds-scrollbar-width-standard:thin;--tds-scrollbar-width:10px;--tds-scrollbar-height:10px;--tds-scrollbar-thumb-border-width:3px;--tds-scrollbar-thumb-border-hover-width:2px}body{scrollbar-width:thin}:host,.tds-table{border-collapse:collapse;display:table;box-sizing:border-box}:host *,.tds-table *{box-sizing:border-box}:host(.tds-table--responsive),.tds-table--responsive{width:100%}.tds-table--horizontal-scroll{display:block;overflow-x:scroll;white-space:nowrap}.tds-table--horizontal-scroll:hover::-webkit-scrollbar-thumb{border:var(--tds-scrollbar-thumb-border-hover-width) solid transparent;background:var(--tds-scrollbar-hover-thumb-color);background-clip:padding-box}.tds-table--horizontal-scroll::-webkit-scrollbar{height:var(--tds-scrollbar-height)}.tds-table--horizontal-scroll::-webkit-scrollbar-track{background:var(--tds-scrollbar-track-color)}.tds-table--horizontal-scroll::-webkit-scrollbar-thumb{border-radius:40px;background:var(--tds-scrollbar-thumb-color);border:var(--tds-scrollbar-thumb-border-width) solid transparent;background-clip:padding-box}.tds-table--horizontal-scroll::-webkit-scrollbar-button{height:0;width:0}@supports not selector(::-webkit-scrollbar){.tds-table--horizontal-scroll{scrollbar-color:var(--tds-scrollbar-thumb-color) var(--tds-scrollbar-track-color);scrollbar-width:var(--tds-scrollbar-width-standard)}}.tds-table--horizontal-scroll-toolbar{margin-top:64px}.tds-table--horizontal-scroll-toolbar-compact{margin-top:56px}.tds-table--horizontal-scroll-footer{margin-bottom:49px}.tds-table--horizontal-scroll-footer-compact{margin-bottom:33px}";export{e as tds_table}