@seniorsistemas/exclusion-process-component 0.0.1-40efacd8-8a6c-4d38-8102-8c977c14410a → 0.0.1-578162e8-6e18-48ad-b6a2-f63ffb1cd87a
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/bundles/seniorsistemas-exclusion-process-component.umd.js +124 -49
- package/bundles/seniorsistemas-exclusion-process-component.umd.js.map +1 -1
- package/bundles/seniorsistemas-exclusion-process-component.umd.min.js +1 -1
- package/bundles/seniorsistemas-exclusion-process-component.umd.min.js.map +1 -1
- package/esm2015/exclusion-details/exclusion-details.component.js +15 -5
- package/esm2015/exclusion-details/exclusion-details.module.js +4 -3
- package/esm2015/exclusion-details/protocols/show-details-information.js +1 -1
- package/esm2015/exclusions-list/exclusions-list.component.js +96 -50
- package/esm2015/services/filter.service.js +4 -1
- package/esm2015/services/logical-delete.service.js +24 -9
- package/esm5/exclusion-details/exclusion-details.component.js +15 -5
- package/esm5/exclusion-details/exclusion-details.module.js +4 -3
- package/esm5/exclusion-details/protocols/show-details-information.js +1 -1
- package/esm5/exclusions-list/exclusions-list.component.js +96 -50
- package/esm5/services/filter.service.js +4 -1
- package/esm5/services/logical-delete.service.js +24 -9
- package/exclusion-details/exclusion-details.component.d.ts +2 -0
- package/exclusion-details/protocols/show-details-information.d.ts +2 -1
- package/exclusions-list/exclusions-list.component.d.ts +23 -14
- package/fesm2015/seniorsistemas-exclusion-process-component.js +125 -50
- package/fesm2015/seniorsistemas-exclusion-process-component.js.map +1 -1
- package/fesm5/seniorsistemas-exclusion-process-component.js +125 -50
- package/fesm5/seniorsistemas-exclusion-process-component.js.map +1 -1
- package/package.json +1 -1
- package/seniorsistemas-exclusion-process-component.metadata.json +1 -1
- package/services/logical-delete.service.d.ts +5 -3
|
@@ -12,5 +12,5 @@
|
|
|
12
12
|
LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR
|
|
13
13
|
OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR
|
|
14
14
|
PERFORMANCE OF THIS SOFTWARE.
|
|
15
|
-
***************************************************************************** */var b,v=function(){return(v=Object.assign||function(e){for(var t,n=1,i=arguments.length;n<i;n++)for(var r in t=arguments[n])Object.prototype.hasOwnProperty.call(t,r)&&(e[r]=t[r]);return e}).apply(this,arguments)};function x(e,t,n,i){var r,o=arguments.length,s=o<3?t:null===i?i=Object.getOwnPropertyDescriptor(t,n):i;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)s=Reflect.decorate(e,t,n,i);else for(var a=e.length-1;a>=0;a--)(r=e[a])&&(s=(o<3?r(s):o>3?r(t,n,s):r(t,n))||s);return o>3&&s&&Object.defineProperty(t,n,s),s}function D(e,t){var n="function"==typeof Symbol&&e[Symbol.iterator];if(!n)return e;var i,r,o=n.call(e),s=[];try{for(;(void 0===t||t-- >0)&&!(i=o.next()).done;)s.push(i.value)}catch(e){r={error:e}}finally{try{i&&!i.done&&(n=o.return)&&n.call(o)}finally{if(r)throw r.error}}return s}function C(){for(var e=[],t=0;t<arguments.length;t++)e=e.concat(D(arguments[t]));return e}!function(e){e.PENDING="PENDING",e.PROCESSING="PROCESSING",e.ERROR="ERROR",e.SUCCESS="SUCCESS"}(b||(b={}));var _=new n.InjectionToken("projectConfigs"),T=function(){function e(e){this.projectConfigs=e}var t,i;return e.prototype.getDomain=function(){return this.projectConfigs.domain},e.prototype.getService=function(){return this.projectConfigs.service},e.prototype.getTranslationPrefix=function(){return this.projectConfigs.translationPrefix?this.projectConfigs.translationPrefix:this.projectConfigs.domain+"."+this.projectConfigs.service},e.ctorParameters=function(){return[{type:void 0,decorators:[{type:n.Inject,args:[_]}]}]},e=x([n.Injectable(),(t=0,i=n.Inject(_),function(e,n){i(e,n,t)})],e)}(),S=function(){function e(e,t,n,i){this.http=e,this.messageService=t,this.translate=n,this.projectConfigs=i;var r=i.getDomain()+"/"+i.getService();this.exclusionProcessUrl=r+"/entities/exclusionProcess",this.listExclusionsUrl=r+"/entities/exclusionProcess",this.defaultCatch=this.defaultCatch.bind(this)}return e.prototype.defaultCatch=function(){var e=this;return u.catchError((function(t){if(t){var n=t.status?String(t.status):"Error",i=t.error&&t.error.message||t.statusText||t.message||"Error";if(401===t.status){var r=e.projectConfigs.getTranslationPrefix();n=e.translate.instant(r+".error_unauthorized_title"),i=e.translate.instant(r+".error_unauthorized_description")}e.messageService.add({severity:"error",summary:n,detail:i})}return l.throwError(t)}))},e.prototype.getListQueryParams=function(e){var t=e.page,n=void 0===t?0:t,i=e.size,r=void 0===i?10:i,o=e.sort,s=void 0===o?[]:o,a=e.filterQuery,l=void 0===a?"":a,u=e.displayFields,p=void 0===u?[]:u,d=new c.HttpParams;return d=(d=d.append("size",String(r))).append("offset",String(n)),s&&s.length&&(d=d.append("orderby",s.map((function(e){return-1===e.order?e.field+" desc":e.field+" asc"})).join(", "))),l&&(d=d.append("filter",l)),p&&p.length&&(d=d.append("displayfields",p.join())),d},e.prototype.getProcessDetails=function(e){var t={filter:"recordId eq '"+e+"'"};return this.http.get(this.exclusionProcessUrl,{params:t}).pipe(this.defaultCatch()).pipe(u.map((function(e){var t;return(null===(t=e.contents)||void 0===t?void 0:t.length)?e.contents[0]:null})))},e.prototype.listExclusions=function(e,t){return void 0===t&&(t={}),t.filterQuery?t.filterQuery+=" and lower(entityName) eq lower('"+e+"')":t.filterQuery="lower(entityName) eq lower('"+e+"')",this.http.get(this.exclusionProcessUrl,{params:this.getListQueryParams(t)}).pipe(this.defaultCatch()).pipe(u.map((function(e){return e.contents.forEach((function(e){e.startDate&&(e.startDate=s(e.startDate).toDate()),e.finishDate&&(e.finishDate=s(e.finishDate).toDate())})),e})))},e.ctorParameters=function(){return[{type:c.HttpClient},{type:d.MessageService},{type:p.TranslateService},{type:T}]},e=x([n.Injectable()],e)}(),P=function(){function e(e,t,n,i,r){this.router=e,this.route=t,this.translate=n,this.logicalDeleteService=i,this.projectConfigs=r,this._entityName="",this._isVisible=!1,this._isLoading=!1,this._processSummaryData=[],this._processSummaryColumns=[],this.ngUnsubscribe=new l.Subject}return Object.defineProperty(e.prototype,"isVisible",{get:function(){return this._isVisible},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,"isLoading",{get:function(){return this._isLoading},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,"processSummaryData",{get:function(){return this._processSummaryData},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,"processSummaryColumns",{get:function(){return this._processSummaryColumns},enumerable:!0,configurable:!0}),e.prototype.ngOnInit=function(){var e=this;this.route.data.pipe(u.takeUntil(this.ngUnsubscribe)).subscribe((function(t){e.locale=t.localeConfig})),this._processSummaryColumns=this.getSummaryColumns()},e.prototype.ngOnDestroy=function(){this.ngUnsubscribe.next(),this.ngUnsubscribe.complete()},e.prototype.showDetails=function(e){this.processDetails=null,this._entityName=e.entityName,this._isVisible=!0,this.entityDescription=e.entityDescription,this.loadProcessDetails(e.recordId)},e.prototype.closeDetails=function(){this._isVisible=!1},e.prototype.openExclusions=function(){this.closeDetails(),this.router.navigate(["exclusions-list",this._entityName],{queryParams:{entityDescription:this.entityDescription}})},e.prototype.getRecordDescription=function(){var e;return(null===(e=this.processDetails)||void 0===e?void 0:e.description)?this.processDetails.description:""},e.prototype.getInicialDate=function(){var e;return(null===(e=this.processDetails)||void 0===e?void 0:e.startDate)?s(this.processDetails.startDate).format("DD/MM/YYYY HH:mm"):""},e.prototype.getFinishDate=function(){var e;return(null===(e=this.processDetails)||void 0===e?void 0:e.finishDate)?s(this.processDetails.finishDate).format("DD/MM/YYYY HH:mm"):""},e.prototype.isFinished=function(){var e;return!!(null===(e=this.processDetails)||void 0===e?void 0:e.finishDate)},e.prototype.getShowExclusionsButtonLabel=function(){return this.translate.instant(this.projectConfigs.getTranslationPrefix()+".logical_delete_show_deletions")},e.prototype.getCloseButtonLabel=function(){return this.translate.instant(this.projectConfigs.getTranslationPrefix()+".logical_delete_close")},e.prototype.getSummaryLabel=function(){return this.translate.instant(this.projectConfigs.getTranslationPrefix()+".logical_delete_summary")},e.prototype.getStartDateLabel=function(){return this.translate.instant(this.projectConfigs.getTranslationPrefix()+".logical_delete_start")},e.prototype.getFinishDateLabel=function(){return this.translate.instant(this.projectConfigs.getTranslationPrefix()+".logical_delete_finish")},e.prototype.getSidebarTitle=function(){return this.translate.instant(this.projectConfigs.getTranslationPrefix()+".logical_delete_details_title")},e.prototype.getSummaryColumns=function(){return[{field:"description",attributes:["description"],header:this.translate.instant(this.projectConfigs.getTranslationPrefix()+".logical_delete_description"),type:o.EnumColumnFieldType.STRING,style:{width:"300px"}},{field:"status",attributes:["status"],header:this.translate.instant(this.projectConfigs.getTranslationPrefix()+".logical_delete_status"),type:o.EnumColumnFieldType.ENUM,enumPrefix:this.projectConfigs.getTranslationPrefix()+".logical_delete_enum_exclusion_process_status_",style:{width:"100px"},tooltip:this.getColumnStatusTooltip,badgeConfigs:[{enumValue:b.ERROR,color:o.EnumBadgeColors.RED},{enumValue:b.PENDING,color:o.EnumBadgeColors.YELLOW},{enumValue:b.PROCESSING,color:o.EnumBadgeColors.BLUE},{enumValue:b.SUCCESS,color:o.EnumBadgeColors.GREEN}]}]},e.prototype.getColumnStatusTooltip=function(e){return e.errorMessage?e.errorMessage:null},e.prototype.loadProcessDetails=function(e){var t=this;this._isLoading=!0,this.logicalDeleteService.getProcessDetails(e).pipe(u.takeUntil(this.ngUnsubscribe)).pipe(u.finalize((function(){return t._isLoading=!1}))).subscribe((function(e){t.processDetails=e,t.loadProcessSummary(e)}))},e.prototype.loadProcessSummary=function(e){var t=[];e.groups.forEach((function(e){var n=e.steps.map((function(e){return{description:e.description,status:e.status,errorMessage:e.errorMessage}}));t.push.apply(t,C(n))})),this._processSummaryData=t},e.ctorParameters=function(){return[{type:a.Router},{type:a.ActivatedRoute},{type:p.TranslateService},{type:S},{type:T}]},x([n.Output()],e.prototype,"isVisible",null),x([n.Output()],e.prototype,"isLoading",null),x([n.Output()],e.prototype,"processSummaryData",null),x([n.Output()],e.prototype,"processSummaryColumns",null),x([n.Output()],e.prototype,"processDetails",void 0),x([n.Output()],e.prototype,"entityDescription",void 0),e=x([n.Component({selector:"s-exclusion-details",template:'<s-sidebar [visible]="isVisible" (visibleChange)="closeDetails()" [header]="getSidebarTitle()">\n <s-loading-state [loading]="isLoading">\n <p-panel [showHeader]="false" styleClass="s-exclusion-details-record-details-panel">\n <div class="s-exclusion-details-record-details-container">\n <div class="s-exclusion-details-record-icon-background">\n <i class="far fa-file-alt s-exclusion-details-record-icon"></i>\n </div>\n\n <div class="s-exclusion-details-record-details-recordinfo">\n <span class="s-exclusion-details-record-details-type">\n {{entityDescription}}\n </span>\n <span>\n {{getRecordDescription()}}\n </span>\n </div>\n\n <div class="s-exclusion-details-record-details-dateinfo">\n <span>\n {{getStartDateLabel()}}: {{getInicialDate()}}\n </span>\n <span *ngIf="isFinished()">\n {{getFinishDateLabel()}}: {{getFinishDate()}}\n </span>\n </div>\n </div>\n </p-panel>\n\n <p-panel>\n <p-header>\n {{getSummaryLabel()}}\n </p-header>\n <p-table\n [value]="processSummaryData"\n [columns]="processSummaryColumns"\n dataKey="id"\n [lazy]="false"\n [scrollable]="false"\n [paginator]="false">\n\n <ng-template pTemplate="colgroup" let-columns>\n <colgroup>\n <col *ngFor="let col of columns"\n [style.width]="col.width"\n />\n </colgroup>\n </ng-template>\n\n <ng-template pTemplate="header" let-columns>\n <tr>\n <th *ngFor="let col of columns"\n [id]="col.field"\n [ngStyle]="col.style" \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>\n <s-table-columns\n [columns]="columns"\n [rowValue]="rowData"\n [locale]="locale">\n </s-table-columns>\n </tr>\n </ng-template>\n </p-table>\n </p-panel>\n </s-loading-state>\n\n <s-footer>\n <div class="ui-fluid">\n <div class="ui-g">\n <s-button [label]="getShowExclusionsButtonLabel()" (onClick)="openExclusions()"></s-button>\n <s-button [label]="getCloseButtonLabel()" priority="link" (onClick)="closeDetails()"></s-button>\n </div>\n </div>\n </s-footer>\n</s-sidebar>\n',encapsulation:n.ViewEncapsulation.None,styles:[".s-exclusion-details-record-details-panel{margin-bottom:10px}.s-exclusion-details-record-details-container{display:-ms-flexbox;display:flex;-ms-flex-direction:row;flex-direction:row;-ms-flex-align:center;align-items:center}.s-exclusion-details-record-details-recordinfo{display:-ms-flexbox;display:flex;-ms-flex-direction:column;flex-direction:column;margin-left:10px;-ms-flex:1;flex:1}.s-exclusion-details-record-details-dateinfo{display:-ms-flexbox;display:flex;-ms-flex-direction:column;flex-direction:column;margin-left:10px;-ms-flex-align:end;align-items:flex-end;font-size:12px}.s-exclusion-details-record-details-type{color:#999}.s-exclusion-details-record-icon{font-size:22pt;color:#7e8d95}.s-exclusion-details-record-icon-background{display:-ms-flexbox;display:flex;-ms-flex-direction:column;flex-direction:column;-ms-flex-align:center;align-items:center;-ms-flex-pack:center;justify-content:center;padding:16px;background-color:#c1cad1;border-radius:50%;height:60px;width:60px}"]})],e)}(),E=function(){function e(){}return e=x([n.NgModule({imports:[t.CommonModule,o.SidebarModule,o.ButtonModule,i.PanelModule,r.TableModule,o.TableModule,o.LoadingStateModule,o.LocaleModule],declarations:[P],exports:[P],entryComponents:[P]})],e)}(),F=function(){function e(e,t){this.logicalDeleteConfigService=e,this.translate=t,this.numberTypes=[o.FieldType.Integer,o.FieldType.Double]}return e.prototype.getEnumQuery=function(e,t,n){return void 0===n&&(n=!1),n?"("+t.map((function(t){return e+" eq '"+t+"'"})).join(" or ")+")":e+" eq '"+t+"'"},e.prototype.createFilterString=function(e,t){var n=e.name,i=e.type,r=e.multiple;if("number"==typeof t)return n+" eq "+t;switch(i){case o.FieldType.Date:return n+" eq '"+s(t).format("YYYY-MM-DD")+"'";case o.FieldType.Time:return n+" eq '"+s(t).format("HH:mm:ss")+"'";case o.FieldType.DateTime:return n+" eq '"+s(t).format()+"'";case o.FieldType.LocalDateTime:return n+" eq '"+s(t).format("YYYY-MM-DD[T]HH:mm:ss.SSS")+"'";case o.FieldType.Enum:return this.getEnumQuery(n,t,r);case o.FieldType.String:return"containing(upper("+n+"), upper('"+t.replace(/'/g,"'")+"'))";case o.FieldType.Lookup:return n+" eq '"+t.id+"'";default:return n+" eq '"+t+"'"}},e.prototype.createFilterTokens=function(e,t){var n=this,i=e,r=i.name,a=i.type,l=i.label,u=i.searchFields,c=i.options,p=t;switch(a){case o.FieldType.Date:p=s(t).format("L");break;case o.FieldType.Time:p=s(t).format("LTS");break;case o.FieldType.LocalDateTime:case o.FieldType.DateTime:p=s(t).format("L LTS");break;case o.FieldType.Lookup:p=u.map((function(e){return n.getProp(t,e.name)})).join(" - ");break;case o.FieldType.Enum:p=Array.isArray(t)?t.map((function(e){return c.filter((function(t){return t.value===e}))[0].label})):c.filter((function(e){return e.value===p}))[0].label;break;case o.FieldType.Boolean:p=t?this.translate.instant(this.logicalDeleteConfigService.getTranslationPrefix()+".list_grid_boolean_true"):this.translate.instant(this.logicalDeleteConfigService.getTranslationPrefix()+".list_grid_boolean_false")}return{id:r,label:l+": "+p}},e.prototype.getSuggestionValue=function(e,t,n,i){var r=this;return e.map((function(e){return r.getProp(n,t+"."+e)})).reduce((function(e,t){return""+e+i+t}))+""},e.prototype.getProp=function(e,t){return t.split(".").reduce((function(e,t){return void 0===e[t]?"":e[t]}),e)},e.prototype.getLabelValueRequest=function(e,t){var n=this;return e.map((function(e){return v(v({},e),{label:t.map((function(t){return n.getProp(e,t)})).join(" - ")})}))},e.prototype.isValidFilter=function(e,t){var n=this.numberTypes.includes(e),i=t.match(/^\d+\b$/);return!(n&&!i)},e.ctorParameters=function(){return[{type:T},{type:p.TranslateService}]},e=x([n.Injectable()],e)}(),j=function(){function e(e,t,n,i,r,o,s){this.route=e,this.translate=t,this.formBuilder=n,this.changeDetectorRef=i,this.logicalDeleteService=r,this.filterService=o,this.projectConfigs=s,this.currentListParams={page:0,size:10,sort:[],filterData:{}},this.showLoader=!1,this.totalRecords=0,this.filtersPanelCollapsed=!0,this.searchTokens=[],this.serverError=!1,this.ngUnsubscribe=new l.Subject}return e.prototype.ngOnInit=function(){var e=this;this.filterFormGroup=this.getFormBuilder(),this.filterFields=this.getFilterFields(),this.gridColumns=this.getGridColumns(),this.route.data.pipe(u.takeUntil(this.ngUnsubscribe)).subscribe((function(t){e.locale=t.localeConfig})),this.route.params.pipe(u.takeUntil(this.ngUnsubscribe)).subscribe((function(t){e.entityName=t.entityName})),this.route.queryParams.pipe(u.takeUntil(this.ngUnsubscribe)).subscribe((function(t){e.entityDescription=t.entityDescription}))},e.prototype.ngOnDestroy=function(){this.ngUnsubscribe.next(),this.ngUnsubscribe.complete()},e.prototype.getFormBuilder=function(){return this.formBuilder.group({description:[void 0,f.Validators.compose([])],state:[void 0,f.Validators.compose([])],startDate:[{value:void 0,disabled:!1},f.Validators.compose([])],endDate:[{value:void 0,disabled:!1},f.Validators.compose([])]})},e.prototype.getGridColumns=function(){return[{field:"description",attributes:["description"],header:this.translate.instant(this.projectConfigs.getTranslationPrefix()+".logical_delete_description"),type:o.EnumColumnFieldType.STRING,style:{width:"300px"}},{field:"status",attributes:["status"],header:this.translate.instant(this.projectConfigs.getTranslationPrefix()+".logical_delete_status"),type:o.EnumColumnFieldType.ENUM,enumPrefix:this.projectConfigs.getTranslationPrefix()+".logical_delete_enum_exclusion_process_status_",style:{width:"100px"},badgeConfigs:[{enumValue:b.ERROR,color:o.EnumBadgeColors.RED},{enumValue:b.PENDING,color:o.EnumBadgeColors.YELLOW},{enumValue:b.PROCESSING,color:o.EnumBadgeColors.BLUE},{enumValue:b.SUCCESS,color:o.EnumBadgeColors.GREEN}]},{field:"startDate",attributes:["startDate"],header:this.translate.instant(this.projectConfigs.getTranslationPrefix()+".logical_delete_start"),type:o.EnumColumnFieldType.DATE,dateFormat:"DD/MM/YYYY HH:mm",style:{width:"100px"}},{field:"finishDate",attributes:["finishDate"],header:this.translate.instant(this.projectConfigs.getTranslationPrefix()+".logical_delete_finish"),type:o.EnumColumnFieldType.DATE,dateFormat:"DD/MM/YYYY HH:mm",style:{width:"100px"}}]},e.prototype.getFilterFields=function(){return[new o.FormField({type:o.FieldType.String,name:"description",label:this.translate.instant(this.projectConfigs.getTranslationPrefix()+".logical_delete_description")}),new o.FormField({type:o.FieldType.Enum,name:"state",label:this.translate.instant(this.projectConfigs.getTranslationPrefix()+".logical_delete_status"),placeholder:this.translate.instant(this.projectConfigs.getTranslationPrefix()+".logical_delete_status"),multiple:!0,options:[{label:this.translate.instant(this.projectConfigs.getTranslationPrefix()+".logical_delete_enum_exclusion_process_status_error"),value:b.ERROR},{label:this.translate.instant(this.projectConfigs.getTranslationPrefix()+".logical_delete_enum_exclusion_process_status_pending"),value:b.PENDING},{label:this.translate.instant(this.projectConfigs.getTranslationPrefix()+".logical_delete_enum_exclusion_process_status_processing"),value:b.PROCESSING},{label:this.translate.instant(this.projectConfigs.getTranslationPrefix()+".logical_delete_enum_exclusion_process_status_success"),value:b.SUCCESS}]}),new o.FormField({type:o.FieldType.Date,name:"startDate",label:this.translate.instant(this.projectConfigs.getTranslationPrefix()+".logical_delete_start")}),new o.FormField({type:o.FieldType.Date,name:"endDate",label:this.translate.instant(this.projectConfigs.getTranslationPrefix()+".logical_delete_finish")})]},e.prototype.getEmptyStateTitle=function(){return this.translate.instant(this.projectConfigs.getTranslationPrefix()+".logical_delete_empty_state_title")},e.prototype.getEmptyStateDescription=function(){return this.translate.instant(this.projectConfigs.getTranslationPrefix()+".logical_delete_empty_state_description")},e.prototype.getTitle=function(){return this.translate.instant(this.projectConfigs.getTranslationPrefix()+".logical_delete_list_title")},e.prototype.getDetailsButtonTitle=function(){return this.translate.instant(this.projectConfigs.getTranslationPrefix()+".logical_delete_details")},e.prototype.onSearch=function(){var e=this.filterFormGroup.getRawValue();this.filtersPanelCollapsed=!0,this.resetGrid({filterData:e})},e.prototype.onClear=function(){this.filterFormGroup.reset();var e=this.filterFormGroup.getRawValue();this.resetGrid({filterData:e})},e.prototype.onRemoveToken=function(e){this.filterFormGroup.get(e.id).setValue(void 0);var t=this.filterFormGroup.getRawValue();this.resetGrid({filterData:t})},e.prototype.onGridChange=function(e){var t=e.rows,n=e.first/t,i=e.multiSortMeta?e.multiSortMeta:[];return this.updateGrid({page:n,size:t,sort:i})},e.prototype.getFilterTokens=function(){var e=this,t=this.filterFormGroup.value;return this.filterFields.filter((function(e){var n=e.name;return null!=t[n]&&""!==t[n]})).map((function(n){return e.filterService.createFilterTokens(n,t[n.name])}))},e.prototype.getFilterQuery=function(){var e=this,t=this.currentListParams.filterData,n=["startDate","endDate"],i=this.filterFields.filter((function(e){var t=e.name;return!n.includes(t)})).filter((function(e){var n=e.name;return null!=t[n]})).map((function(n){return e.filterService.createFilterString(n,t[n.name])})).join(" and ");if(t.startDate&&t.endDate){var r="startDate between '"+s(t.startDate).format("YYYY-MM-DD")+"' and '"+s(t.endDate).format("YYYY-MM-DD")+"'";i?i+=" and "+r:i=r}return i},e.prototype.updateGrid=function(e){void 0===e&&(e={}),this.currentListParams=v(v({},this.currentListParams),e);var t=this.currentListParams,n=t.page,i=t.size,r=t.sort;this.searchTokens=this.getFilterTokens();var o=this.getFilterQuery(),s=C(["recordId"],this.gridColumns.map((function(e){return e.field})));this.listExclusions({page:n,size:i,sort:r,filterQuery:o,displayFields:s})},e.prototype.listExclusions=function(e){var t=this;this.showLoader=!0,this.serverError=!1,this.changeDetectorRef.detectChanges(),this.logicalDeleteService.listExclusions(this.entityName,e).pipe(u.takeUntil(this.ngUnsubscribe),u.catchError((function(e){throw e.status>=500&&e.status<600&&(t.serverError=!0),e})),u.finalize((function(){return t.showLoader=!1}))).subscribe((function(e){t.gridData=e.contents,t.totalRecords=e.totalElements}))},e.prototype.focusInput=function(e){var t=document.getElementById(""+e);t&&t.focus()},e.prototype.resetGrid=function(e){e&&(this.currentListParams=v(v({},this.currentListParams),e)),this.currentListParams=v(v({},this.currentListParams),{page:0,sort:[]}),this.table.reset()},e.prototype.onClickDetails=function(e){this.exclusionDetailsComponent.showDetails({recordId:e.recordId,entityDescription:this.entityDescription,entityName:this.entityName})},e.ctorParameters=function(){return[{type:a.ActivatedRoute},{type:p.TranslateService},{type:f.FormBuilder},{type:n.ChangeDetectorRef},{type:S},{type:F},{type:T}]},x([n.ViewChild("exclusionsTable")],e.prototype,"table",void 0),x([n.ViewChild(P)],e.prototype,"exclusionDetailsComponent",void 0),e=x([n.Component({template:'<div>\n <form [formGroup]="filterFormGroup" autocomplete="off">\n <p-panel\n *sLoadingState="showLoader"\n styleClass="form-group"\n [toggleable]="true"\n [(collapsed)]="filtersPanelCollapsed"\n (onAfterToggle)="focusInput(\'description\')"\n >\n <p-header>\n {{ \'filters\' | translate }}\n <s-token-list\n [tokens]="searchTokens"\n (tokenRemoved)="onRemoveToken($event)"\n [removableTokens]="true"\n ></s-token-list>\n </p-header>\n <div>\n <s-dynamic-form\n [fields]="filterFields"\n [form]="filterFormGroup"\n [errorMessages]="{ pattern: \'error_invalid\' | translate }"\n ></s-dynamic-form>\n </div>\n <p-footer>\n <div class="ui-g">\n <div class="ui-g-12">\n <button\n id="filter-button"\n class="ui-button"\n type="submit"\n pButton\n [label]="\'filter\' | translate"\n (click)="onSearch()"\n ></button>\n <button\n id="clear-button"\n class="ui-button ui-button-link"\n type="button"\n pButton\n [label]="\'clear\' | translate"\n (click)="onClear()"\n ></button>\n </div>\n </div>\n </p-footer>\n </p-panel>\n </form>\n <p-panel *sLoadingState="showLoader">\n <p-header>\n {{ getTitle() }}\n </p-header>\n <ng-container>\n <s-empty-state\n *ngIf="serverError && !showLoader"\n iconClass="fa fa-exclamation-triangle"\n title="{{ \'error_server_title\' | translate }}"\n primaryActionLabel="{{ \'error_server_try_again\' | translate }}"\n (primaryAction)="resetGrid()"\n description="{{ \'error_server_description\' | translate }}"\n ></s-empty-state>\n\n <s-empty-state\n *ngIf="!showLoader && !serverError && totalRecords === 0"\n [title]="getEmptyStateTitle()"\n [showPrimaryAction]="false"\n [description]="getEmptyStateDescription()"\n ></s-empty-state>\n\n <div class="ui-g">\n <div class="ui-g-12">\n <p-table\n #exclusionsTable\n id="exclusionsTable"\n [hidden]="totalRecords === 0 || serverError"\n [value]="gridData"\n [columns]="gridColumns"\n dataKey="id"\n [lazy]="true"\n [scrollable]="true"\n [resizableColumns]="true"\n sortMode="multiple"\n [paginator]="true"\n [totalRecords]="totalRecords"\n [rows]="10"\n rows="10"\n [rowsPerPageOptions]="[10, 20, 50, 100]"\n (onLazyLoad)="onGridChange($event)"\n >\n <ng-template pTemplate="colgroup" let-columns>\n <colgroup>\n <col\n *ngFor="let col of columns"\n [style.width]="col.width"\n />\n </colgroup>\n </ng-template>\n\n <ng-template\n pTemplate="header"\n let-columns\n >\n <tr>\n <th *ngFor="let col of columns"\n [id]="col.field"\n [pSortableColumn]="col.field"\n [ngStyle]="col.style"\n pResizableColumn\n >\n <div class="senior-header">\n <span class="senior-header-title">\n {{ col.header }}\n </span>\n <p-sortIcon [field]="col.field"></p-sortIcon>\n </div>\n </th>\n <th id="action-column" style="width: 100px">\n <div class="senior-header">\n <span class="senior-header-title">{{\'Ações\'}}</span>\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 <s-table-columns\n [columns]="columns"\n [rowValue]="rowData"\n [locale]="locale">\n </s-table-columns>\n <td style="width: 100px">\n <s-button\n id="details-button"\n priority="default"\n [label]="getDetailsButtonTitle()"\n [auxiliary]="true"\n (onClick)="onClickDetails(rowData)">\n </s-button>\n </td>\n </tr>\n </ng-template>\n\n <ng-template pTemplate="paginatorright">\n <s-table-paging\n [table]="exclusionsTable"\n [totalRecords]="totalRecords"\n ></s-table-paging>\n </ng-template>\n </p-table>\n </div>\n </div>\n </ng-container>\n </p-panel>\n</div>\n\n<s-exclusion-details></s-exclusion-details>',providers:[]})],e)}(),L=function(){function e(){}return e.prototype.canActivate=function(){return!0},e=x([n.Injectable()],e)}(),w=function(){function e(e,t){this.translate=e,this.projectConfigs=t}return e.prototype.resolve=function(){return this.translate.get(this.projectConfigs.getTranslationPrefix()+".logical_delete_list_title")},e.ctorParameters=function(){return[{type:p.TranslateService},{type:T}]},e=x([n.Injectable()],e)}(),R=function(){function e(e){this.permissionsService=e}return e.prototype.resolve=function(){return this.permissionsService.get()},e.ctorParameters=function(){return[{type:y.PermissionsService}]},e=x([n.Injectable()],e)}(),M=function(){function e(e){this.localeService=e}return e.prototype.resolve=function(){return this.localeService.get()},e.ctorParameters=function(){return[{type:o.LocaleService}]},e=x([n.Injectable()],e)}(),I=function(){function e(){}return e=x([n.Component({template:"<router-outlet></router-outlet>"})],e)}(),k=[{path:"exclusions-list",component:I,canActivate:[L],resolve:{allPermissions:R,localeConfig:M,routeTitle:w},children:[{path:":entityName",component:j}]}],N=function(){function e(){}return e=x([n.NgModule({imports:[a.RouterModule.forChild(k)],exports:[a.RouterModule],providers:[L,R,M,w],declarations:[I]})],e)}(),G=function(){function e(){}return e=x([n.NgModule({imports:[f.FormsModule,f.ReactiveFormsModule,p.TranslateModule,t.CommonModule,o.ControlErrorsModule,o.ButtonModule,i.PanelModule,h.InputTextModule,o.InfoSignModule,g.ConfirmDialogModule,m.DialogModule,r.TableModule,o.TableModule,o.LoadingStateModule,o.EmptyStateModule,o.DynamicFormModule,o.TokenListModule,o.LocaleModule.forChild(),E,N],declarations:[j],exports:[j],entryComponents:[j]})],e)}(),O=function(){function e(){}var t;return t=e,e.forRoot=function(e){return{ngModule:t,providers:[{provide:_,useValue:e}]}},e=t=x([n.NgModule({providers:[S,T,F]})],e)}();e.EmptyComponent=I,e.ExclusionDetailsComponent=P,e.ExclusionDetailsModule=E,e.ExclusionsListComponent=j,e.ExclusionsListFeatureRouting=N,e.ExclusionsListFeatureRoutingGuard=L,e.ExclusionsListFeatureRoutingListTitleResolver=w,e.ExclusionsListFeatureRoutingLocaleResolver=M,e.ExclusionsListFeatureRoutingPermissionResolver=R,e.ExclusionsListModule=G,e.LogicalDeleteModule=O,e.routes=k,e.ɵa=S,e.ɵb=T,e.ɵc=_,e.ɵe=E,e.ɵf=P,e.ɵg=S,e.ɵh=F,Object.defineProperty(e,"__esModule",{value:!0})}));
|
|
15
|
+
***************************************************************************** */var b,v=function(){return(v=Object.assign||function(e){for(var t,n=1,i=arguments.length;n<i;n++)for(var r in t=arguments[n])Object.prototype.hasOwnProperty.call(t,r)&&(e[r]=t[r]);return e}).apply(this,arguments)};function D(e,t,n,i){var r,o=arguments.length,s=o<3?t:null===i?i=Object.getOwnPropertyDescriptor(t,n):i;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)s=Reflect.decorate(e,t,n,i);else for(var a=e.length-1;a>=0;a--)(r=e[a])&&(s=(o<3?r(s):o>3?r(t,n,s):r(t,n))||s);return o>3&&s&&Object.defineProperty(t,n,s),s}function x(e,t){var n="function"==typeof Symbol&&e[Symbol.iterator];if(!n)return e;var i,r,o=n.call(e),s=[];try{for(;(void 0===t||t-- >0)&&!(i=o.next()).done;)s.push(i.value)}catch(e){r={error:e}}finally{try{i&&!i.done&&(n=o.return)&&n.call(o)}finally{if(r)throw r.error}}return s}function C(){for(var e=[],t=0;t<arguments.length;t++)e=e.concat(x(arguments[t]));return e}!function(e){e.PENDING="PENDING",e.PROCESSING="PROCESSING",e.ERROR="ERROR",e.SUCCESS="SUCCESS"}(b||(b={}));var T=new n.InjectionToken("projectConfigs"),_=function(){function e(e){this.projectConfigs=e}var t,i;return e.prototype.getDomain=function(){return this.projectConfigs.domain},e.prototype.getService=function(){return this.projectConfigs.service},e.prototype.getTranslationPrefix=function(){return this.projectConfigs.translationPrefix?this.projectConfigs.translationPrefix:this.projectConfigs.domain+"."+this.projectConfigs.service},e.ctorParameters=function(){return[{type:void 0,decorators:[{type:n.Inject,args:[T]}]}]},e=D([n.Injectable(),(t=0,i=n.Inject(T),function(e,n){i(e,n,t)})],e)}(),S=function(){function e(e,t,n,i){this.http=e,this.messageService=t,this.translate=n,this.projectConfigs=i;var r=i.getDomain()+"/"+i.getService();this.exclusionProcessUrl=r+"/entities/exclusionProcess",this.listExclusionsUrl=r+"/entities/exclusionProcess",this.defaultCatch=this.defaultCatch.bind(this)}return e.prototype.defaultCatch=function(){var e=this;return u.catchError((function(t){var n;if(t){var i=t.status?String(t.status):"Error",r=(null===(n=t.error)||void 0===n?void 0:n.message)||t.statusText||t.message;if(401===t.status){var o=e.projectConfigs.getTranslationPrefix();i=e.translate.instant(o+".error_unauthorized_title"),r=e.translate.instant(o+".error_unauthorized_description")}e.messageService.add({severity:"error",summary:i,detail:r||"Error"})}return l.throwError(t)}))},e.prototype.getListQueryParams=function(e){var t=e.page,n=void 0===t?0:t,i=e.size,r=void 0===i?10:i,o=e.sort,s=void 0===o?[]:o,a=e.filterQuery,l=void 0===a?"":a,u=e.displayFields,p=void 0===u?[]:u,d=new c.HttpParams;return d=(d=d.append("size",String(r))).append("offset",String(n)),s&&s.length&&(d=d.append("orderby",s.map((function(e){return-1===e.order?e.field+" desc":e.field+" asc"})).join(", "))),l&&(d=d.append("filter",l)),p&&p.length&&(d=d.append("displayfields",p.join())),d},e.prototype.getProcessDetails=function(e){return this.doGetProcessDetails({filter:"id eq '"+e+"'",size:"1",offset:"0"})},e.prototype.getLatestProcessDetails=function(e){return this.doGetProcessDetails({filter:"recordId eq '"+e+"'",size:"1",offset:"0",orderby:"startDate desc"})},e.prototype.doGetProcessDetails=function(e){return this.http.get(this.exclusionProcessUrl,{params:e}).pipe(this.defaultCatch()).pipe(u.map((function(e){var t;return(null===(t=e.contents)||void 0===t?void 0:t.length)?e.contents[0]:null})))},e.prototype.listExclusions=function(e,t){return void 0===t&&(t={}),t.filterQuery?t.filterQuery+=" and lower(entityName) eq lower('"+e+"')":t.filterQuery="lower(entityName) eq lower('"+e+"')",this.http.get(this.exclusionProcessUrl,{params:this.getListQueryParams(t)}).pipe(this.defaultCatch()).pipe(u.map((function(e){return e.contents.forEach((function(e){e.startDate&&(e.startDate=s(e.startDate).toDate()),e.finishDate&&(e.finishDate=s(e.finishDate).toDate())})),e})))},e.ctorParameters=function(){return[{type:c.HttpClient},{type:d.MessageService},{type:p.TranslateService},{type:_}]},e=D([n.Injectable()],e)}(),P=function(){function e(e,t,n,i,r){this.router=e,this.route=t,this.translate=n,this.logicalDeleteService=i,this.projectConfigs=r,this._entityName="",this._isVisible=!1,this._isLoading=!1,this._processSummaryData=[],this._processSummaryColumns=[],this.ngUnsubscribe=new l.Subject}return Object.defineProperty(e.prototype,"isVisible",{get:function(){return this._isVisible},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,"isLoading",{get:function(){return this._isLoading},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,"processSummaryData",{get:function(){return this._processSummaryData},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,"processSummaryColumns",{get:function(){return this._processSummaryColumns},enumerable:!0,configurable:!0}),e.prototype.ngOnInit=function(){var e=this;this.route.data.pipe(u.takeUntil(this.ngUnsubscribe)).subscribe((function(t){e.locale=t.localeConfig})),this._processSummaryColumns=this.getSummaryColumns()},e.prototype.ngOnDestroy=function(){this.ngUnsubscribe.next(),this.ngUnsubscribe.complete()},e.prototype.showDetails=function(e){this.processDetails=null,this._entityName=e.entityName,this._isVisible=!0,this._processSummaryData=[],this.entityDescription=e.entityDescription,this.loadProcessDetails(e)},e.prototype.closeDetails=function(){this._isVisible=!1},e.prototype.openExclusions=function(){this.closeDetails(),this.router.navigate(["exclusions-list",this._entityName],{queryParams:{entityDescription:this.entityDescription}})},e.prototype.getRecordDescription=function(){var e;return(null===(e=this.processDetails)||void 0===e?void 0:e.description)?this.processDetails.description:""},e.prototype.getInicialDate=function(){var e;return(null===(e=this.processDetails)||void 0===e?void 0:e.startDate)?s(this.processDetails.startDate).format("DD/MM/YYYY HH:mm"):""},e.prototype.getFinishDate=function(){var e;return(null===(e=this.processDetails)||void 0===e?void 0:e.finishDate)?s(this.processDetails.finishDate).format("DD/MM/YYYY HH:mm"):""},e.prototype.isFinished=function(){var e;return!!(null===(e=this.processDetails)||void 0===e?void 0:e.finishDate)},e.prototype.getShowExclusionsButtonLabel=function(){return this.translate.instant(this.projectConfigs.getTranslationPrefix()+".logical_delete_show_deletions")},e.prototype.getCloseButtonLabel=function(){return this.translate.instant(this.projectConfigs.getTranslationPrefix()+".logical_delete_close")},e.prototype.getSummaryLabel=function(){return this.translate.instant(this.projectConfigs.getTranslationPrefix()+".logical_delete_summary")},e.prototype.getStartDateLabel=function(){return this.translate.instant(this.projectConfigs.getTranslationPrefix()+".logical_delete_start")},e.prototype.getFinishDateLabel=function(){return this.translate.instant(this.projectConfigs.getTranslationPrefix()+".logical_delete_finish")},e.prototype.getSidebarTitle=function(){return this.translate.instant(this.projectConfigs.getTranslationPrefix()+".logical_delete_details_title")},e.prototype.getEmptyStateTitle=function(){return this.translate.instant(this.projectConfigs.getTranslationPrefix()+".logical_delete_empty_state_title")},e.prototype.getEmptyStateDescription=function(){return this.translate.instant(this.projectConfigs.getTranslationPrefix()+".logical_delete_empty_state_description")},e.prototype.getSummaryColumns=function(){return[{field:"description",attributes:["description"],header:this.translate.instant(this.projectConfigs.getTranslationPrefix()+".logical_delete_description"),type:o.EnumColumnFieldType.STRING,style:{width:"300px"}},{field:"status",attributes:["status"],header:this.translate.instant(this.projectConfigs.getTranslationPrefix()+".logical_delete_status"),type:o.EnumColumnFieldType.ENUM,enumPrefix:this.projectConfigs.getTranslationPrefix()+".logical_delete_enum_exclusion_process_status_",style:{width:"100px"},tooltip:this.getColumnStatusTooltip,badgeConfigs:[{enumValue:b.ERROR,color:o.EnumBadgeColors.RED},{enumValue:b.PENDING,color:o.EnumBadgeColors.YELLOW},{enumValue:b.PROCESSING,color:o.EnumBadgeColors.BLUE},{enumValue:b.SUCCESS,color:o.EnumBadgeColors.GREEN}]}]},e.prototype.getColumnStatusTooltip=function(e){return e.errorMessage?e.errorMessage:null},e.prototype.loadProcessDetails=function(e){var t=this;this._isLoading=!0,(e.processId?this.logicalDeleteService.getProcessDetails(e.processId):this.logicalDeleteService.getLatestProcessDetails(e.recordId)).pipe(u.takeUntil(this.ngUnsubscribe)).pipe(u.finalize((function(){return t._isLoading=!1}))).subscribe((function(e){t.processDetails=e,t.loadProcessSummary(e)}))},e.prototype.loadProcessSummary=function(e){var t=[];e.groups.forEach((function(e){var n=e.steps.map((function(e){return{description:e.description,status:e.status,errorMessage:e.errorMessage}}));t.push.apply(t,C(n))})),this._processSummaryData=t},e.ctorParameters=function(){return[{type:a.Router},{type:a.ActivatedRoute},{type:p.TranslateService},{type:S},{type:_}]},D([n.Output()],e.prototype,"isVisible",null),D([n.Output()],e.prototype,"isLoading",null),D([n.Output()],e.prototype,"processSummaryData",null),D([n.Output()],e.prototype,"processSummaryColumns",null),D([n.Output()],e.prototype,"processDetails",void 0),D([n.Output()],e.prototype,"entityDescription",void 0),e=D([n.Component({selector:"s-exclusion-details",template:'<s-sidebar [visible]="isVisible" (visibleChange)="closeDetails()" [header]="getSidebarTitle()">\n <s-loading-state [loading]="isLoading">\n <p-panel [showHeader]="false" styleClass="s-exclusion-details-record-details-panel">\n <div class="s-exclusion-details-record-details-container">\n <div class="s-exclusion-details-record-icon-background">\n <i class="far fa-file-alt s-exclusion-details-record-icon"></i>\n </div>\n\n <div class="s-exclusion-details-record-details-recordinfo">\n <span class="s-exclusion-details-record-details-type">\n {{entityDescription}}\n </span>\n <span>\n {{getRecordDescription()}}\n </span>\n </div>\n\n <div class="s-exclusion-details-record-details-dateinfo">\n <span>\n {{getStartDateLabel()}}: {{getInicialDate()}}\n </span>\n <span *ngIf="isFinished()">\n {{getFinishDateLabel()}}: {{getFinishDate()}}\n </span>\n </div>\n </div>\n </p-panel>\n\n <p-panel>\n <p-header>\n {{getSummaryLabel()}}\n </p-header>\n\n <s-empty-state\n *ngIf="processSummaryData && !processSummaryData.length"\n [title]="getEmptyStateTitle()"\n [description]="getEmptyStateDescription()">\n [showPrimaryAction]="false"\n </s-empty-state>\n\n <p-table\n [value]="processSummaryData"\n [columns]="processSummaryColumns"\n dataKey="id"\n [lazy]="false"\n [scrollable]="false"\n [paginator]="false"\n *ngIf="processSummaryData && processSummaryData.length">\n\n <ng-template pTemplate="colgroup" let-columns>\n <colgroup>\n <col *ngFor="let col of columns"\n [style.width]="col.width"\n />\n </colgroup>\n </ng-template>\n\n <ng-template pTemplate="header" let-columns>\n <tr>\n <th *ngFor="let col of columns"\n [id]="col.field"\n [ngStyle]="col.style"\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>\n <s-table-columns\n [columns]="columns"\n [rowValue]="rowData"\n [locale]="locale">\n </s-table-columns>\n </tr>\n </ng-template>\n </p-table>\n </p-panel>\n </s-loading-state>\n\n <s-footer>\n <div class="ui-fluid">\n <div class="ui-g">\n <s-button [label]="getShowExclusionsButtonLabel()" (onClick)="openExclusions()"></s-button>\n <s-button [label]="getCloseButtonLabel()" priority="link" (onClick)="closeDetails()"></s-button>\n </div>\n </div>\n </s-footer>\n</s-sidebar>\n',encapsulation:n.ViewEncapsulation.None,styles:[".s-exclusion-details-record-details-panel{margin-bottom:10px}.s-exclusion-details-record-details-container{display:-ms-flexbox;display:flex;-ms-flex-direction:row;flex-direction:row;-ms-flex-align:center;align-items:center}.s-exclusion-details-record-details-recordinfo{display:-ms-flexbox;display:flex;-ms-flex-direction:column;flex-direction:column;margin-left:10px;-ms-flex:1;flex:1}.s-exclusion-details-record-details-dateinfo{display:-ms-flexbox;display:flex;-ms-flex-direction:column;flex-direction:column;margin-left:10px;-ms-flex-align:end;align-items:flex-end;font-size:12px}.s-exclusion-details-record-details-type{color:#999}.s-exclusion-details-record-icon{font-size:22pt;color:#7e8d95}.s-exclusion-details-record-icon-background{display:-ms-flexbox;display:flex;-ms-flex-direction:column;flex-direction:column;-ms-flex-align:center;align-items:center;-ms-flex-pack:center;justify-content:center;padding:16px;background-color:#c1cad1;border-radius:50%;height:60px;width:60px}"]})],e)}(),E=function(){function e(){}return e=D([n.NgModule({imports:[t.CommonModule,o.SidebarModule,o.ButtonModule,i.PanelModule,r.TableModule,o.TableModule,o.LoadingStateModule,o.LocaleModule,o.EmptyStateModule],declarations:[P],exports:[P],entryComponents:[P]})],e)}(),F=function(){function e(e,t){this.logicalDeleteConfigService=e,this.translate=t,this.numberTypes=[o.FieldType.Integer,o.FieldType.Double]}return e.prototype.getEnumQuery=function(e,t,n){return void 0===n&&(n=!1),n?"("+t.map((function(t){return e+" eq '"+t+"'"})).join(" or ")+")":e+" eq '"+t+"'"},e.prototype.createFilterString=function(e,t){var n=e.name,i=e.type,r=e.multiple;if("number"==typeof t)return n+" eq "+t;switch(i){case o.FieldType.Date:return n+" eq '"+s(t).format("YYYY-MM-DD")+"'";case o.FieldType.Time:return n+" eq '"+s(t).format("HH:mm:ss")+"'";case o.FieldType.DateTime:return n+" eq '"+s(t).format()+"'";case o.FieldType.LocalDateTime:return n+" eq '"+s(t).format("YYYY-MM-DD[T]HH:mm:ss.SSS")+"'";case o.FieldType.Enum:return this.getEnumQuery(n,t,r);case o.FieldType.String:return"containing(upper("+n+"), upper('"+t.replace(/'/g,"'")+"'))";case o.FieldType.Lookup:return n+" eq '"+t.id+"'";default:return n+" eq '"+t+"'"}},e.prototype.createFilterTokens=function(e,t){var n=this,i=e,r=i.name,a=i.type,l=i.label,u=i.searchFields,c=i.options,p=t;switch(a){case o.FieldType.Date:p=s(t).format("L");break;case o.FieldType.Time:p=s(t).format("LTS");break;case o.FieldType.LocalDateTime:case o.FieldType.DateTime:p=s(t).format("L LTS");break;case o.FieldType.Lookup:p=u.map((function(e){return n.getProp(t,e.name)})).join(" - ");break;case o.FieldType.Enum:p=Array.isArray(t)?t.map((function(e){return c.filter((function(t){return t.value===e}))[0].label})):c.filter((function(e){return e.value===p}))[0].label;break;case o.FieldType.Boolean:p=t?this.translate.instant(this.logicalDeleteConfigService.getTranslationPrefix()+".list_grid_boolean_true"):this.translate.instant(this.logicalDeleteConfigService.getTranslationPrefix()+".list_grid_boolean_false");break;default:p=t}return{id:r,label:l+": "+p}},e.prototype.getSuggestionValue=function(e,t,n,i){var r=this;return e.map((function(e){return r.getProp(n,t+"."+e)})).reduce((function(e,t){return""+e+i+t}))+""},e.prototype.getProp=function(e,t){return t.split(".").reduce((function(e,t){return void 0===e[t]?"":e[t]}),e)},e.prototype.getLabelValueRequest=function(e,t){var n=this;return e.map((function(e){return v(v({},e),{label:t.map((function(t){return n.getProp(e,t)})).join(" - ")})}))},e.prototype.isValidFilter=function(e,t){var n=this.numberTypes.includes(e),i=t.match(/^\d+\b$/);return!(n&&!i)},e.ctorParameters=function(){return[{type:_},{type:p.TranslateService}]},e=D([n.Injectable()],e)}(),j=function(){function e(e,t,n,i,r,o,s){this.route=e,this.translate=t,this.formBuilder=n,this.changeDetectorRef=i,this.logicalDeleteService=r,this.filterService=o,this.projectConfigs=s,this.currentListParams={page:0,size:10,sort:[],filterData:{}},this.showLoader=!1,this.totalRecords=0,this.filtersPanelCollapsed=!0,this.searchTokens=[],this.serverError=!1,this.ngUnsubscribe=new l.Subject}return e.prototype.ngOnInit=function(){var e=this;this.filterFormGroup=this.getFormBuilder(),this.filterFields=this.getFilterFields(),this.gridColumns=this.getGridColumns(),this.route.data.pipe(u.takeUntil(this.ngUnsubscribe)).subscribe((function(t){e.locale=t.localeConfig})),this.route.params.pipe(u.takeUntil(this.ngUnsubscribe)).subscribe((function(t){e.entityName=t.entityName,e.showBasedOnRoute()})),this.route.queryParams.pipe(u.takeUntil(this.ngUnsubscribe)).subscribe((function(t){e.entityDescription=t.entityDescription,e.processId=t.processId,e.showBasedOnRoute()}))},e.prototype.showBasedOnRoute=function(){this.entityName&&this.entityDescription&&this.processId&&this.exclusionDetailsComponent.showDetails({processId:this.processId,entityDescription:this.entityDescription,entityName:this.entityName})},e.prototype.ngOnDestroy=function(){this.ngUnsubscribe.next(),this.ngUnsubscribe.complete()},e.prototype.getFormBuilder=function(){return this.formBuilder.group({description:[void 0,f.Validators.compose([])],status:[void 0,f.Validators.compose([])],startDate:[{value:void 0,disabled:!1},f.Validators.compose([])],endDate:[{value:void 0,disabled:!1},f.Validators.compose([])]})},e.prototype.getGridColumns=function(){return[{field:"description",attributes:["description"],header:this.translate.instant(this.projectConfigs.getTranslationPrefix()+".logical_delete_description"),type:o.EnumColumnFieldType.STRING,style:{width:"300px"}},{field:"status",attributes:["status"],header:this.translate.instant(this.projectConfigs.getTranslationPrefix()+".logical_delete_status"),type:o.EnumColumnFieldType.ENUM,enumPrefix:this.projectConfigs.getTranslationPrefix()+".logical_delete_enum_exclusion_process_status_",style:{width:"100px"},badgeConfigs:[{enumValue:b.ERROR,color:o.EnumBadgeColors.RED},{enumValue:b.PENDING,color:o.EnumBadgeColors.YELLOW},{enumValue:b.PROCESSING,color:o.EnumBadgeColors.BLUE},{enumValue:b.SUCCESS,color:o.EnumBadgeColors.GREEN}]},{field:"startDate",attributes:["startDate"],header:this.translate.instant(this.projectConfigs.getTranslationPrefix()+".logical_delete_start"),type:o.EnumColumnFieldType.DATE,dateFormat:"DD/MM/YYYY HH:mm",style:{width:"100px"}},{field:"finishDate",attributes:["finishDate"],header:this.translate.instant(this.projectConfigs.getTranslationPrefix()+".logical_delete_finish"),type:o.EnumColumnFieldType.DATE,dateFormat:"DD/MM/YYYY HH:mm",style:{width:"100px"}}]},e.prototype.getFilterFields=function(){var e=this.projectConfigs.getTranslationPrefix();return[new o.FormField({type:o.FieldType.String,name:"description",label:this.translate.instant(e+".logical_delete_description")}),new o.FormField({type:o.FieldType.Enum,name:"status",label:this.translate.instant(e+".logical_delete_status"),placeholder:this.translate.instant(e+".logical_delete_status"),multiple:!0,options:[{label:this.translate.instant(e+".logical_delete_enum_exclusion_process_status_error"),value:b.ERROR},{label:this.translate.instant(e+".logical_delete_enum_exclusion_process_status_pending"),value:b.PENDING},{label:this.translate.instant(e+".logical_delete_enum_exclusion_process_status_processing"),value:b.PROCESSING},{label:this.translate.instant(e+".logical_delete_enum_exclusion_process_status_success"),value:b.SUCCESS}]}),new o.FormField({type:o.FieldType.Date,name:"startDate",label:this.translate.instant(e+".logical_delete_start")}),new o.FormField({type:o.FieldType.Date,name:"endDate",label:this.translate.instant(e+".logical_delete_finish")})]},e.prototype.getEmptyStateTitle=function(){return this.translate.instant(this.projectConfigs.getTranslationPrefix()+".logical_delete_empty_state_title")},e.prototype.getEmptyStateDescription=function(){return this.translate.instant(this.projectConfigs.getTranslationPrefix()+".logical_delete_empty_state_description")},e.prototype.getTitle=function(){return this.translate.instant(this.projectConfigs.getTranslationPrefix()+".logical_delete_list_title")},e.prototype.getDetailsButtonTitle=function(){return this.translate.instant(this.projectConfigs.getTranslationPrefix()+".logical_delete_details")},e.prototype.getFiltersTitle=function(){return this.translate.instant(this.projectConfigs.getTranslationPrefix()+".filters")},e.prototype.getFilterButtonTitle=function(){return this.translate.instant(this.projectConfigs.getTranslationPrefix()+".filter")},e.prototype.getClearButtonTitle=function(){return this.translate.instant(this.projectConfigs.getTranslationPrefix()+".clear")},e.prototype.getErrorInvalid=function(){return this.translate.instant(this.projectConfigs.getTranslationPrefix()+".error_invalid")},e.prototype.getErrorServerTitle=function(){return this.translate.instant(this.projectConfigs.getTranslationPrefix()+".error_server_title")},e.prototype.getErrorServerDescription=function(){return this.translate.instant(this.projectConfigs.getTranslationPrefix()+".error_server_description")},e.prototype.getActionsColumnLabel=function(){return this.translate.instant(this.projectConfigs.getTranslationPrefix()+".actions")},e.prototype.onSearch=function(){var e=this.filterFormGroup.getRawValue();this.filtersPanelCollapsed=!0,this.resetGrid({filterData:e})},e.prototype.onClear=function(){this.filterFormGroup.reset();var e=this.filterFormGroup.getRawValue();this.resetGrid({filterData:e})},e.prototype.onRemoveToken=function(e){this.filterFormGroup.get(e.id).setValue(void 0);var t=this.filterFormGroup.getRawValue();this.resetGrid({filterData:t})},e.prototype.onGridChange=function(e){var t=e.rows,n=e.first/t,i=e.multiSortMeta?e.multiSortMeta:[];return this.updateGrid({page:n,size:t,sort:i})},e.prototype.getFilterTokens=function(){var e=this,t=this.filterFormGroup.value;return this.filterFields.filter((function(e){var n=e.name;return void 0!==t[n]&&""!==t[n]&&null!==t[n]})).map((function(n){return e.filterService.createFilterTokens(n,t[n.name])}))},e.prototype.getFilterQuery=function(){var e,t=this,n=this.currentListParams.filterData,i=["startDate","endDate"],r=this.filterFields.filter((function(e){var t=e.name;return!i.includes(t)})).filter((function(e){var t=e.name;return void 0!==n[t]&&""!==n[t]&&null!==n[t]})).map((function(e){return t.filterService.createFilterString(e,n[e.name])})).join(" and ");if(n.startDate&&n.endDate)e="startDate between '"+s(n.startDate).format("YYYY-MM-DD")+"T00:00:00Z' and '"+s(n.endDate).format("YYYY-MM-DD")+"T23:59:59Z'";else if(n.startDate){e="startDate >= '"+s(n.startDate).format("YYYY-MM-DD")+"T00:00:00Z'"}else if(n.endDate){e="finishDate <= '"+s(n.endDate).format("YYYY-MM-DD")+"T23:59:59Z'"}return e&&(r+=r?" and "+e:e),r},e.prototype.updateGrid=function(e){void 0===e&&(e={}),this.currentListParams=v(v({},this.currentListParams),e);var t=this.currentListParams,n=t.page,i=t.size,r=t.sort;this.searchTokens=this.getFilterTokens();var o=this.getFilterQuery(),s=C(["recordId"],this.gridColumns.map((function(e){return e.field})));this.listExclusions({page:n,size:i,sort:r,filterQuery:o,displayFields:s})},e.prototype.listExclusions=function(e){var t=this;this.showLoader=!0,this.serverError=!1,this.changeDetectorRef.detectChanges(),this.logicalDeleteService.listExclusions(this.entityName,e).pipe(u.takeUntil(this.ngUnsubscribe),u.catchError((function(e){throw e.status>=500&&e.status<600&&(t.serverError=!0),e})),u.finalize((function(){return t.showLoader=!1}))).subscribe((function(e){t.gridData=e.contents,t.totalRecords=e.totalElements}))},e.prototype.focusInput=function(e){var t=document.getElementById(""+e);t&&t.focus()},e.prototype.resetGrid=function(e){e&&(this.currentListParams=v(v({},this.currentListParams),e)),this.currentListParams=v(v({},this.currentListParams),{page:0,sort:[]}),this.table.reset()},e.prototype.onClickDetails=function(e){this.exclusionDetailsComponent.showDetails({processId:e.id,entityDescription:this.entityDescription,entityName:this.entityName})},e.ctorParameters=function(){return[{type:a.ActivatedRoute},{type:p.TranslateService},{type:f.FormBuilder},{type:n.ChangeDetectorRef},{type:S},{type:F},{type:_}]},D([n.ViewChild("exclusionsTable")],e.prototype,"table",void 0),D([n.ViewChild(P)],e.prototype,"exclusionDetailsComponent",void 0),e=D([n.Component({template:'<div>\n <form [formGroup]="filterFormGroup" autocomplete="off">\n <p-panel\n *sLoadingState="showLoader"\n styleClass="form-group"\n [toggleable]="true"\n [(collapsed)]="filtersPanelCollapsed"\n (onAfterToggle)="focusInput(\'description\')"\n >\n <p-header>\n {{ getFiltersTitle() }}\n <s-token-list\n [tokens]="searchTokens"\n (tokenRemoved)="onRemoveToken($event)"\n [removableTokens]="true"\n ></s-token-list>\n </p-header>\n <div>\n <s-dynamic-form\n [fields]="filterFields"\n [form]="filterFormGroup"\n [errorMessages]="{ pattern: getErrorInvalid() }"\n ></s-dynamic-form>\n </div>\n <p-footer>\n <div class="ui-g">\n <div class="ui-g-12">\n <button\n id="filter-button"\n class="ui-button"\n type="submit"\n pButton\n [label]="getFilterButtonTitle()"\n (click)="onSearch()"\n ></button>\n <button\n id="clear-button"\n class="ui-button ui-button-link"\n type="button"\n pButton\n [label]="getClearButtonTitle()"\n (click)="onClear()"\n ></button>\n </div>\n </div>\n </p-footer>\n </p-panel>\n </form>\n <p-panel *sLoadingState="showLoader">\n <p-header>\n {{ getTitle() }}\n </p-header>\n <ng-container>\n <s-empty-state\n *ngIf="serverError && !showLoader"\n iconClass="fa fa-exclamation-triangle"\n title="{{ getErrorServerTitle() | translate }}"\n primaryActionLabel="{{ \'error_server_try_again\' | translate }}"\n (primaryAction)="resetGrid()"\n description="{{ getErrorServerDescription() | translate }}"\n ></s-empty-state>\n\n <s-empty-state\n *ngIf="!showLoader && !serverError && totalRecords === 0"\n [title]="getEmptyStateTitle()"\n [showPrimaryAction]="false"\n [description]="getEmptyStateDescription()"\n ></s-empty-state>\n\n <div class="ui-g">\n <div class="ui-g-12">\n <p-table\n #exclusionsTable\n id="exclusionsTable"\n [hidden]="totalRecords === 0 || serverError"\n [value]="gridData"\n [columns]="gridColumns"\n dataKey="id"\n [lazy]="true"\n [scrollable]="true"\n [resizableColumns]="true"\n sortMode="multiple"\n [paginator]="true"\n [totalRecords]="totalRecords"\n [rows]="10"\n rows="10"\n [rowsPerPageOptions]="[10, 20, 50, 100]"\n (onLazyLoad)="onGridChange($event)"\n >\n <ng-template pTemplate="colgroup" let-columns>\n <colgroup>\n <col\n *ngFor="let col of columns"\n [style.width]="col.width"\n />\n </colgroup>\n </ng-template>\n\n <ng-template\n pTemplate="header"\n let-columns\n >\n <tr>\n <th *ngFor="let col of columns"\n [id]="col.field"\n [pSortableColumn]="col.field"\n [ngStyle]="col.style"\n pResizableColumn\n >\n <div class="senior-header">\n <span class="senior-header-title">\n {{ col.header }}\n </span>\n <p-sortIcon [field]="col.field"></p-sortIcon>\n </div>\n </th>\n <th id="action-column" style="width: 100px">\n <div class="senior-header">\n <span class="senior-header-title">{{ getActionsColumnLabel() }}</span>\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 <s-table-columns\n [columns]="columns"\n [rowValue]="rowData"\n [locale]="locale">\n </s-table-columns>\n <td style="width: 100px">\n <s-button\n id="details-button"\n priority="default"\n [label]="getDetailsButtonTitle()"\n [auxiliary]="true"\n (onClick)="onClickDetails(rowData)">\n </s-button>\n </td>\n </tr>\n </ng-template>\n\n <ng-template pTemplate="paginatorright">\n <s-table-paging\n [table]="exclusionsTable"\n [totalRecords]="totalRecords"\n ></s-table-paging>\n </ng-template>\n </p-table>\n </div>\n </div>\n </ng-container>\n </p-panel>\n</div>\n\n<s-exclusion-details></s-exclusion-details>\n',providers:[]})],e)}(),L=function(){function e(){}return e.prototype.canActivate=function(){return!0},e=D([n.Injectable()],e)}(),w=function(){function e(e,t){this.translate=e,this.projectConfigs=t}return e.prototype.resolve=function(){return this.translate.get(this.projectConfigs.getTranslationPrefix()+".logical_delete_list_title")},e.ctorParameters=function(){return[{type:p.TranslateService},{type:_}]},e=D([n.Injectable()],e)}(),M=function(){function e(e){this.permissionsService=e}return e.prototype.resolve=function(){return this.permissionsService.get()},e.ctorParameters=function(){return[{type:y.PermissionsService}]},e=D([n.Injectable()],e)}(),R=function(){function e(e){this.localeService=e}return e.prototype.resolve=function(){return this.localeService.get()},e.ctorParameters=function(){return[{type:o.LocaleService}]},e=D([n.Injectable()],e)}(),I=function(){function e(){}return e=D([n.Component({template:"<router-outlet></router-outlet>"})],e)}(),k=[{path:"exclusions-list",component:I,canActivate:[L],resolve:{allPermissions:M,localeConfig:R,routeTitle:w},children:[{path:":entityName",component:j}]}],Y=function(){function e(){}return e=D([n.NgModule({imports:[a.RouterModule.forChild(k)],exports:[a.RouterModule],providers:[L,M,R,w],declarations:[I]})],e)}(),N=function(){function e(){}return e=D([n.NgModule({imports:[f.FormsModule,f.ReactiveFormsModule,p.TranslateModule,t.CommonModule,o.ControlErrorsModule,o.ButtonModule,i.PanelModule,h.InputTextModule,o.InfoSignModule,g.ConfirmDialogModule,m.DialogModule,r.TableModule,o.TableModule,o.LoadingStateModule,o.EmptyStateModule,o.DynamicFormModule,o.TokenListModule,o.LocaleModule.forChild(),E,Y],declarations:[j],exports:[j],entryComponents:[j]})],e)}(),G=function(){function e(){}var t;return t=e,e.forRoot=function(e){return{ngModule:t,providers:[{provide:T,useValue:e}]}},e=t=D([n.NgModule({providers:[S,_,F]})],e)}();e.EmptyComponent=I,e.ExclusionDetailsComponent=P,e.ExclusionDetailsModule=E,e.ExclusionsListComponent=j,e.ExclusionsListFeatureRouting=Y,e.ExclusionsListFeatureRoutingGuard=L,e.ExclusionsListFeatureRoutingListTitleResolver=w,e.ExclusionsListFeatureRoutingLocaleResolver=R,e.ExclusionsListFeatureRoutingPermissionResolver=M,e.ExclusionsListModule=N,e.LogicalDeleteModule=G,e.routes=k,e.ɵa=S,e.ɵb=_,e.ɵc=T,e.ɵe=E,e.ɵf=P,e.ɵg=S,e.ɵh=F,Object.defineProperty(e,"__esModule",{value:!0})}));
|
|
16
16
|
//# sourceMappingURL=seniorsistemas-exclusion-process-component.umd.min.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../node_modules/tslib/tslib.es6.js","ng://@seniorsistemas/exclusion-process-component/enums/enum-exclusion-process-status.ts","ng://@seniorsistemas/exclusion-process-component/models/project-config.ts","ng://@seniorsistemas/exclusion-process-component/services/logical-delete-config.service.ts","ng://@seniorsistemas/exclusion-process-component/services/logical-delete.service.ts","ng://@seniorsistemas/exclusion-process-component/exclusion-details/exclusion-details.component.ts","ng://@seniorsistemas/exclusion-process-component/exclusion-details/exclusion-details.module.ts","ng://@seniorsistemas/exclusion-process-component/services/filter.service.ts","ng://@seniorsistemas/exclusion-process-component/exclusions-list/exclusions-list.component.ts","ng://@seniorsistemas/exclusion-process-component/exclusions-list/exclusions-list.routing.ts","ng://@seniorsistemas/exclusion-process-component/exclusions-list/exclusions-list.module.ts","ng://@seniorsistemas/exclusion-process-component/logical-delete.module.ts"],"names":["EnumExclusionProcessStatus","__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","__read","o","m","Symbol","iterator","e","ar","next","done","push","value","error","__spread","concat","ProjectConfigsInjectionToken","InjectionToken","LogicalDeleteConfigService","projectConfigs","paramIndex","decorator","getDomain","domain","getService","service","getTranslationPrefix","translationPrefix","Inject","args","Injectable","LogicalDeleteService","http","messageService","translate","entityUrl","exclusionProcessUrl","listExclusionsUrl","defaultCatch","bind","_this","catchError","err","summary","status","String","detail","message","statusText","prefix","instant","add","severity","throwError","getListQueryParams","listParams","_a","page","_b","size","_c","sort","_d","filterQuery","_e","displayFields","params","HttpParams","append","map","order","field","join","getProcessDetails","recordId","filterParams","filter","get","pipe","contents","listExclusions","entityName","forEach","startDate","moment","toDate","finishDate","HttpClient","MessageService","TranslateService","ExclusionDetailsComponent","router","route","logicalDeleteService","_entityName","_isVisible","_isLoading","_processSummaryData","_processSummaryColumns","ngUnsubscribe","Subject","ngOnInit","data","takeUntil","subscribe","locale","localeConfig","getSummaryColumns","ngOnDestroy","complete","showDetails","details","processDetails","entityDescription","loadProcessDetails","closeDetails","openExclusions","navigate","queryParams","getRecordDescription","description","getInicialDate","format","getFinishDate","isFinished","getShowExclusionsButtonLabel","getCloseButtonLabel","getSummaryLabel","getStartDateLabel","getFinishDateLabel","getSidebarTitle","attributes","header","type","EnumColumnFieldType","STRING","style","width","ENUM","enumPrefix","tooltip","getColumnStatusTooltip","badgeConfigs","enumValue","ERROR","color","EnumBadgeColors","RED","PENDING","YELLOW","PROCESSING","BLUE","SUCCESS","GREEN","rowValue","errorMessage","finalize","process","loadProcessSummary","stepLogs","groups","group","steps","step","Router","ActivatedRoute","Output","Component","selector","template","encapsulation","ViewEncapsulation","None","ExclusionDetailsModule","NgModule","imports","CommonModule","SidebarModule","ButtonModule","PanelModule","PrimeTableModule","TableModule","LoadingStateModule","LocaleModule","declarations","exports","entryComponents","FilterService","logicalDeleteConfigService","numberTypes","FieldType","Integer","Double","getEnumQuery","name","multiple","selected","createFilterString","formField","Date","Time","DateTime","LocalDateTime","Enum","replace","Lookup","id","createFilterTokens","label","searchFields","options","labelValue","getProp","Array","isArray","element","en","option","Boolean","getSuggestionValue","ownerEntity","separator","reduce","acc","val","obj","path","split","result","prop","undefined","getLabelValueRequest","item","isValidFilter","isTypeNumber","includes","isNumber","match","ExclusionsListComponent","formBuilder","changeDetectorRef","filterService","currentListParams","filterData","showLoader","totalRecords","filtersPanelCollapsed","searchTokens","serverError","filterFormGroup","getFormBuilder","filterFields","getFilterFields","gridColumns","getGridColumns","Validators","compose","state","disabled","endDate","DATE","dateFormat","FormField","placeholder","getEmptyStateTitle","getEmptyStateDescription","getTitle","getDetailsButtonTitle","onSearch","getRawValue","resetGrid","onClear","reset","onRemoveToken","token","setValue","onGridChange","event","rows","first","multiSortMeta","updateGrid","getFilterTokens","getFilterQuery","dateFields","dateQuery","column","detectChanges","list","gridData","totalElements","focusInput","elementId","document","getElementById","focus","table","onClickDetails","rowData","exclusionDetailsComponent","FormBuilder","ChangeDetectorRef","ViewChild","providers","ExclusionsListFeatureRoutingGuard","canActivate","ExclusionsListFeatureRoutingListTitleResolver","resolve","ExclusionsListFeatureRoutingPermissionResolver","permissionsService","PermissionsService","ExclusionsListFeatureRoutingLocaleResolver","localeService","LocaleService","EmptyComponent","routes","component","allPermissions","routeTitle","children","ExclusionsListFeatureRouting","RouterModule","forChild","ExclusionsListModule","FormsModule","ReactiveFormsModule","TranslateModule","ControlErrorsModule","InputTextModule","InfoSignModule","ConfirmDialogModule","DialogModule","EmptyStateModule","DynamicFormModule","TokenListModule","LogicalDeleteModule","forRoot","config","ngModule","LogicalDeleteModule_1","provide","useValue"],"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","export enum EnumExclusionProcessStatus {\n PENDING = \"PENDING\",\n PROCESSING = \"PROCESSING\",\n ERROR = \"ERROR\",\n SUCCESS = \"SUCCESS\"\n}\n","import { InjectionToken } from \"@angular/core\";\n\nexport const ProjectConfigsInjectionToken = new InjectionToken<ProjectConfigs>(\"projectConfigs\");\n\nexport interface ProjectConfigs {\n domain: string;\n service: string;\n translationPrefix?: string;\n}\n","import { Inject, Injectable } from \"@angular/core\";\nimport { ProjectConfigs, ProjectConfigsInjectionToken } from \"../models/project-config\";\n\n@Injectable()\nexport class LogicalDeleteConfigService {\n constructor(\n @Inject(ProjectConfigsInjectionToken)\n private readonly projectConfigs: ProjectConfigs) {\n }\n\n public getDomain() {\n return this.projectConfigs.domain;\n }\n\n public getService() {\n return this.projectConfigs.service;\n }\n\n public getTranslationPrefix() {\n if (this.projectConfigs.translationPrefix) {\n return this.projectConfigs.translationPrefix;\n }\n return `${this.projectConfigs.domain}.${this.projectConfigs.service}`;\n }\n}\n","import * as moment from \"moment\";\nimport { HttpClient, HttpParams } from \"@angular/common/http\";\nimport { Injectable } from \"@angular/core\";\nimport { TranslateService } from \"@ngx-translate/core\";\nimport { MessageService } from \"primeng/api\";\nimport { Observable, throwError } from \"rxjs\";\nimport { catchError, map } from \"rxjs/operators\";\nimport { ListResult, ExclusionProcess } from \"../models/index\";\nimport { LogicalDeleteConfigService } from \"./logical-delete-config.service\";\nimport { ListParams } from \"../models/list-params\";\n\n@Injectable()\nexport class LogicalDeleteService {\n private exclusionProcessUrl: string;\n private listExclusionsUrl: string;\n\n constructor(\n private readonly http: HttpClient,\n private readonly messageService: MessageService,\n private readonly translate: TranslateService,\n private readonly projectConfigs: LogicalDeleteConfigService) {\n\n const entityUrl = `${projectConfigs.getDomain()}/${projectConfigs.getService()}`;\n this.exclusionProcessUrl = `${entityUrl}/entities/exclusionProcess`;\n this.listExclusionsUrl = `${entityUrl}/entities/exclusionProcess`;\n this.defaultCatch = this.defaultCatch.bind(this);\n }\n\n public defaultCatch() {\n return catchError<any, any>((err: any) => {\n if (err) {\n let summary = err.status ? String(err.status) : \"Error\";\n let detail = (err.error && err.error.message) || err.statusText || err.message || \"Error\";\n\n if (err.status === 401) {\n const prefix = this.projectConfigs.getTranslationPrefix();\n summary = this.translate.instant(`${prefix}.error_unauthorized_title`);\n detail = this.translate.instant(`${prefix}.error_unauthorized_description`);\n }\n\n this.messageService.add({\n severity: \"error\",\n summary,\n detail\n });\n }\n\n return throwError(err);\n });\n }\n\n public getListQueryParams(listParams: ListParams) {\n const { page = 0, size = 10, sort = [], filterQuery = \"\", displayFields = [] } = listParams;\n\n let params = new HttpParams();\n params = params.append(\"size\", String(size));\n params = params.append(\"offset\", String(page));\n\n if (sort && sort.length) {\n params = params.append(\n \"orderby\",\n sort\n .map(s => {\n if (s.order === -1) {\n return `${s.field} desc`;\n }\n\n return `${s.field} asc`;\n })\n .join(\", \")\n );\n }\n\n if (filterQuery) {\n params = params.append(\"filter\", filterQuery);\n }\n\n if (displayFields && displayFields.length) {\n params = params.append(\"displayfields\", displayFields.join());\n }\n\n return params;\n }\n\n public getProcessDetails(recordId: string): Observable<ExclusionProcess> {\n const filterParams = {\n filter: `recordId eq '${recordId}'`\n };\n\n return this.http.get<ListResult<ExclusionProcess>>(this.exclusionProcessUrl, { params: filterParams })\n .pipe<ListResult<ExclusionProcess>>(this.defaultCatch())\n .pipe(map(value => {\n if (!value.contents?.length) {\n return null;\n }\n return value.contents[0];\n }));\n }\n\n public listExclusions(entityName: string, params: ListParams = {}): Observable<ListResult<ExclusionProcess>> {\n if (params.filterQuery) {\n params.filterQuery += ` and lower(entityName) eq lower('${entityName}')`;\n } else {\n params.filterQuery = `lower(entityName) eq lower('${entityName}')`;\n }\n\n return this.http.get<ListResult<ExclusionProcess>>(this.exclusionProcessUrl, { params: this.getListQueryParams(params) })\n .pipe<ListResult<ExclusionProcess>>(this.defaultCatch())\n .pipe<ListResult<ExclusionProcess>>(map(value => {\n value.contents.forEach(p => {\n if (p.startDate) {\n p.startDate = moment(p.startDate).toDate();\n }\n\n if (p.finishDate) {\n p.finishDate = moment(p.finishDate).toDate();\n }\n });\n return value;\n }));\n }\n}\n","import * as moment from \"moment\";\nimport { Component, Output, ViewEncapsulation, OnInit, OnDestroy } from \"@angular/core\";\nimport { ActivatedRoute, Router } from \"@angular/router\";\nimport { EnumBadgeColors, EnumColumnFieldType, TableColumnLocaleOptions } from \"@seniorsistemas/angular-components\";\nimport { Subject } from \"rxjs\";\nimport { finalize, takeUntil } from \"rxjs/operators\";\nimport { EnumExclusionProcessStatus } from \"../enums/enum-exclusion-process-status\";\nimport { ExclusionDetails } from \"./protocols/exclusion-details\";\nimport { LogicalDeleteService } from \"../services/logical-delete.service\";\nimport { ExclusionProcess } from \"../models/index\";\nimport { TranslateService } from \"@ngx-translate/core\";\nimport { LogicalDeleteConfigService } from \"../services/logical-delete-config.service\";\nimport { ShowDetailsInformation } from \"./protocols\";\n\n@Component({\n selector: \"s-exclusion-details\",\n templateUrl: \"./exclusion-details.component.html\",\n styleUrls: [\"./exclusion-details.component.scss\"],\n encapsulation: ViewEncapsulation.None\n})\nexport class ExclusionDetailsComponent implements OnInit, OnDestroy {\n public locale!: TableColumnLocaleOptions;\n\n @Output()\n get isVisible(): boolean {\n return this._isVisible;\n }\n\n @Output()\n get isLoading(): boolean {\n return this._isLoading;\n }\n\n @Output()\n get processSummaryData(): ExclusionDetails[] {\n return this._processSummaryData;\n }\n\n @Output()\n get processSummaryColumns(): any[] {\n return this._processSummaryColumns;\n }\n\n @Output()\n public processDetails: ExclusionProcess;\n\n @Output()\n public entityDescription: string;\n\n private _entityName = \"\";\n private _isVisible = false;\n private _isLoading = false;\n private _processSummaryData: ExclusionDetails[] = [];\n private _processSummaryColumns: any[] = [];\n private readonly ngUnsubscribe = new Subject();\n\n constructor(\n private readonly router: Router,\n private readonly route: ActivatedRoute,\n private readonly translate: TranslateService,\n private readonly logicalDeleteService: LogicalDeleteService,\n private readonly projectConfigs: LogicalDeleteConfigService\n ) {\n }\n\n ngOnInit(): void {\n this.route.data\n .pipe(takeUntil(this.ngUnsubscribe))\n .subscribe((data: { [configs: string]: any, localeConfig: TableColumnLocaleOptions }) => {\n this.locale = data.localeConfig;\n });\n this._processSummaryColumns = this.getSummaryColumns();\n }\n\n public ngOnDestroy() {\n this.ngUnsubscribe.next();\n this.ngUnsubscribe.complete();\n }\n\n public showDetails(details: ShowDetailsInformation) {\n this.processDetails = null;\n this._entityName = details.entityName;\n this._isVisible = true;\n this.entityDescription = details.entityDescription;\n\n this.loadProcessDetails(details.recordId);\n }\n\n public closeDetails() {\n this._isVisible = false;\n }\n\n public openExclusions() {\n this.closeDetails();\n this.router.navigate(\n [\"exclusions-list\", this._entityName],\n {\n queryParams: {\n entityDescription: this.entityDescription\n }\n }\n );\n }\n\n public getRecordDescription() {\n if (!this.processDetails?.description) {\n return \"\";\n }\n\n return this.processDetails.description;\n }\n\n public getInicialDate() {\n if (!this.processDetails?.startDate) {\n return \"\";\n }\n\n return moment(this.processDetails.startDate).format(\"DD/MM/YYYY HH:mm\");\n }\n\n public getFinishDate() {\n if (!this.processDetails?.finishDate) {\n return \"\";\n }\n\n return moment(this.processDetails.finishDate).format(\"DD/MM/YYYY HH:mm\");\n }\n\n public isFinished() {\n return !!this.processDetails?.finishDate;\n }\n\n public getShowExclusionsButtonLabel() {\n return this.translate.instant(`${this.projectConfigs.getTranslationPrefix()}.logical_delete_show_deletions`);\n }\n\n public getCloseButtonLabel() {\n return this.translate.instant(`${this.projectConfigs.getTranslationPrefix()}.logical_delete_close`);\n }\n\n public getSummaryLabel() {\n return this.translate.instant(`${this.projectConfigs.getTranslationPrefix()}.logical_delete_summary`);\n }\n\n public getStartDateLabel() {\n return this.translate.instant(`${this.projectConfigs.getTranslationPrefix()}.logical_delete_start`);\n }\n\n public getFinishDateLabel() {\n return this.translate.instant(`${this.projectConfigs.getTranslationPrefix()}.logical_delete_finish`);\n }\n\n public getSidebarTitle() {\n return this.translate.instant(`${this.projectConfigs.getTranslationPrefix()}.logical_delete_details_title`);\n }\n\n private getSummaryColumns() {\n return [\n {\n field: \"description\",\n attributes: [\"description\"],\n header: this.translate.instant(`${this.projectConfigs.getTranslationPrefix()}.logical_delete_description`),\n type: EnumColumnFieldType.STRING,\n style: {\n width: \"300px\"\n }\n },\n {\n field: \"status\",\n attributes: [\"status\"],\n header: this.translate.instant(`${this.projectConfigs.getTranslationPrefix()}.logical_delete_status`),\n type: EnumColumnFieldType.ENUM,\n enumPrefix: `${this.projectConfigs.getTranslationPrefix()}.logical_delete_enum_exclusion_process_status_`,\n style: {\n width: \"100px\"\n },\n tooltip: this.getColumnStatusTooltip,\n badgeConfigs: [\n {\n enumValue: EnumExclusionProcessStatus.ERROR,\n color: EnumBadgeColors.RED\n },\n {\n enumValue: EnumExclusionProcessStatus.PENDING,\n color: EnumBadgeColors.YELLOW\n },\n {\n enumValue: EnumExclusionProcessStatus.PROCESSING,\n color: EnumBadgeColors.BLUE\n },\n {\n enumValue: EnumExclusionProcessStatus.SUCCESS,\n color: EnumBadgeColors.GREEN\n }\n ]\n }\n ];\n }\n\n private getColumnStatusTooltip(rowValue: ExclusionDetails) {\n if (rowValue.errorMessage) {\n return rowValue.errorMessage;\n }\n\n return null;\n }\n\n private loadProcessDetails(recordId: string) {\n this._isLoading = true;\n\n this.logicalDeleteService.getProcessDetails(recordId)\n .pipe(takeUntil(this.ngUnsubscribe))\n .pipe(finalize(() => this._isLoading = false))\n .subscribe((process: ExclusionProcess) => {\n this.processDetails = process;\n this.loadProcessSummary(process);\n });\n }\n\n private loadProcessSummary(process: ExclusionProcess) {\n const stepLogs: ExclusionDetails[] = [];\n\n process.groups.forEach(group => {\n const steps = group.steps.map(step => ({\n description: step.description,\n status: step.status,\n errorMessage: step.errorMessage\n } as ExclusionDetails));\n\n stepLogs.push(...steps);\n });\n\n this._processSummaryData = stepLogs;\n }\n}\n","import { CommonModule } from \"@angular/common\";\nimport { NgModule } from \"@angular/core\";\nimport { PanelModule } from \"primeng/panel\";\nimport { TableModule as PrimeTableModule } from \"primeng/table\";\nimport { ButtonModule, LoadingStateModule, TableModule, SidebarModule, LocaleModule } from \"@seniorsistemas/angular-components\";\nimport { ExclusionDetailsComponent } from \"./exclusion-details.component\";\n\n@NgModule({\n imports: [\n CommonModule,\n SidebarModule,\n ButtonModule,\n PanelModule,\n PrimeTableModule,\n TableModule,\n LoadingStateModule,\n LocaleModule\n ],\n declarations: [ExclusionDetailsComponent],\n exports: [ExclusionDetailsComponent],\n entryComponents: [ExclusionDetailsComponent]\n})\nexport class ExclusionDetailsModule {}\n","import * as moment from \"moment\";\nimport { Injectable } from \"@angular/core\";\nimport { FieldType, FormField, Option } from \"@seniorsistemas/angular-components\";\nimport { TranslateService } from \"@ngx-translate/core\";\nimport { LogicalDeleteConfigService } from \"./logical-delete-config.service\";\n\n@Injectable()\nexport class FilterService {\n private readonly numberTypes = [FieldType.Integer, FieldType.Double];\n\n constructor(\n private readonly logicalDeleteConfigService: LogicalDeleteConfigService,\n private readonly translate: TranslateService\n ) {}\n\n getEnumQuery(name: string, value: any, multiple: boolean = false) {\n if (multiple) {\n const filter = value.map((selected: any) => `${name} eq '${selected}'`).join(\" or \");\n return `(${filter})`;\n }\n return `${name} eq '${value}'`;\n }\n\n createFilterString(formField: FormField, value: any) {\n const { name, type, multiple } = formField;\n if (typeof value == \"number\") {\n return `${name} eq ${value}`;\n }\n\n switch (type) {\n case FieldType.Date:\n return `${name} eq '${moment(value).format(\"YYYY-MM-DD\")}'`;\n case FieldType.Time:\n return `${name} eq '${moment(value).format(\"HH:mm:ss\")}'`;\n case FieldType.DateTime:\n return `${name} eq '${moment(value).format()}'`;\n case FieldType.LocalDateTime:\n return `${name} eq '${moment(value).format(\"YYYY-MM-DD[T]HH:mm:ss.SSS\")}'`;\n case FieldType.Enum:\n return this.getEnumQuery(name, value, multiple);\n case FieldType.String:\n return `containing(upper(${name}), upper('${value.replace(/'/g, \"'\")}'))`;\n case FieldType.Lookup:\n return `${name} eq '${value.id}'`;\n default:\n return `${name} eq '${value}'`;\n }\n }\n\n createFilterTokens(formField: FormField, value: any) {\n const { name, type, label, searchFields, options } = formField as any;\n let labelValue = value;\n\n switch (type) {\n case FieldType.Date:\n labelValue = moment(value).format(\"L\");\n break;\n case FieldType.Time:\n labelValue = moment(value).format(\"LTS\");\n break;\n case FieldType.LocalDateTime:\n case FieldType.DateTime:\n labelValue = moment(value).format(\"L LTS\");\n break;\n case FieldType.Lookup:\n labelValue = searchFields.map((field: FormField) => this.getProp(value, field.name)).join(\" - \");\n break;\n case FieldType.Enum:\n if (Array.isArray(value)) {\n labelValue = value.map((element: string) => {\n return options.filter((en: any) => en.value === element)[0].label;\n });\n } else {\n labelValue = options.filter((option: Option) => option.value === labelValue)[0].label;\n }\n break;\n case FieldType.Boolean:\n labelValue = value\n ? this.translate.instant(`${this.logicalDeleteConfigService.getTranslationPrefix()}.list_grid_boolean_true`)\n : this.translate.instant(`${this.logicalDeleteConfigService.getTranslationPrefix()}.list_grid_boolean_false`);\n break;\n }\n\n return { id: name, label: `${label}: ${labelValue}` };\n }\n\n getSuggestionValue(displayFields: string[], ownerEntity: string, value: any, separator: string) {\n return displayFields.map(field => this.getProp(value, `${ownerEntity}.${field}`))\n .reduce((acc: any, val: any) => `${acc}${separator}${val}`) + \"\";\n }\n\n getProp(obj: any, path: any) {\n return path.split(\".\").reduce((result: any, prop: any) => (result[prop] === undefined ? \"\" : result[prop]), obj);\n }\n\n getLabelValueRequest(contents: any[], displayFields: any[]) {\n return contents.map((item: any) => ({\n ...item,\n label: displayFields.map(field => this.getProp(item, field)).join(\" - \")\n }));\n }\n\n isValidFilter(type: FieldType, value: any) {\n const isTypeNumber = this.numberTypes.includes(type);\n const numberPattern = /^\\d+\\b$/;\n const isNumber = value.match(numberPattern);\n return !(isTypeNumber && !isNumber);\n }\n}\n","import * as moment from 'moment';\nimport { ChangeDetectorRef, Component, OnDestroy, OnInit, ViewChild } from '@angular/core';\nimport { FormBuilder, FormGroup, Validators } from '@angular/forms';\nimport { TranslateService } from '@ngx-translate/core';\nimport { LazyLoadEvent } from 'primeng/api';\nimport { Subject } from 'rxjs';\nimport { catchError, finalize, takeUntil } from 'rxjs/operators';\nimport { EnumBadgeColors, EnumColumnFieldType, FieldType, FormField, IToken, TableColumnLocaleOptions } from '@seniorsistemas/angular-components';\nimport { EnumExclusionProcessStatus } from '../enums/enum-exclusion-process-status';\nimport { ExclusionProcess } from '../models';\nimport { Table } from 'primeng/table';\nimport { LogicalDeleteService } from '../services';\nimport { ActivatedRoute } from '@angular/router';\nimport { ListParams } from '../models/list-params';\nimport { LogicalDeleteConfigService } from '../services/logical-delete-config.service';\nimport { ExclusionDetailsComponent } from '../exclusion-details';\nimport { FilterService } from '../services/filter.service';\n\n@Component({\n templateUrl: \"./exclusions-list.component.html\",\n styleUrls: [],\n providers: []\n})\nexport class ExclusionsListComponent implements OnInit, OnDestroy {\n public locale!: TableColumnLocaleOptions;\n public entityName: string;\n public entityDescription: string;\n\n public currentListParams: ListParams = { page: 0, size: 10, sort: [], filterData: {} };\n public gridData: ExclusionProcess[];\n public gridColumns: any[];\n public showLoader: boolean = false;\n public totalRecords = 0;\n\n public filterFields: FormField[];\n public filterFormGroup: FormGroup;\n public filtersPanelCollapsed = true;\n public searchTokens: IToken[] = [];\n public serverError: boolean = false;\n\n @ViewChild(\"exclusionsTable\")\n public table: Table;\n\n @ViewChild(ExclusionDetailsComponent)\n public exclusionDetailsComponent: ExclusionDetailsComponent;\n\n private ngUnsubscribe = new Subject();\n\n constructor(\n private readonly route: ActivatedRoute,\n private readonly translate: TranslateService,\n private readonly formBuilder: FormBuilder,\n private readonly changeDetectorRef: ChangeDetectorRef,\n private readonly logicalDeleteService: LogicalDeleteService,\n private readonly filterService: FilterService,\n private readonly projectConfigs: LogicalDeleteConfigService\n ) {\n }\n\n public ngOnInit() {\n this.filterFormGroup = this.getFormBuilder();\n this.filterFields = this.getFilterFields();\n this.gridColumns = this.getGridColumns();\n\n this.route.data\n .pipe(takeUntil(this.ngUnsubscribe))\n .subscribe((data: { [configs: string]: any, localeConfig: TableColumnLocaleOptions }) => {\n this.locale = data.localeConfig;\n });\n this.route.params\n .pipe(takeUntil(this.ngUnsubscribe))\n .subscribe((params: any) => {\n this.entityName = params.entityName;\n });\n this.route.queryParams\n .pipe(takeUntil(this.ngUnsubscribe))\n .subscribe((queryParams: any) => {\n this.entityDescription = queryParams.entityDescription;\n });\n }\n\n public ngOnDestroy() {\n this.ngUnsubscribe.next();\n this.ngUnsubscribe.complete();\n }\n\n private getFormBuilder() {\n return this.formBuilder.group({\n description: [undefined, Validators.compose([])],\n state: [undefined, Validators.compose([])],\n startDate: [{ value: undefined, disabled: false }, Validators.compose([])],\n endDate: [{ value: undefined, disabled: false }, Validators.compose([])]\n });\n }\n\n private getGridColumns() {\n return [\n {\n field: \"description\",\n attributes: ['description'],\n header: this.translate.instant(`${this.projectConfigs.getTranslationPrefix()}.logical_delete_description`),\n type: EnumColumnFieldType.STRING,\n style: {\n width: '300px'\n }\n },\n {\n field: \"status\",\n attributes: ['status'],\n header: this.translate.instant(`${this.projectConfigs.getTranslationPrefix()}.logical_delete_status`),\n type: EnumColumnFieldType.ENUM,\n enumPrefix: `${this.projectConfigs.getTranslationPrefix()}.logical_delete_enum_exclusion_process_status_`,\n style: {\n width: '100px'\n },\n badgeConfigs: [\n {\n enumValue: EnumExclusionProcessStatus.ERROR,\n color: EnumBadgeColors.RED\n },\n {\n enumValue: EnumExclusionProcessStatus.PENDING,\n color: EnumBadgeColors.YELLOW\n },\n {\n enumValue: EnumExclusionProcessStatus.PROCESSING,\n color: EnumBadgeColors.BLUE\n },\n {\n enumValue: EnumExclusionProcessStatus.SUCCESS,\n color: EnumBadgeColors.GREEN\n }\n ]\n },\n {\n field: \"startDate\",\n attributes: ['startDate'],\n header: this.translate.instant(`${this.projectConfigs.getTranslationPrefix()}.logical_delete_start`),\n type: EnumColumnFieldType.DATE,\n dateFormat: \"DD/MM/YYYY HH:mm\",\n style: {\n width: '100px'\n }\n },\n {\n field: \"finishDate\",\n attributes: ['finishDate'],\n header: this.translate.instant(`${this.projectConfigs.getTranslationPrefix()}.logical_delete_finish`),\n type: EnumColumnFieldType.DATE,\n dateFormat: \"DD/MM/YYYY HH:mm\",\n style: {\n width: '100px'\n }\n }\n ];\n }\n\n private getFilterFields() {\n return [\n new FormField({\n type: FieldType.String,\n name: \"description\",\n label: this.translate.instant(`${this.projectConfigs.getTranslationPrefix()}.logical_delete_description`)\n }),\n new FormField({\n type: FieldType.Enum,\n name: \"state\",\n label: this.translate.instant(`${this.projectConfigs.getTranslationPrefix()}.logical_delete_status`),\n placeholder: this.translate.instant(`${this.projectConfigs.getTranslationPrefix()}.logical_delete_status`),\n multiple: true,\n options: [\n {\n label: this.translate.instant(`${this.projectConfigs.getTranslationPrefix()}.logical_delete_enum_exclusion_process_status_error`),\n value: EnumExclusionProcessStatus.ERROR\n },\n {\n label: this.translate.instant(`${this.projectConfigs.getTranslationPrefix()}.logical_delete_enum_exclusion_process_status_pending`),\n value: EnumExclusionProcessStatus.PENDING\n },\n {\n label: this.translate.instant(`${this.projectConfigs.getTranslationPrefix()}.logical_delete_enum_exclusion_process_status_processing`),\n value: EnumExclusionProcessStatus.PROCESSING\n },\n {\n label: this.translate.instant(`${this.projectConfigs.getTranslationPrefix()}.logical_delete_enum_exclusion_process_status_success`),\n value: EnumExclusionProcessStatus.SUCCESS\n }\n ]\n }),\n new FormField({\n type: FieldType.Date,\n name: \"startDate\",\n label: this.translate.instant(`${this.projectConfigs.getTranslationPrefix()}.logical_delete_start`)\n }),\n\n new FormField({\n type: FieldType.Date,\n name: \"endDate\",\n label: this.translate.instant(`${this.projectConfigs.getTranslationPrefix()}.logical_delete_finish`)\n })\n ];\n }\n\n public getEmptyStateTitle() {\n return this.translate.instant(`${this.projectConfigs.getTranslationPrefix()}.logical_delete_empty_state_title`);\n }\n\n public getEmptyStateDescription() {\n return this.translate.instant(`${this.projectConfigs.getTranslationPrefix()}.logical_delete_empty_state_description`);\n }\n\n public getTitle() {\n return this.translate.instant(`${this.projectConfigs.getTranslationPrefix()}.logical_delete_list_title`);\n }\n\n public getDetailsButtonTitle() {\n return this.translate.instant(`${this.projectConfigs.getTranslationPrefix()}.logical_delete_details`);\n }\n\n public onSearch() {\n const filterData = this.filterFormGroup.getRawValue();\n this.filtersPanelCollapsed = true;\n this.resetGrid({ filterData });\n }\n\n public onClear() {\n this.filterFormGroup.reset();\n const filterData = this.filterFormGroup.getRawValue();\n this.resetGrid({ filterData });\n }\n\n public onRemoveToken(token: IToken) {\n this.filterFormGroup.get(token.id).setValue(undefined);\n const filterData = this.filterFormGroup.getRawValue();\n this.resetGrid({ filterData });\n }\n\n public onGridChange(event: LazyLoadEvent) {\n const size = event.rows;\n const page = event.first / size;\n const sort = event.multiSortMeta ? event.multiSortMeta : [];\n return this.updateGrid({ page, size, sort });\n }\n\n private getFilterTokens() {\n const filterData = this.filterFormGroup.value;\n\n return this.filterFields\n .filter(({ name }) => filterData[name] != undefined && filterData[name] !== \"\")\n .map(formField => this.filterService.createFilterTokens(formField, filterData[formField.name]));\n }\n\n private getFilterQuery(): string {\n const { filterData } = this.currentListParams;\n const dateFields = ['startDate', 'endDate'];\n\n let filterQuery = this.filterFields\n .filter(({ name }) => !dateFields.includes(name))\n .filter(({ name }) => filterData[name] != undefined)\n .map(formField => this.filterService.createFilterString(formField, filterData[formField.name]))\n .join(\" and \");\n\n if (filterData.startDate && filterData.endDate) {\n const startDate = moment(filterData.startDate).format('YYYY-MM-DD');\n const endDate = moment(filterData.endDate).format('YYYY-MM-DD');\n const dateQuery = `startDate between '${startDate}' and '${endDate}'`;\n if (filterQuery) {\n filterQuery += ` and ${dateQuery}`;\n } else {\n filterQuery = dateQuery;\n }\n }\n\n return filterQuery;\n }\n\n private updateGrid(listParams: ListParams = {}) {\n this.currentListParams = { ...this.currentListParams, ...listParams };\n const { page, size, sort } = this.currentListParams;\n\n this.searchTokens = this.getFilterTokens();\n const filterQuery = this.getFilterQuery();\n const displayFields = [\n 'recordId',\n ...this.gridColumns.map(column => column.field)\n ];\n\n this.listExclusions({ page, size, sort, filterQuery, displayFields });\n }\n\n public listExclusions(params: any) {\n this.showLoader = true;\n this.serverError = false;\n\n this.changeDetectorRef.detectChanges();\n\n this.logicalDeleteService\n .listExclusions(this.entityName, params)\n .pipe(\n takeUntil(this.ngUnsubscribe),\n catchError((err: any) => {\n if (err.status >= 500 && err.status < 600) {\n this.serverError = true;\n }\n throw err;\n }),\n finalize(() => this.showLoader = false)\n )\n .subscribe((list: any) => {\n this.gridData = list.contents;\n this.totalRecords = list.totalElements;\n });\n }\n\n public focusInput(elementId: string) {\n const element: any = document.getElementById(`${elementId}`);\n if (element) {\n element.focus();\n }\n }\n\n public resetGrid(listParams?: ListParams) {\n if (listParams) this.currentListParams = { ...this.currentListParams, ...listParams };\n this.currentListParams = { ...this.currentListParams, page: 0, sort: [] };\n this.table.reset();\n }\n\n public onClickDetails(rowData: ExclusionProcess) {\n this.exclusionDetailsComponent.showDetails({\n recordId: rowData.recordId,\n entityDescription: this.entityDescription,\n entityName: this.entityName\n });\n }\n}\n","import { NgModule, Injectable, Component } from \"@angular/core\";\nimport { RouterModule, Routes, CanActivate } from \"@angular/router\";\nimport { TranslateService } from \"@ngx-translate/core\";\nimport { PermissionsService } from \"@seniorsistemas/platform-components\";\nimport { LocaleService } from \"@seniorsistemas/angular-components\";\nimport { ExclusionsListComponent } from \"./exclusions-list.component\";\nimport { LogicalDeleteConfigService } from \"../services/logical-delete-config.service\";\n\n@Injectable()\nexport class ExclusionsListFeatureRoutingGuard implements CanActivate {\n public canActivate() {\n return true;\n }\n}\n\n@Injectable()\nexport class ExclusionsListFeatureRoutingListTitleResolver {\n constructor(\n private readonly translate: TranslateService,\n private readonly projectConfigs: LogicalDeleteConfigService\n ) {}\n\n public resolve() {\n return this.translate.get(`${this.projectConfigs.getTranslationPrefix()}.logical_delete_list_title`);\n }\n}\n\n@Injectable()\nexport class ExclusionsListFeatureRoutingPermissionResolver {\n constructor(private readonly permissionsService: PermissionsService) {}\n\n public resolve() {\n return this.permissionsService.get();\n }\n}\n\n@Injectable()\nexport class ExclusionsListFeatureRoutingLocaleResolver {\n constructor(private readonly localeService: LocaleService) {}\n\n public resolve() {\n return this.localeService.get();\n }\n}\n\n@Component({\n template: `<router-outlet></router-outlet>`\n})\nexport class EmptyComponent {}\n\nexport const routes: Routes = [\n {\n path: \"exclusions-list\",\n component: EmptyComponent,\n canActivate: [\n ExclusionsListFeatureRoutingGuard\n ],\n resolve: {\n allPermissions: ExclusionsListFeatureRoutingPermissionResolver,\n localeConfig: ExclusionsListFeatureRoutingLocaleResolver,\n routeTitle: ExclusionsListFeatureRoutingListTitleResolver\n },\n children: [\n {\n path: \":entityName\",\n component: ExclusionsListComponent\n }\n ]\n }\n];\n\n@NgModule({\n imports: [\n RouterModule.forChild(routes)\n ],\n exports: [\n RouterModule\n ],\n providers: [\n ExclusionsListFeatureRoutingGuard,\n ExclusionsListFeatureRoutingPermissionResolver,\n ExclusionsListFeatureRoutingLocaleResolver,\n ExclusionsListFeatureRoutingListTitleResolver\n ],\n declarations: [\n EmptyComponent\n ]\n})\nexport class ExclusionsListFeatureRouting {}\n","import { CommonModule } from \"@angular/common\";\nimport { NgModule } from \"@angular/core\";\nimport { PanelModule } from \"primeng/panel\";\nimport { TableModule as PrimeTableModule } from \"primeng/table\";\nimport {\n ButtonModule,\n LoadingStateModule,\n TableModule,\n LocaleModule,\n TokenListModule,\n DynamicFormModule,\n EmptyStateModule,\n ControlErrorsModule,\n InfoSignModule\n} from \"@seniorsistemas/angular-components\";\nimport { ExclusionsListComponent } from \"./exclusions-list.component\";\nimport { TranslateModule } from \"@ngx-translate/core\";\nimport { FormsModule, ReactiveFormsModule } from \"@angular/forms\";\nimport { DialogModule } from \"primeng/dialog\";\nimport { ConfirmDialogModule } from \"primeng/confirmdialog\";\nimport { InputTextModule } from \"primeng/inputtext\";\nimport { ExclusionDetailsModule } from \"../exclusion-details\";\nimport { ExclusionsListFeatureRouting } from \"./exclusions-list.routing\";\n\n@NgModule({\n imports: [\n FormsModule,\n ReactiveFormsModule,\n TranslateModule,\n CommonModule,\n ControlErrorsModule,\n ButtonModule,\n PanelModule,\n InputTextModule,\n InfoSignModule,\n ConfirmDialogModule,\n DialogModule,\n PrimeTableModule,\n TableModule,\n LoadingStateModule,\n EmptyStateModule,\n DynamicFormModule,\n TokenListModule,\n LocaleModule.forChild(),\n ExclusionDetailsModule,\n ExclusionsListFeatureRouting\n ],\n declarations: [ExclusionsListComponent],\n exports: [ExclusionsListComponent],\n entryComponents: [ExclusionsListComponent]\n})\nexport class ExclusionsListModule {}\n","import { ModuleWithProviders, NgModule } from \"@angular/core\";\nimport { ProjectConfigs, ProjectConfigsInjectionToken } from \"./models/project-config\";\nimport { FilterService } from \"./services/filter.service\";\nimport { LogicalDeleteConfigService } from \"./services/logical-delete-config.service\";\nimport { LogicalDeleteService } from \"./services/logical-delete.service\";\n\n@NgModule({\n providers: [LogicalDeleteService, LogicalDeleteConfigService, FilterService]\n})\nexport class LogicalDeleteModule {\n static forRoot(config: ProjectConfigs): ModuleWithProviders<LogicalDeleteModule> {\n return {\n ngModule: LogicalDeleteModule,\n providers: [\n {\n provide: ProjectConfigsInjectionToken,\n useValue: config\n }\n ]\n };\n }\n}\n"]}
|
|
1
|
+
{"version":3,"sources":["../../node_modules/tslib/tslib.es6.js","ng://@seniorsistemas/exclusion-process-component/enums/enum-exclusion-process-status.ts","ng://@seniorsistemas/exclusion-process-component/models/project-config.ts","ng://@seniorsistemas/exclusion-process-component/services/logical-delete-config.service.ts","ng://@seniorsistemas/exclusion-process-component/services/logical-delete.service.ts","ng://@seniorsistemas/exclusion-process-component/exclusion-details/exclusion-details.component.ts","ng://@seniorsistemas/exclusion-process-component/exclusion-details/exclusion-details.module.ts","ng://@seniorsistemas/exclusion-process-component/services/filter.service.ts","ng://@seniorsistemas/exclusion-process-component/exclusions-list/exclusions-list.component.ts","ng://@seniorsistemas/exclusion-process-component/exclusions-list/exclusions-list.routing.ts","ng://@seniorsistemas/exclusion-process-component/exclusions-list/exclusions-list.module.ts","ng://@seniorsistemas/exclusion-process-component/logical-delete.module.ts"],"names":["EnumExclusionProcessStatus","__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","__read","o","m","Symbol","iterator","e","ar","next","done","push","value","error","__spread","concat","ProjectConfigsInjectionToken","InjectionToken","LogicalDeleteConfigService","projectConfigs","paramIndex","decorator","getDomain","domain","getService","service","getTranslationPrefix","translationPrefix","Inject","args","Injectable","LogicalDeleteService","http","messageService","translate","entityUrl","exclusionProcessUrl","listExclusionsUrl","defaultCatch","bind","_this","catchError","err","summary","status","String","detail","_a","message","statusText","prefix","instant","add","severity","throwError","getListQueryParams","listParams","page","_b","size","_c","sort","_d","filterQuery","_e","displayFields","params","HttpParams","append","map","order","field","join","getProcessDetails","id","doGetProcessDetails","filter","offset","getLatestProcessDetails","recordId","orderby","filterParams","get","pipe","contents","listExclusions","entityName","forEach","startDate","moment","toDate","finishDate","HttpClient","MessageService","TranslateService","ExclusionDetailsComponent","router","route","logicalDeleteService","_entityName","_isVisible","_isLoading","_processSummaryData","_processSummaryColumns","ngUnsubscribe","Subject","ngOnInit","data","takeUntil","subscribe","locale","localeConfig","getSummaryColumns","ngOnDestroy","complete","showDetails","details","processDetails","entityDescription","loadProcessDetails","closeDetails","openExclusions","navigate","queryParams","getRecordDescription","description","getInicialDate","format","getFinishDate","isFinished","getShowExclusionsButtonLabel","getCloseButtonLabel","getSummaryLabel","getStartDateLabel","getFinishDateLabel","getSidebarTitle","getEmptyStateTitle","getEmptyStateDescription","attributes","header","type","EnumColumnFieldType","STRING","style","width","ENUM","enumPrefix","tooltip","getColumnStatusTooltip","badgeConfigs","enumValue","ERROR","color","EnumBadgeColors","RED","PENDING","YELLOW","PROCESSING","BLUE","SUCCESS","GREEN","rowValue","errorMessage","processId","finalize","process","loadProcessSummary","stepLogs","groups","group","steps","step","Router","ActivatedRoute","Output","Component","selector","template","encapsulation","ViewEncapsulation","None","ExclusionDetailsModule","NgModule","imports","CommonModule","SidebarModule","ButtonModule","PanelModule","PrimeTableModule","TableModule","LoadingStateModule","LocaleModule","EmptyStateModule","declarations","exports","entryComponents","FilterService","logicalDeleteConfigService","numberTypes","FieldType","Integer","Double","getEnumQuery","name","multiple","selected","createFilterString","formField","Date","Time","DateTime","LocalDateTime","Enum","replace","Lookup","createFilterTokens","label","searchFields","options","labelValue","getProp","Array","isArray","element","en","option","Boolean","getSuggestionValue","ownerEntity","separator","reduce","acc","val","obj","path","split","result","prop","undefined","getLabelValueRequest","item","isValidFilter","isTypeNumber","includes","isNumber","match","ExclusionsListComponent","formBuilder","changeDetectorRef","filterService","currentListParams","filterData","showLoader","totalRecords","filtersPanelCollapsed","searchTokens","serverError","filterFormGroup","getFormBuilder","filterFields","getFilterFields","gridColumns","getGridColumns","showBasedOnRoute","exclusionDetailsComponent","Validators","compose","disabled","endDate","DATE","dateFormat","FormField","placeholder","getTitle","getDetailsButtonTitle","getFiltersTitle","getFilterButtonTitle","getClearButtonTitle","getErrorInvalid","getErrorServerTitle","getErrorServerDescription","getActionsColumnLabel","onSearch","getRawValue","resetGrid","onClear","reset","onRemoveToken","token","setValue","onGridChange","event","rows","first","multiSortMeta","updateGrid","getFilterTokens","getFilterQuery","dateQuery","dateFields","column","detectChanges","list","gridData","totalElements","focusInput","elementId","document","getElementById","focus","table","onClickDetails","rowData","FormBuilder","ChangeDetectorRef","ViewChild","providers","ExclusionsListFeatureRoutingGuard","canActivate","ExclusionsListFeatureRoutingListTitleResolver","resolve","ExclusionsListFeatureRoutingPermissionResolver","permissionsService","PermissionsService","ExclusionsListFeatureRoutingLocaleResolver","localeService","LocaleService","EmptyComponent","routes","component","allPermissions","routeTitle","children","ExclusionsListFeatureRouting","RouterModule","forChild","ExclusionsListModule","FormsModule","ReactiveFormsModule","TranslateModule","ControlErrorsModule","InputTextModule","InfoSignModule","ConfirmDialogModule","DialogModule","DynamicFormModule","TokenListModule","LogicalDeleteModule","forRoot","config","ngModule","LogicalDeleteModule_1","provide","useValue"],"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","export enum EnumExclusionProcessStatus {\n PENDING = \"PENDING\",\n PROCESSING = \"PROCESSING\",\n ERROR = \"ERROR\",\n SUCCESS = \"SUCCESS\"\n}\n","import { InjectionToken } from \"@angular/core\";\n\nexport const ProjectConfigsInjectionToken = new InjectionToken<ProjectConfigs>(\"projectConfigs\");\n\nexport interface ProjectConfigs {\n domain: string;\n service: string;\n translationPrefix?: string;\n}\n","import { Inject, Injectable } from \"@angular/core\";\nimport { ProjectConfigs, ProjectConfigsInjectionToken } from \"../models/project-config\";\n\n@Injectable()\nexport class LogicalDeleteConfigService {\n constructor(\n @Inject(ProjectConfigsInjectionToken)\n private readonly projectConfigs: ProjectConfigs) {\n }\n\n public getDomain() {\n return this.projectConfigs.domain;\n }\n\n public getService() {\n return this.projectConfigs.service;\n }\n\n public getTranslationPrefix() {\n if (this.projectConfigs.translationPrefix) {\n return this.projectConfigs.translationPrefix;\n }\n return `${this.projectConfigs.domain}.${this.projectConfigs.service}`;\n }\n}\n","import * as moment from \"moment\";\nimport { HttpClient, HttpParams } from \"@angular/common/http\";\nimport { Injectable } from \"@angular/core\";\nimport { TranslateService } from \"@ngx-translate/core\";\nimport { MessageService } from \"primeng/api\";\nimport { Observable, throwError } from \"rxjs\";\nimport { catchError, map } from \"rxjs/operators\";\nimport { ListResult, ExclusionProcess } from \"../models/index\";\nimport { LogicalDeleteConfigService } from \"./logical-delete-config.service\";\nimport { ListParams } from \"../models/list-params\";\n\nconst HTTP_UNAUTHORIZED_CODE = 401;\nconst DEFAULT_PAGE_SIZE = 10;\n\n@Injectable()\nexport class LogicalDeleteService {\n private readonly exclusionProcessUrl: string;\n private readonly listExclusionsUrl: string;\n\n constructor(\n private readonly http: HttpClient,\n private readonly messageService: MessageService,\n private readonly translate: TranslateService,\n private readonly projectConfigs: LogicalDeleteConfigService) {\n\n const entityUrl = `${projectConfigs.getDomain()}/${projectConfigs.getService()}`;\n this.exclusionProcessUrl = `${entityUrl}/entities/exclusionProcess`;\n this.listExclusionsUrl = `${entityUrl}/entities/exclusionProcess`;\n this.defaultCatch = this.defaultCatch.bind(this);\n }\n\n public defaultCatch() {\n return catchError<any, any>((err: any) => {\n if (err) {\n let summary = err.status ? String(err.status) : \"Error\";\n let detail = err.error?.message || err.statusText || err.message;\n\n if (err.status === HTTP_UNAUTHORIZED_CODE) {\n const prefix = this.projectConfigs.getTranslationPrefix();\n summary = this.translate.instant(`${prefix}.error_unauthorized_title`);\n detail = this.translate.instant(`${prefix}.error_unauthorized_description`);\n }\n\n this.messageService.add({\n severity: \"error\",\n summary,\n detail: detail || \"Error\"\n });\n }\n\n return throwError(err);\n });\n }\n\n public getListQueryParams(listParams: ListParams) {\n const { page = 0, size = DEFAULT_PAGE_SIZE, sort = [], filterQuery = \"\", displayFields = [] } = listParams;\n\n let params = new HttpParams();\n params = params.append(\"size\", String(size));\n params = params.append(\"offset\", String(page));\n\n if (sort && sort.length) {\n params = params.append(\n \"orderby\",\n sort\n .map(s => {\n if (s.order === -1) {\n return `${s.field} desc`;\n }\n\n return `${s.field} asc`;\n })\n .join(\", \")\n );\n }\n\n if (filterQuery) {\n params = params.append(\"filter\", filterQuery);\n }\n\n if (displayFields && displayFields.length) {\n params = params.append(\"displayfields\", displayFields.join());\n }\n\n return params;\n }\n\n public getProcessDetails(id: string): Observable<ExclusionProcess> {\n return this.doGetProcessDetails({\n filter: `id eq '${id}'`,\n size: \"1\",\n offset: \"0\",\n });\n }\n\n public getLatestProcessDetails(recordId: string): Observable<ExclusionProcess> {\n return this.doGetProcessDetails({\n filter: `recordId eq '${recordId}'`,\n size: \"1\",\n offset: \"0\",\n orderby: \"startDate desc\"\n });\n }\n\n private doGetProcessDetails(filterParams: HttpParams | {\n [param: string]: string | string[];\n }): Observable<ExclusionProcess> {\n return this.http.get<ListResult<ExclusionProcess>>(this.exclusionProcessUrl, { params: filterParams })\n .pipe<ListResult<ExclusionProcess>>(this.defaultCatch())\n .pipe(map(value => {\n if (!value.contents?.length) {\n return null;\n }\n return value.contents[0];\n }));\n }\n\n public listExclusions(entityName: string, params: ListParams = {}): Observable<ListResult<ExclusionProcess>> {\n if (params.filterQuery) {\n params.filterQuery += ` and lower(entityName) eq lower('${entityName}')`;\n } else {\n params.filterQuery = `lower(entityName) eq lower('${entityName}')`;\n }\n\n return this.http.get<ListResult<ExclusionProcess>>(this.exclusionProcessUrl, { params: this.getListQueryParams(params) })\n .pipe<ListResult<ExclusionProcess>>(this.defaultCatch())\n .pipe<ListResult<ExclusionProcess>>(map(value => {\n value.contents.forEach(p => {\n if (p.startDate) {\n p.startDate = moment(p.startDate).toDate();\n }\n\n if (p.finishDate) {\n p.finishDate = moment(p.finishDate).toDate();\n }\n });\n return value;\n }));\n }\n}\n","import * as moment from \"moment\";\nimport { Component, Output, ViewEncapsulation, OnInit, OnDestroy } from \"@angular/core\";\nimport { ActivatedRoute, Router } from \"@angular/router\";\nimport { EnumBadgeColors, EnumColumnFieldType, TableColumnLocaleOptions } from \"@seniorsistemas/angular-components\";\nimport { Subject } from \"rxjs\";\nimport { finalize, takeUntil } from \"rxjs/operators\";\nimport { EnumExclusionProcessStatus } from \"../enums/enum-exclusion-process-status\";\nimport { ExclusionDetails } from \"./protocols/exclusion-details\";\nimport { LogicalDeleteService } from \"../services/logical-delete.service\";\nimport { ExclusionProcess } from \"../models/index\";\nimport { TranslateService } from \"@ngx-translate/core\";\nimport { LogicalDeleteConfigService } from \"../services/logical-delete-config.service\";\nimport { ShowDetailsInformation } from \"./protocols\";\n\n@Component({\n selector: \"s-exclusion-details\",\n templateUrl: \"./exclusion-details.component.html\",\n styleUrls: [\"./exclusion-details.component.scss\"],\n encapsulation: ViewEncapsulation.None\n})\nexport class ExclusionDetailsComponent implements OnInit, OnDestroy {\n public locale!: TableColumnLocaleOptions;\n\n @Output()\n get isVisible(): boolean {\n return this._isVisible;\n }\n\n @Output()\n get isLoading(): boolean {\n return this._isLoading;\n }\n\n @Output()\n get processSummaryData(): ExclusionDetails[] {\n return this._processSummaryData;\n }\n\n @Output()\n get processSummaryColumns(): any[] {\n return this._processSummaryColumns;\n }\n\n @Output()\n public processDetails: ExclusionProcess;\n\n @Output()\n public entityDescription: string;\n\n private _entityName = \"\";\n private _isVisible = false;\n private _isLoading = false;\n private _processSummaryData: ExclusionDetails[] = [];\n private _processSummaryColumns: any[] = [];\n private readonly ngUnsubscribe = new Subject();\n\n constructor(\n private readonly router: Router,\n private readonly route: ActivatedRoute,\n private readonly translate: TranslateService,\n private readonly logicalDeleteService: LogicalDeleteService,\n private readonly projectConfigs: LogicalDeleteConfigService\n ) {\n }\n\n ngOnInit(): void {\n this.route.data\n .pipe(takeUntil(this.ngUnsubscribe))\n .subscribe((data: { [configs: string]: any, localeConfig: TableColumnLocaleOptions }) => {\n this.locale = data.localeConfig;\n });\n this._processSummaryColumns = this.getSummaryColumns();\n }\n\n public ngOnDestroy() {\n this.ngUnsubscribe.next();\n this.ngUnsubscribe.complete();\n }\n\n public showDetails(details: ShowDetailsInformation) {\n this.processDetails = null;\n this._entityName = details.entityName;\n this._isVisible = true;\n this._processSummaryData = [];\n this.entityDescription = details.entityDescription;\n\n this.loadProcessDetails(details);\n }\n\n public closeDetails() {\n this._isVisible = false;\n }\n\n public openExclusions() {\n this.closeDetails();\n this.router.navigate(\n [\"exclusions-list\", this._entityName],\n {\n queryParams: {\n entityDescription: this.entityDescription\n }\n }\n );\n }\n\n public getRecordDescription() {\n if (!this.processDetails?.description) {\n return \"\";\n }\n\n return this.processDetails.description;\n }\n\n public getInicialDate() {\n if (!this.processDetails?.startDate) {\n return \"\";\n }\n\n return moment(this.processDetails.startDate).format(\"DD/MM/YYYY HH:mm\");\n }\n\n public getFinishDate() {\n if (!this.processDetails?.finishDate) {\n return \"\";\n }\n\n return moment(this.processDetails.finishDate).format(\"DD/MM/YYYY HH:mm\");\n }\n\n public isFinished() {\n return !!this.processDetails?.finishDate;\n }\n\n public getShowExclusionsButtonLabel() {\n return this.translate.instant(`${this.projectConfigs.getTranslationPrefix()}.logical_delete_show_deletions`);\n }\n\n public getCloseButtonLabel() {\n return this.translate.instant(`${this.projectConfigs.getTranslationPrefix()}.logical_delete_close`);\n }\n\n public getSummaryLabel() {\n return this.translate.instant(`${this.projectConfigs.getTranslationPrefix()}.logical_delete_summary`);\n }\n\n public getStartDateLabel() {\n return this.translate.instant(`${this.projectConfigs.getTranslationPrefix()}.logical_delete_start`);\n }\n\n public getFinishDateLabel() {\n return this.translate.instant(`${this.projectConfigs.getTranslationPrefix()}.logical_delete_finish`);\n }\n\n public getSidebarTitle() {\n return this.translate.instant(`${this.projectConfigs.getTranslationPrefix()}.logical_delete_details_title`);\n }\n\n public getEmptyStateTitle() {\n return this.translate.instant(`${this.projectConfigs.getTranslationPrefix()}.logical_delete_empty_state_title`);\n }\n\n public getEmptyStateDescription() {\n return this.translate.instant(`${this.projectConfigs.getTranslationPrefix()}.logical_delete_empty_state_description`);\n }\n\n private getSummaryColumns() {\n return [\n {\n field: \"description\",\n attributes: [\"description\"],\n header: this.translate.instant(`${this.projectConfigs.getTranslationPrefix()}.logical_delete_description`),\n type: EnumColumnFieldType.STRING,\n style: {\n width: \"300px\"\n }\n },\n {\n field: \"status\",\n attributes: [\"status\"],\n header: this.translate.instant(`${this.projectConfigs.getTranslationPrefix()}.logical_delete_status`),\n type: EnumColumnFieldType.ENUM,\n enumPrefix: `${this.projectConfigs.getTranslationPrefix()}.logical_delete_enum_exclusion_process_status_`,\n style: {\n width: \"100px\"\n },\n tooltip: this.getColumnStatusTooltip,\n badgeConfigs: [\n {\n enumValue: EnumExclusionProcessStatus.ERROR,\n color: EnumBadgeColors.RED\n },\n {\n enumValue: EnumExclusionProcessStatus.PENDING,\n color: EnumBadgeColors.YELLOW\n },\n {\n enumValue: EnumExclusionProcessStatus.PROCESSING,\n color: EnumBadgeColors.BLUE\n },\n {\n enumValue: EnumExclusionProcessStatus.SUCCESS,\n color: EnumBadgeColors.GREEN\n }\n ]\n }\n ];\n }\n\n private getColumnStatusTooltip(rowValue: ExclusionDetails) {\n if (rowValue.errorMessage) {\n return rowValue.errorMessage;\n }\n\n return null;\n }\n\n private loadProcessDetails(details: ShowDetailsInformation) {\n this._isLoading = true;\n\n const processObservable = details.processId\n ? this.logicalDeleteService.getProcessDetails(details.processId)\n : this.logicalDeleteService.getLatestProcessDetails(details.recordId);\n\n processObservable\n .pipe(takeUntil(this.ngUnsubscribe))\n .pipe(finalize(() => this._isLoading = false))\n .subscribe((process: ExclusionProcess) => {\n this.processDetails = process;\n this.loadProcessSummary(process);\n });\n }\n\n private loadProcessSummary(process: ExclusionProcess) {\n const stepLogs: ExclusionDetails[] = [];\n\n process.groups.forEach(group => {\n const steps = group.steps.map(step => ({\n description: step.description,\n status: step.status,\n errorMessage: step.errorMessage\n } as ExclusionDetails));\n\n stepLogs.push(...steps);\n });\n\n this._processSummaryData = stepLogs;\n }\n}\n","import { CommonModule } from \"@angular/common\";\nimport { NgModule } from \"@angular/core\";\nimport { PanelModule } from \"primeng/panel\";\nimport { TableModule as PrimeTableModule } from \"primeng/table\";\nimport {\n ButtonModule,\n LoadingStateModule,\n TableModule,\n SidebarModule,\n LocaleModule,\n EmptyStateModule\n} from \"@seniorsistemas/angular-components\";\nimport { ExclusionDetailsComponent } from \"./exclusion-details.component\";\n\n@NgModule({\n imports: [\n CommonModule,\n SidebarModule,\n ButtonModule,\n PanelModule,\n PrimeTableModule,\n TableModule,\n LoadingStateModule,\n LocaleModule,\n EmptyStateModule\n ],\n declarations: [ExclusionDetailsComponent],\n exports: [ExclusionDetailsComponent],\n entryComponents: [ExclusionDetailsComponent]\n})\nexport class ExclusionDetailsModule {}\n","import * as moment from \"moment\";\nimport { Injectable } from \"@angular/core\";\nimport { FieldType, FormField, Option } from \"@seniorsistemas/angular-components\";\nimport { TranslateService } from \"@ngx-translate/core\";\nimport { LogicalDeleteConfigService } from \"./logical-delete-config.service\";\n\n@Injectable()\nexport class FilterService {\n private readonly numberTypes = [FieldType.Integer, FieldType.Double];\n\n constructor(\n private readonly logicalDeleteConfigService: LogicalDeleteConfigService,\n private readonly translate: TranslateService\n ) {}\n\n getEnumQuery(name: string, value: any, multiple: boolean = false) {\n if (multiple) {\n const filter = value.map((selected: any) => `${name} eq '${selected}'`).join(\" or \");\n return `(${filter})`;\n }\n return `${name} eq '${value}'`;\n }\n\n createFilterString(formField: FormField, value: any) {\n const { name, type, multiple } = formField;\n if (typeof value == \"number\") {\n return `${name} eq ${value}`;\n }\n\n switch (type) {\n case FieldType.Date:\n return `${name} eq '${moment(value).format(\"YYYY-MM-DD\")}'`;\n case FieldType.Time:\n return `${name} eq '${moment(value).format(\"HH:mm:ss\")}'`;\n case FieldType.DateTime:\n return `${name} eq '${moment(value).format()}'`;\n case FieldType.LocalDateTime:\n return `${name} eq '${moment(value).format(\"YYYY-MM-DD[T]HH:mm:ss.SSS\")}'`;\n case FieldType.Enum:\n return this.getEnumQuery(name, value, multiple);\n case FieldType.String:\n return `containing(upper(${name}), upper('${value.replace(/'/g, \"'\")}'))`;\n case FieldType.Lookup:\n return `${name} eq '${value.id}'`;\n default:\n return `${name} eq '${value}'`;\n }\n }\n\n createFilterTokens(formField: FormField, value: any) {\n const { name, type, label, searchFields, options } = formField as any;\n let labelValue = value;\n\n switch (type) {\n case FieldType.Date:\n labelValue = moment(value).format(\"L\");\n break;\n case FieldType.Time:\n labelValue = moment(value).format(\"LTS\");\n break;\n case FieldType.LocalDateTime:\n case FieldType.DateTime:\n labelValue = moment(value).format(\"L LTS\");\n break;\n case FieldType.Lookup:\n labelValue = searchFields.map((field: FormField) => this.getProp(value, field.name)).join(\" - \");\n break;\n case FieldType.Enum:\n if (Array.isArray(value)) {\n labelValue = value.map((element: string) => {\n return options.filter((en: any) => en.value === element)[0].label;\n });\n } else {\n labelValue = options.filter((option: Option) => option.value === labelValue)[0].label;\n }\n break;\n case FieldType.Boolean:\n labelValue = value\n ? this.translate.instant(`${this.logicalDeleteConfigService.getTranslationPrefix()}.list_grid_boolean_true`)\n : this.translate.instant(`${this.logicalDeleteConfigService.getTranslationPrefix()}.list_grid_boolean_false`);\n break;\n default:\n labelValue = value;\n break;\n }\n\n return { id: name, label: `${label}: ${labelValue}` };\n }\n\n getSuggestionValue(displayFields: string[], ownerEntity: string, value: any, separator: string) {\n return displayFields.map(field => this.getProp(value, `${ownerEntity}.${field}`))\n .reduce((acc: any, val: any) => `${acc}${separator}${val}`) + \"\";\n }\n\n getProp(obj: any, path: any) {\n return path.split(\".\").reduce((result: any, prop: any) => (result[prop] === undefined ? \"\" : result[prop]), obj);\n }\n\n getLabelValueRequest(contents: any[], displayFields: any[]) {\n return contents.map((item: any) => ({\n ...item,\n label: displayFields.map(field => this.getProp(item, field)).join(\" - \")\n }));\n }\n\n isValidFilter(type: FieldType, value: any) {\n const isTypeNumber = this.numberTypes.includes(type);\n const numberPattern = /^\\d+\\b$/;\n const isNumber = value.match(numberPattern);\n return !(isTypeNumber && !isNumber);\n }\n}\n","import * as moment from \"moment\";\nimport { ChangeDetectorRef, Component, OnDestroy, OnInit, ViewChild } from \"@angular/core\";\nimport { FormBuilder, FormGroup, Validators } from \"@angular/forms\";\nimport { TranslateService } from \"@ngx-translate/core\";\nimport { LazyLoadEvent } from \"primeng/api\";\nimport { Subject } from \"rxjs\";\nimport { catchError, finalize, takeUntil } from \"rxjs/operators\";\nimport {\n EnumBadgeColors,\n EnumColumnFieldType,\n FieldType,\n FormField,\n IToken,\n TableColumnLocaleOptions\n} from \"@seniorsistemas/angular-components\";\nimport { EnumExclusionProcessStatus } from \"../enums/enum-exclusion-process-status\";\nimport { ExclusionProcess } from \"../models\";\nimport { Table } from \"primeng/table\";\nimport { LogicalDeleteService } from \"../services\";\nimport { ActivatedRoute } from \"@angular/router\";\nimport { ListParams } from \"../models/list-params\";\nimport { LogicalDeleteConfigService } from \"../services/logical-delete-config.service\";\nimport { ExclusionDetailsComponent } from \"../exclusion-details\";\nimport { FilterService } from \"../services/filter.service\";\n\nconst HTTP_CODE_SERVER_ERROR_START = 500;\nconst HTTP_CODE_SERVER_ERROR_END = 600;\n\n@Component({\n templateUrl: \"./exclusions-list.component.html\",\n styleUrls: [],\n providers: []\n})\nexport class ExclusionsListComponent implements OnInit, OnDestroy {\n public locale!: TableColumnLocaleOptions;\n public entityName: string;\n public entityDescription: string;\n public processId: string;\n\n public currentListParams: ListParams = { page: 0, size: 10, sort: [], filterData: {} };\n public gridData: ExclusionProcess[];\n public gridColumns: any[];\n public showLoader = false;\n public totalRecords = 0;\n\n public filterFields: FormField[];\n public filterFormGroup: FormGroup;\n public filtersPanelCollapsed = true;\n public searchTokens: IToken[] = [];\n public serverError = false;\n\n @ViewChild(\"exclusionsTable\")\n public table: Table;\n\n @ViewChild(ExclusionDetailsComponent)\n public exclusionDetailsComponent: ExclusionDetailsComponent;\n\n private readonly ngUnsubscribe = new Subject();\n\n constructor(\n private readonly route: ActivatedRoute,\n private readonly translate: TranslateService,\n private readonly formBuilder: FormBuilder,\n private readonly changeDetectorRef: ChangeDetectorRef,\n private readonly logicalDeleteService: LogicalDeleteService,\n private readonly filterService: FilterService,\n private readonly projectConfigs: LogicalDeleteConfigService\n ) {\n }\n\n public ngOnInit() {\n this.filterFormGroup = this.getFormBuilder();\n this.filterFields = this.getFilterFields();\n this.gridColumns = this.getGridColumns();\n\n this.route.data\n .pipe(takeUntil(this.ngUnsubscribe))\n .subscribe((data: { [configs: string]: any, localeConfig: TableColumnLocaleOptions }) => {\n this.locale = data.localeConfig;\n });\n this.route.params\n .pipe(takeUntil(this.ngUnsubscribe))\n .subscribe((params: any) => {\n this.entityName = params.entityName;\n this.showBasedOnRoute();\n });\n this.route.queryParams\n .pipe(takeUntil(this.ngUnsubscribe))\n .subscribe((queryParams: any) => {\n this.entityDescription = queryParams.entityDescription;\n this.processId = queryParams.processId;\n this.showBasedOnRoute();\n });\n }\n\n private showBasedOnRoute() {\n if (this.entityName && this.entityDescription && this.processId) {\n this.exclusionDetailsComponent.showDetails({\n processId: this.processId,\n entityDescription: this.entityDescription,\n entityName: this.entityName\n });\n }\n }\n\n public ngOnDestroy() {\n this.ngUnsubscribe.next();\n this.ngUnsubscribe.complete();\n }\n\n private getFormBuilder() {\n return this.formBuilder.group({\n description: [undefined, Validators.compose([])],\n status: [undefined, Validators.compose([])],\n startDate: [{ value: undefined, disabled: false }, Validators.compose([])],\n endDate: [{ value: undefined, disabled: false }, Validators.compose([])]\n });\n }\n\n private getGridColumns() {\n return [\n {\n field: \"description\",\n attributes: [\"description\"],\n header: this.translate.instant(`${this.projectConfigs.getTranslationPrefix()}.logical_delete_description`),\n type: EnumColumnFieldType.STRING,\n style: {\n width: \"300px\"\n }\n },\n {\n field: \"status\",\n attributes: [\"status\"],\n header: this.translate.instant(`${this.projectConfigs.getTranslationPrefix()}.logical_delete_status`),\n type: EnumColumnFieldType.ENUM,\n enumPrefix: `${this.projectConfigs.getTranslationPrefix()}.logical_delete_enum_exclusion_process_status_`,\n style: {\n width: \"100px\"\n },\n badgeConfigs: [\n {\n enumValue: EnumExclusionProcessStatus.ERROR,\n color: EnumBadgeColors.RED\n },\n {\n enumValue: EnumExclusionProcessStatus.PENDING,\n color: EnumBadgeColors.YELLOW\n },\n {\n enumValue: EnumExclusionProcessStatus.PROCESSING,\n color: EnumBadgeColors.BLUE\n },\n {\n enumValue: EnumExclusionProcessStatus.SUCCESS,\n color: EnumBadgeColors.GREEN\n }\n ]\n },\n {\n field: \"startDate\",\n attributes: [\"startDate\"],\n header: this.translate.instant(`${this.projectConfigs.getTranslationPrefix()}.logical_delete_start`),\n type: EnumColumnFieldType.DATE,\n dateFormat: \"DD/MM/YYYY HH:mm\",\n style: {\n width: \"100px\"\n }\n },\n {\n field: \"finishDate\",\n attributes: [\"finishDate\"],\n header: this.translate.instant(`${this.projectConfigs.getTranslationPrefix()}.logical_delete_finish`),\n type: EnumColumnFieldType.DATE,\n dateFormat: \"DD/MM/YYYY HH:mm\",\n style: {\n width: \"100px\"\n }\n }\n ];\n }\n\n private getFilterFields() {\n const translationPrefix = this.projectConfigs.getTranslationPrefix();\n\n return [\n new FormField({\n type: FieldType.String,\n name: \"description\",\n label: this.translate.instant(`${translationPrefix}.logical_delete_description`)\n }),\n new FormField({\n type: FieldType.Enum,\n name: \"status\",\n label: this.translate.instant(`${translationPrefix}.logical_delete_status`),\n placeholder: this.translate.instant(`${translationPrefix}.logical_delete_status`),\n multiple: true,\n options: [\n {\n label: this.translate.instant(`${translationPrefix}.logical_delete_enum_exclusion_process_status_error`),\n value: EnumExclusionProcessStatus.ERROR\n },\n {\n label: this.translate.instant(`${translationPrefix}.logical_delete_enum_exclusion_process_status_pending`),\n value: EnumExclusionProcessStatus.PENDING\n },\n {\n label: this.translate.instant(`${translationPrefix}.logical_delete_enum_exclusion_process_status_processing`),\n value: EnumExclusionProcessStatus.PROCESSING\n },\n {\n label: this.translate.instant(`${translationPrefix}.logical_delete_enum_exclusion_process_status_success`),\n value: EnumExclusionProcessStatus.SUCCESS\n }\n ]\n }),\n new FormField({\n type: FieldType.Date,\n name: \"startDate\",\n label: this.translate.instant(`${translationPrefix}.logical_delete_start`)\n }),\n\n new FormField({\n type: FieldType.Date,\n name: \"endDate\",\n label: this.translate.instant(`${translationPrefix}.logical_delete_finish`)\n })\n ];\n }\n\n public getEmptyStateTitle() {\n return this.translate.instant(`${this.projectConfigs.getTranslationPrefix()}.logical_delete_empty_state_title`);\n }\n\n public getEmptyStateDescription() {\n return this.translate.instant(`${this.projectConfigs.getTranslationPrefix()}.logical_delete_empty_state_description`);\n }\n\n public getTitle() {\n return this.translate.instant(`${this.projectConfigs.getTranslationPrefix()}.logical_delete_list_title`);\n }\n\n public getDetailsButtonTitle() {\n return this.translate.instant(`${this.projectConfigs.getTranslationPrefix()}.logical_delete_details`);\n }\n\n public getFiltersTitle() {\n return this.translate.instant(`${this.projectConfigs.getTranslationPrefix()}.filters`);\n }\n\n public getFilterButtonTitle() {\n return this.translate.instant(`${this.projectConfigs.getTranslationPrefix()}.filter`);\n }\n\n public getClearButtonTitle() {\n return this.translate.instant(`${this.projectConfigs.getTranslationPrefix()}.clear`);\n }\n\n public getErrorInvalid() {\n return this.translate.instant(`${this.projectConfigs.getTranslationPrefix()}.error_invalid`);\n }\n\n public getErrorServerTitle() {\n return this.translate.instant(`${this.projectConfigs.getTranslationPrefix()}.error_server_title`);\n }\n\n public getErrorServerDescription() {\n return this.translate.instant(`${this.projectConfigs.getTranslationPrefix()}.error_server_description`);\n }\n\n public getActionsColumnLabel() {\n return this.translate.instant(`${this.projectConfigs.getTranslationPrefix()}.actions`);\n }\n\n public onSearch() {\n const filterData = this.filterFormGroup.getRawValue();\n this.filtersPanelCollapsed = true;\n this.resetGrid({ filterData });\n }\n\n public onClear() {\n this.filterFormGroup.reset();\n const filterData = this.filterFormGroup.getRawValue();\n this.resetGrid({ filterData });\n }\n\n public onRemoveToken(token: IToken) {\n this.filterFormGroup.get(token.id).setValue(undefined);\n const filterData = this.filterFormGroup.getRawValue();\n this.resetGrid({ filterData });\n }\n\n public onGridChange(event: LazyLoadEvent) {\n const size = event.rows;\n const page = event.first / size;\n const sort = event.multiSortMeta ? event.multiSortMeta : [];\n return this.updateGrid({ page, size, sort });\n }\n\n private getFilterTokens() {\n const filterData = this.filterFormGroup.value;\n\n return this.filterFields\n .filter(({ name }) => filterData[name] !== undefined && filterData[name] !== \"\" && filterData[name] !== null)\n .map(formField => this.filterService.createFilterTokens(formField, filterData[formField.name]));\n }\n\n private getFilterQuery(): string {\n const { filterData } = this.currentListParams;\n const dateFields = [\"startDate\", \"endDate\"];\n\n let filterQuery = this.filterFields\n .filter(({ name }) => !dateFields.includes(name))\n .filter(({ name }) => filterData[name] !== undefined && filterData[name] !== \"\" && filterData[name] !== null)\n .map(formField => this.filterService.createFilterString(formField, filterData[formField.name]))\n .join(\" and \");\n\n let dateQuery: string;\n if (filterData.startDate && filterData.endDate) {\n const startDate = moment(filterData.startDate).format(\"YYYY-MM-DD\");\n const endDate = moment(filterData.endDate).format(\"YYYY-MM-DD\");\n dateQuery = `startDate between '${startDate}T00:00:00Z' and '${endDate}T23:59:59Z'`;\n } else if (filterData.startDate) {\n const startDate = moment(filterData.startDate).format(\"YYYY-MM-DD\");\n dateQuery = `startDate >= '${startDate}T00:00:00Z'`;\n } else if (filterData.endDate) {\n const endDate = moment(filterData.endDate).format(\"YYYY-MM-DD\");\n dateQuery = `finishDate <= '${endDate}T23:59:59Z'`;\n } else {\n // Não é necessário nenhuma condição a mais no filtro.\n }\n\n if (dateQuery) {\n filterQuery += filterQuery ? ` and ${dateQuery}` : dateQuery;\n }\n\n return filterQuery;\n }\n\n private updateGrid(listParams: ListParams = {}) {\n this.currentListParams = { ...this.currentListParams, ...listParams };\n const { page, size, sort } = this.currentListParams;\n\n this.searchTokens = this.getFilterTokens();\n const filterQuery = this.getFilterQuery();\n const displayFields = [\n \"recordId\",\n ...this.gridColumns.map(column => column.field)\n ];\n\n this.listExclusions({ page, size, sort, filterQuery, displayFields });\n }\n\n public listExclusions(params: any) {\n this.showLoader = true;\n this.serverError = false;\n\n this.changeDetectorRef.detectChanges();\n\n this.logicalDeleteService\n .listExclusions(this.entityName, params)\n .pipe(\n takeUntil(this.ngUnsubscribe),\n catchError((err: any) => {\n if (err.status >= HTTP_CODE_SERVER_ERROR_START && err.status < HTTP_CODE_SERVER_ERROR_END) {\n this.serverError = true;\n }\n throw err;\n }),\n finalize(() => this.showLoader = false)\n )\n .subscribe((list: any) => {\n this.gridData = list.contents;\n this.totalRecords = list.totalElements;\n });\n }\n\n public focusInput(elementId: string) {\n const element: any = document.getElementById(`${elementId}`);\n if (element) {\n element.focus();\n }\n }\n\n public resetGrid(listParams?: ListParams) {\n if (listParams) {\n this.currentListParams = { ...this.currentListParams, ...listParams };\n }\n this.currentListParams = { ...this.currentListParams, page: 0, sort: [] };\n this.table.reset();\n }\n\n public onClickDetails(rowData: ExclusionProcess) {\n this.exclusionDetailsComponent.showDetails({\n processId: rowData.id,\n entityDescription: this.entityDescription,\n entityName: this.entityName\n });\n }\n}\n","import { NgModule, Injectable, Component } from \"@angular/core\";\nimport { RouterModule, Routes, CanActivate } from \"@angular/router\";\nimport { TranslateService } from \"@ngx-translate/core\";\nimport { PermissionsService } from \"@seniorsistemas/platform-components\";\nimport { LocaleService } from \"@seniorsistemas/angular-components\";\nimport { ExclusionsListComponent } from \"./exclusions-list.component\";\nimport { LogicalDeleteConfigService } from \"../services/logical-delete-config.service\";\n\n@Injectable()\nexport class ExclusionsListFeatureRoutingGuard implements CanActivate {\n public canActivate() {\n return true;\n }\n}\n\n@Injectable()\nexport class ExclusionsListFeatureRoutingListTitleResolver {\n constructor(\n private readonly translate: TranslateService,\n private readonly projectConfigs: LogicalDeleteConfigService\n ) {}\n\n public resolve() {\n return this.translate.get(`${this.projectConfigs.getTranslationPrefix()}.logical_delete_list_title`);\n }\n}\n\n@Injectable()\nexport class ExclusionsListFeatureRoutingPermissionResolver {\n constructor(private readonly permissionsService: PermissionsService) {}\n\n public resolve() {\n return this.permissionsService.get();\n }\n}\n\n@Injectable()\nexport class ExclusionsListFeatureRoutingLocaleResolver {\n constructor(private readonly localeService: LocaleService) {}\n\n public resolve() {\n return this.localeService.get();\n }\n}\n\n@Component({\n template: `<router-outlet></router-outlet>`\n})\nexport class EmptyComponent {}\n\nexport const routes: Routes = [\n {\n path: \"exclusions-list\",\n component: EmptyComponent,\n canActivate: [\n ExclusionsListFeatureRoutingGuard\n ],\n resolve: {\n allPermissions: ExclusionsListFeatureRoutingPermissionResolver,\n localeConfig: ExclusionsListFeatureRoutingLocaleResolver,\n routeTitle: ExclusionsListFeatureRoutingListTitleResolver\n },\n children: [\n {\n path: \":entityName\",\n component: ExclusionsListComponent\n }\n ]\n }\n];\n\n@NgModule({\n imports: [\n RouterModule.forChild(routes)\n ],\n exports: [\n RouterModule\n ],\n providers: [\n ExclusionsListFeatureRoutingGuard,\n ExclusionsListFeatureRoutingPermissionResolver,\n ExclusionsListFeatureRoutingLocaleResolver,\n ExclusionsListFeatureRoutingListTitleResolver\n ],\n declarations: [\n EmptyComponent\n ]\n})\nexport class ExclusionsListFeatureRouting {}\n","import { CommonModule } from \"@angular/common\";\nimport { NgModule } from \"@angular/core\";\nimport { PanelModule } from \"primeng/panel\";\nimport { TableModule as PrimeTableModule } from \"primeng/table\";\nimport {\n ButtonModule,\n LoadingStateModule,\n TableModule,\n LocaleModule,\n TokenListModule,\n DynamicFormModule,\n EmptyStateModule,\n ControlErrorsModule,\n InfoSignModule\n} from \"@seniorsistemas/angular-components\";\nimport { ExclusionsListComponent } from \"./exclusions-list.component\";\nimport { TranslateModule } from \"@ngx-translate/core\";\nimport { FormsModule, ReactiveFormsModule } from \"@angular/forms\";\nimport { DialogModule } from \"primeng/dialog\";\nimport { ConfirmDialogModule } from \"primeng/confirmdialog\";\nimport { InputTextModule } from \"primeng/inputtext\";\nimport { ExclusionDetailsModule } from \"../exclusion-details\";\nimport { ExclusionsListFeatureRouting } from \"./exclusions-list.routing\";\n\n@NgModule({\n imports: [\n FormsModule,\n ReactiveFormsModule,\n TranslateModule,\n CommonModule,\n ControlErrorsModule,\n ButtonModule,\n PanelModule,\n InputTextModule,\n InfoSignModule,\n ConfirmDialogModule,\n DialogModule,\n PrimeTableModule,\n TableModule,\n LoadingStateModule,\n EmptyStateModule,\n DynamicFormModule,\n TokenListModule,\n LocaleModule.forChild(),\n ExclusionDetailsModule,\n ExclusionsListFeatureRouting\n ],\n declarations: [ExclusionsListComponent],\n exports: [ExclusionsListComponent],\n entryComponents: [ExclusionsListComponent]\n})\nexport class ExclusionsListModule {}\n","import { ModuleWithProviders, NgModule } from \"@angular/core\";\nimport { ProjectConfigs, ProjectConfigsInjectionToken } from \"./models/project-config\";\nimport { FilterService } from \"./services/filter.service\";\nimport { LogicalDeleteConfigService } from \"./services/logical-delete-config.service\";\nimport { LogicalDeleteService } from \"./services/logical-delete.service\";\n\n@NgModule({\n providers: [LogicalDeleteService, LogicalDeleteConfigService, FilterService]\n})\nexport class LogicalDeleteModule {\n static forRoot(config: ProjectConfigs): ModuleWithProviders<LogicalDeleteModule> {\n return {\n ngModule: LogicalDeleteModule,\n providers: [\n {\n provide: ProjectConfigsInjectionToken,\n useValue: config\n }\n ]\n };\n }\n}\n"]}
|