@energycap/components 0.26.9 → 0.26.10
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/bundles/energycap-components.umd.js +102 -47
- package/bundles/energycap-components.umd.js.map +1 -1
- package/bundles/energycap-components.umd.min.js +1 -1
- package/bundles/energycap-components.umd.min.js.map +1 -1
- package/energycap-components.d.ts +3 -2
- package/energycap-components.metadata.json +1 -1
- package/esm2015/energycap-components.js +4 -3
- package/esm2015/lib/controls/textbox/textbox.component.js +17 -4
- package/esm2015/lib/display/app-bar/app-bar.component.js +13 -3
- package/esm2015/lib/display/avatar/avatar.component.js +9 -41
- package/esm2015/lib/display/avatar/avatar.service.js +62 -0
- package/fesm2015/energycap-components.js +95 -46
- package/fesm2015/energycap-components.js.map +1 -1
- package/lib/controls/textbox/textbox.component.d.ts +12 -6
- package/lib/display/app-bar/app-bar.component.d.ts +7 -1
- package/lib/display/avatar/avatar.component.d.ts +5 -10
- package/lib/display/avatar/avatar.service.d.ts +21 -0
- package/package.json +1 -1
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
!function(e,t){"object"==typeof exports&&"undefined"!=typeof module?t(exports,require("@angular/common"),require("@angular/core"),require("@angular/forms"),require("@angular/router"),require("@ngx-translate/core"),require("@angular/cdk/a11y"),require("@angular/cdk/overlay"),require("rxjs"),require("rxjs/operators"),require("lodash"),require("moment"),require("popper.js"),require("@angular/cdk/portal"),require("ngx-clipboard")):"function"==typeof define&&define.amd?define("@energycap/components",["exports","@angular/common","@angular/core","@angular/forms","@angular/router","@ngx-translate/core","@angular/cdk/a11y","@angular/cdk/overlay","rxjs","rxjs/operators","lodash","moment","popper.js","@angular/cdk/portal","ngx-clipboard"],t):t(((e="undefined"!=typeof globalThis?globalThis:e||self).energycap=e.energycap||{},e.energycap.components={}),e.ng.common,e.ng.core,e.ng.forms,e.ng.router,e.i1,e.ng.cdk.a11y,e.ng.cdk.overlay,e.rxjs,e.rxjs.operators,e.lodash,e.moment,e.Popper,e.ng.cdk.portal,e.ngxClipboard)}(this,(function(e,t,o,n,r,i,a,s,l,c,d,p,u,h,m){"use strict";function g(e){return e&&"object"==typeof e&&"default"in e?e:{default:e}}var f=g(p),b=g(u),y=function(e,t){return(y=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(e,t){e.__proto__=t}||function(e,t){for(var o in t)Object.prototype.hasOwnProperty.call(t,o)&&(e[o]=t[o])})(e,t)};function v(e,t){if("function"!=typeof t&&null!==t)throw new TypeError("Class extends value "+String(t)+" is not a constructor or null");function o(){this.constructor=e}y(e,t),e.prototype=null===t?Object.create(t):(o.prototype=t.prototype,new o)}function x(e,t,o,n){return new(o||(o=Promise))((function(r,i){function a(e){try{l(n.next(e))}catch(e){i(e)}}function s(e){try{l(n.throw(e))}catch(e){i(e)}}function l(e){var t;e.done?r(e.value):(t=e.value,t instanceof o?t:new o((function(e){e(t)}))).then(a,s)}l((n=n.apply(e,t||[])).next())}))}function w(e,t){var o,n,r,i,a={label:0,sent:function(){if(1&r[0])throw r[1];return r[1]},trys:[],ops:[]};return i={next:s(0),throw:s(1),return:s(2)},"function"==typeof Symbol&&(i[Symbol.iterator]=function(){return this}),i;function s(i){return function(s){return function(i){if(o)throw new TypeError("Generator is already executing.");for(;a;)try{if(o=1,n&&(r=2&i[0]?n.return:i[0]?n.throw||((r=n.return)&&r.call(n),0):n.next)&&!(r=r.call(n,i[1])).done)return r;switch(n=0,r&&(i=[2&i[0],r.value]),i[0]){case 0:case 1:r=i;break;case 4:return a.label++,{value:i[1],done:!1};case 5:a.label++,n=i[1],i=[0];continue;case 7:i=a.ops.pop(),a.trys.pop();continue;default:if(!(r=a.trys,(r=r.length>0&&r[r.length-1])||6!==i[0]&&2!==i[0])){a=0;continue}if(3===i[0]&&(!r||i[1]>r[0]&&i[1]<r[3])){a.label=i[1];break}if(6===i[0]&&a.label<r[1]){a.label=r[1],r=i;break}if(r&&a.label<r[2]){a.label=r[2],a.ops.push(i);break}r[2]&&a.ops.pop(),a.trys.pop();continue}i=t.call(e,a)}catch(e){i=[6,e],n=0}finally{o=r=0}if(5&i[0])throw i[1];return{value:i[0]?i[1]:void 0,done:!0}}([i,s])}}}Object.create;function I(e,t){var o="function"==typeof Symbol&&e[Symbol.iterator];if(!o)return e;var n,r,i=o.call(e),a=[];try{for(;(void 0===t||t-- >0)&&!(n=i.next()).done;)a.push(n.value)}catch(e){r={error:e}}finally{try{n&&!n.done&&(o=i.return)&&o.call(i)}finally{if(r)throw r.error}}return a}function k(){for(var e=[],t=0;t<arguments.length;t++)e=e.concat(I(arguments[t]));return e}Object.create;var C=function(){function e(){}return e.prototype.getItem=function(e,t){void 0===t&&(t=!1);var o=this.getStorage(t);if(o){var n=o.getItem(e);if(n)return JSON.parse(n)}return null},e.prototype.keys=function(e){void 0===e&&(e=!1);var t=new Array,o=this.getStorage(e);if(o)for(var n=0,r=o.length;n<r;++n)t.push(o.key(n));return t},e.prototype.removeItem=function(e,t){void 0===t&&(t=!1);var o=this.getStorage(t);o&&o.removeItem(e)},e.prototype.setItem=function(e,t,o){void 0===o&&(o=!1);var n=this.getStorage(o);n&&n.setItem(e,JSON.stringify(t))},e.prototype.getStorage=function(e){return e?window.sessionStorage:window.localStorage},e}();C.ɵprov=o.ɵɵdefineInjectable({factory:function(){return new C},token:C,providedIn:"root"}),C.decorators=[{type:o.Injectable,args:[{providedIn:"root"}]}];var M=function(){function e(e,t,o){this.renderer=e,this.cacheService=t,this.document=o,this.rememberWidth=!1,this.id="",this.currentEl=null,this.startScreenX=0,this.startElWidth=0}return e.prototype.ngAfterViewInit=function(){if(this.rememberWidth&&this.id){var e=this.cacheService.getItem("resizable-"+this.id);e&&e.widths&&e.widths.length>0&&this.restoreWidths(e.widths)}},e.prototype.startDrag=function(e){if(!this.currentEl)throw new Error("currentEl is "+this.currentEl+". currentEl must be assigned before startDrag() is called.");this.startElWidth=this.currentEl.offsetWidth,this.startScreenX=e.screenX,this.renderer.addClass(this.currentEl,"is-active"),this.renderer.setStyle(this.document.body,"cursor","col-resize"),this.mouseupListener&&(this.mouseupListener(),this.mouseupListener=void 0),this.mousemoveListener&&(this.mousemoveListener(),this.mousemoveListener=void 0),this.mouseupListener=this.renderer.listen(this.document,"mouseup",this.stopDrag.bind(this)),this.mousemoveListener=this.renderer.listen(this.document,"mousemove",this.drag.bind(this))},e.prototype.drag=function(e){this.setWidth(this.startElWidth+(e.screenX-this.startScreenX))},e.prototype.stopDrag=function(e){this.mousemoveListener&&(this.mousemoveListener(),this.mousemoveListener=void 0),this.mouseupListener&&(this.mouseupListener(),this.mouseupListener=void 0),this.currentEl&&this.renderer.removeClass(this.currentEl,"is-active"),this.renderer.removeStyle(this.document.body,"cursor")},e.prototype.restoreWidths=function(e){},e.prototype.saveWidths=function(e){this.rememberWidth&&this.id?this.cacheService.setItem("resizable-"+this.id,{widths:e}):this.rememberWidth&&console.error("rememberWidth is set but will not take effect unless ID is also set")},e}();M.decorators=[{type:o.Directive}],M.ctorParameters=function(){return[{type:o.Renderer2},{type:C},{type:Document,decorators:[{type:o.Inject,args:[t.DOCUMENT]}]}]},M.propDecorators={rememberWidth:[{type:o.Input}],id:[{type:o.Input}]};var S=function(e){function t(t,o,n,r){var i=e.call(this,o,n,r)||this;return i.el=t,i.sortableTable=!1,i.cols=[],i.colWidths=[],i.currentTableWidth=0,i.minTableWidth=0,i.minColWidth=32,i.destroyed=new l.Subject,i}return v(t,e),t.prototype.ngOnInit=function(){var e=this;this.initResizableColumns(),this.resizableColumns.changes.pipe(c.takeUntil(this.destroyed)).subscribe((function(){return e.initResizableColumns()}))},t.prototype.ngOnDestroy=function(){this.destroyed.next(),this.destroyed.complete()},t.prototype.initResizableColumns=function(){var e=this;if(!1!==this.isResizable){if(this.tableEl=this.el.nativeElement,"TABLE"!==this.tableEl.tagName)throw new Error("The 'ecResizableTable' directive can only be placed on a <table> element.");this.sortableTable&&(this.minColWidth=48);var t=this.tableEl.querySelectorAll("th"),o=this.tableEl.querySelectorAll("col");if(this.cols=[],this.colWidths=[],0===o.length){var n=this.document.createDocumentFragment(),r=this.renderer.createElement("colgroup");t.forEach((function(){var t=e.renderer.createElement("col");e.cols.push(t),e.renderer.appendChild(n,t)})),this.renderer.appendChild(r,n),this.renderer.insertBefore(this.tableEl,r,this.tableEl.firstElementChild)}else o.forEach((function(t){e.cols.push(t)})),t.length!==o.length&&console.warn("There are "+t.length+" <th> elements and "+this.cols.length+" <col> elements in this this table. The number of columns and table headers must match. <th> elements with a 'colspan' attribute are currently not supported.");var i=Array.from(t).reverse().findIndex((function(e){return e.classList.contains("is-resizable")}))+1;this.lastColIndex=this.cols.length-i,t.forEach((function(t){if(t.classList.contains("is-resizable")){var o=t.querySelector(".handle");e.renderer.listen(o,"mousedown",(function(o){e.currentEl=t,e.startDrag(o)}))}})),window.setTimeout((function(){e.setInitialWidths(t)}))}},t.prototype.setWidth=function(e){if(this.currentEl){var t=this.currentEl.cellIndex;e=Math.max(e,this.minColWidth),this.colWidths[t]=e,this.renderer.setStyle(this.cols[t],"width",e+"px");var o=0;this.colWidths.forEach((function(e){o+=e}));var n=this.containerEl.nativeElement.clientWidth;this.minTableWidth!==n&&(this.minTableWidth=n);var r=o-this.minTableWidth;if(r<0){var i=t===this.lastColIndex?this.lastColIndex-1:this.lastColIndex,a=Math.max(this.colWidths[i]+Math.abs(r),this.minColWidth);this.renderer.setStyle(this.cols[i],"width",a+"px"),this.renderer.setStyle(this.tableEl,"width",this.minTableWidth+"px")}else this.renderer.setStyle(this.tableEl,"width",o+"px")}},t.prototype.stopDrag=function(t){if(e.prototype.stopDrag.call(this,t),this.currentEl){var o=this.currentEl.cellIndex,n=this.resizableColumns.find((function(e){return e.el.nativeElement.cellIndex===o}));n&&n.emitWidth(Math.round(this.colWidths[o]))}},t.prototype.setInitialWidths=function(e){var t=this;this.currentTableWidth=this.tableEl.offsetWidth,this.minTableWidth=this.containerEl.nativeElement.clientWidth,e.forEach((function(e){t.colWidths[e.cellIndex]=e.offsetWidth;var o=e.style.width;o&&(t.renderer.setStyle(t.cols[e.cellIndex],"width",o),t.renderer.removeStyle(e,"width"))}));var o=0;this.colWidths.forEach((function(e){o+=e}));var n=o-this.currentTableWidth;if(n>0){var r=e[e.length>1?e.length-2:0];this.colWidths[r.cellIndex]=r.offsetWidth-n,this.renderer.setStyle(this.cols[r.cellIndex],"width",this.colWidths[r.cellIndex]+"px"),o-=n}this.renderer.setStyle(this.tableEl,"width",Math.max(this.currentTableWidth,o)+"px"),this.renderer.setStyle(this.tableEl,"minWidth","100%")},t}(M);S.decorators=[{type:o.Directive,args:[{selector:"[ecResizableTable]"}]}],S.ctorParameters=function(){return[{type:o.ElementRef},{type:o.Renderer2},{type:C},{type:Document,decorators:[{type:o.Inject,args:[t.DOCUMENT]}]}]},S.propDecorators={isResizable:[{type:o.Input,args:["ecResizableTable"]}],containerEl:[{type:o.Input}],sortableTable:[{type:o.Input}],resizableColumns:[{type:o.Input}]};var T=function(){function e(e){this.el=e,this.onResize=new o.EventEmitter}return e.prototype.emitWidth=function(e){this.onResize.emit(e)},e}();T.decorators=[{type:o.Component,args:[{selector:"th.is-resizable",template:'<div class="content-wrapper">\r\n <div class="content">\r\n <ng-content></ng-content>\r\n </div>\r\n</div>\r\n<div class="handle"></div>\r\n'}]}],T.ctorParameters=function(){return[{type:o.ElementRef}]},T.propDecorators={onResize:[{type:o.Output}]};var D=function(){function e(e,t){this.renderer=e,this.el=t,this.showDetails=!1,this.showDetailsChanged=new o.EventEmitter}return e.prototype.ngOnInit=function(){this.detailRowColSpan||console.error("A value for [detailRowColSpan] is required to render a detail row correctly. This should be the number of columns TDs placed inside an tr[ecTableMasterRow]."),this.parentNode=this.renderer.parentNode(this.el.nativeElement),this.updateDetailRow()},e.prototype.ngOnChanges=function(e){e.hasDetails&&!e.hasDetails.firstChange&&void 0!==e.hasDetails.currentValue&&this.updateDetailRow(),e.showDetails&&!e.showDetails.firstChange&&void 0!==e.showDetails.currentValue&&this.updateVisibility()},e.prototype.ngOnDestroy=function(){this.removeDetailView()},e.prototype.updateDetailRow=function(){if(this.hasDetails){if(!this.detailTemplate)return void console.error("A value for the [detailTemplate] input is required when 'hasDetails' is true.");this.detailView=this.detailRowTemplate.createEmbeddedView({}),this.updateVisibility()}else this.removeDetailView()},e.prototype.toggleDetails=function(e){this.showDetails=e,this.showDetailsChanged.emit(e),this.updateVisibility()},e.prototype.updateVisibility=function(){this.showDetails?this.show():this.hide()},e.prototype.show=function(){var e=this;this.detailView&&(this.siblingNode=this.renderer.nextSibling(this.el.nativeElement),this.detailView.reattach(),this.detailView.detectChanges(),this.detailView.rootNodes.forEach((function(t){e.renderer.insertBefore(e.parentNode,t,e.siblingNode)})))},e.prototype.hide=function(){this.detailView&&(this.detailView.detach(),this.removeDetailNodes())},e.prototype.removeDetailView=function(){this.detailView&&(this.detailView.destroy(),this.removeDetailNodes())},e.prototype.removeDetailNodes=function(){var e=this;this.detailView&&this.detailView.rootNodes.forEach((function(t){try{e.renderer.removeChild(e.parentNode,t)}catch(e){}}))},e}();D.decorators=[{type:o.Component,args:[{selector:"[ecTableMasterRow]",template:'<td>\r\n <ec-collapsible-toggle *ngIf="hasDetails"\r\n id="{{id}}_toggle"\r\n [expanded]="showDetails"\r\n (expandedChange)="toggleDetails($event)"></ec-collapsible-toggle>\r\n</td>\r\n<ng-content></ng-content>\r\n\r\n<ng-template #detailRow>\r\n <tr ecTableDetailRow class="{{detailRowClass}}" [contentClass]="detailRowContentClass" [contentColSpan]="detailRowColSpan" [maxHeight]="detailRowMaxHeight">\r\n <ng-container *ngTemplateOutlet="detailTemplate; context: {$implicit: detailContext}"></ng-container>\r\n </tr>\r\n</ng-template>',styles:["@-webkit-keyframes spin{0%{transform:rotate(0)}to{transform:rotate(1turn)}}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(1turn)}}td{padding:.25rem 0!important;vertical-align:top;width:1.5rem}td ::ng-deep+td{padding-left:0}"]}]}],D.ctorParameters=function(){return[{type:o.Renderer2},{type:o.ElementRef}]},D.propDecorators={id:[{type:o.Input}],hasDetails:[{type:o.Input}],showDetails:[{type:o.Input}],detailTemplate:[{type:o.Input}],detailContext:[{type:o.Input}],detailRowColSpan:[{type:o.Input}],detailRowClass:[{type:o.Input}],detailRowContentClass:[{type:o.Input}],detailRowMaxHeight:[{type:o.Input}],showDetailsChanged:[{type:o.Output}],detailRowTemplate:[{type:o.ViewChild,args:["detailRow",{read:o.TemplateRef,static:!0}]}]};var E=function(){function e(e,t){this.renderer=e,this.el=t,this.id="",this.scrollable=!1,this.resizable=!1,this.condensed=!1,this.sortable=!1,this.selectable=!1,this.hasSelection=!1,this.isForm=!1,this.sortChange=new o.EventEmitter,this.hasMasterDetailRows=!1,this.unlisteners=[],this.sortableCols={},this.destroyed=new l.Subject}return e.prototype.ngOnChanges=function(e){if(this.sortable&&e.sort&&e.sort.currentValue&&!e.sort.firstChange){var t=e.sort.currentValue;this.currentSort&&d.isEqual(t,this.currentSort)||this.onSort(t.field,t.direction)}},e.prototype.ngAfterContentInit=function(){var e=this;this.hasMasterDetailRows=!!this.masterRows.length,this.masterRows.changes.pipe(c.takeUntil(this.destroyed)).subscribe((function(){e.hasMasterDetailRows=!!e.masterRows.length})),this.resizableColumns=this.searchableTableResizableColumns||this._resizableColumns},e.prototype.ngAfterViewInit=function(){this.sortable&&this.initSortable(),this.selectable&&this.initSelectable()},e.prototype.ngOnDestroy=function(){this.unlisteners.length&&this.unlisteners.forEach((function(e){return e()})),this.destroyed.next(),this.destroyed.unsubscribe()},e.prototype.queryElements=function(e){var t=this.el.nativeElement;return Array.from(t.querySelectorAll(e))},e.prototype.initSortable=function(){var e=this;this.queryElements("th").forEach((function(t){if(t.hasAttribute("data-sortfield")){var o=t.getAttribute("data-sortfield");if(o){e.sortableCols[o]=t;var n=e.renderer.listen(t,"click",(function(n){t.classList.contains("is-resizable")&&n.target&&n.target.classList.contains("handle")||e.onSort(o)}));e.unlisteners.push(n)}else console.error("data-sortfield attribute was not assigned a value.",t)}})),this.sort&&this.onSort(this.sort.field,this.sort.direction)},e.prototype.onSort=function(e,t){var o=this.sortableCols[e];if(o){this.currentSort&&this.currentSort.field!==e&&this.renderer.removeClass(this.sortableCols[this.currentSort.field],"is-sorted-"+this.currentSort.direction),o.classList.contains("is-sorted-desc")?(this.renderer.removeClass(o,"is-sorted-desc"),t||(t="asc")):(o.classList.contains("is-sorted-asc")&&this.renderer.removeClass(o,"is-sorted-asc"),t||(t="desc")),this.renderer.addClass(o,"is-sorted-"+t);var n={field:e,direction:t};this.currentSort=n,this.sortChange.emit(n)}},e.prototype.initSelectable=function(){var e=this;this.selectionContext.rowCheckboxes.valueChanges.pipe(c.takeUntil(this.destroyed)).subscribe((function(t){e.hasSelection=t.some((function(e){return e}))}))},e}();E.decorators=[{type:o.Component,args:[{selector:"ec-table",template:'<div class="selectable-table-toolbar"\r\n *ngIf="hasSelection">\r\n <ng-container *ngTemplateOutlet="selectionToolbarTemplate"></ng-container>\r\n</div>\r\n<div id="{{id}}-scroll-container" \r\n class="table-scroll-container">\r\n <table class="main-table"\r\n id="{{id}}"\r\n [ecResizableTable]="resizable"\r\n [containerEl]="el"\r\n [sortableTable]="sortable"\r\n [resizableColumns]="resizableColumns">\r\n <ng-content></ng-content>\r\n </table>\r\n</div>',encapsulation:o.ViewEncapsulation.None,styles:['@-webkit-keyframes spin{0%{transform:rotate(0)}to{transform:rotate(1turn)}}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(1turn)}}ec-table{display:flex;min-height:0;position:relative}ec-table .table-scroll-container{flex:1 1;min-height:0;overflow-y:auto}ec-table .main-table{border-collapse:separate;border-spacing:0;font-size:.75rem;width:100%}ec-table .main-table th{border-bottom:1px solid rgba(26,26,35,.87);color:rgba(26,26,35,.66);font-weight:400;height:2rem;line-height:1rem;overflow:hidden;padding:.5rem;text-overflow:ellipsis;vertical-align:middle;white-space:nowrap}ec-table .main-table th:first-child{padding-left:1rem}ec-table .main-table th:last-child{padding-right:1rem}ec-table .main-table td{border-top:1px solid rgba(26,26,35,.18);height:2rem;line-height:1rem;overflow:hidden;padding:.5rem;text-overflow:ellipsis;vertical-align:top;white-space:nowrap}ec-table .main-table td:first-child{padding-left:1rem}ec-table .main-table td:last-child{padding-right:1rem}ec-table .main-table tbody>tr:first-child td{border-top:0}ec-table .main-table tbody>tr.is-error td{background-color:#ecc4c5}ec-table .main-table tbody>tr.is-success td{background-color:#dff0d8}ec-table .main-table tfoot td{font-weight:700}ec-table .main-table tbody>tr.is-selected,ec-table .main-table tbody>tr.is-selected>td{background-color:#dae4e9}ec-table .main-table tr.is-heading td{background-color:#ebedee;border-bottom-color:rgba(26,26,35,.09);color:rgba(26,26,35,.66)}ec-table .main-table td.actions-col,ec-table .main-table th.actions-col{padding:0}ec-table .main-table td.actions-1,ec-table .main-table th.actions-1{width:2.0625rem}ec-table .main-table td.actions-2,ec-table .main-table th.actions-2{width:4.0625rem}ec-table .main-table td.actions-3,ec-table .main-table th.actions-3{width:6.0625rem}ec-table .main-table td.actions-4,ec-table .main-table th.actions-4{width:8.0625rem}ec-table .main-table td.actions-5,ec-table .main-table th.actions-5{width:10.0625rem}ec-table.is-condensed td,ec-table.is-condensed th{height:1.5rem;padding-bottom:.25rem;padding-top:.25rem}ec-table.is-condensed:not(.has-borders)>table td{border-bottom-width:0;border-top-width:0}ec-table.is-selectable .main-table thead th{height:2.5rem}ec-table.is-selectable .main-table tbody>tr:hover>td{background-color:#bfe0e9;border-color:transparent;cursor:pointer}ec-table.is-selectable .main-table tbody>tr:hover.is-selected{background-color:#dae4e9}ec-table.is-selectable .main-table tbody>tr:hover+tr>td{border-color:#bfe0e9}ec-table .selectable-table-toolbar{align-items:center;background-color:#fff;border-bottom:1px solid rgba(26,26,35,.87);display:flex;height:2.5rem;left:calc(var(--selection-toolbar-left, 0rem) + 1.5625rem);padding:0 .5rem;position:absolute;right:0;top:0;z-index:4}ec-table.is-scrollable>.table-scroll-container>table{position:relative}ec-table.is-scrollable>.table-scroll-container>table>thead th{background-color:#fff;position:sticky!important;top:0;z-index:1}ec-table.is-scrollable>.table-scroll-container>table>tfoot td{background-color:#fff;bottom:0;position:sticky!important;z-index:1}ec-table.is-scrollable.bg-body>.table-scroll-container>table>tfoot td,ec-table.is-scrollable.bg-body>.table-scroll-container>table>thead th{background-color:#f1f3f4}ec-table.is-sortable th[data-sortfield]{-moz-user-select:none;-ms-user-select:none;-webkit-user-select:none;user-select:none}ec-table.is-sortable th[data-sortfield].is-resizable .content-wrapper{cursor:pointer;display:flex}ec-table.is-sortable th[data-sortfield].is-resizable .content{flex:0 1 auto}ec-table.is-sortable th[data-sortfield].is-resizable .content-wrapper:after{background-position:50%;background-repeat:no-repeat;content:"";display:none;flex:none;height:.875rem;margin:0 .25rem;vertical-align:top;width:.875rem}ec-table.is-sortable th[data-sortfield].is-resizable.is-sorted-asc .content-wrapper:after,ec-table.is-sortable th[data-sortfield].is-resizable.is-sorted-desc .content-wrapper:after{background-image:url(\'data:image/svg+xml;charset=utf8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 32 32"><path fill="rgba(26, 26, 35, 0.66)" d="M14 8.828V27a2 2 0 1 0 4 0V8.828l4.586 4.586a2 2 0 0 0 2.828-2.828l-8-8a2 2 0 0 0-2.828 0l-8 8a2 2 0 0 0 2.828 2.828L14 8.828z"/></svg>\');display:inline-block}ec-table.is-sortable th[data-sortfield].is-resizable.is-sorted-desc .content-wrapper:after{transform:scaleY(-1)}ec-table.is-sortable th[data-sortfield].is-resizable.text-right .content-wrapper{flex-direction:row-reverse}ec-table.is-sortable th[data-sortfield]:not(.is-resizable){cursor:pointer}ec-table.is-sortable th[data-sortfield]:not(.is-resizable):after{background-position:50%;background-repeat:no-repeat;content:"";display:none;height:.875rem;margin:0 .25rem;vertical-align:top;width:.875rem}ec-table.is-sortable th[data-sortfield]:not(.is-resizable).is-sorted-asc:after,ec-table.is-sortable th[data-sortfield]:not(.is-resizable).is-sorted-desc:after{background-image:url(\'data:image/svg+xml;charset=utf8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 32 32"><path fill="rgba(26, 26, 35, 0.66)" d="M14 8.828V27a2 2 0 1 0 4 0V8.828l4.586 4.586a2 2 0 0 0 2.828-2.828l-8-8a2 2 0 0 0-2.828 0l-8 8a2 2 0 0 0 2.828 2.828L14 8.828z"/></svg>\');display:inline-block}ec-table.is-sortable th[data-sortfield]:not(.is-resizable).is-sorted-desc:after{transform:scaleY(-1)}ec-table.is-sortable th[data-sortfield]:not(.is-resizable).text-right:after{content:"";display:none!important}ec-table.is-sortable th[data-sortfield]:not(.is-resizable).text-right:before{background-position:50%;background-repeat:no-repeat;content:"";display:none;height:.875rem;margin:0 .25rem;vertical-align:top;width:.875rem}ec-table.is-sortable th[data-sortfield]:not(.is-resizable).text-right.is-sorted-asc:before,ec-table.is-sortable th[data-sortfield]:not(.is-resizable).text-right.is-sorted-desc:before{background-image:url(\'data:image/svg+xml;charset=utf8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 32 32"><path fill="rgba(26, 26, 35, 0.66)" d="M14 8.828V27a2 2 0 1 0 4 0V8.828l4.586 4.586a2 2 0 0 0 2.828-2.828l-8-8a2 2 0 0 0-2.828 0l-8 8a2 2 0 0 0 2.828 2.828L14 8.828z"/></svg>\');display:inline-block}ec-table.is-sortable th[data-sortfield]:not(.is-resizable).text-right.is-sorted-desc:before{transform:scaleY(-1)}ec-table.is-resizable .main-table{table-layout:fixed;width:100%}ec-table.is-resizable th.is-resizable{overflow:visible;position:relative;z-index:1}ec-table.is-resizable th.is-resizable.is-active{-moz-user-select:none;-ms-user-select:none;-webkit-user-select:none;user-select:none}ec-table.is-resizable th.is-resizable.is-active .handle:after{background-color:#0084a9}ec-table.is-resizable th.is-resizable .handle{height:100%;padding:.5rem 0 .5rem 10px;position:absolute;right:-7px;right:0;top:0;width:13px;z-index:30}ec-table.is-resizable th.is-resizable .handle:after{content:"";display:block;height:100%;position:relative;transition:background-color .3s ease}ec-table.is-resizable th.is-resizable .handle:hover{cursor:col-resize}ec-table.is-resizable th.is-resizable .handle:hover:after{background-color:#0084a9}ec-table.is-resizable th.is-resizable .handle:before{background-color:#d2d7d9;bottom:.5rem;content:"";display:block;position:absolute;right:0;top:.5rem;width:1px}ec-table.is-resizable th.is-resizable .content{overflow:hidden;text-overflow:clip;white-space:nowrap}ec-table.is-resizable th.is-resizable:last-child .handle:before{display:none}ec-table.is-resizable td,ec-table.is-resizable th{overflow:hidden;text-overflow:clip;white-space:nowrap}ec-table.is-master-detail>table{table-layout:fixed}ec-table.is-form-table td{border-top:0;font-size:1rem;height:2.5rem;line-height:2rem;padding-bottom:.25rem;padding-top:.25rem}ec-table.is-form-table tr:first-child td{height:2.75rem;padding-top:.5rem}ec-table.is-form-table tr:last-child td{height:2.75rem;padding-bottom:.5rem}ec-table.is-fixed .main-table{table-layout:fixed}']}]}],E.ctorParameters=function(){return[{type:o.Renderer2},{type:o.ElementRef}]},E.propDecorators={id:[{type:o.HostBinding,args:["attr.id"]},{type:o.Input}],scrollable:[{type:o.HostBinding,args:["class.is-scrollable"]},{type:o.Input}],resizable:[{type:o.HostBinding,args:["class.is-resizable"]},{type:o.Input}],condensed:[{type:o.HostBinding,args:["class.is-condensed"]},{type:o.Input}],sortable:[{type:o.HostBinding,args:["class.is-sortable"]},{type:o.Input}],selectionContext:[{type:o.Input}],selectionToolbarTemplate:[{type:o.Input}],selectable:[{type:o.HostBinding,args:["class.is-selectable"]},{type:o.Input}],isForm:[{type:o.HostBinding,args:["class.is-form-table"]},{type:o.Input}],sort:[{type:o.Input}],sortChange:[{type:o.Output}],hasMasterDetailRows:[{type:o.HostBinding,args:["class.is-master-detail"]}],masterRows:[{type:o.ContentChildren,args:[D,{descendants:!0}]}],_resizableColumns:[{type:o.ContentChildren,args:[T,{descendants:!0}]}],searchableTableResizableColumns:[{type:o.Input,args:["resizableColumns"]}]};var O=function(){function e(){this.hidden=!1,this.id="",this.type="warning",this.bannerStyle="pinned",this.showCloseBtn=!1,this.autoHideOnClose=!0,this.closed=new o.EventEmitter,this.icon=""}return e.prototype.ngOnChanges=function(){this.customIcon?this.icon=this.customIcon:this.getIconByBannerType()},e.prototype.close=function(){this.autoHideOnClose&&(this.hidden=!0),this.closed.emit()},e.prototype.getIconByBannerType=function(){"info"===this.type?this.icon="icon-info-circle":"warning"===this.type?this.icon="icon-warning":"error"===this.type?this.icon="icon-error":"success"===this.type&&(this.icon="icon-check-circle")},e}();O.decorators=[{type:o.Component,args:[{selector:"ec-banner",template:'<div class="banner {{type}} {{bannerStyle}}">\r\n <ec-button id="banner{{id}}_close"\r\n *ngIf="showCloseBtn"\r\n type="icon"\r\n icon="ec-icon-sm icon-cancel"\r\n (clicked)="close()">\r\n </ec-button>\r\n <div class="banner-content d-flex text-body-1 font-color-secondary">\r\n <i class="ec-icon {{icon}}"></i>\r\n <div class="ml-2">\r\n <p class="title mb-0" *ngIf="title">\r\n {{title}}\r\n </p>\r\n <p class="text mb-0" *ngIf="text">{{text}}</p>\r\n \r\n <ul class="list mb-0" *ngIf="list?.length">\r\n <li *ngFor="let item of list">{{item}}</li>\r\n </ul>\r\n <ng-content></ng-content>\r\n </div>\r\n </div>\r\n\r\n</div>\r\n',styles:["@-webkit-keyframes spin{0%{transform:rotate(0)}to{transform:rotate(1turn)}}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(1turn)}}:host{display:flex}:host(.border-bottom-0) .banner{border-bottom:0}.banner{display:flex;flex:1 1;flex-direction:column;min-height:2.5rem;overflow-y:auto;position:relative}.banner-content{flex:none;margin:auto 0;padding:.5rem 1rem}.banner-content ::ng-deep p{line-height:inherit}.ec-icon{font-size:1.125rem}ec-button{position:absolute;right:.25rem;top:.25rem}ec-button+.banner-content{padding-right:2.75rem}.title{font-weight:700}.list{margin:0;padding-left:2em}.text+.list{margin-top:1em}.info{background-color:#dae4e9}.info .banner-content>.ec-icon{color:#2d9ab8}.warning{background-color:#fff8cc}.warning .banner-content>.ec-icon{color:#fa7b2e}.success{background-color:#dff0d8}.success .banner-content>.ec-icon{color:#3c763d}.error{background-color:#ecc4c5}.error .banner-content>.ec-icon{color:#cd1d20}.pinned{border-bottom:1px solid rgba(26,26,35,.08)}.toast{border:1px solid rgba(26,26,35,.08);box-shadow:0 .125rem .625rem 0 rgba(26,26,35,.18)}.toast ec-button{right:.1875rem;top:.1875rem}"]}]}],O.propDecorators={hidden:[{type:o.HostBinding,args:["hidden"]},{type:o.Input}],id:[{type:o.Input}],type:[{type:o.Input}],bannerStyle:[{type:o.Input}],title:[{type:o.Input}],text:[{type:o.Input}],list:[{type:o.Input}],showCloseBtn:[{type:o.Input}],autoHideOnClose:[{type:o.Input}],customIcon:[{type:o.Input}],closed:[{type:o.Output}]};var P=function(){function e(){this.disabled=!1,this.tabindex=0,this.type="common",this.pending=!1,this.pendingIcon="icon-loading",this.isSubmit=!1,this.autofocus=!1,this.clicked=new o.EventEmitter}return e.prototype.ngOnInit=function(){if(!this.label&&!this.icon&&!this.customTemplate)throw new Error("ButtonComponent requires an icon, a label, or both")},e.prototype.ngAfterViewInit=function(){this.autofocus&&this.focus()},e.prototype.onClick=function(e){this.pending||this.disabled?e.stopImmediatePropagation():this.clicked.emit(e)},e.prototype.focus=function(){this.buttonElement.nativeElement.focus()},e}();P.decorators=[{type:o.Component,args:[{selector:"ec-button",template:'<button id="{{id}}_button"\r\n class="ec-button-{{customTemplate ? \'custom\' : type}}"\r\n [class.has-badge]="badge !== undefined"\r\n tabindex="{{tabindex}}"\r\n [type]="type === \'submit\' || isSubmit ? \'submit\' : \'button\'"\r\n [disabled]="disabled"\r\n (click)="onClick($event)"\r\n #element\r\n [attr.cdkFocusInitial]="autofocus || null">\r\n <ng-container *ngIf="customTemplate; else defaultTemplate">\r\n <ng-container *ngTemplateOutlet="customTemplate"></ng-container>\r\n </ng-container>\r\n</button>\r\n\r\n<ng-template #defaultTemplate>\r\n \x3c!-- Hidden when the button is not pending --\x3e\r\n <div class="pending-container" *ngIf="pending">\r\n <i class="ec-icon {{pendingIcon}}" id="{{id}}_pending"></i>\r\n </div>\r\n\r\n <i class="ec-icon {{icon}}" id="{{id}}_icon" *ngIf="icon"></i>\r\n\r\n <ng-container *ngIf="label">\r\n <span id="{{id}}_label" class="label">{{label | translate}}</span>\r\n </ng-container>\r\n\r\n <ng-container *ngIf="badge !== undefined">\r\n <span id="{{id}}_badge" class="badge">{{badge}}</span>\r\n </ng-container>\r\n</ng-template>',styles:["@-webkit-keyframes spin{0%{transform:rotate(0)}to{transform:rotate(1turn)}}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(1turn)}}:host{-webkit-appearance:none;color:#1a1a23;display:inline-block;font-family:Roboto,-apple-system,BlinkMacSystemFont,Segoe UI,Oxygen,Ubuntu,Fira Sans,Droid Sans,Helvetica Neue,sans-serif;font-size:.875rem;margin:0;padding:0;vertical-align:top}:host(.font-size-inherit),:host(.font-size-inherit) button{font-size:inherit}:host(.text-left) button{justify-content:flex-start}:host(.text-right) button{justify-content:flex-end}:host(.active) .ec-button-custom,:host(.active) .ec-button-danger-text,:host(.active) .ec-button-icon,:host(.active) .ec-button-link,:host(.active) .ec-button-secondary,:host(.active) .ec-button-text{background-color:#bfe0e9}:host(.active) button:focus{border-color:transparent;box-shadow:none}:host(.active) .ec-button-secondary:focus{border-color:#d2d7d9}:host(.d-block) button{width:100%}:host(.border-0) button:not(:focus){border-color:transparent}:host(.is-action-icon) .ec-button-icon{color:#0084a9}:host(.is-success) .ec-button-icon,:host(.is-success) .ec-button-secondary,:host(.is-success) .ec-button-text{color:#3c763d}:host(.is-error) .ec-button-icon,:host(.is-error) .ec-button-secondary,:host(.is-error) .ec-button-text{color:#cd1d20}:host-context(.btn-stack) button{height:1rem}:host-context(.btn-stack) .ec-icon{height:.625rem;width:.625rem}:host-context(.btn-group) button:focus{position:relative;z-index:1}.ec-button-primary,.ec-button-submit{background-color:#cfd856;border-color:#c1cd23;color:#1a1a23}.ec-button-primary:active:enabled,.ec-button-submit:active:enabled{background-color:#c1cd23;color:#1a1a23}.ec-button-secondary{border-color:#d2d7d9}.ec-button-secondary,.ec-button-secondary:active:enabled{background-color:#fff;color:#1a1a23}.ec-button-common{background-color:#2d9ab8;border-color:#0084a9;color:#fff}.ec-button-common .ec-icon{color:inherit}.ec-button-common:active:enabled{background-color:#0084a9;border-color:#005f7a}.ec-button-icon{background-color:transparent;color:rgba(26,26,35,.66);padding:0;width:2rem}.ec-button-icon .ec-icon{height:1.1428571429em;margin:0;padding:0}.ec-button-icon:hover{background-color:#bfe0e9}.ec-button-icon:disabled{background-color:transparent;border-color:transparent}.ec-button-icon:disabled .ec-icon{opacity:.5}.ec-button-icon.has-badge{min-width:2rem;padding-left:.375rem;padding-right:0;width:auto}.ec-button-icon .badge{margin-left:-.5rem}.ec-button-text{background-color:transparent;color:#1a1a23}.ec-button-text .ec-icon{color:rgba(26,26,35,.66)}.ec-button-text:active:enabled{background-color:transparent;color:#000}.ec-button-text:disabled{background-color:transparent;border-color:transparent}.ec-button-link{background-color:transparent;color:#0084a9}.ec-button-link .ec-icon{color:inherit}.ec-button-link:active:enabled{background-color:transparent;color:#00485d}.ec-button-link:disabled{background-color:transparent;border-color:transparent}.ec-button-danger{background-color:#e64c4d;border-color:#e33436;color:#fff}.ec-button-danger .ec-icon{color:inherit}.ec-button-danger:active:enabled{background-color:#e33436}.ec-button-danger-text{background-color:transparent;color:#e33436}.ec-button-danger-text .ec-icon{color:inherit}.ec-button-danger-text:active:enabled{background-color:transparent;color:#b2191a}.ec-button-danger-text:disabled{background-color:transparent;border-color:transparent}.ec-button-custom{background-color:transparent;height:auto;padding:0}.ec-button-custom:disabled{background-color:transparent;border:0}button{align-items:center;background-color:#fff;border:.0625rem solid transparent;border-radius:0;cursor:pointer;display:flex;font-size:.875rem;height:2rem;justify-content:center;line-height:1.25;line-height:1.25rem;padding:.3571428571em .5714285714em;position:relative}button.is-highlighted,button.is-selected{background-color:#d9edf2}button:focus{border-color:#0084a9;box-shadow:0 0 0 1px #0084a9;outline:none}button:active{background-color:#0084a9;color:#fff}button.is-disabled,button:disabled{background-color:rgba(26,26,35,.1);border-color:#d2d7d9;color:rgba(26,26,35,.66);cursor:default;opacity:.65}button .label{align-items:center;display:flex;flex:auto}button .ec-icon{flex:0 0 auto}button .ec-icon+.label{margin:0 .375rem}button .label{justify-content:center;white-space:nowrap}button .ec-icon+.label{flex:none;margin-left:.25rem}button.has-badge{padding-right:.0625rem}:host(.textbox-group-btn-right){position:relative}:host(.textbox-group-btn-right) button{border-bottom-left-radius:0;border-top-left-radius:0;margin-left:-1px;padding-left:.4375rem;padding-right:.4375rem}.badge{background-color:#7e579b;border:.125rem solid #fff;border-radius:.5625rem;color:#fff;display:inline-block;font-size:.625rem;font-weight:700;line-height:.875rem;margin-left:-.25rem;margin-top:-.75rem;min-width:1rem;padding:0 .25rem;text-align:center;vertical-align:baseline;white-space:nowrap}:host(.is-tab) button{align-items:center;border:1px solid transparent;border-radius:0;color:rgba(26,26,35,.66);cursor:pointer;display:flex;font-size:.75rem;height:1.5rem;justify-content:center;min-width:1.5rem;padding-left:.5rem;padding-right:.5rem}:host(.is-tab) button:hover{color:#354751}:host(.is-tab) button.active{background-color:#d2d7d9;color:#354751}:host(.is-tab) button:focus{outline:none}:host(.is-tab) button:focus:not(.active):not(.is-disabled){border-color:#0084a9;box-shadow:0 0 0 1px #0084a9;box-shadow:none}:host(.is-tab) button.is-disabled{color:rgba(26,26,35,.38);cursor:default}:host(.is-tab) button.ec-button-icon{justify-content:center;padding:0;width:auto}:host(.is-tab) button:hover{background-color:transparent}:host(.is-tab).active button{background-color:#d2d7d9;color:#354751}.pending-container{align-items:center;bottom:0;display:flex;justify-content:center;left:0;position:absolute;right:0;top:0;z-index:1}.pending-container>.ec-icon{color:inherit;flex:none}.pending-container~.badge,.pending-container~.ec-icon,.pending-container~.label{opacity:0}"]}]}],P.ctorParameters=function(){return[]},P.propDecorators={id:[{type:o.HostBinding,args:["attr.id"]},{type:o.Input}],disabled:[{type:o.Input}],icon:[{type:o.Input}],label:[{type:o.Input}],badge:[{type:o.Input}],tabindex:[{type:o.Input}],type:[{type:o.Input}],pending:[{type:o.Input}],pendingIcon:[{type:o.Input}],customTemplate:[{type:o.Input}],isSubmit:[{type:o.Input}],autofocus:[{type:o.Input}],clicked:[{type:o.Output}],buttonElement:[{type:o.ViewChild,args:["element",{static:!0}]}]};var V=function(){function e(){}return e.isEndOfTime=function(e){var t=this.endOfTime;return this.isSameDay(e,t)},e.isSameDay=function(e,t){return f.default(e).isSame(f.default(t),"day")},e.getParseFormats=function(e){var t={"MM/DD/YYYY":this.monthFirstParseFormats,"MM-DD-YYYY":this.monthFirstParseFormats,"DD/MM/YYYY":this.dateFirstParseFormats,"DD-MM-YYYY":this.dateFirstParseFormats,"YYYY/MM/DD":this.monthFirstParseFormats,"YYYY-MM-DD":this.monthFirstParseFormats};return e?t[e]:this.monthFirstParseFormats},e.getAccountMeterStartDate=function(t,o){var n=t.effectiveFrom||o.startDate;return n?new Date(n):e.defaultAccountMeterEffectiveDate},e.getAccountMeterEndDate=function(t,o){var n=t.effectiveTo||o.endDate;return n&&!e.isEndOfTime(n)?new Date(n):null},e.isDateBetween=function(e,t,o,n,r){var i="()";return n&&r?i="[]":n?i="[)":r&&(i="(]"),t=t||this.beginningOfTime,o=o||this.endOfTime,f.default(e).isBetween(t,o,"day",i)},e.stringToDate=function(e){return null==e?e:f.default(e).toDate()},e}();V.beginningOfTime=new Date(1899,11,31),V.endOfTime=new Date(3e3,0,1),V.defaultAccountMeterEffectiveDate=new Date(2010,0,1),V.defaultAccountServiceEffectiveDate=new Date(2010,0,1),V.minDatePickerDate=new Date(1980,0,1),V.maxDatePickerDate=new Date(3e3,0,1,23,59,59),V.defaultDateFormat="yyyy-MM-dd",V.defaultTimeFormat="HH:mm:ss",V.defaultTimestampFormat=V.defaultDateFormat+" "+V.defaultTimeFormat,V.billImportFormatDateFormats=[{label:"mm/dd/yyyy",value:"mm/dd/yyyy"},{label:"Month dd yyyy",value:"Month dd yyyy"},{label:"dd/mm/yyyy",value:"dd/mm/yyyy"},{label:"dd Month yyyy",value:"dd Month yyyy"},{label:"yyyymmdd",value:"yyyymmdd"}],V.monthFirstParseFormats=["yyyy/MM/dd","MM/dd/yyyy","MMddyyyy","MM/dd/yy","MMddyy","MM/dd","yyyy.MM.dd","MM.dd.yyyy","MM.dd.yy","MM.dd","yyyy-MM-dd","MM-dd-yyyy","MM-dd-yy","MM-dd","yyyyMMdd"],V.dateFirstParseFormats=["yyyy/dd/MM","dd/MM/yyyy","ddMMyyyy","dd/MM/yy","ddMMyy","dd/MM","yyyy.dd.MM","dd.MM.yyyy","dd.MM.yy","dd.MM","yyyy-dd-MM","dd-MM-yyyy","dd-MM-yy","dd-MM","yyyyDDmm"],V.timeFormat="HH:mm:ss";var z=function(){function e(){}return e.prototype.getPreferences=function(){return l.of({preference:{dateFormat:"MM/DD/YYYY",timeFormat:"h:mm:ss a"}})},e}();z.ɵprov=o.ɵɵdefineInjectable({factory:function(){return new z},token:z,providedIn:"root"}),z.decorators=[{type:o.Injectable,args:[{providedIn:"root"}]}];var A=function(){function e(e){this.userPreferenceService=e,this.lastFormatString="MM/DD/YYYY"}return e.prototype.transform=function(e,t,o,n){var r=this,i="",a="";return e&&f.default(e).isValid()&&(t||!V.isEndOfTime(e))&&(this.userPreferenceService.getPreferences().subscribe((function(e){if(e.preference){if(a=e.preference.dateFormat,o){var t=e.preference.timeFormat;n||(t=t.replace(":ss","")),a+=" "+t}r.lastFormatString=a}})),i=f.default(e).format(this.lastFormatString)),i},e}();A.decorators=[{type:o.Pipe,args:[{name:"dateDisplay"}]}],A.ctorParameters=function(){return[{type:z}]};var F=function(){function e(e,t){this.translate=e,this.dateDisplayPipe=t}return e.prototype.getErrorMessages=function(e){var t=new Array;if(null!==e){for(var o in e){var n=e[o];switch(o){case"email":t.push(this.translate.get("InvalidEmailValidationMessage_LC"));break;case"required":t.push(this.translate.get("is required"));break;case"requiredPlural":t.push(this.translate.get("RequiredPluralValidationMessage_LC"));break;case"minlength":t.push(this.translate.get("MinLengthValidationMessage_LC",{minLength:n.requiredLength}));break;case"maxlength":t.push(this.translate.get("MaxLengthValidationMessage",{maxLength:n.requiredLength}));break;case"pattern":t.push(this.translate.get("IncorrectFormat_LC"));break;case"min":t.push(this.translate.get("MinValueValidationMessage_LC",{minValue:n.min}));break;case"max":t.push(this.translate.get("MaxValueValidationMessage_LC",{maxValue:n.max}));break;case"zipCodeInvalidFormat":t.push(this.translate.get("must be 5–9 numbers"));break;case"postalCodeInvalidFormat":t.push(this.translate.get("must be 6 characters, alternating letters and numbers"));break;case"zipCodeNotFound":t.push(this.translate.get("ZipCodeNotFoundValidationMessage_LC"));break;case"numericbox":t.push(this.getNumericBoxValidationMessages(n));break;case"addnew":t.push(this.translate.get("CouldNotBeAddedValidationMessage_LC"));break;case"minError":case"minDate":var r=this.dateDisplayPipe.transform(n.minValue);t.push(this.translate.get("MinValueValidationMessage_LC",{minValue:r}));break;case"maxError":case"maxDate":r=this.dateDisplayPipe.transform(n.maxValue,!0);t.push(this.translate.get("MaxValueValidationMessage_LC",{maxValue:r}));break;case"dateRange":t.push(this.translate.get("DateRangeValidationMessage_LC"));break;case"password":t.push(this.translate.get("PasswordValidationMessage_LC"));break;case"textbox":t.push(this.getTextBoxValidationMessages(n));break;case"notUnique":t.push(this.translate.get("MustBeUnique_LC"));break;case"json":t.push(this.translate.get("JsonValidationMessage_SC"));break;case"passwordInvalid":t.push(this.translate.get("PasswordInvalidValidationMessage_LC"))}}if(t.length>0)return l.forkJoin(t).toPromise()}return Promise.resolve(new Array)},e.prototype.getNumericBoxValidationMessages=function(e){var t={},o="Integer";return e.decimals&&(t.precision=e.decimals,o="Decimal"),void 0!==e.min&&void 0!==e.max?(t.minValue=e.min,t.maxValue=e.max,this.translate.get(o+"BetweenValidationMessage_LC",t)):void 0!==e.min?(t.minValue=e.min,this.translate.get(o+"MinValidationMessage_LC",t)):void 0!==e.max?(t.maxValue=e.max,this.translate.get(o+"MaxValidationMessage_LC",t)):e.maxPrecisionDigits?(t.maxPrecisionDigits=e.maxPrecisionDigits,this.translate.get("MaxPrecisionDigitsValidationMessage_LC",t)):e.decimals?this.translate.get("DecimalValidationMessage_LC",t):this.translate.get("IncorrectFormat_LC")},e.prototype.getTextBoxValidationMessages=function(e){return e.unique?this.translate.get("TextboxRequiredAndUnique_LC",{minLength:e.minLength,maxLength:e.maxLength}):this.translate.get("TextboxRequired_LC",{minLength:e.minLength,maxLength:e.maxLength})},e}();F.ɵprov=o.ɵɵdefineInjectable({factory:function(){return new F(o.ɵɵinject(i.TranslateService),o.ɵɵinject(A))},token:F,providedIn:"root"}),F.decorators=[{type:o.Injectable,args:[{providedIn:"root"}]}],F.ctorParameters=function(){return[{type:i.TranslateService},{type:A}]};var R=function(){function e(){}return e.prototype.patchValueSafely=function(e,t){var o={};Object.keys(t).forEach((function(e){var n=t[e];null!=n&&(o[e]=n)})),e.patchValue(o)},e.prototype.getInputId=function(e){return e+"_input"},e.prototype.setRequiredFn=function(e,t,o){return void 0===t&&(t=[]),void 0===o&&(o=!1),function(r){var i=k(t);(r||!o&&0===r)&&i.push(n.Validators.required),i.length>0?e.setValidators(i):e.clearValidators(),e.updateValueAndValidity({emitEvent:!1})}},e}();R.ɵprov=o.ɵɵdefineInjectable({factory:function(){return new R},token:R,providedIn:"root"}),R.decorators=[{type:o.Injectable,args:[{providedIn:"root"}]}];var L=function(){function e(e,t){this.validationMessageService=e,this.formGroupHelper=t,this.autofocus=!1,this.labelPosition="top",this.id="",this.pending=!1,this.required=!1,this.tabindex=0,this.validationErrors="",this.inputId="",this.componentDestroyed=new l.Subject}return e.prototype.ngOnChanges=function(e){e.readonly&&void 0!==e.readonly.currentValue&&(!0===e.readonly.currentValue?this.formModel.disable():!1===e.readonly.currentValue&&this.formModel.enable()),e.id&&void 0!==e.id.currentValue&&(this.inputId=this.formGroupHelper.getInputId(this.id))},e.prototype.ngOnInit=function(){var e=this;this.inputId=this.formGroupHelper.getInputId(this.id),this.formModel.statusChanges.pipe(c.takeUntil(this.componentDestroyed)).subscribe((function(t){e.translateValidationMessages(t)})),this.translateValidationMessages()},e.prototype.ngOnDestroy=function(){this.componentDestroyed.next(),this.componentDestroyed.unsubscribe()},e.prototype.translateValidationMessages=function(e){return x(this,void 0,void 0,(function(){var e,t;return w(this,(function(o){switch(o.label){case 0:return this.formModel?(e=this.formModel,this.validationErrors="",e.valid?[3,2]:[4,this.validationMessageService.getErrorMessages(e.errors)]):[2];case 1:(t=o.sent())&&(this.validationErrors=t.join("; ")),o.label=2;case 2:return[2]}}))}))},e}();L.decorators=[{type:o.Directive}],L.ctorParameters=function(){return[{type:F},{type:R}]},L.propDecorators={autofocus:[{type:o.Input}],formModel:[{type:o.Input}],label:[{type:o.Input}],labelPosition:[{type:o.Input}],id:[{type:o.Input}],pending:[{type:o.Input}],required:[{type:o.Input}],tabindex:[{type:o.Input}],readonly:[{type:o.Input}],tooltip:[{type:o.Input}]};var N=function(){function e(e,t,n,r){this.templateRef=e,this.viewContainer=t,this.document=n,this.renderer=r,this.popperStatusChange=new o.EventEmitter}return e.prototype.ngOnInit=function(){this.templateViewRef=this.viewContainer.createEmbeddedView(this.templateRef)},e.prototype.ngOnDestroy=function(){this.hide()},e.prototype.show=function(){var t=this;if(e.GlobalPopupRef&&e.GlobalPopupRef!=this&&(e.GlobalPopupRef.hide(),e.GlobalPopupRef=void 0),this.globalCloseSubscription||(this.globalCloseSubscription=l.fromEvent(this.document.body,"click").subscribe((function(e){t.hide()}))),!this.popperRef){this.popupViewRef=this.viewContainer.createEmbeddedView(this.popup);var o=this.popupViewRef.rootNodes.find((function(e){return"#text"!==e.nodeName}));this.popperRef=new b.default(this.templateViewRef.rootNodes[0],o,this.popperOptions),e.GlobalPopupRef=this,this.popperStatusChange.emit("visible")}},e.prototype.hide=function(){this.globalCloseSubscription&&(this.globalCloseSubscription.unsubscribe(),this.globalCloseSubscription=void 0),this.popperRef&&this.popupViewRef&&(this.popupViewRef.destroy(),this.popperRef.destroy(),this.popperRef=void 0,this.popperStatusChange.emit("hidden"))},e.prototype.update=function(){this.popperRef&&this.popperRef.update()},e.prototype.fixPosition=function(e,t){if(void 0===t&&(t=!1),this.popperRef&&this.popperRef.reference&&this.popperRef.popper){var o=this.popperRef.popper;if(this.renderer.removeStyle(o,"width"),this.renderer.setStyle(o,"position","fixed"),t){var n=this.document.querySelector("body");this.renderer.parentNode(o)!==n&&this.renderer.appendChild(n,o)}var r=this.popperRef.reference,i=o.offsetWidth,a=o.getBoundingClientRect(),s=a.left,l=r.getBoundingClientRect(),c=l.bottom;this.popperOptions&&this.popperOptions.placement&&(s="bottom-start"===this.popperOptions.placement||"top-start"===this.popperOptions.placement?l.left:l.right-(e||i>l.width?i:l.width)),a.height+c+10>window.innerHeight&&(c=l.top-a.height),this.renderer.setStyle(o,"transform","none"),this.renderer.setStyle(o,"left",s+"px"),this.renderer.setStyle(o,"top",c+"px"),this.renderer.setStyle(o,"width",i+"px"),e||this.renderer.setStyle(o,"min-width",l.width+"px")}},e}();N.GlobalPopupRef=void 0,N.decorators=[{type:o.Directive,args:[{selector:"[ecPopup]"}]}],N.ctorParameters=function(){return[{type:o.TemplateRef},{type:o.ViewContainerRef},{type:void 0,decorators:[{type:o.Inject,args:[t.DOCUMENT]}]},{type:o.Renderer2}]},N.propDecorators={popup:[{type:o.Input,args:["ecPopup"]}],popperOptions:[{type:o.Input,args:["options"]}]};var _=function(){function e(){}return e.prototype.scrollToItem=function(e,t,o){void 0===o&&(o=32);var n=document.querySelector(e);if(n){var r=n.querySelector(t);if(r){var i=r.getBoundingClientRect(),a=n.getBoundingClientRect();(i.bottom>a.bottom||i.top<a.top)&&(n.scrollTop=i.top-a.top+n.scrollTop-o)}}},e.prototype.getCurrentScrollPosition=function(e){var t=document.querySelector(e);return t?t.scrollTop:(console.error("Scroll container '"+e+"' does not exist."),0)},e.prototype.scrollToPosition=function(e,t){var o=document.querySelector(e);o?o.scrollTop=t:console.error("Scroll container '"+e+"' does not exist.")},e.prototype.scrollItemCentered=function(e,t){try{var o=document.querySelector(e);if(o){var n=o.getBoundingClientRect().height;this.scrollToItem(e,t,.5*n)}}catch(o){console.error("Error scrolling target into view. Container selector: "+e+". Target selector: "+t,o)}},e}();_.ɵprov=o.ɵɵdefineInjectable({factory:function(){return new _},token:_,providedIn:"root"}),_.decorators=[{type:o.Injectable,args:[{providedIn:"root"}]}],_.ctorParameters=function(){return[]};var B=function(e){function t(t,r,i,a){var s=e.call(this,t,r)||this;return s.validationMessageService=t,s.formGroupHelper=r,s.translate=i,s.scrollService=a,s.menuPosition="bottom_right",s.options=[],s.templateType="label",s.popupFixed=!0,s.upperCase=!1,s.placeholder="",s.hideToggleButton=!1,s.alwaysOpen=!1,s.menuElementClasses=[],s.textboxElementClasses=[],s.hideNoMatches=!1,s.noMatchesText="NoMatches_SC",s.addNewClick=new o.EventEmitter,s.search=new o.EventEmitter,s.filteredOptions=[],s.menuStatus="hidden",s.effectivePlaceholder="",s.selectedItem=null,s.textboxFormModel=new n.FormControl(""),s.addNewSelected=!1,s.foundMatch=!1,s.selectedItemIndex=-1,s.chooseOrAddPlaceholder="",s.choosePlaceholder="",s.hasDataBeenLoadedOnOpen=!1,s}return v(t,e),t.prototype.onResize=function(){this.popup&&this.popup.hide()},t.prototype.ngOnChanges=function(t){e.prototype.ngOnChanges.call(this,t),t.options&&(this.resetOptions(),this.popup&&this.popup.update()),(t.required||t.minlength||t.maxlength)&&this.setTextboxFormModelValidators(),(t.addNew&&!t.addNew.isFirstChange()||t.placeholder)&&this.updatePlaceholderText()},t.prototype.ngOnInit=function(){var t=this;e.prototype.ngOnInit.call(this),this.alwaysOpen&&(this.hideToggleButton=!0,this.menuStatus="visible"),this.chooseOrAddPlaceholder=this.translate.instant("Choose or add")+"...",this.choosePlaceholder=""+this.translate.instant("Choose"),this.formModelChanged(this.formModel.value),this.setTextboxFormModelValidators(),this.formModel.valueChanges.pipe(c.takeUntil(this.componentDestroyed)).subscribe((function(e){return t.formModelChanged(e)})),this.textboxFormModel.statusChanges.pipe(c.takeUntil(this.componentDestroyed)).subscribe((function(e){return t.setFormModelValidationErrors(e)})),this.updatePlaceholderText()},t.prototype.ngAfterViewInit=function(){var e=this;if(this.popup){var t={modifiers:{preventOverflow:{boundariesElement:"viewport"}}};switch(this.menuPosition){case"top_left":t.placement="top-start";break;case"top_right":t.placement="top-end";break;case"bottom_left":t.placement="bottom-start";break;case"bottom_right":t.placement="bottom-end";break;default:throw new Error("Invalid menuPosition for ComboboxComponent.")}t.onCreate=function(){e.scrollMenu(),e.popupFixed&&e.popup.fixPosition()},this.popupFixed&&(t.onUpdate=function(){e.popup.fixPosition()}),this.popup.popperOptions=t,this.popup.popperStatusChange.pipe(c.takeUntil(this.componentDestroyed)).subscribe((function(t){e.menuStatus=t,"hidden"===t&&(e.syncModelValues(),e.resetOptions())}))}},t.prototype.setErrors=function(e){this.textboxFormModel.setErrors(e),this.formModel.markAsTouched()},t.prototype.resetOptions=function(e){this.filteredOptions=e||this.options,""!==this.textboxFormModel.value?(this.selectedItemIndex=this.findDefaultSelectionIndex(this.filteredOptions,this.textboxFormModel.value),this.selectedItem=this.filteredOptions[this.selectedItemIndex]||null,this.scrollMenu(this.selectedItemIndex)):this.clearSelectedItem()},t.prototype.selectedChanged=function(e){this.setFormModelValue(e),this.toggleMenu()},t.prototype.toggleMenu=function(e){var t=this;this.popup&&(e&&e.stopPropagation(),this.formModel.disabled||("visible"===this.menuStatus?this.popup.hide():this.loadOnOpenObservable&&!this.hasDataBeenLoadedOnOpen?(this.pending=!0,this.loadOnOpenObservable.pipe(c.take(1)).subscribe((function(e){t.hasDataBeenLoadedOnOpen=!0,t.pending=!1,t.options=e,t.resetOptions(),t.popup.show()}))):this.popup.show()))},t.prototype.onBlur=function(){this.formModel.markAsTouched()},t.prototype.keyNavigate=function(e){switch(e.key){case"ArrowDown":case"Down":case"ArrowUp":case"Up":e.stopPropagation(),e.preventDefault(),this.onArrowDownUp(e);break;case"Backspace":case"Delete":case"Del":"hidden"===this.menuStatus&&this.toggleMenu();break;case"Tab":"visible"===this.menuStatus&&(this.addNewSelected&&e.preventDefault(),this.commitSelection(e));break;case"Enter":e.preventDefault(),"visible"===this.menuStatus&&this.commitSelection(e);break;case"Escape":case"Esc":"visible"===this.menuStatus&&(e.preventDefault(),this.toggleMenu());break;case" ":case"Spacebar":"hidden"===this.menuStatus&&(e.preventDefault(),this.toggleMenu());break;default:"hidden"===this.menuStatus&&"Shift"!==e.key&&this.toggleMenu()}},t.prototype.addNewItem=function(e){return x(this,void 0,void 0,(function(){return w(this,(function(t){switch(t.label){case 0:this.pending=!0,t.label=1;case 1:return t.trys.push([1,3,,4]),[4,e()];case 2:return t.sent(),[3,4];case 3:return t.sent(),this.setErrors({addnew:!0}),[3,4];case 4:return this.pending=!1,this.toggleMenu(),[2]}}))}))},t.prototype.commitSelection=function(e){this.addNewSelected?(e.stopPropagation(),this.onAddNew(e)):(this.setFormModelValue(this.selectedItem),this.toggleMenu())},t.prototype.onAddNew=function(e){e.stopPropagation(),this.addNewSelected=!1,this.addNewClick.emit(this.textboxFormModel.value)},t.prototype.onArrowDownUp=function(e){switch(e.key){case"ArrowDown":case"Down":-1!==this.selectedItemIndex||!this.addNewButton||this.addNewButton.nativeElement.hidden||this.addNewSelected?this.selectedItemIndex<this.filteredOptions.length-1&&(this.addNewSelected&&(this.addNewSelected=!1),this.selectedItemIndex==this.filteredOptions.length-2&&"heading"===this.filteredOptions[this.selectedItemIndex+1].display||(this.selectedItemIndex++,this.selectedItemIndex<this.filteredOptions.length-1&&"heading"===this.filteredOptions[this.selectedItemIndex].display&&this.selectedItemIndex++)):this.addNewSelected=!0;break;case"ArrowUp":case"Up":-1===this.selectedItemIndex&&this.addNewButton&&!this.addNewButton.nativeElement.hidden&&this.addNewSelected?this.addNewSelected=!1:this.selectedItemIndex>-1&&(0===this.selectedItemIndex&&this.addNewButton&&!this.addNewButton.nativeElement.hidden&&(this.addNewSelected=!0),this.selectedItemIndex--,this.selectedItemIndex>-1&&"heading"===this.filteredOptions[this.selectedItemIndex].display&&(this.selectedItemIndex--,-1==this.selectedItemIndex&&(this.addNewButton&&!this.addNewButton.nativeElement.hidden?this.addNewSelected=!0:this.selectedItemIndex=1)));break;default:return}this.selectedItem=this.filteredOptions[this.selectedItemIndex],"hidden"===this.menuStatus?this.setFormModelValue(this.selectedItem):this.scrollMenu()},t.prototype.filterOptionsArray=function(e){var t=e.toLowerCase();return e&&""!==e?this.options.filter((function(e){return e.label.toLowerCase().indexOf(t)>=0})):this.options},t.prototype.findSelectedItemIndex=function(e){var t=e||this.selectedItem;return t?this.filteredOptions.findIndex((function(e){return e.id&&t.id?e.label===t.label&&e.id===t.id:e.label===t.label})):-1},t.prototype.formModelChanged=function(e){this.synchronizeDisabledAttributes(),e?(this.textboxFormModel.setValue(e.label),this.selectedItemIndex=this.findSelectedItemIndex(e),this.selectedItemIndex>=0&&(this.selectedItem=this.filteredOptions[this.selectedItemIndex])):(this.textboxFormModel.reset(),this.clearSelectedItem())},t.prototype.scrollMenu=function(e){var t=this;if(this.filteredOptions.length>0)if(this.selectedItemIndex=void 0===e?this.findSelectedItemIndex():e,this.selectedItemIndex>-1&&this.selectedItem){var o=this.selectedItem.id?"#"+this.selectedItem.id:"#"+this.id+"_menu_item"+this.selectedItemIndex;setTimeout((function(){t.scrollService.scrollItemCentered("#"+t.id+"_menu_list",o)}),0)}else this.selectedItem=null},t.prototype.searchAndFilter=function(e){this.search.emit(e),0===this.search.observers.length&&void 0!==e&&(this.resetOptions(this.filterOptionsArray(e)),this.addNewSelected&&!this.addNewButton&&(this.addNewSelected=!1))},t.prototype.setFormModelValidationErrors=function(e){this.textboxFormModel.invalid?this.formModel.setErrors(this.textboxFormModel.errors):this.formModel.setErrors(null)},t.prototype.setFormModelValue=function(e){this.textboxFormModel.setValue(e?e.label:""),this.formModel.setValue(e)},t.prototype.setTextboxFormModelValidators=function(){var e=[];this.required&&e.push(n.Validators.required),this.minlength&&e.push(n.Validators.minLength(this.minlength)),this.maxlength&&e.push(n.Validators.maxLength(this.maxlength)),this.textboxFormModel.setValidators(e),this.textboxFormModel.updateValueAndValidity()},t.prototype.synchronizeDisabledAttributes=function(){this.formModel.disabled!==this.textboxFormModel.disabled&&(this.formModel.disabled?this.textboxFormModel.disable():this.textboxFormModel.enable())},t.prototype.syncModelValues=function(){this.formModel.value&&this.formModel.value.label!==this.textboxFormModel.value?this.textboxFormModel.setValue(this.formModel.value.label):this.formModel.value||this.textboxFormModel.setValue("")},t.prototype.textboxValueChanged=function(e){var t=this;if(this.searchAndFilter(this.textboxFormModel.value),""===this.textboxFormModel.value&&this.clearSelectedItem(),this.addNew){var o=this.filteredOptions.find((function(e){return e.label.toLowerCase()===t.textboxFormModel.value.toLowerCase()}));this.foundMatch=!!o}this.popup&&this.popup.update()},t.prototype.clearSelectedItem=function(){this.selectedItem=null,this.selectedItemIndex=-1},t.prototype.updatePlaceholderText=function(){this.placeholder?this.effectivePlaceholder=this.translate.instant(this.placeholder):this.addNew?this.effectivePlaceholder=this.chooseOrAddPlaceholder:this.effectivePlaceholder=this.choosePlaceholder},t.prototype.findDefaultSelectionIndex=function(e,t){var o=-1;if(e&&e.length&&(o=e.findIndex((function(e){return null!=e&&"heading"!==e.display})),t)){t=t.toLowerCase().trim();var n=e.findIndex((function(e){return e.label.toLowerCase()==t&&"heading"!==e.display}));n>=0&&(o=n)}return o},t}(L);B.decorators=[{type:o.Component,args:[{selector:"ec-combobox",template:'<div class="control control-label-{{labelPosition}}"\r\n [ngClass]="{\'open\': menuStatus === \'visible\',\r\n \'invalid\': formModel.touched && formModel.invalid,\r\n \'has-icon\': (templateType === \'iconAndLabel\' && formModel.value && formModel.value.icon && formModel.value.label === textboxFormModel.value),\r\n \'is-readonly\': readonly,\r\n \'is-disabled\': formModel.disabled,\r\n \'is-always-open\': alwaysOpen}">\r\n\r\n <label *ngIf="label" ngPreserveWhitespaces>\r\n <span>{{label | translate}}</span>\r\n <span *ngIf="validationErrors.length > 0 && formModel.touched && formModel.invalid">{{validationErrors}}</span>\r\n </label>\r\n\r\n <ng-container *ngIf="alwaysOpen; else popupTarget">\r\n <div class="textbox-group control-input" [ngClass]="textboxElementClasses">\r\n <ng-container *ngTemplateOutlet="textbox"></ng-container>\r\n </div>\r\n\r\n <ng-container *ngIf="filteredOptions.length > 0 || textboxFormModel.value">\r\n <ng-container *ngTemplateOutlet="dropdownmenu"></ng-container>\r\n </ng-container>\r\n </ng-container>\r\n</div>\r\n\r\n<ng-template #popupTarget>\r\n <div class="textbox-group control-input" [ngClass]="textboxElementClasses" *ecPopup="dropdownmenu">\r\n <ng-container *ngTemplateOutlet="textbox"></ng-container>\r\n </div>\r\n</ng-template>\r\n\r\n<ng-template #textbox>\r\n <i class="ec-icon {{formModel.value?.icon}}"></i>\r\n\r\n <ec-textbox class="textbox-group-input mb-0"\r\n #textbox\r\n [id]="id"\r\n [autofocus]="autofocus"\r\n [formModel]="textboxFormModel"\r\n [maxlength]="maxlength"\r\n [minlength]="minlength"\r\n [placeholder]="effectivePlaceholder"\r\n [required]="required"\r\n [tabindex]="tabindex"\r\n [readonly]="readonly"\r\n (input)="textboxValueChanged($event)"\r\n (keydown)="keyNavigate($event)"\r\n (focusout)="onBlur()"\r\n [upperCase]="upperCase"\r\n [pending]="pending && alwaysOpen"\r\n [autocomplete]="\'off\'"></ec-textbox>\r\n\r\n <ec-button class="textbox-group-btn-right"\r\n *ngIf="!hideToggleButton"\r\n [id]="id + \'_button\'"\r\n [disabled]="formModel.disabled"\r\n icon="icon-caret-down"\r\n [tabindex]="-1"\r\n type="secondary"\r\n (click)="toggleMenu($event)"\r\n (keydown)="keyNavigate($event)"></ec-button>\r\n</ng-template>\r\n\r\n<ng-template #dropdownmenu>\r\n <div class="popup"\r\n ecOverlay\r\n [status]="pending && !alwaysOpen ? \'pending\' : \'hasData\'">\r\n\r\n <button class="add-new"\r\n id="{{id}}_addNew"\r\n #addNewButton\r\n [class.is-selected]="addNewSelected"\r\n *ngIf="addNew"\r\n [hidden]="foundMatch || (addNew === \'dynamic\' && (!textboxFormModel.value || (formModel.value && textboxFormModel.value === formModel.value.label)))"\r\n\r\n (click)="onAddNew($event)">\r\n <span class="add-new-label ec-util-truncate">\r\n <span *ngIf="addNew === \'static\' || addNew === true" translate>Add new...</span>\r\n <span *ngIf="addNew === \'dynamic\'">{{\'Add\' | translate}} <strong class="ec-util-truncate" [ngClass]="{\'text-uppercase\': upperCase}">{{textboxFormModel.value}}</strong></span>\r\n </span>\r\n <i class="ec-icon icon-add"></i>\r\n </button>\r\n\r\n <ec-menu id="{{id}}_menu"\r\n [class.border-top-0]="!filteredOptions.length && hideNoMatches"\r\n [ngClass]="menuElementClasses"\r\n [templateType]="templateType"\r\n [customMenuTemplate]="customMenuTemplate"\r\n [showNoItems]="!hideNoMatches"\r\n [noDataText]="noMatchesText"\r\n [items]="filteredOptions"\r\n [selected]="selectedItem"\r\n (selectedChanged)="selectedChanged($event)"></ec-menu>\r\n\r\n <footer *ngIf="totalRecords && totalRecords > filteredOptions.length && filteredOptions.length > 0">\r\n <span>{{filteredOptions.length}} {{\'of\' | translate}} {{totalRecords}}</span>\r\n </footer>\r\n </div>\r\n</ng-template>\r\n',styles:['@-webkit-keyframes spin{0%{transform:rotate(0)}to{transform:rotate(1turn)}}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(1turn)}}:host{color:#1a1a23;display:block;font-family:Roboto,-apple-system,BlinkMacSystemFont,Segoe UI,Oxygen,Ubuntu,Fira Sans,Droid Sans,Helvetica Neue,sans-serif;font-size:1rem;margin-bottom:1rem;width:100%}:host :host-context(.form-condensed){margin-bottom:.5rem}:host .control{display:flex;flex-direction:column;width:100%}:host .control.control-label-bottom{flex-direction:column-reverse}:host .control.control-label-left{flex-direction:row}:host .control.control-label-left label{margin-right:.25rem}:host .control.control-label-right{flex-direction:row-reverse}:host .control.control-label-right label{margin-left:.25rem}:host .control.control-label-left,:host .control.control-label-right{align-items:center}:host .control.control-label-left label,:host .control.control-label-right label{flex:1 1;margin-bottom:0;margin-top:0}:host .control.control-label-left .control-input,:host .control.control-label-right .control-input{flex:2 2}:host .control.is-readonly input,:host .control.is-readonly select{-moz-user-select:none;-ms-user-select:none;-webkit-user-select:none;background-clip:border-box;background-color:rgba(26,26,35,.12);background-image:none;border-color:transparent;color:#1a1a23;opacity:1;overflow:hidden;pointer-events:none;user-select:none;white-space:nowrap}:host .control.invalid .textbox-group-input ::ng-deep .control input.ng-invalid,:host .control.invalid .textbox-group-input ::ng-deep .control input.ng-valid{background-color:#fff8cc;background-image:url(\'data:image/svg+xml;charset=utf8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 32 32"><path fill="rgba(26, 26, 35, 0.66)" d="M20.21 20.21h-8.42L10.95 0h10.1l-.84 20.21zm-8.42 3.37h8.42V32h-8.42z"/></svg>\');background-position:.25em;background-repeat:no-repeat;background-size:1em 1em;padding-left:1.5em}:host .control.invalid .textbox-group-input ::ng-deep .control input.ng-invalid:not(:focus),:host .control.invalid .textbox-group-input ::ng-deep .control input.ng-valid:not(:focus){border-color:#ffe433}:host .control.invalid:not(.open) .textbox-group-btn-right ::ng-deep button{background-color:#fff8cc}:host .control.invalid:not(.open) .textbox-group-btn-right ::ng-deep button:not(:focus){border-color:#ffe433}:host .textbox-group{display:flex;position:relative}:host input:focus,:host select:focus,:host textarea:focus{outline:none}:host(.invalid) .control .textbox-group-input ::ng-deep .control input.ng-invalid,:host(.invalid) .control .textbox-group-input ::ng-deep .control input.ng-valid{background-color:#fff8cc;background-image:url(\'data:image/svg+xml;charset=utf8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 32 32"><path fill="rgba(26, 26, 35, 0.66)" d="M20.21 20.21h-8.42L10.95 0h10.1l-.84 20.21zm-8.42 3.37h8.42V32h-8.42z"/></svg>\');background-position:.25em;background-repeat:no-repeat;background-size:1em 1em;padding-left:1.5em}:host(.invalid) .control .textbox-group-input ::ng-deep .control input.ng-invalid:not(:focus),:host(.invalid) .control .textbox-group-input ::ng-deep .control input.ng-valid:not(:focus){border-color:#ffe433}:host(.invalid) .control:not(.open) .textbox-group-btn-right ::ng-deep button{background-color:#fff8cc}:host(.invalid) .control:not(.open) .textbox-group-btn-right ::ng-deep button:not(:focus){border-color:#ffe433}.control{position:relative}.control ec-textbox ::ng-deep input.ng-invalid.ng-touched{background-image:none;padding-left:.5rem}.control ec-textbox ::ng-deep input.ng-invalid.ng-touched:not(.is-empty)~.units-left{left:0}.control ec-textbox ::ng-deep input:required:not(:disabled).is-empty{background-color:#fff;background-image:url(\'data:image/svg+xml;charset=utf8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 32 32"><path fill="%23ffe433" d="M31.32 21.69l-.09.18-2.48 4.35c-.36.54-.77.62-1.25.27-.12 0-.2 0-.2-.09L19.53 22v9.37a1.26 1.26 0 0 1-.72.67h-5.26c-.59 0-.83-.3-.83-.89 0-.12.15-.21.15-.27V22l-8 4.71h-.12c-.42.66-.8.21-1.16-.27L1 21.82a.82.82 0 0 1 .35-1.26l.18-.1L9 16 .87 11.47v-.09c0-.36-.39-.74-.09-1.16l2.75-4.35v-.09c0-.42.82-.54 1.29-.36l8 4.62V.89c0-.59.18-.89.77-.89h5c.65 0 .91.3.91.89V10l7.94-4.53c.48-.29.72-.21 1.08.27l2.32 4.35v.09c.66.48.45.89-.08 1.25L23 16l7.91 4.53v.09c-.04.18.53.54.41 1.07z"/></svg>\');background-position:.25em;background-repeat:no-repeat;background-size:1em 1em;border-color:#d2d7d9;padding-left:1.5em}.control ec-textbox ::ng-deep input:required:not(:disabled).is-empty:focus{border-color:#0084a9;box-shadow:0 0 0 1px #0084a9;position:relative;z-index:1}.control .textbox-group .ec-icon{display:none;left:.5rem;position:absolute;top:.5rem;z-index:2}.control.has-icon:not(.invalid) .ec-icon{display:inline-flex}.control.has-icon:not(.invalid) ec-textbox ::ng-deep input{padding-left:1.75em}.control.is-disabled .ec-icon{filter:grayscale(100%);opacity:.65}.control.is-readonly ec-textbox ::ng-deep input{border-bottom-right-radius:0;border-right-width:.0625rem;border-top-right-radius:0}.control.is-readonly ec-button{display:none}.control.is-always-open{height:100%}.control.is-always-open .textbox-group,.control.is-always-open label{margin-left:1rem;margin-right:1rem}.control.is-always-open .textbox-group{margin-bottom:1rem}.control.is-always-open .popup{background-color:transparent;border:0;flex:1 1;margin:0;min-height:0;z-index:0}.control.is-always-open ec-menu{border-top:1px solid rgba(26,26,35,.18)}.control.is-always-open ec-menu ::ng-deep ul{max-height:none}label{color:rgba(26,26,35,.66);display:block;font-size:.75rem;line-height:1;margin:.375rem 0}.popup{background-color:#fff;border:.125rem solid #0084a9;margin-bottom:-1px;margin-top:-1px;z-index:50}ec-menu{display:block}ec-menu:not(:first-child){border-top:1px solid rgba(26,26,35,.18)}ec-menu ::ng-deep ul{max-height:30vh}ec-menu ::ng-deep ul li{white-space:nowrap}.add-new{align-items:center;background-color:#fff;border:0;cursor:pointer;display:flex;height:2rem;line-height:1.25;padding:.25rem .5714285714em;width:100%}.add-new.is-highlighted,.add-new.is-selected{background-color:#d9edf2}.add-new:focus{background-color:rgba(26,26,35,.38);outline:none}.add-new:active{background-color:#0084a9;color:#fff}.add-new.is-disabled,.add-new:disabled{color:rgba(26,26,35,.66);cursor:default;opacity:.65}.add-new .label{align-items:center;display:flex;flex:auto}.add-new .ec-icon+.label{margin:0 .375rem}.add-new.is-selected,.add-new:hover:not(:active){background-color:#bfe0e9}.add-new:active .ec-icon{color:inherit}.add-new-label{flex:1 1;margin-right:.5rem;text-align:left}.add-new .ec-icon{flex:0 0 auto}footer{border-top:1px solid rgba(26,26,35,.18);color:rgba(26,26,35,.38);font-size:.75rem;line-height:1;padding:.5rem;text-align:right}ec-button ::ng-deep button .ec-icon{background-position:50%;background-size:1em}.open:not(.is-always-open) .textbox-group ec-textbox ::ng-deep input{border-color:#d2d7d9;box-shadow:none}.open:not(.is-always-open) .textbox-group ec-button ::ng-deep button{background-color:#bfe0e9;box-shadow:none}']}]}],B.ctorParameters=function(){return[{type:F},{type:R},{type:i.TranslateService},{type:_}]},B.propDecorators={onResize:[{type:o.HostListener,args:["window:resize"]}],addNew:[{type:o.Input}],maxlength:[{type:o.Input}],menuPosition:[{type:o.Input}],minlength:[{type:o.Input}],options:[{type:o.Input}],templateType:[{type:o.Input}],customMenuTemplate:[{type:o.Input}],popupFixed:[{type:o.Input}],totalRecords:[{type:o.Input}],upperCase:[{type:o.Input}],placeholder:[{type:o.Input}],loadOnOpenObservable:[{type:o.Input}],hideToggleButton:[{type:o.Input}],alwaysOpen:[{type:o.Input}],menuElementClasses:[{type:o.Input}],textboxElementClasses:[{type:o.Input}],hideNoMatches:[{type:o.Input}],noMatchesText:[{type:o.Input}],addNewClick:[{type:o.Output}],search:[{type:o.Output}],textbox:[{type:o.ViewChild,args:["textbox"]}],popup:[{type:o.ViewChild,args:[N]}],addNewButton:[{type:o.ViewChild,args:["addNewButton"]}]};var U=function(){function e(e,t){this.router=e,this.activatedRoute=t,this._hasUnsavedChanges=!1,this.beforeUnloadFunction=function(e){e.preventDefault(),e.returnValue=""},window&&(this.resized=l.fromEvent(window,"resize"))}return Object.defineProperty(e.prototype,"hasUnsavedChanges",{get:function(){return this._hasUnsavedChanges},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,"innerWidth",{get:function(){return window?window.innerWidth:void 0},enumerable:!1,configurable:!0}),e.prototype.goBack=function(){window.history.back()},e.prototype.getHistoryLength=function(){var e;return(null===(e=null===window||void 0===window?void 0:window.history)||void 0===e?void 0:e.length)||0},e.prototype.navigateToUrl=function(e){return x(this,void 0,void 0,(function(){return w(this,(function(t){switch(t.label){case 0:return t.trys.push([0,5,,6]),0!==e.indexOf("/app/")?[3,2]:[4,this.router.navigateByUrl(e.substring(5))];case 1:return t.sent(),[3,4];case 2:return[4,this.router.navigateByUrl(e)];case 3:t.sent(),t.label=4;case 4:return[3,6];case 5:return t.sent(),window.location.href=e,[3,6];case 6:return[2]}}))}))},e.prototype.addNavigateAwayPrompt=function(){this._hasUnsavedChanges=!0,window.addEventListener("beforeunload",this.beforeUnloadFunction)},e.prototype.removeNavigateAwayPrompt=function(){this._hasUnsavedChanges=!1,window.removeEventListener("beforeunload",this.beforeUnloadFunction)},e.prototype.postMessage=function(e,t,o){e.postMessage(t,o)},e.prototype.openNew=function(e){window.open(e,"_blank")},e.prototype.modifyHistoryQueryParamsSubset=function(e){return x(this,void 0,void 0,(function(){return w(this,(function(t){return[2,this.router.navigate([],{relativeTo:this.activatedRoute,replaceUrl:!0,queryParams:e,queryParamsHandling:"merge"})]}))}))},e.prototype.confirm=function(e){return Promise.resolve(confirm(e))},e.prototype.closeWindow=function(e){e?e.close():window.close()},e.prototype.getLocation=function(){return window.location.pathname+window.location.hash},e.prototype.getFullUrl=function(){return window.location.href},e.prototype.reloadWindow=function(){window.location.reload()},e}();U.ɵprov=o.ɵɵdefineInjectable({factory:function(){return new U(o.ɵɵinject(r.Router),o.ɵɵinject(r.ActivatedRoute))},token:U,providedIn:"root"}),U.decorators=[{type:o.Injectable,args:[{providedIn:"root"}]}],U.ctorParameters=function(){return[{type:r.Router},{type:r.ActivatedRoute}]};var j=function(){function e(e,t,n,r){this.el=e,this.renderer=t,this.windowService=n,this.scrollService=r,this.items=[],this.selected=null,this.templateType="label",this.showNoItems=!1,this.noDataText="NoItems_TC",this.enableKeyNav=!1,this.highlightedItem=null,this.selectedChanged=new o.EventEmitter,this.menuClosed=new o.EventEmitter,this.highlightedItemIndex=-1,this.lastSelected=null}return e.prototype.ngAfterContentInit=function(){var e=this;switch(this.templateType){case"label":this.internalizedTemplate=this.labelTemplate;break;case"iconAndLabel":this.internalizedTemplate=this.iconAndLabelTemplate;break;case"checkAndLabel":this.internalizedTemplate=this.checkAndLabelTemplate;break;default:throw new Error("Invalid templateType for MenuComponent. Please use either: 'label', 'iconAndLabel' or 'checkAndLabel'")}this.customMenuTemplate&&(this.internalizedTemplate=this.customMenuTemplate),this.id&&(this.attrId=this.id),this.setItemIds(),this.highlightedItem&&this.items.length&&(this.highlightedItemIndex=this.items.findIndex((function(t){return e.highlightedItem===t}))),this.addKeydownListener()},e.prototype.ngOnDestroy=function(){this.removeKeydownListener&&this.removeKeydownListener()},e.prototype.selectItem=function(e,t,o){e.stopPropagation(),t.disabled||t.readonly||this.lastSelected===t||(t.url?o?(t.target?window.open(t.url,t.target):this.windowService.navigateToUrl(t.url),this.onSelection(t)):this.onSelection(t):(t.onClick&&t.onClick(t,!1),t.items?this.toggleChildMenu(!0):this.onSelection(t)),this.selected=t,this.lastSelected=t)},e.prototype.back=function(e){e.stopPropagation(),this.parent&&this.parent.onClick&&this.parent.onClick(null,!0),this.menuClosed.emit()},e.prototype.onSelection=function(e){"heading"!==e.display&&this.selectedChanged.emit(e)},e.prototype.toggleChildMenu=function(e){var t=this,o=this.el.nativeElement.querySelector("nav");if(e){this.removeKeydownListener&&this.removeKeydownListener();var n=o.offsetHeight,r=o.offsetWidth;this.renderer.setStyle(o,"height",n+"px"),this.renderer.setStyle(o,"width",r+"px"),this.renderer.addClass(this.el.nativeElement,"open"),setTimeout((function(){t.renderer.addClass(t.el.nativeElement,"open-active")}))}else this.addKeydownListener(),this.renderer.removeClass(this.el.nativeElement,"open-active"),setTimeout((function(){t.renderer.removeClass(t.el.nativeElement,"open"),t.renderer.setStyle(o,"height","100%"),t.selected=null}),350)},e.prototype.keyNavigate=function(e){if(this.enableKeyNav)switch(e.key){case"ArrowUp":case"Up":case"ArrowDown":case"Down":e.stopPropagation(),e.preventDefault(),this.moveHighlightedUpOrDown(e);break;case"ArrowRight":case"Right":e.stopPropagation(),e.preventDefault(),this.highlightedItem&&this.highlightedItem.items&&this.selectItem(e,this.highlightedItem,!0);break;case"ArrowLeft":case"Left":e.stopPropagation(),e.preventDefault(),this.parent&&this.back(e);break;case" ":case"Spacebar":case"Enter":e.preventDefault(),this.highlightedItemIndex>-1&&this.highlightedItem?this.selectItem(e,this.highlightedItem,!0):-1===this.highlightedItemIndex&&this.parent&&this.back(e);break;default:return}},e.prototype.scrollToSelectedItem=function(){var e=this;window.setTimeout((function(){e.scrollService.scrollToItem("#"+e.id+"_list","li.is-selected")}))},e.prototype.moveHighlightedUpOrDown=function(e){switch(e.key){case"ArrowUp":case"Up":this.highlightedItemIndex>-1&&(this.highlightedItemIndex--,this.highlightedItemIndex>-1&&"heading"===this.items[this.highlightedItemIndex].display&&this.highlightedItemIndex--);break;case"ArrowDown":case"Down":this.highlightedItemIndex<this.items.length-1&&(this.highlightedItemIndex++,this.highlightedItemIndex<this.items.length-1&&"heading"===this.items[this.highlightedItemIndex].display&&this.highlightedItemIndex++);break;default:return}this.highlightedItemIndex>-1?this.highlightedItem=this.items[this.highlightedItemIndex]:this.highlightedItem=null,this.scrollToHighlightedItem()},e.prototype.scrollMenu=function(e){if(this.items.length>0){e=e||this.items[0];var t=this.findItemIndex(e);if(this.id){var o=e.id?"#"+e.id:"#"+this.id+"_item"+t;this.scrollService.scrollItemCentered("#"+this.id+"_list",o)}}},e.prototype.scrollToHighlightedItem=function(){this.scrollMenu(this.highlightedItem)},e.prototype.findItemIndex=function(e){return e?this.items.findIndex((function(t){return t.label===e.label})):-1},e.prototype.addKeydownListener=function(){var e=this;this.enableKeyNav&&(this.removeKeydownListener=this.renderer.listen("document","keydown",(function(t){return e.keyNavigate(t)})))},e.prototype.setItemIds=function(){var e=this;this.items&&this.items.forEach((function(t,o){t.id=t.id?t.id:e.id+"_item"+o}))},e}();j.decorators=[{type:o.Component,args:[{selector:"ec-menu",template:'<nav>\r\n <div class="parent"\r\n [class.no-data]="showNoItems && (!items || items.length === 0)">\r\n <header id="{{id}}_header"\r\n class="item-wrapper"\r\n [class.is-selected]="highlightedItemIndex === -1"\r\n *ngIf="parent"\r\n (click)="back($event)">\r\n <i class="ec-icon icon-angle-down rotate-90 flex-shrink"></i>\r\n <span class="label text-truncate flex-grow">{{parent?.label}}</span>\r\n </header>\r\n\r\n <ul id="{{id}}_list">\r\n <li *ngFor="let item of items; index as i"\r\n id="{{item.id || id + \'_item\' + i}}"\r\n class="{{item.display || \'item\'}} {{item.classList}}"\r\n [attr.disabled]="item.disabled"\r\n [hidden]="item.hidden"\r\n ecNavItemActive="is-selected"\r\n [ecNavItemActiveQueryParams]="item.queryParams"\r\n [ecNavItemActiveUrl]="item.url"\r\n [ecNavItemActiveExactMatch]=\'item.isActiveExactMatch\'\r\n (routerLinkActivated)="selectItem($event, item)"\r\n [ngClass]="{\'is-highlighted\':(selected === item && item?.display !== \'heading\') || highlightedItem === item, \'is-link\': item.url, \'is-disabled\': item.disabled, \'is-readonly\': item.readonly, \'is-checked\': item.checked}"\r\n (click)="selectItem($event, item)">\r\n\r\n <a *ngIf="item.url && !item.externalLink"\r\n id="{{item.id}}_link"\r\n class="item-wrapper"\r\n [routerLink]="item.url"\r\n [queryParams]="item.queryParams || null"\r\n target="{{item.target || \'_self\'}}">\r\n\r\n <ng-container *ngTemplateOutlet="internalizedTemplate; context: {$implicit: item}"></ng-container>\r\n </a>\r\n\r\n <a *ngIf="item.url && item.externalLink"\r\n id="{{item.id}}_link"\r\n class="item-wrapper"\r\n href="{{item.url}}"\r\n target="{{item.target || \'_self\'}}">\r\n\r\n <ng-container *ngTemplateOutlet="internalizedTemplate; context: {$implicit: item}"></ng-container>\r\n </a>\r\n\r\n <div *ngIf="!item.url"\r\n class="item-wrapper">\r\n <ng-container *ngTemplateOutlet="internalizedTemplate; context: {$implicit: item}"></ng-container>\r\n </div>\r\n </li>\r\n </ul>\r\n\r\n <p class="no-data-message">{{noDataText | translate}}</p>\r\n </div>\r\n\r\n \x3c!-- Child menu (Rendered to the right) --\x3e\r\n <ec-menu *ngIf="selected?.items"\r\n id="{{id}}_child"\r\n class="child"\r\n [parent]="selected"\r\n [items]="selected?.items"\r\n [showNoItems]="true"\r\n [templateType]="templateType"\r\n [enableKeyNav]="true"\r\n (selectedChanged)="onSelection($event)"\r\n (menuClosed)="toggleChildMenu(false)">\r\n </ec-menu>\r\n</nav>\r\n\r\n\x3c!-- \'label\' Item Template --\x3e\r\n<ng-template #label\r\n let-item>\r\n <span id="{{item.id}}_label"\r\n class="label">{{item.label}}</span>\r\n\r\n <i class="ec-icon icon-angle-down rotate-270" *ngIf="item?.items"></i>\r\n</ng-template>\r\n\r\n\x3c!-- \'checkAndLabel\' Item Template --\x3e\r\n<ng-template #checkAndLabel\r\n let-item>\r\n\r\n <i class="ec-icon icon-check ec-icon-sm" *ngIf="item.display !== \'heading\'"></i>\r\n\r\n <i class="ec-icon {{item.icon}} ml-2" *ngIf="item.icon"></i>\r\n\r\n <span id="{{item.id}}_label"\r\n class="label">{{item.label}}</span>\r\n\r\n <i class="ec-icon icon-angle-down rotate-270" *ngIf="item?.items"></i>\r\n</ng-template>\r\n\r\n\x3c!-- \'iconAndLabel\' Item Template --\x3e\r\n<ng-template #iconAndLabel\r\n let-item>\r\n\r\n <i class="ec-icon {{item.icon}}"></i>\r\n\r\n <span id="{{item.id}}_label"\r\n class="label">{{item.label}}</span>\r\n\r\n <i class="ec-icon icon-angle-down rotate-270" *ngIf="item?.items"></i>\r\n</ng-template>',styles:["@-webkit-keyframes spin{0%{transform:rotate(0)}to{transform:rotate(1turn)}}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(1turn)}}:host{background-color:#fff;display:block;font-size:.875rem;font-weight:400}:host.open>nav>.child,:host.open>nav>.parent{height:100%;left:0;position:absolute;right:0;top:0;transition:transform .25s ease}:host.open>nav>.parent{transform:translateX(0)}:host.open>nav>.child{transform:translateX(100%)}:host.open-active>nav>.parent{transform:translateX(-100%)}:host.open-active>nav>.child{transform:translateX(0)}:host(.bg-transparent){background-color:transparent}:host-context(.is-always-open){height:100%}:host-context(.is-always-open) .item-wrapper{padding-left:1rem;padding-right:1rem}nav{height:100%;overflow:hidden}.parent,nav{display:flex;position:relative}.parent{flex:auto;flex-direction:column;max-width:100%}.parent>header{background-color:#dee2e4;color:rgba(26,26,35,.66);cursor:pointer}.parent>header.is-highlighted,.parent>header.is-selected{background-color:#d9edf2}.parent>header:hover{background-color:#bfe0e9}.parent.no-data ul{display:none}.parent.no-data .no-data-message{display:block}ul{flex:auto;height:100%;list-style:none;margin:0;overflow-y:auto;padding:0}ul li{cursor:pointer}ul li.is-highlighted,ul li.is-selected{background-color:#d9edf2}ul li:hover{background-color:#bfe0e9}ul li:focus{background-color:rgba(26,26,35,.38);outline:none}ul li:active{background-color:#0084a9;color:#fff}ul li.is-disabled,ul li:disabled{color:rgba(26,26,35,.66);cursor:default;opacity:.65}ul li a{border-bottom:0;color:inherit;text-decoration:none}ul li.heading{background-color:#dee2e4;color:rgba(26,26,35,.66)}ul li.heading .item-wrapper{cursor:default}ul li.divider{border-bottom:1px solid #d2d7d9}ul li.is-disabled,ul li.is-readonly{background-color:transparent;color:inherit;cursor:default}ul li.is-checked .icon-check{opacity:1}.item-wrapper{color:inherit;cursor:inherit;display:flex;line-height:1.25rem;min-height:1.75rem;padding:.25rem .5rem}.item-wrapper .label{margin-right:auto}.item-wrapper .label+.ec-icon{margin-left:.5rem}.item-wrapper .ec-icon{flex:none;margin-top:.125rem}.item-wrapper .ec-icon+.label{margin-left:.5rem}.item-wrapper .ec-icon-sm{margin-top:.25rem}.item-wrapper .icon-check{opacity:0}.no-data-message{color:rgba(26,26,35,.38);display:none;font-size:1rem;margin-bottom:0;padding:1rem;text-align:center}:host-context(ec-tree) ul{overflow-x:hidden}:host-context(ec-tree) li{white-space:nowrap}:host-context(ec-tree) li.is-highlighted,:host-context(ec-tree) li.is-selected{font-weight:700}:host-context(ec-tree) li.is-highlighted:not(:hover),:host-context(ec-tree) li.is-selected:not(:hover){background-color:transparent}"]}]}],j.ctorParameters=function(){return[{type:o.ElementRef},{type:o.Renderer2},{type:U},{type:_}]},j.propDecorators={id:[{type:o.Input}],attrId:[{type:o.HostBinding,args:["attr.id"]}],items:[{type:o.Input}],selected:[{type:o.Input}],parent:[{type:o.Input}],templateType:[{type:o.Input}],customMenuTemplate:[{type:o.Input}],title:[{type:o.Input}],showNoItems:[{type:o.Input}],noDataText:[{type:o.Input}],enableKeyNav:[{type:o.Input}],highlightedItem:[{type:o.Input}],selectedChanged:[{type:o.Output}],menuClosed:[{type:o.Output}],labelTemplate:[{type:o.ViewChild,args:["label",{static:!0}]}],iconAndLabelTemplate:[{type:o.ViewChild,args:["iconAndLabel",{static:!0}]}],checkAndLabelTemplate:[{type:o.ViewChild,args:["checkAndLabel",{static:!0}]}]};var H=function(){function e(){this.autofocus=!1,this.status={status:"hasData",message:""},this.disabled=!1,this.buttonType="icon",this.buttonTitle="",this.showArrow=!0,this.items=[],this.menuTemplateType="label",this.popupFixed=!1,this.pending=!1,this.itemSelected=new o.EventEmitter,this.popupOpened=new o.EventEmitter,this.menuStatus="hidden",this.highlightedItem=null,this.isKeyboardEvent=!1,this.componentDestroyed=new l.Subject}return e.prototype.ngOnInit=function(){var e=this;this.popup.popperStatusChange.pipe(c.takeUntil(this.componentDestroyed)).subscribe((function(t){e.menuStatus=t,"visible"===e.menuStatus&&e.popupOpened.emit()}))},e.prototype.ngAfterViewInit=function(){var e=this,t={modifiers:{preventOverflow:{boundariesElement:"viewport"}},placement:"bottom-end"};"left"===this.menuPosition&&(t.placement="bottom-start"),this.popupFixed&&(t.onCreate=function(){e.popup.fixPosition(void 0,!0)},t.onUpdate=function(){e.popup.hide()}),this.popup.popperOptions=t},e.prototype.ngOnDestroy=function(){this.componentDestroyed.next(),this.componentDestroyed.unsubscribe()},e.prototype.toggleMenu=function(e){e&&e.stopPropagation(),this.disabled||("hidden"===this.menuStatus?(this.isKeyboardEvent&&this.items.length&&(this.highlightedItem=this.items.find((function(e){return"heading"!==e.display}))||null),this.popup.show()):(this.popup.hide(),this.highlightedItem=null,this.isKeyboardEvent=!1))},e.prototype.selectedChanged=function(e){this.itemSelected.emit(e),this.toggleMenu()},e.prototype.keyNavigate=function(e){switch(e.key){case"Enter":this.isKeyboardEvent=!0;break;case"Escape":case"Tab":"visible"===this.menuStatus&&this.toggleMenu(e);break;default:return}},e}();H.decorators=[{type:o.Component,args:[{selector:"ec-dropdown",template:'<div class="control">\r\n <ec-button [disabled]="disabled"\r\n id="{{id}}_toggle"\r\n [ngClass]="{\'has-arrow\':showArrow, \'active\': menuStatus === \'visible\', \'text-left\': buttonAlignment === \'left\', \'text-right\': buttonAlignment === \'right\'}"\r\n *ecPopup="dropdownMenu"\r\n [label]="label"\r\n [icon]="icon"\r\n [tabindex]="tabindex"\r\n [type]="buttonType"\r\n [customTemplate]="buttonCustomTemplate"\r\n [pending]="pending"\r\n title="{{buttonTitle}}"\r\n (click)="toggleMenu($event)"\r\n (keydown)="keyNavigate($event)"\r\n [autofocus]="autofocus">\r\n </ec-button>\r\n <span class="arrow is-{{buttonType}}"\r\n *ngIf="showArrow"\r\n [class.is-disabled]="disabled">\r\n <i class="ec-icon icon-caret-down" [class.flip-y]="menuStatus === \'visible\'"></i>\r\n </span>\r\n</div>\r\n\r\n<ng-template #dropdownMenu>\r\n <div id="{{id}}_popup"\r\n class="popup"\r\n ecOverlay\r\n [status]="status?.status"\r\n [message]="status?.message"\r\n [displayAsMask]="true">\r\n \x3c!-- Dropdown Menu Title --\x3e\r\n <header id="{{id}}_title"\r\n *ngIf="menuTitle">{{menuTitle}}\r\n </header>\r\n \x3c!-- Dropdown Menu --\x3e\r\n <ec-menu id="{{id}}_menu"\r\n [class.wrap-items]="menuWidth"\r\n [templateType]="menuTemplateType"\r\n [style.width]="menuWidth ? menuWidth + \'px\' : \'auto\'"\r\n [style.min-width]="menuMinWidth ? menuMinWidth + \'px\' : \'auto\'"\r\n [style.height]="menuHeight ? menuHeight + \'px\' : \'auto\'"\r\n [items]="items"\r\n [showNoItems]="true"\r\n [enableKeyNav]="true"\r\n [highlightedItem]="highlightedItem"\r\n (selectedChanged)="selectedChanged($event)">\r\n </ec-menu>\r\n <footer *ngIf="menuFooter">{{menuFooter}}</footer>\r\n </div>\r\n</ng-template>',styles:["@-webkit-keyframes spin{0%{transform:rotate(0)}to{transform:rotate(1turn)}}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(1turn)}}:host{box-sizing:border-box;display:inline-block}:host(.fill),:host(.fill) .control,:host(.fill) .control ec-button{display:block;height:100%;width:100%}:host(.fill) .control ec-button ::ng-deep button{display:block;display:flex;height:100%;width:100%}:host(.fill) ec-menu{min-width:100%}:host(.td-fill){left:0;position:absolute;top:0}:host(.td-fill) ec-button ::ng-deep button{font-size:.75rem;padding-left:.375rem;padding-right:.375rem}:host(.is-action) .arrow,:host(.is-action) ec-button{color:#0084a9}:host(.is-condensed) ec-button ::ng-deep button{height:1.5rem}:host(.is-condensed) ec-button.has-arrow ::ng-deep button{padding:0 1.125rem 0 .25rem}:host(.is-condensed) ec-button.has-arrow~.arrow{right:.375rem}:host(.d-block) ec-button{display:block}:host(.d-block) ec-button ::ng-deep button{width:100%}:host-context(th){color:#1a1a23}.control{position:relative}ec-button{display:block}ec-button.has-arrow~.arrow{align-items:center;display:flex;height:100%;pointer-events:none;position:absolute;right:.5rem;top:0;width:.625rem;z-index:1}ec-button.has-arrow~.arrow .ec-icon{color:rgba(26,26,35,.66);transition:color .3s ease;width:auto}ec-button.has-arrow~.arrow.is-common .ec-icon{color:#fff}ec-button.has-arrow~.arrow.is-link .ec-icon{color:#0084a9}ec-button.has-arrow~.arrow.is-disabled .ec-icon{color:rgba(26,26,35,.66);opacity:.5}ec-button.has-arrow ::ng-deep button{padding-right:1.25rem;width:auto}ec-button.has-arrow ::ng-deep button:not(.ec-button-custom){padding-left:.5rem}.popup{background-color:#fff;border:.125rem solid #0084a9;margin-top:-1px;position:absolute;z-index:50}.popup>header{background-color:#0084a9;color:#fff;line-height:1.25rem;overflow:hidden;padding:.25rem .5rem;text-overflow:ellipsis;white-space:nowrap}.popup footer{border-top:.0625rem solid #d2d7d9;color:rgba(26,26,35,.66);font-size:.75rem;line-height:1.2;padding:.1875rem .5rem}ec-menu ::ng-deep ul{max-height:50vh}ec-menu ::ng-deep li{white-space:nowrap}ec-menu.wrap-items ::ng-deep li{white-space:normal}"]}]}],H.ctorParameters=function(){return[]},H.propDecorators={id:[{type:o.Input}],autofocus:[{type:o.Input}],status:[{type:o.Input}],disabled:[{type:o.Input}],label:[{type:o.Input}],icon:[{type:o.Input}],buttonType:[{type:o.Input}],buttonAlignment:[{type:o.Input}],buttonTitle:[{type:o.Input}],tabindex:[{type:o.Input}],showArrow:[{type:o.Input}],items:[{type:o.Input}],menuTemplateType:[{type:o.Input}],menuTitle:[{type:o.Input}],menuHeight:[{type:o.Input}],menuWidth:[{type:o.Input}],menuMinWidth:[{type:o.Input}],menuPosition:[{type:o.Input}],menuFooter:[{type:o.Input}],popupFixed:[{type:o.Input}],buttonCustomTemplate:[{type:o.Input}],pending:[{type:o.Input}],itemSelected:[{type:o.Output}],popupOpened:[{type:o.Output}],menuEl:[{type:o.ViewChild,args:[j,{read:o.ElementRef}]}],popup:[{type:o.ViewChild,args:[N,{static:!0}]}]};var q=function(){function e(e,t,n,r){this.router=e,this.el=t,this.renderer=n,this.route=r,this._exact=!0,this.routerLinkActivated=new o.EventEmitter,this.destroyed=new l.Subject}return Object.defineProperty(e.prototype,"exact",{set:function(e){this._exact=void 0===e||e,this.update()},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,"url",{set:function(e){null!=e&&(this._url=this.router.createUrlTree([e],{relativeTo:this.route,queryParams:this.queryParams}),this.update())},enumerable:!1,configurable:!0}),e.prototype.ngOnInit=function(){var e=this;this.router.events.pipe(c.takeUntil(this.destroyed),c.filter((function(e){return e instanceof r.NavigationEnd}))).subscribe((function(){e.update()}))},e.prototype.ngOnDestroy=function(){this.destroyed.next(),this.destroyed.unsubscribe()},e.prototype.update=function(){this._url&&this.classValue&&(this.router.isActive(this._url,this._exact)?(this.renderer.addClass(this.el.nativeElement,this.classValue),this.routerLinkActivated.emit(new Event("routerLinkActivated"))):this.renderer.removeClass(this.el.nativeElement,this.classValue))},e}();q.decorators=[{type:o.Directive,args:[{selector:"[ecNavItemActive]"}]}],q.ctorParameters=function(){return[{type:r.Router},{type:o.ElementRef},{type:o.Renderer2},{type:r.ActivatedRoute}]},q.propDecorators={classValue:[{type:o.Input,args:["ecNavItemActive"]}],exact:[{type:o.Input,args:["ecNavItemActiveExactMatch"]}],queryParams:[{type:o.Input,args:["ecNavItemActiveQueryParams"]}],url:[{type:o.Input,args:["ecNavItemActiveUrl"]}],routerLinkActivated:[{type:o.Output}]};var W=function(){function e(e,t){this.items=[],this.selectedChanges=new l.Subject,e&&(this.items=e,this.items.length&&t&&(this._selected=t))}return Object.defineProperty(e.prototype,"selected",{get:function(){return this._selected},set:function(e){this._selected=e,e&&this.selectItem(e)},enumerable:!1,configurable:!0}),e.prototype.selectItem=function(e){e.url||(e.onClick&&e.onClick(e),this.selectedChanges.next(e))},e}(),G=function(){function e(){this.id="",this.tabindex=0,this.tabStyle="tabs",this.tabs=new W}return e.prototype.selectTab=function(e,t){t.disabled||"click"!==e.type&&("keypress"!==e.type||"Enter"!==e.key)||(this.tabs.selected=t)},e}();G.decorators=[{type:o.Component,args:[{selector:"ec-tabs",template:'<ul *ngIf="tabs?.items?.length" class="{{tabStyle}}">\r\n\r\n <li class="{{tab.classlist}}" [ngClass]="{\'icon-only\': tab.icon && !tab.label}" *ngFor="let tab of tabs?.items; index as i;">\r\n\r\n <a *ngIf="tab.url && !tab.disabled"\r\n tabindex="{{tabs?.selected === tab ? -1 : tabindex}}"\r\n class="tab"\r\n id="{{tab.id ? tab.id : id + \'_item\' + i}}"\r\n routerLinkActive="active"\r\n [routerLink]="tab.url"\r\n [queryParams]="tab.queryParams || null"\r\n [queryParamsHandling]="tab.queryParamsHandling || \'\'"\r\n (keypress)="selectTab($event, tab)"\r\n (click)="selectTab($event, tab)">\r\n <i class="ec-icon {{tab.icon}}" *ngIf="tab.icon" [class.mr-1]="tab.label"></i>\r\n <span class="text-truncate">{{tab.label | translate}}</span>\r\n <span *ngIf="tab?.indicator" class="indicator ml-1" [style.background-color]="tab?.indicator === true ? \'\' : tab?.indicator"></span>\r\n </a>\r\n\r\n <span *ngIf="!tab.url || tab.disabled"\r\n tabindex="{{tabs?.selected === tab || tab.disabled ? -1 : tabindex}}"\r\n id="{{tab.id ? tab.id : id + \'_item\' + i}}"\r\n class="tab"\r\n [ngClass]="{\'active\': tabs?.selected === tab, \'is-disabled\': tab.disabled}"\r\n (keypress)="selectTab($event, tab)"\r\n (click)="selectTab($event, tab)">\r\n <i class="ec-icon {{tab.icon}}" *ngIf="tab.icon" [class.mr-1]="tab.label"></i>\r\n <span class="text-truncate">{{tab.label | translate}}</span>\r\n <span *ngIf="tab?.indicator" class="indicator ml-1" [style.background-color]="tab?.indicator === true ? \'\' : tab?.indicator"></span>\r\n </span>\r\n </li>\r\n</ul> ',styles:["@-webkit-keyframes spin{0%{transform:rotate(0)}to{transform:rotate(1turn)}}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(1turn)}}:host{display:block}ul{list-style:none;margin:0;padding:0}a{text-decoration:none}.tabs{border-bottom:1px solid #d2d7d9;display:flex;padding-left:1rem;padding-right:1rem}.tabs li{display:block;min-width:0}.tabs li:not(:last-child){margin-right:.25rem}.tabs .tab{align-items:center;border:1px solid transparent;border-radius:0;color:rgba(26,26,35,.66);cursor:pointer;display:flex;font-size:.75rem;height:2rem;justify-content:center;margin-bottom:-1px;min-width:2rem;padding-left:.5rem;padding-right:.5rem}.tabs .tab:hover{color:#354751}.tabs .tab.active{background-color:#f1f3f4;border-left-color:#d2d7d9;border-right-color:#d2d7d9;border-top-color:#d2d7d9;color:#354751}.tabs .tab:focus{outline:none}.tabs .tab:focus:not(.active):not(.is-disabled){border-color:#0084a9;box-shadow:0 0 0 1px #0084a9;box-shadow:none}.tabs .tab.is-disabled{color:rgba(26,26,35,.38);cursor:default}.pills{display:flex}.pills li{display:block;min-width:0}.pills li:not(:last-child){margin-right:.25rem}.pills .tab{align-items:center;border:1px solid transparent;border-radius:0;color:rgba(26,26,35,.66);cursor:pointer;display:flex;font-size:.75rem;height:1.5rem;justify-content:center;min-width:1.5rem;padding-left:.5rem;padding-right:.5rem}.pills .tab:hover{color:#354751}.pills .tab.active{background-color:#d2d7d9;color:#354751}.pills .tab:focus{outline:none}.pills .tab:focus:not(.active):not(.is-disabled){border-color:#0084a9;box-shadow:0 0 0 1px #0084a9;box-shadow:none}.pills .tab.is-disabled{color:rgba(26,26,35,.38);cursor:default}.icon-only .tab{justify-content:center;padding:0}.indicator{background-color:rgba(111,28,138,.25);border:2px solid #6f1c8a;border-radius:50%;display:block;height:.625rem;width:.625rem}:host(.is-condensed) .pills li,:host(.is-condensed) .tabs li{margin-right:0}:host(.is-condensed) .tab{padding-left:.25rem;padding-right:.25rem}"]}]}],G.ctorParameters=function(){return[]},G.propDecorators={id:[{type:o.Input}],tabindex:[{type:o.Input}],tabStyle:[{type:o.Input}],tabs:[{type:o.Input,args:["tabGroup"]}]};var $=function(e){function t(t,o,n){var r=e.call(this,t,o)||this;return r.validationMessageService=t,r.formGroupHelper=o,r.translate=n,r.autocomplete="off",r.type="text",r.rows=3,r.selectOnAutofocus=!1,r.upperCase=!1,r}return v(t,e),t.prototype.ngOnChanges=function(t){e.prototype.ngOnChanges.call(this,t)},t.prototype.ngOnInit=function(){var t=this;e.prototype.ngOnInit.call(this),this.placeholder&&this.translate.get(this.placeholder).subscribe((function(e){t.placeholder=e}))},t.prototype.ngAfterViewInit=function(){this.autofocus&&this.setFocus(this.selectOnAutofocus)},t.prototype.setFocus=function(e){this.inputElement.nativeElement.focus(),e&&this.inputElement.nativeElement.select()},t.prototype.focusOutEvent=function(){this.upperCase&&this.formModel.value&&this.formModel.setValue(this.formModel.value.toUpperCase().trim())},t}(L);$.decorators=[{type:o.Component,args:[{selector:"ec-textbox",template:'<div class="control control-label-{{labelPosition}}"\r\n [ngClass]="{\'is-readonly\': readonly}">\r\n <label *ngIf="label" ngPreserveWhitespaces>\r\n\r\n <span>{{label | translate}}</span>\r\n\r\n <span *ngIf="validationErrors.length > 0 && formModel.touched && formModel.invalid">{{validationErrors | translate}}</span>\r\n </label>\r\n <div class="input-wrapper control-input">\r\n <input *ngIf="type !== \'multi_line\'"\r\n #textboxInput\r\n email="{{type === \'email\' ? true : false}}"\r\n pattern="{{type === \'url\' ? \'([A-Za-z])+(:\\/\\/)+[^\\\\s]*\' : \'\'}}"\r\n type="{{type}}"\r\n tabindex="{{tabindex}}"\r\n title="{{tooltip}}"\r\n [attr.id]="inputId"\r\n [attr.autocomplete]="autocomplete"\r\n [attr.placeholder]="placeholder"\r\n [attr.maxlength]="maxlength"\r\n [attr.minlength]="minlength"\r\n [attr.required]="required ? required : null"\r\n [formControl]="formModel"\r\n [ngClass]="{\'is-empty\': !formModel?.value, \'is-pending\': pending, \'is-uppercase\': upperCase}"\r\n (focusout)="focusOutEvent()"\r\n [attr.cdkFocusInitial]="autofocus || null">\r\n\r\n <textarea *ngIf="type === \'multi_line\'"\r\n [attr.rows]="rows"\r\n #textboxInput\r\n tabindex="{{tabindex}}"\r\n [attr.id]="inputId"\r\n [attr.placeholder]="placeholder"\r\n [attr.maxlength]="maxlength"\r\n [attr.minlength]="minlength"\r\n [attr.required]="required ? required : null"\r\n [formControl]="formModel"\r\n [ngClass]="{\'is-empty\': formModel?.value === \'\', \'is-pending\': pending}"\r\n [attr.cdkFocusInitial]="autofocus || null">\r\n </textarea>\r\n </div>\r\n</div>',styles:['@-webkit-keyframes spin{0%{transform:rotate(0)}to{transform:rotate(1turn)}}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(1turn)}}:host{color:#1a1a23;display:block;font-family:Roboto,-apple-system,BlinkMacSystemFont,Segoe UI,Oxygen,Ubuntu,Fira Sans,Droid Sans,Helvetica Neue,sans-serif;font-size:1rem;margin-bottom:1rem;width:100%}:host :host-context(.form-condensed){margin-bottom:.5rem}:host .control{display:flex;flex-direction:column;width:100%}:host .control.control-label-bottom{flex-direction:column-reverse}:host .control.control-label-left{flex-direction:row}:host .control.control-label-left label{margin-right:.25rem}:host .control.control-label-right{flex-direction:row-reverse}:host .control.control-label-right label{margin-left:.25rem}:host .control.control-label-left,:host .control.control-label-right{align-items:center}:host .control.control-label-left label,:host .control.control-label-right label{flex:1 1;margin-bottom:0;margin-top:0}:host .control.control-label-left .control-input,:host .control.control-label-right .control-input{flex:2 2}:host .control.is-readonly input,:host .control.is-readonly select{-moz-user-select:none;-ms-user-select:none;-webkit-user-select:none;background-clip:border-box;background-color:rgba(26,26,35,.12);background-image:none;border-color:transparent;color:#1a1a23;opacity:1;overflow:hidden;pointer-events:none;user-select:none;white-space:nowrap}:host .control.invalid .textbox-group-input ::ng-deep .control input.ng-invalid,:host .control.invalid .textbox-group-input ::ng-deep .control input.ng-valid{background-color:#fff8cc;background-image:url(\'data:image/svg+xml;charset=utf8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 32 32"><path fill="rgba(26, 26, 35, 0.66)" d="M20.21 20.21h-8.42L10.95 0h10.1l-.84 20.21zm-8.42 3.37h8.42V32h-8.42z"/></svg>\');background-position:.25em;background-repeat:no-repeat;background-size:1em 1em;padding-left:1.5em}:host .control.invalid .textbox-group-input ::ng-deep .control input.ng-invalid:not(:focus),:host .control.invalid .textbox-group-input ::ng-deep .control input.ng-valid:not(:focus){border-color:#ffe433}:host .control.invalid:not(.open) .textbox-group-btn-right ::ng-deep button{background-color:#fff8cc}:host .control.invalid:not(.open) .textbox-group-btn-right ::ng-deep button:not(:focus){border-color:#ffe433}:host .textbox-group{display:flex;position:relative}:host input:focus,:host select:focus,:host textarea:focus{outline:none}:host label{color:rgba(26,26,35,.66);display:block;font-size:.75rem;line-height:1;margin:.375rem 0}:host input{background-clip:padding-box;background-color:#fff;background-image:none;border:.0625rem solid #d2d7d9;border-radius:0;height:2rem;line-height:1.25;padding:.3125em .5em;width:100%}:host input::-moz-selection{background-color:#0084a9;color:#fff}:host input::selection{background-color:#0084a9;color:#fff}:host input::-webkit-input-placeholder{color:rgba(26,26,35,.38)}:host input::-moz-placeholder{color:rgba(26,26,35,.38);opacity:1}:host input:-ms-input-placeholder{color:rgba(26,26,35,.38)}:host input:-moz-placeholder{color:rgba(26,26,35,.38);opacity:1}:host input:required.is-empty{background-color:#fff;background-image:url(\'data:image/svg+xml;charset=utf8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 32 32"><path fill="%23ffe433" d="M31.32 21.69l-.09.18-2.48 4.35c-.36.54-.77.62-1.25.27-.12 0-.2 0-.2-.09L19.53 22v9.37a1.26 1.26 0 0 1-.72.67h-5.26c-.59 0-.83-.3-.83-.89 0-.12.15-.21.15-.27V22l-8 4.71h-.12c-.42.66-.8.21-1.16-.27L1 21.82a.82.82 0 0 1 .35-1.26l.18-.1L9 16 .87 11.47v-.09c0-.36-.39-.74-.09-1.16l2.75-4.35v-.09c0-.42.82-.54 1.29-.36l8 4.62V.89c0-.59.18-.89.77-.89h5c.65 0 .91.3.91.89V10l7.94-4.53c.48-.29.72-.21 1.08.27l2.32 4.35v.09c.66.48.45.89-.08 1.25L23 16l7.91 4.53v.09c-.04.18.53.54.41 1.07z"/></svg>\');border-color:#d2d7d9}:host input.ng-invalid.ng-touched,:host input:required.is-empty{background-position:.25em;background-repeat:no-repeat;background-size:1em 1em;padding-left:1.5em}:host input.ng-invalid.ng-touched{background-color:#fff8cc;background-image:url(\'data:image/svg+xml;charset=utf8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 32 32"><path fill="rgba(26, 26, 35, 0.66)" d="M20.21 20.21h-8.42L10.95 0h10.1l-.84 20.21zm-8.42 3.37h8.42V32h-8.42z"/></svg>\')}:host input.ng-invalid.ng-touched:not(:focus){border-color:#ffe433}:host input.is-pending.ng-invalid,:host input.is-pending.ng-pending,:host input.is-pending.ng-valid{background-image:url(\'data:image/svg+xml;charset=utf8,<svg xmlns="http://www.w3.org/2000/svg" width="40" height="40" viewBox="0 0 50 50"><path fill="%230084a9" d="M43.935 25.145c0-10.318-8.364-18.683-18.683-18.683-10.318 0-18.683 8.365-18.683 18.683h4.068c0-8.071 6.543-14.615 14.615-14.615s14.615 6.543 14.615 14.615h4.068z"><animateTransform attributeType="xml" attributeName="transform" type="rotate" from="0 25 25" to="360 25 25" dur="0.8s" repeatCount="indefinite"/></path></svg>\');background-position:.25em;background-repeat:no-repeat;background-size:1em 1em;padding-left:1.5em}:host input:focus,:host input:focus.is-empty{border-color:#0084a9;box-shadow:0 0 0 1px #0084a9;position:relative;z-index:1}:host input:disabled{background-color:rgba(26,26,35,.1);border-color:#d2d7d9;color:rgba(26,26,35,.66);opacity:.65}:host input:disabled:required,:host input:disabled:required.is-empty{background-color:rgba(26,26,35,.1);background-image:none;border-color:#d2d7d9;padding-left:.5em}:host input.is-uppercase:not(.is-empty){text-transform:uppercase}:host textarea{background-clip:padding-box;background-color:#fff;background-image:none;border:.0625rem solid #d2d7d9;border-radius:0;display:block;height:auto;line-height:1.25;padding:.3125em .5em;resize:none;width:100%}:host textarea::-moz-selection{background-color:#0084a9;color:#fff}:host textarea::selection{background-color:#0084a9;color:#fff}:host textarea::-webkit-input-placeholder{color:rgba(26,26,35,.38)}:host textarea::-moz-placeholder{color:rgba(26,26,35,.38);opacity:1}:host textarea:-ms-input-placeholder{color:rgba(26,26,35,.38)}:host textarea:-moz-placeholder{color:rgba(26,26,35,.38);opacity:1}:host textarea:required.is-empty{background-color:#fff;background-image:url(\'data:image/svg+xml;charset=utf8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 32 32"><path fill="%23ffe433" d="M31.32 21.69l-.09.18-2.48 4.35c-.36.54-.77.62-1.25.27-.12 0-.2 0-.2-.09L19.53 22v9.37a1.26 1.26 0 0 1-.72.67h-5.26c-.59 0-.83-.3-.83-.89 0-.12.15-.21.15-.27V22l-8 4.71h-.12c-.42.66-.8.21-1.16-.27L1 21.82a.82.82 0 0 1 .35-1.26l.18-.1L9 16 .87 11.47v-.09c0-.36-.39-.74-.09-1.16l2.75-4.35v-.09c0-.42.82-.54 1.29-.36l8 4.62V.89c0-.59.18-.89.77-.89h5c.65 0 .91.3.91.89V10l7.94-4.53c.48-.29.72-.21 1.08.27l2.32 4.35v.09c.66.48.45.89-.08 1.25L23 16l7.91 4.53v.09c-.04.18.53.54.41 1.07z"/></svg>\');border-color:#d2d7d9}:host textarea.ng-invalid.ng-touched,:host textarea:required.is-empty{background-position:.25em .5rem;background-repeat:no-repeat;background-size:1em 1em;padding-left:1.5em}:host textarea.ng-invalid.ng-touched{background-color:#fff8cc;background-image:url(\'data:image/svg+xml;charset=utf8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 32 32"><path fill="rgba(26, 26, 35, 0.66)" d="M20.21 20.21h-8.42L10.95 0h10.1l-.84 20.21zm-8.42 3.37h8.42V32h-8.42z"/></svg>\')}:host textarea.ng-invalid.ng-touched:not(:focus){border-color:#ffe433}:host textarea.is-pending.ng-invalid,:host textarea.is-pending.ng-pending,:host textarea.is-pending.ng-valid{background-image:url(\'data:image/svg+xml;charset=utf8,<svg xmlns="http://www.w3.org/2000/svg" width="40" height="40" viewBox="0 0 50 50"><path fill="%230084a9" d="M43.935 25.145c0-10.318-8.364-18.683-18.683-18.683-10.318 0-18.683 8.365-18.683 18.683h4.068c0-8.071 6.543-14.615 14.615-14.615s14.615 6.543 14.615 14.615h4.068z"><animateTransform attributeType="xml" attributeName="transform" type="rotate" from="0 25 25" to="360 25 25" dur="0.8s" repeatCount="indefinite"/></path></svg>\');background-position:.25em .5rem;background-repeat:no-repeat;background-size:1em 1em;padding-left:1.5em}:host textarea:focus,:host textarea:focus.is-empty{border-color:#0084a9;box-shadow:0 0 0 1px #0084a9;position:relative;z-index:1}:host textarea:disabled{background-color:rgba(26,26,35,.1);border-color:#d2d7d9;color:rgba(26,26,35,.66);opacity:.65}:host textarea:disabled:required,:host textarea:disabled:required.is-empty{background-color:rgba(26,26,35,.1);background-image:none;border-color:#d2d7d9;padding-left:.5em}:host textarea.is-uppercase:not(.is-empty){text-transform:uppercase}:host(.textbox-group-input:not(:last-child)){flex:1 1 0%;width:1px}:host(.textbox-group-input:not(:last-child)) .control{margin-bottom:0}:host(.textbox-group-input:not(:last-child)) .control.is-readonly input{border-right-width:.0625rem}:host(.textbox-group-input:not(:last-child)) input{border-bottom-right-radius:0;border-right-width:0;border-top-right-radius:0}:host(.textbox-group-input:not(:last-child)) input:focus{border-right-width:.0625rem;position:relative;z-index:1}:host(.text-truncate) input{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}:host(.is-monospace) input,:host(.is-monospace) textarea,:host-context(.is-monospace) input,:host-context(.is-monospace) textarea{font-family:Consolas,Andale Mono WT,Andale Mono,Lucida Console,Lucida Sans Typewriter,DejaVu Sans Mono,Bitstream Vera Sans Mono,Liberation Mono,Nimbus Mono L,Monaco,Courier New,Courier,monospace}']}]}],$.ctorParameters=function(){return[{type:F},{type:R},{type:i.TranslateService}]},$.propDecorators={autocomplete:[{type:o.Input}],type:[{type:o.Input}],placeholder:[{type:o.Input}],maxlength:[{type:o.Input}],minlength:[{type:o.Input}],rows:[{type:o.Input}],selectOnAutofocus:[{type:o.Input}],upperCase:[{type:o.Input}],inputElement:[{type:o.ViewChild,args:["textboxInput"]}]};var Y=function(){function e(e,t){this.status="hasData",this.message="",this.setStatus(e,t)}return e.prototype.setStatus=function(e,t,o,n,r){this.status=e,this.message=t||"",this.action=o||void 0,this.noDataTemplate=n||void 0,this.overlayClassList=r||""},e}(),X=function(){function e(){this.status="hasData"}return e.prototype.setStatus=function(e,t,o,n){this.status=e,this.message=t||"",this.action=o||void 0,this.noDataTemplate=n||void 0},e.prototype.actionClicked=function(e){this.action&&this.action.onClick&&this.action.onClick(e)},e}();X.decorators=[{type:o.Component,args:[{selector:"[ecOverlay]",template:'\x3c!-- Transcluded Content --\x3e\r\n<ng-content *ngIf="displayAsMask || (!displayAsMask && status === \'hasData\')"></ng-content>\r\n\x3c!--Used by GI tests to know the overlay status whether we use ngIf or mask version. No visual impact--\x3e\r\n<span [hidden]="true"\r\n\t class="overlay-status-{{status}}"></span>\r\n\x3c!-- Overlay goes last so it is rendered on top of preceding content due to source order --\x3e\r\n<div *ngIf="status !== \'hasData\'"\r\n\t class="overlay flex-grow {{overlayClassList}}"\r\n\t [ngClass]="{\'not-mask\': !displayAsMask,\r\n\t\t\t\t\'overlay-error\': status === \'error\',\r\n\t\t\t\t\'overlay-nodata\': status === \'noData\',\r\n\t\t\t\t\'overlay-pending\': status === \'pending\'}">\r\n\r\n\t\x3c!--Pending Spinner--\x3e\r\n\t<ec-spinner [hidden]="status !== \'pending\'"></ec-spinner>\r\n\r\n\t<ng-template [ngIf]="status === \'noData\' && noDataTemplate">\r\n\t\t<ng-container *ngTemplateOutlet="noDataTemplate"></ng-container>\r\n\t</ng-template>\r\n\r\n\t<ng-container *ngIf="(status === \'noData\' && !noDataTemplate) || status !== \'noData\'">\r\n\t\t\x3c!--Status Message--\x3e\r\n\t\t<div id="statusMessage"\r\n\t\t\t class="message"\r\n\t\t\t *ngIf="message"\r\n\t\t\t [ngClass]="{\'error\': status === \'error\', \'mt-1\': status === \'pending\'}"\r\n\t\t\t [innerHtml]="message | translate">\r\n\t\t</div>\r\n\r\n\t\t\x3c!-- Action --\x3e\r\n\t\t<ec-button type="common"\r\n\t\t\t\t class="mt-3"\r\n\t\t\t\t *ngIf="action?.onClick"\r\n\t\t\t\t [icon]="action?.icon"\r\n\t\t\t\t (clicked)="actionClicked($event)"\r\n\t\t\t\t [label]="action?.label"\r\n\t\t\t\t [hidden]="status === \'pending\'">\r\n\t\t</ec-button>\r\n\t</ng-container>\r\n\r\n</div>',styles:[":host{position:relative}:host(.bg-body)>.overlay{background-color:#f1f3f4}:host(.bg-body).is-translucent>.overlay{background-color:rgba(241,243,244,.7)}:host(.bg-content)>.overlay{background-color:#fff}:host(.bg-content).is-translucent>.overlay{background-color:hsla(0,0%,100%,.7)}.overlay{align-items:center;background-color:#fff;bottom:0;display:flex;flex-direction:column;justify-content:center;left:0;padding:3rem 4rem;position:absolute;right:0;top:0;z-index:20}.overlay.not-mask{min-height:100%;position:relative}.message{color:rgba(26,26,35,.66);font-size:1.25rem}.message.error{color:#cd1d20;font-size:1.25rem}"]}]}],X.propDecorators={status:[{type:o.Input}],message:[{type:o.Input}],action:[{type:o.Input}],noDataTemplate:[{type:o.Input}],displayAsMask:[{type:o.Input}],overlayClassList:[{type:o.Input}]};var K=function(){this.id="",this.textboxRequired=!1,this.textboxUppercase=!1,this.saveLabel="Save",this.saveButtonType="primary",this.cancelLabel="Cancel",this.saveOnEnter=!1,this.alternateSaveLabel=void 0,this.alternateSaveButtonType=void 0,this.saveSource="primary",this.inlineConfirmPendingMessage=""},Z=function(){function e(){this.dialogId="Confirm",this.formGroup=new n.FormGroup({}),this.status=new Y("hasData"),this.onDialogSave=new o.EventEmitter,this.onDialogCancel=new o.EventEmitter}return e.prototype.onOpen=function(e){this.context=e,this.dialogId=e.id,this.context.alternateSaveLabel&&(this.context.saveOnEnter=!1)},e.prototype.ngOnInit=function(){this.addFormControls()},e.prototype.onSave=function(e){if(this.formGroup.markAllAsTouched(),this.formGroup.valid){var t=this.formGroup.getRawValue();t.textbox&&(this.context.textboxValue=t.textbox),this.context.saveSource=e,this.context.inlineConfirmAction?this.doInlineConfirmAction():this.onDialogSave.emit(this.context)}else this.context.validationErrorMessage&&(this.error=this.context.validationErrorMessage)},e.prototype.onCancel=function(){this.onDialogCancel.emit()},e.prototype.addFormControls=function(){if(this.context.textboxType){var e=[];this.context.textboxRequired&&e.push(n.Validators.required),this.context.textboxValidators&&e.push.apply(e,k(this.context.textboxValidators)),this.formGroup.addControl("textbox",new n.FormControl("",e))}},e.prototype.doInlineConfirmAction=function(){return x(this,void 0,void 0,(function(){var e,t=this;return w(this,(function(o){switch(o.label){case 0:return this.status.setStatus("pending",this.context.inlineConfirmPendingMessage),[4,this.context.inlineConfirmAction()];case 1:return e=o.sent(),this.status.setStatus("noData",e.message,{id:"inlineConfirmClose",label:"Close",icon:e.isSuccess?"icon-check-circle":"icon-error",classlist:e.isSuccess?"font-color-success":"font-color-error",onClick:function(){e.isSuccess?t.onDialogSave.emit(t.context):t.onDialogCancel.emit()}}),[2]}}))}))},e}();Z.decorators=[{type:o.Component,args:[{selector:"ec-confirm",template:'<section ecOverlay\r\n [status]="status?.status"\r\n [message]="status?.message"\r\n [action]="status?.action"\r\n [noDataTemplate]="inlineConfirmResult"\r\n overlayClassList="p-0"\r\n class="bg-body flex-grow d-flex flex-column">\r\n <ec-banner *ngIf="error" [text]="error | translate"></ec-banner>\r\n <div class="flex-grow confirm-content text-body-1">\r\n <h2 class="font-weight-bold mb-3" *ngIf="context?.title">{{context?.title}}</h2>\r\n <div *ngIf="context?.message" [innerHtml]="context?.message | translate"></div>\r\n <form [formGroup]="formGroup"\r\n class="mt-auto">\r\n <ec-textbox id="confirmTextbox"\r\n *ngIf="context?.textboxType"\r\n [autofocus]="true"\r\n [formModel]="formGroup.get(\'textbox\')"\r\n [label]="context?.textboxLabel"\r\n [type]="context?.textboxType"\r\n [upperCase]="context?.textboxUppercase">\r\n </ec-textbox>\r\n\r\n <div class="d-flex pt-2 flex-row-reverse">\r\n <ec-button id="saveConfirmButton"\r\n class="ml-2"\r\n [type]="context?.saveButtonType ? context?.saveButtonType : \'primary\'"\r\n [label]="context?.saveLabel ? context?.saveLabel : \'Save\'"\r\n [autofocus]="!context?.textboxType"\r\n [isSubmit]="context?.saveOnEnter"\r\n (clicked)="onSave(\'primary\')">\r\n </ec-button>\r\n <ec-button id="alternateSaveConfirmButton"\r\n *ngIf="context?.alternateSaveLabel"\r\n class="ml-2"\r\n [type]="context?.alternateSaveButtonType ? context?.alternateSaveButtonType : \'primary\'"\r\n [label]="context?.alternateSaveLabel"\r\n (clicked)="onSave(\'alternate\')">\r\n </ec-button>\r\n <ec-button id="cancelConfirmButton"\r\n class="ml-auto"\r\n type="secondary"\r\n [label]="context?.cancelLabel ? context?.cancelLabel : \'Cancel\'"\r\n (clicked)="onCancel()">\r\n </ec-button>\r\n </div>\r\n </form>\r\n </div>\r\n</section>\r\n\r\n<ng-template #inlineConfirmResult>\r\n <section class="flex-grow align-self-stretch confirm-content text-body-1">\r\n <div class="d-flex">\r\n <i class="ec-icon {{status?.action?.icon}} {{status?.action?.classlist}} inline-confirm-result-icon"></i>\r\n <div [innerHTML]="status?.message | translate"></div>\r\n </div>\r\n <div class="d-flex pt-2 mt-auto">\r\n <ec-button id="inlineConfirmClose"\r\n label="Close"\r\n type="secondary"\r\n class="ml-auto"\r\n (clicked)="status?.action?.onClick!()"\r\n [autofocus]="true">\r\n </ec-button>\r\n </div>\r\n </section>\r\n</ng-template>',styles:[":host{display:flex;width:100%}.confirm-content{display:flex;flex-direction:column;padding:1.5rem}.inline-confirm-result-icon{margin:.0625rem .25rem .0625rem 0}"]}]}],Z.ctorParameters=function(){return[]},Z.propDecorators={context:[{type:o.Input}],onDialogSave:[{type:o.Output}],onDialogCancel:[{type:o.Output}]};var J=function(e,t,o){void 0===t&&(t=""),void 0===o&&(o="openStart"),this.eventId=e,this.dialogId=t,this.dialogAction=o},Q=function(e){function t(t,o,n){var r=e.call(this,d.uniqueId())||this;return r.content=t,r.context=o,r.options=n,r}return v(t,e),t}(J),ee=function(e){function t(t,o){return e.call(this,t,o,"open")||this}return v(t,e),t}(J),te=function(e){function t(t,o,n,r){void 0===n&&(n=!1);var i=e.call(this,t,o,"close")||this;return i.dialogResult=new ne(n,r),i}return v(t,e),t}(J),oe=function(e){function t(t){var o=e.call(this,"latest","latest","closeLatest")||this;return o.dialogResult=t,o}return v(t,e),t}(J),ne=function(e,t){this.save=e,this.context=t},re=function(){function e(){this.events=new l.Subject}return e.prototype.openDialog=function(e,t,o,n){(n=n||{}).size=t;var r=new Q(e,o,n),i=this.events.pipe(c.skipWhile((function(e){return!(e instanceof te)||e.eventId!==r.eventId})),c.map((function(e){return e.dialogResult})),c.take(1));return this.triggerEvent(r),i},e.prototype.closeLatestDialog=function(e){this.triggerEvent(new oe(e))},e.prototype.confirm=function(e){return this.openDialog(Z,"small",e)},e.prototype.triggerEvent=function(e){this.events.next(e)},e}();re.ɵprov=o.ɵɵdefineInjectable({factory:function(){return new re},token:re,providedIn:"root"}),re.decorators=[{type:o.Injectable,args:[{providedIn:"root"}]}];var ie=function(){function e(e,t,n,r){this.componentFactoryResolver=e,this.windowService=t,this.dialogService=n,this.documentRef=r,this.isOpen=!1,this.fadeIn=!1,this.fadeOut=!1,this.displayAsPanel=!1,this.alignToTop=!1,this.size="small",this.opened=new o.EventEmitter,this.closed=new o.EventEmitter,this.previouslyFocusedElement=null}return e.prototype.onOverlayClick=function(e){"EC-DIALOG"===e.target.tagName&&this.displayAsPanel&&this.close(new ne(!1))},e.prototype.ngOnInit=function(){this.content&&this.open(this.content,this.context,this.options)},e.prototype.ngOnDestroy=function(){this.previouslyFocusedElement&&this.previouslyFocusedElement.focus()},e.prototype.open=function(e,t,n){var r,i;return x(this,void 0,void 0,(function(){var a,s,d=this;return w(this,(function(p){switch(p.label){case 0:return this.isOpen?[3,4]:(a=null===(r=this.documentRef)||void 0===r?void 0:r.activeElement,this.previouslyFocusedElement=(null===(i=null==a?void 0:a.shadowRoot)||void 0===i?void 0:i.activeElement)||a,n?(n.alignToTop&&(this.alignToTop=!0),n.displayAsPanel&&(this.displayAsPanel=!0),void 0===n.canOpenDialog?[3,2]:[4,n.canOpenDialog()]):[3,2]);case 1:if(!p.sent())return this.close(new ne(!1)),[2];p.label=2;case 2:return"number"==typeof this.size?this.width=this.size:this.width=void 0,this.minWidth=null==n?void 0:n.minWidth,this.fadeIn=!0,e instanceof o.TemplateRef?this.contentContainer.createEmbeddedView(e):(s=this.componentFactoryResolver.resolveComponentFactory(e),this.componentRef=this.contentContainer.createComponent(s)),this.isOpen=!0,this.openDialogComponent(t),[4,l.timer(this.displayAsPanel?250:125).pipe(c.take(1),c.tap((function(){var e=d.getDialogId();d.fadeIn=!1,d.opened.emit(e),d.dialogService.triggerEvent(new ee(d.dialogOpenStartEventId,e))}))).toPromise()];case 3:p.sent(),this.handleCloseOnResize(),p.label=4;case 4:return[2]}}))}))},e.prototype.close=function(e){var t=this;this.fadeOut=!0;var o=this.getDialogId();setTimeout((function(){var n;t.isOpen=!1,t.fadeOut=!1,null===(n=t.contentContainer)||void 0===n||n.clear(),t.componentRef=void 0,t.closed.emit(e),t.dialogService.triggerEvent(new te(t.dialogOpenStartEventId,o,null==e?void 0:e.save,null==e?void 0:e.context)),t.resetOptions()}),this.displayAsPanel?225:100)},e.prototype.openDialogComponent=function(e){var t=this;if(this.componentRef&&this.componentRef.instance){var o=this.componentRef.instance;o.onOpen&&o.onOpen(e),o.onDialogCancel.pipe(c.takeUntil(this.closed)).subscribe((function(){t.close(new ne(!1))})),o.onDialogSave.pipe(c.takeUntil(this.closed)).subscribe((function(e){t.close(new ne(!0,e))}))}},e.prototype.resetOptions=function(){this.alignToTop=!1,this.displayAsPanel=!1},e.prototype.handleCloseOnResize=function(){var e=this;this.options&&this.options.closeOnResize&&this.windowService.resized.pipe(c.takeUntil(this.closed),c.take(1)).subscribe((function(){e.close(new ne(!1))}))},e.prototype.getDialogId=function(){var e;return(null===(e=this.componentRef)||void 0===e?void 0:e.instance.dialogId)||""},e}();ie.decorators=[{type:o.Component,args:[{selector:"ec-dialog",template:'<article [style.width.px]="width" [style.min-width]="minWidth" class="dialog-{{size}}" cdkTrapFocus cdkTrapFocusAutoCapture><ng-template #content></ng-template></article>',styles:["@-webkit-keyframes spin{0%{transform:rotate(0)}to{transform:rotate(1turn)}}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(1turn)}}@-webkit-keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@-webkit-keyframes slideIn{0%{transform:translateX(100%)}to{transform:translateX(0)}}@keyframes slideIn{0%{transform:translateX(100%)}to{transform:translateX(0)}}:host{align-items:center;background-color:rgba(26,26,35,.5);bottom:0;display:none;justify-content:center;left:0;position:fixed;right:0;top:0;z-index:60}:host.is-open{display:flex}:host.fade-in{-webkit-animation-duration:125ms;-webkit-animation-fill-mode:forwards;-webkit-animation-timing-function:ease-in-out;animation-duration:125ms;animation-fill-mode:forwards;animation-timing-function:ease-in-out}:host.fade-in,:host.fade-out{-webkit-animation-name:fadeIn;animation-name:fadeIn}:host.fade-out{-webkit-animation-duration:.1s;-webkit-animation-fill-mode:forwards;-webkit-animation-timing-function:ease-in-out;animation-direction:reverse;animation-duration:.1s;animation-fill-mode:forwards;animation-timing-function:ease-in-out}:host.is-panel{background-color:transparent}:host.is-panel article{border-bottom:0;border-right:0;border-top:0;bottom:0;box-shadow:0 0 8px rgba(26,26,35,.12);max-height:none;position:absolute;right:0;top:0}:host.is-panel.fade-in{-webkit-animation:none;animation:none}:host.is-panel.fade-in article{-webkit-animation-duration:.25s;-webkit-animation-fill-mode:forwards;-webkit-animation-name:slideIn;-webkit-animation-timing-function:ease-out;animation-duration:.25s;animation-fill-mode:forwards;animation-name:slideIn;animation-timing-function:ease-out}:host.is-panel.fade-out{-webkit-animation:none;animation:none}:host.is-panel.fade-out article{-webkit-animation-duration:225ms;-webkit-animation-fill-mode:forwards;-webkit-animation-name:slideIn;-webkit-animation-timing-function:ease-in;animation-direction:reverse;animation-duration:225ms;animation-fill-mode:forwards;animation-name:slideIn;animation-timing-function:ease-in}:host.is-top-aligned{align-items:flex-start}:host.is-top-aligned article{margin-top:20vh;min-height:auto}article{background-clip:padding-box;background-color:#f1f3f4;border-radius:0;box-shadow:0 0 .625rem rgba(26,26,35,.2);display:flex;flex:none;max-height:90vh;max-width:90vw;min-height:9rem}.dialog-xsmall{width:20rem}.dialog-small{width:30rem}.dialog-medium{width:40rem}.dialog-large{width:50rem}.dialog-xlarge{width:60rem}.dialog-full{width:90vw}"]}]}],ie.ctorParameters=function(){return[{type:o.ComponentFactoryResolver},{type:U},{type:re},{type:Document,decorators:[{type:o.Inject,args:[t.DOCUMENT]}]}]},ie.propDecorators={isOpen:[{type:o.HostBinding,args:["class.is-open"]}],fadeIn:[{type:o.HostBinding,args:["class.fade-in"]}],fadeOut:[{type:o.HostBinding,args:["class.fade-out"]}],displayAsPanel:[{type:o.HostBinding,args:["class.is-panel"]}],alignToTop:[{type:o.HostBinding,args:["class.is-top-aligned"]}],onOverlayClick:[{type:o.HostListener,args:["click",["$event"]]}],size:[{type:o.Input}],content:[{type:o.Input}],context:[{type:o.Input}],options:[{type:o.Input}],dialogOpenStartEventId:[{type:o.Input}],opened:[{type:o.Output}],closed:[{type:o.Output}],contentContainer:[{type:o.ViewChild,args:["content",{read:o.ViewContainerRef,static:!0}]}]};var ae=function(){};ae.decorators=[{type:o.Component,args:[{selector:"ec-spinner",template:'<div class="spinner">\r\n <span class="spinner-dot"></span>\r\n <span class="spinner-dot"></span>\r\n <span class="spinner-dot"></span>\r\n <span class="spinner-dot"></span>\r\n</div>',styles:["@-webkit-keyframes sk-bouncedelay{0%,80%,to{opacity:0}40%{opacity:1}}@keyframes sk-bouncedelay{0%,80%,to{opacity:0}40%{opacity:1}}.spinner{display:flex}.spinner-dot{-webkit-animation:sk-bouncedelay 1.7s ease-in-out infinite both;animation:sk-bouncedelay 1.7s ease-in-out infinite both;background-color:#0084a9;height:.75rem;margin-right:.25rem;width:.75rem}.spinner-dot:first-child{-webkit-animation-delay:-.6s;animation-delay:-.6s}.spinner-dot:nth-child(2){-webkit-animation-delay:-.4s;animation-delay:-.4s}.spinner-dot:nth-child(3){-webkit-animation-delay:-.2s;animation-delay:-.2s}:host(.spinner-small) .spinner-dot{-webkit-animation:sk-bouncedelay 1.7s ease-in-out infinite both;animation:sk-bouncedelay 1.7s ease-in-out infinite both;background-color:#0084a9;height:.5rem;margin-right:.1666666667rem;width:.5rem}:host(.spinner-small) .spinner-dot:first-child{-webkit-animation-delay:-.6s;animation-delay:-.6s}:host(.spinner-small) .spinner-dot:nth-child(2){-webkit-animation-delay:-.4s;animation-delay:-.4s}:host(.spinner-small) .spinner-dot:nth-child(3){-webkit-animation-delay:-.2s;animation-delay:-.2s}"]}]}];var se=function(){function e(){}return e.createSpy=function(e){var t=Object.getOwnPropertyNames(e.prototype);return jasmine.createSpyObj(t)},e}(),le=function(){function e(){this.opened=new o.EventEmitter,this.closed=new o.EventEmitter,this.displayAsPanel=!1}return e.prototype.open=function(e,t,o){return x(this,void 0,void 0,(function(){return w(this,(function(e){return this.lastContext=t,this.componentRef={instance:new ce},this.opened.emit(),[2]}))}))},e.prototype.close=function(e){this.closed.emit(e)},e}();le.decorators=[{type:o.Directive}],le.propDecorators={size:[{type:o.Input}],opened:[{type:o.Output}],closed:[{type:o.Output}]};var ce=function(){var e=this;this.dialogId="MockID",this.onOpen=function(t){e.openArg=t},this.onDialogSave=new o.EventEmitter,this.onDialogCancel=new o.EventEmitter,this.destroyed=new l.Subject},de=function(){function e(){}return e.prototype.transform=function(e){return"01/01/2017"},e}();function pe(){var e=se.createSpy(r.Router);return e.isActive.and.returnValue(!1),e.navigate.and.returnValue(Promise.resolve(!0)),Object.defineProperty(e,"events",{value:new l.Subject,configurable:!0}),Object.defineProperty(e,"url",{value:"/current/route/url",writable:!0}),e}de.decorators=[{type:o.Pipe,args:[{name:"dateDisplay"}]}];var ue=function(){this.snapshot={paramMap:{get:function(e){return null}},queryParamMap:{get:function(e){return null},getAll:function(e){return[]},has:function(e){return!1}},routeConfig:{}},this.paramMap=new l.Subject,this.queryParamMap=new l.Subject,this.routeConfig={}};ue.decorators=[{type:o.Injectable}];var he=function(e){function t(t,o){var n=e.call(this,t,o)||this;return n.validationMessageService=t,n.formGroupHelper=o,n.type="radio",n.options=[],n.direction="row",n.name="",n}return v(t,e),t.prototype.ngOnInit=function(){var t=this;e.prototype.ngOnInit.call(this),this.currentClasses=[],"toggle"===this.type?this.currentClasses.push("radio-group-toggle"):"column"===this.direction&&this.currentClasses.push("radio-group-column"),this.formModel.valueChanges.subscribe((function(){void 0!==t.formModel.value&&null!==t.formModel.value||t.formModel.setValue(t.options[0].value)}))},t.prototype.ngAfterViewInit=function(){this.autofocus&&this.inputElement.nativeElement.focus(),this.options.length>5&&"toggle"===this.type&&console.warn("Radio button components with a type of toggle cannot have more than 5 options")},t}(L);he.decorators=[{type:o.Component,args:[{selector:"ec-radiobutton",template:'<div class="control"\r\n [class.control-label-bottom]="labelPosition === \'bottom\'">\r\n <label *ngIf="label"\r\n ngPreserveWhitespaces>\r\n <span>{{label | translate}}</span>\r\n\r\n <span *ngIf="validationErrors.length > 0 && formModel.touched && formModel.invalid">{{validationErrors | translate}}</span>\r\n </label>\r\n\r\n\r\n <div class="radio-group {{\'toggle-options-\' + options.length}}"\r\n [ngClass]="currentClasses"\r\n [class.is-disabled]="formModel.disabled"\r\n [class.is-readonly]="readonly">\r\n\r\n \x3c!-- RadioButton type="toggle"--\x3e\r\n \x3c!-- There are two ng-templates here due to the fact you can\'t have ngIf and ngFor on the same element --\x3e\r\n <ng-container *ngIf="type === \'toggle\'">\r\n <ng-container *ngFor="let option of options; index as i; first as isFirst">\r\n \x3c!-- The input has two name attributes set, one is for the form model and one is for the broswer. With one set\r\n the tabbing did not work, and with the other the controls were all linked together. They both need set\r\n for the best of both worlds --\x3e\r\n <input [attr.id]="inputId + i.toString()"\r\n [formControl]="formModel"\r\n type="radio"\r\n tabindex="{{tabindex}}"\r\n [value]="option.value"\r\n #radioInput\r\n name="{{name}}"\r\n attr.name="{{name}}"\r\n [attr.cdkFocusInitial]="(autofocus && isFirst) || null">\r\n <label [attr.for]="inputId + i.toString()"\r\n title="{{ option.tooltip | translate}}">\r\n <i class="ec-icon {{option.icon}}" *ngIf="option.icon"></i>\r\n <span id="{{inputId}}_label{{i.toString()}}" *ngIf="option.label">{{option.label | translate}}</span>\r\n </label>\r\n </ng-container>\r\n <a>\r\n <div class="toggle-handle"></div>\r\n </a>\r\n <div class="toggle-focused"></div>\r\n </ng-container>\r\n\r\n \x3c!-- RadioButton type="radio"--\x3e\r\n \x3c!-- There are two ng-templates here due to the fact you can\'t have ngIf and ngFor on the same element --\x3e\r\n <ng-container *ngIf="type === \'radio\'">\r\n <ng-container *ngFor="let option of options; index as i; first as isFirst">\r\n <label class=\'radio-button\'\r\n title="{{ option.tooltip | translate}}">\r\n \x3c!-- The input has two name attributes set, one is for the form model and one is for the broswer. With one set\r\n the tabbing did not work, and with the other the controls were all linked together. They both need set\r\n for the best of both worlds --\x3e\r\n <input [attr.id]="inputId + i.toString()"\r\n class="input"\r\n [formControl]="formModel"\r\n type="radio"\r\n value="{{option.value}}"\r\n #radioInput\r\n tabindex="{{tabindex}}"\r\n name="{{name}}"\r\n attr.name="{{name}}"\r\n [attr.cdkFocusInitial]="(autofocus && isFirst) || null">\r\n <span class="indicator"></span>\r\n <span id="{{inputId}}_label{{i.toString()}}"\r\n class="label"\r\n *ngIf="option.label"\r\n [innerHtml]="option.label | translate"></span>\r\n </label>\r\n </ng-container>\r\n </ng-container>\r\n\r\n </div>\r\n\r\n</div>\r\n',styles:['@-webkit-keyframes spin{0%{transform:rotate(0)}to{transform:rotate(1turn)}}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(1turn)}}:host{color:#1a1a23;display:block;font-family:Roboto,-apple-system,BlinkMacSystemFont,Segoe UI,Oxygen,Ubuntu,Fira Sans,Droid Sans,Helvetica Neue,sans-serif;font-size:1rem;margin-bottom:1rem;width:100%}:host :host-context(.form-condensed){margin-bottom:.5rem}:host .control{display:flex;flex-direction:column;width:100%}:host .control.control-label-bottom{flex-direction:column-reverse}:host .control.control-label-left{flex-direction:row}:host .control.control-label-left label{margin-right:.25rem}:host .control.control-label-right{flex-direction:row-reverse}:host .control.control-label-right label{margin-left:.25rem}:host .control.control-label-left,:host .control.control-label-right{align-items:center}:host .control.control-label-left label,:host .control.control-label-right label{flex:1 1;margin-bottom:0;margin-top:0}:host .control.control-label-left .control-input,:host .control.control-label-right .control-input{flex:2 2}:host .control.is-readonly input,:host .control.is-readonly select{-moz-user-select:none;-ms-user-select:none;-webkit-user-select:none;background-clip:border-box;background-color:rgba(26,26,35,.12);background-image:none;border-color:transparent;color:#1a1a23;opacity:1;overflow:hidden;pointer-events:none;user-select:none;white-space:nowrap}:host .control.invalid .textbox-group-input ::ng-deep .control input.ng-invalid,:host .control.invalid .textbox-group-input ::ng-deep .control input.ng-valid{background-color:#fff8cc;background-image:url(\'data:image/svg+xml;charset=utf8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 32 32"><path fill="rgba(26, 26, 35, 0.66)" d="M20.21 20.21h-8.42L10.95 0h10.1l-.84 20.21zm-8.42 3.37h8.42V32h-8.42z"/></svg>\');background-position:.25em;background-repeat:no-repeat;background-size:1em 1em;padding-left:1.5em}:host .control.invalid .textbox-group-input ::ng-deep .control input.ng-invalid:not(:focus),:host .control.invalid .textbox-group-input ::ng-deep .control input.ng-valid:not(:focus){border-color:#ffe433}:host .control.invalid:not(.open) .textbox-group-btn-right ::ng-deep button{background-color:#fff8cc}:host .control.invalid:not(.open) .textbox-group-btn-right ::ng-deep button:not(:focus){border-color:#ffe433}:host .textbox-group{display:flex;position:relative}:host input:focus,:host select:focus,:host textarea:focus{outline:none}:host(.w-auto){width:auto}.control>label{color:rgba(26,26,35,.66);display:block;font-size:.75rem;line-height:1;margin:.375rem 0}.radio-group{display:flex;flex-wrap:wrap}.radio-group-column{flex-direction:column}.radio-group-column .radio-button{margin-right:auto}.radio-group.is-disabled .radio-button{cursor:default}.radio-group.is-readonly .radio-button{pointer-events:none}.radio-group.is-readonly .radio-button .input{opacity:0}.radio-group.is-readonly .radio-button .indicator{background-color:rgba(26,26,35,.12);border:0}.radio-group.is-readonly .radio-button .indicator,.radio-group.is-readonly .radio-button .label{color:#1a1a23;opacity:1}.radio-group.is-readonly.radio-group-toggle{-moz-user-select:none;-ms-user-select:none;-webkit-user-select:none;background-clip:border-box;background-color:rgba(26,26,35,.12);background-image:none;border-color:transparent;color:#1a1a23;opacity:1;overflow:hidden;pointer-events:none;user-select:none;white-space:nowrap}.radio-group.is-readonly.radio-group-toggle a,.radio-group.is-readonly.radio-group-toggle input:not(:checked),.radio-group.is-readonly.radio-group-toggle input:not(:checked)+label{display:none}.radio-group.is-readonly.radio-group-toggle input:checked+label{color:inherit;justify-content:flex-start}.radio-button{cursor:pointer;display:inline-flex;margin-bottom:0;position:relative}.radio-button:not(:last-child){margin-right:1rem}.input{margin-top:.5rem;opacity:0;position:absolute;z-index:-1}.input:not(:checked)+.indicator{color:rgba(26,26,35,.18)}.input:not(:checked)+.indicator:before{display:none}.input:focus+.indicator{box-shadow:0 0 0 1px #0084a9;color:#0084a9}.input:disabled+.indicator{background-color:rgba(26,26,35,.1);border-color:rgba(26,26,35,.18)}.input:disabled+.indicator,.input:disabled~.label{color:rgba(26,26,35,.66);opacity:.65}.indicator{align-items:center;background-clip:padding-box;background-color:#fff;border:1px solid;border-radius:50%;color:#0084a9;display:inline-flex;flex:none;height:1em;justify-content:center;margin-top:.5rem;pointer-events:none;width:1em}.indicator:before{background-color:currentColor;border-radius:50%;content:"";display:block;height:.5em;width:.5em}.label{height:2rem;height:auto;line-height:1.25;margin-left:.5rem;min-height:2rem;padding:.375em 0}.radio-group-toggle{background-color:#d2d7d9;border:.0625rem solid #d2d7d9;border-radius:0;color:rgba(26,26,35,.38);display:flex;font-size:1rem;min-height:2em;position:relative}.radio-group-toggle input{opacity:0;position:absolute;z-index:-1}.radio-group-toggle input:checked+label{color:#0084a9}.radio-group-toggle input:checked:last-of-type~a{transform:translateX(100%)}.radio-group-toggle input:focus~.toggle-focused{display:block}.radio-group-toggle .toggle-focused{bottom:0;box-shadow:0 0 0 .125rem #0084a9;display:none;left:0;position:absolute;right:0;top:0}.radio-group-toggle label{align-items:center;cursor:pointer;display:flex;flex:1 1 0%;justify-content:center;line-height:1.1em;margin-bottom:0;padding:.375rem .5rem;position:relative;text-align:center;transition:color .3s ease;z-index:2}.radio-group-toggle label .ec-icon{color:inherit}.radio-group-toggle a{border:.1875rem solid transparent;border-radius:0;display:block;height:100%;left:0;position:absolute;top:0;transition:transform .25s ease;width:50%;z-index:1}.radio-group-toggle a .toggle-handle{background-color:#fff;border-radius:0;height:100%}.radio-group-toggle.is-disabled{background-color:rgba(26,26,35,.1);color:rgba(26,26,35,.66);opacity:.65}.radio-group-toggle.is-disabled label{color:inherit!important;cursor:default}.radio-group-toggle.is-disabled a.toggle-handle{background-color:hsla(0,0%,100%,.38)}.toggle-options-3 a{width:33.3333333333%}.toggle-options-3 input:checked:last-of-type~a{transform:translateX(200%)}.toggle-options-3 input:checked:nth-of-type(2)~a{transform:translateX(100%)}.toggle-options-4 a{width:25%}.toggle-options-4 input:checked:last-of-type~a{transform:translateX(300%)}.toggle-options-4 input:checked:nth-of-type(3)~a{transform:translateX(200%)}.toggle-options-4 input:checked:nth-of-type(2)~a{transform:translateX(100%)}.toggle-options-5 a{width:20%}.toggle-options-5 input:checked:last-of-type~a{transform:translateX(400%)}.toggle-options-5 input:checked:nth-of-type(4)~a{transform:translateX(300%)}.toggle-options-5 input:checked:nth-of-type(3)~a{transform:translateX(200%)}.toggle-options-5 input:checked:nth-of-type(2)~a{transform:translateX(100%)}']}]}],he.ctorParameters=function(){return[{type:F},{type:R}]},he.propDecorators={type:[{type:o.Input}],options:[{type:o.Input}],direction:[{type:o.Input}],name:[{type:o.Input}],inputElement:[{type:o.ViewChild,args:["radioInput"]}]};var me=function(e){function t(t,o){var n=e.call(this,t,o)||this;return n.validationMessageService=t,n.formGroupHelper=o,n.name="",n.ignoreDisabledDependents=!0,n.indeterminate=!1,n.ignoreCall=!1,n.resetDependentSubscriptions=new l.Subject,n}return v(t,e),t.prototype.ngAfterViewInit=function(){this.autofocus&&this.inputElement.nativeElement.focus()},t.prototype.ngOnChanges=function(e){e.dependentCheckboxesGroup&&this.setupDependents()},t.prototype.dispatchEvent=function(e){"click"!==e.type||this.formModel.disabled||this.formModel.patchValue(!this.formModel.value)},t.prototype.setupDependents=function(){var e=this;if(this.dependentCheckboxesGroup){this.resetDependentSubscriptions.next();var t=Object.values(this.dependentCheckboxesGroup.controls);this.updateMasterState(t),this.formModel.valueChanges.pipe(c.distinctUntilChanged(),c.takeUntil(l.merge(this.componentDestroyed,this.resetDependentSubscriptions))).subscribe((function(o){e.ignoreCall||(e.ignoreCall=!0,t.forEach((function(t){t.disabled&&e.ignoreDisabledDependents||t.setValue(o)})),e.indeterminate=!1,e.ignoreCall=!1)})),t.forEach((function(o){o.valueChanges.pipe(c.distinctUntilChanged(),c.takeUntil(l.merge(e.componentDestroyed,e.resetDependentSubscriptions))).subscribe((function(o){!0===o||!1===o?e.ignoreCall||(e.ignoreCall=!0,e.updateMasterState(t),e.ignoreCall=!1):console.error("The value "+o+" is not true or false, which are the only supported values for FormControls in the dependentCheckboxesGroup")}))}))}},t.prototype.updateMasterState=function(e){var t=[],o=function(e){return!0===e.value};(t=this.ignoreDisabledDependents?e.filter((function(e){return e.enabled})):e).every(o)?(this.formModel.setValue(!0),this.indeterminate=!1):t.some(o)?(this.formModel.setValue(!1),this.indeterminate=!0):(this.formModel.setValue(!1),this.indeterminate=!1)},t}(L);me.decorators=[{type:o.Component,args:[{selector:"ec-checkbox",template:'<div class="control">\r\n <label class="checkbox"\r\n [ngClass]="{\'is-disabled\': formModel.disabled, \'no-label\': !label, \'is-readonly\': readonly}">\r\n <input id="{{id}}_input"\r\n #checkboxInput\r\n class=\'input\'\r\n [class.indeterminate]="indeterminate"\r\n [attr.id]="inputId"\r\n [attr.name]="name"\r\n type="checkbox"\r\n tabindex="{{tabindex}}"\r\n [formControl]="formModel"\r\n [attr.cdkFocusInitial]="autofocus || null">\r\n <i class="ec-icon icon-check"></i>\r\n <span id="{{id}}_label"\r\n *ngIf="label"\r\n class="label"\r\n [innerHtml]="label | translate">\r\n </span>\r\n </label>\r\n</div>\r\n',styles:['@-webkit-keyframes spin{0%{transform:rotate(0)}to{transform:rotate(1turn)}}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(1turn)}}:host{color:#1a1a23;display:block;font-family:Roboto,-apple-system,BlinkMacSystemFont,Segoe UI,Oxygen,Ubuntu,Fira Sans,Droid Sans,Helvetica Neue,sans-serif;font-size:1rem;margin-bottom:1rem;width:100%}:host :host-context(.form-condensed){margin-bottom:.5rem}:host .control{display:flex;flex-direction:column;width:100%}:host .control.control-label-bottom{flex-direction:column-reverse}:host .control.control-label-left{flex-direction:row}:host .control.control-label-left label{margin-right:.25rem}:host .control.control-label-right{flex-direction:row-reverse}:host .control.control-label-right label{margin-left:.25rem}:host .control.control-label-left,:host .control.control-label-right{align-items:center}:host .control.control-label-left label,:host .control.control-label-right label{flex:1 1;margin-bottom:0;margin-top:0}:host .control.control-label-left .control-input,:host .control.control-label-right .control-input{flex:2 2}:host .control.is-readonly input,:host .control.is-readonly select{-moz-user-select:none;-ms-user-select:none;-webkit-user-select:none;background-clip:border-box;background-color:rgba(26,26,35,.12);background-image:none;border-color:transparent;color:#1a1a23;opacity:1;overflow:hidden;pointer-events:none;user-select:none;white-space:nowrap}:host .control.invalid .textbox-group-input ::ng-deep .control input.ng-invalid,:host .control.invalid .textbox-group-input ::ng-deep .control input.ng-valid{background-color:#fff8cc;background-image:url(\'data:image/svg+xml;charset=utf8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 32 32"><path fill="rgba(26, 26, 35, 0.66)" d="M20.21 20.21h-8.42L10.95 0h10.1l-.84 20.21zm-8.42 3.37h8.42V32h-8.42z"/></svg>\');background-position:.25em;background-repeat:no-repeat;background-size:1em 1em;padding-left:1.5em}:host .control.invalid .textbox-group-input ::ng-deep .control input.ng-invalid:not(:focus),:host .control.invalid .textbox-group-input ::ng-deep .control input.ng-valid:not(:focus){border-color:#ffe433}:host .control.invalid:not(.open) .textbox-group-btn-right ::ng-deep button{background-color:#fff8cc}:host .control.invalid:not(.open) .textbox-group-btn-right ::ng-deep button:not(:focus){border-color:#ffe433}:host .textbox-group{display:flex;position:relative}:host input:focus,:host select:focus,:host textarea:focus{outline:none}:host(.w-auto){width:auto}.checkbox{cursor:pointer;display:inline-flex;margin-bottom:0;position:relative}.checkbox.is-disabled{cursor:default}.input{margin-top:.5rem;opacity:0;position:absolute;z-index:-1}.input:not(:checked)+.ec-icon{color:rgba(26,26,35,.18)}.input:not(:checked)+.ec-icon:before{display:none}.input.indeterminate+.ec-icon,.input:indeterminate+.ec-icon{color:#0084a9}.input.indeterminate+.ec-icon:before,.input:indeterminate+.ec-icon:before{background-color:currentColor;content:"";display:block;height:3px;width:10px}.input:focus+.ec-icon{box-shadow:0 0 0 1px #0084a9;color:#0084a9}.input:disabled+.ec-icon{background-color:rgba(26,26,35,.1);border-color:rgba(26,26,35,.18)}.input:disabled+.ec-icon,.input:disabled~.label{color:rgba(26,26,35,.66);opacity:.65}.ec-icon{align-items:center;background-clip:padding-box;background-color:#fff;border:1px solid;border-radius:2px;color:#0084a9;display:inline-flex;flex:none;height:1em;justify-content:center;margin-top:.5rem;pointer-events:none;width:1em}.ec-icon:before{font-size:.6875em}.label{height:2rem;height:auto;line-height:1.25;margin-left:.5rem;min-height:2rem;padding:.375em 0}.checkbox.is-readonly{pointer-events:none}.checkbox.is-readonly .input{opacity:0}.checkbox.is-readonly .ec-icon{background-color:rgba(26,26,35,.12);border:0}.checkbox.is-readonly .ec-icon,.checkbox.is-readonly .label{color:#1a1a23;opacity:1}.no-label .icon-check,.no-label .input{margin-top:0}']}]}],me.ctorParameters=function(){return[{type:F},{type:R}]},me.propDecorators={name:[{type:o.Input}],dependentCheckboxesGroup:[{type:o.Input}],ignoreDisabledDependents:[{type:o.Input}],inputElement:[{type:o.ViewChild,args:["checkboxInput",{static:!0}]}]};var ge=new RegExp("^(-)?([\\d]+)?$"),fe=function(e){var t="{0,"+e.toString()+"}";return new RegExp("^((((-)?\\d+\\.?\\d"+t+"?)|((-)?\\.?\\d"+t+")))?$")},be=function(e,t,o,n){return function(r){var i=!1;if(r.value&&""!==r.value){if((o&&o>0?fe(o):n?fe(n):ge).test(r.value)){if(n){i=Number(r.value).toString().replace(/^-?/,"").replace(/(^0\.)|(\.)/,"").length>n}}else i=!0;void 0!==e&&Number(r.value)<e&&(i=!0),void 0!==t&&Number(r.value)>t&&(i=!0)}return i?{numericbox:{valid:!1,min:e,max:t,decimals:o,maxPrecisionDigits:n}}:null}},ye=function(e){function t(t,o,n){var r=e.call(this,t,o)||this;return r.validationMessageService=t,r.formGroupHelper=o,r.renderer=n,r.showPrecision=!1,r.autoUpdateFormModel=!1,r.unitsWidthCalculated=!1,r.autoUpdatingFormModel=!1,r}return v(t,e),t.prototype.ngAfterViewInit=function(){var e=this;this.autoUpdateFormModel&&this.textboxFormModel.valueChanges.pipe(c.debounceTime(300),c.distinctUntilChanged(),c.takeUntil(this.componentDestroyed)).subscribe((function(){e.updateFormModelValue()}))},t.prototype.ngOnChanges=function(t){(t.rightUnits||t.leftUnits)&&(this.unitsWidthCalculated=!1),e.prototype.ngOnChanges.call(this,t)},t.prototype.ngOnInit=function(){var t=this;e.prototype.ngOnInit.call(this),this.textboxFormModel=new n.FormControl({value:this.formModel.value,disabled:this.formModel.disabled}),this.textboxFormModel.statusChanges.pipe(c.takeUntil(this.componentDestroyed)).subscribe((function(){t.formModel.enabled&&t.formModel.setErrors(t.textboxFormModel.errors)})),this.formModel.statusChanges.pipe(c.takeUntil(this.componentDestroyed)).subscribe((function(){t.formModel.disabled?t.textboxFormModel.disable():t.textboxFormModel.disabled&&t.textboxFormModel.enable()})),this.textboxFormModel.setValidators(this.getValidators()),this.textboxFormModel.setValue(this.formatDisplayNumber(this.formModel.value)),this.formModel.valueChanges.pipe(c.filter((function(){return!t.autoUpdatingFormModel})),c.takeUntil(this.componentDestroyed)).subscribe((function(e){t.textboxFormModel.setValue(t.formatDisplayNumber(e))})),this.leftUnits&&this.textboxFormModel.statusChanges.pipe(c.takeUntil(this.componentDestroyed)).subscribe((function(){t.positionLeftUnits()}))},t.prototype.ngAfterViewChecked=function(){!this.leftUnits&&!this.rightUnits||this.unitsWidthCalculated||this.showUnits()},t.prototype.getValidators=function(){var e=[];return this.required&&e.push(n.Validators.required),e.push(be(this.min,this.max,this.decimals,this.maxPrecisionDigits)),e},t.prototype.onFocusOut=function(){this.updateFormModelValue(!0)},t.prototype.setFocus=function(e){this.textboxInput.setFocus(e)},t.prototype.updateFormModelValue=function(e){this.autoUpdateFormModel&&(this.autoUpdatingFormModel=!0);try{if(this.textboxFormModel.valid||""===this.textboxFormModel.value){var t=null;this.textboxFormModel.value&&!isNaN(this.textboxFormModel.value)?(t=Number(this.textboxFormModel.value),this.formModel.value!==t&&this.formModel.setValue(t)):null!==this.formModel.value&&this.formModel.setValue(null),e&&this.textboxFormModel.setValue(this.formatDisplayNumber(t))}this.formModel.markAsTouched()}catch(e){}finally{this.autoUpdatingFormModel=!1}},t.prototype.formatDisplayNumber=function(e){return e||0===e?this.showPrecision&&this.decimals&&!isNaN(e)?e.toFixed(this.decimals):e.toString():null},t.prototype.positionRightUnits=function(){var e=this.textboxEl.nativeElement.querySelector(".units-right"),t=this.textboxEl.nativeElement.querySelector("input");if(e&&t){var o=e.offsetWidth;o>0&&(this.unitsWidthCalculated=!0);var n=o;this.renderer.setStyle(t,"padding-right",n+"px")}},t.prototype.positionLeftUnits=function(){var e=this.textboxEl.nativeElement.querySelector(".units-left"),t=this.textboxEl.nativeElement.querySelector("input");if(e&&t){var o=e.offsetWidth;o>0&&(this.unitsWidthCalculated=!0);var n=o,r=getComputedStyle(e).left;r&&(n+=parseInt(r.replace("px",""),0)),this.renderer.setStyle(t,"padding-left",n+"px")}},t.prototype.showUnits=function(){var e=this.textboxEl.nativeElement.querySelector(".input-wrapper");if(e){var t;if(this.leftUnits)(t=this.textboxEl.nativeElement.querySelector(".units-left"))?this.renderer.setProperty(t,"innerHTML",this.leftUnits):this.renderer.appendChild(e,this.makeUnitElement("left",this.leftUnits)),this.positionLeftUnits();if(this.rightUnits)(t=this.textboxEl.nativeElement.querySelector(".units-right"))?this.renderer.setProperty(t,"innerHTML",this.rightUnits):this.renderer.appendChild(e,this.makeUnitElement("right",this.rightUnits)),this.positionRightUnits()}},t.prototype.makeUnitElement=function(e,t){var o=this.renderer.createElement("span");return this.renderer.setAttribute(o,"class","units units-"+e),this.renderer.setAttribute(o,"id",this.id+"_units"),this.renderer.setAttribute(o,"style","pointer-events: none"),this.renderer.setProperty(o,"innerHTML",t),o},t}(L);ye.decorators=[{type:o.Component,args:[{selector:"ec-numericbox",template:'<div class="control control-label-{{labelPosition}}"\r\n [class.invalid]="formModel?.invalid && (formModel?.touched)">\r\n <label *ngIf="label"\r\n ngPreserveWhitespaces>\r\n <span>{{label | translate}}</span>\r\n\r\n <span *ngIf="validationErrors.length && formModel?.touched && formModel?.invalid">{{validationErrors | translate}}</span>\r\n </label>\r\n \x3c!-- Setting the maxlength to 13 to combat the user from entering too large of a number\r\n for javascript to support. If the user enters all 13 characters as numbers and we have showPrecision set, adding the\r\n decimal and the empty zero characters will get them in a situation where to edit it they must remove characters\r\n as we would push them past the limit --\x3e\r\n <ec-textbox [id]="id"\r\n #textbox\r\n class="control-input mb-0"\r\n [placeholder]="placeholder"\r\n [maxlength]="maxPrecisionDigits ? maxPrecisionDigits + 3 : 13"\r\n [autofocus]="autofocus"\r\n [formModel]="textboxFormModel"\r\n [required]="required"\r\n [tabindex]="tabindex"\r\n [readonly]="readonly"\r\n [tooltip]="tooltip"\r\n (focusout)="onFocusOut()">\r\n </ec-textbox>\r\n</div>\r\n',styles:['@-webkit-keyframes spin{0%{transform:rotate(0)}to{transform:rotate(1turn)}}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(1turn)}}:host{color:#1a1a23;display:block;font-family:Roboto,-apple-system,BlinkMacSystemFont,Segoe UI,Oxygen,Ubuntu,Fira Sans,Droid Sans,Helvetica Neue,sans-serif;font-size:1rem;margin-bottom:1rem;width:100%}:host :host-context(.form-condensed){margin-bottom:.5rem}:host .control{display:flex;flex-direction:column;width:100%}:host .control.control-label-bottom{flex-direction:column-reverse}:host .control.control-label-left{flex-direction:row}:host .control.control-label-left label{margin-right:.25rem}:host .control.control-label-right{flex-direction:row-reverse}:host .control.control-label-right label{margin-left:.25rem}:host .control.control-label-left,:host .control.control-label-right{align-items:center}:host .control.control-label-left label,:host .control.control-label-right label{flex:1 1;margin-bottom:0;margin-top:0}:host .control.control-label-left .control-input,:host .control.control-label-right .control-input{flex:2 2}:host .control.is-readonly input,:host .control.is-readonly select{-moz-user-select:none;-ms-user-select:none;-webkit-user-select:none;background-clip:border-box;background-color:rgba(26,26,35,.12);background-image:none;border-color:transparent;color:#1a1a23;opacity:1;overflow:hidden;pointer-events:none;user-select:none;white-space:nowrap}:host .control.invalid .textbox-group-input ::ng-deep .control input.ng-invalid,:host .control.invalid .textbox-group-input ::ng-deep .control input.ng-valid{background-color:#fff8cc;background-image:url(\'data:image/svg+xml;charset=utf8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 32 32"><path fill="rgba(26, 26, 35, 0.66)" d="M20.21 20.21h-8.42L10.95 0h10.1l-.84 20.21zm-8.42 3.37h8.42V32h-8.42z"/></svg>\');background-position:.25em;background-repeat:no-repeat;background-size:1em 1em;padding-left:1.5em}:host .control.invalid .textbox-group-input ::ng-deep .control input.ng-invalid:not(:focus),:host .control.invalid .textbox-group-input ::ng-deep .control input.ng-valid:not(:focus){border-color:#ffe433}:host .control.invalid:not(.open) .textbox-group-btn-right ::ng-deep button{background-color:#fff8cc}:host .control.invalid:not(.open) .textbox-group-btn-right ::ng-deep button:not(:focus){border-color:#ffe433}:host .textbox-group{display:flex;position:relative}:host input:focus,:host select:focus,:host textarea:focus{outline:none}label{color:rgba(26,26,35,.66);display:block;font-size:.75rem;line-height:1;margin:.375rem 0}ec-textbox ::ng-deep .input-wrapper{position:relative}ec-textbox ::ng-deep input{text-align:right}ec-textbox ::ng-deep input.ng-invalid.ng-touched~.units-left,ec-textbox ::ng-deep input:required.is-empty:not(:disabled)~.units-left{left:1.25rem}ec-textbox ::ng-deep .control:not(.is-readonly) input:disabled~.units{color:rgba(26,26,35,.66);opacity:.65}ec-textbox ::ng-deep .units{color:#1a1a23;display:block;font-family:Roboto,-apple-system,BlinkMacSystemFont,Segoe UI,Oxygen,Ubuntu,Fira Sans,Droid Sans,Helvetica Neue,sans-serif;font-size:1rem;height:2rem;line-height:1.25;padding:.375em .25rem;position:absolute;top:1px;z-index:2}ec-textbox ::ng-deep .units.units-right{padding-right:.5rem;right:0}ec-textbox ::ng-deep .units.units-left{left:0;padding-left:.5rem}.control.invalid ec-textbox ::ng-deep input.ng-invalid,.control.invalid ec-textbox ::ng-deep input.ng-valid{background-color:#fff8cc;background-image:url(\'data:image/svg+xml;charset=utf8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 32 32"><path fill="rgba(26, 26, 35, 0.66)" d="M20.21 20.21h-8.42L10.95 0h10.1l-.84 20.21zm-8.42 3.37h8.42V32h-8.42z"/></svg>\');background-position:.25em;background-repeat:no-repeat;background-size:1em 1em;padding-left:1.5em}.control.invalid ec-textbox ::ng-deep input.ng-invalid:not(:focus),.control.invalid ec-textbox ::ng-deep input.ng-valid:not(:focus){border-color:#ffe433}.control.invalid ec-textbox ::ng-deep input.ng-invalid~.units-left,.control.invalid ec-textbox ::ng-deep input.ng-valid~.units-left{left:1.25rem}']}]}],ye.ctorParameters=function(){return[{type:F},{type:R},{type:o.Renderer2}]},ye.propDecorators={placeholder:[{type:o.Input}],decimals:[{type:o.Input}],showPrecision:[{type:o.Input}],maxPrecisionDigits:[{type:o.Input}],max:[{type:o.Input}],min:[{type:o.Input}],leftUnits:[{type:o.Input}],rightUnits:[{type:o.Input}],autoUpdateFormModel:[{type:o.Input}],textboxEl:[{type:o.ViewChild,args:[$,{read:o.ElementRef,static:!0}]}],textboxInput:[{type:o.ViewChild,args:["textbox",{static:!0}]}]};var ve=function(){function e(e,t){this.el=e,this.renderer=t,this.colors={abcde01:"red",fghij23:"orange",klmn15:"yellow",opqr67:"green",stuv8:"blue",wxyz9:"purple"},this.label="HI",this.currentCSSClass=""}return e.prototype.ngOnChanges=function(e){e.user.firstChange||this.user||console.error("AvatarComponent expected a value for the [user] input but got "+this.user+" instead."),this.updateLabel(),this.updateColor()},e.prototype.updateLabel=function(){if(this.user){var e=this.trimUser(this.user);e.firstName||e.lastName?e.firstName?(this.label=e.firstName.slice(0,1),this.user.userMenuTitle=e.firstName,e.lastName&&(this.user.userMenuTitle+=" "+e.lastName)):(this.label=e.lastName.slice(0,1),this.user.userMenuTitle=e.lastName):e.email?(this.label=e.email.slice(0,1),this.user.userMenuTitle=e.email):e.username&&(this.label=e.username.slice(0,1),this.user.userMenuTitle=e.username)}},e.prototype.trimUser=function(e){return{email:(e.email||"").trim(),firstName:(e.firstName||"").trim(),lastName:(e.lastName||"").trim(),username:(e.username||"").trim()}},e.prototype.updateColor=function(){this.currentCSSClass&&this.renderer.removeClass(this.el.nativeElement,this.currentCSSClass);var e="gray";if("HI"!==this.label&&this.label)for(var t in this.colors)t.includes(this.label[0].toLowerCase())&&(e=this.colors[t]);this.currentCSSClass="avatar-"+e,this.renderer.addClass(this.el.nativeElement,this.currentCSSClass)},e}();ve.decorators=[{type:o.Component,args:[{selector:"ec-avatar",template:"{{label}}",styles:[":host{align-items:center;border-radius:50%;color:#fff;display:flex;font-family:Roboto;font-size:1rem;height:2.25rem;justify-content:center;line-height:1.25rem;text-transform:uppercase;width:2.25rem}:host.avatar-red{background-color:#eb6669}:host.avatar-orange{background-color:#fa9f69}:host.avatar-yellow{background-color:#ffec74}:host.avatar-green{background-color:#dbe280}:host.avatar-blue{background-color:#58afc7}:host.avatar-purple{background-color:#9e82b4}:host.avatar-gray{background-color:#acbcc3}:host.avatar-green,:host.avatar-orange,:host.avatar-yellow{color:rgba(26,26,35,.66)}"]}]}],ve.ctorParameters=function(){return[{type:o.ElementRef},{type:o.Renderer2}]},ve.propDecorators={user:[{type:o.Input}]};var xe=function(){this.user={},this.userMenuItems=[],this.userMenuWidth=0,this.userMenuMinWidth=160,this.userMenuTabindex=0,this.iconPath="/assets/images/icon.svg"};xe.decorators=[{type:o.Component,args:[{selector:"ec-app-bar",template:'<section class="logo-container">\r\n <img src="{{iconPath}}" alt="EnergyCAP Platform">\r\n</section>\r\n\r\n<section class="title-container">\r\n <ng-content select=".app-bar-title"></ng-content>\r\n</section>\r\n\r\n<section class="actions-container">\r\n <ng-content select=".app-bar-actions"></ng-content>\r\n <ec-dropdown id="AppBarUserMenu"\r\n *ngIf="userMenuItems.length; else avatar"\r\n [menuTitle]="user?.userMenuTitle"\r\n [items]="userMenuItems"\r\n [buttonCustomTemplate]="avatar"\r\n [showArrow]="false"\r\n [menuWidth]="userMenuWidth"\r\n [menuMinWidth]="userMenuMinWidth"\r\n [tabindex]="userMenuTabindex"></ec-dropdown>\r\n</section>\r\n\r\n<ng-template #avatar>\r\n <div class="p-1">\r\n <ec-avatar [user]="user"></ec-avatar>\r\n </div>\r\n</ng-template>',styles:["@-webkit-keyframes spin{0%{transform:rotate(0)}to{transform:rotate(1turn)}}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(1turn)}}:host{align-items:center;background-color:#fff;display:flex;height:3rem;padding:0 .75rem 0 1rem;position:relative;width:100%;z-index:40}:host ::ng-deep .app-bar-actions{align-items:center;display:flex;justify-content:flex-end;margin-right:.25rem}section{flex:1 1}.logo-container img{height:2rem;width:2rem}.title-container{text-align:center}.actions-container{display:flex;justify-content:flex-end}"]}]}],xe.propDecorators={user:[{type:o.Input}],userMenuItems:[{type:o.Input}],userMenuWidth:[{type:o.Input}],userMenuMinWidth:[{type:o.Input}],userMenuTabindex:[{type:o.Input}],iconPath:[{type:o.Input}]};var we=function(){function e(){this._splashVisibility=new l.Subject,this.splashVisibility=this._splashVisibility}return e.prototype.showSplash=function(){this._splashVisibility.next(!0)},e.prototype.hideSplash=function(){this._splashVisibility.next(!1)},e}();we.ɵprov=o.ɵɵdefineInjectable({factory:function(){return new we},token:we,providedIn:"root"}),we.decorators=[{type:o.Injectable,args:[{providedIn:"root"}]}],we.ctorParameters=function(){return[]};var Ie=function(){function e(e){this.splashService=e,this.isVisible=!0,this.stopAnimation=!1,this.destroyed=new l.Subject}return e.prototype.ngOnInit=function(){var e=this;this.splashService.splashVisibility.pipe(c.takeUntil(this.destroyed),c.tap((function(t){return x(e,void 0,void 0,(function(){var e=this;return w(this,(function(o){return t?this.stopAnimation=!1:l.timer(1e3).pipe(c.takeUntil(this.splashService.splashVisibility)).subscribe((function(){e.stopAnimation=!0})),[2]}))}))}))).subscribe((function(t){e.isVisible=t}))},e.prototype.ngOnDestroy=function(){this.destroyed.next(),this.destroyed.unsubscribe()},e}();function ke(e){return!!(e.error&&e.error.hasOwnProperty("status")&&e.error.status.hasOwnProperty("message"))}Ie.decorators=[{type:o.Component,args:[{selector:"ec-splash",template:'<div class="app-splash"\r\n [class.app-loaded]="!isVisible">\r\n\r\n \x3c!-- This is the raw icon.svg file so we can animate it --\x3e\r\n <svg [class.d-none]="stopAnimation" \r\n xmlns="http://www.w3.org/2000/svg"\r\n width="50"\r\n height="50"\r\n viewBox="0 0 50 50">\r\n <g>\r\n <g>\r\n <path fill="#A0AD39"\r\n fill-rule="nonzero"\r\n d="M34.93,32.25 L34.93,37.25 L15.21,37.25 L15.21,32.25 L34.93,32.25 Z M28.45,22.48 L28.45,27.48 L15.21,27.48 L15.21,22.48 L28.45,22.48 Z M34.93,12.71 L34.93,17.71 L15.21,17.71 L15.21,12.71 L34.93,12.71 Z" />\r\n <path fill="#A0AD39"\r\n d="M24.99,5 C31.1,5 36.56,7.75 40.23,12.07 L44.33,9.16 C39.75,3.57 32.78,0 24.99,0 C17.2,0 10.23,3.57 5.65,9.16 L9.75,12.07 C13.42,7.75 18.88,5 24.99,5 Z" />\r\n </g>\r\n <path fill="#17303B"\r\n d="M40.24,37.93 C36.57,42.25 31.11,45 25,45 C18.89,45 13.43,42.25 9.76,37.93 L9.78,37.92 C6.82,34.43 5,29.94 5,25 C5,21.86 5.74,18.91 7.03,16.26 L2.89,13.33 C1.05,16.81 0,20.78 0,25 C0,31.01 2.13,36.52 5.66,40.83 L5.66,40.83 C10.24,46.42 17.21,49.99 25,49.99 C32.79,49.99 39.76,46.42 44.34,40.83 L40.24,37.93 Z" />\r\n </g>\r\n\r\n </svg>\r\n</div>'}]}],Ie.ctorParameters=function(){return[{type:we}]};var Ce=function(){function e(){}return e.prototype.parseApiError=function(e,t){if("string"==typeof e)return e;var o=t||"DefaultUnknownError_SC";if(e&&ke(e))try{o=e.error.status.message}catch(e){this.logConsoleError(e)}else this.logConsoleError(e);return o},e.prototype.logConsoleError=function(e){console&&"function"==typeof console.error&&console.error("unknown error:",e)},e}();Ce.ɵprov=o.ɵɵdefineInjectable({factory:function(){return new Ce},token:Ce,providedIn:"root"}),Ce.decorators=[{type:o.Injectable,args:[{providedIn:"root"}]}],Ce.ctorParameters=function(){return[]};var Me=function(){function e(e){this.el=e,this.pageNumber=1,this.maxTabs=10,this.pageChanged=new o.EventEmitter,this.dropdownItems=[],this.currentTabs=new W}return e.prototype.ngOnChanges=function(){var e=this;if(0===this.totalItems)return this.dropdownItems=[],void(this.currentTabs=new W);this.setDropdownItems();var t=this.dropdownItems.find((function(t){return t.value.firstPage<=e.pageNumber&&t.value.lastPage>=e.pageNumber}));t||(console.error("Page "+this.pageNumber+" does not exist. Setting the starting page number to 1."),t=this.dropdownItems[0],this.pageNumber=1),this.setTabs(t,this.pageNumber)},e.getPagingInfo=function(e,t){return{skip:(e-1)*t,pageSize:t,pageNumber:e}},e.prototype.onItemSelected=function(e){this.setTabs(e),this.onPageChange(parseInt(this.currentTabs.selected.label)),this.el.nativeElement.querySelector(".tab.active").focus()},e.prototype.setTabs=function(e,t){for(var o=this,n=[],r=function(e){n.push({label:""+e,onClick:function(){o.onPageChange(e)}})},i=e.value.firstPage;i<=e.value.lastPage;i++)r(i);var a=t?n.find((function(e){return parseInt(e.label)===t})):n[0];this.currentTabs=new W(n,a)},e.prototype.onPageChange=function(t){this.pageNumber=t,this.pageChanged.emit(e.getPagingInfo(t,this.pageSize))},e.prototype.setDropdownItems=function(){this.dropdownItems=[];for(var e=Math.floor(this.totalItems/this.pageSize),t=0===this.totalItems%this.pageSize?e:e+1,o=1,n=this.maxTabs||10,r=n;r<t;)this.dropdownItems.push({label:o+"-"+r,value:{firstPage:o,lastPage:r}}),o+=n,r+=n;this.dropdownItems.push({label:o===t?""+o:o+"-"+t,value:{firstPage:o,lastPage:t}})},e}();Me.decorators=[{type:o.Component,args:[{selector:"ec-table-pagination",template:'<ec-tabs id="{{id}}_pages"\r\n class="my-2 is-condensed"\r\n [tabGroup]="currentTabs"\r\n tabStyle="pills">\r\n</ec-tabs>\r\n<ec-dropdown id="{{id}}_morePages"\r\n *ngIf="dropdownItems.length > 1"\r\n class="my-1 ml-1"\r\n menuTemplateType="label"\r\n icon="icon-more"\r\n menuPosition="left"\r\n [menuMinWidth]="80"\r\n [showArrow]="false"\r\n [popupFixed]="true"\r\n [items]="dropdownItems"\r\n (itemSelected)="onItemSelected($event)">\r\n</ec-dropdown>',host:{class:"d-flex px-2"}}]}],Me.ctorParameters=function(){return[{type:o.ElementRef}]},Me.propDecorators={id:[{type:o.Input}],totalItems:[{type:o.Input}],pageSize:[{type:o.Input}],pageNumber:[{type:o.Input}],maxTabs:[{type:o.Input}],pageChanged:[{type:o.Output}]};var Se=function(){function e(e){this.translateService=e}return e.prototype.transform=function(e,t,o,n){var r=this.translateService.instant(t||"results");return void 0!==o?this.getResultsCount(e,r,o):n?this.getPagedResultsCount(e,r,n):""},e.prototype.getResultsCount=function(e,t,o){return e.totalItems>o?o+" "+this.translateService.instant("of")+" "+e.totalItems:e.totalItems+" "+t},e.prototype.getPagedResultsCount=function(e,t,o){return o.skip+1+(e.totalItems>1?"-"+(o.skip+e.totalItems)+" ":" ")+(this.translateService.instant("of")+" ")+e.totalItemsBeforePaging+" "+t},e}();Se.decorators=[{type:o.Pipe,args:[{name:"rowCount"}]}],Se.ctorParameters=function(){return[{type:i.TranslateService}]};var Te=function(){function e(e,t,n){this.errorService=e,this.translateService=t,this.rowCountPipe=n,this.id="",this.resizable=!1,this.sortable=!1,this.autofocus=!1,this.tableClasses="",this.sortChange=new o.EventEmitter,this.pageChangeEmitter=new o.EventEmitter,this.searchboxPlaceholder="",this.noDataMessage="SearchableTable_Default_NoData_SC",this.noSearchResultsMessage="SearchableTable_Default_NoMatches_SC",this.status=new Y("hasData"),this.tableLayoutFixed=!1,this.itemsChange=new o.EventEmitter,this.maxItemCount=100,this.hideSearchControl=!1,this.hideHeader=!1,this.objectType="results",this.hideFooter=!1,this.pageable=!1,this.maxTabs=10,this.searchboxReadonly=!1,this.additionalCountText="",this.selectable=!1,this.tableCaption=this.translateService.instant(this.noDataMessage||"SearchableTable_Default_NoData_SC"),this.resultsCount="",this.searchResults={items:[],totalItems:0},this.refreshTrigger=l.EMPTY,this.destroyed=new l.Subject,this.pageChanged=new l.Subject,this.initTable=new l.Subject}return Object.defineProperty(e.prototype,"searchModel",{get:function(){return this.formModel.controls.searchModel},enumerable:!1,configurable:!0}),e.prototype.ngOnInit=function(){var e=this;this.status.setStatus("pending","Loading"),this.setUpRefreshTrigger();var t=l.merge(this.formModel.valueChanges.pipe(c.skipUntil(this.ready),c.debounceTime(300)),this.refreshTrigger,this.initTable).pipe(c.tap((function(){e.pageable&&(e.pageInfo=Me.getPagingInfo(1,e.pageSize))})));l.merge(t,this.pageChanged).pipe(c.pluck("searchModel"),c.map((function(e){return(e||"").trim().toLowerCase()})),c.tap((function(){return e.status.setStatus("pending","Loading")})),c.switchMap((function(t){return e.getItems(t,e.pageInfo)})),c.catchError((function(t,o){return e.status.setStatus("error",e.errorService.parseApiError(t)),o})),c.takeUntil(this.destroyed)).subscribe((function(t){e.pageable||(t.items=t.items.slice(0,e.maxItemCount)),e.searchResults=t,e.tableCaption=e.getCaption(t),e.resultsCount=e.pageable?e.rowCountPipe.transform(t,e.objectType,void 0,e.pageInfo):e.rowCountPipe.transform(t,e.objectType,e.maxItemCount),t.items.length||e.searchModel.value?e.searchModel.disabled&&e.searchModel.enable({emitEvent:!1}):e.searchModel.disable({emitEvent:!1}),e.status.setStatus("hasData"),e.itemsChange.emit(t)})),this.ready.subscribe({complete:function(){e.initTable.next(e.formModel.value),e.initTable.complete()}})},e.prototype.ngOnDestroy=function(){this.destroyed.next(),this.destroyed.unsubscribe()},e.prototype.onSortChange=function(e){this.sortChange.emit(e)},e.prototype.onPageChange=function(e){this.status.setStatus("pending","Loading"),this.pageInfo=e,this.pageChangeEmitter.emit(e),this.pageChanged.next(this.formModel.value)},e.prototype.setUpRefreshTrigger=function(){var e=this;this.refresh&&(this.refreshTrigger=this.refresh.pipe(c.map((function(t){return t&&t.clearSearch?(e.searchModel.reset("",{emitEvent:!1}),Object.assign(Object.assign({},e.formModel),{searchModel:""})):e.formModel.value})),c.takeUntil(this.destroyed)))},e.prototype.getCaption=function(e){return e.items.length?"":this.searchModel.value?this.translateService.instant(this.noSearchResultsMessage||"SearchableTable_Default_NoMatches_SC",{searchText:this.searchModel.value}):this.translateService.instant(this.noDataMessage||"SearchableTable_Default_NoData_SC")},e}();Te.decorators=[{type:o.Component,args:[{selector:"ec-searchable-table",template:'<header *ngIf="!hideHeader"\r\n class="d-flex flex-shrink align-items-center mb-3">\r\n <ec-textbox id="{{id}}_searchbox"\r\n *ngIf="!hideSearchControl"\r\n class="mb-0 flex-grow mr-2"\r\n [autofocus]="autofocus"\r\n [formModel]="searchModel"\r\n [tabindex]="searchboxTabIndex"\r\n [placeholder]="searchboxPlaceholder"\r\n [readonly]="searchboxReadonly"></ec-textbox>\r\n <div class="flex-grow">\r\n <ng-content select=".searchable-table-controls"></ng-content>\r\n </div>\r\n</header>\r\n<section id="{{id}}_card"\r\n class="card m-0 d-flex flex-column bg-content"\r\n [class.is-translucent]="status.status !== \'error\'"\r\n ecOverlay\r\n [status]="status.status"\r\n [message]="status.message"\r\n [displayAsMask]="true">\r\n <ng-content select=".card-header"></ng-content>\r\n <ec-table id="{{id}}_table"\r\n class="flex-shrink-max {{tableClasses}}"\r\n [class.is-fixed]="tableLayoutFixed"\r\n [sortable]="sortable"\r\n [sort]="sort"\r\n (sortChange)="onSortChange($event)"\r\n [resizable]="resizable"\r\n [scrollable]="true"\r\n [selectable]="selectable"\r\n [selectionContext]="selectionContext"\r\n [selectionToolbarTemplate]="selectionToolbarTemplate"\r\n [resizableColumns]="resizableColumns">\r\n <ng-content></ng-content>\r\n </ec-table>\r\n\r\n \x3c!-- pagination footer visible if table is page-able and there are more than one page of results --\x3e\r\n <footer *ngIf="!hideFooter && pageable && searchResults.totalItemsBeforePaging! > pageSize!" class="d-flex flex-shrink align-items-center border-top">\r\n <ec-table-pagination id="{{id}}_pager"\r\n class="font-color-primary"\r\n [totalItems]="searchResults.totalItemsBeforePaging"\r\n [pageSize]="pageSize"\r\n [maxTabs]="maxTabs"\r\n [pageNumber]="pageInfo?.pageNumber"\r\n (pageChanged)="onPageChange($event)">\r\n </ec-table-pagination>\r\n <div id="resultsCount"\r\n *ngIf="searchResults?.items?.length"\r\n class="ml-auto mr-2 font-color-hint text-truncate" \r\n title="{{resultsCount}} {{additionalCountText}}">{{resultsCount}} {{additionalCountText}}</div>\r\n </footer>\r\n\r\n \x3c!-- default footer: visible if hideFooter is false and table is not page-able or there are only one page of results (always shows if there is a caption to indicate no results) --\x3e\r\n <footer *ngIf="(!hideFooter && (!pageable || searchResults.totalItemsBeforePaging! <= pageSize!)) || tableCaption"\r\n class="p-2 d-flex"\r\n [class.has-results]="searchResults?.items?.length">\r\n <ng-content *ngIf="!tableCaption"\r\n select=".searchable-table-footer"></ng-content>\r\n <div id="tableCaption"\r\n *ngIf="tableCaption"\r\n [innerHTML]="tableCaption"></div>\r\n <div id="resultsCount"\r\n *ngIf="searchResults?.items?.length"\r\n class="ml-auto text-truncate"\r\n title="{{resultsCount}} {{additionalCountText}}">{{resultsCount}} {{additionalCountText}}</div>\r\n </footer>\r\n</section>',styles:["@-webkit-keyframes spin{0%{transform:rotate(0)}to{transform:rotate(1turn)}}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(1turn)}}:host{display:flex;flex:1 1;flex-direction:column;min-height:0}footer{font-size:.75rem;line-height:1rem}footer.has-results{border-top:1px solid rgba(26,26,35,.18);color:rgba(26,26,35,.38);text-align:right}"]}]}],Te.ctorParameters=function(){return[{type:Ce},{type:i.TranslateService},{type:Se}]},Te.propDecorators={id:[{type:o.Input}],resizable:[{type:o.Input}],sortable:[{type:o.Input}],sort:[{type:o.Input}],autofocus:[{type:o.Input}],tableClasses:[{type:o.Input}],sortChange:[{type:o.Output}],pageChangeEmitter:[{type:o.Output,args:["pageChange"]}],searchboxPlaceholder:[{type:o.Input}],formModel:[{type:o.Input}],noDataMessage:[{type:o.Input}],noSearchResultsMessage:[{type:o.Input}],ready:[{type:o.Input}],getItems:[{type:o.Input}],refresh:[{type:o.Input}],status:[{type:o.Input}],tableLayoutFixed:[{type:o.Input}],itemsChange:[{type:o.Output}],searchboxTabIndex:[{type:o.Input}],maxItemCount:[{type:o.Input}],hideSearchControl:[{type:o.Input}],hideHeader:[{type:o.Input}],objectType:[{type:o.Input}],hideFooter:[{type:o.Input}],pageable:[{type:o.Input}],pageSize:[{type:o.Input}],maxTabs:[{type:o.Input}],searchboxReadonly:[{type:o.Input}],selectionContext:[{type:o.Input}],selectionToolbarTemplate:[{type:o.Input}],resizableColumns:[{type:o.ContentChildren,args:[T,{descendants:!0}]}],additionalCountText:[{type:o.Input}],selectable:[{type:o.Input}]};var De=function(){function e(e,t,o){this.viewContainer=e,this.templateRef=t,this.windowService=o,this.destroyed=new l.Subject,this.isVisible=!1}return e.prototype.ngOnInit=function(){var e=this;void 0!==this.windowService.innerWidth&&(this.width?("number"==typeof this.width?this.minWidth=this.width:void 0!==this.width&&(this.minWidth=this.width.min,this.maxWidth=this.width.max),this.windowService.resized&&this.windowService.resized.pipe(c.debounceTime(100),c.takeUntil(this.destroyed)).subscribe((function(){e.updateVisibility()})),this.updateVisibility()):console.error("A min or max width was not provided. Provide a value for 'min' or 'max' by assigning a single value or object to the directive. E.g. *ecIfViewportWidth=\"800\" (assigned to min) or *ecIfViewportWidth=\"{min: 800, max: 1280}\""))},e.prototype.updateVisibility=function(){var e=this.windowService.innerWidth;void 0!==this.minWidth&&void 0!==this.maxWidth?e>=this.minWidth&&e<=this.maxWidth?this.show():this.hide():void 0!==this.minWidth?e>=this.minWidth?this.show():this.hide():void 0!==this.maxWidth&&(e<=this.maxWidth?this.show():this.hide())},e.prototype.show=function(){this.isVisible||(this.viewContainer.createEmbeddedView(this.templateRef),this.isVisible=!0)},e.prototype.hide=function(){this.isVisible&&(this.viewContainer.clear(),this.isVisible=!1)},e}();De.decorators=[{type:o.Directive,args:[{selector:"[ecIfViewportWidth]"}]}],De.ctorParameters=function(){return[{type:o.ViewContainerRef},{type:o.TemplateRef},{type:U}]},De.propDecorators={width:[{type:o.Input,args:["ecIfViewportWidth"]}]};var Ee=function(){function e(){}return e.prototype.ngOnInit=function(){var e;this.isTargetClickable="function"==typeof(null===(e=this.targetEl)||void 0===e?void 0:e.dispatchEvent)},e.prototype.onClick=function(e){this.isTargetClickable&&(e.preventDefault(),this.targetEl.dispatchEvent(new Event("click")))},e}();Ee.decorators=[{type:o.Directive,args:[{selector:"[ecClickAreaFor]"}]}],Ee.ctorParameters=function(){return[]},Ee.propDecorators={targetEl:[{type:o.HostBinding,args:["class.cursor-pointer"]},{type:o.Input,args:["ecClickAreaFor"]}],onClick:[{type:o.HostListener,args:["click",["$event"]]}]};var Oe=function(){function e(){this.expanded=!1,this.expandedChange=new o.EventEmitter}return e.prototype.onToggle=function(){this.expanded=!this.expanded,this.expandedChange.emit(this.expanded)},e}();Oe.decorators=[{type:o.Component,args:[{selector:"ec-collapsible-toggle",template:'<ec-button id="{{id}}_button" type="icon" icon="icon-angle-down {{expanded ? \'\' : \'rotate-270\'}}" tabindex="{{tabindex}}" (clicked)="onToggle()"></ec-button>',styles:["@-webkit-keyframes spin{0%{transform:rotate(0)}to{transform:rotate(1turn)}}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(1turn)}}:host{align-items:center;display:inline-flex;height:1.5rem;justify-content:center;width:1.5rem}ec-button::ng-deep .ec-button-icon{height:1.25rem;width:1.25rem}"]}]}],Oe.propDecorators={id:[{type:o.Input}],expanded:[{type:o.Input}],tabindex:[{type:o.Input}],expandedChange:[{type:o.Output}]};var Pe=function(){};Pe.decorators=[{type:o.Component,args:[{selector:"[ecTableMasterHeaderRow]",template:"<th></th><ng-content></ng-content>",styles:["@-webkit-keyframes spin{0%{transform:rotate(0)}to{transform:rotate(1turn)}}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(1turn)}}th{padding:.25rem 0!important;vertical-align:top;width:1.5rem}th ::ng-deep+th,th ::ng-deep+th.is-resizable{padding-left:0}"]}]}];var Ve=function(){};Ve.decorators=[{type:o.Component,args:[{selector:"[ecTableDetailRow]",template:'\n <td></td>\n <td [class.has-max-height]="maxHeight" class="table-detail-content {{contentClass}}" [attr.colspan]="contentColSpan">\n <div [style.max-height]="maxHeight"><ng-content></ng-content></div>\n </td>\n ',styles:["@-webkit-keyframes spin{0%{transform:rotate(0)}to{transform:rotate(1turn)}}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(1turn)}}:host{background-color:rgba(26,26,35,.03)}td:first-child{padding:.25rem 0!important;vertical-align:top;width:1.5rem}.table-detail-content{background-color:transparent;border-top:1px solid #d2d7d9;padding:1rem 2rem 1rem 0!important}.table-detail-content.has-max-height{padding:0!important}.table-detail-content.has-max-height>div{overflow-y:auto;padding:1rem 2rem 1rem 0}"]}]}],Ve.propDecorators={contentClass:[{type:o.Input}],contentColSpan:[{type:o.Input}],maxHeight:[{type:o.Input}]};var ze=function(){function e(e){this.el=e,this.borderRight=!1,this.borderLeft=!1}return e.prototype.ngOnInit=function(){if(this.el.nativeElement.classList.contains("is-resizable"))throw new Error("Failed to lock table column because it was also resizable. Resizable table columns cannot currently be locked. Remove the 'is-resizable' class from THs of table columms that have the [ecTableLockedColumn] component.");if(this.el.nativeElement.attributes.getNamedItem("colspan"))throw new Error("Failed to lock table column because it had a 'colspan'. Locked columns do not currently support THs or TDs with a 'colspan'. Remove the 'colspan' attribute from table columns that have the [ecTableLockedColumn] component.");this.updatePositionAndBorder()},e.prototype.ngOnChanges=function(){this.options&&this.updatePositionAndBorder()},e.prototype.updatePositionAndBorder=function(){if("number"==typeof this.options.left&&"number"==typeof this.options.right)throw new Error("Failed to lock table column because it had a value for both left and right. Only left or right can have a value.");"number"==typeof this.options.left?(this.left=this.options.left,this.borderRight=this.options.border||!1):(this.right=this.options.right,this.borderLeft=this.options.border||!1)},e}();ze.decorators=[{type:o.Component,args:[{selector:"[ecTableLockedColumn]",template:"<ng-content></ng-content>",styles:["@-webkit-keyframes spin{0%{transform:rotate(0)}to{transform:rotate(1turn)}}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(1turn)}}:host{background-color:#fff;position:sticky!important;z-index:2!important}:host(th){z-index:3!important}"]}]}],ze.ctorParameters=function(){return[{type:o.ElementRef}]},ze.propDecorators={options:[{type:o.Input,args:["ecTableLockedColumn"]}],left:[{type:o.HostBinding,args:["style.left.px"]}],right:[{type:o.HostBinding,args:["style.right.px"]}],borderRight:[{type:o.HostBinding,args:["class.border-right"]}],borderLeft:[{type:o.HostBinding,args:["class.border-left"]}]};var Ae=function(){function e(e,t,o){this.overlay=e,this.viewContainerRef=t,this.elementRef=o,this.icon="",this.contentPosition="top-left",this.iconHoverClass="",this.isVisible=!1}return e.prototype.ngOnDestroy=function(){this.hide()},e.prototype.show=function(){if(!this.isVisible){var e=this.getOverlayConfig();this.overlayRef=this.overlay.create(e);var t=new h.TemplatePortal(this.content,this.viewContainerRef);this.contentViewRef=this.overlayRef.attach(t),this.isVisible=!0}},e.prototype.onMouseMove=function(e){var t;this.contentRect||(this.contentRect=null===(t=this.contentViewRef)||void 0===t?void 0:t.rootNodes[0].getBoundingClientRect()),this.contentRect&&(e.clientX>this.contentRect.right||e.clientX<this.contentRect.left||e.clientY>this.contentRect.bottom||e.clientY<this.contentRect.top)&&this.hide()},e.prototype.hide=function(){var e;this.contentRect=void 0,null===(e=this.overlayRef)||void 0===e||e.dispose(),this.isVisible=!1},e.prototype.getOverlayConfig=function(){var e=this.getPosition(),t=this.overlay.position().flexibleConnectedTo(this.elementRef).withPositions([e]);return new s.OverlayConfig({positionStrategy:t})},e.prototype.getPosition=function(){var e=this.contentPosition.split("-"),t="left"==e[1]?"start":"end",o=e[0];return{originX:t,originY:o,overlayX:t,overlayY:o}},e}();Ae.decorators=[{type:o.Component,args:[{selector:"ec-popover",template:'<div class="p-2">\r\n <i class="ec-icon {{icon}} ec-icon-sm"></i>\r\n</div>\r\n\r\n<ng-template #content>\r\n <article class="popover-content"\r\n (document:mousemove)="onMouseMove($event)">\r\n <ng-content></ng-content>\r\n </article>\r\n <div class="p-2 {{contentPosition}}">\r\n <i class="ec-icon {{icon}} ec-icon-sm {{iconHoverClass}}"></i>\r\n </div>\r\n</ng-template>\r\n',styles:["@-webkit-keyframes spin{0%{transform:rotate(0)}to{transform:rotate(1turn)}}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(1turn)}}:host{display:inline-block;line-height:1}.popover-content{border-radius:3px;box-shadow:0 3px 6px 0 rgba(26,26,35,.12);overflow:hidden;position:relative}.popover-content+div{line-height:1;position:absolute}.popover-content+div.top-left{left:0;top:0}.popover-content+div.top-right{right:0;top:0}.popover-content+div.bottom-right{bottom:0;right:0}.popover-content+div.bottom-left{bottom:0;left:0}"]}]}],Ae.ctorParameters=function(){return[{type:s.Overlay},{type:o.ViewContainerRef},{type:o.ElementRef}]},Ae.propDecorators={icon:[{type:o.Input}],contentPosition:[{type:o.Input}],iconHoverClass:[{type:o.Input}],content:[{type:o.ViewChild,args:["content"]}],show:[{type:o.HostListener,args:["mouseover"]}]};var Fe=function(){function e(e,t){this.control=e,this.clipboardService=t,this.copySuccess=!1,this.copyFailed=!1,this.destroyed=new l.Subject}return e.prototype.ngOnInit=function(){var e=this;this.control.clicked.pipe(c.takeUntil(this.destroyed)).subscribe((function(){e.onClick()}))},e.prototype.ngOnDestroy=function(){this.destroyed.next(),this.destroyed.unsubscribe()},e.prototype.onClick=function(){var e,t=this,o=this.clipboardService.copyFromContent(null===(e=this.copyFormModel)||void 0===e?void 0:e.value),n=this.control.pendingIcon;o?(this.copySuccess=!0,this.control.pendingIcon="icon-check"):(this.copyFailed=!0,this.control.pendingIcon="icon-cancel"),this.control.pending=!0,setTimeout((function(){t.control.pending=!1,t.copySuccess=!1,t.copyFailed=!1,t.control.pendingIcon=n}),500)},e}();Fe.decorators=[{type:o.Directive,args:[{selector:"[ecCopyButton]"}]}],Fe.ctorParameters=function(){return[{type:P},{type:m.ClipboardService}]},Fe.propDecorators={copyFormModel:[{type:o.Input,args:["ecCopyButton"]}],copySuccess:[{type:o.HostBinding,args:["class.is-success"]}],copyFailed:[{type:o.HostBinding,args:["class.is-error"]}]};var Re=function(){function e(){this.id="",this.wrap=!0,this.isCondensed=!1,this.tagClosed=new o.EventEmitter,this.tagsArray=[]}return e.prototype.ngOnChanges=function(e){e.tags&&(this.tags?Array.isArray(this.tags)?this.tagsArray=this.tags:this.tagsArray=[this.tags]:this.tagsArray=[])},e.prototype.closeTag=function(e){this.tagsArray=this.tagsArray.filter((function(t){return t!==e})),this.tagClosed.emit(e)},e}();Re.decorators=[{type:o.Component,args:[{selector:"ec-tags",template:'<ul class="tags" [class.is-wrapped]="wrap">\r\n <li *ngFor="let tag of tagsArray; index as i"\r\n id="{{id}}_tag_{{i}}"\r\n class="tag is-{{tag.type}} {{tag.classList}} mr-1"\r\n [ngClass]="{\'text-caption-1\': !isCondensed, \'text-caption-2\': isCondensed, \'is-condensed\': isCondensed, \'pr-0\': tag.isDismissable}"\r\n title="{{tag.tooltip | translate}}">\r\n <i *ngIf="tag.icon" class="ec-icon {{tag.icon}} font-color-muted ec-icon-sm"></i>\r\n {{tag.label | translate}}\r\n <button id="{{id}}_tag_{{i}}_dismissButton"\r\n *ngIf="tag.isDismissable"\r\n (click)="closeTag(tag)">\r\n <i class="ec-icon ec-icon-sm icon-cancel"></i>\r\n </button>\r\n </li>\r\n</ul>',styles:["@-webkit-keyframes spin{0%{transform:rotate(0)}to{transform:rotate(1turn)}}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(1turn)}}:host{display:block}.tags{display:flex;list-style:none;margin:0;padding:0}.tags.is-wrapped{flex-wrap:wrap;margin-top:.25rem}.tags.is-wrapped>.tag{margin-bottom:.25rem}.tag{align-items:center;background-color:rgba(172,188,195,.25);border:2px solid #acbcc3;border-radius:.75rem;display:inline-flex;height:1.5rem;line-height:1.25rem;overflow:hidden;padding:0 .4375rem;text-overflow:ellipsis;vertical-align:top;white-space:nowrap}.tag>.ec-icon:first-child{margin-right:.1875rem}.tag .ec-icon{-moz-osx-font-smoothing:grayscale;-webkit-font-smoothing:antialiased;display:flex;justify-content:center;min-width:1em}.tag .ec-icon,.tag .ec-icon:after,.tag .ec-icon:before{height:auto;width:auto}.tag.is-info{background-color:rgba(172,188,195,.25);border-color:#acbcc3}.tag.is-success{background-color:rgba(193,205,35,.25);border-color:#c1cd23}.tag.is-warning{background-color:rgba(245,212,0,.25);border-color:#f5d400}.tag.is-danger{background-color:rgba(227,52,54,.25);border-color:#e33436}.tag.is-accent{background-color:rgba(144,110,168,.25);border-color:#906ea8}.tag.is-chargeback{background-color:rgba(250,123,46,.25);border-color:#fa7b2e}.tag.is-accrual{background-color:rgba(35,195,205,.25);border-color:#23c3cd}button{align-items:center;background-color:transparent;border:0;cursor:pointer;display:flex;height:100%;padding:0 .4375rem 0 .1875rem}button:focus,button:hover{background-color:rgba(26,26,35,.1);outline:none}.is-condensed{border:0;border-radius:.1875rem;height:1.125rem;justify-content:center;line-height:1.125rem;min-width:1.125rem;padding:0 .25rem}.is-condensed>.ec-icon:first-child{margin-right:.125rem}.is-condensed button{padding-left:.125rem;padding-right:.25rem}"]}]}],Re.ctorParameters=function(){return[]},Re.propDecorators={id:[{type:o.Input}],tags:[{type:o.Input}],wrap:[{type:o.Input}],isCondensed:[{type:o.Input}],tagClosed:[{type:o.Output}]};var Le=function(){function e(e){this.el=e,this.id="",this.showClear=!0,this.pending=!1,this.required=!1,this.readonly=!1,this.actionClicked=new o.EventEmitter}return Object.defineProperty(e.prototype,"empty",{get:function(){var e,t;return!(null===(e=this.formModel)||void 0===e?void 0:e.value)&&0!==(null===(t=this.formModel)||void 0===t?void 0:t.value)},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,"invalid",{get:function(){var e;return 1==(null===(e=this.formModel)||void 0===e?void 0:e.touched)&&1==this.formModel.invalid},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,"disabled",{get:function(){var e;return 1==(null===(e=this.formModel)||void 0===e?void 0:e.disabled)},enumerable:!1,configurable:!0}),e.prototype.ngAfterViewInit=function(){this.formModel||console.error("Missing [formControl] directive on ec-form-control content.")},e.prototype.onClick=function(){this.focus()},e.prototype.focus=function(){var e=this.el.nativeElement.querySelectorAll("input, textarea, select");e.length&&e.item(0).focus()},e.prototype.clear=function(){var e;null===(e=this.formModel)||void 0===e||e.reset()},e}();Le.decorators=[{type:o.Component,args:[{selector:"ec-form-control",template:'<ng-content></ng-content>\r\n<i id="{{id + \'_icon\'}}" class="ec-form-control-icon ec-icon {{icon}}"></i>\r\n<i id="{{id + \'_loading\'}}" class="ec-form-control-icon ec-icon icon-loading"></i>\r\n<i id="{{id + \'_required\'}}" class="ec-form-control-icon ec-icon icon-required"></i>\r\n<i id="{{id + \'_invalid\'}}" class="ec-form-control-icon ec-icon icon-invalid"></i>\r\n<i id="{{id + \'_clear\'}}" *ngIf="showClear" class="ec-form-control-clear ec-icon icon-cancel" (click)="clear()"></i>\r\n<i id="{{id + \'_action\'}}" *ngIf="actionIcon" class="ec-form-control-action ec-icon {{actionIcon}}" (click)="actionClicked.emit()"></i>\r\n<div class="ec-focus-ring"></div>',encapsulation:o.ViewEncapsulation.None,styles:["ec-form-control{background-clip:padding-box;background-color:#fff;border:1px solid rgba(26,26,35,.18);border-radius:0;color:#1a1a23;display:flex;font-size:1rem;min-height:2rem;padding:0 .5rem;position:relative;width:100%}ec-form-control>input,ec-form-control>select,ec-form-control>textarea{background-color:transparent;border:0;color:inherit;flex:1 1;min-width:0;order:2}ec-form-control>input::-moz-selection,ec-form-control>select::-moz-selection,ec-form-control>textarea::-moz-selection{background-color:#0084a9;color:#fff}ec-form-control>input::selection,ec-form-control>select::selection,ec-form-control>textarea::selection{background-color:#0084a9;color:#fff}ec-form-control>input::-webkit-input-placeholder,ec-form-control>select::-webkit-input-placeholder,ec-form-control>textarea::-webkit-input-placeholder{color:rgba(26,26,35,.38)}ec-form-control>input::-moz-placeholder,ec-form-control>select::-moz-placeholder,ec-form-control>textarea::-moz-placeholder{color:rgba(26,26,35,.38);opacity:1}ec-form-control>input:-ms-input-placeholder,ec-form-control>select:-ms-input-placeholder,ec-form-control>textarea:-ms-input-placeholder{color:rgba(26,26,35,.38)}ec-form-control>input:-moz-placeholder,ec-form-control>select:-moz-placeholder,ec-form-control>textarea:-moz-placeholder{color:rgba(26,26,35,.38);opacity:1}ec-form-control>input:focus,ec-form-control>select:focus,ec-form-control>textarea:focus{outline:none}ec-form-control>input:focus~.ec-focus-ring,ec-form-control>select:focus~.ec-focus-ring,ec-form-control>textarea:focus~.ec-focus-ring{display:block}ec-form-control .ec-form-control-prefix,ec-form-control .ec-form-control-suffix,ec-form-control>input,ec-form-control>select,ec-form-control>textarea{font-size:inherit;line-height:1.25;padding:.3125rem 0}ec-form-control>textarea{padding:.3125rem 0;resize:none}ec-form-control .ec-form-control-icon{margin-right:.25rem;margin-top:.4375rem;order:1}ec-form-control .ec-form-control-icon:not([class*=icon-]){display:none}ec-form-control .icon-required{color:#ffe433}ec-form-control .ec-form-control-action,ec-form-control .ec-form-control-clear{cursor:pointer;flex:none;height:1.875rem;order:3;width:2rem}ec-form-control .ec-form-control-action:last-of-type,ec-form-control .ec-form-control-clear:last-of-type{margin-right:-.5rem}ec-form-control .ec-form-control-action:hover,ec-form-control .ec-form-control-clear:hover{background-color:#bfe0e9}ec-form-control .ec-form-control-clear{width:1.5rem}ec-form-control .ec-form-control-prefix,ec-form-control .ec-form-control-suffix{color:rgba(26,26,35,.66);cursor:default;flex:none}ec-form-control .ec-form-control-prefix{margin-right:.125rem;order:2}ec-form-control .ec-form-control-suffix{margin-left:.125rem;order:3}ec-form-control .ec-focus-ring{border:.125rem solid #0084a9;border-radius:0;bottom:-1px;display:none;left:-1px;pointer-events:none;position:absolute;right:-1px;top:-1px;z-index:1}ec-form-control.is-pending .icon-invalid,ec-form-control.is-pending .icon-required{display:none}ec-form-control.is-invalid{background-color:#fff8cc;border-color:#ffe433}ec-form-control.is-empty .ec-form-control-clear,ec-form-control.is-invalid .icon-required,ec-form-control.is-required.is-empty .ec-form-control-icon:first-of-type,ec-form-control:not(.is-empty) .icon-required,ec-form-control:not(.is-invalid) .icon-invalid,ec-form-control:not(.is-pending) .icon-loading,ec-form-control:not(.is-required) .icon-required{display:none}ec-form-control.is-disabled,ec-form-control.is-readonly{background-color:rgba(26,26,35,.1)}ec-form-control.is-disabled .ec-form-control-clear,ec-form-control.is-disabled .icon-invalid,ec-form-control.is-disabled .icon-loading,ec-form-control.is-disabled .icon-required,ec-form-control.is-readonly .ec-form-control-clear,ec-form-control.is-readonly .icon-invalid,ec-form-control.is-readonly .icon-loading,ec-form-control.is-readonly .icon-required{display:none}ec-form-control.is-readonly{border-color:transparent;color:#1a1a23}ec-form-control.is-readonly .ec-form-control-action{display:none}ec-form-control.is-disabled:not(.is-readonly){color:rgba(26,26,35,.38);opacity:.6}ec-form-control.is-disabled:not(.is-readonly) .ec-form-control-prefix,ec-form-control.is-disabled:not(.is-readonly) .ec-form-control-suffix{color:inherit}"]}]}],Le.ctorParameters=function(){return[{type:o.ElementRef}]},Le.propDecorators={formModel:[{type:o.ContentChild,args:[n.FormControlDirective]}],id:[{type:o.Input}],icon:[{type:o.Input}],actionIcon:[{type:o.Input}],showClear:[{type:o.Input}],pending:[{type:o.Input},{type:o.HostBinding,args:["class.is-pending"]}],required:[{type:o.Input},{type:o.HostBinding,args:["class.is-required"]}],readonly:[{type:o.Input},{type:o.HostBinding,args:["class.is-readonly"]}],empty:[{type:o.HostBinding,args:["class.is-empty"]}],invalid:[{type:o.HostBinding,args:["class.is-invalid"]}],disabled:[{type:o.HostBinding,args:["class.is-disabled"]}],actionClicked:[{type:o.Output}],onClick:[{type:o.HostListener,args:["click"]}]};var Ne=function(e){function t(t,o,n){var r=e.call(this,t,o)||this;return r.validationMessageService=t,r.formGroupHelper=o,r.el=n,r.placeholder="",r.options=[],r.autoDefault=!0,r}return v(t,e),t.prototype.ngOnChanges=function(t){t.options&&this.autoDefault&&this.onOptionsChange(t.options.firstChange),e.prototype.ngOnChanges.call(this,t)},t.prototype.ngAfterViewInit=function(){this.autofocus&&this.focus(),this.autoDefault||console.warn("SelectComponent#"+this.id+" has 'autoDefault' set to false and will not select the default option.")},t.prototype.focus=function(){var e=this.el.nativeElement.querySelector("select");e&&e.focus()},t.prototype.onOptionsChange=function(e){var t,o,n=this;if(null!==this.formModel.value&&void 0!==this.formModel.value&&""!==this.formModel.value){if(this.options.every((function(e){return e.value!==n.formModel.value}))){var r=this.required?null===(t=this.options[0])||void 0===t?void 0:t.value:null;this.formModel.setValue(r,{emitEvent:!e})}}else this.required&&this.formModel.setValue(null===(o=this.options[0])||void 0===o?void 0:o.value,{emitEvent:!e})},t}(L);Ne.decorators=[{type:o.Component,args:[{selector:"ec-select",template:'<div class="control"\r\n [ngClass]="{\'is-readonly\': readonly, \'is-disabled\': formModel.disabled}">\r\n <label for="{{id}}_select"\r\n *ngIf="label"\r\n ngPreserveWhitespaces>{{label|translate}}</label>\r\n <select [attr.id]="inputId"\r\n tabindex="{{tabindex}}"\r\n [formControl]="formModel"\r\n [attr.required]="required"\r\n [attr.cdkFocusInitial]="autofocus || null">\r\n <option *ngIf="!required"\r\n [ngValue]="null">{{placeholder}}</option>\r\n <option *ngFor="let option of options"\r\n [ngValue]="option.value">{{option.label}}</option>\r\n </select>\r\n</div>',styles:['@-webkit-keyframes spin{0%{transform:rotate(0)}to{transform:rotate(1turn)}}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(1turn)}}:host{color:#1a1a23;display:block;font-family:Roboto,-apple-system,BlinkMacSystemFont,Segoe UI,Oxygen,Ubuntu,Fira Sans,Droid Sans,Helvetica Neue,sans-serif;font-size:1rem;margin-bottom:1rem;width:100%}:host :host-context(.form-condensed){margin-bottom:.5rem}:host .control{display:flex;flex-direction:column;width:100%}:host .control.control-label-bottom{flex-direction:column-reverse}:host .control.control-label-left{flex-direction:row}:host .control.control-label-left label{margin-right:.25rem}:host .control.control-label-right{flex-direction:row-reverse}:host .control.control-label-right label{margin-left:.25rem}:host .control.control-label-left,:host .control.control-label-right{align-items:center}:host .control.control-label-left label,:host .control.control-label-right label{flex:1 1;margin-bottom:0;margin-top:0}:host .control.control-label-left .control-input,:host .control.control-label-right .control-input{flex:2 2}:host .control.is-readonly input,:host .control.is-readonly select{-moz-user-select:none;-ms-user-select:none;-webkit-user-select:none;background-clip:border-box;background-color:rgba(26,26,35,.12);background-image:none;border-color:transparent;color:#1a1a23;opacity:1;overflow:hidden;pointer-events:none;user-select:none;white-space:nowrap}:host .control.invalid .textbox-group-input ::ng-deep .control input.ng-invalid,:host .control.invalid .textbox-group-input ::ng-deep .control input.ng-valid{background-color:#fff8cc;background-image:url(\'data:image/svg+xml;charset=utf8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 32 32"><path fill="rgba(26, 26, 35, 0.66)" d="M20.21 20.21h-8.42L10.95 0h10.1l-.84 20.21zm-8.42 3.37h8.42V32h-8.42z"/></svg>\');background-position:.25em;background-repeat:no-repeat;background-size:1em 1em;padding-left:1.5em}:host .control.invalid .textbox-group-input ::ng-deep .control input.ng-invalid:not(:focus),:host .control.invalid .textbox-group-input ::ng-deep .control input.ng-valid:not(:focus){border-color:#ffe433}:host .control.invalid:not(.open) .textbox-group-btn-right ::ng-deep button{background-color:#fff8cc}:host .control.invalid:not(.open) .textbox-group-btn-right ::ng-deep button:not(:focus){border-color:#ffe433}:host .textbox-group{display:flex;position:relative}:host input:focus,:host select:focus,:host textarea:focus{outline:none}:host label{color:rgba(26,26,35,.66);display:block;font-size:.75rem;line-height:1;margin:.375rem 0}:host select{-moz-appearance:none;-webkit-appearance:none;appearance:none;background-clip:padding-box;background-color:#fff;background-image:none;background-image:url(\'data:image/svg+xml;charset=utf8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 32 32"><path fill="rgba(26, 26, 35, 0.66)" d="M32 8L16 24 0 8z"/></svg>\');background-position:right .5rem center;background-repeat:no-repeat;background-size:.75em .75em;border:.0625rem solid #d2d7d9;border-radius:0;height:2rem;line-height:1.25;padding:.3125em 1.5rem .3125em .5em;width:100%}:host select::-moz-selection{background-color:#0084a9;color:#fff}:host select::selection{background-color:#0084a9;color:#fff}:host select::-webkit-input-placeholder{color:rgba(26,26,35,.38)}:host select::-moz-placeholder{color:rgba(26,26,35,.38);opacity:1}:host select:-ms-input-placeholder{color:rgba(26,26,35,.38)}:host select:-moz-placeholder{color:rgba(26,26,35,.38);opacity:1}:host select:required.is-empty{background-color:#fff;background-image:url(\'data:image/svg+xml;charset=utf8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 32 32"><path fill="%23ffe433" d="M31.32 21.69l-.09.18-2.48 4.35c-.36.54-.77.62-1.25.27-.12 0-.2 0-.2-.09L19.53 22v9.37a1.26 1.26 0 0 1-.72.67h-5.26c-.59 0-.83-.3-.83-.89 0-.12.15-.21.15-.27V22l-8 4.71h-.12c-.42.66-.8.21-1.16-.27L1 21.82a.82.82 0 0 1 .35-1.26l.18-.1L9 16 .87 11.47v-.09c0-.36-.39-.74-.09-1.16l2.75-4.35v-.09c0-.42.82-.54 1.29-.36l8 4.62V.89c0-.59.18-.89.77-.89h5c.65 0 .91.3.91.89V10l7.94-4.53c.48-.29.72-.21 1.08.27l2.32 4.35v.09c.66.48.45.89-.08 1.25L23 16l7.91 4.53v.09c-.04.18.53.54.41 1.07z"/></svg>\');border-color:#d2d7d9}:host select.ng-invalid.ng-touched,:host select:required.is-empty{background-position:.25em;background-repeat:no-repeat;background-size:1em 1em;padding-left:1.5em}:host select.ng-invalid.ng-touched{background-color:#fff8cc;background-image:url(\'data:image/svg+xml;charset=utf8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 32 32"><path fill="rgba(26, 26, 35, 0.66)" d="M20.21 20.21h-8.42L10.95 0h10.1l-.84 20.21zm-8.42 3.37h8.42V32h-8.42z"/></svg>\')}:host select.ng-invalid.ng-touched:not(:focus){border-color:#ffe433}:host select.is-pending.ng-invalid,:host select.is-pending.ng-pending,:host select.is-pending.ng-valid{background-image:url(\'data:image/svg+xml;charset=utf8,<svg xmlns="http://www.w3.org/2000/svg" width="40" height="40" viewBox="0 0 50 50"><path fill="%230084a9" d="M43.935 25.145c0-10.318-8.364-18.683-18.683-18.683-10.318 0-18.683 8.365-18.683 18.683h4.068c0-8.071 6.543-14.615 14.615-14.615s14.615 6.543 14.615 14.615h4.068z"><animateTransform attributeType="xml" attributeName="transform" type="rotate" from="0 25 25" to="360 25 25" dur="0.8s" repeatCount="indefinite"/></path></svg>\');background-position:.25em;background-repeat:no-repeat;background-size:1em 1em;padding-left:1.5em}:host select:focus,:host select:focus.is-empty{border-color:#0084a9;box-shadow:0 0 0 1px #0084a9;position:relative;z-index:1}:host select:disabled{background-color:rgba(26,26,35,.1);border-color:#d2d7d9;color:rgba(26,26,35,.66);opacity:.65}:host select:disabled:required,:host select:disabled:required.is-empty{background-color:rgba(26,26,35,.1);background-image:none;border-color:#d2d7d9;padding-left:.5em}:host select.is-uppercase:not(.is-empty){text-transform:uppercase}:host select:focus{position:static}']}]}],Ne.ctorParameters=function(){return[{type:F},{type:R},{type:o.ElementRef}]},Ne.propDecorators={placeholder:[{type:o.Input}],options:[{type:o.Input}],autoDefault:[{type:o.Input}]};var _e=function(){function e(){this.id="",this.internalValue={value:""},this.externalLink=!1,this.condensed=!1,this.target="_self"}return Object.defineProperty(e.prototype,"value",{set:function(e){this.internalValue="string"==typeof e?{value:e}:e||{value:""}},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,"url",{get:function(){return this._url},set:function(e){this.externalLink=!!(null==e?void 0:e.startsWith("http")),this._url=e},enumerable:!1,configurable:!0}),e}();_e.decorators=[{type:o.Component,args:[{selector:"ec-item-display",template:'<div id="{{id}}_label_0"\r\n class="text-caption-1">{{label | translate}}</div>\r\n\r\n<div id="{{id}}_value_0" class="{{condensed ? \'text-body-2\' : \'text-display-1\'}} {{internalValue.classnames}}"\r\n [class.font-color-hint]="!internalValue.value && internalValue.noValueText"\r\n title="{{internalValue.tooltip}}">\r\n\r\n <ng-container *ngIf="url else content">\r\n <a *ngIf="!externalLink"\r\n id="{{id}}_link"\r\n routerLink="{{url}}"\r\n target="{{target}}">\r\n <ng-container *ngTemplateOutlet="content"></ng-container>\r\n </a>\r\n <a *ngIf="externalLink"\r\n id="{{id}}_link"\r\n href="{{url}}"\r\n target="{{target}}">\r\n <ng-container *ngTemplateOutlet="content"></ng-container>\r\n </a>\r\n </ng-container>\r\n</div>\r\n \r\n \r\n<ng-template #content> \r\n <i *ngIf="internalValue?.icon" class="ec-icon {{internalValue?.icon}}"></i>\r\n <span>{{(internalValue?.value || internalValue?.noValueText) | translate}}</span>\r\n <ng-content></ng-content> \r\n</ng-template>',styles:["@-webkit-keyframes spin{0%{transform:rotate(0)}to{transform:rotate(1turn)}}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(1turn)}}:host{display:inline-block;margin-bottom:1rem;vertical-align:top}.ec-icon{font-size:1em;margin-right:.25em;position:relative;top:.125em}"]}]}],_e.propDecorators={id:[{type:o.HostBinding,args:["attr.id"]},{type:o.Input}],label:[{type:o.Input}],value:[{type:o.Input}],url:[{type:o.Input}],condensed:[{type:o.Input}],target:[{type:o.Input}]};var Be=function(){this.selectAllCheckbox=new n.FormControl(!1),this.rowCheckboxes=new n.FormArray([]),this.lastClickedIndex=-1,this.rowAddedOrRemoved=new l.Subject},Ue=function(){function e(){this.id="",this._enabled=!0,this.rowIndex=-1,this.lockedColOptions={border:!1,left:0},this.isSelected=!1,this.isHeader=!1,this.dependentCheckboxesReference={controls:[]},this.checkboxAttributeID="",this.destroyed=new l.Subject}return Object.defineProperty(e.prototype,"enabled",{get:function(){return this._enabled},set:function(e){this._enabled=!1!==e},enumerable:!1,configurable:!0}),e.prototype.ngOnInit=function(){var e,t,o;if(this.isHeader=this.rowIndex<0,this.context){var r=null===(t=null===(e=this.context)||void 0===e?void 0:e.rowCheckboxes)||void 0===t?void 0:t.at(this.rowIndex);this.isHeader||r||(r=new n.FormControl(!1),null===(o=this.context)||void 0===o||o.rowCheckboxes.push(r)),this.formControl=this.isHeader?this.context.selectAllCheckbox:r,this.watchForChanges()}else console.error("ecTableSelectableRow requires a defined SelectableTableRowContext to be shared with all instances in one table.")},e.prototype.ngOnChanges=function(e){var t;e.rowIndex&&!this.isHeader&&(this.formControl=this.context.rowCheckboxes.at(this.rowIndex),this.checkboxAttributeID=this.id+"_row"+this.rowIndex+"_ecCheckbox"),e.enabled&&!this.enabled&&!0===(null===(t=this.formControl)||void 0===t?void 0:t.value)&&this.formControl.setValue(!1)},e.prototype.ngOnDestroy=function(){var e=this;if(!this.isHeader&&this.formControl){this.context.rowAddedOrRemoved.next();var t=this.context.rowCheckboxes.controls.findIndex((function(t){return t==e.formControl}));t>=0&&this.context.rowCheckboxes.removeAt(t)}},e.prototype.rowClicked=function(e){var t,o,n;if(!this.isHeader&&this.enabled){var r=null==e?void 0:e.target,i=null===(n=null===(o=null===(t=null==r?void 0:r.classList)||void 0===t?void 0:t.value)||void 0===o?void 0:o.toLowerCase())||void 0===n?void 0:n.includes("row-checkbox");e.ctrlKey||i||this.clearAllRows(),this.formControl.setValue(!this.formControl.value),this.handleShiftSelect(e)}},e.prototype.watchForChanges=function(){var e,t=this;this.isHeader?this.context.rowAddedOrRemoved.pipe(c.debounceTime(10),c.takeUntil(this.destroyed)).subscribe((function(){t.context.lastClickedIndex=-1,t.dependentCheckboxesReference={controls:t.context.rowCheckboxes.controls}})):(this.context.rowAddedOrRemoved.next(),null===(e=this.formControl)||void 0===e||e.valueChanges.pipe(c.takeUntil(this.destroyed)).subscribe((function(e){t.isSelected=e})))},e.prototype.handleShiftSelect=function(e){var t,o=this.context.lastClickedIndex,n=this.rowIndex;if(e.shiftKey&&o>=0){if(this.clearAllRows(),n>o)for(var r=o;r<=n;r++)this.context.rowCheckboxes.at(r).setValue(!0);else if(n<o)for(r=o;r>=n;r--)this.context.rowCheckboxes.at(r).setValue(!0);else n===o&&this.formControl.setValue(!0);null===(t=document.getSelection())||void 0===t||t.removeAllRanges()}else this.context.lastClickedIndex=this.rowIndex},e.prototype.clearAllRows=function(){this.context.rowCheckboxes.controls.forEach((function(e){return e.setValue(!1)}))},e}();Ue.decorators=[{type:o.Component,args:[{selector:"[ecTableSelectableRow]",template:'\x3c!-- any elements of the existing table row that must go before the row selection checkbox can be marked with a class of before-checkbox --\x3e\r\n<ng-content select=".before-checkbox"></ng-content>\r\n<ng-container *ngIf="enabled">\r\n <th *ngIf="isHeader"\r\n class="checkbox"\r\n [ecTableLockedColumn]="lockedColOptions">\r\n <ec-checkbox id="{{id}}_selectAll"\r\n class="m-0"\r\n *ngIf="context?.selectAllCheckbox"\r\n [formModel]="context?.selectAllCheckbox"\r\n [dependentCheckboxesGroup]="dependentCheckboxesReference">\r\n </ec-checkbox>\r\n </th>\r\n <td *ngIf="!isHeader && formControl"\r\n class="checkbox"\r\n [ecTableLockedColumn]="lockedColOptions">\r\n <ec-checkbox id="{{id}}_row{{rowIndex}}_checkbox"\r\n [attr.id]="checkboxAttributeID"\r\n class="m-0 row-checkbox"\r\n [formModel]="formControl">\r\n </ec-checkbox>\r\n </td>\r\n</ng-container>\r\n\x3c!-- The rest of the table row --\x3e\r\n<ng-content></ng-content>',styles:[":host.is-enabled:not(.is-header){cursor:pointer}:host .checkbox{padding-left:1px;padding-right:1px;width:1.125rem}:host .checkbox:first-child{padding-left:.5rem;width:1.5625rem}td.checkbox ec-checkbox ::ng-deep *{pointer-events:none}"]}]}],Ue.propDecorators={id:[{type:o.HostBinding,args:["attr.id"]},{type:o.Input}],enabled:[{type:o.HostBinding,args:["class.is-enabled"]},{type:o.Input,args:["ecTableSelectableRow"]}],context:[{type:o.Input,args:["selectionContext"]}],rowIndex:[{type:o.Input}],lockedColOptions:[{type:o.Input}],isSelected:[{type:o.HostBinding,args:["class.is-selected"]}],isHeader:[{type:o.HostBinding,args:["class.is-header"]}],rowClicked:[{type:o.HostListener,args:["click",["$event"]]}]};var je=function(){function e(e){this.dialogService=e,this.activeDialogEvents=[],this.destroyed=new l.Subject}return e.prototype.ngOnInit=function(){var e=this;this.dialogService.events.pipe(c.filter((function(e){return e instanceof Q||e instanceof oe})),c.takeUntil(this.destroyed)).subscribe((function(t){var o,n;if(t instanceof Q)e.activeDialogEvents.push(t);else if(t instanceof oe&&e.activeDialogEvents.length>0){var r=e.activeDialogEvents[e.activeDialogEvents.length-1];e.dialogService.triggerEvent(new te(r.eventId,r.dialogId,null===(o=t.dialogResult)||void 0===o?void 0:o.save,null===(n=t.dialogResult)||void 0===n?void 0:n.context)),e.dialogClosed(r)}}))},e.prototype.ngOnDestroy=function(){this.destroyed.next(),this.destroyed.unsubscribe()},e.prototype.dialogOpened=function(e,t){e.dialogId=t},e.prototype.dialogClosed=function(e){var t=this.activeDialogEvents.findIndex((function(t){return t===e}));t>=0&&this.activeDialogEvents.splice(t,1)},e}();je.decorators=[{type:o.Component,args:[{selector:"ec-dialog-group",template:'<ec-dialog *ngFor="let dialog of activeDialogEvents"\r\n [dialogOpenStartEventId]="dialog.eventId"\r\n [size]="dialog.options?.size"\r\n [content]="dialog.content"\r\n [context]="dialog.context"\r\n [options]="dialog.options"\r\n (opened)="dialogOpened(dialog, $event)"\r\n (closed)="dialogClosed(dialog)">\r\n</ec-dialog>',styles:["@-webkit-keyframes spin{0%{transform:rotate(0)}to{transform:rotate(1turn)}}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(1turn)}}ec-dialog:not(:only-child){background-color:transparent}ec-dialog:not(:only-child):last-child,ec-dialog:not(:only-child):nth-last-child(2){background-color:rgba(26,26,35,.25)}"]}]}],je.ctorParameters=function(){return[{type:re}]};var He={zip:[".zip"],excel:[".xls",".xlsx"]},qe=function(e){function t(t,o){var n=e.call(this,t,o)||this;return n.validationMessageService=t,n.formGroupHelper=o,n.placeholder="Choose file...",n.fileOutput="base64",n}return v(t,e),t.getFormModel=function(e,t){void 0===t&&(t=!1);var o=new n.FormGroup({file:new n.FormControl({value:null,disabled:t},e),name:new n.FormControl({value:null,disabled:t},e),base64FileString:new n.FormControl(null),uploadResult:new n.FormControl(null)});return t&&o.disable(),o},t.prototype.ngOnChanges=function(t){e.prototype.ngOnChanges.call(this,t),this.updateFileTypeAccept()},t.prototype.ngOnInit=function(){var t,o,n=this;e.prototype.ngOnInit.call(this),null===(o=null===(t=this.formModel)||void 0===t?void 0:t.get("name"))||void 0===o||o.valueChanges.pipe(c.takeUntil(this.componentDestroyed)).subscribe((function(e){e||n.formModel.patchValue({file:null,base64FileString:null,uploadResult:null})}))},t.prototype.fileChange=function(e){return x(this,void 0,void 0,(function(){var t,o,n=this;return w(this,(function(r){switch(r.label){case 0:return(t=e.item(0))?((o=new FileReader).onloadend=function(e){return x(n,void 0,void 0,(function(){var e,n;return w(this,(function(r){return n=null===(e=null==o?void 0:o.result)||void 0===e?void 0:e.toString().split(",")[1],this.processFile(t,n),[2]}))}))},this.isBase64FileOutput()?(o.readAsDataURL(t),[3,3]):[3,1]):[3,4];case 1:return[4,this.processFile(t)];case 2:r.sent(),r.label=3;case 3:this.fileInput&&(this.fileInput.nativeElement.value=""),r.label=4;case 4:return[2]}}))}))},t.prototype.updateFileTypeAccept=function(){this.fileType&&("custom"!==this.fileType?this.fileTypeAccept=He[this.fileType].join(","):this.customExtensions&&(this.fileTypeAccept=this.customExtensions.join(",")))},t.prototype.processFile=function(e,t){return x(this,void 0,void 0,(function(){var o;return w(this,(function(n){switch(n.label){case 0:if(!this.onFileSelected)return[3,5];n.label=1;case 1:return n.trys.push([1,3,,4]),[4,this.onFileSelected(e)];case 2:return o=n.sent(),this.patchFileResult(e,t,o),[3,4];case 3:return n.sent(),[3,4];case 4:return[3,6];case 5:this.patchFileResult(e,t),n.label=6;case 6:return[2]}}))}))},t.prototype.isBase64FileOutput=function(){return"base64"===this.fileOutput},t.prototype.patchFileResult=function(e,t,o){var n;null===(n=this.formModel)||void 0===n||n.patchValue({file:e,name:null==e?void 0:e.name,base64FileString:null!=t?t:null}),o?this.formModel.patchValue({uploadResult:o}):this.formModel.patchValue({uploadResult:null})},t}(L);qe.decorators=[{type:o.Component,args:[{selector:"ec-file-upload",template:'<ec-form-group [label]="label"\r\n [formGroup]="formModel"\r\n class="mb-0">\r\n <div class="d-flex">\r\n <div class="textbox-group-input d-flex flex-grow">\r\n <input #fileInput\r\n id="{{inputId}}_input"\r\n type="file"\r\n tabindex="-1"\r\n [attr.accept]="fileTypeAccept"\r\n (click)="browseBtn.focus()"\r\n (change)="fileChange($event.target.files)"\r\n [class.has-value]="formModel?.get(\'name\')?.value">\r\n <ec-form-control id="{{inputId}}_formControl"\r\n class="text-truncate"\r\n [required]="required"\r\n [pending]="pending">\r\n <input id="{{inputId}}_name"\r\n [formControl]="formModel?.get(\'name\')"\r\n type="text"\r\n [placeholder]="placeholder"\r\n [tabindex]="-1">\r\n </ec-form-control>\r\n </div>\r\n <ec-button #browseBtn\r\n id="{{inputId}}_browseBtn"\r\n (clicked)="fileInput.click()"\r\n class="textbox-group-btn-right"\r\n type="secondary"\r\n [tabindex]="tabindex"\r\n [disabled]="formModel?.get(\'name\')?.disabled"\r\n label="Browse"\r\n [autofocus]="autofocus">\r\n </ec-button>\r\n </div>\r\n</ec-form-group>',styles:["@-webkit-keyframes spin{0%{transform:rotate(0)}to{transform:rotate(1turn)}}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(1turn)}}:host{display:block;margin-bottom:1rem}.textbox-group-input{position:relative}ec-form-control{margin-bottom:0}ec-form-control ::ng-deep>.ec-focus-ring{display:none!important}input[type=file]{cursor:pointer;display:block;height:100%;left:0;opacity:0;position:absolute;top:0;width:100%;z-index:1}input[type=file].has-value{width:calc(100% - 1.5rem)}"]}]}],qe.ctorParameters=function(){return[{type:F},{type:R}]},qe.propDecorators={placeholder:[{type:o.Input}],fileType:[{type:o.Input}],fileOutput:[{type:o.Input}],customExtensions:[{type:o.Input}],onFileSelected:[{type:o.Input}],fileInput:[{type:o.ViewChild,args:["fileInput",{read:o.ElementRef,static:!0}]}]};var We=function(e,t){var o=[];if(e instanceof n.FormControl)o.push(e);else if(e instanceof n.FormGroup)for(var r in e.controls)o.push(e.controls[r]);else e instanceof n.FormArray&&(o=e.controls);o.forEach((function(e){e instanceof n.FormArray?e.controls.forEach((function(e){e instanceof n.FormGroup||e instanceof n.FormArray?We(e,t):t(e)})):e instanceof n.FormGroup?We(e,t):t(e)}))},Ge=function(e,t,o){return void 0===t&&(t="value"),e.enabled&&null!==e.value&&void 0!==e.value?null===t?e.value:o?e.value[t][o]:e.value[t]:null},$e=function(){function e(e,t){this.validationMessageService=e,this.translateService=t,this.label="",this.labelPosition="top",this.overrideValidationError="",this.hideValidationMessage=!1,this.validationErrors="",this.allControlsTouched=!1,this.componentDestroyed=new l.Subject}return e.prototype.ngOnInit=function(){return x(this,void 0,void 0,(function(){var e=this;return w(this,(function(t){return this.formGroup&&(this.formGroup.statusChanges.pipe(c.takeUntil(this.componentDestroyed)).subscribe((function(){e.translateValidationMessages(e.getErrors(e.formGroup))})),this.translateValidationMessages(this.getErrors(this.formGroup))),this.id&&(this.attrId=this.id),[2]}))}))},e.prototype.ngOnDestroy=function(){this.componentDestroyed.next(),this.componentDestroyed.unsubscribe()},e.prototype.getErrors=function(e){var t=this;e.markAsUntouched();var o=null,n=!0,r=!1;return We(e,(function(e){o=t.assignErrors(e,o),e.untouched&&(n=!1),r=!0})),e.errors&&(o=Object.assign(o||{},e.errors)),n&&r&&e.markAsTouched(),o},e.prototype.assignErrors=function(e,t){return e.errors&&(t=Object.assign(t||{},e.errors)),t},e.prototype.translateValidationMessages=function(e){return x(this,void 0,void 0,(function(){var t;return w(this,(function(o){switch(o.label){case 0:return e?this.overrideValidationError?(this.validationErrors=this.translateService.instant(this.overrideValidationError),[3,3]):[3,1]:[3,4];case 1:return[4,this.validationMessageService.getErrorMessages(e)];case 2:(t=o.sent())&&(this.validationErrors=t.join("; ")),o.label=3;case 3:return[3,5];case 4:this.validationErrors="",o.label=5;case 5:return[2]}}))}))},e}();$e.decorators=[{type:o.Component,args:[{selector:"ec-form-group",template:'<div class="control control-label-{{labelPosition}}" [class.ec-untouched]="formGroup?.untouched">\r\n <label *ngIf="label" ngPreserveWhitespaces>\r\n\r\n <span id="{{id}}_label">{{label | translate}}</span>\r\n\r\n <span *ngIf="!hideValidationMessage && validationErrors && formGroup?.touched && formGroup?.invalid">{{validationErrors | translate}}</span>\r\n </label>\r\n <ng-content></ng-content>\r\n</div>',styles:['@-webkit-keyframes spin{0%{transform:rotate(0)}to{transform:rotate(1turn)}}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(1turn)}}:host{color:#1a1a23;display:block;font-family:Roboto,-apple-system,BlinkMacSystemFont,Segoe UI,Oxygen,Ubuntu,Fira Sans,Droid Sans,Helvetica Neue,sans-serif;font-size:1rem;margin-bottom:1rem;width:100%}:host :host-context(.form-condensed){margin-bottom:.5rem}:host .control{display:flex;flex-direction:column;width:100%}:host .control.control-label-bottom{flex-direction:column-reverse}:host .control.control-label-left{flex-direction:row}:host .control.control-label-left label{margin-right:.25rem}:host .control.control-label-right{flex-direction:row-reverse}:host .control.control-label-right label{margin-left:.25rem}:host .control.control-label-left,:host .control.control-label-right{align-items:center}:host .control.control-label-left label,:host .control.control-label-right label{flex:1 1;margin-bottom:0;margin-top:0}:host .control.control-label-left .control-input,:host .control.control-label-right .control-input{flex:2 2}:host .control.is-readonly input,:host .control.is-readonly select{-moz-user-select:none;-ms-user-select:none;-webkit-user-select:none;background-clip:border-box;background-color:rgba(26,26,35,.12);background-image:none;border-color:transparent;color:#1a1a23;opacity:1;overflow:hidden;pointer-events:none;user-select:none;white-space:nowrap}:host .control.invalid .textbox-group-input ::ng-deep .control input.ng-invalid,:host .control.invalid .textbox-group-input ::ng-deep .control input.ng-valid{background-color:#fff8cc;background-image:url(\'data:image/svg+xml;charset=utf8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 32 32"><path fill="rgba(26, 26, 35, 0.66)" d="M20.21 20.21h-8.42L10.95 0h10.1l-.84 20.21zm-8.42 3.37h8.42V32h-8.42z"/></svg>\');background-position:.25em;background-repeat:no-repeat;background-size:1em 1em;padding-left:1.5em}:host .control.invalid .textbox-group-input ::ng-deep .control input.ng-invalid:not(:focus),:host .control.invalid .textbox-group-input ::ng-deep .control input.ng-valid:not(:focus){border-color:#ffe433}:host .control.invalid:not(.open) .textbox-group-btn-right ::ng-deep button{background-color:#fff8cc}:host .control.invalid:not(.open) .textbox-group-btn-right ::ng-deep button:not(:focus){border-color:#ffe433}:host .textbox-group{display:flex;position:relative}:host input:focus,:host select:focus,:host textarea:focus{outline:none}label{color:rgba(26,26,35,.66);display:block;font-size:.75rem;line-height:1;margin:.375rem 0}.control.ec-untouched ::ng-deep input.ng-invalid.ng-touched{background-image:none;padding-left:.5rem}.control.ec-untouched ::ng-deep input.ng-invalid.ng-touched:not(.is-empty)~.units-left{left:0}.control.ec-untouched ::ng-deep input:required:not(:disabled).is-empty{background-color:#fff;background-image:url(\'data:image/svg+xml;charset=utf8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 32 32"><path fill="%23ffe433" d="M31.32 21.69l-.09.18-2.48 4.35c-.36.54-.77.62-1.25.27-.12 0-.2 0-.2-.09L19.53 22v9.37a1.26 1.26 0 0 1-.72.67h-5.26c-.59 0-.83-.3-.83-.89 0-.12.15-.21.15-.27V22l-8 4.71h-.12c-.42.66-.8.21-1.16-.27L1 21.82a.82.82 0 0 1 .35-1.26l.18-.1L9 16 .87 11.47v-.09c0-.36-.39-.74-.09-1.16l2.75-4.35v-.09c0-.42.82-.54 1.29-.36l8 4.62V.89c0-.59.18-.89.77-.89h5c.65 0 .91.3.91.89V10l7.94-4.53c.48-.29.72-.21 1.08.27l2.32 4.35v.09c.66.48.45.89-.08 1.25L23 16l7.91 4.53v.09c-.04.18.53.54.41 1.07z"/></svg>\');background-position:.25em;background-repeat:no-repeat;background-size:1em 1em;border-color:#d2d7d9;padding-left:1.5em}.control.ec-untouched ::ng-deep input:required:not(:disabled).is-empty:focus{border-color:#0084a9;box-shadow:0 0 0 1px #0084a9;position:relative;z-index:1}.control-label-left{display:flex}']}]}],$e.ctorParameters=function(){return[{type:F},{type:i.TranslateService}]},$e.propDecorators={id:[{type:o.Input}],attrId:[{type:o.HostBinding,args:["attr.id"]}],label:[{type:o.Input}],formGroup:[{type:o.Input}],labelPosition:[{type:o.Input}],overrideValidationError:[{type:o.Input}],hideValidationMessage:[{type:o.Input}]};var Ye=function(){function e(){}return e.tryParseJSON=function(e){if(e)try{return JSON.parse(e)}catch(e){return}},e}(),Xe=function(){function e(e){this.translate=e,this.maxLength=1e4,this.jsonDisplay=new n.FormControl("")}return e.prototype.ngOnChanges=function(){if(this.id&&(this.attrId=this.id),this.jsonString){var e=this.jsonString,t=Ye.tryParseJSON(this.jsonString);t&&(e=JSON.stringify(t,null,2)),e.length>this.maxLength&&(e=e.substr(0,this.maxLength)+"\r\n"+this.translate.instant("MessageTooLong_Truncated_SC")),this.jsonDisplay.patchValue(e)}},e}();Xe.decorators=[{type:o.Component,args:[{selector:"ec-json-display",template:'<ec-button id="{{id}}_copy"\r\n class="copy-button"\r\n *ngIf="jsonDisplay.value"\r\n type="icon"\r\n icon="icon-copy"\r\n [ecCopyButton]="jsonDisplay">\r\n</ec-button>\r\n<pre><code>{{jsonDisplay.value}}</code></pre>',styles:["@-webkit-keyframes spin{0%{transform:rotate(0)}to{transform:rotate(1turn)}}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(1turn)}}:host{background:#354751;border-radius:3px;color:hsla(0,0%,100%,.6);display:block;font-size:.75rem;max-height:15rem;min-height:2.125rem;overflow-x:auto;overflow-y:auto;position:relative;text-align:right}pre{margin-bottom:0;margin-top:-2rem;text-align:left}pre code{display:block;padding:.5rem}.copy-button{position:sticky;top:0}.copy-button ::ng-deep .ec-icon{color:hsla(0,0%,100%,.6)!important}.copy-button ::ng-deep button:hover{background-color:transparent!important}.copy-button ::ng-deep button:hover .ec-icon{color:#fff!important}"]}]}],Xe.ctorParameters=function(){return[{type:i.TranslateService}]},Xe.propDecorators={id:[{type:o.Input}],attrId:[{type:o.HostBinding,args:["attr.id"]}],jsonString:[{type:o.Input}],maxLength:[{type:o.Input}]};var Ke=function(e,t,o){void 0===o&&(o="user"),this.action=e,this.toast=t,this.source=o},Ze=function(){function e(){this._events=new l.Subject,this.events=this._events.asObservable()}return e.prototype.showToast=function(e,t){var o=new Ke("add",e,t);this._events.next(o)},e.prototype.dismissToast=function(e,t){var o=new Ke("remove",e,t);this._events.next(o)},e}();Ze.ɵprov=o.ɵɵdefineInjectable({factory:function(){return new Ze},token:Ze,providedIn:"root"}),Ze.decorators=[{type:o.Injectable,args:[{providedIn:"root"}]}],Ze.ctorParameters=function(){return[]};var Je=function(){function e(e){this.toastService=e,this.open=!1,this.TOAST_ANIMATION_DURATION=250,this.closed=new o.EventEmitter,this.TIMED_TOAST_DURATION=4e3,this.destroyed=new l.Subject}return e.prototype.ngOnInit=function(){var e=this;this.toastService.events.pipe(c.takeUntil(this.destroyed)).subscribe((function(t){"remove"==t.action&&t.toast===e.toastItem&&e.close(t)}))},e.prototype.ngOnChanges=function(e){e.toastItem&&this.toastItem&&(this.id=this.toastItem.id,this.open=!0,this.toastItem.dismissible||this.closeAfterTimer())},e.prototype.ngOnDestroy=function(){this.destroyed.next(),this.destroyed.complete()},e.prototype.closeClicked=function(){this.toastItem&&this.toastService.dismissToast(this.toastItem,"user")},e.prototype.close=function(e){var t=this;this.open=!1,l.timer(this.TOAST_ANIMATION_DURATION).subscribe((function(){t.closed.emit(e)}))},e.prototype.closeAfterTimer=function(){var e=this;l.timer(this.TIMED_TOAST_DURATION).pipe(c.takeUntil(l.race(this.closed,this.destroyed))).subscribe((function(){e.toastItem&&e.toastService.dismissToast(e.toastItem,"auto")}))},e}();Je.decorators=[{type:o.Component,args:[{selector:"ec-toast",template:'<ec-banner id="{{toastItem?.id}}_banner"\r\n [type]="toastItem?.type"\r\n bannerStyle="toast"\r\n [customIcon]="toastItem?.icon"\r\n [showCloseBtn]="toastItem?.dismissible"\r\n [autoHideOnClose]="false"\r\n (closed)="closeClicked()">\r\n <div class="d-flex">\r\n <div id="{{toastItem?.id}}_message"\r\n [innerHTML]="toastItem?.message | translate"></div>\r\n <a id="{{toastItem?.id}}_action"\r\n *ngIf="toastItem?.action && toastItem?.actionLabel"\r\n class="text-link ml-2"\r\n (click)="toastItem!.action!()">{{toastItem?.actionLabel | translate}}</a>\r\n </div>\r\n</ec-banner>',styles:[":host{bottom:0;display:block;left:50%;position:fixed;transform:translate(-50%,150%);transition:transform var(--toast-animation-duration,.25s);transition-timing-function:ease-in;z-index:70}:host.is-open{transform:translate(-50%,calc(var(--toast-bottom, 0rem)*-1 - 1.5rem));transition-timing-function:cubic-bezier(.18,.89,.32,1.28)}"]}]}],Je.ctorParameters=function(){return[{type:Ze}]},Je.propDecorators={toastItem:[{type:o.Input}],id:[{type:o.HostBinding,args:["attr.id"]}],open:[{type:o.HostBinding,args:["class.is-open"]}],TOAST_ANIMATION_DURATION:[{type:o.HostBinding,args:["style.--toast-animation-duration.ms"]}],closed:[{type:o.Output}]};var Qe=function(){},et=function(e){function t(){return null!==e&&e.apply(this,arguments)||this}return v(t,e),t.prototype.trackPageView=function(e,t,o){},t.prototype.trackEvent=function(e,t,o){},t}(Qe);et.ɵprov=o.ɵɵdefineInjectable({factory:function(){return new et},token:et,providedIn:"root"}),et.decorators=[{type:o.Injectable,args:[{providedIn:"root"}]}];var tt=function(){function e(e,t){this.toastService=e,this.telemetryService=t,this.dismissibleToastBottom=0,this.pendingToasts=[],this.destroyed=new l.Subject}return e.prototype.ngOnInit=function(){var e=this;this.toastService.events.pipe(c.takeUntil(this.destroyed)).subscribe((function(t){"add"==t.action?(e.addToast(t.toast),e.updateDismissibleToastBottom(),e.trackEvent(t)):"remove"==t.action&&t.toast!==e.currentDismissibleToast&&t.toast!==e.currentTimedToast&&(e.removePendingToast(t.toast),e.trackEvent(t))}))},e.prototype.ngOnDestroy=function(){this.destroyed.next(),this.destroyed.complete()},e.prototype.updateVisibleToast=function(e){e.toast.dismissible?this.currentDismissibleToast=this.getNextToast(!0):this.currentTimedToast=this.getNextToast(!1),this.updateDismissibleToastBottom(),this.trackEvent(e)},e.prototype.addToast=function(e){e.dismissible&&this.currentDismissibleToast||!e.dismissible&&this.currentTimedToast?this.addPendingToast(e):e.dismissible?this.currentDismissibleToast=e:this.currentTimedToast=e},e.prototype.getNextToast=function(e){var t=this.pendingToasts.find((function(t){return t.dismissible===e}));return t&&this.removePendingToast(t),t},e.prototype.addPendingToast=function(e){this.pendingToasts.push(e)},e.prototype.removePendingToast=function(e){var t=this.pendingToasts.indexOf(e);t>-1&&this.pendingToasts.splice(t,1)},e.prototype.updateDismissibleToastBottom=function(){this.currentTimedToast&&this.timedToastEl?this.dismissibleToastBottom=(this.timedToastEl.nativeElement.offsetHeight+8)/16:this.dismissibleToastBottom=0},e.prototype.trackEvent=function(e){var t,o,n,r=this.pendingToasts.filter((function(e){return e.dismissible})),i=this.pendingToasts.filter((function(e){return!e.dismissible}));this.telemetryService.trackEvent(e.action+" toast",{action:e.action,source:e.source,hasDismissiblePending:r.length>0?"yes":"no",dismissiblePendingLength:""+r.length,hasTransientPending:i.length>0?"yes":"no",transientPendingLength:""+i.length,toastId:null!==(t=e.toast.id)&&void 0!==t?t:"",toastType:e.toast.type,toastMessage:e.toast.message,toastDismissible:""+e.toast.dismissible,toastIcon:null!==(o=e.toast.icon)&&void 0!==o?o:"",toastAction:null!==(n=e.toast.actionLabel)&&void 0!==n?n:""})},e}();tt.decorators=[{type:o.Component,args:[{selector:"ec-toaster",template:'<ec-toast [toastItem]="currentDismissibleToast"\r\n [style.--toast-bottom.rem]="dismissibleToastBottom"\r\n (closed)="updateVisibleToast($event)">\r\n</ec-toast>\r\n\r\n<ec-toast #timedToast\r\n [toastItem]="currentTimedToast"\r\n (closed)="updateVisibleToast($event)">\r\n</ec-toast>'}]}],tt.ctorParameters=function(){return[{type:Ze},{type:et}]},tt.propDecorators={timedToastEl:[{type:o.ViewChild,args:["timedToast",{static:!1,read:o.ElementRef}]}]};var ot=function(){function e(){this.isDialog=!1,this.status=new Y("pending"),this.showHeader=!0,this.moreActionsLabel="Actions",this.secondaryActionLabel="Cancel",this.hideSecondaryAction=!1,this.primaryActionLabel="Save",this.hidePrimaryAction=!1,this.stickyFooter=!0,this.fitContent=!1,this.onPrimaryAction=new o.EventEmitter,this.onSecondaryAction=new o.EventEmitter}return e.prototype.primaryAction=function(e){this.onPrimaryAction&&this.onPrimaryAction.emit(e)},e.prototype.secondaryAction=function(e){this.onSecondaryAction&&this.onSecondaryAction.emit(e)},e}();ot.decorators=[{type:o.Component,args:[{selector:"ec-page-view",template:'<div ecOverlay\r\n [status]="status?.status"\r\n [message]="status?.message"\r\n [displayAsMask]="true"\r\n class="bg-body flex-grow d-flex">\r\n <div id="PageViewScrollContainer" \r\n class="d-flex flex-column flex-grow scroll-y" \r\n [class.is-dialog]="isDialog"\r\n [class.fit-content]="fitContent"\r\n [class.sticky-footer]="stickyFooter && !!footerTemplate"\r\n [class.overlay-visible]="status?.status !== \'hasData\'">\r\n <section>\r\n <ng-content></ng-content> \r\n </section>\r\n \r\n <footer>\r\n <ng-container *ngTemplateOutlet="footerTemplate"></ng-container>\r\n </footer>\r\n\r\n <header *ngIf="showHeader">\r\n \r\n <ol id="breadcrumbs"\r\n *ngIf="breadcrumbs?.length && !isDialog">\r\n <li *ngFor="let crumb of breadcrumbs; last as isLast">\r\n <a *ngIf="crumb.url; else label"\r\n [routerLink]="crumb.url">\r\n <ng-container *ngTemplateOutlet="label"></ng-container>\r\n </a>\r\n <ng-template #label>{{crumb.label}}</ng-template>\r\n </li>\r\n </ol>\r\n \r\n <div *ngIf="!customHeaderTemplate; else customHeaderOutlet" class="titlebar">\r\n <app-page-title *ngIf="!customTitleTemplate; else customTitle" \r\n [title]="title"\r\n [subTitle]="subTitle"\r\n [titleIcon]="titleIcon"\r\n class="title">\r\n </app-page-title>\r\n \r\n <ng-template #customTitle>\r\n <div class="title">\r\n <ng-container *ngTemplateOutlet="customTitleTemplate"></ng-container>\r\n </div>\r\n </ng-template>\r\n \r\n <div class="actions">\r\n <ec-button id="primaryAction"\r\n class="ml-2"\r\n *ngIf="!hidePrimaryAction && onPrimaryAction.observers?.length"\r\n [disabled]="status?.status === \'pending\'"\r\n type="primary"\r\n [label]="primaryActionLabel"\r\n (clicked)="primaryAction($event)">\r\n </ec-button>\r\n <ec-button id="secondaryAction"\r\n class="ml-2"\r\n *ngIf="!hideSecondaryAction && onSecondaryAction.observers?.length"\r\n type="secondary"\r\n [label]="secondaryActionLabel"\r\n (clicked)="secondaryAction($event)">\r\n </ec-button>\r\n <ec-dropdown id="moreActions"\r\n *ngIf="moreActions?.length"\r\n [disabled]="status?.status === \'pending\'"\r\n class="ml-2"\r\n buttonType="secondary"\r\n [label]="moreActionsLabel"\r\n [items]="moreActions">\r\n </ec-dropdown>\r\n <ng-container *ngTemplateOutlet="customActionsTemplate"></ng-container>\r\n </div>\r\n </div>\r\n \r\n <ng-template #customHeaderOutlet> \r\n <div class="page-header">\r\n <ng-container *ngTemplateOutlet="customHeaderTemplate"></ng-container>\r\n </div>\r\n </ng-template>\r\n \r\n <ec-banner *ngIf="errors"\r\n id="pageViewErrors"\r\n [class.border-bottom-0]="!isDialog">\r\n <div [innerHtml]="errors"></div>\r\n </ec-banner>\r\n </header>\r\n </div>\r\n</div>\r\n\r\n',host:{class:"flex-grow"},styles:[':host{display:flex;flex:1 1;min-height:0}header{background-color:#f1f3f4;flex:none;order:1;padding:1rem 1.5rem .5rem;position:sticky;top:0}ol{-ms-grid-column:1;-ms-grid-column-span:2;-ms-grid-row:1;-ms-grid-row-span:1;font-size:.75rem;grid-column:1/3;grid-row:1/2;line-height:1rem;list-style:none;margin:0 0 .25rem;padding:0}ol li{display:inline}ol li:not(:last-child):after{color:rgba(26,26,35,.66);content:" / ";display:inline}.titlebar{-ms-grid-columns:auto -webkit-max-content;-ms-grid-columns:auto max-content;-ms-grid-rows:-webkit-max-content -webkit-max-content;-ms-grid-rows:max-content max-content;display:-ms-grid;display:grid;gap:0 1rem;grid-template-columns:auto -webkit-max-content;grid-template-columns:auto max-content;grid-template-rows:-webkit-max-content -webkit-max-content;grid-template-rows:max-content max-content}.title{-ms-grid-column:1;-ms-grid-column-span:1;-ms-grid-row:2;-ms-grid-row-align:center;-ms-grid-row-span:1;align-self:center;grid-column:1/2;grid-row:2/3}.actions{-ms-grid-column:2;-ms-grid-column-span:1;-ms-grid-row:2;-ms-grid-row-span:1;direction:rtl;grid-column:2/3;grid-row:2/3}ec-banner{margin-top:1rem}section{flex:1 0 auto;min-height:0;order:2;padding:.5rem 1.5rem 0}footer{align-items:center;background-color:#f1f3f4;display:flex;flex:none;height:4.5rem;order:3;padding:0 1.5rem}.is-dialog header{padding:0}.is-dialog .titlebar{background-color:#fff;border-bottom:1px solid rgba(26,26,35,.18);padding:1rem}.is-dialog ec-banner{margin:0}.is-dialog section{padding:1rem 1rem 0}.sticky-footer section{padding-bottom:4.5rem}.sticky-footer footer{bottom:0;position:sticky}.fit-content section{display:flex;flex:1 1;padding-bottom:0}.overlay-visible header{z-index:21}.overlay-visible ec-banner{display:none}']}]}],ot.ctorParameters=function(){return[]},ot.propDecorators={isDialog:[{type:o.Input}],status:[{type:o.Input}],showHeader:[{type:o.Input}],errors:[{type:o.Input}],breadcrumbs:[{type:o.Input}],title:[{type:o.Input}],titleIcon:[{type:o.Input}],subTitle:[{type:o.Input}],moreActionsLabel:[{type:o.Input}],moreActions:[{type:o.Input}],secondaryActionLabel:[{type:o.Input}],hideSecondaryAction:[{type:o.Input}],primaryActionLabel:[{type:o.Input}],hidePrimaryAction:[{type:o.Input}],customTitleTemplate:[{type:o.Input}],customActionsTemplate:[{type:o.Input}],customHeaderTemplate:[{type:o.Input}],footerTemplate:[{type:o.Input}],stickyFooter:[{type:o.Input}],fitContent:[{type:o.Input}],onPrimaryAction:[{type:o.Output}],onSecondaryAction:[{type:o.Output}]};var nt=function(){};nt.decorators=[{type:o.Component,args:[{selector:"app-page-title",template:'<i *ngIf="titleIcon"\r\n class="flex-shrink mr-1 my-1 ec-icon ec-icon-md {{titleIcon}}"></i>\r\n<div>\r\n <h1 *ngIf="title"\r\n class="text-title-1 mb-0 py-1 text-truncate">{{title}}</h1>\r\n <p *ngIf="subTitle"\r\n class="text-caption-1 mb-0 mt-n1 text-truncate">{{subTitle}}</p>\r\n</div>',host:{class:"d-flex"}}]}],nt.propDecorators={title:[{type:o.Input}],titleIcon:[{type:o.Input}],subTitle:[{type:o.Input}]};var rt=function(){function e(e){this.userPreferenceService=e,this.lastFormatString="HH:mm:ss"}return e.prototype.transform=function(e,t){var o=this,n="";return this.userPreferenceService.getPreferences().subscribe((function(e){e.preference&&(n=e.preference.timeFormat,t||(n=n.replace(":ss","")),o.lastFormatString=n)})),f.default(e).format(this.lastFormatString)},e}();rt.decorators=[{type:o.Pipe,args:[{name:"timeDisplay"}]}],rt.ctorParameters=function(){return[{type:z}]};var it=function(){function e(){}return e.forRoot=function(t){return{ngModule:e,providers:[{provide:et,useClass:t.telemetryService}]}},e}();it.decorators=[{type:o.NgModule,args:[{declarations:[P,G,$,q,ae,X,O,S,G,E,Te,B,j,N,H,Z,ie,A,rt,de,he,me,ye,ve,xe,Ie,De,Ee,Oe,D,Pe,Ve,ze,Ue,Ae,Me,Se,Fe,Me,Re,Le,Ne,_e,Ue,T,je,qe,$e,Xe,Je,tt,ot,nt],imports:[t.CommonModule,n.FormsModule,n.ReactiveFormsModule,r.RouterModule,i.TranslateModule,a.A11yModule,s.OverlayModule],providers:[R,re,A,rt,de,Se],exports:[P,G,$,q,ae,X,O,G,E,Te,B,j,N,H,Z,ie,A,rt,he,me,ye,ve,xe,Ie,De,Ee,Oe,D,Pe,ze,Ue,Ae,Fe,Me,Re,Le,Ne,_e,T,je,qe,$e,Xe,Je,tt,ot,nt]}]}];var at=function(){},st=function(){};function lt(e,t){var o=d.get(e,t);return e&&"string"==typeof o?o.toLowerCase():e[t]}st.ndash="–";var ct=function(e,t,o,n,r,i){this.label=e,this.type=t||"info",this.icon=n,this.isDismissable=null!=r&&r,this.tooltip=i,o&&(this.classList=o)},dt=function(){};dt.requiredPlural=function(e){return null!==n.Validators.required(e)?{requiredPlural:!0}:null},dt.json=function(e){return e.value&&void 0===Ye.tryParseJSON(e.value)?{json:!0}:null};var pt=function(){this.title=""},ut=function(){function e(e){this.classList="d-flex flex-grow",this.title="",this.status=new Y("pending","Loading"),this.formGroup=new n.FormGroup({}),this.defaultInvalidFormMessage="PleaseCorrectForm_SC",this.defaultUnknownSaveError="PageBaseUnknownSaveError_SC",this.destroyed=new l.Subject,this._afterViewInitComplete=new l.ReplaySubject,this.afterViewInitComplete=this._afterViewInitComplete,this._errors="",this.errorService=e.get(Ce),this.translateService=e.get(i.TranslateService),this.scrollService=e.get(_),this.router=e.get(r.Router),this.activatedRoute=e.get(r.ActivatedRoute),this.dialogService=e.get(re)}return Object.defineProperty(e.prototype,"errors",{get:function(){return this._errors},enumerable:!1,configurable:!0}),e.prototype.ngOnInit=function(){var e;return x(this,void 0,void 0,(function(){var t;return w(this,(function(o){switch(o.label){case 0:return o.trys.push([0,2,,3]),null===(e=this.status)||void 0===e||e.setStatus("pending","Loading"),this.initPromise=this.onInit(),[4,this.initPromise];case 1:return o.sent(),[3,3];case 2:return t=o.sent(),this.onError(t),[3,3];case 3:return[2]}}))}))},e.prototype.onAfterViewInit=function(){return x(this,void 0,void 0,(function(){return w(this,(function(e){return[2]}))}))},e.prototype.ngAfterViewInit=function(){var e;return x(this,void 0,void 0,(function(){var t,o;return w(this,(function(n){switch(n.label){case 0:return n.trys.push([0,3,,4]),[4,this.initPromise];case 1:return t=n.sent(),this.parseInitResult(t),[4,this.onAfterViewInit()];case 2:return n.sent(),this._afterViewInitComplete.next(),this._afterViewInitComplete.complete(),"pending"===(null===(e=this.status)||void 0===e?void 0:e.status)&&this.status.setStatus("hasData"),this.setUpRouterSubscriptions(),[3,4];case 3:return o=n.sent(),this.onError(o),[3,4];case 4:return[2]}}))}))},e.prototype.onNavigationEnd=function(){},e.prototype.reload=function(){this._afterViewInitComplete=new l.ReplaySubject,this.ngOnInit(),this.ngAfterViewInit()},e.prototype.applyModelUpdates=function(){return x(this,void 0,void 0,(function(){return w(this,(function(e){return[2]}))}))},e.prototype.saveToApi=function(){return x(this,void 0,void 0,(function(){return w(this,(function(e){return[2]}))}))},e.prototype.onSaveComplete=function(e){},e.prototype.onSave=function(e){var t;return x(this,void 0,void 0,(function(){var e,o,n=this;return w(this,(function(r){switch(r.label){case 0:if(this.formGroup.markAllAsTouched(),!this.formGroup.valid)return[3,6];null===(t=this.status)||void 0===t||t.setStatus("pending","Saving"),r.label=1;case 1:return r.trys.push([1,4,,5]),[4,this.applyModelUpdates()];case 2:return r.sent(),[4,this.saveToApi()];case 3:return e=r.sent()||-1,this._errors="",this.onSaveComplete(e),[3,5];case 4:return o=r.sent(),this.showErrorBanner(o,this.defaultUnknownSaveError),[3,5];case 5:return[3,7];case 6:""===this.errors&&this.showErrorBanner(this.defaultInvalidFormMessage),this.scrollContainerSelector&&setTimeout((function(){n.scrollService.scrollToItem(n.scrollContainerSelector,".ng-invalid")})),r.label=7;case 7:return[2]}}))}))},e.prototype.ngOnDestroy=function(){this.destroyed.next(),this.destroyed.unsubscribe()},e.prototype.onError=function(e){this.errorService.logConsoleError(e),this.showErrorOverlay(e)},e.prototype.showErrorOverlay=function(e){var t=this;this.getErrorMessage(e).subscribe((function(e){var o;null===(o=t.status)||void 0===o||o.setStatus("error",e)}))},e.prototype.showErrorBanner=function(e,t){var o=this;this.getErrorMessage(e,t).subscribe((function(e){var t;o._errors=e,null===(t=o.status)||void 0===t||t.setStatus("hasData")}))},e.prototype.getErrorMessage=function(e,t){var o=this.errorService.parseApiError(e,t);return this.translateService.get(o)},e.prototype.parseInitResult=function(e){this.initResult=e,this.title=e.title,this.breadcrumbs=e.breadcrumbs},e.prototype.setUpRouterSubscriptions=function(){var e=this;this.navigationEndSubscription||this.destroyed.closed||(this.navigationEndSubscription=this.router.events.pipe(c.takeUntil(this.destroyed),c.filter((function(e){return e instanceof r.NavigationEnd}))).subscribe((function(t){try{e.onNavigationEnd()}catch(t){e.onError(t)}})))},e}();ut.decorators=[{type:o.Directive}],ut.ctorParameters=function(){return[{type:o.Injector}]},ut.propDecorators={classList:[{type:o.HostBinding,args:["class"]}]};var ht=new MouseEvent("click");var mt=function(){function e(e){this.suffix=e,this.currentLang="en_US"}return e.prototype.get=function(e,t){return l.of(e+(this.suffix||""))},e.prototype.stream=function(e,t){return l.of(e+(this.suffix||""))},e.prototype.instant=function(e,t){return e+(this.suffix||"")},e.prototype.setTranslation=function(e,t,o){},e.prototype.setDefaultLang=function(e){},e.prototype.use=function(e){},e}(),gt=function(){function e(){}return e.prototype.translateObjectArray=function(e,t){return Promise.resolve(e)},e.prototype.translateObjectProperty=function(e,t,o){return l.of(e)},e.prototype.getKendoLocaleId=function(){return"en"},e.prototype.translateCorePopValue=function(e,t){return t},e.prototype.setLanguage=function(){},e}(),ft=function(){function e(e){this._component=e}return Object.defineProperty(e.prototype,"controls",{get:function(){return this._component.formGroup.controls},enumerable:!1,configurable:!0}),e.prototype.initialize=function(){return x(this,void 0,void 0,(function(){return w(this,(function(e){switch(e.label){case 0:return[4,this._component.ngOnInit()];case 1:return e.sent(),[4,this._component.ngAfterViewInit()];case 2:return e.sent(),[2]}}))}))},e.prototype.clickSave=function(){return x(this,void 0,void 0,(function(){return w(this,(function(e){switch(e.label){case 0:return[4,this._component.onSave(ht)];case 1:return e.sent(),[2]}}))}))},e}(),bt=function(){function e(){}return e.getComponentInjector=function(){return o.Injector.create({providers:k(this.CoreProviders,this.ComponentProviders)})},e}();bt.CoreProviders=[{provide:r.Router,useFactory:pe,deps:[]},{provide:_,useFactory:function(){return se.createSpy(_)},deps:[]},{provide:r.ActivatedRoute,useFactory:function(){return new ue},deps:[]}],bt.ComponentProviders=[{provide:i.TranslateService,useFactory:function(){return new mt("-T")},deps:[]},{provide:Ce,deps:[]},{provide:re,useFactory:function(){return se.createSpy(re)},deps:[]}],e.AppBarComponent=xe,e.AvatarComponent=ve,e.BannerComponent=O,e.ButtonComponent=P,e.CacheService=C,e.CheckboxComponent=me,e.ClickAreaForDirective=Ee,e.CollapsibleToggleComponent=Oe,e.ComboboxComponent=B,e.ComponentsModule=it,e.ConfirmComponent=Z,e.ConfirmDialogContext=K,e.CopyButtonDirective=Fe,e.CustomValidators=dt,e.DateDisplayPipe=A,e.DateTimeHelper=V,e.DialogCloseDuration=100,e.DialogCloseEvent=te,e.DialogCloseLatestEvent=oe,e.DialogComponent=ie,e.DialogEvent=J,e.DialogGroupComponent=je,e.DialogOpenDuration=125,e.DialogOpenEndEvent=ee,e.DialogOpenStartEvent=Q,e.DialogResult=ne,e.DialogService=re,e.DropdownComponent=H,e.ErrorService=Ce,e.FileTypeExtensions=He,e.FileUploadComponent=qe,e.FormControlBase=L,e.FormControlComponent=Le,e.FormGroupComponent=$e,e.FormGroupHelper=R,e.IfViewportWidthDirective=De,e.ItemDisplayComponent=_e,e.JsonDisplayComponent=Xe,e.JsonHelper=Ye,e.MenuComponent=j,e.MockActivatedRoute=ue,e.MockDateDisplayPipe=de,e.MockDialog=le,e.MockDialogContent=ce,e.MockTranslateService=mt,e.MockTranslationHelperService=gt,e.NavGroup=W,e.NavItemActiveDirective=q,e.NumericboxComponent=ye,e.Overlay=Y,e.PageBaseComponent=ut,e.PageBaseComponentTestHelper=ft,e.PageBaseComponentTestInjectorFactory=bt,e.PageInitResult=pt,e.PageTitleComponent=nt,e.PageViewComponent=ot,e.PanelCloseDuration=225,e.PanelOpenDuration=250,e.PopoverComponent=Ae,e.PopupContainerDirective=N,e.RadioButtonComponent=he,e.RadioButtonOption=at,e.ResizableColumnComponent=T,e.RowCountPipe=Se,e.ScrollService=_,e.SearchableTableComponent=Te,e.SelectComponent=Ne,e.SpinnerComponent=ae,e.SplashComponent=Ie,e.SplashService=we,e.SpyFactory=se,e.TableComponent=E,e.TableLockedColumnComponent=ze,e.TableMasterHeaderRowComponent=Pe,e.TableMasterRowComponent=D,e.TablePaginationComponent=Me,e.TableSelectableRowComponent=Ue,e.TableSelectableRowContext=Be,e.TabsComponent=G,e.Tag=ct,e.TagsComponent=Re,e.TelemetryBaseService=Qe,e.TextboxComponent=$,e.TimeDisplayPipe=rt,e.ToastComponent=Je,e.ToastEvent=Ke,e.ToastService=Ze,e.ToasterComponent=tt,e.UnicodeStrings=st,e.UserPreferenceService=z,e.ValidationMessageService=F,e.ViewOverlayComponent=X,e.WindowService=U,e.canadianPostalCodeRegex=/^[a-zA-Z][0-9][a-zA-Z] [0-9][a-zA-Z][0-9]$/,e.clickEvent=ht,e.dateInputFormatRegex=/^[0-9./-]+$/,e.findAllSpacesPattern=/ /g,e.forEachFormControl=We,e.getApiError=function(e){return{error:{status:{message:e}}}},e.getControlValue=Ge,e.getDecimalPattern=fe,e.integerPattern=ge,e.isApiError=ke,e.menuAnimationSpeed=350,e.mockRouterFactory=pe,e.numericboxValidation=be,e.orderByIgnoreCase=function(e,t,o){var n;return n=t.map((function(e){return function(t){return lt(t,e)||""}})),d.orderBy(e,n,o)},e.otherZipCodeRegex=/.*/,e.sortByIgnoreCase=function(e,t){var o;return o=t.map((function(e){return function(t){return lt(t,e)}})),d.sortBy(e,o)},e.textboxValidation=function(e){return function(t){var o=[];return e.valid=!0,e.required&&o.push(n.Validators.required),void 0!==e.minLength&&o.push(n.Validators.minLength(e.minLength)),void 0!==e.maxLength&&o.push(n.Validators.maxLength(e.maxLength)),void 0!==e.pattern&&o.push(n.Validators.pattern(e.pattern)),o.forEach((function(o){o(t)&&(e.valid=!1)})),e.valid?null:{textbox:e}}},e.unitedStatesZipCodeRegex=/^[0-9-]+$/,e.validateFormGroupValuesAreUnique=function(e,t,o){void 0===t&&(t="value");var n={};We(e,(function(e){var r=Ge(e,t,o);null!==r&&""!==r&&("string"==typeof r&&(r=r.toLowerCase()),n.hasOwnProperty(r)?n[r]=n[r]+1:n[r]=1)})),We(e,(function(e){var r=Ge(e,t,o);if(null!==r&&""!==r)if("string"==typeof r&&(r=r.toLowerCase()),n[r]>1)e.setErrors(Object.assign({notUnique:!0},e.errors));else{var i=d.cloneDeep(e.errors);i&&i.hasOwnProperty("notUnique")&&delete i.notUnique,i&&0===Object.keys(i).length&&(i=null),e.setErrors(i)}}))},e.ɵa=S,e.ɵb=M,e.ɵc=Ve,e.ɵd=et,Object.defineProperty(e,"__esModule",{value:!0})}));
|
|
1
|
+
!function(t,e){"object"==typeof exports&&"undefined"!=typeof module?e(exports,require("@angular/common"),require("@angular/core"),require("@angular/forms"),require("@angular/router"),require("@ngx-translate/core"),require("@angular/cdk/a11y"),require("@angular/cdk/overlay"),require("rxjs"),require("rxjs/operators"),require("lodash"),require("moment"),require("popper.js"),require("@angular/cdk/portal"),require("ngx-clipboard")):"function"==typeof define&&define.amd?define("@energycap/components",["exports","@angular/common","@angular/core","@angular/forms","@angular/router","@ngx-translate/core","@angular/cdk/a11y","@angular/cdk/overlay","rxjs","rxjs/operators","lodash","moment","popper.js","@angular/cdk/portal","ngx-clipboard"],e):e(((t="undefined"!=typeof globalThis?globalThis:t||self).energycap=t.energycap||{},t.energycap.components={}),t.ng.common,t.ng.core,t.ng.forms,t.ng.router,t.i1,t.ng.cdk.a11y,t.ng.cdk.overlay,t.rxjs,t.rxjs.operators,t.lodash,t.moment,t.Popper,t.ng.cdk.portal,t.ngxClipboard)}(this,(function(t,e,o,n,r,i,a,s,l,c,d,p,u,h,m){"use strict";function g(t){return t&&"object"==typeof t&&"default"in t?t:{default:t}}var f=g(p),b=g(u),y=function(t,e){return(y=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(t,e){t.__proto__=e}||function(t,e){for(var o in e)Object.prototype.hasOwnProperty.call(e,o)&&(t[o]=e[o])})(t,e)};function v(t,e){if("function"!=typeof e&&null!==e)throw new TypeError("Class extends value "+String(e)+" is not a constructor or null");function o(){this.constructor=t}y(t,e),t.prototype=null===e?Object.create(e):(o.prototype=e.prototype,new o)}function x(t,e,o,n){return new(o||(o=Promise))((function(r,i){function a(t){try{l(n.next(t))}catch(t){i(t)}}function s(t){try{l(n.throw(t))}catch(t){i(t)}}function l(t){var e;t.done?r(t.value):(e=t.value,e instanceof o?e:new o((function(t){t(e)}))).then(a,s)}l((n=n.apply(t,e||[])).next())}))}function w(t,e){var o,n,r,i,a={label:0,sent:function(){if(1&r[0])throw r[1];return r[1]},trys:[],ops:[]};return i={next:s(0),throw:s(1),return:s(2)},"function"==typeof Symbol&&(i[Symbol.iterator]=function(){return this}),i;function s(i){return function(s){return function(i){if(o)throw new TypeError("Generator is already executing.");for(;a;)try{if(o=1,n&&(r=2&i[0]?n.return:i[0]?n.throw||((r=n.return)&&r.call(n),0):n.next)&&!(r=r.call(n,i[1])).done)return r;switch(n=0,r&&(i=[2&i[0],r.value]),i[0]){case 0:case 1:r=i;break;case 4:return a.label++,{value:i[1],done:!1};case 5:a.label++,n=i[1],i=[0];continue;case 7:i=a.ops.pop(),a.trys.pop();continue;default:if(!(r=a.trys,(r=r.length>0&&r[r.length-1])||6!==i[0]&&2!==i[0])){a=0;continue}if(3===i[0]&&(!r||i[1]>r[0]&&i[1]<r[3])){a.label=i[1];break}if(6===i[0]&&a.label<r[1]){a.label=r[1],r=i;break}if(r&&a.label<r[2]){a.label=r[2],a.ops.push(i);break}r[2]&&a.ops.pop(),a.trys.pop();continue}i=e.call(t,a)}catch(t){i=[6,t],n=0}finally{o=r=0}if(5&i[0])throw i[1];return{value:i[0]?i[1]:void 0,done:!0}}([i,s])}}}Object.create;function I(t,e){var o="function"==typeof Symbol&&t[Symbol.iterator];if(!o)return t;var n,r,i=o.call(t),a=[];try{for(;(void 0===e||e-- >0)&&!(n=i.next()).done;)a.push(n.value)}catch(t){r={error:t}}finally{try{n&&!n.done&&(o=i.return)&&o.call(i)}finally{if(r)throw r.error}}return a}function k(){for(var t=[],e=0;e<arguments.length;e++)t=t.concat(I(arguments[e]));return t}Object.create;var C=function(){function t(){}return t.prototype.getItem=function(t,e){void 0===e&&(e=!1);var o=this.getStorage(e);if(o){var n=o.getItem(t);if(n)return JSON.parse(n)}return null},t.prototype.keys=function(t){void 0===t&&(t=!1);var e=new Array,o=this.getStorage(t);if(o)for(var n=0,r=o.length;n<r;++n)e.push(o.key(n));return e},t.prototype.removeItem=function(t,e){void 0===e&&(e=!1);var o=this.getStorage(e);o&&o.removeItem(t)},t.prototype.setItem=function(t,e,o){void 0===o&&(o=!1);var n=this.getStorage(o);n&&n.setItem(t,JSON.stringify(e))},t.prototype.getStorage=function(t){return t?window.sessionStorage:window.localStorage},t}();C.ɵprov=o.ɵɵdefineInjectable({factory:function(){return new C},token:C,providedIn:"root"}),C.decorators=[{type:o.Injectable,args:[{providedIn:"root"}]}];var M=function(){function t(t,e,o){this.renderer=t,this.cacheService=e,this.document=o,this.rememberWidth=!1,this.id="",this.currentEl=null,this.startScreenX=0,this.startElWidth=0}return t.prototype.ngAfterViewInit=function(){if(this.rememberWidth&&this.id){var t=this.cacheService.getItem("resizable-"+this.id);t&&t.widths&&t.widths.length>0&&this.restoreWidths(t.widths)}},t.prototype.startDrag=function(t){if(!this.currentEl)throw new Error("currentEl is "+this.currentEl+". currentEl must be assigned before startDrag() is called.");this.startElWidth=this.currentEl.offsetWidth,this.startScreenX=t.screenX,this.renderer.addClass(this.currentEl,"is-active"),this.renderer.setStyle(this.document.body,"cursor","col-resize"),this.mouseupListener&&(this.mouseupListener(),this.mouseupListener=void 0),this.mousemoveListener&&(this.mousemoveListener(),this.mousemoveListener=void 0),this.mouseupListener=this.renderer.listen(this.document,"mouseup",this.stopDrag.bind(this)),this.mousemoveListener=this.renderer.listen(this.document,"mousemove",this.drag.bind(this))},t.prototype.drag=function(t){this.setWidth(this.startElWidth+(t.screenX-this.startScreenX))},t.prototype.stopDrag=function(t){this.mousemoveListener&&(this.mousemoveListener(),this.mousemoveListener=void 0),this.mouseupListener&&(this.mouseupListener(),this.mouseupListener=void 0),this.currentEl&&this.renderer.removeClass(this.currentEl,"is-active"),this.renderer.removeStyle(this.document.body,"cursor")},t.prototype.restoreWidths=function(t){},t.prototype.saveWidths=function(t){this.rememberWidth&&this.id?this.cacheService.setItem("resizable-"+this.id,{widths:t}):this.rememberWidth&&console.error("rememberWidth is set but will not take effect unless ID is also set")},t}();M.decorators=[{type:o.Directive}],M.ctorParameters=function(){return[{type:o.Renderer2},{type:C},{type:Document,decorators:[{type:o.Inject,args:[e.DOCUMENT]}]}]},M.propDecorators={rememberWidth:[{type:o.Input}],id:[{type:o.Input}]};var S=function(t){function e(e,o,n,r){var i=t.call(this,o,n,r)||this;return i.el=e,i.sortableTable=!1,i.cols=[],i.colWidths=[],i.currentTableWidth=0,i.minTableWidth=0,i.minColWidth=32,i.destroyed=new l.Subject,i}return v(e,t),e.prototype.ngOnInit=function(){var t=this;this.initResizableColumns(),this.resizableColumns.changes.pipe(c.takeUntil(this.destroyed)).subscribe((function(){return t.initResizableColumns()}))},e.prototype.ngOnDestroy=function(){this.destroyed.next(),this.destroyed.complete()},e.prototype.initResizableColumns=function(){var t=this;if(!1!==this.isResizable){if(this.tableEl=this.el.nativeElement,"TABLE"!==this.tableEl.tagName)throw new Error("The 'ecResizableTable' directive can only be placed on a <table> element.");this.sortableTable&&(this.minColWidth=48);var e=this.tableEl.querySelectorAll("th"),o=this.tableEl.querySelectorAll("col");if(this.cols=[],this.colWidths=[],0===o.length){var n=this.document.createDocumentFragment(),r=this.renderer.createElement("colgroup");e.forEach((function(){var e=t.renderer.createElement("col");t.cols.push(e),t.renderer.appendChild(n,e)})),this.renderer.appendChild(r,n),this.renderer.insertBefore(this.tableEl,r,this.tableEl.firstElementChild)}else o.forEach((function(e){t.cols.push(e)})),e.length!==o.length&&console.warn("There are "+e.length+" <th> elements and "+this.cols.length+" <col> elements in this this table. The number of columns and table headers must match. <th> elements with a 'colspan' attribute are currently not supported.");var i=Array.from(e).reverse().findIndex((function(t){return t.classList.contains("is-resizable")}))+1;this.lastColIndex=this.cols.length-i,e.forEach((function(e){if(e.classList.contains("is-resizable")){var o=e.querySelector(".handle");t.renderer.listen(o,"mousedown",(function(o){t.currentEl=e,t.startDrag(o)}))}})),window.setTimeout((function(){t.setInitialWidths(e)}))}},e.prototype.setWidth=function(t){if(this.currentEl){var e=this.currentEl.cellIndex;t=Math.max(t,this.minColWidth),this.colWidths[e]=t,this.renderer.setStyle(this.cols[e],"width",t+"px");var o=0;this.colWidths.forEach((function(t){o+=t}));var n=this.containerEl.nativeElement.clientWidth;this.minTableWidth!==n&&(this.minTableWidth=n);var r=o-this.minTableWidth;if(r<0){var i=e===this.lastColIndex?this.lastColIndex-1:this.lastColIndex,a=Math.max(this.colWidths[i]+Math.abs(r),this.minColWidth);this.renderer.setStyle(this.cols[i],"width",a+"px"),this.renderer.setStyle(this.tableEl,"width",this.minTableWidth+"px")}else this.renderer.setStyle(this.tableEl,"width",o+"px")}},e.prototype.stopDrag=function(e){if(t.prototype.stopDrag.call(this,e),this.currentEl){var o=this.currentEl.cellIndex,n=this.resizableColumns.find((function(t){return t.el.nativeElement.cellIndex===o}));n&&n.emitWidth(Math.round(this.colWidths[o]))}},e.prototype.setInitialWidths=function(t){var e=this;this.currentTableWidth=this.tableEl.offsetWidth,this.minTableWidth=this.containerEl.nativeElement.clientWidth,t.forEach((function(t){e.colWidths[t.cellIndex]=t.offsetWidth;var o=t.style.width;o&&(e.renderer.setStyle(e.cols[t.cellIndex],"width",o),e.renderer.removeStyle(t,"width"))}));var o=0;this.colWidths.forEach((function(t){o+=t}));var n=o-this.currentTableWidth;if(n>0){var r=t[t.length>1?t.length-2:0];this.colWidths[r.cellIndex]=r.offsetWidth-n,this.renderer.setStyle(this.cols[r.cellIndex],"width",this.colWidths[r.cellIndex]+"px"),o-=n}this.renderer.setStyle(this.tableEl,"width",Math.max(this.currentTableWidth,o)+"px"),this.renderer.setStyle(this.tableEl,"minWidth","100%")},e}(M);S.decorators=[{type:o.Directive,args:[{selector:"[ecResizableTable]"}]}],S.ctorParameters=function(){return[{type:o.ElementRef},{type:o.Renderer2},{type:C},{type:Document,decorators:[{type:o.Inject,args:[e.DOCUMENT]}]}]},S.propDecorators={isResizable:[{type:o.Input,args:["ecResizableTable"]}],containerEl:[{type:o.Input}],sortableTable:[{type:o.Input}],resizableColumns:[{type:o.Input}]};var T=function(){function t(t){this.el=t,this.onResize=new o.EventEmitter}return t.prototype.emitWidth=function(t){this.onResize.emit(t)},t}();T.decorators=[{type:o.Component,args:[{selector:"th.is-resizable",template:'<div class="content-wrapper">\r\n <div class="content">\r\n <ng-content></ng-content>\r\n </div>\r\n</div>\r\n<div class="handle"></div>\r\n'}]}],T.ctorParameters=function(){return[{type:o.ElementRef}]},T.propDecorators={onResize:[{type:o.Output}]};var D=function(){function t(t,e){this.renderer=t,this.el=e,this.showDetails=!1,this.showDetailsChanged=new o.EventEmitter}return t.prototype.ngOnInit=function(){this.detailRowColSpan||console.error("A value for [detailRowColSpan] is required to render a detail row correctly. This should be the number of columns TDs placed inside an tr[ecTableMasterRow]."),this.parentNode=this.renderer.parentNode(this.el.nativeElement),this.updateDetailRow()},t.prototype.ngOnChanges=function(t){t.hasDetails&&!t.hasDetails.firstChange&&void 0!==t.hasDetails.currentValue&&this.updateDetailRow(),t.showDetails&&!t.showDetails.firstChange&&void 0!==t.showDetails.currentValue&&this.updateVisibility()},t.prototype.ngOnDestroy=function(){this.removeDetailView()},t.prototype.updateDetailRow=function(){if(this.hasDetails){if(!this.detailTemplate)return void console.error("A value for the [detailTemplate] input is required when 'hasDetails' is true.");this.detailView=this.detailRowTemplate.createEmbeddedView({}),this.updateVisibility()}else this.removeDetailView()},t.prototype.toggleDetails=function(t){this.showDetails=t,this.showDetailsChanged.emit(t),this.updateVisibility()},t.prototype.updateVisibility=function(){this.showDetails?this.show():this.hide()},t.prototype.show=function(){var t=this;this.detailView&&(this.siblingNode=this.renderer.nextSibling(this.el.nativeElement),this.detailView.reattach(),this.detailView.detectChanges(),this.detailView.rootNodes.forEach((function(e){t.renderer.insertBefore(t.parentNode,e,t.siblingNode)})))},t.prototype.hide=function(){this.detailView&&(this.detailView.detach(),this.removeDetailNodes())},t.prototype.removeDetailView=function(){this.detailView&&(this.detailView.destroy(),this.removeDetailNodes())},t.prototype.removeDetailNodes=function(){var t=this;this.detailView&&this.detailView.rootNodes.forEach((function(e){try{t.renderer.removeChild(t.parentNode,e)}catch(t){}}))},t}();D.decorators=[{type:o.Component,args:[{selector:"[ecTableMasterRow]",template:'<td>\r\n <ec-collapsible-toggle *ngIf="hasDetails"\r\n id="{{id}}_toggle"\r\n [expanded]="showDetails"\r\n (expandedChange)="toggleDetails($event)"></ec-collapsible-toggle>\r\n</td>\r\n<ng-content></ng-content>\r\n\r\n<ng-template #detailRow>\r\n <tr ecTableDetailRow class="{{detailRowClass}}" [contentClass]="detailRowContentClass" [contentColSpan]="detailRowColSpan" [maxHeight]="detailRowMaxHeight">\r\n <ng-container *ngTemplateOutlet="detailTemplate; context: {$implicit: detailContext}"></ng-container>\r\n </tr>\r\n</ng-template>',styles:["@-webkit-keyframes spin{0%{transform:rotate(0)}to{transform:rotate(1turn)}}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(1turn)}}td{padding:.25rem 0!important;vertical-align:top;width:1.5rem}td ::ng-deep+td{padding-left:0}"]}]}],D.ctorParameters=function(){return[{type:o.Renderer2},{type:o.ElementRef}]},D.propDecorators={id:[{type:o.Input}],hasDetails:[{type:o.Input}],showDetails:[{type:o.Input}],detailTemplate:[{type:o.Input}],detailContext:[{type:o.Input}],detailRowColSpan:[{type:o.Input}],detailRowClass:[{type:o.Input}],detailRowContentClass:[{type:o.Input}],detailRowMaxHeight:[{type:o.Input}],showDetailsChanged:[{type:o.Output}],detailRowTemplate:[{type:o.ViewChild,args:["detailRow",{read:o.TemplateRef,static:!0}]}]};var E=function(){function t(t,e){this.renderer=t,this.el=e,this.id="",this.scrollable=!1,this.resizable=!1,this.condensed=!1,this.sortable=!1,this.selectable=!1,this.hasSelection=!1,this.isForm=!1,this.sortChange=new o.EventEmitter,this.hasMasterDetailRows=!1,this.unlisteners=[],this.sortableCols={},this.destroyed=new l.Subject}return t.prototype.ngOnChanges=function(t){if(this.sortable&&t.sort&&t.sort.currentValue&&!t.sort.firstChange){var e=t.sort.currentValue;this.currentSort&&d.isEqual(e,this.currentSort)||this.onSort(e.field,e.direction)}},t.prototype.ngAfterContentInit=function(){var t=this;this.hasMasterDetailRows=!!this.masterRows.length,this.masterRows.changes.pipe(c.takeUntil(this.destroyed)).subscribe((function(){t.hasMasterDetailRows=!!t.masterRows.length})),this.resizableColumns=this.searchableTableResizableColumns||this._resizableColumns},t.prototype.ngAfterViewInit=function(){this.sortable&&this.initSortable(),this.selectable&&this.initSelectable()},t.prototype.ngOnDestroy=function(){this.unlisteners.length&&this.unlisteners.forEach((function(t){return t()})),this.destroyed.next(),this.destroyed.unsubscribe()},t.prototype.queryElements=function(t){var e=this.el.nativeElement;return Array.from(e.querySelectorAll(t))},t.prototype.initSortable=function(){var t=this;this.queryElements("th").forEach((function(e){if(e.hasAttribute("data-sortfield")){var o=e.getAttribute("data-sortfield");if(o){t.sortableCols[o]=e;var n=t.renderer.listen(e,"click",(function(n){e.classList.contains("is-resizable")&&n.target&&n.target.classList.contains("handle")||t.onSort(o)}));t.unlisteners.push(n)}else console.error("data-sortfield attribute was not assigned a value.",e)}})),this.sort&&this.onSort(this.sort.field,this.sort.direction)},t.prototype.onSort=function(t,e){var o=this.sortableCols[t];if(o){this.currentSort&&this.currentSort.field!==t&&this.renderer.removeClass(this.sortableCols[this.currentSort.field],"is-sorted-"+this.currentSort.direction),o.classList.contains("is-sorted-desc")?(this.renderer.removeClass(o,"is-sorted-desc"),e||(e="asc")):(o.classList.contains("is-sorted-asc")&&this.renderer.removeClass(o,"is-sorted-asc"),e||(e="desc")),this.renderer.addClass(o,"is-sorted-"+e);var n={field:t,direction:e};this.currentSort=n,this.sortChange.emit(n)}},t.prototype.initSelectable=function(){var t=this;this.selectionContext.rowCheckboxes.valueChanges.pipe(c.takeUntil(this.destroyed)).subscribe((function(e){t.hasSelection=e.some((function(t){return t}))}))},t}();E.decorators=[{type:o.Component,args:[{selector:"ec-table",template:'<div class="selectable-table-toolbar"\r\n *ngIf="hasSelection">\r\n <ng-container *ngTemplateOutlet="selectionToolbarTemplate"></ng-container>\r\n</div>\r\n<div id="{{id}}-scroll-container" \r\n class="table-scroll-container">\r\n <table class="main-table"\r\n id="{{id}}"\r\n [ecResizableTable]="resizable"\r\n [containerEl]="el"\r\n [sortableTable]="sortable"\r\n [resizableColumns]="resizableColumns">\r\n <ng-content></ng-content>\r\n </table>\r\n</div>',encapsulation:o.ViewEncapsulation.None,styles:['@-webkit-keyframes spin{0%{transform:rotate(0)}to{transform:rotate(1turn)}}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(1turn)}}ec-table{display:flex;min-height:0;position:relative}ec-table .table-scroll-container{flex:1 1;min-height:0;overflow-y:auto}ec-table .main-table{border-collapse:separate;border-spacing:0;font-size:.75rem;width:100%}ec-table .main-table th{border-bottom:1px solid rgba(26,26,35,.87);color:rgba(26,26,35,.66);font-weight:400;height:2rem;line-height:1rem;overflow:hidden;padding:.5rem;text-overflow:ellipsis;vertical-align:middle;white-space:nowrap}ec-table .main-table th:first-child{padding-left:1rem}ec-table .main-table th:last-child{padding-right:1rem}ec-table .main-table td{border-top:1px solid rgba(26,26,35,.18);height:2rem;line-height:1rem;overflow:hidden;padding:.5rem;text-overflow:ellipsis;vertical-align:top;white-space:nowrap}ec-table .main-table td:first-child{padding-left:1rem}ec-table .main-table td:last-child{padding-right:1rem}ec-table .main-table tbody>tr:first-child td{border-top:0}ec-table .main-table tbody>tr.is-error td{background-color:#ecc4c5}ec-table .main-table tbody>tr.is-success td{background-color:#dff0d8}ec-table .main-table tfoot td{font-weight:700}ec-table .main-table tbody>tr.is-selected,ec-table .main-table tbody>tr.is-selected>td{background-color:#dae4e9}ec-table .main-table tr.is-heading td{background-color:#ebedee;border-bottom-color:rgba(26,26,35,.09);color:rgba(26,26,35,.66)}ec-table .main-table td.actions-col,ec-table .main-table th.actions-col{padding:0}ec-table .main-table td.actions-1,ec-table .main-table th.actions-1{width:2.0625rem}ec-table .main-table td.actions-2,ec-table .main-table th.actions-2{width:4.0625rem}ec-table .main-table td.actions-3,ec-table .main-table th.actions-3{width:6.0625rem}ec-table .main-table td.actions-4,ec-table .main-table th.actions-4{width:8.0625rem}ec-table .main-table td.actions-5,ec-table .main-table th.actions-5{width:10.0625rem}ec-table.is-condensed td,ec-table.is-condensed th{height:1.5rem;padding-bottom:.25rem;padding-top:.25rem}ec-table.is-condensed:not(.has-borders)>table td{border-bottom-width:0;border-top-width:0}ec-table.is-selectable .main-table thead th{height:2.5rem}ec-table.is-selectable .main-table tbody>tr:hover>td{background-color:#bfe0e9;border-color:transparent;cursor:pointer}ec-table.is-selectable .main-table tbody>tr:hover.is-selected{background-color:#dae4e9}ec-table.is-selectable .main-table tbody>tr:hover+tr>td{border-color:#bfe0e9}ec-table .selectable-table-toolbar{align-items:center;background-color:#fff;border-bottom:1px solid rgba(26,26,35,.87);display:flex;height:2.5rem;left:calc(var(--selection-toolbar-left, 0rem) + 1.5625rem);padding:0 .5rem;position:absolute;right:0;top:0;z-index:4}ec-table.is-scrollable>.table-scroll-container>table{position:relative}ec-table.is-scrollable>.table-scroll-container>table>thead th{background-color:#fff;position:sticky!important;top:0;z-index:1}ec-table.is-scrollable>.table-scroll-container>table>tfoot td{background-color:#fff;bottom:0;position:sticky!important;z-index:1}ec-table.is-scrollable.bg-body>.table-scroll-container>table>tfoot td,ec-table.is-scrollable.bg-body>.table-scroll-container>table>thead th{background-color:#f1f3f4}ec-table.is-sortable th[data-sortfield]{-moz-user-select:none;-ms-user-select:none;-webkit-user-select:none;user-select:none}ec-table.is-sortable th[data-sortfield].is-resizable .content-wrapper{cursor:pointer;display:flex}ec-table.is-sortable th[data-sortfield].is-resizable .content{flex:0 1 auto}ec-table.is-sortable th[data-sortfield].is-resizable .content-wrapper:after{background-position:50%;background-repeat:no-repeat;content:"";display:none;flex:none;height:.875rem;margin:0 .25rem;vertical-align:top;width:.875rem}ec-table.is-sortable th[data-sortfield].is-resizable.is-sorted-asc .content-wrapper:after,ec-table.is-sortable th[data-sortfield].is-resizable.is-sorted-desc .content-wrapper:after{background-image:url(\'data:image/svg+xml;charset=utf8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 32 32"><path fill="rgba(26, 26, 35, 0.66)" d="M14 8.828V27a2 2 0 1 0 4 0V8.828l4.586 4.586a2 2 0 0 0 2.828-2.828l-8-8a2 2 0 0 0-2.828 0l-8 8a2 2 0 0 0 2.828 2.828L14 8.828z"/></svg>\');display:inline-block}ec-table.is-sortable th[data-sortfield].is-resizable.is-sorted-desc .content-wrapper:after{transform:scaleY(-1)}ec-table.is-sortable th[data-sortfield].is-resizable.text-right .content-wrapper{flex-direction:row-reverse}ec-table.is-sortable th[data-sortfield]:not(.is-resizable){cursor:pointer}ec-table.is-sortable th[data-sortfield]:not(.is-resizable):after{background-position:50%;background-repeat:no-repeat;content:"";display:none;height:.875rem;margin:0 .25rem;vertical-align:top;width:.875rem}ec-table.is-sortable th[data-sortfield]:not(.is-resizable).is-sorted-asc:after,ec-table.is-sortable th[data-sortfield]:not(.is-resizable).is-sorted-desc:after{background-image:url(\'data:image/svg+xml;charset=utf8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 32 32"><path fill="rgba(26, 26, 35, 0.66)" d="M14 8.828V27a2 2 0 1 0 4 0V8.828l4.586 4.586a2 2 0 0 0 2.828-2.828l-8-8a2 2 0 0 0-2.828 0l-8 8a2 2 0 0 0 2.828 2.828L14 8.828z"/></svg>\');display:inline-block}ec-table.is-sortable th[data-sortfield]:not(.is-resizable).is-sorted-desc:after{transform:scaleY(-1)}ec-table.is-sortable th[data-sortfield]:not(.is-resizable).text-right:after{content:"";display:none!important}ec-table.is-sortable th[data-sortfield]:not(.is-resizable).text-right:before{background-position:50%;background-repeat:no-repeat;content:"";display:none;height:.875rem;margin:0 .25rem;vertical-align:top;width:.875rem}ec-table.is-sortable th[data-sortfield]:not(.is-resizable).text-right.is-sorted-asc:before,ec-table.is-sortable th[data-sortfield]:not(.is-resizable).text-right.is-sorted-desc:before{background-image:url(\'data:image/svg+xml;charset=utf8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 32 32"><path fill="rgba(26, 26, 35, 0.66)" d="M14 8.828V27a2 2 0 1 0 4 0V8.828l4.586 4.586a2 2 0 0 0 2.828-2.828l-8-8a2 2 0 0 0-2.828 0l-8 8a2 2 0 0 0 2.828 2.828L14 8.828z"/></svg>\');display:inline-block}ec-table.is-sortable th[data-sortfield]:not(.is-resizable).text-right.is-sorted-desc:before{transform:scaleY(-1)}ec-table.is-resizable .main-table{table-layout:fixed;width:100%}ec-table.is-resizable th.is-resizable{overflow:visible;position:relative;z-index:1}ec-table.is-resizable th.is-resizable.is-active{-moz-user-select:none;-ms-user-select:none;-webkit-user-select:none;user-select:none}ec-table.is-resizable th.is-resizable.is-active .handle:after{background-color:#0084a9}ec-table.is-resizable th.is-resizable .handle{height:100%;padding:.5rem 0 .5rem 10px;position:absolute;right:-7px;right:0;top:0;width:13px;z-index:30}ec-table.is-resizable th.is-resizable .handle:after{content:"";display:block;height:100%;position:relative;transition:background-color .3s ease}ec-table.is-resizable th.is-resizable .handle:hover{cursor:col-resize}ec-table.is-resizable th.is-resizable .handle:hover:after{background-color:#0084a9}ec-table.is-resizable th.is-resizable .handle:before{background-color:#d2d7d9;bottom:.5rem;content:"";display:block;position:absolute;right:0;top:.5rem;width:1px}ec-table.is-resizable th.is-resizable .content{overflow:hidden;text-overflow:clip;white-space:nowrap}ec-table.is-resizable th.is-resizable:last-child .handle:before{display:none}ec-table.is-resizable td,ec-table.is-resizable th{overflow:hidden;text-overflow:clip;white-space:nowrap}ec-table.is-master-detail>table{table-layout:fixed}ec-table.is-form-table td{border-top:0;font-size:1rem;height:2.5rem;line-height:2rem;padding-bottom:.25rem;padding-top:.25rem}ec-table.is-form-table tr:first-child td{height:2.75rem;padding-top:.5rem}ec-table.is-form-table tr:last-child td{height:2.75rem;padding-bottom:.5rem}ec-table.is-fixed .main-table{table-layout:fixed}']}]}],E.ctorParameters=function(){return[{type:o.Renderer2},{type:o.ElementRef}]},E.propDecorators={id:[{type:o.HostBinding,args:["attr.id"]},{type:o.Input}],scrollable:[{type:o.HostBinding,args:["class.is-scrollable"]},{type:o.Input}],resizable:[{type:o.HostBinding,args:["class.is-resizable"]},{type:o.Input}],condensed:[{type:o.HostBinding,args:["class.is-condensed"]},{type:o.Input}],sortable:[{type:o.HostBinding,args:["class.is-sortable"]},{type:o.Input}],selectionContext:[{type:o.Input}],selectionToolbarTemplate:[{type:o.Input}],selectable:[{type:o.HostBinding,args:["class.is-selectable"]},{type:o.Input}],isForm:[{type:o.HostBinding,args:["class.is-form-table"]},{type:o.Input}],sort:[{type:o.Input}],sortChange:[{type:o.Output}],hasMasterDetailRows:[{type:o.HostBinding,args:["class.is-master-detail"]}],masterRows:[{type:o.ContentChildren,args:[D,{descendants:!0}]}],_resizableColumns:[{type:o.ContentChildren,args:[T,{descendants:!0}]}],searchableTableResizableColumns:[{type:o.Input,args:["resizableColumns"]}]};var O=function(){function t(){this.hidden=!1,this.id="",this.type="warning",this.bannerStyle="pinned",this.showCloseBtn=!1,this.autoHideOnClose=!0,this.closed=new o.EventEmitter,this.icon=""}return t.prototype.ngOnChanges=function(){this.customIcon?this.icon=this.customIcon:this.getIconByBannerType()},t.prototype.close=function(){this.autoHideOnClose&&(this.hidden=!0),this.closed.emit()},t.prototype.getIconByBannerType=function(){"info"===this.type?this.icon="icon-info-circle":"warning"===this.type?this.icon="icon-warning":"error"===this.type?this.icon="icon-error":"success"===this.type&&(this.icon="icon-check-circle")},t}();O.decorators=[{type:o.Component,args:[{selector:"ec-banner",template:'<div class="banner {{type}} {{bannerStyle}}">\r\n <ec-button id="banner{{id}}_close"\r\n *ngIf="showCloseBtn"\r\n type="icon"\r\n icon="ec-icon-sm icon-cancel"\r\n (clicked)="close()">\r\n </ec-button>\r\n <div class="banner-content d-flex text-body-1 font-color-secondary">\r\n <i class="ec-icon {{icon}}"></i>\r\n <div class="ml-2">\r\n <p class="title mb-0" *ngIf="title">\r\n {{title}}\r\n </p>\r\n <p class="text mb-0" *ngIf="text">{{text}}</p>\r\n \r\n <ul class="list mb-0" *ngIf="list?.length">\r\n <li *ngFor="let item of list">{{item}}</li>\r\n </ul>\r\n <ng-content></ng-content>\r\n </div>\r\n </div>\r\n\r\n</div>\r\n',styles:["@-webkit-keyframes spin{0%{transform:rotate(0)}to{transform:rotate(1turn)}}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(1turn)}}:host{display:flex}:host(.border-bottom-0) .banner{border-bottom:0}.banner{display:flex;flex:1 1;flex-direction:column;min-height:2.5rem;overflow-y:auto;position:relative}.banner-content{flex:none;margin:auto 0;padding:.5rem 1rem}.banner-content ::ng-deep p{line-height:inherit}.ec-icon{font-size:1.125rem}ec-button{position:absolute;right:.25rem;top:.25rem}ec-button+.banner-content{padding-right:2.75rem}.title{font-weight:700}.list{margin:0;padding-left:2em}.text+.list{margin-top:1em}.info{background-color:#dae4e9}.info .banner-content>.ec-icon{color:#2d9ab8}.warning{background-color:#fff8cc}.warning .banner-content>.ec-icon{color:#fa7b2e}.success{background-color:#dff0d8}.success .banner-content>.ec-icon{color:#3c763d}.error{background-color:#ecc4c5}.error .banner-content>.ec-icon{color:#cd1d20}.pinned{border-bottom:1px solid rgba(26,26,35,.08)}.toast{border:1px solid rgba(26,26,35,.08);box-shadow:0 .125rem .625rem 0 rgba(26,26,35,.18)}.toast ec-button{right:.1875rem;top:.1875rem}"]}]}],O.propDecorators={hidden:[{type:o.HostBinding,args:["hidden"]},{type:o.Input}],id:[{type:o.Input}],type:[{type:o.Input}],bannerStyle:[{type:o.Input}],title:[{type:o.Input}],text:[{type:o.Input}],list:[{type:o.Input}],showCloseBtn:[{type:o.Input}],autoHideOnClose:[{type:o.Input}],customIcon:[{type:o.Input}],closed:[{type:o.Output}]};var P=function(){function t(){this.disabled=!1,this.tabindex=0,this.type="common",this.pending=!1,this.pendingIcon="icon-loading",this.isSubmit=!1,this.autofocus=!1,this.clicked=new o.EventEmitter}return t.prototype.ngOnInit=function(){if(!this.label&&!this.icon&&!this.customTemplate)throw new Error("ButtonComponent requires an icon, a label, or both")},t.prototype.ngAfterViewInit=function(){this.autofocus&&this.focus()},t.prototype.onClick=function(t){this.pending||this.disabled?t.stopImmediatePropagation():this.clicked.emit(t)},t.prototype.focus=function(){this.buttonElement.nativeElement.focus()},t}();P.decorators=[{type:o.Component,args:[{selector:"ec-button",template:'<button id="{{id}}_button"\r\n class="ec-button-{{customTemplate ? \'custom\' : type}}"\r\n [class.has-badge]="badge !== undefined"\r\n tabindex="{{tabindex}}"\r\n [type]="type === \'submit\' || isSubmit ? \'submit\' : \'button\'"\r\n [disabled]="disabled"\r\n (click)="onClick($event)"\r\n #element\r\n [attr.cdkFocusInitial]="autofocus || null">\r\n <ng-container *ngIf="customTemplate; else defaultTemplate">\r\n <ng-container *ngTemplateOutlet="customTemplate"></ng-container>\r\n </ng-container>\r\n</button>\r\n\r\n<ng-template #defaultTemplate>\r\n \x3c!-- Hidden when the button is not pending --\x3e\r\n <div class="pending-container" *ngIf="pending">\r\n <i class="ec-icon {{pendingIcon}}" id="{{id}}_pending"></i>\r\n </div>\r\n\r\n <i class="ec-icon {{icon}}" id="{{id}}_icon" *ngIf="icon"></i>\r\n\r\n <ng-container *ngIf="label">\r\n <span id="{{id}}_label" class="label">{{label | translate}}</span>\r\n </ng-container>\r\n\r\n <ng-container *ngIf="badge !== undefined">\r\n <span id="{{id}}_badge" class="badge">{{badge}}</span>\r\n </ng-container>\r\n</ng-template>',styles:["@-webkit-keyframes spin{0%{transform:rotate(0)}to{transform:rotate(1turn)}}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(1turn)}}:host{-webkit-appearance:none;color:#1a1a23;display:inline-block;font-family:Roboto,-apple-system,BlinkMacSystemFont,Segoe UI,Oxygen,Ubuntu,Fira Sans,Droid Sans,Helvetica Neue,sans-serif;font-size:.875rem;margin:0;padding:0;vertical-align:top}:host(.font-size-inherit),:host(.font-size-inherit) button{font-size:inherit}:host(.text-left) button{justify-content:flex-start}:host(.text-right) button{justify-content:flex-end}:host(.active) .ec-button-custom,:host(.active) .ec-button-danger-text,:host(.active) .ec-button-icon,:host(.active) .ec-button-link,:host(.active) .ec-button-secondary,:host(.active) .ec-button-text{background-color:#bfe0e9}:host(.active) button:focus{border-color:transparent;box-shadow:none}:host(.active) .ec-button-secondary:focus{border-color:#d2d7d9}:host(.d-block) button{width:100%}:host(.border-0) button:not(:focus){border-color:transparent}:host(.is-action-icon) .ec-button-icon{color:#0084a9}:host(.is-success) .ec-button-icon,:host(.is-success) .ec-button-secondary,:host(.is-success) .ec-button-text{color:#3c763d}:host(.is-error) .ec-button-icon,:host(.is-error) .ec-button-secondary,:host(.is-error) .ec-button-text{color:#cd1d20}:host-context(.btn-stack) button{height:1rem}:host-context(.btn-stack) .ec-icon{height:.625rem;width:.625rem}:host-context(.btn-group) button:focus{position:relative;z-index:1}.ec-button-primary,.ec-button-submit{background-color:#cfd856;border-color:#c1cd23;color:#1a1a23}.ec-button-primary:active:enabled,.ec-button-submit:active:enabled{background-color:#c1cd23;color:#1a1a23}.ec-button-secondary{border-color:#d2d7d9}.ec-button-secondary,.ec-button-secondary:active:enabled{background-color:#fff;color:#1a1a23}.ec-button-common{background-color:#2d9ab8;border-color:#0084a9;color:#fff}.ec-button-common .ec-icon{color:inherit}.ec-button-common:active:enabled{background-color:#0084a9;border-color:#005f7a}.ec-button-icon{background-color:transparent;color:rgba(26,26,35,.66);padding:0;width:2rem}.ec-button-icon .ec-icon{height:1.1428571429em;margin:0;padding:0}.ec-button-icon:hover{background-color:#bfe0e9}.ec-button-icon:disabled{background-color:transparent;border-color:transparent}.ec-button-icon:disabled .ec-icon{opacity:.5}.ec-button-icon.has-badge{min-width:2rem;padding-left:.375rem;padding-right:0;width:auto}.ec-button-icon .badge{margin-left:-.5rem}.ec-button-text{background-color:transparent;color:#1a1a23}.ec-button-text .ec-icon{color:rgba(26,26,35,.66)}.ec-button-text:active:enabled{background-color:transparent;color:#000}.ec-button-text:disabled{background-color:transparent;border-color:transparent}.ec-button-link{background-color:transparent;color:#0084a9}.ec-button-link .ec-icon{color:inherit}.ec-button-link:active:enabled{background-color:transparent;color:#00485d}.ec-button-link:disabled{background-color:transparent;border-color:transparent}.ec-button-danger{background-color:#e64c4d;border-color:#e33436;color:#fff}.ec-button-danger .ec-icon{color:inherit}.ec-button-danger:active:enabled{background-color:#e33436}.ec-button-danger-text{background-color:transparent;color:#e33436}.ec-button-danger-text .ec-icon{color:inherit}.ec-button-danger-text:active:enabled{background-color:transparent;color:#b2191a}.ec-button-danger-text:disabled{background-color:transparent;border-color:transparent}.ec-button-custom{background-color:transparent;height:auto;padding:0}.ec-button-custom:disabled{background-color:transparent;border:0}button{align-items:center;background-color:#fff;border:.0625rem solid transparent;border-radius:0;cursor:pointer;display:flex;font-size:.875rem;height:2rem;justify-content:center;line-height:1.25;line-height:1.25rem;padding:.3571428571em .5714285714em;position:relative}button.is-highlighted,button.is-selected{background-color:#d9edf2}button:focus{border-color:#0084a9;box-shadow:0 0 0 1px #0084a9;outline:none}button:active{background-color:#0084a9;color:#fff}button.is-disabled,button:disabled{background-color:rgba(26,26,35,.1);border-color:#d2d7d9;color:rgba(26,26,35,.66);cursor:default;opacity:.65}button .label{align-items:center;display:flex;flex:auto}button .ec-icon{flex:0 0 auto}button .ec-icon+.label{margin:0 .375rem}button .label{justify-content:center;white-space:nowrap}button .ec-icon+.label{flex:none;margin-left:.25rem}button.has-badge{padding-right:.0625rem}:host(.textbox-group-btn-right){position:relative}:host(.textbox-group-btn-right) button{border-bottom-left-radius:0;border-top-left-radius:0;margin-left:-1px;padding-left:.4375rem;padding-right:.4375rem}.badge{background-color:#7e579b;border:.125rem solid #fff;border-radius:.5625rem;color:#fff;display:inline-block;font-size:.625rem;font-weight:700;line-height:.875rem;margin-left:-.25rem;margin-top:-.75rem;min-width:1rem;padding:0 .25rem;text-align:center;vertical-align:baseline;white-space:nowrap}:host(.is-tab) button{align-items:center;border:1px solid transparent;border-radius:0;color:rgba(26,26,35,.66);cursor:pointer;display:flex;font-size:.75rem;height:1.5rem;justify-content:center;min-width:1.5rem;padding-left:.5rem;padding-right:.5rem}:host(.is-tab) button:hover{color:#354751}:host(.is-tab) button.active{background-color:#d2d7d9;color:#354751}:host(.is-tab) button:focus{outline:none}:host(.is-tab) button:focus:not(.active):not(.is-disabled){border-color:#0084a9;box-shadow:0 0 0 1px #0084a9;box-shadow:none}:host(.is-tab) button.is-disabled{color:rgba(26,26,35,.38);cursor:default}:host(.is-tab) button.ec-button-icon{justify-content:center;padding:0;width:auto}:host(.is-tab) button:hover{background-color:transparent}:host(.is-tab).active button{background-color:#d2d7d9;color:#354751}.pending-container{align-items:center;bottom:0;display:flex;justify-content:center;left:0;position:absolute;right:0;top:0;z-index:1}.pending-container>.ec-icon{color:inherit;flex:none}.pending-container~.badge,.pending-container~.ec-icon,.pending-container~.label{opacity:0}"]}]}],P.ctorParameters=function(){return[]},P.propDecorators={id:[{type:o.HostBinding,args:["attr.id"]},{type:o.Input}],disabled:[{type:o.Input}],icon:[{type:o.Input}],label:[{type:o.Input}],badge:[{type:o.Input}],tabindex:[{type:o.Input}],type:[{type:o.Input}],pending:[{type:o.Input}],pendingIcon:[{type:o.Input}],customTemplate:[{type:o.Input}],isSubmit:[{type:o.Input}],autofocus:[{type:o.Input}],clicked:[{type:o.Output}],buttonElement:[{type:o.ViewChild,args:["element",{static:!0}]}]};var V=function(){function t(){}return t.isEndOfTime=function(t){var e=this.endOfTime;return this.isSameDay(t,e)},t.isSameDay=function(t,e){return f.default(t).isSame(f.default(e),"day")},t.getParseFormats=function(t){var e={"MM/DD/YYYY":this.monthFirstParseFormats,"MM-DD-YYYY":this.monthFirstParseFormats,"DD/MM/YYYY":this.dateFirstParseFormats,"DD-MM-YYYY":this.dateFirstParseFormats,"YYYY/MM/DD":this.monthFirstParseFormats,"YYYY-MM-DD":this.monthFirstParseFormats};return t?e[t]:this.monthFirstParseFormats},t.getAccountMeterStartDate=function(e,o){var n=e.effectiveFrom||o.startDate;return n?new Date(n):t.defaultAccountMeterEffectiveDate},t.getAccountMeterEndDate=function(e,o){var n=e.effectiveTo||o.endDate;return n&&!t.isEndOfTime(n)?new Date(n):null},t.isDateBetween=function(t,e,o,n,r){var i="()";return n&&r?i="[]":n?i="[)":r&&(i="(]"),e=e||this.beginningOfTime,o=o||this.endOfTime,f.default(t).isBetween(e,o,"day",i)},t.stringToDate=function(t){return null==t?t:f.default(t).toDate()},t}();V.beginningOfTime=new Date(1899,11,31),V.endOfTime=new Date(3e3,0,1),V.defaultAccountMeterEffectiveDate=new Date(2010,0,1),V.defaultAccountServiceEffectiveDate=new Date(2010,0,1),V.minDatePickerDate=new Date(1980,0,1),V.maxDatePickerDate=new Date(3e3,0,1,23,59,59),V.defaultDateFormat="yyyy-MM-dd",V.defaultTimeFormat="HH:mm:ss",V.defaultTimestampFormat=V.defaultDateFormat+" "+V.defaultTimeFormat,V.billImportFormatDateFormats=[{label:"mm/dd/yyyy",value:"mm/dd/yyyy"},{label:"Month dd yyyy",value:"Month dd yyyy"},{label:"dd/mm/yyyy",value:"dd/mm/yyyy"},{label:"dd Month yyyy",value:"dd Month yyyy"},{label:"yyyymmdd",value:"yyyymmdd"}],V.monthFirstParseFormats=["yyyy/MM/dd","MM/dd/yyyy","MMddyyyy","MM/dd/yy","MMddyy","MM/dd","yyyy.MM.dd","MM.dd.yyyy","MM.dd.yy","MM.dd","yyyy-MM-dd","MM-dd-yyyy","MM-dd-yy","MM-dd","yyyyMMdd"],V.dateFirstParseFormats=["yyyy/dd/MM","dd/MM/yyyy","ddMMyyyy","dd/MM/yy","ddMMyy","dd/MM","yyyy.dd.MM","dd.MM.yyyy","dd.MM.yy","dd.MM","yyyy-dd-MM","dd-MM-yyyy","dd-MM-yy","dd-MM","yyyyDDmm"],V.timeFormat="HH:mm:ss";var z=function(){function t(){}return t.prototype.getPreferences=function(){return l.of({preference:{dateFormat:"MM/DD/YYYY",timeFormat:"h:mm:ss a"}})},t}();z.ɵprov=o.ɵɵdefineInjectable({factory:function(){return new z},token:z,providedIn:"root"}),z.decorators=[{type:o.Injectable,args:[{providedIn:"root"}]}];var A=function(){function t(t){this.userPreferenceService=t,this.lastFormatString="MM/DD/YYYY"}return t.prototype.transform=function(t,e,o,n){var r=this,i="",a="";return t&&f.default(t).isValid()&&(e||!V.isEndOfTime(t))&&(this.userPreferenceService.getPreferences().subscribe((function(t){if(t.preference){if(a=t.preference.dateFormat,o){var e=t.preference.timeFormat;n||(e=e.replace(":ss","")),a+=" "+e}r.lastFormatString=a}})),i=f.default(t).format(this.lastFormatString)),i},t}();A.decorators=[{type:o.Pipe,args:[{name:"dateDisplay"}]}],A.ctorParameters=function(){return[{type:z}]};var F=function(){function t(t,e){this.translate=t,this.dateDisplayPipe=e}return t.prototype.getErrorMessages=function(t){var e=new Array;if(null!==t){for(var o in t){var n=t[o];switch(o){case"email":e.push(this.translate.get("InvalidEmailValidationMessage_LC"));break;case"required":e.push(this.translate.get("is required"));break;case"requiredPlural":e.push(this.translate.get("RequiredPluralValidationMessage_LC"));break;case"minlength":e.push(this.translate.get("MinLengthValidationMessage_LC",{minLength:n.requiredLength}));break;case"maxlength":e.push(this.translate.get("MaxLengthValidationMessage",{maxLength:n.requiredLength}));break;case"pattern":e.push(this.translate.get("IncorrectFormat_LC"));break;case"min":e.push(this.translate.get("MinValueValidationMessage_LC",{minValue:n.min}));break;case"max":e.push(this.translate.get("MaxValueValidationMessage_LC",{maxValue:n.max}));break;case"zipCodeInvalidFormat":e.push(this.translate.get("must be 5–9 numbers"));break;case"postalCodeInvalidFormat":e.push(this.translate.get("must be 6 characters, alternating letters and numbers"));break;case"zipCodeNotFound":e.push(this.translate.get("ZipCodeNotFoundValidationMessage_LC"));break;case"numericbox":e.push(this.getNumericBoxValidationMessages(n));break;case"addnew":e.push(this.translate.get("CouldNotBeAddedValidationMessage_LC"));break;case"minError":case"minDate":var r=this.dateDisplayPipe.transform(n.minValue);e.push(this.translate.get("MinValueValidationMessage_LC",{minValue:r}));break;case"maxError":case"maxDate":r=this.dateDisplayPipe.transform(n.maxValue,!0);e.push(this.translate.get("MaxValueValidationMessage_LC",{maxValue:r}));break;case"dateRange":e.push(this.translate.get("DateRangeValidationMessage_LC"));break;case"password":e.push(this.translate.get("PasswordValidationMessage_LC"));break;case"textbox":e.push(this.getTextBoxValidationMessages(n));break;case"notUnique":e.push(this.translate.get("MustBeUnique_LC"));break;case"json":e.push(this.translate.get("JsonValidationMessage_SC"));break;case"passwordInvalid":e.push(this.translate.get("PasswordInvalidValidationMessage_LC"))}}if(e.length>0)return l.forkJoin(e).toPromise()}return Promise.resolve(new Array)},t.prototype.getNumericBoxValidationMessages=function(t){var e={},o="Integer";return t.decimals&&(e.precision=t.decimals,o="Decimal"),void 0!==t.min&&void 0!==t.max?(e.minValue=t.min,e.maxValue=t.max,this.translate.get(o+"BetweenValidationMessage_LC",e)):void 0!==t.min?(e.minValue=t.min,this.translate.get(o+"MinValidationMessage_LC",e)):void 0!==t.max?(e.maxValue=t.max,this.translate.get(o+"MaxValidationMessage_LC",e)):t.maxPrecisionDigits?(e.maxPrecisionDigits=t.maxPrecisionDigits,this.translate.get("MaxPrecisionDigitsValidationMessage_LC",e)):t.decimals?this.translate.get("DecimalValidationMessage_LC",e):this.translate.get("IncorrectFormat_LC")},t.prototype.getTextBoxValidationMessages=function(t){return t.unique?this.translate.get("TextboxRequiredAndUnique_LC",{minLength:t.minLength,maxLength:t.maxLength}):this.translate.get("TextboxRequired_LC",{minLength:t.minLength,maxLength:t.maxLength})},t}();F.ɵprov=o.ɵɵdefineInjectable({factory:function(){return new F(o.ɵɵinject(i.TranslateService),o.ɵɵinject(A))},token:F,providedIn:"root"}),F.decorators=[{type:o.Injectable,args:[{providedIn:"root"}]}],F.ctorParameters=function(){return[{type:i.TranslateService},{type:A}]};var R=function(){function t(){}return t.prototype.patchValueSafely=function(t,e){var o={};Object.keys(e).forEach((function(t){var n=e[t];null!=n&&(o[t]=n)})),t.patchValue(o)},t.prototype.getInputId=function(t){return t+"_input"},t.prototype.setRequiredFn=function(t,e,o){return void 0===e&&(e=[]),void 0===o&&(o=!1),function(r){var i=k(e);(r||!o&&0===r)&&i.push(n.Validators.required),i.length>0?t.setValidators(i):t.clearValidators(),t.updateValueAndValidity({emitEvent:!1})}},t}();R.ɵprov=o.ɵɵdefineInjectable({factory:function(){return new R},token:R,providedIn:"root"}),R.decorators=[{type:o.Injectable,args:[{providedIn:"root"}]}];var L=function(){function t(t,e){this.validationMessageService=t,this.formGroupHelper=e,this.autofocus=!1,this.labelPosition="top",this.id="",this.pending=!1,this.required=!1,this.tabindex=0,this.validationErrors="",this.inputId="",this.componentDestroyed=new l.Subject}return t.prototype.ngOnChanges=function(t){t.readonly&&void 0!==t.readonly.currentValue&&(!0===t.readonly.currentValue?this.formModel.disable():!1===t.readonly.currentValue&&this.formModel.enable()),t.id&&void 0!==t.id.currentValue&&(this.inputId=this.formGroupHelper.getInputId(this.id))},t.prototype.ngOnInit=function(){var t=this;this.inputId=this.formGroupHelper.getInputId(this.id),this.formModel.statusChanges.pipe(c.takeUntil(this.componentDestroyed)).subscribe((function(e){t.translateValidationMessages(e)})),this.translateValidationMessages()},t.prototype.ngOnDestroy=function(){this.componentDestroyed.next(),this.componentDestroyed.unsubscribe()},t.prototype.translateValidationMessages=function(t){return x(this,void 0,void 0,(function(){var t,e;return w(this,(function(o){switch(o.label){case 0:return this.formModel?(t=this.formModel,this.validationErrors="",t.valid?[3,2]:[4,this.validationMessageService.getErrorMessages(t.errors)]):[2];case 1:(e=o.sent())&&(this.validationErrors=e.join("; ")),o.label=2;case 2:return[2]}}))}))},t}();L.decorators=[{type:o.Directive}],L.ctorParameters=function(){return[{type:F},{type:R}]},L.propDecorators={autofocus:[{type:o.Input}],formModel:[{type:o.Input}],label:[{type:o.Input}],labelPosition:[{type:o.Input}],id:[{type:o.Input}],pending:[{type:o.Input}],required:[{type:o.Input}],tabindex:[{type:o.Input}],readonly:[{type:o.Input}],tooltip:[{type:o.Input}]};var N=function(){function t(t,e,n,r){this.templateRef=t,this.viewContainer=e,this.document=n,this.renderer=r,this.popperStatusChange=new o.EventEmitter}return t.prototype.ngOnInit=function(){this.templateViewRef=this.viewContainer.createEmbeddedView(this.templateRef)},t.prototype.ngOnDestroy=function(){this.hide()},t.prototype.show=function(){var e=this;if(t.GlobalPopupRef&&t.GlobalPopupRef!=this&&(t.GlobalPopupRef.hide(),t.GlobalPopupRef=void 0),this.globalCloseSubscription||(this.globalCloseSubscription=l.fromEvent(this.document.body,"click").subscribe((function(t){e.hide()}))),!this.popperRef){this.popupViewRef=this.viewContainer.createEmbeddedView(this.popup);var o=this.popupViewRef.rootNodes.find((function(t){return"#text"!==t.nodeName}));this.popperRef=new b.default(this.templateViewRef.rootNodes[0],o,this.popperOptions),t.GlobalPopupRef=this,this.popperStatusChange.emit("visible")}},t.prototype.hide=function(){this.globalCloseSubscription&&(this.globalCloseSubscription.unsubscribe(),this.globalCloseSubscription=void 0),this.popperRef&&this.popupViewRef&&(this.popupViewRef.destroy(),this.popperRef.destroy(),this.popperRef=void 0,this.popperStatusChange.emit("hidden"))},t.prototype.update=function(){this.popperRef&&this.popperRef.update()},t.prototype.fixPosition=function(t,e){if(void 0===e&&(e=!1),this.popperRef&&this.popperRef.reference&&this.popperRef.popper){var o=this.popperRef.popper;if(this.renderer.removeStyle(o,"width"),this.renderer.setStyle(o,"position","fixed"),e){var n=this.document.querySelector("body");this.renderer.parentNode(o)!==n&&this.renderer.appendChild(n,o)}var r=this.popperRef.reference,i=o.offsetWidth,a=o.getBoundingClientRect(),s=a.left,l=r.getBoundingClientRect(),c=l.bottom;this.popperOptions&&this.popperOptions.placement&&(s="bottom-start"===this.popperOptions.placement||"top-start"===this.popperOptions.placement?l.left:l.right-(t||i>l.width?i:l.width)),a.height+c+10>window.innerHeight&&(c=l.top-a.height),this.renderer.setStyle(o,"transform","none"),this.renderer.setStyle(o,"left",s+"px"),this.renderer.setStyle(o,"top",c+"px"),this.renderer.setStyle(o,"width",i+"px"),t||this.renderer.setStyle(o,"min-width",l.width+"px")}},t}();N.GlobalPopupRef=void 0,N.decorators=[{type:o.Directive,args:[{selector:"[ecPopup]"}]}],N.ctorParameters=function(){return[{type:o.TemplateRef},{type:o.ViewContainerRef},{type:void 0,decorators:[{type:o.Inject,args:[e.DOCUMENT]}]},{type:o.Renderer2}]},N.propDecorators={popup:[{type:o.Input,args:["ecPopup"]}],popperOptions:[{type:o.Input,args:["options"]}]};var _=function(){function t(){}return t.prototype.scrollToItem=function(t,e,o){void 0===o&&(o=32);var n=document.querySelector(t);if(n){var r=n.querySelector(e);if(r){var i=r.getBoundingClientRect(),a=n.getBoundingClientRect();(i.bottom>a.bottom||i.top<a.top)&&(n.scrollTop=i.top-a.top+n.scrollTop-o)}}},t.prototype.getCurrentScrollPosition=function(t){var e=document.querySelector(t);return e?e.scrollTop:(console.error("Scroll container '"+t+"' does not exist."),0)},t.prototype.scrollToPosition=function(t,e){var o=document.querySelector(t);o?o.scrollTop=e:console.error("Scroll container '"+t+"' does not exist.")},t.prototype.scrollItemCentered=function(t,e){try{var o=document.querySelector(t);if(o){var n=o.getBoundingClientRect().height;this.scrollToItem(t,e,.5*n)}}catch(o){console.error("Error scrolling target into view. Container selector: "+t+". Target selector: "+e,o)}},t}();_.ɵprov=o.ɵɵdefineInjectable({factory:function(){return new _},token:_,providedIn:"root"}),_.decorators=[{type:o.Injectable,args:[{providedIn:"root"}]}],_.ctorParameters=function(){return[]};var B=function(t){function e(e,r,i,a){var s=t.call(this,e,r)||this;return s.validationMessageService=e,s.formGroupHelper=r,s.translate=i,s.scrollService=a,s.menuPosition="bottom_right",s.options=[],s.templateType="label",s.popupFixed=!0,s.upperCase=!1,s.placeholder="",s.hideToggleButton=!1,s.alwaysOpen=!1,s.menuElementClasses=[],s.textboxElementClasses=[],s.hideNoMatches=!1,s.noMatchesText="NoMatches_SC",s.addNewClick=new o.EventEmitter,s.search=new o.EventEmitter,s.filteredOptions=[],s.menuStatus="hidden",s.effectivePlaceholder="",s.selectedItem=null,s.textboxFormModel=new n.FormControl(""),s.addNewSelected=!1,s.foundMatch=!1,s.selectedItemIndex=-1,s.chooseOrAddPlaceholder="",s.choosePlaceholder="",s.hasDataBeenLoadedOnOpen=!1,s}return v(e,t),e.prototype.onResize=function(){this.popup&&this.popup.hide()},e.prototype.ngOnChanges=function(e){t.prototype.ngOnChanges.call(this,e),e.options&&(this.resetOptions(),this.popup&&this.popup.update()),(e.required||e.minlength||e.maxlength)&&this.setTextboxFormModelValidators(),(e.addNew&&!e.addNew.isFirstChange()||e.placeholder)&&this.updatePlaceholderText()},e.prototype.ngOnInit=function(){var e=this;t.prototype.ngOnInit.call(this),this.alwaysOpen&&(this.hideToggleButton=!0,this.menuStatus="visible"),this.chooseOrAddPlaceholder=this.translate.instant("Choose or add")+"...",this.choosePlaceholder=""+this.translate.instant("Choose"),this.formModelChanged(this.formModel.value),this.setTextboxFormModelValidators(),this.formModel.valueChanges.pipe(c.takeUntil(this.componentDestroyed)).subscribe((function(t){return e.formModelChanged(t)})),this.textboxFormModel.statusChanges.pipe(c.takeUntil(this.componentDestroyed)).subscribe((function(t){return e.setFormModelValidationErrors(t)})),this.updatePlaceholderText()},e.prototype.ngAfterViewInit=function(){var t=this;if(this.popup){var e={modifiers:{preventOverflow:{boundariesElement:"viewport"}}};switch(this.menuPosition){case"top_left":e.placement="top-start";break;case"top_right":e.placement="top-end";break;case"bottom_left":e.placement="bottom-start";break;case"bottom_right":e.placement="bottom-end";break;default:throw new Error("Invalid menuPosition for ComboboxComponent.")}e.onCreate=function(){t.scrollMenu(),t.popupFixed&&t.popup.fixPosition()},this.popupFixed&&(e.onUpdate=function(){t.popup.fixPosition()}),this.popup.popperOptions=e,this.popup.popperStatusChange.pipe(c.takeUntil(this.componentDestroyed)).subscribe((function(e){t.menuStatus=e,"hidden"===e&&(t.syncModelValues(),t.resetOptions())}))}},e.prototype.setErrors=function(t){this.textboxFormModel.setErrors(t),this.formModel.markAsTouched()},e.prototype.resetOptions=function(t){this.filteredOptions=t||this.options,""!==this.textboxFormModel.value?(this.selectedItemIndex=this.findDefaultSelectionIndex(this.filteredOptions,this.textboxFormModel.value),this.selectedItem=this.filteredOptions[this.selectedItemIndex]||null,this.scrollMenu(this.selectedItemIndex)):this.clearSelectedItem()},e.prototype.selectedChanged=function(t){this.setFormModelValue(t),this.toggleMenu()},e.prototype.toggleMenu=function(t){var e=this;this.popup&&(t&&t.stopPropagation(),this.formModel.disabled||("visible"===this.menuStatus?this.popup.hide():this.loadOnOpenObservable&&!this.hasDataBeenLoadedOnOpen?(this.pending=!0,this.loadOnOpenObservable.pipe(c.take(1)).subscribe((function(t){e.hasDataBeenLoadedOnOpen=!0,e.pending=!1,e.options=t,e.resetOptions(),e.popup.show()}))):this.popup.show()))},e.prototype.onBlur=function(){this.formModel.markAsTouched()},e.prototype.keyNavigate=function(t){switch(t.key){case"ArrowDown":case"Down":case"ArrowUp":case"Up":t.stopPropagation(),t.preventDefault(),this.onArrowDownUp(t);break;case"Backspace":case"Delete":case"Del":"hidden"===this.menuStatus&&this.toggleMenu();break;case"Tab":"visible"===this.menuStatus&&(this.addNewSelected&&t.preventDefault(),this.commitSelection(t));break;case"Enter":t.preventDefault(),"visible"===this.menuStatus&&this.commitSelection(t);break;case"Escape":case"Esc":"visible"===this.menuStatus&&(t.preventDefault(),this.toggleMenu());break;case" ":case"Spacebar":"hidden"===this.menuStatus&&(t.preventDefault(),this.toggleMenu());break;default:"hidden"===this.menuStatus&&"Shift"!==t.key&&this.toggleMenu()}},e.prototype.addNewItem=function(t){return x(this,void 0,void 0,(function(){return w(this,(function(e){switch(e.label){case 0:this.pending=!0,e.label=1;case 1:return e.trys.push([1,3,,4]),[4,t()];case 2:return e.sent(),[3,4];case 3:return e.sent(),this.setErrors({addnew:!0}),[3,4];case 4:return this.pending=!1,this.toggleMenu(),[2]}}))}))},e.prototype.commitSelection=function(t){this.addNewSelected?(t.stopPropagation(),this.onAddNew(t)):(this.setFormModelValue(this.selectedItem),this.toggleMenu())},e.prototype.onAddNew=function(t){t.stopPropagation(),this.addNewSelected=!1,this.addNewClick.emit(this.textboxFormModel.value)},e.prototype.onArrowDownUp=function(t){switch(t.key){case"ArrowDown":case"Down":-1!==this.selectedItemIndex||!this.addNewButton||this.addNewButton.nativeElement.hidden||this.addNewSelected?this.selectedItemIndex<this.filteredOptions.length-1&&(this.addNewSelected&&(this.addNewSelected=!1),this.selectedItemIndex==this.filteredOptions.length-2&&"heading"===this.filteredOptions[this.selectedItemIndex+1].display||(this.selectedItemIndex++,this.selectedItemIndex<this.filteredOptions.length-1&&"heading"===this.filteredOptions[this.selectedItemIndex].display&&this.selectedItemIndex++)):this.addNewSelected=!0;break;case"ArrowUp":case"Up":-1===this.selectedItemIndex&&this.addNewButton&&!this.addNewButton.nativeElement.hidden&&this.addNewSelected?this.addNewSelected=!1:this.selectedItemIndex>-1&&(0===this.selectedItemIndex&&this.addNewButton&&!this.addNewButton.nativeElement.hidden&&(this.addNewSelected=!0),this.selectedItemIndex--,this.selectedItemIndex>-1&&"heading"===this.filteredOptions[this.selectedItemIndex].display&&(this.selectedItemIndex--,-1==this.selectedItemIndex&&(this.addNewButton&&!this.addNewButton.nativeElement.hidden?this.addNewSelected=!0:this.selectedItemIndex=1)));break;default:return}this.selectedItem=this.filteredOptions[this.selectedItemIndex],"hidden"===this.menuStatus?this.setFormModelValue(this.selectedItem):this.scrollMenu()},e.prototype.filterOptionsArray=function(t){var e=t.toLowerCase();return t&&""!==t?this.options.filter((function(t){return t.label.toLowerCase().indexOf(e)>=0})):this.options},e.prototype.findSelectedItemIndex=function(t){var e=t||this.selectedItem;return e?this.filteredOptions.findIndex((function(t){return t.id&&e.id?t.label===e.label&&t.id===e.id:t.label===e.label})):-1},e.prototype.formModelChanged=function(t){this.synchronizeDisabledAttributes(),t?(this.textboxFormModel.setValue(t.label),this.selectedItemIndex=this.findSelectedItemIndex(t),this.selectedItemIndex>=0&&(this.selectedItem=this.filteredOptions[this.selectedItemIndex])):(this.textboxFormModel.reset(),this.clearSelectedItem())},e.prototype.scrollMenu=function(t){var e=this;if(this.filteredOptions.length>0)if(this.selectedItemIndex=void 0===t?this.findSelectedItemIndex():t,this.selectedItemIndex>-1&&this.selectedItem){var o=this.selectedItem.id?"#"+this.selectedItem.id:"#"+this.id+"_menu_item"+this.selectedItemIndex;setTimeout((function(){e.scrollService.scrollItemCentered("#"+e.id+"_menu_list",o)}),0)}else this.selectedItem=null},e.prototype.searchAndFilter=function(t){this.search.emit(t),0===this.search.observers.length&&void 0!==t&&(this.resetOptions(this.filterOptionsArray(t)),this.addNewSelected&&!this.addNewButton&&(this.addNewSelected=!1))},e.prototype.setFormModelValidationErrors=function(t){this.textboxFormModel.invalid?this.formModel.setErrors(this.textboxFormModel.errors):this.formModel.setErrors(null)},e.prototype.setFormModelValue=function(t){this.textboxFormModel.setValue(t?t.label:""),this.formModel.setValue(t)},e.prototype.setTextboxFormModelValidators=function(){var t=[];this.required&&t.push(n.Validators.required),this.minlength&&t.push(n.Validators.minLength(this.minlength)),this.maxlength&&t.push(n.Validators.maxLength(this.maxlength)),this.textboxFormModel.setValidators(t),this.textboxFormModel.updateValueAndValidity()},e.prototype.synchronizeDisabledAttributes=function(){this.formModel.disabled!==this.textboxFormModel.disabled&&(this.formModel.disabled?this.textboxFormModel.disable():this.textboxFormModel.enable())},e.prototype.syncModelValues=function(){this.formModel.value&&this.formModel.value.label!==this.textboxFormModel.value?this.textboxFormModel.setValue(this.formModel.value.label):this.formModel.value||this.textboxFormModel.setValue("")},e.prototype.textboxValueChanged=function(t){var e=this;if(this.searchAndFilter(this.textboxFormModel.value),""===this.textboxFormModel.value&&this.clearSelectedItem(),this.addNew){var o=this.filteredOptions.find((function(t){return t.label.toLowerCase()===e.textboxFormModel.value.toLowerCase()}));this.foundMatch=!!o}this.popup&&this.popup.update()},e.prototype.clearSelectedItem=function(){this.selectedItem=null,this.selectedItemIndex=-1},e.prototype.updatePlaceholderText=function(){this.placeholder?this.effectivePlaceholder=this.translate.instant(this.placeholder):this.addNew?this.effectivePlaceholder=this.chooseOrAddPlaceholder:this.effectivePlaceholder=this.choosePlaceholder},e.prototype.findDefaultSelectionIndex=function(t,e){var o=-1;if(t&&t.length&&(o=t.findIndex((function(t){return null!=t&&"heading"!==t.display})),e)){e=e.toLowerCase().trim();var n=t.findIndex((function(t){return t.label.toLowerCase()==e&&"heading"!==t.display}));n>=0&&(o=n)}return o},e}(L);B.decorators=[{type:o.Component,args:[{selector:"ec-combobox",template:'<div class="control control-label-{{labelPosition}}"\r\n [ngClass]="{\'open\': menuStatus === \'visible\',\r\n \'invalid\': formModel.touched && formModel.invalid,\r\n \'has-icon\': (templateType === \'iconAndLabel\' && formModel.value && formModel.value.icon && formModel.value.label === textboxFormModel.value),\r\n \'is-readonly\': readonly,\r\n \'is-disabled\': formModel.disabled,\r\n \'is-always-open\': alwaysOpen}">\r\n\r\n <label *ngIf="label" ngPreserveWhitespaces>\r\n <span>{{label | translate}}</span>\r\n <span *ngIf="validationErrors.length > 0 && formModel.touched && formModel.invalid">{{validationErrors}}</span>\r\n </label>\r\n\r\n <ng-container *ngIf="alwaysOpen; else popupTarget">\r\n <div class="textbox-group control-input" [ngClass]="textboxElementClasses">\r\n <ng-container *ngTemplateOutlet="textbox"></ng-container>\r\n </div>\r\n\r\n <ng-container *ngIf="filteredOptions.length > 0 || textboxFormModel.value">\r\n <ng-container *ngTemplateOutlet="dropdownmenu"></ng-container>\r\n </ng-container>\r\n </ng-container>\r\n</div>\r\n\r\n<ng-template #popupTarget>\r\n <div class="textbox-group control-input" [ngClass]="textboxElementClasses" *ecPopup="dropdownmenu">\r\n <ng-container *ngTemplateOutlet="textbox"></ng-container>\r\n </div>\r\n</ng-template>\r\n\r\n<ng-template #textbox>\r\n <i class="ec-icon {{formModel.value?.icon}}"></i>\r\n\r\n <ec-textbox class="textbox-group-input mb-0"\r\n #textbox\r\n [id]="id"\r\n [autofocus]="autofocus"\r\n [formModel]="textboxFormModel"\r\n [maxlength]="maxlength"\r\n [minlength]="minlength"\r\n [placeholder]="effectivePlaceholder"\r\n [required]="required"\r\n [tabindex]="tabindex"\r\n [readonly]="readonly"\r\n (input)="textboxValueChanged($event)"\r\n (keydown)="keyNavigate($event)"\r\n (focusout)="onBlur()"\r\n [upperCase]="upperCase"\r\n [pending]="pending && alwaysOpen"\r\n [autocomplete]="\'off\'"></ec-textbox>\r\n\r\n <ec-button class="textbox-group-btn-right"\r\n *ngIf="!hideToggleButton"\r\n [id]="id + \'_button\'"\r\n [disabled]="formModel.disabled"\r\n icon="icon-caret-down"\r\n [tabindex]="-1"\r\n type="secondary"\r\n (click)="toggleMenu($event)"\r\n (keydown)="keyNavigate($event)"></ec-button>\r\n</ng-template>\r\n\r\n<ng-template #dropdownmenu>\r\n <div class="popup"\r\n ecOverlay\r\n [status]="pending && !alwaysOpen ? \'pending\' : \'hasData\'">\r\n\r\n <button class="add-new"\r\n id="{{id}}_addNew"\r\n #addNewButton\r\n [class.is-selected]="addNewSelected"\r\n *ngIf="addNew"\r\n [hidden]="foundMatch || (addNew === \'dynamic\' && (!textboxFormModel.value || (formModel.value && textboxFormModel.value === formModel.value.label)))"\r\n\r\n (click)="onAddNew($event)">\r\n <span class="add-new-label ec-util-truncate">\r\n <span *ngIf="addNew === \'static\' || addNew === true" translate>Add new...</span>\r\n <span *ngIf="addNew === \'dynamic\'">{{\'Add\' | translate}} <strong class="ec-util-truncate" [ngClass]="{\'text-uppercase\': upperCase}">{{textboxFormModel.value}}</strong></span>\r\n </span>\r\n <i class="ec-icon icon-add"></i>\r\n </button>\r\n\r\n <ec-menu id="{{id}}_menu"\r\n [class.border-top-0]="!filteredOptions.length && hideNoMatches"\r\n [ngClass]="menuElementClasses"\r\n [templateType]="templateType"\r\n [customMenuTemplate]="customMenuTemplate"\r\n [showNoItems]="!hideNoMatches"\r\n [noDataText]="noMatchesText"\r\n [items]="filteredOptions"\r\n [selected]="selectedItem"\r\n (selectedChanged)="selectedChanged($event)"></ec-menu>\r\n\r\n <footer *ngIf="totalRecords && totalRecords > filteredOptions.length && filteredOptions.length > 0">\r\n <span>{{filteredOptions.length}} {{\'of\' | translate}} {{totalRecords}}</span>\r\n </footer>\r\n </div>\r\n</ng-template>\r\n',styles:['@-webkit-keyframes spin{0%{transform:rotate(0)}to{transform:rotate(1turn)}}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(1turn)}}:host{color:#1a1a23;display:block;font-family:Roboto,-apple-system,BlinkMacSystemFont,Segoe UI,Oxygen,Ubuntu,Fira Sans,Droid Sans,Helvetica Neue,sans-serif;font-size:1rem;margin-bottom:1rem;width:100%}:host :host-context(.form-condensed){margin-bottom:.5rem}:host .control{display:flex;flex-direction:column;width:100%}:host .control.control-label-bottom{flex-direction:column-reverse}:host .control.control-label-left{flex-direction:row}:host .control.control-label-left label{margin-right:.25rem}:host .control.control-label-right{flex-direction:row-reverse}:host .control.control-label-right label{margin-left:.25rem}:host .control.control-label-left,:host .control.control-label-right{align-items:center}:host .control.control-label-left label,:host .control.control-label-right label{flex:1 1;margin-bottom:0;margin-top:0}:host .control.control-label-left .control-input,:host .control.control-label-right .control-input{flex:2 2}:host .control.is-readonly input,:host .control.is-readonly select{-moz-user-select:none;-ms-user-select:none;-webkit-user-select:none;background-clip:border-box;background-color:rgba(26,26,35,.12);background-image:none;border-color:transparent;color:#1a1a23;opacity:1;overflow:hidden;pointer-events:none;user-select:none;white-space:nowrap}:host .control.invalid .textbox-group-input ::ng-deep .control input.ng-invalid,:host .control.invalid .textbox-group-input ::ng-deep .control input.ng-valid{background-color:#fff8cc;background-image:url(\'data:image/svg+xml;charset=utf8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 32 32"><path fill="rgba(26, 26, 35, 0.66)" d="M20.21 20.21h-8.42L10.95 0h10.1l-.84 20.21zm-8.42 3.37h8.42V32h-8.42z"/></svg>\');background-position:.25em;background-repeat:no-repeat;background-size:1em 1em;padding-left:1.5em}:host .control.invalid .textbox-group-input ::ng-deep .control input.ng-invalid:not(:focus),:host .control.invalid .textbox-group-input ::ng-deep .control input.ng-valid:not(:focus){border-color:#ffe433}:host .control.invalid:not(.open) .textbox-group-btn-right ::ng-deep button{background-color:#fff8cc}:host .control.invalid:not(.open) .textbox-group-btn-right ::ng-deep button:not(:focus){border-color:#ffe433}:host .textbox-group{display:flex;position:relative}:host input:focus,:host select:focus,:host textarea:focus{outline:none}:host(.invalid) .control .textbox-group-input ::ng-deep .control input.ng-invalid,:host(.invalid) .control .textbox-group-input ::ng-deep .control input.ng-valid{background-color:#fff8cc;background-image:url(\'data:image/svg+xml;charset=utf8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 32 32"><path fill="rgba(26, 26, 35, 0.66)" d="M20.21 20.21h-8.42L10.95 0h10.1l-.84 20.21zm-8.42 3.37h8.42V32h-8.42z"/></svg>\');background-position:.25em;background-repeat:no-repeat;background-size:1em 1em;padding-left:1.5em}:host(.invalid) .control .textbox-group-input ::ng-deep .control input.ng-invalid:not(:focus),:host(.invalid) .control .textbox-group-input ::ng-deep .control input.ng-valid:not(:focus){border-color:#ffe433}:host(.invalid) .control:not(.open) .textbox-group-btn-right ::ng-deep button{background-color:#fff8cc}:host(.invalid) .control:not(.open) .textbox-group-btn-right ::ng-deep button:not(:focus){border-color:#ffe433}.control{position:relative}.control ec-textbox ::ng-deep input.ng-invalid.ng-touched{background-image:none;padding-left:.5rem}.control ec-textbox ::ng-deep input.ng-invalid.ng-touched:not(.is-empty)~.units-left{left:0}.control ec-textbox ::ng-deep input:required:not(:disabled).is-empty{background-color:#fff;background-image:url(\'data:image/svg+xml;charset=utf8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 32 32"><path fill="%23ffe433" d="M31.32 21.69l-.09.18-2.48 4.35c-.36.54-.77.62-1.25.27-.12 0-.2 0-.2-.09L19.53 22v9.37a1.26 1.26 0 0 1-.72.67h-5.26c-.59 0-.83-.3-.83-.89 0-.12.15-.21.15-.27V22l-8 4.71h-.12c-.42.66-.8.21-1.16-.27L1 21.82a.82.82 0 0 1 .35-1.26l.18-.1L9 16 .87 11.47v-.09c0-.36-.39-.74-.09-1.16l2.75-4.35v-.09c0-.42.82-.54 1.29-.36l8 4.62V.89c0-.59.18-.89.77-.89h5c.65 0 .91.3.91.89V10l7.94-4.53c.48-.29.72-.21 1.08.27l2.32 4.35v.09c.66.48.45.89-.08 1.25L23 16l7.91 4.53v.09c-.04.18.53.54.41 1.07z"/></svg>\');background-position:.25em;background-repeat:no-repeat;background-size:1em 1em;border-color:#d2d7d9;padding-left:1.5em}.control ec-textbox ::ng-deep input:required:not(:disabled).is-empty:focus{border-color:#0084a9;box-shadow:0 0 0 1px #0084a9;position:relative;z-index:1}.control .textbox-group .ec-icon{display:none;left:.5rem;position:absolute;top:.5rem;z-index:2}.control.has-icon:not(.invalid) .ec-icon{display:inline-flex}.control.has-icon:not(.invalid) ec-textbox ::ng-deep input{padding-left:1.75em}.control.is-disabled .ec-icon{filter:grayscale(100%);opacity:.65}.control.is-readonly ec-textbox ::ng-deep input{border-bottom-right-radius:0;border-right-width:.0625rem;border-top-right-radius:0}.control.is-readonly ec-button{display:none}.control.is-always-open{height:100%}.control.is-always-open .textbox-group,.control.is-always-open label{margin-left:1rem;margin-right:1rem}.control.is-always-open .textbox-group{margin-bottom:1rem}.control.is-always-open .popup{background-color:transparent;border:0;flex:1 1;margin:0;min-height:0;z-index:0}.control.is-always-open ec-menu{border-top:1px solid rgba(26,26,35,.18)}.control.is-always-open ec-menu ::ng-deep ul{max-height:none}label{color:rgba(26,26,35,.66);display:block;font-size:.75rem;line-height:1;margin:.375rem 0}.popup{background-color:#fff;border:.125rem solid #0084a9;margin-bottom:-1px;margin-top:-1px;z-index:50}ec-menu{display:block}ec-menu:not(:first-child){border-top:1px solid rgba(26,26,35,.18)}ec-menu ::ng-deep ul{max-height:30vh}ec-menu ::ng-deep ul li{white-space:nowrap}.add-new{align-items:center;background-color:#fff;border:0;cursor:pointer;display:flex;height:2rem;line-height:1.25;padding:.25rem .5714285714em;width:100%}.add-new.is-highlighted,.add-new.is-selected{background-color:#d9edf2}.add-new:focus{background-color:rgba(26,26,35,.38);outline:none}.add-new:active{background-color:#0084a9;color:#fff}.add-new.is-disabled,.add-new:disabled{color:rgba(26,26,35,.66);cursor:default;opacity:.65}.add-new .label{align-items:center;display:flex;flex:auto}.add-new .ec-icon+.label{margin:0 .375rem}.add-new.is-selected,.add-new:hover:not(:active){background-color:#bfe0e9}.add-new:active .ec-icon{color:inherit}.add-new-label{flex:1 1;margin-right:.5rem;text-align:left}.add-new .ec-icon{flex:0 0 auto}footer{border-top:1px solid rgba(26,26,35,.18);color:rgba(26,26,35,.38);font-size:.75rem;line-height:1;padding:.5rem;text-align:right}ec-button ::ng-deep button .ec-icon{background-position:50%;background-size:1em}.open:not(.is-always-open) .textbox-group ec-textbox ::ng-deep input{border-color:#d2d7d9;box-shadow:none}.open:not(.is-always-open) .textbox-group ec-button ::ng-deep button{background-color:#bfe0e9;box-shadow:none}']}]}],B.ctorParameters=function(){return[{type:F},{type:R},{type:i.TranslateService},{type:_}]},B.propDecorators={onResize:[{type:o.HostListener,args:["window:resize"]}],addNew:[{type:o.Input}],maxlength:[{type:o.Input}],menuPosition:[{type:o.Input}],minlength:[{type:o.Input}],options:[{type:o.Input}],templateType:[{type:o.Input}],customMenuTemplate:[{type:o.Input}],popupFixed:[{type:o.Input}],totalRecords:[{type:o.Input}],upperCase:[{type:o.Input}],placeholder:[{type:o.Input}],loadOnOpenObservable:[{type:o.Input}],hideToggleButton:[{type:o.Input}],alwaysOpen:[{type:o.Input}],menuElementClasses:[{type:o.Input}],textboxElementClasses:[{type:o.Input}],hideNoMatches:[{type:o.Input}],noMatchesText:[{type:o.Input}],addNewClick:[{type:o.Output}],search:[{type:o.Output}],textbox:[{type:o.ViewChild,args:["textbox"]}],popup:[{type:o.ViewChild,args:[N]}],addNewButton:[{type:o.ViewChild,args:["addNewButton"]}]};var j=function(){function t(t,e){this.router=t,this.activatedRoute=e,this._hasUnsavedChanges=!1,this.beforeUnloadFunction=function(t){t.preventDefault(),t.returnValue=""},window&&(this.resized=l.fromEvent(window,"resize"))}return Object.defineProperty(t.prototype,"hasUnsavedChanges",{get:function(){return this._hasUnsavedChanges},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,"innerWidth",{get:function(){return window?window.innerWidth:void 0},enumerable:!1,configurable:!0}),t.prototype.goBack=function(){window.history.back()},t.prototype.getHistoryLength=function(){var t;return(null===(t=null===window||void 0===window?void 0:window.history)||void 0===t?void 0:t.length)||0},t.prototype.navigateToUrl=function(t){return x(this,void 0,void 0,(function(){return w(this,(function(e){switch(e.label){case 0:return e.trys.push([0,5,,6]),0!==t.indexOf("/app/")?[3,2]:[4,this.router.navigateByUrl(t.substring(5))];case 1:return e.sent(),[3,4];case 2:return[4,this.router.navigateByUrl(t)];case 3:e.sent(),e.label=4;case 4:return[3,6];case 5:return e.sent(),window.location.href=t,[3,6];case 6:return[2]}}))}))},t.prototype.addNavigateAwayPrompt=function(){this._hasUnsavedChanges=!0,window.addEventListener("beforeunload",this.beforeUnloadFunction)},t.prototype.removeNavigateAwayPrompt=function(){this._hasUnsavedChanges=!1,window.removeEventListener("beforeunload",this.beforeUnloadFunction)},t.prototype.postMessage=function(t,e,o){t.postMessage(e,o)},t.prototype.openNew=function(t){window.open(t,"_blank")},t.prototype.modifyHistoryQueryParamsSubset=function(t){return x(this,void 0,void 0,(function(){return w(this,(function(e){return[2,this.router.navigate([],{relativeTo:this.activatedRoute,replaceUrl:!0,queryParams:t,queryParamsHandling:"merge"})]}))}))},t.prototype.confirm=function(t){return Promise.resolve(confirm(t))},t.prototype.closeWindow=function(t){t?t.close():window.close()},t.prototype.getLocation=function(){return window.location.pathname+window.location.hash},t.prototype.getFullUrl=function(){return window.location.href},t.prototype.reloadWindow=function(){window.location.reload()},t}();j.ɵprov=o.ɵɵdefineInjectable({factory:function(){return new j(o.ɵɵinject(r.Router),o.ɵɵinject(r.ActivatedRoute))},token:j,providedIn:"root"}),j.decorators=[{type:o.Injectable,args:[{providedIn:"root"}]}],j.ctorParameters=function(){return[{type:r.Router},{type:r.ActivatedRoute}]};var U=function(){function t(t,e,n,r){this.el=t,this.renderer=e,this.windowService=n,this.scrollService=r,this.items=[],this.selected=null,this.templateType="label",this.showNoItems=!1,this.noDataText="NoItems_TC",this.enableKeyNav=!1,this.highlightedItem=null,this.selectedChanged=new o.EventEmitter,this.menuClosed=new o.EventEmitter,this.highlightedItemIndex=-1,this.lastSelected=null}return t.prototype.ngAfterContentInit=function(){var t=this;switch(this.templateType){case"label":this.internalizedTemplate=this.labelTemplate;break;case"iconAndLabel":this.internalizedTemplate=this.iconAndLabelTemplate;break;case"checkAndLabel":this.internalizedTemplate=this.checkAndLabelTemplate;break;default:throw new Error("Invalid templateType for MenuComponent. Please use either: 'label', 'iconAndLabel' or 'checkAndLabel'")}this.customMenuTemplate&&(this.internalizedTemplate=this.customMenuTemplate),this.id&&(this.attrId=this.id),this.setItemIds(),this.highlightedItem&&this.items.length&&(this.highlightedItemIndex=this.items.findIndex((function(e){return t.highlightedItem===e}))),this.addKeydownListener()},t.prototype.ngOnDestroy=function(){this.removeKeydownListener&&this.removeKeydownListener()},t.prototype.selectItem=function(t,e,o){t.stopPropagation(),e.disabled||e.readonly||this.lastSelected===e||(e.url?o?(e.target?window.open(e.url,e.target):this.windowService.navigateToUrl(e.url),this.onSelection(e)):this.onSelection(e):(e.onClick&&e.onClick(e,!1),e.items?this.toggleChildMenu(!0):this.onSelection(e)),this.selected=e,this.lastSelected=e)},t.prototype.back=function(t){t.stopPropagation(),this.parent&&this.parent.onClick&&this.parent.onClick(null,!0),this.menuClosed.emit()},t.prototype.onSelection=function(t){"heading"!==t.display&&this.selectedChanged.emit(t)},t.prototype.toggleChildMenu=function(t){var e=this,o=this.el.nativeElement.querySelector("nav");if(t){this.removeKeydownListener&&this.removeKeydownListener();var n=o.offsetHeight,r=o.offsetWidth;this.renderer.setStyle(o,"height",n+"px"),this.renderer.setStyle(o,"width",r+"px"),this.renderer.addClass(this.el.nativeElement,"open"),setTimeout((function(){e.renderer.addClass(e.el.nativeElement,"open-active")}))}else this.addKeydownListener(),this.renderer.removeClass(this.el.nativeElement,"open-active"),setTimeout((function(){e.renderer.removeClass(e.el.nativeElement,"open"),e.renderer.setStyle(o,"height","100%"),e.selected=null}),350)},t.prototype.keyNavigate=function(t){if(this.enableKeyNav)switch(t.key){case"ArrowUp":case"Up":case"ArrowDown":case"Down":t.stopPropagation(),t.preventDefault(),this.moveHighlightedUpOrDown(t);break;case"ArrowRight":case"Right":t.stopPropagation(),t.preventDefault(),this.highlightedItem&&this.highlightedItem.items&&this.selectItem(t,this.highlightedItem,!0);break;case"ArrowLeft":case"Left":t.stopPropagation(),t.preventDefault(),this.parent&&this.back(t);break;case" ":case"Spacebar":case"Enter":t.preventDefault(),this.highlightedItemIndex>-1&&this.highlightedItem?this.selectItem(t,this.highlightedItem,!0):-1===this.highlightedItemIndex&&this.parent&&this.back(t);break;default:return}},t.prototype.scrollToSelectedItem=function(){var t=this;window.setTimeout((function(){t.scrollService.scrollToItem("#"+t.id+"_list","li.is-selected")}))},t.prototype.moveHighlightedUpOrDown=function(t){switch(t.key){case"ArrowUp":case"Up":this.highlightedItemIndex>-1&&(this.highlightedItemIndex--,this.highlightedItemIndex>-1&&"heading"===this.items[this.highlightedItemIndex].display&&this.highlightedItemIndex--);break;case"ArrowDown":case"Down":this.highlightedItemIndex<this.items.length-1&&(this.highlightedItemIndex++,this.highlightedItemIndex<this.items.length-1&&"heading"===this.items[this.highlightedItemIndex].display&&this.highlightedItemIndex++);break;default:return}this.highlightedItemIndex>-1?this.highlightedItem=this.items[this.highlightedItemIndex]:this.highlightedItem=null,this.scrollToHighlightedItem()},t.prototype.scrollMenu=function(t){if(this.items.length>0){t=t||this.items[0];var e=this.findItemIndex(t);if(this.id){var o=t.id?"#"+t.id:"#"+this.id+"_item"+e;this.scrollService.scrollItemCentered("#"+this.id+"_list",o)}}},t.prototype.scrollToHighlightedItem=function(){this.scrollMenu(this.highlightedItem)},t.prototype.findItemIndex=function(t){return t?this.items.findIndex((function(e){return e.label===t.label})):-1},t.prototype.addKeydownListener=function(){var t=this;this.enableKeyNav&&(this.removeKeydownListener=this.renderer.listen("document","keydown",(function(e){return t.keyNavigate(e)})))},t.prototype.setItemIds=function(){var t=this;this.items&&this.items.forEach((function(e,o){e.id=e.id?e.id:t.id+"_item"+o}))},t}();U.decorators=[{type:o.Component,args:[{selector:"ec-menu",template:'<nav>\r\n <div class="parent"\r\n [class.no-data]="showNoItems && (!items || items.length === 0)">\r\n <header id="{{id}}_header"\r\n class="item-wrapper"\r\n [class.is-selected]="highlightedItemIndex === -1"\r\n *ngIf="parent"\r\n (click)="back($event)">\r\n <i class="ec-icon icon-angle-down rotate-90 flex-shrink"></i>\r\n <span class="label text-truncate flex-grow">{{parent?.label}}</span>\r\n </header>\r\n\r\n <ul id="{{id}}_list">\r\n <li *ngFor="let item of items; index as i"\r\n id="{{item.id || id + \'_item\' + i}}"\r\n class="{{item.display || \'item\'}} {{item.classList}}"\r\n [attr.disabled]="item.disabled"\r\n [hidden]="item.hidden"\r\n ecNavItemActive="is-selected"\r\n [ecNavItemActiveQueryParams]="item.queryParams"\r\n [ecNavItemActiveUrl]="item.url"\r\n [ecNavItemActiveExactMatch]=\'item.isActiveExactMatch\'\r\n (routerLinkActivated)="selectItem($event, item)"\r\n [ngClass]="{\'is-highlighted\':(selected === item && item?.display !== \'heading\') || highlightedItem === item, \'is-link\': item.url, \'is-disabled\': item.disabled, \'is-readonly\': item.readonly, \'is-checked\': item.checked}"\r\n (click)="selectItem($event, item)">\r\n\r\n <a *ngIf="item.url && !item.externalLink"\r\n id="{{item.id}}_link"\r\n class="item-wrapper"\r\n [routerLink]="item.url"\r\n [queryParams]="item.queryParams || null"\r\n target="{{item.target || \'_self\'}}">\r\n\r\n <ng-container *ngTemplateOutlet="internalizedTemplate; context: {$implicit: item}"></ng-container>\r\n </a>\r\n\r\n <a *ngIf="item.url && item.externalLink"\r\n id="{{item.id}}_link"\r\n class="item-wrapper"\r\n href="{{item.url}}"\r\n target="{{item.target || \'_self\'}}">\r\n\r\n <ng-container *ngTemplateOutlet="internalizedTemplate; context: {$implicit: item}"></ng-container>\r\n </a>\r\n\r\n <div *ngIf="!item.url"\r\n class="item-wrapper">\r\n <ng-container *ngTemplateOutlet="internalizedTemplate; context: {$implicit: item}"></ng-container>\r\n </div>\r\n </li>\r\n </ul>\r\n\r\n <p class="no-data-message">{{noDataText | translate}}</p>\r\n </div>\r\n\r\n \x3c!-- Child menu (Rendered to the right) --\x3e\r\n <ec-menu *ngIf="selected?.items"\r\n id="{{id}}_child"\r\n class="child"\r\n [parent]="selected"\r\n [items]="selected?.items"\r\n [showNoItems]="true"\r\n [templateType]="templateType"\r\n [enableKeyNav]="true"\r\n (selectedChanged)="onSelection($event)"\r\n (menuClosed)="toggleChildMenu(false)">\r\n </ec-menu>\r\n</nav>\r\n\r\n\x3c!-- \'label\' Item Template --\x3e\r\n<ng-template #label\r\n let-item>\r\n <span id="{{item.id}}_label"\r\n class="label">{{item.label}}</span>\r\n\r\n <i class="ec-icon icon-angle-down rotate-270" *ngIf="item?.items"></i>\r\n</ng-template>\r\n\r\n\x3c!-- \'checkAndLabel\' Item Template --\x3e\r\n<ng-template #checkAndLabel\r\n let-item>\r\n\r\n <i class="ec-icon icon-check ec-icon-sm" *ngIf="item.display !== \'heading\'"></i>\r\n\r\n <i class="ec-icon {{item.icon}} ml-2" *ngIf="item.icon"></i>\r\n\r\n <span id="{{item.id}}_label"\r\n class="label">{{item.label}}</span>\r\n\r\n <i class="ec-icon icon-angle-down rotate-270" *ngIf="item?.items"></i>\r\n</ng-template>\r\n\r\n\x3c!-- \'iconAndLabel\' Item Template --\x3e\r\n<ng-template #iconAndLabel\r\n let-item>\r\n\r\n <i class="ec-icon {{item.icon}}"></i>\r\n\r\n <span id="{{item.id}}_label"\r\n class="label">{{item.label}}</span>\r\n\r\n <i class="ec-icon icon-angle-down rotate-270" *ngIf="item?.items"></i>\r\n</ng-template>',styles:["@-webkit-keyframes spin{0%{transform:rotate(0)}to{transform:rotate(1turn)}}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(1turn)}}:host{background-color:#fff;display:block;font-size:.875rem;font-weight:400}:host.open>nav>.child,:host.open>nav>.parent{height:100%;left:0;position:absolute;right:0;top:0;transition:transform .25s ease}:host.open>nav>.parent{transform:translateX(0)}:host.open>nav>.child{transform:translateX(100%)}:host.open-active>nav>.parent{transform:translateX(-100%)}:host.open-active>nav>.child{transform:translateX(0)}:host(.bg-transparent){background-color:transparent}:host-context(.is-always-open){height:100%}:host-context(.is-always-open) .item-wrapper{padding-left:1rem;padding-right:1rem}nav{height:100%;overflow:hidden}.parent,nav{display:flex;position:relative}.parent{flex:auto;flex-direction:column;max-width:100%}.parent>header{background-color:#dee2e4;color:rgba(26,26,35,.66);cursor:pointer}.parent>header.is-highlighted,.parent>header.is-selected{background-color:#d9edf2}.parent>header:hover{background-color:#bfe0e9}.parent.no-data ul{display:none}.parent.no-data .no-data-message{display:block}ul{flex:auto;height:100%;list-style:none;margin:0;overflow-y:auto;padding:0}ul li{cursor:pointer}ul li.is-highlighted,ul li.is-selected{background-color:#d9edf2}ul li:hover{background-color:#bfe0e9}ul li:focus{background-color:rgba(26,26,35,.38);outline:none}ul li:active{background-color:#0084a9;color:#fff}ul li.is-disabled,ul li:disabled{color:rgba(26,26,35,.66);cursor:default;opacity:.65}ul li a{border-bottom:0;color:inherit;text-decoration:none}ul li.heading{background-color:#dee2e4;color:rgba(26,26,35,.66)}ul li.heading .item-wrapper{cursor:default}ul li.divider{border-bottom:1px solid #d2d7d9}ul li.is-disabled,ul li.is-readonly{background-color:transparent;color:inherit;cursor:default}ul li.is-checked .icon-check{opacity:1}.item-wrapper{color:inherit;cursor:inherit;display:flex;line-height:1.25rem;min-height:1.75rem;padding:.25rem .5rem}.item-wrapper .label{margin-right:auto}.item-wrapper .label+.ec-icon{margin-left:.5rem}.item-wrapper .ec-icon{flex:none;margin-top:.125rem}.item-wrapper .ec-icon+.label{margin-left:.5rem}.item-wrapper .ec-icon-sm{margin-top:.25rem}.item-wrapper .icon-check{opacity:0}.no-data-message{color:rgba(26,26,35,.38);display:none;font-size:1rem;margin-bottom:0;padding:1rem;text-align:center}:host-context(ec-tree) ul{overflow-x:hidden}:host-context(ec-tree) li{white-space:nowrap}:host-context(ec-tree) li.is-highlighted,:host-context(ec-tree) li.is-selected{font-weight:700}:host-context(ec-tree) li.is-highlighted:not(:hover),:host-context(ec-tree) li.is-selected:not(:hover){background-color:transparent}"]}]}],U.ctorParameters=function(){return[{type:o.ElementRef},{type:o.Renderer2},{type:j},{type:_}]},U.propDecorators={id:[{type:o.Input}],attrId:[{type:o.HostBinding,args:["attr.id"]}],items:[{type:o.Input}],selected:[{type:o.Input}],parent:[{type:o.Input}],templateType:[{type:o.Input}],customMenuTemplate:[{type:o.Input}],title:[{type:o.Input}],showNoItems:[{type:o.Input}],noDataText:[{type:o.Input}],enableKeyNav:[{type:o.Input}],highlightedItem:[{type:o.Input}],selectedChanged:[{type:o.Output}],menuClosed:[{type:o.Output}],labelTemplate:[{type:o.ViewChild,args:["label",{static:!0}]}],iconAndLabelTemplate:[{type:o.ViewChild,args:["iconAndLabel",{static:!0}]}],checkAndLabelTemplate:[{type:o.ViewChild,args:["checkAndLabel",{static:!0}]}]};var H=function(){function t(){this.autofocus=!1,this.status={status:"hasData",message:""},this.disabled=!1,this.buttonType="icon",this.buttonTitle="",this.showArrow=!0,this.items=[],this.menuTemplateType="label",this.popupFixed=!1,this.pending=!1,this.itemSelected=new o.EventEmitter,this.popupOpened=new o.EventEmitter,this.menuStatus="hidden",this.highlightedItem=null,this.isKeyboardEvent=!1,this.componentDestroyed=new l.Subject}return t.prototype.ngOnInit=function(){var t=this;this.popup.popperStatusChange.pipe(c.takeUntil(this.componentDestroyed)).subscribe((function(e){t.menuStatus=e,"visible"===t.menuStatus&&t.popupOpened.emit()}))},t.prototype.ngAfterViewInit=function(){var t=this,e={modifiers:{preventOverflow:{boundariesElement:"viewport"}},placement:"bottom-end"};"left"===this.menuPosition&&(e.placement="bottom-start"),this.popupFixed&&(e.onCreate=function(){t.popup.fixPosition(void 0,!0)},e.onUpdate=function(){t.popup.hide()}),this.popup.popperOptions=e},t.prototype.ngOnDestroy=function(){this.componentDestroyed.next(),this.componentDestroyed.unsubscribe()},t.prototype.toggleMenu=function(t){t&&t.stopPropagation(),this.disabled||("hidden"===this.menuStatus?(this.isKeyboardEvent&&this.items.length&&(this.highlightedItem=this.items.find((function(t){return"heading"!==t.display}))||null),this.popup.show()):(this.popup.hide(),this.highlightedItem=null,this.isKeyboardEvent=!1))},t.prototype.selectedChanged=function(t){this.itemSelected.emit(t),this.toggleMenu()},t.prototype.keyNavigate=function(t){switch(t.key){case"Enter":this.isKeyboardEvent=!0;break;case"Escape":case"Tab":"visible"===this.menuStatus&&this.toggleMenu(t);break;default:return}},t}();H.decorators=[{type:o.Component,args:[{selector:"ec-dropdown",template:'<div class="control">\r\n <ec-button [disabled]="disabled"\r\n id="{{id}}_toggle"\r\n [ngClass]="{\'has-arrow\':showArrow, \'active\': menuStatus === \'visible\', \'text-left\': buttonAlignment === \'left\', \'text-right\': buttonAlignment === \'right\'}"\r\n *ecPopup="dropdownMenu"\r\n [label]="label"\r\n [icon]="icon"\r\n [tabindex]="tabindex"\r\n [type]="buttonType"\r\n [customTemplate]="buttonCustomTemplate"\r\n [pending]="pending"\r\n title="{{buttonTitle}}"\r\n (click)="toggleMenu($event)"\r\n (keydown)="keyNavigate($event)"\r\n [autofocus]="autofocus">\r\n </ec-button>\r\n <span class="arrow is-{{buttonType}}"\r\n *ngIf="showArrow"\r\n [class.is-disabled]="disabled">\r\n <i class="ec-icon icon-caret-down" [class.flip-y]="menuStatus === \'visible\'"></i>\r\n </span>\r\n</div>\r\n\r\n<ng-template #dropdownMenu>\r\n <div id="{{id}}_popup"\r\n class="popup"\r\n ecOverlay\r\n [status]="status?.status"\r\n [message]="status?.message"\r\n [displayAsMask]="true">\r\n \x3c!-- Dropdown Menu Title --\x3e\r\n <header id="{{id}}_title"\r\n *ngIf="menuTitle">{{menuTitle}}\r\n </header>\r\n \x3c!-- Dropdown Menu --\x3e\r\n <ec-menu id="{{id}}_menu"\r\n [class.wrap-items]="menuWidth"\r\n [templateType]="menuTemplateType"\r\n [style.width]="menuWidth ? menuWidth + \'px\' : \'auto\'"\r\n [style.min-width]="menuMinWidth ? menuMinWidth + \'px\' : \'auto\'"\r\n [style.height]="menuHeight ? menuHeight + \'px\' : \'auto\'"\r\n [items]="items"\r\n [showNoItems]="true"\r\n [enableKeyNav]="true"\r\n [highlightedItem]="highlightedItem"\r\n (selectedChanged)="selectedChanged($event)">\r\n </ec-menu>\r\n <footer *ngIf="menuFooter">{{menuFooter}}</footer>\r\n </div>\r\n</ng-template>',styles:["@-webkit-keyframes spin{0%{transform:rotate(0)}to{transform:rotate(1turn)}}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(1turn)}}:host{box-sizing:border-box;display:inline-block}:host(.fill),:host(.fill) .control,:host(.fill) .control ec-button{display:block;height:100%;width:100%}:host(.fill) .control ec-button ::ng-deep button{display:block;display:flex;height:100%;width:100%}:host(.fill) ec-menu{min-width:100%}:host(.td-fill){left:0;position:absolute;top:0}:host(.td-fill) ec-button ::ng-deep button{font-size:.75rem;padding-left:.375rem;padding-right:.375rem}:host(.is-action) .arrow,:host(.is-action) ec-button{color:#0084a9}:host(.is-condensed) ec-button ::ng-deep button{height:1.5rem}:host(.is-condensed) ec-button.has-arrow ::ng-deep button{padding:0 1.125rem 0 .25rem}:host(.is-condensed) ec-button.has-arrow~.arrow{right:.375rem}:host(.d-block) ec-button{display:block}:host(.d-block) ec-button ::ng-deep button{width:100%}:host-context(th){color:#1a1a23}.control{position:relative}ec-button{display:block}ec-button.has-arrow~.arrow{align-items:center;display:flex;height:100%;pointer-events:none;position:absolute;right:.5rem;top:0;width:.625rem;z-index:1}ec-button.has-arrow~.arrow .ec-icon{color:rgba(26,26,35,.66);transition:color .3s ease;width:auto}ec-button.has-arrow~.arrow.is-common .ec-icon{color:#fff}ec-button.has-arrow~.arrow.is-link .ec-icon{color:#0084a9}ec-button.has-arrow~.arrow.is-disabled .ec-icon{color:rgba(26,26,35,.66);opacity:.5}ec-button.has-arrow ::ng-deep button{padding-right:1.25rem;width:auto}ec-button.has-arrow ::ng-deep button:not(.ec-button-custom){padding-left:.5rem}.popup{background-color:#fff;border:.125rem solid #0084a9;margin-top:-1px;position:absolute;z-index:50}.popup>header{background-color:#0084a9;color:#fff;line-height:1.25rem;overflow:hidden;padding:.25rem .5rem;text-overflow:ellipsis;white-space:nowrap}.popup footer{border-top:.0625rem solid #d2d7d9;color:rgba(26,26,35,.66);font-size:.75rem;line-height:1.2;padding:.1875rem .5rem}ec-menu ::ng-deep ul{max-height:50vh}ec-menu ::ng-deep li{white-space:nowrap}ec-menu.wrap-items ::ng-deep li{white-space:normal}"]}]}],H.ctorParameters=function(){return[]},H.propDecorators={id:[{type:o.Input}],autofocus:[{type:o.Input}],status:[{type:o.Input}],disabled:[{type:o.Input}],label:[{type:o.Input}],icon:[{type:o.Input}],buttonType:[{type:o.Input}],buttonAlignment:[{type:o.Input}],buttonTitle:[{type:o.Input}],tabindex:[{type:o.Input}],showArrow:[{type:o.Input}],items:[{type:o.Input}],menuTemplateType:[{type:o.Input}],menuTitle:[{type:o.Input}],menuHeight:[{type:o.Input}],menuWidth:[{type:o.Input}],menuMinWidth:[{type:o.Input}],menuPosition:[{type:o.Input}],menuFooter:[{type:o.Input}],popupFixed:[{type:o.Input}],buttonCustomTemplate:[{type:o.Input}],pending:[{type:o.Input}],itemSelected:[{type:o.Output}],popupOpened:[{type:o.Output}],menuEl:[{type:o.ViewChild,args:[U,{read:o.ElementRef}]}],popup:[{type:o.ViewChild,args:[N,{static:!0}]}]};var q=function(){function t(t,e,n,r){this.router=t,this.el=e,this.renderer=n,this.route=r,this._exact=!0,this.routerLinkActivated=new o.EventEmitter,this.destroyed=new l.Subject}return Object.defineProperty(t.prototype,"exact",{set:function(t){this._exact=void 0===t||t,this.update()},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,"url",{set:function(t){null!=t&&(this._url=this.router.createUrlTree([t],{relativeTo:this.route,queryParams:this.queryParams}),this.update())},enumerable:!1,configurable:!0}),t.prototype.ngOnInit=function(){var t=this;this.router.events.pipe(c.takeUntil(this.destroyed),c.filter((function(t){return t instanceof r.NavigationEnd}))).subscribe((function(){t.update()}))},t.prototype.ngOnDestroy=function(){this.destroyed.next(),this.destroyed.unsubscribe()},t.prototype.update=function(){this._url&&this.classValue&&(this.router.isActive(this._url,this._exact)?(this.renderer.addClass(this.el.nativeElement,this.classValue),this.routerLinkActivated.emit(new Event("routerLinkActivated"))):this.renderer.removeClass(this.el.nativeElement,this.classValue))},t}();q.decorators=[{type:o.Directive,args:[{selector:"[ecNavItemActive]"}]}],q.ctorParameters=function(){return[{type:r.Router},{type:o.ElementRef},{type:o.Renderer2},{type:r.ActivatedRoute}]},q.propDecorators={classValue:[{type:o.Input,args:["ecNavItemActive"]}],exact:[{type:o.Input,args:["ecNavItemActiveExactMatch"]}],queryParams:[{type:o.Input,args:["ecNavItemActiveQueryParams"]}],url:[{type:o.Input,args:["ecNavItemActiveUrl"]}],routerLinkActivated:[{type:o.Output}]};var W=function(){function t(t,e){this.items=[],this.selectedChanges=new l.Subject,t&&(this.items=t,this.items.length&&e&&(this._selected=e))}return Object.defineProperty(t.prototype,"selected",{get:function(){return this._selected},set:function(t){this._selected=t,t&&this.selectItem(t)},enumerable:!1,configurable:!0}),t.prototype.selectItem=function(t){t.url||(t.onClick&&t.onClick(t),this.selectedChanges.next(t))},t}(),G=function(){function t(){this.id="",this.tabindex=0,this.tabStyle="tabs",this.tabs=new W}return t.prototype.selectTab=function(t,e){e.disabled||"click"!==t.type&&("keypress"!==t.type||"Enter"!==t.key)||(this.tabs.selected=e)},t}();G.decorators=[{type:o.Component,args:[{selector:"ec-tabs",template:'<ul *ngIf="tabs?.items?.length" class="{{tabStyle}}">\r\n\r\n <li class="{{tab.classlist}}" [ngClass]="{\'icon-only\': tab.icon && !tab.label}" *ngFor="let tab of tabs?.items; index as i;">\r\n\r\n <a *ngIf="tab.url && !tab.disabled"\r\n tabindex="{{tabs?.selected === tab ? -1 : tabindex}}"\r\n class="tab"\r\n id="{{tab.id ? tab.id : id + \'_item\' + i}}"\r\n routerLinkActive="active"\r\n [routerLink]="tab.url"\r\n [queryParams]="tab.queryParams || null"\r\n [queryParamsHandling]="tab.queryParamsHandling || \'\'"\r\n (keypress)="selectTab($event, tab)"\r\n (click)="selectTab($event, tab)">\r\n <i class="ec-icon {{tab.icon}}" *ngIf="tab.icon" [class.mr-1]="tab.label"></i>\r\n <span class="text-truncate">{{tab.label | translate}}</span>\r\n <span *ngIf="tab?.indicator" class="indicator ml-1" [style.background-color]="tab?.indicator === true ? \'\' : tab?.indicator"></span>\r\n </a>\r\n\r\n <span *ngIf="!tab.url || tab.disabled"\r\n tabindex="{{tabs?.selected === tab || tab.disabled ? -1 : tabindex}}"\r\n id="{{tab.id ? tab.id : id + \'_item\' + i}}"\r\n class="tab"\r\n [ngClass]="{\'active\': tabs?.selected === tab, \'is-disabled\': tab.disabled}"\r\n (keypress)="selectTab($event, tab)"\r\n (click)="selectTab($event, tab)">\r\n <i class="ec-icon {{tab.icon}}" *ngIf="tab.icon" [class.mr-1]="tab.label"></i>\r\n <span class="text-truncate">{{tab.label | translate}}</span>\r\n <span *ngIf="tab?.indicator" class="indicator ml-1" [style.background-color]="tab?.indicator === true ? \'\' : tab?.indicator"></span>\r\n </span>\r\n </li>\r\n</ul> ',styles:["@-webkit-keyframes spin{0%{transform:rotate(0)}to{transform:rotate(1turn)}}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(1turn)}}:host{display:block}ul{list-style:none;margin:0;padding:0}a{text-decoration:none}.tabs{border-bottom:1px solid #d2d7d9;display:flex;padding-left:1rem;padding-right:1rem}.tabs li{display:block;min-width:0}.tabs li:not(:last-child){margin-right:.25rem}.tabs .tab{align-items:center;border:1px solid transparent;border-radius:0;color:rgba(26,26,35,.66);cursor:pointer;display:flex;font-size:.75rem;height:2rem;justify-content:center;margin-bottom:-1px;min-width:2rem;padding-left:.5rem;padding-right:.5rem}.tabs .tab:hover{color:#354751}.tabs .tab.active{background-color:#f1f3f4;border-left-color:#d2d7d9;border-right-color:#d2d7d9;border-top-color:#d2d7d9;color:#354751}.tabs .tab:focus{outline:none}.tabs .tab:focus:not(.active):not(.is-disabled){border-color:#0084a9;box-shadow:0 0 0 1px #0084a9;box-shadow:none}.tabs .tab.is-disabled{color:rgba(26,26,35,.38);cursor:default}.pills{display:flex}.pills li{display:block;min-width:0}.pills li:not(:last-child){margin-right:.25rem}.pills .tab{align-items:center;border:1px solid transparent;border-radius:0;color:rgba(26,26,35,.66);cursor:pointer;display:flex;font-size:.75rem;height:1.5rem;justify-content:center;min-width:1.5rem;padding-left:.5rem;padding-right:.5rem}.pills .tab:hover{color:#354751}.pills .tab.active{background-color:#d2d7d9;color:#354751}.pills .tab:focus{outline:none}.pills .tab:focus:not(.active):not(.is-disabled){border-color:#0084a9;box-shadow:0 0 0 1px #0084a9;box-shadow:none}.pills .tab.is-disabled{color:rgba(26,26,35,.38);cursor:default}.icon-only .tab{justify-content:center;padding:0}.indicator{background-color:rgba(111,28,138,.25);border:2px solid #6f1c8a;border-radius:50%;display:block;height:.625rem;width:.625rem}:host(.is-condensed) .pills li,:host(.is-condensed) .tabs li{margin-right:0}:host(.is-condensed) .tab{padding-left:.25rem;padding-right:.25rem}"]}]}],G.ctorParameters=function(){return[]},G.propDecorators={id:[{type:o.Input}],tabindex:[{type:o.Input}],tabStyle:[{type:o.Input}],tabs:[{type:o.Input,args:["tabGroup"]}]};var $="^\\s*(?:\\+?(\\d{1,3}))?[-. (]*(\\d{3})[-. )]*(\\d{3})[-. ]*(\\d{4})(?: *x(\\d+))?\\s*$",Y="([A-Za-z])+(://)+[^\\s]*",X=function(t){function e(e,o,n){var r=t.call(this,e,o)||this;return r.validationMessageService=e,r.formGroupHelper=o,r.translate=n,r.autocomplete="off",r.type="text",r.rows=3,r.selectOnAutofocus=!1,r.upperCase=!1,r.validationPattern="",r}return v(e,t),e.prototype.ngOnChanges=function(e){t.prototype.ngOnChanges.call(this,e)},e.prototype.ngOnInit=function(){var e=this;t.prototype.ngOnInit.call(this),this.validationPattern="","tel"===this.type?this.validationPattern=$:"url"===this.type&&(this.validationPattern=Y),this.placeholder&&this.translate.get(this.placeholder).subscribe((function(t){e.placeholder=t}))},e.prototype.ngAfterViewInit=function(){this.autofocus&&this.setFocus(this.selectOnAutofocus)},e.prototype.setFocus=function(t){this.inputElement.nativeElement.focus(),t&&this.inputElement.nativeElement.select()},e.prototype.focusOutEvent=function(){this.upperCase&&this.formModel.value&&this.formModel.setValue(this.formModel.value.toUpperCase().trim())},e}(L);X.decorators=[{type:o.Component,args:[{selector:"ec-textbox",template:'<div class="control control-label-{{labelPosition}}"\r\n [ngClass]="{\'is-readonly\': readonly}">\r\n <label *ngIf="label" ngPreserveWhitespaces>\r\n\r\n <span>{{label | translate}}</span>\r\n\r\n <span *ngIf="validationErrors.length > 0 && formModel.touched && formModel.invalid">{{validationErrors | translate}}</span>\r\n </label>\r\n <div class="input-wrapper control-input">\r\n <input *ngIf="type !== \'multi_line\'"\r\n #textboxInput\r\n email="{{type === \'email\' ? true : false}}"\r\n pattern="{{validationPattern}}"\r\n type="{{type}}"\r\n tabindex="{{tabindex}}"\r\n title="{{tooltip}}"\r\n [attr.id]="inputId"\r\n [attr.autocomplete]="autocomplete"\r\n [attr.placeholder]="placeholder"\r\n [attr.maxlength]="maxlength"\r\n [attr.minlength]="minlength"\r\n [attr.required]="required ? required : null"\r\n [formControl]="formModel"\r\n [ngClass]="{\'is-empty\': !formModel?.value, \'is-pending\': pending, \'is-uppercase\': upperCase}"\r\n (focusout)="focusOutEvent()"\r\n [attr.cdkFocusInitial]="autofocus || null">\r\n\r\n <textarea *ngIf="type === \'multi_line\'"\r\n [attr.rows]="rows"\r\n #textboxInput\r\n tabindex="{{tabindex}}"\r\n [attr.id]="inputId"\r\n [attr.placeholder]="placeholder"\r\n [attr.maxlength]="maxlength"\r\n [attr.minlength]="minlength"\r\n [attr.required]="required ? required : null"\r\n [formControl]="formModel"\r\n [ngClass]="{\'is-empty\': formModel?.value === \'\', \'is-pending\': pending}"\r\n [attr.cdkFocusInitial]="autofocus || null">\r\n </textarea>\r\n </div>\r\n</div>',styles:['@-webkit-keyframes spin{0%{transform:rotate(0)}to{transform:rotate(1turn)}}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(1turn)}}:host{color:#1a1a23;display:block;font-family:Roboto,-apple-system,BlinkMacSystemFont,Segoe UI,Oxygen,Ubuntu,Fira Sans,Droid Sans,Helvetica Neue,sans-serif;font-size:1rem;margin-bottom:1rem;width:100%}:host :host-context(.form-condensed){margin-bottom:.5rem}:host .control{display:flex;flex-direction:column;width:100%}:host .control.control-label-bottom{flex-direction:column-reverse}:host .control.control-label-left{flex-direction:row}:host .control.control-label-left label{margin-right:.25rem}:host .control.control-label-right{flex-direction:row-reverse}:host .control.control-label-right label{margin-left:.25rem}:host .control.control-label-left,:host .control.control-label-right{align-items:center}:host .control.control-label-left label,:host .control.control-label-right label{flex:1 1;margin-bottom:0;margin-top:0}:host .control.control-label-left .control-input,:host .control.control-label-right .control-input{flex:2 2}:host .control.is-readonly input,:host .control.is-readonly select{-moz-user-select:none;-ms-user-select:none;-webkit-user-select:none;background-clip:border-box;background-color:rgba(26,26,35,.12);background-image:none;border-color:transparent;color:#1a1a23;opacity:1;overflow:hidden;pointer-events:none;user-select:none;white-space:nowrap}:host .control.invalid .textbox-group-input ::ng-deep .control input.ng-invalid,:host .control.invalid .textbox-group-input ::ng-deep .control input.ng-valid{background-color:#fff8cc;background-image:url(\'data:image/svg+xml;charset=utf8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 32 32"><path fill="rgba(26, 26, 35, 0.66)" d="M20.21 20.21h-8.42L10.95 0h10.1l-.84 20.21zm-8.42 3.37h8.42V32h-8.42z"/></svg>\');background-position:.25em;background-repeat:no-repeat;background-size:1em 1em;padding-left:1.5em}:host .control.invalid .textbox-group-input ::ng-deep .control input.ng-invalid:not(:focus),:host .control.invalid .textbox-group-input ::ng-deep .control input.ng-valid:not(:focus){border-color:#ffe433}:host .control.invalid:not(.open) .textbox-group-btn-right ::ng-deep button{background-color:#fff8cc}:host .control.invalid:not(.open) .textbox-group-btn-right ::ng-deep button:not(:focus){border-color:#ffe433}:host .textbox-group{display:flex;position:relative}:host input:focus,:host select:focus,:host textarea:focus{outline:none}:host label{color:rgba(26,26,35,.66);display:block;font-size:.75rem;line-height:1;margin:.375rem 0}:host input{background-clip:padding-box;background-color:#fff;background-image:none;border:.0625rem solid #d2d7d9;border-radius:0;height:2rem;line-height:1.25;padding:.3125em .5em;width:100%}:host input::-moz-selection{background-color:#0084a9;color:#fff}:host input::selection{background-color:#0084a9;color:#fff}:host input::-webkit-input-placeholder{color:rgba(26,26,35,.38)}:host input::-moz-placeholder{color:rgba(26,26,35,.38);opacity:1}:host input:-ms-input-placeholder{color:rgba(26,26,35,.38)}:host input:-moz-placeholder{color:rgba(26,26,35,.38);opacity:1}:host input:required.is-empty{background-color:#fff;background-image:url(\'data:image/svg+xml;charset=utf8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 32 32"><path fill="%23ffe433" d="M31.32 21.69l-.09.18-2.48 4.35c-.36.54-.77.62-1.25.27-.12 0-.2 0-.2-.09L19.53 22v9.37a1.26 1.26 0 0 1-.72.67h-5.26c-.59 0-.83-.3-.83-.89 0-.12.15-.21.15-.27V22l-8 4.71h-.12c-.42.66-.8.21-1.16-.27L1 21.82a.82.82 0 0 1 .35-1.26l.18-.1L9 16 .87 11.47v-.09c0-.36-.39-.74-.09-1.16l2.75-4.35v-.09c0-.42.82-.54 1.29-.36l8 4.62V.89c0-.59.18-.89.77-.89h5c.65 0 .91.3.91.89V10l7.94-4.53c.48-.29.72-.21 1.08.27l2.32 4.35v.09c.66.48.45.89-.08 1.25L23 16l7.91 4.53v.09c-.04.18.53.54.41 1.07z"/></svg>\');border-color:#d2d7d9}:host input.ng-invalid.ng-touched,:host input:required.is-empty{background-position:.25em;background-repeat:no-repeat;background-size:1em 1em;padding-left:1.5em}:host input.ng-invalid.ng-touched{background-color:#fff8cc;background-image:url(\'data:image/svg+xml;charset=utf8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 32 32"><path fill="rgba(26, 26, 35, 0.66)" d="M20.21 20.21h-8.42L10.95 0h10.1l-.84 20.21zm-8.42 3.37h8.42V32h-8.42z"/></svg>\')}:host input.ng-invalid.ng-touched:not(:focus){border-color:#ffe433}:host input.is-pending.ng-invalid,:host input.is-pending.ng-pending,:host input.is-pending.ng-valid{background-image:url(\'data:image/svg+xml;charset=utf8,<svg xmlns="http://www.w3.org/2000/svg" width="40" height="40" viewBox="0 0 50 50"><path fill="%230084a9" d="M43.935 25.145c0-10.318-8.364-18.683-18.683-18.683-10.318 0-18.683 8.365-18.683 18.683h4.068c0-8.071 6.543-14.615 14.615-14.615s14.615 6.543 14.615 14.615h4.068z"><animateTransform attributeType="xml" attributeName="transform" type="rotate" from="0 25 25" to="360 25 25" dur="0.8s" repeatCount="indefinite"/></path></svg>\');background-position:.25em;background-repeat:no-repeat;background-size:1em 1em;padding-left:1.5em}:host input:focus,:host input:focus.is-empty{border-color:#0084a9;box-shadow:0 0 0 1px #0084a9;position:relative;z-index:1}:host input:disabled{background-color:rgba(26,26,35,.1);border-color:#d2d7d9;color:rgba(26,26,35,.66);opacity:.65}:host input:disabled:required,:host input:disabled:required.is-empty{background-color:rgba(26,26,35,.1);background-image:none;border-color:#d2d7d9;padding-left:.5em}:host input.is-uppercase:not(.is-empty){text-transform:uppercase}:host textarea{background-clip:padding-box;background-color:#fff;background-image:none;border:.0625rem solid #d2d7d9;border-radius:0;display:block;height:auto;line-height:1.25;padding:.3125em .5em;resize:none;width:100%}:host textarea::-moz-selection{background-color:#0084a9;color:#fff}:host textarea::selection{background-color:#0084a9;color:#fff}:host textarea::-webkit-input-placeholder{color:rgba(26,26,35,.38)}:host textarea::-moz-placeholder{color:rgba(26,26,35,.38);opacity:1}:host textarea:-ms-input-placeholder{color:rgba(26,26,35,.38)}:host textarea:-moz-placeholder{color:rgba(26,26,35,.38);opacity:1}:host textarea:required.is-empty{background-color:#fff;background-image:url(\'data:image/svg+xml;charset=utf8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 32 32"><path fill="%23ffe433" d="M31.32 21.69l-.09.18-2.48 4.35c-.36.54-.77.62-1.25.27-.12 0-.2 0-.2-.09L19.53 22v9.37a1.26 1.26 0 0 1-.72.67h-5.26c-.59 0-.83-.3-.83-.89 0-.12.15-.21.15-.27V22l-8 4.71h-.12c-.42.66-.8.21-1.16-.27L1 21.82a.82.82 0 0 1 .35-1.26l.18-.1L9 16 .87 11.47v-.09c0-.36-.39-.74-.09-1.16l2.75-4.35v-.09c0-.42.82-.54 1.29-.36l8 4.62V.89c0-.59.18-.89.77-.89h5c.65 0 .91.3.91.89V10l7.94-4.53c.48-.29.72-.21 1.08.27l2.32 4.35v.09c.66.48.45.89-.08 1.25L23 16l7.91 4.53v.09c-.04.18.53.54.41 1.07z"/></svg>\');border-color:#d2d7d9}:host textarea.ng-invalid.ng-touched,:host textarea:required.is-empty{background-position:.25em .5rem;background-repeat:no-repeat;background-size:1em 1em;padding-left:1.5em}:host textarea.ng-invalid.ng-touched{background-color:#fff8cc;background-image:url(\'data:image/svg+xml;charset=utf8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 32 32"><path fill="rgba(26, 26, 35, 0.66)" d="M20.21 20.21h-8.42L10.95 0h10.1l-.84 20.21zm-8.42 3.37h8.42V32h-8.42z"/></svg>\')}:host textarea.ng-invalid.ng-touched:not(:focus){border-color:#ffe433}:host textarea.is-pending.ng-invalid,:host textarea.is-pending.ng-pending,:host textarea.is-pending.ng-valid{background-image:url(\'data:image/svg+xml;charset=utf8,<svg xmlns="http://www.w3.org/2000/svg" width="40" height="40" viewBox="0 0 50 50"><path fill="%230084a9" d="M43.935 25.145c0-10.318-8.364-18.683-18.683-18.683-10.318 0-18.683 8.365-18.683 18.683h4.068c0-8.071 6.543-14.615 14.615-14.615s14.615 6.543 14.615 14.615h4.068z"><animateTransform attributeType="xml" attributeName="transform" type="rotate" from="0 25 25" to="360 25 25" dur="0.8s" repeatCount="indefinite"/></path></svg>\');background-position:.25em .5rem;background-repeat:no-repeat;background-size:1em 1em;padding-left:1.5em}:host textarea:focus,:host textarea:focus.is-empty{border-color:#0084a9;box-shadow:0 0 0 1px #0084a9;position:relative;z-index:1}:host textarea:disabled{background-color:rgba(26,26,35,.1);border-color:#d2d7d9;color:rgba(26,26,35,.66);opacity:.65}:host textarea:disabled:required,:host textarea:disabled:required.is-empty{background-color:rgba(26,26,35,.1);background-image:none;border-color:#d2d7d9;padding-left:.5em}:host textarea.is-uppercase:not(.is-empty){text-transform:uppercase}:host(.textbox-group-input:not(:last-child)){flex:1 1 0%;width:1px}:host(.textbox-group-input:not(:last-child)) .control{margin-bottom:0}:host(.textbox-group-input:not(:last-child)) .control.is-readonly input{border-right-width:.0625rem}:host(.textbox-group-input:not(:last-child)) input{border-bottom-right-radius:0;border-right-width:0;border-top-right-radius:0}:host(.textbox-group-input:not(:last-child)) input:focus{border-right-width:.0625rem;position:relative;z-index:1}:host(.text-truncate) input{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}:host(.is-monospace) input,:host(.is-monospace) textarea,:host-context(.is-monospace) input,:host-context(.is-monospace) textarea{font-family:Consolas,Andale Mono WT,Andale Mono,Lucida Console,Lucida Sans Typewriter,DejaVu Sans Mono,Bitstream Vera Sans Mono,Liberation Mono,Nimbus Mono L,Monaco,Courier New,Courier,monospace}']}]}],X.ctorParameters=function(){return[{type:F},{type:R},{type:i.TranslateService}]},X.propDecorators={autocomplete:[{type:o.Input}],type:[{type:o.Input}],placeholder:[{type:o.Input}],maxlength:[{type:o.Input}],minlength:[{type:o.Input}],rows:[{type:o.Input}],selectOnAutofocus:[{type:o.Input}],upperCase:[{type:o.Input}],inputElement:[{type:o.ViewChild,args:["textboxInput"]}]};var K=function(){function t(t,e){this.status="hasData",this.message="",this.setStatus(t,e)}return t.prototype.setStatus=function(t,e,o,n,r){this.status=t,this.message=e||"",this.action=o||void 0,this.noDataTemplate=n||void 0,this.overlayClassList=r||""},t}(),Z=function(){function t(){this.status="hasData"}return t.prototype.setStatus=function(t,e,o,n){this.status=t,this.message=e||"",this.action=o||void 0,this.noDataTemplate=n||void 0},t.prototype.actionClicked=function(t){this.action&&this.action.onClick&&this.action.onClick(t)},t}();Z.decorators=[{type:o.Component,args:[{selector:"[ecOverlay]",template:'\x3c!-- Transcluded Content --\x3e\r\n<ng-content *ngIf="displayAsMask || (!displayAsMask && status === \'hasData\')"></ng-content>\r\n\x3c!--Used by GI tests to know the overlay status whether we use ngIf or mask version. No visual impact--\x3e\r\n<span [hidden]="true"\r\n\t class="overlay-status-{{status}}"></span>\r\n\x3c!-- Overlay goes last so it is rendered on top of preceding content due to source order --\x3e\r\n<div *ngIf="status !== \'hasData\'"\r\n\t class="overlay flex-grow {{overlayClassList}}"\r\n\t [ngClass]="{\'not-mask\': !displayAsMask,\r\n\t\t\t\t\'overlay-error\': status === \'error\',\r\n\t\t\t\t\'overlay-nodata\': status === \'noData\',\r\n\t\t\t\t\'overlay-pending\': status === \'pending\'}">\r\n\r\n\t\x3c!--Pending Spinner--\x3e\r\n\t<ec-spinner [hidden]="status !== \'pending\'"></ec-spinner>\r\n\r\n\t<ng-template [ngIf]="status === \'noData\' && noDataTemplate">\r\n\t\t<ng-container *ngTemplateOutlet="noDataTemplate"></ng-container>\r\n\t</ng-template>\r\n\r\n\t<ng-container *ngIf="(status === \'noData\' && !noDataTemplate) || status !== \'noData\'">\r\n\t\t\x3c!--Status Message--\x3e\r\n\t\t<div id="statusMessage"\r\n\t\t\t class="message"\r\n\t\t\t *ngIf="message"\r\n\t\t\t [ngClass]="{\'error\': status === \'error\', \'mt-1\': status === \'pending\'}"\r\n\t\t\t [innerHtml]="message | translate">\r\n\t\t</div>\r\n\r\n\t\t\x3c!-- Action --\x3e\r\n\t\t<ec-button type="common"\r\n\t\t\t\t class="mt-3"\r\n\t\t\t\t *ngIf="action?.onClick"\r\n\t\t\t\t [icon]="action?.icon"\r\n\t\t\t\t (clicked)="actionClicked($event)"\r\n\t\t\t\t [label]="action?.label"\r\n\t\t\t\t [hidden]="status === \'pending\'">\r\n\t\t</ec-button>\r\n\t</ng-container>\r\n\r\n</div>',styles:[":host{position:relative}:host(.bg-body)>.overlay{background-color:#f1f3f4}:host(.bg-body).is-translucent>.overlay{background-color:rgba(241,243,244,.7)}:host(.bg-content)>.overlay{background-color:#fff}:host(.bg-content).is-translucent>.overlay{background-color:hsla(0,0%,100%,.7)}.overlay{align-items:center;background-color:#fff;bottom:0;display:flex;flex-direction:column;justify-content:center;left:0;padding:3rem 4rem;position:absolute;right:0;top:0;z-index:20}.overlay.not-mask{min-height:100%;position:relative}.message{color:rgba(26,26,35,.66);font-size:1.25rem}.message.error{color:#cd1d20;font-size:1.25rem}"]}]}],Z.propDecorators={status:[{type:o.Input}],message:[{type:o.Input}],action:[{type:o.Input}],noDataTemplate:[{type:o.Input}],displayAsMask:[{type:o.Input}],overlayClassList:[{type:o.Input}]};var J=function(){this.id="",this.textboxRequired=!1,this.textboxUppercase=!1,this.saveLabel="Save",this.saveButtonType="primary",this.cancelLabel="Cancel",this.saveOnEnter=!1,this.alternateSaveLabel=void 0,this.alternateSaveButtonType=void 0,this.saveSource="primary",this.inlineConfirmPendingMessage=""},Q=function(){function t(){this.dialogId="Confirm",this.formGroup=new n.FormGroup({}),this.status=new K("hasData"),this.onDialogSave=new o.EventEmitter,this.onDialogCancel=new o.EventEmitter}return t.prototype.onOpen=function(t){this.context=t,this.dialogId=t.id,this.context.alternateSaveLabel&&(this.context.saveOnEnter=!1)},t.prototype.ngOnInit=function(){this.addFormControls()},t.prototype.onSave=function(t){if(this.formGroup.markAllAsTouched(),this.formGroup.valid){var e=this.formGroup.getRawValue();e.textbox&&(this.context.textboxValue=e.textbox),this.context.saveSource=t,this.context.inlineConfirmAction?this.doInlineConfirmAction():this.onDialogSave.emit(this.context)}else this.context.validationErrorMessage&&(this.error=this.context.validationErrorMessage)},t.prototype.onCancel=function(){this.onDialogCancel.emit()},t.prototype.addFormControls=function(){if(this.context.textboxType){var t=[];this.context.textboxRequired&&t.push(n.Validators.required),this.context.textboxValidators&&t.push.apply(t,k(this.context.textboxValidators)),this.formGroup.addControl("textbox",new n.FormControl("",t))}},t.prototype.doInlineConfirmAction=function(){return x(this,void 0,void 0,(function(){var t,e=this;return w(this,(function(o){switch(o.label){case 0:return this.status.setStatus("pending",this.context.inlineConfirmPendingMessage),[4,this.context.inlineConfirmAction()];case 1:return t=o.sent(),this.status.setStatus("noData",t.message,{id:"inlineConfirmClose",label:"Close",icon:t.isSuccess?"icon-check-circle":"icon-error",classlist:t.isSuccess?"font-color-success":"font-color-error",onClick:function(){t.isSuccess?e.onDialogSave.emit(e.context):e.onDialogCancel.emit()}}),[2]}}))}))},t}();Q.decorators=[{type:o.Component,args:[{selector:"ec-confirm",template:'<section ecOverlay\r\n [status]="status?.status"\r\n [message]="status?.message"\r\n [action]="status?.action"\r\n [noDataTemplate]="inlineConfirmResult"\r\n overlayClassList="p-0"\r\n class="bg-body flex-grow d-flex flex-column">\r\n <ec-banner *ngIf="error" [text]="error | translate"></ec-banner>\r\n <div class="flex-grow confirm-content text-body-1">\r\n <h2 class="font-weight-bold mb-3" *ngIf="context?.title">{{context?.title}}</h2>\r\n <div *ngIf="context?.message" [innerHtml]="context?.message | translate"></div>\r\n <form [formGroup]="formGroup"\r\n class="mt-auto">\r\n <ec-textbox id="confirmTextbox"\r\n *ngIf="context?.textboxType"\r\n [autofocus]="true"\r\n [formModel]="formGroup.get(\'textbox\')"\r\n [label]="context?.textboxLabel"\r\n [type]="context?.textboxType"\r\n [upperCase]="context?.textboxUppercase">\r\n </ec-textbox>\r\n\r\n <div class="d-flex pt-2 flex-row-reverse">\r\n <ec-button id="saveConfirmButton"\r\n class="ml-2"\r\n [type]="context?.saveButtonType ? context?.saveButtonType : \'primary\'"\r\n [label]="context?.saveLabel ? context?.saveLabel : \'Save\'"\r\n [autofocus]="!context?.textboxType"\r\n [isSubmit]="context?.saveOnEnter"\r\n (clicked)="onSave(\'primary\')">\r\n </ec-button>\r\n <ec-button id="alternateSaveConfirmButton"\r\n *ngIf="context?.alternateSaveLabel"\r\n class="ml-2"\r\n [type]="context?.alternateSaveButtonType ? context?.alternateSaveButtonType : \'primary\'"\r\n [label]="context?.alternateSaveLabel"\r\n (clicked)="onSave(\'alternate\')">\r\n </ec-button>\r\n <ec-button id="cancelConfirmButton"\r\n class="ml-auto"\r\n type="secondary"\r\n [label]="context?.cancelLabel ? context?.cancelLabel : \'Cancel\'"\r\n (clicked)="onCancel()">\r\n </ec-button>\r\n </div>\r\n </form>\r\n </div>\r\n</section>\r\n\r\n<ng-template #inlineConfirmResult>\r\n <section class="flex-grow align-self-stretch confirm-content text-body-1">\r\n <div class="d-flex">\r\n <i class="ec-icon {{status?.action?.icon}} {{status?.action?.classlist}} inline-confirm-result-icon"></i>\r\n <div [innerHTML]="status?.message | translate"></div>\r\n </div>\r\n <div class="d-flex pt-2 mt-auto">\r\n <ec-button id="inlineConfirmClose"\r\n label="Close"\r\n type="secondary"\r\n class="ml-auto"\r\n (clicked)="status?.action?.onClick!()"\r\n [autofocus]="true">\r\n </ec-button>\r\n </div>\r\n </section>\r\n</ng-template>',styles:[":host{display:flex;width:100%}.confirm-content{display:flex;flex-direction:column;padding:1.5rem}.inline-confirm-result-icon{margin:.0625rem .25rem .0625rem 0}"]}]}],Q.ctorParameters=function(){return[]},Q.propDecorators={context:[{type:o.Input}],onDialogSave:[{type:o.Output}],onDialogCancel:[{type:o.Output}]};var tt=function(t,e,o){void 0===e&&(e=""),void 0===o&&(o="openStart"),this.eventId=t,this.dialogId=e,this.dialogAction=o},et=function(t){function e(e,o,n){var r=t.call(this,d.uniqueId())||this;return r.content=e,r.context=o,r.options=n,r}return v(e,t),e}(tt),ot=function(t){function e(e,o){return t.call(this,e,o,"open")||this}return v(e,t),e}(tt),nt=function(t){function e(e,o,n,r){void 0===n&&(n=!1);var i=t.call(this,e,o,"close")||this;return i.dialogResult=new it(n,r),i}return v(e,t),e}(tt),rt=function(t){function e(e){var o=t.call(this,"latest","latest","closeLatest")||this;return o.dialogResult=e,o}return v(e,t),e}(tt),it=function(t,e){this.save=t,this.context=e},at=function(){function t(){this.events=new l.Subject}return t.prototype.openDialog=function(t,e,o,n){(n=n||{}).size=e;var r=new et(t,o,n),i=this.events.pipe(c.skipWhile((function(t){return!(t instanceof nt)||t.eventId!==r.eventId})),c.map((function(t){return t.dialogResult})),c.take(1));return this.triggerEvent(r),i},t.prototype.closeLatestDialog=function(t){this.triggerEvent(new rt(t))},t.prototype.confirm=function(t){return this.openDialog(Q,"small",t)},t.prototype.triggerEvent=function(t){this.events.next(t)},t}();at.ɵprov=o.ɵɵdefineInjectable({factory:function(){return new at},token:at,providedIn:"root"}),at.decorators=[{type:o.Injectable,args:[{providedIn:"root"}]}];var st=function(){function t(t,e,n,r){this.componentFactoryResolver=t,this.windowService=e,this.dialogService=n,this.documentRef=r,this.isOpen=!1,this.fadeIn=!1,this.fadeOut=!1,this.displayAsPanel=!1,this.alignToTop=!1,this.size="small",this.opened=new o.EventEmitter,this.closed=new o.EventEmitter,this.previouslyFocusedElement=null}return t.prototype.onOverlayClick=function(t){"EC-DIALOG"===t.target.tagName&&this.displayAsPanel&&this.close(new it(!1))},t.prototype.ngOnInit=function(){this.content&&this.open(this.content,this.context,this.options)},t.prototype.ngOnDestroy=function(){this.previouslyFocusedElement&&this.previouslyFocusedElement.focus()},t.prototype.open=function(t,e,n){var r,i;return x(this,void 0,void 0,(function(){var a,s,d=this;return w(this,(function(p){switch(p.label){case 0:return this.isOpen?[3,4]:(a=null===(r=this.documentRef)||void 0===r?void 0:r.activeElement,this.previouslyFocusedElement=(null===(i=null==a?void 0:a.shadowRoot)||void 0===i?void 0:i.activeElement)||a,n?(n.alignToTop&&(this.alignToTop=!0),n.displayAsPanel&&(this.displayAsPanel=!0),void 0===n.canOpenDialog?[3,2]:[4,n.canOpenDialog()]):[3,2]);case 1:if(!p.sent())return this.close(new it(!1)),[2];p.label=2;case 2:return"number"==typeof this.size?this.width=this.size:this.width=void 0,this.minWidth=null==n?void 0:n.minWidth,this.fadeIn=!0,t instanceof o.TemplateRef?this.contentContainer.createEmbeddedView(t):(s=this.componentFactoryResolver.resolveComponentFactory(t),this.componentRef=this.contentContainer.createComponent(s)),this.isOpen=!0,this.openDialogComponent(e),[4,l.timer(this.displayAsPanel?250:125).pipe(c.take(1),c.tap((function(){var t=d.getDialogId();d.fadeIn=!1,d.opened.emit(t),d.dialogService.triggerEvent(new ot(d.dialogOpenStartEventId,t))}))).toPromise()];case 3:p.sent(),this.handleCloseOnResize(),p.label=4;case 4:return[2]}}))}))},t.prototype.close=function(t){var e=this;this.fadeOut=!0;var o=this.getDialogId();setTimeout((function(){var n;e.isOpen=!1,e.fadeOut=!1,null===(n=e.contentContainer)||void 0===n||n.clear(),e.componentRef=void 0,e.closed.emit(t),e.dialogService.triggerEvent(new nt(e.dialogOpenStartEventId,o,null==t?void 0:t.save,null==t?void 0:t.context)),e.resetOptions()}),this.displayAsPanel?225:100)},t.prototype.openDialogComponent=function(t){var e=this;if(this.componentRef&&this.componentRef.instance){var o=this.componentRef.instance;o.onOpen&&o.onOpen(t),o.onDialogCancel.pipe(c.takeUntil(this.closed)).subscribe((function(){e.close(new it(!1))})),o.onDialogSave.pipe(c.takeUntil(this.closed)).subscribe((function(t){e.close(new it(!0,t))}))}},t.prototype.resetOptions=function(){this.alignToTop=!1,this.displayAsPanel=!1},t.prototype.handleCloseOnResize=function(){var t=this;this.options&&this.options.closeOnResize&&this.windowService.resized.pipe(c.takeUntil(this.closed),c.take(1)).subscribe((function(){t.close(new it(!1))}))},t.prototype.getDialogId=function(){var t;return(null===(t=this.componentRef)||void 0===t?void 0:t.instance.dialogId)||""},t}();st.decorators=[{type:o.Component,args:[{selector:"ec-dialog",template:'<article [style.width.px]="width" [style.min-width]="minWidth" class="dialog-{{size}}" cdkTrapFocus cdkTrapFocusAutoCapture><ng-template #content></ng-template></article>',styles:["@-webkit-keyframes spin{0%{transform:rotate(0)}to{transform:rotate(1turn)}}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(1turn)}}@-webkit-keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@-webkit-keyframes slideIn{0%{transform:translateX(100%)}to{transform:translateX(0)}}@keyframes slideIn{0%{transform:translateX(100%)}to{transform:translateX(0)}}:host{align-items:center;background-color:rgba(26,26,35,.5);bottom:0;display:none;justify-content:center;left:0;position:fixed;right:0;top:0;z-index:60}:host.is-open{display:flex}:host.fade-in{-webkit-animation-duration:125ms;-webkit-animation-fill-mode:forwards;-webkit-animation-timing-function:ease-in-out;animation-duration:125ms;animation-fill-mode:forwards;animation-timing-function:ease-in-out}:host.fade-in,:host.fade-out{-webkit-animation-name:fadeIn;animation-name:fadeIn}:host.fade-out{-webkit-animation-duration:.1s;-webkit-animation-fill-mode:forwards;-webkit-animation-timing-function:ease-in-out;animation-direction:reverse;animation-duration:.1s;animation-fill-mode:forwards;animation-timing-function:ease-in-out}:host.is-panel{background-color:transparent}:host.is-panel article{border-bottom:0;border-right:0;border-top:0;bottom:0;box-shadow:0 0 8px rgba(26,26,35,.12);max-height:none;position:absolute;right:0;top:0}:host.is-panel.fade-in{-webkit-animation:none;animation:none}:host.is-panel.fade-in article{-webkit-animation-duration:.25s;-webkit-animation-fill-mode:forwards;-webkit-animation-name:slideIn;-webkit-animation-timing-function:ease-out;animation-duration:.25s;animation-fill-mode:forwards;animation-name:slideIn;animation-timing-function:ease-out}:host.is-panel.fade-out{-webkit-animation:none;animation:none}:host.is-panel.fade-out article{-webkit-animation-duration:225ms;-webkit-animation-fill-mode:forwards;-webkit-animation-name:slideIn;-webkit-animation-timing-function:ease-in;animation-direction:reverse;animation-duration:225ms;animation-fill-mode:forwards;animation-name:slideIn;animation-timing-function:ease-in}:host.is-top-aligned{align-items:flex-start}:host.is-top-aligned article{margin-top:20vh;min-height:auto}article{background-clip:padding-box;background-color:#f1f3f4;border-radius:0;box-shadow:0 0 .625rem rgba(26,26,35,.2);display:flex;flex:none;max-height:90vh;max-width:90vw;min-height:9rem}.dialog-xsmall{width:20rem}.dialog-small{width:30rem}.dialog-medium{width:40rem}.dialog-large{width:50rem}.dialog-xlarge{width:60rem}.dialog-full{width:90vw}"]}]}],st.ctorParameters=function(){return[{type:o.ComponentFactoryResolver},{type:j},{type:at},{type:Document,decorators:[{type:o.Inject,args:[e.DOCUMENT]}]}]},st.propDecorators={isOpen:[{type:o.HostBinding,args:["class.is-open"]}],fadeIn:[{type:o.HostBinding,args:["class.fade-in"]}],fadeOut:[{type:o.HostBinding,args:["class.fade-out"]}],displayAsPanel:[{type:o.HostBinding,args:["class.is-panel"]}],alignToTop:[{type:o.HostBinding,args:["class.is-top-aligned"]}],onOverlayClick:[{type:o.HostListener,args:["click",["$event"]]}],size:[{type:o.Input}],content:[{type:o.Input}],context:[{type:o.Input}],options:[{type:o.Input}],dialogOpenStartEventId:[{type:o.Input}],opened:[{type:o.Output}],closed:[{type:o.Output}],contentContainer:[{type:o.ViewChild,args:["content",{read:o.ViewContainerRef,static:!0}]}]};var lt=function(){};lt.decorators=[{type:o.Component,args:[{selector:"ec-spinner",template:'<div class="spinner">\r\n <span class="spinner-dot"></span>\r\n <span class="spinner-dot"></span>\r\n <span class="spinner-dot"></span>\r\n <span class="spinner-dot"></span>\r\n</div>',styles:["@-webkit-keyframes sk-bouncedelay{0%,80%,to{opacity:0}40%{opacity:1}}@keyframes sk-bouncedelay{0%,80%,to{opacity:0}40%{opacity:1}}.spinner{display:flex}.spinner-dot{-webkit-animation:sk-bouncedelay 1.7s ease-in-out infinite both;animation:sk-bouncedelay 1.7s ease-in-out infinite both;background-color:#0084a9;height:.75rem;margin-right:.25rem;width:.75rem}.spinner-dot:first-child{-webkit-animation-delay:-.6s;animation-delay:-.6s}.spinner-dot:nth-child(2){-webkit-animation-delay:-.4s;animation-delay:-.4s}.spinner-dot:nth-child(3){-webkit-animation-delay:-.2s;animation-delay:-.2s}:host(.spinner-small) .spinner-dot{-webkit-animation:sk-bouncedelay 1.7s ease-in-out infinite both;animation:sk-bouncedelay 1.7s ease-in-out infinite both;background-color:#0084a9;height:.5rem;margin-right:.1666666667rem;width:.5rem}:host(.spinner-small) .spinner-dot:first-child{-webkit-animation-delay:-.6s;animation-delay:-.6s}:host(.spinner-small) .spinner-dot:nth-child(2){-webkit-animation-delay:-.4s;animation-delay:-.4s}:host(.spinner-small) .spinner-dot:nth-child(3){-webkit-animation-delay:-.2s;animation-delay:-.2s}"]}]}];var ct=function(){function t(){}return t.createSpy=function(t){var e=Object.getOwnPropertyNames(t.prototype);return jasmine.createSpyObj(e)},t}(),dt=function(){function t(){this.opened=new o.EventEmitter,this.closed=new o.EventEmitter,this.displayAsPanel=!1}return t.prototype.open=function(t,e,o){return x(this,void 0,void 0,(function(){return w(this,(function(t){return this.lastContext=e,this.componentRef={instance:new pt},this.opened.emit(),[2]}))}))},t.prototype.close=function(t){this.closed.emit(t)},t}();dt.decorators=[{type:o.Directive}],dt.propDecorators={size:[{type:o.Input}],opened:[{type:o.Output}],closed:[{type:o.Output}]};var pt=function(){var t=this;this.dialogId="MockID",this.onOpen=function(e){t.openArg=e},this.onDialogSave=new o.EventEmitter,this.onDialogCancel=new o.EventEmitter,this.destroyed=new l.Subject},ut=function(){function t(){}return t.prototype.transform=function(t){return"01/01/2017"},t}();function ht(){var t=ct.createSpy(r.Router);return t.isActive.and.returnValue(!1),t.navigate.and.returnValue(Promise.resolve(!0)),Object.defineProperty(t,"events",{value:new l.Subject,configurable:!0}),Object.defineProperty(t,"url",{value:"/current/route/url",writable:!0}),t}ut.decorators=[{type:o.Pipe,args:[{name:"dateDisplay"}]}];var mt=function(){this.snapshot={paramMap:{get:function(t){return null}},queryParamMap:{get:function(t){return null},getAll:function(t){return[]},has:function(t){return!1}},routeConfig:{}},this.paramMap=new l.Subject,this.queryParamMap=new l.Subject,this.routeConfig={}};mt.decorators=[{type:o.Injectable}];var gt=function(t){function e(e,o){var n=t.call(this,e,o)||this;return n.validationMessageService=e,n.formGroupHelper=o,n.type="radio",n.options=[],n.direction="row",n.name="",n}return v(e,t),e.prototype.ngOnInit=function(){var e=this;t.prototype.ngOnInit.call(this),this.currentClasses=[],"toggle"===this.type?this.currentClasses.push("radio-group-toggle"):"column"===this.direction&&this.currentClasses.push("radio-group-column"),this.formModel.valueChanges.subscribe((function(){void 0!==e.formModel.value&&null!==e.formModel.value||e.formModel.setValue(e.options[0].value)}))},e.prototype.ngAfterViewInit=function(){this.autofocus&&this.inputElement.nativeElement.focus(),this.options.length>5&&"toggle"===this.type&&console.warn("Radio button components with a type of toggle cannot have more than 5 options")},e}(L);gt.decorators=[{type:o.Component,args:[{selector:"ec-radiobutton",template:'<div class="control"\r\n [class.control-label-bottom]="labelPosition === \'bottom\'">\r\n <label *ngIf="label"\r\n ngPreserveWhitespaces>\r\n <span>{{label | translate}}</span>\r\n\r\n <span *ngIf="validationErrors.length > 0 && formModel.touched && formModel.invalid">{{validationErrors | translate}}</span>\r\n </label>\r\n\r\n\r\n <div class="radio-group {{\'toggle-options-\' + options.length}}"\r\n [ngClass]="currentClasses"\r\n [class.is-disabled]="formModel.disabled"\r\n [class.is-readonly]="readonly">\r\n\r\n \x3c!-- RadioButton type="toggle"--\x3e\r\n \x3c!-- There are two ng-templates here due to the fact you can\'t have ngIf and ngFor on the same element --\x3e\r\n <ng-container *ngIf="type === \'toggle\'">\r\n <ng-container *ngFor="let option of options; index as i; first as isFirst">\r\n \x3c!-- The input has two name attributes set, one is for the form model and one is for the broswer. With one set\r\n the tabbing did not work, and with the other the controls were all linked together. They both need set\r\n for the best of both worlds --\x3e\r\n <input [attr.id]="inputId + i.toString()"\r\n [formControl]="formModel"\r\n type="radio"\r\n tabindex="{{tabindex}}"\r\n [value]="option.value"\r\n #radioInput\r\n name="{{name}}"\r\n attr.name="{{name}}"\r\n [attr.cdkFocusInitial]="(autofocus && isFirst) || null">\r\n <label [attr.for]="inputId + i.toString()"\r\n title="{{ option.tooltip | translate}}">\r\n <i class="ec-icon {{option.icon}}" *ngIf="option.icon"></i>\r\n <span id="{{inputId}}_label{{i.toString()}}" *ngIf="option.label">{{option.label | translate}}</span>\r\n </label>\r\n </ng-container>\r\n <a>\r\n <div class="toggle-handle"></div>\r\n </a>\r\n <div class="toggle-focused"></div>\r\n </ng-container>\r\n\r\n \x3c!-- RadioButton type="radio"--\x3e\r\n \x3c!-- There are two ng-templates here due to the fact you can\'t have ngIf and ngFor on the same element --\x3e\r\n <ng-container *ngIf="type === \'radio\'">\r\n <ng-container *ngFor="let option of options; index as i; first as isFirst">\r\n <label class=\'radio-button\'\r\n title="{{ option.tooltip | translate}}">\r\n \x3c!-- The input has two name attributes set, one is for the form model and one is for the broswer. With one set\r\n the tabbing did not work, and with the other the controls were all linked together. They both need set\r\n for the best of both worlds --\x3e\r\n <input [attr.id]="inputId + i.toString()"\r\n class="input"\r\n [formControl]="formModel"\r\n type="radio"\r\n value="{{option.value}}"\r\n #radioInput\r\n tabindex="{{tabindex}}"\r\n name="{{name}}"\r\n attr.name="{{name}}"\r\n [attr.cdkFocusInitial]="(autofocus && isFirst) || null">\r\n <span class="indicator"></span>\r\n <span id="{{inputId}}_label{{i.toString()}}"\r\n class="label"\r\n *ngIf="option.label"\r\n [innerHtml]="option.label | translate"></span>\r\n </label>\r\n </ng-container>\r\n </ng-container>\r\n\r\n </div>\r\n\r\n</div>\r\n',styles:['@-webkit-keyframes spin{0%{transform:rotate(0)}to{transform:rotate(1turn)}}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(1turn)}}:host{color:#1a1a23;display:block;font-family:Roboto,-apple-system,BlinkMacSystemFont,Segoe UI,Oxygen,Ubuntu,Fira Sans,Droid Sans,Helvetica Neue,sans-serif;font-size:1rem;margin-bottom:1rem;width:100%}:host :host-context(.form-condensed){margin-bottom:.5rem}:host .control{display:flex;flex-direction:column;width:100%}:host .control.control-label-bottom{flex-direction:column-reverse}:host .control.control-label-left{flex-direction:row}:host .control.control-label-left label{margin-right:.25rem}:host .control.control-label-right{flex-direction:row-reverse}:host .control.control-label-right label{margin-left:.25rem}:host .control.control-label-left,:host .control.control-label-right{align-items:center}:host .control.control-label-left label,:host .control.control-label-right label{flex:1 1;margin-bottom:0;margin-top:0}:host .control.control-label-left .control-input,:host .control.control-label-right .control-input{flex:2 2}:host .control.is-readonly input,:host .control.is-readonly select{-moz-user-select:none;-ms-user-select:none;-webkit-user-select:none;background-clip:border-box;background-color:rgba(26,26,35,.12);background-image:none;border-color:transparent;color:#1a1a23;opacity:1;overflow:hidden;pointer-events:none;user-select:none;white-space:nowrap}:host .control.invalid .textbox-group-input ::ng-deep .control input.ng-invalid,:host .control.invalid .textbox-group-input ::ng-deep .control input.ng-valid{background-color:#fff8cc;background-image:url(\'data:image/svg+xml;charset=utf8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 32 32"><path fill="rgba(26, 26, 35, 0.66)" d="M20.21 20.21h-8.42L10.95 0h10.1l-.84 20.21zm-8.42 3.37h8.42V32h-8.42z"/></svg>\');background-position:.25em;background-repeat:no-repeat;background-size:1em 1em;padding-left:1.5em}:host .control.invalid .textbox-group-input ::ng-deep .control input.ng-invalid:not(:focus),:host .control.invalid .textbox-group-input ::ng-deep .control input.ng-valid:not(:focus){border-color:#ffe433}:host .control.invalid:not(.open) .textbox-group-btn-right ::ng-deep button{background-color:#fff8cc}:host .control.invalid:not(.open) .textbox-group-btn-right ::ng-deep button:not(:focus){border-color:#ffe433}:host .textbox-group{display:flex;position:relative}:host input:focus,:host select:focus,:host textarea:focus{outline:none}:host(.w-auto){width:auto}.control>label{color:rgba(26,26,35,.66);display:block;font-size:.75rem;line-height:1;margin:.375rem 0}.radio-group{display:flex;flex-wrap:wrap}.radio-group-column{flex-direction:column}.radio-group-column .radio-button{margin-right:auto}.radio-group.is-disabled .radio-button{cursor:default}.radio-group.is-readonly .radio-button{pointer-events:none}.radio-group.is-readonly .radio-button .input{opacity:0}.radio-group.is-readonly .radio-button .indicator{background-color:rgba(26,26,35,.12);border:0}.radio-group.is-readonly .radio-button .indicator,.radio-group.is-readonly .radio-button .label{color:#1a1a23;opacity:1}.radio-group.is-readonly.radio-group-toggle{-moz-user-select:none;-ms-user-select:none;-webkit-user-select:none;background-clip:border-box;background-color:rgba(26,26,35,.12);background-image:none;border-color:transparent;color:#1a1a23;opacity:1;overflow:hidden;pointer-events:none;user-select:none;white-space:nowrap}.radio-group.is-readonly.radio-group-toggle a,.radio-group.is-readonly.radio-group-toggle input:not(:checked),.radio-group.is-readonly.radio-group-toggle input:not(:checked)+label{display:none}.radio-group.is-readonly.radio-group-toggle input:checked+label{color:inherit;justify-content:flex-start}.radio-button{cursor:pointer;display:inline-flex;margin-bottom:0;position:relative}.radio-button:not(:last-child){margin-right:1rem}.input{margin-top:.5rem;opacity:0;position:absolute;z-index:-1}.input:not(:checked)+.indicator{color:rgba(26,26,35,.18)}.input:not(:checked)+.indicator:before{display:none}.input:focus+.indicator{box-shadow:0 0 0 1px #0084a9;color:#0084a9}.input:disabled+.indicator{background-color:rgba(26,26,35,.1);border-color:rgba(26,26,35,.18)}.input:disabled+.indicator,.input:disabled~.label{color:rgba(26,26,35,.66);opacity:.65}.indicator{align-items:center;background-clip:padding-box;background-color:#fff;border:1px solid;border-radius:50%;color:#0084a9;display:inline-flex;flex:none;height:1em;justify-content:center;margin-top:.5rem;pointer-events:none;width:1em}.indicator:before{background-color:currentColor;border-radius:50%;content:"";display:block;height:.5em;width:.5em}.label{height:2rem;height:auto;line-height:1.25;margin-left:.5rem;min-height:2rem;padding:.375em 0}.radio-group-toggle{background-color:#d2d7d9;border:.0625rem solid #d2d7d9;border-radius:0;color:rgba(26,26,35,.38);display:flex;font-size:1rem;min-height:2em;position:relative}.radio-group-toggle input{opacity:0;position:absolute;z-index:-1}.radio-group-toggle input:checked+label{color:#0084a9}.radio-group-toggle input:checked:last-of-type~a{transform:translateX(100%)}.radio-group-toggle input:focus~.toggle-focused{display:block}.radio-group-toggle .toggle-focused{bottom:0;box-shadow:0 0 0 .125rem #0084a9;display:none;left:0;position:absolute;right:0;top:0}.radio-group-toggle label{align-items:center;cursor:pointer;display:flex;flex:1 1 0%;justify-content:center;line-height:1.1em;margin-bottom:0;padding:.375rem .5rem;position:relative;text-align:center;transition:color .3s ease;z-index:2}.radio-group-toggle label .ec-icon{color:inherit}.radio-group-toggle a{border:.1875rem solid transparent;border-radius:0;display:block;height:100%;left:0;position:absolute;top:0;transition:transform .25s ease;width:50%;z-index:1}.radio-group-toggle a .toggle-handle{background-color:#fff;border-radius:0;height:100%}.radio-group-toggle.is-disabled{background-color:rgba(26,26,35,.1);color:rgba(26,26,35,.66);opacity:.65}.radio-group-toggle.is-disabled label{color:inherit!important;cursor:default}.radio-group-toggle.is-disabled a.toggle-handle{background-color:hsla(0,0%,100%,.38)}.toggle-options-3 a{width:33.3333333333%}.toggle-options-3 input:checked:last-of-type~a{transform:translateX(200%)}.toggle-options-3 input:checked:nth-of-type(2)~a{transform:translateX(100%)}.toggle-options-4 a{width:25%}.toggle-options-4 input:checked:last-of-type~a{transform:translateX(300%)}.toggle-options-4 input:checked:nth-of-type(3)~a{transform:translateX(200%)}.toggle-options-4 input:checked:nth-of-type(2)~a{transform:translateX(100%)}.toggle-options-5 a{width:20%}.toggle-options-5 input:checked:last-of-type~a{transform:translateX(400%)}.toggle-options-5 input:checked:nth-of-type(4)~a{transform:translateX(300%)}.toggle-options-5 input:checked:nth-of-type(3)~a{transform:translateX(200%)}.toggle-options-5 input:checked:nth-of-type(2)~a{transform:translateX(100%)}']}]}],gt.ctorParameters=function(){return[{type:F},{type:R}]},gt.propDecorators={type:[{type:o.Input}],options:[{type:o.Input}],direction:[{type:o.Input}],name:[{type:o.Input}],inputElement:[{type:o.ViewChild,args:["radioInput"]}]};var ft=function(t){function e(e,o){var n=t.call(this,e,o)||this;return n.validationMessageService=e,n.formGroupHelper=o,n.name="",n.ignoreDisabledDependents=!0,n.indeterminate=!1,n.ignoreCall=!1,n.resetDependentSubscriptions=new l.Subject,n}return v(e,t),e.prototype.ngAfterViewInit=function(){this.autofocus&&this.inputElement.nativeElement.focus()},e.prototype.ngOnChanges=function(t){t.dependentCheckboxesGroup&&this.setupDependents()},e.prototype.dispatchEvent=function(t){"click"!==t.type||this.formModel.disabled||this.formModel.patchValue(!this.formModel.value)},e.prototype.setupDependents=function(){var t=this;if(this.dependentCheckboxesGroup){this.resetDependentSubscriptions.next();var e=Object.values(this.dependentCheckboxesGroup.controls);this.updateMasterState(e),this.formModel.valueChanges.pipe(c.distinctUntilChanged(),c.takeUntil(l.merge(this.componentDestroyed,this.resetDependentSubscriptions))).subscribe((function(o){t.ignoreCall||(t.ignoreCall=!0,e.forEach((function(e){e.disabled&&t.ignoreDisabledDependents||e.setValue(o)})),t.indeterminate=!1,t.ignoreCall=!1)})),e.forEach((function(o){o.valueChanges.pipe(c.distinctUntilChanged(),c.takeUntil(l.merge(t.componentDestroyed,t.resetDependentSubscriptions))).subscribe((function(o){!0===o||!1===o?t.ignoreCall||(t.ignoreCall=!0,t.updateMasterState(e),t.ignoreCall=!1):console.error("The value "+o+" is not true or false, which are the only supported values for FormControls in the dependentCheckboxesGroup")}))}))}},e.prototype.updateMasterState=function(t){var e=[],o=function(t){return!0===t.value};(e=this.ignoreDisabledDependents?t.filter((function(t){return t.enabled})):t).every(o)?(this.formModel.setValue(!0),this.indeterminate=!1):e.some(o)?(this.formModel.setValue(!1),this.indeterminate=!0):(this.formModel.setValue(!1),this.indeterminate=!1)},e}(L);ft.decorators=[{type:o.Component,args:[{selector:"ec-checkbox",template:'<div class="control">\r\n <label class="checkbox"\r\n [ngClass]="{\'is-disabled\': formModel.disabled, \'no-label\': !label, \'is-readonly\': readonly}">\r\n <input id="{{id}}_input"\r\n #checkboxInput\r\n class=\'input\'\r\n [class.indeterminate]="indeterminate"\r\n [attr.id]="inputId"\r\n [attr.name]="name"\r\n type="checkbox"\r\n tabindex="{{tabindex}}"\r\n [formControl]="formModel"\r\n [attr.cdkFocusInitial]="autofocus || null">\r\n <i class="ec-icon icon-check"></i>\r\n <span id="{{id}}_label"\r\n *ngIf="label"\r\n class="label"\r\n [innerHtml]="label | translate">\r\n </span>\r\n </label>\r\n</div>\r\n',styles:['@-webkit-keyframes spin{0%{transform:rotate(0)}to{transform:rotate(1turn)}}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(1turn)}}:host{color:#1a1a23;display:block;font-family:Roboto,-apple-system,BlinkMacSystemFont,Segoe UI,Oxygen,Ubuntu,Fira Sans,Droid Sans,Helvetica Neue,sans-serif;font-size:1rem;margin-bottom:1rem;width:100%}:host :host-context(.form-condensed){margin-bottom:.5rem}:host .control{display:flex;flex-direction:column;width:100%}:host .control.control-label-bottom{flex-direction:column-reverse}:host .control.control-label-left{flex-direction:row}:host .control.control-label-left label{margin-right:.25rem}:host .control.control-label-right{flex-direction:row-reverse}:host .control.control-label-right label{margin-left:.25rem}:host .control.control-label-left,:host .control.control-label-right{align-items:center}:host .control.control-label-left label,:host .control.control-label-right label{flex:1 1;margin-bottom:0;margin-top:0}:host .control.control-label-left .control-input,:host .control.control-label-right .control-input{flex:2 2}:host .control.is-readonly input,:host .control.is-readonly select{-moz-user-select:none;-ms-user-select:none;-webkit-user-select:none;background-clip:border-box;background-color:rgba(26,26,35,.12);background-image:none;border-color:transparent;color:#1a1a23;opacity:1;overflow:hidden;pointer-events:none;user-select:none;white-space:nowrap}:host .control.invalid .textbox-group-input ::ng-deep .control input.ng-invalid,:host .control.invalid .textbox-group-input ::ng-deep .control input.ng-valid{background-color:#fff8cc;background-image:url(\'data:image/svg+xml;charset=utf8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 32 32"><path fill="rgba(26, 26, 35, 0.66)" d="M20.21 20.21h-8.42L10.95 0h10.1l-.84 20.21zm-8.42 3.37h8.42V32h-8.42z"/></svg>\');background-position:.25em;background-repeat:no-repeat;background-size:1em 1em;padding-left:1.5em}:host .control.invalid .textbox-group-input ::ng-deep .control input.ng-invalid:not(:focus),:host .control.invalid .textbox-group-input ::ng-deep .control input.ng-valid:not(:focus){border-color:#ffe433}:host .control.invalid:not(.open) .textbox-group-btn-right ::ng-deep button{background-color:#fff8cc}:host .control.invalid:not(.open) .textbox-group-btn-right ::ng-deep button:not(:focus){border-color:#ffe433}:host .textbox-group{display:flex;position:relative}:host input:focus,:host select:focus,:host textarea:focus{outline:none}:host(.w-auto){width:auto}.checkbox{cursor:pointer;display:inline-flex;margin-bottom:0;position:relative}.checkbox.is-disabled{cursor:default}.input{margin-top:.5rem;opacity:0;position:absolute;z-index:-1}.input:not(:checked)+.ec-icon{color:rgba(26,26,35,.18)}.input:not(:checked)+.ec-icon:before{display:none}.input.indeterminate+.ec-icon,.input:indeterminate+.ec-icon{color:#0084a9}.input.indeterminate+.ec-icon:before,.input:indeterminate+.ec-icon:before{background-color:currentColor;content:"";display:block;height:3px;width:10px}.input:focus+.ec-icon{box-shadow:0 0 0 1px #0084a9;color:#0084a9}.input:disabled+.ec-icon{background-color:rgba(26,26,35,.1);border-color:rgba(26,26,35,.18)}.input:disabled+.ec-icon,.input:disabled~.label{color:rgba(26,26,35,.66);opacity:.65}.ec-icon{align-items:center;background-clip:padding-box;background-color:#fff;border:1px solid;border-radius:2px;color:#0084a9;display:inline-flex;flex:none;height:1em;justify-content:center;margin-top:.5rem;pointer-events:none;width:1em}.ec-icon:before{font-size:.6875em}.label{height:2rem;height:auto;line-height:1.25;margin-left:.5rem;min-height:2rem;padding:.375em 0}.checkbox.is-readonly{pointer-events:none}.checkbox.is-readonly .input{opacity:0}.checkbox.is-readonly .ec-icon{background-color:rgba(26,26,35,.12);border:0}.checkbox.is-readonly .ec-icon,.checkbox.is-readonly .label{color:#1a1a23;opacity:1}.no-label .icon-check,.no-label .input{margin-top:0}']}]}],ft.ctorParameters=function(){return[{type:F},{type:R}]},ft.propDecorators={name:[{type:o.Input}],dependentCheckboxesGroup:[{type:o.Input}],ignoreDisabledDependents:[{type:o.Input}],inputElement:[{type:o.ViewChild,args:["checkboxInput",{static:!0}]}]};var bt=new RegExp("^(-)?([\\d]+)?$"),yt=function(t){var e="{0,"+t.toString()+"}";return new RegExp("^((((-)?\\d+\\.?\\d"+e+"?)|((-)?\\.?\\d"+e+")))?$")},vt=function(t,e,o,n){return function(r){var i=!1;if(r.value&&""!==r.value){if((o&&o>0?yt(o):n?yt(n):bt).test(r.value)){if(n){i=Number(r.value).toString().replace(/^-?/,"").replace(/(^0\.)|(\.)/,"").length>n}}else i=!0;void 0!==t&&Number(r.value)<t&&(i=!0),void 0!==e&&Number(r.value)>e&&(i=!0)}return i?{numericbox:{valid:!1,min:t,max:e,decimals:o,maxPrecisionDigits:n}}:null}},xt=function(t){function e(e,o,n){var r=t.call(this,e,o)||this;return r.validationMessageService=e,r.formGroupHelper=o,r.renderer=n,r.showPrecision=!1,r.autoUpdateFormModel=!1,r.unitsWidthCalculated=!1,r.autoUpdatingFormModel=!1,r}return v(e,t),e.prototype.ngAfterViewInit=function(){var t=this;this.autoUpdateFormModel&&this.textboxFormModel.valueChanges.pipe(c.debounceTime(300),c.distinctUntilChanged(),c.takeUntil(this.componentDestroyed)).subscribe((function(){t.updateFormModelValue()}))},e.prototype.ngOnChanges=function(e){(e.rightUnits||e.leftUnits)&&(this.unitsWidthCalculated=!1),t.prototype.ngOnChanges.call(this,e)},e.prototype.ngOnInit=function(){var e=this;t.prototype.ngOnInit.call(this),this.textboxFormModel=new n.FormControl({value:this.formModel.value,disabled:this.formModel.disabled}),this.textboxFormModel.statusChanges.pipe(c.takeUntil(this.componentDestroyed)).subscribe((function(){e.formModel.enabled&&e.formModel.setErrors(e.textboxFormModel.errors)})),this.formModel.statusChanges.pipe(c.takeUntil(this.componentDestroyed)).subscribe((function(){e.formModel.disabled?e.textboxFormModel.disable():e.textboxFormModel.disabled&&e.textboxFormModel.enable()})),this.textboxFormModel.setValidators(this.getValidators()),this.textboxFormModel.setValue(this.formatDisplayNumber(this.formModel.value)),this.formModel.valueChanges.pipe(c.filter((function(){return!e.autoUpdatingFormModel})),c.takeUntil(this.componentDestroyed)).subscribe((function(t){e.textboxFormModel.setValue(e.formatDisplayNumber(t))})),this.leftUnits&&this.textboxFormModel.statusChanges.pipe(c.takeUntil(this.componentDestroyed)).subscribe((function(){e.positionLeftUnits()}))},e.prototype.ngAfterViewChecked=function(){!this.leftUnits&&!this.rightUnits||this.unitsWidthCalculated||this.showUnits()},e.prototype.getValidators=function(){var t=[];return this.required&&t.push(n.Validators.required),t.push(vt(this.min,this.max,this.decimals,this.maxPrecisionDigits)),t},e.prototype.onFocusOut=function(){this.updateFormModelValue(!0)},e.prototype.setFocus=function(t){this.textboxInput.setFocus(t)},e.prototype.updateFormModelValue=function(t){this.autoUpdateFormModel&&(this.autoUpdatingFormModel=!0);try{if(this.textboxFormModel.valid||""===this.textboxFormModel.value){var e=null;this.textboxFormModel.value&&!isNaN(this.textboxFormModel.value)?(e=Number(this.textboxFormModel.value),this.formModel.value!==e&&this.formModel.setValue(e)):null!==this.formModel.value&&this.formModel.setValue(null),t&&this.textboxFormModel.setValue(this.formatDisplayNumber(e))}this.formModel.markAsTouched()}catch(t){}finally{this.autoUpdatingFormModel=!1}},e.prototype.formatDisplayNumber=function(t){return t||0===t?this.showPrecision&&this.decimals&&!isNaN(t)?t.toFixed(this.decimals):t.toString():null},e.prototype.positionRightUnits=function(){var t=this.textboxEl.nativeElement.querySelector(".units-right"),e=this.textboxEl.nativeElement.querySelector("input");if(t&&e){var o=t.offsetWidth;o>0&&(this.unitsWidthCalculated=!0);var n=o;this.renderer.setStyle(e,"padding-right",n+"px")}},e.prototype.positionLeftUnits=function(){var t=this.textboxEl.nativeElement.querySelector(".units-left"),e=this.textboxEl.nativeElement.querySelector("input");if(t&&e){var o=t.offsetWidth;o>0&&(this.unitsWidthCalculated=!0);var n=o,r=getComputedStyle(t).left;r&&(n+=parseInt(r.replace("px",""),0)),this.renderer.setStyle(e,"padding-left",n+"px")}},e.prototype.showUnits=function(){var t=this.textboxEl.nativeElement.querySelector(".input-wrapper");if(t){var e;if(this.leftUnits)(e=this.textboxEl.nativeElement.querySelector(".units-left"))?this.renderer.setProperty(e,"innerHTML",this.leftUnits):this.renderer.appendChild(t,this.makeUnitElement("left",this.leftUnits)),this.positionLeftUnits();if(this.rightUnits)(e=this.textboxEl.nativeElement.querySelector(".units-right"))?this.renderer.setProperty(e,"innerHTML",this.rightUnits):this.renderer.appendChild(t,this.makeUnitElement("right",this.rightUnits)),this.positionRightUnits()}},e.prototype.makeUnitElement=function(t,e){var o=this.renderer.createElement("span");return this.renderer.setAttribute(o,"class","units units-"+t),this.renderer.setAttribute(o,"id",this.id+"_units"),this.renderer.setAttribute(o,"style","pointer-events: none"),this.renderer.setProperty(o,"innerHTML",e),o},e}(L);xt.decorators=[{type:o.Component,args:[{selector:"ec-numericbox",template:'<div class="control control-label-{{labelPosition}}"\r\n [class.invalid]="formModel?.invalid && (formModel?.touched)">\r\n <label *ngIf="label"\r\n ngPreserveWhitespaces>\r\n <span>{{label | translate}}</span>\r\n\r\n <span *ngIf="validationErrors.length && formModel?.touched && formModel?.invalid">{{validationErrors | translate}}</span>\r\n </label>\r\n \x3c!-- Setting the maxlength to 13 to combat the user from entering too large of a number\r\n for javascript to support. If the user enters all 13 characters as numbers and we have showPrecision set, adding the\r\n decimal and the empty zero characters will get them in a situation where to edit it they must remove characters\r\n as we would push them past the limit --\x3e\r\n <ec-textbox [id]="id"\r\n #textbox\r\n class="control-input mb-0"\r\n [placeholder]="placeholder"\r\n [maxlength]="maxPrecisionDigits ? maxPrecisionDigits + 3 : 13"\r\n [autofocus]="autofocus"\r\n [formModel]="textboxFormModel"\r\n [required]="required"\r\n [tabindex]="tabindex"\r\n [readonly]="readonly"\r\n [tooltip]="tooltip"\r\n (focusout)="onFocusOut()">\r\n </ec-textbox>\r\n</div>\r\n',styles:['@-webkit-keyframes spin{0%{transform:rotate(0)}to{transform:rotate(1turn)}}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(1turn)}}:host{color:#1a1a23;display:block;font-family:Roboto,-apple-system,BlinkMacSystemFont,Segoe UI,Oxygen,Ubuntu,Fira Sans,Droid Sans,Helvetica Neue,sans-serif;font-size:1rem;margin-bottom:1rem;width:100%}:host :host-context(.form-condensed){margin-bottom:.5rem}:host .control{display:flex;flex-direction:column;width:100%}:host .control.control-label-bottom{flex-direction:column-reverse}:host .control.control-label-left{flex-direction:row}:host .control.control-label-left label{margin-right:.25rem}:host .control.control-label-right{flex-direction:row-reverse}:host .control.control-label-right label{margin-left:.25rem}:host .control.control-label-left,:host .control.control-label-right{align-items:center}:host .control.control-label-left label,:host .control.control-label-right label{flex:1 1;margin-bottom:0;margin-top:0}:host .control.control-label-left .control-input,:host .control.control-label-right .control-input{flex:2 2}:host .control.is-readonly input,:host .control.is-readonly select{-moz-user-select:none;-ms-user-select:none;-webkit-user-select:none;background-clip:border-box;background-color:rgba(26,26,35,.12);background-image:none;border-color:transparent;color:#1a1a23;opacity:1;overflow:hidden;pointer-events:none;user-select:none;white-space:nowrap}:host .control.invalid .textbox-group-input ::ng-deep .control input.ng-invalid,:host .control.invalid .textbox-group-input ::ng-deep .control input.ng-valid{background-color:#fff8cc;background-image:url(\'data:image/svg+xml;charset=utf8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 32 32"><path fill="rgba(26, 26, 35, 0.66)" d="M20.21 20.21h-8.42L10.95 0h10.1l-.84 20.21zm-8.42 3.37h8.42V32h-8.42z"/></svg>\');background-position:.25em;background-repeat:no-repeat;background-size:1em 1em;padding-left:1.5em}:host .control.invalid .textbox-group-input ::ng-deep .control input.ng-invalid:not(:focus),:host .control.invalid .textbox-group-input ::ng-deep .control input.ng-valid:not(:focus){border-color:#ffe433}:host .control.invalid:not(.open) .textbox-group-btn-right ::ng-deep button{background-color:#fff8cc}:host .control.invalid:not(.open) .textbox-group-btn-right ::ng-deep button:not(:focus){border-color:#ffe433}:host .textbox-group{display:flex;position:relative}:host input:focus,:host select:focus,:host textarea:focus{outline:none}label{color:rgba(26,26,35,.66);display:block;font-size:.75rem;line-height:1;margin:.375rem 0}ec-textbox ::ng-deep .input-wrapper{position:relative}ec-textbox ::ng-deep input{text-align:right}ec-textbox ::ng-deep input.ng-invalid.ng-touched~.units-left,ec-textbox ::ng-deep input:required.is-empty:not(:disabled)~.units-left{left:1.25rem}ec-textbox ::ng-deep .control:not(.is-readonly) input:disabled~.units{color:rgba(26,26,35,.66);opacity:.65}ec-textbox ::ng-deep .units{color:#1a1a23;display:block;font-family:Roboto,-apple-system,BlinkMacSystemFont,Segoe UI,Oxygen,Ubuntu,Fira Sans,Droid Sans,Helvetica Neue,sans-serif;font-size:1rem;height:2rem;line-height:1.25;padding:.375em .25rem;position:absolute;top:1px;z-index:2}ec-textbox ::ng-deep .units.units-right{padding-right:.5rem;right:0}ec-textbox ::ng-deep .units.units-left{left:0;padding-left:.5rem}.control.invalid ec-textbox ::ng-deep input.ng-invalid,.control.invalid ec-textbox ::ng-deep input.ng-valid{background-color:#fff8cc;background-image:url(\'data:image/svg+xml;charset=utf8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 32 32"><path fill="rgba(26, 26, 35, 0.66)" d="M20.21 20.21h-8.42L10.95 0h10.1l-.84 20.21zm-8.42 3.37h8.42V32h-8.42z"/></svg>\');background-position:.25em;background-repeat:no-repeat;background-size:1em 1em;padding-left:1.5em}.control.invalid ec-textbox ::ng-deep input.ng-invalid:not(:focus),.control.invalid ec-textbox ::ng-deep input.ng-valid:not(:focus){border-color:#ffe433}.control.invalid ec-textbox ::ng-deep input.ng-invalid~.units-left,.control.invalid ec-textbox ::ng-deep input.ng-valid~.units-left{left:1.25rem}']}]}],xt.ctorParameters=function(){return[{type:F},{type:R},{type:o.Renderer2}]},xt.propDecorators={placeholder:[{type:o.Input}],decimals:[{type:o.Input}],showPrecision:[{type:o.Input}],maxPrecisionDigits:[{type:o.Input}],max:[{type:o.Input}],min:[{type:o.Input}],leftUnits:[{type:o.Input}],rightUnits:[{type:o.Input}],autoUpdateFormModel:[{type:o.Input}],textboxEl:[{type:o.ViewChild,args:[X,{read:o.ElementRef,static:!0}]}],textboxInput:[{type:o.ViewChild,args:["textbox",{static:!0}]}]};var wt=function(){function t(){}return t.prototype.getAvatarLabels=function(t){var e=void 0,o="HI",n=this.trimUser(t);return n.firstName||n.lastName?n.firstName?(o=n.firstName.slice(0,1),e=n.firstName,n.lastName&&(e+=" "+n.lastName)):(o=n.lastName.slice(0,1),e=n.lastName):n.email?(o=n.email.slice(0,1),e=n.email):n.username&&(o=n.username.slice(0,1),e=n.username),{abbreviation:o,full:e}},t.prototype.trimUser=function(t){return{email:(t.email||"").trim(),firstName:(t.firstName||"").trim(),lastName:(t.lastName||"").trim(),username:(t.username||"").trim()}},t}();wt.ɵprov=o.ɵɵdefineInjectable({factory:function(){return new wt},token:wt,providedIn:"root"}),wt.decorators=[{type:o.Injectable,args:[{providedIn:"root"}]}];var It=function(){function t(t,e,o){this.el=t,this.renderer=e,this.avatarService=o,this.colors={abcde01:"red",fghij23:"orange",klmn15:"yellow",opqr67:"green",stuv8:"blue",wxyz9:"purple"},this.label="HI",this.currentCSSClass=""}return t.prototype.ngOnChanges=function(t){t.user.firstChange||this.user||console.error("AvatarComponent expected a value for the [user] input but got "+this.user+" instead."),this.updateLabel(),this.updateColor()},t.prototype.updateLabel=function(){this.user&&(this.label=this.avatarService.getAvatarLabels(this.user).abbreviation)},t.prototype.updateColor=function(){this.currentCSSClass&&this.renderer.removeClass(this.el.nativeElement,this.currentCSSClass);var t="gray";if("HI"!==this.label&&this.label)for(var e in this.colors)e.includes(this.label[0].toLowerCase())&&(t=this.colors[e]);this.currentCSSClass="avatar-"+t,this.renderer.addClass(this.el.nativeElement,this.currentCSSClass)},t}();It.decorators=[{type:o.Component,args:[{selector:"ec-avatar",template:"{{label}}",styles:[":host{align-items:center;border-radius:50%;color:#fff;display:flex;font-family:Roboto;font-size:1rem;height:2.25rem;justify-content:center;line-height:1.25rem;text-transform:uppercase;width:2.25rem}:host.avatar-red{background-color:#eb6669}:host.avatar-orange{background-color:#fa9f69}:host.avatar-yellow{background-color:#ffec74}:host.avatar-green{background-color:#dbe280}:host.avatar-blue{background-color:#58afc7}:host.avatar-purple{background-color:#9e82b4}:host.avatar-gray{background-color:#acbcc3}:host.avatar-green,:host.avatar-orange,:host.avatar-yellow{color:rgba(26,26,35,.66)}"]}]}],It.ctorParameters=function(){return[{type:o.ElementRef},{type:o.Renderer2},{type:wt}]},It.propDecorators={user:[{type:o.Input}]};var kt=function(){function t(t){this.avatarService=t,this.user={},this.userMenuItems=[],this.userMenuWidth=0,this.userMenuMinWidth=160,this.userMenuTabindex=0,this.iconPath="/assets/images/icon.svg"}return t.prototype.ngOnChanges=function(){this.user&&(this.userMenuTitle=this.avatarService.getAvatarLabels(this.user).full)},t}();kt.decorators=[{type:o.Component,args:[{selector:"ec-app-bar",template:'<section class="logo-container">\r\n <img src="{{iconPath}}"\r\n alt="EnergyCAP Platform">\r\n</section>\r\n\r\n<section class="title-container">\r\n <ng-content select=".app-bar-title"></ng-content>\r\n</section>\r\n\r\n<section class="actions-container">\r\n <ng-content select=".app-bar-actions"></ng-content>\r\n <ec-dropdown id="AppBarUserMenu"\r\n *ngIf="userMenuItems.length; else avatar"\r\n [menuTitle]="userMenuTitle"\r\n [items]="userMenuItems"\r\n [buttonCustomTemplate]="avatar"\r\n [showArrow]="false"\r\n [menuWidth]="userMenuWidth"\r\n [menuMinWidth]="userMenuMinWidth"\r\n [tabindex]="userMenuTabindex"></ec-dropdown>\r\n</section>\r\n\r\n<ng-template #avatar>\r\n <div class="p-1">\r\n <ec-avatar [user]="user"></ec-avatar>\r\n </div>\r\n</ng-template>',styles:["@-webkit-keyframes spin{0%{transform:rotate(0)}to{transform:rotate(1turn)}}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(1turn)}}:host{align-items:center;background-color:#fff;display:flex;height:3rem;padding:0 .75rem 0 1rem;position:relative;width:100%;z-index:40}:host ::ng-deep .app-bar-actions{align-items:center;display:flex;justify-content:flex-end;margin-right:.25rem}section{flex:1 1}.logo-container img{height:2rem;width:2rem}.title-container{text-align:center}.actions-container{display:flex;justify-content:flex-end}"]}]}],kt.ctorParameters=function(){return[{type:wt}]},kt.propDecorators={user:[{type:o.Input}],userMenuItems:[{type:o.Input}],userMenuWidth:[{type:o.Input}],userMenuMinWidth:[{type:o.Input}],userMenuTabindex:[{type:o.Input}],iconPath:[{type:o.Input}]};var Ct=function(){function t(){this._splashVisibility=new l.Subject,this.splashVisibility=this._splashVisibility}return t.prototype.showSplash=function(){this._splashVisibility.next(!0)},t.prototype.hideSplash=function(){this._splashVisibility.next(!1)},t}();Ct.ɵprov=o.ɵɵdefineInjectable({factory:function(){return new Ct},token:Ct,providedIn:"root"}),Ct.decorators=[{type:o.Injectable,args:[{providedIn:"root"}]}],Ct.ctorParameters=function(){return[]};var Mt=function(){function t(t){this.splashService=t,this.isVisible=!0,this.stopAnimation=!1,this.destroyed=new l.Subject}return t.prototype.ngOnInit=function(){var t=this;this.splashService.splashVisibility.pipe(c.takeUntil(this.destroyed),c.tap((function(e){return x(t,void 0,void 0,(function(){var t=this;return w(this,(function(o){return e?this.stopAnimation=!1:l.timer(1e3).pipe(c.takeUntil(this.splashService.splashVisibility)).subscribe((function(){t.stopAnimation=!0})),[2]}))}))}))).subscribe((function(e){t.isVisible=e}))},t.prototype.ngOnDestroy=function(){this.destroyed.next(),this.destroyed.unsubscribe()},t}();function St(t){return!!(t.error&&t.error.hasOwnProperty("status")&&t.error.status.hasOwnProperty("message"))}Mt.decorators=[{type:o.Component,args:[{selector:"ec-splash",template:'<div class="app-splash"\r\n [class.app-loaded]="!isVisible">\r\n\r\n \x3c!-- This is the raw icon.svg file so we can animate it --\x3e\r\n <svg [class.d-none]="stopAnimation" \r\n xmlns="http://www.w3.org/2000/svg"\r\n width="50"\r\n height="50"\r\n viewBox="0 0 50 50">\r\n <g>\r\n <g>\r\n <path fill="#A0AD39"\r\n fill-rule="nonzero"\r\n d="M34.93,32.25 L34.93,37.25 L15.21,37.25 L15.21,32.25 L34.93,32.25 Z M28.45,22.48 L28.45,27.48 L15.21,27.48 L15.21,22.48 L28.45,22.48 Z M34.93,12.71 L34.93,17.71 L15.21,17.71 L15.21,12.71 L34.93,12.71 Z" />\r\n <path fill="#A0AD39"\r\n d="M24.99,5 C31.1,5 36.56,7.75 40.23,12.07 L44.33,9.16 C39.75,3.57 32.78,0 24.99,0 C17.2,0 10.23,3.57 5.65,9.16 L9.75,12.07 C13.42,7.75 18.88,5 24.99,5 Z" />\r\n </g>\r\n <path fill="#17303B"\r\n d="M40.24,37.93 C36.57,42.25 31.11,45 25,45 C18.89,45 13.43,42.25 9.76,37.93 L9.78,37.92 C6.82,34.43 5,29.94 5,25 C5,21.86 5.74,18.91 7.03,16.26 L2.89,13.33 C1.05,16.81 0,20.78 0,25 C0,31.01 2.13,36.52 5.66,40.83 L5.66,40.83 C10.24,46.42 17.21,49.99 25,49.99 C32.79,49.99 39.76,46.42 44.34,40.83 L40.24,37.93 Z" />\r\n </g>\r\n\r\n </svg>\r\n</div>'}]}],Mt.ctorParameters=function(){return[{type:Ct}]};var Tt=function(){function t(){}return t.prototype.parseApiError=function(t,e){if("string"==typeof t)return t;var o=e||"DefaultUnknownError_SC";if(t&&St(t))try{o=t.error.status.message}catch(t){this.logConsoleError(t)}else this.logConsoleError(t);return o},t.prototype.logConsoleError=function(t){console&&"function"==typeof console.error&&console.error("unknown error:",t)},t}();Tt.ɵprov=o.ɵɵdefineInjectable({factory:function(){return new Tt},token:Tt,providedIn:"root"}),Tt.decorators=[{type:o.Injectable,args:[{providedIn:"root"}]}],Tt.ctorParameters=function(){return[]};var Dt=function(){function t(t){this.el=t,this.pageNumber=1,this.maxTabs=10,this.pageChanged=new o.EventEmitter,this.dropdownItems=[],this.currentTabs=new W}return t.prototype.ngOnChanges=function(){var t=this;if(0===this.totalItems)return this.dropdownItems=[],void(this.currentTabs=new W);this.setDropdownItems();var e=this.dropdownItems.find((function(e){return e.value.firstPage<=t.pageNumber&&e.value.lastPage>=t.pageNumber}));e||(console.error("Page "+this.pageNumber+" does not exist. Setting the starting page number to 1."),e=this.dropdownItems[0],this.pageNumber=1),this.setTabs(e,this.pageNumber)},t.getPagingInfo=function(t,e){return{skip:(t-1)*e,pageSize:e,pageNumber:t}},t.prototype.onItemSelected=function(t){this.setTabs(t),this.onPageChange(parseInt(this.currentTabs.selected.label)),this.el.nativeElement.querySelector(".tab.active").focus()},t.prototype.setTabs=function(t,e){for(var o=this,n=[],r=function(t){n.push({label:""+t,onClick:function(){o.onPageChange(t)}})},i=t.value.firstPage;i<=t.value.lastPage;i++)r(i);var a=e?n.find((function(t){return parseInt(t.label)===e})):n[0];this.currentTabs=new W(n,a)},t.prototype.onPageChange=function(e){this.pageNumber=e,this.pageChanged.emit(t.getPagingInfo(e,this.pageSize))},t.prototype.setDropdownItems=function(){this.dropdownItems=[];for(var t=Math.floor(this.totalItems/this.pageSize),e=0===this.totalItems%this.pageSize?t:t+1,o=1,n=this.maxTabs||10,r=n;r<e;)this.dropdownItems.push({label:o+"-"+r,value:{firstPage:o,lastPage:r}}),o+=n,r+=n;this.dropdownItems.push({label:o===e?""+o:o+"-"+e,value:{firstPage:o,lastPage:e}})},t}();Dt.decorators=[{type:o.Component,args:[{selector:"ec-table-pagination",template:'<ec-tabs id="{{id}}_pages"\r\n class="my-2 is-condensed"\r\n [tabGroup]="currentTabs"\r\n tabStyle="pills">\r\n</ec-tabs>\r\n<ec-dropdown id="{{id}}_morePages"\r\n *ngIf="dropdownItems.length > 1"\r\n class="my-1 ml-1"\r\n menuTemplateType="label"\r\n icon="icon-more"\r\n menuPosition="left"\r\n [menuMinWidth]="80"\r\n [showArrow]="false"\r\n [popupFixed]="true"\r\n [items]="dropdownItems"\r\n (itemSelected)="onItemSelected($event)">\r\n</ec-dropdown>',host:{class:"d-flex px-2"}}]}],Dt.ctorParameters=function(){return[{type:o.ElementRef}]},Dt.propDecorators={id:[{type:o.Input}],totalItems:[{type:o.Input}],pageSize:[{type:o.Input}],pageNumber:[{type:o.Input}],maxTabs:[{type:o.Input}],pageChanged:[{type:o.Output}]};var Et=function(){function t(t){this.translateService=t}return t.prototype.transform=function(t,e,o,n){var r=this.translateService.instant(e||"results");return void 0!==o?this.getResultsCount(t,r,o):n?this.getPagedResultsCount(t,r,n):""},t.prototype.getResultsCount=function(t,e,o){return t.totalItems>o?o+" "+this.translateService.instant("of")+" "+t.totalItems:t.totalItems+" "+e},t.prototype.getPagedResultsCount=function(t,e,o){return o.skip+1+(t.totalItems>1?"-"+(o.skip+t.totalItems)+" ":" ")+(this.translateService.instant("of")+" ")+t.totalItemsBeforePaging+" "+e},t}();Et.decorators=[{type:o.Pipe,args:[{name:"rowCount"}]}],Et.ctorParameters=function(){return[{type:i.TranslateService}]};var Ot=function(){function t(t,e,n){this.errorService=t,this.translateService=e,this.rowCountPipe=n,this.id="",this.resizable=!1,this.sortable=!1,this.autofocus=!1,this.tableClasses="",this.sortChange=new o.EventEmitter,this.pageChangeEmitter=new o.EventEmitter,this.searchboxPlaceholder="",this.noDataMessage="SearchableTable_Default_NoData_SC",this.noSearchResultsMessage="SearchableTable_Default_NoMatches_SC",this.status=new K("hasData"),this.tableLayoutFixed=!1,this.itemsChange=new o.EventEmitter,this.maxItemCount=100,this.hideSearchControl=!1,this.hideHeader=!1,this.objectType="results",this.hideFooter=!1,this.pageable=!1,this.maxTabs=10,this.searchboxReadonly=!1,this.additionalCountText="",this.selectable=!1,this.tableCaption=this.translateService.instant(this.noDataMessage||"SearchableTable_Default_NoData_SC"),this.resultsCount="",this.searchResults={items:[],totalItems:0},this.refreshTrigger=l.EMPTY,this.destroyed=new l.Subject,this.pageChanged=new l.Subject,this.initTable=new l.Subject}return Object.defineProperty(t.prototype,"searchModel",{get:function(){return this.formModel.controls.searchModel},enumerable:!1,configurable:!0}),t.prototype.ngOnInit=function(){var t=this;this.status.setStatus("pending","Loading"),this.setUpRefreshTrigger();var e=l.merge(this.formModel.valueChanges.pipe(c.skipUntil(this.ready),c.debounceTime(300)),this.refreshTrigger,this.initTable).pipe(c.tap((function(){t.pageable&&(t.pageInfo=Dt.getPagingInfo(1,t.pageSize))})));l.merge(e,this.pageChanged).pipe(c.pluck("searchModel"),c.map((function(t){return(t||"").trim().toLowerCase()})),c.tap((function(){return t.status.setStatus("pending","Loading")})),c.switchMap((function(e){return t.getItems(e,t.pageInfo)})),c.catchError((function(e,o){return t.status.setStatus("error",t.errorService.parseApiError(e)),o})),c.takeUntil(this.destroyed)).subscribe((function(e){t.pageable||(e.items=e.items.slice(0,t.maxItemCount)),t.searchResults=e,t.tableCaption=t.getCaption(e),t.resultsCount=t.pageable?t.rowCountPipe.transform(e,t.objectType,void 0,t.pageInfo):t.rowCountPipe.transform(e,t.objectType,t.maxItemCount),e.items.length||t.searchModel.value?t.searchModel.disabled&&t.searchModel.enable({emitEvent:!1}):t.searchModel.disable({emitEvent:!1}),t.status.setStatus("hasData"),t.itemsChange.emit(e)})),this.ready.subscribe({complete:function(){t.initTable.next(t.formModel.value),t.initTable.complete()}})},t.prototype.ngOnDestroy=function(){this.destroyed.next(),this.destroyed.unsubscribe()},t.prototype.onSortChange=function(t){this.sortChange.emit(t)},t.prototype.onPageChange=function(t){this.status.setStatus("pending","Loading"),this.pageInfo=t,this.pageChangeEmitter.emit(t),this.pageChanged.next(this.formModel.value)},t.prototype.setUpRefreshTrigger=function(){var t=this;this.refresh&&(this.refreshTrigger=this.refresh.pipe(c.map((function(e){return e&&e.clearSearch?(t.searchModel.reset("",{emitEvent:!1}),Object.assign(Object.assign({},t.formModel),{searchModel:""})):t.formModel.value})),c.takeUntil(this.destroyed)))},t.prototype.getCaption=function(t){return t.items.length?"":this.searchModel.value?this.translateService.instant(this.noSearchResultsMessage||"SearchableTable_Default_NoMatches_SC",{searchText:this.searchModel.value}):this.translateService.instant(this.noDataMessage||"SearchableTable_Default_NoData_SC")},t}();Ot.decorators=[{type:o.Component,args:[{selector:"ec-searchable-table",template:'<header *ngIf="!hideHeader"\r\n class="d-flex flex-shrink align-items-center mb-3">\r\n <ec-textbox id="{{id}}_searchbox"\r\n *ngIf="!hideSearchControl"\r\n class="mb-0 flex-grow mr-2"\r\n [autofocus]="autofocus"\r\n [formModel]="searchModel"\r\n [tabindex]="searchboxTabIndex"\r\n [placeholder]="searchboxPlaceholder"\r\n [readonly]="searchboxReadonly"></ec-textbox>\r\n <div class="flex-grow">\r\n <ng-content select=".searchable-table-controls"></ng-content>\r\n </div>\r\n</header>\r\n<section id="{{id}}_card"\r\n class="card m-0 d-flex flex-column bg-content"\r\n [class.is-translucent]="status.status !== \'error\'"\r\n ecOverlay\r\n [status]="status.status"\r\n [message]="status.message"\r\n [displayAsMask]="true">\r\n <ng-content select=".card-header"></ng-content>\r\n <ec-table id="{{id}}_table"\r\n class="flex-shrink-max {{tableClasses}}"\r\n [class.is-fixed]="tableLayoutFixed"\r\n [sortable]="sortable"\r\n [sort]="sort"\r\n (sortChange)="onSortChange($event)"\r\n [resizable]="resizable"\r\n [scrollable]="true"\r\n [selectable]="selectable"\r\n [selectionContext]="selectionContext"\r\n [selectionToolbarTemplate]="selectionToolbarTemplate"\r\n [resizableColumns]="resizableColumns">\r\n <ng-content></ng-content>\r\n </ec-table>\r\n\r\n \x3c!-- pagination footer visible if table is page-able and there are more than one page of results --\x3e\r\n <footer *ngIf="!hideFooter && pageable && searchResults.totalItemsBeforePaging! > pageSize!" class="d-flex flex-shrink align-items-center border-top">\r\n <ec-table-pagination id="{{id}}_pager"\r\n class="font-color-primary"\r\n [totalItems]="searchResults.totalItemsBeforePaging"\r\n [pageSize]="pageSize"\r\n [maxTabs]="maxTabs"\r\n [pageNumber]="pageInfo?.pageNumber"\r\n (pageChanged)="onPageChange($event)">\r\n </ec-table-pagination>\r\n <div id="resultsCount"\r\n *ngIf="searchResults?.items?.length"\r\n class="ml-auto mr-2 font-color-hint text-truncate" \r\n title="{{resultsCount}} {{additionalCountText}}">{{resultsCount}} {{additionalCountText}}</div>\r\n </footer>\r\n\r\n \x3c!-- default footer: visible if hideFooter is false and table is not page-able or there are only one page of results (always shows if there is a caption to indicate no results) --\x3e\r\n <footer *ngIf="(!hideFooter && (!pageable || searchResults.totalItemsBeforePaging! <= pageSize!)) || tableCaption"\r\n class="p-2 d-flex"\r\n [class.has-results]="searchResults?.items?.length">\r\n <ng-content *ngIf="!tableCaption"\r\n select=".searchable-table-footer"></ng-content>\r\n <div id="tableCaption"\r\n *ngIf="tableCaption"\r\n [innerHTML]="tableCaption"></div>\r\n <div id="resultsCount"\r\n *ngIf="searchResults?.items?.length"\r\n class="ml-auto text-truncate"\r\n title="{{resultsCount}} {{additionalCountText}}">{{resultsCount}} {{additionalCountText}}</div>\r\n </footer>\r\n</section>',styles:["@-webkit-keyframes spin{0%{transform:rotate(0)}to{transform:rotate(1turn)}}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(1turn)}}:host{display:flex;flex:1 1;flex-direction:column;min-height:0}footer{font-size:.75rem;line-height:1rem}footer.has-results{border-top:1px solid rgba(26,26,35,.18);color:rgba(26,26,35,.38);text-align:right}"]}]}],Ot.ctorParameters=function(){return[{type:Tt},{type:i.TranslateService},{type:Et}]},Ot.propDecorators={id:[{type:o.Input}],resizable:[{type:o.Input}],sortable:[{type:o.Input}],sort:[{type:o.Input}],autofocus:[{type:o.Input}],tableClasses:[{type:o.Input}],sortChange:[{type:o.Output}],pageChangeEmitter:[{type:o.Output,args:["pageChange"]}],searchboxPlaceholder:[{type:o.Input}],formModel:[{type:o.Input}],noDataMessage:[{type:o.Input}],noSearchResultsMessage:[{type:o.Input}],ready:[{type:o.Input}],getItems:[{type:o.Input}],refresh:[{type:o.Input}],status:[{type:o.Input}],tableLayoutFixed:[{type:o.Input}],itemsChange:[{type:o.Output}],searchboxTabIndex:[{type:o.Input}],maxItemCount:[{type:o.Input}],hideSearchControl:[{type:o.Input}],hideHeader:[{type:o.Input}],objectType:[{type:o.Input}],hideFooter:[{type:o.Input}],pageable:[{type:o.Input}],pageSize:[{type:o.Input}],maxTabs:[{type:o.Input}],searchboxReadonly:[{type:o.Input}],selectionContext:[{type:o.Input}],selectionToolbarTemplate:[{type:o.Input}],resizableColumns:[{type:o.ContentChildren,args:[T,{descendants:!0}]}],additionalCountText:[{type:o.Input}],selectable:[{type:o.Input}]};var Pt=function(){function t(t,e,o){this.viewContainer=t,this.templateRef=e,this.windowService=o,this.destroyed=new l.Subject,this.isVisible=!1}return t.prototype.ngOnInit=function(){var t=this;void 0!==this.windowService.innerWidth&&(this.width?("number"==typeof this.width?this.minWidth=this.width:void 0!==this.width&&(this.minWidth=this.width.min,this.maxWidth=this.width.max),this.windowService.resized&&this.windowService.resized.pipe(c.debounceTime(100),c.takeUntil(this.destroyed)).subscribe((function(){t.updateVisibility()})),this.updateVisibility()):console.error("A min or max width was not provided. Provide a value for 'min' or 'max' by assigning a single value or object to the directive. E.g. *ecIfViewportWidth=\"800\" (assigned to min) or *ecIfViewportWidth=\"{min: 800, max: 1280}\""))},t.prototype.updateVisibility=function(){var t=this.windowService.innerWidth;void 0!==this.minWidth&&void 0!==this.maxWidth?t>=this.minWidth&&t<=this.maxWidth?this.show():this.hide():void 0!==this.minWidth?t>=this.minWidth?this.show():this.hide():void 0!==this.maxWidth&&(t<=this.maxWidth?this.show():this.hide())},t.prototype.show=function(){this.isVisible||(this.viewContainer.createEmbeddedView(this.templateRef),this.isVisible=!0)},t.prototype.hide=function(){this.isVisible&&(this.viewContainer.clear(),this.isVisible=!1)},t}();Pt.decorators=[{type:o.Directive,args:[{selector:"[ecIfViewportWidth]"}]}],Pt.ctorParameters=function(){return[{type:o.ViewContainerRef},{type:o.TemplateRef},{type:j}]},Pt.propDecorators={width:[{type:o.Input,args:["ecIfViewportWidth"]}]};var Vt=function(){function t(){}return t.prototype.ngOnInit=function(){var t;this.isTargetClickable="function"==typeof(null===(t=this.targetEl)||void 0===t?void 0:t.dispatchEvent)},t.prototype.onClick=function(t){this.isTargetClickable&&(t.preventDefault(),this.targetEl.dispatchEvent(new Event("click")))},t}();Vt.decorators=[{type:o.Directive,args:[{selector:"[ecClickAreaFor]"}]}],Vt.ctorParameters=function(){return[]},Vt.propDecorators={targetEl:[{type:o.HostBinding,args:["class.cursor-pointer"]},{type:o.Input,args:["ecClickAreaFor"]}],onClick:[{type:o.HostListener,args:["click",["$event"]]}]};var zt=function(){function t(){this.expanded=!1,this.expandedChange=new o.EventEmitter}return t.prototype.onToggle=function(){this.expanded=!this.expanded,this.expandedChange.emit(this.expanded)},t}();zt.decorators=[{type:o.Component,args:[{selector:"ec-collapsible-toggle",template:'<ec-button id="{{id}}_button" type="icon" icon="icon-angle-down {{expanded ? \'\' : \'rotate-270\'}}" tabindex="{{tabindex}}" (clicked)="onToggle()"></ec-button>',styles:["@-webkit-keyframes spin{0%{transform:rotate(0)}to{transform:rotate(1turn)}}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(1turn)}}:host{align-items:center;display:inline-flex;height:1.5rem;justify-content:center;width:1.5rem}ec-button::ng-deep .ec-button-icon{height:1.25rem;width:1.25rem}"]}]}],zt.propDecorators={id:[{type:o.Input}],expanded:[{type:o.Input}],tabindex:[{type:o.Input}],expandedChange:[{type:o.Output}]};var At=function(){};At.decorators=[{type:o.Component,args:[{selector:"[ecTableMasterHeaderRow]",template:"<th></th><ng-content></ng-content>",styles:["@-webkit-keyframes spin{0%{transform:rotate(0)}to{transform:rotate(1turn)}}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(1turn)}}th{padding:.25rem 0!important;vertical-align:top;width:1.5rem}th ::ng-deep+th,th ::ng-deep+th.is-resizable{padding-left:0}"]}]}];var Ft=function(){};Ft.decorators=[{type:o.Component,args:[{selector:"[ecTableDetailRow]",template:'\n <td></td>\n <td [class.has-max-height]="maxHeight" class="table-detail-content {{contentClass}}" [attr.colspan]="contentColSpan">\n <div [style.max-height]="maxHeight"><ng-content></ng-content></div>\n </td>\n ',styles:["@-webkit-keyframes spin{0%{transform:rotate(0)}to{transform:rotate(1turn)}}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(1turn)}}:host{background-color:rgba(26,26,35,.03)}td:first-child{padding:.25rem 0!important;vertical-align:top;width:1.5rem}.table-detail-content{background-color:transparent;border-top:1px solid #d2d7d9;padding:1rem 2rem 1rem 0!important}.table-detail-content.has-max-height{padding:0!important}.table-detail-content.has-max-height>div{overflow-y:auto;padding:1rem 2rem 1rem 0}"]}]}],Ft.propDecorators={contentClass:[{type:o.Input}],contentColSpan:[{type:o.Input}],maxHeight:[{type:o.Input}]};var Rt=function(){function t(t){this.el=t,this.borderRight=!1,this.borderLeft=!1}return t.prototype.ngOnInit=function(){if(this.el.nativeElement.classList.contains("is-resizable"))throw new Error("Failed to lock table column because it was also resizable. Resizable table columns cannot currently be locked. Remove the 'is-resizable' class from THs of table columms that have the [ecTableLockedColumn] component.");if(this.el.nativeElement.attributes.getNamedItem("colspan"))throw new Error("Failed to lock table column because it had a 'colspan'. Locked columns do not currently support THs or TDs with a 'colspan'. Remove the 'colspan' attribute from table columns that have the [ecTableLockedColumn] component.");this.updatePositionAndBorder()},t.prototype.ngOnChanges=function(){this.options&&this.updatePositionAndBorder()},t.prototype.updatePositionAndBorder=function(){if("number"==typeof this.options.left&&"number"==typeof this.options.right)throw new Error("Failed to lock table column because it had a value for both left and right. Only left or right can have a value.");"number"==typeof this.options.left?(this.left=this.options.left,this.borderRight=this.options.border||!1):(this.right=this.options.right,this.borderLeft=this.options.border||!1)},t}();Rt.decorators=[{type:o.Component,args:[{selector:"[ecTableLockedColumn]",template:"<ng-content></ng-content>",styles:["@-webkit-keyframes spin{0%{transform:rotate(0)}to{transform:rotate(1turn)}}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(1turn)}}:host{background-color:#fff;position:sticky!important;z-index:2!important}:host(th){z-index:3!important}"]}]}],Rt.ctorParameters=function(){return[{type:o.ElementRef}]},Rt.propDecorators={options:[{type:o.Input,args:["ecTableLockedColumn"]}],left:[{type:o.HostBinding,args:["style.left.px"]}],right:[{type:o.HostBinding,args:["style.right.px"]}],borderRight:[{type:o.HostBinding,args:["class.border-right"]}],borderLeft:[{type:o.HostBinding,args:["class.border-left"]}]};var Lt=function(){function t(t,e,o){this.overlay=t,this.viewContainerRef=e,this.elementRef=o,this.icon="",this.contentPosition="top-left",this.iconHoverClass="",this.isVisible=!1}return t.prototype.ngOnDestroy=function(){this.hide()},t.prototype.show=function(){if(!this.isVisible){var t=this.getOverlayConfig();this.overlayRef=this.overlay.create(t);var e=new h.TemplatePortal(this.content,this.viewContainerRef);this.contentViewRef=this.overlayRef.attach(e),this.isVisible=!0}},t.prototype.onMouseMove=function(t){var e;this.contentRect||(this.contentRect=null===(e=this.contentViewRef)||void 0===e?void 0:e.rootNodes[0].getBoundingClientRect()),this.contentRect&&(t.clientX>this.contentRect.right||t.clientX<this.contentRect.left||t.clientY>this.contentRect.bottom||t.clientY<this.contentRect.top)&&this.hide()},t.prototype.hide=function(){var t;this.contentRect=void 0,null===(t=this.overlayRef)||void 0===t||t.dispose(),this.isVisible=!1},t.prototype.getOverlayConfig=function(){var t=this.getPosition(),e=this.overlay.position().flexibleConnectedTo(this.elementRef).withPositions([t]);return new s.OverlayConfig({positionStrategy:e})},t.prototype.getPosition=function(){var t=this.contentPosition.split("-"),e="left"==t[1]?"start":"end",o=t[0];return{originX:e,originY:o,overlayX:e,overlayY:o}},t}();Lt.decorators=[{type:o.Component,args:[{selector:"ec-popover",template:'<div class="p-2">\r\n <i class="ec-icon {{icon}} ec-icon-sm"></i>\r\n</div>\r\n\r\n<ng-template #content>\r\n <article class="popover-content"\r\n (document:mousemove)="onMouseMove($event)">\r\n <ng-content></ng-content>\r\n </article>\r\n <div class="p-2 {{contentPosition}}">\r\n <i class="ec-icon {{icon}} ec-icon-sm {{iconHoverClass}}"></i>\r\n </div>\r\n</ng-template>\r\n',styles:["@-webkit-keyframes spin{0%{transform:rotate(0)}to{transform:rotate(1turn)}}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(1turn)}}:host{display:inline-block;line-height:1}.popover-content{border-radius:3px;box-shadow:0 3px 6px 0 rgba(26,26,35,.12);overflow:hidden;position:relative}.popover-content+div{line-height:1;position:absolute}.popover-content+div.top-left{left:0;top:0}.popover-content+div.top-right{right:0;top:0}.popover-content+div.bottom-right{bottom:0;right:0}.popover-content+div.bottom-left{bottom:0;left:0}"]}]}],Lt.ctorParameters=function(){return[{type:s.Overlay},{type:o.ViewContainerRef},{type:o.ElementRef}]},Lt.propDecorators={icon:[{type:o.Input}],contentPosition:[{type:o.Input}],iconHoverClass:[{type:o.Input}],content:[{type:o.ViewChild,args:["content"]}],show:[{type:o.HostListener,args:["mouseover"]}]};var Nt=function(){function t(t,e){this.control=t,this.clipboardService=e,this.copySuccess=!1,this.copyFailed=!1,this.destroyed=new l.Subject}return t.prototype.ngOnInit=function(){var t=this;this.control.clicked.pipe(c.takeUntil(this.destroyed)).subscribe((function(){t.onClick()}))},t.prototype.ngOnDestroy=function(){this.destroyed.next(),this.destroyed.unsubscribe()},t.prototype.onClick=function(){var t,e=this,o=this.clipboardService.copyFromContent(null===(t=this.copyFormModel)||void 0===t?void 0:t.value),n=this.control.pendingIcon;o?(this.copySuccess=!0,this.control.pendingIcon="icon-check"):(this.copyFailed=!0,this.control.pendingIcon="icon-cancel"),this.control.pending=!0,setTimeout((function(){e.control.pending=!1,e.copySuccess=!1,e.copyFailed=!1,e.control.pendingIcon=n}),500)},t}();Nt.decorators=[{type:o.Directive,args:[{selector:"[ecCopyButton]"}]}],Nt.ctorParameters=function(){return[{type:P},{type:m.ClipboardService}]},Nt.propDecorators={copyFormModel:[{type:o.Input,args:["ecCopyButton"]}],copySuccess:[{type:o.HostBinding,args:["class.is-success"]}],copyFailed:[{type:o.HostBinding,args:["class.is-error"]}]};var _t=function(){function t(){this.id="",this.wrap=!0,this.isCondensed=!1,this.tagClosed=new o.EventEmitter,this.tagsArray=[]}return t.prototype.ngOnChanges=function(t){t.tags&&(this.tags?Array.isArray(this.tags)?this.tagsArray=this.tags:this.tagsArray=[this.tags]:this.tagsArray=[])},t.prototype.closeTag=function(t){this.tagsArray=this.tagsArray.filter((function(e){return e!==t})),this.tagClosed.emit(t)},t}();_t.decorators=[{type:o.Component,args:[{selector:"ec-tags",template:'<ul class="tags" [class.is-wrapped]="wrap">\r\n <li *ngFor="let tag of tagsArray; index as i"\r\n id="{{id}}_tag_{{i}}"\r\n class="tag is-{{tag.type}} {{tag.classList}} mr-1"\r\n [ngClass]="{\'text-caption-1\': !isCondensed, \'text-caption-2\': isCondensed, \'is-condensed\': isCondensed, \'pr-0\': tag.isDismissable}"\r\n title="{{tag.tooltip | translate}}">\r\n <i *ngIf="tag.icon" class="ec-icon {{tag.icon}} font-color-muted ec-icon-sm"></i>\r\n {{tag.label | translate}}\r\n <button id="{{id}}_tag_{{i}}_dismissButton"\r\n *ngIf="tag.isDismissable"\r\n (click)="closeTag(tag)">\r\n <i class="ec-icon ec-icon-sm icon-cancel"></i>\r\n </button>\r\n </li>\r\n</ul>',styles:["@-webkit-keyframes spin{0%{transform:rotate(0)}to{transform:rotate(1turn)}}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(1turn)}}:host{display:block}.tags{display:flex;list-style:none;margin:0;padding:0}.tags.is-wrapped{flex-wrap:wrap;margin-top:.25rem}.tags.is-wrapped>.tag{margin-bottom:.25rem}.tag{align-items:center;background-color:rgba(172,188,195,.25);border:2px solid #acbcc3;border-radius:.75rem;display:inline-flex;height:1.5rem;line-height:1.25rem;overflow:hidden;padding:0 .4375rem;text-overflow:ellipsis;vertical-align:top;white-space:nowrap}.tag>.ec-icon:first-child{margin-right:.1875rem}.tag .ec-icon{-moz-osx-font-smoothing:grayscale;-webkit-font-smoothing:antialiased;display:flex;justify-content:center;min-width:1em}.tag .ec-icon,.tag .ec-icon:after,.tag .ec-icon:before{height:auto;width:auto}.tag.is-info{background-color:rgba(172,188,195,.25);border-color:#acbcc3}.tag.is-success{background-color:rgba(193,205,35,.25);border-color:#c1cd23}.tag.is-warning{background-color:rgba(245,212,0,.25);border-color:#f5d400}.tag.is-danger{background-color:rgba(227,52,54,.25);border-color:#e33436}.tag.is-accent{background-color:rgba(144,110,168,.25);border-color:#906ea8}.tag.is-chargeback{background-color:rgba(250,123,46,.25);border-color:#fa7b2e}.tag.is-accrual{background-color:rgba(35,195,205,.25);border-color:#23c3cd}button{align-items:center;background-color:transparent;border:0;cursor:pointer;display:flex;height:100%;padding:0 .4375rem 0 .1875rem}button:focus,button:hover{background-color:rgba(26,26,35,.1);outline:none}.is-condensed{border:0;border-radius:.1875rem;height:1.125rem;justify-content:center;line-height:1.125rem;min-width:1.125rem;padding:0 .25rem}.is-condensed>.ec-icon:first-child{margin-right:.125rem}.is-condensed button{padding-left:.125rem;padding-right:.25rem}"]}]}],_t.ctorParameters=function(){return[]},_t.propDecorators={id:[{type:o.Input}],tags:[{type:o.Input}],wrap:[{type:o.Input}],isCondensed:[{type:o.Input}],tagClosed:[{type:o.Output}]};var Bt=function(){function t(t){this.el=t,this.id="",this.showClear=!0,this.pending=!1,this.required=!1,this.readonly=!1,this.actionClicked=new o.EventEmitter}return Object.defineProperty(t.prototype,"empty",{get:function(){var t,e;return!(null===(t=this.formModel)||void 0===t?void 0:t.value)&&0!==(null===(e=this.formModel)||void 0===e?void 0:e.value)},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,"invalid",{get:function(){var t;return 1==(null===(t=this.formModel)||void 0===t?void 0:t.touched)&&1==this.formModel.invalid},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,"disabled",{get:function(){var t;return 1==(null===(t=this.formModel)||void 0===t?void 0:t.disabled)},enumerable:!1,configurable:!0}),t.prototype.ngAfterViewInit=function(){this.formModel||console.error("Missing [formControl] directive on ec-form-control content.")},t.prototype.onClick=function(){this.focus()},t.prototype.focus=function(){var t=this.el.nativeElement.querySelectorAll("input, textarea, select");t.length&&t.item(0).focus()},t.prototype.clear=function(){var t;null===(t=this.formModel)||void 0===t||t.reset()},t}();Bt.decorators=[{type:o.Component,args:[{selector:"ec-form-control",template:'<ng-content></ng-content>\r\n<i id="{{id + \'_icon\'}}" class="ec-form-control-icon ec-icon {{icon}}"></i>\r\n<i id="{{id + \'_loading\'}}" class="ec-form-control-icon ec-icon icon-loading"></i>\r\n<i id="{{id + \'_required\'}}" class="ec-form-control-icon ec-icon icon-required"></i>\r\n<i id="{{id + \'_invalid\'}}" class="ec-form-control-icon ec-icon icon-invalid"></i>\r\n<i id="{{id + \'_clear\'}}" *ngIf="showClear" class="ec-form-control-clear ec-icon icon-cancel" (click)="clear()"></i>\r\n<i id="{{id + \'_action\'}}" *ngIf="actionIcon" class="ec-form-control-action ec-icon {{actionIcon}}" (click)="actionClicked.emit()"></i>\r\n<div class="ec-focus-ring"></div>',encapsulation:o.ViewEncapsulation.None,styles:["ec-form-control{background-clip:padding-box;background-color:#fff;border:1px solid rgba(26,26,35,.18);border-radius:0;color:#1a1a23;display:flex;font-size:1rem;min-height:2rem;padding:0 .5rem;position:relative;width:100%}ec-form-control>input,ec-form-control>select,ec-form-control>textarea{background-color:transparent;border:0;color:inherit;flex:1 1;min-width:0;order:2}ec-form-control>input::-moz-selection,ec-form-control>select::-moz-selection,ec-form-control>textarea::-moz-selection{background-color:#0084a9;color:#fff}ec-form-control>input::selection,ec-form-control>select::selection,ec-form-control>textarea::selection{background-color:#0084a9;color:#fff}ec-form-control>input::-webkit-input-placeholder,ec-form-control>select::-webkit-input-placeholder,ec-form-control>textarea::-webkit-input-placeholder{color:rgba(26,26,35,.38)}ec-form-control>input::-moz-placeholder,ec-form-control>select::-moz-placeholder,ec-form-control>textarea::-moz-placeholder{color:rgba(26,26,35,.38);opacity:1}ec-form-control>input:-ms-input-placeholder,ec-form-control>select:-ms-input-placeholder,ec-form-control>textarea:-ms-input-placeholder{color:rgba(26,26,35,.38)}ec-form-control>input:-moz-placeholder,ec-form-control>select:-moz-placeholder,ec-form-control>textarea:-moz-placeholder{color:rgba(26,26,35,.38);opacity:1}ec-form-control>input:focus,ec-form-control>select:focus,ec-form-control>textarea:focus{outline:none}ec-form-control>input:focus~.ec-focus-ring,ec-form-control>select:focus~.ec-focus-ring,ec-form-control>textarea:focus~.ec-focus-ring{display:block}ec-form-control .ec-form-control-prefix,ec-form-control .ec-form-control-suffix,ec-form-control>input,ec-form-control>select,ec-form-control>textarea{font-size:inherit;line-height:1.25;padding:.3125rem 0}ec-form-control>textarea{padding:.3125rem 0;resize:none}ec-form-control .ec-form-control-icon{margin-right:.25rem;margin-top:.4375rem;order:1}ec-form-control .ec-form-control-icon:not([class*=icon-]){display:none}ec-form-control .icon-required{color:#ffe433}ec-form-control .ec-form-control-action,ec-form-control .ec-form-control-clear{cursor:pointer;flex:none;height:1.875rem;order:3;width:2rem}ec-form-control .ec-form-control-action:last-of-type,ec-form-control .ec-form-control-clear:last-of-type{margin-right:-.5rem}ec-form-control .ec-form-control-action:hover,ec-form-control .ec-form-control-clear:hover{background-color:#bfe0e9}ec-form-control .ec-form-control-clear{width:1.5rem}ec-form-control .ec-form-control-prefix,ec-form-control .ec-form-control-suffix{color:rgba(26,26,35,.66);cursor:default;flex:none}ec-form-control .ec-form-control-prefix{margin-right:.125rem;order:2}ec-form-control .ec-form-control-suffix{margin-left:.125rem;order:3}ec-form-control .ec-focus-ring{border:.125rem solid #0084a9;border-radius:0;bottom:-1px;display:none;left:-1px;pointer-events:none;position:absolute;right:-1px;top:-1px;z-index:1}ec-form-control.is-pending .icon-invalid,ec-form-control.is-pending .icon-required{display:none}ec-form-control.is-invalid{background-color:#fff8cc;border-color:#ffe433}ec-form-control.is-empty .ec-form-control-clear,ec-form-control.is-invalid .icon-required,ec-form-control.is-required.is-empty .ec-form-control-icon:first-of-type,ec-form-control:not(.is-empty) .icon-required,ec-form-control:not(.is-invalid) .icon-invalid,ec-form-control:not(.is-pending) .icon-loading,ec-form-control:not(.is-required) .icon-required{display:none}ec-form-control.is-disabled,ec-form-control.is-readonly{background-color:rgba(26,26,35,.1)}ec-form-control.is-disabled .ec-form-control-clear,ec-form-control.is-disabled .icon-invalid,ec-form-control.is-disabled .icon-loading,ec-form-control.is-disabled .icon-required,ec-form-control.is-readonly .ec-form-control-clear,ec-form-control.is-readonly .icon-invalid,ec-form-control.is-readonly .icon-loading,ec-form-control.is-readonly .icon-required{display:none}ec-form-control.is-readonly{border-color:transparent;color:#1a1a23}ec-form-control.is-readonly .ec-form-control-action{display:none}ec-form-control.is-disabled:not(.is-readonly){color:rgba(26,26,35,.38);opacity:.6}ec-form-control.is-disabled:not(.is-readonly) .ec-form-control-prefix,ec-form-control.is-disabled:not(.is-readonly) .ec-form-control-suffix{color:inherit}"]}]}],Bt.ctorParameters=function(){return[{type:o.ElementRef}]},Bt.propDecorators={formModel:[{type:o.ContentChild,args:[n.FormControlDirective]}],id:[{type:o.Input}],icon:[{type:o.Input}],actionIcon:[{type:o.Input}],showClear:[{type:o.Input}],pending:[{type:o.Input},{type:o.HostBinding,args:["class.is-pending"]}],required:[{type:o.Input},{type:o.HostBinding,args:["class.is-required"]}],readonly:[{type:o.Input},{type:o.HostBinding,args:["class.is-readonly"]}],empty:[{type:o.HostBinding,args:["class.is-empty"]}],invalid:[{type:o.HostBinding,args:["class.is-invalid"]}],disabled:[{type:o.HostBinding,args:["class.is-disabled"]}],actionClicked:[{type:o.Output}],onClick:[{type:o.HostListener,args:["click"]}]};var jt=function(t){function e(e,o,n){var r=t.call(this,e,o)||this;return r.validationMessageService=e,r.formGroupHelper=o,r.el=n,r.placeholder="",r.options=[],r.autoDefault=!0,r}return v(e,t),e.prototype.ngOnChanges=function(e){e.options&&this.autoDefault&&this.onOptionsChange(e.options.firstChange),t.prototype.ngOnChanges.call(this,e)},e.prototype.ngAfterViewInit=function(){this.autofocus&&this.focus(),this.autoDefault||console.warn("SelectComponent#"+this.id+" has 'autoDefault' set to false and will not select the default option.")},e.prototype.focus=function(){var t=this.el.nativeElement.querySelector("select");t&&t.focus()},e.prototype.onOptionsChange=function(t){var e,o,n=this;if(null!==this.formModel.value&&void 0!==this.formModel.value&&""!==this.formModel.value){if(this.options.every((function(t){return t.value!==n.formModel.value}))){var r=this.required?null===(e=this.options[0])||void 0===e?void 0:e.value:null;this.formModel.setValue(r,{emitEvent:!t})}}else this.required&&this.formModel.setValue(null===(o=this.options[0])||void 0===o?void 0:o.value,{emitEvent:!t})},e}(L);jt.decorators=[{type:o.Component,args:[{selector:"ec-select",template:'<div class="control"\r\n [ngClass]="{\'is-readonly\': readonly, \'is-disabled\': formModel.disabled}">\r\n <label for="{{id}}_select"\r\n *ngIf="label"\r\n ngPreserveWhitespaces>{{label|translate}}</label>\r\n <select [attr.id]="inputId"\r\n tabindex="{{tabindex}}"\r\n [formControl]="formModel"\r\n [attr.required]="required"\r\n [attr.cdkFocusInitial]="autofocus || null">\r\n <option *ngIf="!required"\r\n [ngValue]="null">{{placeholder}}</option>\r\n <option *ngFor="let option of options"\r\n [ngValue]="option.value">{{option.label}}</option>\r\n </select>\r\n</div>',styles:['@-webkit-keyframes spin{0%{transform:rotate(0)}to{transform:rotate(1turn)}}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(1turn)}}:host{color:#1a1a23;display:block;font-family:Roboto,-apple-system,BlinkMacSystemFont,Segoe UI,Oxygen,Ubuntu,Fira Sans,Droid Sans,Helvetica Neue,sans-serif;font-size:1rem;margin-bottom:1rem;width:100%}:host :host-context(.form-condensed){margin-bottom:.5rem}:host .control{display:flex;flex-direction:column;width:100%}:host .control.control-label-bottom{flex-direction:column-reverse}:host .control.control-label-left{flex-direction:row}:host .control.control-label-left label{margin-right:.25rem}:host .control.control-label-right{flex-direction:row-reverse}:host .control.control-label-right label{margin-left:.25rem}:host .control.control-label-left,:host .control.control-label-right{align-items:center}:host .control.control-label-left label,:host .control.control-label-right label{flex:1 1;margin-bottom:0;margin-top:0}:host .control.control-label-left .control-input,:host .control.control-label-right .control-input{flex:2 2}:host .control.is-readonly input,:host .control.is-readonly select{-moz-user-select:none;-ms-user-select:none;-webkit-user-select:none;background-clip:border-box;background-color:rgba(26,26,35,.12);background-image:none;border-color:transparent;color:#1a1a23;opacity:1;overflow:hidden;pointer-events:none;user-select:none;white-space:nowrap}:host .control.invalid .textbox-group-input ::ng-deep .control input.ng-invalid,:host .control.invalid .textbox-group-input ::ng-deep .control input.ng-valid{background-color:#fff8cc;background-image:url(\'data:image/svg+xml;charset=utf8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 32 32"><path fill="rgba(26, 26, 35, 0.66)" d="M20.21 20.21h-8.42L10.95 0h10.1l-.84 20.21zm-8.42 3.37h8.42V32h-8.42z"/></svg>\');background-position:.25em;background-repeat:no-repeat;background-size:1em 1em;padding-left:1.5em}:host .control.invalid .textbox-group-input ::ng-deep .control input.ng-invalid:not(:focus),:host .control.invalid .textbox-group-input ::ng-deep .control input.ng-valid:not(:focus){border-color:#ffe433}:host .control.invalid:not(.open) .textbox-group-btn-right ::ng-deep button{background-color:#fff8cc}:host .control.invalid:not(.open) .textbox-group-btn-right ::ng-deep button:not(:focus){border-color:#ffe433}:host .textbox-group{display:flex;position:relative}:host input:focus,:host select:focus,:host textarea:focus{outline:none}:host label{color:rgba(26,26,35,.66);display:block;font-size:.75rem;line-height:1;margin:.375rem 0}:host select{-moz-appearance:none;-webkit-appearance:none;appearance:none;background-clip:padding-box;background-color:#fff;background-image:none;background-image:url(\'data:image/svg+xml;charset=utf8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 32 32"><path fill="rgba(26, 26, 35, 0.66)" d="M32 8L16 24 0 8z"/></svg>\');background-position:right .5rem center;background-repeat:no-repeat;background-size:.75em .75em;border:.0625rem solid #d2d7d9;border-radius:0;height:2rem;line-height:1.25;padding:.3125em 1.5rem .3125em .5em;width:100%}:host select::-moz-selection{background-color:#0084a9;color:#fff}:host select::selection{background-color:#0084a9;color:#fff}:host select::-webkit-input-placeholder{color:rgba(26,26,35,.38)}:host select::-moz-placeholder{color:rgba(26,26,35,.38);opacity:1}:host select:-ms-input-placeholder{color:rgba(26,26,35,.38)}:host select:-moz-placeholder{color:rgba(26,26,35,.38);opacity:1}:host select:required.is-empty{background-color:#fff;background-image:url(\'data:image/svg+xml;charset=utf8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 32 32"><path fill="%23ffe433" d="M31.32 21.69l-.09.18-2.48 4.35c-.36.54-.77.62-1.25.27-.12 0-.2 0-.2-.09L19.53 22v9.37a1.26 1.26 0 0 1-.72.67h-5.26c-.59 0-.83-.3-.83-.89 0-.12.15-.21.15-.27V22l-8 4.71h-.12c-.42.66-.8.21-1.16-.27L1 21.82a.82.82 0 0 1 .35-1.26l.18-.1L9 16 .87 11.47v-.09c0-.36-.39-.74-.09-1.16l2.75-4.35v-.09c0-.42.82-.54 1.29-.36l8 4.62V.89c0-.59.18-.89.77-.89h5c.65 0 .91.3.91.89V10l7.94-4.53c.48-.29.72-.21 1.08.27l2.32 4.35v.09c.66.48.45.89-.08 1.25L23 16l7.91 4.53v.09c-.04.18.53.54.41 1.07z"/></svg>\');border-color:#d2d7d9}:host select.ng-invalid.ng-touched,:host select:required.is-empty{background-position:.25em;background-repeat:no-repeat;background-size:1em 1em;padding-left:1.5em}:host select.ng-invalid.ng-touched{background-color:#fff8cc;background-image:url(\'data:image/svg+xml;charset=utf8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 32 32"><path fill="rgba(26, 26, 35, 0.66)" d="M20.21 20.21h-8.42L10.95 0h10.1l-.84 20.21zm-8.42 3.37h8.42V32h-8.42z"/></svg>\')}:host select.ng-invalid.ng-touched:not(:focus){border-color:#ffe433}:host select.is-pending.ng-invalid,:host select.is-pending.ng-pending,:host select.is-pending.ng-valid{background-image:url(\'data:image/svg+xml;charset=utf8,<svg xmlns="http://www.w3.org/2000/svg" width="40" height="40" viewBox="0 0 50 50"><path fill="%230084a9" d="M43.935 25.145c0-10.318-8.364-18.683-18.683-18.683-10.318 0-18.683 8.365-18.683 18.683h4.068c0-8.071 6.543-14.615 14.615-14.615s14.615 6.543 14.615 14.615h4.068z"><animateTransform attributeType="xml" attributeName="transform" type="rotate" from="0 25 25" to="360 25 25" dur="0.8s" repeatCount="indefinite"/></path></svg>\');background-position:.25em;background-repeat:no-repeat;background-size:1em 1em;padding-left:1.5em}:host select:focus,:host select:focus.is-empty{border-color:#0084a9;box-shadow:0 0 0 1px #0084a9;position:relative;z-index:1}:host select:disabled{background-color:rgba(26,26,35,.1);border-color:#d2d7d9;color:rgba(26,26,35,.66);opacity:.65}:host select:disabled:required,:host select:disabled:required.is-empty{background-color:rgba(26,26,35,.1);background-image:none;border-color:#d2d7d9;padding-left:.5em}:host select.is-uppercase:not(.is-empty){text-transform:uppercase}:host select:focus{position:static}']}]}],jt.ctorParameters=function(){return[{type:F},{type:R},{type:o.ElementRef}]},jt.propDecorators={placeholder:[{type:o.Input}],options:[{type:o.Input}],autoDefault:[{type:o.Input}]};var Ut=function(){function t(){this.id="",this.internalValue={value:""},this.externalLink=!1,this.condensed=!1,this.target="_self"}return Object.defineProperty(t.prototype,"value",{set:function(t){this.internalValue="string"==typeof t?{value:t}:t||{value:""}},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,"url",{get:function(){return this._url},set:function(t){this.externalLink=!!(null==t?void 0:t.startsWith("http")),this._url=t},enumerable:!1,configurable:!0}),t}();Ut.decorators=[{type:o.Component,args:[{selector:"ec-item-display",template:'<div id="{{id}}_label_0"\r\n class="text-caption-1">{{label | translate}}</div>\r\n\r\n<div id="{{id}}_value_0" class="{{condensed ? \'text-body-2\' : \'text-display-1\'}} {{internalValue.classnames}}"\r\n [class.font-color-hint]="!internalValue.value && internalValue.noValueText"\r\n title="{{internalValue.tooltip}}">\r\n\r\n <ng-container *ngIf="url else content">\r\n <a *ngIf="!externalLink"\r\n id="{{id}}_link"\r\n routerLink="{{url}}"\r\n target="{{target}}">\r\n <ng-container *ngTemplateOutlet="content"></ng-container>\r\n </a>\r\n <a *ngIf="externalLink"\r\n id="{{id}}_link"\r\n href="{{url}}"\r\n target="{{target}}">\r\n <ng-container *ngTemplateOutlet="content"></ng-container>\r\n </a>\r\n </ng-container>\r\n</div>\r\n \r\n \r\n<ng-template #content> \r\n <i *ngIf="internalValue?.icon" class="ec-icon {{internalValue?.icon}}"></i>\r\n <span>{{(internalValue?.value || internalValue?.noValueText) | translate}}</span>\r\n <ng-content></ng-content> \r\n</ng-template>',styles:["@-webkit-keyframes spin{0%{transform:rotate(0)}to{transform:rotate(1turn)}}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(1turn)}}:host{display:inline-block;margin-bottom:1rem;vertical-align:top}.ec-icon{font-size:1em;margin-right:.25em;position:relative;top:.125em}"]}]}],Ut.propDecorators={id:[{type:o.HostBinding,args:["attr.id"]},{type:o.Input}],label:[{type:o.Input}],value:[{type:o.Input}],url:[{type:o.Input}],condensed:[{type:o.Input}],target:[{type:o.Input}]};var Ht=function(){this.selectAllCheckbox=new n.FormControl(!1),this.rowCheckboxes=new n.FormArray([]),this.lastClickedIndex=-1,this.rowAddedOrRemoved=new l.Subject},qt=function(){function t(){this.id="",this._enabled=!0,this.rowIndex=-1,this.lockedColOptions={border:!1,left:0},this.isSelected=!1,this.isHeader=!1,this.dependentCheckboxesReference={controls:[]},this.checkboxAttributeID="",this.destroyed=new l.Subject}return Object.defineProperty(t.prototype,"enabled",{get:function(){return this._enabled},set:function(t){this._enabled=!1!==t},enumerable:!1,configurable:!0}),t.prototype.ngOnInit=function(){var t,e,o;if(this.isHeader=this.rowIndex<0,this.context){var r=null===(e=null===(t=this.context)||void 0===t?void 0:t.rowCheckboxes)||void 0===e?void 0:e.at(this.rowIndex);this.isHeader||r||(r=new n.FormControl(!1),null===(o=this.context)||void 0===o||o.rowCheckboxes.push(r)),this.formControl=this.isHeader?this.context.selectAllCheckbox:r,this.watchForChanges()}else console.error("ecTableSelectableRow requires a defined SelectableTableRowContext to be shared with all instances in one table.")},t.prototype.ngOnChanges=function(t){var e;t.rowIndex&&!this.isHeader&&(this.formControl=this.context.rowCheckboxes.at(this.rowIndex),this.checkboxAttributeID=this.id+"_row"+this.rowIndex+"_ecCheckbox"),t.enabled&&!this.enabled&&!0===(null===(e=this.formControl)||void 0===e?void 0:e.value)&&this.formControl.setValue(!1)},t.prototype.ngOnDestroy=function(){var t=this;if(!this.isHeader&&this.formControl){this.context.rowAddedOrRemoved.next();var e=this.context.rowCheckboxes.controls.findIndex((function(e){return e==t.formControl}));e>=0&&this.context.rowCheckboxes.removeAt(e)}},t.prototype.rowClicked=function(t){var e,o,n;if(!this.isHeader&&this.enabled){var r=null==t?void 0:t.target,i=null===(n=null===(o=null===(e=null==r?void 0:r.classList)||void 0===e?void 0:e.value)||void 0===o?void 0:o.toLowerCase())||void 0===n?void 0:n.includes("row-checkbox");t.ctrlKey||i||this.clearAllRows(),this.formControl.setValue(!this.formControl.value),this.handleShiftSelect(t)}},t.prototype.watchForChanges=function(){var t,e=this;this.isHeader?this.context.rowAddedOrRemoved.pipe(c.debounceTime(10),c.takeUntil(this.destroyed)).subscribe((function(){e.context.lastClickedIndex=-1,e.dependentCheckboxesReference={controls:e.context.rowCheckboxes.controls}})):(this.context.rowAddedOrRemoved.next(),null===(t=this.formControl)||void 0===t||t.valueChanges.pipe(c.takeUntil(this.destroyed)).subscribe((function(t){e.isSelected=t})))},t.prototype.handleShiftSelect=function(t){var e,o=this.context.lastClickedIndex,n=this.rowIndex;if(t.shiftKey&&o>=0){if(this.clearAllRows(),n>o)for(var r=o;r<=n;r++)this.context.rowCheckboxes.at(r).setValue(!0);else if(n<o)for(r=o;r>=n;r--)this.context.rowCheckboxes.at(r).setValue(!0);else n===o&&this.formControl.setValue(!0);null===(e=document.getSelection())||void 0===e||e.removeAllRanges()}else this.context.lastClickedIndex=this.rowIndex},t.prototype.clearAllRows=function(){this.context.rowCheckboxes.controls.forEach((function(t){return t.setValue(!1)}))},t}();qt.decorators=[{type:o.Component,args:[{selector:"[ecTableSelectableRow]",template:'\x3c!-- any elements of the existing table row that must go before the row selection checkbox can be marked with a class of before-checkbox --\x3e\r\n<ng-content select=".before-checkbox"></ng-content>\r\n<ng-container *ngIf="enabled">\r\n <th *ngIf="isHeader"\r\n class="checkbox"\r\n [ecTableLockedColumn]="lockedColOptions">\r\n <ec-checkbox id="{{id}}_selectAll"\r\n class="m-0"\r\n *ngIf="context?.selectAllCheckbox"\r\n [formModel]="context?.selectAllCheckbox"\r\n [dependentCheckboxesGroup]="dependentCheckboxesReference">\r\n </ec-checkbox>\r\n </th>\r\n <td *ngIf="!isHeader && formControl"\r\n class="checkbox"\r\n [ecTableLockedColumn]="lockedColOptions">\r\n <ec-checkbox id="{{id}}_row{{rowIndex}}_checkbox"\r\n [attr.id]="checkboxAttributeID"\r\n class="m-0 row-checkbox"\r\n [formModel]="formControl">\r\n </ec-checkbox>\r\n </td>\r\n</ng-container>\r\n\x3c!-- The rest of the table row --\x3e\r\n<ng-content></ng-content>',styles:[":host.is-enabled:not(.is-header){cursor:pointer}:host .checkbox{padding-left:1px;padding-right:1px;width:1.125rem}:host .checkbox:first-child{padding-left:.5rem;width:1.5625rem}td.checkbox ec-checkbox ::ng-deep *{pointer-events:none}"]}]}],qt.propDecorators={id:[{type:o.HostBinding,args:["attr.id"]},{type:o.Input}],enabled:[{type:o.HostBinding,args:["class.is-enabled"]},{type:o.Input,args:["ecTableSelectableRow"]}],context:[{type:o.Input,args:["selectionContext"]}],rowIndex:[{type:o.Input}],lockedColOptions:[{type:o.Input}],isSelected:[{type:o.HostBinding,args:["class.is-selected"]}],isHeader:[{type:o.HostBinding,args:["class.is-header"]}],rowClicked:[{type:o.HostListener,args:["click",["$event"]]}]};var Wt=function(){function t(t){this.dialogService=t,this.activeDialogEvents=[],this.destroyed=new l.Subject}return t.prototype.ngOnInit=function(){var t=this;this.dialogService.events.pipe(c.filter((function(t){return t instanceof et||t instanceof rt})),c.takeUntil(this.destroyed)).subscribe((function(e){var o,n;if(e instanceof et)t.activeDialogEvents.push(e);else if(e instanceof rt&&t.activeDialogEvents.length>0){var r=t.activeDialogEvents[t.activeDialogEvents.length-1];t.dialogService.triggerEvent(new nt(r.eventId,r.dialogId,null===(o=e.dialogResult)||void 0===o?void 0:o.save,null===(n=e.dialogResult)||void 0===n?void 0:n.context)),t.dialogClosed(r)}}))},t.prototype.ngOnDestroy=function(){this.destroyed.next(),this.destroyed.unsubscribe()},t.prototype.dialogOpened=function(t,e){t.dialogId=e},t.prototype.dialogClosed=function(t){var e=this.activeDialogEvents.findIndex((function(e){return e===t}));e>=0&&this.activeDialogEvents.splice(e,1)},t}();Wt.decorators=[{type:o.Component,args:[{selector:"ec-dialog-group",template:'<ec-dialog *ngFor="let dialog of activeDialogEvents"\r\n [dialogOpenStartEventId]="dialog.eventId"\r\n [size]="dialog.options?.size"\r\n [content]="dialog.content"\r\n [context]="dialog.context"\r\n [options]="dialog.options"\r\n (opened)="dialogOpened(dialog, $event)"\r\n (closed)="dialogClosed(dialog)">\r\n</ec-dialog>',styles:["@-webkit-keyframes spin{0%{transform:rotate(0)}to{transform:rotate(1turn)}}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(1turn)}}ec-dialog:not(:only-child){background-color:transparent}ec-dialog:not(:only-child):last-child,ec-dialog:not(:only-child):nth-last-child(2){background-color:rgba(26,26,35,.25)}"]}]}],Wt.ctorParameters=function(){return[{type:at}]};var Gt={zip:[".zip"],excel:[".xls",".xlsx"]},$t=function(t){function e(e,o){var n=t.call(this,e,o)||this;return n.validationMessageService=e,n.formGroupHelper=o,n.placeholder="Choose file...",n.fileOutput="base64",n}return v(e,t),e.getFormModel=function(t,e){void 0===e&&(e=!1);var o=new n.FormGroup({file:new n.FormControl({value:null,disabled:e},t),name:new n.FormControl({value:null,disabled:e},t),base64FileString:new n.FormControl(null),uploadResult:new n.FormControl(null)});return e&&o.disable(),o},e.prototype.ngOnChanges=function(e){t.prototype.ngOnChanges.call(this,e),this.updateFileTypeAccept()},e.prototype.ngOnInit=function(){var e,o,n=this;t.prototype.ngOnInit.call(this),null===(o=null===(e=this.formModel)||void 0===e?void 0:e.get("name"))||void 0===o||o.valueChanges.pipe(c.takeUntil(this.componentDestroyed)).subscribe((function(t){t||n.formModel.patchValue({file:null,base64FileString:null,uploadResult:null})}))},e.prototype.fileChange=function(t){return x(this,void 0,void 0,(function(){var e,o,n=this;return w(this,(function(r){switch(r.label){case 0:return(e=t.item(0))?((o=new FileReader).onloadend=function(t){return x(n,void 0,void 0,(function(){var t,n;return w(this,(function(r){return n=null===(t=null==o?void 0:o.result)||void 0===t?void 0:t.toString().split(",")[1],this.processFile(e,n),[2]}))}))},this.isBase64FileOutput()?(o.readAsDataURL(e),[3,3]):[3,1]):[3,4];case 1:return[4,this.processFile(e)];case 2:r.sent(),r.label=3;case 3:this.fileInput&&(this.fileInput.nativeElement.value=""),r.label=4;case 4:return[2]}}))}))},e.prototype.updateFileTypeAccept=function(){this.fileType&&("custom"!==this.fileType?this.fileTypeAccept=Gt[this.fileType].join(","):this.customExtensions&&(this.fileTypeAccept=this.customExtensions.join(",")))},e.prototype.processFile=function(t,e){return x(this,void 0,void 0,(function(){var o;return w(this,(function(n){switch(n.label){case 0:if(!this.onFileSelected)return[3,5];n.label=1;case 1:return n.trys.push([1,3,,4]),[4,this.onFileSelected(t)];case 2:return o=n.sent(),this.patchFileResult(t,e,o),[3,4];case 3:return n.sent(),[3,4];case 4:return[3,6];case 5:this.patchFileResult(t,e),n.label=6;case 6:return[2]}}))}))},e.prototype.isBase64FileOutput=function(){return"base64"===this.fileOutput},e.prototype.patchFileResult=function(t,e,o){var n;null===(n=this.formModel)||void 0===n||n.patchValue({file:t,name:null==t?void 0:t.name,base64FileString:null!=e?e:null}),o?this.formModel.patchValue({uploadResult:o}):this.formModel.patchValue({uploadResult:null})},e}(L);$t.decorators=[{type:o.Component,args:[{selector:"ec-file-upload",template:'<ec-form-group [label]="label"\r\n [formGroup]="formModel"\r\n class="mb-0">\r\n <div class="d-flex">\r\n <div class="textbox-group-input d-flex flex-grow">\r\n <input #fileInput\r\n id="{{inputId}}_input"\r\n type="file"\r\n tabindex="-1"\r\n [attr.accept]="fileTypeAccept"\r\n (click)="browseBtn.focus()"\r\n (change)="fileChange($event.target.files)"\r\n [class.has-value]="formModel?.get(\'name\')?.value">\r\n <ec-form-control id="{{inputId}}_formControl"\r\n class="text-truncate"\r\n [required]="required"\r\n [pending]="pending">\r\n <input id="{{inputId}}_name"\r\n [formControl]="formModel?.get(\'name\')"\r\n type="text"\r\n [placeholder]="placeholder"\r\n [tabindex]="-1">\r\n </ec-form-control>\r\n </div>\r\n <ec-button #browseBtn\r\n id="{{inputId}}_browseBtn"\r\n (clicked)="fileInput.click()"\r\n class="textbox-group-btn-right"\r\n type="secondary"\r\n [tabindex]="tabindex"\r\n [disabled]="formModel?.get(\'name\')?.disabled"\r\n label="Browse"\r\n [autofocus]="autofocus">\r\n </ec-button>\r\n </div>\r\n</ec-form-group>',styles:["@-webkit-keyframes spin{0%{transform:rotate(0)}to{transform:rotate(1turn)}}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(1turn)}}:host{display:block;margin-bottom:1rem}.textbox-group-input{position:relative}ec-form-control{margin-bottom:0}ec-form-control ::ng-deep>.ec-focus-ring{display:none!important}input[type=file]{cursor:pointer;display:block;height:100%;left:0;opacity:0;position:absolute;top:0;width:100%;z-index:1}input[type=file].has-value{width:calc(100% - 1.5rem)}"]}]}],$t.ctorParameters=function(){return[{type:F},{type:R}]},$t.propDecorators={placeholder:[{type:o.Input}],fileType:[{type:o.Input}],fileOutput:[{type:o.Input}],customExtensions:[{type:o.Input}],onFileSelected:[{type:o.Input}],fileInput:[{type:o.ViewChild,args:["fileInput",{read:o.ElementRef,static:!0}]}]};var Yt=function(t,e){var o=[];if(t instanceof n.FormControl)o.push(t);else if(t instanceof n.FormGroup)for(var r in t.controls)o.push(t.controls[r]);else t instanceof n.FormArray&&(o=t.controls);o.forEach((function(t){t instanceof n.FormArray?t.controls.forEach((function(t){t instanceof n.FormGroup||t instanceof n.FormArray?Yt(t,e):e(t)})):t instanceof n.FormGroup?Yt(t,e):e(t)}))},Xt=function(t,e,o){return void 0===e&&(e="value"),t.enabled&&null!==t.value&&void 0!==t.value?null===e?t.value:o?t.value[e][o]:t.value[e]:null},Kt=function(){function t(t,e){this.validationMessageService=t,this.translateService=e,this.label="",this.labelPosition="top",this.overrideValidationError="",this.hideValidationMessage=!1,this.validationErrors="",this.allControlsTouched=!1,this.componentDestroyed=new l.Subject}return t.prototype.ngOnInit=function(){return x(this,void 0,void 0,(function(){var t=this;return w(this,(function(e){return this.formGroup&&(this.formGroup.statusChanges.pipe(c.takeUntil(this.componentDestroyed)).subscribe((function(){t.translateValidationMessages(t.getErrors(t.formGroup))})),this.translateValidationMessages(this.getErrors(this.formGroup))),this.id&&(this.attrId=this.id),[2]}))}))},t.prototype.ngOnDestroy=function(){this.componentDestroyed.next(),this.componentDestroyed.unsubscribe()},t.prototype.getErrors=function(t){var e=this;t.markAsUntouched();var o=null,n=!0,r=!1;return Yt(t,(function(t){o=e.assignErrors(t,o),t.untouched&&(n=!1),r=!0})),t.errors&&(o=Object.assign(o||{},t.errors)),n&&r&&t.markAsTouched(),o},t.prototype.assignErrors=function(t,e){return t.errors&&(e=Object.assign(e||{},t.errors)),e},t.prototype.translateValidationMessages=function(t){return x(this,void 0,void 0,(function(){var e;return w(this,(function(o){switch(o.label){case 0:return t?this.overrideValidationError?(this.validationErrors=this.translateService.instant(this.overrideValidationError),[3,3]):[3,1]:[3,4];case 1:return[4,this.validationMessageService.getErrorMessages(t)];case 2:(e=o.sent())&&(this.validationErrors=e.join("; ")),o.label=3;case 3:return[3,5];case 4:this.validationErrors="",o.label=5;case 5:return[2]}}))}))},t}();Kt.decorators=[{type:o.Component,args:[{selector:"ec-form-group",template:'<div class="control control-label-{{labelPosition}}" [class.ec-untouched]="formGroup?.untouched">\r\n <label *ngIf="label" ngPreserveWhitespaces>\r\n\r\n <span id="{{id}}_label">{{label | translate}}</span>\r\n\r\n <span *ngIf="!hideValidationMessage && validationErrors && formGroup?.touched && formGroup?.invalid">{{validationErrors | translate}}</span>\r\n </label>\r\n <ng-content></ng-content>\r\n</div>',styles:['@-webkit-keyframes spin{0%{transform:rotate(0)}to{transform:rotate(1turn)}}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(1turn)}}:host{color:#1a1a23;display:block;font-family:Roboto,-apple-system,BlinkMacSystemFont,Segoe UI,Oxygen,Ubuntu,Fira Sans,Droid Sans,Helvetica Neue,sans-serif;font-size:1rem;margin-bottom:1rem;width:100%}:host :host-context(.form-condensed){margin-bottom:.5rem}:host .control{display:flex;flex-direction:column;width:100%}:host .control.control-label-bottom{flex-direction:column-reverse}:host .control.control-label-left{flex-direction:row}:host .control.control-label-left label{margin-right:.25rem}:host .control.control-label-right{flex-direction:row-reverse}:host .control.control-label-right label{margin-left:.25rem}:host .control.control-label-left,:host .control.control-label-right{align-items:center}:host .control.control-label-left label,:host .control.control-label-right label{flex:1 1;margin-bottom:0;margin-top:0}:host .control.control-label-left .control-input,:host .control.control-label-right .control-input{flex:2 2}:host .control.is-readonly input,:host .control.is-readonly select{-moz-user-select:none;-ms-user-select:none;-webkit-user-select:none;background-clip:border-box;background-color:rgba(26,26,35,.12);background-image:none;border-color:transparent;color:#1a1a23;opacity:1;overflow:hidden;pointer-events:none;user-select:none;white-space:nowrap}:host .control.invalid .textbox-group-input ::ng-deep .control input.ng-invalid,:host .control.invalid .textbox-group-input ::ng-deep .control input.ng-valid{background-color:#fff8cc;background-image:url(\'data:image/svg+xml;charset=utf8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 32 32"><path fill="rgba(26, 26, 35, 0.66)" d="M20.21 20.21h-8.42L10.95 0h10.1l-.84 20.21zm-8.42 3.37h8.42V32h-8.42z"/></svg>\');background-position:.25em;background-repeat:no-repeat;background-size:1em 1em;padding-left:1.5em}:host .control.invalid .textbox-group-input ::ng-deep .control input.ng-invalid:not(:focus),:host .control.invalid .textbox-group-input ::ng-deep .control input.ng-valid:not(:focus){border-color:#ffe433}:host .control.invalid:not(.open) .textbox-group-btn-right ::ng-deep button{background-color:#fff8cc}:host .control.invalid:not(.open) .textbox-group-btn-right ::ng-deep button:not(:focus){border-color:#ffe433}:host .textbox-group{display:flex;position:relative}:host input:focus,:host select:focus,:host textarea:focus{outline:none}label{color:rgba(26,26,35,.66);display:block;font-size:.75rem;line-height:1;margin:.375rem 0}.control.ec-untouched ::ng-deep input.ng-invalid.ng-touched{background-image:none;padding-left:.5rem}.control.ec-untouched ::ng-deep input.ng-invalid.ng-touched:not(.is-empty)~.units-left{left:0}.control.ec-untouched ::ng-deep input:required:not(:disabled).is-empty{background-color:#fff;background-image:url(\'data:image/svg+xml;charset=utf8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 32 32"><path fill="%23ffe433" d="M31.32 21.69l-.09.18-2.48 4.35c-.36.54-.77.62-1.25.27-.12 0-.2 0-.2-.09L19.53 22v9.37a1.26 1.26 0 0 1-.72.67h-5.26c-.59 0-.83-.3-.83-.89 0-.12.15-.21.15-.27V22l-8 4.71h-.12c-.42.66-.8.21-1.16-.27L1 21.82a.82.82 0 0 1 .35-1.26l.18-.1L9 16 .87 11.47v-.09c0-.36-.39-.74-.09-1.16l2.75-4.35v-.09c0-.42.82-.54 1.29-.36l8 4.62V.89c0-.59.18-.89.77-.89h5c.65 0 .91.3.91.89V10l7.94-4.53c.48-.29.72-.21 1.08.27l2.32 4.35v.09c.66.48.45.89-.08 1.25L23 16l7.91 4.53v.09c-.04.18.53.54.41 1.07z"/></svg>\');background-position:.25em;background-repeat:no-repeat;background-size:1em 1em;border-color:#d2d7d9;padding-left:1.5em}.control.ec-untouched ::ng-deep input:required:not(:disabled).is-empty:focus{border-color:#0084a9;box-shadow:0 0 0 1px #0084a9;position:relative;z-index:1}.control-label-left{display:flex}']}]}],Kt.ctorParameters=function(){return[{type:F},{type:i.TranslateService}]},Kt.propDecorators={id:[{type:o.Input}],attrId:[{type:o.HostBinding,args:["attr.id"]}],label:[{type:o.Input}],formGroup:[{type:o.Input}],labelPosition:[{type:o.Input}],overrideValidationError:[{type:o.Input}],hideValidationMessage:[{type:o.Input}]};var Zt=function(){function t(){}return t.tryParseJSON=function(t){if(t)try{return JSON.parse(t)}catch(t){return}},t}(),Jt=function(){function t(t){this.translate=t,this.maxLength=1e4,this.jsonDisplay=new n.FormControl("")}return t.prototype.ngOnChanges=function(){if(this.id&&(this.attrId=this.id),this.jsonString){var t=this.jsonString,e=Zt.tryParseJSON(this.jsonString);e&&(t=JSON.stringify(e,null,2)),t.length>this.maxLength&&(t=t.substr(0,this.maxLength)+"\r\n"+this.translate.instant("MessageTooLong_Truncated_SC")),this.jsonDisplay.patchValue(t)}},t}();Jt.decorators=[{type:o.Component,args:[{selector:"ec-json-display",template:'<ec-button id="{{id}}_copy"\r\n class="copy-button"\r\n *ngIf="jsonDisplay.value"\r\n type="icon"\r\n icon="icon-copy"\r\n [ecCopyButton]="jsonDisplay">\r\n</ec-button>\r\n<pre><code>{{jsonDisplay.value}}</code></pre>',styles:["@-webkit-keyframes spin{0%{transform:rotate(0)}to{transform:rotate(1turn)}}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(1turn)}}:host{background:#354751;border-radius:3px;color:hsla(0,0%,100%,.6);display:block;font-size:.75rem;max-height:15rem;min-height:2.125rem;overflow-x:auto;overflow-y:auto;position:relative;text-align:right}pre{margin-bottom:0;margin-top:-2rem;text-align:left}pre code{display:block;padding:.5rem}.copy-button{position:sticky;top:0}.copy-button ::ng-deep .ec-icon{color:hsla(0,0%,100%,.6)!important}.copy-button ::ng-deep button:hover{background-color:transparent!important}.copy-button ::ng-deep button:hover .ec-icon{color:#fff!important}"]}]}],Jt.ctorParameters=function(){return[{type:i.TranslateService}]},Jt.propDecorators={id:[{type:o.Input}],attrId:[{type:o.HostBinding,args:["attr.id"]}],jsonString:[{type:o.Input}],maxLength:[{type:o.Input}]};var Qt=function(t,e,o){void 0===o&&(o="user"),this.action=t,this.toast=e,this.source=o},te=function(){function t(){this._events=new l.Subject,this.events=this._events.asObservable()}return t.prototype.showToast=function(t,e){var o=new Qt("add",t,e);this._events.next(o)},t.prototype.dismissToast=function(t,e){var o=new Qt("remove",t,e);this._events.next(o)},t}();te.ɵprov=o.ɵɵdefineInjectable({factory:function(){return new te},token:te,providedIn:"root"}),te.decorators=[{type:o.Injectable,args:[{providedIn:"root"}]}],te.ctorParameters=function(){return[]};var ee=function(){function t(t){this.toastService=t,this.open=!1,this.TOAST_ANIMATION_DURATION=250,this.closed=new o.EventEmitter,this.TIMED_TOAST_DURATION=4e3,this.destroyed=new l.Subject}return t.prototype.ngOnInit=function(){var t=this;this.toastService.events.pipe(c.takeUntil(this.destroyed)).subscribe((function(e){"remove"==e.action&&e.toast===t.toastItem&&t.close(e)}))},t.prototype.ngOnChanges=function(t){t.toastItem&&this.toastItem&&(this.id=this.toastItem.id,this.open=!0,this.toastItem.dismissible||this.closeAfterTimer())},t.prototype.ngOnDestroy=function(){this.destroyed.next(),this.destroyed.complete()},t.prototype.closeClicked=function(){this.toastItem&&this.toastService.dismissToast(this.toastItem,"user")},t.prototype.close=function(t){var e=this;this.open=!1,l.timer(this.TOAST_ANIMATION_DURATION).subscribe((function(){e.closed.emit(t)}))},t.prototype.closeAfterTimer=function(){var t=this;l.timer(this.TIMED_TOAST_DURATION).pipe(c.takeUntil(l.race(this.closed,this.destroyed))).subscribe((function(){t.toastItem&&t.toastService.dismissToast(t.toastItem,"auto")}))},t}();ee.decorators=[{type:o.Component,args:[{selector:"ec-toast",template:'<ec-banner id="{{toastItem?.id}}_banner"\r\n [type]="toastItem?.type"\r\n bannerStyle="toast"\r\n [customIcon]="toastItem?.icon"\r\n [showCloseBtn]="toastItem?.dismissible"\r\n [autoHideOnClose]="false"\r\n (closed)="closeClicked()">\r\n <div class="d-flex">\r\n <div id="{{toastItem?.id}}_message"\r\n [innerHTML]="toastItem?.message | translate"></div>\r\n <a id="{{toastItem?.id}}_action"\r\n *ngIf="toastItem?.action && toastItem?.actionLabel"\r\n class="text-link ml-2"\r\n (click)="toastItem!.action!()">{{toastItem?.actionLabel | translate}}</a>\r\n </div>\r\n</ec-banner>',styles:[":host{bottom:0;display:block;left:50%;position:fixed;transform:translate(-50%,150%);transition:transform var(--toast-animation-duration,.25s);transition-timing-function:ease-in;z-index:70}:host.is-open{transform:translate(-50%,calc(var(--toast-bottom, 0rem)*-1 - 1.5rem));transition-timing-function:cubic-bezier(.18,.89,.32,1.28)}"]}]}],ee.ctorParameters=function(){return[{type:te}]},ee.propDecorators={toastItem:[{type:o.Input}],id:[{type:o.HostBinding,args:["attr.id"]}],open:[{type:o.HostBinding,args:["class.is-open"]}],TOAST_ANIMATION_DURATION:[{type:o.HostBinding,args:["style.--toast-animation-duration.ms"]}],closed:[{type:o.Output}]};var oe=function(){},ne=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return v(e,t),e.prototype.trackPageView=function(t,e,o){},e.prototype.trackEvent=function(t,e,o){},e}(oe);ne.ɵprov=o.ɵɵdefineInjectable({factory:function(){return new ne},token:ne,providedIn:"root"}),ne.decorators=[{type:o.Injectable,args:[{providedIn:"root"}]}];var re=function(){function t(t,e){this.toastService=t,this.telemetryService=e,this.dismissibleToastBottom=0,this.pendingToasts=[],this.destroyed=new l.Subject}return t.prototype.ngOnInit=function(){var t=this;this.toastService.events.pipe(c.takeUntil(this.destroyed)).subscribe((function(e){"add"==e.action?(t.addToast(e.toast),t.updateDismissibleToastBottom(),t.trackEvent(e)):"remove"==e.action&&e.toast!==t.currentDismissibleToast&&e.toast!==t.currentTimedToast&&(t.removePendingToast(e.toast),t.trackEvent(e))}))},t.prototype.ngOnDestroy=function(){this.destroyed.next(),this.destroyed.complete()},t.prototype.updateVisibleToast=function(t){t.toast.dismissible?this.currentDismissibleToast=this.getNextToast(!0):this.currentTimedToast=this.getNextToast(!1),this.updateDismissibleToastBottom(),this.trackEvent(t)},t.prototype.addToast=function(t){t.dismissible&&this.currentDismissibleToast||!t.dismissible&&this.currentTimedToast?this.addPendingToast(t):t.dismissible?this.currentDismissibleToast=t:this.currentTimedToast=t},t.prototype.getNextToast=function(t){var e=this.pendingToasts.find((function(e){return e.dismissible===t}));return e&&this.removePendingToast(e),e},t.prototype.addPendingToast=function(t){this.pendingToasts.push(t)},t.prototype.removePendingToast=function(t){var e=this.pendingToasts.indexOf(t);e>-1&&this.pendingToasts.splice(e,1)},t.prototype.updateDismissibleToastBottom=function(){this.currentTimedToast&&this.timedToastEl?this.dismissibleToastBottom=(this.timedToastEl.nativeElement.offsetHeight+8)/16:this.dismissibleToastBottom=0},t.prototype.trackEvent=function(t){var e,o,n,r=this.pendingToasts.filter((function(t){return t.dismissible})),i=this.pendingToasts.filter((function(t){return!t.dismissible}));this.telemetryService.trackEvent(t.action+" toast",{action:t.action,source:t.source,hasDismissiblePending:r.length>0?"yes":"no",dismissiblePendingLength:""+r.length,hasTransientPending:i.length>0?"yes":"no",transientPendingLength:""+i.length,toastId:null!==(e=t.toast.id)&&void 0!==e?e:"",toastType:t.toast.type,toastMessage:t.toast.message,toastDismissible:""+t.toast.dismissible,toastIcon:null!==(o=t.toast.icon)&&void 0!==o?o:"",toastAction:null!==(n=t.toast.actionLabel)&&void 0!==n?n:""})},t}();re.decorators=[{type:o.Component,args:[{selector:"ec-toaster",template:'<ec-toast [toastItem]="currentDismissibleToast"\r\n [style.--toast-bottom.rem]="dismissibleToastBottom"\r\n (closed)="updateVisibleToast($event)">\r\n</ec-toast>\r\n\r\n<ec-toast #timedToast\r\n [toastItem]="currentTimedToast"\r\n (closed)="updateVisibleToast($event)">\r\n</ec-toast>'}]}],re.ctorParameters=function(){return[{type:te},{type:ne}]},re.propDecorators={timedToastEl:[{type:o.ViewChild,args:["timedToast",{static:!1,read:o.ElementRef}]}]};var ie=function(){function t(){this.isDialog=!1,this.status=new K("pending"),this.showHeader=!0,this.moreActionsLabel="Actions",this.secondaryActionLabel="Cancel",this.hideSecondaryAction=!1,this.primaryActionLabel="Save",this.hidePrimaryAction=!1,this.stickyFooter=!0,this.fitContent=!1,this.onPrimaryAction=new o.EventEmitter,this.onSecondaryAction=new o.EventEmitter}return t.prototype.primaryAction=function(t){this.onPrimaryAction&&this.onPrimaryAction.emit(t)},t.prototype.secondaryAction=function(t){this.onSecondaryAction&&this.onSecondaryAction.emit(t)},t}();ie.decorators=[{type:o.Component,args:[{selector:"ec-page-view",template:'<div ecOverlay\r\n [status]="status?.status"\r\n [message]="status?.message"\r\n [displayAsMask]="true"\r\n class="bg-body flex-grow d-flex">\r\n <div id="PageViewScrollContainer" \r\n class="d-flex flex-column flex-grow scroll-y" \r\n [class.is-dialog]="isDialog"\r\n [class.fit-content]="fitContent"\r\n [class.sticky-footer]="stickyFooter && !!footerTemplate"\r\n [class.overlay-visible]="status?.status !== \'hasData\'">\r\n <section>\r\n <ng-content></ng-content> \r\n </section>\r\n \r\n <footer>\r\n <ng-container *ngTemplateOutlet="footerTemplate"></ng-container>\r\n </footer>\r\n\r\n <header *ngIf="showHeader">\r\n \r\n <ol id="breadcrumbs"\r\n *ngIf="breadcrumbs?.length && !isDialog">\r\n <li *ngFor="let crumb of breadcrumbs; last as isLast">\r\n <a *ngIf="crumb.url; else label"\r\n [routerLink]="crumb.url">\r\n <ng-container *ngTemplateOutlet="label"></ng-container>\r\n </a>\r\n <ng-template #label>{{crumb.label}}</ng-template>\r\n </li>\r\n </ol>\r\n \r\n <div *ngIf="!customHeaderTemplate; else customHeaderOutlet" class="titlebar">\r\n <app-page-title *ngIf="!customTitleTemplate; else customTitle" \r\n [title]="title"\r\n [subTitle]="subTitle"\r\n [titleIcon]="titleIcon"\r\n class="title">\r\n </app-page-title>\r\n \r\n <ng-template #customTitle>\r\n <div class="title">\r\n <ng-container *ngTemplateOutlet="customTitleTemplate"></ng-container>\r\n </div>\r\n </ng-template>\r\n \r\n <div class="actions">\r\n <ec-button id="primaryAction"\r\n class="ml-2"\r\n *ngIf="!hidePrimaryAction && onPrimaryAction.observers?.length"\r\n [disabled]="status?.status === \'pending\'"\r\n type="primary"\r\n [label]="primaryActionLabel"\r\n (clicked)="primaryAction($event)">\r\n </ec-button>\r\n <ec-button id="secondaryAction"\r\n class="ml-2"\r\n *ngIf="!hideSecondaryAction && onSecondaryAction.observers?.length"\r\n type="secondary"\r\n [label]="secondaryActionLabel"\r\n (clicked)="secondaryAction($event)">\r\n </ec-button>\r\n <ec-dropdown id="moreActions"\r\n *ngIf="moreActions?.length"\r\n [disabled]="status?.status === \'pending\'"\r\n class="ml-2"\r\n buttonType="secondary"\r\n [label]="moreActionsLabel"\r\n [items]="moreActions">\r\n </ec-dropdown>\r\n <ng-container *ngTemplateOutlet="customActionsTemplate"></ng-container>\r\n </div>\r\n </div>\r\n \r\n <ng-template #customHeaderOutlet> \r\n <div class="page-header">\r\n <ng-container *ngTemplateOutlet="customHeaderTemplate"></ng-container>\r\n </div>\r\n </ng-template>\r\n \r\n <ec-banner *ngIf="errors"\r\n id="pageViewErrors"\r\n [class.border-bottom-0]="!isDialog">\r\n <div [innerHtml]="errors"></div>\r\n </ec-banner>\r\n </header>\r\n </div>\r\n</div>\r\n\r\n',host:{class:"flex-grow"},styles:[':host{display:flex;flex:1 1;min-height:0}header{background-color:#f1f3f4;flex:none;order:1;padding:1rem 1.5rem .5rem;position:sticky;top:0}ol{-ms-grid-column:1;-ms-grid-column-span:2;-ms-grid-row:1;-ms-grid-row-span:1;font-size:.75rem;grid-column:1/3;grid-row:1/2;line-height:1rem;list-style:none;margin:0 0 .25rem;padding:0}ol li{display:inline}ol li:not(:last-child):after{color:rgba(26,26,35,.66);content:" / ";display:inline}.titlebar{-ms-grid-columns:auto -webkit-max-content;-ms-grid-columns:auto max-content;-ms-grid-rows:-webkit-max-content -webkit-max-content;-ms-grid-rows:max-content max-content;display:-ms-grid;display:grid;gap:0 1rem;grid-template-columns:auto -webkit-max-content;grid-template-columns:auto max-content;grid-template-rows:-webkit-max-content -webkit-max-content;grid-template-rows:max-content max-content}.title{-ms-grid-column:1;-ms-grid-column-span:1;-ms-grid-row:2;-ms-grid-row-align:center;-ms-grid-row-span:1;align-self:center;grid-column:1/2;grid-row:2/3}.actions{-ms-grid-column:2;-ms-grid-column-span:1;-ms-grid-row:2;-ms-grid-row-span:1;direction:rtl;grid-column:2/3;grid-row:2/3}ec-banner{margin-top:1rem}section{flex:1 0 auto;min-height:0;order:2;padding:.5rem 1.5rem 0}footer{align-items:center;background-color:#f1f3f4;display:flex;flex:none;height:4.5rem;order:3;padding:0 1.5rem}.is-dialog header{padding:0}.is-dialog .titlebar{background-color:#fff;border-bottom:1px solid rgba(26,26,35,.18);padding:1rem}.is-dialog ec-banner{margin:0}.is-dialog section{padding:1rem 1rem 0}.sticky-footer section{padding-bottom:4.5rem}.sticky-footer footer{bottom:0;position:sticky}.fit-content section{display:flex;flex:1 1;padding-bottom:0}.overlay-visible header{z-index:21}.overlay-visible ec-banner{display:none}']}]}],ie.ctorParameters=function(){return[]},ie.propDecorators={isDialog:[{type:o.Input}],status:[{type:o.Input}],showHeader:[{type:o.Input}],errors:[{type:o.Input}],breadcrumbs:[{type:o.Input}],title:[{type:o.Input}],titleIcon:[{type:o.Input}],subTitle:[{type:o.Input}],moreActionsLabel:[{type:o.Input}],moreActions:[{type:o.Input}],secondaryActionLabel:[{type:o.Input}],hideSecondaryAction:[{type:o.Input}],primaryActionLabel:[{type:o.Input}],hidePrimaryAction:[{type:o.Input}],customTitleTemplate:[{type:o.Input}],customActionsTemplate:[{type:o.Input}],customHeaderTemplate:[{type:o.Input}],footerTemplate:[{type:o.Input}],stickyFooter:[{type:o.Input}],fitContent:[{type:o.Input}],onPrimaryAction:[{type:o.Output}],onSecondaryAction:[{type:o.Output}]};var ae=function(){};ae.decorators=[{type:o.Component,args:[{selector:"app-page-title",template:'<i *ngIf="titleIcon"\r\n class="flex-shrink mr-1 my-1 ec-icon ec-icon-md {{titleIcon}}"></i>\r\n<div>\r\n <h1 *ngIf="title"\r\n class="text-title-1 mb-0 py-1 text-truncate">{{title}}</h1>\r\n <p *ngIf="subTitle"\r\n class="text-caption-1 mb-0 mt-n1 text-truncate">{{subTitle}}</p>\r\n</div>',host:{class:"d-flex"}}]}],ae.propDecorators={title:[{type:o.Input}],titleIcon:[{type:o.Input}],subTitle:[{type:o.Input}]};var se=function(){function t(t){this.userPreferenceService=t,this.lastFormatString="HH:mm:ss"}return t.prototype.transform=function(t,e){var o=this,n="";return this.userPreferenceService.getPreferences().subscribe((function(t){t.preference&&(n=t.preference.timeFormat,e||(n=n.replace(":ss","")),o.lastFormatString=n)})),f.default(t).format(this.lastFormatString)},t}();se.decorators=[{type:o.Pipe,args:[{name:"timeDisplay"}]}],se.ctorParameters=function(){return[{type:z}]};var le=function(){function t(){}return t.forRoot=function(e){return{ngModule:t,providers:[{provide:ne,useClass:e.telemetryService}]}},t}();le.decorators=[{type:o.NgModule,args:[{declarations:[P,G,X,q,lt,Z,O,S,G,E,Ot,B,U,N,H,Q,st,A,se,ut,gt,ft,xt,It,kt,Mt,Pt,Vt,zt,D,At,Ft,Rt,qt,Lt,Dt,Et,Nt,Dt,_t,Bt,jt,Ut,qt,T,Wt,$t,Kt,Jt,ee,re,ie,ae],imports:[e.CommonModule,n.FormsModule,n.ReactiveFormsModule,r.RouterModule,i.TranslateModule,a.A11yModule,s.OverlayModule],providers:[R,at,A,se,ut,Et],exports:[P,G,X,q,lt,Z,O,G,E,Ot,B,U,N,H,Q,st,A,se,gt,ft,xt,It,kt,Mt,Pt,Vt,zt,D,At,Rt,qt,Lt,Nt,Dt,_t,Bt,jt,Ut,T,Wt,$t,Kt,Jt,ee,re,ie,ae]}]}];var ce=function(){},de=function(){};function pe(t,e){var o=d.get(t,e);return t&&"string"==typeof o?o.toLowerCase():t[e]}de.ndash="–";var ue=function(t,e,o,n,r,i){this.label=t,this.type=e||"info",this.icon=n,this.isDismissable=null!=r&&r,this.tooltip=i,o&&(this.classList=o)},he=function(){};he.requiredPlural=function(t){return null!==n.Validators.required(t)?{requiredPlural:!0}:null},he.json=function(t){return t.value&&void 0===Zt.tryParseJSON(t.value)?{json:!0}:null};var me=function(){this.title=""},ge=function(){function t(t){this.classList="d-flex flex-grow",this.title="",this.status=new K("pending","Loading"),this.formGroup=new n.FormGroup({}),this.defaultInvalidFormMessage="PleaseCorrectForm_SC",this.defaultUnknownSaveError="PageBaseUnknownSaveError_SC",this.destroyed=new l.Subject,this._afterViewInitComplete=new l.ReplaySubject,this.afterViewInitComplete=this._afterViewInitComplete,this._errors="",this.errorService=t.get(Tt),this.translateService=t.get(i.TranslateService),this.scrollService=t.get(_),this.router=t.get(r.Router),this.activatedRoute=t.get(r.ActivatedRoute),this.dialogService=t.get(at)}return Object.defineProperty(t.prototype,"errors",{get:function(){return this._errors},enumerable:!1,configurable:!0}),t.prototype.ngOnInit=function(){var t;return x(this,void 0,void 0,(function(){var e;return w(this,(function(o){switch(o.label){case 0:return o.trys.push([0,2,,3]),null===(t=this.status)||void 0===t||t.setStatus("pending","Loading"),this.initPromise=this.onInit(),[4,this.initPromise];case 1:return o.sent(),[3,3];case 2:return e=o.sent(),this.onError(e),[3,3];case 3:return[2]}}))}))},t.prototype.onAfterViewInit=function(){return x(this,void 0,void 0,(function(){return w(this,(function(t){return[2]}))}))},t.prototype.ngAfterViewInit=function(){var t;return x(this,void 0,void 0,(function(){var e,o;return w(this,(function(n){switch(n.label){case 0:return n.trys.push([0,3,,4]),[4,this.initPromise];case 1:return e=n.sent(),this.parseInitResult(e),[4,this.onAfterViewInit()];case 2:return n.sent(),this._afterViewInitComplete.next(),this._afterViewInitComplete.complete(),"pending"===(null===(t=this.status)||void 0===t?void 0:t.status)&&this.status.setStatus("hasData"),this.setUpRouterSubscriptions(),[3,4];case 3:return o=n.sent(),this.onError(o),[3,4];case 4:return[2]}}))}))},t.prototype.onNavigationEnd=function(){},t.prototype.reload=function(){this._afterViewInitComplete=new l.ReplaySubject,this.ngOnInit(),this.ngAfterViewInit()},t.prototype.applyModelUpdates=function(){return x(this,void 0,void 0,(function(){return w(this,(function(t){return[2]}))}))},t.prototype.saveToApi=function(){return x(this,void 0,void 0,(function(){return w(this,(function(t){return[2]}))}))},t.prototype.onSaveComplete=function(t){},t.prototype.onSave=function(t){var e;return x(this,void 0,void 0,(function(){var t,o,n=this;return w(this,(function(r){switch(r.label){case 0:if(this.formGroup.markAllAsTouched(),!this.formGroup.valid)return[3,6];null===(e=this.status)||void 0===e||e.setStatus("pending","Saving"),r.label=1;case 1:return r.trys.push([1,4,,5]),[4,this.applyModelUpdates()];case 2:return r.sent(),[4,this.saveToApi()];case 3:return t=r.sent()||-1,this._errors="",this.onSaveComplete(t),[3,5];case 4:return o=r.sent(),this.showErrorBanner(o,this.defaultUnknownSaveError),[3,5];case 5:return[3,7];case 6:""===this.errors&&this.showErrorBanner(this.defaultInvalidFormMessage),this.scrollContainerSelector&&setTimeout((function(){n.scrollService.scrollToItem(n.scrollContainerSelector,".ng-invalid")})),r.label=7;case 7:return[2]}}))}))},t.prototype.ngOnDestroy=function(){this.destroyed.next(),this.destroyed.unsubscribe()},t.prototype.onError=function(t){this.errorService.logConsoleError(t),this.showErrorOverlay(t)},t.prototype.showErrorOverlay=function(t){var e=this;this.getErrorMessage(t).subscribe((function(t){var o;null===(o=e.status)||void 0===o||o.setStatus("error",t)}))},t.prototype.showErrorBanner=function(t,e){var o=this;this.getErrorMessage(t,e).subscribe((function(t){var e;o._errors=t,null===(e=o.status)||void 0===e||e.setStatus("hasData")}))},t.prototype.getErrorMessage=function(t,e){var o=this.errorService.parseApiError(t,e);return this.translateService.get(o)},t.prototype.parseInitResult=function(t){this.initResult=t,this.title=t.title,this.breadcrumbs=t.breadcrumbs},t.prototype.setUpRouterSubscriptions=function(){var t=this;this.navigationEndSubscription||this.destroyed.closed||(this.navigationEndSubscription=this.router.events.pipe(c.takeUntil(this.destroyed),c.filter((function(t){return t instanceof r.NavigationEnd}))).subscribe((function(e){try{t.onNavigationEnd()}catch(e){t.onError(e)}})))},t}();ge.decorators=[{type:o.Directive}],ge.ctorParameters=function(){return[{type:o.Injector}]},ge.propDecorators={classList:[{type:o.HostBinding,args:["class"]}]};var fe=new MouseEvent("click");var be=function(){function t(t){this.suffix=t,this.currentLang="en_US"}return t.prototype.get=function(t,e){return l.of(t+(this.suffix||""))},t.prototype.stream=function(t,e){return l.of(t+(this.suffix||""))},t.prototype.instant=function(t,e){return t+(this.suffix||"")},t.prototype.setTranslation=function(t,e,o){},t.prototype.setDefaultLang=function(t){},t.prototype.use=function(t){},t}(),ye=function(){function t(){}return t.prototype.translateObjectArray=function(t,e){return Promise.resolve(t)},t.prototype.translateObjectProperty=function(t,e,o){return l.of(t)},t.prototype.getKendoLocaleId=function(){return"en"},t.prototype.translateCorePopValue=function(t,e){return e},t.prototype.setLanguage=function(){},t}(),ve=function(){function t(t){this._component=t}return Object.defineProperty(t.prototype,"controls",{get:function(){return this._component.formGroup.controls},enumerable:!1,configurable:!0}),t.prototype.initialize=function(){return x(this,void 0,void 0,(function(){return w(this,(function(t){switch(t.label){case 0:return[4,this._component.ngOnInit()];case 1:return t.sent(),[4,this._component.ngAfterViewInit()];case 2:return t.sent(),[2]}}))}))},t.prototype.clickSave=function(){return x(this,void 0,void 0,(function(){return w(this,(function(t){switch(t.label){case 0:return[4,this._component.onSave(fe)];case 1:return t.sent(),[2]}}))}))},t}(),xe=function(){function t(){}return t.getComponentInjector=function(){return o.Injector.create({providers:k(this.CoreProviders,this.ComponentProviders)})},t}();xe.CoreProviders=[{provide:r.Router,useFactory:ht,deps:[]},{provide:_,useFactory:function(){return ct.createSpy(_)},deps:[]},{provide:r.ActivatedRoute,useFactory:function(){return new mt},deps:[]}],xe.ComponentProviders=[{provide:i.TranslateService,useFactory:function(){return new be("-T")},deps:[]},{provide:Tt,deps:[]},{provide:at,useFactory:function(){return ct.createSpy(at)},deps:[]}],t.AppBarComponent=kt,t.AvatarComponent=It,t.BannerComponent=O,t.ButtonComponent=P,t.CacheService=C,t.CheckboxComponent=ft,t.ClickAreaForDirective=Vt,t.CollapsibleToggleComponent=zt,t.ComboboxComponent=B,t.ComponentsModule=le,t.ConfirmComponent=Q,t.ConfirmDialogContext=J,t.CopyButtonDirective=Nt,t.CustomValidators=he,t.DateDisplayPipe=A,t.DateTimeHelper=V,t.DialogCloseDuration=100,t.DialogCloseEvent=nt,t.DialogCloseLatestEvent=rt,t.DialogComponent=st,t.DialogEvent=tt,t.DialogGroupComponent=Wt,t.DialogOpenDuration=125,t.DialogOpenEndEvent=ot,t.DialogOpenStartEvent=et,t.DialogResult=it,t.DialogService=at,t.DropdownComponent=H,t.ErrorService=Tt,t.FileTypeExtensions=Gt,t.FileUploadComponent=$t,t.FormControlBase=L,t.FormControlComponent=Bt,t.FormGroupComponent=Kt,t.FormGroupHelper=R,t.IfViewportWidthDirective=Pt,t.ItemDisplayComponent=Ut,t.JsonDisplayComponent=Jt,t.JsonHelper=Zt,t.MenuComponent=U,t.MockActivatedRoute=mt,t.MockDateDisplayPipe=ut,t.MockDialog=dt,t.MockDialogContent=pt,t.MockTranslateService=be,t.MockTranslationHelperService=ye,t.NavGroup=W,t.NavItemActiveDirective=q,t.NumericboxComponent=xt,t.Overlay=K,t.PageBaseComponent=ge,t.PageBaseComponentTestHelper=ve,t.PageBaseComponentTestInjectorFactory=xe,t.PageInitResult=me,t.PageTitleComponent=ae,t.PageViewComponent=ie,t.PanelCloseDuration=225,t.PanelOpenDuration=250,t.PopoverComponent=Lt,t.PopupContainerDirective=N,t.RadioButtonComponent=gt,t.RadioButtonOption=ce,t.ResizableColumnComponent=T,t.RowCountPipe=Et,t.ScrollService=_,t.SearchableTableComponent=Ot,t.SelectComponent=jt,t.SpinnerComponent=lt,t.SplashComponent=Mt,t.SplashService=Ct,t.SpyFactory=ct,t.TableComponent=E,t.TableLockedColumnComponent=Rt,t.TableMasterHeaderRowComponent=At,t.TableMasterRowComponent=D,t.TablePaginationComponent=Dt,t.TableSelectableRowComponent=qt,t.TableSelectableRowContext=Ht,t.TabsComponent=G,t.Tag=ue,t.TagsComponent=_t,t.TelemetryBaseService=oe,t.TextboxComponent=X,t.TimeDisplayPipe=se,t.ToastComponent=ee,t.ToastEvent=Qt,t.ToastService=te,t.ToasterComponent=re,t.UnicodeStrings=de,t.UserPreferenceService=z,t.ValidationMessageService=F,t.ViewOverlayComponent=Z,t.WindowService=j,t.canadianPostalCodeRegex=/^[a-zA-Z][0-9][a-zA-Z] [0-9][a-zA-Z][0-9]$/,t.clickEvent=fe,t.dateInputFormatRegex=/^[0-9./-]+$/,t.findAllSpacesPattern=/ /g,t.forEachFormControl=Yt,t.getApiError=function(t){return{error:{status:{message:t}}}},t.getControlValue=Xt,t.getDecimalPattern=yt,t.integerPattern=bt,t.isApiError=St,t.menuAnimationSpeed=350,t.mockRouterFactory=ht,t.numericboxValidation=vt,t.orderByIgnoreCase=function(t,e,o){var n;return n=e.map((function(t){return function(e){return pe(e,t)||""}})),d.orderBy(t,n,o)},t.otherZipCodeRegex=/.*/,t.phoneNumberValidationPattern=$,t.sortByIgnoreCase=function(t,e){var o;return o=e.map((function(t){return function(e){return pe(e,t)}})),d.sortBy(t,o)},t.textboxValidation=function(t){return function(e){var o=[];return t.valid=!0,t.required&&o.push(n.Validators.required),void 0!==t.minLength&&o.push(n.Validators.minLength(t.minLength)),void 0!==t.maxLength&&o.push(n.Validators.maxLength(t.maxLength)),void 0!==t.pattern&&o.push(n.Validators.pattern(t.pattern)),o.forEach((function(o){o(e)&&(t.valid=!1)})),t.valid?null:{textbox:t}}},t.unitedStatesZipCodeRegex=/^[0-9-]+$/,t.urlValidationPattern=Y,t.validateFormGroupValuesAreUnique=function(t,e,o){void 0===e&&(e="value");var n={};Yt(t,(function(t){var r=Xt(t,e,o);null!==r&&""!==r&&("string"==typeof r&&(r=r.toLowerCase()),n.hasOwnProperty(r)?n[r]=n[r]+1:n[r]=1)})),Yt(t,(function(t){var r=Xt(t,e,o);if(null!==r&&""!==r)if("string"==typeof r&&(r=r.toLowerCase()),n[r]>1)t.setErrors(Object.assign({notUnique:!0},t.errors));else{var i=d.cloneDeep(t.errors);i&&i.hasOwnProperty("notUnique")&&delete i.notUnique,i&&0===Object.keys(i).length&&(i=null),t.setErrors(i)}}))},t.ɵa=S,t.ɵb=M,t.ɵc=wt,t.ɵd=Ft,t.ɵe=ne,Object.defineProperty(t,"__esModule",{value:!0})}));
|
|
2
2
|
//# sourceMappingURL=energycap-components.umd.min.js.map
|