@villedemontreal/angular-ui 2.2.1 → 3.1.1

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 (91) hide show
  1. package/esm2020/lib/alert/alert.component.mjs +24 -26
  2. package/esm2020/lib/alert/module.mjs +5 -5
  3. package/esm2020/lib/avatar/avatar.component.mjs +102 -0
  4. package/esm2020/lib/avatar/index.mjs +8 -0
  5. package/esm2020/lib/avatar/module.mjs +24 -0
  6. package/esm2020/lib/badge/badge.component.mjs +3 -3
  7. package/esm2020/lib/badge/module.mjs +5 -5
  8. package/esm2020/lib/bao.module.mjs +24 -14
  9. package/esm2020/lib/breadcrumb/breadcrumb.component.mjs +8 -8
  10. package/esm2020/lib/breadcrumb/module.mjs +5 -5
  11. package/esm2020/lib/button/button.component.mjs +7 -7
  12. package/esm2020/lib/button/module.mjs +5 -5
  13. package/esm2020/lib/card/card.component.mjs +15 -15
  14. package/esm2020/lib/card/module.mjs +5 -5
  15. package/esm2020/lib/checkbox/checkbox-group.component.mjs +8 -9
  16. package/esm2020/lib/checkbox/checkbox.component.mjs +45 -46
  17. package/esm2020/lib/checkbox/module.mjs +5 -5
  18. package/esm2020/lib/common-components/error-text/errorText.component.mjs +3 -3
  19. package/esm2020/lib/common-components/guiding-text/guidingText.component.mjs +3 -3
  20. package/esm2020/lib/common-components/label-text/labelText.component.mjs +3 -3
  21. package/esm2020/lib/common-components/module.mjs +5 -5
  22. package/esm2020/lib/common-components/title-text/titleText.component.mjs +3 -3
  23. package/esm2020/lib/header-info/header-info.component.mjs +18 -18
  24. package/esm2020/lib/header-info/module.mjs +5 -5
  25. package/esm2020/lib/icon/bao-icon-registry.mjs +3 -3
  26. package/esm2020/lib/icon/icon.component.mjs +30 -34
  27. package/esm2020/lib/icon/icons-dictionary.mjs +3 -2
  28. package/esm2020/lib/icon/module.mjs +5 -5
  29. package/esm2020/lib/list/list.component.mjs +15 -15
  30. package/esm2020/lib/list/module.mjs +5 -5
  31. package/esm2020/lib/modal/index.mjs +12 -0
  32. package/esm2020/lib/modal/modal-animations.mjs +29 -0
  33. package/esm2020/lib/modal/modal-config.mjs +65 -0
  34. package/esm2020/lib/modal/modal-container.mjs +254 -0
  35. package/esm2020/lib/modal/modal-directives.mjs +84 -0
  36. package/esm2020/lib/modal/modal-ref.mjs +195 -0
  37. package/esm2020/lib/modal/modal.mjs +293 -0
  38. package/esm2020/lib/modal/module.mjs +44 -0
  39. package/esm2020/lib/radio/module.mjs +10 -12
  40. package/esm2020/lib/radio/radio-group.component.mjs +43 -44
  41. package/esm2020/lib/radio/radio.component.mjs +45 -46
  42. package/esm2020/lib/summary/list-summary.component.mjs +9 -16
  43. package/esm2020/lib/summary/module.mjs +5 -5
  44. package/esm2020/lib/summary/summary.component.mjs +10 -11
  45. package/esm2020/lib/tabs/index.mjs +8 -0
  46. package/esm2020/lib/tabs/module.mjs +35 -0
  47. package/esm2020/lib/tabs/tabs.component.mjs +295 -0
  48. package/esm2020/lib/tag/module.mjs +5 -5
  49. package/esm2020/lib/tag/tag.component.mjs +5 -5
  50. package/esm2020/public-api.mjs +4 -1
  51. package/fesm2015/villedemontreal-angular-ui.mjs +1778 -384
  52. package/fesm2015/villedemontreal-angular-ui.mjs.map +1 -1
  53. package/fesm2020/villedemontreal-angular-ui.mjs +1770 -384
  54. package/fesm2020/villedemontreal-angular-ui.mjs.map +1 -1
  55. package/{villedemontreal-angular-ui.d.ts → index.d.ts} +0 -0
  56. package/lib/alert/alert.component.d.ts +6 -7
  57. package/lib/avatar/avatar.component.d.ts +26 -0
  58. package/lib/avatar/index.d.ts +2 -0
  59. package/lib/avatar/module.d.ts +8 -0
  60. package/lib/badge/badge.component.d.ts +1 -1
  61. package/lib/bao.module.d.ts +4 -1
  62. package/lib/breadcrumb/breadcrumb.component.d.ts +2 -2
  63. package/lib/button/button.component.d.ts +2 -2
  64. package/lib/card/card.component.d.ts +5 -5
  65. package/lib/checkbox/checkbox-group.component.d.ts +3 -3
  66. package/lib/checkbox/checkbox.component.d.ts +28 -28
  67. package/lib/common-components/error-text/errorText.component.d.ts +1 -1
  68. package/lib/common-components/guiding-text/guidingText.component.d.ts +1 -1
  69. package/lib/common-components/label-text/labelText.component.d.ts +1 -1
  70. package/lib/common-components/title-text/titleText.component.d.ts +1 -1
  71. package/lib/header-info/header-info.component.d.ts +6 -6
  72. package/lib/icon/icon.component.d.ts +11 -11
  73. package/lib/list/list.component.d.ts +5 -5
  74. package/lib/modal/index.d.ts +6 -0
  75. package/lib/modal/modal-animations.d.ts +8 -0
  76. package/lib/modal/modal-config.d.ts +105 -0
  77. package/lib/modal/modal-container.d.ts +106 -0
  78. package/lib/modal/modal-directives.d.ts +25 -0
  79. package/lib/modal/modal-ref.d.ts +91 -0
  80. package/lib/modal/modal.d.ts +91 -0
  81. package/lib/modal/module.d.ts +12 -0
  82. package/lib/radio/radio-group.component.d.ts +19 -19
  83. package/lib/radio/radio.component.d.ts +28 -28
  84. package/lib/summary/list-summary.component.d.ts +2 -2
  85. package/lib/summary/summary.component.d.ts +7 -7
  86. package/lib/tabs/index.d.ts +2 -0
  87. package/lib/tabs/module.d.ts +8 -0
  88. package/lib/tabs/tabs.component.d.ts +95 -0
  89. package/lib/tag/tag.component.d.ts +2 -2
  90. package/package.json +7 -7
  91. package/public-api.d.ts +3 -0
@@ -20,17 +20,6 @@ let radioGroupNextUniqueId = 0;
20
20
  export class BaoRadioButtonGroupComponent {
21
21
  constructor(cdr) {
22
22
  this.cdr = cdr;
23
- this._value = null;
24
- this._name = null;
25
- this._selected = null;
26
- this._isInitialized = false;
27
- this._disabled = false;
28
- this._required = false;
29
- this._uniqueId = `bao-checkbox-group-${++radioGroupNextUniqueId}`;
30
- /**
31
- * The checkbox group ID. It is set dynamically with an unique ID by default
32
- */
33
- this.id = this._uniqueId;
34
23
  /**
35
24
  * Emit the value of the selected radio button
36
25
  */
@@ -39,8 +28,18 @@ export class BaoRadioButtonGroupComponent {
39
28
  * The aria-describedby for web accessibilty
40
29
  */
41
30
  this.ariaDescribedby = null;
31
+ this._value = null;
32
+ this._name = null;
33
+ this._selected = null;
34
+ this._isInitialized = false;
35
+ this._disabled = false;
36
+ this._required = false;
37
+ this._uniqueId = `bao-checkbox-group-${++radioGroupNextUniqueId}`;
42
38
  this.onModelChange = () => undefined;
43
39
  this.onTouch = () => undefined;
40
+ if (!this.id) {
41
+ this.id = this._uniqueId;
42
+ }
44
43
  }
45
44
  /**
46
45
  * Define the name property of all radio buttons. Default : null
@@ -48,50 +47,50 @@ export class BaoRadioButtonGroupComponent {
48
47
  get name() {
49
48
  return this._name;
50
49
  }
51
- set name(value) {
52
- this._name = value;
53
- this.updateRadioButtonNames();
54
- }
55
50
  /**
56
51
  * Define the value of the selected radio button. Default : null
57
52
  */
58
53
  get value() {
59
54
  return this._value;
60
55
  }
61
- set value(newValue) {
62
- if (this._value !== newValue) {
63
- this._value = newValue;
64
- this.updateSelectedRadioFromValue();
65
- this.checkSelectedRadioButton();
66
- }
67
- }
68
56
  /**
69
57
  * Define which radio button is selected. Default : null
70
58
  */
71
59
  get selected() {
72
60
  return this._selected;
73
61
  }
74
- set selected(selected) {
75
- this._selected = selected;
76
- this.value = selected ? selected.value : null;
77
- this.checkSelectedRadioButton();
78
- }
79
62
  /**
80
63
  * Whether the radio button groupd is disabled. Default : false
81
64
  */
82
65
  get disabled() {
83
66
  return this._disabled;
84
67
  }
85
- set disabled(value) {
86
- this._disabled = coerceBooleanProperty(value);
87
- this.markRadiosForCheck();
88
- }
89
68
  /**
90
69
  * Whether the radio button groupd is required. Default : false
91
70
  */
92
71
  get required() {
93
72
  return this._required;
94
73
  }
74
+ set name(value) {
75
+ this._name = value;
76
+ this.updateRadioButtonNames();
77
+ }
78
+ set value(newValue) {
79
+ if (this._value !== newValue) {
80
+ this._value = newValue;
81
+ this.updateSelectedRadioFromValue();
82
+ this.checkSelectedRadioButton();
83
+ }
84
+ }
85
+ set selected(selected) {
86
+ this._selected = selected;
87
+ this.value = selected ? selected.value : null;
88
+ this.checkSelectedRadioButton();
89
+ }
90
+ set disabled(value) {
91
+ this._disabled = coerceBooleanProperty(value);
92
+ this.markRadiosForCheck();
93
+ }
95
94
  set required(value) {
96
95
  this._required = coerceBooleanProperty(value);
97
96
  this.markRadiosForCheck();
@@ -205,16 +204,16 @@ export class BaoRadioButtonGroupComponent {
205
204
  this.ariaDescribedby = value ? `${this.id}-ariadescribedby` : null;
206
205
  }
207
206
  }
208
- BaoRadioButtonGroupComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.1.1", ngImport: i0, type: BaoRadioButtonGroupComponent, deps: [{ token: i0.ChangeDetectorRef }], target: i0.ɵɵFactoryTarget.Component });
209
- BaoRadioButtonGroupComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.1.1", type: BaoRadioButtonGroupComponent, selector: "bao-radio-button-group, [bao-radio-button-group], [baoRadioButtonGroup]", inputs: { id: "id", name: "name", value: "value", selected: "selected", disabled: "disabled", required: "required" }, outputs: { change: "change" }, providers: [
207
+ BaoRadioButtonGroupComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.2.1", ngImport: i0, type: BaoRadioButtonGroupComponent, deps: [{ token: i0.ChangeDetectorRef }], target: i0.ɵɵFactoryTarget.Component });
208
+ BaoRadioButtonGroupComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.2.1", type: BaoRadioButtonGroupComponent, selector: "bao-radio-button-group, [bao-radio-button-group], [baoRadioButtonGroup]", inputs: { id: "id", name: "name", value: "value", selected: "selected", disabled: "disabled", required: "required" }, outputs: { change: "change" }, providers: [
210
209
  {
211
210
  provide: NG_VALUE_ACCESSOR,
212
211
  useExisting: forwardRef(() => BaoRadioButtonGroupComponent),
213
212
  multi: true
214
213
  },
215
214
  { provide: BAO_RADIO_GROUP, useExisting: BaoRadioButtonGroupComponent }
216
- ], queries: [{ propertyName: "_radios", predicate: i0.forwardRef(function () { return BaoRadioButtonComponent; }), descendants: true }], viewQueries: [{ propertyName: "staticContainer", first: true, predicate: ["container"], descendants: true }], exportAs: ["baoRadioGroup"], ngImport: i0, template: "<fieldset\n role=\"radiogroup\"\n class=\"bao-radio-button-group\"\n [id]=\"id\"\n [attr.aria-describedby]=\"ariaDescribedby\"\n>\n <ng-content></ng-content>\n <div\n class=\"bao-radio-button-group-description\"\n [attr.id]=\"ariaDescribedby\"\n #container\n (cdkObserveContent)=\"onContentChange()\"\n >\n <ng-content\n select=\"bao-error, [bao-error], bao-guiding-text, [bao-guiding-text]\"\n ></ng-content>\n </div>\n</fieldset>\n", styles: [".bao-radio-button-group .bao-legend{margin-bottom:.5rem}.bao-radio-button-group .bao-error,.bao-radio-button-group .bao-guiding-text{margin-top:.5rem}\n"], directives: [{ type: i1.CdkObserveContent, selector: "[cdkObserveContent]", inputs: ["cdkObserveContentDisabled", "debounce"], outputs: ["cdkObserveContent"], exportAs: ["cdkObserveContent"] }], encapsulation: i0.ViewEncapsulation.None });
217
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.1.1", ngImport: i0, type: BaoRadioButtonGroupComponent, decorators: [{
215
+ ], queries: [{ propertyName: "staticContainer", predicate: i0.forwardRef(function () { return BaoRadioButtonComponent; }), descendants: true }], viewQueries: [{ propertyName: "staticContainer", first: true, predicate: ["container"], descendants: true }], exportAs: ["baoRadioGroup"], ngImport: i0, template: "<fieldset\n role=\"radiogroup\"\n class=\"bao-radio-button-group\"\n [id]=\"id\"\n [attr.aria-describedby]=\"ariaDescribedby\"\n>\n <ng-content></ng-content>\n <div\n class=\"bao-radio-button-group-description\"\n [attr.id]=\"ariaDescribedby\"\n #container\n (cdkObserveContent)=\"onContentChange()\"\n >\n <ng-content\n select=\"bao-error, [bao-error], bao-guiding-text, [bao-guiding-text]\"\n ></ng-content>\n </div>\n</fieldset>\n", styles: [".bao-radio-button-group .bao-legend{margin-bottom:.5rem}.bao-radio-button-group .bao-error,.bao-radio-button-group .bao-guiding-text{margin-top:.5rem}\n"], dependencies: [{ kind: "directive", type: i1.CdkObserveContent, selector: "[cdkObserveContent]", inputs: ["cdkObserveContentDisabled", "debounce"], outputs: ["cdkObserveContent"], exportAs: ["cdkObserveContent"] }], encapsulation: i0.ViewEncapsulation.None });
216
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.1", ngImport: i0, type: BaoRadioButtonGroupComponent, decorators: [{
218
217
  type: Component,
219
218
  args: [{ selector: 'bao-radio-button-group, [bao-radio-button-group], [baoRadioButtonGroup]', exportAs: 'baoRadioGroup', encapsulation: ViewEncapsulation.None, providers: [
220
219
  {
@@ -224,13 +223,18 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.1.1", ngImpor
224
223
  },
225
224
  { provide: BAO_RADIO_GROUP, useExisting: BaoRadioButtonGroupComponent }
226
225
  ], template: "<fieldset\n role=\"radiogroup\"\n class=\"bao-radio-button-group\"\n [id]=\"id\"\n [attr.aria-describedby]=\"ariaDescribedby\"\n>\n <ng-content></ng-content>\n <div\n class=\"bao-radio-button-group-description\"\n [attr.id]=\"ariaDescribedby\"\n #container\n (cdkObserveContent)=\"onContentChange()\"\n >\n <ng-content\n select=\"bao-error, [bao-error], bao-guiding-text, [bao-guiding-text]\"\n ></ng-content>\n </div>\n</fieldset>\n", styles: [".bao-radio-button-group .bao-legend{margin-bottom:.5rem}.bao-radio-button-group .bao-error,.bao-radio-button-group .bao-guiding-text{margin-top:.5rem}\n"] }]
227
- }], ctorParameters: function () { return [{ type: i0.ChangeDetectorRef }]; }, propDecorators: { _radios: [{
226
+ }], ctorParameters: function () { return [{ type: i0.ChangeDetectorRef }]; }, propDecorators: { id: [{
227
+ type: Input
228
+ }], change: [{
229
+ type: Output
230
+ }], staticContainer: [{
228
231
  type: ContentChildren,
229
232
  args: [forwardRef(() => BaoRadioButtonComponent), {
230
233
  descendants: true
231
234
  }]
232
- }], id: [{
233
- type: Input
235
+ }, {
236
+ type: ViewChild,
237
+ args: ['container', { static: false }]
234
238
  }], name: [{
235
239
  type: Input
236
240
  }], value: [{
@@ -241,10 +245,5 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.1.1", ngImpor
241
245
  type: Input
242
246
  }], required: [{
243
247
  type: Input
244
- }], change: [{
245
- type: Output
246
- }], staticContainer: [{
247
- type: ViewChild,
248
- args: ['container', { static: false }]
249
248
  }] } });
250
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicmFkaW8tZ3JvdXAuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvYW5ndWxhci11aS9zcmMvbGliL3JhZGlvL3JhZGlvLWdyb3VwLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2FuZ3VsYXItdWkvc3JjL2xpYi9yYWRpby9yYWRpby1ncm91cC5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQTs7OztHQUlHO0FBQ0gsT0FBTyxFQUFFLHFCQUFxQixFQUFFLE1BQU0sdUJBQXVCLENBQUM7QUFDOUQsT0FBTyxFQUlMLFNBQVMsRUFDVCxlQUFlLEVBRWYsWUFBWSxFQUNaLFVBQVUsRUFDVixjQUFjLEVBQ2QsS0FBSyxFQUNMLE1BQU0sRUFFTixTQUFTLEVBQ1QsaUJBQWlCLEVBQ2xCLE1BQU0sZUFBZSxDQUFDO0FBQ3ZCLE9BQU8sRUFBd0IsaUJBQWlCLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUN6RSxPQUFPLEVBQUUsdUJBQXVCLEVBQUUsTUFBTSxHQUFHLENBQUM7OztBQUU1Qzs7R0FFRztBQUNILE1BQU0sQ0FBQyxNQUFNLGVBQWUsR0FBRyxJQUFJLGNBQWMsQ0FDL0MscUJBQXFCLENBQ3RCLENBQUM7QUFDRjs7R0FFRztBQUNILElBQUksc0JBQXNCLEdBQUcsQ0FBQyxDQUFDO0FBa0IvQixNQUFNLE9BQU8sNEJBQTRCO0lBbUd2QyxZQUFvQixHQUFzQjtRQUF0QixRQUFHLEdBQUgsR0FBRyxDQUFtQjtRQTVGbEMsV0FBTSxHQUFrQixJQUFJLENBQUM7UUFDN0IsVUFBSyxHQUFrQixJQUFJLENBQUM7UUFDNUIsY0FBUyxHQUFtQyxJQUFJLENBQUM7UUFDakQsbUJBQWMsR0FBRyxLQUFLLENBQUM7UUFDdkIsY0FBUyxHQUFHLEtBQUssQ0FBQztRQUNsQixjQUFTLEdBQUcsS0FBSyxDQUFDO1FBRWxCLGNBQVMsR0FBRyxzQkFBc0IsRUFB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MUIsV0FBVyxFQUFFLFVBQVUsQ0FBQyxHQUFHLEVBQUUsQ0FBQyw0QkFBNEIsQ0FBQztZQUMzRCxLQUFLLEVBQUUsSUFBSTtTQUNaO1FBQ0QsRUFBRSxPQUFPLEVBQUUsZUFBZSxFQUFFLFdBQVcsRUFBRSw0QkFBNEIsRUFBRTtLQUN4RSxxRkFLaUMsdUJBQXVCLCtMQ3ZEM0Qsa2RBa0JBOzJGRGtDYSw0QkFBNEI7a0JBaEJ4QyxTQUFTOytCQUVOLHlFQUF5RSxZQUNqRSxlQUFlLGlCQUdWLGlCQUFpQixDQUFDLElBQUksYUFDMUI7d0JBQ1Q7NEJBQ0UsT0FBTyxFQUFFLGlCQUFpQjs0QkFDMUIsV0FBVyxFQUFFLFVBQVUsQ0FBQyxHQUFHLEVBQUUsNkJBQTZCLENBQUM7NEJBQzNELEtBQUssRUFBRSxJQUFJO3lCQUNaO3dCQUNELEVBQUUsT0FBTyxFQUFFLGVBQWUsRUFBRSxXQUFXLDhCQUE4QixFQUFFO3FCQUN4RTt3R0FRTyxPQUFPO3NCQUhkLGVBQWU7dUJBQUMsVUFBVSxDQUFDLEdBQUcsRUFBRSxDQUFDLHVCQUF1QixDQUFDLEVBQUU7d0JBQzFELFdBQVcsRUFBRSxJQUFJO3FCQUNsQjtnQkFjZSxFQUFFO3NCQUFqQixLQUFLO2dCQU1GLElBQUk7c0JBRFAsS0FBSztnQkFhRixLQUFLO3NCQURSLEtBQUs7Z0JBZ0JGLFFBQVE7c0JBRFgsS0FBSztnQkFjRixRQUFRO3NCQURYLEtBQUs7Z0JBYUYsUUFBUTtzQkFEWCxLQUFLO2dCQVlvQixNQUFNO3NCQUEvQixNQUFNO2dCQVNDLGVBQWU7c0JBRHRCLFNBQVM7dUJBQUMsV0FBVyxFQUFFLEVBQUUsTUFBTSxFQUFFLEtBQUssRUFBRSIsInNvdXJjZXNDb250ZW50IjpbIi8qXG4gKiBDb3B5cmlnaHQgKGMpIDIwMjIgVmlsbGUgZGUgTW9udHJlYWwuIEFsbCByaWdodHMgcmVzZXJ2ZWQuXG4gKiBMaWNlbnNlZCB1bmRlciB0aGUgTUlUIGxpY2Vuc2UuXG4gKiBTZWUgTElDRU5TRSBmaWxlIGluIHRoZSBwcm9qZWN0IHJvb3QgZm9yIGZ1bGwgbGljZW5zZSBpbmZvcm1hdGlvbi5cbiAqL1xuaW1wb3J0IHsgY29lcmNlQm9vbGVhblByb3BlcnR5IH0gZnJvbSAnQGFuZ3VsYXIvY2RrL2NvZXJjaW9uJztcbmltcG9ydCB7XG4gIEFmdGVyQ29udGVudEluaXQsXG4gIEFmdGVyVmlld0luaXQsXG4gIENoYW5nZURldGVjdG9yUmVmLFxuICBDb21wb25lbnQsXG4gIENvbnRlbnRDaGlsZHJlbixcbiAgRWxlbWVudFJlZixcbiAgRXZlbnRFbWl0dGVyLFxuICBmb3J3YXJkUmVmLFxuICBJbmplY3Rpb25Ub2tlbixcbiAgSW5wdXQsXG4gIE91dHB1dCxcbiAgUXVlcnlMaXN0LFxuICBWaWV3Q2hpbGQsXG4gIFZpZXdFbmNhcHN1bGF0aW9uXG59IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgQ29udHJvbFZhbHVlQWNjZXNzb3IsIE5HX1ZBTFVFX0FDQ0VTU09SIH0gZnJvbSAnQGFuZ3VsYXIvZm9ybXMnO1xuaW1wb3J0IHsgQmFvUmFkaW9CdXR0b25Db21wb25lbnQgfSBmcm9tICcuJztcblxuLyoqXG4gKiBXZSBoYXZlIHRvIGluamVjdCB0aGUgcmFkaW8gYnV0dG9uIGdyb3VwIGFuZCBhbGwgaXRzIGNoaWxkcmVuIHRvIGVhY2ggY2hpbGQuXG4gKi9cbmV4cG9ydCBjb25zdCBCQU9fUkFESU9fR1JPVVAgPSBuZXcgSW5qZWN0aW9uVG9rZW48QmFvUmFkaW9CdXR0b25Hcm91cENvbXBvbmVudD4oXG4gICdCYW9SYWRpb0J1dHRvbkdyb3VwJ1xuKTtcbi8qKlxuICogVW5pcXVlIElEIGZvciBlYWNoIHJhZGlvIGdyb3VwIGNvdW50ZXJcbiAqL1xubGV0IHJhZGlvR3JvdXBOZXh0VW5pcXVlSWQgPSAwO1xuXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6XG4gICAgJ2Jhby1yYWRpby1idXR0b24tZ3JvdXAsIFtiYW8tcmFkaW8tYnV0dG9uLWdyb3VwXSwgW2Jhb1JhZGlvQnV0dG9uR3JvdXBdJyxcbiAgZXhwb3J0QXM6ICdiYW9SYWRpb0dyb3VwJyxcbiAgdGVtcGxhdGVVcmw6ICcuL3JhZGlvLWdyb3VwLmNvbXBvbmVudC5odG1sJyxcbiAgc3R5bGVVcmxzOiBbJy4vcmFkaW8tZ3JvdXAuY29tcG9uZW50LnNjc3MnXSxcbiAgZW5jYXBzdWxhdGlvbjogVmlld0VuY2Fwc3VsYXRpb24uTm9uZSxcbiAgcHJvdmlkZXJzOiBbXG4gICAge1xuICAgICAgcHJvdmlkZTogTkdfVkFMVUVfQUNDRVNTT1IsXG4gICAgICB1c2VFeGlzdGluZzogZm9yd2FyZFJlZigoKSA9PiBCYW9SYWRpb0J1dHRvbkdyb3VwQ29tcG9uZW50KSxcbiAgICAgIG11bHRpOiB0cnVlXG4gICAgfSxcbiAgICB7IHByb3ZpZGU6IEJBT19SQURJT19HUk9VUCwgdXNlRXhpc3Rpbmc6IEJhb1JhZGlvQnV0dG9uR3JvdXBDb21wb25lbnQgfVxuICBdXG59KVxuZXhwb3J0IGNsYXNzIEJhb1JhZGlvQnV0dG9uR3JvdXBDb21wb25lbnRcbiAgaW1wbGVtZW50cyBBZnRlckNvbnRlbnRJbml0LCBDb250cm9sVmFsdWVBY2Nlc3NvciwgQWZ0ZXJWaWV3SW5pdFxue1xuICBAQ29udGVudENoaWxkcmVuKGZvcndhcmRSZWYoKCkgPT4gQmFvUmFkaW9CdXR0b25Db21wb25lbnQpLCB7XG4gICAgZGVzY2VuZGFudHM6IHRydWVcbiAgfSlcbiAgcHJpdmF0ZSBfcmFkaW9zOiBRdWVyeUxpc3Q8QmFvUmFkaW9CdXR0b25Db21wb25lbnQ+O1xuICBwcml2YXRlIF92YWx1ZTogc3RyaW5nIHwgbnVsbCA9IG51bGw7XG4gIHByaXZhdGUgX25hbWU6IHN0cmluZyB8IG51bGwgPSBudWxsO1xuICBwcml2YXRlIF9zZWxlY3RlZDogQmFvUmFkaW9CdXR0b25Db21wb25lbnQgfCBudWxsID0gbnVsbDtcbiAgcHJpdmF0ZSBfaXNJbml0aWFsaXplZCA9IGZhbHNlO1xuICBwcml2YXRlIF9kaXNhYmxlZCA9IGZhbHNlO1xuICBwcml2YXRlIF9yZXF1aXJlZCA9IGZhbHNlO1xuXG4gIHByaXZhdGUgX3VuaXF1ZUlkID0gYGJhby1jaGVja2JveC1ncm91cC0keysrcmFkaW9Hcm91cE5leHRVbmlxdWVJZH1gO1xuXG4gIC8qKlxuICAgKiBUaGUgY2hlY2tib3ggZ3JvdXAgSUQuIEl0IGlzIHNldCBkeW5hbWljYWxseSB3aXRoIGFuIHVuaXF1ZSBJRCBieSBkZWZhdWx0XG4gICAqL1xuICBASW5wdXQoKSBwdWJsaWMgaWQ6IHN0cmluZyA9IHRoaXMuX3VuaXF1ZUlkO1xuXG4gIC8qKlxuICAgKiBEZWZpbmUgdGhlIG5hbWUgcHJvcGVydHkgb2YgYWxsIHJhZGlvIGJ1dHRvbnMuIERlZmF1bHQgOiBudWxsXG4gICAqL1xuICBASW5wdXQoKVxuICBnZXQgbmFtZSgpOiBzdHJpbmcgfCBudWxsIHtcbiAgICByZXR1cm4gdGhpcy5fbmFtZTtcbiAgfVxuICBzZXQgbmFtZSh2YWx1ZTogc3RyaW5nIHwgbnVsbCkge1xuICAgIHRoaXMuX25hbWUgPSB2YWx1ZTtcbiAgICB0aGlzLnVwZGF0ZVJhZGlvQnV0dG9uTmFtZXMoKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBEZWZpbmUgdGhlIHZhbHVlIG9mIHRoZSBzZWxlY3RlZCByYWRpbyBidXR0b24uIERlZmF1bHQgOiBudWxsXG4gICAqL1xuICBASW5wdXQoKVxuICBnZXQgdmFsdWUoKTogc3RyaW5nIHwgbnVsbCB7XG4gICAgcmV0dXJuIHRoaXMuX3ZhbHVlO1xuICB9XG4gIHNldCB2YWx1ZShuZXdWYWx1ZTogc3RyaW5nIHwgbnVsbCkge1xuICAgIGlmICh0aGlzLl92YWx1ZSAhPT0gbmV3VmFsdWUpIHtcbiAgICAgIHRoaXMuX3ZhbHVlID0gbmV3VmFsdWU7XG4gICAgICB0aGlzLnVwZGF0ZVNlbGVjdGVkUmFkaW9Gcm9tVmFsdWUoKTtcbiAgICAgIHRoaXMuY2hlY2tTZWxlY3RlZFJhZGlvQnV0dG9uKCk7XG4gICAgfVxuICB9XG5cbiAgLyoqXG4gICAqIERlZmluZSB3aGljaCByYWRpbyBidXR0b24gaXMgc2VsZWN0ZWQuIERlZmF1bHQgOiBudWxsXG4gICAqL1xuICBASW5wdXQoKVxuICBnZXQgc2VsZWN0ZWQoKSB7XG4gICAgcmV0dXJuIHRoaXMuX3NlbGVjdGVkO1xuICB9XG4gIHNldCBzZWxlY3RlZChzZWxlY3RlZDogQmFvUmFkaW9CdXR0b25Db21wb25lbnQgfCBudWxsKSB7XG4gICAgdGhpcy5fc2VsZWN0ZWQgPSBzZWxlY3RlZDtcbiAgICB0aGlzLnZhbHVlID0gc2VsZWN0ZWQgPyBzZWxlY3RlZC52YWx1ZSA6IG51bGw7XG4gICAgdGhpcy5jaGVja1NlbGVjdGVkUmFkaW9CdXR0b24oKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBXaGV0aGVyIHRoZSByYWRpbyBidXR0b24gZ3JvdXBkIGlzIGRpc2FibGVkLiBEZWZhdWx0IDogZmFsc2VcbiAgICovXG4gIEBJbnB1dCgpXG4gIGdldCBkaXNhYmxlZCgpOiBib29sZWFuIHtcbiAgICByZXR1cm4gdGhpcy5fZGlzYWJsZWQ7XG4gIH1cbiAgc2V0IGRpc2FibGVkKHZhbHVlKSB7XG4gICAgdGhpcy5fZGlzYWJsZWQgPSBjb2VyY2VCb29sZWFuUHJvcGVydHkodmFsdWUpO1xuICAgIHRoaXMubWFya1JhZGlvc0ZvckNoZWNrKCk7XG4gIH1cblxuICAvKipcbiAgICogV2hldGhlciB0aGUgcmFkaW8gYnV0dG9uIGdyb3VwZCBpcyByZXF1aXJlZC4gRGVmYXVsdCA6IGZhbHNlXG4gICAqL1xuICBASW5wdXQoKVxuICBnZXQgcmVxdWlyZWQoKTogYm9vbGVhbiB7XG4gICAgcmV0dXJuIHRoaXMuX3JlcXVpcmVkO1xuICB9XG4gIHNldCByZXF1aXJlZCh2YWx1ZTogYm9vbGVhbikge1xuICAgIHRoaXMuX3JlcXVpcmVkID0gY29lcmNlQm9vbGVhblByb3BlcnR5KHZhbHVlKTtcbiAgICB0aGlzLm1hcmtSYWRpb3NGb3JDaGVjaygpO1xuICB9XG5cbiAgLyoqXG4gICAqIEVtaXQgdGhlIHZhbHVlIG9mIHRoZSBzZWxlY3RlZCByYWRpbyBidXR0b25cbiAgICovXG4gIEBPdXRwdXQoKSBwdWJsaWMgcmVhZG9ubHkgY2hhbmdlOiBFdmVudEVtaXR0ZXI8c3RyaW5nPiA9XG4gICAgbmV3IEV2ZW50RW1pdHRlcjxzdHJpbmc+KCk7XG5cbiAgLyoqXG4gICAqIFRoZSBhcmlhLWRlc2NyaWJlZGJ5IGZvciB3ZWIgYWNjZXNzaWJpbHR5XG4gICAqL1xuICBwdWJsaWMgYXJpYURlc2NyaWJlZGJ5OiBzdHJpbmcgfCBudWxsID0gbnVsbDtcblxuICBAVmlld0NoaWxkKCdjb250YWluZXInLCB7IHN0YXRpYzogZmFsc2UgfSlcbiAgcHJpdmF0ZSBzdGF0aWNDb250YWluZXI6IEVsZW1lbnRSZWY7XG5cbiAgY29uc3RydWN0b3IocHJpdmF0ZSBjZHI6IENoYW5nZURldGVjdG9yUmVmKSB7fVxuXG4gIHB1YmxpYyBuZ0FmdGVyQ29udGVudEluaXQoKSB7XG4gICAgdGhpcy5faXNJbml0aWFsaXplZCA9IHRydWU7XG4gIH1cblxuICBwdWJsaWMgbmdBZnRlclZpZXdJbml0KCkge1xuICAgIHRoaXMuc2V0QXJpYURlc2NyaWJlZEJ5VG9EZXNjcmlwdGlvbigpO1xuICAgIHRoaXMuY2RyLmRldGVjdENoYW5nZXMoKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBJbXBsZW1lbnQgQ29udHJvbFZhbHVlQWNjZXNzb3JcbiAgICovXG4gIHB1YmxpYyB3cml0ZVZhbHVlKHZhbHVlOiBzdHJpbmcpIHtcbiAgICB0aGlzLnZhbHVlID0gdmFsdWU7XG4gICAgdGhpcy5jZHIubWFya0ZvckNoZWNrKCk7XG4gIH1cblxuICAvKipcbiAgICogSW1wbGVtZW50IENvbnRyb2xWYWx1ZUFjY2Vzc29yXG4gICAqL1xuICBwdWJsaWMgcmVnaXN0ZXJPbkNoYW5nZShmbjogKHZhbHVlOiBhbnkpID0+IHZvaWQpIHtcbiAgICB0aGlzLm9uTW9kZWxDaGFuZ2UgPSBmbjtcbiAgfVxuXG4gIC8qKlxuICAgKiBJbXBsZW1lbnQgQ29udHJvbFZhbHVlQWNjZXNzb3JcbiAgICovXG4gIHB1YmxpYyByZWdpc3Rlck9uVG91Y2hlZChmbjogYW55KSB7XG4gICAgdGhpcy5vblRvdWNoID0gZm47XG4gIH1cblxuICAvKipcbiAgICogSW1wbGVtZW50IENvbnRyb2xWYWx1ZUFjY2Vzc29yXG4gICAqL1xuICBwdWJsaWMgc2V0RGlzYWJsZWRTdGF0ZShpc0Rpc2FibGVkOiBib29sZWFuKSB7XG4gICAgdGhpcy5kaXNhYmxlZCA9IGlzRGlzYWJsZWQ7XG4gICAgdGhpcy5jZHIubWFya0ZvckNoZWNrKCk7XG4gIH1cblxuICAvKipcbiAgICogb25Ub3VjaCgpIGNhbGxlZCBmcm9tIHRoZSBidXR0b24gY2hpbGRyZW5cbiAgICovXG4gIHB1YmxpYyBvbkdyb3VwVG91Y2goKSB7XG4gICAgaWYgKHRoaXMub25Ub3VjaCkge1xuICAgICAgdGhpcy5vblRvdWNoKCk7XG4gICAgfVxuICB9XG5cbiAgLyoqXG4gICAqIFVwZGF0ZSBhbGwgcmFkaW8gYnV0dG9uIG5hbWVcbiAgICovXG4gIHB1YmxpYyB1cGRhdGVSYWRpb0J1dHRvbk5hbWVzKCk6IHZvaWQge1xuICAgIGlmICh0aGlzLl9yYWRpb3MpIHtcbiAgICAgIHRoaXMuX3JhZGlvcy5mb3JFYWNoKChyYWRpbzogQmFvUmFkaW9CdXR0b25Db21wb25lbnQpID0+IHtcbiAgICAgICAgcmFkaW8ubmFtZSA9IHRoaXMubmFtZTtcbiAgICAgICAgcmFkaW8ubWFya0ZvckNoZWNrKCk7XG4gICAgICB9KTtcbiAgICB9XG4gIH1cblxuICAvKipcbiAgICogRGVmaW5lIHdoaWNoIHJhZGlvIGJ1dHRvbiBpcyBzZWxlY3RlZC5cbiAgICovXG4gIHB1YmxpYyB1cGRhdGVTZWxlY3RlZFJhZGlvRnJvbVZhbHVlKCk6IHZvaWQge1xuICAgIGNvbnN0IGlzQWxyZWFkeVNlbGVjdGVkID1cbiAgICAgIHRoaXMuX3NlbGVjdGVkICE9PSBudWxsICYmIHRoaXMuX3NlbGVjdGVkLnZhbHVlID09PSB0aGlzLl92YWx1ZTtcbiAgICBpZiAodGhpcy5fcmFkaW9zICYmICFpc0FscmVhZHlTZWxlY3RlZCkge1xuICAgICAgdGhpcy5fc2VsZWN0ZWQgPSBudWxsO1xuICAgICAgdGhpcy5fcmFkaW9zLmZvckVhY2goKHJhZGlvOiBCYW9SYWRpb0J1dHRvbkNvbXBvbmVudCkgPT4ge1xuICAgICAgICByYWRpby5jaGVja2VkID0gdGhpcy52YWx1ZSA9PT0gcmFkaW8udmFsdWU7XG4gICAgICAgIGlmIChyYWRpby5jaGVja2VkKSB7XG4gICAgICAgICAgdGhpcy5fc2VsZWN0ZWQgPSByYWRpbztcbiAgICAgICAgfVxuICAgICAgfSk7XG4gICAgfVxuICB9XG5cbiAgLyoqXG4gICAqIFVwZGF0ZSBjaGVja2VkIHByb3BlcnR5IG9uIHNlbGVjdGVkIHJhZGlvIGJ1dHRvblxuICAgKi9cbiAgcHVibGljIGNoZWNrU2VsZWN0ZWRSYWRpb0J1dHRvbigpIHtcbiAgICBpZiAodGhpcy5fc2VsZWN0ZWQgJiYgIXRoaXMuX3NlbGVjdGVkLmNoZWNrZWQpIHtcbiAgICAgIHRoaXMuX3NlbGVjdGVkLmNoZWNrZWQgPSB0cnVlO1xuICAgIH1cbiAgfVxuXG4gIC8qKlxuICAgKiBFbWl0IHRoZSB2YWx1ZSBvZiB0aGUgbmV3IHNlbGVjdGVkIHJhZGlvIGJ1dHRvblxuICAgKi9cbiAgcHVibGljIGVtaXRDaGFuZ2VFdmVudCgpOiB2b2lkIHtcbiAgICBpZiAodGhpcy5faXNJbml0aWFsaXplZCkge1xuICAgICAgdGhpcy5jaGFuZ2UuZW1pdCh0aGlzLnZhbHVlKTtcbiAgICB9XG4gIH1cblxuICAvKipcbiAgICogQ2FsbCBtYXJrRm9yQ2hlY2sgZnVuY3Rpb24gb24gYWxsIHJhZGlvIGJ1dHRvbnMgc2luY2Ugb25lIG9mIHRoZSBwYXJlbnQgaW5wdXRzIGNvdWxkJ3QgaGF2ZSBjaGFuZ2UgbWVhbndoaWxlLiBQcmV2ZW50IGNoYW5nZSBkZXRlY3Rpb24gZXJyb3IuXG4gICAqL1xuICBwdWJsaWMgbWFya1JhZGlvc0ZvckNoZWNrKCkge1xuICAgIGlmICh0aGlzLl9yYWRpb3MpIHtcbiAgICAgIHRoaXMuX3JhZGlvcy5mb3JFYWNoKChyYWRpbzogQmFvUmFkaW9CdXR0b25Db21wb25lbnQpID0+XG4gICAgICAgIHJhZGlvLm1hcmtGb3JDaGVjaygpXG4gICAgICApO1xuICAgIH1cbiAgfVxuXG4gIHB1YmxpYyBvbkNvbnRlbnRDaGFuZ2UoKSB7XG4gICAgdGhpcy5zZXRBcmlhRGVzY3JpYmVkQnlUb0Rlc2NyaXB0aW9uKCk7XG4gIH1cblxuICBwdWJsaWMgb25Nb2RlbENoYW5nZTogKHZhbHVlOiBhbnkpID0+IHZvaWQgPSAoKSA9PiB1bmRlZmluZWQ7XG5cbiAgLyoqXG4gICAqIFNldCB0aGUgYXJpYS1kZXNjcmliZWRieSBwcm9wZXJ0eSB0byBiYW8tZ3VpZGluZy10ZXh0IGlmIGF2YWlsYWJsZVxuICAgKi9cbiAgcHJpdmF0ZSBzZXRBcmlhRGVzY3JpYmVkQnlUb0Rlc2NyaXB0aW9uKCkge1xuICAgIGNvbnN0IGNoaWxkcmVuID0gQXJyYXkuZnJvbSh0aGlzLnN0YXRpY0NvbnRhaW5lci5uYXRpdmVFbGVtZW50LmNoaWxkcmVuKTtcbiAgICBpZiAoY2hpbGRyZW4ubGVuZ3RoID09PSAwKSB7XG4gICAgICB0aGlzLnNob3dBcmlhRGVzY3JpYmVkQnkoZmFsc2UpO1xuICAgICAgcmV0dXJuO1xuICAgIH1cblxuICAgIHRoaXMuc2hvd0FyaWFEZXNjcmliZWRCeSh0cnVlKTtcbiAgfVxuXG4gIHByaXZhdGUgc2hvd0FyaWFEZXNjcmliZWRCeSh2YWx1ZTogYm9vbGVhbikge1xuICAgIHRoaXMuYXJpYURlc2NyaWJlZGJ5ID0gdmFsdWUgPyBgJHt0aGlzLmlkfS1hcmlhZGVzY3JpYmVkYnlgIDogbnVsbDtcbiAgfVxuXG4gIHByaXZhdGUgb25Ub3VjaDogKCkgPT4gYW55ID0gKCkgPT4gdW5kZWZpbmVkO1xufVxuIiwiPGZpZWxkc2V0XG4gIHJvbGU9XCJyYWRpb2dyb3VwXCJcbiAgY2xhc3M9XCJiYW8tcmFkaW8tYnV0dG9uLWdyb3VwXCJcbiAgW2lkXT1cImlkXCJcbiAgW2F0dHIuYXJpYS1kZXNjcmliZWRieV09XCJhcmlhRGVzY3JpYmVkYnlcIlxuPlxuICA8bmctY29udGVudD48L25nLWNvbnRlbnQ+XG4gIDxkaXZcbiAgICBjbGFzcz1cImJhby1yYWRpby1idXR0b24tZ3JvdXAtZGVzY3JpcHRpb25cIlxuICAgIFthdHRyLmlkXT1cImFyaWFEZXNjcmliZWRieVwiXG4gICAgI2NvbnRhaW5lclxuICAgIChjZGtPYnNlcnZlQ29udGVudCk9XCJvbkNvbnRlbnRDaGFuZ2UoKVwiXG4gID5cbiAgICA8bmctY29udGVudFxuICAgICAgc2VsZWN0PVwiYmFvLWVycm9yLCBbYmFvLWVycm9yXSwgYmFvLWd1aWRpbmctdGV4dCwgW2Jhby1ndWlkaW5nLXRleHRdXCJcbiAgICA+PC9uZy1jb250ZW50PlxuICA8L2Rpdj5cbjwvZmllbGRzZXQ+XG4iXX0=
249
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicmFkaW8tZ3JvdXAuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvYW5ndWxhci11aS9zcmMvbGliL3JhZGlvL3JhZGlvLWdyb3VwLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2FuZ3VsYXItdWkvc3JjL2xpYi9yYWRpby9yYWRpby1ncm91cC5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQTs7OztHQUlHO0FBQ0gsT0FBTyxFQUFFLHFCQUFxQixFQUFFLE1BQU0sdUJBQXVCLENBQUM7QUFDOUQsT0FBTyxFQUlMLFNBQVMsRUFDVCxlQUFlLEVBRWYsWUFBWSxFQUNaLFVBQVUsRUFDVixjQUFjLEVBQ2QsS0FBSyxFQUNMLE1BQU0sRUFFTixTQUFTLEVBQ1QsaUJBQWlCLEVBQ2xCLE1BQU0sZUFBZSxDQUFDO0FBQ3ZCLE9BQU8sRUFBd0IsaUJBQWlCLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUN6RSxPQUFPLEVBQUUsdUJBQXVCLEVBQUUsTUFBTSxHQUFHLENBQUM7OztBQUU1Qzs7R0FFRztBQUNILE1BQU0sQ0FBQyxNQUFNLGVBQWUsR0FBRyxJQUFJLGNBQWMsQ0FDL0MscUJBQXFCLENBQ3RCLENBQUM7QUFDRjs7R0FFRztBQUNILElBQUksc0JBQXNCLEdBQUcsQ0FBQyxDQUFDO0FBa0IvQixNQUFNLE9BQU8sNEJBQTRCO0lBbUN2QyxZQUFvQixHQUFzQjtRQUF0QixRQUFHLEdBQUgsR0FBRyxDQUFtQjtRQTNCMUM7O1dBRUc7UUFDdUIsV0FBTSxHQUM5QixJQUFJLFlBQVksRUFBVSxDQUFDO1FBUTdCOztXQUVHO1FBQ0ksb0JBQWUsR0FBa0IsSUFBSSxDQUFDO1FBR3JDLFdBQU0sR0FBa0IsSUFBSSxDQUFDO1FBQzdCLFVBQUssR0FBa0IsSUFBSSxDQUFDO1FBQzVCLGNBQVMsR0FBbUMsSUFBSSxDQUFDO1FBQ2pELG1CQUFjLEdBQUcs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UEFUNUI7UUFDVDtZQUNFLE9BQU8sRUFBRSxpQkFBaUI7WUFDMUIsV0FBVyxFQUFFLFVBQVUsQ0FBQyxHQUFHLEVBQUUsQ0FBQyw0QkFBNEIsQ0FBQztZQUMzRCxLQUFLLEVBQUUsSUFBSTtTQUNaO1FBQ0QsRUFBRSxPQUFPLEVBQUUsZUFBZSxFQUFFLFdBQVcsRUFBRSw0QkFBNEIsRUFBRTtLQUN4RSw2RkFnQmlDLHVCQUF1QiwrTENsRTNELGtkQWtCQTsyRkRrQ2EsNEJBQTRCO2tCQWhCeEMsU0FBUzsrQkFFTix5RUFBeUUsWUFDakUsZUFBZSxpQkFHVixpQkFBaUIsQ0FBQyxJQUFJLGFBQzFCO3dCQUNUOzRCQUNFLE9BQU8sRUFBRSxpQkFBaUI7NEJBQzFCLFdBQVcsRUFBRSxVQUFVLENBQUMsR0FBRyxFQUFFLDZCQUE2QixDQUFDOzRCQUMzRCxLQUFLLEVBQUUsSUFBSTt5QkFDWjt3QkFDRCxFQUFFLE9BQU8sRUFBRSxlQUFlLEVBQUUsV0FBVyw4QkFBOEIsRUFBRTtxQkFDeEU7d0dBUWUsRUFBRTtzQkFBakIsS0FBSztnQkFLb0IsTUFBTTtzQkFBL0IsTUFBTTtnQkFPQyxlQUFlO3NCQUp0QixlQUFlO3VCQUFDLFVBQVUsQ0FBQyxHQUFHLEVBQUUsQ0FBQyx1QkFBdUIsQ0FBQyxFQUFFO3dCQUMxRCxXQUFXLEVBQUUsSUFBSTtxQkFDbEI7O3NCQUNBLFNBQVM7dUJBQUMsV0FBVyxFQUFFLEVBQUUsTUFBTSxFQUFFLEtBQUssRUFBRTtnQkE0QnJDLElBQUk7c0JBRFAsS0FBSztnQkFTRixLQUFLO3NCQURSLEtBQUs7Z0JBU0YsUUFBUTtzQkFEWCxLQUFLO2dCQVNGLFFBQVE7c0JBRFgsS0FBSztnQkFTRixRQUFRO3NCQURYLEtBQUsiLCJzb3VyY2VzQ29udGVudCI6WyIvKlxuICogQ29weXJpZ2h0IChjKSAyMDIyIFZpbGxlIGRlIE1vbnRyZWFsLiBBbGwgcmlnaHRzIHJlc2VydmVkLlxuICogTGljZW5zZWQgdW5kZXIgdGhlIE1JVCBsaWNlbnNlLlxuICogU2VlIExJQ0VOU0UgZmlsZSBpbiB0aGUgcHJvamVjdCByb290IGZvciBmdWxsIGxpY2Vuc2UgaW5mb3JtYXRpb24uXG4gKi9cbmltcG9ydCB7IGNvZXJjZUJvb2xlYW5Qcm9wZXJ0eSB9IGZyb20gJ0Bhbmd1bGFyL2Nkay9jb2VyY2lvbic7XG5pbXBvcnQge1xuICBBZnRlckNvbnRlbnRJbml0LFxuICBBZnRlclZpZXdJbml0LFxuICBDaGFuZ2VEZXRlY3RvclJlZixcbiAgQ29tcG9uZW50LFxuICBDb250ZW50Q2hpbGRyZW4sXG4gIEVsZW1lbnRSZWYsXG4gIEV2ZW50RW1pdHRlcixcbiAgZm9yd2FyZFJlZixcbiAgSW5qZWN0aW9uVG9rZW4sXG4gIElucHV0LFxuICBPdXRwdXQsXG4gIFF1ZXJ5TGlzdCxcbiAgVmlld0NoaWxkLFxuICBWaWV3RW5jYXBzdWxhdGlvblxufSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IENvbnRyb2xWYWx1ZUFjY2Vzc29yLCBOR19WQUxVRV9BQ0NFU1NPUiB9IGZyb20gJ0Bhbmd1bGFyL2Zvcm1zJztcbmltcG9ydCB7IEJhb1JhZGlvQnV0dG9uQ29tcG9uZW50IH0gZnJvbSAnLic7XG5cbi8qKlxuICogV2UgaGF2ZSB0byBpbmplY3QgdGhlIHJhZGlvIGJ1dHRvbiBncm91cCBhbmQgYWxsIGl0cyBjaGlsZHJlbiB0byBlYWNoIGNoaWxkLlxuICovXG5leHBvcnQgY29uc3QgQkFPX1JBRElPX0dST1VQID0gbmV3IEluamVjdGlvblRva2VuPEJhb1JhZGlvQnV0dG9uR3JvdXBDb21wb25lbnQ+KFxuICAnQmFvUmFkaW9CdXR0b25Hcm91cCdcbik7XG4vKipcbiAqIFVuaXF1ZSBJRCBmb3IgZWFjaCByYWRpbyBncm91cCBjb3VudGVyXG4gKi9cbmxldCByYWRpb0dyb3VwTmV4dFVuaXF1ZUlkID0gMDtcblxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOlxuICAgICdiYW8tcmFkaW8tYnV0dG9uLWdyb3VwLCBbYmFvLXJhZGlvLWJ1dHRvbi1ncm91cF0sIFtiYW9SYWRpb0J1dHRvbkdyb3VwXScsXG4gIGV4cG9ydEFzOiAnYmFvUmFkaW9Hcm91cCcsXG4gIHRlbXBsYXRlVXJsOiAnLi9yYWRpby1ncm91cC5jb21wb25lbnQuaHRtbCcsXG4gIHN0eWxlVXJsczogWycuL3JhZGlvLWdyb3VwLmNvbXBvbmVudC5zY3NzJ10sXG4gIGVuY2Fwc3VsYXRpb246IFZpZXdFbmNhcHN1bGF0aW9uLk5vbmUsXG4gIHByb3ZpZGVyczogW1xuICAgIHtcbiAgICAgIHByb3ZpZGU6IE5HX1ZBTFVFX0FDQ0VTU09SLFxuICAgICAgdXNlRXhpc3Rpbmc6IGZvcndhcmRSZWYoKCkgPT4gQmFvUmFkaW9CdXR0b25Hcm91cENvbXBvbmVudCksXG4gICAgICBtdWx0aTogdHJ1ZVxuICAgIH0sXG4gICAgeyBwcm92aWRlOiBCQU9fUkFESU9fR1JPVVAsIHVzZUV4aXN0aW5nOiBCYW9SYWRpb0J1dHRvbkdyb3VwQ29tcG9uZW50IH1cbiAgXVxufSlcbmV4cG9ydCBjbGFzcyBCYW9SYWRpb0J1dHRvbkdyb3VwQ29tcG9uZW50XG4gIGltcGxlbWVudHMgQWZ0ZXJDb250ZW50SW5pdCwgQ29udHJvbFZhbHVlQWNjZXNzb3IsIEFmdGVyVmlld0luaXRcbntcbiAgLyoqXG4gICAqIFRoZSBjaGVja2JveCBncm91cCBJRC4gSXQgaXMgc2V0IGR5bmFtaWNhbGx5IHdpdGggYW4gdW5pcXVlIElEIGJ5IGRlZmF1bHRcbiAgICovXG4gIEBJbnB1dCgpIHB1YmxpYyBpZDogc3RyaW5nO1xuXG4gIC8qKlxuICAgKiBFbWl0IHRoZSB2YWx1ZSBvZiB0aGUgc2VsZWN0ZWQgcmFkaW8gYnV0dG9uXG4gICAqL1xuICBAT3V0cHV0KCkgcHVibGljIHJlYWRvbmx5IGNoYW5nZTogRXZlbnRFbWl0dGVyPHN0cmluZz4gPVxuICAgIG5ldyBFdmVudEVtaXR0ZXI8c3RyaW5nPigpO1xuXG4gIEBDb250ZW50Q2hpbGRyZW4oZm9yd2FyZFJlZigoKSA9PiBCYW9SYWRpb0J1dHRvbkNvbXBvbmVudCksIHtcbiAgICBkZXNjZW5kYW50czogdHJ1ZVxuICB9KVxuICBAVmlld0NoaWxkKCdjb250YWluZXInLCB7IHN0YXRpYzogZmFsc2UgfSlcbiAgcHJpdmF0ZSBzdGF0aWNDb250YWluZXI6IEVsZW1lbnRSZWY7XG5cbiAgLyoqXG4gICAqIFRoZSBhcmlhLWRlc2NyaWJlZGJ5IGZvciB3ZWIgYWNjZXNzaWJpbHR5XG4gICAqL1xuICBwdWJsaWMgYXJpYURlc2NyaWJlZGJ5OiBzdHJpbmcgfCBudWxsID0gbnVsbDtcblxuICBwcml2YXRlIF9yYWRpb3M6IFF1ZXJ5TGlzdDxCYW9SYWRpb0J1dHRvbkNvbXBvbmVudD47XG4gIHByaXZhdGUgX3ZhbHVlOiBzdHJpbmcgfCBudWxsID0gbnVsbDtcbiAgcHJpdmF0ZSBfbmFtZTogc3RyaW5nIHwgbnVsbCA9IG51bGw7XG4gIHByaXZhdGUgX3NlbGVjdGVkOiBCYW9SYWRpb0J1dHRvbkNvbXBvbmVudCB8IG51bGwgPSBudWxsO1xuICBwcml2YXRlIF9pc0luaXRpYWxpemVkID0gZmFsc2U7XG4gIHByaXZhdGUgX2Rpc2FibGVkID0gZmFsc2U7XG4gIHByaXZhdGUgX3JlcXVpcmVkID0gZmFsc2U7XG5cbiAgcHJpdmF0ZSBfdW5pcXVlSWQgPSBgYmFvLWNoZWNrYm94LWdyb3VwLSR7KytyYWRpb0dyb3VwTmV4dFVuaXF1ZUlkfWA7XG5cbiAgY29uc3RydWN0b3IocHJpdmF0ZSBjZHI6IENoYW5nZURldGVjdG9yUmVmKSB7XG4gICAgaWYgKCF0aGlzLmlkKSB7XG4gICAgICB0aGlzLmlkID0gdGhpcy5fdW5pcXVlSWQ7XG4gICAgfVxuICB9XG5cbiAgLyoqXG4gICAqIERlZmluZSB0aGUgbmFtZSBwcm9wZXJ0eSBvZiBhbGwgcmFkaW8gYnV0dG9ucy4gRGVmYXVsdCA6IG51bGxcbiAgICovXG4gIEBJbnB1dCgpXG4gIGdldCBuYW1lKCk6IHN0cmluZyB8IG51bGwge1xuICAgIHJldHVybiB0aGlzLl9uYW1lO1xuICB9XG5cbiAgLyoqXG4gICAqIERlZmluZSB0aGUgdmFsdWUgb2YgdGhlIHNlbGVjdGVkIHJhZGlvIGJ1dHRvbi4gRGVmYXVsdCA6IG51bGxcbiAgICovXG4gIEBJbnB1dCgpXG4gIGdldCB2YWx1ZSgpOiBzdHJpbmcgfCBudWxsIHtcbiAgICByZXR1cm4gdGhpcy5fdmFsdWU7XG4gIH1cblxuICAvKipcbiAgICogRGVmaW5lIHdoaWNoIHJhZGlvIGJ1dHRvbiBpcyBzZWxlY3RlZC4gRGVmYXVsdCA6IG51bGxcbiAgICovXG4gIEBJbnB1dCgpXG4gIGdldCBzZWxlY3RlZCgpIHtcbiAgICByZXR1cm4gdGhpcy5fc2VsZWN0ZWQ7XG4gIH1cblxuICAvKipcbiAgICogV2hldGhlciB0aGUgcmFkaW8gYnV0dG9uIGdyb3VwZCBpcyBkaXNhYmxlZC4gRGVmYXVsdCA6IGZhbHNlXG4gICAqL1xuICBASW5wdXQoKVxuICBnZXQgZGlzYWJsZWQoKTogYm9vbGVhbiB7XG4gICAgcmV0dXJuIHRoaXMuX2Rpc2FibGVkO1xuICB9XG5cbiAgLyoqXG4gICAqIFdoZXRoZXIgdGhlIHJhZGlvIGJ1dHRvbiBncm91cGQgaXMgcmVxdWlyZWQuIERlZmF1bHQgOiBmYWxzZVxuICAgKi9cbiAgQElucHV0KClcbiAgZ2V0IHJlcXVpcmVkKCk6IGJvb2xlYW4ge1xuICAgIHJldHVybiB0aGlzLl9yZXF1aXJlZDtcbiAgfVxuXG4gIHNldCBuYW1lKHZhbHVlOiBzdHJpbmcgfCBudWxsKSB7XG4gICAgdGhpcy5fbmFtZSA9IHZhbHVlO1xuICAgIHRoaXMudXBkYXRlUmFkaW9CdXR0b25OYW1lcygpO1xuICB9XG5cbiAgc2V0IHZhbHVlKG5ld1ZhbHVlOiBzdHJpbmcgfCBudWxsKSB7XG4gICAgaWYgKHRoaXMuX3ZhbHVlICE9PSBuZXdWYWx1ZSkge1xuICAgICAgdGhpcy5fdmFsdWUgPSBuZXdWYWx1ZTtcbiAgICAgIHRoaXMudXBkYXRlU2VsZWN0ZWRSYWRpb0Zyb21WYWx1ZSgpO1xuICAgICAgdGhpcy5jaGVja1NlbGVjdGVkUmFkaW9CdXR0b24oKTtcbiAgICB9XG4gIH1cblxuICBzZXQgc2VsZWN0ZWQoc2VsZWN0ZWQ6IEJhb1JhZGlvQnV0dG9uQ29tcG9uZW50IHwgbnVsbCkge1xuICAgIHRoaXMuX3NlbGVjdGVkID0gc2VsZWN0ZWQ7XG4gICAgdGhpcy52YWx1ZSA9IHNlbGVjdGVkID8gc2VsZWN0ZWQudmFsdWUgOiBudWxsO1xuICAgIHRoaXMuY2hlY2tTZWxlY3RlZFJhZGlvQnV0dG9uKCk7XG4gIH1cblxuICBzZXQgZGlzYWJsZWQodmFsdWUpIHtcbiAgICB0aGlzLl9kaXNhYmxlZCA9IGNvZXJjZUJvb2xlYW5Qcm9wZXJ0eSh2YWx1ZSk7XG4gICAgdGhpcy5tYXJrUmFkaW9zRm9yQ2hlY2soKTtcbiAgfVxuXG4gIHNldCByZXF1aXJlZCh2YWx1ZTogYm9vbGVhbikge1xuICAgIHRoaXMuX3JlcXVpcmVkID0gY29lcmNlQm9vbGVhblByb3BlcnR5KHZhbHVlKTtcbiAgICB0aGlzLm1hcmtSYWRpb3NGb3JDaGVjaygpO1xuICB9XG5cbiAgcHVibGljIG5nQWZ0ZXJDb250ZW50SW5pdCgpIHtcbiAgICB0aGlzLl9pc0luaXRpYWxpemVkID0gdHJ1ZTtcbiAgfVxuXG4gIHB1YmxpYyBuZ0FmdGVyVmlld0luaXQoKSB7XG4gICAgdGhpcy5zZXRBcmlhRGVzY3JpYmVkQnlUb0Rlc2NyaXB0aW9uKCk7XG4gICAgdGhpcy5jZHIuZGV0ZWN0Q2hhbmdlcygpO1xuICB9XG5cbiAgLyoqXG4gICAqIEltcGxlbWVudCBDb250cm9sVmFsdWVBY2Nlc3NvclxuICAgKi9cbiAgcHVibGljIHdyaXRlVmFsdWUodmFsdWU6IHN0cmluZykge1xuICAgIHRoaXMudmFsdWUgPSB2YWx1ZTtcbiAgICB0aGlzLmNkci5tYXJrRm9yQ2hlY2soKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBJbXBsZW1lbnQgQ29udHJvbFZhbHVlQWNjZXNzb3JcbiAgICovXG4gIHB1YmxpYyByZWdpc3Rlck9uQ2hhbmdlKGZuOiAodmFsdWU6IGFueSkgPT4gdm9pZCkge1xuICAgIHRoaXMub25Nb2RlbENoYW5nZSA9IGZuO1xuICB9XG5cbiAgLyoqXG4gICAqIEltcGxlbWVudCBDb250cm9sVmFsdWVBY2Nlc3NvclxuICAgKi9cbiAgcHVibGljIHJlZ2lzdGVyT25Ub3VjaGVkKGZuOiBhbnkpIHtcbiAgICB0aGlzLm9uVG91Y2ggPSBmbjtcbiAgfVxuXG4gIC8qKlxuICAgKiBJbXBsZW1lbnQgQ29udHJvbFZhbHVlQWNjZXNzb3JcbiAgICovXG4gIHB1YmxpYyBzZXREaXNhYmxlZFN0YXRlKGlzRGlzYWJsZWQ6IGJvb2xlYW4pIHtcbiAgICB0aGlzLmRpc2FibGVkID0gaXNEaXNhYmxlZDtcbiAgICB0aGlzLmNkci5tYXJrRm9yQ2hlY2soKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBvblRvdWNoKCkgY2FsbGVkIGZyb20gdGhlIGJ1dHRvbiBjaGlsZHJlblxuICAgKi9cbiAgcHVibGljIG9uR3JvdXBUb3VjaCgpIHtcbiAgICBpZiAodGhpcy5vblRvdWNoKSB7XG4gICAgICB0aGlzLm9uVG91Y2goKTtcbiAgICB9XG4gIH1cblxuICAvKipcbiAgICogVXBkYXRlIGFsbCByYWRpbyBidXR0b24gbmFtZVxuICAgKi9cbiAgcHVibGljIHVwZGF0ZVJhZGlvQnV0dG9uTmFtZXMoKTogdm9pZCB7XG4gICAgaWYgKHRoaXMuX3JhZGlvcykge1xuICAgICAgdGhpcy5fcmFkaW9zLmZvckVhY2goKHJhZGlvOiBCYW9SYWRpb0J1dHRvbkNvbXBvbmVudCkgPT4ge1xuICAgICAgICByYWRpby5uYW1lID0gdGhpcy5uYW1lO1xuICAgICAgICByYWRpby5tYXJrRm9yQ2hlY2soKTtcbiAgICAgIH0pO1xuICAgIH1cbiAgfVxuXG4gIC8qKlxuICAgKiBEZWZpbmUgd2hpY2ggcmFkaW8gYnV0dG9uIGlzIHNlbGVjdGVkLlxuICAgKi9cbiAgcHVibGljIHVwZGF0ZVNlbGVjdGVkUmFkaW9Gcm9tVmFsdWUoKTogdm9pZCB7XG4gICAgY29uc3QgaXNBbHJlYWR5U2VsZWN0ZWQgPVxuICAgICAgdGhpcy5fc2VsZWN0ZWQgIT09IG51bGwgJiYgdGhpcy5fc2VsZWN0ZWQudmFsdWUgPT09IHRoaXMuX3ZhbHVlO1xuICAgIGlmICh0aGlzLl9yYWRpb3MgJiYgIWlzQWxyZWFkeVNlbGVjdGVkKSB7XG4gICAgICB0aGlzLl9zZWxlY3RlZCA9IG51bGw7XG4gICAgICB0aGlzLl9yYWRpb3MuZm9yRWFjaCgocmFkaW86IEJhb1JhZGlvQnV0dG9uQ29tcG9uZW50KSA9PiB7XG4gICAgICAgIHJhZGlvLmNoZWNrZWQgPSB0aGlzLnZhbHVlID09PSByYWRpby52YWx1ZTtcbiAgICAgICAgaWYgKHJhZGlvLmNoZWNrZWQpIHtcbiAgICAgICAgICB0aGlzLl9zZWxlY3RlZCA9IHJhZGlvO1xuICAgICAgICB9XG4gICAgICB9KTtcbiAgICB9XG4gIH1cblxuICAvKipcbiAgICogVXBkYXRlIGNoZWNrZWQgcHJvcGVydHkgb24gc2VsZWN0ZWQgcmFkaW8gYnV0dG9uXG4gICAqL1xuICBwdWJsaWMgY2hlY2tTZWxlY3RlZFJhZGlvQnV0dG9uKCkge1xuICAgIGlmICh0aGlzLl9zZWxlY3RlZCAmJiAhdGhpcy5fc2VsZWN0ZWQuY2hlY2tlZCkge1xuICAgICAgdGhpcy5fc2VsZWN0ZWQuY2hlY2tlZCA9IHRydWU7XG4gICAgfVxuICB9XG5cbiAgLyoqXG4gICAqIEVtaXQgdGhlIHZhbHVlIG9mIHRoZSBuZXcgc2VsZWN0ZWQgcmFkaW8gYnV0dG9uXG4gICAqL1xuICBwdWJsaWMgZW1pdENoYW5nZUV2ZW50KCk6IHZvaWQge1xuICAgIGlmICh0aGlzLl9pc0luaXRpYWxpemVkKSB7XG4gICAgICB0aGlzLmNoYW5nZS5lbWl0KHRoaXMudmFsdWUpO1xuICAgIH1cbiAgfVxuXG4gIC8qKlxuICAgKiBDYWxsIG1hcmtGb3JDaGVjayBmdW5jdGlvbiBvbiBhbGwgcmFkaW8gYnV0dG9ucyBzaW5jZSBvbmUgb2YgdGhlIHBhcmVudCBpbnB1dHMgY291bGQndCBoYXZlIGNoYW5nZSBtZWFud2hpbGUuIFByZXZlbnQgY2hhbmdlIGRldGVjdGlvbiBlcnJvci5cbiAgICovXG4gIHB1YmxpYyBtYXJrUmFkaW9zRm9yQ2hlY2soKSB7XG4gICAgaWYgKHRoaXMuX3JhZGlvcykge1xuICAgICAgdGhpcy5fcmFkaW9zLmZvckVhY2goKHJhZGlvOiBCYW9SYWRpb0J1dHRvbkNvbXBvbmVudCkgPT5cbiAgICAgICAgcmFkaW8ubWFya0ZvckNoZWNrKClcbiAgICAgICk7XG4gICAgfVxuICB9XG5cbiAgcHVibGljIG9uQ29udGVudENoYW5nZSgpIHtcbiAgICB0aGlzLnNldEFyaWFEZXNjcmliZWRCeVRvRGVzY3JpcHRpb24oKTtcbiAgfVxuXG4gIHB1YmxpYyBvbk1vZGVsQ2hhbmdlOiAodmFsdWU6IGFueSkgPT4gdm9pZCA9ICgpID0+IHVuZGVmaW5lZDtcblxuICAvKipcbiAgICogU2V0IHRoZSBhcmlhLWRlc2NyaWJlZGJ5IHByb3BlcnR5IHRvIGJhby1ndWlkaW5nLXRleHQgaWYgYXZhaWxhYmxlXG4gICAqL1xuICBwcml2YXRlIHNldEFyaWFEZXNjcmliZWRCeVRvRGVzY3JpcHRpb24oKSB7XG4gICAgY29uc3QgY2hpbGRyZW4gPSBBcnJheS5mcm9tKHRoaXMuc3RhdGljQ29udGFpbmVyLm5hdGl2ZUVsZW1lbnQuY2hpbGRyZW4pO1xuICAgIGlmIChjaGlsZHJlbi5sZW5ndGggPT09IDApIHtcbiAgICAgIHRoaXMuc2hvd0FyaWFEZXNjcmliZWRCeShmYWxzZSk7XG4gICAgICByZXR1cm47XG4gICAgfVxuXG4gICAgdGhpcy5zaG93QXJpYURlc2NyaWJlZEJ5KHRydWUpO1xuICB9XG5cbiAgcHJpdmF0ZSBzaG93QXJpYURlc2NyaWJlZEJ5KHZhbHVlOiBib29sZWFuKSB7XG4gICAgdGhpcy5hcmlhRGVzY3JpYmVkYnkgPSB2YWx1ZSA/IGAke3RoaXMuaWR9LWFyaWFkZXNjcmliZWRieWAgOiBudWxsO1xuICB9XG5cbiAgcHJpdmF0ZSBvblRvdWNoOiAoKSA9PiBhbnkgPSAoKSA9PiB1bmRlZmluZWQ7XG59XG4iLCI8ZmllbGRzZXRcbiAgcm9sZT1cInJhZGlvZ3JvdXBcIlxuICBjbGFzcz1cImJhby1yYWRpby1idXR0b24tZ3JvdXBcIlxuICBbaWRdPVwiaWRcIlxuICBbYXR0ci5hcmlhLWRlc2NyaWJlZGJ5XT1cImFyaWFEZXNjcmliZWRieVwiXG4+XG4gIDxuZy1jb250ZW50PjwvbmctY29udGVudD5cbiAgPGRpdlxuICAgIGNsYXNzPVwiYmFvLXJhZGlvLWJ1dHRvbi1ncm91cC1kZXNjcmlwdGlvblwiXG4gICAgW2F0dHIuaWRdPVwiYXJpYURlc2NyaWJlZGJ5XCJcbiAgICAjY29udGFpbmVyXG4gICAgKGNka09ic2VydmVDb250ZW50KT1cIm9uQ29udGVudENoYW5nZSgpXCJcbiAgPlxuICAgIDxuZy1jb250ZW50XG4gICAgICBzZWxlY3Q9XCJiYW8tZXJyb3IsIFtiYW8tZXJyb3JdLCBiYW8tZ3VpZGluZy10ZXh0LCBbYmFvLWd1aWRpbmctdGV4dF1cIlxuICAgID48L25nLWNvbnRlbnQ+XG4gIDwvZGl2PlxuPC9maWVsZHNldD5cbiJdfQ==
@@ -16,15 +16,6 @@ export class BaoRadioButtonComponent {
16
16
  this.cdr = cdr;
17
17
  this.focusMonitor = focusMonitor;
18
18
  this.radioDispatcher = radioDispatcher;
19
- this._checked = false;
20
- this._disabled = false;
21
- this._required = false;
22
- this._value = null;
23
- this._uniqueId = `bao-radio-button-${++radioNextUniqueId}`;
24
- /**
25
- * The radio button ID. It is set dynamically with an unique ID by default
26
- */
27
- this.id = this._uniqueId;
28
19
  /**
29
20
  * The aria-label for web accessibility
30
21
  */
@@ -57,6 +48,11 @@ export class BaoRadioButtonComponent {
57
48
  * The aria-labeledby id for web accessibilty
58
49
  */
59
50
  this.ariaLabelledby = null;
51
+ this._checked = false;
52
+ this._disabled = false;
53
+ this._required = false;
54
+ this._value = null;
55
+ this._uniqueId = `bao-radio-button-${++radioNextUniqueId}`;
60
56
  /** Unregister function for radioDispatcher */
61
57
  this._removeUniqueSelectionListener = () => undefined;
62
58
  this.radioGroup = radioGroup;
@@ -65,6 +61,9 @@ export class BaoRadioButtonComponent {
65
61
  this.checked = false;
66
62
  }
67
63
  });
64
+ if (!this.id) {
65
+ this.id = this._uniqueId;
66
+ }
68
67
  }
69
68
  /**
70
69
  * Whether the radio button is checked. Default : false
@@ -72,6 +71,27 @@ export class BaoRadioButtonComponent {
72
71
  get checked() {
73
72
  return this._checked;
74
73
  }
74
+ /**
75
+ * Define the radio button value. Default : null
76
+ */
77
+ get value() {
78
+ return this._value;
79
+ }
80
+ /**
81
+ * Whether the radio button is disabled. Default : false
82
+ */
83
+ get disabled() {
84
+ return this._disabled || (this.radioGroup && this.radioGroup.disabled);
85
+ }
86
+ /**
87
+ * Whether the radio button is required. Default : false
88
+ */
89
+ get required() {
90
+ return this._required || (this.radioGroup && this.radioGroup.required);
91
+ }
92
+ get nativeElement() {
93
+ return this.elementRef.nativeElement;
94
+ }
75
95
  set checked(value) {
76
96
  const newCheckedState = coerceBooleanProperty(value);
77
97
  if (this._checked !== newCheckedState) {
@@ -92,12 +112,6 @@ export class BaoRadioButtonComponent {
92
112
  this.cdr.markForCheck();
93
113
  }
94
114
  }
95
- /**
96
- * Define the radio button value. Default : null
97
- */
98
- get value() {
99
- return this._value;
100
- }
101
115
  set value(value) {
102
116
  if (value !== this._value) {
103
117
  this._value = value;
@@ -111,27 +125,12 @@ export class BaoRadioButtonComponent {
111
125
  }
112
126
  }
113
127
  }
114
- /**
115
- * Whether the radio button is disabled. Default : false
116
- */
117
- get disabled() {
118
- return this._disabled || (this.radioGroup && this.radioGroup.disabled);
119
- }
120
128
  set disabled(value) {
121
129
  this.setDisabled(coerceBooleanProperty(value));
122
130
  }
123
- /**
124
- * Whether the radio button is required. Default : false
125
- */
126
- get required() {
127
- return this._required || (this.radioGroup && this.radioGroup.required);
128
- }
129
131
  set required(value) {
130
132
  this._required = coerceBooleanProperty(value);
131
133
  }
132
- get nativeElement() {
133
- return this.elementRef.nativeElement;
134
- }
135
134
  focus(options, origin) {
136
135
  if (origin) {
137
136
  this.focusMonitor.focusVia(this.inputElement, origin, options);
@@ -222,15 +221,15 @@ export class BaoRadioButtonComponent {
222
221
  }
223
222
  }
224
223
  }
225
- BaoRadioButtonComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.1.1", ngImport: i0, type: BaoRadioButtonComponent, deps: [{ token: BAO_RADIO_GROUP, optional: true }, { token: i0.ElementRef }, { token: i0.ChangeDetectorRef }, { token: i1.FocusMonitor }, { token: i2.UniqueSelectionDispatcher }], target: i0.ɵɵFactoryTarget.Component });
226
- BaoRadioButtonComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.1.1", type: BaoRadioButtonComponent, selector: "bao-radio-button, [bao-radio-button]", inputs: { id: "id", ariaLabel: ["aria-label", "ariaLabel"], brandBorder: "brandBorder", inline: "inline", name: "name", checked: "checked", value: "value", disabled: "disabled", required: "required", hiddenLabel: "hiddenLabel" }, outputs: { change: "change" }, host: { properties: { "class.bao-radio-button-inline": "inline", "class.bao-radio-button-checked": "checked", "class.bao-radio-button-disabled": "disabled", "class.bao-radio-button-card": "brandBorder", "class.bao-radio-button-hidden-label": "hiddenLabel" }, classAttribute: "bao-radio-button" }, providers: [
224
+ BaoRadioButtonComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.2.1", ngImport: i0, type: BaoRadioButtonComponent, deps: [{ token: BAO_RADIO_GROUP, optional: true }, { token: i0.ElementRef }, { token: i0.ChangeDetectorRef }, { token: i1.FocusMonitor }, { token: i2.UniqueSelectionDispatcher }], target: i0.ɵɵFactoryTarget.Component });
225
+ BaoRadioButtonComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.2.1", type: BaoRadioButtonComponent, selector: "bao-radio-button, [bao-radio-button]", inputs: { id: "id", ariaLabel: ["aria-label", "ariaLabel"], brandBorder: "brandBorder", inline: "inline", name: "name", hiddenLabel: "hiddenLabel", checked: "checked", value: "value", disabled: "disabled", required: "required" }, outputs: { change: "change" }, host: { properties: { "class.bao-radio-button-inline": "inline", "class.bao-radio-button-checked": "checked", "class.bao-radio-button-disabled": "disabled", "class.bao-radio-button-card": "brandBorder", "class.bao-radio-button-hidden-label": "hiddenLabel" }, classAttribute: "bao-radio-button" }, providers: [
227
226
  {
228
227
  provide: NG_VALUE_ACCESSOR,
229
228
  useExisting: forwardRef(() => BaoRadioButtonComponent),
230
229
  multi: true
231
230
  }
232
- ], viewQueries: [{ propertyName: "inputElement", first: true, predicate: ["input"], descendants: true }], ngImport: i0, template: "<input\n #input\n type=\"radio\"\n [id]=\"inputID\"\n [checked]=\"checked\"\n [disabled]=\"disabled\"\n [attr.name]=\"name\"\n [attr.value]=\"value\"\n [required]=\"required\"\n [attr.aria-label]=\"ariaLabel\"\n [attr.aria-labelledby]=\"ariaLabelledby\"\n [attr.aria-describedby]=\"ariaDescribedby\"\n (change)=\"onInputInteraction($event)\"\n role=\"radio\"\n/>\n<label class=\"bao-radio-button-content-container\" [attr.for]=\"inputID\">\n <div class=\"bao-radio-button-label\" [id]=\"ariaLabelledby\">\n <ng-content></ng-content>\n </div>\n <ng-content\n select=\"bao-radio-button-description, [bao-radio-button-description], [baoRadioButtonDescription]\"\n ></ng-content>\n</label>\n", styles: [".bao-radio-button{display:block;font-size:1rem;line-height:1.5rem;min-height:1.5rem;padding-top:.5rem;padding-bottom:.5rem;padding-left:2rem;position:relative;z-index:1}.bao-radio-button input{box-sizing:border-box;left:0;opacity:0;overflow:visible;padding:0;position:absolute;z-index:-1}.bao-radio-button input:focus~.bao-radio-button-content-container:before{box-shadow:0 0 0 .1875rem #0079c480}.bao-radio-button label.bao-radio-button-content-container{color:#212529;font-weight:400;font-size:1rem;line-height:1.5rem;margin-bottom:0;position:relative;vertical-align:top}.bao-radio-button label.bao-radio-button-content-container:before{border-radius:50%;box-sizing:border-box;position:absolute;top:0;left:-2rem;display:block;margin:.125rem;width:1.25rem;height:1.25rem;pointer-events:none;content:\"\";background-color:#fff;border:#ced4da solid 1px;transition:background-color .15s ease-in-out,border-color .15s ease-in-out,box-shadow .15s ease-in-out}.bao-radio-button label.bao-radio-button-content-container:after{box-sizing:border-box;background:no-repeat 50%/1.5rem;content:\"\";display:block;height:1.5rem;left:-2rem;margin:0;position:absolute;top:0;width:1.5rem}.bao-radio-button label.bao-radio-button-content-container .bao-radio-button-label{color:#212529;display:block}.bao-radio-button label.bao-radio-button-content-container .bao-radio-button-description{color:#637381;display:block;margin-top:.5rem}.bao-radio-button.bao-radio-button-inline{display:inline-flex;margin-right:1rem}.bao-radio-button.bao-radio-button-card{padding:0;margin-bottom:1rem}.bao-radio-button.bao-radio-button-card:last-of-type{margin-bottom:0}.bao-radio-button.bao-radio-button-card label.bao-radio-button-content-container{display:flex;flex-direction:column;flex:1;justify-content:center;padding:1rem 1rem 1rem 3.5rem;position:relative;border:1px solid #ced4da;border-radius:.25rem;color:#637381;min-height:3.5rem}.bao-radio-button.bao-radio-button-card label.bao-radio-button-content-container:before{top:1rem;left:0;margin-left:1.125rem}.bao-radio-button.bao-radio-button-card label.bao-radio-button-content-container:after{top:1rem;left:0;margin-left:1rem}.bao-radio-button input:checked~.bao-radio-button-content-container:before{border-color:#097d6c;background-color:#097d6c}.bao-radio-button input:checked~.bao-radio-button-content-container:after{background-image:url(\"data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3e%3ccircle cx='12' cy='12' r='4' fill='%23ffffff'/%3e%3c/svg%3e\")}.bao-radio-button input:disabled~.bao-radio-button-content-container{color:#adb2bd;border-color:#dee2e6}.bao-radio-button input:disabled~.bao-radio-button-content-container:before{border-color:#ced4da;background-color:#ced4da}.bao-radio-button input:disabled~.bao-radio-button-content-container .bao-radio-button-label,.bao-radio-button input:disabled~.bao-radio-button-content-container .bao-radio-button-description{color:#adb2bd}.bao-radio-button.bao-radio-button-hidden-label .bao-radio-button-label{clip:rect(1px,1px,1px,1px);-webkit-clip-path:inset(50%);clip-path:inset(50%);height:1px;width:1px;margin:-1px;overflow:hidden;padding:0;position:absolute}.bao-radio-button.bao-radio-button-hidden-label label.bao-radio-button-content-container .bao-radio-button-description{margin-top:0}\n"], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None });
233
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.1.1", ngImport: i0, type: BaoRadioButtonComponent, decorators: [{
231
+ ], viewQueries: [{ propertyName: "inputElement", first: true, predicate: ["input"], descendants: true }], ngImport: i0, template: "<input\n #input\n type=\"radio\"\n [id]=\"inputID\"\n [checked]=\"checked\"\n [disabled]=\"disabled\"\n [attr.name]=\"name\"\n [attr.value]=\"value\"\n [required]=\"required\"\n [attr.aria-label]=\"ariaLabel\"\n [attr.aria-labelledby]=\"ariaLabelledby\"\n [attr.aria-describedby]=\"ariaDescribedby\"\n (change)=\"onInputInteraction($event)\"\n role=\"radio\"\n/>\n<label class=\"bao-radio-button-content-container\" [attr.for]=\"inputID\">\n <div class=\"bao-radio-button-label\" [id]=\"ariaLabelledby\">\n <ng-content></ng-content>\n </div>\n <ng-content\n select=\"bao-radio-button-description, [bao-radio-button-description], [baoRadioButtonDescription]\"\n ></ng-content>\n</label>\n", styles: [".bao-radio-button{display:block;font-size:1rem;line-height:1.5rem;min-height:1.5rem;padding-top:.5rem;padding-bottom:.5rem;padding-left:2rem;position:relative;z-index:1}.bao-radio-button input{box-sizing:border-box;left:0;opacity:0;overflow:visible;padding:0;position:absolute;z-index:-1}.bao-radio-button input:focus~.bao-radio-button-content-container:before{box-shadow:0 0 0 .1875rem #0079c480}.bao-radio-button label.bao-radio-button-content-container{color:#212529;font-weight:400;font-size:1rem;line-height:1.5rem;margin-bottom:0;position:relative;vertical-align:top}.bao-radio-button label.bao-radio-button-content-container:before{border-radius:50%;box-sizing:border-box;position:absolute;top:0;left:-2rem;display:block;margin:.125rem;width:1.25rem;height:1.25rem;pointer-events:none;content:\"\";background-color:#fff;border:#ced4da solid 1px;transition:background-color .15s ease-in-out,border-color .15s ease-in-out,box-shadow .15s ease-in-out}.bao-radio-button label.bao-radio-button-content-container:after{box-sizing:border-box;background:no-repeat 50%/1.5rem;content:\"\";display:block;height:1.5rem;left:-2rem;margin:0;position:absolute;top:0;width:1.5rem}.bao-radio-button label.bao-radio-button-content-container .bao-radio-button-label{color:#212529;display:block}.bao-radio-button label.bao-radio-button-content-container .bao-radio-button-description{color:#637381;display:block;margin-top:.5rem}.bao-radio-button.bao-radio-button-inline{display:inline-flex;margin-right:1rem}.bao-radio-button.bao-radio-button-card{padding:0;margin-bottom:1rem}.bao-radio-button.bao-radio-button-card:last-of-type{margin-bottom:0}.bao-radio-button.bao-radio-button-card label.bao-radio-button-content-container{display:flex;flex-direction:column;flex:1;justify-content:center;padding:1rem 1rem 1rem 3.5rem;position:relative;border:1px solid #ced4da;border-radius:.25rem;color:#637381;min-height:3.5rem}.bao-radio-button.bao-radio-button-card label.bao-radio-button-content-container:before{top:1rem;left:0;margin-left:1.125rem}.bao-radio-button.bao-radio-button-card label.bao-radio-button-content-container:after{top:1rem;left:0;margin-left:1rem}.bao-radio-button input:checked~.bao-radio-button-content-container:before{border-color:#097d6c;background-color:#097d6c}.bao-radio-button input:checked~.bao-radio-button-content-container:after{background-image:url(\"data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3e%3ccircle cx='12' cy='12' r='4' fill='%23ffffff'/%3e%3c/svg%3e\")}.bao-radio-button input:disabled~.bao-radio-button-content-container{color:#adb2bd;border-color:#dee2e6}.bao-radio-button input:disabled~.bao-radio-button-content-container:before{border-color:#ced4da;background-color:#ced4da}.bao-radio-button input:disabled~.bao-radio-button-content-container .bao-radio-button-label,.bao-radio-button input:disabled~.bao-radio-button-content-container .bao-radio-button-description{color:#adb2bd}.bao-radio-button.bao-radio-button-hidden-label .bao-radio-button-label{clip:rect(1px,1px,1px,1px);clip-path:inset(50%);height:1px;width:1px;margin:-1px;overflow:hidden;padding:0;position:absolute}.bao-radio-button.bao-radio-button-hidden-label label.bao-radio-button-content-container .bao-radio-button-description{margin-top:0}\n"], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None });
232
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.1", ngImport: i0, type: BaoRadioButtonComponent, decorators: [{
234
233
  type: Component,
235
234
  args: [{ selector: 'bao-radio-button, [bao-radio-button]', providers: [
236
235
  {
@@ -245,7 +244,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.1.1", ngImpor
245
244
  '[class.bao-radio-button-disabled]': 'disabled',
246
245
  '[class.bao-radio-button-card]': 'brandBorder',
247
246
  '[class.bao-radio-button-hidden-label]': 'hiddenLabel'
248
- }, template: "<input\n #input\n type=\"radio\"\n [id]=\"inputID\"\n [checked]=\"checked\"\n [disabled]=\"disabled\"\n [attr.name]=\"name\"\n [attr.value]=\"value\"\n [required]=\"required\"\n [attr.aria-label]=\"ariaLabel\"\n [attr.aria-labelledby]=\"ariaLabelledby\"\n [attr.aria-describedby]=\"ariaDescribedby\"\n (change)=\"onInputInteraction($event)\"\n role=\"radio\"\n/>\n<label class=\"bao-radio-button-content-container\" [attr.for]=\"inputID\">\n <div class=\"bao-radio-button-label\" [id]=\"ariaLabelledby\">\n <ng-content></ng-content>\n </div>\n <ng-content\n select=\"bao-radio-button-description, [bao-radio-button-description], [baoRadioButtonDescription]\"\n ></ng-content>\n</label>\n", styles: [".bao-radio-button{display:block;font-size:1rem;line-height:1.5rem;min-height:1.5rem;padding-top:.5rem;padding-bottom:.5rem;padding-left:2rem;position:relative;z-index:1}.bao-radio-button input{box-sizing:border-box;left:0;opacity:0;overflow:visible;padding:0;position:absolute;z-index:-1}.bao-radio-button input:focus~.bao-radio-button-content-container:before{box-shadow:0 0 0 .1875rem #0079c480}.bao-radio-button label.bao-radio-button-content-container{color:#212529;font-weight:400;font-size:1rem;line-height:1.5rem;margin-bottom:0;position:relative;vertical-align:top}.bao-radio-button label.bao-radio-button-content-container:before{border-radius:50%;box-sizing:border-box;position:absolute;top:0;left:-2rem;display:block;margin:.125rem;width:1.25rem;height:1.25rem;pointer-events:none;content:\"\";background-color:#fff;border:#ced4da solid 1px;transition:background-color .15s ease-in-out,border-color .15s ease-in-out,box-shadow .15s ease-in-out}.bao-radio-button label.bao-radio-button-content-container:after{box-sizing:border-box;background:no-repeat 50%/1.5rem;content:\"\";display:block;height:1.5rem;left:-2rem;margin:0;position:absolute;top:0;width:1.5rem}.bao-radio-button label.bao-radio-button-content-container .bao-radio-button-label{color:#212529;display:block}.bao-radio-button label.bao-radio-button-content-container .bao-radio-button-description{color:#637381;display:block;margin-top:.5rem}.bao-radio-button.bao-radio-button-inline{display:inline-flex;margin-right:1rem}.bao-radio-button.bao-radio-button-card{padding:0;margin-bottom:1rem}.bao-radio-button.bao-radio-button-card:last-of-type{margin-bottom:0}.bao-radio-button.bao-radio-button-card label.bao-radio-button-content-container{display:flex;flex-direction:column;flex:1;justify-content:center;padding:1rem 1rem 1rem 3.5rem;position:relative;border:1px solid #ced4da;border-radius:.25rem;color:#637381;min-height:3.5rem}.bao-radio-button.bao-radio-button-card label.bao-radio-button-content-container:before{top:1rem;left:0;margin-left:1.125rem}.bao-radio-button.bao-radio-button-card label.bao-radio-button-content-container:after{top:1rem;left:0;margin-left:1rem}.bao-radio-button input:checked~.bao-radio-button-content-container:before{border-color:#097d6c;background-color:#097d6c}.bao-radio-button input:checked~.bao-radio-button-content-container:after{background-image:url(\"data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3e%3ccircle cx='12' cy='12' r='4' fill='%23ffffff'/%3e%3c/svg%3e\")}.bao-radio-button input:disabled~.bao-radio-button-content-container{color:#adb2bd;border-color:#dee2e6}.bao-radio-button input:disabled~.bao-radio-button-content-container:before{border-color:#ced4da;background-color:#ced4da}.bao-radio-button input:disabled~.bao-radio-button-content-container .bao-radio-button-label,.bao-radio-button input:disabled~.bao-radio-button-content-container .bao-radio-button-description{color:#adb2bd}.bao-radio-button.bao-radio-button-hidden-label .bao-radio-button-label{clip:rect(1px,1px,1px,1px);-webkit-clip-path:inset(50%);clip-path:inset(50%);height:1px;width:1px;margin:-1px;overflow:hidden;padding:0;position:absolute}.bao-radio-button.bao-radio-button-hidden-label label.bao-radio-button-content-container .bao-radio-button-description{margin-top:0}\n"] }]
247
+ }, template: "<input\n #input\n type=\"radio\"\n [id]=\"inputID\"\n [checked]=\"checked\"\n [disabled]=\"disabled\"\n [attr.name]=\"name\"\n [attr.value]=\"value\"\n [required]=\"required\"\n [attr.aria-label]=\"ariaLabel\"\n [attr.aria-labelledby]=\"ariaLabelledby\"\n [attr.aria-describedby]=\"ariaDescribedby\"\n (change)=\"onInputInteraction($event)\"\n role=\"radio\"\n/>\n<label class=\"bao-radio-button-content-container\" [attr.for]=\"inputID\">\n <div class=\"bao-radio-button-label\" [id]=\"ariaLabelledby\">\n <ng-content></ng-content>\n </div>\n <ng-content\n select=\"bao-radio-button-description, [bao-radio-button-description], [baoRadioButtonDescription]\"\n ></ng-content>\n</label>\n", styles: [".bao-radio-button{display:block;font-size:1rem;line-height:1.5rem;min-height:1.5rem;padding-top:.5rem;padding-bottom:.5rem;padding-left:2rem;position:relative;z-index:1}.bao-radio-button input{box-sizing:border-box;left:0;opacity:0;overflow:visible;padding:0;position:absolute;z-index:-1}.bao-radio-button input:focus~.bao-radio-button-content-container:before{box-shadow:0 0 0 .1875rem #0079c480}.bao-radio-button label.bao-radio-button-content-container{color:#212529;font-weight:400;font-size:1rem;line-height:1.5rem;margin-bottom:0;position:relative;vertical-align:top}.bao-radio-button label.bao-radio-button-content-container:before{border-radius:50%;box-sizing:border-box;position:absolute;top:0;left:-2rem;display:block;margin:.125rem;width:1.25rem;height:1.25rem;pointer-events:none;content:\"\";background-color:#fff;border:#ced4da solid 1px;transition:background-color .15s ease-in-out,border-color .15s ease-in-out,box-shadow .15s ease-in-out}.bao-radio-button label.bao-radio-button-content-container:after{box-sizing:border-box;background:no-repeat 50%/1.5rem;content:\"\";display:block;height:1.5rem;left:-2rem;margin:0;position:absolute;top:0;width:1.5rem}.bao-radio-button label.bao-radio-button-content-container .bao-radio-button-label{color:#212529;display:block}.bao-radio-button label.bao-radio-button-content-container .bao-radio-button-description{color:#637381;display:block;margin-top:.5rem}.bao-radio-button.bao-radio-button-inline{display:inline-flex;margin-right:1rem}.bao-radio-button.bao-radio-button-card{padding:0;margin-bottom:1rem}.bao-radio-button.bao-radio-button-card:last-of-type{margin-bottom:0}.bao-radio-button.bao-radio-button-card label.bao-radio-button-content-container{display:flex;flex-direction:column;flex:1;justify-content:center;padding:1rem 1rem 1rem 3.5rem;position:relative;border:1px solid #ced4da;border-radius:.25rem;color:#637381;min-height:3.5rem}.bao-radio-button.bao-radio-button-card label.bao-radio-button-content-container:before{top:1rem;left:0;margin-left:1.125rem}.bao-radio-button.bao-radio-button-card label.bao-radio-button-content-container:after{top:1rem;left:0;margin-left:1rem}.bao-radio-button input:checked~.bao-radio-button-content-container:before{border-color:#097d6c;background-color:#097d6c}.bao-radio-button input:checked~.bao-radio-button-content-container:after{background-image:url(\"data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3e%3ccircle cx='12' cy='12' r='4' fill='%23ffffff'/%3e%3c/svg%3e\")}.bao-radio-button input:disabled~.bao-radio-button-content-container{color:#adb2bd;border-color:#dee2e6}.bao-radio-button input:disabled~.bao-radio-button-content-container:before{border-color:#ced4da;background-color:#ced4da}.bao-radio-button input:disabled~.bao-radio-button-content-container .bao-radio-button-label,.bao-radio-button input:disabled~.bao-radio-button-content-container .bao-radio-button-description{color:#adb2bd}.bao-radio-button.bao-radio-button-hidden-label .bao-radio-button-label{clip:rect(1px,1px,1px,1px);clip-path:inset(50%);height:1px;width:1px;margin:-1px;overflow:hidden;padding:0;position:absolute}.bao-radio-button.bao-radio-button-hidden-label label.bao-radio-button-content-container .bao-radio-button-description{margin-top:0}\n"] }]
249
248
  }], ctorParameters: function () { return [{ type: i3.BaoRadioButtonGroupComponent, decorators: [{
250
249
  type: Optional
251
250
  }, {
@@ -262,6 +261,13 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.1.1", ngImpor
262
261
  type: Input
263
262
  }], name: [{
264
263
  type: Input
264
+ }], hiddenLabel: [{
265
+ type: Input
266
+ }], change: [{
267
+ type: Output
268
+ }], inputElement: [{
269
+ type: ViewChild,
270
+ args: ['input', { static: false }]
265
271
  }], checked: [{
266
272
  type: Input
267
273
  }], value: [{
@@ -270,23 +276,16 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.1.1", ngImpor
270
276
  type: Input
271
277
  }], required: [{
272
278
  type: Input
273
- }], hiddenLabel: [{
274
- type: Input
275
- }], change: [{
276
- type: Output
277
- }], inputElement: [{
278
- type: ViewChild,
279
- args: ['input', { static: false }]
280
279
  }] } });
281
280
  export class BaoRadioDescription {
282
281
  }
283
- BaoRadioDescription.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.1.1", ngImport: i0, type: BaoRadioDescription, deps: [], target: i0.ɵɵFactoryTarget.Directive });
284
- BaoRadioDescription.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "12.0.0", version: "13.1.1", type: BaoRadioDescription, selector: "bao-radio-button-description, [bao-radio-button-description], [baoRadioButtonDescription]", host: { classAttribute: "bao-radio-button-description" }, ngImport: i0 });
285
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.1.1", ngImport: i0, type: BaoRadioDescription, decorators: [{
282
+ BaoRadioDescription.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.2.1", ngImport: i0, type: BaoRadioDescription, deps: [], target: i0.ɵɵFactoryTarget.Directive });
283
+ BaoRadioDescription.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "14.2.1", type: BaoRadioDescription, selector: "bao-radio-button-description, [bao-radio-button-description], [baoRadioButtonDescription]", host: { classAttribute: "bao-radio-button-description" }, ngImport: i0 });
284
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.1", ngImport: i0, type: BaoRadioDescription, decorators: [{
286
285
  type: Directive,
287
286
  args: [{
288
287
  selector: 'bao-radio-button-description, [bao-radio-button-description], [baoRadioButtonDescription]',
289
288
  host: { class: 'bao-radio-button-description' }
290
289
  }]
291
290
  }] });
292
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicmFkaW8uY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvYW5ndWxhci11aS9zcmMvbGliL3JhZGlvL3JhZGlvLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2FuZ3VsYXItdWkvc3JjL2xpYi9yYWRpby9yYWRpby5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFNQSxPQUFPLEVBQUUscUJBQXFCLEVBQUUsTUFBTSx1QkFBdUIsQ0FBQztBQUU5RCxPQUFPLEVBRUwsdUJBQXVCLEVBRXZCLFNBQVMsRUFDVCxTQUFTLEVBRVQsWUFBWSxFQUNaLFVBQVUsRUFDVixNQUFNLEVBQ04sS0FBSyxFQUdMLFFBQVEsRUFDUixNQUFNLEVBQ04sU0FBUyxFQUNULGlCQUFpQixFQUNsQixNQUFNLGVBQWUsQ0FBQztBQUN2QixPQUFPLEVBQUUsaUJBQWlCLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUNuRCxPQUFPLEVBQ0wsZUFBZSxFQUVoQixNQUFNLHlCQUF5QixDQUFDOzs7OztBQUVqQzs7R0FFRztBQUNILElBQUksaUJBQWlCLEdBQUcsQ0FBQyxDQUFDO0FBd0IxQixNQUFNLE9BQU8sdUJBQXVCO0lBa0psQyxZQUdFLFVBQXdDLEVBQ2hDLFVBQXNCLEVBQ3RCLEdBQXNCLEVBQ3RCLFlBQTBCLEVBQzFCLGVBQTBDO1FBSDFDLGVBQVUsR0FBVixVQUFVLENBQVk7UUFDdEIsUUFBRyxHQUFILEdBQUcsQ0FBbUI7UUFDdEIsaUJBQVksR0FBWixZQUFZLENBQWM7UUFDMUIsb0JBQWUsR0FBZixlQUFlLENBQTJCO1FBdEo1QyxhQUFRLEdBQUcsS0FBSyxDQUFDO1FBQ2pCLGNBQVMsR0FBRyxLQUFLLENBQUM7UUFDbEIsY0FBUyxHQUFHLEtBQUssQ0FBQztRQUNsQixXQUFNLEdBQWtCLElBQUksQ0FBQztRQUM3QixjQUFTLEdBQUcsb0JBQW9CLEVBQUUsaUJBQWlC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QUtVLE1BQU07c0JBQXJCLEtBQUs7Z0JBS1UsSUFBSTtzQkFBbkIsS0FBSztnQkFNRixPQUFPO3NCQURWLEtBQUs7Z0JBaUNGLEtBQUs7c0JBRFIsS0FBSztnQkFzQkYsUUFBUTtzQkFEWCxLQUFLO2dCQVlGLFFBQVE7c0JBRFgsS0FBSztnQkFXVSxXQUFXO3NCQUExQixLQUFLO2dCQUtvQixNQUFNO3NCQUEvQixNQUFNO2dCQU9DLFlBQVk7c0JBRG5CLFNBQVM7dUJBQUMsT0FBTyxFQUFFLEVBQUUsTUFBTSxFQUFFLEtBQUssRUFBRTs7QUFrS3ZDLE1BQU0sT0FBTyxtQkFBbUI7O2dIQUFuQixtQkFBbUI7b0dBQW5CLG1CQUFtQjsyRkFBbkIsbUJBQW1CO2tCQUwvQixTQUFTO21CQUFDO29CQUNULFFBQVEsRUFDTiw0RkFBNEY7b0JBQzlGLElBQUksRUFBRSxFQUFFLEtBQUssRUFBRSw4QkFBOEIsRUFBRTtpQkFDaEQiLCJzb3VyY2VzQ29udGVudCI6WyIvKlxuICogQ29weXJpZ2h0IChjKSAyMDIyIFZpbGxlIGRlIE1vbnRyZWFsLiBBbGwgcmlnaHRzIHJlc2VydmVkLlxuICogTGljZW5zZWQgdW5kZXIgdGhlIE1JVCBsaWNlbnNlLlxuICogU2VlIExJQ0VOU0UgZmlsZSBpbiB0aGUgcHJvamVjdCByb290IGZvciBmdWxsIGxpY2Vuc2UgaW5mb3JtYXRpb24uXG4gKi9cbmltcG9ydCB7IEZvY3VzTW9uaXRvciwgRm9jdXNPcmlnaW4gfSBmcm9tICdAYW5ndWxhci9jZGsvYTExeSc7XG5pbXBvcnQgeyBjb2VyY2VCb29sZWFuUHJvcGVydHkgfSBmcm9tICdAYW5ndWxhci9jZGsvY29lcmNpb24nO1xuaW1wb3J0IHsgVW5pcXVlU2VsZWN0aW9uRGlzcGF0Y2hlciB9IGZyb20gJ0Bhbmd1bGFyL2Nkay9jb2xsZWN0aW9ucyc7XG5pbXBvcnQge1xuICBBZnRlclZpZXdJbml0LFxuICBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneSxcbiAgQ2hhbmdlRGV0ZWN0b3JSZWYsXG4gIENvbXBvbmVudCxcbiAgRGlyZWN0aXZlLFxuICBFbGVtZW50UmVmLFxuICBFdmVudEVtaXR0ZXIsXG4gIGZvcndhcmRSZWYsXG4gIEluamVjdCxcbiAgSW5wdXQsXG4gIE9uRGVzdHJveSxcbiAgT25Jbml0LFxuICBPcHRpb25hbCxcbiAgT3V0cHV0LFxuICBWaWV3Q2hpbGQsXG4gIFZpZXdFbmNhcHN1bGF0aW9uXG59IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgTkdfVkFMVUVfQUNDRVNTT1IgfSBmcm9tICdAYW5ndWxhci9mb3Jtcyc7XG5pbXBvcnQge1xuICBCQU9fUkFESU9fR1JPVVAsXG4gIEJhb1JhZGlvQnV0dG9uR3JvdXBDb21wb25lbnRcbn0gZnJvbSAnLi9yYWRpby1ncm91cC5jb21wb25lbnQnO1xuXG4vKipcbiAqIFVuaXF1ZSBJRCBmb3IgZWFjaCByYWRpbyBidXR0b25cbiAqL1xubGV0IHJhZGlvTmV4dFVuaXF1ZUlkID0gMDtcblxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnYmFvLXJhZGlvLWJ1dHRvbiwgW2Jhby1yYWRpby1idXR0b25dJyxcbiAgdGVtcGxhdGVVcmw6ICdyYWRpby5jb21wb25lbnQuaHRtbCcsXG4gIHN0eWxlVXJsczogWycuL3JhZGlvLmNvbXBvbmVudC5zY3NzJ10sXG4gIHByb3ZpZGVyczogW1xuICAgIHtcbiAgICAgIHByb3ZpZGU6IE5HX1ZBTFVFX0FDQ0VTU09SLFxuICAgICAgdXNlRXhpc3Rpbmc6IGZvcndhcmRSZWYoKCkgPT4gQmFvUmFkaW9CdXR0b25Db21wb25lbnQpLFxuICAgICAgbXVsdGk6IHRydWVcbiAgICB9XG4gIF0sXG4gIGVuY2Fwc3VsYXRpb246IFZpZXdFbmNhcHN1bGF0aW9uLk5vbmUsXG4gIGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuT25QdXNoLFxuICBob3N0OiB7XG4gICAgY2xhc3M6ICdiYW8tcmFkaW8tYnV0dG9uJyxcbiAgICAnW2NsYXNzLmJhby1yYWRpby1idXR0b24taW5saW5lXSc6ICdpbmxpbmUnLFxuICAgICdbY2xhc3MuYmFvLXJhZGlvLWJ1dHRvbi1jaGVja2VkXSc6ICdjaGVja2VkJyxcbiAgICAnW2NsYXNzLmJhby1yYWRpby1idXR0b24tZGlzYWJsZWRdJzogJ2Rpc2FibGVkJyxcbiAgICAnW2NsYXNzLmJhby1yYWRpby1idXR0b24tY2FyZF0nOiAnYnJhbmRCb3JkZXInLFxuICAgICdbY2xhc3MuYmFvLXJhZGlvLWJ1dHRvbi1oaWRkZW4tbGFiZWxdJzogJ2hpZGRlbkxhYmVsJ1xuICB9XG59KVxuZXhwb3J0IGNsYXNzIEJhb1JhZGlvQnV0dG9uQ29tcG9uZW50XG4gIGltcGxlbWVudHMgQWZ0ZXJWaWV3SW5pdCwgT25Jbml0LCBPbkRlc3Ryb3lcbntcbiAgcHJpdmF0ZSBfY2hlY2tlZCA9IGZhbHNlO1xuICBwcml2YXRlIF9kaXNhYmxlZCA9IGZhbHNlO1xuICBwcml2YXRlIF9yZXF1aXJlZCA9IGZhbHNlO1xuICBwcml2YXRlIF92YWx1ZTogc3RyaW5nIHwgbnVsbCA9IG51bGw7XG4gIHByaXZhdGUgX3VuaXF1ZUlkID0gYGJhby1yYWRpby1idXR0b24tJHsrK3JhZGlvTmV4dFVuaXF1ZUlkfWA7XG5cbiAgLyoqXG4gICAqIFRoZSByYWRpbyBidXR0b24gSUQuIEl0IGlzIHNldCBkeW5hbWljYWxseSB3aXRoIGFuIHVuaXF1ZSBJRCBieSBkZWZhdWx0XG4gICAqL1xuICBASW5wdXQoKSBwdWJsaWMgaWQ6IHN0cmluZyA9IHRoaXMuX3VuaXF1ZUlkO1xuXG4gIC8qKlxuICAgKiBUaGUgYXJpYS1sYWJlbCBmb3Igd2ViIGFjY2Vzc2liaWxpdHlcbiAgICovXG4gIEBJbnB1dCgnYXJpYS1sYWJlbCcpIHB1YmxpYyBhcmlhTGFiZWw6IHN0cmluZyB8IG51bGwgPSBudWxsO1xuXG4gIC8qKlxuICAgKiBXaGV0aGVyIHRoZSByYWRpbyBidXR0b24gaGFzIGEgYm9yZGVyIGFuZCBpcyBjb25zaWRlcmVkIGFzIGEgY2FyZC5cbiAgICovXG4gIEBJbnB1dCgpIHB1YmxpYyBicmFuZEJvcmRlciA9IGZhbHNlO1xuXG4gIC8qKlxuICAgKiBXaGV0aGVyIHRoZSByYWRpbyBidXR0b24gaXMgaW5saW5lLlxuICAgKi9cbiAgQElucHV0KCkgcHVibGljIGlubGluZSA9IGZhbHNlO1xuXG4gIC8qKlxuICAgKiBUaGUgbmFtZSBwcm9wZXJ0eSBvZiB0aGUgcmFkaW8gYnV0dG9uXG4gICAqL1xuICBASW5wdXQoKSBwdWJsaWMgbmFtZTogc3RyaW5nIHwgbnVsbCA9IG51bGw7XG5cbiAgLyoqXG4gICAqIFdoZXRoZXIgdGhlIHJhZGlvIGJ1dHRvbiBpcyBjaGVja2VkLiBEZWZhdWx0IDogZmFsc2VcbiAgICovXG4gIEBJbnB1dCgpXG4gIGdldCBjaGVja2VkKCk6IGJvb2xlYW4ge1xuICAgIHJldHVybiB0aGlzLl9jaGVja2VkO1xuICB9XG4gIHNldCBjaGVja2VkKHZhbHVlOiBib29sZWFuKSB7XG4gICAgY29uc3QgbmV3Q2hlY2tlZFN0YXRlID0gY29lcmNlQm9vbGVhblByb3BlcnR5KHZhbHVlKTtcbiAgICBpZiAodGhpcy5fY2hlY2tlZCAhPT0gbmV3Q2hlY2tlZFN0YXRlKSB7XG4gICAgICB0aGlzLl9jaGVja2VkID0gbmV3Q2hlY2tlZFN0YXRlO1xuICAgICAgaWYgKFxuICAgICAgICBuZXdDaGVja2VkU3RhdGUgJiZcbiAgICAgICAgdGhpcy5yYWRpb0dyb3VwICYmXG4gICAgICAgIHRoaXMucmFkaW9Hcm91cC52YWx1ZSAhPT0gdGhpcy52YWx1ZVxuICAgICAgKSB7XG4gICAgICAgIHRoaXMucmFkaW9Hcm91cC5zZWxlY3RlZCA9IHRoaXM7XG4gICAgICB9IGVsc2UgaWYgKFxuICAgICAgICAhbmV3Q2hlY2tlZFN0YXRlICYmXG4gICAgICAgIHRoaXMucmFkaW9Hcm91cCAmJlxuICAgICAgICB0aGlzLnJhZGlvR3JvdXAudmFsdWUgPT09IHRoaXMudmFsdWVcbiAgICAgICkge1xuICAgICAgICB0aGlzLnJhZGlvR3JvdXAuc2VsZWN0ZWQgPSBudWxsO1xuICAgICAgfVxuXG4gICAgICBpZiAobmV3Q2hlY2tlZFN0YXRlKSB7XG4gICAgICAgIHRoaXMucmFkaW9EaXNwYXRjaGVyLm5vdGlmeSh0aGlzLmlkLCB0aGlzLm5hbWUpO1xuICAgICAgfVxuICAgICAgdGhpcy5jZHIubWFya0ZvckNoZWNrKCk7XG4gICAgfVxuICB9XG5cbiAgLyoqXG4gICAqIERlZmluZSB0aGUgcmFkaW8gYnV0dG9uIHZhbHVlLiBEZWZhdWx0IDogbnVsbFxuICAgKi9cbiAgQElucHV0KClcbiAgZ2V0IHZhbHVlKCk6IHN0cmluZyB7XG4gICAgcmV0dXJuIHRoaXMuX3ZhbHVlO1xuICB9XG4gIHNldCB2YWx1ZSh2YWx1ZTogc3RyaW5nKSB7XG4gICAgaWYgKHZhbHVlICE9PSB0aGlzLl92YWx1ZSkge1xuICAgICAgdGhpcy5fdmFsdWUgPSB2YWx1ZTtcbiAgICAgIGlmICh0aGlzLnJhZGlvR3JvdXApIHtcbiAgICAgICAgaWYgKCF0aGlzLmNoZWNrZWQpIHtcbiAgICAgICAgICB0aGlzLmNoZWNrZWQgPSB0aGlzLnJhZGlvR3JvdXAudmFsdWUgPT09IHZhbHVlO1xuICAgICAgICB9XG4gICAgICAgIGlmICh0aGlzLmNoZWNrZWQpIHtcbiAgICAgICAgICB0aGlzLnJhZGlvR3JvdXAuc2VsZWN0ZWQgPSB0aGlzO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgLyoqXG4gICAqIFdoZXRoZXIgdGhlIHJhZGlvIGJ1dHRvbiBpcyBkaXNhYmxlZC4gRGVmYXVsdCA6IGZhbHNlXG4gICAqL1xuICBASW5wdXQoKVxuICBnZXQgZGlzYWJsZWQoKTogYm9vbGVhbiB7XG4gICAgcmV0dXJuIHRoaXMuX2Rpc2FibGVkIHx8ICh0aGlzLnJhZGlvR3JvdXAgJiYgdGhpcy5yYWRpb0dyb3VwLmRpc2FibGVkKTtcbiAgfVxuICBzZXQgZGlzYWJsZWQodmFsdWU6IGJvb2xlYW4pIHtcbiAgICB0aGlzLnNldERpc2FibGVkKGNvZXJjZUJvb2xlYW5Qcm9wZXJ0eSh2YWx1ZSkpO1xuICB9XG5cbiAgLyoqXG4gICAqIFdoZXRoZXIgdGhlIHJhZGlvIGJ1dHRvbiBpcyByZXF1aXJlZC4gRGVmYXVsdCA6IGZhbHNlXG4gICAqL1xuICBASW5wdXQoKVxuICBnZXQgcmVxdWlyZWQoKTogYm9vbGVhbiB7XG4gICAgcmV0dXJuIHRoaXMuX3JlcXVpcmVkIHx8ICh0aGlzLnJhZGlvR3JvdXAgJiYgdGhpcy5yYWRpb0dyb3VwLnJlcXVpcmVkKTtcbiAgfVxuICBzZXQgcmVxdWlyZWQodmFsdWU6IGJvb2xlYW4pIHtcbiAgICB0aGlzLl9yZXF1aXJlZCA9IGNvZXJjZUJvb2xlYW5Qcm9wZXJ0eSh2YWx1ZSk7XG4gIH1cblxuICAvKipcbiAgICogVGhlIHZpc2libGUgc3RhdGUgb2YgdGhlIGxhYmVsXG4gICAqL1xuICBASW5wdXQoKSBwdWJsaWMgaGlkZGVuTGFiZWwgPSBmYWxzZTtcblxuICAvKipcbiAgICogRW1pdHRlZCBib29sZWFuIG9uIGNoYW5nZVxuICAgKi9cbiAgQE91dHB1dCgpIHB1YmxpYyByZWFkb25seSBjaGFuZ2U6IEV2ZW50RW1pdHRlcjxzdHJpbmc+ID1cbiAgICBuZXcgRXZlbnRFbWl0dGVyPHN0cmluZz4oKTtcblxuICAvKipcbiAgICogUmVmZXJlbmNlIHRvIHRoZSBpbnB1dCBodG1sIGVsZW1lbnRcbiAgICovXG4gIEBWaWV3Q2hpbGQoJ2lucHV0JywgeyBzdGF0aWM6IGZhbHNlIH0pXG4gIHByaXZhdGUgaW5wdXRFbGVtZW50OiBFbGVtZW50UmVmPEhUTUxJbnB1dEVsZW1lbnQ+O1xuXG4gIC8qKlxuICAgKiBUaGUgcmFkaW8gYnV0dG9ucyBncm91cFxuICAgKi9cbiAgcHVibGljIHJhZGlvR3JvdXA6IEJhb1JhZGlvQnV0dG9uR3JvdXBDb21wb25lbnQ7XG5cbiAgLyoqXG4gICAqIFRoZSBhcmlhLWRlc2NyaWJlZGJ5IGlkIGZvciB3ZWIgYWNjZXNzaWJpbHR5XG4gICAqL1xuICBwdWJsaWMgYXJpYURlc2NyaWJlZGJ5OiBzdHJpbmcgfCBudWxsID0gbnVsbDtcblxuICAvKipcbiAgICogVGhlIGFyaWEtbGFiZWxlZGJ5IGlkIGZvciB3ZWIgYWNjZXNzaWJpbHR5XG4gICAqL1xuICBwdWJsaWMgYXJpYUxhYmVsbGVkYnk6IHN0cmluZyB8IG51bGwgPSBudWxsO1xuXG4gIC8qKlxuICAgKiBUaGUgSUQgb2YgdGhlIGlucHV0IGh0bWwgZWxlbWVudFxuICAgKi9cbiAgcHVibGljIGlucHV0SUQ6IHN0cmluZztcblxuICBjb25zdHJ1Y3RvcihcbiAgICBAT3B0aW9uYWwoKVxuICAgIEBJbmplY3QoQkFPX1JBRElPX0dST1VQKVxuICAgIHJhZGlvR3JvdXA6IEJhb1JhZGlvQnV0dG9uR3JvdXBDb21wb25lbnQsXG4gICAgcHJpdmF0ZSBlbGVtZW50UmVmOiBFbGVtZW50UmVmLFxuICAgIHByaXZhdGUgY2RyOiBDaGFuZ2VEZXRlY3RvclJlZixcbiAgICBwcml2YXRlIGZvY3VzTW9uaXRvcjogRm9jdXNNb25pdG9yLFxuICAgIHByaXZhdGUgcmFkaW9EaXNwYXRjaGVyOiBVbmlxdWVTZWxlY3Rpb25EaXNwYXRjaGVyXG4gICkge1xuICAgIHRoaXMucmFkaW9Hcm91cCA9IHJhZGlvR3JvdXA7XG4gICAgdGhpcy5fcmVtb3ZlVW5pcXVlU2VsZWN0aW9uTGlzdGVuZXIgPSByYWRpb0Rpc3BhdGNoZXIubGlzdGVuKFxuICAgICAgKGlkOiBzdHJpbmcsIG5hbWU6IHN0cmluZykgPT4ge1xuICAgICAgICBpZiAoaWQgIT09IHRoaXMuaWQgJiYgbmFtZSA9PT0gdGhpcy5uYW1lKSB7XG4gICAgICAgICAgdGhpcy5jaGVja2VkID0gZmFsc2U7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICApO1xuICB9XG5cbiAgZ2V0IG5hdGl2ZUVsZW1lbnQoKTogSFRNTEVsZW1lbnQge1xuICAgIHJldHVybiB0aGlzLmVsZW1lbnRSZWYubmF0aXZlRWxlbWVudDtcbiAgfVxuXG4gIHB1YmxpYyBmb2N1cyhvcHRpb25zPzogRm9jdXNPcHRpb25zLCBvcmlnaW4/OiBGb2N1c09yaWdpbik6IHZvaWQge1xuICAgIGlmIChvcmlnaW4pIHtcbiAgICAgIHRoaXMuZm9jdXNNb25pdG9yLmZvY3VzVmlhKHRoaXMuaW5wdXRFbGVtZW50LCBvcmlnaW4sIG9wdGlvbnMpO1xuICAgIH0gZWxzZSB7XG4gICAgICB0aGlzLmlucHV0RWxlbWVudC5uYXRpdmVFbGVtZW50LmZvY3VzKG9wdGlvbnMpO1xuICAgIH1cbiAgfVxuXG4gIC8qKlxuICAgKiBNZXRob2QgY2FsbGVkIGZyb20gdGhlIHBhcmVudCBhcyBvbmUgb2YgdGhlIHBhcmVudCBpbnB1dCBoYXMgY2hhbmdlZC4gUHJldmVudCBjaGFuZ2UgZGV0ZWN0aW9uIGVycm9yLlxuICAgKi9cbiAgcHVibGljIG1hcmtGb3JDaGVjaygpIHtcbiAgICB0aGlzLmNkci5tYXJrRm9yQ2hlY2soKTtcbiAgfVxuXG4gIHB1YmxpYyBuZ09uSW5pdCgpIHtcbiAgICAvLyBTZXQgYWxsIHVuaXF1ZSBpZHMgZm9yIHRoZSBodG1sIGVsZW1lbnRzXG4gICAgdGhpcy5pbnB1dElEID0gYCR7dGhpcy5pZH0taW5wdXRgO1xuICAgIHRoaXMuYXJpYUxhYmVsbGVkYnkgPSBgJHt0aGlzLmlkfS1hcmlhbGFiZWxsZWRieWA7XG5cbiAgICBpZiAodGhpcy5yYWRpb0dyb3VwKSB7XG4gICAgICB0aGlzLmNoZWNrZWQgPSB0aGlzLnJhZGlvR3JvdXAudmFsdWUgPT09IHRoaXMuX3ZhbHVlO1xuXG4gICAgICBpZiAodGhpcy5jaGVja2VkKSB7XG4gICAgICAgIHRoaXMucmFkaW9Hcm91cC5zZWxlY3RlZCA9IHRoaXM7XG4gICAgICB9XG5cbiAgICAgIHRoaXMubmFtZSA9IHRoaXMucmFkaW9Hcm91cC5uYW1lO1xuICAgIH1cbiAgfVxuXG4gIHB1YmxpYyBuZ0FmdGVyVmlld0luaXQoKSB7XG4gICAgdGhpcy5mb2N1c01vbml0b3JcbiAgICAgIC5tb25pdG9yKHRoaXMuaW5wdXRFbGVtZW50LCB0cnVlKVxuICAgICAgLnN1YnNjcmliZShmb2N1c09yaWdpbiA9PiB7XG4gICAgICAgIGlmICghZm9jdXNPcmlnaW4gJiYgdGhpcy5yYWRpb0dyb3VwKSB7XG4gICAgICAgICAgdGhpcy5yYWRpb0dyb3VwLm9uR3JvdXBUb3VjaCgpO1xuICAgICAgICB9XG4gICAgICB9KTtcblxuICAgIHRoaXMuc2V0QXJpYURlc2NyaWJlZEJ5VG9EZXNjcmlwdGlvbigpO1xuICB9XG5cbiAgcHVibGljIG5nT25EZXN0cm95KCkge1xuICAgIHRoaXMuZm9jdXNNb25pdG9yLnN0b3BNb25pdG9yaW5nKHRoaXMuaW5wdXRFbGVtZW50KTtcbiAgICB0aGlzLl9yZW1vdmVVbmlxdWVTZWxlY3Rpb25MaXN0ZW5lcjtcbiAgfVxuXG4gIC8qKlxuICAgKiBFbWl0IHRoZSBuZXcgdmFsdWUgZnJvbSB0aGUgc2VsZWN0ZWQgcmFkaW8tYnV0dG9uIGFuZCB0aGUgcGFyZW50XG4gICAqL1xuICBwdWJsaWMgb25JbnB1dEludGVyYWN0aW9uKGV2ZW50OiBFdmVudCkge1xuICAgIGV2ZW50LnN0b3BQcm9wYWdhdGlvbigpO1xuICAgIGlmICghdGhpcy5jaGVja2VkICYmICF0aGlzLmRpc2FibGVkKSB7XG4gICAgICBjb25zdCBncm91cFZhbHVlQ2hhbmdlZCA9XG4gICAgICAgIHRoaXMucmFkaW9Hcm91cCAmJiB0aGlzLnZhbHVlICE9PSB0aGlzLnJhZGlvR3JvdXAudmFsdWU7XG4gICAgICB0aGlzLmNoZWNrZWQgPSB0cnVlO1xuICAgICAgdGhpcy5lbWl0Q2hhbmdlRXZlbnQoKTtcblxuICAgICAgaWYgKHRoaXMucmFkaW9Hcm91cCkge1xuICAgICAgICB0aGlzLnJhZGlvR3JvdXAub25Nb2RlbENoYW5nZSh0aGlzLnZhbHVlKTtcbiAgICAgICAgaWYgKGdyb3VwVmFsdWVDaGFuZ2VkKSB7XG4gICAgICAgICAgdGhpcy5yYWRpb0dyb3VwLmVtaXRDaGFuZ2VFdmVudCgpO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgcHJpdmF0ZSBlbWl0Q2hhbmdlRXZlbnQoKTogdm9pZCB7XG4gICAgdGhpcy5jaGFuZ2UuZW1pdCh0aGlzLnZhbHVlKTtcbiAgfVxuXG4gIHByaXZhdGUgc2V0RGlzYWJsZWQodmFsdWU6IGJvb2xlYW4pIHtcbiAgICBpZiAodGhpcy5fZGlzYWJsZWQgIT09IHZhbHVlKSB7XG4gICAgICB0aGlzLl9kaXNhYmxlZCA9IHZhbHVlO1xuICAgICAgdGhpcy5jZHIubWFya0ZvckNoZWNrKCk7XG4gICAgfVxuICB9XG5cbiAgLyoqXG4gICAqIFNldCB0aGUgaWQgcHJvcGVydHkgdG8gYmFvLXJhZGlvLWJ1dHRvbi1kZXNjcmlwdGlvbiBhcyBhIGRlc2NyaXB0aW9uIHRvIHRoZSBpbnB1dFxuICAgKi9cbiAgcHJpdmF0ZSBzZXRBcmlhRGVzY3JpYmVkQnlUb0Rlc2NyaXB0aW9uKCkge1xuICAgIGNvbnN0IGNoaWxkTm9kZXMgPSBBcnJheS5mcm9tKHRoaXMubmF0aXZlRWxlbWVudC5jaGlsZE5vZGVzKTtcbiAgICBjb25zdCBsYWJlbE5vZGUgPSBjaGlsZE5vZGVzLmZpbmQoeCA9PiB7XG4gICAgICByZXR1cm4geC5ub2RlTmFtZSA9PT0gJ0xBQkVMJztcbiAgICB9KTtcbiAgICBpZiAobGFiZWxOb2RlKSB7XG4gICAgICBjb25zdCBsYWJlbENoaWxkTm9kZXMgPSBBcnJheS5mcm9tKGxhYmVsTm9kZS5jaGlsZE5vZGVzKTtcbiAgICAgIGNvbnN0IGRlc2NyaXB0aW9uTm9kZSA9IGxhYmVsQ2hpbGROb2Rlcy5maW5kKHggPT4ge1xuICAgICAgICByZXR1cm4geC5ub2RlTmFtZSA9PT0gJ0JBTy1SQURJTy1CVVRUT04tREVTQ1JJUFRJT04nO1xuICAgICAgfSk7XG5cbiAgICAgIGlmIChkZXNjcmlwdGlvbk5vZGUpIHtcbiAgICAgICAgdGhpcy5hcmlhRGVzY3JpYmVkYnkgPSBgJHt0aGlzLmlkfS1hcmlhZGVzY3JpYmVkYnlgO1xuICAgICAgICAoZGVzY3JpcHRpb25Ob2RlIGFzIEhUTUxFbGVtZW50KS5zZXRBdHRyaWJ1dGUoXG4gICAgICAgICAgJ2lkJyxcbiAgICAgICAgICB0aGlzLmFyaWFEZXNjcmliZWRieVxuICAgICAgICApO1xuICAgICAgfSBlbHNlIHtcbiAgICAgICAgdGhpcy5hcmlhRGVzY3JpYmVkYnkgPSBudWxsO1xuICAgICAgfVxuXG4gICAgICB0aGlzLmNkci5kZXRlY3RDaGFuZ2VzKCk7XG4gICAgfVxuICB9XG5cbiAgLyoqIFVucmVnaXN0ZXIgZnVuY3Rpb24gZm9yIHJhZGlvRGlzcGF0Y2hlciAqL1xuICBwcml2YXRlIF9yZW1vdmVVbmlxdWVTZWxlY3Rpb25MaXN0ZW5lcjogKCkgPT4gdm9pZCA9ICgpID0+IHVuZGVmaW5lZDtcbn1cblxuQERpcmVjdGl2ZSh7XG4gIHNlbGVjdG9yOlxuICAgICdiYW8tcmFkaW8tYnV0dG9uLWRlc2NyaXB0aW9uLCBbYmFvLXJhZGlvLWJ1dHRvbi1kZXNjcmlwdGlvbl0sICBbYmFvUmFkaW9CdXR0b25EZXNjcmlwdGlvbl0nLFxuICBob3N0OiB7IGNsYXNzOiAnYmFvLXJhZGlvLWJ1dHRvbi1kZXNjcmlwdGlvbicgfVxufSlcbmV4cG9ydCBjbGFzcyBCYW9SYWRpb0Rlc2NyaXB0aW9uIHt9XG4iLCI8aW5wdXRcbiAgI2lucHV0XG4gIHR5cGU9XCJyYWRpb1wiXG4gIFtpZF09XCJpbnB1dElEXCJcbiAgW2NoZWNrZWRdPVwiY2hlY2tlZFwiXG4gIFtkaXNhYmxlZF09XCJkaXNhYmxlZFwiXG4gIFthdHRyLm5hbWVdPVwibmFtZVwiXG4gIFthdHRyLnZhbHVlXT1cInZhbHVlXCJcbiAgW3JlcXVpcmVkXT1cInJlcXVpcmVkXCJcbiAgW2F0dHIuYXJpYS1sYWJlbF09XCJhcmlhTGFiZWxcIlxuICBbYXR0ci5hcmlhLWxhYmVsbGVkYnldPVwiYXJpYUxhYmVsbGVkYnlcIlxuICBbYXR0ci5hcmlhLWRlc2NyaWJlZGJ5XT1cImFyaWFEZXNjcmliZWRieVwiXG4gIChjaGFuZ2UpPVwib25JbnB1dEludGVyYWN0aW9uKCRldmVudClcIlxuICByb2xlPVwicmFkaW9cIlxuLz5cbjxsYWJlbCBjbGFzcz1cImJhby1yYWRpby1idXR0b24tY29udGVudC1jb250YWluZXJcIiBbYXR0ci5mb3JdPVwiaW5wdXRJRFwiPlxuICA8ZGl2IGNsYXNzPVwiYmFvLXJhZGlvLWJ1dHRvbi1sYWJlbFwiIFtpZF09XCJhcmlhTGFiZWxsZWRieVwiPlxuICAgIDxuZy1jb250ZW50PjwvbmctY29udGVudD5cbiAgPC9kaXY+XG4gIDxuZy1jb250ZW50XG4gICAgc2VsZWN0PVwiYmFvLXJhZGlvLWJ1dHRvbi1kZXNjcmlwdGlvbiwgW2Jhby1yYWRpby1idXR0b24tZGVzY3JpcHRpb25dLCBbYmFvUmFkaW9CdXR0b25EZXNjcmlwdGlvbl1cIlxuICA+PC9uZy1jb250ZW50PlxuPC9sYWJlbD5cbiJdfQ==
291
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicmFkaW8uY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvYW5ndWxhci11aS9zcmMvbGliL3JhZGlvL3JhZGlvLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2FuZ3VsYXItdWkvc3JjL2xpYi9yYWRpby9yYWRpby5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFNQSxPQUFPLEVBQUUscUJBQXFCLEVBQUUsTUFBTSx1QkFBdUIsQ0FBQztBQUU5RCxPQUFPLEVBRUwsdUJBQXVCLEVBRXZCLFNBQVMsRUFDVCxTQUFTLEVBRVQsWUFBWSxFQUNaLFVBQVUsRUFDVixNQUFNLEVBQ04sS0FBSyxFQUdMLFFBQVEsRUFDUixNQUFNLEVBQ04sU0FBUyxFQUNULGlCQUFpQixFQUNsQixNQUFNLGVBQWUsQ0FBQztBQUN2QixPQUFPLEVBQUUsaUJBQWlCLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUNuRCxPQUFPLEVBQ0wsZUFBZSxFQUVoQixNQUFNLHlCQUF5QixDQUFDOzs7OztBQUVqQzs7R0FFRztBQUNILElBQUksaUJBQWlCLEdBQUcsQ0FBQyxDQUFDO0FBd0IxQixNQUFNLE9BQU8sdUJBQXVCO0lBdUVsQyxZQUdFLFVBQXdDLEVBQ2hDLFVBQW1DLEVBQ25DLEdBQXNCLEVBQ3RCLFlBQTBCLEVBQzFCLGVBQTBDO1FBSDFDLGVBQVUsR0FBVixVQUFVLENBQXlCO1FBQ25DLFFBQUcsR0FBSCxHQUFHLENBQW1CO1FBQ3RCLGlCQUFZLEdBQVosWUFBWSxDQUFjO1FBQzFCLG9CQUFlLEdBQWYsZUFBZSxDQUEyQjtRQXRFcEQ7O1dBRUc7UUFDeUIsY0FBUyxHQUFrQixJQUFJLENBQUM7UUFFNUQ7O1dBRUc7UUFDYSxnQkFBVyxHQUFHLEtBQUssQ0FBQztRQUVwQzs7V0FFRztRQUNhLFdBQU0sR0FBRyxLQUFLLENBQUM7UUFFL0I7O1dBRUc7UUFDYSxTQUFJLEdB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O3VCQUFDLFlBQVk7Z0JBS0gsV0FBVztzQkFBMUIsS0FBSztnQkFLVSxNQUFNO3NCQUFyQixLQUFLO2dCQUtVLElBQUk7c0JBQW5CLEtBQUs7Z0JBS1UsV0FBVztzQkFBMUIsS0FBSztnQkFLb0IsTUFBTTtzQkFBL0IsTUFBTTtnQkFPQyxZQUFZO3NCQURuQixTQUFTO3VCQUFDLE9BQU8sRUFBRSxFQUFFLE1BQU0sRUFBRSxLQUFLLEVBQUU7Z0JBdURqQyxPQUFPO3NCQURWLEtBQUs7Z0JBU0YsS0FBSztzQkFEUixLQUFLO2dCQVNGLFFBQVE7c0JBRFgsS0FBSztnQkFTRixRQUFRO3NCQURYLEtBQUs7O0FBNEtSLE1BQU0sT0FBTyxtQkFBbUI7O2dIQUFuQixtQkFBbUI7b0dBQW5CLG1CQUFtQjsyRkFBbkIsbUJBQW1CO2tCQUwvQixTQUFTO21CQUFDO29CQUNULFFBQVEsRUFDTiw0RkFBNEY7b0JBQzlGLElBQUksRUFBRSxFQUFFLEtBQUssRUFBRSw4QkFBOEIsRUFBRTtpQkFDaEQiLCJzb3VyY2VzQ29udGVudCI6WyIvKlxuICogQ29weXJpZ2h0IChjKSAyMDIyIFZpbGxlIGRlIE1vbnRyZWFsLiBBbGwgcmlnaHRzIHJlc2VydmVkLlxuICogTGljZW5zZWQgdW5kZXIgdGhlIE1JVCBsaWNlbnNlLlxuICogU2VlIExJQ0VOU0UgZmlsZSBpbiB0aGUgcHJvamVjdCByb290IGZvciBmdWxsIGxpY2Vuc2UgaW5mb3JtYXRpb24uXG4gKi9cbmltcG9ydCB7IEZvY3VzTW9uaXRvciwgRm9jdXNPcmlnaW4gfSBmcm9tICdAYW5ndWxhci9jZGsvYTExeSc7XG5pbXBvcnQgeyBjb2VyY2VCb29sZWFuUHJvcGVydHkgfSBmcm9tICdAYW5ndWxhci9jZGsvY29lcmNpb24nO1xuaW1wb3J0IHsgVW5pcXVlU2VsZWN0aW9uRGlzcGF0Y2hlciB9IGZyb20gJ0Bhbmd1bGFyL2Nkay9jb2xsZWN0aW9ucyc7XG5pbXBvcnQge1xuICBBZnRlclZpZXdJbml0LFxuICBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneSxcbiAgQ2hhbmdlRGV0ZWN0b3JSZWYsXG4gIENvbXBvbmVudCxcbiAgRGlyZWN0aXZlLFxuICBFbGVtZW50UmVmLFxuICBFdmVudEVtaXR0ZXIsXG4gIGZvcndhcmRSZWYsXG4gIEluamVjdCxcbiAgSW5wdXQsXG4gIE9uRGVzdHJveSxcbiAgT25Jbml0LFxuICBPcHRpb25hbCxcbiAgT3V0cHV0LFxuICBWaWV3Q2hpbGQsXG4gIFZpZXdFbmNhcHN1bGF0aW9uXG59IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgTkdfVkFMVUVfQUNDRVNTT1IgfSBmcm9tICdAYW5ndWxhci9mb3Jtcyc7XG5pbXBvcnQge1xuICBCQU9fUkFESU9fR1JPVVAsXG4gIEJhb1JhZGlvQnV0dG9uR3JvdXBDb21wb25lbnRcbn0gZnJvbSAnLi9yYWRpby1ncm91cC5jb21wb25lbnQnO1xuXG4vKipcbiAqIFVuaXF1ZSBJRCBmb3IgZWFjaCByYWRpbyBidXR0b25cbiAqL1xubGV0IHJhZGlvTmV4dFVuaXF1ZUlkID0gMDtcblxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnYmFvLXJhZGlvLWJ1dHRvbiwgW2Jhby1yYWRpby1idXR0b25dJyxcbiAgdGVtcGxhdGVVcmw6ICdyYWRpby5jb21wb25lbnQuaHRtbCcsXG4gIHN0eWxlVXJsczogWycuL3JhZGlvLmNvbXBvbmVudC5zY3NzJ10sXG4gIHByb3ZpZGVyczogW1xuICAgIHtcbiAgICAgIHByb3ZpZGU6IE5HX1ZBTFVFX0FDQ0VTU09SLFxuICAgICAgdXNlRXhpc3Rpbmc6IGZvcndhcmRSZWYoKCkgPT4gQmFvUmFkaW9CdXR0b25Db21wb25lbnQpLFxuICAgICAgbXVsdGk6IHRydWVcbiAgICB9XG4gIF0sXG4gIGVuY2Fwc3VsYXRpb246IFZpZXdFbmNhcHN1bGF0aW9uLk5vbmUsXG4gIGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuT25QdXNoLFxuICBob3N0OiB7XG4gICAgY2xhc3M6ICdiYW8tcmFkaW8tYnV0dG9uJyxcbiAgICAnW2NsYXNzLmJhby1yYWRpby1idXR0b24taW5saW5lXSc6ICdpbmxpbmUnLFxuICAgICdbY2xhc3MuYmFvLXJhZGlvLWJ1dHRvbi1jaGVja2VkXSc6ICdjaGVja2VkJyxcbiAgICAnW2NsYXNzLmJhby1yYWRpby1idXR0b24tZGlzYWJsZWRdJzogJ2Rpc2FibGVkJyxcbiAgICAnW2NsYXNzLmJhby1yYWRpby1idXR0b24tY2FyZF0nOiAnYnJhbmRCb3JkZXInLFxuICAgICdbY2xhc3MuYmFvLXJhZGlvLWJ1dHRvbi1oaWRkZW4tbGFiZWxdJzogJ2hpZGRlbkxhYmVsJ1xuICB9XG59KVxuZXhwb3J0IGNsYXNzIEJhb1JhZGlvQnV0dG9uQ29tcG9uZW50XG4gIGltcGxlbWVudHMgQWZ0ZXJWaWV3SW5pdCwgT25Jbml0LCBPbkRlc3Ryb3lcbntcbiAgLyoqXG4gICAqIFRoZSByYWRpbyBidXR0b24gSUQuIEl0IGlzIHNldCBkeW5hbWljYWxseSB3aXRoIGFuIHVuaXF1ZSBJRCBieSBkZWZhdWx0XG4gICAqL1xuICBASW5wdXQoKSBwdWJsaWMgaWQ6IHN0cmluZztcblxuICAvKipcbiAgICogVGhlIGFyaWEtbGFiZWwgZm9yIHdlYiBhY2Nlc3NpYmlsaXR5XG4gICAqL1xuICBASW5wdXQoJ2FyaWEtbGFiZWwnKSBwdWJsaWMgYXJpYUxhYmVsOiBzdHJpbmcgfCBudWxsID0gbnVsbDtcblxuICAvKipcbiAgICogV2hldGhlciB0aGUgcmFkaW8gYnV0dG9uIGhhcyBhIGJvcmRlciBhbmQgaXMgY29uc2lkZXJlZCBhcyBhIGNhcmQuXG4gICAqL1xuICBASW5wdXQoKSBwdWJsaWMgYnJhbmRCb3JkZXIgPSBmYWxzZTtcblxuICAvKipcbiAgICogV2hldGhlciB0aGUgcmFkaW8gYnV0dG9uIGlzIGlubGluZS5cbiAgICovXG4gIEBJbnB1dCgpIHB1YmxpYyBpbmxpbmUgPSBmYWxzZTtcblxuICAvKipcbiAgICogVGhlIG5hbWUgcHJvcGVydHkgb2YgdGhlIHJhZGlvIGJ1dHRvblxuICAgKi9cbiAgQElucHV0KCkgcHVibGljIG5hbWU6IHN0cmluZyB8IG51bGwgPSBudWxsO1xuXG4gIC8qKlxuICAgKiBUaGUgdmlzaWJsZSBzdGF0ZSBvZiB0aGUgbGFiZWxcbiAgICovXG4gIEBJbnB1dCgpIHB1YmxpYyBoaWRkZW5MYWJlbCA9IGZhbHNlO1xuXG4gIC8qKlxuICAgKiBFbWl0dGVkIGJvb2xlYW4gb24gY2hhbmdlXG4gICAqL1xuICBAT3V0cHV0KCkgcHVibGljIHJlYWRvbmx5IGNoYW5nZTogRXZlbnRFbWl0dGVyPHN0cmluZz4gPVxuICAgIG5ldyBFdmVudEVtaXR0ZXI8c3RyaW5nPigpO1xuXG4gIC8qKlxuICAgKiBSZWZlcmVuY2UgdG8gdGhlIGlucHV0IGh0bWwgZWxlbWVudFxuICAgKi9cbiAgQFZpZXdDaGlsZCgnaW5wdXQnLCB7IHN0YXRpYzogZmFsc2UgfSlcbiAgcHJpdmF0ZSBpbnB1dEVsZW1lbnQ6IEVsZW1lbnRSZWY8SFRNTElucHV0RWxlbWVudD47XG5cbiAgLyoqXG4gICAqIFRoZSByYWRpbyBidXR0b25zIGdyb3VwXG4gICAqL1xuICBwdWJsaWMgcmFkaW9Hcm91cDogQmFvUmFkaW9CdXR0b25Hcm91cENvbXBvbmVudDtcblxuICAvKipcbiAgICogVGhlIGFyaWEtZGVzY3JpYmVkYnkgaWQgZm9yIHdlYiBhY2Nlc3NpYmlsdHlcbiAgICovXG4gIHB1YmxpYyBhcmlhRGVzY3JpYmVkYnk6IHN0cmluZyB8IG51bGwgPSBudWxsO1xuXG4gIC8qKlxuICAgKiBUaGUgYXJpYS1sYWJlbGVkYnkgaWQgZm9yIHdlYiBhY2Nlc3NpYmlsdHlcbiAgICovXG4gIHB1YmxpYyBhcmlhTGFiZWxsZWRieTogc3RyaW5nIHwgbnVsbCA9IG51bGw7XG5cbiAgLyoqXG4gICAqIFRoZSBJRCBvZiB0aGUgaW5wdXQgaHRtbCBlbGVtZW50XG4gICAqL1xuICBwdWJsaWMgaW5wdXRJRDogc3RyaW5nO1xuXG4gIHByaXZhdGUgX2NoZWNrZWQgPSBmYWxzZTtcbiAgcHJpdmF0ZSBfZGlzYWJsZWQgPSBmYWxzZTtcbiAgcHJpdmF0ZSBfcmVxdWlyZWQgPSBmYWxzZTtcbiAgcHJpdmF0ZSBfdmFsdWU6IHN0cmluZyB8IG51bGwgPSBudWxsO1xuICBwcml2YXRlIF91bmlxdWVJZCA9IGBiYW8tcmFkaW8tYnV0dG9uLSR7KytyYWRpb05leHRVbmlxdWVJZH1gO1xuXG4gIGNvbnN0cnVjdG9yKFxuICAgIEBPcHRpb25hbCgpXG4gICAgQEluamVjdChCQU9fUkFESU9fR1JPVVApXG4gICAgcmFkaW9Hcm91cDogQmFvUmFkaW9CdXR0b25Hcm91cENvbXBvbmVudCxcbiAgICBwcml2YXRlIGVsZW1lbnRSZWY6IEVsZW1lbnRSZWY8SFRNTEVsZW1lbnQ+LFxuICAgIHByaXZhdGUgY2RyOiBDaGFuZ2VEZXRlY3RvclJlZixcbiAgICBwcml2YXRlIGZvY3VzTW9uaXRvcjogRm9jdXNNb25pdG9yLFxuICAgIHByaXZhdGUgcmFkaW9EaXNwYXRjaGVyOiBVbmlxdWVTZWxlY3Rpb25EaXNwYXRjaGVyXG4gICkge1xuICAgIHRoaXMucmFkaW9Hcm91cCA9IHJhZGlvR3JvdXA7XG4gICAgdGhpcy5fcmVtb3ZlVW5pcXVlU2VsZWN0aW9uTGlzdGVuZXIgPSByYWRpb0Rpc3BhdGNoZXIubGlzdGVuKFxuICAgICAgKGlkOiBzdHJpbmcsIG5hbWU6IHN0cmluZykgPT4ge1xuICAgICAgICBpZiAoaWQgIT09IHRoaXMuaWQgJiYgbmFtZSA9PT0gdGhpcy5uYW1lKSB7XG4gICAgICAgICAgdGhpcy5jaGVja2VkID0gZmFsc2U7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICApO1xuICAgIGlmICghdGhpcy5pZCkge1xuICAgICAgdGhpcy5pZCA9IHRoaXMuX3VuaXF1ZUlkO1xuICAgIH1cbiAgfVxuXG4gIC8qKlxuICAgKiBXaGV0aGVyIHRoZSByYWRpbyBidXR0b24gaXMgY2hlY2tlZC4gRGVmYXVsdCA6IGZhbHNlXG4gICAqL1xuICBASW5wdXQoKVxuICBnZXQgY2hlY2tlZCgpOiBib29sZWFuIHtcbiAgICByZXR1cm4gdGhpcy5fY2hlY2tlZDtcbiAgfVxuXG4gIC8qKlxuICAgKiBEZWZpbmUgdGhlIHJhZGlvIGJ1dHRvbiB2YWx1ZS4gRGVmYXVsdCA6IG51bGxcbiAgICovXG4gIEBJbnB1dCgpXG4gIGdldCB2YWx1ZSgpOiBzdHJpbmcge1xuICAgIHJldHVybiB0aGlzLl92YWx1ZTtcbiAgfVxuXG4gIC8qKlxuICAgKiBXaGV0aGVyIHRoZSByYWRpbyBidXR0b24gaXMgZGlzYWJsZWQuIERlZmF1bHQgOiBmYWxzZVxuICAgKi9cbiAgQElucHV0KClcbiAgZ2V0IGRpc2FibGVkKCk6IGJvb2xlYW4ge1xuICAgIHJldHVybiB0aGlzLl9kaXNhYmxlZCB8fCAodGhpcy5yYWRpb0dyb3VwICYmIHRoaXMucmFkaW9Hcm91cC5kaXNhYmxlZCk7XG4gIH1cblxuICAvKipcbiAgICogV2hldGhlciB0aGUgcmFkaW8gYnV0dG9uIGlzIHJlcXVpcmVkLiBEZWZhdWx0IDogZmFsc2VcbiAgICovXG4gIEBJbnB1dCgpXG4gIGdldCByZXF1aXJlZCgpOiBib29sZWFuIHtcbiAgICByZXR1cm4gdGhpcy5fcmVxdWlyZWQgfHwgKHRoaXMucmFkaW9Hcm91cCAmJiB0aGlzLnJhZGlvR3JvdXAucmVxdWlyZWQpO1xuICB9XG5cbiAgZ2V0IG5hdGl2ZUVsZW1lbnQoKTogSFRNTEVsZW1lbnQge1xuICAgIHJldHVybiB0aGlzLmVsZW1lbnRSZWYubmF0aXZlRWxlbWVudDtcbiAgfVxuXG4gIHNldCBjaGVja2VkKHZhbHVlOiBib29sZWFuKSB7XG4gICAgY29uc3QgbmV3Q2hlY2tlZFN0YXRlID0gY29lcmNlQm9vbGVhblByb3BlcnR5KHZhbHVlKTtcbiAgICBpZiAodGhpcy5fY2hlY2tlZCAhPT0gbmV3Q2hlY2tlZFN0YXRlKSB7XG4gICAgICB0aGlzLl9jaGVja2VkID0gbmV3Q2hlY2tlZFN0YXRlO1xuICAgICAgaWYgKFxuICAgICAgICBuZXdDaGVja2VkU3RhdGUgJiZcbiAgICAgICAgdGhpcy5yYWRpb0dyb3VwICYmXG4gICAgICAgIHRoaXMucmFkaW9Hcm91cC52YWx1ZSAhPT0gdGhpcy52YWx1ZVxuICAgICAgKSB7XG4gICAgICAgIHRoaXMucmFkaW9Hcm91cC5zZWxlY3RlZCA9IHRoaXM7XG4gICAgICB9IGVsc2UgaWYgKFxuICAgICAgICAhbmV3Q2hlY2tlZFN0YXRlICYmXG4gICAgICAgIHRoaXMucmFkaW9Hcm91cCAmJlxuICAgICAgICB0aGlzLnJhZGlvR3JvdXAudmFsdWUgPT09IHRoaXMudmFsdWVcbiAgICAgICkge1xuICAgICAgICB0aGlzLnJhZGlvR3JvdXAuc2VsZWN0ZWQgPSBudWxsO1xuICAgICAgfVxuXG4gICAgICBpZiAobmV3Q2hlY2tlZFN0YXRlKSB7XG4gICAgICAgIHRoaXMucmFkaW9EaXNwYXRjaGVyLm5vdGlmeSh0aGlzLmlkLCB0aGlzLm5hbWUpO1xuICAgICAgfVxuICAgICAgdGhpcy5jZHIubWFya0ZvckNoZWNrKCk7XG4gICAgfVxuICB9XG5cbiAgc2V0IHZhbHVlKHZhbHVlOiBzdHJpbmcpIHtcbiAgICBpZiAodmFsdWUgIT09IHRoaXMuX3ZhbHVlKSB7XG4gICAgICB0aGlzLl92YWx1ZSA9IHZhbHVlO1xuICAgICAgaWYgKHRoaXMucmFkaW9Hcm91cCkge1xuICAgICAgICBpZiAoIXRoaXMuY2hlY2tlZCkge1xuICAgICAgICAgIHRoaXMuY2hlY2tlZCA9IHRoaXMucmFkaW9Hcm91cC52YWx1ZSA9PT0gdmFsdWU7XG4gICAgICAgIH1cbiAgICAgICAgaWYgKHRoaXMuY2hlY2tlZCkge1xuICAgICAgICAgIHRoaXMucmFkaW9Hcm91cC5zZWxlY3RlZCA9IHRoaXM7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICBzZXQgZGlzYWJsZWQodmFsdWU6IGJvb2xlYW4pIHtcbiAgICB0aGlzLnNldERpc2FibGVkKGNvZXJjZUJvb2xlYW5Qcm9wZXJ0eSh2YWx1ZSkpO1xuICB9XG5cbiAgc2V0IHJlcXVpcmVkKHZhbHVlOiBib29sZWFuKSB7XG4gICAgdGhpcy5fcmVxdWlyZWQgPSBjb2VyY2VCb29sZWFuUHJvcGVydHkodmFsdWUpO1xuICB9XG5cbiAgcHVibGljIGZvY3VzKG9wdGlvbnM/OiBGb2N1c09wdGlvbnMsIG9yaWdpbj86IEZvY3VzT3JpZ2luKTogdm9pZCB7XG4gICAgaWYgKG9yaWdpbikge1xuICAgICAgdGhpcy5mb2N1c01vbml0b3IuZm9jdXNWaWEodGhpcy5pbnB1dEVsZW1lbnQsIG9yaWdpbiwgb3B0aW9ucyk7XG4gICAgfSBlbHNlIHtcbiAgICAgIHRoaXMuaW5wdXRFbGVtZW50Lm5hdGl2ZUVsZW1lbnQuZm9jdXMob3B0aW9ucyk7XG4gICAgfVxuICB9XG5cbiAgLyoqXG4gICAqIE1ldGhvZCBjYWxsZWQgZnJvbSB0aGUgcGFyZW50IGFzIG9uZSBvZiB0aGUgcGFyZW50IGlucHV0IGhhcyBjaGFuZ2VkLiBQcmV2ZW50IGNoYW5nZSBkZXRlY3Rpb24gZXJyb3IuXG4gICAqL1xuICBwdWJsaWMgbWFya0ZvckNoZWNrKCkge1xuICAgIHRoaXMuY2RyLm1hcmtGb3JDaGVjaygpO1xuICB9XG5cbiAgcHVibGljIG5nT25Jbml0KCkge1xuICAgIC8vIFNldCBhbGwgdW5pcXVlIGlkcyBmb3IgdGhlIGh0bWwgZWxlbWVudHNcbiAgICB0aGlzLmlucHV0SUQgPSBgJHt0aGlzLmlkfS1pbnB1dGA7XG4gICAgdGhpcy5hcmlhTGFiZWxsZWRieSA9IGAke3RoaXMuaWR9LWFyaWFsYWJlbGxlZGJ5YDtcblxuICAgIGlmICh0aGlzLnJhZGlvR3JvdXApIHtcbiAgICAgIHRoaXMuY2hlY2tlZCA9IHRoaXMucmFkaW9Hcm91cC52YWx1ZSA9PT0gdGhpcy5fdmFsdWU7XG5cbiAgICAgIGlmICh0aGlzLmNoZWNrZWQpIHtcbiAgICAgICAgdGhpcy5yYWRpb0dyb3VwLnNlbGVjdGVkID0gdGhpcztcbiAgICAgIH1cblxuICAgICAgdGhpcy5uYW1lID0gdGhpcy5yYWRpb0dyb3VwLm5hbWU7XG4gICAgfVxuICB9XG5cbiAgcHVibGljIG5nQWZ0ZXJWaWV3SW5pdCgpIHtcbiAgICB0aGlzLmZvY3VzTW9uaXRvclxuICAgICAgLm1vbml0b3IodGhpcy5pbnB1dEVsZW1lbnQsIHRydWUpXG4gICAgICAuc3Vic2NyaWJlKGZvY3VzT3JpZ2luID0+IHtcbiAgICAgICAgaWYgKCFmb2N1c09yaWdpbiAmJiB0aGlzLnJhZGlvR3JvdXApIHtcbiAgICAgICAgICB0aGlzLnJhZGlvR3JvdXAub25Hcm91cFRvdWNoKCk7XG4gICAgICAgIH1cbiAgICAgIH0pO1xuXG4gICAgdGhpcy5zZXRBcmlhRGVzY3JpYmVkQnlUb0Rlc2NyaXB0aW9uKCk7XG4gIH1cblxuICBwdWJsaWMgbmdPbkRlc3Ryb3koKSB7XG4gICAgdGhpcy5mb2N1c01vbml0b3Iuc3RvcE1vbml0b3JpbmcodGhpcy5pbnB1dEVsZW1lbnQpO1xuICAgIHRoaXMuX3JlbW92ZVVuaXF1ZVNlbGVjdGlvbkxpc3RlbmVyO1xuICB9XG5cbiAgLyoqXG4gICAqIEVtaXQgdGhlIG5ldyB2YWx1ZSBmcm9tIHRoZSBzZWxlY3RlZCByYWRpby1idXR0b24gYW5kIHRoZSBwYXJlbnRcbiAgICovXG4gIHB1YmxpYyBvbklucHV0SW50ZXJhY3Rpb24oZXZlbnQ6IEV2ZW50KSB7XG4gICAgZXZlbnQuc3RvcFByb3BhZ2F0aW9uKCk7XG4gICAgaWYgKCF0aGlzLmNoZWNrZWQgJiYgIXRoaXMuZGlzYWJsZWQpIHtcbiAgICAgIGNvbnN0IGdyb3VwVmFsdWVDaGFuZ2VkID1cbiAgICAgICAgdGhpcy5yYWRpb0dyb3VwICYmIHRoaXMudmFsdWUgIT09IHRoaXMucmFkaW9Hcm91cC52YWx1ZTtcbiAgICAgIHRoaXMuY2hlY2tlZCA9IHRydWU7XG4gICAgICB0aGlzLmVtaXRDaGFuZ2VFdmVudCgpO1xuXG4gICAgICBpZiAodGhpcy5yYWRpb0dyb3VwKSB7XG4gICAgICAgIHRoaXMucmFkaW9Hcm91cC5vbk1vZGVsQ2hhbmdlKHRoaXMudmFsdWUpO1xuICAgICAgICBpZiAoZ3JvdXBWYWx1ZUNoYW5nZWQpIHtcbiAgICAgICAgICB0aGlzLnJhZGlvR3JvdXAuZW1pdENoYW5nZUV2ZW50KCk7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICBwcml2YXRlIGVtaXRDaGFuZ2VFdmVudCgpOiB2b2lkIHtcbiAgICB0aGlzLmNoYW5nZS5lbWl0KHRoaXMudmFsdWUpO1xuICB9XG5cbiAgcHJpdmF0ZSBzZXREaXNhYmxlZCh2YWx1ZTogYm9vbGVhbikge1xuICAgIGlmICh0aGlzLl9kaXNhYmxlZCAhPT0gdmFsdWUpIHtcbiAgICAgIHRoaXMuX2Rpc2FibGVkID0gdmFsdWU7XG4gICAgICB0aGlzLmNkci5tYXJrRm9yQ2hlY2soKTtcbiAgICB9XG4gIH1cblxuICAvKipcbiAgICogU2V0IHRoZSBpZCBwcm9wZXJ0eSB0byBiYW8tcmFkaW8tYnV0dG9uLWRlc2NyaXB0aW9uIGFzIGEgZGVzY3JpcHRpb24gdG8gdGhlIGlucHV0XG4gICAqL1xuICBwcml2YXRlIHNldEFyaWFEZXNjcmliZWRCeVRvRGVzY3JpcHRpb24oKSB7XG4gICAgY29uc3QgY2hpbGROb2RlcyA9IEFycmF5LmZyb20odGhpcy5uYXRpdmVFbGVtZW50LmNoaWxkTm9kZXMpO1xuICAgIGNvbnN0IGxhYmVsTm9kZSA9IGNoaWxkTm9kZXMuZmluZCh4ID0+IHtcbiAgICAgIHJldHVybiB4Lm5vZGVOYW1lID09PSAnTEFCRUwnO1xuICAgIH0pO1xuICAgIGlmIChsYWJlbE5vZGUpIHtcbiAgICAgIGNvbnN0IGxhYmVsQ2hpbGROb2RlcyA9IEFycmF5LmZyb20obGFiZWxOb2RlLmNoaWxkTm9kZXMpO1xuICAgICAgY29uc3QgZGVzY3JpcHRpb25Ob2RlID0gbGFiZWxDaGlsZE5vZGVzLmZpbmQoeCA9PiB7XG4gICAgICAgIHJldHVybiB4Lm5vZGVOYW1lID09PSAnQkFPLVJBRElPLUJVVFRPTi1ERVNDUklQVElPTic7XG4gICAgICB9KTtcblxuICAgICAgaWYgKGRlc2NyaXB0aW9uTm9kZSkge1xuICAgICAgICB0aGlzLmFyaWFEZXNjcmliZWRieSA9IGAke3RoaXMuaWR9LWFyaWFkZXNjcmliZWRieWA7XG4gICAgICAgIChkZXNjcmlwdGlvbk5vZGUgYXMgSFRNTEVsZW1lbnQpLnNldEF0dHJpYnV0ZShcbiAgICAgICAgICAnaWQnLFxuICAgICAgICAgIHRoaXMuYXJpYURlc2NyaWJlZGJ5XG4gICAgICAgICk7XG4gICAgICB9IGVsc2Uge1xuICAgICAgICB0aGlzLmFyaWFEZXNjcmliZWRieSA9IG51bGw7XG4gICAgICB9XG5cbiAgICAgIHRoaXMuY2RyLmRldGVjdENoYW5nZXMoKTtcbiAgICB9XG4gIH1cblxuICAvKiogVW5yZWdpc3RlciBmdW5jdGlvbiBmb3IgcmFkaW9EaXNwYXRjaGVyICovXG4gIHByaXZhdGUgX3JlbW92ZVVuaXF1ZVNlbGVjdGlvbkxpc3RlbmVyOiAoKSA9PiB2b2lkID0gKCkgPT4gdW5kZWZpbmVkO1xufVxuXG5ARGlyZWN0aXZlKHtcbiAgc2VsZWN0b3I6XG4gICAgJ2Jhby1yYWRpby1idXR0b24tZGVzY3JpcHRpb24sIFtiYW8tcmFkaW8tYnV0dG9uLWRlc2NyaXB0aW9uXSwgIFtiYW9SYWRpb0J1dHRvbkRlc2NyaXB0aW9uXScsXG4gIGhvc3Q6IHsgY2xhc3M6ICdiYW8tcmFkaW8tYnV0dG9uLWRlc2NyaXB0aW9uJyB9XG59KVxuZXhwb3J0IGNsYXNzIEJhb1JhZGlvRGVzY3JpcHRpb24ge31cbiIsIjxpbnB1dFxuICAjaW5wdXRcbiAgdHlwZT1cInJhZGlvXCJcbiAgW2lkXT1cImlucHV0SURcIlxuICBbY2hlY2tlZF09XCJjaGVja2VkXCJcbiAgW2Rpc2FibGVkXT1cImRpc2FibGVkXCJcbiAgW2F0dHIubmFtZV09XCJuYW1lXCJcbiAgW2F0dHIudmFsdWVdPVwidmFsdWVcIlxuICBbcmVxdWlyZWRdPVwicmVxdWlyZWRcIlxuICBbYXR0ci5hcmlhLWxhYmVsXT1cImFyaWFMYWJlbFwiXG4gIFthdHRyLmFyaWEtbGFiZWxsZWRieV09XCJhcmlhTGFiZWxsZWRieVwiXG4gIFthdHRyLmFyaWEtZGVzY3JpYmVkYnldPVwiYXJpYURlc2NyaWJlZGJ5XCJcbiAgKGNoYW5nZSk9XCJvbklucHV0SW50ZXJhY3Rpb24oJGV2ZW50KVwiXG4gIHJvbGU9XCJyYWRpb1wiXG4vPlxuPGxhYmVsIGNsYXNzPVwiYmFvLXJhZGlvLWJ1dHRvbi1jb250ZW50LWNvbnRhaW5lclwiIFthdHRyLmZvcl09XCJpbnB1dElEXCI+XG4gIDxkaXYgY2xhc3M9XCJiYW8tcmFkaW8tYnV0dG9uLWxhYmVsXCIgW2lkXT1cImFyaWFMYWJlbGxlZGJ5XCI+XG4gICAgPG5nLWNvbnRlbnQ+PC9uZy1jb250ZW50PlxuICA8L2Rpdj5cbiAgPG5nLWNvbnRlbnRcbiAgICBzZWxlY3Q9XCJiYW8tcmFkaW8tYnV0dG9uLWRlc2NyaXB0aW9uLCBbYmFvLXJhZGlvLWJ1dHRvbi1kZXNjcmlwdGlvbl0sIFtiYW9SYWRpb0J1dHRvbkRlc2NyaXB0aW9uXVwiXG4gID48L25nLWNvbnRlbnQ+XG48L2xhYmVsPlxuIl19
@@ -7,9 +7,9 @@ import { ChangeDetectionStrategy, Component, ViewEncapsulation } from '@angular/
7
7
  import * as i0 from "@angular/core";
8
8
  export class BaoListSummaryItem {
9
9
  }
10
- BaoListSummaryItem.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.1.1", ngImport: i0, type: BaoListSummaryItem, deps: [], target: i0.ɵɵFactoryTarget.Component });
11
- BaoListSummaryItem.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.1.1", type: BaoListSummaryItem, selector: "bao-list-summary-item, [bao-list-summary-item], [baoListSummaryItem]", host: { attributes: { "role": "listitem" }, classAttribute: "bao-list-summary-item" }, ngImport: i0, template: `<ng-content></ng-content>`, isInline: true, styles: ["@charset \"UTF-8\";.bao-list-summary-item{font-weight:600;color:#000}.bao-list-summary-item:before{content:\"\\2022\";color:#d3310a;font-weight:700;display:inline-block;width:1em;margin-left:-1em}\n"], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None });
12
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.1.1", ngImport: i0, type: BaoListSummaryItem, decorators: [{
10
+ BaoListSummaryItem.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.2.1", ngImport: i0, type: BaoListSummaryItem, deps: [], target: i0.ɵɵFactoryTarget.Component });
11
+ BaoListSummaryItem.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.2.1", type: BaoListSummaryItem, selector: "bao-list-summary-item, [bao-list-summary-item], [baoListSummaryItem]", host: { attributes: { "role": "listitem" }, classAttribute: "bao-list-summary-item" }, ngImport: i0, template: `<ng-content></ng-content>`, isInline: true, styles: ["@charset \"UTF-8\";.bao-list-summary-item{font-weight:600;color:#000}.bao-list-summary-item:before{content:\"\\2022\";color:#d3310a;font-weight:700;display:inline-block;width:1em;margin-left:-1em}\n"], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None });
12
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.1", ngImport: i0, type: BaoListSummaryItem, decorators: [{
13
13
  type: Component,
14
14
  args: [{ selector: 'bao-list-summary-item, [bao-list-summary-item], [baoListSummaryItem]', template: `<ng-content></ng-content>`, encapsulation: ViewEncapsulation.None, changeDetection: ChangeDetectionStrategy.OnPush, host: {
15
15
  class: 'bao-list-summary-item',
@@ -18,20 +18,13 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.1.1", ngImpor
18
18
  }] });
19
19
  export class BaoListSummary {
20
20
  }
21
- BaoListSummary.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.1.1", ngImport: i0, type: BaoListSummary, deps: [], target: i0.ɵɵFactoryTarget.Component });
22
- BaoListSummary.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.1.1", type: BaoListSummary, selector: "bao-list-summary, [bao-list-summary], [baoListSummary]", host: { attributes: { "role": "list" }, classAttribute: "bao-list-summary" }, ngImport: i0, template: `<ng-content></ng-content>`, isInline: true, styles: [".bao-list-summary{padding-left:2rem}\n"], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None });
23
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.1.1", ngImport: i0, type: BaoListSummary, decorators: [{
21
+ BaoListSummary.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.2.1", ngImport: i0, type: BaoListSummary, deps: [], target: i0.ɵɵFactoryTarget.Component });
22
+ BaoListSummary.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.2.1", type: BaoListSummary, selector: "bao-list-summary, [bao-list-summary], [baoListSummary]", host: { attributes: { "role": "list" }, classAttribute: "bao-list-summary" }, ngImport: i0, template: `<ng-content></ng-content>`, isInline: true, styles: [".bao-list-summary{padding-left:2rem}\n"], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None });
23
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.1", ngImport: i0, type: BaoListSummary, decorators: [{
24
24
  type: Component,
25
- args: [{
26
- selector: 'bao-list-summary, [bao-list-summary], [baoListSummary]',
27
- template: `<ng-content></ng-content>`,
28
- styles: ['.bao-list-summary { padding-left:2rem }'],
29
- encapsulation: ViewEncapsulation.None,
30
- changeDetection: ChangeDetectionStrategy.OnPush,
31
- host: {
25
+ args: [{ selector: 'bao-list-summary, [bao-list-summary], [baoListSummary]', template: `<ng-content></ng-content>`, encapsulation: ViewEncapsulation.None, changeDetection: ChangeDetectionStrategy.OnPush, host: {
32
26
  class: 'bao-list-summary',
33
27
  role: 'list'
34
- }
35
- }]
28
+ }, styles: [".bao-list-summary{padding-left:2rem}\n"] }]
36
29
  }] });
37
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibGlzdC1zdW1tYXJ5LmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2FuZ3VsYXItdWkvc3JjL2xpYi9zdW1tYXJ5L2xpc3Qtc3VtbWFyeS5jb21wb25lbnQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUE7Ozs7R0FJRztBQUNILE9BQU8sRUFDTCx1QkFBdUIsRUFDdkIsU0FBUyxFQUNULGlCQUFpQixFQUNsQixNQUFNLGVBQWUsQ0FBQzs7QUFjdkIsTUFBTSxPQUFPLGtCQUFrQjs7K0dBQWxCLGtCQUFrQjttR0FBbEIsa0JBQWtCLG1NQVRuQiwyQkFBMkI7MkZBUzFCLGtCQUFrQjtrQkFaOUIsU0FBUzsrQkFFTixzRUFBc0UsWUFDOUQsMkJBQTJCLGlCQUV0QixpQkFBaUIsQ0FBQyxJQUFJLG1CQUNwQix1QkFBdUIsQ0FBQyxNQUFNLFFBQ3pDO3dCQUNKLEtBQUssRUFBRSx1QkFBdUI7d0JBQzlCLElBQUksRUFBRSxVQUFVO3FCQUNqQjs7QUFlSCxNQUFNLE9BQU8sY0FBYzs7MkdBQWQsY0FBYzsrRkFBZCxjQUFjLDRLQVRmLDJCQUEyQjsyRkFTMUIsY0FBYztrQkFYMUIsU0FBUzttQkFBQztvQkFDVCxRQUFRLEVBQUUsd0RBQXdEO29CQUNsRSxRQUFRLEVBQUUsMkJBQTJCO29CQUNyQyxNQUFNLEVBQUUsQ0FBQyx5Q0FBeUMsQ0FBQztvQkFDbkQsYUFBYSxFQUFFLGlCQUFpQixDQUFDLElBQUk7b0JBQ3JDLGVBQWUsRUFBRSx1QkFBdUIsQ0FBQyxNQUFNO29CQUMvQyxJQUFJLEVBQUU7d0JBQ0osS0FBSyxFQUFFLGtCQUFrQjt3QkFDekIsSUFBSSxFQUFFLE1BQU07cUJBQ2I7aUJBQ0YiLCJzb3VyY2VzQ29udGVudCI6WyIvKlxuICogQ29weXJpZ2h0IChjKSAyMDIyIFZpbGxlIGRlIE1vbnRyZWFsLiBBbGwgcmlnaHRzIHJlc2VydmVkLlxuICogTGljZW5zZWQgdW5kZXIgdGhlIE1JVCBsaWNlbnNlLlxuICogU2VlIExJQ0VOU0UgZmlsZSBpbiB0aGUgcHJvamVjdCByb290IGZvciBmdWxsIGxpY2Vuc2UgaW5mb3JtYXRpb24uXG4gKi9cbmltcG9ydCB7XG4gIENoYW5nZURldGVjdGlvblN0cmF0ZWd5LFxuICBDb21wb25lbnQsXG4gIFZpZXdFbmNhcHN1bGF0aW9uXG59IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6XG4gICAgJ2Jhby1saXN0LXN1bW1hcnktaXRlbSwgW2Jhby1saXN0LXN1bW1hcnktaXRlbV0sIFtiYW9MaXN0U3VtbWFyeUl0ZW1dJyxcbiAgdGVtcGxhdGU6IGA8bmctY29udGVudD48L25nLWNvbnRlbnQ+YCxcbiAgc3R5bGVVcmxzOiBbJy4vbGlzdC1zdW1tYXJ5LmNvbXBvbmVudC5zY3NzJ10sXG4gIGVuY2Fwc3VsYXRpb246IFZpZXdFbmNhcHN1bGF0aW9uLk5vbmUsXG4gIGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuT25QdXNoLFxuICBob3N0OiB7XG4gICAgY2xhc3M6ICdiYW8tbGlzdC1zdW1tYXJ5LWl0ZW0nLFxuICAgIHJvbGU6ICdsaXN0aXRlbSdcbiAgfVxufSlcbmV4cG9ydCBjbGFzcyBCYW9MaXN0U3VtbWFyeUl0ZW0ge31cblxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnYmFvLWxpc3Qtc3VtbWFyeSwgW2Jhby1saXN0LXN1bW1hcnldLCBbYmFvTGlzdFN1bW1hcnldJyxcbiAgdGVtcGxhdGU6IGA8bmctY29udGVudD48L25nLWNvbnRlbnQ+YCxcbiAgc3R5bGVzOiBbJy5iYW8tbGlzdC1zdW1tYXJ5IHsgcGFkZGluZy1sZWZ0OjJyZW0gfSddLFxuICBlbmNhcHN1bGF0aW9uOiBWaWV3RW5jYXBzdWxhdGlvbi5Ob25lLFxuICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaCxcbiAgaG9zdDoge1xuICAgIGNsYXNzOiAnYmFvLWxpc3Qtc3VtbWFyeScsXG4gICAgcm9sZTogJ2xpc3QnXG4gIH1cbn0pXG5leHBvcnQgY2xhc3MgQmFvTGlzdFN1bW1hcnkge31cbiJdfQ==
30
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibGlzdC1zdW1tYXJ5LmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2FuZ3VsYXItdWkvc3JjL2xpYi9zdW1tYXJ5L2xpc3Qtc3VtbWFyeS5jb21wb25lbnQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUE7Ozs7R0FJRztBQUNILE9BQU8sRUFDTCx1QkFBdUIsRUFDdkIsU0FBUyxFQUNULGlCQUFpQixFQUNsQixNQUFNLGVBQWUsQ0FBQzs7QUFjdkIsTUFBTSxPQUFPLGtCQUFrQjs7K0dBQWxCLGtCQUFrQjttR0FBbEIsa0JBQWtCLG1NQVRuQiwyQkFBMkI7MkZBUzFCLGtCQUFrQjtrQkFaOUIsU0FBUzsrQkFFTixzRUFBc0UsWUFDOUQsMkJBQTJCLGlCQUV0QixpQkFBaUIsQ0FBQyxJQUFJLG1CQUNwQix1QkFBdUIsQ0FBQyxNQUFNLFFBQ3pDO3dCQUNKLEtBQUssRUFBRSx1QkFBdUI7d0JBQzlCLElBQUksRUFBRSxVQUFVO3FCQUNqQjs7QUFlSCxNQUFNLE9BQU8sY0FBYzs7MkdBQWQsY0FBYzsrRkFBZCxjQUFjLDRLQVRmLDJCQUEyQjsyRkFTMUIsY0FBYztrQkFYMUIsU0FBUzsrQkFDRSx3REFBd0QsWUFDeEQsMkJBQTJCLGlCQUV0QixpQkFBaUIsQ0FBQyxJQUFJLG1CQUNwQix1QkFBdUIsQ0FBQyxNQUFNLFFBQ3pDO3dCQUNKLEtBQUssRUFBRSxrQkFBa0I7d0JBQ3pCLElBQUksRUFBRSxNQUFNO3FCQUNiIiwic291cmNlc0NvbnRlbnQiOlsiLypcbiAqIENvcHlyaWdodCAoYykgMjAyMiBWaWxsZSBkZSBNb250cmVhbC4gQWxsIHJpZ2h0cyByZXNlcnZlZC5cbiAqIExpY2Vuc2VkIHVuZGVyIHRoZSBNSVQgbGljZW5zZS5cbiAqIFNlZSBMSUNFTlNFIGZpbGUgaW4gdGhlIHByb2plY3Qgcm9vdCBmb3IgZnVsbCBsaWNlbnNlIGluZm9ybWF0aW9uLlxuICovXG5pbXBvcnQge1xuICBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneSxcbiAgQ29tcG9uZW50LFxuICBWaWV3RW5jYXBzdWxhdGlvblxufSBmcm9tICdAYW5ndWxhci9jb3JlJztcblxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOlxuICAgICdiYW8tbGlzdC1zdW1tYXJ5LWl0ZW0sIFtiYW8tbGlzdC1zdW1tYXJ5LWl0ZW1dLCBbYmFvTGlzdFN1bW1hcnlJdGVtXScsXG4gIHRlbXBsYXRlOiBgPG5nLWNvbnRlbnQ+PC9uZy1jb250ZW50PmAsXG4gIHN0eWxlVXJsczogWycuL2xpc3Qtc3VtbWFyeS5jb21wb25lbnQuc2NzcyddLFxuICBlbmNhcHN1bGF0aW9uOiBWaWV3RW5jYXBzdWxhdGlvbi5Ob25lLFxuICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaCxcbiAgaG9zdDoge1xuICAgIGNsYXNzOiAnYmFvLWxpc3Qtc3VtbWFyeS1pdGVtJyxcbiAgICByb2xlOiAnbGlzdGl0ZW0nXG4gIH1cbn0pXG5leHBvcnQgY2xhc3MgQmFvTGlzdFN1bW1hcnlJdGVtIHt9XG5cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ2Jhby1saXN0LXN1bW1hcnksIFtiYW8tbGlzdC1zdW1tYXJ5XSwgW2Jhb0xpc3RTdW1tYXJ5XScsXG4gIHRlbXBsYXRlOiBgPG5nLWNvbnRlbnQ+PC9uZy1jb250ZW50PmAsXG4gIHN0eWxlczogWycuYmFvLWxpc3Qtc3VtbWFyeSB7IHBhZGRpbmctbGVmdDoycmVtIH0nXSxcbiAgZW5jYXBzdWxhdGlvbjogVmlld0VuY2Fwc3VsYXRpb24uTm9uZSxcbiAgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2gsXG4gIGhvc3Q6IHtcbiAgICBjbGFzczogJ2Jhby1saXN0LXN1bW1hcnknLFxuICAgIHJvbGU6ICdsaXN0J1xuICB9XG59KVxuZXhwb3J0IGNsYXNzIEJhb0xpc3RTdW1tYXJ5IHt9XG4iXX0=