@po-ui/ng-components 5.14.0 → 5.18.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (69) hide show
  1. package/bundles/po-ui-ng-components.umd.js +1017 -561
  2. package/bundles/po-ui-ng-components.umd.js.map +1 -1
  3. package/esm2015/lib/components/po-avatar/po-avatar-base.component.js +16 -1
  4. package/esm2015/lib/components/po-avatar/po-avatar.component.js +2 -2
  5. package/esm2015/lib/components/po-dynamic/po-dynamic-form/po-dynamic-form-field.interface.js +1 -1
  6. package/esm2015/lib/components/po-dynamic/po-dynamic-form/po-dynamic-form-fields/po-dynamic-form-fields-base.component.js +2 -2
  7. package/esm2015/lib/components/po-dynamic/po-dynamic-form/po-dynamic-form-fields/po-dynamic-form-fields.component.js +2 -2
  8. package/esm2015/lib/components/po-field/po-datepicker/po-datepicker.component.js +2 -1
  9. package/esm2015/lib/components/po-field/po-datepicker-range/interfaces/po-datepicker-range-literals.interface.js +1 -1
  10. package/esm2015/lib/components/po-field/po-datepicker-range/po-datepicker-range-base.component.js +103 -6
  11. package/esm2015/lib/components/po-field/po-datepicker-range/po-datepicker-range.component.js +8 -3
  12. package/esm2015/lib/components/po-field/po-datepicker-range/po-datepicker-range.literals.js +13 -5
  13. package/esm2015/lib/components/po-field/po-email/po-email.component.js +7 -5
  14. package/esm2015/lib/components/po-field/po-field.model.js +75 -0
  15. package/esm2015/lib/components/po-field/po-login/po-login.component.js +7 -5
  16. package/esm2015/lib/components/po-field/po-lookup/interfaces/po-lookup-filter.interface.js +1 -1
  17. package/esm2015/lib/components/po-field/po-lookup/po-lookup-base.component.js +89 -26
  18. package/esm2015/lib/components/po-field/po-lookup/po-lookup-modal/po-lookup-modal-base.component.js +40 -10
  19. package/esm2015/lib/components/po-field/po-lookup/po-lookup-modal/po-lookup-modal.component.js +45 -7
  20. package/esm2015/lib/components/po-field/po-lookup/po-lookup.component.js +136 -13
  21. package/esm2015/lib/components/po-field/po-lookup/services/po-lookup-filter.service.js +19 -4
  22. package/esm2015/lib/components/po-field/po-lookup/services/po-lookup-modal.service.js +9 -2
  23. package/esm2015/lib/components/po-field/po-password/po-password.component.js +7 -5
  24. package/esm2015/lib/components/po-field/po-switch/po-switch.component.js +85 -9
  25. package/esm2015/lib/components/po-field/po-url/po-url.component.js +7 -5
  26. package/esm2015/lib/components/po-page/po-page-header/po-page-header.component.js +2 -2
  27. package/esm2015/lib/components/po-stepper/po-stepper-circle/po-stepper-circle.component.js +2 -2
  28. package/esm2015/lib/components/po-stepper/po-stepper-step/po-stepper-step.component.js +5 -4
  29. package/esm2015/lib/components/po-stepper/po-stepper.component.js +15 -14
  30. package/esm2015/lib/components/po-table/po-table-base.component.js +2 -2
  31. package/esm2015/lib/components/po-table/po-table-column-label/po-table-column-label.interface.js +1 -1
  32. package/esm2015/lib/components/po-table/po-table.component.js +41 -1
  33. package/esm2015/po-ui-ng-components.js +2 -2
  34. package/fesm2015/po-ui-ng-components.js +955 -512
  35. package/fesm2015/po-ui-ng-components.js.map +1 -1
  36. package/lib/components/po-avatar/po-avatar-base.component.d.ts +14 -0
  37. package/lib/components/po-dynamic/po-dynamic-form/po-dynamic-form-field.interface.d.ts +6 -0
  38. package/lib/components/po-field/po-datepicker-range/interfaces/po-datepicker-range-literals.interface.d.ts +4 -0
  39. package/lib/components/po-field/po-datepicker-range/po-datepicker-range-base.component.d.ts +26 -3
  40. package/lib/components/po-field/po-datepicker-range/po-datepicker-range.component.d.ts +3 -2
  41. package/lib/components/po-field/po-email/po-email.component.d.ts +2 -2
  42. package/lib/components/po-field/po-field.model.d.ts +50 -0
  43. package/lib/components/po-field/po-login/po-login.component.d.ts +2 -2
  44. package/lib/components/po-field/po-lookup/interfaces/po-lookup-filter.interface.d.ts +5 -2
  45. package/lib/components/po-field/po-lookup/po-lookup-base.component.d.ts +53 -7
  46. package/lib/components/po-field/po-lookup/po-lookup-modal/po-lookup-modal-base.component.d.ts +22 -2
  47. package/lib/components/po-field/po-lookup/po-lookup-modal/po-lookup-modal.component.d.ts +10 -3
  48. package/lib/components/po-field/po-lookup/po-lookup.component.d.ts +25 -2
  49. package/lib/components/po-field/po-lookup/services/po-lookup-filter.service.d.ts +6 -2
  50. package/lib/components/po-field/po-lookup/services/po-lookup-modal.service.d.ts +7 -0
  51. package/lib/components/po-field/po-password/po-password.component.d.ts +2 -2
  52. package/lib/components/po-field/po-switch/po-switch.component.d.ts +49 -3
  53. package/lib/components/po-field/po-url/po-url.component.d.ts +2 -2
  54. package/lib/components/po-stepper/po-stepper-step/po-stepper-step.component.d.ts +1 -0
  55. package/lib/components/po-stepper/po-stepper.component.d.ts +6 -2
  56. package/lib/components/po-table/po-table-column-label/po-table-column-label.interface.d.ts +1 -1
  57. package/lib/components/po-table/po-table.component.d.ts +13 -0
  58. package/package.json +4 -4
  59. package/po-ui-ng-components-5.18.0.tgz +0 -0
  60. package/po-ui-ng-components.d.ts +1 -1
  61. package/po-ui-ng-components.metadata.json +1 -1
  62. package/schematics/ng-add/index.js +1 -1
  63. package/schematics/ng-update/v2/index.js +1 -1
  64. package/schematics/ng-update/v3/index.js +1 -1
  65. package/schematics/ng-update/v4/index.js +1 -1
  66. package/schematics/ng-update/v5/index.js +1 -1
  67. package/esm2015/lib/components/po-field/po-switch/po-switch-base.component.js +0 -158
  68. package/lib/components/po-field/po-switch/po-switch-base.component.d.ts +0 -100
  69. package/po-ui-ng-components-5.14.0.tgz +0 -0
@@ -1,9 +1,22 @@
1
- import { ChangeDetectionStrategy, ChangeDetectorRef, Component, forwardRef, ViewChild } from '@angular/core';
1
+ import { ChangeDetectionStrategy, ChangeDetectorRef, Component, forwardRef, Input, ViewChild } from '@angular/core';
2
2
  import { NG_VALUE_ACCESSOR } from '@angular/forms';
3
- import { PoSwitchBaseComponent } from './po-switch-base.component';
3
+ import { PoFieldModel } from '../po-field.model';
4
+ import { PoKeyCodeEnum } from './../../../enums/po-key-code.enum';
4
5
  import { PoSwitchLabelPosition } from './po-switch-label-position.enum';
5
6
  /**
6
- * @docsExtends PoSwitchBaseComponent
7
+ * @docsExtends PoFieldModel
8
+ *
9
+ * @description
10
+ *
11
+ * O componente `po-switch` é um [checkbox](/documentation/po-checkbox-group) mais intuitivo, pois faz analogia a um interruptor.
12
+ * Deve ser usado quando deseja-se transmitir a ideia de ligar / desligar uma funcionalidade específica.
13
+ *
14
+ * Pode-se ligar ou deligar o botão utilizando a tecla de espaço ou o clique do mouse.
15
+ *
16
+ * O texto exibido pode ser alterado de acordo com o valor setado aumentando as possibilidades de uso do componente,
17
+ * portanto, recomenda-se informar textos que contextualizem seu uso para que facilite a compreensão do usuário.
18
+ *
19
+ * > O componente não altera o valor incial informado no *model*, portanto indica-se inicializa-lo caso ter necessidade.
7
20
  *
8
21
  * @example
9
22
  *
@@ -29,9 +42,51 @@ import { PoSwitchLabelPosition } from './po-switch-label-position.enum';
29
42
  * <file name="sample-po-switch-order-reactive-form/sample-po-switch-order-reactive-form.component.ts"> </file>
30
43
  * </example>
31
44
  */
32
- export class PoSwitchComponent extends PoSwitchBaseComponent {
45
+ export class PoSwitchComponent extends PoFieldModel {
33
46
  constructor(changeDetector) {
34
- super(changeDetector);
47
+ super();
48
+ this.changeDetector = changeDetector;
49
+ this.value = false;
50
+ this._labelOff = 'false';
51
+ this._labelOn = 'true';
52
+ this._labelPosition = PoSwitchLabelPosition.Right;
53
+ }
54
+ /**
55
+ * @optional
56
+ *
57
+ * @description
58
+ *
59
+ * Posição de exibição do rótulo.
60
+ *
61
+ * > Por padrão exibe à direita.
62
+ */
63
+ set labelPosition(position) {
64
+ this._labelPosition = position in PoSwitchLabelPosition ? parseInt(position, 10) : PoSwitchLabelPosition.Right;
65
+ }
66
+ get labelPosition() {
67
+ return this._labelPosition;
68
+ }
69
+ /**
70
+ * Texto exibido quando o valor do componente for `false`.
71
+ *
72
+ * @default `false`
73
+ */
74
+ set labelOff(label) {
75
+ this._labelOff = label || 'false';
76
+ }
77
+ get labelOff() {
78
+ return this._labelOff;
79
+ }
80
+ /**
81
+ * Texto exibido quando o valor do componente for `true`.
82
+ *
83
+ * @default `true`
84
+ */
85
+ set labelOn(label) {
86
+ this._labelOn = label || 'true';
87
+ }
88
+ get labelOn() {
89
+ return this._labelOn;
35
90
  }
36
91
  ngAfterViewInit() {
37
92
  if (this.autoFocus) {
@@ -85,16 +140,34 @@ export class PoSwitchComponent extends PoSwitchBaseComponent {
85
140
  }
86
141
  }
87
142
  onKeyDown(event) {
88
- if (event.which === 32 || event.keyCode === 32) {
143
+ if (event.which === PoKeyCodeEnum.space || event.keyCode === PoKeyCodeEnum.space) {
89
144
  event.preventDefault();
90
145
  this.eventClick();
91
146
  }
92
147
  }
148
+ changeValue(value) {
149
+ if (this.value !== value) {
150
+ this.value = value;
151
+ this.updateModel(value);
152
+ this.change.emit(this.value);
153
+ }
154
+ }
155
+ eventClick() {
156
+ if (!this.disabled) {
157
+ this.changeValue(!this.value);
158
+ }
159
+ }
160
+ onWriteValue(value) {
161
+ if (value !== this.value) {
162
+ this.value = !!value;
163
+ this.changeDetector.markForCheck();
164
+ }
165
+ }
93
166
  }
94
167
  PoSwitchComponent.decorators = [
95
168
  { type: Component, args: [{
96
169
  selector: 'po-switch',
97
- template: "<po-field-container [p-label]=\"label\" [p-help]=\"help\">\n <div class=\"po-field-container-content po-switch-content\" [attr.name]=\"name\">\n <div\n class=\"po-switch-container po-clickable\"\n #switchContainer\n [class.po-switch-container-disabled]=\"disabled\"\n [class.po-switch-container-off]=\"switchValue === false && !disabled\"\n [class.po-switch-container-on]=\"switchValue === true && !disabled\"\n [class.po-switch-container-right]=\"getSwitchPosition() === 'right'\"\n [tabindex]=\"disabled ? -1 : 0\"\n (click)=\"eventClick()\"\n (keydown)=\"onKeyDown($event)\"\n (blur)=\"onBlur()\"\n >\n <div\n class=\"po-switch-button\"\n [class.po-switch-button-on]=\"switchValue === true\"\n [class.po-switch-button-off]=\"switchValue === false\"\n [class.po-switch-button-disabled]=\"disabled\"\n >\n <span class=\"po-icon po-icon-{{ switchValue === true ? 'ok' : 'close' }}\"></span>\n </div>\n </div>\n\n <span class=\"po-switch-label po-clickable po-switch-label-{{ getLabelPosition() }}\" (click)=\"eventClick()\">\n {{ switchValue === true ? labelOn : labelOff }}\n </span>\n </div>\n\n <po-field-container-bottom></po-field-container-bottom>\n</po-field-container>\n",
170
+ template: "<po-field-container [p-label]=\"label\" [p-help]=\"help\">\n <div class=\"po-field-container-content po-switch-content\" [attr.name]=\"name\">\n <div\n class=\"po-switch-container po-clickable\"\n #switchContainer\n [class.po-switch-container-disabled]=\"disabled\"\n [class.po-switch-container-off]=\"value === false && !disabled\"\n [class.po-switch-container-on]=\"value === true && !disabled\"\n [class.po-switch-container-right]=\"getSwitchPosition() === 'right'\"\n [tabindex]=\"disabled ? -1 : 0\"\n (click)=\"eventClick()\"\n (keydown)=\"onKeyDown($event)\"\n (blur)=\"onBlur()\"\n >\n <div\n class=\"po-switch-button\"\n [class.po-switch-button-on]=\"value === true\"\n [class.po-switch-button-off]=\"value === false\"\n [class.po-switch-button-disabled]=\"disabled\"\n >\n <span class=\"po-icon po-icon-{{ value === true ? 'ok' : 'close' }}\"></span>\n </div>\n </div>\n\n <span class=\"po-switch-label po-clickable po-switch-label-{{ getLabelPosition() }}\" (click)=\"eventClick()\">\n {{ value === true ? labelOn : labelOff }}\n </span>\n </div>\n\n <po-field-container-bottom></po-field-container-bottom>\n</po-field-container>\n",
98
171
  changeDetection: ChangeDetectionStrategy.OnPush,
99
172
  providers: [
100
173
  {
@@ -109,6 +182,9 @@ PoSwitchComponent.ctorParameters = () => [
109
182
  { type: ChangeDetectorRef }
110
183
  ];
111
184
  PoSwitchComponent.propDecorators = {
112
- switchContainer: [{ type: ViewChild, args: ['switchContainer', { static: true },] }]
185
+ switchContainer: [{ type: ViewChild, args: ['switchContainer', { static: true },] }],
186
+ labelPosition: [{ type: Input, args: ['p-label-position',] }],
187
+ labelOff: [{ type: Input, args: ['p-label-off',] }],
188
+ labelOn: [{ type: Input, args: ['p-label-on',] }]
113
189
  };
114
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicG8tc3dpdGNoLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3VpL3NyYy9saWIvY29tcG9uZW50cy9wby1maWVsZC9wby1zd2l0Y2gvcG8tc3dpdGNoLmNvbXBvbmVudC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBR0wsdUJBQXVCLEVBQ3ZCLGlCQUFpQixFQUNqQixTQUFTLEVBRVQsVUFBVSxFQUNWLFNBQVMsRUFDVixNQUFNLGVBQWUsQ0FBQztBQUN2QixPQUFPLEVBQUUsaUJBQWlCLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUVuRCxPQUFPLEVBQUUscUJBQXFCLEVBQUUsTUFBTSw0QkFBNEIsQ0FBQztBQUNuRSxPQUFPLEVBQUUscUJBQXFCLEVBQUUsTUFBTSxpQ0FBaUMsQ0FBQztBQUV4RTs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7R0EwQkc7QUFhSCxNQUFNLE9BQU8saUJBQWtCLFNBQVEscUJBQXFCO0lBRzFELFlBQVksY0FBaUM7UUFDM0MsS0FBSyxDQUFDLGNBQWMsQ0FBQyxDQUFDO0lBQ3hCLENBQUM7SUFFRCxlQUFlO1FBQ2IsSUFBSSxJQUFJLENBQUMsU0FBUyxFQUFFO1lBQ2xCLElBQUksQ0FBQyxLQUFLLEVBQUUsQ0FBQztTQUNkO0lBQ0gsQ0FBQztJQUVEOzs7Ozs7Ozs7Ozs7Ozs7O09BZ0JHO0lBQ0gsS0FBSztRQUNILElBQUksQ0FBQyxJQUFJLENBQUMsUUFBUSxFQUFFO1lBQ2xCLElBQUksQ0FBQyxlQUFlLENBQUMsYUFBYSxDQUFDLEtBQUssRUFBRSxDQUFDO1NBQzVDO0lBQ0gsQ0FBQztJQUVELE1BQU07O1FBQ0osTUFBQSxJQUFJLENBQUMsU0FBUywrQ0FBZCxJQUFJLENBQWMsQ0FBQztJQUNyQixDQUFDO0lBRUQsZ0JBQWdCO1FBQ2QsUUFBUSxJQUFJLENBQUMsYUFBYSxFQUFFO1lBQzFCLEtBQUsscUJBQXFCLENBQUMsSUFBSTtnQkFDN0IsT0FBTyxNQUFNLENBQUM7WUFDaEIsS0FBSyxxQkFBcUIsQ0FBQyxLQUFLO2dCQUM5QixPQUFPLE9BQU8sQ0FBQztZQUNqQjtnQkFDRSxPQUFPLE9BQU8sQ0FBQztTQUNsQjtJQUNILENBQUM7SUFFRCxpQkFBaUI7UUFDZixRQUFRLElBQUksQ0FBQyxhQUFhLEVBQUU7WUFDMUIsS0FBSyxxQkFBcUIsQ0FBQyxJQUFJO2dCQUM3QixPQUFPLE9BQU8sQ0FBQztZQUNqQixLQUFLLHFCQUFxQixDQUFDLEtBQUs7Z0JBQzlCLE9BQU8sTUFBTSxDQUFDO1lBQ2hCO2dCQUNFLE9BQU8sTUFBTSxDQUFDO1NBQ2pCO0lBQ0gsQ0FBQztJQUVELFNBQVMsQ0FBQyxLQUFLO1FBQ2IsSUFBSSxLQUFLLENBQUMsS0FBSyxLQUFLLEVBQUUsSUFBSSxLQUFLLENBQUMsT0FBTyxLQUFLLEVBQUUsRUFBRTtZQUM5QyxLQUFLLENBQUMsY0FBYyxFQUFFLENBQUM7WUFDdkIsSUFBSSxDQUFDLFVBQVUsRUFBRSxDQUFDO1NBQ25CO0lBQ0gsQ0FBQzs7O1lBL0VGLFNBQVMsU0FBQztnQkFDVCxRQUFRLEVBQUUsV0FBVztnQkFDckIsaXlDQUF5QztnQkFDekMsZUFBZSxFQUFFLHVCQUF1QixDQUFDLE1BQU07Z0JBQy9DLFNBQVMsRUFBRTtvQkFDVDt3QkFDRSxPQUFPLEVBQUUsaUJBQWlCO3dCQUMxQixXQUFXLEVBQUUsVUFBVSxDQUFDLEdBQUcsRUFBRSxDQUFDLGlCQUFpQixDQUFDO3dCQUNoRCxLQUFLLEVBQUUsSUFBSTtxQkFDWjtpQkFDRjthQUNGOzs7WUFqREMsaUJBQWlCOzs7OEJBbURoQixTQUFTLFNBQUMsaUJBQWlCLEVBQUUsRUFBRSxNQUFNLEVBQUUsSUFBSSxFQUFFIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtcbiAgQWZ0ZXJWaWV3Q2hlY2tlZCxcbiAgQWZ0ZXJWaWV3SW5pdCxcbiAgQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3ksXG4gIENoYW5nZURldGVjdG9yUmVmLFxuICBDb21wb25lbnQsXG4gIEVsZW1lbnRSZWYsXG4gIGZvcndhcmRSZWYsXG4gIFZpZXdDaGlsZFxufSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IE5HX1ZBTFVFX0FDQ0VTU09SIH0gZnJvbSAnQGFuZ3VsYXIvZm9ybXMnO1xuXG5pbXBvcnQgeyBQb1N3aXRjaEJhc2VDb21wb25lbnQgfSBmcm9tICcuL3BvLXN3aXRjaC1iYXNlLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBQb1N3aXRjaExhYmVsUG9zaXRpb24gfSBmcm9tICcuL3BvLXN3aXRjaC1sYWJlbC1wb3NpdGlvbi5lbnVtJztcblxuLyoqXG4gKiBAZG9jc0V4dGVuZHMgUG9Td2l0Y2hCYXNlQ29tcG9uZW50XG4gKlxuICogQGV4YW1wbGVcbiAqXG4gKiA8ZXhhbXBsZSBuYW1lPVwicG8tc3dpdGNoLWJhc2ljXCIgdGl0bGU9XCJQTyBTd2l0Y2ggQmFzaWNcIj5cbiAqICAgPGZpbGUgbmFtZT1cInNhbXBsZS1wby1zd2l0Y2gtYmFzaWMvc2FtcGxlLXBvLXN3aXRjaC1iYXNpYy5jb21wb25lbnQuaHRtbFwiPiA8L2ZpbGU+XG4gKiAgIDxmaWxlIG5hbWU9XCJzYW1wbGUtcG8tc3dpdGNoLWJhc2ljL3NhbXBsZS1wby1zd2l0Y2gtYmFzaWMuY29tcG9uZW50LnRzXCI+IDwvZmlsZT5cbiAqIDwvZXhhbXBsZT5cbiAqXG4gKiA8ZXhhbXBsZSBuYW1lPVwicG8tc3dpdGNoLWxhYnNcIiB0aXRsZT1cIlBPIFN3aXRjaCBMYWJzXCI+XG4gKiAgIDxmaWxlIG5hbWU9XCJzYW1wbGUtcG8tc3dpdGNoLWxhYnMvc2FtcGxlLXBvLXN3aXRjaC1sYWJzLmNvbXBvbmVudC5odG1sXCI+IDwvZmlsZT5cbiAqICAgPGZpbGUgbmFtZT1cInNhbXBsZS1wby1zd2l0Y2gtbGFicy9zYW1wbGUtcG8tc3dpdGNoLWxhYnMuY29tcG9uZW50LnRzXCI+IDwvZmlsZT5cbiAqICAgPGZpbGUgbmFtZT1cInNhbXBsZS1wby1zd2l0Y2gtbGFicy9zYW1wbGUtcG8tc3dpdGNoLWxhYnMuY29tcG9uZW50LmUyZS1zcGVjLnRzXCI+IDwvZmlsZT5cbiAqICAgPGZpbGUgbmFtZT1cInNhbXBsZS1wby1zd2l0Y2gtbGFicy9zYW1wbGUtcG8tc3dpdGNoLWxhYnMuY29tcG9uZW50LnBvLnRzXCI+IDwvZmlsZT5cbiAqIDwvZXhhbXBsZT5cbiAqXG4gKiA8ZXhhbXBsZSBuYW1lPVwicG8tc3dpdGNoLW9yZGVyXCIgdGl0bGU9XCJQTyBTd2l0Y2ggLSBPcmRlciBTdW1tYXJ5XCI+XG4gKiAgIDxmaWxlIG5hbWU9XCJzYW1wbGUtcG8tc3dpdGNoLW9yZGVyL3NhbXBsZS1wby1zd2l0Y2gtb3JkZXIuY29tcG9uZW50Lmh0bWxcIj4gPC9maWxlPlxuICogICA8ZmlsZSBuYW1lPVwic2FtcGxlLXBvLXN3aXRjaC1vcmRlci9zYW1wbGUtcG8tc3dpdGNoLW9yZGVyLmNvbXBvbmVudC50c1wiPiA8L2ZpbGU+XG4gKiA8L2V4YW1wbGU+XG4gKlxuICogPGV4YW1wbGUgbmFtZT1cInBvLXN3aXRjaC1vcmRlci1yZWFjdGl2ZS1mb3JtXCIgdGl0bGU9XCJQTyBTd2l0Y2ggLSBPcmRlciBTdW1tYXJ5IFJlYWN0aXZlIEZvcm1cIj5cbiAqICAgPGZpbGUgbmFtZT1cInNhbXBsZS1wby1zd2l0Y2gtb3JkZXItcmVhY3RpdmUtZm9ybS9zYW1wbGUtcG8tc3dpdGNoLW9yZGVyLXJlYWN0aXZlLWZvcm0uY29tcG9uZW50Lmh0bWxcIj4gPC9maWxlPlxuICogICA8ZmlsZSBuYW1lPVwic2FtcGxlLXBvLXN3aXRjaC1vcmRlci1yZWFjdGl2ZS1mb3JtL3NhbXBsZS1wby1zd2l0Y2gtb3JkZXItcmVhY3RpdmUtZm9ybS5jb21wb25lbnQudHNcIj4gPC9maWxlPlxuICogPC9leGFtcGxlPlxuICovXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdwby1zd2l0Y2gnLFxuICB0ZW1wbGF0ZVVybDogJy4vcG8tc3dpdGNoLmNvbXBvbmVudC5odG1sJyxcbiAgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2gsXG4gIHByb3ZpZGVyczogW1xuICAgIHtcbiAgICAgIHByb3ZpZGU6IE5HX1ZBTFVFX0FDQ0VTU09SLFxuICAgICAgdXNlRXhpc3Rpbmc6IGZvcndhcmRSZWYoKCkgPT4gUG9Td2l0Y2hDb21wb25lbnQpLFxuICAgICAgbXVsdGk6IHRydWVcbiAgICB9XG4gIF1cbn0pXG5leHBvcnQgY2xhc3MgUG9Td2l0Y2hDb21wb25lbnQgZXh0ZW5kcyBQb1N3aXRjaEJhc2VDb21wb25lbnQgaW1wbGVtZW50cyBBZnRlclZpZXdJbml0IHtcbiAgQFZpZXdDaGlsZCgnc3dpdGNoQ29udGFpbmVyJywgeyBzdGF0aWM6IHRydWUgfSkgc3dpdGNoQ29udGFpbmVyOiBFbGVtZW50UmVmO1xuXG4gIGNvbnN0cnVjdG9yKGNoYW5nZURldGVjdG9yOiBDaGFuZ2VEZXRlY3RvclJlZikge1xuICAgIHN1cGVyKGNoYW5nZURldGVjdG9yKTtcbiAgfVxuXG4gIG5nQWZ0ZXJWaWV3SW5pdCgpIHtcbiAgICBpZiAodGhpcy5hdXRvRm9jdXMpIHtcbiAgICAgIHRoaXMuZm9jdXMoKTtcbiAgICB9XG4gIH1cblxuICAvKipcbiAgICogRnVuw6fDo28gcXVlIGF0cmlidWkgZm9jbyBhbyBjb21wb25lbnRlLlxuICAgKlxuICAgKiBQYXJhIHV0aWxpesOhLWxhIMOpIG5lY2Vzc8OhcmlvIHRlciBhIGluc3TDom5jaWEgZG8gY29tcG9uZW50ZSBubyBET00sIHBvZGVuZG8gc2VyIHV0aWxpemFkbyBvIFZpZXdDaGlsZCBkYSBzZWd1aW50ZSBmb3JtYTpcbiAgICpcbiAgICogYGBgXG4gICAqIGltcG9ydCB7IFBvU3dpdGNoQ29tcG9uZW50IH0gZnJvbSAnQHBvLXVpL25nLWNvbXBvbmVudHMnO1xuICAgKlxuICAgKiAuLi5cbiAgICpcbiAgICogQFZpZXdDaGlsZChQb1N3aXRjaENvbXBvbmVudCwgeyBzdGF0aWM6IHRydWUgfSkgc3dpdGNoOiBQb1N3aXRjaENvbXBvbmVudDtcbiAgICpcbiAgICogZm9jdXNTd2l0Y2goKSB7XG4gICAqICAgdGhpcy5zd2l0Y2guZm9jdXMoKTtcbiAgICogfVxuICAgKiBgYGBcbiAgICovXG4gIGZvY3VzKCkge1xuICAgIGlmICghdGhpcy5kaXNhYmxlZCkge1xuICAgICAgdGhpcy5zd2l0Y2hDb250YWluZXIubmF0aXZlRWxlbWVudC5mb2N1cygpO1xuICAgIH1cbiAgfVxuXG4gIG9uQmx1cigpIHtcbiAgICB0aGlzLm9uVG91Y2hlZD8uKCk7XG4gIH1cblxuICBnZXRMYWJlbFBvc2l0aW9uKCkge1xuICAgIHN3aXRjaCAodGhpcy5sYWJlbFBvc2l0aW9uKSB7XG4gICAgICBjYXNlIFBvU3dpdGNoTGFiZWxQb3NpdGlvbi5MZWZ0OlxuICAgICAgICByZXR1cm4gJ2xlZnQnO1xuICAgICAgY2FzZSBQb1N3aXRjaExhYmVsUG9zaXRpb24uUmlnaHQ6XG4gICAgICAgIHJldHVybiAncmlnaHQnO1xuICAgICAgZGVmYXVsdDpcbiAgICAgICAgcmV0dXJuICdyaWdodCc7XG4gICAgfVxuICB9XG5cbiAgZ2V0U3dpdGNoUG9zaXRpb24oKSB7XG4gICAgc3dpdGNoICh0aGlzLmxhYmVsUG9zaXRpb24pIHtcbiAgICAgIGNhc2UgUG9Td2l0Y2hMYWJlbFBvc2l0aW9uLkxlZnQ6XG4gICAgICAgIHJldHVybiAncmlnaHQnO1xuICAgICAgY2FzZSBQb1N3aXRjaExhYmVsUG9zaXRpb24uUmlnaHQ6XG4gICAgICAgIHJldHVybiAnbGVmdCc7XG4gICAgICBkZWZhdWx0OlxuICAgICAgICByZXR1cm4gJ2xlZnQnO1xuICAgIH1cbiAgfVxuXG4gIG9uS2V5RG93bihldmVudCkge1xuICAgIGlmIChldmVudC53aGljaCA9PT0gMzIgfHwgZXZlbnQua2V5Q29kZSA9PT0gMzIpIHtcbiAgICAgIGV2ZW50LnByZXZlbnREZWZhdWx0KCk7XG4gICAgICB0aGlzLmV2ZW50Q2xpY2soKTtcbiAgICB9XG4gIH1cbn1cbiJdfQ==
190
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicG8tc3dpdGNoLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3VpL3NyYy9saWIvY29tcG9uZW50cy9wby1maWVsZC9wby1zd2l0Y2gvcG8tc3dpdGNoLmNvbXBvbmVudC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBRUwsdUJBQXVCLEVBQ3ZCLGlCQUFpQixFQUNqQixTQUFTLEVBRVQsVUFBVSxFQUNWLEtBQUssRUFDTCxTQUFTLEVBQ1YsTUFBTSxlQUFlLENBQUM7QUFDdkIsT0FBTyxFQUFFLGlCQUFpQixFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFFbkQsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLG1CQUFtQixDQUFDO0FBQ2pELE9BQU8sRUFBRSxhQUFhLEVBQUUsTUFBTSxtQ0FBbUMsQ0FBQztBQUVsRSxPQUFPLEVBQUUscUJBQXFCLEVBQUUsTUFBTSxpQ0FBaUMsQ0FBQztBQUV4RTs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7R0FzQ0c7QUFhSCxNQUFNLE9BQU8saUJBQWtCLFNBQVEsWUFBcUI7SUFvRDFELFlBQW9CLGNBQWlDO1FBQ25ELEtBQUssRUFBRSxDQUFDO1FBRFUsbUJBQWMsR0FBZCxjQUFjLENBQW1CO1FBakRyRCxVQUFLLEdBQUcsS0FBSyxDQUFDO1FBRU4sY0FBUyxHQUFXLE9BQU8sQ0FBQztRQUM1QixhQUFRLEdBQVcsTUFBTSxDQUFDO1FBQzFCLG1CQUFjLEdBQTBCLHFCQUFxQixDQUFDLEtBQUssQ0FBQztJQStDNUUsQ0FBQztJQTdDRDs7Ozs7Ozs7T0FRRztJQUNILElBQStCLGFBQWEsQ0FBQyxRQUErQjtRQUMxRSxJQUFJLENBQUMsY0FBYyxHQUFHLFFBQVEsSUFBSSxxQkFBcUIsQ0FBQyxDQUFDLENBQUMsUUFBUSxDQUFNLFFBQVEsRUFBRSxFQUFFLENBQUMsQ0FBQyxDQUFDLENBQUMscUJBQXFCLENB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LHVCQUF1QixDQUFDLE1BQU07Z0JBQy9DLFNBQVMsRUFBRTtvQkFDVDt3QkFDRSxPQUFPLEVBQUUsaUJBQWlCO3dCQUMxQixXQUFXLEVBQUUsVUFBVSxDQUFDLEdBQUcsRUFBRSxDQUFDLGlCQUFpQixDQUFDO3dCQUNoRCxLQUFLLEVBQUUsSUFBSTtxQkFDWjtpQkFDRjthQUNGOzs7WUFoRUMsaUJBQWlCOzs7OEJBa0VoQixTQUFTLFNBQUMsaUJBQWlCLEVBQUUsRUFBRSxNQUFNLEVBQUUsSUFBSSxFQUFFOzRCQWlCN0MsS0FBSyxTQUFDLGtCQUFrQjt1QkFheEIsS0FBSyxTQUFDLGFBQWE7c0JBYW5CLEtBQUssU0FBQyxZQUFZIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtcbiAgQWZ0ZXJWaWV3SW5pdCxcbiAgQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3ksXG4gIENoYW5nZURldGVjdG9yUmVmLFxuICBDb21wb25lbnQsXG4gIEVsZW1lbnRSZWYsXG4gIGZvcndhcmRSZWYsXG4gIElucHV0LFxuICBWaWV3Q2hpbGRcbn0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBOR19WQUxVRV9BQ0NFU1NPUiB9IGZyb20gJ0Bhbmd1bGFyL2Zvcm1zJztcblxuaW1wb3J0IHsgUG9GaWVsZE1vZGVsIH0gZnJvbSAnLi4vcG8tZmllbGQubW9kZWwnO1xuaW1wb3J0IHsgUG9LZXlDb2RlRW51bSB9IGZyb20gJy4vLi4vLi4vLi4vZW51bXMvcG8ta2V5LWNvZGUuZW51bSc7XG5cbmltcG9ydCB7IFBvU3dpdGNoTGFiZWxQb3NpdGlvbiB9IGZyb20gJy4vcG8tc3dpdGNoLWxhYmVsLXBvc2l0aW9uLmVudW0nO1xuXG4vKipcbiAqIEBkb2NzRXh0ZW5kcyBQb0ZpZWxkTW9kZWxcbiAqXG4gKiBAZGVzY3JpcHRpb25cbiAqXG4gKiBPIGNvbXBvbmVudGUgYHBvLXN3aXRjaGAgw6kgdW0gW2NoZWNrYm94XSgvZG9jdW1lbnRhdGlvbi9wby1jaGVja2JveC1ncm91cCkgbWFpcyBpbnR1aXRpdm8sIHBvaXMgZmF6IGFuYWxvZ2lhIGEgdW0gaW50ZXJydXB0b3IuXG4gKiBEZXZlIHNlciB1c2FkbyBxdWFuZG8gZGVzZWphLXNlIHRyYW5zbWl0aXIgYSBpZGVpYSBkZSBsaWdhciAvIGRlc2xpZ2FyIHVtYSBmdW5jaW9uYWxpZGFkZSBlc3BlY8OtZmljYS5cbiAqXG4gKiBQb2RlLXNlIGxpZ2FyIG91IGRlbGlnYXIgbyBib3TDo28gdXRpbGl6YW5kbyBhIHRlY2xhIGRlIGVzcGHDp28gb3UgbyBjbGlxdWUgZG8gbW91c2UuXG4gKlxuICogTyB0ZXh0byBleGliaWRvIHBvZGUgc2VyIGFsdGVyYWRvIGRlIGFjb3JkbyBjb20gbyB2YWxvciBzZXRhZG8gYXVtZW50YW5kbyBhcyBwb3NzaWJpbGlkYWRlcyBkZSB1c28gZG8gY29tcG9uZW50ZSxcbiAqIHBvcnRhbnRvLCByZWNvbWVuZGEtc2UgaW5mb3JtYXIgdGV4dG9zIHF1ZSBjb250ZXh0dWFsaXplbSBzZXUgdXNvIHBhcmEgcXVlIGZhY2lsaXRlIGEgY29tcHJlZW5zw6NvIGRvIHVzdcOhcmlvLlxuICpcbiAqID4gTyBjb21wb25lbnRlIG7Do28gYWx0ZXJhIG8gdmFsb3IgaW5jaWFsIGluZm9ybWFkbyBubyAqbW9kZWwqLCBwb3J0YW50byBpbmRpY2Etc2UgaW5pY2lhbGl6YS1sbyBjYXNvIHRlciBuZWNlc3NpZGFkZS5cbiAqXG4gKiBAZXhhbXBsZVxuICpcbiAqIDxleGFtcGxlIG5hbWU9XCJwby1zd2l0Y2gtYmFzaWNcIiB0aXRsZT1cIlBPIFN3aXRjaCBCYXNpY1wiPlxuICogICA8ZmlsZSBuYW1lPVwic2FtcGxlLXBvLXN3aXRjaC1iYXNpYy9zYW1wbGUtcG8tc3dpdGNoLWJhc2ljLmNvbXBvbmVudC5odG1sXCI+IDwvZmlsZT5cbiAqICAgPGZpbGUgbmFtZT1cInNhbXBsZS1wby1zd2l0Y2gtYmFzaWMvc2FtcGxlLXBvLXN3aXRjaC1iYXNpYy5jb21wb25lbnQudHNcIj4gPC9maWxlPlxuICogPC9leGFtcGxlPlxuICpcbiAqIDxleGFtcGxlIG5hbWU9XCJwby1zd2l0Y2gtbGFic1wiIHRpdGxlPVwiUE8gU3dpdGNoIExhYnNcIj5cbiAqICAgPGZpbGUgbmFtZT1cInNhbXBsZS1wby1zd2l0Y2gtbGFicy9zYW1wbGUtcG8tc3dpdGNoLWxhYnMuY29tcG9uZW50Lmh0bWxcIj4gPC9maWxlPlxuICogICA8ZmlsZSBuYW1lPVwic2FtcGxlLXBvLXN3aXRjaC1sYWJzL3NhbXBsZS1wby1zd2l0Y2gtbGFicy5jb21wb25lbnQudHNcIj4gPC9maWxlPlxuICogICA8ZmlsZSBuYW1lPVwic2FtcGxlLXBvLXN3aXRjaC1sYWJzL3NhbXBsZS1wby1zd2l0Y2gtbGFicy5jb21wb25lbnQuZTJlLXNwZWMudHNcIj4gPC9maWxlPlxuICogICA8ZmlsZSBuYW1lPVwic2FtcGxlLXBvLXN3aXRjaC1sYWJzL3NhbXBsZS1wby1zd2l0Y2gtbGFicy5jb21wb25lbnQucG8udHNcIj4gPC9maWxlPlxuICogPC9leGFtcGxlPlxuICpcbiAqIDxleGFtcGxlIG5hbWU9XCJwby1zd2l0Y2gtb3JkZXJcIiB0aXRsZT1cIlBPIFN3aXRjaCAtIE9yZGVyIFN1bW1hcnlcIj5cbiAqICAgPGZpbGUgbmFtZT1cInNhbXBsZS1wby1zd2l0Y2gtb3JkZXIvc2FtcGxlLXBvLXN3aXRjaC1vcmRlci5jb21wb25lbnQuaHRtbFwiPiA8L2ZpbGU+XG4gKiAgIDxmaWxlIG5hbWU9XCJzYW1wbGUtcG8tc3dpdGNoLW9yZGVyL3NhbXBsZS1wby1zd2l0Y2gtb3JkZXIuY29tcG9uZW50LnRzXCI+IDwvZmlsZT5cbiAqIDwvZXhhbXBsZT5cbiAqXG4gKiA8ZXhhbXBsZSBuYW1lPVwicG8tc3dpdGNoLW9yZGVyLXJlYWN0aXZlLWZvcm1cIiB0aXRsZT1cIlBPIFN3aXRjaCAtIE9yZGVyIFN1bW1hcnkgUmVhY3RpdmUgRm9ybVwiPlxuICogICA8ZmlsZSBuYW1lPVwic2FtcGxlLXBvLXN3aXRjaC1vcmRlci1yZWFjdGl2ZS1mb3JtL3NhbXBsZS1wby1zd2l0Y2gtb3JkZXItcmVhY3RpdmUtZm9ybS5jb21wb25lbnQuaHRtbFwiPiA8L2ZpbGU+XG4gKiAgIDxmaWxlIG5hbWU9XCJzYW1wbGUtcG8tc3dpdGNoLW9yZGVyLXJlYWN0aXZlLWZvcm0vc2FtcGxlLXBvLXN3aXRjaC1vcmRlci1yZWFjdGl2ZS1mb3JtLmNvbXBvbmVudC50c1wiPiA8L2ZpbGU+XG4gKiA8L2V4YW1wbGU+XG4gKi9cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ3BvLXN3aXRjaCcsXG4gIHRlbXBsYXRlVXJsOiAnLi9wby1zd2l0Y2guY29tcG9uZW50Lmh0bWwnLFxuICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaCxcbiAgcHJvdmlkZXJzOiBbXG4gICAge1xuICAgICAgcHJvdmlkZTogTkdfVkFMVUVfQUNDRVNTT1IsXG4gICAgICB1c2VFeGlzdGluZzogZm9yd2FyZFJlZigoKSA9PiBQb1N3aXRjaENvbXBvbmVudCksXG4gICAgICBtdWx0aTogdHJ1ZVxuICAgIH1cbiAgXVxufSlcbmV4cG9ydCBjbGFzcyBQb1N3aXRjaENvbXBvbmVudCBleHRlbmRzIFBvRmllbGRNb2RlbDxib29sZWFuPiBpbXBsZW1lbnRzIEFmdGVyVmlld0luaXQge1xuICBAVmlld0NoaWxkKCdzd2l0Y2hDb250YWluZXInLCB7IHN0YXRpYzogdHJ1ZSB9KSBzd2l0Y2hDb250YWluZXI6IEVsZW1lbnRSZWY7XG5cbiAgdmFsdWUgPSBmYWxzZTtcblxuICBwcml2YXRlIF9sYWJlbE9mZjogc3RyaW5nID0gJ2ZhbHNlJztcbiAgcHJpdmF0ZSBfbGFiZWxPbjogc3RyaW5nID0gJ3RydWUnO1xuICBwcml2YXRlIF9sYWJlbFBvc2l0aW9uOiBQb1N3aXRjaExhYmVsUG9zaXRpb24gPSBQb1N3aXRjaExhYmVsUG9zaXRpb24uUmlnaHQ7XG5cbiAgLyoqXG4gICAqIEBvcHRpb25hbFxuICAgKlxuICAgKiBAZGVzY3JpcHRpb25cbiAgICpcbiAgICogUG9zacOnw6NvIGRlIGV4aWJpw6fDo28gZG8gcsOzdHVsby5cbiAgICpcbiAgICogPiBQb3IgcGFkcsOjbyBleGliZSDDoCBkaXJlaXRhLlxuICAgKi9cbiAgQElucHV0KCdwLWxhYmVsLXBvc2l0aW9uJykgc2V0IGxhYmVsUG9zaXRpb24ocG9zaXRpb246IFBvU3dpdGNoTGFiZWxQb3NpdGlvbikge1xuICAgIHRoaXMuX2xhYmVsUG9zaXRpb24gPSBwb3NpdGlvbiBpbiBQb1N3aXRjaExhYmVsUG9zaXRpb24gPyBwYXJzZUludCg8YW55PnBvc2l0aW9uLCAxMCkgOiBQb1N3aXRjaExhYmVsUG9zaXRpb24uUmlnaHQ7XG4gIH1cblxuICBnZXQgbGFiZWxQb3NpdGlvbigpIHtcbiAgICByZXR1cm4gdGhpcy5fbGFiZWxQb3NpdGlvbjtcbiAgfVxuXG4gIC8qKlxuICAgKiBUZXh0byBleGliaWRvIHF1YW5kbyBvIHZhbG9yIGRvIGNvbXBvbmVudGUgZm9yIGBmYWxzZWAuXG4gICAqXG4gICAqIEBkZWZhdWx0IGBmYWxzZWBcbiAgICovXG4gIEBJbnB1dCgncC1sYWJlbC1vZmYnKSBzZXQgbGFiZWxPZmYobGFiZWw6IHN0cmluZykge1xuICAgIHRoaXMuX2xhYmVsT2ZmID0gbGFiZWwgfHwgJ2ZhbHNlJztcbiAgfVxuXG4gIGdldCBsYWJlbE9mZigpIHtcbiAgICByZXR1cm4gdGhpcy5fbGFiZWxPZmY7XG4gIH1cblxuICAvKipcbiAgICogVGV4dG8gZXhpYmlkbyBxdWFuZG8gbyB2YWxvciBkbyBjb21wb25lbnRlIGZvciBgdHJ1ZWAuXG4gICAqXG4gICAqIEBkZWZhdWx0IGB0cnVlYFxuICAgKi9cbiAgQElucHV0KCdwLWxhYmVsLW9uJykgc2V0IGxhYmVsT24obGFiZWw6IHN0cmluZykge1xuICAgIHRoaXMuX2xhYmVsT24gPSBsYWJlbCB8fCAndHJ1ZSc7XG4gIH1cblxuICBnZXQgbGFiZWxPbigpIHtcbiAgICByZXR1cm4gdGhpcy5fbGFiZWxPbjtcbiAgfVxuXG4gIGNvbnN0cnVjdG9yKHByaXZhdGUgY2hhbmdlRGV0ZWN0b3I6IENoYW5nZURldGVjdG9yUmVmKSB7XG4gICAgc3VwZXIoKTtcbiAgfVxuXG4gIG5nQWZ0ZXJWaWV3SW5pdCgpIHtcbiAgICBpZiAodGhpcy5hdXRvRm9jdXMpIHtcbiAgICAgIHRoaXMuZm9jdXMoKTtcbiAgICB9XG4gIH1cblxuICAvKipcbiAgICogRnVuw6fDo28gcXVlIGF0cmlidWkgZm9jbyBhbyBjb21wb25lbnRlLlxuICAgKlxuICAgKiBQYXJhIHV0aWxpesOhLWxhIMOpIG5lY2Vzc8OhcmlvIHRlciBhIGluc3TDom5jaWEgZG8gY29tcG9uZW50ZSBubyBET00sIHBvZGVuZG8gc2VyIHV0aWxpemFkbyBvIFZpZXdDaGlsZCBkYSBzZWd1aW50ZSBmb3JtYTpcbiAgICpcbiAgICogYGBgXG4gICAqIGltcG9ydCB7IFBvU3dpdGNoQ29tcG9uZW50IH0gZnJvbSAnQHBvLXVpL25nLWNvbXBvbmVudHMnO1xuICAgKlxuICAgKiAuLi5cbiAgICpcbiAgICogQFZpZXdDaGlsZChQb1N3aXRjaENvbXBvbmVudCwgeyBzdGF0aWM6IHRydWUgfSkgc3dpdGNoOiBQb1N3aXRjaENvbXBvbmVudDtcbiAgICpcbiAgICogZm9jdXNTd2l0Y2goKSB7XG4gICAqICAgdGhpcy5zd2l0Y2guZm9jdXMoKTtcbiAgICogfVxuICAgKiBgYGBcbiAgICovXG4gIGZvY3VzKCkge1xuICAgIGlmICghdGhpcy5kaXNhYmxlZCkge1xuICAgICAgdGhpcy5zd2l0Y2hDb250YWluZXIubmF0aXZlRWxlbWVudC5mb2N1cygpO1xuICAgIH1cbiAgfVxuXG4gIG9uQmx1cigpIHtcbiAgICB0aGlzLm9uVG91Y2hlZD8uKCk7XG4gIH1cblxuICBnZXRMYWJlbFBvc2l0aW9uKCkge1xuICAgIHN3aXRjaCAodGhpcy5sYWJlbFBvc2l0aW9uKSB7XG4gICAgICBjYXNlIFBvU3dpdGNoTGFiZWxQb3NpdGlvbi5MZWZ0OlxuICAgICAgICByZXR1cm4gJ2xlZnQnO1xuICAgICAgY2FzZSBQb1N3aXRjaExhYmVsUG9zaXRpb24uUmlnaHQ6XG4gICAgICAgIHJldHVybiAncmlnaHQnO1xuICAgICAgZGVmYXVsdDpcbiAgICAgICAgcmV0dXJuICdyaWdodCc7XG4gICAgfVxuICB9XG5cbiAgZ2V0U3dpdGNoUG9zaXRpb24oKSB7XG4gICAgc3dpdGNoICh0aGlzLmxhYmVsUG9zaXRpb24pIHtcbiAgICAgIGNhc2UgUG9Td2l0Y2hMYWJlbFBvc2l0aW9uLkxlZnQ6XG4gICAgICAgIHJldHVybiAncmlnaHQnO1xuICAgICAgY2FzZSBQb1N3aXRjaExhYmVsUG9zaXRpb24uUmlnaHQ6XG4gICAgICAgIHJldHVybiAnbGVmdCc7XG4gICAgICBkZWZhdWx0OlxuICAgICAgICByZXR1cm4gJ2xlZnQnO1xuICAgIH1cbiAgfVxuXG4gIG9uS2V5RG93bihldmVudCkge1xuICAgIGlmIChldmVudC53aGljaCA9PT0gUG9LZXlDb2RlRW51bS5zcGFjZSB8fCBldmVudC5rZXlDb2RlID09PSBQb0tleUNvZGVFbnVtLnNwYWNlKSB7XG4gICAgICBldmVudC5wcmV2ZW50RGVmYXVsdCgpO1xuICAgICAgdGhpcy5ldmVudENsaWNrKCk7XG4gICAgfVxuICB9XG5cbiAgY2hhbmdlVmFsdWUodmFsdWU6IGFueSkge1xuICAgIGlmICh0aGlzLnZhbHVlICE9PSB2YWx1ZSkge1xuICAgICAgdGhpcy52YWx1ZSA9IHZhbHVlO1xuICAgICAgdGhpcy51cGRhdGVNb2RlbCh2YWx1ZSk7XG4gICAgICB0aGlzLmNoYW5nZS5lbWl0KHRoaXMudmFsdWUpO1xuICAgIH1cbiAgfVxuXG4gIGV2ZW50Q2xpY2soKSB7XG4gICAgaWYgKCF0aGlzLmRpc2FibGVkKSB7XG4gICAgICB0aGlzLmNoYW5nZVZhbHVlKCF0aGlzLnZhbHVlKTtcbiAgICB9XG4gIH1cblxuICBvbldyaXRlVmFsdWUodmFsdWU6IGFueSk6IHZvaWQge1xuICAgIGlmICh2YWx1ZSAhPT0gdGhpcy52YWx1ZSkge1xuICAgICAgdGhpcy52YWx1ZSA9ICEhdmFsdWU7XG5cbiAgICAgIHRoaXMuY2hhbmdlRGV0ZWN0b3IubWFya0ZvckNoZWNrKCk7XG4gICAgfVxuICB9XG59XG4iXX0=
@@ -1,4 +1,4 @@
1
- import { Component, ElementRef, forwardRef } from '@angular/core';
1
+ import { ChangeDetectionStrategy, ChangeDetectorRef, Component, ElementRef, forwardRef } from '@angular/core';
2
2
  import { NG_VALUE_ACCESSOR, NG_VALIDATORS } from '@angular/forms';
3
3
  import { PoInputGeneric } from '../po-input-generic/po-input-generic';
4
4
  /**
@@ -28,8 +28,8 @@ import { PoInputGeneric } from '../po-input-generic/po-input-generic';
28
28
  */
29
29
  export class PoUrlComponent extends PoInputGeneric {
30
30
  /* istanbul ignore next */
31
- constructor(el) {
32
- super(el);
31
+ constructor(el, cd) {
32
+ super(el, cd);
33
33
  this.icon = 'po-icon-world';
34
34
  this.type = 'url';
35
35
  this.pattern = '^((https|http):\\/\\/)?' + // protocol
@@ -64,6 +64,7 @@ PoUrlComponent.decorators = [
64
64
  { type: Component, args: [{
65
65
  selector: 'po-url',
66
66
  template: "<po-field-container [p-help]=\"help\" [p-label]=\"label\" [p-optional]=\"!required && optional\">\n <div class=\"po-field-container-content\">\n <div *ngIf=\"icon\" class=\"po-field-icon-container-left\">\n <po-icon class=\"po-field-icon\" [class.po-field-icon-disabled]=\"disabled\" [p-icon]=\"icon\"></po-icon>\n </div>\n\n <input\n #inp\n class=\"po-input\"\n [attr.name]=\"name\"\n [autocomplete]=\"autocomplete\"\n [class.po-input-icon-left]=\"icon\"\n [class.po-input-icon-right]=\"clean\"\n [disabled]=\"disabled\"\n [placeholder]=\"placeholder\"\n [readonly]=\"readonly\"\n [required]=\"required\"\n [type]=\"type\"\n (blur)=\"eventOnBlur($event)\"\n (click)=\"eventOnClick($event)\"\n (focus)=\"eventOnFocus($event)\"\n (input)=\"eventOnInput($event)\"\n />\n\n <div class=\"po-field-icon-container-right\">\n <po-clean *ngIf=\"clean && !disabled && !readonly\" [p-element-ref]=\"inputEl\" (p-change-event)=\"clear($event)\">\n </po-clean>\n </div>\n </div>\n\n <po-field-container-bottom [p-error-pattern]=\"getErrorPattern()\"> </po-field-container-bottom>\n</po-field-container>\n",
67
+ changeDetection: ChangeDetectionStrategy.OnPush,
67
68
  providers: [
68
69
  {
69
70
  provide: NG_VALUE_ACCESSOR,
@@ -79,6 +80,7 @@ PoUrlComponent.decorators = [
79
80
  },] }
80
81
  ];
81
82
  PoUrlComponent.ctorParameters = () => [
82
- { type: ElementRef }
83
+ { type: ElementRef },
84
+ { type: ChangeDetectorRef }
83
85
  ];
84
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicG8tdXJsLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3VpL3NyYy9saWIvY29tcG9uZW50cy9wby1maWVsZC9wby11cmwvcG8tdXJsLmNvbXBvbmVudC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQWlCLFNBQVMsRUFBRSxVQUFVLEVBQUUsVUFBVSxFQUFhLE1BQU0sZUFBZSxDQUFDO0FBQzVGLE9BQU8sRUFBbUIsaUJBQWlCLEVBQUUsYUFBYSxFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFFbkYsT0FBTyxFQUFFLGNBQWMsRUFBRSxNQUFNLHNDQUFzQyxDQUFDO0FBRXRFOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7R0F3Qkc7QUFpQkgsTUFBTSxPQUFPLGNBQWUsU0FBUSxjQUFjO0lBaUJoRCwwQkFBMEI7SUFDMUIsWUFBWSxFQUFjO1FBQ3hCLEtBQUssQ0FBQyxFQUFFLENBQUMsQ0FBQztRQWxCWixTQUFJLEdBQUcsZUFBZSxDQUFDO1FBRXZCLFNBQUksR0FBRyxLQUFLLENBQUM7UUFFYixZQUFPLEdBQ0wseUJBQXlCLEdBQUcsV0FBVztZQUN2QyxrREFBa0QsR0FBRyxjQUFjO1lBQ25FLDZCQUE2QixHQUFHLHFCQUFxQjtZQUNyRCxvQ0FBb0MsR0FBRyxnQkFBZ0I7WUFDdkQsNkJBQTZCLEdBQUcsZUFBZTtZQUMvQyx1QkFBdUIsQ0FBQztRQUUxQixTQUFJLEdBQUcsRUFBRSxDQUFDO1FBRUYsYUFBUSxHQUFHLElBQUksQ0FBQyx5QkFBeUIsQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLENBQUM7UUFLM0QsSUFBSSxDQUFDLFNBQVMsR0FBRyxHQUFHLENBQUM7SUFDdkIsQ0FBQztJQUVELGVBQWU7UUFDYix5RUFBeUU7UUFDekUsVUFBVSxDQUFDLEdBQUcsRUFBRTtZQUNkLElBQUksQ0FBQyxJQUFJLENBQUMsaUJBQWlCLEVBQUU7Z0JBQzNCLElBQUksQ0FBQyxPQUFPLENBQUMsYUFBYSxDQUFDLGdCQUFnQixDQUFDLE9BQU8sRUFBRSxJQUFJLENBQUMsUUFBUSxDQUFDLENBQUM7YUFDckU7UUFDSCxDQUFDLENBQUMsQ0FBQztRQUNILEtBQUssQ0FBQyxlQUFlLEVBQUUsQ0FBQztJQUMxQixDQUFDO0lBRUQsV0FBVztRQUNULElBQUksQ0FBQyxJQUFJLENBQUMsaUJBQWlCLEVBQUU7WUFDM0IsSUFBSSxDQUFDLE9BQU8sQ0FBQyxhQUFhLENBQUMsbUJBQW1CLENBQUMsT0FBTyxFQUFFLElBQUksQ0FBQyxRQUFRLENBQUMsQ0FBQztTQUN4RTtJQUNILENBQUM7SUFFRCxlQUFlLENBQUMsQ0FBa0I7UUFDaEMsT0FBTyxJQUFJLENBQUM7SUFDZCxDQUFDOzs7WUF6REYsU0FBUyxTQUFDO2dCQUNULFFBQVEsRUFBRSxRQUFRO2dCQUNsQiwrckNBQWtEO2dCQUNsRCxTQUFTLEVBQUU7b0JBQ1Q7d0JBQ0UsT0FBTyxFQUFFLGlCQUFpQjt3QkFDMUIsV0FBVyxFQUFFLFVBQVUsQ0FBQyxHQUFHLEVBQUUsQ0FBQyxjQUFjLENBQUM7d0JBQzdDLEtBQUssRUFBRSxJQUFJO3FCQUNaO29CQUNEO3dCQUNFLE9BQU8sRUFBRSxhQUFhO3dCQUN0QixXQUFXLEVBQUUsVUFBVSxDQUFDLEdBQUcsRUFBRSxDQUFDLGNBQWMsQ0FBQzt3QkFDN0MsS0FBSyxFQUFFLElBQUk7cUJBQ1o7aUJBQ0Y7YUFDRjs7O1lBN0NrQyxVQUFVIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQWZ0ZXJWaWV3SW5pdCwgQ29tcG9uZW50LCBFbGVtZW50UmVmLCBmb3J3YXJkUmVmLCBPbkRlc3Ryb3kgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IEFic3RyYWN0Q29udHJvbCwgTkdfVkFMVUVfQUNDRVNTT1IsIE5HX1ZBTElEQVRPUlMgfSBmcm9tICdAYW5ndWxhci9mb3Jtcyc7XG5cbmltcG9ydCB7IFBvSW5wdXRHZW5lcmljIH0gZnJvbSAnLi4vcG8taW5wdXQtZ2VuZXJpYy9wby1pbnB1dC1nZW5lcmljJztcblxuLyoqXG4gKiBAZG9jc0V4dGVuZHMgUG9JbnB1dEJhc2VDb21wb25lbnRcbiAqXG4gKiBAZGVzY3JpcHRpb25cbiAqXG4gKiBwby11cmwgw6kgdW0gaW5wdXQgZXNwZWPDrWZpY28gcGFyYSByZWNlYmVyIFVSTCwgY29tIG8gcGF0dGVybiBqw6EgY29uZmlndXJhZG8uXG4gKlxuICogQGV4YW1wbGVcbiAqXG4gKiA8ZXhhbXBsZSBuYW1lPVwicG8tdXJsLWJhc2ljXCIgdGl0bGU9XCJQTyBVcmwgQmFzaWNcIj5cbiAqICAgPGZpbGUgbmFtZT1cInNhbXBsZS1wby11cmwtYmFzaWMvc2FtcGxlLXBvLXVybC1iYXNpYy5jb21wb25lbnQuaHRtbFwiPiA8L2ZpbGU+XG4gKiAgIDxmaWxlIG5hbWU9XCJzYW1wbGUtcG8tdXJsLWJhc2ljL3NhbXBsZS1wby11cmwtYmFzaWMuY29tcG9uZW50LnRzXCI+IDwvZmlsZT5cbiAqIDwvZXhhbXBsZT5cbiAqXG4gKiA8ZXhhbXBsZSBuYW1lPVwicG8tdXJsLWxhYnNcIiB0aXRsZT1cIlBPIFVybCBMYWJzXCI+XG4gKiAgIDxmaWxlIG5hbWU9XCJzYW1wbGUtcG8tdXJsLWxhYnMvc2FtcGxlLXBvLXVybC1sYWJzLmNvbXBvbmVudC5odG1sXCI+IDwvZmlsZT5cbiAqICAgPGZpbGUgbmFtZT1cInNhbXBsZS1wby11cmwtbGFicy9zYW1wbGUtcG8tdXJsLWxhYnMuY29tcG9uZW50LnRzXCI+IDwvZmlsZT5cbiAqIDwvZXhhbXBsZT5cbiAqXG4gKiA8ZXhhbXBsZSBuYW1lPVwicG8tdXJsLXNob3J0ZW5lclwiIHRpdGxlPVwiUE8gVXJsIC0gU2hvcnRlbmVyXCI+XG4gKiAgIDxmaWxlIG5hbWU9XCJzYW1wbGUtcG8tdXJsLXNob3J0ZW5lci9zYW1wbGUtcG8tdXJsLXNob3J0ZW5lci5jb21wb25lbnQuaHRtbFwiPiA8L2ZpbGU+XG4gKiAgIDxmaWxlIG5hbWU9XCJzYW1wbGUtcG8tdXJsLXNob3J0ZW5lci9zYW1wbGUtcG8tdXJsLXNob3J0ZW5lci5jb21wb25lbnQudHNcIj4gPC9maWxlPlxuICogPC9leGFtcGxlPlxuICpcbiAqL1xuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAncG8tdXJsJyxcbiAgdGVtcGxhdGVVcmw6ICcuLi9wby1pbnB1dC9wby1pbnB1dC5jb21wb25lbnQuaHRtbCcsXG4gIHByb3ZpZGVyczogW1xuICAgIHtcbiAgICAgIHByb3ZpZGU6IE5HX1ZBTFVFX0FDQ0VTU09SLFxuICAgICAgdXNlRXhpc3Rpbmc6IGZvcndhcmRSZWYoKCkgPT4gUG9VcmxDb21wb25lbnQpLFxuICAgICAgbXVsdGk6IHRydWVcbiAgICB9LFxuICAgIHtcbiAgICAgIHByb3ZpZGU6IE5HX1ZBTElEQVRPUlMsXG4gICAgICB1c2VFeGlzdGluZzogZm9yd2FyZFJlZigoKSA9PiBQb1VybENvbXBvbmVudCksXG4gICAgICBtdWx0aTogdHJ1ZVxuICAgIH1cbiAgXVxufSlcbmV4cG9ydCBjbGFzcyBQb1VybENvbXBvbmVudCBleHRlbmRzIFBvSW5wdXRHZW5lcmljIGltcGxlbWVudHMgQWZ0ZXJWaWV3SW5pdCwgT25EZXN0cm95IHtcbiAgaWNvbiA9ICdwby1pY29uLXdvcmxkJztcblxuICB0eXBlID0gJ3VybCc7XG5cbiAgcGF0dGVybiA9XG4gICAgJ14oKGh0dHBzfGh0dHApOlxcXFwvXFxcXC8pPycgKyAvLyBwcm90b2NvbFxuICAgICcoKChbYS16XFxcXGRdKFthLXpcXFxcZC1dKlthLXpcXFxcZF0pKilcXFxcLikrW2Etel17Mix9fCcgKyAvLyBkb21haW4gbmFtZVxuICAgICcoKFxcXFxkezEsM31cXFxcLil7M31cXFxcZHsxLDN9KSknICsgLy8gT1IgaXAgKHY0KSBhZGRyZXNzXG4gICAgJyhcXFxcOlxcXFxkKyk/KFxcXFwvWy1BLVphLXpcXFxcZCVfLn4rXSopKicgKyAvLyBwb3J0IGFuZCBwYXRoXG4gICAgJyhcXFxcP1s7JkEtWmEtelxcXFxkJV8ufis9LV0qKT8nICsgLy8gcXVlcnkgc3RyaW5nXG4gICAgJyhcXFxcI1stQS1aYS16XFxcXGRfXSopPyQnO1xuXG4gIG1hc2sgPSAnJztcblxuICBwcml2YXRlIGxpc3RlbmVyID0gdGhpcy52YWxpZGF0ZUNsYXNzZXNGb3JQYXR0ZXJuLmJpbmQodGhpcyk7XG5cbiAgLyogaXN0YW5idWwgaWdub3JlIG5leHQgKi9cbiAgY29uc3RydWN0b3IoZWw6IEVsZW1lbnRSZWYpIHtcbiAgICBzdXBlcihlbCk7XG4gICAgdGhpcy5tYXhsZW5ndGggPSAyNTQ7XG4gIH1cblxuICBuZ0FmdGVyVmlld0luaXQoKSB7XG4gICAgLy8gU2UgbsOjbyB0ZW0gbmdNb2RlbCBvdSByZWFjdGl2ZSBmb3JtIGFkaWNpb25hIHZhbGlkYcOnw6NvIGNvbSBjbGFzc2VzIGNzc1xuICAgIHNldFRpbWVvdXQoKCkgPT4ge1xuICAgICAgaWYgKCF0aGlzLm9uQ2hhbmdlUHJvcGFnYXRlKSB7XG4gICAgICAgIHRoaXMuaW5wdXRFbC5uYXRpdmVFbGVtZW50LmFkZEV2ZW50TGlzdGVuZXIoJ2tleXVwJywgdGhpcy5saXN0ZW5lcik7XG4gICAgICB9XG4gICAgfSk7XG4gICAgc3VwZXIubmdBZnRlclZpZXdJbml0KCk7XG4gIH1cblxuICBuZ09uRGVzdHJveSgpIHtcbiAgICBpZiAoIXRoaXMub25DaGFuZ2VQcm9wYWdhdGUpIHtcbiAgICAgIHRoaXMuaW5wdXRFbC5uYXRpdmVFbGVtZW50LnJlbW92ZUV2ZW50TGlzdGVuZXIoJ2tleXVwJywgdGhpcy5saXN0ZW5lcik7XG4gICAgfVxuICB9XG5cbiAgZXh0cmFWYWxpZGF0aW9uKGM6IEFic3RyYWN0Q29udHJvbCk6IHsgW2tleTogc3RyaW5nXTogYW55IH0ge1xuICAgIHJldHVybiBudWxsO1xuICB9XG59XG4iXX0=
86
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicG8tdXJsLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3VpL3NyYy9saWIvY29tcG9uZW50cy9wby1maWVsZC9wby11cmwvcG8tdXJsLmNvbXBvbmVudC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBRUwsdUJBQXVCLEVBQ3ZCLGlCQUFpQixFQUNqQixTQUFTLEVBQ1QsVUFBVSxFQUNWLFVBQVUsRUFFWCxNQUFNLGVBQWUsQ0FBQztBQUN2QixPQUFPLEVBQW1CLGlCQUFpQixFQUFFLGFBQWEsRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBRW5GLE9BQU8sRUFBRSxjQUFjLEVBQUUsTUFBTSxzQ0FBc0MsQ0FBQztBQUV0RTs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0dBd0JHO0FBa0JILE1BQU0sT0FBTyxjQUFlLFNBQVEsY0FBYztJQWlCaEQsMEJBQTBCO0lBQzFCLFlBQVksRUFBYyxFQUFFLEVBQXFCO1FBQy9DLEtBQUssQ0FBQyxFQUFFLEVBQUUsRUFBRSxDQUFDLENBQUM7UUFsQmhCLFNBQUksR0FBRyxlQUFlLENBQUM7UUFFdkIsU0FBSSxHQUFHLEtBQUssQ0FBQztRQUViLFlBQU8sR0FDTCx5QkFBeUIsR0FBRyxXQUFXO1lBQ3ZDLGtEQUFrRCxHQUFHLGNBQWM7WUFDbkUsNkJBQTZCLEdBQUcscUJBQXFCO1lBQ3JELG9DQUFvQyxHQUFHLGdCQUFnQjtZQUN2RCw2QkFBNkIsR0FBRyxlQUFlO1lBQy9DLHVCQUF1QixDQUFDO1FBRTFCLFNBQUksR0FBRyxFQUFFLENBQUM7UUFFRixhQUFRLEdBQUcsSUFBSSxDQUFDLHlCQUF5QixDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsQ0FBQztRQUszRCxJQUFJLENBQUMsU0FBUyxHQUFHLEdBQUcsQ0FBQztJQUN2QixDQUFDO0lBRUQsZUFBZTtRQUNiLHlFQUF5RTtRQUN6RSxVQUFVLENBQUMsR0FBRyxFQUFFO1lBQ2QsSUFBSSxDQUFDLElBQUksQ0FBQyxpQkFBaUIsRUFBRTtnQkFDM0IsSUFBSSxDQUFDLE9BQU8sQ0FBQyxhQUFhLENBQUMsZ0JBQWdCLENBQUMsT0FBTyxFQUFFLElBQUksQ0FBQyxRQUFRLENBQUMsQ0FBQzthQUNyRTtRQUNILENBQUMsQ0FBQyxDQUFDO1FBQ0gsS0FBSyxDQUFDLGVBQWUsRUFBRSxDQUFDO0lBQzFCLENBQUM7SUFFRCxXQUFXO1FBQ1QsSUFBSSxDQUFDLElBQUksQ0FBQyxpQkFBaUIsRUFBRTtZQUMzQixJQUFJLENBQUMsT0FBTyxDQUFDLGFBQWEsQ0FBQyxtQkFBbUIsQ0FBQyxPQUFPLEVBQUUsSUFBSSxDQUFDLFFBQVEsQ0FBQyxDQUFDO1NBQ3hFO0lBQ0gsQ0FBQztJQUVELGVBQWUsQ0FBQyxDQUFrQjtRQUNoQyxPQUFPLElBQUksQ0FBQztJQUNkLENBQUM7OztZQTFERixTQUFTLFNBQUM7Z0JBQ1QsUUFBUSxFQUFFLFFBQVE7Z0JBQ2xCLCtyQ0FBa0Q7Z0JBQ2xELGVBQWUsRUFBRSx1QkFBdUIsQ0FBQyxNQUFNO2dCQUMvQyxTQUFTLEVBQUU7b0JBQ1Q7d0JBQ0UsT0FBTyxFQUFFLGlCQUFpQjt3QkFDMUIsV0FBVyxFQUFFLFVBQVUsQ0FBQyxHQUFHLEVBQUUsQ0FBQyxjQUFjLENBQUM7d0JBQzdDLEtBQUssRUFBRSxJQUFJO3FCQUNaO29CQUNEO3dCQUNFLE9BQU8sRUFBRSxhQUFhO3dCQUN0QixXQUFXLEVBQUUsVUFBVSxDQUFDLEdBQUcsRUFBRSxDQUFDLGNBQWMsQ0FBQzt3QkFDN0MsS0FBSyxFQUFFLElBQUk7cUJBQ1o7aUJBQ0Y7YUFDRjs7O1lBakRDLFVBQVU7WUFGVixpQkFBaUIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge1xuICBBZnRlclZpZXdJbml0LFxuICBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneSxcbiAgQ2hhbmdlRGV0ZWN0b3JSZWYsXG4gIENvbXBvbmVudCxcbiAgRWxlbWVudFJlZixcbiAgZm9yd2FyZFJlZixcbiAgT25EZXN0cm95XG59IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgQWJzdHJhY3RDb250cm9sLCBOR19WQUxVRV9BQ0NFU1NPUiwgTkdfVkFMSURBVE9SUyB9IGZyb20gJ0Bhbmd1bGFyL2Zvcm1zJztcblxuaW1wb3J0IHsgUG9JbnB1dEdlbmVyaWMgfSBmcm9tICcuLi9wby1pbnB1dC1nZW5lcmljL3BvLWlucHV0LWdlbmVyaWMnO1xuXG4vKipcbiAqIEBkb2NzRXh0ZW5kcyBQb0lucHV0QmFzZUNvbXBvbmVudFxuICpcbiAqIEBkZXNjcmlwdGlvblxuICpcbiAqIHBvLXVybCDDqSB1bSBpbnB1dCBlc3BlY8OtZmljbyBwYXJhIHJlY2ViZXIgVVJMLCBjb20gbyBwYXR0ZXJuIGrDoSBjb25maWd1cmFkby5cbiAqXG4gKiBAZXhhbXBsZVxuICpcbiAqIDxleGFtcGxlIG5hbWU9XCJwby11cmwtYmFzaWNcIiB0aXRsZT1cIlBPIFVybCBCYXNpY1wiPlxuICogICA8ZmlsZSBuYW1lPVwic2FtcGxlLXBvLXVybC1iYXNpYy9zYW1wbGUtcG8tdXJsLWJhc2ljLmNvbXBvbmVudC5odG1sXCI+IDwvZmlsZT5cbiAqICAgPGZpbGUgbmFtZT1cInNhbXBsZS1wby11cmwtYmFzaWMvc2FtcGxlLXBvLXVybC1iYXNpYy5jb21wb25lbnQudHNcIj4gPC9maWxlPlxuICogPC9leGFtcGxlPlxuICpcbiAqIDxleGFtcGxlIG5hbWU9XCJwby11cmwtbGFic1wiIHRpdGxlPVwiUE8gVXJsIExhYnNcIj5cbiAqICAgPGZpbGUgbmFtZT1cInNhbXBsZS1wby11cmwtbGFicy9zYW1wbGUtcG8tdXJsLWxhYnMuY29tcG9uZW50Lmh0bWxcIj4gPC9maWxlPlxuICogICA8ZmlsZSBuYW1lPVwic2FtcGxlLXBvLXVybC1sYWJzL3NhbXBsZS1wby11cmwtbGFicy5jb21wb25lbnQudHNcIj4gPC9maWxlPlxuICogPC9leGFtcGxlPlxuICpcbiAqIDxleGFtcGxlIG5hbWU9XCJwby11cmwtc2hvcnRlbmVyXCIgdGl0bGU9XCJQTyBVcmwgLSBTaG9ydGVuZXJcIj5cbiAqICAgPGZpbGUgbmFtZT1cInNhbXBsZS1wby11cmwtc2hvcnRlbmVyL3NhbXBsZS1wby11cmwtc2hvcnRlbmVyLmNvbXBvbmVudC5odG1sXCI+IDwvZmlsZT5cbiAqICAgPGZpbGUgbmFtZT1cInNhbXBsZS1wby11cmwtc2hvcnRlbmVyL3NhbXBsZS1wby11cmwtc2hvcnRlbmVyLmNvbXBvbmVudC50c1wiPiA8L2ZpbGU+XG4gKiA8L2V4YW1wbGU+XG4gKlxuICovXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdwby11cmwnLFxuICB0ZW1wbGF0ZVVybDogJy4uL3BvLWlucHV0L3BvLWlucHV0LmNvbXBvbmVudC5odG1sJyxcbiAgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2gsXG4gIHByb3ZpZGVyczogW1xuICAgIHtcbiAgICAgIHByb3ZpZGU6IE5HX1ZBTFVFX0FDQ0VTU09SLFxuICAgICAgdXNlRXhpc3Rpbmc6IGZvcndhcmRSZWYoKCkgPT4gUG9VcmxDb21wb25lbnQpLFxuICAgICAgbXVsdGk6IHRydWVcbiAgICB9LFxuICAgIHtcbiAgICAgIHByb3ZpZGU6IE5HX1ZBTElEQVRPUlMsXG4gICAgICB1c2VFeGlzdGluZzogZm9yd2FyZFJlZigoKSA9PiBQb1VybENvbXBvbmVudCksXG4gICAgICBtdWx0aTogdHJ1ZVxuICAgIH1cbiAgXVxufSlcbmV4cG9ydCBjbGFzcyBQb1VybENvbXBvbmVudCBleHRlbmRzIFBvSW5wdXRHZW5lcmljIGltcGxlbWVudHMgQWZ0ZXJWaWV3SW5pdCwgT25EZXN0cm95IHtcbiAgaWNvbiA9ICdwby1pY29uLXdvcmxkJztcblxuICB0eXBlID0gJ3VybCc7XG5cbiAgcGF0dGVybiA9XG4gICAgJ14oKGh0dHBzfGh0dHApOlxcXFwvXFxcXC8pPycgKyAvLyBwcm90b2NvbFxuICAgICcoKChbYS16XFxcXGRdKFthLXpcXFxcZC1dKlthLXpcXFxcZF0pKilcXFxcLikrW2Etel17Mix9fCcgKyAvLyBkb21haW4gbmFtZVxuICAgICcoKFxcXFxkezEsM31cXFxcLil7M31cXFxcZHsxLDN9KSknICsgLy8gT1IgaXAgKHY0KSBhZGRyZXNzXG4gICAgJyhcXFxcOlxcXFxkKyk/KFxcXFwvWy1BLVphLXpcXFxcZCVfLn4rXSopKicgKyAvLyBwb3J0IGFuZCBwYXRoXG4gICAgJyhcXFxcP1s7JkEtWmEtelxcXFxkJV8ufis9LV0qKT8nICsgLy8gcXVlcnkgc3RyaW5nXG4gICAgJyhcXFxcI1stQS1aYS16XFxcXGRfXSopPyQnO1xuXG4gIG1hc2sgPSAnJztcblxuICBwcml2YXRlIGxpc3RlbmVyID0gdGhpcy52YWxpZGF0ZUNsYXNzZXNGb3JQYXR0ZXJuLmJpbmQodGhpcyk7XG5cbiAgLyogaXN0YW5idWwgaWdub3JlIG5leHQgKi9cbiAgY29uc3RydWN0b3IoZWw6IEVsZW1lbnRSZWYsIGNkOiBDaGFuZ2VEZXRlY3RvclJlZikge1xuICAgIHN1cGVyKGVsLCBjZCk7XG4gICAgdGhpcy5tYXhsZW5ndGggPSAyNTQ7XG4gIH1cblxuICBuZ0FmdGVyVmlld0luaXQoKSB7XG4gICAgLy8gU2UgbsOjbyB0ZW0gbmdNb2RlbCBvdSByZWFjdGl2ZSBmb3JtIGFkaWNpb25hIHZhbGlkYcOnw6NvIGNvbSBjbGFzc2VzIGNzc1xuICAgIHNldFRpbWVvdXQoKCkgPT4ge1xuICAgICAgaWYgKCF0aGlzLm9uQ2hhbmdlUHJvcGFnYXRlKSB7XG4gICAgICAgIHRoaXMuaW5wdXRFbC5uYXRpdmVFbGVtZW50LmFkZEV2ZW50TGlzdGVuZXIoJ2tleXVwJywgdGhpcy5saXN0ZW5lcik7XG4gICAgICB9XG4gICAgfSk7XG4gICAgc3VwZXIubmdBZnRlclZpZXdJbml0KCk7XG4gIH1cblxuICBuZ09uRGVzdHJveSgpIHtcbiAgICBpZiAoIXRoaXMub25DaGFuZ2VQcm9wYWdhdGUpIHtcbiAgICAgIHRoaXMuaW5wdXRFbC5uYXRpdmVFbGVtZW50LnJlbW92ZUV2ZW50TGlzdGVuZXIoJ2tleXVwJywgdGhpcy5saXN0ZW5lcik7XG4gICAgfVxuICB9XG5cbiAgZXh0cmFWYWxpZGF0aW9uKGM6IEFic3RyYWN0Q29udHJvbCk6IHsgW2tleTogc3RyaW5nXTogYW55IH0ge1xuICAgIHJldHVybiBudWxsO1xuICB9XG59XG4iXX0=
@@ -9,7 +9,7 @@ export class PoPageHeaderComponent extends PoPageHeaderBaseComponent {
9
9
  PoPageHeaderComponent.decorators = [
10
10
  { type: Component, args: [{
11
11
  selector: 'po-page-header',
12
- template: "<div class=\"po-page-header\">\n <!-- Breadcrumb -->\n <div class=\"po-page-header-breadcrumb\" *ngIf=\"breadcrumb && breadcrumb.items.length\">\n <po-breadcrumb\n [p-favorite-service]=\"breadcrumb.favorite\"\n [p-items]=\"breadcrumb.items\"\n [p-params-service]=\"breadcrumb.params\"\n >\n </po-breadcrumb>\n </div>\n\n <!-- Titulo -->\n <h1 class=\"po-page-header-title\" *ngIf=\"title\">\n {{ title }}\n </h1>\n\n <!-- Opera\u00E7\u00F5es -->\n <ng-content></ng-content>\n</div>\n"
12
+ template: "<div class=\"po-page-header\">\n <!-- Breadcrumb -->\n <div class=\"po-page-header-breadcrumb\" *ngIf=\"breadcrumb && breadcrumb.items.length\">\n <po-breadcrumb\n [p-favorite-service]=\"breadcrumb.favorite\"\n [p-items]=\"breadcrumb.items\"\n [p-params-service]=\"breadcrumb.params\"\n >\n </po-breadcrumb>\n </div>\n\n <div class=\"po-pt-1\">\n <!-- Titulo -->\n <h1 class=\"po-page-header-title\" *ngIf=\"title\">\n {{ title }}\n </h1>\n\n <!-- Opera\u00E7\u00F5es -->\n <ng-content></ng-content>\n </div>\n</div>\n"
13
13
  },] }
14
14
  ];
15
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicG8tcGFnZS1oZWFkZXIuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvdWkvc3JjL2xpYi9jb21wb25lbnRzL3BvLXBhZ2UvcG8tcGFnZS1oZWFkZXIvcG8tcGFnZS1oZWFkZXIuY29tcG9uZW50LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxTQUFTLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFFMUMsT0FBTyxFQUFFLHlCQUF5QixFQUFFLE1BQU0saUNBQWlDLENBQUM7QUFFNUU7OztHQUdHO0FBS0gsTUFBTSxPQUFPLHFCQUFzQixTQUFRLHlCQUF5Qjs7O1lBSm5FLFNBQVMsU0FBQztnQkFDVCxRQUFRLEVBQUUsZ0JBQWdCO2dCQUMxQixraEJBQThDO2FBQy9DIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29tcG9uZW50IH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5cbmltcG9ydCB7IFBvUGFnZUhlYWRlckJhc2VDb21wb25lbnQgfSBmcm9tICcuL3BvLXBhZ2UtaGVhZGVyLWJhc2UuY29tcG9uZW50JztcblxuLyoqXG4gKiBAZG9jc1ByaXZhdGVcbiAqIEBkb2NzRXh0ZW5kcyBQb1BhZ2VIZWFkZXJCYXNlQ29tcG9uZW50XG4gKi9cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ3BvLXBhZ2UtaGVhZGVyJyxcbiAgdGVtcGxhdGVVcmw6ICcuL3BvLXBhZ2UtaGVhZGVyLmNvbXBvbmVudC5odG1sJ1xufSlcbmV4cG9ydCBjbGFzcyBQb1BhZ2VIZWFkZXJDb21wb25lbnQgZXh0ZW5kcyBQb1BhZ2VIZWFkZXJCYXNlQ29tcG9uZW50IHt9XG4iXX0=
15
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicG8tcGFnZS1oZWFkZXIuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvdWkvc3JjL2xpYi9jb21wb25lbnRzL3BvLXBhZ2UvcG8tcGFnZS1oZWFkZXIvcG8tcGFnZS1oZWFkZXIuY29tcG9uZW50LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxTQUFTLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFFMUMsT0FBTyxFQUFFLHlCQUF5QixFQUFFLE1BQU0saUNBQWlDLENBQUM7QUFFNUU7OztHQUdHO0FBS0gsTUFBTSxPQUFPLHFCQUFzQixTQUFRLHlCQUF5Qjs7O1lBSm5FLFNBQVMsU0FBQztnQkFDVCxRQUFRLEVBQUUsZ0JBQWdCO2dCQUMxQixta0JBQThDO2FBQy9DIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29tcG9uZW50IH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5cbmltcG9ydCB7IFBvUGFnZUhlYWRlckJhc2VDb21wb25lbnQgfSBmcm9tICcuL3BvLXBhZ2UtaGVhZGVyLWJhc2UuY29tcG9uZW50JztcblxuLyoqXG4gKiBAZG9jc1ByaXZhdGVcbiAqIEBkb2NzRXh0ZW5kcyBQb1BhZ2VIZWFkZXJCYXNlQ29tcG9uZW50XG4gKi9cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ3BvLXBhZ2UtaGVhZGVyJyxcbiAgdGVtcGxhdGVVcmw6ICcuL3BvLXBhZ2UtaGVhZGVyLmNvbXBvbmVudC5odG1sJ1xufSlcbmV4cG9ydCBjbGFzcyBQb1BhZ2VIZWFkZXJDb21wb25lbnQgZXh0ZW5kcyBQb1BhZ2VIZWFkZXJCYXNlQ29tcG9uZW50IHt9XG4iXX0=
@@ -35,7 +35,7 @@ export class PoStepperCircleComponent {
35
35
  PoStepperCircleComponent.decorators = [
36
36
  { type: Component, args: [{
37
37
  selector: 'po-stepper-circle',
38
- template: "<div\n class=\"po-stepper-circle\"\n [class.po-stepper-circle-with-icon]=\"icons\"\n [style.height.px]=\"size\"\n [style.width.px]=\"size\"\n [tabindex]=\"isDisabled ? -1 : 0\"\n>\n <span\n class=\"po-stepper-circle-content\"\n [class.po-icon]=\"icons\"\n [class.po-icon-exclamation]=\"icons && isError\"\n [class.po-icon-info]=\"icons && (isActive || isDefault || isDisabled)\"\n [class.po-icon-ok]=\"icons && isDone\"\n [class.po-stepper-circle-content-lg]=\"isLargeStep\"\n [class.po-stepper-circle-content-md]=\"isMediumStep\"\n >\n {{ !icons ? content : '' }}\n </span>\n</div>\n"
38
+ template: "<div class=\"po-stepper-circle\" [style.height.px]=\"size\" [style.width.px]=\"size\" [tabindex]=\"isDisabled ? -1 : 0\">\n <span\n *ngIf=\"!isActive\"\n class=\"po-stepper-circle-content\"\n [class.po-icon]=\"icons || isDone\"\n [class.po-icon-exclamation]=\"icons && isError\"\n [class.po-icon-info]=\"icons && (isActive || isDefault || isDisabled)\"\n [class.po-icon-ok]=\"isDone\"\n [class.po-stepper-circle-content-lg]=\"isLargeStep\"\n [class.po-stepper-circle-content-md]=\"isMediumStep\"\n >\n {{ !icons && !isDone ? content : '' }}\n </span>\n\n <div *ngIf=\"isActive || isError\" class=\"po-stepper-circle-active\"></div>\n</div>\n"
39
39
  },] }
40
40
  ];
41
41
  PoStepperCircleComponent.propDecorators = {
@@ -44,4 +44,4 @@ PoStepperCircleComponent.propDecorators = {
44
44
  size: [{ type: Input, args: ['p-size',] }],
45
45
  status: [{ type: Input, args: ['p-status',] }]
46
46
  };
47
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicG8tc3RlcHBlci1jaXJjbGUuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvdWkvc3JjL2xpYi9jb21wb25lbnRzL3BvLXN0ZXBwZXIvcG8tc3RlcHBlci1jaXJjbGUvcG8tc3RlcHBlci1jaXJjbGUuY29tcG9uZW50LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxTQUFTLEVBQUUsS0FBSyxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBRWpELE9BQU8sRUFBRSxlQUFlLEVBQUUsTUFBTSxpQ0FBaUMsQ0FBQztBQUVsRSxNQUFNLGdCQUFnQixHQUFHLEVBQUUsQ0FBQztBQUM1QixNQUFNLGVBQWUsR0FBRyxFQUFFLENBQUM7QUFFM0I7Ozs7OztHQU1HO0FBS0gsTUFBTSxPQUFPLHdCQUF3QjtJQWFuQyxJQUFJLFFBQVE7UUFDVixPQUFPLElBQUksQ0FBQyxNQUFNLEtBQUssZUFBZSxDQUFDLE1BQU0sQ0FBQztJQUNoRCxDQUFDO0lBRUQsSUFBSSxTQUFTO1FBQ1gsT0FBTyxJQUFJLENBQUMsTUFBTSxLQUFLLGVBQWUsQ0FBQyxPQUFPLENBQUM7SUFDakQsQ0FBQztJQUVELElBQUksVUFBVTtRQUNaLE9BQU8sSUFBSSxDQUFDLE1BQU0sS0FBSyxlQUFlLENBQUMsUUFBUSxDQUFDO0lBQ2xELENBQUM7SUFFRCxJQUFJLE1BQU07UUFDUixPQUFPLElBQUksQ0FBQyxNQUFNLEtBQUssZUFBZSxDQUFDLElBQUksQ0FBQztJQUM5QyxDQUFDO0lBRUQsSUFBSSxPQUFPO1FBQ1QsT0FBTyxJQUFJLENBQUMsTUFBTSxLQUFLLGVBQWUsQ0FBQyxLQUFLLENBQUM7SUFDL0MsQ0FBQztJQUVELElBQUksV0FBVztRQUNiLE9BQU8sSUFBSSxDQUFDLElBQUksSUFBSSxlQUFlLENBQUM7SUFDdEMsQ0FBQztJQUVELElBQUksWUFBWTtRQUNkLE9BQU8sSUFBSSxDQUFDLElBQUksSUFBSSxnQkFBZ0IsSUFBSSxDQUFDLElBQUksQ0FBQyxXQUFXLENBQUM7SUFDNUQsQ0FBQzs7O1lBM0NGLFNBQVMsU0FBQztnQkFDVCxRQUFRLEVBQUUsbUJBQW1CO2dCQUM3QixvbkJBQWlEO2FBQ2xEOzs7c0JBR0UsS0FBSyxTQUFDLFdBQVc7b0JBR2pCLEtBQUssU0FBQyxTQUFTO21CQUdmLEtBQUssU0FBQyxRQUFRO3FCQUdkLEtBQUssU0FBQyxVQUFVIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29tcG9uZW50LCBJbnB1dCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuXG5pbXBvcnQgeyBQb1N0ZXBwZXJTdGF0dXMgfSBmcm9tICcuLi9lbnVtcy9wby1zdGVwcGVyLXN0YXR1cy5lbnVtJztcblxuY29uc3QgcG9NZWRpdW1TdGVwU2l6ZSA9IDMyO1xuY29uc3QgcG9MYXJnZVN0ZXBTaXplID0gNDg7XG5cbi8qKlxuICogQGRvY3NQcml2YXRlXG4gKlxuICogQGRlc2NyaXB0aW9uXG4gKlxuICogQ29tcG9uZW50ZSByZXNwb25zw6F2ZWwgcG9yIGV4aWJpciBvcyBjw61yY3Vsb3MgZG9zICpzdGVwcyouXG4gKi9cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ3BvLXN0ZXBwZXItY2lyY2xlJyxcbiAgdGVtcGxhdGVVcmw6ICcuL3BvLXN0ZXBwZXItY2lyY2xlLmNvbXBvbmVudC5odG1sJ1xufSlcbmV4cG9ydCBjbGFzcyBQb1N0ZXBwZXJDaXJjbGVDb21wb25lbnQge1xuICAvLyBDb250ZcO6ZG8gcXVlIGlyw6EgYXBhcmVjZXIgbm8gY8OtcmN1bG8gZG8gKnN0ZXAqLlxuICBASW5wdXQoJ3AtY29udGVudCcpIGNvbnRlbnQ6IGFueTtcblxuICAvLyBEZWZpbmUgc2Ugc2Vyw6NvIGV4aWJpZG9zIMOtY29uZXMgbm8gbHVnYXIgZGUgbsO6bWVyb3Mgbm9zIHN0ZXBzLlxuICBASW5wdXQoJ3AtaWNvbnMnKSBpY29uczogYm9vbGVhbjtcblxuICAvLyBUYW1hbmhvIGRvICpzdGVwLWNpcmNsZSouXG4gIEBJbnB1dCgncC1zaXplJykgc2l6ZTogbnVtYmVyO1xuXG4gIC8vIFN0YXR1cyBkbyAqc3RlcCouXG4gIEBJbnB1dCgncC1zdGF0dXMnKSBzdGF0dXM6IHN0cmluZztcblxuICBnZXQgaXNBY3RpdmUoKTogYm9vbGVhbiB7XG4gICAgcmV0dXJuIHRoaXMuc3RhdHVzID09PSBQb1N0ZXBwZXJTdGF0dXMuQWN0aXZlO1xuICB9XG5cbiAgZ2V0IGlzRGVmYXVsdCgpOiBib29sZWFuIHtcbiAgICByZXR1cm4gdGhpcy5zdGF0dXMgPT09IFBvU3RlcHBlclN0YXR1cy5EZWZhdWx0O1xuICB9XG5cbiAgZ2V0IGlzRGlzYWJsZWQoKTogYm9vbGVhbiB7XG4gICAgcmV0dXJuIHRoaXMuc3RhdHVzID09PSBQb1N0ZXBwZXJTdGF0dXMuRGlzYWJsZWQ7XG4gIH1cblxuICBnZXQgaXNEb25lKCk6IGJvb2xlYW4ge1xuICAgIHJldHVybiB0aGlzLnN0YXR1cyA9PT0gUG9TdGVwcGVyU3RhdHVzLkRvbmU7XG4gIH1cblxuICBnZXQgaXNFcnJvcigpOiBib29sZWFuIHtcbiAgICByZXR1cm4gdGhpcy5zdGF0dXMgPT09IFBvU3RlcHBlclN0YXR1cy5FcnJvcjtcbiAgfVxuXG4gIGdldCBpc0xhcmdlU3RlcCgpOiBib29sZWFuIHtcbiAgICByZXR1cm4gdGhpcy5zaXplID49IHBvTGFyZ2VTdGVwU2l6ZTtcbiAgfVxuXG4gIGdldCBpc01lZGl1bVN0ZXAoKTogYm9vbGVhbiB7XG4gICAgcmV0dXJuIHRoaXMuc2l6ZSA+PSBwb01lZGl1bVN0ZXBTaXplICYmICF0aGlzLmlzTGFyZ2VTdGVwO1xuICB9XG59XG4iXX0=
47
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicG8tc3RlcHBlci1jaXJjbGUuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvdWkvc3JjL2xpYi9jb21wb25lbnRzL3BvLXN0ZXBwZXIvcG8tc3RlcHBlci1jaXJjbGUvcG8tc3RlcHBlci1jaXJjbGUuY29tcG9uZW50LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxTQUFTLEVBQUUsS0FBSyxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBRWpELE9BQU8sRUFBRSxlQUFlLEVBQUUsTUFBTSxpQ0FBaUMsQ0FBQztBQUVsRSxNQUFNLGdCQUFnQixHQUFHLEVBQUUsQ0FBQztBQUM1QixNQUFNLGVBQWUsR0FBRyxFQUFFLENBQUM7QUFFM0I7Ozs7OztHQU1HO0FBS0gsTUFBTSxPQUFPLHdCQUF3QjtJQWFuQyxJQUFJLFFBQVE7UUFDVixPQUFPLElBQUksQ0FBQyxNQUFNLEtBQUssZUFBZSxDQUFDLE1BQU0sQ0FBQztJQUNoRCxDQUFDO0lBRUQsSUFBSSxTQUFTO1FBQ1gsT0FBTyxJQUFJLENBQUMsTUFBTSxLQUFLLGVBQWUsQ0FBQyxPQUFPLENBQUM7SUFDakQsQ0FBQztJQUVELElBQUksVUFBVTtRQUNaLE9BQU8sSUFBSSxDQUFDLE1BQU0sS0FBSyxlQUFlLENBQUMsUUFBUSxDQUFDO0lBQ2xELENBQUM7SUFFRCxJQUFJLE1BQU07UUFDUixPQUFPLElBQUksQ0FBQyxNQUFNLEtBQUssZUFBZSxDQUFDLElBQUksQ0FBQztJQUM5QyxDQUFDO0lBRUQsSUFBSSxPQUFPO1FBQ1QsT0FBTyxJQUFJLENBQUMsTUFBTSxLQUFLLGVBQWUsQ0FBQyxLQUFLLENBQUM7SUFDL0MsQ0FBQztJQUVELElBQUksV0FBVztRQUNiLE9BQU8sSUFBSSxDQUFDLElBQUksSUFBSSxlQUFlLENBQUM7SUFDdEMsQ0FBQztJQUVELElBQUksWUFBWTtRQUNkLE9BQU8sSUFBSSxDQUFDLElBQUksSUFBSSxnQkFBZ0IsSUFBSSxDQUFDLElBQUksQ0FBQyxXQUFXLENBQUM7SUFDNUQsQ0FBQzs7O1lBM0NGLFNBQVMsU0FBQztnQkFDVCxRQUFRLEVBQUUsbUJBQW1CO2dCQUM3Qiw0cUJBQWlEO2FBQ2xEOzs7c0JBR0UsS0FBSyxTQUFDLFdBQVc7b0JBR2pCLEtBQUssU0FBQyxTQUFTO21CQUdmLEtBQUssU0FBQyxRQUFRO3FCQUdkLEtBQUssU0FBQyxVQUFVIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29tcG9uZW50LCBJbnB1dCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuXG5pbXBvcnQgeyBQb1N0ZXBwZXJTdGF0dXMgfSBmcm9tICcuLi9lbnVtcy9wby1zdGVwcGVyLXN0YXR1cy5lbnVtJztcblxuY29uc3QgcG9NZWRpdW1TdGVwU2l6ZSA9IDMyO1xuY29uc3QgcG9MYXJnZVN0ZXBTaXplID0gNDg7XG5cbi8qKlxuICogQGRvY3NQcml2YXRlXG4gKlxuICogQGRlc2NyaXB0aW9uXG4gKlxuICogQ29tcG9uZW50ZSByZXNwb25zw6F2ZWwgcG9yIGV4aWJpciBvcyBjw61yY3Vsb3MgZG9zICpzdGVwcyouXG4gKi9cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ3BvLXN0ZXBwZXItY2lyY2xlJyxcbiAgdGVtcGxhdGVVcmw6ICcuL3BvLXN0ZXBwZXItY2lyY2xlLmNvbXBvbmVudC5odG1sJ1xufSlcbmV4cG9ydCBjbGFzcyBQb1N0ZXBwZXJDaXJjbGVDb21wb25lbnQge1xuICAvLyBDb250ZcO6ZG8gcXVlIGlyw6EgYXBhcmVjZXIgbm8gY8OtcmN1bG8gZG8gKnN0ZXAqLlxuICBASW5wdXQoJ3AtY29udGVudCcpIGNvbnRlbnQ6IGFueTtcblxuICAvLyBEZWZpbmUgc2Ugc2Vyw6NvIGV4aWJpZG9zIMOtY29uZXMgbm8gbHVnYXIgZGUgbsO6bWVyb3Mgbm9zIHN0ZXBzLlxuICBASW5wdXQoJ3AtaWNvbnMnKSBpY29uczogYm9vbGVhbjtcblxuICAvLyBUYW1hbmhvIGRvICpzdGVwLWNpcmNsZSouXG4gIEBJbnB1dCgncC1zaXplJykgc2l6ZTogbnVtYmVyO1xuXG4gIC8vIFN0YXR1cyBkbyAqc3RlcCouXG4gIEBJbnB1dCgncC1zdGF0dXMnKSBzdGF0dXM6IHN0cmluZztcblxuICBnZXQgaXNBY3RpdmUoKTogYm9vbGVhbiB7XG4gICAgcmV0dXJuIHRoaXMuc3RhdHVzID09PSBQb1N0ZXBwZXJTdGF0dXMuQWN0aXZlO1xuICB9XG5cbiAgZ2V0IGlzRGVmYXVsdCgpOiBib29sZWFuIHtcbiAgICByZXR1cm4gdGhpcy5zdGF0dXMgPT09IFBvU3RlcHBlclN0YXR1cy5EZWZhdWx0O1xuICB9XG5cbiAgZ2V0IGlzRGlzYWJsZWQoKTogYm9vbGVhbiB7XG4gICAgcmV0dXJuIHRoaXMuc3RhdHVzID09PSBQb1N0ZXBwZXJTdGF0dXMuRGlzYWJsZWQ7XG4gIH1cblxuICBnZXQgaXNEb25lKCk6IGJvb2xlYW4ge1xuICAgIHJldHVybiB0aGlzLnN0YXR1cyA9PT0gUG9TdGVwcGVyU3RhdHVzLkRvbmU7XG4gIH1cblxuICBnZXQgaXNFcnJvcigpOiBib29sZWFuIHtcbiAgICByZXR1cm4gdGhpcy5zdGF0dXMgPT09IFBvU3RlcHBlclN0YXR1cy5FcnJvcjtcbiAgfVxuXG4gIGdldCBpc0xhcmdlU3RlcCgpOiBib29sZWFuIHtcbiAgICByZXR1cm4gdGhpcy5zaXplID49IHBvTGFyZ2VTdGVwU2l6ZTtcbiAgfVxuXG4gIGdldCBpc01lZGl1bVN0ZXAoKTogYm9vbGVhbiB7XG4gICAgcmV0dXJuIHRoaXMuc2l6ZSA+PSBwb01lZGl1bVN0ZXBTaXplICYmICF0aGlzLmlzTGFyZ2VTdGVwO1xuICB9XG59XG4iXX0=
@@ -73,11 +73,11 @@ export class PoStepperStepComponent {
73
73
  getStatusClass(status) {
74
74
  switch (status) {
75
75
  case PoStepperStatus.Active:
76
- return 'po-stepper-step-active';
76
+ return 'po-stepper-step-default';
77
77
  case PoStepperStatus.Disabled:
78
78
  return 'po-stepper-step-disabled';
79
79
  case PoStepperStatus.Done:
80
- return 'po-stepper-step-done';
80
+ return 'po-stepper-step-default';
81
81
  case PoStepperStatus.Error:
82
82
  return 'po-stepper-step-error';
83
83
  default:
@@ -98,12 +98,13 @@ export class PoStepperStepComponent {
98
98
  PoStepperStepComponent.decorators = [
99
99
  { type: Component, args: [{
100
100
  selector: 'po-stepper-step',
101
- template: "<div class=\"po-stepper-step\" [ngClass]=\"getStatusClass(status)\" (click)=\"onClick()\" (keydown.enter)=\"onEnter()\">\n <div class=\"po-stepper-step-container\" [style.width.px]=\"isVerticalOrientation ? stepSize : undefined\">\n <div\n [class.po-stepper-step-bar-top]=\"isVerticalOrientation\"\n [class.po-stepper-step-bar-left]=\"!isVerticalOrientation\"\n [style.margin-right.px]=\"marginHorizontalBar\"\n ></div>\n\n <po-stepper-circle [p-content]=\"circleContent\" [p-icons]=\"stepIcons\" [p-size]=\"stepSize\" [p-status]=\"status\">\n </po-stepper-circle>\n\n <div\n [class.po-stepper-step-bar-bottom]=\"isVerticalOrientation\"\n [class.po-stepper-step-bar-right]=\"!isVerticalOrientation\"\n [style.margin-left.px]=\"marginHorizontalBar\"\n ></div>\n </div>\n\n <po-stepper-label class=\"po-stepper-step-label-position\" [p-content]=\"label\"> </po-stepper-label>\n</div>\n"
101
+ template: "<div class=\"po-stepper-step\" [ngClass]=\"getStatusClass(status)\" (click)=\"onClick()\" (keydown.enter)=\"onEnter()\">\n <div class=\"po-stepper-step-container\" [style.width.px]=\"isVerticalOrientation ? stepSize : undefined\">\n <div\n [class.po-stepper-step-bar-top]=\"isVerticalOrientation\"\n [class.po-stepper-step-bar-left]=\"!isVerticalOrientation\"\n [style.margin-right.px]=\"marginHorizontalBar\"\n ></div>\n\n <po-stepper-circle [p-content]=\"circleContent\" [p-icons]=\"stepIcons\" [p-size]=\"stepSize\" [p-status]=\"status\">\n </po-stepper-circle>\n\n <div\n [class.po-stepper-step-bar-bottom]=\"isVerticalOrientation\"\n [class.po-stepper-step-bar-right]=\"!isVerticalOrientation\"\n [class.po-stepper-step-dashed-border]=\"nextStatus === 'disabled' && !isVerticalOrientation\"\n [class.po-stepper-step-dashed-border-vertical]=\"nextStatus === 'disabled' && isVerticalOrientation\"\n [style.margin-left.px]=\"marginHorizontalBar\"\n ></div>\n </div>\n\n <po-stepper-label class=\"po-stepper-step-label-position\" [p-content]=\"label\"> </po-stepper-label>\n</div>\n"
102
102
  },] }
103
103
  ];
104
104
  PoStepperStepComponent.propDecorators = {
105
105
  circleContent: [{ type: Input, args: ['p-circle-content',] }],
106
106
  orientation: [{ type: Input, args: ['p-orientation',] }],
107
+ nextStatus: [{ type: Input, args: ['p-next-status',] }],
107
108
  activated: [{ type: Output, args: ['p-activated',] }],
108
109
  click: [{ type: Output, args: ['p-click',] }],
109
110
  enter: [{ type: Output, args: ['p-enter',] }],
@@ -112,4 +113,4 @@ PoStepperStepComponent.propDecorators = {
112
113
  stepIcons: [{ type: Input, args: ['p-step-icons',] }],
113
114
  stepSize: [{ type: Input, args: ['p-step-size',] }]
114
115
  };
115
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicG8tc3RlcHBlci1zdGVwLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3VpL3NyYy9saWIvY29tcG9uZW50cy9wby1zdGVwcGVyL3BvLXN0ZXBwZXItc3RlcC9wby1zdGVwcGVyLXN0ZXAuY29tcG9uZW50LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxTQUFTLEVBQUUsWUFBWSxFQUFFLEtBQUssRUFBRSxNQUFNLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFFdkUsT0FBTyxFQUFFLGVBQWUsRUFBRSxnQkFBZ0IsRUFBRSxRQUFRLEVBQUUsTUFBTSx1QkFBdUIsQ0FBQztBQUNwRixPQUFPLEVBQUUsZUFBZSxFQUFFLE1BQU0sc0RBQXNELENBQUM7QUFDdkYsT0FBTyxFQUFFLG9CQUFvQixFQUFFLE1BQU0sc0NBQXNDLENBQUM7QUFDNUUsT0FBTyxFQUFFLGVBQWUsRUFBRSxNQUFNLGlDQUFpQyxDQUFDO0FBRWxFLE1BQU0sd0JBQXdCLEdBQUcsRUFBRSxDQUFDO0FBQ3BDLE1BQU0sb0JBQW9CLEdBQUcsRUFBRSxDQUFDO0FBQ2hDLE1BQU0scUJBQXFCLEdBQUc7SUFDNUIsRUFBRSxFQUFFLEVBQUUsS0FBSyxFQUFFLE1BQU0sRUFBRTtJQUNyQixFQUFFLEVBQUUsRUFBRSxLQUFLLEVBQUUsTUFBTSxFQUFFO0lBQ3JCLEVBQUUsRUFBRSxFQUFFLEtBQUssRUFBRSxPQUFPLEVBQUU7Q0FDdkIsQ0FBQztBQUVGOzs7Ozs7R0FNRztBQUtILE1BQU0sT0FBTyxzQkFBc0I7SUFKbkM7UUFXRSw4RkFBOEY7UUFDdkUsY0FBUyxHQUFHLElBQUksWUFBWSxFQUFPLENBQUM7UUFFM0QsK0NBQStDO1FBQzVCLFVBQUssR0FBRyxJQUFJLFlBQVksRUFBTyxDQUFDO1FBRW5ELDJFQUEyRTtRQUN4RCxVQUFLLEdBQUcsSUFBSSxZQUFZLEVBQU8sQ0FBQztRQUUxQyxhQUFR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LEVBQUUsQ0FBQztTQUNuQjtJQUNILENBQUM7OztZQTVHRixTQUFTLFNBQUM7Z0JBQ1QsUUFBUSxFQUFFLGlCQUFpQjtnQkFDM0IsazdCQUE2QzthQUM5Qzs7OzRCQUdFLEtBQUssU0FBQyxrQkFBa0I7MEJBR3hCLEtBQUssU0FBQyxlQUFlO3dCQUdyQixNQUFNLFNBQUMsYUFBYTtvQkFHcEIsTUFBTSxTQUFDLFNBQVM7b0JBR2hCLE1BQU0sU0FBQyxTQUFTO29CQWFoQixLQUFLLFNBQUMsU0FBUztxQkFTZixLQUFLLFNBQUMsVUFBVTt3QkFZaEIsS0FBSyxTQUFDLGNBQWM7dUJBVXBCLEtBQUssU0FBQyxhQUFhIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29tcG9uZW50LCBFdmVudEVtaXR0ZXIsIElucHV0LCBPdXRwdXQgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcblxuaW1wb3J0IHsgYnJvd3Nlckxhbmd1YWdlLCBjb252ZXJ0VG9Cb29sZWFuLCBpc1R5cGVvZiB9IGZyb20gJy4vLi4vLi4vLi4vdXRpbHMvdXRpbCc7XG5pbXBvcnQgeyBwb0xvY2FsZURlZmF1bHQgfSBmcm9tICcuLy4uLy4uLy4uL3NlcnZpY2VzL3BvLWxhbmd1YWdlL3BvLWxhbmd1YWdlLmNvbnN0YW50JztcbmltcG9ydCB7IFBvU3RlcHBlck9yaWVudGF0aW9uIH0gZnJvbSAnLi4vZW51bXMvcG8tc3RlcHBlci1vcmllbnRhdGlvbi5lbnVtJztcbmltcG9ydCB7IFBvU3RlcHBlclN0YXR1cyB9IGZyb20gJy4uL2VudW1zL3BvLXN0ZXBwZXItc3RhdHVzLmVudW0nO1xuXG5jb25zdCBwb1N0ZXBwZXJTdGVwU2l6ZURlZmF1bHQgPSAyNDtcbmNvbnN0IHBvU3RlcHBlclN0ZXBTaXplTWF4ID0gNjQ7XG5jb25zdCBwb1N0ZXBMaXRlcmFsc0RlZmF1bHQgPSB7XG4gIGVuOiB7IGxhYmVsOiAnU3RlcCcgfSxcbiAgZXM6IHsgbGFiZWw6ICdQYXNvJyB9LFxuICBwdDogeyBsYWJlbDogJ1Bhc3NvJyB9XG59O1xuXG4vKipcbiAqIEBkb2NzUHJpdmF0ZVxuICpcbiAqIEBkZXNjcmlwdGlvblxuICpcbiAqIENvbXBvbmVudGUgcXVlIHJlcHJlc2VudGEgdW0gKnN0ZXAqIGNvbnRlbmRvIGFzIGxpZ2HDp8O1ZXMgZGFzIGxhdGVyYWlzIChgcG8tc3RlcHBlci1zdGVwLWJhcmApIGUgYSBsYWJlbC5cbiAqL1xuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAncG8tc3RlcHBlci1zdGVwJyxcbiAgdGVtcGxhdGVVcmw6ICdwby1zdGVwcGVyLXN0ZXAuY29tcG9uZW50Lmh0bWwnXG59KVxuZXhwb3J0IGNsYXNzIFBvU3RlcHBlclN0ZXBDb21wb25lbnQge1xuICAvLyBDb250ZcO6ZG8gcXVlIHNlcsOhIHJlcGFzc2FkbyBwYXJhIG8gY29tcG9uZW50ZSBgcC1jaXJjbGUtY29udGVudGAgYXRyYXbDqXMgZGEgcHJvcHJpZWRhZGUgYHAtY29udGVudGAuXG4gIEBJbnB1dCgncC1jaXJjbGUtY29udGVudCcpIGNpcmNsZUNvbnRlbnQ6IGFueTtcblxuICAvLyBEZWZpbmUgYSBvcmllbnRhw6fDo28gZGUgZXhpYmnDp8Ojby5cbiAgQElucHV0KCdwLW9yaWVudGF0aW9uJykgb3JpZW50YXRpb246IFBvU3RlcHBlck9yaWVudGF0aW9uO1xuXG4gIC8vIEV2ZW50byBxdWUgc2Vyw6EgZW1pdGlkbyBxdWFuZG8gbyBzdGF0dXMgZG8gKnN0ZXAqIGVzdGl2ZXIgYXRpdm8gKGBQb1N0ZXBwZXJTdGF0dXMuQWN0aXZlYCkuXG4gIEBPdXRwdXQoJ3AtYWN0aXZhdGVkJykgYWN0aXZhdGVkID0gbmV3IEV2ZW50RW1pdHRlcjxhbnk+KCk7XG5cbiAgLy8gRXZlbnRvIHF1ZSBzZXLDoSBlbWl0aWRvIGFvIGNsaWNhciBubyAqc3RlcCouXG4gIEBPdXRwdXQoJ3AtY2xpY2snKSBjbGljayA9IG5ldyBFdmVudEVtaXR0ZXI8YW55PigpO1xuXG4gIC8vIEV2ZW50byBxdWUgc2Vyw6EgZW1pdGlkbyBhbyBmb2NhciBubyAqc3RlcCogZSBwcmVzc2lvbmFyIGEgdGVjbGEgKmVudGVyKi5cbiAgQE91dHB1dCgncC1lbnRlcicpIGVudGVyID0gbmV3IEV2ZW50RW1pdHRlcjxhbnk+KCk7XG5cbiAgcmVhZG9ubHkgbGl0ZXJhbHMgPSB7XG4gICAgLi4ucG9TdGVwTGl0ZXJhbHNEZWZhdWx0W3BvTG9jYWxlRGVmYXVsdF0sXG4gICAgLi4ucG9TdGVwTGl0ZXJhbHNEZWZhdWx0W2Jyb3dzZXJMYW5ndWFnZSgpXVxuICB9O1xuXG4gIHByaXZhdGUgX2xhYmVsOiBzdHJpbmc7XG4gIHByaXZhdGUgX3N0YXR1czogUG9TdGVwcGVyU3RhdHVzO1xuICBwcml2YXRlIF9zdGVwSWNvbnM/OiBib29sZWFuID0gZmFsc2U7XG4gIHByaXZhdGUgX3N0ZXBTaXplOiBudW1iZXIgPSBwb1N0ZXBwZXJTdGVwU2l6ZURlZmF1bHQ7XG5cbiAgLy8gTGFiZWwgZG8gKnN0ZXAqLlxuICBASW5wdXQoJ3AtbGFiZWwnKSBzZXQgbGFiZWwodmFsdWU6IHN0cmluZykge1xuICAgIHRoaXMuX2xhYmVsID0gaXNUeXBlb2YodmFsdWUsICdzdHJpbmcnKSA/IHZhbHVlIDogYCR7dGhpcy5saXRlcmFscy5sYWJlbH0gJHt0aGlzLmNpcmNsZUNvbnRlbnR9YDtcbiAgfVxuXG4gIGdldCBsYWJlbCgpOiBzdHJpbmcge1xuICAgIHJldHVybiB0aGlzLl9sYWJlbDtcbiAgfVxuXG4gIC8vIERlZmluZSBvIGVzdGFkbyBkZSBleGliacOnw6NvLlxuICBASW5wdXQoJ3Atc3RhdHVzJykgc2V0IHN0YXR1cyh2YWx1ZTogUG9TdGVwcGVyU3RhdHVzKSB7XG4gICAgdGhpcy5fc3RhdHVzID0gKHZhbHVlIGFzIHN0cmluZykgPyB2YWx1ZSA6IHVuZGVmaW5lZDtcblxuICAgIGlmICh0aGlzLnN0YXR1cyA9PT0gUG9TdGVwcGVyU3RhdHVzLkFjdGl2ZSkge1xuICAgICAgdGhpcy5hY3RpdmF0ZWQuZW1pdCgpO1xuICAgIH1cbiAgfVxuXG4gIGdldCBzdGF0dXMoKTogUG9TdGVwcGVyU3RhdHVzIHtcbiAgICByZXR1cm4gdGhpcy5fc3RhdHVzO1xuICB9XG5cbiAgQElucHV0KCdwLXN0ZXAtaWNvbnMnKSBzZXQgc3RlcEljb25zKHN0ZXBJY29uczogYm9vbGVhbikge1xuICAgIHRoaXMuX3N0ZXBJY29ucyA9IGNvbnZlcnRUb0Jvb2xlYW4oc3RlcEljb25zKTtcbiAgfVxuXG4gIGdldCBzdGVwSWNvbnMoKTogYm9vbGVhbiB7XG4gICAgcmV0dXJuIHRoaXMuX3N0ZXBJY29ucztcbiAgfVxuXG4gIC8vIFRhbWFuaG8gZG8gYHN0ZXBgIGVtICpwaXhlbHMqLCBwb3NzaWJpbGl0YW5kbyB1bSBtYWlvciBkZXN0YXF1ZS5cbiAgLy8gTyB2YWxvciBpbmZvcm1hZG8gZGV2ZSBzZXIgZW50cmUgYDI0YCBlIGA2NGAuXG4gIEBJbnB1dCgncC1zdGVwLXNpemUnKSBzZXQgc3RlcFNpemUodmFsdWU6IG51bWJlcikge1xuICAgIHRoaXMuX3N0ZXBTaXplID1cbiAgICAgIHZhbHVlID49IHBvU3RlcHBlclN0ZXBTaXplRGVmYXVsdCAmJiB2YWx1ZSA8PSBwb1N0ZXBwZXJTdGVwU2l6ZU1heCA/IHZhbHVlIDogcG9TdGVwcGVyU3RlcFNpemVEZWZhdWx0O1xuICB9XG5cbiAgZ2V0IHN0ZXBTaXplKCk6IG51bWJlciB7XG4gICAgcmV0dXJuIHRoaXMuX3N0ZXBTaXplO1xuICB9XG5cbiAgZ2V0IGhhbGZTdGVwU2l6ZSgpOiBudW1iZXIge1xuICAgIHJldHVybiB0aGlzLnN0ZXBTaXplIC8gMjtcbiAgfVxuXG4gIGdldCBpc1ZlcnRpY2FsT3JpZW50YXRpb24oKTogYm9vbGVhbiB7XG4gICAgcmV0dXJuIHRoaXMub3JpZW50YXRpb24gPT09IFBvU3RlcHBlck9yaWVudGF0aW9uLlZlcnRpY2FsO1xuICB9XG5cbiAgZ2V0IG1hcmdpbkhvcml6b250YWxCYXIoKTogbnVtYmVyIHtcbiAgICByZXR1cm4gdGhpcy5pc1ZlcnRpY2FsT3JpZW50YXRpb24gPyB1bmRlZmluZWQgOiB0aGlzLmhhbGZTdGVwU2l6ZTtcbiAgfVxuXG4gIGdldFN0YXR1c0NsYXNzKHN0YXR1czogc3RyaW5nKTogc3RyaW5nIHtcbiAgICBzd2l0Y2ggKHN0YXR1cykge1xuICAgICAgY2FzZSBQb1N0ZXBwZXJTdGF0dXMuQWN0aXZlOlxuICAgICAgICByZXR1cm4gJ3BvLXN0ZXBwZXItc3RlcC1hY3RpdmUnO1xuICAgICAgY2FzZSBQb1N0ZXBwZXJTdGF0dXMuRGlzYWJsZWQ6XG4gICAgICAgIHJldHVybiAncG8tc3RlcHBlci1zdGVwLWRpc2FibGVkJztcbiAgICAgIGNhc2UgUG9TdGVwcGVyU3RhdHVzLkRvbmU6XG4gICAgICAgIHJldHVybiAncG8tc3RlcHBlci1zdGVwLWRvbmUnO1xuICAgICAgY2FzZSBQb1N0ZXBwZXJTdGF0dXMuRXJyb3I6XG4gICAgICAgIHJldHVybiAncG8tc3RlcHBlci1zdGVwLWVycm9yJztcbiAgICAgIGRlZmF1bHQ6XG4gICAgICAgIHJldHVybiAncG8tc3RlcHBlci1zdGVwLWRlZmF1bHQnO1xuICAgIH1cbiAgfVxuXG4gIG9uQ2xpY2soKTogdm9pZCB7XG4gICAgaWYgKHRoaXMuc3RhdHVzICE9PSBQb1N0ZXBwZXJTdGF0dXMuRGlzYWJsZWQpIHtcbiAgICAgIHRoaXMuY2xpY2suZW1pdCgpO1xuICAgIH1cbiAgfVxuXG4gIG9uRW50ZXIoKTogdm9pZCB7XG4gICAgaWYgKHRoaXMuc3RhdHVzICE9PSBQb1N0ZXBwZXJTdGF0dXMuRGlzYWJsZWQpIHtcbiAgICAgIHRoaXMuZW50ZXIuZW1pdCgpO1xuICAgIH1cbiAgfVxufVxuIl19
116
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicG8tc3RlcHBlci1zdGVwLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3VpL3NyYy9saWIvY29tcG9uZW50cy9wby1zdGVwcGVyL3BvLXN0ZXBwZXItc3RlcC9wby1zdGVwcGVyLXN0ZXAuY29tcG9uZW50LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxTQUFTLEVBQUUsWUFBWSxFQUFFLEtBQUssRUFBRSxNQUFNLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFFdkUsT0FBTyxFQUFFLGVBQWUsRUFBRSxnQkFBZ0IsRUFBRSxRQUFRLEVBQUUsTUFBTSx1QkFBdUIsQ0FBQztBQUNwRixPQUFPLEVBQUUsZUFBZSxFQUFFLE1BQU0sc0RBQXNELENBQUM7QUFDdkYsT0FBTyxFQUFFLG9CQUFvQixFQUFFLE1BQU0sc0NBQXNDLENBQUM7QUFDNUUsT0FBTyxFQUFFLGVBQWUsRUFBRSxNQUFNLGlDQUFpQyxDQUFDO0FBRWxFLE1BQU0sd0JBQXdCLEdBQUcsRUFBRSxDQUFDO0FBQ3BDLE1BQU0sb0JBQW9CLEdBQUcsRUFBRSxDQUFDO0FBQ2hDLE1BQU0scUJBQXFCLEdBQUc7SUFDNUIsRUFBRSxFQUFFLEVBQUUsS0FBSyxFQUFFLE1BQU0sRUFBRTtJQUNyQixFQUFFLEVBQUUsRUFBRSxLQUFLLEVBQUUsTUFBTSxFQUFFO0lBQ3JCLEVBQUUsRUFBRSxFQUFFLEtBQUssRUFBRSxPQUFPLEVBQUU7Q0FDdkIsQ0FBQztBQUVGOzs7Ozs7R0FNRztBQUtILE1BQU0sT0FBTyxzQkFBc0I7SUFKbkM7UUFjRSw4RkFBOEY7UUFDdkUsY0FBUyxHQUFHLElBQUksWUFBWSxFQUFPLENBQUM7UUFFM0QsK0NBQStDO1FBQzVCLFVBQUssR0FBRyxJQUFJLFlBQVksRUFBTyxDQUFDO1FBRW5ELDJFQUEyRTtRQUN4RCxVQUFLLEdBQUcsSUFBSSxZQUFZLEVBQU8sQ0FBQztRQUUxQyxhQUFR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LEVBQUUsQ0FBQztTQUNuQjtJQUNILENBQUM7OztZQS9HRixTQUFTLFNBQUM7Z0JBQ1QsUUFBUSxFQUFFLGlCQUFpQjtnQkFDM0Isb29DQUE2QzthQUM5Qzs7OzRCQUdFLEtBQUssU0FBQyxrQkFBa0I7MEJBR3hCLEtBQUssU0FBQyxlQUFlO3lCQUdyQixLQUFLLFNBQUMsZUFBZTt3QkFHckIsTUFBTSxTQUFDLGFBQWE7b0JBR3BCLE1BQU0sU0FBQyxTQUFTO29CQUdoQixNQUFNLFNBQUMsU0FBUztvQkFhaEIsS0FBSyxTQUFDLFNBQVM7cUJBU2YsS0FBSyxTQUFDLFVBQVU7d0JBWWhCLEtBQUssU0FBQyxjQUFjO3VCQVVwQixLQUFLLFNBQUMsYUFBYSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENvbXBvbmVudCwgRXZlbnRFbWl0dGVyLCBJbnB1dCwgT3V0cHV0IH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5cbmltcG9ydCB7IGJyb3dzZXJMYW5ndWFnZSwgY29udmVydFRvQm9vbGVhbiwgaXNUeXBlb2YgfSBmcm9tICcuLy4uLy4uLy4uL3V0aWxzL3V0aWwnO1xuaW1wb3J0IHsgcG9Mb2NhbGVEZWZhdWx0IH0gZnJvbSAnLi8uLi8uLi8uLi9zZXJ2aWNlcy9wby1sYW5ndWFnZS9wby1sYW5ndWFnZS5jb25zdGFudCc7XG5pbXBvcnQgeyBQb1N0ZXBwZXJPcmllbnRhdGlvbiB9IGZyb20gJy4uL2VudW1zL3BvLXN0ZXBwZXItb3JpZW50YXRpb24uZW51bSc7XG5pbXBvcnQgeyBQb1N0ZXBwZXJTdGF0dXMgfSBmcm9tICcuLi9lbnVtcy9wby1zdGVwcGVyLXN0YXR1cy5lbnVtJztcblxuY29uc3QgcG9TdGVwcGVyU3RlcFNpemVEZWZhdWx0ID0gMjQ7XG5jb25zdCBwb1N0ZXBwZXJTdGVwU2l6ZU1heCA9IDY0O1xuY29uc3QgcG9TdGVwTGl0ZXJhbHNEZWZhdWx0ID0ge1xuICBlbjogeyBsYWJlbDogJ1N0ZXAnIH0sXG4gIGVzOiB7IGxhYmVsOiAnUGFzbycgfSxcbiAgcHQ6IHsgbGFiZWw6ICdQYXNzbycgfVxufTtcblxuLyoqXG4gKiBAZG9jc1ByaXZhdGVcbiAqXG4gKiBAZGVzY3JpcHRpb25cbiAqXG4gKiBDb21wb25lbnRlIHF1ZSByZXByZXNlbnRhIHVtICpzdGVwKiBjb250ZW5kbyBhcyBsaWdhw6fDtWVzIGRhcyBsYXRlcmFpcyAoYHBvLXN0ZXBwZXItc3RlcC1iYXJgKSBlIGEgbGFiZWwuXG4gKi9cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ3BvLXN0ZXBwZXItc3RlcCcsXG4gIHRlbXBsYXRlVXJsOiAncG8tc3RlcHBlci1zdGVwLmNvbXBvbmVudC5odG1sJ1xufSlcbmV4cG9ydCBjbGFzcyBQb1N0ZXBwZXJTdGVwQ29tcG9uZW50IHtcbiAgLy8gQ29udGXDumRvIHF1ZSBzZXLDoSByZXBhc3NhZG8gcGFyYSBvIGNvbXBvbmVudGUgYHAtY2lyY2xlLWNvbnRlbnRgIGF0cmF2w6lzIGRhIHByb3ByaWVkYWRlIGBwLWNvbnRlbnRgLlxuICBASW5wdXQoJ3AtY2lyY2xlLWNvbnRlbnQnKSBjaXJjbGVDb250ZW50OiBhbnk7XG5cbiAgLy8gRGVmaW5lIGEgb3JpZW50YcOnw6NvIGRlIGV4aWJpw6fDo28uXG4gIEBJbnB1dCgncC1vcmllbnRhdGlvbicpIG9yaWVudGF0aW9uOiBQb1N0ZXBwZXJPcmllbnRhdGlvbjtcblxuICAvLyBJbmZvcm1hIG8gc3RhdHVzIGRhIHByb3hpbWEgZXRhcGEuXG4gIEBJbnB1dCgncC1uZXh0LXN0YXR1cycpIG5leHRTdGF0dXM7XG5cbiAgLy8gRXZlbnRvIHF1ZSBzZXLDoSBlbWl0aWRvIHF1YW5kbyBvIHN0YXR1cyBkbyAqc3RlcCogZXN0aXZlciBhdGl2byAoYFBvU3RlcHBlclN0YXR1cy5BY3RpdmVgKS5cbiAgQE91dHB1dCgncC1hY3RpdmF0ZWQnKSBhY3RpdmF0ZWQgPSBuZXcgRXZlbnRFbWl0dGVyPGFueT4oKTtcblxuICAvLyBFdmVudG8gcXVlIHNlcsOhIGVtaXRpZG8gYW8gY2xpY2FyIG5vICpzdGVwKi5cbiAgQE91dHB1dCgncC1jbGljaycpIGNsaWNrID0gbmV3IEV2ZW50RW1pdHRlcjxhbnk+KCk7XG5cbiAgLy8gRXZlbnRvIHF1ZSBzZXLDoSBlbWl0aWRvIGFvIGZvY2FyIG5vICpzdGVwKiBlIHByZXNzaW9uYXIgYSB0ZWNsYSAqZW50ZXIqLlxuICBAT3V0cHV0KCdwLWVudGVyJykgZW50ZXIgPSBuZXcgRXZlbnRFbWl0dGVyPGFueT4oKTtcblxuICByZWFkb25seSBsaXRlcmFscyA9IHtcbiAgICAuLi5wb1N0ZXBMaXRlcmFsc0RlZmF1bHRbcG9Mb2NhbGVEZWZhdWx0XSxcbiAgICAuLi5wb1N0ZXBMaXRlcmFsc0RlZmF1bHRbYnJvd3Nlckxhbmd1YWdlKCldXG4gIH07XG5cbiAgcHJpdmF0ZSBfbGFiZWw6IHN0cmluZztcbiAgcHJpdmF0ZSBfc3RhdHVzOiBQb1N0ZXBwZXJTdGF0dXM7XG4gIHByaXZhdGUgX3N0ZXBJY29ucz86IGJvb2xlYW4gPSBmYWxzZTtcbiAgcHJpdmF0ZSBfc3RlcFNpemU6IG51bWJlciA9IHBvU3RlcHBlclN0ZXBTaXplRGVmYXVsdDtcblxuICAvLyBMYWJlbCBkbyAqc3RlcCouXG4gIEBJbnB1dCgncC1sYWJlbCcpIHNldCBsYWJlbCh2YWx1ZTogc3RyaW5nKSB7XG4gICAgdGhpcy5fbGFiZWwgPSBpc1R5cGVvZih2YWx1ZSwgJ3N0cmluZycpID8gdmFsdWUgOiBgJHt0aGlzLmxpdGVyYWxzLmxhYmVsfSAke3RoaXMuY2lyY2xlQ29udGVudH1gO1xuICB9XG5cbiAgZ2V0IGxhYmVsKCk6IHN0cmluZyB7XG4gICAgcmV0dXJuIHRoaXMuX2xhYmVsO1xuICB9XG5cbiAgLy8gRGVmaW5lIG8gZXN0YWRvIGRlIGV4aWJpw6fDo28uXG4gIEBJbnB1dCgncC1zdGF0dXMnKSBzZXQgc3RhdHVzKHZhbHVlOiBQb1N0ZXBwZXJTdGF0dXMpIHtcbiAgICB0aGlzLl9zdGF0dXMgPSAodmFsdWUgYXMgc3RyaW5nKSA/IHZhbHVlIDogdW5kZWZpbmVkO1xuXG4gICAgaWYgKHRoaXMuc3RhdHVzID09PSBQb1N0ZXBwZXJTdGF0dXMuQWN0aXZlKSB7XG4gICAgICB0aGlzLmFjdGl2YXRlZC5lbWl0KCk7XG4gICAgfVxuICB9XG5cbiAgZ2V0IHN0YXR1cygpOiBQb1N0ZXBwZXJTdGF0dXMge1xuICAgIHJldHVybiB0aGlzLl9zdGF0dXM7XG4gIH1cblxuICBASW5wdXQoJ3Atc3RlcC1pY29ucycpIHNldCBzdGVwSWNvbnMoc3RlcEljb25zOiBib29sZWFuKSB7XG4gICAgdGhpcy5fc3RlcEljb25zID0gY29udmVydFRvQm9vbGVhbihzdGVwSWNvbnMpO1xuICB9XG5cbiAgZ2V0IHN0ZXBJY29ucygpOiBib29sZWFuIHtcbiAgICByZXR1cm4gdGhpcy5fc3RlcEljb25zO1xuICB9XG5cbiAgLy8gVGFtYW5obyBkbyBgc3RlcGAgZW0gKnBpeGVscyosIHBvc3NpYmlsaXRhbmRvIHVtIG1haW9yIGRlc3RhcXVlLlxuICAvLyBPIHZhbG9yIGluZm9ybWFkbyBkZXZlIHNlciBlbnRyZSBgMjRgIGUgYDY0YC5cbiAgQElucHV0KCdwLXN0ZXAtc2l6ZScpIHNldCBzdGVwU2l6ZSh2YWx1ZTogbnVtYmVyKSB7XG4gICAgdGhpcy5fc3RlcFNpemUgPVxuICAgICAgdmFsdWUgPj0gcG9TdGVwcGVyU3RlcFNpemVEZWZhdWx0ICYmIHZhbHVlIDw9IHBvU3RlcHBlclN0ZXBTaXplTWF4ID8gdmFsdWUgOiBwb1N0ZXBwZXJTdGVwU2l6ZURlZmF1bHQ7XG4gIH1cblxuICBnZXQgc3RlcFNpemUoKTogbnVtYmVyIHtcbiAgICByZXR1cm4gdGhpcy5fc3RlcFNpemU7XG4gIH1cblxuICBnZXQgaGFsZlN0ZXBTaXplKCk6IG51bWJlciB7XG4gICAgcmV0dXJuIHRoaXMuc3RlcFNpemUgLyAyO1xuICB9XG5cbiAgZ2V0IGlzVmVydGljYWxPcmllbnRhdGlvbigpOiBib29sZWFuIHtcbiAgICByZXR1cm4gdGhpcy5vcmllbnRhdGlvbiA9PT0gUG9TdGVwcGVyT3JpZW50YXRpb24uVmVydGljYWw7XG4gIH1cblxuICBnZXQgbWFyZ2luSG9yaXpvbnRhbEJhcigpOiBudW1iZXIge1xuICAgIHJldHVybiB0aGlzLmlzVmVydGljYWxPcmllbnRhdGlvbiA/IHVuZGVmaW5lZCA6IHRoaXMuaGFsZlN0ZXBTaXplO1xuICB9XG5cbiAgZ2V0U3RhdHVzQ2xhc3Moc3RhdHVzOiBzdHJpbmcpOiBzdHJpbmcge1xuICAgIHN3aXRjaCAoc3RhdHVzKSB7XG4gICAgICBjYXNlIFBvU3RlcHBlclN0YXR1cy5BY3RpdmU6XG4gICAgICAgIHJldHVybiAncG8tc3RlcHBlci1zdGVwLWRlZmF1bHQnO1xuICAgICAgY2FzZSBQb1N0ZXBwZXJTdGF0dXMuRGlzYWJsZWQ6XG4gICAgICAgIHJldHVybiAncG8tc3RlcHBlci1zdGVwLWRpc2FibGVkJztcbiAgICAgIGNhc2UgUG9TdGVwcGVyU3RhdHVzLkRvbmU6XG4gICAgICAgIHJldHVybiAncG8tc3RlcHBlci1zdGVwLWRlZmF1bHQnO1xuICAgICAgY2FzZSBQb1N0ZXBwZXJTdGF0dXMuRXJyb3I6XG4gICAgICAgIHJldHVybiAncG8tc3RlcHBlci1zdGVwLWVycm9yJztcbiAgICAgIGRlZmF1bHQ6XG4gICAgICAgIHJldHVybiAncG8tc3RlcHBlci1zdGVwLWRlZmF1bHQnO1xuICAgIH1cbiAgfVxuXG4gIG9uQ2xpY2soKTogdm9pZCB7XG4gICAgaWYgKHRoaXMuc3RhdHVzICE9PSBQb1N0ZXBwZXJTdGF0dXMuRGlzYWJsZWQpIHtcbiAgICAgIHRoaXMuY2xpY2suZW1pdCgpO1xuICAgIH1cbiAgfVxuXG4gIG9uRW50ZXIoKTogdm9pZCB7XG4gICAgaWYgKHRoaXMuc3RhdHVzICE9PSBQb1N0ZXBwZXJTdGF0dXMuRGlzYWJsZWQpIHtcbiAgICAgIHRoaXMuZW50ZXIuZW1pdCgpO1xuICAgIH1cbiAgfVxufVxuIl19
@@ -23,6 +23,12 @@ import { PoStepperBaseComponent } from './po-stepper-base.component';
23
23
  * <file name="sample-po-stepper-sales/sample-po-stepper-sales.component.html"> </file>
24
24
  * <file name="sample-po-stepper-sales/sample-po-stepper-sales.component.ts"> </file>
25
25
  * </example>
26
+ *
27
+ * <example name="po-stepper-active" title="PO Stepper - Active">
28
+ * <file name="sample-po-stepper-active/sample-po-stepper-active.component.html"> </file>
29
+ * <file name="sample-po-stepper-active/sample-po-stepper-active.component.ts"> </file>
30
+ * <file name="sample-po-stepper-active/sample-po-stepper-active.service.ts"> </file>
31
+ * </example>
26
32
  */
27
33
  export class PoStepperComponent extends PoStepperBaseComponent {
28
34
  constructor(changeDetector) {
@@ -57,11 +63,7 @@ export class PoStepperComponent extends PoStepperBaseComponent {
57
63
  }
58
64
  const stepsArray = this.getPoSteps();
59
65
  const step = stepsArray[index];
60
- const isDisabledStep = step.status === PoStepperStatus.Disabled;
61
- const isErrorStep = step.status === PoStepperStatus.Error;
62
- if (!isDisabledStep || isErrorStep) {
63
- this.changeStep(index, step);
64
- }
66
+ this.changeStep(index, step);
65
67
  }
66
68
  /**
67
69
  * Ativa o primeiro *step*.
@@ -123,8 +125,12 @@ export class PoStepperComponent extends PoStepperBaseComponent {
123
125
  }
124
126
  onStepActive(step) {
125
127
  this.currentActiveStep = step;
126
- this.previousActiveStep = this.poSteps.find(stepChild => stepChild.status === PoStepperStatus.Active && stepChild.id !== step.id);
127
- this.setPreviousStepAsDone();
128
+ const { stepIndex } = this.getStepsAndIndex(this.currentActiveStep);
129
+ this.poSteps.forEach((stepChild, i) => {
130
+ if (i < stepIndex) {
131
+ stepChild.status = PoStepperStatus.Done;
132
+ }
133
+ });
128
134
  }
129
135
  trackByFn(step) {
130
136
  return step.id;
@@ -197,16 +203,11 @@ export class PoStepperComponent extends PoStepperBaseComponent {
197
203
  steps[nextIndex].status = PoStepperStatus.Default;
198
204
  }
199
205
  }
200
- setPreviousStepAsDone() {
201
- if (this.previousActiveStep) {
202
- this.previousActiveStep.status = PoStepperStatus.Done;
203
- }
204
- }
205
206
  }
206
207
  PoStepperComponent.decorators = [
207
208
  { type: Component, args: [{
208
209
  selector: 'po-stepper',
209
- template: "<div class=\"po-stepper po-stepper-{{ orientation }}\">\n <div class=\"po-stepper-container\">\n <po-stepper-step\n *ngFor=\"let step of stepList; let index = index; trackBy: trackByFn\"\n class=\"po-stepper-step-position\"\n [p-circle-content]=\"index + 1\"\n [p-label]=\"step.label\"\n [p-orientation]=\"orientation\"\n [p-status]=\"step.status\"\n [p-step-icons]=\"stepIcons\"\n [p-step-size]=\"stepSize\"\n (p-activated)=\"onStepActive(step)\"\n (p-click)=\"changeStep(index, step)\"\n (p-enter)=\"changeStep(index, step)\"\n >\n </po-stepper-step>\n </div>\n\n <div *ngIf=\"usePoSteps\" class=\"po-stepper-content\">\n <ng-content></ng-content>\n </div>\n</div>\n"
210
+ template: "<div class=\"po-stepper po-stepper-{{ orientation }}\">\n <div class=\"po-stepper-container\">\n <po-stepper-step\n *ngFor=\"let step of stepList; let index = index; trackBy: trackByFn\"\n class=\"po-stepper-step-position\"\n [p-circle-content]=\"index + 1\"\n [p-label]=\"step.label\"\n [p-orientation]=\"orientation\"\n [p-status]=\"step.status\"\n [p-step-icons]=\"stepIcons\"\n [p-step-size]=\"stepSize\"\n [p-next-status]=\"poSteps.get(index + 1)?.status\"\n (p-activated)=\"onStepActive(step)\"\n (p-click)=\"changeStep(index, step)\"\n (p-enter)=\"changeStep(index, step)\"\n >\n </po-stepper-step>\n </div>\n\n <div *ngIf=\"usePoSteps\" class=\"po-stepper-content\">\n <ng-content></ng-content>\n </div>\n</div>\n"
210
211
  },] }
211
212
  ];
212
213
  PoStepperComponent.ctorParameters = () => [
@@ -215,4 +216,4 @@ PoStepperComponent.ctorParameters = () => [
215
216
  PoStepperComponent.propDecorators = {
216
217
  poSteps: [{ type: ContentChildren, args: [PoStepComponent,] }]
217
218
  };
218
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicG8tc3RlcHBlci5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy91aS9zcmMvbGliL2NvbXBvbmVudHMvcG8tc3RlcHBlci9wby1zdGVwcGVyLmNvbXBvbmVudC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQW9CLGlCQUFpQixFQUFFLFNBQVMsRUFBRSxlQUFlLEVBQWEsTUFBTSxlQUFlLENBQUM7QUFFM0csT0FBTyxFQUFFLFVBQVUsRUFBRSxFQUFFLEVBQUUsVUFBVSxFQUFFLE1BQU0sTUFBTSxDQUFDO0FBQ2xELE9BQU8sRUFBRSxJQUFJLEVBQUUsR0FBRyxFQUFFLFVBQVUsRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBRXZELE9BQU8sRUFBRSxlQUFlLEVBQUUsTUFBTSxnQ0FBZ0MsQ0FBQztBQUNqRSxPQUFPLEVBQUUsZUFBZSxFQUFFLE1BQU0sNkJBQTZCLENBQUM7QUFDOUQsT0FBTyxFQUFFLHNCQUFzQixFQUFFLE1BQU0sNkJBQTZCLENBQUM7QUFHckU7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7R0FtQkc7QUFLSCxNQUFNLE9BQU8sa0JBQW1CLFNBQVEsc0JBQXNCO0lBa0I1RCxZQUFvQixjQUFpQztRQUNuRCxLQUFLLEVBQUUsQ0FBQztRQURVLG1CQUFjLEdBQWQsY0FBYyxDQUFtQjtJQUVyRCxDQUFDO0lBZEQsSUFBSSxnQkFBZ0I7UUFDbEIsT0FBTyxJQUFJLENBQUMsSUFBSSxHQUFHLENBQUMsQ0FBQztJQUN2QixDQUFDO0lBRUQsSUFBSSxRQUFRO1FBQ1YsT0FBTyxDQUFDLElBQUksQ0FBQyxVQUFVLElBQUksSUFBSSxDQUFDLE9BQU8sQ0FBQyxJQUFJLElBQUksQ0FBQyxLQUFLLENBQUM7SUFDekQsQ0FBQztJQUVELElBQUksVUFBVTtRQUNaLE9BQU8sQ0FBQyxDQUFDLElBQUksQ0FBQyxPQUFPLENBQUMsTUFBTSxDQUFDO0lBQy9CLENBQUM7SUFNRCxr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UUFBUSxFQUFFLFlBQVk7Z0JBQ3RCLCt1QkFBMEM7YUFDM0M7OztZQWpDMEIsaUJBQWlCOzs7c0JBbUN6QyxlQUFlLFNBQUMsZUFBZSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEFmdGVyQ29udGVudEluaXQsIENoYW5nZURldGVjdG9yUmVmLCBDb21wb25lbnQsIENvbnRlbnRDaGlsZHJlbiwgUXVlcnlMaXN0IH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5cbmltcG9ydCB7IE9ic2VydmFibGUsIG9mLCB0aHJvd0Vycm9yIH0gZnJvbSAncnhqcyc7XG5pbXBvcnQgeyB0YWtlLCB0YXAsIGNhdGNoRXJyb3IgfSBmcm9tICdyeGpzL29wZXJhdG9ycyc7XG5cbmltcG9ydCB7IFBvU3RlcHBlclN0YXR1cyB9IGZyb20gJy4vZW51bXMvcG8tc3RlcHBlci1zdGF0dXMuZW51bSc7XG5pbXBvcnQgeyBQb1N0ZXBDb21wb25lbnQgfSBmcm9tICcuL3BvLXN0ZXAvcG8tc3RlcC5jb21wb25lbnQnO1xuaW1wb3J0IHsgUG9TdGVwcGVyQmFzZUNvbXBvbmVudCB9IGZyb20gJy4vcG8tc3RlcHBlci1iYXNlLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBQb1N0ZXBwZXJJdGVtIH0gZnJvbSAnLi9wby1zdGVwcGVyLWl0ZW0uaW50ZXJmYWNlJztcblxuLyoqXG4gKiBAZG9jc0V4dGVuZHMgUG9TdGVwcGVyQmFzZUNvbXBvbmVudFxuICpcbiAqIEBleGFtcGxlXG4gKlxuICogPGV4YW1wbGUgbmFtZT1cInBvLXN0ZXBwZXItYmFzaWNcIiB0aXRsZT1cIlBPIFN0ZXBwZXIgQmFzaWNcIj5cbiAqICA8ZmlsZSBuYW1lPVwic2FtcGxlLXBvLXN0ZXBwZXItYmFzaWMvc2FtcGxlLXBvLXN0ZXBwZXItYmFzaWMuY29tcG9uZW50Lmh0bWxcIj4gPC9maWxlPlxuICogIDxmaWxlIG5hbWU9XCJzYW1wbGUtcG8tc3RlcHBlci1iYXNpYy9zYW1wbGUtcG8tc3RlcHBlci1iYXNpYy5jb21wb25lbnQudHNcIj4gPC9maWxlPlxuICogPC9leGFtcGxlPlxuICpcbiAqIDxleGFtcGxlIG5hbWU9XCJwby1zdGVwcGVyLWxhYnNcIiB0aXRsZT1cIlBPIFN0ZXBwZXIgTGFic1wiPlxuICogIDxmaWxlIG5hbWU9XCJzYW1wbGUtcG8tc3RlcHBlci1sYWJzL3NhbXBsZS1wby1zdGVwcGVyLWxhYnMuY29tcG9uZW50Lmh0bWxcIj4gPC9maWxlPlxuICogIDxmaWxlIG5hbWU9XCJzYW1wbGUtcG8tc3RlcHBlci1sYWJzL3NhbXBsZS1wby1zdGVwcGVyLWxhYnMuY29tcG9uZW50LnRzXCI+IDwvZmlsZT5cbiAqIDwvZXhhbXBsZT5cbiAqXG4gKiA8ZXhhbXBsZSBuYW1lPVwicG8tc3RlcHBlci1zYWxlc1wiIHRpdGxlPVwiUE8gU3RlcHBlciAtIFNhbGVzXCI+XG4gKiAgPGZpbGUgbmFtZT1cInNhbXBsZS1wby1zdGVwcGVyLXNhbGVzL3NhbXBsZS1wby1zdGVwcGVyLXNhbGVzLmNvbXBvbmVudC5odG1sXCI+IDwvZmlsZT5cbiAqICA8ZmlsZSBuYW1lPVwic2FtcGxlLXBvLXN0ZXBwZXItc2FsZXMvc2FtcGxlLXBvLXN0ZXBwZXItc2FsZXMuY29tcG9uZW50LnRzXCI+IDwvZmlsZT5cbiAqIDwvZXhhbXBsZT5cbiAqL1xuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAncG8tc3RlcHBlcicsXG4gIHRlbXBsYXRlVXJsOiAnLi9wby1zdGVwcGVyLmNvbXBvbmVudC5odG1sJ1xufSlcbmV4cG9ydCBjbGFzcyBQb1N0ZXBwZXJDb21wb25lbnQgZXh0ZW5kcyBQb1N0ZXBwZXJCYXNlQ29tcG9uZW50IGltcGxlbWVudHMgQWZ0ZXJDb250ZW50SW5pdCB7XG4gIEBDb250ZW50Q2hpbGRyZW4oUG9TdGVwQ29tcG9uZW50KSBwb1N0ZXBzOiBRdWVyeUxpc3Q8UG9TdGVwQ29tcG9uZW50PjtcblxuICBwcml2YXRlIGN1cnJlbnRBY3RpdmVTdGVwOiBQb1N0ZXBDb21wb25lbnQ7XG4gIHByaXZhdGUgcHJldmlvdXNBY3RpdmVTdGVwOiBQb1N0ZXBDb21wb25lbnQ7XG5cbiAgZ2V0IGN1cnJlbnRTdGVwSW5kZXgoKTogbnVtYmVyIHtcbiAgICByZXR1cm4gdGhpcy5zdGVwIC0gMTtcbiAgfVxuXG4gIGdldCBzdGVwTGlzdCgpOiBRdWVyeUxpc3Q8UG9TdGVwQ29tcG9uZW50PiB8IEFycmF5PFBvU3RlcHBlckl0ZW0+IHtcbiAgICByZXR1cm4gKHRoaXMudXNlUG9TdGVwcyAmJiB0aGlzLnBvU3RlcHMpIHx8IHRoaXMuc3RlcHM7XG4gIH1cblxuICBnZXQgdXNlUG9TdGVwcygpOiBib29sZWFuIHtcbiAgICByZXR1cm4gISF0aGlzLnBvU3RlcHMubGVuZ3RoO1xuICB9XG5cbiAgY29uc3RydWN0b3IocHJpdmF0ZSBjaGFuZ2VEZXRlY3RvcjogQ2hhbmdlRGV0ZWN0b3JSZWYpIHtcbiAgICBzdXBlcigpO1xuICB9XG5cbiAgbmdBZnRlckNvbnRlbnRJbml0KCkge1xuICAgIHRoaXMuYWN0aXZlRmlyc3RTdGVwKCk7XG5cbiAgICB0aGlzLnBvU3RlcHMuY2hhbmdlcy5zdWJzY3JpYmUoKCkgPT4ge1xuICAgICAgdGhpcy5jb250cm9sU3RlcHNTdGF0dXMoMCwgdGhpcy5wb1N0ZXBzLmZpcnN0KTtcbiAgICB9KTtcbiAgfVxuXG4gIC8qKlxuICAgKiBBbHRlcmEgbyBzdGF0dXMgZG8gKnN0ZXAqIHBhcmEgYXRpdm8uXG4gICAqXG4gICAqID4gRXN0ZSBtw6l0b2RvIMOpIHZhbGlkbyBhcGVuYXMgcGFyYSBhcyBpbXBsZW1lbnRhw6fDtWVzIHF1ZSB1dGlsaXphbSBvIGNvbXBvbmVudGUgWyoqcG8tc3RlcCoqXSgvZG9jdW1lbnRhdGlvbi9wby1zdGVwKS5cbiAgICpcbiAgICogQHBhcmFtIHtudW1iZXJ9IGluZGV4IMONbmRpY2UgZG8gYHBvLXN0ZXBgIHF1ZSBzZSBkZXNlamEgYXRpdmFyLlxuICAgKi9cbiAgYWN0aXZlKGluZGV4OiBudW1iZXIpOiB2b2lkIHtcbiAgICBpZiAoIXRoaXMudXNlUG9TdGVwcykge1xuICAgICAgcmV0dXJuO1xuICAgIH1cblxuICAgIGNvbnN0IHN0ZXBzQXJyYXkgPSB0aGlzLmdldFBvU3RlcHMoKTtcbiAgICBjb25zdCBzdGVwID0gc3RlcHNBcnJheVtpbmRleF07XG4gICAgY29uc3QgaXNEaXNhYmxlZFN0ZXAgPSBzdGVwLnN0YXR1cyA9PT0gUG9TdGVwcGVyU3RhdHVzLkRpc2FibGVkO1xuICAgIGNvbnN0IGlzRXJyb3JTdGVwID0gc3RlcC5zdGF0dXMgPT09IFBvU3RlcHBlclN0YXR1cy5FcnJvcjtcblxuICAgIGlmICghaXNEaXNhYmxlZFN0ZXAgfHwgaXNFcnJvclN0ZXApIHtcbiAgICAgIHRoaXMuY2hhbmdlU3RlcChpbmRleCwgc3RlcCk7XG4gICAgfVxuICB9XG5cbiAgLyoqXG4gICAqIEF0aXZhIG8gcHJpbWVpcm8gKnN0ZXAqLlxuICAgKlxuICAgKiA+IEVzdGUgbcOpdG9kbyDDqSB2YWxpZG8gYXBlbmFzIHBhcmEgYXMgaW1wbGVtZW50YcOnw7VlcyBxdWUgdXRpbGl6YW0gbyBjb21wb25lbnRlIFsqKnBvLXN0ZXAqKl0oL2RvY3VtZW50YXRpb24vcG8tc3RlcCkuXG4gICAqL1xuICBmaXJzdCgpOiB2b2lkIHtcbiAgICBpZiAoIXRoaXMudXNlUG9TdGVwcykge1xuICAgICAgcmV0dXJuO1xuICAgIH1cblxuICAgIGNvbnN0IGZpcnN0U3RlcCA9IHRoaXMucG9TdGVwcy5maXJzdDtcbiAgICBjb25zdCBmaXJzdFN0ZXBJbmRleCA9IDA7XG5cbiAgICB0aGlzLmNoYW5nZVN0ZXAoZmlyc3RTdGVwSW5kZXgsIGZpcnN0U3RlcCk7XG4gIH1cblxuICAvKipcbiAgICogQXRpdmEgbyBwcsOzeGltbyAqc3RlcCouXG4gICAqXG4gICAqID4gRXN0ZSBtw6l0b2RvIMOpIHZhbGlkbyBhcGVuYXMgcGFyYSBhcyBpbXBsZW1lbnRhw6fDtWVzIHF1ZSB1dGlsaXphbSBvIGNvbXBvbmVudGUgWyoqcG8tc3RlcCoqXSgvZG9jdW1lbnRhdGlvbi9wby1zdGVwKS5cbiAgICovXG4gIG5leHQoKTogdm9pZCB7XG4gICAgaWYgKCF0aGlzLnVzZVBvU3RlcHMpIHtcbiAgICAgIHJldHVybjtcbiAgICB9XG5cbiAgICBjb25zdCB7IHN0ZXBzLCBzdGVwSW5kZXggfSA9IHRoaXMuZ2V0U3RlcHNBbmRJbmRleCh0aGlzLmN1cnJlbnRBY3RpdmVTdGVwKTtcbiAgICBjb25zdCBuZXh0SW5kZXggPSBzdGVwSW5kZXggKyAxO1xuICAgIGNvbnN0IG5leHRTdGVwID0gc3RlcHNbbmV4dEluZGV4XTtcblxuICAgIHRoaXMuY2hhbmdlU3RlcChuZXh0SW5kZXgsIG5leHRTdGVwKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBBdGl2YSBvICpzdGVwKiBhbnRlcmlvci5cbiAgICpcbiAgICogPiBFc3RlIG3DqXRvZG8gw6kgdmFsaWRvIGFwZW5hcyBwYXJhIGFzIGltcGxlbWVudGHDp8O1ZXMgcXVlIHV0aWxpemFtIG8gY29tcG9uZW50ZSBbKipwby1zdGVwKipdKC9kb2N1bWVudGF0aW9uL3BvLXN0ZXApLlxuICAgKi9cbiAgcHJldmlvdXMoKTogdm9pZCB7XG4gICAgaWYgKCF0aGlzLnVzZVBvU3RlcHMpIHtcbiAgICAgIHJldHVybjtcbiAgICB9XG5cbiAgICBjb25zdCB7IHN0ZXBzLCBzdGVwSW5kZXggfSA9IHRoaXMuZ2V0U3RlcHNBbmRJbmRleCh0aGlzLmN1cnJlbnRBY3RpdmVTdGVwKTtcbiAgICBjb25zdCBwcmV2aW91c0luZGV4ID0gc3RlcEluZGV4IC0gMTtcbiAgICBjb25zdCBwcmV2aW91c1N0ZXAgPSBzdGVwc1twcmV2aW91c0luZGV4XTtcblxuICAgIHRoaXMuY2hhbmdlU3RlcChwcmV2aW91c0luZGV4LCBwcmV2aW91c1N0ZXApO1xuICB9XG5cbiAgY2hhbmdlU3RlcChzdGVwSW5kZXg6IG51bWJlciwgc3RlcD86IFBvU3RlcENvbXBvbmVudCk6IHZvaWQge1xuICAgIHRoaXMuYWxsb3dOZXh0U3RlcChzdGVwSW5kZXgpXG4gICAgICAucGlwZSh0YWtlKDEpKVxuICAgICAgLnN1YnNjcmliZShuZXh0U3RlcEFsbG93ZWQgPT4ge1xuICAgICAgICBpZiAobmV4dFN0ZXBBbGxvd2VkKSB7XG4gICAgICAgICAgY29uc3QgaXNEaWZmZXJlbnRTdGVwID0gIXRoaXMuY3VycmVudEFjdGl2ZVN0ZXAgfHwgc3RlcC5pZCAhPT0gdGhpcy5jdXJyZW50QWN0aXZlU3RlcC5pZDtcblxuICAgICAgICAgIGlmICh0aGlzLnVzZVBvU3RlcHMgJiYgaXNEaWZmZXJlbnRTdGVwKSB7XG4gICAgICAgICAgICB0aGlzLmNvbnRyb2xTdGVwc1N0YXR1cyhzdGVwSW5kZXgsIHN0ZXApO1xuICAgICAgICAgICAgdGhpcy5vbkNoYW5nZVN0ZXAuZW1pdChzdGVwKTtcbiAgICAgICAgICB9IGVsc2UgaWYgKCF0aGlzLnVzZVBvU3RlcHMgJiYgc3RlcEluZGV4ICE9PSB0aGlzLmN1cnJlbnRTdGVwSW5kZXgpIHtcbiAgICAgICAgICAgIC8vIGlmIHBhcmEgdHJhdGFtZW50byBkbyBtb2RlbG8gYW50aWdvIGRvIHBvLXN0ZXBwZXJcbiAgICAgICAgICAgIHRoaXMub25DaGFuZ2VTdGVwLmVtaXQoc3RlcEluZGV4ICsgMSk7XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9KTtcbiAgfVxuXG4gIG9uU3RlcEFjdGl2ZShzdGVwOiBQb1N0ZXBDb21wb25lbnQpIHtcbiAgICB0aGlzLmN1cnJlbnRBY3RpdmVTdGVwID0gc3RlcDtcblxuICAgIHRoaXMucHJldmlvdXNBY3RpdmVTdGVwID0gdGhpcy5wb1N0ZXBzLmZpbmQoXG4gICAgICBzdGVwQ2hpbGQgPT4gc3RlcENoaWxkLnN0YXR1cyA9PT0gUG9TdGVwcGVyU3RhdHVzLkFjdGl2ZSAmJiBzdGVwQ2hpbGQuaWQgIT09IHN0ZXAuaWRcbiAgICApO1xuXG4gICAgdGhpcy5zZXRQcmV2aW91c1N0ZXBBc0RvbmUoKTtcbiAgfVxuXG4gIHRyYWNrQnlGbihzdGVwOiBQb1N0ZXBDb21wb25lbnQpIHtcbiAgICByZXR1cm4gc3RlcC5pZDtcbiAgfVxuXG4gIHByaXZhdGUgYWN0aXZlRmlyc3RTdGVwKCkge1xuICAgIGNvbnN0IGhhc1N0ZXBBY3RpdmUgPSB0aGlzLnBvU3RlcHMuc29tZShwb1N0ZXAgPT4gcG9TdGVwLnN0YXR1cyA9PT0gUG9TdGVwcGVyU3RhdHVzLkFjdGl2ZSk7XG5cbiAgICBpZiAodGhpcy51c2VQb1N0ZXBzICYmICFoYXNTdGVwQWN0aXZlKSB7XG4gICAgICB0aGlzLmNoYW5nZVN0ZXAoMCwgdGhpcy5wb1N0ZXBzLmZpcnN0KTtcbiAgICB9XG4gIH1cblxuICBwcml2YXRlIGFsbG93TmV4dFN0ZXAobmV4dFN0ZXBJbmRleDogbnVtYmVyKTogT2JzZXJ2YWJsZTxib29sZWFuPiB7XG4gICAgaWYgKCF0aGlzLnNlcXVlbnRpYWwpIHtcbiAgICAgIHJldHVybiBvZih0cnVlKTtcbiAgICB9XG5cbiAgICBjb25zdCBpc0FsbG93TmV4dFN0ZXAkID0gdGhpcy51c2VQb1N0ZXBzXG4gICAgICA/IHRoaXMuaXNCZWZvcmVTdGVwKG5leHRTdGVwSW5kZXgpIHx8IHRoaXMuY2FuQWN0aXZlTmV4dFN0ZXAodGhpcy5jdXJyZW50QWN0aXZlU3RlcClcbiAgICAgIDogdGhpcy5zdGVwcy5zbGljZSh0aGlzLnN0ZXAsIG5leHRTdGVwSW5kZXgpLmV2ZXJ5KHN0ZXAgPT4gc3RlcC5zdGF0dXMgPT09IFBvU3RlcHBlclN0YXR1cy5Eb25lKTtcblxuICAgIHJldHVybiB0eXBlb2YgaXNBbGxvd05leHRTdGVwJCA9PT0gJ2Jvb2xlYW4nID8gb2YoaXNBbGxvd05leHRTdGVwJCkgOiBpc0FsbG93TmV4dFN0ZXAkO1xuICB9XG5cbiAgcHJpdmF0ZSBjYW5BY3RpdmVOZXh0U3RlcChjdXJyZW50QWN0aXZlU3RlcCA9IDxQb1N0ZXBDb21wb25lbnQ+e30pOiBPYnNlcnZhYmxlPGJvb2xlYW4+IHtcbiAgICBpZiAoIWN1cnJlbnRBY3RpdmVTdGVwLmNhbkFjdGl2ZU5leHRTdGVwKSB7XG4gICAgICByZXR1cm4gb2YodHJ1ZSk7XG4gICAgfVxuXG4gICAgY29uc3QgY2FuQWN0aXZlTmV4dFN0ZXAgPSBjdXJyZW50QWN0aXZlU3RlcC5jYW5BY3RpdmVOZXh0U3RlcChjdXJyZW50QWN0aXZlU3RlcCk7XG5cbiAgICBjb25zdCBjYW5BY3RpdmVOZXh0U3RlcCQgPSBjYW5BY3RpdmVOZXh0U3RlcCBpbnN0YW5jZW9mIE9ic2VydmFibGUgPyBjYW5BY3RpdmVOZXh0U3RlcCA6IG9mKGNhbkFjdGl2ZU5leHRTdGVwKTtcblxuICAgIHJldHVybiBjYW5BY3RpdmVOZXh0U3RlcCQucGlwZShcbiAgICAgIHRhcChpc0NhbkFjdGl2ZU5leHRTdGVwID0+IHtcbiAgICAgICAgY3VycmVudEFjdGl2ZVN0ZXAuc3RhdHVzID0gdGhpcy5nZXRTdGVwcGVyU3RhdHVzQnlDYW5BY3RpdmUoaXNDYW5BY3RpdmVOZXh0U3RlcCk7XG4gICAgICB9KSxcbiAgICAgIGNhdGNoRXJyb3IoZXJyID0+IHtcbiAgICAgICAgY3VycmVudEFjdGl2ZVN0ZXAuc3RhdHVzID0gUG9TdGVwcGVyU3RhdHVzLkVycm9yO1xuXG4gICAgICAgIHJldHVybiB0aHJvd0Vycm9yKGVycik7XG4gICAgICB9KVxuICAgICk7XG4gIH1cblxuICBwcml2YXRlIGNvbnRyb2xTdGVwc1N0YXR1cyhzdGVwSW5kZXg6IG51bWJlciwgc3RlcDogUG9TdGVwQ29tcG9uZW50KTogdm9pZCB7XG4gICAgaWYgKHRoaXMudXNlUG9TdGVwcykge1xuICAgICAgdGhpcy5zZXRTdGVwQXNBY3RpdmUoc3RlcCk7XG4gICAgICB0aGlzLnNldE5leHRTdGVwQXNEZWZhdWx0KHN0ZXApO1xuXG4gICAgICBpZiAodGhpcy5pc0JlZm9yZVN0ZXAoc3RlcEluZGV4KSkge1xuICAgICAgICB0aGlzLnNldEZpbmFsU3RlcHBlcnNBc0Rpc2FibGVkKHN0ZXBJbmRleCk7XG4gICAgICB9XG5cbiAgICAgIHRoaXMuY2hhbmdlRGV0ZWN0b3IuZGV0ZWN0Q2hhbmdlcygpO1xuICAgIH1cbiAgfVxuXG4gIHByaXZhdGUgZ2V0U3RlcHBlclN0YXR1c0J5Q2FuQWN0aXZlKGNhbkFjdGl2ZU5leHRTdGVwOiBib29sZWFuKTogUG9TdGVwcGVyU3RhdHVzIHtcbiAgICByZXR1cm4gY2FuQWN0aXZlTmV4dFN0ZXAgPyBQb1N0ZXBwZXJTdGF0dXMuRG9uZSA6IFBvU3RlcHBlclN0YXR1cy5FcnJvcjtcbiAgfVxuXG4gIHByaXZhdGUgZ2V0U3RlcHNBbmRJbmRleChzdGVwOiBQb1N0ZXBDb21wb25lbnQgPSA8YW55Pnt9KTogeyBzdGVwczogQXJyYXk8UG9TdGVwQ29tcG9uZW50Pjsgc3RlcEluZGV4OiBudW1iZXIgfSB7XG4gICAgY29uc3Qgc3RlcHMgPSB0aGlzLmdldFBvU3RlcHMoKTtcbiAgICBjb25zdCBzdGVwSW5kZXggPSBzdGVwcy5maW5kSW5kZXgocG9TdGVwID0+IHBvU3RlcC5pZCA9PT0gc3RlcC5pZCk7XG5cbiAgICByZXR1cm4geyBzdGVwcywgc3RlcEluZGV4IH07XG4gIH1cblxuICBwcml2YXRlIGdldFBvU3RlcHMoKTogQXJyYXk8UG9TdGVwQ29tcG9uZW50PiB7XG4gICAgcmV0dXJuIHRoaXMucG9TdGVwcy50b0FycmF5KCk7XG4gIH1cblxuICBwcml2YXRlIGlzQmVmb3JlU3RlcChzdGVwSW5kZXg6IG51bWJlcik6IGJvb2xlYW4ge1xuICAgIGNvbnN0IGN1cnJlbnRBY3RpdmVTdGVwSW5kZXggPSAoKSA9PiB0aGlzLmdldFBvU3RlcHMoKS5maW5kSW5kZXgoc3RlcCA9PiBzdGVwLmlkID09PSB0aGlzLmN1cnJlbnRBY3RpdmVTdGVwLmlkKTtcblxuICAgIHJldHVybiAhIXRoaXMuY3VycmVudEFjdGl2ZVN0ZXAgJiYgY3VycmVudEFjdGl2ZVN0ZXBJbmRleCgpID49IHN0ZXBJbmRleDtcbiAgfVxuXG4gIHByaXZhdGUgc2V0RmluYWxTdGVwcGVyc0FzRGlzYWJsZWQoc3RlcEluZGV4OiBudW1iZXIpOiB2b2lkIHtcbiAgICB0aGlzLmdldFBvU3RlcHMoKVxuICAgICAgLmZpbHRlcigoc3RlcCwgaW5kZXgpID0+IHN0ZXAgJiYgaW5kZXggPj0gc3RlcEluZGV4ICsgMilcbiAgICAgIC5mb3JFYWNoKHN0ZXAgPT4gKHN0ZXAuc3RhdHVzID0gUG9TdGVwcGVyU3RhdHVzLkRpc2FibGVkKSk7XG4gIH1cblxuICBwcml2YXRlIHNldFN0ZXBBc0FjdGl2ZShzdGVwOiBQb1N0ZXBDb21wb25lbnQpOiB2b2lkIHtcbiAgICBzdGVwLnN0YXR1cyA9IFBvU3RlcHBlclN0YXR1cy5BY3RpdmU7XG4gIH1cblxuICBwcml2YXRlIHNldE5leHRTdGVwQXNEZWZhdWx0KGN1cnJlbnRTdGVwOiBQb1N0ZXBDb21wb25lbnQpOiB2b2lkIHtcbiAgICBjb25zdCB7IHN0ZXBzLCBzdGVwSW5kZXggfSA9IHRoaXMuZ2V0U3RlcHNBbmRJbmRleChjdXJyZW50U3RlcCk7XG4gICAgY29uc3QgbmV4dEluZGV4ID0gc3RlcEluZGV4ICsgMTtcblxuICAgIGlmIChuZXh0SW5kZXggPCB0aGlzLnBvU3RlcHMubGVuZ3RoKSB7XG4gICAgICBzdGVwc1tuZXh0SW5kZXhdLnN0YXR1cyA9IFBvU3RlcHBlclN0YXR1cy5EZWZhdWx0O1xuICAgIH1cbiAgfVxuXG4gIHByaXZhdGUgc2V0UHJldmlvdXNTdGVwQXNEb25lKCk6IHZvaWQge1xuICAgIGlmICh0aGlzLnByZXZpb3VzQWN0aXZlU3RlcCkge1xuICAgICAgdGhpcy5wcmV2aW91c0FjdGl2ZVN0ZXAuc3RhdHVzID0gUG9TdGVwcGVyU3RhdHVzLkRvbmU7XG4gICAgfVxuICB9XG59XG4iXX0=
219
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicG8tc3RlcHBlci5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy91aS9zcmMvbGliL2NvbXBvbmVudHMvcG8tc3RlcHBlci9wby1zdGVwcGVyLmNvbXBvbmVudC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQW9CLGlCQUFpQixFQUFFLFNBQVMsRUFBRSxlQUFlLEVBQWEsTUFBTSxlQUFlLENBQUM7QUFFM0csT0FBTyxFQUFFLFVBQVUsRUFBRSxFQUFFLEVBQUUsVUFBVSxFQUFFLE1BQU0sTUFBTSxDQUFDO0FBQ2xELE9BQU8sRUFBRSxJQUFJLEVBQUUsR0FBRyxFQUFFLFVBQVUsRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBRXZELE9BQU8sRUFBRSxlQUFlLEVBQUUsTUFBTSxnQ0FBZ0MsQ0FBQztBQUNqRSxPQUFPLEVBQUUsZUFBZSxFQUFFLE1BQU0sNkJBQTZCLENBQUM7QUFDOUQsT0FBTyxFQUFFLHNCQUFzQixFQUFFLE1BQU0sNkJBQTZCLENBQUM7QUFHckU7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7R0F5Qkc7QUFLSCxNQUFNLE9BQU8sa0JBQW1CLFNBQVEsc0JBQXNCO0lBaUI1RCxZQUFvQixjQUFpQztRQUNuRCxLQUFLLEVBQUUsQ0FBQztRQURVLG1CQUFjLEdBQWQsY0FBYyxDQUFtQjtJQUVyRCxDQUFDO0lBZEQsSUFBSSxnQkFBZ0I7UUFDbEIsT0FBTyxJQUFJLENBQUMsSUFBSSxHQUFHLENBQUMsQ0FBQztJQUN2QixDQUFDO0lBRUQsSUFBSSxRQUFRO1FBQ1YsT0FBTyxDQUFDLElBQUksQ0FBQyxVQUFVLElBQUksSUFBSSxDQUFDLE9BQU8sQ0FBQyxJQUFJLElBQUksQ0FBQyxLQUFLLENBQUM7SUFDekQsQ0FBQztJQUVELElBQUksVUFBVTtRQUNaLE9BQU8sQ0FBQyxDQUFDLElBQUksQ0FBQyxPQUFPLENBQUMsTUFBTSxDQUFDO0lBQy9CLENBQUM7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QUMsSUFBSSxDQUFDLGlCQUFpQixJQUFJLHNCQUFzQixFQUFFLElBQUksU0FBUyxDQUFDO0lBQzNFLENBQUM7SUFFTywwQkFBMEIsQ0FBQyxTQUFpQjtRQUNsRCxJQUFJLENBQUMsVUFBVSxFQUFFO2FBQ2QsTUFBTSxDQUFDLENBQUMsSUFBSSxFQUFFLEtBQUssRUFBRSxFQUFFLENBQUMsSUFBSSxJQUFJLEtBQUssSUFBSSxTQUFTLEdBQUcsQ0FBQyxDQUFDO2FBQ3ZELE9BQU8sQ0FBQyxJQUFJLENBQUMsRUFBRSxDQUFDLENBQUMsSUFBSSxDQUFDLE1BQU0sR0FBRyxlQUFlLENBQUMsUUFBUSxDQUFDLENBQUMsQ0FBQztJQUMvRCxDQUFDO0lBRU8sZUFBZSxDQUFDLElBQXFCO1FBQzNDLElBQUksQ0FBQyxNQUFNLEdBQUcsZUFBZSxDQUFDLE1BQU0sQ0FBQztJQUN2QyxDQUFDO0lBRU8sb0JBQW9CLENBQUMsV0FBNEI7UUFDdkQsTUFBTSxFQUFFLEtBQUssRUFBRSxTQUFTLEVBQUUsR0FBRyxJQUFJLENBQUMsZ0JBQWdCLENBQUMsV0FBVyxDQUFDLENBQUM7UUFDaEUsTUFBTSxTQUFTLEdBQUcsU0FBUyxHQUFHLENBQUMsQ0FBQztRQUVoQyxJQUFJLFNBQVMsR0FBRyxJQUFJLENBQUMsT0FBTyxDQUFDLE1BQU0sRUFBRTtZQUNuQyxLQUFLLENBQUMsU0FBUyxDQUFDLENBQUMsTUFBTSxHQUFHLGVBQWUsQ0FBQyxPQUFPLENBQUM7U0FDbkQ7SUFDSCxDQUFDOzs7WUFsT0YsU0FBUyxTQUFDO2dCQUNULFFBQVEsRUFBRSxZQUFZO2dCQUN0Qix5eUJBQTBDO2FBQzNDOzs7WUF2QzBCLGlCQUFpQjs7O3NCQXlDekMsZUFBZSxTQUFDLGVBQWUiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBBZnRlckNvbnRlbnRJbml0LCBDaGFuZ2VEZXRlY3RvclJlZiwgQ29tcG9uZW50LCBDb250ZW50Q2hpbGRyZW4sIFF1ZXJ5TGlzdCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuXG5pbXBvcnQgeyBPYnNlcnZhYmxlLCBvZiwgdGhyb3dFcnJvciB9IGZyb20gJ3J4anMnO1xuaW1wb3J0IHsgdGFrZSwgdGFwLCBjYXRjaEVycm9yIH0gZnJvbSAncnhqcy9vcGVyYXRvcnMnO1xuXG5pbXBvcnQgeyBQb1N0ZXBwZXJTdGF0dXMgfSBmcm9tICcuL2VudW1zL3BvLXN0ZXBwZXItc3RhdHVzLmVudW0nO1xuaW1wb3J0IHsgUG9TdGVwQ29tcG9uZW50IH0gZnJvbSAnLi9wby1zdGVwL3BvLXN0ZXAuY29tcG9uZW50JztcbmltcG9ydCB7IFBvU3RlcHBlckJhc2VDb21wb25lbnQgfSBmcm9tICcuL3BvLXN0ZXBwZXItYmFzZS5jb21wb25lbnQnO1xuaW1wb3J0IHsgUG9TdGVwcGVySXRlbSB9IGZyb20gJy4vcG8tc3RlcHBlci1pdGVtLmludGVyZmFjZSc7XG5cbi8qKlxuICogQGRvY3NFeHRlbmRzIFBvU3RlcHBlckJhc2VDb21wb25lbnRcbiAqXG4gKiBAZXhhbXBsZVxuICpcbiAqIDxleGFtcGxlIG5hbWU9XCJwby1zdGVwcGVyLWJhc2ljXCIgdGl0bGU9XCJQTyBTdGVwcGVyIEJhc2ljXCI+XG4gKiAgPGZpbGUgbmFtZT1cInNhbXBsZS1wby1zdGVwcGVyLWJhc2ljL3NhbXBsZS1wby1zdGVwcGVyLWJhc2ljLmNvbXBvbmVudC5odG1sXCI+IDwvZmlsZT5cbiAqICA8ZmlsZSBuYW1lPVwic2FtcGxlLXBvLXN0ZXBwZXItYmFzaWMvc2FtcGxlLXBvLXN0ZXBwZXItYmFzaWMuY29tcG9uZW50LnRzXCI+IDwvZmlsZT5cbiAqIDwvZXhhbXBsZT5cbiAqXG4gKiA8ZXhhbXBsZSBuYW1lPVwicG8tc3RlcHBlci1sYWJzXCIgdGl0bGU9XCJQTyBTdGVwcGVyIExhYnNcIj5cbiAqICA8ZmlsZSBuYW1lPVwic2FtcGxlLXBvLXN0ZXBwZXItbGFicy9zYW1wbGUtcG8tc3RlcHBlci1sYWJzLmNvbXBvbmVudC5odG1sXCI+IDwvZmlsZT5cbiAqICA8ZmlsZSBuYW1lPVwic2FtcGxlLXBvLXN0ZXBwZXItbGFicy9zYW1wbGUtcG8tc3RlcHBlci1sYWJzLmNvbXBvbmVudC50c1wiPiA8L2ZpbGU+XG4gKiA8L2V4YW1wbGU+XG4gKlxuICogPGV4YW1wbGUgbmFtZT1cInBvLXN0ZXBwZXItc2FsZXNcIiB0aXRsZT1cIlBPIFN0ZXBwZXIgLSBTYWxlc1wiPlxuICogIDxmaWxlIG5hbWU9XCJzYW1wbGUtcG8tc3RlcHBlci1zYWxlcy9zYW1wbGUtcG8tc3RlcHBlci1zYWxlcy5jb21wb25lbnQuaHRtbFwiPiA8L2ZpbGU+XG4gKiAgPGZpbGUgbmFtZT1cInNhbXBsZS1wby1zdGVwcGVyLXNhbGVzL3NhbXBsZS1wby1zdGVwcGVyLXNhbGVzLmNvbXBvbmVudC50c1wiPiA8L2ZpbGU+XG4gKiA8L2V4YW1wbGU+XG4gKlxuICogPGV4YW1wbGUgbmFtZT1cInBvLXN0ZXBwZXItYWN0aXZlXCIgdGl0bGU9XCJQTyBTdGVwcGVyIC0gQWN0aXZlXCI+XG4gKiAgPGZpbGUgbmFtZT1cInNhbXBsZS1wby1zdGVwcGVyLWFjdGl2ZS9zYW1wbGUtcG8tc3RlcHBlci1hY3RpdmUuY29tcG9uZW50Lmh0bWxcIj4gPC9maWxlPlxuICogIDxmaWxlIG5hbWU9XCJzYW1wbGUtcG8tc3RlcHBlci1hY3RpdmUvc2FtcGxlLXBvLXN0ZXBwZXItYWN0aXZlLmNvbXBvbmVudC50c1wiPiA8L2ZpbGU+XG4gKiAgPGZpbGUgbmFtZT1cInNhbXBsZS1wby1zdGVwcGVyLWFjdGl2ZS9zYW1wbGUtcG8tc3RlcHBlci1hY3RpdmUuc2VydmljZS50c1wiPiA8L2ZpbGU+XG4gKiA8L2V4YW1wbGU+XG4gKi9cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ3BvLXN0ZXBwZXInLFxuICB0ZW1wbGF0ZVVybDogJy4vcG8tc3RlcHBlci5jb21wb25lbnQuaHRtbCdcbn0pXG5leHBvcnQgY2xhc3MgUG9TdGVwcGVyQ29tcG9uZW50IGV4dGVuZHMgUG9TdGVwcGVyQmFzZUNvbXBvbmVudCBpbXBsZW1lbnRzIEFmdGVyQ29udGVudEluaXQge1xuICBAQ29udGVudENoaWxkcmVuKFBvU3RlcENvbXBvbmVudCkgcG9TdGVwczogUXVlcnlMaXN0PFBvU3RlcENvbXBvbmVudD47XG5cbiAgcHJpdmF0ZSBjdXJyZW50QWN0aXZlU3RlcDogUG9TdGVwQ29tcG9uZW50O1xuXG4gIGdldCBjdXJyZW50U3RlcEluZGV4KCk6IG51bWJlciB7XG4gICAgcmV0dXJuIHRoaXMuc3RlcCAtIDE7XG4gIH1cblxuICBnZXQgc3RlcExpc3QoKTogUXVlcnlMaXN0PFBvU3RlcENvbXBvbmVudD4gfCBBcnJheTxQb1N0ZXBwZXJJdGVtPiB7XG4gICAgcmV0dXJuICh0aGlzLnVzZVBvU3RlcHMgJiYgdGhpcy5wb1N0ZXBzKSB8fCB0aGlzLnN0ZXBzO1xuICB9XG5cbiAgZ2V0IHVzZVBvU3RlcHMoKTogYm9vbGVhbiB7XG4gICAgcmV0dXJuICEhdGhpcy5wb1N0ZXBzLmxlbmd0aDtcbiAgfVxuXG4gIGNvbnN0cnVjdG9yKHByaXZhdGUgY2hhbmdlRGV0ZWN0b3I6IENoYW5nZURldGVjdG9yUmVmKSB7XG4gICAgc3VwZXIoKTtcbiAgfVxuXG4gIG5nQWZ0ZXJDb250ZW50SW5pdCgpIHtcbiAgICB0aGlzLmFjdGl2ZUZpcnN0U3RlcCgpO1xuXG4gICAgdGhpcy5wb1N0ZXBzLmNoYW5nZXMuc3Vic2NyaWJlKCgpID0+IHtcbiAgICAgIHRoaXMuY29udHJvbFN0ZXBzU3RhdHVzKDAsIHRoaXMucG9TdGVwcy5maXJzdCk7XG4gICAgfSk7XG4gIH1cblxuICAvKipcbiAgICogQWx0ZXJhIG8gc3RhdHVzIGRvICpzdGVwKiBwYXJhIGF0aXZvLlxuICAgKlxuICAgKiA+IEVzdGUgbcOpdG9kbyDDqSB2YWxpZG8gYXBlbmFzIHBhcmEgYXMgaW1wbGVtZW50YcOnw7VlcyBxdWUgdXRpbGl6YW0gbyBjb21wb25lbnRlIFsqKnBvLXN0ZXAqKl0oL2RvY3VtZW50YXRpb24vcG8tc3RlcCkuXG4gICAqXG4gICAqIEBwYXJhbSB7bnVtYmVyfSBpbmRleCDDjW5kaWNlIGRvIGBwby1zdGVwYCBxdWUgc2UgZGVzZWphIGF0aXZhci5cbiAgICovXG4gIGFjdGl2ZShpbmRleDogbnVtYmVyKTogdm9pZCB7XG4gICAgaWYgKCF0aGlzLnVzZVBvU3RlcHMpIHtcbiAgICAgIHJldHVybjtcbiAgICB9XG5cbiAgICBjb25zdCBzdGVwc0FycmF5ID0gdGhpcy5nZXRQb1N0ZXBzKCk7XG4gICAgY29uc3Qgc3RlcCA9IHN0ZXBzQXJyYXlbaW5kZXhdO1xuICAgIHRoaXMuY2hhbmdlU3RlcChpbmRleCwgc3RlcCk7XG4gIH1cblxuICAvKipcbiAgICogQXRpdmEgbyBwcmltZWlybyAqc3RlcCouXG4gICAqXG4gICAqID4gRXN0ZSBtw6l0b2RvIMOpIHZhbGlkbyBhcGVuYXMgcGFyYSBhcyBpbXBsZW1lbnRhw6fDtWVzIHF1ZSB1dGlsaXphbSBvIGNvbXBvbmVudGUgWyoqcG8tc3RlcCoqXSgvZG9jdW1lbnRhdGlvbi9wby1zdGVwKS5cbiAgICovXG4gIGZpcnN0KCk6IHZvaWQge1xuICAgIGlmICghdGhpcy51c2VQb1N0ZXBzKSB7XG4gICAgICByZXR1cm47XG4gICAgfVxuXG4gICAgY29uc3QgZmlyc3RTdGVwID0gdGhpcy5wb1N0ZXBzLmZpcnN0O1xuICAgIGNvbnN0IGZpcnN0U3RlcEluZGV4ID0gMDtcblxuICAgIHRoaXMuY2hhbmdlU3RlcChmaXJzdFN0ZXBJbmRleCwgZmlyc3RTdGVwKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBBdGl2YSBvIHByw7N4aW1vICpzdGVwKi5cbiAgICpcbiAgICogPiBFc3RlIG3DqXRvZG8gw6kgdmFsaWRvIGFwZW5hcyBwYXJhIGFzIGltcGxlbWVudGHDp8O1ZXMgcXVlIHV0aWxpemFtIG8gY29tcG9uZW50ZSBbKipwby1zdGVwKipdKC9kb2N1bWVudGF0aW9uL3BvLXN0ZXApLlxuICAgKi9cbiAgbmV4dCgpOiB2b2lkIHtcbiAgICBpZiAoIXRoaXMudXNlUG9TdGVwcykge1xuICAgICAgcmV0dXJuO1xuICAgIH1cblxuICAgIGNvbnN0IHsgc3RlcHMsIHN0ZXBJbmRleCB9ID0gdGhpcy5nZXRTdGVwc0FuZEluZGV4KHRoaXMuY3VycmVudEFjdGl2ZVN0ZXApO1xuICAgIGNvbnN0IG5leHRJbmRleCA9IHN0ZXBJbmRleCArIDE7XG4gICAgY29uc3QgbmV4dFN0ZXAgPSBzdGVwc1tuZXh0SW5kZXhdO1xuXG4gICAgdGhpcy5jaGFuZ2VTdGVwKG5leHRJbmRleCwgbmV4dFN0ZXApO1xuICB9XG5cbiAgLyoqXG4gICAqIEF0aXZhIG8gKnN0ZXAqIGFudGVyaW9yLlxuICAgKlxuICAgKiA+IEVzdGUgbcOpdG9kbyDDqSB2YWxpZG8gYXBlbmFzIHBhcmEgYXMgaW1wbGVtZW50YcOnw7VlcyBxdWUgdXRpbGl6YW0gbyBjb21wb25lbnRlIFsqKnBvLXN0ZXAqKl0oL2RvY3VtZW50YXRpb24vcG8tc3RlcCkuXG4gICAqL1xuICBwcmV2aW91cygpOiB2b2lkIHtcbiAgICBpZiAoIXRoaXMudXNlUG9TdGVwcykge1xuICAgICAgcmV0dXJuO1xuICAgIH1cblxuICAgIGNvbnN0IHsgc3RlcHMsIHN0ZXBJbmRleCB9ID0gdGhpcy5nZXRTdGVwc0FuZEluZGV4KHRoaXMuY3VycmVudEFjdGl2ZVN0ZXApO1xuICAgIGNvbnN0IHByZXZpb3VzSW5kZXggPSBzdGVwSW5kZXggLSAxO1xuICAgIGNvbnN0IHByZXZpb3VzU3RlcCA9IHN0ZXBzW3ByZXZpb3VzSW5kZXhdO1xuXG4gICAgdGhpcy5jaGFuZ2VTdGVwKHByZXZpb3VzSW5kZXgsIHByZXZpb3VzU3RlcCk7XG4gIH1cblxuICBjaGFuZ2VTdGVwKHN0ZXBJbmRleDogbnVtYmVyLCBzdGVwPzogUG9TdGVwQ29tcG9uZW50KTogdm9pZCB7XG4gICAgdGhpcy5hbGxvd05leHRTdGVwKHN0ZXBJbmRleClcbiAgICAgIC5waXBlKHRha2UoMSkpXG4gICAgICAuc3Vic2NyaWJlKG5leHRTdGVwQWxsb3dlZCA9PiB7XG4gICAgICAgIGlmIChuZXh0U3RlcEFsbG93ZWQpIHtcbiAgICAgICAgICBjb25zdCBpc0RpZmZlcmVudFN0ZXAgPSAhdGhpcy5jdXJyZW50QWN0aXZlU3RlcCB8fCBzdGVwLmlkICE9PSB0aGlzLmN1cnJlbnRBY3RpdmVTdGVwLmlkO1xuXG4gICAgICAgICAgaWYgKHRoaXMudXNlUG9TdGVwcyAmJiBpc0RpZmZlcmVudFN0ZXApIHtcbiAgICAgICAgICAgIHRoaXMuY29udHJvbFN0ZXBzU3RhdHVzKHN0ZXBJbmRleCwgc3RlcCk7XG4gICAgICAgICAgICB0aGlzLm9uQ2hhbmdlU3RlcC5lbWl0KHN0ZXApO1xuICAgICAgICAgIH0gZWxzZSBpZiAoIXRoaXMudXNlUG9TdGVwcyAmJiBzdGVwSW5kZXggIT09IHRoaXMuY3VycmVudFN0ZXBJbmRleCkge1xuICAgICAgICAgICAgLy8gaWYgcGFyYSB0cmF0YW1lbnRvIGRvIG1vZGVsbyBhbnRpZ28gZG8gcG8tc3RlcHBlclxuICAgICAgICAgICAgdGhpcy5vbkNoYW5nZVN0ZXAuZW1pdChzdGVwSW5kZXggKyAxKTtcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH0pO1xuICB9XG5cbiAgb25TdGVwQWN0aXZlKHN0ZXA6IFBvU3RlcENvbXBvbmVudCkge1xuICAgIHRoaXMuY3VycmVudEFjdGl2ZVN0ZXAgPSBzdGVwO1xuXG4gICAgY29uc3QgeyBzdGVwSW5kZXggfSA9IHRoaXMuZ2V0U3RlcHNBbmRJbmRleCh0aGlzLmN1cnJlbnRBY3RpdmVTdGVwKTtcblxuICAgIHRoaXMucG9TdGVwcy5mb3JFYWNoKChzdGVwQ2hpbGQsIGkpID0+IHtcbiAgICAgIGlmIChpIDwgc3RlcEluZGV4KSB7XG4gICAgICAgIHN0ZXBDaGlsZC5zdGF0dXMgPSBQb1N0ZXBwZXJTdGF0dXMuRG9uZTtcbiAgICAgIH1cbiAgICB9KTtcbiAgfVxuXG4gIHRyYWNrQnlGbihzdGVwOiBQb1N0ZXBDb21wb25lbnQpIHtcbiAgICByZXR1cm4gc3RlcC5pZDtcbiAgfVxuXG4gIHByaXZhdGUgYWN0aXZlRmlyc3RTdGVwKCkge1xuICAgIGNvbnN0IGhhc1N0ZXBBY3RpdmUgPSB0aGlzLnBvU3RlcHMuc29tZShwb1N0ZXAgPT4gcG9TdGVwLnN0YXR1cyA9PT0gUG9TdGVwcGVyU3RhdHVzLkFjdGl2ZSk7XG5cbiAgICBpZiAodGhpcy51c2VQb1N0ZXBzICYmICFoYXNTdGVwQWN0aXZlKSB7XG4gICAgICB0aGlzLmNoYW5nZVN0ZXAoMCwgdGhpcy5wb1N0ZXBzLmZpcnN0KTtcbiAgICB9XG4gIH1cblxuICBwcml2YXRlIGFsbG93TmV4dFN0ZXAobmV4dFN0ZXBJbmRleDogbnVtYmVyKTogT2JzZXJ2YWJsZTxib29sZWFuPiB7XG4gICAgaWYgKCF0aGlzLnNlcXVlbnRpYWwpIHtcbiAgICAgIHJldHVybiBvZih0cnVlKTtcbiAgICB9XG5cbiAgICBjb25zdCBpc0FsbG93TmV4dFN0ZXAkID0gdGhpcy51c2VQb1N0ZXBzXG4gICAgICA/IHRoaXMuaXNCZWZvcmVTdGVwKG5leHRTdGVwSW5kZXgpIHx8IHRoaXMuY2FuQWN0aXZlTmV4dFN0ZXAodGhpcy5jdXJyZW50QWN0aXZlU3RlcClcbiAgICAgIDogdGhpcy5zdGVwcy5zbGljZSh0aGlzLnN0ZXAsIG5leHRTdGVwSW5kZXgpLmV2ZXJ5KHN0ZXAgPT4gc3RlcC5zdGF0dXMgPT09IFBvU3RlcHBlclN0YXR1cy5Eb25lKTtcblxuICAgIHJldHVybiB0eXBlb2YgaXNBbGxvd05leHRTdGVwJCA9PT0gJ2Jvb2xlYW4nID8gb2YoaXNBbGxvd05leHRTdGVwJCkgOiBpc0FsbG93TmV4dFN0ZXAkO1xuICB9XG5cbiAgcHJpdmF0ZSBjYW5BY3RpdmVOZXh0U3RlcChjdXJyZW50QWN0aXZlU3RlcCA9IDxQb1N0ZXBDb21wb25lbnQ+e30pOiBPYnNlcnZhYmxlPGJvb2xlYW4+IHtcbiAgICBpZiAoIWN1cnJlbnRBY3RpdmVTdGVwLmNhbkFjdGl2ZU5leHRTdGVwKSB7XG4gICAgICByZXR1cm4gb2YodHJ1ZSk7XG4gICAgfVxuXG4gICAgY29uc3QgY2FuQWN0aXZlTmV4dFN0ZXAgPSBjdXJyZW50QWN0aXZlU3RlcC5jYW5BY3RpdmVOZXh0U3RlcChjdXJyZW50QWN0aXZlU3RlcCk7XG5cbiAgICBjb25zdCBjYW5BY3RpdmVOZXh0U3RlcCQgPSBjYW5BY3RpdmVOZXh0U3RlcCBpbnN0YW5jZW9mIE9ic2VydmFibGUgPyBjYW5BY3RpdmVOZXh0U3RlcCA6IG9mKGNhbkFjdGl2ZU5leHRTdGVwKTtcblxuICAgIHJldHVybiBjYW5BY3RpdmVOZXh0U3RlcCQucGlwZShcbiAgICAgIHRhcChpc0NhbkFjdGl2ZU5leHRTdGVwID0+IHtcbiAgICAgICAgY3VycmVudEFjdGl2ZVN0ZXAuc3RhdHVzID0gdGhpcy5nZXRTdGVwcGVyU3RhdHVzQnlDYW5BY3RpdmUoaXNDYW5BY3RpdmVOZXh0U3RlcCk7XG4gICAgICB9KSxcbiAgICAgIGNhdGNoRXJyb3IoZXJyID0+IHtcbiAgICAgICAgY3VycmVudEFjdGl2ZVN0ZXAuc3RhdHVzID0gUG9TdGVwcGVyU3RhdHVzLkVycm9yO1xuXG4gICAgICAgIHJldHVybiB0aHJvd0Vycm9yKGVycik7XG4gICAgICB9KVxuICAgICk7XG4gIH1cblxuICBwcml2YXRlIGNvbnRyb2xTdGVwc1N0YXR1cyhzdGVwSW5kZXg6IG51bWJlciwgc3RlcDogUG9TdGVwQ29tcG9uZW50KTogdm9pZCB7XG4gICAgaWYgKHRoaXMudXNlUG9TdGVwcykge1xuICAgICAgdGhpcy5zZXRTdGVwQXNBY3RpdmUoc3RlcCk7XG4gICAgICB0aGlzLnNldE5leHRTdGVwQXNEZWZhdWx0KHN0ZXApO1xuXG4gICAgICBpZiAodGhpcy5pc0JlZm9yZVN0ZXAoc3RlcEluZGV4KSkge1xuICAgICAgICB0aGlzLnNldEZpbmFsU3RlcHBlcnNBc0Rpc2FibGVkKHN0ZXBJbmRleCk7XG4gICAgICB9XG5cbiAgICAgIHRoaXMuY2hhbmdlRGV0ZWN0b3IuZGV0ZWN0Q2hhbmdlcygpO1xuICAgIH1cbiAgfVxuXG4gIHByaXZhdGUgZ2V0U3RlcHBlclN0YXR1c0J5Q2FuQWN0aXZlKGNhbkFjdGl2ZU5leHRTdGVwOiBib29sZWFuKTogUG9TdGVwcGVyU3RhdHVzIHtcbiAgICByZXR1cm4gY2FuQWN0aXZlTmV4dFN0ZXAgPyBQb1N0ZXBwZXJTdGF0dXMuRG9uZSA6IFBvU3RlcHBlclN0YXR1cy5FcnJvcjtcbiAgfVxuXG4gIHByaXZhdGUgZ2V0U3RlcHNBbmRJbmRleChzdGVwOiBQb1N0ZXBDb21wb25lbnQgPSA8YW55Pnt9KTogeyBzdGVwczogQXJyYXk8UG9TdGVwQ29tcG9uZW50Pjsgc3RlcEluZGV4OiBudW1iZXIgfSB7XG4gICAgY29uc3Qgc3RlcHMgPSB0aGlzLmdldFBvU3RlcHMoKTtcbiAgICBjb25zdCBzdGVwSW5kZXggPSBzdGVwcy5maW5kSW5kZXgocG9TdGVwID0+IHBvU3RlcC5pZCA9PT0gc3RlcC5pZCk7XG5cbiAgICByZXR1cm4geyBzdGVwcywgc3RlcEluZGV4IH07XG4gIH1cblxuICBwcml2YXRlIGdldFBvU3RlcHMoKTogQXJyYXk8UG9TdGVwQ29tcG9uZW50PiB7XG4gICAgcmV0dXJuIHRoaXMucG9TdGVwcy50b0FycmF5KCk7XG4gIH1cblxuICBwcml2YXRlIGlzQmVmb3JlU3RlcChzdGVwSW5kZXg6IG51bWJlcik6IGJvb2xlYW4ge1xuICAgIGNvbnN0IGN1cnJlbnRBY3RpdmVTdGVwSW5kZXggPSAoKSA9PiB0aGlzLmdldFBvU3RlcHMoKS5maW5kSW5kZXgoc3RlcCA9PiBzdGVwLmlkID09PSB0aGlzLmN1cnJlbnRBY3RpdmVTdGVwLmlkKTtcblxuICAgIHJldHVybiAhIXRoaXMuY3VycmVudEFjdGl2ZVN0ZXAgJiYgY3VycmVudEFjdGl2ZVN0ZXBJbmRleCgpID49IHN0ZXBJbmRleDtcbiAgfVxuXG4gIHByaXZhdGUgc2V0RmluYWxTdGVwcGVyc0FzRGlzYWJsZWQoc3RlcEluZGV4OiBudW1iZXIpOiB2b2lkIHtcbiAgICB0aGlzLmdldFBvU3RlcHMoKVxuICAgICAgLmZpbHRlcigoc3RlcCwgaW5kZXgpID0+IHN0ZXAgJiYgaW5kZXggPj0gc3RlcEluZGV4ICsgMilcbiAgICAgIC5mb3JFYWNoKHN0ZXAgPT4gKHN0ZXAuc3RhdHVzID0gUG9TdGVwcGVyU3RhdHVzLkRpc2FibGVkKSk7XG4gIH1cblxuICBwcml2YXRlIHNldFN0ZXBBc0FjdGl2ZShzdGVwOiBQb1N0ZXBDb21wb25lbnQpOiB2b2lkIHtcbiAgICBzdGVwLnN0YXR1cyA9IFBvU3RlcHBlclN0YXR1cy5BY3RpdmU7XG4gIH1cblxuICBwcml2YXRlIHNldE5leHRTdGVwQXNEZWZhdWx0KGN1cnJlbnRTdGVwOiBQb1N0ZXBDb21wb25lbnQpOiB2b2lkIHtcbiAgICBjb25zdCB7IHN0ZXBzLCBzdGVwSW5kZXggfSA9IHRoaXMuZ2V0U3RlcHNBbmRJbmRleChjdXJyZW50U3RlcCk7XG4gICAgY29uc3QgbmV4dEluZGV4ID0gc3RlcEluZGV4ICsgMTtcblxuICAgIGlmIChuZXh0SW5kZXggPCB0aGlzLnBvU3RlcHMubGVuZ3RoKSB7XG4gICAgICBzdGVwc1tuZXh0SW5kZXhdLnN0YXR1cyA9IFBvU3RlcHBlclN0YXR1cy5EZWZhdWx0O1xuICAgIH1cbiAgfVxufVxuIl19