@dereekb/dbx-form 8.15.2 → 9.0.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (110) hide show
  1. package/esm2020/lib/form/action/form.action.directive.mjs +3 -3
  2. package/esm2020/lib/form/action/form.action.module.mjs +5 -5
  3. package/esm2020/lib/form/action/transition/form.action.transition.module.mjs +5 -5
  4. package/esm2020/lib/form/action/transition/form.action.transition.safety.directive.mjs +3 -3
  5. package/esm2020/lib/form/form.module.mjs +4 -4
  6. package/esm2020/lib/form/io/form.changes.directive.mjs +3 -3
  7. package/esm2020/lib/form/io/form.input.directive.mjs +3 -3
  8. package/esm2020/lib/form/io/form.io.module.mjs +5 -5
  9. package/esm2020/lib/form/io/form.loading.directive.mjs +3 -3
  10. package/esm2020/lib/form.module.mjs +4 -4
  11. package/esm2020/lib/formly/field/checklist/checklist.item.field.component.mjs +14 -14
  12. package/esm2020/lib/formly/field/checklist/checklist.item.field.content.default.component.mjs +4 -4
  13. package/esm2020/lib/formly/field/checklist/checklist.item.field.module.mjs +18 -20
  14. package/esm2020/lib/formly/field/component/component.field.component.mjs +4 -4
  15. package/esm2020/lib/formly/field/component/component.field.module.mjs +9 -11
  16. package/esm2020/lib/formly/field/form.field.module.mjs +5 -5
  17. package/esm2020/lib/formly/field/selection/pickable/pickable.chip.field.component.mjs +10 -10
  18. package/esm2020/lib/formly/field/selection/pickable/pickable.field.directive.mjs +3 -3
  19. package/esm2020/lib/formly/field/selection/pickable/pickable.field.module.mjs +27 -29
  20. package/esm2020/lib/formly/field/selection/pickable/pickable.list.field.component.mjs +20 -20
  21. package/esm2020/lib/formly/field/selection/searchable/searchable.chip.field.component.mjs +9 -9
  22. package/esm2020/lib/formly/field/selection/searchable/searchable.field.autocomplete.item.component.mjs +11 -11
  23. package/esm2020/lib/formly/field/selection/searchable/searchable.field.directive.mjs +6 -6
  24. package/esm2020/lib/formly/field/selection/searchable/searchable.field.module.mjs +26 -28
  25. package/esm2020/lib/formly/field/selection/searchable/searchable.text.field.component.mjs +9 -9
  26. package/esm2020/lib/formly/field/selection/selection.module.mjs +5 -5
  27. package/esm2020/lib/formly/field/texteditor/texteditor.field.component.mjs +7 -7
  28. package/esm2020/lib/formly/field/texteditor/texteditor.field.module.mjs +14 -16
  29. package/esm2020/lib/formly/field/value/array/array.field.component.mjs +8 -8
  30. package/esm2020/lib/formly/field/value/array/array.field.module.mjs +17 -19
  31. package/esm2020/lib/formly/field/value/boolean/boolean.field.module.mjs +5 -5
  32. package/esm2020/lib/formly/field/value/date/date.field.module.mjs +21 -23
  33. package/esm2020/lib/formly/field/value/date/datetime.field.component.mjs +15 -15
  34. package/esm2020/lib/formly/field/value/index.mjs +1 -2
  35. package/esm2020/lib/formly/field/value/number/number.field.module.mjs +5 -5
  36. package/esm2020/lib/formly/field/value/phone/phone.field.component.mjs +5 -5
  37. package/esm2020/lib/formly/field/value/phone/phone.field.module.mjs +22 -25
  38. package/esm2020/lib/formly/field/value/text/text.field.module.mjs +5 -5
  39. package/esm2020/lib/formly/field/value/value.module.mjs +6 -7
  40. package/esm2020/lib/formly/field/wrapper/autotouch.wrapper.component.mjs +3 -3
  41. package/esm2020/lib/formly/field/wrapper/expandable.wrapper.component.mjs +4 -4
  42. package/esm2020/lib/formly/field/wrapper/expandable.wrapper.delegate.mjs +3 -3
  43. package/esm2020/lib/formly/field/wrapper/flex.wrapper.component.mjs +4 -4
  44. package/esm2020/lib/formly/field/wrapper/form.wrapper.module.mjs +26 -28
  45. package/esm2020/lib/formly/field/wrapper/info.wrapper.component.mjs +4 -4
  46. package/esm2020/lib/formly/field/wrapper/section.wrapper.component.mjs +4 -4
  47. package/esm2020/lib/formly/field/wrapper/style.wrapper.component.mjs +4 -4
  48. package/esm2020/lib/formly/field/wrapper/subsection.wrapper.component.mjs +4 -4
  49. package/esm2020/lib/formly/field/wrapper/toggle.wrapper.component.mjs +6 -6
  50. package/esm2020/lib/formly/field/wrapper/working.wrapper.component.mjs +4 -4
  51. package/esm2020/lib/formly/formly.context.directive.mjs +3 -3
  52. package/esm2020/lib/formly/formly.directive.mjs +12 -12
  53. package/esm2020/lib/formly/formly.form.component.mjs +7 -7
  54. package/esm2020/lib/formly/formly.module.mjs +5 -5
  55. package/esm2020/lib/layout/form.layout.module.mjs +5 -5
  56. package/esm2020/lib/layout/form.spacer.component.mjs +3 -3
  57. package/esm2020/lib/validator/email.mjs +1 -6
  58. package/fesm2015/dereekb-dbx-form.mjs +400 -460
  59. package/fesm2015/dereekb-dbx-form.mjs.map +1 -1
  60. package/fesm2020/dereekb-dbx-form.mjs +399 -459
  61. package/fesm2020/dereekb-dbx-form.mjs.map +1 -1
  62. package/lib/form/action/form.action.directive.d.ts +1 -1
  63. package/lib/form/action/transition/form.action.transition.safety.directive.d.ts +1 -1
  64. package/lib/form/io/form.changes.directive.d.ts +1 -1
  65. package/lib/form/io/form.input.directive.d.ts +1 -1
  66. package/lib/form/io/form.loading.directive.d.ts +1 -1
  67. package/lib/formly/field/checklist/checklist.item.field.component.d.ts +2 -2
  68. package/lib/formly/field/checklist/checklist.item.field.content.default.component.d.ts +1 -1
  69. package/lib/formly/field/component/component.field.component.d.ts +1 -1
  70. package/lib/formly/field/selection/pickable/pickable.chip.field.component.d.ts +1 -1
  71. package/lib/formly/field/selection/pickable/pickable.field.directive.d.ts +3 -3
  72. package/lib/formly/field/selection/pickable/pickable.list.field.component.d.ts +4 -4
  73. package/lib/formly/field/selection/searchable/searchable.chip.field.component.d.ts +1 -1
  74. package/lib/formly/field/selection/searchable/searchable.field.autocomplete.item.component.d.ts +3 -3
  75. package/lib/formly/field/selection/searchable/searchable.field.directive.d.ts +3 -3
  76. package/lib/formly/field/selection/searchable/searchable.text.field.component.d.ts +1 -1
  77. package/lib/formly/field/texteditor/texteditor.field.component.d.ts +1 -1
  78. package/lib/formly/field/value/_value.scss +0 -4
  79. package/lib/formly/field/value/array/array.field.component.d.ts +1 -1
  80. package/lib/formly/field/value/date/datetime.field.component.d.ts +6 -6
  81. package/lib/formly/field/value/index.d.ts +0 -1
  82. package/lib/formly/field/value/phone/phone.field.component.d.ts +1 -1
  83. package/lib/formly/field/value/phone/phone.field.module.d.ts +8 -8
  84. package/lib/formly/field/value/value.module.d.ts +4 -5
  85. package/lib/formly/field/wrapper/autotouch.wrapper.component.d.ts +1 -1
  86. package/lib/formly/field/wrapper/expandable.wrapper.component.d.ts +1 -1
  87. package/lib/formly/field/wrapper/expandable.wrapper.delegate.d.ts +3 -3
  88. package/lib/formly/field/wrapper/flex.wrapper.component.d.ts +1 -1
  89. package/lib/formly/field/wrapper/info.wrapper.component.d.ts +1 -1
  90. package/lib/formly/field/wrapper/section.wrapper.component.d.ts +1 -1
  91. package/lib/formly/field/wrapper/style.wrapper.component.d.ts +1 -1
  92. package/lib/formly/field/wrapper/subsection.wrapper.component.d.ts +1 -1
  93. package/lib/formly/field/wrapper/toggle.wrapper.component.d.ts +1 -1
  94. package/lib/formly/field/wrapper/working.wrapper.component.d.ts +1 -1
  95. package/lib/formly/formly.context.directive.d.ts +1 -1
  96. package/lib/formly/formly.directive.d.ts +4 -4
  97. package/lib/formly/formly.form.component.d.ts +2 -2
  98. package/lib/layout/form.spacer.component.d.ts +1 -1
  99. package/lib/validator/email.d.ts +0 -4
  100. package/package.json +12 -11
  101. package/dereekb-dbx-form.d.ts +0 -5
  102. package/esm2020/lib/formly/field/value/enum/enum.field.mjs +0 -21
  103. package/esm2020/lib/formly/field/value/enum/enum.field.module.mjs +0 -16
  104. package/esm2020/lib/formly/field/value/enum/enum.mjs +0 -2
  105. package/esm2020/lib/formly/field/value/enum/index.mjs +0 -5
  106. package/lib/formly/field/value/enum/_enum.scss +0 -28
  107. package/lib/formly/field/value/enum/enum.d.ts +0 -7
  108. package/lib/formly/field/value/enum/enum.field.d.ts +0 -20
  109. package/lib/formly/field/value/enum/enum.field.module.d.ts +0 -6
  110. package/lib/formly/field/value/enum/index.d.ts +0 -3
@@ -37,9 +37,9 @@ export class AbstractFormlyFormDirective {
37
37
  this.context.setDisabled(key, disabled);
38
38
  }
39
39
  }
40
- AbstractFormlyFormDirective.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.2", ngImport: i0, type: AbstractFormlyFormDirective, deps: [{ token: i1.DbxFormlyContext }], target: i0.ɵɵFactoryTarget.Directive });
41
- AbstractFormlyFormDirective.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "12.0.0", version: "13.3.2", type: AbstractFormlyFormDirective, inputs: { disabled: "disabled" }, ngImport: i0 });
42
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.2", ngImport: i0, type: AbstractFormlyFormDirective, decorators: [{
40
+ AbstractFormlyFormDirective.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.1.2", ngImport: i0, type: AbstractFormlyFormDirective, deps: [{ token: i1.DbxFormlyContext }], target: i0.ɵɵFactoryTarget.Directive });
41
+ AbstractFormlyFormDirective.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "14.1.2", type: AbstractFormlyFormDirective, inputs: { disabled: "disabled" }, ngImport: i0 });
42
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.1.2", ngImport: i0, type: AbstractFormlyFormDirective, decorators: [{
43
43
  type: Directive
44
44
  }], ctorParameters: function () { return [{ type: i1.DbxFormlyContext }]; }, propDecorators: { disabled: [{
45
45
  type: Input
@@ -52,9 +52,9 @@ export class AbstractSyncFormlyFormDirective extends AbstractFormlyFormDirective
52
52
  this.context.fields = this.fields;
53
53
  }
54
54
  }
55
- AbstractSyncFormlyFormDirective.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.2", ngImport: i0, type: AbstractSyncFormlyFormDirective, deps: null, target: i0.ɵɵFactoryTarget.Directive });
56
- AbstractSyncFormlyFormDirective.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "12.0.0", version: "13.3.2", type: AbstractSyncFormlyFormDirective, usesInheritance: true, ngImport: i0 });
57
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.2", ngImport: i0, type: AbstractSyncFormlyFormDirective, decorators: [{
55
+ AbstractSyncFormlyFormDirective.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.1.2", ngImport: i0, type: AbstractSyncFormlyFormDirective, deps: null, target: i0.ɵɵFactoryTarget.Directive });
56
+ AbstractSyncFormlyFormDirective.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "14.1.2", type: AbstractSyncFormlyFormDirective, usesInheritance: true, ngImport: i0 });
57
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.1.2", ngImport: i0, type: AbstractSyncFormlyFormDirective, decorators: [{
58
58
  type: Directive
59
59
  }] });
60
60
  /**
@@ -75,9 +75,9 @@ export class AbstractAsyncFormlyFormDirective extends AbstractFormlyFormDirectiv
75
75
  this._fieldsSub.destroy();
76
76
  }
77
77
  }
78
- AbstractAsyncFormlyFormDirective.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.2", ngImport: i0, type: AbstractAsyncFormlyFormDirective, deps: null, target: i0.ɵɵFactoryTarget.Directive });
79
- AbstractAsyncFormlyFormDirective.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "12.0.0", version: "13.3.2", type: AbstractAsyncFormlyFormDirective, usesInheritance: true, ngImport: i0 });
80
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.2", ngImport: i0, type: AbstractAsyncFormlyFormDirective, decorators: [{
78
+ AbstractAsyncFormlyFormDirective.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.1.2", ngImport: i0, type: AbstractAsyncFormlyFormDirective, deps: null, target: i0.ɵɵFactoryTarget.Directive });
79
+ AbstractAsyncFormlyFormDirective.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "14.1.2", type: AbstractAsyncFormlyFormDirective, usesInheritance: true, ngImport: i0 });
80
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.1.2", ngImport: i0, type: AbstractAsyncFormlyFormDirective, decorators: [{
81
81
  type: Directive
82
82
  }] });
83
83
  export class AbstractConfigAsyncFormlyFormDirective extends AbstractAsyncFormlyFormDirective {
@@ -97,9 +97,9 @@ export class AbstractConfigAsyncFormlyFormDirective extends AbstractAsyncFormlyF
97
97
  this._config.complete();
98
98
  }
99
99
  }
100
- AbstractConfigAsyncFormlyFormDirective.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.2", ngImport: i0, type: AbstractConfigAsyncFormlyFormDirective, deps: null, target: i0.ɵɵFactoryTarget.Directive });
101
- AbstractConfigAsyncFormlyFormDirective.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "12.0.0", version: "13.3.2", type: AbstractConfigAsyncFormlyFormDirective, inputs: { config: "config" }, usesInheritance: true, ngImport: i0 });
102
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.2", ngImport: i0, type: AbstractConfigAsyncFormlyFormDirective, decorators: [{
100
+ AbstractConfigAsyncFormlyFormDirective.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.1.2", ngImport: i0, type: AbstractConfigAsyncFormlyFormDirective, deps: null, target: i0.ɵɵFactoryTarget.Directive });
101
+ AbstractConfigAsyncFormlyFormDirective.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "14.1.2", type: AbstractConfigAsyncFormlyFormDirective, inputs: { config: "config" }, usesInheritance: true, ngImport: i0 });
102
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.1.2", ngImport: i0, type: AbstractConfigAsyncFormlyFormDirective, decorators: [{
103
103
  type: Directive
104
104
  }], propDecorators: { config: [{
105
105
  type: Input
@@ -9,8 +9,8 @@ import { scanCount, switchMapMaybeObs, SubscriptionObject } from '@dereekb/rxjs'
9
9
  import { BooleanStringKeyArrayUtilityInstance } from '@dereekb/util';
10
10
  import * as i0 from "@angular/core";
11
11
  import * as i1 from "./formly.context";
12
- import * as i2 from "@ngx-formly/core";
13
- import * as i3 from "@angular/forms";
12
+ import * as i2 from "@angular/forms";
13
+ import * as i3 from "@ngx-formly/core";
14
14
  import * as i4 from "@angular/common";
15
15
  /**
16
16
  * Used for rending a form from a DbxFormlyContext.
@@ -159,13 +159,13 @@ export class DbxFormlyFormComponent extends AbstractSubscriptionDirective {
159
159
  this._forceUpdate.next();
160
160
  }
161
161
  }
162
- DbxFormlyFormComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.2", ngImport: i0, type: DbxFormlyFormComponent, deps: [{ token: i1.DbxFormlyContext }], target: i0.ɵɵFactoryTarget.Component });
163
- DbxFormlyFormComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.3.2", type: DbxFormlyFormComponent, selector: "dbx-formly", host: { classAttribute: "dbx-formly" }, providers: provideDbxMutableForm(DbxFormlyFormComponent), exportAs: ["formly"], usesInheritance: true, ngImport: i0, template: `
162
+ DbxFormlyFormComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.1.2", ngImport: i0, type: DbxFormlyFormComponent, deps: [{ token: i1.DbxFormlyContext }], target: i0.ɵɵFactoryTarget.Component });
163
+ DbxFormlyFormComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.1.2", type: DbxFormlyFormComponent, selector: "dbx-formly", host: { classAttribute: "dbx-formly" }, providers: provideDbxMutableForm(DbxFormlyFormComponent), exportAs: ["formly"], usesInheritance: true, ngImport: i0, template: `
164
164
  <form [formGroup]="form" class="dbx-formly">
165
165
  <formly-form [form]="form" [fields]="(fields$ | async) ?? []" [model]="model"></formly-form>
166
166
  </form>
167
- `, isInline: true, components: [{ type: i2.FormlyForm, selector: "formly-form", inputs: ["form", "model", "fields", "options"], outputs: ["modelChange"] }], directives: [{ type: i3.ɵNgNoValidate, selector: "form:not([ngNoForm]):not([ngNativeValidate])" }, { type: i3.NgControlStatusGroup, selector: "[formGroupName],[formArrayName],[ngModelGroup],[formGroup],form:not([ngNoForm]),[ngForm]" }, { type: i3.FormGroupDirective, selector: "[formGroup]", inputs: ["formGroup"], outputs: ["ngSubmit"], exportAs: ["ngForm"] }], pipes: { "async": i4.AsyncPipe } });
168
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.2", ngImport: i0, type: DbxFormlyFormComponent, decorators: [{
167
+ `, isInline: true, dependencies: [{ kind: "directive", type: i2.ɵNgNoValidate, selector: "form:not([ngNoForm]):not([ngNativeValidate])" }, { kind: "directive", type: i2.NgControlStatusGroup, selector: "[formGroupName],[formArrayName],[ngModelGroup],[formGroup],form:not([ngNoForm]),[ngForm]" }, { kind: "directive", type: i2.FormGroupDirective, selector: "[formGroup]", inputs: ["formGroup"], outputs: ["ngSubmit"], exportAs: ["ngForm"] }, { kind: "component", type: i3.FormlyForm, selector: "formly-form", inputs: ["form", "model", "fields", "options"], outputs: ["modelChange"] }, { kind: "pipe", type: i4.AsyncPipe, name: "async" }] });
168
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.1.2", ngImport: i0, type: DbxFormlyFormComponent, decorators: [{
169
169
  type: Component,
170
170
  args: [{
171
171
  selector: 'dbx-formly',
@@ -181,4 +181,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.2", ngImpor
181
181
  }
182
182
  }]
183
183
  }], ctorParameters: function () { return [{ type: i1.DbxFormlyContext }]; } });
184
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZm9ybWx5LmZvcm0uY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcGFja2FnZXMvZGJ4LWZvcm0vc3JjL2xpYi9mb3JtbHkvZm9ybWx5LmZvcm0uY29tcG9uZW50LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxTQUFTLEVBQXFCLE1BQU0sZUFBZSxDQUFDO0FBQzdELE9BQU8sRUFBRSxTQUFTLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUUzQyxPQUFPLEVBQUUsb0JBQW9CLEVBQUUsR0FBRyxFQUFFLFlBQVksRUFBRSxTQUFTLEVBQUUsZUFBZSxFQUFjLE9BQU8sRUFBRSxTQUFTLEVBQUUsV0FBVyxFQUFFLEVBQUUsRUFBRSxJQUFJLEVBQUUsTUFBTSxFQUFFLEtBQUssRUFBRSxLQUFLLEVBQUUsTUFBTSxNQUFNLENBQUM7QUFDeEssT0FBTyxFQUFFLDZCQUE2QixFQUFFLE1BQU0sbUJBQW1CLENBQUM7QUFDbEUsT0FBTyxFQUE2QyxZQUFZLEVBQUUseUJBQXlCLEVBQUUscUJBQXFCLEVBQUUsTUFBTSxjQUFjLENBQUM7QUFDekksT0FBTyxFQUFFLGdCQUFnQixFQUFpRCxNQUFNLGtCQUFrQixDQUFDO0FBQ25HLE9BQU8sRUFBRSxTQUFTLEVBQUUsTUFBTSxRQUFRLENBQUM7QUFDbkMsT0FBTyxFQUFFLFNBQVMsRUFBRSxpQkFBaUIsRUFBRSxrQkFBa0IsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUNqRixPQUFPLEVBQXlCLG9DQUFvQyxFQUFTLE1BQU0sZUFBZSxDQUFDOzs7Ozs7QUFRbkc7O0dBRUc7QUFjSCxNQUFNLE9BQU8sc0JBQTBCLFNBQVEsNkJBQTZCO0lBMEYxRSxZQUE2QixPQUE0QjtRQUN2RCxLQUFLLEVBQUUsQ0FBQztRQURtQixZQUFPLEdBQVAsT0FBTyxDQUFxQjtRQXpGakQsWUFBTyxHQUFHLElBQUksZUFBZSxDQUF5QyxTQUFTLENBQUMsQ0FBQztRQUNq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LEVBQUUsQ0FBQyxDQUFDO0lBQy9CLENBQUM7SUFFRCxJQUFJLFVBQVU7UUFDWixPQUFPLG9DQUFvQyxDQUFDLE1BQU0sQ0FBQyxJQUFJLENBQUMsUUFBUSxDQUFDLENBQUM7SUFDcEUsQ0FBQztJQUVELElBQUksUUFBUTtRQUNWLE9BQU8sSUFBSSxDQUFDLFNBQVMsQ0FBQyxLQUFLLENBQUM7SUFDOUIsQ0FBQztJQUVELFdBQVc7UUFDVCxPQUFPLElBQUksQ0FBQyxTQUFTLENBQUMsWUFBWSxFQUFFLENBQUM7SUFDdkMsQ0FBQztJQUVELFdBQVcsQ0FBQyxHQUF3QixFQUFFLFFBQVEsR0FBRyxJQUFJO1FBQ25ELElBQUksQ0FBQyxTQUFTLENBQUMsSUFBSSxDQUFDLG9DQUFvQyxDQUFDLEdBQUcsQ0FBQyxJQUFJLENBQUMsUUFBUSxFQUFFLEdBQUcsSUFBSSx5QkFBeUIsRUFBRSxRQUFRLENBQUMsQ0FBQyxDQUFDO0lBQzNILENBQUM7SUFFRCxlQUFlO0lBQ2YsZUFBZTtRQUNiLElBQUksQ0FBQyxZQUFZLENBQUMsSUFBSSxFQUFFLENBQUM7SUFDM0IsQ0FBQzs7bUhBekxVLHNCQUFzQjt1R0FBdEIsc0JBQXNCLDZFQUx0QixxQkFBcUIsQ0FBQyxzQkFBc0IsQ0FBQyx1RUFMOUM7Ozs7R0FJVDsyRkFNVSxzQkFBc0I7a0JBYmxDLFNBQVM7bUJBQUM7b0JBQ1QsUUFBUSxFQUFFLFlBQVk7b0JBQ3RCLFFBQVEsRUFBRSxRQUFRO29CQUNsQixRQUFRLEVBQUU7Ozs7R0FJVDtvQkFDRCxTQUFTLEVBQUUscUJBQXFCLHdCQUF3QjtvQkFDeEQsSUFBSSxFQUFFO3dCQUNKLEtBQUssRUFBRSxZQUFZO3FCQUNwQjtpQkFDRiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENvbXBvbmVudCwgT25EZXN0cm95LCBPbkluaXQgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IEZvcm1Hcm91cCB9IGZyb20gJ0Bhbmd1bGFyL2Zvcm1zJztcbmltcG9ydCB7IEZvcm1seUZpZWxkQ29uZmlnLCBGb3JtbHlGb3JtT3B0aW9ucyB9IGZyb20gJ0BuZ3gtZm9ybWx5L2NvcmUnO1xuaW1wb3J0IHsgZGlzdGluY3RVbnRpbENoYW5nZWQsIG1hcCwgdGhyb3R0bGVUaW1lLCBzdGFydFdpdGgsIEJlaGF2aW9yU3ViamVjdCwgT2JzZXJ2YWJsZSwgU3ViamVjdCwgc3dpdGNoTWFwLCBzaGFyZVJlcGxheSwgb2YsIHNjYW4sIGZpbHRlciwgdGltZXIsIGZpcnN0IH0gZnJvbSAncnhqcyc7XG5pbXBvcnQgeyBBYnN0cmFjdFN1YnNjcmlwdGlvbkRpcmVjdGl2ZSB9IGZyb20gJ0BkZXJlZWtiL2RieC1jb3JlJztcbmltcG9ydCB7IERieEZvcm0sIERieEZvcm1EaXNhYmxlZEtleSwgRGJ4Rm9ybUV2ZW50LCBEYnhGb3JtU3RhdGUsIERFRkFVTFRfRk9STV9ESVNBQkxFRF9LRVksIHByb3ZpZGVEYnhNdXRhYmxlRm9ybSB9IGZyb20gJy4uL2Zvcm0vZm9ybSc7XG5pbXBvcnQgeyBEYnhGb3JtbHlDb250ZXh0LCBEYnhGb3JtbHlDb250ZXh0RGVsZWdhdGUsIERieEZvcm1seUluaXRpYWxpemUgfSBmcm9tICcuL2Zvcm1seS5jb250ZXh0JztcbmltcG9ydCB7IGNsb25lRGVlcCB9IGZyb20gJ2xvZGFzaCc7XG5pbXBvcnQgeyBzY2FuQ291bnQsIHN3aXRjaE1hcE1heWJlT2JzLCBTdWJzY3JpcHRpb25PYmplY3QgfSBmcm9tICdAZGVyZWVrYi9yeGpzJztcbmltcG9ydCB7IEJvb2xlYW5TdHJpbmdLZXlBcnJheSwgQm9vbGVhblN0cmluZ0tleUFycmF5VXRpbGl0eUluc3RhbmNlLCBNYXliZSB9IGZyb20gJ0BkZXJlZWtiL3V0aWwnO1xuXG5leHBvcnQgaW50ZXJmYWNlIERieEZvcm1seUZvcm1TdGF0ZSB7XG4gIGNoYW5nZXNTaW5jZUxhc3RSZXNldENvdW50OiBudW1iZXI7XG4gIGlzRm9ybVZhbGlkOiBib29sZWFuO1xuICBpc0Zvcm1EaXNhYmxlZDogYm9vbGVhbjtcbn1cblxuLyoqXG4gKiBVc2VkIGZvciByZW5kaW5nIGEgZm9ybSBmcm9tIGEgRGJ4Rm9ybWx5Q29udGV4dC5cbiAqL1xuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnZGJ4LWZvcm1seScsXG4gIGV4cG9ydEFzOiAnZm9ybWx5JyxcbiAgdGVtcGxhdGU6IGBcbiAgICA8Zm9ybSBbZm9ybUdyb3VwXT1cImZvcm1cIiBjbGFzcz1cImRieC1mb3JtbHlcIj5cbiAgICAgIDxmb3JtbHktZm9ybSBbZm9ybV09XCJmb3JtXCIgW2ZpZWxkc109XCIoZmllbGRzJCB8IGFzeW5jKSA/PyBbXVwiIFttb2RlbF09XCJtb2RlbFwiPjwvZm9ybWx5LWZvcm0+XG4gICAgPC9mb3JtPlxuICBgLFxuICBwcm92aWRlcnM6IHByb3ZpZGVEYnhNdXRhYmxlRm9ybShEYnhGb3JtbHlGb3JtQ29tcG9uZW50KSxcbiAgaG9zdDoge1xuICAgIGNsYXNzOiAnZGJ4LWZvcm1seSdcbiAgfVxufSlcbmV4cG9ydCBjbGFzcyBEYnhGb3JtbHlGb3JtQ29tcG9uZW50PFQ+IGV4dGVuZHMgQWJzdHJhY3RTdWJzY3JpcHRpb25EaXJlY3RpdmUgaW1wbGVtZW50cyBEYnhGb3JtLCBEYnhGb3JtbHlDb250ZXh0RGVsZWdhdGU8VD4sIE9uSW5pdCwgT25EZXN0cm95IHtcbiAgcHJpdmF0ZSBfZmllbGRzID0gbmV3IEJlaGF2aW9yU3ViamVjdDxNYXliZTxPYnNlcnZhYmxlPEZvcm1seUZpZWxkQ29uZmlnW10+Pj4odW5kZWZpbmVkKTtcbiAgcHJpdmF0ZSBfZXZlbnRzID0gbmV3IEJlaGF2aW9yU3ViamVjdDxEYnhGb3JtRXZlbnQ+KHsgaXNDb21wbGV0ZTogZmFsc2UsIHN0YXRlOiBEYnhGb3JtU3RhdGUuSU5JVElBTElaSU5HLCBzdGF0dXM6ICdQRU5ESU5HJyB9KTtcbiAgcHJpdmF0ZSBfZGlzYWJsZWQgPSBuZXcgQmVoYXZpb3JTdWJqZWN0PEJvb2xlYW5TdHJpbmdLZXlBcnJheT4odW5kZWZpbmVkKTtcblxuICBwcml2YXRlIF9yZXNldCA9IG5ldyBCZWhhdmlvclN1YmplY3Q8RGF0ZT4obmV3IERhdGUoKSk7XG4gIHByaXZhdGUgX2ZvcmNlVXBkYXRlID0gbmV3IFN1YmplY3Q8dm9pZD4oKTtcblxuICBwcml2YXRlIF9kaXNhYmxlZFN1YiA9IG5ldyBTdWJzY3JpcHRpb25PYmplY3QoKTtcblxuICBmb3JtID0gbmV3IEZvcm1Hcm91cCh7fSk7XG4gIG1vZGVsOiBUID0ge30gYXMgVDtcbiAgb3B0aW9uczogRm9ybWx5Rm9ybU9wdGlvbnMgPSB7fTtcblxuICByZWFkb25seSBmaWVsZHMkID0gdGhpcy5fZmllbGRzLnBpcGUoc3dpdGNoTWFwTWF5YmVPYnMoKSwgZGlzdGluY3RVbnRpbENoYW5nZWQoKSwgc2hhcmVSZXBsYXkoMSkpO1xuXG4gIHJlYWRvbmx5IHN0cmVhbSQ6IE9ic2VydmFibGU8RGJ4Rm9ybUV2ZW50PiA9IHRoaXMuX3Jlc2V0LnBpcGUoXG4gICAgc3dpdGNoTWFwKChsYXN0UmVzZXRBdCkgPT5cbiAgICAgIHRoaXMuZm9ybS52YWx1ZUNoYW5nZXMucGlwZShcbiAgICAgICAgc3RhcnRXaXRoKDApLFxuICAgICAgICBkaXN0aW5jdFVudGlsQ2hhbmdlZCgpLFxuICAgICAgICB0aHJvdHRsZVRpbWUoNTAsIHVuZGVmaW5lZCwgeyBsZWFkaW5nOiB0cnVlLCB0cmFpbGluZzogdHJ1ZSB9KSxcbiAgICAgICAgc2NhbkNvdW50KC0xKSxcbiAgICAgICAgLy8gdXBkYXRlIG9uIHZhbGlkYXRpb24gY2hhbmdlcyB0b28uIERvZXMgbm90IGNvdW50IHRvd2FyZHMgY2hhbmdlcyBzaW5jZSBsYXN0IHJlc2V0LlxuICAgICAgICBzd2l0Y2hNYXAoKGNoYW5nZXNTaW5jZUxhc3RSZXNldCkgPT4gdGhpcy5mb3JtLnN0YXR1c0NoYW5nZXMucGlwZShzdGFydFdpdGgodGhpcy5mb3JtLnN0YXR1cyksIGRpc3RpbmN0VW50aWxDaGFuZ2VkKCkpLnBpcGUobWFwKCgpID0+IGNoYW5nZXNTaW5jZUxhc3RSZXNldCkpKSxcbiAgICAgICAgbWFwKChjaGFuZ2VzU2luY2VMYXN0UmVzZXRDb3VudDogbnVtYmVyKSA9PiAoe1xuICAgICAgICAgIGNoYW5nZXNTaW5jZUxhc3RSZXNldENvdW50LFxuICAgICAgICAgIGlzRm9ybVZhbGlkOiB0aGlzLmZvcm0uc3RhdHVzICE9PSAnUEVORElORycgJiYgdGhpcy5mb3JtLnZhbGlkLFxuICAgICAgICAgIGlzRm9ybURpc2FibGVkOiB0aGlzLmZvcm0uZGlzYWJsZWRcbiAgICAgICAgfSkpLFxuICAgICAgICBzY2FuKFxuICAgICAgICAgIChhY2M6IERieEZvcm1seUZvcm1TdGF0ZSwgbmV4dDogRGJ4Rm9ybWx5Rm9ybVN0YXRlKSA9PiB7XG4gICAgICAgICAgICAvLyBQYXNzIGZvcndhcmQgdmFsaWQgaWYgbmV4dCB3YXMgYSBkaXNhYmxlZCBjaGFuZ2UvY2hlY2ssIHdoaWNoIGNoYW5nZXMgYW5ndWxhciBmb3JtJ3MgaXNWYWxpZCB2YWx1ZS5cbiAgICAgICAgICAgIC8vIElmIGl0IHdhcyB2YWxpZCBwcmlvciwgdGhlbiBpdCBzaG91bGQgYmUgdmFsaWQgbm93LCB1bmxlc3Mgd2UganVzdCByZXNldCwgaW4gd2hpY2ggY2FzZSBpdCBtaWdodCBub3QgYmUgdmFsaWQuXG4gICAgICAgICAgICBjb25zdCB2YWxpZCA9IG5leHQuaXNGb3JtVmFsaWQgfHwgKG5leHQuaXNGb3JtRGlzYWJsZWQgJiYgYWNjLmlzRm9ybVZhbGlkICYmIGFjYy5jaGFuZ2VzU2luY2VMYXN0UmVzZXRDb3VudCA+IDApO1xuXG4gICAgICAgICAgICByZXR1cm4ge1xuICAgICAgICAgICAgICBjaGFuZ2VzU2luY2VMYXN0UmVzZXRDb3VudDogbmV4dC5jaGFuZ2VzU2luY2VMYXN0UmVzZXRDb3VudCxcbiAgICAgICAgICAgICAgaXNGb3JtVmFsaWQ6IHZhbGlkLFxuICAgICAgICAgICAgICBpc0Zvcm1EaXNhYmxlZDogbmV4dC5pc0Zvcm1EaXNhYmxlZFxuICAgICAgICAgICAgfTtcbiAgICAgICAgICB9LFxuICAgICAgICAgIHtcbiAgICAgICAgICAgIGNoYW5nZXNTaW5jZUxhc3RSZXNldENvdW50OiAwLFxuICAgICAgICAgICAgaXNGb3JtVmFsaWQ6IGZhbHNlLFxuICAgICAgICAgICAgaXNGb3JtRGlzYWJsZWQ6IGZhbHNlXG4gICAgICAgICAgfVxuICAgICAgICApLFxuICAgICAgICBzd2l0Y2hNYXAoKHsgY2hhbmdlc1NpbmNlTGFzdFJlc2V0Q291bnQsIGlzRm9ybVZhbGlkLCBpc0Zvcm1EaXNhYmxlZCB9KSA9PiB7XG4gICAgICAgICAgY29uc3QgbmV4dFN0YXRlID0gKCkgPT4ge1xuICAgICAgICAgICAgY29uc3QgaXNSZXNldCA9IGNoYW5nZXNTaW5jZUxhc3RSZXNldENvdW50IDw9IDE7IC8vIGZpcnN0IGVtaXNzaW9uIGFmdGVyIHJlc2V0IGlzIHRoZSBmaXJzdCB2YWx1ZS5cbiAgICAgICAgICAgIGNvbnN0IGNvbXBsZXRlID0gaXNGb3JtVmFsaWQ7XG5cbiAgICAgICAgICAgIGNvbnN0IG5leHRTdGF0ZTogRGJ4Rm9ybUV2ZW50ID0ge1xuICAgICAgICAgICAgICBpc0NvbXBsZXRlOiBjb21wbGV0ZSxcbiAgICAgICAgICAgICAgc3RhdGU6IGlzUmVzZXQgPyBEYnhGb3JtU3RhdGUuUkVTRVQgOiBEYnhGb3JtU3RhdGUuVVNFRCxcbiAgICAgICAgICAgICAgc3RhdHVzOiB0aGlzLmZvcm0uc3RhdHVzLFxuICAgICAgICAgICAgICB1bnRvdWNoZWQ6IHRoaXMuZm9ybS51bnRvdWNoZWQsXG4gICAgICAgICAgICAgIHByaXN0aW5lOiB0aGlzLmZvcm0ucHJpc3RpbmUsXG4gICAgICAgICAgICAgIGNoYW5nZXNDb3VudDogY2hhbmdlc1NpbmNlTGFzdFJlc2V0Q291bnQsXG4gICAgICAgICAgICAgIGxhc3RSZXNldEF0LFxuICAgICAgICAgICAgICBkaXNhYmxlZDogdGhpcy5kaXNhYmxlZCxcbiAgICAgICAgICAgICAgaXNEaXNhYmxlZDogaXNGb3JtRGlzYWJsZWRcbiAgICAgICAgICAgIH07XG5cbiAgICAgICAgICAgIHJldHVybiBuZXh0U3RhdGU7XG4gICAgICAgICAgfTtcblxuICAgICAgICAgIGNvbnN0IHN0YXRlID0gbmV4dFN0YXRlKCk7XG5cbiAgICAgICAgICBpZiAoaXNGb3JtVmFsaWQgJiYgdGhpcy5mb3JtLnVudG91Y2hlZCkge1xuICAgICAgICAgICAgcmV0dXJuIHRpbWVyKDE1MCwgMjAwKS5waXBlKFxuICAgICAgICAgICAgICAvLyBldmVyeSAyMDAgbXMgY2hlY2sgaWYgdGhlIGZvcm0gaXMgbm93IG1hcmtlZCB0b3VjaGVkLCB0aGVuIHB1c2ggYSBuZXcgc3RhdGVcbiAgICAgICAgICAgICAgZmlsdGVyKCgpID0+IHRoaXMuZm9ybS50b3VjaGVkKSxcbiAgICAgICAgICAgICAgbWFwKCgpID0+IG5leHRTdGF0ZSgpKSxcbiAgICAgICAgICAgICAgLy8gb25seSBwdXNoIHRoZSBuZXcgc3RhdGUgb25jZVxuICAgICAgICAgICAgICBmaXJzdCgpLFxuICAgICAgICAgICAgICAvLyBzZW5kIHRoZSBmaXJzdCB2YWx1ZSBpbW1lZGlhdGVseVxuICAgICAgICAgICAgICBzdGFydFdpdGgoc3RhdGUpXG4gICAgICAgICAgICApO1xuICAgICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICByZXR1cm4gb2Yoc3RhdGUpO1xuICAgICAgICAgIH1cbiAgICAgICAgfSlcbiAgICAgICAgLy8gdGFwTG9nKCdDaGFuZ2U6ICcpXG4gICAgICApXG4gICAgKSxcbiAgICBzaGFyZVJlcGxheSgxKVxuICApO1xuXG4gIGNvbnN0cnVjdG9yKHByaXZhdGUgcmVhZG9ubHkgY29udGV4dDogRGJ4Rm9ybWx5Q29udGV4dDxUPikge1xuICAgIHN1cGVyKCk7XG4gIH1cblxuICBuZ09uSW5pdCgpOiB2b2lkIHtcbiAgICB0aGlzLmNvbnRleHQuc2V0RGVsZWdhdGUodGhpcyk7XG5cbiAgICB0aGlzLl9kaXNhYmxlZFN1Yi5zdWJzY3JpcHRpb24gPSB0aGlzLl9kaXNhYmxlZC5waXBlKGRpc3RpbmN0VW50aWxDaGFuZ2VkKCkpLnN1YnNjcmliZSgoZGlzYWJsZWQpID0+IHtcbiAgICAgIGNvbnN0IGlzRGlzYWJsZWQgPSBCb29sZWFuU3RyaW5nS2V5QXJyYXlVdGlsaXR5SW5zdGFuY2UuaXNUcnVlKGRpc2FibGVkKTtcblxuICAgICAgaWYgKHRoaXMuZm9ybS5kaXNhYmxlZCAhPT0gaXNEaXNhYmxlZCkge1xuICAgICAgICBpZiAoaXNEaXNhYmxlZCkge1xuICAgICAgICAgIHRoaXMuZm9ybS5kaXNhYmxlKHsgZW1pdEV2ZW50OiB0cnVlIH0pO1xuICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgIHRoaXMuZm9ybS5lbmFibGUoeyBlbWl0RXZlbnQ6IHRydWUgfSk7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9KTtcbiAgfVxuXG4gIG92ZXJyaWRlIG5nT25EZXN0cm95KCk6IHZvaWQge1xuICAgIHRoaXMuY29udGV4dC5sb2NrU2V0Lm9uTmV4dFVubG9jaygoKSA9PiB7XG4gICAgICBzdXBlci5uZ09uRGVzdHJveSgpO1xuICAgICAgdGhpcy5jb250ZXh0LmNsZWFyRGVsZWdhdGUodGhpcyk7XG4gICAgICB0aGlzLl9ldmVudHMuY29tcGxldGUoKTtcbiAgICAgIHRoaXMuX2ZpZWxkcy5jb21wbGV0ZSgpO1xuICAgICAgdGhpcy5fcmVzZXQuY29tcGxldGUoKTtcbiAgICAgIHRoaXMuX2ZvcmNlVXBkYXRlLmNvbXBsZXRlKCk7XG4gICAgICB0aGlzLl9kaXNhYmxlZC5jb21wbGV0ZSgpO1xuICAgICAgdGhpcy5fZGlzYWJsZWRTdWIuZGVzdHJveSgpO1xuICAgIH0pO1xuICB9XG5cbiAgLy8gTUFSSzogRGVsZWdhdGVcbiAgaW5pdChpbml0aWFsaXplOiBEYnhGb3JtbHlJbml0aWFsaXplPFQ+KTogdm9pZCB7XG4gICAgdGhpcy5fZmllbGRzLm5leHQoaW5pdGlhbGl6ZS5maWVsZHMpO1xuICAgIHRoaXMuX2Rpc2FibGVkLm5leHQoaW5pdGlhbGl6ZS5pbml0aWFsRGlzYWJsZWQpO1xuICB9XG5cbiAgZ2V0VmFsdWUoKTogT2JzZXJ2YWJsZTxUPiB7XG4gICAgcmV0dXJuIG9mKHRoaXMuZm9ybS52YWx1ZSk7XG4gIH1cblxuICBzZXRWYWx1ZSh2YWx1ZTogVCk6IHZvaWQge1xuICAgIC8vIGNvbnNvbGUubG9nKCdzZXQgdmFsdWU6ICcsIHZhbHVlKTtcbiAgICB0aGlzLm1vZGVsID0gY2xvbmVEZWVwKHZhbHVlKSBhcyBUO1xuXG4gICAgaWYgKHRoaXMub3B0aW9ucy51cGRhdGVJbml0aWFsVmFsdWUpIHtcbiAgICAgIHRoaXMub3B0aW9ucy51cGRhdGVJbml0aWFsVmFsdWUoKTtcbiAgICAgIHRoaXMub3B0aW9ucy5yZXNldE1vZGVsPy4oKTtcbiAgICB9XG5cbiAgICAvLyBSZS1tYXJrIGFzIHVudG91Y2hlZCBhbmQgcHJpc3RpbmUuXG4gICAgdGhpcy5mb3JtLm1hcmtBc1VudG91Y2hlZCgpO1xuICAgIHRoaXMuZm9ybS5tYXJrQXNQcmlzdGluZSgpO1xuXG4gICAgLy8gQWZ0ZXIgdXBkYXRpbmcgdGhlIHZhbHVlLCBpZiB0aGUgZm9ybSBpcyBzdGlsbCB1bnRvdWNoZWQgbWFyayBpdCBhcyBwcmlzdGluZSBhZ2Fpbi5cbiAgICAvLyBTb21ldGltZXMgdGhlIHZhbHVlcyBnZXQgbWFya2VkIGFzIGNoYW5nZWQgYW5kIGJyZWFrIHByaXN0aW5lIGJlZm9yZSBhIHVzZXIgaGFzIHRpbWUgdG8gaW50ZXJhY3QuXG4gICAgc2V0VGltZW91dCgoKSA9PiB7XG4gICAgICBpZiAodGhpcy5mb3JtLnVudG91Y2hlZCkge1xuICAgICAgICB0aGlzLmZvcm0ubWFya0FzUHJpc3RpbmUoKTtcbiAgICAgIH1cbiAgICB9LCA1MDApO1xuXG4gICAgLy8gcGluZyByZXNldFxuICAgIHRoaXMucmVzZXRGb3JtKCk7XG4gIH1cblxuICByZXNldEZvcm0oKTogdm9pZCB7XG4gICAgaWYgKHRoaXMub3B0aW9ucy5yZXNldE1vZGVsKSB7XG4gICAgICB0aGlzLm9wdGlvbnMucmVzZXRNb2RlbCgpO1xuICAgIH1cblxuICAgIHRoaXMuX3Jlc2V0Lm5leHQobmV3IERhdGUoKSk7XG4gIH1cblxuICBnZXQgaXNEaXNhYmxlZCgpOiBib29sZWFuIHtcbiAgICByZXR1cm4gQm9vbGVhblN0cmluZ0tleUFycmF5VXRpbGl0eUluc3RhbmNlLmlzVHJ1ZSh0aGlzLmRpc2FibGVkKTtcbiAgfVxuXG4gIGdldCBkaXNhYmxlZCgpOiBCb29sZWFuU3RyaW5nS2V5QXJyYXkge1xuICAgIHJldHVybiB0aGlzLl9kaXNhYmxlZC52YWx1ZTtcbiAgfVxuXG4gIGdldERpc2FibGVkKCk6IE9ic2VydmFibGU8Qm9vbGVhblN0cmluZ0tleUFycmF5PiB7XG4gICAgcmV0dXJuIHRoaXMuX2Rpc2FibGVkLmFzT2JzZXJ2YWJsZSgpO1xuICB9XG5cbiAgc2V0RGlzYWJsZWQoa2V5PzogRGJ4Rm9ybURpc2FibGVkS2V5LCBkaXNhYmxlZCA9IHRydWUpOiB2b2lkIHtcbiAgICB0aGlzLl9kaXNhYmxlZC5uZXh0KEJvb2xlYW5TdHJpbmdLZXlBcnJheVV0aWxpdHlJbnN0YW5jZS5zZXQodGhpcy5kaXNhYmxlZCwga2V5ID8/IERFRkFVTFRfRk9STV9ESVNBQkxFRF9LRVksIGRpc2FibGVkKSk7XG4gIH1cblxuICAvLyBNQVJLOiBVcGRhdGVcbiAgZm9yY2VGb3JtVXBkYXRlKCk6IHZvaWQge1xuICAgIHRoaXMuX2ZvcmNlVXBkYXRlLm5leHQoKTtcbiAgfVxufVxuIl19
184
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZm9ybWx5LmZvcm0uY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcGFja2FnZXMvZGJ4LWZvcm0vc3JjL2xpYi9mb3JtbHkvZm9ybWx5LmZvcm0uY29tcG9uZW50LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxTQUFTLEVBQXFCLE1BQU0sZUFBZSxDQUFDO0FBQzdELE9BQU8sRUFBRSxTQUFTLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUUzQyxPQUFPLEVBQUUsb0JBQW9CLEVBQUUsR0FBRyxFQUFFLFlBQVksRUFBRSxTQUFTLEVBQUUsZUFBZSxFQUFjLE9BQU8sRUFBRSxTQUFTLEVBQUUsV0FBVyxFQUFFLEVBQUUsRUFBRSxJQUFJLEVBQUUsTUFBTSxFQUFFLEtBQUssRUFBRSxLQUFLLEVBQUUsTUFBTSxNQUFNLENBQUM7QUFDeEssT0FBTyxFQUFFLDZCQUE2QixFQUFFLE1BQU0sbUJBQW1CLENBQUM7QUFDbEUsT0FBTyxFQUE2QyxZQUFZLEVBQUUseUJBQXlCLEVBQUUscUJBQXFCLEVBQUUsTUFBTSxjQUFjLENBQUM7QUFDekksT0FBTyxFQUFFLGdCQUFnQixFQUFpRCxNQUFNLGtCQUFrQixDQUFDO0FBQ25HLE9BQU8sRUFBRSxTQUFTLEVBQUUsTUFBTSxRQUFRLENBQUM7QUFDbkMsT0FBTyxFQUFFLFNBQVMsRUFBRSxpQkFBaUIsRUFBRSxrQkFBa0IsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUNqRixPQUFPLEVBQXlCLG9DQUFvQyxFQUFTLE1BQU0sZUFBZSxDQUFDOzs7Ozs7QUFRbkc7O0dBRUc7QUFjSCxNQUFNLE9BQU8sc0JBQTBCLFNBQVEsNkJBQTZCO0lBMEYxRSxZQUE2QixPQUE0QjtRQUN2RCxLQUFLLEVBQUUsQ0FBQztRQURtQixZQUFPLEdBQVAsT0FBTyxDQUFxQjtRQXpGakQsWUFBTyxHQUFHLElBQUksZUFBZSxDQUF5QyxTQUFTLENBQUMsQ0FBQztRQUNq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LEVBQUUsQ0FBQyxDQUFDO0lBQy9CLENBQUM7SUFFRCxJQUFJLFVBQVU7UUFDWixPQUFPLG9DQUFvQyxDQUFDLE1BQU0sQ0FBQyxJQUFJLENBQUMsUUFBUSxDQUFDLENBQUM7SUFDcEUsQ0FBQztJQUVELElBQUksUUFBUTtRQUNWLE9BQU8sSUFBSSxDQUFDLFNBQVMsQ0FBQyxLQUFLLENBQUM7SUFDOUIsQ0FBQztJQUVELFdBQVc7UUFDVCxPQUFPLElBQUksQ0FBQyxTQUFTLENBQUMsWUFBWSxFQUFFLENBQUM7SUFDdkMsQ0FBQztJQUVELFdBQVcsQ0FBQyxHQUF3QixFQUFFLFFBQVEsR0FBRyxJQUFJO1FBQ25ELElBQUksQ0FBQyxTQUFTLENBQUMsSUFBSSxDQUFDLG9DQUFvQyxDQUFDLEdBQUcsQ0FBQyxJQUFJLENBQUMsUUFBUSxFQUFFLEdBQUcsSUFBSSx5QkFBeUIsRUFBRSxRQUFRLENBQUMsQ0FBQyxDQUFDO0lBQzNILENBQUM7SUFFRCxlQUFlO0lBQ2YsZUFBZTtRQUNiLElBQUksQ0FBQyxZQUFZLENBQUMsSUFBSSxFQUFFLENBQUM7SUFDM0IsQ0FBQzs7bUhBekxVLHNCQUFzQjt1R0FBdEIsc0JBQXNCLDZFQUx0QixxQkFBcUIsQ0FBQyxzQkFBc0IsQ0FBQyx1RUFMOUM7Ozs7R0FJVDsyRkFNVSxzQkFBc0I7a0JBYmxDLFNBQVM7bUJBQUM7b0JBQ1QsUUFBUSxFQUFFLFlBQVk7b0JBQ3RCLFFBQVEsRUFBRSxRQUFRO29CQUNsQixRQUFRLEVBQUU7Ozs7R0FJVDtvQkFDRCxTQUFTLEVBQUUscUJBQXFCLHdCQUF3QjtvQkFDeEQsSUFBSSxFQUFFO3dCQUNKLEtBQUssRUFBRSxZQUFZO3FCQUNwQjtpQkFDRiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENvbXBvbmVudCwgT25EZXN0cm95LCBPbkluaXQgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IEZvcm1Hcm91cCB9IGZyb20gJ0Bhbmd1bGFyL2Zvcm1zJztcbmltcG9ydCB7IEZvcm1seUZpZWxkQ29uZmlnLCBGb3JtbHlGb3JtT3B0aW9ucyB9IGZyb20gJ0BuZ3gtZm9ybWx5L2NvcmUnO1xuaW1wb3J0IHsgZGlzdGluY3RVbnRpbENoYW5nZWQsIG1hcCwgdGhyb3R0bGVUaW1lLCBzdGFydFdpdGgsIEJlaGF2aW9yU3ViamVjdCwgT2JzZXJ2YWJsZSwgU3ViamVjdCwgc3dpdGNoTWFwLCBzaGFyZVJlcGxheSwgb2YsIHNjYW4sIGZpbHRlciwgdGltZXIsIGZpcnN0IH0gZnJvbSAncnhqcyc7XG5pbXBvcnQgeyBBYnN0cmFjdFN1YnNjcmlwdGlvbkRpcmVjdGl2ZSB9IGZyb20gJ0BkZXJlZWtiL2RieC1jb3JlJztcbmltcG9ydCB7IERieEZvcm0sIERieEZvcm1EaXNhYmxlZEtleSwgRGJ4Rm9ybUV2ZW50LCBEYnhGb3JtU3RhdGUsIERFRkFVTFRfRk9STV9ESVNBQkxFRF9LRVksIHByb3ZpZGVEYnhNdXRhYmxlRm9ybSB9IGZyb20gJy4uL2Zvcm0vZm9ybSc7XG5pbXBvcnQgeyBEYnhGb3JtbHlDb250ZXh0LCBEYnhGb3JtbHlDb250ZXh0RGVsZWdhdGUsIERieEZvcm1seUluaXRpYWxpemUgfSBmcm9tICcuL2Zvcm1seS5jb250ZXh0JztcbmltcG9ydCB7IGNsb25lRGVlcCB9IGZyb20gJ2xvZGFzaCc7XG5pbXBvcnQgeyBzY2FuQ291bnQsIHN3aXRjaE1hcE1heWJlT2JzLCBTdWJzY3JpcHRpb25PYmplY3QgfSBmcm9tICdAZGVyZWVrYi9yeGpzJztcbmltcG9ydCB7IEJvb2xlYW5TdHJpbmdLZXlBcnJheSwgQm9vbGVhblN0cmluZ0tleUFycmF5VXRpbGl0eUluc3RhbmNlLCBNYXliZSB9IGZyb20gJ0BkZXJlZWtiL3V0aWwnO1xuXG5leHBvcnQgaW50ZXJmYWNlIERieEZvcm1seUZvcm1TdGF0ZSB7XG4gIGNoYW5nZXNTaW5jZUxhc3RSZXNldENvdW50OiBudW1iZXI7XG4gIGlzRm9ybVZhbGlkOiBib29sZWFuO1xuICBpc0Zvcm1EaXNhYmxlZDogYm9vbGVhbjtcbn1cblxuLyoqXG4gKiBVc2VkIGZvciByZW5kaW5nIGEgZm9ybSBmcm9tIGEgRGJ4Rm9ybWx5Q29udGV4dC5cbiAqL1xuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnZGJ4LWZvcm1seScsXG4gIGV4cG9ydEFzOiAnZm9ybWx5JyxcbiAgdGVtcGxhdGU6IGBcbiAgICA8Zm9ybSBbZm9ybUdyb3VwXT1cImZvcm1cIiBjbGFzcz1cImRieC1mb3JtbHlcIj5cbiAgICAgIDxmb3JtbHktZm9ybSBbZm9ybV09XCJmb3JtXCIgW2ZpZWxkc109XCIoZmllbGRzJCB8IGFzeW5jKSA/PyBbXVwiIFttb2RlbF09XCJtb2RlbFwiPjwvZm9ybWx5LWZvcm0+XG4gICAgPC9mb3JtPlxuICBgLFxuICBwcm92aWRlcnM6IHByb3ZpZGVEYnhNdXRhYmxlRm9ybShEYnhGb3JtbHlGb3JtQ29tcG9uZW50KSxcbiAgaG9zdDoge1xuICAgIGNsYXNzOiAnZGJ4LWZvcm1seSdcbiAgfVxufSlcbmV4cG9ydCBjbGFzcyBEYnhGb3JtbHlGb3JtQ29tcG9uZW50PFQ+IGV4dGVuZHMgQWJzdHJhY3RTdWJzY3JpcHRpb25EaXJlY3RpdmUgaW1wbGVtZW50cyBEYnhGb3JtLCBEYnhGb3JtbHlDb250ZXh0RGVsZWdhdGU8VD4sIE9uSW5pdCwgT25EZXN0cm95IHtcbiAgcHJpdmF0ZSBfZmllbGRzID0gbmV3IEJlaGF2aW9yU3ViamVjdDxNYXliZTxPYnNlcnZhYmxlPEZvcm1seUZpZWxkQ29uZmlnW10+Pj4odW5kZWZpbmVkKTtcbiAgcHJpdmF0ZSBfZXZlbnRzID0gbmV3IEJlaGF2aW9yU3ViamVjdDxEYnhGb3JtRXZlbnQ+KHsgaXNDb21wbGV0ZTogZmFsc2UsIHN0YXRlOiBEYnhGb3JtU3RhdGUuSU5JVElBTElaSU5HLCBzdGF0dXM6ICdQRU5ESU5HJyB9KTtcbiAgcHJpdmF0ZSBfZGlzYWJsZWQgPSBuZXcgQmVoYXZpb3JTdWJqZWN0PEJvb2xlYW5TdHJpbmdLZXlBcnJheT4odW5kZWZpbmVkKTtcblxuICBwcml2YXRlIF9yZXNldCA9IG5ldyBCZWhhdmlvclN1YmplY3Q8RGF0ZT4obmV3IERhdGUoKSk7XG4gIHByaXZhdGUgX2ZvcmNlVXBkYXRlID0gbmV3IFN1YmplY3Q8dm9pZD4oKTtcblxuICBwcml2YXRlIF9kaXNhYmxlZFN1YiA9IG5ldyBTdWJzY3JpcHRpb25PYmplY3QoKTtcblxuICBmb3JtID0gbmV3IEZvcm1Hcm91cCh7fSk7XG4gIG1vZGVsOiBUID0ge30gYXMgVDtcbiAgb3B0aW9uczogRm9ybWx5Rm9ybU9wdGlvbnMgPSB7fTtcblxuICByZWFkb25seSBmaWVsZHMkID0gdGhpcy5fZmllbGRzLnBpcGUoc3dpdGNoTWFwTWF5YmVPYnMoKSwgZGlzdGluY3RVbnRpbENoYW5nZWQoKSwgc2hhcmVSZXBsYXkoMSkpO1xuXG4gIHJlYWRvbmx5IHN0cmVhbSQ6IE9ic2VydmFibGU8RGJ4Rm9ybUV2ZW50PiA9IHRoaXMuX3Jlc2V0LnBpcGUoXG4gICAgc3dpdGNoTWFwKChsYXN0UmVzZXRBdCkgPT5cbiAgICAgIHRoaXMuZm9ybS52YWx1ZUNoYW5nZXMucGlwZShcbiAgICAgICAgc3RhcnRXaXRoKDApLFxuICAgICAgICBkaXN0aW5jdFVudGlsQ2hhbmdlZCgpLFxuICAgICAgICB0aHJvdHRsZVRpbWUoNTAsIHVuZGVmaW5lZCwgeyBsZWFkaW5nOiB0cnVlLCB0cmFpbGluZzogdHJ1ZSB9KSxcbiAgICAgICAgc2NhbkNvdW50KC0xKSxcbiAgICAgICAgLy8gdXBkYXRlIG9uIHZhbGlkYXRpb24gY2hhbmdlcyB0b28uIERvZXMgbm90IGNvdW50IHRvd2FyZHMgY2hhbmdlcyBzaW5jZSBsYXN0IHJlc2V0LlxuICAgICAgICBzd2l0Y2hNYXAoKGNoYW5nZXNTaW5jZUxhc3RSZXNldCkgPT4gdGhpcy5mb3JtLnN0YXR1c0NoYW5nZXMucGlwZShzdGFydFdpdGgodGhpcy5mb3JtLnN0YXR1cyksIGRpc3RpbmN0VW50aWxDaGFuZ2VkKCkpLnBpcGUobWFwKCgpID0+IGNoYW5nZXNTaW5jZUxhc3RSZXNldCkpKSxcbiAgICAgICAgbWFwKChjaGFuZ2VzU2luY2VMYXN0UmVzZXRDb3VudDogbnVtYmVyKSA9PiAoe1xuICAgICAgICAgIGNoYW5nZXNTaW5jZUxhc3RSZXNldENvdW50LFxuICAgICAgICAgIGlzRm9ybVZhbGlkOiB0aGlzLmZvcm0uc3RhdHVzICE9PSAnUEVORElORycgJiYgdGhpcy5mb3JtLnZhbGlkLFxuICAgICAgICAgIGlzRm9ybURpc2FibGVkOiB0aGlzLmZvcm0uZGlzYWJsZWRcbiAgICAgICAgfSkpLFxuICAgICAgICBzY2FuKFxuICAgICAgICAgIChhY2M6IERieEZvcm1seUZvcm1TdGF0ZSwgbmV4dDogRGJ4Rm9ybWx5Rm9ybVN0YXRlKSA9PiB7XG4gICAgICAgICAgICAvLyBQYXNzIGZvcndhcmQgdmFsaWQgaWYgbmV4dCB3YXMgYSBkaXNhYmxlZCBjaGFuZ2UvY2hlY2ssIHdoaWNoIGNoYW5nZXMgYW5ndWxhciBmb3JtJ3MgaXNWYWxpZCB2YWx1ZS5cbiAgICAgICAgICAgIC8vIElmIGl0IHdhcyB2YWxpZCBwcmlvciwgdGhlbiBpdCBzaG91bGQgYmUgdmFsaWQgbm93LCB1bmxlc3Mgd2UganVzdCByZXNldCwgaW4gd2hpY2ggY2FzZSBpdCBtaWdodCBub3QgYmUgdmFsaWQuXG4gICAgICAgICAgICBjb25zdCB2YWxpZCA9IG5leHQuaXNGb3JtVmFsaWQgfHwgKG5leHQuaXNGb3JtRGlzYWJsZWQgJiYgYWNjLmlzRm9ybVZhbGlkICYmIGFjYy5jaGFuZ2VzU2luY2VMYXN0UmVzZXRDb3VudCA+IDApO1xuXG4gICAgICAgICAgICByZXR1cm4ge1xuICAgICAgICAgICAgICBjaGFuZ2VzU2luY2VMYXN0UmVzZXRDb3VudDogbmV4dC5jaGFuZ2VzU2luY2VMYXN0UmVzZXRDb3VudCxcbiAgICAgICAgICAgICAgaXNGb3JtVmFsaWQ6IHZhbGlkLFxuICAgICAgICAgICAgICBpc0Zvcm1EaXNhYmxlZDogbmV4dC5pc0Zvcm1EaXNhYmxlZFxuICAgICAgICAgICAgfTtcbiAgICAgICAgICB9LFxuICAgICAgICAgIHtcbiAgICAgICAgICAgIGNoYW5nZXNTaW5jZUxhc3RSZXNldENvdW50OiAwLFxuICAgICAgICAgICAgaXNGb3JtVmFsaWQ6IGZhbHNlLFxuICAgICAgICAgICAgaXNGb3JtRGlzYWJsZWQ6IGZhbHNlXG4gICAgICAgICAgfVxuICAgICAgICApLFxuICAgICAgICBzd2l0Y2hNYXAoKHsgY2hhbmdlc1NpbmNlTGFzdFJlc2V0Q291bnQsIGlzRm9ybVZhbGlkLCBpc0Zvcm1EaXNhYmxlZCB9KSA9PiB7XG4gICAgICAgICAgY29uc3QgbmV4dFN0YXRlID0gKCkgPT4ge1xuICAgICAgICAgICAgY29uc3QgaXNSZXNldCA9IGNoYW5nZXNTaW5jZUxhc3RSZXNldENvdW50IDw9IDE7IC8vIGZpcnN0IGVtaXNzaW9uIGFmdGVyIHJlc2V0IGlzIHRoZSBmaXJzdCB2YWx1ZS5cbiAgICAgICAgICAgIGNvbnN0IGNvbXBsZXRlID0gaXNGb3JtVmFsaWQ7XG5cbiAgICAgICAgICAgIGNvbnN0IG5leHRTdGF0ZTogRGJ4Rm9ybUV2ZW50ID0ge1xuICAgICAgICAgICAgICBpc0NvbXBsZXRlOiBjb21wbGV0ZSxcbiAgICAgICAgICAgICAgc3RhdGU6IGlzUmVzZXQgPyBEYnhGb3JtU3RhdGUuUkVTRVQgOiBEYnhGb3JtU3RhdGUuVVNFRCxcbiAgICAgICAgICAgICAgc3RhdHVzOiB0aGlzLmZvcm0uc3RhdHVzLFxuICAgICAgICAgICAgICB1bnRvdWNoZWQ6IHRoaXMuZm9ybS51bnRvdWNoZWQsXG4gICAgICAgICAgICAgIHByaXN0aW5lOiB0aGlzLmZvcm0ucHJpc3RpbmUsXG4gICAgICAgICAgICAgIGNoYW5nZXNDb3VudDogY2hhbmdlc1NpbmNlTGFzdFJlc2V0Q291bnQsXG4gICAgICAgICAgICAgIGxhc3RSZXNldEF0LFxuICAgICAgICAgICAgICBkaXNhYmxlZDogdGhpcy5kaXNhYmxlZCxcbiAgICAgICAgICAgICAgaXNEaXNhYmxlZDogaXNGb3JtRGlzYWJsZWRcbiAgICAgICAgICAgIH07XG5cbiAgICAgICAgICAgIHJldHVybiBuZXh0U3RhdGU7XG4gICAgICAgICAgfTtcblxuICAgICAgICAgIGNvbnN0IHN0YXRlID0gbmV4dFN0YXRlKCk7XG5cbiAgICAgICAgICBpZiAoaXNGb3JtVmFsaWQgJiYgdGhpcy5mb3JtLnVudG91Y2hlZCkge1xuICAgICAgICAgICAgcmV0dXJuIHRpbWVyKDE1MCwgMjAwKS5waXBlKFxuICAgICAgICAgICAgICAvLyBldmVyeSAyMDAgbXMgY2hlY2sgaWYgdGhlIGZvcm0gaXMgbm93IG1hcmtlZCB0b3VjaGVkLCB0aGVuIHB1c2ggYSBuZXcgc3RhdGVcbiAgICAgICAgICAgICAgZmlsdGVyKCgpID0+IHRoaXMuZm9ybS50b3VjaGVkKSxcbiAgICAgICAgICAgICAgbWFwKCgpID0+IG5leHRTdGF0ZSgpKSxcbiAgICAgICAgICAgICAgLy8gb25seSBwdXNoIHRoZSBuZXcgc3RhdGUgb25jZVxuICAgICAgICAgICAgICBmaXJzdCgpLFxuICAgICAgICAgICAgICAvLyBzZW5kIHRoZSBmaXJzdCB2YWx1ZSBpbW1lZGlhdGVseVxuICAgICAgICAgICAgICBzdGFydFdpdGgoc3RhdGUpXG4gICAgICAgICAgICApO1xuICAgICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICByZXR1cm4gb2Yoc3RhdGUpO1xuICAgICAgICAgIH1cbiAgICAgICAgfSlcbiAgICAgICAgLy8gdGFwTG9nKCdDaGFuZ2U6ICcpXG4gICAgICApXG4gICAgKSxcbiAgICBzaGFyZVJlcGxheSgxKVxuICApO1xuXG4gIGNvbnN0cnVjdG9yKHByaXZhdGUgcmVhZG9ubHkgY29udGV4dDogRGJ4Rm9ybWx5Q29udGV4dDxUPikge1xuICAgIHN1cGVyKCk7XG4gIH1cblxuICBuZ09uSW5pdCgpOiB2b2lkIHtcbiAgICB0aGlzLmNvbnRleHQuc2V0RGVsZWdhdGUodGhpcyk7XG5cbiAgICB0aGlzLl9kaXNhYmxlZFN1Yi5zdWJzY3JpcHRpb24gPSB0aGlzLl9kaXNhYmxlZC5waXBlKGRpc3RpbmN0VW50aWxDaGFuZ2VkKCkpLnN1YnNjcmliZSgoZGlzYWJsZWQpID0+IHtcbiAgICAgIGNvbnN0IGlzRGlzYWJsZWQgPSBCb29sZWFuU3RyaW5nS2V5QXJyYXlVdGlsaXR5SW5zdGFuY2UuaXNUcnVlKGRpc2FibGVkKTtcblxuICAgICAgaWYgKHRoaXMuZm9ybS5kaXNhYmxlZCAhPT0gaXNEaXNhYmxlZCkge1xuICAgICAgICBpZiAoaXNEaXNhYmxlZCkge1xuICAgICAgICAgIHRoaXMuZm9ybS5kaXNhYmxlKHsgZW1pdEV2ZW50OiB0cnVlIH0pO1xuICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgIHRoaXMuZm9ybS5lbmFibGUoeyBlbWl0RXZlbnQ6IHRydWUgfSk7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9KTtcbiAgfVxuXG4gIG92ZXJyaWRlIG5nT25EZXN0cm95KCk6IHZvaWQge1xuICAgIHRoaXMuY29udGV4dC5sb2NrU2V0Lm9uTmV4dFVubG9jaygoKSA9PiB7XG4gICAgICBzdXBlci5uZ09uRGVzdHJveSgpO1xuICAgICAgdGhpcy5jb250ZXh0LmNsZWFyRGVsZWdhdGUodGhpcyk7XG4gICAgICB0aGlzLl9ldmVudHMuY29tcGxldGUoKTtcbiAgICAgIHRoaXMuX2ZpZWxkcy5jb21wbGV0ZSgpO1xuICAgICAgdGhpcy5fcmVzZXQuY29tcGxldGUoKTtcbiAgICAgIHRoaXMuX2ZvcmNlVXBkYXRlLmNvbXBsZXRlKCk7XG4gICAgICB0aGlzLl9kaXNhYmxlZC5jb21wbGV0ZSgpO1xuICAgICAgdGhpcy5fZGlzYWJsZWRTdWIuZGVzdHJveSgpO1xuICAgIH0pO1xuICB9XG5cbiAgLy8gTUFSSzogRGVsZWdhdGVcbiAgaW5pdChpbml0aWFsaXplOiBEYnhGb3JtbHlJbml0aWFsaXplPFQ+KTogdm9pZCB7XG4gICAgdGhpcy5fZmllbGRzLm5leHQoaW5pdGlhbGl6ZS5maWVsZHMpO1xuICAgIHRoaXMuX2Rpc2FibGVkLm5leHQoaW5pdGlhbGl6ZS5pbml0aWFsRGlzYWJsZWQpO1xuICB9XG5cbiAgZ2V0VmFsdWUoKTogT2JzZXJ2YWJsZTxUPiB7XG4gICAgcmV0dXJuIG9mKHRoaXMuZm9ybS52YWx1ZSBhcyBUKTtcbiAgfVxuXG4gIHNldFZhbHVlKHZhbHVlOiBUKTogdm9pZCB7XG4gICAgLy8gY29uc29sZS5sb2coJ3NldCB2YWx1ZTogJywgdmFsdWUpO1xuICAgIHRoaXMubW9kZWwgPSBjbG9uZURlZXAodmFsdWUpIGFzIFQ7XG5cbiAgICBpZiAodGhpcy5vcHRpb25zLnVwZGF0ZUluaXRpYWxWYWx1ZSkge1xuICAgICAgdGhpcy5vcHRpb25zLnVwZGF0ZUluaXRpYWxWYWx1ZSgpO1xuICAgICAgdGhpcy5vcHRpb25zLnJlc2V0TW9kZWw/LigpO1xuICAgIH1cblxuICAgIC8vIFJlLW1hcmsgYXMgdW50b3VjaGVkIGFuZCBwcmlzdGluZS5cbiAgICB0aGlzLmZvcm0ubWFya0FzVW50b3VjaGVkKCk7XG4gICAgdGhpcy5mb3JtLm1hcmtBc1ByaXN0aW5lKCk7XG5cbiAgICAvLyBBZnRlciB1cGRhdGluZyB0aGUgdmFsdWUsIGlmIHRoZSBmb3JtIGlzIHN0aWxsIHVudG91Y2hlZCBtYXJrIGl0IGFzIHByaXN0aW5lIGFnYWluLlxuICAgIC8vIFNvbWV0aW1lcyB0aGUgdmFsdWVzIGdldCBtYXJrZWQgYXMgY2hhbmdlZCBhbmQgYnJlYWsgcHJpc3RpbmUgYmVmb3JlIGEgdXNlciBoYXMgdGltZSB0byBpbnRlcmFjdC5cbiAgICBzZXRUaW1lb3V0KCgpID0+IHtcbiAgICAgIGlmICh0aGlzLmZvcm0udW50b3VjaGVkKSB7XG4gICAgICAgIHRoaXMuZm9ybS5tYXJrQXNQcmlzdGluZSgpO1xuICAgICAgfVxuICAgIH0sIDUwMCk7XG5cbiAgICAvLyBwaW5nIHJlc2V0XG4gICAgdGhpcy5yZXNldEZvcm0oKTtcbiAgfVxuXG4gIHJlc2V0Rm9ybSgpOiB2b2lkIHtcbiAgICBpZiAodGhpcy5vcHRpb25zLnJlc2V0TW9kZWwpIHtcbiAgICAgIHRoaXMub3B0aW9ucy5yZXNldE1vZGVsKCk7XG4gICAgfVxuXG4gICAgdGhpcy5fcmVzZXQubmV4dChuZXcgRGF0ZSgpKTtcbiAgfVxuXG4gIGdldCBpc0Rpc2FibGVkKCk6IGJvb2xlYW4ge1xuICAgIHJldHVybiBCb29sZWFuU3RyaW5nS2V5QXJyYXlVdGlsaXR5SW5zdGFuY2UuaXNUcnVlKHRoaXMuZGlzYWJsZWQpO1xuICB9XG5cbiAgZ2V0IGRpc2FibGVkKCk6IEJvb2xlYW5TdHJpbmdLZXlBcnJheSB7XG4gICAgcmV0dXJuIHRoaXMuX2Rpc2FibGVkLnZhbHVlO1xuICB9XG5cbiAgZ2V0RGlzYWJsZWQoKTogT2JzZXJ2YWJsZTxCb29sZWFuU3RyaW5nS2V5QXJyYXk+IHtcbiAgICByZXR1cm4gdGhpcy5fZGlzYWJsZWQuYXNPYnNlcnZhYmxlKCk7XG4gIH1cblxuICBzZXREaXNhYmxlZChrZXk/OiBEYnhGb3JtRGlzYWJsZWRLZXksIGRpc2FibGVkID0gdHJ1ZSk6IHZvaWQge1xuICAgIHRoaXMuX2Rpc2FibGVkLm5leHQoQm9vbGVhblN0cmluZ0tleUFycmF5VXRpbGl0eUluc3RhbmNlLnNldCh0aGlzLmRpc2FibGVkLCBrZXkgPz8gREVGQVVMVF9GT1JNX0RJU0FCTEVEX0tFWSwgZGlzYWJsZWQpKTtcbiAgfVxuXG4gIC8vIE1BUks6IFVwZGF0ZVxuICBmb3JjZUZvcm1VcGRhdGUoKTogdm9pZCB7XG4gICAgdGhpcy5fZm9yY2VVcGRhdGUubmV4dCgpO1xuICB9XG59XG4iXX0=
@@ -8,8 +8,8 @@ import { DbxFormlyFieldsContextDirective } from './formly.context.directive';
8
8
  import * as i0 from "@angular/core";
9
9
  export class DbxFormlyModule {
10
10
  }
11
- DbxFormlyModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.2", ngImport: i0, type: DbxFormlyModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
12
- DbxFormlyModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "12.0.0", version: "13.3.2", ngImport: i0, type: DbxFormlyModule, declarations: [DbxFormlyFormComponent, DbxFormlyFieldsContextDirective], imports: [CommonModule, FormsModule, ReactiveFormsModule, FormlyModule, FormlyMatToggleModule], exports: [
11
+ DbxFormlyModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.1.2", ngImport: i0, type: DbxFormlyModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
12
+ DbxFormlyModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "14.1.2", ngImport: i0, type: DbxFormlyModule, declarations: [DbxFormlyFormComponent, DbxFormlyFieldsContextDirective], imports: [CommonModule, FormsModule, ReactiveFormsModule, FormlyModule, FormlyMatToggleModule], exports: [
13
13
  // Modules (?)
14
14
  FormsModule,
15
15
  ReactiveFormsModule,
@@ -18,11 +18,11 @@ DbxFormlyModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "12.0.0", version
18
18
  DbxFormlyFieldsContextDirective
19
19
  // Helper Modules
20
20
  ] });
21
- DbxFormlyModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "13.3.2", ngImport: i0, type: DbxFormlyModule, imports: [[CommonModule, FormsModule, ReactiveFormsModule, FormlyModule, FormlyMatToggleModule],
21
+ DbxFormlyModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "14.1.2", ngImport: i0, type: DbxFormlyModule, imports: [CommonModule, FormsModule, ReactiveFormsModule, FormlyModule, FormlyMatToggleModule,
22
22
  // Modules (?)
23
23
  FormsModule,
24
24
  ReactiveFormsModule] });
25
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.2", ngImport: i0, type: DbxFormlyModule, decorators: [{
25
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.1.2", ngImport: i0, type: DbxFormlyModule, decorators: [{
26
26
  type: NgModule,
27
27
  args: [{
28
28
  imports: [CommonModule, FormsModule, ReactiveFormsModule, FormlyModule, FormlyMatToggleModule],
@@ -38,4 +38,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.2", ngImpor
38
38
  ]
39
39
  }]
40
40
  }] });
41
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZm9ybWx5Lm1vZHVsZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3BhY2thZ2VzL2RieC1mb3JtL3NyYy9saWIvZm9ybWx5L2Zvcm1seS5tb2R1bGUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFFBQVEsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUN6QyxPQUFPLEVBQUUsV0FBVyxFQUFFLG1CQUFtQixFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFDbEUsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBQy9DLE9BQU8sRUFBRSxzQkFBc0IsRUFBRSxNQUFNLHlCQUF5QixDQUFDO0FBQ2pFLE9BQU8sRUFBRSxxQkFBcUIsRUFBRSxNQUFNLDZCQUE2QixDQUFDO0FBQ3BFLE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSxrQkFBa0IsQ0FBQztBQUNoRCxPQUFPLEVBQUUsK0JBQStCLEVBQUUsTUFBTSw0QkFBNEIsQ0FBQzs7QUFlN0UsTUFBTSxPQUFPLGVBQWU7OzRHQUFmLGVBQWU7NkdBQWYsZUFBZSxpQkFYWCxzQkFBc0IsRUFBRSwrQkFBK0IsYUFENUQsWUFBWSxFQUFFLFdBQVcsRUFBRSxtQkFBbUIsRUFBRSxZQUFZLEVBQUUscUJBQXFCO1FBRzNGLGNBQWM7UUFDZCxXQUFXO1FBQ1gsbUJBQW1CO1FBQ25CLGFBQWE7UUFDYixzQkFBc0I7UUFDdEIsK0JBQStCO1FBQy9CLGlCQUFpQjs7NkdBR1IsZUFBZSxZQVpqQixDQUFDLFlBQVksRUFBRSxXQUFXLEVBQUUsbUJBQW1CLEVBQUUsWUFBWSxFQUFFLHFCQUFxQixDQUFDO1FBRzVGLGNBQWM7UUFDZCxXQUFXO1FBQ1gsbUJBQW1COzJGQU9WLGVBQWU7a0JBYjNCLFFBQVE7bUJBQUM7b0JBQ1IsT0FBTyxFQUFFLENBQUMsWUFBWSxFQUFFLFdBQVcsRUFBRSxtQkFBbUIsRUFBRSxZQUFZLEVBQUUscUJBQXFCLENBQUM7b0JBQzlGLFlBQVksRUFBRSxDQUFDLHNCQUFzQixFQUFFLCtCQUErQixDQUFDO29CQUN2RSxPQUFPLEVBQUU7d0JBQ1AsY0FBYzt3QkFDZCxXQUFXO3dCQUNYLG1CQUFtQjt3QkFDbkIsYUFBYTt3QkFDYixzQkFBc0I7d0JBQ3RCLCtCQUErQjt3QkFDL0IsaUJBQWlCO3FCQUNsQjtpQkFDRiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IE5nTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBGb3Jtc01vZHVsZSwgUmVhY3RpdmVGb3Jtc01vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2Zvcm1zJztcbmltcG9ydCB7IENvbW1vbk1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbic7XG5pbXBvcnQgeyBEYnhGb3JtbHlGb3JtQ29tcG9uZW50IH0gZnJvbSAnLi9mb3JtbHkuZm9ybS5jb21wb25lbnQnO1xuaW1wb3J0IHsgRm9ybWx5TWF0VG9nZ2xlTW9kdWxlIH0gZnJvbSAnQG5neC1mb3JtbHkvbWF0ZXJpYWwvdG9nZ2xlJztcbmltcG9ydCB7IEZvcm1seU1vZHVsZSB9IGZyb20gJ0BuZ3gtZm9ybWx5L2NvcmUnO1xuaW1wb3J0IHsgRGJ4Rm9ybWx5RmllbGRzQ29udGV4dERpcmVjdGl2ZSB9IGZyb20gJy4vZm9ybWx5LmNvbnRleHQuZGlyZWN0aXZlJztcblxuQE5nTW9kdWxlKHtcbiAgaW1wb3J0czogW0NvbW1vbk1vZHVsZSwgRm9ybXNNb2R1bGUsIFJlYWN0aXZlRm9ybXNNb2R1bGUsIEZvcm1seU1vZHVsZSwgRm9ybWx5TWF0VG9nZ2xlTW9kdWxlXSxcbiAgZGVjbGFyYXRpb25zOiBbRGJ4Rm9ybWx5Rm9ybUNvbXBvbmVudCwgRGJ4Rm9ybWx5RmllbGRzQ29udGV4dERpcmVjdGl2ZV0sXG4gIGV4cG9ydHM6IFtcbiAgICAvLyBNb2R1bGVzICg/KVxuICAgIEZvcm1zTW9kdWxlLFxuICAgIFJlYWN0aXZlRm9ybXNNb2R1bGUsXG4gICAgLy8gRGlyZWN0aXZlc1xuICAgIERieEZvcm1seUZvcm1Db21wb25lbnQsXG4gICAgRGJ4Rm9ybWx5RmllbGRzQ29udGV4dERpcmVjdGl2ZVxuICAgIC8vIEhlbHBlciBNb2R1bGVzXG4gIF1cbn0pXG5leHBvcnQgY2xhc3MgRGJ4Rm9ybWx5TW9kdWxlIHt9XG4iXX0=
41
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZm9ybWx5Lm1vZHVsZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3BhY2thZ2VzL2RieC1mb3JtL3NyYy9saWIvZm9ybWx5L2Zvcm1seS5tb2R1bGUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFFBQVEsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUN6QyxPQUFPLEVBQUUsV0FBVyxFQUFFLG1CQUFtQixFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFDbEUsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBQy9DLE9BQU8sRUFBRSxzQkFBc0IsRUFBRSxNQUFNLHlCQUF5QixDQUFDO0FBQ2pFLE9BQU8sRUFBRSxxQkFBcUIsRUFBRSxNQUFNLDZCQUE2QixDQUFDO0FBQ3BFLE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSxrQkFBa0IsQ0FBQztBQUNoRCxPQUFPLEVBQUUsK0JBQStCLEVBQUUsTUFBTSw0QkFBNEIsQ0FBQzs7QUFlN0UsTUFBTSxPQUFPLGVBQWU7OzRHQUFmLGVBQWU7NkdBQWYsZUFBZSxpQkFYWCxzQkFBc0IsRUFBRSwrQkFBK0IsYUFENUQsWUFBWSxFQUFFLFdBQVcsRUFBRSxtQkFBbUIsRUFBRSxZQUFZLEVBQUUscUJBQXFCO1FBRzNGLGNBQWM7UUFDZCxXQUFXO1FBQ1gsbUJBQW1CO1FBQ25CLGFBQWE7UUFDYixzQkFBc0I7UUFDdEIsK0JBQStCO1FBQy9CLGlCQUFpQjs7NkdBR1IsZUFBZSxZQVpoQixZQUFZLEVBQUUsV0FBVyxFQUFFLG1CQUFtQixFQUFFLFlBQVksRUFBRSxxQkFBcUI7UUFHM0YsY0FBYztRQUNkLFdBQVc7UUFDWCxtQkFBbUI7MkZBT1YsZUFBZTtrQkFiM0IsUUFBUTttQkFBQztvQkFDUixPQUFPLEVBQUUsQ0FBQyxZQUFZLEVBQUUsV0FBVyxFQUFFLG1CQUFtQixFQUFFLFlBQVksRUFBRSxxQkFBcUIsQ0FBQztvQkFDOUYsWUFBWSxFQUFFLENBQUMsc0JBQXNCLEVBQUUsK0JBQStCLENBQUM7b0JBQ3ZFLE9BQU8sRUFBRTt3QkFDUCxjQUFjO3dCQUNkLFdBQVc7d0JBQ1gsbUJBQW1CO3dCQUNuQixhQUFhO3dCQUNiLHNCQUFzQjt3QkFDdEIsK0JBQStCO3dCQUMvQixpQkFBaUI7cUJBQ2xCO2lCQUNGIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgTmdNb2R1bGUgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IEZvcm1zTW9kdWxlLCBSZWFjdGl2ZUZvcm1zTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvZm9ybXMnO1xuaW1wb3J0IHsgQ29tbW9uTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uJztcbmltcG9ydCB7IERieEZvcm1seUZvcm1Db21wb25lbnQgfSBmcm9tICcuL2Zvcm1seS5mb3JtLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBGb3JtbHlNYXRUb2dnbGVNb2R1bGUgfSBmcm9tICdAbmd4LWZvcm1seS9tYXRlcmlhbC90b2dnbGUnO1xuaW1wb3J0IHsgRm9ybWx5TW9kdWxlIH0gZnJvbSAnQG5neC1mb3JtbHkvY29yZSc7XG5pbXBvcnQgeyBEYnhGb3JtbHlGaWVsZHNDb250ZXh0RGlyZWN0aXZlIH0gZnJvbSAnLi9mb3JtbHkuY29udGV4dC5kaXJlY3RpdmUnO1xuXG5ATmdNb2R1bGUoe1xuICBpbXBvcnRzOiBbQ29tbW9uTW9kdWxlLCBGb3Jtc01vZHVsZSwgUmVhY3RpdmVGb3Jtc01vZHVsZSwgRm9ybWx5TW9kdWxlLCBGb3JtbHlNYXRUb2dnbGVNb2R1bGVdLFxuICBkZWNsYXJhdGlvbnM6IFtEYnhGb3JtbHlGb3JtQ29tcG9uZW50LCBEYnhGb3JtbHlGaWVsZHNDb250ZXh0RGlyZWN0aXZlXSxcbiAgZXhwb3J0czogW1xuICAgIC8vIE1vZHVsZXMgKD8pXG4gICAgRm9ybXNNb2R1bGUsXG4gICAgUmVhY3RpdmVGb3Jtc01vZHVsZSxcbiAgICAvLyBEaXJlY3RpdmVzXG4gICAgRGJ4Rm9ybWx5Rm9ybUNvbXBvbmVudCxcbiAgICBEYnhGb3JtbHlGaWVsZHNDb250ZXh0RGlyZWN0aXZlXG4gICAgLy8gSGVscGVyIE1vZHVsZXNcbiAgXVxufSlcbmV4cG9ydCBjbGFzcyBEYnhGb3JtbHlNb2R1bGUge31cbiJdfQ==
@@ -4,10 +4,10 @@ import { DbxFormSpacerComponent } from './form.spacer.component';
4
4
  import * as i0 from "@angular/core";
5
5
  export class DbxFormLayoutModule {
6
6
  }
7
- DbxFormLayoutModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.2", ngImport: i0, type: DbxFormLayoutModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
8
- DbxFormLayoutModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "12.0.0", version: "13.3.2", ngImport: i0, type: DbxFormLayoutModule, declarations: [DbxFormSpacerComponent], imports: [CommonModule], exports: [DbxFormSpacerComponent] });
9
- DbxFormLayoutModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "13.3.2", ngImport: i0, type: DbxFormLayoutModule, imports: [[CommonModule]] });
10
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.2", ngImport: i0, type: DbxFormLayoutModule, decorators: [{
7
+ DbxFormLayoutModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.1.2", ngImport: i0, type: DbxFormLayoutModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
8
+ DbxFormLayoutModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "14.1.2", ngImport: i0, type: DbxFormLayoutModule, declarations: [DbxFormSpacerComponent], imports: [CommonModule], exports: [DbxFormSpacerComponent] });
9
+ DbxFormLayoutModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "14.1.2", ngImport: i0, type: DbxFormLayoutModule, imports: [CommonModule] });
10
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.1.2", ngImport: i0, type: DbxFormLayoutModule, decorators: [{
11
11
  type: NgModule,
12
12
  args: [{
13
13
  imports: [CommonModule],
@@ -15,4 +15,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.2", ngImpor
15
15
  exports: [DbxFormSpacerComponent]
16
16
  }]
17
17
  }] });
18
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZm9ybS5sYXlvdXQubW9kdWxlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcGFja2FnZXMvZGJ4LWZvcm0vc3JjL2xpYi9sYXlvdXQvZm9ybS5sYXlvdXQubW9kdWxlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxRQUFRLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDekMsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBQy9DLE9BQU8sRUFBRSxzQkFBc0IsRUFBRSxNQUFNLHlCQUF5QixDQUFDOztBQU9qRSxNQUFNLE9BQU8sbUJBQW1COztnSEFBbkIsbUJBQW1CO2lIQUFuQixtQkFBbUIsaUJBSGYsc0JBQXNCLGFBRDNCLFlBQVksYUFFWixzQkFBc0I7aUhBRXJCLG1CQUFtQixZQUpyQixDQUFDLFlBQVksQ0FBQzsyRkFJWixtQkFBbUI7a0JBTC9CLFFBQVE7bUJBQUM7b0JBQ1IsT0FBTyxFQUFFLENBQUMsWUFBWSxDQUFDO29CQUN2QixZQUFZLEVBQUUsQ0FBQyxzQkFBc0IsQ0FBQztvQkFDdEMsT0FBTyxFQUFFLENBQUMsc0JBQXNCLENBQUM7aUJBQ2xDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgTmdNb2R1bGUgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IENvbW1vbk1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbic7XG5pbXBvcnQgeyBEYnhGb3JtU3BhY2VyQ29tcG9uZW50IH0gZnJvbSAnLi9mb3JtLnNwYWNlci5jb21wb25lbnQnO1xuXG5ATmdNb2R1bGUoe1xuICBpbXBvcnRzOiBbQ29tbW9uTW9kdWxlXSxcbiAgZGVjbGFyYXRpb25zOiBbRGJ4Rm9ybVNwYWNlckNvbXBvbmVudF0sXG4gIGV4cG9ydHM6IFtEYnhGb3JtU3BhY2VyQ29tcG9uZW50XVxufSlcbmV4cG9ydCBjbGFzcyBEYnhGb3JtTGF5b3V0TW9kdWxlIHt9XG4iXX0=
18
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZm9ybS5sYXlvdXQubW9kdWxlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcGFja2FnZXMvZGJ4LWZvcm0vc3JjL2xpYi9sYXlvdXQvZm9ybS5sYXlvdXQubW9kdWxlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxRQUFRLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDekMsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBQy9DLE9BQU8sRUFBRSxzQkFBc0IsRUFBRSxNQUFNLHlCQUF5QixDQUFDOztBQU9qRSxNQUFNLE9BQU8sbUJBQW1COztnSEFBbkIsbUJBQW1CO2lIQUFuQixtQkFBbUIsaUJBSGYsc0JBQXNCLGFBRDNCLFlBQVksYUFFWixzQkFBc0I7aUhBRXJCLG1CQUFtQixZQUpwQixZQUFZOzJGQUlYLG1CQUFtQjtrQkFML0IsUUFBUTttQkFBQztvQkFDUixPQUFPLEVBQUUsQ0FBQyxZQUFZLENBQUM7b0JBQ3ZCLFlBQVksRUFBRSxDQUFDLHNCQUFzQixDQUFDO29CQUN0QyxPQUFPLEVBQUUsQ0FBQyxzQkFBc0IsQ0FBQztpQkFDbEMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBOZ01vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgQ29tbW9uTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uJztcbmltcG9ydCB7IERieEZvcm1TcGFjZXJDb21wb25lbnQgfSBmcm9tICcuL2Zvcm0uc3BhY2VyLmNvbXBvbmVudCc7XG5cbkBOZ01vZHVsZSh7XG4gIGltcG9ydHM6IFtDb21tb25Nb2R1bGVdLFxuICBkZWNsYXJhdGlvbnM6IFtEYnhGb3JtU3BhY2VyQ29tcG9uZW50XSxcbiAgZXhwb3J0czogW0RieEZvcm1TcGFjZXJDb21wb25lbnRdXG59KVxuZXhwb3J0IGNsYXNzIERieEZvcm1MYXlvdXRNb2R1bGUge31cbiJdfQ==
@@ -5,11 +5,11 @@ import * as i0 from "@angular/core";
5
5
  */
6
6
  export class DbxFormSpacerComponent {
7
7
  }
8
- DbxFormSpacerComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.2", ngImport: i0, type: DbxFormSpacerComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
9
- DbxFormSpacerComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.3.2", type: DbxFormSpacerComponent, selector: "dbx-form-spacer", ngImport: i0, template: `
8
+ DbxFormSpacerComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.1.2", ngImport: i0, type: DbxFormSpacerComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
9
+ DbxFormSpacerComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.1.2", type: DbxFormSpacerComponent, selector: "dbx-form-spacer", ngImport: i0, template: `
10
10
  <div class="dbx-form-spacer"></div>
11
11
  `, isInline: true });
12
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.2", ngImport: i0, type: DbxFormSpacerComponent, decorators: [{
12
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.1.2", ngImport: i0, type: DbxFormSpacerComponent, decorators: [{
13
13
  type: Component,
14
14
  args: [{
15
15
  selector: 'dbx-form-spacer',
@@ -3,9 +3,4 @@ import { WEBSITE_DOMAIN_NAME_REGEX } from '@dereekb/util';
3
3
  export function isDomain() {
4
4
  return Validators.pattern(WEBSITE_DOMAIN_NAME_REGEX);
5
5
  }
6
- // MARK: Compat
7
- /**
8
- * @deprecated use WEBSITE_DOMAIN_NAME_REGEX from @dereekb/util instead.
9
- */
10
- export const DOMAIN_NAME_REGEX = WEBSITE_DOMAIN_NAME_REGEX;
11
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZW1haWwuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wYWNrYWdlcy9kYngtZm9ybS9zcmMvbGliL3ZhbGlkYXRvci9lbWFpbC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsVUFBVSxFQUFlLE1BQU0sZ0JBQWdCLENBQUM7QUFDekQsT0FBTyxFQUFFLHlCQUF5QixFQUFFLE1BQU0sZUFBZSxDQUFDO0FBRTFELE1BQU0sVUFBVSxRQUFRO0lBQ3RCLE9BQU8sVUFBVSxDQUFDLE9BQU8sQ0FBQyx5QkFBeUIsQ0FBQyxDQUFDO0FBQ3ZELENBQUM7QUFFRCxlQUFlO0FBQ2Y7O0dBRUc7QUFDSCxNQUFNLENBQUMsTUFBTSxpQkFBaUIsR0FBRyx5QkFBeUIsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IFZhbGlkYXRvcnMsIFZhbGlkYXRvckZuIH0gZnJvbSAnQGFuZ3VsYXIvZm9ybXMnO1xuaW1wb3J0IHsgV0VCU0lURV9ET01BSU5fTkFNRV9SRUdFWCB9IGZyb20gJ0BkZXJlZWtiL3V0aWwnO1xuXG5leHBvcnQgZnVuY3Rpb24gaXNEb21haW4oKTogVmFsaWRhdG9yRm4ge1xuICByZXR1cm4gVmFsaWRhdG9ycy5wYXR0ZXJuKFdFQlNJVEVfRE9NQUlOX05BTUVfUkVHRVgpO1xufVxuXG4vLyBNQVJLOiBDb21wYXRcbi8qKlxuICogQGRlcHJlY2F0ZWQgdXNlIFdFQlNJVEVfRE9NQUlOX05BTUVfUkVHRVggZnJvbSBAZGVyZWVrYi91dGlsIGluc3RlYWQuXG4gKi9cbmV4cG9ydCBjb25zdCBET01BSU5fTkFNRV9SRUdFWCA9IFdFQlNJVEVfRE9NQUlOX05BTUVfUkVHRVg7XG4iXX0=
6
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZW1haWwuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wYWNrYWdlcy9kYngtZm9ybS9zcmMvbGliL3ZhbGlkYXRvci9lbWFpbC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsVUFBVSxFQUFlLE1BQU0sZ0JBQWdCLENBQUM7QUFDekQsT0FBTyxFQUFFLHlCQUF5QixFQUFFLE1BQU0sZUFBZSxDQUFDO0FBRTFELE1BQU0sVUFBVSxRQUFRO0lBQ3RCLE9BQU8sVUFBVSxDQUFDLE9BQU8sQ0FBQyx5QkFBeUIsQ0FBQyxDQUFDO0FBQ3ZELENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBWYWxpZGF0b3JzLCBWYWxpZGF0b3JGbiB9IGZyb20gJ0Bhbmd1bGFyL2Zvcm1zJztcbmltcG9ydCB7IFdFQlNJVEVfRE9NQUlOX05BTUVfUkVHRVggfSBmcm9tICdAZGVyZWVrYi91dGlsJztcblxuZXhwb3J0IGZ1bmN0aW9uIGlzRG9tYWluKCk6IFZhbGlkYXRvckZuIHtcbiAgcmV0dXJuIFZhbGlkYXRvcnMucGF0dGVybihXRUJTSVRFX0RPTUFJTl9OQU1FX1JFR0VYKTtcbn1cbiJdfQ==