@energycap/components 0.26.4 → 0.26.6

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.
@@ -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("rxjs"),require("rxjs/operators"),require("lodash"),require("moment"),require("popper.js"),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","rxjs","rxjs/operators","lodash","moment","popper.js","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.rxjs,e.rxjs.operators,e.lodash,e.moment,e.Popper,e.ngxClipboard)}(this,(function(e,t,o,n,r,i,a,s,l,c,d,p,u){"use strict";function h(e){return e&&"object"==typeof e&&"default"in e?e:{default:e}}var m=h(d),g=h(p),f=function(e,t){return(f=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 b(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}f(e,t),e.prototype=null===t?Object.create(t):(o.prototype=t.prototype,new o)}function y(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 v(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 x(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 w(){for(var e=[],t=0;t<arguments.length;t++)e=e.concat(x(arguments[t]));return e}Object.create;var I=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}();I.ɵprov=o.ɵɵdefineInjectable({factory:function(){return new I},token:I,providedIn:"root"}),I.decorators=[{type:o.Injectable,args:[{providedIn:"root"}]}];var k=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}();k.decorators=[{type:o.Directive}],k.ctorParameters=function(){return[{type:o.Renderer2},{type:I},{type:Document,decorators:[{type:o.Inject,args:[t.DOCUMENT]}]}]},k.propDecorators={rememberWidth:[{type:o.Input}],id:[{type:o.Input}]};var C=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 s.Subject,i}return b(t,e),t.prototype.ngOnInit=function(){var e=this;this.initResizableColumns(),this.resizableColumns.changes.pipe(l.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}(k);C.decorators=[{type:o.Directive,args:[{selector:"[ecResizableTable]"}]}],C.ctorParameters=function(){return[{type:o.ElementRef},{type:o.Renderer2},{type:I},{type:Document,decorators:[{type:o.Inject,args:[t.DOCUMENT]}]}]},C.propDecorators={isResizable:[{type:o.Input,args:["ecResizableTable"]}],containerEl:[{type:o.Input}],sortableTable:[{type:o.Input}],resizableColumns:[{type:o.Input}]};var M=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}();M.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}"]}]}],M.ctorParameters=function(){return[{type:o.Renderer2},{type:o.ElementRef}]},M.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 S=function(){function e(e){this.el=e,this.onResize=new o.EventEmitter}return e.prototype.emitWidth=function(e){this.onResize.emit(e)},e}();S.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'}]}],S.ctorParameters=function(){return[{type:o.ElementRef}]},S.propDecorators={onResize:[{type:o.Output}]};var T=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 s.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&&c.isEqual(t,this.currentSort)||this.onSort(t.field,t.direction)}},e.prototype.ngOnInit=function(){this.selectionContext&&(this.selectable=!0)},e.prototype.ngAfterContentInit=function(){var e=this;this.hasMasterDetailRows=!!this.masterRows.length,this.masterRows.changes.pipe(l.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(l.takeUntil(this.destroyed)).subscribe((function(t){e.hasSelection=t.some((function(e){return e}))}))},e}();T.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}']}]}],T.ctorParameters=function(){return[{type:o.Renderer2},{type:o.ElementRef}]},T.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"]}],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:[M,{descendants:!0}]}],_resizableColumns:[{type:o.ContentChildren,args:[S,{descendants:!0}]}],searchableTableResizableColumns:[{type:o.Input,args:["resizableColumns"]}]};var D=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}();D.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}"]}]}],D.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 E=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}();E.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(.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}"]}]}],E.ctorParameters=function(){return[]},E.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 O=function(){function e(){}return e.isEndOfTime=function(e){var t=this.endOfTime;return this.isSameDay(e,t)},e.isSameDay=function(e,t){return m.default(e).isSame(m.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,m.default(e).isBetween(t,o,"day",i)},e.stringToDate=function(e){return null==e?e:m.default(e).toDate()},e}();O.beginningOfTime=new Date(1899,11,31),O.endOfTime=new Date(3e3,0,1),O.defaultAccountMeterEffectiveDate=new Date(2010,0,1),O.defaultAccountServiceEffectiveDate=new Date(2010,0,1),O.minDatePickerDate=new Date(1980,0,1),O.maxDatePickerDate=new Date(3e3,0,1,23,59,59),O.defaultDateFormat="yyyy-MM-dd",O.defaultTimeFormat="HH:mm:ss",O.defaultTimestampFormat=O.defaultDateFormat+" "+O.defaultTimeFormat,O.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"}],O.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"],O.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"],O.timeFormat="HH:mm:ss";var P=function(){function e(){}return e.prototype.getPreferences=function(){return s.of({preference:{dateFormat:"MM/DD/YYYY",timeFormat:"h:mm:ss a"}})},e}();P.ɵprov=o.ɵɵdefineInjectable({factory:function(){return new P},token:P,providedIn:"root"}),P.decorators=[{type:o.Injectable,args:[{providedIn:"root"}]}];var z=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&&m.default(e).isValid()&&(t||!O.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=m.default(e).format(this.lastFormatString)),i},e}();z.decorators=[{type:o.Pipe,args:[{name:"dateDisplay"}]}],z.ctorParameters=function(){return[{type:P}]};var V=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"))}}if(t.length>0)return s.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}();V.ɵprov=o.ɵɵdefineInjectable({factory:function(){return new V(o.ɵɵinject(i.TranslateService),o.ɵɵinject(z))},token:V,providedIn:"root"}),V.decorators=[{type:o.Injectable,args:[{providedIn:"root"}]}],V.ctorParameters=function(){return[{type:i.TranslateService},{type:z}]};var A=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=w(t);(r||!o&&0===r)&&i.push(n.Validators.required),i.length>0?e.setValidators(i):e.clearValidators(),e.updateValueAndValidity({emitEvent:!1})}},e}();A.ɵprov=o.ɵɵdefineInjectable({factory:function(){return new A},token:A,providedIn:"root"}),A.decorators=[{type:o.Injectable,args:[{providedIn:"root"}]}];var F=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 s.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(l.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 y(this,void 0,void 0,(function(){var e,t;return v(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}();F.decorators=[{type:o.Directive}],F.ctorParameters=function(){return[{type:V},{type:A}]},F.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 L=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=s.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 g.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}();L.GlobalPopupRef=void 0,L.decorators=[{type:o.Directive,args:[{selector:"[ecPopup]"}]}],L.ctorParameters=function(){return[{type:o.TemplateRef},{type:o.ViewContainerRef},{type:void 0,decorators:[{type:o.Inject,args:[t.DOCUMENT]}]},{type:o.Renderer2}]},L.propDecorators={popup:[{type:o.Input,args:["ecPopup"]}],popperOptions:[{type:o.Input,args:["options"]}]};var R=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}();R.ɵprov=o.ɵɵdefineInjectable({factory:function(){return new R},token:R,providedIn:"root"}),R.decorators=[{type:o.Injectable,args:[{providedIn:"root"}]}],R.ctorParameters=function(){return[]};var N=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 b(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(l.takeUntil(this.componentDestroyed)).subscribe((function(e){return t.formModelChanged(e)})),this.textboxFormModel.statusChanges.pipe(l.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(l.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(l.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 y(this,void 0,void 0,(function(){return v(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}(F);N.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}']}]}],N.ctorParameters=function(){return[{type:V},{type:A},{type:i.TranslateService},{type:R}]},N.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:[L]}],addNewButton:[{type:o.ViewChild,args:["addNewButton"]}]};var _=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=s.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 y(this,void 0,void 0,(function(){return v(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 y(this,void 0,void 0,(function(){return v(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}();_.ɵprov=o.ɵɵdefineInjectable({factory:function(){return new _(o.ɵɵinject(r.Router),o.ɵɵinject(r.ActivatedRoute))},token:_,providedIn:"root"}),_.decorators=[{type:o.Injectable,args:[{providedIn:"root"}]}],_.ctorParameters=function(){return[{type:r.Router},{type:r.ActivatedRoute}]};var B=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}();B.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}"]}]}],B.ctorParameters=function(){return[{type:o.ElementRef},{type:o.Renderer2},{type:_},{type:R}]},B.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 U=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 s.Subject}return e.prototype.ngOnInit=function(){var e=this;this.popup.popperStatusChange.pipe(l.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}();U.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}"]}]}],U.ctorParameters=function(){return[]},U.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:[B,{read:o.ElementRef}]}],popup:[{type:o.ViewChild,args:[L,{static:!0}]}]};var j=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 s.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(l.takeUntil(this.destroyed),l.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}();j.decorators=[{type:o.Directive,args:[{selector:"[ecNavItemActive]"}]}],j.ctorParameters=function(){return[{type:r.Router},{type:o.ElementRef},{type:o.Renderer2},{type:r.ActivatedRoute}]},j.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 H=function(){function e(e,t){this.items=[],this.selectedChanges=new s.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}(),q=function(){function e(){this.id="",this.tabindex=0,this.tabStyle="tabs",this.tabs=new H}return e.prototype.selectTab=function(e,t){t.disabled||"click"!==e.type&&("keypress"!==e.type||"Enter"!==e.key)||(this.tabs.selected=t)},e}();q.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}"]}]}],q.ctorParameters=function(){return[]},q.propDecorators={id:[{type:o.Input}],tabindex:[{type:o.Input}],tabStyle:[{type:o.Input}],tabs:[{type:o.Input,args:["tabGroup"]}]};var W=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 b(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}(F);W.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-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-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}']}]}],W.ctorParameters=function(){return[{type:V},{type:A},{type:i.TranslateService}]},W.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 G=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}(),$=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}();$.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:#8c9ca5;font-size:1.25rem}.message.error{color:#cd1d20;font-size:1.25rem}"]}]}],$.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 Y=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=""},X=function(){function e(){this.dialogId="Confirm",this.formGroup=new n.FormGroup({}),this.status=new G("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,w(this.context.textboxValidators)),this.formGroup.addControl("textbox",new n.FormControl("",e))}},e.prototype.doInlineConfirmAction=function(){return y(this,void 0,void 0,(function(){var e,t=this;return v(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}();X.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}"]}]}],X.ctorParameters=function(){return[]},X.propDecorators={context:[{type:o.Input}],onDialogSave:[{type:o.Output}],onDialogCancel:[{type:o.Output}]};var K=function(e,t,o){void 0===t&&(t=""),void 0===o&&(o="openStart"),this.eventId=e,this.dialogId=t,this.dialogAction=o},Z=function(e){function t(t,o,n){var r=e.call(this,c.uniqueId())||this;return r.content=t,r.context=o,r.options=n,r}return b(t,e),t}(K),J=function(e){function t(t,o){return e.call(this,t,o,"open")||this}return b(t,e),t}(K),Q=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 te(n,r),i}return b(t,e),t}(K),ee=function(e){function t(t){var o=e.call(this,"latest","latest","closeLatest")||this;return o.dialogResult=t,o}return b(t,e),t}(K),te=function(e,t){this.save=e,this.context=t},oe=function(){function e(){this.events=new s.Subject}return e.prototype.openDialog=function(e,t,o,n){(n=n||{}).size=t;var r=new Z(e,o,n),i=this.events.pipe(l.skipWhile((function(e){return!(e instanceof Q)||e.eventId!==r.eventId})),l.map((function(e){return e.dialogResult})),l.take(1));return this.triggerEvent(r),i},e.prototype.closeLatestDialog=function(e){this.triggerEvent(new ee(e))},e.prototype.confirm=function(e){return this.openDialog(X,"small",e)},e.prototype.triggerEvent=function(e){this.events.next(e)},e}();oe.ɵprov=o.ɵɵdefineInjectable({factory:function(){return new oe},token:oe,providedIn:"root"}),oe.decorators=[{type:o.Injectable,args:[{providedIn:"root"}]}];var ne=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 te(!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 y(this,void 0,void 0,(function(){var a,c,d=this;return v(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 te(!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):(c=this.componentFactoryResolver.resolveComponentFactory(e),this.componentRef=this.contentContainer.createComponent(c)),this.isOpen=!0,this.openDialogComponent(t),[4,s.timer(this.displayAsPanel?250:125).pipe(l.take(1),l.tap((function(){var e=d.getDialogId();d.fadeIn=!1,d.opened.emit(e),d.dialogService.triggerEvent(new J(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 Q(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(l.takeUntil(this.closed)).subscribe((function(){t.close(new te(!1))})),o.onDialogSave.pipe(l.takeUntil(this.closed)).subscribe((function(e){t.close(new te(!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(l.takeUntil(this.closed),l.take(1)).subscribe((function(){e.close(new te(!1))}))},e.prototype.getDialogId=function(){var e;return(null===(e=this.componentRef)||void 0===e?void 0:e.instance.dialogId)||""},e}();ne.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}"]}]}],ne.ctorParameters=function(){return[{type:o.ComponentFactoryResolver},{type:_},{type:oe},{type:Document,decorators:[{type:o.Inject,args:[t.DOCUMENT]}]}]},ne.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 re=function(){};re.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 ie=function(){function e(){}return e.createSpy=function(e){var t=Object.getOwnPropertyNames(e.prototype);return jasmine.createSpyObj(t)},e}(),ae=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 y(this,void 0,void 0,(function(){return v(this,(function(e){return this.lastContext=t,this.componentRef={instance:new se},this.opened.emit(),[2]}))}))},e.prototype.close=function(e){this.closed.emit(e)},e}();ae.decorators=[{type:o.Directive}],ae.propDecorators={size:[{type:o.Input}],opened:[{type:o.Output}],closed:[{type:o.Output}]};var se=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 s.Subject},le=function(){function e(){}return e.prototype.transform=function(e){return"01/01/2017"},e}();function ce(){var e=ie.createSpy(r.Router);return e.isActive.and.returnValue(!1),e.navigate.and.returnValue(Promise.resolve(!0)),Object.defineProperty(e,"events",{value:new s.Subject,configurable:!0}),Object.defineProperty(e,"url",{value:"/current/route/url",writable:!0}),e}le.decorators=[{type:o.Pipe,args:[{name:"dateDisplay"}]}];var de=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 s.Subject,this.queryParamMap=new s.Subject,this.routeConfig={}};de.decorators=[{type:o.Injectable}];var pe=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 b(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}(F);pe.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%)}']}]}],pe.ctorParameters=function(){return[{type:V},{type:A}]},pe.propDecorators={type:[{type:o.Input}],options:[{type:o.Input}],direction:[{type:o.Input}],name:[{type:o.Input}],inputElement:[{type:o.ViewChild,args:["radioInput"]}]};var ue=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 s.Subject,n}return b(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(l.distinctUntilChanged(),l.takeUntil(s.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(l.distinctUntilChanged(),l.takeUntil(s.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}(F);ue.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}']}]}],ue.ctorParameters=function(){return[{type:V},{type:A}]},ue.propDecorators={name:[{type:o.Input}],dependentCheckboxesGroup:[{type:o.Input}],ignoreDisabledDependents:[{type:o.Input}],inputElement:[{type:o.ViewChild,args:["checkboxInput",{static:!0}]}]};var he=new RegExp("^(-)?([\\d]+)?$"),me=function(e){var t="{0,"+e.toString()+"}";return new RegExp("^((((-)?\\d+\\.?\\d"+t+"?)|((-)?\\.?\\d"+t+")))?$")},ge=function(e,t,o,n){return function(r){var i=!1;if(r.value&&""!==r.value){if((o&&o>0?me(o):n?me(n):he).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}},fe=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 b(t,e),t.prototype.ngAfterViewInit=function(){var e=this;this.autoUpdateFormModel&&this.textboxFormModel.valueChanges.pipe(l.debounceTime(300),l.distinctUntilChanged(),l.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(l.takeUntil(this.componentDestroyed)).subscribe((function(){t.formModel.enabled&&t.formModel.setErrors(t.textboxFormModel.errors)})),this.formModel.statusChanges.pipe(l.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(l.filter((function(){return!t.autoUpdatingFormModel})),l.takeUntil(this.componentDestroyed)).subscribe((function(e){t.textboxFormModel.setValue(t.formatDisplayNumber(e))})),this.leftUnits&&this.textboxFormModel.statusChanges.pipe(l.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(ge(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}(F);fe.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}']}]}],fe.ctorParameters=function(){return[{type:V},{type:A},{type:o.Renderer2}]},fe.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:[W,{read:o.ElementRef,static:!0}]}],textboxInput:[{type:o.ViewChild,args:["textbox",{static:!0}]}]};var be=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}();be.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)}"]}]}],be.ctorParameters=function(){return[{type:o.ElementRef},{type:o.Renderer2}]},be.propDecorators={user:[{type:o.Input}]};var ye=function(){this.user={},this.userMenuItems=[],this.userMenuWidth=160,this.userMenuTabindex=0,this.iconPath="/assets/images/icon.svg"};ye.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 [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}"]}]}],ye.propDecorators={user:[{type:o.Input}],userMenuItems:[{type:o.Input}],userMenuWidth:[{type:o.Input}],userMenuTabindex:[{type:o.Input}],iconPath:[{type:o.Input}]};var ve=function(){function e(){this._splashVisibility=new s.Subject,this.splashVisibility=this._splashVisibility}return e.prototype.showSplash=function(){this._splashVisibility.next(!0)},e.prototype.hideSplash=function(){this._splashVisibility.next(!1)},e}();ve.ɵprov=o.ɵɵdefineInjectable({factory:function(){return new ve},token:ve,providedIn:"root"}),ve.decorators=[{type:o.Injectable,args:[{providedIn:"root"}]}],ve.ctorParameters=function(){return[]};var xe=function(){function e(e){this.splashService=e,this.isVisible=!0,this.stopAnimation=!1,this.destroyed=new s.Subject}return e.prototype.ngOnInit=function(){var e=this;this.splashService.splashVisibility.pipe(l.takeUntil(this.destroyed),l.tap((function(t){return y(e,void 0,void 0,(function(){var e=this;return v(this,(function(o){return t?this.stopAnimation=!1:s.timer(1e3).pipe(l.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 we(e){return!!(e.error&&e.error.hasOwnProperty("status")&&e.error.status.hasOwnProperty("message"))}xe.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>'}]}],xe.ctorParameters=function(){return[{type:ve}]};var Ie=function(){function e(){}return e.prototype.parseApiError=function(e,t){if("string"==typeof e)return e;var o=t||"DefaultUnknownError_SC";if(e&&we(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}();Ie.ɵprov=o.ɵɵdefineInjectable({factory:function(){return new Ie},token:Ie,providedIn:"root"}),Ie.decorators=[{type:o.Injectable,args:[{providedIn:"root"}]}],Ie.ctorParameters=function(){return[]};var ke=function(){function e(e){this.el=e,this.pageNumber=1,this.maxTabs=10,this.pageChanged=new o.EventEmitter,this.dropdownItems=[],this.currentTabs=new H}return e.prototype.ngOnChanges=function(){var e=this;if(0===this.totalItems)return this.dropdownItems=[],void(this.currentTabs=new H);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 H(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}();ke.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"}}]}],ke.ctorParameters=function(){return[{type:o.ElementRef}]},ke.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 Ce=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}();Ce.decorators=[{type:o.Pipe,args:[{name:"rowCount"}]}],Ce.ctorParameters=function(){return[{type:i.TranslateService}]};var Me=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 G("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.tableCaption=this.translateService.instant(this.noDataMessage||"SearchableTable_Default_NoData_SC"),this.resultsCount="",this.searchResults={items:[],totalItems:0},this.refreshTrigger=s.EMPTY,this.destroyed=new s.Subject,this.pageChanged=new s.Subject,this.initTable=new s.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=s.merge(this.formModel.valueChanges.pipe(l.skipUntil(this.ready),l.debounceTime(300)),this.refreshTrigger,this.initTable).pipe(l.tap((function(){e.pageable&&(e.pageInfo=ke.getPagingInfo(1,e.pageSize))})));s.merge(t,this.pageChanged).pipe(l.pluck("searchModel"),l.map((function(e){return(e||"").trim().toLowerCase()})),l.tap((function(){return e.status.setStatus("pending","Loading")})),l.switchMap((function(t){return e.getItems(t,e.pageInfo)})),l.catchError((function(t,o){return e.status.setStatus("error",e.errorService.parseApiError(t)),o})),l.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(l.map((function(t){return t&&t.clearSearch?(e.searchModel.reset("",{emitEvent:!1}),Object.assign(Object.assign({},e.formModel),{searchModel:""})):e.formModel.value})),l.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}();Me.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 [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}"]}]}],Me.ctorParameters=function(){return[{type:Ie},{type:i.TranslateService},{type:Ce}]},Me.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:[S,{descendants:!0}]}],additionalCountText:[{type:o.Input}]};var Se=function(){function e(e,t,o){this.viewContainer=e,this.templateRef=t,this.windowService=o,this.destroyed=new s.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(l.debounceTime(100),l.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}();Se.decorators=[{type:o.Directive,args:[{selector:"[ecIfViewportWidth]"}]}],Se.ctorParameters=function(){return[{type:o.ViewContainerRef},{type:o.TemplateRef},{type:_}]},Se.propDecorators={width:[{type:o.Input,args:["ecIfViewportWidth"]}]};var Te=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}();Te.decorators=[{type:o.Directive,args:[{selector:"[ecClickAreaFor]"}]}],Te.ctorParameters=function(){return[]},Te.propDecorators={targetEl:[{type:o.HostBinding,args:["class.cursor-pointer"]},{type:o.Input,args:["ecClickAreaFor"]}],onClick:[{type:o.HostListener,args:["click",["$event"]]}]};var De=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}();De.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}"]}]}],De.propDecorators={id:[{type:o.Input}],expanded:[{type:o.Input}],tabindex:[{type:o.Input}],expandedChange:[{type:o.Output}]};var Ee=function(){};Ee.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 Oe=function(){};Oe.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}"]}]}],Oe.propDecorators={contentClass:[{type:o.Input}],contentColSpan:[{type:o.Input}],maxHeight:[{type:o.Input}]};var Pe=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.");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}();Pe.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}"]}]}],Pe.ctorParameters=function(){return[{type:o.ElementRef}]},Pe.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 ze=function(){this.icon="",this.contentPosition="top-left"};ze.decorators=[{type:o.Component,args:[{selector:"ec-popover",template:'<article class="popover-content {{contentPosition}}">\r\n <ng-content></ng-content>\r\n</article>\r\n<i class="ec-icon {{icon}} ec-icon-sm"></i>\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{line-height:1;padding:.5rem;position:relative;z-index:1}:host:hover{z-index:2}:host:hover .popover-content{display:block}.popover-content{border-radius:3px;box-shadow:0 3px 6px 0 rgba(26,26,35,.12);display:none;overflow:hidden;position:absolute}.popover-content.top-left{left:0;top:0}.popover-content.top-right{right:0;top:0}.popover-content.bottom-right{bottom:0;right:0}.popover-content.bottom-left{bottom:0;left:0}.ec-icon{position:relative}"]}]}],ze.propDecorators={icon:[{type:o.Input}],contentPosition:[{type:o.Input}]};var Ve=function(){function e(e,t){this.control=e,this.clipboardService=t,this.copySuccess=!1,this.copyFailed=!1,this.destroyed=new s.Subject}return e.prototype.ngOnInit=function(){var e=this;this.control.clicked.pipe(l.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}();Ve.decorators=[{type:o.Directive,args:[{selector:"[ecCopyButton]"}]}],Ve.ctorParameters=function(){return[{type:E},{type:u.ClipboardService}]},Ve.propDecorators={copyFormModel:[{type:o.Input,args:["ecCopyButton"]}],copySuccess:[{type:o.HostBinding,args:["class.is-success"]}],copyFailed:[{type:o.HostBinding,args:["class.is-error"]}]};var Ae=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}();Ae.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}"]}]}],Ae.ctorParameters=function(){return[]},Ae.propDecorators={id:[{type:o.Input}],tags:[{type:o.Input}],wrap:[{type:o.Input}],isCondensed:[{type:o.Input}],tagClosed:[{type:o.Output}]};var Fe=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}();Fe.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}"]}]}],Fe.ctorParameters=function(){return[{type:o.ElementRef}]},Fe.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 Le=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 b(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}(F);Le.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-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}']}]}],Le.ctorParameters=function(){return[{type:V},{type:A},{type:o.ElementRef}]},Le.propDecorators={placeholder:[{type:o.Input}],options:[{type:o.Input}],autoDefault:[{type:o.Input}]};var Re=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}();Re.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}"]}]}],Re.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 Ne=function(){this.selectAllCheckbox=new n.FormControl(!1),this.rowCheckboxes=new n.FormArray([]),this.lastClickedIndex=-1,this.rowAddedOrRemoved=new s.Subject},_e=function(){function e(){this.id="",this.rowIndex=-1,this.lockedColOptions={border:!1,left:0},this.isSelected=!1,this.isHeader=!1,this.dependentCheckboxesReference={controls:[]},this.checkboxAttributeID="",this.destroyed=new s.Subject}return 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){e.rowIndex&&!this.isHeader&&(this.formControl=this.context.rowCheckboxes.at(this.rowIndex),this.checkboxAttributeID=this.id+"_row"+this.rowIndex+"_ecCheckbox")},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){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(l.debounceTime(10),l.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(l.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}();_e.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<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\x3c!-- The rest of the table row --\x3e\r\n<ng-content></ng-content>\r\n',styles:[":host: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}"]}]}],_e.propDecorators={id:[{type:o.HostBinding,args:["attr.id"]},{type:o.Input}],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 Be=function(){function e(e){this.dialogService=e,this.activeDialogEvents=[],this.destroyed=new s.Subject}return e.prototype.ngOnInit=function(){var e=this;this.dialogService.events.pipe(l.filter((function(e){return e instanceof Z||e instanceof ee})),l.takeUntil(this.destroyed)).subscribe((function(t){var o,n;if(t instanceof Z)e.activeDialogEvents.push(t);else if(t instanceof ee&&e.activeDialogEvents.length>0){var r=e.activeDialogEvents[e.activeDialogEvents.length-1];e.dialogService.triggerEvent(new Q(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}();Be.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)}"]}]}],Be.ctorParameters=function(){return[{type:oe}]};var Ue={zip:[".zip"],excel:[".xls",".xlsx"]},je=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 b(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(l.takeUntil(this.componentDestroyed)).subscribe((function(e){e||n.formModel.patchValue({file:null,base64FileString:null,uploadResult:null})}))},t.prototype.fileChange=function(e){return y(this,void 0,void 0,(function(){var t,o,n=this;return v(this,(function(r){switch(r.label){case 0:return(t=e.item(0))?((o=new FileReader).onloadend=function(e){return y(n,void 0,void 0,(function(){var e,n;return v(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=Ue[this.fileType].join(","):this.customExtensions&&(this.fileTypeAccept=this.customExtensions.join(",")))},t.prototype.processFile=function(e,t){return y(this,void 0,void 0,(function(){var o;return v(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}(F);je.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)}"]}]}],je.ctorParameters=function(){return[{type:V},{type:A}]},je.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 He=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?He(e,t):t(e)})):e instanceof n.FormGroup?He(e,t):t(e)}))},qe=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},We=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 s.Subject}return e.prototype.ngOnInit=function(){return y(this,void 0,void 0,(function(){var e=this;return v(this,(function(t){return this.formGroup&&(this.formGroup.statusChanges.pipe(l.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 He(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 y(this,void 0,void 0,(function(){var t;return v(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}();We.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}']}]}],We.ctorParameters=function(){return[{type:V},{type:i.TranslateService}]},We.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 Ge=function(){function e(){}return e.tryParseJSON=function(e){if(e)try{return JSON.parse(e)}catch(e){return}},e}(),$e=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=Ge.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}();$e.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}"]}]}],$e.ctorParameters=function(){return[{type:i.TranslateService}]},$e.propDecorators={id:[{type:o.Input}],attrId:[{type:o.HostBinding,args:["attr.id"]}],jsonString:[{type:o.Input}],maxLength:[{type:o.Input}]};var Ye=function(e,t,o){void 0===o&&(o="user"),this.action=e,this.toast=t,this.source=o},Xe=function(){function e(){this._events=new s.Subject,this.events=this._events.asObservable()}return e.prototype.showToast=function(e,t){var o=new Ye("add",e,t);this._events.next(o)},e.prototype.dismissToast=function(e,t){var o=new Ye("remove",e,t);this._events.next(o)},e}();Xe.ɵprov=o.ɵɵdefineInjectable({factory:function(){return new Xe},token:Xe,providedIn:"root"}),Xe.decorators=[{type:o.Injectable,args:[{providedIn:"root"}]}],Xe.ctorParameters=function(){return[]};var Ke=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 s.Subject}return e.prototype.ngOnInit=function(){var e=this;this.toastService.events.pipe(l.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,s.timer(this.TOAST_ANIMATION_DURATION).subscribe((function(){t.closed.emit(e)}))},e.prototype.closeAfterTimer=function(){var e=this;s.timer(this.TIMED_TOAST_DURATION).pipe(l.takeUntil(s.race(this.closed,this.destroyed))).subscribe((function(){e.toastItem&&e.toastService.dismissToast(e.toastItem,"auto")}))},e}();Ke.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 <p id="{{toastItem?.id}}_message"\r\n class="mb-0">{{toastItem?.message}}</p>\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)}"]}]}],Ke.ctorParameters=function(){return[{type:Xe}]},Ke.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 Ze=function(){},Je=function(e){function t(){return null!==e&&e.apply(this,arguments)||this}return b(t,e),t.prototype.trackPageView=function(e,t,o){},t.prototype.trackEvent=function(e,t,o){},t}(Ze);Je.ɵprov=o.ɵɵdefineInjectable({factory:function(){return new Je},token:Je,providedIn:"root"}),Je.decorators=[{type:o.Injectable,args:[{providedIn:"root"}]}];var Qe=function(){function e(e,t){this.toastService=e,this.telemetryService=t,this.dismissibleToastBottom=0,this.pendingToasts=[],this.destroyed=new s.Subject}return e.prototype.ngOnInit=function(){var e=this;this.toastService.events.pipe(l.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}();Qe.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>'}]}],Qe.ctorParameters=function(){return[{type:Xe},{type:Je}]},Qe.propDecorators={timedToastEl:[{type:o.ViewChild,args:["timedToast",{static:!1,read:o.ElementRef}]}]};var et=function(){function e(){this.isDialog=!1,this.status=new G("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}();et.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}']}]}],et.ctorParameters=function(){return[]},et.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 tt=function(){};tt.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"}}]}],tt.propDecorators={title:[{type:o.Input}],titleIcon:[{type:o.Input}],subTitle:[{type:o.Input}]};var ot=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)})),m.default(e).format(this.lastFormatString)},e}();ot.decorators=[{type:o.Pipe,args:[{name:"timeDisplay"}]}],ot.ctorParameters=function(){return[{type:P}]};var nt=function(){function e(){}return e.forRoot=function(t){return{ngModule:e,providers:[{provide:Je,useClass:t.telemetryService}]}},e}();nt.decorators=[{type:o.NgModule,args:[{declarations:[E,q,W,j,re,$,D,C,q,T,Me,N,B,L,U,X,ne,z,ot,le,pe,ue,fe,be,ye,xe,Se,Te,De,M,Ee,Oe,Pe,_e,ze,ke,Ce,Ve,ke,Ae,Fe,Le,Re,_e,S,Be,je,We,$e,Ke,Qe,et,tt],imports:[t.CommonModule,n.FormsModule,n.ReactiveFormsModule,r.RouterModule,i.TranslateModule,a.A11yModule],providers:[A,oe,z,ot,le,Ce],exports:[E,q,W,j,re,$,D,q,T,Me,N,B,L,U,X,ne,z,ot,pe,ue,fe,be,ye,xe,Se,Te,De,M,Ee,Pe,_e,ze,Ve,ke,Ae,Fe,Le,Re,S,Be,je,We,$e,Ke,Qe,et,tt]}]}];var rt=function(){},it=function(){};function at(e,t){var o=c.get(e,t);return e&&"string"==typeof o?o.toLowerCase():e[t]}it.ndash="–";var st=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)},lt=function(){};lt.requiredPlural=function(e){return null!==n.Validators.required(e)?{requiredPlural:!0}:null},lt.json=function(e){return e.value&&void 0===Ge.tryParseJSON(e.value)?{json:!0}:null};var ct=function(){this.title=""},dt=function(){function e(e){this.classList="d-flex flex-grow",this.title="",this.status=new G("pending","Loading"),this.formGroup=new n.FormGroup({}),this.defaultInvalidFormMessage="PleaseCorrectForm_SC",this.defaultUnknownSaveError="PageBaseUnknownSaveError_SC",this.destroyed=new s.Subject,this._afterViewInitComplete=new s.ReplaySubject,this.afterViewInitComplete=this._afterViewInitComplete,this._errors="",this.errorService=e.get(Ie),this.translateService=e.get(i.TranslateService),this.scrollService=e.get(R),this.router=e.get(r.Router),this.activatedRoute=e.get(r.ActivatedRoute),this.dialogService=e.get(oe)}return Object.defineProperty(e.prototype,"errors",{get:function(){return this._errors},enumerable:!1,configurable:!0}),e.prototype.ngOnInit=function(){var e;return y(this,void 0,void 0,(function(){var t;return v(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 y(this,void 0,void 0,(function(){return v(this,(function(e){return[2]}))}))},e.prototype.ngAfterViewInit=function(){var e;return y(this,void 0,void 0,(function(){var t,o;return v(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 s.ReplaySubject,this.ngOnInit(),this.ngAfterViewInit()},e.prototype.applyModelUpdates=function(){return y(this,void 0,void 0,(function(){return v(this,(function(e){return[2]}))}))},e.prototype.saveToApi=function(){return y(this,void 0,void 0,(function(){return v(this,(function(e){return[2]}))}))},e.prototype.onSaveComplete=function(e){},e.prototype.onSave=function(e){var t;return y(this,void 0,void 0,(function(){var e,o,n=this;return v(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(l.takeUntil(this.destroyed),l.filter((function(e){return e instanceof r.NavigationEnd}))).subscribe((function(t){try{e.onNavigationEnd()}catch(t){e.onError(t)}})))},e}();dt.decorators=[{type:o.Directive}],dt.ctorParameters=function(){return[{type:o.Injector}]},dt.propDecorators={classList:[{type:o.HostBinding,args:["class"]}]};var pt=new MouseEvent("click");var ut=function(){function e(e){this.suffix=e,this.currentLang="en_US"}return e.prototype.get=function(e,t){return s.of(e+(this.suffix||""))},e.prototype.stream=function(e,t){return s.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}(),ht=function(){function e(){}return e.prototype.translateObjectArray=function(e,t){return Promise.resolve(e)},e.prototype.translateObjectProperty=function(e,t,o){return s.of(e)},e.prototype.getKendoLocaleId=function(){return"en"},e.prototype.translateCorePopValue=function(e,t){return t},e.prototype.setLanguage=function(){},e}(),mt=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 y(this,void 0,void 0,(function(){return v(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 y(this,void 0,void 0,(function(){return v(this,(function(e){switch(e.label){case 0:return[4,this._component.onSave(pt)];case 1:return e.sent(),[2]}}))}))},e}(),gt=function(){function e(){}return e.getComponentInjector=function(){return o.Injector.create({providers:w(this.CoreProviders,this.ComponentProviders)})},e}();gt.CoreProviders=[{provide:r.Router,useFactory:ce,deps:[]},{provide:R,useFactory:function(){return ie.createSpy(R)},deps:[]},{provide:r.ActivatedRoute,useFactory:function(){return new de},deps:[]}],gt.ComponentProviders=[{provide:i.TranslateService,useFactory:function(){return new ut("-T")},deps:[]},{provide:Ie,deps:[]},{provide:oe,useFactory:function(){return ie.createSpy(oe)},deps:[]}],e.AppBarComponent=ye,e.AvatarComponent=be,e.BannerComponent=D,e.ButtonComponent=E,e.CacheService=I,e.CheckboxComponent=ue,e.ClickAreaForDirective=Te,e.CollapsibleToggleComponent=De,e.ComboboxComponent=N,e.ComponentsModule=nt,e.ConfirmComponent=X,e.ConfirmDialogContext=Y,e.CopyButtonDirective=Ve,e.CustomValidators=lt,e.DateDisplayPipe=z,e.DateTimeHelper=O,e.DialogCloseDuration=100,e.DialogCloseEvent=Q,e.DialogCloseLatestEvent=ee,e.DialogComponent=ne,e.DialogEvent=K,e.DialogGroupComponent=Be,e.DialogOpenDuration=125,e.DialogOpenEndEvent=J,e.DialogOpenStartEvent=Z,e.DialogResult=te,e.DialogService=oe,e.DropdownComponent=U,e.ErrorService=Ie,e.FileTypeExtensions=Ue,e.FileUploadComponent=je,e.FormControlBase=F,e.FormControlComponent=Fe,e.FormGroupComponent=We,e.FormGroupHelper=A,e.IfViewportWidthDirective=Se,e.ItemDisplayComponent=Re,e.JsonDisplayComponent=$e,e.JsonHelper=Ge,e.MenuComponent=B,e.MockActivatedRoute=de,e.MockDateDisplayPipe=le,e.MockDialog=ae,e.MockDialogContent=se,e.MockTranslateService=ut,e.MockTranslationHelperService=ht,e.NavGroup=H,e.NavItemActiveDirective=j,e.NumericboxComponent=fe,e.Overlay=G,e.PageBaseComponent=dt,e.PageBaseComponentTestHelper=mt,e.PageBaseComponentTestInjectorFactory=gt,e.PageInitResult=ct,e.PageTitleComponent=tt,e.PageViewComponent=et,e.PanelCloseDuration=225,e.PanelOpenDuration=250,e.PopoverComponent=ze,e.PopupContainerDirective=L,e.RadioButtonComponent=pe,e.RadioButtonOption=rt,e.ResizableColumnComponent=S,e.RowCountPipe=Ce,e.ScrollService=R,e.SearchableTableComponent=Me,e.SelectComponent=Le,e.SpinnerComponent=re,e.SplashComponent=xe,e.SplashService=ve,e.SpyFactory=ie,e.TableComponent=T,e.TableLockedColumnComponent=Pe,e.TableMasterHeaderRowComponent=Ee,e.TableMasterRowComponent=M,e.TablePaginationComponent=ke,e.TableSelectableRowComponent=_e,e.TableSelectableRowContext=Ne,e.TabsComponent=q,e.Tag=st,e.TagsComponent=Ae,e.TelemetryBaseService=Ze,e.TextboxComponent=W,e.TimeDisplayPipe=ot,e.ToastComponent=Ke,e.ToastEvent=Ye,e.ToastService=Xe,e.ToasterComponent=Qe,e.UnicodeStrings=it,e.UserPreferenceService=P,e.ValidationMessageService=V,e.ViewOverlayComponent=$,e.WindowService=_,e.canadianPostalCodeRegex=/^[a-zA-Z][0-9][a-zA-Z] [0-9][a-zA-Z][0-9]$/,e.clickEvent=pt,e.dateInputFormatRegex=/^[0-9./-]+$/,e.findAllSpacesPattern=/ /g,e.forEachFormControl=He,e.getApiError=function(e){return{error:{status:{message:e}}}},e.getControlValue=qe,e.getDecimalPattern=me,e.integerPattern=he,e.isApiError=we,e.menuAnimationSpeed=350,e.mockRouterFactory=ce,e.numericboxValidation=ge,e.orderByIgnoreCase=function(e,t,o){var n;return n=t.map((function(e){return function(t){return at(t,e)||""}})),c.orderBy(e,n,o)},e.otherZipCodeRegex=/.*/,e.sortByIgnoreCase=function(e,t){var o;return o=t.map((function(e){return function(t){return at(t,e)}})),c.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={};He(e,(function(e){var r=qe(e,t,o);null!==r&&""!==r&&("string"==typeof r&&(r=r.toLowerCase()),n.hasOwnProperty(r)?n[r]=n[r]+1:n[r]=1)})),He(e,(function(e){var r=qe(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=c.cloneDeep(e.errors);i&&i.hasOwnProperty("notUnique")&&delete i.notUnique,i&&0===Object.keys(i).length&&(i=null),e.setErrors(i)}}))},e.ɵa=C,e.ɵb=k,e.ɵc=Oe,e.ɵd=Je,Object.defineProperty(e,"__esModule",{value:!0})}));
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("rxjs"),require("rxjs/operators"),require("lodash"),require("moment"),require("popper.js"),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","rxjs","rxjs/operators","lodash","moment","popper.js","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.rxjs,e.rxjs.operators,e.lodash,e.moment,e.Popper,e.ngxClipboard)}(this,(function(e,t,o,n,r,i,a,s,l,c,d,p,u){"use strict";function h(e){return e&&"object"==typeof e&&"default"in e?e:{default:e}}var m=h(d),g=h(p),f=function(e,t){return(f=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 b(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}f(e,t),e.prototype=null===t?Object.create(t):(o.prototype=t.prototype,new o)}function y(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 v(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 x(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 w(){for(var e=[],t=0;t<arguments.length;t++)e=e.concat(x(arguments[t]));return e}Object.create;var I=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}();I.ɵprov=o.ɵɵdefineInjectable({factory:function(){return new I},token:I,providedIn:"root"}),I.decorators=[{type:o.Injectable,args:[{providedIn:"root"}]}];var k=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}();k.decorators=[{type:o.Directive}],k.ctorParameters=function(){return[{type:o.Renderer2},{type:I},{type:Document,decorators:[{type:o.Inject,args:[t.DOCUMENT]}]}]},k.propDecorators={rememberWidth:[{type:o.Input}],id:[{type:o.Input}]};var C=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 s.Subject,i}return b(t,e),t.prototype.ngOnInit=function(){var e=this;this.initResizableColumns(),this.resizableColumns.changes.pipe(l.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}(k);C.decorators=[{type:o.Directive,args:[{selector:"[ecResizableTable]"}]}],C.ctorParameters=function(){return[{type:o.ElementRef},{type:o.Renderer2},{type:I},{type:Document,decorators:[{type:o.Inject,args:[t.DOCUMENT]}]}]},C.propDecorators={isResizable:[{type:o.Input,args:["ecResizableTable"]}],containerEl:[{type:o.Input}],sortableTable:[{type:o.Input}],resizableColumns:[{type:o.Input}]};var M=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}();M.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}"]}]}],M.ctorParameters=function(){return[{type:o.Renderer2},{type:o.ElementRef}]},M.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 S=function(){function e(e){this.el=e,this.onResize=new o.EventEmitter}return e.prototype.emitWidth=function(e){this.onResize.emit(e)},e}();S.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'}]}],S.ctorParameters=function(){return[{type:o.ElementRef}]},S.propDecorators={onResize:[{type:o.Output}]};var T=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 s.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&&c.isEqual(t,this.currentSort)||this.onSort(t.field,t.direction)}},e.prototype.ngOnInit=function(){this.selectionContext&&(this.selectable=!0)},e.prototype.ngAfterContentInit=function(){var e=this;this.hasMasterDetailRows=!!this.masterRows.length,this.masterRows.changes.pipe(l.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(l.takeUntil(this.destroyed)).subscribe((function(t){e.hasSelection=t.some((function(e){return e}))}))},e}();T.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}']}]}],T.ctorParameters=function(){return[{type:o.Renderer2},{type:o.ElementRef}]},T.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"]}],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:[M,{descendants:!0}]}],_resizableColumns:[{type:o.ContentChildren,args:[S,{descendants:!0}]}],searchableTableResizableColumns:[{type:o.Input,args:["resizableColumns"]}]};var D=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}();D.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}"]}]}],D.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 E=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}();E.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}"]}]}],E.ctorParameters=function(){return[]},E.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 O=function(){function e(){}return e.isEndOfTime=function(e){var t=this.endOfTime;return this.isSameDay(e,t)},e.isSameDay=function(e,t){return m.default(e).isSame(m.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,m.default(e).isBetween(t,o,"day",i)},e.stringToDate=function(e){return null==e?e:m.default(e).toDate()},e}();O.beginningOfTime=new Date(1899,11,31),O.endOfTime=new Date(3e3,0,1),O.defaultAccountMeterEffectiveDate=new Date(2010,0,1),O.defaultAccountServiceEffectiveDate=new Date(2010,0,1),O.minDatePickerDate=new Date(1980,0,1),O.maxDatePickerDate=new Date(3e3,0,1,23,59,59),O.defaultDateFormat="yyyy-MM-dd",O.defaultTimeFormat="HH:mm:ss",O.defaultTimestampFormat=O.defaultDateFormat+" "+O.defaultTimeFormat,O.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"}],O.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"],O.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"],O.timeFormat="HH:mm:ss";var P=function(){function e(){}return e.prototype.getPreferences=function(){return s.of({preference:{dateFormat:"MM/DD/YYYY",timeFormat:"h:mm:ss a"}})},e}();P.ɵprov=o.ɵɵdefineInjectable({factory:function(){return new P},token:P,providedIn:"root"}),P.decorators=[{type:o.Injectable,args:[{providedIn:"root"}]}];var z=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&&m.default(e).isValid()&&(t||!O.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=m.default(e).format(this.lastFormatString)),i},e}();z.decorators=[{type:o.Pipe,args:[{name:"dateDisplay"}]}],z.ctorParameters=function(){return[{type:P}]};var V=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 s.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}();V.ɵprov=o.ɵɵdefineInjectable({factory:function(){return new V(o.ɵɵinject(i.TranslateService),o.ɵɵinject(z))},token:V,providedIn:"root"}),V.decorators=[{type:o.Injectable,args:[{providedIn:"root"}]}],V.ctorParameters=function(){return[{type:i.TranslateService},{type:z}]};var A=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=w(t);(r||!o&&0===r)&&i.push(n.Validators.required),i.length>0?e.setValidators(i):e.clearValidators(),e.updateValueAndValidity({emitEvent:!1})}},e}();A.ɵprov=o.ɵɵdefineInjectable({factory:function(){return new A},token:A,providedIn:"root"}),A.decorators=[{type:o.Injectable,args:[{providedIn:"root"}]}];var F=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 s.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(l.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 y(this,void 0,void 0,(function(){var e,t;return v(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}();F.decorators=[{type:o.Directive}],F.ctorParameters=function(){return[{type:V},{type:A}]},F.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 L=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=s.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 g.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}();L.GlobalPopupRef=void 0,L.decorators=[{type:o.Directive,args:[{selector:"[ecPopup]"}]}],L.ctorParameters=function(){return[{type:o.TemplateRef},{type:o.ViewContainerRef},{type:void 0,decorators:[{type:o.Inject,args:[t.DOCUMENT]}]},{type:o.Renderer2}]},L.propDecorators={popup:[{type:o.Input,args:["ecPopup"]}],popperOptions:[{type:o.Input,args:["options"]}]};var R=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}();R.ɵprov=o.ɵɵdefineInjectable({factory:function(){return new R},token:R,providedIn:"root"}),R.decorators=[{type:o.Injectable,args:[{providedIn:"root"}]}],R.ctorParameters=function(){return[]};var N=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 b(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(l.takeUntil(this.componentDestroyed)).subscribe((function(e){return t.formModelChanged(e)})),this.textboxFormModel.statusChanges.pipe(l.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(l.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(l.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 y(this,void 0,void 0,(function(){return v(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}(F);N.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}']}]}],N.ctorParameters=function(){return[{type:V},{type:A},{type:i.TranslateService},{type:R}]},N.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:[L]}],addNewButton:[{type:o.ViewChild,args:["addNewButton"]}]};var _=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=s.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 y(this,void 0,void 0,(function(){return v(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 y(this,void 0,void 0,(function(){return v(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}();_.ɵprov=o.ɵɵdefineInjectable({factory:function(){return new _(o.ɵɵinject(r.Router),o.ɵɵinject(r.ActivatedRoute))},token:_,providedIn:"root"}),_.decorators=[{type:o.Injectable,args:[{providedIn:"root"}]}],_.ctorParameters=function(){return[{type:r.Router},{type:r.ActivatedRoute}]};var B=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}();B.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}"]}]}],B.ctorParameters=function(){return[{type:o.ElementRef},{type:o.Renderer2},{type:_},{type:R}]},B.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 U=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 s.Subject}return e.prototype.ngOnInit=function(){var e=this;this.popup.popperStatusChange.pipe(l.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}();U.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}"]}]}],U.ctorParameters=function(){return[]},U.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:[B,{read:o.ElementRef}]}],popup:[{type:o.ViewChild,args:[L,{static:!0}]}]};var j=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 s.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(l.takeUntil(this.destroyed),l.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}();j.decorators=[{type:o.Directive,args:[{selector:"[ecNavItemActive]"}]}],j.ctorParameters=function(){return[{type:r.Router},{type:o.ElementRef},{type:o.Renderer2},{type:r.ActivatedRoute}]},j.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 H=function(){function e(e,t){this.items=[],this.selectedChanges=new s.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}(),q=function(){function e(){this.id="",this.tabindex=0,this.tabStyle="tabs",this.tabs=new H}return e.prototype.selectTab=function(e,t){t.disabled||"click"!==e.type&&("keypress"!==e.type||"Enter"!==e.key)||(this.tabs.selected=t)},e}();q.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}"]}]}],q.ctorParameters=function(){return[]},q.propDecorators={id:[{type:o.Input}],tabindex:[{type:o.Input}],tabStyle:[{type:o.Input}],tabs:[{type:o.Input,args:["tabGroup"]}]};var W=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 b(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}(F);W.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}']}]}],W.ctorParameters=function(){return[{type:V},{type:A},{type:i.TranslateService}]},W.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 G=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}(),$=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}();$.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}"]}]}],$.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 Y=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=""},X=function(){function e(){this.dialogId="Confirm",this.formGroup=new n.FormGroup({}),this.status=new G("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,w(this.context.textboxValidators)),this.formGroup.addControl("textbox",new n.FormControl("",e))}},e.prototype.doInlineConfirmAction=function(){return y(this,void 0,void 0,(function(){var e,t=this;return v(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}();X.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}"]}]}],X.ctorParameters=function(){return[]},X.propDecorators={context:[{type:o.Input}],onDialogSave:[{type:o.Output}],onDialogCancel:[{type:o.Output}]};var K=function(e,t,o){void 0===t&&(t=""),void 0===o&&(o="openStart"),this.eventId=e,this.dialogId=t,this.dialogAction=o},Z=function(e){function t(t,o,n){var r=e.call(this,c.uniqueId())||this;return r.content=t,r.context=o,r.options=n,r}return b(t,e),t}(K),J=function(e){function t(t,o){return e.call(this,t,o,"open")||this}return b(t,e),t}(K),Q=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 te(n,r),i}return b(t,e),t}(K),ee=function(e){function t(t){var o=e.call(this,"latest","latest","closeLatest")||this;return o.dialogResult=t,o}return b(t,e),t}(K),te=function(e,t){this.save=e,this.context=t},oe=function(){function e(){this.events=new s.Subject}return e.prototype.openDialog=function(e,t,o,n){(n=n||{}).size=t;var r=new Z(e,o,n),i=this.events.pipe(l.skipWhile((function(e){return!(e instanceof Q)||e.eventId!==r.eventId})),l.map((function(e){return e.dialogResult})),l.take(1));return this.triggerEvent(r),i},e.prototype.closeLatestDialog=function(e){this.triggerEvent(new ee(e))},e.prototype.confirm=function(e){return this.openDialog(X,"small",e)},e.prototype.triggerEvent=function(e){this.events.next(e)},e}();oe.ɵprov=o.ɵɵdefineInjectable({factory:function(){return new oe},token:oe,providedIn:"root"}),oe.decorators=[{type:o.Injectable,args:[{providedIn:"root"}]}];var ne=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 te(!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 y(this,void 0,void 0,(function(){var a,c,d=this;return v(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 te(!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):(c=this.componentFactoryResolver.resolveComponentFactory(e),this.componentRef=this.contentContainer.createComponent(c)),this.isOpen=!0,this.openDialogComponent(t),[4,s.timer(this.displayAsPanel?250:125).pipe(l.take(1),l.tap((function(){var e=d.getDialogId();d.fadeIn=!1,d.opened.emit(e),d.dialogService.triggerEvent(new J(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 Q(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(l.takeUntil(this.closed)).subscribe((function(){t.close(new te(!1))})),o.onDialogSave.pipe(l.takeUntil(this.closed)).subscribe((function(e){t.close(new te(!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(l.takeUntil(this.closed),l.take(1)).subscribe((function(){e.close(new te(!1))}))},e.prototype.getDialogId=function(){var e;return(null===(e=this.componentRef)||void 0===e?void 0:e.instance.dialogId)||""},e}();ne.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}"]}]}],ne.ctorParameters=function(){return[{type:o.ComponentFactoryResolver},{type:_},{type:oe},{type:Document,decorators:[{type:o.Inject,args:[t.DOCUMENT]}]}]},ne.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 re=function(){};re.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 ie=function(){function e(){}return e.createSpy=function(e){var t=Object.getOwnPropertyNames(e.prototype);return jasmine.createSpyObj(t)},e}(),ae=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 y(this,void 0,void 0,(function(){return v(this,(function(e){return this.lastContext=t,this.componentRef={instance:new se},this.opened.emit(),[2]}))}))},e.prototype.close=function(e){this.closed.emit(e)},e}();ae.decorators=[{type:o.Directive}],ae.propDecorators={size:[{type:o.Input}],opened:[{type:o.Output}],closed:[{type:o.Output}]};var se=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 s.Subject},le=function(){function e(){}return e.prototype.transform=function(e){return"01/01/2017"},e}();function ce(){var e=ie.createSpy(r.Router);return e.isActive.and.returnValue(!1),e.navigate.and.returnValue(Promise.resolve(!0)),Object.defineProperty(e,"events",{value:new s.Subject,configurable:!0}),Object.defineProperty(e,"url",{value:"/current/route/url",writable:!0}),e}le.decorators=[{type:o.Pipe,args:[{name:"dateDisplay"}]}];var de=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 s.Subject,this.queryParamMap=new s.Subject,this.routeConfig={}};de.decorators=[{type:o.Injectable}];var pe=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 b(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}(F);pe.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%)}']}]}],pe.ctorParameters=function(){return[{type:V},{type:A}]},pe.propDecorators={type:[{type:o.Input}],options:[{type:o.Input}],direction:[{type:o.Input}],name:[{type:o.Input}],inputElement:[{type:o.ViewChild,args:["radioInput"]}]};var ue=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 s.Subject,n}return b(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(l.distinctUntilChanged(),l.takeUntil(s.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(l.distinctUntilChanged(),l.takeUntil(s.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}(F);ue.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}']}]}],ue.ctorParameters=function(){return[{type:V},{type:A}]},ue.propDecorators={name:[{type:o.Input}],dependentCheckboxesGroup:[{type:o.Input}],ignoreDisabledDependents:[{type:o.Input}],inputElement:[{type:o.ViewChild,args:["checkboxInput",{static:!0}]}]};var he=new RegExp("^(-)?([\\d]+)?$"),me=function(e){var t="{0,"+e.toString()+"}";return new RegExp("^((((-)?\\d+\\.?\\d"+t+"?)|((-)?\\.?\\d"+t+")))?$")},ge=function(e,t,o,n){return function(r){var i=!1;if(r.value&&""!==r.value){if((o&&o>0?me(o):n?me(n):he).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}},fe=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 b(t,e),t.prototype.ngAfterViewInit=function(){var e=this;this.autoUpdateFormModel&&this.textboxFormModel.valueChanges.pipe(l.debounceTime(300),l.distinctUntilChanged(),l.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(l.takeUntil(this.componentDestroyed)).subscribe((function(){t.formModel.enabled&&t.formModel.setErrors(t.textboxFormModel.errors)})),this.formModel.statusChanges.pipe(l.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(l.filter((function(){return!t.autoUpdatingFormModel})),l.takeUntil(this.componentDestroyed)).subscribe((function(e){t.textboxFormModel.setValue(t.formatDisplayNumber(e))})),this.leftUnits&&this.textboxFormModel.statusChanges.pipe(l.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(ge(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}(F);fe.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}']}]}],fe.ctorParameters=function(){return[{type:V},{type:A},{type:o.Renderer2}]},fe.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:[W,{read:o.ElementRef,static:!0}]}],textboxInput:[{type:o.ViewChild,args:["textbox",{static:!0}]}]};var be=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}();be.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)}"]}]}],be.ctorParameters=function(){return[{type:o.ElementRef},{type:o.Renderer2}]},be.propDecorators={user:[{type:o.Input}]};var ye=function(){this.user={},this.userMenuItems=[],this.userMenuWidth=0,this.userMenuMinWidth=160,this.userMenuTabindex=0,this.iconPath="/assets/images/icon.svg"};ye.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}"]}]}],ye.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 ve=function(){function e(){this._splashVisibility=new s.Subject,this.splashVisibility=this._splashVisibility}return e.prototype.showSplash=function(){this._splashVisibility.next(!0)},e.prototype.hideSplash=function(){this._splashVisibility.next(!1)},e}();ve.ɵprov=o.ɵɵdefineInjectable({factory:function(){return new ve},token:ve,providedIn:"root"}),ve.decorators=[{type:o.Injectable,args:[{providedIn:"root"}]}],ve.ctorParameters=function(){return[]};var xe=function(){function e(e){this.splashService=e,this.isVisible=!0,this.stopAnimation=!1,this.destroyed=new s.Subject}return e.prototype.ngOnInit=function(){var e=this;this.splashService.splashVisibility.pipe(l.takeUntil(this.destroyed),l.tap((function(t){return y(e,void 0,void 0,(function(){var e=this;return v(this,(function(o){return t?this.stopAnimation=!1:s.timer(1e3).pipe(l.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 we(e){return!!(e.error&&e.error.hasOwnProperty("status")&&e.error.status.hasOwnProperty("message"))}xe.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>'}]}],xe.ctorParameters=function(){return[{type:ve}]};var Ie=function(){function e(){}return e.prototype.parseApiError=function(e,t){if("string"==typeof e)return e;var o=t||"DefaultUnknownError_SC";if(e&&we(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}();Ie.ɵprov=o.ɵɵdefineInjectable({factory:function(){return new Ie},token:Ie,providedIn:"root"}),Ie.decorators=[{type:o.Injectable,args:[{providedIn:"root"}]}],Ie.ctorParameters=function(){return[]};var ke=function(){function e(e){this.el=e,this.pageNumber=1,this.maxTabs=10,this.pageChanged=new o.EventEmitter,this.dropdownItems=[],this.currentTabs=new H}return e.prototype.ngOnChanges=function(){var e=this;if(0===this.totalItems)return this.dropdownItems=[],void(this.currentTabs=new H);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 H(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}();ke.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"}}]}],ke.ctorParameters=function(){return[{type:o.ElementRef}]},ke.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 Ce=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}();Ce.decorators=[{type:o.Pipe,args:[{name:"rowCount"}]}],Ce.ctorParameters=function(){return[{type:i.TranslateService}]};var Me=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 G("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.tableCaption=this.translateService.instant(this.noDataMessage||"SearchableTable_Default_NoData_SC"),this.resultsCount="",this.searchResults={items:[],totalItems:0},this.refreshTrigger=s.EMPTY,this.destroyed=new s.Subject,this.pageChanged=new s.Subject,this.initTable=new s.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=s.merge(this.formModel.valueChanges.pipe(l.skipUntil(this.ready),l.debounceTime(300)),this.refreshTrigger,this.initTable).pipe(l.tap((function(){e.pageable&&(e.pageInfo=ke.getPagingInfo(1,e.pageSize))})));s.merge(t,this.pageChanged).pipe(l.pluck("searchModel"),l.map((function(e){return(e||"").trim().toLowerCase()})),l.tap((function(){return e.status.setStatus("pending","Loading")})),l.switchMap((function(t){return e.getItems(t,e.pageInfo)})),l.catchError((function(t,o){return e.status.setStatus("error",e.errorService.parseApiError(t)),o})),l.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(l.map((function(t){return t&&t.clearSearch?(e.searchModel.reset("",{emitEvent:!1}),Object.assign(Object.assign({},e.formModel),{searchModel:""})):e.formModel.value})),l.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}();Me.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 [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}"]}]}],Me.ctorParameters=function(){return[{type:Ie},{type:i.TranslateService},{type:Ce}]},Me.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:[S,{descendants:!0}]}],additionalCountText:[{type:o.Input}]};var Se=function(){function e(e,t,o){this.viewContainer=e,this.templateRef=t,this.windowService=o,this.destroyed=new s.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(l.debounceTime(100),l.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}();Se.decorators=[{type:o.Directive,args:[{selector:"[ecIfViewportWidth]"}]}],Se.ctorParameters=function(){return[{type:o.ViewContainerRef},{type:o.TemplateRef},{type:_}]},Se.propDecorators={width:[{type:o.Input,args:["ecIfViewportWidth"]}]};var Te=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}();Te.decorators=[{type:o.Directive,args:[{selector:"[ecClickAreaFor]"}]}],Te.ctorParameters=function(){return[]},Te.propDecorators={targetEl:[{type:o.HostBinding,args:["class.cursor-pointer"]},{type:o.Input,args:["ecClickAreaFor"]}],onClick:[{type:o.HostListener,args:["click",["$event"]]}]};var De=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}();De.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}"]}]}],De.propDecorators={id:[{type:o.Input}],expanded:[{type:o.Input}],tabindex:[{type:o.Input}],expandedChange:[{type:o.Output}]};var Ee=function(){};Ee.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 Oe=function(){};Oe.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}"]}]}],Oe.propDecorators={contentClass:[{type:o.Input}],contentColSpan:[{type:o.Input}],maxHeight:[{type:o.Input}]};var Pe=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.");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}();Pe.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}"]}]}],Pe.ctorParameters=function(){return[{type:o.ElementRef}]},Pe.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 ze=function(){this.icon="",this.contentPosition="top-left"};ze.decorators=[{type:o.Component,args:[{selector:"ec-popover",template:'<article class="popover-content {{contentPosition}}">\r\n <ng-content></ng-content>\r\n</article>\r\n<i class="ec-icon {{icon}} ec-icon-sm"></i>\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{line-height:1;padding:.5rem;position:relative;z-index:1}:host:hover{z-index:2}:host:hover .popover-content{display:block}.popover-content{border-radius:3px;box-shadow:0 3px 6px 0 rgba(26,26,35,.12);display:none;overflow:hidden;position:absolute}.popover-content.top-left{left:0;top:0}.popover-content.top-right{right:0;top:0}.popover-content.bottom-right{bottom:0;right:0}.popover-content.bottom-left{bottom:0;left:0}.ec-icon{position:relative}"]}]}],ze.propDecorators={icon:[{type:o.Input}],contentPosition:[{type:o.Input}]};var Ve=function(){function e(e,t){this.control=e,this.clipboardService=t,this.copySuccess=!1,this.copyFailed=!1,this.destroyed=new s.Subject}return e.prototype.ngOnInit=function(){var e=this;this.control.clicked.pipe(l.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}();Ve.decorators=[{type:o.Directive,args:[{selector:"[ecCopyButton]"}]}],Ve.ctorParameters=function(){return[{type:E},{type:u.ClipboardService}]},Ve.propDecorators={copyFormModel:[{type:o.Input,args:["ecCopyButton"]}],copySuccess:[{type:o.HostBinding,args:["class.is-success"]}],copyFailed:[{type:o.HostBinding,args:["class.is-error"]}]};var Ae=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}();Ae.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}"]}]}],Ae.ctorParameters=function(){return[]},Ae.propDecorators={id:[{type:o.Input}],tags:[{type:o.Input}],wrap:[{type:o.Input}],isCondensed:[{type:o.Input}],tagClosed:[{type:o.Output}]};var Fe=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}();Fe.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}"]}]}],Fe.ctorParameters=function(){return[{type:o.ElementRef}]},Fe.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 Le=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 b(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}(F);Le.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}']}]}],Le.ctorParameters=function(){return[{type:V},{type:A},{type:o.ElementRef}]},Le.propDecorators={placeholder:[{type:o.Input}],options:[{type:o.Input}],autoDefault:[{type:o.Input}]};var Re=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}();Re.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}"]}]}],Re.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 Ne=function(){this.selectAllCheckbox=new n.FormControl(!1),this.rowCheckboxes=new n.FormArray([]),this.lastClickedIndex=-1,this.rowAddedOrRemoved=new s.Subject},_e=function(){function e(){this.id="",this.rowIndex=-1,this.lockedColOptions={border:!1,left:0},this.isSelected=!1,this.isHeader=!1,this.dependentCheckboxesReference={controls:[]},this.checkboxAttributeID="",this.destroyed=new s.Subject}return 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){e.rowIndex&&!this.isHeader&&(this.formControl=this.context.rowCheckboxes.at(this.rowIndex),this.checkboxAttributeID=this.id+"_row"+this.rowIndex+"_ecCheckbox")},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){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(l.debounceTime(10),l.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(l.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}();_e.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<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\x3c!-- The rest of the table row --\x3e\r\n<ng-content></ng-content>\r\n',styles:[":host: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}"]}]}],_e.propDecorators={id:[{type:o.HostBinding,args:["attr.id"]},{type:o.Input}],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 Be=function(){function e(e){this.dialogService=e,this.activeDialogEvents=[],this.destroyed=new s.Subject}return e.prototype.ngOnInit=function(){var e=this;this.dialogService.events.pipe(l.filter((function(e){return e instanceof Z||e instanceof ee})),l.takeUntil(this.destroyed)).subscribe((function(t){var o,n;if(t instanceof Z)e.activeDialogEvents.push(t);else if(t instanceof ee&&e.activeDialogEvents.length>0){var r=e.activeDialogEvents[e.activeDialogEvents.length-1];e.dialogService.triggerEvent(new Q(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}();Be.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)}"]}]}],Be.ctorParameters=function(){return[{type:oe}]};var Ue={zip:[".zip"],excel:[".xls",".xlsx"]},je=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 b(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(l.takeUntil(this.componentDestroyed)).subscribe((function(e){e||n.formModel.patchValue({file:null,base64FileString:null,uploadResult:null})}))},t.prototype.fileChange=function(e){return y(this,void 0,void 0,(function(){var t,o,n=this;return v(this,(function(r){switch(r.label){case 0:return(t=e.item(0))?((o=new FileReader).onloadend=function(e){return y(n,void 0,void 0,(function(){var e,n;return v(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=Ue[this.fileType].join(","):this.customExtensions&&(this.fileTypeAccept=this.customExtensions.join(",")))},t.prototype.processFile=function(e,t){return y(this,void 0,void 0,(function(){var o;return v(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}(F);je.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)}"]}]}],je.ctorParameters=function(){return[{type:V},{type:A}]},je.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 He=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?He(e,t):t(e)})):e instanceof n.FormGroup?He(e,t):t(e)}))},qe=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},We=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 s.Subject}return e.prototype.ngOnInit=function(){return y(this,void 0,void 0,(function(){var e=this;return v(this,(function(t){return this.formGroup&&(this.formGroup.statusChanges.pipe(l.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 He(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 y(this,void 0,void 0,(function(){var t;return v(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}();We.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}']}]}],We.ctorParameters=function(){return[{type:V},{type:i.TranslateService}]},We.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 Ge=function(){function e(){}return e.tryParseJSON=function(e){if(e)try{return JSON.parse(e)}catch(e){return}},e}(),$e=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=Ge.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}();$e.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}"]}]}],$e.ctorParameters=function(){return[{type:i.TranslateService}]},$e.propDecorators={id:[{type:o.Input}],attrId:[{type:o.HostBinding,args:["attr.id"]}],jsonString:[{type:o.Input}],maxLength:[{type:o.Input}]};var Ye=function(e,t,o){void 0===o&&(o="user"),this.action=e,this.toast=t,this.source=o},Xe=function(){function e(){this._events=new s.Subject,this.events=this._events.asObservable()}return e.prototype.showToast=function(e,t){var o=new Ye("add",e,t);this._events.next(o)},e.prototype.dismissToast=function(e,t){var o=new Ye("remove",e,t);this._events.next(o)},e}();Xe.ɵprov=o.ɵɵdefineInjectable({factory:function(){return new Xe},token:Xe,providedIn:"root"}),Xe.decorators=[{type:o.Injectable,args:[{providedIn:"root"}]}],Xe.ctorParameters=function(){return[]};var Ke=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 s.Subject}return e.prototype.ngOnInit=function(){var e=this;this.toastService.events.pipe(l.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,s.timer(this.TOAST_ANIMATION_DURATION).subscribe((function(){t.closed.emit(e)}))},e.prototype.closeAfterTimer=function(){var e=this;s.timer(this.TIMED_TOAST_DURATION).pipe(l.takeUntil(s.race(this.closed,this.destroyed))).subscribe((function(){e.toastItem&&e.toastService.dismissToast(e.toastItem,"auto")}))},e}();Ke.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 <p id="{{toastItem?.id}}_message"\r\n class="mb-0">{{toastItem?.message | translate}}</p>\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)}"]}]}],Ke.ctorParameters=function(){return[{type:Xe}]},Ke.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 Ze=function(){},Je=function(e){function t(){return null!==e&&e.apply(this,arguments)||this}return b(t,e),t.prototype.trackPageView=function(e,t,o){},t.prototype.trackEvent=function(e,t,o){},t}(Ze);Je.ɵprov=o.ɵɵdefineInjectable({factory:function(){return new Je},token:Je,providedIn:"root"}),Je.decorators=[{type:o.Injectable,args:[{providedIn:"root"}]}];var Qe=function(){function e(e,t){this.toastService=e,this.telemetryService=t,this.dismissibleToastBottom=0,this.pendingToasts=[],this.destroyed=new s.Subject}return e.prototype.ngOnInit=function(){var e=this;this.toastService.events.pipe(l.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}();Qe.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>'}]}],Qe.ctorParameters=function(){return[{type:Xe},{type:Je}]},Qe.propDecorators={timedToastEl:[{type:o.ViewChild,args:["timedToast",{static:!1,read:o.ElementRef}]}]};var et=function(){function e(){this.isDialog=!1,this.status=new G("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}();et.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}']}]}],et.ctorParameters=function(){return[]},et.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 tt=function(){};tt.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"}}]}],tt.propDecorators={title:[{type:o.Input}],titleIcon:[{type:o.Input}],subTitle:[{type:o.Input}]};var ot=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)})),m.default(e).format(this.lastFormatString)},e}();ot.decorators=[{type:o.Pipe,args:[{name:"timeDisplay"}]}],ot.ctorParameters=function(){return[{type:P}]};var nt=function(){function e(){}return e.forRoot=function(t){return{ngModule:e,providers:[{provide:Je,useClass:t.telemetryService}]}},e}();nt.decorators=[{type:o.NgModule,args:[{declarations:[E,q,W,j,re,$,D,C,q,T,Me,N,B,L,U,X,ne,z,ot,le,pe,ue,fe,be,ye,xe,Se,Te,De,M,Ee,Oe,Pe,_e,ze,ke,Ce,Ve,ke,Ae,Fe,Le,Re,_e,S,Be,je,We,$e,Ke,Qe,et,tt],imports:[t.CommonModule,n.FormsModule,n.ReactiveFormsModule,r.RouterModule,i.TranslateModule,a.A11yModule],providers:[A,oe,z,ot,le,Ce],exports:[E,q,W,j,re,$,D,q,T,Me,N,B,L,U,X,ne,z,ot,pe,ue,fe,be,ye,xe,Se,Te,De,M,Ee,Pe,_e,ze,Ve,ke,Ae,Fe,Le,Re,S,Be,je,We,$e,Ke,Qe,et,tt]}]}];var rt=function(){},it=function(){};function at(e,t){var o=c.get(e,t);return e&&"string"==typeof o?o.toLowerCase():e[t]}it.ndash="–";var st=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)},lt=function(){};lt.requiredPlural=function(e){return null!==n.Validators.required(e)?{requiredPlural:!0}:null},lt.json=function(e){return e.value&&void 0===Ge.tryParseJSON(e.value)?{json:!0}:null};var ct=function(){this.title=""},dt=function(){function e(e){this.classList="d-flex flex-grow",this.title="",this.status=new G("pending","Loading"),this.formGroup=new n.FormGroup({}),this.defaultInvalidFormMessage="PleaseCorrectForm_SC",this.defaultUnknownSaveError="PageBaseUnknownSaveError_SC",this.destroyed=new s.Subject,this._afterViewInitComplete=new s.ReplaySubject,this.afterViewInitComplete=this._afterViewInitComplete,this._errors="",this.errorService=e.get(Ie),this.translateService=e.get(i.TranslateService),this.scrollService=e.get(R),this.router=e.get(r.Router),this.activatedRoute=e.get(r.ActivatedRoute),this.dialogService=e.get(oe)}return Object.defineProperty(e.prototype,"errors",{get:function(){return this._errors},enumerable:!1,configurable:!0}),e.prototype.ngOnInit=function(){var e;return y(this,void 0,void 0,(function(){var t;return v(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 y(this,void 0,void 0,(function(){return v(this,(function(e){return[2]}))}))},e.prototype.ngAfterViewInit=function(){var e;return y(this,void 0,void 0,(function(){var t,o;return v(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 s.ReplaySubject,this.ngOnInit(),this.ngAfterViewInit()},e.prototype.applyModelUpdates=function(){return y(this,void 0,void 0,(function(){return v(this,(function(e){return[2]}))}))},e.prototype.saveToApi=function(){return y(this,void 0,void 0,(function(){return v(this,(function(e){return[2]}))}))},e.prototype.onSaveComplete=function(e){},e.prototype.onSave=function(e){var t;return y(this,void 0,void 0,(function(){var e,o,n=this;return v(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(l.takeUntil(this.destroyed),l.filter((function(e){return e instanceof r.NavigationEnd}))).subscribe((function(t){try{e.onNavigationEnd()}catch(t){e.onError(t)}})))},e}();dt.decorators=[{type:o.Directive}],dt.ctorParameters=function(){return[{type:o.Injector}]},dt.propDecorators={classList:[{type:o.HostBinding,args:["class"]}]};var pt=new MouseEvent("click");var ut=function(){function e(e){this.suffix=e,this.currentLang="en_US"}return e.prototype.get=function(e,t){return s.of(e+(this.suffix||""))},e.prototype.stream=function(e,t){return s.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}(),ht=function(){function e(){}return e.prototype.translateObjectArray=function(e,t){return Promise.resolve(e)},e.prototype.translateObjectProperty=function(e,t,o){return s.of(e)},e.prototype.getKendoLocaleId=function(){return"en"},e.prototype.translateCorePopValue=function(e,t){return t},e.prototype.setLanguage=function(){},e}(),mt=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 y(this,void 0,void 0,(function(){return v(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 y(this,void 0,void 0,(function(){return v(this,(function(e){switch(e.label){case 0:return[4,this._component.onSave(pt)];case 1:return e.sent(),[2]}}))}))},e}(),gt=function(){function e(){}return e.getComponentInjector=function(){return o.Injector.create({providers:w(this.CoreProviders,this.ComponentProviders)})},e}();gt.CoreProviders=[{provide:r.Router,useFactory:ce,deps:[]},{provide:R,useFactory:function(){return ie.createSpy(R)},deps:[]},{provide:r.ActivatedRoute,useFactory:function(){return new de},deps:[]}],gt.ComponentProviders=[{provide:i.TranslateService,useFactory:function(){return new ut("-T")},deps:[]},{provide:Ie,deps:[]},{provide:oe,useFactory:function(){return ie.createSpy(oe)},deps:[]}],e.AppBarComponent=ye,e.AvatarComponent=be,e.BannerComponent=D,e.ButtonComponent=E,e.CacheService=I,e.CheckboxComponent=ue,e.ClickAreaForDirective=Te,e.CollapsibleToggleComponent=De,e.ComboboxComponent=N,e.ComponentsModule=nt,e.ConfirmComponent=X,e.ConfirmDialogContext=Y,e.CopyButtonDirective=Ve,e.CustomValidators=lt,e.DateDisplayPipe=z,e.DateTimeHelper=O,e.DialogCloseDuration=100,e.DialogCloseEvent=Q,e.DialogCloseLatestEvent=ee,e.DialogComponent=ne,e.DialogEvent=K,e.DialogGroupComponent=Be,e.DialogOpenDuration=125,e.DialogOpenEndEvent=J,e.DialogOpenStartEvent=Z,e.DialogResult=te,e.DialogService=oe,e.DropdownComponent=U,e.ErrorService=Ie,e.FileTypeExtensions=Ue,e.FileUploadComponent=je,e.FormControlBase=F,e.FormControlComponent=Fe,e.FormGroupComponent=We,e.FormGroupHelper=A,e.IfViewportWidthDirective=Se,e.ItemDisplayComponent=Re,e.JsonDisplayComponent=$e,e.JsonHelper=Ge,e.MenuComponent=B,e.MockActivatedRoute=de,e.MockDateDisplayPipe=le,e.MockDialog=ae,e.MockDialogContent=se,e.MockTranslateService=ut,e.MockTranslationHelperService=ht,e.NavGroup=H,e.NavItemActiveDirective=j,e.NumericboxComponent=fe,e.Overlay=G,e.PageBaseComponent=dt,e.PageBaseComponentTestHelper=mt,e.PageBaseComponentTestInjectorFactory=gt,e.PageInitResult=ct,e.PageTitleComponent=tt,e.PageViewComponent=et,e.PanelCloseDuration=225,e.PanelOpenDuration=250,e.PopoverComponent=ze,e.PopupContainerDirective=L,e.RadioButtonComponent=pe,e.RadioButtonOption=rt,e.ResizableColumnComponent=S,e.RowCountPipe=Ce,e.ScrollService=R,e.SearchableTableComponent=Me,e.SelectComponent=Le,e.SpinnerComponent=re,e.SplashComponent=xe,e.SplashService=ve,e.SpyFactory=ie,e.TableComponent=T,e.TableLockedColumnComponent=Pe,e.TableMasterHeaderRowComponent=Ee,e.TableMasterRowComponent=M,e.TablePaginationComponent=ke,e.TableSelectableRowComponent=_e,e.TableSelectableRowContext=Ne,e.TabsComponent=q,e.Tag=st,e.TagsComponent=Ae,e.TelemetryBaseService=Ze,e.TextboxComponent=W,e.TimeDisplayPipe=ot,e.ToastComponent=Ke,e.ToastEvent=Ye,e.ToastService=Xe,e.ToasterComponent=Qe,e.UnicodeStrings=it,e.UserPreferenceService=P,e.ValidationMessageService=V,e.ViewOverlayComponent=$,e.WindowService=_,e.canadianPostalCodeRegex=/^[a-zA-Z][0-9][a-zA-Z] [0-9][a-zA-Z][0-9]$/,e.clickEvent=pt,e.dateInputFormatRegex=/^[0-9./-]+$/,e.findAllSpacesPattern=/ /g,e.forEachFormControl=He,e.getApiError=function(e){return{error:{status:{message:e}}}},e.getControlValue=qe,e.getDecimalPattern=me,e.integerPattern=he,e.isApiError=we,e.menuAnimationSpeed=350,e.mockRouterFactory=ce,e.numericboxValidation=ge,e.orderByIgnoreCase=function(e,t,o){var n;return n=t.map((function(e){return function(t){return at(t,e)||""}})),c.orderBy(e,n,o)},e.otherZipCodeRegex=/.*/,e.sortByIgnoreCase=function(e,t){var o;return o=t.map((function(e){return function(t){return at(t,e)}})),c.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={};He(e,(function(e){var r=qe(e,t,o);null!==r&&""!==r&&("string"==typeof r&&(r=r.toLowerCase()),n.hasOwnProperty(r)?n[r]=n[r]+1:n[r]=1)})),He(e,(function(e){var r=qe(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=c.cloneDeep(e.errors);i&&i.hasOwnProperty("notUnique")&&delete i.notUnique,i&&0===Object.keys(i).length&&(i=null),e.setErrors(i)}}))},e.ɵa=C,e.ɵb=k,e.ɵc=Oe,e.ɵd=Je,Object.defineProperty(e,"__esModule",{value:!0})}));
2
2
  //# sourceMappingURL=energycap-components.umd.min.js.map