@dereekb/dbx-form 0.0.1 → 1.0.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (239) hide show
  1. package/{src/_index.scss → _index.scss} +8 -0
  2. package/esm2020/lib/form/action/form.action.directive.mjs +42 -40
  3. package/esm2020/lib/form/action/form.action.module.mjs +6 -6
  4. package/esm2020/lib/form/action/index.mjs +2 -1
  5. package/esm2020/lib/form/action/transition/form.action.transition.module.mjs +26 -0
  6. package/esm2020/lib/form/action/transition/form.action.transition.safety.directive.mjs +40 -0
  7. package/esm2020/lib/form/action/transition/index.mjs +3 -0
  8. package/esm2020/lib/form/form.mjs +11 -4
  9. package/esm2020/lib/form/form.module.mjs +13 -24
  10. package/esm2020/lib/form/index.mjs +2 -4
  11. package/esm2020/lib/form/io/form.changes.directive.mjs +34 -0
  12. package/esm2020/lib/form/io/form.input.directive.mjs +49 -0
  13. package/esm2020/lib/form/io/form.io.module.mjs +36 -0
  14. package/esm2020/lib/form/io/form.loading.directive.mjs +52 -0
  15. package/esm2020/lib/form/io/index.mjs +5 -0
  16. package/esm2020/lib/form.module.mjs +25 -0
  17. package/esm2020/lib/formly/config/index.mjs +2 -0
  18. package/esm2020/lib/formly/config/validation.mjs +22 -0
  19. package/esm2020/lib/formly/field/checklist/checklist.field.mjs +105 -0
  20. package/esm2020/lib/formly/field/checklist/checklist.item.field.component.mjs +28 -30
  21. package/esm2020/lib/formly/field/checklist/checklist.item.field.content.default.component.mjs +1 -1
  22. package/esm2020/lib/formly/field/checklist/checklist.item.field.mjs +8 -112
  23. package/esm2020/lib/formly/field/checklist/index.mjs +2 -1
  24. package/esm2020/lib/formly/field/component/component.field.component.mjs +7 -7
  25. package/esm2020/lib/formly/field/component/component.field.mjs +4 -2
  26. package/esm2020/lib/formly/field/field.mjs +35 -2
  27. package/esm2020/lib/formly/field/form.field.module.mjs +44 -0
  28. package/esm2020/lib/formly/field/index.mjs +3 -1
  29. package/esm2020/lib/formly/field/selection/index.mjs +2 -1
  30. package/esm2020/lib/formly/field/selection/pickable/index.mjs +2 -1
  31. package/esm2020/lib/formly/field/selection/pickable/pickable.chip.field.component.mjs +14 -12
  32. package/esm2020/lib/formly/field/selection/pickable/pickable.field.directive.mjs +40 -31
  33. package/esm2020/lib/formly/field/selection/pickable/pickable.field.mjs +39 -0
  34. package/esm2020/lib/formly/field/selection/pickable/pickable.field.module.mjs +22 -13
  35. package/esm2020/lib/formly/field/selection/pickable/pickable.list.field.component.mjs +75 -16
  36. package/esm2020/lib/formly/field/selection/searchable/searchable.chip.field.component.mjs +32 -15
  37. package/esm2020/lib/formly/field/selection/searchable/searchable.field.autocomplete.item.component.mjs +64 -50
  38. package/esm2020/lib/formly/field/selection/searchable/searchable.field.directive.mjs +69 -53
  39. package/esm2020/lib/formly/field/selection/searchable/searchable.field.mjs +30 -7
  40. package/esm2020/lib/formly/field/selection/searchable/searchable.field.module.mjs +8 -10
  41. package/esm2020/lib/formly/field/selection/searchable/searchable.mjs +1 -1
  42. package/esm2020/lib/formly/field/selection/searchable/searchable.text.field.component.mjs +35 -11
  43. package/esm2020/lib/formly/field/selection/searchable/text.chip.field.mjs +1 -1
  44. package/esm2020/lib/formly/field/selection/selection.mjs +1 -1
  45. package/esm2020/lib/formly/field/selection/selection.module.mjs +28 -0
  46. package/esm2020/lib/formly/field/texteditor/index.mjs +4 -0
  47. package/esm2020/lib/formly/field/texteditor/texteditor.field.component.mjs +90 -0
  48. package/esm2020/lib/formly/field/texteditor/texteditor.field.mjs +20 -0
  49. package/esm2020/lib/formly/field/texteditor/texteditor.field.module.mjs +59 -0
  50. package/esm2020/lib/formly/field/value/array/array.field.component.mjs +87 -51
  51. package/esm2020/lib/formly/field/value/array/array.field.mjs +20 -0
  52. package/esm2020/lib/formly/field/value/array/array.field.module.mjs +25 -7
  53. package/esm2020/lib/formly/field/value/array/index.mjs +2 -1
  54. package/esm2020/lib/formly/field/value/boolean/boolean.field.mjs +11 -20
  55. package/esm2020/lib/formly/field/value/date/date.field.module.mjs +9 -6
  56. package/esm2020/lib/formly/field/value/date/datetime.field.component.mjs +74 -44
  57. package/esm2020/lib/formly/field/value/date/datetime.field.mjs +36 -0
  58. package/esm2020/lib/formly/field/value/date/index.mjs +2 -2
  59. package/esm2020/lib/formly/field/value/enum/enum.field.mjs +1 -1
  60. package/esm2020/lib/formly/field/value/enum/enum.field.module.mjs +16 -0
  61. package/esm2020/lib/formly/field/value/enum/index.mjs +2 -1
  62. package/esm2020/lib/formly/field/value/hidden.field.mjs +1 -1
  63. package/esm2020/lib/formly/field/value/index.mjs +2 -1
  64. package/esm2020/lib/formly/field/value/phone/phone.field.component.mjs +13 -33
  65. package/esm2020/lib/formly/field/value/phone/phone.field.mjs +50 -52
  66. package/esm2020/lib/formly/field/value/phone/phone.field.module.mjs +15 -7
  67. package/esm2020/lib/formly/field/value/text/index.mjs +2 -1
  68. package/esm2020/lib/formly/field/value/text/text.additional.field.mjs +81 -0
  69. package/esm2020/lib/formly/field/value/text/text.address.field.mjs +16 -23
  70. package/esm2020/lib/formly/field/value/text/text.field.mjs +11 -110
  71. package/esm2020/lib/formly/field/value/text/text.field.module.mjs +9 -4
  72. package/esm2020/lib/formly/field/value/value.module.mjs +44 -0
  73. package/esm2020/lib/formly/field/wrapper/autotouch.wrapper.component.mjs +1 -1
  74. package/esm2020/lib/formly/field/wrapper/expandable.wrapper.component.mjs +12 -56
  75. package/esm2020/lib/formly/field/wrapper/expandable.wrapper.delegate.mjs +58 -0
  76. package/esm2020/lib/formly/field/wrapper/flex.wrapper.component.mjs +18 -8
  77. package/esm2020/lib/formly/field/wrapper/form.wrapper.module.mjs +43 -30
  78. package/esm2020/lib/formly/field/wrapper/index.mjs +3 -3
  79. package/esm2020/lib/formly/field/wrapper/info.wrapper.component.mjs +16 -16
  80. package/esm2020/lib/formly/field/wrapper/section.wrapper.component.mjs +17 -23
  81. package/esm2020/lib/formly/field/wrapper/style.wrapper.component.mjs +43 -0
  82. package/esm2020/lib/formly/field/wrapper/subsection.wrapper.component.mjs +17 -23
  83. package/esm2020/lib/formly/field/wrapper/toggle.wrapper.component.mjs +16 -20
  84. package/esm2020/lib/formly/field/wrapper/wrapper.mjs +81 -0
  85. package/esm2020/lib/formly/formly.context.directive.mjs +38 -0
  86. package/esm2020/lib/formly/formly.context.mjs +45 -70
  87. package/esm2020/lib/formly/formly.directive.mjs +9 -6
  88. package/esm2020/lib/formly/formly.form.component.mjs +127 -0
  89. package/esm2020/lib/formly/formly.module.mjs +11 -12
  90. package/esm2020/lib/formly/index.mjs +4 -2
  91. package/esm2020/lib/index.mjs +2 -1
  92. package/fesm2015/dereekb-dbx-form.mjs +1603 -898
  93. package/fesm2015/dereekb-dbx-form.mjs.map +1 -1
  94. package/fesm2020/dereekb-dbx-form.mjs +1650 -880
  95. package/fesm2020/dereekb-dbx-form.mjs.map +1 -1
  96. package/{src/lib → lib}/form/_form.scss +0 -0
  97. package/lib/form/action/form.action.directive.d.ts +3 -3
  98. package/lib/form/action/form.action.module.d.ts +4 -4
  99. package/lib/form/action/index.d.ts +1 -0
  100. package/lib/form/action/transition/form.action.transition.module.d.ts +8 -0
  101. package/lib/form/action/transition/form.action.transition.safety.directive.d.ts +20 -0
  102. package/lib/form/action/transition/index.d.ts +2 -0
  103. package/lib/form/form.d.ts +30 -19
  104. package/lib/form/form.module.d.ts +4 -5
  105. package/lib/form/index.d.ts +1 -3
  106. package/lib/form/{form.changes.directive.d.ts → io/form.changes.directive.d.ts} +1 -1
  107. package/lib/form/{form.input.directive.d.ts → io/form.input.directive.d.ts} +3 -3
  108. package/lib/form/io/form.io.module.d.ts +10 -0
  109. package/lib/form/io/form.loading.directive.d.ts +19 -0
  110. package/lib/form/io/index.d.ts +4 -0
  111. package/lib/form.module.d.ts +9 -0
  112. package/{src/lib → lib}/formly/_formly.scss +0 -0
  113. package/lib/formly/config/index.d.ts +1 -0
  114. package/lib/formly/config/validation.d.ts +19 -0
  115. package/{src/lib → lib}/formly/field/_field.scss +0 -0
  116. package/lib/formly/field/checklist/_checklist.scss +76 -0
  117. package/lib/formly/field/checklist/checklist.field.d.ts +45 -0
  118. package/lib/formly/field/checklist/checklist.item.field.component.d.ts +13 -12
  119. package/lib/formly/field/checklist/checklist.item.field.content.default.component.d.ts +1 -1
  120. package/lib/formly/field/checklist/checklist.item.field.d.ts +3 -47
  121. package/lib/formly/field/checklist/index.d.ts +1 -0
  122. package/{src/lib → lib}/formly/field/component/_component.scss +0 -0
  123. package/lib/formly/field/component/component.field.component.d.ts +6 -2
  124. package/lib/formly/field/field.d.ts +17 -3
  125. package/{src/lib → lib}/formly/field/fields_TODO.scss +0 -0
  126. package/lib/formly/field/form.field.module.d.ts +13 -0
  127. package/lib/formly/field/index.d.ts +2 -0
  128. package/{src/lib → lib}/formly/field/selection/_selection.scss +0 -0
  129. package/lib/formly/field/selection/index.d.ts +1 -0
  130. package/{src/lib → lib}/formly/field/selection/pickable/_pickable.scss +10 -1
  131. package/lib/formly/field/selection/pickable/index.d.ts +1 -0
  132. package/lib/formly/field/selection/pickable/pickable.chip.field.component.d.ts +3 -3
  133. package/lib/formly/field/selection/pickable/pickable.field.d.ts +13 -0
  134. package/lib/formly/field/selection/pickable/pickable.field.directive.d.ts +17 -13
  135. package/lib/formly/field/selection/pickable/pickable.field.module.d.ts +1 -1
  136. package/lib/formly/field/selection/pickable/pickable.list.field.component.d.ts +27 -3
  137. package/lib/formly/field/selection/searchable/_searchable.scss +59 -0
  138. package/lib/formly/field/selection/searchable/searchable.chip.field.component.d.ts +7 -1
  139. package/lib/formly/field/selection/searchable/searchable.d.ts +6 -8
  140. package/lib/formly/field/selection/searchable/searchable.field.autocomplete.item.component.d.ts +20 -14
  141. package/lib/formly/field/selection/searchable/searchable.field.d.ts +20 -11
  142. package/lib/formly/field/selection/searchable/searchable.field.directive.d.ts +33 -24
  143. package/lib/formly/field/selection/searchable/searchable.field.module.d.ts +1 -1
  144. package/lib/formly/field/selection/searchable/searchable.text.field.component.d.ts +11 -1
  145. package/lib/formly/field/selection/searchable/text.chip.field.d.ts +2 -2
  146. package/lib/formly/field/selection/selection.d.ts +1 -0
  147. package/lib/formly/field/selection/selection.module.d.ts +9 -0
  148. package/lib/formly/field/texteditor/_texteditor.scss +98 -0
  149. package/lib/formly/field/texteditor/index.d.ts +3 -0
  150. package/lib/formly/field/texteditor/texteditor.field.component.d.ts +26 -0
  151. package/lib/formly/field/texteditor/texteditor.field.d.ts +7 -0
  152. package/lib/formly/field/texteditor/texteditor.field.module.d.ts +14 -0
  153. package/{src/lib → lib}/formly/field/value/_value.scss +0 -0
  154. package/lib/formly/field/value/array/_array.scss +73 -0
  155. package/lib/formly/field/value/array/array.field.component.d.ts +22 -11
  156. package/lib/formly/field/value/array/array.field.d.ts +9 -0
  157. package/lib/formly/field/value/array/array.field.module.d.ts +6 -3
  158. package/lib/formly/field/value/array/index.d.ts +1 -0
  159. package/{src/lib → lib}/formly/field/value/boolean/_boolean.scss +0 -0
  160. package/lib/formly/field/value/boolean/boolean.field.d.ts +5 -5
  161. package/lib/formly/field/value/date/_date.scss +79 -0
  162. package/lib/formly/field/value/date/date.field.module.d.ts +2 -1
  163. package/lib/formly/field/value/date/datetime.field.component.d.ts +16 -13
  164. package/lib/formly/field/value/date/datetime.field.d.ts +14 -0
  165. package/lib/formly/field/value/date/index.d.ts +1 -1
  166. package/{src/lib → lib}/formly/field/value/enum/_enum.scss +0 -0
  167. package/lib/formly/field/value/enum/enum.field.d.ts +2 -2
  168. package/lib/formly/field/value/enum/enum.field.module.d.ts +6 -0
  169. package/lib/formly/field/value/enum/index.d.ts +1 -0
  170. package/lib/formly/field/value/hidden.field.d.ts +2 -2
  171. package/lib/formly/field/value/index.d.ts +1 -0
  172. package/lib/formly/field/value/phone/_phone.scss +55 -0
  173. package/lib/formly/field/value/phone/phone.field.component.d.ts +8 -14
  174. package/lib/formly/field/value/phone/phone.field.d.ts +20 -18
  175. package/lib/formly/field/value/phone/phone.field.module.d.ts +10 -8
  176. package/{src/lib → lib}/formly/field/value/text/_text.scss +0 -0
  177. package/lib/formly/field/value/text/index.d.ts +1 -0
  178. package/lib/formly/field/value/text/text.additional.field.d.ts +19 -0
  179. package/lib/formly/field/value/text/text.address.field.d.ts +8 -9
  180. package/lib/formly/field/value/text/text.field.d.ts +5 -33
  181. package/lib/formly/field/value/text/text.field.module.d.ts +3 -2
  182. package/lib/formly/field/value/value.module.d.ts +13 -0
  183. package/{src/lib → lib}/formly/field/wrapper/_wrapper.scss +15 -2
  184. package/lib/formly/field/wrapper/autotouch.wrapper.component.d.ts +2 -2
  185. package/lib/formly/field/wrapper/expandable.wrapper.component.d.ts +8 -37
  186. package/lib/formly/field/wrapper/expandable.wrapper.delegate.d.ts +36 -0
  187. package/lib/formly/field/wrapper/flex.wrapper.component.d.ts +19 -4
  188. package/lib/formly/field/wrapper/form.wrapper.module.d.ts +10 -8
  189. package/lib/formly/field/wrapper/index.d.ts +2 -2
  190. package/lib/formly/field/wrapper/info.wrapper.component.d.ts +9 -9
  191. package/lib/formly/field/wrapper/section.wrapper.component.d.ts +16 -5
  192. package/lib/formly/field/wrapper/style.wrapper.component.d.ts +22 -0
  193. package/lib/formly/field/wrapper/subsection.wrapper.component.d.ts +16 -5
  194. package/lib/formly/field/wrapper/toggle.wrapper.component.d.ts +6 -14
  195. package/lib/formly/field/wrapper/wrapper.d.ts +34 -0
  196. package/{src/lib → lib}/formly/form_TODO.scss +0 -0
  197. package/lib/formly/formly.context.d.ts +14 -22
  198. package/lib/formly/formly.context.directive.d.ts +17 -0
  199. package/lib/formly/formly.directive.d.ts +7 -3
  200. package/lib/formly/formly.form.component.d.ts +35 -0
  201. package/lib/formly/formly.module.d.ts +7 -6
  202. package/lib/formly/index.d.ts +3 -1
  203. package/lib/index.d.ts +1 -0
  204. package/{src/lib → lib}/layout/_layout.scss +0 -0
  205. package/{src/lib → lib}/style/_all-core.scss +0 -0
  206. package/{src/lib → lib}/style/_all-theme.scss +0 -0
  207. package/{src/lib → lib}/style/_all-typography.scss +0 -0
  208. package/{src/lib → lib}/style/_config.scss +0 -0
  209. package/{src/lib → lib}/style/_core.scss +0 -0
  210. package/{src/lib → lib}/style/_mixin.scss +0 -0
  211. package/{src/lib → lib}/style/_theming.scss +0 -0
  212. package/{src/lib → lib}/style/_variables.scss +0 -0
  213. package/package.json +14 -14
  214. package/esm2020/lib/form/form.changes.directive.mjs +0 -33
  215. package/esm2020/lib/form/form.input.directive.mjs +0 -49
  216. package/esm2020/lib/form/loading/form.loading.directive.mjs +0 -52
  217. package/esm2020/lib/form/loading/index.mjs +0 -2
  218. package/esm2020/lib/formly/field/value/date/date.field.mjs +0 -36
  219. package/esm2020/lib/formly/field/wrapper/flex.wrapper.layout.mjs +0 -20
  220. package/esm2020/lib/formly/field/wrapper/toggle.wrapper.mjs +0 -10
  221. package/esm2020/lib/formly/formly.component.mjs +0 -134
  222. package/lib/form/loading/form.loading.directive.d.ts +0 -19
  223. package/lib/form/loading/index.d.ts +0 -1
  224. package/lib/formly/field/value/date/date.field.d.ts +0 -13
  225. package/lib/formly/field/wrapper/flex.wrapper.layout.d.ts +0 -10
  226. package/lib/formly/field/wrapper/toggle.wrapper.d.ts +0 -7
  227. package/lib/formly/formly.component.d.ts +0 -36
  228. package/src/lib/formly/field/checklist/_checklist.scss +0 -26
  229. package/src/lib/formly/field/checklist/checklist.item_TODO.scss +0 -57
  230. package/src/lib/formly/field/selection/generic_TODO.scss +0 -36
  231. package/src/lib/formly/field/selection/searchable/_searchable.scss +0 -26
  232. package/src/lib/formly/field/texteditor/_texteditor.scss +0 -26
  233. package/src/lib/formly/field/texteditor/texteditor_TODO.scss +0 -32
  234. package/src/lib/formly/field/value/array/_array.scss +0 -26
  235. package/src/lib/formly/field/value/date/_date.scss +0 -26
  236. package/src/lib/formly/field/value/date/date_TODO.scss +0 -27
  237. package/src/lib/formly/field/value/phone/_phone.scss +0 -26
  238. package/src/lib/formly/field/value/phone/phone_TODO.scss +0 -10
  239. package/src/lib/formly/field/wrapper/wrapper_TODO.scss +0 -34
@@ -1,21 +1,45 @@
1
+ import { SubscriptionObject } from '@dereekb/rxjs';
1
2
  import { Component } from '@angular/core';
2
3
  import { AbstractDbxSearchableValueFieldDirective } from './searchable.field.directive';
4
+ import { map, shareReplay, skipWhile, distinctUntilChanged } from 'rxjs';
5
+ import { tapDetectChanges } from '@dereekb/dbx-core';
3
6
  import * as i0 from "@angular/core";
4
- import * as i1 from "@angular/material/autocomplete";
5
- import * as i2 from "@angular/material/core";
6
- import * as i3 from "./searchable.field.autocomplete.item.component";
7
- import * as i4 from "@angular/material/form-field";
8
- import * as i5 from "@dereekb/dbx-web";
9
- import * as i6 from "@angular/common";
10
- import * as i7 from "@angular/material/input";
11
- import * as i8 from "@angular/forms";
7
+ import * as i1 from "./searchable.field.autocomplete.item.component";
8
+ import * as i2 from "@dereekb/dbx-web";
9
+ import * as i3 from "@angular/material/autocomplete";
10
+ import * as i4 from "@angular/material/core";
11
+ import * as i5 from "@angular/common";
12
+ import * as i6 from "@angular/material/input";
13
+ import * as i7 from "@angular/forms";
12
14
  /**
13
15
  * Display component for selecting a single item/value.
14
16
  */
15
17
  export class DbxSearchableTextFieldComponent extends AbstractDbxSearchableValueFieldDirective {
16
18
  constructor() {
17
19
  super(...arguments);
20
+ this.selectedDisplayValue$ = this.displayValues$.pipe(map(x => x[0]), shareReplay(1), tapDetectChanges(this.cdRef));
21
+ this.hasValue$ = this.selectedDisplayValue$.pipe(map(x => Boolean(x)));
22
+ this.showSelectedDisplayValue$ = this.selectedDisplayValue$.pipe(map(x => this.showSelectedValue && Boolean(x)), distinctUntilChanged(), shareReplay(1), tapDetectChanges(this.cdRef));
18
23
  this.multiSelect = false;
24
+ this._clearInputSub = new SubscriptionObject();
25
+ }
26
+ get searchableField() {
27
+ return this.field.searchableField;
28
+ }
29
+ get showSelectedValue() {
30
+ return this.searchableField.showSelectedValue ?? !this.allowStringValues; // Show the selected value only if string values are allowed.
31
+ }
32
+ ngOnInit() {
33
+ super.ngOnInit();
34
+ this._clearInputSub.subscription = this.inputValue$.pipe(skipWhile((x) => !x)).subscribe((x) => {
35
+ if (!x) {
36
+ // this.clearValues();
37
+ }
38
+ });
39
+ }
40
+ ngOnDestroy() {
41
+ super.ngOnDestroy();
42
+ this._clearInputSub.destroy();
19
43
  }
20
44
  selected(event) {
21
45
  const e = event;
@@ -23,9 +47,9 @@ export class DbxSearchableTextFieldComponent extends AbstractDbxSearchableValueF
23
47
  }
24
48
  }
25
49
  DbxSearchableTextFieldComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.2.0", ngImport: i0, type: DbxSearchableTextFieldComponent, deps: null, target: i0.ɵɵFactoryTarget.Component });
26
- DbxSearchableTextFieldComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.2.0", type: DbxSearchableTextFieldComponent, selector: "ng-component", usesInheritance: true, ngImport: i0, template: "<div class=\"dbx-searchable-text-field\">\n <!-- Autocomplete -->\n <mat-autocomplete #auto (optionSelected)=\"selected($event)\">\n <mat-option *ngFor=\"let displayValue of (searchResults$ | async)\" [value]=\"displayValue\">\n <dbx-searchable-field-autocomplete-item [displayValue]=\"displayValue\">\n </dbx-searchable-field-autocomplete-item>\n </mat-option>\n </mat-autocomplete>\n <!-- Template -->\n <ng-template #content>\n <mat-form-field class=\"dbx-searchable-field-form-field\">\n <mat-label>{{ label }}</mat-label>\n <input type=\"search\" [name]=\"name\" matInput #textInput [placeholder]=\"placeholder\" [formControl]=\"inputCtrl\" [matAutocomplete]=\"auto\"\n autocomplete=\"{{ autocomplete }}\">\n <mat-hint *ngIf=\"description\">{{ description }}</mat-hint>\n </mat-form-field>\n <div class=\"searchable-field-form-loading\">\n <dbx-loading [linear]=\"true\" [context]=\"searchContext\"></dbx-loading>\n </div>\n </ng-template>\n <!-- View -->\n <ng-container *ngTemplateOutlet=\"content\"></ng-container>\n</div>\n", components: [{ type: i1.MatAutocomplete, selector: "mat-autocomplete", inputs: ["disableRipple"], exportAs: ["matAutocomplete"] }, { type: i2.MatOption, selector: "mat-option", exportAs: ["matOption"] }, { type: i3.DbxSearchableFieldAutocompleteItemComponent, selector: "dbx-searchable-field-autocomplete-item", inputs: ["displayValue"] }, { type: i4.MatFormField, selector: "mat-form-field", inputs: ["color", "appearance", "hideRequiredMarker", "hintLabel", "floatLabel"], exportAs: ["matFormField"] }, { type: i5.DbxLoadingComponent, selector: "dbx-loading", inputs: ["show", "text", "mode", "color", "diameter", "linear", "context", "loading", "error"] }], directives: [{ type: i6.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { type: i4.MatLabel, selector: "mat-label" }, { type: i7.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"] }, { type: i8.DefaultValueAccessor, selector: "input:not([type=checkbox])[formControlName],textarea[formControlName],input:not([type=checkbox])[formControl],textarea[formControl],input:not([type=checkbox])[ngModel],textarea[ngModel],[ngDefaultControl]" }, { type: i1.MatAutocompleteTrigger, selector: "input[matAutocomplete], textarea[matAutocomplete]", exportAs: ["matAutocompleteTrigger"] }, { type: i8.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { type: i8.FormControlDirective, selector: "[formControl]", inputs: ["formControl", "disabled", "ngModel"], outputs: ["ngModelChange"], exportAs: ["ngForm"] }, { type: i6.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { type: i4.MatHint, selector: "mat-hint", inputs: ["align", "id"] }, { type: i6.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet"] }], pipes: { "async": i6.AsyncPipe } });
50
+ DbxSearchableTextFieldComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.2.0", type: DbxSearchableTextFieldComponent, selector: "ng-component", usesInheritance: true, ngImport: i0, template: "<div class=\"dbx-searchable-text-field\"\n [ngClass]=\"{ 'dbx-searchable-text-field-has-value': (hasValue$ | async), 'dbx-searchable-text-field-show-value': showSelectedValue }\">\n <!-- Result View -->\n <div class=\"dbx-searchable-text-field-value mat-option mat-option-text\" *ngIf=\"showSelectedDisplayValue$ | async\">\n <dbx-searchable-field-autocomplete-item [displayValue]=\"(selectedDisplayValue$ | async)!\">\n </dbx-searchable-field-autocomplete-item>\n </div>\n <div class=\"dbx-searchable-text-field-input\">\n <div class=\"dbx-label\">Search</div>\n <!-- View -->\n <input type=\"search\" [name]=\"name\" matInput #textInput [placeholder]=\"placeholder\" [formControl]=\"inputCtrl\"\n [matAutocomplete]=\"auto\" [matAutocompleteDisabled]=\"readonly\" autocomplete=\"{{ autocomplete }}\">\n <div class=\"searchable-field-form-loading\">\n <dbx-loading [linear]=\"true\" [context]=\"searchContext\"></dbx-loading>\n </div>\n </div>\n</div>\n\n<!-- Autocomplete -->\n<mat-autocomplete class=\"dbx-searchable-text-field-autocomplete\" #auto (optionSelected)=\"selected($event)\">\n <mat-option *ngFor=\"let displayValue of (searchResults$ | async)\" [value]=\"displayValue\">\n <dbx-searchable-field-autocomplete-item [displayValue]=\"displayValue\">\n </dbx-searchable-field-autocomplete-item>\n </mat-option>\n <!-- Add/Pick String Value -->\n <mat-option *ngIf=\"allowStringValues && (inputValue$ | async)\" [value]=\"{ value: (inputValue$ | async) }\">\n <p class=\"dbx-clear-hint text-center\">\"{{ inputValue$ | async }}\"</p>\n </mat-option>\n <!-- Show clear value -->\n <mat-option *ngIf=\"showClearValue && (hasValue$ | async)\" value=\"\">\n <p class=\"dbx-clear-hint text-center\">Clear</p>\n </mat-option>\n</mat-autocomplete>\n", components: [{ type: i1.DbxSearchableFieldAutocompleteItemComponent, selector: "dbx-searchable-field-autocomplete-item", inputs: ["displayValue"] }, { type: i2.DbxLoadingComponent, selector: "dbx-loading", inputs: ["show", "text", "mode", "color", "diameter", "linear", "context", "loading", "error"] }, { type: i3.MatAutocomplete, selector: "mat-autocomplete", inputs: ["disableRipple"], exportAs: ["matAutocomplete"] }, { type: i4.MatOption, selector: "mat-option", exportAs: ["matOption"] }], directives: [{ type: i5.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { type: i5.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { type: i6.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"] }, { type: i7.DefaultValueAccessor, selector: "input:not([type=checkbox])[formControlName],textarea[formControlName],input:not([type=checkbox])[formControl],textarea[formControl],input:not([type=checkbox])[ngModel],textarea[ngModel],[ngDefaultControl]" }, { type: i3.MatAutocompleteTrigger, selector: "input[matAutocomplete], textarea[matAutocomplete]", exportAs: ["matAutocompleteTrigger"] }, { type: i7.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { type: i7.FormControlDirective, selector: "[formControl]", inputs: ["formControl", "disabled", "ngModel"], outputs: ["ngModelChange"], exportAs: ["ngForm"] }, { type: i5.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }], pipes: { "async": i5.AsyncPipe } });
27
51
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.2.0", ngImport: i0, type: DbxSearchableTextFieldComponent, decorators: [{
28
52
  type: Component,
29
- args: [{ template: "<div class=\"dbx-searchable-text-field\">\n <!-- Autocomplete -->\n <mat-autocomplete #auto (optionSelected)=\"selected($event)\">\n <mat-option *ngFor=\"let displayValue of (searchResults$ | async)\" [value]=\"displayValue\">\n <dbx-searchable-field-autocomplete-item [displayValue]=\"displayValue\">\n </dbx-searchable-field-autocomplete-item>\n </mat-option>\n </mat-autocomplete>\n <!-- Template -->\n <ng-template #content>\n <mat-form-field class=\"dbx-searchable-field-form-field\">\n <mat-label>{{ label }}</mat-label>\n <input type=\"search\" [name]=\"name\" matInput #textInput [placeholder]=\"placeholder\" [formControl]=\"inputCtrl\" [matAutocomplete]=\"auto\"\n autocomplete=\"{{ autocomplete }}\">\n <mat-hint *ngIf=\"description\">{{ description }}</mat-hint>\n </mat-form-field>\n <div class=\"searchable-field-form-loading\">\n <dbx-loading [linear]=\"true\" [context]=\"searchContext\"></dbx-loading>\n </div>\n </ng-template>\n <!-- View -->\n <ng-container *ngTemplateOutlet=\"content\"></ng-container>\n</div>\n" }]
53
+ args: [{ template: "<div class=\"dbx-searchable-text-field\"\n [ngClass]=\"{ 'dbx-searchable-text-field-has-value': (hasValue$ | async), 'dbx-searchable-text-field-show-value': showSelectedValue }\">\n <!-- Result View -->\n <div class=\"dbx-searchable-text-field-value mat-option mat-option-text\" *ngIf=\"showSelectedDisplayValue$ | async\">\n <dbx-searchable-field-autocomplete-item [displayValue]=\"(selectedDisplayValue$ | async)!\">\n </dbx-searchable-field-autocomplete-item>\n </div>\n <div class=\"dbx-searchable-text-field-input\">\n <div class=\"dbx-label\">Search</div>\n <!-- View -->\n <input type=\"search\" [name]=\"name\" matInput #textInput [placeholder]=\"placeholder\" [formControl]=\"inputCtrl\"\n [matAutocomplete]=\"auto\" [matAutocompleteDisabled]=\"readonly\" autocomplete=\"{{ autocomplete }}\">\n <div class=\"searchable-field-form-loading\">\n <dbx-loading [linear]=\"true\" [context]=\"searchContext\"></dbx-loading>\n </div>\n </div>\n</div>\n\n<!-- Autocomplete -->\n<mat-autocomplete class=\"dbx-searchable-text-field-autocomplete\" #auto (optionSelected)=\"selected($event)\">\n <mat-option *ngFor=\"let displayValue of (searchResults$ | async)\" [value]=\"displayValue\">\n <dbx-searchable-field-autocomplete-item [displayValue]=\"displayValue\">\n </dbx-searchable-field-autocomplete-item>\n </mat-option>\n <!-- Add/Pick String Value -->\n <mat-option *ngIf=\"allowStringValues && (inputValue$ | async)\" [value]=\"{ value: (inputValue$ | async) }\">\n <p class=\"dbx-clear-hint text-center\">\"{{ inputValue$ | async }}\"</p>\n </mat-option>\n <!-- Show clear value -->\n <mat-option *ngIf=\"showClearValue && (hasValue$ | async)\" value=\"\">\n <p class=\"dbx-clear-hint text-center\">Clear</p>\n </mat-option>\n</mat-autocomplete>\n" }]
30
54
  }] });
31
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2VhcmNoYWJsZS50ZXh0LmZpZWxkLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL3BhY2thZ2VzL2RieC1mb3JtL3NyYy9saWIvZm9ybWx5L2ZpZWxkL3NlbGVjdGlvbi9zZWFyY2hhYmxlL3NlYXJjaGFibGUudGV4dC5maWVsZC5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9wYWNrYWdlcy9kYngtZm9ybS9zcmMvbGliL2Zvcm1seS9maWVsZC9zZWxlY3Rpb24vc2VhcmNoYWJsZS9zZWFyY2hhYmxlLnRleHQuZmllbGQuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFNBQVMsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUUxQyxPQUFPLEVBQUUsd0NBQXdDLEVBQTRFLE1BQU0sOEJBQThCLENBQUM7Ozs7Ozs7Ozs7QUFLbEs7O0dBRUc7QUFJSCxNQUFNLE9BQU8sK0JBQW1DLFNBQVEsd0NBQTBGO0lBSGxKOztRQUtvQixnQkFBVyxHQUFHLEtBQUssQ0FBQztLQU92QztJQUxDLFFBQVEsQ0FBQyxLQUFVO1FBQ2pCLE1BQU0sQ0FBQyxHQUFpQyxLQUFLLENBQUM7UUFDOUMsSUFBSSxDQUFDLG1CQUFtQixDQUFDLENBQUMsQ0FBQyxNQUFNLENBQUMsS0FBSyxDQUFDLENBQUM7SUFDM0MsQ0FBQzs7NEhBUFUsK0JBQStCO2dIQUEvQiwrQkFBK0IsMkVDYjVDLHlrQ0F1QkE7MkZEVmEsK0JBQStCO2tCQUgzQyxTQUFTIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29tcG9uZW50IH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBNYXRBdXRvY29tcGxldGVTZWxlY3RlZEV2ZW50IH0gZnJvbSAnQGFuZ3VsYXIvbWF0ZXJpYWwvYXV0b2NvbXBsZXRlJztcbmltcG9ydCB7IEFic3RyYWN0RGJ4U2VhcmNoYWJsZVZhbHVlRmllbGREaXJlY3RpdmUsIFNlYXJjaGFibGVWYWx1ZUZpZWxkc0ZpZWxkQ29uZmlnLCBTZWFyY2hhYmxlVmFsdWVGaWVsZHNGb3JtbHlGaWVsZENvbmZpZyB9IGZyb20gJy4vc2VhcmNoYWJsZS5maWVsZC5kaXJlY3RpdmUnO1xuXG5leHBvcnQgaW50ZXJmYWNlIFNlYXJjaGFibGVUZXh0VmFsdWVGaWVsZHNGaWVsZENvbmZpZzxUPiBleHRlbmRzIFNlYXJjaGFibGVWYWx1ZUZpZWxkc0ZpZWxkQ29uZmlnPFQ+IHsgfVxuZXhwb3J0IGludGVyZmFjZSBTZWFyY2hhYmxlVGV4dFZhbHVlRmllbGRzRm9ybWx5RmllbGRDb25maWc8VD4gZXh0ZW5kcyBTZWFyY2hhYmxlVGV4dFZhbHVlRmllbGRzRmllbGRDb25maWc8VD4sIFNlYXJjaGFibGVWYWx1ZUZpZWxkc0Zvcm1seUZpZWxkQ29uZmlnPFQ+IHsgfVxuXG4vKipcbiAqIERpc3BsYXkgY29tcG9uZW50IGZvciBzZWxlY3RpbmcgYSBzaW5nbGUgaXRlbS92YWx1ZS5cbiAqL1xuQENvbXBvbmVudCh7XG4gIHRlbXBsYXRlVXJsOiAnc2VhcmNoYWJsZS50ZXh0LmZpZWxkLmNvbXBvbmVudC5odG1sJ1xufSlcbmV4cG9ydCBjbGFzcyBEYnhTZWFyY2hhYmxlVGV4dEZpZWxkQ29tcG9uZW50PFQ+IGV4dGVuZHMgQWJzdHJhY3REYnhTZWFyY2hhYmxlVmFsdWVGaWVsZERpcmVjdGl2ZTxULCBTZWFyY2hhYmxlVGV4dFZhbHVlRmllbGRzRm9ybWx5RmllbGRDb25maWc8VD4+IHtcblxuICBvdmVycmlkZSByZWFkb25seSBtdWx0aVNlbGVjdCA9IGZhbHNlO1xuXG4gIHNlbGVjdGVkKGV2ZW50OiBhbnkpOiB2b2lkIHtcbiAgICBjb25zdCBlOiBNYXRBdXRvY29tcGxldGVTZWxlY3RlZEV2ZW50ID0gZXZlbnQ7XG4gICAgdGhpcy5hZGRXaXRoRGlzcGxheVZhbHVlKGUub3B0aW9uLnZhbHVlKTtcbiAgfVxuXG59XG4iLCI8ZGl2IGNsYXNzPVwiZGJ4LXNlYXJjaGFibGUtdGV4dC1maWVsZFwiPlxuICA8IS0tIEF1dG9jb21wbGV0ZSAtLT5cbiAgPG1hdC1hdXRvY29tcGxldGUgI2F1dG8gKG9wdGlvblNlbGVjdGVkKT1cInNlbGVjdGVkKCRldmVudClcIj5cbiAgICA8bWF0LW9wdGlvbiAqbmdGb3I9XCJsZXQgZGlzcGxheVZhbHVlIG9mIChzZWFyY2hSZXN1bHRzJCB8IGFzeW5jKVwiIFt2YWx1ZV09XCJkaXNwbGF5VmFsdWVcIj5cbiAgICAgIDxkYngtc2VhcmNoYWJsZS1maWVsZC1hdXRvY29tcGxldGUtaXRlbSBbZGlzcGxheVZhbHVlXT1cImRpc3BsYXlWYWx1ZVwiPlxuICAgICAgPC9kYngtc2VhcmNoYWJsZS1maWVsZC1hdXRvY29tcGxldGUtaXRlbT5cbiAgICA8L21hdC1vcHRpb24+XG4gIDwvbWF0LWF1dG9jb21wbGV0ZT5cbiAgPCEtLSBUZW1wbGF0ZSAtLT5cbiAgPG5nLXRlbXBsYXRlICNjb250ZW50PlxuICAgIDxtYXQtZm9ybS1maWVsZCBjbGFzcz1cImRieC1zZWFyY2hhYmxlLWZpZWxkLWZvcm0tZmllbGRcIj5cbiAgICAgIDxtYXQtbGFiZWw+e3sgbGFiZWwgfX08L21hdC1sYWJlbD5cbiAgICAgIDxpbnB1dCB0eXBlPVwic2VhcmNoXCIgW25hbWVdPVwibmFtZVwiIG1hdElucHV0ICN0ZXh0SW5wdXQgW3BsYWNlaG9sZGVyXT1cInBsYWNlaG9sZGVyXCIgW2Zvcm1Db250cm9sXT1cImlucHV0Q3RybFwiIFttYXRBdXRvY29tcGxldGVdPVwiYXV0b1wiXG4gICAgICAgIGF1dG9jb21wbGV0ZT1cInt7IGF1dG9jb21wbGV0ZSB9fVwiPlxuICAgICAgPG1hdC1oaW50ICpuZ0lmPVwiZGVzY3JpcHRpb25cIj57eyBkZXNjcmlwdGlvbiB9fTwvbWF0LWhpbnQ+XG4gICAgPC9tYXQtZm9ybS1maWVsZD5cbiAgICA8ZGl2IGNsYXNzPVwic2VhcmNoYWJsZS1maWVsZC1mb3JtLWxvYWRpbmdcIj5cbiAgICAgIDxkYngtbG9hZGluZyBbbGluZWFyXT1cInRydWVcIiBbY29udGV4dF09XCJzZWFyY2hDb250ZXh0XCI+PC9kYngtbG9hZGluZz5cbiAgICA8L2Rpdj5cbiAgPC9uZy10ZW1wbGF0ZT5cbiAgPCEtLSBWaWV3IC0tPlxuICA8bmctY29udGFpbmVyICpuZ1RlbXBsYXRlT3V0bGV0PVwiY29udGVudFwiPjwvbmctY29udGFpbmVyPlxuPC9kaXY+XG4iXX0=
55
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2VhcmNoYWJsZS50ZXh0LmZpZWxkLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL3BhY2thZ2VzL2RieC1mb3JtL3NyYy9saWIvZm9ybWx5L2ZpZWxkL3NlbGVjdGlvbi9zZWFyY2hhYmxlL3NlYXJjaGFibGUudGV4dC5maWVsZC5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9wYWNrYWdlcy9kYngtZm9ybS9zcmMvbGliL2Zvcm1seS9maWVsZC9zZWxlY3Rpb24vc2VhcmNoYWJsZS9zZWFyY2hhYmxlLnRleHQuZmllbGQuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLGtCQUFrQixFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQ25ELE9BQU8sRUFBRSxTQUFTLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFFMUMsT0FBTyxFQUFFLHdDQUF3QyxFQUE0RSxNQUFNLDhCQUE4QixDQUFDO0FBQ2xLLE9BQU8sRUFBRSxHQUFHLEVBQUUsV0FBVyxFQUFFLFNBQVMsRUFBRSxvQkFBb0IsRUFBRSxNQUFNLE1BQU0sQ0FBQztBQUN6RSxPQUFPLEVBQUUsZ0JBQWdCLEVBQUUsTUFBTSxtQkFBbUIsQ0FBQzs7Ozs7Ozs7O0FBVXJEOztHQUVHO0FBSUgsTUFBTSxPQUFPLCtCQUFtQyxTQUFRLHdDQUEwRjtJQUhsSjs7UUFLVywwQkFBcUIsR0FBRyxJQUFJLENBQUMsY0FBYyxDQUFDLElBQUksQ0FBQyxHQUFHLENBQUMsQ0FBQyxDQUFDLEVBQUUsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsRUFBRSxXQUFXLENBQUMsQ0FBQyxDQUFDLEVBQUUsZ0JBQWdCLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxDQUFDLENBQUM7UUFDL0csY0FBUyxHQUFHLElBQUksQ0FBQyxxQkFBcUIsQ0FBQyxJQUFJLENBQUMsR0FBRyxDQUFDLENBQUMsQ0FBQyxFQUFFLENBQUMsT0FBTyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQztRQUNsRSw4QkFBeUIsR0FBRyxJQUFJLENBQUMscUJBQXFCLENBQUMsSUFBSSxDQUFDLEdBQUcsQ0FBQyxDQUFDLENBQUMsRUFBRSxDQUFDLElBQUksQ0FBQyxpQkFBaUIsSUFBSSxPQUFPLENBQUMsQ0FBQyxDQUFDLENBQUMsRUFBRSxvQkFBb0IsRUFBRSxFQUFFLFdBQVcsQ0FBQyxDQUFDLENBQUMsRUFBRSxnQkFBZ0IsQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLENBQUMsQ0FBQztRQVV6SyxnQkFBVyxHQUFHLEtBQUssQ0FBQztRQUU5QixtQkFBYyxHQUFHLElBQUksa0JBQWtCLEVBQUUsQ0FBQztLQXdCbkQ7SUFsQ0MsSUFBYSxlQUFlO1FBQzFCLE9BQU8sSUFBSSxDQUFDLEtBQUssQ0FBQyxlQUFlLENBQUM7SUFDcEMsQ0FBQztJQUVELElBQUksaUJBQWlCO1FBQ25CLE9BQU8sSUFBSSxDQUFDLGVBQWUsQ0FBQyxpQkFBaUIsSUFBSSxDQUFDLElBQUksQ0FBQyxpQkFBaUIsQ0FBQyxDQUFJLDZEQUE2RDtJQUM1SSxDQUFDO0lBTVEsUUFBUTtRQUNmLEtBQUssQ0FBQyxRQUFRLEVBQUUsQ0FBQztRQUVqQixJQUFJLENBQUMsY0FBYyxDQUFDLFlBQVksR0FBRyxJQUFJLENBQUMsV0FBVyxDQUFDLElBQUksQ0FDdEQsU0FBUyxDQUFDLENBQUMsQ0FBQyxFQUFFLEVBQUUsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUNyQixDQUFDLFNBQVMsQ0FBQyxDQUFDLENBQUMsRUFBRSxFQUFFO1lBQ2hCLElBQUksQ0FBQyxDQUFDLEVBQUU7Z0JBQ04sc0JBQXNCO2FBQ3ZCO1FBQ0gsQ0FBQyxDQUFDLENBQUE7SUFDSixDQUFDO0lBRVEsV0FBVztRQUNsQixLQUFLLENBQUMsV0FBVyxFQUFFLENBQUM7UUFDcEIsSUFBSSxDQUFDLGNBQWMsQ0FBQyxPQUFPLEVBQUUsQ0FBQztJQUNoQyxDQUFDO0lBRUQsUUFBUSxDQUFDLEtBQVU7UUFDakIsTUFBTSxDQUFDLEdBQWlDLEtBQUssQ0FBQztRQUM5QyxJQUFJLENBQUMsbUJBQW1CLENBQUMsQ0FBQyxDQUFDLE1BQU0sQ0FBQyxLQUFLLENBQUMsQ0FBQztJQUMzQyxDQUFDOzs0SEF0Q1UsK0JBQStCO2dIQUEvQiwrQkFBK0IsMkVDckI1QyxreERBaUNBOzJGRFphLCtCQUErQjtrQkFIM0MsU0FBUyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IFN1YnNjcmlwdGlvbk9iamVjdCB9IGZyb20gJ0BkZXJlZWtiL3J4anMnO1xuaW1wb3J0IHsgQ29tcG9uZW50IH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBNYXRBdXRvY29tcGxldGVTZWxlY3RlZEV2ZW50IH0gZnJvbSAnQGFuZ3VsYXIvbWF0ZXJpYWwvYXV0b2NvbXBsZXRlJztcbmltcG9ydCB7IEFic3RyYWN0RGJ4U2VhcmNoYWJsZVZhbHVlRmllbGREaXJlY3RpdmUsIFNlYXJjaGFibGVWYWx1ZUZpZWxkc0ZpZWxkQ29uZmlnLCBTZWFyY2hhYmxlVmFsdWVGaWVsZHNGb3JtbHlGaWVsZENvbmZpZyB9IGZyb20gJy4vc2VhcmNoYWJsZS5maWVsZC5kaXJlY3RpdmUnO1xuaW1wb3J0IHsgbWFwLCBzaGFyZVJlcGxheSwgc2tpcFdoaWxlLCBkaXN0aW5jdFVudGlsQ2hhbmdlZCB9IGZyb20gJ3J4anMnO1xuaW1wb3J0IHsgdGFwRGV0ZWN0Q2hhbmdlcyB9IGZyb20gJ0BkZXJlZWtiL2RieC1jb3JlJztcblxuZXhwb3J0IGludGVyZmFjZSBTZWFyY2hhYmxlVGV4dFZhbHVlRmllbGRzRmllbGRDb25maWc8VD4gZXh0ZW5kcyBTZWFyY2hhYmxlVmFsdWVGaWVsZHNGaWVsZENvbmZpZzxUPiB7XG4gIHNob3dTZWxlY3RlZFZhbHVlPzogYm9vbGVhbjtcbn1cblxuZXhwb3J0IGludGVyZmFjZSBTZWFyY2hhYmxlVGV4dFZhbHVlRmllbGRzRm9ybWx5RmllbGRDb25maWc8VD4gZXh0ZW5kcyBTZWFyY2hhYmxlVmFsdWVGaWVsZHNGb3JtbHlGaWVsZENvbmZpZzxUPiB7XG4gIHNlYXJjaGFibGVGaWVsZDogU2VhcmNoYWJsZVRleHRWYWx1ZUZpZWxkc0ZpZWxkQ29uZmlnPFQ+O1xufVxuXG4vKipcbiAqIERpc3BsYXkgY29tcG9uZW50IGZvciBzZWxlY3RpbmcgYSBzaW5nbGUgaXRlbS92YWx1ZS5cbiAqL1xuQENvbXBvbmVudCh7XG4gIHRlbXBsYXRlVXJsOiAnc2VhcmNoYWJsZS50ZXh0LmZpZWxkLmNvbXBvbmVudC5odG1sJ1xufSlcbmV4cG9ydCBjbGFzcyBEYnhTZWFyY2hhYmxlVGV4dEZpZWxkQ29tcG9uZW50PFQ+IGV4dGVuZHMgQWJzdHJhY3REYnhTZWFyY2hhYmxlVmFsdWVGaWVsZERpcmVjdGl2ZTxULCBTZWFyY2hhYmxlVGV4dFZhbHVlRmllbGRzRm9ybWx5RmllbGRDb25maWc8VD4+IHtcblxuICByZWFkb25seSBzZWxlY3RlZERpc3BsYXlWYWx1ZSQgPSB0aGlzLmRpc3BsYXlWYWx1ZXMkLnBpcGUobWFwKHggPT4geFswXSksIHNoYXJlUmVwbGF5KDEpLCB0YXBEZXRlY3RDaGFuZ2VzKHRoaXMuY2RSZWYpKTtcbiAgcmVhZG9ubHkgaGFzVmFsdWUkID0gdGhpcy5zZWxlY3RlZERpc3BsYXlWYWx1ZSQucGlwZShtYXAoeCA9PiBCb29sZWFuKHgpKSk7XG4gIHJlYWRvbmx5IHNob3dTZWxlY3RlZERpc3BsYXlWYWx1ZSQgPSB0aGlzLnNlbGVjdGVkRGlzcGxheVZhbHVlJC5waXBlKG1hcCh4ID0+IHRoaXMuc2hvd1NlbGVjdGVkVmFsdWUgJiYgQm9vbGVhbih4KSksIGRpc3RpbmN0VW50aWxDaGFuZ2VkKCksIHNoYXJlUmVwbGF5KDEpLCB0YXBEZXRlY3RDaGFuZ2VzKHRoaXMuY2RSZWYpKTtcblxuICBvdmVycmlkZSBnZXQgc2VhcmNoYWJsZUZpZWxkKCk6IFNlYXJjaGFibGVUZXh0VmFsdWVGaWVsZHNGaWVsZENvbmZpZzxUPiB7XG4gICAgcmV0dXJuIHRoaXMuZmllbGQuc2VhcmNoYWJsZUZpZWxkO1xuICB9XG5cbiAgZ2V0IHNob3dTZWxlY3RlZFZhbHVlKCkge1xuICAgIHJldHVybiB0aGlzLnNlYXJjaGFibGVGaWVsZC5zaG93U2VsZWN0ZWRWYWx1ZSA/PyAhdGhpcy5hbGxvd1N0cmluZ1ZhbHVlczsgICAgLy8gU2hvdyB0aGUgc2VsZWN0ZWQgdmFsdWUgb25seSBpZiBzdHJpbmcgdmFsdWVzIGFyZSBhbGxvd2VkLlxuICB9XG5cbiAgb3ZlcnJpZGUgcmVhZG9ubHkgbXVsdGlTZWxlY3QgPSBmYWxzZTtcblxuICBwcml2YXRlIF9jbGVhcklucHV0U3ViID0gbmV3IFN1YnNjcmlwdGlvbk9iamVjdCgpO1xuXG4gIG92ZXJyaWRlIG5nT25Jbml0KCk6IHZvaWQge1xuICAgIHN1cGVyLm5nT25Jbml0KCk7XG5cbiAgICB0aGlzLl9jbGVhcklucHV0U3ViLnN1YnNjcmlwdGlvbiA9IHRoaXMuaW5wdXRWYWx1ZSQucGlwZShcbiAgICAgIHNraXBXaGlsZSgoeCkgPT4gIXgpXG4gICAgKS5zdWJzY3JpYmUoKHgpID0+IHtcbiAgICAgIGlmICgheCkge1xuICAgICAgICAvLyB0aGlzLmNsZWFyVmFsdWVzKCk7XG4gICAgICB9XG4gICAgfSlcbiAgfVxuXG4gIG92ZXJyaWRlIG5nT25EZXN0cm95KCk6IHZvaWQge1xuICAgIHN1cGVyLm5nT25EZXN0cm95KCk7XG4gICAgdGhpcy5fY2xlYXJJbnB1dFN1Yi5kZXN0cm95KCk7XG4gIH1cblxuICBzZWxlY3RlZChldmVudDogYW55KTogdm9pZCB7XG4gICAgY29uc3QgZTogTWF0QXV0b2NvbXBsZXRlU2VsZWN0ZWRFdmVudCA9IGV2ZW50O1xuICAgIHRoaXMuYWRkV2l0aERpc3BsYXlWYWx1ZShlLm9wdGlvbi52YWx1ZSk7XG4gIH1cblxufVxuIiwiPGRpdiBjbGFzcz1cImRieC1zZWFyY2hhYmxlLXRleHQtZmllbGRcIlxuICBbbmdDbGFzc109XCJ7ICdkYngtc2VhcmNoYWJsZS10ZXh0LWZpZWxkLWhhcy12YWx1ZSc6IChoYXNWYWx1ZSQgfCBhc3luYyksICdkYngtc2VhcmNoYWJsZS10ZXh0LWZpZWxkLXNob3ctdmFsdWUnOiBzaG93U2VsZWN0ZWRWYWx1ZSB9XCI+XG4gIDwhLS0gUmVzdWx0IFZpZXcgLS0+XG4gIDxkaXYgY2xhc3M9XCJkYngtc2VhcmNoYWJsZS10ZXh0LWZpZWxkLXZhbHVlIG1hdC1vcHRpb24gbWF0LW9wdGlvbi10ZXh0XCIgKm5nSWY9XCJzaG93U2VsZWN0ZWREaXNwbGF5VmFsdWUkIHwgYXN5bmNcIj5cbiAgICA8ZGJ4LXNlYXJjaGFibGUtZmllbGQtYXV0b2NvbXBsZXRlLWl0ZW0gW2Rpc3BsYXlWYWx1ZV09XCIoc2VsZWN0ZWREaXNwbGF5VmFsdWUkIHwgYXN5bmMpIVwiPlxuICAgIDwvZGJ4LXNlYXJjaGFibGUtZmllbGQtYXV0b2NvbXBsZXRlLWl0ZW0+XG4gIDwvZGl2PlxuICA8ZGl2IGNsYXNzPVwiZGJ4LXNlYXJjaGFibGUtdGV4dC1maWVsZC1pbnB1dFwiPlxuICAgIDxkaXYgY2xhc3M9XCJkYngtbGFiZWxcIj5TZWFyY2g8L2Rpdj5cbiAgICA8IS0tIFZpZXcgLS0+XG4gICAgPGlucHV0IHR5cGU9XCJzZWFyY2hcIiBbbmFtZV09XCJuYW1lXCIgbWF0SW5wdXQgI3RleHRJbnB1dCBbcGxhY2Vob2xkZXJdPVwicGxhY2Vob2xkZXJcIiBbZm9ybUNvbnRyb2xdPVwiaW5wdXRDdHJsXCJcbiAgICAgIFttYXRBdXRvY29tcGxldGVdPVwiYXV0b1wiIFttYXRBdXRvY29tcGxldGVEaXNhYmxlZF09XCJyZWFkb25seVwiIGF1dG9jb21wbGV0ZT1cInt7IGF1dG9jb21wbGV0ZSB9fVwiPlxuICAgIDxkaXYgY2xhc3M9XCJzZWFyY2hhYmxlLWZpZWxkLWZvcm0tbG9hZGluZ1wiPlxuICAgICAgPGRieC1sb2FkaW5nIFtsaW5lYXJdPVwidHJ1ZVwiIFtjb250ZXh0XT1cInNlYXJjaENvbnRleHRcIj48L2RieC1sb2FkaW5nPlxuICAgIDwvZGl2PlxuICA8L2Rpdj5cbjwvZGl2PlxuXG48IS0tIEF1dG9jb21wbGV0ZSAtLT5cbjxtYXQtYXV0b2NvbXBsZXRlIGNsYXNzPVwiZGJ4LXNlYXJjaGFibGUtdGV4dC1maWVsZC1hdXRvY29tcGxldGVcIiAjYXV0byAob3B0aW9uU2VsZWN0ZWQpPVwic2VsZWN0ZWQoJGV2ZW50KVwiPlxuICA8bWF0LW9wdGlvbiAqbmdGb3I9XCJsZXQgZGlzcGxheVZhbHVlIG9mIChzZWFyY2hSZXN1bHRzJCB8IGFzeW5jKVwiIFt2YWx1ZV09XCJkaXNwbGF5VmFsdWVcIj5cbiAgICA8ZGJ4LXNlYXJjaGFibGUtZmllbGQtYXV0b2NvbXBsZXRlLWl0ZW0gW2Rpc3BsYXlWYWx1ZV09XCJkaXNwbGF5VmFsdWVcIj5cbiAgICA8L2RieC1zZWFyY2hhYmxlLWZpZWxkLWF1dG9jb21wbGV0ZS1pdGVtPlxuICA8L21hdC1vcHRpb24+XG4gIDwhLS0gQWRkL1BpY2sgU3RyaW5nIFZhbHVlIC0tPlxuICA8bWF0LW9wdGlvbiAqbmdJZj1cImFsbG93U3RyaW5nVmFsdWVzICYmIChpbnB1dFZhbHVlJCB8IGFzeW5jKVwiIFt2YWx1ZV09XCJ7IHZhbHVlOiAoaW5wdXRWYWx1ZSQgfCBhc3luYykgfVwiPlxuICAgIDxwIGNsYXNzPVwiZGJ4LWNsZWFyLWhpbnQgdGV4dC1jZW50ZXJcIj5cInt7IGlucHV0VmFsdWUkIHwgYXN5bmMgfX1cIjwvcD5cbiAgPC9tYXQtb3B0aW9uPlxuICA8IS0tIFNob3cgY2xlYXIgdmFsdWUgLS0+XG4gIDxtYXQtb3B0aW9uICpuZ0lmPVwic2hvd0NsZWFyVmFsdWUgJiYgKGhhc1ZhbHVlJCB8IGFzeW5jKVwiIHZhbHVlPVwiXCI+XG4gICAgPHAgY2xhc3M9XCJkYngtY2xlYXItaGludCB0ZXh0LWNlbnRlclwiPkNsZWFyPC9wPlxuICA8L21hdC1vcHRpb24+XG48L21hdC1hdXRvY29tcGxldGU+XG4iXX0=
@@ -12,4 +12,4 @@ export function chipTextField(config) {
12
12
  }
13
13
  });
14
14
  }
15
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGV4dC5jaGlwLmZpZWxkLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vcGFja2FnZXMvZGJ4LWZvcm0vc3JjL2xpYi9mb3JtbHkvZmllbGQvc2VsZWN0aW9uL3NlYXJjaGFibGUvdGV4dC5jaGlwLmZpZWxkLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUNBLE9BQU8sRUFBRSxFQUFFLEVBQUUsTUFBTSxNQUFNLENBQUM7QUFDMUIsT0FBTyxFQUFlLFdBQVcsRUFBRSxNQUFNLGFBQWEsQ0FBQztBQVN2RCxNQUFNLFVBQVUsYUFBYSxDQUFzQyxNQUFTO0lBQzFFLE1BQU0sa0JBQWtCLEdBQUcsQ0FBQyxNQUFNLENBQUMsYUFBYSxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFTLEVBQUUsRUFBRSxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBUyxFQUFFLEVBQUUsQ0FBQyxDQUFDLEVBQUUsV0FBVyxFQUFFLENBQUMsQ0FBQztJQUUzRyxPQUFPLFdBQVcsQ0FBSTtRQUNwQixJQUFJLEVBQUUscUJBQXFCO1FBQzNCLGlCQUFpQixFQUFFLElBQUk7UUFDdkIsa0JBQWtCO1FBQ2xCLEdBQUcsTUFBTTtRQUNULGVBQWUsRUFBRSxDQUFDLE1BQTJDLEVBQUUsRUFBRTtZQUMvRCxPQUFPLEVBQUUsQ0FBQyxNQUFNLENBQUMsR0FBRyxDQUFDLENBQUMsQ0FBQyxFQUFFLENBQUMsQ0FBQyxFQUFFLEdBQUcsQ0FBQyxFQUFFLEtBQUssRUFBRSxDQUFDLENBQUMsS0FBSyxFQUFFLENBQUMsQ0FBQyxDQUFDLENBQUM7UUFDekQsQ0FBQztLQUNGLENBQUMsQ0FBQztBQUNMLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBGb3JtbHlGaWVsZENvbmZpZyB9IGZyb20gXCJAbmd4LWZvcm1seS9jb3JlXCI7XG5pbXBvcnQgeyBvZiB9IGZyb20gXCJyeGpzXCI7XG5pbXBvcnQgeyBGaWVsZENvbmZpZywgZm9ybWx5RmllbGQgfSBmcm9tIFwiLi4vLi4vZmllbGRcIjtcbmltcG9ydCB7IFNlYXJjaGFibGVWYWx1ZUZpZWxkVmFsdWUgfSBmcm9tIFwiLi9zZWFyY2hhYmxlXCI7XG5pbXBvcnQgeyBTdHJpbmdWYWx1ZUZpZWxkc0ZpZWxkQ29uZmlnLCBTdHJpbmdWYWx1ZUZpZWxkc0Zvcm1seUZpZWxkQ29uZmlnIH0gZnJvbSBcIi4vc2VhcmNoYWJsZS5maWVsZC5kaXJlY3RpdmVcIjtcblxuZXhwb3J0IGludGVyZmFjZSBDaGlwVGV4dEZpZWxkQ29uZmlnIGV4dGVuZHMgRmllbGRDb25maWcsIFN0cmluZ1ZhbHVlRmllbGRzRmllbGRDb25maWcgeyB9XG5leHBvcnQgaW50ZXJmYWNlIENoaXBUZXh0RmllbGRGb3JtbHlDb25maWcgZXh0ZW5kcyBTdHJpbmdWYWx1ZUZpZWxkc0Zvcm1seUZpZWxkQ29uZmlnLCBGb3JtbHlGaWVsZENvbmZpZyB7XG4gIGNhc2VTZW5zaXRpdmU/OiBib29sZWFuO1xufVxuXG5leHBvcnQgZnVuY3Rpb24gY2hpcFRleHRGaWVsZDxDIGV4dGVuZHMgQ2hpcFRleHRGaWVsZEZvcm1seUNvbmZpZz4oY29uZmlnOiBDKTogQyB7XG4gIGNvbnN0IGNvbnZlcnRTdHJpbmdWYWx1ZSA9IChjb25maWcuY2FzZVNlbnNpdGl2ZSkgPyAoKHg6IHN0cmluZykgPT4geCkgOiAoKHg6IHN0cmluZykgPT4geD8udG9Mb3dlckNhc2UoKSk7XG5cbiAgcmV0dXJuIGZvcm1seUZpZWxkPEM+KHtcbiAgICB0eXBlOiAnc2VhcmNoYWJsZWNoaXBmaWVsZCcsXG4gICAgYWxsb3dTdHJpbmdWYWx1ZXM6IHRydWUsXG4gICAgY29udmVydFN0cmluZ1ZhbHVlLFxuICAgIC4uLmNvbmZpZyxcbiAgICBkaXNwbGF5Rm9yVmFsdWU6ICh2YWx1ZXM6IFNlYXJjaGFibGVWYWx1ZUZpZWxkVmFsdWU8c3RyaW5nPltdKSA9PiB7XG4gICAgICByZXR1cm4gb2YodmFsdWVzLm1hcCh4ID0+ICh7IC4uLngsIGxhYmVsOiB4LnZhbHVlIH0pKSk7XG4gICAgfVxuICB9KTtcbn1cbiJdfQ==
15
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGV4dC5jaGlwLmZpZWxkLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vcGFja2FnZXMvZGJ4LWZvcm0vc3JjL2xpYi9mb3JtbHkvZmllbGQvc2VsZWN0aW9uL3NlYXJjaGFibGUvdGV4dC5jaGlwLmZpZWxkLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUNBLE9BQU8sRUFBRSxFQUFFLEVBQUUsTUFBTSxNQUFNLENBQUM7QUFDMUIsT0FBTyxFQUFzQixXQUFXLEVBQUUsTUFBTSxhQUFhLENBQUM7QUFTOUQsTUFBTSxVQUFVLGFBQWEsQ0FBc0MsTUFBUztJQUMxRSxNQUFNLGtCQUFrQixHQUFHLENBQUMsTUFBTSxDQUFDLGFBQWEsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBUyxFQUFFLEVBQUUsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQVMsRUFBRSxFQUFFLENBQUMsQ0FBQyxFQUFFLFdBQVcsRUFBRSxDQUFDLENBQUM7SUFFM0csT0FBTyxXQUFXLENBQUk7UUFDcEIsSUFBSSxFQUFFLHFCQUFxQjtRQUMzQixpQkFBaUIsRUFBRSxJQUFJO1FBQ3ZCLGtCQUFrQjtRQUNsQixHQUFHLE1BQU07UUFDVCxlQUFlLEVBQUUsQ0FBQyxNQUEyQyxFQUFFLEVBQUU7WUFDL0QsT0FBTyxFQUFFLENBQUMsTUFBTSxDQUFDLEdBQUcsQ0FBQyxDQUFDLENBQUMsRUFBRSxDQUFDLENBQUMsRUFBRSxHQUFHLENBQUMsRUFBRSxLQUFLLEVBQUUsQ0FBQyxDQUFDLEtBQUssRUFBRSxDQUFDLENBQUMsQ0FBQyxDQUFDO1FBQ3pELENBQUM7S0FDRixDQUFDLENBQUM7QUFDTCxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgRm9ybWx5RmllbGRDb25maWcgfSBmcm9tIFwiQG5neC1mb3JtbHkvY29yZVwiO1xuaW1wb3J0IHsgb2YgfSBmcm9tIFwicnhqc1wiO1xuaW1wb3J0IHsgTGFiZWxlZEZpZWxkQ29uZmlnLCBmb3JtbHlGaWVsZCB9IGZyb20gXCIuLi8uLi9maWVsZFwiO1xuaW1wb3J0IHsgU2VhcmNoYWJsZVZhbHVlRmllbGRWYWx1ZSB9IGZyb20gXCIuL3NlYXJjaGFibGVcIjtcbmltcG9ydCB7IFN0cmluZ1ZhbHVlRmllbGRzRmllbGRDb25maWcsIFN0cmluZ1ZhbHVlRmllbGRzRm9ybWx5RmllbGRDb25maWcgfSBmcm9tIFwiLi9zZWFyY2hhYmxlLmZpZWxkLmRpcmVjdGl2ZVwiO1xuXG5leHBvcnQgaW50ZXJmYWNlIENoaXBUZXh0RmllbGRDb25maWcgZXh0ZW5kcyBMYWJlbGVkRmllbGRDb25maWcsIFN0cmluZ1ZhbHVlRmllbGRzRmllbGRDb25maWcgeyB9XG5leHBvcnQgaW50ZXJmYWNlIENoaXBUZXh0RmllbGRGb3JtbHlDb25maWcgZXh0ZW5kcyBTdHJpbmdWYWx1ZUZpZWxkc0Zvcm1seUZpZWxkQ29uZmlnLCBGb3JtbHlGaWVsZENvbmZpZyB7XG4gIGNhc2VTZW5zaXRpdmU/OiBib29sZWFuO1xufVxuXG5leHBvcnQgZnVuY3Rpb24gY2hpcFRleHRGaWVsZDxDIGV4dGVuZHMgQ2hpcFRleHRGaWVsZEZvcm1seUNvbmZpZz4oY29uZmlnOiBDKTogQyB7XG4gIGNvbnN0IGNvbnZlcnRTdHJpbmdWYWx1ZSA9IChjb25maWcuY2FzZVNlbnNpdGl2ZSkgPyAoKHg6IHN0cmluZykgPT4geCkgOiAoKHg6IHN0cmluZykgPT4geD8udG9Mb3dlckNhc2UoKSk7XG5cbiAgcmV0dXJuIGZvcm1seUZpZWxkPEM+KHtcbiAgICB0eXBlOiAnc2VhcmNoYWJsZWNoaXBmaWVsZCcsXG4gICAgYWxsb3dTdHJpbmdWYWx1ZXM6IHRydWUsXG4gICAgY29udmVydFN0cmluZ1ZhbHVlLFxuICAgIC4uLmNvbmZpZyxcbiAgICBkaXNwbGF5Rm9yVmFsdWU6ICh2YWx1ZXM6IFNlYXJjaGFibGVWYWx1ZUZpZWxkVmFsdWU8c3RyaW5nPltdKSA9PiB7XG4gICAgICByZXR1cm4gb2YodmFsdWVzLm1hcCh4ID0+ICh7IC4uLngsIGxhYmVsOiB4LnZhbHVlIH0pKSk7XG4gICAgfVxuICB9KTtcbn1cbiJdfQ==
@@ -1,2 +1,2 @@
1
1
  export {};
2
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2VsZWN0aW9uLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vcGFja2FnZXMvZGJ4LWZvcm0vc3JjL2xpYi9mb3JtbHkvZmllbGQvc2VsZWN0aW9uL3NlbGVjdGlvbi50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgTWF5YmUgfSBmcm9tIFwiQGRlcmVla2IvdXRpbFwiO1xuXG5leHBvcnQgaW50ZXJmYWNlIFNlbGVjdGlvblZhbHVlPFQsIE0gPSBhbnk+IHtcbiAgLyoqXG4gKiBWYWx1ZSBhc3NvY2lhdGVkIHdpdGggdGhpcyBmaWVsZC5cbiAqL1xuICB2YWx1ZTogVDtcbiAgLyoqXG4gICAqIE9wdGlvbmFsIG1ldGFkYXRhIG9uIHRoZSBmaWVsZC5cbiAgICovXG4gIG1ldGE/OiBNYXliZTxNPjtcbn1cblxuLyoqXG4gKiBEaXNwbGF5ZWQgdmFsdWUuXG4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgU2VsZWN0aW9uRGlzcGxheVZhbHVlPFQsIE0gPSBhbnk+IGV4dGVuZHMgU2VsZWN0aW9uVmFsdWU8VCwgTT4ge1xuICBsYWJlbDogc3RyaW5nO1xuICAvKipcbiAgICogV2hldGhlciBvciBub3QgdGhlIHZhbHVlIGlzIGtub3duLlxuICAgKi9cbiAgaXNVbmtub3duPzogTWF5YmU8Ym9vbGVhbj47XG59XG5cbi8qKlxuICogVXNlZCB0byBoYXNoIHRoZSB2YWx1ZSBmcm9tIHRoZSBpbnB1dCBwaWNrYWJsZSB2YWx1ZS5cbiAqL1xuZXhwb3J0IHR5cGUgU2VsZWN0aW9uVmFsdWVIYXNoRm48VD4gPSAodmFsdWU6IFQpID0+IGFueTtcbiJdfQ==
2
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2VsZWN0aW9uLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vcGFja2FnZXMvZGJ4LWZvcm0vc3JjL2xpYi9mb3JtbHkvZmllbGQvc2VsZWN0aW9uL3NlbGVjdGlvbi50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgTWF5YmUgfSBmcm9tIFwiQGRlcmVla2IvdXRpbFwiO1xuXG5leHBvcnQgaW50ZXJmYWNlIFNlbGVjdGlvblZhbHVlPFQsIE0gPSBhbnk+IHtcbiAgLyoqXG4gKiBWYWx1ZSBhc3NvY2lhdGVkIHdpdGggdGhpcyBmaWVsZC5cbiAqL1xuICB2YWx1ZTogVDtcbiAgLyoqXG4gICAqIE9wdGlvbmFsIG1ldGFkYXRhIG9uIHRoZSBmaWVsZC5cbiAgICovXG4gIG1ldGE/OiBNYXliZTxNPjtcbn1cblxuLyoqXG4gKiBEaXNwbGF5ZWQgdmFsdWUuXG4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgU2VsZWN0aW9uRGlzcGxheVZhbHVlPFQsIE0gPSBhbnk+IGV4dGVuZHMgU2VsZWN0aW9uVmFsdWU8VCwgTT4ge1xuICBsYWJlbDogc3RyaW5nO1xuICBzdWJsYWJlbD86IHN0cmluZztcbiAgLyoqXG4gICAqIFdoZXRoZXIgb3Igbm90IHRoZSB2YWx1ZSBpcyBrbm93bi5cbiAgICovXG4gIGlzVW5rbm93bj86IE1heWJlPGJvb2xlYW4+O1xufVxuXG4vKipcbiAqIFVzZWQgdG8gaGFzaCB0aGUgdmFsdWUgZnJvbSB0aGUgaW5wdXQgcGlja2FibGUgdmFsdWUuXG4gKi9cbmV4cG9ydCB0eXBlIFNlbGVjdGlvblZhbHVlSGFzaEZuPFQ+ID0gKHZhbHVlOiBUKSA9PiBhbnk7XG4iXX0=
@@ -0,0 +1,28 @@
1
+ import { NgModule } from '@angular/core';
2
+ import { CommonModule } from '@angular/common';
3
+ import { DbxFormFormlyPickableFieldModule } from './pickable/pickable.field.module';
4
+ import { DbxFormFormlySearchableFieldModule } from './searchable/searchable.field.module';
5
+ import * as i0 from "@angular/core";
6
+ export class DbxFormFormlySelectionModule {
7
+ }
8
+ DbxFormFormlySelectionModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.2.0", ngImport: i0, type: DbxFormFormlySelectionModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
9
+ DbxFormFormlySelectionModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "12.0.0", version: "13.2.0", ngImport: i0, type: DbxFormFormlySelectionModule, imports: [CommonModule], exports: [DbxFormFormlyPickableFieldModule,
10
+ DbxFormFormlySearchableFieldModule] });
11
+ DbxFormFormlySelectionModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "13.2.0", ngImport: i0, type: DbxFormFormlySelectionModule, imports: [[
12
+ CommonModule
13
+ ], DbxFormFormlyPickableFieldModule,
14
+ DbxFormFormlySearchableFieldModule] });
15
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.2.0", ngImport: i0, type: DbxFormFormlySelectionModule, decorators: [{
16
+ type: NgModule,
17
+ args: [{
18
+ imports: [
19
+ CommonModule
20
+ ],
21
+ declarations: [],
22
+ exports: [
23
+ DbxFormFormlyPickableFieldModule,
24
+ DbxFormFormlySearchableFieldModule
25
+ ]
26
+ }]
27
+ }] });
28
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2VsZWN0aW9uLm1vZHVsZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL3BhY2thZ2VzL2RieC1mb3JtL3NyYy9saWIvZm9ybWx5L2ZpZWxkL3NlbGVjdGlvbi9zZWxlY3Rpb24ubW9kdWxlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxRQUFRLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDekMsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBQy9DLE9BQU8sRUFBRSxnQ0FBZ0MsRUFBRSxNQUFNLGtDQUFrQyxDQUFDO0FBQ3BGLE9BQU8sRUFBRSxrQ0FBa0MsRUFBRSxNQUFNLHNDQUFzQyxDQUFDOztBQVkxRixNQUFNLE9BQU8sNEJBQTRCOzt5SEFBNUIsNEJBQTRCOzBIQUE1Qiw0QkFBNEIsWUFSckMsWUFBWSxhQUlaLGdDQUFnQztRQUNoQyxrQ0FBa0M7MEhBR3pCLDRCQUE0QixZQVQ5QjtZQUNQLFlBQVk7U0FDYixFQUdDLGdDQUFnQztRQUNoQyxrQ0FBa0M7MkZBR3pCLDRCQUE0QjtrQkFWeEMsUUFBUTttQkFBQztvQkFDUixPQUFPLEVBQUU7d0JBQ1AsWUFBWTtxQkFDYjtvQkFDRCxZQUFZLEVBQUUsRUFBRTtvQkFDaEIsT0FBTyxFQUFFO3dCQUNQLGdDQUFnQzt3QkFDaEMsa0NBQWtDO3FCQUNuQztpQkFDRiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IE5nTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBDb21tb25Nb2R1bGUgfSBmcm9tICdAYW5ndWxhci9jb21tb24nO1xuaW1wb3J0IHsgRGJ4Rm9ybUZvcm1seVBpY2thYmxlRmllbGRNb2R1bGUgfSBmcm9tICcuL3BpY2thYmxlL3BpY2thYmxlLmZpZWxkLm1vZHVsZSc7XG5pbXBvcnQgeyBEYnhGb3JtRm9ybWx5U2VhcmNoYWJsZUZpZWxkTW9kdWxlIH0gZnJvbSAnLi9zZWFyY2hhYmxlL3NlYXJjaGFibGUuZmllbGQubW9kdWxlJztcblxuQE5nTW9kdWxlKHtcbiAgaW1wb3J0czogW1xuICAgIENvbW1vbk1vZHVsZVxuICBdLFxuICBkZWNsYXJhdGlvbnM6IFtdLFxuICBleHBvcnRzOiBbXG4gICAgRGJ4Rm9ybUZvcm1seVBpY2thYmxlRmllbGRNb2R1bGUsXG4gICAgRGJ4Rm9ybUZvcm1seVNlYXJjaGFibGVGaWVsZE1vZHVsZVxuICBdXG59KVxuZXhwb3J0IGNsYXNzIERieEZvcm1Gb3JtbHlTZWxlY3Rpb25Nb2R1bGUgeyB9XG4iXX0=
@@ -0,0 +1,4 @@
1
+ export * from './texteditor.field.component';
2
+ export * from './texteditor.field.module';
3
+ export * from './texteditor.field';
4
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9wYWNrYWdlcy9kYngtZm9ybS9zcmMvbGliL2Zvcm1seS9maWVsZC90ZXh0ZWRpdG9yL2luZGV4LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLGNBQWMsOEJBQThCLENBQUM7QUFDN0MsY0FBYywyQkFBMkIsQ0FBQztBQUMxQyxjQUFjLG9CQUFvQixDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiZXhwb3J0ICogZnJvbSAnLi90ZXh0ZWRpdG9yLmZpZWxkLmNvbXBvbmVudCc7XG5leHBvcnQgKiBmcm9tICcuL3RleHRlZGl0b3IuZmllbGQubW9kdWxlJztcbmV4cG9ydCAqIGZyb20gJy4vdGV4dGVkaXRvci5maWVsZCc7XG4iXX0=
@@ -0,0 +1,90 @@
1
+ import { CompactContextStore, mapCompactModeObs } from '@dereekb/dbx-web';
2
+ import { Component, Optional } from '@angular/core';
3
+ import { FieldType } from '@ngx-formly/material';
4
+ import { Editor } from 'ngx-editor';
5
+ import { debounceTime, filter } from 'rxjs/operators';
6
+ import { SubscriptionObject } from '@dereekb/rxjs';
7
+ import * as i0 from "@angular/core";
8
+ import * as i1 from "@dereekb/dbx-web";
9
+ import * as i2 from "ngx-editor";
10
+ import * as i3 from "@angular/common";
11
+ import * as i4 from "@angular/forms";
12
+ export class DbxTextEditorFieldComponent extends FieldType {
13
+ constructor(compact) {
14
+ super();
15
+ this.compact = compact;
16
+ this._sub = new SubscriptionObject();
17
+ this.compactClass$ = mapCompactModeObs(this.compact?.mode$, {
18
+ compact: 'dbx-texteditor-field-compact'
19
+ });
20
+ }
21
+ get formGroupName() {
22
+ return this.field.key;
23
+ }
24
+ get formGroup() {
25
+ return this.form;
26
+ }
27
+ get editor() {
28
+ return this._editor;
29
+ }
30
+ get label() {
31
+ return this.field.templateOptions?.label;
32
+ }
33
+ get description() {
34
+ return this.to.description;
35
+ }
36
+ ngOnInit() {
37
+ super.ngOnInit();
38
+ this._editor = new Editor({});
39
+ // Watch for value changes every second and update the pristine level.
40
+ this._sub.subscription = this.editor.valueChanges.pipe(debounceTime(100), filter(_ => this.editor.view.hasFocus())).subscribe(() => {
41
+ this.formControl.updateValueAndValidity();
42
+ this.formControl.markAsDirty();
43
+ });
44
+ }
45
+ ngOnDestroy() {
46
+ super.ngOnDestroy();
47
+ if (this.editor) {
48
+ this.editor.destroy();
49
+ delete this._editor;
50
+ }
51
+ this._sub.destroy();
52
+ }
53
+ }
54
+ DbxTextEditorFieldComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.2.0", ngImport: i0, type: DbxTextEditorFieldComponent, deps: [{ token: i1.CompactContextStore, optional: true }], target: i0.ɵɵFactoryTarget.Component });
55
+ DbxTextEditorFieldComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.2.0", type: DbxTextEditorFieldComponent, selector: "ng-component", usesInheritance: true, ngImport: i0, template: `
56
+ <div class="dbx-texteditor-field" [ngClass]="(compactClass$ | async) ?? ''" [formGroup]="formGroup">
57
+ <dbx-label *ngIf="label">{{ label }}</dbx-label>
58
+ <div class="dbx-texteditor-field-input">
59
+ <ngx-editor [editor]="editor" outputFormat="html" [placeholder]="placeholder" [formControlName]="formGroupName"></ngx-editor>
60
+ </div>
61
+ <div class="dbx-texteditor-field-menu">
62
+ <ngx-editor-menu [editor]="editor"></ngx-editor-menu>
63
+ </div>
64
+ <div>
65
+ <dbx-hint *ngIf="description">{{ description }}</dbx-hint>
66
+ </div>
67
+ </div>
68
+ `, isInline: true, components: [{ type: i1.DbxLabelComponent, selector: "dbx-label" }, { type: i2.NgxEditorComponent, selector: "ngx-editor", inputs: ["editor", "outputFormat", "placeholder"], outputs: ["focusOut", "focusIn"] }, { type: i2.MenuComponent, selector: "ngx-editor-menu", inputs: ["toolbar", "colorPresets", "disabled", "editor", "customMenuRef", "dropdownPlacement"] }, { type: i1.DbxHintComponent, selector: "dbx-hint" }], directives: [{ type: i3.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { type: i4.NgControlStatusGroup, selector: "[formGroupName],[formArrayName],[ngModelGroup],[formGroup],form:not([ngNoForm]),[ngForm]" }, { type: i4.FormGroupDirective, selector: "[formGroup]", inputs: ["formGroup"], outputs: ["ngSubmit"], exportAs: ["ngForm"] }, { type: i3.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { type: i4.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { type: i4.FormControlName, selector: "[formControlName]", inputs: ["formControlName", "disabled", "ngModel"], outputs: ["ngModelChange"] }], pipes: { "async": i3.AsyncPipe } });
69
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.2.0", ngImport: i0, type: DbxTextEditorFieldComponent, decorators: [{
70
+ type: Component,
71
+ args: [{
72
+ template: `
73
+ <div class="dbx-texteditor-field" [ngClass]="(compactClass$ | async) ?? ''" [formGroup]="formGroup">
74
+ <dbx-label *ngIf="label">{{ label }}</dbx-label>
75
+ <div class="dbx-texteditor-field-input">
76
+ <ngx-editor [editor]="editor" outputFormat="html" [placeholder]="placeholder" [formControlName]="formGroupName"></ngx-editor>
77
+ </div>
78
+ <div class="dbx-texteditor-field-menu">
79
+ <ngx-editor-menu [editor]="editor"></ngx-editor-menu>
80
+ </div>
81
+ <div>
82
+ <dbx-hint *ngIf="description">{{ description }}</dbx-hint>
83
+ </div>
84
+ </div>
85
+ `
86
+ }]
87
+ }], ctorParameters: function () { return [{ type: i1.CompactContextStore, decorators: [{
88
+ type: Optional
89
+ }] }]; } });
90
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGV4dGVkaXRvci5maWVsZC5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9wYWNrYWdlcy9kYngtZm9ybS9zcmMvbGliL2Zvcm1seS9maWVsZC90ZXh0ZWRpdG9yL3RleHRlZGl0b3IuZmllbGQuY29tcG9uZW50LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUNBLE9BQU8sRUFBRSxtQkFBbUIsRUFBRSxpQkFBaUIsRUFBRSxNQUFNLGtCQUFrQixDQUFDO0FBQzFFLE9BQU8sRUFDTCxTQUFTLEVBQXFCLFFBQVEsRUFDdkMsTUFBTSxlQUFlLENBQUM7QUFFdkIsT0FBTyxFQUFFLFNBQVMsRUFBRSxNQUFNLHNCQUFzQixDQUFDO0FBQ2pELE9BQU8sRUFBRSxNQUFNLEVBQUUsTUFBTSxZQUFZLENBQUM7QUFDcEMsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUN0RCxPQUFPLEVBQUUsa0JBQWtCLEVBQUUsTUFBTSxlQUFlLENBQUM7Ozs7OztBQXFCbkQsTUFBTSxPQUFPLDJCQUF1RyxTQUFRLFNBQThCO0lBU3hKLFlBQWlDLE9BQTRCO1FBQzNELEtBQUssRUFBRSxDQUFDO1FBRHVCLFlBQU8sR0FBUCxPQUFPLENBQXFCO1FBTnJELFNBQUksR0FBRyxJQUFJLGtCQUFrQixFQUFFLENBQUM7UUFFL0Isa0JBQWEsR0FBRyxpQkFBaUIsQ0FBQyxJQUFJLENBQUMsT0FBTyxFQUFFLEtBQUssRUFBRTtZQUM5RCxPQUFPLEVBQUUsOEJBQThCO1NBQ3hDLENBQUMsQ0FBQztJQUlILENBQUM7SUFFRCxJQUFJLGFBQWE7UUFDZixPQUFPLElBQUksQ0FBQyxLQUFLLENBQUMsR0FBYSxDQUFDO0lBQ2xDLENBQUM7SUFFRCxJQUFJLFNBQVM7UUFDWCxPQUFPLElBQUksQ0FBQyxJQUFpQixDQUFDO0lBQ2hDLENBQUM7SUFFRCxJQUFJLE1BQU07UUFDUixPQUFPLElBQUksQ0FBQyxPQUFRLENBQUM7SUFDdkIsQ0FBQztJQUVELElBQUksS0FBSztRQUNQLE9BQU8sSUFBSSxDQUFDLEtBQUssQ0FBQyxlQUFlLEVBQUUsS0FBSyxDQUFDO0lBQzNDLENBQUM7SUFFRCxJQUFJLFdBQVc7UUFDYixPQUFPLElBQUksQ0FBQyxFQUFFLENBQUMsV0FBVyxDQUFDO0lBQzdCLENBQUM7SUFFUSxRQUFRO1FBQ2YsS0FBSyxDQUFDLFFBQVEsRUFBRSxDQUFDO1FBRWpCLElBQUksQ0FBQyxPQUFPLEdBQUcsSUFBSSxNQUFNLENBQUMsRUFBRSxDQUFDLENBQUM7UUFFOUIsc0VBQXNFO1FBQ3RFLElBQUksQ0FBQyxJQUFJLENBQUMsWUFBWSxHQUFHLElBQUksQ0FBQyxNQUFNLENBQUMsWUFBWSxDQUFDLElBQUksQ0FDcEQsWUFBWSxDQUFDLEdBQUcsQ0FBQyxFQUNqQixNQUFNLENBQUMsQ0FBQyxDQUFDLEVBQUUsQ0FBQyxJQUFJLENBQUMsTUFBTSxDQUFDLElBQUksQ0FBQyxRQUFRLEVBQUUsQ0FBQyxDQUN6QyxDQUFDLFNBQVMsQ0FBQyxHQUFHLEVBQUU7WUFDZixJQUFJLENBQUMsV0FBVyxDQUFDLHNCQUFzQixFQUFFLENBQUM7WUFDMUMsSUFBSSxDQUFDLFdBQVcsQ0FBQyxXQUFXLEVBQUUsQ0FBQztRQUNqQyxDQUFDLENBQUMsQ0FBQztJQUNMLENBQUM7SUFFUSxXQUFXO1FBQ2xCLEtBQUssQ0FBQyxXQUFXLEVBQUUsQ0FBQztRQUVwQixJQUFJLElBQUksQ0FBQyxNQUFNLEVBQUU7WUFDZixJQUFJLENBQUMsTUFBTSxDQUFDLE9BQU8sRUFBRSxDQUFDO1lBQ3RCLE9BQU8sSUFBSSxDQUFDLE9BQU8sQ0FBQztTQUNyQjtRQUNELElBQUksQ0FBQyxJQUFJLENBQUMsT0FBTyxFQUFFLENBQUM7SUFDdEIsQ0FBQzs7d0hBeERVLDJCQUEyQjs0R0FBM0IsMkJBQTJCLDJFQWY1Qjs7Ozs7Ozs7Ozs7OztHQWFUOzJGQUVVLDJCQUEyQjtrQkFoQnZDLFNBQVM7bUJBQUM7b0JBQ1QsUUFBUSxFQUFFOzs7Ozs7Ozs7Ozs7O0dBYVQ7aUJBQ0Y7OzBCQVVjLFFBQVEiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBGb3JtR3JvdXAgfSBmcm9tICdAYW5ndWxhci9mb3Jtcyc7XG5pbXBvcnQgeyBDb21wYWN0Q29udGV4dFN0b3JlLCBtYXBDb21wYWN0TW9kZU9icyB9IGZyb20gJ0BkZXJlZWtiL2RieC13ZWInO1xuaW1wb3J0IHtcbiAgQ29tcG9uZW50LCBPbkRlc3Ryb3ksIE9uSW5pdCwgT3B0aW9uYWxcbn0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBGaWVsZFR5cGVDb25maWcsIEZvcm1seUZpZWxkQ29uZmlnIH0gZnJvbSAnQG5neC1mb3JtbHkvY29yZSc7XG5pbXBvcnQgeyBGaWVsZFR5cGUgfSBmcm9tICdAbmd4LWZvcm1seS9tYXRlcmlhbCc7XG5pbXBvcnQgeyBFZGl0b3IgfSBmcm9tICduZ3gtZWRpdG9yJztcbmltcG9ydCB7IGRlYm91bmNlVGltZSwgZmlsdGVyIH0gZnJvbSAncnhqcy9vcGVyYXRvcnMnO1xuaW1wb3J0IHsgU3Vic2NyaXB0aW9uT2JqZWN0IH0gZnJvbSAnQGRlcmVla2Ivcnhqcyc7XG5pbXBvcnQgeyBNYXliZSB9IGZyb20gJ0BkZXJlZWtiL3V0aWwnO1xuXG5leHBvcnQgaW50ZXJmYWNlIFRleHRFZGl0b3JDb21wb25lbnRGaWVsZENvbmZpZyBleHRlbmRzIEZvcm1seUZpZWxkQ29uZmlnIHsgfVxuXG5AQ29tcG9uZW50KHtcbiAgdGVtcGxhdGU6IGBcbiAgICA8ZGl2IGNsYXNzPVwiZGJ4LXRleHRlZGl0b3ItZmllbGRcIiBbbmdDbGFzc109XCIoY29tcGFjdENsYXNzJCB8IGFzeW5jKSA/PyAnJ1wiIFtmb3JtR3JvdXBdPVwiZm9ybUdyb3VwXCI+XG4gICAgICA8ZGJ4LWxhYmVsICpuZ0lmPVwibGFiZWxcIj57eyBsYWJlbCB9fTwvZGJ4LWxhYmVsPlxuICAgICAgPGRpdiBjbGFzcz1cImRieC10ZXh0ZWRpdG9yLWZpZWxkLWlucHV0XCI+XG4gICAgICAgIDxuZ3gtZWRpdG9yIFtlZGl0b3JdPVwiZWRpdG9yXCIgb3V0cHV0Rm9ybWF0PVwiaHRtbFwiIFtwbGFjZWhvbGRlcl09XCJwbGFjZWhvbGRlclwiIFtmb3JtQ29udHJvbE5hbWVdPVwiZm9ybUdyb3VwTmFtZVwiPjwvbmd4LWVkaXRvcj5cbiAgICAgIDwvZGl2PlxuICAgICAgPGRpdiBjbGFzcz1cImRieC10ZXh0ZWRpdG9yLWZpZWxkLW1lbnVcIj5cbiAgICAgICAgPG5neC1lZGl0b3ItbWVudSBbZWRpdG9yXT1cImVkaXRvclwiPjwvbmd4LWVkaXRvci1tZW51PlxuICAgICAgPC9kaXY+XG4gICAgICA8ZGl2PlxuICAgICAgICA8ZGJ4LWhpbnQgKm5nSWY9XCJkZXNjcmlwdGlvblwiPnt7IGRlc2NyaXB0aW9uIH19PC9kYngtaGludD5cbiAgICAgIDwvZGl2PlxuICAgIDwvZGl2PlxuICBgXG59KVxuZXhwb3J0IGNsYXNzIERieFRleHRFZGl0b3JGaWVsZENvbXBvbmVudDxUIGV4dGVuZHMgVGV4dEVkaXRvckNvbXBvbmVudEZpZWxkQ29uZmlnID0gVGV4dEVkaXRvckNvbXBvbmVudEZpZWxkQ29uZmlnPiBleHRlbmRzIEZpZWxkVHlwZTxUICYgRmllbGRUeXBlQ29uZmlnPiBpbXBsZW1lbnRzIE9uSW5pdCwgT25EZXN0cm95IHtcblxuICBwcml2YXRlIF9lZGl0b3I/OiBFZGl0b3I7XG4gIHByaXZhdGUgX3N1YiA9IG5ldyBTdWJzY3JpcHRpb25PYmplY3QoKTtcblxuICByZWFkb25seSBjb21wYWN0Q2xhc3MkID0gbWFwQ29tcGFjdE1vZGVPYnModGhpcy5jb21wYWN0Py5tb2RlJCwge1xuICAgIGNvbXBhY3Q6ICdkYngtdGV4dGVkaXRvci1maWVsZC1jb21wYWN0J1xuICB9KTtcblxuICBjb25zdHJ1Y3RvcihAT3B0aW9uYWwoKSByZWFkb25seSBjb21wYWN0OiBDb21wYWN0Q29udGV4dFN0b3JlKSB7XG4gICAgc3VwZXIoKTtcbiAgfVxuXG4gIGdldCBmb3JtR3JvdXBOYW1lKCk6IHN0cmluZyB7XG4gICAgcmV0dXJuIHRoaXMuZmllbGQua2V5IGFzIHN0cmluZztcbiAgfVxuXG4gIGdldCBmb3JtR3JvdXAoKTogRm9ybUdyb3VwIHtcbiAgICByZXR1cm4gdGhpcy5mb3JtIGFzIEZvcm1Hcm91cDtcbiAgfVxuXG4gIGdldCBlZGl0b3IoKTogRWRpdG9yIHtcbiAgICByZXR1cm4gdGhpcy5fZWRpdG9yITtcbiAgfVxuXG4gIGdldCBsYWJlbCgpOiBNYXliZTxzdHJpbmc+IHtcbiAgICByZXR1cm4gdGhpcy5maWVsZC50ZW1wbGF0ZU9wdGlvbnM/LmxhYmVsO1xuICB9XG5cbiAgZ2V0IGRlc2NyaXB0aW9uKCk6IE1heWJlPHN0cmluZz4ge1xuICAgIHJldHVybiB0aGlzLnRvLmRlc2NyaXB0aW9uO1xuICB9XG5cbiAgb3ZlcnJpZGUgbmdPbkluaXQoKTogdm9pZCB7XG4gICAgc3VwZXIubmdPbkluaXQoKTtcblxuICAgIHRoaXMuX2VkaXRvciA9IG5ldyBFZGl0b3Ioe30pO1xuXG4gICAgLy8gV2F0Y2ggZm9yIHZhbHVlIGNoYW5nZXMgZXZlcnkgc2Vjb25kIGFuZCB1cGRhdGUgdGhlIHByaXN0aW5lIGxldmVsLlxuICAgIHRoaXMuX3N1Yi5zdWJzY3JpcHRpb24gPSB0aGlzLmVkaXRvci52YWx1ZUNoYW5nZXMucGlwZShcbiAgICAgIGRlYm91bmNlVGltZSgxMDApLFxuICAgICAgZmlsdGVyKF8gPT4gdGhpcy5lZGl0b3Iudmlldy5oYXNGb2N1cygpKVxuICAgICkuc3Vic2NyaWJlKCgpID0+IHtcbiAgICAgIHRoaXMuZm9ybUNvbnRyb2wudXBkYXRlVmFsdWVBbmRWYWxpZGl0eSgpO1xuICAgICAgdGhpcy5mb3JtQ29udHJvbC5tYXJrQXNEaXJ0eSgpO1xuICAgIH0pO1xuICB9XG5cbiAgb3ZlcnJpZGUgbmdPbkRlc3Ryb3koKTogdm9pZCB7XG4gICAgc3VwZXIubmdPbkRlc3Ryb3koKTtcblxuICAgIGlmICh0aGlzLmVkaXRvcikge1xuICAgICAgdGhpcy5lZGl0b3IuZGVzdHJveSgpO1xuICAgICAgZGVsZXRlIHRoaXMuX2VkaXRvcjtcbiAgICB9XG4gICAgdGhpcy5fc3ViLmRlc3Ryb3koKTtcbiAgfVxuXG59XG4iXX0=
@@ -0,0 +1,20 @@
1
+ import { formlyField, templateOptionsForFieldConfig } from '../field';
2
+ export function textEditorField(config) {
3
+ const { key, minLength, maxLength } = config;
4
+ const fieldConfig = formlyField({
5
+ key,
6
+ type: 'texteditor',
7
+ defaultValue: '',
8
+ modelOptions: {
9
+ // https://formly.dev/examples/validation/async-validation-update-on
10
+ // Set to trigger value update on blurs with the form. However, the value is set internally too.
11
+ updateOn: 'blur'
12
+ },
13
+ ...templateOptionsForFieldConfig(config, {
14
+ minLength,
15
+ maxLength
16
+ })
17
+ });
18
+ return fieldConfig;
19
+ }
20
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGV4dGVkaXRvci5maWVsZC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL3BhY2thZ2VzL2RieC1mb3JtL3NyYy9saWIvZm9ybWx5L2ZpZWxkL3RleHRlZGl0b3IvdGV4dGVkaXRvci5maWVsZC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFFQSxPQUFPLEVBQXNCLFdBQVcsRUFBRSw2QkFBNkIsRUFBRSxNQUFNLFVBQVUsQ0FBQztBQUsxRixNQUFNLFVBQVUsZUFBZSxDQUFDLE1BQTZCO0lBQzNELE1BQU0sRUFBRSxHQUFHLEVBQUUsU0FBUyxFQUFFLFNBQVMsRUFBRSxHQUFHLE1BQU0sQ0FBQztJQUM3QyxNQUFNLFdBQVcsR0FBc0IsV0FBVyxDQUFDO1FBQ2pELEdBQUc7UUFDSCxJQUFJLEVBQUUsWUFBWTtRQUNsQixZQUFZLEVBQUUsRUFBRTtRQUNoQixZQUFZLEVBQUU7WUFDWixvRUFBb0U7WUFDcEUsZ0dBQWdHO1lBQ2hHLFFBQVEsRUFBRSxNQUFNO1NBQ2pCO1FBQ0QsR0FBRyw2QkFBNkIsQ0FBQyxNQUFNLEVBQUU7WUFDdkMsU0FBUztZQUNULFNBQVM7U0FDVixDQUFDO0tBQ0gsQ0FBQyxDQUFDO0lBRUgsT0FBTyxXQUFXLENBQUM7QUFDckIsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IERlc2NyaXB0aW9uRmllbGRDb25maWcgfSBmcm9tICcuLy4uL2ZpZWxkJztcbmltcG9ydCB7IEZvcm1seUZpZWxkQ29uZmlnIH0gZnJvbSAnQG5neC1mb3JtbHkvY29yZSc7XG5pbXBvcnQgeyBMYWJlbGVkRmllbGRDb25maWcsIGZvcm1seUZpZWxkLCB0ZW1wbGF0ZU9wdGlvbnNGb3JGaWVsZENvbmZpZyB9IGZyb20gJy4uL2ZpZWxkJztcbmltcG9ydCB7IFRleHRGaWVsZExlbmd0aENvbmZpZyB9IGZyb20gJy4uL3ZhbHVlL3RleHQvdGV4dC5maWVsZCc7XG5cbmV4cG9ydCBpbnRlcmZhY2UgVGV4dEVkaXRvckZpZWxkQ29uZmlnIGV4dGVuZHMgTGFiZWxlZEZpZWxkQ29uZmlnLCBEZXNjcmlwdGlvbkZpZWxkQ29uZmlnLCBUZXh0RmllbGRMZW5ndGhDb25maWcgeyB9XG5cbmV4cG9ydCBmdW5jdGlvbiB0ZXh0RWRpdG9yRmllbGQoY29uZmlnOiBUZXh0RWRpdG9yRmllbGRDb25maWcpOiBGb3JtbHlGaWVsZENvbmZpZyB7XG4gIGNvbnN0IHsga2V5LCBtaW5MZW5ndGgsIG1heExlbmd0aCB9ID0gY29uZmlnO1xuICBjb25zdCBmaWVsZENvbmZpZzogRm9ybWx5RmllbGRDb25maWcgPSBmb3JtbHlGaWVsZCh7XG4gICAga2V5LFxuICAgIHR5cGU6ICd0ZXh0ZWRpdG9yJyxcbiAgICBkZWZhdWx0VmFsdWU6ICcnLCAgIC8vIFNldCB0byBhbHdheXMgZ2V0IGEgc3RyaW5nIGFzIGEgcmVzdWx0LlxuICAgIG1vZGVsT3B0aW9uczoge1xuICAgICAgLy8gaHR0cHM6Ly9mb3JtbHkuZGV2L2V4YW1wbGVzL3ZhbGlkYXRpb24vYXN5bmMtdmFsaWRhdGlvbi11cGRhdGUtb25cbiAgICAgIC8vIFNldCB0byB0cmlnZ2VyIHZhbHVlIHVwZGF0ZSBvbiBibHVycyB3aXRoIHRoZSBmb3JtLiBIb3dldmVyLCB0aGUgdmFsdWUgaXMgc2V0IGludGVybmFsbHkgdG9vLlxuICAgICAgdXBkYXRlT246ICdibHVyJ1xuICAgIH0sXG4gICAgLi4udGVtcGxhdGVPcHRpb25zRm9yRmllbGRDb25maWcoY29uZmlnLCB7XG4gICAgICBtaW5MZW5ndGgsXG4gICAgICBtYXhMZW5ndGhcbiAgICB9KVxuICB9KTtcblxuICByZXR1cm4gZmllbGRDb25maWc7XG59XG4iXX0=
@@ -0,0 +1,59 @@
1
+ import { DbxTextModule } from '@dereekb/dbx-web';
2
+ import { CommonModule } from '@angular/common';
3
+ import { NgModule } from '@angular/core';
4
+ import { FormsModule, ReactiveFormsModule } from '@angular/forms';
5
+ import { MatFormFieldModule } from '@angular/material/form-field';
6
+ import { MatInputModule } from '@angular/material/input';
7
+ import { FormlyModule } from '@ngx-formly/core';
8
+ import { NgxEditorModule } from 'ngx-editor';
9
+ import { DbxTextEditorFieldComponent } from './texteditor.field.component';
10
+ import * as i0 from "@angular/core";
11
+ import * as i1 from "@ngx-formly/core";
12
+ export class DbxFormFormlyTextEditorFieldModule {
13
+ }
14
+ DbxFormFormlyTextEditorFieldModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.2.0", ngImport: i0, type: DbxFormFormlyTextEditorFieldModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
15
+ DbxFormFormlyTextEditorFieldModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "12.0.0", version: "13.2.0", ngImport: i0, type: DbxFormFormlyTextEditorFieldModule, declarations: [DbxTextEditorFieldComponent], imports: [CommonModule,
16
+ DbxTextModule,
17
+ FormsModule,
18
+ ReactiveFormsModule,
19
+ NgxEditorModule,
20
+ MatFormFieldModule,
21
+ MatInputModule, i1.FormlyModule] });
22
+ DbxFormFormlyTextEditorFieldModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "13.2.0", ngImport: i0, type: DbxFormFormlyTextEditorFieldModule, imports: [[
23
+ CommonModule,
24
+ DbxTextModule,
25
+ FormsModule,
26
+ ReactiveFormsModule,
27
+ NgxEditorModule,
28
+ MatFormFieldModule,
29
+ MatInputModule,
30
+ FormlyModule.forChild({
31
+ types: [
32
+ { name: 'texteditor', component: DbxTextEditorFieldComponent }
33
+ ]
34
+ })
35
+ ]] });
36
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.2.0", ngImport: i0, type: DbxFormFormlyTextEditorFieldModule, decorators: [{
37
+ type: NgModule,
38
+ args: [{
39
+ imports: [
40
+ CommonModule,
41
+ DbxTextModule,
42
+ FormsModule,
43
+ ReactiveFormsModule,
44
+ NgxEditorModule,
45
+ MatFormFieldModule,
46
+ MatInputModule,
47
+ FormlyModule.forChild({
48
+ types: [
49
+ { name: 'texteditor', component: DbxTextEditorFieldComponent }
50
+ ]
51
+ })
52
+ ],
53
+ declarations: [
54
+ DbxTextEditorFieldComponent
55
+ ],
56
+ exports: []
57
+ }]
58
+ }] });
59
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGV4dGVkaXRvci5maWVsZC5tb2R1bGUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9wYWNrYWdlcy9kYngtZm9ybS9zcmMvbGliL2Zvcm1seS9maWVsZC90ZXh0ZWRpdG9yL3RleHRlZGl0b3IuZmllbGQubW9kdWxlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxhQUFhLEVBQUUsTUFBTSxrQkFBa0IsQ0FBQztBQUNqRCxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFDL0MsT0FBTyxFQUFFLFFBQVEsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUN6QyxPQUFPLEVBQUUsV0FBVyxFQUFFLG1CQUFtQixFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFDbEUsT0FBTyxFQUFFLGtCQUFrQixFQUFFLE1BQU0sOEJBQThCLENBQUM7QUFDbEUsT0FBTyxFQUFFLGNBQWMsRUFBRSxNQUFNLHlCQUF5QixDQUFDO0FBQ3pELE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSxrQkFBa0IsQ0FBQztBQUNoRCxPQUFPLEVBQUUsZUFBZSxFQUFFLE1BQU0sWUFBWSxDQUFDO0FBQzdDLE9BQU8sRUFBRSwyQkFBMkIsRUFBRSxNQUFNLDhCQUE4QixDQUFDOzs7QUFzQjNFLE1BQU0sT0FBTyxrQ0FBa0M7OytIQUFsQyxrQ0FBa0M7Z0lBQWxDLGtDQUFrQyxpQkFKM0MsMkJBQTJCLGFBZDNCLFlBQVk7UUFDWixhQUFhO1FBQ2IsV0FBVztRQUNYLG1CQUFtQjtRQUNuQixlQUFlO1FBQ2Ysa0JBQWtCO1FBQ2xCLGNBQWM7Z0lBWUwsa0NBQWtDLFlBbkJwQztZQUNQLFlBQVk7WUFDWixhQUFhO1lBQ2IsV0FBVztZQUNYLG1CQUFtQjtZQUNuQixlQUFlO1lBQ2Ysa0JBQWtCO1lBQ2xCLGNBQWM7WUFDZCxZQUFZLENBQUMsUUFBUSxDQUFDO2dCQUNwQixLQUFLLEVBQUU7b0JBQ0wsRUFBRSxJQUFJLEVBQUUsWUFBWSxFQUFFLFNBQVMsRUFBRSwyQkFBMkIsRUFBRTtpQkFDL0Q7YUFDRixDQUFDO1NBQ0g7MkZBTVUsa0NBQWtDO2tCQXBCOUMsUUFBUTttQkFBQztvQkFDUixPQUFPLEVBQUU7d0JBQ1AsWUFBWTt3QkFDWixhQUFhO3dCQUNiLFdBQVc7d0JBQ1gsbUJBQW1CO3dCQUNuQixlQUFlO3dCQUNmLGtCQUFrQjt3QkFDbEIsY0FBYzt3QkFDZCxZQUFZLENBQUMsUUFBUSxDQUFDOzRCQUNwQixLQUFLLEVBQUU7Z0NBQ0wsRUFBRSxJQUFJLEVBQUUsWUFBWSxFQUFFLFNBQVMsRUFBRSwyQkFBMkIsRUFBRTs2QkFDL0Q7eUJBQ0YsQ0FBQztxQkFDSDtvQkFDRCxZQUFZLEVBQUU7d0JBQ1osMkJBQTJCO3FCQUM1QjtvQkFDRCxPQUFPLEVBQUUsRUFBRTtpQkFDWiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IERieFRleHRNb2R1bGUgfSBmcm9tICdAZGVyZWVrYi9kYngtd2ViJztcbmltcG9ydCB7IENvbW1vbk1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbic7XG5pbXBvcnQgeyBOZ01vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgRm9ybXNNb2R1bGUsIFJlYWN0aXZlRm9ybXNNb2R1bGUgfSBmcm9tICdAYW5ndWxhci9mb3Jtcyc7XG5pbXBvcnQgeyBNYXRGb3JtRmllbGRNb2R1bGUgfSBmcm9tICdAYW5ndWxhci9tYXRlcmlhbC9mb3JtLWZpZWxkJztcbmltcG9ydCB7IE1hdElucHV0TW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvbWF0ZXJpYWwvaW5wdXQnO1xuaW1wb3J0IHsgRm9ybWx5TW9kdWxlIH0gZnJvbSAnQG5neC1mb3JtbHkvY29yZSc7XG5pbXBvcnQgeyBOZ3hFZGl0b3JNb2R1bGUgfSBmcm9tICduZ3gtZWRpdG9yJztcbmltcG9ydCB7IERieFRleHRFZGl0b3JGaWVsZENvbXBvbmVudCB9IGZyb20gJy4vdGV4dGVkaXRvci5maWVsZC5jb21wb25lbnQnO1xuXG5ATmdNb2R1bGUoe1xuICBpbXBvcnRzOiBbXG4gICAgQ29tbW9uTW9kdWxlLFxuICAgIERieFRleHRNb2R1bGUsXG4gICAgRm9ybXNNb2R1bGUsXG4gICAgUmVhY3RpdmVGb3Jtc01vZHVsZSxcbiAgICBOZ3hFZGl0b3JNb2R1bGUsXG4gICAgTWF0Rm9ybUZpZWxkTW9kdWxlLFxuICAgIE1hdElucHV0TW9kdWxlLFxuICAgIEZvcm1seU1vZHVsZS5mb3JDaGlsZCh7XG4gICAgICB0eXBlczogW1xuICAgICAgICB7IG5hbWU6ICd0ZXh0ZWRpdG9yJywgY29tcG9uZW50OiBEYnhUZXh0RWRpdG9yRmllbGRDb21wb25lbnQgfVxuICAgICAgXVxuICAgIH0pXG4gIF0sXG4gIGRlY2xhcmF0aW9uczogW1xuICAgIERieFRleHRFZGl0b3JGaWVsZENvbXBvbmVudFxuICBdLFxuICBleHBvcnRzOiBbXVxufSlcbmV4cG9ydCBjbGFzcyBEYnhGb3JtRm9ybWx5VGV4dEVkaXRvckZpZWxkTW9kdWxlIHsgfVxuIl19
@@ -1,22 +1,25 @@
1
1
  import { Component } from '@angular/core';
2
+ import { getValueFromObjectOrGetter } from '@dereekb/util';
2
3
  import { FieldArrayType } from '@ngx-formly/core';
3
4
  import * as i0 from "@angular/core";
4
5
  import * as i1 from "@dereekb/dbx-web";
5
- import * as i2 from "@ngx-formly/core";
6
- import * as i3 from "@angular/material/divider";
7
- import * as i4 from "@angular/common";
8
- export class DbxFormRepeatTypeComponent extends FieldArrayType {
9
- get repeatSection() {
10
- return this.to.repeatSection ?? {};
6
+ import * as i2 from "@angular/material/button";
7
+ import * as i3 from "@angular/material/icon";
8
+ import * as i4 from "@ngx-formly/core";
9
+ import * as i5 from "@angular/cdk/drag-drop";
10
+ import * as i6 from "@angular/common";
11
+ export class DbxFormRepeatArrayTypeComponent extends FieldArrayType {
12
+ get repeatArrayField() {
13
+ return this.field.repeatArrayField;
11
14
  }
12
- get itemLabel() {
13
- return this.repeatSection.itemLabel ?? '#';
15
+ get label() {
16
+ return this.field.templateOptions.label ?? this.field.key;
14
17
  }
15
18
  get addText() {
16
- return this.repeatSection.addText ?? 'Add';
19
+ return this.repeatArrayField.addText ?? 'Add';
17
20
  }
18
21
  get removeText() {
19
- return this.repeatSection.removeText ?? 'Remove';
22
+ return this.repeatArrayField.removeText ?? 'Remove';
20
23
  }
21
24
  get max() {
22
25
  return this.field.templateOptions?.maxLength;
@@ -33,55 +36,88 @@ export class DbxFormRepeatTypeComponent extends FieldArrayType {
33
36
  return (this.count < max);
34
37
  }
35
38
  }
39
+ /**
40
+ * Moves the target index up one value.
41
+ *
42
+ * @param index
43
+ */
44
+ moveUp(index) {
45
+ if (index === 0) {
46
+ return;
47
+ }
48
+ this.swapIndexes(index, index - 1);
49
+ }
50
+ moveDown(index) {
51
+ this.swapIndexes(index, index + 1);
52
+ }
53
+ swapIndexes(currentIndex, targetIndex) {
54
+ const array = this.model;
55
+ const targetValue = array[currentIndex];
56
+ if (!targetValue) {
57
+ return;
58
+ }
59
+ this.remove(currentIndex);
60
+ this.add(targetIndex, targetValue);
61
+ }
62
+ drop(event) {
63
+ this.swapIndexes(event.previousIndex, event.currentIndex);
64
+ }
65
+ labelForItem(field) {
66
+ return getValueFromObjectOrGetter(this.repeatArrayField.labelForField ?? '', field);
67
+ }
36
68
  }
37
- DbxFormRepeatTypeComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.2.0", ngImport: i0, type: DbxFormRepeatTypeComponent, deps: null, target: i0.ɵɵFactoryTarget.Component });
38
- DbxFormRepeatTypeComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.2.0", type: DbxFormRepeatTypeComponent, selector: "ng-component", usesInheritance: true, ngImport: i0, template: `
39
- <div class="form-repeat-section">
40
- <!-- Fields -->
41
- <div class="form-repeat-section-fields">
42
- <ng-container *ngFor="let field of field.fieldGroup; let i = index; let last = last;">
43
- <div class="form-repeat-section-field">
44
- <div>
45
- <h4><span>{{ itemLabel }}</span><span>{{ i + 1 }}</span></h4>
46
- <dbx-button-spacer></dbx-button-spacer>
47
- <button mat-button color="warn" (click)="remove(i)">{{ removeText }}</button>
69
+ DbxFormRepeatArrayTypeComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.2.0", ngImport: i0, type: DbxFormRepeatArrayTypeComponent, deps: null, target: i0.ɵɵFactoryTarget.Component });
70
+ DbxFormRepeatArrayTypeComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.2.0", type: DbxFormRepeatArrayTypeComponent, selector: "ng-component", usesInheritance: true, ngImport: i0, template: `
71
+ <div class="dbx-form-repeat-array">
72
+ <dbx-subsection [header]="label">
73
+ <!-- Fields -->
74
+ <div class="dbx-form-repeat-array-fields" cdkDropList (cdkDropListDropped)="drop($event)">
75
+ <div class="dbx-form-repeat-array-field" cdkDrag cdkDragLockAxis="y" *ngFor="let field of field.fieldGroup; let i = index; let last = last;">
76
+ <div class="example-custom-placeholder" *cdkDragPlaceholder></div>
77
+ <dbx-bar>
78
+ <button cdkDragHandle mat-flat-button><mat-icon>drag_handle</mat-icon></button>
79
+ <dbx-button-spacer></dbx-button-spacer>
80
+ <h4><span class="repeat-array-number">{{ i + 1 }}</span><span>{{ labelForItem(field) }}</span></h4>
81
+ <span class="dbx-spacer"></span>
82
+ <button mat-flat-button color="warn" (click)="remove(i)">{{ removeText }}</button>
83
+ </dbx-bar>
84
+ <formly-field class="dbx-form-repeat-array-field-content" [field]="field"></formly-field>
48
85
  </div>
49
- <formly-field [field]="field"></formly-field>
50
- </div>
51
- <mat-divider [inset]="true" *ngIf="!last"></mat-divider>
52
- </ng-container>
53
- </div>
54
- <!-- Add Button -->
55
- <div class="form-repeat-section-footer">
56
- <button *ngIf="canAdd" mat-button (click)="add()">{{ addText }}</button>
57
- </div>
86
+ </div>
87
+ <!-- Add Button -->
88
+ <div class="dbx-form-repeat-array-footer">
89
+ <button *ngIf="canAdd" mat-raised-button (click)="add()">{{ addText }}</button>
90
+ </div>
91
+ </dbx-subsection>
58
92
  </div>
59
- `, isInline: true, components: [{ type: i1.DbxButtonSpacerComponent, selector: "dbx-button-spacer" }, { type: i2.FormlyField, selector: "formly-field", inputs: ["field"] }, { type: i3.MatDivider, selector: "mat-divider", inputs: ["vertical", "inset"] }], directives: [{ type: i4.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { type: i4.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }] });
60
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.2.0", ngImport: i0, type: DbxFormRepeatTypeComponent, decorators: [{
93
+ `, isInline: true, components: [{ type: i1.DbxSubSectionComponent, selector: "dbx-subsection" }, { type: i2.MatButton, selector: "button[mat-button], button[mat-raised-button], button[mat-icon-button], button[mat-fab], button[mat-mini-fab], button[mat-stroked-button], button[mat-flat-button]", inputs: ["disabled", "disableRipple", "color"], exportAs: ["matButton"] }, { type: i3.MatIcon, selector: "mat-icon", inputs: ["color", "inline", "svgIcon", "fontSet", "fontIcon"], exportAs: ["matIcon"] }, { type: i1.DbxButtonSpacerComponent, selector: "dbx-button-spacer" }, { type: i4.FormlyField, selector: "formly-field", inputs: ["field"] }], directives: [{ type: i5.CdkDropList, selector: "[cdkDropList], cdk-drop-list", inputs: ["cdkDropListConnectedTo", "cdkDropListData", "cdkDropListOrientation", "id", "cdkDropListLockAxis", "cdkDropListDisabled", "cdkDropListSortingDisabled", "cdkDropListEnterPredicate", "cdkDropListSortPredicate", "cdkDropListAutoScrollDisabled", "cdkDropListAutoScrollStep"], outputs: ["cdkDropListDropped", "cdkDropListEntered", "cdkDropListExited", "cdkDropListSorted"], exportAs: ["cdkDropList"] }, { type: i6.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { type: i5.CdkDrag, selector: "[cdkDrag]", inputs: ["cdkDragData", "cdkDragLockAxis", "cdkDragRootElement", "cdkDragBoundary", "cdkDragStartDelay", "cdkDragFreeDragPosition", "cdkDragDisabled", "cdkDragConstrainPosition", "cdkDragPreviewClass", "cdkDragPreviewContainer"], outputs: ["cdkDragStarted", "cdkDragReleased", "cdkDragEnded", "cdkDragEntered", "cdkDragExited", "cdkDragDropped", "cdkDragMoved"], exportAs: ["cdkDrag"] }, { type: i5.CdkDragPlaceholder, selector: "ng-template[cdkDragPlaceholder]", inputs: ["data"] }, { type: i1.DbxBarDirective, selector: "dbx-bar", inputs: ["color"] }, { type: i5.CdkDragHandle, selector: "[cdkDragHandle]", inputs: ["cdkDragHandleDisabled"] }, { type: i6.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }] });
94
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.2.0", ngImport: i0, type: DbxFormRepeatArrayTypeComponent, decorators: [{
61
95
  type: Component,
62
96
  args: [{
63
97
  template: `
64
- <div class="form-repeat-section">
65
- <!-- Fields -->
66
- <div class="form-repeat-section-fields">
67
- <ng-container *ngFor="let field of field.fieldGroup; let i = index; let last = last;">
68
- <div class="form-repeat-section-field">
69
- <div>
70
- <h4><span>{{ itemLabel }}</span><span>{{ i + 1 }}</span></h4>
71
- <dbx-button-spacer></dbx-button-spacer>
72
- <button mat-button color="warn" (click)="remove(i)">{{ removeText }}</button>
98
+ <div class="dbx-form-repeat-array">
99
+ <dbx-subsection [header]="label">
100
+ <!-- Fields -->
101
+ <div class="dbx-form-repeat-array-fields" cdkDropList (cdkDropListDropped)="drop($event)">
102
+ <div class="dbx-form-repeat-array-field" cdkDrag cdkDragLockAxis="y" *ngFor="let field of field.fieldGroup; let i = index; let last = last;">
103
+ <div class="example-custom-placeholder" *cdkDragPlaceholder></div>
104
+ <dbx-bar>
105
+ <button cdkDragHandle mat-flat-button><mat-icon>drag_handle</mat-icon></button>
106
+ <dbx-button-spacer></dbx-button-spacer>
107
+ <h4><span class="repeat-array-number">{{ i + 1 }}</span><span>{{ labelForItem(field) }}</span></h4>
108
+ <span class="dbx-spacer"></span>
109
+ <button mat-flat-button color="warn" (click)="remove(i)">{{ removeText }}</button>
110
+ </dbx-bar>
111
+ <formly-field class="dbx-form-repeat-array-field-content" [field]="field"></formly-field>
73
112
  </div>
74
- <formly-field [field]="field"></formly-field>
75
- </div>
76
- <mat-divider [inset]="true" *ngIf="!last"></mat-divider>
77
- </ng-container>
78
- </div>
79
- <!-- Add Button -->
80
- <div class="form-repeat-section-footer">
81
- <button *ngIf="canAdd" mat-button (click)="add()">{{ addText }}</button>
82
- </div>
113
+ </div>
114
+ <!-- Add Button -->
115
+ <div class="dbx-form-repeat-array-footer">
116
+ <button *ngIf="canAdd" mat-raised-button (click)="add()">{{ addText }}</button>
117
+ </div>
118
+ </dbx-subsection>
83
119
  </div>
84
120
  `
85
121
  }]
86
122
  }] });
87
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYXJyYXkuZmllbGQuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vcGFja2FnZXMvZGJ4LWZvcm0vc3JjL2xpYi9mb3JtbHkvZmllbGQvdmFsdWUvYXJyYXkvYXJyYXkuZmllbGQuY29tcG9uZW50LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxTQUFTLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFFMUMsT0FBTyxFQUFFLGNBQWMsRUFBeUIsTUFBTSxrQkFBa0IsQ0FBQzs7Ozs7O0FBb0N6RSxNQUFNLE9BQU8sMEJBQTJCLFNBQVEsY0FBYztJQUU1RCxJQUFJLGFBQWE7UUFDZixPQUFRLElBQUksQ0FBQyxFQUFvQyxDQUFDLGFBQWEsSUFBSSxFQUFFLENBQUM7SUFDeEUsQ0FBQztJQUVELElBQUksU0FBUztRQUNYLE9BQU8sSUFBSSxDQUFDLGFBQWEsQ0FBQyxTQUFTLElBQUksR0FBRyxDQUFDO0lBQzdDLENBQUM7SUFFRCxJQUFJLE9BQU87UUFDVCxPQUFPLElBQUksQ0FBQyxhQUFhLENBQUMsT0FBTyxJQUFJLEtBQUssQ0FBQztJQUM3QyxDQUFDO0lBRUQsSUFBSSxVQUFVO1FBQ1osT0FBTyxJQUFJLENBQUMsYUFBYSxDQUFDLFVBQVUsSUFBSSxRQUFRLENBQUM7SUFDbkQsQ0FBQztJQUVELElBQUksR0FBRztRQUNMLE9BQU8sSUFBSSxDQUFDLEtBQUssQ0FBQyxlQUFlLEVBQUUsU0FBUyxDQUFDO0lBQy9DLENBQUM7SUFFRCxJQUFJLEtBQUs7UUFDUCxPQUFPLElBQUksQ0FBQyxLQUFLLENBQUMsVUFBVSxFQUFFLE1BQU0sSUFBSSxDQUFDLENBQUM7SUFDNUMsQ0FBQztJQUVELElBQUksTUFBTTtRQUNSLE1BQU0sR0FBRyxHQUFHLElBQUksQ0FBQyxHQUFHLENBQUM7UUFFckIsSUFBSSxHQUFHLElBQUksSUFBSSxFQUFFO1lBQ2YsT0FBTyxJQUFJLENBQUM7U0FDYjthQUFNO1lBQ0wsT0FBTyxDQUFDLElBQUksQ0FBQyxLQUFLLEdBQUcsR0FBRyxDQUFDLENBQUM7U0FDM0I7SUFDSCxDQUFDOzt1SEFsQ1UsMEJBQTBCOzJHQUExQiwwQkFBMEIsMkVBdkIzQjs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0dBcUJUOzJGQUVVLDBCQUEwQjtrQkF4QnRDLFNBQVM7bUJBQUM7b0JBQ1QsUUFBUSxFQUFFOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7R0FxQlQ7aUJBQ0YiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDb21wb25lbnQgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IE1heWJlIH0gZnJvbSAnQGRlcmVla2IvdXRpbCc7XG5pbXBvcnQgeyBGaWVsZEFycmF5VHlwZSwgRm9ybWx5VGVtcGxhdGVPcHRpb25zIH0gZnJvbSAnQG5neC1mb3JtbHkvY29yZSc7XG5cbmV4cG9ydCBpbnRlcmZhY2UgRm9ybVJlcGVhdFNlY3Rpb25Db25maWcge1xuICBpdGVtTGFiZWw/OiBzdHJpbmc7XG4gIGFkZFRleHQ/OiBzdHJpbmc7XG4gIHJlbW92ZVRleHQ/OiBzdHJpbmc7XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgRm9ybVJlcGVhdFR5cGVUZW1wbGF0ZU9wdGlvbnMgZXh0ZW5kcyBGb3JtbHlUZW1wbGF0ZU9wdGlvbnMsIEZvcm1SZXBlYXRTZWN0aW9uQ29uZmlnIHtcbiAgcmVwZWF0U2VjdGlvbj86IEZvcm1SZXBlYXRTZWN0aW9uQ29uZmlnO1xufVxuXG5AQ29tcG9uZW50KHtcbiAgdGVtcGxhdGU6IGBcbiAgICA8ZGl2IGNsYXNzPVwiZm9ybS1yZXBlYXQtc2VjdGlvblwiPlxuICAgICAgPCEtLSBGaWVsZHMgLS0+XG4gICAgICA8ZGl2IGNsYXNzPVwiZm9ybS1yZXBlYXQtc2VjdGlvbi1maWVsZHNcIj5cbiAgICAgICAgPG5nLWNvbnRhaW5lciAqbmdGb3I9XCJsZXQgZmllbGQgb2YgZmllbGQuZmllbGRHcm91cDsgbGV0IGkgPSBpbmRleDsgbGV0IGxhc3QgPSBsYXN0O1wiPlxuICAgICAgICAgIDxkaXYgY2xhc3M9XCJmb3JtLXJlcGVhdC1zZWN0aW9uLWZpZWxkXCI+XG4gICAgICAgICAgICA8ZGl2PlxuICAgICAgICAgICAgICA8aDQ+PHNwYW4+e3sgaXRlbUxhYmVsIH19PC9zcGFuPjxzcGFuPnt7IGkgKyAxIH19PC9zcGFuPjwvaDQ+XG4gICAgICAgICAgICAgIDxkYngtYnV0dG9uLXNwYWNlcj48L2RieC1idXR0b24tc3BhY2VyPlxuICAgICAgICAgICAgICA8YnV0dG9uIG1hdC1idXR0b24gY29sb3I9XCJ3YXJuXCIgKGNsaWNrKT1cInJlbW92ZShpKVwiPnt7IHJlbW92ZVRleHQgfX08L2J1dHRvbj5cbiAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgPGZvcm1seS1maWVsZCBbZmllbGRdPVwiZmllbGRcIj48L2Zvcm1seS1maWVsZD5cbiAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICA8bWF0LWRpdmlkZXIgW2luc2V0XT1cInRydWVcIiAqbmdJZj1cIiFsYXN0XCI+PC9tYXQtZGl2aWRlcj5cbiAgICAgICAgPC9uZy1jb250YWluZXI+XG4gICAgICA8L2Rpdj5cbiAgICAgIDwhLS0gQWRkIEJ1dHRvbiAtLT5cbiAgICAgIDxkaXYgY2xhc3M9XCJmb3JtLXJlcGVhdC1zZWN0aW9uLWZvb3RlclwiPlxuICAgICAgICA8YnV0dG9uICpuZ0lmPVwiY2FuQWRkXCIgbWF0LWJ1dHRvbiAoY2xpY2spPVwiYWRkKClcIj57eyBhZGRUZXh0IH19PC9idXR0b24+XG4gICAgICA8L2Rpdj5cbiAgICA8L2Rpdj5cbiAgYFxufSlcbmV4cG9ydCBjbGFzcyBEYnhGb3JtUmVwZWF0VHlwZUNvbXBvbmVudCBleHRlbmRzIEZpZWxkQXJyYXlUeXBlIHtcblxuICBnZXQgcmVwZWF0U2VjdGlvbigpOiBGb3JtUmVwZWF0U2VjdGlvbkNvbmZpZyB7XG4gICAgcmV0dXJuICh0aGlzLnRvIGFzIEZvcm1SZXBlYXRUeXBlVGVtcGxhdGVPcHRpb25zKS5yZXBlYXRTZWN0aW9uID8/IHt9O1xuICB9XG5cbiAgZ2V0IGl0ZW1MYWJlbCgpOiBzdHJpbmcge1xuICAgIHJldHVybiB0aGlzLnJlcGVhdFNlY3Rpb24uaXRlbUxhYmVsID8/ICcjJztcbiAgfVxuXG4gIGdldCBhZGRUZXh0KCk6IHN0cmluZyB7XG4gICAgcmV0dXJuIHRoaXMucmVwZWF0U2VjdGlvbi5hZGRUZXh0ID8/ICdBZGQnO1xuICB9XG5cbiAgZ2V0IHJlbW92ZVRleHQoKTogc3RyaW5nIHtcbiAgICByZXR1cm4gdGhpcy5yZXBlYXRTZWN0aW9uLnJlbW92ZVRleHQgPz8gJ1JlbW92ZSc7XG4gIH1cblxuICBnZXQgbWF4KCk6IE1heWJlPG51bWJlcj4ge1xuICAgIHJldHVybiB0aGlzLmZpZWxkLnRlbXBsYXRlT3B0aW9ucz8ubWF4TGVuZ3RoO1xuICB9XG5cbiAgZ2V0IGNvdW50KCk6IG51bWJlciB7XG4gICAgcmV0dXJuIHRoaXMuZmllbGQuZmllbGRHcm91cD8ubGVuZ3RoID8/IDA7XG4gIH1cblxuICBnZXQgY2FuQWRkKCk6IGJvb2xlYW4ge1xuICAgIGNvbnN0IG1heCA9IHRoaXMubWF4O1xuXG4gICAgaWYgKG1heCA9PSBudWxsKSB7XG4gICAgICByZXR1cm4gdHJ1ZTtcbiAgICB9IGVsc2Uge1xuICAgICAgcmV0dXJuICh0aGlzLmNvdW50IDwgbWF4KTtcbiAgICB9XG4gIH1cblxufVxuIl19
123
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYXJyYXkuZmllbGQuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vcGFja2FnZXMvZGJ4LWZvcm0vc3JjL2xpYi9mb3JtbHkvZmllbGQvdmFsdWUvYXJyYXkvYXJyYXkuZmllbGQuY29tcG9uZW50LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUNBLE9BQU8sRUFBRSxTQUFTLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDMUMsT0FBTyxFQUFtQiwwQkFBMEIsRUFBUyxNQUFNLGVBQWUsQ0FBQztBQUNuRixPQUFPLEVBQXdCLGNBQWMsRUFBNEMsTUFBTSxrQkFBa0IsQ0FBQzs7Ozs7Ozs7QUFzQ2xILE1BQU0sT0FBTywrQkFBZ0MsU0FBUSxjQUE4QztJQUVqRyxJQUFJLGdCQUFnQjtRQUNsQixPQUFPLElBQUksQ0FBQyxLQUFLLENBQUMsZ0JBQWdCLENBQUM7SUFDckMsQ0FBQztJQUVELElBQUksS0FBSztRQUNQLE9BQU8sSUFBSSxDQUFDLEtBQUssQ0FBQyxlQUFlLENBQUMsS0FBSyxJQUFJLElBQUksQ0FBQyxLQUFLLENBQUMsR0FBYSxDQUFDO0lBQ3RFLENBQUM7SUFFRCxJQUFJLE9BQU87UUFDVCxPQUFPLElBQUksQ0FBQyxnQkFBZ0IsQ0FBQyxPQUFPLElBQUksS0FBSyxDQUFDO0lBQ2hELENBQUM7SUFFRCxJQUFJLFVBQVU7UUFDWixPQUFPLElBQUksQ0FBQyxnQkFBZ0IsQ0FBQyxVQUFVLElBQUksUUFBUSxDQUFDO0lBQ3RELENBQUM7SUFFRCxJQUFJLEdBQUc7UUFDTCxPQUFPLElBQUksQ0FBQyxLQUFLLENBQUMsZUFBZSxFQUFFLFNBQVMsQ0FBQztJQUMvQyxDQUFDO0lBRUQsSUFBSSxLQUFLO1FBQ1AsT0FBTyxJQUFJLENBQUMsS0FBSyxDQUFDLFVBQVUsRUFBRSxNQUFNLElBQUksQ0FBQyxDQUFDO0lBQzVDLENBQUM7SUFFRCxJQUFJLE1BQU07UUFDUixNQUFNLEdBQUcsR0FBRyxJQUFJLENBQUMsR0FBRyxDQUFDO1FBRXJCLElBQUksR0FBRyxJQUFJLElBQUksRUFBRTtZQUNmLE9BQU8sSUFBSSxDQUFDO1NBQ2I7YUFBTTtZQUNMLE9BQU8sQ0FBQyxJQUFJLENBQUMsS0FBSyxHQUFHLEdBQUcsQ0FBQyxDQUFDO1NBQzNCO0lBQ0gsQ0FBQztJQUVEOzs7O09BSUc7SUFDSCxNQUFNLENBQUMsS0FBYTtRQUNsQixJQUFJLEtBQUssS0FBSyxDQUFDLEVBQUU7WUFDZixPQUFPO1NBQ1I7UUFFRCxJQUFJLENBQUMsV0FBVyxDQUFDLEtBQUssRUFBRSxLQUFLLEdBQUcsQ0FBQyxDQUFDLENBQUM7SUFDckMsQ0FBQztJQUVELFFBQVEsQ0FBQyxLQUFhO1FBQ3BCLElBQUksQ0FBQyxXQUFXLENBQUMsS0FBSyxFQUFFLEtBQUssR0FBRyxDQUFDLENBQUMsQ0FBQztJQUNyQyxDQUFDO0lBRUQsV0FBVyxDQUFDLFlBQW9CLEVBQUUsV0FBbUI7UUFDbkQsTUFBTSxLQUFLLEdBQVUsSUFBSSxDQUFDLEtBQUssQ0FBQztRQUNoQyxNQUFNLFdBQVcsR0FBRyxLQUFLLENBQUMsWUFBWSxDQUFDLENBQUM7UUFFeEMsSUFBSSxDQUFDLFdBQVcsRUFBRTtZQUNoQixPQUFPO1NBQ1I7UUFFRCxJQUFJLENBQUMsTUFBTSxDQUFDLFlBQVksQ0FBQyxDQUFDO1FBQzFCLElBQUksQ0FBQyxHQUFHLENBQUMsV0FBVyxFQUFFLFdBQVcsQ0FBQyxDQUFDO0lBQ3JDLENBQUM7SUFFRCxJQUFJLENBQUMsS0FBdUI7UUFDMUIsSUFBSSxDQUFDLFdBQVcsQ0FBQyxLQUFLLENBQUMsYUFBYSxFQUFFLEtBQUssQ0FBQyxZQUFZLENBQUMsQ0FBQztJQUM1RCxDQUFDO0lBRUQsWUFBWSxDQUFDLEtBQXdCO1FBQ25DLE9BQU8sMEJBQTBCLENBQUMsSUFBSSxDQUFDLGdCQUFnQixDQUFDLGFBQWEsSUFBSSxFQUFFLEVBQUUsS0FBSyxDQUFDLENBQUM7SUFDdEYsQ0FBQzs7NEhBdkVVLCtCQUErQjtnSEFBL0IsK0JBQStCLDJFQXpCaEM7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0dBdUJUOzJGQUVVLCtCQUErQjtrQkExQjNDLFNBQVM7bUJBQUM7b0JBQ1QsUUFBUSxFQUFFOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztHQXVCVDtpQkFDRiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENka0RyYWdEcm9wIH0gZnJvbSAnQGFuZ3VsYXIvY2RrL2RyYWctZHJvcCc7XG5pbXBvcnQgeyBDb21wb25lbnQgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IEdldHRlcldpdGhJbnB1dCwgZ2V0VmFsdWVGcm9tT2JqZWN0T3JHZXR0ZXIsIE1heWJlIH0gZnJvbSAnQGRlcmVla2IvdXRpbCc7XG5pbXBvcnQgeyBGaWVsZEFycmF5VHlwZUNvbmZpZywgRmllbGRBcnJheVR5cGUsIEZvcm1seVRlbXBsYXRlT3B0aW9ucywgRm9ybWx5RmllbGRDb25maWcgfSBmcm9tICdAbmd4LWZvcm1seS9jb3JlJztcblxuZXhwb3J0IGludGVyZmFjZSBEYnhGb3JtUmVwZWF0QXJyYXlDb25maWcge1xuICBsYWJlbEZvckZpZWxkPzogc3RyaW5nIHwgR2V0dGVyV2l0aElucHV0PHN0cmluZywgRm9ybWx5RmllbGRDb25maWc+O1xuICBhZGRUZXh0Pzogc3RyaW5nO1xuICByZW1vdmVUZXh0Pzogc3RyaW5nO1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIERieEZvcm1SZXBlYXRBcnJheUZvcm1seUNvbmZpZyBleHRlbmRzIEZpZWxkQXJyYXlUeXBlQ29uZmlnIHtcbiAgcmVwZWF0QXJyYXlGaWVsZDogRGJ4Rm9ybVJlcGVhdEFycmF5Q29uZmlnO1xufVxuXG5AQ29tcG9uZW50KHtcbiAgdGVtcGxhdGU6IGBcbiAgICA8ZGl2IGNsYXNzPVwiZGJ4LWZvcm0tcmVwZWF0LWFycmF5XCI+XG4gICAgICA8ZGJ4LXN1YnNlY3Rpb24gW2hlYWRlcl09XCJsYWJlbFwiPlxuICAgICAgICA8IS0tIEZpZWxkcyAtLT5cbiAgICAgICAgPGRpdiBjbGFzcz1cImRieC1mb3JtLXJlcGVhdC1hcnJheS1maWVsZHNcIiBjZGtEcm9wTGlzdCAoY2RrRHJvcExpc3REcm9wcGVkKT1cImRyb3AoJGV2ZW50KVwiPlxuICAgICAgICAgICAgPGRpdiBjbGFzcz1cImRieC1mb3JtLXJlcGVhdC1hcnJheS1maWVsZFwiIGNka0RyYWcgY2RrRHJhZ0xvY2tBeGlzPVwieVwiICpuZ0Zvcj1cImxldCBmaWVsZCBvZiBmaWVsZC5maWVsZEdyb3VwOyBsZXQgaSA9IGluZGV4OyBsZXQgbGFzdCA9IGxhc3Q7XCI+XG4gICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJleGFtcGxlLWN1c3RvbS1wbGFjZWhvbGRlclwiICpjZGtEcmFnUGxhY2Vob2xkZXI+PC9kaXY+XG4gICAgICAgICAgICAgIDxkYngtYmFyPlxuICAgICAgICAgICAgICAgIDxidXR0b24gY2RrRHJhZ0hhbmRsZSBtYXQtZmxhdC1idXR0b24+PG1hdC1pY29uPmRyYWdfaGFuZGxlPC9tYXQtaWNvbj48L2J1dHRvbj5cbiAgICAgICAgICAgICAgICA8ZGJ4LWJ1dHRvbi1zcGFjZXI+PC9kYngtYnV0dG9uLXNwYWNlcj5cbiAgICAgICAgICAgICAgICA8aDQ+PHNwYW4gY2xhc3M9XCJyZXBlYXQtYXJyYXktbnVtYmVyXCI+e3sgaSArIDEgfX08L3NwYW4+PHNwYW4+e3sgbGFiZWxGb3JJdGVtKGZpZWxkKSB9fTwvc3Bhbj48L2g0PlxuICAgICAgICAgICAgICAgIDxzcGFuIGNsYXNzPVwiZGJ4LXNwYWNlclwiPjwvc3Bhbj5cbiAgICAgICAgICAgICAgICA8YnV0dG9uIG1hdC1mbGF0LWJ1dHRvbiBjb2xvcj1cIndhcm5cIiAoY2xpY2spPVwicmVtb3ZlKGkpXCI+e3sgcmVtb3ZlVGV4dCB9fTwvYnV0dG9uPlxuICAgICAgICAgICAgICA8L2RieC1iYXI+XG4gICAgICAgICAgICAgIDxmb3JtbHktZmllbGQgY2xhc3M9XCJkYngtZm9ybS1yZXBlYXQtYXJyYXktZmllbGQtY29udGVudFwiIFtmaWVsZF09XCJmaWVsZFwiPjwvZm9ybWx5LWZpZWxkPlxuICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgIDwvZGl2PlxuICAgICAgICA8IS0tIEFkZCBCdXR0b24gLS0+XG4gICAgICAgIDxkaXYgY2xhc3M9XCJkYngtZm9ybS1yZXBlYXQtYXJyYXktZm9vdGVyXCI+XG4gICAgICAgICAgPGJ1dHRvbiAqbmdJZj1cImNhbkFkZFwiIG1hdC1yYWlzZWQtYnV0dG9uIChjbGljayk9XCJhZGQoKVwiPnt7IGFkZFRleHQgfX08L2J1dHRvbj5cbiAgICAgICAgPC9kaXY+XG4gICAgICA8L2RieC1zdWJzZWN0aW9uPlxuICAgIDwvZGl2PlxuICBgXG59KVxuZXhwb3J0IGNsYXNzIERieEZvcm1SZXBlYXRBcnJheVR5cGVDb21wb25lbnQgZXh0ZW5kcyBGaWVsZEFycmF5VHlwZTxEYnhGb3JtUmVwZWF0QXJyYXlGb3JtbHlDb25maWc+e1xuXG4gIGdldCByZXBlYXRBcnJheUZpZWxkKCk6IERieEZvcm1SZXBlYXRBcnJheUNvbmZpZyB7XG4gICAgcmV0dXJuIHRoaXMuZmllbGQucmVwZWF0QXJyYXlGaWVsZDtcbiAgfVxuXG4gIGdldCBsYWJlbCgpOiBzdHJpbmcge1xuICAgIHJldHVybiB0aGlzLmZpZWxkLnRlbXBsYXRlT3B0aW9ucy5sYWJlbCA/PyB0aGlzLmZpZWxkLmtleSBhcyBzdHJpbmc7XG4gIH1cblxuICBnZXQgYWRkVGV4dCgpOiBzdHJpbmcge1xuICAgIHJldHVybiB0aGlzLnJlcGVhdEFycmF5RmllbGQuYWRkVGV4dCA/PyAnQWRkJztcbiAgfVxuXG4gIGdldCByZW1vdmVUZXh0KCk6IHN0cmluZyB7XG4gICAgcmV0dXJuIHRoaXMucmVwZWF0QXJyYXlGaWVsZC5yZW1vdmVUZXh0ID8/ICdSZW1vdmUnO1xuICB9XG5cbiAgZ2V0IG1heCgpOiBNYXliZTxudW1iZXI+IHtcbiAgICByZXR1cm4gdGhpcy5maWVsZC50ZW1wbGF0ZU9wdGlvbnM/Lm1heExlbmd0aDtcbiAgfVxuXG4gIGdldCBjb3VudCgpOiBudW1iZXIge1xuICAgIHJldHVybiB0aGlzLmZpZWxkLmZpZWxkR3JvdXA/Lmxlbmd0aCA/PyAwO1xuICB9XG5cbiAgZ2V0IGNhbkFkZCgpOiBib29sZWFuIHtcbiAgICBjb25zdCBtYXggPSB0aGlzLm1heDtcblxuICAgIGlmIChtYXggPT0gbnVsbCkge1xuICAgICAgcmV0dXJuIHRydWU7XG4gICAgfSBlbHNlIHtcbiAgICAgIHJldHVybiAodGhpcy5jb3VudCA8IG1heCk7XG4gICAgfVxuICB9XG5cbiAgLyoqXG4gICAqIE1vdmVzIHRoZSB0YXJnZXQgaW5kZXggdXAgb25lIHZhbHVlLlxuICAgKiBcbiAgICogQHBhcmFtIGluZGV4IFxuICAgKi9cbiAgbW92ZVVwKGluZGV4OiBudW1iZXIpIHtcbiAgICBpZiAoaW5kZXggPT09IDApIHtcbiAgICAgIHJldHVybjtcbiAgICB9XG5cbiAgICB0aGlzLnN3YXBJbmRleGVzKGluZGV4LCBpbmRleCAtIDEpO1xuICB9XG5cbiAgbW92ZURvd24oaW5kZXg6IG51bWJlcikge1xuICAgIHRoaXMuc3dhcEluZGV4ZXMoaW5kZXgsIGluZGV4ICsgMSk7XG4gIH1cblxuICBzd2FwSW5kZXhlcyhjdXJyZW50SW5kZXg6IG51bWJlciwgdGFyZ2V0SW5kZXg6IG51bWJlcikge1xuICAgIGNvbnN0IGFycmF5OiBhbnlbXSA9IHRoaXMubW9kZWw7XG4gICAgY29uc3QgdGFyZ2V0VmFsdWUgPSBhcnJheVtjdXJyZW50SW5kZXhdO1xuXG4gICAgaWYgKCF0YXJnZXRWYWx1ZSkge1xuICAgICAgcmV0dXJuO1xuICAgIH1cblxuICAgIHRoaXMucmVtb3ZlKGN1cnJlbnRJbmRleCk7XG4gICAgdGhpcy5hZGQodGFyZ2V0SW5kZXgsIHRhcmdldFZhbHVlKTtcbiAgfVxuXG4gIGRyb3AoZXZlbnQ6IENka0RyYWdEcm9wPGFueT4pIHtcbiAgICB0aGlzLnN3YXBJbmRleGVzKGV2ZW50LnByZXZpb3VzSW5kZXgsIGV2ZW50LmN1cnJlbnRJbmRleCk7XG4gIH1cblxuICBsYWJlbEZvckl0ZW0oZmllbGQ6IEZvcm1seUZpZWxkQ29uZmlnKTogc3RyaW5nIHtcbiAgICByZXR1cm4gZ2V0VmFsdWVGcm9tT2JqZWN0T3JHZXR0ZXIodGhpcy5yZXBlYXRBcnJheUZpZWxkLmxhYmVsRm9yRmllbGQgPz8gJycsIGZpZWxkKTtcbiAgfVxuXG59XG4iXX0=
@@ -0,0 +1,20 @@
1
+ import { formlyField, templateOptionsForFieldConfig } from "../../field";
2
+ export function repeatArrayField(config) {
3
+ const { key, repeatFieldGroup, maxLength, addText, removeText, labelForField } = config;
4
+ return formlyField({
5
+ key,
6
+ type: 'repeatarray',
7
+ repeatArrayField: {
8
+ labelForField,
9
+ addText,
10
+ removeText,
11
+ },
12
+ ...templateOptionsForFieldConfig(config, {
13
+ maxLength
14
+ }),
15
+ fieldArray: {
16
+ fieldGroup: repeatFieldGroup
17
+ }
18
+ });
19
+ }
20
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYXJyYXkuZmllbGQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9wYWNrYWdlcy9kYngtZm9ybS9zcmMvbGliL2Zvcm1seS9maWVsZC92YWx1ZS9hcnJheS9hcnJheS5maWVsZC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFDQSxPQUFPLEVBQWUsV0FBVyxFQUFFLDZCQUE2QixFQUFFLE1BQU0sYUFBYSxDQUFDO0FBU3RGLE1BQU0sVUFBVSxnQkFBZ0IsQ0FBQyxNQUE4QjtJQUM3RCxNQUFNLEVBQUUsR0FBRyxFQUFFLGdCQUFnQixFQUFFLFNBQVMsRUFBRSxPQUFPLEVBQUUsVUFBVSxFQUFFLGFBQWEsRUFBRSxHQUFHLE1BQU0sQ0FBQztJQUV4RixPQUFPLFdBQVcsQ0FBQztRQUNqQixHQUFHO1FBQ0gsSUFBSSxFQUFFLGFBQWE7UUFDbkIsZ0JBQWdCLEVBQUU7WUFDaEIsYUFBYTtZQUNiLE9BQU87WUFDUCxVQUFVO1NBQ1g7UUFDRCxHQUFHLDZCQUE2QixDQUFDLE1BQU0sRUFBRTtZQUN2QyxTQUFTO1NBQ1YsQ0FBQztRQUNGLFVBQVUsRUFBRTtZQUNWLFVBQVUsRUFBRSxnQkFBZ0I7U0FDN0I7S0FDRixDQUFDLENBQUM7QUFDTCxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgRm9ybWx5RmllbGRDb25maWcgfSBmcm9tICdAbmd4LWZvcm1seS9jb3JlJztcbmltcG9ydCB7IEZpZWxkQ29uZmlnLCBmb3JtbHlGaWVsZCwgdGVtcGxhdGVPcHRpb25zRm9yRmllbGRDb25maWcgfSBmcm9tIFwiLi4vLi4vZmllbGRcIjtcbmltcG9ydCB7IERieEZvcm1SZXBlYXRBcnJheUNvbmZpZyB9IGZyb20gJy4vYXJyYXkuZmllbGQuY29tcG9uZW50JztcblxuZXhwb3J0IGludGVyZmFjZSBSZXBlYXRBcnJheUZpZWxkQ29uZmlnIGV4dGVuZHMgRGJ4Rm9ybVJlcGVhdEFycmF5Q29uZmlnLCBGaWVsZENvbmZpZyB7XG4gIGxhYmVsPzogc3RyaW5nO1xuICByZXBlYXRGaWVsZEdyb3VwOiBGb3JtbHlGaWVsZENvbmZpZ1tdO1xuICBtYXhMZW5ndGg/OiBudW1iZXI7XG59XG5cbmV4cG9ydCBmdW5jdGlvbiByZXBlYXRBcnJheUZpZWxkKGNvbmZpZzogUmVwZWF0QXJyYXlGaWVsZENvbmZpZyk6IEZvcm1seUZpZWxkQ29uZmlnIHtcbiAgY29uc3QgeyBrZXksIHJlcGVhdEZpZWxkR3JvdXAsIG1heExlbmd0aCwgYWRkVGV4dCwgcmVtb3ZlVGV4dCwgbGFiZWxGb3JGaWVsZCB9ID0gY29uZmlnO1xuXG4gIHJldHVybiBmb3JtbHlGaWVsZCh7XG4gICAga2V5LFxuICAgIHR5cGU6ICdyZXBlYXRhcnJheScsXG4gICAgcmVwZWF0QXJyYXlGaWVsZDoge1xuICAgICAgbGFiZWxGb3JGaWVsZCxcbiAgICAgIGFkZFRleHQsXG4gICAgICByZW1vdmVUZXh0LFxuICAgIH0sXG4gICAgLi4udGVtcGxhdGVPcHRpb25zRm9yRmllbGRDb25maWcoY29uZmlnLCB7XG4gICAgICBtYXhMZW5ndGhcbiAgICB9KSxcbiAgICBmaWVsZEFycmF5OiB7XG4gICAgICBmaWVsZEdyb3VwOiByZXBlYXRGaWVsZEdyb3VwXG4gICAgfVxuICB9KTtcbn1cbiJdfQ==