@senior-agronegocio/angular-components 1.0.3 → 1.0.5

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.
Files changed (64) hide show
  1. package/components/agro-workspace/agro-lookup/agro-lookup.component.d.ts +19 -0
  2. package/components/agro-workspace/agro-workspace-switch.interface.d.ts +5 -0
  3. package/components/agro-workspace/agro-workspace-switch.service.d.ts +46 -0
  4. package/components/agro-workspace/agro-workspace-switch.service.interface.d.ts +19 -0
  5. package/components/agro-workspace/agro-workspace.component.d.ts +36 -0
  6. package/components/agro-workspace/agro-workspace.model.d.ts +6 -0
  7. package/components/agro-workspace/agro-workspace.module.d.ts +17 -0
  8. package/components/agro-workspace/e070emp/e070emp-dto.d.ts +10 -0
  9. package/components/agro-workspace/e070emp/e070emp.d.ts +13 -0
  10. package/components/agro-workspace/e070emp/e070emp.module.d.ts +7 -0
  11. package/components/agro-workspace/e070emp/e070emp.service.d.ts +15 -0
  12. package/components/agro-workspace/e070fil/e070fil-dto.d.ts +14 -0
  13. package/components/agro-workspace/e070fil/e070fil.d.ts +17 -0
  14. package/components/agro-workspace/e070fil/e070fil.module.d.ts +7 -0
  15. package/components/agro-workspace/e070fil/e070fil.service.d.ts +19 -0
  16. package/components/agro-workspace/index.d.ts +6 -0
  17. package/components/index.d.ts +2 -0
  18. package/components/modal-beauty-events/index.d.ts +4 -0
  19. package/components/modal-beauty-events/modal-beauty-events-config.d.ts +15 -0
  20. package/components/modal-beauty-events/modal-beauty-events.component.d.ts +29 -0
  21. package/components/modal-beauty-events/modal-beauty-events.service.d.ts +16 -0
  22. package/components/modal-invoice-pj/for-contracts/modal-invoice-pj-for-contracts.component.d.ts +1 -0
  23. package/components/modal-invoice-pj/modal-invoice-pj-base.class.d.ts +11 -0
  24. package/components/producer-list-modal/index.d.ts +2 -0
  25. package/components/producer-list-modal/producer-list-modal.component.d.ts +7 -5
  26. package/components/producer-list-modal/producer-list-modal.module.d.ts +1 -3
  27. package/components/producer-list-modal/producer-list-modal.service.d.ts +42 -0
  28. package/esm2022/components/agro-workspace/agro-lookup/agro-lookup.component.mjs +62 -0
  29. package/esm2022/components/agro-workspace/agro-workspace-switch.interface.mjs +2 -0
  30. package/esm2022/components/agro-workspace/agro-workspace-switch.service.interface.mjs +2 -0
  31. package/esm2022/components/agro-workspace/agro-workspace-switch.service.mjs +195 -0
  32. package/esm2022/components/agro-workspace/agro-workspace.component.mjs +152 -0
  33. package/esm2022/components/agro-workspace/agro-workspace.model.mjs +2 -0
  34. package/esm2022/components/agro-workspace/agro-workspace.module.mjs +55 -0
  35. package/esm2022/components/agro-workspace/e070emp/e070emp-dto.mjs +2 -0
  36. package/esm2022/components/agro-workspace/e070emp/e070emp.mjs +37 -0
  37. package/esm2022/components/agro-workspace/e070emp/e070emp.module.mjs +34 -0
  38. package/esm2022/components/agro-workspace/e070emp/e070emp.service.mjs +30 -0
  39. package/esm2022/components/agro-workspace/e070fil/e070fil-dto.mjs +2 -0
  40. package/esm2022/components/agro-workspace/e070fil/e070fil.mjs +44 -0
  41. package/esm2022/components/agro-workspace/e070fil/e070fil.module.mjs +49 -0
  42. package/esm2022/components/agro-workspace/e070fil/e070fil.service.mjs +36 -0
  43. package/esm2022/components/agro-workspace/index.mjs +4 -0
  44. package/esm2022/components/cancel-event-dialog/cancel-event-dialog.component.mjs +1 -1
  45. package/esm2022/components/event-control-board/event-control-board.component.mjs +1 -1
  46. package/esm2022/components/event-control-board/service/e070fil/e070fil.mjs +1 -9
  47. package/esm2022/components/financial-title-table/financial-title-table.component.mjs +1 -1
  48. package/esm2022/components/index.mjs +3 -1
  49. package/esm2022/components/modal-beauty-events/index.mjs +3 -0
  50. package/esm2022/components/modal-beauty-events/modal-beauty-events-config.mjs +2 -0
  51. package/esm2022/components/modal-beauty-events/modal-beauty-events.component.mjs +47 -0
  52. package/esm2022/components/modal-beauty-events/modal-beauty-events.service.mjs +31 -0
  53. package/esm2022/components/modal-invoice-pj/for-contracts/modal-invoice-pj-for-contracts.component.mjs +5 -5
  54. package/esm2022/components/modal-invoice-pj/for-fixation/modal-invoice-pj-for-fixation.component.mjs +4 -5
  55. package/esm2022/components/modal-invoice-pj/for-origination/modal-invoice-pj-for-origination.component.mjs +4 -5
  56. package/esm2022/components/modal-invoice-pj/for-transfer/modal-invoice-pj-for-transfer.component.mjs +4 -5
  57. package/esm2022/components/modal-invoice-pj/modal-invoice-pj-base.class.mjs +14 -1
  58. package/esm2022/components/producer-list-modal/index.mjs +2 -1
  59. package/esm2022/components/producer-list-modal/producer-list-modal.component.mjs +31 -27
  60. package/esm2022/components/producer-list-modal/producer-list-modal.module.mjs +4 -7
  61. package/esm2022/components/producer-list-modal/producer-list-modal.service.mjs +53 -0
  62. package/fesm2022/senior-agronegocio-angular-components.mjs +753 -65
  63. package/fesm2022/senior-agronegocio-angular-components.mjs.map +1 -1
  64. package/package.json +17 -11
@@ -1,48 +1,52 @@
1
- import { ChangeDetectionStrategy, Component, EventEmitter, Input, Output } from "@angular/core";
1
+ import { ChangeDetectionStrategy, ChangeDetectorRef, Component, Input, inject } from "@angular/core";
2
+ import { CommonModule } from "@angular/common";
3
+ import { ButtonComponent } from "@seniorsistemas/angular-components/button";
4
+ import { DialogComponent } from "@seniorsistemas/angular-components/dialog";
5
+ import { ActiveDialog } from "@seniorsistemas/angular-components/dialog";
2
6
  import { AgroNameUtils } from "../../common/agro-name-utils.class";
3
7
  import * as i0 from "@angular/core";
4
8
  import * as i1 from "@angular/common";
5
- import * as i2 from "primeng/dialog";
6
- import * as i3 from "primeng/api";
7
9
  export class ProducerListModalComponent {
8
- visible = false;
9
- data = {
10
+ cdr = inject(ChangeDetectorRef);
11
+ activeDialog = inject(ActiveDialog, { optional: true });
12
+ visible = true;
13
+ _data = {
10
14
  title: "",
11
15
  shouldAbbreviateNames: false,
12
16
  producers: [],
13
17
  };
14
- visibleChange = new EventEmitter();
15
- closed = new EventEmitter();
18
+ set data(value) {
19
+ this._data = value;
20
+ this.cdr.markForCheck();
21
+ }
22
+ get data() {
23
+ return this._data;
24
+ }
16
25
  getDisplayName(name) {
17
- if (!this.data?.shouldAbbreviateNames) {
18
- return name;
19
- }
20
- return AgroNameUtils.abbreviateName(name) ?? name;
26
+ const display = this.data?.shouldAbbreviateNames
27
+ ? AgroNameUtils.abbreviateName(name) ?? name
28
+ : name;
29
+ return display
30
+ .split(' ')
31
+ .map(w => w.charAt(0).toUpperCase() + w.slice(1).toLowerCase())
32
+ .join(' ');
33
+ }
34
+ getInitials(name) {
35
+ return AgroNameUtils.getInitials(name)?.slice(0, 2) ?? '?';
21
36
  }
22
37
  trackByProducerId(_index, producer) {
23
38
  return producer.id;
24
39
  }
25
40
  handleClose() {
26
- if (!this.visible) {
27
- return;
28
- }
29
- this.visible = false;
30
- this.visibleChange.emit(false);
31
- this.closed.emit();
41
+ this.activeDialog?.close();
32
42
  }
33
43
  static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: ProducerListModalComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
34
- static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.14", type: ProducerListModalComponent, selector: "s-producer-list-modal", inputs: { visible: "visible", data: "data" }, outputs: { visibleChange: "visibleChange", closed: "closed" }, ngImport: i0, template: "<p-dialog\r\n [header]=\"data.title\"\r\n [modal]=\"true\"\r\n [draggable]=\"false\"\r\n [resizable]=\"false\"\r\n [dismissableMask]=\"true\"\r\n [closable]=\"false\"\r\n [style]=\"{ width: 'min(36rem, 92vw)' }\"\r\n [(visible)]=\"visible\"\r\n (onHide)=\"handleClose()\"\r\n styleClass=\"s-producer-list-modal\"\r\n>\r\n <section class=\"producer-list-content\">\r\n <ul *ngIf=\"data.producers.length; else emptyState\" class=\"producer-list\">\r\n <li\r\n *ngFor=\"let producer of data.producers; trackBy: trackByProducerId\"\r\n class=\"producer-item\"\r\n [attr.data-producer]=\"producer.id\"\r\n >\r\n {{ getDisplayName(producer.name) }}\r\n </li>\r\n </ul>\r\n\r\n <ng-template #emptyState>\r\n <p class=\"empty-state\">Nenhum produtor informado.</p>\r\n </ng-template>\r\n </section>\r\n\r\n <ng-template pTemplate=\"footer\">\r\n <button type=\"button\" class=\"close-button\" (click)=\"handleClose()\">Fechar</button>\r\n </ng-template>\r\n</p-dialog>", styles: [":host{display:block}.producer-list-content{font-size:.95rem;line-height:1.5;color:#24313f}.producer-list{margin:0;padding-left:1rem}.producer-item{margin-bottom:.45rem;letter-spacing:.01em}.empty-state{margin:0;color:#678}.close-button{padding:.5rem 1rem;border:1px solid #d5dde6;border-radius:.5rem;background-color:#fff;color:#24313f;font-weight:600;cursor:pointer}.close-button:hover{background-color:#f2f6fa}\n"], dependencies: [{ kind: "directive", type: i1.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: i2.Dialog, selector: "p-dialog", inputs: ["header", "draggable", "resizable", "positionLeft", "positionTop", "contentStyle", "contentStyleClass", "modal", "closeOnEscape", "dismissableMask", "rtl", "closable", "responsive", "appendTo", "breakpoints", "styleClass", "maskStyleClass", "maskStyle", "showHeader", "breakpoint", "blockScroll", "autoZIndex", "baseZIndex", "minX", "minY", "focusOnShow", "maximizable", "keepInViewport", "focusTrap", "transitionOptions", "closeIcon", "closeAriaLabel", "closeTabindex", "minimizeIcon", "maximizeIcon", "closeButtonProps", "maximizeButtonProps", "visible", "style", "position", "role", "content", "contentTemplate", "footerTemplate", "closeIconTemplate", "maximizeIconTemplate", "minimizeIconTemplate", "headlessTemplate"], outputs: ["onShow", "onHide", "visibleChange", "onResizeInit", "onResizeEnd", "onDragEnd", "onMaximize"] }, { kind: "directive", type: i3.PrimeTemplate, selector: "[pTemplate]", inputs: ["type", "pTemplate"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
44
+ static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.14", type: ProducerListModalComponent, isStandalone: true, selector: "s-producer-list-modal", inputs: { data: "data" }, ngImport: i0, template: "<s-dialog\r\n [header]=\"data.title\"\r\n size=\"md\"\r\n>\r\n <section class=\"producer-list-content\">\r\n <ul\r\n *ngIf=\"data.producers.length; else emptyState\"\r\n class=\"producer-list\"\r\n >\r\n <li\r\n *ngFor=\"let producer of data.producers; trackBy: trackByProducerId\"\r\n class=\"producer-item\"\r\n [attr.data-producer]=\"producer.id\"\r\n >\r\n <span\r\n class=\"producer-avatar\"\r\n [attr.data-initials]=\"getInitials(producer.name)\"\r\n >{{ getInitials(producer.name) }}</span\r\n >\r\n <span class=\"producer-name\">{{ getDisplayName(producer.name) }}</span>\r\n </li>\r\n </ul>\r\n\r\n <ng-template #emptyState>\r\n <div class=\"empty-state\">\r\n <i class=\"fa fa-users empty-state-icon\"></i>\r\n <p class=\"empty-state-text\">Nenhum produtor informado.</p>\r\n </div>\r\n </ng-template>\r\n </section>\r\n\r\n <ng-template sTemplate=\"footer\">\r\n aaaaa\r\n <s-button\r\n label=\"Fechar\"\r\n priority=\"primary\"\r\n (clicked)=\"handleClose()\"\r\n ></s-button>\r\n </ng-template>\r\n</s-dialog>\r\n", styles: [":host{display:block}.producer-list-content{font-size:.9rem;color:#24313f}.producer-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:.5rem}.producer-item{display:flex;align-items:center;gap:.75rem;padding:.5rem .75rem;border-radius:.5rem;background-color:#f7f9fb;transition:background-color .15s ease}.producer-item:hover{background-color:#edf2f7}.producer-avatar{display:inline-flex;align-items:center;justify-content:center;width:2rem;height:2rem;min-width:2rem;border-radius:50%;background-color:#3a7afe;color:#fff;font-size:.7rem;font-weight:700;letter-spacing:.04em;text-transform:uppercase;-webkit-user-select:none;user-select:none}.producer-name{font-size:.9rem;font-weight:500;color:#24313f;letter-spacing:.01em;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.empty-state{display:flex;flex-direction:column;align-items:center;gap:.5rem;padding:2rem 0;color:#89a}.empty-state-icon{font-size:2rem;opacity:.4}.empty-state-text{margin:0;font-size:.9rem}\n"], dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i1.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: DialogComponent, selector: "s-dialog", inputs: ["header", "visible", "size", "contentClassName", "escapeOnEsc", "destroyClickOutside"], outputs: ["visibleChange"] }, { kind: "component", type: ButtonComponent, selector: "s-button", inputs: ["id", "label", "tooltip", "tooltipPosition", "iconClass", "rightIconClass", "caret", "styleClass", "baseZIndex", "disabled", "auxiliary", "type", "priority", "menuOptions", "size", "slide", "animation", "badge", "iconColor"], outputs: ["clicked"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
35
45
  }
36
46
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: ProducerListModalComponent, decorators: [{
37
47
  type: Component,
38
- args: [{ selector: "s-producer-list-modal", changeDetection: ChangeDetectionStrategy.OnPush, template: "<p-dialog\r\n [header]=\"data.title\"\r\n [modal]=\"true\"\r\n [draggable]=\"false\"\r\n [resizable]=\"false\"\r\n [dismissableMask]=\"true\"\r\n [closable]=\"false\"\r\n [style]=\"{ width: 'min(36rem, 92vw)' }\"\r\n [(visible)]=\"visible\"\r\n (onHide)=\"handleClose()\"\r\n styleClass=\"s-producer-list-modal\"\r\n>\r\n <section class=\"producer-list-content\">\r\n <ul *ngIf=\"data.producers.length; else emptyState\" class=\"producer-list\">\r\n <li\r\n *ngFor=\"let producer of data.producers; trackBy: trackByProducerId\"\r\n class=\"producer-item\"\r\n [attr.data-producer]=\"producer.id\"\r\n >\r\n {{ getDisplayName(producer.name) }}\r\n </li>\r\n </ul>\r\n\r\n <ng-template #emptyState>\r\n <p class=\"empty-state\">Nenhum produtor informado.</p>\r\n </ng-template>\r\n </section>\r\n\r\n <ng-template pTemplate=\"footer\">\r\n <button type=\"button\" class=\"close-button\" (click)=\"handleClose()\">Fechar</button>\r\n </ng-template>\r\n</p-dialog>", styles: [":host{display:block}.producer-list-content{font-size:.95rem;line-height:1.5;color:#24313f}.producer-list{margin:0;padding-left:1rem}.producer-item{margin-bottom:.45rem;letter-spacing:.01em}.empty-state{margin:0;color:#678}.close-button{padding:.5rem 1rem;border:1px solid #d5dde6;border-radius:.5rem;background-color:#fff;color:#24313f;font-weight:600;cursor:pointer}.close-button:hover{background-color:#f2f6fa}\n"] }]
39
- }], propDecorators: { visible: [{
40
- type: Input
41
- }], data: [{
48
+ args: [{ selector: "s-producer-list-modal", changeDetection: ChangeDetectionStrategy.OnPush, standalone: true, imports: [CommonModule, DialogComponent, ButtonComponent], template: "<s-dialog\r\n [header]=\"data.title\"\r\n size=\"md\"\r\n>\r\n <section class=\"producer-list-content\">\r\n <ul\r\n *ngIf=\"data.producers.length; else emptyState\"\r\n class=\"producer-list\"\r\n >\r\n <li\r\n *ngFor=\"let producer of data.producers; trackBy: trackByProducerId\"\r\n class=\"producer-item\"\r\n [attr.data-producer]=\"producer.id\"\r\n >\r\n <span\r\n class=\"producer-avatar\"\r\n [attr.data-initials]=\"getInitials(producer.name)\"\r\n >{{ getInitials(producer.name) }}</span\r\n >\r\n <span class=\"producer-name\">{{ getDisplayName(producer.name) }}</span>\r\n </li>\r\n </ul>\r\n\r\n <ng-template #emptyState>\r\n <div class=\"empty-state\">\r\n <i class=\"fa fa-users empty-state-icon\"></i>\r\n <p class=\"empty-state-text\">Nenhum produtor informado.</p>\r\n </div>\r\n </ng-template>\r\n </section>\r\n\r\n <ng-template sTemplate=\"footer\">\r\n aaaaa\r\n <s-button\r\n label=\"Fechar\"\r\n priority=\"primary\"\r\n (clicked)=\"handleClose()\"\r\n ></s-button>\r\n </ng-template>\r\n</s-dialog>\r\n", styles: [":host{display:block}.producer-list-content{font-size:.9rem;color:#24313f}.producer-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:.5rem}.producer-item{display:flex;align-items:center;gap:.75rem;padding:.5rem .75rem;border-radius:.5rem;background-color:#f7f9fb;transition:background-color .15s ease}.producer-item:hover{background-color:#edf2f7}.producer-avatar{display:inline-flex;align-items:center;justify-content:center;width:2rem;height:2rem;min-width:2rem;border-radius:50%;background-color:#3a7afe;color:#fff;font-size:.7rem;font-weight:700;letter-spacing:.04em;text-transform:uppercase;-webkit-user-select:none;user-select:none}.producer-name{font-size:.9rem;font-weight:500;color:#24313f;letter-spacing:.01em;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.empty-state{display:flex;flex-direction:column;align-items:center;gap:.5rem;padding:2rem 0;color:#89a}.empty-state-icon{font-size:2rem;opacity:.4}.empty-state-text{margin:0;font-size:.9rem}\n"] }]
49
+ }], propDecorators: { data: [{
42
50
  type: Input
43
- }], visibleChange: [{
44
- type: Output
45
- }], closed: [{
46
- type: Output
47
51
  }] } });
48
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHJvZHVjZXItbGlzdC1tb2RhbC5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9wcm9qZWN0cy9hbmd1bGFyLWNvbXBvbmVudHMvY29tcG9uZW50cy9wcm9kdWNlci1saXN0LW1vZGFsL3Byb2R1Y2VyLWxpc3QtbW9kYWwuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vcHJvamVjdHMvYW5ndWxhci1jb21wb25lbnRzL2NvbXBvbmVudHMvcHJvZHVjZXItbGlzdC1tb2RhbC9wcm9kdWNlci1saXN0LW1vZGFsLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSx1QkFBdUIsRUFBRSxTQUFTLEVBQUUsWUFBWSxFQUFFLEtBQUssRUFBRSxNQUFNLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDaEcsT0FBTyxFQUFFLGFBQWEsRUFBRSxNQUFNLG9DQUFvQyxDQUFDOzs7OztBQVNuRSxNQUFNLE9BQU8sMEJBQTBCO0lBRTVCLE9BQU8sR0FBRyxLQUFLLENBQUM7SUFHaEIsSUFBSSxHQUEwQjtRQUNqQyxLQUFLLEVBQUUsRUFBRTtRQUNULHFCQUFxQixFQUFFLEtBQUs7UUFDNUIsU0FBUyxFQUFFLEVBQUU7S0FDaEIsQ0FBQztJQUdLLGFBQWEsR0FBRyxJQUFJLFlBQVksRUFBVyxDQUFDO0lBRzVDLE1BQU0sR0FBRyxJQUFJLFlBQVksRUFBUSxDQUFDO0lBRWxDLGNBQWMsQ0FBQyxJQUFZO1FBQzlCLElBQUksQ0FBQyxJQUFJLENBQUMsSUFBSSxFQUFFLHFCQUFxQixFQUFFLENBQUM7WUFDcEMsT0FBTyxJQUFJLENBQUM7UUFDaEIsQ0FBQztRQUVELE9BQU8sYUFBYSxDQUFDLGNBQWMsQ0FBQyxJQUFJLENBQUMsSUFBSSxJQUFJLENBQUM7SUFDdEQsQ0FBQztJQUVNLGlCQUFpQixDQUFDLE1BQWMsRUFBRSxRQUEwQjtRQUMvRCxPQUFPLFFBQVEsQ0FBQyxFQUFFLENBQUM7SUFDdkIsQ0FBQztJQUVNLFdBQVc7UUFDZCxJQUFJLENBQUMsSUFBSSxDQUFDLE9BQU8sRUFBRSxDQUFDO1lBQ2hCLE9BQU87UUFDWCxDQUFDO1FBRUQsSUFBSSxDQUFDLE9BQU8sR0FBRyxLQUFLLENBQUM7UUFDckIsSUFBSSxDQUFDLGFBQWEsQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLENBQUM7UUFDL0IsSUFBSSxDQUFDLE1BQU0sQ0FBQyxJQUFJLEVBQUUsQ0FBQztJQUN2QixDQUFDO3dHQXJDUSwwQkFBMEI7NEZBQTFCLDBCQUEwQiwwS0NWdkMsdW5DQStCVzs7NEZEckJFLDBCQUEwQjtrQkFOdEMsU0FBUzsrQkFDSSx1QkFBdUIsbUJBR2hCLHVCQUF1QixDQUFDLE1BQU07OEJBSXhDLE9BQU87c0JBRGIsS0FBSztnQkFJQyxJQUFJO3NCQURWLEtBQUs7Z0JBUUMsYUFBYTtzQkFEbkIsTUFBTTtnQkFJQSxNQUFNO3NCQURaLE1BQU0iLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneSwgQ29tcG9uZW50LCBFdmVudEVtaXR0ZXIsIElucHV0LCBPdXRwdXQgfSBmcm9tIFwiQGFuZ3VsYXIvY29yZVwiO1xyXG5pbXBvcnQgeyBBZ3JvTmFtZVV0aWxzIH0gZnJvbSBcIi4uLy4uL2NvbW1vbi9hZ3JvLW5hbWUtdXRpbHMuY2xhc3NcIjtcclxuaW1wb3J0IHsgUHJvZHVjZXJMaXN0SXRlbSwgUHJvZHVjZXJMaXN0TW9kYWxEYXRhIH0gZnJvbSBcIi4vcHJvZHVjZXItbGlzdC1tb2RhbC1kYXRhLmludGVyZmFjZVwiO1xyXG5cclxuQENvbXBvbmVudCh7XHJcbiAgICBzZWxlY3RvcjogXCJzLXByb2R1Y2VyLWxpc3QtbW9kYWxcIixcclxuICAgIHRlbXBsYXRlVXJsOiBcIi4vcHJvZHVjZXItbGlzdC1tb2RhbC5jb21wb25lbnQuaHRtbFwiLFxyXG4gICAgc3R5bGVVcmxzOiBbXCIuL3Byb2R1Y2VyLWxpc3QtbW9kYWwuY29tcG9uZW50LnNjc3NcIl0sXHJcbiAgICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaCxcclxufSlcclxuZXhwb3J0IGNsYXNzIFByb2R1Y2VyTGlzdE1vZGFsQ29tcG9uZW50IHtcclxuICAgIEBJbnB1dCgpXHJcbiAgICBwdWJsaWMgdmlzaWJsZSA9IGZhbHNlO1xyXG5cclxuICAgIEBJbnB1dCgpXHJcbiAgICBwdWJsaWMgZGF0YTogUHJvZHVjZXJMaXN0TW9kYWxEYXRhID0ge1xyXG4gICAgICAgIHRpdGxlOiBcIlwiLFxyXG4gICAgICAgIHNob3VsZEFiYnJldmlhdGVOYW1lczogZmFsc2UsXHJcbiAgICAgICAgcHJvZHVjZXJzOiBbXSxcclxuICAgIH07XHJcblxyXG4gICAgQE91dHB1dCgpXHJcbiAgICBwdWJsaWMgdmlzaWJsZUNoYW5nZSA9IG5ldyBFdmVudEVtaXR0ZXI8Ym9vbGVhbj4oKTtcclxuXHJcbiAgICBAT3V0cHV0KClcclxuICAgIHB1YmxpYyBjbG9zZWQgPSBuZXcgRXZlbnRFbWl0dGVyPHZvaWQ+KCk7XHJcblxyXG4gICAgcHVibGljIGdldERpc3BsYXlOYW1lKG5hbWU6IHN0cmluZyk6IHN0cmluZyB7XHJcbiAgICAgICAgaWYgKCF0aGlzLmRhdGE/LnNob3VsZEFiYnJldmlhdGVOYW1lcykge1xyXG4gICAgICAgICAgICByZXR1cm4gbmFtZTtcclxuICAgICAgICB9XHJcblxyXG4gICAgICAgIHJldHVybiBBZ3JvTmFtZVV0aWxzLmFiYnJldmlhdGVOYW1lKG5hbWUpID8/IG5hbWU7XHJcbiAgICB9XHJcblxyXG4gICAgcHVibGljIHRyYWNrQnlQcm9kdWNlcklkKF9pbmRleDogbnVtYmVyLCBwcm9kdWNlcjogUHJvZHVjZXJMaXN0SXRlbSk6IHN0cmluZyB7XHJcbiAgICAgICAgcmV0dXJuIHByb2R1Y2VyLmlkO1xyXG4gICAgfVxyXG5cclxuICAgIHB1YmxpYyBoYW5kbGVDbG9zZSgpOiB2b2lkIHtcclxuICAgICAgICBpZiAoIXRoaXMudmlzaWJsZSkge1xyXG4gICAgICAgICAgICByZXR1cm47XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICB0aGlzLnZpc2libGUgPSBmYWxzZTtcclxuICAgICAgICB0aGlzLnZpc2libGVDaGFuZ2UuZW1pdChmYWxzZSk7XHJcbiAgICAgICAgdGhpcy5jbG9zZWQuZW1pdCgpO1xyXG4gICAgfVxyXG59IiwiPHAtZGlhbG9nXHJcbiAgICBbaGVhZGVyXT1cImRhdGEudGl0bGVcIlxyXG4gICAgW21vZGFsXT1cInRydWVcIlxyXG4gICAgW2RyYWdnYWJsZV09XCJmYWxzZVwiXHJcbiAgICBbcmVzaXphYmxlXT1cImZhbHNlXCJcclxuICAgIFtkaXNtaXNzYWJsZU1hc2tdPVwidHJ1ZVwiXHJcbiAgICBbY2xvc2FibGVdPVwiZmFsc2VcIlxyXG4gICAgW3N0eWxlXT1cInsgd2lkdGg6ICdtaW4oMzZyZW0sIDkydncpJyB9XCJcclxuICAgIFsodmlzaWJsZSldPVwidmlzaWJsZVwiXHJcbiAgICAob25IaWRlKT1cImhhbmRsZUNsb3NlKClcIlxyXG4gICAgc3R5bGVDbGFzcz1cInMtcHJvZHVjZXItbGlzdC1tb2RhbFwiXHJcbj5cclxuICAgIDxzZWN0aW9uIGNsYXNzPVwicHJvZHVjZXItbGlzdC1jb250ZW50XCI+XHJcbiAgICAgICAgPHVsICpuZ0lmPVwiZGF0YS5wcm9kdWNlcnMubGVuZ3RoOyBlbHNlIGVtcHR5U3RhdGVcIiBjbGFzcz1cInByb2R1Y2VyLWxpc3RcIj5cclxuICAgICAgICAgICAgPGxpXHJcbiAgICAgICAgICAgICAgICAqbmdGb3I9XCJsZXQgcHJvZHVjZXIgb2YgZGF0YS5wcm9kdWNlcnM7IHRyYWNrQnk6IHRyYWNrQnlQcm9kdWNlcklkXCJcclxuICAgICAgICAgICAgICAgIGNsYXNzPVwicHJvZHVjZXItaXRlbVwiXHJcbiAgICAgICAgICAgICAgICBbYXR0ci5kYXRhLXByb2R1Y2VyXT1cInByb2R1Y2VyLmlkXCJcclxuICAgICAgICAgICAgPlxyXG4gICAgICAgICAgICAgICAge3sgZ2V0RGlzcGxheU5hbWUocHJvZHVjZXIubmFtZSkgfX1cclxuICAgICAgICAgICAgPC9saT5cclxuICAgICAgICA8L3VsPlxyXG5cclxuICAgICAgICA8bmctdGVtcGxhdGUgI2VtcHR5U3RhdGU+XHJcbiAgICAgICAgICAgIDxwIGNsYXNzPVwiZW1wdHktc3RhdGVcIj5OZW5odW0gcHJvZHV0b3IgaW5mb3JtYWRvLjwvcD5cclxuICAgICAgICA8L25nLXRlbXBsYXRlPlxyXG4gICAgPC9zZWN0aW9uPlxyXG5cclxuICAgIDxuZy10ZW1wbGF0ZSBwVGVtcGxhdGU9XCJmb290ZXJcIj5cclxuICAgICAgICA8YnV0dG9uIHR5cGU9XCJidXR0b25cIiBjbGFzcz1cImNsb3NlLWJ1dHRvblwiIChjbGljayk9XCJoYW5kbGVDbG9zZSgpXCI+RmVjaGFyPC9idXR0b24+XHJcbiAgICA8L25nLXRlbXBsYXRlPlxyXG48L3AtZGlhbG9nPiJdfQ==
52
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHJvZHVjZXItbGlzdC1tb2RhbC5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9wcm9qZWN0cy9hbmd1bGFyLWNvbXBvbmVudHMvY29tcG9uZW50cy9wcm9kdWNlci1saXN0LW1vZGFsL3Byb2R1Y2VyLWxpc3QtbW9kYWwuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vcHJvamVjdHMvYW5ndWxhci1jb21wb25lbnRzL2NvbXBvbmVudHMvcHJvZHVjZXItbGlzdC1tb2RhbC9wcm9kdWNlci1saXN0LW1vZGFsLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSx1QkFBdUIsRUFBRSxpQkFBaUIsRUFBRSxTQUFTLEVBQUUsS0FBSyxFQUFFLE1BQU0sRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUNyRyxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFDL0MsT0FBTyxFQUFFLGVBQWUsRUFBRSxNQUFNLDJDQUEyQyxDQUFDO0FBQzVFLE9BQU8sRUFBRSxlQUFlLEVBQUUsTUFBTSwyQ0FBMkMsQ0FBQztBQUM1RSxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0sMkNBQTJDLENBQUM7QUFDekUsT0FBTyxFQUFFLGFBQWEsRUFBRSxNQUFNLG9DQUFvQyxDQUFDOzs7QUFXbkUsTUFBTSxPQUFPLDBCQUEwQjtJQUNsQixHQUFHLEdBQUcsTUFBTSxDQUFDLGlCQUFpQixDQUFDLENBQUM7SUFDaEMsWUFBWSxHQUFHLE1BQU0sQ0FBQyxZQUFZLEVBQUUsRUFBRSxRQUFRLEVBQUUsSUFBSSxFQUFFLENBQUMsQ0FBQztJQUNsRSxPQUFPLEdBQUcsSUFBSSxDQUFDO0lBQ2QsS0FBSyxHQUEwQjtRQUNuQyxLQUFLLEVBQUUsRUFBRTtRQUNULHFCQUFxQixFQUFFLEtBQUs7UUFDNUIsU0FBUyxFQUFFLEVBQUU7S0FDaEIsQ0FBQztJQUVGLElBQ1csSUFBSSxDQUFDLEtBQTRCO1FBQ3hDLElBQUksQ0FBQyxLQUFLLEdBQUcsS0FBSyxDQUFDO1FBQ25CLElBQUksQ0FBQyxHQUFHLENBQUMsWUFBWSxFQUFFLENBQUM7SUFDNUIsQ0FBQztJQUVELElBQVcsSUFBSTtRQUNYLE9BQU8sSUFBSSxDQUFDLEtBQUssQ0FBQztJQUN0QixDQUFDO0lBRU0sY0FBYyxDQUFDLElBQVk7UUFDOUIsTUFBTSxPQUFPLEdBQUcsSUFBSSxDQUFDLElBQUksRUFBRSxxQkFBcUI7WUFDNUMsQ0FBQyxDQUFDLGFBQWEsQ0FBQyxjQUFjLENBQUMsSUFBSSxDQUFDLElBQUksSUFBSTtZQUM1QyxDQUFDLENBQUMsSUFBSSxDQUFDO1FBRVgsT0FBTyxPQUFPO2FBQ1QsS0FBSyxDQUFDLEdBQUcsQ0FBQzthQUNWLEdBQUcsQ0FBQyxDQUFDLENBQUMsRUFBRSxDQUFDLENBQUMsQ0FBQyxNQUFNLENBQUMsQ0FBQyxDQUFDLENBQUMsV0FBVyxFQUFFLEdBQUcsQ0FBQyxDQUFDLEtBQUssQ0FBQyxDQUFDLENBQUMsQ0FBQyxXQUFXLEVBQUUsQ0FBQzthQUM5RCxJQUFJLENBQUMsR0FBRyxDQUFDLENBQUM7SUFDbkIsQ0FBQztJQUVNLFdBQVcsQ0FBQyxJQUFZO1FBQzNCLE9BQU8sYUFBYSxDQUFDLFdBQVcsQ0FBQyxJQUFJLENBQUMsRUFBRSxLQUFLLENBQUMsQ0FBQyxFQUFFLENBQUMsQ0FBQyxJQUFJLEdBQUcsQ0FBQztJQUMvRCxDQUFDO0lBRU0saUJBQWlCLENBQUMsTUFBYyxFQUFFLFFBQTBCO1FBQy9ELE9BQU8sUUFBUSxDQUFDLEVBQUUsQ0FBQztJQUN2QixDQUFDO0lBRU0sV0FBVztRQUNkLElBQUksQ0FBQyxZQUFZLEVBQUUsS0FBSyxFQUFFLENBQUM7SUFDL0IsQ0FBQzt3R0F6Q1EsMEJBQTBCOzRGQUExQiwwQkFBMEIsMkdDaEJ2Qyw2MkNBd0NBLGdpQ0QxQmMsWUFBWSxnUUFBRSxlQUFlLGtMQUFFLGVBQWU7OzRGQUUvQywwQkFBMEI7a0JBUnRDLFNBQVM7K0JBQ0ksdUJBQXVCLG1CQUdoQix1QkFBdUIsQ0FBQyxNQUFNLGNBQ25DLElBQUksV0FDUCxDQUFDLFlBQVksRUFBRSxlQUFlLEVBQUUsZUFBZSxDQUFDOzhCQWE5QyxJQUFJO3NCQURkLEtBQUsiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneSwgQ2hhbmdlRGV0ZWN0b3JSZWYsIENvbXBvbmVudCwgSW5wdXQsIGluamVjdCB9IGZyb20gXCJAYW5ndWxhci9jb3JlXCI7XHJcbmltcG9ydCB7IENvbW1vbk1vZHVsZSB9IGZyb20gXCJAYW5ndWxhci9jb21tb25cIjtcclxuaW1wb3J0IHsgQnV0dG9uQ29tcG9uZW50IH0gZnJvbSBcIkBzZW5pb3JzaXN0ZW1hcy9hbmd1bGFyLWNvbXBvbmVudHMvYnV0dG9uXCI7XHJcbmltcG9ydCB7IERpYWxvZ0NvbXBvbmVudCB9IGZyb20gXCJAc2VuaW9yc2lzdGVtYXMvYW5ndWxhci1jb21wb25lbnRzL2RpYWxvZ1wiO1xyXG5pbXBvcnQgeyBBY3RpdmVEaWFsb2cgfSBmcm9tIFwiQHNlbmlvcnNpc3RlbWFzL2FuZ3VsYXItY29tcG9uZW50cy9kaWFsb2dcIjtcclxuaW1wb3J0IHsgQWdyb05hbWVVdGlscyB9IGZyb20gXCIuLi8uLi9jb21tb24vYWdyby1uYW1lLXV0aWxzLmNsYXNzXCI7XHJcbmltcG9ydCB7IFByb2R1Y2VyTGlzdEl0ZW0sIFByb2R1Y2VyTGlzdE1vZGFsRGF0YSB9IGZyb20gXCIuL3Byb2R1Y2VyLWxpc3QtbW9kYWwtZGF0YS5pbnRlcmZhY2VcIjtcclxuXHJcbkBDb21wb25lbnQoe1xyXG4gICAgc2VsZWN0b3I6IFwicy1wcm9kdWNlci1saXN0LW1vZGFsXCIsXHJcbiAgICB0ZW1wbGF0ZVVybDogXCIuL3Byb2R1Y2VyLWxpc3QtbW9kYWwuY29tcG9uZW50Lmh0bWxcIixcclxuICAgIHN0eWxlVXJsczogW1wiLi9wcm9kdWNlci1saXN0LW1vZGFsLmNvbXBvbmVudC5zY3NzXCJdLFxyXG4gICAgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2gsXHJcbiAgICBzdGFuZGFsb25lOiB0cnVlLFxyXG4gICAgaW1wb3J0czogW0NvbW1vbk1vZHVsZSwgRGlhbG9nQ29tcG9uZW50LCBCdXR0b25Db21wb25lbnRdLFxyXG59KVxyXG5leHBvcnQgY2xhc3MgUHJvZHVjZXJMaXN0TW9kYWxDb21wb25lbnQge1xyXG4gICAgcHJpdmF0ZSByZWFkb25seSBjZHIgPSBpbmplY3QoQ2hhbmdlRGV0ZWN0b3JSZWYpO1xyXG4gICAgcHJpdmF0ZSByZWFkb25seSBhY3RpdmVEaWFsb2cgPSBpbmplY3QoQWN0aXZlRGlhbG9nLCB7IG9wdGlvbmFsOiB0cnVlIH0pO1xyXG4gICAgcHVibGljIHZpc2libGUgPSB0cnVlO1xyXG4gICAgcHJpdmF0ZSBfZGF0YTogUHJvZHVjZXJMaXN0TW9kYWxEYXRhID0ge1xyXG4gICAgICAgIHRpdGxlOiBcIlwiLFxyXG4gICAgICAgIHNob3VsZEFiYnJldmlhdGVOYW1lczogZmFsc2UsXHJcbiAgICAgICAgcHJvZHVjZXJzOiBbXSxcclxuICAgIH07XHJcblxyXG4gICAgQElucHV0KClcclxuICAgIHB1YmxpYyBzZXQgZGF0YSh2YWx1ZTogUHJvZHVjZXJMaXN0TW9kYWxEYXRhKSB7XHJcbiAgICAgICAgdGhpcy5fZGF0YSA9IHZhbHVlO1xyXG4gICAgICAgIHRoaXMuY2RyLm1hcmtGb3JDaGVjaygpO1xyXG4gICAgfVxyXG5cclxuICAgIHB1YmxpYyBnZXQgZGF0YSgpOiBQcm9kdWNlckxpc3RNb2RhbERhdGEge1xyXG4gICAgICAgIHJldHVybiB0aGlzLl9kYXRhO1xyXG4gICAgfVxyXG5cclxuICAgIHB1YmxpYyBnZXREaXNwbGF5TmFtZShuYW1lOiBzdHJpbmcpOiBzdHJpbmcge1xyXG4gICAgICAgIGNvbnN0IGRpc3BsYXkgPSB0aGlzLmRhdGE/LnNob3VsZEFiYnJldmlhdGVOYW1lc1xyXG4gICAgICAgICAgICA/IEFncm9OYW1lVXRpbHMuYWJicmV2aWF0ZU5hbWUobmFtZSkgPz8gbmFtZVxyXG4gICAgICAgICAgICA6IG5hbWU7XHJcblxyXG4gICAgICAgIHJldHVybiBkaXNwbGF5XHJcbiAgICAgICAgICAgIC5zcGxpdCgnICcpXHJcbiAgICAgICAgICAgIC5tYXAodyA9PiB3LmNoYXJBdCgwKS50b1VwcGVyQ2FzZSgpICsgdy5zbGljZSgxKS50b0xvd2VyQ2FzZSgpKVxyXG4gICAgICAgICAgICAuam9pbignICcpO1xyXG4gICAgfVxyXG5cclxuICAgIHB1YmxpYyBnZXRJbml0aWFscyhuYW1lOiBzdHJpbmcpOiBzdHJpbmcge1xyXG4gICAgICAgIHJldHVybiBBZ3JvTmFtZVV0aWxzLmdldEluaXRpYWxzKG5hbWUpPy5zbGljZSgwLCAyKSA/PyAnPyc7XHJcbiAgICB9XHJcblxyXG4gICAgcHVibGljIHRyYWNrQnlQcm9kdWNlcklkKF9pbmRleDogbnVtYmVyLCBwcm9kdWNlcjogUHJvZHVjZXJMaXN0SXRlbSk6IHN0cmluZyB7XHJcbiAgICAgICAgcmV0dXJuIHByb2R1Y2VyLmlkO1xyXG4gICAgfVxyXG5cclxuICAgIHB1YmxpYyBoYW5kbGVDbG9zZSgpOiB2b2lkIHtcclxuICAgICAgICB0aGlzLmFjdGl2ZURpYWxvZz8uY2xvc2UoKTtcclxuICAgIH1cclxufSIsIjxzLWRpYWxvZ1xyXG4gICAgW2hlYWRlcl09XCJkYXRhLnRpdGxlXCJcclxuICAgIHNpemU9XCJtZFwiXHJcbj5cclxuICAgIDxzZWN0aW9uIGNsYXNzPVwicHJvZHVjZXItbGlzdC1jb250ZW50XCI+XHJcbiAgICAgICAgPHVsXHJcbiAgICAgICAgICAgICpuZ0lmPVwiZGF0YS5wcm9kdWNlcnMubGVuZ3RoOyBlbHNlIGVtcHR5U3RhdGVcIlxyXG4gICAgICAgICAgICBjbGFzcz1cInByb2R1Y2VyLWxpc3RcIlxyXG4gICAgICAgID5cclxuICAgICAgICAgICAgPGxpXHJcbiAgICAgICAgICAgICAgICAqbmdGb3I9XCJsZXQgcHJvZHVjZXIgb2YgZGF0YS5wcm9kdWNlcnM7IHRyYWNrQnk6IHRyYWNrQnlQcm9kdWNlcklkXCJcclxuICAgICAgICAgICAgICAgIGNsYXNzPVwicHJvZHVjZXItaXRlbVwiXHJcbiAgICAgICAgICAgICAgICBbYXR0ci5kYXRhLXByb2R1Y2VyXT1cInByb2R1Y2VyLmlkXCJcclxuICAgICAgICAgICAgPlxyXG4gICAgICAgICAgICAgICAgPHNwYW5cclxuICAgICAgICAgICAgICAgICAgICBjbGFzcz1cInByb2R1Y2VyLWF2YXRhclwiXHJcbiAgICAgICAgICAgICAgICAgICAgW2F0dHIuZGF0YS1pbml0aWFsc109XCJnZXRJbml0aWFscyhwcm9kdWNlci5uYW1lKVwiXHJcbiAgICAgICAgICAgICAgICAgICAgPnt7IGdldEluaXRpYWxzKHByb2R1Y2VyLm5hbWUpIH19PC9zcGFuXHJcbiAgICAgICAgICAgICAgICA+XHJcbiAgICAgICAgICAgICAgICA8c3BhbiBjbGFzcz1cInByb2R1Y2VyLW5hbWVcIj57eyBnZXREaXNwbGF5TmFtZShwcm9kdWNlci5uYW1lKSB9fTwvc3Bhbj5cclxuICAgICAgICAgICAgPC9saT5cclxuICAgICAgICA8L3VsPlxyXG5cclxuICAgICAgICA8bmctdGVtcGxhdGUgI2VtcHR5U3RhdGU+XHJcbiAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJlbXB0eS1zdGF0ZVwiPlxyXG4gICAgICAgICAgICAgICAgPGkgY2xhc3M9XCJmYSBmYS11c2VycyBlbXB0eS1zdGF0ZS1pY29uXCI+PC9pPlxyXG4gICAgICAgICAgICAgICAgPHAgY2xhc3M9XCJlbXB0eS1zdGF0ZS10ZXh0XCI+TmVuaHVtIHByb2R1dG9yIGluZm9ybWFkby48L3A+XHJcbiAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgIDwvbmctdGVtcGxhdGU+XHJcbiAgICA8L3NlY3Rpb24+XHJcblxyXG4gICAgPG5nLXRlbXBsYXRlIHNUZW1wbGF0ZT1cImZvb3RlclwiPlxyXG4gICAgICAgIGFhYWFhXHJcbiAgICAgICAgPHMtYnV0dG9uXHJcbiAgICAgICAgICAgIGxhYmVsPVwiRmVjaGFyXCJcclxuICAgICAgICAgICAgcHJpb3JpdHk9XCJwcmltYXJ5XCJcclxuICAgICAgICAgICAgKGNsaWNrZWQpPVwiaGFuZGxlQ2xvc2UoKVwiXHJcbiAgICAgICAgPjwvcy1idXR0b24+XHJcbiAgICA8L25nLXRlbXBsYXRlPlxyXG48L3MtZGlhbG9nPlxyXG4iXX0=
@@ -1,19 +1,16 @@
1
- import { CommonModule } from "@angular/common";
2
1
  import { NgModule } from "@angular/core";
3
- import { DialogModule } from "primeng/dialog";
4
2
  import { ProducerListModalComponent } from "./producer-list-modal.component";
5
3
  import * as i0 from "@angular/core";
6
4
  export class ProducerListModalModule {
7
5
  static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: ProducerListModalModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
8
- static ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "18.2.14", ngImport: i0, type: ProducerListModalModule, declarations: [ProducerListModalComponent], imports: [CommonModule, DialogModule], exports: [ProducerListModalComponent] });
9
- static ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: ProducerListModalModule, imports: [CommonModule, DialogModule] });
6
+ static ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "18.2.14", ngImport: i0, type: ProducerListModalModule, imports: [ProducerListModalComponent], exports: [ProducerListModalComponent] });
7
+ static ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: ProducerListModalModule, imports: [ProducerListModalComponent] });
10
8
  }
11
9
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: ProducerListModalModule, decorators: [{
12
10
  type: NgModule,
13
11
  args: [{
14
- imports: [CommonModule, DialogModule],
15
- declarations: [ProducerListModalComponent],
12
+ imports: [ProducerListModalComponent],
16
13
  exports: [ProducerListModalComponent],
17
14
  }]
18
15
  }] });
19
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHJvZHVjZXItbGlzdC1tb2RhbC5tb2R1bGUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9wcm9qZWN0cy9hbmd1bGFyLWNvbXBvbmVudHMvY29tcG9uZW50cy9wcm9kdWNlci1saXN0LW1vZGFsL3Byb2R1Y2VyLWxpc3QtbW9kYWwubW9kdWxlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUMvQyxPQUFPLEVBQUUsUUFBUSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQ3pDLE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUM5QyxPQUFPLEVBQUUsMEJBQTBCLEVBQUUsTUFBTSxpQ0FBaUMsQ0FBQzs7QUFPN0UsTUFBTSxPQUFPLHVCQUF1Qjt3R0FBdkIsdUJBQXVCO3lHQUF2Qix1QkFBdUIsaUJBSGpCLDBCQUEwQixhQUQvQixZQUFZLEVBQUUsWUFBWSxhQUUxQiwwQkFBMEI7eUdBRTNCLHVCQUF1QixZQUp0QixZQUFZLEVBQUUsWUFBWTs7NEZBSTNCLHVCQUF1QjtrQkFMbkMsUUFBUTttQkFBQztvQkFDTixPQUFPLEVBQUUsQ0FBQyxZQUFZLEVBQUUsWUFBWSxDQUFDO29CQUNyQyxZQUFZLEVBQUUsQ0FBQywwQkFBMEIsQ0FBQztvQkFDMUMsT0FBTyxFQUFFLENBQUMsMEJBQTBCLENBQUM7aUJBQ3hDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29tbW9uTW9kdWxlIH0gZnJvbSBcIkBhbmd1bGFyL2NvbW1vblwiO1xyXG5pbXBvcnQgeyBOZ01vZHVsZSB9IGZyb20gXCJAYW5ndWxhci9jb3JlXCI7XHJcbmltcG9ydCB7IERpYWxvZ01vZHVsZSB9IGZyb20gXCJwcmltZW5nL2RpYWxvZ1wiO1xyXG5pbXBvcnQgeyBQcm9kdWNlckxpc3RNb2RhbENvbXBvbmVudCB9IGZyb20gXCIuL3Byb2R1Y2VyLWxpc3QtbW9kYWwuY29tcG9uZW50XCI7XHJcblxyXG5ATmdNb2R1bGUoe1xyXG4gICAgaW1wb3J0czogW0NvbW1vbk1vZHVsZSwgRGlhbG9nTW9kdWxlXSxcclxuICAgIGRlY2xhcmF0aW9uczogW1Byb2R1Y2VyTGlzdE1vZGFsQ29tcG9uZW50XSxcclxuICAgIGV4cG9ydHM6IFtQcm9kdWNlckxpc3RNb2RhbENvbXBvbmVudF0sXHJcbn0pXHJcbmV4cG9ydCBjbGFzcyBQcm9kdWNlckxpc3RNb2RhbE1vZHVsZSB7fSJdfQ==
16
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHJvZHVjZXItbGlzdC1tb2RhbC5tb2R1bGUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9wcm9qZWN0cy9hbmd1bGFyLWNvbXBvbmVudHMvY29tcG9uZW50cy9wcm9kdWNlci1saXN0LW1vZGFsL3Byb2R1Y2VyLWxpc3QtbW9kYWwubW9kdWxlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxRQUFRLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDekMsT0FBTyxFQUFFLDBCQUEwQixFQUFFLE1BQU0saUNBQWlDLENBQUM7O0FBTTdFLE1BQU0sT0FBTyx1QkFBdUI7d0dBQXZCLHVCQUF1Qjt5R0FBdkIsdUJBQXVCLFlBSHRCLDBCQUEwQixhQUMxQiwwQkFBMEI7eUdBRTNCLHVCQUF1QixZQUh0QiwwQkFBMEI7OzRGQUczQix1QkFBdUI7a0JBSm5DLFFBQVE7bUJBQUM7b0JBQ04sT0FBTyxFQUFFLENBQUMsMEJBQTBCLENBQUM7b0JBQ3JDLE9BQU8sRUFBRSxDQUFDLDBCQUEwQixDQUFDO2lCQUN4QyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IE5nTW9kdWxlIH0gZnJvbSBcIkBhbmd1bGFyL2NvcmVcIjtcclxuaW1wb3J0IHsgUHJvZHVjZXJMaXN0TW9kYWxDb21wb25lbnQgfSBmcm9tIFwiLi9wcm9kdWNlci1saXN0LW1vZGFsLmNvbXBvbmVudFwiO1xyXG5cclxuQE5nTW9kdWxlKHtcclxuICAgIGltcG9ydHM6IFtQcm9kdWNlckxpc3RNb2RhbENvbXBvbmVudF0sXHJcbiAgICBleHBvcnRzOiBbUHJvZHVjZXJMaXN0TW9kYWxDb21wb25lbnRdLFxyXG59KVxyXG5leHBvcnQgY2xhc3MgUHJvZHVjZXJMaXN0TW9kYWxNb2R1bGUge30iXX0=
@@ -0,0 +1,53 @@
1
+ import { Injectable } from '@angular/core';
2
+ import { ProducerListModalComponent } from './producer-list-modal.component';
3
+ import * as i0 from "@angular/core";
4
+ import * as i1 from "@seniorsistemas/angular-components/dialog";
5
+ /**
6
+ * Serviço para abrir ProducerListModal programaticamente via DialogService.
7
+ *
8
+ * Segue o padrão SDS de uso com `@seniorsistemas/angular-components/dialog`.
9
+ *
10
+ * @example
11
+ * ```typescript
12
+ * constructor(private readonly producerListModalService: ProducerListModalService) {}
13
+ *
14
+ * openProducerList(): void {
15
+ * this.producerListModalService.open({
16
+ * data: {
17
+ * title: 'Produtores',
18
+ * shouldAbbreviateNames: true,
19
+ * producers: [...]
20
+ * },
21
+ * size: 'md'
22
+ * });
23
+ * }
24
+ * ```
25
+ */
26
+ export class ProducerListModalService {
27
+ dialogService;
28
+ constructor(dialogService) {
29
+ this.dialogService = dialogService;
30
+ }
31
+ /**
32
+ * Abre a modal de lista de produtores.
33
+ *
34
+ * @param options Configuração do modal (dados, tamanho, comportamento)
35
+ */
36
+ open(options) {
37
+ const { data, size = 'md', escapeOnEsc = true, destroyClickOutside = true, } = options;
38
+ const dialogRef = this.dialogService.open(ProducerListModalComponent, {
39
+ escapeOnEsc,
40
+ destroyClickOutside,
41
+ });
42
+ dialogRef.componentInstance.data = data;
43
+ }
44
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: ProducerListModalService, deps: [{ token: i1.DialogService }], target: i0.ɵɵFactoryTarget.Injectable });
45
+ static ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: ProducerListModalService, providedIn: 'root' });
46
+ }
47
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: ProducerListModalService, decorators: [{
48
+ type: Injectable,
49
+ args: [{
50
+ providedIn: 'root',
51
+ }]
52
+ }], ctorParameters: () => [{ type: i1.DialogService }] });
53
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHJvZHVjZXItbGlzdC1tb2RhbC5zZXJ2aWNlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vcHJvamVjdHMvYW5ndWxhci1jb21wb25lbnRzL2NvbXBvbmVudHMvcHJvZHVjZXItbGlzdC1tb2RhbC9wcm9kdWNlci1saXN0LW1vZGFsLnNlcnZpY2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUUzQyxPQUFPLEVBQUUsMEJBQTBCLEVBQUUsTUFBTSxpQ0FBaUMsQ0FBQzs7O0FBVTdFOzs7Ozs7Ozs7Ozs7Ozs7Ozs7OztHQW9CRztBQUlILE1BQU0sT0FBTyx3QkFBd0I7SUFDQTtJQUFwQyxZQUFvQyxhQUE0QjtRQUE1QixrQkFBYSxHQUFiLGFBQWEsQ0FBZTtJQUFHLENBQUM7SUFFcEU7Ozs7T0FJRztJQUNJLElBQUksQ0FBQyxPQUF3QztRQUNuRCxNQUFNLEVBQ0wsSUFBSSxFQUNKLElBQUksR0FBRyxJQUFJLEVBQ1gsV0FBVyxHQUFHLElBQUksRUFDbEIsbUJBQW1CLEdBQUcsSUFBSSxHQUMxQixHQUFHLE9BQU8sQ0FBQztRQUVaLE1BQU0sU0FBUyxHQUFHLElBQUksQ0FBQyxhQUFhLENBQUMsSUFBSSxDQUFDLDBCQUEwQixFQUFFO1lBQ3JFLFdBQVc7WUFDWCxtQkFBbUI7U0FDWixDQUFDLENBQUM7UUFFVixTQUFTLENBQUMsaUJBQWlCLENBQUMsSUFBSSxHQUFHLElBQUksQ0FBQztJQUN6QyxDQUFDO3dHQXRCVyx3QkFBd0I7NEdBQXhCLHdCQUF3QixjQUZ4QixNQUFNOzs0RkFFTix3QkFBd0I7a0JBSHBDLFVBQVU7bUJBQUM7b0JBQ1gsVUFBVSxFQUFFLE1BQU07aUJBQ2xCIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgSW5qZWN0YWJsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xyXG5pbXBvcnQgeyBEaWFsb2dTZXJ2aWNlIH0gZnJvbSAnQHNlbmlvcnNpc3RlbWFzL2FuZ3VsYXItY29tcG9uZW50cy9kaWFsb2cnO1xyXG5pbXBvcnQgeyBQcm9kdWNlckxpc3RNb2RhbENvbXBvbmVudCB9IGZyb20gJy4vcHJvZHVjZXItbGlzdC1tb2RhbC5jb21wb25lbnQnO1xyXG5pbXBvcnQgeyBQcm9kdWNlckxpc3RNb2RhbERhdGEgfSBmcm9tICcuL3Byb2R1Y2VyLWxpc3QtbW9kYWwtZGF0YS5pbnRlcmZhY2UnO1xyXG5cclxuZXhwb3J0IGludGVyZmFjZSBQcm9kdWNlckxpc3RNb2RhbFNlcnZpY2VPcHRpb25zIHtcclxuXHRkYXRhOiBQcm9kdWNlckxpc3RNb2RhbERhdGE7XHJcblx0c2l6ZT86ICdzbScgfCAnbWQnIHwgJ2xnJyB8ICd4bCcgfCAnZnVsbHNjcmVlbic7XHJcblx0ZXNjYXBlT25Fc2M/OiBib29sZWFuO1xyXG5cdGRlc3Ryb3lDbGlja091dHNpZGU/OiBib29sZWFuO1xyXG59XHJcblxyXG4vKipcclxuICogU2VydmnDp28gcGFyYSBhYnJpciBQcm9kdWNlckxpc3RNb2RhbCBwcm9ncmFtYXRpY2FtZW50ZSB2aWEgRGlhbG9nU2VydmljZS5cclxuICpcclxuICogU2VndWUgbyBwYWRyw6NvIFNEUyBkZSB1c28gY29tIGBAc2VuaW9yc2lzdGVtYXMvYW5ndWxhci1jb21wb25lbnRzL2RpYWxvZ2AuXHJcbiAqXHJcbiAqIEBleGFtcGxlXHJcbiAqIGBgYHR5cGVzY3JpcHRcclxuICogY29uc3RydWN0b3IocHJpdmF0ZSByZWFkb25seSBwcm9kdWNlckxpc3RNb2RhbFNlcnZpY2U6IFByb2R1Y2VyTGlzdE1vZGFsU2VydmljZSkge31cclxuICpcclxuICogb3BlblByb2R1Y2VyTGlzdCgpOiB2b2lkIHtcclxuICogICB0aGlzLnByb2R1Y2VyTGlzdE1vZGFsU2VydmljZS5vcGVuKHtcclxuICogICAgIGRhdGE6IHtcclxuICogICAgICAgdGl0bGU6ICdQcm9kdXRvcmVzJyxcclxuICogICAgICAgc2hvdWxkQWJicmV2aWF0ZU5hbWVzOiB0cnVlLFxyXG4gKiAgICAgICBwcm9kdWNlcnM6IFsuLi5dXHJcbiAqICAgICB9LFxyXG4gKiAgICAgc2l6ZTogJ21kJ1xyXG4gKiAgIH0pO1xyXG4gKiB9XHJcbiAqIGBgYFxyXG4gKi9cclxuQEluamVjdGFibGUoe1xyXG5cdHByb3ZpZGVkSW46ICdyb290JyxcclxufSlcclxuZXhwb3J0IGNsYXNzIFByb2R1Y2VyTGlzdE1vZGFsU2VydmljZSB7XHJcblx0cHVibGljIGNvbnN0cnVjdG9yKHByaXZhdGUgcmVhZG9ubHkgZGlhbG9nU2VydmljZTogRGlhbG9nU2VydmljZSkge31cclxuXHJcblx0LyoqXHJcblx0ICogQWJyZSBhIG1vZGFsIGRlIGxpc3RhIGRlIHByb2R1dG9yZXMuXHJcblx0ICpcclxuXHQgKiBAcGFyYW0gb3B0aW9ucyBDb25maWd1cmHDp8OjbyBkbyBtb2RhbCAoZGFkb3MsIHRhbWFuaG8sIGNvbXBvcnRhbWVudG8pXHJcblx0ICovXHJcblx0cHVibGljIG9wZW4ob3B0aW9uczogUHJvZHVjZXJMaXN0TW9kYWxTZXJ2aWNlT3B0aW9ucyk6IHZvaWQge1xyXG5cdFx0Y29uc3Qge1xyXG5cdFx0XHRkYXRhLFxyXG5cdFx0XHRzaXplID0gJ21kJyxcclxuXHRcdFx0ZXNjYXBlT25Fc2MgPSB0cnVlLFxyXG5cdFx0XHRkZXN0cm95Q2xpY2tPdXRzaWRlID0gdHJ1ZSxcclxuXHRcdH0gPSBvcHRpb25zO1xyXG5cclxuXHRcdGNvbnN0IGRpYWxvZ1JlZiA9IHRoaXMuZGlhbG9nU2VydmljZS5vcGVuKFByb2R1Y2VyTGlzdE1vZGFsQ29tcG9uZW50LCB7XHJcblx0XHRcdGVzY2FwZU9uRXNjLFxyXG5cdFx0XHRkZXN0cm95Q2xpY2tPdXRzaWRlLFxyXG5cdFx0fSBhcyBhbnkpO1xyXG5cclxuXHRcdGRpYWxvZ1JlZi5jb21wb25lbnRJbnN0YW5jZS5kYXRhID0gZGF0YTtcclxuXHR9XHJcbn1cclxuIl19