@seniorsistemas/tmsx-angular-components 1.0.3-feature-tmsx-1918-d79e730e → 1.0.4-develop-3f93f121

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -1,2 +1,2 @@
1
- !function(t,e){"object"==typeof exports&&"undefined"!=typeof module?e(exports,require("p-limit"),require("@ngx-translate/core"),require("@angular/core"),require("@seniorsistemas/angular-components"),require("primeng/table"),require("@angular/common"),require("primeng/panel"),require("rxjs"),require("angular2-hotkeys"),require("primeng/toast"),require("@angular/forms"),require("primeng/inputtext"),require("primeng/confirmdialog"),require("primeng/calendar"),require("primeng/dropdown"),require("primeng/api"),require("primeng/tooltip"),require("primeng/autocomplete"),require("primeng/checkbox")):"function"==typeof define&&define.amd?define("@seniorsistemas/tmsx-angular-components",["exports","p-limit","@ngx-translate/core","@angular/core","@seniorsistemas/angular-components","primeng/table","@angular/common","primeng/panel","rxjs","angular2-hotkeys","primeng/toast","@angular/forms","primeng/inputtext","primeng/confirmdialog","primeng/calendar","primeng/dropdown","primeng/api","primeng/tooltip","primeng/autocomplete","primeng/checkbox"],e):e(((t=t||self).seniorsistemas=t.seniorsistemas||{},t.seniorsistemas["tmsx-angular-components"]={}),t.pLimit,t.core,t.ng.core,t.angularComponents,t.table,t.ng.common,t.panel,t.rxjs,t.angular2Hotkeys,t.toast,t.ng.forms,t.inputtext,t.confirmdialog,t.calendar,t.dropdown,t.api,t.tooltip,t.autocomplete,t.checkbox)}(this,(function(t,e,n,o,r,a,s,i,l,d,c,p,u,m,g,f,h,_,b,y){"use strict";e=e&&e.hasOwnProperty("default")?e.default:e;var x,v,w=function(){return(w=Object.assign||function(t){for(var e,n=1,o=arguments.length;n<o;n++)for(var r in e=arguments[n])Object.prototype.hasOwnProperty.call(e,r)&&(t[r]=e[r]);return t}).apply(this,arguments)};function D(t,e,n,o){var r,a=arguments.length,s=a<3?e:null===o?o=Object.getOwnPropertyDescriptor(e,n):o;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)s=Reflect.decorate(t,e,n,o);else for(var i=t.length-1;i>=0;i--)(r=t[i])&&(s=(a<3?r(s):a>3?r(e,n,s):r(e,n))||s);return a>3&&s&&Object.defineProperty(e,n,s),s}function C(t,e,n,o){return new(n||(n=Promise))((function(r,a){function s(t){try{l(o.next(t))}catch(t){a(t)}}function i(t){try{l(o.throw(t))}catch(t){a(t)}}function l(t){var e;t.done?r(t.value):(e=t.value,e instanceof n?e:new n((function(t){t(e)}))).then(s,i)}l((o=o.apply(t,e||[])).next())}))}function E(t,e){var n,o,r,a,s={label:0,sent:function(){if(1&r[0])throw r[1];return r[1]},trys:[],ops:[]};return a={next:i(0),throw:i(1),return:i(2)},"function"==typeof Symbol&&(a[Symbol.iterator]=function(){return this}),a;function i(a){return function(i){return function(a){if(n)throw new TypeError("Generator is already executing.");for(;s;)try{if(n=1,o&&(r=2&a[0]?o.return:a[0]?o.throw||((r=o.return)&&r.call(o),0):o.next)&&!(r=r.call(o,a[1])).done)return r;switch(o=0,r&&(a=[2&a[0],r.value]),a[0]){case 0:case 1:r=a;break;case 4:return s.label++,{value:a[1],done:!1};case 5:s.label++,o=a[1],a=[0];continue;case 7:a=s.ops.pop(),s.trys.pop();continue;default:if(!(r=s.trys,(r=r.length>0&&r[r.length-1])||6!==a[0]&&2!==a[0])){s=0;continue}if(3===a[0]&&(!r||a[1]>r[0]&&a[1]<r[3])){s.label=a[1];break}if(6===a[0]&&s.label<r[1]){s.label=r[1],r=a;break}if(r&&s.label<r[2]){s.label=r[2],s.ops.push(a);break}r[2]&&s.ops.pop(),s.trys.pop();continue}a=e.call(t,s)}catch(t){a=[6,t],o=0}finally{n=r=0}if(5&a[0])throw a[1];return{value:a[0]?a[1]:void 0,done:!0}}([a,i])}}}function T(t,e){var n="function"==typeof Symbol&&t[Symbol.iterator];if(!n)return t;var o,r,a=n.call(t),s=[];try{for(;(void 0===e||e-- >0)&&!(o=a.next()).done;)s.push(o.value)}catch(t){r={error:t}}finally{try{o&&!o.done&&(n=a.return)&&n.call(a)}finally{if(r)throw r.error}}return s}!function(t){t.SUCCESS="SUCCESS",t.FAILED="FAILED",t.PENDING="PENDING",t.PROCESSING="PROCESSING"}(v||(v={}));var P=((x={})[v.SUCCESS]="tmsx_fnd.tmsx_angular_components.painel_processamento_status_success",x[v.FAILED]="tmsx_fnd.tmsx_angular_components.painel_processamento_status_failed",x[v.PENDING]="tmsx_fnd.tmsx_angular_components.painel_processamento_status_pending",x[v.PROCESSING]="tmsx_fnd.tmsx_angular_components.painel_processamento_status_processing",x),S=function(){function t(t){this.translate=t,this.processado=new o.EventEmitter,this.concluido=new o.EventEmitter,this.totalRecords=0,this.successCount=0,this.failedCount=0,this.pendingCount=0,this.successProgress="0%",this.failedProgress="0%",this.pendingProgress="100%",this.processingProgress="0%",this.sortField="status",this.sortOrder=1}var a;return a=t,t.prototype.ngOnInit=function(){this.initPanel()},t.prototype.initPanel=function(){this.gridColumns=this.getGridColumn(),this.initGrid(),this.initProgressBar()},t.prototype.initProgressBar=function(){this.successProgress="0%",this.failedProgress="0%",this.pendingProgress="100%",this.processingProgress="0%",this.totalRecords=this.params.registros.length,this.pendingCount=this.totalRecords,this.params.quantidadeChamadasSimultaneas>1?this.processAllRecordsWithPLimit():this.syncProcessRecord(0)},t.prototype.initGrid=function(){this.gridData=[],this.gridData=this.params.registros.map((function(t){return{registro:t,status:v.PENDING,label:t.descricao}}))},t.prototype.getErrorMessage=function(t){var e,n;try{return t?(null===(e=null==t?void 0:t.error)||void 0===e?void 0:e.message)?String(t.error.message):(null===(n=null==t?void 0:t.message)||void 0===n?void 0:n.message)?String(t.message.message):this.genericErrorMsg:this.genericErrorMsg}catch(t){return this.genericErrorMsg}},Object.defineProperty(t.prototype,"genericErrorMsg",{get:function(){return this.translate.instant(a.GENERIC_ERR_KEY)},enumerable:!0,configurable:!0}),t.prototype.updateRowSuccess=function(t,e){this.successCount++,this.pendingCount--,this.updateRowStatus(t,v.SUCCESS),this.processado.emit(t),this.updateProgressBar()},t.prototype.updateRowError=function(t,e,n){this.failedCount++,this.pendingCount--,this.updateRowStatus(t,v.FAILED,n),this.processado.emit(t),this.updateProgressBar()},t.prototype.syncProcessRecord=function(t){var e=this;if(this.pendingCount<1)this.concluido.emit("ok");else{this.updateRowStatus(this.gridData[t],v.PROCESSING);var n=this.params.registros[t],o=this.gridData.find((function(t){return t.registro===n}));n.apiEnvio?n.apiEnvio(n.objEnvio).subscribe((function(){e.updateRowSuccess(o,t),e.syncProcessRecord(t+1)}),(function(n){e.updateRowError(o,t,e.getErrorMessage(n)),e.syncProcessRecord(t+1)})):(this.failedCount=this.pendingCount,this.pendingCount=0,this.updateRowStatus(o,v.FAILED,this.translate.instant("tmsx_fnd.tmsx_angular_components.painel_processamento_api_error")),this.updateProgressBar(),this.concluido.emit("erro"))}},t.prototype.processAllRecordsWithPLimit=function(){return C(this,void 0,void 0,(function(){var t,n,o,r=this;return E(this,(function(a){switch(a.label){case 0:return t=e(this.params.quantidadeChamadasSimultaneas),n=this.params.registros.map((function(e,n){return t((function(){return C(r,void 0,void 0,(function(){var t,o,r;return E(this,(function(a){switch(a.label){case 0:t=this.gridData.find((function(t){return t.registro===e})),this.updateRowStatus(t,v.PROCESSING),a.label=1;case 1:return a.trys.push([1,3,,4]),[4,e.apiEnvio(e.objEnvio).toPromise()];case 2:return o=a.sent(),this.updateRowSuccess(t,n),[2,{success:!0,record:e,result:o}];case 3:return r=a.sent(),this.updateRowError(t,n,this.getErrorMessage(r)),[2,{success:!1,record:e,error:r}];case 4:return[2]}}))}))}))})),[4,Promise.all(n)];case 1:return o=a.sent(),this.concluido.emit(o),[2,o]}}))}))},t.prototype.updateProgressBar=function(){var t=this.successCount/this.totalRecords*100,e=this.failedCount/this.totalRecords*100,n=this.pendingCount/this.totalRecords*100;this.processingProgress=t+e+"%",this.successProgress=t+"%",this.failedProgress=e+"%",this.pendingProgress=n+"%"},t.prototype.updateRowStatus=function(t,e,n){t.status=e,n&&(t.message=n),this.sortGridData()},t.prototype.sortGridData=function(){var t=this;this.gridData.sort((function(e,n){var o,r=((o={})[v.FAILED]=1,o[v.PROCESSING]=2,o[v.SUCCESS]=3,o[v.PENDING]=4,o);if("status"===t.sortField)return(r[e.status]-r[n.status])*t.sortOrder;var a=e[t.sortField]||"",s=n[t.sortField]||"";return a.localeCompare(s)*t.sortOrder}))},t.prototype.getData=function(t,e){if("status"===e){var n=this.translate.instant(P[t.status]);return t.message&&(n+=": "+t.message),n}return t[e]},t.prototype.getClassStatus=function(t,e){return"status"!==e?"":"status "+t[e].toLowerCase()},t.prototype.getGridColumn=function(){return[{field:"label",header:this.translate.instant("tmsx_fnd.tmsx_angular_components.registro"),style:{width:"50%"},attributes:[],type:r.EnumColumnFieldType.STRING},{field:"status",header:this.translate.instant("tmsx_fnd.tmsx_angular_components.status"),style:{width:"50%"},attributes:[],type:r.EnumColumnFieldType.STRING}]},t.GENERIC_ERR_KEY="tmsx_fnd.tmsx_angular_components.painel_processamento_generic_error",t.ctorParameters=function(){return[{type:n.TranslateService}]},t.ɵprov=o["ɵɵdefineInjectable"]({factory:function(){return new t(o["ɵɵinject"](n.TranslateService))},token:t,providedIn:"root"}),D([o.Input()],t.prototype,"params",void 0),D([o.Output()],t.prototype,"processado",void 0),D([o.Output()],t.prototype,"concluido",void 0),t=a=D([o.Injectable({providedIn:"root"}),o.Component({selector:"tmsx-painel-processamento",template:'<p-panel>\n <p-header>{{ this.params.titulo }} ({{processingProgress }})</p-header>\n\n <div class="progressbar">\n <div class="success"\n [ngClass]="successProgress == \'0%\' ? \'\' : \'visible\'"\n [ngStyle]="{\'width\': successProgress }"\n [sTooltip]="successProgress"\n [escape]="false"\n mobileBehavior="tap"></div>\n <div class="failed"\n [ngClass]="failedProgress == \'0%\' ? \'\' : \'visible\'"\n [ngStyle]="{\'width\': failedProgress }"\n [sTooltip]="failedProgress"\n [escape]="false"\n mobileBehavior="tap"></div>\n <div class="pending"\n [ngClass]="pendingProgress == \'0%\' ? \'\' : \'visible\'"\n [ngStyle]="{\'width\': pendingProgress }"\n [sTooltip]="pendingProgress"\n [escape]="false"\n mobileBehavior="tap"></div>\n </div>\n\n <p-table\n #myTable\n [value]="gridData"\n [columns]="gridColumns"\n dataKey="id"\n [resizableColumns]="true"\n sortMode="multiple"\n [scrollable]="true"\n [paginator]="true"\n [rows]="10"\n showInitialSortBadge="true"\n [rowsPerPageOptions]="[10, 20, 50, 100]"\n [sortField]="sortField"\n [sortOrder]="sortOrder">\n\n <ng-template pTemplate="colgroup" let-columns>\n <colgroup>\n <col *ngFor="let col of columns" [ngStyle]="col.style">\n </colgroup>\n </ng-template>\n\n <ng-template pTemplate="header" let-columns>\n <tr>\n <th scope="col"\n *ngFor="let col of columns"\n [pSortableColumn]="col.field"\n [pSortableColumnDisabled]="col.disableColumnSort"\n [ngStyle]="col.style"\n pResizableColumn>\n <div class="senior-header">\n <span class="senior-header-title">{{col.header}}</span>\n <p-sortIcon *ngIf="!col.disableColumnSort" [field]="col.field"></p-sortIcon>\n </div>\n </th>\n </tr>\n </ng-template>\n\n <ng-template pTemplate="body" let-rowData let-columns="columns">\n <tr>\n <td *ngFor="let col of columns" [ngClass]="getClassStatus(rowData, col.field)">\n {{ getData(rowData, col.field) }}\n </td>\n </tr>\n\n </ng-template>\n\n <ng-template pTemplate="paginatorright">\n <s-table-paging\n [table]="myTable"\n [totalRecords]="gridData.length"\n [exportable]="false"\n >\n </s-table-paging>\n </ng-template>\n </p-table>\n</p-panel>\n',styles:[".progressbar{margin-bottom:30px;border-radius:20px;height:40px}.progressbar .visible:nth-child(1of.visible){border-top-left-radius:20px;border-bottom-left-radius:20px}.progressbar .visible:nth-last-child(1of.visible){border-top-right-radius:20px;border-bottom-right-radius:20px}.progressbar .failed,.progressbar .pending,.progressbar .success{display:inline-block;height:100%;width:0%}.progressbar .success{background-color:#4caf50}.progressbar .failed{background-color:#f44336}.progressbar .pending{background-color:#ccc}.status.success{color:#007504}.status.pending{color:#333}.status.failed{color:#8d0900}.status.processing{color:#b96f00}"]})],t)}(),R=function(){function t(){}return t=D([o.NgModule({imports:[r.LocaleModule.forChild(),n.TranslateModule.forChild(),r.TooltipModule,a.TableModule,r.TableModule,r.ButtonModule,s.CommonModule,i.PanelModule],declarations:[S],providers:[],exports:[S]})],t)}(),M=function(){function t(t,e){this.translate=t,this.dataPipe=e}return t.prototype.getAuditCreatedBy=function(t,e){if(!t||!e)return"";var n="";return this.dataPipe.transform(e).subscribe((function(t){return n=t.split(" ")})),this.translate.instant("tmsx_fnd.tmsx_angular_components.audit_created_by",{nome:t,data:n[0],hora:n[1]})},t.prototype.getAuditModifiedBy=function(t,e){if(!t||!e)return"";var n="";return this.dataPipe.transform(e).subscribe((function(t){return n=t.split(" ")})),this.translate.instant("tmsx_fnd.tmsx_angular_components.audit_modified_by",{nome:t,data:n[0],hora:n[1]})},t.prototype.getAuditInactivatedBy=function(t,e){if(!t||!e)return"";var n="";return this.dataPipe.transform(e).subscribe((function(t){return n=t.split(" ")})),this.translate.instant("tmsx_fnd.tmsx_angular_components.audit_inactivated_by",{nome:t,data:n[0],hora:n[1]})},t.prototype.getProp=function(t,e,n){var o=e.split(".").reduce((function(t,e){return void 0===t[e]?"":t[e]}),t);return o||0===o?(n&&(o=this.formatType(o,n)),"<span>"+o+"</span>"):'<span class="empty-grid">'+this.translate.instant("tmsx_fnd.tmsx_angular_components.list_grid_empty_field")+"</span>"},t.prototype.formatType=function(t,e){if(t){if("date"===e){var n="";return this.dataPipe.transform(t).subscribe((function(t){return n=t.split(" ")})),n[0]}if("datetime"===e){var o="";return this.dataPipe.transform(t).subscribe((function(t){return o=t})),o}if("decimal"===e)return"string"==typeof t&&(t=Number(t)),t.toLocaleString("pt-BR",{minimumFractionDigits:2,maximumFractionDigits:2});if("currency"===e)return t.toLocaleString("pt-BR",{style:"currency",currency:"BRL"});if("cep"===e)return t.replace(/^(\d{2})(\d{3})(\d{3})/,"$1.$2-$3")}return t},t.prototype.emptyGridClass=function(t){return t&&t!==this.translate.instant("tmsx_fnd.replicacao.list_grid_empty_field")?"":"empty-grid"},t.prototype.infoContent=function(t){var e="";return t?((e+=this.getAuditCreatedBy(t.createdBy,t.createdDate))&&(e+="\n"),e+=this.getAuditModifiedBy(t.lastModifiedBy,t.lastModifiedDate)):this.translate.instant("tmsx_fnd.tmsx_angular_components.condicao_valor_lookup_condicional_no_audit")},t.prototype.formatCurrency=function(t){return t.toLocaleString("pt-BR",{style:"currency",currency:"BRL"})},t.prototype.getAtivoTokenLabel=function(t,e,n){var o=t,a=o.name,s=o.type,i=o.label;return s===r.FieldType.Radio?{id:a,label:i+": "+(e?n.instant("tmsx_fnd.tmsx_angular_components.situacao_ativo_true"):n.instant("tmsx_fnd.tmsx_angular_components.situacao_ativo_false"))}:this.createFilterTokens(t,e,n)},t.prototype.getUtilsProp=function(t,e){return e.split(".").reduce((function(t,e){return void 0===t[e]?"":t[e]}),t)},t.prototype.createFilterTokens=function(t,e,n){var o=t,r=o.name,a=o.type,s=o.label,i=o.searchFields,l=o.options;return{id:r,label:s+": "+this.getLabelValueByType(a,e,i,l,n)}},t.prototype.getLabelValueByType=function(t,e,n,o,a){switch(t){case r.FieldType.Date:return this.getDateLabel(e);case r.FieldType.Time:return this.getTimeFromDate(e);case r.FieldType.LocalDateTime:case r.FieldType.DateTime:return this.getDateTimeFromDate(e);case r.FieldType.Lookup:return this.getLookupLabel(e,n);case r.FieldType.Enum:return this.getEnumLabel(e,o);case r.FieldType.Boolean:return this.getBooleanLabel(e,a);default:return e}},t.prototype.getDateLabel=function(t){var e=t instanceof Date?t:new Date(t);return isNaN(e.getTime())?t:e.toLocaleDateString("pt-BR")},t.prototype.getLookupLabel=function(t,e){var n=this;return e.map((function(e){return n.getUtilsProp(t,e.name)})).join(" - ")},t.prototype.getEnumLabel=function(t,e){var n=e.find((function(e){return e.value===t}));return n?n.label:t},t.prototype.getBooleanLabel=function(t,e){return t?e.instant("tmsx_fnd.tmsx_angular_components.list_grid_boolean_true"):e.instant("tmsx_fnd.tmsx_angular_components.list_grid_boolean_false")},t.prototype.getTimeFromDate=function(t){var e;if("string"==typeof t&&/^\d{2}:\d{2}(:\d{2})?$/.test(t)){var n=T(t.split(":"),3),o=n[0],r=n[1],a=n[2],s=void 0===a?"00":a;(e=new Date).setHours(+o,+r,+s,0)}else e=t instanceof Date?t:new Date(t);return isNaN(e.getTime())?t:e.toLocaleTimeString("pt-BR",{hour:"2-digit",minute:"2-digit",second:"2-digit",hour12:!1})},t.prototype.getDateTimeFromDate=function(t){var e=t instanceof Date?t:new Date(t);return isNaN(e.getTime())?t:e.toLocaleDateString("pt-BR")+" "+e.toLocaleTimeString("pt-BR",{hour:"2-digit",minute:"2-digit",second:"2-digit",hour12:!1})},t.ctorParameters=function(){return[{type:n.TranslateService},{type:r.LocalizedDatePipe}]},t.ɵprov=o["ɵɵdefineInjectable"]({factory:function(){return new t(o["ɵɵinject"](n.TranslateService),o["ɵɵinject"](r.LocalizedDatePipe))},token:t,providedIn:"root"}),t=D([o.Injectable({providedIn:"root"})],t)}(),I=function(){function t(t,e,n,r){this.changeDetectorRef=t,this.translate=e,this.utils=n,this.hotkeysService=r,this.openDetails=new o.EventEmitter,this.paging=new o.EventEmitter,this.delete=new o.EventEmitter,this.save=new o.EventEmitter,this.add=new o.EventEmitter,this.clonedData={},this.gridLoading=!0,this.editing=!1,this.lazy=!0,this.deleteEnabled=!1,this.editEnabled=!1,this.addEnabled=!1,this.detailsEnabled=!1,this.calendarTooltipText="",this.currentListParams={page:0,size:5,sort:[]},this.gridData=[],this.gridColumns=[],this.gridTotalRecords=0,this.selected=[],this.nestedGridLoading=!1,this.frozenPosition="left",this.frozenWidth="200px",this.frozenColumns=[],this.ngUnsubscribe=new l.Subject,this.calendarTooltipText=this.translate.instant("tmsx_fnd.tmsx_angular_components.grid_editable_nested_calendar_required")}return t.prototype.ngOnInit=function(){this.setGridData(),this.setHotkeys()},t.prototype.ngOnChanges=function(t){t.config&&this.setGridData()},t.prototype.formatData=function(t,e){return e},t.prototype.setGridData=function(){if(this.config){var t=this.config,e=t.data,n=t.size,o=t.columns,r=t.frozenPosition,a=t.frozenColumns,s=t.editing,i=t.lazy,l=t.deleteActionsEnabled,d=t.editEnabled,c=t.addEnabled,p=t.editActionsEnabled;this.gridData=null!=e?e:[],this.gridTotalRecords=null!=n?n:0,this.gridColumns=null!=o?o:[],this.frozenPosition=null!=r?r:"left",this.frozenColumns=null!=a?a:[],this.frozenWidth=this.calculateFrozenWidth(this.frozenColumns),this.editing=!!s,this.lazy=!!i,this.deleteEnabled=!!l,this.editEnabled=!!d,this.addEnabled=!!c,this.detailsEnabled=!!p,this.changeDetectorRef.detectChanges(),this.nestedGridLoading=!1,this.gridLoading=!1}},t.prototype.calculateFrozenWidth=function(t){return(null==t?void 0:t.length)?t.reduce((function(t,e){return t+120+(parseInt(e.width,10)||0)}),0)+"px":"120px"},t.prototype.getActions=function(t){var e=this;return[{id:"edit",label:this.translate.instant("tmsx_fnd.tmsx_angular_components.edit"),disabled:!this.detailsEnabled,command:function(){e.openRowDetails(t.id)}},{separator:!0},{id:"delete",label:this.translate.instant("tmsx_fnd.tmsx_angular_components.delete"),disabled:!this.deleteEnabled,command:function(){e.onDelete(t.id)}}]},t.prototype.updateGridData=function(t){var e=t.rows?t.rows:10,n=t.first?t.first/e:0;this.gridLoading=!0,this.clonedData&&Object.keys(this.clonedData).length&&(this.clonedData={},this.table.editingRowKeys={}),this.paging.emit({page:n,size:e})},t.prototype.updateNestedGridData=function(t,e){return C(this,void 0,void 0,(function(){var n,o,r;return E(this,(function(a){switch(a.label){case 0:return n=t.rows?t.rows:10,o=t.first?t.first/n:0,r=t.multiSortMeta||[],e.nestedGridLoading=!0,[4,this.nestedFunction({page:o,size:n,sort:r},e)];case 1:return a.sent(),[2]}}))}))},t.prototype.onTab=function(t){if("Tab"===t.key){t.preventDefault();var e,n=Array.from(document.querySelectorAll('p-cellEditor input, p-cellEditor textarea, p-cellEditor [tabindex="0"]')).filter((function(t){return null!==t.offsetParent})),o=n.indexOf(t.target);(e=t.shiftKey?n[o-1]||n[n.length-1]:n[o+1]||n[0])&&e.focus()}},t.prototype.getRowIndex=function(){return(this.currentListParams.page||0)*(this.currentListParams.size||0)},t.prototype.getPageSize=function(){var t;return null!==(t=this.currentListParams.size)&&void 0!==t?t:0},t.prototype.openRowDetails=function(t){this.openDetails.emit(t)},t.prototype.onDelete=function(t){this.delete.emit(t)},t.prototype.onAdd=function(){this.add.emit()},t.prototype.ngOnDestroy=function(){this.ngUnsubscribe.next(),this.ngUnsubscribe.complete()},t.prototype.onEditSave=function(){this.saveAllRows()},t.prototype.onEditCancel=function(){var t=this;this.gridData.forEach((function(e){if(t.clonedData[e.id]){var n=t.gridData.findIndex((function(t){return t.id===e.id}));t.gridData[n]=t.clonedData[e.id],delete t.clonedData[e.id]}t.table.cancelRowEdit(e)})),this.editing=!1},t.prototype.initAllRowsEdit=function(){var t=this;this.gridData.forEach((function(e){t.editing=!0,t.table.initRowEdit(e),t.clonedData[e.id]=w({},e)}))},t.prototype.saveAllRows=function(){var t=this;this.gridData.forEach((function(e){t.clonedData[e.id]&&delete t.clonedData[e.id],t.table.cancelRowEdit(e)})),this.editing=!1,this.save.emit(this.gridData)},t.prototype.formatRowData=function(t){return t},t.prototype.filterOptions=function(t){return t},t.prototype.getSpanProp=function(t,e,n){n=null==n?void 0:n.toLowerCase();var o=this.utils.getProp(t,e,n);return"<span>0</span>"===o&&"decimal"===n?"<span>0,00</span>":t.tiposDados?"MONETARIO"===t.tiposDados[e]?"R$ "+o:"PERCENTUAL"===t.tiposDados[e]?o+" %":o:o},t.prototype.setHotkeys=function(){var t=this;this.hotkeysService.add(new d.Hotkey("alt+shift+n",(function(){return t.onAdd(),!1}),["INPUT","SELECT","TEXTAREA"]))},t.ctorParameters=function(){return[{type:o.ChangeDetectorRef},{type:n.TranslateService},{type:M},{type:d.HotkeysService}]},t.ɵprov=o["ɵɵdefineInjectable"]({factory:function(){return new t(o["ɵɵinject"](o.ChangeDetectorRef),o["ɵɵinject"](n.TranslateService),o["ɵɵinject"](M),o["ɵɵinject"](d.HotkeysService))},token:t,providedIn:"root"}),D([o.Input()],t.prototype,"config",void 0),D([o.Input()],t.prototype,"nestedFunction",void 0),D([o.Output()],t.prototype,"openDetails",void 0),D([o.Output()],t.prototype,"paging",void 0),D([o.Output()],t.prototype,"delete",void 0),D([o.Output()],t.prototype,"save",void 0),D([o.Output()],t.prototype,"add",void 0),D([o.ViewChild("table",{static:!1})],t.prototype,"table",void 0),t=D([o.Injectable({providedIn:"root"}),o.Component({selector:"tmsx-grid-editable-nested",template:'<div class="ui-g">\n <div class="ui-g-12">\n <s-button id="add-button"\n data-cy="add-button"\n priority="primary" type="button"\n [label]="\'tmsx_fnd.tmsx_angular_components.add\' | translate"\n tooltip="{{\'tmsx_fnd.tmsx_angular_components.add\' | translate}} (Alt + Shift + N)"\n [disabled]="!addEnabled"\n (click)="onAdd()">\n </s-button>\n <s-button\n *ngIf="!editing"\n priority="primary"\n iconClass="fa fa-edit"\n label="{{\'tmsx_fnd.tmsx_angular_components.grid_editable_nested_editar\' | translate}}"\n tooltip="{{\'tmsx_fnd.tmsx_angular_components.grid_editable_nested_editar\' | translate}}"\n [disabled]="!editEnabled"\n (click)="initAllRowsEdit()"\n ></s-button>\n <s-button\n *ngIf="editing"\n priority="primary"\n label="{{\'tmsx_fnd.tmsx_angular_components.grid_editable_nested_salvar\' | translate}}"\n iconClass="fa fa-check"\n [disabled]="false"\n (click)="onEditSave()"\n ></s-button>\n <s-button\n *ngIf="editing"\n priority="default"\n label="{{\'tmsx_fnd.tmsx_angular_components.grid_editable_nested_cancelar\' | translate}}"\n iconClass="fa fa-times"\n [disabled]="false"\n (click)="onEditCancel()"\n ></s-button>\n <p-table\n selectionMode="single"\n [(selection)]="selected"\n [value]="gridData"\n [columns]="gridColumns"\n dataKey="id"\n rows="10"\n [rowsPerPageOptions]="[10, 20, 50, 100]"\n [paginator]="true"\n [totalRecords]="gridTotalRecords"\n [lazy]="lazy"\n (onLazyLoad)="updateGridData($event)"\n *sLoadingState="gridLoading"\n sortMode="multiple"\n [frozenWidth]="frozenWidth"\n [scrollable]="true"\n [sTableFrozenPosition]="frozenPosition"\n [sTableFrozenValue]="gridData"\n editMode="row"\n #table\n >\n <ng-template pTemplate="frozencolgroup" let-columns>\n <colgroup>\n <col class="col50" />\n <col *ngFor="let col of frozenColumns" class="col200" />\n <col class="frozenButton" />\n </colgroup>\n </ng-template>\n\n <ng-template pTemplate="frozenheader">\n <tr>\n <th pResizableColumn scope="col"></th>\n <th pResizableColumn *ngFor="let col of frozenColumns" scope="col">{{ col.header }}</th>\n <th pResizableColumn scope="col"></th>\n </tr>\n </ng-template>\n\n <ng-template pTemplate="frozenbody" let-rowData let-expanded="expanded">\n <tr [pSelectableRow]="rowData">\n <td class="col50" tabindex="0" [sRowToggler]="rowData">\n <i class="fa fa-{{ expanded ? \'minus\' : \'plus\' }} "></i>\n </td>\n <td *ngFor="let col of frozenColumns" class="colText"\n tooltipPosition="top" showDelay="500"\n [innerHTML]="getSpanProp(rowData, col.field)">\n </td>\n <td class="frozenButton">\n <s-button\n id="edit-button"\n data-cy="edit-button"\n priority="default"\n type="button"\n size="small"\n [auxiliary]="true"\n [disabled]="false"\n [model]="getActions(rowData)">\n </s-button>\n </td>\n </tr>\n </ng-template>\n\n <ng-template pTemplate="colgroup" let-columns>\n <colgroup>\n <col *ngFor="let col of columns" [style.width]="col.width" />\n </colgroup>\n </ng-template>\n\n <ng-template pTemplate="header" let-columns>\n <tr>\n <th *ngFor="let col of columns" scope="col">\n <div class="senior-header">\n <span class="senior-header-title">{{ col.header }}</span>\n </div>\n </th>\n </tr>\n </ng-template>\n\n <ng-template pTemplate="body" let-rowData let-expanded="expanded" let-columns="columns">\n <tr sNavigation tabindex="0" [pEditableRow]="rowData">\n <td\n *ngFor="let col of columns"\n [ngClass]="editing? \'editPadding\': \'\'"\n pResizableColumn\n [pTooltip]="rowData[col.field]"\n tooltipPosition="top"\n showDelay="500"\n tabindex="0"\n class="col80 colText"\n >\n <p-cellEditor>\n <ng-template pTemplate="input">\n <div class="ui-fluid">\n <ng-container [ngSwitch]="col.type">\n <ng-container *ngSwitchCase="\'Text\'">\n <span>{{ rowData[col.field] }}</span>\n </ng-container>\n\n <ng-container *ngSwitchCase="\'Date\'">\n <p-calendar\n [(ngModel)]="rowData[col.field]"\n appendTo="body"\n [showIcon]="true"\n [required]="true"\n pTooltip="{{ calendarTooltipText }}"\n tooltipPosition="bottom"\n [tooltipDisabled]="rowData[col.field]"\n ></p-calendar>\n </ng-container>\n\n <ng-container *ngSwitchCase="\'Autocomplete\'">\n <p-autoComplete\n [(ngModel)]="rowData[col.field]"\n [suggestions]="col.options"\n appendTo="body"\n (completeMethod)="filterOptions($event)"\n [dropdown]="true"\n [forceSelection]="true"\n ></p-autoComplete>\n </ng-container>\n\n <ng-container *ngSwitchCase="\'Decimal\'">\n <div class="ui-inputgroup">\n <span class="ui-inputgroup-addon"\n *ngIf="\'MONETARIO\' === rowData.tiposDados[col.field]"\n >R$</span>\n <input sNumberInput [scale]="2"\n alignTo="right"\n thousandsSeparator="."\n pInputText\n [(ngModel)]="rowData[col.field]"\n (keydown)="onTab($event)"\n />\n <span class="ui-inputgroup-addon"\n *ngIf="\'PERCENTUAL\' === rowData.tiposDados[col.field]"\n >%</span>\n </div>\n </ng-container>\n\n <ng-container *ngSwitchDefault>\n <input pInputText type="text"\n [(ngModel)]="rowData[col.field]"\n (keydown)="onTab($event)"\n />\n </ng-container>\n </ng-container>\n </div>\n </ng-template>\n\n <ng-template pTemplate="output">\n <div [innerHTML]="getSpanProp(rowData, col.field, col.type)"></div>\n </ng-template>\n </p-cellEditor>\n </td>\n </tr>\n </ng-template>\n\n <ng-template pTemplate="rowexpansion" let-rowData>\n <tr class="sds-expanded-row">\n <td [attr.colspan]="gridColumns.length + 1">\n <p-table\n [value]="rowData.nestedGridData"\n [columns]="rowData.nestedGridColumns"\n dataKey="id"\n rows="5"\n [first]="getRowIndex()"\n [rows]="getPageSize()"\n [rowsPerPageOptions]="[5, 10, 20, 50]"\n [paginator]="true"\n [totalRecords]="rowData.nestedGridTotalRecords"\n [responsive]="true"\n [lazy]="true"\n (onLazyLoad)="updateNestedGridData($event, rowData)"\n sortMode="multiple"\n *sLoadingState="rowData.nestedGridLoading"\n >\n <ng-template pTemplate="header" let-columns>\n <tr>\n <th *ngFor="let col of columns" scope="col"\n [pSortableColumn]="col.field">\n <div class="senior-header">\n <span class="senior-header-title">{{ col.header }}</span>\n <p-sortIcon [field]="col.field"></p-sortIcon>\n </div>\n </th>\n </tr>\n </ng-template>\n\n <ng-template pTemplate="body" let-rowData let-columns="columns">\n <tr [pSelectableRow]="rowData">\n <td *ngFor="let col of columns" class="colText">\n {{ formatData(col, rowData[col.field]) }}\n </td>\n </tr>\n </ng-template>\n\n <ng-template pTemplate="paginatorright">\n <span>\n {{ rowData.nestedGridTotalRecords }}\n {{\'tmsx_fnd.tmsx_angular_components.grid_editable_nested_paging\' | translate}}\n </span>\n </ng-template>\n </p-table>\n </td>\n </tr>\n </ng-template>\n\n <ng-template pTemplate="paginatorright">\n <span>\n {{ gridTotalRecords }}\n {{\'tmsx_fnd.tmsx_angular_components.grid_editable_nested_paging\' | translate}}\n </span>\n </ng-template>\n </p-table>\n </div>\n</div>\n',styles:[":host ::ng-deep div.contents{margin-top:15px}input{max-width:100%}.col50{width:50px}.col80{width:80px}.col200{width:200px}.colText{overflow:hidden;white-space:nowrap;text-overflow:ellipsis}.frozenButton{width:70px;padding:5px}.editPadding{padding-top:8px;padding-bottom:9px}"]})],t)}(),L=function(){function t(){}return t=D([o.NgModule({imports:[s.CommonModule,r.LocaleModule.forChild(),n.TranslateModule.forChild(),r.ButtonModule,r.TableModule,r.TooltipModule,r.LoadingStateModule,r.NumberInputModule,r.BreadcrumbModule,r.ControlErrorsModule,r.CustomFieldsModule,r.DynamicFormModule,r.EmptyStateModule,r.TokenListModule,c.ToastModule,a.TableModule,_.TooltipModule,i.PanelModule,u.InputTextModule,m.ConfirmDialogModule,g.CalendarModule,f.DropdownModule,h.SharedModule,b.AutoCompleteModule,y.CheckboxModule,p.FormsModule,p.ReactiveFormsModule],declarations:[I],providers:[],exports:[I]})],t)}(),z=new o.InjectionToken("hostProjectConfigs"),F=function(){function t(){}var e;return e=t,t.forRoot=function(t){return{ngModule:e,providers:[{provide:z,useValue:t}]}},t=e=D([o.NgModule({})],t)}();t.GridEditableNestedComponent=I,t.GridEditableNestedModule=L,t.HostProjectConfigsInjectionToken=z,t.PainelProcessamentoComponent=S,t.PainelProcessamentoModule=R,t.TmsxAngularComponentsModule=F,t.UtilsService=M,t.fallback={"tmsx_fnd.tmsx_angular_components.add":"Adicionar","tmsx_fnd.tmsx_angular_components.audit_created_by":"Criado por {{nome}} em {{data}} às {{hora}}.","tmsx_fnd.tmsx_angular_components.audit_modified_by":"Modificado por {{nome}} em {{data}} às {{hora}}.","tmsx_fnd.tmsx_angular_components.audit_inactivated_by":"Inativado por {{nome}} em {{data}} às {{hora}}.","tmsx_fnd.tmsx_angular_components.condicao_valor_lookup_condicional_no_audit":"Sem informações de auditoria","tmsx_fnd.tmsx_angular_components.delete":"Excluir","tmsx_fnd.tmsx_angular_components.edit":"Editar","tmsx_fnd.tmsx_angular_components.error_forbidden_description":"Você não tem permissão para acessar este recurso.","tmsx_fnd.tmsx_angular_components.error_forbidden_title":"Acesso Negado","tmsx_fnd.tmsx_angular_components.error_not_found_description":"O recurso solicitado não foi encontrado.","tmsx_fnd.tmsx_angular_components.error_not_found_title":"Não Encontrado","tmsx_fnd.tmsx_angular_components.error_unauthorized_description":"Você não está autorizado a acessar este recurso.","tmsx_fnd.tmsx_angular_components.error_unauthorized_title":"Não Autorizado","tmsx_fnd.tmsx_angular_components.grid_aninhada":"Grid Aninhada","tmsx_fnd.tmsx_angular_components.grid_editable_nested_calendar_required":"É necessário informar a data","tmsx_fnd.tmsx_angular_components.grid_editable_nested_cancelar":"Cancelar","tmsx_fnd.tmsx_angular_components.grid_editable_nested_editar":"Editar valores","tmsx_fnd.tmsx_angular_components.grid_editable_nested_paging":"registros encontrados","tmsx_fnd.tmsx_angular_components.grid_editable_nested_salvar":"Salvar alterações","tmsx_fnd.tmsx_angular_components.list_grid_boolean_false":"Não","tmsx_fnd.tmsx_angular_components.list_grid_boolean_true":"Sim","tmsx_fnd.tmsx_angular_components.list_grid_empty_field":"Não informado","tmsx_fnd.tmsx_angular_components.painel_processamento":"Painel de Processamento","tmsx_fnd.tmsx_angular_components.painel_processamento_api_error":"API de envio não definida","tmsx_fnd.tmsx_angular_components.painel_processamento_status_failed":"Ocorreu um erro","tmsx_fnd.tmsx_angular_components.painel_processamento_status_pending":"Pendente","tmsx_fnd.tmsx_angular_components.painel_processamento_status_processing":"Processando","tmsx_fnd.tmsx_angular_components.painel_processamento_status_success":"Finalizado com sucesso","tmsx_fnd.tmsx_angular_components.registro":"Registro","tmsx_fnd.tmsx_angular_components.showcase_painel_processamento_title":"Demonstração do Painel de Processamento","tmsx_fnd.tmsx_angular_components.showcase_table_title":"Demonstração da Tabela","tmsx_fnd.tmsx_angular_components.showcase_title":"Showcase","tmsx_fnd.tmsx_angular_components.situacao_ativo_false":"Inativo","tmsx_fnd.tmsx_angular_components.situacao_ativo_true":"Ativo","tmsx_fnd.tmsx_angular_components.status":"Situação","tmsx_fnd.tmsx_angular_components.total_records":"{{ value }} registros encontrados"},Object.defineProperty(t,"__esModule",{value:!0})}));
1
+ !function(t,e){"object"==typeof exports&&"undefined"!=typeof module?e(exports,require("p-limit"),require("@ngx-translate/core"),require("@angular/core"),require("@seniorsistemas/angular-components"),require("primeng/table"),require("@angular/common"),require("primeng/panel"),require("rxjs"),require("angular2-hotkeys"),require("primeng/toast"),require("@angular/forms"),require("primeng/inputtext"),require("primeng/confirmdialog"),require("primeng/calendar"),require("primeng/dropdown"),require("primeng/api"),require("primeng/tooltip"),require("primeng/autocomplete"),require("primeng/checkbox")):"function"==typeof define&&define.amd?define("@seniorsistemas/tmsx-angular-components",["exports","p-limit","@ngx-translate/core","@angular/core","@seniorsistemas/angular-components","primeng/table","@angular/common","primeng/panel","rxjs","angular2-hotkeys","primeng/toast","@angular/forms","primeng/inputtext","primeng/confirmdialog","primeng/calendar","primeng/dropdown","primeng/api","primeng/tooltip","primeng/autocomplete","primeng/checkbox"],e):e(((t=t||self).seniorsistemas=t.seniorsistemas||{},t.seniorsistemas["tmsx-angular-components"]={}),t.pLimit,t.core,t.ng.core,t.angularComponents,t.table,t.ng.common,t.panel,t.rxjs,t.angular2Hotkeys,t.toast,t.ng.forms,t.inputtext,t.confirmdialog,t.calendar,t.dropdown,t.api,t.tooltip,t.autocomplete,t.checkbox)}(this,(function(t,e,n,o,r,a,s,i,l,d,c,p,u,m,g,f,h,_,b,y){"use strict";e=e&&e.hasOwnProperty("default")?e.default:e;var x,v,w=function(){return(w=Object.assign||function(t){for(var e,n=1,o=arguments.length;n<o;n++)for(var r in e=arguments[n])Object.prototype.hasOwnProperty.call(e,r)&&(t[r]=e[r]);return t}).apply(this,arguments)};function D(t,e,n,o){var r,a=arguments.length,s=a<3?e:null===o?o=Object.getOwnPropertyDescriptor(e,n):o;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)s=Reflect.decorate(t,e,n,o);else for(var i=t.length-1;i>=0;i--)(r=t[i])&&(s=(a<3?r(s):a>3?r(e,n,s):r(e,n))||s);return a>3&&s&&Object.defineProperty(e,n,s),s}function C(t,e,n,o){return new(n||(n=Promise))((function(r,a){function s(t){try{l(o.next(t))}catch(t){a(t)}}function i(t){try{l(o.throw(t))}catch(t){a(t)}}function l(t){var e;t.done?r(t.value):(e=t.value,e instanceof n?e:new n((function(t){t(e)}))).then(s,i)}l((o=o.apply(t,e||[])).next())}))}function E(t,e){var n,o,r,a,s={label:0,sent:function(){if(1&r[0])throw r[1];return r[1]},trys:[],ops:[]};return a={next:i(0),throw:i(1),return:i(2)},"function"==typeof Symbol&&(a[Symbol.iterator]=function(){return this}),a;function i(a){return function(i){return function(a){if(n)throw new TypeError("Generator is already executing.");for(;s;)try{if(n=1,o&&(r=2&a[0]?o.return:a[0]?o.throw||((r=o.return)&&r.call(o),0):o.next)&&!(r=r.call(o,a[1])).done)return r;switch(o=0,r&&(a=[2&a[0],r.value]),a[0]){case 0:case 1:r=a;break;case 4:return s.label++,{value:a[1],done:!1};case 5:s.label++,o=a[1],a=[0];continue;case 7:a=s.ops.pop(),s.trys.pop();continue;default:if(!(r=s.trys,(r=r.length>0&&r[r.length-1])||6!==a[0]&&2!==a[0])){s=0;continue}if(3===a[0]&&(!r||a[1]>r[0]&&a[1]<r[3])){s.label=a[1];break}if(6===a[0]&&s.label<r[1]){s.label=r[1],r=a;break}if(r&&s.label<r[2]){s.label=r[2],s.ops.push(a);break}r[2]&&s.ops.pop(),s.trys.pop();continue}a=e.call(t,s)}catch(t){a=[6,t],o=0}finally{n=r=0}if(5&a[0])throw a[1];return{value:a[0]?a[1]:void 0,done:!0}}([a,i])}}}function T(t,e){var n="function"==typeof Symbol&&t[Symbol.iterator];if(!n)return t;var o,r,a=n.call(t),s=[];try{for(;(void 0===e||e-- >0)&&!(o=a.next()).done;)s.push(o.value)}catch(t){r={error:t}}finally{try{o&&!o.done&&(n=a.return)&&n.call(a)}finally{if(r)throw r.error}}return s}!function(t){t.SUCCESS="SUCCESS",t.FAILED="FAILED",t.PENDING="PENDING",t.PROCESSING="PROCESSING"}(v||(v={}));var P=((x={})[v.SUCCESS]="tmsx_fnd.tmsx_angular_components.painel_processamento_status_success",x[v.FAILED]="tmsx_fnd.tmsx_angular_components.painel_processamento_status_failed",x[v.PENDING]="tmsx_fnd.tmsx_angular_components.painel_processamento_status_pending",x[v.PROCESSING]="tmsx_fnd.tmsx_angular_components.painel_processamento_status_processing",x),S=function(){function t(t){this.translate=t,this.processado=new o.EventEmitter,this.concluido=new o.EventEmitter,this.totalRecords=0,this.successCount=0,this.failedCount=0,this.pendingCount=0,this.successProgress="0%",this.failedProgress="0%",this.pendingProgress="100%",this.processingProgress="0%",this.sortField="status",this.sortOrder=1}var a;return a=t,t.prototype.ngOnInit=function(){this.initPanel()},t.prototype.initPanel=function(){this.gridColumns=this.getGridColumn(),this.initGrid(),this.initProgressBar()},t.prototype.initProgressBar=function(){this.successProgress="0%",this.failedProgress="0%",this.pendingProgress="100%",this.processingProgress="0%",this.totalRecords=this.params.registros.length,this.pendingCount=this.totalRecords,this.params.quantidadeChamadasSimultaneas>1?this.processAllRecordsWithPLimit():this.syncProcessRecord(0)},t.prototype.initGrid=function(){this.gridData=[],this.gridData=this.params.registros.map((function(t){return{registro:t,status:v.PENDING,label:t.descricao}}))},t.prototype.getErrorMessage=function(t){var e,n;try{return t?(null===(e=null==t?void 0:t.error)||void 0===e?void 0:e.message)?String(t.error.message):(null===(n=null==t?void 0:t.message)||void 0===n?void 0:n.message)?String(t.message.message):this.genericErrorMsg:this.genericErrorMsg}catch(t){return this.genericErrorMsg}},Object.defineProperty(t.prototype,"genericErrorMsg",{get:function(){return this.translate.instant(a.GENERIC_ERR_KEY)},enumerable:!0,configurable:!0}),t.prototype.updateRowSuccess=function(t,e){this.successCount++,this.pendingCount--,this.updateRowStatus(t,v.SUCCESS),this.processado.emit(t),this.updateProgressBar()},t.prototype.updateRowError=function(t,e,n){this.failedCount++,this.pendingCount--,this.updateRowStatus(t,v.FAILED,n),this.processado.emit(t),this.updateProgressBar()},t.prototype.syncProcessRecord=function(t){var e=this;if(this.pendingCount<1)this.concluido.emit("ok");else{this.updateRowStatus(this.gridData[t],v.PROCESSING);var n=this.params.registros[t],o=this.gridData.find((function(t){return t.registro===n}));n.apiEnvio?n.apiEnvio(n.objEnvio).subscribe((function(){e.updateRowSuccess(o,t),e.syncProcessRecord(t+1)}),(function(n){e.updateRowError(o,t,e.getErrorMessage(n)),e.syncProcessRecord(t+1)})):(this.failedCount=this.pendingCount,this.pendingCount=0,this.updateRowStatus(o,v.FAILED,this.translate.instant("tmsx_fnd.tmsx_angular_components.painel_processamento_api_error")),this.updateProgressBar(),this.concluido.emit("erro"))}},t.prototype.processAllRecordsWithPLimit=function(){return C(this,void 0,void 0,(function(){var t,n,o,r=this;return E(this,(function(a){switch(a.label){case 0:return t=e(this.params.quantidadeChamadasSimultaneas),n=this.params.registros.map((function(e,n){return t((function(){return C(r,void 0,void 0,(function(){var t,o,r;return E(this,(function(a){switch(a.label){case 0:t=this.gridData.find((function(t){return t.registro===e})),this.updateRowStatus(t,v.PROCESSING),a.label=1;case 1:return a.trys.push([1,3,,4]),[4,e.apiEnvio(e.objEnvio).toPromise()];case 2:return o=a.sent(),this.updateRowSuccess(t,n),[2,{success:!0,record:e,result:o}];case 3:return r=a.sent(),this.updateRowError(t,n,this.getErrorMessage(r)),[2,{success:!1,record:e,error:r}];case 4:return[2]}}))}))}))})),[4,Promise.all(n)];case 1:return o=a.sent(),this.concluido.emit(o),[2,o]}}))}))},t.prototype.updateProgressBar=function(){var t=this.successCount/this.totalRecords*100,e=this.failedCount/this.totalRecords*100,n=this.pendingCount/this.totalRecords*100,o=t+e;this.processingProgress=o.toFixed(0)+"%",this.successProgress=t.toFixed(0)+"%",this.failedProgress=e.toFixed(0)+"%",this.pendingProgress=n.toFixed(0)+"%"},t.prototype.updateRowStatus=function(t,e,n){t.status=e,n&&(t.message=n),this.sortGridData()},t.prototype.sortGridData=function(){var t=this;this.gridData.sort((function(e,n){var o,r=((o={})[v.FAILED]=1,o[v.PROCESSING]=2,o[v.SUCCESS]=3,o[v.PENDING]=4,o);if("status"===t.sortField)return(r[e.status]-r[n.status])*t.sortOrder;var a=e[t.sortField]||"",s=n[t.sortField]||"";return a.localeCompare(s)*t.sortOrder}))},t.prototype.getData=function(t,e){if("status"===e){var n=this.translate.instant(P[t.status]);return t.message&&(n+=": "+t.message),n}return t[e]},t.prototype.getClassStatus=function(t,e){return"status"!==e?"":"status "+t[e].toLowerCase()},t.prototype.getGridColumn=function(){return[{field:"label",header:this.translate.instant("tmsx_fnd.tmsx_angular_components.registro"),style:{width:"50%"},attributes:[],type:r.EnumColumnFieldType.STRING},{field:"status",header:this.translate.instant("tmsx_fnd.tmsx_angular_components.status"),style:{width:"50%"},attributes:[],type:r.EnumColumnFieldType.STRING}]},t.GENERIC_ERR_KEY="tmsx_fnd.tmsx_angular_components.painel_processamento_generic_error",t.ctorParameters=function(){return[{type:n.TranslateService}]},t.ɵprov=o["ɵɵdefineInjectable"]({factory:function(){return new t(o["ɵɵinject"](n.TranslateService))},token:t,providedIn:"root"}),D([o.Input()],t.prototype,"params",void 0),D([o.Output()],t.prototype,"processado",void 0),D([o.Output()],t.prototype,"concluido",void 0),t=a=D([o.Injectable({providedIn:"root"}),o.Component({selector:"tmsx-painel-processamento",template:'<p-panel>\n <p-header>{{ this.params.titulo }} ({{processingProgress }})</p-header>\n\n <div class="progressbar">\n <div class="success"\n [ngClass]="successProgress == \'0%\' ? \'\' : \'visible\'"\n [ngStyle]="{\'width\': successProgress }"\n [sTooltip]="successProgress"\n [escape]="false"\n mobileBehavior="tap"></div>\n <div class="failed"\n [ngClass]="failedProgress == \'0%\' ? \'\' : \'visible\'"\n [ngStyle]="{\'width\': failedProgress }"\n [sTooltip]="failedProgress"\n [escape]="false"\n mobileBehavior="tap"></div>\n <div class="pending"\n [ngClass]="pendingProgress == \'0%\' ? \'\' : \'visible\'"\n [ngStyle]="{\'width\': pendingProgress }"\n [sTooltip]="pendingProgress"\n [escape]="false"\n mobileBehavior="tap"></div>\n </div>\n\n <p-table\n #myTable\n [value]="gridData"\n [columns]="gridColumns"\n dataKey="id"\n [resizableColumns]="true"\n sortMode="multiple"\n [scrollable]="true"\n [paginator]="true"\n [rows]="10"\n showInitialSortBadge="true"\n [rowsPerPageOptions]="[10, 20, 50, 100]"\n [sortField]="sortField"\n [sortOrder]="sortOrder">\n\n <ng-template pTemplate="colgroup" let-columns>\n <colgroup>\n <col *ngFor="let col of columns" [ngStyle]="col.style">\n </colgroup>\n </ng-template>\n\n <ng-template pTemplate="header" let-columns>\n <tr>\n <th scope="col"\n *ngFor="let col of columns"\n [pSortableColumn]="col.field"\n [pSortableColumnDisabled]="col.disableColumnSort"\n [ngStyle]="col.style"\n pResizableColumn>\n <div class="senior-header">\n <span class="senior-header-title">{{col.header}}</span>\n <p-sortIcon *ngIf="!col.disableColumnSort" [field]="col.field"></p-sortIcon>\n </div>\n </th>\n </tr>\n </ng-template>\n\n <ng-template pTemplate="body" let-rowData let-columns="columns">\n <tr>\n <td *ngFor="let col of columns" [ngClass]="getClassStatus(rowData, col.field)">\n {{ getData(rowData, col.field) }}\n </td>\n </tr>\n\n </ng-template>\n\n <ng-template pTemplate="paginatorright">\n <s-table-paging\n [table]="myTable"\n [totalRecords]="gridData.length"\n [exportable]="false"\n >\n </s-table-paging>\n </ng-template>\n </p-table>\n</p-panel>\n',styles:[".progressbar{margin-bottom:30px;border-radius:20px;height:40px}.progressbar .visible:nth-child(1of.visible){border-top-left-radius:20px;border-bottom-left-radius:20px}.progressbar .visible:nth-last-child(1of.visible){border-top-right-radius:20px;border-bottom-right-radius:20px}.progressbar .failed,.progressbar .pending,.progressbar .success{display:inline-block;height:100%;width:0%}.progressbar .success{background-color:#4caf50}.progressbar .failed{background-color:#f44336}.progressbar .pending{background-color:#ccc}.status.success{color:#007504}.status.pending{color:#333}.status.failed{color:#8d0900}.status.processing{color:#b96f00}"]})],t)}(),R=function(){function t(){}return t=D([o.NgModule({imports:[r.LocaleModule.forChild(),n.TranslateModule.forChild(),r.TooltipModule,a.TableModule,r.TableModule,r.ButtonModule,s.CommonModule,i.PanelModule],declarations:[S],providers:[],exports:[S]})],t)}(),M=function(){function t(t,e){this.translate=t,this.dataPipe=e}return t.prototype.getAuditCreatedBy=function(t,e){if(!t||!e)return"";var n="";return this.dataPipe.transform(e).subscribe((function(t){return n=t.split(" ")})),this.translate.instant("tmsx_fnd.tmsx_angular_components.audit_created_by",{nome:t,data:n[0],hora:n[1]})},t.prototype.getAuditModifiedBy=function(t,e){if(!t||!e)return"";var n="";return this.dataPipe.transform(e).subscribe((function(t){return n=t.split(" ")})),this.translate.instant("tmsx_fnd.tmsx_angular_components.audit_modified_by",{nome:t,data:n[0],hora:n[1]})},t.prototype.getAuditInactivatedBy=function(t,e){if(!t||!e)return"";var n="";return this.dataPipe.transform(e).subscribe((function(t){return n=t.split(" ")})),this.translate.instant("tmsx_fnd.tmsx_angular_components.audit_inactivated_by",{nome:t,data:n[0],hora:n[1]})},t.prototype.getProp=function(t,e,n){var o=e.split(".").reduce((function(t,e){return void 0===t[e]?"":t[e]}),t);return o||0===o?(n&&(o=this.formatType(o,n)),"<span>"+o+"</span>"):'<span class="empty-grid">'+this.translate.instant("tmsx_fnd.tmsx_angular_components.list_grid_empty_field")+"</span>"},t.prototype.formatType=function(t,e){if(t){if("date"===e){var n="";return this.dataPipe.transform(t).subscribe((function(t){return n=t.split(" ")})),n[0]}if("datetime"===e){var o="";return this.dataPipe.transform(t).subscribe((function(t){return o=t})),o}if("decimal"===e)return"string"==typeof t&&(t=Number(t)),t.toLocaleString("pt-BR",{minimumFractionDigits:2,maximumFractionDigits:2});if("currency"===e)return t.toLocaleString("pt-BR",{style:"currency",currency:"BRL"});if("cep"===e)return t.replace(/^(\d{2})(\d{3})(\d{3})/,"$1.$2-$3")}return t},t.prototype.emptyGridClass=function(t){return t&&t!==this.translate.instant("tmsx_fnd.replicacao.list_grid_empty_field")?"":"empty-grid"},t.prototype.infoContent=function(t){var e="";return t?((e+=this.getAuditCreatedBy(t.createdBy,t.createdDate))&&(e+="\n"),e+=this.getAuditModifiedBy(t.lastModifiedBy,t.lastModifiedDate)):this.translate.instant("tmsx_fnd.tmsx_angular_components.condicao_valor_lookup_condicional_no_audit")},t.prototype.formatCurrency=function(t){return t.toLocaleString("pt-BR",{style:"currency",currency:"BRL"})},t.prototype.getAtivoTokenLabel=function(t,e,n){var o=t,a=o.name,s=o.type,i=o.label;return s===r.FieldType.Radio?{id:a,label:i+": "+(e?n.instant("tmsx_fnd.tmsx_angular_components.situacao_ativo_true"):n.instant("tmsx_fnd.tmsx_angular_components.situacao_ativo_false"))}:this.createFilterTokens(t,e,n)},t.prototype.getUtilsProp=function(t,e){return e.split(".").reduce((function(t,e){return void 0===t[e]?"":t[e]}),t)},t.prototype.createFilterTokens=function(t,e,n){var o=t,r=o.name,a=o.type,s=o.label,i=o.searchFields,l=o.options;return{id:r,label:s+": "+this.getLabelValueByType(a,e,i,l,n)}},t.prototype.getLabelValueByType=function(t,e,n,o,a){switch(t){case r.FieldType.Date:return this.getDateLabel(e);case r.FieldType.Time:return this.getTimeFromDate(e);case r.FieldType.LocalDateTime:case r.FieldType.DateTime:return this.getDateTimeFromDate(e);case r.FieldType.Lookup:return this.getLookupLabel(e,n);case r.FieldType.Enum:return this.getEnumLabel(e,o);case r.FieldType.Boolean:return this.getBooleanLabel(e,a);default:return e}},t.prototype.getDateLabel=function(t){var e=t instanceof Date?t:new Date(t);return isNaN(e.getTime())?t:e.toLocaleDateString("pt-BR")},t.prototype.getLookupLabel=function(t,e){var n=this;return e.map((function(e){return n.getUtilsProp(t,e.name)})).join(" - ")},t.prototype.getEnumLabel=function(t,e){var n=e.find((function(e){return e.value===t}));return n?n.label:t},t.prototype.getBooleanLabel=function(t,e){return t?e.instant("tmsx_fnd.tmsx_angular_components.list_grid_boolean_true"):e.instant("tmsx_fnd.tmsx_angular_components.list_grid_boolean_false")},t.prototype.getTimeFromDate=function(t){var e;if("string"==typeof t&&/^\d{2}:\d{2}(:\d{2})?$/.test(t)){var n=T(t.split(":"),3),o=n[0],r=n[1],a=n[2],s=void 0===a?"00":a;(e=new Date).setHours(+o,+r,+s,0)}else e=t instanceof Date?t:new Date(t);return isNaN(e.getTime())?t:e.toLocaleTimeString("pt-BR",{hour:"2-digit",minute:"2-digit",second:"2-digit",hour12:!1})},t.prototype.getDateTimeFromDate=function(t){var e=t instanceof Date?t:new Date(t);return isNaN(e.getTime())?t:e.toLocaleDateString("pt-BR")+" "+e.toLocaleTimeString("pt-BR",{hour:"2-digit",minute:"2-digit",second:"2-digit",hour12:!1})},t.ctorParameters=function(){return[{type:n.TranslateService},{type:r.LocalizedDatePipe}]},t.ɵprov=o["ɵɵdefineInjectable"]({factory:function(){return new t(o["ɵɵinject"](n.TranslateService),o["ɵɵinject"](r.LocalizedDatePipe))},token:t,providedIn:"root"}),t=D([o.Injectable({providedIn:"root"})],t)}(),I=function(){function t(t,e,n,r){this.changeDetectorRef=t,this.translate=e,this.utils=n,this.hotkeysService=r,this.openDetails=new o.EventEmitter,this.paging=new o.EventEmitter,this.delete=new o.EventEmitter,this.save=new o.EventEmitter,this.add=new o.EventEmitter,this.clonedData={},this.gridLoading=!0,this.editing=!1,this.lazy=!0,this.deleteEnabled=!1,this.editEnabled=!1,this.addEnabled=!1,this.detailsEnabled=!1,this.calendarTooltipText="",this.currentListParams={page:0,size:5,sort:[]},this.gridData=[],this.gridColumns=[],this.gridTotalRecords=0,this.selected=[],this.nestedGridLoading=!1,this.frozenPosition="left",this.frozenWidth="200px",this.frozenColumns=[],this.ngUnsubscribe=new l.Subject,this.calendarTooltipText=this.translate.instant("tmsx_fnd.tmsx_angular_components.grid_editable_nested_calendar_required")}return t.prototype.ngOnInit=function(){this.setGridData(),this.setHotkeys()},t.prototype.ngOnChanges=function(t){t.config&&this.setGridData()},t.prototype.formatData=function(t,e){return e},t.prototype.setGridData=function(){if(this.config){var t=this.config,e=t.data,n=t.size,o=t.columns,r=t.frozenPosition,a=t.frozenColumns,s=t.editing,i=t.lazy,l=t.deleteActionsEnabled,d=t.editEnabled,c=t.addEnabled,p=t.editActionsEnabled;this.gridData=null!=e?e:[],this.gridTotalRecords=null!=n?n:0,this.gridColumns=null!=o?o:[],this.frozenPosition=null!=r?r:"left",this.frozenColumns=null!=a?a:[],this.frozenWidth=this.calculateFrozenWidth(this.frozenColumns),this.editing=!!s,this.lazy=!!i,this.deleteEnabled=!!l,this.editEnabled=!!d,this.addEnabled=!!c,this.detailsEnabled=!!p,this.changeDetectorRef.detectChanges(),this.nestedGridLoading=!1,this.gridLoading=!1}},t.prototype.calculateFrozenWidth=function(t){return(null==t?void 0:t.length)?t.reduce((function(t,e){return t+120+(parseInt(e.width,10)||0)}),0)+"px":"120px"},t.prototype.getActions=function(t){var e=this;return[{id:"edit",label:this.translate.instant("tmsx_fnd.tmsx_angular_components.edit"),disabled:!this.detailsEnabled,command:function(){e.openRowDetails(t.id)}},{separator:!0},{id:"delete",label:this.translate.instant("tmsx_fnd.tmsx_angular_components.delete"),disabled:!this.deleteEnabled,command:function(){e.onDelete(t.id)}}]},t.prototype.updateGridData=function(t){var e=t.rows?t.rows:10,n=t.first?t.first/e:0;this.gridLoading=!0,this.clonedData&&Object.keys(this.clonedData).length&&(this.clonedData={},this.table.editingRowKeys={}),this.paging.emit({page:n,size:e})},t.prototype.updateNestedGridData=function(t,e){return C(this,void 0,void 0,(function(){var n,o,r;return E(this,(function(a){switch(a.label){case 0:return n=t.rows?t.rows:10,o=t.first?t.first/n:0,r=t.multiSortMeta||[],e.nestedGridLoading=!0,[4,this.nestedFunction({page:o,size:n,sort:r},e)];case 1:return a.sent(),[2]}}))}))},t.prototype.onTab=function(t){if("Tab"===t.key){t.preventDefault();var e,n=Array.from(document.querySelectorAll('p-cellEditor input, p-cellEditor textarea, p-cellEditor [tabindex="0"]')).filter((function(t){return null!==t.offsetParent})),o=n.indexOf(t.target);(e=t.shiftKey?n[o-1]||n[n.length-1]:n[o+1]||n[0])&&e.focus()}},t.prototype.getRowIndex=function(){return(this.currentListParams.page||0)*(this.currentListParams.size||0)},t.prototype.getPageSize=function(){var t;return null!==(t=this.currentListParams.size)&&void 0!==t?t:0},t.prototype.openRowDetails=function(t){this.openDetails.emit(t)},t.prototype.onDelete=function(t){this.delete.emit(t)},t.prototype.onAdd=function(){this.add.emit()},t.prototype.ngOnDestroy=function(){this.ngUnsubscribe.next(),this.ngUnsubscribe.complete()},t.prototype.onEditSave=function(){this.saveAllRows()},t.prototype.onEditCancel=function(){var t=this;this.gridData.forEach((function(e){if(t.clonedData[e.id]){var n=t.gridData.findIndex((function(t){return t.id===e.id}));t.gridData[n]=t.clonedData[e.id],delete t.clonedData[e.id]}t.table.cancelRowEdit(e)})),this.editing=!1},t.prototype.initAllRowsEdit=function(){var t=this;this.gridData.forEach((function(e){t.editing=!0,t.table.initRowEdit(e),t.clonedData[e.id]=w({},e)}))},t.prototype.saveAllRows=function(){var t=this;this.gridData.forEach((function(e){t.clonedData[e.id]&&delete t.clonedData[e.id],t.table.cancelRowEdit(e)})),this.editing=!1,this.save.emit(this.gridData)},t.prototype.formatRowData=function(t){return t},t.prototype.filterOptions=function(t){return t},t.prototype.getSpanProp=function(t,e,n){n=null==n?void 0:n.toLowerCase();var o=this.utils.getProp(t,e,n);return"<span>0</span>"===o&&"decimal"===n?"<span>0,00</span>":t.tiposDados?"MONETARIO"===t.tiposDados[e]?"R$ "+o:"PERCENTUAL"===t.tiposDados[e]?o+" %":o:o},t.prototype.setHotkeys=function(){var t=this;this.hotkeysService.add(new d.Hotkey("alt+shift+n",(function(){return t.onAdd(),!1}),["INPUT","SELECT","TEXTAREA"]))},t.ctorParameters=function(){return[{type:o.ChangeDetectorRef},{type:n.TranslateService},{type:M},{type:d.HotkeysService}]},t.ɵprov=o["ɵɵdefineInjectable"]({factory:function(){return new t(o["ɵɵinject"](o.ChangeDetectorRef),o["ɵɵinject"](n.TranslateService),o["ɵɵinject"](M),o["ɵɵinject"](d.HotkeysService))},token:t,providedIn:"root"}),D([o.Input()],t.prototype,"config",void 0),D([o.Input()],t.prototype,"nestedFunction",void 0),D([o.Output()],t.prototype,"openDetails",void 0),D([o.Output()],t.prototype,"paging",void 0),D([o.Output()],t.prototype,"delete",void 0),D([o.Output()],t.prototype,"save",void 0),D([o.Output()],t.prototype,"add",void 0),D([o.ViewChild("table",{static:!1})],t.prototype,"table",void 0),t=D([o.Injectable({providedIn:"root"}),o.Component({selector:"tmsx-grid-editable-nested",template:'<div class="ui-g">\n <div class="ui-g-12">\n <s-button id="add-button"\n data-cy="add-button"\n priority="primary" type="button"\n [label]="\'tmsx_fnd.tmsx_angular_components.add\' | translate"\n tooltip="{{\'tmsx_fnd.tmsx_angular_components.add\' | translate}} (Alt + Shift + N)"\n [disabled]="!addEnabled"\n (click)="onAdd()">\n </s-button>\n <s-button\n *ngIf="!editing"\n priority="primary"\n iconClass="fa fa-edit"\n label="{{\'tmsx_fnd.tmsx_angular_components.grid_editable_nested_editar\' | translate}}"\n tooltip="{{\'tmsx_fnd.tmsx_angular_components.grid_editable_nested_editar\' | translate}}"\n [disabled]="!editEnabled"\n (click)="initAllRowsEdit()"\n ></s-button>\n <s-button\n *ngIf="editing"\n priority="primary"\n label="{{\'tmsx_fnd.tmsx_angular_components.grid_editable_nested_salvar\' | translate}}"\n iconClass="fa fa-check"\n [disabled]="false"\n (click)="onEditSave()"\n ></s-button>\n <s-button\n *ngIf="editing"\n priority="default"\n label="{{\'tmsx_fnd.tmsx_angular_components.grid_editable_nested_cancelar\' | translate}}"\n iconClass="fa fa-times"\n [disabled]="false"\n (click)="onEditCancel()"\n ></s-button>\n <p-table\n selectionMode="single"\n [(selection)]="selected"\n [value]="gridData"\n [columns]="gridColumns"\n dataKey="id"\n rows="10"\n [rowsPerPageOptions]="[10, 20, 50, 100]"\n [paginator]="true"\n [totalRecords]="gridTotalRecords"\n [lazy]="lazy"\n (onLazyLoad)="updateGridData($event)"\n *sLoadingState="gridLoading"\n sortMode="multiple"\n [frozenWidth]="frozenWidth"\n [scrollable]="true"\n [sTableFrozenPosition]="frozenPosition"\n [sTableFrozenValue]="gridData"\n editMode="row"\n #table\n >\n <ng-template pTemplate="frozencolgroup" let-columns>\n <colgroup>\n <col class="col50" />\n <col *ngFor="let col of frozenColumns" class="col200" />\n <col class="frozenButton" />\n </colgroup>\n </ng-template>\n\n <ng-template pTemplate="frozenheader">\n <tr>\n <th pResizableColumn scope="col"></th>\n <th pResizableColumn *ngFor="let col of frozenColumns" scope="col">{{ col.header }}</th>\n <th pResizableColumn scope="col"></th>\n </tr>\n </ng-template>\n\n <ng-template pTemplate="frozenbody" let-rowData let-expanded="expanded">\n <tr [pSelectableRow]="rowData">\n <td class="col50" tabindex="0" [sRowToggler]="rowData">\n <i class="fa fa-{{ expanded ? \'minus\' : \'plus\' }} "></i>\n </td>\n <td *ngFor="let col of frozenColumns" class="colText"\n tooltipPosition="top" showDelay="500"\n [innerHTML]="getSpanProp(rowData, col.field)">\n </td>\n <td class="frozenButton">\n <s-button\n id="edit-button"\n data-cy="edit-button"\n priority="default"\n type="button"\n size="small"\n [auxiliary]="true"\n [disabled]="false"\n [model]="getActions(rowData)">\n </s-button>\n </td>\n </tr>\n </ng-template>\n\n <ng-template pTemplate="colgroup" let-columns>\n <colgroup>\n <col *ngFor="let col of columns" [style.width]="col.width" />\n </colgroup>\n </ng-template>\n\n <ng-template pTemplate="header" let-columns>\n <tr>\n <th *ngFor="let col of columns" scope="col">\n <div class="senior-header">\n <span class="senior-header-title">{{ col.header }}</span>\n </div>\n </th>\n </tr>\n </ng-template>\n\n <ng-template pTemplate="body" let-rowData let-expanded="expanded" let-columns="columns">\n <tr sNavigation tabindex="0" [pEditableRow]="rowData">\n <td\n *ngFor="let col of columns"\n [ngClass]="editing? \'editPadding\': \'\'"\n pResizableColumn\n [pTooltip]="rowData[col.field]"\n tooltipPosition="top"\n showDelay="500"\n tabindex="0"\n class="col80 colText"\n >\n <p-cellEditor>\n <ng-template pTemplate="input">\n <div class="ui-fluid">\n <ng-container [ngSwitch]="col.type">\n <ng-container *ngSwitchCase="\'Text\'">\n <span>{{ rowData[col.field] }}</span>\n </ng-container>\n\n <ng-container *ngSwitchCase="\'Date\'">\n <p-calendar\n [(ngModel)]="rowData[col.field]"\n appendTo="body"\n [showIcon]="true"\n [required]="true"\n pTooltip="{{ calendarTooltipText }}"\n tooltipPosition="bottom"\n [tooltipDisabled]="rowData[col.field]"\n ></p-calendar>\n </ng-container>\n\n <ng-container *ngSwitchCase="\'Autocomplete\'">\n <p-autoComplete\n [(ngModel)]="rowData[col.field]"\n [suggestions]="col.options"\n appendTo="body"\n (completeMethod)="filterOptions($event)"\n [dropdown]="true"\n [forceSelection]="true"\n ></p-autoComplete>\n </ng-container>\n\n <ng-container *ngSwitchCase="\'Decimal\'">\n <div class="ui-inputgroup">\n <span class="ui-inputgroup-addon"\n *ngIf="\'MONETARIO\' === rowData.tiposDados[col.field]"\n >R$</span>\n <input sNumberInput [scale]="2"\n alignTo="right"\n thousandsSeparator="."\n pInputText\n [(ngModel)]="rowData[col.field]"\n (keydown)="onTab($event)"\n />\n <span class="ui-inputgroup-addon"\n *ngIf="\'PERCENTUAL\' === rowData.tiposDados[col.field]"\n >%</span>\n </div>\n </ng-container>\n\n <ng-container *ngSwitchDefault>\n <input pInputText type="text"\n [(ngModel)]="rowData[col.field]"\n (keydown)="onTab($event)"\n />\n </ng-container>\n </ng-container>\n </div>\n </ng-template>\n\n <ng-template pTemplate="output">\n <div [innerHTML]="getSpanProp(rowData, col.field, col.type)"></div>\n </ng-template>\n </p-cellEditor>\n </td>\n </tr>\n </ng-template>\n\n <ng-template pTemplate="rowexpansion" let-rowData>\n <tr class="sds-expanded-row">\n <td [attr.colspan]="gridColumns.length + 1">\n <p-table\n [value]="rowData.nestedGridData"\n [columns]="rowData.nestedGridColumns"\n dataKey="id"\n rows="5"\n [first]="getRowIndex()"\n [rows]="getPageSize()"\n [rowsPerPageOptions]="[5, 10, 20, 50]"\n [paginator]="true"\n [totalRecords]="rowData.nestedGridTotalRecords"\n [responsive]="true"\n [lazy]="true"\n (onLazyLoad)="updateNestedGridData($event, rowData)"\n sortMode="multiple"\n *sLoadingState="rowData.nestedGridLoading"\n >\n <ng-template pTemplate="header" let-columns>\n <tr>\n <th *ngFor="let col of columns" scope="col"\n [pSortableColumn]="col.field">\n <div class="senior-header">\n <span class="senior-header-title">{{ col.header }}</span>\n <p-sortIcon [field]="col.field"></p-sortIcon>\n </div>\n </th>\n </tr>\n </ng-template>\n\n <ng-template pTemplate="body" let-rowData let-columns="columns">\n <tr [pSelectableRow]="rowData">\n <td *ngFor="let col of columns" class="colText">\n {{ formatData(col, rowData[col.field]) }}\n </td>\n </tr>\n </ng-template>\n\n <ng-template pTemplate="paginatorright">\n <span>\n {{ rowData.nestedGridTotalRecords }}\n {{\'tmsx_fnd.tmsx_angular_components.grid_editable_nested_paging\' | translate}}\n </span>\n </ng-template>\n </p-table>\n </td>\n </tr>\n </ng-template>\n\n <ng-template pTemplate="paginatorright">\n <span>\n {{ gridTotalRecords }}\n {{\'tmsx_fnd.tmsx_angular_components.grid_editable_nested_paging\' | translate}}\n </span>\n </ng-template>\n </p-table>\n </div>\n</div>\n',styles:[":host ::ng-deep div.contents{margin-top:15px}input{max-width:100%}.col50{width:50px}.col80{width:80px}.col200{width:200px}.colText{overflow:hidden;white-space:nowrap;text-overflow:ellipsis}.frozenButton{width:70px;padding:5px}.editPadding{padding-top:8px;padding-bottom:9px}"]})],t)}(),L=function(){function t(){}return t=D([o.NgModule({imports:[s.CommonModule,r.LocaleModule.forChild(),n.TranslateModule.forChild(),r.ButtonModule,r.TableModule,r.TooltipModule,r.LoadingStateModule,r.NumberInputModule,r.BreadcrumbModule,r.ControlErrorsModule,r.CustomFieldsModule,r.DynamicFormModule,r.EmptyStateModule,r.TokenListModule,c.ToastModule,a.TableModule,_.TooltipModule,i.PanelModule,u.InputTextModule,m.ConfirmDialogModule,g.CalendarModule,f.DropdownModule,h.SharedModule,b.AutoCompleteModule,y.CheckboxModule,p.FormsModule,p.ReactiveFormsModule],declarations:[I],providers:[],exports:[I]})],t)}(),F=new o.InjectionToken("hostProjectConfigs"),z=function(){function t(){}var e;return e=t,t.forRoot=function(t){return{ngModule:e,providers:[{provide:F,useValue:t}]}},t=e=D([o.NgModule({})],t)}();t.GridEditableNestedComponent=I,t.GridEditableNestedModule=L,t.HostProjectConfigsInjectionToken=F,t.PainelProcessamentoComponent=S,t.PainelProcessamentoModule=R,t.TmsxAngularComponentsModule=z,t.UtilsService=M,t.fallback={"tmsx_fnd.tmsx_angular_components.add":"Adicionar","tmsx_fnd.tmsx_angular_components.audit_created_by":"Criado por {{nome}} em {{data}} às {{hora}}.","tmsx_fnd.tmsx_angular_components.audit_modified_by":"Modificado por {{nome}} em {{data}} às {{hora}}.","tmsx_fnd.tmsx_angular_components.audit_inactivated_by":"Inativado por {{nome}} em {{data}} às {{hora}}.","tmsx_fnd.tmsx_angular_components.condicao_valor_lookup_condicional_no_audit":"Sem informações de auditoria","tmsx_fnd.tmsx_angular_components.delete":"Excluir","tmsx_fnd.tmsx_angular_components.edit":"Editar","tmsx_fnd.tmsx_angular_components.error_forbidden_description":"Você não tem permissão para acessar este recurso.","tmsx_fnd.tmsx_angular_components.error_forbidden_title":"Acesso Negado","tmsx_fnd.tmsx_angular_components.error_not_found_description":"O recurso solicitado não foi encontrado.","tmsx_fnd.tmsx_angular_components.error_not_found_title":"Não Encontrado","tmsx_fnd.tmsx_angular_components.error_unauthorized_description":"Você não está autorizado a acessar este recurso.","tmsx_fnd.tmsx_angular_components.error_unauthorized_title":"Não Autorizado","tmsx_fnd.tmsx_angular_components.grid_aninhada":"Grid Aninhada","tmsx_fnd.tmsx_angular_components.grid_editable_nested_calendar_required":"É necessário informar a data","tmsx_fnd.tmsx_angular_components.grid_editable_nested_cancelar":"Cancelar","tmsx_fnd.tmsx_angular_components.grid_editable_nested_editar":"Editar valores","tmsx_fnd.tmsx_angular_components.grid_editable_nested_paging":"registros encontrados","tmsx_fnd.tmsx_angular_components.grid_editable_nested_salvar":"Salvar alterações","tmsx_fnd.tmsx_angular_components.list_grid_boolean_false":"Não","tmsx_fnd.tmsx_angular_components.list_grid_boolean_true":"Sim","tmsx_fnd.tmsx_angular_components.list_grid_empty_field":"Não informado","tmsx_fnd.tmsx_angular_components.painel_processamento":"Painel de Processamento","tmsx_fnd.tmsx_angular_components.painel_processamento_api_error":"API de envio não definida","tmsx_fnd.tmsx_angular_components.painel_processamento_status_failed":"Ocorreu um erro","tmsx_fnd.tmsx_angular_components.painel_processamento_status_pending":"Pendente","tmsx_fnd.tmsx_angular_components.painel_processamento_status_processing":"Processando","tmsx_fnd.tmsx_angular_components.painel_processamento_status_success":"Finalizado com sucesso","tmsx_fnd.tmsx_angular_components.registro":"Registro","tmsx_fnd.tmsx_angular_components.showcase_painel_processamento_title":"Demonstração do Painel de Processamento","tmsx_fnd.tmsx_angular_components.showcase_table_title":"Demonstração da Tabela","tmsx_fnd.tmsx_angular_components.showcase_title":"Showcase","tmsx_fnd.tmsx_angular_components.situacao_ativo_false":"Inativo","tmsx_fnd.tmsx_angular_components.situacao_ativo_true":"Ativo","tmsx_fnd.tmsx_angular_components.status":"Situação","tmsx_fnd.tmsx_angular_components.total_records":"{{ value }} registros encontrados"},Object.defineProperty(t,"__esModule",{value:!0})}));
2
2
  //# sourceMappingURL=seniorsistemas-tmsx-angular-components.umd.min.js.map
@@ -1 +1 @@
1
- {"version":3,"sources":["../../node_modules/tslib/tslib.es6.js","ng://@seniorsistemas/tmsx-angular-components/components/painel-processamento/processamento.ts","ng://@seniorsistemas/tmsx-angular-components/components/painel-processamento/painel-processamento.component.ts","ng://@seniorsistemas/tmsx-angular-components/components/painel-processamento/painel-processamento.module.ts","ng://@seniorsistemas/tmsx-angular-components/utils/services/utils.service.ts","ng://@seniorsistemas/tmsx-angular-components/components/grid-editable-nested/grid-editable-nested.component.ts","ng://@seniorsistemas/tmsx-angular-components/components/grid-editable-nested/grid-editable-nested.module.ts","ng://@seniorsistemas/tmsx-angular-components/tmsx-angular-components.module.ts","ng://@seniorsistemas/tmsx-angular-components/locale/fallback.ts"],"names":["EnumProcessamentoStatus","__assign","Object","assign","t","s","i","n","arguments","length","p","prototype","hasOwnProperty","call","apply","this","__decorate","decorators","target","key","desc","d","c","r","getOwnPropertyDescriptor","Reflect","decorate","defineProperty","__awaiter","thisArg","_arguments","P","generator","Promise","resolve","reject","fulfilled","value","step","next","e","rejected","result","done","then","__generator","body","f","y","g","_","label","sent","trys","ops","verb","throw","return","Symbol","iterator","v","op","TypeError","pop","push","__read","o","m","ar","error","EnumProcessamentoStatusTranslationMap","_a","SUCCESS","FAILED","PENDING","PROCESSING","PainelProcessamentoComponent","translate","processado","EventEmitter","concluido","totalRecords","successCount","failedCount","pendingCount","successProgress","failedProgress","pendingProgress","processingProgress","sortField","sortOrder","ngOnInit","initPanel","gridColumns","getGridColumn","initGrid","initProgressBar","params","registros","quantidadeChamadasSimultaneas","processAllRecordsWithPLimit","syncProcessRecord","gridData","map","registro","status","descricao","getErrorMessage","message","String","_b","genericErrorMsg","_c","instant","PainelProcessamentoComponent_1","GENERIC_ERR_KEY","updateRowSuccess","row","index","updateRowStatus","emit","updateProgressBar","updateRowError","_this","record","find","item","apiEnvio","objEnvio","subscribe","limit","require$$0","promises","toPromise","success","error_1","all","results","successWidth","failedWidth","pendingWidth","sortGridData","sort","a","b","statusOrder","valA","valB","localeCompare","getData","rowData","field","text","getClassStatus","toLowerCase","header","style","width","attributes","type","EnumColumnFieldType","STRING","TranslateService","Input","Output","Injectable","providedIn","Component","selector","template","PainelProcessamentoModule","NgModule","imports","LocaleModule","forChild","TranslateModule","TooltipModule","PrimeTableModule","TableModule","ButtonModule","CommonModule","PanelModule","declarations","providers","exports","UtilsService","dataPipe","getAuditCreatedBy","createdBy","createdDate","date","transform","split","nome","data","hora","getAuditModifiedBy","modifiedBy","modifiedDate","getAuditInactivatedBy","inactivatedBy","inactivatedDate","getProp","obj","path","reduce","prop","undefined","formatType","date_1","date_2","Number","toLocaleString","minimumFractionDigits","maximumFractionDigits","currency","replace","emptyGridClass","infoContent","entity","lastModifiedBy","lastModifiedDate","formatCurrency","getAtivoTokenLabel","formField","name","FieldType","Radio","id","createFilterTokens","getUtilsProp","searchFields","options","getLabelValueByType","Date","getDateLabel","Time","getTimeFromDate","LocalDateTime","DateTime","getDateTimeFromDate","Lookup","getLookupLabel","Enum","getEnumLabel","Boolean","getBooleanLabel","dateObj","isNaN","getTime","toLocaleDateString","join","option","opt","test","h","setHours","toLocaleTimeString","hour","minute","second","hour12","LocalizedDatePipe","GridEditableNestedComponent","changeDetectorRef","utils","hotkeysService","openDetails","paging","delete","save","add","clonedData","gridLoading","editing","lazy","deleteEnabled","editEnabled","addEnabled","detailsEnabled","calendarTooltipText","currentListParams","page","size","gridTotalRecords","selected","nestedGridLoading","frozenPosition","frozenWidth","frozenColumns","ngUnsubscribe","Subject","setGridData","setHotkeys","ngOnChanges","changes","config","formatData","column","columns","deleteActionsEnabled","editActionsEnabled","calculateFrozenWidth","detectChanges","sum","col","parseInt","getActions","disabled","command","openRowDetails","separator","onDelete","updateGridData","event","rows","first","keys","table","editingRowKeys","updateNestedGridData","multiSortMeta","nestedFunction","onTab","preventDefault","focusables","Array","from","document","querySelectorAll","filter","el","offsetParent","currentIndex","indexOf","shiftKey","focus","getRowIndex","getPageSize","onAdd","ngOnDestroy","complete","onEditSave","saveAllRows","onEditCancel","forEach","findIndex","cancelRowEdit","initAllRowsEdit","initRowEdit","formatRowData","filterOptions","getSpanProp","tiposDados","Hotkey","ChangeDetectorRef","HotkeysService","ViewChild","static","GridEditableNestedModule","LoadingStateModule","NumberInputModule","BreadcrumbModule","ControlErrorsModule","CustomFieldsModule","DynamicFormModule","EmptyStateModule","TokenListModule","ToastModule","PrimeTooltipModule","InputTextModule","ConfirmDialogModule","CalendarModule","DropdownModule","SharedModule","AutoCompleteModule","CheckboxModule","FormsModule","ReactiveFormsModule","HostProjectConfigsInjectionToken","InjectionToken","TmsxAngularComponentsModule","forRoot","ngModule","TmsxAngularComponentsModule_1","provide","useValue","tmsx_fnd.tmsx_angular_components.add","tmsx_fnd.tmsx_angular_components.audit_created_by","tmsx_fnd.tmsx_angular_components.audit_modified_by","tmsx_fnd.tmsx_angular_components.audit_inactivated_by","tmsx_fnd.tmsx_angular_components.condicao_valor_lookup_condicional_no_audit","tmsx_fnd.tmsx_angular_components.delete","tmsx_fnd.tmsx_angular_components.edit","tmsx_fnd.tmsx_angular_components.error_forbidden_description","tmsx_fnd.tmsx_angular_components.error_forbidden_title","tmsx_fnd.tmsx_angular_components.error_not_found_description","tmsx_fnd.tmsx_angular_components.error_not_found_title","tmsx_fnd.tmsx_angular_components.error_unauthorized_description","tmsx_fnd.tmsx_angular_components.error_unauthorized_title","tmsx_fnd.tmsx_angular_components.grid_aninhada","tmsx_fnd.tmsx_angular_components.grid_editable_nested_calendar_required","tmsx_fnd.tmsx_angular_components.grid_editable_nested_cancelar","tmsx_fnd.tmsx_angular_components.grid_editable_nested_editar","tmsx_fnd.tmsx_angular_components.grid_editable_nested_paging","tmsx_fnd.tmsx_angular_components.grid_editable_nested_salvar","tmsx_fnd.tmsx_angular_components.list_grid_boolean_false","tmsx_fnd.tmsx_angular_components.list_grid_boolean_true","tmsx_fnd.tmsx_angular_components.list_grid_empty_field","tmsx_fnd.tmsx_angular_components.painel_processamento","tmsx_fnd.tmsx_angular_components.painel_processamento_api_error","tmsx_fnd.tmsx_angular_components.painel_processamento_status_failed","tmsx_fnd.tmsx_angular_components.painel_processamento_status_pending","tmsx_fnd.tmsx_angular_components.painel_processamento_status_processing","tmsx_fnd.tmsx_angular_components.painel_processamento_status_success","tmsx_fnd.tmsx_angular_components.registro","tmsx_fnd.tmsx_angular_components.showcase_painel_processamento_title","tmsx_fnd.tmsx_angular_components.showcase_table_title","tmsx_fnd.tmsx_angular_components.showcase_title","tmsx_fnd.tmsx_angular_components.situacao_ativo_false","tmsx_fnd.tmsx_angular_components.situacao_ativo_true","tmsx_fnd.tmsx_angular_components.status","tmsx_fnd.tmsx_angular_components.total_records"],"mappings":"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","sourcesContent":["/*! *****************************************************************************\r\nCopyright (c) Microsoft Corporation.\r\n\r\nPermission to use, copy, modify, and/or distribute this software for any\r\npurpose with or without fee is hereby granted.\r\n\r\nTHE SOFTWARE IS PROVIDED \"AS IS\" AND THE AUTHOR DISCLAIMS ALL WARRANTIES WITH\r\nREGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY\r\nAND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY SPECIAL, DIRECT,\r\nINDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM\r\nLOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR\r\nOTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR\r\nPERFORMANCE OF THIS SOFTWARE.\r\n***************************************************************************** */\r\n/* global Reflect, Promise */\r\n\r\nvar extendStatics = function(d, b) {\r\n extendStatics = Object.setPrototypeOf ||\r\n ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) ||\r\n function (d, b) { for (var p in b) if (b.hasOwnProperty(p)) d[p] = b[p]; };\r\n return extendStatics(d, b);\r\n};\r\n\r\nexport function __extends(d, b) {\r\n extendStatics(d, b);\r\n function __() { this.constructor = d; }\r\n d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());\r\n}\r\n\r\nexport var __assign = function() {\r\n __assign = Object.assign || function __assign(t) {\r\n for (var s, i = 1, n = arguments.length; i < n; i++) {\r\n s = arguments[i];\r\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p)) t[p] = s[p];\r\n }\r\n return t;\r\n }\r\n return __assign.apply(this, arguments);\r\n}\r\n\r\nexport function __rest(s, e) {\r\n var t = {};\r\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0)\r\n t[p] = s[p];\r\n if (s != null && typeof Object.getOwnPropertySymbols === \"function\")\r\n for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {\r\n if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i]))\r\n t[p[i]] = s[p[i]];\r\n }\r\n return t;\r\n}\r\n\r\nexport function __decorate(decorators, target, key, desc) {\r\n var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;\r\n if (typeof Reflect === \"object\" && typeof Reflect.decorate === \"function\") r = Reflect.decorate(decorators, target, key, desc);\r\n else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;\r\n return c > 3 && r && Object.defineProperty(target, key, r), r;\r\n}\r\n\r\nexport function __param(paramIndex, decorator) {\r\n return function (target, key) { decorator(target, key, paramIndex); }\r\n}\r\n\r\nexport function __metadata(metadataKey, metadataValue) {\r\n if (typeof Reflect === \"object\" && typeof Reflect.metadata === \"function\") return Reflect.metadata(metadataKey, metadataValue);\r\n}\r\n\r\nexport function __awaiter(thisArg, _arguments, P, generator) {\r\n function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }\r\n return new (P || (P = Promise))(function (resolve, reject) {\r\n function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }\r\n function rejected(value) { try { step(generator[\"throw\"](value)); } catch (e) { reject(e); } }\r\n function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }\r\n step((generator = generator.apply(thisArg, _arguments || [])).next());\r\n });\r\n}\r\n\r\nexport function __generator(thisArg, body) {\r\n var _ = { label: 0, sent: function() { if (t[0] & 1) throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g;\r\n return g = { next: verb(0), \"throw\": verb(1), \"return\": verb(2) }, typeof Symbol === \"function\" && (g[Symbol.iterator] = function() { return this; }), g;\r\n function verb(n) { return function (v) { return step([n, v]); }; }\r\n function step(op) {\r\n if (f) throw new TypeError(\"Generator is already executing.\");\r\n while (_) try {\r\n if (f = 1, y && (t = op[0] & 2 ? y[\"return\"] : op[0] ? y[\"throw\"] || ((t = y[\"return\"]) && t.call(y), 0) : y.next) && !(t = t.call(y, op[1])).done) return t;\r\n if (y = 0, t) op = [op[0] & 2, t.value];\r\n switch (op[0]) {\r\n case 0: case 1: t = op; break;\r\n case 4: _.label++; return { value: op[1], done: false };\r\n case 5: _.label++; y = op[1]; op = [0]; continue;\r\n case 7: op = _.ops.pop(); _.trys.pop(); continue;\r\n default:\r\n if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) { _ = 0; continue; }\r\n if (op[0] === 3 && (!t || (op[1] > t[0] && op[1] < t[3]))) { _.label = op[1]; break; }\r\n if (op[0] === 6 && _.label < t[1]) { _.label = t[1]; t = op; break; }\r\n if (t && _.label < t[2]) { _.label = t[2]; _.ops.push(op); break; }\r\n if (t[2]) _.ops.pop();\r\n _.trys.pop(); continue;\r\n }\r\n op = body.call(thisArg, _);\r\n } catch (e) { op = [6, e]; y = 0; } finally { f = t = 0; }\r\n if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true };\r\n }\r\n}\r\n\r\nexport function __createBinding(o, m, k, k2) {\r\n if (k2 === undefined) k2 = k;\r\n o[k2] = m[k];\r\n}\r\n\r\nexport function __exportStar(m, exports) {\r\n for (var p in m) if (p !== \"default\" && !exports.hasOwnProperty(p)) exports[p] = m[p];\r\n}\r\n\r\nexport function __values(o) {\r\n var s = typeof Symbol === \"function\" && Symbol.iterator, m = s && o[s], i = 0;\r\n if (m) return m.call(o);\r\n if (o && typeof o.length === \"number\") return {\r\n next: function () {\r\n if (o && i >= o.length) o = void 0;\r\n return { value: o && o[i++], done: !o };\r\n }\r\n };\r\n throw new TypeError(s ? \"Object is not iterable.\" : \"Symbol.iterator is not defined.\");\r\n}\r\n\r\nexport function __read(o, n) {\r\n var m = typeof Symbol === \"function\" && o[Symbol.iterator];\r\n if (!m) return o;\r\n var i = m.call(o), r, ar = [], e;\r\n try {\r\n while ((n === void 0 || n-- > 0) && !(r = i.next()).done) ar.push(r.value);\r\n }\r\n catch (error) { e = { error: error }; }\r\n finally {\r\n try {\r\n if (r && !r.done && (m = i[\"return\"])) m.call(i);\r\n }\r\n finally { if (e) throw e.error; }\r\n }\r\n return ar;\r\n}\r\n\r\nexport function __spread() {\r\n for (var ar = [], i = 0; i < arguments.length; i++)\r\n ar = ar.concat(__read(arguments[i]));\r\n return ar;\r\n}\r\n\r\nexport function __spreadArrays() {\r\n for (var s = 0, i = 0, il = arguments.length; i < il; i++) s += arguments[i].length;\r\n for (var r = Array(s), k = 0, i = 0; i < il; i++)\r\n for (var a = arguments[i], j = 0, jl = a.length; j < jl; j++, k++)\r\n r[k] = a[j];\r\n return r;\r\n};\r\n\r\nexport function __await(v) {\r\n return this instanceof __await ? (this.v = v, this) : new __await(v);\r\n}\r\n\r\nexport function __asyncGenerator(thisArg, _arguments, generator) {\r\n if (!Symbol.asyncIterator) throw new TypeError(\"Symbol.asyncIterator is not defined.\");\r\n var g = generator.apply(thisArg, _arguments || []), i, q = [];\r\n return i = {}, verb(\"next\"), verb(\"throw\"), verb(\"return\"), i[Symbol.asyncIterator] = function () { return this; }, i;\r\n function verb(n) { if (g[n]) i[n] = function (v) { return new Promise(function (a, b) { q.push([n, v, a, b]) > 1 || resume(n, v); }); }; }\r\n function resume(n, v) { try { step(g[n](v)); } catch (e) { settle(q[0][3], e); } }\r\n function step(r) { r.value instanceof __await ? Promise.resolve(r.value.v).then(fulfill, reject) : settle(q[0][2], r); }\r\n function fulfill(value) { resume(\"next\", value); }\r\n function reject(value) { resume(\"throw\", value); }\r\n function settle(f, v) { if (f(v), q.shift(), q.length) resume(q[0][0], q[0][1]); }\r\n}\r\n\r\nexport function __asyncDelegator(o) {\r\n var i, p;\r\n return i = {}, verb(\"next\"), verb(\"throw\", function (e) { throw e; }), verb(\"return\"), i[Symbol.iterator] = function () { return this; }, i;\r\n function verb(n, f) { i[n] = o[n] ? function (v) { return (p = !p) ? { value: __await(o[n](v)), done: n === \"return\" } : f ? f(v) : v; } : f; }\r\n}\r\n\r\nexport function __asyncValues(o) {\r\n if (!Symbol.asyncIterator) throw new TypeError(\"Symbol.asyncIterator is not defined.\");\r\n var m = o[Symbol.asyncIterator], i;\r\n return m ? m.call(o) : (o = typeof __values === \"function\" ? __values(o) : o[Symbol.iterator](), i = {}, verb(\"next\"), verb(\"throw\"), verb(\"return\"), i[Symbol.asyncIterator] = function () { return this; }, i);\r\n function verb(n) { i[n] = o[n] && function (v) { return new Promise(function (resolve, reject) { v = o[n](v), settle(resolve, reject, v.done, v.value); }); }; }\r\n function settle(resolve, reject, d, v) { Promise.resolve(v).then(function(v) { resolve({ value: v, done: d }); }, reject); }\r\n}\r\n\r\nexport function __makeTemplateObject(cooked, raw) {\r\n if (Object.defineProperty) { Object.defineProperty(cooked, \"raw\", { value: raw }); } else { cooked.raw = raw; }\r\n return cooked;\r\n};\r\n\r\nexport function __importStar(mod) {\r\n if (mod && mod.__esModule) return mod;\r\n var result = {};\r\n if (mod != null) for (var k in mod) if (Object.hasOwnProperty.call(mod, k)) result[k] = mod[k];\r\n result.default = mod;\r\n return result;\r\n}\r\n\r\nexport function __importDefault(mod) {\r\n return (mod && mod.__esModule) ? mod : { default: mod };\r\n}\r\n\r\nexport function __classPrivateFieldGet(receiver, privateMap) {\r\n if (!privateMap.has(receiver)) {\r\n throw new TypeError(\"attempted to get private field on non-instance\");\r\n }\r\n return privateMap.get(receiver);\r\n}\r\n\r\nexport function __classPrivateFieldSet(receiver, privateMap, value) {\r\n if (!privateMap.has(receiver)) {\r\n throw new TypeError(\"attempted to set private field on non-instance\");\r\n }\r\n privateMap.set(receiver, value);\r\n return value;\r\n}\r\n","import { Observable } from \"rxjs\";\n\nexport interface ProcessamentoInput {\n quantidadeChamadasSimultaneas: number;\n registros: ProcessamentoRegistro[];\n titulo: string;\n}\n\nexport interface ProcessamentoRegistro {\n descricao: string;\n apiEnvio: (data: object) => Observable<any>;\n objEnvio: any;\n}\n\nexport interface ProcessamentoGrid {\n registro: any;\n label: string;\n status: EnumProcessamentoStatus;\n message?: string;\n}\n\nexport enum EnumProcessamentoStatus {\n SUCCESS = \"SUCCESS\",\n FAILED = \"FAILED\",\n PENDING = \"PENDING\",\n PROCESSING = \"PROCESSING\"\n}\n\nexport const EnumProcessamentoStatusTranslationMap: Record<EnumProcessamentoStatus, string> = {\n [EnumProcessamentoStatus.SUCCESS]: 'tmsx_fnd.tmsx_angular_components.painel_processamento_status_success',\n [EnumProcessamentoStatus.FAILED]: 'tmsx_fnd.tmsx_angular_components.painel_processamento_status_failed',\n [EnumProcessamentoStatus.PENDING]: 'tmsx_fnd.tmsx_angular_components.painel_processamento_status_pending',\n [EnumProcessamentoStatus.PROCESSING]: 'tmsx_fnd.tmsx_angular_components.painel_processamento_status_processing'\n};\n\n","import { TranslateService } from '@ngx-translate/core';\nimport { Component, Injectable, Input, OnInit, Output, EventEmitter } from '@angular/core';\nimport { EnumProcessamentoStatus, EnumProcessamentoStatusTranslationMap, ProcessamentoGrid, ProcessamentoInput } from './processamento';\nimport { Column, EnumColumnFieldType } from '@seniorsistemas/angular-components';\n\n@Injectable({\n providedIn: 'root'\n})\n@Component({\n selector: 'tmsx-painel-processamento',\n templateUrl: './painel-processamento.component.html',\n styleUrls: ['./painel-processamento.component.scss']\n})\nexport class PainelProcessamentoComponent implements OnInit {\n\n private static readonly GENERIC_ERR_KEY = 'tmsx_fnd.tmsx_angular_components.painel_processamento_generic_error';\n\n @Input() params: ProcessamentoInput;\n @Output() processado = new EventEmitter();\n @Output() concluido = new EventEmitter();\n\n public gridData: ProcessamentoGrid[];\n public gridColumns: Column[];\n\n public totalRecords = 0;\n public successCount = 0;\n public failedCount = 0;\n public pendingCount = 0;\n public successProgress = '0%';\n public failedProgress = '0%';\n public pendingProgress = '100%';\n public processingProgress = '0%';\n public sortField = 'status';\n public sortOrder = 1;\n\n constructor(\n private readonly translate: TranslateService\n ) { }\n\n ngOnInit() {\n this.initPanel();\n }\n\n initPanel() {\n this.gridColumns = this.getGridColumn();\n this.initGrid();\n this.initProgressBar();\n }\n\n initProgressBar() {\n this.successProgress = '0%';\n this.failedProgress = '0%';\n this.pendingProgress = '100%';\n this.processingProgress = '0%';\n this.totalRecords = this.params.registros.length;\n this.pendingCount = this.totalRecords;\n\n if (this.params.quantidadeChamadasSimultaneas > 1) {\n this.processAllRecordsWithPLimit();\n } else {\n this.syncProcessRecord(0);\n }\n }\n\n initGrid() {\n this.gridData = [];\n this.gridData = this.params.registros.map(registro => ({\n registro,\n status: EnumProcessamentoStatus.PENDING,\n label: registro.descricao\n }));\n }\n\n private getErrorMessage(error: any): string {\n try {\n if (!error) {\n return this.genericErrorMsg;\n }\n if (error?.error?.message) {\n return String(error.error.message);\n }\n if (error?.message?.message) {\n return String(error.message.message);\n }\n return this.genericErrorMsg;\n } catch {\n return this.genericErrorMsg;\n }\n }\n\n private get genericErrorMsg(): string {\n return this.translate.instant(PainelProcessamentoComponent.GENERIC_ERR_KEY);\n }\n\n private updateRowSuccess(row: any, index: number): void {\n this.successCount++;\n this.pendingCount--;\n this.updateRowStatus(row, EnumProcessamentoStatus.SUCCESS);\n this.processado.emit(row);\n this.updateProgressBar();\n }\n\n private updateRowError(row: any, index: number, message: string): void {\n this.failedCount++;\n this.pendingCount--;\n this.updateRowStatus(row, EnumProcessamentoStatus.FAILED, message);\n this.processado.emit(row);\n this.updateProgressBar();\n }\n\n private syncProcessRecord(index: number): void {\n if (this.pendingCount < 1) {\n this.concluido.emit('ok');\n return;\n }\n this.updateRowStatus(this.gridData[index], EnumProcessamentoStatus.PROCESSING);\n const record = this.params.registros[index];\n const row = this.gridData.find(item => item.registro === record);\n\n if (record.apiEnvio) {\n record.apiEnvio(record.objEnvio)\n .subscribe(\n () => {\n this.updateRowSuccess(row, index);\n this.syncProcessRecord(index + 1);\n },\n (error: any) => {\n this.updateRowError(row, index, this.getErrorMessage(error));\n this.syncProcessRecord(index + 1);\n }\n );\n } else {\n this.failedCount = this.pendingCount;\n this.pendingCount = 0;\n this.updateRowStatus(row,\n EnumProcessamentoStatus.FAILED,\n this.translate.instant('tmsx_fnd.tmsx_angular_components.painel_processamento_api_error')\n );\n this.updateProgressBar();\n this.concluido.emit('erro');\n }\n }\n\n async processAllRecordsWithPLimit() {\n const pLimit = require('p-limit');\n const limit = pLimit(this.params.quantidadeChamadasSimultaneas);\n const promises = this.params.registros.map((record, index) => {\n return limit(async () => {\n const row = this.gridData.find(item => item.registro === record);\n this.updateRowStatus(row, EnumProcessamentoStatus.PROCESSING);\n try {\n const result = await record.apiEnvio(record.objEnvio).toPromise();\n this.updateRowSuccess(row, index);\n return { success: true, record, result };\n } catch (error) {\n this.updateRowError(row, index, this.getErrorMessage(error));\n return { success: false, record, error };\n }\n });\n });\n const results = await Promise.all(promises);\n this.concluido.emit(results);\n return results;\n }\n\n private updateProgressBar(): void {\n const successWidth = (this.successCount / this.totalRecords) * 100;\n const failedWidth = (this.failedCount / this.totalRecords) * 100;\n const pendingWidth = (this.pendingCount / this.totalRecords) * 100;\n this.processingProgress = `${(successWidth + failedWidth)}%`;\n\n this.successProgress = `${successWidth}%`;\n this.failedProgress = `${failedWidth}%`;\n this.pendingProgress = `${pendingWidth}%`;\n }\n\n public updateRowStatus(row: any, status: EnumProcessamentoStatus, message?: string) {\n row.status = status;\n if (message) {\n row.message = message;\n }\n this.sortGridData();\n }\n\n private sortGridData() {\n this.gridData.sort((a: any, b: any) => {\n const statusOrder = {\n [EnumProcessamentoStatus.FAILED]: 1,\n [EnumProcessamentoStatus.PROCESSING]: 2,\n [EnumProcessamentoStatus.SUCCESS]: 3,\n [EnumProcessamentoStatus.PENDING]: 4\n };\n if (this.sortField === 'status') {\n return (statusOrder[a.status as EnumProcessamentoStatus] - statusOrder[b.status as EnumProcessamentoStatus]) * this.sortOrder;\n } else {\n const valA = a[this.sortField] || '';\n const valB = b[this.sortField] || '';\n return valA.localeCompare(valB) * this.sortOrder;\n }\n });\n }\n\n public getData(rowData: any, field: string) {\n if (field === 'status') {\n let text = this.translate.instant(EnumProcessamentoStatusTranslationMap[rowData.status as EnumProcessamentoStatus]);\n if (rowData.message) {\n text += `: ${rowData.message}`;\n }\n return text;\n }\n return rowData[field];\n }\n\n public getClassStatus(rowData: any, field: string) {\n if (field !== 'status') {\n return '';\n }\n return `status ${rowData[field].toLowerCase()}`;\n }\n\n public getGridColumn(): Column[] {\n return [\n {\n field: 'label',\n header: this.translate.instant('tmsx_fnd.tmsx_angular_components.registro'),\n style: { width: '50%' },\n attributes: [],\n type: EnumColumnFieldType.STRING\n },\n {\n field: 'status',\n header: this.translate.instant('tmsx_fnd.tmsx_angular_components.status'),\n style: { width: '50%' },\n attributes: [],\n type: EnumColumnFieldType.STRING\n },\n ];\n }\n}\n","\n\nimport { NgModule } from '@angular/core';\nimport { ButtonModule, LocaleModule, TooltipModule, TableModule } from '@seniorsistemas/angular-components';\n\nimport { TranslateModule } from '@ngx-translate/core';\nimport { PainelProcessamentoComponent } from './painel-processamento.component';\nimport { TableModule as PrimeTableModule } from 'primeng/table';\nimport { CommonModule } from '@angular/common';\nimport { PanelModule } from 'primeng/panel';\n\n\n@NgModule({\n imports: [\n LocaleModule.forChild(),\n TranslateModule.forChild(),\n TooltipModule,\n PrimeTableModule,\n TableModule,\n ButtonModule,\n CommonModule,\n PanelModule,\n\n ],\n declarations: [\n PainelProcessamentoComponent\n ],\n providers: [],\n exports: [\n PainelProcessamentoComponent\n ],\n})\nexport class PainelProcessamentoModule {}\n","import { Injectable } from '@angular/core';\nimport { TranslateService } from '@ngx-translate/core';\nimport { FieldType, FormField, LocalizedDatePipe, Option } from '@seniorsistemas/angular-components';\n\n@Injectable({\n providedIn: 'root'\n})\nexport class UtilsService {\n\n constructor(\n private readonly translate: TranslateService,\n private readonly dataPipe: LocalizedDatePipe\n ) { }\n\n public getAuditCreatedBy(createdBy: string, createdDate: Date): string {\n if (!createdBy || !createdDate) {\n return '';\n }\n let date = '';\n this.dataPipe.transform(createdDate).subscribe((item: any) => date = item.split(' '));\n return this.translate.instant('tmsx_fnd.tmsx_angular_components.audit_created_by', {nome: createdBy, data: date[0], hora: date[1]});\n }\n\n public getAuditModifiedBy(modifiedBy: string, modifiedDate: Date): string {\n if (!modifiedBy || !modifiedDate) {\n return '';\n }\n let date = '';\n this.dataPipe.transform(modifiedDate).subscribe((item: any) => date = item.split(' '));\n return this.translate.instant('tmsx_fnd.tmsx_angular_components.audit_modified_by', {nome: modifiedBy, data: date[0], hora: date[1]});\n }\n\n public getAuditInactivatedBy(inactivatedBy: string, inactivatedDate: Date): string {\n if (!inactivatedBy || !inactivatedDate) {\n return '';\n }\n let date = '';\n this.dataPipe.transform(inactivatedDate).subscribe((item: any) => date = item.split(' '));\n return this.translate.instant('tmsx_fnd.tmsx_angular_components.audit_inactivated_by', {nome: inactivatedBy, data: date[0], hora: date[1]});\n }\n\n /* usage: [innerHTML]=\"getProp(rowData, 'nome')\" */\n public getProp(obj: any, path: any, type?: string): string {\n let value = path.split('.').reduce((result: any, prop: any) => (result[prop] === undefined ? '' : result[prop]), obj);\n if (value || value === 0) {\n if (type) {\n value = this.formatType(value, type);\n }\n return `<span>${value}</span>`;\n }\n return `<span class=\"empty-grid\">${this.translate.instant('tmsx_fnd.tmsx_angular_components.list_grid_empty_field')}</span>`;\n }\n\n public formatType(value: any, type: string): string {\n if (value) {\n if (type === 'date') {\n let date = '';\n this.dataPipe.transform(value).subscribe((item: any) => date = item.split(' '));\n return date[0];\n }\n if (type === 'datetime') {\n let date = '';\n this.dataPipe.transform(value).subscribe((item: any) => date = item);\n return date;\n }\n if (type === 'decimal') {\n if (typeof value === 'string') {\n value = Number(value);\n }\n return value.toLocaleString('pt-BR', { minimumFractionDigits: 2, maximumFractionDigits: 2 });\n }\n if (type === 'currency') {\n return value.toLocaleString('pt-BR', { style: 'currency', currency: 'BRL' });\n }\n if (type === 'cep') {\n return value.replace(/^(\\d{2})(\\d{3})(\\d{3})/, '$1.$2-$3');\n }\n }\n return value;\n }\n\n /* usage: [ngClass]=\"emptyGridClass(value)\" */\n public emptyGridClass(value: string): string {\n if (!value || value === this.translate.instant('tmsx_fnd.replicacao.list_grid_empty_field')) {\n return 'empty-grid';\n }\n return '';\n }\n\n public infoContent(entity?: any) {\n let text = '';\n if (!entity) {\n return this.translate.instant(\"tmsx_fnd.tmsx_angular_components.condicao_valor_lookup_condicional_no_audit\");\n }\n text += this.getAuditCreatedBy(entity.createdBy, entity.createdDate);\n if (text) {\n text += '\\n';\n }\n text += this.getAuditModifiedBy(entity.lastModifiedBy, entity.lastModifiedDate);\n return text;\n }\n\n public formatCurrency(value: number): string {\n return value.toLocaleString('pt-BR', { style: 'currency', currency: 'BRL' });\n }\n\n public getAtivoTokenLabel(formField: FormField, value: any, translate: TranslateService) {\n const { name, type, label } = formField as any;\n if (type === FieldType.Radio) {\n const labelValue = value\n ? translate.instant('tmsx_fnd.tmsx_angular_components.situacao_ativo_true')\n : translate.instant('tmsx_fnd.tmsx_angular_components.situacao_ativo_false');\n return { id: name, label: `${label}: ${labelValue}` };\n }\n return this.createFilterTokens(formField, value, translate);\n }\n\n public getUtilsProp(obj: any, path: any) {\n return path.split('.').reduce((result: any, prop: any) => (result[prop] === undefined ? '' : result[prop]), obj);\n }\n\n public createFilterTokens(formField: FormField, value: any, translate: TranslateService) {\n const { name, type, label, searchFields, options } = formField as any;\n const labelValue = this.getLabelValueByType(type, value, searchFields, options, translate);\n return { id: name, label: `${label}: ${labelValue}` };\n }\n\n private getLabelValueByType(\n type: FieldType,\n value: any,\n searchFields: FormField[],\n options: Option[],\n translate: TranslateService\n ): string {\n switch (type) {\n case FieldType.Date:\n return this.getDateLabel(value);\n case FieldType.Time:\n return this.getTimeFromDate(value);\n case FieldType.LocalDateTime:\n case FieldType.DateTime:\n return this.getDateTimeFromDate(value);\n case FieldType.Lookup:\n return this.getLookupLabel(value, searchFields);\n case FieldType.Enum:\n return this.getEnumLabel(value, options);\n case FieldType.Boolean:\n return this.getBooleanLabel(value, translate);\n default:\n return value;\n }\n }\n\n private getDateLabel(value: any): string {\n const dateObj = value instanceof Date ? value : new Date(value);\n return !isNaN(dateObj.getTime()) ? dateObj.toLocaleDateString('pt-BR') : value;\n }\n\n private getLookupLabel(value: any, searchFields: FormField[]): string {\n return searchFields.map((field: FormField) => this.getUtilsProp(value, field.name)).join(' - ');\n }\n\n private getEnumLabel(value: any, options: Option[]): string {\n const option = options.find((opt: Option) => opt.value === value);\n return option ? option.label : value;\n }\n\n private getBooleanLabel(value: any, translate: TranslateService): string {\n return value\n ? translate.instant('tmsx_fnd.tmsx_angular_components.list_grid_boolean_true')\n : translate.instant('tmsx_fnd.tmsx_angular_components.list_grid_boolean_false');\n }\n\n public getTimeFromDate(value: any) {\n let dateObj: Date;\n if (typeof value === 'string' && /^\\d{2}:\\d{2}(:\\d{2})?$/.test(value)) {\n const [h, m, s = '00'] = value.split(':');\n dateObj = new Date();\n dateObj.setHours(+h, +m, +s, 0);\n } else {\n dateObj = value instanceof Date ? value : new Date(value);\n }\n if (!isNaN(dateObj.getTime())) {\n return dateObj.toLocaleTimeString('pt-BR', {\n hour: '2-digit',\n minute: '2-digit',\n second: '2-digit',\n hour12: false\n }); // HH:mm:ss\n }\n return value;\n }\n\n public getDateTimeFromDate(value: any) {\n const dateObj = value instanceof Date ? value : new Date(value);\n if (!isNaN(dateObj.getTime())) {\n const datePart = dateObj.toLocaleDateString('pt-BR'); // DD/MM/AAAA\n const timePart = dateObj.toLocaleTimeString('pt-BR', {\n hour: '2-digit',\n minute: '2-digit',\n second: '2-digit',\n hour12: false\n }); // HH:mm:ss\n return `${datePart} ${timePart}`;\n }\n return value;\n }\n}\n","import { ChangeDetectorRef, Component, Injectable, Input, OnDestroy,\n OnInit, Output, ViewChild, EventEmitter, OnChanges, SimpleChanges } from '@angular/core';\nimport { LazyLoadEvent, MenuItem, SortMeta } from 'primeng/api';\nimport { Table } from 'primeng/table';\nimport { Subject } from 'rxjs';\nimport { GridConfig, FrozenColumn } from './grid.interface';\nimport { TranslateService } from '@ngx-translate/core';\n\nimport { HotkeysService, Hotkey } from 'angular2-hotkeys';\nimport { UtilsService } from '../../utils/services/utils.service';\n\n@Injectable({\n providedIn: 'root'\n})\n@Component({\n selector: 'tmsx-grid-editable-nested',\n templateUrl: './grid-editable-nested.component.html',\n styleUrls: ['./grid-editable-nested.component.scss']\n})\nexport class GridEditableNestedComponent implements OnDestroy, OnInit, OnChanges {\n @Input() public config!: GridConfig;\n @Input() nestedFunction!: (listParams: ListParams, rowData: any) => Promise<void>;\n @Output() openDetails = new EventEmitter<any>();\n @Output() paging = new EventEmitter<any>();\n @Output() delete = new EventEmitter<any>();\n @Output() save = new EventEmitter<any>();\n @Output() add = new EventEmitter<any>();\n\n @ViewChild(\"table\", { static: false }) public table!: Table;\n public clonedData: { [s: string]: any } = {};\n public gridLoading = true;\n public editing = false;\n public lazy = true;\n public deleteEnabled = false;\n public editEnabled = false;\n public addEnabled = false;\n public detailsEnabled = false;\n public calendarTooltipText = '';\n public currentListParams: ListParams = { page: 0, size: 5, sort: [] };\n\n public gridData: any[] = [];\n public gridColumns: any[] = [];\n public gridTotalRecords = 0;\n public selected: any[] = [];\n\n public nestedGridLoading = false;\n public frozenPosition = 'left';\n public frozenWidth = '200px';\n public frozenColumns: FrozenColumn[] = [];\n\n private readonly ngUnsubscribe = new Subject();\n\n constructor(\n private readonly changeDetectorRef: ChangeDetectorRef,\n private readonly translate: TranslateService,\n private readonly utils: UtilsService,\n private readonly hotkeysService: HotkeysService,\n ) {\n this.calendarTooltipText = this.translate.instant('tmsx_fnd.tmsx_angular_components.grid_editable_nested_calendar_required');\n }\n\n ngOnInit(): void {\n this.setGridData();\n this.setHotkeys();\n }\n\n ngOnChanges(changes: SimpleChanges): void {\n if (changes.config) {\n this.setGridData();\n }\n }\n\n public formatData(column: any, value: string) {\n return value;\n }\n\n private setGridData() {\n if (!this.config) {\n return;\n }\n const { data, size, columns, frozenPosition, frozenColumns, editing, lazy,\n deleteActionsEnabled, editEnabled, addEnabled, editActionsEnabled } = this.config;\n\n this.gridData = data ?? [];\n this.gridTotalRecords = size ?? 0;\n this.gridColumns = columns ?? [];\n this.frozenPosition = frozenPosition ?? 'left';\n this.frozenColumns = frozenColumns ?? [];\n this.frozenWidth = this.calculateFrozenWidth(this.frozenColumns);\n\n this.editing = !!editing;\n this.lazy = !!lazy;\n this.deleteEnabled = !!deleteActionsEnabled;\n this.editEnabled = !!editEnabled;\n this.addEnabled = !!addEnabled;\n this.detailsEnabled = !!editActionsEnabled;\n\n this.changeDetectorRef.detectChanges();\n this.nestedGridLoading = false;\n this.gridLoading = false;\n }\n\n private calculateFrozenWidth(frozenColumns: FrozenColumn[]): string {\n const gutter = 120;\n if (!(frozenColumns?.length)) {\n return '120px';\n }\n const totalWidth = frozenColumns.reduce((sum, col) => sum + gutter + (parseInt(col.width, 10) || 0), 0);\n return `${totalWidth}px`;\n }\n\n\n public getActions(data: any): MenuItem[] {\n return [\n {\n id: 'edit',\n label: this.translate.instant('tmsx_fnd.tmsx_angular_components.edit'),\n disabled: !this.detailsEnabled,\n command: () => {\n this.openRowDetails(data.id);\n },\n },\n { separator: true },\n {\n id: 'delete',\n label: this.translate.instant('tmsx_fnd.tmsx_angular_components.delete'),\n disabled: !this.deleteEnabled,\n command: () => {\n this.onDelete(data.id);\n },\n },\n ];\n }\n\n public updateGridData(event: LazyLoadEvent) {\n const size = event.rows ? event.rows : 10;\n const page = event.first ? event.first / size : 0;\n this.gridLoading = true;\n\n if (this.clonedData && Object.keys(this.clonedData).length) {\n this.clonedData = {};\n this.table.editingRowKeys = {};\n }\n\n this.paging.emit({ page, size });\n }\n\n public async updateNestedGridData(event: LazyLoadEvent, rowData: any) {\n const size = event.rows ? event.rows : 10;\n const page = event.first ? event.first / size : 0;\n const sort = event.multiSortMeta || [];\n\n rowData.nestedGridLoading = true;\n await this.nestedFunction({ page, size, sort }, rowData);\n }\n\n onTab(event: KeyboardEvent) {\n if (event.key !== 'Tab') {\n return;\n }\n\n event.preventDefault();\n\n const focusables = Array.from(\n document.querySelectorAll<HTMLElement>(\n 'p-cellEditor input, p-cellEditor textarea, p-cellEditor [tabindex=\"0\"]'\n )\n ).filter(el => el.offsetParent !== null);\n\n const currentIndex = focusables.indexOf(event.target as HTMLElement);\n\n let next: HTMLElement | undefined;\n\n if (event.shiftKey) {\n next = focusables[currentIndex - 1] || focusables[focusables.length - 1];\n } else {\n next = focusables[currentIndex + 1] || focusables[0];\n }\n\n if (next) {\n next.focus();\n }\n }\n\n\n public getRowIndex() {\n const page = this.currentListParams.page || 0;\n const size = this.currentListParams.size || 0;\n return page * size;\n }\n\n public getPageSize() {\n return this.currentListParams.size ?? 0;\n }\n\n public openRowDetails(id: string) {\n this.openDetails.emit(id);\n }\n\n public onDelete(id: string) {\n this.delete.emit(id);\n }\n\n public onAdd() {\n this.add.emit();\n }\n\n public ngOnDestroy() {\n this.ngUnsubscribe.next();\n this.ngUnsubscribe.complete();\n }\n\n public onEditSave() {\n this.saveAllRows();\n }\n\n public onEditCancel() {\n this.gridData.forEach((data) => {\n if (this.clonedData[data.id]) {\n const index = this.gridData.findIndex((row) => row.id === data.id);\n this.gridData[index] = this.clonedData[data.id];\n delete this.clonedData[data.id];\n }\n this.table.cancelRowEdit(data);\n });\n this.editing = false;\n }\n\n public initAllRowsEdit() {\n this.gridData.forEach((data) => {\n this.editing = true;\n this.table.initRowEdit(data);\n this.clonedData[data.id] = { ...data };\n });\n }\n\n public saveAllRows() {\n this.gridData.forEach((data) => {\n if (this.clonedData[data.id]) {\n delete this.clonedData[data.id];\n }\n this.table.cancelRowEdit(data);\n });\n this.editing = false;\n this.save.emit(this.gridData);\n }\n\n public formatRowData(field: any) {\n return field;\n }\n\n public filterOptions(event: any) {\n return event;\n }\n\n public getSpanProp(obj: any, path: any, type?: string): string {\n type = type?.toLowerCase();\n const value = this.utils.getProp(obj, path, type);\n if (value === '<span>0</span>' && type === 'decimal') {\n return '<span>0,00</span>';\n }\n if (!obj.tiposDados) {\n return value;\n }\n if ('MONETARIO' === obj.tiposDados[path]) {\n return 'R$ ' + value;\n }\n if ('PERCENTUAL' === obj.tiposDados[path]) {\n return value + ' %';\n }\n return value;\n }\n\n public setHotkeys() {\n this.hotkeysService.add(\n new Hotkey(\n 'alt+shift+n',\n () => {\n this.onAdd();\n return false;\n },\n ['INPUT', 'SELECT', 'TEXTAREA']\n )\n );\n }\n}\n\nexport interface ListParams {\n page?: number;\n size?: number;\n sort?: SortMeta[];\n filterQuery?: string;\n displayFields?: string[];\n}\n\nexport interface BodyParams {\n offset?: number;\n size?: number;\n orderBy?: string;\n filter?: string;\n displayfields?: string;\n}\n","import { NgModule } from '@angular/core';\n\nimport { TranslateModule } from '@ngx-translate/core';\nimport { GridEditableNestedComponent } from './grid-editable-nested.component';\nimport { TableModule as PrimeTableModule } from 'primeng/table';\n\nimport {\n ButtonModule,\n LoadingStateModule,\n LocaleModule,\n NumberInputModule,\n TableModule,\n TooltipModule,\n BreadcrumbModule,\n ControlErrorsModule,\n CustomFieldsModule,\n DynamicFormModule,\n EmptyStateModule,\n TokenListModule,\n} from '@seniorsistemas/angular-components';\n\nimport { ToastModule } from 'primeng/toast';\nimport { PanelModule } from 'primeng/panel';\nimport { FormsModule, ReactiveFormsModule } from '@angular/forms';\nimport { CommonModule } from '@angular/common';\nimport { InputTextModule } from 'primeng/inputtext';\nimport { ConfirmDialogModule } from 'primeng/confirmdialog';\nimport { CalendarModule } from 'primeng/calendar';\nimport { DropdownModule } from 'primeng/dropdown';\nimport { SharedModule } from 'primeng/api';\nimport { TooltipModule as PrimeTooltipModule } from 'primeng/tooltip';\nimport { AutoCompleteModule } from 'primeng/autocomplete';\nimport { CheckboxModule } from 'primeng/checkbox';\n\n@NgModule({\n imports: [\n CommonModule,\n LocaleModule.forChild(),\n TranslateModule.forChild(),\n ButtonModule,\n TableModule,\n TooltipModule,\n LoadingStateModule,\n NumberInputModule,\n BreadcrumbModule,\n ControlErrorsModule,\n CustomFieldsModule,\n DynamicFormModule,\n EmptyStateModule,\n TokenListModule,\n\n // PrimeNG modules\n ToastModule,\n PrimeTableModule,\n PrimeTooltipModule,\n PanelModule,\n InputTextModule,\n ConfirmDialogModule,\n CalendarModule,\n DropdownModule,\n SharedModule,\n AutoCompleteModule,\n CheckboxModule,\n\n // Angular modules\n FormsModule,\n ReactiveFormsModule\n ],\n declarations: [\n GridEditableNestedComponent,\n ],\n providers: [],\n exports: [\n GridEditableNestedComponent,\n ],\n})\nexport class GridEditableNestedModule {}\n","import {\n ModuleWithProviders,\n NgModule,\n InjectionToken\n} from \"@angular/core\";\n\nexport const HostProjectConfigsInjectionToken = new InjectionToken<HostProjectConfigs>(\"hostProjectConfigs\");\n\nexport interface HostProjectConfigs {\n domain: string;\n service: string;\n}\n\n@NgModule({})\nexport class TmsxAngularComponentsModule {\n static forRoot(config: HostProjectConfigs): ModuleWithProviders<TmsxAngularComponentsModule> {\n return {\n ngModule: TmsxAngularComponentsModule,\n providers: [\n {\n provide: HostProjectConfigsInjectionToken,\n useValue: config\n }\n ]\n };\n }\n}\n","export const fallback: any = {\n \"tmsx_fnd.tmsx_angular_components.add\": \"Adicionar\",\n \"tmsx_fnd.tmsx_angular_components.audit_created_by\": \"Criado por {{nome}} em {{data}} às {{hora}}.\",\n \"tmsx_fnd.tmsx_angular_components.audit_modified_by\": \"Modificado por {{nome}} em {{data}} às {{hora}}.\",\n \"tmsx_fnd.tmsx_angular_components.audit_inactivated_by\": \"Inativado por {{nome}} em {{data}} às {{hora}}.\",\n \"tmsx_fnd.tmsx_angular_components.condicao_valor_lookup_condicional_no_audit\": \"Sem informações de auditoria\",\n \"tmsx_fnd.tmsx_angular_components.delete\": \"Excluir\",\n \"tmsx_fnd.tmsx_angular_components.edit\": \"Editar\",\n \"tmsx_fnd.tmsx_angular_components.error_forbidden_description\": \"Você não tem permissão para acessar este recurso.\",\n \"tmsx_fnd.tmsx_angular_components.error_forbidden_title\": \"Acesso Negado\",\n \"tmsx_fnd.tmsx_angular_components.error_not_found_description\": \"O recurso solicitado não foi encontrado.\",\n \"tmsx_fnd.tmsx_angular_components.error_not_found_title\": \"Não Encontrado\",\n \"tmsx_fnd.tmsx_angular_components.error_unauthorized_description\": \"Você não está autorizado a acessar este recurso.\",\n \"tmsx_fnd.tmsx_angular_components.error_unauthorized_title\": \"Não Autorizado\",\n \"tmsx_fnd.tmsx_angular_components.grid_aninhada\": \"Grid Aninhada\",\n \"tmsx_fnd.tmsx_angular_components.grid_editable_nested_calendar_required\": \"É necessário informar a data\",\n \"tmsx_fnd.tmsx_angular_components.grid_editable_nested_cancelar\": \"Cancelar\",\n \"tmsx_fnd.tmsx_angular_components.grid_editable_nested_editar\": \"Editar valores\",\n \"tmsx_fnd.tmsx_angular_components.grid_editable_nested_paging\": \"registros encontrados\",\n \"tmsx_fnd.tmsx_angular_components.grid_editable_nested_salvar\": \"Salvar alterações\",\n \"tmsx_fnd.tmsx_angular_components.list_grid_boolean_false\": \"Não\",\n \"tmsx_fnd.tmsx_angular_components.list_grid_boolean_true\": \"Sim\",\n \"tmsx_fnd.tmsx_angular_components.list_grid_empty_field\": \"Não informado\",\n \"tmsx_fnd.tmsx_angular_components.painel_processamento\": \"Painel de Processamento\",\n \"tmsx_fnd.tmsx_angular_components.painel_processamento_api_error\": \"API de envio não definida\",\n \"tmsx_fnd.tmsx_angular_components.painel_processamento_status_failed\": \"Ocorreu um erro\",\n \"tmsx_fnd.tmsx_angular_components.painel_processamento_status_pending\": \"Pendente\",\n \"tmsx_fnd.tmsx_angular_components.painel_processamento_status_processing\": \"Processando\",\n \"tmsx_fnd.tmsx_angular_components.painel_processamento_status_success\": \"Finalizado com sucesso\",\n \"tmsx_fnd.tmsx_angular_components.registro\": \"Registro\",\n \"tmsx_fnd.tmsx_angular_components.showcase_painel_processamento_title\": \"Demonstração do Painel de Processamento\",\n \"tmsx_fnd.tmsx_angular_components.showcase_table_title\": \"Demonstração da Tabela\",\n \"tmsx_fnd.tmsx_angular_components.showcase_title\": \"Showcase\",\n \"tmsx_fnd.tmsx_angular_components.situacao_ativo_false\": \"Inativo\",\n \"tmsx_fnd.tmsx_angular_components.situacao_ativo_true\": \"Ativo\",\n \"tmsx_fnd.tmsx_angular_components.status\": \"Situação\",\n \"tmsx_fnd.tmsx_angular_components.total_records\": \"{{ value }} registros encontrados\"\n};\n"]}
1
+ {"version":3,"sources":["../../node_modules/tslib/tslib.es6.js","ng://@seniorsistemas/tmsx-angular-components/components/painel-processamento/processamento.ts","ng://@seniorsistemas/tmsx-angular-components/components/painel-processamento/painel-processamento.component.ts","ng://@seniorsistemas/tmsx-angular-components/components/painel-processamento/painel-processamento.module.ts","ng://@seniorsistemas/tmsx-angular-components/utils/services/utils.service.ts","ng://@seniorsistemas/tmsx-angular-components/components/grid-editable-nested/grid-editable-nested.component.ts","ng://@seniorsistemas/tmsx-angular-components/components/grid-editable-nested/grid-editable-nested.module.ts","ng://@seniorsistemas/tmsx-angular-components/tmsx-angular-components.module.ts","ng://@seniorsistemas/tmsx-angular-components/locale/fallback.ts"],"names":["EnumProcessamentoStatus","__assign","Object","assign","t","s","i","n","arguments","length","p","prototype","hasOwnProperty","call","apply","this","__decorate","decorators","target","key","desc","d","c","r","getOwnPropertyDescriptor","Reflect","decorate","defineProperty","__awaiter","thisArg","_arguments","P","generator","Promise","resolve","reject","fulfilled","value","step","next","e","rejected","result","done","then","__generator","body","f","y","g","_","label","sent","trys","ops","verb","throw","return","Symbol","iterator","v","op","TypeError","pop","push","__read","o","m","ar","error","EnumProcessamentoStatusTranslationMap","_a","SUCCESS","FAILED","PENDING","PROCESSING","PainelProcessamentoComponent","translate","processado","EventEmitter","concluido","totalRecords","successCount","failedCount","pendingCount","successProgress","failedProgress","pendingProgress","processingProgress","sortField","sortOrder","ngOnInit","initPanel","gridColumns","getGridColumn","initGrid","initProgressBar","params","registros","quantidadeChamadasSimultaneas","processAllRecordsWithPLimit","syncProcessRecord","gridData","map","registro","status","descricao","getErrorMessage","message","String","_b","genericErrorMsg","_c","instant","PainelProcessamentoComponent_1","GENERIC_ERR_KEY","updateRowSuccess","row","index","updateRowStatus","emit","updateProgressBar","updateRowError","_this","record","find","item","apiEnvio","objEnvio","subscribe","limit","require$$0","promises","toPromise","success","error_1","all","results","successWidth","failedWidth","pendingWidth","processedWidth","toFixed","sortGridData","sort","a","b","statusOrder","valA","valB","localeCompare","getData","rowData","field","text","getClassStatus","toLowerCase","header","style","width","attributes","type","EnumColumnFieldType","STRING","TranslateService","Input","Output","Injectable","providedIn","Component","selector","template","PainelProcessamentoModule","NgModule","imports","LocaleModule","forChild","TranslateModule","TooltipModule","PrimeTableModule","TableModule","ButtonModule","CommonModule","PanelModule","declarations","providers","exports","UtilsService","dataPipe","getAuditCreatedBy","createdBy","createdDate","date","transform","split","nome","data","hora","getAuditModifiedBy","modifiedBy","modifiedDate","getAuditInactivatedBy","inactivatedBy","inactivatedDate","getProp","obj","path","reduce","prop","undefined","formatType","date_1","date_2","Number","toLocaleString","minimumFractionDigits","maximumFractionDigits","currency","replace","emptyGridClass","infoContent","entity","lastModifiedBy","lastModifiedDate","formatCurrency","getAtivoTokenLabel","formField","name","FieldType","Radio","id","createFilterTokens","getUtilsProp","searchFields","options","getLabelValueByType","Date","getDateLabel","Time","getTimeFromDate","LocalDateTime","DateTime","getDateTimeFromDate","Lookup","getLookupLabel","Enum","getEnumLabel","Boolean","getBooleanLabel","dateObj","isNaN","getTime","toLocaleDateString","join","option","opt","test","h","setHours","toLocaleTimeString","hour","minute","second","hour12","LocalizedDatePipe","GridEditableNestedComponent","changeDetectorRef","utils","hotkeysService","openDetails","paging","delete","save","add","clonedData","gridLoading","editing","lazy","deleteEnabled","editEnabled","addEnabled","detailsEnabled","calendarTooltipText","currentListParams","page","size","gridTotalRecords","selected","nestedGridLoading","frozenPosition","frozenWidth","frozenColumns","ngUnsubscribe","Subject","setGridData","setHotkeys","ngOnChanges","changes","config","formatData","column","columns","deleteActionsEnabled","editActionsEnabled","calculateFrozenWidth","detectChanges","sum","col","parseInt","getActions","disabled","command","openRowDetails","separator","onDelete","updateGridData","event","rows","first","keys","table","editingRowKeys","updateNestedGridData","multiSortMeta","nestedFunction","onTab","preventDefault","focusables","Array","from","document","querySelectorAll","filter","el","offsetParent","currentIndex","indexOf","shiftKey","focus","getRowIndex","getPageSize","onAdd","ngOnDestroy","complete","onEditSave","saveAllRows","onEditCancel","forEach","findIndex","cancelRowEdit","initAllRowsEdit","initRowEdit","formatRowData","filterOptions","getSpanProp","tiposDados","Hotkey","ChangeDetectorRef","HotkeysService","ViewChild","static","GridEditableNestedModule","LoadingStateModule","NumberInputModule","BreadcrumbModule","ControlErrorsModule","CustomFieldsModule","DynamicFormModule","EmptyStateModule","TokenListModule","ToastModule","PrimeTooltipModule","InputTextModule","ConfirmDialogModule","CalendarModule","DropdownModule","SharedModule","AutoCompleteModule","CheckboxModule","FormsModule","ReactiveFormsModule","HostProjectConfigsInjectionToken","InjectionToken","TmsxAngularComponentsModule","forRoot","ngModule","TmsxAngularComponentsModule_1","provide","useValue","tmsx_fnd.tmsx_angular_components.add","tmsx_fnd.tmsx_angular_components.audit_created_by","tmsx_fnd.tmsx_angular_components.audit_modified_by","tmsx_fnd.tmsx_angular_components.audit_inactivated_by","tmsx_fnd.tmsx_angular_components.condicao_valor_lookup_condicional_no_audit","tmsx_fnd.tmsx_angular_components.delete","tmsx_fnd.tmsx_angular_components.edit","tmsx_fnd.tmsx_angular_components.error_forbidden_description","tmsx_fnd.tmsx_angular_components.error_forbidden_title","tmsx_fnd.tmsx_angular_components.error_not_found_description","tmsx_fnd.tmsx_angular_components.error_not_found_title","tmsx_fnd.tmsx_angular_components.error_unauthorized_description","tmsx_fnd.tmsx_angular_components.error_unauthorized_title","tmsx_fnd.tmsx_angular_components.grid_aninhada","tmsx_fnd.tmsx_angular_components.grid_editable_nested_calendar_required","tmsx_fnd.tmsx_angular_components.grid_editable_nested_cancelar","tmsx_fnd.tmsx_angular_components.grid_editable_nested_editar","tmsx_fnd.tmsx_angular_components.grid_editable_nested_paging","tmsx_fnd.tmsx_angular_components.grid_editable_nested_salvar","tmsx_fnd.tmsx_angular_components.list_grid_boolean_false","tmsx_fnd.tmsx_angular_components.list_grid_boolean_true","tmsx_fnd.tmsx_angular_components.list_grid_empty_field","tmsx_fnd.tmsx_angular_components.painel_processamento","tmsx_fnd.tmsx_angular_components.painel_processamento_api_error","tmsx_fnd.tmsx_angular_components.painel_processamento_status_failed","tmsx_fnd.tmsx_angular_components.painel_processamento_status_pending","tmsx_fnd.tmsx_angular_components.painel_processamento_status_processing","tmsx_fnd.tmsx_angular_components.painel_processamento_status_success","tmsx_fnd.tmsx_angular_components.registro","tmsx_fnd.tmsx_angular_components.showcase_painel_processamento_title","tmsx_fnd.tmsx_angular_components.showcase_table_title","tmsx_fnd.tmsx_angular_components.showcase_title","tmsx_fnd.tmsx_angular_components.situacao_ativo_false","tmsx_fnd.tmsx_angular_components.situacao_ativo_true","tmsx_fnd.tmsx_angular_components.status","tmsx_fnd.tmsx_angular_components.total_records"],"mappings":"q8CA6BO,MCRKA,EDQDC,EAAW,WAQlB,OAPAA,EAAWC,OAAOC,QAAU,SAAkBC,GAC1C,IAAK,IAAIC,EAAGC,EAAI,EAAGC,EAAIC,UAAUC,OAAQH,EAAIC,EAAGD,IAE5C,IAAK,IAAII,KADTL,EAAIG,UAAUF,GACOJ,OAAOS,UAAUC,eAAeC,KAAKR,EAAGK,KAAIN,EAAEM,GAAKL,EAAEK,IAE9E,OAAON,IAEKU,MAAMC,KAAMP,YAezB,SAASQ,EAAWC,EAAYC,EAAQC,EAAKC,GAChD,IAA2HC,EAAvHC,EAAId,UAAUC,OAAQc,EAAID,EAAI,EAAIJ,EAAkB,OAATE,EAAgBA,EAAOlB,OAAOsB,yBAAyBN,EAAQC,GAAOC,EACrH,GAAuB,iBAAZK,SAAoD,mBAArBA,QAAQC,SAAyBH,EAAIE,QAAQC,SAAST,EAAYC,EAAQC,EAAKC,QACpH,IAAK,IAAId,EAAIW,EAAWR,OAAS,EAAGH,GAAK,EAAGA,KAASe,EAAIJ,EAAWX,MAAIiB,GAAKD,EAAI,EAAID,EAAEE,GAAKD,EAAI,EAAID,EAAEH,EAAQC,EAAKI,GAAKF,EAAEH,EAAQC,KAASI,GAChJ,OAAOD,EAAI,GAAKC,GAAKrB,OAAOyB,eAAeT,EAAQC,EAAKI,GAAIA,EAWzD,SAASK,EAAUC,EAASC,EAAYC,EAAGC,GAE9C,OAAO,IAAKD,IAAMA,EAAIE,WAAU,SAAUC,EAASC,GAC/C,SAASC,EAAUC,GAAS,IAAMC,EAAKN,EAAUO,KAAKF,IAAW,MAAOG,GAAKL,EAAOK,IACpF,SAASC,EAASJ,GAAS,IAAMC,EAAKN,EAAiB,MAAEK,IAAW,MAAOG,GAAKL,EAAOK,IACvF,SAASF,EAAKI,GAJlB,IAAeL,EAIaK,EAAOC,KAAOT,EAAQQ,EAAOL,QAJ1CA,EAIyDK,EAAOL,MAJhDA,aAAiBN,EAAIM,EAAQ,IAAIN,GAAE,SAAUG,GAAWA,EAAQG,OAITO,KAAKR,EAAWK,GAClGH,GAAMN,EAAYA,EAAUlB,MAAMe,EAASC,GAAc,KAAKS,WAI/D,SAASM,EAAYhB,EAASiB,GACjC,IAAsGC,EAAGC,EAAG5C,EAAG6C,EAA3GC,EAAI,CAAEC,MAAO,EAAGC,KAAM,WAAa,GAAW,EAAPhD,EAAE,GAAQ,MAAMA,EAAE,GAAI,OAAOA,EAAE,IAAOiD,KAAM,GAAIC,IAAK,IAChG,OAAOL,EAAI,CAAEV,KAAMgB,EAAK,GAAIC,MAASD,EAAK,GAAIE,OAAUF,EAAK,IAAwB,mBAAXG,SAA0BT,EAAES,OAAOC,UAAY,WAAa,OAAO5C,OAAUkC,EACvJ,SAASM,EAAKhD,GAAK,OAAO,SAAUqD,GAAK,OACzC,SAAcC,GACV,GAAId,EAAG,MAAM,IAAIe,UAAU,mCAC3B,KAAOZ,GAAG,IACN,GAAIH,EAAI,EAAGC,IAAM5C,EAAY,EAARyD,EAAG,GAASb,EAAU,OAAIa,EAAG,GAAKb,EAAS,SAAO5C,EAAI4C,EAAU,SAAM5C,EAAES,KAAKmC,GAAI,GAAKA,EAAET,SAAWnC,EAAIA,EAAES,KAAKmC,EAAGa,EAAG,KAAKlB,KAAM,OAAOvC,EAE3J,OADI4C,EAAI,EAAG5C,IAAGyD,EAAK,CAAS,EAARA,EAAG,GAAQzD,EAAEiC,QACzBwB,EAAG,IACP,KAAK,EAAG,KAAK,EAAGzD,EAAIyD,EAAI,MACxB,KAAK,EAAc,OAAXX,EAAEC,QAAgB,CAAEd,MAAOwB,EAAG,GAAIlB,MAAM,GAChD,KAAK,EAAGO,EAAEC,QAASH,EAAIa,EAAG,GAAIA,EAAK,CAAC,GAAI,SACxC,KAAK,EAAGA,EAAKX,EAAEI,IAAIS,MAAOb,EAAEG,KAAKU,MAAO,SACxC,QACI,KAAM3D,EAAI8C,EAAEG,MAAMjD,EAAIA,EAAEK,OAAS,GAAKL,EAAEA,EAAEK,OAAS,KAAkB,IAAVoD,EAAG,IAAsB,IAAVA,EAAG,IAAW,CAAEX,EAAI,EAAG,SACjG,GAAc,IAAVW,EAAG,MAAczD,GAAMyD,EAAG,GAAKzD,EAAE,IAAMyD,EAAG,GAAKzD,EAAE,IAAM,CAAE8C,EAAEC,MAAQU,EAAG,GAAI,MAC9E,GAAc,IAAVA,EAAG,IAAYX,EAAEC,MAAQ/C,EAAE,GAAI,CAAE8C,EAAEC,MAAQ/C,EAAE,GAAIA,EAAIyD,EAAI,MAC7D,GAAIzD,GAAK8C,EAAEC,MAAQ/C,EAAE,GAAI,CAAE8C,EAAEC,MAAQ/C,EAAE,GAAI8C,EAAEI,IAAIU,KAAKH,GAAK,MACvDzD,EAAE,IAAI8C,EAAEI,IAAIS,MAChBb,EAAEG,KAAKU,MAAO,SAEtBF,EAAKf,EAAKjC,KAAKgB,EAASqB,GAC1B,MAAOV,GAAKqB,EAAK,CAAC,EAAGrB,GAAIQ,EAAI,EAAI,QAAWD,EAAI3C,EAAI,EACtD,GAAY,EAARyD,EAAG,GAAQ,MAAMA,EAAG,GAAI,MAAO,CAAExB,MAAOwB,EAAG,GAAKA,EAAG,QAAK,EAAQlB,MAAM,GArB9BL,CAAK,CAAC/B,EAAGqD,MA8CtD,SAASK,EAAOC,EAAG3D,GACtB,IAAI4D,EAAsB,mBAAXT,QAAyBQ,EAAER,OAAOC,UACjD,IAAKQ,EAAG,OAAOD,EACf,IAAmB3C,EAAYiB,EAA3BlC,EAAI6D,EAAEtD,KAAKqD,GAAOE,EAAK,GAC3B,IACI,WAAc,IAAN7D,GAAgBA,KAAM,MAAQgB,EAAIjB,EAAEiC,QAAQI,MAAMyB,EAAGJ,KAAKzC,EAAEc,OAExE,MAAOgC,GAAS7B,EAAI,CAAE6B,MAAOA,GACjC,QACQ,IACQ9C,IAAMA,EAAEoB,OAASwB,EAAI7D,EAAU,SAAI6D,EAAEtD,KAAKP,GAE1D,QAAkB,GAAIkC,EAAG,MAAMA,EAAE6B,OAE7B,OAAOD,GCvHX,SAAYpE,GACRA,EAAA,QAAA,UACAA,EAAA,OAAA,SACAA,EAAA,QAAA,UACAA,EAAA,WAAA,aAJJ,CAAYA,IAAAA,EAAuB,KAO5B,IAAMsE,IAAqCC,EAAA,IAC7CvE,EAAwBwE,SAAU,uEACnCD,EAACvE,EAAwByE,QAAS,sEAClCF,EAACvE,EAAwB0E,SAAU,uEACnCH,EAACvE,EAAwB2E,YAAa,0FCGtC,SAAAC,EACqBC,GAAA9D,KAAA8D,UAAAA,EAlBX9D,KAAA+D,WAAa,IAAIC,EAAAA,aACjBhE,KAAAiE,UAAY,IAAID,EAAAA,aAKnBhE,KAAAkE,aAAe,EACflE,KAAAmE,aAAe,EACfnE,KAAAoE,YAAc,EACdpE,KAAAqE,aAAe,EACfrE,KAAAsE,gBAAkB,KAClBtE,KAAAuE,eAAiB,KACjBvE,KAAAwE,gBAAkB,OAClBxE,KAAAyE,mBAAqB,KACrBzE,KAAA0E,UAAY,SACZ1E,KAAA2E,UAAY,iBApBVd,EA0BTA,EAAAjE,UAAAgF,SAAA,WACI5E,KAAK6E,aAGThB,EAAAjE,UAAAiF,UAAA,WACI7E,KAAK8E,YAAc9E,KAAK+E,gBACxB/E,KAAKgF,WACLhF,KAAKiF,mBAGTpB,EAAAjE,UAAAqF,gBAAA,WACIjF,KAAKsE,gBAAkB,KACvBtE,KAAKuE,eAAiB,KACtBvE,KAAKwE,gBAAkB,OACvBxE,KAAKyE,mBAAqB,KAC1BzE,KAAKkE,aAAelE,KAAKkF,OAAOC,UAAUzF,OAC1CM,KAAKqE,aAAerE,KAAKkE,aAErBlE,KAAKkF,OAAOE,8BAAgC,EAC5CpF,KAAKqF,8BAELrF,KAAKsF,kBAAkB,IAI/BzB,EAAAjE,UAAAoF,SAAA,WACIhF,KAAKuF,SAAW,GAChBvF,KAAKuF,SAAWvF,KAAKkF,OAAOC,UAAUK,KAAI,SAAAC,GAAY,MAAA,CAClDA,SAAQA,EACRC,OAAQzG,EAAwB0E,QAChCvB,MAAOqD,EAASE,eAIhB9B,EAAAjE,UAAAgG,gBAAR,SAAwBtC,WACpB,IACI,OAAKA,GAGW,QAAhBE,EAAIF,MAAAA,OAAK,EAALA,EAAOA,aAAK,IAAAE,OAAA,EAAAA,EAAEqC,SACPC,OAAOxC,EAAMA,MAAMuC,UAEZ,QAAlBE,EAAIzC,MAAAA,OAAK,EAALA,EAAOuC,eAAO,IAAAE,OAAA,EAAAA,EAAEF,SACTC,OAAOxC,EAAMuC,QAAQA,SAEzB7F,KAAKgG,gBARDhG,KAAKgG,gBASlB,MAAAC,GACE,OAAOjG,KAAKgG,kBAIpB7G,OAAAyB,eAAYiD,EAAAjE,UAAA,kBAAe,KAA3B,WACI,OAAOI,KAAK8D,UAAUoC,QAAQC,EAA6BC,kDAGvDvC,EAAAjE,UAAAyG,iBAAR,SAAyBC,EAAUC,GAC/BvG,KAAKmE,eACLnE,KAAKqE,eACLrE,KAAKwG,gBAAgBF,EAAKrH,EAAwBwE,SAClDzD,KAAK+D,WAAW0C,KAAKH,GACrBtG,KAAK0G,qBAGD7C,EAAAjE,UAAA+G,eAAR,SAAuBL,EAAUC,EAAeV,GAC5C7F,KAAKoE,cACLpE,KAAKqE,eACLrE,KAAKwG,gBAAgBF,EAAKrH,EAAwByE,OAAQmC,GAC1D7F,KAAK+D,WAAW0C,KAAKH,GACrBtG,KAAK0G,qBAGD7C,EAAAjE,UAAA0F,kBAAR,SAA0BiB,GAA1B,IAAAK,EAAA5G,KACI,GAAIA,KAAKqE,aAAe,EACpBrE,KAAKiE,UAAUwC,KAAK,UADxB,CAIAzG,KAAKwG,gBAAgBxG,KAAKuF,SAASgB,GAAQtH,EAAwB2E,YACnE,IAAMiD,EAAS7G,KAAKkF,OAAOC,UAAUoB,GAC/BD,EAAMtG,KAAKuF,SAASuB,MAAK,SAAAC,GAAQ,OAAAA,EAAKtB,WAAaoB,KAErDA,EAAOG,SACPH,EAAOG,SAASH,EAAOI,UACtBC,WACG,WACEN,EAAKP,iBAAiBC,EAAKC,GAC3BK,EAAKtB,kBAAkBiB,EAAQ,MAEjC,SAACjD,GACCsD,EAAKD,eAAeL,EAAKC,EAAOK,EAAKhB,gBAAgBtC,IACrDsD,EAAKtB,kBAAkBiB,EAAQ,OAIrCvG,KAAKoE,YAAcpE,KAAKqE,aACxBrE,KAAKqE,aAAe,EACpBrE,KAAKwG,gBAAgBF,EAChBrH,EAAwByE,OACzB1D,KAAK8D,UAAUoC,QAAQ,oEAE3BlG,KAAK0G,oBACL1G,KAAKiE,UAAUwC,KAAK,WAItB5C,EAAAjE,UAAAyF,4BAAN,sHAiBkB,OAfV8B,EADSC,EACMpH,KAAKkF,OAAOE,+BAC3BiC,EAAWrH,KAAKkF,OAAOC,UAAUK,KAAI,SAACqB,EAAQN,GAClD,OAAOY,GAAM,WAAA,OAAAtG,EAAA+F,OAAA,OAAA,GAAA,uEACLN,EAAMtG,KAAKuF,SAASuB,MAAK,SAAAC,GAAQ,OAAAA,EAAKtB,WAAaoB,KACzD7G,KAAKwG,gBAAgBF,EAAKrH,EAAwB2E,6BAEjC,6BAAA,CAAA,EAAMiD,EAAOG,SAASH,EAAOI,UAAUK,oBAEtD,OAFM3F,EAAS6B,EAAAnB,OACfrC,KAAKqG,iBAAiBC,EAAKC,GAC3B,CAAA,EAAO,CAAEgB,SAAS,EAAMV,OAAMA,EAAElF,OAAMA,WAGtC,kBADA3B,KAAK2G,eAAeL,EAAKC,EAAOvG,KAAK4F,gBAAgB4B,IACrD,CAAA,EAAO,CAAED,SAAS,EAAOV,OAAMA,EAAEvD,MAAKkE,kCAI5B,CAAA,EAAMtG,QAAQuG,IAAIJ,WAElC,OAFMK,EAAUlE,EAAAnB,OAChBrC,KAAKiE,UAAUwC,KAAKiB,GACpB,CAAA,EAAOA,WAGD7D,EAAAjE,UAAA8G,kBAAR,WACI,IAAMiB,EAAgB3H,KAAKmE,aAAenE,KAAKkE,aAAgB,IACzD0D,EAAe5H,KAAKoE,YAAcpE,KAAKkE,aAAgB,IACvD2D,EAAgB7H,KAAKqE,aAAerE,KAAKkE,aAAgB,IACzD4D,EAAiBH,EAAeC,EAEtC5H,KAAKyE,mBAAwBqD,EAAeC,QAAQ,GAAE,IACtD/H,KAAKsE,gBAAqBqD,EAAaI,QAAQ,GAAE,IACjD/H,KAAKuE,eAAoBqD,EAAYG,QAAQ,GAAE,IAC/C/H,KAAKwE,gBAAqBqD,EAAaE,QAAQ,GAAE,KAG9ClE,EAAAjE,UAAA4G,gBAAP,SAAuBF,EAAUZ,EAAiCG,GAC9DS,EAAIZ,OAASA,EACTG,IACAS,EAAIT,QAAUA,GAElB7F,KAAKgI,gBAGDnE,EAAAjE,UAAAoI,aAAR,WAAA,IAAApB,EAAA5G,KACIA,KAAKuF,SAAS0C,MAAK,SAACC,EAAQC,SAClBC,IAAW5E,EAAA,IACZvE,EAAwByE,QAAS,EAClCF,EAACvE,EAAwB2E,YAAa,EACtCJ,EAACvE,EAAwBwE,SAAU,EACnCD,EAACvE,EAAwB0E,SAAU,KAEvC,GAAuB,WAAnBiD,EAAKlC,UACL,OAAQ0D,EAAYF,EAAExC,QAAqC0C,EAAYD,EAAEzC,SAAsCkB,EAAKjC,UAEpH,IAAM0D,EAAOH,EAAEtB,EAAKlC,YAAc,GAC5B4D,EAAOH,EAAEvB,EAAKlC,YAAc,GAClC,OAAO2D,EAAKE,cAAcD,GAAQ1B,EAAKjC,cAK5Cd,EAAAjE,UAAA4I,QAAP,SAAeC,EAAcC,GACzB,GAAc,WAAVA,EAAoB,CACpB,IAAIC,EAAO3I,KAAK8D,UAAUoC,QAAQ3C,EAAsCkF,EAAQ/C,SAIhF,OAHI+C,EAAQ5C,UACR8C,GAAQ,KAAKF,EAAQ5C,SAElB8C,EAEX,OAAOF,EAAQC,IAGZ7E,EAAAjE,UAAAgJ,eAAP,SAAsBH,EAAcC,GAChC,MAAc,WAAVA,EACK,GAED,UAAUD,EAAQC,GAAOG,eAG9BhF,EAAAjE,UAAAmF,cAAP,WACI,MAAO,CACH,CACI2D,MAAO,QACPI,OAAQ9I,KAAK8D,UAAUoC,QAAQ,6CAC/B6C,MAAO,CAAEC,MAAO,OAChBC,WAAY,GACZC,KAAMC,EAAAA,oBAAoBC,QAE9B,CACIV,MAAO,SACPI,OAAQ9I,KAAK8D,UAAUoC,QAAQ,2CAC/B6C,MAAO,CAAEC,MAAO,OAChBC,WAAY,GACZC,KAAMC,EAAAA,oBAAoBC,UA5NdvF,EAAAuC,gBAAkB,+GAqBViD,EAAAA,qJAnBvBpJ,EAAA,CAARqJ,EAAAA,sCACSrJ,EAAA,CAATsJ,EAAAA,2CACStJ,EAAA,CAATsJ,EAAAA,0CANQ1F,EAA4BsC,EAAAlG,EAAA,CARxCuJ,EAAAA,WAAW,CACRC,WAAY,SAEfC,EAAAA,UAAU,CACTC,SAAU,4BACVC,SAAA,g8GAGW/F,mBCmBb,SAAAgG,KAAwC,OAA3BA,EAAyB5J,EAAA,CApBrC6J,EAAAA,SAAS,CACNC,QAAS,CACLC,EAAAA,aAAaC,WACbC,EAAAA,gBAAgBD,WAChBE,EAAAA,cACAC,EAAAA,YACAC,EAAAA,YACAC,EAAAA,aACAC,EAAAA,aACAC,EAAAA,aAGJC,aAAc,CACV5G,GAEJ6G,UAAW,GACXC,QAAS,CACL9G,MAGKgG,mBCvBT,SAAAe,EACqB9G,EACA+G,GADA7K,KAAA8D,UAAAA,EACA9D,KAAA6K,SAAAA,SAGdD,EAAAhL,UAAAkL,kBAAP,SAAyBC,EAAmBC,GACxC,IAAKD,IAAcC,EACjB,MAAO,GAET,IAAIC,EAAO,GAEX,OADAjL,KAAK6K,SAASK,UAAUF,GAAa9D,WAAU,SAACH,GAAc,OAAAkE,EAAOlE,EAAKoE,MAAM,QACzEnL,KAAK8D,UAAUoC,QAAQ,oDAAqD,CAACkF,KAAML,EAAWM,KAAMJ,EAAK,GAAIK,KAAML,EAAK,MAG5HL,EAAAhL,UAAA2L,mBAAP,SAA0BC,EAAoBC,GAC1C,IAAKD,IAAeC,EAClB,MAAO,GAET,IAAIR,EAAO,GAEX,OADAjL,KAAK6K,SAASK,UAAUO,GAAcvE,WAAU,SAACH,GAAc,OAAAkE,EAAOlE,EAAKoE,MAAM,QAC1EnL,KAAK8D,UAAUoC,QAAQ,qDAAsD,CAACkF,KAAMI,EAAYH,KAAMJ,EAAK,GAAIK,KAAML,EAAK,MAG9HL,EAAAhL,UAAA8L,sBAAP,SAA6BC,EAAuBC,GAChD,IAAKD,IAAkBC,EACrB,MAAO,GAET,IAAIX,EAAO,GAEX,OADAjL,KAAK6K,SAASK,UAAUU,GAAiB1E,WAAU,SAACH,GAAc,OAAAkE,EAAOlE,EAAKoE,MAAM,QAC7EnL,KAAK8D,UAAUoC,QAAQ,wDAAyD,CAACkF,KAAMO,EAAeN,KAAMJ,EAAK,GAAIK,KAAML,EAAK,MAIpIL,EAAAhL,UAAAiM,QAAP,SAAeC,EAAUC,EAAW7C,GAChC,IAAI5H,EAAQyK,EAAKZ,MAAM,KAAKa,QAAO,SAACrK,EAAasK,GAAc,YAAkBC,IAAjBvK,EAAOsK,GAAsB,GAAKtK,EAAOsK,KAAQH,GACjH,OAAIxK,GAAmB,IAAVA,GACL4H,IACA5H,EAAQtB,KAAKmM,WAAW7K,EAAO4H,IAE5B,SAAS5H,EAAK,WAElB,4BAA4BtB,KAAK8D,UAAUoC,QAAQ,0DAAyD,WAGhH0E,EAAAhL,UAAAuM,WAAP,SAAkB7K,EAAY4H,GAC1B,GAAI5H,EAAO,CACP,GAAa,SAAT4H,EAAiB,CACjB,IAAIkD,EAAO,GAEX,OADApM,KAAK6K,SAASK,UAAU5J,GAAO4F,WAAU,SAACH,GAAc,OAAAqF,EAAOrF,EAAKoE,MAAM,QACnEiB,EAAK,GAEhB,GAAa,aAATlD,EAAqB,CACrB,IAAImD,EAAO,GAEX,OADArM,KAAK6K,SAASK,UAAU5J,GAAO4F,WAAU,SAACH,GAAc,OAAAsF,EAAOtF,KACxDsF,EAEX,GAAa,YAATnD,EAIA,MAHqB,iBAAV5H,IACPA,EAAQgL,OAAOhL,IAEZA,EAAMiL,eAAe,QAAS,CAAEC,sBAAuB,EAAGC,sBAAuB,IAE5F,GAAa,aAATvD,EACA,OAAO5H,EAAMiL,eAAe,QAAS,CAAExD,MAAO,WAAY2D,SAAU,QAExE,GAAa,QAATxD,EACA,OAAO5H,EAAMqL,QAAQ,yBAA0B,YAGvD,OAAOrL,GAIJsJ,EAAAhL,UAAAgN,eAAP,SAAsBtL,GAClB,OAAKA,GAASA,IAAUtB,KAAK8D,UAAUoC,QAAQ,6CAGxC,GAFI,cAKR0E,EAAAhL,UAAAiN,YAAP,SAAmBC,GACf,IAAInE,EAAO,GACX,OAAKmE,IAGLnE,GAAQ3I,KAAK8K,kBAAkBgC,EAAO/B,UAAW+B,EAAO9B,gBAEtDrC,GAAQ,MAEVA,GAAQ3I,KAAKuL,mBAAmBuB,EAAOC,eAAgBD,EAAOE,mBANnDhN,KAAK8D,UAAUoC,QAAQ,gFAU/B0E,EAAAhL,UAAAqN,eAAP,SAAsB3L,GAClB,OAAOA,EAAMiL,eAAe,QAAS,CAAExD,MAAO,WAAY2D,SAAU,SAGjE9B,EAAAhL,UAAAsN,mBAAP,SAA0BC,EAAsB7L,EAAYwC,GAClD,IAAAN,EAAA2J,EAAEC,EAAA5J,EAAA4J,KAAMlE,EAAA1F,EAAA0F,KAAM9G,EAAAoB,EAAApB,MACpB,OAAI8G,IAASmE,EAAAA,UAAUC,MAIZ,CAAEC,GAAIH,EAAMhL,MAAUA,EAAK,MAHfd,EACbwC,EAAUoC,QAAQ,wDAClBpC,EAAUoC,QAAQ,2DAGrBlG,KAAKwN,mBAAmBL,EAAW7L,EAAOwC,IAG9C8G,EAAAhL,UAAA6N,aAAP,SAAoB3B,EAAUC,GAC1B,OAAOA,EAAKZ,MAAM,KAAKa,QAAO,SAACrK,EAAasK,GAAc,YAAkBC,IAAjBvK,EAAOsK,GAAsB,GAAKtK,EAAOsK,KAAQH,IAGzGlB,EAAAhL,UAAA4N,mBAAP,SAA0BL,EAAsB7L,EAAYwC,GACpD,IAAAN,EAAA2J,EAAEC,EAAA5J,EAAA4J,KAAMlE,EAAA1F,EAAA0F,KAAM9G,EAAAoB,EAAApB,MAAOsL,EAAAlK,EAAAkK,aAAcC,EAAAnK,EAAAmK,QAEzC,MAAO,CAAEJ,GAAIH,EAAMhL,MAAUA,EAAK,KADfpC,KAAK4N,oBAAoB1E,EAAM5H,EAAOoM,EAAcC,EAAS7J,KAI1E8G,EAAAhL,UAAAgO,oBAAR,SACE1E,EACA5H,EACAoM,EACAC,EACA7J,GAEA,OAAQoF,GACN,KAAKmE,EAAAA,UAAUQ,KACb,OAAO7N,KAAK8N,aAAaxM,GAC3B,KAAK+L,EAAAA,UAAUU,KACb,OAAO/N,KAAKgO,gBAAgB1M,GAC9B,KAAK+L,EAAAA,UAAUY,cACf,KAAKZ,EAAAA,UAAUa,SACb,OAAOlO,KAAKmO,oBAAoB7M,GAClC,KAAK+L,EAAAA,UAAUe,OACb,OAAOpO,KAAKqO,eAAe/M,EAAOoM,GACpC,KAAKL,EAAAA,UAAUiB,KACb,OAAOtO,KAAKuO,aAAajN,EAAOqM,GAClC,KAAKN,EAAAA,UAAUmB,QACb,OAAOxO,KAAKyO,gBAAgBnN,EAAOwC,GACrC,QACE,OAAOxC,IAILsJ,EAAAhL,UAAAkO,aAAR,SAAqBxM,GACnB,IAAMoN,EAAUpN,aAAiBuM,KAAOvM,EAAQ,IAAIuM,KAAKvM,GACzD,OAAQqN,MAAMD,EAAQE,WAAmDtN,EAAtCoN,EAAQG,mBAAmB,UAGxDjE,EAAAhL,UAAAyO,eAAR,SAAuB/M,EAAYoM,GAAnC,IAAA9G,EAAA5G,KACE,OAAO0N,EAAalI,KAAI,SAACkD,GAAqB,OAAA9B,EAAK6G,aAAanM,EAAOoH,EAAM0E,SAAO0B,KAAK,QAGnFlE,EAAAhL,UAAA2O,aAAR,SAAqBjN,EAAYqM,GAC/B,IAAMoB,EAASpB,EAAQ7G,MAAK,SAACkI,GAAgB,OAAAA,EAAI1N,QAAUA,KAC3D,OAAOyN,EAASA,EAAO3M,MAAQd,GAGzBsJ,EAAAhL,UAAA6O,gBAAR,SAAwBnN,EAAYwC,GAClC,OAAOxC,EACCwC,EAAUoC,QAAQ,2DAClBpC,EAAUoC,QAAQ,6DAGrB0E,EAAAhL,UAAAoO,gBAAP,SAAuB1M,GACpB,IAAIoN,EACH,GAAqB,iBAAVpN,GAAsB,yBAAyB2N,KAAK3N,GAAQ,CAC/D,IAAAkC,EAAAN,EAAA5B,EAAA6J,MAAA,KAAA,GAAC+D,EAAA1L,EAAA,GAAGJ,EAAAI,EAAA,GAAGuC,EAAAvC,EAAA,GAAAlE,OAAA,IAAAyG,EAAA,KAAAA,GACb2I,EAAU,IAAIb,MACNsB,UAAUD,GAAI9L,GAAI9D,EAAG,QAE7BoP,EAAUpN,aAAiBuM,KAAOvM,EAAQ,IAAIuM,KAAKvM,GAErD,OAAKqN,MAAMD,EAAQE,WAQZtN,EAPEoN,EAAQU,mBAAmB,QAAS,CACzCC,KAAM,UACNC,OAAQ,UACRC,OAAQ,UACRC,QAAQ,KAMT5E,EAAAhL,UAAAuO,oBAAP,SAA2B7M,GACvB,IAAMoN,EAAUpN,aAAiBuM,KAAOvM,EAAQ,IAAIuM,KAAKvM,GACzD,OAAKqN,MAAMD,EAAQE,WAUZtN,EATYoN,EAAQG,mBAAmB,SAO1B,IANDH,EAAQU,mBAAmB,QAAS,CACnDC,KAAM,UACNC,OAAQ,UACRC,OAAQ,UACRC,QAAQ,8CA/LgBnG,EAAAA,wBACDoG,EAAAA,yLAJtB7E,EAAY3K,EAAA,CAHxBuJ,EAAAA,WAAW,CACVC,WAAY,UAEDmB,mBC6CT,SAAA8E,EACqBC,EACA7L,EACA8L,EACAC,GAHA7P,KAAA2P,kBAAAA,EACA3P,KAAA8D,UAAAA,EACA9D,KAAA4P,MAAAA,EACA5P,KAAA6P,eAAAA,EAlCX7P,KAAA8P,YAAc,IAAI9L,EAAAA,aAClBhE,KAAA+P,OAAS,IAAI/L,EAAAA,aACbhE,KAAAgQ,OAAS,IAAIhM,EAAAA,aACbhE,KAAAiQ,KAAO,IAAIjM,EAAAA,aACXhE,KAAAkQ,IAAM,IAAIlM,EAAAA,aAGbhE,KAAAmQ,WAAmC,GACnCnQ,KAAAoQ,aAAc,EACdpQ,KAAAqQ,SAAU,EACVrQ,KAAAsQ,MAAO,EACPtQ,KAAAuQ,eAAgB,EAChBvQ,KAAAwQ,aAAc,EACdxQ,KAAAyQ,YAAa,EACbzQ,KAAA0Q,gBAAiB,EACjB1Q,KAAA2Q,oBAAsB,GACtB3Q,KAAA4Q,kBAAgC,CAAEC,KAAM,EAAGC,KAAM,EAAG7I,KAAM,IAE1DjI,KAAAuF,SAAkB,GAClBvF,KAAA8E,YAAqB,GACrB9E,KAAA+Q,iBAAmB,EACnB/Q,KAAAgR,SAAkB,GAElBhR,KAAAiR,mBAAoB,EACpBjR,KAAAkR,eAAiB,OACjBlR,KAAAmR,YAAc,QACdnR,KAAAoR,cAAgC,GAEtBpR,KAAAqR,cAAgB,IAAIC,EAAAA,QAQnCtR,KAAK2Q,oBAAsB3Q,KAAK8D,UAAUoC,QAAQ,kFAGpDwJ,EAAA9P,UAAAgF,SAAA,WACI5E,KAAKuR,cACLvR,KAAKwR,cAGT9B,EAAA9P,UAAA6R,YAAA,SAAYC,GACJA,EAAQC,QACR3R,KAAKuR,eAIP7B,EAAA9P,UAAAgS,WAAP,SAAkBC,EAAavQ,GAC1B,OAAOA,GAGHoO,EAAA9P,UAAA2R,YAAR,WACI,GAAKvR,KAAK2R,OAAV,CAGM,IAAAnO,EAAAxD,KAAA2R,OAAEtG,EAAA7H,EAAA6H,KAAMyF,EAAAtN,EAAAsN,KAAMgB,EAAAtO,EAAAsO,QAASZ,EAAA1N,EAAA0N,eAAgBE,EAAA5N,EAAA4N,cAAef,EAAA7M,EAAA6M,QAASC,EAAA9M,EAAA8M,KACnEyB,EAAAvO,EAAAuO,qBAAsBvB,EAAAhN,EAAAgN,YAAaC,EAAAjN,EAAAiN,WAAYuB,EAAAxO,EAAAwO,mBAEjDhS,KAAKuF,SAAW8F,MAAAA,EAAAA,EAAQ,GACxBrL,KAAK+Q,iBAAmBD,MAAAA,EAAAA,EAAQ,EAChC9Q,KAAK8E,YAAcgN,MAAAA,EAAAA,EAAW,GAC9B9R,KAAKkR,eAAiBA,MAAAA,EAAAA,EAAkB,OACxClR,KAAKoR,cAAgBA,MAAAA,EAAAA,EAAiB,GACtCpR,KAAKmR,YAAcnR,KAAKiS,qBAAqBjS,KAAKoR,eAElDpR,KAAKqQ,UAAYA,EACjBrQ,KAAKsQ,OAASA,EACdtQ,KAAKuQ,gBAAkBwB,EACvB/R,KAAKwQ,cAAgBA,EACrBxQ,KAAKyQ,aAAeA,EACpBzQ,KAAK0Q,iBAAmBsB,EAExBhS,KAAK2P,kBAAkBuC,gBACvBlS,KAAKiR,mBAAoB,EACzBjR,KAAKoQ,aAAc,IAGfV,EAAA9P,UAAAqS,qBAAR,SAA6Bb,GAE3B,OAAMA,MAAAA,OAAa,EAAbA,EAAe1R,QAGF0R,EAAcpF,QAAO,SAACmG,EAAKC,GAAQ,OAAAD,EAJvC,KAIuDE,SAASD,EAAIpJ,MAAO,KAAO,KAAI,GACjF,KAHX,SAOJ0G,EAAA9P,UAAA0S,WAAP,SAAkBjH,GAAlB,IAAAzE,EAAA5G,KACI,MAAO,CACH,CACIuN,GAAI,OACJnL,MAAOpC,KAAK8D,UAAUoC,QAAQ,yCAC9BqM,UAAWvS,KAAK0Q,eAChB8B,QAAS,WACL5L,EAAK6L,eAAepH,EAAKkC,MAGjC,CAAEmF,WAAW,GACb,CACInF,GAAI,SACJnL,MAAOpC,KAAK8D,UAAUoC,QAAQ,2CAC9BqM,UAAWvS,KAAKuQ,cAChBiC,QAAS,WACL5L,EAAK+L,SAAStH,EAAKkC,QAM5BmC,EAAA9P,UAAAgT,eAAP,SAAsBC,GAClB,IAAM/B,EAAO+B,EAAMC,KAAOD,EAAMC,KAAO,GACjCjC,EAAOgC,EAAME,MAAQF,EAAME,MAAQjC,EAAO,EAChD9Q,KAAKoQ,aAAc,EAEfpQ,KAAKmQ,YAAchR,OAAO6T,KAAKhT,KAAKmQ,YAAYzQ,SAChDM,KAAKmQ,WAAa,GAClBnQ,KAAKiT,MAAMC,eAAiB,IAGhClT,KAAK+P,OAAOtJ,KAAK,CAAEoK,KAAIA,EAAEC,KAAIA,KAGpBpB,EAAA9P,UAAAuT,qBAAb,SAAkCN,EAAsBpK,uGAMpD,OALMqI,EAAO+B,EAAMC,KAAOD,EAAMC,KAAO,GACjCjC,EAAOgC,EAAME,MAAQF,EAAME,MAAQjC,EAAO,EAC1C7I,EAAO4K,EAAMO,eAAiB,GAEpC3K,EAAQwI,mBAAoB,EAC5B,CAAA,EAAMjR,KAAKqT,eAAe,CAAExC,KAAIA,EAAEC,KAAIA,EAAE7I,KAAIA,GAAIQ,kBAAhDjF,EAAAnB,mBAGJqN,EAAA9P,UAAA0T,MAAA,SAAMT,GACF,GAAkB,QAAdA,EAAMzS,IAAV,CAIAyS,EAAMU,iBAEN,IAQI/R,EAREgS,EAAaC,MAAMC,KACrBC,SAASC,iBACT,2EAEFC,QAAO,SAAAC,GAAM,OAAoB,OAApBA,EAAGC,gBAEZC,EAAeR,EAAWS,QAAQpB,EAAM1S,SAK1CqB,EADAqR,EAAMqB,SACCV,EAAWQ,EAAe,IAAMR,EAAWA,EAAW9T,OAAS,GAE/D8T,EAAWQ,EAAe,IAAMR,EAAW,KAIlDhS,EAAK2S,UAKNzE,EAAA9P,UAAAwU,YAAP,WAGI,OAFapU,KAAK4Q,kBAAkBC,MAAQ,IAC/B7Q,KAAK4Q,kBAAkBE,MAAQ,IAIzCpB,EAAA9P,UAAAyU,YAAP,iBACI,OAAkC,QAAlC7Q,EAAOxD,KAAK4Q,kBAAkBE,YAAI,IAAAtN,EAAAA,EAAI,GAGnCkM,EAAA9P,UAAA6S,eAAP,SAAsBlF,GAClBvN,KAAK8P,YAAYrJ,KAAK8G,IAGnBmC,EAAA9P,UAAA+S,SAAP,SAAgBpF,GACZvN,KAAKgQ,OAAOvJ,KAAK8G,IAGdmC,EAAA9P,UAAA0U,MAAP,WACItU,KAAKkQ,IAAIzJ,QAGNiJ,EAAA9P,UAAA2U,YAAP,WACIvU,KAAKqR,cAAc7P,OACnBxB,KAAKqR,cAAcmD,YAGhB9E,EAAA9P,UAAA6U,WAAP,WACIzU,KAAK0U,eAGFhF,EAAA9P,UAAA+U,aAAP,WAAA,IAAA/N,EAAA5G,KACIA,KAAKuF,SAASqP,SAAQ,SAACvJ,GACnB,GAAIzE,EAAKuJ,WAAW9E,EAAKkC,IAAK,CAC1B,IAAMhH,EAAQK,EAAKrB,SAASsP,WAAU,SAACvO,GAAQ,OAAAA,EAAIiH,KAAOlC,EAAKkC,MAC/D3G,EAAKrB,SAASgB,GAASK,EAAKuJ,WAAW9E,EAAKkC,WACrC3G,EAAKuJ,WAAW9E,EAAKkC,IAEhC3G,EAAKqM,MAAM6B,cAAczJ,MAE7BrL,KAAKqQ,SAAU,GAGZX,EAAA9P,UAAAmV,gBAAP,WAAA,IAAAnO,EAAA5G,KACIA,KAAKuF,SAASqP,SAAQ,SAACvJ,GACnBzE,EAAKyJ,SAAU,EACfzJ,EAAKqM,MAAM+B,YAAY3J,GACvBzE,EAAKuJ,WAAW9E,EAAKkC,IAAGrO,EAAA,GAAQmM,OAIjCqE,EAAA9P,UAAA8U,YAAP,WAAA,IAAA9N,EAAA5G,KACIA,KAAKuF,SAASqP,SAAQ,SAACvJ,GACfzE,EAAKuJ,WAAW9E,EAAKkC,YACd3G,EAAKuJ,WAAW9E,EAAKkC,IAEhC3G,EAAKqM,MAAM6B,cAAczJ,MAE7BrL,KAAKqQ,SAAU,EACfrQ,KAAKiQ,KAAKxJ,KAAKzG,KAAKuF,WAGjBmK,EAAA9P,UAAAqV,cAAP,SAAqBvM,GACjB,OAAOA,GAGJgH,EAAA9P,UAAAsV,cAAP,SAAqBrC,GACjB,OAAOA,GAGJnD,EAAA9P,UAAAuV,YAAP,SAAmBrJ,EAAUC,EAAW7C,GACpCA,EAAOA,MAAAA,OAAI,EAAJA,EAAML,cACb,IAAMvH,EAAQtB,KAAK4P,MAAM/D,QAAQC,EAAKC,EAAM7C,GAC5C,MAAc,mBAAV5H,GAAwC,YAAT4H,EACzB,oBAEL4C,EAAIsJ,WAGL,cAAgBtJ,EAAIsJ,WAAWrJ,GACxB,MAAQzK,EAEf,eAAiBwK,EAAIsJ,WAAWrJ,GACzBzK,EAAQ,KAEZA,EARIA,GAWRoO,EAAA9P,UAAA4R,WAAP,WAAA,IAAA5K,EAAA5G,KACIA,KAAK6P,eAAeK,IAChB,IAAImF,EAAAA,OACA,eACA,WAEI,OADAzO,EAAK0N,SACE,IAEX,CAAC,QAAS,SAAU,wDApOQgB,EAAAA,yBACRjM,EAAAA,wBACJuB,SACS2K,EAAAA,uOApC5BtV,EAAA,CAARqJ,EAAAA,sCACQrJ,EAAA,CAARqJ,EAAAA,8CACSrJ,EAAA,CAATsJ,EAAAA,4CACStJ,EAAA,CAATsJ,EAAAA,uCACStJ,EAAA,CAATsJ,EAAAA,uCACStJ,EAAA,CAATsJ,EAAAA,qCACStJ,EAAA,CAATsJ,EAAAA,oCAEsCtJ,EAAA,CAAtCuV,EAAAA,UAAU,QAAS,CAAEC,QAAQ,iCATrB/F,EAA2BzP,EAAA,CARvCuJ,EAAAA,WAAW,CACRC,WAAY,SAEfC,EAAAA,UAAU,CACTC,SAAU,4BACVC,SAAA,s4YAGW8F,mBCyDb,SAAAgG,KAAuC,OAA1BA,EAAwBzV,EAAA,CA1CpC6J,EAAAA,SAAS,CACNC,QAAS,CACLQ,EAAAA,aACAP,EAAAA,aAAaC,WACbC,EAAAA,gBAAgBD,WAChBK,EAAAA,aACAD,EAAAA,YACAF,EAAAA,cACAwL,EAAAA,mBACAC,EAAAA,kBACAC,EAAAA,iBACAC,EAAAA,oBACAC,EAAAA,mBACAC,EAAAA,kBACAC,EAAAA,iBACAC,EAAAA,gBAGAC,EAAAA,YACA/L,EAAAA,YACAgM,EAAAA,cACA5L,EAAAA,YACA6L,EAAAA,gBACAC,EAAAA,oBACAC,EAAAA,eACAC,EAAAA,eACAC,EAAAA,aACAC,EAAAA,mBACAC,EAAAA,eAGAC,EAAAA,YACAC,EAAAA,qBAEJpM,aAAc,CACViF,GAEJhF,UAAW,GACXC,QAAS,CACL+E,MAGKgG,MCtEAoB,EAAmC,IAAIC,EAAAA,eAAmC,sBAQvFC,EAAA,WAAA,SAAAA,WAYA,SAZaA,EACFA,EAAAC,QAAP,SAAetF,GACX,MAAO,CACHuF,SAAUC,EACVzM,UAAW,CACP,CACI0M,QAASN,EACTO,SAAU1F,MAPjBqF,EAA2BG,EAAAlX,EAAA,CADvC6J,EAAAA,SAAS,KACGkN,GAAb,gOCd6B,CACzBM,uCAAwC,YACxCC,oDAAqD,+CACrDC,qDAAsD,mDACtDC,wDAAyD,kDACzDC,8EAA+E,+BAC/EC,0CAA2C,UAC3CC,wCAAyC,SACzCC,+DAAgE,oDAChEC,yDAA0D,gBAC1DC,+DAAgE,2CAChEC,yDAA0D,iBAC1DC,kEAAmE,mDACnEC,4DAA6D,iBAC7DC,iDAAkD,gBAClDC,0EAA2E,+BAC3EC,iEAAkE,WAClEC,+DAAgE,iBAChEC,+DAAgE,wBAChEC,+DAAgE,oBAChEC,2DAA4D,MAC5DC,0DAA2D,MAC3DC,yDAA0D,gBAC1DC,wDAAyD,0BACzDC,kEAAmE,4BACnEC,sEAAuE,kBACvEC,uEAAwE,WACxEC,0EAA2E,cAC3EC,uEAAwE,yBACxEC,4CAA6C,WAC7CC,uEAAwE,0CACxEC,wDAAyD,yBACzDC,kDAAmD,WACnDC,wDAAyD,UACzDC,uDAAwD,QACxDC,0CAA2C,WAC3CC,iDAAkD","sourcesContent":["/*! *****************************************************************************\r\nCopyright (c) Microsoft Corporation.\r\n\r\nPermission to use, copy, modify, and/or distribute this software for any\r\npurpose with or without fee is hereby granted.\r\n\r\nTHE SOFTWARE IS PROVIDED \"AS IS\" AND THE AUTHOR DISCLAIMS ALL WARRANTIES WITH\r\nREGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY\r\nAND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY SPECIAL, DIRECT,\r\nINDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM\r\nLOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR\r\nOTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR\r\nPERFORMANCE OF THIS SOFTWARE.\r\n***************************************************************************** */\r\n/* global Reflect, Promise */\r\n\r\nvar extendStatics = function(d, b) {\r\n extendStatics = Object.setPrototypeOf ||\r\n ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) ||\r\n function (d, b) { for (var p in b) if (b.hasOwnProperty(p)) d[p] = b[p]; };\r\n return extendStatics(d, b);\r\n};\r\n\r\nexport function __extends(d, b) {\r\n extendStatics(d, b);\r\n function __() { this.constructor = d; }\r\n d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());\r\n}\r\n\r\nexport var __assign = function() {\r\n __assign = Object.assign || function __assign(t) {\r\n for (var s, i = 1, n = arguments.length; i < n; i++) {\r\n s = arguments[i];\r\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p)) t[p] = s[p];\r\n }\r\n return t;\r\n }\r\n return __assign.apply(this, arguments);\r\n}\r\n\r\nexport function __rest(s, e) {\r\n var t = {};\r\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0)\r\n t[p] = s[p];\r\n if (s != null && typeof Object.getOwnPropertySymbols === \"function\")\r\n for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {\r\n if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i]))\r\n t[p[i]] = s[p[i]];\r\n }\r\n return t;\r\n}\r\n\r\nexport function __decorate(decorators, target, key, desc) {\r\n var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;\r\n if (typeof Reflect === \"object\" && typeof Reflect.decorate === \"function\") r = Reflect.decorate(decorators, target, key, desc);\r\n else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;\r\n return c > 3 && r && Object.defineProperty(target, key, r), r;\r\n}\r\n\r\nexport function __param(paramIndex, decorator) {\r\n return function (target, key) { decorator(target, key, paramIndex); }\r\n}\r\n\r\nexport function __metadata(metadataKey, metadataValue) {\r\n if (typeof Reflect === \"object\" && typeof Reflect.metadata === \"function\") return Reflect.metadata(metadataKey, metadataValue);\r\n}\r\n\r\nexport function __awaiter(thisArg, _arguments, P, generator) {\r\n function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }\r\n return new (P || (P = Promise))(function (resolve, reject) {\r\n function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }\r\n function rejected(value) { try { step(generator[\"throw\"](value)); } catch (e) { reject(e); } }\r\n function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }\r\n step((generator = generator.apply(thisArg, _arguments || [])).next());\r\n });\r\n}\r\n\r\nexport function __generator(thisArg, body) {\r\n var _ = { label: 0, sent: function() { if (t[0] & 1) throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g;\r\n return g = { next: verb(0), \"throw\": verb(1), \"return\": verb(2) }, typeof Symbol === \"function\" && (g[Symbol.iterator] = function() { return this; }), g;\r\n function verb(n) { return function (v) { return step([n, v]); }; }\r\n function step(op) {\r\n if (f) throw new TypeError(\"Generator is already executing.\");\r\n while (_) try {\r\n if (f = 1, y && (t = op[0] & 2 ? y[\"return\"] : op[0] ? y[\"throw\"] || ((t = y[\"return\"]) && t.call(y), 0) : y.next) && !(t = t.call(y, op[1])).done) return t;\r\n if (y = 0, t) op = [op[0] & 2, t.value];\r\n switch (op[0]) {\r\n case 0: case 1: t = op; break;\r\n case 4: _.label++; return { value: op[1], done: false };\r\n case 5: _.label++; y = op[1]; op = [0]; continue;\r\n case 7: op = _.ops.pop(); _.trys.pop(); continue;\r\n default:\r\n if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) { _ = 0; continue; }\r\n if (op[0] === 3 && (!t || (op[1] > t[0] && op[1] < t[3]))) { _.label = op[1]; break; }\r\n if (op[0] === 6 && _.label < t[1]) { _.label = t[1]; t = op; break; }\r\n if (t && _.label < t[2]) { _.label = t[2]; _.ops.push(op); break; }\r\n if (t[2]) _.ops.pop();\r\n _.trys.pop(); continue;\r\n }\r\n op = body.call(thisArg, _);\r\n } catch (e) { op = [6, e]; y = 0; } finally { f = t = 0; }\r\n if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true };\r\n }\r\n}\r\n\r\nexport function __createBinding(o, m, k, k2) {\r\n if (k2 === undefined) k2 = k;\r\n o[k2] = m[k];\r\n}\r\n\r\nexport function __exportStar(m, exports) {\r\n for (var p in m) if (p !== \"default\" && !exports.hasOwnProperty(p)) exports[p] = m[p];\r\n}\r\n\r\nexport function __values(o) {\r\n var s = typeof Symbol === \"function\" && Symbol.iterator, m = s && o[s], i = 0;\r\n if (m) return m.call(o);\r\n if (o && typeof o.length === \"number\") return {\r\n next: function () {\r\n if (o && i >= o.length) o = void 0;\r\n return { value: o && o[i++], done: !o };\r\n }\r\n };\r\n throw new TypeError(s ? \"Object is not iterable.\" : \"Symbol.iterator is not defined.\");\r\n}\r\n\r\nexport function __read(o, n) {\r\n var m = typeof Symbol === \"function\" && o[Symbol.iterator];\r\n if (!m) return o;\r\n var i = m.call(o), r, ar = [], e;\r\n try {\r\n while ((n === void 0 || n-- > 0) && !(r = i.next()).done) ar.push(r.value);\r\n }\r\n catch (error) { e = { error: error }; }\r\n finally {\r\n try {\r\n if (r && !r.done && (m = i[\"return\"])) m.call(i);\r\n }\r\n finally { if (e) throw e.error; }\r\n }\r\n return ar;\r\n}\r\n\r\nexport function __spread() {\r\n for (var ar = [], i = 0; i < arguments.length; i++)\r\n ar = ar.concat(__read(arguments[i]));\r\n return ar;\r\n}\r\n\r\nexport function __spreadArrays() {\r\n for (var s = 0, i = 0, il = arguments.length; i < il; i++) s += arguments[i].length;\r\n for (var r = Array(s), k = 0, i = 0; i < il; i++)\r\n for (var a = arguments[i], j = 0, jl = a.length; j < jl; j++, k++)\r\n r[k] = a[j];\r\n return r;\r\n};\r\n\r\nexport function __await(v) {\r\n return this instanceof __await ? (this.v = v, this) : new __await(v);\r\n}\r\n\r\nexport function __asyncGenerator(thisArg, _arguments, generator) {\r\n if (!Symbol.asyncIterator) throw new TypeError(\"Symbol.asyncIterator is not defined.\");\r\n var g = generator.apply(thisArg, _arguments || []), i, q = [];\r\n return i = {}, verb(\"next\"), verb(\"throw\"), verb(\"return\"), i[Symbol.asyncIterator] = function () { return this; }, i;\r\n function verb(n) { if (g[n]) i[n] = function (v) { return new Promise(function (a, b) { q.push([n, v, a, b]) > 1 || resume(n, v); }); }; }\r\n function resume(n, v) { try { step(g[n](v)); } catch (e) { settle(q[0][3], e); } }\r\n function step(r) { r.value instanceof __await ? Promise.resolve(r.value.v).then(fulfill, reject) : settle(q[0][2], r); }\r\n function fulfill(value) { resume(\"next\", value); }\r\n function reject(value) { resume(\"throw\", value); }\r\n function settle(f, v) { if (f(v), q.shift(), q.length) resume(q[0][0], q[0][1]); }\r\n}\r\n\r\nexport function __asyncDelegator(o) {\r\n var i, p;\r\n return i = {}, verb(\"next\"), verb(\"throw\", function (e) { throw e; }), verb(\"return\"), i[Symbol.iterator] = function () { return this; }, i;\r\n function verb(n, f) { i[n] = o[n] ? function (v) { return (p = !p) ? { value: __await(o[n](v)), done: n === \"return\" } : f ? f(v) : v; } : f; }\r\n}\r\n\r\nexport function __asyncValues(o) {\r\n if (!Symbol.asyncIterator) throw new TypeError(\"Symbol.asyncIterator is not defined.\");\r\n var m = o[Symbol.asyncIterator], i;\r\n return m ? m.call(o) : (o = typeof __values === \"function\" ? __values(o) : o[Symbol.iterator](), i = {}, verb(\"next\"), verb(\"throw\"), verb(\"return\"), i[Symbol.asyncIterator] = function () { return this; }, i);\r\n function verb(n) { i[n] = o[n] && function (v) { return new Promise(function (resolve, reject) { v = o[n](v), settle(resolve, reject, v.done, v.value); }); }; }\r\n function settle(resolve, reject, d, v) { Promise.resolve(v).then(function(v) { resolve({ value: v, done: d }); }, reject); }\r\n}\r\n\r\nexport function __makeTemplateObject(cooked, raw) {\r\n if (Object.defineProperty) { Object.defineProperty(cooked, \"raw\", { value: raw }); } else { cooked.raw = raw; }\r\n return cooked;\r\n};\r\n\r\nexport function __importStar(mod) {\r\n if (mod && mod.__esModule) return mod;\r\n var result = {};\r\n if (mod != null) for (var k in mod) if (Object.hasOwnProperty.call(mod, k)) result[k] = mod[k];\r\n result.default = mod;\r\n return result;\r\n}\r\n\r\nexport function __importDefault(mod) {\r\n return (mod && mod.__esModule) ? mod : { default: mod };\r\n}\r\n\r\nexport function __classPrivateFieldGet(receiver, privateMap) {\r\n if (!privateMap.has(receiver)) {\r\n throw new TypeError(\"attempted to get private field on non-instance\");\r\n }\r\n return privateMap.get(receiver);\r\n}\r\n\r\nexport function __classPrivateFieldSet(receiver, privateMap, value) {\r\n if (!privateMap.has(receiver)) {\r\n throw new TypeError(\"attempted to set private field on non-instance\");\r\n }\r\n privateMap.set(receiver, value);\r\n return value;\r\n}\r\n","import { Observable } from \"rxjs\";\n\nexport interface ProcessamentoInput {\n quantidadeChamadasSimultaneas: number;\n registros: ProcessamentoRegistro[];\n titulo: string;\n}\n\nexport interface ProcessamentoRegistro {\n descricao: string;\n apiEnvio: (data: object) => Observable<any>;\n objEnvio: any;\n}\n\nexport interface ProcessamentoGrid {\n registro: any;\n label: string;\n status: EnumProcessamentoStatus;\n message?: string;\n}\n\nexport enum EnumProcessamentoStatus {\n SUCCESS = \"SUCCESS\",\n FAILED = \"FAILED\",\n PENDING = \"PENDING\",\n PROCESSING = \"PROCESSING\"\n}\n\nexport const EnumProcessamentoStatusTranslationMap: Record<EnumProcessamentoStatus, string> = {\n [EnumProcessamentoStatus.SUCCESS]: 'tmsx_fnd.tmsx_angular_components.painel_processamento_status_success',\n [EnumProcessamentoStatus.FAILED]: 'tmsx_fnd.tmsx_angular_components.painel_processamento_status_failed',\n [EnumProcessamentoStatus.PENDING]: 'tmsx_fnd.tmsx_angular_components.painel_processamento_status_pending',\n [EnumProcessamentoStatus.PROCESSING]: 'tmsx_fnd.tmsx_angular_components.painel_processamento_status_processing'\n};\n\n","import { TranslateService } from '@ngx-translate/core';\nimport { Component, Injectable, Input, OnInit, Output, EventEmitter } from '@angular/core';\nimport { EnumProcessamentoStatus, EnumProcessamentoStatusTranslationMap, ProcessamentoGrid, ProcessamentoInput } from './processamento';\nimport { Column, EnumColumnFieldType } from '@seniorsistemas/angular-components';\n\n@Injectable({\n providedIn: 'root'\n})\n@Component({\n selector: 'tmsx-painel-processamento',\n templateUrl: './painel-processamento.component.html',\n styleUrls: ['./painel-processamento.component.scss']\n})\nexport class PainelProcessamentoComponent implements OnInit {\n\n private static readonly GENERIC_ERR_KEY = 'tmsx_fnd.tmsx_angular_components.painel_processamento_generic_error';\n\n @Input() params: ProcessamentoInput;\n @Output() processado = new EventEmitter();\n @Output() concluido = new EventEmitter();\n\n public gridData: ProcessamentoGrid[];\n public gridColumns: Column[];\n\n public totalRecords = 0;\n public successCount = 0;\n public failedCount = 0;\n public pendingCount = 0;\n public successProgress = '0%';\n public failedProgress = '0%';\n public pendingProgress = '100%';\n public processingProgress = '0%';\n public sortField = 'status';\n public sortOrder = 1;\n\n constructor(\n private readonly translate: TranslateService\n ) { }\n\n ngOnInit() {\n this.initPanel();\n }\n\n initPanel() {\n this.gridColumns = this.getGridColumn();\n this.initGrid();\n this.initProgressBar();\n }\n\n initProgressBar() {\n this.successProgress = '0%';\n this.failedProgress = '0%';\n this.pendingProgress = '100%';\n this.processingProgress = '0%';\n this.totalRecords = this.params.registros.length;\n this.pendingCount = this.totalRecords;\n\n if (this.params.quantidadeChamadasSimultaneas > 1) {\n this.processAllRecordsWithPLimit();\n } else {\n this.syncProcessRecord(0);\n }\n }\n\n initGrid() {\n this.gridData = [];\n this.gridData = this.params.registros.map(registro => ({\n registro,\n status: EnumProcessamentoStatus.PENDING,\n label: registro.descricao\n }));\n }\n\n private getErrorMessage(error: any): string {\n try {\n if (!error) {\n return this.genericErrorMsg;\n }\n if (error?.error?.message) {\n return String(error.error.message);\n }\n if (error?.message?.message) {\n return String(error.message.message);\n }\n return this.genericErrorMsg;\n } catch {\n return this.genericErrorMsg;\n }\n }\n\n private get genericErrorMsg(): string {\n return this.translate.instant(PainelProcessamentoComponent.GENERIC_ERR_KEY);\n }\n\n private updateRowSuccess(row: any, index: number): void {\n this.successCount++;\n this.pendingCount--;\n this.updateRowStatus(row, EnumProcessamentoStatus.SUCCESS);\n this.processado.emit(row);\n this.updateProgressBar();\n }\n\n private updateRowError(row: any, index: number, message: string): void {\n this.failedCount++;\n this.pendingCount--;\n this.updateRowStatus(row, EnumProcessamentoStatus.FAILED, message);\n this.processado.emit(row);\n this.updateProgressBar();\n }\n\n private syncProcessRecord(index: number): void {\n if (this.pendingCount < 1) {\n this.concluido.emit('ok');\n return;\n }\n this.updateRowStatus(this.gridData[index], EnumProcessamentoStatus.PROCESSING);\n const record = this.params.registros[index];\n const row = this.gridData.find(item => item.registro === record);\n\n if (record.apiEnvio) {\n record.apiEnvio(record.objEnvio)\n .subscribe(\n () => {\n this.updateRowSuccess(row, index);\n this.syncProcessRecord(index + 1);\n },\n (error: any) => {\n this.updateRowError(row, index, this.getErrorMessage(error));\n this.syncProcessRecord(index + 1);\n }\n );\n } else {\n this.failedCount = this.pendingCount;\n this.pendingCount = 0;\n this.updateRowStatus(row,\n EnumProcessamentoStatus.FAILED,\n this.translate.instant('tmsx_fnd.tmsx_angular_components.painel_processamento_api_error')\n );\n this.updateProgressBar();\n this.concluido.emit('erro');\n }\n }\n\n async processAllRecordsWithPLimit() {\n const pLimit = require('p-limit');\n const limit = pLimit(this.params.quantidadeChamadasSimultaneas);\n const promises = this.params.registros.map((record, index) => {\n return limit(async () => {\n const row = this.gridData.find(item => item.registro === record);\n this.updateRowStatus(row, EnumProcessamentoStatus.PROCESSING);\n try {\n const result = await record.apiEnvio(record.objEnvio).toPromise();\n this.updateRowSuccess(row, index);\n return { success: true, record, result };\n } catch (error) {\n this.updateRowError(row, index, this.getErrorMessage(error));\n return { success: false, record, error };\n }\n });\n });\n const results = await Promise.all(promises);\n this.concluido.emit(results);\n return results;\n }\n\n private updateProgressBar(): void {\n const successWidth = (this.successCount / this.totalRecords) * 100;\n const failedWidth = (this.failedCount / this.totalRecords) * 100;\n const pendingWidth = (this.pendingCount / this.totalRecords) * 100;\n const processedWidth = successWidth + failedWidth;\n\n this.processingProgress = `${processedWidth.toFixed(0)}%`;\n this.successProgress = `${successWidth.toFixed(0)}%`;\n this.failedProgress = `${failedWidth.toFixed(0)}%`;\n this.pendingProgress = `${pendingWidth.toFixed(0)}%`;\n }\n\n public updateRowStatus(row: any, status: EnumProcessamentoStatus, message?: string) {\n row.status = status;\n if (message) {\n row.message = message;\n }\n this.sortGridData();\n }\n\n private sortGridData() {\n this.gridData.sort((a: any, b: any) => {\n const statusOrder = {\n [EnumProcessamentoStatus.FAILED]: 1,\n [EnumProcessamentoStatus.PROCESSING]: 2,\n [EnumProcessamentoStatus.SUCCESS]: 3,\n [EnumProcessamentoStatus.PENDING]: 4\n };\n if (this.sortField === 'status') {\n return (statusOrder[a.status as EnumProcessamentoStatus] - statusOrder[b.status as EnumProcessamentoStatus]) * this.sortOrder;\n } else {\n const valA = a[this.sortField] || '';\n const valB = b[this.sortField] || '';\n return valA.localeCompare(valB) * this.sortOrder;\n }\n });\n }\n\n public getData(rowData: any, field: string) {\n if (field === 'status') {\n let text = this.translate.instant(EnumProcessamentoStatusTranslationMap[rowData.status as EnumProcessamentoStatus]);\n if (rowData.message) {\n text += `: ${rowData.message}`;\n }\n return text;\n }\n return rowData[field];\n }\n\n public getClassStatus(rowData: any, field: string) {\n if (field !== 'status') {\n return '';\n }\n return `status ${rowData[field].toLowerCase()}`;\n }\n\n public getGridColumn(): Column[] {\n return [\n {\n field: 'label',\n header: this.translate.instant('tmsx_fnd.tmsx_angular_components.registro'),\n style: { width: '50%' },\n attributes: [],\n type: EnumColumnFieldType.STRING\n },\n {\n field: 'status',\n header: this.translate.instant('tmsx_fnd.tmsx_angular_components.status'),\n style: { width: '50%' },\n attributes: [],\n type: EnumColumnFieldType.STRING\n },\n ];\n }\n}\n","\n\nimport { NgModule } from '@angular/core';\nimport { ButtonModule, LocaleModule, TooltipModule, TableModule } from '@seniorsistemas/angular-components';\n\nimport { TranslateModule } from '@ngx-translate/core';\nimport { PainelProcessamentoComponent } from './painel-processamento.component';\nimport { TableModule as PrimeTableModule } from 'primeng/table';\nimport { CommonModule } from '@angular/common';\nimport { PanelModule } from 'primeng/panel';\n\n\n@NgModule({\n imports: [\n LocaleModule.forChild(),\n TranslateModule.forChild(),\n TooltipModule,\n PrimeTableModule,\n TableModule,\n ButtonModule,\n CommonModule,\n PanelModule,\n\n ],\n declarations: [\n PainelProcessamentoComponent\n ],\n providers: [],\n exports: [\n PainelProcessamentoComponent\n ],\n})\nexport class PainelProcessamentoModule {}\n","import { Injectable } from '@angular/core';\nimport { TranslateService } from '@ngx-translate/core';\nimport { FieldType, FormField, LocalizedDatePipe, Option } from '@seniorsistemas/angular-components';\n\n@Injectable({\n providedIn: 'root'\n})\nexport class UtilsService {\n\n constructor(\n private readonly translate: TranslateService,\n private readonly dataPipe: LocalizedDatePipe\n ) { }\n\n public getAuditCreatedBy(createdBy: string, createdDate: Date): string {\n if (!createdBy || !createdDate) {\n return '';\n }\n let date = '';\n this.dataPipe.transform(createdDate).subscribe((item: any) => date = item.split(' '));\n return this.translate.instant('tmsx_fnd.tmsx_angular_components.audit_created_by', {nome: createdBy, data: date[0], hora: date[1]});\n }\n\n public getAuditModifiedBy(modifiedBy: string, modifiedDate: Date): string {\n if (!modifiedBy || !modifiedDate) {\n return '';\n }\n let date = '';\n this.dataPipe.transform(modifiedDate).subscribe((item: any) => date = item.split(' '));\n return this.translate.instant('tmsx_fnd.tmsx_angular_components.audit_modified_by', {nome: modifiedBy, data: date[0], hora: date[1]});\n }\n\n public getAuditInactivatedBy(inactivatedBy: string, inactivatedDate: Date): string {\n if (!inactivatedBy || !inactivatedDate) {\n return '';\n }\n let date = '';\n this.dataPipe.transform(inactivatedDate).subscribe((item: any) => date = item.split(' '));\n return this.translate.instant('tmsx_fnd.tmsx_angular_components.audit_inactivated_by', {nome: inactivatedBy, data: date[0], hora: date[1]});\n }\n\n /* usage: [innerHTML]=\"getProp(rowData, 'nome')\" */\n public getProp(obj: any, path: any, type?: string): string {\n let value = path.split('.').reduce((result: any, prop: any) => (result[prop] === undefined ? '' : result[prop]), obj);\n if (value || value === 0) {\n if (type) {\n value = this.formatType(value, type);\n }\n return `<span>${value}</span>`;\n }\n return `<span class=\"empty-grid\">${this.translate.instant('tmsx_fnd.tmsx_angular_components.list_grid_empty_field')}</span>`;\n }\n\n public formatType(value: any, type: string): string {\n if (value) {\n if (type === 'date') {\n let date = '';\n this.dataPipe.transform(value).subscribe((item: any) => date = item.split(' '));\n return date[0];\n }\n if (type === 'datetime') {\n let date = '';\n this.dataPipe.transform(value).subscribe((item: any) => date = item);\n return date;\n }\n if (type === 'decimal') {\n if (typeof value === 'string') {\n value = Number(value);\n }\n return value.toLocaleString('pt-BR', { minimumFractionDigits: 2, maximumFractionDigits: 2 });\n }\n if (type === 'currency') {\n return value.toLocaleString('pt-BR', { style: 'currency', currency: 'BRL' });\n }\n if (type === 'cep') {\n return value.replace(/^(\\d{2})(\\d{3})(\\d{3})/, '$1.$2-$3');\n }\n }\n return value;\n }\n\n /* usage: [ngClass]=\"emptyGridClass(value)\" */\n public emptyGridClass(value: string): string {\n if (!value || value === this.translate.instant('tmsx_fnd.replicacao.list_grid_empty_field')) {\n return 'empty-grid';\n }\n return '';\n }\n\n public infoContent(entity?: any) {\n let text = '';\n if (!entity) {\n return this.translate.instant(\"tmsx_fnd.tmsx_angular_components.condicao_valor_lookup_condicional_no_audit\");\n }\n text += this.getAuditCreatedBy(entity.createdBy, entity.createdDate);\n if (text) {\n text += '\\n';\n }\n text += this.getAuditModifiedBy(entity.lastModifiedBy, entity.lastModifiedDate);\n return text;\n }\n\n public formatCurrency(value: number): string {\n return value.toLocaleString('pt-BR', { style: 'currency', currency: 'BRL' });\n }\n\n public getAtivoTokenLabel(formField: FormField, value: any, translate: TranslateService) {\n const { name, type, label } = formField as any;\n if (type === FieldType.Radio) {\n const labelValue = value\n ? translate.instant('tmsx_fnd.tmsx_angular_components.situacao_ativo_true')\n : translate.instant('tmsx_fnd.tmsx_angular_components.situacao_ativo_false');\n return { id: name, label: `${label}: ${labelValue}` };\n }\n return this.createFilterTokens(formField, value, translate);\n }\n\n public getUtilsProp(obj: any, path: any) {\n return path.split('.').reduce((result: any, prop: any) => (result[prop] === undefined ? '' : result[prop]), obj);\n }\n\n public createFilterTokens(formField: FormField, value: any, translate: TranslateService) {\n const { name, type, label, searchFields, options } = formField as any;\n const labelValue = this.getLabelValueByType(type, value, searchFields, options, translate);\n return { id: name, label: `${label}: ${labelValue}` };\n }\n\n private getLabelValueByType(\n type: FieldType,\n value: any,\n searchFields: FormField[],\n options: Option[],\n translate: TranslateService\n ): string {\n switch (type) {\n case FieldType.Date:\n return this.getDateLabel(value);\n case FieldType.Time:\n return this.getTimeFromDate(value);\n case FieldType.LocalDateTime:\n case FieldType.DateTime:\n return this.getDateTimeFromDate(value);\n case FieldType.Lookup:\n return this.getLookupLabel(value, searchFields);\n case FieldType.Enum:\n return this.getEnumLabel(value, options);\n case FieldType.Boolean:\n return this.getBooleanLabel(value, translate);\n default:\n return value;\n }\n }\n\n private getDateLabel(value: any): string {\n const dateObj = value instanceof Date ? value : new Date(value);\n return !isNaN(dateObj.getTime()) ? dateObj.toLocaleDateString('pt-BR') : value;\n }\n\n private getLookupLabel(value: any, searchFields: FormField[]): string {\n return searchFields.map((field: FormField) => this.getUtilsProp(value, field.name)).join(' - ');\n }\n\n private getEnumLabel(value: any, options: Option[]): string {\n const option = options.find((opt: Option) => opt.value === value);\n return option ? option.label : value;\n }\n\n private getBooleanLabel(value: any, translate: TranslateService): string {\n return value\n ? translate.instant('tmsx_fnd.tmsx_angular_components.list_grid_boolean_true')\n : translate.instant('tmsx_fnd.tmsx_angular_components.list_grid_boolean_false');\n }\n\n public getTimeFromDate(value: any) {\n let dateObj: Date;\n if (typeof value === 'string' && /^\\d{2}:\\d{2}(:\\d{2})?$/.test(value)) {\n const [h, m, s = '00'] = value.split(':');\n dateObj = new Date();\n dateObj.setHours(+h, +m, +s, 0);\n } else {\n dateObj = value instanceof Date ? value : new Date(value);\n }\n if (!isNaN(dateObj.getTime())) {\n return dateObj.toLocaleTimeString('pt-BR', {\n hour: '2-digit',\n minute: '2-digit',\n second: '2-digit',\n hour12: false\n }); // HH:mm:ss\n }\n return value;\n }\n\n public getDateTimeFromDate(value: any) {\n const dateObj = value instanceof Date ? value : new Date(value);\n if (!isNaN(dateObj.getTime())) {\n const datePart = dateObj.toLocaleDateString('pt-BR'); // DD/MM/AAAA\n const timePart = dateObj.toLocaleTimeString('pt-BR', {\n hour: '2-digit',\n minute: '2-digit',\n second: '2-digit',\n hour12: false\n }); // HH:mm:ss\n return `${datePart} ${timePart}`;\n }\n return value;\n }\n}\n","import { ChangeDetectorRef, Component, Injectable, Input, OnDestroy,\n OnInit, Output, ViewChild, EventEmitter, OnChanges, SimpleChanges } from '@angular/core';\nimport { LazyLoadEvent, MenuItem, SortMeta } from 'primeng/api';\nimport { Table } from 'primeng/table';\nimport { Subject } from 'rxjs';\nimport { GridConfig, FrozenColumn } from './grid.interface';\nimport { TranslateService } from '@ngx-translate/core';\n\nimport { HotkeysService, Hotkey } from 'angular2-hotkeys';\nimport { UtilsService } from '../../utils/services/utils.service';\n\n@Injectable({\n providedIn: 'root'\n})\n@Component({\n selector: 'tmsx-grid-editable-nested',\n templateUrl: './grid-editable-nested.component.html',\n styleUrls: ['./grid-editable-nested.component.scss']\n})\nexport class GridEditableNestedComponent implements OnDestroy, OnInit, OnChanges {\n @Input() public config!: GridConfig;\n @Input() nestedFunction!: (listParams: ListParams, rowData: any) => Promise<void>;\n @Output() openDetails = new EventEmitter<any>();\n @Output() paging = new EventEmitter<any>();\n @Output() delete = new EventEmitter<any>();\n @Output() save = new EventEmitter<any>();\n @Output() add = new EventEmitter<any>();\n\n @ViewChild(\"table\", { static: false }) public table!: Table;\n public clonedData: { [s: string]: any } = {};\n public gridLoading = true;\n public editing = false;\n public lazy = true;\n public deleteEnabled = false;\n public editEnabled = false;\n public addEnabled = false;\n public detailsEnabled = false;\n public calendarTooltipText = '';\n public currentListParams: ListParams = { page: 0, size: 5, sort: [] };\n\n public gridData: any[] = [];\n public gridColumns: any[] = [];\n public gridTotalRecords = 0;\n public selected: any[] = [];\n\n public nestedGridLoading = false;\n public frozenPosition = 'left';\n public frozenWidth = '200px';\n public frozenColumns: FrozenColumn[] = [];\n\n private readonly ngUnsubscribe = new Subject();\n\n constructor(\n private readonly changeDetectorRef: ChangeDetectorRef,\n private readonly translate: TranslateService,\n private readonly utils: UtilsService,\n private readonly hotkeysService: HotkeysService,\n ) {\n this.calendarTooltipText = this.translate.instant('tmsx_fnd.tmsx_angular_components.grid_editable_nested_calendar_required');\n }\n\n ngOnInit(): void {\n this.setGridData();\n this.setHotkeys();\n }\n\n ngOnChanges(changes: SimpleChanges): void {\n if (changes.config) {\n this.setGridData();\n }\n }\n\n public formatData(column: any, value: string) {\n return value;\n }\n\n private setGridData() {\n if (!this.config) {\n return;\n }\n const { data, size, columns, frozenPosition, frozenColumns, editing, lazy,\n deleteActionsEnabled, editEnabled, addEnabled, editActionsEnabled } = this.config;\n\n this.gridData = data ?? [];\n this.gridTotalRecords = size ?? 0;\n this.gridColumns = columns ?? [];\n this.frozenPosition = frozenPosition ?? 'left';\n this.frozenColumns = frozenColumns ?? [];\n this.frozenWidth = this.calculateFrozenWidth(this.frozenColumns);\n\n this.editing = !!editing;\n this.lazy = !!lazy;\n this.deleteEnabled = !!deleteActionsEnabled;\n this.editEnabled = !!editEnabled;\n this.addEnabled = !!addEnabled;\n this.detailsEnabled = !!editActionsEnabled;\n\n this.changeDetectorRef.detectChanges();\n this.nestedGridLoading = false;\n this.gridLoading = false;\n }\n\n private calculateFrozenWidth(frozenColumns: FrozenColumn[]): string {\n const gutter = 120;\n if (!(frozenColumns?.length)) {\n return '120px';\n }\n const totalWidth = frozenColumns.reduce((sum, col) => sum + gutter + (parseInt(col.width, 10) || 0), 0);\n return `${totalWidth}px`;\n }\n\n\n public getActions(data: any): MenuItem[] {\n return [\n {\n id: 'edit',\n label: this.translate.instant('tmsx_fnd.tmsx_angular_components.edit'),\n disabled: !this.detailsEnabled,\n command: () => {\n this.openRowDetails(data.id);\n },\n },\n { separator: true },\n {\n id: 'delete',\n label: this.translate.instant('tmsx_fnd.tmsx_angular_components.delete'),\n disabled: !this.deleteEnabled,\n command: () => {\n this.onDelete(data.id);\n },\n },\n ];\n }\n\n public updateGridData(event: LazyLoadEvent) {\n const size = event.rows ? event.rows : 10;\n const page = event.first ? event.first / size : 0;\n this.gridLoading = true;\n\n if (this.clonedData && Object.keys(this.clonedData).length) {\n this.clonedData = {};\n this.table.editingRowKeys = {};\n }\n\n this.paging.emit({ page, size });\n }\n\n public async updateNestedGridData(event: LazyLoadEvent, rowData: any) {\n const size = event.rows ? event.rows : 10;\n const page = event.first ? event.first / size : 0;\n const sort = event.multiSortMeta || [];\n\n rowData.nestedGridLoading = true;\n await this.nestedFunction({ page, size, sort }, rowData);\n }\n\n onTab(event: KeyboardEvent) {\n if (event.key !== 'Tab') {\n return;\n }\n\n event.preventDefault();\n\n const focusables = Array.from(\n document.querySelectorAll<HTMLElement>(\n 'p-cellEditor input, p-cellEditor textarea, p-cellEditor [tabindex=\"0\"]'\n )\n ).filter(el => el.offsetParent !== null);\n\n const currentIndex = focusables.indexOf(event.target as HTMLElement);\n\n let next: HTMLElement | undefined;\n\n if (event.shiftKey) {\n next = focusables[currentIndex - 1] || focusables[focusables.length - 1];\n } else {\n next = focusables[currentIndex + 1] || focusables[0];\n }\n\n if (next) {\n next.focus();\n }\n }\n\n\n public getRowIndex() {\n const page = this.currentListParams.page || 0;\n const size = this.currentListParams.size || 0;\n return page * size;\n }\n\n public getPageSize() {\n return this.currentListParams.size ?? 0;\n }\n\n public openRowDetails(id: string) {\n this.openDetails.emit(id);\n }\n\n public onDelete(id: string) {\n this.delete.emit(id);\n }\n\n public onAdd() {\n this.add.emit();\n }\n\n public ngOnDestroy() {\n this.ngUnsubscribe.next();\n this.ngUnsubscribe.complete();\n }\n\n public onEditSave() {\n this.saveAllRows();\n }\n\n public onEditCancel() {\n this.gridData.forEach((data) => {\n if (this.clonedData[data.id]) {\n const index = this.gridData.findIndex((row) => row.id === data.id);\n this.gridData[index] = this.clonedData[data.id];\n delete this.clonedData[data.id];\n }\n this.table.cancelRowEdit(data);\n });\n this.editing = false;\n }\n\n public initAllRowsEdit() {\n this.gridData.forEach((data) => {\n this.editing = true;\n this.table.initRowEdit(data);\n this.clonedData[data.id] = { ...data };\n });\n }\n\n public saveAllRows() {\n this.gridData.forEach((data) => {\n if (this.clonedData[data.id]) {\n delete this.clonedData[data.id];\n }\n this.table.cancelRowEdit(data);\n });\n this.editing = false;\n this.save.emit(this.gridData);\n }\n\n public formatRowData(field: any) {\n return field;\n }\n\n public filterOptions(event: any) {\n return event;\n }\n\n public getSpanProp(obj: any, path: any, type?: string): string {\n type = type?.toLowerCase();\n const value = this.utils.getProp(obj, path, type);\n if (value === '<span>0</span>' && type === 'decimal') {\n return '<span>0,00</span>';\n }\n if (!obj.tiposDados) {\n return value;\n }\n if ('MONETARIO' === obj.tiposDados[path]) {\n return 'R$ ' + value;\n }\n if ('PERCENTUAL' === obj.tiposDados[path]) {\n return value + ' %';\n }\n return value;\n }\n\n public setHotkeys() {\n this.hotkeysService.add(\n new Hotkey(\n 'alt+shift+n',\n () => {\n this.onAdd();\n return false;\n },\n ['INPUT', 'SELECT', 'TEXTAREA']\n )\n );\n }\n}\n\nexport interface ListParams {\n page?: number;\n size?: number;\n sort?: SortMeta[];\n filterQuery?: string;\n displayFields?: string[];\n}\n\nexport interface BodyParams {\n offset?: number;\n size?: number;\n orderBy?: string;\n filter?: string;\n displayfields?: string;\n}\n","import { NgModule } from '@angular/core';\n\nimport { TranslateModule } from '@ngx-translate/core';\nimport { GridEditableNestedComponent } from './grid-editable-nested.component';\nimport { TableModule as PrimeTableModule } from 'primeng/table';\n\nimport {\n ButtonModule,\n LoadingStateModule,\n LocaleModule,\n NumberInputModule,\n TableModule,\n TooltipModule,\n BreadcrumbModule,\n ControlErrorsModule,\n CustomFieldsModule,\n DynamicFormModule,\n EmptyStateModule,\n TokenListModule,\n} from '@seniorsistemas/angular-components';\n\nimport { ToastModule } from 'primeng/toast';\nimport { PanelModule } from 'primeng/panel';\nimport { FormsModule, ReactiveFormsModule } from '@angular/forms';\nimport { CommonModule } from '@angular/common';\nimport { InputTextModule } from 'primeng/inputtext';\nimport { ConfirmDialogModule } from 'primeng/confirmdialog';\nimport { CalendarModule } from 'primeng/calendar';\nimport { DropdownModule } from 'primeng/dropdown';\nimport { SharedModule } from 'primeng/api';\nimport { TooltipModule as PrimeTooltipModule } from 'primeng/tooltip';\nimport { AutoCompleteModule } from 'primeng/autocomplete';\nimport { CheckboxModule } from 'primeng/checkbox';\n\n@NgModule({\n imports: [\n CommonModule,\n LocaleModule.forChild(),\n TranslateModule.forChild(),\n ButtonModule,\n TableModule,\n TooltipModule,\n LoadingStateModule,\n NumberInputModule,\n BreadcrumbModule,\n ControlErrorsModule,\n CustomFieldsModule,\n DynamicFormModule,\n EmptyStateModule,\n TokenListModule,\n\n // PrimeNG modules\n ToastModule,\n PrimeTableModule,\n PrimeTooltipModule,\n PanelModule,\n InputTextModule,\n ConfirmDialogModule,\n CalendarModule,\n DropdownModule,\n SharedModule,\n AutoCompleteModule,\n CheckboxModule,\n\n // Angular modules\n FormsModule,\n ReactiveFormsModule\n ],\n declarations: [\n GridEditableNestedComponent,\n ],\n providers: [],\n exports: [\n GridEditableNestedComponent,\n ],\n})\nexport class GridEditableNestedModule {}\n","import {\n ModuleWithProviders,\n NgModule,\n InjectionToken\n} from \"@angular/core\";\n\nexport const HostProjectConfigsInjectionToken = new InjectionToken<HostProjectConfigs>(\"hostProjectConfigs\");\n\nexport interface HostProjectConfigs {\n domain: string;\n service: string;\n}\n\n@NgModule({})\nexport class TmsxAngularComponentsModule {\n static forRoot(config: HostProjectConfigs): ModuleWithProviders<TmsxAngularComponentsModule> {\n return {\n ngModule: TmsxAngularComponentsModule,\n providers: [\n {\n provide: HostProjectConfigsInjectionToken,\n useValue: config\n }\n ]\n };\n }\n}\n","export const fallback: any = {\n \"tmsx_fnd.tmsx_angular_components.add\": \"Adicionar\",\n \"tmsx_fnd.tmsx_angular_components.audit_created_by\": \"Criado por {{nome}} em {{data}} às {{hora}}.\",\n \"tmsx_fnd.tmsx_angular_components.audit_modified_by\": \"Modificado por {{nome}} em {{data}} às {{hora}}.\",\n \"tmsx_fnd.tmsx_angular_components.audit_inactivated_by\": \"Inativado por {{nome}} em {{data}} às {{hora}}.\",\n \"tmsx_fnd.tmsx_angular_components.condicao_valor_lookup_condicional_no_audit\": \"Sem informações de auditoria\",\n \"tmsx_fnd.tmsx_angular_components.delete\": \"Excluir\",\n \"tmsx_fnd.tmsx_angular_components.edit\": \"Editar\",\n \"tmsx_fnd.tmsx_angular_components.error_forbidden_description\": \"Você não tem permissão para acessar este recurso.\",\n \"tmsx_fnd.tmsx_angular_components.error_forbidden_title\": \"Acesso Negado\",\n \"tmsx_fnd.tmsx_angular_components.error_not_found_description\": \"O recurso solicitado não foi encontrado.\",\n \"tmsx_fnd.tmsx_angular_components.error_not_found_title\": \"Não Encontrado\",\n \"tmsx_fnd.tmsx_angular_components.error_unauthorized_description\": \"Você não está autorizado a acessar este recurso.\",\n \"tmsx_fnd.tmsx_angular_components.error_unauthorized_title\": \"Não Autorizado\",\n \"tmsx_fnd.tmsx_angular_components.grid_aninhada\": \"Grid Aninhada\",\n \"tmsx_fnd.tmsx_angular_components.grid_editable_nested_calendar_required\": \"É necessário informar a data\",\n \"tmsx_fnd.tmsx_angular_components.grid_editable_nested_cancelar\": \"Cancelar\",\n \"tmsx_fnd.tmsx_angular_components.grid_editable_nested_editar\": \"Editar valores\",\n \"tmsx_fnd.tmsx_angular_components.grid_editable_nested_paging\": \"registros encontrados\",\n \"tmsx_fnd.tmsx_angular_components.grid_editable_nested_salvar\": \"Salvar alterações\",\n \"tmsx_fnd.tmsx_angular_components.list_grid_boolean_false\": \"Não\",\n \"tmsx_fnd.tmsx_angular_components.list_grid_boolean_true\": \"Sim\",\n \"tmsx_fnd.tmsx_angular_components.list_grid_empty_field\": \"Não informado\",\n \"tmsx_fnd.tmsx_angular_components.painel_processamento\": \"Painel de Processamento\",\n \"tmsx_fnd.tmsx_angular_components.painel_processamento_api_error\": \"API de envio não definida\",\n \"tmsx_fnd.tmsx_angular_components.painel_processamento_status_failed\": \"Ocorreu um erro\",\n \"tmsx_fnd.tmsx_angular_components.painel_processamento_status_pending\": \"Pendente\",\n \"tmsx_fnd.tmsx_angular_components.painel_processamento_status_processing\": \"Processando\",\n \"tmsx_fnd.tmsx_angular_components.painel_processamento_status_success\": \"Finalizado com sucesso\",\n \"tmsx_fnd.tmsx_angular_components.registro\": \"Registro\",\n \"tmsx_fnd.tmsx_angular_components.showcase_painel_processamento_title\": \"Demonstração do Painel de Processamento\",\n \"tmsx_fnd.tmsx_angular_components.showcase_table_title\": \"Demonstração da Tabela\",\n \"tmsx_fnd.tmsx_angular_components.showcase_title\": \"Showcase\",\n \"tmsx_fnd.tmsx_angular_components.situacao_ativo_false\": \"Inativo\",\n \"tmsx_fnd.tmsx_angular_components.situacao_ativo_true\": \"Ativo\",\n \"tmsx_fnd.tmsx_angular_components.status\": \"Situação\",\n \"tmsx_fnd.tmsx_angular_components.total_records\": \"{{ value }} registros encontrados\"\n};\n"]}