@senior-agronegocio/angular-components 0.0.9857 → 0.0.9858
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/senior-agronegocio-angular-components.umd.js +1 -5
- package/bundles/senior-agronegocio-angular-components.umd.js.map +1 -1
- package/bundles/senior-agronegocio-angular-components.umd.min.js +1 -1
- package/bundles/senior-agronegocio-angular-components.umd.min.js.map +1 -1
- package/components/modal-invoice-pj-selector/modal-invoice-pj-selector.component.d.ts +0 -1
- package/esm2015/components/modal-invoice-pj-selector/modal-invoice-pj-selector.component.js +2 -6
- package/esm5/components/modal-invoice-pj-selector/modal-invoice-pj-selector.component.js +2 -6
- package/fesm2015/senior-agronegocio-angular-components.js +1 -5
- package/fesm2015/senior-agronegocio-angular-components.js.map +1 -1
- package/fesm5/senior-agronegocio-angular-components.js +1 -5
- package/fesm5/senior-agronegocio-angular-components.js.map +1 -1
- package/package.json +1 -1
|
@@ -166,10 +166,6 @@ let ModalInvoicePjSelectorComponent = class ModalInvoicePjSelectorComponent {
|
|
|
166
166
|
this.resetSpecs();
|
|
167
167
|
});
|
|
168
168
|
}
|
|
169
|
-
getItemsQuantity(row) {
|
|
170
|
-
var _a;
|
|
171
|
-
return ((_a = row.invoiceItems) === null || _a === void 0 ? void 0 : _a.reduce((sum, item) => sum + (item.quantity || 0), 0)) || 0;
|
|
172
|
-
}
|
|
173
169
|
};
|
|
174
170
|
ModalInvoicePjSelectorComponent.ctorParameters = () => [
|
|
175
171
|
{ type: LibTranslationService },
|
|
@@ -184,9 +180,9 @@ __decorate([
|
|
|
184
180
|
ModalInvoicePjSelectorComponent = __decorate([
|
|
185
181
|
Component({
|
|
186
182
|
selector: "s-modal-invoice-pj-selector",
|
|
187
|
-
template: "<p-dialog\r\n header=\"{{ 'agro.angular_components.panel_title_external_invoice_add_external_invoice' | libTranslate }}\"\r\n [(visible)]=\"visible\"\r\n [modal]=\"true\"\r\n class=\"add-invoice-modal\"\r\n [closeOnEscape]=\"false\"\r\n (onHide)=\"cancelPooling()\"\r\n [dismissableMask]=\"false\"\r\n>\r\n <ng-container *ngIf=\"!dontHaveAnyInvoice\">\r\n <div class=\"ui-g\">\r\n <label for=\"invoiceSearchInput\">{{ \"agro.angular_components.number_or_series\" | libTranslate }}</label>\r\n <input\r\n type=\"text\"\r\n id=\"invoiceSearchInput\"\r\n pInputText\r\n [formControl]=\"searchValue\"\r\n [placeholder]=\"'' | libTranslate\"\r\n [required]=\"false\"\r\n />\r\n <div class=\"ui-g-12\">\r\n <p-table\r\n [(selection)]=\"selected\"\r\n [value]=\"gridData\"\r\n [columns]=\"gridColumns\"\r\n [scrollable]=\"true\"\r\n dataKey=\"externalInvoiceId\"\r\n [rows]=\"10\"\r\n [paginator]=\"true\"\r\n [lazyLoadOnInit]=\"false\"\r\n [totalRecords]=\"gridTotalRecords\"\r\n [lazy]=\"true\"\r\n (onLazyLoad)=\"updateGridData($event)\"\r\n [resizableColumns]=\"true\"\r\n *sLoadingState=\"gridLoading\"\r\n sortMode=\"multiple\"\r\n [selectionMode]=\"'multiple'\"\r\n >\r\n <ng-template pTemplate=\"header\" let-columns>\r\n <tr>\r\n <th class=\"checkbox\" scope=\"col\">\r\n <p-tableHeaderCheckbox></p-tableHeaderCheckbox>\r\n </th>\r\n <ng-container *ngFor=\"let col of columns\">\r\n <th class=\"column\" scope=\"col\" *ngIf=\"['invoiceItems', 'quantity'].includes(col.field)\">\r\n {{ col.header }}\r\n </th>\r\n <th\r\n class=\"column\"\r\n [pSortableColumn]=\"col.field\"\r\n scope=\"col\"\r\n *ngIf=\"!['invoiceItems', 'quantity'].includes(col.field)\"\r\n >\r\n {{ col.header }}\r\n <p-sortIcon [field]=\"col.field\"></p-sortIcon>\r\n </th>\r\n </ng-container>\r\n </tr>\r\n </ng-template>\r\n\r\n <ng-template pTemplate=\"body\" let-rowData let-columns=\"columns\" let-rowIndex=\"rowIndex\">\r\n <tr>\r\n <td class=\"checkbox\" tabindex=\"0\">\r\n <p-tableCheckbox [value]=\"rowData\"></p-tableCheckbox>\r\n </td>\r\n <td\r\n [pSelectableRow]=\"rowData\"\r\n [pSelectableRowIndex]=\"rowIndex\"\r\n *ngFor=\"let col of columns\"\r\n class=\"column\"\r\n tabindex=\"0\"\r\n >\r\n <ng-container [ngSwitch]=\"col.field\">\r\n <ng-container *ngSwitchCase=\"'issuanceDate'\">\r\n {{ rowData[col.field] | localizedDate: \"L\" | async }}\r\n </ng-container>\r\n <ng-container *ngSwitchCase=\"'invoiceItems'\">\r\n {{ rowData[col.field]?.
|
|
183
|
+
template: "<p-dialog\r\n header=\"{{ 'agro.angular_components.panel_title_external_invoice_add_external_invoice' | libTranslate }}\"\r\n [(visible)]=\"visible\"\r\n [modal]=\"true\"\r\n class=\"add-invoice-modal\"\r\n [closeOnEscape]=\"false\"\r\n (onHide)=\"cancelPooling()\"\r\n [dismissableMask]=\"false\"\r\n>\r\n <ng-container *ngIf=\"!dontHaveAnyInvoice\">\r\n <div class=\"ui-g\">\r\n <label for=\"invoiceSearchInput\">{{ \"agro.angular_components.number_or_series\" | libTranslate }}</label>\r\n <input\r\n type=\"text\"\r\n id=\"invoiceSearchInput\"\r\n pInputText\r\n [formControl]=\"searchValue\"\r\n [placeholder]=\"'' | libTranslate\"\r\n [required]=\"false\"\r\n />\r\n <div class=\"ui-g-12\">\r\n <p-table\r\n [(selection)]=\"selected\"\r\n [value]=\"gridData\"\r\n [columns]=\"gridColumns\"\r\n [scrollable]=\"true\"\r\n dataKey=\"externalInvoiceId\"\r\n [rows]=\"10\"\r\n [paginator]=\"true\"\r\n [lazyLoadOnInit]=\"false\"\r\n [totalRecords]=\"gridTotalRecords\"\r\n [lazy]=\"true\"\r\n (onLazyLoad)=\"updateGridData($event)\"\r\n [resizableColumns]=\"true\"\r\n *sLoadingState=\"gridLoading\"\r\n sortMode=\"multiple\"\r\n [selectionMode]=\"'multiple'\"\r\n >\r\n <ng-template pTemplate=\"header\" let-columns>\r\n <tr>\r\n <th class=\"checkbox\" scope=\"col\">\r\n <p-tableHeaderCheckbox></p-tableHeaderCheckbox>\r\n </th>\r\n <ng-container *ngFor=\"let col of columns\">\r\n <th class=\"column\" scope=\"col\" *ngIf=\"['invoiceItems', 'quantity'].includes(col.field)\">\r\n {{ col.header }}\r\n </th>\r\n <th\r\n class=\"column\"\r\n [pSortableColumn]=\"col.field\"\r\n scope=\"col\"\r\n *ngIf=\"!['invoiceItems', 'quantity'].includes(col.field)\"\r\n >\r\n {{ col.header }}\r\n <p-sortIcon [field]=\"col.field\"></p-sortIcon>\r\n </th>\r\n </ng-container>\r\n </tr>\r\n </ng-template>\r\n\r\n <ng-template pTemplate=\"body\" let-rowData let-columns=\"columns\" let-rowIndex=\"rowIndex\">\r\n <tr>\r\n <td class=\"checkbox\" tabindex=\"0\">\r\n <p-tableCheckbox [value]=\"rowData\"></p-tableCheckbox>\r\n </td>\r\n <td\r\n [pSelectableRow]=\"rowData\"\r\n [pSelectableRowIndex]=\"rowIndex\"\r\n *ngFor=\"let col of columns\"\r\n class=\"column\"\r\n tabindex=\"0\"\r\n >\r\n <ng-container [ngSwitch]=\"col.field\">\r\n <ng-container *ngSwitchCase=\"'issuanceDate'\">\r\n {{ rowData[col.field] | localizedDate: \"L\" | async }}\r\n </ng-container>\r\n <ng-container *ngSwitchCase=\"'invoiceItems'\">\r\n {{ rowData[col.field]?.totalItems || 0 }}\r\n </ng-container>\r\n <ng-container *ngSwitchCase=\"'quantity'\">\r\n {{ rowData.totalItemsQuantity || 0 | kilogram }}\r\n </ng-container>\r\n <ng-container *ngSwitchDefault> {{ rowData[col.field] }} </ng-container>\r\n </ng-container>\r\n </td>\r\n </tr>\r\n </ng-template>\r\n\r\n <ng-template pTemplate=\"paginatorright\">\r\n <span>{{ gridTotalRecords }} registros encontrados</span>\r\n </ng-template>\r\n </p-table>\r\n </div>\r\n </div>\r\n </ng-container>\r\n\r\n <ng-container *ngIf=\"dontHaveAnyInvoice\">\r\n <s-empty-state\r\n iconClass=\"fa fa-exclamation-triangle\"\r\n title=\"{{ 'agro.angular_components.add_pj_invoice_modal_no_invoices_found' | libTranslate }}\"\r\n primaryActionLabel=\"{{ 'agro.angular_components.error_server_try_again' | libTranslate }}\"\r\n (primaryAction)=\"tryToSearchAgain()\"\r\n description=\"{{ 'agro.angular_components.no_register_found_for_external_invoices_summary' | libTranslate }}\"\r\n >\r\n </s-empty-state>\r\n </ng-container>\r\n\r\n <p-footer class=\"footer\" *ngIf=\"!dontHaveAnyInvoice\">\r\n <s-button\r\n [priority]=\"buttonPriority.Primary\"\r\n label=\"{{ 'agro.angular_components.panel_title_external_invoice_add_external_invoice' | libTranslate }}\"\r\n [disabled]=\"!selected?.length\"\r\n (click)=\"add()\"\r\n (keydown.enter)=\"add()\"\r\n ></s-button>\r\n <s-button\r\n [priority]=\"buttonPriority.Link\"\r\n label=\"{{ 'agro.angular_components.cancel' | libTranslate }}\"\r\n (click)=\"cancel()\"\r\n (keydown.enter)=\"cancel()\"\r\n ></s-button>\r\n </p-footer>\r\n</p-dialog>\r\n",
|
|
188
184
|
styles: [".footer{width:100%;display:-ms-flexbox;display:flex;-ms-flex-pack:justify;justify-content:space-between;-ms-flex-align:center;align-items:center}.add-invoice-modal{width:480px;max-width:480px}.add-invoice-modal input[type=text]{width:100%}.add-invoice-modal .ui-dialog{width:480px!important}.add-invoice-modal .ui-dialog .ui-dialog-content{min-height:175px}td.checkbox,th.checkbox{width:50px}td.column,th.column{min-width:150px;overflow:hidden;white-space:nowrap;text-overflow:ellipsis}"]
|
|
189
185
|
})
|
|
190
186
|
], ModalInvoicePjSelectorComponent);
|
|
191
187
|
export { ModalInvoicePjSelectorComponent };
|
|
192
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibW9kYWwtaW52b2ljZS1wai1zZWxlY3Rvci5jb21wb25lbnQuanMiLCJzb3VyY2VSb290Ijoibmc6Ly9Ac2VuaW9yLWFncm9uZWdvY2lvL2FuZ3VsYXItY29tcG9uZW50cy8iLCJzb3VyY2VzIjpbImNvbXBvbmVudHMvbW9kYWwtaW52b2ljZS1wai1zZWxlY3Rvci9tb2RhbC1pbnZvaWNlLXBqLXNlbGVjdG9yLmNvbXBvbmVudC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiO0FBQUEsT0FBTyxFQUFFLFNBQVMsRUFBRSxZQUFZLEVBQUUsS0FBSyxFQUFxQixNQUFNLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFFMUYsT0FBTyxFQUFFLFlBQVksRUFBRSxRQUFRLEVBQUUsU0FBUyxFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFDbkUsT0FBTyxFQUFFLE9BQU8sRUFBRSxNQUFNLE1BQU0sQ0FBQztBQUMvQixPQUFPLEVBQUUsV0FBVyxFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFFN0MsT0FBTyxFQUFFLGtCQUFrQixFQUFFLE1BQU0sOENBQThDLENBQUM7QUFFbEYsT0FBTyxFQUFFLGNBQWMsRUFBRSxNQUFNLG9DQUFvQyxDQUFDO0FBQ3BFLE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSwrQkFBK0IsQ0FBQztBQUM3RCxPQUFPLEVBQUUscUJBQXFCLEVBQUUsTUFBTSx3Q0FBd0MsQ0FBQztBQUcvRSxNQUFNLGFBQWEsR0FBRyxnQkFBZ0IsQ0FBQztBQU92QyxJQUFhLCtCQUErQixHQUE1QyxNQUFhLCtCQUErQjtJQXlDeEMsWUFDcUIsU0FBZ0MsRUFDaEMsY0FBa0M7UUFEbEMsY0FBUyxHQUFULFNBQVMsQ0FBdUI7UUFDaEMsbUJBQWMsR0FBZCxjQUFjLENBQW9CO1FBekN0Qyx1QkFBa0IsR0FBd0IsSUFBSSxZQUFZLEVBQVMsQ0FBQztRQUc5RSxtQkFBYyxHQUFHLGNBQWMsQ0FBQztRQUVoQyxnQkFBVyxHQUFHO1lBQ2pCLEVBQUUsS0FBSyxFQUFFLFFBQVEsRUFBRSxN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QkFBK0I7SUFMM0MsU0FBUyxDQUFDO1FBQ1AsUUFBUSxFQUFFLDZCQUE2QjtRQUN2QyxrcE1BQXlEOztLQUU1RCxDQUFDO0dBQ1csK0JBQStCLENBK0wzQztTQS9MWSwrQkFBK0IiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDb21wb25lbnQsIEV2ZW50RW1pdHRlciwgSW5wdXQsIE9uRGVzdHJveSwgT25Jbml0LCBPdXRwdXQgfSBmcm9tIFwiQGFuZ3VsYXIvY29yZVwiO1xyXG5pbXBvcnQgeyBMYXp5TG9hZEV2ZW50IH0gZnJvbSBcInByaW1lbmdcIjtcclxuaW1wb3J0IHsgZGVib3VuY2VUaW1lLCBmaW5hbGl6ZSwgdGFrZVVudGlsIH0gZnJvbSBcInJ4anMvb3BlcmF0b3JzXCI7XHJcbmltcG9ydCB7IFN1YmplY3QgfSBmcm9tIFwicnhqc1wiO1xyXG5pbXBvcnQgeyBGb3JtQ29udHJvbCB9IGZyb20gXCJAYW5ndWxhci9mb3Jtc1wiO1xyXG5pbXBvcnQgeyBMaXN0UGFyYW1zIH0gZnJvbSBcIi4uLy4uL3NlcnZpY2VzL2VudGl0eS1zZXJ2aWNlXCI7XHJcbmltcG9ydCB7IEFncm9JbnZvaWNlU2VydmljZSB9IGZyb20gXCIuL3NlcnZpY2VzL2Fncm8taW52b2ljZS9hZ3JvLWludm9pY2Uuc2VydmljZVwiO1xyXG5pbXBvcnQgeyBNb2RhbEludm9pY2VQalNlbGVjdG9yT3B0aW9ucyB9IGZyb20gXCIuL21vZGFsLWludm9pY2UtcGotc2VsZWN0b3Itb3B0aW9ucy5pbnRlcmZhY2VcIjtcclxuaW1wb3J0IHsgQnV0dG9uUHJpb3JpdHkgfSBmcm9tIFwiQHNlbmlvcnNpc3RlbWFzL2FuZ3VsYXItY29tcG9uZW50c1wiO1xyXG5pbXBvcnQgeyBBR1JPX05VTUJFUlMgfSBmcm9tIFwiLi4vLi4vZW51bXMvYWdyby1udW1iZXJzLmVudW1cIjtcclxuaW1wb3J0IHsgTGliVHJhbnNsYXRpb25TZXJ2aWNlIH0gZnJvbSBcIi4uLy4uL3NlcnZpY2VzL2xpYi10cmFuc2xhdGlvbi5zZXJ2aWNlXCI7XHJcbmltcG9ydCB7IElJbnZvaWNlTG9va3VwRmlsdGVyIH0gZnJvbSBcIi4vc2VydmljZXMvYWdyby1pbnZvaWNlL2ludGVyZmFjZXNcIjtcclxuXHJcbmNvbnN0IElOVk9JQ0VfSVRFTVMgPSBcImludm9pY2VJdGVtcy4qXCI7XHJcblxyXG5AQ29tcG9uZW50KHtcclxuICAgIHNlbGVjdG9yOiBcInMtbW9kYWwtaW52b2ljZS1wai1zZWxlY3RvclwiLFxyXG4gICAgdGVtcGxhdGVVcmw6IFwiLi9tb2RhbC1pbnZvaWNlLXBqLXNlbGVjdG9yLmNvbXBvbmVudC5odG1sXCIsXHJcbiAgICBzdHlsZVVybHM6IFtcIi4vbW9kYWwtaW52b2ljZS1wai1zZWxlY3Rvci5jb21wb25lbnQuc2Nzc1wiXSxcclxufSlcclxuZXhwb3J0IGNsYXNzIE1vZGFsSW52b2ljZVBqU2VsZWN0b3JDb21wb25lbnQgaW1wbGVtZW50cyBPbkluaXQsIE9uRGVzdHJveSB7XHJcbiAgICBASW5wdXQoKSBwdWJsaWMgb3B0aW9ucyE6IE1vZGFsSW52b2ljZVBqU2VsZWN0b3JPcHRpb25zO1xyXG4gICAgQE91dHB1dCgpIHB1YmxpYyB3aGVuU2VsZWN0SW52b2ljZXM6IEV2ZW50RW1pdHRlcjxhbnlbXT4gPSBuZXcgRXZlbnRFbWl0dGVyPGFueVtdPigpO1xyXG5cclxuICAgIHB1YmxpYyBncmlkRGF0YTogYW55W107XHJcbiAgICBwdWJsaWMgYnV0dG9uUHJpb3JpdHkgPSBCdXR0b25Qcmlvcml0eTtcclxuXHJcbiAgICBwdWJsaWMgZ3JpZENvbHVtbnMgPSBbXHJcbiAgICAgICAgeyBmaWVsZDogXCJudW1iZXJcIiwgaGVhZGVyOiB0aGlzLnRyYW5zbGF0ZS5pbnN0YW50KFwiYWdyby5hbmd1bGFyX2NvbXBvbmVudHMubnVtYmVyXCIpIH0sXHJcbiAgICAgICAgeyBmaWVsZDogXCJzZXJpZXNcIiwgaGVhZGVyOiB0aGlzLnRyYW5zbGF0ZS5pbnN0YW50KFwiYWdyby5hbmd1bGFyX2NvbXBvbmVudHMuc2VyaWVzXCIpIH0sXHJcbiAgICAgICAgeyBmaWVsZDogXCJpbnZvaWNlSXRlbXNcIiwgaGVhZGVyOiB0aGlzLnRyYW5zbGF0ZS5pbnN0YW50KFwiYWdyby5hbmd1bGFyX2NvbXBvbmVudHMuaXRlbnNcIikgfSxcclxuICAgICAgICB7IGZpZWxkOiBcInF1YW50aXR5XCIsIGhlYWRlcjogdGhpcy50cmFuc2xhdGUuaW5zdGFudChcImFncm8uYW5ndWxhcl9jb21wb25lbnRzLnF1YW50aXR5XCIpIH0sXHJcbiAgICAgICAgeyBmaWVsZDogXCJpc3N1YW5jZURhdGVcIiwgaGVhZGVyOiB0aGlzLnRyYW5zbGF0ZS5pbnN0YW50KFwiYWdyby5hbmd1bGFyX2NvbXBvbmVudHMuaXNzdWFuY2VfZGF0ZVwiKSB9LFxyXG4gICAgXTtcclxuXHJcbiAgICBwdWJsaWMgZG9udEhhdmVBbnlJbnZvaWNlID0gZmFsc2U7XHJcblxyXG4gICAgcHVibGljIGdyaWRMb2FkaW5nID0gdHJ1ZTtcclxuICAgIHB1YmxpYyBncmlkVG90YWxSZWNvcmRzOiBudW1iZXIgPSBBR1JPX05VTUJFUlMuWkVSTztcclxuICAgIHB1YmxpYyBzZWxlY3RlZDogYW55W10gPSBbXTtcclxuICAgIHB1YmxpYyB1bnNlbGVjdGVkSWRzID0gbmV3IFNldDxudW1iZXI+KCk7XHJcblxyXG4gICAgcHVibGljIHZpc2libGUgPSBmYWxzZTtcclxuXHJcbiAgICBwdWJsaWMgc2VhcmNoVmFsdWU6IEZvcm1Db250cm9sID0gbmV3IEZvcm1Db250cm9sKFwiXCIsIFtdKTtcclxuXHJcbiAgICBwcml2YXRlIHJlYWRvbmx5IG5nVW5zdWJzY3JpYmUgPSBuZXcgU3ViamVjdCgpO1xyXG5cclxuICAgIHByaXZhdGUgY3VycmVudFBhcmFtczogTGlzdFBhcmFtcyA9IHtcclxuICAgICAgICBwYWdlOiAwLFxyXG4gICAgICAgIHNpemU6IDEwLFxyXG4gICAgICAgIHNvcnQ6IFt7IGZpZWxkOiBcImlzc3VhbmNlRGF0ZVwiLCBvcmRlcjogMSB9XSxcclxuICAgICAgICBkaXNwbGF5RmllbGRzOiBbXCIqXCIsIElOVk9JQ0VfSVRFTVMsIFwiaXNzdWFuY2VEYXRlXCJdLFxyXG4gICAgICAgIGZpbHRlclF1ZXJ5OiBcIlwiLFxyXG4gICAgfTtcclxuXHJcbiAgICBwdWJsaWMgbmdPbkRlc3Ryb3koKSB7XHJcbiAgICAgICAgdGhpcy5uZ1Vuc3Vic2NyaWJlLm5leHQoKTtcclxuICAgICAgICB0aGlzLm5nVW5zdWJzY3JpYmUuY29tcGxldGUoKTtcclxuICAgIH1cclxuXHJcbiAgICBjb25zdHJ1Y3RvcihcclxuICAgICAgICBwcml2YXRlIHJlYWRvbmx5IHRyYW5zbGF0ZTogTGliVHJhbnNsYXRpb25TZXJ2aWNlLFxyXG4gICAgICAgIHByaXZhdGUgcmVhZG9ubHkgaW52b2ljZVNlcnZpY2U6IEFncm9JbnZvaWNlU2VydmljZVxyXG4gICAgKSB7fVxyXG5cclxuICAgIG5nT25Jbml0KCk6IHZvaWQge1xyXG4gICAgICAgIHRoaXMud2hlblNlYXJjaFZhbHVlQ2hhbmdlcygpO1xyXG4gICAgfVxyXG5cclxuICAgIHByaXZhdGUgd2hlblNlYXJjaFZhbHVlQ2hhbmdlcygpIHtcclxuICAgICAgICB0aGlzLnNlYXJjaFZhbHVlLnZhbHVlQ2hhbmdlc1xyXG4gICAgICAgICAgICAucGlwZSh0YWtlVW50aWwodGhpcy5uZ1Vuc3Vic2NyaWJlKSlcclxuICAgICAgICAgICAgLnBpcGUoZGVib3VuY2VUaW1lKEFHUk9fTlVNQkVSUy5USFJFRV9IVU5EUkVEKSlcclxuICAgICAgICAgICAgLnN1YnNjcmliZSgodmFsdWU6IHN0cmluZykgPT4ge1xyXG4gICAgICAgICAgICAgICAgaWYgKHZhbHVlKSB7XHJcbiAgICAgICAgICAgICAgICAgICAgdGhpcy51cGRhdGVHcmlkRGF0YSh7IGZpcnN0OiAwLCByb3dzOiAxMCwgbXVsdGlTb3J0TWV0YTogW3sgZmllbGQ6IFwiaXNzdWFuY2VEYXRlXCIsIG9yZGVyOiAxIH1dIH0sIHZhbHVlKTtcclxuICAgICAgICAgICAgICAgIH0gZWxzZSB7XHJcbiAgICAgICAgICAgICAgICAgICAgdGhpcy51cGRhdGVHcmlkRGF0YSh7IGZpcnN0OiAwLCByb3dzOiAxMCwgbXVsdGlTb3J0TWV0YTogW3sgZmllbGQ6IFwiaXNzdWFuY2VEYXRlXCIsIG9yZGVyOiAxIH1dIH0pO1xyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICB9KTtcclxuICAgIH1cclxuXHJcbiAgICB0cnlUb1NlYXJjaEFnYWluKCkge1xyXG4gICAgICAgIHRoaXMuZ3JpZExvYWRpbmcgPSB0cnVlO1xyXG4gICAgICAgIHRoaXMudXBkYXRlR3JpZERhdGEoeyBmaXJzdDogMCwgcm93czogMTAsIG11bHRpU29ydE1ldGE6IFt7IGZpZWxkOiBcImlzc3VhbmNlRGF0ZVwiLCBvcmRlcjogMSB9XSB9KTtcclxuICAgIH1cclxuXHJcbiAgICBvcGVuKCk6IHZvaWQge1xyXG4gICAgICAgIGlmICh0aGlzLmNoZWNrSWZPcHRpb25zSXNWYWxpZCgpKSB7XHJcbiAgICAgICAgICAgIHRoaXMudmlzaWJsZSA9IHRydWU7XHJcbiAgICAgICAgICAgIHRoaXMuZ3JpZERhdGEgPSBbXTtcclxuICAgICAgICAgICAgdGhpcy5ncmlkTG9hZGluZyA9IHRydWU7XHJcbiAgICAgICAgICAgIHRoaXMuZ3JpZFRvdGFsUmVjb3JkcyA9IDA7XHJcbiAgICAgICAgICAgIHRoaXMuc2VsZWN0ZWQgPSBbXTtcclxuICAgICAgICAgICAgdGhpcy51bnNlbGVjdGVkSWRzLmNsZWFyKCk7XHJcbiAgICAgICAgICAgIHRoaXMuY3VycmVudFBhcmFtcyA9IHtcclxuICAgICAgICAgICAgICAgIHBhZ2U6IDAsXHJcbiAgICAgICAgICAgICAgICBzaXplOiAxMCxcclxuICAgICAgICAgICAgICAgIHNvcnQ6IFtdLFxyXG4gICAgICAgICAgICAgICAgZmlsdGVyUXVlcnk6IFwiXCIsXHJcbiAgICAgICAgICAgICAgICBkaXNwbGF5RmllbGRzOiBbXCIqXCIsIElOVk9JQ0VfSVRFTVNdLFxyXG4gICAgICAgICAgICB9O1xyXG4gICAgICAgICAgICB0aGlzLnVwZGF0ZUdyaWREYXRhKHsgZmlyc3Q6IDAsIHJvd3M6IDEwLCBtdWx0aVNvcnRNZXRhOiBbeyBmaWVsZDogXCJpc3N1YW5jZURhdGVcIiwgb3JkZXI6IDEgfV0gfSk7XHJcbiAgICAgICAgICAgIHRoaXMuc2VsZWN0ZWQgPSBbXTtcclxuICAgICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgcHJpdmF0ZSBjaGVja0lmT3B0aW9uc0lzVmFsaWQoKTogYm9vbGVhbiB7XHJcbiAgICAgICAgaWYgKCF0aGlzLm9wdGlvbnMpIHtcclxuICAgICAgICAgICAgcmV0dXJuIGZhbHNlO1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgaWYgKCF0aGlzLm9wdGlvbnMuY29tcGFueUlkIHx8ICF0aGlzLm9wdGlvbnMuYnJhbmNoSWQpIHtcclxuICAgICAgICAgICAgcmV0dXJuIGZhbHNlO1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgcmV0dXJuIHRydWU7XHJcbiAgICB9XHJcblxyXG4gICAgcHVibGljIHVwZGF0ZUdyaWREYXRhKGV2ZW50OiBMYXp5TG9hZEV2ZW50LCBzZWFyY2hWYWx1ZT86IHN0cmluZykge1xyXG4gICAgICAgIHRoaXMuY2FuY2VsUG9vbGluZygpO1xyXG4gICAgICAgIGNvbnN0IHsgY29tcGFueUlkLCBicmFuY2hJZCB9ID0gdGhpcy5vcHRpb25zO1xyXG5cclxuICAgICAgICBjb25zdCBwcm9kdWNlcklkID0gdGhpcy5vcHRpb25zLnByb2R1Y2Vyc0lkc1swXTtcclxuICAgICAgICBjb25zdCBydXJhbEVzdGF0ZUlkID0gdGhpcy5vcHRpb25zLnJ1cmFsRXN0YXRlSWRzWzBdO1xyXG5cclxuICAgICAgICBjb25zdCBzaXplID0gZXZlbnQucm93cztcclxuICAgICAgICBjb25zdCBwYWdlID0gZXZlbnQuZmlyc3QgLyBzaXplO1xyXG5cclxuICAgICAgICBjb25zdCBzaXplUGFnZSA9IGV2ZW50LnJvd3M7XHJcblxyXG4gICAgICAgIHRoaXMuY3VycmVudFBhcmFtcyA9IHtcclxuICAgICAgICAgICAgcGFnZSxcclxuICAgICAgICAgICAgc2l6ZSxcclxuICAgICAgICAgICAgc29ydDogZXZlbnQubXVsdGlTb3J0TWV0YT8ubGVuZ3RoID8gZXZlbnQubXVsdGlTb3J0TWV0YSA6IFt7IGZpZWxkOiBcImlzc3VhbmNlRGF0ZVwiLCBvcmRlcjogMSB9XSxcclxuICAgICAgICAgICAgZGlzcGxheUZpZWxkczogW1wiKlwiLCBJTlZPSUNFX0lURU1TLCBcImlzc3VhbmNlRGF0ZVwiXSxcclxuICAgICAgICB9O1xyXG4gICAgICAgIHRoaXMuZ3JpZExvYWRpbmcgPSB0cnVlO1xyXG4gICAgICAgIHRoaXMuZG9udEhhdmVBbnlJbnZvaWNlID0gZmFsc2U7XHJcblxyXG4gICAgICAgIGNvbnN0IGZpbHRlckJvZHk6IElJbnZvaWNlTG9va3VwRmlsdGVyID0ge1xyXG4gICAgICAgICAgICBmaWx0ZXI6IHtcclxuICAgICAgICAgICAgICAgIGNvbXBhbnlJZCxcclxuICAgICAgICAgICAgICAgIGJyYW5jaElkLFxyXG4gICAgICAgICAgICAgICAgcHJvZHVjZXJJZHM6IFtwcm9kdWNlcklkXSxcclxuICAgICAgICAgICAgICAgIHJ1cmFsRXN0YXRlSWRzOiBbcnVyYWxFc3RhdGVJZF0sXHJcbiAgICAgICAgICAgICAgICBtdWx0aVByb2R1Y3RzOiBmYWxzZSxcclxuICAgICAgICAgICAgICAgIHByb2R1Y3RJZDogdGhpcy5vcHRpb25zLnByb2R1Y3RJZCxcclxuICAgICAgICAgICAgfSxcclxuICAgICAgICAgICAgcGFnZVJlcXVlc3Q6IHtcclxuICAgICAgICAgICAgICAgIG9mZnNldDogcGFnZSxcclxuICAgICAgICAgICAgICAgIHNpemU6IHNpemVQYWdlLFxyXG4gICAgICAgICAgICAgICAgb3JkZXJCeTogdGhpcy5jdXJyZW50UGFyYW1zLnNvcnQubWFwKChzb3J0KSA9PiAoeyBmaWVsZDogc29ydC5maWVsZCwgb3JkZXI6IHNvcnQub3JkZXIgPT09IDEgPyBcImFzY1wiIDogXCJkZXNjXCIgfSkpLFxyXG4gICAgICAgICAgICB9LFxyXG4gICAgICAgIH07XHJcblxyXG4gICAgICAgIHRoaXMuaW52b2ljZVNlcnZpY2VcclxuICAgICAgICAgICAgLmludm9pY2VMb29rdXBGaWx0ZXIoZmlsdGVyQm9keSlcclxuICAgICAgICAgICAgLnBpcGUoXHJcbiAgICAgICAgICAgICAgICB0YWtlVW50aWwodGhpcy5uZ1Vuc3Vic2NyaWJlKSxcclxuICAgICAgICAgICAgICAgIGZpbmFsaXplKCgpID0+IHtcclxuICAgICAgICAgICAgICAgICAgICB0aGlzLmdyaWRMb2FkaW5nID0gZmFsc2U7XHJcbiAgICAgICAgICAgICAgICB9KVxyXG4gICAgICAgICAgICApXHJcbiAgICAgICAgICAgIC5zdWJzY3JpYmUoXHJcbiAgICAgICAgICAgICAgICAocmVzdWx0KSA9PiB7XHJcbiAgICAgICAgICAgICAgICAgICAgdGhpcy5ncmlkRGF0YSA9IHJlc3VsdD8ucmVzdWx0Py5pbnZvaWNlcyB8fCBbXTtcclxuICAgICAgICAgICAgICAgICAgICBpZiAodGhpcy5ncmlkRGF0YS5sZW5ndGggPT09IDAgJiYgIXNlYXJjaFZhbHVlKSB7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIHRoaXMuZG9udEhhdmVBbnlJbnZvaWNlID0gdHJ1ZTtcclxuICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICAgICAgdGhpcy5ncmlkVG90YWxSZWNvcmRzID0gcmVzdWx0LnJlc3VsdC50b3RhbEVsZW1lbnRzO1xyXG4gICAgICAgICAgICAgICAgfSxcclxuICAgICAgICAgICAgICAgIChlcnJvcikgPT4ge1xyXG4gICAgICAgICAgICAgICAgICAgIGNvbnNvbGUuaW5mbyhcIkVycm8gYW8gYnVzY2FyIG5vdGFzIGZpc2NhaXM6IFwiLCBlcnJvcik7XHJcbiAgICAgICAgICAgICAgICB9LFxyXG4gICAgICAgICAgICAgICAgKCkgPT4ge1xyXG4gICAgICAgICAgICAgICAgICAgIHRoaXMuZ3JpZExvYWRpbmcgPSBmYWxzZTtcclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgKTtcclxuICAgIH1cclxuXHJcbiAgICBjYW5jZWxQb29saW5nKCkge1xyXG4gICAgICAgIHRoaXMuaW52b2ljZVNlcnZpY2UuY2FuY2VsQWN0aXZlUG9vbGluZygpO1xyXG4gICAgfVxyXG5cclxuICAgIGFzeW5jIGFkZCgpOiBQcm9taXNlPHZvaWQ+IHtcclxuICAgICAgICB0cnkge1xyXG4gICAgICAgICAgICB0aGlzLndoZW5TZWxlY3RJbnZvaWNlcy5lbWl0KHRoaXMuc2VsZWN0ZWQpO1xyXG4gICAgICAgICAgICB0aGlzLnJlc2V0U3BlY3MoKTtcclxuICAgICAgICB9IGNhdGNoIChlcnJvcikge1xyXG4gICAgICAgICAgICBjb25zb2xlLmluZm8oXCJFcnJvIGFvIHNlbGVjaW9uYXIgbm90YXMgZmlzY2FpczogXCIsIGVycm9yKTtcclxuICAgICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgcHJpdmF0ZSByZXNldFNwZWNzKCk6IHZvaWQge1xyXG4gICAgICAgIHRoaXMuc2VsZWN0ZWQgPSBbXTtcclxuICAgICAgICB0aGlzLmRvbnRIYXZlQW55SW52b2ljZSA9IGZhbHNlO1xyXG4gICAgICAgIHRoaXMudmlzaWJsZSA9IGZhbHNlO1xyXG4gICAgICAgIHRoaXMuZ3JpZERhdGEgPSBbXTtcclxuICAgICAgICB0aGlzLmdyaWRMb2FkaW5nID0gZmFsc2U7XHJcbiAgICAgICAgdGhpcy5ncmlkVG90YWxSZWNvcmRzID0gMDtcclxuICAgIH1cclxuXHJcbiAgICBhc3luYyBjYW5jZWwoKTogUHJvbWlzZTx2b2lkPiB7XHJcbiAgICAgICAgdGhpcy5yZXNldFNwZWNzKCk7XHJcbiAgICB9XHJcblxyXG4gICAgcHVibGljIGdldEl0ZW1zUXVhbnRpdHkocm93OiBhbnkpOiBudW1iZXIge1xyXG4gICAgICAgIHJldHVybiByb3cuaW52b2ljZUl0ZW1zPy5yZWR1Y2UoKHN1bTogbnVtYmVyLCBpdGVtOiBhbnkpID0+IHN1bSArIChpdGVtLnF1YW50aXR5IHx8IDApLCAwKSB8fCAwO1xyXG4gICAgfVxyXG59XHJcbiJdfQ==
|
|
188
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibW9kYWwtaW52b2ljZS1wai1zZWxlY3Rvci5jb21wb25lbnQuanMiLCJzb3VyY2VSb290Ijoibmc6Ly9Ac2VuaW9yLWFncm9uZWdvY2lvL2FuZ3VsYXItY29tcG9uZW50cy8iLCJzb3VyY2VzIjpbImNvbXBvbmVudHMvbW9kYWwtaW52b2ljZS1wai1zZWxlY3Rvci9tb2RhbC1pbnZvaWNlLXBqLXNlbGVjdG9yLmNvbXBvbmVudC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiO0FBQUEsT0FBTyxFQUFFLFNBQVMsRUFBRSxZQUFZLEVBQUUsS0FBSyxFQUFxQixNQUFNLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFFMUYsT0FBTyxFQUFFLFlBQVksRUFBRSxRQUFRLEVBQUUsU0FBUyxFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFDbkUsT0FBTyxFQUFFLE9BQU8sRUFBRSxNQUFNLE1BQU0sQ0FBQztBQUMvQixPQUFPLEVBQUUsV0FBVyxFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFFN0MsT0FBTyxFQUFFLGtCQUFrQixFQUFFLE1BQU0sOENBQThDLENBQUM7QUFFbEYsT0FBTyxFQUFFLGNBQWMsRUFBRSxNQUFNLG9DQUFvQyxDQUFDO0FBQ3BFLE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSwrQkFBK0IsQ0FBQztBQUM3RCxPQUFPLEVBQUUscUJBQXFCLEVBQUUsTUFBTSx3Q0FBd0MsQ0FBQztBQUcvRSxNQUFNLGFBQWEsR0FBRyxnQkFBZ0IsQ0FBQztBQU92QyxJQUFhLCtCQUErQixHQUE1QyxNQUFhLCtCQUErQjtJQXlDeEMsWUFDcUIsU0FBZ0MsRUFDaEMsY0FBa0M7UUFEbEMsY0FBUyxHQUFULFNBQVMsQ0FBdUI7UUFDaEMsbUJBQWMsR0FBZCxjQUFjLENBQW9CO1FBekN0Qyx1QkFBa0IsR0FBd0IsSUFBSSxZQUFZLEVBQVMsQ0FBQztRQUc5RSxtQkFBYyxHQUFHLGNBQWMsQ0FBQztRQUVoQyxnQkFBVyxHQUFHO1lBQ2pCLEVBQUUsS0FBSyxFQUFFLFFBQVEsRUFBRSxN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QUFDO1FBQzdCLENBQUMsQ0FDSixDQUFDO0lBQ1YsQ0FBQztJQUVELGFBQWE7UUFDVCxJQUFJLENBQUMsY0FBYyxDQUFDLG1CQUFtQixFQUFFLENBQUM7SUFDOUMsQ0FBQztJQUVLLEdBQUc7O1lBQ0wsSUFBSTtnQkFDQSxJQUFJLENBQUMsa0JBQWtCLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxRQUFRLENBQUMsQ0FBQztnQkFDNUMsSUFBSSxDQUFDLFVBQVUsRUFBRSxDQUFDO2FBQ3JCO1lBQUMsT0FBTyxLQUFLLEVBQUU7Z0JBQ1osT0FBTyxDQUFDLElBQUksQ0FBQyxvQ0FBb0MsRUFBRSxLQUFLLENBQUMsQ0FBQzthQUM3RDtRQUNMLENBQUM7S0FBQTtJQUVPLFVBQVU7UUFDZCxJQUFJLENBQUMsUUFBUSxHQUFHLEVBQUUsQ0FBQztRQUNuQixJQUFJLENBQUMsa0JBQWtCLEdBQUcsS0FBSyxDQUFDO1FBQ2hDLElBQUksQ0FBQyxPQUFPLEdBQUcsS0FBSyxDQUFDO1FBQ3JCLElBQUksQ0FBQyxRQUFRLEdBQUcsRUFBRSxDQUFDO1FBQ25CLElBQUksQ0FBQyxXQUFXLEdBQUcsS0FBSyxDQUFDO1FBQ3pCLElBQUksQ0FBQyxnQkFBZ0IsR0FBRyxDQUFDLENBQUM7SUFDOUIsQ0FBQztJQUVLLE1BQU07O1lBQ1IsSUFBSSxDQUFDLFVBQVUsRUFBRSxDQUFDO1FBQ3RCLENBQUM7S0FBQTtDQUVKLENBQUE7O1lBbEptQyxxQkFBcUI7WUFDaEIsa0JBQWtCOztBQTFDOUM7SUFBUixLQUFLLEVBQUU7Z0VBQWdEO0FBQzlDO0lBQVQsTUFBTSxFQUFFOzJFQUE0RTtBQUY1RSwrQkFBK0I7SUFMM0MsU0FBUyxDQUFDO1FBQ1AsUUFBUSxFQUFFLDZCQUE2QjtRQUN2Qyw0cE1BQXlEOztLQUU1RCxDQUFDO0dBQ1csK0JBQStCLENBNEwzQztTQTVMWSwrQkFBK0IiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDb21wb25lbnQsIEV2ZW50RW1pdHRlciwgSW5wdXQsIE9uRGVzdHJveSwgT25Jbml0LCBPdXRwdXQgfSBmcm9tIFwiQGFuZ3VsYXIvY29yZVwiO1xyXG5pbXBvcnQgeyBMYXp5TG9hZEV2ZW50IH0gZnJvbSBcInByaW1lbmdcIjtcclxuaW1wb3J0IHsgZGVib3VuY2VUaW1lLCBmaW5hbGl6ZSwgdGFrZVVudGlsIH0gZnJvbSBcInJ4anMvb3BlcmF0b3JzXCI7XHJcbmltcG9ydCB7IFN1YmplY3QgfSBmcm9tIFwicnhqc1wiO1xyXG5pbXBvcnQgeyBGb3JtQ29udHJvbCB9IGZyb20gXCJAYW5ndWxhci9mb3Jtc1wiO1xyXG5pbXBvcnQgeyBMaXN0UGFyYW1zIH0gZnJvbSBcIi4uLy4uL3NlcnZpY2VzL2VudGl0eS1zZXJ2aWNlXCI7XHJcbmltcG9ydCB7IEFncm9JbnZvaWNlU2VydmljZSB9IGZyb20gXCIuL3NlcnZpY2VzL2Fncm8taW52b2ljZS9hZ3JvLWludm9pY2Uuc2VydmljZVwiO1xyXG5pbXBvcnQgeyBNb2RhbEludm9pY2VQalNlbGVjdG9yT3B0aW9ucyB9IGZyb20gXCIuL21vZGFsLWludm9pY2UtcGotc2VsZWN0b3Itb3B0aW9ucy5pbnRlcmZhY2VcIjtcclxuaW1wb3J0IHsgQnV0dG9uUHJpb3JpdHkgfSBmcm9tIFwiQHNlbmlvcnNpc3RlbWFzL2FuZ3VsYXItY29tcG9uZW50c1wiO1xyXG5pbXBvcnQgeyBBR1JPX05VTUJFUlMgfSBmcm9tIFwiLi4vLi4vZW51bXMvYWdyby1udW1iZXJzLmVudW1cIjtcclxuaW1wb3J0IHsgTGliVHJhbnNsYXRpb25TZXJ2aWNlIH0gZnJvbSBcIi4uLy4uL3NlcnZpY2VzL2xpYi10cmFuc2xhdGlvbi5zZXJ2aWNlXCI7XHJcbmltcG9ydCB7IElJbnZvaWNlTG9va3VwRmlsdGVyIH0gZnJvbSBcIi4vc2VydmljZXMvYWdyby1pbnZvaWNlL2ludGVyZmFjZXNcIjtcclxuXHJcbmNvbnN0IElOVk9JQ0VfSVRFTVMgPSBcImludm9pY2VJdGVtcy4qXCI7XHJcblxyXG5AQ29tcG9uZW50KHtcclxuICAgIHNlbGVjdG9yOiBcInMtbW9kYWwtaW52b2ljZS1wai1zZWxlY3RvclwiLFxyXG4gICAgdGVtcGxhdGVVcmw6IFwiLi9tb2RhbC1pbnZvaWNlLXBqLXNlbGVjdG9yLmNvbXBvbmVudC5odG1sXCIsXHJcbiAgICBzdHlsZVVybHM6IFtcIi4vbW9kYWwtaW52b2ljZS1wai1zZWxlY3Rvci5jb21wb25lbnQuc2Nzc1wiXSxcclxufSlcclxuZXhwb3J0IGNsYXNzIE1vZGFsSW52b2ljZVBqU2VsZWN0b3JDb21wb25lbnQgaW1wbGVtZW50cyBPbkluaXQsIE9uRGVzdHJveSB7XHJcbiAgICBASW5wdXQoKSBwdWJsaWMgb3B0aW9ucyE6IE1vZGFsSW52b2ljZVBqU2VsZWN0b3JPcHRpb25zO1xyXG4gICAgQE91dHB1dCgpIHB1YmxpYyB3aGVuU2VsZWN0SW52b2ljZXM6IEV2ZW50RW1pdHRlcjxhbnlbXT4gPSBuZXcgRXZlbnRFbWl0dGVyPGFueVtdPigpO1xyXG5cclxuICAgIHB1YmxpYyBncmlkRGF0YTogYW55W107XHJcbiAgICBwdWJsaWMgYnV0dG9uUHJpb3JpdHkgPSBCdXR0b25Qcmlvcml0eTtcclxuXHJcbiAgICBwdWJsaWMgZ3JpZENvbHVtbnMgPSBbXHJcbiAgICAgICAgeyBmaWVsZDogXCJudW1iZXJcIiwgaGVhZGVyOiB0aGlzLnRyYW5zbGF0ZS5pbnN0YW50KFwiYWdyby5hbmd1bGFyX2NvbXBvbmVudHMubnVtYmVyXCIpIH0sXHJcbiAgICAgICAgeyBmaWVsZDogXCJzZXJpZXNcIiwgaGVhZGVyOiB0aGlzLnRyYW5zbGF0ZS5pbnN0YW50KFwiYWdyby5hbmd1bGFyX2NvbXBvbmVudHMuc2VyaWVzXCIpIH0sXHJcbiAgICAgICAgeyBmaWVsZDogXCJpbnZvaWNlSXRlbXNcIiwgaGVhZGVyOiB0aGlzLnRyYW5zbGF0ZS5pbnN0YW50KFwiYWdyby5hbmd1bGFyX2NvbXBvbmVudHMuaXRlbnNcIikgfSxcclxuICAgICAgICB7IGZpZWxkOiBcInF1YW50aXR5XCIsIGhlYWRlcjogdGhpcy50cmFuc2xhdGUuaW5zdGFudChcImFncm8uYW5ndWxhcl9jb21wb25lbnRzLnF1YW50aXR5XCIpIH0sXHJcbiAgICAgICAgeyBmaWVsZDogXCJpc3N1YW5jZURhdGVcIiwgaGVhZGVyOiB0aGlzLnRyYW5zbGF0ZS5pbnN0YW50KFwiYWdyby5hbmd1bGFyX2NvbXBvbmVudHMuaXNzdWFuY2VfZGF0ZVwiKSB9LFxyXG4gICAgXTtcclxuXHJcbiAgICBwdWJsaWMgZG9udEhhdmVBbnlJbnZvaWNlID0gZmFsc2U7XHJcblxyXG4gICAgcHVibGljIGdyaWRMb2FkaW5nID0gdHJ1ZTtcclxuICAgIHB1YmxpYyBncmlkVG90YWxSZWNvcmRzOiBudW1iZXIgPSBBR1JPX05VTUJFUlMuWkVSTztcclxuICAgIHB1YmxpYyBzZWxlY3RlZDogYW55W10gPSBbXTtcclxuICAgIHB1YmxpYyB1bnNlbGVjdGVkSWRzID0gbmV3IFNldDxudW1iZXI+KCk7XHJcblxyXG4gICAgcHVibGljIHZpc2libGUgPSBmYWxzZTtcclxuXHJcbiAgICBwdWJsaWMgc2VhcmNoVmFsdWU6IEZvcm1Db250cm9sID0gbmV3IEZvcm1Db250cm9sKFwiXCIsIFtdKTtcclxuXHJcbiAgICBwcml2YXRlIHJlYWRvbmx5IG5nVW5zdWJzY3JpYmUgPSBuZXcgU3ViamVjdCgpO1xyXG5cclxuICAgIHByaXZhdGUgY3VycmVudFBhcmFtczogTGlzdFBhcmFtcyA9IHtcclxuICAgICAgICBwYWdlOiAwLFxyXG4gICAgICAgIHNpemU6IDEwLFxyXG4gICAgICAgIHNvcnQ6IFt7IGZpZWxkOiBcImlzc3VhbmNlRGF0ZVwiLCBvcmRlcjogMSB9XSxcclxuICAgICAgICBkaXNwbGF5RmllbGRzOiBbXCIqXCIsIElOVk9JQ0VfSVRFTVMsIFwiaXNzdWFuY2VEYXRlXCJdLFxyXG4gICAgICAgIGZpbHRlclF1ZXJ5OiBcIlwiLFxyXG4gICAgfTtcclxuXHJcbiAgICBwdWJsaWMgbmdPbkRlc3Ryb3koKSB7XHJcbiAgICAgICAgdGhpcy5uZ1Vuc3Vic2NyaWJlLm5leHQoKTtcclxuICAgICAgICB0aGlzLm5nVW5zdWJzY3JpYmUuY29tcGxldGUoKTtcclxuICAgIH1cclxuXHJcbiAgICBjb25zdHJ1Y3RvcihcclxuICAgICAgICBwcml2YXRlIHJlYWRvbmx5IHRyYW5zbGF0ZTogTGliVHJhbnNsYXRpb25TZXJ2aWNlLFxyXG4gICAgICAgIHByaXZhdGUgcmVhZG9ubHkgaW52b2ljZVNlcnZpY2U6IEFncm9JbnZvaWNlU2VydmljZVxyXG4gICAgKSB7fVxyXG5cclxuICAgIG5nT25Jbml0KCk6IHZvaWQge1xyXG4gICAgICAgIHRoaXMud2hlblNlYXJjaFZhbHVlQ2hhbmdlcygpO1xyXG4gICAgfVxyXG5cclxuICAgIHByaXZhdGUgd2hlblNlYXJjaFZhbHVlQ2hhbmdlcygpIHtcclxuICAgICAgICB0aGlzLnNlYXJjaFZhbHVlLnZhbHVlQ2hhbmdlc1xyXG4gICAgICAgICAgICAucGlwZSh0YWtlVW50aWwodGhpcy5uZ1Vuc3Vic2NyaWJlKSlcclxuICAgICAgICAgICAgLnBpcGUoZGVib3VuY2VUaW1lKEFHUk9fTlVNQkVSUy5USFJFRV9IVU5EUkVEKSlcclxuICAgICAgICAgICAgLnN1YnNjcmliZSgodmFsdWU6IHN0cmluZykgPT4ge1xyXG4gICAgICAgICAgICAgICAgaWYgKHZhbHVlKSB7XHJcbiAgICAgICAgICAgICAgICAgICAgdGhpcy51cGRhdGVHcmlkRGF0YSh7IGZpcnN0OiAwLCByb3dzOiAxMCwgbXVsdGlTb3J0TWV0YTogW3sgZmllbGQ6IFwiaXNzdWFuY2VEYXRlXCIsIG9yZGVyOiAxIH1dIH0sIHZhbHVlKTtcclxuICAgICAgICAgICAgICAgIH0gZWxzZSB7XHJcbiAgICAgICAgICAgICAgICAgICAgdGhpcy51cGRhdGVHcmlkRGF0YSh7IGZpcnN0OiAwLCByb3dzOiAxMCwgbXVsdGlTb3J0TWV0YTogW3sgZmllbGQ6IFwiaXNzdWFuY2VEYXRlXCIsIG9yZGVyOiAxIH1dIH0pO1xyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICB9KTtcclxuICAgIH1cclxuXHJcbiAgICB0cnlUb1NlYXJjaEFnYWluKCkge1xyXG4gICAgICAgIHRoaXMuZ3JpZExvYWRpbmcgPSB0cnVlO1xyXG4gICAgICAgIHRoaXMudXBkYXRlR3JpZERhdGEoeyBmaXJzdDogMCwgcm93czogMTAsIG11bHRpU29ydE1ldGE6IFt7IGZpZWxkOiBcImlzc3VhbmNlRGF0ZVwiLCBvcmRlcjogMSB9XSB9KTtcclxuICAgIH1cclxuXHJcbiAgICBvcGVuKCk6IHZvaWQge1xyXG4gICAgICAgIGlmICh0aGlzLmNoZWNrSWZPcHRpb25zSXNWYWxpZCgpKSB7XHJcbiAgICAgICAgICAgIHRoaXMudmlzaWJsZSA9IHRydWU7XHJcbiAgICAgICAgICAgIHRoaXMuZ3JpZERhdGEgPSBbXTtcclxuICAgICAgICAgICAgdGhpcy5ncmlkTG9hZGluZyA9IHRydWU7XHJcbiAgICAgICAgICAgIHRoaXMuZ3JpZFRvdGFsUmVjb3JkcyA9IDA7XHJcbiAgICAgICAgICAgIHRoaXMuc2VsZWN0ZWQgPSBbXTtcclxuICAgICAgICAgICAgdGhpcy51bnNlbGVjdGVkSWRzLmNsZWFyKCk7XHJcbiAgICAgICAgICAgIHRoaXMuY3VycmVudFBhcmFtcyA9IHtcclxuICAgICAgICAgICAgICAgIHBhZ2U6IDAsXHJcbiAgICAgICAgICAgICAgICBzaXplOiAxMCxcclxuICAgICAgICAgICAgICAgIHNvcnQ6IFtdLFxyXG4gICAgICAgICAgICAgICAgZmlsdGVyUXVlcnk6IFwiXCIsXHJcbiAgICAgICAgICAgICAgICBkaXNwbGF5RmllbGRzOiBbXCIqXCIsIElOVk9JQ0VfSVRFTVNdLFxyXG4gICAgICAgICAgICB9O1xyXG4gICAgICAgICAgICB0aGlzLnVwZGF0ZUdyaWREYXRhKHsgZmlyc3Q6IDAsIHJvd3M6IDEwLCBtdWx0aVNvcnRNZXRhOiBbeyBmaWVsZDogXCJpc3N1YW5jZURhdGVcIiwgb3JkZXI6IDEgfV0gfSk7XHJcbiAgICAgICAgICAgIHRoaXMuc2VsZWN0ZWQgPSBbXTtcclxuICAgICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgcHJpdmF0ZSBjaGVja0lmT3B0aW9uc0lzVmFsaWQoKTogYm9vbGVhbiB7XHJcbiAgICAgICAgaWYgKCF0aGlzLm9wdGlvbnMpIHtcclxuICAgICAgICAgICAgcmV0dXJuIGZhbHNlO1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgaWYgKCF0aGlzLm9wdGlvbnMuY29tcGFueUlkIHx8ICF0aGlzLm9wdGlvbnMuYnJhbmNoSWQpIHtcclxuICAgICAgICAgICAgcmV0dXJuIGZhbHNlO1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgcmV0dXJuIHRydWU7XHJcbiAgICB9XHJcblxyXG4gICAgcHVibGljIHVwZGF0ZUdyaWREYXRhKGV2ZW50OiBMYXp5TG9hZEV2ZW50LCBzZWFyY2hWYWx1ZT86IHN0cmluZykge1xyXG4gICAgICAgIHRoaXMuY2FuY2VsUG9vbGluZygpO1xyXG4gICAgICAgIGNvbnN0IHsgY29tcGFueUlkLCBicmFuY2hJZCB9ID0gdGhpcy5vcHRpb25zO1xyXG5cclxuICAgICAgICBjb25zdCBwcm9kdWNlcklkID0gdGhpcy5vcHRpb25zLnByb2R1Y2Vyc0lkc1swXTtcclxuICAgICAgICBjb25zdCBydXJhbEVzdGF0ZUlkID0gdGhpcy5vcHRpb25zLnJ1cmFsRXN0YXRlSWRzWzBdO1xyXG5cclxuICAgICAgICBjb25zdCBzaXplID0gZXZlbnQucm93cztcclxuICAgICAgICBjb25zdCBwYWdlID0gZXZlbnQuZmlyc3QgLyBzaXplO1xyXG5cclxuICAgICAgICBjb25zdCBzaXplUGFnZSA9IGV2ZW50LnJvd3M7XHJcblxyXG4gICAgICAgIHRoaXMuY3VycmVudFBhcmFtcyA9IHtcclxuICAgICAgICAgICAgcGFnZSxcclxuICAgICAgICAgICAgc2l6ZSxcclxuICAgICAgICAgICAgc29ydDogZXZlbnQubXVsdGlTb3J0TWV0YT8ubGVuZ3RoID8gZXZlbnQubXVsdGlTb3J0TWV0YSA6IFt7IGZpZWxkOiBcImlzc3VhbmNlRGF0ZVwiLCBvcmRlcjogMSB9XSxcclxuICAgICAgICAgICAgZGlzcGxheUZpZWxkczogW1wiKlwiLCBJTlZPSUNFX0lURU1TLCBcImlzc3VhbmNlRGF0ZVwiXSxcclxuICAgICAgICB9O1xyXG4gICAgICAgIHRoaXMuZ3JpZExvYWRpbmcgPSB0cnVlO1xyXG4gICAgICAgIHRoaXMuZG9udEhhdmVBbnlJbnZvaWNlID0gZmFsc2U7XHJcblxyXG4gICAgICAgIGNvbnN0IGZpbHRlckJvZHk6IElJbnZvaWNlTG9va3VwRmlsdGVyID0ge1xyXG4gICAgICAgICAgICBmaWx0ZXI6IHtcclxuICAgICAgICAgICAgICAgIGNvbXBhbnlJZCxcclxuICAgICAgICAgICAgICAgIGJyYW5jaElkLFxyXG4gICAgICAgICAgICAgICAgcHJvZHVjZXJJZHM6IFtwcm9kdWNlcklkXSxcclxuICAgICAgICAgICAgICAgIHJ1cmFsRXN0YXRlSWRzOiBbcnVyYWxFc3RhdGVJZF0sXHJcbiAgICAgICAgICAgICAgICBtdWx0aVByb2R1Y3RzOiBmYWxzZSxcclxuICAgICAgICAgICAgICAgIHByb2R1Y3RJZDogdGhpcy5vcHRpb25zLnByb2R1Y3RJZCxcclxuICAgICAgICAgICAgfSxcclxuICAgICAgICAgICAgcGFnZVJlcXVlc3Q6IHtcclxuICAgICAgICAgICAgICAgIG9mZnNldDogcGFnZSxcclxuICAgICAgICAgICAgICAgIHNpemU6IHNpemVQYWdlLFxyXG4gICAgICAgICAgICAgICAgb3JkZXJCeTogdGhpcy5jdXJyZW50UGFyYW1zLnNvcnQubWFwKChzb3J0KSA9PiAoeyBmaWVsZDogc29ydC5maWVsZCwgb3JkZXI6IHNvcnQub3JkZXIgPT09IDEgPyBcImFzY1wiIDogXCJkZXNjXCIgfSkpLFxyXG4gICAgICAgICAgICB9LFxyXG4gICAgICAgIH07XHJcblxyXG4gICAgICAgIHRoaXMuaW52b2ljZVNlcnZpY2VcclxuICAgICAgICAgICAgLmludm9pY2VMb29rdXBGaWx0ZXIoZmlsdGVyQm9keSlcclxuICAgICAgICAgICAgLnBpcGUoXHJcbiAgICAgICAgICAgICAgICB0YWtlVW50aWwodGhpcy5uZ1Vuc3Vic2NyaWJlKSxcclxuICAgICAgICAgICAgICAgIGZpbmFsaXplKCgpID0+IHtcclxuICAgICAgICAgICAgICAgICAgICB0aGlzLmdyaWRMb2FkaW5nID0gZmFsc2U7XHJcbiAgICAgICAgICAgICAgICB9KVxyXG4gICAgICAgICAgICApXHJcbiAgICAgICAgICAgIC5zdWJzY3JpYmUoXHJcbiAgICAgICAgICAgICAgICAocmVzdWx0KSA9PiB7XHJcbiAgICAgICAgICAgICAgICAgICAgdGhpcy5ncmlkRGF0YSA9IHJlc3VsdD8ucmVzdWx0Py5pbnZvaWNlcyB8fCBbXTtcclxuICAgICAgICAgICAgICAgICAgICBpZiAodGhpcy5ncmlkRGF0YS5sZW5ndGggPT09IDAgJiYgIXNlYXJjaFZhbHVlKSB7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIHRoaXMuZG9udEhhdmVBbnlJbnZvaWNlID0gdHJ1ZTtcclxuICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICAgICAgdGhpcy5ncmlkVG90YWxSZWNvcmRzID0gcmVzdWx0LnJlc3VsdC50b3RhbEVsZW1lbnRzO1xyXG4gICAgICAgICAgICAgICAgfSxcclxuICAgICAgICAgICAgICAgIChlcnJvcikgPT4ge1xyXG4gICAgICAgICAgICAgICAgICAgIGNvbnNvbGUuaW5mbyhcIkVycm8gYW8gYnVzY2FyIG5vdGFzIGZpc2NhaXM6IFwiLCBlcnJvcik7XHJcbiAgICAgICAgICAgICAgICB9LFxyXG4gICAgICAgICAgICAgICAgKCkgPT4ge1xyXG4gICAgICAgICAgICAgICAgICAgIHRoaXMuZ3JpZExvYWRpbmcgPSBmYWxzZTtcclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgKTtcclxuICAgIH1cclxuXHJcbiAgICBjYW5jZWxQb29saW5nKCkge1xyXG4gICAgICAgIHRoaXMuaW52b2ljZVNlcnZpY2UuY2FuY2VsQWN0aXZlUG9vbGluZygpO1xyXG4gICAgfVxyXG5cclxuICAgIGFzeW5jIGFkZCgpOiBQcm9taXNlPHZvaWQ+IHtcclxuICAgICAgICB0cnkge1xyXG4gICAgICAgICAgICB0aGlzLndoZW5TZWxlY3RJbnZvaWNlcy5lbWl0KHRoaXMuc2VsZWN0ZWQpO1xyXG4gICAgICAgICAgICB0aGlzLnJlc2V0U3BlY3MoKTtcclxuICAgICAgICB9IGNhdGNoIChlcnJvcikge1xyXG4gICAgICAgICAgICBjb25zb2xlLmluZm8oXCJFcnJvIGFvIHNlbGVjaW9uYXIgbm90YXMgZmlzY2FpczogXCIsIGVycm9yKTtcclxuICAgICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgcHJpdmF0ZSByZXNldFNwZWNzKCk6IHZvaWQge1xyXG4gICAgICAgIHRoaXMuc2VsZWN0ZWQgPSBbXTtcclxuICAgICAgICB0aGlzLmRvbnRIYXZlQW55SW52b2ljZSA9IGZhbHNlO1xyXG4gICAgICAgIHRoaXMudmlzaWJsZSA9IGZhbHNlO1xyXG4gICAgICAgIHRoaXMuZ3JpZERhdGEgPSBbXTtcclxuICAgICAgICB0aGlzLmdyaWRMb2FkaW5nID0gZmFsc2U7XHJcbiAgICAgICAgdGhpcy5ncmlkVG90YWxSZWNvcmRzID0gMDtcclxuICAgIH1cclxuXHJcbiAgICBhc3luYyBjYW5jZWwoKTogUHJvbWlzZTx2b2lkPiB7XHJcbiAgICAgICAgdGhpcy5yZXNldFNwZWNzKCk7XHJcbiAgICB9XHJcblxyXG59XHJcbiJdfQ==
|
|
@@ -174,10 +174,6 @@ var ModalInvoicePjSelectorComponent = /** @class */ (function () {
|
|
|
174
174
|
});
|
|
175
175
|
});
|
|
176
176
|
};
|
|
177
|
-
ModalInvoicePjSelectorComponent.prototype.getItemsQuantity = function (row) {
|
|
178
|
-
var _a;
|
|
179
|
-
return ((_a = row.invoiceItems) === null || _a === void 0 ? void 0 : _a.reduce(function (sum, item) { return sum + (item.quantity || 0); }, 0)) || 0;
|
|
180
|
-
};
|
|
181
177
|
ModalInvoicePjSelectorComponent.ctorParameters = function () { return [
|
|
182
178
|
{ type: LibTranslationService },
|
|
183
179
|
{ type: AgroInvoiceService }
|
|
@@ -191,11 +187,11 @@ var ModalInvoicePjSelectorComponent = /** @class */ (function () {
|
|
|
191
187
|
ModalInvoicePjSelectorComponent = __decorate([
|
|
192
188
|
Component({
|
|
193
189
|
selector: "s-modal-invoice-pj-selector",
|
|
194
|
-
template: "<p-dialog\r\n header=\"{{ 'agro.angular_components.panel_title_external_invoice_add_external_invoice' | libTranslate }}\"\r\n [(visible)]=\"visible\"\r\n [modal]=\"true\"\r\n class=\"add-invoice-modal\"\r\n [closeOnEscape]=\"false\"\r\n (onHide)=\"cancelPooling()\"\r\n [dismissableMask]=\"false\"\r\n>\r\n <ng-container *ngIf=\"!dontHaveAnyInvoice\">\r\n <div class=\"ui-g\">\r\n <label for=\"invoiceSearchInput\">{{ \"agro.angular_components.number_or_series\" | libTranslate }}</label>\r\n <input\r\n type=\"text\"\r\n id=\"invoiceSearchInput\"\r\n pInputText\r\n [formControl]=\"searchValue\"\r\n [placeholder]=\"'' | libTranslate\"\r\n [required]=\"false\"\r\n />\r\n <div class=\"ui-g-12\">\r\n <p-table\r\n [(selection)]=\"selected\"\r\n [value]=\"gridData\"\r\n [columns]=\"gridColumns\"\r\n [scrollable]=\"true\"\r\n dataKey=\"externalInvoiceId\"\r\n [rows]=\"10\"\r\n [paginator]=\"true\"\r\n [lazyLoadOnInit]=\"false\"\r\n [totalRecords]=\"gridTotalRecords\"\r\n [lazy]=\"true\"\r\n (onLazyLoad)=\"updateGridData($event)\"\r\n [resizableColumns]=\"true\"\r\n *sLoadingState=\"gridLoading\"\r\n sortMode=\"multiple\"\r\n [selectionMode]=\"'multiple'\"\r\n >\r\n <ng-template pTemplate=\"header\" let-columns>\r\n <tr>\r\n <th class=\"checkbox\" scope=\"col\">\r\n <p-tableHeaderCheckbox></p-tableHeaderCheckbox>\r\n </th>\r\n <ng-container *ngFor=\"let col of columns\">\r\n <th class=\"column\" scope=\"col\" *ngIf=\"['invoiceItems', 'quantity'].includes(col.field)\">\r\n {{ col.header }}\r\n </th>\r\n <th\r\n class=\"column\"\r\n [pSortableColumn]=\"col.field\"\r\n scope=\"col\"\r\n *ngIf=\"!['invoiceItems', 'quantity'].includes(col.field)\"\r\n >\r\n {{ col.header }}\r\n <p-sortIcon [field]=\"col.field\"></p-sortIcon>\r\n </th>\r\n </ng-container>\r\n </tr>\r\n </ng-template>\r\n\r\n <ng-template pTemplate=\"body\" let-rowData let-columns=\"columns\" let-rowIndex=\"rowIndex\">\r\n <tr>\r\n <td class=\"checkbox\" tabindex=\"0\">\r\n <p-tableCheckbox [value]=\"rowData\"></p-tableCheckbox>\r\n </td>\r\n <td\r\n [pSelectableRow]=\"rowData\"\r\n [pSelectableRowIndex]=\"rowIndex\"\r\n *ngFor=\"let col of columns\"\r\n class=\"column\"\r\n tabindex=\"0\"\r\n >\r\n <ng-container [ngSwitch]=\"col.field\">\r\n <ng-container *ngSwitchCase=\"'issuanceDate'\">\r\n {{ rowData[col.field] | localizedDate: \"L\" | async }}\r\n </ng-container>\r\n <ng-container *ngSwitchCase=\"'invoiceItems'\">\r\n {{ rowData[col.field]?.
|
|
190
|
+
template: "<p-dialog\r\n header=\"{{ 'agro.angular_components.panel_title_external_invoice_add_external_invoice' | libTranslate }}\"\r\n [(visible)]=\"visible\"\r\n [modal]=\"true\"\r\n class=\"add-invoice-modal\"\r\n [closeOnEscape]=\"false\"\r\n (onHide)=\"cancelPooling()\"\r\n [dismissableMask]=\"false\"\r\n>\r\n <ng-container *ngIf=\"!dontHaveAnyInvoice\">\r\n <div class=\"ui-g\">\r\n <label for=\"invoiceSearchInput\">{{ \"agro.angular_components.number_or_series\" | libTranslate }}</label>\r\n <input\r\n type=\"text\"\r\n id=\"invoiceSearchInput\"\r\n pInputText\r\n [formControl]=\"searchValue\"\r\n [placeholder]=\"'' | libTranslate\"\r\n [required]=\"false\"\r\n />\r\n <div class=\"ui-g-12\">\r\n <p-table\r\n [(selection)]=\"selected\"\r\n [value]=\"gridData\"\r\n [columns]=\"gridColumns\"\r\n [scrollable]=\"true\"\r\n dataKey=\"externalInvoiceId\"\r\n [rows]=\"10\"\r\n [paginator]=\"true\"\r\n [lazyLoadOnInit]=\"false\"\r\n [totalRecords]=\"gridTotalRecords\"\r\n [lazy]=\"true\"\r\n (onLazyLoad)=\"updateGridData($event)\"\r\n [resizableColumns]=\"true\"\r\n *sLoadingState=\"gridLoading\"\r\n sortMode=\"multiple\"\r\n [selectionMode]=\"'multiple'\"\r\n >\r\n <ng-template pTemplate=\"header\" let-columns>\r\n <tr>\r\n <th class=\"checkbox\" scope=\"col\">\r\n <p-tableHeaderCheckbox></p-tableHeaderCheckbox>\r\n </th>\r\n <ng-container *ngFor=\"let col of columns\">\r\n <th class=\"column\" scope=\"col\" *ngIf=\"['invoiceItems', 'quantity'].includes(col.field)\">\r\n {{ col.header }}\r\n </th>\r\n <th\r\n class=\"column\"\r\n [pSortableColumn]=\"col.field\"\r\n scope=\"col\"\r\n *ngIf=\"!['invoiceItems', 'quantity'].includes(col.field)\"\r\n >\r\n {{ col.header }}\r\n <p-sortIcon [field]=\"col.field\"></p-sortIcon>\r\n </th>\r\n </ng-container>\r\n </tr>\r\n </ng-template>\r\n\r\n <ng-template pTemplate=\"body\" let-rowData let-columns=\"columns\" let-rowIndex=\"rowIndex\">\r\n <tr>\r\n <td class=\"checkbox\" tabindex=\"0\">\r\n <p-tableCheckbox [value]=\"rowData\"></p-tableCheckbox>\r\n </td>\r\n <td\r\n [pSelectableRow]=\"rowData\"\r\n [pSelectableRowIndex]=\"rowIndex\"\r\n *ngFor=\"let col of columns\"\r\n class=\"column\"\r\n tabindex=\"0\"\r\n >\r\n <ng-container [ngSwitch]=\"col.field\">\r\n <ng-container *ngSwitchCase=\"'issuanceDate'\">\r\n {{ rowData[col.field] | localizedDate: \"L\" | async }}\r\n </ng-container>\r\n <ng-container *ngSwitchCase=\"'invoiceItems'\">\r\n {{ rowData[col.field]?.totalItems || 0 }}\r\n </ng-container>\r\n <ng-container *ngSwitchCase=\"'quantity'\">\r\n {{ rowData.totalItemsQuantity || 0 | kilogram }}\r\n </ng-container>\r\n <ng-container *ngSwitchDefault> {{ rowData[col.field] }} </ng-container>\r\n </ng-container>\r\n </td>\r\n </tr>\r\n </ng-template>\r\n\r\n <ng-template pTemplate=\"paginatorright\">\r\n <span>{{ gridTotalRecords }} registros encontrados</span>\r\n </ng-template>\r\n </p-table>\r\n </div>\r\n </div>\r\n </ng-container>\r\n\r\n <ng-container *ngIf=\"dontHaveAnyInvoice\">\r\n <s-empty-state\r\n iconClass=\"fa fa-exclamation-triangle\"\r\n title=\"{{ 'agro.angular_components.add_pj_invoice_modal_no_invoices_found' | libTranslate }}\"\r\n primaryActionLabel=\"{{ 'agro.angular_components.error_server_try_again' | libTranslate }}\"\r\n (primaryAction)=\"tryToSearchAgain()\"\r\n description=\"{{ 'agro.angular_components.no_register_found_for_external_invoices_summary' | libTranslate }}\"\r\n >\r\n </s-empty-state>\r\n </ng-container>\r\n\r\n <p-footer class=\"footer\" *ngIf=\"!dontHaveAnyInvoice\">\r\n <s-button\r\n [priority]=\"buttonPriority.Primary\"\r\n label=\"{{ 'agro.angular_components.panel_title_external_invoice_add_external_invoice' | libTranslate }}\"\r\n [disabled]=\"!selected?.length\"\r\n (click)=\"add()\"\r\n (keydown.enter)=\"add()\"\r\n ></s-button>\r\n <s-button\r\n [priority]=\"buttonPriority.Link\"\r\n label=\"{{ 'agro.angular_components.cancel' | libTranslate }}\"\r\n (click)=\"cancel()\"\r\n (keydown.enter)=\"cancel()\"\r\n ></s-button>\r\n </p-footer>\r\n</p-dialog>\r\n",
|
|
195
191
|
styles: [".footer{width:100%;display:-ms-flexbox;display:flex;-ms-flex-pack:justify;justify-content:space-between;-ms-flex-align:center;align-items:center}.add-invoice-modal{width:480px;max-width:480px}.add-invoice-modal input[type=text]{width:100%}.add-invoice-modal .ui-dialog{width:480px!important}.add-invoice-modal .ui-dialog .ui-dialog-content{min-height:175px}td.checkbox,th.checkbox{width:50px}td.column,th.column{min-width:150px;overflow:hidden;white-space:nowrap;text-overflow:ellipsis}"]
|
|
196
192
|
})
|
|
197
193
|
], ModalInvoicePjSelectorComponent);
|
|
198
194
|
return ModalInvoicePjSelectorComponent;
|
|
199
195
|
}());
|
|
200
196
|
export { ModalInvoicePjSelectorComponent };
|
|
201
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibW9kYWwtaW52b2ljZS1wai1zZWxlY3Rvci5jb21wb25lbnQuanMiLCJzb3VyY2VSb290Ijoibmc6Ly9Ac2VuaW9yLWFncm9uZWdvY2lvL2FuZ3VsYXItY29tcG9uZW50cy8iLCJzb3VyY2VzIjpbImNvbXBvbmVudHMvbW9kYWwtaW52b2ljZS1wai1zZWxlY3Rvci9tb2RhbC1pbnZvaWNlLXBqLXNlbGVjdG9yLmNvbXBvbmVudC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiO0FBQUEsT0FBTyxFQUFFLFNBQVMsRUFBRSxZQUFZLEVBQUUsS0FBSyxFQUFxQixNQUFNLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFFMUYsT0FBTyxFQUFFLFlBQVksRUFBRSxRQUFRLEVBQUUsU0FBUyxFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFDbkUsT0FBTyxFQUFFLE9BQU8sRUFBRSxNQUFNLE1BQU0sQ0FBQztBQUMvQixPQUFPLEVBQUUsV0FBVyxFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFFN0MsT0FBTyxFQUFFLGtCQUFrQixFQUFFLE1BQU0sOENBQThDLENBQUM7QUFFbEYsT0FBTyxFQUFFLGNBQWMsRUFBRSxNQUFNLG9DQUFvQyxDQUFDO0FBQ3BFLE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSwrQkFBK0IsQ0FBQztBQUM3RCxPQUFPLEVBQUUscUJBQXFCLEVBQUUsTUFBTSx3Q0FBd0MsQ0FBQztBQUcvRSxJQUFNLGFBQWEsR0FBRyxnQkFBZ0IsQ0FBQztBQU92QztJQXlDSSx5Q0FDcUIsU0FBZ0MsRUFDaEMsY0FBa0M7UUFEbEMsY0FBUyxHQUFULFNBQVMsQ0FBdUI7UUFDaEMsbUJBQWMsR0FBZCxjQUFjLENBQW9CO1FBekN0Qyx1QkFBa0IsR0FBd0IsSUFBSSxZQUFZLEVBQVMsQ0FBQztRQUc5RSxtQkFBYyxHQUFHLGNBQWMsQ0FBQztRQUVoQyxnQkFBVyxHQUFHO1lBQ2pCLEVBQUUsS0FBSyxFQUFFLFFBQVEsRUFBRSxNQUFNLEVBQUUsSUFBSSxDQUFDLFNBQVMsQ0FBQyxP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QUFNLEVBQUU7K0VBQTRFO0lBRjVFLCtCQUErQjtRQUwzQyxTQUFTLENBQUM7WUFDUCxRQUFRLEVBQUUsNkJBQTZCO1lBQ3ZDLGtwTUFBeUQ7O1NBRTVELENBQUM7T0FDVywrQkFBK0IsQ0ErTDNDO0lBQUQsc0NBQUM7Q0FBQSxBQS9MRCxJQStMQztTQS9MWSwrQkFBK0IiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDb21wb25lbnQsIEV2ZW50RW1pdHRlciwgSW5wdXQsIE9uRGVzdHJveSwgT25Jbml0LCBPdXRwdXQgfSBmcm9tIFwiQGFuZ3VsYXIvY29yZVwiO1xyXG5pbXBvcnQgeyBMYXp5TG9hZEV2ZW50IH0gZnJvbSBcInByaW1lbmdcIjtcclxuaW1wb3J0IHsgZGVib3VuY2VUaW1lLCBmaW5hbGl6ZSwgdGFrZVVudGlsIH0gZnJvbSBcInJ4anMvb3BlcmF0b3JzXCI7XHJcbmltcG9ydCB7IFN1YmplY3QgfSBmcm9tIFwicnhqc1wiO1xyXG5pbXBvcnQgeyBGb3JtQ29udHJvbCB9IGZyb20gXCJAYW5ndWxhci9mb3Jtc1wiO1xyXG5pbXBvcnQgeyBMaXN0UGFyYW1zIH0gZnJvbSBcIi4uLy4uL3NlcnZpY2VzL2VudGl0eS1zZXJ2aWNlXCI7XHJcbmltcG9ydCB7IEFncm9JbnZvaWNlU2VydmljZSB9IGZyb20gXCIuL3NlcnZpY2VzL2Fncm8taW52b2ljZS9hZ3JvLWludm9pY2Uuc2VydmljZVwiO1xyXG5pbXBvcnQgeyBNb2RhbEludm9pY2VQalNlbGVjdG9yT3B0aW9ucyB9IGZyb20gXCIuL21vZGFsLWludm9pY2UtcGotc2VsZWN0b3Itb3B0aW9ucy5pbnRlcmZhY2VcIjtcclxuaW1wb3J0IHsgQnV0dG9uUHJpb3JpdHkgfSBmcm9tIFwiQHNlbmlvcnNpc3RlbWFzL2FuZ3VsYXItY29tcG9uZW50c1wiO1xyXG5pbXBvcnQgeyBBR1JPX05VTUJFUlMgfSBmcm9tIFwiLi4vLi4vZW51bXMvYWdyby1udW1iZXJzLmVudW1cIjtcclxuaW1wb3J0IHsgTGliVHJhbnNsYXRpb25TZXJ2aWNlIH0gZnJvbSBcIi4uLy4uL3NlcnZpY2VzL2xpYi10cmFuc2xhdGlvbi5zZXJ2aWNlXCI7XHJcbmltcG9ydCB7IElJbnZvaWNlTG9va3VwRmlsdGVyIH0gZnJvbSBcIi4vc2VydmljZXMvYWdyby1pbnZvaWNlL2ludGVyZmFjZXNcIjtcclxuXHJcbmNvbnN0IElOVk9JQ0VfSVRFTVMgPSBcImludm9pY2VJdGVtcy4qXCI7XHJcblxyXG5AQ29tcG9uZW50KHtcclxuICAgIHNlbGVjdG9yOiBcInMtbW9kYWwtaW52b2ljZS1wai1zZWxlY3RvclwiLFxyXG4gICAgdGVtcGxhdGVVcmw6IFwiLi9tb2RhbC1pbnZvaWNlLXBqLXNlbGVjdG9yLmNvbXBvbmVudC5odG1sXCIsXHJcbiAgICBzdHlsZVVybHM6IFtcIi4vbW9kYWwtaW52b2ljZS1wai1zZWxlY3Rvci5jb21wb25lbnQuc2Nzc1wiXSxcclxufSlcclxuZXhwb3J0IGNsYXNzIE1vZGFsSW52b2ljZVBqU2VsZWN0b3JDb21wb25lbnQgaW1wbGVtZW50cyBPbkluaXQsIE9uRGVzdHJveSB7XHJcbiAgICBASW5wdXQoKSBwdWJsaWMgb3B0aW9ucyE6IE1vZGFsSW52b2ljZVBqU2VsZWN0b3JPcHRpb25zO1xyXG4gICAgQE91dHB1dCgpIHB1YmxpYyB3aGVuU2VsZWN0SW52b2ljZXM6IEV2ZW50RW1pdHRlcjxhbnlbXT4gPSBuZXcgRXZlbnRFbWl0dGVyPGFueVtdPigpO1xyXG5cclxuICAgIHB1YmxpYyBncmlkRGF0YTogYW55W107XHJcbiAgICBwdWJsaWMgYnV0dG9uUHJpb3JpdHkgPSBCdXR0b25Qcmlvcml0eTtcclxuXHJcbiAgICBwdWJsaWMgZ3JpZENvbHVtbnMgPSBbXHJcbiAgICAgICAgeyBmaWVsZDogXCJudW1iZXJcIiwgaGVhZGVyOiB0aGlzLnRyYW5zbGF0ZS5pbnN0YW50KFwiYWdyby5hbmd1bGFyX2NvbXBvbmVudHMubnVtYmVyXCIpIH0sXHJcbiAgICAgICAgeyBmaWVsZDogXCJzZXJpZXNcIiwgaGVhZGVyOiB0aGlzLnRyYW5zbGF0ZS5pbnN0YW50KFwiYWdyby5hbmd1bGFyX2NvbXBvbmVudHMuc2VyaWVzXCIpIH0sXHJcbiAgICAgICAgeyBmaWVsZDogXCJpbnZvaWNlSXRlbXNcIiwgaGVhZGVyOiB0aGlzLnRyYW5zbGF0ZS5pbnN0YW50KFwiYWdyby5hbmd1bGFyX2NvbXBvbmVudHMuaXRlbnNcIikgfSxcclxuICAgICAgICB7IGZpZWxkOiBcInF1YW50aXR5XCIsIGhlYWRlcjogdGhpcy50cmFuc2xhdGUuaW5zdGFudChcImFncm8uYW5ndWxhcl9jb21wb25lbnRzLnF1YW50aXR5XCIpIH0sXHJcbiAgICAgICAgeyBmaWVsZDogXCJpc3N1YW5jZURhdGVcIiwgaGVhZGVyOiB0aGlzLnRyYW5zbGF0ZS5pbnN0YW50KFwiYWdyby5hbmd1bGFyX2NvbXBvbmVudHMuaXNzdWFuY2VfZGF0ZVwiKSB9LFxyXG4gICAgXTtcclxuXHJcbiAgICBwdWJsaWMgZG9udEhhdmVBbnlJbnZvaWNlID0gZmFsc2U7XHJcblxyXG4gICAgcHVibGljIGdyaWRMb2FkaW5nID0gdHJ1ZTtcclxuICAgIHB1YmxpYyBncmlkVG90YWxSZWNvcmRzOiBudW1iZXIgPSBBR1JPX05VTUJFUlMuWkVSTztcclxuICAgIHB1YmxpYyBzZWxlY3RlZDogYW55W10gPSBbXTtcclxuICAgIHB1YmxpYyB1bnNlbGVjdGVkSWRzID0gbmV3IFNldDxudW1iZXI+KCk7XHJcblxyXG4gICAgcHVibGljIHZpc2libGUgPSBmYWxzZTtcclxuXHJcbiAgICBwdWJsaWMgc2VhcmNoVmFsdWU6IEZvcm1Db250cm9sID0gbmV3IEZvcm1Db250cm9sKFwiXCIsIFtdKTtcclxuXHJcbiAgICBwcml2YXRlIHJlYWRvbmx5IG5nVW5zdWJzY3JpYmUgPSBuZXcgU3ViamVjdCgpO1xyXG5cclxuICAgIHByaXZhdGUgY3VycmVudFBhcmFtczogTGlzdFBhcmFtcyA9IHtcclxuICAgICAgICBwYWdlOiAwLFxyXG4gICAgICAgIHNpemU6IDEwLFxyXG4gICAgICAgIHNvcnQ6IFt7IGZpZWxkOiBcImlzc3VhbmNlRGF0ZVwiLCBvcmRlcjogMSB9XSxcclxuICAgICAgICBkaXNwbGF5RmllbGRzOiBbXCIqXCIsIElOVk9JQ0VfSVRFTVMsIFwiaXNzdWFuY2VEYXRlXCJdLFxyXG4gICAgICAgIGZpbHRlclF1ZXJ5OiBcIlwiLFxyXG4gICAgfTtcclxuXHJcbiAgICBwdWJsaWMgbmdPbkRlc3Ryb3koKSB7XHJcbiAgICAgICAgdGhpcy5uZ1Vuc3Vic2NyaWJlLm5leHQoKTtcclxuICAgICAgICB0aGlzLm5nVW5zdWJzY3JpYmUuY29tcGxldGUoKTtcclxuICAgIH1cclxuXHJcbiAgICBjb25zdHJ1Y3RvcihcclxuICAgICAgICBwcml2YXRlIHJlYWRvbmx5IHRyYW5zbGF0ZTogTGliVHJhbnNsYXRpb25TZXJ2aWNlLFxyXG4gICAgICAgIHByaXZhdGUgcmVhZG9ubHkgaW52b2ljZVNlcnZpY2U6IEFncm9JbnZvaWNlU2VydmljZVxyXG4gICAgKSB7fVxyXG5cclxuICAgIG5nT25Jbml0KCk6IHZvaWQge1xyXG4gICAgICAgIHRoaXMud2hlblNlYXJjaFZhbHVlQ2hhbmdlcygpO1xyXG4gICAgfVxyXG5cclxuICAgIHByaXZhdGUgd2hlblNlYXJjaFZhbHVlQ2hhbmdlcygpIHtcclxuICAgICAgICB0aGlzLnNlYXJjaFZhbHVlLnZhbHVlQ2hhbmdlc1xyXG4gICAgICAgICAgICAucGlwZSh0YWtlVW50aWwodGhpcy5uZ1Vuc3Vic2NyaWJlKSlcclxuICAgICAgICAgICAgLnBpcGUoZGVib3VuY2VUaW1lKEFHUk9fTlVNQkVSUy5USFJFRV9IVU5EUkVEKSlcclxuICAgICAgICAgICAgLnN1YnNjcmliZSgodmFsdWU6IHN0cmluZykgPT4ge1xyXG4gICAgICAgICAgICAgICAgaWYgKHZhbHVlKSB7XHJcbiAgICAgICAgICAgICAgICAgICAgdGhpcy51cGRhdGVHcmlkRGF0YSh7IGZpcnN0OiAwLCByb3dzOiAxMCwgbXVsdGlTb3J0TWV0YTogW3sgZmllbGQ6IFwiaXNzdWFuY2VEYXRlXCIsIG9yZGVyOiAxIH1dIH0sIHZhbHVlKTtcclxuICAgICAgICAgICAgICAgIH0gZWxzZSB7XHJcbiAgICAgICAgICAgICAgICAgICAgdGhpcy51cGRhdGVHcmlkRGF0YSh7IGZpcnN0OiAwLCByb3dzOiAxMCwgbXVsdGlTb3J0TWV0YTogW3sgZmllbGQ6IFwiaXNzdWFuY2VEYXRlXCIsIG9yZGVyOiAxIH1dIH0pO1xyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICB9KTtcclxuICAgIH1cclxuXHJcbiAgICB0cnlUb1NlYXJjaEFnYWluKCkge1xyXG4gICAgICAgIHRoaXMuZ3JpZExvYWRpbmcgPSB0cnVlO1xyXG4gICAgICAgIHRoaXMudXBkYXRlR3JpZERhdGEoeyBmaXJzdDogMCwgcm93czogMTAsIG11bHRpU29ydE1ldGE6IFt7IGZpZWxkOiBcImlzc3VhbmNlRGF0ZVwiLCBvcmRlcjogMSB9XSB9KTtcclxuICAgIH1cclxuXHJcbiAgICBvcGVuKCk6IHZvaWQge1xyXG4gICAgICAgIGlmICh0aGlzLmNoZWNrSWZPcHRpb25zSXNWYWxpZCgpKSB7XHJcbiAgICAgICAgICAgIHRoaXMudmlzaWJsZSA9IHRydWU7XHJcbiAgICAgICAgICAgIHRoaXMuZ3JpZERhdGEgPSBbXTtcclxuICAgICAgICAgICAgdGhpcy5ncmlkTG9hZGluZyA9IHRydWU7XHJcbiAgICAgICAgICAgIHRoaXMuZ3JpZFRvdGFsUmVjb3JkcyA9IDA7XHJcbiAgICAgICAgICAgIHRoaXMuc2VsZWN0ZWQgPSBbXTtcclxuICAgICAgICAgICAgdGhpcy51bnNlbGVjdGVkSWRzLmNsZWFyKCk7XHJcbiAgICAgICAgICAgIHRoaXMuY3VycmVudFBhcmFtcyA9IHtcclxuICAgICAgICAgICAgICAgIHBhZ2U6IDAsXHJcbiAgICAgICAgICAgICAgICBzaXplOiAxMCxcclxuICAgICAgICAgICAgICAgIHNvcnQ6IFtdLFxyXG4gICAgICAgICAgICAgICAgZmlsdGVyUXVlcnk6IFwiXCIsXHJcbiAgICAgICAgICAgICAgICBkaXNwbGF5RmllbGRzOiBbXCIqXCIsIElOVk9JQ0VfSVRFTVNdLFxyXG4gICAgICAgICAgICB9O1xyXG4gICAgICAgICAgICB0aGlzLnVwZGF0ZUdyaWREYXRhKHsgZmlyc3Q6IDAsIHJvd3M6IDEwLCBtdWx0aVNvcnRNZXRhOiBbeyBmaWVsZDogXCJpc3N1YW5jZURhdGVcIiwgb3JkZXI6IDEgfV0gfSk7XHJcbiAgICAgICAgICAgIHRoaXMuc2VsZWN0ZWQgPSBbXTtcclxuICAgICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgcHJpdmF0ZSBjaGVja0lmT3B0aW9uc0lzVmFsaWQoKTogYm9vbGVhbiB7XHJcbiAgICAgICAgaWYgKCF0aGlzLm9wdGlvbnMpIHtcclxuICAgICAgICAgICAgcmV0dXJuIGZhbHNlO1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgaWYgKCF0aGlzLm9wdGlvbnMuY29tcGFueUlkIHx8ICF0aGlzLm9wdGlvbnMuYnJhbmNoSWQpIHtcclxuICAgICAgICAgICAgcmV0dXJuIGZhbHNlO1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgcmV0dXJuIHRydWU7XHJcbiAgICB9XHJcblxyXG4gICAgcHVibGljIHVwZGF0ZUdyaWREYXRhKGV2ZW50OiBMYXp5TG9hZEV2ZW50LCBzZWFyY2hWYWx1ZT86IHN0cmluZykge1xyXG4gICAgICAgIHRoaXMuY2FuY2VsUG9vbGluZygpO1xyXG4gICAgICAgIGNvbnN0IHsgY29tcGFueUlkLCBicmFuY2hJZCB9ID0gdGhpcy5vcHRpb25zO1xyXG5cclxuICAgICAgICBjb25zdCBwcm9kdWNlcklkID0gdGhpcy5vcHRpb25zLnByb2R1Y2Vyc0lkc1swXTtcclxuICAgICAgICBjb25zdCBydXJhbEVzdGF0ZUlkID0gdGhpcy5vcHRpb25zLnJ1cmFsRXN0YXRlSWRzWzBdO1xyXG5cclxuICAgICAgICBjb25zdCBzaXplID0gZXZlbnQucm93cztcclxuICAgICAgICBjb25zdCBwYWdlID0gZXZlbnQuZmlyc3QgLyBzaXplO1xyXG5cclxuICAgICAgICBjb25zdCBzaXplUGFnZSA9IGV2ZW50LnJvd3M7XHJcblxyXG4gICAgICAgIHRoaXMuY3VycmVudFBhcmFtcyA9IHtcclxuICAgICAgICAgICAgcGFnZSxcclxuICAgICAgICAgICAgc2l6ZSxcclxuICAgICAgICAgICAgc29ydDogZXZlbnQubXVsdGlTb3J0TWV0YT8ubGVuZ3RoID8gZXZlbnQubXVsdGlTb3J0TWV0YSA6IFt7IGZpZWxkOiBcImlzc3VhbmNlRGF0ZVwiLCBvcmRlcjogMSB9XSxcclxuICAgICAgICAgICAgZGlzcGxheUZpZWxkczogW1wiKlwiLCBJTlZPSUNFX0lURU1TLCBcImlzc3VhbmNlRGF0ZVwiXSxcclxuICAgICAgICB9O1xyXG4gICAgICAgIHRoaXMuZ3JpZExvYWRpbmcgPSB0cnVlO1xyXG4gICAgICAgIHRoaXMuZG9udEhhdmVBbnlJbnZvaWNlID0gZmFsc2U7XHJcblxyXG4gICAgICAgIGNvbnN0IGZpbHRlckJvZHk6IElJbnZvaWNlTG9va3VwRmlsdGVyID0ge1xyXG4gICAgICAgICAgICBmaWx0ZXI6IHtcclxuICAgICAgICAgICAgICAgIGNvbXBhbnlJZCxcclxuICAgICAgICAgICAgICAgIGJyYW5jaElkLFxyXG4gICAgICAgICAgICAgICAgcHJvZHVjZXJJZHM6IFtwcm9kdWNlcklkXSxcclxuICAgICAgICAgICAgICAgIHJ1cmFsRXN0YXRlSWRzOiBbcnVyYWxFc3RhdGVJZF0sXHJcbiAgICAgICAgICAgICAgICBtdWx0aVByb2R1Y3RzOiBmYWxzZSxcclxuICAgICAgICAgICAgICAgIHByb2R1Y3RJZDogdGhpcy5vcHRpb25zLnByb2R1Y3RJZCxcclxuICAgICAgICAgICAgfSxcclxuICAgICAgICAgICAgcGFnZVJlcXVlc3Q6IHtcclxuICAgICAgICAgICAgICAgIG9mZnNldDogcGFnZSxcclxuICAgICAgICAgICAgICAgIHNpemU6IHNpemVQYWdlLFxyXG4gICAgICAgICAgICAgICAgb3JkZXJCeTogdGhpcy5jdXJyZW50UGFyYW1zLnNvcnQubWFwKChzb3J0KSA9PiAoeyBmaWVsZDogc29ydC5maWVsZCwgb3JkZXI6IHNvcnQub3JkZXIgPT09IDEgPyBcImFzY1wiIDogXCJkZXNjXCIgfSkpLFxyXG4gICAgICAgICAgICB9LFxyXG4gICAgICAgIH07XHJcblxyXG4gICAgICAgIHRoaXMuaW52b2ljZVNlcnZpY2VcclxuICAgICAgICAgICAgLmludm9pY2VMb29rdXBGaWx0ZXIoZmlsdGVyQm9keSlcclxuICAgICAgICAgICAgLnBpcGUoXHJcbiAgICAgICAgICAgICAgICB0YWtlVW50aWwodGhpcy5uZ1Vuc3Vic2NyaWJlKSxcclxuICAgICAgICAgICAgICAgIGZpbmFsaXplKCgpID0+IHtcclxuICAgICAgICAgICAgICAgICAgICB0aGlzLmdyaWRMb2FkaW5nID0gZmFsc2U7XHJcbiAgICAgICAgICAgICAgICB9KVxyXG4gICAgICAgICAgICApXHJcbiAgICAgICAgICAgIC5zdWJzY3JpYmUoXHJcbiAgICAgICAgICAgICAgICAocmVzdWx0KSA9PiB7XHJcbiAgICAgICAgICAgICAgICAgICAgdGhpcy5ncmlkRGF0YSA9IHJlc3VsdD8ucmVzdWx0Py5pbnZvaWNlcyB8fCBbXTtcclxuICAgICAgICAgICAgICAgICAgICBpZiAodGhpcy5ncmlkRGF0YS5sZW5ndGggPT09IDAgJiYgIXNlYXJjaFZhbHVlKSB7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIHRoaXMuZG9udEhhdmVBbnlJbnZvaWNlID0gdHJ1ZTtcclxuICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICAgICAgdGhpcy5ncmlkVG90YWxSZWNvcmRzID0gcmVzdWx0LnJlc3VsdC50b3RhbEVsZW1lbnRzO1xyXG4gICAgICAgICAgICAgICAgfSxcclxuICAgICAgICAgICAgICAgIChlcnJvcikgPT4ge1xyXG4gICAgICAgICAgICAgICAgICAgIGNvbnNvbGUuaW5mbyhcIkVycm8gYW8gYnVzY2FyIG5vdGFzIGZpc2NhaXM6IFwiLCBlcnJvcik7XHJcbiAgICAgICAgICAgICAgICB9LFxyXG4gICAgICAgICAgICAgICAgKCkgPT4ge1xyXG4gICAgICAgICAgICAgICAgICAgIHRoaXMuZ3JpZExvYWRpbmcgPSBmYWxzZTtcclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgKTtcclxuICAgIH1cclxuXHJcbiAgICBjYW5jZWxQb29saW5nKCkge1xyXG4gICAgICAgIHRoaXMuaW52b2ljZVNlcnZpY2UuY2FuY2VsQWN0aXZlUG9vbGluZygpO1xyXG4gICAgfVxyXG5cclxuICAgIGFzeW5jIGFkZCgpOiBQcm9taXNlPHZvaWQ+IHtcclxuICAgICAgICB0cnkge1xyXG4gICAgICAgICAgICB0aGlzLndoZW5TZWxlY3RJbnZvaWNlcy5lbWl0KHRoaXMuc2VsZWN0ZWQpO1xyXG4gICAgICAgICAgICB0aGlzLnJlc2V0U3BlY3MoKTtcclxuICAgICAgICB9IGNhdGNoIChlcnJvcikge1xyXG4gICAgICAgICAgICBjb25zb2xlLmluZm8oXCJFcnJvIGFvIHNlbGVjaW9uYXIgbm90YXMgZmlzY2FpczogXCIsIGVycm9yKTtcclxuICAgICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgcHJpdmF0ZSByZXNldFNwZWNzKCk6IHZvaWQge1xyXG4gICAgICAgIHRoaXMuc2VsZWN0ZWQgPSBbXTtcclxuICAgICAgICB0aGlzLmRvbnRIYXZlQW55SW52b2ljZSA9IGZhbHNlO1xyXG4gICAgICAgIHRoaXMudmlzaWJsZSA9IGZhbHNlO1xyXG4gICAgICAgIHRoaXMuZ3JpZERhdGEgPSBbXTtcclxuICAgICAgICB0aGlzLmdyaWRMb2FkaW5nID0gZmFsc2U7XHJcbiAgICAgICAgdGhpcy5ncmlkVG90YWxSZWNvcmRzID0gMDtcclxuICAgIH1cclxuXHJcbiAgICBhc3luYyBjYW5jZWwoKTogUHJvbWlzZTx2b2lkPiB7XHJcbiAgICAgICAgdGhpcy5yZXNldFNwZWNzKCk7XHJcbiAgICB9XHJcblxyXG4gICAgcHVibGljIGdldEl0ZW1zUXVhbnRpdHkocm93OiBhbnkpOiBudW1iZXIge1xyXG4gICAgICAgIHJldHVybiByb3cuaW52b2ljZUl0ZW1zPy5yZWR1Y2UoKHN1bTogbnVtYmVyLCBpdGVtOiBhbnkpID0+IHN1bSArIChpdGVtLnF1YW50aXR5IHx8IDApLCAwKSB8fCAwO1xyXG4gICAgfVxyXG59XHJcbiJdfQ==
|
|
197
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibW9kYWwtaW52b2ljZS1wai1zZWxlY3Rvci5jb21wb25lbnQuanMiLCJzb3VyY2VSb290Ijoibmc6Ly9Ac2VuaW9yLWFncm9uZWdvY2lvL2FuZ3VsYXItY29tcG9uZW50cy8iLCJzb3VyY2VzIjpbImNvbXBvbmVudHMvbW9kYWwtaW52b2ljZS1wai1zZWxlY3Rvci9tb2RhbC1pbnZvaWNlLXBqLXNlbGVjdG9yLmNvbXBvbmVudC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiO0FBQUEsT0FBTyxFQUFFLFNBQVMsRUFBRSxZQUFZLEVBQUUsS0FBSyxFQUFxQixNQUFNLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFFMUYsT0FBTyxFQUFFLFlBQVksRUFBRSxRQUFRLEVBQUUsU0FBUyxFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFDbkUsT0FBTyxFQUFFLE9BQU8sRUFBRSxNQUFNLE1BQU0sQ0FBQztBQUMvQixPQUFPLEVBQUUsV0FBVyxFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFFN0MsT0FBTyxFQUFFLGtCQUFrQixFQUFFLE1BQU0sOENBQThDLENBQUM7QUFFbEYsT0FBTyxFQUFFLGNBQWMsRUFBRSxNQUFNLG9DQUFvQyxDQUFDO0FBQ3BFLE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSwrQkFBK0IsQ0FBQztBQUM3RCxPQUFPLEVBQUUscUJBQXFCLEVBQUUsTUFBTSx3Q0FBd0MsQ0FBQztBQUcvRSxJQUFNLGFBQWEsR0FBRyxnQkFBZ0IsQ0FBQztBQU92QztJQXlDSSx5Q0FDcUIsU0FBZ0MsRUFDaEMsY0FBa0M7UUFEbEMsY0FBUyxHQUFULFNBQVMsQ0FBdUI7UUFDaEMsbUJBQWMsR0FBZCxjQUFjLENBQW9CO1FBekN0Qyx1QkFBa0IsR0FBd0IsSUFBSSxZQUFZLEVBQVMsQ0FBQztRQUc5RSxtQkFBYyxHQUFHLGNBQWMsQ0FBQztRQUVoQyxnQkFBVyxHQUFHO1lBQ2pCLEVBQUUsS0FBSyxFQUFFLFFBQVEsRUFBRSxNQUFNLEVBQUUsSUFBSSxDQUFDLFNBQVMsQ0FBQyxP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aXR0ZXIsIElucHV0LCBPbkRlc3Ryb3ksIE9uSW5pdCwgT3V0cHV0IH0gZnJvbSBcIkBhbmd1bGFyL2NvcmVcIjtcclxuaW1wb3J0IHsgTGF6eUxvYWRFdmVudCB9IGZyb20gXCJwcmltZW5nXCI7XHJcbmltcG9ydCB7IGRlYm91bmNlVGltZSwgZmluYWxpemUsIHRha2VVbnRpbCB9IGZyb20gXCJyeGpzL29wZXJhdG9yc1wiO1xyXG5pbXBvcnQgeyBTdWJqZWN0IH0gZnJvbSBcInJ4anNcIjtcclxuaW1wb3J0IHsgRm9ybUNvbnRyb2wgfSBmcm9tIFwiQGFuZ3VsYXIvZm9ybXNcIjtcclxuaW1wb3J0IHsgTGlzdFBhcmFtcyB9IGZyb20gXCIuLi8uLi9zZXJ2aWNlcy9lbnRpdHktc2VydmljZVwiO1xyXG5pbXBvcnQgeyBBZ3JvSW52b2ljZVNlcnZpY2UgfSBmcm9tIFwiLi9zZXJ2aWNlcy9hZ3JvLWludm9pY2UvYWdyby1pbnZvaWNlLnNlcnZpY2VcIjtcclxuaW1wb3J0IHsgTW9kYWxJbnZvaWNlUGpTZWxlY3Rvck9wdGlvbnMgfSBmcm9tIFwiLi9tb2RhbC1pbnZvaWNlLXBqLXNlbGVjdG9yLW9wdGlvbnMuaW50ZXJmYWNlXCI7XHJcbmltcG9ydCB7IEJ1dHRvblByaW9yaXR5IH0gZnJvbSBcIkBzZW5pb3JzaXN0ZW1hcy9hbmd1bGFyLWNvbXBvbmVudHNcIjtcclxuaW1wb3J0IHsgQUdST19OVU1CRVJTIH0gZnJvbSBcIi4uLy4uL2VudW1zL2Fncm8tbnVtYmVycy5lbnVtXCI7XHJcbmltcG9ydCB7IExpYlRyYW5zbGF0aW9uU2VydmljZSB9IGZyb20gXCIuLi8uLi9zZXJ2aWNlcy9saWItdHJhbnNsYXRpb24uc2VydmljZVwiO1xyXG5pbXBvcnQgeyBJSW52b2ljZUxvb2t1cEZpbHRlciB9IGZyb20gXCIuL3NlcnZpY2VzL2Fncm8taW52b2ljZS9pbnRlcmZhY2VzXCI7XHJcblxyXG5jb25zdCBJTlZPSUNFX0lURU1TID0gXCJpbnZvaWNlSXRlbXMuKlwiO1xyXG5cclxuQENvbXBvbmVudCh7XHJcbiAgICBzZWxlY3RvcjogXCJzLW1vZGFsLWludm9pY2UtcGotc2VsZWN0b3JcIixcclxuICAgIHRlbXBsYXRlVXJsOiBcIi4vbW9kYWwtaW52b2ljZS1wai1zZWxlY3Rvci5jb21wb25lbnQuaHRtbFwiLFxyXG4gICAgc3R5bGVVcmxzOiBbXCIuL21vZGFsLWludm9pY2UtcGotc2VsZWN0b3IuY29tcG9uZW50LnNjc3NcIl0sXHJcbn0pXHJcbmV4cG9ydCBjbGFzcyBNb2RhbEludm9pY2VQalNlbGVjdG9yQ29tcG9uZW50IGltcGxlbWVudHMgT25Jbml0LCBPbkRlc3Ryb3kge1xyXG4gICAgQElucHV0KCkgcHVibGljIG9wdGlvbnMhOiBNb2RhbEludm9pY2VQalNlbGVjdG9yT3B0aW9ucztcclxuICAgIEBPdXRwdXQoKSBwdWJsaWMgd2hlblNlbGVjdEludm9pY2VzOiBFdmVudEVtaXR0ZXI8YW55W10+ID0gbmV3IEV2ZW50RW1pdHRlcjxhbnlbXT4oKTtcclxuXHJcbiAgICBwdWJsaWMgZ3JpZERhdGE6IGFueVtdO1xyXG4gICAgcHVibGljIGJ1dHRvblByaW9yaXR5ID0gQnV0dG9uUHJpb3JpdHk7XHJcblxyXG4gICAgcHVibGljIGdyaWRDb2x1bW5zID0gW1xyXG4gICAgICAgIHsgZmllbGQ6IFwibnVtYmVyXCIsIGhlYWRlcjogdGhpcy50cmFuc2xhdGUuaW5zdGFudChcImFncm8uYW5ndWxhcl9jb21wb25lbnRzLm51bWJlclwiKSB9LFxyXG4gICAgICAgIHsgZmllbGQ6IFwic2VyaWVzXCIsIGhlYWRlcjogdGhpcy50cmFuc2xhdGUuaW5zdGFudChcImFncm8uYW5ndWxhcl9jb21wb25lbnRzLnNlcmllc1wiKSB9LFxyXG4gICAgICAgIHsgZmllbGQ6IFwiaW52b2ljZUl0ZW1zXCIsIGhlYWRlcjogdGhpcy50cmFuc2xhdGUuaW5zdGFudChcImFncm8uYW5ndWxhcl9jb21wb25lbnRzLml0ZW5zXCIpIH0sXHJcbiAgICAgICAgeyBmaWVsZDogXCJxdWFudGl0eVwiLCBoZWFkZXI6IHRoaXMudHJhbnNsYXRlLmluc3RhbnQoXCJhZ3JvLmFuZ3VsYXJfY29tcG9uZW50cy5xdWFudGl0eVwiKSB9LFxyXG4gICAgICAgIHsgZmllbGQ6IFwiaXNzdWFuY2VEYXRlXCIsIGhlYWRlcjogdGhpcy50cmFuc2xhdGUuaW5zdGFudChcImFncm8uYW5ndWxhcl9jb21wb25lbnRzLmlzc3VhbmNlX2RhdGVcIikgfSxcclxuICAgIF07XHJcblxyXG4gICAgcHVibGljIGRvbnRIYXZlQW55SW52b2ljZSA9IGZhbHNlO1xyXG5cclxuICAgIHB1YmxpYyBncmlkTG9hZGluZyA9IHRydWU7XHJcbiAgICBwdWJsaWMgZ3JpZFRvdGFsUmVjb3JkczogbnVtYmVyID0gQUdST19OVU1CRVJTLlpFUk87XHJcbiAgICBwdWJsaWMgc2VsZWN0ZWQ6IGFueVtdID0gW107XHJcbiAgICBwdWJsaWMgdW5zZWxlY3RlZElkcyA9IG5ldyBTZXQ8bnVtYmVyPigpO1xyXG5cclxuICAgIHB1YmxpYyB2aXNpYmxlID0gZmFsc2U7XHJcblxyXG4gICAgcHVibGljIHNlYXJjaFZhbHVlOiBGb3JtQ29udHJvbCA9IG5ldyBGb3JtQ29udHJvbChcIlwiLCBbXSk7XHJcblxyXG4gICAgcHJpdmF0ZSByZWFkb25seSBuZ1Vuc3Vic2NyaWJlID0gbmV3IFN1YmplY3QoKTtcclxuXHJcbiAgICBwcml2YXRlIGN1cnJlbnRQYXJhbXM6IExpc3RQYXJhbXMgPSB7XHJcbiAgICAgICAgcGFnZTogMCxcclxuICAgICAgICBzaXplOiAxMCxcclxuICAgICAgICBzb3J0OiBbeyBmaWVsZDogXCJpc3N1YW5jZURhdGVcIiwgb3JkZXI6IDEgfV0sXHJcbiAgICAgICAgZGlzcGxheUZpZWxkczogW1wiKlwiLCBJTlZPSUNFX0lURU1TLCBcImlzc3VhbmNlRGF0ZVwiXSxcclxuICAgICAgICBmaWx0ZXJRdWVyeTogXCJcIixcclxuICAgIH07XHJcblxyXG4gICAgcHVibGljIG5nT25EZXN0cm95KCkge1xyXG4gICAgICAgIHRoaXMubmdVbnN1YnNjcmliZS5uZXh0KCk7XHJcbiAgICAgICAgdGhpcy5uZ1Vuc3Vic2NyaWJlLmNvbXBsZXRlKCk7XHJcbiAgICB9XHJcblxyXG4gICAgY29uc3RydWN0b3IoXHJcbiAgICAgICAgcHJpdmF0ZSByZWFkb25seSB0cmFuc2xhdGU6IExpYlRyYW5zbGF0aW9uU2VydmljZSxcclxuICAgICAgICBwcml2YXRlIHJlYWRvbmx5IGludm9pY2VTZXJ2aWNlOiBBZ3JvSW52b2ljZVNlcnZpY2VcclxuICAgICkge31cclxuXHJcbiAgICBuZ09uSW5pdCgpOiB2b2lkIHtcclxuICAgICAgICB0aGlzLndoZW5TZWFyY2hWYWx1ZUNoYW5nZXMoKTtcclxuICAgIH1cclxuXHJcbiAgICBwcml2YXRlIHdoZW5TZWFyY2hWYWx1ZUNoYW5nZXMoKSB7XHJcbiAgICAgICAgdGhpcy5zZWFyY2hWYWx1ZS52YWx1ZUNoYW5nZXNcclxuICAgICAgICAgICAgLnBpcGUodGFrZVVudGlsKHRoaXMubmdVbnN1YnNjcmliZSkpXHJcbiAgICAgICAgICAgIC5waXBlKGRlYm91bmNlVGltZShBR1JPX05VTUJFUlMuVEhSRUVfSFVORFJFRCkpXHJcbiAgICAgICAgICAgIC5zdWJzY3JpYmUoKHZhbHVlOiBzdHJpbmcpID0+IHtcclxuICAgICAgICAgICAgICAgIGlmICh2YWx1ZSkge1xyXG4gICAgICAgICAgICAgICAgICAgIHRoaXMudXBkYXRlR3JpZERhdGEoeyBmaXJzdDogMCwgcm93czogMTAsIG11bHRpU29ydE1ldGE6IFt7IGZpZWxkOiBcImlzc3VhbmNlRGF0ZVwiLCBvcmRlcjogMSB9XSB9LCB2YWx1ZSk7XHJcbiAgICAgICAgICAgICAgICB9IGVsc2Uge1xyXG4gICAgICAgICAgICAgICAgICAgIHRoaXMudXBkYXRlR3JpZERhdGEoeyBmaXJzdDogMCwgcm93czogMTAsIG11bHRpU29ydE1ldGE6IFt7IGZpZWxkOiBcImlzc3VhbmNlRGF0ZVwiLCBvcmRlcjogMSB9XSB9KTtcclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgfSk7XHJcbiAgICB9XHJcblxyXG4gICAgdHJ5VG9TZWFyY2hBZ2FpbigpIHtcclxuICAgICAgICB0aGlzLmdyaWRMb2FkaW5nID0gdHJ1ZTtcclxuICAgICAgICB0aGlzLnVwZGF0ZUdyaWREYXRhKHsgZmlyc3Q6IDAsIHJvd3M6IDEwLCBtdWx0aVNvcnRNZXRhOiBbeyBmaWVsZDogXCJpc3N1YW5jZURhdGVcIiwgb3JkZXI6IDEgfV0gfSk7XHJcbiAgICB9XHJcblxyXG4gICAgb3BlbigpOiB2b2lkIHtcclxuICAgICAgICBpZiAodGhpcy5jaGVja0lmT3B0aW9uc0lzVmFsaWQoKSkge1xyXG4gICAgICAgICAgICB0aGlzLnZpc2libGUgPSB0cnVlO1xyXG4gICAgICAgICAgICB0aGlzLmdyaWREYXRhID0gW107XHJcbiAgICAgICAgICAgIHRoaXMuZ3JpZExvYWRpbmcgPSB0cnVlO1xyXG4gICAgICAgICAgICB0aGlzLmdyaWRUb3RhbFJlY29yZHMgPSAwO1xyXG4gICAgICAgICAgICB0aGlzLnNlbGVjdGVkID0gW107XHJcbiAgICAgICAgICAgIHRoaXMudW5zZWxlY3RlZElkcy5jbGVhcigpO1xyXG4gICAgICAgICAgICB0aGlzLmN1cnJlbnRQYXJhbXMgPSB7XHJcbiAgICAgICAgICAgICAgICBwYWdlOiAwLFxyXG4gICAgICAgICAgICAgICAgc2l6ZTogMTAsXHJcbiAgICAgICAgICAgICAgICBzb3J0OiBbXSxcclxuICAgICAgICAgICAgICAgIGZpbHRlclF1ZXJ5OiBcIlwiLFxyXG4gICAgICAgICAgICAgICAgZGlzcGxheUZpZWxkczogW1wiKlwiLCBJTlZPSUNFX0lURU1TXSxcclxuICAgICAgICAgICAgfTtcclxuICAgICAgICAgICAgdGhpcy51cGRhdGVHcmlkRGF0YSh7IGZpcnN0OiAwLCByb3dzOiAxMCwgbXVsdGlTb3J0TWV0YTogW3sgZmllbGQ6IFwiaXNzdWFuY2VEYXRlXCIsIG9yZGVyOiAxIH1dIH0pO1xyXG4gICAgICAgICAgICB0aGlzLnNlbGVjdGVkID0gW107XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgIHByaXZhdGUgY2hlY2tJZk9wdGlvbnNJc1ZhbGlkKCk6IGJvb2xlYW4ge1xyXG4gICAgICAgIGlmICghdGhpcy5vcHRpb25zKSB7XHJcbiAgICAgICAgICAgIHJldHVybiBmYWxzZTtcclxuICAgICAgICB9XHJcblxyXG4gICAgICAgIGlmICghdGhpcy5vcHRpb25zLmNvbXBhbnlJZCB8fCAhdGhpcy5vcHRpb25zLmJyYW5jaElkKSB7XHJcbiAgICAgICAgICAgIHJldHVybiBmYWxzZTtcclxuICAgICAgICB9XHJcblxyXG4gICAgICAgIHJldHVybiB0cnVlO1xyXG4gICAgfVxyXG5cclxuICAgIHB1YmxpYyB1cGRhdGVHcmlkRGF0YShldmVudDogTGF6eUxvYWRFdmVudCwgc2VhcmNoVmFsdWU/OiBzdHJpbmcpIHtcclxuICAgICAgICB0aGlzLmNhbmNlbFBvb2xpbmcoKTtcclxuICAgICAgICBjb25zdCB7IGNvbXBhbnlJZCwgYnJhbmNoSWQgfSA9IHRoaXMub3B0aW9ucztcclxuXHJcbiAgICAgICAgY29uc3QgcHJvZHVjZXJJZCA9IHRoaXMub3B0aW9ucy5wcm9kdWNlcnNJZHNbMF07XHJcbiAgICAgICAgY29uc3QgcnVyYWxFc3RhdGVJZCA9IHRoaXMub3B0aW9ucy5ydXJhbEVzdGF0ZUlkc1swXTtcclxuXHJcbiAgICAgICAgY29uc3Qgc2l6ZSA9IGV2ZW50LnJvd3M7XHJcbiAgICAgICAgY29uc3QgcGFnZSA9IGV2ZW50LmZpcnN0IC8gc2l6ZTtcclxuXHJcbiAgICAgICAgY29uc3Qgc2l6ZVBhZ2UgPSBldmVudC5yb3dzO1xyXG5cclxuICAgICAgICB0aGlzLmN1cnJlbnRQYXJhbXMgPSB7XHJcbiAgICAgICAgICAgIHBhZ2UsXHJcbiAgICAgICAgICAgIHNpemUsXHJcbiAgICAgICAgICAgIHNvcnQ6IGV2ZW50Lm11bHRpU29ydE1ldGE/Lmxlbmd0aCA/IGV2ZW50Lm11bHRpU29ydE1ldGEgOiBbeyBmaWVsZDogXCJpc3N1YW5jZURhdGVcIiwgb3JkZXI6IDEgfV0sXHJcbiAgICAgICAgICAgIGRpc3BsYXlGaWVsZHM6IFtcIipcIiwgSU5WT0lDRV9JVEVNUywgXCJpc3N1YW5jZURhdGVcIl0sXHJcbiAgICAgICAgfTtcclxuICAgICAgICB0aGlzLmdyaWRMb2FkaW5nID0gdHJ1ZTtcclxuICAgICAgICB0aGlzLmRvbnRIYXZlQW55SW52b2ljZSA9IGZhbHNlO1xyXG5cclxuICAgICAgICBjb25zdCBmaWx0ZXJCb2R5OiBJSW52b2ljZUxvb2t1cEZpbHRlciA9IHtcclxuICAgICAgICAgICAgZmlsdGVyOiB7XHJcbiAgICAgICAgICAgICAgICBjb21wYW55SWQsXHJcbiAgICAgICAgICAgICAgICBicmFuY2hJZCxcclxuICAgICAgICAgICAgICAgIHByb2R1Y2VySWRzOiBbcHJvZHVjZXJJZF0sXHJcbiAgICAgICAgICAgICAgICBydXJhbEVzdGF0ZUlkczogW3J1cmFsRXN0YXRlSWRdLFxyXG4gICAgICAgICAgICAgICAgbXVsdGlQcm9kdWN0czogZmFsc2UsXHJcbiAgICAgICAgICAgICAgICBwcm9kdWN0SWQ6IHRoaXMub3B0aW9ucy5wcm9kdWN0SWQsXHJcbiAgICAgICAgICAgIH0sXHJcbiAgICAgICAgICAgIHBhZ2VSZXF1ZXN0OiB7XHJcbiAgICAgICAgICAgICAgICBvZmZzZXQ6IHBhZ2UsXHJcbiAgICAgICAgICAgICAgICBzaXplOiBzaXplUGFnZSxcclxuICAgICAgICAgICAgICAgIG9yZGVyQnk6IHRoaXMuY3VycmVudFBhcmFtcy5zb3J0Lm1hcCgoc29ydCkgPT4gKHsgZmllbGQ6IHNvcnQuZmllbGQsIG9yZGVyOiBzb3J0Lm9yZGVyID09PSAxID8gXCJhc2NcIiA6IFwiZGVzY1wiIH0pKSxcclxuICAgICAgICAgICAgfSxcclxuICAgICAgICB9O1xyXG5cclxuICAgICAgICB0aGlzLmludm9pY2VTZXJ2aWNlXHJcbiAgICAgICAgICAgIC5pbnZvaWNlTG9va3VwRmlsdGVyKGZpbHRlckJvZHkpXHJcbiAgICAgICAgICAgIC5waXBlKFxyXG4gICAgICAgICAgICAgICAgdGFrZVVudGlsKHRoaXMubmdVbnN1YnNjcmliZSksXHJcbiAgICAgICAgICAgICAgICBmaW5hbGl6ZSgoKSA9PiB7XHJcbiAgICAgICAgICAgICAgICAgICAgdGhpcy5ncmlkTG9hZGluZyA9IGZhbHNlO1xyXG4gICAgICAgICAgICAgICAgfSlcclxuICAgICAgICAgICAgKVxyXG4gICAgICAgICAgICAuc3Vic2NyaWJlKFxyXG4gICAgICAgICAgICAgICAgKHJlc3VsdCkgPT4ge1xyXG4gICAgICAgICAgICAgICAgICAgIHRoaXMuZ3JpZERhdGEgPSByZXN1bHQ/LnJlc3VsdD8uaW52b2ljZXMgfHwgW107XHJcbiAgICAgICAgICAgICAgICAgICAgaWYgKHRoaXMuZ3JpZERhdGEubGVuZ3RoID09PSAwICYmICFzZWFyY2hWYWx1ZSkge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICB0aGlzLmRvbnRIYXZlQW55SW52b2ljZSA9IHRydWU7XHJcbiAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgICAgIHRoaXMuZ3JpZFRvdGFsUmVjb3JkcyA9IHJlc3VsdC5yZXN1bHQudG90YWxFbGVtZW50cztcclxuICAgICAgICAgICAgICAgIH0sXHJcbiAgICAgICAgICAgICAgICAoZXJyb3IpID0+IHtcclxuICAgICAgICAgICAgICAgICAgICBjb25zb2xlLmluZm8oXCJFcnJvIGFvIGJ1c2NhciBub3RhcyBmaXNjYWlzOiBcIiwgZXJyb3IpO1xyXG4gICAgICAgICAgICAgICAgfSxcclxuICAgICAgICAgICAgICAgICgpID0+IHtcclxuICAgICAgICAgICAgICAgICAgICB0aGlzLmdyaWRMb2FkaW5nID0gZmFsc2U7XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICk7XHJcbiAgICB9XHJcblxyXG4gICAgY2FuY2VsUG9vbGluZygpIHtcclxuICAgICAgICB0aGlzLmludm9pY2VTZXJ2aWNlLmNhbmNlbEFjdGl2ZVBvb2xpbmcoKTtcclxuICAgIH1cclxuXHJcbiAgICBhc3luYyBhZGQoKTogUHJvbWlzZTx2b2lkPiB7XHJcbiAgICAgICAgdHJ5IHtcclxuICAgICAgICAgICAgdGhpcy53aGVuU2VsZWN0SW52b2ljZXMuZW1pdCh0aGlzLnNlbGVjdGVkKTtcclxuICAgICAgICAgICAgdGhpcy5yZXNldFNwZWNzKCk7XHJcbiAgICAgICAgfSBjYXRjaCAoZXJyb3IpIHtcclxuICAgICAgICAgICAgY29uc29sZS5pbmZvKFwiRXJybyBhbyBzZWxlY2lvbmFyIG5vdGFzIGZpc2NhaXM6IFwiLCBlcnJvcik7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgIHByaXZhdGUgcmVzZXRTcGVjcygpOiB2b2lkIHtcclxuICAgICAgICB0aGlzLnNlbGVjdGVkID0gW107XHJcbiAgICAgICAgdGhpcy5kb250SGF2ZUFueUludm9pY2UgPSBmYWxzZTtcclxuICAgICAgICB0aGlzLnZpc2libGUgPSBmYWxzZTtcclxuICAgICAgICB0aGlzLmdyaWREYXRhID0gW107XHJcbiAgICAgICAgdGhpcy5ncmlkTG9hZGluZyA9IGZhbHNlO1xyXG4gICAgICAgIHRoaXMuZ3JpZFRvdGFsUmVjb3JkcyA9IDA7XHJcbiAgICB9XHJcblxyXG4gICAgYXN5bmMgY2FuY2VsKCk6IFByb21pc2U8dm9pZD4ge1xyXG4gICAgICAgIHRoaXMucmVzZXRTcGVjcygpO1xyXG4gICAgfVxyXG5cclxufVxyXG4iXX0=
|
|
@@ -6651,10 +6651,6 @@ let ModalInvoicePjSelectorComponent = class ModalInvoicePjSelectorComponent {
|
|
|
6651
6651
|
this.resetSpecs();
|
|
6652
6652
|
});
|
|
6653
6653
|
}
|
|
6654
|
-
getItemsQuantity(row) {
|
|
6655
|
-
var _a;
|
|
6656
|
-
return ((_a = row.invoiceItems) === null || _a === void 0 ? void 0 : _a.reduce((sum, item) => sum + (item.quantity || 0), 0)) || 0;
|
|
6657
|
-
}
|
|
6658
6654
|
};
|
|
6659
6655
|
ModalInvoicePjSelectorComponent.ctorParameters = () => [
|
|
6660
6656
|
{ type: LibTranslationService },
|
|
@@ -6669,7 +6665,7 @@ __decorate([
|
|
|
6669
6665
|
ModalInvoicePjSelectorComponent = __decorate([
|
|
6670
6666
|
Component({
|
|
6671
6667
|
selector: "s-modal-invoice-pj-selector",
|
|
6672
|
-
template: "<p-dialog\r\n header=\"{{ 'agro.angular_components.panel_title_external_invoice_add_external_invoice' | libTranslate }}\"\r\n [(visible)]=\"visible\"\r\n [modal]=\"true\"\r\n class=\"add-invoice-modal\"\r\n [closeOnEscape]=\"false\"\r\n (onHide)=\"cancelPooling()\"\r\n [dismissableMask]=\"false\"\r\n>\r\n <ng-container *ngIf=\"!dontHaveAnyInvoice\">\r\n <div class=\"ui-g\">\r\n <label for=\"invoiceSearchInput\">{{ \"agro.angular_components.number_or_series\" | libTranslate }}</label>\r\n <input\r\n type=\"text\"\r\n id=\"invoiceSearchInput\"\r\n pInputText\r\n [formControl]=\"searchValue\"\r\n [placeholder]=\"'' | libTranslate\"\r\n [required]=\"false\"\r\n />\r\n <div class=\"ui-g-12\">\r\n <p-table\r\n [(selection)]=\"selected\"\r\n [value]=\"gridData\"\r\n [columns]=\"gridColumns\"\r\n [scrollable]=\"true\"\r\n dataKey=\"externalInvoiceId\"\r\n [rows]=\"10\"\r\n [paginator]=\"true\"\r\n [lazyLoadOnInit]=\"false\"\r\n [totalRecords]=\"gridTotalRecords\"\r\n [lazy]=\"true\"\r\n (onLazyLoad)=\"updateGridData($event)\"\r\n [resizableColumns]=\"true\"\r\n *sLoadingState=\"gridLoading\"\r\n sortMode=\"multiple\"\r\n [selectionMode]=\"'multiple'\"\r\n >\r\n <ng-template pTemplate=\"header\" let-columns>\r\n <tr>\r\n <th class=\"checkbox\" scope=\"col\">\r\n <p-tableHeaderCheckbox></p-tableHeaderCheckbox>\r\n </th>\r\n <ng-container *ngFor=\"let col of columns\">\r\n <th class=\"column\" scope=\"col\" *ngIf=\"['invoiceItems', 'quantity'].includes(col.field)\">\r\n {{ col.header }}\r\n </th>\r\n <th\r\n class=\"column\"\r\n [pSortableColumn]=\"col.field\"\r\n scope=\"col\"\r\n *ngIf=\"!['invoiceItems', 'quantity'].includes(col.field)\"\r\n >\r\n {{ col.header }}\r\n <p-sortIcon [field]=\"col.field\"></p-sortIcon>\r\n </th>\r\n </ng-container>\r\n </tr>\r\n </ng-template>\r\n\r\n <ng-template pTemplate=\"body\" let-rowData let-columns=\"columns\" let-rowIndex=\"rowIndex\">\r\n <tr>\r\n <td class=\"checkbox\" tabindex=\"0\">\r\n <p-tableCheckbox [value]=\"rowData\"></p-tableCheckbox>\r\n </td>\r\n <td\r\n [pSelectableRow]=\"rowData\"\r\n [pSelectableRowIndex]=\"rowIndex\"\r\n *ngFor=\"let col of columns\"\r\n class=\"column\"\r\n tabindex=\"0\"\r\n >\r\n <ng-container [ngSwitch]=\"col.field\">\r\n <ng-container *ngSwitchCase=\"'issuanceDate'\">\r\n {{ rowData[col.field] | localizedDate: \"L\" | async }}\r\n </ng-container>\r\n <ng-container *ngSwitchCase=\"'invoiceItems'\">\r\n {{ rowData[col.field]?.
|
|
6668
|
+
template: "<p-dialog\r\n header=\"{{ 'agro.angular_components.panel_title_external_invoice_add_external_invoice' | libTranslate }}\"\r\n [(visible)]=\"visible\"\r\n [modal]=\"true\"\r\n class=\"add-invoice-modal\"\r\n [closeOnEscape]=\"false\"\r\n (onHide)=\"cancelPooling()\"\r\n [dismissableMask]=\"false\"\r\n>\r\n <ng-container *ngIf=\"!dontHaveAnyInvoice\">\r\n <div class=\"ui-g\">\r\n <label for=\"invoiceSearchInput\">{{ \"agro.angular_components.number_or_series\" | libTranslate }}</label>\r\n <input\r\n type=\"text\"\r\n id=\"invoiceSearchInput\"\r\n pInputText\r\n [formControl]=\"searchValue\"\r\n [placeholder]=\"'' | libTranslate\"\r\n [required]=\"false\"\r\n />\r\n <div class=\"ui-g-12\">\r\n <p-table\r\n [(selection)]=\"selected\"\r\n [value]=\"gridData\"\r\n [columns]=\"gridColumns\"\r\n [scrollable]=\"true\"\r\n dataKey=\"externalInvoiceId\"\r\n [rows]=\"10\"\r\n [paginator]=\"true\"\r\n [lazyLoadOnInit]=\"false\"\r\n [totalRecords]=\"gridTotalRecords\"\r\n [lazy]=\"true\"\r\n (onLazyLoad)=\"updateGridData($event)\"\r\n [resizableColumns]=\"true\"\r\n *sLoadingState=\"gridLoading\"\r\n sortMode=\"multiple\"\r\n [selectionMode]=\"'multiple'\"\r\n >\r\n <ng-template pTemplate=\"header\" let-columns>\r\n <tr>\r\n <th class=\"checkbox\" scope=\"col\">\r\n <p-tableHeaderCheckbox></p-tableHeaderCheckbox>\r\n </th>\r\n <ng-container *ngFor=\"let col of columns\">\r\n <th class=\"column\" scope=\"col\" *ngIf=\"['invoiceItems', 'quantity'].includes(col.field)\">\r\n {{ col.header }}\r\n </th>\r\n <th\r\n class=\"column\"\r\n [pSortableColumn]=\"col.field\"\r\n scope=\"col\"\r\n *ngIf=\"!['invoiceItems', 'quantity'].includes(col.field)\"\r\n >\r\n {{ col.header }}\r\n <p-sortIcon [field]=\"col.field\"></p-sortIcon>\r\n </th>\r\n </ng-container>\r\n </tr>\r\n </ng-template>\r\n\r\n <ng-template pTemplate=\"body\" let-rowData let-columns=\"columns\" let-rowIndex=\"rowIndex\">\r\n <tr>\r\n <td class=\"checkbox\" tabindex=\"0\">\r\n <p-tableCheckbox [value]=\"rowData\"></p-tableCheckbox>\r\n </td>\r\n <td\r\n [pSelectableRow]=\"rowData\"\r\n [pSelectableRowIndex]=\"rowIndex\"\r\n *ngFor=\"let col of columns\"\r\n class=\"column\"\r\n tabindex=\"0\"\r\n >\r\n <ng-container [ngSwitch]=\"col.field\">\r\n <ng-container *ngSwitchCase=\"'issuanceDate'\">\r\n {{ rowData[col.field] | localizedDate: \"L\" | async }}\r\n </ng-container>\r\n <ng-container *ngSwitchCase=\"'invoiceItems'\">\r\n {{ rowData[col.field]?.totalItems || 0 }}\r\n </ng-container>\r\n <ng-container *ngSwitchCase=\"'quantity'\">\r\n {{ rowData.totalItemsQuantity || 0 | kilogram }}\r\n </ng-container>\r\n <ng-container *ngSwitchDefault> {{ rowData[col.field] }} </ng-container>\r\n </ng-container>\r\n </td>\r\n </tr>\r\n </ng-template>\r\n\r\n <ng-template pTemplate=\"paginatorright\">\r\n <span>{{ gridTotalRecords }} registros encontrados</span>\r\n </ng-template>\r\n </p-table>\r\n </div>\r\n </div>\r\n </ng-container>\r\n\r\n <ng-container *ngIf=\"dontHaveAnyInvoice\">\r\n <s-empty-state\r\n iconClass=\"fa fa-exclamation-triangle\"\r\n title=\"{{ 'agro.angular_components.add_pj_invoice_modal_no_invoices_found' | libTranslate }}\"\r\n primaryActionLabel=\"{{ 'agro.angular_components.error_server_try_again' | libTranslate }}\"\r\n (primaryAction)=\"tryToSearchAgain()\"\r\n description=\"{{ 'agro.angular_components.no_register_found_for_external_invoices_summary' | libTranslate }}\"\r\n >\r\n </s-empty-state>\r\n </ng-container>\r\n\r\n <p-footer class=\"footer\" *ngIf=\"!dontHaveAnyInvoice\">\r\n <s-button\r\n [priority]=\"buttonPriority.Primary\"\r\n label=\"{{ 'agro.angular_components.panel_title_external_invoice_add_external_invoice' | libTranslate }}\"\r\n [disabled]=\"!selected?.length\"\r\n (click)=\"add()\"\r\n (keydown.enter)=\"add()\"\r\n ></s-button>\r\n <s-button\r\n [priority]=\"buttonPriority.Link\"\r\n label=\"{{ 'agro.angular_components.cancel' | libTranslate }}\"\r\n (click)=\"cancel()\"\r\n (keydown.enter)=\"cancel()\"\r\n ></s-button>\r\n </p-footer>\r\n</p-dialog>\r\n",
|
|
6673
6669
|
styles: [".footer{width:100%;display:-ms-flexbox;display:flex;-ms-flex-pack:justify;justify-content:space-between;-ms-flex-align:center;align-items:center}.add-invoice-modal{width:480px;max-width:480px}.add-invoice-modal input[type=text]{width:100%}.add-invoice-modal .ui-dialog{width:480px!important}.add-invoice-modal .ui-dialog .ui-dialog-content{min-height:175px}td.checkbox,th.checkbox{width:50px}td.column,th.column{min-width:150px;overflow:hidden;white-space:nowrap;text-overflow:ellipsis}"]
|
|
6674
6670
|
})
|
|
6675
6671
|
], ModalInvoicePjSelectorComponent);
|