keevo-components 1.5.153 → 1.5.154

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.
@@ -143,6 +143,7 @@ export class BaseComponentCrudForm extends BaseComponentCrud {
143
143
  this.registry = data;
144
144
  this.setFormValues(this.registry);
145
145
  this.loadGrids();
146
+ this.setTitlePopup();
146
147
  });
147
148
  }
148
149
  loadGrids() { }
@@ -175,6 +176,7 @@ export class BaseComponentCrudForm extends BaseComponentCrud {
175
176
  else {
176
177
  this.isNewRegistry = true;
177
178
  this.loadGrids();
179
+ this.setTitlePopup();
178
180
  }
179
181
  });
180
182
  }
@@ -217,6 +219,15 @@ export class BaseComponentCrudForm extends BaseComponentCrud {
217
219
  this.formGroup.patchValue(values, { emitEvent: false });
218
220
  this.onSetFormValues = false;
219
221
  }
222
+ /**
223
+ * Seta o título do popup
224
+ */
225
+ setTitlePopup() {
226
+ if (this.popup) {
227
+ if (this.dynamicDialogConfig)
228
+ this.dynamicDialogConfig.header = this.dadosTela?.tituloForm;
229
+ }
230
+ }
220
231
  /**
221
232
  * Atualiza o validador de um componente do formGroup
222
233
  * @param controName - Nome do controle
@@ -255,4 +266,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.8", ngImpor
255
266
  template: ''
256
267
  }]
257
268
  }], ctorParameters: function () { return [{ type: i1.DialogService }, { type: i2.NotificationService }, { type: i3.ActivatedRoute }, { type: i1.DynamicDialogRef }, { type: i1.DynamicDialogConfig }, { type: i3.Router }]; } });
258
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYmFzZS1jb21wb25lbnQtY3J1ZC1mb3JtLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMva2Vldm8tY29tcG9uZW50cy9zcmMvbGliL2FwaS9iYXNlLWNvbXBvbmVudHMvYmFzZS1jb21wb25lbnQtY3J1ZC1mb3JtLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUNBLE9BQU8sRUFBRSxTQUFTLEVBQXFCLE1BQU0sZUFBZSxDQUFDO0FBRTdELE9BQU8sRUFBRSxTQUFTLEVBQWUsTUFBTSxnQkFBZ0IsQ0FBQztBQUN4RCxPQUFPLEVBQWMsYUFBYSxFQUFFLE1BQU0sRUFBRSxRQUFRLEVBQUUsTUFBTSxNQUFNLENBQUM7QUFHbkUsT0FBTyxFQUFFLGlCQUFpQixFQUFFLE1BQU0sdUJBQXVCLENBQUM7QUFDMUQsT0FBTyxFQUFFLFdBQVcsRUFBRSxNQUFNLDBCQUEwQixDQUFDOzs7OztBQWF2RCxNQUFNLE9BQWdCLHFCQUFzQixTQUFRLGlCQUFpQjtJQWdCbkUsWUFDRSxhQUE0QixFQUM1QixtQkFBd0MsRUFDOUIsY0FBOEIsRUFDOUIsZ0JBQWtDLEVBQ2xDLG1CQUF3QyxFQUN4QyxNQUFjO1FBQ3hCLEtBQUssQ0FFRCxhQUFhLEVBQ2IsbUJBQW1CLENBQ3BCLENBQUM7UUFSTSxtQkFBYyxHQUFkLGNBQWMsQ0FBZ0I7UUFDOUIscUJBQWdCLEdBQWhCLGdCQUFnQixDQUFrQjtRQUNsQyx3QkFBbUIsR0FBbkIsbUJBQW1CLENBQXFCO1FBQ3hDLFdBQU0sR0FBTixNQUFNLENBQVE7UUFwQmhCLHdCQUFtQixHQUFHLEtBQUssQ0FBQztRQUM1QixrQkFBYSxHQUFHLEtBQUssQ0FBQztRQUN0QixrQkFBYSxHQUFHLEtBQUssQ0FBQztRQUN0QixXQUFNLEdBQUcsS0FBSyxDQUFDO1FBRWYsY0FBUyxHQUFjLElBQUksU0FBUyxDQUFDLEVBQUUsQ0FBQyxDQUFDO1FBQ3pDLFlBQU8sR0FBaUIsRUFBRSxDQUFDO1FB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Ozs7T0FJRztJQUNPLGFBQWEsQ0FBQyxVQUFrQixFQUFFLFVBQThDO1FBQ3hGLFdBQVcsQ0FBQyxhQUFhLENBQUMsSUFBSSxDQUFDLFNBQVMsRUFBRSxVQUFVLEVBQUUsVUFBVSxDQUFDLENBQUM7SUFDcEUsQ0FBQztJQUVEOzs7T0FHRztJQUNPLFlBQVk7UUFDcEIsSUFBSSxLQUFLLEdBQVksS0FBSyxDQUFDO1FBRTNCLElBQUksSUFBSSxDQUFDLFNBQVMsSUFBSSxJQUFJLENBQUMsU0FBUyxDQUFDLEtBQUssRUFBRTtZQUMxQyxLQUFLLEdBQUcsSUFBSSxDQUFDO1NBQ2Q7YUFBTTtZQUNMLElBQUksQ0FBQyxtQkFBbUIsR0FBRyxJQUFJLENBQUM7WUFDaEMsSUFBSSxDQUFDLFdBQVcsRUFBRSxDQUFDO1lBRW5CLElBQUksSUFBSSxDQUFDLFNBQVMsRUFBRSxpQkFBaUIsRUFBRTtnQkFDckMsSUFBSSxDQUFDLG1CQUFtQixDQUFDLE1BQU0sQ0FBQztvQkFDOUIsSUFBSSxFQUFFLE9BQU87b0JBQ2IsT0FBTyxFQUFFLG1DQUFtQztpQkFDN0MsQ0FBQyxDQUFDO2FBQ0o7U0FDRjtRQUVELE9BQU8sS0FBSyxDQUFDO0lBQ2YsQ0FBQzs7a0hBcFNtQixxQkFBcUI7c0dBQXJCLHFCQUFxQiwyRUFGL0IsRUFBRTsyRkFFUSxxQkFBcUI7a0JBSDFDLFNBQVM7bUJBQUM7b0JBQ1QsUUFBUSxFQUFFLEVBQUU7aUJBQ2IiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBBY3RpdmF0ZWRSb3V0ZSwgUm91dGVyIH0gZnJvbSBcIkBhbmd1bGFyL3JvdXRlclwiO1xyXG5pbXBvcnQgeyBDb21wb25lbnQsIE9uRGVzdHJveSwgT25Jbml0IH0gZnJvbSBcIkBhbmd1bGFyL2NvcmVcIjtcclxuaW1wb3J0IHsgRGlhbG9nU2VydmljZSwgRHluYW1pY0RpYWxvZ0NvbmZpZywgRHluYW1pY0RpYWxvZ1JlZiB9IGZyb20gXCJwcmltZW5nL2R5bmFtaWNkaWFsb2dcIjtcclxuaW1wb3J0IHsgRm9ybUdyb3VwLCBWYWxpZGF0b3JGbiB9IGZyb20gXCJAYW5ndWxhci9mb3Jtc1wiO1xyXG5pbXBvcnQgeyBPYnNlcnZhYmxlLCBjb21iaW5lTGF0ZXN0LCBmaWx0ZXIsIGZpbmFsaXplIH0gZnJvbSBcInJ4anNcIjtcclxuXHJcbmltcG9ydCB7IEFjdGlvbkl0ZW0gfSBmcm9tIFwiLi4vY29tcG9uZW50cy90YWJsZS9hY3Rpb24taXRlbVwiO1xyXG5pbXBvcnQgeyBCYXNlQ29tcG9uZW50Q3J1ZCB9IGZyb20gXCIuL2Jhc2UtY29tcG9uZW50LWNydWRcIjtcclxuaW1wb3J0IHsgRm9ybVNlcnZpY2UgfSBmcm9tIFwiLi4vc2VydmljZXMvZm9ybS5zZXJ2aWNlXCI7XHJcbmltcG9ydCB7IE5vdGlmaWNhdGlvblNlcnZpY2UgfSBmcm9tIFwiLi4vc2VydmljZXMvbm90aWZpY2F0aW9uLnNlcnZpY2VcIjtcclxuXHJcbmV4cG9ydCBpbnRlcmZhY2UgRGFkb3NUZWxhIHtcclxuICBzdWJUaXR1bG9Gb3JtOiBzdHJpbmcgfCB1bmRlZmluZWQ7XHJcbiAgdGl0dWxvRm9ybTogc3RyaW5nIHwgdW5kZWZpbmVkO1xyXG4gIHJvdGFMaXN0YXI6IHN0cmluZztcclxuICBtZW5zYWdlbVZhbGlkYWNhbzogYm9vbGVhblxyXG59XHJcblxyXG5AQ29tcG9uZW50KHtcclxuICB0ZW1wbGF0ZTogJydcclxufSlcclxuZXhwb3J0IGFic3RyYWN0IGNsYXNzIEJhc2VDb21wb25lbnRDcnVkRm9ybSBleHRlbmRzIEJhc2VDb21wb25lbnRDcnVkIGltcGxlbWVudHMgT25Jbml0LCBPbkRlc3Ryb3kge1xyXG5cclxuICBwcm90ZWN0ZWQgaXNBY2NvcmRpb25FeHBhbmRlZCA9IGZhbHNlO1xyXG4gIHByb3RlY3RlZCBpc05ld1JlZ2lzdHJ5ID0gZmFsc2U7XHJcbiAgcHJvdGVjdGVkIGlzU2F2ZUxvYWRpbmcgPSBmYWxzZTtcclxuICBwcm90ZWN0ZWQgaXNWaWV3ID0gZmFsc2U7XHJcblxyXG4gIHByb3RlY3RlZCBmb3JtR3JvdXA6IEZvcm1Hcm91cCA9IG5ldyBGb3JtR3JvdXAoe30pO1xyXG4gIHByb3RlY3RlZCBhY3Rpb25zOiBBY3Rpb25JdGVtW10gPSBbXTtcclxuXHJcbiAgcHJvdGVjdGVkIGRhZG9zVGVsYTogRGFkb3NUZWxhIHwgdW5kZWZpbmVkO1xyXG4gIHByb3RlY3RlZCBwb3B1cDogYm9vbGVhbiA9IGZhbHNlO1xyXG4gIHByb3RlY3RlZCByZWdpc3RyeTogYW55ID0gbnVsbDtcclxuXHJcbiAgcHJpdmF0ZSBvblNldEZvcm1WYWx1ZXM6IGJvb2xlYW4gPSBmYWxzZTtcclxuXHJcbiAgY29uc3RydWN0b3IoXHJcbiAgICBkaWFsb2dTZXJ2aWNlOiBEaWFsb2dTZXJ2aWNlLFxyXG4gICAgbm90aWZpY2F0aW9uU2VydmljZTogTm90aWZpY2F0aW9uU2VydmljZSxcclxuICAgIHByb3RlY3RlZCBhY3RpdmF0ZWRSb3V0ZTogQWN0aXZhdGVkUm91dGUsXHJcbiAgICBwcm90ZWN0ZWQgZHluYW1pY0RpYWxvZ1JlZjogRHluYW1pY0RpYWxvZ1JlZixcclxuICAgIHByb3RlY3RlZCBkeW5hbWljRGlhbG9nQ29uZmlnOiBEeW5hbWljRGlhbG9nQ29uZmlnLFxyXG4gICAgcHJvdGVjdGVkIHJvdXRlcjogUm91dGVyKSB7XHJcbiAgICBzdXBlclxyXG4gICAgICAoXHJcbiAgICAgICAgZGlhbG9nU2VydmljZSxcclxuICAgICAgICBub3RpZmljYXRpb25TZXJ2aWNlXHJcbiAgICAgICk7XHJcbiAgfVxyXG5cclxuICAvKipcclxuICAgKiBNw6l0b2RvIGRpc3BhcmFkbyBwYXJhIGNvbmZpZ3VyYcOnw6NvIGRvIGZvcm1cclxuICAgKi9cclxuICBhYnN0cmFjdCBjb25maWd1cmVGb3JtKCk6IHZvaWQ7XHJcblxyXG4gIC8qKlxyXG4gICAqIE3DqXRvZG8gZGlzcGFyYWRvIHBhcmEgbyBjYXJyZWdhbWVudG8gZG8gZm9ybVxyXG4gICAqIEBwYXJhbSBpZFxyXG4gICAqL1xyXG4gIGFic3RyYWN0IGxvYWRGb3JtKGlkOiBhbnkpOiB2b2lkO1xyXG5cclxuICAvKipcclxuICAgKiBNw6l0b2RvIGRpc3BhcmFkbyBwYXJhIHNhbHZhbWVudG8gZG9zIGRhZG9zXHJcbiAgICovXHJcbiAgYWJzdHJhY3Qgc2F2ZSgpOiB2b2lkO1xyXG5cclxuICAvKipcclxuICAgKiBNw6l0b2RvIGRpc3BhcmFkbyBwYXJhIHRyYXRhbWVudG8gZGFzIG5vdGlmaWNhw6fDtWVzIGRvIGJhY2tlbmRcclxuICAgKiBAcGFyYW0gZXJyIC0gTm90aWZpY2HDp8Ojb1xyXG4gICAqL1xyXG4gIHByb3RlY3RlZCBiYWNrZW5kRXJyb3IoZXJyOiBhbnkpOiB2b2lkIHtcclxuICAgIGlmIChlcnIpIHtcclxuICAgICAgaWYgKGVyci5zdGF0dXMgPT0gNDA0KSB7XHJcbiAgICAgICAgdGhpcy5ub3RpZmljYXRpb25TZXJ2aWNlLnRvYXN0RXJyb3IoZXJyLmVycm9yLml0ZW0yWzBdLm1lc3NhZ2UpO1xyXG4gICAgICAgIHJldHVybjtcclxuICAgICAgfVxyXG4gICAgICBlbHNlIGlmIChlcnIuc3RhdHVzID09IDQwMCkge1xyXG4gICAgICAgIC8vIEVycm9zIGRlIHZhbGlkYcOnw6NvIGRlIGRvbcOtbmlvIGRvIGJhY2tlbmRcclxuICAgICAgICBpZiAoQXJyYXkuaXNBcnJheShlcnIuZXJyb3IpKSB7XHJcbiAgICAgICAgICBpZiAoZXJyLmVycm9yPy5sZW5ndGgpIHtcclxuXHJcbiAgICAgICAgICAgIGlmIChlcnIuZXJyb3IubGVuZ3RoID09IDEgJiYgZXJyLmVycm9yWzBdLmtleSA9PSAnJykge1xyXG4gICAgICAgICAgICAgIHRoaXMubm90aWZpY2F0aW9uU2VydmljZS50b2FzdEVycm9yKGVyci5lcnJvclswXS5tZXNzYWdlKTtcclxuICAgICAgICAgICAgICByZXR1cm47XHJcbiAgICAgICAgICAgIH1cclxuXHJcbiAgICAgICAgICAgIHRoaXMuaW52YWxpZEZvcm0oZXJyLmVycm9yKTtcclxuICAgICAgICAgICAgcmV0dXJuO1xyXG4gICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgICAgICBlbHNlIGlmIChlcnIuZXJyb3I/LnRpdGxlKSB7XHJcbiAgICAgICAgICAvLyBFcnJvIGRlIGpzb24gbm8gYmFja2VuZFxyXG4gICAgICAgICAgdGhpcy5ub3RpZmljYXRpb25TZXJ2aWNlLnRvYXN0RXJyb3IoZXJyLmVycm9yLnRpdGxlKTtcclxuICAgICAgICAgIHJldHVybjtcclxuICAgICAgICB9XHJcbiAgICAgIH1cclxuICAgICAgZWxzZSBpZiAoZXJyLnN0YXR1cyA9PSA0MTUpIHtcclxuICAgICAgICBpZiAoZXJyLmVycm9yPy50aXRsZSkge1xyXG4gICAgICAgICAgLy8gRXJybyBkZSBqc29uIG5vIGJhY2tlbmRcclxuICAgICAgICAgIHRoaXMubm90aWZpY2F0aW9uU2VydmljZS50b2FzdEVycm9yKGVyci5lcnJvci50aXRsZSk7XHJcbiAgICAgICAgICByZXR1cm47XHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcblxyXG4gICAgICAvLyBRdWFscXVlciBvdXRybyB0aXBvIGRlIGVycm8gcXVlIHRlbmhhIG1lbnNhZ2VtXHJcbiAgICAgIGlmIChlcnIubWVzc2FnZSkge1xyXG4gICAgICAgIHRoaXMubm90aWZpY2F0aW9uU2VydmljZS50b2FzdEVycm9yKGVyci5tZXNzYWdlKTtcclxuICAgICAgfVxyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgLyoqXHJcbiAgICogTcOpdG9kbyBkaXNwYXJhZG8gYW8gY2xpY2FyIG5vIGJvdMOjbyBkZSBjYW5jZWxhbWVudG9cclxuICAgKi9cclxuICBwcm90ZWN0ZWQgY2FuY2VsKCkge1xyXG4gICAgdGhpcy5ub3RpZmljYXRpb25TZXJ2aWNlLnF1ZXN0aW9uKHtcclxuICAgICAgdHlwZTogJ3F1ZXN0aW9uJyxcclxuICAgICAgbWVzc2FnZTogJ0Rlc2VqYSBjYW5jZWxhciBhIG9wZXJhw6fDo28/JyxcclxuICAgICAgYWNjZXB0OiAoKSA9PiB7XHJcbiAgICAgICAgdGhpcy5uYXZpZ2F0ZUxpc3QoKTtcclxuICAgICAgfSxcclxuICAgIH0pO1xyXG4gIH1cclxuXHJcbiAgLyoqXHJcbiAgICogVmVyaWZpY2Egc2UgaG91dmVyYW0gYWx0ZXJhw6fDtWVzIG5vcyBjb21wb25lbnRlcyBkbyBmb3JtQ29udHJvbFxyXG4gICAqIEBwYXJhbSBjb250cm9scyAtIE5vbWVzIGRvIGNvbnRyb2xlcyBubyBmb3JtR3JvdXBcclxuICAgKiBAcmV0dXJucyBPYnNlcnZhYmxlXHJcbiAgICovXHJcbiAgcHJvdGVjdGVkIGRldGVjdEZvcm1Db250cm9sQ2hhbmdlcyhjb250cm9sczogQXJyYXk8c3RyaW5nPik6IE9ic2VydmFibGU8YW55PiB7XHJcbiAgICBjb25zdCBjb250cm9sTGlzdDogT2JzZXJ2YWJsZTxhbnk+W10gPSBbXTtcclxuICAgIGNvbnRyb2xzLmZvckVhY2goY29udHJvbE5hbWUgPT4gY29udHJvbExpc3QucHVzaCh0aGlzLmZvcm1Hcm91cC5jb250cm9sc1tjb250cm9sTmFtZV0udmFsdWVDaGFuZ2VzKSk7XHJcbiAgICByZXR1cm4gY29tYmluZUxhdGVzdChjb250cm9sTGlzdCkucGlwZShmaWx0ZXIoKCkgPT4gIXRoaXMub25TZXRGb3JtVmFsdWVzKSk7XHJcbiAgfVxyXG5cclxuICAvKipcclxuICAgKiBNw6l0b2RvIHJlc3BvbnPDoXZlbCBwb3IgZGVzYWJpbGl0YXIgdW0gY29tcG9uZW50ZVxyXG4gICAqIEBwYXJhbSBjb250cm9sTmFtZSAtIE5vbWUgZG8gY29udHJvbGUgbm8gZm9ybUdyb3VwXHJcbiAgICovXHJcbiAgcHJvdGVjdGVkIGRpc2FibGVDb21wb25lbnQoY29udHJvbE5hbWU6IHN0cmluZykge1xyXG4gICAgRm9ybVNlcnZpY2UuZGlzYWJsZUNvbnRyb2wodGhpcy5mb3JtR3JvdXAsIGNvbnRyb2xOYW1lKTtcclxuICB9XHJcblxyXG4gIC8qKlxyXG4gICAqIE3DqXRvZG8gcmVzcG9uc8OhdmVsIHBvciBsaW1wYXIgZSBkZXNhYmlsaXRhciB1bSBjb21wb25lbnRlXHJcbiAgICogQHBhcmFtIGNvbnRyb2xOYW1lIC0gTm9tZSBkbyBjb250cm9sZSBubyBmb3JtR3JvdXBcclxuICAgKiBAcGFyYW0gdmFsdWUgLSBWYWxvciBkZWZhdWx0XHJcbiAgICovXHJcbiAgcHJvdGVjdGVkIGRpc2FibGVBbmRDbGVhckNvbXBvbmVudChjb250cm9sTmFtZTogc3RyaW5nLCB2YWx1ZT86IGFueSkge1xyXG4gICAgRm9ybVNlcnZpY2UuZGlzYWJsZUFuZENsZWFyQ29udHJvbCh0aGlzLmZvcm1Hcm91cCwgY29udHJvbE5hbWUsIHZhbHVlKTtcclxuICB9XHJcblxyXG4gIC8qKlxyXG4gICAqIE3DqXRvZG8gcmVzcG9uc8OhdmVsIHBvciBoYWJpbGl0YXIgdW0gY29tcG9uZW50ZVxyXG4gICAqIEBwYXJhbSBjb250cm9sTmFtZSAtIE5vbWUgZG8gY29udHJvbGUgbm8gZm9ybUdyb3VwXHJcbiAgICovXHJcbiAgcHJvdGVjdGVkIGVuYWJsZUNvbXBvbmVudChjb250cm9OYW1lOiBzdHJpbmcpIHtcclxuICAgIEZvcm1TZXJ2aWNlLmVuYWJsZUNvbnRyb2wodGhpcy5mb3JtR3JvdXAsIGNvbnRyb05hbWUpO1xyXG4gIH1cclxuXHJcbiAgLyoqXHJcbiAgICogTcOpdG9kbyBxdWUgcmV0b3JuYSBvIHZhbG9yIGRlIHVtIGNvbXBvbmVudGVcclxuICAgKiBAcGFyYW0gY29udHJvbE5hbWUgLSBOb21lIGRvIGNvbnRyb2xlIG5vIGZvcm1Hcm91cFxyXG4gICAqIEByZXR1cm5zIC0gVmFsb3JcclxuICAgKi9cclxuICBwcm90ZWN0ZWQgZ2V0Rm9ybVZhbHVlPFQ+KGNvbnRyb2xOYW1lOiBzdHJpbmcpOiBUIHtcclxuICAgIHJldHVybiBGb3JtU2VydmljZS5nZXRGb3JtVmFsdWU8VD4odGhpcy5mb3JtR3JvdXAsIGNvbnRyb2xOYW1lKTtcclxuICB9XHJcblxyXG4gIC8qKlxyXG4gICAqIFZlcmlmaWNhIHNlIG8gY29tcG9uZW50ZSBwb3NzdWkgZXJyb1xyXG4gICAqIEBwYXJhbSBjb250cm9sTmFtZSAtIE5vbWUgZG8gY29udHJvbGUgbm8gZm9ybUdyb3VwXHJcbiAgICovXHJcbiAgcHJvdGVjdGVkIGhhc0NvbnRyb2xFcnJvcihjb250cm9sTmFtZTogc3RyaW5nLCBlcnJvckNvZGU/OiBzdHJpbmcpOiBib29sZWFuIHtcclxuICAgIHJldHVybiBGb3JtU2VydmljZS5oYXNDb250cm9sRXJyb3IodGhpcy5mb3JtR3JvdXAsIGNvbnRyb2xOYW1lLCBlcnJvckNvZGUpO1xyXG4gIH1cclxuXHJcbiAgLyoqXHJcbiAgICogU2V0YSBpbmNvbnNpc3TDqm5jaWFzIHBhcmEgbyBmb211bMOhcmlvXHJcbiAgICogQHBhcmFtIG5vdGlmaWNhdGlvbiAtIExpc3RhIGRlIG5vdGlmaWNhw6fDtWVzXHJcbiAgICovXHJcbiAgcHJvdGVjdGVkIGludmFsaWRGb3JtKG5vdGlmaWNhdGlvbj86IGFueSkge1xyXG4gICAgRm9ybVNlcnZpY2UuaW52YWxpZEZvcm0odGhpcy5mb3JtR3JvdXAsIG5vdGlmaWNhdGlvbik7XHJcbiAgfVxyXG5cclxuICAvKipcclxuICAgKiBNw6l0b2RvIHJlc3BvbnPDoXZlbCBwZWxvIGNhcnJlZ2FtZW50byBkYSB0ZWxhXHJcbiAgICogQHBhcmFtIG9icyAtIE9ic2VydmFibGUgcmVzcG9uc8OhdmVsIHBlbG8gc2FsdmFtZW50byBkb3MgZGFkb3NcclxuICAgKi9cclxuICBwdWJsaWMgbG9hZERhdGE8VD4ob2JzOiBPYnNlcnZhYmxlPGFueT4sIHByb3BlcnR5RGVzY3JpcHRvbjogc3RyaW5nKSB7XHJcbiAgICBvYnNcclxuICAgICAgLy8ucGlwZShsb2FkaW5nKCkpXHJcbiAgICAgIC5zdWJzY3JpYmUoKGRhdGE6IGFueSkgPT4ge1xyXG4gICAgICAgIHRoaXMuaXNOZXdSZWdpc3RyeSA9IGZhbHNlO1xyXG4gICAgICAgIHRoaXMucmVnaXN0cnkgPSBkYXRhIGFzIFQ7XHJcbiAgICAgICAgdGhpcy5zZXRGb3JtVmFsdWVzKHRoaXMucmVnaXN0cnkpO1xyXG4gICAgICAgIHRoaXMubG9hZEdyaWRzKCk7XHJcbiAgICAgIH0pO1xyXG4gIH1cclxuXHJcbiAgcHVibGljIGxvYWRHcmlkcygpIHsgfVxyXG5cclxuICAvKipcclxuICAgKiBNw6l0b2RvIGRpc3BhcmFkbyBwYXJhIHJldG9ybmFyIGEgbGlzdGFcclxuICAgKi9cclxuICBwcm90ZWN0ZWQgbmF2aWdhdGVMaXN0KGlkOiBhbnkgPSBudWxsKSB7XHJcbiAgICBpZiAodGhpcy5wb3B1cCkge1xyXG4gICAgICB0aGlzLmR5bmFtaWNEaWFsb2dSZWYuY2xvc2UoaWQpO1xyXG4gICAgfVxyXG4gICAgZWxzZSBpZiAodGhpcy5kYWRvc1RlbGE/LnJvdGFMaXN0YXIpIHtcclxuICAgICAgdGhpcy5yb3V0ZXIubmF2aWdhdGUoW3RoaXMuZGFkb3NUZWxhLnJvdGFMaXN0YXJdKTtcclxuICAgIH1cclxuICB9XHJcblxyXG4gIHB1YmxpYyBuZ09uRGVzdHJveSgpIHtcclxuICAgIGlmICh0aGlzLmR5bmFtaWNEaWFsb2dSZWYpIHtcclxuICAgICAgdGhpcy5keW5hbWljRGlhbG9nUmVmLmNsb3NlKCk7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICBwdWJsaWMgbmdPbkluaXQoKSB7XHJcbiAgICB0aGlzLmNvbmZpZ3VyZUZvcm0oKTtcclxuXHJcbiAgICB0aGlzLnBvcHVwID0gdGhpcy5keW5hbWljRGlhbG9nQ29uZmlnPy5kYXRhPy5wb3B1cCB8fCBmYWxzZTtcclxuXHJcbiAgICB0aGlzLmFjdGl2YXRlZFJvdXRlLnBhcmFtcy5zdWJzY3JpYmUoKHBhcmFtczogYW55KSA9PiB7XHJcbiAgICAgIGlmIChwYXJhbXNbJ2lkJ10pIHtcclxuICAgICAgICB0aGlzLmxvYWRGb3JtKHBhcmFtc1snaWQnXSk7XHJcbiAgICAgIH1cclxuICAgICAgZWxzZSBpZiAodGhpcy5keW5hbWljRGlhbG9nQ29uZmlnPy5kYXRhPy5pZCkge1xyXG4gICAgICAgIHRoaXMubG9hZEZvcm0odGhpcy5keW5hbWljRGlhbG9nQ29uZmlnLmRhdGEuaWQpO1xyXG4gICAgICB9XHJcbiAgICAgIGVsc2Uge1xyXG4gICAgICAgIHRoaXMuaXNOZXdSZWdpc3RyeSA9IHRydWU7XHJcbiAgICAgICAgdGhpcy5sb2FkR3JpZHMoKTtcclxuICAgICAgfVxyXG4gICAgfSk7XHJcbiAgfVxyXG5cclxuICAvKipcclxuICAgKiBNw6l0b2RvIGRpc3BhcmFkbyBwYXJhIHNhbHZhciBkYWRvc1xyXG4gICAqIEBwYXJhbSBvYnMgLSBPYnNlcnZhYmxlIHJlc3BvbnPDoXZlbCBwZWxvIHNhbHZhbWVudG8gZG9zIGRhZG9zXHJcbiAgICovXHJcbiAgcHJvdGVjdGVkIHNhdmVEYXRhKG9iczogT2JzZXJ2YWJsZTxhbnk+KSB7XHJcbiAgICBvYnNcclxuICAgICAgLnBpcGUoKHNyYzogT2JzZXJ2YWJsZTxhbnk+KSA9PiB7XHJcbiAgICAgICAgdGhpcy5pc1NhdmVMb2FkaW5nID0gdHJ1ZTtcclxuICAgICAgICByZXR1cm4gc3JjLnBpcGUoZmluYWxpemUoKCkgPT4ge1xyXG4gICAgICAgICAgdGhpcy5pc1NhdmVMb2FkaW5nID0gZmFsc2U7XHJcbiAgICAgICAgfSkpO1xyXG4gICAgICB9KVxyXG4gICAgICAuc3Vic2NyaWJlKHtcclxuICAgICAgICBuZXh0OiAocmVzOiBhbnkpID0+IHtcclxuICAgICAgICAgIHRoaXMubm90aWZpY2F0aW9uU2VydmljZS50b2FzdFN1Y2Nlc3MocmVzLml0ZW0yWzBdLm1lc3NhZ2UpO1xyXG4gICAgICAgICAgdGhpcy5uYXZpZ2F0ZUxpc3QocmVzLml0ZW0xKTtcclxuICAgICAgICB9LFxyXG4gICAgICAgIGVycm9yOiAoZSkgPT4ge1xyXG4gICAgICAgICAgdGhpcy5iYWNrZW5kRXJyb3IoZSk7XHJcbiAgICAgICAgfSxcclxuICAgICAgfSk7XHJcbiAgfVxyXG5cclxuICAvKipcclxuICAgKiBNw6l0b2RvIHNlIGF0dWFsaXphIG8gdmFsb3IgZGUgdW0gY29tcG9uZW50ZSBkbyBmb3JtR3JvdXBcclxuICAgKiBAcGFyYW0gY29udHJvTmFtZSAtIE5vbWUgZG8gY29udHJvbGVcclxuICAgKiBAcGFyYW0gdmFsdWUgLSBWYWxvciBwYXJhIGF0dWFsaXphw6fDo29cclxuICAgKi9cclxuICBwcm90ZWN0ZWQgc2V0Q29udHJvbFZhbHVlKGNvbnRyb05hbWU6IHN0cmluZywgdmFsdWU6IGFueSkge1xyXG4gICAgRm9ybVNlcnZpY2Uuc2V0Q29udHJvbFZhbHVlKHRoaXMuZm9ybUdyb3VwLCBjb250cm9OYW1lLCB2YWx1ZSk7XHJcbiAgfVxyXG5cclxuICAvKipcclxuICAgKiBBdHVhbGl6YSB2YWxvcmVzIGRvcyBjb21wb25lbnRlcyBkbyBmb3JtR3JvdXBcclxuICAgKiBAcGFyYW0gdmFsdWVzIC0gVmFsb3JlcyBwYXJhIGF0dWFsaXphw6fDo29cclxuICAgKi9cclxuICBwcm90ZWN0ZWQgc2V0Rm9ybVZhbHVlcyh2YWx1ZXM6IGFueSkge1xyXG4gICAgdGhpcy5vblNldEZvcm1WYWx1ZXMgPSB0cnVlO1xyXG4gICAgdGhpcy5mb3JtR3JvdXAucGF0Y2hWYWx1ZSh2YWx1ZXMsIHsgZW1pdEV2ZW50OiBmYWxzZSB9KTtcclxuICAgIHRoaXMub25TZXRGb3JtVmFsdWVzID0gZmFsc2U7XHJcbiAgfVxyXG5cclxuICAvKipcclxuICAgKiBBdHVhbGl6YSBvIHZhbGlkYWRvciBkZSB1bSBjb21wb25lbnRlIGRvIGZvcm1Hcm91cFxyXG4gICAqIEBwYXJhbSBjb250cm9OYW1lIC0gTm9tZSBkbyBjb250cm9sZVxyXG4gICAqIEBwYXJhbSB2YWxpZGF0b3JzIC0gUmVncmEgZGUgdmFsaWRhw6fDo29cclxuICAgKi9cclxuICBwcm90ZWN0ZWQgc2V0VmFsaWRhdG9ycyhjb250cm9OYW1lOiBzdHJpbmcsIHZhbGlkYXRvcnM6IFZhbGlkYXRvckZuIHwgVmFsaWRhdG9yRm5bXSB8IG51bGwpIHtcclxuICAgIEZvcm1TZXJ2aWNlLnNldFZhbGlkYXRvcnModGhpcy5mb3JtR3JvdXAsIGNvbnRyb05hbWUsIHZhbGlkYXRvcnMpO1xyXG4gIH1cclxuXHJcbiAgLyoqXHJcbiAgICogRGlzcGFyYSBvcyBtw6l0b2RvcyBkZSB2YWxpZGHDp8O1ZXMgZG8gZm9ybXVsw6FyaW9cclxuICAgKiBAcmV0dXJucyAtIFRydWUvRmFsc2VcclxuICAgKi9cclxuICBwcm90ZWN0ZWQgdmFsaWRhdGVGb3JtKCk6IGJvb2xlYW4ge1xyXG4gICAgbGV0IHZhbGlkOiBib29sZWFuID0gZmFsc2U7XHJcblxyXG4gICAgaWYgKHRoaXMuZm9ybUdyb3VwICYmIHRoaXMuZm9ybUdyb3VwLnZhbGlkKSB7XHJcbiAgICAgIHZhbGlkID0gdHJ1ZTtcclxuICAgIH0gZWxzZSB7XHJcbiAgICAgIHRoaXMuaXNBY2NvcmRpb25FeHBhbmRlZCA9IHRydWU7XHJcbiAgICAgIHRoaXMuaW52YWxpZEZvcm0oKTtcclxuXHJcbiAgICAgIGlmICh0aGlzLmRhZG9zVGVsYT8ubWVuc2FnZW1WYWxpZGFjYW8pIHtcclxuICAgICAgICB0aGlzLm5vdGlmaWNhdGlvblNlcnZpY2UuZGlhbG9nKHtcclxuICAgICAgICAgIHR5cGU6ICdhbGVydCcsXHJcbiAgICAgICAgICBtZXNzYWdlOiAnVmVyaWZpcXVlIG9zIGNhbXBvcyBvYnJpZ2F0w7NyaW9zLicsXHJcbiAgICAgICAgfSk7XHJcbiAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICByZXR1cm4gdmFsaWQ7XHJcbiAgfVxyXG59XHJcbiJdfQ==
269
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYmFzZS1jb21wb25lbnQtY3J1ZC1mb3JtLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMva2Vldm8tY29tcG9uZW50cy9zcmMvbGliL2FwaS9iYXNlLWNvbXBvbmVudHMvYmFzZS1jb21wb25lbnQtY3J1ZC1mb3JtLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUNBLE9BQU8sRUFBRSxTQUFTLEVBQXFCLE1BQU0sZUFBZSxDQUFDO0FBRTdELE9BQU8sRUFBRSxTQUFTLEVBQWUsTUFBTSxnQkFBZ0IsQ0FBQztBQUN4RCxPQUFPLEVBQWMsYUFBYSxFQUFFLE1BQU0sRUFBRSxRQUFRLEVBQUUsTUFBTSxNQUFNLENBQUM7QUFHbkUsT0FBTyxFQUFFLGlCQUFpQixFQUFFLE1BQU0sdUJBQXVCLENBQUM7QUFDMUQsT0FBTyxFQUFFLFdBQVcsRUFBRSxNQUFNLDBCQUEwQixDQUFDOzs7OztBQWF2RCxNQUFNLE9BQWdCLHFCQUFzQixTQUFRLGlCQUFpQjtJQWdCbkUsWUFDRSxhQUE0QixFQUM1QixtQkFBd0MsRUFDOUIsY0FBOEIsRUFDOUIsZ0JBQWtDLEVBQ2xDLG1CQUF3QyxFQUN4QyxNQUFjO1FBQ3hCLEtBQUssQ0FFRCxhQUFhLEVBQ2IsbUJBQW1CLENBQ3BCLENBQUM7UUFSTSxtQkFBYyxHQUFkLGNBQWMsQ0FBZ0I7UUFDOUIscUJBQWdCLEdBQWhCLGdCQUFnQixDQUFrQjtRQUNsQyx3QkFBbUIsR0FBbkIsbUJBQW1CLENBQXFCO1FBQ3hDLFdBQU0sR0FBTixNQUFNLENBQVE7UUFwQmhCLHdCQUFtQixHQUFHLEtBQUssQ0FBQztRQUM1QixrQkFBYSxHQUFHLEtBQUssQ0FBQztRQUN0QixrQkFBYSxHQUFHLEtBQUssQ0FBQztRQUN0QixXQUFNLEdBQUcsS0FBSyxDQUFDO1FBRWYsY0FBUyxHQUFjLElBQUksU0FBUyxDQUFDLEVBQUUsQ0FBQyxDQUFDO1FBQ3pDLFlBQU8sR0FBaUIsRUFBRSxDQUFDO1FB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ZXIgfSBmcm9tIFwiQGFuZ3VsYXIvcm91dGVyXCI7XHJcbmltcG9ydCB7IENvbXBvbmVudCwgT25EZXN0cm95LCBPbkluaXQgfSBmcm9tIFwiQGFuZ3VsYXIvY29yZVwiO1xyXG5pbXBvcnQgeyBEaWFsb2dTZXJ2aWNlLCBEeW5hbWljRGlhbG9nQ29uZmlnLCBEeW5hbWljRGlhbG9nUmVmIH0gZnJvbSBcInByaW1lbmcvZHluYW1pY2RpYWxvZ1wiO1xyXG5pbXBvcnQgeyBGb3JtR3JvdXAsIFZhbGlkYXRvckZuIH0gZnJvbSBcIkBhbmd1bGFyL2Zvcm1zXCI7XHJcbmltcG9ydCB7IE9ic2VydmFibGUsIGNvbWJpbmVMYXRlc3QsIGZpbHRlciwgZmluYWxpemUgfSBmcm9tIFwicnhqc1wiO1xyXG5cclxuaW1wb3J0IHsgQWN0aW9uSXRlbSB9IGZyb20gXCIuLi9jb21wb25lbnRzL3RhYmxlL2FjdGlvbi1pdGVtXCI7XHJcbmltcG9ydCB7IEJhc2VDb21wb25lbnRDcnVkIH0gZnJvbSBcIi4vYmFzZS1jb21wb25lbnQtY3J1ZFwiO1xyXG5pbXBvcnQgeyBGb3JtU2VydmljZSB9IGZyb20gXCIuLi9zZXJ2aWNlcy9mb3JtLnNlcnZpY2VcIjtcclxuaW1wb3J0IHsgTm90aWZpY2F0aW9uU2VydmljZSB9IGZyb20gXCIuLi9zZXJ2aWNlcy9ub3RpZmljYXRpb24uc2VydmljZVwiO1xyXG5cclxuZXhwb3J0IGludGVyZmFjZSBEYWRvc1RlbGEge1xyXG4gIHN1YlRpdHVsb0Zvcm06IHN0cmluZyB8IHVuZGVmaW5lZDtcclxuICB0aXR1bG9Gb3JtOiBzdHJpbmcgfCB1bmRlZmluZWQ7XHJcbiAgcm90YUxpc3Rhcjogc3RyaW5nO1xyXG4gIG1lbnNhZ2VtVmFsaWRhY2FvOiBib29sZWFuXHJcbn1cclxuXHJcbkBDb21wb25lbnQoe1xyXG4gIHRlbXBsYXRlOiAnJ1xyXG59KVxyXG5leHBvcnQgYWJzdHJhY3QgY2xhc3MgQmFzZUNvbXBvbmVudENydWRGb3JtIGV4dGVuZHMgQmFzZUNvbXBvbmVudENydWQgaW1wbGVtZW50cyBPbkluaXQsIE9uRGVzdHJveSB7XHJcblxyXG4gIHByb3RlY3RlZCBpc0FjY29yZGlvbkV4cGFuZGVkID0gZmFsc2U7XHJcbiAgcHJvdGVjdGVkIGlzTmV3UmVnaXN0cnkgPSBmYWxzZTtcclxuICBwcm90ZWN0ZWQgaXNTYXZlTG9hZGluZyA9IGZhbHNlO1xyXG4gIHByb3RlY3RlZCBpc1ZpZXcgPSBmYWxzZTtcclxuXHJcbiAgcHJvdGVjdGVkIGZvcm1Hcm91cDogRm9ybUdyb3VwID0gbmV3IEZvcm1Hcm91cCh7fSk7XHJcbiAgcHJvdGVjdGVkIGFjdGlvbnM6IEFjdGlvbkl0ZW1bXSA9IFtdO1xyXG5cclxuICBwcm90ZWN0ZWQgZGFkb3NUZWxhOiBEYWRvc1RlbGEgfCB1bmRlZmluZWQ7XHJcbiAgcHJvdGVjdGVkIHBvcHVwOiBib29sZWFuID0gZmFsc2U7XHJcbiAgcHJvdGVjdGVkIHJlZ2lzdHJ5OiBhbnkgPSBudWxsO1xyXG5cclxuICBwcml2YXRlIG9uU2V0Rm9ybVZhbHVlczogYm9vbGVhbiA9IGZhbHNlO1xyXG5cclxuICBjb25zdHJ1Y3RvcihcclxuICAgIGRpYWxvZ1NlcnZpY2U6IERpYWxvZ1NlcnZpY2UsXHJcbiAgICBub3RpZmljYXRpb25TZXJ2aWNlOiBOb3RpZmljYXRpb25TZXJ2aWNlLFxyXG4gICAgcHJvdGVjdGVkIGFjdGl2YXRlZFJvdXRlOiBBY3RpdmF0ZWRSb3V0ZSxcclxuICAgIHByb3RlY3RlZCBkeW5hbWljRGlhbG9nUmVmOiBEeW5hbWljRGlhbG9nUmVmLFxyXG4gICAgcHJvdGVjdGVkIGR5bmFtaWNEaWFsb2dDb25maWc6IER5bmFtaWNEaWFsb2dDb25maWcsXHJcbiAgICBwcm90ZWN0ZWQgcm91dGVyOiBSb3V0ZXIpIHtcclxuICAgIHN1cGVyXHJcbiAgICAgIChcclxuICAgICAgICBkaWFsb2dTZXJ2aWNlLFxyXG4gICAgICAgIG5vdGlmaWNhdGlvblNlcnZpY2VcclxuICAgICAgKTtcclxuICB9XHJcblxyXG4gIC8qKlxyXG4gICAqIE3DqXRvZG8gZGlzcGFyYWRvIHBhcmEgY29uZmlndXJhw6fDo28gZG8gZm9ybVxyXG4gICAqL1xyXG4gIGFic3RyYWN0IGNvbmZpZ3VyZUZvcm0oKTogdm9pZDtcclxuXHJcbiAgLyoqXHJcbiAgICogTcOpdG9kbyBkaXNwYXJhZG8gcGFyYSBvIGNhcnJlZ2FtZW50byBkbyBmb3JtXHJcbiAgICogQHBhcmFtIGlkXHJcbiAgICovXHJcbiAgYWJzdHJhY3QgbG9hZEZvcm0oaWQ6IGFueSk6IHZvaWQ7XHJcblxyXG4gIC8qKlxyXG4gICAqIE3DqXRvZG8gZGlzcGFyYWRvIHBhcmEgc2FsdmFtZW50byBkb3MgZGFkb3NcclxuICAgKi9cclxuICBhYnN0cmFjdCBzYXZlKCk6IHZvaWQ7XHJcblxyXG4gIC8qKlxyXG4gICAqIE3DqXRvZG8gZGlzcGFyYWRvIHBhcmEgdHJhdGFtZW50byBkYXMgbm90aWZpY2HDp8O1ZXMgZG8gYmFja2VuZFxyXG4gICAqIEBwYXJhbSBlcnIgLSBOb3RpZmljYcOnw6NvXHJcbiAgICovXHJcbiAgcHJvdGVjdGVkIGJhY2tlbmRFcnJvcihlcnI6IGFueSk6IHZvaWQge1xyXG4gICAgaWYgKGVycikge1xyXG4gICAgICBpZiAoZXJyLnN0YXR1cyA9PSA0MDQpIHtcclxuICAgICAgICB0aGlzLm5vdGlmaWNhdGlvblNlcnZpY2UudG9hc3RFcnJvcihlcnIuZXJyb3IuaXRlbTJbMF0ubWVzc2FnZSk7XHJcbiAgICAgICAgcmV0dXJuO1xyXG4gICAgICB9XHJcbiAgICAgIGVsc2UgaWYgKGVyci5zdGF0dXMgPT0gNDAwKSB7XHJcbiAgICAgICAgLy8gRXJyb3MgZGUgdmFsaWRhw6fDo28gZGUgZG9tw61uaW8gZG8gYmFja2VuZFxyXG4gICAgICAgIGlmIChBcnJheS5pc0FycmF5KGVyci5lcnJvcikpIHtcclxuICAgICAgICAgIGlmIChlcnIuZXJyb3I/Lmxlbmd0aCkge1xyXG5cclxuICAgICAgICAgICAgaWYgKGVyci5lcnJvci5sZW5ndGggPT0gMSAmJiBlcnIuZXJyb3JbMF0ua2V5ID09ICcnKSB7XHJcbiAgICAgICAgICAgICAgdGhpcy5ub3RpZmljYXRpb25TZXJ2aWNlLnRvYXN0RXJyb3IoZXJyLmVycm9yWzBdLm1lc3NhZ2UpO1xyXG4gICAgICAgICAgICAgIHJldHVybjtcclxuICAgICAgICAgICAgfVxyXG5cclxuICAgICAgICAgICAgdGhpcy5pbnZhbGlkRm9ybShlcnIuZXJyb3IpO1xyXG4gICAgICAgICAgICByZXR1cm47XHJcbiAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgICAgIGVsc2UgaWYgKGVyci5lcnJvcj8udGl0bGUpIHtcclxuICAgICAgICAgIC8vIEVycm8gZGUganNvbiBubyBiYWNrZW5kXHJcbiAgICAgICAgICB0aGlzLm5vdGlmaWNhdGlvblNlcnZpY2UudG9hc3RFcnJvcihlcnIuZXJyb3IudGl0bGUpO1xyXG4gICAgICAgICAgcmV0dXJuO1xyXG4gICAgICAgIH1cclxuICAgICAgfVxyXG4gICAgICBlbHNlIGlmIChlcnIuc3RhdHVzID09IDQxNSkge1xyXG4gICAgICAgIGlmIChlcnIuZXJyb3I/LnRpdGxlKSB7XHJcbiAgICAgICAgICAvLyBFcnJvIGRlIGpzb24gbm8gYmFja2VuZFxyXG4gICAgICAgICAgdGhpcy5ub3RpZmljYXRpb25TZXJ2aWNlLnRvYXN0RXJyb3IoZXJyLmVycm9yLnRpdGxlKTtcclxuICAgICAgICAgIHJldHVybjtcclxuICAgICAgICB9XHJcbiAgICAgIH1cclxuXHJcbiAgICAgIC8vIFF1YWxxdWVyIG91dHJvIHRpcG8gZGUgZXJybyBxdWUgdGVuaGEgbWVuc2FnZW1cclxuICAgICAgaWYgKGVyci5tZXNzYWdlKSB7XHJcbiAgICAgICAgdGhpcy5ub3RpZmljYXRpb25TZXJ2aWNlLnRvYXN0RXJyb3IoZXJyLm1lc3NhZ2UpO1xyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICAvKipcclxuICAgKiBNw6l0b2RvIGRpc3BhcmFkbyBhbyBjbGljYXIgbm8gYm90w6NvIGRlIGNhbmNlbGFtZW50b1xyXG4gICAqL1xyXG4gIHByb3RlY3RlZCBjYW5jZWwoKSB7XHJcbiAgICB0aGlzLm5vdGlmaWNhdGlvblNlcnZpY2UucXVlc3Rpb24oe1xyXG4gICAgICB0eXBlOiAncXVlc3Rpb24nLFxyXG4gICAgICBtZXNzYWdlOiAnRGVzZWphIGNhbmNlbGFyIGEgb3BlcmHDp8Ojbz8nLFxyXG4gICAgICBhY2NlcHQ6ICgpID0+IHtcclxuICAgICAgICB0aGlzLm5hdmlnYXRlTGlzdCgpO1xyXG4gICAgICB9LFxyXG4gICAgfSk7XHJcbiAgfVxyXG5cclxuICAvKipcclxuICAgKiBWZXJpZmljYSBzZSBob3V2ZXJhbSBhbHRlcmHDp8O1ZXMgbm9zIGNvbXBvbmVudGVzIGRvIGZvcm1Db250cm9sXHJcbiAgICogQHBhcmFtIGNvbnRyb2xzIC0gTm9tZXMgZG8gY29udHJvbGVzIG5vIGZvcm1Hcm91cFxyXG4gICAqIEByZXR1cm5zIE9ic2VydmFibGVcclxuICAgKi9cclxuICBwcm90ZWN0ZWQgZGV0ZWN0Rm9ybUNvbnRyb2xDaGFuZ2VzKGNvbnRyb2xzOiBBcnJheTxzdHJpbmc+KTogT2JzZXJ2YWJsZTxhbnk+IHtcclxuICAgIGNvbnN0IGNvbnRyb2xMaXN0OiBPYnNlcnZhYmxlPGFueT5bXSA9IFtdO1xyXG4gICAgY29udHJvbHMuZm9yRWFjaChjb250cm9sTmFtZSA9PiBjb250cm9sTGlzdC5wdXNoKHRoaXMuZm9ybUdyb3VwLmNvbnRyb2xzW2NvbnRyb2xOYW1lXS52YWx1ZUNoYW5nZXMpKTtcclxuICAgIHJldHVybiBjb21iaW5lTGF0ZXN0KGNvbnRyb2xMaXN0KS5waXBlKGZpbHRlcigoKSA9PiAhdGhpcy5vblNldEZvcm1WYWx1ZXMpKTtcclxuICB9XHJcblxyXG4gIC8qKlxyXG4gICAqIE3DqXRvZG8gcmVzcG9uc8OhdmVsIHBvciBkZXNhYmlsaXRhciB1bSBjb21wb25lbnRlXHJcbiAgICogQHBhcmFtIGNvbnRyb2xOYW1lIC0gTm9tZSBkbyBjb250cm9sZSBubyBmb3JtR3JvdXBcclxuICAgKi9cclxuICBwcm90ZWN0ZWQgZGlzYWJsZUNvbXBvbmVudChjb250cm9sTmFtZTogc3RyaW5nKSB7XHJcbiAgICBGb3JtU2VydmljZS5kaXNhYmxlQ29udHJvbCh0aGlzLmZvcm1Hcm91cCwgY29udHJvbE5hbWUpO1xyXG4gIH1cclxuXHJcbiAgLyoqXHJcbiAgICogTcOpdG9kbyByZXNwb25zw6F2ZWwgcG9yIGxpbXBhciBlIGRlc2FiaWxpdGFyIHVtIGNvbXBvbmVudGVcclxuICAgKiBAcGFyYW0gY29udHJvbE5hbWUgLSBOb21lIGRvIGNvbnRyb2xlIG5vIGZvcm1Hcm91cFxyXG4gICAqIEBwYXJhbSB2YWx1ZSAtIFZhbG9yIGRlZmF1bHRcclxuICAgKi9cclxuICBwcm90ZWN0ZWQgZGlzYWJsZUFuZENsZWFyQ29tcG9uZW50KGNvbnRyb2xOYW1lOiBzdHJpbmcsIHZhbHVlPzogYW55KSB7XHJcbiAgICBGb3JtU2VydmljZS5kaXNhYmxlQW5kQ2xlYXJDb250cm9sKHRoaXMuZm9ybUdyb3VwLCBjb250cm9sTmFtZSwgdmFsdWUpO1xyXG4gIH1cclxuXHJcbiAgLyoqXHJcbiAgICogTcOpdG9kbyByZXNwb25zw6F2ZWwgcG9yIGhhYmlsaXRhciB1bSBjb21wb25lbnRlXHJcbiAgICogQHBhcmFtIGNvbnRyb2xOYW1lIC0gTm9tZSBkbyBjb250cm9sZSBubyBmb3JtR3JvdXBcclxuICAgKi9cclxuICBwcm90ZWN0ZWQgZW5hYmxlQ29tcG9uZW50KGNvbnRyb05hbWU6IHN0cmluZykge1xyXG4gICAgRm9ybVNlcnZpY2UuZW5hYmxlQ29udHJvbCh0aGlzLmZvcm1Hcm91cCwgY29udHJvTmFtZSk7XHJcbiAgfVxyXG5cclxuICAvKipcclxuICAgKiBNw6l0b2RvIHF1ZSByZXRvcm5hIG8gdmFsb3IgZGUgdW0gY29tcG9uZW50ZVxyXG4gICAqIEBwYXJhbSBjb250cm9sTmFtZSAtIE5vbWUgZG8gY29udHJvbGUgbm8gZm9ybUdyb3VwXHJcbiAgICogQHJldHVybnMgLSBWYWxvclxyXG4gICAqL1xyXG4gIHByb3RlY3RlZCBnZXRGb3JtVmFsdWU8VD4oY29udHJvbE5hbWU6IHN0cmluZyk6IFQge1xyXG4gICAgcmV0dXJuIEZvcm1TZXJ2aWNlLmdldEZvcm1WYWx1ZTxUPih0aGlzLmZvcm1Hcm91cCwgY29udHJvbE5hbWUpO1xyXG4gIH1cclxuXHJcbiAgLyoqXHJcbiAgICogVmVyaWZpY2Egc2UgbyBjb21wb25lbnRlIHBvc3N1aSBlcnJvXHJcbiAgICogQHBhcmFtIGNvbnRyb2xOYW1lIC0gTm9tZSBkbyBjb250cm9sZSBubyBmb3JtR3JvdXBcclxuICAgKi9cclxuICBwcm90ZWN0ZWQgaGFzQ29udHJvbEVycm9yKGNvbnRyb2xOYW1lOiBzdHJpbmcsIGVycm9yQ29kZT86IHN0cmluZyk6IGJvb2xlYW4ge1xyXG4gICAgcmV0dXJuIEZvcm1TZXJ2aWNlLmhhc0NvbnRyb2xFcnJvcih0aGlzLmZvcm1Hcm91cCwgY29udHJvbE5hbWUsIGVycm9yQ29kZSk7XHJcbiAgfVxyXG5cclxuICAvKipcclxuICAgKiBTZXRhIGluY29uc2lzdMOqbmNpYXMgcGFyYSBvIGZvbXVsw6FyaW9cclxuICAgKiBAcGFyYW0gbm90aWZpY2F0aW9uIC0gTGlzdGEgZGUgbm90aWZpY2HDp8O1ZXNcclxuICAgKi9cclxuICBwcm90ZWN0ZWQgaW52YWxpZEZvcm0obm90aWZpY2F0aW9uPzogYW55KSB7XHJcbiAgICBGb3JtU2VydmljZS5pbnZhbGlkRm9ybSh0aGlzLmZvcm1Hcm91cCwgbm90aWZpY2F0aW9uKTtcclxuICB9XHJcblxyXG4gIC8qKlxyXG4gICAqIE3DqXRvZG8gcmVzcG9uc8OhdmVsIHBlbG8gY2FycmVnYW1lbnRvIGRhIHRlbGFcclxuICAgKiBAcGFyYW0gb2JzIC0gT2JzZXJ2YWJsZSByZXNwb25zw6F2ZWwgcGVsbyBzYWx2YW1lbnRvIGRvcyBkYWRvc1xyXG4gICAqL1xyXG4gIHB1YmxpYyBsb2FkRGF0YTxUPihvYnM6IE9ic2VydmFibGU8YW55PiwgcHJvcGVydHlEZXNjcmlwdG9uOiBzdHJpbmcpIHtcclxuICAgIG9ic1xyXG4gICAgICAvLy5waXBlKGxvYWRpbmcoKSlcclxuICAgICAgLnN1YnNjcmliZSgoZGF0YTogYW55KSA9PiB7XHJcbiAgICAgICAgdGhpcy5pc05ld1JlZ2lzdHJ5ID0gZmFsc2U7XHJcbiAgICAgICAgdGhpcy5yZWdpc3RyeSA9IGRhdGEgYXMgVDtcclxuICAgICAgICB0aGlzLnNldEZvcm1WYWx1ZXModGhpcy5yZWdpc3RyeSk7XHJcbiAgICAgICAgdGhpcy5sb2FkR3JpZHMoKTtcclxuICAgICAgICB0aGlzLnNldFRpdGxlUG9wdXAoKTtcclxuICAgICAgfSk7XHJcbiAgfVxyXG5cclxuICBwdWJsaWMgbG9hZEdyaWRzKCkgeyB9XHJcblxyXG4gIC8qKlxyXG4gICAqIE3DqXRvZG8gZGlzcGFyYWRvIHBhcmEgcmV0b3JuYXIgYSBsaXN0YVxyXG4gICAqL1xyXG4gIHByb3RlY3RlZCBuYXZpZ2F0ZUxpc3QoaWQ6IGFueSA9IG51bGwpIHtcclxuICAgIGlmICh0aGlzLnBvcHVwKSB7XHJcbiAgICAgIHRoaXMuZHluYW1pY0RpYWxvZ1JlZi5jbG9zZShpZCk7XHJcbiAgICB9XHJcbiAgICBlbHNlIGlmICh0aGlzLmRhZG9zVGVsYT8ucm90YUxpc3Rhcikge1xyXG4gICAgICB0aGlzLnJvdXRlci5uYXZpZ2F0ZShbdGhpcy5kYWRvc1RlbGEucm90YUxpc3Rhcl0pO1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgcHVibGljIG5nT25EZXN0cm95KCkge1xyXG4gICAgaWYgKHRoaXMuZHluYW1pY0RpYWxvZ1JlZikge1xyXG4gICAgICB0aGlzLmR5bmFtaWNEaWFsb2dSZWYuY2xvc2UoKTtcclxuICAgIH1cclxuICB9XHJcblxyXG4gIHB1YmxpYyBuZ09uSW5pdCgpIHtcclxuICAgIHRoaXMuY29uZmlndXJlRm9ybSgpO1xyXG5cclxuICAgIHRoaXMucG9wdXAgPSB0aGlzLmR5bmFtaWNEaWFsb2dDb25maWc/LmRhdGE/LnBvcHVwIHx8IGZhbHNlO1xyXG5cclxuICAgIHRoaXMuYWN0aXZhdGVkUm91dGUucGFyYW1zLnN1YnNjcmliZSgocGFyYW1zOiBhbnkpID0+IHtcclxuICAgICAgaWYgKHBhcmFtc1snaWQnXSkge1xyXG4gICAgICAgIHRoaXMubG9hZEZvcm0ocGFyYW1zWydpZCddKTtcclxuICAgICAgfVxyXG4gICAgICBlbHNlIGlmICh0aGlzLmR5bmFtaWNEaWFsb2dDb25maWc/LmRhdGE/LmlkKSB7XHJcbiAgICAgICAgdGhpcy5sb2FkRm9ybSh0aGlzLmR5bmFtaWNEaWFsb2dDb25maWcuZGF0YS5pZCk7XHJcbiAgICAgIH1cclxuICAgICAgZWxzZSB7XHJcbiAgICAgICAgdGhpcy5pc05ld1JlZ2lzdHJ5ID0gdHJ1ZTtcclxuICAgICAgICB0aGlzLmxvYWRHcmlkcygpO1xyXG4gICAgICAgIHRoaXMuc2V0VGl0bGVQb3B1cCgpO1xyXG4gICAgICB9XHJcbiAgICB9KTtcclxuICB9XHJcblxyXG4gIC8qKlxyXG4gICAqIE3DqXRvZG8gZGlzcGFyYWRvIHBhcmEgc2FsdmFyIGRhZG9zXHJcbiAgICogQHBhcmFtIG9icyAtIE9ic2VydmFibGUgcmVzcG9uc8OhdmVsIHBlbG8gc2FsdmFtZW50byBkb3MgZGFkb3NcclxuICAgKi9cclxuICBwcm90ZWN0ZWQgc2F2ZURhdGEob2JzOiBPYnNlcnZhYmxlPGFueT4pIHtcclxuICAgIG9ic1xyXG4gICAgICAucGlwZSgoc3JjOiBPYnNlcnZhYmxlPGFueT4pID0+IHtcclxuICAgICAgICB0aGlzLmlzU2F2ZUxvYWRpbmcgPSB0cnVlO1xyXG4gICAgICAgIHJldHVybiBzcmMucGlwZShmaW5hbGl6ZSgoKSA9PiB7XHJcbiAgICAgICAgICB0aGlzLmlzU2F2ZUxvYWRpbmcgPSBmYWxzZTtcclxuICAgICAgICB9KSk7XHJcbiAgICAgIH0pXHJcbiAgICAgIC5zdWJzY3JpYmUoe1xyXG4gICAgICAgIG5leHQ6IChyZXM6IGFueSkgPT4ge1xyXG4gICAgICAgICAgdGhpcy5ub3RpZmljYXRpb25TZXJ2aWNlLnRvYXN0U3VjY2VzcyhyZXMuaXRlbTJbMF0ubWVzc2FnZSk7XHJcbiAgICAgICAgICB0aGlzLm5hdmlnYXRlTGlzdChyZXMuaXRlbTEpO1xyXG4gICAgICAgIH0sXHJcbiAgICAgICAgZXJyb3I6IChlKSA9PiB7XHJcbiAgICAgICAgICB0aGlzLmJhY2tlbmRFcnJvcihlKTtcclxuICAgICAgICB9LFxyXG4gICAgICB9KTtcclxuICB9XHJcblxyXG4gIC8qKlxyXG4gICAqIE3DqXRvZG8gc2UgYXR1YWxpemEgbyB2YWxvciBkZSB1bSBjb21wb25lbnRlIGRvIGZvcm1Hcm91cFxyXG4gICAqIEBwYXJhbSBjb250cm9OYW1lIC0gTm9tZSBkbyBjb250cm9sZVxyXG4gICAqIEBwYXJhbSB2YWx1ZSAtIFZhbG9yIHBhcmEgYXR1YWxpemHDp8Ojb1xyXG4gICAqL1xyXG4gIHByb3RlY3RlZCBzZXRDb250cm9sVmFsdWUoY29udHJvTmFtZTogc3RyaW5nLCB2YWx1ZTogYW55KSB7XHJcbiAgICBGb3JtU2VydmljZS5zZXRDb250cm9sVmFsdWUodGhpcy5mb3JtR3JvdXAsIGNvbnRyb05hbWUsIHZhbHVlKTtcclxuICB9XHJcblxyXG4gIC8qKlxyXG4gICAqIEF0dWFsaXphIHZhbG9yZXMgZG9zIGNvbXBvbmVudGVzIGRvIGZvcm1Hcm91cFxyXG4gICAqIEBwYXJhbSB2YWx1ZXMgLSBWYWxvcmVzIHBhcmEgYXR1YWxpemHDp8Ojb1xyXG4gICAqL1xyXG4gIHByb3RlY3RlZCBzZXRGb3JtVmFsdWVzKHZhbHVlczogYW55KSB7XHJcbiAgICB0aGlzLm9uU2V0Rm9ybVZhbHVlcyA9IHRydWU7XHJcbiAgICB0aGlzLmZvcm1Hcm91cC5wYXRjaFZhbHVlKHZhbHVlcywgeyBlbWl0RXZlbnQ6IGZhbHNlIH0pO1xyXG4gICAgdGhpcy5vblNldEZvcm1WYWx1ZXMgPSBmYWxzZTtcclxuICB9XHJcblxyXG4gIC8qKlxyXG4gICAqIFNldGEgbyB0w610dWxvIGRvIHBvcHVwXHJcbiAgICovXHJcbiAgcHJpdmF0ZSBzZXRUaXRsZVBvcHVwKCkge1xyXG4gICAgaWYgKHRoaXMucG9wdXApIHtcclxuICAgICAgaWYgKHRoaXMuZHluYW1pY0RpYWxvZ0NvbmZpZylcclxuICAgICAgICB0aGlzLmR5bmFtaWNEaWFsb2dDb25maWcuaGVhZGVyID0gdGhpcy5kYWRvc1RlbGE/LnRpdHVsb0Zvcm07XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICAvKipcclxuICAgKiBBdHVhbGl6YSBvIHZhbGlkYWRvciBkZSB1bSBjb21wb25lbnRlIGRvIGZvcm1Hcm91cFxyXG4gICAqIEBwYXJhbSBjb250cm9OYW1lIC0gTm9tZSBkbyBjb250cm9sZVxyXG4gICAqIEBwYXJhbSB2YWxpZGF0b3JzIC0gUmVncmEgZGUgdmFsaWRhw6fDo29cclxuICAgKi9cclxuICBwcm90ZWN0ZWQgc2V0VmFsaWRhdG9ycyhjb250cm9OYW1lOiBzdHJpbmcsIHZhbGlkYXRvcnM6IFZhbGlkYXRvckZuIHwgVmFsaWRhdG9yRm5bXSB8IG51bGwpIHtcclxuICAgIEZvcm1TZXJ2aWNlLnNldFZhbGlkYXRvcnModGhpcy5mb3JtR3JvdXAsIGNvbnRyb05hbWUsIHZhbGlkYXRvcnMpO1xyXG4gIH1cclxuXHJcbiAgLyoqXHJcbiAgICogRGlzcGFyYSBvcyBtw6l0b2RvcyBkZSB2YWxpZGHDp8O1ZXMgZG8gZm9ybXVsw6FyaW9cclxuICAgKiBAcmV0dXJucyAtIFRydWUvRmFsc2VcclxuICAgKi9cclxuICBwcm90ZWN0ZWQgdmFsaWRhdGVGb3JtKCk6IGJvb2xlYW4ge1xyXG4gICAgbGV0IHZhbGlkOiBib29sZWFuID0gZmFsc2U7XHJcblxyXG4gICAgaWYgKHRoaXMuZm9ybUdyb3VwICYmIHRoaXMuZm9ybUdyb3VwLnZhbGlkKSB7XHJcbiAgICAgIHZhbGlkID0gdHJ1ZTtcclxuICAgIH0gZWxzZSB7XHJcbiAgICAgIHRoaXMuaXNBY2NvcmRpb25FeHBhbmRlZCA9IHRydWU7XHJcbiAgICAgIHRoaXMuaW52YWxpZEZvcm0oKTtcclxuXHJcbiAgICAgIGlmICh0aGlzLmRhZG9zVGVsYT8ubWVuc2FnZW1WYWxpZGFjYW8pIHtcclxuICAgICAgICB0aGlzLm5vdGlmaWNhdGlvblNlcnZpY2UuZGlhbG9nKHtcclxuICAgICAgICAgIHR5cGU6ICdhbGVydCcsXHJcbiAgICAgICAgICBtZXNzYWdlOiAnVmVyaWZpcXVlIG9zIGNhbXBvcyBvYnJpZ2F0w7NyaW9zLicsXHJcbiAgICAgICAgfSk7XHJcbiAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICByZXR1cm4gdmFsaWQ7XHJcbiAgfVxyXG59XHJcbiJdfQ==
@@ -2,12 +2,11 @@ import { Component, EventEmitter, Input, Output } from '@angular/core';
2
2
  import * as i0 from "@angular/core";
3
3
  import * as i1 from "@angular/forms";
4
4
  import * as i2 from "@angular/common";
5
- import * as i3 from "primeng/button";
6
- import * as i4 from "primeng/divider";
7
- import * as i5 from "primeng/menu";
8
- import * as i6 from "../buttons/button-secondary/button-secondary.component";
9
- import * as i7 from "../buttons/button-success/button-success.component";
10
- import * as i8 from "../buttons/button-popup/button-popup.component";
5
+ import * as i3 from "primeng/divider";
6
+ import * as i4 from "primeng/menu";
7
+ import * as i5 from "../buttons/button-secondary/button-secondary.component";
8
+ import * as i6 from "../buttons/button-success/button-success.component";
9
+ import * as i7 from "../buttons/button-popup/button-popup.component";
11
10
  export class PageFormComponent {
12
11
  constructor(fb) {
13
12
  this.fb = fb;
@@ -71,10 +70,10 @@ export class PageFormComponent {
71
70
  }
72
71
  }
73
72
  PageFormComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.8", ngImport: i0, type: PageFormComponent, deps: [{ token: i1.FormBuilder }], target: i0.ɵɵFactoryTarget.Component });
74
- PageFormComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.2.8", type: PageFormComponent, selector: "kv-page-form", inputs: { formGroup: "formGroup", TituloForm: "TituloForm", SubTituloForm: "SubTituloForm", isSaveLoading: "isSaveLoading", popup: "popup", iconBtnCancel: "iconBtnCancel", showBtnCancel: "showBtnCancel", txtBtnCancel: "txtBtnCancel", iconBtnSave: "iconBtnSave", showBtnSave: "showBtnSave", txtBtnSave: "txtBtnSave", actions: "actions", iconBtnSaveToogle: "iconBtnSaveToogle", showBtnSaveToogle: "showBtnSaveToogle", txtBtnSaveToogle: "txtBtnSaveToogle", disableBtnSair: "disableBtnSair" }, outputs: { onSave: "onSave", onCancel: "onCancel" }, ngImport: i0, template: " <form [formGroup]=\"formGroup\">\r\n <!-- T\u00EDtulo do popup -->\r\n <div class=\"flex flex-row header-dialog-prime header\" *ngIf=\"popup\">\r\n <div class=\"flex flex-column gap-3 col-10 lg:col-6\" style=\"padding: 1rem\">\r\n <div class=\"text-md lg:text-2xl\">{{TituloForm}}</div>\r\n <div class=\"text-xs lg:text-md\" *ngIf=\"enableSubTitle()\">\r\n {{ SubTituloForm }}\r\n </div>\r\n </div>\r\n\r\n <div\r\n class=\"flex align-items-center justify-content-end col-2 lg:col-6\"\r\n style=\"padding-right: 1rem\">\r\n <p-button\r\n icon=\"pi pi-times\"\r\n styleClass=\"p-button-text btn-sair\"\r\n [disabled]=\"disableBtnSair\"\r\n (click)=\"cancel($event)\"></p-button>\r\n </div>\r\n </div>\r\n\r\n <!-- Renderiza\u00E7\u00E3o do form -->\r\n <ng-content></ng-content>\r\n\r\n <!-- Divider -->\r\n <p-divider></p-divider>\r\n\r\n <!-- Barra de a\u00E7\u00F5es -->\r\n <div\r\n class=\"flex-column lg:flex-row flex align-items-center justify-content-end gap-2\">\r\n\r\n <p-menu #menu [popup]=\"true\" [model]=\"actions\" appendTo=\"body\"></p-menu>\r\n\r\n <kv-button-secondary\r\n *ngIf=\"showBtnCancel\"\r\n [label]=\"txtBtnCancel\"\r\n [icon]=\"iconBtnCancel\"\r\n (click)=\"cancel($event)\">\r\n </kv-button-secondary>\r\n\r\n <kv-button-success\r\n *ngIf=\"showBtnSave\"\r\n [label]=\"txtBtnSave\"\r\n [icon]=\"iconBtnSave\"\r\n [loading]=\"isSaveLoading\"\r\n (click)=\"save($event)\">\r\n </kv-button-success>\r\n\r\n <kv-button-popup\r\n *ngIf=\"actions && showBtnSaveToogle\"\r\n [label]=\"txtBtnSaveToogle\"\r\n [icon]=\"iconBtnSaveToogle\"\r\n (click)=\"menu.toggle($event)\"\r\n [loading]=\"isSaveLoading\">\r\n </kv-button-popup>\r\n </div>\r\n</form>\r\n", styles: [".header{height:80px}.texto-dialog-prime.p-dialog.p-confirm-dialog .p-confirm-dialog-message{margin-left:1rem;margin-top:2rem;font-size:14px;text-align:center}.header-dialog-prime{color:#fff;background:#002542;margin-bottom:1rem}.header-dialog-prime-override.p-dialog .p-dialog-header{color:#fff;background:#002542}.icon-dialog-prime.p-dialog .p-dialog-header .p-dialog-header-icon{color:#fff}.dialog-content-prime.p-dialog .p-dialog-content{background:#ffffff;color:#495057;padding:0;overflow:auto}\n"], dependencies: [{ kind: "directive", type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: i3.Button, selector: "p-button", inputs: ["type", "iconPos", "icon", "badge", "label", "disabled", "loading", "loadingIcon", "style", "styleClass", "badgeClass", "ariaLabel"], outputs: ["onClick", "onFocus", "onBlur"] }, { kind: "component", type: i4.Divider, selector: "p-divider", inputs: ["styleClass", "style", "layout", "type", "align"] }, { kind: "component", type: i5.Menu, selector: "p-menu", inputs: ["model", "popup", "style", "styleClass", "appendTo", "autoZIndex", "baseZIndex", "showTransitionOptions", "hideTransitionOptions"], outputs: ["onShow", "onHide"] }, { kind: "component", type: i6.ButtonSecondaryComponent, selector: "kv-button-secondary" }, { kind: "component", type: i7.ButtonSuccessComponent, selector: "kv-button-success" }, { kind: "component", type: i8.ButtonPopupComponent, selector: "kv-button-popup", inputs: ["items"] }, { kind: "directive", type: i1.ɵNgNoValidate, selector: "form:not([ngNoForm]):not([ngNativeValidate])" }, { kind: "directive", type: i1.NgControlStatusGroup, selector: "[formGroupName],[formArrayName],[ngModelGroup],[formGroup],form:not([ngNoForm]),[ngForm]" }, { kind: "directive", type: i1.FormGroupDirective, selector: "[formGroup]", inputs: ["formGroup"], outputs: ["ngSubmit"], exportAs: ["ngForm"] }] });
73
+ PageFormComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.2.8", type: PageFormComponent, selector: "kv-page-form", inputs: { formGroup: "formGroup", TituloForm: "TituloForm", SubTituloForm: "SubTituloForm", isSaveLoading: "isSaveLoading", popup: "popup", iconBtnCancel: "iconBtnCancel", showBtnCancel: "showBtnCancel", txtBtnCancel: "txtBtnCancel", iconBtnSave: "iconBtnSave", showBtnSave: "showBtnSave", txtBtnSave: "txtBtnSave", actions: "actions", iconBtnSaveToogle: "iconBtnSaveToogle", showBtnSaveToogle: "showBtnSaveToogle", txtBtnSaveToogle: "txtBtnSaveToogle", disableBtnSair: "disableBtnSair" }, outputs: { onSave: "onSave", onCancel: "onCancel" }, ngImport: i0, template: " <form [formGroup]=\"formGroup\">\r\n <!-- T\u00EDtulo do popup -->\r\n <!-- <div class=\"flex flex-row header-dialog-prime header\" *ngIf=\"popup\">\r\n <div class=\"flex flex-column gap-3 col-10 lg:col-6\" style=\"padding: 1rem\">\r\n <div class=\"text-md lg:text-2xl\">{{TituloForm}}</div>\r\n <div class=\"text-xs lg:text-md\" *ngIf=\"enableSubTitle()\">\r\n {{ SubTituloForm }}\r\n </div>\r\n </div>\r\n\r\n <div\r\n class=\"flex align-items-center justify-content-end col-2 lg:col-6\"\r\n style=\"padding-right: 1rem\">\r\n <p-button\r\n icon=\"pi pi-times\"\r\n styleClass=\"p-button-text btn-sair\"\r\n [disabled]=\"disableBtnSair\"\r\n (click)=\"cancel($event)\"></p-button>\r\n </div>\r\n </div> -->\r\n\r\n <!-- Renderiza\u00E7\u00E3o do form -->\r\n <ng-content></ng-content>\r\n\r\n <!-- Divider -->\r\n <p-divider></p-divider>\r\n\r\n <!-- Barra de a\u00E7\u00F5es -->\r\n <div\r\n class=\"flex-column lg:flex-row flex align-items-center justify-content-end gap-2\">\r\n\r\n <p-menu #menu [popup]=\"true\" [model]=\"actions\" appendTo=\"body\"></p-menu>\r\n\r\n <kv-button-secondary\r\n *ngIf=\"showBtnCancel\"\r\n [label]=\"txtBtnCancel\"\r\n [icon]=\"iconBtnCancel\"\r\n (click)=\"cancel($event)\">\r\n </kv-button-secondary>\r\n\r\n <kv-button-success\r\n *ngIf=\"showBtnSave\"\r\n [label]=\"txtBtnSave\"\r\n [icon]=\"iconBtnSave\"\r\n [loading]=\"isSaveLoading\"\r\n (click)=\"save($event)\">\r\n </kv-button-success>\r\n\r\n <kv-button-popup\r\n *ngIf=\"actions && showBtnSaveToogle\"\r\n [label]=\"txtBtnSaveToogle\"\r\n [icon]=\"iconBtnSaveToogle\"\r\n (click)=\"menu.toggle($event)\"\r\n [loading]=\"isSaveLoading\">\r\n </kv-button-popup>\r\n </div>\r\n</form>\r\n", styles: ["::ng-deep .p-dialog .p-dialog-header{color:#fff!important;background:#002542!important}::ng-deep .p-dialog .p-dialog-content{padding-top:1rem}\n"], dependencies: [{ kind: "directive", type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: i3.Divider, selector: "p-divider", inputs: ["styleClass", "style", "layout", "type", "align"] }, { kind: "component", type: i4.Menu, selector: "p-menu", inputs: ["model", "popup", "style", "styleClass", "appendTo", "autoZIndex", "baseZIndex", "showTransitionOptions", "hideTransitionOptions"], outputs: ["onShow", "onHide"] }, { kind: "component", type: i5.ButtonSecondaryComponent, selector: "kv-button-secondary" }, { kind: "component", type: i6.ButtonSuccessComponent, selector: "kv-button-success" }, { kind: "component", type: i7.ButtonPopupComponent, selector: "kv-button-popup", inputs: ["items"] }, { kind: "directive", type: i1.ɵNgNoValidate, selector: "form:not([ngNoForm]):not([ngNativeValidate])" }, { kind: "directive", type: i1.NgControlStatusGroup, selector: "[formGroupName],[formArrayName],[ngModelGroup],[formGroup],form:not([ngNoForm]),[ngForm]" }, { kind: "directive", type: i1.FormGroupDirective, selector: "[formGroup]", inputs: ["formGroup"], outputs: ["ngSubmit"], exportAs: ["ngForm"] }] });
75
74
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.8", ngImport: i0, type: PageFormComponent, decorators: [{
76
75
  type: Component,
77
- args: [{ selector: 'kv-page-form', template: " <form [formGroup]=\"formGroup\">\r\n <!-- T\u00EDtulo do popup -->\r\n <div class=\"flex flex-row header-dialog-prime header\" *ngIf=\"popup\">\r\n <div class=\"flex flex-column gap-3 col-10 lg:col-6\" style=\"padding: 1rem\">\r\n <div class=\"text-md lg:text-2xl\">{{TituloForm}}</div>\r\n <div class=\"text-xs lg:text-md\" *ngIf=\"enableSubTitle()\">\r\n {{ SubTituloForm }}\r\n </div>\r\n </div>\r\n\r\n <div\r\n class=\"flex align-items-center justify-content-end col-2 lg:col-6\"\r\n style=\"padding-right: 1rem\">\r\n <p-button\r\n icon=\"pi pi-times\"\r\n styleClass=\"p-button-text btn-sair\"\r\n [disabled]=\"disableBtnSair\"\r\n (click)=\"cancel($event)\"></p-button>\r\n </div>\r\n </div>\r\n\r\n <!-- Renderiza\u00E7\u00E3o do form -->\r\n <ng-content></ng-content>\r\n\r\n <!-- Divider -->\r\n <p-divider></p-divider>\r\n\r\n <!-- Barra de a\u00E7\u00F5es -->\r\n <div\r\n class=\"flex-column lg:flex-row flex align-items-center justify-content-end gap-2\">\r\n\r\n <p-menu #menu [popup]=\"true\" [model]=\"actions\" appendTo=\"body\"></p-menu>\r\n\r\n <kv-button-secondary\r\n *ngIf=\"showBtnCancel\"\r\n [label]=\"txtBtnCancel\"\r\n [icon]=\"iconBtnCancel\"\r\n (click)=\"cancel($event)\">\r\n </kv-button-secondary>\r\n\r\n <kv-button-success\r\n *ngIf=\"showBtnSave\"\r\n [label]=\"txtBtnSave\"\r\n [icon]=\"iconBtnSave\"\r\n [loading]=\"isSaveLoading\"\r\n (click)=\"save($event)\">\r\n </kv-button-success>\r\n\r\n <kv-button-popup\r\n *ngIf=\"actions && showBtnSaveToogle\"\r\n [label]=\"txtBtnSaveToogle\"\r\n [icon]=\"iconBtnSaveToogle\"\r\n (click)=\"menu.toggle($event)\"\r\n [loading]=\"isSaveLoading\">\r\n </kv-button-popup>\r\n </div>\r\n</form>\r\n", styles: [".header{height:80px}.texto-dialog-prime.p-dialog.p-confirm-dialog .p-confirm-dialog-message{margin-left:1rem;margin-top:2rem;font-size:14px;text-align:center}.header-dialog-prime{color:#fff;background:#002542;margin-bottom:1rem}.header-dialog-prime-override.p-dialog .p-dialog-header{color:#fff;background:#002542}.icon-dialog-prime.p-dialog .p-dialog-header .p-dialog-header-icon{color:#fff}.dialog-content-prime.p-dialog .p-dialog-content{background:#ffffff;color:#495057;padding:0;overflow:auto}\n"] }]
76
+ args: [{ selector: 'kv-page-form', template: " <form [formGroup]=\"formGroup\">\r\n <!-- T\u00EDtulo do popup -->\r\n <!-- <div class=\"flex flex-row header-dialog-prime header\" *ngIf=\"popup\">\r\n <div class=\"flex flex-column gap-3 col-10 lg:col-6\" style=\"padding: 1rem\">\r\n <div class=\"text-md lg:text-2xl\">{{TituloForm}}</div>\r\n <div class=\"text-xs lg:text-md\" *ngIf=\"enableSubTitle()\">\r\n {{ SubTituloForm }}\r\n </div>\r\n </div>\r\n\r\n <div\r\n class=\"flex align-items-center justify-content-end col-2 lg:col-6\"\r\n style=\"padding-right: 1rem\">\r\n <p-button\r\n icon=\"pi pi-times\"\r\n styleClass=\"p-button-text btn-sair\"\r\n [disabled]=\"disableBtnSair\"\r\n (click)=\"cancel($event)\"></p-button>\r\n </div>\r\n </div> -->\r\n\r\n <!-- Renderiza\u00E7\u00E3o do form -->\r\n <ng-content></ng-content>\r\n\r\n <!-- Divider -->\r\n <p-divider></p-divider>\r\n\r\n <!-- Barra de a\u00E7\u00F5es -->\r\n <div\r\n class=\"flex-column lg:flex-row flex align-items-center justify-content-end gap-2\">\r\n\r\n <p-menu #menu [popup]=\"true\" [model]=\"actions\" appendTo=\"body\"></p-menu>\r\n\r\n <kv-button-secondary\r\n *ngIf=\"showBtnCancel\"\r\n [label]=\"txtBtnCancel\"\r\n [icon]=\"iconBtnCancel\"\r\n (click)=\"cancel($event)\">\r\n </kv-button-secondary>\r\n\r\n <kv-button-success\r\n *ngIf=\"showBtnSave\"\r\n [label]=\"txtBtnSave\"\r\n [icon]=\"iconBtnSave\"\r\n [loading]=\"isSaveLoading\"\r\n (click)=\"save($event)\">\r\n </kv-button-success>\r\n\r\n <kv-button-popup\r\n *ngIf=\"actions && showBtnSaveToogle\"\r\n [label]=\"txtBtnSaveToogle\"\r\n [icon]=\"iconBtnSaveToogle\"\r\n (click)=\"menu.toggle($event)\"\r\n [loading]=\"isSaveLoading\">\r\n </kv-button-popup>\r\n </div>\r\n</form>\r\n", styles: ["::ng-deep .p-dialog .p-dialog-header{color:#fff!important;background:#002542!important}::ng-deep .p-dialog .p-dialog-content{padding-top:1rem}\n"] }]
78
77
  }], ctorParameters: function () { return [{ type: i1.FormBuilder }]; }, propDecorators: { formGroup: [{
79
78
  type: Input
80
79
  }], TituloForm: [{
@@ -112,4 +111,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.8", ngImpor
112
111
  }], onCancel: [{
113
112
  type: Output
114
113
  }] } });
115
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicGFnZS1mb3JtLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2tlZXZvLWNvbXBvbmVudHMvc3JjL2xpYi9wYWdlLWZvcm0vcGFnZS1mb3JtLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2tlZXZvLWNvbXBvbmVudHMvc3JjL2xpYi9wYWdlLWZvcm0vcGFnZS1mb3JtLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxTQUFTLEVBQUUsWUFBWSxFQUFFLEtBQUssRUFBVSxNQUFNLEVBQUUsTUFBTSxlQUFlLENBQUM7Ozs7Ozs7Ozs7QUFTL0UsTUFBTSxPQUFPLGlCQUFpQjtJQWdENUIsWUFBb0IsRUFBZTtRQUFmLE9BQUUsR0FBRixFQUFFLENBQWE7UUExQzFCLGVBQVUsR0FBdUIsRUFBRSxDQUFDO1FBQ3BDLGtCQUFhLEdBQXVCLEVBQUUsQ0FBQztRQUV2QyxVQUFLLEdBQVksS0FBSyxDQUFDO1FBRWhDOztXQUVHO1FBQ00sa0JBQWEsR0FBVyxtQkFBbUIsQ0FBQztRQUM1QyxrQkFBYSxHQUFZLElBQUksQ0FBQztRQUM5QixpQkFBWSxHQUFXLFVBQVUsQ0FBQztRQUUzQzs7V0FFRztRQUNNLGdCQUFXLEdBQVcsWUFBWSxDQUFDO1FBQ25DLGdCQUFXLEdBQVksSUFBSSxDQUFDO1FBQzVCLGVBQVUsR0FBVyxRQUFRLENBQUM7UUFNOUIsc0JBQWlCLEdBQVcsb0JBQW9CLENBQUM7UUFDakQsc0JBQWlCLEdBQVksS0FBSyxDQUFDO1FBQ25DLHFCQUFnQixHQUFXLE9BQU8sQ0FBQztRQUU1Qzs7V0FFRztRQUNNLG1CQUFjLEdBQVksSUFBSSxDQUFDO1FBRXhDOztXQUVHO1FBQ08sV0FBTSxHQUFzQixJQUFJLFlBQVksRUFBRSxDQUFDO1FBRXpEOztXQUVHO1FBQ08sYUFBUSxHQUFzQixJQUFJLFlBQVksRUFBRSxDQUFDO0lBRXBCLENBQUM7SUFFeEMsUUFBUTtRQUNOLElBQUksQ0FBQyxTQUFTLEdBQUcsSUFBSSxDQUFDLEVBQUUsQ0FBQyxLQUFLLENBQUMsRUFBRSxDQUFDLENBQUM7SUFDckMsQ0FBQztJQUVEOzs7T0FHRztJQUNILE1BQU0sQ0FBQyxLQUFZO1FBQ2pCLElBQUksQ0FBQyxRQUFRLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxDQUFDO0lBQzVCLENBQUM7SUFFRDs7O09BR0c7SUFDSCxjQUFjO1FBQ1osSUFBSSxJQUFJLENBQUMsYUFBYTtZQUNwQixPQUFPLElBQUksQ0FBQzs7WUFDVCxPQUFPLEtBQUssQ0FBQztJQUNwQixDQUFDO0lBRUQ7OztPQUdHO0lBQ0gsSUFBSSxDQUFDLEtBQVk7UUFDZixJQUFJLENBQUMsTUFBTSxDQUFDLElBQUksQ0FBQyxLQUFLLENBQUMsQ0FBQztJQUMxQixDQUFDOzs4R0E5RVUsaUJBQWlCO2tHQUFqQixpQkFBaUIsbWxCQ1Q5QixxMERBeURBOzJGRGhEYSxpQkFBaUI7a0JBTDdCLFNBQVM7K0JBQ0UsY0FBYztrR0FTZixTQUFTO3NCQUFqQixLQUFLO2dCQUNHLFVBQVU7c0JBQWxCLEtBQUs7Z0JBQ0csYUFBYTtzQkFBckIsS0FBSztnQkFDRyxhQUFhO3NCQUFyQixLQUFLO2dCQUNHLEtBQUs7c0JBQWIsS0FBSztnQkFLRyxhQUFhO3NCQUFyQixLQUFLO2dCQUNHLGFBQWE7c0JBQXJCLEtBQUs7Z0JBQ0csWUFBWTtzQkFBcEIsS0FBSztnQkFLRyxXQUFXO3NCQUFuQixLQUFLO2dCQUNHLFdBQVc7c0JBQW5CLEtBQUs7Z0JBQ0csVUFBVTtzQkFBbEIsS0FBSztnQkFLRyxPQUFPO3NCQUFmLEtBQUs7Z0JBQ0csaUJBQWlCO3NCQUF6QixLQUFLO2dCQUNHLGlCQUFpQjtzQkFBekIsS0FBSztnQkFDRyxnQkFBZ0I7c0JBQXhCLEtBQUs7Z0JBS0csY0FBYztzQkFBdEIsS0FBSztnQkFLSSxNQUFNO3NCQUFmLE1BQU07Z0JBS0csUUFBUTtzQkFBakIsTUFBTSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENvbXBvbmVudCwgRXZlbnRFbWl0dGVyLCBJbnB1dCwgT25Jbml0LCBPdXRwdXQgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuaW1wb3J0IHsgRm9ybUJ1aWxkZXIsIEZvcm1Hcm91cCB9IGZyb20gJ0Bhbmd1bGFyL2Zvcm1zJztcclxuaW1wb3J0IHsgQWN0aW9uSXRlbSB9IGZyb20gJy4uL2FwaS9jb21wb25lbnRzL3RhYmxlL2FjdGlvbi1pdGVtJztcclxuXHJcbkBDb21wb25lbnQoe1xyXG4gIHNlbGVjdG9yOiAna3YtcGFnZS1mb3JtJyxcclxuICB0ZW1wbGF0ZVVybDogJy4vcGFnZS1mb3JtLmNvbXBvbmVudC5odG1sJyxcclxuICBzdHlsZVVybHM6IFsnLi9wYWdlLWZvcm0uY29tcG9uZW50LnNjc3MnXVxyXG59KVxyXG5leHBvcnQgY2xhc3MgUGFnZUZvcm1Db21wb25lbnQgaW1wbGVtZW50cyBPbkluaXQge1xyXG5cclxuICAvKipcclxuICAgKiBDb25maWd1cmHDp8O1ZXMgZG8gZm9ybXVsw6FyaW9cclxuICAgKi9cclxuICBASW5wdXQoKSBmb3JtR3JvdXAhOiBGb3JtR3JvdXA7XHJcbiAgQElucHV0KCkgVGl0dWxvRm9ybTogc3RyaW5nIHwgdW5kZWZpbmVkID0gJyc7XHJcbiAgQElucHV0KCkgU3ViVGl0dWxvRm9ybTogc3RyaW5nIHwgdW5kZWZpbmVkID0gJyc7XHJcbiAgQElucHV0KCkgaXNTYXZlTG9hZGluZyE6IGJvb2xlYW47XHJcbiAgQElucHV0KCkgcG9wdXA6IGJvb2xlYW4gPSBmYWxzZTtcclxuXHJcbiAgLyoqXHJcbiAgICogQm90w6NvIGNhbmNlbGFyXHJcbiAgICovXHJcbiAgQElucHV0KCkgaWNvbkJ0bkNhbmNlbDogc3RyaW5nID0gJ3BpIHBpLWZ3IHBpLXRpbWVzJztcclxuICBASW5wdXQoKSBzaG93QnRuQ2FuY2VsOiBib29sZWFuID0gdHJ1ZTtcclxuICBASW5wdXQoKSB0eHRCdG5DYW5jZWw6IHN0cmluZyA9IFwiQ2FuY2VsYXJcIjtcclxuXHJcbiAgLyoqXHJcbiAgICogQm90w6NvIHNhbHZhclxyXG4gICAqL1xyXG4gIEBJbnB1dCgpIGljb25CdG5TYXZlOiBzdHJpbmcgPSAncGkgcGktc2F2ZSc7XHJcbiAgQElucHV0KCkgc2hvd0J0blNhdmU6IGJvb2xlYW4gPSB0cnVlO1xyXG4gIEBJbnB1dCgpIHR4dEJ0blNhdmU6IHN0cmluZyA9IFwiU2FsdmFyXCI7XHJcblxyXG4gIC8qKlxyXG4gICAqIEJvdMOjbyBkZSBvcMOnw7Vlc1xyXG4gICAqL1xyXG4gIEBJbnB1dCgpIGFjdGlvbnMhOiBBY3Rpb25JdGVtW107XHJcbiAgQElucHV0KCkgaWNvbkJ0blNhdmVUb29nbGU6IHN0cmluZyA9IFwicGkgcGktY2hldnJvbi1kb3duXCI7XHJcbiAgQElucHV0KCkgc2hvd0J0blNhdmVUb29nbGU6IGJvb2xlYW4gPSBmYWxzZTtcclxuICBASW5wdXQoKSB0eHRCdG5TYXZlVG9vZ2xlOiBzdHJpbmcgPSBcIkHDp8O1ZXNcIjtcclxuXHJcbiAgLyoqXHJcbiAgICogQm90w6NvIGZlY2hhclxyXG4gICAqL1xyXG4gIEBJbnB1dCgpIGRpc2FibGVCdG5TYWlyOiBib29sZWFuID0gdHJ1ZTtcclxuXHJcbiAgLyoqXHJcbiAgICogU2FsdmFyIGRhZG9zXHJcbiAgICovXHJcbiAgQE91dHB1dCgpIG9uU2F2ZTogRXZlbnRFbWl0dGVyPGFueT4gPSBuZXcgRXZlbnRFbWl0dGVyKCk7XHJcblxyXG4gIC8qKlxyXG4gICAqIENhbmNlbGFyXHJcbiAgICovXHJcbiAgQE91dHB1dCgpIG9uQ2FuY2VsOiBFdmVudEVtaXR0ZXI8YW55PiA9IG5ldyBFdmVudEVtaXR0ZXIoKTtcclxuXHJcbiAgY29uc3RydWN0b3IocHJpdmF0ZSBmYjogRm9ybUJ1aWxkZXIpIHsgfVxyXG5cclxuICBuZ09uSW5pdCgpIHtcclxuICAgIHRoaXMuZm9ybUdyb3VwID0gdGhpcy5mYi5ncm91cCh7fSk7XHJcbiAgfVxyXG5cclxuICAvKipcclxuICAgKiBEaXNwYXJhIG8gbcOpdG9kbyBkZSBjYW5jZWxhbWVudG8gZGEgdGVsYVxyXG4gICAqIEBwYXJhbSBldmVudCBldmVudG9cclxuICAgKi9cclxuICBjYW5jZWwoZXZlbnQ6IEV2ZW50KSB7XHJcbiAgICB0aGlzLm9uQ2FuY2VsLmVtaXQoZXZlbnQpO1xyXG4gIH1cclxuXHJcbiAgLyoqXHJcbiAgICogTcOpdG9kbyBwYXJhIGhhYmlsaXRhciBvIHN1YiB0w610dWxvIGRhIHRlbGFcclxuICAgKiBAcmV0dXJucyBUcnVlL0ZhbHNlXHJcbiAgICovXHJcbiAgZW5hYmxlU3ViVGl0bGUoKTogYm9vbGVhbiB7XHJcbiAgICBpZiAodGhpcy5TdWJUaXR1bG9Gb3JtKVxyXG4gICAgICByZXR1cm4gdHJ1ZTtcclxuICAgIGVsc2UgcmV0dXJuIGZhbHNlO1xyXG4gIH1cclxuXHJcbiAgLyoqXHJcbiAgICogRGlzcGFyYSBvIG3DqXRvZG8gZGUgc2FsdmFyIGRhIHRlbGFcclxuICAgKiBAcGFyYW0gZXZlbnQgZXZlbnRvXHJcbiAgICovXHJcbiAgc2F2ZShldmVudDogRXZlbnQpIHtcclxuICAgIHRoaXMub25TYXZlLmVtaXQoZXZlbnQpO1xyXG4gIH1cclxufVxyXG4iLCIgPGZvcm0gW2Zvcm1Hcm91cF09XCJmb3JtR3JvdXBcIj5cclxuICA8IS0tIFTDrXR1bG8gZG8gcG9wdXAgLS0+XHJcbiAgPGRpdiBjbGFzcz1cImZsZXggZmxleC1yb3cgaGVhZGVyLWRpYWxvZy1wcmltZSBoZWFkZXJcIiAqbmdJZj1cInBvcHVwXCI+XHJcbiAgICA8ZGl2IGNsYXNzPVwiZmxleCBmbGV4LWNvbHVtbiBnYXAtMyBjb2wtMTAgbGc6Y29sLTZcIiBzdHlsZT1cInBhZGRpbmc6IDFyZW1cIj5cclxuICAgICAgPGRpdiBjbGFzcz1cInRleHQtbWQgbGc6dGV4dC0yeGxcIj57e1RpdHVsb0Zvcm19fTwvZGl2PlxyXG4gICAgICA8ZGl2IGNsYXNzPVwidGV4dC14cyBsZzp0ZXh0LW1kXCIgKm5nSWY9XCJlbmFibGVTdWJUaXRsZSgpXCI+XHJcbiAgICAgICAge3sgU3ViVGl0dWxvRm9ybSB9fVxyXG4gICAgICA8L2Rpdj5cclxuICAgIDwvZGl2PlxyXG5cclxuICAgIDxkaXZcclxuICAgICAgY2xhc3M9XCJmbGV4IGFsaWduLWl0ZW1zLWNlbnRlciBqdXN0aWZ5LWNvbnRlbnQtZW5kIGNvbC0yIGxnOmNvbC02XCJcclxuICAgICAgc3R5bGU9XCJwYWRkaW5nLXJpZ2h0OiAxcmVtXCI+XHJcbiAgICAgIDxwLWJ1dHRvblxyXG4gICAgICAgIGljb249XCJwaSBwaS10aW1lc1wiXHJcbiAgICAgICAgc3R5bGVDbGFzcz1cInAtYnV0dG9uLXRleHQgYnRuLXNhaXJcIlxyXG4gICAgICAgIFtkaXNhYmxlZF09XCJkaXNhYmxlQnRuU2FpclwiXHJcbiAgICAgICAgKGNsaWNrKT1cImNhbmNlbCgkZXZlbnQpXCI+PC9wLWJ1dHRvbj5cclxuICAgIDwvZGl2PlxyXG4gIDwvZGl2PlxyXG5cclxuICA8IS0tIFJlbmRlcml6YcOnw6NvIGRvIGZvcm0gLS0+XHJcbiAgPG5nLWNvbnRlbnQ+PC9uZy1jb250ZW50PlxyXG5cclxuICA8IS0tIERpdmlkZXIgLS0+XHJcbiAgPHAtZGl2aWRlcj48L3AtZGl2aWRlcj5cclxuXHJcbiAgPCEtLSBCYXJyYSBkZSBhw6fDtWVzIC0tPlxyXG4gIDxkaXZcclxuICAgIGNsYXNzPVwiZmxleC1jb2x1bW4gbGc6ZmxleC1yb3cgZmxleCBhbGlnbi1pdGVtcy1jZW50ZXIganVzdGlmeS1jb250ZW50LWVuZCBnYXAtMlwiPlxyXG5cclxuICAgIDxwLW1lbnUgI21lbnUgW3BvcHVwXT1cInRydWVcIiBbbW9kZWxdPVwiYWN0aW9uc1wiIGFwcGVuZFRvPVwiYm9keVwiPjwvcC1tZW51PlxyXG5cclxuICAgIDxrdi1idXR0b24tc2Vjb25kYXJ5XHJcbiAgICAgICpuZ0lmPVwic2hvd0J0bkNhbmNlbFwiXHJcbiAgICAgIFtsYWJlbF09XCJ0eHRCdG5DYW5jZWxcIlxyXG4gICAgICBbaWNvbl09XCJpY29uQnRuQ2FuY2VsXCJcclxuICAgICAgKGNsaWNrKT1cImNhbmNlbCgkZXZlbnQpXCI+XHJcbiAgICA8L2t2LWJ1dHRvbi1zZWNvbmRhcnk+XHJcblxyXG4gICAgPGt2LWJ1dHRvbi1zdWNjZXNzXHJcbiAgICAgICpuZ0lmPVwic2hvd0J0blNhdmVcIlxyXG4gICAgICBbbGFiZWxdPVwidHh0QnRuU2F2ZVwiXHJcbiAgICAgIFtpY29uXT1cImljb25CdG5TYXZlXCJcclxuICAgICAgW2xvYWRpbmddPVwiaXNTYXZlTG9hZGluZ1wiXHJcbiAgICAgIChjbGljayk9XCJzYXZlKCRldmVudClcIj5cclxuICAgIDwva3YtYnV0dG9uLXN1Y2Nlc3M+XHJcblxyXG4gICAgPGt2LWJ1dHRvbi1wb3B1cFxyXG4gICAgICAqbmdJZj1cImFjdGlvbnMgJiYgc2hvd0J0blNhdmVUb29nbGVcIlxyXG4gICAgICBbbGFiZWxdPVwidHh0QnRuU2F2ZVRvb2dsZVwiXHJcbiAgICAgIFtpY29uXT1cImljb25CdG5TYXZlVG9vZ2xlXCJcclxuICAgICAgKGNsaWNrKT1cIm1lbnUudG9nZ2xlKCRldmVudClcIlxyXG4gICAgICBbbG9hZGluZ109XCJpc1NhdmVMb2FkaW5nXCI+XHJcbiAgICA8L2t2LWJ1dHRvbi1wb3B1cD5cclxuICA8L2Rpdj5cclxuPC9mb3JtPlxyXG4iXX0=
114
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicGFnZS1mb3JtLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2tlZXZvLWNvbXBvbmVudHMvc3JjL2xpYi9wYWdlLWZvcm0vcGFnZS1mb3JtLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2tlZXZvLWNvbXBvbmVudHMvc3JjL2xpYi9wYWdlLWZvcm0vcGFnZS1mb3JtLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxTQUFTLEVBQUUsWUFBWSxFQUFFLEtBQUssRUFBVSxNQUFNLEVBQUUsTUFBTSxlQUFlLENBQUM7Ozs7Ozs7OztBQVMvRSxNQUFNLE9BQU8saUJBQWlCO0lBZ0Q1QixZQUFvQixFQUFlO1FBQWYsT0FBRSxHQUFGLEVBQUUsQ0FBYTtRQTFDMUIsZUFBVSxHQUF1QixFQUFFLENBQUM7UUFDcEMsa0JBQWEsR0FBdUIsRUFBRSxDQUFDO1FBRXZDLFVBQUssR0FBWSxLQUFLLENBQUM7UUFFaEM7O1dBRUc7UUFDTSxrQkFBYSxHQUFXLG1CQUFtQixDQUFDO1FBQzVDLGtCQUFhLEdBQVksSUFBSSxDQUFDO1FBQzlCLGlCQUFZLEdBQVcsVUFBVSxDQUFDO1FBRTNDOztXQUVHO1FBQ00sZ0JBQVcsR0FBVyxZQUFZLENBQUM7UUFDbkMsZ0JBQVcsR0FBWSxJQUFJLENBQUM7UUFDNUIsZUFBVSxHQUFXLFFBQVEsQ0FBQztRQU05QixzQkFBaUIsR0FBVyxvQkFBb0IsQ0FBQztRQUNqRCxzQkFBaUIsR0FBWSxLQUFLLENBQUM7UUFDbkMscUJBQWdCLEdBQVcsT0FBTyxDQUFDO1FBRTVDOztXQUVHO1FBQ00sbUJBQWMsR0FBWSxJQUFJLENBQUM7UUFFeEM7O1dBRUc7UUFDTyxXQUFNLEdBQXNCLElBQUksWUFBWSxFQUFFLENBQUM7UUFFekQ7O1dBRUc7UUFDTyxhQUFRLEdBQXNCLElBQUksWUFBWSxFQUFFLENBQUM7SUFFcEIsQ0FBQztJQUV4QyxRQUFRO1FBQ04sSUFBSSxDQUFDLFNBQVMsR0FBRyxJQUFJLENBQUMsRUFBRSxDQUFDLEtBQUssQ0FBQyxFQUFFLENBQUMsQ0FBQztJQUNyQyxDQUFDO0lBRUQ7OztPQUdHO0lBQ0gsTUFBTSxDQUFDLEtBQVk7UUFDakIsSUFBSSxDQUFDLFFBQVEsQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLENBQUM7SUFDNUIsQ0FBQztJQUVEOzs7T0FHRztJQUNILGNBQWM7UUFDWixJQUFJLElBQUksQ0FBQyxhQUFhO1lBQ3BCLE9BQU8sSUFBSSxDQUFDOztZQUNULE9BQU8sS0FBSyxDQUFDO0lBQ3BCLENBQUM7SUFFRDs7O09BR0c7SUFDSCxJQUFJLENBQUMsS0FBWTtRQUNmLElBQUksQ0FBQyxNQUFNLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxDQUFDO0lBQzFCLENBQUM7OzhHQTlFVSxpQkFBaUI7a0dBQWpCLGlCQUFpQixtbEJDVDlCLDgwREF5REE7MkZEaERhLGlCQUFpQjtrQkFMN0IsU0FBUzsrQkFDRSxjQUFjO2tHQVNmLFNBQVM7c0JBQWpCLEtBQUs7Z0JBQ0csVUFBVTtzQkFBbEIsS0FBSztnQkFDRyxhQUFhO3NCQUFyQixLQUFLO2dCQUNHLGFBQWE7c0JBQXJCLEtBQUs7Z0JBQ0csS0FBSztzQkFBYixLQUFLO2dCQUtHLGFBQWE7c0JBQXJCLEtBQUs7Z0JBQ0csYUFBYTtzQkFBckIsS0FBSztnQkFDRyxZQUFZO3NCQUFwQixLQUFLO2dCQUtHLFdBQVc7c0JBQW5CLEtBQUs7Z0JBQ0csV0FBVztzQkFBbkIsS0FBSztnQkFDRyxVQUFVO3NCQUFsQixLQUFLO2dCQUtHLE9BQU87c0JBQWYsS0FBSztnQkFDRyxpQkFBaUI7c0JBQXpCLEtBQUs7Z0JBQ0csaUJBQWlCO3NCQUF6QixLQUFLO2dCQUNHLGdCQUFnQjtzQkFBeEIsS0FBSztnQkFLRyxjQUFjO3NCQUF0QixLQUFLO2dCQUtJLE1BQU07c0JBQWYsTUFBTTtnQkFLRyxRQUFRO3NCQUFqQixNQUFNIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29tcG9uZW50LCBFdmVudEVtaXR0ZXIsIElucHV0LCBPbkluaXQsIE91dHB1dCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xyXG5pbXBvcnQgeyBGb3JtQnVpbGRlciwgRm9ybUdyb3VwIH0gZnJvbSAnQGFuZ3VsYXIvZm9ybXMnO1xyXG5pbXBvcnQgeyBBY3Rpb25JdGVtIH0gZnJvbSAnLi4vYXBpL2NvbXBvbmVudHMvdGFibGUvYWN0aW9uLWl0ZW0nO1xyXG5cclxuQENvbXBvbmVudCh7XHJcbiAgc2VsZWN0b3I6ICdrdi1wYWdlLWZvcm0nLFxyXG4gIHRlbXBsYXRlVXJsOiAnLi9wYWdlLWZvcm0uY29tcG9uZW50Lmh0bWwnLFxyXG4gIHN0eWxlVXJsczogWycuL3BhZ2UtZm9ybS5jb21wb25lbnQuc2NzcyddXHJcbn0pXHJcbmV4cG9ydCBjbGFzcyBQYWdlRm9ybUNvbXBvbmVudCBpbXBsZW1lbnRzIE9uSW5pdCB7XHJcblxyXG4gIC8qKlxyXG4gICAqIENvbmZpZ3VyYcOnw7VlcyBkbyBmb3JtdWzDoXJpb1xyXG4gICAqL1xyXG4gIEBJbnB1dCgpIGZvcm1Hcm91cCE6IEZvcm1Hcm91cDtcclxuICBASW5wdXQoKSBUaXR1bG9Gb3JtOiBzdHJpbmcgfCB1bmRlZmluZWQgPSAnJztcclxuICBASW5wdXQoKSBTdWJUaXR1bG9Gb3JtOiBzdHJpbmcgfCB1bmRlZmluZWQgPSAnJztcclxuICBASW5wdXQoKSBpc1NhdmVMb2FkaW5nITogYm9vbGVhbjtcclxuICBASW5wdXQoKSBwb3B1cDogYm9vbGVhbiA9IGZhbHNlO1xyXG5cclxuICAvKipcclxuICAgKiBCb3TDo28gY2FuY2VsYXJcclxuICAgKi9cclxuICBASW5wdXQoKSBpY29uQnRuQ2FuY2VsOiBzdHJpbmcgPSAncGkgcGktZncgcGktdGltZXMnO1xyXG4gIEBJbnB1dCgpIHNob3dCdG5DYW5jZWw6IGJvb2xlYW4gPSB0cnVlO1xyXG4gIEBJbnB1dCgpIHR4dEJ0bkNhbmNlbDogc3RyaW5nID0gXCJDYW5jZWxhclwiO1xyXG5cclxuICAvKipcclxuICAgKiBCb3TDo28gc2FsdmFyXHJcbiAgICovXHJcbiAgQElucHV0KCkgaWNvbkJ0blNhdmU6IHN0cmluZyA9ICdwaSBwaS1zYXZlJztcclxuICBASW5wdXQoKSBzaG93QnRuU2F2ZTogYm9vbGVhbiA9IHRydWU7XHJcbiAgQElucHV0KCkgdHh0QnRuU2F2ZTogc3RyaW5nID0gXCJTYWx2YXJcIjtcclxuXHJcbiAgLyoqXHJcbiAgICogQm90w6NvIGRlIG9ww6fDtWVzXHJcbiAgICovXHJcbiAgQElucHV0KCkgYWN0aW9ucyE6IEFjdGlvbkl0ZW1bXTtcclxuICBASW5wdXQoKSBpY29uQnRuU2F2ZVRvb2dsZTogc3RyaW5nID0gXCJwaSBwaS1jaGV2cm9uLWRvd25cIjtcclxuICBASW5wdXQoKSBzaG93QnRuU2F2ZVRvb2dsZTogYm9vbGVhbiA9IGZhbHNlO1xyXG4gIEBJbnB1dCgpIHR4dEJ0blNhdmVUb29nbGU6IHN0cmluZyA9IFwiQcOnw7Vlc1wiO1xyXG5cclxuICAvKipcclxuICAgKiBCb3TDo28gZmVjaGFyXHJcbiAgICovXHJcbiAgQElucHV0KCkgZGlzYWJsZUJ0blNhaXI6IGJvb2xlYW4gPSB0cnVlO1xyXG5cclxuICAvKipcclxuICAgKiBTYWx2YXIgZGFkb3NcclxuICAgKi9cclxuICBAT3V0cHV0KCkgb25TYXZlOiBFdmVudEVtaXR0ZXI8YW55PiA9IG5ldyBFdmVudEVtaXR0ZXIoKTtcclxuXHJcbiAgLyoqXHJcbiAgICogQ2FuY2VsYXJcclxuICAgKi9cclxuICBAT3V0cHV0KCkgb25DYW5jZWw6IEV2ZW50RW1pdHRlcjxhbnk+ID0gbmV3IEV2ZW50RW1pdHRlcigpO1xyXG5cclxuICBjb25zdHJ1Y3Rvcihwcml2YXRlIGZiOiBGb3JtQnVpbGRlcikgeyB9XHJcblxyXG4gIG5nT25Jbml0KCkge1xyXG4gICAgdGhpcy5mb3JtR3JvdXAgPSB0aGlzLmZiLmdyb3VwKHt9KTtcclxuICB9XHJcblxyXG4gIC8qKlxyXG4gICAqIERpc3BhcmEgbyBtw6l0b2RvIGRlIGNhbmNlbGFtZW50byBkYSB0ZWxhXHJcbiAgICogQHBhcmFtIGV2ZW50IGV2ZW50b1xyXG4gICAqL1xyXG4gIGNhbmNlbChldmVudDogRXZlbnQpIHtcclxuICAgIHRoaXMub25DYW5jZWwuZW1pdChldmVudCk7XHJcbiAgfVxyXG5cclxuICAvKipcclxuICAgKiBNw6l0b2RvIHBhcmEgaGFiaWxpdGFyIG8gc3ViIHTDrXR1bG8gZGEgdGVsYVxyXG4gICAqIEByZXR1cm5zIFRydWUvRmFsc2VcclxuICAgKi9cclxuICBlbmFibGVTdWJUaXRsZSgpOiBib29sZWFuIHtcclxuICAgIGlmICh0aGlzLlN1YlRpdHVsb0Zvcm0pXHJcbiAgICAgIHJldHVybiB0cnVlO1xyXG4gICAgZWxzZSByZXR1cm4gZmFsc2U7XHJcbiAgfVxyXG5cclxuICAvKipcclxuICAgKiBEaXNwYXJhIG8gbcOpdG9kbyBkZSBzYWx2YXIgZGEgdGVsYVxyXG4gICAqIEBwYXJhbSBldmVudCBldmVudG9cclxuICAgKi9cclxuICBzYXZlKGV2ZW50OiBFdmVudCkge1xyXG4gICAgdGhpcy5vblNhdmUuZW1pdChldmVudCk7XHJcbiAgfVxyXG59XHJcbiIsIiA8Zm9ybSBbZm9ybUdyb3VwXT1cImZvcm1Hcm91cFwiPlxyXG4gIDwhLS0gVMOtdHVsbyBkbyBwb3B1cCAtLT5cclxuICA8IS0tIDxkaXYgY2xhc3M9XCJmbGV4IGZsZXgtcm93IGhlYWRlci1kaWFsb2ctcHJpbWUgaGVhZGVyXCIgKm5nSWY9XCJwb3B1cFwiPlxyXG4gICAgPGRpdiBjbGFzcz1cImZsZXggZmxleC1jb2x1bW4gZ2FwLTMgY29sLTEwIGxnOmNvbC02XCIgc3R5bGU9XCJwYWRkaW5nOiAxcmVtXCI+XHJcbiAgICAgIDxkaXYgY2xhc3M9XCJ0ZXh0LW1kIGxnOnRleHQtMnhsXCI+e3tUaXR1bG9Gb3JtfX08L2Rpdj5cclxuICAgICAgPGRpdiBjbGFzcz1cInRleHQteHMgbGc6dGV4dC1tZFwiICpuZ0lmPVwiZW5hYmxlU3ViVGl0bGUoKVwiPlxyXG4gICAgICAgIHt7IFN1YlRpdHVsb0Zvcm0gfX1cclxuICAgICAgPC9kaXY+XHJcbiAgICA8L2Rpdj5cclxuXHJcbiAgICA8ZGl2XHJcbiAgICAgIGNsYXNzPVwiZmxleCBhbGlnbi1pdGVtcy1jZW50ZXIganVzdGlmeS1jb250ZW50LWVuZCBjb2wtMiBsZzpjb2wtNlwiXHJcbiAgICAgIHN0eWxlPVwicGFkZGluZy1yaWdodDogMXJlbVwiPlxyXG4gICAgICA8cC1idXR0b25cclxuICAgICAgICBpY29uPVwicGkgcGktdGltZXNcIlxyXG4gICAgICAgIHN0eWxlQ2xhc3M9XCJwLWJ1dHRvbi10ZXh0IGJ0bi1zYWlyXCJcclxuICAgICAgICBbZGlzYWJsZWRdPVwiZGlzYWJsZUJ0blNhaXJcIlxyXG4gICAgICAgIChjbGljayk9XCJjYW5jZWwoJGV2ZW50KVwiPjwvcC1idXR0b24+XHJcbiAgICA8L2Rpdj5cclxuICA8L2Rpdj4gLS0+XHJcblxyXG4gIDwhLS0gUmVuZGVyaXphw6fDo28gZG8gZm9ybSAtLT5cclxuICA8bmctY29udGVudD48L25nLWNvbnRlbnQ+XHJcblxyXG4gIDwhLS0gRGl2aWRlciAtLT5cclxuICA8cC1kaXZpZGVyPjwvcC1kaXZpZGVyPlxyXG5cclxuICA8IS0tIEJhcnJhIGRlIGHDp8O1ZXMgLS0+XHJcbiAgPGRpdlxyXG4gICAgY2xhc3M9XCJmbGV4LWNvbHVtbiBsZzpmbGV4LXJvdyBmbGV4IGFsaWduLWl0ZW1zLWNlbnRlciBqdXN0aWZ5LWNvbnRlbnQtZW5kIGdhcC0yXCI+XHJcblxyXG4gICAgPHAtbWVudSAjbWVudSBbcG9wdXBdPVwidHJ1ZVwiIFttb2RlbF09XCJhY3Rpb25zXCIgYXBwZW5kVG89XCJib2R5XCI+PC9wLW1lbnU+XHJcblxyXG4gICAgPGt2LWJ1dHRvbi1zZWNvbmRhcnlcclxuICAgICAgKm5nSWY9XCJzaG93QnRuQ2FuY2VsXCJcclxuICAgICAgW2xhYmVsXT1cInR4dEJ0bkNhbmNlbFwiXHJcbiAgICAgIFtpY29uXT1cImljb25CdG5DYW5jZWxcIlxyXG4gICAgICAoY2xpY2spPVwiY2FuY2VsKCRldmVudClcIj5cclxuICAgIDwva3YtYnV0dG9uLXNlY29uZGFyeT5cclxuXHJcbiAgICA8a3YtYnV0dG9uLXN1Y2Nlc3NcclxuICAgICAgKm5nSWY9XCJzaG93QnRuU2F2ZVwiXHJcbiAgICAgIFtsYWJlbF09XCJ0eHRCdG5TYXZlXCJcclxuICAgICAgW2ljb25dPVwiaWNvbkJ0blNhdmVcIlxyXG4gICAgICBbbG9hZGluZ109XCJpc1NhdmVMb2FkaW5nXCJcclxuICAgICAgKGNsaWNrKT1cInNhdmUoJGV2ZW50KVwiPlxyXG4gICAgPC9rdi1idXR0b24tc3VjY2Vzcz5cclxuXHJcbiAgICA8a3YtYnV0dG9uLXBvcHVwXHJcbiAgICAgICpuZ0lmPVwiYWN0aW9ucyAmJiBzaG93QnRuU2F2ZVRvb2dsZVwiXHJcbiAgICAgIFtsYWJlbF09XCJ0eHRCdG5TYXZlVG9vZ2xlXCJcclxuICAgICAgW2ljb25dPVwiaWNvbkJ0blNhdmVUb29nbGVcIlxyXG4gICAgICAoY2xpY2spPVwibWVudS50b2dnbGUoJGV2ZW50KVwiXHJcbiAgICAgIFtsb2FkaW5nXT1cImlzU2F2ZUxvYWRpbmdcIj5cclxuICAgIDwva3YtYnV0dG9uLXBvcHVwPlxyXG4gIDwvZGl2PlxyXG48L2Zvcm0+XHJcbiJdfQ==
@@ -793,6 +793,7 @@ class BaseComponentCrudForm extends BaseComponentCrud {
793
793
  this.registry = data;
794
794
  this.setFormValues(this.registry);
795
795
  this.loadGrids();
796
+ this.setTitlePopup();
796
797
  });
797
798
  }
798
799
  loadGrids() { }
@@ -828,6 +829,7 @@ class BaseComponentCrudForm extends BaseComponentCrud {
828
829
  else {
829
830
  this.isNewRegistry = true;
830
831
  this.loadGrids();
832
+ this.setTitlePopup();
831
833
  }
832
834
  });
833
835
  }
@@ -870,6 +872,16 @@ class BaseComponentCrudForm extends BaseComponentCrud {
870
872
  this.formGroup.patchValue(values, { emitEvent: false });
871
873
  this.onSetFormValues = false;
872
874
  }
875
+ /**
876
+ * Seta o título do popup
877
+ */
878
+ setTitlePopup() {
879
+ var _a;
880
+ if (this.popup) {
881
+ if (this.dynamicDialogConfig)
882
+ this.dynamicDialogConfig.header = (_a = this.dadosTela) === null || _a === void 0 ? void 0 : _a.tituloForm;
883
+ }
884
+ }
873
885
  /**
874
886
  * Atualiza o validador de um componente do formGroup
875
887
  * @param controName - Nome do controle
@@ -4073,10 +4085,10 @@ class PageFormComponent {
4073
4085
  }
4074
4086
  }
4075
4087
  PageFormComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.8", ngImport: i0, type: PageFormComponent, deps: [{ token: i2$1.FormBuilder }], target: i0.ɵɵFactoryTarget.Component });
4076
- PageFormComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.2.8", type: PageFormComponent, selector: "kv-page-form", inputs: { formGroup: "formGroup", TituloForm: "TituloForm", SubTituloForm: "SubTituloForm", isSaveLoading: "isSaveLoading", popup: "popup", iconBtnCancel: "iconBtnCancel", showBtnCancel: "showBtnCancel", txtBtnCancel: "txtBtnCancel", iconBtnSave: "iconBtnSave", showBtnSave: "showBtnSave", txtBtnSave: "txtBtnSave", actions: "actions", iconBtnSaveToogle: "iconBtnSaveToogle", showBtnSaveToogle: "showBtnSaveToogle", txtBtnSaveToogle: "txtBtnSaveToogle", disableBtnSair: "disableBtnSair" }, outputs: { onSave: "onSave", onCancel: "onCancel" }, ngImport: i0, template: " <form [formGroup]=\"formGroup\">\r\n <!-- T\u00EDtulo do popup -->\r\n <div class=\"flex flex-row header-dialog-prime header\" *ngIf=\"popup\">\r\n <div class=\"flex flex-column gap-3 col-10 lg:col-6\" style=\"padding: 1rem\">\r\n <div class=\"text-md lg:text-2xl\">{{TituloForm}}</div>\r\n <div class=\"text-xs lg:text-md\" *ngIf=\"enableSubTitle()\">\r\n {{ SubTituloForm }}\r\n </div>\r\n </div>\r\n\r\n <div\r\n class=\"flex align-items-center justify-content-end col-2 lg:col-6\"\r\n style=\"padding-right: 1rem\">\r\n <p-button\r\n icon=\"pi pi-times\"\r\n styleClass=\"p-button-text btn-sair\"\r\n [disabled]=\"disableBtnSair\"\r\n (click)=\"cancel($event)\"></p-button>\r\n </div>\r\n </div>\r\n\r\n <!-- Renderiza\u00E7\u00E3o do form -->\r\n <ng-content></ng-content>\r\n\r\n <!-- Divider -->\r\n <p-divider></p-divider>\r\n\r\n <!-- Barra de a\u00E7\u00F5es -->\r\n <div\r\n class=\"flex-column lg:flex-row flex align-items-center justify-content-end gap-2\">\r\n\r\n <p-menu #menu [popup]=\"true\" [model]=\"actions\" appendTo=\"body\"></p-menu>\r\n\r\n <kv-button-secondary\r\n *ngIf=\"showBtnCancel\"\r\n [label]=\"txtBtnCancel\"\r\n [icon]=\"iconBtnCancel\"\r\n (click)=\"cancel($event)\">\r\n </kv-button-secondary>\r\n\r\n <kv-button-success\r\n *ngIf=\"showBtnSave\"\r\n [label]=\"txtBtnSave\"\r\n [icon]=\"iconBtnSave\"\r\n [loading]=\"isSaveLoading\"\r\n (click)=\"save($event)\">\r\n </kv-button-success>\r\n\r\n <kv-button-popup\r\n *ngIf=\"actions && showBtnSaveToogle\"\r\n [label]=\"txtBtnSaveToogle\"\r\n [icon]=\"iconBtnSaveToogle\"\r\n (click)=\"menu.toggle($event)\"\r\n [loading]=\"isSaveLoading\">\r\n </kv-button-popup>\r\n </div>\r\n</form>\r\n", styles: [".header{height:80px}.texto-dialog-prime.p-dialog.p-confirm-dialog .p-confirm-dialog-message{margin-left:1rem;margin-top:2rem;font-size:14px;text-align:center}.header-dialog-prime{color:#fff;background:#002542;margin-bottom:1rem}.header-dialog-prime-override.p-dialog .p-dialog-header{color:#fff;background:#002542}.icon-dialog-prime.p-dialog .p-dialog-header .p-dialog-header-icon{color:#fff}.dialog-content-prime.p-dialog .p-dialog-content{background:#ffffff;color:#495057;padding:0;overflow:auto}\n"], dependencies: [{ kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: i1$1.Button, selector: "p-button", inputs: ["type", "iconPos", "icon", "badge", "label", "disabled", "loading", "loadingIcon", "style", "styleClass", "badgeClass", "ariaLabel"], outputs: ["onClick", "onFocus", "onBlur"] }, { kind: "component", type: i9.Divider, selector: "p-divider", inputs: ["styleClass", "style", "layout", "type", "align"] }, { kind: "component", type: i5.Menu, selector: "p-menu", inputs: ["model", "popup", "style", "styleClass", "appendTo", "autoZIndex", "baseZIndex", "showTransitionOptions", "hideTransitionOptions"], outputs: ["onShow", "onHide"] }, { kind: "component", type: ButtonSecondaryComponent, selector: "kv-button-secondary" }, { kind: "component", type: ButtonSuccessComponent, selector: "kv-button-success" }, { kind: "component", type: ButtonPopupComponent, selector: "kv-button-popup", inputs: ["items"] }, { kind: "directive", type: i2$1.ɵNgNoValidate, selector: "form:not([ngNoForm]):not([ngNativeValidate])" }, { kind: "directive", type: i2$1.NgControlStatusGroup, selector: "[formGroupName],[formArrayName],[ngModelGroup],[formGroup],form:not([ngNoForm]),[ngForm]" }, { kind: "directive", type: i2$1.FormGroupDirective, selector: "[formGroup]", inputs: ["formGroup"], outputs: ["ngSubmit"], exportAs: ["ngForm"] }] });
4088
+ PageFormComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.2.8", type: PageFormComponent, selector: "kv-page-form", inputs: { formGroup: "formGroup", TituloForm: "TituloForm", SubTituloForm: "SubTituloForm", isSaveLoading: "isSaveLoading", popup: "popup", iconBtnCancel: "iconBtnCancel", showBtnCancel: "showBtnCancel", txtBtnCancel: "txtBtnCancel", iconBtnSave: "iconBtnSave", showBtnSave: "showBtnSave", txtBtnSave: "txtBtnSave", actions: "actions", iconBtnSaveToogle: "iconBtnSaveToogle", showBtnSaveToogle: "showBtnSaveToogle", txtBtnSaveToogle: "txtBtnSaveToogle", disableBtnSair: "disableBtnSair" }, outputs: { onSave: "onSave", onCancel: "onCancel" }, ngImport: i0, template: " <form [formGroup]=\"formGroup\">\r\n <!-- T\u00EDtulo do popup -->\r\n <!-- <div class=\"flex flex-row header-dialog-prime header\" *ngIf=\"popup\">\r\n <div class=\"flex flex-column gap-3 col-10 lg:col-6\" style=\"padding: 1rem\">\r\n <div class=\"text-md lg:text-2xl\">{{TituloForm}}</div>\r\n <div class=\"text-xs lg:text-md\" *ngIf=\"enableSubTitle()\">\r\n {{ SubTituloForm }}\r\n </div>\r\n </div>\r\n\r\n <div\r\n class=\"flex align-items-center justify-content-end col-2 lg:col-6\"\r\n style=\"padding-right: 1rem\">\r\n <p-button\r\n icon=\"pi pi-times\"\r\n styleClass=\"p-button-text btn-sair\"\r\n [disabled]=\"disableBtnSair\"\r\n (click)=\"cancel($event)\"></p-button>\r\n </div>\r\n </div> -->\r\n\r\n <!-- Renderiza\u00E7\u00E3o do form -->\r\n <ng-content></ng-content>\r\n\r\n <!-- Divider -->\r\n <p-divider></p-divider>\r\n\r\n <!-- Barra de a\u00E7\u00F5es -->\r\n <div\r\n class=\"flex-column lg:flex-row flex align-items-center justify-content-end gap-2\">\r\n\r\n <p-menu #menu [popup]=\"true\" [model]=\"actions\" appendTo=\"body\"></p-menu>\r\n\r\n <kv-button-secondary\r\n *ngIf=\"showBtnCancel\"\r\n [label]=\"txtBtnCancel\"\r\n [icon]=\"iconBtnCancel\"\r\n (click)=\"cancel($event)\">\r\n </kv-button-secondary>\r\n\r\n <kv-button-success\r\n *ngIf=\"showBtnSave\"\r\n [label]=\"txtBtnSave\"\r\n [icon]=\"iconBtnSave\"\r\n [loading]=\"isSaveLoading\"\r\n (click)=\"save($event)\">\r\n </kv-button-success>\r\n\r\n <kv-button-popup\r\n *ngIf=\"actions && showBtnSaveToogle\"\r\n [label]=\"txtBtnSaveToogle\"\r\n [icon]=\"iconBtnSaveToogle\"\r\n (click)=\"menu.toggle($event)\"\r\n [loading]=\"isSaveLoading\">\r\n </kv-button-popup>\r\n </div>\r\n</form>\r\n", styles: ["::ng-deep .p-dialog .p-dialog-header{color:#fff!important;background:#002542!important}::ng-deep .p-dialog .p-dialog-content{padding-top:1rem}\n"], dependencies: [{ kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: i9.Divider, selector: "p-divider", inputs: ["styleClass", "style", "layout", "type", "align"] }, { kind: "component", type: i5.Menu, selector: "p-menu", inputs: ["model", "popup", "style", "styleClass", "appendTo", "autoZIndex", "baseZIndex", "showTransitionOptions", "hideTransitionOptions"], outputs: ["onShow", "onHide"] }, { kind: "component", type: ButtonSecondaryComponent, selector: "kv-button-secondary" }, { kind: "component", type: ButtonSuccessComponent, selector: "kv-button-success" }, { kind: "component", type: ButtonPopupComponent, selector: "kv-button-popup", inputs: ["items"] }, { kind: "directive", type: i2$1.ɵNgNoValidate, selector: "form:not([ngNoForm]):not([ngNativeValidate])" }, { kind: "directive", type: i2$1.NgControlStatusGroup, selector: "[formGroupName],[formArrayName],[ngModelGroup],[formGroup],form:not([ngNoForm]),[ngForm]" }, { kind: "directive", type: i2$1.FormGroupDirective, selector: "[formGroup]", inputs: ["formGroup"], outputs: ["ngSubmit"], exportAs: ["ngForm"] }] });
4077
4089
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.8", ngImport: i0, type: PageFormComponent, decorators: [{
4078
4090
  type: Component,
4079
- args: [{ selector: 'kv-page-form', template: " <form [formGroup]=\"formGroup\">\r\n <!-- T\u00EDtulo do popup -->\r\n <div class=\"flex flex-row header-dialog-prime header\" *ngIf=\"popup\">\r\n <div class=\"flex flex-column gap-3 col-10 lg:col-6\" style=\"padding: 1rem\">\r\n <div class=\"text-md lg:text-2xl\">{{TituloForm}}</div>\r\n <div class=\"text-xs lg:text-md\" *ngIf=\"enableSubTitle()\">\r\n {{ SubTituloForm }}\r\n </div>\r\n </div>\r\n\r\n <div\r\n class=\"flex align-items-center justify-content-end col-2 lg:col-6\"\r\n style=\"padding-right: 1rem\">\r\n <p-button\r\n icon=\"pi pi-times\"\r\n styleClass=\"p-button-text btn-sair\"\r\n [disabled]=\"disableBtnSair\"\r\n (click)=\"cancel($event)\"></p-button>\r\n </div>\r\n </div>\r\n\r\n <!-- Renderiza\u00E7\u00E3o do form -->\r\n <ng-content></ng-content>\r\n\r\n <!-- Divider -->\r\n <p-divider></p-divider>\r\n\r\n <!-- Barra de a\u00E7\u00F5es -->\r\n <div\r\n class=\"flex-column lg:flex-row flex align-items-center justify-content-end gap-2\">\r\n\r\n <p-menu #menu [popup]=\"true\" [model]=\"actions\" appendTo=\"body\"></p-menu>\r\n\r\n <kv-button-secondary\r\n *ngIf=\"showBtnCancel\"\r\n [label]=\"txtBtnCancel\"\r\n [icon]=\"iconBtnCancel\"\r\n (click)=\"cancel($event)\">\r\n </kv-button-secondary>\r\n\r\n <kv-button-success\r\n *ngIf=\"showBtnSave\"\r\n [label]=\"txtBtnSave\"\r\n [icon]=\"iconBtnSave\"\r\n [loading]=\"isSaveLoading\"\r\n (click)=\"save($event)\">\r\n </kv-button-success>\r\n\r\n <kv-button-popup\r\n *ngIf=\"actions && showBtnSaveToogle\"\r\n [label]=\"txtBtnSaveToogle\"\r\n [icon]=\"iconBtnSaveToogle\"\r\n (click)=\"menu.toggle($event)\"\r\n [loading]=\"isSaveLoading\">\r\n </kv-button-popup>\r\n </div>\r\n</form>\r\n", styles: [".header{height:80px}.texto-dialog-prime.p-dialog.p-confirm-dialog .p-confirm-dialog-message{margin-left:1rem;margin-top:2rem;font-size:14px;text-align:center}.header-dialog-prime{color:#fff;background:#002542;margin-bottom:1rem}.header-dialog-prime-override.p-dialog .p-dialog-header{color:#fff;background:#002542}.icon-dialog-prime.p-dialog .p-dialog-header .p-dialog-header-icon{color:#fff}.dialog-content-prime.p-dialog .p-dialog-content{background:#ffffff;color:#495057;padding:0;overflow:auto}\n"] }]
4091
+ args: [{ selector: 'kv-page-form', template: " <form [formGroup]=\"formGroup\">\r\n <!-- T\u00EDtulo do popup -->\r\n <!-- <div class=\"flex flex-row header-dialog-prime header\" *ngIf=\"popup\">\r\n <div class=\"flex flex-column gap-3 col-10 lg:col-6\" style=\"padding: 1rem\">\r\n <div class=\"text-md lg:text-2xl\">{{TituloForm}}</div>\r\n <div class=\"text-xs lg:text-md\" *ngIf=\"enableSubTitle()\">\r\n {{ SubTituloForm }}\r\n </div>\r\n </div>\r\n\r\n <div\r\n class=\"flex align-items-center justify-content-end col-2 lg:col-6\"\r\n style=\"padding-right: 1rem\">\r\n <p-button\r\n icon=\"pi pi-times\"\r\n styleClass=\"p-button-text btn-sair\"\r\n [disabled]=\"disableBtnSair\"\r\n (click)=\"cancel($event)\"></p-button>\r\n </div>\r\n </div> -->\r\n\r\n <!-- Renderiza\u00E7\u00E3o do form -->\r\n <ng-content></ng-content>\r\n\r\n <!-- Divider -->\r\n <p-divider></p-divider>\r\n\r\n <!-- Barra de a\u00E7\u00F5es -->\r\n <div\r\n class=\"flex-column lg:flex-row flex align-items-center justify-content-end gap-2\">\r\n\r\n <p-menu #menu [popup]=\"true\" [model]=\"actions\" appendTo=\"body\"></p-menu>\r\n\r\n <kv-button-secondary\r\n *ngIf=\"showBtnCancel\"\r\n [label]=\"txtBtnCancel\"\r\n [icon]=\"iconBtnCancel\"\r\n (click)=\"cancel($event)\">\r\n </kv-button-secondary>\r\n\r\n <kv-button-success\r\n *ngIf=\"showBtnSave\"\r\n [label]=\"txtBtnSave\"\r\n [icon]=\"iconBtnSave\"\r\n [loading]=\"isSaveLoading\"\r\n (click)=\"save($event)\">\r\n </kv-button-success>\r\n\r\n <kv-button-popup\r\n *ngIf=\"actions && showBtnSaveToogle\"\r\n [label]=\"txtBtnSaveToogle\"\r\n [icon]=\"iconBtnSaveToogle\"\r\n (click)=\"menu.toggle($event)\"\r\n [loading]=\"isSaveLoading\">\r\n </kv-button-popup>\r\n </div>\r\n</form>\r\n", styles: ["::ng-deep .p-dialog .p-dialog-header{color:#fff!important;background:#002542!important}::ng-deep .p-dialog .p-dialog-content{padding-top:1rem}\n"] }]
4080
4092
  }], ctorParameters: function () { return [{ type: i2$1.FormBuilder }]; }, propDecorators: { formGroup: [{
4081
4093
  type: Input
4082
4094
  }], TituloForm: [{