ngx-material-entity 16.0.5 → 16.0.7

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 (209) hide show
  1. package/README.md +4 -4
  2. package/classes/base.builder.d.ts +0 -4
  3. package/classes/entity.model.d.ts +7 -0
  4. package/components/confirm-dialog/confirm-dialog-data.d.ts +0 -3
  5. package/components/confirm-dialog/confirm-dialog.component.d.ts +6 -0
  6. package/components/create-page/create-data.route.d.ts +16 -0
  7. package/components/create-page/create-page.component.d.ts +147 -0
  8. package/components/create-page/page-create-data.builder.d.ts +18 -0
  9. package/components/edit-page/edit-data.route.d.ts +3 -0
  10. package/components/edit-page/edit-page.component.d.ts +34 -9
  11. package/components/input/array/array-string-autocomplete-chips/array-string-autocomplete-chips.component.d.ts +3 -3
  12. package/components/input/array/array-string-chips-input/array-string-chips-input.component.d.ts +0 -2
  13. package/components/input/array/array-table.class.d.ts +0 -1
  14. package/components/input/base-input.component.d.ts +5 -2
  15. package/components/input/boolean/boolean-checkbox-input/boolean-checkbox-input.component.d.ts +0 -1
  16. package/components/input/boolean/boolean-toggle-input/boolean-toggle-input.component.d.ts +0 -1
  17. package/components/input/date/date-range-input/date-range-input.component.d.ts +2 -6
  18. package/components/input/date/date-time-input/date-time-input.component.d.ts +0 -1
  19. package/components/input/file/file-input/file-input.component.d.ts +1 -0
  20. package/components/input/input.component.d.ts +160 -38
  21. package/components/input/input.module.d.ts +48 -47
  22. package/components/input/number/number-input/number-input.component.d.ts +1 -1
  23. package/components/input/relations/references-many-input/references-many-input.component.d.ts +0 -1
  24. package/components/input/string/string-autocomplete-input/string-autocomplete-input.component.d.ts +0 -1
  25. package/components/input/string/string-input/string-input.component.d.ts +1 -1
  26. package/components/input/string/string-textbox-input/string-textbox-input.component.d.ts +1 -1
  27. package/components/table/create-dialog/{create-dialog-data.builder.d.ts → create-data.builder.d.ts} +7 -7
  28. package/components/table/create-dialog/create-entity-dialog-data.builder.d.ts +11 -13
  29. package/components/table/create-dialog/create-entity-dialog-data.d.ts +7 -9
  30. package/components/table/create-dialog/create-entity-dialog.component.d.ts +26 -5
  31. package/components/table/default.actions.d.ts +0 -4
  32. package/components/table/display-column-value/base-display-column-value.component.d.ts +3 -0
  33. package/components/table/display-column-value/display-column-value.component.d.ts +9 -0
  34. package/components/table/edit-dialog/edit-data.builder.d.ts +3 -3
  35. package/components/table/edit-dialog/edit-entity-data.d.ts +2 -4
  36. package/components/table/edit-dialog/edit-entity-dialog.component.d.ts +34 -4
  37. package/components/table/edit-dialog/edit-entity.builder.d.ts +3 -5
  38. package/components/table/table-data.builder.d.ts +6 -8
  39. package/components/table/table-data.d.ts +8 -18
  40. package/components/table/table.component.d.ts +35 -9
  41. package/components/tooltip/tooltip.component.d.ts +3 -0
  42. package/decorators/array/array-decorator-internal.data.d.ts +3 -2
  43. package/decorators/array/array-decorator.data.d.ts +6 -17
  44. package/decorators/array/array.decorator.d.ts +0 -1
  45. package/decorators/base/base-property.decorator.d.ts +0 -1
  46. package/decorators/base/property-decorator-internal.data.d.ts +0 -2
  47. package/decorators/base/property-decorator.data.d.ts +0 -10
  48. package/decorators/boolean/boolean-decorator.data.d.ts +0 -2
  49. package/decorators/boolean/boolean.decorator.d.ts +0 -1
  50. package/decorators/custom/custom-decorator.data.d.ts +0 -2
  51. package/decorators/custom/custom.decorator.d.ts +0 -1
  52. package/decorators/date/date-decorator.data.d.ts +0 -3
  53. package/decorators/date/date.decorator.d.ts +0 -1
  54. package/decorators/file/file-decorator.data.d.ts +0 -6
  55. package/decorators/file/file.decorator.d.ts +0 -1
  56. package/decorators/has-many/has-many-decorator-internal.data.d.ts +2 -4
  57. package/decorators/has-many/has-many-decorator.data.d.ts +2 -6
  58. package/decorators/has-many/has-many.decorator.d.ts +0 -1
  59. package/decorators/number/number-decorator-internal.data.d.ts +0 -1
  60. package/decorators/number/number.decorator.d.ts +0 -1
  61. package/decorators/object/object.decorator.d.ts +0 -1
  62. package/decorators/references-many/references-many-decorator-internal.data.d.ts +0 -1
  63. package/decorators/references-many/references-many-decorator.data.d.ts +0 -5
  64. package/decorators/references-many/references-many.decorator.d.ts +0 -1
  65. package/decorators/references-one/references-one.decorator.d.ts +0 -1
  66. package/decorators/string/string-decorator-internal.data.d.ts +1 -0
  67. package/decorators/string/string-decorator.data.d.ts +4 -2
  68. package/decorators/string/string.decorator.d.ts +0 -1
  69. package/default-global-configuration-values.d.ts +12 -0
  70. package/directives/drag-drop.directive.d.ts +0 -3
  71. package/directives/included-in.directive.d.ts +14 -0
  72. package/directives/number.directive.d.ts +0 -1
  73. package/encapsulation/js-2-xml.utilities.d.ts +0 -1
  74. package/encapsulation/jszip.utilities.d.ts +0 -1
  75. package/encapsulation/lodash.utilities.d.ts +2 -11
  76. package/encapsulation/reflect.utilities.d.ts +0 -7
  77. package/encapsulation/uuid.utilities.d.ts +0 -1
  78. package/esm2022/classes/base.builder.mjs +3 -6
  79. package/esm2022/classes/entity.model.mjs +1 -1
  80. package/esm2022/components/confirm-dialog/confirm-dialog-data.builder.mjs +1 -3
  81. package/esm2022/components/confirm-dialog/confirm-dialog-data.mjs +1 -1
  82. package/esm2022/components/confirm-dialog/confirm-dialog.component.mjs +9 -3
  83. package/esm2022/components/create-page/create-data.route.mjs +11 -0
  84. package/esm2022/components/create-page/create-page.component.mjs +275 -0
  85. package/esm2022/components/create-page/page-create-data.builder.mjs +30 -0
  86. package/esm2022/components/edit-page/edit-data.route.mjs +4 -1
  87. package/esm2022/components/edit-page/edit-page.component.mjs +43 -18
  88. package/esm2022/components/edit-page/page-edit-data.builder.mjs +3 -3
  89. package/esm2022/components/input/array/array-date-input/array-date-input.component.mjs +11 -10
  90. package/esm2022/components/input/array/array-date-range-input/array-date-range-input.component.mjs +10 -9
  91. package/esm2022/components/input/array/array-date-time-input/array-date-time-input.component.mjs +13 -12
  92. package/esm2022/components/input/array/array-string-autocomplete-chips/array-string-autocomplete-chips.component.mjs +17 -13
  93. package/esm2022/components/input/array/array-string-chips-input/array-string-chips-input.component.mjs +8 -9
  94. package/esm2022/components/input/array/array-table.class.mjs +4 -6
  95. package/esm2022/components/input/base-input.component.mjs +8 -4
  96. package/esm2022/components/input/boolean/boolean-checkbox-input/boolean-checkbox-input.component.mjs +8 -11
  97. package/esm2022/components/input/boolean/boolean-dropdown-input/boolean-dropdown-input.component.mjs +8 -7
  98. package/esm2022/components/input/boolean/boolean-toggle-input/boolean-toggle-input.component.mjs +6 -9
  99. package/esm2022/components/input/custom/custom.component.mjs +2 -1
  100. package/esm2022/components/input/date/date-input/date-input.component.mjs +8 -7
  101. package/esm2022/components/input/date/date-range-input/date-range-input.component.mjs +38 -43
  102. package/esm2022/components/input/date/date-time-input/date-time-input.component.mjs +10 -10
  103. package/esm2022/components/input/file/file-default-input/file-default-input.component.mjs +4 -3
  104. package/esm2022/components/input/file/file-image-input/file-image-input.component.mjs +6 -5
  105. package/esm2022/components/input/file/file-input/file-input.component.mjs +9 -6
  106. package/esm2022/components/input/input.component.mjs +225 -91
  107. package/esm2022/components/input/input.module.mjs +84 -81
  108. package/esm2022/components/input/number/number-dropdown-input/number-dropdown-input.component.mjs +8 -7
  109. package/esm2022/components/input/number/number-input/number-input.component.mjs +6 -5
  110. package/esm2022/components/input/number/number-slider-input/number-slider-input.component.mjs +6 -5
  111. package/esm2022/components/input/relations/references-many-input/references-many-input.component.mjs +24 -19
  112. package/esm2022/components/input/string/string-autocomplete-input/string-autocomplete-input.component.mjs +12 -8
  113. package/esm2022/components/input/string/string-dropdown-input/string-dropdown-input.component.mjs +8 -7
  114. package/esm2022/components/input/string/string-input/string-input.component.mjs +6 -5
  115. package/esm2022/components/input/string/string-password-input/string-password-input.component.mjs +8 -7
  116. package/esm2022/components/input/string/string-textbox-input/string-textbox-input.component.mjs +7 -6
  117. package/esm2022/components/table/create-dialog/create-data.builder.mjs +44 -0
  118. package/esm2022/components/table/create-dialog/create-entity-dialog-data.builder.mjs +8 -9
  119. package/esm2022/components/table/create-dialog/create-entity-dialog-data.mjs +1 -1
  120. package/esm2022/components/table/create-dialog/create-entity-dialog.component.mjs +30 -9
  121. package/esm2022/components/table/default.actions.mjs +1 -5
  122. package/esm2022/components/table/display-column-value/base-display-column-value.component.mjs +5 -1
  123. package/esm2022/components/table/display-column-value/display-column-value.component.mjs +10 -2
  124. package/esm2022/components/table/edit-dialog/edit-data.builder.mjs +3 -3
  125. package/esm2022/components/table/edit-dialog/edit-entity-data.mjs +1 -1
  126. package/esm2022/components/table/edit-dialog/edit-entity-dialog.component.mjs +37 -7
  127. package/esm2022/components/table/edit-dialog/edit-entity.builder.mjs +3 -3
  128. package/esm2022/components/table/table-data.builder.mjs +12 -12
  129. package/esm2022/components/table/table-data.mjs +1 -1
  130. package/esm2022/components/table/table.component.mjs +63 -34
  131. package/esm2022/components/tooltip/tooltip.component.mjs +6 -3
  132. package/esm2022/decorators/array/array-decorator-internal.data.mjs +4 -2
  133. package/esm2022/decorators/array/array-decorator.data.mjs +1 -2
  134. package/esm2022/decorators/array/array.decorator.mjs +2 -3
  135. package/esm2022/decorators/base/base-property.decorator.mjs +1 -2
  136. package/esm2022/decorators/base/decorator-types.enum.mjs +1 -1
  137. package/esm2022/decorators/base/property-decorator-internal.data.mjs +1 -3
  138. package/esm2022/decorators/base/property-decorator.data.mjs +5 -11
  139. package/esm2022/decorators/boolean/boolean-decorator.data.mjs +1 -1
  140. package/esm2022/decorators/boolean/boolean.decorator.mjs +1 -2
  141. package/esm2022/decorators/custom/custom-decorator-internal.data.mjs +1 -2
  142. package/esm2022/decorators/custom/custom-decorator.data.mjs +1 -1
  143. package/esm2022/decorators/custom/custom.decorator.mjs +1 -2
  144. package/esm2022/decorators/date/date-decorator-internal.data.mjs +2 -2
  145. package/esm2022/decorators/date/date-decorator.data.mjs +1 -1
  146. package/esm2022/decorators/date/date.decorator.mjs +2 -3
  147. package/esm2022/decorators/file/file-decorator-internal.data.mjs +1 -4
  148. package/esm2022/decorators/file/file-decorator.data.mjs +1 -6
  149. package/esm2022/decorators/file/file.decorator.mjs +2 -3
  150. package/esm2022/decorators/has-many/has-many-decorator-internal.data.mjs +1 -2
  151. package/esm2022/decorators/has-many/has-many-decorator.data.mjs +1 -1
  152. package/esm2022/decorators/has-many/has-many.decorator.mjs +1 -2
  153. package/esm2022/decorators/number/number-decorator-internal.data.mjs +4 -5
  154. package/esm2022/decorators/number/number-decorator.data.mjs +1 -1
  155. package/esm2022/decorators/number/number.decorator.mjs +1 -2
  156. package/esm2022/decorators/object/object.decorator.mjs +1 -2
  157. package/esm2022/decorators/references-many/references-many-decorator-internal.data.mjs +1 -2
  158. package/esm2022/decorators/references-many/references-many-decorator.data.mjs +1 -1
  159. package/esm2022/decorators/references-many/references-many.decorator.mjs +1 -2
  160. package/esm2022/decorators/references-one/references-one.decorator.mjs +1 -2
  161. package/esm2022/decorators/string/string-decorator-internal.data.mjs +7 -4
  162. package/esm2022/decorators/string/string-decorator.data.mjs +1 -1
  163. package/esm2022/decorators/string/string.decorator.mjs +1 -2
  164. package/esm2022/default-global-configuration-values.mjs +16 -1
  165. package/esm2022/directives/drag-drop.directive.mjs +1 -4
  166. package/esm2022/directives/included-in.directive.mjs +33 -0
  167. package/esm2022/directives/number.directive.mjs +1 -2
  168. package/esm2022/directives/password-match.directive.mjs +2 -2
  169. package/esm2022/encapsulation/js-2-xml.utilities.mjs +1 -2
  170. package/esm2022/encapsulation/jszip.utilities.mjs +1 -2
  171. package/esm2022/encapsulation/lodash.utilities.mjs +12 -19
  172. package/esm2022/encapsulation/reflect.utilities.mjs +1 -8
  173. package/esm2022/encapsulation/uuid.utilities.mjs +1 -2
  174. package/esm2022/functions/default-false.function.mjs +1 -2
  175. package/esm2022/functions/default-true.function.mjs +1 -2
  176. package/esm2022/functions/get-config-value.function.mjs +1 -2
  177. package/esm2022/functions/get-validation-error-message.function.mjs +13 -7
  178. package/esm2022/functions/get-validation-errors-tooltip-content.function.ts.mjs +6 -4
  179. package/esm2022/functions/is-async-function.function.mjs +1 -2
  180. package/esm2022/global-configuration-values.mjs +5 -2
  181. package/esm2022/mocks/placeholder-data.png.mjs +3 -3
  182. package/esm2022/public-api.mjs +3 -1
  183. package/esm2022/services/entity.service.mjs +15 -21
  184. package/esm2022/services/unsaved-changes.guard.mjs +7 -2
  185. package/esm2022/utilities/date.utilities.mjs +3 -9
  186. package/esm2022/utilities/entity.utilities.mjs +82 -79
  187. package/esm2022/utilities/file.utilities.mjs +1 -10
  188. package/esm2022/utilities/selection.utilities.mjs +4 -7
  189. package/esm2022/utilities/validation.utilities.mjs +72 -36
  190. package/fesm2022/ngx-material-entity.mjs +1340 -752
  191. package/fesm2022/ngx-material-entity.mjs.map +1 -1
  192. package/functions/default-false.function.d.ts +0 -1
  193. package/functions/default-true.function.d.ts +0 -1
  194. package/functions/get-config-value.function.d.ts +0 -1
  195. package/functions/get-validation-error-message.function.d.ts +3 -0
  196. package/functions/get-validation-errors-tooltip-content.function.ts.d.ts +4 -2
  197. package/functions/is-async-function.function.d.ts +0 -1
  198. package/global-configuration-values.d.ts +9 -34
  199. package/mocks/placeholder-data.png.d.ts +1 -1
  200. package/package.json +2 -1
  201. package/public-api.d.ts +2 -0
  202. package/services/entity.service.d.ts +11 -16
  203. package/services/unsaved-changes.guard.d.ts +13 -1
  204. package/utilities/date.utilities.d.ts +0 -6
  205. package/utilities/entity.utilities.d.ts +10 -36
  206. package/utilities/file.utilities.d.ts +0 -9
  207. package/utilities/selection.utilities.d.ts +0 -3
  208. package/utilities/validation.utilities.d.ts +1 -3
  209. package/esm2022/components/table/create-dialog/create-dialog-data.builder.mjs +0 -44
@@ -2,16 +2,17 @@
2
2
  import { Component } from '@angular/core';
3
3
  import { NgxMatEntityBaseInputComponent } from '../../base-input.component';
4
4
  import * as i0 from "@angular/core";
5
- import * as i1 from "@angular/material/input";
5
+ import * as i1 from "@angular/forms";
6
6
  import * as i2 from "@angular/material/form-field";
7
- import * as i3 from "@angular/cdk/text-field";
8
- import * as i4 from "@angular/forms";
7
+ import * as i3 from "@angular/material/input";
8
+ import * as i4 from "@angular/cdk/text-field";
9
+ // eslint-disable-next-line angular/prefer-standalone-component
9
10
  export class StringTextboxInputComponent extends NgxMatEntityBaseInputComponent {
10
11
  static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.0", ngImport: i0, type: StringTextboxInputComponent, deps: null, target: i0.ɵɵFactoryTarget.Component });
11
- static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.0", type: StringTextboxInputComponent, selector: "string-textbox-input", usesInheritance: true, ngImport: i0, template: "<mat-form-field>\n <mat-label>{{metadata.displayName}}</mat-label>\n <textarea\n matInput\n [(ngModel)]=\"propertyValue\"\n [name]=\"key.toString() + uuid\"\n #model=\"ngModel\"\n cdkTextareaAutosize\n cdkAutosizeMinRows=\"10\"\n [required]=\"metadata.required(entity)\"\n [minlength]=\"metadata.minLength ?? null\"\n [maxlength]=\"metadata.maxLength ?? null\"\n (ngModelChange)=\"emitChange()\"\n [disabled]=\"isReadOnly\"\n >\n </textarea>\n <mat-error>{{getValidationErrorMessage(model)}}</mat-error>\n</mat-form-field>", styles: ["mat-form-field{width:100%}\n"], dependencies: [{ kind: "directive", type: i1.MatInput, selector: "input[matInput], textarea[matInput], select[matNativeControl], input[matNativeControl], textarea[matNativeControl]", inputs: ["disabled", "id", "placeholder", "name", "required", "type", "errorStateMatcher", "aria-describedby", "value", "readonly"], exportAs: ["matInput"] }, { kind: "component", type: i2.MatFormField, selector: "mat-form-field", inputs: ["hideRequiredMarker", "color", "floatLabel", "appearance", "subscriptSizing", "hintLabel"], exportAs: ["matFormField"] }, { kind: "directive", type: i2.MatLabel, selector: "mat-label" }, { kind: "directive", type: i2.MatError, selector: "mat-error, [matError]", inputs: ["id"] }, { kind: "directive", type: i3.CdkTextareaAutosize, selector: "textarea[cdkTextareaAutosize]", inputs: ["cdkAutosizeMinRows", "cdkAutosizeMaxRows", "cdkTextareaAutosize", "placeholder"], exportAs: ["cdkTextareaAutosize"] }, { kind: "directive", type: i4.DefaultValueAccessor, selector: "input:not([type=checkbox])[formControlName],textarea[formControlName],input:not([type=checkbox])[formControl],textarea[formControl],input:not([type=checkbox])[ngModel],textarea[ngModel],[ngDefaultControl]" }, { kind: "directive", type: i4.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i4.RequiredValidator, selector: ":not([type=checkbox])[required][formControlName],:not([type=checkbox])[required][formControl],:not([type=checkbox])[required][ngModel]", inputs: ["required"] }, { kind: "directive", type: i4.MinLengthValidator, selector: "[minlength][formControlName],[minlength][formControl],[minlength][ngModel]", inputs: ["minlength"] }, { kind: "directive", type: i4.MaxLengthValidator, selector: "[maxlength][formControlName],[maxlength][formControl],[maxlength][ngModel]", inputs: ["maxlength"] }, { kind: "directive", type: i4.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }] });
12
+ static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.0", type: StringTextboxInputComponent, selector: "string-textbox-input", usesInheritance: true, ngImport: i0, template: "<!-- eslint-disable angular/no-call-expression -->\n<mat-form-field>\n <mat-label>{{metadata.displayName}}</mat-label>\n <textarea\n #model=\"ngModel\"\n matInput\n cdkTextareaAutosize\n cdkAutosizeMinRows=\"10\"\n [name]=\"name\"\n [required]=\"metadata.required(entity)\"\n [minlength]=\"metadata.minLength ?? null\"\n [maxlength]=\"metadata.maxLength ?? null\"\n [disabled]=\"isReadOnly\"\n [(ngModel)]=\"propertyValue\"\n (ngModelChange)=\"emitChange()\"\n >\n </textarea>\n <mat-error>{{getValidationErrorMessage(model)}}</mat-error>\n</mat-form-field>", styles: ["mat-form-field{width:100%}\n"], dependencies: [{ kind: "directive", type: i1.DefaultValueAccessor, selector: "input:not([type=checkbox])[formControlName],textarea[formControlName],input:not([type=checkbox])[formControl],textarea[formControl],input:not([type=checkbox])[ngModel],textarea[ngModel],[ngDefaultControl]" }, { kind: "directive", type: i1.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i1.RequiredValidator, selector: ":not([type=checkbox])[required][formControlName],:not([type=checkbox])[required][formControl],:not([type=checkbox])[required][ngModel]", inputs: ["required"] }, { kind: "directive", type: i1.MinLengthValidator, selector: "[minlength][formControlName],[minlength][formControl],[minlength][ngModel]", inputs: ["minlength"] }, { kind: "directive", type: i1.MaxLengthValidator, selector: "[maxlength][formControlName],[maxlength][formControl],[maxlength][ngModel]", inputs: ["maxlength"] }, { kind: "directive", type: i1.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { kind: "component", type: i2.MatFormField, selector: "mat-form-field", inputs: ["hideRequiredMarker", "color", "floatLabel", "appearance", "subscriptSizing", "hintLabel"], exportAs: ["matFormField"] }, { kind: "directive", type: i2.MatLabel, selector: "mat-label" }, { kind: "directive", type: i2.MatError, selector: "mat-error, [matError]", inputs: ["id"] }, { kind: "directive", type: i3.MatInput, selector: "input[matInput], textarea[matInput], select[matNativeControl], input[matNativeControl], textarea[matNativeControl]", inputs: ["disabled", "id", "placeholder", "name", "required", "type", "errorStateMatcher", "aria-describedby", "value", "readonly"], exportAs: ["matInput"] }, { kind: "directive", type: i4.CdkTextareaAutosize, selector: "textarea[cdkTextareaAutosize]", inputs: ["cdkAutosizeMinRows", "cdkAutosizeMaxRows", "cdkTextareaAutosize", "placeholder"], exportAs: ["cdkTextareaAutosize"] }] });
12
13
  }
13
14
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.0", ngImport: i0, type: StringTextboxInputComponent, decorators: [{
14
15
  type: Component,
15
- args: [{ selector: 'string-textbox-input', template: "<mat-form-field>\n <mat-label>{{metadata.displayName}}</mat-label>\n <textarea\n matInput\n [(ngModel)]=\"propertyValue\"\n [name]=\"key.toString() + uuid\"\n #model=\"ngModel\"\n cdkTextareaAutosize\n cdkAutosizeMinRows=\"10\"\n [required]=\"metadata.required(entity)\"\n [minlength]=\"metadata.minLength ?? null\"\n [maxlength]=\"metadata.maxLength ?? null\"\n (ngModelChange)=\"emitChange()\"\n [disabled]=\"isReadOnly\"\n >\n </textarea>\n <mat-error>{{getValidationErrorMessage(model)}}</mat-error>\n</mat-form-field>", styles: ["mat-form-field{width:100%}\n"] }]
16
+ args: [{ selector: 'string-textbox-input', template: "<!-- eslint-disable angular/no-call-expression -->\n<mat-form-field>\n <mat-label>{{metadata.displayName}}</mat-label>\n <textarea\n #model=\"ngModel\"\n matInput\n cdkTextareaAutosize\n cdkAutosizeMinRows=\"10\"\n [name]=\"name\"\n [required]=\"metadata.required(entity)\"\n [minlength]=\"metadata.minLength ?? null\"\n [maxlength]=\"metadata.maxLength ?? null\"\n [disabled]=\"isReadOnly\"\n [(ngModel)]=\"propertyValue\"\n (ngModelChange)=\"emitChange()\"\n >\n </textarea>\n <mat-error>{{getValidationErrorMessage(model)}}</mat-error>\n</mat-form-field>", styles: ["mat-form-field{width:100%}\n"] }]
16
17
  }] });
17
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic3RyaW5nLXRleHRib3gtaW5wdXQuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvbmd4LW1hdGVyaWFsLWVudGl0eS9zcmMvY29tcG9uZW50cy9pbnB1dC9zdHJpbmcvc3RyaW5nLXRleHRib3gtaW5wdXQvc3RyaW5nLXRleHRib3gtaW5wdXQuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvbmd4LW1hdGVyaWFsLWVudGl0eS9zcmMvY29tcG9uZW50cy9pbnB1dC9zdHJpbmcvc3RyaW5nLXRleHRib3gtaW5wdXQvc3RyaW5nLXRleHRib3gtaW5wdXQuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsd0NBQXdDO0FBQ3hDLE9BQU8sRUFBRSxTQUFTLEVBQVUsTUFBTSxlQUFlLENBQUM7QUFHbEQsT0FBTyxFQUFFLDhCQUE4QixFQUFFLE1BQU0sNEJBQTRCLENBQUM7Ozs7OztBQVE1RSxNQUFNLE9BQU8sMkJBQ1QsU0FBUSw4QkFBaUY7dUdBRGhGLDJCQUEyQjsyRkFBM0IsMkJBQTJCLG1GQ1p4Qyx3bUJBaUJpQjs7MkZETEosMkJBQTJCO2tCQU52QyxTQUFTOytCQUVJLHNCQUFzQiIsInNvdXJjZXNDb250ZW50IjpbIi8qIGVzbGludC1kaXNhYmxlIGpzZG9jL3JlcXVpcmUtanNkb2MgKi9cbmltcG9ydCB7IENvbXBvbmVudCwgT25Jbml0IH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBEZWNvcmF0b3JUeXBlcyB9IGZyb20gJy4uLy4uLy4uLy4uL2RlY29yYXRvcnMvYmFzZS9kZWNvcmF0b3ItdHlwZXMuZW51bSc7XG5pbXBvcnQgeyBCYXNlRW50aXR5VHlwZSB9IGZyb20gJy4uLy4uLy4uLy4uL2NsYXNzZXMvZW50aXR5Lm1vZGVsJztcbmltcG9ydCB7IE5neE1hdEVudGl0eUJhc2VJbnB1dENvbXBvbmVudCB9IGZyb20gJy4uLy4uL2Jhc2UtaW5wdXQuY29tcG9uZW50JztcblxuQENvbXBvbmVudCh7XG4gICAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIEBhbmd1bGFyLWVzbGludC9jb21wb25lbnQtc2VsZWN0b3JcbiAgICBzZWxlY3RvcjogJ3N0cmluZy10ZXh0Ym94LWlucHV0JyxcbiAgICB0ZW1wbGF0ZVVybDogJy4vc3RyaW5nLXRleHRib3gtaW5wdXQuY29tcG9uZW50Lmh0bWwnLFxuICAgIHN0eWxlVXJsczogWycuL3N0cmluZy10ZXh0Ym94LWlucHV0LmNvbXBvbmVudC5zY3NzJ11cbn0pXG5leHBvcnQgY2xhc3MgU3RyaW5nVGV4dGJveElucHV0Q29tcG9uZW50PEVudGl0eVR5cGUgZXh0ZW5kcyBCYXNlRW50aXR5VHlwZTxFbnRpdHlUeXBlPj5cbiAgICBleHRlbmRzIE5neE1hdEVudGl0eUJhc2VJbnB1dENvbXBvbmVudDxFbnRpdHlUeXBlLCBEZWNvcmF0b3JUeXBlcy5TVFJJTkdfVEVYVEJPWCwgc3RyaW5nPiBpbXBsZW1lbnRzIE9uSW5pdCB7XG59IiwiPG1hdC1mb3JtLWZpZWxkPlxuICAgIDxtYXQtbGFiZWw+e3ttZXRhZGF0YS5kaXNwbGF5TmFtZX19PC9tYXQtbGFiZWw+XG4gICAgPHRleHRhcmVhXG4gICAgICAgIG1hdElucHV0XG4gICAgICAgIFsobmdNb2RlbCldPVwicHJvcGVydHlWYWx1ZVwiXG4gICAgICAgIFtuYW1lXT1cImtleS50b1N0cmluZygpICsgdXVpZFwiXG4gICAgICAgICNtb2RlbD1cIm5nTW9kZWxcIlxuICAgICAgICBjZGtUZXh0YXJlYUF1dG9zaXplXG4gICAgICAgIGNka0F1dG9zaXplTWluUm93cz1cIjEwXCJcbiAgICAgICAgW3JlcXVpcmVkXT1cIm1ldGFkYXRhLnJlcXVpcmVkKGVudGl0eSlcIlxuICAgICAgICBbbWlubGVuZ3RoXT1cIm1ldGFkYXRhLm1pbkxlbmd0aCA/PyBudWxsXCJcbiAgICAgICAgW21heGxlbmd0aF09XCJtZXRhZGF0YS5tYXhMZW5ndGggPz8gbnVsbFwiXG4gICAgICAgIChuZ01vZGVsQ2hhbmdlKT1cImVtaXRDaGFuZ2UoKVwiXG4gICAgICAgIFtkaXNhYmxlZF09XCJpc1JlYWRPbmx5XCJcbiAgICA+XG4gICAgPC90ZXh0YXJlYT5cbiAgICA8bWF0LWVycm9yPnt7Z2V0VmFsaWRhdGlvbkVycm9yTWVzc2FnZShtb2RlbCl9fTwvbWF0LWVycm9yPlxuPC9tYXQtZm9ybS1maWVsZD4iXX0=
18
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic3RyaW5nLXRleHRib3gtaW5wdXQuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvbmd4LW1hdGVyaWFsLWVudGl0eS9zcmMvY29tcG9uZW50cy9pbnB1dC9zdHJpbmcvc3RyaW5nLXRleHRib3gtaW5wdXQvc3RyaW5nLXRleHRib3gtaW5wdXQuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvbmd4LW1hdGVyaWFsLWVudGl0eS9zcmMvY29tcG9uZW50cy9pbnB1dC9zdHJpbmcvc3RyaW5nLXRleHRib3gtaW5wdXQvc3RyaW5nLXRleHRib3gtaW5wdXQuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsd0NBQXdDO0FBQ3hDLE9BQU8sRUFBRSxTQUFTLEVBQVUsTUFBTSxlQUFlLENBQUM7QUFHbEQsT0FBTyxFQUFFLDhCQUE4QixFQUFFLE1BQU0sNEJBQTRCLENBQUM7Ozs7OztBQUU1RSwrREFBK0Q7QUFNL0QsTUFBTSxPQUFPLDJCQUNULFNBQVEsOEJBQWlGO3VHQURoRiwyQkFBMkI7MkZBQTNCLDJCQUEyQixtRkNaeEMsMm9CQWtCaUI7OzJGRE5KLDJCQUEyQjtrQkFMdkMsU0FBUzsrQkFDSSxzQkFBc0IiLCJzb3VyY2VzQ29udGVudCI6WyIvKiBlc2xpbnQtZGlzYWJsZSBqc2RvYy9yZXF1aXJlLWpzZG9jICovXG5pbXBvcnQgeyBDb21wb25lbnQsIE9uSW5pdCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgQmFzZUVudGl0eVR5cGUgfSBmcm9tICcuLi8uLi8uLi8uLi9jbGFzc2VzL2VudGl0eS5tb2RlbCc7XG5pbXBvcnQgeyBEZWNvcmF0b3JUeXBlcyB9IGZyb20gJy4uLy4uLy4uLy4uL2RlY29yYXRvcnMvYmFzZS9kZWNvcmF0b3ItdHlwZXMuZW51bSc7XG5pbXBvcnQgeyBOZ3hNYXRFbnRpdHlCYXNlSW5wdXRDb21wb25lbnQgfSBmcm9tICcuLi8uLi9iYXNlLWlucHV0LmNvbXBvbmVudCc7XG5cbi8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBhbmd1bGFyL3ByZWZlci1zdGFuZGFsb25lLWNvbXBvbmVudFxuQENvbXBvbmVudCh7XG4gICAgc2VsZWN0b3I6ICdzdHJpbmctdGV4dGJveC1pbnB1dCcsXG4gICAgdGVtcGxhdGVVcmw6ICcuL3N0cmluZy10ZXh0Ym94LWlucHV0LmNvbXBvbmVudC5odG1sJyxcbiAgICBzdHlsZVVybHM6IFsnLi9zdHJpbmctdGV4dGJveC1pbnB1dC5jb21wb25lbnQuc2NzcyddXG59KVxuZXhwb3J0IGNsYXNzIFN0cmluZ1RleHRib3hJbnB1dENvbXBvbmVudDxFbnRpdHlUeXBlIGV4dGVuZHMgQmFzZUVudGl0eVR5cGU8RW50aXR5VHlwZT4+XG4gICAgZXh0ZW5kcyBOZ3hNYXRFbnRpdHlCYXNlSW5wdXRDb21wb25lbnQ8RW50aXR5VHlwZSwgRGVjb3JhdG9yVHlwZXMuU1RSSU5HX1RFWFRCT1gsIHN0cmluZz4gaW1wbGVtZW50cyBPbkluaXQge1xufSIsIjwhLS0gZXNsaW50LWRpc2FibGUgYW5ndWxhci9uby1jYWxsLWV4cHJlc3Npb24gLS0+XG48bWF0LWZvcm0tZmllbGQ+XG4gICAgPG1hdC1sYWJlbD57e21ldGFkYXRhLmRpc3BsYXlOYW1lfX08L21hdC1sYWJlbD5cbiAgICA8dGV4dGFyZWFcbiAgICAgICAgI21vZGVsPVwibmdNb2RlbFwiXG4gICAgICAgIG1hdElucHV0XG4gICAgICAgIGNka1RleHRhcmVhQXV0b3NpemVcbiAgICAgICAgY2RrQXV0b3NpemVNaW5Sb3dzPVwiMTBcIlxuICAgICAgICBbbmFtZV09XCJuYW1lXCJcbiAgICAgICAgW3JlcXVpcmVkXT1cIm1ldGFkYXRhLnJlcXVpcmVkKGVudGl0eSlcIlxuICAgICAgICBbbWlubGVuZ3RoXT1cIm1ldGFkYXRhLm1pbkxlbmd0aCA/PyBudWxsXCJcbiAgICAgICAgW21heGxlbmd0aF09XCJtZXRhZGF0YS5tYXhMZW5ndGggPz8gbnVsbFwiXG4gICAgICAgIFtkaXNhYmxlZF09XCJpc1JlYWRPbmx5XCJcbiAgICAgICAgWyhuZ01vZGVsKV09XCJwcm9wZXJ0eVZhbHVlXCJcbiAgICAgICAgKG5nTW9kZWxDaGFuZ2UpPVwiZW1pdENoYW5nZSgpXCJcbiAgICA+XG4gICAgPC90ZXh0YXJlYT5cbiAgICA8bWF0LWVycm9yPnt7Z2V0VmFsaWRhdGlvbkVycm9yTWVzc2FnZShtb2RlbCl9fTwvbWF0LWVycm9yPlxuPC9tYXQtZm9ybS1maWVsZD4iXX0=
@@ -0,0 +1,44 @@
1
+ import { BaseBuilder } from '../../../classes/base.builder';
2
+ import { getConfigValue } from '../../../functions/get-config-value.function';
3
+ import { ConfirmDialogDataBuilder } from '../../confirm-dialog/confirm-dialog-data.builder';
4
+ /**
5
+ * The internal CreateData. Requires all default values the user can leave out.
6
+ */
7
+ export class CreateDataInternal {
8
+ // eslint-disable-next-line jsdoc/require-jsdoc
9
+ title;
10
+ // eslint-disable-next-line jsdoc/require-jsdoc
11
+ createButtonLabel;
12
+ // eslint-disable-next-line jsdoc/require-jsdoc
13
+ cancelButtonLabel;
14
+ // eslint-disable-next-line jsdoc/require-jsdoc
15
+ createRequiresConfirmDialog;
16
+ // eslint-disable-next-line jsdoc/require-jsdoc
17
+ confirmCreateDialogData;
18
+ constructor(title, createButtonLabel, cancelButtonLabel, createRequiresConfirmDialog, confirmCreateDialogData) {
19
+ this.title = title;
20
+ this.createButtonLabel = createButtonLabel;
21
+ this.cancelButtonLabel = cancelButtonLabel;
22
+ this.createRequiresConfirmDialog = createRequiresConfirmDialog;
23
+ this.confirmCreateDialogData = confirmCreateDialogData;
24
+ }
25
+ }
26
+ /**
27
+ * The Builder for the CreateData. Sets default values.
28
+ */
29
+ export class CreateDataBuilder extends BaseBuilder {
30
+ constructor(globalConfig, data) {
31
+ super(globalConfig, data);
32
+ }
33
+ // eslint-disable-next-line jsdoc/require-jsdoc
34
+ generateBaseData(data) {
35
+ // eslint-disable-next-line max-len
36
+ const confirmCreateDialogData = new ConfirmDialogDataBuilder(this.globalConfig, data?.confirmCreateDialogData)
37
+ .withDefault('confirmButtonLabel', this.globalConfig.createLabel)
38
+ .withDefault('text', this.globalConfig.confirmCreateText)
39
+ .withDefault('title', this.globalConfig.createLabel)
40
+ .getResult();
41
+ return new CreateDataInternal(getConfigValue(this.globalConfig.createLabel, data?.title), getConfigValue(this.globalConfig.createLabel, data?.createButtonLabel), getConfigValue(this.globalConfig.cancelLabel, data?.cancelButtonLabel), data?.createRequiresConfirmDialog ?? false, confirmCreateDialogData);
42
+ }
43
+ }
44
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY3JlYXRlLWRhdGEuYnVpbGRlci5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL25neC1tYXRlcmlhbC1lbnRpdHkvc3JjL2NvbXBvbmVudHMvdGFibGUvY3JlYXRlLWRpYWxvZy9jcmVhdGUtZGF0YS5idWlsZGVyLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxXQUFXLEVBQUUsTUFBTSwrQkFBK0IsQ0FBQztBQUM1RCxPQUFPLEVBQUUsY0FBYyxFQUFFLE1BQU0sOENBQThDLENBQUM7QUFFOUUsT0FBTyxFQUFFLHdCQUF3QixFQUE2QixNQUFNLGtEQUFrRCxDQUFDO0FBR3ZIOztHQUVHO0FBQ0gsTUFBTSxPQUFPLGtCQUFrQjtJQUMzQiwrQ0FBK0M7SUFDL0MsS0FBSyxDQUFTO0lBQ2QsK0NBQStDO0lBQy9DLGlCQUFpQixDQUFTO0lBQzFCLCtDQUErQztJQUMvQyxpQkFBaUIsQ0FBUztJQUMxQiwrQ0FBK0M7SUFDL0MsMkJBQTJCLENBQVU7SUFDckMsK0NBQStDO0lBQy9DLHVCQUF1QixDQUE0QjtJQUVuRCxZQUNJLEtBQWEsRUFDYixpQkFBeUIsRUFDekIsaUJBQXlCLEVBQ3pCLDJCQUFvQyxFQUNwQyx1QkFBa0Q7UUFFbEQsSUFBSSxDQUFDLEtBQUssR0FBRyxLQUFLLENBQUM7UUFDbkIsSUFBSSxDQUFDLGlCQUFpQixHQUFHLGlCQUFpQixDQUFDO1FBQzNDLElBQUksQ0FBQyxpQkFBaUIsR0FBRyxpQkFBaUIsQ0FBQztRQUMzQyxJQUFJLENBQUMsMkJBQTJCLEdBQUcsMkJBQTJCLENBQUM7UUFDL0QsSUFBSSxDQUFDLHVCQUF1QixHQUFHLHVCQUF1QixDQUFDO0lBQzNELENBQUM7Q0FDSjtBQUVEOztHQUVHO0FBQ0gsTUFBTSxPQUFPLGlCQUFrQixTQUFRLFdBQTJDO0lBRTlFLFlBQVksWUFBb0MsRUFBRSxJQUFpQjtRQUMvRCxLQUFLLENBQUMsWUFBWSxFQUFFLElBQUksQ0FBQyxDQUFDO0lBQzlCLENBQUM7SUFFRCwrQ0FBK0M7SUFDckMsZ0JBQWdCLENBQUMsSUFBaUI7UUFDeEMsbUNBQW1DO1FBQ25DLE1BQU0sdUJBQXVCLEdBQThCLElBQUksd0JBQXdCLENBQUMsSUFBSSxDQUFDLFlBQVksRUFBRSxJQUFJLEVBQUUsdUJBQXVCLENBQUM7YUFDcEksV0FBVyxDQUFDLG9CQUFvQixFQUFFLElBQUksQ0FBQyxZQUFZLENBQUMsV0FBVyxDQUFDO2FBQ2hFLFdBQVcsQ0FBQyxNQUFNLEVBQUUsSUFBSSxDQUFDLFlBQVksQ0FBQyxpQkFBaUIsQ0FBQzthQUN4RCxXQUFXLENBQUMsT0FBTyxFQUFFLElBQUksQ0FBQyxZQUFZLENBQUMsV0FBVyxDQUFDO2FBQ25ELFNBQVMsRUFBRSxDQUFDO1FBQ2pCLE9BQU8sSUFBSSxrQkFBa0IsQ0FDekIsY0FBYyxDQUFDLElBQUksQ0FBQyxZQUFZLENBQUMsV0FBVyxFQUFFLElBQUksRUFBRSxLQUFLLENBQUMsRUFDMUQsY0FBYyxDQUFDLElBQUksQ0FBQyxZQUFZLENBQUMsV0FBVyxFQUFFLElBQUksRUFBRSxpQkFBaUIsQ0FBQyxFQUN0RSxjQUFjLENBQUMsSUFBSSxDQUFDLFlBQVksQ0FBQyxXQUFXLEVBQUUsSUFBSSxFQUFFLGlCQUFpQixDQUFDLEVBQ3RFLElBQUksRUFBRSwyQkFBMkIsSUFBSSxLQUFLLEVBQzFDLHVCQUF1QixDQUMxQixDQUFDO0lBQ04sQ0FBQztDQUNKIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQmFzZUJ1aWxkZXIgfSBmcm9tICcuLi8uLi8uLi9jbGFzc2VzL2Jhc2UuYnVpbGRlcic7XG5pbXBvcnQgeyBnZXRDb25maWdWYWx1ZSB9IGZyb20gJy4uLy4uLy4uL2Z1bmN0aW9ucy9nZXQtY29uZmlnLXZhbHVlLmZ1bmN0aW9uJztcbmltcG9ydCB7IE5neEdsb2JhbERlZmF1bHRWYWx1ZXMgfSBmcm9tICcuLi8uLi8uLi9nbG9iYWwtY29uZmlndXJhdGlvbi12YWx1ZXMnO1xuaW1wb3J0IHsgQ29uZmlybURpYWxvZ0RhdGFCdWlsZGVyLCBDb25maXJtRGlhbG9nRGF0YUludGVybmFsIH0gZnJvbSAnLi4vLi4vY29uZmlybS1kaWFsb2cvY29uZmlybS1kaWFsb2ctZGF0YS5idWlsZGVyJztcbmltcG9ydCB7IENyZWF0ZURhdGEgfSBmcm9tICcuLi90YWJsZS1kYXRhJztcblxuLyoqXG4gKiBUaGUgaW50ZXJuYWwgQ3JlYXRlRGF0YS4gUmVxdWlyZXMgYWxsIGRlZmF1bHQgdmFsdWVzIHRoZSB1c2VyIGNhbiBsZWF2ZSBvdXQuXG4gKi9cbmV4cG9ydCBjbGFzcyBDcmVhdGVEYXRhSW50ZXJuYWwgaW1wbGVtZW50cyBDcmVhdGVEYXRhIHtcbiAgICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUganNkb2MvcmVxdWlyZS1qc2RvY1xuICAgIHRpdGxlOiBzdHJpbmc7XG4gICAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIGpzZG9jL3JlcXVpcmUtanNkb2NcbiAgICBjcmVhdGVCdXR0b25MYWJlbDogc3RyaW5nO1xuICAgIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBqc2RvYy9yZXF1aXJlLWpzZG9jXG4gICAgY2FuY2VsQnV0dG9uTGFiZWw6IHN0cmluZztcbiAgICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUganNkb2MvcmVxdWlyZS1qc2RvY1xuICAgIGNyZWF0ZVJlcXVpcmVzQ29uZmlybURpYWxvZzogYm9vbGVhbjtcbiAgICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUganNkb2MvcmVxdWlyZS1qc2RvY1xuICAgIGNvbmZpcm1DcmVhdGVEaWFsb2dEYXRhOiBDb25maXJtRGlhbG9nRGF0YUludGVybmFsO1xuXG4gICAgY29uc3RydWN0b3IoXG4gICAgICAgIHRpdGxlOiBzdHJpbmcsXG4gICAgICAgIGNyZWF0ZUJ1dHRvbkxhYmVsOiBzdHJpbmcsXG4gICAgICAgIGNhbmNlbEJ1dHRvbkxhYmVsOiBzdHJpbmcsXG4gICAgICAgIGNyZWF0ZVJlcXVpcmVzQ29uZmlybURpYWxvZzogYm9vbGVhbixcbiAgICAgICAgY29uZmlybUNyZWF0ZURpYWxvZ0RhdGE6IENvbmZpcm1EaWFsb2dEYXRhSW50ZXJuYWxcbiAgICApIHtcbiAgICAgICAgdGhpcy50aXRsZSA9IHRpdGxlO1xuICAgICAgICB0aGlzLmNyZWF0ZUJ1dHRvbkxhYmVsID0gY3JlYXRlQnV0dG9uTGFiZWw7XG4gICAgICAgIHRoaXMuY2FuY2VsQnV0dG9uTGFiZWwgPSBjYW5jZWxCdXR0b25MYWJlbDtcbiAgICAgICAgdGhpcy5jcmVhdGVSZXF1aXJlc0NvbmZpcm1EaWFsb2cgPSBjcmVhdGVSZXF1aXJlc0NvbmZpcm1EaWFsb2c7XG4gICAgICAgIHRoaXMuY29uZmlybUNyZWF0ZURpYWxvZ0RhdGEgPSBjb25maXJtQ3JlYXRlRGlhbG9nRGF0YTtcbiAgICB9XG59XG5cbi8qKlxuICogVGhlIEJ1aWxkZXIgZm9yIHRoZSBDcmVhdGVEYXRhLiBTZXRzIGRlZmF1bHQgdmFsdWVzLlxuICovXG5leHBvcnQgY2xhc3MgQ3JlYXRlRGF0YUJ1aWxkZXIgZXh0ZW5kcyBCYXNlQnVpbGRlcjxDcmVhdGVEYXRhSW50ZXJuYWwsIENyZWF0ZURhdGE+IHtcblxuICAgIGNvbnN0cnVjdG9yKGdsb2JhbENvbmZpZzogTmd4R2xvYmFsRGVmYXVsdFZhbHVlcywgZGF0YT86IENyZWF0ZURhdGEpIHtcbiAgICAgICAgc3VwZXIoZ2xvYmFsQ29uZmlnLCBkYXRhKTtcbiAgICB9XG5cbiAgICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUganNkb2MvcmVxdWlyZS1qc2RvY1xuICAgIHByb3RlY3RlZCBnZW5lcmF0ZUJhc2VEYXRhKGRhdGE/OiBDcmVhdGVEYXRhKTogQ3JlYXRlRGF0YUludGVybmFsIHtcbiAgICAgICAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIG1heC1sZW5cbiAgICAgICAgY29uc3QgY29uZmlybUNyZWF0ZURpYWxvZ0RhdGE6IENvbmZpcm1EaWFsb2dEYXRhSW50ZXJuYWwgPSBuZXcgQ29uZmlybURpYWxvZ0RhdGFCdWlsZGVyKHRoaXMuZ2xvYmFsQ29uZmlnLCBkYXRhPy5jb25maXJtQ3JlYXRlRGlhbG9nRGF0YSlcbiAgICAgICAgICAgIC53aXRoRGVmYXVsdCgnY29uZmlybUJ1dHRvbkxhYmVsJywgdGhpcy5nbG9iYWxDb25maWcuY3JlYXRlTGFiZWwpXG4gICAgICAgICAgICAud2l0aERlZmF1bHQoJ3RleHQnLCB0aGlzLmdsb2JhbENvbmZpZy5jb25maXJtQ3JlYXRlVGV4dClcbiAgICAgICAgICAgIC53aXRoRGVmYXVsdCgndGl0bGUnLCB0aGlzLmdsb2JhbENvbmZpZy5jcmVhdGVMYWJlbClcbiAgICAgICAgICAgIC5nZXRSZXN1bHQoKTtcbiAgICAgICAgcmV0dXJuIG5ldyBDcmVhdGVEYXRhSW50ZXJuYWwoXG4gICAgICAgICAgICBnZXRDb25maWdWYWx1ZSh0aGlzLmdsb2JhbENvbmZpZy5jcmVhdGVMYWJlbCwgZGF0YT8udGl0bGUpLFxuICAgICAgICAgICAgZ2V0Q29uZmlnVmFsdWUodGhpcy5nbG9iYWxDb25maWcuY3JlYXRlTGFiZWwsIGRhdGE/LmNyZWF0ZUJ1dHRvbkxhYmVsKSxcbiAgICAgICAgICAgIGdldENvbmZpZ1ZhbHVlKHRoaXMuZ2xvYmFsQ29uZmlnLmNhbmNlbExhYmVsLCBkYXRhPy5jYW5jZWxCdXR0b25MYWJlbCksXG4gICAgICAgICAgICBkYXRhPy5jcmVhdGVSZXF1aXJlc0NvbmZpcm1EaWFsb2cgPz8gZmFsc2UsXG4gICAgICAgICAgICBjb25maXJtQ3JlYXRlRGlhbG9nRGF0YVxuICAgICAgICApO1xuICAgIH1cbn0iXX0=
@@ -1,19 +1,19 @@
1
1
  import { BaseBuilder } from '../../../classes/base.builder';
2
- import { CreateDialogDataBuilder } from './create-dialog-data.builder';
2
+ import { CreateDataBuilder } from './create-data.builder';
3
3
  /**
4
4
  * The internal CreateEntityDialogData. Requires all default values the user can leave out.
5
5
  */
6
- export class CreateEntityDialogDataInternal {
6
+ export class CreateEntityDataInternal {
7
7
  // eslint-disable-next-line jsdoc/require-jsdoc
8
8
  entity;
9
9
  // eslint-disable-next-line jsdoc/require-jsdoc
10
10
  EntityServiceClass;
11
11
  // eslint-disable-next-line jsdoc/require-jsdoc
12
- createDialogData;
13
- constructor(entity, EntityServiceClass, createDialogData) {
12
+ createData;
13
+ constructor(entity, EntityServiceClass, createData) {
14
14
  this.entity = entity;
15
15
  this.EntityServiceClass = EntityServiceClass;
16
- this.createDialogData = createDialogData;
16
+ this.createData = createData;
17
17
  }
18
18
  }
19
19
  /**
@@ -25,9 +25,8 @@ export class CreateEntityDialogDataBuilder extends BaseBuilder {
25
25
  }
26
26
  // eslint-disable-next-line jsdoc/require-jsdoc
27
27
  generateBaseData(data) {
28
- // eslint-disable-next-line max-len
29
- const createDialogData = new CreateDialogDataBuilder(this.globalConfig, data.createDialogData).getResult();
30
- return new CreateEntityDialogDataInternal(data.entity, data.EntityServiceClass, createDialogData);
28
+ const createDialogData = new CreateDataBuilder(this.globalConfig, data.createData).getResult();
29
+ return new CreateEntityDataInternal(data.entity, data.EntityServiceClass, createDialogData);
31
30
  }
32
31
  }
33
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY3JlYXRlLWVudGl0eS1kaWFsb2ctZGF0YS5idWlsZGVyLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvbmd4LW1hdGVyaWFsLWVudGl0eS9zcmMvY29tcG9uZW50cy90YWJsZS9jcmVhdGUtZGlhbG9nL2NyZWF0ZS1lbnRpdHktZGlhbG9nLWRhdGEuYnVpbGRlci50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFFQSxPQUFPLEVBQUUsV0FBVyxFQUFFLE1BQU0sK0JBQStCLENBQUM7QUFHNUQsT0FBTyxFQUFFLHVCQUF1QixFQUE0QixNQUFNLDhCQUE4QixDQUFDO0FBR2pHOztHQUVHO0FBQ0gsTUFBTSxPQUFPLDhCQUE4QjtJQUN2QywrQ0FBK0M7SUFDL0MsTUFBTSxDQUFhO0lBQ25CLCtDQUErQztJQUMvQyxrQkFBa0IsQ0FBNEQ7SUFDOUUsK0NBQStDO0lBQy9DLGdCQUFnQixDQUEyQjtJQUUzQyxZQUNJLE1BQWtCLEVBQ2xCLGtCQUE2RSxFQUM3RSxnQkFBMEM7UUFFMUMsSUFBSSxDQUFDLE1BQU0sR0FBRyxNQUFNLENBQUM7UUFDckIsSUFBSSxDQUFDLGtCQUFrQixHQUFHLGtCQUFrQixDQUFDO1FBQzdDLElBQUksQ0FBQyxnQkFBZ0IsR0FBRyxnQkFBZ0IsQ0FBQztJQUM3QyxDQUFDO0NBQ0o7QUFFRDs7R0FFRztBQUNILE1BQU0sT0FBTyw2QkFDVCxTQUFRLFdBQTJGO0lBRW5HLFlBQVksSUFBd0MsRUFBRSxZQUFvQztRQUN0RixLQUFLLENBQUMsWUFBWSxFQUFFLElBQUksQ0FBQyxDQUFDO0lBQzlCLENBQUM7SUFFRCwrQ0FBK0M7SUFDckMsZ0JBQWdCLENBQUMsSUFBd0M7UUFDL0QsbUNBQW1DO1FBQ25DLE1BQU0sZ0JBQWdCLEdBQTZCLElBQUksdUJBQXVCLENBQUMsSUFBSSxDQUFDLFlBQVksRUFBRSxJQUFJLENBQUMsZ0JBQWdCLENBQUMsQ0FBQyxTQUFTLEVBQUUsQ0FBQztRQUNySSxPQUFPLElBQUksOEJBQThCLENBQ3JDLElBQUksQ0FBQyxNQUFNLEVBQ1gsSUFBSSxDQUFDLGtCQUFrQixFQUN2QixnQkFBZ0IsQ0FDbkIsQ0FBQztJQUNOLENBQUM7Q0FDSiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEh0dHBDbGllbnQgfSBmcm9tICdAYW5ndWxhci9jb21tb24vaHR0cCc7XG5pbXBvcnQgeyBOZ3hHbG9iYWxEZWZhdWx0VmFsdWVzIH0gZnJvbSAnLi4vLi4vLi4vZ2xvYmFsLWNvbmZpZ3VyYXRpb24tdmFsdWVzJztcbmltcG9ydCB7IEJhc2VCdWlsZGVyIH0gZnJvbSAnLi4vLi4vLi4vY2xhc3Nlcy9iYXNlLmJ1aWxkZXInO1xuaW1wb3J0IHsgQmFzZUVudGl0eVR5cGUgfSBmcm9tICcuLi8uLi8uLi9jbGFzc2VzL2VudGl0eS5tb2RlbCc7XG5pbXBvcnQgeyBFbnRpdHlTZXJ2aWNlIH0gZnJvbSAnLi4vLi4vLi4vc2VydmljZXMvZW50aXR5LnNlcnZpY2UnO1xuaW1wb3J0IHsgQ3JlYXRlRGlhbG9nRGF0YUJ1aWxkZXIsIENyZWF0ZURpYWxvZ0RhdGFJbnRlcm5hbCB9IGZyb20gJy4vY3JlYXRlLWRpYWxvZy1kYXRhLmJ1aWxkZXInO1xuaW1wb3J0IHsgQ3JlYXRlRW50aXR5RGlhbG9nRGF0YSB9IGZyb20gJy4vY3JlYXRlLWVudGl0eS1kaWFsb2ctZGF0YSc7XG5cbi8qKlxuICogVGhlIGludGVybmFsIENyZWF0ZUVudGl0eURpYWxvZ0RhdGEuIFJlcXVpcmVzIGFsbCBkZWZhdWx0IHZhbHVlcyB0aGUgdXNlciBjYW4gbGVhdmUgb3V0LlxuICovXG5leHBvcnQgY2xhc3MgQ3JlYXRlRW50aXR5RGlhbG9nRGF0YUludGVybmFsPEVudGl0eVR5cGUgZXh0ZW5kcyBCYXNlRW50aXR5VHlwZTxFbnRpdHlUeXBlPj4gaW1wbGVtZW50cyBDcmVhdGVFbnRpdHlEaWFsb2dEYXRhPEVudGl0eVR5cGU+IHtcbiAgICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUganNkb2MvcmVxdWlyZS1qc2RvY1xuICAgIGVudGl0eTogRW50aXR5VHlwZTtcbiAgICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUganNkb2MvcmVxdWlyZS1qc2RvY1xuICAgIEVudGl0eVNlcnZpY2VDbGFzczogbmV3IChodHRwQ2xpZW50OiBIdHRwQ2xpZW50KSA9PiBFbnRpdHlTZXJ2aWNlPEVudGl0eVR5cGU+O1xuICAgIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBqc2RvYy9yZXF1aXJlLWpzZG9jXG4gICAgY3JlYXRlRGlhbG9nRGF0YTogQ3JlYXRlRGlhbG9nRGF0YUludGVybmFsO1xuXG4gICAgY29uc3RydWN0b3IoXG4gICAgICAgIGVudGl0eTogRW50aXR5VHlwZSxcbiAgICAgICAgRW50aXR5U2VydmljZUNsYXNzOiBuZXcgKGh0dHBDbGllbnQ6IEh0dHBDbGllbnQpID0+IEVudGl0eVNlcnZpY2U8RW50aXR5VHlwZT4sXG4gICAgICAgIGNyZWF0ZURpYWxvZ0RhdGE6IENyZWF0ZURpYWxvZ0RhdGFJbnRlcm5hbFxuICAgICkge1xuICAgICAgICB0aGlzLmVudGl0eSA9IGVudGl0eTtcbiAgICAgICAgdGhpcy5FbnRpdHlTZXJ2aWNlQ2xhc3MgPSBFbnRpdHlTZXJ2aWNlQ2xhc3M7XG4gICAgICAgIHRoaXMuY3JlYXRlRGlhbG9nRGF0YSA9IGNyZWF0ZURpYWxvZ0RhdGE7XG4gICAgfVxufVxuXG4vKipcbiAqIFRoZSBCdWlsZGVyIGZvciB0aGUgQ3JlYXRlRW50aXR5RGlhbG9nRGF0YS4gU2V0cyBkZWZhdWx0IHZhbHVlcy5cbiAqL1xuZXhwb3J0IGNsYXNzIENyZWF0ZUVudGl0eURpYWxvZ0RhdGFCdWlsZGVyPEVudGl0eVR5cGUgZXh0ZW5kcyBCYXNlRW50aXR5VHlwZTxFbnRpdHlUeXBlPj5cbiAgICBleHRlbmRzIEJhc2VCdWlsZGVyPENyZWF0ZUVudGl0eURpYWxvZ0RhdGFJbnRlcm5hbDxFbnRpdHlUeXBlPiwgQ3JlYXRlRW50aXR5RGlhbG9nRGF0YTxFbnRpdHlUeXBlPj4ge1xuXG4gICAgY29uc3RydWN0b3IoZGF0YTogQ3JlYXRlRW50aXR5RGlhbG9nRGF0YTxFbnRpdHlUeXBlPiwgZ2xvYmFsQ29uZmlnOiBOZ3hHbG9iYWxEZWZhdWx0VmFsdWVzKSB7XG4gICAgICAgIHN1cGVyKGdsb2JhbENvbmZpZywgZGF0YSk7XG4gICAgfVxuXG4gICAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIGpzZG9jL3JlcXVpcmUtanNkb2NcbiAgICBwcm90ZWN0ZWQgZ2VuZXJhdGVCYXNlRGF0YShkYXRhOiBDcmVhdGVFbnRpdHlEaWFsb2dEYXRhPEVudGl0eVR5cGU+KTogQ3JlYXRlRW50aXR5RGlhbG9nRGF0YUludGVybmFsPEVudGl0eVR5cGU+IHtcbiAgICAgICAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIG1heC1sZW5cbiAgICAgICAgY29uc3QgY3JlYXRlRGlhbG9nRGF0YTogQ3JlYXRlRGlhbG9nRGF0YUludGVybmFsID0gbmV3IENyZWF0ZURpYWxvZ0RhdGFCdWlsZGVyKHRoaXMuZ2xvYmFsQ29uZmlnLCBkYXRhLmNyZWF0ZURpYWxvZ0RhdGEpLmdldFJlc3VsdCgpO1xuICAgICAgICByZXR1cm4gbmV3IENyZWF0ZUVudGl0eURpYWxvZ0RhdGFJbnRlcm5hbDxFbnRpdHlUeXBlPihcbiAgICAgICAgICAgIGRhdGEuZW50aXR5LFxuICAgICAgICAgICAgZGF0YS5FbnRpdHlTZXJ2aWNlQ2xhc3MsXG4gICAgICAgICAgICBjcmVhdGVEaWFsb2dEYXRhXG4gICAgICAgICk7XG4gICAgfVxufSJdfQ==
32
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY3JlYXRlLWVudGl0eS1kaWFsb2ctZGF0YS5idWlsZGVyLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvbmd4LW1hdGVyaWFsLWVudGl0eS9zcmMvY29tcG9uZW50cy90YWJsZS9jcmVhdGUtZGlhbG9nL2NyZWF0ZS1lbnRpdHktZGlhbG9nLWRhdGEuYnVpbGRlci50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsV0FBVyxFQUFFLE1BQU0sK0JBQStCLENBQUM7QUFHNUQsT0FBTyxFQUFFLGlCQUFpQixFQUFzQixNQUFNLHVCQUF1QixDQUFDO0FBRzlFOztHQUVHO0FBQ0gsTUFBTSxPQUFPLHdCQUF3QjtJQUNqQywrQ0FBK0M7SUFDL0MsTUFBTSxDQUFhO0lBQ25CLCtDQUErQztJQUMvQyxrQkFBa0IsQ0FBd0M7SUFDMUQsK0NBQStDO0lBQy9DLFVBQVUsQ0FBcUI7SUFFL0IsWUFDSSxNQUFrQixFQUNsQixrQkFBeUQsRUFDekQsVUFBOEI7UUFFOUIsSUFBSSxDQUFDLE1BQU0sR0FBRyxNQUFNLENBQUM7UUFDckIsSUFBSSxDQUFDLGtCQUFrQixHQUFHLGtCQUFrQixDQUFDO1FBQzdDLElBQUksQ0FBQyxVQUFVLEdBQUcsVUFBVSxDQUFDO0lBQ2pDLENBQUM7Q0FDSjtBQUVEOztHQUVHO0FBQ0gsTUFBTSxPQUFPLDZCQUNULFNBQVEsV0FBK0U7SUFFdkYsWUFBWSxJQUFrQyxFQUFFLFlBQW9DO1FBQ2hGLEtBQUssQ0FBQyxZQUFZLEVBQUUsSUFBSSxDQUFDLENBQUM7SUFDOUIsQ0FBQztJQUVELCtDQUErQztJQUNyQyxnQkFBZ0IsQ0FBQyxJQUFrQztRQUV6RCxNQUFNLGdCQUFnQixHQUF1QixJQUFJLGlCQUFpQixDQUFDLElBQUksQ0FBQyxZQUFZLEVBQUUsSUFBSSxDQUFDLFVBQVUsQ0FBQyxDQUFDLFNBQVMsRUFBRSxDQUFDO1FBQ25ILE9BQU8sSUFBSSx3QkFBd0IsQ0FDL0IsSUFBSSxDQUFDLE1BQU0sRUFDWCxJQUFJLENBQUMsa0JBQWtCLEVBQ3ZCLGdCQUFnQixDQUNuQixDQUFDO0lBQ04sQ0FBQztDQUNKIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQmFzZUJ1aWxkZXIgfSBmcm9tICcuLi8uLi8uLi9jbGFzc2VzL2Jhc2UuYnVpbGRlcic7XG5pbXBvcnQgeyBCYXNlRW50aXR5VHlwZSwgRW50aXR5U2VydmljZUNsYXNzTmV3YWJsZSB9IGZyb20gJy4uLy4uLy4uL2NsYXNzZXMvZW50aXR5Lm1vZGVsJztcbmltcG9ydCB7IE5neEdsb2JhbERlZmF1bHRWYWx1ZXMgfSBmcm9tICcuLi8uLi8uLi9nbG9iYWwtY29uZmlndXJhdGlvbi12YWx1ZXMnO1xuaW1wb3J0IHsgQ3JlYXRlRGF0YUJ1aWxkZXIsIENyZWF0ZURhdGFJbnRlcm5hbCB9IGZyb20gJy4vY3JlYXRlLWRhdGEuYnVpbGRlcic7XG5pbXBvcnQgeyBDcmVhdGVFbnRpdHlEYXRhIH0gZnJvbSAnLi9jcmVhdGUtZW50aXR5LWRpYWxvZy1kYXRhJztcblxuLyoqXG4gKiBUaGUgaW50ZXJuYWwgQ3JlYXRlRW50aXR5RGlhbG9nRGF0YS4gUmVxdWlyZXMgYWxsIGRlZmF1bHQgdmFsdWVzIHRoZSB1c2VyIGNhbiBsZWF2ZSBvdXQuXG4gKi9cbmV4cG9ydCBjbGFzcyBDcmVhdGVFbnRpdHlEYXRhSW50ZXJuYWw8RW50aXR5VHlwZSBleHRlbmRzIEJhc2VFbnRpdHlUeXBlPEVudGl0eVR5cGU+PiBpbXBsZW1lbnRzIENyZWF0ZUVudGl0eURhdGE8RW50aXR5VHlwZT4ge1xuICAgIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBqc2RvYy9yZXF1aXJlLWpzZG9jXG4gICAgZW50aXR5OiBFbnRpdHlUeXBlO1xuICAgIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBqc2RvYy9yZXF1aXJlLWpzZG9jXG4gICAgRW50aXR5U2VydmljZUNsYXNzOiBFbnRpdHlTZXJ2aWNlQ2xhc3NOZXdhYmxlPEVudGl0eVR5cGU+O1xuICAgIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBqc2RvYy9yZXF1aXJlLWpzZG9jXG4gICAgY3JlYXRlRGF0YTogQ3JlYXRlRGF0YUludGVybmFsO1xuXG4gICAgY29uc3RydWN0b3IoXG4gICAgICAgIGVudGl0eTogRW50aXR5VHlwZSxcbiAgICAgICAgRW50aXR5U2VydmljZUNsYXNzOiBFbnRpdHlTZXJ2aWNlQ2xhc3NOZXdhYmxlPEVudGl0eVR5cGU+LFxuICAgICAgICBjcmVhdGVEYXRhOiBDcmVhdGVEYXRhSW50ZXJuYWxcbiAgICApIHtcbiAgICAgICAgdGhpcy5lbnRpdHkgPSBlbnRpdHk7XG4gICAgICAgIHRoaXMuRW50aXR5U2VydmljZUNsYXNzID0gRW50aXR5U2VydmljZUNsYXNzO1xuICAgICAgICB0aGlzLmNyZWF0ZURhdGEgPSBjcmVhdGVEYXRhO1xuICAgIH1cbn1cblxuLyoqXG4gKiBUaGUgQnVpbGRlciBmb3IgdGhlIENyZWF0ZUVudGl0eURpYWxvZ0RhdGEuIFNldHMgZGVmYXVsdCB2YWx1ZXMuXG4gKi9cbmV4cG9ydCBjbGFzcyBDcmVhdGVFbnRpdHlEaWFsb2dEYXRhQnVpbGRlcjxFbnRpdHlUeXBlIGV4dGVuZHMgQmFzZUVudGl0eVR5cGU8RW50aXR5VHlwZT4+XG4gICAgZXh0ZW5kcyBCYXNlQnVpbGRlcjxDcmVhdGVFbnRpdHlEYXRhSW50ZXJuYWw8RW50aXR5VHlwZT4sIENyZWF0ZUVudGl0eURhdGE8RW50aXR5VHlwZT4+IHtcblxuICAgIGNvbnN0cnVjdG9yKGRhdGE6IENyZWF0ZUVudGl0eURhdGE8RW50aXR5VHlwZT4sIGdsb2JhbENvbmZpZzogTmd4R2xvYmFsRGVmYXVsdFZhbHVlcykge1xuICAgICAgICBzdXBlcihnbG9iYWxDb25maWcsIGRhdGEpO1xuICAgIH1cblxuICAgIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBqc2RvYy9yZXF1aXJlLWpzZG9jXG4gICAgcHJvdGVjdGVkIGdlbmVyYXRlQmFzZURhdGEoZGF0YTogQ3JlYXRlRW50aXR5RGF0YTxFbnRpdHlUeXBlPik6IENyZWF0ZUVudGl0eURhdGFJbnRlcm5hbDxFbnRpdHlUeXBlPiB7XG5cbiAgICAgICAgY29uc3QgY3JlYXRlRGlhbG9nRGF0YTogQ3JlYXRlRGF0YUludGVybmFsID0gbmV3IENyZWF0ZURhdGFCdWlsZGVyKHRoaXMuZ2xvYmFsQ29uZmlnLCBkYXRhLmNyZWF0ZURhdGEpLmdldFJlc3VsdCgpO1xuICAgICAgICByZXR1cm4gbmV3IENyZWF0ZUVudGl0eURhdGFJbnRlcm5hbDxFbnRpdHlUeXBlPihcbiAgICAgICAgICAgIGRhdGEuZW50aXR5LFxuICAgICAgICAgICAgZGF0YS5FbnRpdHlTZXJ2aWNlQ2xhc3MsXG4gICAgICAgICAgICBjcmVhdGVEaWFsb2dEYXRhXG4gICAgICAgICk7XG4gICAgfVxufSJdfQ==
@@ -1,2 +1,2 @@
1
1
  export {};
2
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY3JlYXRlLWVudGl0eS1kaWFsb2ctZGF0YS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL25neC1tYXRlcmlhbC1lbnRpdHkvc3JjL2NvbXBvbmVudHMvdGFibGUvY3JlYXRlLWRpYWxvZy9jcmVhdGUtZW50aXR5LWRpYWxvZy1kYXRhLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBIdHRwQ2xpZW50IH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uL2h0dHAnO1xuaW1wb3J0IHsgQmFzZUVudGl0eVR5cGUgfSBmcm9tICcuLi8uLi8uLi9jbGFzc2VzL2VudGl0eS5tb2RlbCc7XG5pbXBvcnQgeyBFbnRpdHlTZXJ2aWNlIH0gZnJvbSAnLi4vLi4vLi4vc2VydmljZXMvZW50aXR5LnNlcnZpY2UnO1xuaW1wb3J0IHsgQ3JlYXRlRGlhbG9nRGF0YSB9IGZyb20gJy4uL3RhYmxlLWRhdGEnO1xuXG4vKipcbiAqIFRoZSBEZWZpbml0aW9uIG9mIHRoZSBDcmVhdGUgRW50aXR5IERpYWxvZyBEYXRhLlxuICovXG5leHBvcnQgaW50ZXJmYWNlIENyZWF0ZUVudGl0eURpYWxvZ0RhdGE8RW50aXR5VHlwZSBleHRlbmRzIEJhc2VFbnRpdHlUeXBlPEVudGl0eVR5cGU+PiB7XG4gICAgLyoqXG4gICAgICogQW4gZW1wdHkgZW50aXR5IHRoYXQgaXMgdXNlZCBhcyB0aGUgZGF0YSBtb2RlbC5cbiAgICAgKi9cbiAgICBlbnRpdHk6IEVudGl0eVR5cGUsXG4gICAgLyoqXG4gICAgICogVGhlIEVudGl0eSBTZXJ2aWNlIGNsYXNzIHVzZWQgZm9yIHRoZSBjcmVhdGUgcmVxdWVzdC5cbiAgICAgKi9cbiAgICBFbnRpdHlTZXJ2aWNlQ2xhc3M6IG5ldyAoaHR0cENsaWVudDogSHR0cENsaWVudCkgPT4gRW50aXR5U2VydmljZTxFbnRpdHlUeXBlPixcbiAgICAvKipcbiAgICAgKiBUaGUgaW5mbyBvZiB0aGUgZ2VuZXJpYyBjcmVhdGUtZGlhbG9nLlxuICAgICAqL1xuICAgIGNyZWF0ZURpYWxvZ0RhdGE/OiBDcmVhdGVEaWFsb2dEYXRhXG59Il19
2
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY3JlYXRlLWVudGl0eS1kaWFsb2ctZGF0YS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL25neC1tYXRlcmlhbC1lbnRpdHkvc3JjL2NvbXBvbmVudHMvdGFibGUvY3JlYXRlLWRpYWxvZy9jcmVhdGUtZW50aXR5LWRpYWxvZy1kYXRhLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBCYXNlRW50aXR5VHlwZSwgRW50aXR5U2VydmljZUNsYXNzTmV3YWJsZSB9IGZyb20gJy4uLy4uLy4uL2NsYXNzZXMvZW50aXR5Lm1vZGVsJztcbmltcG9ydCB7IENyZWF0ZURhdGEgfSBmcm9tICcuLi90YWJsZS1kYXRhJztcblxuLyoqXG4gKiBUaGUgRGVmaW5pdGlvbiBvZiB0aGUgQ3JlYXRlIEVudGl0eSBEYXRhLlxuICovXG5leHBvcnQgaW50ZXJmYWNlIENyZWF0ZUVudGl0eURhdGE8RW50aXR5VHlwZSBleHRlbmRzIEJhc2VFbnRpdHlUeXBlPEVudGl0eVR5cGU+PiB7XG4gICAgLyoqXG4gICAgICogQW4gZW1wdHkgZW50aXR5IHRoYXQgaXMgdXNlZCBhcyB0aGUgZGF0YSBtb2RlbC5cbiAgICAgKi9cbiAgICBlbnRpdHk6IEVudGl0eVR5cGUsXG4gICAgLyoqXG4gICAgICogVGhlIEVudGl0eSBTZXJ2aWNlIGNsYXNzIHVzZWQgZm9yIHRoZSBjcmVhdGUgcmVxdWVzdC5cbiAgICAgKi9cbiAgICBFbnRpdHlTZXJ2aWNlQ2xhc3M6IEVudGl0eVNlcnZpY2VDbGFzc05ld2FibGU8RW50aXR5VHlwZT4sXG4gICAgLyoqXG4gICAgICogVGhlIGluZm8gb2YgdGhlIGdlbmVyaWMgY3JlYXRlLWRpYWxvZyBvciBwYWdlLlxuICAgICAqL1xuICAgIGNyZWF0ZURhdGE/OiBDcmVhdGVEYXRhXG59Il19
@@ -1,5 +1,5 @@
1
1
  import { NgFor, NgIf } from '@angular/common';
2
- import { Component, Inject, Injector, runInInjectionContext } from '@angular/core';
2
+ import { Component, EnvironmentInjector, Inject, runInInjectionContext } from '@angular/core';
3
3
  import { FormsModule } from '@angular/forms';
4
4
  import { MatBadgeModule } from '@angular/material/badge';
5
5
  import { MatButtonModule } from '@angular/material/button';
@@ -33,12 +33,33 @@ export class NgxMatEntityCreateDialogComponent {
33
33
  injector;
34
34
  dialog;
35
35
  globalConfig;
36
+ /**
37
+ * Contains HelperMethods around handling Entities and their property-metadata.
38
+ */
36
39
  EntityUtilities = EntityUtilities;
40
+ /**
41
+ * The tabs of the entity.
42
+ */
37
43
  entityTabs;
44
+ /**
45
+ * The services that handles the entity.
46
+ */
38
47
  entityService;
48
+ /**
49
+ * The internal configuration data.
50
+ */
39
51
  data;
52
+ /**
53
+ * Whether or not the entity is valid.
54
+ */
40
55
  isEntityValid = false;
56
+ /**
57
+ * The validation errors of the entity.
58
+ */
41
59
  validationErrors = [];
60
+ /**
61
+ * What to display inside the tooltip.
62
+ */
42
63
  tooltipContent = '';
43
64
  constructor(inputData, dialogRef, injector, dialog, globalConfig) {
44
65
  this.inputData = inputData;
@@ -50,7 +71,7 @@ export class NgxMatEntityCreateDialogComponent {
50
71
  ngOnInit() {
51
72
  this.data = new CreateEntityDialogDataBuilder(this.inputData, this.globalConfig).getResult();
52
73
  this.dialogRef.disableClose = true;
53
- this.entityTabs = EntityUtilities.getEntityTabs(this.data.entity, true);
74
+ this.entityTabs = EntityUtilities.getEntityTabs(this.data.entity, this.injector, true);
54
75
  this.entityService = this.injector.get(this.data.EntityServiceClass);
55
76
  setTimeout(() => this.checkIsEntityValid(), 1);
56
77
  }
@@ -70,11 +91,11 @@ export class NgxMatEntityCreateDialogComponent {
70
91
  if (!this.isEntityValid) {
71
92
  return;
72
93
  }
73
- if (!this.data.createDialogData.createRequiresConfirmDialog) {
94
+ if (!this.data.createData.createRequiresConfirmDialog) {
74
95
  this.confirmCreate();
75
96
  return;
76
97
  }
77
- const dialogData = new ConfirmDialogDataBuilder(this.globalConfig, this.data.createDialogData.confirmCreateDialogData)
98
+ const dialogData = new ConfirmDialogDataBuilder(this.globalConfig, this.data.createData.confirmCreateDialogData)
78
99
  .withDefault('text', this.globalConfig.confirmCreateText)
79
100
  .withDefault('confirmButtonLabel', this.globalConfig.createLabel)
80
101
  .withDefault('title', this.globalConfig.createLabel)
@@ -99,8 +120,8 @@ export class NgxMatEntityCreateDialogComponent {
99
120
  cancel() {
100
121
  this.dialogRef.close();
101
122
  }
102
- static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.0", ngImport: i0, type: NgxMatEntityCreateDialogComponent, deps: [{ token: MAT_DIALOG_DATA }, { token: i1.MatDialogRef }, { token: i0.Injector }, { token: i1.MatDialog }, { token: NGX_INTERNAL_GLOBAL_DEFAULT_VALUES }], target: i0.ɵɵFactoryTarget.Component });
103
- static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.0", type: NgxMatEntityCreateDialogComponent, isStandalone: true, selector: "ngx-mat-entity-create-dialog", ngImport: i0, template: "<div class=\"mat-dialog-title\">\n <div>{{data.createDialogData.title}}</div>\n</div>\n\n<form>\n <mat-dialog-content>\n <mat-tab-group *ngIf=\"entityTabs.length > 1\" preserveContent>\n <mat-tab *ngFor=\"let tab of entityTabs\" [label]=\"tab.tabName\">\n <div class=\"row\" *ngFor=\"let row of tab.rows\">\n <ngx-mat-entity-input\n *ngFor=\"let key of row.keys\"\n [entity]=\"data.entity\"\n [propertyKey]=\"key\"\n [hideOmitForCreate]=\"true\"\n class=\"col-lg-{{EntityUtilities.getWidth(data.entity, key, 'lg')}} col-md-{{EntityUtilities.getWidth(data.entity, key, 'md')}} col-sm-{{EntityUtilities.getWidth(data.entity, key, 'sm')}}\"\n (inputChangeEvent)=\"checkIsEntityValid()\"\n >\n </ngx-mat-entity-input>\n </div>\n </mat-tab>\n </mat-tab-group>\n \n <div *ngIf=\"entityTabs.length <= 1\">\n <span class=\"no-entity-tabs\" *ngIf=\"!entityTabs.length\">\n ERROR: No Inputs. Did you correctly assign all values in the model constructor?\n </span>\n <div class=\"row\" *ngFor=\"let row of entityTabs[0]?.rows\">\n <ngx-mat-entity-input\n *ngFor=\"let key of row.keys\"\n [entity]=\"data.entity\"\n [propertyKey]=\"key\"\n [hideOmitForCreate]=\"true\"\n class=\"col-lg-{{EntityUtilities.getWidth(data.entity, key, 'lg')}} col-md-{{EntityUtilities.getWidth(data.entity, key, 'md')}} col-sm-{{EntityUtilities.getWidth(data.entity, key, 'sm')}}\"\n (inputChangeEvent)=\"checkIsEntityValid()\"\n >\n </ngx-mat-entity-input>\n </div>\n </div>\n </mat-dialog-content>\n \n <mat-dialog-actions>\n\n <div class=\"d-flex align-items-center gap-3\" style=\"margin-top: 10px;\">\n <button type=\"submit\" (click)=\"create()\" mat-raised-button\n [disabled]=\"!isEntityValid\"\n [matBadge]=\"validationErrors.length\"\n [matBadgeHidden]=\"!validationErrors.length\"\n matBadgeColor=\"warn\"\n >\n {{data.createDialogData.createButtonLabel}}\n </button>\n <ngx-mat-entity-tooltip *ngIf=\"validationErrors.length\" [tooltipContent]=\"tooltipContent\"></ngx-mat-entity-tooltip>\n </div>\n\n <button type=\"button\" mat-raised-button (click)=\"cancel()\" class=\"cancel-button\">\n {{data.createDialogData.cancelButtonLabel}}\n </button>\n </mat-dialog-actions>\n</form>\n", styles: [".mat-dialog-title{padding:20px;display:flex;justify-content:space-between;align-items:center}.mat-dialog-title div{font-size:var(--mdc-dialog-subhead-size, 14px);font-weight:var(--mdc-dialog-subhead-weight, 500)}.no-entity-tabs{padding:10px;background-color:red;color:#f5f5f5}::ng-deep .mdc-dialog .mdc-dialog__content{padding:6px 20px!important}mat-dialog-actions{justify-content:space-between;align-items:center;padding-left:20px;padding-right:20px}\n"], dependencies: [{ kind: "directive", type: NgFor, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "ngmodule", type: NgxMatEntityInputModule }, { kind: "component", type: i2.NgxMatEntityInputComponent, selector: "ngx-mat-entity-input", inputs: ["entity", "propertyKey", "getValidationErrorMessage", "hideOmitForCreate", "hideOmitForEdit", "validEmpty", "isReadOnly"], outputs: ["inputChangeEvent"] }, { kind: "ngmodule", type: MatDialogModule }, { kind: "directive", type: i1.MatDialogContent, selector: "[mat-dialog-content], mat-dialog-content, [matDialogContent]" }, { kind: "directive", type: i1.MatDialogActions, selector: "[mat-dialog-actions], mat-dialog-actions, [matDialogActions]", inputs: ["align"] }, { kind: "ngmodule", type: FormsModule }, { kind: "directive", type: i3.ɵNgNoValidate, selector: "form:not([ngNoForm]):not([ngNativeValidate])" }, { kind: "directive", type: i3.NgControlStatusGroup, selector: "[formGroupName],[formArrayName],[ngModelGroup],[formGroup],form:not([ngNoForm]),[ngForm]" }, { kind: "directive", type: i3.NgForm, selector: "form:not([ngNoForm]):not([formGroup]),ng-form,[ngForm]", inputs: ["ngFormOptions"], outputs: ["ngSubmit"], exportAs: ["ngForm"] }, { kind: "ngmodule", type: MatButtonModule }, { kind: "component", type: i4.MatButton, selector: " button[mat-button], button[mat-raised-button], button[mat-flat-button], button[mat-stroked-button] ", inputs: ["disabled", "disableRipple", "color"], exportAs: ["matButton"] }, { kind: "ngmodule", type: MatTabsModule }, { kind: "component", type: i5.MatTab, selector: "mat-tab", inputs: ["disabled"], exportAs: ["matTab"] }, { kind: "component", type: i5.MatTabGroup, selector: "mat-tab-group", inputs: ["color", "disableRipple", "fitInkBarToContent", "mat-stretch-tabs"], exportAs: ["matTabGroup"] }, { kind: "ngmodule", type: MatBadgeModule }, { kind: "directive", type: i6.MatBadge, selector: "[matBadge]", inputs: ["matBadgeDisabled", "matBadgeColor", "matBadgeOverlap", "matBadgePosition", "matBadge", "matBadgeDescription", "matBadgeSize", "matBadgeHidden"] }, { kind: "component", type: TooltipComponent, selector: "ngx-mat-entity-tooltip", inputs: ["tooltipContent"] }] });
123
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.0", ngImport: i0, type: NgxMatEntityCreateDialogComponent, deps: [{ token: MAT_DIALOG_DATA }, { token: i1.MatDialogRef }, { token: i0.EnvironmentInjector }, { token: i1.MatDialog }, { token: NGX_INTERNAL_GLOBAL_DEFAULT_VALUES }], target: i0.ɵɵFactoryTarget.Component });
124
+ static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.0", type: NgxMatEntityCreateDialogComponent, isStandalone: true, selector: "ngx-mat-entity-create-dialog", ngImport: i0, template: "<!-- eslint-disable angular/cyclomatic-complexity -->\n<!-- eslint-disable angular/no-call-expression -->\n \n<div class=\"mat-dialog-title\">\n <div>{{data.createData.title}}</div>\n</div>\n\n<form>\n <mat-dialog-content>\n <mat-tab-group *ngIf=\"entityTabs.length > 1\" preserveContent>\n <mat-tab *ngFor=\"let tab of entityTabs\" [label]=\"tab.tabName\">\n <div *ngFor=\"let row of tab.rows\" class=\"row\">\n <ngx-mat-entity-input\n *ngFor=\"let key of row.keys\"\n [entity]=\"data.entity\"\n [propertyKey]=\"key\"\n [hideOmitForCreate]=\"true\"\n [class]=\"EntityUtilities.getWidthClasses(data.entity, key)\"\n (inputChangeEvent)=\"checkIsEntityValid()\"\n >\n </ngx-mat-entity-input>\n </div>\n </mat-tab>\n </mat-tab-group>\n \n <div *ngIf=\"entityTabs.length <= 1\">\n <span *ngIf=\"!entityTabs.length\" class=\"no-entity-tabs\">\n ERROR: No Inputs. Did you correctly assign all values in the model constructor?\n </span>\n <div *ngFor=\"let row of entityTabs[0]?.rows\" class=\"row\">\n <ngx-mat-entity-input\n *ngFor=\"let key of row.keys\"\n [entity]=\"data.entity\"\n [propertyKey]=\"key\"\n [hideOmitForCreate]=\"true\"\n [class]=\"EntityUtilities.getWidthClasses(data.entity, key)\"\n (inputChangeEvent)=\"checkIsEntityValid()\"\n >\n </ngx-mat-entity-input>\n </div>\n </div>\n </mat-dialog-content>\n \n <mat-dialog-actions>\n\n <div class=\"d-flex align-items-center gap-3\" style=\"margin-top: 10px;\">\n <button type=\"submit\" mat-raised-button matBadgeColor=\"warn\"\n [disabled]=\"!isEntityValid\"\n [matBadge]=\"validationErrors.length\"\n [matBadgeHidden]=\"!validationErrors.length\"\n (click)=\"create()\"\n >\n {{data.createData.createButtonLabel}}\n </button>\n <ngx-mat-entity-tooltip *ngIf=\"validationErrors.length\" [tooltipContent]=\"tooltipContent\"></ngx-mat-entity-tooltip>\n </div>\n\n <button type=\"button\" mat-raised-button class=\"cancel-button\" (click)=\"cancel()\">\n {{data.createData.cancelButtonLabel}}\n </button>\n </mat-dialog-actions>\n</form>\n", styles: [".mat-dialog-title{padding:20px;display:flex;justify-content:space-between;align-items:center}.mat-dialog-title div{font-size:var(--mdc-dialog-subhead-size, 14px);font-weight:var(--mdc-dialog-subhead-weight, 500)}.no-entity-tabs{padding:10px;background-color:red;color:#f5f5f5}::ng-deep .mdc-dialog .mdc-dialog__content{padding:6px 20px!important}mat-dialog-actions{justify-content:space-between;align-items:center;padding-left:20px;padding-right:20px}\n"], dependencies: [{ kind: "directive", type: NgFor, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "ngmodule", type: NgxMatEntityInputModule }, { kind: "component", type: i2.NgxMatEntityInputComponent, selector: "ngx-mat-entity-input", inputs: ["entity", "propertyKey", "getValidationErrorMessage", "hideOmitForCreate", "hideOmitForEdit", "validEmpty", "isReadOnly"], outputs: ["inputChangeEvent"] }, { kind: "ngmodule", type: MatDialogModule }, { kind: "directive", type: i1.MatDialogContent, selector: "[mat-dialog-content], mat-dialog-content, [matDialogContent]" }, { kind: "directive", type: i1.MatDialogActions, selector: "[mat-dialog-actions], mat-dialog-actions, [matDialogActions]", inputs: ["align"] }, { kind: "ngmodule", type: FormsModule }, { kind: "directive", type: i3.ɵNgNoValidate, selector: "form:not([ngNoForm]):not([ngNativeValidate])" }, { kind: "directive", type: i3.NgControlStatusGroup, selector: "[formGroupName],[formArrayName],[ngModelGroup],[formGroup],form:not([ngNoForm]),[ngForm]" }, { kind: "directive", type: i3.NgForm, selector: "form:not([ngNoForm]):not([formGroup]),ng-form,[ngForm]", inputs: ["ngFormOptions"], outputs: ["ngSubmit"], exportAs: ["ngForm"] }, { kind: "ngmodule", type: MatButtonModule }, { kind: "component", type: i4.MatButton, selector: " button[mat-button], button[mat-raised-button], button[mat-flat-button], button[mat-stroked-button] ", inputs: ["disabled", "disableRipple", "color"], exportAs: ["matButton"] }, { kind: "ngmodule", type: MatTabsModule }, { kind: "component", type: i5.MatTab, selector: "mat-tab", inputs: ["disabled"], exportAs: ["matTab"] }, { kind: "component", type: i5.MatTabGroup, selector: "mat-tab-group", inputs: ["color", "disableRipple", "fitInkBarToContent", "mat-stretch-tabs"], exportAs: ["matTabGroup"] }, { kind: "ngmodule", type: MatBadgeModule }, { kind: "directive", type: i6.MatBadge, selector: "[matBadge]", inputs: ["matBadgeDisabled", "matBadgeColor", "matBadgeOverlap", "matBadgePosition", "matBadge", "matBadgeDescription", "matBadgeSize", "matBadgeHidden"] }, { kind: "component", type: TooltipComponent, selector: "ngx-mat-entity-tooltip", inputs: ["tooltipContent"] }] });
104
125
  }
105
126
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.0", ngImport: i0, type: NgxMatEntityCreateDialogComponent, decorators: [{
106
127
  type: Component,
@@ -114,12 +135,12 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.0", ngImpor
114
135
  MatTabsModule,
115
136
  MatBadgeModule,
116
137
  TooltipComponent
117
- ], template: "<div class=\"mat-dialog-title\">\n <div>{{data.createDialogData.title}}</div>\n</div>\n\n<form>\n <mat-dialog-content>\n <mat-tab-group *ngIf=\"entityTabs.length > 1\" preserveContent>\n <mat-tab *ngFor=\"let tab of entityTabs\" [label]=\"tab.tabName\">\n <div class=\"row\" *ngFor=\"let row of tab.rows\">\n <ngx-mat-entity-input\n *ngFor=\"let key of row.keys\"\n [entity]=\"data.entity\"\n [propertyKey]=\"key\"\n [hideOmitForCreate]=\"true\"\n class=\"col-lg-{{EntityUtilities.getWidth(data.entity, key, 'lg')}} col-md-{{EntityUtilities.getWidth(data.entity, key, 'md')}} col-sm-{{EntityUtilities.getWidth(data.entity, key, 'sm')}}\"\n (inputChangeEvent)=\"checkIsEntityValid()\"\n >\n </ngx-mat-entity-input>\n </div>\n </mat-tab>\n </mat-tab-group>\n \n <div *ngIf=\"entityTabs.length <= 1\">\n <span class=\"no-entity-tabs\" *ngIf=\"!entityTabs.length\">\n ERROR: No Inputs. Did you correctly assign all values in the model constructor?\n </span>\n <div class=\"row\" *ngFor=\"let row of entityTabs[0]?.rows\">\n <ngx-mat-entity-input\n *ngFor=\"let key of row.keys\"\n [entity]=\"data.entity\"\n [propertyKey]=\"key\"\n [hideOmitForCreate]=\"true\"\n class=\"col-lg-{{EntityUtilities.getWidth(data.entity, key, 'lg')}} col-md-{{EntityUtilities.getWidth(data.entity, key, 'md')}} col-sm-{{EntityUtilities.getWidth(data.entity, key, 'sm')}}\"\n (inputChangeEvent)=\"checkIsEntityValid()\"\n >\n </ngx-mat-entity-input>\n </div>\n </div>\n </mat-dialog-content>\n \n <mat-dialog-actions>\n\n <div class=\"d-flex align-items-center gap-3\" style=\"margin-top: 10px;\">\n <button type=\"submit\" (click)=\"create()\" mat-raised-button\n [disabled]=\"!isEntityValid\"\n [matBadge]=\"validationErrors.length\"\n [matBadgeHidden]=\"!validationErrors.length\"\n matBadgeColor=\"warn\"\n >\n {{data.createDialogData.createButtonLabel}}\n </button>\n <ngx-mat-entity-tooltip *ngIf=\"validationErrors.length\" [tooltipContent]=\"tooltipContent\"></ngx-mat-entity-tooltip>\n </div>\n\n <button type=\"button\" mat-raised-button (click)=\"cancel()\" class=\"cancel-button\">\n {{data.createDialogData.cancelButtonLabel}}\n </button>\n </mat-dialog-actions>\n</form>\n", styles: [".mat-dialog-title{padding:20px;display:flex;justify-content:space-between;align-items:center}.mat-dialog-title div{font-size:var(--mdc-dialog-subhead-size, 14px);font-weight:var(--mdc-dialog-subhead-weight, 500)}.no-entity-tabs{padding:10px;background-color:red;color:#f5f5f5}::ng-deep .mdc-dialog .mdc-dialog__content{padding:6px 20px!important}mat-dialog-actions{justify-content:space-between;align-items:center;padding-left:20px;padding-right:20px}\n"] }]
138
+ ], template: "<!-- eslint-disable angular/cyclomatic-complexity -->\n<!-- eslint-disable angular/no-call-expression -->\n \n<div class=\"mat-dialog-title\">\n <div>{{data.createData.title}}</div>\n</div>\n\n<form>\n <mat-dialog-content>\n <mat-tab-group *ngIf=\"entityTabs.length > 1\" preserveContent>\n <mat-tab *ngFor=\"let tab of entityTabs\" [label]=\"tab.tabName\">\n <div *ngFor=\"let row of tab.rows\" class=\"row\">\n <ngx-mat-entity-input\n *ngFor=\"let key of row.keys\"\n [entity]=\"data.entity\"\n [propertyKey]=\"key\"\n [hideOmitForCreate]=\"true\"\n [class]=\"EntityUtilities.getWidthClasses(data.entity, key)\"\n (inputChangeEvent)=\"checkIsEntityValid()\"\n >\n </ngx-mat-entity-input>\n </div>\n </mat-tab>\n </mat-tab-group>\n \n <div *ngIf=\"entityTabs.length <= 1\">\n <span *ngIf=\"!entityTabs.length\" class=\"no-entity-tabs\">\n ERROR: No Inputs. Did you correctly assign all values in the model constructor?\n </span>\n <div *ngFor=\"let row of entityTabs[0]?.rows\" class=\"row\">\n <ngx-mat-entity-input\n *ngFor=\"let key of row.keys\"\n [entity]=\"data.entity\"\n [propertyKey]=\"key\"\n [hideOmitForCreate]=\"true\"\n [class]=\"EntityUtilities.getWidthClasses(data.entity, key)\"\n (inputChangeEvent)=\"checkIsEntityValid()\"\n >\n </ngx-mat-entity-input>\n </div>\n </div>\n </mat-dialog-content>\n \n <mat-dialog-actions>\n\n <div class=\"d-flex align-items-center gap-3\" style=\"margin-top: 10px;\">\n <button type=\"submit\" mat-raised-button matBadgeColor=\"warn\"\n [disabled]=\"!isEntityValid\"\n [matBadge]=\"validationErrors.length\"\n [matBadgeHidden]=\"!validationErrors.length\"\n (click)=\"create()\"\n >\n {{data.createData.createButtonLabel}}\n </button>\n <ngx-mat-entity-tooltip *ngIf=\"validationErrors.length\" [tooltipContent]=\"tooltipContent\"></ngx-mat-entity-tooltip>\n </div>\n\n <button type=\"button\" mat-raised-button class=\"cancel-button\" (click)=\"cancel()\">\n {{data.createData.cancelButtonLabel}}\n </button>\n </mat-dialog-actions>\n</form>\n", styles: [".mat-dialog-title{padding:20px;display:flex;justify-content:space-between;align-items:center}.mat-dialog-title div{font-size:var(--mdc-dialog-subhead-size, 14px);font-weight:var(--mdc-dialog-subhead-weight, 500)}.no-entity-tabs{padding:10px;background-color:red;color:#f5f5f5}::ng-deep .mdc-dialog .mdc-dialog__content{padding:6px 20px!important}mat-dialog-actions{justify-content:space-between;align-items:center;padding-left:20px;padding-right:20px}\n"] }]
118
139
  }], ctorParameters: function () { return [{ type: undefined, decorators: [{
119
140
  type: Inject,
120
141
  args: [MAT_DIALOG_DATA]
121
- }] }, { type: i1.MatDialogRef }, { type: i0.Injector }, { type: i1.MatDialog }, { type: undefined, decorators: [{
142
+ }] }, { type: i1.MatDialogRef }, { type: i0.EnvironmentInjector }, { type: i1.MatDialog }, { type: undefined, decorators: [{
122
143
  type: Inject,
123
144
  args: [NGX_INTERNAL_GLOBAL_DEFAULT_VALUES]
124
145
  }] }]; } });
125
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY3JlYXRlLWVudGl0eS1kaWFsb2cuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvbmd4LW1hdGVyaWFsLWVudGl0eS9zcmMvY29tcG9uZW50cy90YWJsZS9jcmVhdGUtZGlhbG9nL2NyZWF0ZS1lbnRpdHktZGlhbG9nLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL25neC1tYXRlcmlhbC1lbnRpdHkvc3JjL2NvbXBvbmVudHMvdGFibGUvY3JlYXRlLWRpYWxvZy9jcmVhdGUtZW50aXR5LWRpYWxvZy5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsS0FBSyxFQUFFLElBQUksRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBQzlDLE9BQU8sRUFBRSxTQUFTLEVBQUUsTUFBTSxFQUFFLFFBQVEsRUFBVSxxQkFBcUIsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUMzRixPQUFPLEVBQUUsV0FBVyxFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFDN0MsT0FBTyxFQUFFLGNBQWMsRUFBRSxNQUFNLHlCQUF5QixDQUFDO0FBQ3pELE9BQU8sRUFBRSxlQUFlLEVBQUUsTUFBTSwwQkFBMEIsQ0FBQztBQUMzRCxPQUFPLEVBQUUsZUFBZSxFQUFFLFNBQVMsRUFBRSxlQUFlLEVBQUUsWUFBWSxFQUFFLE1BQU0sMEJBQTBCLENBQUM7QUFDckcsT0FBTyxFQUFFLGFBQWEsRUFBRSxNQUFNLHdCQUF3QixDQUFDO0FBRXZELE9BQU8sRUFBRSxrQ0FBa0MsRUFBRSxNQUFNLDhDQUE4QyxDQUFDO0FBQ2xHLE9BQU8sRUFBRSxpQ0FBaUMsRUFBRSxNQUFNLHNFQUFzRSxDQUFDO0FBR3pILE9BQU8sRUFBYSxlQUFlLEVBQUUsTUFBTSxxQ0FBcUMsQ0FBQztBQUNqRixPQUFPLEVBQW1CLG1CQUFtQixFQUFFLE1BQU0seUNBQXlDLENBQUM7QUFDL0Ys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QUNYLGVBQWU7d0JBQ2YsYUFBYTt3QkFDYixjQUFjO3dCQUNkLGdCQUFnQjtxQkFDbkI7OzBCQWdCSSxNQUFNOzJCQUFDLGVBQWU7OzBCQUt0QixNQUFNOzJCQUFDLGtDQUFrQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IE5nRm9yLCBOZ0lmIH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uJztcbmltcG9ydCB7IENvbXBvbmVudCwgSW5qZWN0LCBJbmplY3RvciwgT25Jbml0LCBydW5JbkluamVjdGlvbkNvbnRleHQgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IEZvcm1zTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvZm9ybXMnO1xuaW1wb3J0IHsgTWF0QmFkZ2VNb2R1bGUgfSBmcm9tICdAYW5ndWxhci9tYXRlcmlhbC9iYWRnZSc7XG5pbXBvcnQgeyBNYXRCdXR0b25Nb2R1bGUgfSBmcm9tICdAYW5ndWxhci9tYXRlcmlhbC9idXR0b24nO1xuaW1wb3J0IHsgTUFUX0RJQUxPR19EQVRBLCBNYXREaWFsb2csIE1hdERpYWxvZ01vZHVsZSwgTWF0RGlhbG9nUmVmIH0gZnJvbSAnQGFuZ3VsYXIvbWF0ZXJpYWwvZGlhbG9nJztcbmltcG9ydCB7IE1hdFRhYnNNb2R1bGUgfSBmcm9tICdAYW5ndWxhci9tYXRlcmlhbC90YWJzJztcbmltcG9ydCB7IEJhc2VFbnRpdHlUeXBlIH0gZnJvbSAnLi4vLi4vLi4vY2xhc3Nlcy9lbnRpdHkubW9kZWwnO1xuaW1wb3J0IHsgTkdYX0lOVEVSTkFMX0dMT0JBTF9ERUZBVUxUX1ZBTFVFUyB9IGZyb20gJy4uLy4uLy4uL2RlZmF1bHQtZ2xvYmFsLWNvbmZpZ3VyYXRpb24tdmFsdWVzJztcbmltcG9ydCB7IGdldFZhbGlkYXRpb25FcnJvcnNUb29sdGlwQ29udGVudCB9IGZyb20gJy4uLy4uLy4uL2Z1bmN0aW9ucy9nZXQtdmFsaWRhdGlvbi1lcnJvcnMtdG9vbHRpcC1jb250ZW50LmZ1bmN0aW9uLnRzJztcbmltcG9ydCB7IE5neEdsb2JhbERlZmF1bHRWYWx1ZXMgfSBmcm9tICcuLi8uLi8uLi9nbG9iYWwtY29uZmlndXJhdGlvbi12YWx1ZXMnO1xuaW1wb3J0IHsgRW50aXR5U2VydmljZSB9IGZyb20gJy4uLy4uLy4uL3NlcnZpY2VzL2VudGl0eS5zZXJ2aWNlJztcbmltcG9ydCB7IEVudGl0eVRhYiwgRW50aXR5VXRpbGl0aWVzIH0gZnJvbSAnLi4vLi4vLi4vdXRpbGl0aWVzL2VudGl0eS51dGlsaXRpZXMnO1xuaW1wb3J0IHsgVmFsaWRhdGlvbkVycm9yLCBWYWxpZGF0aW9uVXRpbGl0aWVzIH0gZnJvbSAnLi4vLi4vLi4vdXRpbGl0aWVzL3ZhbGlkYXRpb24udXRpbGl0aWVzJztcbmltcG9ydCB7IENvbmZpcm1EaWFsb2dEYXRhQnVpbGRlciwgQ29uZmlybURpYWxvZ0RhdGFJbnRlcm5hbCB9IGZyb20gJy4uLy4uL2NvbmZpcm0tZGlhbG9nL2NvbmZpcm0tZGlhbG9nLWRhdGEuYnVpbGRlcic7XG5pbXBvcnQgeyBOZ3hNYXRFbnRpdHlDb25maXJtRGlhbG9nQ29tcG9uZW50IH0gZnJvbSAnLi4vLi4vY29uZmlybS1kaWFsb2cvY29uZmlybS1kaWFsb2cuY29tcG9uZW50JztcbmltcG9ydCB7IE5neE1hdEVudGl0eUlucHV0TW9kdWxlIH0gZnJvbSAnLi4vLi4vaW5wdXQvaW5wdXQubW9kdWxlJztcbmltcG9ydCB7IFRvb2x0aXBDb21wb25lbnQgfSBmcm9tICcuLi8uLi90b29sdGlwL3Rvb2x0aXAuY29tcG9uZW50JztcbmltcG9ydCB7IENyZWF0ZUVudGl0eURpYWxvZ0RhdGEgfSBmcm9tICcuL2NyZWF0ZS1lbnRpdHktZGlhbG9nLWRhdGEnO1xuaW1wb3J0IHsgQ3JlYXRlRW50aXR5RGlhbG9nRGF0YUJ1aWxkZXIsIENyZWF0ZUVudGl0eURpYWxvZ0RhdGFJbnRlcm5hbCB9IGZyb20gJy4vY3JlYXRlLWVudGl0eS1kaWFsb2ctZGF0YS5idWlsZGVyJztcblxuLyoqXG4gKiBUaGUgZGVmYXVsdCBkaWFsb2cgdXNlZCB0byBjcmVhdGUgbmV3IGVudGl0aWVzIGJhc2VkIG9uIHRoZSBjb25maWd1cmF0aW9uIHBhc3NlZCBpbiB0aGUgTUFUX0RJQUxPR19EQVRBIFwiaW5wdXREYXRhXCIuXG4gKiBVc2VkIGJ5IHRoZSBuZ3gtbWF0LWVudGl0eS10YWJsZS5cbiAqXG4gKiBJdCBvZmZlcnMgYSBsb3Qgb2YgY3VzdG9taXphdGlvbiBvcHRpb25zIHdoaWNoIGNhbiBiZSBmb3VuZCBpbiBcIkNyZWF0ZUVudGl0eURpYWxvZ0RhdGFcIi5cbiAqL1xuQENvbXBvbmVudCh7XG4gICAgc2VsZWN0b3I6ICduZ3gtbWF0LWVudGl0eS1jcmVhdGUtZGlhbG9nJyxcbiAgICB0ZW1wbGF0ZVVybDogJy4vY3JlYXRlLWVudGl0eS1kaWFsb2cuY29tcG9uZW50Lmh0bWwnLFxuICAgIHN0eWxlVXJsczogWycuL2NyZWF0ZS1lbnRpdHktZGlhbG9nLmNvbXBvbmVudC5zY3NzJ10sXG4gICAgc3RhbmRhbG9uZTogdHJ1ZSxcbiAgICBpbXBvcnRzOiBbXG4gICAgICAgIE5nRm9yLFxuICAgICAgICBOZ0lmLFxuICAgICAgICBOZ3hNYXRFbnRpdHlJbnB1dE1vZHVsZSxcbiAgICAgICAgTWF0RGlhbG9nTW9kdWxlLFxuICAgICAgICBGb3Jtc01vZHVsZSxcbiAgICAgICAgTWF0QnV0dG9uTW9kdWxlLFxuICAgICAgICBNYXRUYWJzTW9kdWxlLFxuICAgICAgICBNYXRCYWRnZU1vZHVsZSxcbiAgICAgICAgVG9vbHRpcENvbXBvbmVudFxuICAgIF1cbn0pXG5leHBvcnQgY2xhc3MgTmd4TWF0RW50aXR5Q3JlYXRlRGlhbG9nQ29tcG9uZW50PEVudGl0eVR5cGUgZXh0ZW5kcyBCYXNlRW50aXR5VHlwZTxFbnRpdHlUeXBlPj4gaW1wbGVtZW50cyBPbkluaXQge1xuICAgIEVudGl0eVV0aWxpdGllczogdHlwZW9mIEVudGl0eVV0aWxpdGllcyA9IEVudGl0eVV0aWxpdGllcztcblxuICAgIGVudGl0eVRhYnMhOiBFbnRpdHlUYWI8RW50aXR5VHlwZT5bXTtcblxuICAgIGVudGl0eVNlcnZpY2UhOiBFbnRpdHlTZXJ2aWNlPEVudGl0eVR5cGU+O1xuXG4gICAgZGF0YSE6IENyZWF0ZUVudGl0eURpYWxvZ0RhdGFJbnRlcm5hbDxFbnRpdHlUeXBlPjtcblxuICAgIGlzRW50aXR5VmFsaWQ6IGJvb2xlYW4gPSBmYWxzZTtcbiAgICB2YWxpZGF0aW9uRXJyb3JzOiBWYWxpZGF0aW9uRXJyb3JbXSA9IFtdO1xuICAgIHRvb2x0aXBDb250ZW50OiBzdHJpbmcgPSAnJztcblxuICAgIGNvbnN0cnVjdG9yKFxuICAgICAgICBASW5qZWN0KE1BVF9ESUFMT0dfREFUQSlcbiAgICAgICAgcHJpdmF0ZSByZWFkb25seSBpbnB1dERhdGE6IENyZWF0ZUVudGl0eURpYWxvZ0RhdGE8RW50aXR5VHlwZT4sXG4gICAgICAgIHB1YmxpYyBkaWFsb2dSZWY6IE1hdERpYWxvZ1JlZjxOZ3hNYXRFbnRpdHlDcmVhdGVEaWFsb2dDb21wb25lbnQ8RW50aXR5VHlwZT4+LFxuICAgICAgICBwcml2YXRlIHJlYWRvbmx5IGluamVjdG9yOiBJbmplY3RvcixcbiAgICAgICAgcHJpdmF0ZSByZWFkb25seSBkaWFsb2c6IE1hdERpYWxvZyxcbiAgICAgICAgQEluamVjdChOR1hfSU5URVJOQUxfR0xPQkFMX0RFRkFVTFRfVkFMVUVTKVxuICAgICAgICBwcm90ZWN0ZWQgcmVhZG9ubHkgZ2xvYmFsQ29uZmlnOiBOZ3hHbG9iYWxEZWZhdWx0VmFsdWVzXG4gICAgKSB7fVxuXG4gICAgbmdPbkluaXQoKTogdm9pZCB7XG4gICAgICAgIHRoaXMuZGF0YSA9IG5ldyBDcmVhdGVFbnRpdHlEaWFsb2dEYXRhQnVpbGRlcih0aGlzLmlucHV0RGF0YSwgdGhpcy5nbG9iYWxDb25maWcpLmdldFJlc3VsdCgpO1xuICAgICAgICB0aGlzLmRpYWxvZ1JlZi5kaXNhYmxlQ2xvc2UgPSB0cnVlO1xuICAgICAgICB0aGlzLmVudGl0eVRhYnMgPSBFbnRpdHlVdGlsaXRpZXMuZ2V0RW50aXR5VGFicyh0aGlzLmRhdGEuZW50aXR5LCB0cnVlKTtcbiAgICAgICAgdGhpcy5lbnRpdHlTZXJ2aWNlID0gdGhpcy5pbmplY3Rvci5nZXQodGhpcy5kYXRhLkVudGl0eVNlcnZpY2VDbGFzcykgYXMgRW50aXR5U2VydmljZTxFbnRpdHlUeXBlPjtcbiAgICAgICAgc2V0VGltZW91dCgoKSA9PiB0aGlzLmNoZWNrSXNFbnRpdHlWYWxpZCgpLCAxKTtcbiAgICB9XG5cbiAgICAvKipcbiAgICAgKiBDaGVja3MgaWYgdGhlIGVudGl0eSBpcyB2YWxpZC5cbiAgICAgKi9cbiAgICBjaGVja0lzRW50aXR5VmFsaWQoKTogdm9pZCB7XG4gICAgICAgIHRoaXMudmFsaWRhdGlvbkVycm9ycyA9IFZhbGlkYXRpb25VdGlsaXRpZXMuZ2V0RW50aXR5VmFsaWRhdGlvbkVycm9ycyh0aGlzLmRhdGEuZW50aXR5LCAnY3JlYXRlJyk7XG4gICAgICAgIHRoaXMudG9vbHRpcENvbnRlbnQgPSBydW5JbkluamVjdGlvbkNvbnRleHQodGhpcy5pbmplY3RvciwgKCkgPT4gZ2V0VmFsaWRhdGlvbkVycm9yc1Rvb2x0aXBDb250ZW50KHRoaXMudmFsaWRhdGlvbkVycm9ycykpO1xuICAgICAgICB0aGlzLmlzRW50aXR5VmFsaWQgPSB0aGlzLnZhbGlkYXRpb25FcnJvcnMubGVuZ3RoID09PSAwO1xuICAgIH1cblxuICAgIC8qKlxuICAgICAqIFRyaWVzIGFkZCB0aGUgbmV3IGVudGl0eSBhbmQgY2xvc2UgdGhlIGRpYWxvZyBhZnRlcndhcmRzLlxuICAgICAqIEFsc28gaGFuZGxlcyB0aGUgY29uZmlybWF0aW9uIGlmIHJlcXVpcmVkLlxuICAgICAqL1xuICAgIGNyZWF0ZSgpOiB2b2lkIHtcbiAgICAgICAgaWYgKCF0aGlzLmlzRW50aXR5VmFsaWQpIHtcbiAgICAgICAgICAgIHJldHVybjtcbiAgICAgICAgfVxuICAgICAgICBpZiAoIXRoaXMuZGF0YS5jcmVhdGVEaWFsb2dEYXRhLmNyZWF0ZVJlcXVpcmVzQ29uZmlybURpYWxvZykge1xuICAgICAgICAgICAgdGhpcy5jb25maXJtQ3JlYXRlKCk7XG4gICAgICAgICAgICByZXR1cm47XG4gICAgICAgIH1cbiAgICAgICAgY29uc3QgZGlhbG9nRGF0YTogQ29uZmlybURpYWxvZ0RhdGFJbnRlcm5hbCA9IG5ldyBDb25maXJtRGlhbG9nRGF0YUJ1aWxkZXIoXG4gICAgICAgICAgICB0aGlzLmdsb2JhbENvbmZpZyxcbiAgICAgICAgICAgIHRoaXMuZGF0YS5jcmVhdGVEaWFsb2dEYXRhLmNvbmZpcm1DcmVhdGVEaWFsb2dEYXRhXG4gICAgICAgIClcbiAgICAgICAgICAgIC53aXRoRGVmYXVsdCgndGV4dCcsIHRoaXMuZ2xvYmFsQ29uZmlnLmNvbmZpcm1DcmVhdGVUZXh0KVxuICAgICAgICAgICAgLndpdGhEZWZhdWx0KCdjb25maXJtQnV0dG9uTGFiZWwnLCB0aGlzLmdsb2JhbENvbmZpZy5jcmVhdGVMYWJlbClcbiAgICAgICAgICAgIC53aXRoRGVmYXVsdCgndGl0bGUnLCB0aGlzLmdsb2JhbENvbmZpZy5jcmVhdGVMYWJlbClcbiAgICAgICAgICAgIC5nZXRSZXN1bHQoKTtcbiAgICAgICAgY29uc3QgZGlhbG9nUmVmOiBNYXREaWFsb2dSZWY8Tmd4TWF0RW50aXR5Q29uZmlybURpYWxvZ0NvbXBvbmVudCwgYm9vbGVhbj4gPSB0aGlzLmRpYWxvZy5vcGVuKE5neE1hdEVudGl0eUNvbmZpcm1EaWFsb2dDb21wb25lbnQsIHtcbiAgICAgICAgICAgIGRhdGE6IGRpYWxvZ0RhdGEsXG4gICAgICAgICAgICBhdXRvRm9jdXM6IGZhbHNlLFxuICAgICAgICAgICAgcmVzdG9yZUZvY3VzOiBmYWxzZVxuICAgICAgICB9KTtcbiAgICAgICAgZGlhbG9nUmVmLmFmdGVyQ2xvc2VkKCkuc3Vic2NyaWJlKHJlcyA9PiB7XG4gICAgICAgICAgICBpZiAocmVzID09IHRydWUpIHtcbiAgICAgICAgICAgICAgICB0aGlzLmNvbmZpcm1DcmVhdGUoKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfSk7XG4gICAgfVxuICAgIHByaXZhdGUgY29uZmlybUNyZWF0ZSgpOiB2b2lkIHtcbiAgICAgICAgdm9pZCB0aGlzLmVudGl0eVNlcnZpY2UuY3JlYXRlKHRoaXMuZGF0YS5lbnRpdHkpLnRoZW4oKCkgPT4gdGhpcy5kaWFsb2dSZWYuY2xvc2UoKSk7XG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogQ2xvc2VzIHRoZSBkaWFsb2cuXG4gICAgICovXG4gICAgY2FuY2VsKCk6IHZvaWQge1xuICAgICAgICB0aGlzLmRpYWxvZ1JlZi5jbG9zZSgpO1xuICAgIH1cbn0iLCI8ZGl2IGNsYXNzPVwibWF0LWRpYWxvZy10aXRsZVwiPlxuICAgIDxkaXY+e3tkYXRhLmNyZWF0ZURpYWxvZ0RhdGEudGl0bGV9fTwvZGl2PlxuPC9kaXY+XG5cbjxmb3JtPlxuICAgIDxtYXQtZGlhbG9nLWNvbnRlbnQ+XG4gICAgICAgIDxtYXQtdGFiLWdyb3VwICpuZ0lmPVwiZW50aXR5VGFicy5sZW5ndGggPiAxXCIgcHJlc2VydmVDb250ZW50PlxuICAgICAgICAgICAgPG1hdC10YWIgKm5nRm9yPVwibGV0IHRhYiBvZiBlbnRpdHlUYWJzXCIgW2xhYmVsXT1cInRhYi50YWJOYW1lXCI+XG4gICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cInJvd1wiICpuZ0Zvcj1cImxldCByb3cgb2YgdGFiLnJvd3NcIj5cbiAgICAgICAgICAgICAgICAgICAgPG5neC1tYXQtZW50aXR5LWlucHV0XG4gICAgICAgICAgICAgICAgICAgICAgICAqbmdGb3I9XCJsZXQga2V5IG9mIHJvdy5rZXlzXCJcbiAgICAgICAgICAgICAgICAgICAgICAgIFtlbnRpdHldPVwiZGF0YS5lbnRpdHlcIlxuICAgICAgICAgICAgICAgICAgICAgICAgW3Byb3BlcnR5S2V5XT1cImtleVwiXG4gICAgICAgICAgICAgICAgICAgICAgICBbaGlkZU9taXRGb3JDcmVhdGVdPVwidHJ1ZVwiXG4gICAgICAgICAgICAgICAgICAgICAgICBjbGFzcz1cImNvbC1sZy17e0VudGl0eVV0aWxpdGllcy5nZXRXaWR0aChkYXRhLmVudGl0eSwga2V5LCAnbGcnKX19IGNvbC1tZC17e0VudGl0eVV0aWxpdGllcy5nZXRXaWR0aChkYXRhLmVudGl0eSwga2V5LCAnbWQnKX19IGNvbC1zbS17e0VudGl0eVV0aWxpdGllcy5nZXRXaWR0aChkYXRhLmVudGl0eSwga2V5LCAnc20nKX19XCJcbiAgICAgICAgICAgICAgICAgICAgICAgIChpbnB1dENoYW5nZUV2ZW50KT1cImNoZWNrSXNFbnRpdHlWYWxpZCgpXCJcbiAgICAgICAgICAgICAgICAgICAgPlxuICAgICAgICAgICAgICAgICAgICA8L25neC1tYXQtZW50aXR5LWlucHV0PlxuICAgICAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgPC9tYXQtdGFiPlxuICAgICAgICA8L21hdC10YWItZ3JvdXA+XG4gICAgXG4gICAgICAgIDxkaXYgKm5nSWY9XCJlbnRpdHlUYWJzLmxlbmd0aCA8PSAxXCI+XG4gICAgICAgICAgICA8c3BhbiBjbGFzcz1cIm5vLWVudGl0eS10YWJzXCIgKm5nSWY9XCIhZW50aXR5VGFicy5sZW5ndGhcIj5cbiAgICAgICAgICAgICAgICBFUlJPUjogTm8gSW5wdXRzLiBEaWQgeW91IGNvcnJlY3RseSBhc3NpZ24gYWxsIHZhbHVlcyBpbiB0aGUgbW9kZWwgY29uc3RydWN0b3I/XG4gICAgICAgICAgICA8L3NwYW4+XG4gICAgICAgICAgICA8ZGl2IGNsYXNzPVwicm93XCIgKm5nRm9yPVwibGV0IHJvdyBvZiBlbnRpdHlUYWJzWzBdPy5yb3dzXCI+XG4gICAgICAgICAgICAgICAgPG5neC1tYXQtZW50aXR5LWlucHV0XG4gICAgICAgICAgICAgICAgICAgICpuZ0Zvcj1cImxldCBrZXkgb2Ygcm93LmtleXNcIlxuICAgICAgICAgICAgICAgICAgICBbZW50aXR5XT1cImRhdGEuZW50aXR5XCJcbiAgICAgICAgICAgICAgICAgICAgW3Byb3BlcnR5S2V5XT1cImtleVwiXG4gICAgICAgICAgICAgICAgICAgIFtoaWRlT21pdEZvckNyZWF0ZV09XCJ0cnVlXCJcbiAgICAgICAgICAgICAgICAgICAgY2xhc3M9XCJjb2wtbGcte3tFbnRpdHlVdGlsaXRpZXMuZ2V0V2lkdGgoZGF0YS5lbnRpdHksIGtleSwgJ2xnJyl9fSBjb2wtbWQte3tFbnRpdHlVdGlsaXRpZXMuZ2V0V2lkdGgoZGF0YS5lbnRpdHksIGtleSwgJ21kJyl9fSBjb2wtc20te3tFbnRpdHlVdGlsaXRpZXMuZ2V0V2lkdGgoZGF0YS5lbnRpdHksIGtleSwgJ3NtJyl9fVwiXG4gICAgICAgICAgICAgICAgICAgIChpbnB1dENoYW5nZUV2ZW50KT1cImNoZWNrSXNFbnRpdHlWYWxpZCgpXCJcbiAgICAgICAgICAgICAgICA+XG4gICAgICAgICAgICAgICAgPC9uZ3gtbWF0LWVudGl0eS1pbnB1dD5cbiAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICA8L2Rpdj5cbiAgICA8L21hdC1kaWFsb2ctY29udGVudD5cbiAgICBcbiAgICA8bWF0LWRpYWxvZy1hY3Rpb25zPlxuXG4gICAgICAgIDxkaXYgY2xhc3M9XCJkLWZsZXggYWxpZ24taXRlbXMtY2VudGVyIGdhcC0zXCIgc3R5bGU9XCJtYXJnaW4tdG9wOiAxMHB4O1wiPlxuICAgICAgICAgICAgPGJ1dHRvbiB0eXBlPVwic3VibWl0XCIgKGNsaWNrKT1cImNyZWF0ZSgpXCIgbWF0LXJhaXNlZC1idXR0b25cbiAgICAgICAgICAgICAgICBbZGlzYWJsZWRdPVwiIWlzRW50aXR5VmFsaWRcIlxuICAgICAgICAgICAgICAgIFttYXRCYWRnZV09XCJ2YWxpZGF0aW9uRXJyb3JzLmxlbmd0aFwiXG4gICAgICAgICAgICAgICAgW21hdEJhZGdlSGlkZGVuXT1cIiF2YWxpZGF0aW9uRXJyb3JzLmxlbmd0aFwiXG4gICAgICAgICAgICAgICAgbWF0QmFkZ2VDb2xvcj1cIndhcm5cIlxuICAgICAgICAgICAgPlxuICAgICAgICAgICAgICAgIHt7ZGF0YS5jcmVhdGVEaWFsb2dEYXRhLmNyZWF0ZUJ1dHRvbkxhYmVsfX1cbiAgICAgICAgICAgIDwvYnV0dG9uPlxuICAgICAgICAgICAgPG5neC1tYXQtZW50aXR5LXRvb2x0aXAgKm5nSWY9XCJ2YWxpZGF0aW9uRXJyb3JzLmxlbmd0aFwiIFt0b29sdGlwQ29udGVudF09XCJ0b29sdGlwQ29udGVudFwiPjwvbmd4LW1hdC1lbnRpdHktdG9vbHRpcD5cbiAgICAgICAgPC9kaXY+XG5cbiAgICAgICAgPGJ1dHRvbiB0eXBlPVwiYnV0dG9uXCIgbWF0LXJhaXNlZC1idXR0b24gKGNsaWNrKT1cImNhbmNlbCgpXCIgY2xhc3M9XCJjYW5jZWwtYnV0dG9uXCI+XG4gICAgICAgICAgICB7e2RhdGEuY3JlYXRlRGlhbG9nRGF0YS5jYW5jZWxCdXR0b25MYWJlbH19XG4gICAgICAgIDwvYnV0dG9uPlxuICAgIDwvbWF0LWRpYWxvZy1hY3Rpb25zPlxuPC9mb3JtPlxuIl19
146
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY3JlYXRlLWVudGl0eS1kaWFsb2cuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvbmd4LW1hdGVyaWFsLWVudGl0eS9zcmMvY29tcG9uZW50cy90YWJsZS9jcmVhdGUtZGlhbG9nL2NyZWF0ZS1lbnRpdHktZGlhbG9nLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL25neC1tYXRlcmlhbC1lbnRpdHkvc3JjL2NvbXBvbmVudHMvdGFibGUvY3JlYXRlLWRpYWxvZy9jcmVhdGUtZW50aXR5LWRpYWxvZy5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsS0FBSyxFQUFFLElBQUksRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBQzlDLE9BQU8sRUFBRSxTQUFTLEVBQUUsbUJBQW1CLEVBQUUsTUFBTSxFQUFVLHFCQUFxQixFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQ3RHLE9BQU8sRUFBRSxXQUFXLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUM3QyxPQUFPLEVBQUUsY0FBYyxFQUFFLE1BQU0seUJBQXlCLENBQUM7QUFDekQsT0FBTyxFQUFFLGVBQWUsRUFBRSxNQUFNLDBCQUEwQixDQUFDO0FBQzNELE9BQU8sRUFBRSxlQUFlLEVBQUUsU0FBUyxFQUFFLGVBQWUsRUFBRSxZQUFZLEVBQUUsTUFBTSwwQkFBMEIsQ0FBQztBQUNyRyxPQUFPLEVBQUUsYUFBYSxFQUFFLE1BQU0sd0JBQXdCLENBQUM7QUFFdkQsT0FBTyxFQUFFLGtDQUFrQyxFQUFFLE1BQU0sOENBQThDLENBQUM7QUFDbEcsT0FBTyxFQUFFLGlDQUFpQyxFQUFFLE1BQU0sc0VBQXNFLENBQUM7QUFHekgsT0FBTyxFQUFhLGVBQWUsRUFBRSxNQUFNLHFDQUFxQyxDQUFDO0FBQ2pGLE9BQU8sRUFBbUIsbUJBQW1CLEVBQUUsTUFBTSx5Q0FBeUMsQ0FBQztBQUMv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QjdDLFNBQVM7K0JBQ0ksOEJBQThCLGNBRzVCLElBQUksV0FDUDt3QkFDTCxLQUFLO3dCQUNMLElBQUk7d0JBQ0osdUJBQXVCO3dCQUN2QixlQUFlO3dCQUNmLFdBQVc7d0JBQ1gsZUFBZTt3QkFDZixhQUFhO3dCQUNiLGNBQWM7d0JBQ2QsZ0JBQWdCO3FCQUNuQjs7MEJBcUNJLE1BQU07MkJBQUMsZUFBZTs7MEJBS3RCLE1BQU07MkJBQUMsa0NBQWtDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgTmdGb3IsIE5nSWYgfSBmcm9tICdAYW5ndWxhci9jb21tb24nO1xuaW1wb3J0IHsgQ29tcG9uZW50LCBFbnZpcm9ubWVudEluamVjdG9yLCBJbmplY3QsIE9uSW5pdCwgcnVuSW5JbmplY3Rpb25Db250ZXh0IH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBGb3Jtc01vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2Zvcm1zJztcbmltcG9ydCB7IE1hdEJhZGdlTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvbWF0ZXJpYWwvYmFkZ2UnO1xuaW1wb3J0IHsgTWF0QnV0dG9uTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvbWF0ZXJpYWwvYnV0dG9uJztcbmltcG9ydCB7IE1BVF9ESUFMT0dfREFUQSwgTWF0RGlhbG9nLCBNYXREaWFsb2dNb2R1bGUsIE1hdERpYWxvZ1JlZiB9IGZyb20gJ0Bhbmd1bGFyL21hdGVyaWFsL2RpYWxvZyc7XG5pbXBvcnQgeyBNYXRUYWJzTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvbWF0ZXJpYWwvdGFicyc7XG5pbXBvcnQgeyBCYXNlRW50aXR5VHlwZSB9IGZyb20gJy4uLy4uLy4uL2NsYXNzZXMvZW50aXR5Lm1vZGVsJztcbmltcG9ydCB7IE5HWF9JTlRFUk5BTF9HTE9CQUxfREVGQVVMVF9WQUxVRVMgfSBmcm9tICcuLi8uLi8uLi9kZWZhdWx0LWdsb2JhbC1jb25maWd1cmF0aW9uLXZhbHVlcyc7XG5pbXBvcnQgeyBnZXRWYWxpZGF0aW9uRXJyb3JzVG9vbHRpcENvbnRlbnQgfSBmcm9tICcuLi8uLi8uLi9mdW5jdGlvbnMvZ2V0LXZhbGlkYXRpb24tZXJyb3JzLXRvb2x0aXAtY29udGVudC5mdW5jdGlvbi50cyc7XG5pbXBvcnQgeyBOZ3hHbG9iYWxEZWZhdWx0VmFsdWVzIH0gZnJvbSAnLi4vLi4vLi4vZ2xvYmFsLWNvbmZpZ3VyYXRpb24tdmFsdWVzJztcbmltcG9ydCB7IEVudGl0eVNlcnZpY2UgfSBmcm9tICcuLi8uLi8uLi9zZXJ2aWNlcy9lbnRpdHkuc2VydmljZSc7XG5pbXBvcnQgeyBFbnRpdHlUYWIsIEVudGl0eVV0aWxpdGllcyB9IGZyb20gJy4uLy4uLy4uL3V0aWxpdGllcy9lbnRpdHkudXRpbGl0aWVzJztcbmltcG9ydCB7IFZhbGlkYXRpb25FcnJvciwgVmFsaWRhdGlvblV0aWxpdGllcyB9IGZyb20gJy4uLy4uLy4uL3V0aWxpdGllcy92YWxpZGF0aW9uLnV0aWxpdGllcyc7XG5pbXBvcnQgeyBDb25maXJtRGlhbG9nRGF0YUJ1aWxkZXIsIENvbmZpcm1EaWFsb2dEYXRhSW50ZXJuYWwgfSBmcm9tICcuLi8uLi9jb25maXJtLWRpYWxvZy9jb25maXJtLWRpYWxvZy1kYXRhLmJ1aWxkZXInO1xuaW1wb3J0IHsgTmd4TWF0RW50aXR5Q29uZmlybURpYWxvZ0NvbXBvbmVudCB9IGZyb20gJy4uLy4uL2NvbmZpcm0tZGlhbG9nL2NvbmZpcm0tZGlhbG9nLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBOZ3hNYXRFbnRpdHlJbnB1dE1vZHVsZSB9IGZyb20gJy4uLy4uL2lucHV0L2lucHV0Lm1vZHVsZSc7XG5pbXBvcnQgeyBUb29sdGlwQ29tcG9uZW50IH0gZnJvbSAnLi4vLi4vdG9vbHRpcC90b29sdGlwLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBDcmVhdGVFbnRpdHlEYXRhIH0gZnJvbSAnLi9jcmVhdGUtZW50aXR5LWRpYWxvZy1kYXRhJztcbmltcG9ydCB7IENyZWF0ZUVudGl0eURhdGFJbnRlcm5hbCwgQ3JlYXRlRW50aXR5RGlhbG9nRGF0YUJ1aWxkZXIgfSBmcm9tICcuL2NyZWF0ZS1lbnRpdHktZGlhbG9nLWRhdGEuYnVpbGRlcic7XG5cbi8qKlxuICogVGhlIGRlZmF1bHQgZGlhbG9nIHVzZWQgdG8gY3JlYXRlIG5ldyBlbnRpdGllcyBiYXNlZCBvbiB0aGUgY29uZmlndXJhdGlvbiBwYXNzZWQgaW4gdGhlIE1BVF9ESUFMT0dfREFUQSBcImlucHV0RGF0YVwiLlxuICogVXNlZCBieSB0aGUgbmd4LW1hdC1lbnRpdHktdGFibGUuXG4gKlxuICogSXQgb2ZmZXJzIGEgbG90IG9mIGN1c3RvbWl6YXRpb24gb3B0aW9ucyB3aGljaCBjYW4gYmUgZm91bmQgaW4gXCJDcmVhdGVFbnRpdHlEaWFsb2dEYXRhXCIuXG4gKi9cbkBDb21wb25lbnQoe1xuICAgIHNlbGVjdG9yOiAnbmd4LW1hdC1lbnRpdHktY3JlYXRlLWRpYWxvZycsXG4gICAgdGVtcGxhdGVVcmw6ICcuL2NyZWF0ZS1lbnRpdHktZGlhbG9nLmNvbXBvbmVudC5odG1sJyxcbiAgICBzdHlsZVVybHM6IFsnLi9jcmVhdGUtZW50aXR5LWRpYWxvZy5jb21wb25lbnQuc2NzcyddLFxuICAgIHN0YW5kYWxvbmU6IHRydWUsXG4gICAgaW1wb3J0czogW1xuICAgICAgICBOZ0ZvcixcbiAgICAgICAgTmdJZixcbiAgICAgICAgTmd4TWF0RW50aXR5SW5wdXRNb2R1bGUsXG4gICAgICAgIE1hdERpYWxvZ01vZHVsZSxcbiAgICAgICAgRm9ybXNNb2R1bGUsXG4gICAgICAgIE1hdEJ1dHRvbk1vZHVsZSxcbiAgICAgICAgTWF0VGFic01vZHVsZSxcbiAgICAgICAgTWF0QmFkZ2VNb2R1bGUsXG4gICAgICAgIFRvb2x0aXBDb21wb25lbnRcbiAgICBdXG59KVxuZXhwb3J0IGNsYXNzIE5neE1hdEVudGl0eUNyZWF0ZURpYWxvZ0NvbXBvbmVudDxFbnRpdHlUeXBlIGV4dGVuZHMgQmFzZUVudGl0eVR5cGU8RW50aXR5VHlwZT4+IGltcGxlbWVudHMgT25Jbml0IHtcbiAgICAvKipcbiAgICAgKiBDb250YWlucyBIZWxwZXJNZXRob2RzIGFyb3VuZCBoYW5kbGluZyBFbnRpdGllcyBhbmQgdGhlaXIgcHJvcGVydHktbWV0YWRhdGEuXG4gICAgICovXG4gICAgRW50aXR5VXRpbGl0aWVzOiB0eXBlb2YgRW50aXR5VXRpbGl0aWVzID0gRW50aXR5VXRpbGl0aWVzO1xuXG4gICAgLyoqXG4gICAgICogVGhlIHRhYnMgb2YgdGhlIGVudGl0eS5cbiAgICAgKi9cbiAgICBlbnRpdHlUYWJzITogRW50aXR5VGFiPEVudGl0eVR5cGU+W107XG5cbiAgICAvKipcbiAgICAgKiBUaGUgc2VydmljZXMgdGhhdCBoYW5kbGVzIHRoZSBlbnRpdHkuXG4gICAgICovXG4gICAgZW50aXR5U2VydmljZSE6IEVudGl0eVNlcnZpY2U8RW50aXR5VHlwZT47XG5cbiAgICAvKipcbiAgICAgKiBUaGUgaW50ZXJuYWwgY29uZmlndXJhdGlvbiBkYXRhLlxuICAgICAqL1xuICAgIGRhdGEhOiBDcmVhdGVFbnRpdHlEYXRhSW50ZXJuYWw8RW50aXR5VHlwZT47XG5cbiAgICAvKipcbiAgICAgKiBXaGV0aGVyIG9yIG5vdCB0aGUgZW50aXR5IGlzIHZhbGlkLlxuICAgICAqL1xuICAgIGlzRW50aXR5VmFsaWQ6IGJvb2xlYW4gPSBmYWxzZTtcbiAgICAvKipcbiAgICAgKiBUaGUgdmFsaWRhdGlvbiBlcnJvcnMgb2YgdGhlIGVudGl0eS5cbiAgICAgKi9cbiAgICB2YWxpZGF0aW9uRXJyb3JzOiBWYWxpZGF0aW9uRXJyb3JbXSA9IFtdO1xuICAgIC8qKlxuICAgICAqIFdoYXQgdG8gZGlzcGxheSBpbnNpZGUgdGhlIHRvb2x0aXAuXG4gICAgICovXG4gICAgdG9vbHRpcENvbnRlbnQ6IHN0cmluZyA9ICcnO1xuXG4gICAgY29uc3RydWN0b3IoXG4gICAgICAgIEBJbmplY3QoTUFUX0RJQUxPR19EQVRBKVxuICAgICAgICBwcml2YXRlIHJlYWRvbmx5IGlucHV0RGF0YTogQ3JlYXRlRW50aXR5RGF0YTxFbnRpdHlUeXBlPixcbiAgICAgICAgcHVibGljIGRpYWxvZ1JlZjogTWF0RGlhbG9nUmVmPE5neE1hdEVudGl0eUNyZWF0ZURpYWxvZ0NvbXBvbmVudDxFbnRpdHlUeXBlPj4sXG4gICAgICAgIHByaXZhdGUgcmVhZG9ubHkgaW5qZWN0b3I6IEVudmlyb25tZW50SW5qZWN0b3IsXG4gICAgICAgIHByaXZhdGUgcmVhZG9ubHkgZGlhbG9nOiBNYXREaWFsb2csXG4gICAgICAgIEBJbmplY3QoTkdYX0lOVEVSTkFMX0dMT0JBTF9ERUZBVUxUX1ZBTFVFUylcbiAgICAgICAgcHJvdGVjdGVkIHJlYWRvbmx5IGdsb2JhbENvbmZpZzogTmd4R2xvYmFsRGVmYXVsdFZhbHVlc1xuICAgICkge31cblxuICAgIG5nT25Jbml0KCk6IHZvaWQge1xuICAgICAgICB0aGlzLmRhdGEgPSBuZXcgQ3JlYXRlRW50aXR5RGlhbG9nRGF0YUJ1aWxkZXIodGhpcy5pbnB1dERhdGEsIHRoaXMuZ2xvYmFsQ29uZmlnKS5nZXRSZXN1bHQoKTtcbiAgICAgICAgdGhpcy5kaWFsb2dSZWYuZGlzYWJsZUNsb3NlID0gdHJ1ZTtcbiAgICAgICAgdGhpcy5lbnRpdHlUYWJzID0gRW50aXR5VXRpbGl0aWVzLmdldEVudGl0eVRhYnModGhpcy5kYXRhLmVudGl0eSwgdGhpcy5pbmplY3RvciwgdHJ1ZSk7XG4gICAgICAgIHRoaXMuZW50aXR5U2VydmljZSA9IHRoaXMuaW5qZWN0b3IuZ2V0KHRoaXMuZGF0YS5FbnRpdHlTZXJ2aWNlQ2xhc3MpIGFzIEVudGl0eVNlcnZpY2U8RW50aXR5VHlwZT47XG4gICAgICAgIHNldFRpbWVvdXQoKCkgPT4gdGhpcy5jaGVja0lzRW50aXR5VmFsaWQoKSwgMSk7XG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogQ2hlY2tzIGlmIHRoZSBlbnRpdHkgaXMgdmFsaWQuXG4gICAgICovXG4gICAgY2hlY2tJc0VudGl0eVZhbGlkKCk6IHZvaWQge1xuICAgICAgICB0aGlzLnZhbGlkYXRpb25FcnJvcnMgPSBWYWxpZGF0aW9uVXRpbGl0aWVzLmdldEVudGl0eVZhbGlkYXRpb25FcnJvcnModGhpcy5kYXRhLmVudGl0eSwgJ2NyZWF0ZScpO1xuICAgICAgICB0aGlzLnRvb2x0aXBDb250ZW50ID0gcnVuSW5JbmplY3Rpb25Db250ZXh0KHRoaXMuaW5qZWN0b3IsICgpID0+IGdldFZhbGlkYXRpb25FcnJvcnNUb29sdGlwQ29udGVudCh0aGlzLnZhbGlkYXRpb25FcnJvcnMpKTtcbiAgICAgICAgdGhpcy5pc0VudGl0eVZhbGlkID0gdGhpcy52YWxpZGF0aW9uRXJyb3JzLmxlbmd0aCA9PT0gMDtcbiAgICB9XG5cbiAgICAvKipcbiAgICAgKiBUcmllcyBhZGQgdGhlIG5ldyBlbnRpdHkgYW5kIGNsb3NlIHRoZSBkaWFsb2cgYWZ0ZXJ3YXJkcy5cbiAgICAgKiBBbHNvIGhhbmRsZXMgdGhlIGNvbmZpcm1hdGlvbiBpZiByZXF1aXJlZC5cbiAgICAgKi9cbiAgICBjcmVhdGUoKTogdm9pZCB7XG4gICAgICAgIGlmICghdGhpcy5pc0VudGl0eVZhbGlkKSB7XG4gICAgICAgICAgICByZXR1cm47XG4gICAgICAgIH1cbiAgICAgICAgaWYgKCF0aGlzLmRhdGEuY3JlYXRlRGF0YS5jcmVhdGVSZXF1aXJlc0NvbmZpcm1EaWFsb2cpIHtcbiAgICAgICAgICAgIHRoaXMuY29uZmlybUNyZWF0ZSgpO1xuICAgICAgICAgICAgcmV0dXJuO1xuICAgICAgICB9XG4gICAgICAgIGNvbnN0IGRpYWxvZ0RhdGE6IENvbmZpcm1EaWFsb2dEYXRhSW50ZXJuYWwgPSBuZXcgQ29uZmlybURpYWxvZ0RhdGFCdWlsZGVyKFxuICAgICAgICAgICAgdGhpcy5nbG9iYWxDb25maWcsXG4gICAgICAgICAgICB0aGlzLmRhdGEuY3JlYXRlRGF0YS5jb25maXJtQ3JlYXRlRGlhbG9nRGF0YVxuICAgICAgICApXG4gICAgICAgICAgICAud2l0aERlZmF1bHQoJ3RleHQnLCB0aGlzLmdsb2JhbENvbmZpZy5jb25maXJtQ3JlYXRlVGV4dClcbiAgICAgICAgICAgIC53aXRoRGVmYXVsdCgnY29uZmlybUJ1dHRvbkxhYmVsJywgdGhpcy5nbG9iYWxDb25maWcuY3JlYXRlTGFiZWwpXG4gICAgICAgICAgICAud2l0aERlZmF1bHQoJ3RpdGxlJywgdGhpcy5nbG9iYWxDb25maWcuY3JlYXRlTGFiZWwpXG4gICAgICAgICAgICAuZ2V0UmVzdWx0KCk7XG4gICAgICAgIGNvbnN0IGRpYWxvZ1JlZjogTWF0RGlhbG9nUmVmPE5neE1hdEVudGl0eUNvbmZpcm1EaWFsb2dDb21wb25lbnQsIGJvb2xlYW4+ID0gdGhpcy5kaWFsb2cub3BlbihOZ3hNYXRFbnRpdHlDb25maXJtRGlhbG9nQ29tcG9uZW50LCB7XG4gICAgICAgICAgICBkYXRhOiBkaWFsb2dEYXRhLFxuICAgICAgICAgICAgYXV0b0ZvY3VzOiBmYWxzZSxcbiAgICAgICAgICAgIHJlc3RvcmVGb2N1czogZmFsc2VcbiAgICAgICAgfSk7XG4gICAgICAgIGRpYWxvZ1JlZi5hZnRlckNsb3NlZCgpLnN1YnNjcmliZShyZXMgPT4ge1xuICAgICAgICAgICAgaWYgKHJlcyA9PSB0cnVlKSB7XG4gICAgICAgICAgICAgICAgdGhpcy5jb25maXJtQ3JlYXRlKCk7XG4gICAgICAgICAgICB9XG4gICAgICAgIH0pO1xuICAgIH1cbiAgICBwcml2YXRlIGNvbmZpcm1DcmVhdGUoKTogdm9pZCB7XG4gICAgICAgIHZvaWQgdGhpcy5lbnRpdHlTZXJ2aWNlLmNyZWF0ZSh0aGlzLmRhdGEuZW50aXR5KS50aGVuKCgpID0+IHRoaXMuZGlhbG9nUmVmLmNsb3NlKCkpO1xuICAgIH1cblxuICAgIC8qKlxuICAgICAqIENsb3NlcyB0aGUgZGlhbG9nLlxuICAgICAqL1xuICAgIGNhbmNlbCgpOiB2b2lkIHtcbiAgICAgICAgdGhpcy5kaWFsb2dSZWYuY2xvc2UoKTtcbiAgICB9XG59IiwiPCEtLSBlc2xpbnQtZGlzYWJsZSBhbmd1bGFyL2N5Y2xvbWF0aWMtY29tcGxleGl0eSAtLT5cbjwhLS0gZXNsaW50LWRpc2FibGUgYW5ndWxhci9uby1jYWxsLWV4cHJlc3Npb24gLS0+XG4gXG48ZGl2IGNsYXNzPVwibWF0LWRpYWxvZy10aXRsZVwiPlxuICAgIDxkaXY+e3tkYXRhLmNyZWF0ZURhdGEudGl0bGV9fTwvZGl2PlxuPC9kaXY+XG5cbjxmb3JtPlxuICAgIDxtYXQtZGlhbG9nLWNvbnRlbnQ+XG4gICAgICAgIDxtYXQtdGFiLWdyb3VwICpuZ0lmPVwiZW50aXR5VGFicy5sZW5ndGggPiAxXCIgcHJlc2VydmVDb250ZW50PlxuICAgICAgICAgICAgPG1hdC10YWIgKm5nRm9yPVwibGV0IHRhYiBvZiBlbnRpdHlUYWJzXCIgW2xhYmVsXT1cInRhYi50YWJOYW1lXCI+XG4gICAgICAgICAgICAgICAgPGRpdiAqbmdGb3I9XCJsZXQgcm93IG9mIHRhYi5yb3dzXCIgY2xhc3M9XCJyb3dcIj5cbiAgICAgICAgICAgICAgICAgICAgPG5neC1tYXQtZW50aXR5LWlucHV0XG4gICAgICAgICAgICAgICAgICAgICAgICAqbmdGb3I9XCJsZXQga2V5IG9mIHJvdy5rZXlzXCJcbiAgICAgICAgICAgICAgICAgICAgICAgIFtlbnRpdHldPVwiZGF0YS5lbnRpdHlcIlxuICAgICAgICAgICAgICAgICAgICAgICAgW3Byb3BlcnR5S2V5XT1cImtleVwiXG4gICAgICAgICAgICAgICAgICAgICAgICBbaGlkZU9taXRGb3JDcmVhdGVdPVwidHJ1ZVwiXG4gICAgICAgICAgICAgICAgICAgICAgICBbY2xhc3NdPVwiRW50aXR5VXRpbGl0aWVzLmdldFdpZHRoQ2xhc3NlcyhkYXRhLmVudGl0eSwga2V5KVwiXG4gICAgICAgICAgICAgICAgICAgICAgICAoaW5wdXRDaGFuZ2VFdmVudCk9XCJjaGVja0lzRW50aXR5VmFsaWQoKVwiXG4gICAgICAgICAgICAgICAgICAgID5cbiAgICAgICAgICAgICAgICAgICAgPC9uZ3gtbWF0LWVudGl0eS1pbnB1dD5cbiAgICAgICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgIDwvbWF0LXRhYj5cbiAgICAgICAgPC9tYXQtdGFiLWdyb3VwPlxuICAgIFxuICAgICAgICA8ZGl2ICpuZ0lmPVwiZW50aXR5VGFicy5sZW5ndGggPD0gMVwiPlxuICAgICAgICAgICAgPHNwYW4gKm5nSWY9XCIhZW50aXR5VGFicy5sZW5ndGhcIiBjbGFzcz1cIm5vLWVudGl0eS10YWJzXCI+XG4gICAgICAgICAgICAgICAgRVJST1I6IE5vIElucHV0cy4gRGlkIHlvdSBjb3JyZWN0bHkgYXNzaWduIGFsbCB2YWx1ZXMgaW4gdGhlIG1vZGVsIGNvbnN0cnVjdG9yP1xuICAgICAgICAgICAgPC9zcGFuPlxuICAgICAgICAgICAgPGRpdiAqbmdGb3I9XCJsZXQgcm93IG9mIGVudGl0eVRhYnNbMF0/LnJvd3NcIiBjbGFzcz1cInJvd1wiPlxuICAgICAgICAgICAgICAgIDxuZ3gtbWF0LWVudGl0eS1pbnB1dFxuICAgICAgICAgICAgICAgICAgICAqbmdGb3I9XCJsZXQga2V5IG9mIHJvdy5rZXlzXCJcbiAgICAgICAgICAgICAgICAgICAgW2VudGl0eV09XCJkYXRhLmVudGl0eVwiXG4gICAgICAgICAgICAgICAgICAgIFtwcm9wZXJ0eUtleV09XCJrZXlcIlxuICAgICAgICAgICAgICAgICAgICBbaGlkZU9taXRGb3JDcmVhdGVdPVwidHJ1ZVwiXG4gICAgICAgICAgICAgICAgICAgIFtjbGFzc109XCJFbnRpdHlVdGlsaXRpZXMuZ2V0V2lkdGhDbGFzc2VzKGRhdGEuZW50aXR5LCBrZXkpXCJcbiAgICAgICAgICAgICAgICAgICAgKGlucHV0Q2hhbmdlRXZlbnQpPVwiY2hlY2tJc0VudGl0eVZhbGlkKClcIlxuICAgICAgICAgICAgICAgID5cbiAgICAgICAgICAgICAgICA8L25neC1tYXQtZW50aXR5LWlucHV0PlxuICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgIDwvZGl2PlxuICAgIDwvbWF0LWRpYWxvZy1jb250ZW50PlxuICAgIFxuICAgIDxtYXQtZGlhbG9nLWFjdGlvbnM+XG5cbiAgICAgICAgPGRpdiBjbGFzcz1cImQtZmxleCBhbGlnbi1pdGVtcy1jZW50ZXIgZ2FwLTNcIiBzdHlsZT1cIm1hcmdpbi10b3A6IDEwcHg7XCI+XG4gICAgICAgICAgICA8YnV0dG9uIHR5cGU9XCJzdWJtaXRcIiBtYXQtcmFpc2VkLWJ1dHRvbiBtYXRCYWRnZUNvbG9yPVwid2FyblwiXG4gICAgICAgICAgICAgICAgW2Rpc2FibGVkXT1cIiFpc0VudGl0eVZhbGlkXCJcbiAgICAgICAgICAgICAgICBbbWF0QmFkZ2VdPVwidmFsaWRhdGlvbkVycm9ycy5sZW5ndGhcIlxuICAgICAgICAgICAgICAgIFttYXRCYWRnZUhpZGRlbl09XCIhdmFsaWRhdGlvbkVycm9ycy5sZW5ndGhcIlxuICAgICAgICAgICAgICAgIChjbGljayk9XCJjcmVhdGUoKVwiXG4gICAgICAgICAgICA+XG4gICAgICAgICAgICAgICAge3tkYXRhLmNyZWF0ZURhdGEuY3JlYXRlQnV0dG9uTGFiZWx9fVxuICAgICAgICAgICAgPC9idXR0b24+XG4gICAgICAgICAgICA8bmd4LW1hdC1lbnRpdHktdG9vbHRpcCAqbmdJZj1cInZhbGlkYXRpb25FcnJvcnMubGVuZ3RoXCIgW3Rvb2x0aXBDb250ZW50XT1cInRvb2x0aXBDb250ZW50XCI+PC9uZ3gtbWF0LWVudGl0eS10b29sdGlwPlxuICAgICAgICA8L2Rpdj5cblxuICAgICAgICA8YnV0dG9uIHR5cGU9XCJidXR0b25cIiBtYXQtcmFpc2VkLWJ1dHRvbiBjbGFzcz1cImNhbmNlbC1idXR0b25cIiAoY2xpY2spPVwiY2FuY2VsKClcIj5cbiAgICAgICAgICAgIHt7ZGF0YS5jcmVhdGVEYXRhLmNhbmNlbEJ1dHRvbkxhYmVsfX1cbiAgICAgICAgPC9idXR0b24+XG4gICAgPC9tYXQtZGlhbG9nLWFjdGlvbnM+XG48L2Zvcm0+XG4iXX0=
@@ -6,7 +6,6 @@ import { FileUtilities } from '../../utilities/file.utilities';
6
6
  const CSV_SEPARATOR = ';';
7
7
  /**
8
8
  * A multi select action that imports the data from a json file.
9
- *
10
9
  * @param EntityServiceClass - The entity class that handles importing the file.
11
10
  */
12
11
  export function importFromJsonMultiAction(EntityServiceClass) {
@@ -26,7 +25,6 @@ export function importFromJsonMultiAction(EntityServiceClass) {
26
25
  }
27
26
  /**
28
27
  * A multi select action that exports the data as a json file.
29
- *
30
28
  * @param selectedEntities - The selected entities to export.
31
29
  */
32
30
  export function exportAsJsonMultiAction(selectedEntities) {
@@ -36,7 +34,6 @@ export function exportAsJsonMultiAction(selectedEntities) {
36
34
  /**
37
35
  * A multi select action that exports the data as a csv file.
38
36
  * Object values get stringified.
39
- *
40
37
  * @param selectedEntities - The selected entities to export.
41
38
  */
42
39
  export function exportAsCsvMultiAction(selectedEntities) {
@@ -46,7 +43,6 @@ export function exportAsCsvMultiAction(selectedEntities) {
46
43
  /**
47
44
  * A multi select action that exports the data as a xml file.
48
45
  * Object values get stringified.
49
- *
50
46
  * @param selectedEntities - The selected entities to export.
51
47
  */
52
48
  export function exportAsXmlMultiAction(selectedEntities) {
@@ -83,4 +79,4 @@ function getLineForHeader(entity, head) {
83
79
  }
84
80
  return `${entity[head]}${CSV_SEPARATOR}`;
85
81
  }
86
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGVmYXVsdC5hY3Rpb25zLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvbmd4LW1hdGVyaWFsLWVudGl0eS9zcmMvY29tcG9uZW50cy90YWJsZS9kZWZhdWx0LmFjdGlvbnMudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFRLE1BQU0sRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUU3QyxPQUFPLEVBQUUsZUFBZSxFQUFFLE1BQU0sd0NBQXdDLENBQUM7QUFDekUsT0FBTyxFQUFFLGVBQWUsRUFBRSxNQUFNLHNDQUFzQyxDQUFDO0FBQ3ZFLE9BQU8sRUFBRSxnQkFBZ0IsRUFBRSxNQUFNLHVDQUF1QyxDQUFDO0FBRXpFLE9BQU8sRUFBRSxhQUFhLEVBQUUsTUFBTSxnQ0FBZ0MsQ0FBQztBQUUvRCxNQUFNLGFBQWEsR0FBVyxHQUFHLENBQUM7QUFFbEM7Ozs7R0FJRztBQUNILE1BQU0sVUFBVSx5QkFBeUIsQ0FDckMsa0JBQW1EO0lBRW5ELE1BQU0sT0FBTyxHQUE4QixNQUFNLENBQUMsa0JBQWtCLENBQUMsQ0FBQztJQUN0RSxNQUFNLFNBQVMsR0FBcUIsUUFBUSxDQUFDLGFBQWEsQ0FBQyxPQUFPLENBQUMsQ0FBQztJQUNwRSxTQUFTLENBQUMsSUFBSSxHQUFHLE1BQU0sQ0FBQztJQUN4QixTQUFTLENBQUMsTUFBTSxHQUFHLGtCQUFrQixDQUFDO0lBQ3RDLFNBQVMsQ0FBQyxRQUFRLEdBQUcsS0FBSyxDQUFDO0lBQzNCLFNBQVMsQ0FBQyxRQUFRLEdBQUcsR0FBRyxFQUFFO1FBQ3RCLE1BQU0sSUFBSSxHQUE0QixTQUFTLENBQUMsS0FBSyxFQUFFLElBQUksQ0FBQyxDQUFDLENBQUMsQ0FBQztRQUMvRCxJQUFJLElBQUksSUFBSSxJQUFJLEVBQUU7WUFDZCxLQUFLLE9BQU8sQ0FBQyxNQUFNLENBQUMsSUFBSSxDQUFDLENBQUM7U0FDN0I7SUFDTCxDQUFDLENBQUM7SUFDRixTQUFTLENB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QUFDLFNBQVMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxHQUFHLGFBQWEsRUFBRSxDQUFDO0tBQ2pFO0lBQ0QsT0FBTyxHQUFHLE1BQU0sQ0FBQyxJQUFJLENBQUMsR0FBRyxhQUFhLEVBQUUsQ0FBQztBQUM3QyxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgVHlwZSwgaW5qZWN0IH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBCYXNlRW50aXR5VHlwZSB9IGZyb20gJy4uLy4uL2NsYXNzZXMvZW50aXR5Lm1vZGVsJztcbmltcG9ydCB7IEpzMlhtbFV0aWxpdGllcyB9IGZyb20gJy4uLy4uL2VuY2Fwc3VsYXRpb24vanMtMi14bWwudXRpbGl0aWVzJztcbmltcG9ydCB7IExvZGFzaFV0aWxpdGllcyB9IGZyb20gJy4uLy4uL2VuY2Fwc3VsYXRpb24vbG9kYXNoLnV0aWxpdGllcyc7XG5pbXBvcnQgeyBSZWZsZWN0VXRpbGl0aWVzIH0gZnJvbSAnLi4vLi4vZW5jYXBzdWxhdGlvbi9yZWZsZWN0LnV0aWxpdGllcyc7XG5pbXBvcnQgeyBFbnRpdHlTZXJ2aWNlIH0gZnJvbSAnLi4vLi4vc2VydmljZXMvZW50aXR5LnNlcnZpY2UnO1xuaW1wb3J0IHsgRmlsZVV0aWxpdGllcyB9IGZyb20gJy4uLy4uL3V0aWxpdGllcy9maWxlLnV0aWxpdGllcyc7XG5cbmNvbnN0IENTVl9TRVBBUkFUT1I6IHN0cmluZyA9ICc7JztcblxuLyoqXG4gKiBBIG11bHRpIHNlbGVjdCBhY3Rpb24gdGhhdCBpbXBvcnRzIHRoZSBkYXRhIGZyb20gYSBqc29uIGZpbGUuXG4gKlxuICogQHBhcmFtIEVudGl0eVNlcnZpY2VDbGFzcyAtIFRoZSBlbnRpdHkgY2xhc3MgdGhhdCBoYW5kbGVzIGltcG9ydGluZyB0aGUgZmlsZS5cbiAqL1xuZXhwb3J0IGZ1bmN0aW9uIGltcG9ydEZyb21Kc29uTXVsdGlBY3Rpb248RW50aXR5VHlwZSBleHRlbmRzIEJhc2VFbnRpdHlUeXBlPEVudGl0eVR5cGU+PihcbiAgICBFbnRpdHlTZXJ2aWNlQ2xhc3M6IFR5cGU8RW50aXR5U2VydmljZTxFbnRpdHlUeXBlPj5cbik6IHZvaWQge1xuICAgIGNvbnN0IHNlcnZpY2U6IEVudGl0eVNlcnZpY2U8RW50aXR5VHlwZT4gPSBpbmplY3QoRW50aXR5U2VydmljZUNsYXNzKTtcbiAgICBjb25zdCBodG1sSW5wdXQ6IEhUTUxJbnB1dEVsZW1lbnQgPSBkb2N1bWVudC5jcmVhdGVFbGVtZW50KCdpbnB1dCcpO1xuICAgIGh0bWxJbnB1dC50eXBlID0gJ2ZpbGUnO1xuICAgIGh0bWxJbnB1dC5hY2NlcHQgPSAnYXBwbGljYXRpb24vanNvbic7XG4gICAgaHRtbElucHV0Lm11bHRpcGxlID0gZmFsc2U7XG4gICAgaHRtbElucHV0Lm9uY2hhbmdlID0gKCkgPT4ge1xuICAgICAgICBjb25zdCBmaWxlOiBGaWxlIHwgdW5kZWZpbmVkIHwgbnVsbCA9IGh0bWxJbnB1dC5maWxlcz8uaXRlbSgwKTtcbiAgICAgICAgaWYgKGZpbGUgIT0gbnVsbCkge1xuICAgICAgICAgICAgdm9pZCBzZXJ2aWNlLmltcG9ydChmaWxlKTtcbiAgICAgICAgfVxuICAgIH07XG4gICAgaHRtbElucHV0LmNsaWNrKCk7XG4gICAgaHRtbElucHV0LnJlbW92ZSgpO1xufVxuXG4vKipcbiAqIEEgbXVsdGkgc2VsZWN0IGFjdGlvbiB0aGF0IGV4cG9ydHMgdGhlIGRhdGEgYXMgYSBqc29uIGZpbGUuXG4gKlxuICogQHBhcmFtIHNlbGVjdGVkRW50aXRpZXMgLSBUaGUgc2VsZWN0ZWQgZW50aXRpZXMgdG8gZXhwb3J0LlxuICovXG5leHBvcnQgZnVuY3Rpb24gZXhwb3J0QXNKc29uTXVsdGlBY3Rpb248RW50aXR5VHlwZSBleHRlbmRzIEJhc2VFbnRpdHlUeXBlPEVudGl0eVR5cGU+PihzZWxlY3RlZEVudGl0aWVzOiBFbnRpdHlUeXBlW10pOiB2b2lkIHtcbiAgICBjb25zdCBibG9iOiBCbG9iID0gbmV3IEJsb2IoW0pTT04uc3RyaW5naWZ5KHNlbGVjdGVkRW50aXRpZXMsIG51bGwsICdcXHQnKV0sIHsgdHlwZTogJy5qc29uJyB9KTtcbiAgICBGaWxlVXRpbGl0aWVzLmRvd25Mb2FkQmxvYihibG9iLCAnZXhwb3J0Lmpzb24nKTtcbn1cblxuLyoqXG4gKiBBIG11bHRpIHNlbGVjdCBhY3Rpb24gdGhhdCBleHBvcnRzIHRoZSBkYXRhIGFzIGEgY3N2IGZpbGUuXG4gKiBPYmplY3QgdmFsdWVzIGdldCBzdHJpbmdpZmllZC5cbiAqXG4gKiBAcGFyYW0gc2VsZWN0ZWRFbnRpdGllcyAtIFRoZSBzZWxlY3RlZCBlbnRpdGllcyB0byBleHBvcnQuXG4gKi9cbmV4cG9ydCBmdW5jdGlvbiBleHBvcnRBc0Nzdk11bHRpQWN0aW9uPEVudGl0eVR5cGUgZXh0ZW5kcyBCYXNlRW50aXR5VHlwZTxFbnRpdHlUeXBlPj4oc2VsZWN0ZWRFbnRpdGllczogRW50aXR5VHlwZVtdKTogdm9pZCB7XG4gICAgY29uc3QgYmxvYjogQmxvYiA9IG5ldyBCbG9iKFtjb252ZXJ0VG9Dc3Yoc2VsZWN0ZWRFbnRpdGllcywgUmVmbGVjdFV0aWxpdGllcy5vd25LZXlzKHNlbGVjdGVkRW50aXRpZXNbMF0pKV0sIHsgdHlwZTogJy5jc3YnIH0pO1xuICAgIEZpbGVVdGlsaXRpZXMuZG93bkxvYWRCbG9iKGJsb2IsICdleHBvcnQuY3N2Jyk7XG59XG5cbi8qKlxuICogQSBtdWx0aSBzZWxlY3QgYWN0aW9uIHRoYXQgZXhwb3J0cyB0aGUgZGF0YSBhcyBhIHhtbCBmaWxlLlxuICogT2JqZWN0IHZhbHVlcyBnZXQgc3RyaW5naWZpZWQuXG4gKlxuICogQHBhcmFtIHNlbGVjdGVkRW50aXRpZXMgLSBUaGUgc2VsZWN0ZWQgZW50aXRpZXMgdG8gZXhwb3J0LlxuICovXG5leHBvcnQgZnVuY3Rpb24gZXhwb3J0QXNYbWxNdWx0aUFjdGlvbjxFbnRpdHlUeXBlIGV4dGVuZHMgQmFzZUVudGl0eVR5cGU8RW50aXR5VHlwZT4+KHNlbGVjdGVkRW50aXRpZXM6IEVudGl0eVR5cGVbXSk6IHZvaWQge1xuICAgIGNvbnN0IHhtbFN0cmluZzogc3RyaW5nID0gSnMyWG1sVXRpbGl0aWVzLnBhcnNlKCd2YWx1ZXMnLCBzZWxlY3RlZEVudGl0aWVzKTtcbiAgICBjb25zdCBibG9iOiBCbG9iID0gbmV3IEJsb2IoW3htbFN0cmluZ10sIHsgdHlwZTogJy54bWwnIH0pO1xuICAgIEZpbGVVdGlsaXRpZXMuZG93bkxvYWRCbG9iKGJsb2IsICdleHBvcnQueG1sJyk7XG59XG5cbi8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBqc2RvYy9yZXF1aXJlLWpzZG9jXG5mdW5jdGlvbiBjb252ZXJ0VG9Dc3Y8RW50aXR5VHlwZSBleHRlbmRzIEJhc2VFbnRpdHlUeXBlPEVudGl0eVR5cGU+PihhcnJheTogRW50aXR5VHlwZVtdLCBoZWFkZXJMaXN0OiAoa2V5b2YgRW50aXR5VHlwZSlbXSk6IHN0cmluZyB7XG4gICAgY29uc3QgaGVhZGVyUm93OiBzdHJpbmcgPSBoZWFkZXJMaXN0LmpvaW4oQ1NWX1NFUEFSQVRPUik7XG4gICAgbGV0IHJlc3VsdDogc3RyaW5nID0gaGVhZGVyUm93ICsgJ1xcclxcbic7XG4gICAgZm9yIChjb25zdCBlbnRpdHkgb2YgYXJyYXkpIHtcbiAgICAgICAgcmVzdWx0ICs9IGdldExpbmVGb3JFbnRpdHk8RW50aXR5VHlwZT4oaGVhZGVyTGlzdCwgZW50aXR5KSArICdcXHJcXG4nO1xuICAgIH1cbiAgICByZXR1cm4gcmVzdWx0O1xufVxuXG5cbi8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBqc2RvYy9yZXF1aXJlLWpzZG9jXG5mdW5jdGlvbiBnZXRMaW5lRm9yRW50aXR5PEVudGl0eVR5cGUgZXh0ZW5kcyBCYXNlRW50aXR5VHlwZTxFbnRpdHlUeXBlPj4oaGVhZGVyTGlzdDogKGtleW9mIEVudGl0eVR5cGUpW10sIGVudGl0eTogRW50aXR5VHlwZSk6IHN0cmluZyB7XG4gICAgbGV0IGxpbmU6IHN0cmluZyA9ICcnO1xuICAgIGZvciAoY29uc3QgaGVhZCBvZiBoZWFkZXJMaXN0KSB7XG4gICAgICAgIGxpbmUgPSBsaW5lICs9IGdldExpbmVGb3JIZWFkZXI8RW50aXR5VHlwZT4oZW50aXR5LCBoZWFkKTtcbiAgICB9XG4gICAgbGluZS5zbGljZSgwLCBsaW5lLmxlbmd0aCAtIDEpO1xuICAgIHJldHVybiBsaW5lO1xufVxuXG4vLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUganNkb2MvcmVxdWlyZS1qc2RvY1xuZnVuY3Rpb24gZ2V0TGluZUZvckhlYWRlcjxFbnRpdHlUeXBlIGV4dGVuZHMgQmFzZUVudGl0eVR5cGU8RW50aXR5VHlwZT4+KGVudGl0eTogRW50aXR5VHlwZSwgaGVhZDoga2V5b2YgRW50aXR5VHlwZSk6IHN0cmluZyB7XG4gICAgY29uc3QgdmFsdWU6IHVua25vd24gPSBlbnRpdHlbaGVhZF07XG4gICAgaWYgKExvZGFzaFV0aWxpdGllcy5pc09iamVjdCh2YWx1ZSkpIHtcbiAgICAgICAgcmV0dXJuIGAke0pTT04uc3RyaW5naWZ5KHZhbHVlKX0ke0NTVl9TRVBBUkFUT1J9YDtcbiAgICB9XG4gICAgaWYgKExvZGFzaFV0aWxpdGllcy5pc0FycmF5KHZhbHVlKSAmJiBMb2Rhc2hVdGlsaXRpZXMuaXNPYmplY3QodmFsdWVbMF0pKSB7XG4gICAgICAgIHJldHVybiBgJHt2YWx1ZS5tYXAodiA9PiBKU09OLnN0cmluZ2lmeSh2KSl9JHtDU1ZfU0VQQVJBVE9SfWA7XG4gICAgfVxuICAgIHJldHVybiBgJHtlbnRpdHlbaGVhZF19JHtDU1ZfU0VQQVJBVE9SfWA7XG59Il19
82
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGVmYXVsdC5hY3Rpb25zLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvbmd4LW1hdGVyaWFsLWVudGl0eS9zcmMvY29tcG9uZW50cy90YWJsZS9kZWZhdWx0LmFjdGlvbnMudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFRLE1BQU0sRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUU3QyxPQUFPLEVBQUUsZUFBZSxFQUFFLE1BQU0sd0NBQXdDLENBQUM7QUFDekUsT0FBTyxFQUFFLGVBQWUsRUFBRSxNQUFNLHNDQUFzQyxDQUFDO0FBQ3ZFLE9BQU8sRUFBRSxnQkFBZ0IsRUFBRSxNQUFNLHVDQUF1QyxDQUFDO0FBRXpFLE9BQU8sRUFBRSxhQUFhLEVBQUUsTUFBTSxnQ0FBZ0MsQ0FBQztBQUUvRCxNQUFNLGFBQWEsR0FBVyxHQUFHLENBQUM7QUFFbEM7OztHQUdHO0FBQ0gsTUFBTSxVQUFVLHlCQUF5QixDQUNyQyxrQkFBbUQ7SUFFbkQsTUFBTSxPQUFPLEdBQThCLE1BQU0sQ0FBQyxrQkFBa0IsQ0FBQyxDQUFDO0lBQ3RFLE1BQU0sU0FBUyxHQUFxQixRQUFRLENBQUMsYUFBYSxDQUFDLE9BQU8sQ0FBQyxDQUFDO0lBQ3BFLFNBQVMsQ0FBQyxJQUFJLEdBQUcsTUFBTSxDQUFDO0lBQ3hCLFNBQVMsQ0FBQyxNQUFNLEdBQUcsa0JBQWtCLENBQUM7SUFDdEMsU0FBUyxDQUFDLFFBQVEsR0FBRyxLQUFLLENBQUM7SUFDM0IsU0FBUyxDQUFDLFFBQVEsR0FBRyxHQUFHLEVBQUU7UUFDdEIsTUFBTSxJQUFJLEdBQTRCLFNBQVMsQ0FBQyxLQUFLLEVBQUUsSUFBSSxDQUFDLENBQUMsQ0FBQyxDQUFDO1FBQy9ELElBQUksSUFBSSxJQUFJLElBQUksRUFBRTtZQUNkLEtBQUssT0FBTyxDQUFDLE1BQU0sQ0FBQyxJQUFJLENBQUMsQ0FBQztTQUM3QjtJQUNMLENBQUMsQ0FBQztJQUNGLFNBQVMsQ0FB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U0FBUyxDQUFDLENBQUMsQ0FBQyxDQUFDLEdBQUcsYUFBYSxFQUFFLENBQUM7S0FDakU7SUFDRCxPQUFPLEdBQUcsTUFBTSxDQUFDLElBQUksQ0FBQyxHQUFHLGFBQWEsRUFBRSxDQUFDO0FBQzdDLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBUeXBlLCBpbmplY3QgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IEJhc2VFbnRpdHlUeXBlIH0gZnJvbSAnLi4vLi4vY2xhc3Nlcy9lbnRpdHkubW9kZWwnO1xuaW1wb3J0IHsgSnMyWG1sVXRpbGl0aWVzIH0gZnJvbSAnLi4vLi4vZW5jYXBzdWxhdGlvbi9qcy0yLXhtbC51dGlsaXRpZXMnO1xuaW1wb3J0IHsgTG9kYXNoVXRpbGl0aWVzIH0gZnJvbSAnLi4vLi4vZW5jYXBzdWxhdGlvbi9sb2Rhc2gudXRpbGl0aWVzJztcbmltcG9ydCB7IFJlZmxlY3RVdGlsaXRpZXMgfSBmcm9tICcuLi8uLi9lbmNhcHN1bGF0aW9uL3JlZmxlY3QudXRpbGl0aWVzJztcbmltcG9ydCB7IEVudGl0eVNlcnZpY2UgfSBmcm9tICcuLi8uLi9zZXJ2aWNlcy9lbnRpdHkuc2VydmljZSc7XG5pbXBvcnQgeyBGaWxlVXRpbGl0aWVzIH0gZnJvbSAnLi4vLi4vdXRpbGl0aWVzL2ZpbGUudXRpbGl0aWVzJztcblxuY29uc3QgQ1NWX1NFUEFSQVRPUjogc3RyaW5nID0gJzsnO1xuXG4vKipcbiAqIEEgbXVsdGkgc2VsZWN0IGFjdGlvbiB0aGF0IGltcG9ydHMgdGhlIGRhdGEgZnJvbSBhIGpzb24gZmlsZS5cbiAqIEBwYXJhbSBFbnRpdHlTZXJ2aWNlQ2xhc3MgLSBUaGUgZW50aXR5IGNsYXNzIHRoYXQgaGFuZGxlcyBpbXBvcnRpbmcgdGhlIGZpbGUuXG4gKi9cbmV4cG9ydCBmdW5jdGlvbiBpbXBvcnRGcm9tSnNvbk11bHRpQWN0aW9uPEVudGl0eVR5cGUgZXh0ZW5kcyBCYXNlRW50aXR5VHlwZTxFbnRpdHlUeXBlPj4oXG4gICAgRW50aXR5U2VydmljZUNsYXNzOiBUeXBlPEVudGl0eVNlcnZpY2U8RW50aXR5VHlwZT4+XG4pOiB2b2lkIHtcbiAgICBjb25zdCBzZXJ2aWNlOiBFbnRpdHlTZXJ2aWNlPEVudGl0eVR5cGU+ID0gaW5qZWN0KEVudGl0eVNlcnZpY2VDbGFzcyk7XG4gICAgY29uc3QgaHRtbElucHV0OiBIVE1MSW5wdXRFbGVtZW50ID0gZG9jdW1lbnQuY3JlYXRlRWxlbWVudCgnaW5wdXQnKTtcbiAgICBodG1sSW5wdXQudHlwZSA9ICdmaWxlJztcbiAgICBodG1sSW5wdXQuYWNjZXB0ID0gJ2FwcGxpY2F0aW9uL2pzb24nO1xuICAgIGh0bWxJbnB1dC5tdWx0aXBsZSA9IGZhbHNlO1xuICAgIGh0bWxJbnB1dC5vbmNoYW5nZSA9ICgpID0+IHtcbiAgICAgICAgY29uc3QgZmlsZTogRmlsZSB8IHVuZGVmaW5lZCB8IG51bGwgPSBodG1sSW5wdXQuZmlsZXM/Lml0ZW0oMCk7XG4gICAgICAgIGlmIChmaWxlICE9IG51bGwpIHtcbiAgICAgICAgICAgIHZvaWQgc2VydmljZS5pbXBvcnQoZmlsZSk7XG4gICAgICAgIH1cbiAgICB9O1xuICAgIGh0bWxJbnB1dC5jbGljaygpO1xuICAgIGh0bWxJbnB1dC5yZW1vdmUoKTtcbn1cblxuLyoqXG4gKiBBIG11bHRpIHNlbGVjdCBhY3Rpb24gdGhhdCBleHBvcnRzIHRoZSBkYXRhIGFzIGEganNvbiBmaWxlLlxuICogQHBhcmFtIHNlbGVjdGVkRW50aXRpZXMgLSBUaGUgc2VsZWN0ZWQgZW50aXRpZXMgdG8gZXhwb3J0LlxuICovXG5leHBvcnQgZnVuY3Rpb24gZXhwb3J0QXNKc29uTXVsdGlBY3Rpb248RW50aXR5VHlwZSBleHRlbmRzIEJhc2VFbnRpdHlUeXBlPEVudGl0eVR5cGU+PihzZWxlY3RlZEVudGl0aWVzOiBFbnRpdHlUeXBlW10pOiB2b2lkIHtcbiAgICBjb25zdCBibG9iOiBCbG9iID0gbmV3IEJsb2IoW0pTT04uc3RyaW5naWZ5KHNlbGVjdGVkRW50aXRpZXMsIG51bGwsICdcXHQnKV0sIHsgdHlwZTogJy5qc29uJyB9KTtcbiAgICBGaWxlVXRpbGl0aWVzLmRvd25Mb2FkQmxvYihibG9iLCAnZXhwb3J0Lmpzb24nKTtcbn1cblxuLyoqXG4gKiBBIG11bHRpIHNlbGVjdCBhY3Rpb24gdGhhdCBleHBvcnRzIHRoZSBkYXRhIGFzIGEgY3N2IGZpbGUuXG4gKiBPYmplY3QgdmFsdWVzIGdldCBzdHJpbmdpZmllZC5cbiAqIEBwYXJhbSBzZWxlY3RlZEVudGl0aWVzIC0gVGhlIHNlbGVjdGVkIGVudGl0aWVzIHRvIGV4cG9ydC5cbiAqL1xuZXhwb3J0IGZ1bmN0aW9uIGV4cG9ydEFzQ3N2TXVsdGlBY3Rpb248RW50aXR5VHlwZSBleHRlbmRzIEJhc2VFbnRpdHlUeXBlPEVudGl0eVR5cGU+PihzZWxlY3RlZEVudGl0aWVzOiBFbnRpdHlUeXBlW10pOiB2b2lkIHtcbiAgICBjb25zdCBibG9iOiBCbG9iID0gbmV3IEJsb2IoW2NvbnZlcnRUb0NzdihzZWxlY3RlZEVudGl0aWVzLCBSZWZsZWN0VXRpbGl0aWVzLm93bktleXMoc2VsZWN0ZWRFbnRpdGllc1swXSkpXSwgeyB0eXBlOiAnLmNzdicgfSk7XG4gICAgRmlsZVV0aWxpdGllcy5kb3duTG9hZEJsb2IoYmxvYiwgJ2V4cG9ydC5jc3YnKTtcbn1cblxuLyoqXG4gKiBBIG11bHRpIHNlbGVjdCBhY3Rpb24gdGhhdCBleHBvcnRzIHRoZSBkYXRhIGFzIGEgeG1sIGZpbGUuXG4gKiBPYmplY3QgdmFsdWVzIGdldCBzdHJpbmdpZmllZC5cbiAqIEBwYXJhbSBzZWxlY3RlZEVudGl0aWVzIC0gVGhlIHNlbGVjdGVkIGVudGl0aWVzIHRvIGV4cG9ydC5cbiAqL1xuZXhwb3J0IGZ1bmN0aW9uIGV4cG9ydEFzWG1sTXVsdGlBY3Rpb248RW50aXR5VHlwZSBleHRlbmRzIEJhc2VFbnRpdHlUeXBlPEVudGl0eVR5cGU+PihzZWxlY3RlZEVudGl0aWVzOiBFbnRpdHlUeXBlW10pOiB2b2lkIHtcbiAgICBjb25zdCB4bWxTdHJpbmc6IHN0cmluZyA9IEpzMlhtbFV0aWxpdGllcy5wYXJzZSgndmFsdWVzJywgc2VsZWN0ZWRFbnRpdGllcyk7XG4gICAgY29uc3QgYmxvYjogQmxvYiA9IG5ldyBCbG9iKFt4bWxTdHJpbmddLCB7IHR5cGU6ICcueG1sJyB9KTtcbiAgICBGaWxlVXRpbGl0aWVzLmRvd25Mb2FkQmxvYihibG9iLCAnZXhwb3J0LnhtbCcpO1xufVxuXG4vLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUganNkb2MvcmVxdWlyZS1qc2RvY1xuZnVuY3Rpb24gY29udmVydFRvQ3N2PEVudGl0eVR5cGUgZXh0ZW5kcyBCYXNlRW50aXR5VHlwZTxFbnRpdHlUeXBlPj4oYXJyYXk6IEVudGl0eVR5cGVbXSwgaGVhZGVyTGlzdDogKGtleW9mIEVudGl0eVR5cGUpW10pOiBzdHJpbmcge1xuICAgIGNvbnN0IGhlYWRlclJvdzogc3RyaW5nID0gaGVhZGVyTGlzdC5qb2luKENTVl9TRVBBUkFUT1IpO1xuICAgIGxldCByZXN1bHQ6IHN0cmluZyA9IGhlYWRlclJvdyArICdcXHJcXG4nO1xuICAgIGZvciAoY29uc3QgZW50aXR5IG9mIGFycmF5KSB7XG4gICAgICAgIHJlc3VsdCArPSBnZXRMaW5lRm9yRW50aXR5PEVudGl0eVR5cGU+KGhlYWRlckxpc3QsIGVudGl0eSkgKyAnXFxyXFxuJztcbiAgICB9XG4gICAgcmV0dXJuIHJlc3VsdDtcbn1cblxuXG4vLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUganNkb2MvcmVxdWlyZS1qc2RvY1xuZnVuY3Rpb24gZ2V0TGluZUZvckVudGl0eTxFbnRpdHlUeXBlIGV4dGVuZHMgQmFzZUVudGl0eVR5cGU8RW50aXR5VHlwZT4+KGhlYWRlckxpc3Q6IChrZXlvZiBFbnRpdHlUeXBlKVtdLCBlbnRpdHk6IEVudGl0eVR5cGUpOiBzdHJpbmcge1xuICAgIGxldCBsaW5lOiBzdHJpbmcgPSAnJztcbiAgICBmb3IgKGNvbnN0IGhlYWQgb2YgaGVhZGVyTGlzdCkge1xuICAgICAgICBsaW5lID0gbGluZSArPSBnZXRMaW5lRm9ySGVhZGVyPEVudGl0eVR5cGU+KGVudGl0eSwgaGVhZCk7XG4gICAgfVxuICAgIGxpbmUuc2xpY2UoMCwgbGluZS5sZW5ndGggLSAxKTtcbiAgICByZXR1cm4gbGluZTtcbn1cblxuLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIGpzZG9jL3JlcXVpcmUtanNkb2NcbmZ1bmN0aW9uIGdldExpbmVGb3JIZWFkZXI8RW50aXR5VHlwZSBleHRlbmRzIEJhc2VFbnRpdHlUeXBlPEVudGl0eVR5cGU+PihlbnRpdHk6IEVudGl0eVR5cGUsIGhlYWQ6IGtleW9mIEVudGl0eVR5cGUpOiBzdHJpbmcge1xuICAgIGNvbnN0IHZhbHVlOiB1bmtub3duID0gZW50aXR5W2hlYWRdO1xuICAgIGlmIChMb2Rhc2hVdGlsaXRpZXMuaXNPYmplY3QodmFsdWUpKSB7XG4gICAgICAgIHJldHVybiBgJHtKU09OLnN0cmluZ2lmeSh2YWx1ZSl9JHtDU1ZfU0VQQVJBVE9SfWA7XG4gICAgfVxuICAgIGlmIChMb2Rhc2hVdGlsaXRpZXMuaXNBcnJheSh2YWx1ZSkgJiYgTG9kYXNoVXRpbGl0aWVzLmlzT2JqZWN0KHZhbHVlWzBdKSkge1xuICAgICAgICByZXR1cm4gYCR7dmFsdWUubWFwKHYgPT4gSlNPTi5zdHJpbmdpZnkodikpfSR7Q1NWX1NFUEFSQVRPUn1gO1xuICAgIH1cbiAgICByZXR1cm4gYCR7ZW50aXR5W2hlYWRdfSR7Q1NWX1NFUEFSQVRPUn1gO1xufSJdfQ==
@@ -5,7 +5,11 @@ import * as i0 from "@angular/core";
5
5
  *
6
6
  * Contains the entity for which the component gets displayed.
7
7
  */
8
+ // eslint-disable-next-line angular/prefer-standalone-component
8
9
  export class NgxMatEntityBaseDisplayColumnValueComponent {
10
+ /**
11
+ * The entity for which the component gets displayed.
12
+ */
9
13
  entity;
10
14
  constructor() { }
11
15
  ngOnInit() {
@@ -25,4 +29,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.0", ngImpor
25
29
  }], ctorParameters: function () { return []; }, propDecorators: { entity: [{
26
30
  type: Input
27
31
  }] } });
28
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYmFzZS1kaXNwbGF5LWNvbHVtbi12YWx1ZS5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9uZ3gtbWF0ZXJpYWwtZW50aXR5L3NyYy9jb21wb25lbnRzL3RhYmxlL2Rpc3BsYXktY29sdW1uLXZhbHVlL2Jhc2UtZGlzcGxheS1jb2x1bW4tdmFsdWUuY29tcG9uZW50LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxTQUFTLEVBQUUsS0FBSyxFQUFVLE1BQU0sZUFBZSxDQUFDOztBQUd6RDs7OztHQUlHO0FBS0gsTUFBTSxPQUFnQiwyQ0FBMkM7SUFHN0QsTUFBTSxDQUFjO0lBRXBCLGdCQUFnQixDQUFDO0lBRWpCLFFBQVE7UUFDSixJQUFJLElBQUksQ0FBQyxNQUFNLElBQUksSUFBSSxFQUFFO1lBQ3JCLE1BQU0sSUFBSSxLQUFLLENBQUMsNkJBQTZCLENBQUMsQ0FBQztTQUNsRDtJQUNMLENBQUM7dUdBWGlCLDJDQUEyQzsyRkFBM0MsMkNBQTJDLDhHQUZuRCxFQUFFOzsyRkFFTSwyQ0FBMkM7a0JBSmhFLFNBQVM7bUJBQUM7b0JBQ1AsUUFBUSxFQUFFLDBDQUEwQztvQkFDcEQsUUFBUSxFQUFFLEVBQUU7aUJBQ2Y7MEVBSUcsTUFBTTtzQkFETCxLQUFLIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29tcG9uZW50LCBJbnB1dCwgT25Jbml0IH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBCYXNlRW50aXR5VHlwZSB9IGZyb20gJy4uLy4uLy4uL2NsYXNzZXMvZW50aXR5Lm1vZGVsJztcblxuLyoqXG4gKiBUaGUgYmFzZSBjb21wb25lbnQgZm9yIGN1c3RvbSBkaXNwbGF5IHZhbHVlcy5cbiAqXG4gKiBDb250YWlucyB0aGUgZW50aXR5IGZvciB3aGljaCB0aGUgY29tcG9uZW50IGdldHMgZGlzcGxheWVkLlxuICovXG5AQ29tcG9uZW50KHtcbiAgICBzZWxlY3RvcjogJ25neC1tYXQtZW50aXR5LWJhc2UtZGlzcGxheS1jb2x1bW4tdmFsdWUnLFxuICAgIHRlbXBsYXRlOiAnJ1xufSlcbmV4cG9ydCBhYnN0cmFjdCBjbGFzcyBOZ3hNYXRFbnRpdHlCYXNlRGlzcGxheUNvbHVtblZhbHVlQ29tcG9uZW50PEVudGl0eVR5cGUgZXh0ZW5kcyBCYXNlRW50aXR5VHlwZTxFbnRpdHlUeXBlPj4gaW1wbGVtZW50cyBPbkluaXQge1xuXG4gICAgQElucHV0KClcbiAgICBlbnRpdHkhOiBFbnRpdHlUeXBlO1xuXG4gICAgY29uc3RydWN0b3IoKSB7IH1cblxuICAgIG5nT25Jbml0KCk6IHZvaWQge1xuICAgICAgICBpZiAodGhpcy5lbnRpdHkgPT0gbnVsbCkge1xuICAgICAgICAgICAgdGhyb3cgbmV3IEVycm9yKCdUaGUgcHJvdmlkZWQgZW50aXR5IGlzIG51bGwnKTtcbiAgICAgICAgfVxuICAgIH1cbn0iXX0=
32
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYmFzZS1kaXNwbGF5LWNvbHVtbi12YWx1ZS5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9uZ3gtbWF0ZXJpYWwtZW50aXR5L3NyYy9jb21wb25lbnRzL3RhYmxlL2Rpc3BsYXktY29sdW1uLXZhbHVlL2Jhc2UtZGlzcGxheS1jb2x1bW4tdmFsdWUuY29tcG9uZW50LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxTQUFTLEVBQUUsS0FBSyxFQUFVLE1BQU0sZUFBZSxDQUFDOztBQUd6RDs7OztHQUlHO0FBQ0gsK0RBQStEO0FBSy9ELE1BQU0sT0FBZ0IsMkNBQTJDO0lBRTdEOztPQUVHO0lBRUgsTUFBTSxDQUFjO0lBRXBCLGdCQUFnQixDQUFDO0lBRWpCLFFBQVE7UUFDSixJQUFJLElBQUksQ0FBQyxNQUFNLElBQUksSUFBSSxFQUFFO1lBQ3JCLE1BQU0sSUFBSSxLQUFLLENBQUMsNkJBQTZCLENBQUMsQ0FBQztTQUNsRDtJQUNMLENBQUM7dUdBZGlCLDJDQUEyQzsyRkFBM0MsMkNBQTJDLDhHQUZuRCxFQUFFOzsyRkFFTSwyQ0FBMkM7a0JBSmhFLFNBQVM7bUJBQUM7b0JBQ1AsUUFBUSxFQUFFLDBDQUEwQztvQkFDcEQsUUFBUSxFQUFFLEVBQUU7aUJBQ2Y7MEVBT0csTUFBTTtzQkFETCxLQUFLIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29tcG9uZW50LCBJbnB1dCwgT25Jbml0IH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBCYXNlRW50aXR5VHlwZSB9IGZyb20gJy4uLy4uLy4uL2NsYXNzZXMvZW50aXR5Lm1vZGVsJztcblxuLyoqXG4gKiBUaGUgYmFzZSBjb21wb25lbnQgZm9yIGN1c3RvbSBkaXNwbGF5IHZhbHVlcy5cbiAqXG4gKiBDb250YWlucyB0aGUgZW50aXR5IGZvciB3aGljaCB0aGUgY29tcG9uZW50IGdldHMgZGlzcGxheWVkLlxuICovXG4vLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgYW5ndWxhci9wcmVmZXItc3RhbmRhbG9uZS1jb21wb25lbnRcbkBDb21wb25lbnQoe1xuICAgIHNlbGVjdG9yOiAnbmd4LW1hdC1lbnRpdHktYmFzZS1kaXNwbGF5LWNvbHVtbi12YWx1ZScsXG4gICAgdGVtcGxhdGU6ICcnXG59KVxuZXhwb3J0IGFic3RyYWN0IGNsYXNzIE5neE1hdEVudGl0eUJhc2VEaXNwbGF5Q29sdW1uVmFsdWVDb21wb25lbnQ8RW50aXR5VHlwZSBleHRlbmRzIEJhc2VFbnRpdHlUeXBlPEVudGl0eVR5cGU+PiBpbXBsZW1lbnRzIE9uSW5pdCB7XG5cbiAgICAvKipcbiAgICAgKiBUaGUgZW50aXR5IGZvciB3aGljaCB0aGUgY29tcG9uZW50IGdldHMgZGlzcGxheWVkLlxuICAgICAqL1xuICAgIEBJbnB1dCgpXG4gICAgZW50aXR5ITogRW50aXR5VHlwZTtcblxuICAgIGNvbnN0cnVjdG9yKCkgeyB9XG5cbiAgICBuZ09uSW5pdCgpOiB2b2lkIHtcbiAgICAgICAgaWYgKHRoaXMuZW50aXR5ID09IG51bGwpIHtcbiAgICAgICAgICAgIHRocm93IG5ldyBFcnJvcignVGhlIHByb3ZpZGVkIGVudGl0eSBpcyBudWxsJyk7XG4gICAgICAgIH1cbiAgICB9XG59Il19
@@ -1,4 +1,3 @@
1
- /* eslint-disable @angular-eslint/component-selector */
2
1
  import { Component, Input, Type, ViewContainerRef } from '@angular/core';
3
2
  import * as i0 from "@angular/core";
4
3
  /**
@@ -6,8 +5,17 @@ import * as i0 from "@angular/core";
6
5
  */
7
6
  export class DisplayColumnValueComponent {
8
7
  viewContainerRef;
8
+ /**
9
+ * The entity for which the column should be displayed.
10
+ */
9
11
  entity;
12
+ /**
13
+ * The class of the component that should be used inside the custom display column.
14
+ */
10
15
  ComponentClass;
16
+ /**
17
+ * The actual component that is used inside the custom display column.
18
+ */
11
19
  component;
12
20
  constructor(viewContainerRef) {
13
21
  this.viewContainerRef = viewContainerRef;
@@ -34,4 +42,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.0", ngImpor
34
42
  }], ComponentClass: [{
35
43
  type: Input
36
44
  }] } });
37
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGlzcGxheS1jb2x1bW4tdmFsdWUuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvbmd4LW1hdGVyaWFsLWVudGl0eS9zcmMvY29tcG9uZW50cy90YWJsZS9kaXNwbGF5LWNvbHVtbi12YWx1ZS9kaXNwbGF5LWNvbHVtbi12YWx1ZS5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9uZ3gtbWF0ZXJpYWwtZW50aXR5L3NyYy9jb21wb25lbnRzL3RhYmxlL2Rpc3BsYXktY29sdW1uLXZhbHVlL2Rpc3BsYXktY29sdW1uLXZhbHVlLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLHVEQUF1RDtBQUN2RCxPQUFPLEVBQUUsU0FBUyxFQUFnQixLQUFLLEVBQVUsSUFBSSxFQUFFLGdCQUFnQixFQUFFLE1BQU0sZUFBZSxDQUFDOztBQUkvRjs7R0FFRztBQVFILE1BQU0sT0FBTywyQkFBMkI7SUFVUDtJQVA3QixNQUFNLENBQWM7SUFHcEIsY0FBYyxDQUFpRTtJQUUvRSxTQUFTLENBQXlFO0lBRWxGLFlBQTZCLGdCQUFrQztRQUFsQyxxQkFBZ0IsR0FBaEIsZ0JBQWdCLENBQWtCO0lBQUcsQ0FBQztJQUVuRSxRQUFRO1FBQ0osSUFBSSxJQUFJLENBQUMsY0FBYyxJQUFJLElBQUksRUFBRTtZQUM3QixNQUFNLElBQUksS0FBSyxDQUFDLHNDQUFzQyxDQUFDLENBQUM7U0FDM0Q7UUFDRCxJQUFJLElBQUksQ0FBQyxNQUFNLElBQUksSUFBSSxFQUFFO1lBQ3JCLE1BQU0sSUFBSSxLQUFLLENBQUMsb0NBQW9DLENBQUMsQ0FBQztTQUN6RDtRQUNELElBQUksQ0FBQyxTQUFTLEdBQUcsSUFBSSxDQUFDLGdCQUFnQixDQUFDLGVBQWUsQ0FBQyxJQUFJLENBQUMsY0FBYyxDQUFDLENBQUM7UUFDNUUsSUFBSSxDQUFDLFNBQVMsQ0FBQyxRQUFRLENBQUMsTUFBTSxHQUFHLElBQUksQ0FBQyxNQUFNLENBQUM7UUFDNUMsSUFBSSxDQUFDLFNBQVMsQ0FBQyxRQUFRLENBQUMsYUFBNkIsQ0FBQyxZQUFZLENBQUMsT0FBTyxFQUFFLGFBQWEsQ0FBQyxDQUFDO0lBQ2hHLENBQUM7dUdBdEJRLDJCQUEyQjsyRkFBM0IsMkJBQTJCLGdKQ2Z4QyxFQUFBOzsyRkRlYSwyQkFBMkI7a0JBUHZDLFNBQVM7K0JBQ0ksc0JBQXNCLGNBR3BCLElBQUksV0FDUCxFQUFFO3VHQUtYLE1BQU07c0JBREwsS0FBSztnQkFJTixjQUFjO3NCQURiLEtBQUsiLCJzb3VyY2VzQ29udGVudCI6WyIvKiBlc2xpbnQtZGlzYWJsZSBAYW5ndWxhci1lc2xpbnQvY29tcG9uZW50LXNlbGVjdG9yICovXG5pbXBvcnQgeyBDb21wb25lbnQsIENvbXBvbmVudFJlZiwgSW5wdXQsIE9uSW5pdCwgVHlwZSwgVmlld0NvbnRhaW5lclJlZiB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgQmFzZUVudGl0eVR5cGUgfSBmcm9tICcuLi8uLi8uLi9jbGFzc2VzL2VudGl0eS5tb2RlbCc7XG5pbXBvcnQgeyBOZ3hNYXRFbnRpdHlCYXNlRGlzcGxheUNvbHVtblZhbHVlQ29tcG9uZW50IH0gZnJvbSAnLi9iYXNlLWRpc3BsYXktY29sdW1uLXZhbHVlLmNvbXBvbmVudCc7XG5cbi8qKlxuICogVGhlIGNvbXBvbmVudCB0aGF0IGRpc3BsYXlzIHRoZSBjdXN0b20gZGlzcGxheSBjb2x1bW4gdmFsdWUuXG4gKi9cbkBDb21wb25lbnQoe1xuICAgIHNlbGVjdG9yOiAnZGlzcGxheS1jb2x1bW4tdmFsdWUnLFxuICAgIHRlbXBsYXRlVXJsOiAnLi9kaXNwbGF5LWNvbHVtbi12YWx1ZS5jb21wb25lbnQuaHRtbCcsXG4gICAgc3R5bGVVcmxzOiBbJy4vZGlzcGxheS1jb2x1bW4tdmFsdWUuY29tcG9uZW50LnNjc3MnXSxcbiAgICBzdGFuZGFsb25lOiB0cnVlLFxuICAgIGltcG9ydHM6IFtdXG59KVxuZXhwb3J0IGNsYXNzIERpc3BsYXlDb2x1bW5WYWx1ZUNvbXBvbmVudDxFbnRpdHlUeXBlIGV4dGVuZHMgQmFzZUVudGl0eVR5cGU8RW50aXR5VHlwZT4+IGltcGxlbWVudHMgT25Jbml0IHtcblxuICAgIEBJbnB1dCgpXG4gICAgZW50aXR5ITogRW50aXR5VHlwZTtcblxuICAgIEBJbnB1dCgpXG4gICAgQ29tcG9uZW50Q2xhc3MhOiBUeXBlPE5neE1hdEVudGl0eUJhc2VEaXNwbGF5Q29sdW1uVmFsdWVDb21wb25lbnQ8RW50aXR5VHlwZT4+O1xuXG4gICAgY29tcG9uZW50ITogQ29tcG9uZW50UmVmPE5neE1hdEVudGl0eUJhc2VEaXNwbGF5Q29sdW1uVmFsdWVDb21wb25lbnQ8RW50aXR5VHlwZT4+O1xuXG4gICAgY29uc3RydWN0b3IocHJpdmF0ZSByZWFkb25seSB2aWV3Q29udGFpbmVyUmVmOiBWaWV3Q29udGFpbmVyUmVmKSB7fVxuXG4gICAgbmdPbkluaXQoKTogdm9pZCB7XG4gICAgICAgIGlmICh0aGlzLkNvbXBvbmVudENsYXNzID09IG51bGwpIHtcbiAgICAgICAgICAgIHRocm93IG5ldyBFcnJvcignTm8gQ29tcG9uZW50Q2xhc3MgaGFzIGJlZW4gcHJvdmlkZWQuJyk7XG4gICAgICAgIH1cbiAgICAgICAgaWYgKHRoaXMuZW50aXR5ID09IG51bGwpIHtcbiAgICAgICAgICAgIHRocm93IG5ldyBFcnJvcignTm8gZW50aXR5IHZhbHVlIGhhcyBiZWVuIHByb3ZpZGVkLicpO1xuICAgICAgICB9XG4gICAgICAgIHRoaXMuY29tcG9uZW50ID0gdGhpcy52aWV3Q29udGFpbmVyUmVmLmNyZWF0ZUNvbXBvbmVudCh0aGlzLkNvbXBvbmVudENsYXNzKTtcbiAgICAgICAgdGhpcy5jb21wb25lbnQuaW5zdGFuY2UuZW50aXR5ID0gdGhpcy5lbnRpdHk7XG4gICAgICAgICh0aGlzLmNvbXBvbmVudC5sb2NhdGlvbi5uYXRpdmVFbGVtZW50IGFzIEhUTUxFbGVtZW50KS5zZXRBdHRyaWJ1dGUoJ3N0eWxlJywgJ3dpZHRoOiAxMDAlJyk7XG4gICAgfVxufSIsIiJdfQ==
45
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGlzcGxheS1jb2x1bW4tdmFsdWUuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvbmd4LW1hdGVyaWFsLWVudGl0eS9zcmMvY29tcG9uZW50cy90YWJsZS9kaXNwbGF5LWNvbHVtbi12YWx1ZS9kaXNwbGF5LWNvbHVtbi12YWx1ZS5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9uZ3gtbWF0ZXJpYWwtZW50aXR5L3NyYy9jb21wb25lbnRzL3RhYmxlL2Rpc3BsYXktY29sdW1uLXZhbHVlL2Rpc3BsYXktY29sdW1uLXZhbHVlLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxTQUFTLEVBQWdCLEtBQUssRUFBVSxJQUFJLEVBQUUsZ0JBQWdCLEVBQUUsTUFBTSxlQUFlLENBQUM7O0FBSS9GOztHQUVHO0FBUUgsTUFBTSxPQUFPLDJCQUEyQjtJQW1CUDtJQWpCN0I7O09BRUc7SUFFSCxNQUFNLENBQWM7SUFFcEI7O09BRUc7SUFFSCxjQUFjLENBQWlFO0lBRS9FOztPQUVHO0lBQ0gsU0FBUyxDQUF5RTtJQUVsRixZQUE2QixnQkFBa0M7UUFBbEMscUJBQWdCLEdBQWhCLGdCQUFnQixDQUFrQjtJQUFHLENBQUM7SUFFbkUsUUFBUTtRQUNKLElBQUksSUFBSSxDQUFDLGNBQWMsSUFBSSxJQUFJLEVBQUU7WUFDN0IsTUFBTSxJQUFJLEtBQUssQ0FBQyxzQ0FBc0MsQ0FBQyxDQUFDO1NBQzNEO1FBQ0QsSUFBSSxJQUFJLENBQUMsTUFBTSxJQUFJLElBQUksRUFBRTtZQUNyQixNQUFNLElBQUksS0FBSyxDQUFDLG9DQUFvQyxDQUFDLENBQUM7U0FDekQ7UUFDRCxJQUFJLENBQUMsU0FBUyxHQUFHLElBQUksQ0FBQyxnQkFBZ0IsQ0FBQyxlQUFlLENBQUMsSUFBSSxDQUFDLGNBQWMsQ0FBQyxDQUFDO1FBQzVFLElBQUksQ0FBQyxTQUFTLENBQUMsUUFBUSxDQUFDLE1BQU0sR0FBRyxJQUFJLENBQUMsTUFBTSxDQUFDO1FBQzVDLElBQUksQ0FBQyxTQUFTLENBQUMsUUFBUSxDQUFDLGFBQTZCLENBQUMsWUFBWSxDQUFDLE9BQU8sRUFBRSxhQUFhLENBQUMsQ0FBQztJQUNoRyxDQUFDO3VHQS9CUSwyQkFBMkI7MkZBQTNCLDJCQUEyQixnSkNkeEMsRUFBQTs7MkZEY2EsMkJBQTJCO2tCQVB2QyxTQUFTOytCQUNJLHNCQUFzQixjQUdwQixJQUFJLFdBQ1AsRUFBRTt1R0FRWCxNQUFNO3NCQURMLEtBQUs7Z0JBT04sY0FBYztzQkFEYixLQUFLIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29tcG9uZW50LCBDb21wb25lbnRSZWYsIElucHV0LCBPbkluaXQsIFR5cGUsIFZpZXdDb250YWluZXJSZWYgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IEJhc2VFbnRpdHlUeXBlIH0gZnJvbSAnLi4vLi4vLi4vY2xhc3Nlcy9lbnRpdHkubW9kZWwnO1xuaW1wb3J0IHsgTmd4TWF0RW50aXR5QmFzZURpc3BsYXlDb2x1bW5WYWx1ZUNvbXBvbmVudCB9IGZyb20gJy4vYmFzZS1kaXNwbGF5LWNvbHVtbi12YWx1ZS5jb21wb25lbnQnO1xuXG4vKipcbiAqIFRoZSBjb21wb25lbnQgdGhhdCBkaXNwbGF5cyB0aGUgY3VzdG9tIGRpc3BsYXkgY29sdW1uIHZhbHVlLlxuICovXG5AQ29tcG9uZW50KHtcbiAgICBzZWxlY3RvcjogJ2Rpc3BsYXktY29sdW1uLXZhbHVlJyxcbiAgICB0ZW1wbGF0ZVVybDogJy4vZGlzcGxheS1jb2x1bW4tdmFsdWUuY29tcG9uZW50Lmh0bWwnLFxuICAgIHN0eWxlVXJsczogWycuL2Rpc3BsYXktY29sdW1uLXZhbHVlLmNvbXBvbmVudC5zY3NzJ10sXG4gICAgc3RhbmRhbG9uZTogdHJ1ZSxcbiAgICBpbXBvcnRzOiBbXVxufSlcbmV4cG9ydCBjbGFzcyBEaXNwbGF5Q29sdW1uVmFsdWVDb21wb25lbnQ8RW50aXR5VHlwZSBleHRlbmRzIEJhc2VFbnRpdHlUeXBlPEVudGl0eVR5cGU+PiBpbXBsZW1lbnRzIE9uSW5pdCB7XG5cbiAgICAvKipcbiAgICAgKiBUaGUgZW50aXR5IGZvciB3aGljaCB0aGUgY29sdW1uIHNob3VsZCBiZSBkaXNwbGF5ZWQuXG4gICAgICovXG4gICAgQElucHV0KClcbiAgICBlbnRpdHkhOiBFbnRpdHlUeXBlO1xuXG4gICAgLyoqXG4gICAgICogVGhlIGNsYXNzIG9mIHRoZSBjb21wb25lbnQgdGhhdCBzaG91bGQgYmUgdXNlZCBpbnNpZGUgdGhlIGN1c3RvbSBkaXNwbGF5IGNvbHVtbi5cbiAgICAgKi9cbiAgICBASW5wdXQoKVxuICAgIENvbXBvbmVudENsYXNzITogVHlwZTxOZ3hNYXRFbnRpdHlCYXNlRGlzcGxheUNvbHVtblZhbHVlQ29tcG9uZW50PEVudGl0eVR5cGU+PjtcblxuICAgIC8qKlxuICAgICAqIFRoZSBhY3R1YWwgY29tcG9uZW50IHRoYXQgaXMgdXNlZCBpbnNpZGUgdGhlIGN1c3RvbSBkaXNwbGF5IGNvbHVtbi5cbiAgICAgKi9cbiAgICBjb21wb25lbnQhOiBDb21wb25lbnRSZWY8Tmd4TWF0RW50aXR5QmFzZURpc3BsYXlDb2x1bW5WYWx1ZUNvbXBvbmVudDxFbnRpdHlUeXBlPj47XG5cbiAgICBjb25zdHJ1Y3Rvcihwcml2YXRlIHJlYWRvbmx5IHZpZXdDb250YWluZXJSZWY6IFZpZXdDb250YWluZXJSZWYpIHt9XG5cbiAgICBuZ09uSW5pdCgpOiB2b2lkIHtcbiAgICAgICAgaWYgKHRoaXMuQ29tcG9uZW50Q2xhc3MgPT0gbnVsbCkge1xuICAgICAgICAgICAgdGhyb3cgbmV3IEVycm9yKCdObyBDb21wb25lbnRDbGFzcyBoYXMgYmVlbiBwcm92aWRlZC4nKTtcbiAgICAgICAgfVxuICAgICAgICBpZiAodGhpcy5lbnRpdHkgPT0gbnVsbCkge1xuICAgICAgICAgICAgdGhyb3cgbmV3IEVycm9yKCdObyBlbnRpdHkgdmFsdWUgaGFzIGJlZW4gcHJvdmlkZWQuJyk7XG4gICAgICAgIH1cbiAgICAgICAgdGhpcy5jb21wb25lbnQgPSB0aGlzLnZpZXdDb250YWluZXJSZWYuY3JlYXRlQ29tcG9uZW50KHRoaXMuQ29tcG9uZW50Q2xhc3MpO1xuICAgICAgICB0aGlzLmNvbXBvbmVudC5pbnN0YW5jZS5lbnRpdHkgPSB0aGlzLmVudGl0eTtcbiAgICAgICAgKHRoaXMuY29tcG9uZW50LmxvY2F0aW9uLm5hdGl2ZUVsZW1lbnQgYXMgSFRNTEVsZW1lbnQpLnNldEF0dHJpYnV0ZSgnc3R5bGUnLCAnd2lkdGg6IDEwMCUnKTtcbiAgICB9XG59IiwiIl19