@dereekb/dbx-form 11.1.8 → 12.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 (248) hide show
  1. package/calendar/lib/calendar.module.d.ts +1 -14
  2. package/calendar/lib/calendar.schedule.selection.cell.component.d.ts +8 -5
  3. package/calendar/lib/calendar.schedule.selection.component.d.ts +13 -10
  4. package/calendar/lib/calendar.schedule.selection.d.ts +6 -6
  5. package/calendar/lib/calendar.schedule.selection.days.component.d.ts +1 -1
  6. package/calendar/lib/calendar.schedule.selection.days.form.component.d.ts +1 -1
  7. package/calendar/lib/calendar.schedule.selection.dialog.button.component.d.ts +4 -4
  8. package/calendar/lib/calendar.schedule.selection.dialog.component.d.ts +5 -5
  9. package/calendar/lib/calendar.schedule.selection.popover.button.component.d.ts +4 -2
  10. package/calendar/lib/calendar.schedule.selection.popover.component.d.ts +1 -1
  11. package/calendar/lib/calendar.schedule.selection.popover.content.component.d.ts +1 -1
  12. package/calendar/lib/calendar.schedule.selection.range.component.d.ts +19 -17
  13. package/calendar/lib/calendar.schedule.selection.store.d.ts +2 -2
  14. package/calendar/lib/calendar.schedule.selection.store.provide.d.ts +1 -1
  15. package/calendar/lib/calendar.schedule.selection.toggle.button.component.d.ts +8 -12
  16. package/calendar/lib/field/schedule/calendar.schedule.field.component.d.ts +22 -22
  17. package/calendar/lib/field/schedule/calendar.schedule.module.d.ts +2 -10
  18. package/esm2022/calendar/lib/calendar.module.mjs +19 -101
  19. package/esm2022/calendar/lib/calendar.schedule.selection.cell.component.mjs +27 -28
  20. package/esm2022/calendar/lib/calendar.schedule.selection.component.mjs +38 -55
  21. package/esm2022/calendar/lib/calendar.schedule.selection.days.component.mjs +17 -13
  22. package/esm2022/calendar/lib/calendar.schedule.selection.days.form.component.mjs +11 -12
  23. package/esm2022/calendar/lib/calendar.schedule.selection.dialog.button.component.mjs +18 -21
  24. package/esm2022/calendar/lib/calendar.schedule.selection.dialog.component.mjs +12 -9
  25. package/esm2022/calendar/lib/calendar.schedule.selection.mjs +3 -2
  26. package/esm2022/calendar/lib/calendar.schedule.selection.popover.button.component.mjs +22 -18
  27. package/esm2022/calendar/lib/calendar.schedule.selection.popover.component.mjs +12 -9
  28. package/esm2022/calendar/lib/calendar.schedule.selection.popover.content.component.mjs +13 -10
  29. package/esm2022/calendar/lib/calendar.schedule.selection.range.component.mjs +52 -70
  30. package/esm2022/calendar/lib/calendar.schedule.selection.store.mjs +5 -5
  31. package/esm2022/calendar/lib/calendar.schedule.selection.store.provide.mjs +9 -8
  32. package/esm2022/calendar/lib/calendar.schedule.selection.toggle.button.component.mjs +48 -50
  33. package/esm2022/calendar/lib/field/schedule/calendar.schedule.field.component.mjs +17 -14
  34. package/esm2022/calendar/lib/field/schedule/calendar.schedule.module.mjs +8 -40
  35. package/esm2022/lib/form/action/form.action.directive.mjs +58 -55
  36. package/esm2022/lib/form/action/form.action.module.mjs +9 -9
  37. package/esm2022/lib/form/action/transition/form.action.transition.module.mjs +9 -8
  38. package/esm2022/lib/form/action/transition/form.action.transition.safety.directive.mjs +14 -11
  39. package/esm2022/lib/form/form.mjs +1 -1
  40. package/esm2022/lib/form/form.module.mjs +4 -4
  41. package/esm2022/lib/form/io/form.changes.directive.mjs +11 -16
  42. package/esm2022/lib/form/io/form.input.directive.mjs +24 -38
  43. package/esm2022/lib/form/io/form.io.module.mjs +15 -9
  44. package/esm2022/lib/form/io/form.loading.directive.mjs +22 -42
  45. package/esm2022/lib/form.module.mjs +4 -4
  46. package/esm2022/lib/form.providers.mjs +32 -0
  47. package/esm2022/lib/formly/field/checklist/checklist.field.mjs +5 -5
  48. package/esm2022/lib/formly/field/checklist/checklist.item.field.component.mjs +51 -47
  49. package/esm2022/lib/formly/field/checklist/checklist.item.field.content.default.component.mjs +41 -29
  50. package/esm2022/lib/formly/field/checklist/checklist.item.field.mjs +3 -3
  51. package/esm2022/lib/formly/field/checklist/checklist.item.field.module.mjs +8 -45
  52. package/esm2022/lib/formly/field/checklist/checklist.item.mjs +1 -1
  53. package/esm2022/lib/formly/field/component/component.field.component.mjs +11 -8
  54. package/esm2022/lib/formly/field/component/component.field.module.mjs +8 -14
  55. package/esm2022/lib/formly/field/field.mjs +1 -1
  56. package/esm2022/lib/formly/field/form.field.module.mjs +4 -4
  57. package/esm2022/lib/formly/field/selection/list/list.field.component.mjs +17 -14
  58. package/esm2022/lib/formly/field/selection/list/list.field.module.mjs +8 -58
  59. package/esm2022/lib/formly/field/selection/pickable/pickable.chip.field.component.mjs +17 -13
  60. package/esm2022/lib/formly/field/selection/pickable/pickable.field.directive.mjs +16 -16
  61. package/esm2022/lib/formly/field/selection/pickable/pickable.field.module.mjs +8 -68
  62. package/esm2022/lib/formly/field/selection/pickable/pickable.list.field.component.mjs +71 -54
  63. package/esm2022/lib/formly/field/selection/pickable/pickable.util.mjs +2 -2
  64. package/esm2022/lib/formly/field/selection/searchable/searchable.chip.field.component.mjs +21 -16
  65. package/esm2022/lib/formly/field/selection/searchable/searchable.field.autocomplete.item.component.mjs +51 -49
  66. package/esm2022/lib/formly/field/selection/searchable/searchable.field.directive.mjs +35 -27
  67. package/esm2022/lib/formly/field/selection/searchable/searchable.field.mjs +1 -1
  68. package/esm2022/lib/formly/field/selection/searchable/searchable.field.module.mjs +8 -65
  69. package/esm2022/lib/formly/field/selection/searchable/searchable.mjs +1 -1
  70. package/esm2022/lib/formly/field/selection/searchable/searchable.text.field.component.mjs +48 -30
  71. package/esm2022/lib/formly/field/selection/searchable/text.chip.field.mjs +2 -2
  72. package/esm2022/lib/formly/field/selection/selection.field.mjs +1 -1
  73. package/esm2022/lib/formly/field/selection/selection.mjs +1 -1
  74. package/esm2022/lib/formly/field/selection/selection.module.mjs +4 -4
  75. package/esm2022/lib/formly/field/selection/sourceselect/sourceselect.field.component.mjs +20 -21
  76. package/esm2022/lib/formly/field/selection/sourceselect/sourceselect.field.module.mjs +6 -73
  77. package/esm2022/lib/formly/field/selection/sourceselect/sourceselect.mjs +1 -1
  78. package/esm2022/lib/formly/field/texteditor/texteditor.field.component.mjs +37 -22
  79. package/esm2022/lib/formly/field/texteditor/texteditor.field.mjs +2 -2
  80. package/esm2022/lib/formly/field/texteditor/texteditor.field.module.mjs +8 -33
  81. package/esm2022/lib/formly/field/value/array/array.field.component.mjs +72 -50
  82. package/esm2022/lib/formly/field/value/array/array.field.module.mjs +8 -44
  83. package/esm2022/lib/formly/field/value/boolean/boolean.field.mjs +2 -2
  84. package/esm2022/lib/formly/field/value/boolean/boolean.field.module.mjs +4 -4
  85. package/esm2022/lib/formly/field/value/date/date.field.module.mjs +5 -9
  86. package/esm2022/lib/formly/field/value/date/date.value.mjs +1 -1
  87. package/esm2022/lib/formly/field/value/date/datetime.field.component.mjs +8 -8
  88. package/esm2022/lib/formly/field/value/date/datetime.field.service.mjs +4 -4
  89. package/esm2022/lib/formly/field/value/date/datetime.mjs +1 -1
  90. package/esm2022/lib/formly/field/value/date/fixeddaterange.field.component.mjs +8 -8
  91. package/esm2022/lib/formly/field/value/number/number.field.mjs +1 -1
  92. package/esm2022/lib/formly/field/value/number/number.field.module.mjs +4 -4
  93. package/esm2022/lib/formly/field/value/phone/phone.field.component.mjs +4 -4
  94. package/esm2022/lib/formly/field/value/phone/phone.field.module.mjs +4 -4
  95. package/esm2022/lib/formly/field/value/text/text.address.field.mjs +1 -1
  96. package/esm2022/lib/formly/field/value/text/text.field.mjs +1 -1
  97. package/esm2022/lib/formly/field/value/text/text.field.module.mjs +4 -4
  98. package/esm2022/lib/formly/field/value/value.module.mjs +4 -4
  99. package/esm2022/lib/formly/field/wrapper/autotouch.wrapper.component.mjs +9 -7
  100. package/esm2022/lib/formly/field/wrapper/expand.wrapper.component.mjs +19 -24
  101. package/esm2022/lib/formly/field/wrapper/expand.wrapper.delegate.mjs +7 -4
  102. package/esm2022/lib/formly/field/wrapper/flex.wrapper.component.mjs +11 -8
  103. package/esm2022/lib/formly/field/wrapper/form.wrapper.module.mjs +8 -39
  104. package/esm2022/lib/formly/field/wrapper/index.mjs +2 -1
  105. package/esm2022/lib/formly/field/wrapper/info.wrapper.component.mjs +19 -16
  106. package/esm2022/lib/formly/field/wrapper/section.wrapper.component.mjs +11 -7
  107. package/esm2022/lib/formly/field/wrapper/style.wrapper.component.mjs +16 -11
  108. package/esm2022/lib/formly/field/wrapper/subsection.wrapper.component.mjs +11 -8
  109. package/esm2022/lib/formly/field/wrapper/toggle.wrapper.component.mjs +21 -17
  110. package/esm2022/lib/formly/field/wrapper/working.wrapper.component.mjs +11 -8
  111. package/esm2022/lib/formly/field/wrapper/wrapper.mjs +1 -1
  112. package/esm2022/lib/formly/form/form.form.module.mjs +4 -4
  113. package/esm2022/lib/formly/form/search.form.component.mjs +4 -4
  114. package/esm2022/lib/formly/formly.component.template.mjs +29 -0
  115. package/esm2022/lib/formly/formly.context.directive.mjs +6 -5
  116. package/esm2022/lib/formly/formly.context.mjs +12 -8
  117. package/esm2022/lib/formly/formly.directive.mjs +29 -44
  118. package/esm2022/lib/formly/formly.form.component.mjs +24 -18
  119. package/esm2022/lib/formly/formly.module.mjs +10 -14
  120. package/esm2022/lib/formly/index.mjs +2 -1
  121. package/esm2022/lib/formly/template/login.mjs +1 -1
  122. package/esm2022/lib/formly/template/timezone.mjs +1 -1
  123. package/esm2022/lib/index.mjs +2 -1
  124. package/esm2022/lib/layout/form.layout.module.mjs +4 -4
  125. package/esm2022/lib/layout/form.spacer.component.mjs +3 -3
  126. package/esm2022/lib/validator/available.mjs +1 -1
  127. package/esm2022/lib/validator/boolean.mjs +1 -1
  128. package/esm2022/lib/validator/field.mjs +2 -2
  129. package/esm2022/lib/validator/number.mjs +1 -1
  130. package/esm2022/lib/validator/phone.mjs +1 -1
  131. package/esm2022/mapbox/lib/field/latlng/latlng.field.component.mjs +65 -47
  132. package/esm2022/mapbox/lib/field/latlng/latlng.field.marker.component.mjs +13 -10
  133. package/esm2022/mapbox/lib/field/latlng/latlng.module.mjs +10 -43
  134. package/esm2022/mapbox/lib/field/zoom/zoom.field.component.mjs +32 -26
  135. package/esm2022/mapbox/lib/field/zoom/zoom.module.mjs +8 -36
  136. package/esm2022/mapbox/lib/mapbox.module.mjs +4 -4
  137. package/fesm2022/dereekb-dbx-form-calendar.mjs +340 -457
  138. package/fesm2022/dereekb-dbx-form-calendar.mjs.map +1 -1
  139. package/fesm2022/dereekb-dbx-form-mapbox.mjs +114 -141
  140. package/fesm2022/dereekb-dbx-form-mapbox.mjs.map +1 -1
  141. package/fesm2022/dereekb-dbx-form.mjs +935 -1106
  142. package/fesm2022/dereekb-dbx-form.mjs.map +1 -1
  143. package/lib/extension/calendar/_calendar.scss +3 -3
  144. package/lib/form/_form.scss +3 -3
  145. package/lib/form/action/form.action.directive.d.ts +35 -16
  146. package/lib/form/action/form.action.module.d.ts +4 -3
  147. package/lib/form/action/transition/form.action.transition.module.d.ts +4 -2
  148. package/lib/form/action/transition/form.action.transition.safety.directive.d.ts +4 -2
  149. package/lib/form/io/form.changes.directive.d.ts +3 -4
  150. package/lib/form/io/form.input.directive.d.ts +7 -10
  151. package/lib/form/io/form.io.module.d.ts +8 -2
  152. package/lib/form/io/form.loading.directive.d.ts +10 -11
  153. package/lib/form.providers.d.ts +8 -0
  154. package/lib/formly/_formly.scss +3 -3
  155. package/lib/formly/field/checklist/_checklist.scss +3 -3
  156. package/lib/formly/field/checklist/checklist.field.d.ts +7 -7
  157. package/lib/formly/field/checklist/checklist.item.d.ts +7 -9
  158. package/lib/formly/field/checklist/checklist.item.field.component.d.ts +19 -18
  159. package/lib/formly/field/checklist/checklist.item.field.content.default.component.d.ts +5 -5
  160. package/lib/formly/field/checklist/checklist.item.field.d.ts +1 -1
  161. package/lib/formly/field/checklist/checklist.item.field.module.d.ts +3 -11
  162. package/lib/formly/field/component/_component.scss +3 -3
  163. package/lib/formly/field/component/component.field.component.d.ts +1 -1
  164. package/lib/formly/field/component/component.field.module.d.ts +2 -4
  165. package/lib/formly/field/field.d.ts +8 -5
  166. package/lib/formly/field/selection/list/_list.scss +3 -3
  167. package/lib/formly/field/selection/list/list.field.component.d.ts +7 -5
  168. package/lib/formly/field/selection/list/list.field.module.d.ts +2 -12
  169. package/lib/formly/field/selection/pickable/_pickable.scss +3 -3
  170. package/lib/formly/field/selection/pickable/pickable.chip.field.component.d.ts +1 -1
  171. package/lib/formly/field/selection/pickable/pickable.field.directive.d.ts +25 -23
  172. package/lib/formly/field/selection/pickable/pickable.field.module.d.ts +2 -13
  173. package/lib/formly/field/selection/pickable/pickable.list.field.component.d.ts +15 -14
  174. package/lib/formly/field/selection/searchable/_searchable.scss +3 -3
  175. package/lib/formly/field/selection/searchable/searchable.chip.field.component.d.ts +4 -4
  176. package/lib/formly/field/selection/searchable/searchable.d.ts +3 -3
  177. package/lib/formly/field/selection/searchable/searchable.field.autocomplete.item.component.d.ts +8 -12
  178. package/lib/formly/field/selection/searchable/searchable.field.directive.d.ts +30 -25
  179. package/lib/formly/field/selection/searchable/searchable.field.module.d.ts +2 -13
  180. package/lib/formly/field/selection/searchable/searchable.text.field.component.d.ts +6 -8
  181. package/lib/formly/field/selection/selection.d.ts +5 -5
  182. package/lib/formly/field/selection/sourceselect/_sourceselect.scss +3 -3
  183. package/lib/formly/field/selection/sourceselect/sourceselect.d.ts +1 -1
  184. package/lib/formly/field/selection/sourceselect/sourceselect.field.component.d.ts +5 -3
  185. package/lib/formly/field/selection/sourceselect/sourceselect.field.module.d.ts +2 -17
  186. package/lib/formly/field/texteditor/_texteditor.scss +9 -9
  187. package/lib/formly/field/texteditor/texteditor.field.component.d.ts +5 -4
  188. package/lib/formly/field/texteditor/texteditor.field.module.d.ts +2 -8
  189. package/lib/formly/field/value/array/_array.scss +5 -5
  190. package/lib/formly/field/value/array/array.field.component.d.ts +16 -18
  191. package/lib/formly/field/value/array/array.field.d.ts +8 -5
  192. package/lib/formly/field/value/array/array.field.module.d.ts +2 -10
  193. package/lib/formly/field/value/boolean/_boolean.scss +3 -3
  194. package/lib/formly/field/value/date/_date.scss +5 -5
  195. package/lib/formly/field/value/date/date.field.module.d.ts +8 -9
  196. package/lib/formly/field/value/date/datetime.field.service.d.ts +1 -1
  197. package/lib/formly/field/value/date/fixeddaterange.field.component.d.ts +13 -13
  198. package/lib/formly/field/value/number/_number.scss +2 -2
  199. package/lib/formly/field/value/phone/_phone.scss +6 -6
  200. package/lib/formly/field/value/phone/phone.field.component.d.ts +6 -5
  201. package/lib/formly/field/value/text/_text.scss +3 -3
  202. package/lib/formly/field/wrapper/_wrapper.scss +3 -3
  203. package/lib/formly/field/wrapper/autotouch.wrapper.component.d.ts +1 -1
  204. package/lib/formly/field/wrapper/expand.wrapper.component.d.ts +1 -1
  205. package/lib/formly/field/wrapper/expand.wrapper.delegate.d.ts +2 -0
  206. package/lib/formly/field/wrapper/flex.wrapper.component.d.ts +4 -4
  207. package/lib/formly/field/wrapper/form.wrapper.module.d.ts +2 -8
  208. package/lib/formly/field/wrapper/index.d.ts +1 -0
  209. package/lib/formly/field/wrapper/info.wrapper.component.d.ts +2 -2
  210. package/lib/formly/field/wrapper/section.wrapper.component.d.ts +1 -1
  211. package/lib/formly/field/wrapper/style.wrapper.component.d.ts +5 -3
  212. package/lib/formly/field/wrapper/subsection.wrapper.component.d.ts +1 -1
  213. package/lib/formly/field/wrapper/toggle.wrapper.component.d.ts +2 -1
  214. package/lib/formly/field/wrapper/working.wrapper.component.d.ts +2 -2
  215. package/lib/formly/form/_form.scss +3 -3
  216. package/lib/formly/formly.component.template.d.ts +19 -0
  217. package/lib/formly/formly.context.d.ts +11 -7
  218. package/lib/formly/formly.context.directive.d.ts +2 -2
  219. package/lib/formly/formly.directive.d.ts +10 -10
  220. package/lib/formly/formly.form.component.d.ts +18 -13
  221. package/lib/formly/formly.module.d.ts +1 -1
  222. package/lib/formly/index.d.ts +1 -0
  223. package/lib/index.d.ts +1 -0
  224. package/lib/layout/_layout.scss +3 -3
  225. package/lib/style/_all-typography.scss +1 -1
  226. package/lib/style/_theming.scss +1 -1
  227. package/mapbox/lib/field/latlng/latlng.field.component.d.ts +25 -23
  228. package/mapbox/lib/field/latlng/latlng.field.marker.component.d.ts +2 -1
  229. package/mapbox/lib/field/latlng/latlng.module.d.ts +2 -11
  230. package/mapbox/lib/field/zoom/zoom.field.component.d.ts +13 -13
  231. package/mapbox/lib/field/zoom/zoom.module.d.ts +3 -10
  232. package/package.json +10 -11
  233. package/mapbox/esm2022/dereekb-dbx-form-mapbox.mjs +0 -5
  234. package/mapbox/esm2022/index.mjs +0 -3
  235. package/mapbox/esm2022/lib/field/index.mjs +0 -3
  236. package/mapbox/esm2022/lib/field/latlng/index.mjs +0 -5
  237. package/mapbox/esm2022/lib/field/latlng/latlng.field.component.mjs +0 -244
  238. package/mapbox/esm2022/lib/field/latlng/latlng.field.marker.component.mjs +0 -31
  239. package/mapbox/esm2022/lib/field/latlng/latlng.field.mjs +0 -35
  240. package/mapbox/esm2022/lib/field/latlng/latlng.module.mjs +0 -59
  241. package/mapbox/esm2022/lib/field/zoom/index.mjs +0 -4
  242. package/mapbox/esm2022/lib/field/zoom/zoom.field.component.mjs +0 -140
  243. package/mapbox/esm2022/lib/field/zoom/zoom.field.mjs +0 -23
  244. package/mapbox/esm2022/lib/field/zoom/zoom.module.mjs +0 -57
  245. package/mapbox/esm2022/lib/mapbox.module.mjs +0 -16
  246. package/mapbox/fesm2022/dereekb-dbx-form-mapbox.mjs +0 -566
  247. package/mapbox/fesm2022/dereekb-dbx-form-mapbox.mjs.map +0 -1
  248. package/mapbox/package.json +0 -21
@@ -11,7 +11,7 @@ export const FIELD_VALUES_ARE_EQUAL_VALIDATION_KEY = 'fieldValuesAreEqual';
11
11
  export function fieldValuesAreEqualValidator(config = {}) {
12
12
  const { keysFilter, valuesFilter: inputValuesFilter, isEqual = (a, b) => a === b, message = 'Field values are not equal.' } = config;
13
13
  const valuesFilter = inputValuesFilter ?? {
14
- valueFilter: KeyValueTypleValueFilter.NONE,
14
+ valueFilter: KeyValueTypleValueFilter.NONE, // keep all values. Null/undefined should be processed.
15
15
  keysFilter
16
16
  };
17
17
  return (control) => {
@@ -28,4 +28,4 @@ export function fieldValuesAreEqualValidator(config = {}) {
28
28
  }
29
29
  };
30
30
  }
31
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZmllbGQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wYWNrYWdlcy9kYngtZm9ybS9zcmMvbGliL3ZhbGlkYXRvci9maWVsZC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFDQSxPQUFPLEVBQXVCLGtCQUFrQixFQUE4Qix3QkFBd0IsRUFBYSxjQUFjLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFFekosTUFBTSxDQUFDLE1BQU0scUNBQXFDLEdBQUcscUJBQXFCLENBQUM7QUEwQjNFOzs7Ozs7O0dBT0c7QUFDSCxNQUFNLFVBQVUsNEJBQTRCLENBQTRCLFNBQWdELEVBQUU7SUFDeEgsTUFBTSxFQUFFLFVBQVUsRUFBRSxZQUFZLEVBQUUsaUJBQWlCLEVBQUUsT0FBTyxHQUFHLENBQUMsQ0FBQyxFQUFFLENBQUMsRUFBRSxFQUFFLENBQUMsQ0FBQyxLQUFLLENBQUMsRUFBRSxPQUFPLEdBQUcsNkJBQTZCLEVBQUUsR0FBRyxNQUFNLENBQUM7SUFFckksTUFBTSxZQUFZLEdBQW9DLGlCQUFpQixJQUFJO1FBQ3pFLFdBQVcsRUFBRSx3QkFBd0IsQ0FBQyxJQUFJO1FBQzFDLFVBQVU7S0FDWCxDQUFDO0lBRUYsT0FBTyxDQUFDLE9BQXdCLEVBQUUsRUFBRTtRQUNsQyxNQUFNLE1BQU0sR0FBaUIsT0FBTyxDQUFDLEtBQUssQ0FBQztRQUMzQyxNQUFNLE1BQU0sR0FBUSxjQUFjLENBQUMsTUFBVyxFQUFFLFlBQVksQ0FBQyxDQUFDO1FBQzlELE1BQU0sT0FBTyxHQUFHLGtCQUFrQixDQUFDLE1BQU0sRUFBRSxPQUFPLENBQUMsQ0FBQztRQUVwRCxJQUFJLE9BQU8sRUFBRTtZQUNYLE9BQU8sSUFBSSxDQUFDO1NBQ2I7YUFBTTtZQUNMLE9BQU87Z0JBQ0wsQ0FBQyxxQ0FBcUMsQ0FBQyxFQUFFLEVBQUUsT0FBTyxFQUFFO2FBQ3JELENBQUM7U0FDSDtJQUNILENBQUMsQ0FBQztBQUNKLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBBYnN0cmFjdENvbnRyb2wsIFZhbGlkYXRvckZuIH0gZnJvbSAnQGFuZ3VsYXIvZm9ybXMnO1xuaW1wb3J0IHsgS2V5VmFsdWVUdXBsZUZpbHRlciwgYWxsT2JqZWN0c0FyZUVxdWFsLCBFcXVhbGl0eUNvbXBhcmF0b3JGdW5jdGlvbiwgS2V5VmFsdWVUeXBsZVZhbHVlRmlsdGVyLCBPYmplY3RNYXAsIHZhbHVlc0Zyb21QT0pPIH0gZnJvbSAnQGRlcmVla2IvdXRpbCc7XG5cbmV4cG9ydCBjb25zdCBGSUVMRF9WQUxVRVNfQVJFX0VRVUFMX1ZBTElEQVRJT05fS0VZID0gJ2ZpZWxkVmFsdWVzQXJlRXF1YWwnO1xuXG5leHBvcnQgaW50ZXJmYWNlIEZpZWxkVmFsdWVzQXJlRXF1YWxWYWxpZGF0b3JDb25maWc8VCBleHRlbmRzIG9iamVjdCA9IG9iamVjdD4ge1xuICAvKipcbiAgICogS2V5cyBvZiB0aGUgdmFsdWUgdG8gbWF0Y2ggb24uXG4gICAqXG4gICAqIElmIG5vbmUgYXJlIGRlZmluZWQsIHRoZW4gYWxsIGZpZWxkcyBmcm9tIHRoZSBjb250cm9sIGFyZSBtYXRjaGVkLlxuICAgKi9cbiAga2V5c0ZpbHRlcj86IChrZXlvZiBUKVtdO1xuXG4gIC8qKlxuICAgKiBGdWxsIGZpbHRlciB0byB1c2UsIGlmIGRlZmluZWQuXG4gICAqL1xuICB2YWx1ZXNGaWx0ZXI/OiBLZXlWYWx1ZVR1cGxlRmlsdGVyPFQ+O1xuXG4gIC8qKlxuICAgKiBPcHRpb25hbCBlcXVpdmFsZW5jZSBjb21wYXJhdG9yLlxuICAgKi9cbiAgaXNFcXVhbD86IEVxdWFsaXR5Q29tcGFyYXRvckZ1bmN0aW9uPFQ+O1xuXG4gIC8qKlxuICAgKiBDdXN0b20gbWVzc2FnZSBmb3IgdGhpcyB2YWxpZGF0b3IuXG4gICAqL1xuICBtZXNzYWdlPzogc3RyaW5nO1xufVxuXG4vKipcbiAqIFZhbGlkYXRvciBmb3IgdmFsaWRhdGluZyBhbGwgdmFsdWVzIHdpdGhpbiBhbiBvYmplY3QuXG4gKlxuICogVGhpcyBpcyB1c2VmdWwgZm9yIHZhbGlkYXRpbmcgYSBjb250cm9sIGdyb3VwIHdoZXJlIHR3byBvciBtb3JlIHZhbHVlcyBhcmUgZXhwZWN0ZWQgdG8gYmUgdGhlIHNhbWUsIHN1Y2ggYXMgYSBwYXNzd29yZCBhbmQgYSBwYXNzd29yZCB2ZXJpZmljYXRpb24gZmllbGQuXG4gKlxuICogQHBhcmFtIGNvbmZpZ1xuICogQHJldHVybnNcbiAqL1xuZXhwb3J0IGZ1bmN0aW9uIGZpZWxkVmFsdWVzQXJlRXF1YWxWYWxpZGF0b3I8VCBleHRlbmRzIG9iamVjdCA9IG9iamVjdD4oY29uZmlnOiBGaWVsZFZhbHVlc0FyZUVxdWFsVmFsaWRhdG9yQ29uZmlnPFQ+ID0ge30pOiBWYWxpZGF0b3JGbiB7XG4gIGNvbnN0IHsga2V5c0ZpbHRlciwgdmFsdWVzRmlsdGVyOiBpbnB1dFZhbHVlc0ZpbHRlciwgaXNFcXVhbCA9IChhLCBiKSA9PiBhID09PSBiLCBtZXNzYWdlID0gJ0ZpZWxkIHZhbHVlcyBhcmUgbm90IGVxdWFsLicgfSA9IGNvbmZpZztcblxuICBjb25zdCB2YWx1ZXNGaWx0ZXI6IEtleVZhbHVlVHVwbGVGaWx0ZXI8VCwga2V5b2YgVD4gPSBpbnB1dFZhbHVlc0ZpbHRlciA/PyB7XG4gICAgdmFsdWVGaWx0ZXI6IEtleVZhbHVlVHlwbGVWYWx1ZUZpbHRlci5OT05FLCAvLyBrZWVwIGFsbCB2YWx1ZXMuIE51bGwvdW5kZWZpbmVkIHNob3VsZCBiZSBwcm9jZXNzZWQuXG4gICAga2V5c0ZpbHRlclxuICB9O1xuXG4gIHJldHVybiAoY29udHJvbDogQWJzdHJhY3RDb250cm9sKSA9PiB7XG4gICAgY29uc3Qgb2JqZWN0OiBPYmplY3RNYXA8VD4gPSBjb250cm9sLnZhbHVlO1xuICAgIGNvbnN0IHZhbHVlczogVFtdID0gdmFsdWVzRnJvbVBPSk8ob2JqZWN0IGFzIFQsIHZhbHVlc0ZpbHRlcik7XG4gICAgY29uc3QgaXNWYWxpZCA9IGFsbE9iamVjdHNBcmVFcXVhbCh2YWx1ZXMsIGlzRXF1YWwpO1xuXG4gICAgaWYgKGlzVmFsaWQpIHtcbiAgICAgIHJldHVybiBudWxsO1xuICAgIH0gZWxzZSB7XG4gICAgICByZXR1cm4ge1xuICAgICAgICBbRklFTERfVkFMVUVTX0FSRV9FUVVBTF9WQUxJREFUSU9OX0tFWV06IHsgbWVzc2FnZSB9XG4gICAgICB9O1xuICAgIH1cbiAgfTtcbn1cbiJdfQ==
31
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZmllbGQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wYWNrYWdlcy9kYngtZm9ybS9zcmMvbGliL3ZhbGlkYXRvci9maWVsZC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFDQSxPQUFPLEVBQXVCLGtCQUFrQixFQUE4Qix3QkFBd0IsRUFBYSxjQUFjLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFFekosTUFBTSxDQUFDLE1BQU0scUNBQXFDLEdBQUcscUJBQXFCLENBQUM7QUEwQjNFOzs7Ozs7O0dBT0c7QUFDSCxNQUFNLFVBQVUsNEJBQTRCLENBQTRCLFNBQWdELEVBQUU7SUFDeEgsTUFBTSxFQUFFLFVBQVUsRUFBRSxZQUFZLEVBQUUsaUJBQWlCLEVBQUUsT0FBTyxHQUFHLENBQUMsQ0FBQyxFQUFFLENBQUMsRUFBRSxFQUFFLENBQUMsQ0FBQyxLQUFLLENBQUMsRUFBRSxPQUFPLEdBQUcsNkJBQTZCLEVBQUUsR0FBRyxNQUFNLENBQUM7SUFFckksTUFBTSxZQUFZLEdBQW9DLGlCQUFpQixJQUFJO1FBQ3pFLFdBQVcsRUFBRSx3QkFBd0IsQ0FBQyxJQUFJLEVBQUUsdURBQXVEO1FBQ25HLFVBQVU7S0FDWCxDQUFDO0lBRUYsT0FBTyxDQUFDLE9BQXdCLEVBQUUsRUFBRTtRQUNsQyxNQUFNLE1BQU0sR0FBaUIsT0FBTyxDQUFDLEtBQUssQ0FBQztRQUMzQyxNQUFNLE1BQU0sR0FBUSxjQUFjLENBQUMsTUFBVyxFQUFFLFlBQVksQ0FBQyxDQUFDO1FBQzlELE1BQU0sT0FBTyxHQUFHLGtCQUFrQixDQUFDLE1BQU0sRUFBRSxPQUFPLENBQUMsQ0FBQztRQUVwRCxJQUFJLE9BQU8sRUFBRSxDQUFDO1lBQ1osT0FBTyxJQUFJLENBQUM7UUFDZCxDQUFDO2FBQU0sQ0FBQztZQUNOLE9BQU87Z0JBQ0wsQ0FBQyxxQ0FBcUMsQ0FBQyxFQUFFLEVBQUUsT0FBTyxFQUFFO2FBQ3JELENBQUM7UUFDSixDQUFDO0lBQ0gsQ0FBQyxDQUFDO0FBQ0osQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEFic3RyYWN0Q29udHJvbCwgVmFsaWRhdG9yRm4gfSBmcm9tICdAYW5ndWxhci9mb3Jtcyc7XG5pbXBvcnQgeyBLZXlWYWx1ZVR1cGxlRmlsdGVyLCBhbGxPYmplY3RzQXJlRXF1YWwsIEVxdWFsaXR5Q29tcGFyYXRvckZ1bmN0aW9uLCBLZXlWYWx1ZVR5cGxlVmFsdWVGaWx0ZXIsIE9iamVjdE1hcCwgdmFsdWVzRnJvbVBPSk8gfSBmcm9tICdAZGVyZWVrYi91dGlsJztcblxuZXhwb3J0IGNvbnN0IEZJRUxEX1ZBTFVFU19BUkVfRVFVQUxfVkFMSURBVElPTl9LRVkgPSAnZmllbGRWYWx1ZXNBcmVFcXVhbCc7XG5cbmV4cG9ydCBpbnRlcmZhY2UgRmllbGRWYWx1ZXNBcmVFcXVhbFZhbGlkYXRvckNvbmZpZzxUIGV4dGVuZHMgb2JqZWN0ID0gb2JqZWN0PiB7XG4gIC8qKlxuICAgKiBLZXlzIG9mIHRoZSB2YWx1ZSB0byBtYXRjaCBvbi5cbiAgICpcbiAgICogSWYgbm9uZSBhcmUgZGVmaW5lZCwgdGhlbiBhbGwgZmllbGRzIGZyb20gdGhlIGNvbnRyb2wgYXJlIG1hdGNoZWQuXG4gICAqL1xuICBrZXlzRmlsdGVyPzogKGtleW9mIFQpW107XG5cbiAgLyoqXG4gICAqIEZ1bGwgZmlsdGVyIHRvIHVzZSwgaWYgZGVmaW5lZC5cbiAgICovXG4gIHZhbHVlc0ZpbHRlcj86IEtleVZhbHVlVHVwbGVGaWx0ZXI8VD47XG5cbiAgLyoqXG4gICAqIE9wdGlvbmFsIGVxdWl2YWxlbmNlIGNvbXBhcmF0b3IuXG4gICAqL1xuICBpc0VxdWFsPzogRXF1YWxpdHlDb21wYXJhdG9yRnVuY3Rpb248VD47XG5cbiAgLyoqXG4gICAqIEN1c3RvbSBtZXNzYWdlIGZvciB0aGlzIHZhbGlkYXRvci5cbiAgICovXG4gIG1lc3NhZ2U/OiBzdHJpbmc7XG59XG5cbi8qKlxuICogVmFsaWRhdG9yIGZvciB2YWxpZGF0aW5nIGFsbCB2YWx1ZXMgd2l0aGluIGFuIG9iamVjdC5cbiAqXG4gKiBUaGlzIGlzIHVzZWZ1bCBmb3IgdmFsaWRhdGluZyBhIGNvbnRyb2wgZ3JvdXAgd2hlcmUgdHdvIG9yIG1vcmUgdmFsdWVzIGFyZSBleHBlY3RlZCB0byBiZSB0aGUgc2FtZSwgc3VjaCBhcyBhIHBhc3N3b3JkIGFuZCBhIHBhc3N3b3JkIHZlcmlmaWNhdGlvbiBmaWVsZC5cbiAqXG4gKiBAcGFyYW0gY29uZmlnXG4gKiBAcmV0dXJuc1xuICovXG5leHBvcnQgZnVuY3Rpb24gZmllbGRWYWx1ZXNBcmVFcXVhbFZhbGlkYXRvcjxUIGV4dGVuZHMgb2JqZWN0ID0gb2JqZWN0Pihjb25maWc6IEZpZWxkVmFsdWVzQXJlRXF1YWxWYWxpZGF0b3JDb25maWc8VD4gPSB7fSk6IFZhbGlkYXRvckZuIHtcbiAgY29uc3QgeyBrZXlzRmlsdGVyLCB2YWx1ZXNGaWx0ZXI6IGlucHV0VmFsdWVzRmlsdGVyLCBpc0VxdWFsID0gKGEsIGIpID0+IGEgPT09IGIsIG1lc3NhZ2UgPSAnRmllbGQgdmFsdWVzIGFyZSBub3QgZXF1YWwuJyB9ID0gY29uZmlnO1xuXG4gIGNvbnN0IHZhbHVlc0ZpbHRlcjogS2V5VmFsdWVUdXBsZUZpbHRlcjxULCBrZXlvZiBUPiA9IGlucHV0VmFsdWVzRmlsdGVyID8/IHtcbiAgICB2YWx1ZUZpbHRlcjogS2V5VmFsdWVUeXBsZVZhbHVlRmlsdGVyLk5PTkUsIC8vIGtlZXAgYWxsIHZhbHVlcy4gTnVsbC91bmRlZmluZWQgc2hvdWxkIGJlIHByb2Nlc3NlZC5cbiAgICBrZXlzRmlsdGVyXG4gIH07XG5cbiAgcmV0dXJuIChjb250cm9sOiBBYnN0cmFjdENvbnRyb2wpID0+IHtcbiAgICBjb25zdCBvYmplY3Q6IE9iamVjdE1hcDxUPiA9IGNvbnRyb2wudmFsdWU7XG4gICAgY29uc3QgdmFsdWVzOiBUW10gPSB2YWx1ZXNGcm9tUE9KTyhvYmplY3QgYXMgVCwgdmFsdWVzRmlsdGVyKTtcbiAgICBjb25zdCBpc1ZhbGlkID0gYWxsT2JqZWN0c0FyZUVxdWFsKHZhbHVlcywgaXNFcXVhbCk7XG5cbiAgICBpZiAoaXNWYWxpZCkge1xuICAgICAgcmV0dXJuIG51bGw7XG4gICAgfSBlbHNlIHtcbiAgICAgIHJldHVybiB7XG4gICAgICAgIFtGSUVMRF9WQUxVRVNfQVJFX0VRVUFMX1ZBTElEQVRJT05fS0VZXTogeyBtZXNzYWdlIH1cbiAgICAgIH07XG4gICAgfVxuICB9O1xufVxuIl19
@@ -50,4 +50,4 @@ export function isDivisibleBy(divisor) {
50
50
  return {};
51
51
  };
52
52
  }
53
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibnVtYmVyLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcGFja2FnZXMvZGJ4LWZvcm0vc3JjL2xpYi92YWxpZGF0b3IvbnVtYmVyLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBa0QsVUFBVSxFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFDNUYsT0FBTyxFQUFFLG1CQUFtQixFQUFFLHNCQUFzQixFQUFFLE1BQU0sZUFBZSxDQUFDO0FBRTVFOzs7Ozs7R0FNRztBQUNILE1BQU0sVUFBVSxTQUFTLENBQUMsTUFBYyxNQUFNLENBQUMsZ0JBQWdCLEVBQUUsTUFBYyxNQUFNLENBQUMsZ0JBQWdCO0lBQ3BHLE1BQU0sS0FBSyxHQUFHLFVBQVUsQ0FBQyxHQUFHLENBQUMsR0FBRyxDQUFDLENBQUM7SUFDbEMsTUFBTSxLQUFLLEdBQUcsVUFBVSxDQUFDLEdBQUcsQ0FBQyxHQUFHLENBQUMsQ0FBQztJQUVsQyxPQUFPLENBQUMsT0FBd0IsRUFBMkIsRUFBRTtRQUMzRCxNQUFNLFFBQVEsR0FBRyxLQUFLLENBQUMsT0FBTyxDQUFDLENBQUM7UUFDaEMsTUFBTSxRQUFRLEdBQUcsS0FBSyxDQUFDLE9BQU8sQ0FBQyxDQUFDO1FBRWhDLElBQUksTUFBTSxHQUE0QixJQUFJLENBQUM7UUFFM0MsSUFBSSxRQUFRLElBQUksUUFBUSxFQUFFO1lBQ3hCLE1BQU0sR0FBRztnQkFDUCxHQUFHLFFBQVE7Z0JBQ1gsR0FBRyxRQUFRO2FBQ1osQ0FBQztTQUNIO1FBRUQsT0FBTyxNQUFNLENBQUM7SUFDaEIsQ0FBQyxDQUFDO0FBQ0osQ0FBQztBQUVELE1BQU0sQ0FBQyxNQUFNLDhCQUE4QixHQUFHLGVBQWUsQ0FBQztBQVM5RDs7Ozs7R0FLRztBQUNILE1BQU0sVUFBVSxhQUFhLENBQUMsT0FBZTtJQUMzQyxJQUFJLE9BQU8sS0FBSyxDQUFDLEVBQUU7UUFDakIsTUFBTSxJQUFJLEtBQUssQ0FBQyxxQ0FBcUMsQ0FBQyxDQUFDO0tBQ3hEO0lBRUQsT0FBTyxDQUFDLE9BQXdCLEVBQTJCLEVBQUU7UUFDM0QsTUFBTSxLQUFLLEdBQXVCLE9BQU8sQ0FBQyxLQUFLLENBQUM7UUFFaEQsSUFBSSxLQUFLLElBQUksSUFBSSxJQUFJLENBQUMsbUJBQW1CLENBQUMsS0FBSyxFQUFFLE9BQU8sQ0FBQyxFQUFFO1lBQ3pELE1BQU0sT0FBTyxHQUFHLHNCQUFzQixDQUFDLEtBQUssRUFBRSxPQUFPLENBQUMsQ0FBQztZQUN2RCxPQUFPO2dCQUNMLENBQUMsOEJBQThCLENBQUMsRUFBRTtvQkFDaEMsS0FBSztvQkFDTCxPQUFPO29CQUNQLE9BQU87b0JBQ1AsT0FBTyxFQUFFLCtCQUErQixPQUFPLHNDQUFzQyxPQUFPLENBQUMsWUFBWSxRQUFRLE9BQU8sQ0FBQyxXQUFXLEdBQUc7aUJBQ3hJO2FBQ0YsQ0FBQztTQUNIO1FBRUQsT0FBTyxFQUFFLENBQUM7SUFDWixDQUFDLENBQUM7QUFDSixDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQWJzdHJhY3RDb250cm9sLCBWYWxpZGF0aW9uRXJyb3JzLCBWYWxpZGF0b3JGbiwgVmFsaWRhdG9ycyB9IGZyb20gJ0Bhbmd1bGFyL2Zvcm1zJztcbmltcG9ydCB7IGlzTnVtYmVyRGl2aXNpYmxlQnksIG5lYXJlc3REaXZpc2libGVWYWx1ZXMgfSBmcm9tICdAZGVyZWVrYi91dGlsJztcblxuLyoqXG4gKiBNZXJnZXMgdGhlIHVzZSBvZiB0aGUgbWluIGFuZCBtYXggdmFsaWRhdG9yLlxuICpcbiAqIEBwYXJhbSBtaW5cbiAqIEBwYXJhbSBtYXhcbiAqIEByZXR1cm5zXG4gKi9cbmV4cG9ydCBmdW5jdGlvbiBpc0luUmFuZ2UobWluOiBudW1iZXIgPSBOdW1iZXIuTUlOX1NBRkVfSU5URUdFUiwgbWF4OiBudW1iZXIgPSBOdW1iZXIuTUFYX1NBRkVfSU5URUdFUik6IFZhbGlkYXRvckZuIHtcbiAgY29uc3QgbWluRm4gPSBWYWxpZGF0b3JzLm1pbihtaW4pO1xuICBjb25zdCBtYXhGbiA9IFZhbGlkYXRvcnMubWF4KG1heCk7XG5cbiAgcmV0dXJuIChjb250cm9sOiBBYnN0cmFjdENvbnRyb2wpOiBWYWxpZGF0aW9uRXJyb3JzIHwgbnVsbCA9PiB7XG4gICAgY29uc3QgbWluRXJyb3IgPSBtaW5Gbihjb250cm9sKTtcbiAgICBjb25zdCBtYXhFcnJvciA9IG1heEZuKGNvbnRyb2wpO1xuXG4gICAgbGV0IGVycm9yczogVmFsaWRhdGlvbkVycm9ycyB8IG51bGwgPSBudWxsO1xuXG4gICAgaWYgKG1pbkVycm9yIHx8IG1heEVycm9yKSB7XG4gICAgICBlcnJvcnMgPSB7XG4gICAgICAgIC4uLm1pbkVycm9yLFxuICAgICAgICAuLi5tYXhFcnJvclxuICAgICAgfTtcbiAgICB9XG5cbiAgICByZXR1cm4gZXJyb3JzO1xuICB9O1xufVxuXG5leHBvcnQgY29uc3QgSVNfRElWSVNJQkxFX0JZX1ZBTElEQVRJT05fS0VZID0gJ2lzRGl2aXNpYmxlQnknO1xuXG5leHBvcnQgaW50ZXJmYWNlIElzRGl2aXNpYmxlQnlFcnJvciB7XG4gIHZhbHVlOiBudW1iZXI7XG4gIG5lYXJlc3Q6IG51bWJlcjtcbiAgZGl2aXNvcjogbnVtYmVyO1xuICBtZXNzYWdlOiBzdHJpbmc7XG59XG5cbi8qKlxuICogQW5ndWxhciBGb3JtIFZhbGlkYXRpb25GbiBmb3IgY2hlY2tpbmcgaXNEaXZpc2libGVCeSB0aGUgaW5wdXQgZGl2aXNvci5cbiAqXG4gKiBAcGFyYW0gZGl2aXNvclxuICogQHJldHVybnNcbiAqL1xuZXhwb3J0IGZ1bmN0aW9uIGlzRGl2aXNpYmxlQnkoZGl2aXNvcjogbnVtYmVyKTogVmFsaWRhdG9yRm4ge1xuICBpZiAoZGl2aXNvciA9PT0gMCkge1xuICAgIHRocm93IG5ldyBFcnJvcignRGl2aXNpb3IgbXVzdCBiZSBncmVhdGVyIHRoYW4gemVyby4nKTtcbiAgfVxuXG4gIHJldHVybiAoY29udHJvbDogQWJzdHJhY3RDb250cm9sKTogVmFsaWRhdGlvbkVycm9ycyB8IG51bGwgPT4ge1xuICAgIGNvbnN0IHZhbHVlOiBudW1iZXIgfCB1bmRlZmluZWQgPSBjb250cm9sLnZhbHVlO1xuXG4gICAgaWYgKHZhbHVlICE9IG51bGwgJiYgIWlzTnVtYmVyRGl2aXNpYmxlQnkodmFsdWUsIGRpdmlzb3IpKSB7XG4gICAgICBjb25zdCBuZWFyZXN0ID0gbmVhcmVzdERpdmlzaWJsZVZhbHVlcyh2YWx1ZSwgZGl2aXNvcik7XG4gICAgICByZXR1cm4ge1xuICAgICAgICBbSVNfRElWSVNJQkxFX0JZX1ZBTElEQVRJT05fS0VZXToge1xuICAgICAgICAgIHZhbHVlLFxuICAgICAgICAgIGRpdmlzb3IsXG4gICAgICAgICAgbmVhcmVzdCxcbiAgICAgICAgICBtZXNzYWdlOiBgTnVtYmVyIG11c3QgYnkgZGl2aXNpYmxlIGJ5ICR7ZGl2aXNvcn0uIFRoZSB0d28gbmVhcmVzdCB2YWxpZCB2YWx1ZXMgYXJlICR7bmVhcmVzdC5uZWFyZXN0Rmxvb3J9IGFuZCAke25lYXJlc3QubmVhcmVzdENlaWx9LmBcbiAgICAgICAgfVxuICAgICAgfTtcbiAgICB9XG5cbiAgICByZXR1cm4ge307XG4gIH07XG59XG4iXX0=
53
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibnVtYmVyLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcGFja2FnZXMvZGJ4LWZvcm0vc3JjL2xpYi92YWxpZGF0b3IvbnVtYmVyLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBa0QsVUFBVSxFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFDNUYsT0FBTyxFQUFFLG1CQUFtQixFQUFFLHNCQUFzQixFQUFFLE1BQU0sZUFBZSxDQUFDO0FBRTVFOzs7Ozs7R0FNRztBQUNILE1BQU0sVUFBVSxTQUFTLENBQUMsTUFBYyxNQUFNLENBQUMsZ0JBQWdCLEVBQUUsTUFBYyxNQUFNLENBQUMsZ0JBQWdCO0lBQ3BHLE1BQU0sS0FBSyxHQUFHLFVBQVUsQ0FBQyxHQUFHLENBQUMsR0FBRyxDQUFDLENBQUM7SUFDbEMsTUFBTSxLQUFLLEdBQUcsVUFBVSxDQUFDLEdBQUcsQ0FBQyxHQUFHLENBQUMsQ0FBQztJQUVsQyxPQUFPLENBQUMsT0FBd0IsRUFBMkIsRUFBRTtRQUMzRCxNQUFNLFFBQVEsR0FBRyxLQUFLLENBQUMsT0FBTyxDQUFDLENBQUM7UUFDaEMsTUFBTSxRQUFRLEdBQUcsS0FBSyxDQUFDLE9BQU8sQ0FBQyxDQUFDO1FBRWhDLElBQUksTUFBTSxHQUE0QixJQUFJLENBQUM7UUFFM0MsSUFBSSxRQUFRLElBQUksUUFBUSxFQUFFLENBQUM7WUFDekIsTUFBTSxHQUFHO2dCQUNQLEdBQUcsUUFBUTtnQkFDWCxHQUFHLFFBQVE7YUFDWixDQUFDO1FBQ0osQ0FBQztRQUVELE9BQU8sTUFBTSxDQUFDO0lBQ2hCLENBQUMsQ0FBQztBQUNKLENBQUM7QUFFRCxNQUFNLENBQUMsTUFBTSw4QkFBOEIsR0FBRyxlQUFlLENBQUM7QUFTOUQ7Ozs7O0dBS0c7QUFDSCxNQUFNLFVBQVUsYUFBYSxDQUFDLE9BQWU7SUFDM0MsSUFBSSxPQUFPLEtBQUssQ0FBQyxFQUFFLENBQUM7UUFDbEIsTUFBTSxJQUFJLEtBQUssQ0FBQyxxQ0FBcUMsQ0FBQyxDQUFDO0lBQ3pELENBQUM7SUFFRCxPQUFPLENBQUMsT0FBd0IsRUFBMkIsRUFBRTtRQUMzRCxNQUFNLEtBQUssR0FBdUIsT0FBTyxDQUFDLEtBQUssQ0FBQztRQUVoRCxJQUFJLEtBQUssSUFBSSxJQUFJLElBQUksQ0FBQyxtQkFBbUIsQ0FBQyxLQUFLLEVBQUUsT0FBTyxDQUFDLEVBQUUsQ0FBQztZQUMxRCxNQUFNLE9BQU8sR0FBRyxzQkFBc0IsQ0FBQyxLQUFLLEVBQUUsT0FBTyxDQUFDLENBQUM7WUFDdkQsT0FBTztnQkFDTCxDQUFDLDhCQUE4QixDQUFDLEVBQUU7b0JBQ2hDLEtBQUs7b0JBQ0wsT0FBTztvQkFDUCxPQUFPO29CQUNQLE9BQU8sRUFBRSwrQkFBK0IsT0FBTyxzQ0FBc0MsT0FBTyxDQUFDLFlBQVksUUFBUSxPQUFPLENBQUMsV0FBVyxHQUFHO2lCQUN4STthQUNGLENBQUM7UUFDSixDQUFDO1FBRUQsT0FBTyxFQUFFLENBQUM7SUFDWixDQUFDLENBQUM7QUFDSixDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQWJzdHJhY3RDb250cm9sLCBWYWxpZGF0aW9uRXJyb3JzLCBWYWxpZGF0b3JGbiwgVmFsaWRhdG9ycyB9IGZyb20gJ0Bhbmd1bGFyL2Zvcm1zJztcbmltcG9ydCB7IGlzTnVtYmVyRGl2aXNpYmxlQnksIG5lYXJlc3REaXZpc2libGVWYWx1ZXMgfSBmcm9tICdAZGVyZWVrYi91dGlsJztcblxuLyoqXG4gKiBNZXJnZXMgdGhlIHVzZSBvZiB0aGUgbWluIGFuZCBtYXggdmFsaWRhdG9yLlxuICpcbiAqIEBwYXJhbSBtaW5cbiAqIEBwYXJhbSBtYXhcbiAqIEByZXR1cm5zXG4gKi9cbmV4cG9ydCBmdW5jdGlvbiBpc0luUmFuZ2UobWluOiBudW1iZXIgPSBOdW1iZXIuTUlOX1NBRkVfSU5URUdFUiwgbWF4OiBudW1iZXIgPSBOdW1iZXIuTUFYX1NBRkVfSU5URUdFUik6IFZhbGlkYXRvckZuIHtcbiAgY29uc3QgbWluRm4gPSBWYWxpZGF0b3JzLm1pbihtaW4pO1xuICBjb25zdCBtYXhGbiA9IFZhbGlkYXRvcnMubWF4KG1heCk7XG5cbiAgcmV0dXJuIChjb250cm9sOiBBYnN0cmFjdENvbnRyb2wpOiBWYWxpZGF0aW9uRXJyb3JzIHwgbnVsbCA9PiB7XG4gICAgY29uc3QgbWluRXJyb3IgPSBtaW5Gbihjb250cm9sKTtcbiAgICBjb25zdCBtYXhFcnJvciA9IG1heEZuKGNvbnRyb2wpO1xuXG4gICAgbGV0IGVycm9yczogVmFsaWRhdGlvbkVycm9ycyB8IG51bGwgPSBudWxsO1xuXG4gICAgaWYgKG1pbkVycm9yIHx8IG1heEVycm9yKSB7XG4gICAgICBlcnJvcnMgPSB7XG4gICAgICAgIC4uLm1pbkVycm9yLFxuICAgICAgICAuLi5tYXhFcnJvclxuICAgICAgfTtcbiAgICB9XG5cbiAgICByZXR1cm4gZXJyb3JzO1xuICB9O1xufVxuXG5leHBvcnQgY29uc3QgSVNfRElWSVNJQkxFX0JZX1ZBTElEQVRJT05fS0VZID0gJ2lzRGl2aXNpYmxlQnknO1xuXG5leHBvcnQgaW50ZXJmYWNlIElzRGl2aXNpYmxlQnlFcnJvciB7XG4gIHZhbHVlOiBudW1iZXI7XG4gIG5lYXJlc3Q6IG51bWJlcjtcbiAgZGl2aXNvcjogbnVtYmVyO1xuICBtZXNzYWdlOiBzdHJpbmc7XG59XG5cbi8qKlxuICogQW5ndWxhciBGb3JtIFZhbGlkYXRpb25GbiBmb3IgY2hlY2tpbmcgaXNEaXZpc2libGVCeSB0aGUgaW5wdXQgZGl2aXNvci5cbiAqXG4gKiBAcGFyYW0gZGl2aXNvclxuICogQHJldHVybnNcbiAqL1xuZXhwb3J0IGZ1bmN0aW9uIGlzRGl2aXNpYmxlQnkoZGl2aXNvcjogbnVtYmVyKTogVmFsaWRhdG9yRm4ge1xuICBpZiAoZGl2aXNvciA9PT0gMCkge1xuICAgIHRocm93IG5ldyBFcnJvcignRGl2aXNpb3IgbXVzdCBiZSBncmVhdGVyIHRoYW4gemVyby4nKTtcbiAgfVxuXG4gIHJldHVybiAoY29udHJvbDogQWJzdHJhY3RDb250cm9sKTogVmFsaWRhdGlvbkVycm9ycyB8IG51bGwgPT4ge1xuICAgIGNvbnN0IHZhbHVlOiBudW1iZXIgfCB1bmRlZmluZWQgPSBjb250cm9sLnZhbHVlO1xuXG4gICAgaWYgKHZhbHVlICE9IG51bGwgJiYgIWlzTnVtYmVyRGl2aXNpYmxlQnkodmFsdWUsIGRpdmlzb3IpKSB7XG4gICAgICBjb25zdCBuZWFyZXN0ID0gbmVhcmVzdERpdmlzaWJsZVZhbHVlcyh2YWx1ZSwgZGl2aXNvcik7XG4gICAgICByZXR1cm4ge1xuICAgICAgICBbSVNfRElWSVNJQkxFX0JZX1ZBTElEQVRJT05fS0VZXToge1xuICAgICAgICAgIHZhbHVlLFxuICAgICAgICAgIGRpdmlzb3IsXG4gICAgICAgICAgbmVhcmVzdCxcbiAgICAgICAgICBtZXNzYWdlOiBgTnVtYmVyIG11c3QgYnkgZGl2aXNpYmxlIGJ5ICR7ZGl2aXNvcn0uIFRoZSB0d28gbmVhcmVzdCB2YWxpZCB2YWx1ZXMgYXJlICR7bmVhcmVzdC5uZWFyZXN0Rmxvb3J9IGFuZCAke25lYXJlc3QubmVhcmVzdENlaWx9LmBcbiAgICAgICAgfVxuICAgICAgfTtcbiAgICB9XG5cbiAgICByZXR1cm4ge307XG4gIH07XG59XG4iXX0=
@@ -58,4 +58,4 @@ export function isE164PhoneNumberWithValidExtension() {
58
58
  return {};
59
59
  };
60
60
  }
61
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicGhvbmUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wYWNrYWdlcy9kYngtZm9ybS9zcmMvbGliL3ZhbGlkYXRvci9waG9uZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFDQSxPQUFPLEVBQUUsNEJBQTRCLEVBQUUsaUJBQWlCLElBQUkseUJBQXlCLEVBQUUsMkJBQTJCLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDMUksT0FBTyxFQUFFLHNDQUFzQyxFQUFFLDRCQUE0QixFQUFFLE1BQU0sNkJBQTZCLENBQUM7QUFFbkg7Ozs7O0dBS0c7QUFDSCxNQUFNLFVBQVUsaUJBQWlCLENBQUMsY0FBdUI7SUFDdkQsT0FBTyxDQUFDLE9BQXdCLEVBQTJCLEVBQUU7UUFDM0QsTUFBTSxLQUFLLEdBQXVCLE9BQU8sQ0FBQyxLQUFLLENBQUM7UUFFaEQsSUFBSSxLQUFLLElBQUksSUFBSSxJQUFJLENBQUMseUJBQXlCLENBQUMsS0FBSyxFQUFFLGNBQWMsQ0FBQyxFQUFFO1lBQ3RFLE9BQU87Z0JBQ0wsQ0FBQyw0QkFBNEIsQ0FBQyxJQUFJLENBQUMsRUFBRSxJQUFJO2FBQzFDLENBQUM7U0FDSDtRQUVELE9BQU8sRUFBRSxDQUFDO0lBQ1osQ0FBQyxDQUFDO0FBQ0osQ0FBQztBQUVEOzs7OztHQUtHO0FBQ0gsTUFBTSxVQUFVLGdCQUFnQjtJQUM5QixPQUFPLENBQUMsT0FBd0IsRUFBMkIsRUFBRTtRQUMzRCxNQUFNLEtBQUssR0FBZ0MsT0FBTyxDQUFDLEtBQUssQ0FBQztRQUV6RCxJQUFJLEtBQUssSUFBSSxJQUFJLEVBQUU7WUFDakIsTUFBTSxRQUFRLEdBQUcsS0FBSyxDQUFDLFFBQVEsRUFBRSxDQUFDO1lBRWxDLElBQUksUUFBUSxDQUFDLE1BQU0sR0FBRyxDQUFDLElBQUksQ0FBQywyQkFBMkIsQ0FBQyxRQUFRLENBQUMsRUFBRTtnQkFDakUsT0FBTztvQkFDTCxDQUFDLHNDQUFzQyxDQUFDLElBQUksQ0FBQyxFQUFFLElBQUk7aUJBQ3BELENBQUM7YUFDSDtTQUNGO1FBRUQsT0FBTyxFQUFFLENBQUM7SUFDWixDQUFDLENBQUM7QUFDSixDQUFDO0FBRUQsTUFBTSxVQUFVLG1DQUFtQztJQUNqRCxPQUFPLENBQUMsT0FBd0IsRUFBMkIsRUFBRTtRQUMzRCxNQUFNLEtBQUssR0FBdUIsT0FBTyxDQUFDLEtBQUssQ0FBQztRQUVoRCxJQUFJLEtBQUssSUFBSSxJQUFJLEVBQUU7WUFDakIsSUFBSSx5QkFBeUIsQ0FBQyxLQUFLLEVBQUUsSUFBSSxDQUFDLEVBQUU7Z0JBQzFDLE1BQU0sSUFBSSxHQUFHLDRCQUE0QixDQUFDLEtBQUssQ0FBQyxDQUFDO2dCQUVqRCxJQUFJLElBQUksQ0FBQyxTQUFTLElBQUksQ0FBQywyQkFBMkIsQ0FBQyxJQUFJLENBQUMsU0FBUyxDQUFDLEVBQUU7b0JBQ2xFLE9BQU87d0JBQ0wsQ0FBQyxzQ0FBc0MsQ0FBQyxJQUFJLENBQUMsRUFBRSxJQUFJO3FCQUNwRCxDQUFDO2lCQUNIO2FBQ0Y7aUJBQU07Z0JBQ0wsT0FBTztvQkFDTCxDQUFDLDRCQUE0QixDQUFDLElBQUksQ0FBQyxFQUFFLElBQUk7aUJBQzFDLENBQUM7YUFDSDtTQUNGO1FBRUQsT0FBTyxFQUFFLENBQUM7SUFDWixDQUFDLENBQUM7QUFDSixDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQWJzdHJhY3RDb250cm9sLCBWYWxpZGF0aW9uRXJyb3JzLCBWYWxpZGF0b3JGbiB9IGZyb20gJ0Bhbmd1bGFyL2Zvcm1zJztcbmltcG9ydCB7IGUxNjRQaG9uZU51bWJlckV4dGVuc2lvblBhaXIsIGlzRTE2NFBob25lTnVtYmVyIGFzIGlzRTE2NFBob25lTnVtYmVyRnVuY3Rpb24sIGlzVmFsaWRQaG9uZUV4dGVuc2lvbk51bWJlciB9IGZyb20gJ0BkZXJlZWtiL3V0aWwnO1xuaW1wb3J0IHsgSU5WQUxJRF9QSE9ORV9OVU1CRVJfRVhURU5TSU9OX01FU1NBR0UsIElOVkFMSURfUEhPTkVfTlVNQkVSX01FU1NBR0UgfSBmcm9tICcuLi9mb3JtbHkvY29uZmlnL3ZhbGlkYXRpb24nO1xuXG4vKipcbiAqIEFuZ3VsYXIgRm9ybSBWYWxpZGF0aW9uRm4gZm9yIGNoZWNraW5nIGlzRTE2NFBob25lTnVtYmVyIHRoZSBpbnB1dCBkaXZpc29yLlxuICpcbiAqIEBwYXJhbSBkaXZpc29yXG4gKiBAcmV0dXJuc1xuICovXG5leHBvcnQgZnVuY3Rpb24gaXNFMTY0UGhvbmVOdW1iZXIoYWxsb3dFeHRlbnNpb246IGJvb2xlYW4pOiBWYWxpZGF0b3JGbiB7XG4gIHJldHVybiAoY29udHJvbDogQWJzdHJhY3RDb250cm9sKTogVmFsaWRhdGlvbkVycm9ycyB8IG51bGwgPT4ge1xuICAgIGNvbnN0IHZhbHVlOiBzdHJpbmcgfCB1bmRlZmluZWQgPSBjb250cm9sLnZhbHVlO1xuXG4gICAgaWYgKHZhbHVlICE9IG51bGwgJiYgIWlzRTE2NFBob25lTnVtYmVyRnVuY3Rpb24odmFsdWUsIGFsbG93RXh0ZW5zaW9uKSkge1xuICAgICAgcmV0dXJuIHtcbiAgICAgICAgW0lOVkFMSURfUEhPTkVfTlVNQkVSX01FU1NBR0UubmFtZV06IHRydWVcbiAgICAgIH07XG4gICAgfVxuXG4gICAgcmV0dXJuIHt9O1xuICB9O1xufVxuXG4vKipcbiAqIEFuZ3VsYXIgRm9ybSBWYWxpZGF0aW9uRm4gZm9yIGNoZWNraW5nIHRoZSBpbnB1dCBpcyBhIHZhbGlkIHBob25lIGV4dGVuc2lvbi4gRW1wdHkgdmFsdWVzIHJldHVybiB0cnVlLlxuICpcbiAqIEBwYXJhbSBkaXZpc29yXG4gKiBAcmV0dXJuc1xuICovXG5leHBvcnQgZnVuY3Rpb24gaXNQaG9uZUV4dGVuc2lvbigpOiBWYWxpZGF0b3JGbiB7XG4gIHJldHVybiAoY29udHJvbDogQWJzdHJhY3RDb250cm9sKTogVmFsaWRhdGlvbkVycm9ycyB8IG51bGwgPT4ge1xuICAgIGNvbnN0IHZhbHVlOiBzdHJpbmcgfCBudW1iZXIgfCB1bmRlZmluZWQgPSBjb250cm9sLnZhbHVlO1xuXG4gICAgaWYgKHZhbHVlICE9IG51bGwpIHtcbiAgICAgIGNvbnN0IGFzU3RyaW5nID0gdmFsdWUudG9TdHJpbmcoKTtcblxuICAgICAgaWYgKGFzU3RyaW5nLmxlbmd0aCA+IDAgJiYgIWlzVmFsaWRQaG9uZUV4dGVuc2lvbk51bWJlcihhc1N0cmluZykpIHtcbiAgICAgICAgcmV0dXJuIHtcbiAgICAgICAgICBbSU5WQUxJRF9QSE9ORV9OVU1CRVJfRVhURU5TSU9OX01FU1NBR0UubmFtZV06IHRydWVcbiAgICAgICAgfTtcbiAgICAgIH1cbiAgICB9XG5cbiAgICByZXR1cm4ge307XG4gIH07XG59XG5cbmV4cG9ydCBmdW5jdGlvbiBpc0UxNjRQaG9uZU51bWJlcldpdGhWYWxpZEV4dGVuc2lvbigpOiBWYWxpZGF0b3JGbiB7XG4gIHJldHVybiAoY29udHJvbDogQWJzdHJhY3RDb250cm9sKTogVmFsaWRhdGlvbkVycm9ycyB8IG51bGwgPT4ge1xuICAgIGNvbnN0IHZhbHVlOiBzdHJpbmcgfCB1bmRlZmluZWQgPSBjb250cm9sLnZhbHVlO1xuXG4gICAgaWYgKHZhbHVlICE9IG51bGwpIHtcbiAgICAgIGlmIChpc0UxNjRQaG9uZU51bWJlckZ1bmN0aW9uKHZhbHVlLCB0cnVlKSkge1xuICAgICAgICBjb25zdCBwYWlyID0gZTE2NFBob25lTnVtYmVyRXh0ZW5zaW9uUGFpcih2YWx1ZSk7XG5cbiAgICAgICAgaWYgKHBhaXIuZXh0ZW5zaW9uICYmICFpc1ZhbGlkUGhvbmVFeHRlbnNpb25OdW1iZXIocGFpci5leHRlbnNpb24pKSB7XG4gICAgICAgICAgcmV0dXJuIHtcbiAgICAgICAgICAgIFtJTlZBTElEX1BIT05FX05VTUJFUl9FWFRFTlNJT05fTUVTU0FHRS5uYW1lXTogdHJ1ZVxuICAgICAgICAgIH07XG4gICAgICAgIH1cbiAgICAgIH0gZWxzZSB7XG4gICAgICAgIHJldHVybiB7XG4gICAgICAgICAgW0lOVkFMSURfUEhPTkVfTlVNQkVSX01FU1NBR0UubmFtZV06IHRydWVcbiAgICAgICAgfTtcbiAgICAgIH1cbiAgICB9XG5cbiAgICByZXR1cm4ge307XG4gIH07XG59XG4iXX0=
61
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicGhvbmUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wYWNrYWdlcy9kYngtZm9ybS9zcmMvbGliL3ZhbGlkYXRvci9waG9uZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFDQSxPQUFPLEVBQUUsNEJBQTRCLEVBQUUsaUJBQWlCLElBQUkseUJBQXlCLEVBQUUsMkJBQTJCLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDMUksT0FBTyxFQUFFLHNDQUFzQyxFQUFFLDRCQUE0QixFQUFFLE1BQU0sNkJBQTZCLENBQUM7QUFFbkg7Ozs7O0dBS0c7QUFDSCxNQUFNLFVBQVUsaUJBQWlCLENBQUMsY0FBdUI7SUFDdkQsT0FBTyxDQUFDLE9BQXdCLEVBQTJCLEVBQUU7UUFDM0QsTUFBTSxLQUFLLEdBQXVCLE9BQU8sQ0FBQyxLQUFLLENBQUM7UUFFaEQsSUFBSSxLQUFLLElBQUksSUFBSSxJQUFJLENBQUMseUJBQXlCLENBQUMsS0FBSyxFQUFFLGNBQWMsQ0FBQyxFQUFFLENBQUM7WUFDdkUsT0FBTztnQkFDTCxDQUFDLDRCQUE0QixDQUFDLElBQUksQ0FBQyxFQUFFLElBQUk7YUFDMUMsQ0FBQztRQUNKLENBQUM7UUFFRCxPQUFPLEVBQUUsQ0FBQztJQUNaLENBQUMsQ0FBQztBQUNKLENBQUM7QUFFRDs7Ozs7R0FLRztBQUNILE1BQU0sVUFBVSxnQkFBZ0I7SUFDOUIsT0FBTyxDQUFDLE9BQXdCLEVBQTJCLEVBQUU7UUFDM0QsTUFBTSxLQUFLLEdBQWdDLE9BQU8sQ0FBQyxLQUFLLENBQUM7UUFFekQsSUFBSSxLQUFLLElBQUksSUFBSSxFQUFFLENBQUM7WUFDbEIsTUFBTSxRQUFRLEdBQUcsS0FBSyxDQUFDLFFBQVEsRUFBRSxDQUFDO1lBRWxDLElBQUksUUFBUSxDQUFDLE1BQU0sR0FBRyxDQUFDLElBQUksQ0FBQywyQkFBMkIsQ0FBQyxRQUFRLENBQUMsRUFBRSxDQUFDO2dCQUNsRSxPQUFPO29CQUNMLENBQUMsc0NBQXNDLENBQUMsSUFBSSxDQUFDLEVBQUUsSUFBSTtpQkFDcEQsQ0FBQztZQUNKLENBQUM7UUFDSCxDQUFDO1FBRUQsT0FBTyxFQUFFLENBQUM7SUFDWixDQUFDLENBQUM7QUFDSixDQUFDO0FBRUQsTUFBTSxVQUFVLG1DQUFtQztJQUNqRCxPQUFPLENBQUMsT0FBd0IsRUFBMkIsRUFBRTtRQUMzRCxNQUFNLEtBQUssR0FBdUIsT0FBTyxDQUFDLEtBQUssQ0FBQztRQUVoRCxJQUFJLEtBQUssSUFBSSxJQUFJLEVBQUUsQ0FBQztZQUNsQixJQUFJLHlCQUF5QixDQUFDLEtBQUssRUFBRSxJQUFJLENBQUMsRUFBRSxDQUFDO2dCQUMzQyxNQUFNLElBQUksR0FBRyw0QkFBNEIsQ0FBQyxLQUFLLENBQUMsQ0FBQztnQkFFakQsSUFBSSxJQUFJLENBQUMsU0FBUyxJQUFJLENBQUMsMkJBQTJCLENBQUMsSUFBSSxDQUFDLFNBQVMsQ0FBQyxFQUFFLENBQUM7b0JBQ25FLE9BQU87d0JBQ0wsQ0FBQyxzQ0FBc0MsQ0FBQyxJQUFJLENBQUMsRUFBRSxJQUFJO3FCQUNwRCxDQUFDO2dCQUNKLENBQUM7WUFDSCxDQUFDO2lCQUFNLENBQUM7Z0JBQ04sT0FBTztvQkFDTCxDQUFDLDRCQUE0QixDQUFDLElBQUksQ0FBQyxFQUFFLElBQUk7aUJBQzFDLENBQUM7WUFDSixDQUFDO1FBQ0gsQ0FBQztRQUVELE9BQU8sRUFBRSxDQUFDO0lBQ1osQ0FBQyxDQUFDO0FBQ0osQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEFic3RyYWN0Q29udHJvbCwgVmFsaWRhdGlvbkVycm9ycywgVmFsaWRhdG9yRm4gfSBmcm9tICdAYW5ndWxhci9mb3Jtcyc7XG5pbXBvcnQgeyBlMTY0UGhvbmVOdW1iZXJFeHRlbnNpb25QYWlyLCBpc0UxNjRQaG9uZU51bWJlciBhcyBpc0UxNjRQaG9uZU51bWJlckZ1bmN0aW9uLCBpc1ZhbGlkUGhvbmVFeHRlbnNpb25OdW1iZXIgfSBmcm9tICdAZGVyZWVrYi91dGlsJztcbmltcG9ydCB7IElOVkFMSURfUEhPTkVfTlVNQkVSX0VYVEVOU0lPTl9NRVNTQUdFLCBJTlZBTElEX1BIT05FX05VTUJFUl9NRVNTQUdFIH0gZnJvbSAnLi4vZm9ybWx5L2NvbmZpZy92YWxpZGF0aW9uJztcblxuLyoqXG4gKiBBbmd1bGFyIEZvcm0gVmFsaWRhdGlvbkZuIGZvciBjaGVja2luZyBpc0UxNjRQaG9uZU51bWJlciB0aGUgaW5wdXQgZGl2aXNvci5cbiAqXG4gKiBAcGFyYW0gZGl2aXNvclxuICogQHJldHVybnNcbiAqL1xuZXhwb3J0IGZ1bmN0aW9uIGlzRTE2NFBob25lTnVtYmVyKGFsbG93RXh0ZW5zaW9uOiBib29sZWFuKTogVmFsaWRhdG9yRm4ge1xuICByZXR1cm4gKGNvbnRyb2w6IEFic3RyYWN0Q29udHJvbCk6IFZhbGlkYXRpb25FcnJvcnMgfCBudWxsID0+IHtcbiAgICBjb25zdCB2YWx1ZTogc3RyaW5nIHwgdW5kZWZpbmVkID0gY29udHJvbC52YWx1ZTtcblxuICAgIGlmICh2YWx1ZSAhPSBudWxsICYmICFpc0UxNjRQaG9uZU51bWJlckZ1bmN0aW9uKHZhbHVlLCBhbGxvd0V4dGVuc2lvbikpIHtcbiAgICAgIHJldHVybiB7XG4gICAgICAgIFtJTlZBTElEX1BIT05FX05VTUJFUl9NRVNTQUdFLm5hbWVdOiB0cnVlXG4gICAgICB9O1xuICAgIH1cblxuICAgIHJldHVybiB7fTtcbiAgfTtcbn1cblxuLyoqXG4gKiBBbmd1bGFyIEZvcm0gVmFsaWRhdGlvbkZuIGZvciBjaGVja2luZyB0aGUgaW5wdXQgaXMgYSB2YWxpZCBwaG9uZSBleHRlbnNpb24uIEVtcHR5IHZhbHVlcyByZXR1cm4gdHJ1ZS5cbiAqXG4gKiBAcGFyYW0gZGl2aXNvclxuICogQHJldHVybnNcbiAqL1xuZXhwb3J0IGZ1bmN0aW9uIGlzUGhvbmVFeHRlbnNpb24oKTogVmFsaWRhdG9yRm4ge1xuICByZXR1cm4gKGNvbnRyb2w6IEFic3RyYWN0Q29udHJvbCk6IFZhbGlkYXRpb25FcnJvcnMgfCBudWxsID0+IHtcbiAgICBjb25zdCB2YWx1ZTogc3RyaW5nIHwgbnVtYmVyIHwgdW5kZWZpbmVkID0gY29udHJvbC52YWx1ZTtcblxuICAgIGlmICh2YWx1ZSAhPSBudWxsKSB7XG4gICAgICBjb25zdCBhc1N0cmluZyA9IHZhbHVlLnRvU3RyaW5nKCk7XG5cbiAgICAgIGlmIChhc1N0cmluZy5sZW5ndGggPiAwICYmICFpc1ZhbGlkUGhvbmVFeHRlbnNpb25OdW1iZXIoYXNTdHJpbmcpKSB7XG4gICAgICAgIHJldHVybiB7XG4gICAgICAgICAgW0lOVkFMSURfUEhPTkVfTlVNQkVSX0VYVEVOU0lPTl9NRVNTQUdFLm5hbWVdOiB0cnVlXG4gICAgICAgIH07XG4gICAgICB9XG4gICAgfVxuXG4gICAgcmV0dXJuIHt9O1xuICB9O1xufVxuXG5leHBvcnQgZnVuY3Rpb24gaXNFMTY0UGhvbmVOdW1iZXJXaXRoVmFsaWRFeHRlbnNpb24oKTogVmFsaWRhdG9yRm4ge1xuICByZXR1cm4gKGNvbnRyb2w6IEFic3RyYWN0Q29udHJvbCk6IFZhbGlkYXRpb25FcnJvcnMgfCBudWxsID0+IHtcbiAgICBjb25zdCB2YWx1ZTogc3RyaW5nIHwgdW5kZWZpbmVkID0gY29udHJvbC52YWx1ZTtcblxuICAgIGlmICh2YWx1ZSAhPSBudWxsKSB7XG4gICAgICBpZiAoaXNFMTY0UGhvbmVOdW1iZXJGdW5jdGlvbih2YWx1ZSwgdHJ1ZSkpIHtcbiAgICAgICAgY29uc3QgcGFpciA9IGUxNjRQaG9uZU51bWJlckV4dGVuc2lvblBhaXIodmFsdWUpO1xuXG4gICAgICAgIGlmIChwYWlyLmV4dGVuc2lvbiAmJiAhaXNWYWxpZFBob25lRXh0ZW5zaW9uTnVtYmVyKHBhaXIuZXh0ZW5zaW9uKSkge1xuICAgICAgICAgIHJldHVybiB7XG4gICAgICAgICAgICBbSU5WQUxJRF9QSE9ORV9OVU1CRVJfRVhURU5TSU9OX01FU1NBR0UubmFtZV06IHRydWVcbiAgICAgICAgICB9O1xuICAgICAgICB9XG4gICAgICB9IGVsc2Uge1xuICAgICAgICByZXR1cm4ge1xuICAgICAgICAgIFtJTlZBTElEX1BIT05FX05VTUJFUl9NRVNTQUdFLm5hbWVdOiB0cnVlXG4gICAgICAgIH07XG4gICAgICB9XG4gICAgfVxuXG4gICAgcmV0dXJuIHt9O1xuICB9O1xufVxuIl19
@@ -1,21 +1,27 @@
1
+ import { ReactiveFormsModule } from '@angular/forms';
1
2
  import { CompactContextStore, mapCompactModeObs } from '@dereekb/dbx-web';
2
- import { Component, Injector, NgZone, inject } from '@angular/core';
3
+ import { ChangeDetectionStrategy, Component, Injector, inject } from '@angular/core';
3
4
  import { FieldType } from '@ngx-formly/material';
4
5
  import { skip, first, BehaviorSubject, filter, shareReplay, startWith, switchMap, map, throttleTime, skipWhile, of, distinctUntilChanged } from 'rxjs';
5
6
  import { asObservableFromGetter, filterMaybe, SubscriptionObject } from '@dereekb/rxjs';
6
- import { latLngStringFunction, latLngPointFunction, isDefaultLatLngPoint, isValidLatLngPoint, isSameLatLngPoint } from '@dereekb/util';
7
+ import { latLngStringFunction, latLngPointFunction, isDefaultLatLngPoint, isValidLatLngPoint, isSameLatLngPoint, defaultLatLngPoint } from '@dereekb/util';
7
8
  import { GeolocationService } from '@ng-web-apis/geolocation';
8
- import { DbxMapboxInjectionStore, DbxMapboxMapStore, provideMapboxStoreIfParentIsUnavailable } from '@dereekb/dbx-web/mapbox';
9
+ import { DbxMapboxInjectionStore, DbxMapboxMapStore, DbxMapboxModule, provideMapboxStoreIfParentIsUnavailable } from '@dereekb/dbx-web/mapbox';
9
10
  import { DbxFormMapboxLatLngFieldMarkerComponent } from './latlng.field.marker.component';
11
+ import { toSignal } from '@angular/core/rxjs-interop';
12
+ import { NgClass } from '@angular/common';
13
+ import { MatButtonModule } from '@angular/material/button';
14
+ import { MatFormFieldModule } from '@angular/material/form-field';
15
+ import { MatIconModule } from '@angular/material/icon';
16
+ import { MatInputModule } from '@angular/material/input';
10
17
  import * as i0 from "@angular/core";
11
- import * as i1 from "@angular/common";
18
+ import * as i1 from "@angular/forms";
12
19
  import * as i2 from "@angular/material/icon";
13
- import * as i3 from "@angular/material/button";
14
- import * as i4 from "@dereekb/dbx-web/mapbox";
15
- import * as i5 from "@angular/forms";
16
- import * as i6 from "@angular/material/input";
17
- import * as i7 from "@angular/material/form-field";
18
- import * as i8 from "ngx-mapbox-gl";
20
+ import * as i3 from "@dereekb/dbx-web/mapbox";
21
+ import * as i4 from "ngx-mapbox-gl";
22
+ import * as i5 from "@angular/material/button";
23
+ import * as i6 from "@angular/material/form-field";
24
+ import * as i7 from "@angular/material/input";
19
25
  export const DEFAULT_DBX_FORM_MAPBOX_LAT_LNG_FIELD_INJECTION_KEY = 'DbxFormMapboxLatLngFieldComponent';
20
26
  export const DEFAULT_DBX_FORM_MAPBOX_LAT_LNG_MARKER_CONFIG = {
21
27
  icon: 'pin_drop'
@@ -31,15 +37,7 @@ export class DbxFormMapboxLatLngFieldComponent extends FieldType {
31
37
  compact = inject(CompactContextStore, { optional: true });
32
38
  dbxMapboxInjectionStore = inject(DbxMapboxInjectionStore, { optional: true });
33
39
  dbxMapboxMapStore = inject(DbxMapboxMapStore);
34
- ngZone = inject(NgZone);
35
40
  injector = inject(Injector);
36
- _latLngStringFunction;
37
- _latLngPointFunction;
38
- compactClass$ = mapCompactModeObs(this.compact?.mode$, {
39
- compact: 'dbx-mapbox-input-field-compact'
40
- });
41
- _useCurrentLocationDisabled = new BehaviorSubject(false);
42
- useCurrentLocationDisabled$ = this._useCurrentLocationDisabled.asObservable();
43
41
  _sub = new SubscriptionObject();
44
42
  _geoSub = new SubscriptionObject();
45
43
  _centerSub = new SubscriptionObject();
@@ -47,6 +45,13 @@ export class DbxFormMapboxLatLngFieldComponent extends FieldType {
47
45
  _clickSub = new SubscriptionObject();
48
46
  _zoom = new BehaviorSubject(12);
49
47
  _markerConfig = new BehaviorSubject(of(DEFAULT_DBX_FORM_MAPBOX_LAT_LNG_MARKER_CONFIG));
48
+ _latLngStringFunction;
49
+ _latLngPointFunction;
50
+ compactClass$ = mapCompactModeObs(this.compact?.mode$, {
51
+ compact: 'dbx-mapbox-input-field-compact'
52
+ }).pipe(filterMaybe());
53
+ _useCurrentLocationDisabled = new BehaviorSubject(false);
54
+ useCurrentLocationDisabled$ = this._useCurrentLocationDisabled.asObservable();
50
55
  _formControlObs = new BehaviorSubject(undefined);
51
56
  formControl$ = this._formControlObs.pipe(filterMaybe());
52
57
  value$ = this.formControl$.pipe(switchMap((control) => control.valueChanges.pipe(startWith(control.value))), shareReplay(1));
@@ -60,6 +65,9 @@ export class DbxFormMapboxLatLngFieldComponent extends FieldType {
60
65
  skipWhile(isDefaultLatLngPoint), filter(isValidLatLngPoint));
61
66
  zoom$ = this._zoom.asObservable();
62
67
  markerConfig$ = this._markerConfig.asObservable().pipe(switchMap((x) => x), shareReplay(1));
68
+ useCurrentLocationDisabledSignal = toSignal(this._useCurrentLocationDisabled, { initialValue: false });
69
+ compactClassSignal = toSignal(this.compactClass$, { initialValue: '' });
70
+ latLngSignal = toSignal(this.latLng$, { initialValue: defaultLatLngPoint() });
63
71
  get zoom() {
64
72
  return Math.min(this.field.props.zoom || 12, 18);
65
73
  }
@@ -130,9 +138,7 @@ export class DbxFormMapboxLatLngFieldComponent extends FieldType {
130
138
  this._sub.subscription = this.dbxMapboxMapStore.center$.subscribe((center) => {
131
139
  this.dbxMapboxMapStore.centerGivenMargin$.pipe(first()).subscribe(() => {
132
140
  if (!this.isReadonlyOrDisabled) {
133
- this.ngZone.run(() => {
134
- this.setValue(center);
135
- });
141
+ this.setValue(center);
136
142
  }
137
143
  });
138
144
  });
@@ -198,47 +204,59 @@ export class DbxFormMapboxLatLngFieldComponent extends FieldType {
198
204
  this.formControl.markAsTouched();
199
205
  this.formControl.markAsDirty();
200
206
  }
201
- static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: DbxFormMapboxLatLngFieldComponent, deps: null, target: i0.ɵɵFactoryTarget.Component });
202
- static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.12", type: DbxFormMapboxLatLngFieldComponent, selector: "ng-component", providers: [provideMapboxStoreIfParentIsUnavailable()], usesInheritance: true, ngImport: i0, template: `
203
- <div class="dbx-mapbox-input-field" [ngClass]="(compactClass$ | async) ?? ''" [formGroup]="formGroup">
204
- <div *ngIf="showMap" class="dbx-mapbox-input-field-map">
205
- <mgl-map dbxMapboxMap>
206
- <mgl-marker [lngLat]="(latLng$ | async) || [0, 0]" [draggable]="!isReadonlyOrDisabled" (markerDragEnd)="onMarkerDragEnd($event)"></mgl-marker>
207
- </mgl-map>
208
- </div>
207
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: DbxFormMapboxLatLngFieldComponent, deps: null, target: i0.ɵɵFactoryTarget.Component });
208
+ static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "18.2.13", type: DbxFormMapboxLatLngFieldComponent, isStandalone: true, selector: "ng-component", providers: [provideMapboxStoreIfParentIsUnavailable()], usesInheritance: true, ngImport: i0, template: `
209
+ <div class="dbx-mapbox-input-field" [ngClass]="compactClassSignal()" [formGroup]="formGroup">
210
+ @if (showMap) {
211
+ <div class="dbx-mapbox-input-field-map">
212
+ <mgl-map dbxMapboxMap>
213
+ <mgl-marker [lngLat]="latLngSignal()" [draggable]="!isReadonlyOrDisabled" (markerDragEnd)="onMarkerDragEnd($event)"></mgl-marker>
214
+ </mgl-map>
215
+ </div>
216
+ }
209
217
  <div class="dbx-mapbox-input-field-input">
210
- <button *ngIf="showCenterButton" mat-icon-button (click)="flyToMarker()">
211
- <mat-icon>my_location</mat-icon>
212
- </button>
218
+ @if (showCenterButton) {
219
+ <button mat-icon-button (click)="flyToMarker()">
220
+ <mat-icon>my_location</mat-icon>
221
+ </button>
222
+ }
213
223
  <mat-form-field class="dbx-mapbox-input-field-input-field">
214
224
  <mat-label>Coordinates</mat-label>
215
225
  <input type="text" matInput [placeholder]="placeholder" [formControl]="formControl" />
216
- <mat-hint class="dbx-hint dbx-warn" *ngIf="useCurrentLocationDisabled$ | async">Could not access your current location.</mat-hint>
226
+ @if (useCurrentLocationDisabledSignal()) {
227
+ <mat-hint class="dbx-hint dbx-warn">Could not access your current location.</mat-hint>
228
+ }
217
229
  </mat-form-field>
218
230
  </div>
219
231
  </div>
220
- `, isInline: true, styles: [".dbx-mapbox-input-field .dbx-mapbox-input-field-map{height:220px;width:100%}.dbx-mapbox-input-field .dbx-mapbox-input-field-map mgl-map{height:100%;width:100%}.dbx-mapbox-input-field .dbx-mapbox-input-field-input{display:flex;align-items:center}.dbx-mapbox-input-field .dbx-mapbox-input-field-input .dbx-mapbox-input-field-input-field{width:calc(100% - 40px)}.dbx-mapbox-input-field-compact .dbx-latlng-field-input{min-height:120px;height:300px;max-height:calc(var(--vh100) * .5)}\n"], dependencies: [{ kind: "directive", type: i1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: i2.MatIcon, selector: "mat-icon", inputs: ["color", "inline", "svgIcon", "fontSet", "fontIcon"], exportAs: ["matIcon"] }, { kind: "component", type: i3.MatIconButton, selector: "button[mat-icon-button]", inputs: ["disabled", "disableRipple", "color"], exportAs: ["matButton"] }, { kind: "directive", type: i4.DbxMapboxMapDirective, selector: "[dbxMapboxMap]" }, { kind: "directive", type: i5.DefaultValueAccessor, selector: "input:not([type=checkbox])[formControlName],textarea[formControlName],input:not([type=checkbox])[formControl],textarea[formControl],input:not([type=checkbox])[ngModel],textarea[ngModel],[ngDefaultControl]" }, { kind: "directive", type: i5.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i5.NgControlStatusGroup, selector: "[formGroupName],[formArrayName],[ngModelGroup],[formGroup],form:not([ngNoForm]),[ngForm]" }, { kind: "directive", type: i5.FormControlDirective, selector: "[formControl]", inputs: ["formControl", "disabled", "ngModel"], outputs: ["ngModelChange"], exportAs: ["ngForm"] }, { kind: "directive", type: i5.FormGroupDirective, selector: "[formGroup]", inputs: ["formGroup"], outputs: ["ngSubmit"], exportAs: ["ngForm"] }, { kind: "directive", 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"] }, { kind: "component", type: i7.MatFormField, selector: "mat-form-field", inputs: ["hideRequiredMarker", "color", "floatLabel", "appearance", "subscriptSizing", "hintLabel"], exportAs: ["matFormField"] }, { kind: "directive", type: i7.MatLabel, selector: "mat-label" }, { kind: "directive", type: i7.MatHint, selector: "mat-hint", inputs: ["align", "id"] }, { kind: "component", type: i8.MapComponent, selector: "mgl-map", inputs: ["accessToken", "collectResourceTiming", "crossSourceCollisions", "customMapboxApiUrl", "fadeDuration", "hash", "refreshExpiredTiles", "failIfMajorPerformanceCaveat", "bearingSnap", "interactive", "pitchWithRotate", "clickTolerance", "attributionControl", "logoPosition", "maxTileCacheSize", "localIdeographFontFamily", "preserveDrawingBuffer", "trackResize", "transformRequest", "bounds", "antialias", "locale", "cooperativeGestures", "minZoom", "maxZoom", "minPitch", "maxPitch", "scrollZoom", "dragRotate", "touchPitch", "touchZoomRotate", "doubleClickZoom", "keyboard", "dragPan", "boxZoom", "style", "center", "maxBounds", "zoom", "bearing", "pitch", "fitBoundsOptions", "renderWorldCopies", "projection", "movingMethod", "movingOptions", "fitBounds", "fitScreenCoordinates", "centerWithPanTo", "panToOptions", "cursorStyle"], outputs: ["mapResize", "mapRemove", "mapMouseDown", "mapMouseUp", "mapMouseMove", "mapClick", "mapDblClick", "mapMouseOver", "mapMouseOut", "mapContextMenu", "mapTouchStart", "mapTouchEnd", "mapTouchMove", "mapTouchCancel", "mapWheel", "moveStart", "move", "moveEnd", "mapDragStart", "mapDrag", "mapDragEnd", "zoomStart", "zoomEvt", "zoomEnd", "rotateStart", "rotate", "rotateEnd", "pitchStart", "pitchEvt", "pitchEnd", "boxZoomStart", "boxZoomEnd", "boxZoomCancel", "webGlContextLost", "webGlContextRestored", "mapLoad", "mapCreate", "idle", "render", "mapError", "data", "styleData", "sourceData", "dataLoading", "styleDataLoading", "sourceDataLoading", "styleImageMissing", "resize", "remove", "mouseDown", "mouseUp", "mouseMove", "click", "dblClick", "mouseOver", "mouseOut", "contextMenu", "touchStart", "touchEnd", "touchMove", "touchCancel", "wheel", "dragStart", "drag", "dragEnd", "load", "error"] }, { kind: "component", type: i8.MarkerComponent, selector: "mgl-marker", inputs: ["offset", "anchor", "clickTolerance", "feature", "lngLat", "draggable", "popupShown", "className", "pitchAlignment", "rotationAlignment"], outputs: ["markerDragStart", "markerDragEnd", "markerDrag", "dragStart", "dragEnd", "drag"] }, { kind: "pipe", type: i1.AsyncPipe, name: "async" }] });
232
+ `, isInline: true, styles: [".dbx-mapbox-input-field .dbx-mapbox-input-field-map{height:220px;width:100%}.dbx-mapbox-input-field .dbx-mapbox-input-field-map mgl-map{height:100%;width:100%}.dbx-mapbox-input-field .dbx-mapbox-input-field-input{display:flex;align-items:center}.dbx-mapbox-input-field .dbx-mapbox-input-field-input .dbx-mapbox-input-field-input-field{width:calc(100% - 40px)}.dbx-mapbox-input-field-compact .dbx-latlng-field-input{min-height:120px;height:300px;max-height:calc(var(--vh100) * .5)}\n"], dependencies: [{ kind: "directive", type: NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "ngmodule", type: ReactiveFormsModule }, { kind: "directive", type: i1.DefaultValueAccessor, selector: "input:not([type=checkbox])[formControlName],textarea[formControlName],input:not([type=checkbox])[formControl],textarea[formControl],input:not([type=checkbox])[ngModel],textarea[ngModel],[ngDefaultControl]" }, { kind: "directive", type: i1.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i1.NgControlStatusGroup, selector: "[formGroupName],[formArrayName],[ngModelGroup],[formGroup],form:not([ngNoForm]),[ngForm]" }, { kind: "directive", type: i1.FormControlDirective, selector: "[formControl]", inputs: ["formControl", "disabled", "ngModel"], outputs: ["ngModelChange"], exportAs: ["ngForm"] }, { kind: "directive", type: i1.FormGroupDirective, selector: "[formGroup]", inputs: ["formGroup"], outputs: ["ngSubmit"], exportAs: ["ngForm"] }, { kind: "ngmodule", type: MatIconModule }, { kind: "component", type: i2.MatIcon, selector: "mat-icon", inputs: ["color", "inline", "svgIcon", "fontSet", "fontIcon"], exportAs: ["matIcon"] }, { kind: "ngmodule", type: DbxMapboxModule }, { kind: "directive", type: i3.DbxMapboxMapDirective, selector: "[dbxMapboxMap]" }, { kind: "component", type: i4.MapComponent, selector: "mgl-map", inputs: ["accessToken", "collectResourceTiming", "crossSourceCollisions", "customMapboxApiUrl", "fadeDuration", "hash", "refreshExpiredTiles", "failIfMajorPerformanceCaveat", "bearingSnap", "interactive", "pitchWithRotate", "clickTolerance", "attributionControl", "logoPosition", "maxTileCacheSize", "localIdeographFontFamily", "preserveDrawingBuffer", "trackResize", "transformRequest", "bounds", "antialias", "locale", "cooperativeGestures", "minZoom", "maxZoom", "minPitch", "maxPitch", "scrollZoom", "dragRotate", "touchPitch", "touchZoomRotate", "doubleClickZoom", "keyboard", "dragPan", "boxZoom", "style", "center", "maxBounds", "zoom", "bearing", "pitch", "fitBoundsOptions", "renderWorldCopies", "projection", "movingMethod", "movingOptions", "fitBounds", "fitScreenCoordinates", "centerWithPanTo", "panToOptions", "cursorStyle"], outputs: ["mapResize", "mapRemove", "mapMouseDown", "mapMouseUp", "mapMouseMove", "mapClick", "mapDblClick", "mapMouseOver", "mapMouseOut", "mapContextMenu", "mapTouchStart", "mapTouchEnd", "mapTouchMove", "mapTouchCancel", "mapWheel", "moveStart", "move", "moveEnd", "mapDragStart", "mapDrag", "mapDragEnd", "zoomStart", "zoomEvt", "zoomEnd", "rotateStart", "rotate", "rotateEnd", "pitchStart", "pitchEvt", "pitchEnd", "boxZoomStart", "boxZoomEnd", "boxZoomCancel", "webGlContextLost", "webGlContextRestored", "mapLoad", "mapCreate", "idle", "render", "mapError", "data", "styleData", "sourceData", "dataLoading", "styleDataLoading", "sourceDataLoading", "styleImageMissing", "load"] }, { kind: "component", type: i4.MarkerComponent, selector: "mgl-marker", inputs: ["offset", "anchor", "clickTolerance", "feature", "lngLat", "draggable", "popupShown", "className", "pitchAlignment", "rotationAlignment"], outputs: ["markerDragStart", "markerDragEnd", "markerDrag"] }, { kind: "ngmodule", type: MatButtonModule }, { kind: "component", type: i5.MatIconButton, selector: "button[mat-icon-button]", exportAs: ["matButton"] }, { kind: "ngmodule", type: MatFormFieldModule }, { kind: "component", type: i6.MatFormField, selector: "mat-form-field", inputs: ["hideRequiredMarker", "color", "floatLabel", "appearance", "subscriptSizing", "hintLabel"], exportAs: ["matFormField"] }, { kind: "directive", type: i6.MatLabel, selector: "mat-label" }, { kind: "directive", type: i6.MatHint, selector: "mat-hint", inputs: ["align", "id"] }, { kind: "ngmodule", type: MatInputModule }, { kind: "directive", 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"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
221
233
  }
222
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: DbxFormMapboxLatLngFieldComponent, decorators: [{
234
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: DbxFormMapboxLatLngFieldComponent, decorators: [{
223
235
  type: Component,
224
236
  args: [{ template: `
225
- <div class="dbx-mapbox-input-field" [ngClass]="(compactClass$ | async) ?? ''" [formGroup]="formGroup">
226
- <div *ngIf="showMap" class="dbx-mapbox-input-field-map">
227
- <mgl-map dbxMapboxMap>
228
- <mgl-marker [lngLat]="(latLng$ | async) || [0, 0]" [draggable]="!isReadonlyOrDisabled" (markerDragEnd)="onMarkerDragEnd($event)"></mgl-marker>
229
- </mgl-map>
230
- </div>
237
+ <div class="dbx-mapbox-input-field" [ngClass]="compactClassSignal()" [formGroup]="formGroup">
238
+ @if (showMap) {
239
+ <div class="dbx-mapbox-input-field-map">
240
+ <mgl-map dbxMapboxMap>
241
+ <mgl-marker [lngLat]="latLngSignal()" [draggable]="!isReadonlyOrDisabled" (markerDragEnd)="onMarkerDragEnd($event)"></mgl-marker>
242
+ </mgl-map>
243
+ </div>
244
+ }
231
245
  <div class="dbx-mapbox-input-field-input">
232
- <button *ngIf="showCenterButton" mat-icon-button (click)="flyToMarker()">
233
- <mat-icon>my_location</mat-icon>
234
- </button>
246
+ @if (showCenterButton) {
247
+ <button mat-icon-button (click)="flyToMarker()">
248
+ <mat-icon>my_location</mat-icon>
249
+ </button>
250
+ }
235
251
  <mat-form-field class="dbx-mapbox-input-field-input-field">
236
252
  <mat-label>Coordinates</mat-label>
237
253
  <input type="text" matInput [placeholder]="placeholder" [formControl]="formControl" />
238
- <mat-hint class="dbx-hint dbx-warn" *ngIf="useCurrentLocationDisabled$ | async">Could not access your current location.</mat-hint>
254
+ @if (useCurrentLocationDisabledSignal()) {
255
+ <mat-hint class="dbx-hint dbx-warn">Could not access your current location.</mat-hint>
256
+ }
239
257
  </mat-form-field>
240
258
  </div>
241
259
  </div>
242
- `, providers: [provideMapboxStoreIfParentIsUnavailable()], styles: [".dbx-mapbox-input-field .dbx-mapbox-input-field-map{height:220px;width:100%}.dbx-mapbox-input-field .dbx-mapbox-input-field-map mgl-map{height:100%;width:100%}.dbx-mapbox-input-field .dbx-mapbox-input-field-input{display:flex;align-items:center}.dbx-mapbox-input-field .dbx-mapbox-input-field-input .dbx-mapbox-input-field-input-field{width:calc(100% - 40px)}.dbx-mapbox-input-field-compact .dbx-latlng-field-input{min-height:120px;height:300px;max-height:calc(var(--vh100) * .5)}\n"] }]
260
+ `, providers: [provideMapboxStoreIfParentIsUnavailable()], imports: [NgClass, ReactiveFormsModule, MatIconModule, DbxMapboxModule, MatButtonModule, MatFormFieldModule, MatInputModule], changeDetection: ChangeDetectionStrategy.OnPush, standalone: true, styles: [".dbx-mapbox-input-field .dbx-mapbox-input-field-map{height:220px;width:100%}.dbx-mapbox-input-field .dbx-mapbox-input-field-map mgl-map{height:100%;width:100%}.dbx-mapbox-input-field .dbx-mapbox-input-field-input{display:flex;align-items:center}.dbx-mapbox-input-field .dbx-mapbox-input-field-input .dbx-mapbox-input-field-input-field{width:calc(100% - 40px)}.dbx-mapbox-input-field-compact .dbx-latlng-field-input{min-height:120px;height:300px;max-height:calc(var(--vh100) * .5)}\n"] }]
243
261
  }] });
244
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibGF0bG5nLmZpZWxkLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL3BhY2thZ2VzL2RieC1mb3JtL21hcGJveC9zcmMvbGliL2ZpZWxkL2xhdGxuZy9sYXRsbmcuZmllbGQuY29tcG9uZW50LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUNBLE9BQU8sRUFBRSxtQkFBbUIsRUFBRSxpQkFBaUIsRUFBRSxNQUFNLGtCQUFrQixDQUFDO0FBQzFFLE9BQU8sRUFBRSxTQUFTLEVBQUUsUUFBUSxFQUFFLE1BQU0sRUFBcUIsTUFBTSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBRXZGLE9BQU8sRUFBRSxTQUFTLEVBQUUsTUFBTSxzQkFBc0IsQ0FBQztBQUNqRCxPQUFPLEVBQUUsSUFBSSxFQUFFLEtBQUssRUFBRSxlQUFlLEVBQUUsTUFBTSxFQUFFLFdBQVcsRUFBRSxTQUFTLEVBQUUsU0FBUyxFQUFFLEdBQUcsRUFBYyxZQUFZLEVBQUUsU0FBUyxFQUFFLEVBQUUsRUFBRSxvQkFBb0IsRUFBRSxNQUFNLE1BQU0sQ0FBQztBQUNuSyxPQUFPLEVBQUUsc0JBQXNCLEVBQUUsV0FBVyxFQUFzQyxrQkFBa0IsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUM1SCxPQUFPLEVBQXVFLG9CQUFvQixFQUFnQixtQkFBbUIsRUFBRSxvQkFBb0IsRUFBRSxrQkFBa0IsRUFBdUIsaUJBQWlCLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDL08sT0FBTyxFQUFFLGtCQUFrQixFQUFFLE1BQU0sMEJBQTBCLENBQUM7QUFFOUQsT0FBTyxFQUFFLHVCQUF1QixFQUFFLGlCQUFpQixFQUErRCx1Q0FBdUMsRUFBRSxNQUFNLHlCQUF5QixDQUFDO0FBQzNMLE9BQU8sRUFBRSx1Q0FBdUMsRUFBRSxNQUFNLGlDQUFpQyxDQUFDOzs7Ozs7Ozs7O0FBRTFGLE1BQU0sQ0FBQyxNQUFNLG1EQUFtRCxHQUFHLG1DQUFtQyxDQUFDO0FBRXZH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RUFBRSxHQUFHLEVBQUUsR0FBRyxFQUFFLENBQUMsQ0FBQztpQkFDN0I7WUFDSCxDQUFDO1lBQ0QsS0FBSyxFQUFFLEdBQUcsRUFBRTtnQkFDVixJQUFJLENBQUMsMkJBQTJCLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxDQUFDO1lBQzlDLENBQUM7U0FDRixDQUFDLENBQUM7SUFDTCxDQUFDO0lBRUQsZUFBZSxDQUFDLE1BQWM7UUFDNUIsSUFBSSxDQUFDLFFBQVEsQ0FBQyxNQUFNLENBQUMsU0FBUyxFQUFFLENBQUMsQ0FBQztJQUNwQyxDQUFDO0lBRUQsUUFBUSxDQUFDLE1BQTJCO1FBQ2xDLElBQUksQ0FBQyxXQUFXLENBQUMsUUFBUSxDQUFDLE1BQU0sQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDLHFCQUFxQixDQUFDLE1BQU0sQ0FBQyxDQUFDLENBQUMsQ0FBQyxNQUFNLENBQUMsQ0FBQztRQUNoRixJQUFJLENBQUMsV0FBVyxDQUFDLGFBQWEsRUFBRSxDQUFDO1FBQ2pDLElBQUksQ0FBQyxXQUFXLENBQUMsV0FBVyxFQUFFLENBQUM7SUFDakMsQ0FBQzt3R0FuT1UsaUNBQWlDOzRGQUFqQyxpQ0FBaUMsdUNBSGpDLENBQUMsdUNBQXVDLEVBQUUsQ0FBQyxpREFuQjVDOzs7Ozs7Ozs7Ozs7Ozs7Ozs7R0FrQlQ7OzRGQUlVLGlDQUFpQztrQkF2QjdDLFNBQVM7K0JBQ0U7Ozs7Ozs7Ozs7Ozs7Ozs7OztHQWtCVCxhQUNVLENBQUMsdUNBQXVDLEVBQUUsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEFic3RyYWN0Q29udHJvbCwgRm9ybUdyb3VwIH0gZnJvbSAnQGFuZ3VsYXIvZm9ybXMnO1xuaW1wb3J0IHsgQ29tcGFjdENvbnRleHRTdG9yZSwgbWFwQ29tcGFjdE1vZGVPYnMgfSBmcm9tICdAZGVyZWVrYi9kYngtd2ViJztcbmltcG9ydCB7IENvbXBvbmVudCwgSW5qZWN0b3IsIE5nWm9uZSwgT25EZXN0cm95LCBPbkluaXQsIGluamVjdCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgRmllbGRUeXBlQ29uZmlnLCBGb3JtbHlGaWVsZFByb3BzIH0gZnJvbSAnQG5neC1mb3JtbHkvY29yZSc7XG5pbXBvcnQgeyBGaWVsZFR5cGUgfSBmcm9tICdAbmd4LWZvcm1seS9tYXRlcmlhbCc7XG5pbXBvcnQgeyBza2lwLCBmaXJzdCwgQmVoYXZpb3JTdWJqZWN0LCBmaWx0ZXIsIHNoYXJlUmVwbGF5LCBzdGFydFdpdGgsIHN3aXRjaE1hcCwgbWFwLCBPYnNlcnZhYmxlLCB0aHJvdHRsZVRpbWUsIHNraXBXaGlsZSwgb2YsIGRpc3RpbmN0VW50aWxDaGFuZ2VkIH0gZnJvbSAncnhqcyc7XG5pbXBvcnQgeyBhc09ic2VydmFibGVGcm9tR2V0dGVyLCBmaWx0ZXJNYXliZSwgT2JzZXJ2YWJsZUZhY3RvcnlXaXRoUmVxdWlyZWRJbnB1dCwgU3Vic2NyaXB0aW9uT2JqZWN0IH0gZnJvbSAnQGRlcmVla2Ivcnhqcyc7XG5pbXBvcnQgeyBNYXliZSwgTGF0TG5nUG9pbnQsIExhdExuZ1BvaW50RnVuY3Rpb25Db25maWcsIExhdExuZ1N0cmluZ0Z1bmN0aW9uLCBsYXRMbmdTdHJpbmdGdW5jdGlvbiwgTWlsbGlzZWNvbmRzLCBsYXRMbmdQb2ludEZ1bmN0aW9uLCBpc0RlZmF1bHRMYXRMbmdQb2ludCwgaXNWYWxpZExhdExuZ1BvaW50LCBMYXRMbmdQb2ludEZ1bmN0aW9uLCBpc1NhbWVMYXRMbmdQb2ludCB9IGZyb20gJ0BkZXJlZWtiL3V0aWwnO1xuaW1wb3J0IHsgR2VvbG9jYXRpb25TZXJ2aWNlIH0gZnJvbSAnQG5nLXdlYi1hcGlzL2dlb2xvY2F0aW9uJztcbmltcG9ydCB7IE1hcmtlciB9IGZyb20gJ21hcGJveC1nbCc7XG5pbXBvcnQgeyBEYnhNYXBib3hJbmplY3Rpb25TdG9yZSwgRGJ4TWFwYm94TWFwU3RvcmUsIERieE1hcGJveE1hcmtlckRpc3BsYXlDb25maWcsIE1hcGJveEVhc2VUbywgTWFwYm94Wm9vbUxldmVsLCBwcm92aWRlTWFwYm94U3RvcmVJZlBhcmVudElzVW5hdmFpbGFibGUgfSBmcm9tICdAZGVyZWVrYi9kYngtd2ViL21hcGJveCc7XG5pbXBvcnQgeyBEYnhGb3JtTWFwYm94TGF0TG5nRmllbGRNYXJrZXJDb21wb25lbnQgfSBmcm9tICcuL2xhdGxuZy5maWVsZC5tYXJrZXIuY29tcG9uZW50JztcblxuZXhwb3J0IGNvbnN0IERFRkFVTFRfREJYX0ZPUk1fTUFQQk9YX0xBVF9MTkdfRklFTERfSU5KRUNUSU9OX0tFWSA9ICdEYnhGb3JtTWFwYm94TGF0TG5nRmllbGRDb21wb25lbnQnO1xuXG5leHBvcnQgY29uc3QgREVGQVVMVF9EQlhfRk9STV9NQVBCT1hfTEFUX0xOR19NQVJLRVJfQ09ORklHOiBEYnhNYXBib3hNYXJrZXJEaXNwbGF5Q29uZmlnID0ge1xuICBpY29uOiAncGluX2Ryb3AnXG59O1xuXG5leHBvcnQgaW50ZXJmYWNlIERieEZvcm1NYXBib3hMYXRMbmdDb21wb25lbnRGaWVsZFByb3BzIGV4dGVuZHMgRm9ybWx5RmllbGRQcm9wcyB7XG4gIC8qKlxuICAgKiAoT3B0aW9uYWwpIFdoZXRoZXIgb3Igbm90IHRoZSBzaG93IHRoZSBtYXAuIElmIHRoZSBtYXAgaXMgbm90IHNob3duLCByZWxpZXMgb24gdGhlIGNlbnRlciBvZiB0aGUgcGFyZW50IG1hcCB0byBkZXRlcm1pbmUgcG9zaXRpb24uXG4gICAqXG4gICAqIERlZmF1bHRzIHRvIHRydWUuXG4gICAqXG4gICAqIENhc2VzIHdoZXJlIHRoaXMgd291bGQgYmUgc2V0IGZhbHNlIGlzIGlmIGFub3RoZXIgbWFwIGlzIGJlaW5nIHVzZWQuXG4gICAqL1xuICBzaG93TWFwPzogYm9vbGVhbjtcbiAgLyoqXG4gICAqIFdoZXRoZXIgb3Igbm90IHRvIGRpc3BsYXkgdGhlIGNlbnRlciBidXR0b24uIElzIHNldCB0byBmYWxzZSBpZiBzZWxlY3RMb2NhdGlvbk9uTWFwRHJhZyBpcyB0cnVlLlxuICAgKi9cbiAgc2hvd0NlbnRlckJ1dHRvbj86IGJvb2xlYW47XG4gIC8qKlxuICAgKiBXaGV0aGVyIG9yIG5vdCB0byBzZXQgdGhlIGNlbnRlciBvZiB0aGUgbWFwIG9uIHRoZSBsb2NhdGlvbiB3aGVuIHNldC4gRGVmYXVsdHMgdG8gdHJ1ZS5cbiAgICovXG4gIHNldENlbnRlck9uTG9jYXRpb25TZXQ/OiBib29sZWFuO1xuICAvKipcbiAgICogV2hldGhlciBvciBub3QgdG8gZW5hYmxlIGRyYWdnaW5nIHRoZSBtYXAgdG8gc2VsZWN0IHRoZSBsb2NhdGlvbi4gRGVmYXVsdHMgdG8gdHJ1ZS5cbiAgICpcbiAgICogT25seSBhcHBsaWNhYmxlIHdoZW4gc2hvd01hcCBpcyBmYWxzZS5cbiAgICovXG4gIHNlbGVjdExvY2F0aW9uT25NYXBEcmFnPzogYm9vbGVhbjtcbiAgLyoqXG4gICAqIFdoZXRoZXIgb3Igbm90IHRvIGVuYWJsZSBjbGlja2luZyB0aGUgbWFwIHRvIHNlbGVjdCB0aGUgbG9jYXRpb24uIERlZmF1bHRzIHRvIGZhbHNlLlxuICAgKlxuICAgKiBPbmx5IGFwcGxpY2FibGUgd2hlbiBzaG93TWFwIGlzIGZhbHNlLlxuICAgKi9cbiAgc2VsZWN0TG9jYXRpb25Pbk1hcENsaWNrPzogYm9vbGVhbjtcbiAgLyoqXG4gICAqIChPcHRpb25hbCkgWm9vbSB0byBzdGFydCB0aGUgbWFwIGF0LiBJZ25vcmVkIGlmIHRoZSBzaG93TWFwIGlzIGZhbHNlLlxuICAgKi9cbiAgem9vbT86IE1hcGJveFpvb21MZXZlbDtcbiAgLyoqXG4gICAqIFRpbWUgdW50aWwgcmVjZW50ZXJpbmcgb24gdGhlIG1hcmtlci4gSWYgdGhlIHRpbWUgaXMgMCB0aGVuIHRoZSByZWNlbnRlcmluZyBpcyBkaXNhYmxlZC5cbiAgICovXG4gIHJlY2VudGVyVGltZT86IE1pbGxpc2Vjb25kcztcbiAgbGF0TG5nQ29uZmlnPzogTGF0TG5nUG9pbnRGdW5jdGlvbkNvbmZpZztcbiAgLyoqXG4gICAqIFVuaXF1ZSBpbmplY3Rpb24ga2V5LlxuICAgKlxuICAgKiBJZiBub3QgZGVmaW5lZCwgdGhlIGRlZmF1bHQga2V5IHdpbGwgYmUgdXNlZC5cbiAgICpcbiAgICogSWYgZmFsc2UgaXMgcGFzc2VkLCB0aGUgbWFya2VyIHdpbGwgbm90IGJlIGNvbmZpZ3VyZWQgaW4gdGhlIGluamVjdGlvbiBzdG9yZS5cbiAgICovXG4gIG1hcEluamVjdGlvbktleT86IE1heWJlPHN0cmluZyB8IGZhbHNlPjtcbiAgLyoqXG4gICAqIE1hcmtlciBjb25maWd1cmF0aW9uIG9yIGZhY3RvcnkuIElmIGZhbHNlIGlzIHBhc3NlZCwgdGhlIG1hcmtlciB3aWxsIG5vdCBiZSBkaXNwbGF5ZWQuXG4gICAqL1xuICBtYXJrZXJDb25maWc/OiBmYWxzZSB8IE9ic2VydmFibGVGYWN0b3J5V2l0aFJlcXVpcmVkSW5wdXQ8RGJ4TWFwYm94TWFya2VyRGlzcGxheUNvbmZpZyB8IGZhbHNlLCBEYnhGb3JtTWFwYm94TGF0TG5nRmllbGRDb21wb25lbnQ+O1xufVxuXG4vKlxuICBUT0RPOiBSZS1hZGQgbWVudSBmb3IgcGlja2luZyBhIG5ldyBsb2NhdGlvbiwgaW5jbHVkaW5nIHVzaW5nIHRoZSBjdXJyZW50IGxvY2F0aW9uLlxuIDxidXR0b24gbWF0LWljb24tYnV0dG9uIChjbGljayk9XCJ1c2VDdXJyZW50TG9jYXRpb24oKVwiIFtkaXNhYmxlZF09XCJpc1JlYWRvbmx5T3JEaXNhYmxlZCB8fCAodXNlQ3VycmVudExvY2F0aW9uRGlzYWJsZWQkIHwgYXN5bmMpXCI+XG4gICAgICAgICAgPG1hdC1pY29uPm15X2xvY2F0aW9uPC9tYXQtaWNvbj5cbiAgICAgICAgPC9idXR0b24+XG4gKi9cblxuQENvbXBvbmVudCh7XG4gIHRlbXBsYXRlOiBgXG4gICAgPGRpdiBjbGFzcz1cImRieC1tYXBib3gtaW5wdXQtZmllbGRcIiBbbmdDbGFzc109XCIoY29tcGFjdENsYXNzJCB8IGFzeW5jKSA/PyAnJ1wiIFtmb3JtR3JvdXBdPVwiZm9ybUdyb3VwXCI+XG4gICAgICA8ZGl2ICpuZ0lmPVwic2hvd01hcFwiIGNsYXNzPVwiZGJ4LW1hcGJveC1pbnB1dC1maWVsZC1tYXBcIj5cbiAgICAgICAgPG1nbC1tYXAgZGJ4TWFwYm94TWFwPlxuICAgICAgICAgIDxtZ2wtbWFya2VyIFtsbmdMYXRdPVwiKGxhdExuZyQgfCBhc3luYykgfHwgWzAsIDBdXCIgW2RyYWdnYWJsZV09XCIhaXNSZWFkb25seU9yRGlzYWJsZWRcIiAobWFya2VyRHJhZ0VuZCk9XCJvbk1hcmtlckRyYWdFbmQoJGV2ZW50KVwiPjwvbWdsLW1hcmtlcj5cbiAgICAgICAgPC9tZ2wtbWFwPlxuICAgICAgPC9kaXY+XG4gICAgICA8ZGl2IGNsYXNzPVwiZGJ4LW1hcGJveC1pbnB1dC1maWVsZC1pbnB1dFwiPlxuICAgICAgICA8YnV0dG9uICpuZ0lmPVwic2hvd0NlbnRlckJ1dHRvblwiIG1hdC1pY29uLWJ1dHRvbiAoY2xpY2spPVwiZmx5VG9NYXJrZXIoKVwiPlxuICAgICAgICAgIDxtYXQtaWNvbj5teV9sb2NhdGlvbjwvbWF0LWljb24+XG4gICAgICAgIDwvYnV0dG9uPlxuICAgICAgICA8bWF0LWZvcm0tZmllbGQgY2xhc3M9XCJkYngtbWFwYm94LWlucHV0LWZpZWxkLWlucHV0LWZpZWxkXCI+XG4gICAgICAgICAgPG1hdC1sYWJlbD5Db29yZGluYXRlczwvbWF0LWxhYmVsPlxuICAgICAgICAgIDxpbnB1dCB0eXBlPVwidGV4dFwiIG1hdElucHV0IFtwbGFjZWhvbGRlcl09XCJwbGFjZWhvbGRlclwiIFtmb3JtQ29udHJvbF09XCJmb3JtQ29udHJvbFwiIC8+XG4gICAgICAgICAgPG1hdC1oaW50IGNsYXNzPVwiZGJ4LWhpbnQgZGJ4LXdhcm5cIiAqbmdJZj1cInVzZUN1cnJlbnRMb2NhdGlvbkRpc2FibGVkJCB8IGFzeW5jXCI+Q291bGQgbm90IGFjY2VzcyB5b3VyIGN1cnJlbnQgbG9jYXRpb24uPC9tYXQtaGludD5cbiAgICAgICAgPC9tYXQtZm9ybS1maWVsZD5cbiAgICAgIDwvZGl2PlxuICAgIDwvZGl2PlxuICBgLFxuICBwcm92aWRlcnM6IFtwcm92aWRlTWFwYm94U3RvcmVJZlBhcmVudElzVW5hdmFpbGFibGUoKV0sXG4gIHN0eWxlVXJsczogWycuLi9tYXBib3guZmllbGQuY29tcG9uZW50LnNjc3MnXVxufSlcbmV4cG9ydCBjbGFzcyBEYnhGb3JtTWFwYm94TGF0TG5nRmllbGRDb21wb25lbnQ8VCBleHRlbmRzIERieEZvcm1NYXBib3hMYXRMbmdDb21wb25lbnRGaWVsZFByb3BzID0gRGJ4Rm9ybU1hcGJveExhdExuZ0NvbXBvbmVudEZpZWxkUHJvcHM+IGV4dGVuZHMgRmllbGRUeXBlPEZpZWxkVHlwZUNvbmZpZzxUPj4gaW1wbGVtZW50cyBPbkluaXQsIE9uRGVzdHJveSB7XG4gIHByaXZhdGUgcmVhZG9ubHkgX2dlb2xvY2F0aW9uU2VydmljZSA9IGluamVjdChHZW9sb2NhdGlvblNlcnZpY2UpO1xuXG4gIHJlYWRvbmx5IGNvbXBhY3QgPSBpbmplY3QoQ29tcGFjdENvbnRleHRTdG9yZSwgeyBvcHRpb25hbDogdHJ1ZSB9KTtcbiAgcmVhZG9ubHkgZGJ4TWFwYm94SW5qZWN0aW9uU3RvcmUgPSBpbmplY3QoRGJ4TWFwYm94SW5qZWN0aW9uU3RvcmUsIHsgb3B0aW9uYWw6IHRydWUgfSk7XG4gIHJlYWRvbmx5IGRieE1hcGJveE1hcFN0b3JlID0gaW5qZWN0KERieE1hcGJveE1hcFN0b3JlKTtcbiAgcmVhZG9ubHkgbmdab25lID0gaW5qZWN0KE5nWm9uZSk7XG4gIHJlYWRvbmx5IGluamVjdG9yID0gaW5qZWN0KEluamVjdG9yKTtcblxuICBwcml2YXRlIF9sYXRMbmdTdHJpbmdGdW5jdGlvbiE6IExhdExuZ1N0cmluZ0Z1bmN0aW9uO1xuICBwcml2YXRlIF9sYXRMbmdQb2ludEZ1bmN0aW9uITogTGF0TG5nUG9pbnRGdW5jdGlvbjtcblxuICByZWFkb25seSBjb21wYWN0Q2xhc3MkID0gbWFwQ29tcGFjdE1vZGVPYnModGhpcy5jb21wYWN0Py5tb2RlJCwge1xuICAgIGNvbXBhY3Q6ICdkYngtbWFwYm94LWlucHV0LWZpZWxkLWNvbXBhY3QnXG4gIH0pO1xuXG4gIHByaXZhdGUgX3VzZUN1cnJlbnRMb2NhdGlvbkRpc2FibGVkID0gbmV3IEJlaGF2aW9yU3ViamVjdDxib29sZWFuPihmYWxzZSk7XG4gIHJlYWRvbmx5IHVzZUN1cnJlbnRMb2NhdGlvbkRpc2FibGVkJCA9IHRoaXMuX3VzZUN1cnJlbnRMb2NhdGlvbkRpc2FibGVkLmFzT2JzZXJ2YWJsZSgpO1xuXG4gIHByaXZhdGUgX3N1YiA9IG5ldyBTdWJzY3JpcHRpb25PYmplY3QoKTtcbiAgcHJpdmF0ZSBfZ2VvU3ViID0gbmV3IFN1YnNjcmlwdGlvbk9iamVjdCgpO1xuICBwcml2YXRlIF9jZW50ZXJTdWIgPSBuZXcgU3Vic2NyaXB0aW9uT2JqZWN0KCk7XG4gIHByaXZhdGUgX2ZseVRvQ2VudGVyU3ViID0gbmV3IFN1YnNjcmlwdGlvbk9iamVjdCgpO1xuICBwcml2YXRlIF9jbGlja1N1YiA9IG5ldyBTdWJzY3JpcHRpb25PYmplY3QoKTtcbiAgcHJpdmF0ZSBfem9vbSA9IG5ldyBCZWhhdmlvclN1YmplY3Q8TWFwYm94Wm9vbUxldmVsPigxMik7XG4gIHByaXZhdGUgX21hcmtlckNvbmZpZyA9IG5ldyBCZWhhdmlvclN1YmplY3Q8T2JzZXJ2YWJsZTxEYnhNYXBib3hNYXJrZXJEaXNwbGF5Q29uZmlnIHwgZmFsc2U+PihvZihERUZBVUxUX0RCWF9GT1JNX01BUEJPWF9MQVRfTE5HX01BUktFUl9DT05GSUcpKTtcblxuICBwcml2YXRlIF9mb3JtQ29udHJvbE9icyA9IG5ldyBCZWhhdmlvclN1YmplY3Q8TWF5YmU8QWJzdHJhY3RDb250cm9sPj4odW5kZWZpbmVkKTtcbiAgcmVhZG9ubHkgZm9ybUNvbnRyb2wkID0gdGhpcy5fZm9ybUNvbnRyb2xPYnMucGlwZShmaWx0ZXJNYXliZSgpKTtcblxuICByZWFkb25seSB2YWx1ZSQgPSB0aGlzLmZvcm1Db250cm9sJC5waXBlKFxuICAgIHN3aXRjaE1hcCgoY29udHJvbCkgPT4gY29udHJvbC52YWx1ZUNoYW5nZXMucGlwZShzdGFydFdpdGgoY29udHJvbC52YWx1ZSkpKSxcbiAgICBzaGFyZVJlcGxheSgxKVxuICApO1xuXG4gIHJlYWRvbmx5IGxhdExuZyQ6IE9ic2VydmFibGU8TGF0TG5nUG9pbnQ+ID0gdGhpcy52YWx1ZSQucGlwZShcbiAgICBmaWx0ZXJNYXliZSgpLFxuICAgIG1hcCgoeCkgPT4gdGhpcy5fbGF0TG5nUG9pbnRGdW5jdGlvbih4KSksXG4gICAgZGlzdGluY3RVbnRpbENoYW5nZWQ8TGF0TG5nUG9pbnQ+KGlzU2FtZUxhdExuZ1BvaW50KSxcbiAgICBzaGFyZVJlcGxheSgxKVxuICApO1xuXG4gIHJlYWRvbmx5IG5vblplcm9MYXRMbmckOiBPYnNlcnZhYmxlPExhdExuZ1BvaW50PiA9IHRoaXMubGF0TG5nJC5waXBlKFxuICAgIC8qKlxuICAgICAqIENlbnRlciBvYnNlcnZhYmxlIHBhc3NlZCB0byB0aGUgc3RvcmUuIERvIG5vdCBwYXNzIGludmFsaWQgcG9pbnRzLlxuICAgICAqXG4gICAgICogQWxzbyBza2lwIGFueSBpbml0aWFsIDAsMCB2YWx1ZXMgc28gdGhlIGNlbnRlciBkb2Vzbid0IHBvdGVudGlhbGx5IFwid2hpcFwiIGZyb20gMCwwIHRvIGEgZmluYWwgbG9hZGVkIHZhbHVlLlxuICAgICAqL1xuICAgIHNraXBXaGlsZTxMYXRMbmdQb2ludD4oaXNEZWZhdWx0TGF0TG5nUG9pbnQpLFxuICAgIGZpbHRlcihpc1ZhbGlkTGF0TG5nUG9pbnQpXG4gICk7XG5cbiAgcmVhZG9ubHkgem9vbSQgPSB0aGlzLl96b29tLmFzT2JzZXJ2YWJsZSgpO1xuICByZWFkb25seSBtYXJrZXJDb25maWckID0gdGhpcy5fbWFya2VyQ29uZmlnLmFzT2JzZXJ2YWJsZSgpLnBpcGUoXG4gICAgc3dpdGNoTWFwKCh4KSA9PiB4KSxcbiAgICBzaGFyZVJlcGxheSgxKVxuICApO1xuXG4gIGdldCB6b29tKCk6IE1hcGJveFpvb21MZXZlbCB7XG4gICAgcmV0dXJuIE1hdGgubWluKHRoaXMuZmllbGQucHJvcHMuem9vbSB8fCAxMiwgMTgpO1xuICB9XG5cbiAgZ2V0IGZvcm1Hcm91cE5hbWUoKTogc3RyaW5nIHtcbiAgICByZXR1cm4gdGhpcy5maWVsZC5rZXkgYXMgc3RyaW5nO1xuICB9XG5cbiAgZ2V0IGZvcm1Hcm91cCgpOiBGb3JtR3JvdXAge1xuICAgIHJldHVybiB0aGlzLmZvcm0gYXMgRm9ybUdyb3VwO1xuICB9XG5cbiAgZ2V0IGxhYmVsKCk6IE1heWJlPHN0cmluZz4ge1xuICAgIHJldHVybiB0aGlzLmZpZWxkLnByb3BzPy5sYWJlbDtcbiAgfVxuXG4gIGdldCBkZXNjcmlwdGlvbigpOiBNYXliZTxzdHJpbmc+IHtcbiAgICByZXR1cm4gdGhpcy5wcm9wcy5kZXNjcmlwdGlvbjtcbiAgfVxuXG4gIGdldCBpc1JlYWRvbmx5T3JEaXNhYmxlZCgpIHtcbiAgICByZXR1cm4gdGhpcy5wcm9wcy5yZWFkb25seSB8fCB0aGlzLmRpc2FibGVkO1xuICB9XG5cbiAgZ2V0IHNob3dNYXAoKTogYm9vbGVhbiB7XG4gICAgcmV0dXJuIHRoaXMuZmllbGQucHJvcHMuc2hvd01hcCA/PyB0cnVlO1xuICB9XG5cbiAgZ2V0IHNlbGVjdExvY2F0aW9uT25NYXBEcmFnKCk6IGJvb2xlYW4ge1xuICAgIHJldHVybiB0aGlzLmZpZWxkLnByb3BzLnNlbGVjdExvY2F0aW9uT25NYXBEcmFnID8/IHRydWU7XG4gIH1cblxuICBnZXQgc2VsZWN0TG9jYXRpb25Pbk1hcENsaWNrKCk6IGJvb2xlYW4ge1xuICAgIHJldHVybiB0aGlzLmZpZWxkLnByb3BzLnNlbGVjdExvY2F0aW9uT25NYXBDbGljayA/PyBmYWxzZTtcbiAgfVxuXG4gIGdldCBzZXRDZW50ZXJPbkxvY2F0aW9uU2V0KCkge1xuICAgIHJldHVybiB0aGlzLmZpZWxkLnByb3BzLnNldENlbnRlck9uTG9jYXRpb25TZXQgPz8gdHJ1ZTtcbiAgfVxuXG4gIGdldCBzaG93Q2VudGVyQnV0dG9uKCkge1xuICAgIHJldHVybiAhdGhpcy5zZWxlY3RMb2NhdGlvbk9uTWFwRHJhZyAmJiB0aGlzLnByb3BzLnNob3dDZW50ZXJCdXR0b24gIT09IGZhbHNlO1xuICB9XG5cbiAgZ2V0IHJlY2VudGVyVGltZSgpOiBNaWxsaXNlY29uZHMge1xuICAgIHJldHVybiB0aGlzLmZpZWxkLnByb3BzLnJlY2VudGVyVGltZSB8fCAxMCAqIDEwMDA7XG4gIH1cblxuICBnZXQgdXNlQ3VycmVudExvY2F0aW9uRGlzYWJsZWQoKSB7XG4gICAgcmV0dXJuIHRoaXMuX3VzZUN1cnJlbnRMb2NhdGlvbkRpc2FibGVkO1xuICB9XG5cbiAgZ2V0IG1hcEluamVjdGlvbktleSgpIHtcbiAgICByZXR1cm4gdGhpcy5maWVsZC5wcm9wcy5tYXBJbmplY3Rpb25LZXk7XG4gIH1cblxuICBnZXQgbWFya2VyQ29uZmlnKCkge1xuICAgIHJldHVybiB0aGlzLmZpZWxkLnByb3BzLm1hcmtlckNvbmZpZztcbiAgfVxuXG4gIG5nT25Jbml0KCk6IHZvaWQge1xuICAgIGNvbnN0IGxhdExuZ1BvaW50Q29uZmlnID0geyAuLi50aGlzLmZpZWxkLnByb3BzLmxhdExuZ0NvbmZpZywgd3JhcDogdGhpcy5maWVsZC5wcm9wcy5sYXRMbmdDb25maWc/LndyYXAgfHwgZmFsc2UsIHZhbGlkYXRlOiB0aGlzLmZpZWxkLnByb3BzLmxhdExuZ0NvbmZpZz8udmFsaWRhdGUgfHwgZmFsc2UsIHByZWNpc2lvblJvdW5kaW5nOiB0aGlzLmZpZWxkLnByb3BzLmxhdExuZ0NvbmZpZz8ucHJlY2lzaW9uUm91bmRpbmcgPz8gJ3JvdW5kJyB9O1xuICAgIHRoaXMuX2xhdExuZ1N0cmluZ0Z1bmN0aW9uID0gbGF0TG5nU3RyaW5nRnVuY3Rpb24obGF0TG5nUG9pbnRDb25maWcpO1xuICAgIHRoaXMuX2xhdExuZ1BvaW50RnVuY3Rpb24gPSBsYXRMbmdQb2ludEZ1bmN0aW9uKGxhdExuZ1BvaW50Q29uZmlnKTtcblxuICAgIHRoaXMuX2Zvcm1Db250cm9sT2JzLm5leHQodGhpcy5mb3JtQ29udHJvbCk7XG4gICAgdGhpcy5fem9vbS5uZXh0KHRoaXMuem9vbSk7XG5cbiAgICBpZiAodGhpcy5zZXRDZW50ZXJPbkxvY2F0aW9uU2V0KSB7XG4gICAgICB0aGlzLl9jZW50ZXJTdWIuc3Vic2NyaXB0aW9uID0gdGhpcy5kYnhNYXBib3hNYXBTdG9yZS5zZXRDZW50ZXIodGhpcy5ub25aZXJvTGF0TG5nJCk7XG4gICAgfVxuXG4gICAgaWYgKHRoaXMuc2hvd01hcCkge1xuICAgICAgLy8gU2V0IHpvb20gb25seSBpZiBzaG93TWFwIGlzIHRydWVcbiAgICAgIHRoaXMuZGJ4TWFwYm94TWFwU3RvcmUuc2V0Wm9vbSh0aGlzLnpvb20kKTtcblxuICAgICAgLy8gcmVjZW50ZXIgcGVyaW9kaWNhbGx5XG4gICAgICBpZiAodGhpcy5yZWNlbnRlclRpbWUgPiAwKSB7XG4gICAgICAgIHRoaXMuX2ZseVRvQ2VudGVyU3ViLnN1YnNjcmlwdGlvbiA9IHRoaXMuZGJ4TWFwYm94TWFwU3RvcmUuY2VudGVyJC5waXBlKHNraXAoMSksIHRocm90dGxlVGltZSh0aGlzLnJlY2VudGVyVGltZSwgdW5kZWZpbmVkLCB7IGxlYWRpbmc6IGZhbHNlLCB0cmFpbGluZzogdHJ1ZSB9KSkuc3Vic2NyaWJlKCgpID0+IHtcbiAgICAgICAgICB0aGlzLmZseVRvTWFya2VyKCk7XG4gICAgICAgIH0pO1xuICAgICAgfVxuICAgIH0gZWxzZSB7XG4gICAgICAvLyB1c2UgdGhlIGNlbnRlciBvZiB0aGUgbWFwIHRvIHNldCBsb2NhdGlvbnNcbiAgICAgIGlmICh0aGlzLnNlbGVjdExvY2F0aW9uT25NYXBEcmFnKSB7XG4gICAgICAgIHRoaXMuX3N1Yi5zdWJzY3JpcHRpb24gPSB0aGlzLmRieE1hcGJveE1hcFN0b3JlLmNlbnRlciQuc3Vic2NyaWJlKChjZW50ZXIpID0+IHtcbiAgICAgICAgICB0aGlzLmRieE1hcGJveE1hcFN0b3JlLmNlbnRlckdpdmVuTWFyZ2luJC5waXBlKGZpcnN0KCkpLnN1YnNjcmliZSgoKSA9PiB7XG4gICAgICAgICAgICBpZiAoIXRoaXMuaXNSZWFkb25seU9yRGlzYWJsZWQpIHtcbiAgICAgICAgICAgICAgdGhpcy5uZ1pvbmUucnVuKCgpID0+IHtcbiAgICAgICAgICAgICAgICB0aGlzLnNldFZhbHVlKGNlbnRlcik7XG4gICAgICAgICAgICAgIH0pO1xuICAgICAgICAgICAgfVxuICAgICAgICAgIH0pO1xuICAgICAgICB9KTtcbiAgICAgIH1cblxuICAgICAgLy8gZW5hYmxlIHNlbGVjdGluZyB0aGUgbG9jYXRpb24gb24gYSBtYXAgY2xpY2tcbiAgICAgIGlmICh0aGlzLnNlbGVjdExvY2F0aW9uT25NYXBDbGljaykge1xuICAgICAgICB0aGlzLl9jbGlja1N1Yi5zdWJzY3JpcHRpb24gPSB0aGlzLmRieE1hcGJveE1hcFN0b3JlLmNsaWNrRXZlbnQkLnN1YnNjcmliZSgoeCkgPT4ge1xuICAgICAgICAgIGlmICh4Py50eXBlID09PSAnY2xpY2snKSB7XG4gICAgICAgICAgICB0aGlzLnNldFZhbHVlKHgubG5nTGF0KTtcbiAgICAgICAgICB9XG4gICAgICAgIH0pO1xuICAgICAgfVxuICAgIH1cblxuICAgIGlmICh0aGlzLnByb3BzLnJlYWRvbmx5KSB7XG4gICAgICB0aGlzLmZvcm1Db250cm9sLmRpc2FibGUoKTtcbiAgICB9XG5cbiAgICAvLyBBZGQgdGhlIG1hcmtlciB0byB0aGUgaW5qZWN0aW9uIHN0b3JlIGZvciBkaXNwbGF5XG4gICAgaWYgKHRoaXMuZGJ4TWFwYm94SW5qZWN0aW9uU3RvcmUpIHtcbiAgICAgIGlmICh0aGlzLm1hcmtlckNvbmZpZyAhPSBudWxsKSB7XG4gICAgICAgIHRoaXMuX21hcmtlckNvbmZpZy5uZXh0KHRoaXMubWFya2VyQ29uZmlnID09PSBmYWxzZSA/IG9mKGZhbHNlKSA6IGFzT2JzZXJ2YWJsZUZyb21HZXR0ZXIodGhpcy5tYXJrZXJDb25maWcsIHRoaXMpKTtcbiAgICAgIH1cblxuICAgICAgdGhpcy5kYnhNYXBib3hJbmplY3Rpb25TdG9yZS5hZGRJbmplY3Rpb25Db25maWcoe1xuICAgICAgICBrZXk6IHRoaXMubWFwSW5qZWN0aW9uS2V5IHx8IERFRkFVTFRfREJYX0ZPUk1fTUFQQk9YX0xBVF9MTkdfRklFTERfSU5KRUNUSU9OX0tFWSxcbiAgICAgICAgaW5qZWN0aW9uQ29uZmlnOiB7XG4gICAgICAgICAgY29tcG9uZW50Q2xhc3M6IERieEZvcm1NYXBib3hMYXRMbmdGaWVsZE1hcmtlckNvbXBvbmVudCxcbiAgICAgICAgICBwcm92aWRlcnM6IFt7IHByb3ZpZGU6IERieEZvcm1NYXBib3hMYXRMbmdGaWVsZENvbXBvbmVudCwgdXNlVmFsdWU6IHRoaXMgfV1cbiAgICAgICAgfVxuICAgICAgfSk7XG4gICAgfVxuICB9XG5cbiAgb3ZlcnJpZGUgbmdPbkRlc3Ryb3koKTogdm9pZCB7XG4gICAgc3VwZXIubmdPbkRlc3Ryb3koKTtcbiAgICB0aGlzLl96b29tLmNvbXBsZXRlKCk7XG4gICAgdGhpcy5fbWFya2VyQ29uZmlnLmNvbXBsZXRlKCk7XG4gICAgdGhpcy5fZm9ybUNvbnRyb2xPYnMuY29tcGxldGUoKTtcbiAgICB0aGlzLl9zdWIuZGVzdHJveSgpO1xuICAgIHRoaXMuX2dlb1N1Yi5kZXN0cm95KCk7XG4gICAgdGhpcy5fY2VudGVyU3ViLmRlc3Ryb3koKTtcbiAgICB0aGlzLl9mbHlUb0NlbnRlclN1Yi5kZXN0cm95KCk7XG4gICAgdGhpcy5fY2xpY2tTdWIuZGVzdHJveSgpO1xuICB9XG5cbiAgZmx5VG9NYXJrZXIoKSB7XG4gICAgdGhpcy5kYnhNYXBib3hNYXBTdG9yZS5lYXNlVG8oXG4gICAgICB0aGlzLm5vblplcm9MYXRMbmckLnBpcGUoXG4gICAgICAgIGZpcnN0KCksXG4gICAgICAgIG1hcCgoeCkgPT4gKHsgY2VudGVyOiB4IH0gYXMgTWFwYm94RWFzZVRvKSlcbiAgICAgIClcbiAgICApO1xuICB9XG5cbiAgdXNlQ3VycmVudExvY2F0aW9uKCkge1xuICAgIHRoaXMuX2dlb1N1Yi5zdWJzY3JpcHRpb24gPSB0aGlzLl9nZW9sb2NhdGlvblNlcnZpY2UucGlwZShmaXJzdCgpKS5zdWJzY3JpYmUoe1xuICAgICAgbmV4dDogKHBvc2l0aW9uKSA9PiB7XG4gICAgICAgIGlmIChwb3NpdGlvbikge1xuICAgICAgICAgIGNvbnN0IHsgbGF0aXR1ZGU6IGxhdCwgbG9uZ2l0dWRlOiBsbmcgfSA9IHBvc2l0aW9uLmNvb3JkcztcbiAgICAgICAgICB0aGlzLnNldFZhbHVlKHsgbGF0LCBsbmcgfSk7XG4gICAgICAgIH1cbiAgICAgIH0sXG4gICAgICBlcnJvcjogKCkgPT4ge1xuICAgICAgICB0aGlzLl91c2VDdXJyZW50TG9jYXRpb25EaXNhYmxlZC5uZXh0KHRydWUpO1xuICAgICAgfVxuICAgIH0pO1xuICB9XG5cbiAgb25NYXJrZXJEcmFnRW5kKG1hcmtlcjogTWFya2VyKSB7XG4gICAgdGhpcy5zZXRWYWx1ZShtYXJrZXIuZ2V0TG5nTGF0KCkpO1xuICB9XG5cbiAgc2V0VmFsdWUobGF0TG5nPzogTWF5YmU8TGF0TG5nUG9pbnQ+KSB7XG4gICAgdGhpcy5mb3JtQ29udHJvbC5zZXRWYWx1ZShsYXRMbmcgPyB0aGlzLl9sYXRMbmdTdHJpbmdGdW5jdGlvbihsYXRMbmcpIDogbGF0TG5nKTtcbiAgICB0aGlzLmZvcm1Db250cm9sLm1hcmtBc1RvdWNoZWQoKTtcbiAgICB0aGlzLmZvcm1Db250cm9sLm1hcmtBc0RpcnR5KCk7XG4gIH1cbn1cbiJdfQ==
262
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibGF0bG5nLmZpZWxkLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL3BhY2thZ2VzL2RieC1mb3JtL21hcGJveC9zcmMvbGliL2ZpZWxkL2xhdGxuZy9sYXRsbmcuZmllbGQuY29tcG9uZW50LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBOEIsbUJBQW1CLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUNqRixPQUFPLEVBQUUsbUJBQW1CLEVBQUUsaUJBQWlCLEVBQUUsTUFBTSxrQkFBa0IsQ0FBQztBQUMxRSxPQUFPLEVBQUUsdUJBQXVCLEVBQUUsU0FBUyxFQUFFLFFBQVEsRUFBNkIsTUFBTSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBRWhILE9BQU8sRUFBRSxTQUFTLEVBQUUsTUFBTSxzQkFBc0IsQ0FBQztBQUNqRCxPQUFPLEVBQUUsSUFBSSxFQUFFLEtBQUssRUFBRSxlQUFlLEVBQUUsTUFBTSxFQUFFLFdBQVcsRUFBRSxTQUFTLEVBQUUsU0FBUyxFQUFFLEdBQUcsRUFBYyxZQUFZLEVBQUUsU0FBUyxFQUFFLEVBQUUsRUFBRSxvQkFBb0IsRUFBRSxNQUFNLE1BQU0sQ0FBQztBQUNuSyxPQUFPLEVBQUUsc0JBQXNCLEVBQUUsV0FBVyxFQUFzQyxrQkFBa0IsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUM1SCxPQUFPLEVBQXVFLG9CQUFvQixFQUFnQixtQkFBbUIsRUFBRSxvQkFBb0IsRUFBRSxrQkFBa0IsRUFBdUIsaUJBQWlCLEVBQUUsa0JBQWtCLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDblEsT0FBTyxFQUFFLGtCQUFrQixFQUFFLE1BQU0sMEJBQTBCLENBQUM7QUFFOUQsT0FBTyxFQUFFLHVCQUF1QixFQUFFLGlCQUFpQixFQUFnQyxlQUFlLEVBQWlDLHVDQUF1QyxFQUFFLE1BQU0seUJBQXlCLENBQUM7QUFDNU0sT0FBTyxFQUFFLHVDQUF1QyxFQUFFLE1BQU0s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O1FBQ2xDLElBQUksQ0FBQyxXQUFXLENBQUMsUUFBUSxDQUFDLE1BQU0sQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDLHFCQUFxQixDQUFDLE1BQU0sQ0FBQyxDQUFDLENBQUMsQ0FBQyxNQUFNLENBQUMsQ0FBQztRQUNoRixJQUFJLENBQUMsV0FBVyxDQUFDLGFBQWEsRUFBRSxDQUFDO1FBQ2pDLElBQUksQ0FBQyxXQUFXLENBQUMsV0FBVyxFQUFFLENBQUM7SUFDakMsQ0FBQzt3R0FwT1UsaUNBQWlDOzRGQUFqQyxpQ0FBaUMsMkRBTmpDLENBQUMsdUNBQXVDLEVBQUUsQ0FBQyxpREF6QjVDOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7R0F3QlQsNGlCQUdTLE9BQU8sbUZBQUUsbUJBQW1CLHMzQkFBRSxhQUFhLG1MQUFFLGVBQWUsbzhEQUFFLGVBQWUsMklBQUUsa0JBQWtCLGtZQUFFLGNBQWM7OzRGQUloSCxpQ0FBaUM7a0JBaEM3QyxTQUFTOytCQUNFOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7R0F3QlQsYUFDVSxDQUFDLHVDQUF1QyxFQUFFLENBQUMsV0FFN0MsQ0FBQyxPQUFPLEVBQUUsbUJBQW1CLEVBQUUsYUFBYSxFQUFFLGVBQWUsRUFBRSxlQUFlLEVBQUUsa0JBQWtCLEVBQUUsY0FBYyxDQUFDLG1CQUMzRyx1QkFBdUIsQ0FBQyxNQUFNLGNBQ25DLElBQUkiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBBYnN0cmFjdENvbnRyb2wsIEZvcm1Hcm91cCwgUmVhY3RpdmVGb3Jtc01vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2Zvcm1zJztcbmltcG9ydCB7IENvbXBhY3RDb250ZXh0U3RvcmUsIG1hcENvbXBhY3RNb2RlT2JzIH0gZnJvbSAnQGRlcmVla2IvZGJ4LXdlYic7XG5pbXBvcnQgeyBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneSwgQ29tcG9uZW50LCBJbmplY3RvciwgTmdab25lLCBPbkRlc3Ryb3ksIE9uSW5pdCwgaW5qZWN0IH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBGaWVsZFR5cGVDb25maWcsIEZvcm1seUZpZWxkUHJvcHMgfSBmcm9tICdAbmd4LWZvcm1seS9jb3JlJztcbmltcG9ydCB7IEZpZWxkVHlwZSB9IGZyb20gJ0BuZ3gtZm9ybWx5L21hdGVyaWFsJztcbmltcG9ydCB7IHNraXAsIGZpcnN0LCBCZWhhdmlvclN1YmplY3QsIGZpbHRlciwgc2hhcmVSZXBsYXksIHN0YXJ0V2l0aCwgc3dpdGNoTWFwLCBtYXAsIE9ic2VydmFibGUsIHRocm90dGxlVGltZSwgc2tpcFdoaWxlLCBvZiwgZGlzdGluY3RVbnRpbENoYW5nZWQgfSBmcm9tICdyeGpzJztcbmltcG9ydCB7IGFzT2JzZXJ2YWJsZUZyb21HZXR0ZXIsIGZpbHRlck1heWJlLCBPYnNlcnZhYmxlRmFjdG9yeVdpdGhSZXF1aXJlZElucHV0LCBTdWJzY3JpcHRpb25PYmplY3QgfSBmcm9tICdAZGVyZWVrYi9yeGpzJztcbmltcG9ydCB7IE1heWJlLCBMYXRMbmdQb2ludCwgTGF0TG5nUG9pbnRGdW5jdGlvbkNvbmZpZywgTGF0TG5nU3RyaW5nRnVuY3Rpb24sIGxhdExuZ1N0cmluZ0Z1bmN0aW9uLCBNaWxsaXNlY29uZHMsIGxhdExuZ1BvaW50RnVuY3Rpb24sIGlzRGVmYXVsdExhdExuZ1BvaW50LCBpc1ZhbGlkTGF0TG5nUG9pbnQsIExhdExuZ1BvaW50RnVuY3Rpb24sIGlzU2FtZUxhdExuZ1BvaW50LCBkZWZhdWx0TGF0TG5nUG9pbnQgfSBmcm9tICdAZGVyZWVrYi91dGlsJztcbmltcG9ydCB7IEdlb2xvY2F0aW9uU2VydmljZSB9IGZyb20gJ0BuZy13ZWItYXBpcy9nZW9sb2NhdGlvbic7XG5pbXBvcnQgeyBNYXJrZXIgfSBmcm9tICdtYXBib3gtZ2wnO1xuaW1wb3J0IHsgRGJ4TWFwYm94SW5qZWN0aW9uU3RvcmUsIERieE1hcGJveE1hcFN0b3JlLCBEYnhNYXBib3hNYXJrZXJEaXNwbGF5Q29uZmlnLCBEYnhNYXBib3hNb2R1bGUsIE1hcGJveEVhc2VUbywgTWFwYm94Wm9vbUxldmVsLCBwcm92aWRlTWFwYm94U3RvcmVJZlBhcmVudElzVW5hdmFpbGFibGUgfSBmcm9tICdAZGVyZWVrYi9kYngtd2ViL21hcGJveCc7XG5pbXBvcnQgeyBEYnhGb3JtTWFwYm94TGF0TG5nRmllbGRNYXJrZXJDb21wb25lbnQgfSBmcm9tICcuL2xhdGxuZy5maWVsZC5tYXJrZXIuY29tcG9uZW50JztcbmltcG9ydCB7IHRvU2lnbmFsIH0gZnJvbSAnQGFuZ3VsYXIvY29yZS9yeGpzLWludGVyb3AnO1xuaW1wb3J0IHsgTmdDbGFzcyB9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbic7XG5pbXBvcnQgeyBNYXRCdXR0b25Nb2R1bGUgfSBmcm9tICdAYW5ndWxhci9tYXRlcmlhbC9idXR0b24nO1xuaW1wb3J0IHsgTWF0Rm9ybUZpZWxkTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvbWF0ZXJpYWwvZm9ybS1maWVsZCc7XG5pbXBvcnQgeyBNYXRJY29uTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvbWF0ZXJpYWwvaWNvbic7XG5pbXBvcnQgeyBNYXRJbnB1dE1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL21hdGVyaWFsL2lucHV0JztcbmltcG9ydCB7IE5neE1hcGJveEdMTW9kdWxlIH0gZnJvbSAnbmd4LW1hcGJveC1nbCc7XG5cbmV4cG9ydCBjb25zdCBERUZBVUxUX0RCWF9GT1JNX01BUEJPWF9MQVRfTE5HX0ZJRUxEX0lOSkVDVElPTl9LRVkgPSAnRGJ4Rm9ybU1hcGJveExhdExuZ0ZpZWxkQ29tcG9uZW50JztcblxuZXhwb3J0IGNvbnN0IERFRkFVTFRfREJYX0ZPUk1fTUFQQk9YX0xBVF9MTkdfTUFSS0VSX0NPTkZJRzogRGJ4TWFwYm94TWFya2VyRGlzcGxheUNvbmZpZyA9IHtcbiAgaWNvbjogJ3Bpbl9kcm9wJ1xufTtcblxuZXhwb3J0IGludGVyZmFjZSBEYnhGb3JtTWFwYm94TGF0TG5nQ29tcG9uZW50RmllbGRQcm9wcyBleHRlbmRzIEZvcm1seUZpZWxkUHJvcHMge1xuICAvKipcbiAgICogKE9wdGlvbmFsKSBXaGV0aGVyIG9yIG5vdCB0aGUgc2hvdyB0aGUgbWFwLiBJZiB0aGUgbWFwIGlzIG5vdCBzaG93biwgcmVsaWVzIG9uIHRoZSBjZW50ZXIgb2YgdGhlIHBhcmVudCBtYXAgdG8gZGV0ZXJtaW5lIHBvc2l0aW9uLlxuICAgKlxuICAgKiBEZWZhdWx0cyB0byB0cnVlLlxuICAgKlxuICAgKiBDYXNlcyB3aGVyZSB0aGlzIHdvdWxkIGJlIHNldCBmYWxzZSBpcyBpZiBhbm90aGVyIG1hcCBpcyBiZWluZyB1c2VkLlxuICAgKi9cbiAgcmVhZG9ubHkgc2hvd01hcD86IGJvb2xlYW47XG4gIC8qKlxuICAgKiBXaGV0aGVyIG9yIG5vdCB0byBkaXNwbGF5IHRoZSBjZW50ZXIgYnV0dG9uLiBJcyBzZXQgdG8gZmFsc2UgaWYgc2VsZWN0TG9jYXRpb25Pbk1hcERyYWcgaXMgdHJ1ZS5cbiAgICovXG4gIHJlYWRvbmx5IHNob3dDZW50ZXJCdXR0b24/OiBib29sZWFuO1xuICAvKipcbiAgICogV2hldGhlciBvciBub3QgdG8gc2V0IHRoZSBjZW50ZXIgb2YgdGhlIG1hcCBvbiB0aGUgbG9jYXRpb24gd2hlbiBzZXQuIERlZmF1bHRzIHRvIHRydWUuXG4gICAqL1xuICByZWFkb25seSBzZXRDZW50ZXJPbkxvY2F0aW9uU2V0PzogYm9vbGVhbjtcbiAgLyoqXG4gICAqIFdoZXRoZXIgb3Igbm90IHRvIGVuYWJsZSBkcmFnZ2luZyB0aGUgbWFwIHRvIHNlbGVjdCB0aGUgbG9jYXRpb24uIERlZmF1bHRzIHRvIHRydWUuXG4gICAqXG4gICAqIE9ubHkgYXBwbGljYWJsZSB3aGVuIHNob3dNYXAgaXMgZmFsc2UuXG4gICAqL1xuICByZWFkb25seSBzZWxlY3RMb2NhdGlvbk9uTWFwRHJhZz86IGJvb2xlYW47XG4gIC8qKlxuICAgKiBXaGV0aGVyIG9yIG5vdCB0byBlbmFibGUgY2xpY2tpbmcgdGhlIG1hcCB0byBzZWxlY3QgdGhlIGxvY2F0aW9uLiBEZWZhdWx0cyB0byBmYWxzZS5cbiAgICpcbiAgICogT25seSBhcHBsaWNhYmxlIHdoZW4gc2hvd01hcCBpcyBmYWxzZS5cbiAgICovXG4gIHJlYWRvbmx5IHNlbGVjdExvY2F0aW9uT25NYXBDbGljaz86IGJvb2xlYW47XG4gIC8qKlxuICAgKiAoT3B0aW9uYWwpIFpvb20gdG8gc3RhcnQgdGhlIG1hcCBhdC4gSWdub3JlZCBpZiB0aGUgc2hvd01hcCBpcyBmYWxzZS5cbiAgICovXG4gIHJlYWRvbmx5IHpvb20/OiBNYXBib3hab29tTGV2ZWw7XG4gIC8qKlxuICAgKiBUaW1lIHVudGlsIHJlY2VudGVyaW5nIG9uIHRoZSBtYXJrZXIuIElmIHRoZSB0aW1lIGlzIDAgdGhlbiB0aGUgcmVjZW50ZXJpbmcgaXMgZGlzYWJsZWQuXG4gICAqL1xuICByZWFkb25seSByZWNlbnRlclRpbWU/OiBNaWxsaXNlY29uZHM7XG4gIHJlYWRvbmx5IGxhdExuZ0NvbmZpZz86IExhdExuZ1BvaW50RnVuY3Rpb25Db25maWc7XG4gIC8qKlxuICAgKiBVbmlxdWUgaW5qZWN0aW9uIGtleS5cbiAgICpcbiAgICogSWYgbm90IGRlZmluZWQsIHRoZSBkZWZhdWx0IGtleSB3aWxsIGJlIHVzZWQuXG4gICAqXG4gICAqIElmIGZhbHNlIGlzIHBhc3NlZCwgdGhlIG1hcmtlciB3aWxsIG5vdCBiZSBjb25maWd1cmVkIGluIHRoZSBpbmplY3Rpb24gc3RvcmUuXG4gICAqL1xuICByZWFkb25seSBtYXBJbmplY3Rpb25LZXk/OiBNYXliZTxzdHJpbmcgfCBmYWxzZT47XG4gIC8qKlxuICAgKiBNYXJrZXIgY29uZmlndXJhdGlvbiBvciBmYWN0b3J5LiBJZiBmYWxzZSBpcyBwYXNzZWQsIHRoZSBtYXJrZXIgd2lsbCBub3QgYmUgZGlzcGxheWVkLlxuICAgKi9cbiAgcmVhZG9ubHkgbWFya2VyQ29uZmlnPzogZmFsc2UgfCBPYnNlcnZhYmxlRmFjdG9yeVdpdGhSZXF1aXJlZElucHV0PERieE1hcGJveE1hcmtlckRpc3BsYXlDb25maWcgfCBmYWxzZSwgRGJ4Rm9ybU1hcGJveExhdExuZ0ZpZWxkQ29tcG9uZW50Pjtcbn1cblxuLypcbiAgVE9ETzogUmUtYWRkIG1lbnUgZm9yIHBpY2tpbmcgYSBuZXcgbG9jYXRpb24sIGluY2x1ZGluZyB1c2luZyB0aGUgY3VycmVudCBsb2NhdGlvbi5cbiA8YnV0dG9uIG1hdC1pY29uLWJ1dHRvbiAoY2xpY2spPVwidXNlQ3VycmVudExvY2F0aW9uKClcIiBbZGlzYWJsZWRdPVwiaXNSZWFkb25seU9yRGlzYWJsZWQgfHwgKHVzZUN1cnJlbnRMb2NhdGlvbkRpc2FibGVkJCB8IGFzeW5jKVwiPlxuICAgICAgICAgIDxtYXQtaWNvbj5teV9sb2NhdGlvbjwvbWF0LWljb24+XG4gICAgICAgIDwvYnV0dG9uPlxuICovXG5cbkBDb21wb25lbnQoe1xuICB0ZW1wbGF0ZTogYFxuICAgIDxkaXYgY2xhc3M9XCJkYngtbWFwYm94LWlucHV0LWZpZWxkXCIgW25nQ2xhc3NdPVwiY29tcGFjdENsYXNzU2lnbmFsKClcIiBbZm9ybUdyb3VwXT1cImZvcm1Hcm91cFwiPlxuICAgICAgQGlmIChzaG93TWFwKSB7XG4gICAgICAgIDxkaXYgY2xhc3M9XCJkYngtbWFwYm94LWlucHV0LWZpZWxkLW1hcFwiPlxuICAgICAgICAgIDxtZ2wtbWFwIGRieE1hcGJveE1hcD5cbiAgICAgICAgICAgIDxtZ2wtbWFya2VyIFtsbmdMYXRdPVwibGF0TG5nU2lnbmFsKClcIiBbZHJhZ2dhYmxlXT1cIiFpc1JlYWRvbmx5T3JEaXNhYmxlZFwiIChtYXJrZXJEcmFnRW5kKT1cIm9uTWFya2VyRHJhZ0VuZCgkZXZlbnQpXCI+PC9tZ2wtbWFya2VyPlxuICAgICAgICAgIDwvbWdsLW1hcD5cbiAgICAgICAgPC9kaXY+XG4gICAgICB9XG4gICAgICA8ZGl2IGNsYXNzPVwiZGJ4LW1hcGJveC1pbnB1dC1maWVsZC1pbnB1dFwiPlxuICAgICAgICBAaWYgKHNob3dDZW50ZXJCdXR0b24pIHtcbiAgICAgICAgICA8YnV0dG9uIG1hdC1pY29uLWJ1dHRvbiAoY2xpY2spPVwiZmx5VG9NYXJrZXIoKVwiPlxuICAgICAgICAgICAgPG1hdC1pY29uPm15X2xvY2F0aW9uPC9tYXQtaWNvbj5cbiAgICAgICAgICA8L2J1dHRvbj5cbiAgICAgICAgfVxuICAgICAgICA8bWF0LWZvcm0tZmllbGQgY2xhc3M9XCJkYngtbWFwYm94LWlucHV0LWZpZWxkLWlucHV0LWZpZWxkXCI+XG4gICAgICAgICAgPG1hdC1sYWJlbD5Db29yZGluYXRlczwvbWF0LWxhYmVsPlxuICAgICAgICAgIDxpbnB1dCB0eXBlPVwidGV4dFwiIG1hdElucHV0IFtwbGFjZWhvbGRlcl09XCJwbGFjZWhvbGRlclwiIFtmb3JtQ29udHJvbF09XCJmb3JtQ29udHJvbFwiIC8+XG4gICAgICAgICAgQGlmICh1c2VDdXJyZW50TG9jYXRpb25EaXNhYmxlZFNpZ25hbCgpKSB7XG4gICAgICAgICAgICA8bWF0LWhpbnQgY2xhc3M9XCJkYngtaGludCBkYngtd2FyblwiPkNvdWxkIG5vdCBhY2Nlc3MgeW91ciBjdXJyZW50IGxvY2F0aW9uLjwvbWF0LWhpbnQ+XG4gICAgICAgICAgfVxuICAgICAgICA8L21hdC1mb3JtLWZpZWxkPlxuICAgICAgPC9kaXY+XG4gICAgPC9kaXY+XG4gIGAsXG4gIHByb3ZpZGVyczogW3Byb3ZpZGVNYXBib3hTdG9yZUlmUGFyZW50SXNVbmF2YWlsYWJsZSgpXSxcbiAgc3R5bGVVcmxzOiBbJy4uL21hcGJveC5maWVsZC5jb21wb25lbnQuc2NzcyddLFxuICBpbXBvcnRzOiBbTmdDbGFzcywgUmVhY3RpdmVGb3Jtc01vZHVsZSwgTWF0SWNvbk1vZHVsZSwgRGJ4TWFwYm94TW9kdWxlLCBNYXRCdXR0b25Nb2R1bGUsIE1hdEZvcm1GaWVsZE1vZHVsZSwgTWF0SW5wdXRNb2R1bGVdLFxuICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaCxcbiAgc3RhbmRhbG9uZTogdHJ1ZVxufSlcbmV4cG9ydCBjbGFzcyBEYnhGb3JtTWFwYm94TGF0TG5nRmllbGRDb21wb25lbnQ8VCBleHRlbmRzIERieEZvcm1NYXBib3hMYXRMbmdDb21wb25lbnRGaWVsZFByb3BzID0gRGJ4Rm9ybU1hcGJveExhdExuZ0NvbXBvbmVudEZpZWxkUHJvcHM+IGV4dGVuZHMgRmllbGRUeXBlPEZpZWxkVHlwZUNvbmZpZzxUPj4gaW1wbGVtZW50cyBPbkluaXQsIE9uRGVzdHJveSB7XG4gIHByaXZhdGUgcmVhZG9ubHkgX2dlb2xvY2F0aW9uU2VydmljZSA9IGluamVjdChHZW9sb2NhdGlvblNlcnZpY2UpO1xuXG4gIHJlYWRvbmx5IGNvbXBhY3QgPSBpbmplY3QoQ29tcGFjdENvbnRleHRTdG9yZSwgeyBvcHRpb25hbDogdHJ1ZSB9KTtcbiAgcmVhZG9ubHkgZGJ4TWFwYm94SW5qZWN0aW9uU3RvcmUgPSBpbmplY3QoRGJ4TWFwYm94SW5qZWN0aW9uU3RvcmUsIHsgb3B0aW9uYWw6IHRydWUgfSk7XG4gIHJlYWRvbmx5IGRieE1hcGJveE1hcFN0b3JlID0gaW5qZWN0KERieE1hcGJveE1hcFN0b3JlKTtcbiAgcmVhZG9ubHkgaW5qZWN0b3IgPSBpbmplY3QoSW5qZWN0b3IpO1xuXG4gIHByaXZhdGUgcmVhZG9ubHkgX3N1YiA9IG5ldyBTdWJzY3JpcHRpb25PYmplY3QoKTtcbiAgcHJpdmF0ZSByZWFkb25seSBfZ2VvU3ViID0gbmV3IFN1YnNjcmlwdGlvbk9iamVjdCgpO1xuICBwcml2YXRlIHJlYWRvbmx5IF9jZW50ZXJTdWIgPSBuZXcgU3Vic2NyaXB0aW9uT2JqZWN0KCk7XG4gIHByaXZhdGUgcmVhZG9ubHkgX2ZseVRvQ2VudGVyU3ViID0gbmV3IFN1YnNjcmlwdGlvbk9iamVjdCgpO1xuICBwcml2YXRlIHJlYWRvbmx5IF9jbGlja1N1YiA9IG5ldyBTdWJzY3JpcHRpb25PYmplY3QoKTtcbiAgcHJpdmF0ZSByZWFkb25seSBfem9vbSA9IG5ldyBCZWhhdmlvclN1YmplY3Q8TWFwYm94Wm9vbUxldmVsPigxMik7XG4gIHByaXZhdGUgcmVhZG9ubHkgX21hcmtlckNvbmZpZyA9IG5ldyBCZWhhdmlvclN1YmplY3Q8T2JzZXJ2YWJsZTxEYnhNYXBib3hNYXJrZXJEaXNwbGF5Q29uZmlnIHwgZmFsc2U+PihvZihERUZBVUxUX0RCWF9GT1JNX01BUEJPWF9MQVRfTE5HX01BUktFUl9DT05GSUcpKTtcblxuICBwcml2YXRlIF9sYXRMbmdTdHJpbmdGdW5jdGlvbiE6IExhdExuZ1N0cmluZ0Z1bmN0aW9uO1xuICBwcml2YXRlIF9sYXRMbmdQb2ludEZ1bmN0aW9uITogTGF0TG5nUG9pbnRGdW5jdGlvbjtcblxuICByZWFkb25seSBjb21wYWN0Q2xhc3MkID0gbWFwQ29tcGFjdE1vZGVPYnModGhpcy5jb21wYWN0Py5tb2RlJCwge1xuICAgIGNvbXBhY3Q6ICdkYngtbWFwYm94LWlucHV0LWZpZWxkLWNvbXBhY3QnXG4gIH0pLnBpcGUoZmlsdGVyTWF5YmUoKSk7XG5cbiAgcHJpdmF0ZSByZWFkb25seSBfdXNlQ3VycmVudExvY2F0aW9uRGlzYWJsZWQgPSBuZXcgQmVoYXZpb3JTdWJqZWN0PGJvb2xlYW4+KGZhbHNlKTtcbiAgcmVhZG9ubHkgdXNlQ3VycmVudExvY2F0aW9uRGlzYWJsZWQkID0gdGhpcy5fdXNlQ3VycmVudExvY2F0aW9uRGlzYWJsZWQuYXNPYnNlcnZhYmxlKCk7XG5cbiAgcHJpdmF0ZSByZWFkb25seSBfZm9ybUNvbnRyb2xPYnMgPSBuZXcgQmVoYXZpb3JTdWJqZWN0PE1heWJlPEFic3RyYWN0Q29udHJvbD4+KHVuZGVmaW5lZCk7XG4gIHJlYWRvbmx5IGZvcm1Db250cm9sJCA9IHRoaXMuX2Zvcm1Db250cm9sT2JzLnBpcGUoZmlsdGVyTWF5YmUoKSk7XG5cbiAgcmVhZG9ubHkgdmFsdWUkID0gdGhpcy5mb3JtQ29udHJvbCQucGlwZShcbiAgICBzd2l0Y2hNYXAoKGNvbnRyb2wpID0+IGNvbnRyb2wudmFsdWVDaGFuZ2VzLnBpcGUoc3RhcnRXaXRoKGNvbnRyb2wudmFsdWUpKSksXG4gICAgc2hhcmVSZXBsYXkoMSlcbiAgKTtcblxuICByZWFkb25seSBsYXRMbmckOiBPYnNlcnZhYmxlPExhdExuZ1BvaW50PiA9IHRoaXMudmFsdWUkLnBpcGUoXG4gICAgZmlsdGVyTWF5YmUoKSxcbiAgICBtYXAoKHgpID0+IHRoaXMuX2xhdExuZ1BvaW50RnVuY3Rpb24oeCkpLFxuICAgIGRpc3RpbmN0VW50aWxDaGFuZ2VkPExhdExuZ1BvaW50Pihpc1NhbWVMYXRMbmdQb2ludCksXG4gICAgc2hhcmVSZXBsYXkoMSlcbiAgKTtcblxuICByZWFkb25seSBub25aZXJvTGF0TG5nJDogT2JzZXJ2YWJsZTxMYXRMbmdQb2ludD4gPSB0aGlzLmxhdExuZyQucGlwZShcbiAgICAvKipcbiAgICAgKiBDZW50ZXIgb2JzZXJ2YWJsZSBwYXNzZWQgdG8gdGhlIHN0b3JlLiBEbyBub3QgcGFzcyBpbnZhbGlkIHBvaW50cy5cbiAgICAgKlxuICAgICAqIEFsc28gc2tpcCBhbnkgaW5pdGlhbCAwLDAgdmFsdWVzIHNvIHRoZSBjZW50ZXIgZG9lc24ndCBwb3RlbnRpYWxseSBcIndoaXBcIiBmcm9tIDAsMCB0byBhIGZpbmFsIGxvYWRlZCB2YWx1ZS5cbiAgICAgKi9cbiAgICBza2lwV2hpbGU8TGF0TG5nUG9pbnQ+KGlzRGVmYXVsdExhdExuZ1BvaW50KSxcbiAgICBmaWx0ZXIoaXNWYWxpZExhdExuZ1BvaW50KVxuICApO1xuXG4gIHJlYWRvbmx5IHpvb20kID0gdGhpcy5fem9vbS5hc09ic2VydmFibGUoKTtcbiAgcmVhZG9ubHkgbWFya2VyQ29uZmlnJCA9IHRoaXMuX21hcmtlckNvbmZpZy5hc09ic2VydmFibGUoKS5waXBlKFxuICAgIHN3aXRjaE1hcCgoeCkgPT4geCksXG4gICAgc2hhcmVSZXBsYXkoMSlcbiAgKTtcblxuICByZWFkb25seSB1c2VDdXJyZW50TG9jYXRpb25EaXNhYmxlZFNpZ25hbCA9IHRvU2lnbmFsKHRoaXMuX3VzZUN1cnJlbnRMb2NhdGlvbkRpc2FibGVkLCB7IGluaXRpYWxWYWx1ZTogZmFsc2UgfSk7XG4gIHJlYWRvbmx5IGNvbXBhY3RDbGFzc1NpZ25hbCA9IHRvU2lnbmFsKHRoaXMuY29tcGFjdENsYXNzJCwgeyBpbml0aWFsVmFsdWU6ICcnIH0pO1xuICByZWFkb25seSBsYXRMbmdTaWduYWwgPSB0b1NpZ25hbCh0aGlzLmxhdExuZyQsIHsgaW5pdGlhbFZhbHVlOiBkZWZhdWx0TGF0TG5nUG9pbnQoKSB9KTtcblxuICBnZXQgem9vbSgpOiBNYXBib3hab29tTGV2ZWwge1xuICAgIHJldHVybiBNYXRoLm1pbih0aGlzLmZpZWxkLnByb3BzLnpvb20gfHwgMTIsIDE4KTtcbiAgfVxuXG4gIGdldCBmb3JtR3JvdXBOYW1lKCk6IHN0cmluZyB7XG4gICAgcmV0dXJuIHRoaXMuZmllbGQua2V5IGFzIHN0cmluZztcbiAgfVxuXG4gIGdldCBmb3JtR3JvdXAoKTogRm9ybUdyb3VwIHtcbiAgICByZXR1cm4gdGhpcy5mb3JtIGFzIEZvcm1Hcm91cDtcbiAgfVxuXG4gIGdldCBsYWJlbCgpOiBNYXliZTxzdHJpbmc+IHtcbiAgICByZXR1cm4gdGhpcy5maWVsZC5wcm9wcz8ubGFiZWw7XG4gIH1cblxuICBnZXQgZGVzY3JpcHRpb24oKTogTWF5YmU8c3RyaW5nPiB7XG4gICAgcmV0dXJuIHRoaXMucHJvcHMuZGVzY3JpcHRpb247XG4gIH1cblxuICBnZXQgaXNSZWFkb25seU9yRGlzYWJsZWQoKSB7XG4gICAgcmV0dXJuIHRoaXMucHJvcHMucmVhZG9ubHkgfHwgdGhpcy5kaXNhYmxlZDtcbiAgfVxuXG4gIGdldCBzaG93TWFwKCk6IGJvb2xlYW4ge1xuICAgIHJldHVybiB0aGlzLmZpZWxkLnByb3BzLnNob3dNYXAgPz8gdHJ1ZTtcbiAgfVxuXG4gIGdldCBzZWxlY3RMb2NhdGlvbk9uTWFwRHJhZygpOiBib29sZWFuIHtcbiAgICByZXR1cm4gdGhpcy5maWVsZC5wcm9wcy5zZWxlY3RMb2NhdGlvbk9uTWFwRHJhZyA/PyB0cnVlO1xuICB9XG5cbiAgZ2V0IHNlbGVjdExvY2F0aW9uT25NYXBDbGljaygpOiBib29sZWFuIHtcbiAgICByZXR1cm4gdGhpcy5maWVsZC5wcm9wcy5zZWxlY3RMb2NhdGlvbk9uTWFwQ2xpY2sgPz8gZmFsc2U7XG4gIH1cblxuICBnZXQgc2V0Q2VudGVyT25Mb2NhdGlvblNldCgpIHtcbiAgICByZXR1cm4gdGhpcy5maWVsZC5wcm9wcy5zZXRDZW50ZXJPbkxvY2F0aW9uU2V0ID8/IHRydWU7XG4gIH1cblxuICBnZXQgc2hvd0NlbnRlckJ1dHRvbigpIHtcbiAgICByZXR1cm4gIXRoaXMuc2VsZWN0TG9jYXRpb25Pbk1hcERyYWcgJiYgdGhpcy5wcm9wcy5zaG93Q2VudGVyQnV0dG9uICE9PSBmYWxzZTtcbiAgfVxuXG4gIGdldCByZWNlbnRlclRpbWUoKTogTWlsbGlzZWNvbmRzIHtcbiAgICByZXR1cm4gdGhpcy5maWVsZC5wcm9wcy5yZWNlbnRlclRpbWUgfHwgMTAgKiAxMDAwO1xuICB9XG5cbiAgZ2V0IHVzZUN1cnJlbnRMb2NhdGlvbkRpc2FibGVkKCkge1xuICAgIHJldHVybiB0aGlzLl91c2VDdXJyZW50TG9jYXRpb25EaXNhYmxlZDtcbiAgfVxuXG4gIGdldCBtYXBJbmplY3Rpb25LZXkoKSB7XG4gICAgcmV0dXJuIHRoaXMuZmllbGQucHJvcHMubWFwSW5qZWN0aW9uS2V5O1xuICB9XG5cbiAgZ2V0IG1hcmtlckNvbmZpZygpIHtcbiAgICByZXR1cm4gdGhpcy5maWVsZC5wcm9wcy5tYXJrZXJDb25maWc7XG4gIH1cblxuICBuZ09uSW5pdCgpOiB2b2lkIHtcbiAgICBjb25zdCBsYXRMbmdQb2ludENvbmZpZyA9IHsgLi4udGhpcy5maWVsZC5wcm9wcy5sYXRMbmdDb25maWcsIHdyYXA6IHRoaXMuZmllbGQucHJvcHMubGF0TG5nQ29uZmlnPy53cmFwIHx8IGZhbHNlLCB2YWxpZGF0ZTogdGhpcy5maWVsZC5wcm9wcy5sYXRMbmdDb25maWc/LnZhbGlkYXRlIHx8IGZhbHNlLCBwcmVjaXNpb25Sb3VuZGluZzogdGhpcy5maWVsZC5wcm9wcy5sYXRMbmdDb25maWc/LnByZWNpc2lvblJvdW5kaW5nID8/ICdyb3VuZCcgfTtcbiAgICB0aGlzLl9sYXRMbmdTdHJpbmdGdW5jdGlvbiA9IGxhdExuZ1N0cmluZ0Z1bmN0aW9uKGxhdExuZ1BvaW50Q29uZmlnKTtcbiAgICB0aGlzLl9sYXRMbmdQb2ludEZ1bmN0aW9uID0gbGF0TG5nUG9pbnRGdW5jdGlvbihsYXRMbmdQb2ludENvbmZpZyk7XG5cbiAgICB0aGlzLl9mb3JtQ29udHJvbE9icy5uZXh0KHRoaXMuZm9ybUNvbnRyb2wpO1xuICAgIHRoaXMuX3pvb20ubmV4dCh0aGlzLnpvb20pO1xuXG4gICAgaWYgKHRoaXMuc2V0Q2VudGVyT25Mb2NhdGlvblNldCkge1xuICAgICAgdGhpcy5fY2VudGVyU3ViLnN1YnNjcmlwdGlvbiA9IHRoaXMuZGJ4TWFwYm94TWFwU3RvcmUuc2V0Q2VudGVyKHRoaXMubm9uWmVyb0xhdExuZyQpO1xuICAgIH1cblxuICAgIGlmICh0aGlzLnNob3dNYXApIHtcbiAgICAgIC8vIFNldCB6b29tIG9ubHkgaWYgc2hvd01hcCBpcyB0cnVlXG4gICAgICB0aGlzLmRieE1hcGJveE1hcFN0b3JlLnNldFpvb20odGhpcy56b29tJCk7XG5cbiAgICAgIC8vIHJlY2VudGVyIHBlcmlvZGljYWxseVxuICAgICAgaWYgKHRoaXMucmVjZW50ZXJUaW1lID4gMCkge1xuICAgICAgICB0aGlzLl9mbHlUb0NlbnRlclN1Yi5zdWJzY3JpcHRpb24gPSB0aGlzLmRieE1hcGJveE1hcFN0b3JlLmNlbnRlciQucGlwZShza2lwKDEpLCB0aHJvdHRsZVRpbWUodGhpcy5yZWNlbnRlclRpbWUsIHVuZGVmaW5lZCwgeyBsZWFkaW5nOiBmYWxzZSwgdHJhaWxpbmc6IHRydWUgfSkpLnN1YnNjcmliZSgoKSA9PiB7XG4gICAgICAgICAgdGhpcy5mbHlUb01hcmtlcigpO1xuICAgICAgICB9KTtcbiAgICAgIH1cbiAgICB9IGVsc2Uge1xuICAgICAgLy8gdXNlIHRoZSBjZW50ZXIgb2YgdGhlIG1hcCB0byBzZXQgbG9jYXRpb25zXG4gICAgICBpZiAodGhpcy5zZWxlY3RMb2NhdGlvbk9uTWFwRHJhZykge1xuICAgICAgICB0aGlzLl9zdWIuc3Vic2NyaXB0aW9uID0gdGhpcy5kYnhNYXBib3hNYXBTdG9yZS5jZW50ZXIkLnN1YnNjcmliZSgoY2VudGVyKSA9PiB7XG4gICAgICAgICAgdGhpcy5kYnhNYXBib3hNYXBTdG9yZS5jZW50ZXJHaXZlbk1hcmdpbiQucGlwZShmaXJzdCgpKS5zdWJzY3JpYmUoKCkgPT4ge1xuICAgICAgICAgICAgaWYgKCF0aGlzLmlzUmVhZG9ubHlPckRpc2FibGVkKSB7XG4gICAgICAgICAgICAgIHRoaXMuc2V0VmFsdWUoY2VudGVyKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICB9KTtcbiAgICAgICAgfSk7XG4gICAgICB9XG5cbiAgICAgIC8vIGVuYWJsZSBzZWxlY3RpbmcgdGhlIGxvY2F0aW9uIG9uIGEgbWFwIGNsaWNrXG4gICAgICBpZiAodGhpcy5zZWxlY3RMb2NhdGlvbk9uTWFwQ2xpY2spIHtcbiAgICAgICAgdGhpcy5fY2xpY2tTdWIuc3Vic2NyaXB0aW9uID0gdGhpcy5kYnhNYXBib3hNYXBTdG9yZS5jbGlja0V2ZW50JC5zdWJzY3JpYmUoKHgpID0+IHtcbiAgICAgICAgICBpZiAoeD8udHlwZSA9PT0gJ2NsaWNrJykge1xuICAgICAgICAgICAgdGhpcy5zZXRWYWx1ZSh4LmxuZ0xhdCk7XG4gICAgICAgICAgfVxuICAgICAgICB9KTtcbiAgICAgIH1cbiAgICB9XG5cbiAgICBpZiAodGhpcy5wcm9wcy5yZWFkb25seSkge1xuICAgICAgdGhpcy5mb3JtQ29udHJvbC5kaXNhYmxlKCk7XG4gICAgfVxuXG4gICAgLy8gQWRkIHRoZSBtYXJrZXIgdG8gdGhlIGluamVjdGlvbiBzdG9yZSBmb3IgZGlzcGxheVxuICAgIGlmICh0aGlzLmRieE1hcGJveEluamVjdGlvblN0b3JlKSB7XG4gICAgICBpZiAodGhpcy5tYXJrZXJDb25maWcgIT0gbnVsbCkge1xuICAgICAgICB0aGlzLl9tYXJrZXJDb25maWcubmV4dCh0aGlzLm1hcmtlckNvbmZpZyA9PT0gZmFsc2UgPyBvZihmYWxzZSkgOiBhc09ic2VydmFibGVGcm9tR2V0dGVyKHRoaXMubWFya2VyQ29uZmlnLCB0aGlzKSk7XG4gICAgICB9XG5cbiAgICAgIHRoaXMuZGJ4TWFwYm94SW5qZWN0aW9uU3RvcmUuYWRkSW5qZWN0aW9uQ29uZmlnKHtcbiAgICAgICAga2V5OiB0aGlzLm1hcEluamVjdGlvbktleSB8fCBERUZBVUxUX0RCWF9GT1JNX01BUEJPWF9MQVRfTE5HX0ZJRUxEX0lOSkVDVElPTl9LRVksXG4gICAgICAgIGluamVjdGlvbkNvbmZpZzoge1xuICAgICAgICAgIGNvbXBvbmVudENsYXNzOiBEYnhGb3JtTWFwYm94TGF0TG5nRmllbGRNYXJrZXJDb21wb25lbnQsXG4gICAgICAgICAgcHJvdmlkZXJzOiBbeyBwcm92aWRlOiBEYnhGb3JtTWFwYm94TGF0TG5nRmllbGRDb21wb25lbnQsIHVzZVZhbHVlOiB0aGlzIH1dXG4gICAgICAgIH1cbiAgICAgIH0pO1xuICAgIH1cbiAgfVxuXG4gIG92ZXJyaWRlIG5nT25EZXN0cm95KCk6IHZvaWQge1xuICAgIHN1cGVyLm5nT25EZXN0cm95KCk7XG4gICAgdGhpcy5fem9vbS5jb21wbGV0ZSgpO1xuICAgIHRoaXMuX21hcmtlckNvbmZpZy5jb21wbGV0ZSgpO1xuICAgIHRoaXMuX2Zvcm1Db250cm9sT2JzLmNvbXBsZXRlKCk7XG4gICAgdGhpcy5fc3ViLmRlc3Ryb3koKTtcbiAgICB0aGlzLl9nZW9TdWIuZGVzdHJveSgpO1xuICAgIHRoaXMuX2NlbnRlclN1Yi5kZXN0cm95KCk7XG4gICAgdGhpcy5fZmx5VG9DZW50ZXJTdWIuZGVzdHJveSgpO1xuICAgIHRoaXMuX2NsaWNrU3ViLmRlc3Ryb3koKTtcbiAgfVxuXG4gIGZseVRvTWFya2VyKCkge1xuICAgIHRoaXMuZGJ4TWFwYm94TWFwU3RvcmUuZWFzZVRvKFxuICAgICAgdGhpcy5ub25aZXJvTGF0TG5nJC5waXBlKFxuICAgICAgICBmaXJzdCgpLFxuICAgICAgICBtYXAoKHgpID0+ICh7IGNlbnRlcjogeCB9KSBhcyBNYXBib3hFYXNlVG8pXG4gICAgICApXG4gICAgKTtcbiAgfVxuXG4gIHVzZUN1cnJlbnRMb2NhdGlvbigpIHtcbiAgICB0aGlzLl9nZW9TdWIuc3Vic2NyaXB0aW9uID0gdGhpcy5fZ2VvbG9jYXRpb25TZXJ2aWNlLnBpcGUoZmlyc3QoKSkuc3Vic2NyaWJlKHtcbiAgICAgIG5leHQ6IChwb3NpdGlvbikgPT4ge1xuICAgICAgICBpZiAocG9zaXRpb24pIHtcbiAgICAgICAgICBjb25zdCB7IGxhdGl0dWRlOiBsYXQsIGxvbmdpdHVkZTogbG5nIH0gPSBwb3NpdGlvbi5jb29yZHM7XG4gICAgICAgICAgdGhpcy5zZXRWYWx1ZSh7IGxhdCwgbG5nIH0pO1xuICAgICAgICB9XG4gICAgICB9LFxuICAgICAgZXJyb3I6ICgpID0+IHtcbiAgICAgICAgdGhpcy5fdXNlQ3VycmVudExvY2F0aW9uRGlzYWJsZWQubmV4dCh0cnVlKTtcbiAgICAgIH1cbiAgICB9KTtcbiAgfVxuXG4gIG9uTWFya2VyRHJhZ0VuZChtYXJrZXI6IE1hcmtlcikge1xuICAgIHRoaXMuc2V0VmFsdWUobWFya2VyLmdldExuZ0xhdCgpKTtcbiAgfVxuXG4gIHNldFZhbHVlKGxhdExuZz86IE1heWJlPExhdExuZ1BvaW50Pikge1xuICAgIHRoaXMuZm9ybUNvbnRyb2wuc2V0VmFsdWUobGF0TG5nID8gdGhpcy5fbGF0TG5nU3RyaW5nRnVuY3Rpb24obGF0TG5nKSA6IGxhdExuZyk7XG4gICAgdGhpcy5mb3JtQ29udHJvbC5tYXJrQXNUb3VjaGVkKCk7XG4gICAgdGhpcy5mb3JtQ29udHJvbC5tYXJrQXNEaXJ0eSgpO1xuICB9XG59XG4iXX0=
@@ -1,9 +1,9 @@
1
1
  import { ChangeDetectionStrategy, Component, inject } from '@angular/core';
2
2
  import { shareReplay, map, combineLatest } from 'rxjs';
3
+ import { DbxMapboxMarkerComponent } from '@dereekb/dbx-web/mapbox';
3
4
  import { DbxFormMapboxLatLngFieldComponent } from './latlng.field.component';
5
+ import { toSignal } from '@angular/core/rxjs-interop';
4
6
  import * as i0 from "@angular/core";
5
- import * as i1 from "@dereekb/dbx-web/mapbox";
6
- import * as i2 from "@angular/common";
7
7
  export class DbxFormMapboxLatLngFieldMarkerComponent {
8
8
  fieldComponent = inject(DbxFormMapboxLatLngFieldComponent);
9
9
  marker$ = combineLatest([this.fieldComponent.latLng$, this.fieldComponent.markerConfig$]).pipe(map(([latLng, markerConfig]) => {
@@ -14,18 +14,21 @@ export class DbxFormMapboxLatLngFieldMarkerComponent {
14
14
  return undefined;
15
15
  }
16
16
  }), shareReplay(1));
17
- static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: DbxFormMapboxLatLngFieldMarkerComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
18
- static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.12", type: DbxFormMapboxLatLngFieldMarkerComponent, selector: "ng-component", ngImport: i0, template: `
19
- <dbx-mapbox-marker [marker]="marker$ | async"></dbx-mapbox-marker>
20
- `, isInline: true, dependencies: [{ kind: "component", type: i1.DbxMapboxMarkerComponent, selector: "dbx-mapbox-marker", inputs: ["marker"] }, { kind: "pipe", type: i2.AsyncPipe, name: "async" }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
17
+ markerSignal = toSignal(this.marker$);
18
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: DbxFormMapboxLatLngFieldMarkerComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
19
+ static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.13", type: DbxFormMapboxLatLngFieldMarkerComponent, isStandalone: true, selector: "ng-component", ngImport: i0, template: `
20
+ <dbx-mapbox-marker [marker]="markerSignal()"></dbx-mapbox-marker>
21
+ `, isInline: true, dependencies: [{ kind: "component", type: DbxMapboxMarkerComponent, selector: "dbx-mapbox-marker", inputs: ["marker"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
21
22
  }
22
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: DbxFormMapboxLatLngFieldMarkerComponent, decorators: [{
23
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: DbxFormMapboxLatLngFieldMarkerComponent, decorators: [{
23
24
  type: Component,
24
25
  args: [{
25
26
  template: `
26
- <dbx-mapbox-marker [marker]="marker$ | async"></dbx-mapbox-marker>
27
+ <dbx-mapbox-marker [marker]="markerSignal()"></dbx-mapbox-marker>
27
28
  `,
28
- changeDetection: ChangeDetectionStrategy.OnPush
29
+ imports: [DbxMapboxMarkerComponent],
30
+ changeDetection: ChangeDetectionStrategy.OnPush,
31
+ standalone: true
29
32
  }]
30
33
  }] });
31
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibGF0bG5nLmZpZWxkLm1hcmtlci5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9wYWNrYWdlcy9kYngtZm9ybS9tYXBib3gvc3JjL2xpYi9maWVsZC9sYXRsbmcvbGF0bG5nLmZpZWxkLm1hcmtlci5jb21wb25lbnQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLHVCQUF1QixFQUFFLFNBQVMsRUFBRSxNQUFNLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDM0UsT0FBTyxFQUFFLFdBQVcsRUFBRSxHQUFHLEVBQWMsYUFBYSxFQUFFLE1BQU0sTUFBTSxDQUFDO0FBRW5FLE9BQU8sRUFBRSxpQ0FBaUMsRUFBRSxNQUFNLDBCQUEwQixDQUFDOzs7O0FBUzdFLE1BQU0sT0FBTyx1Q0FBdUM7SUFDekMsY0FBYyxHQUFHLE1BQU0sQ0FBQyxpQ0FBaUMsQ0FBQyxDQUFDO0lBRTNELE9BQU8sR0FBdUMsYUFBYSxDQUFDLENBQUMsSUFBSSxDQUFDLGNBQWMsQ0FBQyxPQUFPLEVBQUUsSUFBSSxDQUFDLGNBQWMsQ0FBQyxhQUFhLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FDekksR0FBRyxDQUFDLENBQUMsQ0FBQyxNQUFNLEVBQUUsWUFBWSxDQUFDLEVBQUUsRUFBRTtRQUM3QixJQUFJLFlBQVksS0FBSyxLQUFLLEVBQUU7WUFDMUIsT0FBTyxFQUFFLE1BQU0sRUFBRSxHQUFHLFlBQVksRUFBRSxDQUFDO1NBQ3BDO2FBQU07WUFDTCxPQUFPLFNBQVMsQ0FBQztTQUNsQjtJQUNILENBQUMsQ0FBQyxFQUNGLFdBQVcsQ0FBQyxDQUFDLENBQUMsQ0FDZixDQUFDO3dHQVpTLHVDQUF1Qzs0RkFBdkMsdUNBQXVDLG9EQUx4Qzs7R0FFVDs7NEZBR1UsdUNBQXVDO2tCQU5uRCxTQUFTO21CQUFDO29CQUNULFFBQVEsRUFBRTs7R0FFVDtvQkFDRCxlQUFlLEVBQUUsdUJBQXVCLENBQUMsTUFBTTtpQkFDaEQiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneSwgQ29tcG9uZW50LCBpbmplY3QgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IHNoYXJlUmVwbGF5LCBtYXAsIE9ic2VydmFibGUsIGNvbWJpbmVMYXRlc3QgfSBmcm9tICdyeGpzJztcbmltcG9ydCB7IERieE1hcGJveE1hcmtlciB9IGZyb20gJ0BkZXJlZWtiL2RieC13ZWIvbWFwYm94JztcbmltcG9ydCB7IERieEZvcm1NYXBib3hMYXRMbmdGaWVsZENvbXBvbmVudCB9IGZyb20gJy4vbGF0bG5nLmZpZWxkLmNvbXBvbmVudCc7XG5pbXBvcnQgeyB0eXBlIE1heWJlIH0gZnJvbSAnQGRlcmVla2IvdXRpbCc7XG5cbkBDb21wb25lbnQoe1xuICB0ZW1wbGF0ZTogYFxuICAgIDxkYngtbWFwYm94LW1hcmtlciBbbWFya2VyXT1cIm1hcmtlciQgfCBhc3luY1wiPjwvZGJ4LW1hcGJveC1tYXJrZXI+XG4gIGAsXG4gIGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuT25QdXNoXG59KVxuZXhwb3J0IGNsYXNzIERieEZvcm1NYXBib3hMYXRMbmdGaWVsZE1hcmtlckNvbXBvbmVudCB7XG4gIHJlYWRvbmx5IGZpZWxkQ29tcG9uZW50ID0gaW5qZWN0KERieEZvcm1NYXBib3hMYXRMbmdGaWVsZENvbXBvbmVudCk7XG5cbiAgcmVhZG9ubHkgbWFya2VyJDogT2JzZXJ2YWJsZTxNYXliZTxEYnhNYXBib3hNYXJrZXI+PiA9IGNvbWJpbmVMYXRlc3QoW3RoaXMuZmllbGRDb21wb25lbnQubGF0TG5nJCwgdGhpcy5maWVsZENvbXBvbmVudC5tYXJrZXJDb25maWckXSkucGlwZShcbiAgICBtYXAoKFtsYXRMbmcsIG1hcmtlckNvbmZpZ10pID0+IHtcbiAgICAgIGlmIChtYXJrZXJDb25maWcgIT09IGZhbHNlKSB7XG4gICAgICAgIHJldHVybiB7IGxhdExuZywgLi4ubWFya2VyQ29uZmlnIH07XG4gICAgICB9IGVsc2Uge1xuICAgICAgICByZXR1cm4gdW5kZWZpbmVkO1xuICAgICAgfVxuICAgIH0pLFxuICAgIHNoYXJlUmVwbGF5KDEpXG4gICk7XG59XG4iXX0=
34
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibGF0bG5nLmZpZWxkLm1hcmtlci5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9wYWNrYWdlcy9kYngtZm9ybS9tYXBib3gvc3JjL2xpYi9maWVsZC9sYXRsbmcvbGF0bG5nLmZpZWxkLm1hcmtlci5jb21wb25lbnQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLHVCQUF1QixFQUFFLFNBQVMsRUFBRSxNQUFNLEVBQVksTUFBTSxlQUFlLENBQUM7QUFDckYsT0FBTyxFQUFFLFdBQVcsRUFBRSxHQUFHLEVBQWMsYUFBYSxFQUFFLE1BQU0sTUFBTSxDQUFDO0FBQ25FLE9BQU8sRUFBbUIsd0JBQXdCLEVBQUUsTUFBTSx5QkFBeUIsQ0FBQztBQUNwRixPQUFPLEVBQUUsaUNBQWlDLEVBQUUsTUFBTSwwQkFBMEIsQ0FBQztBQUU3RSxPQUFPLEVBQUUsUUFBUSxFQUFFLE1BQU0sNEJBQTRCLENBQUM7O0FBVXRELE1BQU0sT0FBTyx1Q0FBdUM7SUFDekMsY0FBYyxHQUFHLE1BQU0sQ0FBQyxpQ0FBaUMsQ0FBQyxDQUFDO0lBRTNELE9BQU8sR0FBdUMsYUFBYSxDQUFDLENBQUMsSUFBSSxDQUFDLGNBQWMsQ0FBQyxPQUFPLEVBQUUsSUFBSSxDQUFDLGNBQWMsQ0FBQyxhQUFhLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FDekksR0FBRyxDQUFDLENBQUMsQ0FBQyxNQUFNLEVBQUUsWUFBWSxDQUFDLEVBQUUsRUFBRTtRQUM3QixJQUFJLFlBQVksS0FBSyxLQUFLLEVBQUUsQ0FBQztZQUMzQixPQUFPLEVBQUUsTUFBTSxFQUFFLEdBQUcsWUFBWSxFQUFFLENBQUM7UUFDckMsQ0FBQzthQUFNLENBQUM7WUFDTixPQUFPLFNBQVMsQ0FBQztRQUNuQixDQUFDO0lBQ0gsQ0FBQyxDQUFDLEVBQ0YsV0FBVyxDQUFDLENBQUMsQ0FBQyxDQUNmLENBQUM7SUFFTyxZQUFZLEdBQUcsUUFBUSxDQUFDLElBQUksQ0FBQyxPQUFPLENBQUMsQ0FBQzt3R0FkcEMsdUNBQXVDOzRGQUF2Qyx1Q0FBdUMsd0VBUHhDOztHQUVULDREQUNTLHdCQUF3Qjs7NEZBSXZCLHVDQUF1QztrQkFSbkQsU0FBUzttQkFBQztvQkFDVCxRQUFRLEVBQUU7O0dBRVQ7b0JBQ0QsT0FBTyxFQUFFLENBQUMsd0JBQXdCLENBQUM7b0JBQ25DLGVBQWUsRUFBRSx1QkFBdUIsQ0FBQyxNQUFNO29CQUMvQyxVQUFVLEVBQUUsSUFBSTtpQkFDakIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneSwgQ29tcG9uZW50LCBpbmplY3QsIGNvbXB1dGVkIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBzaGFyZVJlcGxheSwgbWFwLCBPYnNlcnZhYmxlLCBjb21iaW5lTGF0ZXN0IH0gZnJvbSAncnhqcyc7XG5pbXBvcnQgeyBEYnhNYXBib3hNYXJrZXIsIERieE1hcGJveE1hcmtlckNvbXBvbmVudCB9IGZyb20gJ0BkZXJlZWtiL2RieC13ZWIvbWFwYm94JztcbmltcG9ydCB7IERieEZvcm1NYXBib3hMYXRMbmdGaWVsZENvbXBvbmVudCB9IGZyb20gJy4vbGF0bG5nLmZpZWxkLmNvbXBvbmVudCc7XG5pbXBvcnQgeyB0eXBlIE1heWJlIH0gZnJvbSAnQGRlcmVla2IvdXRpbCc7XG5pbXBvcnQgeyB0b1NpZ25hbCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUvcnhqcy1pbnRlcm9wJztcblxuQENvbXBvbmVudCh7XG4gIHRlbXBsYXRlOiBgXG4gICAgPGRieC1tYXBib3gtbWFya2VyIFttYXJrZXJdPVwibWFya2VyU2lnbmFsKClcIj48L2RieC1tYXBib3gtbWFya2VyPlxuICBgLFxuICBpbXBvcnRzOiBbRGJ4TWFwYm94TWFya2VyQ29tcG9uZW50XSxcbiAgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2gsXG4gIHN0YW5kYWxvbmU6IHRydWVcbn0pXG5leHBvcnQgY2xhc3MgRGJ4Rm9ybU1hcGJveExhdExuZ0ZpZWxkTWFya2VyQ29tcG9uZW50IHtcbiAgcmVhZG9ubHkgZmllbGRDb21wb25lbnQgPSBpbmplY3QoRGJ4Rm9ybU1hcGJveExhdExuZ0ZpZWxkQ29tcG9uZW50KTtcblxuICByZWFkb25seSBtYXJrZXIkOiBPYnNlcnZhYmxlPE1heWJlPERieE1hcGJveE1hcmtlcj4+ID0gY29tYmluZUxhdGVzdChbdGhpcy5maWVsZENvbXBvbmVudC5sYXRMbmckLCB0aGlzLmZpZWxkQ29tcG9uZW50Lm1hcmtlckNvbmZpZyRdKS5waXBlKFxuICAgIG1hcCgoW2xhdExuZywgbWFya2VyQ29uZmlnXSkgPT4ge1xuICAgICAgaWYgKG1hcmtlckNvbmZpZyAhPT0gZmFsc2UpIHtcbiAgICAgICAgcmV0dXJuIHsgbGF0TG5nLCAuLi5tYXJrZXJDb25maWcgfTtcbiAgICAgIH0gZWxzZSB7XG4gICAgICAgIHJldHVybiB1bmRlZmluZWQ7XG4gICAgICB9XG4gICAgfSksXG4gICAgc2hhcmVSZXBsYXkoMSlcbiAgKTtcblxuICByZWFkb25seSBtYXJrZXJTaWduYWwgPSB0b1NpZ25hbCh0aGlzLm1hcmtlciQpO1xufVxuIl19
@@ -1,59 +1,26 @@
1
1
  import { NgModule } from '@angular/core';
2
- import { CommonModule } from '@angular/common';
3
2
  import { DbxFormMapboxLatLngFieldComponent } from './latlng.field.component';
4
3
  import { FormlyModule } from '@ngx-formly/core';
5
- import { FormsModule, ReactiveFormsModule } from '@angular/forms';
6
- import { MatInputModule } from '@angular/material/input';
7
- import { DbxTextModule } from '@dereekb/dbx-web';
8
- import { NgxMapboxGLModule } from 'ngx-mapbox-gl';
9
- import { MatIconModule } from '@angular/material/icon';
10
- import { MatButtonModule } from '@angular/material/button';
11
- import { DbxMapboxModule } from '@dereekb/dbx-web/mapbox';
12
- import { DbxFormMapboxLatLngFieldMarkerComponent } from './latlng.field.marker.component';
13
4
  import * as i0 from "@angular/core";
14
5
  import * as i1 from "@ngx-formly/core";
6
+ const importsAndExports = [DbxFormMapboxLatLngFieldComponent];
15
7
  export class DbxFormMapboxLatLngModule {
16
- static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: DbxFormMapboxLatLngModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
17
- static ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "16.2.12", ngImport: i0, type: DbxFormMapboxLatLngModule, declarations: [DbxFormMapboxLatLngFieldComponent, DbxFormMapboxLatLngFieldMarkerComponent], imports: [CommonModule,
18
- MatIconModule,
19
- MatButtonModule,
20
- DbxTextModule,
21
- DbxMapboxModule,
22
- FormsModule,
23
- ReactiveFormsModule,
24
- MatInputModule, i1.FormlyModule, NgxMapboxGLModule], exports: [DbxFormMapboxLatLngFieldMarkerComponent] });
25
- static ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: DbxFormMapboxLatLngModule, imports: [CommonModule,
26
- MatIconModule,
27
- MatButtonModule,
28
- DbxTextModule,
29
- DbxMapboxModule,
30
- FormsModule,
31
- ReactiveFormsModule,
32
- MatInputModule,
33
- FormlyModule.forChild({
8
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: DbxFormMapboxLatLngModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
9
+ static ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "18.2.13", ngImport: i0, type: DbxFormMapboxLatLngModule, imports: [DbxFormMapboxLatLngFieldComponent, i1.FormlyModule], exports: [DbxFormMapboxLatLngFieldComponent] });
10
+ static ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: DbxFormMapboxLatLngModule, imports: [importsAndExports, FormlyModule.forChild({
34
11
  types: [{ name: 'mapbox-latlng-picker', component: DbxFormMapboxLatLngFieldComponent, wrappers: ['style', 'form-field'] }]
35
- }),
36
- NgxMapboxGLModule] });
12
+ })] });
37
13
  }
38
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: DbxFormMapboxLatLngModule, decorators: [{
14
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: DbxFormMapboxLatLngModule, decorators: [{
39
15
  type: NgModule,
40
16
  args: [{
41
17
  imports: [
42
- CommonModule,
43
- MatIconModule,
44
- MatButtonModule,
45
- DbxTextModule,
46
- DbxMapboxModule,
47
- FormsModule,
48
- ReactiveFormsModule,
49
- MatInputModule,
18
+ ...importsAndExports,
50
19
  FormlyModule.forChild({
51
20
  types: [{ name: 'mapbox-latlng-picker', component: DbxFormMapboxLatLngFieldComponent, wrappers: ['style', 'form-field'] }]
52
- }),
53
- NgxMapboxGLModule
21
+ })
54
22
  ],
55
- declarations: [DbxFormMapboxLatLngFieldComponent, DbxFormMapboxLatLngFieldMarkerComponent],
56
- exports: [DbxFormMapboxLatLngFieldMarkerComponent]
23
+ exports: importsAndExports
57
24
  }]
58
25
  }] });
59
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibGF0bG5nLm1vZHVsZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL3BhY2thZ2VzL2RieC1mb3JtL21hcGJveC9zcmMvbGliL2ZpZWxkL2xhdGxuZy9sYXRsbmcubW9kdWxlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxRQUFRLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDekMsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBQy9DLE9BQU8sRUFBRSxpQ0FBaUMsRUFBRSxNQUFNLDBCQUEwQixDQUFDO0FBQzdFLE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSxrQkFBa0IsQ0FBQztBQUNoRCxPQUFPLEVBQUUsV0FBVyxFQUFFLG1CQUFtQixFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFDbEUsT0FBTyxFQUFFLGNBQWMsRUFBRSxNQUFNLHlCQUF5QixDQUFDO0FBQ3pELE9BQU8sRUFBRSxhQUFhLEVBQUUsTUFBTSxrQkFBa0IsQ0FBQztBQUNqRCxPQUFPLEVBQUUsaUJBQWlCLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDbEQsT0FBTyxFQUFFLGFBQWEsRUFBRSxNQUFNLHdCQUF3QixDQUFDO0FBQ3ZELE9BQU8sRUFBRSxlQUFlLEVBQUUsTUFBTSwwQkFBMEIsQ0FBQztBQUMzRCxPQUFPLEVBQUUsZUFBZSxFQUFFLE1BQU0seUJBQXlCLENBQUM7QUFDMUQsT0FBTyxFQUFFLHVDQUF1QyxFQUFFLE1BQU0saUNBQWlDLENBQUM7OztBQW9CMUYsTUFBTSxPQUFPLHlCQUF5Qjt3R0FBekIseUJBQXlCO3lHQUF6Qix5QkFBeUIsaUJBSHJCLGlDQUFpQyxFQUFFLHVDQUF1QyxhQWJ2RixZQUFZO1lBQ1osYUFBYTtZQUNiLGVBQWU7WUFDZixhQUFhO1lBQ2IsZUFBZTtZQUNmLFdBQVc7WUFDWCxtQkFBbUI7WUFDbkIsY0FBYyxtQkFJZCxpQkFBaUIsYUFHVCx1Q0FBdUM7eUdBRXRDLHlCQUF5QixZQWhCbEMsWUFBWTtZQUNaLGFBQWE7WUFDYixlQUFlO1lBQ2YsYUFBYTtZQUNiLGVBQWU7WUFDZixXQUFXO1lBQ1gsbUJBQW1CO1lBQ25CLGNBQWM7WUFDZCxZQUFZLENBQUMsUUFBUSxDQUFDO2dCQUNwQixLQUFLLEVBQUUsQ0FBQyxFQUFFLElBQUksRUFBRSxzQkFBc0IsRUFBRSxTQUFTLEVBQUUsaUNBQWlDLEVBQUUsUUFBUSxFQUFFLENBQUMsT0FBTyxFQUFFLFlBQVksQ0FBQyxFQUFFLENBQUM7YUFDM0gsQ0FBQztZQUNGLGlCQUFpQjs7NEZBS1IseUJBQXlCO2tCQWxCckMsUUFBUTttQkFBQztvQkFDUixPQUFPLEVBQUU7d0JBQ1AsWUFBWTt3QkFDWixhQUFhO3dCQUNiLGVBQWU7d0JBQ2YsYUFBYTt3QkFDYixlQUFlO3dCQUNmLFdBQVc7d0JBQ1gsbUJBQW1CO3dCQUNuQixjQUFjO3dCQUNkLFlBQVksQ0FBQyxRQUFRLENBQUM7NEJBQ3BCLEtBQUssRUFBRSxDQUFDLEVBQUUsSUFBSSxFQUFFLHNCQUFzQixFQUFFLFNBQVMsRUFBRSxpQ0FBaUMsRUFBRSxRQUFRLEVBQUUsQ0FBQyxPQUFPLEVBQUUsWUFBWSxDQUFDLEVBQUUsQ0FBQzt5QkFDM0gsQ0FBQzt3QkFDRixpQkFBaUI7cUJBQ2xCO29CQUNELFlBQVksRUFBRSxDQUFDLGlDQUFpQyxFQUFFLHVDQUF1QyxDQUFDO29CQUMxRixPQUFPLEVBQUUsQ0FBQyx1Q0FBdUMsQ0FBQztpQkFDbkQiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBOZ01vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgQ29tbW9uTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uJztcbmltcG9ydCB7IERieEZvcm1NYXBib3hMYXRMbmdGaWVsZENvbXBvbmVudCB9IGZyb20gJy4vbGF0bG5nLmZpZWxkLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBGb3JtbHlNb2R1bGUgfSBmcm9tICdAbmd4LWZvcm1seS9jb3JlJztcbmltcG9ydCB7IEZvcm1zTW9kdWxlLCBSZWFjdGl2ZUZvcm1zTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvZm9ybXMnO1xuaW1wb3J0IHsgTWF0SW5wdXRNb2R1bGUgfSBmcm9tICdAYW5ndWxhci9tYXRlcmlhbC9pbnB1dCc7XG5pbXBvcnQgeyBEYnhUZXh0TW9kdWxlIH0gZnJvbSAnQGRlcmVla2IvZGJ4LXdlYic7XG5pbXBvcnQgeyBOZ3hNYXBib3hHTE1vZHVsZSB9IGZyb20gJ25neC1tYXBib3gtZ2wnO1xuaW1wb3J0IHsgTWF0SWNvbk1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL21hdGVyaWFsL2ljb24nO1xuaW1wb3J0IHsgTWF0QnV0dG9uTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvbWF0ZXJpYWwvYnV0dG9uJztcbmltcG9ydCB7IERieE1hcGJveE1vZHVsZSB9IGZyb20gJ0BkZXJlZWtiL2RieC13ZWIvbWFwYm94JztcbmltcG9ydCB7IERieEZvcm1NYXBib3hMYXRMbmdGaWVsZE1hcmtlckNvbXBvbmVudCB9IGZyb20gJy4vbGF0bG5nLmZpZWxkLm1hcmtlci5jb21wb25lbnQnO1xuXG5ATmdNb2R1bGUoe1xuICBpbXBvcnRzOiBbXG4gICAgQ29tbW9uTW9kdWxlLFxuICAgIE1hdEljb25Nb2R1bGUsXG4gICAgTWF0QnV0dG9uTW9kdWxlLFxuICAgIERieFRleHRNb2R1bGUsXG4gICAgRGJ4TWFwYm94TW9kdWxlLFxuICAgIEZvcm1zTW9kdWxlLFxuICAgIFJlYWN0aXZlRm9ybXNNb2R1bGUsXG4gICAgTWF0SW5wdXRNb2R1bGUsXG4gICAgRm9ybWx5TW9kdWxlLmZvckNoaWxkKHtcbiAgICAgIHR5cGVzOiBbeyBuYW1lOiAnbWFwYm94LWxhdGxuZy1waWNrZXInLCBjb21wb25lbnQ6IERieEZvcm1NYXBib3hMYXRMbmdGaWVsZENvbXBvbmVudCwgd3JhcHBlcnM6IFsnc3R5bGUnLCAnZm9ybS1maWVsZCddIH1dXG4gICAgfSksXG4gICAgTmd4TWFwYm94R0xNb2R1bGVcbiAgXSxcbiAgZGVjbGFyYXRpb25zOiBbRGJ4Rm9ybU1hcGJveExhdExuZ0ZpZWxkQ29tcG9uZW50LCBEYnhGb3JtTWFwYm94TGF0TG5nRmllbGRNYXJrZXJDb21wb25lbnRdLFxuICBleHBvcnRzOiBbRGJ4Rm9ybU1hcGJveExhdExuZ0ZpZWxkTWFya2VyQ29tcG9uZW50XVxufSlcbmV4cG9ydCBjbGFzcyBEYnhGb3JtTWFwYm94TGF0TG5nTW9kdWxlIHt9XG4iXX0=
26
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibGF0bG5nLm1vZHVsZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL3BhY2thZ2VzL2RieC1mb3JtL21hcGJveC9zcmMvbGliL2ZpZWxkL2xhdGxuZy9sYXRsbmcubW9kdWxlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxRQUFRLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDekMsT0FBTyxFQUFFLGlDQUFpQyxFQUFFLE1BQU0sMEJBQTBCLENBQUM7QUFDN0UsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLGtCQUFrQixDQUFDOzs7QUFFaEQsTUFBTSxpQkFBaUIsR0FBRyxDQUFDLGlDQUFpQyxDQUFDLENBQUM7QUFXOUQsTUFBTSxPQUFPLHlCQUF5Qjt3R0FBekIseUJBQXlCO3lHQUF6Qix5QkFBeUIsWUFYWCxpQ0FBaUMsOEJBQWpDLGlDQUFpQzt5R0FXL0MseUJBQXlCLFlBUC9CLGlCQUFpQixFQUNwQixZQUFZLENBQUMsUUFBUSxDQUFDO2dCQUNwQixLQUFLLEVBQUUsQ0FBQyxFQUFFLElBQUksRUFBRSxzQkFBc0IsRUFBRSxTQUFTLEVBQUUsaUNBQWlDLEVBQUUsUUFBUSxFQUFFLENBQUMsT0FBTyxFQUFFLFlBQVksQ0FBQyxFQUFFLENBQUM7YUFDM0gsQ0FBQzs7NEZBSU8seUJBQXlCO2tCQVRyQyxRQUFRO21CQUFDO29CQUNSLE9BQU8sRUFBRTt3QkFDUCxHQUFHLGlCQUFpQjt3QkFDcEIsWUFBWSxDQUFDLFFBQVEsQ0FBQzs0QkFDcEIsS0FBSyxFQUFFLENBQUMsRUFBRSxJQUFJLEVBQUUsc0JBQXNCLEVBQUUsU0FBUyxFQUFFLGlDQUFpQyxFQUFFLFFBQVEsRUFBRSxDQUFDLE9BQU8sRUFBRSxZQUFZLENBQUMsRUFBRSxDQUFDO3lCQUMzSCxDQUFDO3FCQUNIO29CQUNELE9BQU8sRUFBRSxpQkFBaUI7aUJBQzNCIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgTmdNb2R1bGUgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IERieEZvcm1NYXBib3hMYXRMbmdGaWVsZENvbXBvbmVudCB9IGZyb20gJy4vbGF0bG5nLmZpZWxkLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBGb3JtbHlNb2R1bGUgfSBmcm9tICdAbmd4LWZvcm1seS9jb3JlJztcblxuY29uc3QgaW1wb3J0c0FuZEV4cG9ydHMgPSBbRGJ4Rm9ybU1hcGJveExhdExuZ0ZpZWxkQ29tcG9uZW50XTtcblxuQE5nTW9kdWxlKHtcbiAgaW1wb3J0czogW1xuICAgIC4uLmltcG9ydHNBbmRFeHBvcnRzLFxuICAgIEZvcm1seU1vZHVsZS5mb3JDaGlsZCh7XG4gICAgICB0eXBlczogW3sgbmFtZTogJ21hcGJveC1sYXRsbmctcGlja2VyJywgY29tcG9uZW50OiBEYnhGb3JtTWFwYm94TGF0TG5nRmllbGRDb21wb25lbnQsIHdyYXBwZXJzOiBbJ3N0eWxlJywgJ2Zvcm0tZmllbGQnXSB9XVxuICAgIH0pXG4gIF0sXG4gIGV4cG9ydHM6IGltcG9ydHNBbmRFeHBvcnRzXG59KVxuZXhwb3J0IGNsYXNzIERieEZvcm1NYXBib3hMYXRMbmdNb2R1bGUge31cbiJdfQ==