@gipisistemas/ng-core 1.1.12 → 1.1.14

Sign up to get free protection for your applications and to get access to all the features.
Files changed (47) hide show
  1. package/assets/styles/styles.scss +4 -0
  2. package/bundles/gipisistemas-ng-core.umd.js +128 -21
  3. package/bundles/gipisistemas-ng-core.umd.js.map +1 -1
  4. package/bundles/gipisistemas-ng-core.umd.min.js +8 -8
  5. package/bundles/gipisistemas-ng-core.umd.min.js.map +1 -1
  6. package/esm2015/gipisistemas-ng-core.js +8 -7
  7. package/esm2015/shared/components/button/button.component.js +2 -2
  8. package/esm2015/shared/components/icon/icon.component.js +2 -4
  9. package/esm2015/shared/components/input/input.component.js +12 -3
  10. package/esm2015/shared/directives/input-trim.directive.js +70 -0
  11. package/esm2015/shared/directives/lower-case.directive.js +1 -1
  12. package/esm2015/shared/directives/phone-mask.directive.js +1 -1
  13. package/esm2015/shared/directives/space-drop.directive.js +1 -1
  14. package/esm2015/shared/directives/upper-case.directive.js +1 -1
  15. package/esm2015/shared/gipi-components/button/button.component.js +2 -2
  16. package/esm2015/shared/gipi-components/form-field/form-field.component.js +8 -3
  17. package/esm2015/shared/gipi-components/input-select-enum/input-select-enum.component.js +20 -6
  18. package/esm2015/shared/gipi-components/split-button/split-button.component.js +2 -2
  19. package/esm2015/shared/gipi-components/tabs/tab-group/tab-group.component.js +5 -2
  20. package/esm2015/shared/shared.module.js +3 -1
  21. package/esm5/gipisistemas-ng-core.js +8 -7
  22. package/esm5/shared/components/button/button.component.js +2 -2
  23. package/esm5/shared/components/icon/icon.component.js +2 -4
  24. package/esm5/shared/components/input/input.component.js +16 -3
  25. package/esm5/shared/directives/input-trim.directive.js +71 -0
  26. package/esm5/shared/directives/lower-case.directive.js +1 -1
  27. package/esm5/shared/directives/phone-mask.directive.js +1 -1
  28. package/esm5/shared/directives/space-drop.directive.js +1 -1
  29. package/esm5/shared/directives/upper-case.directive.js +1 -1
  30. package/esm5/shared/gipi-components/button/button.component.js +2 -2
  31. package/esm5/shared/gipi-components/form-field/form-field.component.js +8 -3
  32. package/esm5/shared/gipi-components/input-select-enum/input-select-enum.component.js +25 -6
  33. package/esm5/shared/gipi-components/split-button/split-button.component.js +2 -2
  34. package/esm5/shared/gipi-components/tabs/tab-group/tab-group.component.js +5 -2
  35. package/esm5/shared/shared.module.js +3 -1
  36. package/fesm2015/gipisistemas-ng-core.js +112 -16
  37. package/fesm2015/gipisistemas-ng-core.js.map +1 -1
  38. package/fesm5/gipisistemas-ng-core.js +122 -16
  39. package/fesm5/gipisistemas-ng-core.js.map +1 -1
  40. package/gipisistemas-ng-core.d.ts +7 -6
  41. package/gipisistemas-ng-core.metadata.json +1 -1
  42. package/package.json +1 -1
  43. package/shared/components/icon/icon.component.d.ts +1 -3
  44. package/shared/components/input/input.component.d.ts +3 -1
  45. package/shared/directives/input-trim.directive.d.ts +9 -0
  46. package/shared/gipi-components/form-field/form-field.component.d.ts +1 -0
  47. package/shared/gipi-components/input-select-enum/input-select-enum.component.d.ts +4 -2
@@ -45,4 +45,4 @@ var SpaceDropDirective = /** @class */ (function () {
45
45
  return SpaceDropDirective;
46
46
  }());
47
47
  export { SpaceDropDirective };
48
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic3BhY2UtZHJvcC5kaXJlY3RpdmUuanMiLCJzb3VyY2VSb290Ijoibmc6Ly9AZ2lwaXNpc3RlbWFzL25nLWNvcmUvIiwic291cmNlcyI6WyJzaGFyZWQvZGlyZWN0aXZlcy9zcGFjZS1kcm9wLmRpcmVjdGl2ZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiO0FBQUEsT0FBTyxFQUFDLFNBQVMsRUFBRSxZQUFZLEVBQUUsS0FBSyxFQUFDLE1BQU0sZUFBZSxDQUFDO0FBQzdELE9BQU8sRUFBQyxTQUFTLEVBQUMsTUFBTSxnQkFBZ0IsQ0FBQztBQUt6QztJQUlJLDRCQUFtQixTQUFvQjtRQUFwQixjQUFTLEdBQVQsU0FBUyxDQUFXO1FBRjlCLGNBQVMsR0FBRyxLQUFLLENBQUM7SUFHM0IsQ0FBQztJQUdELDBDQUFhLEdBQWIsVUFBYyxLQUFLO1FBQ2YsSUFBSSxDQUFDLGFBQWEsQ0FBQyxLQUFLLENBQUMsQ0FBQztJQUM5QixDQUFDO0lBR0Qsb0NBQU8sR0FBUCxVQUFRLEtBQUs7UUFDVCxJQUFJLENBQUMsYUFBYSxDQUFDLEtBQUssQ0FBQyxNQUFNLENBQUMsS0FBSyxDQUFDLENBQUM7SUFDM0MsQ0FBQztJQUVELDBDQUFhLEdBQWIsVUFBYyxLQUFLO1FBQ2YsSUFBSSxJQUFJLENBQUMsU0FBUyxFQUFFO1lBQ2hCLElBQUksQ0FBQyxTQUFTLENBQUMsYUFBYSxDQUFDLFVBQVUsQ0FBQyxLQUFLLENBQUMsT0FBTyxDQUFDLEtBQUssRUFBRSxFQUFFLENBQUMsQ0FBQyxDQUFDO1NBQ3JFO0lBQ0wsQ0FBQzs7Z0JBakI2QixTQUFTOztJQUY5QjtRQUFSLEtBQUssRUFBRTs7eURBQW1CO0lBTTNCO1FBREMsWUFBWSxDQUFDLGVBQWUsRUFBRSxDQUFDLFFBQVEsQ0FBQyxDQUFDOzs7OzJEQUd6QztJQUdEO1FBREMsWUFBWSxDQUFDLFNBQVMsRUFBRSxDQUFDLFFBQVEsQ0FBQyxDQUFDOzs7O3FEQUduQztJQWZRLGtCQUFrQjtRQUg5QixTQUFTLENBQUM7WUFDUCxRQUFRLEVBQUUsYUFBYTtTQUMxQixDQUFDO3lDQUtnQyxTQUFTO09BSjlCLGtCQUFrQixDQXVCOUI7SUFBRCx5QkFBQztDQUFBLEFBdkJELElBdUJDO1NBdkJZLGtCQUFrQiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7RGlyZWN0aXZlLCBIb3N0TGlzdGVuZXIsIElucHV0fSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7TmdDb250cm9sfSBmcm9tICdAYW5ndWxhci9mb3Jtcyc7XG5cbkBEaXJlY3RpdmUoe1xuICAgIHNlbGVjdG9yOiAnW3NwYWNlRHJvcF0nLFxufSlcbmV4cG9ydCBjbGFzcyBTcGFjZURyb3BEaXJlY3RpdmUge1xuXG4gICAgQElucHV0KCkgc3BhY2VEcm9wID0gZmFsc2U7XG5cbiAgICBjb25zdHJ1Y3RvcihwdWJsaWMgbmdDb250cm9sOiBOZ0NvbnRyb2wpIHtcbiAgICB9XG5cbiAgICBASG9zdExpc3RlbmVyKCduZ01vZGVsQ2hhbmdlJywgWyckZXZlbnQnXSlcbiAgICBuZ01vZGVsQ2hhbmdlKGV2ZW50KSB7XG4gICAgICAgIHRoaXMub25JbnB1dENoYW5nZShldmVudCk7XG4gICAgfVxuXG4gICAgQEhvc3RMaXN0ZW5lcigna2V5ZG93bicsIFsnJGV2ZW50J10pXG4gICAga2V5ZG93bihldmVudCkge1xuICAgICAgICB0aGlzLm9uSW5wdXRDaGFuZ2UoZXZlbnQudGFyZ2V0LnZhbHVlKTtcbiAgICB9XG5cbiAgICBvbklucHV0Q2hhbmdlKGV2ZW50KSB7XG4gICAgICAgIGlmICh0aGlzLnNwYWNlRHJvcCkge1xuICAgICAgICAgICAgdGhpcy5uZ0NvbnRyb2wudmFsdWVBY2Nlc3Nvci53cml0ZVZhbHVlKGV2ZW50LnJlcGxhY2UoL1xccy9nLCAnJykpO1xuICAgICAgICB9XG4gICAgfVxuXG59XG4iXX0=
48
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic3BhY2UtZHJvcC5kaXJlY3RpdmUuanMiLCJzb3VyY2VSb290Ijoibmc6Ly9AZ2lwaXNpc3RlbWFzL25nLWNvcmUvIiwic291cmNlcyI6WyJzaGFyZWQvZGlyZWN0aXZlcy9zcGFjZS1kcm9wLmRpcmVjdGl2ZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiO0FBQUEsT0FBTyxFQUFFLFNBQVMsRUFBRSxZQUFZLEVBQUUsS0FBSyxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQy9ELE9BQU8sRUFBRSxTQUFTLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUszQztJQUlJLDRCQUFtQixTQUFvQjtRQUFwQixjQUFTLEdBQVQsU0FBUyxDQUFXO1FBRjlCLGNBQVMsR0FBRyxLQUFLLENBQUM7SUFHM0IsQ0FBQztJQUdELDBDQUFhLEdBQWIsVUFBYyxLQUFLO1FBQ2YsSUFBSSxDQUFDLGFBQWEsQ0FBQyxLQUFLLENBQUMsQ0FBQztJQUM5QixDQUFDO0lBR0Qsb0NBQU8sR0FBUCxVQUFRLEtBQUs7UUFDVCxJQUFJLENBQUMsYUFBYSxDQUFDLEtBQUssQ0FBQyxNQUFNLENBQUMsS0FBSyxDQUFDLENBQUM7SUFDM0MsQ0FBQztJQUVELDBDQUFhLEdBQWIsVUFBYyxLQUFLO1FBQ2YsSUFBSSxJQUFJLENBQUMsU0FBUyxFQUFFO1lBQ2hCLElBQUksQ0FBQyxTQUFTLENBQUMsYUFBYSxDQUFDLFVBQVUsQ0FBQyxLQUFLLENBQUMsT0FBTyxDQUFDLEtBQUssRUFBRSxFQUFFLENBQUMsQ0FBQyxDQUFDO1NBQ3JFO0lBQ0wsQ0FBQzs7Z0JBakI2QixTQUFTOztJQUY5QjtRQUFSLEtBQUssRUFBRTs7eURBQW1CO0lBTTNCO1FBREMsWUFBWSxDQUFDLGVBQWUsRUFBRSxDQUFDLFFBQVEsQ0FBQyxDQUFDOzs7OzJEQUd6QztJQUdEO1FBREMsWUFBWSxDQUFDLFNBQVMsRUFBRSxDQUFDLFFBQVEsQ0FBQyxDQUFDOzs7O3FEQUduQztJQWZRLGtCQUFrQjtRQUg5QixTQUFTLENBQUM7WUFDUCxRQUFRLEVBQUUsYUFBYTtTQUMxQixDQUFDO3lDQUtnQyxTQUFTO09BSjlCLGtCQUFrQixDQXVCOUI7SUFBRCx5QkFBQztDQUFBLEFBdkJELElBdUJDO1NBdkJZLGtCQUFrQiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IERpcmVjdGl2ZSwgSG9zdExpc3RlbmVyLCBJbnB1dCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgTmdDb250cm9sIH0gZnJvbSAnQGFuZ3VsYXIvZm9ybXMnO1xuXG5ARGlyZWN0aXZlKHtcbiAgICBzZWxlY3RvcjogJ1tzcGFjZURyb3BdJyxcbn0pXG5leHBvcnQgY2xhc3MgU3BhY2VEcm9wRGlyZWN0aXZlIHtcblxuICAgIEBJbnB1dCgpIHNwYWNlRHJvcCA9IGZhbHNlO1xuXG4gICAgY29uc3RydWN0b3IocHVibGljIG5nQ29udHJvbDogTmdDb250cm9sKSB7XG4gICAgfVxuXG4gICAgQEhvc3RMaXN0ZW5lcignbmdNb2RlbENoYW5nZScsIFsnJGV2ZW50J10pXG4gICAgbmdNb2RlbENoYW5nZShldmVudCkge1xuICAgICAgICB0aGlzLm9uSW5wdXRDaGFuZ2UoZXZlbnQpO1xuICAgIH1cblxuICAgIEBIb3N0TGlzdGVuZXIoJ2tleWRvd24nLCBbJyRldmVudCddKVxuICAgIGtleWRvd24oZXZlbnQpIHtcbiAgICAgICAgdGhpcy5vbklucHV0Q2hhbmdlKGV2ZW50LnRhcmdldC52YWx1ZSk7XG4gICAgfVxuXG4gICAgb25JbnB1dENoYW5nZShldmVudCkge1xuICAgICAgICBpZiAodGhpcy5zcGFjZURyb3ApIHtcbiAgICAgICAgICAgIHRoaXMubmdDb250cm9sLnZhbHVlQWNjZXNzb3Iud3JpdGVWYWx1ZShldmVudC5yZXBsYWNlKC9cXHMvZywgJycpKTtcbiAgICAgICAgfVxuICAgIH1cblxufVxuIl19
@@ -45,4 +45,4 @@ var UpperCaseDirective = /** @class */ (function () {
45
45
  return UpperCaseDirective;
46
46
  }());
47
47
  export { UpperCaseDirective };
48
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidXBwZXItY2FzZS5kaXJlY3RpdmUuanMiLCJzb3VyY2VSb290Ijoibmc6Ly9AZ2lwaXNpc3RlbWFzL25nLWNvcmUvIiwic291cmNlcyI6WyJzaGFyZWQvZGlyZWN0aXZlcy91cHBlci1jYXNlLmRpcmVjdGl2ZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiO0FBQUEsT0FBTyxFQUFDLFNBQVMsRUFBRSxZQUFZLEVBQUUsS0FBSyxFQUFDLE1BQU0sZUFBZSxDQUFDO0FBQzdELE9BQU8sRUFBQyxTQUFTLEVBQUMsTUFBTSxnQkFBZ0IsQ0FBQztBQUt6QztJQUlFLDRCQUFtQixTQUFvQjtRQUFwQixjQUFTLEdBQVQsU0FBUyxDQUFXO1FBRjlCLHFCQUFnQixHQUFHLEtBQUssQ0FBQztJQUdsQyxDQUFDO0lBR0QsMENBQWEsR0FBYixVQUFjLEtBQUs7UUFDakIsSUFBSSxDQUFDLGFBQWEsQ0FBQyxLQUFLLENBQUMsQ0FBQztJQUM1QixDQUFDO0lBR0Qsb0NBQU8sR0FBUCxVQUFRLEtBQUs7UUFDWCxJQUFJLENBQUMsYUFBYSxDQUFDLEtBQUssQ0FBQyxNQUFNLENBQUMsS0FBSyxDQUFDLENBQUM7SUFDekMsQ0FBQztJQUVELDBDQUFhLEdBQWIsVUFBYyxLQUFLO1FBQ2pCLElBQUksSUFBSSxDQUFDLGdCQUFnQixFQUFFO1lBQ3pCLElBQUksQ0FBQyxTQUFTLENBQUMsYUFBYSxDQUFDLFVBQVUsQ0FBQyxLQUFLLENBQUMsV0FBVyxFQUFFLENBQUMsQ0FBQztTQUM5RDtJQUNILENBQUM7O2dCQWpCNkIsU0FBUzs7SUFGOUI7UUFBUixLQUFLLEVBQUU7O2dFQUEwQjtJQU1sQztRQURDLFlBQVksQ0FBQyxlQUFlLEVBQUUsQ0FBQyxRQUFRLENBQUMsQ0FBQzs7OzsyREFHekM7SUFHRDtRQURDLFlBQVksQ0FBQyxTQUFTLEVBQUUsQ0FBQyxRQUFRLENBQUMsQ0FBQzs7OztxREFHbkM7SUFmVSxrQkFBa0I7UUFIOUIsU0FBUyxDQUFDO1lBQ1QsUUFBUSxFQUFFLGFBQWE7U0FDeEIsQ0FBQzt5Q0FLOEIsU0FBUztPQUo1QixrQkFBa0IsQ0F1QjlCO0lBQUQseUJBQUM7Q0FBQSxBQXZCRCxJQXVCQztTQXZCWSxrQkFBa0IiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge0RpcmVjdGl2ZSwgSG9zdExpc3RlbmVyLCBJbnB1dH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQge05nQ29udHJvbH0gZnJvbSAnQGFuZ3VsYXIvZm9ybXMnO1xuXG5ARGlyZWN0aXZlKHtcbiAgc2VsZWN0b3I6ICdbdXBwZXJDYXNlXScsXG59KVxuZXhwb3J0IGNsYXNzIFVwcGVyQ2FzZURpcmVjdGl2ZSB7XG5cbiAgQElucHV0KCkgZW5hYmxlZFVwcGVyQ2FzZSA9IGZhbHNlO1xuXG4gIGNvbnN0cnVjdG9yKHB1YmxpYyBuZ0NvbnRyb2w6IE5nQ29udHJvbCkge1xuICB9XG5cbiAgQEhvc3RMaXN0ZW5lcignbmdNb2RlbENoYW5nZScsIFsnJGV2ZW50J10pXG4gIG5nTW9kZWxDaGFuZ2UoZXZlbnQpIHtcbiAgICB0aGlzLm9uSW5wdXRDaGFuZ2UoZXZlbnQpO1xuICB9XG5cbiAgQEhvc3RMaXN0ZW5lcigna2V5ZG93bicsIFsnJGV2ZW50J10pXG4gIGtleWRvd24oZXZlbnQpIHtcbiAgICB0aGlzLm9uSW5wdXRDaGFuZ2UoZXZlbnQudGFyZ2V0LnZhbHVlKTtcbiAgfVxuXG4gIG9uSW5wdXRDaGFuZ2UoZXZlbnQpIHtcbiAgICBpZiAodGhpcy5lbmFibGVkVXBwZXJDYXNlKSB7XG4gICAgICB0aGlzLm5nQ29udHJvbC52YWx1ZUFjY2Vzc29yLndyaXRlVmFsdWUoZXZlbnQudG9VcHBlckNhc2UoKSk7XG4gICAgfVxuICB9XG5cbn1cbiJdfQ==
48
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidXBwZXItY2FzZS5kaXJlY3RpdmUuanMiLCJzb3VyY2VSb290Ijoibmc6Ly9AZ2lwaXNpc3RlbWFzL25nLWNvcmUvIiwic291cmNlcyI6WyJzaGFyZWQvZGlyZWN0aXZlcy91cHBlci1jYXNlLmRpcmVjdGl2ZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiO0FBQUEsT0FBTyxFQUFFLFNBQVMsRUFBRSxZQUFZLEVBQUUsS0FBSyxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQy9ELE9BQU8sRUFBRSxTQUFTLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUszQztJQUlJLDRCQUFtQixTQUFvQjtRQUFwQixjQUFTLEdBQVQsU0FBUyxDQUFXO1FBRjlCLHFCQUFnQixHQUFHLEtBQUssQ0FBQztJQUdsQyxDQUFDO0lBR0QsMENBQWEsR0FBYixVQUFjLEtBQUs7UUFDZixJQUFJLENBQUMsYUFBYSxDQUFDLEtBQUssQ0FBQyxDQUFDO0lBQzlCLENBQUM7SUFHRCxvQ0FBTyxHQUFQLFVBQVEsS0FBSztRQUNULElBQUksQ0FBQyxhQUFhLENBQUMsS0FBSyxDQUFDLE1BQU0sQ0FBQyxLQUFLLENBQUMsQ0FBQztJQUMzQyxDQUFDO0lBRUQsMENBQWEsR0FBYixVQUFjLEtBQUs7UUFDZixJQUFJLElBQUksQ0FBQyxnQkFBZ0IsRUFBRTtZQUN2QixJQUFJLENBQUMsU0FBUyxDQUFDLGFBQWEsQ0FBQyxVQUFVLENBQUMsS0FBSyxDQUFDLFdBQVcsRUFBRSxDQUFDLENBQUM7U0FDaEU7SUFDTCxDQUFDOztnQkFqQjZCLFNBQVM7O0lBRjlCO1FBQVIsS0FBSyxFQUFFOztnRUFBMEI7SUFNbEM7UUFEQyxZQUFZLENBQUMsZUFBZSxFQUFFLENBQUMsUUFBUSxDQUFDLENBQUM7Ozs7MkRBR3pDO0lBR0Q7UUFEQyxZQUFZLENBQUMsU0FBUyxFQUFFLENBQUMsUUFBUSxDQUFDLENBQUM7Ozs7cURBR25DO0lBZlEsa0JBQWtCO1FBSDlCLFNBQVMsQ0FBQztZQUNQLFFBQVEsRUFBRSxhQUFhO1NBQzFCLENBQUM7eUNBS2dDLFNBQVM7T0FKOUIsa0JBQWtCLENBdUI5QjtJQUFELHlCQUFDO0NBQUEsQUF2QkQsSUF1QkM7U0F2Qlksa0JBQWtCIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgRGlyZWN0aXZlLCBIb3N0TGlzdGVuZXIsIElucHV0IH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBOZ0NvbnRyb2wgfSBmcm9tICdAYW5ndWxhci9mb3Jtcyc7XG5cbkBEaXJlY3RpdmUoe1xuICAgIHNlbGVjdG9yOiAnW3VwcGVyQ2FzZV0nLFxufSlcbmV4cG9ydCBjbGFzcyBVcHBlckNhc2VEaXJlY3RpdmUge1xuXG4gICAgQElucHV0KCkgZW5hYmxlZFVwcGVyQ2FzZSA9IGZhbHNlO1xuXG4gICAgY29uc3RydWN0b3IocHVibGljIG5nQ29udHJvbDogTmdDb250cm9sKSB7XG4gICAgfVxuXG4gICAgQEhvc3RMaXN0ZW5lcignbmdNb2RlbENoYW5nZScsIFsnJGV2ZW50J10pXG4gICAgbmdNb2RlbENoYW5nZShldmVudCkge1xuICAgICAgICB0aGlzLm9uSW5wdXRDaGFuZ2UoZXZlbnQpO1xuICAgIH1cblxuICAgIEBIb3N0TGlzdGVuZXIoJ2tleWRvd24nLCBbJyRldmVudCddKVxuICAgIGtleWRvd24oZXZlbnQpIHtcbiAgICAgICAgdGhpcy5vbklucHV0Q2hhbmdlKGV2ZW50LnRhcmdldC52YWx1ZSk7XG4gICAgfVxuXG4gICAgb25JbnB1dENoYW5nZShldmVudCkge1xuICAgICAgICBpZiAodGhpcy5lbmFibGVkVXBwZXJDYXNlKSB7XG4gICAgICAgICAgICB0aGlzLm5nQ29udHJvbC52YWx1ZUFjY2Vzc29yLndyaXRlVmFsdWUoZXZlbnQudG9VcHBlckNhc2UoKSk7XG4gICAgICAgIH1cbiAgICB9XG5cbn1cbiJdfQ==
@@ -256,7 +256,7 @@ var GIPIButtonComponent = /** @class */ (function () {
256
256
  Component({
257
257
  selector: "gipi-button[gipi-primary], gipi-button[gipi-primary-icon], gipi-button[gipi-secondary], gipi-button[gipi-secondary-icon],\n gipi-button[gipi-tertiary], gipi-button[gipi-link], gipi-button[gipi-icon], gipi-button[gipi-action]",
258
258
  exportAs: 'gipiButton',
259
- template: "<button [attr.id]=\"id\"\n [attr.name]=\"name\"\n [attr.type]=\"type\"\n [attr.aria-label]=\"ariaLabel ? ariaLabel : label\"\n [attr.title]=\"title ? title : label\"\n [disabled]=\"disabled || loading\"\n [matTooltip]=\"tooltip\"\n role=\"button\"\n [class]=\"buttonClass\"\n [ngClass]=\"internalButtonClass\"\n [style.padding.px]=\"buttonPadding\"\n #popoverTrigger=\"popoverTrigger\"\n [popoverTriggerFor]=\"btnPopover\"\n [popoverTriggerOn]=\"popover ? 'click' : 'none'\"\n [popoverBackdropCloseOnClick]=\"true\"\n (opened)=\"onOpenPopover.emit()\"\n (closed)=\"onClosePopover.emit()\"\n (click)=\"handleClick($event)\"\n (focus)=\"handleFocus($event)\"\n (blur)=\"handleBlur($event)\">\n <span [ngClass]=\"{'button-content': true,\n 'button-disabled': disabled,\n 'button-icon-left': ((iconPos === 'left') && label),\n 'button-icon-right': ((iconPos === 'right') && label),\n 'button-icon-top': ((iconPos === 'top') && label),\n 'button-icon-bottom': ((iconPos === 'bottom') && label),\n 'button-icon-center': (iconPos === 'center')}\">\n <mat-icon *ngIf=\"svgIcon || icon\"\n [svgIcon]=\"svgIcon\"\n [style.width.px]=\"iconWidth\"\n [style.height.px]=\"iconHeight\"\n [style.font-size.px]=\"iconWidth || iconHeight\">\n {{ (!svgIcon && icon) ? icon : '' }}\n </mat-icon>\n\n <span class=\"button-label\"\n [attr.aria-hidden]=\"(icon || svgIcon) && !label\"\n *ngIf=\"!isButtonIcon && label\">\n {{ label }}\n </span>\n </span>\n</button>\n\n<gipi-overlay *ngIf=\"overlay && !popover\"\n [(visible)]=\"_overlayVisible\"\n [appendTo]=\"'body'\"\n (onShow)=\"onShowOverlay.emit()\">\n <ng-content> </ng-content>\n</gipi-overlay>\n\n<gipi-popover #btnPopover=\"gipiPopover\"\n [popoverOverlapTrigger]=\"false\"\n [popoverCloseOnClick]=\"false\"\n [popoverArrowWidth]=\"0\"\n [popoverOffsetY]=\"3\"\n [fxHide]=\"!popover\">\n <div class=\"btn-popover-content\">\n <ng-content> </ng-content>\n </div>\n</gipi-popover>",
259
+ template: "<button [attr.id]=\"id\"\n [attr.name]=\"name\"\n [attr.type]=\"type\"\n [attr.aria-label]=\"ariaLabel ? ariaLabel : label\"\n [attr.title]=\"title ? title : label\"\n [disabled]=\"disabled || loading\"\n [matTooltip]=\"tooltip\"\n matTooltipClass=\"mattooltip-line-break\"\n role=\"button\"\n [class]=\"buttonClass\"\n [ngClass]=\"internalButtonClass\"\n [style.padding.px]=\"buttonPadding\"\n #popoverTrigger=\"popoverTrigger\"\n [popoverTriggerFor]=\"btnPopover\"\n [popoverTriggerOn]=\"popover ? 'click' : 'none'\"\n [popoverBackdropCloseOnClick]=\"true\"\n (opened)=\"onOpenPopover.emit()\"\n (closed)=\"onClosePopover.emit()\"\n (click)=\"handleClick($event)\"\n (focus)=\"handleFocus($event)\"\n (blur)=\"handleBlur($event)\">\n <span [ngClass]=\"{'button-content': true,\n 'button-disabled': disabled,\n 'button-icon-left': ((iconPos === 'left') && label),\n 'button-icon-right': ((iconPos === 'right') && label),\n 'button-icon-top': ((iconPos === 'top') && label),\n 'button-icon-bottom': ((iconPos === 'bottom') && label),\n 'button-icon-center': (iconPos === 'center')}\">\n <mat-icon *ngIf=\"svgIcon || icon\"\n [svgIcon]=\"svgIcon\"\n [style.width.px]=\"iconWidth\"\n [style.height.px]=\"iconHeight\"\n [style.font-size.px]=\"iconWidth || iconHeight\">\n {{ (!svgIcon && icon) ? icon : '' }}\n </mat-icon>\n\n <span class=\"button-label\"\n [attr.aria-hidden]=\"(icon || svgIcon) && !label\"\n *ngIf=\"!isButtonIcon && label\">\n {{ label }}\n </span>\n </span>\n</button>\n\n<gipi-overlay *ngIf=\"overlay && !popover\"\n [(visible)]=\"_overlayVisible\"\n [appendTo]=\"'body'\"\n (onShow)=\"onShowOverlay.emit()\">\n <ng-content> </ng-content>\n</gipi-overlay>\n\n<gipi-popover #btnPopover=\"gipiPopover\"\n [popoverOverlapTrigger]=\"false\"\n [popoverCloseOnClick]=\"false\"\n [popoverArrowWidth]=\"0\"\n [popoverOffsetY]=\"3\"\n [fxHide]=\"!popover\">\n <div class=\"btn-popover-content\">\n <ng-content> </ng-content>\n </div>\n</gipi-popover>\n",
260
260
  providers: [
261
261
  {
262
262
  provide: NG_VALUE_ACCESSOR,
@@ -274,4 +274,4 @@ var GIPIButtonComponent = /** @class */ (function () {
274
274
  return GIPIButtonComponent;
275
275
  }());
276
276
  export { GIPIButtonComponent };
277
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYnV0dG9uLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiJuZzovL0BnaXBpc2lzdGVtYXMvbmctY29yZS8iLCJzb3VyY2VzIjpbInNoYXJlZC9naXBpLWNvbXBvbmVudHMvYnV0dG9uL2J1dHRvbi5jb21wb25lbnQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IjtBQUFBLE9BQU8sRUFBRSxTQUFTLEVBQUUsVUFBVSxFQUFFLFlBQVksRUFBRSxZQUFZLEVBQUUsS0FBSyxFQUFFLFNBQVMsRUFBRSxNQUFNLEVBQUUsTUFBTSxFQUFFLFNBQVMsRUFBRSxVQUFVLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDM0ksT0FBTyxFQUFFLGlCQUFpQixFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFFbkQsT0FBTyxFQUFFLGtCQUFrQixFQUFFLE1BQU0sbUNBQW1DLENBQUM7QUFxQnZFO0lBK0VJLDZCQUFvQixXQUF1QjtRQUF2QixnQkFBVyxHQUFYLFdBQVcsQ0FBWTtRQTdFbEMsb0JBQWUsR0FBWSxJQUFJLENBQUMsa0JBQWtCLENBQUMsY0FBYyxDQUFDLENBQUM7UUFDbkUsd0JBQW1CLEdBQVksSUFBSSxDQUFDLGtCQUFrQixDQUFDLG1CQUFtQixDQUFDLENBQUM7UUFDNUUsc0JBQWlCLEdBQVksSUFBSSxDQUFDLGtCQUFrQixDQUFDLGdCQUFnQixDQUFDLENBQUM7UUFDdkUsMEJBQXFCLEdBQVksSUFBSSxDQUFDLGtCQUFrQixDQUFDLHFCQUFxQixDQUFDLENBQUM7UUFDaEYscUJBQWdCLEdBQVksSUFBSSxDQUFDLGtCQUFrQixDQUFDLGVBQWUsQ0FBQyxDQUFDO1FBQ3JFLHlCQUFvQixHQUFZLElBQUksQ0FBQyxrQkFBa0IsQ0FBQyxvQkFBb0IsQ0FBQyxDQUFDO1FBQzlFLGlCQUFZLEdBQVksSUFBSSxDQUFDLGtCQUFrQixDQUFDLFdBQVcsQ0FBQyxDQUFDO1FBQzdELGlCQUFZLEdBQVksSUFBSSxDQUFDLGtCQUFrQixDQUFDLFdBQVcsQ0FBQyxDQUFDO1FBQzdELG1CQUFjLEdBQVksSUFBSSxDQUFDLGtCQUFrQixDQUFDLGFBQWEsQ0FBQyxDQUFDO1FBRTFFLG9CQUFlLEdBQVksS0FBSyxDQUFDO1FBUXhCLFNBQUksR0FBa0MsUUFBUSxDQUFDO1FBRS9DLGNBQVMsR0FBVyxFQUFFLENBQUM7UUFFdkIsVUFBSyxHQUFXLEVBQUUsQ0FBQztRQUVuQixVQUFLLEdBQVcsRUFBRSxDQUFDO1FBU25CLFNBQUksR0FBVyxJQUFJLENBQUM7UUFFcEIsWUFBTyxHQUFXLElBQUksQ0FBQztRQUV2QixZQUFPLEdBQXVCLE1BQU0sQ0FBQztRQUVyQyxhQUFRLEdBQVksS0FBSyxDQUFDO1FBRTFCLFlBQU8sR0FBWSxLQUFLLENBQUM7UUFFekIsaUJBQVksR0FBWSxLQUFLLENBQUM7UUFFOUIsWUFBTyxHQUFXLEVBQUUsQ0FBQztRQUVyQixZQUFPLEdBQVksS0FBSyxDQUFDO1FBRXpCLFlBQU8sR0FBWSxLQUFLLENBQUM7UUFFZixlQUFVLEdBQVksS0FBSyxDQUFDO1FBRXJDLGtCQUFhLEdBQXVCLElBQUksWUFBWSxFQUFRLENBQUM7UUFDN0Qsa0JBQWEsR0FBdUIsSUFBSSxZQUFZLEVBQVEsQ0FBQztRQUM3RCxtQkFBYyxHQUF1QixJQUFJLFlBQVksRUFBUSxDQUFDO1FBQ3ZELFlBQU8sR0FBNkIsSUFBSSxZQUFZLENBQWEsSUFBSSxDQUFDLENBQUM7UUFDdkUsWUFBTyxHQUE2QixJQUFJLFlBQVksQ0FBYSxJQUFJLENBQUMsQ0FBQztRQUN4RSxXQUFNLEdBQTZCLElBQUksWUFBWSxDQUFhLElBQUksQ0FBQyxDQUFDO0lBbUJ2QyxDQUFDOzRCQS9FdkMsbUJBQW1CO0lBOEQ1QixzQkFBVyxvREFBbUI7YUFBOUI7WUFDSSxPQUFPO2dCQUNILGFBQWEsRUFBRSxJQUFJO2dCQUNuQixnQkFBZ0IsRUFBRSxDQUFDLElBQUksQ0FBQyxlQUFlLElBQUksSUFBSSxDQUFDLG1CQUFtQixDQUFDO2dCQUNwRSxxQkFBcUIsRUFBRSxJQUFJLENBQUMsbUJBQW1CO2dCQUMvQyxrQkFBa0IsRUFBRSxDQUFDLElBQUksQ0FBQyxpQkFBaUIsSUFBSSxJQUFJLENBQUMscUJBQXFCLENBQUM7Z0JBQzFFLHVCQUF1QixFQUFFLElBQUksQ0FBQyxxQkFBcUI7Z0JBQ25ELGlCQUFpQixFQUFFLENBQUMsSUFBSSxDQUFDLGdCQUFnQixJQUFJLElBQUksQ0FBQyxvQkFBb0IsQ0FBQztnQkFDdkUsc0JBQXNCLEVBQUUsSUFBSSxDQUFDLG9CQUFvQjtnQkFDakQsYUFBYSxFQUFFLElBQUksQ0FBQyxZQUFZO2dCQUNoQyxrQkFBa0IsRUFBRSxJQUFJLENBQUMsWUFBWTtnQkFDckMsa0JBQWtCLEVBQUUsSUFBSSxDQUFDLFVBQVU7Z0JBQ25DLHFCQUFxQixFQUFFLElBQUksQ0FBQyxZQUFZO2dCQUN4QyxlQUFlLEVBQUUsSUFBSSxDQUFDLGNBQWM7YUFDdkMsQ0FBQztRQUNOLENBQUM7OztPQUFBO0lBSUQsc0NBQVEsR0FBUixjQUFtQixDQUFDO0lBRXBCLHlDQUFXLEdBQVg7UUFDSSxJQUFJLElBQUksQ0FBQyxjQUFjLEVBQUU7WUFDckIsSUFBSSxDQUFDLGNBQWMsQ0FBQyxjQUFjLEVBQUUsQ0FBQztTQUN4QztJQUNMLENBQUM7SUFFRCw0Q0FBYyxHQUFkO1FBQ0ksT0FBTyxJQUFJLENBQUMsV0FBVyxDQUFDLGFBQWEsQ0FBQztJQUMxQyxDQUFDO0lBRU8sZ0RBQWtCLEdBQTFCO1FBQUEsaUJBRUM7UUFGMEIsb0JBQXVCO2FBQXZCLFVBQXVCLEVBQXZCLHFCQUF1QixFQUF2QixJQUF1QjtZQUF2QiwrQkFBdUI7O1FBQzlDLE9BQU8sVUFBVSxDQUFDLElBQUksQ0FBQyxVQUFBLFNBQVMsSUFBSSxPQUFBLEtBQUksQ0FBQyxjQUFjLEVBQUUsQ0FBQyxZQUFZLENBQUMsU0FBUyxDQUFDLEVBQTdDLENBQTZDLENBQUMsQ0FBQztJQUN2RixDQUFDO0lBRUQsMkNBQWEsR0FBYjtRQUNJLElBQUksSUFBSSxDQUFDLFFBQVEsSUFBSSxJQUFJLENBQUMsT0FBTyxFQUFFO1lBQy9CLE9BQU87U0FDVjthQUFNO1lBQ0gsSUFBSSxDQUFDLGVBQWUsR0FBRyxDQUFDLElBQUksQ0FBQyxlQUFlLENBQUM7U0FDaEQ7SUFDTCxDQUFDO0lBRUQseUNBQVcsR0FBWDtRQUNJLElBQUksSUFBSSxDQUFDLFFBQVEsSUFBSSxJQUFJLENBQUMsT0FBTyxFQUFFO1lBQy9CLE9BQU87U0FDVjthQUFNO1lBQ0gsSUFBSSxDQUFDLGNBQWMsQ0FBQyxXQUFXLEVBQUUsQ0FBQztTQUNyQztJQUNMLENBQUM7SUFFRCwwQ0FBWSxHQUFaO1FBQ0ksSUFBSSxJQUFJLENBQUMsUUFBUSxJQUFJLElBQUksQ0FBQyxPQUFPLEVBQUU7WUFDL0IsT0FBTztTQUNWO2FBQU07WUFDSCxJQUFJLENBQUMsY0FBYyxDQUFDLFlBQVksRUFBRSxDQUFDO1NBQ3RDO0lBQ0wsQ0FBQztJQUVELHlDQUFXLEdBQVgsVUFBWSxLQUFpQjtRQUN6QixJQUFJLElBQUksQ0FBQyxRQUFRLElBQUksSUFBSSxDQUFDLE9BQU8sRUFBRTtZQUMvQixPQUFPO1NBQ1Y7YUFBTTtZQUNILElBQUksSUFBSSxDQUFDLE9BQU8sRUFBRTtnQkFDZCxJQUFJLENBQUMsYUFBYSxFQUFFLENBQUM7YUFDeEI7WUFDRCxJQUFJLENBQUMsT0FBTyxDQUFDLElBQUksQ0FBQyxLQUFLLENBQUMsQ0FBQztZQUN6QixLQUFLLENBQUMsZUFBZSxFQUFFLENBQUM7U0FDM0I7SUFDTCxDQUFDO0lBRUQseUNBQVcsR0FBWCxVQUFZLEtBQWlCO1FBQ3pCLElBQUksSUFBSSxDQUFDLFFBQVEsSUFBSSxJQUFJLENBQUMsT0FBTyxFQUFFO1lBQy9CLE9BQU87U0FDVjthQUFNO1lBQ0gsSUFBSSxDQUFDLE9BQU8sQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLENBQUM7WUFDekIsS0FBSyxDQUFDLGVBQWUsRUFBRSxDQUFDO1NBQzNCO0lBQ0wsQ0FBQztJQUVELHdDQUFVLEdBQVYsVUFBVyxLQUFpQjtRQUN4QixJQUFJLElBQUksQ0FBQyxRQUFRLElBQUksSUFBSSxDQUFDLE9BQU8sRUFBRTtZQUMvQixPQUFPO1NBQ1Y7YUFBTTtZQUNILElBQUksQ0FBQyxNQUFNLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxDQUFDO1lBQ3hCLEtBQUssQ0FBQyxlQUFlLEVBQUUsQ0FBQztTQUMzQjtJQUNMLENBQUM7SUFHRCxzQ0FBUSxHQUFSLFVBQVMsS0FBYztRQUNuQixJQUFJLElBQUksQ0FBQyxjQUFjLEVBQUU7WUFDckIsSUFBSSxDQUFDLGNBQWMsQ0FBQyxZQUFZLEVBQUUsQ0FBQztZQUNuQyxLQUFLLENBQUMsZUFBZSxFQUFFLENBQUM7U0FDM0I7SUFDTCxDQUFDOzs7Z0JBOUVnQyxVQUFVOztJQWpFTztRQUFqRCxTQUFTLENBQUMsa0JBQWtCLEVBQUUsRUFBRSxNQUFNLEVBQUUsS0FBSyxFQUFFLENBQUM7a0NBQWlCLGtCQUFrQjsrREFBQztJQUU1RTtRQUFSLEtBQUssRUFBRTs7bURBQVk7SUFFWDtRQUFSLEtBQUssRUFBRTs7cURBQWM7SUFFYjtRQUFSLEtBQUssRUFBRTs7cURBQWdEO0lBRS9DO1FBQVIsS0FBSyxFQUFFOzswREFBd0I7SUFFdkI7UUFBUixLQUFLLEVBQUU7O3NEQUFvQjtJQUVuQjtRQUFSLEtBQUssRUFBRTs7c0RBQW9CO0lBRW5CO1FBQVIsS0FBSyxFQUFFOzs0REFBcUI7SUFFcEI7UUFBUixLQUFLLEVBQUU7OzhEQUFnQztJQUUvQjtRQUFSLEtBQUssRUFBRTs7MERBQTRCO0lBQzNCO1FBQVIsS0FBSyxFQUFFOzsyREFBNkI7SUFFNUI7UUFBUixLQUFLLEVBQUU7O3FEQUFxQjtJQUVwQjtRQUFSLEtBQUssRUFBRTs7d0RBQXdCO0lBRXZCO1FBQVIsS0FBSyxFQUFFOzt3REFBc0M7SUFFckM7UUFBUixLQUFLLEVBQUU7O3lEQUEyQjtJQUUxQjtRQUFSLEtBQUssRUFBRTs7d0RBQTBCO0lBRXpCO1FBQVIsS0FBSyxFQUFFOzs2REFBK0I7SUFFOUI7UUFBUixLQUFLLEVBQUU7O3dEQUFzQjtJQUVyQjtRQUFSLEtBQUssRUFBRTs7d0RBQTBCO0lBRXpCO1FBQVIsS0FBSyxFQUFFOzt3REFBMEI7SUFFZjtRQUFsQixLQUFLLENBQUMsVUFBVSxDQUFDOzsyREFBNkI7SUFFckM7UUFBVCxNQUFNLEVBQUU7a0NBQWdCLFlBQVk7OERBQWtDO0lBQzdEO1FBQVQsTUFBTSxFQUFFO2tDQUFnQixZQUFZOzhEQUFrQztJQUM3RDtRQUFULE1BQU0sRUFBRTtrQ0FBaUIsWUFBWTsrREFBa0M7SUFDdkQ7UUFBaEIsTUFBTSxDQUFDLE9BQU8sQ0FBQztrQ0FBVSxZQUFZO3dEQUFrRDtJQUN2RTtRQUFoQixNQUFNLENBQUMsT0FBTyxDQUFDO2tDQUFVLFlBQVk7d0RBQWtEO0lBQ3hFO1FBQWYsTUFBTSxDQUFDLE1BQU0sQ0FBQztrQ0FBUyxZQUFZO3VEQUFrRDtJQTRGdEY7UUFEQyxZQUFZLENBQUMsZUFBZSxFQUFFLENBQUMsUUFBUSxDQUFDLENBQUM7O3lDQUMxQixPQUFPOzt1REFLdEI7SUE3SlEsbUJBQW1CO1FBakIvQixTQUFTLENBQUM7WUFDUCxRQUFRLEVBQUUsZ1BBQ3NHO1lBQ2hILFFBQVEsRUFBRSxZQUFZO1lBQ3RCLHk1RUFBc0M7WUFFdEMsU0FBUyxFQUFFO2dCQUNQO29CQUNJLE9BQU8sRUFBRSxpQkFBaUI7b0JBQzFCLFdBQVcsRUFBRSxVQUFVLENBQUMsY0FBa0MsT0FBQSxxQkFBbUIsRUFBbkIsQ0FBbUIsQ0FBQztvQkFDOUUsS0FBSyxFQUFFLElBQUk7aUJBQ2Q7YUFDSjtZQUNELElBQUksRUFBRTtnQkFDRixPQUFPLEVBQUUsYUFBYTthQUN6Qjs7U0FDSixDQUFDO3lDQWdGbUMsVUFBVTtPQS9FbEMsbUJBQW1CLENBK0ovQjtJQUFELDBCQUFDO0NBQUEsQUEvSkQsSUErSkM7U0EvSlksbUJBQW1CIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29tcG9uZW50LCBFbGVtZW50UmVmLCBFdmVudEVtaXR0ZXIsIEhvc3RMaXN0ZW5lciwgSW5wdXQsIE9uRGVzdHJveSwgT25Jbml0LCBPdXRwdXQsIFZpZXdDaGlsZCwgZm9yd2FyZFJlZiB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgTkdfVkFMVUVfQUNDRVNTT1IgfSBmcm9tICdAYW5ndWxhci9mb3Jtcyc7XG5cbmltcG9ydCB7IEdJUElQb3BvdmVyVHJpZ2dlciB9IGZyb20gJy4uL3BvcG92ZXIvc2hhcmVkL3BvcG92ZXItdHJpZ2dlcic7XG5cbnR5cGUgQnV0dG9uSWNvblBvc2l0aW9uID0gJ2xlZnQnIHwgJ3JpZ2h0JyB8ICd0b3AnIHwgJ2JvdHRvbScgfCAnY2VudGVyJztcblxuQENvbXBvbmVudCh7XG4gICAgc2VsZWN0b3I6IGBnaXBpLWJ1dHRvbltnaXBpLXByaW1hcnldLCBnaXBpLWJ1dHRvbltnaXBpLXByaW1hcnktaWNvbl0sIGdpcGktYnV0dG9uW2dpcGktc2Vjb25kYXJ5XSwgZ2lwaS1idXR0b25bZ2lwaS1zZWNvbmRhcnktaWNvbl0sXG4gICAgICAgICAgICAgICBnaXBpLWJ1dHRvbltnaXBpLXRlcnRpYXJ5XSwgZ2lwaS1idXR0b25bZ2lwaS1saW5rXSwgZ2lwaS1idXR0b25bZ2lwaS1pY29uXSwgZ2lwaS1idXR0b25bZ2lwaS1hY3Rpb25dYCxcbiAgICBleHBvcnRBczogJ2dpcGlCdXR0b24nLFxuICAgIHRlbXBsYXRlVXJsOiAnLi9idXR0b24uY29tcG9uZW50Lmh0bWwnLFxuICAgIHN0eWxlVXJsczogWycuL2J1dHRvbi5jb21wb25lbnQuc2NzcyddLFxuICAgIHByb3ZpZGVyczogW1xuICAgICAgICB7XG4gICAgICAgICAgICBwcm92aWRlOiBOR19WQUxVRV9BQ0NFU1NPUixcbiAgICAgICAgICAgIHVzZUV4aXN0aW5nOiBmb3J3YXJkUmVmKCgpOiB0eXBlb2YgR0lQSUJ1dHRvbkNvbXBvbmVudCA9PiBHSVBJQnV0dG9uQ29tcG9uZW50KSxcbiAgICAgICAgICAgIG11bHRpOiB0cnVlXG4gICAgICAgIH1cbiAgICBdLFxuICAgIGhvc3Q6IHtcbiAgICAgICAgJ2NsYXNzJzogJ2dpcGktYnV0dG9uJyxcbiAgICB9XG59KVxuZXhwb3J0IGNsYXNzIEdJUElCdXR0b25Db21wb25lbnQgaW1wbGVtZW50cyBPbkluaXQsIE9uRGVzdHJveSB7XG5cbiAgICByZWFkb25seSBpc0J1dHRvblByaW1hcnk6IGJvb2xlYW4gPSB0aGlzLl9oYXNIb3N0QXR0cmlidXRlcygnZ2lwaS1wcmltYXJ5Jyk7XG4gICAgcmVhZG9ubHkgaXNCdXR0b25QcmltYXJ5SWNvbjogYm9vbGVhbiA9IHRoaXMuX2hhc0hvc3RBdHRyaWJ1dGVzKCdnaXBpLXByaW1hcnktaWNvbicpO1xuICAgIHJlYWRvbmx5IGlzQnV0dG9uU2Vjb25kYXJ5OiBib29sZWFuID0gdGhpcy5faGFzSG9zdEF0dHJpYnV0ZXMoJ2dpcGktc2Vjb25kYXJ5Jyk7XG4gICAgcmVhZG9ubHkgaXNCdXR0b25TZWNvbmRhcnlJY29uOiBib29sZWFuID0gdGhpcy5faGFzSG9zdEF0dHJpYnV0ZXMoJ2dpcGktc2Vjb25kYXJ5LWljb24nKTtcbiAgICByZWFkb25seSBpc0J1dHRvblRlcnRpYXJ5OiBib29sZWFuID0gdGhpcy5faGFzSG9zdEF0dHJpYnV0ZXMoJ2dpcGktdGVydGlhcnknKTtcbiAgICByZWFkb25seSBpc0J1dHRvblRlcnRpYXJ5SWNvbjogYm9vbGVhbiA9IHRoaXMuX2hhc0hvc3RBdHRyaWJ1dGVzKCdnaXBpLXRlcnRpYXJ5LWljb24nKTtcbiAgICByZWFkb25seSBpc0J1dHRvbkxpbms6IGJvb2xlYW4gPSB0aGlzLl9oYXNIb3N0QXR0cmlidXRlcygnZ2lwaS1saW5rJyk7XG4gICAgcmVhZG9ubHkgaXNCdXR0b25JY29uOiBib29sZWFuID0gdGhpcy5faGFzSG9zdEF0dHJpYnV0ZXMoJ2dpcGktaWNvbicpO1xuICAgIHJlYWRvbmx5IGlzQnV0dG9uQWN0aW9uOiBib29sZWFuID0gdGhpcy5faGFzSG9zdEF0dHJpYnV0ZXMoJ2dpcGktYWN0aW9uJyk7XG5cbiAgICBfb3ZlcmxheVZpc2libGU6IGJvb2xlYW4gPSBmYWxzZTtcblxuICAgIEBWaWV3Q2hpbGQoR0lQSVBvcG92ZXJUcmlnZ2VyLCB7IHN0YXRpYzogZmFsc2UgfSkgcG9wb3ZlclRyaWdnZXI6IEdJUElQb3BvdmVyVHJpZ2dlcjtcblxuICAgIEBJbnB1dCgpIGlkOiBzdHJpbmc7XG5cbiAgICBASW5wdXQoKSBuYW1lOiBzdHJpbmc7XG5cbiAgICBASW5wdXQoKSB0eXBlOiAnYnV0dG9uJyB8ICdzdWJtaXQnIHwgJ3Jlc2V0JyA9ICdidXR0b24nO1xuXG4gICAgQElucHV0KCkgYXJpYUxhYmVsOiBzdHJpbmcgPSAnJztcblxuICAgIEBJbnB1dCgpIHRpdGxlOiBzdHJpbmcgPSAnJztcblxuICAgIEBJbnB1dCgpIGxhYmVsOiBzdHJpbmcgPSAnJztcblxuICAgIEBJbnB1dCgpIGJ1dHRvbkNsYXNzOiBzdHJpbmc7XG5cbiAgICBASW5wdXQoKSBidXR0b25QYWRkaW5nOiBudW1iZXIgfCBzdHJpbmc7XG5cbiAgICBASW5wdXQoKSBpY29uV2lkdGg6IG51bWJlciB8IHN0cmluZztcbiAgICBASW5wdXQoKSBpY29uSGVpZ2h0OiBudW1iZXIgfCBzdHJpbmc7XG5cbiAgICBASW5wdXQoKSBpY29uOiBzdHJpbmcgPSBudWxsO1xuXG4gICAgQElucHV0KCkgc3ZnSWNvbjogc3RyaW5nID0gbnVsbDtcblxuICAgIEBJbnB1dCgpIGljb25Qb3M6IEJ1dHRvbkljb25Qb3NpdGlvbiA9ICdsZWZ0JztcblxuICAgIEBJbnB1dCgpIGRpc2FibGVkOiBib29sZWFuID0gZmFsc2U7XG5cbiAgICBASW5wdXQoKSBsb2FkaW5nOiBib29sZWFuID0gZmFsc2U7XG5cbiAgICBASW5wdXQoKSBub3RpZmljYXRpb246IGJvb2xlYW4gPSBmYWxzZTtcblxuICAgIEBJbnB1dCgpIHRvb2x0aXA6IHN0cmluZyA9ICcnO1xuXG4gICAgQElucHV0KCkgcG9wb3ZlcjogYm9vbGVhbiA9IGZhbHNlO1xuXG4gICAgQElucHV0KCkgb3ZlcmxheTogYm9vbGVhbiA9IGZhbHNlO1xuXG4gICAgQElucHV0KCdmb3JJbnB1dCcpIGlzRm9ySW5wdXQ6IGJvb2xlYW4gPSBmYWxzZTtcblxuICAgIEBPdXRwdXQoKSBvblNob3dPdmVybGF5OiBFdmVudEVtaXR0ZXI8dm9pZD4gPSBuZXcgRXZlbnRFbWl0dGVyPHZvaWQ+KCk7XG4gICAgQE91dHB1dCgpIG9uT3BlblBvcG92ZXI6IEV2ZW50RW1pdHRlcjx2b2lkPiA9IG5ldyBFdmVudEVtaXR0ZXI8dm9pZD4oKTtcbiAgICBAT3V0cHV0KCkgb25DbG9zZVBvcG92ZXI6IEV2ZW50RW1pdHRlcjx2b2lkPiA9IG5ldyBFdmVudEVtaXR0ZXI8dm9pZD4oKTtcbiAgICBAT3V0cHV0KCdjbGljaycpIG9uQ2xpY2s6IEV2ZW50RW1pdHRlcjxNb3VzZUV2ZW50PiA9IG5ldyBFdmVudEVtaXR0ZXI8TW91c2VFdmVudD4odHJ1ZSk7XG4gICAgQE91dHB1dCgnZm9jdXMnKSBvbkZvY3VzOiBFdmVudEVtaXR0ZXI8TW91c2VFdmVudD4gPSBuZXcgRXZlbnRFbWl0dGVyPE1vdXNlRXZlbnQ+KHRydWUpO1xuICAgIEBPdXRwdXQoJ2JsdXInKSBvbkJsdXI6IEV2ZW50RW1pdHRlcjxNb3VzZUV2ZW50PiA9IG5ldyBFdmVudEVtaXR0ZXI8TW91c2VFdmVudD4odHJ1ZSk7XG5cbiAgICBwdWJsaWMgZ2V0IGludGVybmFsQnV0dG9uQ2xhc3MoKSB7XG4gICAgICAgIHJldHVybiB7XG4gICAgICAgICAgICAnYnV0dG9uLWJhc2UnOiB0cnVlLFxuICAgICAgICAgICAgJ2J1dHRvbi1wcmltYXJ5JzogKHRoaXMuaXNCdXR0b25QcmltYXJ5IHx8IHRoaXMuaXNCdXR0b25QcmltYXJ5SWNvbiksXG4gICAgICAgICAgICAnYnV0dG9uLXByaW1hcnktaWNvbic6IHRoaXMuaXNCdXR0b25QcmltYXJ5SWNvbixcbiAgICAgICAgICAgICdidXR0b24tc2Vjb25kYXJ5JzogKHRoaXMuaXNCdXR0b25TZWNvbmRhcnkgfHwgdGhpcy5pc0J1dHRvblNlY29uZGFyeUljb24pLFxuICAgICAgICAgICAgJ2J1dHRvbi1zZWNvbmRhcnktaWNvbic6IHRoaXMuaXNCdXR0b25TZWNvbmRhcnlJY29uLFxuICAgICAgICAgICAgJ2J1dHRvbi10ZXJ0aWFyeSc6ICh0aGlzLmlzQnV0dG9uVGVydGlhcnkgfHwgdGhpcy5pc0J1dHRvblRlcnRpYXJ5SWNvbiksXG4gICAgICAgICAgICAnYnV0dG9uLXRlcnRpYXJ5LWljb24nOiB0aGlzLmlzQnV0dG9uVGVydGlhcnlJY29uLFxuICAgICAgICAgICAgJ2J1dHRvbi1saW5rJzogdGhpcy5pc0J1dHRvbkxpbmssXG4gICAgICAgICAgICAnYnV0dG9uLW9ubHktaWNvbic6IHRoaXMuaXNCdXR0b25JY29uLFxuICAgICAgICAgICAgJ2J1dHRvbi1mb3ItaW5wdXQnOiB0aGlzLmlzRm9ySW5wdXQsXG4gICAgICAgICAgICAnYnV0dG9uLW5vdGlmaWNhdGlvbic6IHRoaXMubm90aWZpY2F0aW9uLFxuICAgICAgICAgICAgJ2J1dHRvbi1hY3Rpb24nOiB0aGlzLmlzQnV0dG9uQWN0aW9uXG4gICAgICAgIH07XG4gICAgfVxuXG4gICAgY29uc3RydWN0b3IocHJpdmF0ZSBfZWxlbWVudFJlZjogRWxlbWVudFJlZikgeyB9XG5cbiAgICBuZ09uSW5pdCgpOiB2b2lkIHsgfVxuXG4gICAgbmdPbkRlc3Ryb3koKTogdm9pZCB7XG4gICAgICAgIGlmICh0aGlzLnBvcG92ZXJUcmlnZ2VyKSB7XG4gICAgICAgICAgICB0aGlzLnBvcG92ZXJUcmlnZ2VyLmRlc3Ryb3lQb3BvdmVyKCk7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBnZXRIb3N0RWxlbWVudCgpOiBhbnkge1xuICAgICAgICByZXR1cm4gdGhpcy5fZWxlbWVudFJlZi5uYXRpdmVFbGVtZW50O1xuICAgIH1cblxuICAgIHByaXZhdGUgX2hhc0hvc3RBdHRyaWJ1dGVzKC4uLmF0dHJpYnV0ZXM6IHN0cmluZ1tdKTogYm9vbGVhbiB7XG4gICAgICAgIHJldHVybiBhdHRyaWJ1dGVzLnNvbWUoYXR0cmlidXRlID0+IHRoaXMuZ2V0SG9zdEVsZW1lbnQoKS5oYXNBdHRyaWJ1dGUoYXR0cmlidXRlKSk7XG4gICAgfVxuXG4gICAgdG9nZ2xlT3ZlcmxheSgpOiB2b2lkIHtcbiAgICAgICAgaWYgKHRoaXMuZGlzYWJsZWQgfHwgdGhpcy5sb2FkaW5nKSB7XG4gICAgICAgICAgICByZXR1cm47XG4gICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICB0aGlzLl9vdmVybGF5VmlzaWJsZSA9ICF0aGlzLl9vdmVybGF5VmlzaWJsZTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIHNob3dQb3BvdmVyKCk6IHZvaWQge1xuICAgICAgICBpZiAodGhpcy5kaXNhYmxlZCB8fCB0aGlzLmxvYWRpbmcpIHtcbiAgICAgICAgICAgIHJldHVybjtcbiAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgIHRoaXMucG9wb3ZlclRyaWdnZXIub3BlblBvcG92ZXIoKTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIGNsb3NlUG9wb3ZlcigpOiB2b2lkIHtcbiAgICAgICAgaWYgKHRoaXMuZGlzYWJsZWQgfHwgdGhpcy5sb2FkaW5nKSB7XG4gICAgICAgICAgICByZXR1cm47XG4gICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICB0aGlzLnBvcG92ZXJUcmlnZ2VyLmNsb3NlUG9wb3ZlcigpO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgaGFuZGxlQ2xpY2soZXZlbnQ6IE1vdXNlRXZlbnQpOiB2b2lkIHtcbiAgICAgICAgaWYgKHRoaXMuZGlzYWJsZWQgfHwgdGhpcy5sb2FkaW5nKSB7XG4gICAgICAgICAgICByZXR1cm47XG4gICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICBpZiAodGhpcy5vdmVybGF5KSB7XG4gICAgICAgICAgICAgICAgdGhpcy50b2dnbGVPdmVybGF5KCk7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICB0aGlzLm9uQ2xpY2suZW1pdChldmVudCk7XG4gICAgICAgICAgICBldmVudC5zdG9wUHJvcGFnYXRpb24oKTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIGhhbmRsZUZvY3VzKGV2ZW50OiBNb3VzZUV2ZW50KTogdm9pZCB7XG4gICAgICAgIGlmICh0aGlzLmRpc2FibGVkIHx8IHRoaXMubG9hZGluZykge1xuICAgICAgICAgICAgcmV0dXJuO1xuICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgdGhpcy5vbkZvY3VzLmVtaXQoZXZlbnQpO1xuICAgICAgICAgICAgZXZlbnQuc3RvcFByb3BhZ2F0aW9uKCk7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBoYW5kbGVCbHVyKGV2ZW50OiBNb3VzZUV2ZW50KTogdm9pZCB7XG4gICAgICAgIGlmICh0aGlzLmRpc2FibGVkIHx8IHRoaXMubG9hZGluZykge1xuICAgICAgICAgICAgcmV0dXJuO1xuICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgdGhpcy5vbkJsdXIuZW1pdChldmVudCk7XG4gICAgICAgICAgICBldmVudC5zdG9wUHJvcGFnYXRpb24oKTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIEBIb3N0TGlzdGVuZXIoJ3dpbmRvdzpyZXNpemUnLCBbJyRldmVudCddKVxuICAgIG9uUmVzaXplKGV2ZW50OiBVSUV2ZW50KTogdm9pZCB7XG4gICAgICAgIGlmICh0aGlzLnBvcG92ZXJUcmlnZ2VyKSB7XG4gICAgICAgICAgICB0aGlzLnBvcG92ZXJUcmlnZ2VyLmNsb3NlUG9wb3ZlcigpO1xuICAgICAgICAgICAgZXZlbnQuc3RvcFByb3BhZ2F0aW9uKCk7XG4gICAgICAgIH1cbiAgICB9XG5cbn1cbiJdfQ==
277
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYnV0dG9uLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiJuZzovL0BnaXBpc2lzdGVtYXMvbmctY29yZS8iLCJzb3VyY2VzIjpbInNoYXJlZC9naXBpLWNvbXBvbmVudHMvYnV0dG9uL2J1dHRvbi5jb21wb25lbnQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IjtBQUFBLE9BQU8sRUFBRSxTQUFTLEVBQUUsVUFBVSxFQUFFLFlBQVksRUFBRSxZQUFZLEVBQUUsS0FBSyxFQUFFLFNBQVMsRUFBRSxNQUFNLEVBQUUsTUFBTSxFQUFFLFNBQVMsRUFBRSxVQUFVLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDM0ksT0FBTyxFQUFFLGlCQUFpQixFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFFbkQsT0FBTyxFQUFFLGtCQUFrQixFQUFFLE1BQU0sbUNBQW1DLENBQUM7QUFxQnZFO0lBK0VJLDZCQUFvQixXQUF1QjtRQUF2QixnQkFBVyxHQUFYLFdBQVcsQ0FBWTtRQTdFbEMsb0JBQWUsR0FBWSxJQUFJLENBQUMsa0JBQWtCLENBQUMsY0FBYyxDQUFDLENBQUM7UUFDbkUsd0JBQW1CLEdBQVksSUFBSSxDQUFDLGtCQUFrQixDQUFDLG1CQUFtQixDQUFDLENBQUM7UUFDNUUsc0JBQWlCLEdBQVksSUFBSSxDQUFDLGtCQUFrQixDQUFDLGdCQUFnQixDQUFDLENBQUM7UUFDdkUsMEJBQXFCLEdBQVksSUFBSSxDQUFDLGtCQUFrQixDQUFDLHFCQUFxQixDQUFDLENBQUM7UUFDaEYscUJBQWdCLEdBQVksSUFBSSxDQUFDLGtCQUFrQixDQUFDLGVBQWUsQ0FBQyxDQUFDO1FBQ3JFLHlCQUFvQixHQUFZLElBQUksQ0FBQyxrQkFBa0IsQ0FBQyxvQkFBb0IsQ0FBQyxDQUFDO1FBQzlFLGlCQUFZLEdBQVksSUFBSSxDQUFDLGtCQUFrQixDQUFDLFdBQVcsQ0FBQyxDQUFDO1FBQzdELGlCQUFZLEdBQVksSUFBSSxDQUFDLGtCQUFrQixDQUFDLFdBQVcsQ0FBQyxDQUFDO1FBQzdELG1C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QUFLLENBQUMsVUFBVSxDQUFDOzsyREFBNkI7SUFFckM7UUFBVCxNQUFNLEVBQUU7a0NBQWdCLFlBQVk7OERBQWtDO0lBQzdEO1FBQVQsTUFBTSxFQUFFO2tDQUFnQixZQUFZOzhEQUFrQztJQUM3RDtRQUFULE1BQU0sRUFBRTtrQ0FBaUIsWUFBWTsrREFBa0M7SUFDdkQ7UUFBaEIsTUFBTSxDQUFDLE9BQU8sQ0FBQztrQ0FBVSxZQUFZO3dEQUFrRDtJQUN2RTtRQUFoQixNQUFNLENBQUMsT0FBTyxDQUFDO2tDQUFVLFlBQVk7d0RBQWtEO0lBQ3hFO1FBQWYsTUFBTSxDQUFDLE1BQU0sQ0FBQztrQ0FBUyxZQUFZO3VEQUFrRDtJQTRGdEY7UUFEQyxZQUFZLENBQUMsZUFBZSxFQUFFLENBQUMsUUFBUSxDQUFDLENBQUM7O3lDQUMxQixPQUFPOzt1REFLdEI7SUE3SlEsbUJBQW1CO1FBakIvQixTQUFTLENBQUM7WUFDUCxRQUFRLEVBQUUsZ1BBQ3NHO1lBQ2hILFFBQVEsRUFBRSxZQUFZO1lBQ3RCLDg4RUFBc0M7WUFFdEMsU0FBUyxFQUFFO2dCQUNQO29CQUNJLE9BQU8sRUFBRSxpQkFBaUI7b0JBQzFCLFdBQVcsRUFBRSxVQUFVLENBQUMsY0FBa0MsT0FBQSxxQkFBbUIsRUFBbkIsQ0FBbUIsQ0FBQztvQkFDOUUsS0FBSyxFQUFFLElBQUk7aUJBQ2Q7YUFDSjtZQUNELElBQUksRUFBRTtnQkFDRixPQUFPLEVBQUUsYUFBYTthQUN6Qjs7U0FDSixDQUFDO3lDQWdGbUMsVUFBVTtPQS9FbEMsbUJBQW1CLENBK0ovQjtJQUFELDBCQUFDO0NBQUEsQUEvSkQsSUErSkM7U0EvSlksbUJBQW1CIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29tcG9uZW50LCBFbGVtZW50UmVmLCBFdmVudEVtaXR0ZXIsIEhvc3RMaXN0ZW5lciwgSW5wdXQsIE9uRGVzdHJveSwgT25Jbml0LCBPdXRwdXQsIFZpZXdDaGlsZCwgZm9yd2FyZFJlZiB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgTkdfVkFMVUVfQUNDRVNTT1IgfSBmcm9tICdAYW5ndWxhci9mb3Jtcyc7XG5cbmltcG9ydCB7IEdJUElQb3BvdmVyVHJpZ2dlciB9IGZyb20gJy4uL3BvcG92ZXIvc2hhcmVkL3BvcG92ZXItdHJpZ2dlcic7XG5cbnR5cGUgQnV0dG9uSWNvblBvc2l0aW9uID0gJ2xlZnQnIHwgJ3JpZ2h0JyB8ICd0b3AnIHwgJ2JvdHRvbScgfCAnY2VudGVyJztcblxuQENvbXBvbmVudCh7XG4gICAgc2VsZWN0b3I6IGBnaXBpLWJ1dHRvbltnaXBpLXByaW1hcnldLCBnaXBpLWJ1dHRvbltnaXBpLXByaW1hcnktaWNvbl0sIGdpcGktYnV0dG9uW2dpcGktc2Vjb25kYXJ5XSwgZ2lwaS1idXR0b25bZ2lwaS1zZWNvbmRhcnktaWNvbl0sXG4gICAgICAgICAgICAgICBnaXBpLWJ1dHRvbltnaXBpLXRlcnRpYXJ5XSwgZ2lwaS1idXR0b25bZ2lwaS1saW5rXSwgZ2lwaS1idXR0b25bZ2lwaS1pY29uXSwgZ2lwaS1idXR0b25bZ2lwaS1hY3Rpb25dYCxcbiAgICBleHBvcnRBczogJ2dpcGlCdXR0b24nLFxuICAgIHRlbXBsYXRlVXJsOiAnLi9idXR0b24uY29tcG9uZW50Lmh0bWwnLFxuICAgIHN0eWxlVXJsczogWycuL2J1dHRvbi5jb21wb25lbnQuc2NzcyddLFxuICAgIHByb3ZpZGVyczogW1xuICAgICAgICB7XG4gICAgICAgICAgICBwcm92aWRlOiBOR19WQUxVRV9BQ0NFU1NPUixcbiAgICAgICAgICAgIHVzZUV4aXN0aW5nOiBmb3J3YXJkUmVmKCgpOiB0eXBlb2YgR0lQSUJ1dHRvbkNvbXBvbmVudCA9PiBHSVBJQnV0dG9uQ29tcG9uZW50KSxcbiAgICAgICAgICAgIG11bHRpOiB0cnVlXG4gICAgICAgIH1cbiAgICBdLFxuICAgIGhvc3Q6IHtcbiAgICAgICAgJ2NsYXNzJzogJ2dpcGktYnV0dG9uJyxcbiAgICB9XG59KVxuZXhwb3J0IGNsYXNzIEdJUElCdXR0b25Db21wb25lbnQgaW1wbGVtZW50cyBPbkluaXQsIE9uRGVzdHJveSB7XG5cbiAgICByZWFkb25seSBpc0J1dHRvblByaW1hcnk6IGJvb2xlYW4gPSB0aGlzLl9oYXNIb3N0QXR0cmlidXRlcygnZ2lwaS1wcmltYXJ5Jyk7XG4gICAgcmVhZG9ubHkgaXNCdXR0b25QcmltYXJ5SWNvbjogYm9vbGVhbiA9IHRoaXMuX2hhc0hvc3RBdHRyaWJ1dGVzKCdnaXBpLXByaW1hcnktaWNvbicpO1xuICAgIHJlYWRvbmx5IGlzQnV0dG9uU2Vjb25kYXJ5OiBib29sZWFuID0gdGhpcy5faGFzSG9zdEF0dHJpYnV0ZXMoJ2dpcGktc2Vjb25kYXJ5Jyk7XG4gICAgcmVhZG9ubHkgaXNCdXR0b25TZWNvbmRhcnlJY29uOiBib29sZWFuID0gdGhpcy5faGFzSG9zdEF0dHJpYnV0ZXMoJ2dpcGktc2Vjb25kYXJ5LWljb24nKTtcbiAgICByZWFkb25seSBpc0J1dHRvblRlcnRpYXJ5OiBib29sZWFuID0gdGhpcy5faGFzSG9zdEF0dHJpYnV0ZXMoJ2dpcGktdGVydGlhcnknKTtcbiAgICByZWFkb25seSBpc0J1dHRvblRlcnRpYXJ5SWNvbjogYm9vbGVhbiA9IHRoaXMuX2hhc0hvc3RBdHRyaWJ1dGVzKCdnaXBpLXRlcnRpYXJ5LWljb24nKTtcbiAgICByZWFkb25seSBpc0J1dHRvbkxpbms6IGJvb2xlYW4gPSB0aGlzLl9oYXNIb3N0QXR0cmlidXRlcygnZ2lwaS1saW5rJyk7XG4gICAgcmVhZG9ubHkgaXNCdXR0b25JY29uOiBib29sZWFuID0gdGhpcy5faGFzSG9zdEF0dHJpYnV0ZXMoJ2dpcGktaWNvbicpO1xuICAgIHJlYWRvbmx5IGlzQnV0dG9uQWN0aW9uOiBib29sZWFuID0gdGhpcy5faGFzSG9zdEF0dHJpYnV0ZXMoJ2dpcGktYWN0aW9uJyk7XG5cbiAgICBfb3ZlcmxheVZpc2libGU6IGJvb2xlYW4gPSBmYWxzZTtcblxuICAgIEBWaWV3Q2hpbGQoR0lQSVBvcG92ZXJUcmlnZ2VyLCB7IHN0YXRpYzogZmFsc2UgfSkgcG9wb3ZlclRyaWdnZXI6IEdJUElQb3BvdmVyVHJpZ2dlcjtcblxuICAgIEBJbnB1dCgpIGlkOiBzdHJpbmc7XG5cbiAgICBASW5wdXQoKSBuYW1lOiBzdHJpbmc7XG5cbiAgICBASW5wdXQoKSB0eXBlOiAnYnV0dG9uJyB8ICdzdWJtaXQnIHwgJ3Jlc2V0JyA9ICdidXR0b24nO1xuXG4gICAgQElucHV0KCkgYXJpYUxhYmVsOiBzdHJpbmcgPSAnJztcblxuICAgIEBJbnB1dCgpIHRpdGxlOiBzdHJpbmcgPSAnJztcblxuICAgIEBJbnB1dCgpIGxhYmVsOiBzdHJpbmcgPSAnJztcblxuICAgIEBJbnB1dCgpIGJ1dHRvbkNsYXNzOiBzdHJpbmc7XG5cbiAgICBASW5wdXQoKSBidXR0b25QYWRkaW5nOiBudW1iZXIgfCBzdHJpbmc7XG5cbiAgICBASW5wdXQoKSBpY29uV2lkdGg6IG51bWJlciB8IHN0cmluZztcbiAgICBASW5wdXQoKSBpY29uSGVpZ2h0OiBudW1iZXIgfCBzdHJpbmc7XG5cbiAgICBASW5wdXQoKSBpY29uOiBzdHJpbmcgPSBudWxsO1xuXG4gICAgQElucHV0KCkgc3ZnSWNvbjogc3RyaW5nID0gbnVsbDtcblxuICAgIEBJbnB1dCgpIGljb25Qb3M6IEJ1dHRvbkljb25Qb3NpdGlvbiA9ICdsZWZ0JztcblxuICAgIEBJbnB1dCgpIGRpc2FibGVkOiBib29sZWFuID0gZmFsc2U7XG5cbiAgICBASW5wdXQoKSBsb2FkaW5nOiBib29sZWFuID0gZmFsc2U7XG5cbiAgICBASW5wdXQoKSBub3RpZmljYXRpb246IGJvb2xlYW4gPSBmYWxzZTtcblxuICAgIEBJbnB1dCgpIHRvb2x0aXA6IHN0cmluZyA9ICcnO1xuXG4gICAgQElucHV0KCkgcG9wb3ZlcjogYm9vbGVhbiA9IGZhbHNlO1xuXG4gICAgQElucHV0KCkgb3ZlcmxheTogYm9vbGVhbiA9IGZhbHNlO1xuXG4gICAgQElucHV0KCdmb3JJbnB1dCcpIGlzRm9ySW5wdXQ6IGJvb2xlYW4gPSBmYWxzZTtcblxuICAgIEBPdXRwdXQoKSBvblNob3dPdmVybGF5OiBFdmVudEVtaXR0ZXI8dm9pZD4gPSBuZXcgRXZlbnRFbWl0dGVyPHZvaWQ+KCk7XG4gICAgQE91dHB1dCgpIG9uT3BlblBvcG92ZXI6IEV2ZW50RW1pdHRlcjx2b2lkPiA9IG5ldyBFdmVudEVtaXR0ZXI8dm9pZD4oKTtcbiAgICBAT3V0cHV0KCkgb25DbG9zZVBvcG92ZXI6IEV2ZW50RW1pdHRlcjx2b2lkPiA9IG5ldyBFdmVudEVtaXR0ZXI8dm9pZD4oKTtcbiAgICBAT3V0cHV0KCdjbGljaycpIG9uQ2xpY2s6IEV2ZW50RW1pdHRlcjxNb3VzZUV2ZW50PiA9IG5ldyBFdmVudEVtaXR0ZXI8TW91c2VFdmVudD4odHJ1ZSk7XG4gICAgQE91dHB1dCgnZm9jdXMnKSBvbkZvY3VzOiBFdmVudEVtaXR0ZXI8TW91c2VFdmVudD4gPSBuZXcgRXZlbnRFbWl0dGVyPE1vdXNlRXZlbnQ+KHRydWUpO1xuICAgIEBPdXRwdXQoJ2JsdXInKSBvbkJsdXI6IEV2ZW50RW1pdHRlcjxNb3VzZUV2ZW50PiA9IG5ldyBFdmVudEVtaXR0ZXI8TW91c2VFdmVudD4odHJ1ZSk7XG5cbiAgICBwdWJsaWMgZ2V0IGludGVybmFsQnV0dG9uQ2xhc3MoKSB7XG4gICAgICAgIHJldHVybiB7XG4gICAgICAgICAgICAnYnV0dG9uLWJhc2UnOiB0cnVlLFxuICAgICAgICAgICAgJ2J1dHRvbi1wcmltYXJ5JzogKHRoaXMuaXNCdXR0b25QcmltYXJ5IHx8IHRoaXMuaXNCdXR0b25QcmltYXJ5SWNvbiksXG4gICAgICAgICAgICAnYnV0dG9uLXByaW1hcnktaWNvbic6IHRoaXMuaXNCdXR0b25QcmltYXJ5SWNvbixcbiAgICAgICAgICAgICdidXR0b24tc2Vjb25kYXJ5JzogKHRoaXMuaXNCdXR0b25TZWNvbmRhcnkgfHwgdGhpcy5pc0J1dHRvblNlY29uZGFyeUljb24pLFxuICAgICAgICAgICAgJ2J1dHRvbi1zZWNvbmRhcnktaWNvbic6IHRoaXMuaXNCdXR0b25TZWNvbmRhcnlJY29uLFxuICAgICAgICAgICAgJ2J1dHRvbi10ZXJ0aWFyeSc6ICh0aGlzLmlzQnV0dG9uVGVydGlhcnkgfHwgdGhpcy5pc0J1dHRvblRlcnRpYXJ5SWNvbiksXG4gICAgICAgICAgICAnYnV0dG9uLXRlcnRpYXJ5LWljb24nOiB0aGlzLmlzQnV0dG9uVGVydGlhcnlJY29uLFxuICAgICAgICAgICAgJ2J1dHRvbi1saW5rJzogdGhpcy5pc0J1dHRvbkxpbmssXG4gICAgICAgICAgICAnYnV0dG9uLW9ubHktaWNvbic6IHRoaXMuaXNCdXR0b25JY29uLFxuICAgICAgICAgICAgJ2J1dHRvbi1mb3ItaW5wdXQnOiB0aGlzLmlzRm9ySW5wdXQsXG4gICAgICAgICAgICAnYnV0dG9uLW5vdGlmaWNhdGlvbic6IHRoaXMubm90aWZpY2F0aW9uLFxuICAgICAgICAgICAgJ2J1dHRvbi1hY3Rpb24nOiB0aGlzLmlzQnV0dG9uQWN0aW9uXG4gICAgICAgIH07XG4gICAgfVxuXG4gICAgY29uc3RydWN0b3IocHJpdmF0ZSBfZWxlbWVudFJlZjogRWxlbWVudFJlZikgeyB9XG5cbiAgICBuZ09uSW5pdCgpOiB2b2lkIHsgfVxuXG4gICAgbmdPbkRlc3Ryb3koKTogdm9pZCB7XG4gICAgICAgIGlmICh0aGlzLnBvcG92ZXJUcmlnZ2VyKSB7XG4gICAgICAgICAgICB0aGlzLnBvcG92ZXJUcmlnZ2VyLmRlc3Ryb3lQb3BvdmVyKCk7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBnZXRIb3N0RWxlbWVudCgpOiBhbnkge1xuICAgICAgICByZXR1cm4gdGhpcy5fZWxlbWVudFJlZi5uYXRpdmVFbGVtZW50O1xuICAgIH1cblxuICAgIHByaXZhdGUgX2hhc0hvc3RBdHRyaWJ1dGVzKC4uLmF0dHJpYnV0ZXM6IHN0cmluZ1tdKTogYm9vbGVhbiB7XG4gICAgICAgIHJldHVybiBhdHRyaWJ1dGVzLnNvbWUoYXR0cmlidXRlID0+IHRoaXMuZ2V0SG9zdEVsZW1lbnQoKS5oYXNBdHRyaWJ1dGUoYXR0cmlidXRlKSk7XG4gICAgfVxuXG4gICAgdG9nZ2xlT3ZlcmxheSgpOiB2b2lkIHtcbiAgICAgICAgaWYgKHRoaXMuZGlzYWJsZWQgfHwgdGhpcy5sb2FkaW5nKSB7XG4gICAgICAgICAgICByZXR1cm47XG4gICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICB0aGlzLl9vdmVybGF5VmlzaWJsZSA9ICF0aGlzLl9vdmVybGF5VmlzaWJsZTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIHNob3dQb3BvdmVyKCk6IHZvaWQge1xuICAgICAgICBpZiAodGhpcy5kaXNhYmxlZCB8fCB0aGlzLmxvYWRpbmcpIHtcbiAgICAgICAgICAgIHJldHVybjtcbiAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgIHRoaXMucG9wb3ZlclRyaWdnZXIub3BlblBvcG92ZXIoKTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIGNsb3NlUG9wb3ZlcigpOiB2b2lkIHtcbiAgICAgICAgaWYgKHRoaXMuZGlzYWJsZWQgfHwgdGhpcy5sb2FkaW5nKSB7XG4gICAgICAgICAgICByZXR1cm47XG4gICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICB0aGlzLnBvcG92ZXJUcmlnZ2VyLmNsb3NlUG9wb3ZlcigpO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgaGFuZGxlQ2xpY2soZXZlbnQ6IE1vdXNlRXZlbnQpOiB2b2lkIHtcbiAgICAgICAgaWYgKHRoaXMuZGlzYWJsZWQgfHwgdGhpcy5sb2FkaW5nKSB7XG4gICAgICAgICAgICByZXR1cm47XG4gICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICBpZiAodGhpcy5vdmVybGF5KSB7XG4gICAgICAgICAgICAgICAgdGhpcy50b2dnbGVPdmVybGF5KCk7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICB0aGlzLm9uQ2xpY2suZW1pdChldmVudCk7XG4gICAgICAgICAgICBldmVudC5zdG9wUHJvcGFnYXRpb24oKTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIGhhbmRsZUZvY3VzKGV2ZW50OiBNb3VzZUV2ZW50KTogdm9pZCB7XG4gICAgICAgIGlmICh0aGlzLmRpc2FibGVkIHx8IHRoaXMubG9hZGluZykge1xuICAgICAgICAgICAgcmV0dXJuO1xuICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgdGhpcy5vbkZvY3VzLmVtaXQoZXZlbnQpO1xuICAgICAgICAgICAgZXZlbnQuc3RvcFByb3BhZ2F0aW9uKCk7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBoYW5kbGVCbHVyKGV2ZW50OiBNb3VzZUV2ZW50KTogdm9pZCB7XG4gICAgICAgIGlmICh0aGlzLmRpc2FibGVkIHx8IHRoaXMubG9hZGluZykge1xuICAgICAgICAgICAgcmV0dXJuO1xuICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgdGhpcy5vbkJsdXIuZW1pdChldmVudCk7XG4gICAgICAgICAgICBldmVudC5zdG9wUHJvcGFnYXRpb24oKTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIEBIb3N0TGlzdGVuZXIoJ3dpbmRvdzpyZXNpemUnLCBbJyRldmVudCddKVxuICAgIG9uUmVzaXplKGV2ZW50OiBVSUV2ZW50KTogdm9pZCB7XG4gICAgICAgIGlmICh0aGlzLnBvcG92ZXJUcmlnZ2VyKSB7XG4gICAgICAgICAgICB0aGlzLnBvcG92ZXJUcmlnZ2VyLmNsb3NlUG9wb3ZlcigpO1xuICAgICAgICAgICAgZXZlbnQuc3RvcFByb3BhZ2F0aW9uKCk7XG4gICAgICAgIH1cbiAgICB9XG5cbn1cbiJdfQ==
@@ -11,6 +11,7 @@ var GIPIFormFieldComponent = /** @class */ (function () {
11
11
  this.id = this._name;
12
12
  this.name = this._name;
13
13
  this.label = '';
14
+ this.tooltip = '';
14
15
  this.ariaLabel = '';
15
16
  this.placeholder = '';
16
17
  this.readonly = false;
@@ -142,6 +143,10 @@ var GIPIFormFieldComponent = /** @class */ (function () {
142
143
  Input(),
143
144
  __metadata("design:type", String)
144
145
  ], GIPIFormFieldComponent.prototype, "label", void 0);
146
+ __decorate([
147
+ Input(),
148
+ __metadata("design:type", String)
149
+ ], GIPIFormFieldComponent.prototype, "tooltip", void 0);
145
150
  __decorate([
146
151
  Input(),
147
152
  __metadata("design:type", String)
@@ -253,7 +258,7 @@ var GIPIFormFieldComponent = /** @class */ (function () {
253
258
  Component({
254
259
  selector: "gipi-form-field",
255
260
  exportAs: 'gipiFormField',
256
- template: "<label class=\"form-field-container\"\n [attr.for]=\"id\">\n <span class=\"form-field-label\"\n *ngIf=\"label\">\n {{ label }}\n <span *ngIf=\"required && label\"> * </span>\n </span>\n\n <div class=\"form-field-content\"\n [class.form-field-select]=\"type === 'select'\"\n (click)=\"onInputClick($event)\">\n <!-- Input others -->\n <input class=\"form-field-input\"\n *ngIf=\"type && type !== 'currency'\"\n #inputRef\n autocomplete=\"off\"\n [attr.id]=\"id\"\n [attr.aria-label]=\"ariaLabel\"\n [name]=\"name\"\n [type]=\"type\"\n [min]=\"min\"\n [max]=\"max ? max : 250\"\n [maxlength]=\"maxLength ? maxLength : 250\"\n [mask]=\"mask\"\n [required]=\"required\"\n [placeholder]=\"placeholder\"\n [readonly]=\"readonly\"\n [disabled]=\"disabled\"\n [pattern]=\"pattern\"\n [(ngModel)]=\"model\"\n [value]=\"value\"\n (keydown)=\"onInputKeydown($event)\"\n (focus)=\"onInputFocus($event)\"\n (blur)=\"onInputBlur($event)\"\n (click)=\"onInputClick($event)\">\n\n <!-- Input currency -->\n <input class=\"form-field-input\"\n *ngIf=\"type && type === 'currency'\"\n #inputRef\n currencyMask\n autocomplete=\"off\"\n [attr.id]=\"id\"\n [attr.aria-label]=\"ariaLabel\"\n [name]=\"name + 'currency'\"\n [type]=\"type\"\n [min]=\"min\"\n [max]=\"max\"\n [maxlength]=\"maxLength\"\n [mask]=\"mask\"\n [required]=\"required\"\n [placeholder]=\"placeholder\"\n [readonly]=\"readonly\"\n [disabled]=\"disabled\"\n [pattern]=\"pattern\"\n [(ngModel)]=\"model\"\n [value]=\"value\"\n [options]=\"optionsCurrency\"\n (keydown)=\"onInputKeydown($event)\"\n (focus)=\"onInputFocus($event)\"\n (blur)=\"onInputBlur($event)\"\n (click)=\"onInputClick($event)\">\n\n <div class=\"form-field-suffix\"\n *ngIf=\"type === 'select'\">\n <div class=\"form-field-trigger\"\n *ngIf=\"showTrigger && (trigger && trigger > 1)\">\n + {{ trigger >= 99 ? 99 : trigger }}\n </div>\n\n <button ariaLabel=\"Limpar op\u00E7\u00F5es\"\n class=\"form-field-button\"\n *ngIf=\"showClear\"\n (click)=\"onButtonClearClick($event)\">\n <mat-icon class=\"form-field-icon\"> clear </mat-icon>\n </button>\n\n <div class=\"form-field-icon-arrow\"> </div>\n </div>\n\n <div class=\"form-field-suffix\"\n *ngIf=\"type === 'search'\">\n <button ariaLabel=\"Limpar\"\n class=\"form-field-button\"\n *ngIf=\"showClear\"\n (click)=\"onButtonClearClick($event)\">\n <mat-icon class=\"form-field-icon\"> clear </mat-icon>\n </button>\n\n <button ariaLabel=\"Pesquisar\"\n class=\"form-field-button\"\n *ngIf=\"showSearch\"\n (click)=\"onButtonSearchClick($event)\">\n <mat-icon class=\"form-field-icon\">\n search\n </mat-icon>\n </button>\n\n <mat-icon class=\"form-field-icon\"\n *ngIf=\"!showSearch\">\n search\n </mat-icon>\n </div>\n </div>\n</label>",
261
+ template: "<label class=\"form-field-container\"\n [attr.for]=\"id\">\n <span class=\"form-field-label\"\n *ngIf=\"label\">\n {{ label }}\n <span *ngIf=\"required && label\"> * </span>\n <gipi-helpful-tip *ngIf=\"tooltip && label\"\n [tooltip]=\"tooltip\">\n </gipi-helpful-tip>\n </span>\n\n <div class=\"form-field-content\"\n [class.form-field-select]=\"type === 'select'\"\n (click)=\"onInputClick($event)\">\n <!-- Input others -->\n <input class=\"form-field-input\"\n *ngIf=\"type && type !== 'currency'\"\n #inputRef\n autocomplete=\"off\"\n [attr.id]=\"id\"\n [attr.aria-label]=\"ariaLabel\"\n [name]=\"name\"\n [type]=\"type\"\n [min]=\"min\"\n [max]=\"max ? max : 250\"\n [maxlength]=\"maxLength ? maxLength : 250\"\n [mask]=\"mask\"\n [required]=\"required\"\n [placeholder]=\"placeholder\"\n [readonly]=\"readonly\"\n [disabled]=\"disabled\"\n [pattern]=\"pattern\"\n [(ngModel)]=\"model\"\n [value]=\"value\"\n (keydown)=\"onInputKeydown($event)\"\n (focus)=\"onInputFocus($event)\"\n (blur)=\"onInputBlur($event)\"\n (click)=\"onInputClick($event)\">\n\n <!-- Input currency -->\n <input class=\"form-field-input\"\n *ngIf=\"type && type === 'currency'\"\n #inputRef\n currencyMask\n autocomplete=\"off\"\n [attr.id]=\"id\"\n [attr.aria-label]=\"ariaLabel\"\n [name]=\"name + 'currency'\"\n [type]=\"type\"\n [min]=\"min\"\n [max]=\"max\"\n [maxlength]=\"maxLength\"\n [mask]=\"mask\"\n [required]=\"required\"\n [placeholder]=\"placeholder\"\n [readonly]=\"readonly\"\n [disabled]=\"disabled\"\n [pattern]=\"pattern\"\n [(ngModel)]=\"model\"\n [value]=\"value\"\n [options]=\"optionsCurrency\"\n (keydown)=\"onInputKeydown($event)\"\n (focus)=\"onInputFocus($event)\"\n (blur)=\"onInputBlur($event)\"\n (click)=\"onInputClick($event)\">\n\n <div class=\"form-field-suffix\"\n *ngIf=\"type === 'select'\">\n <div class=\"form-field-trigger\"\n *ngIf=\"showTrigger && (trigger && trigger > 1)\">\n + {{ trigger >= 99 ? 99 : trigger }}\n </div>\n\n <button ariaLabel=\"Limpar op\u00E7\u00F5es\"\n class=\"form-field-button\"\n *ngIf=\"showClear\"\n (click)=\"onButtonClearClick($event)\">\n <mat-icon class=\"form-field-icon\"> clear </mat-icon>\n </button>\n\n <div class=\"form-field-icon-arrow\"> </div>\n </div>\n\n <div class=\"form-field-suffix\"\n *ngIf=\"type === 'search'\">\n <button ariaLabel=\"Limpar\"\n class=\"form-field-button\"\n *ngIf=\"showClear\"\n (click)=\"onButtonClearClick($event)\">\n <mat-icon class=\"form-field-icon\"> clear </mat-icon>\n </button>\n\n <button ariaLabel=\"Pesquisar\"\n class=\"form-field-button\"\n *ngIf=\"showSearch\"\n (click)=\"onButtonSearchClick($event)\">\n <mat-icon class=\"form-field-icon\">\n search\n </mat-icon>\n </button>\n\n <mat-icon class=\"form-field-icon\"\n *ngIf=\"!showSearch\">\n search\n </mat-icon>\n </div>\n </div>\n</label>\n",
257
262
  providers: [
258
263
  {
259
264
  provide: NG_VALUE_ACCESSOR,
@@ -265,7 +270,7 @@ var GIPIFormFieldComponent = /** @class */ (function () {
265
270
  'class': 'gipi-form-field',
266
271
  },
267
272
  changeDetection: ChangeDetectionStrategy.OnPush,
268
- styles: [":host{display:block;min-width:0;max-width:100%;flex:1}.form-field-container{display:flex;flex-direction:column;gap:1rem;width:100%}.form-field-container .form-field-label{color:#131313;font-size:1.4rem;line-height:100%}.form-field-container .form-field-label>span{color:#d14014;font-size:inherit;line-height:inherit}.form-field-container .form-field-content{display:flex;flex-direction:row;align-items:center;justify-content:space-between;padding:1.2rem;gap:1rem;width:100%;max-height:4rem;border-radius:5px;cursor:text;background-color:#fff;border:1px solid #0000001f;color:#696969;caret-color:#9a9da2;transition:.2s}.form-field-container .form-field-content:focus-within,.form-field-container .form-field-content:has(.form-field-input:active),.form-field-container .form-field-content:has(.form-field-input:focus){box-shadow:0 0 0 .2rem #f0f0f0}.form-field-container .form-field-content:focus-within,.form-field-container .form-field-content:hover{border-color:#bfbfbf!important}.form-field-container .form-field-content:has(.form-field-input:invalid){border-color:#d14014!important;color:#d14014!important;caret-color:#d14014!important}.form-field-container .form-field-content:has(.form-field-input:invalid):focus-within{box-shadow:0 0 0 .2rem #f1c4b6!important}.form-field-container .form-field-content:has(.form-field-input:disabled){border-color:#e0e1e2!important;color:#d1d2d4!important;box-shadow:none!important;cursor:not-allowed!important;caret-color:#d1d2d4!important;pointer-events:none!important}.form-field-container .form-field-content:has(.form-field-input:disabled) .form-field-input,.form-field-container .form-field-content:has(.form-field-input:disabled) .form-field-suffix .form-field-button{cursor:not-allowed!important;pointer-events:none!important}.form-field-container .form-field-content:has(.form-field-input:disabled) .form-field-suffix .form-field-trigger{border-color:#e0e1e2!important;pointer-events:none!important}.form-field-container .form-field-content:has(.form-field-input:disabled) mat-icon{color:#d1d2d4!important;fill:#d1d2d4!important;cursor:not-allowed!important;pointer-events:none!important}.form-field-container .form-field-content.form-field-select,.form-field-container .form-field-content.form-field-select .form-field-input{box-shadow:none!important;cursor:pointer!important}.form-field-container .form-field-content .form-field-input{height:16px;outline:0;border:none;background-color:transparent;color:inherit;flex:1;max-width:85%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.form-field-container .form-field-content .form-field-suffix{display:flex;flex-direction:row;align-items:center;gap:1.6rem}.form-field-container .form-field-content .form-field-suffix .form-field-trigger{display:flex;flex-direction:column;align-items:center;justify-content:center;padding-inline:8px;border-radius:40px;border:1px solid transparent;color:#131313;background-color:#f0f0f0;font-size:1.2rem;line-height:1.4rem}.form-field-container .form-field-content .form-field-suffix .form-field-button{display:flex;align-items:center;justify-content:center;outline:0;border:none;cursor:pointer;background-color:transparent}.form-field-container .form-field-content .form-field-suffix .form-field-button:hover:not(:disabled)>mat-icon{transform:scale(1.08)}.form-field-icon{width:1.6rem;height:1.6rem;font-size:1.6rem;color:#131313;fill:#131313}.form-field-icon-arrow{border:solid #131313;border-width:0 2px 2px 0;display:inline-block;padding:3px;transform:rotate(45deg);margin:-5px 4px 0}"]
273
+ styles: [":host{display:block;min-width:0;max-width:100%;flex:1}.form-field-container{display:flex;flex-direction:column;gap:1rem;width:100%}.form-field-container .form-field-label{color:#131313;font-size:1.4rem;line-height:100%}.form-field-container .form-field-label>span{color:#d14014;font-size:inherit;line-height:inherit}.form-field-container .form-field-content{display:flex;flex-direction:row;align-items:center;justify-content:space-between;padding:1.2rem;gap:1rem;width:100%;max-height:4rem;border-radius:5px;cursor:text;background-color:#fff;border:1px solid #0000001f;color:#696969;caret-color:#9a9da2;transition:.2s}.form-field-container .form-field-content:focus-within,.form-field-container .form-field-content:has(.form-field-input:active),.form-field-container .form-field-content:has(.form-field-input:focus){box-shadow:0 0 0 .2rem #f0f0f0}.form-field-container .form-field-content:focus-within,.form-field-container .form-field-content:hover{border-color:#bfbfbf!important}.form-field-container .form-field-content:has(.form-field-input:invalid){border-color:#d14014!important;color:#d14014!important;caret-color:#d14014!important}.form-field-container .form-field-content:has(.form-field-input:invalid):focus-within{box-shadow:0 0 0 .2rem #f1c4b6!important}.form-field-container .form-field-content:has(.form-field-input:disabled){border-color:#e0e1e2!important;color:#d1d2d4!important;box-shadow:none!important;cursor:not-allowed!important;caret-color:#d1d2d4!important;background-color:#f5f5f6!important}.form-field-container .form-field-content:has(.form-field-input:disabled) .form-field-input,.form-field-container .form-field-content:has(.form-field-input:disabled) .form-field-suffix .form-field-button{cursor:not-allowed!important;pointer-events:none!important}.form-field-container .form-field-content:has(.form-field-input:disabled) .form-field-suffix .form-field-trigger{border-color:#e0e1e2!important;pointer-events:none!important}.form-field-container .form-field-content:has(.form-field-input:disabled) mat-icon{color:#d1d2d4!important;fill:#d1d2d4!important;cursor:not-allowed!important;pointer-events:none!important}.form-field-container .form-field-content.form-field-select,.form-field-container .form-field-content.form-field-select .form-field-input{box-shadow:none!important;cursor:pointer!important}.form-field-container .form-field-content .form-field-input{height:16px;outline:0;border:none;background-color:transparent;color:inherit;flex:1;max-width:85%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.form-field-container .form-field-content .form-field-suffix{display:flex;flex-direction:row;align-items:center;gap:1.6rem}.form-field-container .form-field-content .form-field-suffix .form-field-trigger{display:flex;flex-direction:column;align-items:center;justify-content:center;padding-inline:8px;border-radius:40px;border:1px solid transparent;color:#131313;background-color:#f0f0f0;font-size:1.2rem;line-height:1.4rem}.form-field-container .form-field-content .form-field-suffix .form-field-button{display:flex;align-items:center;justify-content:center;outline:0;border:none;cursor:pointer;background-color:transparent}.form-field-container .form-field-content .form-field-suffix .form-field-button:hover:not(:disabled)>mat-icon{transform:scale(1.08)}.form-field-icon{width:1.6rem;height:1.6rem;font-size:1.6rem;color:#131313;fill:#131313}.form-field-icon-arrow{border:solid #131313;border-width:0 2px 2px 0;display:inline-block;padding:3px;transform:rotate(45deg);margin:-5px 4px 0}"]
269
274
  }),
270
275
  __metadata("design:paramtypes", [ChangeDetectorRef,
271
276
  ElementRef])
@@ -273,4 +278,4 @@ var GIPIFormFieldComponent = /** @class */ (function () {
273
278
  return GIPIFormFieldComponent;
274
279
  }());
275
280
  export { GIPIFormFieldComponent };
276
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZm9ybS1maWVsZC5jb21wb25lbnQuanMiLCJzb3VyY2VSb290Ijoibmc6Ly9AZ2lwaXNpc3RlbWFzL25nLWNvcmUvIiwic291cmNlcyI6WyJzaGFyZWQvZ2lwaS1jb21wb25lbnRzL2Zvcm0tZmllbGQvZm9ybS1maWVsZC5jb21wb25lbnQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IjtBQUFBLE9BQU8sRUFBRSx1QkFBdUIsRUFBRSxpQkFBaUIsRUFBRSxTQUFTLEVBQUUsVUFBVSxFQUFFLFlBQVksRUFBRSxLQUFLLEVBQUUsTUFBTSxFQUFFLE1BQU0sRUFBRSxTQUFTLEVBQUUsVUFBVSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQzlKLE9BQU8sRUFBd0IsaUJBQWlCLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUd6RSxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBRTNDLElBQUksWUFBWSxHQUFHLENBQUMsQ0FBQztBQW1CckI7SUE2RUksZ0NBQ1ksa0JBQXFDLEVBQ3RDLFVBQXNCO1FBRHJCLHVCQUFrQixHQUFsQixrQkFBa0IsQ0FBbUI7UUFDdEMsZUFBVSxHQUFWLFVBQVUsQ0FBWTtRQTdFekIsVUFBSyxHQUFXLHFCQUFtQixZQUFZLEVBQUksQ0FBQztRQUVuRCxPQUFFLEdBQW9CLElBQUksQ0FBQyxLQUFLLENBQUM7UUFFakMsU0FBSSxHQUFXLElBQUksQ0FBQyxLQUFLLENBQUM7UUFFMUIsVUFBSyxHQUFXLEVBQUUsQ0FBQztRQUVuQixjQUFTLEdBQVcsRUFBRSxDQUFDO1FBRXZCLGdCQUFXLEdBQVcsRUFBRSxDQUFDO1FBRXpCLGFBQVEsR0FBWSxLQUFLLENBQUM7UUFFMUIsYUFBUSxHQUFZLEtBQUssQ0FBQztRQUUxQixhQUFRLEdBQVksS0FBSyxDQUFDO1FBRTFCLGNBQVMsR0FBWSxLQUFLLENBQUM7UUFFM0IsZUFBVSxHQUFZLEtBQUssQ0FBQztRQUU1QixnQkFBVyxHQUFZLEtBQUssQ0FBQztRQUU3QixTQUFJLEdBQWdHLE1B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SEFBMEM7WUFFMUMsU0FBUyxFQUFFO2dCQUNQO29CQUNJLE9BQU8sRUFBRSxpQkFBaUI7b0JBQzFCLFdBQVcsRUFBRSxVQUFVLENBQUMsY0FBcUMsT0FBQSx3QkFBc0IsRUFBdEIsQ0FBc0IsQ0FBQztvQkFDcEYsS0FBSyxFQUFFLElBQUk7aUJBQ2Q7YUFDSjtZQUNELElBQUksRUFBRTtnQkFDRixPQUFPLEVBQUUsaUJBQWlCO2FBQzdCO1lBQ0QsZUFBZSxFQUFFLHVCQUF1QixDQUFDLE1BQU07O1NBQ2xELENBQUM7eUNBK0VrQyxpQkFBaUI7WUFDMUIsVUFBVTtPQS9FeEIsc0JBQXNCLENBOEpsQztJQUFELDZCQUFDO0NBQUEsQUE5SkQsSUE4SkM7U0E5Slksc0JBQXNCIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3ksIENoYW5nZURldGVjdG9yUmVmLCBDb21wb25lbnQsIEVsZW1lbnRSZWYsIEV2ZW50RW1pdHRlciwgSW5wdXQsIE9uSW5pdCwgT3V0cHV0LCBWaWV3Q2hpbGQsIGZvcndhcmRSZWYgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IENvbnRyb2xWYWx1ZUFjY2Vzc29yLCBOR19WQUxVRV9BQ0NFU1NPUiB9IGZyb20gJ0Bhbmd1bGFyL2Zvcm1zJztcblxuaW1wb3J0IHsgQ3VycmVuY3lNYXNrQ29uZmlnIH0gZnJvbSAnbmd4LWN1cnJlbmN5JztcbmltcG9ydCB7IE9iamVjdFV0aWwgfSBmcm9tICcuLi8uLi8uLi9jb3JlJztcblxubGV0IG5leHRVbmlxdWVJZCA9IDA7XG5cbkBDb21wb25lbnQoe1xuICAgIHNlbGVjdG9yOiBgZ2lwaS1mb3JtLWZpZWxkYCxcbiAgICBleHBvcnRBczogJ2dpcGlGb3JtRmllbGQnLFxuICAgIHRlbXBsYXRlVXJsOiAnLi9mb3JtLWZpZWxkLmNvbXBvbmVudC5odG1sJyxcbiAgICBzdHlsZVVybHM6IFsnLi9mb3JtLWZpZWxkLmNvbXBvbmVudC5zY3NzJ10sXG4gICAgcHJvdmlkZXJzOiBbXG4gICAgICAgIHtcbiAgICAgICAgICAgIHByb3ZpZGU6IE5HX1ZBTFVFX0FDQ0VTU09SLFxuICAgICAgICAgICAgdXNlRXhpc3Rpbmc6IGZvcndhcmRSZWYoKCk6IHR5cGVvZiBHSVBJRm9ybUZpZWxkQ29tcG9uZW50ID0+IEdJUElGb3JtRmllbGRDb21wb25lbnQpLFxuICAgICAgICAgICAgbXVsdGk6IHRydWVcbiAgICAgICAgfVxuICAgIF0sXG4gICAgaG9zdDoge1xuICAgICAgICAnY2xhc3MnOiAnZ2lwaS1mb3JtLWZpZWxkJyxcbiAgICB9LFxuICAgIGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuT25QdXNoXG59KVxuZXhwb3J0IGNsYXNzIEdJUElGb3JtRmllbGRDb21wb25lbnQgaW1wbGVtZW50cyBPbkluaXQsIENvbnRyb2xWYWx1ZUFjY2Vzc29yIHtcblxuICAgIHByaXZhdGUgX25hbWU6IHN0cmluZyA9IGBnaXBpLWZvcm0tZmllbGQtJHtuZXh0VW5pcXVlSWQrK31gO1xuXG4gICAgQElucHV0KCkgaWQ6IG51bWJlciB8IHN0cmluZyA9IHRoaXMuX25hbWU7XG5cbiAgICBASW5wdXQoKSBuYW1lOiBzdHJpbmcgPSB0aGlzLl9uYW1lO1xuXG4gICAgQElucHV0KCkgbGFiZWw6IHN0cmluZyA9ICcnO1xuXG4gICAgQElucHV0KCkgYXJpYUxhYmVsOiBzdHJpbmcgPSAnJztcblxuICAgIEBJbnB1dCgpIHBsYWNlaG9sZGVyOiBzdHJpbmcgPSAnJztcblxuICAgIEBJbnB1dCgpIHJlYWRvbmx5OiBib29sZWFuID0gZmFsc2U7XG5cbiAgICBASW5wdXQoKSBkaXNhYmxlZDogYm9vbGVhbiA9IGZhbHNlO1xuXG4gICAgQElucHV0KCkgcmVxdWlyZWQ6IGJvb2xlYW4gPSBmYWxzZTtcblxuICAgIEBJbnB1dCgpIHNob3dDbGVhcjogYm9vbGVhbiA9IGZhbHNlO1xuXG4gICAgQElucHV0KCkgc2hvd1NlYXJjaDogYm9vbGVhbiA9IGZhbHNlO1xuXG4gICAgQElucHV0KCkgc2hvd1RyaWdnZXI6IGJvb2xlYW4gPSBmYWxzZTtcblxuICAgIEBJbnB1dCgpIHR5cGU6ICd0ZXh0JyB8ICdlbWFpbCcgfCAnbnVtYmVyJyB8ICdwYXNzd29yZCcgfCAndXJsJyB8ICd0ZWwnIHwgJ3NlbGVjdCcgfCAnc2VhcmNoJyB8ICdjdXJyZW5jeScgPSAndGV4dCc7XG5cbiAgICBASW5wdXQoKSBtaW46IG51bWJlcjtcblxuICAgIEBJbnB1dCgpIG1heDogbnVtYmVyO1xuXG4gICAgQElucHV0KCkgbWF4TGVuZ3RoOiBudW1iZXI7XG5cbiAgICBASW5wdXQoKSBtYXNrOiBzdHJpbmcgfCB1bmRlZmluZWQgfCBudWxsO1xuXG4gICAgQElucHV0KCkgcGF0dGVybjogc3RyaW5nO1xuXG4gICAgQElucHV0KCkgb3B0aW9uc0N1cnJlbmN5OiBQYXJ0aWFsPEN1cnJlbmN5TWFza0NvbmZpZz47XG5cbiAgICBwcml2YXRlIF9tb2RlbDogYW55O1xuICAgIEBJbnB1dCgpIHNldCBtb2RlbCh2YWx1ZTogYW55KSB7XG4gICAgICAgIHRoaXMuX21vZGVsID0gdmFsdWU7XG4gICAgICAgIHRoaXMub25DaGFuZ2UodmFsdWUpO1xuICAgICAgICB0aGlzLm9uVG91Y2goKTtcbiAgICAgICAgdGhpcy5fY2hhbmdlRGV0ZWN0b3JSZWYubWFya0ZvckNoZWNrKCk7XG4gICAgfVxuICAgIGdldCBtb2RlbCgpIHtcbiAgICAgICAgcmV0dXJuIHRoaXMuX21vZGVsO1xuICAgIH1cblxuICAgIHByaXZhdGUgX3ZhbHVlOiBhbnk7XG4gICAgQElucHV0KCkgc2V0IHZhbHVlKHZhbHVlOiBhbnkpIHtcbiAgICAgICAgdGhpcy5fdmFsdWUgPSB2YWx1ZTtcbiAgICB9XG4gICAgZ2V0IHZhbHVlKCkge1xuICAgICAgICByZXR1cm4gdGhpcy5fdmFsdWU7XG4gICAgfVxuXG4gICAgcHJpdmF0ZSBfdHJpZ2dlcjogbnVtYmVyID0gMDtcbiAgICBASW5wdXQoKSBzZXQgdHJpZ2dlcih2YWx1ZTogbnVtYmVyKSB7XG4gICAgICAgIHRoaXMuX3RyaWdnZXIgPSB2YWx1ZTtcbiAgICB9XG4gICAgZ2V0IHRyaWdnZXIoKTogbnVtYmVyIHtcbiAgICAgICAgcmV0dXJuIHRoaXMuX3RyaWdnZXI7XG4gICAgfVxuXG4gICAgQFZpZXdDaGlsZCgnaW5wdXRSZWYnLCB7IHN0YXRpYzogdHJ1ZSwgcmVhZDogRWxlbWVudFJlZiB9KSBpbnB1dFJlZjogRWxlbWVudFJlZjtcblxuICAgIEBPdXRwdXQoKSBvbktleWRvd246IEV2ZW50RW1pdHRlcjxLZXlib2FyZEV2ZW50PiA9IG5ldyBFdmVudEVtaXR0ZXI8S2V5Ym9hcmRFdmVudD4oKTtcbiAgICBAT3V0cHV0KCkgb25LZXlkb3duRW50ZXI6IEV2ZW50RW1pdHRlcjxLZXlib2FyZEV2ZW50PiA9IG5ldyBFdmVudEVtaXR0ZXI8S2V5Ym9hcmRFdmVudD4oKTtcbiAgICBAT3V0cHV0KCkgb25Gb2N1czogRXZlbnRFbWl0dGVyPEV2ZW50PiA9IG5ldyBFdmVudEVtaXR0ZXI8RXZlbnQ+KCk7XG4gICAgQE91dHB1dCgpIG9uQmx1cjogRXZlbnRFbWl0dGVyPEV2ZW50PiA9IG5ldyBFdmVudEVtaXR0ZXI8RXZlbnQ+KCk7XG4gICAgQE91dHB1dCgpIG9uQ2xpY2s6IEV2ZW50RW1pdHRlcjxFdmVudD4gPSBuZXcgRXZlbnRFbWl0dGVyPEV2ZW50PigpO1xuICAgIEBPdXRwdXQoKSBvbkNsZWFyOiBFdmVudEVtaXR0ZXI8RXZlbnQ+ID0gbmV3IEV2ZW50RW1pdHRlcjxFdmVudD4oKTtcbiAgICBAT3V0cHV0KCkgb25TZWFyY2g6IEV2ZW50RW1pdHRlcjxFdmVudD4gPSBuZXcgRXZlbnRFbWl0dGVyPEV2ZW50PigpO1xuXG4gICAgY29uc3RydWN0b3IoXG4gICAgICAgIHByaXZhdGUgX2NoYW5nZURldGVjdG9yUmVmOiBDaGFuZ2VEZXRlY3RvclJlZixcbiAgICAgICAgcHVibGljIGVsZW1lbnRSZWY6IEVsZW1lbnRSZWYsXG4gICAgKSB7IH1cblxuICAgIG5nT25Jbml0KCkgeyB9XG5cbiAgICBvbkNoYW5nZTogYW55ID0gKCk6IHZvaWQgPT4geyB9O1xuXG4gICAgb25Ub3VjaDogYW55ID0gKCk6IHZvaWQgPT4geyB9O1xuXG4gICAgd3JpdGVWYWx1ZSh2YWx1ZTogYW55KTogdm9pZCB7XG4gICAgICAgIHRoaXMubW9kZWwgPSB2YWx1ZTtcbiAgICB9XG5cbiAgICByZWdpc3Rlck9uQ2hhbmdlKGZuOiBhbnkpOiB2b2lkIHtcbiAgICAgICAgdGhpcy5vbkNoYW5nZSA9IGZuO1xuICAgIH1cblxuICAgIHJlZ2lzdGVyT25Ub3VjaGVkKGZuOiBhbnkpOiB2b2lkIHtcbiAgICAgICAgdGhpcy5vblRvdWNoID0gZm47XG4gICAgfVxuXG4gICAgc2V0RGlzYWJsZWRTdGF0ZT8odmFsdWU6IGJvb2xlYW4pOiB2b2lkIHtcbiAgICAgICAgdGhpcy5kaXNhYmxlZCA9IHZhbHVlO1xuICAgICAgICB0aGlzLl9jaGFuZ2VEZXRlY3RvclJlZi5tYXJrRm9yQ2hlY2soKTtcbiAgICB9XG5cbiAgICBwdWJsaWMgb25JbnB1dEtleWRvd24oZXZlbnQ6IEtleWJvYXJkRXZlbnQpOiB2b2lkIHtcbiAgICAgICAgaWYgKCF0aGlzLmRpc2FibGVkKSB7XG4gICAgICAgICAgICBpZiAoZXZlbnQua2V5LnRvVXBwZXJDYXNlKCkgPT09ICdFTlRFUicpIHtcbiAgICAgICAgICAgICAgICB0aGlzLm9uS2V5ZG93bkVudGVyLmVtaXQoZXZlbnQpO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgdGhpcy5vbktleWRvd24uZW1pdChldmVudCk7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBwdWJsaWMgb25JbnB1dEZvY3VzKGV2ZW50OiBFdmVudCk6IHZvaWQge1xuICAgICAgICBpZiAoIXRoaXMuZGlzYWJsZWQpIHtcbiAgICAgICAgICAgIHRoaXMub25Gb2N1cy5lbWl0KGV2ZW50KTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIHB1YmxpYyBvbklucHV0Qmx1cihldmVudDogRXZlbnQpOiB2b2lkIHtcbiAgICAgICAgaWYgKCF0aGlzLmRpc2FibGVkKSB7XG4gICAgICAgICAgICB0aGlzLm9uQmx1ci5lbWl0KGV2ZW50KTtcbiAgICAgICAgICAgIHRoaXMub25Ub3VjaCgpO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgcHVibGljIG9uSW5wdXRDbGljayhldmVudDogRXZlbnQpOiB2b2lkIHtcbiAgICAgICAgaWYgKCF0aGlzLmRpc2FibGVkKSB7XG4gICAgICAgICAgICB0aGlzLm9uQ2xpY2suZW1pdChldmVudCk7XG4gICAgICAgICAgICB0aGlzLmZvY3VzKCk7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBwdWJsaWMgb25CdXR0b25DbGVhckNsaWNrKGV2ZW50OiBFdmVudCk6IHZvaWQge1xuICAgICAgICBpZiAoIXRoaXMuZGlzYWJsZWQpIHtcbiAgICAgICAgICAgIGlmICh0aGlzLnR5cGUgPT09ICdzZWFyY2gnKSB7XG4gICAgICAgICAgICAgICAgdGhpcy5tb2RlbCA9ICcnO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgdGhpcy5vbkNsZWFyLmVtaXQoZXZlbnQpO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgb25CdXR0b25TZWFyY2hDbGljayhldmVudDogRXZlbnQpOiB2b2lkIHtcbiAgICAgICAgaWYgKCF0aGlzLmRpc2FibGVkICYmICh0aGlzLnR5cGUgPT09ICdzZWFyY2gnKSkge1xuICAgICAgICAgICAgdGhpcy5vblNlYXJjaC5lbWl0KGV2ZW50KTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIC8qKlxuICAgICAqIFNldGEgbyBmb2NvIG5vIGlucHV0UmVmXG4gICAgICovXG4gICAgcHVibGljIGZvY3VzKCk6IHZvaWQge1xuICAgICAgICBpZiAoIU9iamVjdFV0aWwuaXNOdWxsKHRoaXMuaW5wdXRSZWYpKSB7XG4gICAgICAgICAgICB0aGlzLmlucHV0UmVmLm5hdGl2ZUVsZW1lbnQuZm9jdXMoKTtcbiAgICAgICAgfVxuICAgIH1cblxufVxuIl19
281
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZm9ybS1maWVsZC5jb21wb25lbnQuanMiLCJzb3VyY2VSb290Ijoibmc6Ly9AZ2lwaXNpc3RlbWFzL25nLWNvcmUvIiwic291cmNlcyI6WyJzaGFyZWQvZ2lwaS1jb21wb25lbnRzL2Zvcm0tZmllbGQvZm9ybS1maWVsZC5jb21wb25lbnQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IjtBQUFBLE9BQU8sRUFBRSx1QkFBdUIsRUFBRSxpQkFBaUIsRUFBRSxTQUFTLEVBQUUsVUFBVSxFQUFFLFlBQVksRUFBRSxLQUFLLEVBQUUsTUFBTSxFQUFFLE1BQU0sRUFBRSxTQUFTLEVBQUUsVUFBVSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQzlKLE9BQU8sRUFBd0IsaUJBQWlCLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUd6RSxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBRTNDLElBQUksWUFBWSxHQUFHLENBQUMsQ0FBQztBQW1CckI7SUErRUksZ0NBQ1ksa0JBQXFDLEVBQ3RDLFVBQXNCO1FBRHJCLHVCQUFrQixHQUFsQixrQkFBa0IsQ0FBbUI7UUFDdEMsZUFBVSxHQUFWLFVBQVUsQ0FBWTtRQS9FekIsVUFBSyxHQUFXLHFCQUFtQixZQUFZLEVBQUksQ0FBQztRQUVuRCxPQUFFLEdBQW9CLElBQUksQ0FBQyxLQUFLLENBQUM7UUFFakMsU0FBSSxHQUFXLElBQUksQ0FBQyxLQUFLLENBQUM7UUFFMUIsVUFBSyxHQUFXLEVBQUUsQ0FBQztRQUVuQixZQUFPLEdBQVcsRUFBRSxDQUFDO1FBRXJCLGNBQVMsR0FBVyxFQUFFLENBQUM7UUFFdkIsZ0JBQVcsR0FBVyxFQUFFLENBQUM7UUFFekIsYUFBUSxHQUFZLEtBQUssQ0FBQztRQUUxQixhQUFRLEdBQVksS0FBSyxDQUFDO1FBRTFCLGFBQVEsR0FBWSxLQUFLLENBQUM7UUFFMUIsY0FBUyxHQUFZLEtBQUssQ0FBQztRQUUzQixlQUFVLEdBQVksS0FBSyxDQUFDO1FBRTVCLGdCQUFXLEdBQVksS0FB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QUFDO1lBQ1AsUUFBUSxFQUFFLGlCQUFpQjtZQUMzQixRQUFRLEVBQUUsZUFBZTtZQUN6Qix5K0hBQTBDO1lBRTFDLFNBQVMsRUFBRTtnQkFDUDtvQkFDSSxPQUFPLEVBQUUsaUJBQWlCO29CQUMxQixXQUFXLEVBQUUsVUFBVSxDQUFDLGNBQXFDLE9BQUEsd0JBQXNCLEVBQXRCLENBQXNCLENBQUM7b0JBQ3BGLEtBQUssRUFBRSxJQUFJO2lCQUNkO2FBQ0o7WUFDRCxJQUFJLEVBQUU7Z0JBQ0YsT0FBTyxFQUFFLGlCQUFpQjthQUM3QjtZQUNELGVBQWUsRUFBRSx1QkFBdUIsQ0FBQyxNQUFNOztTQUNsRCxDQUFDO3lDQWlGa0MsaUJBQWlCO1lBQzFCLFVBQVU7T0FqRnhCLHNCQUFzQixDQWdLbEM7SUFBRCw2QkFBQztDQUFBLEFBaEtELElBZ0tDO1NBaEtZLHNCQUFzQiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENoYW5nZURldGVjdGlvblN0cmF0ZWd5LCBDaGFuZ2VEZXRlY3RvclJlZiwgQ29tcG9uZW50LCBFbGVtZW50UmVmLCBFdmVudEVtaXR0ZXIsIElucHV0LCBPbkluaXQsIE91dHB1dCwgVmlld0NoaWxkLCBmb3J3YXJkUmVmIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBDb250cm9sVmFsdWVBY2Nlc3NvciwgTkdfVkFMVUVfQUNDRVNTT1IgfSBmcm9tICdAYW5ndWxhci9mb3Jtcyc7XG5cbmltcG9ydCB7IEN1cnJlbmN5TWFza0NvbmZpZyB9IGZyb20gJ25neC1jdXJyZW5jeSc7XG5pbXBvcnQgeyBPYmplY3RVdGlsIH0gZnJvbSAnLi4vLi4vLi4vY29yZSc7XG5cbmxldCBuZXh0VW5pcXVlSWQgPSAwO1xuXG5AQ29tcG9uZW50KHtcbiAgICBzZWxlY3RvcjogYGdpcGktZm9ybS1maWVsZGAsXG4gICAgZXhwb3J0QXM6ICdnaXBpRm9ybUZpZWxkJyxcbiAgICB0ZW1wbGF0ZVVybDogJy4vZm9ybS1maWVsZC5jb21wb25lbnQuaHRtbCcsXG4gICAgc3R5bGVVcmxzOiBbJy4vZm9ybS1maWVsZC5jb21wb25lbnQuc2NzcyddLFxuICAgIHByb3ZpZGVyczogW1xuICAgICAgICB7XG4gICAgICAgICAgICBwcm92aWRlOiBOR19WQUxVRV9BQ0NFU1NPUixcbiAgICAgICAgICAgIHVzZUV4aXN0aW5nOiBmb3J3YXJkUmVmKCgpOiB0eXBlb2YgR0lQSUZvcm1GaWVsZENvbXBvbmVudCA9PiBHSVBJRm9ybUZpZWxkQ29tcG9uZW50KSxcbiAgICAgICAgICAgIG11bHRpOiB0cnVlXG4gICAgICAgIH1cbiAgICBdLFxuICAgIGhvc3Q6IHtcbiAgICAgICAgJ2NsYXNzJzogJ2dpcGktZm9ybS1maWVsZCcsXG4gICAgfSxcbiAgICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaFxufSlcbmV4cG9ydCBjbGFzcyBHSVBJRm9ybUZpZWxkQ29tcG9uZW50IGltcGxlbWVudHMgT25Jbml0LCBDb250cm9sVmFsdWVBY2Nlc3NvciB7XG5cbiAgICBwcml2YXRlIF9uYW1lOiBzdHJpbmcgPSBgZ2lwaS1mb3JtLWZpZWxkLSR7bmV4dFVuaXF1ZUlkKyt9YDtcblxuICAgIEBJbnB1dCgpIGlkOiBudW1iZXIgfCBzdHJpbmcgPSB0aGlzLl9uYW1lO1xuXG4gICAgQElucHV0KCkgbmFtZTogc3RyaW5nID0gdGhpcy5fbmFtZTtcblxuICAgIEBJbnB1dCgpIGxhYmVsOiBzdHJpbmcgPSAnJztcblxuICAgIEBJbnB1dCgpIHRvb2x0aXA6IHN0cmluZyA9ICcnO1xuXG4gICAgQElucHV0KCkgYXJpYUxhYmVsOiBzdHJpbmcgPSAnJztcblxuICAgIEBJbnB1dCgpIHBsYWNlaG9sZGVyOiBzdHJpbmcgPSAnJztcblxuICAgIEBJbnB1dCgpIHJlYWRvbmx5OiBib29sZWFuID0gZmFsc2U7XG5cbiAgICBASW5wdXQoKSBkaXNhYmxlZDogYm9vbGVhbiA9IGZhbHNlO1xuXG4gICAgQElucHV0KCkgcmVxdWlyZWQ6IGJvb2xlYW4gPSBmYWxzZTtcblxuICAgIEBJbnB1dCgpIHNob3dDbGVhcjogYm9vbGVhbiA9IGZhbHNlO1xuXG4gICAgQElucHV0KCkgc2hvd1NlYXJjaDogYm9vbGVhbiA9IGZhbHNlO1xuXG4gICAgQElucHV0KCkgc2hvd1RyaWdnZXI6IGJvb2xlYW4gPSBmYWxzZTtcblxuICAgIEBJbnB1dCgpIHR5cGU6ICd0ZXh0JyB8ICdlbWFpbCcgfCAnbnVtYmVyJyB8ICdwYXNzd29yZCcgfCAndXJsJyB8ICd0ZWwnIHwgJ3NlbGVjdCcgfCAnc2VhcmNoJyB8ICdjdXJyZW5jeScgPSAndGV4dCc7XG5cbiAgICBASW5wdXQoKSBtaW46IG51bWJlcjtcblxuICAgIEBJbnB1dCgpIG1heDogbnVtYmVyO1xuXG4gICAgQElucHV0KCkgbWF4TGVuZ3RoOiBudW1iZXI7XG5cbiAgICBASW5wdXQoKSBtYXNrOiBzdHJpbmcgfCB1bmRlZmluZWQgfCBudWxsO1xuXG4gICAgQElucHV0KCkgcGF0dGVybjogc3RyaW5nO1xuXG4gICAgQElucHV0KCkgb3B0aW9uc0N1cnJlbmN5OiBQYXJ0aWFsPEN1cnJlbmN5TWFza0NvbmZpZz47XG5cbiAgICBwcml2YXRlIF9tb2RlbDogYW55O1xuICAgIEBJbnB1dCgpIHNldCBtb2RlbCh2YWx1ZTogYW55KSB7XG4gICAgICAgIHRoaXMuX21vZGVsID0gdmFsdWU7XG4gICAgICAgIHRoaXMub25DaGFuZ2UodmFsdWUpO1xuICAgICAgICB0aGlzLm9uVG91Y2goKTtcbiAgICAgICAgdGhpcy5fY2hhbmdlRGV0ZWN0b3JSZWYubWFya0ZvckNoZWNrKCk7XG4gICAgfVxuICAgIGdldCBtb2RlbCgpIHtcbiAgICAgICAgcmV0dXJuIHRoaXMuX21vZGVsO1xuICAgIH1cblxuICAgIHByaXZhdGUgX3ZhbHVlOiBhbnk7XG4gICAgQElucHV0KCkgc2V0IHZhbHVlKHZhbHVlOiBhbnkpIHtcbiAgICAgICAgdGhpcy5fdmFsdWUgPSB2YWx1ZTtcbiAgICB9XG4gICAgZ2V0IHZhbHVlKCkge1xuICAgICAgICByZXR1cm4gdGhpcy5fdmFsdWU7XG4gICAgfVxuXG4gICAgcHJpdmF0ZSBfdHJpZ2dlcjogbnVtYmVyID0gMDtcbiAgICBASW5wdXQoKSBzZXQgdHJpZ2dlcih2YWx1ZTogbnVtYmVyKSB7XG4gICAgICAgIHRoaXMuX3RyaWdnZXIgPSB2YWx1ZTtcbiAgICB9XG4gICAgZ2V0IHRyaWdnZXIoKTogbnVtYmVyIHtcbiAgICAgICAgcmV0dXJuIHRoaXMuX3RyaWdnZXI7XG4gICAgfVxuXG4gICAgQFZpZXdDaGlsZCgnaW5wdXRSZWYnLCB7IHN0YXRpYzogdHJ1ZSwgcmVhZDogRWxlbWVudFJlZiB9KSBpbnB1dFJlZjogRWxlbWVudFJlZjtcblxuICAgIEBPdXRwdXQoKSBvbktleWRvd246IEV2ZW50RW1pdHRlcjxLZXlib2FyZEV2ZW50PiA9IG5ldyBFdmVudEVtaXR0ZXI8S2V5Ym9hcmRFdmVudD4oKTtcbiAgICBAT3V0cHV0KCkgb25LZXlkb3duRW50ZXI6IEV2ZW50RW1pdHRlcjxLZXlib2FyZEV2ZW50PiA9IG5ldyBFdmVudEVtaXR0ZXI8S2V5Ym9hcmRFdmVudD4oKTtcbiAgICBAT3V0cHV0KCkgb25Gb2N1czogRXZlbnRFbWl0dGVyPEV2ZW50PiA9IG5ldyBFdmVudEVtaXR0ZXI8RXZlbnQ+KCk7XG4gICAgQE91dHB1dCgpIG9uQmx1cjogRXZlbnRFbWl0dGVyPEV2ZW50PiA9IG5ldyBFdmVudEVtaXR0ZXI8RXZlbnQ+KCk7XG4gICAgQE91dHB1dCgpIG9uQ2xpY2s6IEV2ZW50RW1pdHRlcjxFdmVudD4gPSBuZXcgRXZlbnRFbWl0dGVyPEV2ZW50PigpO1xuICAgIEBPdXRwdXQoKSBvbkNsZWFyOiBFdmVudEVtaXR0ZXI8RXZlbnQ+ID0gbmV3IEV2ZW50RW1pdHRlcjxFdmVudD4oKTtcbiAgICBAT3V0cHV0KCkgb25TZWFyY2g6IEV2ZW50RW1pdHRlcjxFdmVudD4gPSBuZXcgRXZlbnRFbWl0dGVyPEV2ZW50PigpO1xuXG4gICAgY29uc3RydWN0b3IoXG4gICAgICAgIHByaXZhdGUgX2NoYW5nZURldGVjdG9yUmVmOiBDaGFuZ2VEZXRlY3RvclJlZixcbiAgICAgICAgcHVibGljIGVsZW1lbnRSZWY6IEVsZW1lbnRSZWYsXG4gICAgKSB7IH1cblxuICAgIG5nT25Jbml0KCkgeyB9XG5cbiAgICBvbkNoYW5nZTogYW55ID0gKCk6IHZvaWQgPT4geyB9O1xuXG4gICAgb25Ub3VjaDogYW55ID0gKCk6IHZvaWQgPT4geyB9O1xuXG4gICAgd3JpdGVWYWx1ZSh2YWx1ZTogYW55KTogdm9pZCB7XG4gICAgICAgIHRoaXMubW9kZWwgPSB2YWx1ZTtcbiAgICB9XG5cbiAgICByZWdpc3Rlck9uQ2hhbmdlKGZuOiBhbnkpOiB2b2lkIHtcbiAgICAgICAgdGhpcy5vbkNoYW5nZSA9IGZuO1xuICAgIH1cblxuICAgIHJlZ2lzdGVyT25Ub3VjaGVkKGZuOiBhbnkpOiB2b2lkIHtcbiAgICAgICAgdGhpcy5vblRvdWNoID0gZm47XG4gICAgfVxuXG4gICAgc2V0RGlzYWJsZWRTdGF0ZT8odmFsdWU6IGJvb2xlYW4pOiB2b2lkIHtcbiAgICAgICAgdGhpcy5kaXNhYmxlZCA9IHZhbHVlO1xuICAgICAgICB0aGlzLl9jaGFuZ2VEZXRlY3RvclJlZi5tYXJrRm9yQ2hlY2soKTtcbiAgICB9XG5cbiAgICBwdWJsaWMgb25JbnB1dEtleWRvd24oZXZlbnQ6IEtleWJvYXJkRXZlbnQpOiB2b2lkIHtcbiAgICAgICAgaWYgKCF0aGlzLmRpc2FibGVkKSB7XG4gICAgICAgICAgICBpZiAoZXZlbnQua2V5LnRvVXBwZXJDYXNlKCkgPT09ICdFTlRFUicpIHtcbiAgICAgICAgICAgICAgICB0aGlzLm9uS2V5ZG93bkVudGVyLmVtaXQoZXZlbnQpO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgdGhpcy5vbktleWRvd24uZW1pdChldmVudCk7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBwdWJsaWMgb25JbnB1dEZvY3VzKGV2ZW50OiBFdmVudCk6IHZvaWQge1xuICAgICAgICBpZiAoIXRoaXMuZGlzYWJsZWQpIHtcbiAgICAgICAgICAgIHRoaXMub25Gb2N1cy5lbWl0KGV2ZW50KTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIHB1YmxpYyBvbklucHV0Qmx1cihldmVudDogRXZlbnQpOiB2b2lkIHtcbiAgICAgICAgaWYgKCF0aGlzLmRpc2FibGVkKSB7XG4gICAgICAgICAgICB0aGlzLm9uQmx1ci5lbWl0KGV2ZW50KTtcbiAgICAgICAgICAgIHRoaXMub25Ub3VjaCgpO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgcHVibGljIG9uSW5wdXRDbGljayhldmVudDogRXZlbnQpOiB2b2lkIHtcbiAgICAgICAgaWYgKCF0aGlzLmRpc2FibGVkKSB7XG4gICAgICAgICAgICB0aGlzLm9uQ2xpY2suZW1pdChldmVudCk7XG4gICAgICAgICAgICB0aGlzLmZvY3VzKCk7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBwdWJsaWMgb25CdXR0b25DbGVhckNsaWNrKGV2ZW50OiBFdmVudCk6IHZvaWQge1xuICAgICAgICBpZiAoIXRoaXMuZGlzYWJsZWQpIHtcbiAgICAgICAgICAgIGlmICh0aGlzLnR5cGUgPT09ICdzZWFyY2gnKSB7XG4gICAgICAgICAgICAgICAgdGhpcy5tb2RlbCA9ICcnO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgdGhpcy5vbkNsZWFyLmVtaXQoZXZlbnQpO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgb25CdXR0b25TZWFyY2hDbGljayhldmVudDogRXZlbnQpOiB2b2lkIHtcbiAgICAgICAgaWYgKCF0aGlzLmRpc2FibGVkICYmICh0aGlzLnR5cGUgPT09ICdzZWFyY2gnKSkge1xuICAgICAgICAgICAgdGhpcy5vblNlYXJjaC5lbWl0KGV2ZW50KTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIC8qKlxuICAgICAqIFNldGEgbyBmb2NvIG5vIGlucHV0UmVmXG4gICAgICovXG4gICAgcHVibGljIGZvY3VzKCk6IHZvaWQge1xuICAgICAgICBpZiAoIU9iamVjdFV0aWwuaXNOdWxsKHRoaXMuaW5wdXRSZWYpKSB7XG4gICAgICAgICAgICB0aGlzLmlucHV0UmVmLm5hdGl2ZUVsZW1lbnQuZm9jdXMoKTtcbiAgICAgICAgfVxuICAgIH1cblxufVxuIl19
@@ -19,6 +19,7 @@ var GIPIInputSelectEnumComponent = /** @class */ (function () {
19
19
  this._lastOptionSelected = null;
20
20
  this.id = this._name;
21
21
  this.name = this._name;
22
+ this.tooltip = '';
22
23
  this.placeholder = 'Selecionar';
23
24
  this._disabled = false;
24
25
  this._loading = false;
@@ -95,7 +96,7 @@ var GIPIInputSelectEnumComponent = /** @class */ (function () {
95
96
  enumerable: false,
96
97
  configurable: true
97
98
  });
98
- Object.defineProperty(GIPIInputSelectEnumComponent.prototype, "optionSelected", {
99
+ Object.defineProperty(GIPIInputSelectEnumComponent.prototype, "optionSelectedValue", {
99
100
  get: function () {
100
101
  var _this = this;
101
102
  if (this.value && !ArrayUtil.isEmpty(this._enumList)) {
@@ -109,6 +110,20 @@ var GIPIInputSelectEnumComponent = /** @class */ (function () {
109
110
  enumerable: false,
110
111
  configurable: true
111
112
  });
113
+ Object.defineProperty(GIPIInputSelectEnumComponent.prototype, "optionSelectedKey", {
114
+ get: function () {
115
+ var _this = this;
116
+ if (this.value && !ArrayUtil.isEmpty(this._enumList)) {
117
+ var selected = this._enumList.find(function (e) { return e.key === _this.value; });
118
+ if (selected) {
119
+ return selected.key;
120
+ }
121
+ }
122
+ return '';
123
+ },
124
+ enumerable: false,
125
+ configurable: true
126
+ });
112
127
  Object.defineProperty(GIPIInputSelectEnumComponent.prototype, "scrollViewportHeight", {
113
128
  get: function () {
114
129
  var height = 0;
@@ -243,11 +258,15 @@ var GIPIInputSelectEnumComponent = /** @class */ (function () {
243
258
  __decorate([
244
259
  Input(),
245
260
  __metadata("design:type", String)
246
- ], GIPIInputSelectEnumComponent.prototype, "ariaLabel", void 0);
261
+ ], GIPIInputSelectEnumComponent.prototype, "label", void 0);
247
262
  __decorate([
248
263
  Input(),
249
264
  __metadata("design:type", String)
250
- ], GIPIInputSelectEnumComponent.prototype, "label", void 0);
265
+ ], GIPIInputSelectEnumComponent.prototype, "tooltip", void 0);
266
+ __decorate([
267
+ Input(),
268
+ __metadata("design:type", String)
269
+ ], GIPIInputSelectEnumComponent.prototype, "ariaLabel", void 0);
251
270
  __decorate([
252
271
  Input(),
253
272
  __metadata("design:type", String)
@@ -328,7 +347,7 @@ var GIPIInputSelectEnumComponent = /** @class */ (function () {
328
347
  Component({
329
348
  selector: "gipi-input-select-enum",
330
349
  exportAs: 'gipiInputSelectEnum',
331
- template: "<gipi-form-field #formFieldSelectEnum\n [id]=\"id\"\n [name]=\"name\"\n [type]=\"'select'\"\n [readonly]=\"true\"\n [disabled]=\"disabled\"\n [required]=\"required\"\n [label]=\"label\"\n [placeholder]=\"placeholder\"\n [showClear]=\"false\"\n [showTrigger]=\"false\"\n [trigger]=\"0\"\n [ariaLabel]=\"ariaLabel\"\n [value]=\"optionSelected\"\n #popoverTrigger=\"popoverTrigger\"\n [popoverTriggerFor]=\"selectEnumPopover\"\n [popoverTriggerOn]=\"!disabled ? 'click' : 'none'\"\n [popoverBackdropCloseOnClick]=\"true\"\n (opened)=\"onOpenedChange.emit(true)\"\n (closed)=\"onOpenedChange.emit(false)\"\n (onKeydown)=\"onInputKeydown($event)\"\n (onFocus)=\"onInputFocus($event)\"\n (onBlur)=\"onInputBlur($event)\"\n (onClick)=\"onInputClick($event)\">\n</gipi-form-field>\n\n<gipi-popover #selectEnumPopover=\"gipiPopover\"\n [popoverOverlapTrigger]=\"false\"\n [popoverCloseOnClick]=\"false\"\n [popoverArrowWidth]=\"0\"\n [popoverOffsetY]=\"3\">\n <div class=\"select-enum-popover-content\">\n <cdk-virtual-scroll-viewport *ngIf=\"(_enumList && _enumList.length) && !loading\"\n class=\"select-virtual-scroll-viewport\"\n [style.height.px]=\"scrollViewportHeight\"\n [itemSize]=\"_itemSizeScrollViewport\">\n <div *cdkVirtualFor=\"let e of _enumList\"\n class=\"select-row\"\n [style.height.px]=\"40\"\n [class.disabled]=\"!validateOmitByKey(e.key) && (disabled || loading)\"\n (click)=\"onButtonSelectOptionClick(e.key)\">\n {{ e.value }}\n </div>\n </cdk-virtual-scroll-viewport>\n\n <div *ngIf=\"loading\"\n class=\"select-loading\">\n <div class=\"dot-pulse\"> </div>\n </div>\n\n <div *ngIf=\"(!_enumList || (_enumList && _enumList.length <= 0)) && !loading\"\n class=\"select-not-found\">\n <mat-icon>sentiment_very_dissatisfied</mat-icon>\n Nenhum registro foi encontrado\n </div>\n </div>\n</gipi-popover>\n\n<!-- <gipi-overlay *ngIf=\"!disabled && !loading\"\n contentStyleClass=\"overlay-select\"\n #overlaySelectEnum\n [(visible)]=\"_overlayVisible\"\n [appendTo]=\"'body'\"\n (onShow)=\"onOpenedChange.emit(true)\"\n (onHide)=\"onOpenedChange.emit(false)\">\n <cdk-virtual-scroll-viewport *ngIf=\"(_enumList && _enumList.length) && !loading\"\n class=\"select-virtual-scroll-viewport\"\n [style.height.px]=\"scrollViewportHeight\"\n [itemSize]=\"_itemSizeScrollViewport\">\n <div *cdkVirtualFor=\"let e of _enumList\"\n class=\"select-row\"\n [style.height.px]=\"40\"\n [class.disabled]=\"!validateOmitByKey(e.key) && (disabled || loading)\"\n (click)=\"onButtonSelectOptionClick(e.key)\">\n {{ e.value }}\n </div>\n </cdk-virtual-scroll-viewport>\n\n <div *ngIf=\"loading\"\n class=\"select-loading\">\n <div class=\"dot-pulse\"> </div>\n </div>\n\n <div *ngIf=\"(!_enumList || (_enumList && _enumList.length <= 0)) && !loading\"\n class=\"select-not-found\">\n <mat-icon>sentiment_very_dissatisfied</mat-icon>\n Nenhum registro foi encontrado\n </div>\n</gipi-overlay> -->\n",
350
+ template: "<gipi-form-field #formFieldSelectEnum\n [id]=\"id\"\n [name]=\"name\"\n [type]=\"'select'\"\n [readonly]=\"true\"\n [disabled]=\"disabled\"\n [required]=\"required\"\n [label]=\"label\"\n [tooltip]=\"tooltip\"\n [placeholder]=\"placeholder\"\n [showClear]=\"false\"\n [showTrigger]=\"false\"\n [trigger]=\"0\"\n [ariaLabel]=\"ariaLabel\"\n [value]=\"optionSelectedValue\"\n #popoverTrigger=\"popoverTrigger\"\n [popoverTriggerFor]=\"selectEnumPopover\"\n [popoverTriggerOn]=\"!disabled ? 'click' : 'none'\"\n [popoverBackdropCloseOnClick]=\"true\"\n (opened)=\"onOpenedChange.emit(true)\"\n (closed)=\"onOpenedChange.emit(false)\"\n (onKeydown)=\"onInputKeydown($event)\"\n (onFocus)=\"onInputFocus($event)\"\n (onBlur)=\"onInputBlur($event)\"\n (onClick)=\"onInputClick($event)\">\n</gipi-form-field>\n\n<gipi-popover #selectEnumPopover=\"gipiPopover\"\n [popoverOverlapTrigger]=\"false\"\n [popoverCloseOnClick]=\"false\"\n [popoverArrowWidth]=\"0\"\n [popoverOffsetY]=\"3\">\n <div class=\"select-enum-popover-content\">\n <cdk-virtual-scroll-viewport *ngIf=\"(_enumList && _enumList.length) && !loading\"\n class=\"select-virtual-scroll-viewport\"\n [style.height.px]=\"scrollViewportHeight\"\n [itemSize]=\"_itemSizeScrollViewport\">\n <div *cdkVirtualFor=\"let e of _enumList\"\n class=\"select-row\"\n [style.height.px]=\"40\"\n [class.active]=\"optionSelectedKey === e.key\"\n [class.disabled]=\"!validateOmitByKey(e.key) && (disabled || loading)\"\n (click)=\"onButtonSelectOptionClick(e.key)\">\n {{ e.value }}\n </div>\n </cdk-virtual-scroll-viewport>\n\n <div *ngIf=\"loading\"\n class=\"select-loading\">\n <div class=\"dot-pulse\"> </div>\n </div>\n\n <div *ngIf=\"(!_enumList || (_enumList && _enumList.length <= 0)) && !loading\"\n class=\"select-not-found\">\n <mat-icon>sentiment_very_dissatisfied</mat-icon>\n Nenhum registro foi encontrado\n </div>\n </div>\n</gipi-popover>\n\n<!-- <gipi-overlay *ngIf=\"!disabled && !loading\"\n contentStyleClass=\"overlay-select\"\n #overlaySelectEnum\n [(visible)]=\"_overlayVisible\"\n [appendTo]=\"'body'\"\n (onShow)=\"onOpenedChange.emit(true)\"\n (onHide)=\"onOpenedChange.emit(false)\">\n <cdk-virtual-scroll-viewport *ngIf=\"(_enumList && _enumList.length) && !loading\"\n class=\"select-virtual-scroll-viewport\"\n [style.height.px]=\"scrollViewportHeight\"\n [itemSize]=\"_itemSizeScrollViewport\">\n <div *cdkVirtualFor=\"let e of _enumList\"\n class=\"select-row\"\n [style.height.px]=\"40\"\n [class.disabled]=\"!validateOmitByKey(e.key) && (disabled || loading)\"\n (click)=\"onButtonSelectOptionClick(e.key)\">\n {{ e.value }}\n </div>\n </cdk-virtual-scroll-viewport>\n\n <div *ngIf=\"loading\"\n class=\"select-loading\">\n <div class=\"dot-pulse\"> </div>\n </div>\n\n <div *ngIf=\"(!_enumList || (_enumList && _enumList.length <= 0)) && !loading\"\n class=\"select-not-found\">\n <mat-icon>sentiment_very_dissatisfied</mat-icon>\n Nenhum registro foi encontrado\n </div>\n</gipi-overlay> -->\n",
332
351
  providers: [
333
352
  {
334
353
  provide: NG_VALUE_ACCESSOR,
@@ -340,7 +359,7 @@ var GIPIInputSelectEnumComponent = /** @class */ (function () {
340
359
  'class': 'gipi-input-select-enum',
341
360
  },
342
361
  changeDetection: ChangeDetectionStrategy.OnPush,
343
- styles: [":host{display:block;min-width:0;max-width:100%;flex:1}::ng-deep .overlay-select{padding:0!important;overflow:hidden!important}::ng-deep .select-virtual-scroll-viewport{width:100%!important;max-height:240px;overflow:auto}::ng-deep .select-virtual-scroll-viewport .cdk-virtual-scroll-content-wrapper{width:100%!important;position:relative!important}::ng-deep .select-virtual-scroll-viewport::-webkit-scrollbar{width:15px}::ng-deep .select-virtual-scroll-viewport::-webkit-scrollbar-thumb{background-color:#e0e1e2;border-radius:10px;border:4px solid transparent;background-clip:padding-box}::ng-deep .select-row{display:flex;align-items:center;padding:0 16px;cursor:pointer;font-size:1.4rem;line-height:100%;gap:1rem}::ng-deep .select-row:hover{background:#f5f5f6}::ng-deep .select-row:active{background:#e0e1e2}.select-not-found{display:flex;flex-direction:column;align-items:center;justify-content:center;font-weight:600;font-size:1.2rem;gap:8px;color:#131313;cursor:default;padding:0 0 16px}.select-not-found>mat-icon{width:2.8rem;height:2.8rem;font-size:2.8rem;line-height:2.8rem;color:#131313}.select-loading{height:4.8rem;width:100%;background-color:#fff;display:flex;align-items:center;justify-content:center}.select-loading .dot-pulse{position:relative;left:-9999px;width:5px;height:5px;border-radius:50%;background-color:#e0313e;color:#e0313e;box-shadow:9999px 0 0 -5px;-webkit-animation:1.5s linear .25s infinite dot-pulse;animation:1.5s linear .25s infinite dot-pulse}.select-loading .dot-pulse::after,.select-loading .dot-pulse::before{content:\"\";display:inline-block;position:absolute;top:0;width:5px;height:5px;border-radius:50%;background-color:#e0313e;color:#e0313e}.select-loading .dot-pulse::before{box-shadow:9984px 0 0 -5px;-webkit-animation:1.5s linear infinite dot-pulse-before;animation:1.5s linear infinite dot-pulse-before}.select-loading .dot-pulse::after{box-shadow:10014px 0 0 -5px;-webkit-animation:1.5s linear .5s infinite dot-pulse-after;animation:1.5s linear .5s infinite dot-pulse-after}@-webkit-keyframes dot-pulse-before{0%,100%,60%{box-shadow:9984px 0 0 -5px}30%{box-shadow:9984px 0 0 2px}}@keyframes dot-pulse-before{0%,100%,60%{box-shadow:9984px 0 0 -5px}30%{box-shadow:9984px 0 0 2px}}@-webkit-keyframes dot-pulse{0%,100%,60%{box-shadow:9999px 0 0 -5px}30%{box-shadow:9999px 0 0 2px}}@keyframes dot-pulse{0%,100%,60%{box-shadow:9999px 0 0 -5px}30%{box-shadow:9999px 0 0 2px}}@-webkit-keyframes dot-pulse-after{0%,100%,60%{box-shadow:10014px 0 0 -5px}30%{box-shadow:10014px 0 0 2px}}@keyframes dot-pulse-after{0%,100%,60%{box-shadow:10014px 0 0 -5px}30%{box-shadow:10014px 0 0 2px}}.select-enum-popover-content{background-color:#fff;border-radius:4px;box-shadow:0 2px 4px -1px rgba(0,0,0,.2),0 4px 5px 0 rgba(0,0,0,.14),0 1px 10px 0 rgba(0,0,0,.12);padding:8px}"]
362
+ styles: [":host{display:block;min-width:0;max-width:100%;flex:1}::ng-deep .overlay-select{padding:0!important;overflow:hidden!important}::ng-deep .select-virtual-scroll-viewport{width:100%!important;max-height:240px;overflow:auto}::ng-deep .select-virtual-scroll-viewport .cdk-virtual-scroll-content-wrapper{width:100%!important;position:relative!important}::ng-deep .select-virtual-scroll-viewport::-webkit-scrollbar{width:15px}::ng-deep .select-virtual-scroll-viewport::-webkit-scrollbar-thumb{background-color:#e0e1e2;border-radius:10px;border:4px solid transparent;background-clip:padding-box}::ng-deep .select-row{display:flex;align-items:center;gap:1rem;padding:0 16px;cursor:pointer;font-size:1.4rem;line-height:100%;border-left:2px solid transparent}::ng-deep .select-row.active{background-color:#fceaec;border-color:#e0313e}::ng-deep .select-row:not(.active):hover{background-color:#f5f5f6}::ng-deep .select-row:not(.active):active{background-color:#e0e1e2}.select-not-found{display:flex;flex-direction:column;align-items:center;justify-content:center;font-weight:600;font-size:1.2rem;gap:8px;color:#131313;cursor:default;padding:0 0 16px}.select-not-found>mat-icon{width:2.8rem;height:2.8rem;font-size:2.8rem;line-height:2.8rem;color:#131313}.select-loading{height:4.8rem;width:100%;background-color:#fff;display:flex;align-items:center;justify-content:center}.select-loading .dot-pulse{position:relative;left:-9999px;width:5px;height:5px;border-radius:50%;background-color:#e0313e;color:#e0313e;box-shadow:9999px 0 0 -5px;-webkit-animation:1.5s linear .25s infinite dot-pulse;animation:1.5s linear .25s infinite dot-pulse}.select-loading .dot-pulse::after,.select-loading .dot-pulse::before{content:'';display:inline-block;position:absolute;top:0;width:5px;height:5px;border-radius:50%;background-color:#e0313e;color:#e0313e}.select-loading .dot-pulse::before{box-shadow:9984px 0 0 -5px;-webkit-animation:1.5s linear infinite dot-pulse-before;animation:1.5s linear infinite dot-pulse-before}.select-loading .dot-pulse::after{box-shadow:10014px 0 0 -5px;-webkit-animation:1.5s linear .5s infinite dot-pulse-after;animation:1.5s linear .5s infinite dot-pulse-after}@-webkit-keyframes dot-pulse-before{0%,100%,60%{box-shadow:9984px 0 0 -5px}30%{box-shadow:9984px 0 0 2px}}@keyframes dot-pulse-before{0%,100%,60%{box-shadow:9984px 0 0 -5px}30%{box-shadow:9984px 0 0 2px}}@-webkit-keyframes dot-pulse{0%,100%,60%{box-shadow:9999px 0 0 -5px}30%{box-shadow:9999px 0 0 2px}}@keyframes dot-pulse{0%,100%,60%{box-shadow:9999px 0 0 -5px}30%{box-shadow:9999px 0 0 2px}}@-webkit-keyframes dot-pulse-after{0%,100%,60%{box-shadow:10014px 0 0 -5px}30%{box-shadow:10014px 0 0 2px}}@keyframes dot-pulse-after{0%,100%,60%{box-shadow:10014px 0 0 -5px}30%{box-shadow:10014px 0 0 2px}}.select-enum-popover-content{overflow:hidden;background-color:#fff;border-radius:4px;box-shadow:0 2px 4px -1px rgba(0,0,0,.2),0 4px 5px 0 rgba(0,0,0,.14),0 1px 10px 0 rgba(0,0,0,.12)}"]
344
363
  }),
345
364
  __metadata("design:paramtypes", [ElementRef,
346
365
  ChangeDetectorRef])
@@ -348,4 +367,4 @@ var GIPIInputSelectEnumComponent = /** @class */ (function () {
348
367
  return GIPIInputSelectEnumComponent;
349
368
  }());
350
369
  export { GIPIInputSelectEnumComponent };
351
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5wdXQtc2VsZWN0LWVudW0uY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6Im5nOi8vQGdpcGlzaXN0ZW1hcy9uZy1jb3JlLyIsInNvdXJjZXMiOlsic2hhcmVkL2dpcGktY29tcG9uZW50cy9pbnB1dC1zZWxlY3QtZW51bS9pbnB1dC1zZWxlY3QtZW51bS5jb21wb25lbnQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IjtBQUFBLE9BQU8sRUFBRSx1QkFBdUIsRUFBRSxpQkFBaUIsRUFBRSxTQUFTLEVBQUUsVUFBVSxFQUFFLFlBQVksRUFBRSxZQUFZLEVBQUUsS0FBSyxFQUFFLFNBQVMsRUFBRSxNQUFNLEVBQUUsTUFBTSxFQUFFLFNBQVMsRUFBRSxVQUFVLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDdkwsT0FBTyxFQUF3QixpQkFBaUIsRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBRXpFLE9BQU8sRUFBRSxxQkFBcUIsRUFBRSxNQUFNLHVCQUF1QixDQUFDO0FBQzlELE9BQU8sRUFBRSxTQUFTLEVBQUUsTUFBTSxnQ0FBZ0MsQ0FBQztBQUMzRCxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0saUNBQWlDLENBQUM7QUFDN0QsT0FBTyxFQUFFLHNCQUFzQixFQUFFLE1BQU0sb0NBQW9DLENBQUM7QUFDNUUsT0FBTyxFQUFFLGtCQUFrQixFQUFFLE1BQU0sbUNBQW1DLENBQUM7QUFFdkUsSUFBSSxZQUFZLEdBQUcsQ0FBQyxDQUFDO0FBRXJCLHdEQUF3RDtBQUN4RCxJQUFNLGdCQUFnQixHQUFHLEVBQUUsQ0FBQztBQW1CNUI7SUE2R0ksc0NBQ1csVUFBc0IsRUFDckIsa0JBQXFDO1FBRHRDLGVBQVUsR0FBVixVQUFVLENBQVk7UUFDckIsdUJBQWtCLEdBQWxCLGtCQUFrQixDQUFtQjtRQTdHekMsVUFBSyxHQUFXLDRCQUEwQixZQUFZLEVBQUksQ0FBQztRQUVuRSxjQUFTLEdBQVUsRUFBRSxDQUFDO1FBRXRCLDRCQUF1QixHQUFXLENBQUMsQ0FBQztRQUVwQyx3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b0JBQ0ksT0FBTyxFQUFFLGlCQUFpQjtvQkFDMUIsV0FBVyxFQUFFLFVBQVUsQ0FBQyxjQUEyQyxPQUFBLDhCQUE0QixFQUE1QixDQUE0QixDQUFDO29CQUNoRyxLQUFLLEVBQUUsSUFBSTtpQkFDZDthQUNKO1lBQ0QsSUFBSSxFQUFFO2dCQUNGLE9BQU8sRUFBRSx3QkFBd0I7YUFDcEM7WUFDRCxlQUFlLEVBQUUsdUJBQXVCLENBQUMsTUFBTTs7U0FDbEQsQ0FBQzt5Q0ErR3lCLFVBQVU7WUFDRCxpQkFBaUI7T0EvR3hDLDRCQUE0QixDQXlPeEM7SUFBRCxtQ0FBQztDQUFBLEFBek9ELElBeU9DO1NBek9ZLDRCQUE0QiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENoYW5nZURldGVjdGlvblN0cmF0ZWd5LCBDaGFuZ2VEZXRlY3RvclJlZiwgQ29tcG9uZW50LCBFbGVtZW50UmVmLCBFdmVudEVtaXR0ZXIsIEhvc3RMaXN0ZW5lciwgSW5wdXQsIE9uRGVzdHJveSwgT25Jbml0LCBPdXRwdXQsIFZpZXdDaGlsZCwgZm9yd2FyZFJlZiB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgQ29udHJvbFZhbHVlQWNjZXNzb3IsIE5HX1ZBTFVFX0FDQ0VTU09SIH0gZnJvbSAnQGFuZ3VsYXIvZm9ybXMnO1xuXG5pbXBvcnQgeyBjb2VyY2VCb29sZWFuUHJvcGVydHkgfSBmcm9tICdAYW5ndWxhci9jZGsvY29lcmNpb24nO1xuaW1wb3J0IHsgQXJyYXlVdGlsIH0gZnJvbSAnLi4vLi4vLi4vY29yZS91dGlscy9hcnJheS51dGlsJztcbmltcG9ydCB7IE9iamVjdFV0aWwgfSBmcm9tICcuLi8uLi8uLi9jb3JlL3V0aWxzL29iamVjdC51dGlsJztcbmltcG9ydCB7IEdJUElGb3JtRmllbGRDb21wb25lbnQgfSBmcm9tICcuLi9mb3JtLWZpZWxkL2Zvcm0tZmllbGQuY29tcG9uZW50JztcbmltcG9ydCB7IEdJUElQb3BvdmVyVHJpZ2dlciB9IGZyb20gJy4uL3BvcG92ZXIvc2hhcmVkL3BvcG92ZXItdHJpZ2dlcic7XG5cbmxldCBuZXh0VW5pcXVlSWQgPSAwO1xuXG4vKiogQSBhbHR1cmEgZG9zIGl0ZW5zIHNlbGVjaW9uYWRvcyBlbSB1bmlkYWRlcyBgcHhgLiAqL1xuY29uc3QgT1BUSU9OX0hFSUdIVF9QWCA9IDQwO1xuXG5AQ29tcG9uZW50KHtcbiAgICBzZWxlY3RvcjogYGdpcGktaW5wdXQtc2VsZWN0LWVudW1gLFxuICAgIGV4cG9ydEFzOiAnZ2lwaUlucHV0U2VsZWN0RW51bScsXG4gICAgdGVtcGxhdGVVcmw6ICcuL2lucHV0LXNlbGVjdC1lbnVtLmNvbXBvbmVudC5odG1sJyxcbiAgICBzdHlsZVVybHM6IFsnLi9pbnB1dC1zZWxlY3QtZW51bS5jb21wb25lbnQuc2NzcyddLFxuICAgIHByb3ZpZGVyczogW1xuICAgICAgICB7XG4gICAgICAgICAgICBwcm92aWRlOiBOR19WQUxVRV9BQ0NFU1NPUixcbiAgICAgICAgICAgIHVzZUV4aXN0aW5nOiBmb3J3YXJkUmVmKCgpOiB0eXBlb2YgR0lQSUlucHV0U2VsZWN0RW51bUNvbXBvbmVudCA9PiBHSVBJSW5wdXRTZWxlY3RFbnVtQ29tcG9uZW50KSxcbiAgICAgICAgICAgIG11bHRpOiB0cnVlXG4gICAgICAgIH1cbiAgICBdLFxuICAgIGhvc3Q6IHtcbiAgICAgICAgJ2NsYXNzJzogJ2dpcGktaW5wdXQtc2VsZWN0LWVudW0nLFxuICAgIH0sXG4gICAgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2hcbn0pXG5leHBvcnQgY2xhc3MgR0lQSUlucHV0U2VsZWN0RW51bUNvbXBvbmVudCBpbXBsZW1lbnRzIE9uSW5pdCwgT25EZXN0cm95LCBDb250cm9sVmFsdWVBY2Nlc3NvciB7XG5cbiAgICBwcml2YXRlIF9uYW1lOiBzdHJpbmcgPSBgZ2lwaS1pbnB1dC1zZWxlY3QtZW51bS0ke25leHRVbmlxdWVJZCsrfWA7XG5cbiAgICBfZW51bUxpc3Q6IGFueVtdID0gW107XG5cbiAgICBfaXRlbVNpemVTY3JvbGxWaWV3cG9ydDogbnVtYmVyID0gNTtcblxuICAgIF9sYXN0T3B0aW9uU2VsZWN0ZWQ6IGFueSA9IG51bGw7XG5cbiAgICBAVmlld0NoaWxkKCdmb3JtRmllbGRTZWxlY3RFbnVtJywgeyByZWFkOiBHSVBJRm9ybUZpZWxkQ29tcG9uZW50LCBzdGF0aWM6IGZhbHNlIH0pIGZvcm1GaWVsZFNlbGVjdEVudW06IEdJUElGb3JtRmllbGRDb21wb25lbnQ7XG5cbiAgICBAVmlld0NoaWxkKEdJUElQb3BvdmVyVHJpZ2dlciwgeyBzdGF0aWM6IGZhbHNlIH0pIHBvcG92ZXJUcmlnZ2VyOiBHSVBJUG9wb3ZlclRyaWdnZXI7XG5cbiAgICBASW5wdXQoKSBpZDogc3RyaW5nID0gdGhpcy5fbmFtZTtcblxuICAgIEBJbnB1dCgpIG5hbWU6IHN0cmluZyA9IHRoaXMuX25hbWU7XG5cbiAgICBASW5wdXQoKSBhcmlhTGFiZWw6IHN0cmluZztcblxuICAgIEBJbnB1dCgpIGxhYmVsOiBzdHJpbmc7XG5cbiAgICBASW5wdXQoKSBwbGFjZWhvbGRlcjogc3RyaW5nID0gJ1NlbGVjaW9uYXInO1xuXG4gICAgQElucHV0KCkgcmVxdWlyZWQ6IGJvb2xlYW47XG5cbiAgICBwcml2YXRlIF9kaXNhYmxlZDogYm9vbGVhbiA9IGZhbHNlO1xuICAgIEBJbnB1dCgpIHNldCBkaXNhYmxlZCh2YWx1ZTogYW55KSB7XG4gICAgICAgIHRoaXMuX2Rpc2FibGVkID0gY29lcmNlQm9vbGVhblByb3BlcnR5KHZhbHVlKTtcbiAgICB9XG4gICAgZ2V0IGRpc2FibGVkKCkge1xuICAgICAgICByZXR1cm4gdGhpcy5fZGlzYWJsZWQ7XG4gICAgfVxuXG4gICAgcHJpdmF0ZSBfbG9hZGluZzogYm9vbGVhbiA9IGZhbHNlO1xuICAgIEBJbnB1dCgpIHNldCBsb2FkaW5nKHZhbHVlOiBhbnkpIHtcbiAgICAgICAgdGhpcy5fbG9hZGluZyA9IGNvZXJjZUJvb2xlYW5Qcm9wZXJ0eSh2YWx1ZSk7XG4gICAgfVxuICAgIGdldCBsb2FkaW5nKCkge1xuICAgICAgICByZXR1cm4gdGhpcy5fbG9hZGluZztcbiAgICB9XG5cbiAgICBwcml2YXRlIF9tdWx0aXBsZTogYm9vbGVhbiA9IGZhbHNlO1xuICAgIEBJbnB1dCgpIHNldCBtdWx0aXBsZSh2YWx1ZTogYW55KSB7XG4gICAgICAgIHRoaXMuX211bHRpcGxlID0gY29lcmNlQm9vbGVhblByb3BlcnR5KHZhbHVlKTtcbiAgICB9XG4gICAgZ2V0IG11bHRpcGxlKCkge1xuICAgICAgICByZXR1cm4gdGhpcy5fbXVsdGlwbGU7XG4gICAgfVxuXG4gICAgcHJpdmF0ZSBfc2hvd09uRm9jdXM6IGJvb2xlYW4gPSB0cnVlO1xuICAgIEBJbnB1dCgpIHNldCBzaG93T25Gb2N1cyh2YWx1ZTogYW55KSB7XG4gICAgICAgIHRoaXMuX3Nob3dPbkZvY3VzID0gY29lcmNlQm9vbGVhblByb3BlcnR5KHZhbHVlKTtcbiAgICB9XG4gICAgZ2V0IHNob3dPbkZvY3VzKCkge1xuICAgICAgICByZXR1cm4gdGhpcy5fc2hvd09uRm9jdXM7XG4gICAgfVxuXG4gICAgcHJpdmF0ZSBfaGlkZU9uRXNjYXBlOiBib29sZWFuID0gdHJ1ZTtcbiAgICBASW5wdXQoKSBzZXQgaGlkZU9uRXNjYXBlKHZhbHVlOiBhbnkpIHtcbiAgICAgICAgdGhpcy5faGlkZU9uRXNjYXBlID0gY29lcmNlQm9vbGVhblByb3BlcnR5KHZhbHVlKTtcbiAgICB9XG4gICAgZ2V0IGhpZGVPbkVzY2FwZSgpIHtcbiAgICAgICAgcmV0dXJuIHRoaXMuX2hpZGVPbkVzY2FwZTtcbiAgICB9XG5cbiAgICBASW5wdXQoKSBlbnVtOiBhbnk7XG5cbiAgICBASW5wdXQoKSBzb3J0OiAoYTogYW55LCBiOiBhbnkpID0+IG51bWJlcjtcblxuICAgIEBJbnB1dCgpIHZhbHVlc0V4Y2x1ZDogc3RyaW5nW107XG5cbiAgICBASW5wdXQoKSB2YWx1ZXNPbWl0OiBzdHJpbmdbXTtcblxuICAgIHByaXZhdGUgX3ZhbHVlOiBhbnk7XG4gICAgQElucHV0KCd2YWx1ZScpIHNldCB2YWx1ZSh2YWx1ZTogYW55KSB7XG4gICAgICAgIHRoaXMuX3ZhbHVlID0gdmFsdWU7XG4gICAgICAgIHRoaXMub25DaGFuZ2UodmFsdWUpO1xuICAgICAgICB0aGlzLm9uVG91Y2goKTtcbiAgICB9XG4gICAgZ2V0IHZhbHVlKCkge1xuICAgICAgICByZXR1cm4gdGhpcy5fdmFsdWU7XG4gICAgfVxuXG4gICAgQE91dHB1dCgpIHNlbGVjdGlvbkNoYW5nZTogRXZlbnRFbWl0dGVyPHN0cmluZz4gPSBuZXcgRXZlbnRFbWl0dGVyPHN0cmluZz4oKTtcbiAgICBAT3V0cHV0KCkgb25Gb2N1czogRXZlbnRFbWl0dGVyPEV2ZW50PiA9IG5ldyBFdmVudEVtaXR0ZXI8RXZlbnQ+KCk7XG4gICAgQE91dHB1dCgpIG9uQmx1cjogRXZlbnRFbWl0dGVyPEV2ZW50PiA9IG5ldyBFdmVudEVtaXR0ZXI8RXZlbnQ+KCk7XG4gICAgQE91dHB1dCgpIG9uT3BlbmVkQ2hhbmdlOiBFdmVudEVtaXR0ZXI8Ym9vbGVhbj4gPSBuZXcgRXZlbnRFbWl0dGVyPGJvb2xlYW4+KCk7XG5cbiAgICBnZXQgb3B0aW9uU2VsZWN0ZWQoKTogc3RyaW5nIHtcbiAgICAgICAgaWYgKHRoaXMudmFsdWUgJiYgIUFycmF5VXRpbC5pc0VtcHR5KHRoaXMuX2VudW1MaXN0KSkge1xuICAgICAgICAgICAgY29uc3Qgc2VsZWN0ZWQgPSB0aGlzLl9lbnVtTGlzdC5maW5kKGUgPT4gZS5rZXkgPT09IHRoaXMudmFsdWUpO1xuICAgICAgICAgICAgaWYgKHNlbGVjdGVkKSB7XG4gICAgICAgICAgICAgICAgcmV0dXJuIHNlbGVjdGVkLnZhbHVlO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgcmV0dXJuICcnO1xuICAgIH1cblxuICAgIGdldCBzY3JvbGxWaWV3cG9ydEhlaWdodCgpOiBudW1iZXIge1xuICAgICAgICBsZXQgaGVpZ2h0OiBudW1iZXIgPSAwO1xuICAgICAgICBpZiAodGhpcy5fZW51bUxpc3QgJiYgdGhpcy5fZW51bUxpc3QubGVuZ3RoKSB7XG4gICAgICAgICAgICBoZWlnaHQgPSAodGhpcy5fZW51bUxpc3QubGVuZ3RoICogT1BUSU9OX0hFSUdIVF9QWCk7XG4gICAgICAgIH1cblxuICAgICAgICByZXR1cm4gaGVpZ2h0O1xuICAgIH1cblxuICAgIGNvbnN0cnVjdG9yKFxuICAgICAgICBwdWJsaWMgZWxlbWVudFJlZjogRWxlbWVudFJlZixcbiAgICAgICAgcHJpdmF0ZSBfY2hhbmdlRGV0ZWN0b3JSZWY6IENoYW5nZURldGVjdG9yUmVmXG4gICAgKSB7IH1cblxuICAgIG5nT25Jbml0KCk6IHZvaWQge1xuICAgICAgICBjb25zdCBsRW51bUxpc3QgPSBPYmplY3Qua2V5cyh0aGlzLmVudW0pXG4gICAgICAgICAgICAubWFwKGtleSA9PiAoeyBrZXk6IGtleSwgdmFsdWU6IHRoaXMuZW51bVtrZXldIH0pKVxuICAgICAgICAgICAgLnNvcnQodGhpcy5zb3J0KTtcblxuICAgICAgICBpZiAoIU9iamVjdFV0aWwuaXNOdWxsKHRoaXMudmFsdWVzRXhjbHVkKSkge1xuICAgICAgICAgICAgZm9yIChsZXQgaSA9IDA7IGkgPCBsRW51bUxpc3QubGVuZ3RoOyBpKyspIHtcbiAgICAgICAgICAgICAgICBjb25zdCBleGNsdWRFbnVtOiBib29sZWFuID0gdGhpcy52YWx1ZXNFeGNsdWQuc29tZShlID0+IGUgPT09IGxFbnVtTGlzdFtpXS5rZXkpO1xuICAgICAgICAgICAgICAgIGlmICghZXhjbHVkRW51bSkge1xuICAgICAgICAgICAgICAgICAgICB0aGlzLl9lbnVtTGlzdC5wdXNoKGxFbnVtTGlzdFtpXSk7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgdGhpcy5fZW51bUxpc3QgPSBsRW51bUxpc3Q7XG4gICAgICAgIH1cblxuICAgICAgICB0aGlzLl9jaGFuZ2VEZXRlY3RvclJlZi5kZXRlY3RDaGFuZ2VzKCk7XG4gICAgfVxuXG4gICAgbmdPbkRlc3Ryb3koKTogdm9pZCB7XG4gICAgICAgIGlmICghT2JqZWN0VXRpbC5pc051bGwodGhpcy5wb3BvdmVyVHJpZ2dlcikpIHtcbiAgICAgICAgICAgIHRoaXMucG9wb3ZlclRyaWdnZXIuZGVzdHJveVBvcG92ZXIoKTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIG9uQ2hhbmdlOiBhbnkgPSAoKSA9PiB7IH07XG5cbiAgICBvblRvdWNoOiBhbnkgPSAoKSA9PiB7IH07XG5cbiAgICByZWdpc3Rlck9uQ2hhbmdlKGZuOiBhbnkpOiB2b2lkIHtcbiAgICAgICAgdGhpcy5vbkNoYW5nZSA9IGZuO1xuICAgIH1cblxuICAgIHJlZ2lzdGVyT25Ub3VjaGVkKGZuOiBhbnkpOiB2b2lkIHtcbiAgICAgICAgdGhpcy5vblRvdWNoID0gZm47XG4gICAgfVxuXG4gICAgd3JpdGVWYWx1ZSh2YWx1ZTogYW55KTogdm9pZCB7XG4gICAgICAgIHRoaXMudmFsdWUgPSB2YWx1ZTtcbiAgICB9XG5cbiAgICB2YWxpZGF0ZU9taXRCeUtleShrZXk6IHN0cmluZyk6IGJvb2xlYW4ge1xuICAgICAgICByZXR1cm4gIU9iamVjdFV0aWwuaXNOdWxsKHRoaXMudmFsdWVzT21pdCkgPyAhdGhpcy52YWx1ZXNPbWl0LnNvbWUoZWwgPT4gZWwgPT09IGtleSkgOiB0cnVlO1xuICAgIH1cblxuICAgIHB1YmxpYyBzaG93UG9wb3ZlcigpOiB2b2lkIHtcbiAgICAgICAgaWYgKCF0aGlzLmRpc2FibGVkICYmICF0aGlzLmxvYWRpbmcpIHtcbiAgICAgICAgICAgIHRoaXMucG9wb3ZlclRyaWdnZXIub3BlblBvcG92ZXIoKTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIHB1YmxpYyBjbG9zZVBvcG92ZXIoKTogdm9pZCB7XG4gICAgICAgIGlmICghdGhpcy5kaXNhYmxlZCAmJiAhdGhpcy5sb2FkaW5nKSB7XG4gICAgICAgICAgICB0aGlzLnBvcG92ZXJUcmlnZ2VyLmNsb3NlUG9wb3ZlcigpO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgcHVibGljIG9uSW5wdXRGb2N1cyhldmVudDogRXZlbnQpOiB2b2lkIHtcbiAgICAgICAgaWYgKHRoaXMuc2hvd09uRm9jdXMgJiYgIXRoaXMuZGlzYWJsZWQpIHtcbiAgICAgICAgICAgIHRoaXMuc2hvd1BvcG92ZXIoKTtcbiAgICAgICAgfVxuICAgICAgICBpZiAoIXRoaXMuZGlzYWJsZWQpIHtcbiAgICAgICAgICAgIHRoaXMub25Gb2N1cy5lbWl0KGV2ZW50KTtcbiAgICAgICAgICAgIGV2ZW50LnN0b3BQcm9wYWdhdGlvbigpO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgcHVibGljIG9uSW5wdXRDbGljayhldmVudDogRXZlbnQpOiB2b2lkIHtcbiAgICAgICAgaWYgKCF0aGlzLmRpc2FibGVkKSB7XG4gICAgICAgICAgICB0aGlzLnNob3dQb3BvdmVyKCk7XG5cbiAgICAgICAgICAgIGlmICghT2JqZWN0VXRpbC5pc051bGwodGhpcy5wb3BvdmVyVHJpZ2dlcikgJiYgIXRoaXMucG9wb3ZlclRyaWdnZXIucG9wb3Zlck9wZW4pIHtcbiAgICAgICAgICAgICAgICB0aGlzLmZvcm1GaWVsZFNlbGVjdEVudW0uZm9jdXMoKTtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgZXZlbnQuc3RvcFByb3BhZ2F0aW9uKCk7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBwdWJsaWMgb25JbnB1dEJsdXIoZXZlbnQ6IEV2ZW50KTogdm9pZCB7XG4gICAgICAgIGlmICghdGhpcy5kaXNhYmxlZCkge1xuICAgICAgICAgICAgdGhpcy5vbkJsdXIuZW1pdChldmVudCk7XG4gICAgICAgICAgICB0aGlzLm9uVG91Y2goKTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIHB1YmxpYyBvbklucHV0S2V5ZG93bihldmVudDogS2V5Ym9hcmRFdmVudCk6IHZvaWQge1xuICAgICAgICBpZiAodGhpcy5kaXNhYmxlZCkge1xuICAgICAgICAgICAgZXZlbnQuc3RvcEltbWVkaWF0ZVByb3BhZ2F0aW9uKCk7XG4gICAgICAgICAgICByZXR1cm47XG4gICAgICAgIH1cblxuICAgICAgICBpZiAoXG4gICAgICAgICAgICAoKGV2ZW50LmNvZGUudG9VcHBlckNhc2UoKSA9PT0gJ0VTQ0FQRScpICYmIHRoaXMuaGlkZU9uRXNjYXBlKSB8fFxuICAgICAgICAgICAgKChldmVudC5jb2RlLnRvVXBwZXJDYXNlKCkgPT09ICdFTlRFUicpIHx8IChldmVudC5jb2RlLnRvVXBwZXJDYXNlKCkgPT09ICdOVU1QQURFTlRFUicpKSB8fFxuICAgICAgICAgICAgKGV2ZW50LmNvZGUudG9VcHBlckNhc2UoKSA9PT0gJ1RBQicpXG4gICAgICAgICkge1xuICAgICAgICAgICAgaWYgKCFPYmplY3RVdGlsLmlzTnVsbCh0aGlzLnBvcG92ZXJUcmlnZ2VyKSAmJiB0aGlzLnBvcG92ZXJUcmlnZ2VyLnBvcG92ZXJPcGVuKSB7XG4gICAgICAgICAgICAgICAgdGhpcy5jbG9zZVBvcG92ZXIoKTtcbiAgICAgICAgICAgICAgICBldmVudC5wcmV2ZW50RGVmYXVsdCgpO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuXG4gICAgcHVibGljIG9uQnV0dG9uU2VsZWN0T3B0aW9uQ2xpY2soa2V5OiBzdHJpbmcpOiB2b2lkIHtcbiAgICAgICAgdGhpcy52YWx1ZSA9IGtleTtcbiAgICAgICAgdGhpcy5jbG9zZVBvcG92ZXIoKTtcbiAgICAgICAgdGhpcy5fY2hhbmdlRGV0ZWN0b3JSZWYuZGV0ZWN0Q2hhbmdlcygpO1xuICAgIH1cblxuICAgIEBIb3N0TGlzdGVuZXIoJ3dpbmRvdzpyZXNpemUnLCBbJyRldmVudCddKVxuICAgIG9uV2luZG93UmVzaXplKGV2ZW50OiBVSUV2ZW50KTogdm9pZCB7XG4gICAgICAgIGlmICghT2JqZWN0VXRpbC5pc051bGwodGhpcy5wb3BvdmVyVHJpZ2dlcikgJiYgdGhpcy5wb3BvdmVyVHJpZ2dlci5wb3BvdmVyT3Blbikge1xuICAgICAgICAgICAgdGhpcy5jbG9zZVBvcG92ZXIoKTtcbiAgICAgICAgICAgIHRoaXMuX2NoYW5nZURldGVjdG9yUmVmLmRldGVjdENoYW5nZXMoKTtcbiAgICAgICAgICAgIGV2ZW50LnN0b3BQcm9wYWdhdGlvbigpO1xuICAgICAgICB9XG4gICAgfVxuXG59XG4iXX0=
370
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5wdXQtc2VsZWN0LWVudW0uY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6Im5nOi8vQGdpcGlzaXN0ZW1hcy9uZy1jb3JlLyIsInNvdXJjZXMiOlsic2hhcmVkL2dpcGktY29tcG9uZW50cy9pbnB1dC1zZWxlY3QtZW51bS9pbnB1dC1zZWxlY3QtZW51bS5jb21wb25lbnQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IjtBQUFBLE9BQU8sRUFBRSx1QkFBdUIsRUFBRSxpQkFBaUIsRUFBRSxTQUFTLEVBQUUsVUFBVSxFQUFFLFlBQVksRUFBRSxZQUFZLEVBQUUsS0FBSyxFQUFFLFNBQVMsRUFBRSxNQUFNLEVBQUUsTUFBTSxFQUFFLFNBQVMsRUFBRSxVQUFVLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDdkwsT0FBTyxFQUF3QixpQkFBaUIsRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBRXpFLE9BQU8sRUFBRSxxQkFBcUIsRUFBRSxNQUFNLHVCQUF1QixDQUFDO0FBQzlELE9BQU8sRUFBRSxTQUFTLEVBQUUsTUFBTSxnQ0FBZ0MsQ0FBQztBQUMzRCxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0saUNBQWlDLENBQUM7QUFDN0QsT0FBTyxFQUFFLHNCQUFzQixFQUFFLE1BQU0sb0NBQW9DLENBQUM7QUFDNUUsT0FBTyxFQUFFLGtCQUFrQixFQUFFLE1BQU0sbUNBQW1DLENBQUM7QUFFdkUsSUFBSSxZQUFZLEdBQUcsQ0FBQyxDQUFDO0FBRXJCLHdEQUF3RDtBQUN4RCxJQUFNLGdCQUFnQixHQUFHLEVBQUUsQ0FBQztBQW1CNUI7SUF1SEksc0NBQ1csVUFBc0IsRUFDckIsa0JBQXFDO1FBRHRDLGVBQVUsR0FBVixVQUFVLENBQVk7UUFDckIsdUJBQWtCLEdBQWxCLGtCQUFrQixDQUFtQjtRQXZIekMsVUFBSyxHQUFXLDRCQUEwQixZQUFZLEVBQUksQ0FBQztRQUVuRSxjQUFTLEdBQVUsRUFBRSxDQUFDO1FBRXRCLDRCQUF1QixHQUFXLENBQUMsQ0FBQztRQUVwQyx3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UUFBUixLQUFLLEVBQUU7O29FQUFzQjtJQUdkO1FBQWYsS0FBSyxDQUFDLE9BQU8sQ0FBQzs7OzZEQUlkO0lBS1M7UUFBVCxNQUFNLEVBQUU7a0NBQWtCLFlBQVk7eUVBQXNDO0lBQ25FO1FBQVQsTUFBTSxFQUFFO2tDQUFVLFlBQVk7aUVBQW9DO0lBQ3pEO1FBQVQsTUFBTSxFQUFFO2tDQUFTLFlBQVk7Z0VBQW9DO0lBQ3hEO1FBQVQsTUFBTSxFQUFFO2tDQUFpQixZQUFZO3dFQUF3QztJQWtKOUU7UUFEQyxZQUFZLENBQUMsZUFBZSxFQUFFLENBQUMsUUFBUSxDQUFDLENBQUM7O3lDQUNwQixPQUFPOztzRUFNNUI7SUFqUFEsNEJBQTRCO1FBakJ4QyxTQUFTLENBQUM7WUFDUCxRQUFRLEVBQUUsd0JBQXdCO1lBQ2xDLFFBQVEsRUFBRSxxQkFBcUI7WUFDL0IsaTlIQUFpRDtZQUVqRCxTQUFTLEVBQUU7Z0JBQ1A7b0JBQ0ksT0FBTyxFQUFFLGlCQUFpQjtvQkFDMUIsV0FBVyxFQUFFLFVBQVUsQ0FBQyxjQUEyQyxPQUFBLDhCQUE0QixFQUE1QixDQUE0QixDQUFDO29CQUNoRyxLQUFLLEVBQUUsSUFBSTtpQkFDZDthQUNKO1lBQ0QsSUFBSSxFQUFFO2dCQUNGLE9BQU8sRUFBRSx3QkFBd0I7YUFDcEM7WUFDRCxlQUFlLEVBQUUsdUJBQXVCLENBQUMsTUFBTTs7U0FDbEQsQ0FBQzt5Q0F5SHlCLFVBQVU7WUFDRCxpQkFBaUI7T0F6SHhDLDRCQUE0QixDQW1QeEM7SUFBRCxtQ0FBQztDQUFBLEFBblBELElBbVBDO1NBblBZLDRCQUE0QiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENoYW5nZURldGVjdGlvblN0cmF0ZWd5LCBDaGFuZ2VEZXRlY3RvclJlZiwgQ29tcG9uZW50LCBFbGVtZW50UmVmLCBFdmVudEVtaXR0ZXIsIEhvc3RMaXN0ZW5lciwgSW5wdXQsIE9uRGVzdHJveSwgT25Jbml0LCBPdXRwdXQsIFZpZXdDaGlsZCwgZm9yd2FyZFJlZiB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgQ29udHJvbFZhbHVlQWNjZXNzb3IsIE5HX1ZBTFVFX0FDQ0VTU09SIH0gZnJvbSAnQGFuZ3VsYXIvZm9ybXMnO1xuXG5pbXBvcnQgeyBjb2VyY2VCb29sZWFuUHJvcGVydHkgfSBmcm9tICdAYW5ndWxhci9jZGsvY29lcmNpb24nO1xuaW1wb3J0IHsgQXJyYXlVdGlsIH0gZnJvbSAnLi4vLi4vLi4vY29yZS91dGlscy9hcnJheS51dGlsJztcbmltcG9ydCB7IE9iamVjdFV0aWwgfSBmcm9tICcuLi8uLi8uLi9jb3JlL3V0aWxzL29iamVjdC51dGlsJztcbmltcG9ydCB7IEdJUElGb3JtRmllbGRDb21wb25lbnQgfSBmcm9tICcuLi9mb3JtLWZpZWxkL2Zvcm0tZmllbGQuY29tcG9uZW50JztcbmltcG9ydCB7IEdJUElQb3BvdmVyVHJpZ2dlciB9IGZyb20gJy4uL3BvcG92ZXIvc2hhcmVkL3BvcG92ZXItdHJpZ2dlcic7XG5cbmxldCBuZXh0VW5pcXVlSWQgPSAwO1xuXG4vKiogQSBhbHR1cmEgZG9zIGl0ZW5zIHNlbGVjaW9uYWRvcyBlbSB1bmlkYWRlcyBgcHhgLiAqL1xuY29uc3QgT1BUSU9OX0hFSUdIVF9QWCA9IDQwO1xuXG5AQ29tcG9uZW50KHtcbiAgICBzZWxlY3RvcjogYGdpcGktaW5wdXQtc2VsZWN0LWVudW1gLFxuICAgIGV4cG9ydEFzOiAnZ2lwaUlucHV0U2VsZWN0RW51bScsXG4gICAgdGVtcGxhdGVVcmw6ICcuL2lucHV0LXNlbGVjdC1lbnVtLmNvbXBvbmVudC5odG1sJyxcbiAgICBzdHlsZVVybHM6IFsnLi9pbnB1dC1zZWxlY3QtZW51bS5jb21wb25lbnQuc2NzcyddLFxuICAgIHByb3ZpZGVyczogW1xuICAgICAgICB7XG4gICAgICAgICAgICBwcm92aWRlOiBOR19WQUxVRV9BQ0NFU1NPUixcbiAgICAgICAgICAgIHVzZUV4aXN0aW5nOiBmb3J3YXJkUmVmKCgpOiB0eXBlb2YgR0lQSUlucHV0U2VsZWN0RW51bUNvbXBvbmVudCA9PiBHSVBJSW5wdXRTZWxlY3RFbnVtQ29tcG9uZW50KSxcbiAgICAgICAgICAgIG11bHRpOiB0cnVlXG4gICAgICAgIH1cbiAgICBdLFxuICAgIGhvc3Q6IHtcbiAgICAgICAgJ2NsYXNzJzogJ2dpcGktaW5wdXQtc2VsZWN0LWVudW0nLFxuICAgIH0sXG4gICAgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2hcbn0pXG5leHBvcnQgY2xhc3MgR0lQSUlucHV0U2VsZWN0RW51bUNvbXBvbmVudCBpbXBsZW1lbnRzIE9uSW5pdCwgT25EZXN0cm95LCBDb250cm9sVmFsdWVBY2Nlc3NvciB7XG5cbiAgICBwcml2YXRlIF9uYW1lOiBzdHJpbmcgPSBgZ2lwaS1pbnB1dC1zZWxlY3QtZW51bS0ke25leHRVbmlxdWVJZCsrfWA7XG5cbiAgICBfZW51bUxpc3Q6IGFueVtdID0gW107XG5cbiAgICBfaXRlbVNpemVTY3JvbGxWaWV3cG9ydDogbnVtYmVyID0gNTtcblxuICAgIF9sYXN0T3B0aW9uU2VsZWN0ZWQ6IGFueSA9IG51bGw7XG5cbiAgICBAVmlld0NoaWxkKCdmb3JtRmllbGRTZWxlY3RFbnVtJywgeyByZWFkOiBHSVBJRm9ybUZpZWxkQ29tcG9uZW50LCBzdGF0aWM6IGZhbHNlIH0pIGZvcm1GaWVsZFNlbGVjdEVudW06IEdJUElGb3JtRmllbGRDb21wb25lbnQ7XG5cbiAgICBAVmlld0NoaWxkKEdJUElQb3BvdmVyVHJpZ2dlciwgeyBzdGF0aWM6IGZhbHNlIH0pIHBvcG92ZXJUcmlnZ2VyOiBHSVBJUG9wb3ZlclRyaWdnZXI7XG5cbiAgICBASW5wdXQoKSBpZDogc3RyaW5nID0gdGhpcy5fbmFtZTtcblxuICAgIEBJbnB1dCgpIG5hbWU6IHN0cmluZyA9IHRoaXMuX25hbWU7XG5cbiAgICBASW5wdXQoKSBsYWJlbDogc3RyaW5nO1xuXG4gICAgQElucHV0KCkgdG9vbHRpcDogc3RyaW5nID0gJyc7XG5cbiAgICBASW5wdXQoKSBhcmlhTGFiZWw6IHN0cmluZztcblxuICAgIEBJbnB1dCgpIHBsYWNlaG9sZGVyOiBzdHJpbmcgPSAnU2VsZWNpb25hcic7XG5cbiAgICBASW5wdXQoKSByZXF1aXJlZDogYm9vbGVhbjtcblxuICAgIHByaXZhdGUgX2Rpc2FibGVkOiBib29sZWFuID0gZmFsc2U7XG4gICAgQElucHV0KCkgc2V0IGRpc2FibGVkKHZhbHVlOiBhbnkpIHtcbiAgICAgICAgdGhpcy5fZGlzYWJsZWQgPSBjb2VyY2VCb29sZWFuUHJvcGVydHkodmFsdWUpO1xuICAgIH1cbiAgICBnZXQgZGlzYWJsZWQoKSB7XG4gICAgICAgIHJldHVybiB0aGlzLl9kaXNhYmxlZDtcbiAgICB9XG5cbiAgICBwcml2YXRlIF9sb2FkaW5nOiBib29sZWFuID0gZmFsc2U7XG4gICAgQElucHV0KCkgc2V0IGxvYWRpbmcodmFsdWU6IGFueSkge1xuICAgICAgICB0aGlzLl9sb2FkaW5nID0gY29lcmNlQm9vbGVhblByb3BlcnR5KHZhbHVlKTtcbiAgICB9XG4gICAgZ2V0IGxvYWRpbmcoKSB7XG4gICAgICAgIHJldHVybiB0aGlzLl9sb2FkaW5nO1xuICAgIH1cblxuICAgIHByaXZhdGUgX211bHRpcGxlOiBib29sZWFuID0gZmFsc2U7XG4gICAgQElucHV0KCkgc2V0IG11bHRpcGxlKHZhbHVlOiBhbnkpIHtcbiAgICAgICAgdGhpcy5fbXVsdGlwbGUgPSBjb2VyY2VCb29sZWFuUHJvcGVydHkodmFsdWUpO1xuICAgIH1cbiAgICBnZXQgbXVsdGlwbGUoKSB7XG4gICAgICAgIHJldHVybiB0aGlzLl9tdWx0aXBsZTtcbiAgICB9XG5cbiAgICBwcml2YXRlIF9zaG93T25Gb2N1czogYm9vbGVhbiA9IHRydWU7XG4gICAgQElucHV0KCkgc2V0IHNob3dPbkZvY3VzKHZhbHVlOiBhbnkpIHtcbiAgICAgICAgdGhpcy5fc2hvd09uRm9jdXMgPSBjb2VyY2VCb29sZWFuUHJvcGVydHkodmFsdWUpO1xuICAgIH1cbiAgICBnZXQgc2hvd09uRm9jdXMoKSB7XG4gICAgICAgIHJldHVybiB0aGlzLl9zaG93T25Gb2N1cztcbiAgICB9XG5cbiAgICBwcml2YXRlIF9oaWRlT25Fc2NhcGU6IGJvb2xlYW4gPSB0cnVlO1xuICAgIEBJbnB1dCgpIHNldCBoaWRlT25Fc2NhcGUodmFsdWU6IGFueSkge1xuICAgICAgICB0aGlzLl9oaWRlT25Fc2NhcGUgPSBjb2VyY2VCb29sZWFuUHJvcGVydHkodmFsdWUpO1xuICAgIH1cbiAgICBnZXQgaGlkZU9uRXNjYXBlKCkge1xuICAgICAgICByZXR1cm4gdGhpcy5faGlkZU9uRXNjYXBlO1xuICAgIH1cblxuICAgIEBJbnB1dCgpIGVudW06IGFueTtcblxuICAgIEBJbnB1dCgpIHNvcnQ6IChhOiBhbnksIGI6IGFueSkgPT4gbnVtYmVyO1xuXG4gICAgQElucHV0KCkgdmFsdWVzRXhjbHVkOiBzdHJpbmdbXTtcblxuICAgIEBJbnB1dCgpIHZhbHVlc09taXQ6IHN0cmluZ1tdO1xuXG4gICAgcHJpdmF0ZSBfdmFsdWU6IGFueTtcbiAgICBASW5wdXQoJ3ZhbHVlJykgc2V0IHZhbHVlKHZhbHVlOiBhbnkpIHtcbiAgICAgICAgdGhpcy5fdmFsdWUgPSB2YWx1ZTtcbiAgICAgICAgdGhpcy5vbkNoYW5nZSh2YWx1ZSk7XG4gICAgICAgIHRoaXMub25Ub3VjaCgpO1xuICAgIH1cbiAgICBnZXQgdmFsdWUoKSB7XG4gICAgICAgIHJldHVybiB0aGlzLl92YWx1ZTtcbiAgICB9XG5cbiAgICBAT3V0cHV0KCkgc2VsZWN0aW9uQ2hhbmdlOiBFdmVudEVtaXR0ZXI8c3RyaW5nPiA9IG5ldyBFdmVudEVtaXR0ZXI8c3RyaW5nPigpO1xuICAgIEBPdXRwdXQoKSBvbkZvY3VzOiBFdmVudEVtaXR0ZXI8RXZlbnQ+ID0gbmV3IEV2ZW50RW1pdHRlcjxFdmVudD4oKTtcbiAgICBAT3V0cHV0KCkgb25CbHVyOiBFdmVudEVtaXR0ZXI8RXZlbnQ+ID0gbmV3IEV2ZW50RW1pdHRlcjxFdmVudD4oKTtcbiAgICBAT3V0cHV0KCkgb25PcGVuZWRDaGFuZ2U6IEV2ZW50RW1pdHRlcjxib29sZWFuPiA9IG5ldyBFdmVudEVtaXR0ZXI8Ym9vbGVhbj4oKTtcblxuICAgIHB1YmxpYyBnZXQgb3B0aW9uU2VsZWN0ZWRWYWx1ZSgpOiBzdHJpbmcge1xuICAgICAgICBpZiAodGhpcy52YWx1ZSAmJiAhQXJyYXlVdGlsLmlzRW1wdHkodGhpcy5fZW51bUxpc3QpKSB7XG4gICAgICAgICAgICBjb25zdCBzZWxlY3RlZCA9IHRoaXMuX2VudW1MaXN0LmZpbmQoZSA9PiBlLmtleSA9PT0gdGhpcy52YWx1ZSk7XG4gICAgICAgICAgICBpZiAoc2VsZWN0ZWQpIHtcbiAgICAgICAgICAgICAgICByZXR1cm4gc2VsZWN0ZWQudmFsdWU7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgICAgcmV0dXJuICcnO1xuICAgIH1cblxuICAgIHB1YmxpYyBnZXQgb3B0aW9uU2VsZWN0ZWRLZXkoKTogc3RyaW5nIHtcbiAgICAgICAgaWYgKHRoaXMudmFsdWUgJiYgIUFycmF5VXRpbC5pc0VtcHR5KHRoaXMuX2VudW1MaXN0KSkge1xuICAgICAgICAgICAgY29uc3Qgc2VsZWN0ZWQgPSB0aGlzLl9lbnVtTGlzdC5maW5kKGUgPT4gZS5rZXkgPT09IHRoaXMudmFsdWUpO1xuICAgICAgICAgICAgaWYgKHNlbGVjdGVkKSB7XG4gICAgICAgICAgICAgICAgcmV0dXJuIHNlbGVjdGVkLmtleTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgICByZXR1cm4gJyc7XG4gICAgfVxuXG4gICAgcHVibGljIGdldCBzY3JvbGxWaWV3cG9ydEhlaWdodCgpOiBudW1iZXIge1xuICAgICAgICBsZXQgaGVpZ2h0OiBudW1iZXIgPSAwO1xuICAgICAgICBpZiAodGhpcy5fZW51bUxpc3QgJiYgdGhpcy5fZW51bUxpc3QubGVuZ3RoKSB7XG4gICAgICAgICAgICBoZWlnaHQgPSAodGhpcy5fZW51bUxpc3QubGVuZ3RoICogT1BUSU9OX0hFSUdIVF9QWCk7XG4gICAgICAgIH1cbiAgICAgICAgcmV0dXJuIGhlaWdodDtcbiAgICB9XG5cbiAgICBjb25zdHJ1Y3RvcihcbiAgICAgICAgcHVibGljIGVsZW1lbnRSZWY6IEVsZW1lbnRSZWYsXG4gICAgICAgIHByaXZhdGUgX2NoYW5nZURldGVjdG9yUmVmOiBDaGFuZ2VEZXRlY3RvclJlZlxuICAgICkgeyB9XG5cbiAgICBuZ09uSW5pdCgpOiB2b2lkIHtcbiAgICAgICAgY29uc3QgbEVudW1MaXN0ID0gT2JqZWN0LmtleXModGhpcy5lbnVtKVxuICAgICAgICAgICAgLm1hcChrZXkgPT4gKHsga2V5OiBrZXksIHZhbHVlOiB0aGlzLmVudW1ba2V5XSB9KSlcbiAgICAgICAgICAgIC5zb3J0KHRoaXMuc29ydCk7XG5cbiAgICAgICAgaWYgKCFPYmplY3RVdGlsLmlzTnVsbCh0aGlzLnZhbHVlc0V4Y2x1ZCkpIHtcbiAgICAgICAgICAgIGZvciAobGV0IGkgPSAwOyBpIDwgbEVudW1MaXN0Lmxlbmd0aDsgaSsrKSB7XG4gICAgICAgICAgICAgICAgY29uc3QgZXhjbHVkRW51bTogYm9vbGVhbiA9IHRoaXMudmFsdWVzRXhjbHVkLnNvbWUoZSA9PiBlID09PSBsRW51bUxpc3RbaV0ua2V5KTtcbiAgICAgICAgICAgICAgICBpZiAoIWV4Y2x1ZEVudW0pIHtcbiAgICAgICAgICAgICAgICAgICAgdGhpcy5fZW51bUxpc3QucHVzaChsRW51bUxpc3RbaV0pO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgIHRoaXMuX2VudW1MaXN0ID0gbEVudW1MaXN0O1xuICAgICAgICB9XG5cbiAgICAgICAgdGhpcy5fY2hhbmdlRGV0ZWN0b3JSZWYuZGV0ZWN0Q2hhbmdlcygpO1xuICAgIH1cblxuICAgIG5nT25EZXN0cm95KCk6IHZvaWQge1xuICAgICAgICBpZiAoIU9iamVjdFV0aWwuaXNOdWxsKHRoaXMucG9wb3ZlclRyaWdnZXIpKSB7XG4gICAgICAgICAgICB0aGlzLnBvcG92ZXJUcmlnZ2VyLmRlc3Ryb3lQb3BvdmVyKCk7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBvbkNoYW5nZTogYW55ID0gKCkgPT4geyB9O1xuXG4gICAgb25Ub3VjaDogYW55ID0gKCkgPT4geyB9O1xuXG4gICAgcmVnaXN0ZXJPbkNoYW5nZShmbjogYW55KTogdm9pZCB7XG4gICAgICAgIHRoaXMub25DaGFuZ2UgPSBmbjtcbiAgICB9XG5cbiAgICByZWdpc3Rlck9uVG91Y2hlZChmbjogYW55KTogdm9pZCB7XG4gICAgICAgIHRoaXMub25Ub3VjaCA9IGZuO1xuICAgIH1cblxuICAgIHdyaXRlVmFsdWUodmFsdWU6IGFueSk6IHZvaWQge1xuICAgICAgICB0aGlzLnZhbHVlID0gdmFsdWU7XG4gICAgfVxuXG4gICAgcHVibGljIHZhbGlkYXRlT21pdEJ5S2V5KGtleTogc3RyaW5nKTogYm9vbGVhbiB7XG4gICAgICAgIHJldHVybiAhT2JqZWN0VXRpbC5pc051bGwodGhpcy52YWx1ZXNPbWl0KSA/ICF0aGlzLnZhbHVlc09taXQuc29tZShlbCA9PiBlbCA9PT0ga2V5KSA6IHRydWU7XG4gICAgfVxuXG4gICAgcHVibGljIHNob3dQb3BvdmVyKCk6IHZvaWQge1xuICAgICAgICBpZiAoIXRoaXMuZGlzYWJsZWQgJiYgIXRoaXMubG9hZGluZykge1xuICAgICAgICAgICAgdGhpcy5wb3BvdmVyVHJpZ2dlci5vcGVuUG9wb3ZlcigpO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgcHVibGljIGNsb3NlUG9wb3ZlcigpOiB2b2lkIHtcbiAgICAgICAgaWYgKCF0aGlzLmRpc2FibGVkICYmICF0aGlzLmxvYWRpbmcpIHtcbiAgICAgICAgICAgIHRoaXMucG9wb3ZlclRyaWdnZXIuY2xvc2VQb3BvdmVyKCk7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBwdWJsaWMgb25JbnB1dEZvY3VzKGV2ZW50OiBFdmVudCk6IHZvaWQge1xuICAgICAgICBpZiAodGhpcy5zaG93T25Gb2N1cyAmJiAhdGhpcy5kaXNhYmxlZCkge1xuICAgICAgICAgICAgdGhpcy5zaG93UG9wb3ZlcigpO1xuICAgICAgICB9XG4gICAgICAgIGlmICghdGhpcy5kaXNhYmxlZCkge1xuICAgICAgICAgICAgdGhpcy5vbkZvY3VzLmVtaXQoZXZlbnQpO1xuICAgICAgICAgICAgZXZlbnQuc3RvcFByb3BhZ2F0aW9uKCk7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBwdWJsaWMgb25JbnB1dENsaWNrKGV2ZW50OiBFdmVudCk6IHZvaWQge1xuICAgICAgICBpZiAoIXRoaXMuZGlzYWJsZWQpIHtcbiAgICAgICAgICAgIHRoaXMuc2hvd1BvcG92ZXIoKTtcblxuICAgICAgICAgICAgaWYgKCFPYmplY3RVdGlsLmlzTnVsbCh0aGlzLnBvcG92ZXJUcmlnZ2VyKSAmJiAhdGhpcy5wb3BvdmVyVHJpZ2dlci5wb3BvdmVyT3Blbikge1xuICAgICAgICAgICAgICAgIHRoaXMuZm9ybUZpZWxkU2VsZWN0RW51bS5mb2N1cygpO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICBldmVudC5zdG9wUHJvcGFnYXRpb24oKTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIHB1YmxpYyBvbklucHV0Qmx1cihldmVudDogRXZlbnQpOiB2b2lkIHtcbiAgICAgICAgaWYgKCF0aGlzLmRpc2FibGVkKSB7XG4gICAgICAgICAgICB0aGlzLm9uQmx1ci5lbWl0KGV2ZW50KTtcbiAgICAgICAgICAgIHRoaXMub25Ub3VjaCgpO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgcHVibGljIG9uSW5wdXRLZXlkb3duKGV2ZW50OiBLZXlib2FyZEV2ZW50KTogdm9pZCB7XG4gICAgICAgIGlmICh0aGlzLmRpc2FibGVkKSB7XG4gICAgICAgICAgICBldmVudC5zdG9wSW1tZWRpYXRlUHJvcGFnYXRpb24oKTtcbiAgICAgICAgICAgIHJldHVybjtcbiAgICAgICAgfVxuXG4gICAgICAgIGlmIChcbiAgICAgICAgICAgICgoZXZlbnQuY29kZS50b1VwcGVyQ2FzZSgpID09PSAnRVNDQVBFJykgJiYgdGhpcy5oaWRlT25Fc2NhcGUpIHx8XG4gICAgICAgICAgICAoKGV2ZW50LmNvZGUudG9VcHBlckNhc2UoKSA9PT0gJ0VOVEVSJykgfHwgKGV2ZW50LmNvZGUudG9VcHBlckNhc2UoKSA9PT0gJ05VTVBBREVOVEVSJykpIHx8XG4gICAgICAgICAgICAoZXZlbnQuY29kZS50b1VwcGVyQ2FzZSgpID09PSAnVEFCJylcbiAgICAgICAgKSB7XG4gICAgICAgICAgICBpZiAoIU9iamVjdFV0aWwuaXNOdWxsKHRoaXMucG9wb3ZlclRyaWdnZXIpICYmIHRoaXMucG9wb3ZlclRyaWdnZXIucG9wb3Zlck9wZW4pIHtcbiAgICAgICAgICAgICAgICB0aGlzLmNsb3NlUG9wb3ZlcigpO1xuICAgICAgICAgICAgICAgIGV2ZW50LnByZXZlbnREZWZhdWx0KCk7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBwdWJsaWMgb25CdXR0b25TZWxlY3RPcHRpb25DbGljayhrZXk6IHN0cmluZyk6IHZvaWQge1xuICAgICAgICB0aGlzLnZhbHVlID0ga2V5O1xuICAgICAgICB0aGlzLmNsb3NlUG9wb3ZlcigpO1xuICAgICAgICB0aGlzLl9jaGFuZ2VEZXRlY3RvclJlZi5kZXRlY3RDaGFuZ2VzKCk7XG4gICAgfVxuXG4gICAgQEhvc3RMaXN0ZW5lcignd2luZG93OnJlc2l6ZScsIFsnJGV2ZW50J10pXG4gICAgb25XaW5kb3dSZXNpemUoZXZlbnQ6IFVJRXZlbnQpOiB2b2lkIHtcbiAgICAgICAgaWYgKCFPYmplY3RVdGlsLmlzTnVsbCh0aGlzLnBvcG92ZXJUcmlnZ2VyKSAmJiB0aGlzLnBvcG92ZXJUcmlnZ2VyLnBvcG92ZXJPcGVuKSB7XG4gICAgICAgICAgICB0aGlzLmNsb3NlUG9wb3ZlcigpO1xuICAgICAgICAgICAgdGhpcy5fY2hhbmdlRGV0ZWN0b3JSZWYuZGV0ZWN0Q2hhbmdlcygpO1xuICAgICAgICAgICAgZXZlbnQuc3RvcFByb3BhZ2F0aW9uKCk7XG4gICAgICAgIH1cbiAgICB9XG5cbn1cbiJdfQ==
@@ -219,7 +219,7 @@ var GIPISplitButtonComponent = /** @class */ (function () {
219
219
  Component({
220
220
  selector: "gipi-split-button[gipi-primary], gipi-split-button[gipi-secondary],\n gipi-split-button[gipi-tertiary], gipi-split-button[gipi-action]",
221
221
  exportAs: 'gipiSplitButton',
222
- template: "<div [matTooltip]=\"tooltip\"\n [class]=\"buttonClass || ''\"\n [class.button-base]=\"true\"\n [class.disabled]=\"disabled || loading\"\n #popoverTrigger=\"popoverTrigger\"\n [popoverTriggerFor]=\"btnPopover\"\n [popoverTriggerOn]=\"'none'\"\n [popoverBackdropCloseOnClick]=\"true\"\n (opened)=\"onOpenPopover.emit()\"\n (closed)=\"onClosePopover.emit()\">\n <button [attr.id]=\"idBtnDefault\"\n [attr.name]=\"idBtnDefault\"\n [attr.type]=\"type\"\n [attr.aria-label]=\"ariaLabel ? ariaLabel : label\"\n [attr.title]=\"title ? title : label\"\n [disabled]=\"disabled || loading\"\n [ngClass]=\"getInternalButtonClass(true)\"\n role=\"button\"\n (click)=\"handleClick($event)\"\n (focus)=\"handleFocus($event)\"\n (blur)=\"handleBlur($event)\">\n {{ label ? label : '' }}\n </button>\n <button [attr.id]=\"idBtnMenu\"\n [attr.name]=\"idBtnMenu\"\n [attr.type]=\"type\"\n [attr.aria-label]=\"ariaLabel ? ariaLabel : label\"\n [attr.title]=\"title ? title : label\"\n [disabled]=\"disabled || loading\"\n [ngClass]=\"getInternalButtonClass(false)\"\n role=\"button\"\n (click)=\"handleClickBtnMenu($event)\">\n <mat-icon [@indicatorRotate]=\"popoverTrigger?.popoverOpen ? 'opened': 'closed'\"> expand_more </mat-icon>\n </button>\n</div>\n\n<gipi-popover #btnPopover=\"gipiPopover\"\n [popoverOverlapTrigger]=\"false\"\n [popoverCloseOnClick]=\"false\"\n [popoverArrowWidth]=\"0\"\n [popoverOffsetY]=\"3\">\n <div class=\"btn-popover-content\">\n <button class=\"btn-split-option\"\n *ngFor=\"let option of splitOptions\"\n [disabled]=\"option?.disabled\"\n (click)=\"handleClickBtnSplitOption(option)\">\n {{ option.label }}\n </button>\n </div>\n</gipi-popover>",
222
+ template: "<div [matTooltip]=\"tooltip\"\n matTooltipClass=\"mattooltip-line-break\"\n [class]=\"buttonClass || ''\"\n [class.button-base]=\"true\"\n [class.disabled]=\"disabled || loading\"\n #popoverTrigger=\"popoverTrigger\"\n [popoverTriggerFor]=\"btnPopover\"\n [popoverTriggerOn]=\"'none'\"\n [popoverBackdropCloseOnClick]=\"true\"\n (opened)=\"onOpenPopover.emit()\"\n (closed)=\"onClosePopover.emit()\">\n <button [attr.id]=\"idBtnDefault\"\n [attr.name]=\"idBtnDefault\"\n [attr.type]=\"type\"\n [attr.aria-label]=\"ariaLabel ? ariaLabel : label\"\n [attr.title]=\"title ? title : label\"\n [disabled]=\"disabled || loading\"\n [ngClass]=\"getInternalButtonClass(true)\"\n role=\"button\"\n (click)=\"handleClick($event)\"\n (focus)=\"handleFocus($event)\"\n (blur)=\"handleBlur($event)\">\n {{ label ? label : '' }}\n </button>\n <button [attr.id]=\"idBtnMenu\"\n [attr.name]=\"idBtnMenu\"\n [attr.type]=\"type\"\n [attr.aria-label]=\"ariaLabel ? ariaLabel : label\"\n [attr.title]=\"title ? title : label\"\n [disabled]=\"disabled || loading\"\n [ngClass]=\"getInternalButtonClass(false)\"\n role=\"button\"\n (click)=\"handleClickBtnMenu($event)\">\n <mat-icon [@indicatorRotate]=\"popoverTrigger?.popoverOpen ? 'opened': 'closed'\"> expand_more </mat-icon>\n </button>\n</div>\n\n<gipi-popover #btnPopover=\"gipiPopover\"\n [popoverOverlapTrigger]=\"false\"\n [popoverCloseOnClick]=\"false\"\n [popoverArrowWidth]=\"0\"\n [popoverOffsetY]=\"3\">\n <div class=\"btn-popover-content\">\n <button class=\"btn-split-option\"\n *ngFor=\"let option of splitOptions\"\n [disabled]=\"option?.disabled\"\n (click)=\"handleClickBtnSplitOption(option)\">\n {{ option.label }}\n </button>\n </div>\n</gipi-popover>\n",
223
223
  providers: [
224
224
  {
225
225
  provide: NG_VALUE_ACCESSOR,
@@ -246,4 +246,4 @@ var GIPISplitButtonComponent = /** @class */ (function () {
246
246
  return GIPISplitButtonComponent;
247
247
  }());
248
248
  export { GIPISplitButtonComponent };
249
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic3BsaXQtYnV0dG9uLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiJuZzovL0BnaXBpc2lzdGVtYXMvbmctY29yZS8iLCJzb3VyY2VzIjpbInNoYXJlZC9naXBpLWNvbXBvbmVudHMvc3BsaXQtYnV0dG9uL3NwbGl0LWJ1dHRvbi5jb21wb25lbnQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IjtBQUFBLE9BQU8sRUFBRSxPQUFPLEVBQUUsS0FBSyxFQUFFLEtBQUssRUFBRSxVQUFVLEVBQUUsT0FBTyxFQUFFLE1BQU0scUJBQXFCLENBQUM7QUFDakYsT0FBTyxFQUFFLFNBQVMsRUFBRSxVQUFVLEVBQUUsWUFBWSxFQUFFLFVBQVUsRUFBRSxZQUFZLEVBQUUsS0FBSyxFQUFFLE1BQU0sRUFBRSxNQUFNLEVBQUUsU0FBUyxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQ2hJLE9BQU8sRUFBRSxpQkFBaUIsRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBQ25ELE9BQU8sRUFBRSxrQkFBa0IsRUFBRSxNQUFNLG1DQUFtQyxDQUFDO0FBQ3ZFLE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSxtQ0FBbUMsQ0FBQztBQVEvRCxJQUFJLFlBQVksR0FBRyxDQUFDLENBQUM7QUE0QnJCO0lBMkNJLGtDQUFtQixVQUFzQjtRQUF0QixlQUFVLEdBQVYsVUFBVSxDQUFZO1FBekNqQyxjQUFTLEdBQVcsWUFBWSxFQUFFLENBQUM7UUFDbkMsVUFBSyxHQUFXLHVCQUFxQixJQUFJLENBQUMsU0FBVyxDQUFDO1FBRXZELGlCQUFZLEdBQUcsK0JBQTZCLElBQUksQ0FBQyxTQUFXLENBQUM7UUFDN0QsY0FBUyxHQUFHLDRCQUEwQixJQUFJLENBQUMsU0FBVyxDQUFDO1FBRXJELHlCQUFvQixHQUFZLElBQUksQ0FBQyxrQkFBa0IsQ0FBQyxjQUFjLENBQUMsQ0FBQztRQUN4RSwyQkFBc0IsR0FBWSxJQUFJLENBQUMsa0JBQWtCLENBQUMsZ0JBQWdCLENBQUMsQ0FBQztRQUM1RSwwQkFBcUIsR0FB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LE1BQU0sQ0FBQyxNQUFNLENBQUM7a0NBQVMsWUFBWTs0REFBc0M7SUF3RzFFO1FBREMsWUFBWSxDQUFDLGVBQWUsRUFBRSxDQUFDLFFBQVEsQ0FBQyxDQUFDOzt5Q0FDMUIsT0FBTzs7NERBS3RCO0lBdEpRLHdCQUF3QjtRQTFCcEMsU0FBUyxDQUFDO1lBQ1AsUUFBUSxFQUFFLHNKQUNrRTtZQUM1RSxRQUFRLEVBQUUsaUJBQWlCO1lBQzNCLDRnRUFBNEM7WUFFNUMsU0FBUyxFQUFFO2dCQUNQO29CQUNJLE9BQU8sRUFBRSxpQkFBaUI7b0JBQzFCLFdBQVcsRUFBRSxVQUFVLENBQUMsY0FBTSxPQUFBLDBCQUF3QixFQUF4QixDQUF3QixDQUFDO29CQUN2RCxLQUFLLEVBQUUsSUFBSTtpQkFDZDthQUNKO1lBQ0QsSUFBSSxFQUFFO2dCQUNGLE9BQU8sRUFBRSxtQkFBbUI7Z0JBQzVCLFdBQVcsRUFBRSxJQUFJO2dCQUNqQixhQUFhLEVBQUUsTUFBTTthQUN4QjtZQUNELFVBQVUsRUFBRTtnQkFDUixPQUFPLENBQUMsaUJBQWlCLEVBQUU7b0JBQ3ZCLEtBQUssQ0FBQyxRQUFRLEVBQUUsS0FBSyxDQUFDLEVBQUUsU0FBUyxFQUFFLGNBQWMsRUFBRSxDQUFDLENBQUM7b0JBQ3JELEtBQUssQ0FBQyxRQUFRLEVBQUUsS0FBSyxDQUFDLEVBQUUsU0FBUyxFQUFFLGlCQUFpQixFQUFFLENBQUMsQ0FBQztvQkFDeEQsVUFBVSxDQUFDLG1CQUFtQixFQUFFLE9BQU8sQ0FBQyxtQ0FBbUMsQ0FBQyxDQUFDO2lCQUNoRixDQUFDO2FBQ0w7O1NBQ0osQ0FBQzt5Q0E0Q2lDLFVBQVU7T0EzQ2hDLHdCQUF3QixDQXdKcEM7SUFBRCwrQkFBQztDQUFBLEFBeEpELElBd0pDO1NBeEpZLHdCQUF3QiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IGFuaW1hdGUsIHN0YXRlLCBzdHlsZSwgdHJhbnNpdGlvbiwgdHJpZ2dlciB9IGZyb20gJ0Bhbmd1bGFyL2FuaW1hdGlvbnMnO1xuaW1wb3J0IHsgQ29tcG9uZW50LCBFbGVtZW50UmVmLCBFdmVudEVtaXR0ZXIsIGZvcndhcmRSZWYsIEhvc3RMaXN0ZW5lciwgSW5wdXQsIE9uSW5pdCwgT3V0cHV0LCBWaWV3Q2hpbGQgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IE5HX1ZBTFVFX0FDQ0VTU09SIH0gZnJvbSAnQGFuZ3VsYXIvZm9ybXMnO1xuaW1wb3J0IHsgR0lQSVBvcG92ZXJUcmlnZ2VyIH0gZnJvbSAnLi4vcG9wb3Zlci9zaGFyZWQvcG9wb3Zlci10cmlnZ2VyJztcbmltcG9ydCB7IE9iamVjdFV0aWwgfSBmcm9tICcuLy4uLy4uLy4uL2NvcmUvdXRpbHMvb2JqZWN0LnV0aWwnO1xuXG5leHBvcnQgaW50ZXJmYWNlIFNwbGl0T3B0aW9ucyB7XG4gICAgbGFiZWw6IHN0cmluZztcbiAgICBkaXNhYmxlZDogYm9vbGVhbjtcbiAgICBjbGlja0ZuOiBGdW5jdGlvbjtcbn1cblxubGV0IG5leHRVbmlxdWVJZCA9IDA7XG5cbkBDb21wb25lbnQoe1xuICAgIHNlbGVjdG9yOiBgZ2lwaS1zcGxpdC1idXR0b25bZ2lwaS1wcmltYXJ5XSwgZ2lwaS1zcGxpdC1idXR0b25bZ2lwaS1zZWNvbmRhcnldLFxuICAgICAgICAgICAgICAgZ2lwaS1zcGxpdC1idXR0b25bZ2lwaS10ZXJ0aWFyeV0sIGdpcGktc3BsaXQtYnV0dG9uW2dpcGktYWN0aW9uXWAsXG4gICAgZXhwb3J0QXM6ICdnaXBpU3BsaXRCdXR0b24nLFxuICAgIHRlbXBsYXRlVXJsOiAnLi9zcGxpdC1idXR0b24uY29tcG9uZW50Lmh0bWwnLFxuICAgIHN0eWxlVXJsczogWycuL3NwbGl0LWJ1dHRvbi5jb21wb25lbnQuc2NzcyddLFxuICAgIHByb3ZpZGVyczogW1xuICAgICAgICB7XG4gICAgICAgICAgICBwcm92aWRlOiBOR19WQUxVRV9BQ0NFU1NPUixcbiAgICAgICAgICAgIHVzZUV4aXN0aW5nOiBmb3J3YXJkUmVmKCgpID0+IEdJUElTcGxpdEJ1dHRvbkNvbXBvbmVudCksXG4gICAgICAgICAgICBtdWx0aTogdHJ1ZVxuICAgICAgICB9XG4gICAgXSxcbiAgICBob3N0OiB7XG4gICAgICAgICdjbGFzcyc6ICdnaXBpLXNwbGl0LWJ1dHRvbicsXG4gICAgICAgICdbYXR0ci5pZF0nOiAnaWQnLFxuICAgICAgICAnW2F0dHIubmFtZV0nOiAnbmFtZScsXG4gICAgfSxcbiAgICBhbmltYXRpb25zOiBbXG4gICAgICAgIHRyaWdnZXIoJ2luZGljYXRvclJvdGF0ZScsIFtcbiAgICAgICAgICAgIHN0YXRlKCdjbG9zZWQnLCBzdHlsZSh7IHRyYW5zZm9ybTogJ3JvdGF0ZSgwZGVnKScgfSkpLFxuICAgICAgICAgICAgc3RhdGUoJ29wZW5lZCcsIHN0eWxlKHsgdHJhbnNmb3JtOiAncm90YXRlKC0xODBkZWcpJyB9KSksXG4gICAgICAgICAgICB0cmFuc2l0aW9uKCdvcGVuZWQgPD0+IGNsb3NlZCcsIGFuaW1hdGUoJzIyNW1zIGN1YmljLWJlemllcigwLjQsMC4wLDAuMiwxKScpKSxcbiAgICAgICAgXSlcbiAgICBdXG59KVxuZXhwb3J0IGNsYXNzIEdJUElTcGxpdEJ1dHRvbkNvbXBvbmVudCBpbXBsZW1lbnRzIE9uSW5pdCB7XG5cbiAgICBwcml2YXRlIF91bmlxdWVJZDogbnVtYmVyID0gbmV4dFVuaXF1ZUlkKys7XG4gICAgcHJpdmF0ZSBfbmFtZTogc3RyaW5nID0gYGdpcGktc3BsaXQtYnV0dG9uLSR7dGhpcy5fdW5pcXVlSWR9YDtcblxuICAgIHB1YmxpYyBpZEJ0bkRlZmF1bHQgPSBgZ2lwaS1zcGxpdC1idXR0b24tZGVmYXVsdC0ke3RoaXMuX3VuaXF1ZUlkfWA7XG4gICAgcHVibGljIGlkQnRuTWVudSA9IGBnaXBpLXNwbGl0LWJ1dHRvbi1tZW51LSR7dGhpcy5fdW5pcXVlSWR9YDtcblxuICAgIHJlYWRvbmx5IGlzU3BsaXRCdXR0b25QcmltYXJ5OiBib29sZWFuID0gdGhpcy5faGFzSG9zdEF0dHJpYnV0ZXMoJ2dpcGktcHJpbWFyeScpO1xuICAgIHJlYWRvbmx5IGlzU3BsaXRCdXR0b25TZWNvbmRhcnk6IGJvb2xlYW4gPSB0aGlzLl9oYXNIb3N0QXR0cmlidXRlcygnZ2lwaS1zZWNvbmRhcnknKTtcbiAgICByZWFkb25seSBpc1NwbGl0QnV0dG9uVGVydGlhcnk6IGJvb2xlYW4gPSB0aGlzLl9oYXNIb3N0QXR0cmlidXRlcygnZ2lwaS10ZXJ0aWFyeScpO1xuICAgIHJlYWRvbmx5IGlzU3BsaXRCdXR0b25BY3Rpb246IGJvb2xlYW4gPSB0aGlzLl9oYXNIb3N0QXR0cmlidXRlcygnZ2lwaS1hY3Rpb24nKTtcblxuICAgIEBWaWV3Q2hpbGQoR0lQSVBvcG92ZXJUcmlnZ2VyLCB7IHN0YXRpYzogZmFsc2UgfSkgcG9wb3ZlclRyaWdnZXI6IEdJUElQb3BvdmVyVHJpZ2dlcjtcblxuICAgIEBJbnB1dCgpIGlkOiBzdHJpbmcgPSB0aGlzLl9uYW1lO1xuXG4gICAgQElucHV0KCkgbmFtZTogc3RyaW5nID0gdGhpcy5fbmFtZTtcblxuICAgIEBJbnB1dCgpIHR5cGU6ICdidXR0b24nIHwgJ3N1Ym1pdCcgfCAncmVzZXQnID0gJ2J1dHRvbic7XG5cbiAgICBASW5wdXQoKSBhcmlhTGFiZWw6IHN0cmluZyA9ICcnO1xuXG4gICAgQElucHV0KCkgdGl0bGU6IHN0cmluZyA9ICcnO1xuXG4gICAgQElucHV0KCkgbGFiZWw6IHN0cmluZyA9ICcnO1xuXG4gICAgQElucHV0KCkgYnV0dG9uQ2xhc3M6IHN0cmluZztcblxuICAgIEBJbnB1dCgpIGRpc2FibGVkOiBib29sZWFuID0gZmFsc2U7XG5cbiAgICBASW5wdXQoKSBsb2FkaW5nOiBib29sZWFuID0gZmFsc2U7XG5cbiAgICBASW5wdXQoKSB0b29sdGlwOiBzdHJpbmcgPSAnJztcblxuICAgIEBJbnB1dCgnb3B0aW9ucycpIHNwbGl0T3B0aW9uczogU3BsaXRPcHRpb25zW10gPSBbXTtcblxuICAgIEBPdXRwdXQoKSBvbk9wZW5Qb3BvdmVyOiBFdmVudEVtaXR0ZXI8dm9pZD4gPSBuZXcgRXZlbnRFbWl0dGVyKCk7XG4gICAgQE91dHB1dCgpIG9uQ2xvc2VQb3BvdmVyOiBFdmVudEVtaXR0ZXI8dm9pZD4gPSBuZXcgRXZlbnRFbWl0dGVyKCk7XG4gICAgQE91dHB1dCgnY2xpY2snKSBvbkNsaWNrOiBFdmVudEVtaXR0ZXI8TW91c2VFdmVudD4gPSBuZXcgRXZlbnRFbWl0dGVyKHRydWUpO1xuICAgIEBPdXRwdXQoJ2ZvY3VzJykgb25Gb2N1czogRXZlbnRFbWl0dGVyPE1vdXNlRXZlbnQ+ID0gbmV3IEV2ZW50RW1pdHRlcih0cnVlKTtcbiAgICBAT3V0cHV0KCdibHVyJykgb25CbHVyOiBFdmVudEVtaXR0ZXI8TW91c2VFdmVudD4gPSBuZXcgRXZlbnRFbWl0dGVyKHRydWUpO1xuXG4gICAgY29uc3RydWN0b3IocHVibGljIGVsZW1lbnRSZWY6IEVsZW1lbnRSZWYpIHsgfVxuXG4gICAgbmdPbkluaXQoKTogdm9pZCB7IH1cblxuICAgIG5nT25EZXN0cm95KCk6IHZvaWQge1xuICAgICAgICBpZiAodGhpcy5wb3BvdmVyVHJpZ2dlcikge1xuICAgICAgICAgICAgdGhpcy5wb3BvdmVyVHJpZ2dlci5kZXN0cm95UG9wb3ZlcigpO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgZ2V0SG9zdEVsZW1lbnQoKTogYW55IHtcbiAgICAgICAgcmV0dXJuIHRoaXMuZWxlbWVudFJlZi5uYXRpdmVFbGVtZW50O1xuICAgIH1cblxuICAgIHByaXZhdGUgX2hhc0hvc3RBdHRyaWJ1dGVzKC4uLmF0dHJpYnV0ZXM6IHN0cmluZ1tdKTogYm9vbGVhbiB7XG4gICAgICAgIHJldHVybiBhdHRyaWJ1dGVzLnNvbWUoYXR0cmlidXRlID0+IHRoaXMuZ2V0SG9zdEVsZW1lbnQoKS5oYXNBdHRyaWJ1dGUoYXR0cmlidXRlKSk7XG4gICAgfVxuXG4gICAgcHVibGljIGJ0bklkQW5kTmFtZSgpOiB7IGJ0bkRlZmF1bHQ6IHN0cmluZywgYnRuTWVudTogc3RyaW5nIH0ge1xuICAgICAgICBjb25zdCB1bmlxdWVJZDogbnVtYmVyID0gbmV4dFVuaXF1ZUlkKys7XG4gICAgICAgIHJldHVybiB7XG4gICAgICAgICAgICBidG5EZWZhdWx0OiBgZ2lwaS1zcGxpdC1idXR0b24tZGVmYXVsdC0ke3VuaXF1ZUlkfWAsXG4gICAgICAgICAgICBidG5NZW51OiBgZ2lwaS1zcGxpdC1idXR0b24tbWVudS0ke3VuaXF1ZUlkfWAsXG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBwdWJsaWMgZ2V0SW50ZXJuYWxCdXR0b25DbGFzcyhpc0J0bkRlZmF1bHQ6IGJvb2xlYW4pIHtcbiAgICAgICAgcmV0dXJuIHtcbiAgICAgICAgICAgICdidXR0b24tZGVmYXVsdCc6IGlzQnRuRGVmYXVsdCxcbiAgICAgICAgICAgICdidXR0b24tbWVudSc6ICFpc0J0bkRlZmF1bHQsXG4gICAgICAgICAgICAnYnV0dG9uLXByaW1hcnknOiB0aGlzLmlzU3BsaXRCdXR0b25QcmltYXJ5LFxuICAgICAgICAgICAgJ2J1dHRvbi1zZWNvbmRhcnknOiB0aGlzLmlzU3BsaXRCdXR0b25TZWNvbmRhcnksXG4gICAgICAgICAgICAnYnV0dG9uLXRlcnRpYXJ5JzogdGhpcy5pc1NwbGl0QnV0dG9uVGVydGlhcnksXG4gICAgICAgICAgICAnYnV0dG9uLWFjdGlvbic6IHRoaXMuaXNTcGxpdEJ1dHRvbkFjdGlvbixcbiAgICAgICAgfTtcbiAgICB9XG5cbiAgICBwdWJsaWMgc2hvd1BvcG92ZXIoKTogdm9pZCB7XG4gICAgICAgIGlmICh0aGlzLmRpc2FibGVkIHx8IHRoaXMubG9hZGluZykge1xuICAgICAgICAgICAgcmV0dXJuO1xuICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgdGhpcy5wb3BvdmVyVHJpZ2dlci5vcGVuUG9wb3ZlcigpO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgcHVibGljIGNsb3NlUG9wb3ZlcigpOiB2b2lkIHtcbiAgICAgICAgaWYgKHRoaXMuZGlzYWJsZWQgfHwgdGhpcy5sb2FkaW5nKSB7XG4gICAgICAgICAgICByZXR1cm47XG4gICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICB0aGlzLnBvcG92ZXJUcmlnZ2VyLmNsb3NlUG9wb3ZlcigpO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgcHVibGljIGhhbmRsZUNsaWNrKGV2ZW50OiBNb3VzZUV2ZW50KTogdm9pZCB7XG4gICAgICAgIGlmICh0aGlzLmRpc2FibGVkIHx8IHRoaXMubG9hZGluZykge1xuICAgICAgICAgICAgcmV0dXJuO1xuICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgdGhpcy5vbkNsaWNrLmVtaXQoZXZlbnQpO1xuICAgICAgICAgICAgdGhpcy5jbG9zZVBvcG92ZXIoKTtcbiAgICAgICAgICAgIGV2ZW50LnN0b3BQcm9wYWdhdGlvbigpO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgcHVibGljIGhhbmRsZUZvY3VzKGV2ZW50OiBNb3VzZUV2ZW50KTogdm9pZCB7XG4gICAgICAgIGlmICh0aGlzLmRpc2FibGVkIHx8IHRoaXMubG9hZGluZykge1xuICAgICAgICAgICAgcmV0dXJuO1xuICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgdGhpcy5vbkZvY3VzLmVtaXQoZXZlbnQpO1xuICAgICAgICAgICAgZXZlbnQuc3RvcFByb3BhZ2F0aW9uKCk7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBwdWJsaWMgaGFuZGxlQmx1cihldmVudDogTW91c2VFdmVudCk6IHZvaWQge1xuICAgICAgICBpZiAodGhpcy5kaXNhYmxlZCB8fCB0aGlzLmxvYWRpbmcpIHtcbiAgICAgICAgICAgIHJldHVybjtcbiAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgIHRoaXMub25CbHVyLmVtaXQoZXZlbnQpO1xuICAgICAgICAgICAgZXZlbnQuc3RvcFByb3BhZ2F0aW9uKCk7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBwdWJsaWMgaGFuZGxlQ2xpY2tCdG5NZW51KGV2ZW50OiBNb3VzZUV2ZW50KTogdm9pZCB7XG4gICAgICAgIGlmICh0aGlzLmRpc2FibGVkIHx8IHRoaXMubG9hZGluZykge1xuICAgICAgICAgICAgcmV0dXJuO1xuICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgaWYgKCFPYmplY3RVdGlsLmlzTnVsbCh0aGlzLnBvcG92ZXJUcmlnZ2VyKSkge1xuICAgICAgICAgICAgICAgIHRoaXMucG9wb3ZlclRyaWdnZXIudG9nZ2xlUG9wb3ZlcigpO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgZXZlbnQuc3RvcFByb3BhZ2F0aW9uKCk7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBwdWJsaWMgaGFuZGxlQ2xpY2tCdG5TcGxpdE9wdGlvbihvcHRpb246IFNwbGl0T3B0aW9ucyk6IHZvaWQge1xuICAgICAgICBpZiAodGhpcy5kaXNhYmxlZCB8fCB0aGlzLmxvYWRpbmcgfHwgIW9wdGlvbiB8fCBvcHRpb24uZGlzYWJsZWQgfHwgIW9wdGlvbi5jbGlja0ZuKSB7XG4gICAgICAgICAgICByZXR1cm47XG4gICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICBvcHRpb24uY2xpY2tGbigpO1xuICAgICAgICAgICAgdGhpcy5jbG9zZVBvcG92ZXIoKTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIEBIb3N0TGlzdGVuZXIoJ3dpbmRvdzpyZXNpemUnLCBbJyRldmVudCddKVxuICAgIG9uUmVzaXplKGV2ZW50OiBVSUV2ZW50KTogdm9pZCB7XG4gICAgICAgIGlmICh0aGlzLnBvcG92ZXJUcmlnZ2VyKSB7XG4gICAgICAgICAgICB0aGlzLnBvcG92ZXJUcmlnZ2VyLmNsb3NlUG9wb3ZlcigpO1xuICAgICAgICAgICAgZXZlbnQuc3RvcFByb3BhZ2F0aW9uKCk7XG4gICAgICAgIH1cbiAgICB9XG5cbn1cbiJdfQ==
249
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic3BsaXQtYnV0dG9uLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiJuZzovL0BnaXBpc2lzdGVtYXMvbmctY29yZS8iLCJzb3VyY2VzIjpbInNoYXJlZC9naXBpLWNvbXBvbmVudHMvc3BsaXQtYnV0dG9uL3NwbGl0LWJ1dHRvbi5jb21wb25lbnQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IjtBQUFBLE9BQU8sRUFBRSxPQUFPLEVBQUUsS0FBSyxFQUFFLEtBQUssRUFBRSxVQUFVLEVBQUUsT0FBTyxFQUFFLE1BQU0scUJBQXFCLENBQUM7QUFDakYsT0FBTyxFQUFFLFNBQVMsRUFBRSxVQUFVLEVBQUUsWUFBWSxFQUFFLFVBQVUsRUFBRSxZQUFZLEVBQUUsS0FBSyxFQUFFLE1BQU0sRUFBRSxNQUFNLEVBQUUsU0FBUyxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQ2hJLE9BQU8sRUFBRSxpQkFBaUIsRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBQ25ELE9BQU8sRUFBRSxrQkFBa0IsRUFBRSxNQUFNLG1DQUFtQyxDQUFDO0FBQ3ZFLE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSxtQ0FBbUMsQ0FBQztBQVEvRCxJQUFJLFlBQVksR0FBRyxDQUFDLENBQUM7QUE0QnJCO0lBMkNJLGtDQUFtQixVQUFzQjtRQUF0QixlQUFVLEdBQVYsVUFBVSxDQUFZO1FBekNqQyxjQUFTLEdBQVcsWUFBWSxFQUFFLENBQUM7UUFDbkMsVUFBSyxHQUFXLHVCQUFxQixJQUFJLENBQUMsU0FBVyxDQUFDO1FBRXZELGlCQUFZLEdBQUcsK0JBQTZCLElBQUksQ0FBQyxTQUFXLENBQUM7UUFDN0QsY0FBUyxHQUFHLDRCQUEwQixJQUFJLENBQUMsU0FBVyxDQUFDO1FBRXJELHlCQUFvQixHQUFZLElBQUksQ0FBQyxrQkFBa0IsQ0FBQyxjQUFjLENBQUMsQ0FBQztRQUN4RSwyQkFBc0IsR0FBWSxJQUFJLENBQUMsa0JBQWtCLENBQUMsZ0JBQWdCLENBQUMsQ0FBQztRQUM1RSwwQkFBcUIsR0FB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LE1BQU0sQ0FBQyxNQUFNLENBQUM7a0NBQVMsWUFBWTs0REFBc0M7SUF3RzFFO1FBREMsWUFBWSxDQUFDLGVBQWUsRUFBRSxDQUFDLFFBQVEsQ0FBQyxDQUFDOzt5Q0FDMUIsT0FBTzs7NERBS3RCO0lBdEpRLHdCQUF3QjtRQTFCcEMsU0FBUyxDQUFDO1lBQ1AsUUFBUSxFQUFFLHNKQUNrRTtZQUM1RSxRQUFRLEVBQUUsaUJBQWlCO1lBQzNCLDhqRUFBNEM7WUFFNUMsU0FBUyxFQUFFO2dCQUNQO29CQUNJLE9BQU8sRUFBRSxpQkFBaUI7b0JBQzFCLFdBQVcsRUFBRSxVQUFVLENBQUMsY0FBTSxPQUFBLDBCQUF3QixFQUF4QixDQUF3QixDQUFDO29CQUN2RCxLQUFLLEVBQUUsSUFBSTtpQkFDZDthQUNKO1lBQ0QsSUFBSSxFQUFFO2dCQUNGLE9BQU8sRUFBRSxtQkFBbUI7Z0JBQzVCLFdBQVcsRUFBRSxJQUFJO2dCQUNqQixhQUFhLEVBQUUsTUFBTTthQUN4QjtZQUNELFVBQVUsRUFBRTtnQkFDUixPQUFPLENBQUMsaUJBQWlCLEVBQUU7b0JBQ3ZCLEtBQUssQ0FBQyxRQUFRLEVBQUUsS0FBSyxDQUFDLEVBQUUsU0FBUyxFQUFFLGNBQWMsRUFBRSxDQUFDLENBQUM7b0JBQ3JELEtBQUssQ0FBQyxRQUFRLEVBQUUsS0FBSyxDQUFDLEVBQUUsU0FBUyxFQUFFLGlCQUFpQixFQUFFLENBQUMsQ0FBQztvQkFDeEQsVUFBVSxDQUFDLG1CQUFtQixFQUFFLE9BQU8sQ0FBQyxtQ0FBbUMsQ0FBQyxDQUFDO2lCQUNoRixDQUFDO2FBQ0w7O1NBQ0osQ0FBQzt5Q0E0Q2lDLFVBQVU7T0EzQ2hDLHdCQUF3QixDQXdKcEM7SUFBRCwrQkFBQztDQUFBLEFBeEpELElBd0pDO1NBeEpZLHdCQUF3QiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IGFuaW1hdGUsIHN0YXRlLCBzdHlsZSwgdHJhbnNpdGlvbiwgdHJpZ2dlciB9IGZyb20gJ0Bhbmd1bGFyL2FuaW1hdGlvbnMnO1xuaW1wb3J0IHsgQ29tcG9uZW50LCBFbGVtZW50UmVmLCBFdmVudEVtaXR0ZXIsIGZvcndhcmRSZWYsIEhvc3RMaXN0ZW5lciwgSW5wdXQsIE9uSW5pdCwgT3V0cHV0LCBWaWV3Q2hpbGQgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IE5HX1ZBTFVFX0FDQ0VTU09SIH0gZnJvbSAnQGFuZ3VsYXIvZm9ybXMnO1xuaW1wb3J0IHsgR0lQSVBvcG92ZXJUcmlnZ2VyIH0gZnJvbSAnLi4vcG9wb3Zlci9zaGFyZWQvcG9wb3Zlci10cmlnZ2VyJztcbmltcG9ydCB7IE9iamVjdFV0aWwgfSBmcm9tICcuLy4uLy4uLy4uL2NvcmUvdXRpbHMvb2JqZWN0LnV0aWwnO1xuXG5leHBvcnQgaW50ZXJmYWNlIFNwbGl0T3B0aW9ucyB7XG4gICAgbGFiZWw6IHN0cmluZztcbiAgICBkaXNhYmxlZDogYm9vbGVhbjtcbiAgICBjbGlja0ZuOiBGdW5jdGlvbjtcbn1cblxubGV0IG5leHRVbmlxdWVJZCA9IDA7XG5cbkBDb21wb25lbnQoe1xuICAgIHNlbGVjdG9yOiBgZ2lwaS1zcGxpdC1idXR0b25bZ2lwaS1wcmltYXJ5XSwgZ2lwaS1zcGxpdC1idXR0b25bZ2lwaS1zZWNvbmRhcnldLFxuICAgICAgICAgICAgICAgZ2lwaS1zcGxpdC1idXR0b25bZ2lwaS10ZXJ0aWFyeV0sIGdpcGktc3BsaXQtYnV0dG9uW2dpcGktYWN0aW9uXWAsXG4gICAgZXhwb3J0QXM6ICdnaXBpU3BsaXRCdXR0b24nLFxuICAgIHRlbXBsYXRlVXJsOiAnLi9zcGxpdC1idXR0b24uY29tcG9uZW50Lmh0bWwnLFxuICAgIHN0eWxlVXJsczogWycuL3NwbGl0LWJ1dHRvbi5jb21wb25lbnQuc2NzcyddLFxuICAgIHByb3ZpZGVyczogW1xuICAgICAgICB7XG4gICAgICAgICAgICBwcm92aWRlOiBOR19WQUxVRV9BQ0NFU1NPUixcbiAgICAgICAgICAgIHVzZUV4aXN0aW5nOiBmb3J3YXJkUmVmKCgpID0+IEdJUElTcGxpdEJ1dHRvbkNvbXBvbmVudCksXG4gICAgICAgICAgICBtdWx0aTogdHJ1ZVxuICAgICAgICB9XG4gICAgXSxcbiAgICBob3N0OiB7XG4gICAgICAgICdjbGFzcyc6ICdnaXBpLXNwbGl0LWJ1dHRvbicsXG4gICAgICAgICdbYXR0ci5pZF0nOiAnaWQnLFxuICAgICAgICAnW2F0dHIubmFtZV0nOiAnbmFtZScsXG4gICAgfSxcbiAgICBhbmltYXRpb25zOiBbXG4gICAgICAgIHRyaWdnZXIoJ2luZGljYXRvclJvdGF0ZScsIFtcbiAgICAgICAgICAgIHN0YXRlKCdjbG9zZWQnLCBzdHlsZSh7IHRyYW5zZm9ybTogJ3JvdGF0ZSgwZGVnKScgfSkpLFxuICAgICAgICAgICAgc3RhdGUoJ29wZW5lZCcsIHN0eWxlKHsgdHJhbnNmb3JtOiAncm90YXRlKC0xODBkZWcpJyB9KSksXG4gICAgICAgICAgICB0cmFuc2l0aW9uKCdvcGVuZWQgPD0+IGNsb3NlZCcsIGFuaW1hdGUoJzIyNW1zIGN1YmljLWJlemllcigwLjQsMC4wLDAuMiwxKScpKSxcbiAgICAgICAgXSlcbiAgICBdXG59KVxuZXhwb3J0IGNsYXNzIEdJUElTcGxpdEJ1dHRvbkNvbXBvbmVudCBpbXBsZW1lbnRzIE9uSW5pdCB7XG5cbiAgICBwcml2YXRlIF91bmlxdWVJZDogbnVtYmVyID0gbmV4dFVuaXF1ZUlkKys7XG4gICAgcHJpdmF0ZSBfbmFtZTogc3RyaW5nID0gYGdpcGktc3BsaXQtYnV0dG9uLSR7dGhpcy5fdW5pcXVlSWR9YDtcblxuICAgIHB1YmxpYyBpZEJ0bkRlZmF1bHQgPSBgZ2lwaS1zcGxpdC1idXR0b24tZGVmYXVsdC0ke3RoaXMuX3VuaXF1ZUlkfWA7XG4gICAgcHVibGljIGlkQnRuTWVudSA9IGBnaXBpLXNwbGl0LWJ1dHRvbi1tZW51LSR7dGhpcy5fdW5pcXVlSWR9YDtcblxuICAgIHJlYWRvbmx5IGlzU3BsaXRCdXR0b25QcmltYXJ5OiBib29sZWFuID0gdGhpcy5faGFzSG9zdEF0dHJpYnV0ZXMoJ2dpcGktcHJpbWFyeScpO1xuICAgIHJlYWRvbmx5IGlzU3BsaXRCdXR0b25TZWNvbmRhcnk6IGJvb2xlYW4gPSB0aGlzLl9oYXNIb3N0QXR0cmlidXRlcygnZ2lwaS1zZWNvbmRhcnknKTtcbiAgICByZWFkb25seSBpc1NwbGl0QnV0dG9uVGVydGlhcnk6IGJvb2xlYW4gPSB0aGlzLl9oYXNIb3N0QXR0cmlidXRlcygnZ2lwaS10ZXJ0aWFyeScpO1xuICAgIHJlYWRvbmx5IGlzU3BsaXRCdXR0b25BY3Rpb246IGJvb2xlYW4gPSB0aGlzLl9oYXNIb3N0QXR0cmlidXRlcygnZ2lwaS1hY3Rpb24nKTtcblxuICAgIEBWaWV3Q2hpbGQoR0lQSVBvcG92ZXJUcmlnZ2VyLCB7IHN0YXRpYzogZmFsc2UgfSkgcG9wb3ZlclRyaWdnZXI6IEdJUElQb3BvdmVyVHJpZ2dlcjtcblxuICAgIEBJbnB1dCgpIGlkOiBzdHJpbmcgPSB0aGlzLl9uYW1lO1xuXG4gICAgQElucHV0KCkgbmFtZTogc3RyaW5nID0gdGhpcy5fbmFtZTtcblxuICAgIEBJbnB1dCgpIHR5cGU6ICdidXR0b24nIHwgJ3N1Ym1pdCcgfCAncmVzZXQnID0gJ2J1dHRvbic7XG5cbiAgICBASW5wdXQoKSBhcmlhTGFiZWw6IHN0cmluZyA9ICcnO1xuXG4gICAgQElucHV0KCkgdGl0bGU6IHN0cmluZyA9ICcnO1xuXG4gICAgQElucHV0KCkgbGFiZWw6IHN0cmluZyA9ICcnO1xuXG4gICAgQElucHV0KCkgYnV0dG9uQ2xhc3M6IHN0cmluZztcblxuICAgIEBJbnB1dCgpIGRpc2FibGVkOiBib29sZWFuID0gZmFsc2U7XG5cbiAgICBASW5wdXQoKSBsb2FkaW5nOiBib29sZWFuID0gZmFsc2U7XG5cbiAgICBASW5wdXQoKSB0b29sdGlwOiBzdHJpbmcgPSAnJztcblxuICAgIEBJbnB1dCgnb3B0aW9ucycpIHNwbGl0T3B0aW9uczogU3BsaXRPcHRpb25zW10gPSBbXTtcblxuICAgIEBPdXRwdXQoKSBvbk9wZW5Qb3BvdmVyOiBFdmVudEVtaXR0ZXI8dm9pZD4gPSBuZXcgRXZlbnRFbWl0dGVyKCk7XG4gICAgQE91dHB1dCgpIG9uQ2xvc2VQb3BvdmVyOiBFdmVudEVtaXR0ZXI8dm9pZD4gPSBuZXcgRXZlbnRFbWl0dGVyKCk7XG4gICAgQE91dHB1dCgnY2xpY2snKSBvbkNsaWNrOiBFdmVudEVtaXR0ZXI8TW91c2VFdmVudD4gPSBuZXcgRXZlbnRFbWl0dGVyKHRydWUpO1xuICAgIEBPdXRwdXQoJ2ZvY3VzJykgb25Gb2N1czogRXZlbnRFbWl0dGVyPE1vdXNlRXZlbnQ+ID0gbmV3IEV2ZW50RW1pdHRlcih0cnVlKTtcbiAgICBAT3V0cHV0KCdibHVyJykgb25CbHVyOiBFdmVudEVtaXR0ZXI8TW91c2VFdmVudD4gPSBuZXcgRXZlbnRFbWl0dGVyKHRydWUpO1xuXG4gICAgY29uc3RydWN0b3IocHVibGljIGVsZW1lbnRSZWY6IEVsZW1lbnRSZWYpIHsgfVxuXG4gICAgbmdPbkluaXQoKTogdm9pZCB7IH1cblxuICAgIG5nT25EZXN0cm95KCk6IHZvaWQge1xuICAgICAgICBpZiAodGhpcy5wb3BvdmVyVHJpZ2dlcikge1xuICAgICAgICAgICAgdGhpcy5wb3BvdmVyVHJpZ2dlci5kZXN0cm95UG9wb3ZlcigpO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgZ2V0SG9zdEVsZW1lbnQoKTogYW55IHtcbiAgICAgICAgcmV0dXJuIHRoaXMuZWxlbWVudFJlZi5uYXRpdmVFbGVtZW50O1xuICAgIH1cblxuICAgIHByaXZhdGUgX2hhc0hvc3RBdHRyaWJ1dGVzKC4uLmF0dHJpYnV0ZXM6IHN0cmluZ1tdKTogYm9vbGVhbiB7XG4gICAgICAgIHJldHVybiBhdHRyaWJ1dGVzLnNvbWUoYXR0cmlidXRlID0+IHRoaXMuZ2V0SG9zdEVsZW1lbnQoKS5oYXNBdHRyaWJ1dGUoYXR0cmlidXRlKSk7XG4gICAgfVxuXG4gICAgcHVibGljIGJ0bklkQW5kTmFtZSgpOiB7IGJ0bkRlZmF1bHQ6IHN0cmluZywgYnRuTWVudTogc3RyaW5nIH0ge1xuICAgICAgICBjb25zdCB1bmlxdWVJZDogbnVtYmVyID0gbmV4dFVuaXF1ZUlkKys7XG4gICAgICAgIHJldHVybiB7XG4gICAgICAgICAgICBidG5EZWZhdWx0OiBgZ2lwaS1zcGxpdC1idXR0b24tZGVmYXVsdC0ke3VuaXF1ZUlkfWAsXG4gICAgICAgICAgICBidG5NZW51OiBgZ2lwaS1zcGxpdC1idXR0b24tbWVudS0ke3VuaXF1ZUlkfWAsXG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBwdWJsaWMgZ2V0SW50ZXJuYWxCdXR0b25DbGFzcyhpc0J0bkRlZmF1bHQ6IGJvb2xlYW4pIHtcbiAgICAgICAgcmV0dXJuIHtcbiAgICAgICAgICAgICdidXR0b24tZGVmYXVsdCc6IGlzQnRuRGVmYXVsdCxcbiAgICAgICAgICAgICdidXR0b24tbWVudSc6ICFpc0J0bkRlZmF1bHQsXG4gICAgICAgICAgICAnYnV0dG9uLXByaW1hcnknOiB0aGlzLmlzU3BsaXRCdXR0b25QcmltYXJ5LFxuICAgICAgICAgICAgJ2J1dHRvbi1zZWNvbmRhcnknOiB0aGlzLmlzU3BsaXRCdXR0b25TZWNvbmRhcnksXG4gICAgICAgICAgICAnYnV0dG9uLXRlcnRpYXJ5JzogdGhpcy5pc1NwbGl0QnV0dG9uVGVydGlhcnksXG4gICAgICAgICAgICAnYnV0dG9uLWFjdGlvbic6IHRoaXMuaXNTcGxpdEJ1dHRvbkFjdGlvbixcbiAgICAgICAgfTtcbiAgICB9XG5cbiAgICBwdWJsaWMgc2hvd1BvcG92ZXIoKTogdm9pZCB7XG4gICAgICAgIGlmICh0aGlzLmRpc2FibGVkIHx8IHRoaXMubG9hZGluZykge1xuICAgICAgICAgICAgcmV0dXJuO1xuICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgdGhpcy5wb3BvdmVyVHJpZ2dlci5vcGVuUG9wb3ZlcigpO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgcHVibGljIGNsb3NlUG9wb3ZlcigpOiB2b2lkIHtcbiAgICAgICAgaWYgKHRoaXMuZGlzYWJsZWQgfHwgdGhpcy5sb2FkaW5nKSB7XG4gICAgICAgICAgICByZXR1cm47XG4gICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICB0aGlzLnBvcG92ZXJUcmlnZ2VyLmNsb3NlUG9wb3ZlcigpO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgcHVibGljIGhhbmRsZUNsaWNrKGV2ZW50OiBNb3VzZUV2ZW50KTogdm9pZCB7XG4gICAgICAgIGlmICh0aGlzLmRpc2FibGVkIHx8IHRoaXMubG9hZGluZykge1xuICAgICAgICAgICAgcmV0dXJuO1xuICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgdGhpcy5vbkNsaWNrLmVtaXQoZXZlbnQpO1xuICAgICAgICAgICAgdGhpcy5jbG9zZVBvcG92ZXIoKTtcbiAgICAgICAgICAgIGV2ZW50LnN0b3BQcm9wYWdhdGlvbigpO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgcHVibGljIGhhbmRsZUZvY3VzKGV2ZW50OiBNb3VzZUV2ZW50KTogdm9pZCB7XG4gICAgICAgIGlmICh0aGlzLmRpc2FibGVkIHx8IHRoaXMubG9hZGluZykge1xuICAgICAgICAgICAgcmV0dXJuO1xuICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgdGhpcy5vbkZvY3VzLmVtaXQoZXZlbnQpO1xuICAgICAgICAgICAgZXZlbnQuc3RvcFByb3BhZ2F0aW9uKCk7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBwdWJsaWMgaGFuZGxlQmx1cihldmVudDogTW91c2VFdmVudCk6IHZvaWQge1xuICAgICAgICBpZiAodGhpcy5kaXNhYmxlZCB8fCB0aGlzLmxvYWRpbmcpIHtcbiAgICAgICAgICAgIHJldHVybjtcbiAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgIHRoaXMub25CbHVyLmVtaXQoZXZlbnQpO1xuICAgICAgICAgICAgZXZlbnQuc3RvcFByb3BhZ2F0aW9uKCk7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBwdWJsaWMgaGFuZGxlQ2xpY2tCdG5NZW51KGV2ZW50OiBNb3VzZUV2ZW50KTogdm9pZCB7XG4gICAgICAgIGlmICh0aGlzLmRpc2FibGVkIHx8IHRoaXMubG9hZGluZykge1xuICAgICAgICAgICAgcmV0dXJuO1xuICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgaWYgKCFPYmplY3RVdGlsLmlzTnVsbCh0aGlzLnBvcG92ZXJUcmlnZ2VyKSkge1xuICAgICAgICAgICAgICAgIHRoaXMucG9wb3ZlclRyaWdnZXIudG9nZ2xlUG9wb3ZlcigpO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgZXZlbnQuc3RvcFByb3BhZ2F0aW9uKCk7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBwdWJsaWMgaGFuZGxlQ2xpY2tCdG5TcGxpdE9wdGlvbihvcHRpb246IFNwbGl0T3B0aW9ucyk6IHZvaWQge1xuICAgICAgICBpZiAodGhpcy5kaXNhYmxlZCB8fCB0aGlzLmxvYWRpbmcgfHwgIW9wdGlvbiB8fCBvcHRpb24uZGlzYWJsZWQgfHwgIW9wdGlvbi5jbGlja0ZuKSB7XG4gICAgICAgICAgICByZXR1cm47XG4gICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICBvcHRpb24uY2xpY2tGbigpO1xuICAgICAgICAgICAgdGhpcy5jbG9zZVBvcG92ZXIoKTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIEBIb3N0TGlzdGVuZXIoJ3dpbmRvdzpyZXNpemUnLCBbJyRldmVudCddKVxuICAgIG9uUmVzaXplKGV2ZW50OiBVSUV2ZW50KTogdm9pZCB7XG4gICAgICAgIGlmICh0aGlzLnBvcG92ZXJUcmlnZ2VyKSB7XG4gICAgICAgICAgICB0aGlzLnBvcG92ZXJUcmlnZ2VyLmNsb3NlUG9wb3ZlcigpO1xuICAgICAgICAgICAgZXZlbnQuc3RvcFByb3BhZ2F0aW9uKCk7XG4gICAgICAgIH1cbiAgICB9XG5cbn1cbiJdfQ==