@momentum-ui/web-components 2.13.12 → 2.13.14
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/chunks/md-10.js +2 -2
- package/dist/chunks/md-11.js +1 -1
- package/dist/chunks/md-13.js +2 -2
- package/dist/chunks/md-14.js +3 -3
- package/dist/chunks/md-17.js +25 -25
- package/dist/chunks/md-26.js +1 -1
- package/dist/chunks/md-27.js +10 -9
- package/dist/chunks/md-31.js +1 -1
- package/dist/chunks/md-41.js +8 -8
- package/dist/chunks/md-44.js +16 -16
- package/dist/chunks/md-5.js +1 -1
- package/dist/chunks/md-57.js +15 -5
- package/dist/chunks/md-60.js +1 -1
- package/dist/chunks/md-63.js +5 -5
- package/dist/chunks/md-66.js +1 -1
- package/dist/chunks/md-68.js +1 -1
- package/dist/chunks/md-7.js +2 -2
- package/dist/chunks/md-71.js +18 -18
- package/dist/chunks/md-73.js +1 -1
- package/dist/chunks/md-75.js +1 -1
- package/dist/chunks/md-80.js +16 -13
- package/dist/chunks/md-82.js +20 -7
- package/dist/chunks/md-83.js +31 -31
- package/dist/chunks/md-84.js +1 -1
- package/dist/comp/md-floating-minimize-entry.js +1 -1
- package/dist/comp/md-floating-modal-entry.js +1 -1
- package/dist/index-entry.js +1 -1
- package/dist/index.js +3 -3
- package/dist/types/components/avatar/Avatar.d.ts +2 -0
- package/dist/types/components/button/Button.d.ts +1 -1
- package/dist/types/components/chip/Chip.d.ts +3 -0
- package/dist/types/components/floating-modal/FloatingMinimizedModal.d.ts +3 -3
- package/dist/types/components/help-text/HelpText.d.ts +1 -1
- package/dist/types/components/icon/Icon.d.ts +1 -1
- package/dist/types/components/input/Input.d.ts +3 -1
- package/dist/types/components/tabs/Tab.d.ts +5 -0
- package/dist/types/components/tabs/Tabs.d.ts +5 -2
- package/dist/types/components/taskitem/TaskItem.d.ts +1 -0
- package/dist/types/components/timepicker/TimePicker.d.ts +1 -1
- package/package.json +2 -2
package/dist/chunks/md-80.js
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
(window["momentum-web-components-[id]"]=window["momentum-web-components-[id]"]||[]).push([[80],{103:function(e,t,o){"use strict";o.r(t),o.d(t,"TableAdvanced",(function(){return w}));o(16),o(13),o(30);var r=o(6),i=o(34),a=o(5),l=o(0),d=o(3),s=o(4),n=o(2),c=o(83),h=o(32),p=o.n(h),b=l.css`:host{display:block}.md-table-advanced{width:100%}table{border-collapse:separate;border-spacing:0;max-width:100%;position:relative;width:100%}table.sticky-header{height:100%}table.sticky-header thead th:first-child{border-left:1px solid var(--table-advanced-border-color,#dedede)}table.sticky-header thead th{background-color:var(--table-advanced-header-bg-color,#f7f7f7);border-left:0;border-top:0;position:sticky;top:0;z-index:1}table.sticky-header thead th::before{border-top:1px solid var(--table-advanced-border-color,#dedede);bottom:0;content:" ";left:0;position:absolute;top:0;width:100%}table.sticky-header thead tr:last-child th{top:2.5rem}table.sticky-header thead tr:last-child th::before{border-bottom:1px solid var(--table-advanced-border-color,#dedede);border-top:1px solid var(--table-advanced-border-color,#dedede)}table.sticky-header thead tr:first-child th{height:calc(2.5rem + .0625rem*2);top:0}table.sticky-header thead tr:first-child th::before{border-bottom:1px solid var(--table-advanced-border-color,#dedede);border-top:1px solid var(--table-advanced-border-color,#dedede)}table.sticky-header thead tr:focus{outline:0}table.sticky-header thead tr:focus th:first-child{border-left:2px solid var(--md-focus-border-color)}table.sticky-header thead tr:focus th:last-child{border-right:2px solid var(--md-focus-border-color)}table.sticky-header thead tr:focus th::before{border-bottom:2px solid var(--md-focus-border-color);border-top:2px solid var(--md-focus-border-color)}thead th:first-child{border-left:1px solid var(--table-advanced-border-color,#dedede)}thead th{background-color:var(--table-advanced-header-bg-color,#f7f7f7);border:1px solid var(--table-advanced-border-color,#dedede);border-left:0;color:var(--md-secondary-text-color);font-family:var(--brand-font-regular, "CiscoSansTT Regular", "Helvetica Neue", Helvetica, Arial, sans-serif);font-size:14px;height:2.5rem;max-width:0;padding:0 .375rem;position:relative;text-align:left}thead th .filter{display:inline-block;height:auto;margin-top:calc(.25rem/2)}thead th .resize{background-color:rgba(0,0,0,0);cursor:col-resize;height:100%;left:calc(-.25rem/2);position:absolute;top:0;width:.25rem;z-index:1}thead .head-inner-cell{align-items:center;display:flex;min-width:.875rem}thead .head-inner-cell .filter-wrap{align-items:center;display:inline-flex;flex:1;justify-content:flex-end}thead .head-inner-cell .filter-icon{color:var(--md-secondary-text-color);cursor:pointer;display:inline-block;height:1.5rem;min-width:1.25rem;position:relative;z-index:1}thead .head-inner-cell .filter-icon::part(button){padding:.25rem;text-align:center;width:1.5rem}thead .head-inner-cell .filter-icon:hover{background-color:var(--table-advanced-filter-hover-bg-color,#ededed)}thead .head-inner-cell .filter-icon:active{background-color:var(--table-advanced-filter-pressed-bg-color,#dedede)}thead .head-inner-cell span{display:inline-block;overflow:hidden;padding-right:calc(.25rem*1.25);text-overflow:ellipsis;white-space:nowrap;width:100%}thead .head-inner-cell .sortable{background:rgba(0,0,0,0);border:0;color:var(--md-secondary-text-color);display:inline-block;min-width:calc(1rem*2.5);overflow:hidden;padding-right:calc(.25rem*4);text-overflow:ellipsis;white-space:nowrap;width:auto}thead md-menu-overlay::part(overlay){top:-.375rem;white-space:normal}@supports(-moz-appearance:none){thead md-menu-overlay::part(overlay){top:-.25rem;white-space:normal}}thead .drag-area-col{cursor:grab;display:block;height:calc(.25rem*10);left:.25rem;position:absolute;right:.25rem;top:0;z-index:1}thead .drag-area-col.drag{border:2px dashed var(--table-advanced-filter-border-color,#ccc);opacity:1}thead .drag-area-col.over{background-color:#a87ff1;height:100%;opacity:.1}thead .sortable{cursor:pointer;position:relative;z-index:1}thead .sortable::after,thead .sortable::before{border:.25rem solid transparent;content:"";display:block;height:0;opacity:.3;position:absolute;right:.25rem;top:50%;width:0}thead .sortable::before{border-bottom-color:var(--md-secondary-text-color);margin-top:-9px}thead .sortable::after{border-top-color:var(--md-secondary-text-color);margin-top:1px}thead .sortable.ascending::after{opacity:1}thead .sortable.descending::before{opacity:1}.filter-active{display:inline-block;height:1.25rem;text-align:center;vertical-align:bottom;width:1.25rem}.filter-active::part(icon){line-height:.875rem}.filter-menu{background-color:var(--table-advanced-filter-bg-color,#fff);padding:calc(.25rem*3);position:relative;z-index:1}.filter-menu select{background-color:var(--table-advanced-filter-bg-color,#fff);border:1px solid var(--table-advanced-filter-border-color,#ccc);color:var(--md-secondary-text-color);min-height:calc(.875rem*1.8);width:100%}.filter-menu input{background-color:var(--table-advanced-filter-bg-color,#fff);border:1px solid var(--table-advanced-filter-border-color,#ccc);color:var(--md-secondary-text-color);margin-top:calc(.25rem*2);width:100%}tbody tr{position:relative}tbody tr td:first-child{border-left:1px solid var(--table-advanced-border-color,#dedede)}tbody tr td{border-bottom:1px solid var(--table-advanced-border-color,#dedede);border-right:1px solid var(--table-advanced-border-color,#dedede);font-size:14px;height:2.5rem;max-width:0;padding:calc(.25rem*1.5);position:relative}tbody tr th:first-child{border-top:1px solid var(--table-advanced-border-color,#dedede)}tbody tr th{background-color:var(--table-advanced-header-bg-color,#f7f7f7);border-bottom:1px solid var(--table-advanced-border-color,#dedede);border-right:1px solid var(--table-advanced-border-color,#dedede);font-size:14px;max-width:0;padding:0 calc(.25rem*4);position:relative;text-align:left}tbody tr .inner-cell{display:flex;white-space:nowrap}tbody tr .inner-cell .warn-icon{display:inline-block;margin-left:.25rem;max-height:1.25rem;position:relative;vertical-align:middle;z-index:0}tbody tr .inner-cell md-icon::part(icon){line-height:1.25rem}tbody tr .inner-cell span{align-self:center;display:inline-block;flex:1;overflow:hidden;padding:0 .25rem;text-overflow:ellipsis;vertical-align:middle}tbody tr .drag-handle{cursor:grab;display:block;float:left;margin-right:calc(.25rem*1.5)}tbody tr .drag-area{height:50%;left:0;opacity:.3;position:absolute;right:0}tbody tr .drag-area.top{top:0}tbody tr .drag-area.bottom{background-color:rgba(0,0,0,0);bottom:0}tbody tr.ghost{opacity:.3}tbody tr:hover{background-color:var(--table-advanced-hover-bg-color,#f7f7f7)}tbody tr:hover td,tbody tr:hover th{background-color:var(--table-advanced-hover-bg-color,#f7f7f7)}tbody tr.selected,tbody tr:active{background-color:var(--table-advanced-selected-bg-color,#ededed)}tbody tr.selected td,tbody tr.selected th,tbody tr:active td,tbody tr:active th{background-color:var(--table-advanced-selected-bg-color,#ededed)}md-button.row-collapsible{height:1.25rem;margin-right:calc(.25rem*1.5);max-width:1.25rem;min-width:1.25rem}md-button.row-collapsible::part(button){border-radius:calc(.25rem/2);padding:0 .25rem}md-button.row-collapsible md-icon::part(icon){line-height:calc(.25rem*4)}`;function g(e=250){return function(t,o,r){let i;return function(e,t){if(e.descriptor=e.descriptor||Object.getOwnPropertyDescriptor(e.target,e.key),"function"!=typeof e.descriptor.value)return console.warn(e.key,"Decorator must be used on function"),e.descriptor;const o=e.descriptor.value,r=e.target.constructor.name;return e.descriptor.value=function(){const e=[];for(let t=0;t<arguments.length;t++)e[t]=arguments[t];return t.call(this,o,e,r)},e.descriptor}({target:t,key:o,descriptor:r},(function(t,o){clearTimeout(i),i=window.setTimeout(()=>{clearTimeout(i),t.apply(this,o)},e)}))}}class u{constructor(e,t){this.target=e,this.eventName=t}emit(e,t={bubbles:!0,composed:!0,cancelable:!1}){this.target.dispatchEvent(new CustomEvent(this.eventName,Object.assign({detail:e},t)))}}const m=new WeakMap,f=Object(d.directive)(e=>t=>{if(!(t instanceof d.NodePart))throw new Error("templateCallback can only be used in text bindings");const o=m.get(t);if(void 0!==o&&e.template===o.template&&t.value===o.fragment)return;const r=document.importNode(e.template.content,!0);e.cb({content:e.content,row:e.row,col:e.col,insertIndex:e.insertIndex,fragment:r}),t.setValue(r),m.set(t,{template:e.template,fragment:r})});var v;!function(e){const t={placeholder:"Filter..."};e.OPTIONS={equals:{label:"Equals",input:t,predicate:(e,t)=>e==t},notEqual:{label:"Not equal",input:t,predicate:(e,t)=>e!=t},contains:{label:"Contains",input:t,predicate:(e,t)=>e.includes(t)},notContains:{label:"Not contains",input:t,predicate:(e,t)=>!e.includes(t)},startsWith:{label:"Starts with",input:t,predicate:(e,t)=>e.startsWith(t)},endsWith:{label:"Ends with",input:t,predicate:(e,t)=>e.endsWith(t)},lessThan:{label:"Less than",input:t,predicate:(e,t)=>e<t},lessThanOrEquals:{label:"Less than or equals",input:t,predicate:(e,t)=>e<=t},greaterThan:{label:"Greater than",input:t,predicate:(e,t)=>e>t},greaterThanOrEquals:{label:"Greater than or equals",input:t,predicate:(e,t)=>e>=t}},e.optionsString=[e.OPTIONS.equals,e.OPTIONS.notEqual,e.OPTIONS.contains,e.OPTIONS.notContains,e.OPTIONS.startsWith,e.OPTIONS.endsWith],e.optionsNumber=[e.OPTIONS.equals,e.OPTIONS.notEqual,e.OPTIONS.lessThan,e.OPTIONS.lessThanOrEquals,e.OPTIONS.greaterThan,e.OPTIONS.greaterThanOrEquals]}(v||(v={}));var y=function(e,t,o,r){var i,a=arguments.length,l=a<3?t:null===r?r=Object.getOwnPropertyDescriptor(t,o):r;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)l=Reflect.decorate(e,t,o,r);else for(var d=e.length-1;d>=0;d--)(i=e[d])&&(l=(a<3?i(l):a>3?i(t,o,l):i(t,o))||l);return a>3&&l&&Object.defineProperty(t,o,l),l};const x=document.createElement("img");var w;x.src="data:image/gif;base64,R0lGODlhAQABAIAAAAAAAP///yH5BAEAAAAALAAAAAABAAEAAAIBRAA7",function(e){let t=class extends(Object(i.a)(l.LitElement)){constructor(){super(...arguments),this.isRowFocusable="true",this.error="",this.COLS=[],this.ROWS=[],this.updCols=()=>this.requestUpdate("COLS"),this.updRows=()=>this.requestUpdate("ROWS"),this.dragRow=-1,this.dropRow=-1,this.drops=[],this.dragRowElem=null,this.dragCol=-1,this.dropCol=-1,this.isResizing=!1,this.isSelectable=!1,this.selected={},this.expandedRowIdx={},this.dragover=e=>e.preventDefault(),this.eX=0,this.onResize=(e,t)=>{var o;if(-1!=this.dragCol||-1!=this.dragRow)return;this.isResizing=!0;const r=e.target;null===(o=e.dataTransfer)||void 0===o||o.setDragImage(x,0,0);const i=this.COLS.map(e=>this.shadowRoot.querySelector("th.col-index-"+e.index));this.COLS.forEach((e,t)=>e.width=i[t].offsetWidth+"px"),this.updCols();const a=e.x;this.eX=e.x;let l=-1,d=-1,s=-1;const n=this.COLS[t.index-1],c=i[t.index],h=i[t.index-1],p=c.offsetWidth,b=h.offsetWidth,g=()=>{const e=this.eX;if(l!=e&&0!=e){l=e;const o=l-a;d=p-o,s=b+o,t.width=d+"px",n.width=s+"px",this.updCols()}},u=e=>this.eX=e.x,m=()=>{this.isResizing=!1,r.removeEventListener("drag",g),r.removeEventListener("dragend",m),document.removeEventListener("dragover",u)};r.addEventListener("drag",g),r.addEventListener("dragend",m),document.addEventListener("dragover",u)}}disconnectedCallback(){super.disconnectedCallback(),document.removeEventListener("dragover",this.dragover)}connectedCallback(){super.connectedCallback(),document.addEventListener("dragover",this.dragover),this.updateTableConfig(),this.updateTableData(),this.populateTable()}update(e){super.update(e),e.has("data")&&(this.updateTableData(),this.updateDataInTable())}updateTableData(){if("string"==typeof this.data)try{this.tableData=JSON.parse(this.data)}catch(e){console.error("[INVALID_JSON_FORMAT] Please recheck the config json")}else this.tableData=Object.assign({},this.data)}updateTableConfig(){if("string"==typeof this.config)try{this.tableConfig=JSON.parse(this.config)}catch(e){console.error("[INVALID_JSON_FORMAT] Please recheck the data json")}else this.tableConfig=Object.assign({},this.config)}populateColumns(){var e;let t=0;const o=(e,o)=>{var r,i,a,l;const d=e.filters||(null===(i=null===(r=this.tableConfig.default)||void 0===r?void 0:r.col)||void 0===i?void 0:i.filters),s=d?"forString"==d?v.optionsString:"forNumber"==d?v.optionsNumber:d.length?d:null:null;this.COLS.push({options:Object.assign({},e),index:t++,group:o,sort:"default",sorter:e.sorter||(null===(l=null===(a=this.tableConfig.default)||void 0===a?void 0:a.col)||void 0===l?void 0:l.sorter),isCollapsable:this.tableConfig.cols.collapse==e.id,filter:s?{list:s,selectedIndex:0,input:"",active:!1,menuVisible:!1}:void 0})};this.tableConfig.cols.define.forEach(e=>{"children"in e?e.children.forEach(t=>o(t,{name:e.groupName,length:e.children.length})):o(e)}),this.isSelectable=!!this.tableConfig.rows&&"none"!=(null===(e=this.tableConfig.rows)||void 0===e?void 0:e.selectable)}populateData(){const e=this.COLS.length;if("csv"in this.tableData){const e=p.a.parse(this.tableData.csv,{skipEmptyLines:!0,transform:e=>e.trim()});if(e.errors)return void(this.error="PARSE ERROR:\n"+JSON.stringify(e.errors,null,2));{const t=e.data;this.ROWS=t.map(e=>e.map(e=>({text:e})))}}else if("list2d"in this.tableData)this.ROWS=this.tableData.list2d.map(e=>e.map(e=>({text:e})));else{for(;this.tableData.list.length>e;)this.ROWS.push(this.tableData.list.splice(0,e).map(e=>({text:e})));0!=this.tableData.list.length&&this.ROWS.push(this.tableData.list.map(e=>({text:e})))}0!=this.ROWS.length||(this.error="DATA ERROR: Data is empty")}validateData(){const e=this.COLS.length;this.ROWS.reduce((e,t)=>e+t.length,0)%e==0?this.ROWS.forEach((t,o)=>{const r=t.length;r!=e&&(this.error=`DATA ERROR: Total number of cols (=${e}) and data[${o}] length (=${r}) mismatch`)}):this.error=this.error="DATA ERROR: Data length mismatch. You must provide (numberOfRows * numberOfColumns) amount of data values."}populateTemplate(){const e=this.tableConfig.cellTemplates,t=Object.keys(e||{});e&&t.length&&this.ROWS.forEach((t,o)=>{t.forEach((t,r)=>{for(const i in e){const a=t.text.indexOf(i);if(-1!=a){const l=e[i],d=this.querySelector("#"+l.templateName);if(null==d){console.warn(`cellTemplates["${i}"]: Missing '${l.templateName}' template.`);continue}let s=t.text.replace(i,"");l.contentCb&&(s=l.contentCb({col:r,row:o,content:s,insertIndex:a})),this.ROWS[o][r]={text:s,template:{template:d,templateCb:l.templateCb,insertIndex:"replace"==l.contentUse?-1:a}};break}}})})}setDefaultFilterAndSort(){var e,t;const o=null===(e=this.tableConfig.default)||void 0===e?void 0:e.sort;if(o){const e=this.COLS.find(e=>e.options.id==o.colId);e?this.sort(e,o.order):console.warn(`Cant find ${o.colId} col - for sorting`)}const r=null===(t=this.tableConfig.default)||void 0===t?void 0:t.filter;if(r){const e=this.COLS.find(e=>e.options.id==r.colId);e?e.filter?(e.filter.selectedIndex=r.selectedIndex,e.filter.input=r.input,this.updCols(),this.filter(e)):console.warn(`Cant find filters on ${r.colId} col`):console.warn(`Cant find ${r.colId} col - for filtering`)}}populateTable(){this.populateColumns(),this.populateData(),this.validateData(),this.setDefaultFilterAndSort(),this.populateTemplate()}updateDataInTable(){this.populateData(),this.validateData(),this.populateTemplate()}onDropRow(){this.dragRow!=this.dropRow&&this.drops.push([this.dragRow,this.dropRow]),this.dragRow=-1,this.dropRow=-1,this.dragRowElem&&(this.dragRowElem.setAttribute("draggable","false"),this.dragRowElem=null)}onDropCol(){if(this.dragCol!=this.dropCol){const e=this.COLS[this.dragCol],t=this.COLS[this.dropCol],o=e.group,r=t.group,i=e.index,a=t.index;e.group=r,t.group=o,e.index=a,t.index=i,this.COLS[this.dragCol]=t,this.COLS[this.dropCol]=e,this.ROWS.forEach(e=>{const t=e[this.dragCol],o=e[this.dropCol];e[this.dragCol]=o,e[this.dropCol]=t}),this.updCols(),this.updRows()}this.dragCol=-1,this.dropCol=-1}sort(e,t){e.sorter&&(this.clearSelection(),this.drops=[],this.COLS.forEach(o=>{o.options.id==e.options.id?o.sort=t||("default"==o.sort?"ascending":"ascending"==o.sort?"descending":"default"):o.sort="default"}),this.updCols(),this.requestUpdate(),this["md-table-advanced-change"].emit({type:"sort",order:e.sort}))}filter(e){if(!e.filter)return;this.clearSelection(),this.drops=[];const t=e.filter.input.trim(),o=e.filter.list[e.filter.selectedIndex];e.filter.active=!!t,this.requestUpdate(),t?this["md-table-advanced-change"].emit({type:"filter-on",filter:o,input:t}):this["md-table-advanced-change"].emit({type:"filter-off",filter:e.filter.list[e.filter.selectedIndex]})}selectRow(e){var t;const o=e.row.idx,r=this.selected.hasOwnProperty(o);"multiple"==(null===(t=this.tableConfig.rows)||void 0===t?void 0:t.selectable)?(e.metaKey?r?delete this.selected[o]:this.selected[o]=!0:e.shiftKey||(this.selected={[o]:!0}),this["md-table-advanced-change"].emit({type:"multi-select",rows:Object.keys(this.selected).map(e=>+e)})):r?this.clearSelection():(this.selected={[o]:!0},this["md-table-advanced-change"].emit({type:"select",index:o})),this.requestUpdate("selected")}clearSelection(){this.selected={},this.requestUpdate("selected")}collapseToggle(e,t){e.stopPropagation(),this.expandedRowIdx[t]?(delete this.expandedRowIdx[t],this["md-table-advanced-change"].emit({type:"collapse",row:t})):(this.expandedRowIdx[t]=!0,this["md-table-advanced-change"].emit({type:"expand",row:t})),this.clearSelection(),this.requestUpdate()}render(){if(this.error)return l.html` <div>${this.error}</div> `;const{head:e}=this.tableConfig,t=Object(s.classMap)({"sticky-header":!!this.tableConfig.isStickyHeader});return l.html`
|
|
1
|
+
(window["momentum-web-components-[id]"]=window["momentum-web-components-[id]"]||[]).push([[80],{103:function(e,t,o){"use strict";o.r(t),o.d(t,"TableAdvanced",(function(){return w}));o(16),o(13),o(30);var r=o(6),i=o(34),a=o(5),l=o(0),d=o(3),s=o(4),n=o(2),c=o(83),h=o(32),p=o.n(h),b=l.css`:host{display:block}.md-table-advanced{width:100%}table{border-collapse:separate;border-spacing:0;max-width:100%;position:relative;width:100%}table.sticky-header{height:100%}table.sticky-header thead th:first-child{border-left:1px solid var(--table-advanced-border-color,#dedede)}table.sticky-header thead th{background-color:var(--table-advanced-header-bg-color,#f7f7f7);border-left:0;border-top:0;position:sticky;top:0;z-index:1}table.sticky-header thead th::before{border-top:1px solid var(--table-advanced-border-color,#dedede);bottom:0;content:" ";left:0;position:absolute;top:0;width:100%}table.sticky-header thead tr:last-child th{top:2.5rem}table.sticky-header thead tr:last-child th::before{border-bottom:1px solid var(--table-advanced-border-color,#dedede);border-top:1px solid var(--table-advanced-border-color,#dedede)}table.sticky-header thead tr:first-child th{height:calc(2.5rem + .0625rem*2);top:0}table.sticky-header thead tr:first-child th::before{border-bottom:1px solid var(--table-advanced-border-color,#dedede);border-top:1px solid var(--table-advanced-border-color,#dedede)}table.sticky-header thead tr:focus{outline:0}table.sticky-header thead tr:focus th:first-child{border-left:2px solid var(--md-focus-border-color)}table.sticky-header thead tr:focus th:last-child{border-right:2px solid var(--md-focus-border-color)}table.sticky-header thead tr:focus th::before{border-bottom:2px solid var(--md-focus-border-color);border-top:2px solid var(--md-focus-border-color)}thead th:first-child{border-left:1px solid var(--table-advanced-border-color,#dedede)}thead th{background-color:var(--table-advanced-header-bg-color,#f7f7f7);border:1px solid var(--table-advanced-border-color,#dedede);border-left:0;color:var(--md-secondary-text-color);font-family:var(--brand-font-regular, "CiscoSansTT Regular", "Helvetica Neue", Helvetica, Arial, sans-serif);font-size:14px;height:2.5rem;max-width:0;padding:0 .375rem;position:relative;text-align:left}thead th .filter{display:inline-block;height:auto;margin-top:calc(.25rem/2)}thead th .resize{background-color:rgba(0,0,0,0);cursor:col-resize;height:100%;left:calc(-.25rem/2);position:absolute;top:0;width:.25rem;z-index:1}thead .head-inner-cell{align-items:center;display:flex;min-width:.875rem}thead .head-inner-cell .filter-wrap{align-items:center;display:inline-flex;flex:1;justify-content:flex-end}thead .head-inner-cell .filter-icon{color:var(--md-secondary-text-color);cursor:pointer;display:inline-block;height:1.5rem;min-width:1.25rem;position:relative;z-index:1}thead .head-inner-cell .filter-icon::part(button){padding:.25rem;text-align:center;width:1.5rem}thead .head-inner-cell .filter-icon:hover{background-color:var(--table-advanced-filter-hover-bg-color,#ededed)}thead .head-inner-cell .filter-icon:active{background-color:var(--table-advanced-filter-pressed-bg-color,#dedede)}thead .head-inner-cell span{display:inline-block;overflow:hidden;padding-right:calc(.25rem*1.25);text-overflow:ellipsis;white-space:nowrap;width:100%}thead .head-inner-cell .sortable{background:rgba(0,0,0,0);border:0;color:var(--md-secondary-text-color);display:inline-block;min-width:calc(1rem*2.5);overflow:hidden;padding-right:calc(.25rem*4);text-overflow:ellipsis;white-space:nowrap;width:auto}thead md-menu-overlay::part(overlay){top:-.375rem;white-space:normal}@supports(-moz-appearance:none){thead md-menu-overlay::part(overlay){top:-.25rem;white-space:normal}}thead .drag-area-col{cursor:grab;display:block;height:calc(.25rem*10);left:.25rem;position:absolute;right:.25rem;top:0;z-index:1}thead .drag-area-col.drag{border:2px dashed var(--table-advanced-filter-border-color,#ccc);opacity:1}thead .drag-area-col.over{background-color:#a87ff1;height:100%;opacity:.1}thead .sortable{cursor:pointer;position:relative;z-index:1}thead .sortable::after,thead .sortable::before{border:.25rem solid transparent;content:"";display:block;height:0;opacity:.3;position:absolute;right:.25rem;top:50%;width:0}thead .sortable::before{border-bottom-color:var(--md-secondary-text-color);margin-top:-9px}thead .sortable::after{border-top-color:var(--md-secondary-text-color);margin-top:1px}thead .sortable.ascending::after{opacity:1}thead .sortable.descending::before{opacity:1}.filter-active{display:inline-block;height:1.25rem;text-align:center;vertical-align:bottom;width:1.25rem}.filter-active::part(icon){line-height:.875rem}.filter-menu{background-color:var(--table-advanced-filter-bg-color,#fff);padding:calc(.25rem*3);position:relative;z-index:1}.filter-menu select{background-color:var(--table-advanced-filter-bg-color,#fff);border:1px solid var(--table-advanced-filter-border-color,#ccc);color:var(--md-secondary-text-color);min-height:calc(.875rem*1.8);width:100%}.filter-menu input{background-color:var(--table-advanced-filter-bg-color,#fff);border:1px solid var(--table-advanced-filter-border-color,#ccc);color:var(--md-secondary-text-color);margin-top:calc(.25rem*2);width:100%}tbody tr{position:relative}tbody tr td:first-child{border-left:1px solid var(--table-advanced-border-color,#dedede)}tbody tr td{border-bottom:1px solid var(--table-advanced-border-color,#dedede);border-right:1px solid var(--table-advanced-border-color,#dedede);font-size:14px;height:2.5rem;max-width:0;padding:calc(.25rem*1.5);position:relative}tbody tr th:first-child{border-top:1px solid var(--table-advanced-border-color,#dedede)}tbody tr th{background-color:var(--table-advanced-header-bg-color,#f7f7f7);border-bottom:1px solid var(--table-advanced-border-color,#dedede);border-right:1px solid var(--table-advanced-border-color,#dedede);font-size:14px;max-width:0;padding:0 calc(.25rem*4);position:relative;text-align:left}tbody tr .inner-cell{display:flex;white-space:nowrap;align-items:center}tbody tr .inner-cell .warn-icon{display:inline-block;margin-left:.25rem;max-height:1.25rem;position:relative;vertical-align:middle;z-index:0}tbody tr .inner-cell md-icon::part(icon){line-height:1.25rem}tbody tr .inner-cell span{align-self:center;display:inline-block;flex:1;overflow:hidden;padding:0 .25rem;text-overflow:ellipsis;vertical-align:middle}tbody tr .drag-handle{cursor:grab;float:left;margin-right:calc(.25rem*1.5)}tbody tr .drag-area{height:50%;left:0;opacity:.3;position:absolute;right:0}tbody tr .drag-area.top{top:0}tbody tr .drag-area.bottom{background-color:rgba(0,0,0,0);bottom:0}tbody tr.ghost{opacity:.3}tbody tr:hover{background-color:var(--table-advanced-hover-bg-color,#f7f7f7)}tbody tr:hover td,tbody tr:hover th{background-color:var(--table-advanced-hover-bg-color,#f7f7f7)}tbody tr.selected,tbody tr:active{background-color:var(--table-advanced-selected-bg-color,#ededed)}tbody tr.selected td,tbody tr.selected th,tbody tr:active td,tbody tr:active th{background-color:var(--table-advanced-selected-bg-color,#ededed)}button.row-collapsible{display:inline-flex;align-items:center;justify-content:center;height:1.25rem;width:1.25rem;margin-right:calc(.25rem*1.5);background-color:rgba(0,0,0,0);border:1px solid var(--table-advanced-border-color);border-radius:2px}button.row-collapsible:hover{background-color:var(--table-advanced-filter-hover-bg-color,#ededed);border:0}button.row-collapsible:active{background-color:var(--table-advanced-filter-pressed-bg-color);border:0}`;function g(e=250){return function(t,o,r){let i;return function(e,t){if(e.descriptor=e.descriptor||Object.getOwnPropertyDescriptor(e.target,e.key),"function"!=typeof e.descriptor.value)return console.warn(e.key,"Decorator must be used on function"),e.descriptor;const o=e.descriptor.value,r=e.target.constructor.name;return e.descriptor.value=function(...e){return t.call(this,o,e,r)},e.descriptor}({target:t,key:o,descriptor:r},(function(t,o){clearTimeout(i),i=window.setTimeout(()=>{clearTimeout(i),t.apply(this,o)},e)}))}}class u{constructor(e,t){this.target=e,this.eventName=t}emit(e,t={bubbles:!0,composed:!0,cancelable:!1}){this.target.dispatchEvent(new CustomEvent(this.eventName,Object.assign({detail:e},t)))}}const m=new WeakMap,f=Object(d.directive)(e=>t=>{if(!(t instanceof d.NodePart))throw new Error("templateCallback can only be used in text bindings");const o=m.get(t);if(void 0!==o&&e.template===o.template&&t.value===o.fragment)return;const r=document.importNode(e.template.content,!0);e.cb({content:e.content,row:e.row,col:e.col,insertIndex:e.insertIndex,fragment:r}),t.setValue(r),m.set(t,{template:e.template,fragment:r})});var v;!function(e){const t={placeholder:"Filter..."};e.OPTIONS={equals:{label:"Equals",input:t,predicate:(e,t)=>e==t},notEqual:{label:"Not equal",input:t,predicate:(e,t)=>e!=t},contains:{label:"Contains",input:t,predicate:(e,t)=>e.includes(t)},notContains:{label:"Not contains",input:t,predicate:(e,t)=>!e.includes(t)},startsWith:{label:"Starts with",input:t,predicate:(e,t)=>e.startsWith(t)},endsWith:{label:"Ends with",input:t,predicate:(e,t)=>e.endsWith(t)},lessThan:{label:"Less than",input:t,predicate:(e,t)=>e<t},lessThanOrEquals:{label:"Less than or equals",input:t,predicate:(e,t)=>e<=t},greaterThan:{label:"Greater than",input:t,predicate:(e,t)=>e>t},greaterThanOrEquals:{label:"Greater than or equals",input:t,predicate:(e,t)=>e>=t}},e.optionsString=[e.OPTIONS.equals,e.OPTIONS.notEqual,e.OPTIONS.contains,e.OPTIONS.notContains,e.OPTIONS.startsWith,e.OPTIONS.endsWith],e.optionsNumber=[e.OPTIONS.equals,e.OPTIONS.notEqual,e.OPTIONS.lessThan,e.OPTIONS.lessThanOrEquals,e.OPTIONS.greaterThan,e.OPTIONS.greaterThanOrEquals]}(v||(v={}));var y=function(e,t,o,r){var i,a=arguments.length,l=a<3?t:null===r?r=Object.getOwnPropertyDescriptor(t,o):r;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)l=Reflect.decorate(e,t,o,r);else for(var d=e.length-1;d>=0;d--)(i=e[d])&&(l=(a<3?i(l):a>3?i(t,o,l):i(t,o))||l);return a>3&&l&&Object.defineProperty(t,o,l),l};const x=document.createElement("img");var w;x.src="data:image/gif;base64,R0lGODlhAQABAIAAAAAAAP///yH5BAEAAAAALAAAAAABAAEAAAIBRAA7",function(e){let t=class extends(Object(i.a)(l.LitElement)){constructor(){super(...arguments),this.isRowFocusable="true",this.error="",this.COLS=[],this.ROWS=[],this.updCols=()=>this.requestUpdate("COLS"),this.updRows=()=>this.requestUpdate("ROWS"),this.dragRow=-1,this.dropRow=-1,this.drops=[],this.dragRowElem=null,this.dragCol=-1,this.dropCol=-1,this.isResizing=!1,this.isSelectable=!1,this.selected={},this.expandedRowIdx={},this.dragover=e=>e.preventDefault(),this.eX=0,this.onResize=(e,t)=>{var o;if(-1!=this.dragCol||-1!=this.dragRow)return;this.isResizing=!0;const r=e.target;null===(o=e.dataTransfer)||void 0===o||o.setDragImage(x,0,0);const i=this.COLS.map(e=>this.shadowRoot.querySelector("th.col-index-"+e.index));this.COLS.forEach((e,t)=>e.width=i[t].offsetWidth+"px"),this.updCols();const a=e.x;this.eX=e.x;let l=-1,d=-1,s=-1;const n=this.COLS[t.index-1],c=i[t.index],h=i[t.index-1],p=c.offsetWidth,b=h.offsetWidth,g=()=>{const e=this.eX;if(l!=e&&0!=e){l=e;const o=l-a;d=p-o,s=b+o,t.width=d+"px",n.width=s+"px",this.updCols()}},u=e=>this.eX=e.x,m=()=>{this.isResizing=!1,r.removeEventListener("drag",g),r.removeEventListener("dragend",m),document.removeEventListener("dragover",u)};r.addEventListener("drag",g),r.addEventListener("dragend",m),document.addEventListener("dragover",u)}}disconnectedCallback(){super.disconnectedCallback(),document.removeEventListener("dragover",this.dragover)}connectedCallback(){super.connectedCallback(),document.addEventListener("dragover",this.dragover),this.updateTableConfig(),this.updateTableData(),this.populateTable()}update(e){super.update(e),e.has("data")&&(this.updateTableData(),this.updateDataInTable())}updateTableData(){if("string"==typeof this.data)try{this.tableData=JSON.parse(this.data)}catch(e){console.error("[INVALID_JSON_FORMAT] Please recheck the config json")}else this.tableData=Object.assign({},this.data)}updateTableConfig(){if("string"==typeof this.config)try{this.tableConfig=JSON.parse(this.config)}catch(e){console.error("[INVALID_JSON_FORMAT] Please recheck the data json")}else this.tableConfig=Object.assign({},this.config)}populateColumns(){var e;let t=0;const o=(e,o)=>{var r,i,a,l;const d=e.filters||(null===(i=null===(r=this.tableConfig.default)||void 0===r?void 0:r.col)||void 0===i?void 0:i.filters),s=d?"forString"==d?v.optionsString:"forNumber"==d?v.optionsNumber:d.length?d:null:null;this.COLS.push({options:Object.assign({},e),index:t++,group:o,sort:"default",sorter:e.sorter||(null===(l=null===(a=this.tableConfig.default)||void 0===a?void 0:a.col)||void 0===l?void 0:l.sorter),isCollapsable:this.tableConfig.cols.collapse==e.id,filter:s?{list:s,selectedIndex:0,input:"",active:!1,menuVisible:!1}:void 0})};this.tableConfig.cols.define.forEach(e=>{"children"in e?e.children.forEach(t=>o(t,{name:e.groupName,length:e.children.length})):o(e)}),this.isSelectable=!!this.tableConfig.rows&&"none"!=(null===(e=this.tableConfig.rows)||void 0===e?void 0:e.selectable)}populateData(){const e=this.COLS.length;if("csv"in this.tableData){const e=p.a.parse(this.tableData.csv,{skipEmptyLines:!0,transform:e=>e.trim()});if(e.errors)return void(this.error="PARSE ERROR:\n"+JSON.stringify(e.errors,null,2));{const t=e.data;this.ROWS=t.map(e=>e.map(e=>({text:e})))}}else if("list2d"in this.tableData)this.ROWS=this.tableData.list2d.map(e=>e.map(e=>({text:e})));else{for(;this.tableData.list.length>e;)this.ROWS.push(this.tableData.list.splice(0,e).map(e=>({text:e})));0!=this.tableData.list.length&&this.ROWS.push(this.tableData.list.map(e=>({text:e})))}0!=this.ROWS.length||(this.error="DATA ERROR: Data is empty")}validateData(){const e=this.COLS.length;this.ROWS.reduce((e,t)=>e+t.length,0)%e==0?this.ROWS.forEach((t,o)=>{const r=t.length;r!=e&&(this.error=`DATA ERROR: Total number of cols (=${e}) and data[${o}] length (=${r}) mismatch`)}):this.error=this.error="DATA ERROR: Data length mismatch. You must provide (numberOfRows * numberOfColumns) amount of data values."}populateTemplate(){const e=this.tableConfig.cellTemplates,t=Object.keys(e||{});e&&t.length&&this.ROWS.forEach((t,o)=>{t.forEach((t,r)=>{for(const i in e){const a=t.text.indexOf(i);if(-1!=a){const l=e[i],d=this.querySelector("#"+l.templateName);if(null==d){console.warn(`cellTemplates["${i}"]: Missing '${l.templateName}' template.`);continue}let s=t.text.replace(i,"");l.contentCb&&(s=l.contentCb({col:r,row:o,content:s,insertIndex:a})),this.ROWS[o][r]={text:s,template:{template:d,templateCb:l.templateCb,insertIndex:"replace"==l.contentUse?-1:a}};break}}})})}setDefaultFilterAndSort(){var e,t;const o=null===(e=this.tableConfig.default)||void 0===e?void 0:e.sort;if(o){const e=this.COLS.find(e=>e.options.id==o.colId);e?this.sort(e,o.order):console.warn(`Cant find ${o.colId} col - for sorting`)}const r=null===(t=this.tableConfig.default)||void 0===t?void 0:t.filter;if(r){const e=this.COLS.find(e=>e.options.id==r.colId);e?e.filter?(e.filter.selectedIndex=r.selectedIndex,e.filter.input=r.input,this.updCols(),this.filter(e)):console.warn(`Cant find filters on ${r.colId} col`):console.warn(`Cant find ${r.colId} col - for filtering`)}}populateTable(){this.populateColumns(),this.populateData(),this.validateData(),this.setDefaultFilterAndSort(),this.populateTemplate()}updateDataInTable(){this.populateData(),this.validateData(),this.populateTemplate()}onDropRow(){this.dragRow!=this.dropRow&&this.drops.push([this.dragRow,this.dropRow]),this.dragRow=-1,this.dropRow=-1,this.dragRowElem&&(this.dragRowElem.setAttribute("draggable","false"),this.dragRowElem=null)}onDropCol(){if(this.dragCol!=this.dropCol){const e=this.COLS[this.dragCol],t=this.COLS[this.dropCol],o=e.group,r=t.group,i=e.index,a=t.index;e.group=r,t.group=o,e.index=a,t.index=i,this.COLS[this.dragCol]=t,this.COLS[this.dropCol]=e,this.ROWS.forEach(e=>{const t=e[this.dragCol],o=e[this.dropCol];e[this.dragCol]=o,e[this.dropCol]=t}),this.updCols(),this.updRows()}this.dragCol=-1,this.dropCol=-1}sort(e,t){e.sorter&&(this.clearSelection(),this.drops=[],this.COLS.forEach(o=>{o.options.id==e.options.id?o.sort=t||("default"==o.sort?"ascending":"ascending"==o.sort?"descending":"default"):o.sort="default"}),this.updCols(),this.requestUpdate(),this["md-table-advanced-change"].emit({type:"sort",order:e.sort}))}filter(e){if(!e.filter)return;this.clearSelection(),this.drops=[];const t=e.filter.input.trim(),o=e.filter.list[e.filter.selectedIndex];e.filter.active=!!t,this.requestUpdate(),t?this["md-table-advanced-change"].emit({type:"filter-on",filter:o,input:t}):this["md-table-advanced-change"].emit({type:"filter-off",filter:e.filter.list[e.filter.selectedIndex]})}selectRow(e){var t;const o=e.row.idx,r=this.selected.hasOwnProperty(o);"multiple"==(null===(t=this.tableConfig.rows)||void 0===t?void 0:t.selectable)?(e.metaKey?r?delete this.selected[o]:this.selected[o]=!0:e.shiftKey||(this.selected={[o]:!0}),this["md-table-advanced-change"].emit({type:"multi-select",rows:Object.keys(this.selected).map(e=>+e)})):r?this.clearSelection():(this.selected={[o]:!0},this["md-table-advanced-change"].emit({type:"select",index:o})),this.requestUpdate("selected")}clearSelection(){this.selected={},this.requestUpdate("selected")}collapseToggle(e,t){e.stopPropagation(),this.expandedRowIdx[t]?(delete this.expandedRowIdx[t],this["md-table-advanced-change"].emit({type:"collapse",row:t})):(this.expandedRowIdx[t]=!0,this["md-table-advanced-change"].emit({type:"expand",row:t})),this.clearSelection(),this.requestUpdate()}render(){if(this.error)return l.html` <div>${this.error}</div> `;const{head:e}=this.tableConfig,t=Object(s.classMap)({"sticky-header":!!this.tableConfig.isStickyHeader});return l.html`
|
|
2
2
|
<div class="md-table-advanced">
|
|
3
3
|
<slot></slot>
|
|
4
4
|
<table class=${t} summary=${Object(n.ifDefined)(null==e?void 0:e.summary)}>
|
|
@@ -57,10 +57,17 @@
|
|
|
57
57
|
<!-- FILTER -->
|
|
58
58
|
${e.filter?l.html`
|
|
59
59
|
<div class="filter-wrap">
|
|
60
|
-
${e.filter.active?l.html`
|
|
60
|
+
${e.filter.active?l.html`
|
|
61
|
+
<md-icon
|
|
62
|
+
class="filter-active"
|
|
63
|
+
name="filter-bold"
|
|
64
|
+
size="14"
|
|
65
|
+
iconSet="momentumDesign"
|
|
66
|
+
></md-icon>
|
|
67
|
+
`:d.nothing}
|
|
61
68
|
<md-menu-overlay placement="bottom" class="filter" custom-width="188px">
|
|
62
69
|
<md-button class="filter-icon" slot="menu-trigger" color="color-none" size="size-none">
|
|
63
|
-
<md-icon slot="icon" name="
|
|
70
|
+
<md-icon slot="icon" name="filter-bold" size="16" iconSet="momentumDesign"></md-icon>
|
|
64
71
|
</md-button>
|
|
65
72
|
<div class="filter-menu" style="width: 100%;">
|
|
66
73
|
<select
|
|
@@ -139,21 +146,17 @@
|
|
|
139
146
|
<md-icon
|
|
140
147
|
class="drag-handle"
|
|
141
148
|
@mousedown=${e=>{this.isResizing||-1!=this.dragCol||(this.dragRowElem=e.target.parentNode,this.dragRowElem.setAttribute("draggable","true"))}}
|
|
142
|
-
name="
|
|
149
|
+
name="dragger-vertical-bold"
|
|
150
|
+
size="16"
|
|
151
|
+
iconSet="momentumDesign"
|
|
143
152
|
>
|
|
144
153
|
</md-icon>
|
|
145
154
|
`:d.nothing}
|
|
146
155
|
${a.isCollapsable?l.html`
|
|
147
156
|
${"expanded"==e.collapse||"collapsed"==e.collapse?l.html`
|
|
148
|
-
<
|
|
149
|
-
|
|
150
|
-
|
|
151
|
-
@click=${t=>this.collapseToggle(t,e.idx)}
|
|
152
|
-
outline
|
|
153
|
-
color="color-none"
|
|
154
|
-
>
|
|
155
|
-
${"collapsed"==e.collapse?l.html` <md-icon slot="icon" name="plus_12"></md-icon> `:l.html` <md-icon slot="icon" name="minus_12"></md-icon> `}
|
|
156
|
-
</md-button>
|
|
157
|
+
<button class="row-collapsible" @click=${t=>this.collapseToggle(t,e.idx)}>
|
|
158
|
+
${"collapsed"==e.collapse?l.html` <md-icon name="plus-bold" size="12" iconSet="momentumDesign"></md-icon> `:l.html` <md-icon name="minus-bold" size="12" iconSet="momentumDesign"></md-icon> `}
|
|
159
|
+
</button>
|
|
157
160
|
`:d.nothing}
|
|
158
161
|
<span>${"child"==e.collapse?d.nothing:s}</span>
|
|
159
162
|
`:l.html` <span>${s}</span> `}
|
package/dist/chunks/md-82.js
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
|
-
(window["momentum-web-components-[id]"]=window["momentum-web-components-[id]"]||[]).push([[82],{101:function(e,t,i){"use strict";i.r(t),i.d(t,"MORE_MENU_TAB_COPY_ID_PREFIX",(function(){return g})),i.d(t,"Tabs",(function(){return y}));i(13),i(30);var s=i(1),a=i(7),n=i(5),l=i(0),d=i(4),o=i(15),r=i(8),b=i(70),h=i(22),c=i(31),u=i.n(c),p=i(64),m=i(39),v=i(45),T=function(e,t,i,s){var a,n=arguments.length,l=n<3?t:null===s?s=Object.getOwnPropertyDescriptor(t,i):s;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)l=Reflect.decorate(e,t,i,s);else for(var d=e.length-1;d>=0;d--)(a=e[d])&&(l=(n<3?a(l):n>3?a(t,i,l):a(t,i))||l);return n>3&&l&&Object.defineProperty(t,i,l),l},f=function(e,t,i,s){return new(i||(i=Promise))((function(a,n){function l(e){try{o(s.next(e))}catch(e){n(e)}}function d(e){try{o(s.throw(e))}catch(e){n(e)}}function o(e){var t;e.done?a(e.value):(t=e.value,t instanceof i?t:new i((function(e){e(t)}))).then(l,d)}o((s=s.apply(e,t||[])).next())}))};const g="more-menu-copy-";var y;!function(e){let t=class extends(Object(a.c)(Object(a.d)(Object(a.e)(l.LitElement)))){constructor(){super(...arguments),this.justified=!1,this.overflowLabel="More Tabs",this.draggable=!1,this.direction="horizontal",this.moreItemsScrollLimit=Number.MAX_SAFE_INTEGER,this.delay=0,this.animation=100,this.ghostClass="",this.chosenClass="",this.forceFallback=!1,this.fallbackClass="",this.tabsId="",this.persistSelection=!1,this.compUniqueId="",this.isMoreTabMenuVisible=!1,this.isMoreTabMenuMeasured=!1,this.isMoreTabMenuOpen=!1,this.isMoreTabMenuSelected=!1,this.isMoreTabMenuScrollable=!1,this.moreTabMenuOffsetWidth=0,this.moreTabMenuMaxHeight=null,this.tabsViewportDataList=[],this.tabsFilteredAsVisibleList=[],this.tabsFilteredAsHiddenList=[],this.noTabsVisible=!1,this.defaultTabsOrderArray=[],this.tabsOrderPrefsArray=[],this.tabs=[],this.panels=[],this.tabsCopy=[],this.tabsHash={},this.tabsCopyHash={},this.tabsIdxHash={},this.tabsVisibleIdxHash={},this.tabsHiddenIdxHash={},this.visibleTabsSortableInstance=null,this.hiddenTabsSortableInstance=null,this.handleOnDragEnd=e=>f(this,void 0,void 0,(function*(){var t,i,s,a,n,l,d,o,r,b;e.stopPropagation();const h=e.oldIndex,c=e.newIndex,u=[...this.tabsFilteredAsVisibleList],p=[...this.tabsFilteredAsHiddenList],m=this.getDragDirection(e);if(void 0!==h&&void 0!==c){switch(m){case"visibleToHidden":{null===(i=null===(t=this.hiddenTabsContainerElement)||void 0===t?void 0:t.querySelector("#"+e.item.id))||void 0===i||i.remove();const s=u[h],a=p.slice(-1)[0],n=c===this.tabsFilteredAsHiddenList.length?c-1:c;p.splice(n,0,s),p.pop();const l=u.filter(t=>t.id!==this.getNormalizedTabId(e.item.id));l.push(a),this.tabsFilteredAsVisibleList=[...l],this.tabsFilteredAsHiddenList=[...p];break}case"visibleToVisible":{const e=u[h];u.splice(h,1),u.splice(c,0,e),this.tabsFilteredAsVisibleList=u,c===this.tabsFilteredAsVisibleList.length-1&&(null===(a=null===(s=this.visibleTabsContainerElement)||void 0===s?void 0:s.children[this.visibleTabsContainerElement.children.length-1])||void 0===a||a.remove());const t=this.visibleTabsContainerElement.children[h],i=this.visibleTabsContainerElement.children[c];if(!t||!i)return;null===(n=this.visibleTabsContainerElement)||void 0===n||n.replaceChild(i,t),null===(l=this.visibleTabsContainerElement)||void 0===l||l.insertBefore(t,i);break}case"hiddenToVisible":{null===(o=null===(d=this.visibleTabsContainerElement)||void 0===d?void 0:d.querySelector("#"+e.item.id))||void 0===o||o.remove();const t=p[h],i=u.slice(-1)[0];p.splice(h,1),p.splice(0,0,i);const s=c===this.tabsFilteredAsVisibleList.length?c-1:c;u.splice(s,0,t),u.pop(),this.tabsFilteredAsVisibleList=u,this.tabsFilteredAsHiddenList=p;break}case"hiddenToHidden":{const e=p[h];p.splice(h,1),p.splice(c,0,e),this.tabsFilteredAsHiddenList=p,c===this.tabsFilteredAsHiddenList.length-1&&(null===(b=null===(r=this.hiddenTabsContainerElement)||void 0===r?void 0:r.children[this.hiddenTabsContainerElement.children.length-1])||void 0===b||b.remove());break}}if(this.compUniqueId){const e=[...this.tabsFilteredAsVisibleList,...this.tabsFilteredAsHiddenList],t=e.findIndex(e=>e.selected);this.storeSelectedTabIndex(t),this.tabsOrderPrefsArray=e.map(e=>e.name),localStorage.setItem(this.compUniqueId,this.tabsOrderPrefsArray.join(","))}}}))}generateOptions(){return{group:"shared",animation:10,swapThreshold:1,draggable:"md-tab",direction:this.direction,forceFallback:this.forceFallback,fallbackClass:this.fallbackClass,ghostClass:this.ghostClass,chosenClass:this.chosenClass,onEnd:this.handleOnDragEnd}}getCopyTabId(e){var t;return(null===(t=e.id)||void 0===t?void 0:t.startsWith(g))?`${g}${e.id}`:e.id}getAriaConrolId(e){var t,i;if(null===(t=e.id)||void 0===t?void 0:t.startsWith(g))return`${g}${e.id}`;return"tab_panel_"+(null===(i=e.id)||void 0===i?void 0:i.substring(4))}getTabIndex(e){var t,i;return this.isMoreTabMenuVisible&&0===this.getCurrentIndex(null==e?void 0:e.id)&&this.selected>(null===(t=this.tabsFilteredAsVisibleList)||void 0===t?void 0:t.length)-1||(null===(i=this.tabsFilteredAsVisibleList[this.selected])||void 0===i?void 0:i.id)===e.id?0:-1}getNormalizedTabId(e){return e.replace(g,"")}static get styles(){return[n.a,m.a]}ensureTabsUpdateComplete(e){return f(this,void 0,void 0,(function*(){const t=e.map(e=>void 0!==e.updateComplete?e.updateComplete:null).filter(e=>null!==e);t.length&&(yield Promise.all(t))}))}measureTabsOffsetWidth(){return this.justified||"vertical"===this.direction?this.tabs.map(e=>{e.setAttribute("measuringrealwidth","");const t=e.closable?e.offsetWidth+v.TAB_CROSS_WIDTH:e.offsetWidth;return e.removeAttribute("measuringrealwidth"),t}):this.tabs.map(e=>e.closable?e.offsetWidth+v.TAB_CROSS_WIDTH:e.offsetWidth)}measureHiddenTabsCopiesOffsetHeight(){return this.tabsCopy.map(e=>e.offsetHeight)}manageOverflow(){var e,t;return f(this,void 0,void 0,(function*(){if("vertical"!==this.direction){let i;i=0===this.tabsFilteredAsVisibleList.length&&0===this.tabsFilteredAsHiddenList.length?[...this.tabs]:[...this.tabsFilteredAsVisibleList,...this.tabsFilteredAsHiddenList],i.forEach(e=>{var t,i,s,a,n;if((null===(t=e.children)||void 0===t?void 0:t.length)&&0===(null===(s=null===(i=e.children[0])||void 0===i?void 0:i.children)||void 0===s?void 0:s.length)){const t=null===(a=null==e?void 0:e.querySelector("slot"))||void 0===a?void 0:a.assignedNodes({flatten:!0})[0].cloneNode(!0);t&&(t.classList.add("tab-content"),null===(n=null==e?void 0:e.children[0])||void 0===n||n.appendChild(t))}});const s=i.length;if(this.tabsListElement&&s){const a=(null===(e=this.tabsSettingsElement)||void 0===e?void 0:e.offsetWidth)?this.tabsListElement.offsetWidth-(null===(t=this.tabsSettingsElement)||void 0===t?void 0:t.offsetWidth):this.tabsListElement.offsetWidth;yield this.ensureTabsUpdateComplete(this.tabs);const n=this.measureTabsOffsetWidth(),l=i.reduce((e,t,i)=>e+=n[i],0);if(l){yield this.setupMoreTab();let e=!0;a<l&&(e=!1);const t=[];let d=0;i.forEach((i,l)=>{d+=n[l];const o=!e&&d+(l<s-1?this.moreTabMenuOffsetWidth:0)>a;t.push({isTabInViewportHidden:o,tabOffsetWidth:n[l]})}),this.tabsViewportDataList=t,this.tabsViewportDataList.forEach((e,t)=>this.tabs[t].viewportHidden=e.isTabInViewportHidden),this.isMoreTabMenuVisible=!!this.tabsViewportDataList.find(e=>e.isTabInViewportHidden),this.tabsFilteredAsVisibleList=i.filter((e,t)=>!this.tabsViewportDataList[t].isTabInViewportHidden),this.tabsVisibleIdxHash=this.tabsFilteredAsVisibleList.reduce((e,t,i)=>(e[t.id]=i,e),{}),this.tabsFilteredAsHiddenList=i.filter((e,t)=>this.tabsViewportDataList[t].isTabInViewportHidden),this.tabsHiddenIdxHash=this.tabsFilteredAsHiddenList.reduce((e,t,i)=>(e[t.id]=i,e),{})}}this.updateIsMoreTabMenuSelected();const a=this.tabsFilteredAsHiddenList.find(e=>!e.disabled);this.updateHiddenIdPositiveTabIndex(a)}}))}updateIsMoreTabMenuSelected(){this.isMoreTabMenuSelected=!!this.tabsFilteredAsHiddenList.find(e=>e.selected)}updateHiddenIdPositiveTabIndex(e){this.tabHiddenIdPositiveTabIndex=e?e.id:void 0}sortTabsAndPanes(){if(!this.tabsOrderPrefsArray.length)return;const e=(e,t)=>{const i=e.getAttribute("name")||"",s=t.getAttribute("name")||"";return this.tabsOrderPrefsArray.indexOf(i)-this.tabsOrderPrefsArray.indexOf(s)};this.tabs.sort(e),this.panels.sort(e)}linkPanelsAndTabs(){return f(this,void 0,void 0,(function*(){this.sortTabsAndPanes();const{tabs:e,panels:t}=this;if(0===e.length||0===t.length)return void console.warn("The tabs or panels count should't be equal zero.");e.length!==t.length&&console.warn(`The amount of tabs (${e.length}) doesn't match the amount of panels (${t.length}).`),e.forEach((e,i)=>{const s=Object(h.nanoid)(10),a="tab_"+s,n="tab_panel_"+s;e.setAttribute("id",a),e.setAttribute("aria-controls",n),e.selected=this.selected===i,"vertical"===this.direction&&(e.vertical=!0);const l=t[i];l?(l.setAttribute("id",n),l.setAttribute("aria-labelledby",a),l.selected=this.selected===i,e.disabled&&(l.hidden=!0,l.selected=!1)):e.disabled=!0});let i=this.selected;for(;i<e.length&&e[i].disabled;)i++;i=i===e.length?0:i,e[i].selected=!0,t[i].selected=!0,this.tabsHash=this.tabs.reduce((e,t)=>(e[t.id]=t,e),{}),this.tabsIdxHash=this.tabs.reduce((e,t,i)=>(e[t.id]=i,e),{})}))}get slotItem(){return this.tabSlotElement}filterSlotted(){return this.tabSlotElement.assignedElements()}handleResize(e){const t=Object.create(null,{handleResize:{get:()=>super.handleResize}});return f(this,void 0,void 0,(function*(){t.handleResize&&t.handleResize.call(this,e),yield this.manageOverflow()}))}getDragDirection(e){return e.from===this.visibleTabsContainerElement&&e.to===this.hiddenTabsContainerElement?"visibleToHidden":e.from===this.visibleTabsContainerElement&&e.to===this.visibleTabsContainerElement?"visibleToVisible":e.from===this.hiddenTabsContainerElement&&e.to===this.visibleTabsContainerElement?"hiddenToVisible":e.from===this.hiddenTabsContainerElement&&e.to===this.hiddenTabsContainerElement?"hiddenToHidden":void 0}makeTabCopyFocus(e){e&&e.focus()}handleTabClick(e){const{id:t}=e.detail;this.handleNewSelectedTab(t)}handleNewSelectedTab(e){const t=this.tabsHash[this.getNormalizedTabId(e)];if(t&&!t.disabled){const e=this.tabsIdxHash[t.id];-1!==e&&this.updateSelectedTab(e);{const e=this.tabsCopyHash[this.getCopyTabId(t)];e&&this.makeTabCopyFocus(e),this.updateHiddenIdPositiveTabIndex(t)}}}handleTabCrossClick(e){const{id:t}=e.detail;this.handleTabCloseEvent(t)}handleTabCloseClick(e){const{id:t}=e.detail;this.handleTabCloseEvent(t)}handleTabCloseEvent(e){var t,i;const s=this.tabsHash[this.getNormalizedTabId(e)];if(s&&!s.disabled&&("auto"===s.closable||"custom"===s.closable)){const s=this.tabsFilteredAsVisibleList.findIndex(t=>this.getNormalizedTabId(t.id)===this.getNormalizedTabId(e));this.tabsFilteredAsVisibleList=this.tabsFilteredAsVisibleList.filter(t=>this.getNormalizedTabId(t.id)!==this.getNormalizedTabId(e)),null===(i=null===(t=this.visibleTabsContainerElement)||void 0===t?void 0:t.querySelector("#"+e))||void 0===i||i.remove(),0!==this.tabsFilteredAsHiddenList.length&&(this.tabsFilteredAsVisibleList.push(this.tabsFilteredAsHiddenList[0]),this.tabsFilteredAsHiddenList.splice(0,1)),0===this.tabsFilteredAsHiddenList.length&&(this.isMoreTabMenuVisible=!1,this.isMoreTabMenuMeasured=!1),this.handleUpdatedSeletedTabAfterCross(s)}}handleUpdatedSeletedTabAfterCross(e){var t;let i=e;for(;i<this.tabsFilteredAsVisibleList.length&&(null===(t=this.tabsFilteredAsVisibleList[i])||void 0===t?void 0:t.disabled);)i++;if(void 0===this.tabsFilteredAsVisibleList[i]||e===this.tabsFilteredAsVisibleList.length)for(i=e-1;i>=0&&this.tabsFilteredAsVisibleList[i].disabled;)i--;if(-1!==i){const e=this.tabs.findIndex(e=>e.id===this.tabsFilteredAsVisibleList[i].id);this.updateSelectedTab(e)}else this.updateSelectedTab(i);this.noTabsVisible=0===this.tabsFilteredAsVisibleList.length&&0===this.tabsFilteredAsHiddenList.length,this.requestUpdate()}updateSelectedTab(e){const{tabs:t,panels:i}=this,s=this.tabs.findIndex(e=>e.hasAttribute("selected"));if(t&&i&&[s,e].forEach(e=>{const s=t[e];s&&s.toggleAttribute("selected");const a=i[e];if(a&&a.toggleAttribute("selected"),s){const e=this.tabsCopyHash[this.getCopyTabId(s)];e?(e.toggleAttribute("selected"),this.isMoreTabMenuSelected=!0):this.isMoreTabMenuSelected=!1}}),e>=0){this.dispatchSelectedChangedEvent(e);const i=("horizontal"===this.direction?[...this.tabsFilteredAsVisibleList,...this.tabsFilteredAsHiddenList]:this.tabs).findIndex(i=>i.id===t[e].id);this.changeSelectedTabIdx(i)}}dispatchSelectedChangedEvent(e){const t=[...this.tabsFilteredAsVisibleList,...this.tabsFilteredAsHiddenList],i=this.tabs[e].id,s=t.findIndex(e=>e.id===i),a=[];t.forEach(e=>{a.push(e.name)}),this.dispatchEvent(new CustomEvent("selected-changed",{detail:{value:s,tabsOrder:a},composed:!0,bubbles:!0}))}changeSelectedTabIdx(e){this.requestUpdate(),this.selected=e,this.updateComplete.then(()=>{var t,i,s,a;if(e<this.tabsFilteredAsVisibleList.length)null===(i=null===(t=this.visibleTabsContainerElement)||void 0===t?void 0:t.children[this.selected])||void 0===i||i.focus();else{const e=this.selected-this.tabsFilteredAsVisibleList.length;null===(a=null===(s=this.hiddenTabsContainerElement)||void 0===s?void 0:s.children[e])||void 0===a||a.focus();const t=this.tabsFilteredAsHiddenList[e];!(null==t?void 0:t.disabled)&&this.updateHiddenIdPositiveTabIndex(t)}}),this.updateIsMoreTabMenuSelected(),this.storeSelectedTabIndex(e)}storeSelectedTabIndex(e){this.persistSelection&&this.tabsId&&e>-1&&""!==this.tabsId.trim()&&sessionStorage.setItem(this.tabsId,""+e)}getCurrentIndex(e){var t,i;const s=(null===(t=this.visibleTabsContainerElement)||void 0===t?void 0:t.children.length)||0;for(let t=0;t<s;t++)if((null===(i=this.visibleTabsContainerElement)||void 0===i?void 0:i.children[t].id)===e)return t;return this.tabsVisibleIdxHash[e]}moveFocusToAdjacentTab(e,t){var i;const s=this.getCurrentIndex(e),a=null===(i=this.visibleTabsContainerElement)||void 0===i?void 0:i.children,n=(null==a?void 0:a.length)||0;if(!a||0===n)return;let l=0;"previous"===t?l=0===s?n-1:s-1:"next"===t?l=s===n-1?0:s+1:"fromMoreTabs"===t&&(l=this.selected>=n?0:this.selected),this.moveFocusToTab(a[l])}moveFocusToTab(e){Object(p.setTimeout)(()=>null==e?void 0:e.focus(),0)}handleOverlayClose(){this.menuOverlayElement&&(this.menuOverlayElement.isOpen=!1)}dispatchKeydownEvent(e,t){t&&this.dispatchEvent(new CustomEvent("tab-keydown",{detail:{id:t,key:e.code,ctrlKey:e.ctrlKey,shiftKey:e.shiftKey,altKey:e.altKey,srcEvent:e},bubbles:!0,composed:!0}))}handleTabKeydown(e){var t,i,a,n,l,d;let o;if(e.target!=this&&!this.tabs.find(t=>t.id===e.target.id))return!1;o=e.path?e.path[0].id:e.composedPath()?e.composedPath()[0].id:e.originalTarget.id;const r=this.getNormalizedTabId(o);this.dispatchKeydownEvent(e,r);const b=e.code,{shiftKey:h}=e,c=!!this.isMoreTabMenuVisible&&"tab-more"===r,u=c&&this.isMoreTabMenuVisible?this.moreTabMenuElement:this.tabsHash[this.getNormalizedTabId(r)],p=!this.isMoreTabMenuVisible||u&&this.tabsVisibleIdxHash[u.id]>-1,m=!!this.isMoreTabMenuVisible&&(u&&this.tabsHiddenIdxHash[u.id]>-1),v=this.isMoreTabMenuVisible?this.tabsFilteredAsVisibleList.length-1:this.tabs.length-1,T=this.isMoreTabMenuVisible?this.tabsFilteredAsVisibleList.length:-1,f=this.isMoreTabMenuVisible?this.tabsFilteredAsVisibleList.length+this.tabsFilteredAsHiddenList.length-1:-1;switch(b){case s.b.Tab:c&&!this.isMoreTabMenuOpen&&h&&(e.preventDefault(),this.moveFocusToAdjacentTab(o,"fromMoreTabs"));break;case s.b.End:c||(p?(e.preventDefault(),this.moveFocusToTab(null===(t=this.visibleTabsContainerElement)||void 0===t?void 0:t.children[(null===(i=this.tabsFilteredAsVisibleList)||void 0===i?void 0:i.length)-1])):this.isMoreTabMenuOpen&&(e.preventDefault(),this.moveFocusToTab(null===(a=this.hiddenTabsContainerElement)||void 0===a?void 0:a.children[(null===(n=this.tabsFilteredAsHiddenList)||void 0===n?void 0:n.length)-1])));break;case s.b.Home:p?(e.preventDefault(),this.moveFocusToTab(null===(l=this.visibleTabsContainerElement)||void 0===l?void 0:l.children[0])):this.isMoreTabMenuOpen&&(e.preventDefault(),this.moveFocusToTab(null===(d=this.hiddenTabsContainerElement)||void 0===d?void 0:d.children[0]));break;case s.b.ArrowLeft:c||p&&(e.stopPropagation(),this.moveFocusToAdjacentTab(o,"previous"));break;case s.b.ArrowRight:c||p&&(e.stopPropagation(),this.moveFocusToAdjacentTab(o,"next"));break;case s.b.ArrowUp:if(c);else if(p&&"vertical"===this.direction)e.preventDefault(),this.changeSelectedTabIdx(0===this.selected?v:this.selected-1);else if(m){e.preventDefault();const t=this.selected===T?f:this.selected-1;this.changeSelectedTabIdx(t)}break;case s.b.ArrowDown:if(c);else if(p&&"vertical"===this.direction)e.preventDefault(),this.changeSelectedTabIdx(this.selected===v?0:this.selected+1);else if(m){e.preventDefault();const t=this.selected===f?T:this.selected+1;this.changeSelectedTabIdx(t)}break;case s.b.Enter:case s.b.NumpadEnter:case s.b.Space:if(c){const e=this.tabsFilteredAsHiddenList.filter(e=>!e.disabled),t=e.length?e.find(e=>e.selected)||e[0]:void 0;if(this.updateHiddenIdPositiveTabIndex(t),t){const e=this.tabsIdxHash[this.getNormalizedTabId(t.id)];-1!==e&&this.updateSelectedTab(e)}}else if(u&&!u.disabled){const t=this.tabsIdxHash[this.getNormalizedTabId(u.id)];-1!==t&&(e.preventDefault(),this.updateSelectedTab(t))}}}setupTabsEvents(){this.addEventListener("tab-click",this.handleTabClick),this.addEventListener("tab-cross-click",this.handleTabCrossClick),this.addEventListener("tab-close-click",this.handleTabCloseClick),this.addEventListener("keydown",this.handleTabKeydown),this.addEventListener("clear-tab-order-prefs",this.clearTabOrderPrefs)}teardownTabsEvents(){this.removeEventListener("tab-click",this.handleTabClick),this.removeEventListener("tab-cross-click",this.handleTabCrossClick),this.removeEventListener("tab-close-click",this.handleTabCloseClick),this.removeEventListener("keydown",this.handleTabKeydown),this.removeEventListener("clear-tab-order-prefs",this.clearTabOrderPrefs)}clearTabOrderPrefs(e){const{compUniqueId:t}=e.detail;t===this.compUniqueId&&(localStorage.removeItem(this.tabsId),sessionStorage.removeItem(this.tabsId),localStorage.removeItem(this.compUniqueId),this.tabsOrderPrefsArray=this.defaultTabsOrderArray,this.selected=0,this.initializeTabs(),this.dispatchSelectedChangedEvent(0))}setupPanelsAndTabs(){this.tabSlotElement&&(this.tabs=this.tabSlotElement.assignedElements()),this.panelSlotElement&&(this.panels=this.panelSlotElement.assignedElements()),this.defaultTabsOrderArray=this.tabs.map(e=>e.name)}setupMoreTab(){return f(this,void 0,void 0,(function*(){"vertical"!==this.direction&&this.moreTabMenuElement&&!this.isMoreTabMenuMeasured&&(this.moreTabMenuElement.classList.add("md-menu-overlay__more_tab--measuring"),yield this.moreTabMenuElement.updateComplete,this.moreTabMenuElement.offsetWidth&&(this.moreTabMenuOffsetWidth=this.moreTabMenuElement.offsetWidth,this.isMoreTabMenuMeasured=!0),this.moreTabMenuElement.classList.remove("md-menu-overlay__more_tab--measuring"))}))}initializeSortable(){this.visibleTabsContainerElement&&this.hiddenTabsContainerElement&&(this.visibleTabsSortableInstance=u.a.create(this.visibleTabsContainerElement,this.generateOptions()),this.hiddenTabsSortableInstance=u.a.create(this.hiddenTabsContainerElement,this.generateOptions()))}initializeTabs(){this.tabs=[],this.panels=[],this.tabsFilteredAsVisibleList=[],this.tabsFilteredAsHiddenList=[],this.isMoreTabMenuVisible=!1,this.setupPanelsAndTabs(),this.linkPanelsAndTabs(),this.draggable&&this.initializeSortable(),this.manageOverflow(),this.requestUpdate()}connectedCallback(){var e;if(super.connectedCallback(),this.setupTabsEvents(),this.persistSelection){if(!this.tabsId||""===this.tabsId.trim())return void console.error("Unique tabs-id attribute is mandatory for persist the selection of tab ");const e=localStorage.getItem(this.tabsId);this.selected=e&&parseInt(e)>-1?parseInt(e):this.selected}this.compUniqueId&&(this.tabsOrderPrefsArray=(null===(e=localStorage.getItem(this.compUniqueId))||void 0===e?void 0:e.split(","))||[])}selectTabFromStorage(){if(this.persistSelection){if(!this.tabsId||""===this.tabsId.trim())return void console.error("Unique tabs-id attribute is mandatory for persist the selection of tab ");const e=sessionStorage.getItem(this.tabsId);let t=0;if(e){const i=parseInt(e);t=i>-1?i:this.selected}const i=[...this.tabsFilteredAsVisibleList,...this.tabsFilteredAsHiddenList];i.length&&i[t].id?this.handleNewSelectedTab(i[t].id):this.selected=t}}disconnectedCallback(){super.disconnectedCallback(),this.teardownTabsEvents()}firstUpdated(e){super.firstUpdated(e),this.setupPanelsAndTabs(),this.linkPanelsAndTabs(),this.selectTabFromStorage()}updated(e){var t;if(super.updated(e),e.has("slotted")&&this.initializeTabs(),!this.draggable||this.visibleTabsSortableInstance||this.hiddenTabsSortableInstance||this.initializeSortable(),e.has("tabsFilteredAsHiddenList")&&(this.tabsCopy=Array.from((null===(t=this.tabsCopyHiddenListElements)||void 0===t?void 0:t.values())||[]),this.tabsCopyHash=this.tabsCopy.reduce((e,t)=>(e[t.id]=t,e),{})),(e.has("tabsFilteredAsVisibleList")||e.has("tabsFilteredAsHiddenList"))&&(this.tabsVisibleIdxHash=this.tabsFilteredAsVisibleList.reduce((e,t,i)=>(e[t.id]=i,e),{}),this.tabsHiddenIdxHash=this.tabsFilteredAsHiddenList.reduce((e,t,i)=>(e[t.id]=i,e),{})),e.has("isMoreTabMenuOpen")&&this.isMoreTabMenuVisible){const t=e.get("isMoreTabMenuOpen");this.isMoreTabMenuOpen&&!t&&(this.moreItemsScrollLimit<this.tabsCopy.length?(this.isMoreTabMenuScrollable=!0,this.moreTabMenuMaxHeight=this.measureHiddenTabsCopiesOffsetHeight().slice(0,this.moreItemsScrollLimit).reduce((e,t)=>e+=t,0)+"px"):(this.isMoreTabMenuScrollable=!1,this.moreTabMenuMaxHeight=null))}e.has("tabsId")&&this.selectTabFromStorage()}render(){return l.html`
|
|
1
|
+
(window["momentum-web-components-[id]"]=window["momentum-web-components-[id]"]||[]).push([[82],{101:function(e,t,i){"use strict";i.r(t),i.d(t,"MORE_MENU_TAB_COPY_ID_PREFIX",(function(){return y})),i.d(t,"Tabs",(function(){return g}));i(13),i(30);var s=i(1),a=i(7),n=i(5),l=i(0),d=i(4),o=i(15),r=i(8),b=i(70),h=i(22),c=i(31),u=i.n(c),p=i(64),m=i(39),v=i(45),T=function(e,t,i,s){var a,n=arguments.length,l=n<3?t:null===s?s=Object.getOwnPropertyDescriptor(t,i):s;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)l=Reflect.decorate(e,t,i,s);else for(var d=e.length-1;d>=0;d--)(a=e[d])&&(l=(n<3?a(l):n>3?a(t,i,l):a(t,i))||l);return n>3&&l&&Object.defineProperty(t,i,l),l},f=function(e,t,i,s){return new(i||(i=Promise))((function(a,n){function l(e){try{o(s.next(e))}catch(e){n(e)}}function d(e){try{o(s.throw(e))}catch(e){n(e)}}function o(e){var t;e.done?a(e.value):(t=e.value,t instanceof i?t:new i((function(e){e(t)}))).then(l,d)}o((s=s.apply(e,t||[])).next())}))};const y="more-menu-copy-";var g;!function(e){let t=class extends(Object(a.c)(Object(a.d)(Object(a.e)(l.LitElement)))){constructor(){super(...arguments),this.justified=!1,this.overflowLabel="More Tabs",this.draggable=!1,this.direction="horizontal",this.moreItemsScrollLimit=Number.MAX_SAFE_INTEGER,this.delay=0,this.animation=100,this.ghostClass="",this.chosenClass="",this.forceFallback=!1,this.fallbackClass="",this.tabsId="",this.persistSelection=!1,this.compUniqueId="",this.type="Line",this.newMomentum=!1,this.isMoreTabMenuVisible=!1,this.isMoreTabMenuMeasured=!1,this.isMoreTabMenuOpen=!1,this.isMoreTabMenuSelected=!1,this.isMoreTabMenuScrollable=!1,this.moreTabMenuOffsetWidth=0,this.moreTabMenuMaxHeight=null,this.tabsViewportDataList=[],this.tabsFilteredAsVisibleList=[],this.tabsFilteredAsHiddenList=[],this.noTabsVisible=!1,this.defaultTabsOrderArray=[],this.tabsOrderPrefsArray=[],this.tabs=[],this.panels=[],this.tabsCopy=[],this.tabsHash={},this.tabsCopyHash={},this.tabsIdxHash={},this.tabsVisibleIdxHash={},this.tabsHiddenIdxHash={},this.visibleTabsSortableInstance=null,this.hiddenTabsSortableInstance=null,this.handleOnDragEnd=e=>f(this,void 0,void 0,(function*(){var t,i,s,a,n,l,d,o,r,b;e.stopPropagation();const h=e.oldIndex,c=e.newIndex,u=[...this.tabsFilteredAsVisibleList],p=[...this.tabsFilteredAsHiddenList],m=this.getDragDirection(e);if(void 0!==h&&void 0!==c){switch(m){case"visibleToHidden":{null===(i=null===(t=this.hiddenTabsContainerElement)||void 0===t?void 0:t.querySelector("#"+e.item.id))||void 0===i||i.remove();const s=u[h],a=p.slice(-1)[0],n=c===this.tabsFilteredAsHiddenList.length?c-1:c;p.splice(n,0,s),p.pop();const l=u.filter(t=>t.id!==this.getNormalizedTabId(e.item.id));l.push(a),this.tabsFilteredAsVisibleList=[...l],this.tabsFilteredAsHiddenList=[...p];break}case"visibleToVisible":{const e=u[h];u.splice(h,1),u.splice(c,0,e),this.tabsFilteredAsVisibleList=u,c===this.tabsFilteredAsVisibleList.length-1&&(null===(a=null===(s=this.visibleTabsContainerElement)||void 0===s?void 0:s.children[this.visibleTabsContainerElement.children.length-1])||void 0===a||a.remove());const t=this.visibleTabsContainerElement.children[h],i=this.visibleTabsContainerElement.children[c];if(!t||!i)return;null===(n=this.visibleTabsContainerElement)||void 0===n||n.replaceChild(i,t),null===(l=this.visibleTabsContainerElement)||void 0===l||l.insertBefore(t,i);break}case"hiddenToVisible":{null===(o=null===(d=this.visibleTabsContainerElement)||void 0===d?void 0:d.querySelector("#"+e.item.id))||void 0===o||o.remove();const t=p[h],i=u.slice(-1)[0];p.splice(h,1),p.splice(0,0,i);const s=c===this.tabsFilteredAsVisibleList.length?c-1:c;u.splice(s,0,t),u.pop(),this.tabsFilteredAsVisibleList=u,this.tabsFilteredAsHiddenList=p;break}case"hiddenToHidden":{const e=p[h];p.splice(h,1),p.splice(c,0,e),this.tabsFilteredAsHiddenList=p,c===this.tabsFilteredAsHiddenList.length-1&&(null===(b=null===(r=this.hiddenTabsContainerElement)||void 0===r?void 0:r.children[this.hiddenTabsContainerElement.children.length-1])||void 0===b||b.remove());break}}if(this.compUniqueId){const e=[...this.tabsFilteredAsVisibleList,...this.tabsFilteredAsHiddenList],t=e.findIndex(e=>e.selected);this.storeSelectedTabIndex(t),this.tabsOrderPrefsArray=e.map(e=>e.name),localStorage.setItem(this.compUniqueId,this.tabsOrderPrefsArray.join(","))}}}))}generateOptions(){return{group:"shared",animation:10,swapThreshold:1,draggable:"md-tab",direction:this.direction,forceFallback:this.forceFallback,fallbackClass:this.fallbackClass,ghostClass:this.ghostClass,chosenClass:this.chosenClass,onEnd:this.handleOnDragEnd}}getCopyTabId(e){var t;return(null===(t=e.id)||void 0===t?void 0:t.startsWith(y))?`${y}${e.id}`:e.id}getAriaControlId(e){var t,i;if(null===(t=e.id)||void 0===t?void 0:t.startsWith(y))return`${y}${e.id}`;return"tab_panel_"+(null===(i=e.id)||void 0===i?void 0:i.substring(4))}getTabIndex(e){var t,i;return this.isMoreTabMenuVisible&&0===this.getCurrentIndex(null==e?void 0:e.id)&&this.selected>(null===(t=this.tabsFilteredAsVisibleList)||void 0===t?void 0:t.length)-1||(null===(i=this.tabsFilteredAsVisibleList[this.selected])||void 0===i?void 0:i.id)===e.id?0:-1}getNormalizedTabId(e){return e.replace(y,"")}static get styles(){return[n.a,m.a]}ensureTabsUpdateComplete(e){return f(this,void 0,void 0,(function*(){const t=e.map(e=>void 0!==e.updateComplete?e.updateComplete:null).filter(e=>null!==e);t.length&&(yield Promise.all(t))}))}measureTabsOffsetWidth(){return this.justified||"vertical"===this.direction?this.tabs.map(e=>{e.setAttribute("measuringrealwidth","");const t=e.closable?e.offsetWidth+v.TAB_CROSS_WIDTH:e.offsetWidth;return e.removeAttribute("measuringrealwidth"),t}):this.tabs.map(e=>e.closable?e.offsetWidth+v.TAB_CROSS_WIDTH:e.offsetWidth)}measureHiddenTabsCopiesOffsetHeight(){return this.tabsCopy.map(e=>e.offsetHeight)}manageOverflow(){var e,t;return f(this,void 0,void 0,(function*(){if("vertical"!==this.direction){let i;i=0===this.tabsFilteredAsVisibleList.length&&0===this.tabsFilteredAsHiddenList.length?[...this.tabs]:[...this.tabsFilteredAsVisibleList,...this.tabsFilteredAsHiddenList],i.forEach(e=>{var t,i,s,a,n;if((null===(t=e.children)||void 0===t?void 0:t.length)&&0===(null===(s=null===(i=e.children[0])||void 0===i?void 0:i.children)||void 0===s?void 0:s.length)){const t=null===(a=null==e?void 0:e.querySelector("slot"))||void 0===a?void 0:a.assignedNodes({flatten:!0})[0].cloneNode(!0);t&&(t.classList.add("tab-content"),null===(n=null==e?void 0:e.children[0])||void 0===n||n.appendChild(t))}});const s=i.length;if(this.tabsListElement&&s){const a=(null===(e=this.tabsSettingsElement)||void 0===e?void 0:e.offsetWidth)?this.tabsListElement.offsetWidth-(null===(t=this.tabsSettingsElement)||void 0===t?void 0:t.offsetWidth):this.tabsListElement.offsetWidth;yield this.ensureTabsUpdateComplete(this.tabs);const n=this.measureTabsOffsetWidth(),l=i.reduce((e,t,i)=>e+=n[i],0);if(l){yield this.setupMoreTab();let e=!0;a<l&&(e=!1);const t=[];let d=0;i.forEach((i,l)=>{d+=n[l];const o=!e&&d+(l<s-1?this.moreTabMenuOffsetWidth:0)>a;t.push({isTabInViewportHidden:o,tabOffsetWidth:n[l]})}),this.tabsViewportDataList=t,this.tabsViewportDataList.forEach((e,t)=>this.tabs[t].viewportHidden=e.isTabInViewportHidden),this.isMoreTabMenuVisible=!!this.tabsViewportDataList.find(e=>e.isTabInViewportHidden),this.tabsFilteredAsVisibleList=i.filter((e,t)=>!this.tabsViewportDataList[t].isTabInViewportHidden),this.tabsVisibleIdxHash=this.tabsFilteredAsVisibleList.reduce((e,t,i)=>(e[t.id]=i,e),{}),this.tabsFilteredAsHiddenList=i.filter((e,t)=>this.tabsViewportDataList[t].isTabInViewportHidden),this.tabsHiddenIdxHash=this.tabsFilteredAsHiddenList.reduce((e,t,i)=>(e[t.id]=i,e),{})}}this.updateIsMoreTabMenuSelected();const a=this.tabsFilteredAsHiddenList.find(e=>!e.disabled);this.updateHiddenIdPositiveTabIndex(a)}}))}updateIsMoreTabMenuSelected(){this.isMoreTabMenuSelected=!!this.tabsFilteredAsHiddenList.find(e=>e.selected)}updateHiddenIdPositiveTabIndex(e){this.tabHiddenIdPositiveTabIndex=e?e.id:void 0}sortTabsAndPanes(){if(!this.tabsOrderPrefsArray.length)return;const e=(e,t)=>{const i=e.getAttribute("name")||"",s=t.getAttribute("name")||"";return this.tabsOrderPrefsArray.indexOf(i)-this.tabsOrderPrefsArray.indexOf(s)};this.tabs.sort(e),this.panels.sort(e)}linkPanelsAndTabs(){return f(this,void 0,void 0,(function*(){this.sortTabsAndPanes();const{tabs:e,panels:t}=this;if(0===e.length||0===t.length)return void console.warn("The tabs or panels count should't be equal zero.");e.length!==t.length&&console.warn(`The amount of tabs (${e.length}) doesn't match the amount of panels (${t.length}).`),e.forEach((e,i)=>{const s=Object(h.nanoid)(10),a="tab_"+s,n="tab_panel_"+s;e.setAttribute("id",a),e.setAttribute("aria-controls",n),e.selected=this.selected===i,"vertical"===this.direction&&(e.vertical=!0);const l=t[i];l?(l.setAttribute("id",n),l.setAttribute("aria-labelledby",a),l.selected=this.selected===i,e.disabled&&(l.hidden=!0,l.selected=!1)):e.disabled=!0});let i=this.selected;for(;i<e.length&&e[i].disabled;)i++;i=i===e.length?0:i,e[i].selected=!0,t[i].selected=!0,this.tabsHash=this.tabs.reduce((e,t)=>(e[t.id]=t,e),{}),this.tabsIdxHash=this.tabs.reduce((e,t,i)=>(e[t.id]=i,e),{})}))}get slotItem(){return this.tabSlotElement}filterSlotted(){return this.tabSlotElement.assignedElements()}handleResize(e){const t=Object.create(null,{handleResize:{get:()=>super.handleResize}});return f(this,void 0,void 0,(function*(){t.handleResize&&t.handleResize.call(this,e),yield this.manageOverflow()}))}getDragDirection(e){return e.from===this.visibleTabsContainerElement&&e.to===this.hiddenTabsContainerElement?"visibleToHidden":e.from===this.visibleTabsContainerElement&&e.to===this.visibleTabsContainerElement?"visibleToVisible":e.from===this.hiddenTabsContainerElement&&e.to===this.visibleTabsContainerElement?"hiddenToVisible":e.from===this.hiddenTabsContainerElement&&e.to===this.hiddenTabsContainerElement?"hiddenToHidden":void 0}makeTabCopyFocus(e){e&&e.focus()}handleTabClick(e){const{id:t}=e.detail;this.handleNewSelectedTab(t)}handleNewSelectedTab(e){const t=this.tabsHash[this.getNormalizedTabId(e)];if(t&&!t.disabled){const e=this.tabsIdxHash[t.id];-1!==e&&this.updateSelectedTab(e);{const e=this.tabsCopyHash[this.getCopyTabId(t)];e&&this.makeTabCopyFocus(e),this.updateHiddenIdPositiveTabIndex(t)}}}handleTabCrossClick(e){const{id:t}=e.detail;this.handleTabCloseEvent(t)}handleTabCloseClick(e){const{id:t}=e.detail;this.handleTabCloseEvent(t)}handleTabCloseEvent(e){var t,i;const s=this.tabsHash[this.getNormalizedTabId(e)];if(s&&!s.disabled&&("auto"===s.closable||"custom"===s.closable)){const s=this.tabsFilteredAsVisibleList.findIndex(t=>this.getNormalizedTabId(t.id)===this.getNormalizedTabId(e));this.tabsFilteredAsVisibleList=this.tabsFilteredAsVisibleList.filter(t=>this.getNormalizedTabId(t.id)!==this.getNormalizedTabId(e)),null===(i=null===(t=this.visibleTabsContainerElement)||void 0===t?void 0:t.querySelector("#"+e))||void 0===i||i.remove(),0!==this.tabsFilteredAsHiddenList.length&&(this.tabsFilteredAsVisibleList.push(this.tabsFilteredAsHiddenList[0]),this.tabsFilteredAsHiddenList.splice(0,1)),0===this.tabsFilteredAsHiddenList.length&&(this.isMoreTabMenuVisible=!1,this.isMoreTabMenuMeasured=!1),this.handleUpdatedSeletedTabAfterCross(s)}}handleUpdatedSeletedTabAfterCross(e){var t;let i=e;for(;i<this.tabsFilteredAsVisibleList.length&&(null===(t=this.tabsFilteredAsVisibleList[i])||void 0===t?void 0:t.disabled);)i++;if(void 0===this.tabsFilteredAsVisibleList[i]||e===this.tabsFilteredAsVisibleList.length)for(i=e-1;i>=0&&this.tabsFilteredAsVisibleList[i].disabled;)i--;if(-1!==i){const e=this.tabs.findIndex(e=>e.id===this.tabsFilteredAsVisibleList[i].id);this.updateSelectedTab(e)}else this.updateSelectedTab(i);this.noTabsVisible=0===this.tabsFilteredAsVisibleList.length&&0===this.tabsFilteredAsHiddenList.length,this.requestUpdate()}updateSelectedTab(e){const{tabs:t,panels:i}=this,s=this.tabs.findIndex(e=>e.hasAttribute("selected"));if(t&&i&&[s,e].forEach(e=>{const s=t[e];s&&s.toggleAttribute("selected");const a=i[e];if(a&&a.toggleAttribute("selected"),s){const e=this.tabsCopyHash[this.getCopyTabId(s)];e?(e.toggleAttribute("selected"),this.isMoreTabMenuSelected=!0):this.isMoreTabMenuSelected=!1}}),e>=0){this.dispatchSelectedChangedEvent(e);const i=("horizontal"===this.direction?[...this.tabsFilteredAsVisibleList,...this.tabsFilteredAsHiddenList]:this.tabs).findIndex(i=>i.id===t[e].id);this.changeSelectedTabIdx(i)}}dispatchSelectedChangedEvent(e){const t=[...this.tabsFilteredAsVisibleList,...this.tabsFilteredAsHiddenList],i=this.tabs[e].id,s=t.findIndex(e=>e.id===i),a=[];t.forEach(e=>{a.push(e.name)}),this.dispatchEvent(new CustomEvent("selected-changed",{detail:{value:s,tabsOrder:a},composed:!0,bubbles:!0}))}changeSelectedTabIdx(e){this.requestUpdate(),this.selected=e,this.updateComplete.then(()=>{var t,i,s,a;if(e<this.tabsFilteredAsVisibleList.length)null===(i=null===(t=this.visibleTabsContainerElement)||void 0===t?void 0:t.children[this.selected])||void 0===i||i.focus();else{const e=this.selected-this.tabsFilteredAsVisibleList.length;null===(a=null===(s=this.hiddenTabsContainerElement)||void 0===s?void 0:s.children[e])||void 0===a||a.focus();const t=this.tabsFilteredAsHiddenList[e];!(null==t?void 0:t.disabled)&&this.updateHiddenIdPositiveTabIndex(t)}}),this.updateIsMoreTabMenuSelected(),this.storeSelectedTabIndex(e)}storeSelectedTabIndex(e){this.persistSelection&&this.tabsId&&e>-1&&""!==this.tabsId.trim()&&sessionStorage.setItem(this.tabsId,""+e)}getCurrentIndex(e){var t,i;const s=(null===(t=this.visibleTabsContainerElement)||void 0===t?void 0:t.children.length)||0;for(let t=0;t<s;t++)if((null===(i=this.visibleTabsContainerElement)||void 0===i?void 0:i.children[t].id)===e)return t;return this.tabsVisibleIdxHash[e]}moveFocusToAdjacentTab(e,t){var i;const s=this.getCurrentIndex(e),a=null===(i=this.visibleTabsContainerElement)||void 0===i?void 0:i.children,n=(null==a?void 0:a.length)||0;if(!a||0===n)return;let l=0;"previous"===t?l=0===s?n-1:s-1:"next"===t?l=s===n-1?0:s+1:"fromMoreTabs"===t&&(l=this.selected>=n?0:this.selected),this.moveFocusToTab(a[l])}moveFocusToTab(e){Object(p.setTimeout)(()=>null==e?void 0:e.focus(),0)}handleOverlayClose(){this.menuOverlayElement&&(this.menuOverlayElement.isOpen=!1)}dispatchKeydownEvent(e,t){t&&this.dispatchEvent(new CustomEvent("tab-keydown",{detail:{id:t,key:e.code,ctrlKey:e.ctrlKey,shiftKey:e.shiftKey,altKey:e.altKey,srcEvent:e},bubbles:!0,composed:!0}))}handleTabKeydown(e){var t,i,a,n,l,d;let o;if(e.target!=this&&!this.tabs.find(t=>t.id===e.target.id))return!1;o=e.path?e.path[0].id:e.composedPath()?e.composedPath()[0].id:e.originalTarget.id;const r=this.getNormalizedTabId(o);this.dispatchKeydownEvent(e,r);const b=e.code,{shiftKey:h}=e,c=!!this.isMoreTabMenuVisible&&"tab-more"===r,u=c&&this.isMoreTabMenuVisible?this.moreTabMenuElement:this.tabsHash[this.getNormalizedTabId(r)],p=!this.isMoreTabMenuVisible||u&&this.tabsVisibleIdxHash[u.id]>-1,m=!!this.isMoreTabMenuVisible&&(u&&this.tabsHiddenIdxHash[u.id]>-1),v=this.isMoreTabMenuVisible?this.tabsFilteredAsVisibleList.length-1:this.tabs.length-1,T=this.isMoreTabMenuVisible?this.tabsFilteredAsVisibleList.length:-1,f=this.isMoreTabMenuVisible?this.tabsFilteredAsVisibleList.length+this.tabsFilteredAsHiddenList.length-1:-1;switch(b){case s.b.Tab:c&&!this.isMoreTabMenuOpen&&h&&(e.preventDefault(),this.moveFocusToAdjacentTab(o,"fromMoreTabs"));break;case s.b.End:c||(p?(e.preventDefault(),this.moveFocusToTab(null===(t=this.visibleTabsContainerElement)||void 0===t?void 0:t.children[(null===(i=this.tabsFilteredAsVisibleList)||void 0===i?void 0:i.length)-1])):this.isMoreTabMenuOpen&&(e.preventDefault(),this.moveFocusToTab(null===(a=this.hiddenTabsContainerElement)||void 0===a?void 0:a.children[(null===(n=this.tabsFilteredAsHiddenList)||void 0===n?void 0:n.length)-1])));break;case s.b.Home:p?(e.preventDefault(),this.moveFocusToTab(null===(l=this.visibleTabsContainerElement)||void 0===l?void 0:l.children[0])):this.isMoreTabMenuOpen&&(e.preventDefault(),this.moveFocusToTab(null===(d=this.hiddenTabsContainerElement)||void 0===d?void 0:d.children[0]));break;case s.b.ArrowLeft:c||p&&(e.stopPropagation(),this.moveFocusToAdjacentTab(o,"previous"));break;case s.b.ArrowRight:c||p&&(e.stopPropagation(),this.moveFocusToAdjacentTab(o,"next"));break;case s.b.ArrowUp:if(c);else if(p&&"vertical"===this.direction)e.preventDefault(),this.changeSelectedTabIdx(0===this.selected?v:this.selected-1);else if(m){e.preventDefault();const t=this.selected===T?f:this.selected-1;this.changeSelectedTabIdx(t)}break;case s.b.ArrowDown:if(c);else if(p&&"vertical"===this.direction)e.preventDefault(),this.changeSelectedTabIdx(this.selected===v?0:this.selected+1);else if(m){e.preventDefault();const t=this.selected===f?T:this.selected+1;this.changeSelectedTabIdx(t)}break;case s.b.Enter:case s.b.NumpadEnter:case s.b.Space:if(c){const e=this.tabsFilteredAsHiddenList.filter(e=>!e.disabled),t=e.length?e.find(e=>e.selected)||e[0]:void 0;if(this.updateHiddenIdPositiveTabIndex(t),t){const e=this.tabsIdxHash[this.getNormalizedTabId(t.id)];-1!==e&&this.updateSelectedTab(e)}}else if(u&&!u.disabled){const t=this.tabsIdxHash[this.getNormalizedTabId(u.id)];-1!==t&&(e.preventDefault(),this.updateSelectedTab(t))}}}setupTabsEvents(){this.addEventListener("tab-click",this.handleTabClick),this.addEventListener("tab-cross-click",this.handleTabCrossClick),this.addEventListener("tab-close-click",this.handleTabCloseClick),this.addEventListener("keydown",this.handleTabKeydown),this.addEventListener("clear-tab-order-prefs",this.clearTabOrderPrefs)}teardownTabsEvents(){this.removeEventListener("tab-click",this.handleTabClick),this.removeEventListener("tab-cross-click",this.handleTabCrossClick),this.removeEventListener("tab-close-click",this.handleTabCloseClick),this.removeEventListener("keydown",this.handleTabKeydown),this.removeEventListener("clear-tab-order-prefs",this.clearTabOrderPrefs)}clearTabOrderPrefs(e){const{compUniqueId:t}=e.detail;t===this.compUniqueId&&(localStorage.removeItem(this.tabsId),sessionStorage.removeItem(this.tabsId),localStorage.removeItem(this.compUniqueId),this.tabsOrderPrefsArray=this.defaultTabsOrderArray,this.selected=0,this.initializeTabs(),this.dispatchSelectedChangedEvent(0))}setupPanelsAndTabs(){this.tabSlotElement&&(this.tabs=this.tabSlotElement.assignedElements()),this.panelSlotElement&&(this.panels=this.panelSlotElement.assignedElements()),this.defaultTabsOrderArray=this.tabs.map(e=>e.name)}setupMoreTab(){return f(this,void 0,void 0,(function*(){"vertical"!==this.direction&&this.moreTabMenuElement&&!this.isMoreTabMenuMeasured&&(this.moreTabMenuElement.classList.add("md-menu-overlay__more_tab--measuring"),yield this.moreTabMenuElement.updateComplete,this.moreTabMenuElement.offsetWidth&&(this.moreTabMenuOffsetWidth=this.moreTabMenuElement.offsetWidth,this.isMoreTabMenuMeasured=!0),this.moreTabMenuElement.classList.remove("md-menu-overlay__more_tab--measuring"))}))}initializeSortable(){this.visibleTabsContainerElement&&this.hiddenTabsContainerElement&&(this.visibleTabsSortableInstance=u.a.create(this.visibleTabsContainerElement,this.generateOptions()),this.hiddenTabsSortableInstance=u.a.create(this.hiddenTabsContainerElement,this.generateOptions()))}initializeTabs(){this.tabs=[],this.panels=[],this.tabsFilteredAsVisibleList=[],this.tabsFilteredAsHiddenList=[],this.isMoreTabMenuVisible=!1,this.setupPanelsAndTabs(),this.linkPanelsAndTabs(),this.draggable&&this.initializeSortable(),this.manageOverflow(),this.requestUpdate()}connectedCallback(){var e;if(super.connectedCallback(),this.setupTabsEvents(),this.persistSelection){if(!this.tabsId||""===this.tabsId.trim())return void console.error("Unique tabs-id attribute is mandatory for persist the selection of tab ");const e=localStorage.getItem(this.tabsId);this.selected=e&&parseInt(e)>-1?parseInt(e):this.selected}this.compUniqueId&&(this.tabsOrderPrefsArray=(null===(e=localStorage.getItem(this.compUniqueId))||void 0===e?void 0:e.split(","))||[])}selectTabFromStorage(){if(this.persistSelection){if(!this.tabsId||""===this.tabsId.trim())return void console.error("Unique tabs-id attribute is mandatory for persist the selection of tab ");const e=sessionStorage.getItem(this.tabsId);let t=0;if(e){const i=parseInt(e);t=i>-1?i:this.selected}const i=[...this.tabsFilteredAsVisibleList,...this.tabsFilteredAsHiddenList];i.length&&i[t].id?this.handleNewSelectedTab(i[t].id):this.selected=t}}disconnectedCallback(){super.disconnectedCallback(),this.teardownTabsEvents()}firstUpdated(e){super.firstUpdated(e),this.setupPanelsAndTabs(),this.linkPanelsAndTabs(),this.selectTabFromStorage()}updated(e){var t;if(super.updated(e),e.has("slotted")&&this.initializeTabs(),!this.draggable||this.visibleTabsSortableInstance||this.hiddenTabsSortableInstance||this.initializeSortable(),e.has("tabsFilteredAsHiddenList")&&(this.tabsCopy=Array.from((null===(t=this.tabsCopyHiddenListElements)||void 0===t?void 0:t.values())||[]),this.tabsCopyHash=this.tabsCopy.reduce((e,t)=>(e[t.id]=t,e),{})),(e.has("tabsFilteredAsVisibleList")||e.has("tabsFilteredAsHiddenList"))&&(this.tabsVisibleIdxHash=this.tabsFilteredAsVisibleList.reduce((e,t,i)=>(e[t.id]=i,e),{}),this.tabsHiddenIdxHash=this.tabsFilteredAsHiddenList.reduce((e,t,i)=>(e[t.id]=i,e),{})),e.has("isMoreTabMenuOpen")&&this.isMoreTabMenuVisible){const t=e.get("isMoreTabMenuOpen");this.isMoreTabMenuOpen&&!t&&(this.moreItemsScrollLimit<this.tabsCopy.length?(this.isMoreTabMenuScrollable=!0,this.moreTabMenuMaxHeight=this.measureHiddenTabsCopiesOffsetHeight().slice(0,this.moreItemsScrollLimit).reduce((e,t)=>e+=t,0)+"px"):(this.isMoreTabMenuScrollable=!1,this.moreTabMenuMaxHeight=null))}e.has("tabsId")&&this.selectTabFromStorage()}render(){return l.html`
|
|
2
2
|
<div
|
|
3
3
|
part="tabs-list"
|
|
4
|
-
class="md-tab__list ${Object(d.classMap)({"md-tab__justified":this.justified&&!this.isMoreTabMenuVisible,"no-tabs-visible":this.noTabsVisible,"vertical-tab-list":"vertical"===this.direction})}"
|
|
4
|
+
class="md-tab__list ${Object(d.classMap)({"md-tab__justified":this.justified&&!this.isMoreTabMenuVisible,"no-tabs-visible":this.noTabsVisible,"vertical-tab-list":"vertical"===this.direction,"tab-new-momentum":this.newMomentum})}"
|
|
5
5
|
role="tablist"
|
|
6
6
|
>
|
|
7
7
|
<slot
|
|
@@ -10,7 +10,7 @@
|
|
|
10
10
|
></slot>
|
|
11
11
|
<div
|
|
12
12
|
id="visible-tabs-list"
|
|
13
|
-
class="visible-tabs-container ${Object(d.classMap)({"md-tab__justified":this.justified&&!this.isMoreTabMenuVisible})}"
|
|
13
|
+
class="visible-tabs-container ${Object(d.classMap)({"md-tab__justified":this.justified&&!this.isMoreTabMenuVisible,"visible-new-tabs":this.newMomentum})}"
|
|
14
14
|
>
|
|
15
15
|
${Object(o.repeat)(this.tabsFilteredAsVisibleList,()=>Object(h.nanoid)(10),e=>l.html`
|
|
16
16
|
<md-tab
|
|
@@ -20,9 +20,12 @@
|
|
|
20
20
|
name="${e.name}"
|
|
21
21
|
id="${this.getCopyTabId(e)}"
|
|
22
22
|
aria-label=${e.ariaLabel}
|
|
23
|
-
aria-controls="${this.
|
|
23
|
+
aria-controls="${this.getAriaControlId(e)}"
|
|
24
24
|
.isCrossVisible=${!0}
|
|
25
25
|
tabIndex="${this.getTabIndex(e)}"
|
|
26
|
+
.newMomentum=${this.newMomentum}
|
|
27
|
+
type=${this.type}
|
|
28
|
+
.onlyIcon="${e.onlyIcon}"
|
|
26
29
|
>
|
|
27
30
|
${Object(b.unsafeHTML)(e.innerHTML)}
|
|
28
31
|
</md-tab>
|
|
@@ -46,9 +49,16 @@
|
|
|
46
49
|
.selected=${!!this.isMoreTabMenuVisible&&this.isMoreTabMenuSelected}
|
|
47
50
|
class="md-menu-overlay__more_tab ${Object(d.classMap)({"md-menu-overlay__more_tab--hidden":!this.isMoreTabMenuVisible})}"
|
|
48
51
|
ariaRole="button"
|
|
52
|
+
.newMomentum=${this.newMomentum}
|
|
53
|
+
type=${this.type}
|
|
49
54
|
>
|
|
50
55
|
<span class="md-menu-overlay__overflow-label">${this.overflowLabel}</span>
|
|
51
|
-
<md-icon
|
|
56
|
+
<md-icon
|
|
57
|
+
name="${this.isMoreTabMenuOpen?"arrow-up-bold":"arrow-down-bold"}"
|
|
58
|
+
iconSet="momentumDesign"
|
|
59
|
+
size="16"
|
|
60
|
+
class="more-icon"
|
|
61
|
+
></md-icon>
|
|
52
62
|
</md-tab>
|
|
53
63
|
<div
|
|
54
64
|
id="tabs-more-list"
|
|
@@ -64,10 +74,13 @@
|
|
|
64
74
|
name="${e.name}"
|
|
65
75
|
id="${this.getCopyTabId(e)}"
|
|
66
76
|
aria-label=${e.ariaLabel}
|
|
67
|
-
aria-controls="${this.
|
|
77
|
+
aria-controls="${this.getAriaControlId(e)}"
|
|
68
78
|
@click="${()=>this.handleOverlayClose()}"
|
|
69
79
|
tabIndex="${this.tabHiddenIdPositiveTabIndex===e.id?0:-1}"
|
|
70
80
|
ariaRole="menuitem"
|
|
81
|
+
.newMomentum=${this.newMomentum}
|
|
82
|
+
type=${this.type}
|
|
83
|
+
.onlyIcon="${e.onlyIcon}"
|
|
71
84
|
>
|
|
72
85
|
${Object(b.unsafeHTML)(e.innerHTML)}
|
|
73
86
|
</md-tab>
|
|
@@ -84,4 +97,4 @@
|
|
|
84
97
|
>
|
|
85
98
|
<slot name="panel"></slot>
|
|
86
99
|
</div>
|
|
87
|
-
`}};T([Object(l.property)({type:Boolean})],t.prototype,"justified",void 0),T([Object(l.property)({type:String})],t.prototype,"overflowLabel",void 0),T([Object(l.property)({type:Boolean,attribute:"draggable"})],t.prototype,"draggable",void 0),T([Object(l.property)({type:String})],t.prototype,"direction",void 0),T([Object(l.property)({type:Number,attribute:"more-items-scroll-limit"})],t.prototype,"moreItemsScrollLimit",void 0),T([Object(l.property)({type:Number})],t.prototype,"delay",void 0),T([Object(l.property)({type:Number})],t.prototype,"animation",void 0),T([Object(l.property)({type:String,attribute:"ghost-class"})],t.prototype,"ghostClass",void 0),T([Object(l.property)({type:String,attribute:"chosen-class"})],t.prototype,"chosenClass",void 0),T([Object(l.property)({type:Boolean,attribute:"force-fallback"})],t.prototype,"forceFallback",void 0),T([Object(l.property)({type:String,attribute:"fallback-class"})],t.prototype,"fallbackClass",void 0),T([Object(l.property)({type:String,attribute:"tabs-id"})],t.prototype,"tabsId",void 0),T([Object(l.property)({type:Boolean,attribute:"persist-selection"})],t.prototype,"persistSelection",void 0),T([Object(l.property)({type:String,attribute:"comp-unique-id"})],t.prototype,"compUniqueId",void 0),T([Object(l.internalProperty)()],t.prototype,"isMoreTabMenuVisible",void 0),T([Object(l.internalProperty)()],t.prototype,"isMoreTabMenuMeasured",void 0),T([Object(l.internalProperty)()],t.prototype,"isMoreTabMenuOpen",void 0),T([Object(l.internalProperty)()],t.prototype,"isMoreTabMenuSelected",void 0),T([Object(l.internalProperty)()],t.prototype,"isMoreTabMenuScrollable",void 0),T([Object(l.internalProperty)()],t.prototype,"moreTabMenuOffsetWidth",void 0),T([Object(l.internalProperty)()],t.prototype,"moreTabMenuMaxHeight",void 0),T([Object(l.internalProperty)()],t.prototype,"tabsViewportDataList",void 0),T([Object(l.internalProperty)()],t.prototype,"tabsFilteredAsVisibleList",void 0),T([Object(l.internalProperty)()],t.prototype,"tabsFilteredAsHiddenList",void 0),T([Object(l.internalProperty)()],t.prototype,"noTabsVisible",void 0),T([Object(l.internalProperty)()],t.prototype,"defaultTabsOrderArray",void 0),T([Object(l.internalProperty)()],t.prototype,"tabsOrderPrefsArray",void 0),T([Object(l.query)("slot[name='tab']")],t.prototype,"tabSlotElement",void 0),T([Object(l.query)("slot[name='panel']")],t.prototype,"panelSlotElement",void 0),T([Object(l.query)(".md-tab__list[part='tabs-list']")],t.prototype,"tabsListElement",void 0),T([Object(l.query)(".md-tabs__settings[part='md-tabs__settings']")],t.prototype,"tabsSettingsElement",void 0),T([Object(l.query)(".md-menu-overlay__more_tab")],t.prototype,"moreTabMenuElement",void 0),T([Object(l.query)("md-menu-overlay")],t.prototype,"menuOverlayElement",void 0),T([Object(l.query)(".md-tab__list[part='tabs-more-list']")],t.prototype,"tabsMoreListElement",void 0),T([Object(l.queryAll)(".md-menu-overlay__more_list md-tab")],t.prototype,"tabsCopyHiddenListElements",void 0),T([Object(l.query)("#visible-tabs-list")],t.prototype,"visibleTabsContainerElement",void 0),T([Object(l.query)("#tabs-more-list")],t.prototype,"hiddenTabsContainerElement",void 0),t=T([Object(a.f)("md-tabs")],t),e.ELEMENT=t}(
|
|
100
|
+
`}};T([Object(l.property)({type:Boolean})],t.prototype,"justified",void 0),T([Object(l.property)({type:String})],t.prototype,"overflowLabel",void 0),T([Object(l.property)({type:Boolean,attribute:"draggable"})],t.prototype,"draggable",void 0),T([Object(l.property)({type:String})],t.prototype,"direction",void 0),T([Object(l.property)({type:Number,attribute:"more-items-scroll-limit"})],t.prototype,"moreItemsScrollLimit",void 0),T([Object(l.property)({type:Number})],t.prototype,"delay",void 0),T([Object(l.property)({type:Number})],t.prototype,"animation",void 0),T([Object(l.property)({type:String,attribute:"ghost-class"})],t.prototype,"ghostClass",void 0),T([Object(l.property)({type:String,attribute:"chosen-class"})],t.prototype,"chosenClass",void 0),T([Object(l.property)({type:Boolean,attribute:"force-fallback"})],t.prototype,"forceFallback",void 0),T([Object(l.property)({type:String,attribute:"fallback-class"})],t.prototype,"fallbackClass",void 0),T([Object(l.property)({type:String,attribute:"tabs-id"})],t.prototype,"tabsId",void 0),T([Object(l.property)({type:Boolean,attribute:"persist-selection"})],t.prototype,"persistSelection",void 0),T([Object(l.property)({type:String,attribute:"comp-unique-id"})],t.prototype,"compUniqueId",void 0),T([Object(l.property)({type:String})],t.prototype,"type",void 0),T([Object(l.property)({type:Boolean})],t.prototype,"newMomentum",void 0),T([Object(l.internalProperty)()],t.prototype,"isMoreTabMenuVisible",void 0),T([Object(l.internalProperty)()],t.prototype,"isMoreTabMenuMeasured",void 0),T([Object(l.internalProperty)()],t.prototype,"isMoreTabMenuOpen",void 0),T([Object(l.internalProperty)()],t.prototype,"isMoreTabMenuSelected",void 0),T([Object(l.internalProperty)()],t.prototype,"isMoreTabMenuScrollable",void 0),T([Object(l.internalProperty)()],t.prototype,"moreTabMenuOffsetWidth",void 0),T([Object(l.internalProperty)()],t.prototype,"moreTabMenuMaxHeight",void 0),T([Object(l.internalProperty)()],t.prototype,"tabsViewportDataList",void 0),T([Object(l.internalProperty)()],t.prototype,"tabsFilteredAsVisibleList",void 0),T([Object(l.internalProperty)()],t.prototype,"tabsFilteredAsHiddenList",void 0),T([Object(l.internalProperty)()],t.prototype,"noTabsVisible",void 0),T([Object(l.internalProperty)()],t.prototype,"defaultTabsOrderArray",void 0),T([Object(l.internalProperty)()],t.prototype,"tabsOrderPrefsArray",void 0),T([Object(l.query)("slot[name='tab']")],t.prototype,"tabSlotElement",void 0),T([Object(l.query)("slot[name='panel']")],t.prototype,"panelSlotElement",void 0),T([Object(l.query)(".md-tab__list[part='tabs-list']")],t.prototype,"tabsListElement",void 0),T([Object(l.query)(".md-tabs__settings[part='md-tabs__settings']")],t.prototype,"tabsSettingsElement",void 0),T([Object(l.query)(".md-menu-overlay__more_tab")],t.prototype,"moreTabMenuElement",void 0),T([Object(l.query)("md-menu-overlay")],t.prototype,"menuOverlayElement",void 0),T([Object(l.query)(".md-tab__list[part='tabs-more-list']")],t.prototype,"tabsMoreListElement",void 0),T([Object(l.queryAll)(".md-menu-overlay__more_list md-tab")],t.prototype,"tabsCopyHiddenListElements",void 0),T([Object(l.query)("#visible-tabs-list")],t.prototype,"visibleTabsContainerElement",void 0),T([Object(l.query)("#tabs-more-list")],t.prototype,"hiddenTabsContainerElement",void 0),t=T([Object(a.f)("md-tabs")],t),e.ELEMENT=t}(g||(g={}))}}]);
|
package/dist/chunks/md-83.js
CHANGED
|
@@ -1,52 +1,52 @@
|
|
|
1
|
-
(window["momentum-web-components-[id]"]=window["momentum-web-components-[id]"]||[]).push([[83],{125:function(t,e,i){"use strict";i.r(e),i.d(e,"TaskItem",(function(){return
|
|
1
|
+
(window["momentum-web-components-[id]"]=window["momentum-web-components-[id]"]||[]).push([[83],{125:function(t,e,i){"use strict";i.r(e),i.d(e,"TaskItem",(function(){return o}));i(53),i(13);var o,a=i(6),n=i(5),s=i(0),m=i(3),r=i(4),c=s.css`:host{width:100%}.md-taskitem{align-items:center;display:flex;flex-direction:row;flex-wrap:nowrap;justify-content:stretch;border-radius:.5rem;color:var(--md-secondary-text-color);cursor:pointer;margin-bottom:4px;min-height:5rem;padding:.75rem;position:relative;width:auto;z-index:0}.md-taskitem.selected{background-color:var(--taskitem-pressed-bg-color,#fff);box-shadow:0 .125rem .25rem rgba(0,0,0,.16)}.md-taskitem.selected .md-taskitem__content_chat,.md-taskitem.selected .md-taskitem__content_popover_title,.md-taskitem.selected .md-taskitem__content_queue{color:var(--taskitem-selected-text-color,#121212)}.md-taskitem.selected .md-taskitem__content_title.mainTitle{color:var(--taskitem-selected-text-color,#121212)}.md-taskitem:hover{background-color:var(--taskitem-hover-bg-color,#fff)}.md-taskitem:hover .md-taskitem__content_chat,.md-taskitem:hover .md-taskitem__content_popover_title,.md-taskitem:hover .md-taskitem__content_queue{color:var(--taskitem-selected-text-color,#121212)}.md-taskitem:hover .md-taskitem__content_title.mainTitle{color:var(--taskitem-selected-text-color,#121212)}.md-taskitem:active{background-color:var(--taskitem-pressed-bg-color,#fff)}.md-taskitem:active .md-taskitem__content_chat,.md-taskitem:active .md-taskitem__content_popover_title,.md-taskitem:active .md-taskitem__content_queue{color:var(--taskitem-selected-text-color,#121212)}.md-taskitem:active .md-taskitem__content_title.mainTitle{color:var(--taskitem-selected-text-color,#121212)}.md-taskitem:focus{background:var(--taskitem-focus-bg-color,#fff);box-shadow:none;outline:0}.md-taskitem:focus::after{box-shadow:0 0 0 .125rem var(--taskitem-focus-border-color,#007aa3)}.md-taskitem::after{bottom:0;content:"";display:block;left:0;position:absolute;right:0;top:0;z-index:-1;border-radius:.5rem;margin:-.125rem}.md-taskitem__mediatype{margin-right:.5rem;position:relative;width:2.625rem}.md-taskitem__mediatype img{max-width:fit-content}.md-taskitem__mediatype .md-taskitem__status{align-items:center;display:inline-flex;justify-content:space-around;position:absolute;background:var(--taskitem-status-bg-color,#dedede);border-radius:50%;bottom:-4px;color:var(--taskitem-status-text-color,#121212);height:1.25rem;right:-4px;width:1.25rem}.md-taskitem__mediatype .md-taskitem__status md-icon{height:.75rem}.md-taskitem__mediatype .md-taskitem__status md-icon::part(icon){vertical-align:top}.md-taskitem__mediatype .md-taskitem__status.hold{background:var(--taskitem-status-pause-bg-color,#ffd98c)}.md-taskitem__content{align-content:stretch;align-items:flex-start;align-self:stretch;display:flex;flex:0 1 auto;flex-direction:column;justify-content:center;width:calc(100% - (2.625rem + 6.25rem))}.md-taskitem__content_popover_title{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:var(--taskitem-text-color,#545454);font-family:var(--brand-font-bold, "CiscoSansTT Bold", "Helvetica Neue", Helvetica, Arial, sans-serif);font-size:14px;line-height:.9375rem;margin-bottom:.5rem;width:100%}.md-taskitem__content_title{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:16px;line-height:1.1875rem;margin-bottom:.5rem;width:100%}.md-taskitem__content_title.mainTitle{color:var(--taskitem-text-color,#545454);font-family:var(--brand-font-bold, "CiscoSansTT Bold", "Helvetica Neue", Helvetica, Arial, sans-serif)}.md-taskitem__content_inner{display:flex;flex:0 1 auto;width:100%}.md-taskitem__content_queue{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:12px;line-height:.875rem;width:100%}.md-taskitem__content_chat{color:var(--taskitem-chat-text-color,#545454);display:flex;font-size:12px;line-height:.875rem;margin-top:.5rem;position:relative;width:100%}.md-taskitem__content_chat .new-chat_massages{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;padding-right:2.5rem;width:calc(100% - .5rem)}.md-taskitem__addition{align-items:flex-end;display:flex;flex-direction:column;margin-left:.5rem;text-align:right;width:6.25rem}.md-taskitem__addition .new-chat-quantity{background:var(--taskitem-chat-quantity-bg-color,#9df);border-radius:9px;color:var(--taskitem-chat-quantity-text-color,#103c62);display:inline-block;font-size:10px;line-height:.875rem;min-width:18px;padding:.125rem .25rem;text-align:center}@media(forced-colors:active){.md-taskitem:focus{outline:1px solid Highlight}.md-taskitem.selected,.md-taskitem:hover{forced-color-adjust:none;outline:1px solid Highlight;background-color:Highlight;color:HighlightText;box-shadow:none}.md-taskitem:active{forced-color-adjust:none;outline:1px solid HighlightText;background-color:Highlight;color:HighlightText;box-shadow:none}.md-taskitem__addition .new-chat-quantity{forced-color-adjust:auto}}`,d=function(t,e,i,o){var a,n=arguments.length,s=n<3?e:null===o?o=Object.getOwnPropertyDescriptor(e,i):o;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)s=Reflect.decorate(t,e,i,o);else for(var m=t.length-1;m>=0;m--)(a=t[m])&&(s=(n<3?a(s):n>3?a(e,i,s):a(e,i))||s);return n>3&&s&&Object.defineProperty(e,i,s),s};!function(t){let e=class extends s.LitElement{constructor(){super(...arguments),this.mediaType="call",this.status="",this.popovertitle="",this.title="",this.queue="",this.accepted=!1,this.quantity=0,this.lastmessage="",this.selected=!1,this.customAriaLabel="",this.iconSrc="",this.tabIndexForContainer="0",this.renderTaskType=()=>{switch(this.mediaType.toLowerCase()){case"telephony":return s.html`
|
|
2
2
|
<md-badge color="green" circle>
|
|
3
|
-
<md-icon name="handset-
|
|
3
|
+
<md-icon name="handset-filled" size="20" iconSet="momentumDesign"></md-icon>
|
|
4
4
|
</md-badge>
|
|
5
|
-
`;case"outbound telephony":return
|
|
5
|
+
`;case"outbound telephony":return s.html`
|
|
6
6
|
<md-badge color="green" circle>
|
|
7
|
-
<md-icon name="outgoing-call-
|
|
7
|
+
<md-icon name="outgoing-call-legacy-filled" size="20" iconSet="momentumDesign"></md-icon>
|
|
8
8
|
</md-badge>
|
|
9
|
-
`;case"inbound telephony":return
|
|
9
|
+
`;case"inbound telephony":return s.html`
|
|
10
10
|
<md-badge color="green" circle>
|
|
11
|
-
<md-icon name="incoming-call-
|
|
11
|
+
<md-icon name="incoming-call-legacy-filled" size="20" iconSet="momentumDesign"></md-icon>
|
|
12
12
|
</md-badge>
|
|
13
|
-
`;case"applemessages":case"midcall telephony":case"icon src":return
|
|
13
|
+
`;case"applemessages":case"midcall telephony":case"icon src":return s.html`
|
|
14
14
|
<md-badge circle>
|
|
15
15
|
<img src="${this.iconSrc}" />
|
|
16
16
|
</md-badge>
|
|
17
|
-
`;case"callback":return
|
|
17
|
+
`;case"callback":return s.html`
|
|
18
18
|
<md-badge color="lime" circle>
|
|
19
19
|
<md-icon name="icon-icon-callback_18"></md-icon>
|
|
20
20
|
</md-badge>
|
|
21
|
-
`;case"progressive_campaign":return
|
|
21
|
+
`;case"progressive_campaign":return s.html`
|
|
22
22
|
<md-badge color="green" circle>
|
|
23
23
|
<md-icon name="icon-icon-campaign_18"></md-icon>
|
|
24
24
|
</md-badge>
|
|
25
|
-
`;case"chat":return
|
|
25
|
+
`;case"chat":return s.html`
|
|
26
26
|
<md-badge color="blue" circle>
|
|
27
|
-
<md-icon name="chat-
|
|
27
|
+
<md-icon name="chat-filled" size="20" iconSet="momentumDesign"></md-icon>
|
|
28
28
|
</md-badge>
|
|
29
|
-
`;case"email":return
|
|
29
|
+
`;case"email":return s.html`
|
|
30
30
|
<md-badge color="violet" circle>
|
|
31
|
-
<md-icon name="email-
|
|
31
|
+
<md-icon name="email-filled" size="20" iconSet="momentumDesign"></md-icon>
|
|
32
32
|
</md-badge>
|
|
33
|
-
`;case"sms":return
|
|
33
|
+
`;case"sms":return s.html`
|
|
34
34
|
<md-badge color="darkmint" circle>
|
|
35
|
-
<md-icon name="
|
|
35
|
+
<md-icon name="social-sms" size="20" iconSet="momentumDesign" color="white-100"></md-icon>
|
|
36
36
|
</md-badge>
|
|
37
|
-
`;case"facebook":return
|
|
37
|
+
`;case"facebook":return s.html`
|
|
38
38
|
<md-badge bgColor="#0078FF" circle>
|
|
39
|
-
<md-icon name="
|
|
39
|
+
<md-icon name="social-fbmessenger" size="20" iconSet="momentumDesign" color="white-100"></md-icon>
|
|
40
40
|
</md-badge>
|
|
41
|
-
`;case"whatsapp":return
|
|
41
|
+
`;case"whatsapp":return s.html`
|
|
42
42
|
<md-badge bgColor="#25D366" circle>
|
|
43
|
-
<md-icon name="
|
|
43
|
+
<md-icon name="social-whatsapp" size="20" iconSet="momentumDesign" color="white-100"></md-icon>
|
|
44
44
|
</md-badge>
|
|
45
|
-
`;default:return
|
|
45
|
+
`;default:return s.html` <slot name="task-type"></slot> `}},this.renderStatus=()=>{switch(this.status){case"consulting":return s.html` <md-icon name="headset-bold" size="12" iconSet="momentumDesign"></md-icon> `;case"play":return s.html` <md-icon name="play-bold" size="12" iconSet="momentumDesign"></md-icon> `;case"hold":return s.html` <md-icon name="pause-bold" size="12" iconSet="momentumDesign"></md-icon> `;case"conference":return s.html` <md-icon name="meet-bold" size="16" iconSet="momentumDesign"></md-icon> `;case"transfered":return s.html` <md-icon name="assign-privilege-bold" size="16" iconSet="momentumDesign"></md-icon> `;case"courtesy_callback":return s.html` <md-icon name="callrate-bold" size="12" iconSet="momentumDesign"></md-icon> `;case"campaign":return s.html` <md-icon name="announcement-bold" size="12" iconSet="momentumDesign"></md-icon> `;default:return s.html` <slot name="task-status"></slot> `}}}handleClick(t){this.dispatchEvent(new CustomEvent("taskitem-click",{composed:!0,bubbles:!0,detail:{srcEvent:t}})),this.blur()}handleKeyDown(t){this.dispatchEvent(new CustomEvent("taskitem-keydown",{detail:{key:t.code},bubbles:!0,composed:!0}))}renderChatCount(){return this.quantity>0?this.quantity>99?s.html` <span class="new-chat-quantity">99+</span> `:s.html` <span class="new-chat-quantity">${this.quantity}</span> `:m.nothing}getAriaLabel(){var t;if(this.customAriaLabel)return this.customAriaLabel;let e=this.queue;if(!e){const i=this.querySelector('[slot="queue"]');if(i){e=(null===(t=i.textContent)||void 0===t?void 0:t.trim())||i.innerText.trim();const o=e.match(/(?:([01]?\d|2[0-3]):)?([0-5]?\d):([0-5]?\d)/);if(o){const[,t=0,i,a]=o.map(Number);(new Date).setHours(t,i,a),e=e.replace(/(?:([01]?\d|2[0-3]):)?([0-5]?\d):([0-5]?\d)/,`${t?t+" hours ":""}${i} minutes ${a} seconds`)}}}return`${this.mediaType} ${this.status} ${this.title} ${e} ${this.quantity?this.quantity:""} ${this.lastmessage}`}static get styles(){return[n.a,c]}get sanitizedTabIndexForContainer(){var t;return null!==(t=parseInt(this.tabIndexForContainer))&&void 0!==t?t:0}render(){return s.html`
|
|
46
46
|
<div
|
|
47
47
|
part="task-item-container"
|
|
48
|
-
class="md-taskitem ${Object(
|
|
49
|
-
tabindex=${this.
|
|
48
|
+
class="md-taskitem ${Object(r.classMap)({selected:this.selected})}"
|
|
49
|
+
tabindex=${this.sanitizedTabIndexForContainer}
|
|
50
50
|
aria-selected="${this.selected}"
|
|
51
51
|
@click=${t=>this.handleClick(t)}
|
|
52
52
|
@keydown=${t=>this.handleKeyDown(t)}
|
|
@@ -54,29 +54,29 @@
|
|
|
54
54
|
>
|
|
55
55
|
<div class="md-taskitem__mediatype">
|
|
56
56
|
${this.renderTaskType()}
|
|
57
|
-
${this.status?
|
|
57
|
+
${this.status?s.html` <span class=${"md-taskitem__status "+this.status}> ${this.renderStatus()} </span> `:m.nothing}
|
|
58
58
|
</div>
|
|
59
59
|
<div class="md-taskitem__content" part="task-item-content">
|
|
60
|
-
${this.popovertitle?
|
|
61
|
-
${this.title?
|
|
62
|
-
<span class="md-taskitem__content_title ${Object(
|
|
60
|
+
${this.popovertitle?s.html` <span class="md-taskitem__content_popover_title">${this.popovertitle}</span> `:m.nothing}
|
|
61
|
+
${this.title?s.html`
|
|
62
|
+
<span class="md-taskitem__content_title ${Object(r.classMap)({mainTitle:!this.popovertitle})}"
|
|
63
63
|
>${this.title}</span
|
|
64
64
|
>
|
|
65
|
-
`:
|
|
65
|
+
`:m.nothing}
|
|
66
66
|
<div class="md-taskitem__content_inner">
|
|
67
67
|
<span class="md-taskitem__content_queue">
|
|
68
|
-
${this.queue.length>0?this.queue:
|
|
68
|
+
${this.queue.length>0?this.queue:s.html` <slot name="queue"></slot> `}
|
|
69
69
|
</span>
|
|
70
70
|
</div>
|
|
71
|
-
${this.lastmessage?
|
|
71
|
+
${this.lastmessage?s.html`
|
|
72
72
|
<span class="md-taskitem__content_chat">
|
|
73
73
|
<span class="new-chat_massages">${this.lastmessage}</span>
|
|
74
74
|
</span>
|
|
75
|
-
`:
|
|
75
|
+
`:m.nothing}
|
|
76
76
|
</div>
|
|
77
77
|
<div class="md-taskitem__addition">
|
|
78
78
|
<slot></slot>
|
|
79
79
|
${this.renderChatCount()}
|
|
80
80
|
</div>
|
|
81
81
|
</div>
|
|
82
|
-
`}};d([Object(
|
|
82
|
+
`}};d([Object(s.property)({type:String})],e.prototype,"mediaType",void 0),d([Object(s.property)({type:String})],e.prototype,"status",void 0),d([Object(s.property)({type:String})],e.prototype,"popovertitle",void 0),d([Object(s.property)({type:String})],e.prototype,"title",void 0),d([Object(s.property)({type:String})],e.prototype,"queue",void 0),d([Object(s.property)({type:Boolean})],e.prototype,"accepted",void 0),d([Object(s.property)({type:Number})],e.prototype,"quantity",void 0),d([Object(s.property)({type:String})],e.prototype,"lastmessage",void 0),d([Object(s.property)({type:Boolean})],e.prototype,"selected",void 0),d([Object(s.property)({type:String})],e.prototype,"customAriaLabel",void 0),d([Object(s.property)({type:String})],e.prototype,"iconSrc",void 0),d([Object(s.property)({type:String})],e.prototype,"tabIndexForContainer",void 0),e=d([Object(a.a)("md-task-item")],e),t.ELEMENT=e}(o||(o={}))}}]);
|