New Case Study:See how Anthropic automated 95% of dependency reviews with Socket.Learn More
Socket
Sign inDemoInstall
Socket

@remult/angular

Package Overview
Dependencies
Maintainers
2
Versions
305
Alerts
File Explorer

Advanced tools

Socket logo

Install Socket

Detect and block malicious and high-risk dependencies

Install

@remult/angular - npm Package Compare versions

Comparing version 2.0.14 to 2.0.15

2

bundles/remult-angular.umd.min.js

@@ -1,2 +0,2 @@

!function(t,n){"object"==typeof exports&&"undefined"!=typeof module?n(exports,require("@angular/material/core"),require("@angular/common"),require("@angular/forms"),require("util"),require("@angular/router"),require("@angular/common/http"),require("@angular/material/progress-spinner"),require("rxjs/operators"),require("@angular/material/dialog"),require("@angular/platform-browser/animations"),require("@angular/material/form-field"),require("@angular/material/input"),require("@angular/material/button"),require("@angular/material/list"),require("@angular/material/icon"),require("@angular/material/checkbox"),require("@angular/material/tooltip"),require("@angular/material/menu"),require("@angular/core"),require("@auth0/angular-jwt"),require("@remult/core")):"function"==typeof define&&define.amd?define("@remult/angular",["exports","@angular/material/core","@angular/common","@angular/forms","util","@angular/router","@angular/common/http","@angular/material/progress-spinner","rxjs/operators","@angular/material/dialog","@angular/platform-browser/animations","@angular/material/form-field","@angular/material/input","@angular/material/button","@angular/material/list","@angular/material/icon","@angular/material/checkbox","@angular/material/tooltip","@angular/material/menu","@angular/core","@auth0/angular-jwt","@remult/core"],n):n((t.remult=t.remult||{},t.remult.angular={}),t.ng.material.core,t.ng.common,t.ng.forms,t.util,t.ng.router,t.ng.common.http,t.ng.material["progress-spinner"],t.rxjs.operators,t.ng.material.dialog,t.ng.platformBrowser.animations,t.ng.material["form-field"],t.ng.material.input,t.ng.material.button,t.ng.material.list,t.ng.material.icon,t.ng.material.checkbox,t.ng.material.tooltip,t.ng.material.menu,t.ng.core,t.angularJwt,t.core$2)}(this,function(t,n,e,i,o,r,s,a,l,c,u,d,p,h,g,f,m,y,b,v,w,C){"use strict";var x=function(t,n){return(x=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(t,n){t.__proto__=n}||function(t,n){for(var e in n)n.hasOwnProperty(e)&&(t[e]=n[e])})(t,n)};function k(t,n){function e(){this.constructor=t}x(t,n),t.prototype=null===n?Object.create(n):(e.prototype=n.prototype,new e)}function I(n,s,a,l){return new(a=a||Promise)(function(t,e){function i(t){try{r(l.next(t))}catch(n){e(n)}}function o(t){try{r(l["throw"](t))}catch(n){e(n)}}function r(n){n.done?t(n.value):new a(function(t){t(n.value)}).then(i,o)}r((l=l.apply(n,s||[])).next())})}function _(i,o){var r,s,a,t,l={label:0,sent:function(){if(1&a[0])throw a[1];return a[1]},trys:[],ops:[]};return t={next:n(0),"throw":n(1),"return":n(2)},"function"==typeof Symbol&&(t[Symbol.iterator]=function(){return this}),t;function n(n){return function(t){return function e(t){if(r)throw new TypeError("Generator is already executing.");for(;l;)try{if(r=1,s&&(a=2&t[0]?s["return"]:t[0]?s["throw"]||((a=s["return"])&&a.call(s),0):s.next)&&!(a=a.call(s,t[1])).done)return a;switch(s=0,a&&(t=[2&t[0],a.value]),t[0]){case 0:case 1:a=t;break;case 4:return l.label++,{value:t[1],done:!1};case 5:l.label++,s=t[1],t=[0];continue;case 7:t=l.ops.pop(),l.trys.pop();continue;default:if(!(a=0<(a=l.trys).length&&a[a.length-1])&&(6===t[0]||2===t[0])){l=0;continue}if(3===t[0]&&(!a||t[1]>a[0]&&t[1]<a[3])){l.label=t[1];break}if(6===t[0]&&l.label<a[1]){l.label=a[1],a=t;break}if(a&&l.label<a[2]){l.label=a[2],l.ops.push(t);break}a[2]&&l.ops.pop(),l.trys.pop();continue}t=o.call(i,l)}catch(n){t=[6,n],s=0}finally{r=a=0}if(5&t[0])throw t[1];return{value:t[0]?t[1]:void 0,done:!0}}([n,t])}}}function F(t){var n="function"==typeof Symbol&&t[Symbol.iterator],e=0;return n?n.call(t):{next:function(){return t&&e>=t.length&&(t=void 0),{value:t&&t[e++],done:!t}}}}function T(t,n){var e="function"==typeof Symbol&&t[Symbol.iterator];if(!e)return t;var i,o,r=e.call(t),s=[];try{for(;(void 0===n||0<n--)&&!(i=r.next()).done;)s.push(i.value)}catch(a){o={error:a}}finally{try{i&&!i.done&&(e=r["return"])&&e.call(r)}finally{if(o)throw o.error}}return s}var D=(Object.defineProperty(S.prototype,"column",{set:function(t){this.map={column:t},this.map.column.__decorateDataSettings(this.map)},enumerable:!0,configurable:!0}),S.prototype.showDescription=function(){return this.map.column&&this.map.getValue||!this._getEditable()},S.prototype.getDropDown=function(){return this.map.valueList},S.prototype.showClick=function(){return!!this.map.click&&!!this._getEditable()&&(this.map.allowClick===undefined||this.map.allowClick(this.record))},S.prototype.click=function(){this.showClick()&&this.settings._click(this.map,this.record)},S.prototype.getClickIcon=function(){return this.map.clickIcon?this.map.clickIcon:"keyboard_arrow_down"},S.prototype.dataControlStyle=function(){return this.settings.__dataControlStyle(this.map)},S.prototype._getColumn=function(){return this.map.column?this.settings.__getColumn(this.map,this.record):new C.StringColumn},S.prototype._getEditable=function(){return!!this.notReadonly||this.settings._getEditable(this.map,this.record)},S.prototype.ngOnChanges=function(){},S.prototype.isSelect=function(){return!(!this.map.valueList||!this._getEditable())},S.prototype.showTextBox=function(){return!this.isSelect()&&!this.showCheckbox()},S.prototype.showCheckbox=function(){return"checkbox"==this.settings._getColDataType(this.map)},S.prototype.getError=function(){return this.settings._getError(this.map,this.record)},S.prototype.getStyle=function(){return this.showDescription()?this.map.hideDataOnInput||!this._getEditable()?{display:"none"}:{width:"50px"}:{}},S.prototype.getFloatLabel=function(){return this.showDescription()&&this.settings._getColDisplayValue(this.map,this.record)?"always":""},S.decorators=[{type:v.Component,args:[{selector:"data-control",template:'<div class="data-control2">\r\n <mat-form-field appearance="outline" [floatLabel]="getFloatLabel()" *ngIf="!showCheckbox()"\r\n class="full-width-form-field dense-form-field">\r\n <mat-label>{{map.caption}}</mat-label>\r\n <div style="display:flex;" *ngIf="showTextBox()">\r\n <input #theId matInput [(ngModel)]="_getColumn().inputValue" type="{{settings._getColDataType(map)}}"\r\n (ngModelChange)="settings._colValueChanged(map,record)" [errorStateMatcher]="ngErrorStateMatches"\r\n [ngStyle]="getStyle()" />\r\n <div *ngIf="showDescription()" style="white-space: nowrap;\r\n overflow: hidden;\r\n text-overflow: ellipsis;\r\n padding-left:10px;width:100%;" (click)="click()">\r\n {{settings._getColDisplayValue(map,record)}}&nbsp;</div>\r\n </div>\r\n <div *ngIf="isSelect()">\r\n <select matNativeControl [(ngModel)]="_getColumn().inputValue"\r\n (ngModelChange)="settings._colValueChanged(map,record)">\r\n <option *ngFor="let v of getDropDown()" value="{{v.id}}">{{v.caption}}</option>\r\n\r\n </select>\r\n </div>\r\n\r\n <button mat-icon-button matSuffix *ngIf="showClick()" (click)="click()">\r\n <mat-icon>{{getClickIcon()}} </mat-icon>\r\n </button>\r\n\r\n <mat-error *ngIf="getError()" [id]="theId">{{getError()}}</mat-error>\r\n </mat-form-field>\r\n <div *ngIf="showCheckbox()">\r\n <mat-checkbox #theId1 [(ngModel)]="_getColumn().inputValue"\r\n (ngModelChange)="settings._colValueChanged(map,record)" class="fix-label">{{map.caption}}</mat-checkbox>\r\n <mat-error *ngIf="getError()" [id]="theId1">{{getError()}}</mat-error>\r\n </div>\r\n\r\n</div>',styles:[""]}]}],S.propDecorators={map:[{type:v.Input}],column:[{type:v.Input}],record:[{type:v.Input}],notReadonly:[{type:v.Input}],settings:[{type:v.Input}]},S);function S(){function t(t){var n=e.call(this)||this;return n.parent=t,n}var e;this.settings=new C.ColumnCollection(undefined,function(){return!0},undefined,undefined),this.ngErrorStateMatches=(k(t,e=n.ErrorStateMatcher),t.prototype.isErrorState=function(){return!!this.parent.getError()},new t(this))}var M=(Object.defineProperty(B.prototype,"column",{set:function(t){this.map={column:t},this.map.column.__decorateDataSettings(this.map)},enumerable:!0,configurable:!0}),B.prototype.showDescription=function(){return this.map.column&&this.map.getValue||!this._getEditable()},B.prototype.showClick=function(){return!!this.map.click&&!!this._getEditable()&&(this.map.allowClick===undefined||this.map.allowClick(this.record))},B.prototype.getClickIcon=function(){return this.map.clickIcon?this.map.clickIcon:"keyboard_arrow_down"},B.prototype.dataControlStyle=function(){return this.settings.__dataControlStyle(this.map)},B.prototype._getColumn=function(){return this.map.column?this.settings.__getColumn(this.map,this.record):new C.StringColumn},B.prototype.click=function(){this.showClick()&&this.settings._click(this.map,this.record)},B.prototype._getEditable=function(){return!!this.notReadonly||this.settings._getEditable(this.map,this.record)},B.prototype.ngOnChanges=function(){},B.prototype.getDropDown=function(){return this.map.valueList},B.prototype.isSelect=function(){return!(!this.map.valueList||!this._getEditable())},B.prototype.showTextBox=function(){return!this.isSelect()&&!this.showCheckbox()&&this._getEditable()},B.prototype.showReadonlyText=function(){return!this._getEditable()},B.prototype.showCheckbox=function(){return"checkbox"==this.settings._getColDataType(this.map)},B.prototype.getError=function(){return this.settings._getError(this.map,this.record)},B.prototype.getStyle=function(){return this.showDescription()?this.map.hideDataOnInput||!this._getEditable()?{display:"none"}:{width:"50px"}:{width:"100%"}},B.prototype.getFloatLabel=function(){return this.showDescription()&&this.settings._getColDisplayValue(this.map,this.record)?"always":""},B.decorators=[{type:v.Component,args:[{selector:"data-control3",template:'<div class="data-control3" #myDiv>\r\n <div style="display:flex;width:100%;" *ngIf="showTextBox()">\r\n <input #theId matInput [(ngModel)]="_getColumn().inputValue" type="{{settings._getColDataType(map)}}"\r\n (ngModelChange)="settings._colValueChanged(map,record)"\r\n [errorStateMatcher]="ngErrorStateMatches" [ngStyle]="getStyle()" />\r\n <div *ngIf="showDescription()" style="white-space: nowrap;\r\n overflow: hidden;\r\n text-overflow: ellipsis;\r\n padding-left:10px; width:100%;" (click)="click()">\r\n {{settings._getColDisplayValue(map,record)}}&nbsp;</div>\r\n </div>\r\n <div *ngIf="showReadonlyText()" style="\r\n overflow: hidden;\r\n padding-left:10px; width:100%;" >\r\n {{settings._getColDisplayValue(map,record)}}&nbsp;</div>\r\n <div *ngIf="isSelect()" class="my-select" [class.rtl-select]="rightToLeft">\r\n <select matNativeControl [(ngModel)]="_getColumn().inputValue"\r\n (ngModelChange)="settings._colValueChanged(map,record)">\r\n <option *ngFor="let v of getDropDown()" value="{{v.id}}">{{v.caption}}</option>\r\n\r\n </select>\r\n </div>\r\n\r\n <button mat-icon-button *ngIf="showClick()" (click)="click()" class="row-button">\r\n <mat-icon style="height:19px;">{{getClickIcon()}} </mat-icon>\r\n </button>\r\n\r\n\r\n <div *ngIf="showCheckbox()">\r\n <mat-checkbox #theId1 [(ngModel)]="_getColumn().inputValue"\r\n (ngModelChange)="settings._colValueChanged(map,record)" class="fix-label"></mat-checkbox>\r\n </div>\r\n\r\n</div>\r\n<mat-error *ngIf="getError()" [id]="theId" style="font-size: 75%;">{{getError()}}</mat-error>',styles:['.my-select::after{content:"";width:0;height:0;border-left:5px solid transparent;border-right:5px solid transparent;border-top:5px solid;position:absolute;top:50%;right:0;pointer-events:none;color:rgba(0,0,0,.54);margin-top:-5px}.rtl-select::after{right:auto;left:0}.my-select{position:relative;width:100%}.data-control3{display:-webkit-box;display:flex;width:100%}.row-button{height:auto;line-height:normal}input{border:none;outline:0;padding:0;margin:0;font-size:inherit;font-family:inherit}']}]}],B.propDecorators={map:[{type:v.Input}],column:[{type:v.Input}],rightToLeft:[{type:v.Input}],record:[{type:v.Input}],notReadonly:[{type:v.Input}],settings:[{type:v.Input}]},B);function B(){function t(t){var n=e.call(this)||this;return n.parent=t,n}var e;this.rightToLeft=!1,this.settings=new C.ColumnCollection(undefined,function(){return!0},undefined,undefined),this.ngErrorStateMatches=(k(t,e=n.ErrorStateMatcher),t.prototype.isErrorState=function(){return!!this.parent.getError()},new t(this))}var A=(L.prototype.selectFirst=function(){var t,n;try{for(var e=F(this.values),i=e.next();!i.done;i=e.next()){var o=i.value;if(this.matchesFilter(o))return void this.select(o)}}catch(r){t={error:r}}finally{try{i&&!i.done&&(n=e["return"])&&n.call(e)}finally{if(t)throw t.error}}},L.prototype.matchesFilter=function(t){return t.caption.toLocaleLowerCase().includes(this.searchString.toLocaleLowerCase())},L.prototype.args=function(t){this.values=t.values,this.onSelect=t.onSelect,this.title=t.title},L.prototype.select=function(t){this.onSelect(t),this.dialog.close()},L.decorators=[{type:v.Component,args:[{template:'<h1 mat-dialog-title>{{title}}</h1>\r\n\r\n<div mat-dialog-content>\r\n <form (submit)="selectFirst()">\r\n <mat-form-field>\r\n <input matInput [(ngModel)]="searchString" [ngModelOptions]="{standalone: true}"> \r\n </mat-form-field>\r\n </form>\r\n <mat-nav-list role="list" *ngIf="values">\r\n <ng-container *ngFor="let o of values">\r\n <mat-list-item role="listitem" style="height:36px"\r\n *ngIf="matchesFilter(o)" (click)="select(o)">\r\n {{o.caption}}\r\n </mat-list-item>\r\n <mat-divider *ngIf="matchesFilter(o)"></mat-divider>\r\n </ng-container>\r\n </mat-nav-list>\r\n</div>\r\n<div mat-dialog-actions>\r\n\r\n <button mat-icon-button mat-dialog-close>\r\n <mat-icon>clear</mat-icon>\r\n </button>\r\n</div>'}]}],L.ctorParameters=function(){return[{type:c.MatDialogRef}]},L);function L(t){this.dialog=t,this.searchString=""}var R=(G.prototype.setFilter=function(){this.info.settings.columns.filterRows(this.info.filterColumnToAdd),this.dialog.close()},G.prototype.clear=function(){this.info.settings.columns.clearFilter(this.info.filterColumnToAdd),this.dialog.close()},G.decorators=[{type:v.Component,args:[{template:'<h1 mat-dialog-title *ngIf="!info.rightToLeft">Filter {{this.info.filterColumnToAdd?.caption}}</h1>\r\n<h1 mat-dialog-title *ngIf="info.rightToLeft">סינון {{this.info.filterColumnToAdd?.caption}}</h1>\r\n<div mat-dialog-content>\r\n\r\n <data-control *ngIf="this.info.filterColumnToAdd" [settings]="info.settings.columns" [map]="info.filterColumnToAdd"\r\n [record]="info.settings.columns.filterHelper.filterRow" [notReadonly]="true"></data-control>\r\n</div>\r\n<div mat-dialog-actions>\r\n <button mat-icon-button (click)="setFilter()">\r\n <mat-icon>check</mat-icon>\r\n </button>\r\n <button mat-icon-button (click)="clear()">\r\n <mat-icon>clear</mat-icon>\r\n </button>\r\n</div>'}]}],G.ctorParameters=function(){return[{type:c.MatDialogRef}]},G);function G(t){this.dialog=t}var E=(P.prototype.getCurrentFilterValue=function(n){this.settings.initOrigList();var t=this.settings.origList.find(function(t){return t.column==n});return this.settings.columns._getColDisplayValue(t,this.settings.filterHelper.filterRow)},P.prototype.cancelAddFilter=function(){},P.prototype.showEditFilter=function(n){this.filterColumnToAdd=this.settings.origList.find(function(t){return t.column==n}),this.editFilterVisible=!0,this.showAddFilter=!1},P.prototype.userFilterButton=function(){this.showFilterButton=!this.showFilterButton,this.settings.initOrigList(),0==this.settings.filterHelper.filterColumns.length&&this.showAddAnotherFilterDialog()},P.prototype.showAddAnotherFilterDialog=function(){return I(this,void 0,void 0,function(){var n=this;return _(this,function(t){switch(t.label){case 0:return this.settings.initOrigList(),this.filterColumnToAdd=undefined,[4,this.context.openDialog(A,function(t){return t.args({title:n.rightToLeft?"בחר עמודה לסינון":"Select Column to Filter",values:n.settings.origList,onSelect:function(t){return n.filterColumnToAdd=t}})})];case 1:return t.sent(),this.filterColumnToAdd?[4,this.context.openDialog(R,function(t){return t.info=n})]:[3,3];case 2:t.sent(),t.label=3;case 3:return this.showAddFilter=!0,this.filterColumnToAdd=undefined,[2]}})})},P.prototype.editFilter=function(e){return I(this,void 0,void 0,function(){var n=this;return _(this,function(t){switch(t.label){case 0:return this.filterColumnToAdd=this.settings.origList.find(function(t){return t.column==e}),[4,this.context.openDialog(R,function(t){return t.info=n})];case 1:return t.sent(),[2]}})})},P.prototype.confirmEditFilter=function(){this.settings.columns.filterRows(this.filterColumnToAdd),this.editFilterVisible=!1},P.prototype.clearEditFilter=function(){this.settings.columns.clearFilter(this.filterColumnToAdd),this.editFilterVisible=!1},P.prototype.addFilter=function(){this.settings.columns.filterRows(this.filterColumnToAdd),this.showAddFilter=!1},P.prototype.cancelAddNewFilter=function(){this.showAddFilter=!1},P.prototype.ngAfterViewInit=function(){window&&window.getComputedStyle&&this.theDiv&&(this.rightToLeft="rtl"==window.getComputedStyle(this.theDiv.nativeElement,null).getPropertyValue("direction"))},P.decorators=[{type:v.Component,args:[{selector:"Data-Filter",template:'<span (click)="showAddAnotherFilterDialog()" #theDiv class="link" *ngIf="settings.settings.showFilter"><span *ngIf="!rightToLeft">Filter</span><span *ngIf="rightToLeft">סינון</span></span>\r\n<span *ngIf="settings.columns.filterHelper.filterColumns.length>0">: </span>\r\n<span *ngFor="let map of settings.columns.filterHelper.filterColumns ; let i = index">\r\n <span *ngIf="i>0"> <span *ngIf="!rightToLeft">and</span><span *ngIf="rightToLeft">וגם</span> </span>\r\n <span (click)="editFilter(map)" class="link"> {{map.defs.caption}} = "{{this.getCurrentFilterValue(map)}}"</span>\r\n</span>',styles:[".link {\n cursor:pointer;\n color:blue;\n text-decoration:underline;\n }"]}]}],P.ctorParameters=function(){return[{type:C.Context}]},P.propDecorators={settings:[{type:v.Input}],theDiv:[{type:v.ViewChild,args:["theDiv"]}]},P);function P(t){this.context=t,this.showFilterButton=!1,this.showAddFilter=!1,this.editFilterVisible=!1,this.rightToLeft=!1}var O=(V.prototype.ngAfterViewInit=function(){window&&window.getComputedStyle&&this.dataGridDiv&&(this.rightToLeft="rtl"==window.getComputedStyle(this.dataGridDiv.nativeElement,null).getPropertyValue("direction"))},V.prototype.addCol=function(e){return I(this,void 0,void 0,function(){var n=this;return _(this,function(t){switch(t.label){case 0:return[4,this.context.openDialog(A,function(t){return t.args({values:n.settings.origList,onSelect:function(t){n.settings.columns.addCol(e,t),n.settings.columns.numOfColumnsInGrid++}})})];case 1:return t.sent(),[2]}})})},V.prototype.getColFlex=function(t){return"0 0 "+this.getColWidth(t)},V.prototype.getColWidth=function(t){var n=this.settings.columns.__dataControlStyle(t);return n=n||"200px"},V.prototype.test=function(){},V.prototype.getTotalRows=function(){return this.settings.totalRows?Math.ceil(this.settings.totalRows/this.settings.rowsPerPage):this.rightToLeft?"רבים":"many"},V.prototype.dragStart=function(t){this.tempDragColumn=t},V.prototype.dragOver=function(t,n){n.preventDefault()},V.prototype.onDrop=function(t){var n=this.settings.columns.items.indexOf(this.tempDragColumn);this.settings.columns.items.splice(n,1);var e=this.settings.columns.items.indexOf(t);e==n&&e++,this.settings.columns.items.splice(e,0,this.tempDragColumn),this.settings.columns.colListChanged()},V.prototype._getHeight=function(){if(this.height)return(+this.height).toString()==this.height?this.height+"px":this.height},V.prototype.isFiltered=function(t){return this.settings.columns.filterHelper.isFiltered(t)},V.prototype.showFilterColumnDialog=function(t){this.settings.initOrigList(),this.dataFilterInfo.editFilter(t.column)},V.prototype.getButtonCssClass=function(t,n){return t.cssClass?o.isFunction(t.cssClass)?t.cssClass(n):t.cssClass.toString():""},V.prototype.getButtonText=function(t,n){return t.textInMenu?o.isFunction(t.textInMenu)?n?t.textInMenu(n):"":t.textInMenu:t.name},V.prototype.hasVisibleButton=function(n){return this.rowButtons.find(function(t){return t.visible(n)})},V.prototype.hasVisibleGridButtons=function(){return this.gridButtons.find(function(t){return t.visible()})},V.prototype.addButton=function(t){if(t.click||(t.click=function(t){}),t.visible||(t.visible=function(t){return!0}),t.cssClass){if(!o.isFunction(t.cssClass)){var n=t.cssClass;t.cssClass=function(t){return n}}}else t.cssClass=function(t){return"btn"};return this.rowButtons.push(t),t},V.prototype.rowClicked=function(t){this.settings.setCurrentRow(t)},V.prototype.nextPage=function(){this.page++},V.prototype.previousPage=function(){this.page<=1||this.page--},V.prototype.ngOnChanges=function(){var t,n,e,i=this;if(this.settings){if(this.rowButtons=[],this.gridButtons=[],this.gridButtons.push({visible:function(){return i.settings.items.find(function(t){return t.wasChanged()})},textInMenu:function(){return i.rightToLeft?"שמור "+i.settings.items.filter(function(t){return t.wasChanged()}).length+" שורות":"save "+i.settings.items.filter(function(t){return t.wasChanged()}).length+" rows"},click:function(){return I(i,void 0,void 0,function(){return _(this,function(t){switch(t.label){case 0:return[4,Promise.all(this.settings.items.filter(function(t){return t.wasChanged()}).map(function(t){return t.save()}))];case 1:return t.sent(),[2]}})})}}),this.settings.settings.gridButtons&&(t=this.gridButtons).push.apply(t,function a(){for(var t=[],n=0;n<arguments.length;n++)t=t.concat(T(arguments[n]));return t}(this.settings.settings.gridButtons.map(function(t){return t.visible||(t.visible=function(){return!0}),t}))),this.settings.allowUpdate&&(this.addButton({name:"",icon:"check",cssClass:"glyphicon glyphicon-ok btn-success",visible:function(t){return t.wasChanged()},showInLine:!0,textInMenu:function(){return i.rightToLeft?"שמור":"save"},click:function(t){i.settings._doSavingRow(t)}}),this.addButton({name:"",icon:"cancel",cssClass:"btn btn-danger glyphicon glyphicon-ban-circle",visible:function(t){return t.wasChanged()},showInLine:!0,textInMenu:function(){return i.rightToLeft?"בטל שינוים":"cancel"},click:function(t){t.undoChanges()}})),this.settings.allowDelete&&this.addButton({name:"",visible:function(t){return t&&!t.isNew()},icon:"delete",showInLine:!0,textInMenu:function(){return i.rightToLeft?"מחק":"delete"},click:function(n){return I(i,void 0,void 0,function(){return _(this,function(t){switch(t.label){case 0:return this.settings.settings.confirmDelete?[4,this.settings.settings.confirmDelete(n)]:[3,2];case 1:if(!t.sent())return[2];t.label=2;case 2:return n["delete"](),[2]}})})},cssClass:"btn-danger glyphicon glyphicon-trash"}),this.settings._buttons)try{for(var o=F(this.settings._buttons),r=o.next();!r.done;r=o.next()){var s=r.value;this.addButton(s)}}catch(l){n={error:l}}finally{try{r&&!r.done&&(e=o["return"])&&e.call(o)}finally{if(n)throw n.error}}!this.records&&this.settings&&this.settings.getRecords().then(function(t){i.records=t})}},V.prototype._getRowClass=function(t){var n="dataGridRow ";return this.settings.rowClass&&(n+=this.settings.rowClass(t)),t==this.settings.currentRow&&(n+=" active"),n},V.prototype._getRowColumnClass=function(t,n){return this.settings.columns._getColumnClass(t,n)+" dataGridDataCell"},V.decorators=[{type:v.Component,args:[{selector:"data-grid",template:'<div style="height: 100%;display: flex;flex-direction: column;">\r\n <Data-Filter [settings]="settings" #dataFilter style="flex-shrink: 0;">\r\n </Data-Filter>\r\n <div class="dataGrid" #dataGridDiv *ngIf="settings&&settings.columns" [style.height]="_getHeight()">\r\n <div class="inner-wrapper">\r\n <div class="dataGridHeaderArea">\r\n <div class="dataGridRow">\r\n <div class="data-grid-row-more-buttons dataGridDataCell">\r\n\r\n <button mat-icon-button [matMenuTriggerFor]="updatedRowOptions" *ngIf="hasVisibleGridButtons()">\r\n <mat-icon>expand_more</mat-icon>\r\n </button>\r\n\r\n </div>\r\n <div class="data-grid-row-selection dataGridDataCell" *ngIf="settings.settings.allowSelection">\r\n\r\n <mat-checkbox [indeterminate]="settings.selectAllIntermitent()" [checked]="settings.selectAllChecked()"\r\n (change)="settings.selectAllChanged($event)"></mat-checkbox>\r\n\r\n </div>\r\n <mat-menu #updatedRowOptions="matMenu">\r\n\r\n <ng-container *ngFor="let b of gridButtons">\r\n <button mat-menu-item *ngIf="b.visible()" (click)="b.click()">\r\n <mat-icon *ngIf="b.icon">{{b.icon}}</mat-icon>{{b.textInMenu?b.textInMenu(): b.name}}\r\n </button>\r\n </ng-container>\r\n </mat-menu>\r\n <div class="dataGridHeaderCell headerWithFilter" *ngFor="let map of settings.columns.getGridColumns()"\r\n [style.flex]="getColFlex(map)" [style.width]="getColWidth(map)" draggable="true"\r\n (dragstart)="dragStart(map)" (dragover)="dragOver(map,$event)" (drop)="onDrop(map)">\r\n\r\n <span (click)="settings.sort(map.column)">{{map.caption}}</span>\r\n\r\n\r\n <span class="filterButton" [class.filteredFilterButton]="isFiltered(map.column)"\r\n (click)="showFilterColumnDialog(map)">\r\n <mat-icon>filter_alt</mat-icon>\r\n </span>\r\n \r\n <mat-icon *ngIf="settings.sortedAscending(map.column)">arrow_downward</mat-icon>\r\n <mat-icon class="glyphicon glyphicon-chevron-down pull-right" *ngIf="settings.sortedDescending(map.column)">\r\n arrow_upward</mat-icon>\r\n </div>\r\n <div class="dataGridButtonHeaderCell" *ngIf="rowButtons&& rowButtons.length>0&&displayButtons"\r\n [class.col-xs-1]="rowButtons&&rowButtons.length<3"></div>\r\n </div>\r\n </div>\r\n <div class="dataGridBodyArea">\r\n <div class="dataGridRow" *ngFor="let record of records" [className]="_getRowClass(record)"\r\n (click)="rowClicked(record)">\r\n <div class="data-grid-row-more-buttons dataGridDataCell">\r\n\r\n <button mat-icon-button [matMenuTriggerFor]="updatedRowOptions" *ngIf="hasVisibleButton(record) ">\r\n <mat-icon>more_vert</mat-icon>\r\n </button>\r\n\r\n </div>\r\n <div class="data-grid-row-selection dataGridDataCell" *ngIf="settings.settings.allowSelection">\r\n\r\n <mat-checkbox [checked]="settings.isSelected(record)" (change)="settings.selectedChanged(record)">\r\n </mat-checkbox>\r\n\r\n </div>\r\n <mat-menu #updatedRowOptions="matMenu">\r\n <ng-container *ngFor="let b of rowButtons">\r\n <button mat-menu-item *ngIf="b.visible(record)" (click)="b.click(record)">\r\n <mat-icon *ngIf="b.icon">{{b.icon}}</mat-icon>{{getButtonText(b,record)}}\r\n </button>\r\n </ng-container>\r\n\r\n </mat-menu>\r\n <div class="dataGridDataCell" *ngFor="let map of settings.columns.getGridColumns()"\r\n [className]="_getRowColumnClass(map,record)" [style.flex]="getColFlex(map)"\r\n [style.width]="getColWidth(map)">\r\n <data-control3 [settings]="settings.columns" [map]="map" [record]="record" [rightToLeft]="rightToLeft">\r\n </data-control3>\r\n </div>\r\n <div class="dataGridButtonCell" *ngIf="rowButtons.length>0&&displayButtons" style="white-space:nowrap">\r\n <ng-container *ngFor="let b of rowButtons">\r\n <button mat-icon-button *ngIf="b.visible(record)&&b.icon&&b.showInLine" (click)="b.click(record)"\r\n matTooltip="{{getButtonText(b,record)}}" class="row-button">\r\n <mat-icon *ngIf="b.icon">{{b.icon}} </mat-icon> {{b.name}}\r\n </button>\r\n <button mat-raised-button *ngIf="b.visible(record)&&!b.icon&&b.showInLine" (click)="b.click(record)"\r\n class="row-button">\r\n {{b.name}}\r\n </button>\r\n </ng-container>\r\n\r\n </div>\r\n </div>\r\n\r\n </div>\r\n </div>\r\n </div>\r\n <div class="dataGridFooterArea" *ngIf="records&&settings.settings.showPagination">\r\n <div class="dataGridFooterButtonGroup">\r\n <button mat-icon-button (click)="settings.userChooseColumns()">\r\n <mat-icon>settings</mat-icon>\r\n </button>\r\n\r\n {{rightToLeft?\'שורות בדף\': \'lines per page\'}}\r\n <select class="form-control" style="width:80px;display:inline-block" [(ngModel)]="settings.rowsPerPage"\r\n (change)="settings.getRecords()">\r\n <option *ngFor="let r of settings.rowsPerPageOptions" value="{{r}}">{{r}}</option>\r\n </select></div>\r\n <div class="dataGridFooterButtonGroup">\r\n <button mat-icon-button (click)="settings.firstPage()">\r\n <mat-icon>{{rightToLeft?\'last_page\':\'first_page\'}} </mat-icon>\r\n </button>\r\n <button mat-icon-button [disabled]="settings.page==1" (click)="settings.previousPage()">\r\n <mat-icon>{{rightToLeft?\'chevron_right\':\'chevron_left\'}}</mat-icon>\r\n </button>\r\n {{rightToLeft?\'עמוד\':\'Page\'}} {{settings.page}} {{rightToLeft?\' מתוך \':\' of \'}} {{getTotalRows()}}\r\n <button mat-icon-button [disabled]="!(records.items&& records.items.length>0)" (click)="settings.nextPage()">\r\n <mat-icon>{{!rightToLeft?\'chevron_right\':\'chevron_left\'}}</mat-icon>\r\n </button>\r\n <button mat-icon-button *ngIf="settings.allowUpdate &&settings.allowInsert" (click)="settings.addNewRow()">\r\n <mat-icon>add</mat-icon>\r\n </button>\r\n </div>\r\n <div *ngIf="settings.showSelectColumn" class="selectColumnsArea">\r\n Select Columns\r\n <ol>\r\n <ng-container *ngFor="let c of settings.currList; let i=index">\r\n <li *ngIf="i<settings.columns.numOfColumnsInGrid">\r\n <select [(ngModel)]="settings.currList[i]" class="form-control selectColumnCombo"\r\n (change)="settings.columns.colListChanged()">\r\n <option *ngFor="let o of settings.origList" [ngValue]="o">{{o.caption}}</option>\r\n </select>\r\n <input [(ngModel)]="c.width" style="width:50px;display:inline;">\r\n <button mat-icon-button *ngIf="settings.currList.length>1" (click)="settings.deleteCol(c)">\r\n <mat-icon>cancel</mat-icon>\r\n </button>\r\n <button mat-icon-button (click)="addCol(c)">\r\n <mat-icon>add</mat-icon>\r\n </button>\r\n <button mat-icon-button *ngIf="i<settings.currList.length-1" (click)="settings.columns.moveCol(c,1)">\r\n <mat-icon>keyboard_arrow_down</mat-icon>\r\n </button>\r\n <button mat-icon-button *ngIf="i>0" (click)="settings.columns.moveCol(c,-1)">\r\n <mat-icon>keyboard_arrow_up</mat-icon>\r\n </button>\r\n </li>\r\n </ng-container>\r\n </ol>\r\n <button (click)="settings.resetColumns()" class="btn glyphicon glyphicon-repeat"></button>\r\n </div>\r\n </div>\r\n\r\n\r\n\r\n\r\n <data-area *ngIf="settings.showDataArea" [settings]="settings" [columns]="2"></data-area>\r\n</div>',styles:[".row-button{height:auto;line-height:normal}.inner-wrapper{display:inline-block}.dataGrid{overflow:auto;border:1px solid #e0e0e0;height:100%}.dataGridRow{display:-webkit-box;display:flex}.dataGridHeaderArea{position:-webkit-sticky;position:sticky;top:0;clear:both;background-color:#f5f5f5;z-index:3}.dataGridHeaderArea mat-icon{font-size:16px;height:18px;width:18px;line-height:18px}.dataGridFooterButtonGroup{display:inline-block}.dataGridFooterArea{width:100%;bottom:0;left:0;background-color:#f5f5f5;border:1px solid #e0e0e0;box-sizing:border-box}.dataGridDataCell,.dataGridHeaderCell{padding:4px}.dataGridDataCell{border-top:1px solid #e0e0e0}.data-grid-row-more-buttons{border-left:1px solid #e0e0e0;border-right:1px solid #e0e0e0;padding-left:0;padding-right:0;width:18px}.data-grid-row-more-buttons mat-icon{font-size:16px;height:17px;width:18px;line-height:17px}.data-grid-row-more-buttons button{width:auto;height:auto;line-height:18px}.data-grid-row-selection{width:18px}.filterDialog{background-color:#fff;position:absolute;padding:10px;z-index:800;border-radius:5px;width:200px;border:2px solid gray}.filterDialog .form-group{margin-right:0;margin-left:0}.designModeButton span{visibility:hidden}.designModeButton:hover span{visibility:visible}.selectColumnCombo{display:inline-block;width:auto}.selectColumnsArea{display:block}.headerWithFilter .filterButton{visibility:hidden}.headerWithFilter .filteredFilterButton,.headerWithFilter:hover .filterButton{visibility:visible}table input{min-width:75px}table select{min-width:100px}"]}]}],V.ctorParameters=function(){return[{type:C.Context}]},V.propDecorators={dataGridDiv:[{type:v.ViewChild,args:["dataGridDiv"]}],width:[{type:v.Input}],height:[{type:v.Input}],displayButtons:[{type:v.Input}],displayVCR:[{type:v.Input}],records:[{type:v.Input}],settings:[{type:v.Input}],dataFilterInfo:[{type:v.ViewChild,args:[E]}]},V);function V(t){this.context=t,this.rightToLeft=!1,this.displayButtons=!0,this.displayVCR=!0,this.rowButtons=[],this.gridButtons=[],this.keys=[],this.page=1}var j=(N.prototype.navigateToComponent=function(n){var e=this,i=!1;this.router.config.forEach(function(t){i||t.component==n&&(i=!0,e.router.navigate(["/"+t.path]))}),i||console.warn("couldn't find path for ",n,this.router.config)},N.prototype.canNavigateToRoute=function(t){var n,e;if(!t.canActivate)return!0;try{for(var i=F(t.canActivate),o=i.next();!o.done;o=i.next()){var r=o.value,s=this.injector.get(r);if(s&&s.canActivate){var a=new U;if(a.routeConfig=t,!s.canActivate(a,undefined))return!1}}}catch(l){n={error:l}}finally{try{o&&!o.done&&(e=i["return"])&&e.call(i)}finally{if(n)throw n.error}}return!0},N.decorators=[{type:v.Injectable}],N.ctorParameters=function(){return[{type:r.Router},{type:v.Injector}]},N);function N(t,n){this.router=t,this.injector=n}var W=(q.prototype.isAllowed=function(){return!0},q.prototype.canActivate=function(t){if(this.context.isSignedIn()&&this.context.isAllowed(this.isAllowed()))return!0;if(!(t instanceof U)){var n=q.componentToNavigateIfNotAllowed;n!=undefined?this.helper.navigateToComponent(n):this.router.navigate(["/"])}return!1},q.decorators=[{type:v.Injectable}],q.ctorParameters=function(){return[{type:C.Context},{type:r.Router},{type:j}]},q);function q(t,n,e){this.context=t,this.router=n,this.helper=e}var H=(z.prototype.canActivate=function(t){return!this.context.isSignedIn()},z.decorators=[{type:v.Injectable}],z.ctorParameters=function(){return[{type:C.Context},{type:r.Router}]},z);function z(t,n){this.context=t,this.router=n}var J,U=(k($,J=r.ActivatedRouteSnapshot),$);function $(){return J.call(this)||this}var K=(Q.prototype.ngOnInit=function(){},Q.decorators=[{type:v.Component,args:[{selector:"app-wait",template:"<mat-progress-spinner [mode]=\"'indeterminate'\" >\r\n</mat-progress-spinner>",styles:[""]}]}],Q.ctorParameters=function(){return[]},Q);function Q(){}var X=(Y.prototype.donotWait=function(n){return I(this,void 0,void 0,function(){return _(this,function(t){switch(t.label){case 0:this.disableWait=!0,t.label=1;case 1:return t.trys.push([1,,3,4]),[4,n()];case 2:return[2,t.sent()];case 3:return this.disableWait=!1,[7];case 4:return[2]}})})},Y.prototype.donotWaitNonAsync=function(t){this.disableWait=!0;try{return t()}finally{this.disableWait=!1}},Y.prototype.log=function(t,n){},Y.prototype.doWhileShowingBusy=function(e){return I(this,void 0,void 0,function(){var n;return _(this,function(t){switch(t.label){case 0:n=this.showBusy(),t.label=1;case 1:return t.trys.push([1,,3,4]),[4,e()];case 2:return[2,t.sent()];case 3:return n(),[7];case 4:return[2]}})})},Y.prototype.showBusy=function(){var t=this,n=this.id++;return this.disableWait?function(){}:(this.log(n,"start busy "),0==this.numOfWaits&&setTimeout(function(){0<t.numOfWaits&&!t.waitRef&&(t.log(n,"actual start busy "),t.waitRef=t.dialog.open(K,{disableClose:!0}))},300),this.numOfWaits++,function(){t.numOfWaits--,t.log(n,"close busy "),0==t.numOfWaits&&(t.log(n,"close top busy "),t.waitRef&&(t.log(n,"actual close top busy "),t.waitRef.close(),t.waitRef=undefined))})},Y.decorators=[{type:v.Injectable}],Y.ctorParameters=function(){return[{type:c.MatDialog}]},Y);function Y(t){this.dialog=t,this.id=0,this.numOfWaits=0,this.disableWait=!1,Y.singleInstance=this}var Z=(tt.prototype.intercept=function(t,n){var e=this.busy.showBusy();return n.handle(t).pipe(l.finalize(function(){return e()}))},tt.decorators=[{type:v.Injectable}],tt.ctorParameters=function(){return[{type:X}]},tt);function tt(t){this.busy=t}var nt=(et.prototype.ngOnChanges=function(){var t=this;if(this.settings&&this.settings.columns){this.object&&(this.settings=new C.DataAreaSettings({columnSettings:function(){return C.getColumnsFromObject(t.object)}})),this.settings.columns.onColListChange(function(){return t.lastCols=undefined});var n=this.settings;n.settings&&n.settings.numberOfColumnAreas&&(this.columns=n.settings.numberOfColumnAreas)}},et.prototype.theColumns=function(){var t=this.settings.columns.getNonGridColumns();if(t==this.lastAllCols)return this.lastCols;this.lastAllCols=t;var n,e=[];this.lastCols=e;for(var i=0;i<this.columns;i++)e.push([]);n=this.settings.lines?this.settings.lines:t.map(function(t){return[t]});var o=Math.round(n.length/this.columns);for(i=0;i<n.length;i++)e[Math.floor(i/o)].push(n[i]);return this.lastCols},et.decorators=[{type:v.Component,args:[{selector:"data-area",template:'<div class="column-container">\r\n <div *ngFor="let col of theColumns()">\r\n <ng-container *ngFor="let line of col">\r\n <div class="one-line">\r\n <ng-container *ngFor="let map of line">\r\n <data-control [settings]="settings.columns" [map]="map" [record]="settings.columns.currentRow()" *ngIf="settings.columns.__visible(map,settings.columns.currentRow())">\r\n </data-control>\r\n </ng-container>\r\n </div>\r\n </ng-container>\r\n </div>\r\n</div>',encapsulation:v.ViewEncapsulation.None,styles:[".one-line{display:-webkit-box;display:flex;-webkit-box-pack:justify;justify-content:space-between}.one-line>*{margin-left:.2em;margin-right:.2em;flex-basis:1px;-webkit-box-flex:1;flex-grow:1}@media only screen and (min-width:768px){.column-container{display:-webkit-box;display:flex;width:100%}.column-container>div{width:100%}}"]}]}],et.propDecorators={settings:[{type:v.Input}],object:[{type:v.Input}],columns:[{type:v.Input}]},et);function et(){this.settings={columns:new C.ColumnCollection(function(){return undefined},function(){return!1},undefined,function(){return!0}),lines:undefined},this.columns=1}var it=(ot.prototype.post=function(t,n){return this.http.post(t,n).toPromise()},ot.prototype["delete"]=function(t){return this.http["delete"](t).toPromise().then(function(t){})},ot.prototype.put=function(t,n){return this.http.put(t,n).toPromise()},ot.prototype.get=function(t){return this.http.get(t).toPromise()},ot);function ot(t){this.http=t}var rt="authorization",st=(at.prototype.getToken=function(){return this.currentToken},at.prototype.loadSessionFromCookie=function(t){this.path=t,this.tokenName=rt,this.path&&(this.tokenName+="/"+t);var n=sessionStorage.getItem(this.tokenName);if(n)this._setToken(n);else if(n=localStorage.getItem(this.tokenName))this._setToken(n);else{var e=document.cookie,i=e.indexOf(rt+"=");0<=i&&(0<=(i=(e=e.substring(i+rt.length+2).trim()).indexOf(";"))&&(e=e.substring(0,i-1)),this._setToken(e),sessionStorage.setItem(this.tokenName,e))}},at.prototype.setToken=function(e,i){return void 0===i&&(i=!1),I(this,void 0,void 0,function(){var n;return _(this,function(t){return e?(this._setToken(e),n=rt+"="+e,this.path?n+="; path="+this.path:n+=";path=/",i&&(n+="; expires = Thu, 01 Jan 2076 00:00:00 GMT",localStorage.setItem(this.tokenName,e)),sessionStorage.setItem(this.tokenName,e),document.cookie=n,[2,!0]):(this.signout(),[2,!1])})})},at.prototype._setToken=function(t){this.currentToken=t;var n=undefined;if(this.currentToken)try{n=(new w.JwtHelperService).decodeToken(t)}catch(e){console.log(e)}this.context._setUser(n),this.tokenInfoChanged&&this.tokenInfoChanged()},at.prototype.signout=function(){this._setToken("");var t=rt+"=; expires = Thu, 01 Jan 1970 00:00:00 GMT";this.path?t+="; path="+this.path:t+=";path=/",document.cookie=t,localStorage.removeItem(this.tokenName),sessionStorage.removeItem(this.tokenName)},at.decorators=[{type:v.Injectable}],at.ctorParameters=function(){return[{type:C.Context}]},at);function at(t){this.context=t}var lt=(ct.prototype.intercept=function(t,n){var e=t,i=this.sessionManager.getToken();return i&&0<i.length&&(e=t.clone({headers:t.headers.set(rt,"Bearer "+i)})),n.handle(e)},ct.decorators=[{type:v.Injectable}],ct.ctorParameters=function(){return[{type:st}]},ct);function ct(t){this.sessionManager=t}var ut=(dt.decorators=[{type:v.NgModule,args:[{declarations:[D,nt,E,O,K,M,A,R],imports:[i.FormsModule,e.CommonModule,s.HttpClientModule,a.MatProgressSpinnerModule,c.MatDialogModule,u.BrowserAnimationsModule,d.MatFormFieldModule,h.MatButtonModule,g.MatListModule,y.MatTooltipModule,p.MatInputModule,f.MatIconModule,i.ReactiveFormsModule,m.MatCheckboxModule,b.MatMenuModule],providers:[{provide:C.Context,useFactory:ht,deps:[s.HttpClient,c.MatDialog]},st,H,W,j,X,{provide:s.HTTP_INTERCEPTORS,useClass:Z,multi:!0},{provide:s.HTTP_INTERCEPTORS,useClass:lt,multi:!0}],exports:[D,E,O,nt,A],entryComponents:[K,A,R]}]}],dt);function dt(){}var pt=Symbol("dialogConfigMember");function ht(t,s){var e=this,n=new C.Context;n.openDialog=function(i,o,r){return I(e,void 0,void 0,function(){var n,e;return _(this,function(t){switch(t.label){case 0:return n=s.open(i,i[pt]),o&&o(n.componentInstance),[4,n.beforeClose().toPromise()];case 1:return e=t.sent(),r?[2,r(n.componentInstance)]:[2,e]}})})};var i=new it(t);return C.Action.provider=i,C.actionInfo.runActionWithoutBlockingUI=function(n){return I(e,void 0,void 0,function(){return _(this,function(t){switch(t.label){case 0:return[4,X.singleInstance.donotWait(n)];case 1:return[2,t.sent()]}})})},n.setDataProvider(new C.RestDataProvider(C.Context.apiBaseUrl,i)),n}t.BusyService=X,t.SelectValueDialogComponent=A,t.JwtSessionManager=st,t.DialogConfig=function gt(n){return function(t){return t[pt]=n,t}},t.buildContext=ht,t.RemultModule=ut,t.RouteHelperService=j,t.SignedInGuard=W,t.NotSignedInGuard=H,t.ɵd=nt,t.ɵc=D,t.ɵh=M,t.ɵe=E,t.ɵf=O,t.ɵi=R,t.ɵa=Z,t.ɵg=K,t.ɵb=lt,Object.defineProperty(t,"__esModule",{value:!0})});
!function(t,n){"object"==typeof exports&&"undefined"!=typeof module?n(exports,require("@angular/material/core"),require("@angular/common"),require("@angular/forms"),require("util"),require("@angular/router"),require("@angular/common/http"),require("@angular/material/progress-spinner"),require("rxjs/operators"),require("@angular/material/dialog"),require("@angular/platform-browser/animations"),require("@angular/material/form-field"),require("@angular/material/input"),require("@angular/material/button"),require("@angular/material/list"),require("@angular/material/icon"),require("@angular/material/checkbox"),require("@angular/material/tooltip"),require("@angular/material/menu"),require("@angular/core"),require("@auth0/angular-jwt"),require("@remult/core")):"function"==typeof define&&define.amd?define("@remult/angular",["exports","@angular/material/core","@angular/common","@angular/forms","util","@angular/router","@angular/common/http","@angular/material/progress-spinner","rxjs/operators","@angular/material/dialog","@angular/platform-browser/animations","@angular/material/form-field","@angular/material/input","@angular/material/button","@angular/material/list","@angular/material/icon","@angular/material/checkbox","@angular/material/tooltip","@angular/material/menu","@angular/core","@auth0/angular-jwt","@remult/core"],n):n((t.remult=t.remult||{},t.remult.angular={}),t.ng.material.core,t.ng.common,t.ng.forms,t.util,t.ng.router,t.ng.common.http,t.ng.material["progress-spinner"],t.rxjs.operators,t.ng.material.dialog,t.ng.platformBrowser.animations,t.ng.material["form-field"],t.ng.material.input,t.ng.material.button,t.ng.material.list,t.ng.material.icon,t.ng.material.checkbox,t.ng.material.tooltip,t.ng.material.menu,t.ng.core,t.angularJwt,t.core$2)}(this,function(t,n,e,i,o,r,s,a,l,c,u,d,p,h,g,f,m,y,b,v,w,C){"use strict";var x=function(t,n){return(x=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(t,n){t.__proto__=n}||function(t,n){for(var e in n)n.hasOwnProperty(e)&&(t[e]=n[e])})(t,n)};function k(t,n){function e(){this.constructor=t}x(t,n),t.prototype=null===n?Object.create(n):(e.prototype=n.prototype,new e)}function I(n,s,a,l){return new(a=a||Promise)(function(t,e){function i(t){try{r(l.next(t))}catch(n){e(n)}}function o(t){try{r(l["throw"](t))}catch(n){e(n)}}function r(n){n.done?t(n.value):new a(function(t){t(n.value)}).then(i,o)}r((l=l.apply(n,s||[])).next())})}function _(i,o){var r,s,a,t,l={label:0,sent:function(){if(1&a[0])throw a[1];return a[1]},trys:[],ops:[]};return t={next:n(0),"throw":n(1),"return":n(2)},"function"==typeof Symbol&&(t[Symbol.iterator]=function(){return this}),t;function n(n){return function(t){return function e(t){if(r)throw new TypeError("Generator is already executing.");for(;l;)try{if(r=1,s&&(a=2&t[0]?s["return"]:t[0]?s["throw"]||((a=s["return"])&&a.call(s),0):s.next)&&!(a=a.call(s,t[1])).done)return a;switch(s=0,a&&(t=[2&t[0],a.value]),t[0]){case 0:case 1:a=t;break;case 4:return l.label++,{value:t[1],done:!1};case 5:l.label++,s=t[1],t=[0];continue;case 7:t=l.ops.pop(),l.trys.pop();continue;default:if(!(a=0<(a=l.trys).length&&a[a.length-1])&&(6===t[0]||2===t[0])){l=0;continue}if(3===t[0]&&(!a||t[1]>a[0]&&t[1]<a[3])){l.label=t[1];break}if(6===t[0]&&l.label<a[1]){l.label=a[1],a=t;break}if(a&&l.label<a[2]){l.label=a[2],l.ops.push(t);break}a[2]&&l.ops.pop(),l.trys.pop();continue}t=o.call(i,l)}catch(n){t=[6,n],s=0}finally{r=a=0}if(5&t[0])throw t[1];return{value:t[0]?t[1]:void 0,done:!0}}([n,t])}}}function F(t){var n="function"==typeof Symbol&&t[Symbol.iterator],e=0;return n?n.call(t):{next:function(){return t&&e>=t.length&&(t=void 0),{value:t&&t[e++],done:!t}}}}function T(t,n){var e="function"==typeof Symbol&&t[Symbol.iterator];if(!e)return t;var i,o,r=e.call(t),s=[];try{for(;(void 0===n||0<n--)&&!(i=r.next()).done;)s.push(i.value)}catch(a){o={error:a}}finally{try{i&&!i.done&&(e=r["return"])&&e.call(r)}finally{if(o)throw o.error}}return s}var D=(Object.defineProperty(S.prototype,"column",{set:function(t){this.map={column:t},this.map.column.__decorateDataSettings(this.map)},enumerable:!0,configurable:!0}),S.prototype.showDescription=function(){return this.map.column&&this.map.getValue||!this._getEditable()},S.prototype.getDropDown=function(){return this.map.valueList},S.prototype.showClick=function(){return!!this.map.click&&!!this._getEditable()&&(this.map.allowClick===undefined||this.map.allowClick(this.record))},S.prototype.click=function(){this.showClick()&&this.settings._click(this.map,this.record)},S.prototype.getClickIcon=function(){return this.map.clickIcon?this.map.clickIcon:"keyboard_arrow_down"},S.prototype.dataControlStyle=function(){return this.settings.__dataControlStyle(this.map)},S.prototype._getColumn=function(){return this.map.column?this.settings.__getColumn(this.map,this.record):new C.StringColumn},S.prototype._getEditable=function(){return!!this.notReadonly||this.settings._getEditable(this.map,this.record)},S.prototype.ngOnChanges=function(){},S.prototype.isSelect=function(){return!(!this.map.valueList||!this._getEditable())},S.prototype.showTextBox=function(){return!this.isSelect()&&!this.showCheckbox()},S.prototype.showCheckbox=function(){return"checkbox"==this.settings._getColDataType(this.map)},S.prototype.getError=function(){return this.settings._getError(this.map,this.record)},S.prototype.getStyle=function(){return this.showDescription()?this.map.hideDataOnInput||!this._getEditable()?{display:"none"}:{width:"50px"}:{}},S.prototype.getFloatLabel=function(){return this.showDescription()&&this.settings._getColDisplayValue(this.map,this.record)?"always":""},S.decorators=[{type:v.Component,args:[{selector:"data-control",template:'<div class="data-control2">\r\n <mat-form-field appearance="outline" [floatLabel]="getFloatLabel()" *ngIf="!showCheckbox()"\r\n class="full-width-form-field dense-form-field">\r\n <mat-label>{{map.caption}}</mat-label>\r\n <div style="display:flex;" *ngIf="showTextBox()">\r\n <input #theId matInput [(ngModel)]="_getColumn().inputValue" type="{{settings._getColDataType(map)}}"\r\n (ngModelChange)="settings._colValueChanged(map,record)" [errorStateMatcher]="ngErrorStateMatches"\r\n [ngStyle]="getStyle()" />\r\n <div *ngIf="showDescription()" style="white-space: nowrap;\r\n overflow: hidden;\r\n text-overflow: ellipsis;\r\n padding-left:10px;width:100%;" (click)="click()">\r\n {{settings._getColDisplayValue(map,record)}}&nbsp;</div>\r\n </div>\r\n <div *ngIf="isSelect()">\r\n <select matNativeControl [(ngModel)]="_getColumn().inputValue"\r\n (ngModelChange)="settings._colValueChanged(map,record)">\r\n <option *ngFor="let v of getDropDown()" value="{{v.id}}">{{v.caption}}</option>\r\n\r\n </select>\r\n </div>\r\n\r\n <button mat-icon-button matSuffix *ngIf="showClick()" (click)="click()">\r\n <mat-icon>{{getClickIcon()}} </mat-icon>\r\n </button>\r\n\r\n <mat-error *ngIf="getError()" [id]="theId">{{getError()}}</mat-error>\r\n </mat-form-field>\r\n <div *ngIf="showCheckbox()">\r\n <mat-checkbox #theId1 [(ngModel)]="_getColumn().inputValue"\r\n (ngModelChange)="settings._colValueChanged(map,record)" class="fix-label">{{map.caption}}</mat-checkbox>\r\n <mat-error *ngIf="getError()" [id]="theId1">{{getError()}}</mat-error>\r\n </div>\r\n\r\n</div>',styles:[""]}]}],S.propDecorators={map:[{type:v.Input}],column:[{type:v.Input}],record:[{type:v.Input}],notReadonly:[{type:v.Input}],settings:[{type:v.Input}]},S);function S(){function t(t){var n=e.call(this)||this;return n.parent=t,n}var e;this.settings=new C.ColumnCollection(undefined,function(){return!0},undefined,undefined),this.ngErrorStateMatches=(k(t,e=n.ErrorStateMatcher),t.prototype.isErrorState=function(){return!!this.parent.getError()},new t(this))}var M=(Object.defineProperty(B.prototype,"column",{set:function(t){this.map={column:t},this.map.column.__decorateDataSettings(this.map)},enumerable:!0,configurable:!0}),B.prototype.showDescription=function(){return this.map.column&&this.map.getValue||!this._getEditable()},B.prototype.showClick=function(){return!!this.map.click&&!!this._getEditable()&&(this.map.allowClick===undefined||this.map.allowClick(this.record))},B.prototype.getClickIcon=function(){return this.map.clickIcon?this.map.clickIcon:"keyboard_arrow_down"},B.prototype.dataControlStyle=function(){return this.settings.__dataControlStyle(this.map)},B.prototype._getColumn=function(){return this.map.column?this.settings.__getColumn(this.map,this.record):new C.StringColumn},B.prototype.click=function(){this.showClick()&&this.settings._click(this.map,this.record)},B.prototype._getEditable=function(){return!!this.notReadonly||this.settings._getEditable(this.map,this.record)},B.prototype.ngOnChanges=function(){},B.prototype.getDropDown=function(){return this.map.valueList},B.prototype.isSelect=function(){return!(!this.map.valueList||!this._getEditable())},B.prototype.showTextBox=function(){return!this.isSelect()&&!this.showCheckbox()&&this._getEditable()},B.prototype.showReadonlyText=function(){return!this._getEditable()},B.prototype.showCheckbox=function(){return"checkbox"==this.settings._getColDataType(this.map)},B.prototype.getError=function(){return this.settings._getError(this.map,this.record)},B.prototype.getStyle=function(){return this.showDescription()?this.map.hideDataOnInput||!this._getEditable()?{display:"none"}:{width:"50px"}:{width:"100%"}},B.prototype.getFloatLabel=function(){return this.showDescription()&&this.settings._getColDisplayValue(this.map,this.record)?"always":""},B.decorators=[{type:v.Component,args:[{selector:"data-control3",template:'<div class="data-control3" #myDiv>\r\n <div style="display:flex;width:100%;" *ngIf="showTextBox()">\r\n <input #theId matInput [(ngModel)]="_getColumn().inputValue" type="{{settings._getColDataType(map)}}"\r\n (ngModelChange)="settings._colValueChanged(map,record)"\r\n [errorStateMatcher]="ngErrorStateMatches" [ngStyle]="getStyle()" />\r\n <div *ngIf="showDescription()" style="white-space: nowrap;\r\n overflow: hidden;\r\n text-overflow: ellipsis;\r\n padding-left:10px; width:100%;" (click)="click()">\r\n {{settings._getColDisplayValue(map,record)}}&nbsp;</div>\r\n </div>\r\n <div *ngIf="showReadonlyText()" style="\r\n overflow: hidden;\r\n padding-left:10px; width:100%;" >\r\n {{settings._getColDisplayValue(map,record)}}&nbsp;</div>\r\n <div *ngIf="isSelect()" class="my-select" [class.rtl-select]="rightToLeft">\r\n <select matNativeControl [(ngModel)]="_getColumn().inputValue"\r\n (ngModelChange)="settings._colValueChanged(map,record)">\r\n <option *ngFor="let v of getDropDown()" value="{{v.id}}">{{v.caption}}</option>\r\n\r\n </select>\r\n </div>\r\n\r\n <button mat-icon-button *ngIf="showClick()" (click)="click()" class="row-button">\r\n <mat-icon style="height:19px;">{{getClickIcon()}} </mat-icon>\r\n </button>\r\n\r\n\r\n <div *ngIf="showCheckbox()">\r\n <mat-checkbox #theId1 [(ngModel)]="_getColumn().inputValue"\r\n (ngModelChange)="settings._colValueChanged(map,record)" class="fix-label"></mat-checkbox>\r\n </div>\r\n\r\n</div>\r\n<mat-error *ngIf="getError()" [id]="theId" style="font-size: 75%;">{{getError()}}</mat-error>',styles:['.my-select::after{content:"";width:0;height:0;border-left:5px solid transparent;border-right:5px solid transparent;border-top:5px solid;position:absolute;top:50%;right:0;pointer-events:none;color:rgba(0,0,0,.54);margin-top:-5px}.rtl-select::after{right:auto;left:0}.my-select{position:relative;width:100%}.data-control3{display:-webkit-box;display:flex;width:100%}.row-button{height:auto;line-height:normal}input{border:none;outline:0;padding:0;margin:0;font-size:inherit;font-family:inherit}']}]}],B.propDecorators={map:[{type:v.Input}],column:[{type:v.Input}],rightToLeft:[{type:v.Input}],record:[{type:v.Input}],notReadonly:[{type:v.Input}],settings:[{type:v.Input}]},B);function B(){function t(t){var n=e.call(this)||this;return n.parent=t,n}var e;this.rightToLeft=!1,this.settings=new C.ColumnCollection(undefined,function(){return!0},undefined,undefined),this.ngErrorStateMatches=(k(t,e=n.ErrorStateMatcher),t.prototype.isErrorState=function(){return!!this.parent.getError()},new t(this))}var A=(L.prototype.selectFirst=function(){var t,n;try{for(var e=F(this.values),i=e.next();!i.done;i=e.next()){var o=i.value;if(this.matchesFilter(o))return void this.select(o)}}catch(r){t={error:r}}finally{try{i&&!i.done&&(n=e["return"])&&n.call(e)}finally{if(t)throw t.error}}},L.prototype.matchesFilter=function(t){return t.caption.toLocaleLowerCase().includes(this.searchString.toLocaleLowerCase())},L.prototype.args=function(t){this.values=t.values,this.onSelect=t.onSelect,this.title=t.title},L.prototype.select=function(t){this.onSelect(t),this.dialog.close()},L.decorators=[{type:v.Component,args:[{template:'<h1 mat-dialog-title>{{title}}</h1>\r\n\r\n<div mat-dialog-content>\r\n <form (submit)="selectFirst()">\r\n <mat-form-field>\r\n <input matInput [(ngModel)]="searchString" [ngModelOptions]="{standalone: true}"> \r\n </mat-form-field>\r\n </form>\r\n <mat-nav-list role="list" *ngIf="values">\r\n <ng-container *ngFor="let o of values">\r\n <mat-list-item role="listitem" style="height:36px"\r\n *ngIf="matchesFilter(o)" (click)="select(o)">\r\n {{o.caption}}\r\n </mat-list-item>\r\n <mat-divider *ngIf="matchesFilter(o)"></mat-divider>\r\n </ng-container>\r\n </mat-nav-list>\r\n</div>\r\n<div mat-dialog-actions>\r\n\r\n <button mat-icon-button mat-dialog-close>\r\n <mat-icon>clear</mat-icon>\r\n </button>\r\n</div>'}]}],L.ctorParameters=function(){return[{type:c.MatDialogRef}]},L);function L(t){this.dialog=t,this.searchString=""}var R=(G.prototype.setFilter=function(){this.info.settings.columns.filterRows(this.info.filterColumnToAdd),this.dialog.close()},G.prototype.clear=function(){this.info.settings.columns.clearFilter(this.info.filterColumnToAdd),this.dialog.close()},G.decorators=[{type:v.Component,args:[{template:'<h1 mat-dialog-title *ngIf="!info.rightToLeft">Filter {{this.info.filterColumnToAdd?.caption}}</h1>\r\n<h1 mat-dialog-title *ngIf="info.rightToLeft">סינון {{this.info.filterColumnToAdd?.caption}}</h1>\r\n<div mat-dialog-content>\r\n\r\n <data-control *ngIf="this.info.filterColumnToAdd" [settings]="info.settings.columns" [map]="info.filterColumnToAdd"\r\n [record]="info.settings.columns.filterHelper.filterRow" [notReadonly]="true"></data-control>\r\n</div>\r\n<div mat-dialog-actions>\r\n <button mat-icon-button (click)="setFilter()">\r\n <mat-icon>check</mat-icon>\r\n </button>\r\n <button mat-icon-button (click)="clear()">\r\n <mat-icon>clear</mat-icon>\r\n </button>\r\n</div>'}]}],G.ctorParameters=function(){return[{type:c.MatDialogRef}]},G);function G(t){this.dialog=t}var E=(P.prototype.getCurrentFilterValue=function(n){this.settings.initOrigList();var t=this.settings.origList.find(function(t){return t.column==n});return this.settings.columns._getColDisplayValue(t,this.settings.filterHelper.filterRow)},P.prototype.cancelAddFilter=function(){},P.prototype.showEditFilter=function(n){this.filterColumnToAdd=this.settings.origList.find(function(t){return t.column==n}),this.editFilterVisible=!0,this.showAddFilter=!1},P.prototype.userFilterButton=function(){this.showFilterButton=!this.showFilterButton,this.settings.initOrigList(),0==this.settings.filterHelper.filterColumns.length&&this.showAddAnotherFilterDialog()},P.prototype.showAddAnotherFilterDialog=function(){return I(this,void 0,void 0,function(){var n=this;return _(this,function(t){switch(t.label){case 0:return this.settings.initOrigList(),this.filterColumnToAdd=undefined,[4,this.context.openDialog(A,function(t){return t.args({title:n.rightToLeft?"בחר עמודה לסינון":"Select Column to Filter",values:n.settings.origList,onSelect:function(t){return n.filterColumnToAdd=t}})})];case 1:return t.sent(),this.filterColumnToAdd?[4,this.context.openDialog(R,function(t){return t.info=n})]:[3,3];case 2:t.sent(),t.label=3;case 3:return this.showAddFilter=!0,this.filterColumnToAdd=undefined,[2]}})})},P.prototype.editFilter=function(e){return I(this,void 0,void 0,function(){var n=this;return _(this,function(t){switch(t.label){case 0:return this.filterColumnToAdd=this.settings.origList.find(function(t){return t.column==e}),[4,this.context.openDialog(R,function(t){return t.info=n})];case 1:return t.sent(),[2]}})})},P.prototype.confirmEditFilter=function(){this.settings.columns.filterRows(this.filterColumnToAdd),this.editFilterVisible=!1},P.prototype.clearEditFilter=function(){this.settings.columns.clearFilter(this.filterColumnToAdd),this.editFilterVisible=!1},P.prototype.addFilter=function(){this.settings.columns.filterRows(this.filterColumnToAdd),this.showAddFilter=!1},P.prototype.cancelAddNewFilter=function(){this.showAddFilter=!1},P.prototype.ngAfterViewInit=function(){window&&window.getComputedStyle&&this.theDiv&&(this.rightToLeft="rtl"==window.getComputedStyle(this.theDiv.nativeElement,null).getPropertyValue("direction"))},P.decorators=[{type:v.Component,args:[{selector:"Data-Filter",template:'<span (click)="showAddAnotherFilterDialog()" #theDiv class="link" *ngIf="settings.settings.showFilter"><span *ngIf="!rightToLeft">Filter</span><span *ngIf="rightToLeft">סינון</span></span>\r\n<span *ngIf="settings.columns.filterHelper.filterColumns.length>0">: </span>\r\n<span *ngFor="let map of settings.columns.filterHelper.filterColumns ; let i = index">\r\n <span *ngIf="i>0"> <span *ngIf="!rightToLeft">and</span><span *ngIf="rightToLeft">וגם</span> </span>\r\n <span (click)="editFilter(map)" class="link"> {{map.defs.caption}} = "{{this.getCurrentFilterValue(map)}}"</span>\r\n</span>',styles:[".link {\n cursor:pointer;\n color:blue;\n text-decoration:underline;\n }"]}]}],P.ctorParameters=function(){return[{type:C.Context}]},P.propDecorators={settings:[{type:v.Input}],theDiv:[{type:v.ViewChild,args:["theDiv"]}]},P);function P(t){this.context=t,this.showFilterButton=!1,this.showAddFilter=!1,this.editFilterVisible=!1,this.rightToLeft=!1}var O=(V.prototype.ngAfterViewInit=function(){window&&window.getComputedStyle&&this.dataGridDiv&&(this.rightToLeft="rtl"==window.getComputedStyle(this.dataGridDiv.nativeElement,null).getPropertyValue("direction"))},V.prototype.addCol=function(e){return I(this,void 0,void 0,function(){var n=this;return _(this,function(t){switch(t.label){case 0:return[4,this.context.openDialog(A,function(t){return t.args({values:n.settings.origList,onSelect:function(t){n.settings.columns.addCol(e,t),n.settings.columns.numOfColumnsInGrid++}})})];case 1:return t.sent(),[2]}})})},V.prototype.getColFlex=function(t){return"0 0 "+this.getColWidth(t)},V.prototype.getColWidth=function(t){var n=this.settings.columns.__dataControlStyle(t);return n=n||"200px"},V.prototype.test=function(){},V.prototype.getTotalRows=function(){return this.settings.totalRows?Math.ceil(this.settings.totalRows/this.settings.rowsPerPage):this.rightToLeft?"רבים":"many"},V.prototype.dragStart=function(t){this.tempDragColumn=t},V.prototype.dragOver=function(t,n){n.preventDefault()},V.prototype.onDrop=function(t){var n=this.settings.columns.items.indexOf(this.tempDragColumn);this.settings.columns.items.splice(n,1);var e=this.settings.columns.items.indexOf(t);e==n&&e++,this.settings.columns.items.splice(e,0,this.tempDragColumn),this.settings.columns.colListChanged()},V.prototype._getHeight=function(){if(this.height)return(+this.height).toString()==this.height?this.height+"px":this.height},V.prototype.isFiltered=function(t){return this.settings.columns.filterHelper.isFiltered(t)},V.prototype.showFilterColumnDialog=function(t){this.settings.initOrigList(),this.dataFilterInfo.editFilter(t.column)},V.prototype.getButtonCssClass=function(t,n){return t.cssClass?o.isFunction(t.cssClass)?t.cssClass(n):t.cssClass.toString():""},V.prototype.getButtonText=function(t,n){return t.textInMenu?o.isFunction(t.textInMenu)?n?t.textInMenu(n):"":t.textInMenu:t.name},V.prototype.hasVisibleButton=function(n){return this.rowButtons.find(function(t){return t.visible(n)})},V.prototype.hasVisibleGridButtons=function(){return this.gridButtons.find(function(t){return t.visible()})},V.prototype.addButton=function(t){if(t.click||(t.click=function(t){}),t.visible||(t.visible=function(t){return!0}),t.cssClass){if(!o.isFunction(t.cssClass)){var n=t.cssClass;t.cssClass=function(t){return n}}}else t.cssClass=function(t){return"btn"};return this.rowButtons.push(t),t},V.prototype.rowClicked=function(t){this.settings.setCurrentRow(t)},V.prototype.nextPage=function(){this.page++},V.prototype.previousPage=function(){this.page<=1||this.page--},V.prototype.ngOnChanges=function(){var t,n,e,i=this;if(this.settings){if(this.rowButtons=[],this.gridButtons=[],this.gridButtons.push({visible:function(){return i.settings.items.find(function(t){return t.wasChanged()})},textInMenu:function(){return i.rightToLeft?"שמור "+i.settings.items.filter(function(t){return t.wasChanged()}).length+" שורות":"save "+i.settings.items.filter(function(t){return t.wasChanged()}).length+" rows"},click:function(){return I(i,void 0,void 0,function(){return _(this,function(t){switch(t.label){case 0:return[4,Promise.all(this.settings.items.filter(function(t){return t.wasChanged()}).map(function(t){return t.save()}))];case 1:return t.sent(),[2]}})})}}),this.settings.settings.gridButtons&&(t=this.gridButtons).push.apply(t,function a(){for(var t=[],n=0;n<arguments.length;n++)t=t.concat(T(arguments[n]));return t}(this.settings.settings.gridButtons.map(function(t){return t.visible||(t.visible=function(){return!0}),t}))),this.settings.allowUpdate&&(this.addButton({name:"",icon:"check",cssClass:"glyphicon glyphicon-ok btn-success",visible:function(t){return t.wasChanged()},showInLine:!0,textInMenu:function(){return i.rightToLeft?"שמור":"save"},click:function(t){i.settings._doSavingRow(t)}}),this.addButton({name:"",icon:"cancel",cssClass:"btn btn-danger glyphicon glyphicon-ban-circle",visible:function(t){return t.wasChanged()},showInLine:!0,textInMenu:function(){return i.rightToLeft?"בטל שינוים":"cancel"},click:function(t){t.undoChanges()}})),this.settings.allowDelete&&this.addButton({name:"",visible:function(t){return t&&!t.isNew()},icon:"delete",showInLine:!0,textInMenu:function(){return i.rightToLeft?"מחק":"delete"},click:function(n){return I(i,void 0,void 0,function(){return _(this,function(t){switch(t.label){case 0:return this.settings.settings.confirmDelete?[4,this.settings.settings.confirmDelete(n)]:[3,2];case 1:if(!t.sent())return[2];t.label=2;case 2:return n["delete"](),[2]}})})},cssClass:"btn-danger glyphicon glyphicon-trash"}),this.settings._buttons)try{for(var o=F(this.settings._buttons),r=o.next();!r.done;r=o.next()){var s=r.value;this.addButton(s)}}catch(l){n={error:l}}finally{try{r&&!r.done&&(e=o["return"])&&e.call(o)}finally{if(n)throw n.error}}!this.records&&this.settings&&this.settings.getRecords().then(function(t){i.records=t})}},V.prototype._getRowClass=function(t){var n="dataGridRow ";return this.settings.rowClass&&(n+=this.settings.rowClass(t)),t==this.settings.currentRow&&(n+=" active"),n},V.prototype._getRowColumnClass=function(t,n){return this.settings.columns._getColumnClass(t,n)+" dataGridDataCell"},V.decorators=[{type:v.Component,args:[{selector:"data-grid",template:'<div style="height: 100%;display: flex;flex-direction: column;">\r\n <Data-Filter [settings]="settings" #dataFilter style="flex-shrink: 0;">\r\n </Data-Filter>\r\n <div class="dataGrid" #dataGridDiv *ngIf="settings&&settings.columns" [style.height]="_getHeight()">\r\n <div class="inner-wrapper">\r\n <div class="dataGridHeaderArea">\r\n <div class="dataGridRow">\r\n <div class="data-grid-row-more-buttons dataGridDataCell">\r\n\r\n <button mat-icon-button [matMenuTriggerFor]="updatedRowOptions" *ngIf="hasVisibleGridButtons()">\r\n <mat-icon>expand_more</mat-icon>\r\n </button>\r\n\r\n </div>\r\n <div class="data-grid-row-selection dataGridDataCell" *ngIf="settings.settings.allowSelection">\r\n\r\n <mat-checkbox [indeterminate]="settings.selectAllIntermitent()" [checked]="settings.selectAllChecked()"\r\n (change)="settings.selectAllChanged($event)"></mat-checkbox>\r\n\r\n </div>\r\n <mat-menu #updatedRowOptions="matMenu">\r\n\r\n <ng-container *ngFor="let b of gridButtons">\r\n <button mat-menu-item *ngIf="b.visible()" (click)="b.click()">\r\n <mat-icon *ngIf="b.icon">{{b.icon}}</mat-icon>{{b.textInMenu?b.textInMenu(): b.name}}\r\n </button>\r\n </ng-container>\r\n </mat-menu>\r\n <div class="dataGridHeaderCell headerWithFilter" *ngFor="let map of settings.columns.getGridColumns()"\r\n [style.flex]="getColFlex(map)" [style.width]="getColWidth(map)" draggable="true"\r\n (dragstart)="dragStart(map)" (dragover)="dragOver(map,$event)" (drop)="onDrop(map)">\r\n\r\n <span (click)="settings.sort(map.column)">{{map.caption}}</span>\r\n\r\n\r\n <span class="filterButton" [class.filteredFilterButton]="isFiltered(map.column)"\r\n (click)="showFilterColumnDialog(map)">\r\n <mat-icon>filter_alt</mat-icon>\r\n </span>\r\n \r\n <mat-icon *ngIf="settings.sortedAscending(map.column)">arrow_downward</mat-icon>\r\n <mat-icon class="glyphicon glyphicon-chevron-down pull-right" *ngIf="settings.sortedDescending(map.column)">\r\n arrow_upward</mat-icon>\r\n </div>\r\n <div class="dataGridButtonHeaderCell" *ngIf="rowButtons&& rowButtons.length>0&&displayButtons"\r\n [class.col-xs-1]="rowButtons&&rowButtons.length<3"></div>\r\n </div>\r\n </div>\r\n <div class="dataGridBodyArea">\r\n <div class="dataGridRow" *ngFor="let record of records" [className]="_getRowClass(record)"\r\n (click)="rowClicked(record)">\r\n <div class="data-grid-row-more-buttons dataGridDataCell">\r\n\r\n <button mat-icon-button [matMenuTriggerFor]="updatedRowOptions" *ngIf="hasVisibleButton(record) ">\r\n <mat-icon>more_vert</mat-icon>\r\n </button>\r\n\r\n </div>\r\n <div class="data-grid-row-selection dataGridDataCell" *ngIf="settings.settings.allowSelection">\r\n\r\n <mat-checkbox [checked]="settings.isSelected(record)" (change)="settings.selectedChanged(record)">\r\n </mat-checkbox>\r\n\r\n </div>\r\n <mat-menu #updatedRowOptions="matMenu">\r\n <ng-container *ngFor="let b of rowButtons">\r\n <button mat-menu-item *ngIf="b.visible(record)" (click)="b.click(record)">\r\n <mat-icon *ngIf="b.icon">{{b.icon}}</mat-icon>{{getButtonText(b,record)}}\r\n </button>\r\n </ng-container>\r\n\r\n </mat-menu>\r\n <div class="dataGridDataCell" *ngFor="let map of settings.columns.getGridColumns()"\r\n [className]="_getRowColumnClass(map,record)" [style.flex]="getColFlex(map)"\r\n [style.width]="getColWidth(map)">\r\n <data-control3 [settings]="settings.columns" [map]="map" [record]="record" [rightToLeft]="rightToLeft">\r\n </data-control3>\r\n </div>\r\n <div class="dataGridButtonCell" *ngIf="rowButtons.length>0&&displayButtons" style="white-space:nowrap">\r\n <ng-container *ngFor="let b of rowButtons">\r\n <button mat-icon-button *ngIf="b.visible(record)&&b.icon&&b.showInLine" (click)="b.click(record)"\r\n matTooltip="{{getButtonText(b,record)}}" class="row-button">\r\n <mat-icon *ngIf="b.icon">{{b.icon}} </mat-icon> {{b.name}}\r\n </button>\r\n <button mat-raised-button *ngIf="b.visible(record)&&!b.icon&&b.showInLine" (click)="b.click(record)"\r\n class="row-button">\r\n {{b.name}}\r\n </button>\r\n </ng-container>\r\n\r\n </div>\r\n </div>\r\n\r\n </div>\r\n </div>\r\n </div>\r\n <div class="dataGridFooterArea" *ngIf="records&&settings.settings.showPagination">\r\n <div class="dataGridFooterButtonGroup">\r\n <button mat-icon-button (click)="settings.userChooseColumns()">\r\n <mat-icon>settings</mat-icon>\r\n </button>\r\n\r\n {{rightToLeft?\'שורות בדף\': \'lines per page\'}}\r\n <select class="form-control" style="width:80px;display:inline-block" [(ngModel)]="settings.rowsPerPage"\r\n (change)="settings.getRecords()">\r\n <option *ngFor="let r of settings.rowsPerPageOptions" value="{{r}}">{{r}}</option>\r\n </select></div>\r\n <div class="dataGridFooterButtonGroup">\r\n <button mat-icon-button (click)="settings.firstPage()">\r\n <mat-icon>{{rightToLeft?\'last_page\':\'first_page\'}} </mat-icon>\r\n </button>\r\n <button mat-icon-button [disabled]="settings.page==1" (click)="settings.previousPage()">\r\n <mat-icon>{{rightToLeft?\'chevron_right\':\'chevron_left\'}}</mat-icon>\r\n </button>\r\n {{rightToLeft?\'עמוד\':\'Page\'}} {{settings.page}} {{rightToLeft?\' מתוך \':\' of \'}} {{getTotalRows()}}\r\n <button mat-icon-button [disabled]="!(records.items&& records.items.length>0)" (click)="settings.nextPage()">\r\n <mat-icon>{{!rightToLeft?\'chevron_right\':\'chevron_left\'}}</mat-icon>\r\n </button>\r\n <button mat-icon-button *ngIf="settings.allowUpdate &&settings.allowInsert" (click)="settings.addNewRow()">\r\n <mat-icon>add</mat-icon>\r\n </button>\r\n </div>\r\n <div *ngIf="settings.showSelectColumn" class="selectColumnsArea">\r\n Select Columns\r\n <ol>\r\n <ng-container *ngFor="let c of settings.currList; let i=index">\r\n <li *ngIf="i<settings.columns.numOfColumnsInGrid">\r\n <select [(ngModel)]="settings.currList[i]" class="form-control selectColumnCombo"\r\n (change)="settings.columns.colListChanged()">\r\n <option *ngFor="let o of settings.origList" [ngValue]="o">{{o.caption}}</option>\r\n </select>\r\n <input [(ngModel)]="c.width" style="width:50px;display:inline;">\r\n <button mat-icon-button *ngIf="settings.currList.length>1" (click)="settings.deleteCol(c)">\r\n <mat-icon>cancel</mat-icon>\r\n </button>\r\n <button mat-icon-button (click)="addCol(c)">\r\n <mat-icon>add</mat-icon>\r\n </button>\r\n <button mat-icon-button *ngIf="i<settings.currList.length-1" (click)="settings.columns.moveCol(c,1)">\r\n <mat-icon>keyboard_arrow_down</mat-icon>\r\n </button>\r\n <button mat-icon-button *ngIf="i>0" (click)="settings.columns.moveCol(c,-1)">\r\n <mat-icon>keyboard_arrow_up</mat-icon>\r\n </button>\r\n </li>\r\n </ng-container>\r\n </ol>\r\n <button (click)="settings.resetColumns()" class="btn glyphicon glyphicon-repeat"></button>\r\n </div>\r\n </div>\r\n\r\n\r\n\r\n\r\n <data-area *ngIf="settings.showDataArea" [settings]="settings" [columns]="2"></data-area>\r\n</div>',styles:[".row-button{height:auto;line-height:normal}.inner-wrapper{display:inline-block}.dataGrid{overflow:auto;border:1px solid #e0e0e0;height:100%}.dataGridRow{display:-webkit-box;display:flex}.dataGridHeaderArea{position:-webkit-sticky;position:sticky;top:0;clear:both;background-color:#f5f5f5;z-index:3}.dataGridHeaderArea mat-icon{font-size:16px;height:18px;width:18px;line-height:18px}.dataGridFooterButtonGroup{display:inline-block}.dataGridFooterArea{width:100%;bottom:0;left:0;background-color:#f5f5f5;border:1px solid #e0e0e0;box-sizing:border-box}.dataGridDataCell,.dataGridHeaderCell{padding:4px}.dataGridDataCell{border-top:1px solid #e0e0e0}.data-grid-row-more-buttons{border-left:1px solid #e0e0e0;border-right:1px solid #e0e0e0;padding-left:0;padding-right:0;width:18px}.data-grid-row-more-buttons mat-icon{font-size:16px;height:17px;width:18px;line-height:17px}.data-grid-row-more-buttons button{width:auto;height:auto;line-height:18px}.data-grid-row-selection{width:18px}.filterDialog{background-color:#fff;position:absolute;padding:10px;z-index:800;border-radius:5px;width:200px;border:2px solid gray}.filterDialog .form-group{margin-right:0;margin-left:0}.designModeButton span{visibility:hidden}.designModeButton:hover span{visibility:visible}.selectColumnCombo{display:inline-block;width:auto}.selectColumnsArea{display:block}.headerWithFilter .filterButton{visibility:hidden}.headerWithFilter .filteredFilterButton,.headerWithFilter:hover .filterButton{visibility:visible}table input{min-width:75px}table select{min-width:100px}"]}]}],V.ctorParameters=function(){return[{type:C.Context}]},V.propDecorators={dataGridDiv:[{type:v.ViewChild,args:["dataGridDiv"]}],width:[{type:v.Input}],height:[{type:v.Input}],displayButtons:[{type:v.Input}],displayVCR:[{type:v.Input}],records:[{type:v.Input}],settings:[{type:v.Input}],dataFilterInfo:[{type:v.ViewChild,args:[E]}]},V);function V(t){this.context=t,this.rightToLeft=!1,this.displayButtons=!0,this.displayVCR=!0,this.rowButtons=[],this.gridButtons=[],this.keys=[],this.page=1}var j=(N.prototype.navigateToComponent=function(n){var e=this,i=!1;this.router.config.forEach(function(t){i||t.component==n&&(i=!0,e.router.navigate(["/"+t.path]))}),i||console.warn("couldn't find path for ",n,this.router.config)},N.prototype.canNavigateToRoute=function(t){var n,e;if(!t.canActivate)return!0;try{for(var i=F(t.canActivate),o=i.next();!o.done;o=i.next()){var r=o.value,s=this.injector.get(r);if(s&&s.canActivate){var a=new U;if(a.routeConfig=t,!s.canActivate(a,undefined))return!1}}}catch(l){n={error:l}}finally{try{o&&!o.done&&(e=i["return"])&&e.call(i)}finally{if(n)throw n.error}}return!0},N.decorators=[{type:v.Injectable}],N.ctorParameters=function(){return[{type:r.Router},{type:v.Injector}]},N);function N(t,n){this.router=t,this.injector=n}var W=(q.prototype.isAllowed=function(){return!0},q.prototype.canActivate=function(t){if(this.context.isSignedIn()&&this.context.isAllowed(this.isAllowed()))return!0;if(!(t instanceof U)){var n=q.componentToNavigateIfNotAllowed;n!=undefined?this.helper.navigateToComponent(n):this.router.navigate(["/"])}return!1},q.decorators=[{type:v.Injectable}],q.ctorParameters=function(){return[{type:C.Context},{type:r.Router},{type:j}]},q);function q(t,n,e){this.context=t,this.router=n,this.helper=e}var H=(z.prototype.canActivate=function(t){return!this.context.isSignedIn()},z.decorators=[{type:v.Injectable}],z.ctorParameters=function(){return[{type:C.Context},{type:r.Router}]},z);function z(t,n){this.context=t,this.router=n}var J,U=(k($,J=r.ActivatedRouteSnapshot),$);function $(){return J.call(this)||this}var K=(Q.prototype.ngOnInit=function(){},Q.decorators=[{type:v.Component,args:[{selector:"app-wait",template:"<mat-progress-spinner [mode]=\"'indeterminate'\" >\r\n</mat-progress-spinner>",styles:[""]}]}],Q.ctorParameters=function(){return[]},Q);function Q(){}var X=(Y.prototype.donotWait=function(n){return I(this,void 0,void 0,function(){return _(this,function(t){switch(t.label){case 0:this.disableWait=!0,t.label=1;case 1:return t.trys.push([1,,3,4]),[4,n()];case 2:return[2,t.sent()];case 3:return this.disableWait=!1,[7];case 4:return[2]}})})},Y.prototype.donotWaitNonAsync=function(t){this.disableWait=!0;try{return t()}finally{this.disableWait=!1}},Y.prototype.log=function(t,n){},Y.prototype.doWhileShowingBusy=function(e){return I(this,void 0,void 0,function(){var n;return _(this,function(t){switch(t.label){case 0:n=this.showBusy(),t.label=1;case 1:return t.trys.push([1,,3,4]),[4,e()];case 2:return[2,t.sent()];case 3:return n(),[7];case 4:return[2]}})})},Y.prototype.showBusy=function(){var t=this,n=this.id++;return this.disableWait?function(){}:(this.log(n,"start busy "),0==this.numOfWaits&&setTimeout(function(){0<t.numOfWaits&&!t.waitRef&&(t.log(n,"actual start busy "),t.waitRef=t.dialog.open(K,{disableClose:!0}))},300),this.numOfWaits++,function(){t.numOfWaits--,t.log(n,"close busy "),0==t.numOfWaits&&(t.log(n,"close top busy "),t.waitRef&&(t.log(n,"actual close top busy "),t.waitRef.close(),t.waitRef=undefined))})},Y.decorators=[{type:v.Injectable}],Y.ctorParameters=function(){return[{type:c.MatDialog}]},Y);function Y(t){this.dialog=t,this.id=0,this.numOfWaits=0,this.disableWait=!1,Y.singleInstance=this}var Z=(tt.prototype.intercept=function(t,n){var e=this.busy.showBusy();return n.handle(t).pipe(l.finalize(function(){return e()}))},tt.decorators=[{type:v.Injectable}],tt.ctorParameters=function(){return[{type:X}]},tt);function tt(t){this.busy=t}var nt=(et.prototype.ngOnChanges=function(){var t=this;if(this.settings&&this.settings.columns){this.object&&(this.settings=new C.DataAreaSettings({columnSettings:function(){return C.getColumnsFromObject(t.object)}})),this.settings.columns.onColListChange(function(){return t.lastCols=undefined});var n=this.settings;n.settings&&n.settings.numberOfColumnAreas&&(this.columns=n.settings.numberOfColumnAreas)}},et.prototype.theColumns=function(){var t=this.settings.columns.getNonGridColumns();if(t==this.lastAllCols)return this.lastCols;this.lastAllCols=t;var n,e=[];this.lastCols=e;for(var i=0;i<this.columns;i++)e.push([]);n=this.settings.lines?this.settings.lines:t.map(function(t){return[t]});var o=Math.round(n.length/this.columns);for(i=0;i<n.length;i++)e[Math.floor(i/o)].push(n[i]);return this.lastCols},et.decorators=[{type:v.Component,args:[{selector:"data-area",template:'<div class="column-container">\r\n <div *ngFor="let col of theColumns()">\r\n <ng-container *ngFor="let line of col">\r\n <div class="one-line">\r\n <ng-container *ngFor="let map of line">\r\n <data-control [settings]="settings.columns" [map]="map" [record]="settings.columns.currentRow()" *ngIf="settings.columns.__visible(map,settings.columns.currentRow())">\r\n </data-control>\r\n </ng-container>\r\n </div>\r\n </ng-container>\r\n </div>\r\n</div>',encapsulation:v.ViewEncapsulation.None,styles:[".one-line{display:-webkit-box;display:flex;-webkit-box-pack:justify;justify-content:space-between}.one-line>*{margin-left:.2em;margin-right:.2em;flex-basis:1px;-webkit-box-flex:1;flex-grow:1}@media only screen and (min-width:768px){.column-container{display:-webkit-box;display:flex;width:100%}.column-container>div{width:100%}}"]}]}],et.propDecorators={settings:[{type:v.Input}],object:[{type:v.Input}],columns:[{type:v.Input}]},et);function et(){this.settings={columns:new C.ColumnCollection(function(){return undefined},function(){return!1},undefined,function(){return!0}),lines:undefined},this.columns=1}var it=(ot.prototype.post=function(t,n){return this.http.post(t,n).toPromise()},ot.prototype["delete"]=function(t){return this.http["delete"](t).toPromise().then(function(t){})},ot.prototype.put=function(t,n){return this.http.put(t,n).toPromise()},ot.prototype.get=function(t){return this.http.get(t).toPromise()},ot);function ot(t){this.http=t}var rt="authorization",st=(at.prototype.getToken=function(){return this.currentToken},at.prototype.loadSessionFromCookie=function(t){this.path=t,this.tokenName=rt,this.path&&(this.tokenName+="/"+t);var n=sessionStorage.getItem(this.tokenName);if(n)this.setToken(n);else if(n=localStorage.getItem(this.tokenName))this.setToken(n);else{var e=document.cookie,i=e.indexOf(rt+"=");0<=i&&(0<=(i=(e=e.substring(i+rt.length+2).trim()).indexOf(";"))&&(e=e.substring(0,i-1)),this.setToken(e))}},at.prototype.setToken=function(e,i){return void 0===i&&(i=!1),I(this,void 0,void 0,function(){var n;return _(this,function(t){return e?(this._setToken(e),n=rt+"="+e,this.path?n+="; path="+this.path:n+=";path=/",i&&(n+="; expires = Thu, 01 Jan 2076 00:00:00 GMT",localStorage.setItem(this.tokenName,e)),sessionStorage.setItem(this.tokenName,e),document.cookie=n,[2,!0]):(this.signout(),[2,!1])})})},at.prototype._setToken=function(t){this.currentToken=t;var n=undefined;if(this.currentToken)try{n=(new w.JwtHelperService).decodeToken(t)}catch(e){console.log(e)}this.context._setUser(n),this.tokenInfoChanged&&this.tokenInfoChanged()},at.prototype.signout=function(){this._setToken("");var t=rt+"=; expires = Thu, 01 Jan 1970 00:00:00 GMT";this.path?t+="; path="+this.path:t+=";path=/",document.cookie=t,localStorage.removeItem(this.tokenName),sessionStorage.removeItem(this.tokenName)},at.decorators=[{type:v.Injectable}],at.ctorParameters=function(){return[{type:C.Context}]},at);function at(t){this.context=t}var lt=(ct.prototype.intercept=function(t,n){var e=t,i=this.sessionManager.getToken();return i&&0<i.length&&(e=t.clone({headers:t.headers.set(rt,"Bearer "+i)})),n.handle(e)},ct.decorators=[{type:v.Injectable}],ct.ctorParameters=function(){return[{type:st}]},ct);function ct(t){this.sessionManager=t}var ut=(dt.decorators=[{type:v.NgModule,args:[{declarations:[D,nt,E,O,K,M,A,R],imports:[i.FormsModule,e.CommonModule,s.HttpClientModule,a.MatProgressSpinnerModule,c.MatDialogModule,u.BrowserAnimationsModule,d.MatFormFieldModule,h.MatButtonModule,g.MatListModule,y.MatTooltipModule,p.MatInputModule,f.MatIconModule,i.ReactiveFormsModule,m.MatCheckboxModule,b.MatMenuModule],providers:[{provide:C.Context,useFactory:ht,deps:[s.HttpClient,c.MatDialog]},st,H,W,j,X,{provide:s.HTTP_INTERCEPTORS,useClass:Z,multi:!0},{provide:s.HTTP_INTERCEPTORS,useClass:lt,multi:!0}],exports:[D,E,O,nt,A],entryComponents:[K,A,R]}]}],dt);function dt(){}var pt=Symbol("dialogConfigMember");function ht(t,s){var e=this,n=new C.Context;n.openDialog=function(i,o,r){return I(e,void 0,void 0,function(){var n,e;return _(this,function(t){switch(t.label){case 0:return n=s.open(i,i[pt]),o&&o(n.componentInstance),[4,n.beforeClose().toPromise()];case 1:return e=t.sent(),r?[2,r(n.componentInstance)]:[2,e]}})})};var i=new it(t);return C.Action.provider=i,C.actionInfo.runActionWithoutBlockingUI=function(n){return I(e,void 0,void 0,function(){return _(this,function(t){switch(t.label){case 0:return[4,X.singleInstance.donotWait(n)];case 1:return[2,t.sent()]}})})},n.setDataProvider(new C.RestDataProvider(C.Context.apiBaseUrl,i)),n}t.BusyService=X,t.SelectValueDialogComponent=A,t.JwtSessionManager=st,t.DialogConfig=function gt(n){return function(t){return t[pt]=n,t}},t.buildContext=ht,t.RemultModule=ut,t.RouteHelperService=j,t.SignedInGuard=W,t.NotSignedInGuard=H,t.ɵd=nt,t.ɵc=D,t.ɵh=M,t.ɵe=E,t.ɵf=O,t.ɵi=R,t.ɵa=Z,t.ɵg=K,t.ɵb=lt,Object.defineProperty(t,"__esModule",{value:!0})});
//# sourceMappingURL=remult-angular.umd.min.js.map

@@ -36,3 +36,3 @@ /**

if (token) {
this._setToken(token);
this.setToken(token);
return;

@@ -42,3 +42,3 @@ }

if (token) {
this._setToken(token);
this.setToken(token);
return;

@@ -56,4 +56,3 @@ }

}
this._setToken(c);
sessionStorage.setItem(this.tokenName, c);
this.setToken(c);
}

@@ -197,2 +196,2 @@ }

}
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiand0LXNlc3Npb24tbWFuYWdlci5qcyIsInNvdXJjZVJvb3QiOiJuZzovL0ByZW11bHQvYW5ndWxhci8iLCJzb3VyY2VzIjpbInNyYy9qd3Qtc2Vzc2lvbi1tYW5hZ2VyLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7O0FBQ0EsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUUzQyxPQUFPLEVBQUUsZ0JBQWdCLEVBQUUsTUFBTSxvQkFBb0IsQ0FBQztBQUd0RCxPQUFPLEVBQUUsT0FBTyxFQUFZLE1BQU0sY0FBYyxDQUFDOztNQUszQyxTQUFTLEdBQUcsZUFBZTtBQUVqQyxNQUFNLE9BQU8saUJBQWlCOzs7O0lBSTFCLFlBQ1ksT0FBZ0I7UUFBaEIsWUFBTyxHQUFQLE9BQU8sQ0FBUztJQUU1QixDQUFDOzs7O0lBTkQsUUFBUTtRQUNKLE9BQU8sSUFBSSxDQUFDLFlBQVksQ0FBQztJQUM3QixDQUFDOzs7OztJQU9ELHFCQUFxQixDQUFDLElBQWE7UUFDL0IsSUFBSSxDQUFDLElBQUksR0FBRyxJQUFJLENBQUM7UUFDakIsSUFBSSxDQUFDLFNBQVMsR0FBRyxTQUFTLENBQUM7UUFDM0IsSUFBSSxJQUFJLENBQUMsSUFBSTtZQUNULElBQUksQ0FBQyxTQUFTLElBQUksR0FBRyxHQUFHLElBQUksQ0FBQzs7WUFDN0IsS0FBSyxHQUFHLGNBQWMsQ0FBQyxPQUFPLENBQUMsSUFBSSxDQUFDLFNBQVMsQ0FBQztRQUNsRCxJQUFJLEtBQUssRUFBRTtZQUNQLElBQUksQ0FBQyxTQUFTLENBQUMsS0FBSyxDQUFDLENBQUM7WUFDdEIsT0FBTztTQUNWO1FBQ0EsS0FBSyxHQUFHLFlBQVksQ0FBQyxPQUFPLENBQUMsSUFBSSxDQUFDLFNBQVMsQ0FBQyxDQUFDO1FBQzlDLElBQUksS0FBSyxFQUFFO1lBQ1AsSUFBSSxDQUFDLFNBQVMsQ0FBQyxLQUFLLENBQUMsQ0FBQztZQUN0QixPQUFPO1NBQ1Y7O1lBRUcsQ0FBQyxHQUFHLFFBQVEsQ0FBQyxNQUFNOztZQUNuQixDQUFDLEdBQUcsQ0FBQyxDQUFDLE9BQU8sQ0FBQyxTQUFTLEdBQUcsR0FBRyxDQUFDO1FBQ2xDLElBQUksQ0FBQyxJQUFJLENBQUMsRUFBRTtZQUNSLENBQUMsR0FBRyxDQUFDLENBQUMsU0FBUyxDQUFDLENBQUMsR0FBRyxTQUFTLENBQUMsTUFBTSxHQUFHLENBQUMsQ0FBQyxDQUFDLElBQUksRUFBRSxDQUFDO1lBQ2pELENBQUMsR0FBRyxDQUFDLENBQUMsT0FBTyxDQUFDLEdBQUcsQ0FBQyxDQUFDO1lBQ25CLElBQUksQ0FBQyxJQUFJLENBQUMsRUFBRTtnQkFDUixDQUFDLEdBQUcsQ0FBQyxDQUFDLFNBQVMsQ0FBQyxDQUFDLEVBQUUsQ0FBQyxHQUFHLENBQUMsQ0FBQyxDQUFDO2FBQzdCO1lBQ0QsSUFBSSxDQUFDLFNBQVMsQ0FBQyxDQUFDLENBQUMsQ0FBQztZQUNsQixjQUFjLENBQUMsT0FBTyxDQUFDLElBQUksQ0FBQyxTQUFTLEVBQUUsQ0FBQyxDQUFDLENBQUM7U0FDN0M7SUFDTCxDQUFDOzs7Ozs7SUFFSyxRQUFRLENBQUMsUUFBZ0IsRUFBRSxnQkFBZ0IsR0FBRyxLQUFLOztZQUdyRCxJQUFJLFFBQVEsRUFBRTtnQkFDVixJQUFJLENBQUMsU0FBUyxDQUFDLFFBQVEsQ0FBQyxDQUFDOztvQkFDckIsQ0FBQyxHQUFHLFNBQVMsR0FBRyxHQUFHLEdBQUcsUUFBUTtnQkFHbEMsSUFBSSxJQUFJLENBQUMsSUFBSSxFQUFFO29CQUNYLENBQUMsSUFBSSxTQUFTLEdBQUcsSUFBSSxDQUFDLElBQUksQ0FBQztpQkFFOUI7O29CQUVHLENBQUMsSUFBSSxTQUFTLENBQUE7Z0JBRWxCLElBQUksZ0JBQWdCLEVBQUU7b0JBQ2xCLENBQUMsSUFBSSwyQ0FBMkMsQ0FBQztvQkFDakQsWUFBWSxDQUFDLE9BQU8sQ0FBQyxJQUFJLENBQUMsU0FBUyxFQUFFLFFBQVEsQ0FBQyxDQUFDO2lCQUNsRDtnQkFDRCxjQUFjLENBQUMsT0FBTyxDQUFDLElBQUksQ0FBQyxTQUFTLEVBQUUsUUFBUSxDQUFDLENBQUM7Z0JBQ2pELFFBQVEsQ0FBQyxNQUFNLEdBQUcsQ0FBQyxDQUFDO2dCQUNwQixPQUFPLElBQUksQ0FBQzthQUNmOztnQkFDSSxJQUFJLENBQUMsT0FBTyxFQUFFLENBQUM7WUFDcEIsT0FBTyxLQUFLLENBQUM7UUFDakIsQ0FBQztLQUFBOzs7Ozs7SUFHTyxTQUFTLENBQUMsS0FBYTtRQUMzQixJQUFJLENBQUMsWUFBWSxHQUFHLEtBQUssQ0FBQzs7WUFDdEIsSUFBSSxHQUFhLFNBQVM7UUFDOUIsSUFBSSxJQUFJLENBQUMsWUFBWSxFQUFFO1lBQ25CO2dCQUNJLElBQUk7b0JBQUUsSUFBSSxHQUFHLElBQUksZ0JBQWdCLEVBQUUsQ0FBQyxXQUFXLENBQUMsS0FBSyxDQUFDLENBQUM7aUJBQUU7Z0JBQ3pELE9BQU8sR0FBRyxFQUFFO29CQUFFLE9BQU8sQ0FBQyxHQUFHLENBQUMsR0FBRyxDQUFDLENBQUM7aUJBQUU7YUFDcEM7U0FDSjtRQUNELElBQUksQ0FBQyxPQUFPLENBQUMsUUFBUSxDQUFDLElBQUksQ0FBQyxDQUFDO1FBQzVCLElBQUksSUFBSSxDQUFDLGdCQUFnQjtZQUNyQixJQUFJLENBQUMsZ0JBQWdCLEVBQUUsQ0FBQztJQUNoQyxDQUFDOzs7O0lBR0QsT0FBTztRQUNILElBQUksQ0FBQyxTQUFTLENBQUMsRUFBRSxDQUFDLENBQUM7O1lBQ2YsQ0FBQyxHQUFHLFNBQVMsR0FBRyw0Q0FBNEM7UUFDaEUsSUFBSSxJQUFJLENBQUMsSUFBSTtZQUNULENBQUMsSUFBSSxTQUFTLEdBQUcsSUFBSSxDQUFDLElBQUksQ0FBQzs7WUFFM0IsQ0FBQyxJQUFJLFNBQVMsQ0FBQTtRQUNsQixRQUFRLENBQUMsTUFBTSxHQUFHLENBQUMsQ0FBQztRQUNwQixZQUFZLENBQUMsVUFBVSxDQUFDLElBQUksQ0FBQyxTQUFTLENBQUMsQ0FBQztRQUN4QyxjQUFjLENBQUMsVUFBVSxDQUFDLElBQUksQ0FBQyxTQUFTLENBQUMsQ0FBQztJQUM5QyxDQUFDOzs7WUE3RkosVUFBVTs7OztZQU5GLE9BQU87Ozs7Ozs7SUFlWixpQ0FBcUI7Ozs7O0lBQ3JCLHNDQUEwQjs7Ozs7SUF5RDFCLHlDQUE2Qjs7SUFjN0IsNkNBQTZCOzs7OztJQTNFekIsb0NBQXdCOztBQTZGaEMsTUFBTSxPQUFPLHdCQUF3Qjs7OztJQUNqQyxZQUFvQixjQUFpQztRQUFqQyxtQkFBYyxHQUFkLGNBQWMsQ0FBbUI7SUFHckQsQ0FBQzs7Ozs7O0lBQ0QsU0FBUyxDQUFDLEdBQXFCLEVBQUUsSUFBaUI7O1lBQzFDLE9BQU8sR0FBRyxHQUFHOztjQUNYLEtBQUssR0FBRyxJQUFJLENBQUMsY0FBYyxDQUFDLFFBQVEsRUFBRTtRQUM1QyxJQUFJLEtBQUssSUFBSSxLQUFLLENBQUMsTUFBTSxHQUFHLENBQUMsRUFBRTtZQUMzQixPQUFPLEdBQUcsR0FBRyxDQUFDLEtBQUssQ0FBQyxFQUFFLE9BQU8sRUFBRSxHQUFHLENBQUMsT0FBTyxDQUFDLEdBQUcsQ0FBQyxTQUFTLEVBQUUsU0FBUyxHQUFHLEtBQUssQ0FBQyxFQUFFLENBQUMsQ0FBQztTQUNuRjtRQUNELE9BQU8sSUFBSSxDQUFDLE1BQU0sQ0FBQyxPQUFPLENBQUMsQ0FBQztJQUNoQyxDQUFDOzs7WUFiSixVQUFVOzs7O1lBRTZCLGlCQUFpQjs7Ozs7OztJQUF6QyxrREFBeUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBIdHRwRXZlbnQsIEh0dHBIYW5kbGVyLCBIdHRwSW50ZXJjZXB0b3IsIEh0dHBSZXF1ZXN0IH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uL2h0dHAnO1xyXG5pbXBvcnQgeyBJbmplY3RhYmxlIH0gZnJvbSBcIkBhbmd1bGFyL2NvcmVcIjtcclxuaW1wb3J0IHsgUm91dGVyLCBDYW5BY3RpdmF0ZSwgQWN0aXZhdGVkUm91dGVTbmFwc2hvdCwgUm91dGUgfSBmcm9tIFwiQGFuZ3VsYXIvcm91dGVyXCI7XHJcbmltcG9ydCB7IEp3dEhlbHBlclNlcnZpY2UgfSBmcm9tICdAYXV0aDAvYW5ndWxhci1qd3QnO1xyXG5cclxuXHJcbmltcG9ydCB7IENvbnRleHQsIFVzZXJJbmZvIH0gZnJvbSAnQHJlbXVsdC9jb3JlJztcclxuaW1wb3J0IHsgT2JzZXJ2YWJsZSB9IGZyb20gJ3J4anMnO1xyXG5cclxuXHJcblxyXG5jb25zdCBhdXRoVG9rZW4gPSAnYXV0aG9yaXphdGlvbic7XHJcbkBJbmplY3RhYmxlKClcclxuZXhwb3J0IGNsYXNzIEp3dFNlc3Npb25NYW5hZ2VyIHtcclxuICAgIGdldFRva2VuKCkge1xyXG4gICAgICAgIHJldHVybiB0aGlzLmN1cnJlbnRUb2tlbjtcclxuICAgIH1cclxuICAgIGNvbnN0cnVjdG9yKFxyXG4gICAgICAgIHByaXZhdGUgY29udGV4dDogQ29udGV4dFxyXG4gICAgKSB7XHJcbiAgICB9XHJcbiAgICBwcml2YXRlIHBhdGg6IHN0cmluZztcclxuICAgIHByaXZhdGUgdG9rZW5OYW1lOiBzdHJpbmc7XHJcbiAgICBsb2FkU2Vzc2lvbkZyb21Db29raWUocGF0aD86IHN0cmluZykge1xyXG4gICAgICAgIHRoaXMucGF0aCA9IHBhdGg7XHJcbiAgICAgICAgdGhpcy50b2tlbk5hbWUgPSBhdXRoVG9rZW47XHJcbiAgICAgICAgaWYgKHRoaXMucGF0aClcclxuICAgICAgICAgICAgdGhpcy50b2tlbk5hbWUgKz0gJy8nICsgcGF0aDtcclxuICAgICAgICBsZXQgdG9rZW4gPSBzZXNzaW9uU3RvcmFnZS5nZXRJdGVtKHRoaXMudG9rZW5OYW1lKTtcclxuICAgICAgICBpZiAodG9rZW4pIHtcclxuICAgICAgICAgICAgdGhpcy5fc2V0VG9rZW4odG9rZW4pO1xyXG4gICAgICAgICAgICByZXR1cm47XHJcbiAgICAgICAgfVxyXG4gICAgICAgICB0b2tlbiA9IGxvY2FsU3RvcmFnZS5nZXRJdGVtKHRoaXMudG9rZW5OYW1lKTtcclxuICAgICAgICBpZiAodG9rZW4pIHtcclxuICAgICAgICAgICAgdGhpcy5fc2V0VG9rZW4odG9rZW4pO1xyXG4gICAgICAgICAgICByZXR1cm47XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICBsZXQgYyA9IGRvY3VtZW50LmNvb2tpZTtcclxuICAgICAgICBsZXQgaSA9IGMuaW5kZXhPZihhdXRoVG9rZW4gKyAnPScpO1xyXG4gICAgICAgIGlmIChpID49IDApIHtcclxuICAgICAgICAgICAgYyA9IGMuc3Vic3RyaW5nKGkgKyBhdXRoVG9rZW4ubGVuZ3RoICsgMikudHJpbSgpO1xyXG4gICAgICAgICAgICBpID0gYy5pbmRleE9mKCc7Jyk7XHJcbiAgICAgICAgICAgIGlmIChpID49IDApIHtcclxuICAgICAgICAgICAgICAgIGMgPSBjLnN1YnN0cmluZygwLCBpIC0gMSk7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgdGhpcy5fc2V0VG9rZW4oYyk7XHJcbiAgICAgICAgICAgIHNlc3Npb25TdG9yYWdlLnNldEl0ZW0odGhpcy50b2tlbk5hbWUsIGMpO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICBhc3luYyBzZXRUb2tlbihqd3RUb2tlbjogc3RyaW5nLCByZW1lbWJlck9uRGV2aWNlID0gZmFsc2UpIHtcclxuXHJcblxyXG4gICAgICAgIGlmIChqd3RUb2tlbikge1xyXG4gICAgICAgICAgICB0aGlzLl9zZXRUb2tlbihqd3RUb2tlbik7XHJcbiAgICAgICAgICAgIGxldCBjID0gYXV0aFRva2VuICsgXCI9XCIgKyBqd3RUb2tlbjtcclxuXHJcblxyXG4gICAgICAgICAgICBpZiAodGhpcy5wYXRoKSB7XHJcbiAgICAgICAgICAgICAgICBjICs9ICc7IHBhdGg9JyArIHRoaXMucGF0aDtcclxuXHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgZWxzZVxyXG4gICAgICAgICAgICAgICAgYyArPSAnO3BhdGg9LydcclxuXHJcbiAgICAgICAgICAgIGlmIChyZW1lbWJlck9uRGV2aWNlKSB7XHJcbiAgICAgICAgICAgICAgICBjICs9ICc7IGV4cGlyZXMgPSBUaHUsIDAxIEphbiAyMDc2IDAwOjAwOjAwIEdNVCc7XHJcbiAgICAgICAgICAgICAgICBsb2NhbFN0b3JhZ2Uuc2V0SXRlbSh0aGlzLnRva2VuTmFtZSwgand0VG9rZW4pO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIHNlc3Npb25TdG9yYWdlLnNldEl0ZW0odGhpcy50b2tlbk5hbWUsIGp3dFRva2VuKTtcclxuICAgICAgICAgICAgZG9jdW1lbnQuY29va2llID0gYztcclxuICAgICAgICAgICAgcmV0dXJuIHRydWU7XHJcbiAgICAgICAgfVxyXG4gICAgICAgIGVsc2UgdGhpcy5zaWdub3V0KCk7XHJcbiAgICAgICAgcmV0dXJuIGZhbHNlO1xyXG4gICAgfVxyXG5cclxuICAgIHByaXZhdGUgY3VycmVudFRva2VuOiBzdHJpbmc7XHJcbiAgICBwcml2YXRlIF9zZXRUb2tlbih0b2tlbjogc3RyaW5nKSB7XHJcbiAgICAgICAgdGhpcy5jdXJyZW50VG9rZW4gPSB0b2tlbjtcclxuICAgICAgICBsZXQgdXNlcjogVXNlckluZm8gPSB1bmRlZmluZWQ7XHJcbiAgICAgICAgaWYgKHRoaXMuY3VycmVudFRva2VuKSB7XHJcbiAgICAgICAgICAgIHtcclxuICAgICAgICAgICAgICAgIHRyeSB7IHVzZXIgPSBuZXcgSnd0SGVscGVyU2VydmljZSgpLmRlY29kZVRva2VuKHRva2VuKTsgfVxyXG4gICAgICAgICAgICAgICAgY2F0Y2ggKGVycikgeyBjb25zb2xlLmxvZyhlcnIpOyB9XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICAgICAgdGhpcy5jb250ZXh0Ll9zZXRVc2VyKHVzZXIpO1xyXG4gICAgICAgIGlmICh0aGlzLnRva2VuSW5mb0NoYW5nZWQpXHJcbiAgICAgICAgICAgIHRoaXMudG9rZW5JbmZvQ2hhbmdlZCgpO1xyXG4gICAgfVxyXG4gICAgdG9rZW5JbmZvQ2hhbmdlZDogKCkgPT4gdm9pZDtcclxuXHJcbiAgICBzaWdub3V0KCk6IGFueSB7XHJcbiAgICAgICAgdGhpcy5fc2V0VG9rZW4oJycpO1xyXG4gICAgICAgIGxldCBjID0gYXV0aFRva2VuICsgJz07IGV4cGlyZXMgPSBUaHUsIDAxIEphbiAxOTcwIDAwOjAwOjAwIEdNVCc7XHJcbiAgICAgICAgaWYgKHRoaXMucGF0aClcclxuICAgICAgICAgICAgYyArPSAnOyBwYXRoPScgKyB0aGlzLnBhdGg7XHJcbiAgICAgICAgZWxzZVxyXG4gICAgICAgICAgICBjICs9ICc7cGF0aD0vJ1xyXG4gICAgICAgIGRvY3VtZW50LmNvb2tpZSA9IGM7XHJcbiAgICAgICAgbG9jYWxTdG9yYWdlLnJlbW92ZUl0ZW0odGhpcy50b2tlbk5hbWUpO1xyXG4gICAgICAgIHNlc3Npb25TdG9yYWdlLnJlbW92ZUl0ZW0odGhpcy50b2tlbk5hbWUpO1xyXG4gICAgfVxyXG59XHJcblxyXG5cclxuXHJcbkBJbmplY3RhYmxlKClcclxuZXhwb3J0IGNsYXNzIEF1dGhvcml6YXRpb25JbnRlcmNlcHRvciBpbXBsZW1lbnRzIEh0dHBJbnRlcmNlcHRvciB7XHJcbiAgICBjb25zdHJ1Y3Rvcihwcml2YXRlIHNlc3Npb25NYW5hZ2VyOiBKd3RTZXNzaW9uTWFuYWdlcikge1xyXG5cclxuXHJcbiAgICB9XHJcbiAgICBpbnRlcmNlcHQocmVxOiBIdHRwUmVxdWVzdDxhbnk+LCBuZXh0OiBIdHRwSGFuZGxlcik6IE9ic2VydmFibGU8SHR0cEV2ZW50PGFueT4+IHtcclxuICAgICAgICBsZXQgYXV0aFJlcSA9IHJlcTtcclxuICAgICAgICBjb25zdCB0b2tlbiA9IHRoaXMuc2Vzc2lvbk1hbmFnZXIuZ2V0VG9rZW4oKTtcclxuICAgICAgICBpZiAodG9rZW4gJiYgdG9rZW4ubGVuZ3RoID4gMCkge1xyXG4gICAgICAgICAgICBhdXRoUmVxID0gcmVxLmNsb25lKHsgaGVhZGVyczogcmVxLmhlYWRlcnMuc2V0KGF1dGhUb2tlbiwgJ0JlYXJlciAnICsgdG9rZW4pIH0pO1xyXG4gICAgICAgIH1cclxuICAgICAgICByZXR1cm4gbmV4dC5oYW5kbGUoYXV0aFJlcSk7XHJcbiAgICB9XHJcbn0iXX0=
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiand0LXNlc3Npb24tbWFuYWdlci5qcyIsInNvdXJjZVJvb3QiOiJuZzovL0ByZW11bHQvYW5ndWxhci8iLCJzb3VyY2VzIjpbInNyYy9qd3Qtc2Vzc2lvbi1tYW5hZ2VyLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7O0FBQ0EsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUUzQyxPQUFPLEVBQUUsZ0JBQWdCLEVBQUUsTUFBTSxvQkFBb0IsQ0FBQztBQUd0RCxPQUFPLEVBQUUsT0FBTyxFQUFZLE1BQU0sY0FBYyxDQUFDOztNQUszQyxTQUFTLEdBQUcsZUFBZTtBQUVqQyxNQUFNLE9BQU8saUJBQWlCOzs7O0lBSTFCLFlBQ1ksT0FBZ0I7UUFBaEIsWUFBTyxHQUFQLE9BQU8sQ0FBUztJQUU1QixDQUFDOzs7O0lBTkQsUUFBUTtRQUNKLE9BQU8sSUFBSSxDQUFDLFlBQVksQ0FBQztJQUM3QixDQUFDOzs7OztJQU9ELHFCQUFxQixDQUFDLElBQWE7UUFDL0IsSUFBSSxDQUFDLElBQUksR0FBRyxJQUFJLENBQUM7UUFDakIsSUFBSSxDQUFDLFNBQVMsR0FBRyxTQUFTLENBQUM7UUFDM0IsSUFBSSxJQUFJLENBQUMsSUFBSTtZQUNULElBQUksQ0FBQyxTQUFTLElBQUksR0FBRyxHQUFHLElBQUksQ0FBQzs7WUFDN0IsS0FBSyxHQUFHLGNBQWMsQ0FBQyxPQUFPLENBQUMsSUFBSSxDQUFDLFNBQVMsQ0FBQztRQUNsRCxJQUFJLEtBQUssRUFBRTtZQUNQLElBQUksQ0FBQyxRQUFRLENBQUMsS0FBSyxDQUFDLENBQUM7WUFDckIsT0FBTztTQUNWO1FBQ0EsS0FBSyxHQUFHLFlBQVksQ0FBQyxPQUFPLENBQUMsSUFBSSxDQUFDLFNBQVMsQ0FBQyxDQUFDO1FBQzlDLElBQUksS0FBSyxFQUFFO1lBQ1AsSUFBSSxDQUFDLFFBQVEsQ0FBQyxLQUFLLENBQUMsQ0FBQztZQUNyQixPQUFPO1NBQ1Y7O1lBRUcsQ0FBQyxHQUFHLFFBQVEsQ0FBQyxN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QWM3Qiw2Q0FBNkI7Ozs7O0lBM0V6QixvQ0FBd0I7O0FBNkZoQyxNQUFNLE9BQU8sd0JBQXdCOzs7O0lBQ2pDLFlBQW9CLGNBQWlDO1FBQWpDLG1CQUFjLEdBQWQsY0FBYyxDQUFtQjtJQUdyRCxDQUFDOzs7Ozs7SUFDRCxTQUFTLENBQUMsR0FBcUIsRUFBRSxJQUFpQjs7WUFDMUMsT0FBTyxHQUFHLEdBQUc7O2NBQ1gsS0FBSyxHQUFHLElBQUksQ0FBQyxjQUFjLENBQUMsUUFBUSxFQUFFO1FBQzVDLElBQUksS0FBSyxJQUFJLEtBQUssQ0FBQyxNQUFNLEdBQUcsQ0FBQyxFQUFFO1lBQzNCLE9BQU8sR0FBRyxHQUFHLENBQUMsS0FBSyxDQUFDLEVBQUUsT0FBTyxFQUFFLEdBQUcsQ0FBQyxPQUFPLENBQUMsR0FBRyxDQUFDLFNBQVMsRUFBRSxTQUFTLEdBQUcsS0FBSyxDQUFDLEVBQUUsQ0FBQyxDQUFDO1NBQ25GO1FBQ0QsT0FBTyxJQUFJLENBQUMsTUFBTSxDQUFDLE9BQU8sQ0FBQyxDQUFDO0lBQ2hDLENBQUM7OztZQWJKLFVBQVU7Ozs7WUFFNkIsaUJBQWlCOzs7Ozs7O0lBQXpDLGtEQUF5QyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEh0dHBFdmVudCwgSHR0cEhhbmRsZXIsIEh0dHBJbnRlcmNlcHRvciwgSHR0cFJlcXVlc3QgfSBmcm9tICdAYW5ndWxhci9jb21tb24vaHR0cCc7XHJcbmltcG9ydCB7IEluamVjdGFibGUgfSBmcm9tIFwiQGFuZ3VsYXIvY29yZVwiO1xyXG5pbXBvcnQgeyBSb3V0ZXIsIENhbkFjdGl2YXRlLCBBY3RpdmF0ZWRSb3V0ZVNuYXBzaG90LCBSb3V0ZSB9IGZyb20gXCJAYW5ndWxhci9yb3V0ZXJcIjtcclxuaW1wb3J0IHsgSnd0SGVscGVyU2VydmljZSB9IGZyb20gJ0BhdXRoMC9hbmd1bGFyLWp3dCc7XHJcblxyXG5cclxuaW1wb3J0IHsgQ29udGV4dCwgVXNlckluZm8gfSBmcm9tICdAcmVtdWx0L2NvcmUnO1xyXG5pbXBvcnQgeyBPYnNlcnZhYmxlIH0gZnJvbSAncnhqcyc7XHJcblxyXG5cclxuXHJcbmNvbnN0IGF1dGhUb2tlbiA9ICdhdXRob3JpemF0aW9uJztcclxuQEluamVjdGFibGUoKVxyXG5leHBvcnQgY2xhc3MgSnd0U2Vzc2lvbk1hbmFnZXIge1xyXG4gICAgZ2V0VG9rZW4oKSB7XHJcbiAgICAgICAgcmV0dXJuIHRoaXMuY3VycmVudFRva2VuO1xyXG4gICAgfVxyXG4gICAgY29uc3RydWN0b3IoXHJcbiAgICAgICAgcHJpdmF0ZSBjb250ZXh0OiBDb250ZXh0XHJcbiAgICApIHtcclxuICAgIH1cclxuICAgIHByaXZhdGUgcGF0aDogc3RyaW5nO1xyXG4gICAgcHJpdmF0ZSB0b2tlbk5hbWU6IHN0cmluZztcclxuICAgIGxvYWRTZXNzaW9uRnJvbUNvb2tpZShwYXRoPzogc3RyaW5nKSB7XHJcbiAgICAgICAgdGhpcy5wYXRoID0gcGF0aDtcclxuICAgICAgICB0aGlzLnRva2VuTmFtZSA9IGF1dGhUb2tlbjtcclxuICAgICAgICBpZiAodGhpcy5wYXRoKVxyXG4gICAgICAgICAgICB0aGlzLnRva2VuTmFtZSArPSAnLycgKyBwYXRoO1xyXG4gICAgICAgIGxldCB0b2tlbiA9IHNlc3Npb25TdG9yYWdlLmdldEl0ZW0odGhpcy50b2tlbk5hbWUpO1xyXG4gICAgICAgIGlmICh0b2tlbikge1xyXG4gICAgICAgICAgICB0aGlzLnNldFRva2VuKHRva2VuKTtcclxuICAgICAgICAgICAgcmV0dXJuO1xyXG4gICAgICAgIH1cclxuICAgICAgICAgdG9rZW4gPSBsb2NhbFN0b3JhZ2UuZ2V0SXRlbSh0aGlzLnRva2VuTmFtZSk7XHJcbiAgICAgICAgaWYgKHRva2VuKSB7XHJcbiAgICAgICAgICAgIHRoaXMuc2V0VG9rZW4odG9rZW4pO1xyXG4gICAgICAgICAgICByZXR1cm47XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICBsZXQgYyA9IGRvY3VtZW50LmNvb2tpZTtcclxuICAgICAgICBsZXQgaSA9IGMuaW5kZXhPZihhdXRoVG9rZW4gKyAnPScpO1xyXG4gICAgICAgIGlmIChpID49IDApIHtcclxuICAgICAgICAgICAgYyA9IGMuc3Vic3RyaW5nKGkgKyBhdXRoVG9rZW4ubGVuZ3RoICsgMikudHJpbSgpO1xyXG4gICAgICAgICAgICBpID0gYy5pbmRleE9mKCc7Jyk7XHJcbiAgICAgICAgICAgIGlmIChpID49IDApIHtcclxuICAgICAgICAgICAgICAgIGMgPSBjLnN1YnN0cmluZygwLCBpIC0gMSk7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgdGhpcy5zZXRUb2tlbihjKTtcclxuICAgICAgICAgICAgXHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgIGFzeW5jIHNldFRva2VuKGp3dFRva2VuOiBzdHJpbmcsIHJlbWVtYmVyT25EZXZpY2UgPSBmYWxzZSkge1xyXG5cclxuXHJcbiAgICAgICAgaWYgKGp3dFRva2VuKSB7XHJcbiAgICAgICAgICAgIHRoaXMuX3NldFRva2VuKGp3dFRva2VuKTtcclxuICAgICAgICAgICAgbGV0IGMgPSBhdXRoVG9rZW4gKyBcIj1cIiArIGp3dFRva2VuO1xyXG5cclxuXHJcbiAgICAgICAgICAgIGlmICh0aGlzLnBhdGgpIHtcclxuICAgICAgICAgICAgICAgIGMgKz0gJzsgcGF0aD0nICsgdGhpcy5wYXRoO1xyXG5cclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICBlbHNlXHJcbiAgICAgICAgICAgICAgICBjICs9ICc7cGF0aD0vJ1xyXG5cclxuICAgICAgICAgICAgaWYgKHJlbWVtYmVyT25EZXZpY2UpIHtcclxuICAgICAgICAgICAgICAgIGMgKz0gJzsgZXhwaXJlcyA9IFRodSwgMDEgSmFuIDIwNzYgMDA6MDA6MDAgR01UJztcclxuICAgICAgICAgICAgICAgIGxvY2FsU3RvcmFnZS5zZXRJdGVtKHRoaXMudG9rZW5OYW1lLCBqd3RUb2tlbik7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgc2Vzc2lvblN0b3JhZ2Uuc2V0SXRlbSh0aGlzLnRva2VuTmFtZSwgand0VG9rZW4pO1xyXG4gICAgICAgICAgICBkb2N1bWVudC5jb29raWUgPSBjO1xyXG4gICAgICAgICAgICByZXR1cm4gdHJ1ZTtcclxuICAgICAgICB9XHJcbiAgICAgICAgZWxzZSB0aGlzLnNpZ25vdXQoKTtcclxuICAgICAgICByZXR1cm4gZmFsc2U7XHJcbiAgICB9XHJcblxyXG4gICAgcHJpdmF0ZSBjdXJyZW50VG9rZW46IHN0cmluZztcclxuICAgIHByaXZhdGUgX3NldFRva2VuKHRva2VuOiBzdHJpbmcpIHtcclxuICAgICAgICB0aGlzLmN1cnJlbnRUb2tlbiA9IHRva2VuO1xyXG4gICAgICAgIGxldCB1c2VyOiBVc2VySW5mbyA9IHVuZGVmaW5lZDtcclxuICAgICAgICBpZiAodGhpcy5jdXJyZW50VG9rZW4pIHtcclxuICAgICAgICAgICAge1xyXG4gICAgICAgICAgICAgICAgdHJ5IHsgdXNlciA9IG5ldyBKd3RIZWxwZXJTZXJ2aWNlKCkuZGVjb2RlVG9rZW4odG9rZW4pOyB9XHJcbiAgICAgICAgICAgICAgICBjYXRjaCAoZXJyKSB7IGNvbnNvbGUubG9nKGVycik7IH1cclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgICAgICB0aGlzLmNvbnRleHQuX3NldFVzZXIodXNlcik7XHJcbiAgICAgICAgaWYgKHRoaXMudG9rZW5JbmZvQ2hhbmdlZClcclxuICAgICAgICAgICAgdGhpcy50b2tlbkluZm9DaGFuZ2VkKCk7XHJcbiAgICB9XHJcbiAgICB0b2tlbkluZm9DaGFuZ2VkOiAoKSA9PiB2b2lkO1xyXG5cclxuICAgIHNpZ25vdXQoKTogYW55IHtcclxuICAgICAgICB0aGlzLl9zZXRUb2tlbignJyk7XHJcbiAgICAgICAgbGV0IGMgPSBhdXRoVG9rZW4gKyAnPTsgZXhwaXJlcyA9IFRodSwgMDEgSmFuIDE5NzAgMDA6MDA6MDAgR01UJztcclxuICAgICAgICBpZiAodGhpcy5wYXRoKVxyXG4gICAgICAgICAgICBjICs9ICc7IHBhdGg9JyArIHRoaXMucGF0aDtcclxuICAgICAgICBlbHNlXHJcbiAgICAgICAgICAgIGMgKz0gJztwYXRoPS8nXHJcbiAgICAgICAgZG9jdW1lbnQuY29va2llID0gYztcclxuICAgICAgICBsb2NhbFN0b3JhZ2UucmVtb3ZlSXRlbSh0aGlzLnRva2VuTmFtZSk7XHJcbiAgICAgICAgc2Vzc2lvblN0b3JhZ2UucmVtb3ZlSXRlbSh0aGlzLnRva2VuTmFtZSk7XHJcbiAgICB9XHJcbn1cclxuXHJcblxyXG5cclxuQEluamVjdGFibGUoKVxyXG5leHBvcnQgY2xhc3MgQXV0aG9yaXphdGlvbkludGVyY2VwdG9yIGltcGxlbWVudHMgSHR0cEludGVyY2VwdG9yIHtcclxuICAgIGNvbnN0cnVjdG9yKHByaXZhdGUgc2Vzc2lvbk1hbmFnZXI6IEp3dFNlc3Npb25NYW5hZ2VyKSB7XHJcblxyXG5cclxuICAgIH1cclxuICAgIGludGVyY2VwdChyZXE6IEh0dHBSZXF1ZXN0PGFueT4sIG5leHQ6IEh0dHBIYW5kbGVyKTogT2JzZXJ2YWJsZTxIdHRwRXZlbnQ8YW55Pj4ge1xyXG4gICAgICAgIGxldCBhdXRoUmVxID0gcmVxO1xyXG4gICAgICAgIGNvbnN0IHRva2VuID0gdGhpcy5zZXNzaW9uTWFuYWdlci5nZXRUb2tlbigpO1xyXG4gICAgICAgIGlmICh0b2tlbiAmJiB0b2tlbi5sZW5ndGggPiAwKSB7XHJcbiAgICAgICAgICAgIGF1dGhSZXEgPSByZXEuY2xvbmUoeyBoZWFkZXJzOiByZXEuaGVhZGVycy5zZXQoYXV0aFRva2VuLCAnQmVhcmVyICcgKyB0b2tlbikgfSk7XHJcbiAgICAgICAgfVxyXG4gICAgICAgIHJldHVybiBuZXh0LmhhbmRsZShhdXRoUmVxKTtcclxuICAgIH1cclxufSJdfQ==

@@ -40,3 +40,3 @@ /**

if (token) {
this._setToken(token);
this.setToken(token);
return;

@@ -46,3 +46,3 @@ }

if (token) {
this._setToken(token);
this.setToken(token);
return;

@@ -60,4 +60,3 @@ }

}
this._setToken(c);
sessionStorage.setItem(this.tokenName, c);
this.setToken(c);
}

@@ -223,2 +222,2 @@ };

}
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiand0LXNlc3Npb24tbWFuYWdlci5qcyIsInNvdXJjZVJvb3QiOiJuZzovL0ByZW11bHQvYW5ndWxhci8iLCJzb3VyY2VzIjpbInNyYy9qd3Qtc2Vzc2lvbi1tYW5hZ2VyLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7O0FBQ0EsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUUzQyxPQUFPLEVBQUUsZ0JBQWdCLEVBQUUsTUFBTSxvQkFBb0IsQ0FBQztBQUd0RCxPQUFPLEVBQUUsT0FBTyxFQUFZLE1BQU0sY0FBYyxDQUFDOztJQUszQyxTQUFTLEdBQUcsZUFBZTtBQUNqQztJQUtJLDJCQUNZLE9BQWdCO1FBQWhCLFlBQU8sR0FBUCxPQUFPLENBQVM7SUFFNUIsQ0FBQzs7OztJQU5ELG9DQUFROzs7SUFBUjtRQUNJLE9BQU8sSUFBSSxDQUFDLFlBQVksQ0FBQztJQUM3QixDQUFDOzs7OztJQU9ELGlEQUFxQjs7OztJQUFyQixVQUFzQixJQUFhO1FBQy9CLElBQUksQ0FBQyxJQUFJLEdBQUcsSUFBSSxDQUFDO1FBQ2pCLElBQUksQ0FBQyxTQUFTLEdBQUcsU0FBUyxDQUFDO1FBQzNCLElBQUksSUFBSSxDQUFDLElBQUk7WUFDVCxJQUFJLENBQUMsU0FBUyxJQUFJLEdBQUcsR0FBRyxJQUFJLENBQUM7O1lBQzdCLEtBQUssR0FBRyxjQUFjLENBQUMsT0FBTyxDQUFDLElBQUksQ0FBQyxTQUFTLENBQUM7UUFDbEQsSUFBSSxLQUFLLEVBQUU7WUFDUCxJQUFJLENBQUMsU0FBUyxDQUFDLEtBQUssQ0FBQyxDQUFDO1lBQ3RCLE9BQU87U0FDVjtRQUNBLEtBQUssR0FBRyxZQUFZLENBQUMsT0FBTyxDQUFDLElBQUksQ0FBQyxTQUFTLENBQUMsQ0FBQztRQUM5QyxJQUFJLEtBQUssRUFBRTtZQUNQLElBQUksQ0FBQyxTQUFTLENBQUMsS0FBSyxDQUFDLENBQUM7WUFDdEIsT0FBTztTQUNWOztZQUVHLENBQUMsR0FBRyxRQUFRLENBQUMsTUFB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QUFDLENBQUM7SUFDOUMsQ0FBQzs7Z0JBN0ZKLFVBQVU7Ozs7Z0JBTkYsT0FBTzs7SUFvR2hCLHdCQUFDO0NBQUEsQUE5RkQsSUE4RkM7U0E3RlksaUJBQWlCOzs7Ozs7SUFRMUIsaUNBQXFCOzs7OztJQUNyQixzQ0FBMEI7Ozs7O0lBeUQxQix5Q0FBNkI7O0lBYzdCLDZDQUE2Qjs7Ozs7SUEzRXpCLG9DQUF3Qjs7QUE0RmhDO0lBRUksa0NBQW9CLGNBQWlDO1FBQWpDLG1CQUFjLEdBQWQsY0FBYyxDQUFtQjtJQUdyRCxDQUFDOzs7Ozs7SUFDRCw0Q0FBUzs7Ozs7SUFBVCxVQUFVLEdBQXFCLEVBQUUsSUFBaUI7O1lBQzFDLE9BQU8sR0FBRyxHQUFHOztZQUNYLEtBQUssR0FBRyxJQUFJLENBQUMsY0FBYyxDQUFDLFFBQVEsRUFBRTtRQUM1QyxJQUFJLEtBQUssSUFBSSxLQUFLLENBQUMsTUFBTSxHQUFHLENBQUMsRUFBRTtZQUMzQixPQUFPLEdBQUcsR0FBRyxDQUFDLEtBQUssQ0FBQyxFQUFFLE9BQU8sRUFBRSxHQUFHLENBQUMsT0FBTyxDQUFDLEdBQUcsQ0FBQyxTQUFTLEVBQUUsU0FBUyxHQUFHLEtBQUssQ0FBQyxFQUFFLENBQUMsQ0FBQztTQUNuRjtRQUNELE9BQU8sSUFBSSxDQUFDLE1BQU0sQ0FBQyxPQUFPLENBQUMsQ0FBQztJQUNoQyxDQUFDOztnQkFiSixVQUFVOzs7O2dCQUU2QixpQkFBaUI7O0lBWXpELCtCQUFDO0NBQUEsQUFkRCxJQWNDO1NBYlksd0JBQXdCOzs7Ozs7SUFDckIsa0RBQXlDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgSHR0cEV2ZW50LCBIdHRwSGFuZGxlciwgSHR0cEludGVyY2VwdG9yLCBIdHRwUmVxdWVzdCB9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbi9odHRwJztcclxuaW1wb3J0IHsgSW5qZWN0YWJsZSB9IGZyb20gXCJAYW5ndWxhci9jb3JlXCI7XHJcbmltcG9ydCB7IFJvdXRlciwgQ2FuQWN0aXZhdGUsIEFjdGl2YXRlZFJvdXRlU25hcHNob3QsIFJvdXRlIH0gZnJvbSBcIkBhbmd1bGFyL3JvdXRlclwiO1xyXG5pbXBvcnQgeyBKd3RIZWxwZXJTZXJ2aWNlIH0gZnJvbSAnQGF1dGgwL2FuZ3VsYXItand0JztcclxuXHJcblxyXG5pbXBvcnQgeyBDb250ZXh0LCBVc2VySW5mbyB9IGZyb20gJ0ByZW11bHQvY29yZSc7XHJcbmltcG9ydCB7IE9ic2VydmFibGUgfSBmcm9tICdyeGpzJztcclxuXHJcblxyXG5cclxuY29uc3QgYXV0aFRva2VuID0gJ2F1dGhvcml6YXRpb24nO1xyXG5ASW5qZWN0YWJsZSgpXHJcbmV4cG9ydCBjbGFzcyBKd3RTZXNzaW9uTWFuYWdlciB7XHJcbiAgICBnZXRUb2tlbigpIHtcclxuICAgICAgICByZXR1cm4gdGhpcy5jdXJyZW50VG9rZW47XHJcbiAgICB9XHJcbiAgICBjb25zdHJ1Y3RvcihcclxuICAgICAgICBwcml2YXRlIGNvbnRleHQ6IENvbnRleHRcclxuICAgICkge1xyXG4gICAgfVxyXG4gICAgcHJpdmF0ZSBwYXRoOiBzdHJpbmc7XHJcbiAgICBwcml2YXRlIHRva2VuTmFtZTogc3RyaW5nO1xyXG4gICAgbG9hZFNlc3Npb25Gcm9tQ29va2llKHBhdGg/OiBzdHJpbmcpIHtcclxuICAgICAgICB0aGlzLnBhdGggPSBwYXRoO1xyXG4gICAgICAgIHRoaXMudG9rZW5OYW1lID0gYXV0aFRva2VuO1xyXG4gICAgICAgIGlmICh0aGlzLnBhdGgpXHJcbiAgICAgICAgICAgIHRoaXMudG9rZW5OYW1lICs9ICcvJyArIHBhdGg7XHJcbiAgICAgICAgbGV0IHRva2VuID0gc2Vzc2lvblN0b3JhZ2UuZ2V0SXRlbSh0aGlzLnRva2VuTmFtZSk7XHJcbiAgICAgICAgaWYgKHRva2VuKSB7XHJcbiAgICAgICAgICAgIHRoaXMuX3NldFRva2VuKHRva2VuKTtcclxuICAgICAgICAgICAgcmV0dXJuO1xyXG4gICAgICAgIH1cclxuICAgICAgICAgdG9rZW4gPSBsb2NhbFN0b3JhZ2UuZ2V0SXRlbSh0aGlzLnRva2VuTmFtZSk7XHJcbiAgICAgICAgaWYgKHRva2VuKSB7XHJcbiAgICAgICAgICAgIHRoaXMuX3NldFRva2VuKHRva2VuKTtcclxuICAgICAgICAgICAgcmV0dXJuO1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgbGV0IGMgPSBkb2N1bWVudC5jb29raWU7XHJcbiAgICAgICAgbGV0IGkgPSBjLmluZGV4T2YoYXV0aFRva2VuICsgJz0nKTtcclxuICAgICAgICBpZiAoaSA+PSAwKSB7XHJcbiAgICAgICAgICAgIGMgPSBjLnN1YnN0cmluZyhpICsgYXV0aFRva2VuLmxlbmd0aCArIDIpLnRyaW0oKTtcclxuICAgICAgICAgICAgaSA9IGMuaW5kZXhPZignOycpO1xyXG4gICAgICAgICAgICBpZiAoaSA+PSAwKSB7XHJcbiAgICAgICAgICAgICAgICBjID0gYy5zdWJzdHJpbmcoMCwgaSAtIDEpO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIHRoaXMuX3NldFRva2VuKGMpO1xyXG4gICAgICAgICAgICBzZXNzaW9uU3RvcmFnZS5zZXRJdGVtKHRoaXMudG9rZW5OYW1lLCBjKTtcclxuICAgICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgYXN5bmMgc2V0VG9rZW4oand0VG9rZW46IHN0cmluZywgcmVtZW1iZXJPbkRldmljZSA9IGZhbHNlKSB7XHJcblxyXG5cclxuICAgICAgICBpZiAoand0VG9rZW4pIHtcclxuICAgICAgICAgICAgdGhpcy5fc2V0VG9rZW4oand0VG9rZW4pO1xyXG4gICAgICAgICAgICBsZXQgYyA9IGF1dGhUb2tlbiArIFwiPVwiICsgand0VG9rZW47XHJcblxyXG5cclxuICAgICAgICAgICAgaWYgKHRoaXMucGF0aCkge1xyXG4gICAgICAgICAgICAgICAgYyArPSAnOyBwYXRoPScgKyB0aGlzLnBhdGg7XHJcblxyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIGVsc2VcclxuICAgICAgICAgICAgICAgIGMgKz0gJztwYXRoPS8nXHJcblxyXG4gICAgICAgICAgICBpZiAocmVtZW1iZXJPbkRldmljZSkge1xyXG4gICAgICAgICAgICAgICAgYyArPSAnOyBleHBpcmVzID0gVGh1LCAwMSBKYW4gMjA3NiAwMDowMDowMCBHTVQnO1xyXG4gICAgICAgICAgICAgICAgbG9jYWxTdG9yYWdlLnNldEl0ZW0odGhpcy50b2tlbk5hbWUsIGp3dFRva2VuKTtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICBzZXNzaW9uU3RvcmFnZS5zZXRJdGVtKHRoaXMudG9rZW5OYW1lLCBqd3RUb2tlbik7XHJcbiAgICAgICAgICAgIGRvY3VtZW50LmNvb2tpZSA9IGM7XHJcbiAgICAgICAgICAgIHJldHVybiB0cnVlO1xyXG4gICAgICAgIH1cclxuICAgICAgICBlbHNlIHRoaXMuc2lnbm91dCgpO1xyXG4gICAgICAgIHJldHVybiBmYWxzZTtcclxuICAgIH1cclxuXHJcbiAgICBwcml2YXRlIGN1cnJlbnRUb2tlbjogc3RyaW5nO1xyXG4gICAgcHJpdmF0ZSBfc2V0VG9rZW4odG9rZW46IHN0cmluZykge1xyXG4gICAgICAgIHRoaXMuY3VycmVudFRva2VuID0gdG9rZW47XHJcbiAgICAgICAgbGV0IHVzZXI6IFVzZXJJbmZvID0gdW5kZWZpbmVkO1xyXG4gICAgICAgIGlmICh0aGlzLmN1cnJlbnRUb2tlbikge1xyXG4gICAgICAgICAgICB7XHJcbiAgICAgICAgICAgICAgICB0cnkgeyB1c2VyID0gbmV3IEp3dEhlbHBlclNlcnZpY2UoKS5kZWNvZGVUb2tlbih0b2tlbik7IH1cclxuICAgICAgICAgICAgICAgIGNhdGNoIChlcnIpIHsgY29uc29sZS5sb2coZXJyKTsgfVxyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgICAgIHRoaXMuY29udGV4dC5fc2V0VXNlcih1c2VyKTtcclxuICAgICAgICBpZiAodGhpcy50b2tlbkluZm9DaGFuZ2VkKVxyXG4gICAgICAgICAgICB0aGlzLnRva2VuSW5mb0NoYW5nZWQoKTtcclxuICAgIH1cclxuICAgIHRva2VuSW5mb0NoYW5nZWQ6ICgpID0+IHZvaWQ7XHJcblxyXG4gICAgc2lnbm91dCgpOiBhbnkge1xyXG4gICAgICAgIHRoaXMuX3NldFRva2VuKCcnKTtcclxuICAgICAgICBsZXQgYyA9IGF1dGhUb2tlbiArICc9OyBleHBpcmVzID0gVGh1LCAwMSBKYW4gMTk3MCAwMDowMDowMCBHTVQnO1xyXG4gICAgICAgIGlmICh0aGlzLnBhdGgpXHJcbiAgICAgICAgICAgIGMgKz0gJzsgcGF0aD0nICsgdGhpcy5wYXRoO1xyXG4gICAgICAgIGVsc2VcclxuICAgICAgICAgICAgYyArPSAnO3BhdGg9LydcclxuICAgICAgICBkb2N1bWVudC5jb29raWUgPSBjO1xyXG4gICAgICAgIGxvY2FsU3RvcmFnZS5yZW1vdmVJdGVtKHRoaXMudG9rZW5OYW1lKTtcclxuICAgICAgICBzZXNzaW9uU3RvcmFnZS5yZW1vdmVJdGVtKHRoaXMudG9rZW5OYW1lKTtcclxuICAgIH1cclxufVxyXG5cclxuXHJcblxyXG5ASW5qZWN0YWJsZSgpXHJcbmV4cG9ydCBjbGFzcyBBdXRob3JpemF0aW9uSW50ZXJjZXB0b3IgaW1wbGVtZW50cyBIdHRwSW50ZXJjZXB0b3Ige1xyXG4gICAgY29uc3RydWN0b3IocHJpdmF0ZSBzZXNzaW9uTWFuYWdlcjogSnd0U2Vzc2lvbk1hbmFnZXIpIHtcclxuXHJcblxyXG4gICAgfVxyXG4gICAgaW50ZXJjZXB0KHJlcTogSHR0cFJlcXVlc3Q8YW55PiwgbmV4dDogSHR0cEhhbmRsZXIpOiBPYnNlcnZhYmxlPEh0dHBFdmVudDxhbnk+PiB7XHJcbiAgICAgICAgbGV0IGF1dGhSZXEgPSByZXE7XHJcbiAgICAgICAgY29uc3QgdG9rZW4gPSB0aGlzLnNlc3Npb25NYW5hZ2VyLmdldFRva2VuKCk7XHJcbiAgICAgICAgaWYgKHRva2VuICYmIHRva2VuLmxlbmd0aCA+IDApIHtcclxuICAgICAgICAgICAgYXV0aFJlcSA9IHJlcS5jbG9uZSh7IGhlYWRlcnM6IHJlcS5oZWFkZXJzLnNldChhdXRoVG9rZW4sICdCZWFyZXIgJyArIHRva2VuKSB9KTtcclxuICAgICAgICB9XHJcbiAgICAgICAgcmV0dXJuIG5leHQuaGFuZGxlKGF1dGhSZXEpO1xyXG4gICAgfVxyXG59Il19
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiand0LXNlc3Npb24tbWFuYWdlci5qcyIsInNvdXJjZVJvb3QiOiJuZzovL0ByZW11bHQvYW5ndWxhci8iLCJzb3VyY2VzIjpbInNyYy9qd3Qtc2Vzc2lvbi1tYW5hZ2VyLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7O0FBQ0EsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUUzQyxPQUFPLEVBQUUsZ0JBQWdCLEVBQUUsTUFBTSxvQkFBb0IsQ0FBQztBQUd0RCxPQUFPLEVBQUUsT0FBTyxFQUFZLE1BQU0sY0FBYyxDQUFDOztJQUszQyxTQUFTLEdBQUcsZUFBZTtBQUNqQztJQUtJLDJCQUNZLE9BQWdCO1FBQWhCLFlBQU8sR0FBUCxPQUFPLENBQVM7SUFFNUIsQ0FBQzs7OztJQU5ELG9DQUFROzs7SUFBUjtRQUNJLE9BQU8sSUFBSSxDQUFDLFlBQVksQ0FBQztJQUM3QixDQUFDOzs7OztJQU9ELGlEQUFxQjs7OztJQUFyQixVQUFzQixJQUFhO1FBQy9CLElBQUksQ0FBQyxJQUFJLEdBQUcsSUFBSSxDQUFDO1FBQ2pCLElBQUksQ0FBQyxTQUFTLEdBQUcsU0FBUyxDQUFDO1FBQzNCLElBQUksSUFBSSxDQUFDLElBQUk7WUFDVCxJQUFJLENBQUMsU0FBUyxJQUFJLEdBQUcsR0FBRyxJQUFJLENBQUM7O1lBQzdCLEtBQUssR0FBRyxjQUFjLENBQUMsT0FBTyxDQUFDLElBQUksQ0FBQyxTQUFTLENBQUM7UUFDbEQsSUFBSSxLQUFLLEVBQUU7WUFDUCxJQUFJLENBQUMsUUFBUSxDQUFDLEtBQUssQ0FBQyxDQUFDO1lBQ3JCLE9BQU87U0FDVjtRQUNBLEtBQUssR0FBRyxZQUFZLENBQUMsT0FBTyxDQUFDLElBQUksQ0FBQyxTQUFTLENBQUMsQ0FBQztRQUM5QyxJQUFJLEtBQUssRUFBRTtZQUNQLElBQUksQ0FBQyxRQUFRLENBQUMsS0FBSyxDQUFDLENBQUM7WUFDckIsT0FBTztTQUNWOztZQUVHLENBQUMsR0FBRyxRQUFRLENBQUMsTUFB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Q0FBQSxBQTlGRCxJQThGQztTQTdGWSxpQkFBaUI7Ozs7OztJQVExQixpQ0FBcUI7Ozs7O0lBQ3JCLHNDQUEwQjs7Ozs7SUF5RDFCLHlDQUE2Qjs7SUFjN0IsNkNBQTZCOzs7OztJQTNFekIsb0NBQXdCOztBQTRGaEM7SUFFSSxrQ0FBb0IsY0FBaUM7UUFBakMsbUJBQWMsR0FBZCxjQUFjLENBQW1CO0lBR3JELENBQUM7Ozs7OztJQUNELDRDQUFTOzs7OztJQUFULFVBQVUsR0FBcUIsRUFBRSxJQUFpQjs7WUFDMUMsT0FBTyxHQUFHLEdBQUc7O1lBQ1gsS0FBSyxHQUFHLElBQUksQ0FBQyxjQUFjLENBQUMsUUFBUSxFQUFFO1FBQzVDLElBQUksS0FBSyxJQUFJLEtBQUssQ0FBQyxNQUFNLEdBQUcsQ0FBQyxFQUFFO1lBQzNCLE9BQU8sR0FBRyxHQUFHLENBQUMsS0FBSyxDQUFDLEVBQUUsT0FBTyxFQUFFLEdBQUcsQ0FBQyxPQUFPLENBQUMsR0FBRyxDQUFDLFNBQVMsRUFBRSxTQUFTLEdBQUcsS0FBSyxDQUFDLEVBQUUsQ0FBQyxDQUFDO1NBQ25GO1FBQ0QsT0FBTyxJQUFJLENBQUMsTUFBTSxDQUFDLE9BQU8sQ0FBQyxDQUFDO0lBQ2hDLENBQUM7O2dCQWJKLFVBQVU7Ozs7Z0JBRTZCLGlCQUFpQjs7SUFZekQsK0JBQUM7Q0FBQSxBQWRELElBY0M7U0FiWSx3QkFBd0I7Ozs7OztJQUNyQixrREFBeUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBIdHRwRXZlbnQsIEh0dHBIYW5kbGVyLCBIdHRwSW50ZXJjZXB0b3IsIEh0dHBSZXF1ZXN0IH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uL2h0dHAnO1xyXG5pbXBvcnQgeyBJbmplY3RhYmxlIH0gZnJvbSBcIkBhbmd1bGFyL2NvcmVcIjtcclxuaW1wb3J0IHsgUm91dGVyLCBDYW5BY3RpdmF0ZSwgQWN0aXZhdGVkUm91dGVTbmFwc2hvdCwgUm91dGUgfSBmcm9tIFwiQGFuZ3VsYXIvcm91dGVyXCI7XHJcbmltcG9ydCB7IEp3dEhlbHBlclNlcnZpY2UgfSBmcm9tICdAYXV0aDAvYW5ndWxhci1qd3QnO1xyXG5cclxuXHJcbmltcG9ydCB7IENvbnRleHQsIFVzZXJJbmZvIH0gZnJvbSAnQHJlbXVsdC9jb3JlJztcclxuaW1wb3J0IHsgT2JzZXJ2YWJsZSB9IGZyb20gJ3J4anMnO1xyXG5cclxuXHJcblxyXG5jb25zdCBhdXRoVG9rZW4gPSAnYXV0aG9yaXphdGlvbic7XHJcbkBJbmplY3RhYmxlKClcclxuZXhwb3J0IGNsYXNzIEp3dFNlc3Npb25NYW5hZ2VyIHtcclxuICAgIGdldFRva2VuKCkge1xyXG4gICAgICAgIHJldHVybiB0aGlzLmN1cnJlbnRUb2tlbjtcclxuICAgIH1cclxuICAgIGNvbnN0cnVjdG9yKFxyXG4gICAgICAgIHByaXZhdGUgY29udGV4dDogQ29udGV4dFxyXG4gICAgKSB7XHJcbiAgICB9XHJcbiAgICBwcml2YXRlIHBhdGg6IHN0cmluZztcclxuICAgIHByaXZhdGUgdG9rZW5OYW1lOiBzdHJpbmc7XHJcbiAgICBsb2FkU2Vzc2lvbkZyb21Db29raWUocGF0aD86IHN0cmluZykge1xyXG4gICAgICAgIHRoaXMucGF0aCA9IHBhdGg7XHJcbiAgICAgICAgdGhpcy50b2tlbk5hbWUgPSBhdXRoVG9rZW47XHJcbiAgICAgICAgaWYgKHRoaXMucGF0aClcclxuICAgICAgICAgICAgdGhpcy50b2tlbk5hbWUgKz0gJy8nICsgcGF0aDtcclxuICAgICAgICBsZXQgdG9rZW4gPSBzZXNzaW9uU3RvcmFnZS5nZXRJdGVtKHRoaXMudG9rZW5OYW1lKTtcclxuICAgICAgICBpZiAodG9rZW4pIHtcclxuICAgICAgICAgICAgdGhpcy5zZXRUb2tlbih0b2tlbik7XHJcbiAgICAgICAgICAgIHJldHVybjtcclxuICAgICAgICB9XHJcbiAgICAgICAgIHRva2VuID0gbG9jYWxTdG9yYWdlLmdldEl0ZW0odGhpcy50b2tlbk5hbWUpO1xyXG4gICAgICAgIGlmICh0b2tlbikge1xyXG4gICAgICAgICAgICB0aGlzLnNldFRva2VuKHRva2VuKTtcclxuICAgICAgICAgICAgcmV0dXJuO1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgbGV0IGMgPSBkb2N1bWVudC5jb29raWU7XHJcbiAgICAgICAgbGV0IGkgPSBjLmluZGV4T2YoYXV0aFRva2VuICsgJz0nKTtcclxuICAgICAgICBpZiAoaSA+PSAwKSB7XHJcbiAgICAgICAgICAgIGMgPSBjLnN1YnN0cmluZyhpICsgYXV0aFRva2VuLmxlbmd0aCArIDIpLnRyaW0oKTtcclxuICAgICAgICAgICAgaSA9IGMuaW5kZXhPZignOycpO1xyXG4gICAgICAgICAgICBpZiAoaSA+PSAwKSB7XHJcbiAgICAgICAgICAgICAgICBjID0gYy5zdWJzdHJpbmcoMCwgaSAtIDEpO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIHRoaXMuc2V0VG9rZW4oYyk7XHJcbiAgICAgICAgICAgIFxyXG4gICAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICBhc3luYyBzZXRUb2tlbihqd3RUb2tlbjogc3RyaW5nLCByZW1lbWJlck9uRGV2aWNlID0gZmFsc2UpIHtcclxuXHJcblxyXG4gICAgICAgIGlmIChqd3RUb2tlbikge1xyXG4gICAgICAgICAgICB0aGlzLl9zZXRUb2tlbihqd3RUb2tlbik7XHJcbiAgICAgICAgICAgIGxldCBjID0gYXV0aFRva2VuICsgXCI9XCIgKyBqd3RUb2tlbjtcclxuXHJcblxyXG4gICAgICAgICAgICBpZiAodGhpcy5wYXRoKSB7XHJcbiAgICAgICAgICAgICAgICBjICs9ICc7IHBhdGg9JyArIHRoaXMucGF0aDtcclxuXHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgZWxzZVxyXG4gICAgICAgICAgICAgICAgYyArPSAnO3BhdGg9LydcclxuXHJcbiAgICAgICAgICAgIGlmIChyZW1lbWJlck9uRGV2aWNlKSB7XHJcbiAgICAgICAgICAgICAgICBjICs9ICc7IGV4cGlyZXMgPSBUaHUsIDAxIEphbiAyMDc2IDAwOjAwOjAwIEdNVCc7XHJcbiAgICAgICAgICAgICAgICBsb2NhbFN0b3JhZ2Uuc2V0SXRlbSh0aGlzLnRva2VuTmFtZSwgand0VG9rZW4pO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIHNlc3Npb25TdG9yYWdlLnNldEl0ZW0odGhpcy50b2tlbk5hbWUsIGp3dFRva2VuKTtcclxuICAgICAgICAgICAgZG9jdW1lbnQuY29va2llID0gYztcclxuICAgICAgICAgICAgcmV0dXJuIHRydWU7XHJcbiAgICAgICAgfVxyXG4gICAgICAgIGVsc2UgdGhpcy5zaWdub3V0KCk7XHJcbiAgICAgICAgcmV0dXJuIGZhbHNlO1xyXG4gICAgfVxyXG5cclxuICAgIHByaXZhdGUgY3VycmVudFRva2VuOiBzdHJpbmc7XHJcbiAgICBwcml2YXRlIF9zZXRUb2tlbih0b2tlbjogc3RyaW5nKSB7XHJcbiAgICAgICAgdGhpcy5jdXJyZW50VG9rZW4gPSB0b2tlbjtcclxuICAgICAgICBsZXQgdXNlcjogVXNlckluZm8gPSB1bmRlZmluZWQ7XHJcbiAgICAgICAgaWYgKHRoaXMuY3VycmVudFRva2VuKSB7XHJcbiAgICAgICAgICAgIHtcclxuICAgICAgICAgICAgICAgIHRyeSB7IHVzZXIgPSBuZXcgSnd0SGVscGVyU2VydmljZSgpLmRlY29kZVRva2VuKHRva2VuKTsgfVxyXG4gICAgICAgICAgICAgICAgY2F0Y2ggKGVycikgeyBjb25zb2xlLmxvZyhlcnIpOyB9XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICAgICAgdGhpcy5jb250ZXh0Ll9zZXRVc2VyKHVzZXIpO1xyXG4gICAgICAgIGlmICh0aGlzLnRva2VuSW5mb0NoYW5nZWQpXHJcbiAgICAgICAgICAgIHRoaXMudG9rZW5JbmZvQ2hhbmdlZCgpO1xyXG4gICAgfVxyXG4gICAgdG9rZW5JbmZvQ2hhbmdlZDogKCkgPT4gdm9pZDtcclxuXHJcbiAgICBzaWdub3V0KCk6IGFueSB7XHJcbiAgICAgICAgdGhpcy5fc2V0VG9rZW4oJycpO1xyXG4gICAgICAgIGxldCBjID0gYXV0aFRva2VuICsgJz07IGV4cGlyZXMgPSBUaHUsIDAxIEphbiAxOTcwIDAwOjAwOjAwIEdNVCc7XHJcbiAgICAgICAgaWYgKHRoaXMucGF0aClcclxuICAgICAgICAgICAgYyArPSAnOyBwYXRoPScgKyB0aGlzLnBhdGg7XHJcbiAgICAgICAgZWxzZVxyXG4gICAgICAgICAgICBjICs9ICc7cGF0aD0vJ1xyXG4gICAgICAgIGRvY3VtZW50LmNvb2tpZSA9IGM7XHJcbiAgICAgICAgbG9jYWxTdG9yYWdlLnJlbW92ZUl0ZW0odGhpcy50b2tlbk5hbWUpO1xyXG4gICAgICAgIHNlc3Npb25TdG9yYWdlLnJlbW92ZUl0ZW0odGhpcy50b2tlbk5hbWUpO1xyXG4gICAgfVxyXG59XHJcblxyXG5cclxuXHJcbkBJbmplY3RhYmxlKClcclxuZXhwb3J0IGNsYXNzIEF1dGhvcml6YXRpb25JbnRlcmNlcHRvciBpbXBsZW1lbnRzIEh0dHBJbnRlcmNlcHRvciB7XHJcbiAgICBjb25zdHJ1Y3Rvcihwcml2YXRlIHNlc3Npb25NYW5hZ2VyOiBKd3RTZXNzaW9uTWFuYWdlcikge1xyXG5cclxuXHJcbiAgICB9XHJcbiAgICBpbnRlcmNlcHQocmVxOiBIdHRwUmVxdWVzdDxhbnk+LCBuZXh0OiBIdHRwSGFuZGxlcik6IE9ic2VydmFibGU8SHR0cEV2ZW50PGFueT4+IHtcclxuICAgICAgICBsZXQgYXV0aFJlcSA9IHJlcTtcclxuICAgICAgICBjb25zdCB0b2tlbiA9IHRoaXMuc2Vzc2lvbk1hbmFnZXIuZ2V0VG9rZW4oKTtcclxuICAgICAgICBpZiAodG9rZW4gJiYgdG9rZW4ubGVuZ3RoID4gMCkge1xyXG4gICAgICAgICAgICBhdXRoUmVxID0gcmVxLmNsb25lKHsgaGVhZGVyczogcmVxLmhlYWRlcnMuc2V0KGF1dGhUb2tlbiwgJ0JlYXJlciAnICsgdG9rZW4pIH0pO1xyXG4gICAgICAgIH1cclxuICAgICAgICByZXR1cm4gbmV4dC5oYW5kbGUoYXV0aFJlcSk7XHJcbiAgICB9XHJcbn0iXX0=
{
"name": "@remult/angular",
"schematics": "./schematics/collection.json",
"version": "2.0.14",
"version": "2.0.15",
"description": "an angular module for remult",

@@ -6,0 +6,0 @@ "license": "MIT",

Sorry, the diff of this file is too big to display

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is too big to display

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is too big to display

Sorry, the diff of this file is not supported yet

SocketSocket SOC 2 Logo

Product

  • Package Alerts
  • Integrations
  • Docs
  • Pricing
  • FAQ
  • Roadmap
  • Changelog

Packages

npm

Stay in touch

Get open source security insights delivered straight into your inbox.


  • Terms
  • Privacy
  • Security

Made with ⚡️ by Socket Inc