@wavemaker/app-ng-runtime 11.9.4-rc.5964 → 11.10.0-next.142020

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 (1130) hide show
  1. app-ng-runtime/build-task/fesm2022/index.mjs +1 -1
  2. app-ng-runtime/build-task/fesm2022/index.mjs.map +1 -1
  3. app-ng-runtime/components/advanced/carousel/bundles/index.umd.js +3 -3
  4. app-ng-runtime/components/advanced/carousel/esm2022/carousel-template/carousel-template.directive.mjs +2 -2
  5. app-ng-runtime/components/advanced/carousel/esm2022/carousel.directive.mjs +2 -2
  6. app-ng-runtime/components/advanced/carousel/esm2022/carousel.module.mjs +2 -2
  7. app-ng-runtime/components/advanced/carousel/fesm2022/index.mjs +4 -4
  8. app-ng-runtime/components/advanced/carousel/fesm2022/index.mjs.map +1 -1
  9. app-ng-runtime/components/advanced/login/bundles/index.umd.js +2 -2
  10. app-ng-runtime/components/advanced/login/esm2022/login.component.mjs +2 -2
  11. app-ng-runtime/components/advanced/login/esm2022/login.module.mjs +2 -2
  12. app-ng-runtime/components/advanced/login/fesm2022/index.mjs +3 -3
  13. app-ng-runtime/components/advanced/login/fesm2022/index.mjs.map +1 -1
  14. app-ng-runtime/components/advanced/marquee/bundles/index.umd.js +2 -2
  15. app-ng-runtime/components/advanced/marquee/esm2022/marquee.directive.mjs +2 -2
  16. app-ng-runtime/components/advanced/marquee/esm2022/marquee.module.mjs +2 -2
  17. app-ng-runtime/components/advanced/marquee/fesm2022/index.mjs +3 -3
  18. app-ng-runtime/components/advanced/marquee/fesm2022/index.mjs.map +1 -1
  19. app-ng-runtime/components/base/bundles/index.umd.js +36 -36
  20. app-ng-runtime/components/base/esm2022/components.module.mjs +2 -2
  21. app-ng-runtime/components/base/esm2022/directives/show-in-device.directive.mjs +2 -2
  22. app-ng-runtime/components/base/esm2022/pipes/custom-pipes.mjs +16 -16
  23. app-ng-runtime/components/base/esm2022/pipes/image.pipe.mjs +2 -2
  24. app-ng-runtime/components/base/esm2022/pipes/sanitize.pipe.mjs +2 -2
  25. app-ng-runtime/components/base/esm2022/pipes/trust-as.pipe.mjs +2 -2
  26. app-ng-runtime/components/base/esm2022/widgets/common/base/base-container.component.mjs +1 -1
  27. app-ng-runtime/components/base/esm2022/widgets/common/base/base.component.mjs +2 -2
  28. app-ng-runtime/components/base/esm2022/widgets/common/base/partial-container.directive.mjs +2 -2
  29. app-ng-runtime/components/base/esm2022/widgets/common/base/stylable.component.mjs +2 -2
  30. app-ng-runtime/components/base/esm2022/widgets/common/base/text-content.directive.mjs +2 -2
  31. app-ng-runtime/components/base/esm2022/widgets/common/container/container.directive.mjs +2 -2
  32. app-ng-runtime/components/base/esm2022/widgets/common/dialog/dialog.service.mjs +2 -2
  33. app-ng-runtime/components/base/esm2022/widgets/common/item-template/item-template.directive.mjs +2 -2
  34. app-ng-runtime/components/base/esm2022/widgets/common/lazy-load/lazy-load.directive.mjs +2 -2
  35. app-ng-runtime/components/base/esm2022/widgets/common/message/message.component.mjs +2 -2
  36. app-ng-runtime/components/base/esm2022/widgets/common/partial/partial.directive.mjs +2 -2
  37. app-ng-runtime/components/base/esm2022/widgets/common/partial-param/partial-param.directive.mjs +3 -3
  38. app-ng-runtime/components/base/esm2022/widgets/common/redraw/redrawable.directive.mjs +2 -2
  39. app-ng-runtime/components/base/esm2022/widgets/common/repeat-template/repeat-template.directive.mjs +2 -2
  40. app-ng-runtime/components/base/esm2022/widgets/common/smooth-scroll/smooth-scroll.directive.mjs +2 -2
  41. app-ng-runtime/components/base/fesm2022/index.mjs +38 -38
  42. app-ng-runtime/components/base/fesm2022/index.mjs.map +1 -1
  43. app-ng-runtime/components/base/widgets/common/base/base-field-validations.d.ts +1 -1
  44. app-ng-runtime/components/basic/default/bundles/index.umd.js +10 -10
  45. app-ng-runtime/components/basic/default/esm2022/anchor/anchor.component.mjs +2 -2
  46. app-ng-runtime/components/basic/default/esm2022/audio/audio.component.mjs +2 -2
  47. app-ng-runtime/components/basic/default/esm2022/basic.module.mjs +2 -2
  48. app-ng-runtime/components/basic/default/esm2022/html/html.directive.mjs +2 -2
  49. app-ng-runtime/components/basic/default/esm2022/icon/icon.component.mjs +2 -2
  50. app-ng-runtime/components/basic/default/esm2022/iframe/iframe.component.mjs +2 -2
  51. app-ng-runtime/components/basic/default/esm2022/label/label.directive.mjs +2 -2
  52. app-ng-runtime/components/basic/default/esm2022/picture/picture.directive.mjs +2 -2
  53. app-ng-runtime/components/basic/default/esm2022/spinner/spinner.component.mjs +2 -2
  54. app-ng-runtime/components/basic/default/esm2022/video/video.component.mjs +2 -2
  55. app-ng-runtime/components/basic/default/fesm2022/index.mjs +11 -11
  56. app-ng-runtime/components/basic/default/fesm2022/index.mjs.map +1 -1
  57. app-ng-runtime/components/basic/progress/bundles/index.umd.js +4 -4
  58. app-ng-runtime/components/basic/progress/esm2022/progress-bar/progress-bar.component.mjs +2 -2
  59. app-ng-runtime/components/basic/progress/esm2022/progress-circle/progress-circle.component.mjs +2 -2
  60. app-ng-runtime/components/basic/progress/esm2022/progress.module.mjs +2 -2
  61. app-ng-runtime/components/basic/progress/fesm2022/index.mjs +4 -4
  62. app-ng-runtime/components/basic/progress/fesm2022/index.mjs.map +1 -1
  63. app-ng-runtime/components/basic/rich-text-editor/bundles/index.umd.js +2 -2
  64. app-ng-runtime/components/basic/rich-text-editor/esm2022/rich-text-editor.component.mjs +2 -2
  65. app-ng-runtime/components/basic/rich-text-editor/esm2022/rich-text-editor.module.mjs +2 -2
  66. app-ng-runtime/components/basic/rich-text-editor/fesm2022/index.mjs +3 -3
  67. app-ng-runtime/components/basic/rich-text-editor/fesm2022/index.mjs.map +1 -1
  68. app-ng-runtime/components/basic/search/bundles/index.umd.js +3 -3
  69. app-ng-runtime/components/basic/search/esm2022/scrollable.directive.mjs +2 -2
  70. app-ng-runtime/components/basic/search/esm2022/search.component.mjs +2 -2
  71. app-ng-runtime/components/basic/search/esm2022/search.module.mjs +2 -2
  72. app-ng-runtime/components/basic/search/fesm2022/index.mjs +4 -4
  73. app-ng-runtime/components/basic/search/fesm2022/index.mjs.map +1 -1
  74. app-ng-runtime/components/basic/tree/bundles/index.umd.js +2 -2
  75. app-ng-runtime/components/basic/tree/esm2022/tree.component.mjs +2 -2
  76. app-ng-runtime/components/basic/tree/esm2022/tree.module.mjs +2 -2
  77. app-ng-runtime/components/basic/tree/fesm2022/index.mjs +3 -3
  78. app-ng-runtime/components/basic/tree/fesm2022/index.mjs.map +1 -1
  79. app-ng-runtime/components/chart/bundles/index.umd.js +3 -3
  80. app-ng-runtime/components/chart/esm2022/chart.component.mjs +2 -2
  81. app-ng-runtime/components/chart/esm2022/chart.module.mjs +2 -2
  82. app-ng-runtime/components/chart/fesm2022/index.mjs +4 -4
  83. app-ng-runtime/components/chart/fesm2022/index.mjs.map +1 -1
  84. app-ng-runtime/components/containers/accordion/bundles/index.umd.js +3 -3
  85. app-ng-runtime/components/containers/accordion/esm2022/accordion-pane/accordion-pane.component.mjs +2 -2
  86. app-ng-runtime/components/containers/accordion/esm2022/accordion.directive.mjs +2 -2
  87. app-ng-runtime/components/containers/accordion/esm2022/accordion.module.mjs +2 -2
  88. app-ng-runtime/components/containers/accordion/fesm2022/index.mjs +5 -5
  89. app-ng-runtime/components/containers/accordion/fesm2022/index.mjs.map +1 -1
  90. app-ng-runtime/components/containers/layout-grid/bundles/index.umd.js +4 -4
  91. app-ng-runtime/components/containers/layout-grid/esm2022/layout-grid-column/layout-grid-column.directive.mjs +2 -2
  92. app-ng-runtime/components/containers/layout-grid/esm2022/layout-grid-row/layout-grid-row.directive.mjs +2 -2
  93. app-ng-runtime/components/containers/layout-grid/esm2022/layout-grid.directive.mjs +2 -2
  94. app-ng-runtime/components/containers/layout-grid/esm2022/layout-grid.module.mjs +2 -2
  95. app-ng-runtime/components/containers/layout-grid/fesm2022/index.mjs +5 -5
  96. app-ng-runtime/components/containers/layout-grid/fesm2022/index.mjs.map +1 -1
  97. app-ng-runtime/components/containers/linear-layout/bundles/index.umd.js +3 -3
  98. app-ng-runtime/components/containers/linear-layout/esm2022/linear-layout-item/linear-layout-item.directive.mjs +2 -2
  99. app-ng-runtime/components/containers/linear-layout/esm2022/linear-layout.directive.mjs +2 -2
  100. app-ng-runtime/components/containers/linear-layout/esm2022/linear-layout.module.mjs +2 -2
  101. app-ng-runtime/components/containers/linear-layout/fesm2022/index.mjs +4 -4
  102. app-ng-runtime/components/containers/linear-layout/fesm2022/index.mjs.map +1 -1
  103. app-ng-runtime/components/containers/panel/bundles/index.umd.js +2 -2
  104. app-ng-runtime/components/containers/panel/esm2022/panel.component.mjs +2 -2
  105. app-ng-runtime/components/containers/panel/esm2022/panel.module.mjs +2 -2
  106. app-ng-runtime/components/containers/panel/fesm2022/index.mjs +3 -3
  107. app-ng-runtime/components/containers/panel/fesm2022/index.mjs.map +1 -1
  108. app-ng-runtime/components/containers/tabs/bundles/index.umd.js +3 -3
  109. app-ng-runtime/components/containers/tabs/esm2022/tab-pane/tab-pane.component.mjs +2 -2
  110. app-ng-runtime/components/containers/tabs/esm2022/tabs.component.mjs +2 -2
  111. app-ng-runtime/components/containers/tabs/esm2022/tabs.module.mjs +2 -2
  112. app-ng-runtime/components/containers/tabs/fesm2022/index.mjs +5 -5
  113. app-ng-runtime/components/containers/tabs/fesm2022/index.mjs.map +1 -1
  114. app-ng-runtime/components/containers/tile/bundles/index.umd.js +2 -2
  115. app-ng-runtime/components/containers/tile/esm2022/tile.directive.mjs +2 -2
  116. app-ng-runtime/components/containers/tile/esm2022/tile.module.mjs +2 -2
  117. app-ng-runtime/components/containers/tile/fesm2022/index.mjs +3 -3
  118. app-ng-runtime/components/containers/tile/fesm2022/index.mjs.map +1 -1
  119. app-ng-runtime/components/containers/wizard/bundles/index.umd.js +3 -3
  120. app-ng-runtime/components/containers/wizard/esm2022/wizard-step/wizard-step.directive.mjs +2 -2
  121. app-ng-runtime/components/containers/wizard/esm2022/wizard.component.mjs +2 -2
  122. app-ng-runtime/components/containers/wizard/esm2022/wizard.module.mjs +2 -2
  123. app-ng-runtime/components/containers/wizard/fesm2022/index.mjs +4 -4
  124. app-ng-runtime/components/containers/wizard/fesm2022/index.mjs.map +1 -1
  125. app-ng-runtime/components/data/card/bundles/index.umd.js +5 -5
  126. app-ng-runtime/components/data/card/esm2022/card-actions/card-actions.directive.mjs +2 -2
  127. app-ng-runtime/components/data/card/esm2022/card-content/card-content.component.mjs +2 -2
  128. app-ng-runtime/components/data/card/esm2022/card-footer/card-footer.directive.mjs +2 -2
  129. app-ng-runtime/components/data/card/esm2022/card.component.mjs +2 -2
  130. app-ng-runtime/components/data/card/esm2022/card.module.mjs +2 -2
  131. app-ng-runtime/components/data/card/fesm2022/index.mjs +6 -6
  132. app-ng-runtime/components/data/card/fesm2022/index.mjs.map +1 -1
  133. app-ng-runtime/components/data/form/bundles/index.umd.js +9 -9
  134. app-ng-runtime/components/data/form/esm2022/form-action/form-action.directive.mjs +2 -2
  135. app-ng-runtime/components/data/form/esm2022/form-field/form-field.directive.mjs +2 -2
  136. app-ng-runtime/components/data/form/esm2022/form-widget.directive.mjs +2 -2
  137. app-ng-runtime/components/data/form/esm2022/form.component.mjs +2 -2
  138. app-ng-runtime/components/data/form/esm2022/form.module.mjs +2 -2
  139. app-ng-runtime/components/data/form/esm2022/live-actions/dependson.directive.mjs +2 -2
  140. app-ng-runtime/components/data/form/esm2022/live-actions/live-actions.directive.mjs +2 -2
  141. app-ng-runtime/components/data/form/esm2022/live-filter/live-filter.directive.mjs +2 -2
  142. app-ng-runtime/components/data/form/esm2022/live-form/live-form.directive.mjs +2 -2
  143. app-ng-runtime/components/data/form/fesm2022/index.mjs +11 -11
  144. app-ng-runtime/components/data/form/fesm2022/index.mjs.map +1 -1
  145. app-ng-runtime/components/data/list/bundles/index.umd.js +3 -3
  146. app-ng-runtime/components/data/list/esm2022/list-item.directive.mjs +2 -2
  147. app-ng-runtime/components/data/list/esm2022/list.component.mjs +2 -2
  148. app-ng-runtime/components/data/list/esm2022/list.module.mjs +2 -2
  149. app-ng-runtime/components/data/list/fesm2022/index.mjs +4 -4
  150. app-ng-runtime/components/data/list/fesm2022/index.mjs.map +1 -1
  151. app-ng-runtime/components/data/live-table/bundles/index.umd.js +2 -2
  152. app-ng-runtime/components/data/live-table/esm2022/live-table.component.mjs +2 -2
  153. app-ng-runtime/components/data/live-table/esm2022/live-table.module.mjs +2 -2
  154. app-ng-runtime/components/data/live-table/fesm2022/index.mjs +3 -3
  155. app-ng-runtime/components/data/live-table/fesm2022/index.mjs.map +1 -1
  156. app-ng-runtime/components/data/pagination/bundles/index.umd.js +2 -2
  157. app-ng-runtime/components/data/pagination/esm2022/pagination.component.mjs +2 -2
  158. app-ng-runtime/components/data/pagination/esm2022/pagination.module.mjs +2 -2
  159. app-ng-runtime/components/data/pagination/fesm2022/index.mjs +3 -3
  160. app-ng-runtime/components/data/pagination/fesm2022/index.mjs.map +1 -1
  161. app-ng-runtime/components/data/table/bundles/index.umd.js +9 -9
  162. app-ng-runtime/components/data/table/esm2022/table-action/table-action.directive.mjs +2 -2
  163. app-ng-runtime/components/data/table/esm2022/table-column/table-column.directive.mjs +2 -2
  164. app-ng-runtime/components/data/table/esm2022/table-column-group/table-column-group.directive.mjs +2 -2
  165. app-ng-runtime/components/data/table/esm2022/table-cud.directive.mjs +2 -2
  166. app-ng-runtime/components/data/table/esm2022/table-filter.directive.mjs +2 -2
  167. app-ng-runtime/components/data/table/esm2022/table-row/table-row.directive.mjs +2 -2
  168. app-ng-runtime/components/data/table/esm2022/table-row-action/table-row-action.directive.mjs +2 -2
  169. app-ng-runtime/components/data/table/esm2022/table.component.mjs +2 -2
  170. app-ng-runtime/components/data/table/esm2022/table.module.mjs +2 -2
  171. app-ng-runtime/components/data/table/fesm2022/index.mjs +11 -11
  172. app-ng-runtime/components/data/table/fesm2022/index.mjs.map +1 -1
  173. app-ng-runtime/components/dialogs/alert-dialog/bundles/index.umd.js +2 -2
  174. app-ng-runtime/components/dialogs/alert-dialog/esm2022/alert-dialog.component.mjs +2 -2
  175. app-ng-runtime/components/dialogs/alert-dialog/esm2022/alert-dialog.module.mjs +2 -2
  176. app-ng-runtime/components/dialogs/alert-dialog/fesm2022/index.mjs +3 -3
  177. app-ng-runtime/components/dialogs/alert-dialog/fesm2022/index.mjs.map +1 -1
  178. app-ng-runtime/components/dialogs/confirm-dialog/bundles/index.umd.js +2 -2
  179. app-ng-runtime/components/dialogs/confirm-dialog/esm2022/confirm-dialog.component.mjs +2 -2
  180. app-ng-runtime/components/dialogs/confirm-dialog/esm2022/confirm-dialog.module.mjs +2 -2
  181. app-ng-runtime/components/dialogs/confirm-dialog/fesm2022/index.mjs +3 -3
  182. app-ng-runtime/components/dialogs/confirm-dialog/fesm2022/index.mjs.map +1 -1
  183. app-ng-runtime/components/dialogs/default/bundles/index.umd.js +5 -5
  184. app-ng-runtime/components/dialogs/default/esm2022/base-dialog.mjs +2 -2
  185. app-ng-runtime/components/dialogs/default/esm2022/dialog-body/dialog-body.directive.mjs +2 -2
  186. app-ng-runtime/components/dialogs/default/esm2022/dialog-footer/dialog-footer.directive.mjs +2 -2
  187. app-ng-runtime/components/dialogs/default/esm2022/dialog-header/dialog-header.component.mjs +2 -2
  188. app-ng-runtime/components/dialogs/default/esm2022/dialog.module.mjs +2 -2
  189. app-ng-runtime/components/dialogs/default/fesm2022/index.mjs +6 -6
  190. app-ng-runtime/components/dialogs/default/fesm2022/index.mjs.map +1 -1
  191. app-ng-runtime/components/dialogs/design-dialog/bundles/index.umd.js +2 -2
  192. app-ng-runtime/components/dialogs/design-dialog/esm2022/design-dialog.module.mjs +2 -2
  193. app-ng-runtime/components/dialogs/design-dialog/esm2022/dialog.component.mjs +2 -2
  194. app-ng-runtime/components/dialogs/design-dialog/fesm2022/index.mjs +3 -3
  195. app-ng-runtime/components/dialogs/design-dialog/fesm2022/index.mjs.map +1 -1
  196. app-ng-runtime/components/dialogs/iframe-dialog/bundles/index.umd.js +2 -2
  197. app-ng-runtime/components/dialogs/iframe-dialog/esm2022/iframe-dialog.component.mjs +2 -2
  198. app-ng-runtime/components/dialogs/iframe-dialog/esm2022/iframe-dialog.module.mjs +2 -2
  199. app-ng-runtime/components/dialogs/iframe-dialog/fesm2022/index.mjs +3 -3
  200. app-ng-runtime/components/dialogs/iframe-dialog/fesm2022/index.mjs.map +1 -1
  201. app-ng-runtime/components/dialogs/login-dialog/bundles/index.umd.js +2 -2
  202. app-ng-runtime/components/dialogs/login-dialog/esm2022/login-dialog.directive.mjs +2 -2
  203. app-ng-runtime/components/dialogs/login-dialog/esm2022/login-dialog.module.mjs +2 -2
  204. app-ng-runtime/components/dialogs/login-dialog/fesm2022/index.mjs +2 -2
  205. app-ng-runtime/components/dialogs/login-dialog/fesm2022/index.mjs.map +1 -1
  206. app-ng-runtime/components/dialogs/partial-dialog/bundles/index.umd.js +2 -2
  207. app-ng-runtime/components/dialogs/partial-dialog/esm2022/partial-dialog.component.mjs +2 -2
  208. app-ng-runtime/components/dialogs/partial-dialog/esm2022/partial-dialog.module.mjs +2 -2
  209. app-ng-runtime/components/dialogs/partial-dialog/fesm2022/index.mjs +3 -3
  210. app-ng-runtime/components/dialogs/partial-dialog/fesm2022/index.mjs.map +1 -1
  211. app-ng-runtime/components/input/calendar/bundles/index.umd.js +2 -2
  212. app-ng-runtime/components/input/calendar/esm2022/calendar.component.mjs +2 -2
  213. app-ng-runtime/components/input/calendar/esm2022/calendar.module.mjs +2 -2
  214. app-ng-runtime/components/input/calendar/fesm2022/index.mjs +4 -4
  215. app-ng-runtime/components/input/calendar/fesm2022/index.mjs.map +1 -1
  216. app-ng-runtime/components/input/chips/bundles/index.umd.js +2 -2
  217. app-ng-runtime/components/input/chips/esm2022/chips.component.mjs +2 -2
  218. app-ng-runtime/components/input/chips/esm2022/chips.module.mjs +2 -2
  219. app-ng-runtime/components/input/chips/fesm2022/index.mjs +3 -3
  220. app-ng-runtime/components/input/chips/fesm2022/index.mjs.map +1 -1
  221. app-ng-runtime/components/input/color-picker/bundles/index.umd.js +2 -2
  222. app-ng-runtime/components/input/color-picker/esm2022/color-picker.component.mjs +2 -2
  223. app-ng-runtime/components/input/color-picker/esm2022/color-picker.module.mjs +2 -2
  224. app-ng-runtime/components/input/color-picker/fesm2022/index.mjs +2 -2
  225. app-ng-runtime/components/input/color-picker/fesm2022/index.mjs.map +1 -1
  226. app-ng-runtime/components/input/currency/bundles/index.umd.js +2 -2
  227. app-ng-runtime/components/input/currency/esm2022/currency.component.mjs +2 -2
  228. app-ng-runtime/components/input/currency/esm2022/currency.module.mjs +2 -2
  229. app-ng-runtime/components/input/currency/fesm2022/index.mjs +2 -2
  230. app-ng-runtime/components/input/currency/fesm2022/index.mjs.map +1 -1
  231. app-ng-runtime/components/input/default/bundles/index.umd.js +21 -21
  232. app-ng-runtime/components/input/default/esm2022/base-form-custom.component.mjs +2 -2
  233. app-ng-runtime/components/input/default/esm2022/base-form.component.mjs +2 -2
  234. app-ng-runtime/components/input/default/esm2022/button/button.component.mjs +2 -2
  235. app-ng-runtime/components/input/default/esm2022/button-group/button-group.directive.mjs +2 -2
  236. app-ng-runtime/components/input/default/esm2022/caption-position.directive.mjs +2 -2
  237. app-ng-runtime/components/input/default/esm2022/checkbox/checkbox.component.mjs +2 -2
  238. app-ng-runtime/components/input/default/esm2022/checkboxset/checkboxset.component.mjs +2 -2
  239. app-ng-runtime/components/input/default/esm2022/composite/composite.directive.mjs +2 -2
  240. app-ng-runtime/components/input/default/esm2022/dataset-aware-form.component.mjs +2 -2
  241. app-ng-runtime/components/input/default/esm2022/input.module.mjs +2 -2
  242. app-ng-runtime/components/input/default/esm2022/number/number.component.mjs +2 -2
  243. app-ng-runtime/components/input/default/esm2022/radioset/radioset.component.mjs +2 -2
  244. app-ng-runtime/components/input/default/esm2022/select/select.component.mjs +2 -2
  245. app-ng-runtime/components/input/default/esm2022/switch/switch.component.mjs +2 -2
  246. app-ng-runtime/components/input/default/esm2022/text/base/base-input.mjs +2 -2
  247. app-ng-runtime/components/input/default/esm2022/text/calendar/input-calendar.component.mjs +2 -2
  248. app-ng-runtime/components/input/default/esm2022/text/color/input-color.component.mjs +2 -2
  249. app-ng-runtime/components/input/default/esm2022/text/email/input-email.component.mjs +2 -2
  250. app-ng-runtime/components/input/default/esm2022/text/number/input-number.component.mjs +2 -2
  251. app-ng-runtime/components/input/default/esm2022/text/text/input-text.component.mjs +2 -2
  252. app-ng-runtime/components/input/default/esm2022/textarea/textarea.component.mjs +2 -2
  253. app-ng-runtime/components/input/default/fesm2022/index.mjs +26 -26
  254. app-ng-runtime/components/input/default/fesm2022/index.mjs.map +1 -1
  255. app-ng-runtime/components/input/epoch/bundles/index.umd.js +10 -10
  256. app-ng-runtime/components/input/epoch/esm2022/base-date-time.component.mjs +1 -1
  257. app-ng-runtime/components/input/epoch/esm2022/date/date.component.mjs +2 -2
  258. app-ng-runtime/components/input/epoch/esm2022/date-time/date-time-picker.component.mjs +4 -4
  259. app-ng-runtime/components/input/epoch/esm2022/date-time/date-time.component.mjs +2 -2
  260. app-ng-runtime/components/input/epoch/esm2022/epoch.module.mjs +2 -2
  261. app-ng-runtime/components/input/epoch/esm2022/picker/picker.component.mjs +3 -3
  262. app-ng-runtime/components/input/epoch/esm2022/time/time.component.mjs +2 -2
  263. app-ng-runtime/components/input/epoch/fesm2022/index.mjs +11 -11
  264. app-ng-runtime/components/input/epoch/fesm2022/index.mjs.map +1 -1
  265. app-ng-runtime/components/input/file-upload/bundles/index.umd.js +2 -2
  266. app-ng-runtime/components/input/file-upload/esm2022/file-upload.component.mjs +2 -2
  267. app-ng-runtime/components/input/file-upload/esm2022/file-upload.module.mjs +2 -2
  268. app-ng-runtime/components/input/file-upload/fesm2022/index.mjs +3 -3
  269. app-ng-runtime/components/input/file-upload/fesm2022/index.mjs.map +1 -1
  270. app-ng-runtime/components/input/rating/bundles/index.umd.js +2 -2
  271. app-ng-runtime/components/input/rating/esm2022/rating.component.mjs +2 -2
  272. app-ng-runtime/components/input/rating/esm2022/rating.module.mjs +2 -2
  273. app-ng-runtime/components/input/rating/fesm2022/index.mjs +2 -2
  274. app-ng-runtime/components/input/rating/fesm2022/index.mjs.map +1 -1
  275. app-ng-runtime/components/input/slider/bundles/index.umd.js +2 -2
  276. app-ng-runtime/components/input/slider/esm2022/slider.component.mjs +2 -2
  277. app-ng-runtime/components/input/slider/esm2022/slider.module.mjs +2 -2
  278. app-ng-runtime/components/input/slider/fesm2022/index.mjs +2 -2
  279. app-ng-runtime/components/input/slider/fesm2022/index.mjs.map +1 -1
  280. app-ng-runtime/components/navigation/breadcrumb/bundles/index.umd.js +2 -2
  281. app-ng-runtime/components/navigation/breadcrumb/esm2022/breadcrumb.component.mjs +2 -2
  282. app-ng-runtime/components/navigation/breadcrumb/esm2022/breadcrumb.module.mjs +2 -2
  283. app-ng-runtime/components/navigation/breadcrumb/fesm2022/index.mjs +3 -3
  284. app-ng-runtime/components/navigation/breadcrumb/fesm2022/index.mjs.map +1 -1
  285. app-ng-runtime/components/navigation/menu/bundles/index.umd.js +8 -8
  286. app-ng-runtime/components/navigation/menu/esm2022/menu-adapator.component.mjs +1 -1
  287. app-ng-runtime/components/navigation/menu/esm2022/menu-dropdown/menu-dropdown.component.mjs +2 -2
  288. app-ng-runtime/components/navigation/menu/esm2022/menu-dropdown-item/menu-dropdown-item.component.mjs +2 -2
  289. app-ng-runtime/components/navigation/menu/esm2022/menu.component.mjs +2 -2
  290. app-ng-runtime/components/navigation/menu/esm2022/menu.module.mjs +2 -2
  291. app-ng-runtime/components/navigation/menu/esm2022/nav/nav-item/nav-item.directive.mjs +2 -2
  292. app-ng-runtime/components/navigation/menu/esm2022/nav/nav.component.mjs +2 -2
  293. app-ng-runtime/components/navigation/menu/esm2022/nav/navigation-control.directive.mjs +2 -2
  294. app-ng-runtime/components/navigation/menu/fesm2022/index.mjs +10 -10
  295. app-ng-runtime/components/navigation/menu/fesm2022/index.mjs.map +1 -1
  296. app-ng-runtime/components/navigation/navbar/bundles/index.umd.js +2 -2
  297. app-ng-runtime/components/navigation/navbar/esm2022/navbar.component.mjs +2 -2
  298. app-ng-runtime/components/navigation/navbar/esm2022/navbar.module.mjs +2 -2
  299. app-ng-runtime/components/navigation/navbar/fesm2022/index.mjs +3 -3
  300. app-ng-runtime/components/navigation/navbar/fesm2022/index.mjs.map +1 -1
  301. app-ng-runtime/components/navigation/popover/bundles/index.umd.js +2 -2
  302. app-ng-runtime/components/navigation/popover/esm2022/popover.component.mjs +2 -2
  303. app-ng-runtime/components/navigation/popover/esm2022/popover.module.mjs +2 -2
  304. app-ng-runtime/components/navigation/popover/fesm2022/index.mjs +3 -3
  305. app-ng-runtime/components/navigation/popover/fesm2022/index.mjs.map +1 -1
  306. app-ng-runtime/components/page/default/bundles/index.umd.js +7 -7
  307. app-ng-runtime/components/page/default/esm2022/content/content.component.mjs +2 -2
  308. app-ng-runtime/components/page/default/esm2022/layout.directive.mjs +2 -2
  309. app-ng-runtime/components/page/default/esm2022/page-content/page-content.component.mjs +2 -2
  310. app-ng-runtime/components/page/default/esm2022/page.directive.mjs +2 -2
  311. app-ng-runtime/components/page/default/esm2022/page.module.mjs +2 -2
  312. app-ng-runtime/components/page/default/esm2022/router-outlet.directive.mjs +2 -2
  313. app-ng-runtime/components/page/default/esm2022/spa-page.directive.mjs +2 -2
  314. app-ng-runtime/components/page/default/fesm2022/index.mjs +8 -8
  315. app-ng-runtime/components/page/default/fesm2022/index.mjs.map +1 -1
  316. app-ng-runtime/components/page/footer/bundles/index.umd.js +2 -2
  317. app-ng-runtime/components/page/footer/esm2022/footer.directive.mjs +2 -2
  318. app-ng-runtime/components/page/footer/esm2022/footer.module.mjs +2 -2
  319. app-ng-runtime/components/page/footer/fesm2022/index.mjs +3 -3
  320. app-ng-runtime/components/page/footer/fesm2022/index.mjs.map +1 -1
  321. app-ng-runtime/components/page/header/bundles/index.umd.js +2 -2
  322. app-ng-runtime/components/page/header/esm2022/header.component.mjs +2 -2
  323. app-ng-runtime/components/page/header/esm2022/header.module.mjs +2 -2
  324. app-ng-runtime/components/page/header/fesm2022/index.mjs +3 -3
  325. app-ng-runtime/components/page/header/fesm2022/index.mjs.map +1 -1
  326. app-ng-runtime/components/page/left-panel/bundles/index.umd.js +2 -2
  327. app-ng-runtime/components/page/left-panel/esm2022/left-panel.directive.mjs +2 -2
  328. app-ng-runtime/components/page/left-panel/esm2022/left-panel.module.mjs +2 -2
  329. app-ng-runtime/components/page/left-panel/fesm2022/index.mjs +3 -3
  330. app-ng-runtime/components/page/left-panel/fesm2022/index.mjs.map +1 -1
  331. app-ng-runtime/components/page/right-panel/bundles/index.umd.js +2 -2
  332. app-ng-runtime/components/page/right-panel/esm2022/right-panel.directive.mjs +2 -2
  333. app-ng-runtime/components/page/right-panel/esm2022/right-panel.module.mjs +2 -2
  334. app-ng-runtime/components/page/right-panel/fesm2022/index.mjs +3 -3
  335. app-ng-runtime/components/page/right-panel/fesm2022/index.mjs.map +1 -1
  336. app-ng-runtime/components/page/top-nav/bundles/index.umd.js +2 -2
  337. app-ng-runtime/components/page/top-nav/esm2022/top-nav.directive.mjs +2 -2
  338. app-ng-runtime/components/page/top-nav/esm2022/top-nav.module.mjs +2 -2
  339. app-ng-runtime/components/page/top-nav/fesm2022/index.mjs +3 -3
  340. app-ng-runtime/components/page/top-nav/fesm2022/index.mjs.map +1 -1
  341. app-ng-runtime/components/prefab/bundles/index.umd.js +3 -3
  342. app-ng-runtime/components/prefab/esm2022/prefab-container/prefab-container.directive.mjs +2 -2
  343. app-ng-runtime/components/prefab/esm2022/prefab.directive.mjs +2 -2
  344. app-ng-runtime/components/prefab/esm2022/prefab.module.mjs +2 -2
  345. app-ng-runtime/components/prefab/fesm2022/index.mjs +3 -3
  346. app-ng-runtime/components/prefab/fesm2022/index.mjs.map +1 -1
  347. app-ng-runtime/core/bundles/index.umd.js +11 -11
  348. app-ng-runtime/core/esm2022/core.module.mjs +2 -2
  349. app-ng-runtime/core/esm2022/services/constant.service.mjs +2 -2
  350. app-ng-runtime/core/esm2022/services/custom-icons-loader.service.mjs +2 -2
  351. app-ng-runtime/core/esm2022/services/field-type.service.mjs +2 -2
  352. app-ng-runtime/core/esm2022/services/field-widget.service.mjs +2 -2
  353. app-ng-runtime/core/esm2022/services/pagination.service.mjs +2 -2
  354. app-ng-runtime/core/esm2022/services/script-loader.service.mjs +2 -2
  355. app-ng-runtime/core/esm2022/services/state-persistence.service.mjs +2 -2
  356. app-ng-runtime/core/esm2022/services/user-custom-pipe-manager.service.mjs +2 -2
  357. app-ng-runtime/core/esm2022/services/utils.service.mjs +2 -2
  358. app-ng-runtime/core/esm2022/services/viewport.service.mjs +2 -2
  359. app-ng-runtime/core/fesm2022/index.mjs +13 -13
  360. app-ng-runtime/core/fesm2022/index.mjs.map +1 -1
  361. app-ng-runtime/http/bundles/index.umd.js +2 -2
  362. app-ng-runtime/http/esm2022/http-service.module.mjs +2 -2
  363. app-ng-runtime/http/esm2022/http.service.mjs +2 -2
  364. app-ng-runtime/http/fesm2022/index.mjs +2 -2
  365. app-ng-runtime/http/fesm2022/index.mjs.map +1 -1
  366. app-ng-runtime/locales/angular/global/af-na.js +1 -1
  367. app-ng-runtime/locales/angular/global/af.js +1 -1
  368. app-ng-runtime/locales/angular/global/agq.js +1 -1
  369. app-ng-runtime/locales/angular/global/ak.js +1 -1
  370. app-ng-runtime/locales/angular/global/am.js +1 -1
  371. app-ng-runtime/locales/angular/global/ar-ae.js +1 -1
  372. app-ng-runtime/locales/angular/global/ar-bh.js +1 -1
  373. app-ng-runtime/locales/angular/global/ar-dj.js +1 -1
  374. app-ng-runtime/locales/angular/global/ar-dz.js +1 -1
  375. app-ng-runtime/locales/angular/global/ar-eg.js +1 -1
  376. app-ng-runtime/locales/angular/global/ar-eh.js +1 -1
  377. app-ng-runtime/locales/angular/global/ar-er.js +1 -1
  378. app-ng-runtime/locales/angular/global/ar-il.js +1 -1
  379. app-ng-runtime/locales/angular/global/ar-iq.js +1 -1
  380. app-ng-runtime/locales/angular/global/ar-jo.js +1 -1
  381. app-ng-runtime/locales/angular/global/ar-km.js +1 -1
  382. app-ng-runtime/locales/angular/global/ar-kw.js +1 -1
  383. app-ng-runtime/locales/angular/global/ar-lb.js +1 -1
  384. app-ng-runtime/locales/angular/global/ar-ly.js +1 -1
  385. app-ng-runtime/locales/angular/global/ar-ma.js +1 -1
  386. app-ng-runtime/locales/angular/global/ar-mr.js +1 -1
  387. app-ng-runtime/locales/angular/global/ar-om.js +1 -1
  388. app-ng-runtime/locales/angular/global/ar-ps.js +1 -1
  389. app-ng-runtime/locales/angular/global/ar-qa.js +1 -1
  390. app-ng-runtime/locales/angular/global/ar-sa.js +1 -1
  391. app-ng-runtime/locales/angular/global/ar-sd.js +1 -1
  392. app-ng-runtime/locales/angular/global/ar-so.js +1 -1
  393. app-ng-runtime/locales/angular/global/ar-ss.js +1 -1
  394. app-ng-runtime/locales/angular/global/ar-sy.js +1 -1
  395. app-ng-runtime/locales/angular/global/ar-td.js +1 -1
  396. app-ng-runtime/locales/angular/global/ar-tn.js +1 -1
  397. app-ng-runtime/locales/angular/global/ar-ye.js +1 -1
  398. app-ng-runtime/locales/angular/global/ar.js +1 -1
  399. app-ng-runtime/locales/angular/global/as.js +1 -1
  400. app-ng-runtime/locales/angular/global/asa.js +1 -1
  401. app-ng-runtime/locales/angular/global/ast.js +1 -1
  402. app-ng-runtime/locales/angular/global/az-cyrl.js +1 -1
  403. app-ng-runtime/locales/angular/global/az-latn.js +1 -1
  404. app-ng-runtime/locales/angular/global/az.js +1 -1
  405. app-ng-runtime/locales/angular/global/bas.js +1 -1
  406. app-ng-runtime/locales/angular/global/be-tarask.js +1 -1
  407. app-ng-runtime/locales/angular/global/be.js +1 -1
  408. app-ng-runtime/locales/angular/global/bem.js +1 -1
  409. app-ng-runtime/locales/angular/global/bez.js +1 -1
  410. app-ng-runtime/locales/angular/global/bg.js +1 -1
  411. app-ng-runtime/locales/angular/global/bm.js +1 -1
  412. app-ng-runtime/locales/angular/global/bn-in.js +1 -1
  413. app-ng-runtime/locales/angular/global/bn.js +1 -1
  414. app-ng-runtime/locales/angular/global/bo-in.js +1 -1
  415. app-ng-runtime/locales/angular/global/bo.js +1 -1
  416. app-ng-runtime/locales/angular/global/br.js +1 -1
  417. app-ng-runtime/locales/angular/global/brx.js +1 -1
  418. app-ng-runtime/locales/angular/global/bs-cyrl.js +1 -1
  419. app-ng-runtime/locales/angular/global/bs-latn.js +1 -1
  420. app-ng-runtime/locales/angular/global/bs.js +1 -1
  421. app-ng-runtime/locales/angular/global/ca-ad.js +1 -1
  422. app-ng-runtime/locales/angular/global/ca-es-valencia.js +1 -1
  423. app-ng-runtime/locales/angular/global/ca-fr.js +1 -1
  424. app-ng-runtime/locales/angular/global/ca-it.js +1 -1
  425. app-ng-runtime/locales/angular/global/ca.js +1 -1
  426. app-ng-runtime/locales/angular/global/ccp-in.js +1 -1
  427. app-ng-runtime/locales/angular/global/ccp.js +1 -1
  428. app-ng-runtime/locales/angular/global/ce.js +1 -1
  429. app-ng-runtime/locales/angular/global/ceb.js +1 -1
  430. app-ng-runtime/locales/angular/global/cgg.js +1 -1
  431. app-ng-runtime/locales/angular/global/chr.js +1 -1
  432. app-ng-runtime/locales/angular/global/ckb-ir.js +1 -1
  433. app-ng-runtime/locales/angular/global/ckb.js +1 -1
  434. app-ng-runtime/locales/angular/global/cs.js +1 -1
  435. app-ng-runtime/locales/angular/global/cy.js +1 -1
  436. app-ng-runtime/locales/angular/global/da-gl.js +1 -1
  437. app-ng-runtime/locales/angular/global/da.js +1 -1
  438. app-ng-runtime/locales/angular/global/dav.js +1 -1
  439. app-ng-runtime/locales/angular/global/de-at.js +1 -1
  440. app-ng-runtime/locales/angular/global/de-be.js +1 -1
  441. app-ng-runtime/locales/angular/global/de-ch.js +1 -1
  442. app-ng-runtime/locales/angular/global/de-it.js +1 -1
  443. app-ng-runtime/locales/angular/global/de-li.js +1 -1
  444. app-ng-runtime/locales/angular/global/de-lu.js +1 -1
  445. app-ng-runtime/locales/angular/global/de.js +1 -1
  446. app-ng-runtime/locales/angular/global/dje.js +1 -1
  447. app-ng-runtime/locales/angular/global/doi.js +1 -1
  448. app-ng-runtime/locales/angular/global/dsb.js +1 -1
  449. app-ng-runtime/locales/angular/global/dua.js +1 -1
  450. app-ng-runtime/locales/angular/global/dyo.js +1 -1
  451. app-ng-runtime/locales/angular/global/dz.js +1 -1
  452. app-ng-runtime/locales/angular/global/ebu.js +1 -1
  453. app-ng-runtime/locales/angular/global/ee-tg.js +1 -1
  454. app-ng-runtime/locales/angular/global/ee.js +1 -1
  455. app-ng-runtime/locales/angular/global/el-cy.js +1 -1
  456. app-ng-runtime/locales/angular/global/el.js +1 -1
  457. app-ng-runtime/locales/angular/global/en-001.js +1 -1
  458. app-ng-runtime/locales/angular/global/en-150.js +1 -1
  459. app-ng-runtime/locales/angular/global/en-ae.js +1 -1
  460. app-ng-runtime/locales/angular/global/en-ag.js +1 -1
  461. app-ng-runtime/locales/angular/global/en-ai.js +1 -1
  462. app-ng-runtime/locales/angular/global/en-as.js +1 -1
  463. app-ng-runtime/locales/angular/global/en-at.js +1 -1
  464. app-ng-runtime/locales/angular/global/en-au.js +1 -1
  465. app-ng-runtime/locales/angular/global/en-bb.js +1 -1
  466. app-ng-runtime/locales/angular/global/en-be.js +1 -1
  467. app-ng-runtime/locales/angular/global/en-bi.js +1 -1
  468. app-ng-runtime/locales/angular/global/en-bm.js +1 -1
  469. app-ng-runtime/locales/angular/global/en-bs.js +1 -1
  470. app-ng-runtime/locales/angular/global/en-bw.js +1 -1
  471. app-ng-runtime/locales/angular/global/en-bz.js +1 -1
  472. app-ng-runtime/locales/angular/global/en-ca.js +1 -1
  473. app-ng-runtime/locales/angular/global/en-cc.js +1 -1
  474. app-ng-runtime/locales/angular/global/en-ch.js +1 -1
  475. app-ng-runtime/locales/angular/global/en-ck.js +1 -1
  476. app-ng-runtime/locales/angular/global/en-cm.js +1 -1
  477. app-ng-runtime/locales/angular/global/en-cx.js +1 -1
  478. app-ng-runtime/locales/angular/global/en-cy.js +1 -1
  479. app-ng-runtime/locales/angular/global/en-de.js +1 -1
  480. app-ng-runtime/locales/angular/global/en-dg.js +1 -1
  481. app-ng-runtime/locales/angular/global/en-dk.js +1 -1
  482. app-ng-runtime/locales/angular/global/en-dm.js +1 -1
  483. app-ng-runtime/locales/angular/global/en-er.js +1 -1
  484. app-ng-runtime/locales/angular/global/en-fi.js +1 -1
  485. app-ng-runtime/locales/angular/global/en-fj.js +1 -1
  486. app-ng-runtime/locales/angular/global/en-fk.js +1 -1
  487. app-ng-runtime/locales/angular/global/en-fm.js +1 -1
  488. app-ng-runtime/locales/angular/global/en-gb.js +1 -1
  489. app-ng-runtime/locales/angular/global/en-gd.js +1 -1
  490. app-ng-runtime/locales/angular/global/en-gg.js +1 -1
  491. app-ng-runtime/locales/angular/global/en-gh.js +1 -1
  492. app-ng-runtime/locales/angular/global/en-gi.js +1 -1
  493. app-ng-runtime/locales/angular/global/en-gm.js +1 -1
  494. app-ng-runtime/locales/angular/global/en-gu.js +1 -1
  495. app-ng-runtime/locales/angular/global/en-gy.js +1 -1
  496. app-ng-runtime/locales/angular/global/en-hk.js +1 -1
  497. app-ng-runtime/locales/angular/global/en-ie.js +1 -1
  498. app-ng-runtime/locales/angular/global/en-il.js +1 -1
  499. app-ng-runtime/locales/angular/global/en-im.js +1 -1
  500. app-ng-runtime/locales/angular/global/en-in.js +1 -1
  501. app-ng-runtime/locales/angular/global/en-io.js +1 -1
  502. app-ng-runtime/locales/angular/global/en-je.js +1 -1
  503. app-ng-runtime/locales/angular/global/en-jm.js +1 -1
  504. app-ng-runtime/locales/angular/global/en-ke.js +1 -1
  505. app-ng-runtime/locales/angular/global/en-ki.js +1 -1
  506. app-ng-runtime/locales/angular/global/en-kn.js +1 -1
  507. app-ng-runtime/locales/angular/global/en-ky.js +1 -1
  508. app-ng-runtime/locales/angular/global/en-lc.js +1 -1
  509. app-ng-runtime/locales/angular/global/en-lr.js +1 -1
  510. app-ng-runtime/locales/angular/global/en-ls.js +1 -1
  511. app-ng-runtime/locales/angular/global/en-mg.js +1 -1
  512. app-ng-runtime/locales/angular/global/en-mh.js +1 -1
  513. app-ng-runtime/locales/angular/global/en-mo.js +1 -1
  514. app-ng-runtime/locales/angular/global/en-mp.js +1 -1
  515. app-ng-runtime/locales/angular/global/en-ms.js +1 -1
  516. app-ng-runtime/locales/angular/global/en-mt.js +1 -1
  517. app-ng-runtime/locales/angular/global/en-mu.js +1 -1
  518. app-ng-runtime/locales/angular/global/en-mv.js +1 -1
  519. app-ng-runtime/locales/angular/global/en-mw.js +1 -1
  520. app-ng-runtime/locales/angular/global/en-my.js +1 -1
  521. app-ng-runtime/locales/angular/global/en-na.js +1 -1
  522. app-ng-runtime/locales/angular/global/en-nf.js +1 -1
  523. app-ng-runtime/locales/angular/global/en-ng.js +1 -1
  524. app-ng-runtime/locales/angular/global/en-nl.js +1 -1
  525. app-ng-runtime/locales/angular/global/en-nr.js +1 -1
  526. app-ng-runtime/locales/angular/global/en-nu.js +1 -1
  527. app-ng-runtime/locales/angular/global/en-nz.js +1 -1
  528. app-ng-runtime/locales/angular/global/en-pg.js +1 -1
  529. app-ng-runtime/locales/angular/global/en-ph.js +1 -1
  530. app-ng-runtime/locales/angular/global/en-pk.js +1 -1
  531. app-ng-runtime/locales/angular/global/en-pn.js +1 -1
  532. app-ng-runtime/locales/angular/global/en-pr.js +1 -1
  533. app-ng-runtime/locales/angular/global/en-pw.js +1 -1
  534. app-ng-runtime/locales/angular/global/en-rw.js +1 -1
  535. app-ng-runtime/locales/angular/global/en-sb.js +1 -1
  536. app-ng-runtime/locales/angular/global/en-sc.js +1 -1
  537. app-ng-runtime/locales/angular/global/en-sd.js +1 -1
  538. app-ng-runtime/locales/angular/global/en-se.js +1 -1
  539. app-ng-runtime/locales/angular/global/en-sg.js +1 -1
  540. app-ng-runtime/locales/angular/global/en-sh.js +1 -1
  541. app-ng-runtime/locales/angular/global/en-si.js +1 -1
  542. app-ng-runtime/locales/angular/global/en-sl.js +1 -1
  543. app-ng-runtime/locales/angular/global/en-ss.js +1 -1
  544. app-ng-runtime/locales/angular/global/en-sx.js +1 -1
  545. app-ng-runtime/locales/angular/global/en-sz.js +1 -1
  546. app-ng-runtime/locales/angular/global/en-tc.js +1 -1
  547. app-ng-runtime/locales/angular/global/en-tk.js +1 -1
  548. app-ng-runtime/locales/angular/global/en-to.js +1 -1
  549. app-ng-runtime/locales/angular/global/en-tt.js +1 -1
  550. app-ng-runtime/locales/angular/global/en-tv.js +1 -1
  551. app-ng-runtime/locales/angular/global/en-tz.js +1 -1
  552. app-ng-runtime/locales/angular/global/en-ug.js +1 -1
  553. app-ng-runtime/locales/angular/global/en-um.js +1 -1
  554. app-ng-runtime/locales/angular/global/en-vc.js +1 -1
  555. app-ng-runtime/locales/angular/global/en-vg.js +1 -1
  556. app-ng-runtime/locales/angular/global/en-vi.js +1 -1
  557. app-ng-runtime/locales/angular/global/en-vu.js +1 -1
  558. app-ng-runtime/locales/angular/global/en-ws.js +1 -1
  559. app-ng-runtime/locales/angular/global/en-za.js +1 -1
  560. app-ng-runtime/locales/angular/global/en-zm.js +1 -1
  561. app-ng-runtime/locales/angular/global/en-zw.js +1 -1
  562. app-ng-runtime/locales/angular/global/en.js +1 -1
  563. app-ng-runtime/locales/angular/global/eo.js +1 -1
  564. app-ng-runtime/locales/angular/global/es-419.js +1 -1
  565. app-ng-runtime/locales/angular/global/es-ar.js +1 -1
  566. app-ng-runtime/locales/angular/global/es-bo.js +1 -1
  567. app-ng-runtime/locales/angular/global/es-br.js +1 -1
  568. app-ng-runtime/locales/angular/global/es-bz.js +1 -1
  569. app-ng-runtime/locales/angular/global/es-cl.js +1 -1
  570. app-ng-runtime/locales/angular/global/es-co.js +1 -1
  571. app-ng-runtime/locales/angular/global/es-cr.js +1 -1
  572. app-ng-runtime/locales/angular/global/es-cu.js +1 -1
  573. app-ng-runtime/locales/angular/global/es-do.js +1 -1
  574. app-ng-runtime/locales/angular/global/es-ea.js +1 -1
  575. app-ng-runtime/locales/angular/global/es-ec.js +1 -1
  576. app-ng-runtime/locales/angular/global/es-gq.js +1 -1
  577. app-ng-runtime/locales/angular/global/es-gt.js +1 -1
  578. app-ng-runtime/locales/angular/global/es-hn.js +1 -1
  579. app-ng-runtime/locales/angular/global/es-ic.js +1 -1
  580. app-ng-runtime/locales/angular/global/es-mx.js +1 -1
  581. app-ng-runtime/locales/angular/global/es-ni.js +1 -1
  582. app-ng-runtime/locales/angular/global/es-pa.js +1 -1
  583. app-ng-runtime/locales/angular/global/es-pe.js +1 -1
  584. app-ng-runtime/locales/angular/global/es-ph.js +1 -1
  585. app-ng-runtime/locales/angular/global/es-pr.js +1 -1
  586. app-ng-runtime/locales/angular/global/es-py.js +1 -1
  587. app-ng-runtime/locales/angular/global/es-sv.js +1 -1
  588. app-ng-runtime/locales/angular/global/es-us.js +1 -1
  589. app-ng-runtime/locales/angular/global/es-uy.js +1 -1
  590. app-ng-runtime/locales/angular/global/es-ve.js +1 -1
  591. app-ng-runtime/locales/angular/global/es.js +1 -1
  592. app-ng-runtime/locales/angular/global/et.js +1 -1
  593. app-ng-runtime/locales/angular/global/eu.js +1 -1
  594. app-ng-runtime/locales/angular/global/ewo.js +1 -1
  595. app-ng-runtime/locales/angular/global/fa-af.js +1 -1
  596. app-ng-runtime/locales/angular/global/fa.js +1 -1
  597. app-ng-runtime/locales/angular/global/ff-adlm-bf.js +1 -1
  598. app-ng-runtime/locales/angular/global/ff-adlm-cm.js +1 -1
  599. app-ng-runtime/locales/angular/global/ff-adlm-gh.js +1 -1
  600. app-ng-runtime/locales/angular/global/ff-adlm-gm.js +1 -1
  601. app-ng-runtime/locales/angular/global/ff-adlm-gw.js +1 -1
  602. app-ng-runtime/locales/angular/global/ff-adlm-lr.js +1 -1
  603. app-ng-runtime/locales/angular/global/ff-adlm-mr.js +1 -1
  604. app-ng-runtime/locales/angular/global/ff-adlm-ne.js +1 -1
  605. app-ng-runtime/locales/angular/global/ff-adlm-ng.js +1 -1
  606. app-ng-runtime/locales/angular/global/ff-adlm-sl.js +1 -1
  607. app-ng-runtime/locales/angular/global/ff-adlm-sn.js +1 -1
  608. app-ng-runtime/locales/angular/global/ff-adlm.js +1 -1
  609. app-ng-runtime/locales/angular/global/ff-cm.js +1 -1
  610. app-ng-runtime/locales/angular/global/ff-gn.js +1 -1
  611. app-ng-runtime/locales/angular/global/ff-latn-bf.js +1 -1
  612. app-ng-runtime/locales/angular/global/ff-latn-cm.js +1 -1
  613. app-ng-runtime/locales/angular/global/ff-latn-gh.js +1 -1
  614. app-ng-runtime/locales/angular/global/ff-latn-gm.js +1 -1
  615. app-ng-runtime/locales/angular/global/ff-latn-gn.js +1 -1
  616. app-ng-runtime/locales/angular/global/ff-latn-gw.js +1 -1
  617. app-ng-runtime/locales/angular/global/ff-latn-lr.js +1 -1
  618. app-ng-runtime/locales/angular/global/ff-latn-mr.js +1 -1
  619. app-ng-runtime/locales/angular/global/ff-latn-ne.js +1 -1
  620. app-ng-runtime/locales/angular/global/ff-latn-ng.js +1 -1
  621. app-ng-runtime/locales/angular/global/ff-latn-sl.js +1 -1
  622. app-ng-runtime/locales/angular/global/ff-latn.js +1 -1
  623. app-ng-runtime/locales/angular/global/ff-mr.js +1 -1
  624. app-ng-runtime/locales/angular/global/ff.js +1 -1
  625. app-ng-runtime/locales/angular/global/fi.js +1 -1
  626. app-ng-runtime/locales/angular/global/fil.js +1 -1
  627. app-ng-runtime/locales/angular/global/fo-dk.js +1 -1
  628. app-ng-runtime/locales/angular/global/fo.js +1 -1
  629. app-ng-runtime/locales/angular/global/fr-be.js +1 -1
  630. app-ng-runtime/locales/angular/global/fr-bf.js +1 -1
  631. app-ng-runtime/locales/angular/global/fr-bi.js +1 -1
  632. app-ng-runtime/locales/angular/global/fr-bj.js +1 -1
  633. app-ng-runtime/locales/angular/global/fr-bl.js +1 -1
  634. app-ng-runtime/locales/angular/global/fr-ca.js +1 -1
  635. app-ng-runtime/locales/angular/global/fr-cd.js +1 -1
  636. app-ng-runtime/locales/angular/global/fr-cf.js +1 -1
  637. app-ng-runtime/locales/angular/global/fr-cg.js +1 -1
  638. app-ng-runtime/locales/angular/global/fr-ch.js +1 -1
  639. app-ng-runtime/locales/angular/global/fr-ci.js +1 -1
  640. app-ng-runtime/locales/angular/global/fr-cm.js +1 -1
  641. app-ng-runtime/locales/angular/global/fr-dj.js +1 -1
  642. app-ng-runtime/locales/angular/global/fr-dz.js +1 -1
  643. app-ng-runtime/locales/angular/global/fr-ga.js +1 -1
  644. app-ng-runtime/locales/angular/global/fr-gf.js +1 -1
  645. app-ng-runtime/locales/angular/global/fr-gn.js +1 -1
  646. app-ng-runtime/locales/angular/global/fr-gp.js +1 -1
  647. app-ng-runtime/locales/angular/global/fr-gq.js +1 -1
  648. app-ng-runtime/locales/angular/global/fr-ht.js +1 -1
  649. app-ng-runtime/locales/angular/global/fr-km.js +1 -1
  650. app-ng-runtime/locales/angular/global/fr-lu.js +1 -1
  651. app-ng-runtime/locales/angular/global/fr-ma.js +1 -1
  652. app-ng-runtime/locales/angular/global/fr-mc.js +1 -1
  653. app-ng-runtime/locales/angular/global/fr-mf.js +1 -1
  654. app-ng-runtime/locales/angular/global/fr-mg.js +1 -1
  655. app-ng-runtime/locales/angular/global/fr-ml.js +1 -1
  656. app-ng-runtime/locales/angular/global/fr-mq.js +1 -1
  657. app-ng-runtime/locales/angular/global/fr-mr.js +1 -1
  658. app-ng-runtime/locales/angular/global/fr-mu.js +1 -1
  659. app-ng-runtime/locales/angular/global/fr-nc.js +1 -1
  660. app-ng-runtime/locales/angular/global/fr-ne.js +1 -1
  661. app-ng-runtime/locales/angular/global/fr-pf.js +1 -1
  662. app-ng-runtime/locales/angular/global/fr-pm.js +1 -1
  663. app-ng-runtime/locales/angular/global/fr-re.js +1 -1
  664. app-ng-runtime/locales/angular/global/fr-rw.js +1 -1
  665. app-ng-runtime/locales/angular/global/fr-sc.js +1 -1
  666. app-ng-runtime/locales/angular/global/fr-sn.js +1 -1
  667. app-ng-runtime/locales/angular/global/fr-sy.js +1 -1
  668. app-ng-runtime/locales/angular/global/fr-td.js +1 -1
  669. app-ng-runtime/locales/angular/global/fr-tg.js +1 -1
  670. app-ng-runtime/locales/angular/global/fr-tn.js +1 -1
  671. app-ng-runtime/locales/angular/global/fr-vu.js +1 -1
  672. app-ng-runtime/locales/angular/global/fr-wf.js +1 -1
  673. app-ng-runtime/locales/angular/global/fr-yt.js +1 -1
  674. app-ng-runtime/locales/angular/global/fr.js +1 -1
  675. app-ng-runtime/locales/angular/global/fur.js +1 -1
  676. app-ng-runtime/locales/angular/global/fy.js +1 -1
  677. app-ng-runtime/locales/angular/global/ga-gb.js +1 -1
  678. app-ng-runtime/locales/angular/global/ga.js +1 -1
  679. app-ng-runtime/locales/angular/global/gd.js +1 -1
  680. app-ng-runtime/locales/angular/global/gl.js +1 -1
  681. app-ng-runtime/locales/angular/global/gsw-fr.js +1 -1
  682. app-ng-runtime/locales/angular/global/gsw-li.js +1 -1
  683. app-ng-runtime/locales/angular/global/gsw.js +1 -1
  684. app-ng-runtime/locales/angular/global/gu.js +1 -1
  685. app-ng-runtime/locales/angular/global/guz.js +1 -1
  686. app-ng-runtime/locales/angular/global/gv.js +1 -1
  687. app-ng-runtime/locales/angular/global/ha-gh.js +1 -1
  688. app-ng-runtime/locales/angular/global/ha-ne.js +1 -1
  689. app-ng-runtime/locales/angular/global/ha.js +1 -1
  690. app-ng-runtime/locales/angular/global/haw.js +1 -1
  691. app-ng-runtime/locales/angular/global/he.js +1 -1
  692. app-ng-runtime/locales/angular/global/hi-latn.js +1 -1
  693. app-ng-runtime/locales/angular/global/hi.js +1 -1
  694. app-ng-runtime/locales/angular/global/hr-ba.js +1 -1
  695. app-ng-runtime/locales/angular/global/hr.js +1 -1
  696. app-ng-runtime/locales/angular/global/hsb.js +1 -1
  697. app-ng-runtime/locales/angular/global/hu.js +1 -1
  698. app-ng-runtime/locales/angular/global/hy.js +1 -1
  699. app-ng-runtime/locales/angular/global/ia.js +1 -1
  700. app-ng-runtime/locales/angular/global/id.js +1 -1
  701. app-ng-runtime/locales/angular/global/ig.js +1 -1
  702. app-ng-runtime/locales/angular/global/ii.js +1 -1
  703. app-ng-runtime/locales/angular/global/is.js +1 -1
  704. app-ng-runtime/locales/angular/global/it-ch.js +1 -1
  705. app-ng-runtime/locales/angular/global/it-sm.js +1 -1
  706. app-ng-runtime/locales/angular/global/it-va.js +1 -1
  707. app-ng-runtime/locales/angular/global/it.js +1 -1
  708. app-ng-runtime/locales/angular/global/ja.js +1 -1
  709. app-ng-runtime/locales/angular/global/jgo.js +1 -1
  710. app-ng-runtime/locales/angular/global/jmc.js +1 -1
  711. app-ng-runtime/locales/angular/global/jv.js +1 -1
  712. app-ng-runtime/locales/angular/global/ka.js +1 -1
  713. app-ng-runtime/locales/angular/global/kab.js +1 -1
  714. app-ng-runtime/locales/angular/global/kam.js +1 -1
  715. app-ng-runtime/locales/angular/global/kde.js +1 -1
  716. app-ng-runtime/locales/angular/global/kea.js +1 -1
  717. app-ng-runtime/locales/angular/global/kgp.js +1 -1
  718. app-ng-runtime/locales/angular/global/khq.js +1 -1
  719. app-ng-runtime/locales/angular/global/ki.js +1 -1
  720. app-ng-runtime/locales/angular/global/kk.js +1 -1
  721. app-ng-runtime/locales/angular/global/kkj.js +1 -1
  722. app-ng-runtime/locales/angular/global/kl.js +1 -1
  723. app-ng-runtime/locales/angular/global/kln.js +1 -1
  724. app-ng-runtime/locales/angular/global/km.js +1 -1
  725. app-ng-runtime/locales/angular/global/kn.js +1 -1
  726. app-ng-runtime/locales/angular/global/ko-kp.js +1 -1
  727. app-ng-runtime/locales/angular/global/ko.js +1 -1
  728. app-ng-runtime/locales/angular/global/kok.js +1 -1
  729. app-ng-runtime/locales/angular/global/ks-arab.js +1 -1
  730. app-ng-runtime/locales/angular/global/ks-deva.js +1 -1
  731. app-ng-runtime/locales/angular/global/ks.js +1 -1
  732. app-ng-runtime/locales/angular/global/ksb.js +1 -1
  733. app-ng-runtime/locales/angular/global/ksf.js +1 -1
  734. app-ng-runtime/locales/angular/global/ksh.js +1 -1
  735. app-ng-runtime/locales/angular/global/ku.js +1 -1
  736. app-ng-runtime/locales/angular/global/kw.js +1 -1
  737. app-ng-runtime/locales/angular/global/ky.js +1 -1
  738. app-ng-runtime/locales/angular/global/lag.js +1 -1
  739. app-ng-runtime/locales/angular/global/lb.js +1 -1
  740. app-ng-runtime/locales/angular/global/lg.js +1 -1
  741. app-ng-runtime/locales/angular/global/lkt.js +1 -1
  742. app-ng-runtime/locales/angular/global/ln-ao.js +1 -1
  743. app-ng-runtime/locales/angular/global/ln-cf.js +1 -1
  744. app-ng-runtime/locales/angular/global/ln-cg.js +1 -1
  745. app-ng-runtime/locales/angular/global/ln.js +1 -1
  746. app-ng-runtime/locales/angular/global/lo.js +1 -1
  747. app-ng-runtime/locales/angular/global/lrc-iq.js +1 -1
  748. app-ng-runtime/locales/angular/global/lrc.js +1 -1
  749. app-ng-runtime/locales/angular/global/lt.js +1 -1
  750. app-ng-runtime/locales/angular/global/lu.js +1 -1
  751. app-ng-runtime/locales/angular/global/luo.js +1 -1
  752. app-ng-runtime/locales/angular/global/luy.js +1 -1
  753. app-ng-runtime/locales/angular/global/lv.js +1 -1
  754. app-ng-runtime/locales/angular/global/mai.js +1 -1
  755. app-ng-runtime/locales/angular/global/mas-tz.js +1 -1
  756. app-ng-runtime/locales/angular/global/mas.js +1 -1
  757. app-ng-runtime/locales/angular/global/mer.js +1 -1
  758. app-ng-runtime/locales/angular/global/mfe.js +1 -1
  759. app-ng-runtime/locales/angular/global/mg.js +1 -1
  760. app-ng-runtime/locales/angular/global/mgh.js +1 -1
  761. app-ng-runtime/locales/angular/global/mgo.js +1 -1
  762. app-ng-runtime/locales/angular/global/mi.js +1 -1
  763. app-ng-runtime/locales/angular/global/mk.js +1 -1
  764. app-ng-runtime/locales/angular/global/ml.js +1 -1
  765. app-ng-runtime/locales/angular/global/mn.js +1 -1
  766. app-ng-runtime/locales/angular/global/mni-beng.js +1 -1
  767. app-ng-runtime/locales/angular/global/mni.js +1 -1
  768. app-ng-runtime/locales/angular/global/mr.js +1 -1
  769. app-ng-runtime/locales/angular/global/ms-bn.js +1 -1
  770. app-ng-runtime/locales/angular/global/ms-id.js +1 -1
  771. app-ng-runtime/locales/angular/global/ms-sg.js +1 -1
  772. app-ng-runtime/locales/angular/global/ms.js +1 -1
  773. app-ng-runtime/locales/angular/global/mt.js +1 -1
  774. app-ng-runtime/locales/angular/global/mua.js +1 -1
  775. app-ng-runtime/locales/angular/global/my.js +1 -1
  776. app-ng-runtime/locales/angular/global/mzn.js +1 -1
  777. app-ng-runtime/locales/angular/global/naq.js +1 -1
  778. app-ng-runtime/locales/angular/global/nb-sj.js +1 -1
  779. app-ng-runtime/locales/angular/global/nb.js +1 -1
  780. app-ng-runtime/locales/angular/global/nd.js +1 -1
  781. app-ng-runtime/locales/angular/global/nds-nl.js +1 -1
  782. app-ng-runtime/locales/angular/global/nds.js +1 -1
  783. app-ng-runtime/locales/angular/global/ne-in.js +1 -1
  784. app-ng-runtime/locales/angular/global/ne.js +1 -1
  785. app-ng-runtime/locales/angular/global/nl-aw.js +1 -1
  786. app-ng-runtime/locales/angular/global/nl-be.js +1 -1
  787. app-ng-runtime/locales/angular/global/nl-bq.js +1 -1
  788. app-ng-runtime/locales/angular/global/nl-cw.js +1 -1
  789. app-ng-runtime/locales/angular/global/nl-sr.js +1 -1
  790. app-ng-runtime/locales/angular/global/nl-sx.js +1 -1
  791. app-ng-runtime/locales/angular/global/nl.js +1 -1
  792. app-ng-runtime/locales/angular/global/nmg.js +1 -1
  793. app-ng-runtime/locales/angular/global/nn.js +1 -1
  794. app-ng-runtime/locales/angular/global/nnh.js +1 -1
  795. app-ng-runtime/locales/angular/global/no.js +1 -1
  796. app-ng-runtime/locales/angular/global/nus.js +1 -1
  797. app-ng-runtime/locales/angular/global/nyn.js +1 -1
  798. app-ng-runtime/locales/angular/global/om-ke.js +1 -1
  799. app-ng-runtime/locales/angular/global/om.js +1 -1
  800. app-ng-runtime/locales/angular/global/or.js +1 -1
  801. app-ng-runtime/locales/angular/global/os-ru.js +1 -1
  802. app-ng-runtime/locales/angular/global/os.js +1 -1
  803. app-ng-runtime/locales/angular/global/pa-arab.js +1 -1
  804. app-ng-runtime/locales/angular/global/pa-guru.js +1 -1
  805. app-ng-runtime/locales/angular/global/pa.js +1 -1
  806. app-ng-runtime/locales/angular/global/pcm.js +1 -1
  807. app-ng-runtime/locales/angular/global/pl.js +1 -1
  808. app-ng-runtime/locales/angular/global/ps-pk.js +1 -1
  809. app-ng-runtime/locales/angular/global/ps.js +1 -1
  810. app-ng-runtime/locales/angular/global/pt-ao.js +1 -1
  811. app-ng-runtime/locales/angular/global/pt-ch.js +1 -1
  812. app-ng-runtime/locales/angular/global/pt-cv.js +1 -1
  813. app-ng-runtime/locales/angular/global/pt-gq.js +1 -1
  814. app-ng-runtime/locales/angular/global/pt-gw.js +1 -1
  815. app-ng-runtime/locales/angular/global/pt-lu.js +1 -1
  816. app-ng-runtime/locales/angular/global/pt-mo.js +1 -1
  817. app-ng-runtime/locales/angular/global/pt-mz.js +1 -1
  818. app-ng-runtime/locales/angular/global/pt-pt.js +1 -1
  819. app-ng-runtime/locales/angular/global/pt-st.js +1 -1
  820. app-ng-runtime/locales/angular/global/pt-tl.js +1 -1
  821. app-ng-runtime/locales/angular/global/pt.js +1 -1
  822. app-ng-runtime/locales/angular/global/qu-bo.js +1 -1
  823. app-ng-runtime/locales/angular/global/qu-ec.js +1 -1
  824. app-ng-runtime/locales/angular/global/qu.js +1 -1
  825. app-ng-runtime/locales/angular/global/rm.js +1 -1
  826. app-ng-runtime/locales/angular/global/rn.js +1 -1
  827. app-ng-runtime/locales/angular/global/ro-md.js +1 -1
  828. app-ng-runtime/locales/angular/global/ro.js +1 -1
  829. app-ng-runtime/locales/angular/global/rof.js +1 -1
  830. app-ng-runtime/locales/angular/global/ru-by.js +1 -1
  831. app-ng-runtime/locales/angular/global/ru-kg.js +1 -1
  832. app-ng-runtime/locales/angular/global/ru-kz.js +1 -1
  833. app-ng-runtime/locales/angular/global/ru-md.js +1 -1
  834. app-ng-runtime/locales/angular/global/ru-ua.js +1 -1
  835. app-ng-runtime/locales/angular/global/ru.js +1 -1
  836. app-ng-runtime/locales/angular/global/rw.js +1 -1
  837. app-ng-runtime/locales/angular/global/rwk.js +1 -1
  838. app-ng-runtime/locales/angular/global/sa.js +1 -1
  839. app-ng-runtime/locales/angular/global/sah.js +1 -1
  840. app-ng-runtime/locales/angular/global/saq.js +1 -1
  841. app-ng-runtime/locales/angular/global/sat-olck.js +1 -1
  842. app-ng-runtime/locales/angular/global/sat.js +1 -1
  843. app-ng-runtime/locales/angular/global/sbp.js +1 -1
  844. app-ng-runtime/locales/angular/global/sc.js +1 -1
  845. app-ng-runtime/locales/angular/global/sd-arab.js +1 -1
  846. app-ng-runtime/locales/angular/global/sd-deva.js +1 -1
  847. app-ng-runtime/locales/angular/global/sd.js +1 -1
  848. app-ng-runtime/locales/angular/global/se-fi.js +1 -1
  849. app-ng-runtime/locales/angular/global/se-se.js +1 -1
  850. app-ng-runtime/locales/angular/global/se.js +1 -1
  851. app-ng-runtime/locales/angular/global/seh.js +1 -1
  852. app-ng-runtime/locales/angular/global/ses.js +1 -1
  853. app-ng-runtime/locales/angular/global/sg.js +1 -1
  854. app-ng-runtime/locales/angular/global/shi-latn.js +1 -1
  855. app-ng-runtime/locales/angular/global/shi-tfng.js +1 -1
  856. app-ng-runtime/locales/angular/global/shi.js +1 -1
  857. app-ng-runtime/locales/angular/global/si.js +1 -1
  858. app-ng-runtime/locales/angular/global/sk.js +1 -1
  859. app-ng-runtime/locales/angular/global/sl.js +1 -1
  860. app-ng-runtime/locales/angular/global/smn.js +1 -1
  861. app-ng-runtime/locales/angular/global/sn.js +1 -1
  862. app-ng-runtime/locales/angular/global/so-dj.js +1 -1
  863. app-ng-runtime/locales/angular/global/so-et.js +1 -1
  864. app-ng-runtime/locales/angular/global/so-ke.js +1 -1
  865. app-ng-runtime/locales/angular/global/so.js +1 -1
  866. app-ng-runtime/locales/angular/global/sq-mk.js +1 -1
  867. app-ng-runtime/locales/angular/global/sq-xk.js +1 -1
  868. app-ng-runtime/locales/angular/global/sq.js +1 -1
  869. app-ng-runtime/locales/angular/global/sr-cyrl-ba.js +1 -1
  870. app-ng-runtime/locales/angular/global/sr-cyrl-me.js +1 -1
  871. app-ng-runtime/locales/angular/global/sr-cyrl-xk.js +1 -1
  872. app-ng-runtime/locales/angular/global/sr-cyrl.js +1 -1
  873. app-ng-runtime/locales/angular/global/sr-latn-ba.js +1 -1
  874. app-ng-runtime/locales/angular/global/sr-latn-me.js +1 -1
  875. app-ng-runtime/locales/angular/global/sr-latn-xk.js +1 -1
  876. app-ng-runtime/locales/angular/global/sr-latn.js +1 -1
  877. app-ng-runtime/locales/angular/global/sr.js +1 -1
  878. app-ng-runtime/locales/angular/global/su-latn.js +1 -1
  879. app-ng-runtime/locales/angular/global/su.js +1 -1
  880. app-ng-runtime/locales/angular/global/sv-ax.js +1 -1
  881. app-ng-runtime/locales/angular/global/sv-fi.js +1 -1
  882. app-ng-runtime/locales/angular/global/sv.js +1 -1
  883. app-ng-runtime/locales/angular/global/sw-cd.js +1 -1
  884. app-ng-runtime/locales/angular/global/sw-ke.js +1 -1
  885. app-ng-runtime/locales/angular/global/sw-ug.js +1 -1
  886. app-ng-runtime/locales/angular/global/sw.js +1 -1
  887. app-ng-runtime/locales/angular/global/ta-lk.js +1 -1
  888. app-ng-runtime/locales/angular/global/ta-my.js +1 -1
  889. app-ng-runtime/locales/angular/global/ta-sg.js +1 -1
  890. app-ng-runtime/locales/angular/global/ta.js +1 -1
  891. app-ng-runtime/locales/angular/global/te.js +1 -1
  892. app-ng-runtime/locales/angular/global/teo-ke.js +1 -1
  893. app-ng-runtime/locales/angular/global/teo.js +1 -1
  894. app-ng-runtime/locales/angular/global/tg.js +1 -1
  895. app-ng-runtime/locales/angular/global/th.js +1 -1
  896. app-ng-runtime/locales/angular/global/ti-er.js +1 -1
  897. app-ng-runtime/locales/angular/global/ti.js +1 -1
  898. app-ng-runtime/locales/angular/global/tk.js +1 -1
  899. app-ng-runtime/locales/angular/global/to.js +1 -1
  900. app-ng-runtime/locales/angular/global/tr-cy.js +1 -1
  901. app-ng-runtime/locales/angular/global/tr.js +1 -1
  902. app-ng-runtime/locales/angular/global/tt.js +1 -1
  903. app-ng-runtime/locales/angular/global/twq.js +1 -1
  904. app-ng-runtime/locales/angular/global/tzm.js +1 -1
  905. app-ng-runtime/locales/angular/global/ug.js +1 -1
  906. app-ng-runtime/locales/angular/global/uk.js +1 -1
  907. app-ng-runtime/locales/angular/global/und.js +1 -1
  908. app-ng-runtime/locales/angular/global/ur-in.js +1 -1
  909. app-ng-runtime/locales/angular/global/ur.js +1 -1
  910. app-ng-runtime/locales/angular/global/uz-arab.js +1 -1
  911. app-ng-runtime/locales/angular/global/uz-cyrl.js +1 -1
  912. app-ng-runtime/locales/angular/global/uz-latn.js +1 -1
  913. app-ng-runtime/locales/angular/global/uz.js +1 -1
  914. app-ng-runtime/locales/angular/global/vai-latn.js +1 -1
  915. app-ng-runtime/locales/angular/global/vai-vaii.js +1 -1
  916. app-ng-runtime/locales/angular/global/vai.js +1 -1
  917. app-ng-runtime/locales/angular/global/vi.js +1 -1
  918. app-ng-runtime/locales/angular/global/vun.js +1 -1
  919. app-ng-runtime/locales/angular/global/wae.js +1 -1
  920. app-ng-runtime/locales/angular/global/wo.js +1 -1
  921. app-ng-runtime/locales/angular/global/xh.js +1 -1
  922. app-ng-runtime/locales/angular/global/xog.js +1 -1
  923. app-ng-runtime/locales/angular/global/yav.js +1 -1
  924. app-ng-runtime/locales/angular/global/yi.js +1 -1
  925. app-ng-runtime/locales/angular/global/yo-bj.js +1 -1
  926. app-ng-runtime/locales/angular/global/yo.js +1 -1
  927. app-ng-runtime/locales/angular/global/yrl-co.js +1 -1
  928. app-ng-runtime/locales/angular/global/yrl-ve.js +1 -1
  929. app-ng-runtime/locales/angular/global/yrl.js +1 -1
  930. app-ng-runtime/locales/angular/global/yue-hans.js +1 -1
  931. app-ng-runtime/locales/angular/global/yue-hant.js +1 -1
  932. app-ng-runtime/locales/angular/global/yue.js +1 -1
  933. app-ng-runtime/locales/angular/global/zgh.js +1 -1
  934. app-ng-runtime/locales/angular/global/zh-hans-hk.js +1 -1
  935. app-ng-runtime/locales/angular/global/zh-hans-mo.js +1 -1
  936. app-ng-runtime/locales/angular/global/zh-hans-sg.js +1 -1
  937. app-ng-runtime/locales/angular/global/zh-hans.js +1 -1
  938. app-ng-runtime/locales/angular/global/zh-hant-hk.js +1 -1
  939. app-ng-runtime/locales/angular/global/zh-hant-mo.js +1 -1
  940. app-ng-runtime/locales/angular/global/zh-hant.js +1 -1
  941. app-ng-runtime/locales/angular/global/zh.js +1 -1
  942. app-ng-runtime/locales/angular/global/zu.js +1 -1
  943. app-ng-runtime/locales/moment-timezone/moment-timezone-with-data.js +37 -37
  944. app-ng-runtime/mobile/components/basic/default/bundles/index.umd.js +9 -9
  945. app-ng-runtime/mobile/components/basic/default/esm2022/anchor/anchor.directive.mjs +2 -2
  946. app-ng-runtime/mobile/components/basic/default/esm2022/app-update/app-update.component.mjs +2 -2
  947. app-ng-runtime/mobile/components/basic/default/esm2022/basic.module.mjs +2 -2
  948. app-ng-runtime/mobile/components/basic/default/esm2022/file-browser/file-browser.component.mjs +2 -2
  949. app-ng-runtime/mobile/components/basic/default/esm2022/file-browser/file-selector.service.mjs +2 -2
  950. app-ng-runtime/mobile/components/basic/default/esm2022/image-cache/image-cache.directive.mjs +2 -2
  951. app-ng-runtime/mobile/components/basic/default/esm2022/network-info-toaster/network-info-toaster.component.mjs +2 -2
  952. app-ng-runtime/mobile/components/basic/default/esm2022/process-manager/process-management.service.mjs +2 -2
  953. app-ng-runtime/mobile/components/basic/default/esm2022/process-manager/process-manager.component.mjs +2 -2
  954. app-ng-runtime/mobile/components/basic/default/fesm2022/index.mjs +10 -10
  955. app-ng-runtime/mobile/components/basic/default/fesm2022/index.mjs.map +1 -1
  956. app-ng-runtime/mobile/components/basic/search/bundles/index.umd.js +2 -2
  957. app-ng-runtime/mobile/components/basic/search/esm2022/search.directive.mjs +2 -2
  958. app-ng-runtime/mobile/components/basic/search/esm2022/search.module.mjs +2 -2
  959. app-ng-runtime/mobile/components/basic/search/fesm2022/index.mjs +2 -2
  960. app-ng-runtime/mobile/components/basic/search/fesm2022/index.mjs.map +1 -1
  961. app-ng-runtime/mobile/components/containers/segmented-control/bundles/index.umd.js +3 -3
  962. app-ng-runtime/mobile/components/containers/segmented-control/esm2022/segment-content/segment-content.component.mjs +2 -2
  963. app-ng-runtime/mobile/components/containers/segmented-control/esm2022/segmented-control.component.mjs +2 -2
  964. app-ng-runtime/mobile/components/containers/segmented-control/esm2022/segmented-control.module.mjs +2 -2
  965. app-ng-runtime/mobile/components/containers/segmented-control/fesm2022/index.mjs +4 -4
  966. app-ng-runtime/mobile/components/containers/segmented-control/fesm2022/index.mjs.map +1 -1
  967. app-ng-runtime/mobile/components/data/media-list/bundles/index.umd.js +3 -3
  968. app-ng-runtime/mobile/components/data/media-list/esm2022/media-list-item/media-list-item.directive.mjs +2 -2
  969. app-ng-runtime/mobile/components/data/media-list/esm2022/media-list.component.mjs +2 -2
  970. app-ng-runtime/mobile/components/data/media-list/esm2022/media-list.module.mjs +2 -2
  971. app-ng-runtime/mobile/components/data/media-list/fesm2022/index.mjs +4 -4
  972. app-ng-runtime/mobile/components/data/media-list/fesm2022/index.mjs.map +1 -1
  973. app-ng-runtime/mobile/components/device/barcode-scanner/bundles/index.umd.js +2 -2
  974. app-ng-runtime/mobile/components/device/barcode-scanner/esm2022/barcode-scanner.component.mjs +2 -2
  975. app-ng-runtime/mobile/components/device/barcode-scanner/esm2022/barcode-scanner.module.mjs +2 -2
  976. app-ng-runtime/mobile/components/device/barcode-scanner/fesm2022/index.mjs +3 -3
  977. app-ng-runtime/mobile/components/device/barcode-scanner/fesm2022/index.mjs.map +1 -1
  978. app-ng-runtime/mobile/components/device/camera/bundles/index.umd.js +2 -2
  979. app-ng-runtime/mobile/components/device/camera/esm2022/camera.component.mjs +2 -2
  980. app-ng-runtime/mobile/components/device/camera/esm2022/camera.module.mjs +2 -2
  981. app-ng-runtime/mobile/components/device/camera/fesm2022/index.mjs +3 -3
  982. app-ng-runtime/mobile/components/device/camera/fesm2022/index.mjs.map +1 -1
  983. app-ng-runtime/mobile/components/input/file-upload/bundles/index.umd.js +2 -2
  984. app-ng-runtime/mobile/components/input/file-upload/esm2022/file-upload.directive.mjs +2 -2
  985. app-ng-runtime/mobile/components/input/file-upload/esm2022/file-upload.module.mjs +2 -2
  986. app-ng-runtime/mobile/components/input/file-upload/fesm2022/index.mjs +2 -2
  987. app-ng-runtime/mobile/components/input/file-upload/fesm2022/index.mjs.map +1 -1
  988. app-ng-runtime/mobile/components/page/default/bundles/index.umd.js +3 -3
  989. app-ng-runtime/mobile/components/page/default/esm2022/page-content-loader/page-content-loader.component.mjs +2 -2
  990. app-ng-runtime/mobile/components/page/default/esm2022/page.directive.mjs +2 -2
  991. app-ng-runtime/mobile/components/page/default/esm2022/page.module.mjs +2 -2
  992. app-ng-runtime/mobile/components/page/default/fesm2022/index.mjs +3 -3
  993. app-ng-runtime/mobile/components/page/default/fesm2022/index.mjs.map +1 -1
  994. app-ng-runtime/mobile/components/page/left-panel/bundles/index.umd.js +2 -2
  995. app-ng-runtime/mobile/components/page/left-panel/esm2022/left-panel.directive.mjs +2 -2
  996. app-ng-runtime/mobile/components/page/left-panel/esm2022/left-panel.module.mjs +2 -2
  997. app-ng-runtime/mobile/components/page/left-panel/fesm2022/index.mjs +2 -2
  998. app-ng-runtime/mobile/components/page/left-panel/fesm2022/index.mjs.map +1 -1
  999. app-ng-runtime/mobile/components/page/mobile-navbar/bundles/index.umd.js +2 -2
  1000. app-ng-runtime/mobile/components/page/mobile-navbar/esm2022/mobile-navbar.component.mjs +2 -2
  1001. app-ng-runtime/mobile/components/page/mobile-navbar/esm2022/mobile-navbar.module.mjs +2 -2
  1002. app-ng-runtime/mobile/components/page/mobile-navbar/fesm2022/index.mjs +2 -2
  1003. app-ng-runtime/mobile/components/page/mobile-navbar/fesm2022/index.mjs.map +1 -1
  1004. app-ng-runtime/mobile/components/page/tab-bar/bundles/index.umd.js +2 -2
  1005. app-ng-runtime/mobile/components/page/tab-bar/esm2022/tab-bar.module.mjs +2 -2
  1006. app-ng-runtime/mobile/components/page/tab-bar/esm2022/tabbar.component.mjs +2 -2
  1007. app-ng-runtime/mobile/components/page/tab-bar/fesm2022/index.mjs +3 -3
  1008. app-ng-runtime/mobile/components/page/tab-bar/fesm2022/index.mjs.map +1 -1
  1009. app-ng-runtime/mobile/core/bundles/index.umd.js +9 -9
  1010. app-ng-runtime/mobile/core/esm2022/core.module.mjs +2 -2
  1011. app-ng-runtime/mobile/core/esm2022/services/device-file-cache.service.mjs +2 -2
  1012. app-ng-runtime/mobile/core/esm2022/services/device-file-download.service.mjs +2 -2
  1013. app-ng-runtime/mobile/core/esm2022/services/device-file-opener.service.mjs +2 -2
  1014. app-ng-runtime/mobile/core/esm2022/services/device-file-upload.service.mjs +2 -2
  1015. app-ng-runtime/mobile/core/esm2022/services/device-file.service.mjs +2 -2
  1016. app-ng-runtime/mobile/core/esm2022/services/device.service.mjs +2 -2
  1017. app-ng-runtime/mobile/core/esm2022/services/ext-app-message.service.mjs +2 -2
  1018. app-ng-runtime/mobile/core/esm2022/services/network.service.mjs +2 -2
  1019. app-ng-runtime/mobile/core/fesm2022/index.mjs +10 -10
  1020. app-ng-runtime/mobile/core/fesm2022/index.mjs.map +1 -1
  1021. app-ng-runtime/mobile/offline/bundles/index.umd.js +8 -8
  1022. app-ng-runtime/mobile/offline/esm2022/offline.module.mjs +2 -2
  1023. app-ng-runtime/mobile/offline/esm2022/services/change-log.service.mjs +2 -2
  1024. app-ng-runtime/mobile/offline/esm2022/services/local-db-data-pull.service.mjs +2 -2
  1025. app-ng-runtime/mobile/offline/esm2022/services/local-db-management.service.mjs +2 -2
  1026. app-ng-runtime/mobile/offline/esm2022/services/local-db.service.mjs +2 -2
  1027. app-ng-runtime/mobile/offline/esm2022/services/local-key-value.service.mjs +2 -2
  1028. app-ng-runtime/mobile/offline/esm2022/services/push.service.mjs +2 -2
  1029. app-ng-runtime/mobile/offline/esm2022/services/workers/id-resolver.mjs +2 -2
  1030. app-ng-runtime/mobile/offline/fesm2022/index.mjs +10 -10
  1031. app-ng-runtime/mobile/offline/fesm2022/index.mjs.map +1 -1
  1032. app-ng-runtime/mobile/placeholder/runtime/bundles/index.umd.js +2 -2
  1033. app-ng-runtime/mobile/placeholder/runtime/esm2022/components/app-ext.component.mjs +2 -2
  1034. app-ng-runtime/mobile/placeholder/runtime/esm2022/mobile-runtime.module.mjs +2 -2
  1035. app-ng-runtime/mobile/placeholder/runtime/fesm2022/index.mjs +2 -2
  1036. app-ng-runtime/mobile/placeholder/runtime/fesm2022/index.mjs.map +1 -1
  1037. app-ng-runtime/mobile/placeholder/runtime-dynamic/bundles/index.umd.js +1 -1
  1038. app-ng-runtime/mobile/placeholder/runtime-dynamic/esm2022/mobile-runtime-dynamic.module.mjs +2 -2
  1039. app-ng-runtime/mobile/placeholder/runtime-dynamic/fesm2022/index.mjs +1 -1
  1040. app-ng-runtime/mobile/placeholder/runtime-dynamic/fesm2022/index.mjs.map +1 -1
  1041. app-ng-runtime/mobile/runtime/bundles/index.umd.js +5 -5
  1042. app-ng-runtime/mobile/runtime/esm2022/components/app-ext.component.mjs +2 -2
  1043. app-ng-runtime/mobile/runtime/esm2022/mobile-runtime.module.mjs +2 -2
  1044. app-ng-runtime/mobile/runtime/esm2022/services/cookie.service.mjs +2 -2
  1045. app-ng-runtime/mobile/runtime/esm2022/services/http-interceptor.service.mjs +2 -2
  1046. app-ng-runtime/mobile/runtime/esm2022/services/webprocess.service.mjs +2 -2
  1047. app-ng-runtime/mobile/runtime/fesm2022/index.mjs +5 -5
  1048. app-ng-runtime/mobile/runtime/fesm2022/index.mjs.map +1 -1
  1049. app-ng-runtime/mobile/runtime-dynamic/bundles/index.umd.js +2 -2
  1050. app-ng-runtime/mobile/runtime-dynamic/esm2022/mobile-runtime-dynamic.module.mjs +2 -2
  1051. app-ng-runtime/mobile/runtime-dynamic/esm2022/services/live-sync.service.mjs +2 -2
  1052. app-ng-runtime/mobile/runtime-dynamic/fesm2022/index.mjs +2 -2
  1053. app-ng-runtime/mobile/runtime-dynamic/fesm2022/index.mjs.map +1 -1
  1054. app-ng-runtime/mobile/variables/bundles/index.umd.js +1 -1
  1055. app-ng-runtime/mobile/variables/esm2022/variables.module.mjs +2 -2
  1056. app-ng-runtime/mobile/variables/fesm2022/index.mjs +1 -1
  1057. app-ng-runtime/mobile/variables/fesm2022/index.mjs.map +1 -1
  1058. app-ng-runtime/oAuth/bundles/index.umd.js +2 -2
  1059. app-ng-runtime/oAuth/esm2022/oAuth.module.mjs +2 -2
  1060. app-ng-runtime/oAuth/esm2022/oAuth.service.mjs +2 -2
  1061. app-ng-runtime/oAuth/fesm2022/index.mjs +2 -2
  1062. app-ng-runtime/oAuth/fesm2022/index.mjs.map +1 -1
  1063. app-ng-runtime/package.json +1 -1
  1064. app-ng-runtime/runtime/base/bundles/index.umd.js +44 -46
  1065. app-ng-runtime/runtime/base/esm2022/components/app-component/app.component.mjs +2 -2
  1066. app-ng-runtime/runtime/base/esm2022/components/app-spinner.component.mjs +2 -2
  1067. app-ng-runtime/runtime/base/esm2022/components/base-layout.component.mjs +2 -2
  1068. app-ng-runtime/runtime/base/esm2022/components/base-page.component.mjs +2 -2
  1069. app-ng-runtime/runtime/base/esm2022/components/base-partial.component.mjs +2 -2
  1070. app-ng-runtime/runtime/base/esm2022/components/base-prefab.component.mjs +2 -2
  1071. app-ng-runtime/runtime/base/esm2022/components/base-spa-page.component.mjs +2 -2
  1072. app-ng-runtime/runtime/base/esm2022/components/custom-toaster.component.mjs +2 -2
  1073. app-ng-runtime/runtime/base/esm2022/components/empty-component/empty-page.component.mjs +2 -2
  1074. app-ng-runtime/runtime/base/esm2022/components/prefab-preview.component.mjs +2 -2
  1075. app-ng-runtime/runtime/base/esm2022/directives/accessroles.directive.mjs +2 -2
  1076. app-ng-runtime/runtime/base/esm2022/directives/prefab.directive.mjs +2 -2
  1077. app-ng-runtime/runtime/base/esm2022/guards/auth.guard.mjs +2 -2
  1078. app-ng-runtime/runtime/base/esm2022/guards/can-deactivate-page.guard.mjs +3 -3
  1079. app-ng-runtime/runtime/base/esm2022/guards/page-not-found.guard.mjs +2 -2
  1080. app-ng-runtime/runtime/base/esm2022/guards/role.guard.mjs +2 -2
  1081. app-ng-runtime/runtime/base/esm2022/overrides/wm_dom_renderer.mjs +6 -8
  1082. app-ng-runtime/runtime/base/esm2022/overrides/wm_shared_styles_host.mjs +3 -3
  1083. app-ng-runtime/runtime/base/esm2022/resolves/app-extension.resolve.mjs +2 -2
  1084. app-ng-runtime/runtime/base/esm2022/resolves/app-js.resolve.mjs +2 -2
  1085. app-ng-runtime/runtime/base/esm2022/resolves/app-variables.resolve.mjs +2 -2
  1086. app-ng-runtime/runtime/base/esm2022/resolves/i18n.resolve.mjs +2 -2
  1087. app-ng-runtime/runtime/base/esm2022/resolves/metadata.resolve.mjs +2 -2
  1088. app-ng-runtime/runtime/base/esm2022/resolves/security-config.resolve.mjs +2 -2
  1089. app-ng-runtime/runtime/base/esm2022/runtime-base.module.mjs +2 -2
  1090. app-ng-runtime/runtime/base/esm2022/services/app-defaults.service.mjs +2 -2
  1091. app-ng-runtime/runtime/base/esm2022/services/app.manager.service.mjs +2 -2
  1092. app-ng-runtime/runtime/base/esm2022/services/app.service.mjs +2 -2
  1093. app-ng-runtime/runtime/base/esm2022/services/dynamic-component-ref-provider.service.mjs +2 -2
  1094. app-ng-runtime/runtime/base/esm2022/services/http-interceptor.services.mjs +2 -2
  1095. app-ng-runtime/runtime/base/esm2022/services/i18n.service.mjs +2 -2
  1096. app-ng-runtime/runtime/base/esm2022/services/navigation.service.mjs +2 -2
  1097. app-ng-runtime/runtime/base/esm2022/services/pipe-provider.service.mjs +2 -2
  1098. app-ng-runtime/runtime/base/esm2022/services/pipe.service.mjs +2 -2
  1099. app-ng-runtime/runtime/base/esm2022/services/prefab-manager.service.mjs +2 -2
  1100. app-ng-runtime/runtime/base/esm2022/services/spinner.service.mjs +2 -2
  1101. app-ng-runtime/runtime/base/esm2022/services/toaster.service.mjs +2 -2
  1102. app-ng-runtime/runtime/base/esm2022/util/fragment-monitor.mjs +2 -2
  1103. app-ng-runtime/runtime/base/fesm2022/index.mjs +47 -49
  1104. app-ng-runtime/runtime/base/fesm2022/index.mjs.map +1 -1
  1105. app-ng-runtime/runtime/base/services/i18n.service.d.ts +1 -1
  1106. app-ng-runtime/runtime/dynamic/bundles/index.umd.js +7 -7
  1107. app-ng-runtime/runtime/dynamic/esm2022/app/components/page-wrapper.component.mjs +2 -2
  1108. app-ng-runtime/runtime/dynamic/esm2022/app/services/app-extension.service.mjs +2 -2
  1109. app-ng-runtime/runtime/dynamic/esm2022/app/services/app-js-provider.service.mjs +2 -2
  1110. app-ng-runtime/runtime/dynamic/esm2022/app/services/app-resource-manager.service.mjs +2 -2
  1111. app-ng-runtime/runtime/dynamic/esm2022/app/services/app-variables-provider.service.mjs +2 -2
  1112. app-ng-runtime/runtime/dynamic/esm2022/app/services/component-ref-provider.service.mjs +2 -2
  1113. app-ng-runtime/runtime/dynamic/esm2022/app/services/prefab-config-provider.service.mjs +2 -2
  1114. app-ng-runtime/runtime/dynamic/fesm2022/index.mjs +9 -9
  1115. app-ng-runtime/runtime/dynamic/fesm2022/index.mjs.map +1 -1
  1116. app-ng-runtime/scripts/summernote/dist/summernote-lite.min.js +2 -2
  1117. app-ng-runtime/security/bundles/index.umd.js +2 -2
  1118. app-ng-runtime/security/esm2022/security.module.mjs +2 -2
  1119. app-ng-runtime/security/esm2022/security.service.mjs +2 -2
  1120. app-ng-runtime/security/fesm2022/index.mjs +2 -2
  1121. app-ng-runtime/security/fesm2022/index.mjs.map +1 -1
  1122. app-ng-runtime/swipey/fesm2022/index.mjs.map +1 -1
  1123. app-ng-runtime/transpiler/fesm2022/index.mjs +1 -1
  1124. app-ng-runtime/transpiler/fesm2022/index.mjs.map +1 -1
  1125. app-ng-runtime/variables/bundles/index.umd.js +3 -3
  1126. app-ng-runtime/variables/esm2022/service/metadata-service/metadata.service.mjs +2 -2
  1127. app-ng-runtime/variables/esm2022/service/variables.service.mjs +2 -2
  1128. app-ng-runtime/variables/esm2022/variables.module.mjs +2 -2
  1129. app-ng-runtime/variables/fesm2022/index.mjs +4 -4
  1130. app-ng-runtime/variables/fesm2022/index.mjs.map +1 -1
@@ -144,11 +144,11 @@ export class DeviceFileDownloadService {
144
144
  }))
145
145
  .toPromise();
146
146
  }
147
- static { this.ɵfac = function DeviceFileDownloadService_Factory(t) { return new (t || DeviceFileDownloadService)(i0.ɵɵinject(i1.File), i0.ɵɵinject(i2.HttpClient), i0.ɵɵinject(i3.DeviceFileService), i0.ɵɵinject(i4.FileExtensionFromMimePipe)); }; }
147
+ static { this.ɵfac = function DeviceFileDownloadService_Factory(__ngFactoryType__) { return new (__ngFactoryType__ || DeviceFileDownloadService)(i0.ɵɵinject(i1.File), i0.ɵɵinject(i2.HttpClient), i0.ɵɵinject(i3.DeviceFileService), i0.ɵɵinject(i4.FileExtensionFromMimePipe)); }; }
148
148
  static { this.ɵprov = /*@__PURE__*/ i0.ɵɵdefineInjectable({ token: DeviceFileDownloadService, factory: DeviceFileDownloadService.ɵfac, providedIn: 'root' }); }
149
149
  }
150
150
  (() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassMetadata(DeviceFileDownloadService, [{
151
151
  type: Injectable,
152
152
  args: [{ providedIn: 'root' }]
153
153
  }], () => [{ type: i1.File }, { type: i2.HttpClient }, { type: i3.DeviceFileService }, { type: i4.FileExtensionFromMimePipe }], null); })();
154
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGV2aWNlLWZpbGUtZG93bmxvYWQuc2VydmljZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL21vYmlsZS9jb3JlL3NyYy9zZXJ2aWNlcy9kZXZpY2UtZmlsZS1kb3dubG9hZC5zZXJ2aWNlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDM0MsT0FBTyxFQUNILFVBQVUsRUFFVixhQUFhLEVBQ2IsV0FBVyxFQUNYLFdBQVcsRUFFZCxNQUFNLHNCQUFzQixDQUFDO0FBRTlCLE9BQU8sRUFBRSxJQUFJLEVBQUUsTUFBTSxtQ0FBbUMsQ0FBQztBQUV6RCxPQUFPLEVBQUUsTUFBTSxFQUFFLEdBQUcsRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBRTdDLE9BQU8sRUFBRSx5QkFBeUIsRUFBRSxNQUFNLHFCQUFxQixDQUFDO0FBRWhFLE9BQU8sRUFBRSxpQkFBaUIsRUFBRSxNQUFNLHVCQUF1QixDQUFDO0FBQzFELE9BQU8sRUFBQyxRQUFRLEVBQUUsSUFBSSxFQUFFLE9BQU8sRUFBRSxPQUFPLEVBQUMsTUFBTSxXQUFXLENBQUM7Ozs7OztBQUUzRCxNQUFNLHdCQUF3QixHQUFHLENBQUMsQ0FBQztBQUduQyxNQUFNLE9BQU8seUJBQXlCO2FBQ2xCLGlCQUFZLEdBQUcsMkJBQTJCLEFBQTlCLENBQStCO0lBSTNELFlBQ1ksV0FBaUIsRUFDakIsSUFBZ0IsRUFDaEIsaUJBQW9DLEVBQ3JDLHlCQUFvRDtRQUhuRCxnQkFBVyxHQUFYLFdBQVcsQ0FBTTtRQUNqQixTQUFJLEdBQUosSUFBSSxDQUFZO1FBQ2hCLHNCQUFpQixHQUFqQixpQkFBaUIsQ0FBbUI7UUFDckMsOEJBQXlCLEdBQXpCLHlCQUF5QixDQUEyQjtRQVB2RCxtQkFBYyxHQUFHLEVBQUUsQ0FBQztRQUNwQix5QkFBb0IsR0FBRyxDQUFDLENBQUM7SUFRakMsQ0FBQztJQUVNLFFB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QXpCLHlCQUF5QixtQkFEWixNQUFNOztpRkFDbkIseUJBQXlCO2NBRHJDLFVBQVU7ZUFBQyxFQUFFLFVBQVUsRUFBRSxNQUFNLEVBQUUiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBJbmplY3RhYmxlIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQge1xuICAgIEh0dHBDbGllbnQsXG4gICAgSHR0cEV2ZW50LFxuICAgIEh0dHBFdmVudFR5cGUsXG4gICAgSHR0cEhlYWRlcnMsXG4gICAgSHR0cFJlcXVlc3QsXG4gICAgSHR0cFJlc3BvbnNlXG59IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbi9odHRwJztcblxuaW1wb3J0IHsgRmlsZSB9IGZyb20gJ0Bhd2Vzb21lLWNvcmRvdmEtcGx1Z2lucy9maWxlL25neCc7XG5pbXBvcnQgeyBPYnNlcnZlciB9IGZyb20gJ3J4anMnO1xuaW1wb3J0IHsgZmlsdGVyLCBtYXAgfSBmcm9tICdyeGpzL29wZXJhdG9ycyc7XG5cbmltcG9ydCB7IEZpbGVFeHRlbnNpb25Gcm9tTWltZVBpcGUgfSBmcm9tICdAd20vY29tcG9uZW50cy9iYXNlJztcblxuaW1wb3J0IHsgRGV2aWNlRmlsZVNlcnZpY2UgfSBmcm9tICcuL2RldmljZS1maWxlLnNlcnZpY2UnO1xuaW1wb3J0IHtlbmRzV2l0aCwgZmluZCwgaXNBcnJheSwgaXNFbXB0eX0gZnJvbSBcImxvZGFzaC1lc1wiO1xuXG5jb25zdCBNQVhfQ09OQ1VSUkVOVF9ET1dOTE9BRFMgPSAyO1xuXG5ASW5qZWN0YWJsZSh7IHByb3ZpZGVkSW46ICdyb290JyB9KVxuZXhwb3J0IGNsYXNzIERldmljZUZpbGVEb3dubG9hZFNlcnZpY2Uge1xuICAgIHN0YXRpYyByZWFkb25seSBTRVJWSUNFX05BTUUgPSAnRGV2aWNlRmlsZURvd25sb2FkU2VydmljZSc7XG4gICAgcHJpdmF0ZSBfZG93bmxvYWRRdWV1ZSA9IFtdO1xuICAgIHByaXZhdGUgX2NvbmN1cnJlbnREb3dubG9hZHMgPSAwO1xuXG4gICAgY29uc3RydWN0b3IoXG4gICAgICAgIHByaXZhdGUgY29yZG92YUZpbGU6IEZpbGUsXG4gICAgICAgIHByaXZhdGUgaHR0cDogSHR0cENsaWVudCxcbiAgICAgICAgcHJpdmF0ZSBkZXZpY2VGaWxlU2VydmljZTogRGV2aWNlRmlsZVNlcnZpY2UsXG4gICAgICAgIHB1YmxpYyBmaWxlRXh0ZW5zaW9uRnJvbU1pbWVQaXBlOiBGaWxlRXh0ZW5zaW9uRnJvbU1pbWVQaXBlKSB7XG5cbiAgICB9XG5cbiAgICBwdWJsaWMgZG93bmxvYWQodXJsOiBzdHJpbmcsIGlzUGVyc2lzdGVudDogYm9vbGVhbiwgZGVzdEZvbGRlcj86IHN0cmluZywgZGVzdEZpbGU/OiBzdHJpbmcsIHByb2dyZXNzT2JzZXJ2ZXI/OiBPYnNlcnZlcjxhbnk+LCBoZWFkZXJzPzogYW55KTogUHJvbWlzZTxzdHJpbmc+IHtcbiAgICAgICAgcmV0dXJuIHRoaXMuYWRkVG9Eb3dubG9hZFF1ZXVlKHVybCwgaXNQZXJzaXN0ZW50LCBkZXN0Rm9sZGVyLCBkZXN0RmlsZSwgcHJvZ3Jlc3NPYnNlcnZlciwgaGVhZGVycyk7XG4gICAgfVxuXG4gICAgLy8gQWRkcyB0byBkb3dubG9hZCByZXF1ZXN0IHF1ZXVlXG4gICAgcHJpdmF0ZSBhZGRUb0Rvd25sb2FkUXVldWUodXJsOiBzdHJpbmcsIGlzUGVyc2lzdGVudDogYm9vbGVhbiwgZGVzdEZvbGRlcj86IHN0cmluZywgZGVzdEZpbGU/OiBzdHJpbmcsIHByb2dyZXNzT2JzZXJ2ZXI/OiBPYnNlcnZlcjxhbnk+LCBoZWFkZXJzPzogYW55KTogUHJvbWlzZTxzdHJpbmc+IHtcbiAgICAgICAgcmV0dXJuIG5ldyBQcm9taXNlPHN0cmluZz4oKHJlc29sdmUsIHJlamVjdCkgPT4ge1xuICAgICAgICAgICAgdGhpcy5fZG93bmxvYWRRdWV1ZS5wdXNoKHtcbiAgICAgICAgICAgICAgICB1cmw6IHVybCxcbiAgICAgICAgICAgICAgICBoZWFkZXJzOiBoZWFkZXJzLFxuICAgICAgICAgICAgICAgIGlzUGVyc2lzdGVudDogaXNQZXJzaXN0ZW50LFxuICAgICAgICAgICAgICAgIGRlc3RGb2xkZXI6IGRlc3RGb2xkZXIsXG4gICAgICAgICAgICAgICAgZGVzdEZpbGU6IGRlc3RGaWxlLFxuICAgICAgICAgICAgICAgIHJlc29sdmU6IHJlc29sdmUsXG4gICAgICAgICAgICAgICAgcmVqZWN0OiByZWplY3QsXG4gICAgICAgICAgICAgICAgcHJvZ3Jlc3NPYnNlcnZlcjogcHJvZ3Jlc3NPYnNlcnZlclxuICAgICAgICAgICAgfSk7XG4gICAgICAgICAgICBpZiAodGhpcy5fY29uY3VycmVudERvd25sb2FkcyA8IE1BWF9DT05DVVJSRU5UX0RPV05MT0FEUykge1xuICAgICAgICAgICAgICAgIHRoaXMuZG93bmxvYWROZXh0KCk7XG4gICAgICAgICAgICB9XG4gICAgICAgIH0pO1xuICAgIH1cblxuICAgIHByaXZhdGUgZG93bmxvYWROZXh0KCk6IHZvaWQge1xuICAgICAgICBpZiAodGhpcy5fZG93bmxvYWRRdWV1ZS5sZW5ndGggPiAwKSB7XG4gICAgICAgICAgICBjb25zdCByZXEgPSB0aGlzLl9kb3dubG9hZFF1ZXVlLnNoaWZ0KCk7XG4gICAgICAgICAgICB0aGlzLmRvd25sb2FkRmlsZShyZXEpLnRoZW4oZmlsZVBhdGggPT4ge1xuICAgICAgICAgICAgICAgIHJlcS5yZXNvbHZlKGZpbGVQYXRoKTtcbiAgICAgICAgICAgICAgICB0aGlzLmRvd25sb2FkTmV4dCgpO1xuICAgICAgICAgICAgfSwgKCkgPT4ge1xuICAgICAgICAgICAgICAgIHJlcS5yZWplY3QoKTtcbiAgICAgICAgICAgICAgICB0aGlzLmRvd25sb2FkTmV4dCgpO1xuICAgICAgICAgICAgfSk7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAvLyBTdGFydCBwcm9jZXNzaW5nIGEgZG93bmxvYWQgcmVxdWVzdFxuICAgIHByaXZhdGUgZG93bmxvYWRGaWxlKHJlcSk6IFByb21pc2U8c3RyaW5nPiB7XG4gICAgICAgIGxldCBmaWxlUGF0aCwgYmxvYjtcbiAgICAgICAgdGhpcy5fY29uY3VycmVudERvd25sb2FkcysrO1xuXG4gICAgICAgIHJldHVybiB0aGlzLnNlbmRIdHRwUmVxdWVzdChyZXEudXJsLCByZXEucHJvZ3Jlc3NPYnNlcnZlciwgcmVxLmhlYWRlcnMpLnRoZW4oKGUpID0+IHtcbiAgICAgICAgICAgIGJsb2IgPSAoZSBhcyBIdHRwUmVzcG9uc2U8QmxvYj4pLmJvZHk7XG4gICAgICAgICAgICByZXR1cm4gdGhpcy5nZXRGaWxlTmFtZShlLCByZXEsIGJsb2IudHlwZSk7XG4gICAgICAgIH0pLnRoZW4oKGZpbGVOYW1lKSA9PiB7XG4gICAgICAgICAgICBpZiAoIXJlcS5kZXN0Rm9sZGVyKSB7XG4gICAgICAgICAgICAgICAgcmVxLmRlc3RGb2xkZXIgPSB0aGlzLmRldmljZUZpbGVTZXJ2aWNlLmZpbmRGb2xkZXJQYXRoKHJlcS5pc1BlcnNpc3RlbnQsIGZpbGVOYW1lKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIGZpbGVQYXRoID0gcmVxLmRlc3RGb2xkZXIgKyBmaWxlTmFtZTtcbiAgICAgICAgICAgIHJldHVybiB0aGlzLmNvcmRvdmFGaWxlLndyaXRlRmlsZShyZXEuZGVzdEZvbGRlciwgZmlsZU5hbWUsIGJsb2IpO1xuICAgICAgICB9KS50aGVuKCgpID0+IHtcbiAgICAgICAgICAgIHRoaXMuX2NvbmN1cnJlbnREb3dubG9hZHMtLTtcbiAgICAgICAgICAgIHJldHVybiBmaWxlUGF0aDtcbiAgICAgICAgfSwgKHJlc3BvbnNlKSA9PiB7XG4gICAgICAgICAgICB0aGlzLl9jb25jdXJyZW50RG93bmxvYWRzLS07XG4gICAgICAgICAgICB0aGlzLmNvcmRvdmFGaWxlLnJlbW92ZUZpbGUocmVxLmRlc3RGb2xkZXIsIHJlcS5kZXN0RmlsZSk7XG4gICAgICAgICAgICByZXR1cm4gUHJvbWlzZS5yZWplY3QoYEZhaWxlZCB0byBkb3dubG9hZGVkICAke3JlcS51cmx9IHdpdGggZXJyb3IgJHtKU09OLnN0cmluZ2lmeShyZXNwb25zZSl9YCk7XG4gICAgICAgIH0pO1xuICAgIH1cblxuICAgIC8qKlxuICAgICAqIFJldHVybnMgdGhlIGZpbGVuYW1lXG4gICAgICogMS4gaWYgZmlsZW5hbWUgZXhpc3RzIGp1c3QgcmV0dXJuXG4gICAgICogMi4gcmV0cmlldmUgdGhlIGZpbGVuYW1lIGZyb20gcmVzcG9uc2UgaGVhZGVycyBpLmUuIGNvbnRlbnQtZGlzcG9zaXRpb25cbiAgICAgKiAzLiBwaWNrIHRoZSBmaWxlbmFtZSBmcm9tIHRoZSBlbmQgb2YgdGhlIHVybFxuICAgICAqIElmIGZpbGVuYW1lIGRvZXNudCBjb250YWluIHRoZSBleHRlbnNpb24gdGhlbiBleHRyYWN0IHVzaW5nIG1pbWVUeXBlLlxuICAgICAqIEdlbmVyYXRlcyBuZXdGaWxlTmFtZSBpZiBmaWxlbmFtZSBhbHJlYWR5IGV4aXN0cy5cbiAgICAgKiBAcGFyYW0gcmVzcG9uc2UsIGRvd25sb2FkIGZpbGUgcmVzcG9uc2VcbiAgICAgKiBAcGFyYW0gcmVxLCBkb3dubG9hZCByZXF1ZXN0IHBhcmFtc1xuICAgICAqIEBwYXJhbSBtaW1lVHlwZSBtaW1lIHR5cGUgb2YgZmlsZVxuICAgICAqIEByZXR1cm5zIHtQcm9taXNlPHN0cmluZz59XG4gICAgICovXG4gICAgcHJpdmF0ZSBnZXRGaWxlTmFtZShyZXNwb25zZSwgcmVxLCBtaW1lVHlwZSkge1xuICAgICAgICBjb25zdCBkaXNwb3NpdGlvbiA9IHJlc3BvbnNlLmhlYWRlcnMuZ2V0KCdDb250ZW50LURpc3Bvc2l0aW9uJyk7XG4gICAgICAgIGxldCBmaWxlbmFtZSA9IHJlcS5kZXN0RmlsZTtcbiAgICAgICAgaWYgKCFmaWxlbmFtZSAmJiBkaXNwb3NpdGlvbiAmJiBkaXNwb3NpdGlvbi5pbmRleE9mKCdhdHRhY2htZW50JykgIT09IC0xKSB7XG4gICAgICAgICAgICBjb25zdCBmaWxlbmFtZVJlZ2V4ID0gL2ZpbGVuYW1lW147PVxcbl0qPSgoWydcIl0pLio/XFwyfFteO1xcbl0qKS87XG4gICAgICAgICAgICBjb25zdCBtYXRjaGVzID0gZmlsZW5hbWVSZWdleC5leGVjKGRpc3Bvc2l0aW9uKTtcbiAgICAgICAgICAgIGlmIChtYXRjaGVzICE9PSBudWxsICYmIG1hdGNoZXNbMV0pIHtcbiAgICAgICAgICAgICAgICBmaWxlbmFtZSA9IG1hdGNoZXNbMV0ucmVwbGFjZSgvWydcIl0vZywgJycpO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICAgIGlmICghZmlsZW5hbWUpIHtcbiAgICAgICAgICAgIGZpbGVuYW1lID0gcmVxLnVybC5zcGxpdCgnPycpWzBdO1xuICAgICAgICAgICAgZmlsZW5hbWUgPSBmaWxlbmFtZS5zcGxpdCgnLycpLnBvcCgpO1xuICAgICAgICB9XG5cbiAgICAgICAgbGV0IGZpbGVFeHRlbnNpb247XG4gICAgICAgIGlmIChtaW1lVHlwZSkge1xuICAgICAgICAgICAgZmlsZUV4dGVuc2lvbiA9IHRoaXMuZmlsZUV4dGVuc2lvbkZyb21NaW1lUGlwZS50cmFuc2Zvcm0obWltZVR5cGUpO1xuICAgICAgICB9XG4gICAgICAgIGxldCBoYXNGaWxlRXh0ZW5zaW9uO1xuICAgICAgICAvLyBvbmUgb3IgbW9yZSBmaWxlIGV4dGVuc2lvbnMgY2FuIGhhdmUgc2FtZSBtaW1lVHlwZSB0aGVuIGxvb3Agb3ZlciB0aGUgZmlsZSBleHRlbnNpb25zLlxuICAgICAgICBpZiAoaXNBcnJheShmaWxlRXh0ZW5zaW9uKSAmJiAhaXNFbXB0eShmaWxlRXh0ZW5zaW9uKSkge1xuICAgICAgICAgICAgaGFzRmlsZUV4dGVuc2lvbiA9IGZpbmQoZmlsZUV4dGVuc2lvbiwgZXh0ZW5zaW9uID0+IGVuZHNXaXRoKGZpbGVuYW1lLCBleHRlbnNpb24pKTtcbiAgICAgICAgICAgIC8vRmlsZSBleHRlbnNpb24gd2lsbCBiZSBhcnJheSBmb3Igc29tZSBmaWxlIGZvcm1hdHNcbiAgICAgICAgICAgIGZpbGVFeHRlbnNpb24gPSBmaWxlRXh0ZW5zaW9uWzBdO1xuICAgICAgICB9XG4gICAgICAgIGlmICghaGFzRmlsZUV4dGVuc2lvbiAmJiAhZW5kc1dpdGgoZmlsZW5hbWUsIGZpbGVFeHRlbnNpb24pKSB7XG4gICAgICAgICAgICBmaWxlbmFtZSA9IGZpbGVuYW1lICsgZmlsZUV4dGVuc2lvbjtcbiAgICAgICAgfVxuXG4gICAgICAgIGNvbnN0IGZvbGRlciA9IHJlcS5kZXN0Rm9sZGVyIHx8IHRoaXMuZGV2aWNlRmlsZVNlcnZpY2UuZmluZEZvbGRlclBhdGgocmVxLmlzUGVyc2lzdGVudCwgZmlsZW5hbWUpO1xuICAgICAgICByZXR1cm4gdGhpcy5kZXZpY2VGaWxlU2VydmljZS5uZXdGaWxlTmFtZShmb2xkZXIsIGZpbGVuYW1lKTtcbiAgICB9XG5cbiAgICBwcml2YXRlIHNlbmRIdHRwUmVxdWVzdCh1cmw6IHN0cmluZywgcHJvZ3Jlc3NPYnNlcnZlcjogT2JzZXJ2ZXI8SHR0cEV2ZW50PGFueT4+LCBoZWFkZXJzPzogYW55KTogUHJvbWlzZTxIdHRwUmVzcG9uc2U8YW55Pj4ge1xuICAgICAgICBsZXQgcmVxSGVhZGVycyA9IG5ldyBIdHRwSGVhZGVycygpO1xuXG4gICAgICAgIC8vIGhlYWRlcnNcbiAgICAgICAgaWYgKGhlYWRlcnMpIHtcbiAgICAgICAgICAgIE9iamVjdC5lbnRyaWVzKGhlYWRlcnMpLmZvckVhY2goKFtrLCB2XSkgPT4gcmVxSGVhZGVycyA9IHJlcUhlYWRlcnMuYXBwZW5kKGssIHYgYXMgc3RyaW5nKSk7XG4gICAgICAgIH1cbiAgICAgICAgY29uc3QgcmVxID0gbmV3IEh0dHBSZXF1ZXN0KCdHRVQnLCB1cmwsIHtcbiAgICAgICAgICAgIGhlYWRlcnM6IHJlcUhlYWRlcnMsXG4gICAgICAgICAgICByZXNwb25zZVR5cGU6ICdibG9iJyxcbiAgICAgICAgICAgIHJlcG9ydFByb2dyZXNzOiBwcm9ncmVzc09ic2VydmVyICE9IG51bGxcbiAgICAgICAgfSk7XG4gICAgICAgIHJldHVybiB0aGlzLmh0dHAucmVxdWVzdChyZXEpXG4gICAgICAgICAgICAucGlwZShcbiAgICAgICAgICAgICAgICBtYXAoZSA9PiB7XG4gICAgICAgICAgICAgICAgICAgIGlmIChwcm9ncmVzc09ic2VydmVyICYmIHByb2dyZXNzT2JzZXJ2ZXIubmV4dCAmJiBlLnR5cGUgPT09IEh0dHBFdmVudFR5cGUuRG93bmxvYWRQcm9ncmVzcykge1xuICAgICAgICAgICAgICAgICAgICAgICAgcHJvZ3Jlc3NPYnNlcnZlci5uZXh0KGUpO1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgIHJldHVybiBlO1xuICAgICAgICAgICAgICAgIH0pLFxuICAgICAgICAgICAgICAgIGZpbHRlcihlID0+IGUudHlwZSA9PT0gSHR0cEV2ZW50VHlwZS5SZXNwb25zZSksXG4gICAgICAgICAgICAgICAgbWFwKCBlID0+IHtcbiAgICAgICAgICAgICAgICAgICAgaWYgKHByb2dyZXNzT2JzZXJ2ZXIgJiYgcHJvZ3Jlc3NPYnNlcnZlci5jb21wbGV0ZSkge1xuICAgICAgICAgICAgICAgICAgICAgICAgcHJvZ3Jlc3NPYnNlcnZlci5jb21wbGV0ZSgpO1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgIHJldHVybiAoZSBhcyBIdHRwUmVzcG9uc2U8YW55Pik7XG4gICAgICAgICAgICAgICAgfSlcbiAgICAgICAgICAgIClcbiAgICAgICAgICAgIC50b1Byb21pc2UoKTtcbiAgICB9XG59XG4iXX0=
154
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGV2aWNlLWZpbGUtZG93bmxvYWQuc2VydmljZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL21vYmlsZS9jb3JlL3NyYy9zZXJ2aWNlcy9kZXZpY2UtZmlsZS1kb3dubG9hZC5zZXJ2aWNlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDM0MsT0FBTyxFQUNILFVBQVUsRUFFVixhQUFhLEVBQ2IsV0FBVyxFQUNYLFdBQVcsRUFFZCxNQUFNLHNCQUFzQixDQUFDO0FBRTlCLE9BQU8sRUFBRSxJQUFJLEVBQUUsTUFBTSxtQ0FBbUMsQ0FBQztBQUV6RCxPQUFPLEVBQUUsTUFBTSxFQUFFLEdBQUcsRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBRTdDLE9BQU8sRUFBRSx5QkFBeUIsRUFBRSxNQUFNLHFCQUFxQixDQUFDO0FBRWhFLE9BQU8sRUFBRSxpQkFBaUIsRUFBRSxNQUFNLHVCQUF1QixDQUFDO0FBQzFELE9BQU8sRUFBQyxRQUFRLEVBQUUsSUFBSSxFQUFFLE9BQU8sRUFBRSxPQUFPLEVBQUMsTUFBTSxXQUFXLENBQUM7Ozs7OztBQUUzRCxNQUFNLHdCQUF3QixHQUFHLENBQUMsQ0FBQztBQUduQyxNQUFNLE9BQU8seUJBQXlCO2FBQ2xCLGlCQUFZLEdBQUcsMkJBQTJCLEFBQTlCLENBQStCO0lBSTNELFlBQ1ksV0FBaUIsRUFDakIsSUFBZ0IsRUFDaEIsaUJBQW9DLEVBQ3JDLHlCQUFvRDtRQUhuRCxnQkFBVyxHQUFYLFdBQVcsQ0FBTTtRQUNqQixTQUFJLEdBQUosSUFBSSxDQUFZO1FBQ2hCLHNCQUFpQixHQUFqQixpQkFBaUIsQ0FBbUI7UUFDckMsOEJBQXlCLEdBQXpCLHlCQUF5QixDQUEyQjtRQVB2RCxtQkFBYyxHQUFHLEVBQUUsQ0FBQztRQUNwQix5QkFBb0IsR0FBRyxDQUFDLENBQUM7SUFRakMsQ0FBQztJQUVNLFFB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QXpCLHlCQUF5QixtQkFEWixNQUFNOztpRkFDbkIseUJBQXlCO2NBRHJDLFVBQVU7ZUFBQyxFQUFFLFVBQVUsRUFBRSxNQUFNLEVBQUUiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBJbmplY3RhYmxlIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQge1xuICAgIEh0dHBDbGllbnQsXG4gICAgSHR0cEV2ZW50LFxuICAgIEh0dHBFdmVudFR5cGUsXG4gICAgSHR0cEhlYWRlcnMsXG4gICAgSHR0cFJlcXVlc3QsXG4gICAgSHR0cFJlc3BvbnNlXG59IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbi9odHRwJztcblxuaW1wb3J0IHsgRmlsZSB9IGZyb20gJ0Bhd2Vzb21lLWNvcmRvdmEtcGx1Z2lucy9maWxlL25neCc7XG5pbXBvcnQgeyBPYnNlcnZlciB9IGZyb20gJ3J4anMnO1xuaW1wb3J0IHsgZmlsdGVyLCBtYXAgfSBmcm9tICdyeGpzL29wZXJhdG9ycyc7XG5cbmltcG9ydCB7IEZpbGVFeHRlbnNpb25Gcm9tTWltZVBpcGUgfSBmcm9tICdAd20vY29tcG9uZW50cy9iYXNlJztcblxuaW1wb3J0IHsgRGV2aWNlRmlsZVNlcnZpY2UgfSBmcm9tICcuL2RldmljZS1maWxlLnNlcnZpY2UnO1xuaW1wb3J0IHtlbmRzV2l0aCwgZmluZCwgaXNBcnJheSwgaXNFbXB0eX0gZnJvbSBcImxvZGFzaC1lc1wiO1xuXG5jb25zdCBNQVhfQ09OQ1VSUkVOVF9ET1dOTE9BRFMgPSAyO1xuXG5ASW5qZWN0YWJsZSh7IHByb3ZpZGVkSW46ICdyb290JyB9KVxuZXhwb3J0IGNsYXNzIERldmljZUZpbGVEb3dubG9hZFNlcnZpY2Uge1xuICAgIHN0YXRpYyByZWFkb25seSBTRVJWSUNFX05BTUUgPSAnRGV2aWNlRmlsZURvd25sb2FkU2VydmljZSc7XG4gICAgcHJpdmF0ZSBfZG93bmxvYWRRdWV1ZSA9IFtdO1xuICAgIHByaXZhdGUgX2NvbmN1cnJlbnREb3dubG9hZHMgPSAwO1xuXG4gICAgY29uc3RydWN0b3IoXG4gICAgICAgIHByaXZhdGUgY29yZG92YUZpbGU6IEZpbGUsXG4gICAgICAgIHByaXZhdGUgaHR0cDogSHR0cENsaWVudCxcbiAgICAgICAgcHJpdmF0ZSBkZXZpY2VGaWxlU2VydmljZTogRGV2aWNlRmlsZVNlcnZpY2UsXG4gICAgICAgIHB1YmxpYyBmaWxlRXh0ZW5zaW9uRnJvbU1pbWVQaXBlOiBGaWxlRXh0ZW5zaW9uRnJvbU1pbWVQaXBlKSB7XG5cbiAgICB9XG5cbiAgICBwdWJsaWMgZG93bmxvYWQodXJsOiBzdHJpbmcsIGlzUGVyc2lzdGVudDogYm9vbGVhbiwgZGVzdEZvbGRlcj86IHN0cmluZywgZGVzdEZpbGU/OiBzdHJpbmcsIHByb2dyZXNzT2JzZXJ2ZXI/OiBPYnNlcnZlcjxhbnk+LCBoZWFkZXJzPzogYW55KTogUHJvbWlzZTxzdHJpbmc+IHtcbiAgICAgICAgcmV0dXJuIHRoaXMuYWRkVG9Eb3dubG9hZFF1ZXVlKHVybCwgaXNQZXJzaXN0ZW50LCBkZXN0Rm9sZGVyLCBkZXN0RmlsZSwgcHJvZ3Jlc3NPYnNlcnZlciwgaGVhZGVycyk7XG4gICAgfVxuXG4gICAgLy8gQWRkcyB0byBkb3dubG9hZCByZXF1ZXN0IHF1ZXVlXG4gICAgcHJpdmF0ZSBhZGRUb0Rvd25sb2FkUXVldWUodXJsOiBzdHJpbmcsIGlzUGVyc2lzdGVudDogYm9vbGVhbiwgZGVzdEZvbGRlcj86IHN0cmluZywgZGVzdEZpbGU/OiBzdHJpbmcsIHByb2dyZXNzT2JzZXJ2ZXI/OiBPYnNlcnZlcjxhbnk+LCBoZWFkZXJzPzogYW55KTogUHJvbWlzZTxzdHJpbmc+IHtcbiAgICAgICAgcmV0dXJuIG5ldyBQcm9taXNlPHN0cmluZz4oKHJlc29sdmUsIHJlamVjdCkgPT4ge1xuICAgICAgICAgICAgdGhpcy5fZG93bmxvYWRRdWV1ZS5wdXNoKHtcbiAgICAgICAgICAgICAgICB1cmw6IHVybCxcbiAgICAgICAgICAgICAgICBoZWFkZXJzOiBoZWFkZXJzLFxuICAgICAgICAgICAgICAgIGlzUGVyc2lzdGVudDogaXNQZXJzaXN0ZW50LFxuICAgICAgICAgICAgICAgIGRlc3RGb2xkZXI6IGRlc3RGb2xkZXIsXG4gICAgICAgICAgICAgICAgZGVzdEZpbGU6IGRlc3RGaWxlLFxuICAgICAgICAgICAgICAgIHJlc29sdmU6IHJlc29sdmUsXG4gICAgICAgICAgICAgICAgcmVqZWN0OiByZWplY3QsXG4gICAgICAgICAgICAgICAgcHJvZ3Jlc3NPYnNlcnZlcjogcHJvZ3Jlc3NPYnNlcnZlclxuICAgICAgICAgICAgfSk7XG4gICAgICAgICAgICBpZiAodGhpcy5fY29uY3VycmVudERvd25sb2FkcyA8IE1BWF9DT05DVVJSRU5UX0RPV05MT0FEUykge1xuICAgICAgICAgICAgICAgIHRoaXMuZG93bmxvYWROZXh0KCk7XG4gICAgICAgICAgICB9XG4gICAgICAgIH0pO1xuICAgIH1cblxuICAgIHByaXZhdGUgZG93bmxvYWROZXh0KCk6IHZvaWQge1xuICAgICAgICBpZiAodGhpcy5fZG93bmxvYWRRdWV1ZS5sZW5ndGggPiAwKSB7XG4gICAgICAgICAgICBjb25zdCByZXEgPSB0aGlzLl9kb3dubG9hZFF1ZXVlLnNoaWZ0KCk7XG4gICAgICAgICAgICB0aGlzLmRvd25sb2FkRmlsZShyZXEpLnRoZW4oZmlsZVBhdGggPT4ge1xuICAgICAgICAgICAgICAgIHJlcS5yZXNvbHZlKGZpbGVQYXRoKTtcbiAgICAgICAgICAgICAgICB0aGlzLmRvd25sb2FkTmV4dCgpO1xuICAgICAgICAgICAgfSwgKCkgPT4ge1xuICAgICAgICAgICAgICAgIHJlcS5yZWplY3QoKTtcbiAgICAgICAgICAgICAgICB0aGlzLmRvd25sb2FkTmV4dCgpO1xuICAgICAgICAgICAgfSk7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAvLyBTdGFydCBwcm9jZXNzaW5nIGEgZG93bmxvYWQgcmVxdWVzdFxuICAgIHByaXZhdGUgZG93bmxvYWRGaWxlKHJlcSk6IFByb21pc2U8c3RyaW5nPiB7XG4gICAgICAgIGxldCBmaWxlUGF0aCwgYmxvYjtcbiAgICAgICAgdGhpcy5fY29uY3VycmVudERvd25sb2FkcysrO1xuXG4gICAgICAgIHJldHVybiB0aGlzLnNlbmRIdHRwUmVxdWVzdChyZXEudXJsLCByZXEucHJvZ3Jlc3NPYnNlcnZlciwgcmVxLmhlYWRlcnMpLnRoZW4oKGUpID0+IHtcbiAgICAgICAgICAgIGJsb2IgPSAoZSBhcyBIdHRwUmVzcG9uc2U8QmxvYj4pLmJvZHk7XG4gICAgICAgICAgICByZXR1cm4gdGhpcy5nZXRGaWxlTmFtZShlLCByZXEsIGJsb2IudHlwZSk7XG4gICAgICAgIH0pLnRoZW4oKGZpbGVOYW1lKSA9PiB7XG4gICAgICAgICAgICBpZiAoIXJlcS5kZXN0Rm9sZGVyKSB7XG4gICAgICAgICAgICAgICAgcmVxLmRlc3RGb2xkZXIgPSB0aGlzLmRldmljZUZpbGVTZXJ2aWNlLmZpbmRGb2xkZXJQYXRoKHJlcS5pc1BlcnNpc3RlbnQsIGZpbGVOYW1lKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIGZpbGVQYXRoID0gcmVxLmRlc3RGb2xkZXIgKyBmaWxlTmFtZTtcbiAgICAgICAgICAgIHJldHVybiB0aGlzLmNvcmRvdmFGaWxlLndyaXRlRmlsZShyZXEuZGVzdEZvbGRlciwgZmlsZU5hbWUsIGJsb2IpO1xuICAgICAgICB9KS50aGVuKCgpID0+IHtcbiAgICAgICAgICAgIHRoaXMuX2NvbmN1cnJlbnREb3dubG9hZHMtLTtcbiAgICAgICAgICAgIHJldHVybiBmaWxlUGF0aDtcbiAgICAgICAgfSwgKHJlc3BvbnNlKSA9PiB7XG4gICAgICAgICAgICB0aGlzLl9jb25jdXJyZW50RG93bmxvYWRzLS07XG4gICAgICAgICAgICB0aGlzLmNvcmRvdmFGaWxlLnJlbW92ZUZpbGUocmVxLmRlc3RGb2xkZXIsIHJlcS5kZXN0RmlsZSk7XG4gICAgICAgICAgICByZXR1cm4gUHJvbWlzZS5yZWplY3QoYEZhaWxlZCB0byBkb3dubG9hZGVkICAke3JlcS51cmx9IHdpdGggZXJyb3IgJHtKU09OLnN0cmluZ2lmeShyZXNwb25zZSl9YCk7XG4gICAgICAgIH0pO1xuICAgIH1cblxuICAgIC8qKlxuICAgICAqIFJldHVybnMgdGhlIGZpbGVuYW1lXG4gICAgICogMS4gaWYgZmlsZW5hbWUgZXhpc3RzIGp1c3QgcmV0dXJuXG4gICAgICogMi4gcmV0cmlldmUgdGhlIGZpbGVuYW1lIGZyb20gcmVzcG9uc2UgaGVhZGVycyBpLmUuIGNvbnRlbnQtZGlzcG9zaXRpb25cbiAgICAgKiAzLiBwaWNrIHRoZSBmaWxlbmFtZSBmcm9tIHRoZSBlbmQgb2YgdGhlIHVybFxuICAgICAqIElmIGZpbGVuYW1lIGRvZXNudCBjb250YWluIHRoZSBleHRlbnNpb24gdGhlbiBleHRyYWN0IHVzaW5nIG1pbWVUeXBlLlxuICAgICAqIEdlbmVyYXRlcyBuZXdGaWxlTmFtZSBpZiBmaWxlbmFtZSBhbHJlYWR5IGV4aXN0cy5cbiAgICAgKiBAcGFyYW0gcmVzcG9uc2UsIGRvd25sb2FkIGZpbGUgcmVzcG9uc2VcbiAgICAgKiBAcGFyYW0gcmVxLCBkb3dubG9hZCByZXF1ZXN0IHBhcmFtc1xuICAgICAqIEBwYXJhbSBtaW1lVHlwZSBtaW1lIHR5cGUgb2YgZmlsZVxuICAgICAqIEByZXR1cm5zIHtQcm9taXNlPHN0cmluZz59XG4gICAgICovXG4gICAgcHJpdmF0ZSBnZXRGaWxlTmFtZShyZXNwb25zZSwgcmVxLCBtaW1lVHlwZSkge1xuICAgICAgICBjb25zdCBkaXNwb3NpdGlvbiA9IHJlc3BvbnNlLmhlYWRlcnMuZ2V0KCdDb250ZW50LURpc3Bvc2l0aW9uJyk7XG4gICAgICAgIGxldCBmaWxlbmFtZSA9IHJlcS5kZXN0RmlsZTtcbiAgICAgICAgaWYgKCFmaWxlbmFtZSAmJiBkaXNwb3NpdGlvbiAmJiBkaXNwb3NpdGlvbi5pbmRleE9mKCdhdHRhY2htZW50JykgIT09IC0xKSB7XG4gICAgICAgICAgICBjb25zdCBmaWxlbmFtZVJlZ2V4ID0gL2ZpbGVuYW1lW147PVxcbl0qPSgoWydcIl0pLio/XFwyfFteO1xcbl0qKS87XG4gICAgICAgICAgICBjb25zdCBtYXRjaGVzID0gZmlsZW5hbWVSZWdleC5leGVjKGRpc3Bvc2l0aW9uKTtcbiAgICAgICAgICAgIGlmIChtYXRjaGVzICE9PSBudWxsICYmIG1hdGNoZXNbMV0pIHtcbiAgICAgICAgICAgICAgICBmaWxlbmFtZSA9IG1hdGNoZXNbMV0ucmVwbGFjZSgvWydcIl0vZywgJycpO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICAgIGlmICghZmlsZW5hbWUpIHtcbiAgICAgICAgICAgIGZpbGVuYW1lID0gcmVxLnVybC5zcGxpdCgnPycpWzBdO1xuICAgICAgICAgICAgZmlsZW5hbWUgPSBmaWxlbmFtZS5zcGxpdCgnLycpLnBvcCgpO1xuICAgICAgICB9XG5cbiAgICAgICAgbGV0IGZpbGVFeHRlbnNpb247XG4gICAgICAgIGlmIChtaW1lVHlwZSkge1xuICAgICAgICAgICAgZmlsZUV4dGVuc2lvbiA9IHRoaXMuZmlsZUV4dGVuc2lvbkZyb21NaW1lUGlwZS50cmFuc2Zvcm0obWltZVR5cGUpO1xuICAgICAgICB9XG4gICAgICAgIGxldCBoYXNGaWxlRXh0ZW5zaW9uO1xuICAgICAgICAvLyBvbmUgb3IgbW9yZSBmaWxlIGV4dGVuc2lvbnMgY2FuIGhhdmUgc2FtZSBtaW1lVHlwZSB0aGVuIGxvb3Agb3ZlciB0aGUgZmlsZSBleHRlbnNpb25zLlxuICAgICAgICBpZiAoaXNBcnJheShmaWxlRXh0ZW5zaW9uKSAmJiAhaXNFbXB0eShmaWxlRXh0ZW5zaW9uKSkge1xuICAgICAgICAgICAgaGFzRmlsZUV4dGVuc2lvbiA9IGZpbmQoZmlsZUV4dGVuc2lvbiwgZXh0ZW5zaW9uID0+IGVuZHNXaXRoKGZpbGVuYW1lLCBleHRlbnNpb24pKTtcbiAgICAgICAgICAgIC8vRmlsZSBleHRlbnNpb24gd2lsbCBiZSBhcnJheSBmb3Igc29tZSBmaWxlIGZvcm1hdHNcbiAgICAgICAgICAgIGZpbGVFeHRlbnNpb24gPSBmaWxlRXh0ZW5zaW9uWzBdO1xuICAgICAgICB9XG4gICAgICAgIGlmICghaGFzRmlsZUV4dGVuc2lvbiAmJiAhZW5kc1dpdGgoZmlsZW5hbWUsIGZpbGVFeHRlbnNpb24pKSB7XG4gICAgICAgICAgICBmaWxlbmFtZSA9IGZpbGVuYW1lICsgZmlsZUV4dGVuc2lvbjtcbiAgICAgICAgfVxuXG4gICAgICAgIGNvbnN0IGZvbGRlciA9IHJlcS5kZXN0Rm9sZGVyIHx8IHRoaXMuZGV2aWNlRmlsZVNlcnZpY2UuZmluZEZvbGRlclBhdGgocmVxLmlzUGVyc2lzdGVudCwgZmlsZW5hbWUpO1xuICAgICAgICByZXR1cm4gdGhpcy5kZXZpY2VGaWxlU2VydmljZS5uZXdGaWxlTmFtZShmb2xkZXIsIGZpbGVuYW1lKTtcbiAgICB9XG5cbiAgICBwcml2YXRlIHNlbmRIdHRwUmVxdWVzdCh1cmw6IHN0cmluZywgcHJvZ3Jlc3NPYnNlcnZlcjogT2JzZXJ2ZXI8SHR0cEV2ZW50PGFueT4+LCBoZWFkZXJzPzogYW55KTogUHJvbWlzZTxIdHRwUmVzcG9uc2U8YW55Pj4ge1xuICAgICAgICBsZXQgcmVxSGVhZGVycyA9IG5ldyBIdHRwSGVhZGVycygpO1xuXG4gICAgICAgIC8vIGhlYWRlcnNcbiAgICAgICAgaWYgKGhlYWRlcnMpIHtcbiAgICAgICAgICAgIE9iamVjdC5lbnRyaWVzKGhlYWRlcnMpLmZvckVhY2goKFtrLCB2XSkgPT4gcmVxSGVhZGVycyA9IHJlcUhlYWRlcnMuYXBwZW5kKGssIHYgYXMgc3RyaW5nKSk7XG4gICAgICAgIH1cbiAgICAgICAgY29uc3QgcmVxID0gbmV3IEh0dHBSZXF1ZXN0KCdHRVQnLCB1cmwsIHtcbiAgICAgICAgICAgIGhlYWRlcnM6IHJlcUhlYWRlcnMsXG4gICAgICAgICAgICByZXNwb25zZVR5cGU6ICdibG9iJyxcbiAgICAgICAgICAgIHJlcG9ydFByb2dyZXNzOiBwcm9ncmVzc09ic2VydmVyICE9IG51bGxcbiAgICAgICAgfSk7XG4gICAgICAgIHJldHVybiB0aGlzLmh0dHAucmVxdWVzdChyZXEpXG4gICAgICAgICAgICAucGlwZShcbiAgICAgICAgICAgICAgICBtYXAoZSA9PiB7XG4gICAgICAgICAgICAgICAgICAgIGlmIChwcm9ncmVzc09ic2VydmVyICYmIHByb2dyZXNzT2JzZXJ2ZXIubmV4dCAmJiBlLnR5cGUgPT09IEh0dHBFdmVudFR5cGUuRG93bmxvYWRQcm9ncmVzcykge1xuICAgICAgICAgICAgICAgICAgICAgICAgcHJvZ3Jlc3NPYnNlcnZlci5uZXh0KGUpO1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgIHJldHVybiBlO1xuICAgICAgICAgICAgICAgIH0pLFxuICAgICAgICAgICAgICAgIGZpbHRlcihlID0+IGUudHlwZSA9PT0gSHR0cEV2ZW50VHlwZS5SZXNwb25zZSksXG4gICAgICAgICAgICAgICAgbWFwKCBlID0+IHtcbiAgICAgICAgICAgICAgICAgICAgaWYgKHByb2dyZXNzT2JzZXJ2ZXIgJiYgcHJvZ3Jlc3NPYnNlcnZlci5jb21wbGV0ZSkge1xuICAgICAgICAgICAgICAgICAgICAgICAgcHJvZ3Jlc3NPYnNlcnZlci5jb21wbGV0ZSgpO1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgIHJldHVybiAoZSBhcyBIdHRwUmVzcG9uc2U8YW55Pik7XG4gICAgICAgICAgICAgICAgfSlcbiAgICAgICAgICAgIClcbiAgICAgICAgICAgIC50b1Byb21pc2UoKTtcbiAgICB9XG59XG4iXX0=
@@ -102,11 +102,11 @@ export class DeviceFileOpenerService {
102
102
  });
103
103
  });
104
104
  }
105
- static { this.ɵfac = function DeviceFileOpenerService_Factory(t) { return new (t || DeviceFileOpenerService)(i0.ɵɵinject(i1.File), i0.ɵɵinject(i2.FileOpener), i0.ɵɵinject(i3.DeviceFileService), i0.ɵɵinject(i4.DeviceFileCacheService), i0.ɵɵinject(i5.DeviceFileDownloadService)); }; }
105
+ static { this.ɵfac = function DeviceFileOpenerService_Factory(__ngFactoryType__) { return new (__ngFactoryType__ || DeviceFileOpenerService)(i0.ɵɵinject(i1.File), i0.ɵɵinject(i2.FileOpener), i0.ɵɵinject(i3.DeviceFileService), i0.ɵɵinject(i4.DeviceFileCacheService), i0.ɵɵinject(i5.DeviceFileDownloadService)); }; }
106
106
  static { this.ɵprov = /*@__PURE__*/ i0.ɵɵdefineInjectable({ token: DeviceFileOpenerService, factory: DeviceFileOpenerService.ɵfac, providedIn: 'root' }); }
107
107
  }
108
108
  (() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassMetadata(DeviceFileOpenerService, [{
109
109
  type: Injectable,
110
110
  args: [{ providedIn: 'root' }]
111
111
  }], () => [{ type: i1.File }, { type: i2.FileOpener }, { type: i3.DeviceFileService }, { type: i4.DeviceFileCacheService }, { type: i5.DeviceFileDownloadService }], null); })();
112
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGV2aWNlLWZpbGUtb3BlbmVyLnNlcnZpY2UuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9tb2JpbGUvY29yZS9zcmMvc2VydmljZXMvZGV2aWNlLWZpbGUtb3BlbmVyLnNlcnZpY2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUUzQyxPQUFPLEVBQUUsSUFBSSxFQUFFLE1BQU0sbUNBQW1DLENBQUM7QUFDekQsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLDBDQUEwQyxDQUFDO0FBRXRFLE9BQU8sRUFBRSxTQUFTLEVBQUUsS0FBSyxFQUFFLElBQUksRUFBRSxNQUFNLFVBQVUsQ0FBQztBQUVsRCxPQUFPLEVBQUUsc0JBQXNCLEVBQUUsTUFBTSw2QkFBNkIsQ0FBQztBQUNyRSxPQUFPLEVBQUUseUJBQXlCLEVBQUUsTUFBTSxnQ0FBZ0MsQ0FBQztBQUMzRSxPQUFPLEVBQUUsaUJBQWlCLEVBQUUsTUFBTSx1QkFBdUIsQ0FBQztBQUUxRCxPQUFPLEVBQUMsR0FBRyxFQUFDLE1BQU0sV0FBVyxDQUFDOzs7Ozs7O0FBTTlCLE1BQU0sT0FBTyx1QkFBdUI7YUFDaEIsaUJBQVksR0FBRyx5QkFBeUIsQUFBNUIsQ0FBNkI7SUFJekQsWUFBb0IsV0FBaUIsRUFDakIsaUJBQTZCLEVBQzdCLFdBQThCLEVBQzlCLFlBQW9DLEVBQ3BDLGVBQTBDO1FBSjFDLGdCQUFXLEdBQVgsV0FBVyxDQUFNO1FBQ2pCLHNCQUFpQixHQUFqQixpQkFBaUIsQ0FBWTtRQUM3QixnQkFBVyxHQUFYLFdBQVcsQ0FBbUI7UUFDOUIsaUJBQVksR0FBWixZQUFZLENBQXdCO1FBQ3BDLG9CQUFlLEdBQWYsZUFBZSxDQUEyQjtJQUU5RCxDQUFDO0lBRUQsK0RBQStEO0lBQ3hELGVBQWUsQ0FBQyxRQUFRO1FBQzNCLE9BQU8sSUFBSSxPQUFPLENBQU8sQ0FBQyxPQUFP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LEVBQUUsUUFBUSxFQUFFLFNBQVMsRUFBRSxPQUFPLENBQUM7cUJBQ3pGLElBQUksQ0FBQyxRQUFRLENBQUMsRUFBRTtvQkFDYixJQUFJLENBQUMsWUFBWSxDQUFDLFFBQVEsQ0FBQyxHQUFHLEVBQUUsUUFBUSxDQUFDLENBQUM7b0JBQzFDLE9BQU8sQ0FBQyxRQUFRLENBQUMsQ0FBQztnQkFDdEIsQ0FBQyxFQUFFLE1BQU0sQ0FBQyxDQUFDO1lBQ25CLENBQUMsQ0FBQyxDQUFDO1FBQ2YsQ0FBQyxDQUFDLENBQUM7SUFDUCxDQUFDO3dGQS9GUSx1QkFBdUI7dUVBQXZCLHVCQUF1QixXQUF2Qix1QkFBdUIsbUJBRFYsTUFBTTs7aUZBQ25CLHVCQUF1QjtjQURuQyxVQUFVO2VBQUMsRUFBRSxVQUFVLEVBQUUsTUFBTSxFQUFFIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgSW5qZWN0YWJsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuXG5pbXBvcnQgeyBGaWxlIH0gZnJvbSAnQGF3ZXNvbWUtY29yZG92YS1wbHVnaW5zL2ZpbGUvbmd4JztcbmltcG9ydCB7IEZpbGVPcGVuZXIgfSBmcm9tICdAYXdlc29tZS1jb3Jkb3ZhLXBsdWdpbnMvZmlsZS1vcGVuZXIvbmd4JztcblxuaW1wb3J0IHsgaXNBbmRyb2lkLCBpc0lvcywgbm9vcCB9IGZyb20gJ0B3bS9jb3JlJztcblxuaW1wb3J0IHsgRGV2aWNlRmlsZUNhY2hlU2VydmljZSB9IGZyb20gJy4vZGV2aWNlLWZpbGUtY2FjaGUuc2VydmljZSc7XG5pbXBvcnQgeyBEZXZpY2VGaWxlRG93bmxvYWRTZXJ2aWNlIH0gZnJvbSAnLi9kZXZpY2UtZmlsZS1kb3dubG9hZC5zZXJ2aWNlJztcbmltcG9ydCB7IERldmljZUZpbGVTZXJ2aWNlIH0gZnJvbSAnLi9kZXZpY2UtZmlsZS5zZXJ2aWNlJztcbmltcG9ydCB7IElEZXZpY2VTdGFydFVwU2VydmljZSB9IGZyb20gJy4vZGV2aWNlLXN0YXJ0LXVwLXNlcnZpY2UnO1xuaW1wb3J0IHtub3d9IGZyb20gXCJsb2Rhc2gtZXNcIjtcblxuZGVjbGFyZSBjb25zdCBjb3Jkb3ZhO1xuZGVjbGFyZSBjb25zdCByZXNvbHZlTG9jYWxGaWxlU3lzdGVtVVJMO1xuXG5ASW5qZWN0YWJsZSh7IHByb3ZpZGVkSW46ICdyb290JyB9KVxuZXhwb3J0IGNsYXNzIERldmljZUZpbGVPcGVuZXJTZXJ2aWNlIGltcGxlbWVudHMgSURldmljZVN0YXJ0VXBTZXJ2aWNlIHtcbiAgICBzdGF0aWMgcmVhZG9ubHkgU0VSVklDRV9OQU1FID0gJ0RldmljZUZpbGVPcGVuZXJTZXJ2aWNlJztcblxuICAgIHByaXZhdGUgX2Rvd25sb2Fkc0ZvbGRlcjtcblxuICAgIGNvbnN0cnVjdG9yKHByaXZhdGUgY29yZG92YUZpbGU6IEZpbGUsXG4gICAgICAgICAgICAgICAgcHJpdmF0ZSBjb3Jkb3ZhRmlsZU9wZW5lcjogRmlsZU9wZW5lcixcbiAgICAgICAgICAgICAgICBwcml2YXRlIGZpbGVTZXJ2aWNlOiBEZXZpY2VGaWxlU2VydmljZSxcbiAgICAgICAgICAgICAgICBwcml2YXRlIGNhY2hlU2VydmljZTogRGV2aWNlRmlsZUNhY2hlU2VydmljZSxcbiAgICAgICAgICAgICAgICBwcml2YXRlIGRvd25sb2FkU2VydmljZTogRGV2aWNlRmlsZURvd25sb2FkU2VydmljZSkge1xuXG4gICAgfVxuXG4gICAgLy8gdGhpcyBtZXRob2QgcmV0dXJucyB0aGUgbWltZSB0eXBlIG9mIGZpbGUgZnJvbSB0aGUgZmlsZVBhdGguXG4gICAgcHVibGljIGdldEZpbGVNaW1lVHlwZShmaWxlUGF0aCk6IFByb21pc2U8YW55PiB7XG4gICAgICAgIHJldHVybiBuZXcgUHJvbWlzZTxhbnk+ICgocmVzb2x2ZSkgPT4ge1xuICAgICAgICAgICAgLy8gUmVhZCB0aGUgZmlsZSBlbnRyeSBmcm9tIHRoZSBmaWxlIFVSTFxuICAgICAgICAgICAgcmVzb2x2ZUxvY2FsRmlsZVN5c3RlbVVSTChmaWxlUGF0aCwgZmlsZUVudHJ5ID0+IHtcbiAgICAgICAgICAgICAgICBmaWxlRW50cnkuZmlsZShtZXRhZGF0YSA9PiB7XG4gICAgICAgICAgICAgICAgICAgIHJlc29sdmUobWV0YWRhdGEudHlwZSk7XG4gICAgICAgICAgICAgICAgfSk7XG4gICAgICAgICAgICB9KTtcbiAgICAgICAgfSk7XG4gICAgfVxuXG4gICAgcHVibGljIG9wZW5SZW1vdGVGaWxlKHVybDogc3RyaW5nLCBleHRlbnNpb246IHN0cmluZywgZmlsZU5hbWU/OiBzdHJpbmcsIGhlYWRlcnM/OiBhbnkpOiBQcm9taXNlPHZvaWQ+IHtcbiAgICAgICAgcmV0dXJuIHRoaXMuZ2V0TG9jYWxQYXRoKHVybCwgZXh0ZW5zaW9uLCBmaWxlTmFtZSwgaGVhZGVycylcbiAgICAgICAgICAgIC50aGVuKGZpbGVQYXRoID0+IHtcbiAgICAgICAgICAgICAgICByZXR1cm4gdGhpcy5nZXRGaWxlTWltZVR5cGUoZmlsZVBhdGgpLnRoZW4odHlwZSA9PiB7XG4gICAgICAgICAgICAgICAgICAgIHJldHVybiB0aGlzLmNvcmRvdmFGaWxlT3BlbmVyLm9wZW4oZmlsZVBhdGgsIHR5cGUpO1xuICAgICAgICAgICAgICAgIH0pO1xuICAgICAgICAgICAgfSk7XG4gICAgfVxuXG4gICAgcHVibGljIHN0YXJ0KCk6IFByb21pc2U8dm9pZD4ge1xuICAgICAgICBsZXQgZG93bmxvYWRzUGFyZW50O1xuICAgICAgICBpZiAoaXNBbmRyb2lkKCkpIHtcbiAgICAgICAgICAgIGRvd25sb2Fkc1BhcmVudCA9IGNvcmRvdmEuZmlsZS5leHRlcm5hbENhY2hlRGlyZWN0b3J5O1xuICAgICAgICB9IGVsc2UgaWYgKGlzSW9zKCkpIHtcbiAgICAgICAgICAgIGRvd25sb2Fkc1BhcmVudCA9IGNvcmRvdmEuZmlsZS5kb2N1bWVudHNEaXJlY3RvcnkgKyAnTm9DbG91ZC8nO1xuICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgZG93bmxvYWRzUGFyZW50ID0gY29yZG92YS5maWxlLmRhdGFEaXJlY3Rvcnk7XG4gICAgICAgIH1cbiAgICAgICAgcmV0dXJuIHRoaXMuY29yZG92YUZpbGUuY3JlYXRlRGlyKGRvd25sb2Fkc1BhcmVudCwgJ2Rvd25sb2FkcycsIGZhbHNlKVxuICAgICAgICAgICAgLmNhdGNoKG5vb3ApXG4gICAgICAgICAgICAudGhlbigoKSA9PiB7XG4gICAgICAgICAgICAgICAgdGhpcy5fZG93bmxvYWRzRm9sZGVyID0gZG93bmxvYWRzUGFyZW50ICsgJ2Rvd25sb2Fkcy8nO1xuICAgICAgICAgICAgfSk7XG4gICAgfVxuXG4gICAgcHVibGljIGdldFNlcnZpY2VOYW1lKCkge1xuICAgICAgICByZXR1cm4gRGV2aWNlRmlsZUNhY2hlU2VydmljZS5TRVJWSUNFX05BTUU7XG4gICAgfVxuXG4gICAgcHJpdmF0ZSBnZW5lcmF0ZUZpbGVOYW1lKHVybDogc3RyaW5nLCBleHRlbnNpb246IHN0cmluZyk6IHN0cmluZyB7XG4gICAgICAgIGxldCBmaWxlTmFtZSA9IHVybC5zcGxpdCgnPycpWzBdO1xuICAgICAgICBmaWxlTmFtZSA9IGZpbGVOYW1lLnNwbGl0KCcvJykucG9wKCk7XG4gICAgICAgIGZpbGVOYW1lID0gdGhpcy5maWxlU2VydmljZS5hcHBlbmRUb0ZpbGVOYW1lKGZpbGVOYW1lLCAnJyArIG5vdygpKTtcbiAgICAgICAgaWYgKGV4dGVuc2lvbikge1xuICAgICAgICAgICAgcmV0dXJuIGZpbGVOYW1lLnNwbGl0KCcuJylbMF0gKyAnLicgKyBleHRlbnNpb247XG4gICAgICAgIH1cbiAgICAgICAgcmV0dXJuIGZpbGVOYW1lO1xuICAgIH1cblxuICAgIHByaXZhdGUgZ2V0TG9jYWxQYXRoKHVybDogc3RyaW5nLCBleHRlbnNpb24/OiBzdHJpbmcsIGZpbGVuYW1lPzogc3RyaW5nLCBoZWFkZXJzPzogYW55KTogUHJvbWlzZTxzdHJpbmc+IHtcbiAgICAgICAgcmV0dXJuIG5ldyBQcm9taXNlKCAocmVzb2x2ZSwgcmVqZWN0KSA9PiB7XG4gICAgICAgICAgICByZXR1cm4gdGhpcy5jYWNoZVNlcnZpY2UuZ2V0TG9jYWxQYXRoKHVybCwgZmFsc2UsIGZhbHNlKVxuICAgICAgICAgICAgICAgICAgICAudGhlbiggZmlsZVBhdGggPT4ge1xuICAgICAgICAgICAgICAgICAgICAgICAgbGV0IGZpbGVOYW1lLCBpLCBqLCBmcm9tRGlyLCBmcm9tRmlsZTtcbiAgICAgICAgICAgICAgICAgICAgICAgIC8vIElzIGl0IHBhcnQgb2YgZG93bmxvYWRlZCBmb2xkZXIuXG4gICAgICAgICAgICAgICAgICAgICAgICBpZiAoZmlsZVBhdGguc3RhcnRzV2l0aCh0aGlzLl9kb3dubG9hZHNGb2xkZXIpKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgcmVzb2x2ZShmaWxlUGF0aCk7XG4gICAgICAgICAgICAgICAgICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8vRXh0cmFjdCBleHRlbnNpb24gZnJvbSBmaWxlIGRvd25sb2FkZWQgZWFybGllci5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBqID0gZmlsZVBhdGgubGFzdEluZGV4T2YoJy4nKTtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBleHRlbnNpb24gPSBmaWxlUGF0aC5zdWJzdHJpbmcoaiArIDEpO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGZpbGVOYW1lID0gZmlsZW5hbWUgfHwgdGhpcy5nZW5lcmF0ZUZpbGVOYW1lKHVybCwgZXh0ZW5zaW9uKTtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBpID0gZmlsZVBhdGgubGFzdEluZGV4T2YoJy8nKTtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBmcm9tRGlyID0gZmlsZVBhdGguc3Vic3RyaW5nKDAsIGkpO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGZyb21GaWxlID0gZmlsZVBhdGguc3Vic3RyaW5nKGkgKyAxKTtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB0aGlzLmNvcmRvdmFGaWxlLmNvcHlGaWxlKGZyb21EaXIsIGZyb21GaWxlLCB0aGlzLl9kb3dubG9hZHNGb2xkZXIsIGZpbGVOYW1lKVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAudGhlbigoKSA9PiB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjb25zdCBuZXdGaWxlUGF0aCA9IHRoaXMuX2Rvd25sb2Fkc0ZvbGRlciArIGZpbGVOYW1lO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdGhpcy5jYWNoZVNlcnZpY2UuYWRkRW50cnkodXJsLCBuZXdGaWxlUGF0aCk7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICByZXNvbHZlKG5ld0ZpbGVQYXRoKTtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfSk7XG4gICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgIH0pLmNhdGNoKCgpID0+IHtcbiAgICAgICAgICAgICAgICAgICAgICAgIHRoaXMuZG93bmxvYWRTZXJ2aWNlLmRvd25sb2FkKHVybCwgZmFsc2UsIHRoaXMuX2Rvd25sb2Fkc0ZvbGRlciwgZmlsZW5hbWUsIHVuZGVmaW5lZCwgaGVhZGVycylcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAudGhlbihmaWxlUGF0aCA9PiB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHRoaXMuY2FjaGVTZXJ2aWNlLmFkZEVudHJ5KHVybCwgZmlsZVBhdGgpO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICByZXNvbHZlKGZpbGVQYXRoKTtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB9LCByZWplY3QpO1xuICAgICAgICAgICAgICAgICAgICB9KTtcbiAgICAgICAgfSk7XG4gICAgfVxufVxuIl19
112
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGV2aWNlLWZpbGUtb3BlbmVyLnNlcnZpY2UuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9tb2JpbGUvY29yZS9zcmMvc2VydmljZXMvZGV2aWNlLWZpbGUtb3BlbmVyLnNlcnZpY2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUUzQyxPQUFPLEVBQUUsSUFBSSxFQUFFLE1BQU0sbUNBQW1DLENBQUM7QUFDekQsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLDBDQUEwQyxDQUFDO0FBRXRFLE9BQU8sRUFBRSxTQUFTLEVBQUUsS0FBSyxFQUFFLElBQUksRUFBRSxNQUFNLFVBQVUsQ0FBQztBQUVsRCxPQUFPLEVBQUUsc0JBQXNCLEVBQUUsTUFBTSw2QkFBNkIsQ0FBQztBQUNyRSxPQUFPLEVBQUUseUJBQXlCLEVBQUUsTUFBTSxnQ0FBZ0MsQ0FBQztBQUMzRSxPQUFPLEVBQUUsaUJBQWlCLEVBQUUsTUFBTSx1QkFBdUIsQ0FBQztBQUUxRCxPQUFPLEVBQUMsR0FBRyxFQUFDLE1BQU0sV0FBVyxDQUFDOzs7Ozs7O0FBTTlCLE1BQU0sT0FBTyx1QkFBdUI7YUFDaEIsaUJBQVksR0FBRyx5QkFBeUIsQUFBNUIsQ0FBNkI7SUFJekQsWUFBb0IsV0FBaUIsRUFDakIsaUJBQTZCLEVBQzdCLFdBQThCLEVBQzlCLFlBQW9DLEVBQ3BDLGVBQTBDO1FBSjFDLGdCQUFXLEdBQVgsV0FBVyxDQUFNO1FBQ2pCLHNCQUFpQixHQUFqQixpQkFBaUIsQ0FBWTtRQUM3QixnQkFBVyxHQUFYLFdBQVcsQ0FBbUI7UUFDOUIsaUJBQVksR0FBWixZQUFZLENBQXdCO1FBQ3BDLG9CQUFlLEdBQWYsZUFBZSxDQUEyQjtJQUU5RCxDQUFDO0lBRUQsK0RBQStEO0lBQ3hELGVBQWUsQ0FBQyxRQUFRO1FBQzNCLE9BQU8sSUFBSSxPQUFPLENBQU8sQ0FBQyxPQUFP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LEVBQUUsUUFBUSxFQUFFLFNBQVMsRUFBRSxPQUFPLENBQUM7cUJBQ3pGLElBQUksQ0FBQyxRQUFRLENBQUMsRUFBRTtvQkFDYixJQUFJLENBQUMsWUFBWSxDQUFDLFFBQVEsQ0FBQyxHQUFHLEVBQUUsUUFBUSxDQUFDLENBQUM7b0JBQzFDLE9BQU8sQ0FBQyxRQUFRLENBQUMsQ0FBQztnQkFDdEIsQ0FBQyxFQUFFLE1BQU0sQ0FBQyxDQUFDO1lBQ25CLENBQUMsQ0FBQyxDQUFDO1FBQ2YsQ0FBQyxDQUFDLENBQUM7SUFDUCxDQUFDO3dIQS9GUSx1QkFBdUI7dUVBQXZCLHVCQUF1QixXQUF2Qix1QkFBdUIsbUJBRFYsTUFBTTs7aUZBQ25CLHVCQUF1QjtjQURuQyxVQUFVO2VBQUMsRUFBRSxVQUFVLEVBQUUsTUFBTSxFQUFFIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgSW5qZWN0YWJsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuXG5pbXBvcnQgeyBGaWxlIH0gZnJvbSAnQGF3ZXNvbWUtY29yZG92YS1wbHVnaW5zL2ZpbGUvbmd4JztcbmltcG9ydCB7IEZpbGVPcGVuZXIgfSBmcm9tICdAYXdlc29tZS1jb3Jkb3ZhLXBsdWdpbnMvZmlsZS1vcGVuZXIvbmd4JztcblxuaW1wb3J0IHsgaXNBbmRyb2lkLCBpc0lvcywgbm9vcCB9IGZyb20gJ0B3bS9jb3JlJztcblxuaW1wb3J0IHsgRGV2aWNlRmlsZUNhY2hlU2VydmljZSB9IGZyb20gJy4vZGV2aWNlLWZpbGUtY2FjaGUuc2VydmljZSc7XG5pbXBvcnQgeyBEZXZpY2VGaWxlRG93bmxvYWRTZXJ2aWNlIH0gZnJvbSAnLi9kZXZpY2UtZmlsZS1kb3dubG9hZC5zZXJ2aWNlJztcbmltcG9ydCB7IERldmljZUZpbGVTZXJ2aWNlIH0gZnJvbSAnLi9kZXZpY2UtZmlsZS5zZXJ2aWNlJztcbmltcG9ydCB7IElEZXZpY2VTdGFydFVwU2VydmljZSB9IGZyb20gJy4vZGV2aWNlLXN0YXJ0LXVwLXNlcnZpY2UnO1xuaW1wb3J0IHtub3d9IGZyb20gXCJsb2Rhc2gtZXNcIjtcblxuZGVjbGFyZSBjb25zdCBjb3Jkb3ZhO1xuZGVjbGFyZSBjb25zdCByZXNvbHZlTG9jYWxGaWxlU3lzdGVtVVJMO1xuXG5ASW5qZWN0YWJsZSh7IHByb3ZpZGVkSW46ICdyb290JyB9KVxuZXhwb3J0IGNsYXNzIERldmljZUZpbGVPcGVuZXJTZXJ2aWNlIGltcGxlbWVudHMgSURldmljZVN0YXJ0VXBTZXJ2aWNlIHtcbiAgICBzdGF0aWMgcmVhZG9ubHkgU0VSVklDRV9OQU1FID0gJ0RldmljZUZpbGVPcGVuZXJTZXJ2aWNlJztcblxuICAgIHByaXZhdGUgX2Rvd25sb2Fkc0ZvbGRlcjtcblxuICAgIGNvbnN0cnVjdG9yKHByaXZhdGUgY29yZG92YUZpbGU6IEZpbGUsXG4gICAgICAgICAgICAgICAgcHJpdmF0ZSBjb3Jkb3ZhRmlsZU9wZW5lcjogRmlsZU9wZW5lcixcbiAgICAgICAgICAgICAgICBwcml2YXRlIGZpbGVTZXJ2aWNlOiBEZXZpY2VGaWxlU2VydmljZSxcbiAgICAgICAgICAgICAgICBwcml2YXRlIGNhY2hlU2VydmljZTogRGV2aWNlRmlsZUNhY2hlU2VydmljZSxcbiAgICAgICAgICAgICAgICBwcml2YXRlIGRvd25sb2FkU2VydmljZTogRGV2aWNlRmlsZURvd25sb2FkU2VydmljZSkge1xuXG4gICAgfVxuXG4gICAgLy8gdGhpcyBtZXRob2QgcmV0dXJucyB0aGUgbWltZSB0eXBlIG9mIGZpbGUgZnJvbSB0aGUgZmlsZVBhdGguXG4gICAgcHVibGljIGdldEZpbGVNaW1lVHlwZShmaWxlUGF0aCk6IFByb21pc2U8YW55PiB7XG4gICAgICAgIHJldHVybiBuZXcgUHJvbWlzZTxhbnk+ICgocmVzb2x2ZSkgPT4ge1xuICAgICAgICAgICAgLy8gUmVhZCB0aGUgZmlsZSBlbnRyeSBmcm9tIHRoZSBmaWxlIFVSTFxuICAgICAgICAgICAgcmVzb2x2ZUxvY2FsRmlsZVN5c3RlbVVSTChmaWxlUGF0aCwgZmlsZUVudHJ5ID0+IHtcbiAgICAgICAgICAgICAgICBmaWxlRW50cnkuZmlsZShtZXRhZGF0YSA9PiB7XG4gICAgICAgICAgICAgICAgICAgIHJlc29sdmUobWV0YWRhdGEudHlwZSk7XG4gICAgICAgICAgICAgICAgfSk7XG4gICAgICAgICAgICB9KTtcbiAgICAgICAgfSk7XG4gICAgfVxuXG4gICAgcHVibGljIG9wZW5SZW1vdGVGaWxlKHVybDogc3RyaW5nLCBleHRlbnNpb246IHN0cmluZywgZmlsZU5hbWU/OiBzdHJpbmcsIGhlYWRlcnM/OiBhbnkpOiBQcm9taXNlPHZvaWQ+IHtcbiAgICAgICAgcmV0dXJuIHRoaXMuZ2V0TG9jYWxQYXRoKHVybCwgZXh0ZW5zaW9uLCBmaWxlTmFtZSwgaGVhZGVycylcbiAgICAgICAgICAgIC50aGVuKGZpbGVQYXRoID0+IHtcbiAgICAgICAgICAgICAgICByZXR1cm4gdGhpcy5nZXRGaWxlTWltZVR5cGUoZmlsZVBhdGgpLnRoZW4odHlwZSA9PiB7XG4gICAgICAgICAgICAgICAgICAgIHJldHVybiB0aGlzLmNvcmRvdmFGaWxlT3BlbmVyLm9wZW4oZmlsZVBhdGgsIHR5cGUpO1xuICAgICAgICAgICAgICAgIH0pO1xuICAgICAgICAgICAgfSk7XG4gICAgfVxuXG4gICAgcHVibGljIHN0YXJ0KCk6IFByb21pc2U8dm9pZD4ge1xuICAgICAgICBsZXQgZG93bmxvYWRzUGFyZW50O1xuICAgICAgICBpZiAoaXNBbmRyb2lkKCkpIHtcbiAgICAgICAgICAgIGRvd25sb2Fkc1BhcmVudCA9IGNvcmRvdmEuZmlsZS5leHRlcm5hbENhY2hlRGlyZWN0b3J5O1xuICAgICAgICB9IGVsc2UgaWYgKGlzSW9zKCkpIHtcbiAgICAgICAgICAgIGRvd25sb2Fkc1BhcmVudCA9IGNvcmRvdmEuZmlsZS5kb2N1bWVudHNEaXJlY3RvcnkgKyAnTm9DbG91ZC8nO1xuICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgZG93bmxvYWRzUGFyZW50ID0gY29yZG92YS5maWxlLmRhdGFEaXJlY3Rvcnk7XG4gICAgICAgIH1cbiAgICAgICAgcmV0dXJuIHRoaXMuY29yZG92YUZpbGUuY3JlYXRlRGlyKGRvd25sb2Fkc1BhcmVudCwgJ2Rvd25sb2FkcycsIGZhbHNlKVxuICAgICAgICAgICAgLmNhdGNoKG5vb3ApXG4gICAgICAgICAgICAudGhlbigoKSA9PiB7XG4gICAgICAgICAgICAgICAgdGhpcy5fZG93bmxvYWRzRm9sZGVyID0gZG93bmxvYWRzUGFyZW50ICsgJ2Rvd25sb2Fkcy8nO1xuICAgICAgICAgICAgfSk7XG4gICAgfVxuXG4gICAgcHVibGljIGdldFNlcnZpY2VOYW1lKCkge1xuICAgICAgICByZXR1cm4gRGV2aWNlRmlsZUNhY2hlU2VydmljZS5TRVJWSUNFX05BTUU7XG4gICAgfVxuXG4gICAgcHJpdmF0ZSBnZW5lcmF0ZUZpbGVOYW1lKHVybDogc3RyaW5nLCBleHRlbnNpb246IHN0cmluZyk6IHN0cmluZyB7XG4gICAgICAgIGxldCBmaWxlTmFtZSA9IHVybC5zcGxpdCgnPycpWzBdO1xuICAgICAgICBmaWxlTmFtZSA9IGZpbGVOYW1lLnNwbGl0KCcvJykucG9wKCk7XG4gICAgICAgIGZpbGVOYW1lID0gdGhpcy5maWxlU2VydmljZS5hcHBlbmRUb0ZpbGVOYW1lKGZpbGVOYW1lLCAnJyArIG5vdygpKTtcbiAgICAgICAgaWYgKGV4dGVuc2lvbikge1xuICAgICAgICAgICAgcmV0dXJuIGZpbGVOYW1lLnNwbGl0KCcuJylbMF0gKyAnLicgKyBleHRlbnNpb247XG4gICAgICAgIH1cbiAgICAgICAgcmV0dXJuIGZpbGVOYW1lO1xuICAgIH1cblxuICAgIHByaXZhdGUgZ2V0TG9jYWxQYXRoKHVybDogc3RyaW5nLCBleHRlbnNpb24/OiBzdHJpbmcsIGZpbGVuYW1lPzogc3RyaW5nLCBoZWFkZXJzPzogYW55KTogUHJvbWlzZTxzdHJpbmc+IHtcbiAgICAgICAgcmV0dXJuIG5ldyBQcm9taXNlKCAocmVzb2x2ZSwgcmVqZWN0KSA9PiB7XG4gICAgICAgICAgICByZXR1cm4gdGhpcy5jYWNoZVNlcnZpY2UuZ2V0TG9jYWxQYXRoKHVybCwgZmFsc2UsIGZhbHNlKVxuICAgICAgICAgICAgICAgICAgICAudGhlbiggZmlsZVBhdGggPT4ge1xuICAgICAgICAgICAgICAgICAgICAgICAgbGV0IGZpbGVOYW1lLCBpLCBqLCBmcm9tRGlyLCBmcm9tRmlsZTtcbiAgICAgICAgICAgICAgICAgICAgICAgIC8vIElzIGl0IHBhcnQgb2YgZG93bmxvYWRlZCBmb2xkZXIuXG4gICAgICAgICAgICAgICAgICAgICAgICBpZiAoZmlsZVBhdGguc3RhcnRzV2l0aCh0aGlzLl9kb3dubG9hZHNGb2xkZXIpKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgcmVzb2x2ZShmaWxlUGF0aCk7XG4gICAgICAgICAgICAgICAgICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8vRXh0cmFjdCBleHRlbnNpb24gZnJvbSBmaWxlIGRvd25sb2FkZWQgZWFybGllci5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBqID0gZmlsZVBhdGgubGFzdEluZGV4T2YoJy4nKTtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBleHRlbnNpb24gPSBmaWxlUGF0aC5zdWJzdHJpbmcoaiArIDEpO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGZpbGVOYW1lID0gZmlsZW5hbWUgfHwgdGhpcy5nZW5lcmF0ZUZpbGVOYW1lKHVybCwgZXh0ZW5zaW9uKTtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBpID0gZmlsZVBhdGgubGFzdEluZGV4T2YoJy8nKTtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBmcm9tRGlyID0gZmlsZVBhdGguc3Vic3RyaW5nKDAsIGkpO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGZyb21GaWxlID0gZmlsZVBhdGguc3Vic3RyaW5nKGkgKyAxKTtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB0aGlzLmNvcmRvdmFGaWxlLmNvcHlGaWxlKGZyb21EaXIsIGZyb21GaWxlLCB0aGlzLl9kb3dubG9hZHNGb2xkZXIsIGZpbGVOYW1lKVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAudGhlbigoKSA9PiB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjb25zdCBuZXdGaWxlUGF0aCA9IHRoaXMuX2Rvd25sb2Fkc0ZvbGRlciArIGZpbGVOYW1lO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdGhpcy5jYWNoZVNlcnZpY2UuYWRkRW50cnkodXJsLCBuZXdGaWxlUGF0aCk7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICByZXNvbHZlKG5ld0ZpbGVQYXRoKTtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfSk7XG4gICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgIH0pLmNhdGNoKCgpID0+IHtcbiAgICAgICAgICAgICAgICAgICAgICAgIHRoaXMuZG93bmxvYWRTZXJ2aWNlLmRvd25sb2FkKHVybCwgZmFsc2UsIHRoaXMuX2Rvd25sb2Fkc0ZvbGRlciwgZmlsZW5hbWUsIHVuZGVmaW5lZCwgaGVhZGVycylcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAudGhlbihmaWxlUGF0aCA9PiB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHRoaXMuY2FjaGVTZXJ2aWNlLmFkZEVudHJ5KHVybCwgZmlsZVBhdGgpO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICByZXNvbHZlKGZpbGVQYXRoKTtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB9LCByZWplY3QpO1xuICAgICAgICAgICAgICAgICAgICB9KTtcbiAgICAgICAgfSk7XG4gICAgfVxufVxuIl19
@@ -81,11 +81,11 @@ export class DeviceFileUploadService {
81
81
  forEach(headers, (k, v) => req.addHeader(k, v));
82
82
  return req.post();
83
83
  }
84
- static { this.ɵfac = function DeviceFileUploadService_Factory(t) { return new (t || DeviceFileUploadService)(i0.ɵɵinject(i1.File)); }; }
84
+ static { this.ɵfac = function DeviceFileUploadService_Factory(__ngFactoryType__) { return new (__ngFactoryType__ || DeviceFileUploadService)(i0.ɵɵinject(i1.File)); }; }
85
85
  static { this.ɵprov = /*@__PURE__*/ i0.ɵɵdefineInjectable({ token: DeviceFileUploadService, factory: DeviceFileUploadService.ɵfac, providedIn: 'root' }); }
86
86
  }
87
87
  (() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassMetadata(DeviceFileUploadService, [{
88
88
  type: Injectable,
89
89
  args: [{ providedIn: 'root' }]
90
90
  }], () => [{ type: i1.File }], null); })();
91
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGV2aWNlLWZpbGUtdXBsb2FkLnNlcnZpY2UuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9tb2JpbGUvY29yZS9zcmMvc2VydmljZXMvZGV2aWNlLWZpbGUtdXBsb2FkLnNlcnZpY2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUUzQyxPQUFPLEVBQUUsSUFBSSxFQUFFLE1BQU0sbUNBQW1DLENBQUM7QUFFekQsT0FBTyxFQUFFLGFBQWEsRUFBRSxNQUFNLFVBQVUsQ0FBQztBQUN6QyxPQUFPLEVBQUMsT0FBTyxFQUFDLE1BQU0sV0FBVyxDQUFDOzs7QUFRbEMsTUFBTSxPQUFPLGFBQWE7SUFNdEIsWUFBcUIsR0FBVyxFQUFVLFdBQWlCO1FBQXRDLFFBQUcsR0FBSCxHQUFHLENBQVE7UUFBVSxnQkFBVyxHQUFYLFdBQVcsQ0FBTTtRQUpuRCxXQUFNLEdBQUcsRUFBRSxDQUFDO1FBQ1osWUFBTyxHQUFHLEVBQUUsQ0FBQztRQUNiLGFBQVEsR0FBRyxFQUFFLENBQUM7SUFJdEIsQ0FBQztJQUVNLE9BQU8sQ0FBQyxJQUFZLEVBQUUsSUFBWSxFQUFFLFFBQWdCO1FBQ3ZELElBQUksQ0FBQyxNQUFNLENBQUMsSUFBSSxDQUFDO1lBQ2IsSUFBSSxFQUFFLElBQUk7WUFDVixJQUFJLEVBQUUsSUFBSTtZQUNWLFFBQVEsRUFBRSxRQUFRO1NBQ3JCLENBQUMsQ0FBQztRQUNILE9BQU8sSUFBSSxDQUFDO0lBQ2hCLENBQUM7SUFFTSxTQUFTLENBQUMsSUFBWSxFQUFFLEtBQWE7UUFDeEMsSUFBSSxDQUFDLFFBQVEsQ0FBQyxJQUFJLENBQUM7WUFDZixJQUFJLEVBQUUsSUFBSTtZQUNWLEtBQUssRUFBRSxLQUFLO1NBQ2YsQ0FBQyxDQUFDO1FBQ0gsT0FBTyxJQUFJLENBQUM7SUFDaEIsQ0FBQztJQUVNLFFBQVEsQ0FBQyxJQUFZLEVBQUUs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QUMvQyxPQUFPLENBQUMsYUFBYSxFQUFFLElBQUksRUFBRSxRQUFRLENBQUMsQ0FBQztRQUM1QyxPQUFPLENBQUMsTUFBTSxFQUFFLENBQUMsQ0FBQyxFQUFFLENBQUMsRUFBRSxFQUFFLENBQUMsR0FBRyxDQUFDLFFBQVEsQ0FBQyxDQUFDLEVBQUUsQ0FBQyxDQUFDLENBQUMsQ0FBQztRQUM5QyxPQUFPLENBQUMsT0FBTyxFQUFFLENBQUMsQ0FBQyxFQUFFLENBQUMsRUFBRSxFQUFFLENBQUMsR0FBRyxDQUFDLFNBQVMsQ0FBQyxDQUFDLEVBQUUsQ0FBQyxDQUFDLENBQUMsQ0FBQztRQUNoRCxPQUFPLEdBQUcsQ0FBQyxJQUFJLEVBQUUsQ0FBQztJQUN0QixDQUFDO3dGQVZRLHVCQUF1Qjt1RUFBdkIsdUJBQXVCLFdBQXZCLHVCQUF1QixtQkFEVixNQUFNOztpRkFDbkIsdUJBQXVCO2NBRG5DLFVBQVU7ZUFBQyxFQUFFLFVBQVUsRUFBRSxNQUFNLEVBQUUiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBJbmplY3RhYmxlIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5cbmltcG9ydCB7IEZpbGUgfSBmcm9tICdAYXdlc29tZS1jb3Jkb3ZhLXBsdWdpbnMvZmlsZS9uZ3gnO1xuXG5pbXBvcnQgeyBjb252ZXJ0VG9CbG9iIH0gZnJvbSAnQHdtL2NvcmUnO1xuaW1wb3J0IHtmb3JFYWNofSBmcm9tIFwibG9kYXNoLWVzXCI7XG5cbmV4cG9ydCBpbnRlcmZhY2UgSVVwbG9hZFJlc3BvbnNlIHtcbiAgICB0ZXh0OiBzdHJpbmc7XG4gICAgcmVzcG9uc2U6IGFueTtcbiAgICBoZWFkZXJzOiAoc3RyaW5nKSA9PiBzdHJpbmc7XG59XG5cbmV4cG9ydCBjbGFzcyBVcGxvYWRSZXF1ZXN0IHtcblxuICAgIHByaXZhdGUgX2ZpbGVzID0gW107XG4gICAgcHJpdmF0ZSBfcGFyYW1zID0gW107XG4gICAgcHJpdmF0ZSBfaGVhZGVycyA9IFtdO1xuXG4gICAgY29uc3RydWN0b3IgKHByaXZhdGUgdXJsOiBzdHJpbmcsIHByaXZhdGUgY29yZG92YUZpbGU6IEZpbGUpIHtcblxuICAgIH1cblxuICAgIHB1YmxpYyBhZGRGaWxlKG5hbWU6IHN0cmluZywgcGF0aDogc3RyaW5nLCBmaWxlbmFtZTogc3RyaW5nKTogVXBsb2FkUmVxdWVzdCB7XG4gICAgICAgIHRoaXMuX2ZpbGVzLnB1c2goe1xuICAgICAgICAgICAgbmFtZTogbmFtZSxcbiAgICAgICAgICAgIHBhdGg6IHBhdGgsXG4gICAgICAgICAgICBmaWxlTmFtZTogZmlsZW5hbWVcbiAgICAgICAgfSk7XG4gICAgICAgIHJldHVybiB0aGlzO1xuICAgIH1cblxuICAgIHB1YmxpYyBhZGRIZWFkZXIobmFtZTogc3RyaW5nLCB2YWx1ZTogc3RyaW5nKTogVXBsb2FkUmVxdWVzdCB7XG4gICAgICAgIHRoaXMuX2hlYWRlcnMucHVzaCh7XG4gICAgICAgICAgICBuYW1lOiBuYW1lLFxuICAgICAgICAgICAgdmFsdWU6IHZhbHVlXG4gICAgICAgIH0pO1xuICAgICAgICByZXR1cm4gdGhpcztcbiAgICB9XG5cbiAgICBwdWJsaWMgYWRkUGFyYW0obmFtZTogc3RyaW5nLCB2YWx1ZTogc3RyaW5nKTogVXBsb2FkUmVxdWVzdCB7XG4gICAgICAgIHRoaXMuX3BhcmFtcy5wdXNoKHtcbiAgICAgICAgICAgIG5hbWU6IG5hbWUsXG4gICAgICAgICAgICB2YWx1ZTogdmFsdWVcbiAgICAgICAgfSk7XG4gICAgICAgIHJldHVybiB0aGlzO1xuICAgIH1cblxuICAgIHB1YmxpYyBwb3N0KCk6IFByb21pc2U8SVVwbG9hZFJlc3BvbnNlPiB7XG4gICAgICAgIGNvbnN0IGZvcm1EYXRhID0gbmV3IEZvcm1EYXRhKCk7XG4gICAgICAgIHRoaXMuX3BhcmFtcy5mb3JFYWNoKCBlID0+IGZvcm1EYXRhLmFwcGVuZChlLm5hbWUsIGUudmFsdWUpKTtcbiAgICAgICAgcmV0dXJuIFByb21pc2UuYWxsKHRoaXMuX2ZpbGVzLm1hcCggZSA9PiB7XG4gICAgICAgICAgICBpZiAoZS5wYXRoKSB7XG4gICAgICAgICAgICAgICAgcmV0dXJuIGNvbnZlcnRUb0Jsb2IoZS5wYXRoKVxuICAgICAgICAgICAgICAgICAgICAudGhlbihyZXN1bHQgPT4ge1xuICAgICAgICAgICAgICAgICAgICAgICAgcmV0dXJuIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBuYW1lOiBlLm5hbWUsXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgZmlsZU5hbWU6IGUuZmlsZU5hbWUsXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgYmxvYjogcmVzdWx0LmJsb2JcbiAgICAgICAgICAgICAgICAgICAgICAgIH07XG4gICAgICAgICAgICAgICAgICAgIH0pO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgcmV0dXJuIGU7XG4gICAgICAgIH0pKS50aGVuKHBhcmFtcyA9PiB7XG4gICAgICAgICAgICBwYXJhbXMuZm9yRWFjaChlID0+IGZvcm1EYXRhLmFwcGVuZChlLm5hbWUsIGUuYmxvYiB8fCBlLnBhdGgsIGUuZmlsZU5hbWUpKTtcbiAgICAgICAgICAgIHJldHVybiBuZXcgUHJvbWlzZTxJVXBsb2FkUmVzcG9uc2U+KChyZXNvbHZlLCByZWplY3QpID0+IHtcbiAgICAgICAgICAgICAgICBjb25zdCByZXF1ZXN0ID0gbmV3IFhNTEh0dHBSZXF1ZXN0KCk7XG4gICAgICAgICAgICAgICAgcmVxdWVzdC5vcGVuKCdQT1NUJywgdGhpcy51cmwpO1xuICAgICAgICAgICAgICAgIHRoaXMuX2hlYWRlcnMuZm9yRWFjaChlID0+IHJlcXVlc3Quc2V0UmVxdWVzdEhlYWRlcihlLm5hbWUsIGUudmFsdWUpKTtcbiAgICAgICAgICAgICAgICByZXF1ZXN0Lm9ubG9hZCA9ICgpID0+IHtcbiAgICAgICAgICAgICAgICAgICAgcmVzb2x2ZSh7XG4gICAgICAgICAgICAgICAgICAgICAgICBoZWFkZXJzOiAobmFtZTogc3RyaW5nKSA9PiByZXF1ZXN0LmdldFJlc3BvbnNlSGVhZGVyKG5hbWUpLFxuICAgICAgICAgICAgICAgICAgICAgICAgcmVzcG9uc2U6IHJlcXVlc3QucmVzcG9uc2UsXG4gICAgICAgICAgICAgICAgICAgICAgICB0ZXh0OiByZXF1ZXN0LnJlc3BvbnNlVGV4dCBhcyBzdHJpbmdcbiAgICAgICAgICAgICAgICAgICAgfSk7XG4gICAgICAgICAgICAgICAgfTtcbiAgICAgICAgICAgICAgICByZXF1ZXN0Lm9uZXJyb3IgPSByZWplY3Q7XG4gICAgICAgICAgICAgICAgcmVxdWVzdC5vbmFib3J0ID0gcmVqZWN0O1xuICAgICAgICAgICAgICAgIHJlcXVlc3Quc2VuZChmb3JtRGF0YSk7XG4gICAgICAgICAgICB9KTtcbiAgICAgICAgfSk7XG4gICAgfVxufVxuXG5ASW5qZWN0YWJsZSh7IHByb3ZpZGVkSW46ICdyb290JyB9KVxuZXhwb3J0IGNsYXNzIERldmljZUZpbGVVcGxvYWRTZXJ2aWNlIHtcbiAgICBzdGF0aWMgcmVhZG9ubHkgU0VSVklDRV9OQU1FID0gJ0RldmljZUZpbGVVcGxvYWRTZXJ2aWNlJztcbiAgICBjb25zdHJ1Y3Rvcihwcml2YXRlIGNvcmRvdmFGaWxlOiBGaWxlKSB7fVxuXG4gICAgcHVibGljIHVwbG9hZCh1cmw6IHN0cmluZywgZmlsZVBhcmFtTmFtZTogc3RyaW5nLCBwYXRoOiBzdHJpbmcsIGZpbGVOYW1lPzogc3RyaW5nLCBwYXJhbXM/OiBhbnksIGhlYWRlcnM/OiBhbnkpOiBQcm9taXNlPElVcGxvYWRSZXNwb25zZT4ge1xuICAgICAgICBjb25zdCByZXEgPSBuZXcgVXBsb2FkUmVxdWVzdCh1cmwsIHRoaXMuY29yZG92YUZpbGUpXG4gICAgICAgICAgICAuYWRkRmlsZShmaWxlUGFyYW1OYW1lLCBwYXRoLCBmaWxlTmFtZSk7XG4gICAgICAgIGZvckVhY2gocGFyYW1zLCAoaywgdikgPT4gcmVxLmFkZFBhcmFtKGssIHYpKTtcbiAgICAgICAgZm9yRWFjaChoZWFkZXJzLCAoaywgdikgPT4gcmVxLmFkZEhlYWRlcihrLCB2KSk7XG4gICAgICAgIHJldHVybiByZXEucG9zdCgpO1xuICAgIH1cblxufVxuIl19
91
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGV2aWNlLWZpbGUtdXBsb2FkLnNlcnZpY2UuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9tb2JpbGUvY29yZS9zcmMvc2VydmljZXMvZGV2aWNlLWZpbGUtdXBsb2FkLnNlcnZpY2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUUzQyxPQUFPLEVBQUUsSUFBSSxFQUFFLE1BQU0sbUNBQW1DLENBQUM7QUFFekQsT0FBTyxFQUFFLGFBQWEsRUFBRSxNQUFNLFVBQVUsQ0FBQztBQUN6QyxPQUFPLEVBQUMsT0FBTyxFQUFDLE1BQU0sV0FBVyxDQUFDOzs7QUFRbEMsTUFBTSxPQUFPLGFBQWE7SUFNdEIsWUFBcUIsR0FBVyxFQUFVLFdBQWlCO1FBQXRDLFFBQUcsR0FBSCxHQUFHLENBQVE7UUFBVSxnQkFBVyxHQUFYLFdBQVcsQ0FBTTtRQUpuRCxXQUFNLEdBQUcsRUFBRSxDQUFDO1FBQ1osWUFBTyxHQUFHLEVBQUUsQ0FBQztRQUNiLGFBQVEsR0FBRyxFQUFFLENBQUM7SUFJdEIsQ0FBQztJQUVNLE9BQU8sQ0FBQyxJQUFZLEVBQUUsSUFBWSxFQUFFLFFBQWdCO1FBQ3ZELElBQUksQ0FBQyxNQUFNLENBQUMsSUFBSSxDQUFDO1lBQ2IsSUFBSSxFQUFFLElBQUk7WUFDVixJQUFJLEVBQUUsSUFBSTtZQUNWLFFBQVEsRUFBRSxRQUFRO1NBQ3JCLENBQUMsQ0FBQztRQUNILE9BQU8sSUFBSSxDQUFDO0lBQ2hCLENBQUM7SUFFTSxTQUFTLENBQUMsSUFBWSxFQUFFLEtBQWE7UUFDeEMsSUFBSSxDQUFDLFFBQVEsQ0FBQyxJQUFJLENBQUM7WUFDZixJQUFJLEVBQUUsSUFBSTtZQUNWLEtBQUssRUFBRSxLQUFLO1NBQ2YsQ0FBQyxDQUFDO1FBQ0gsT0FBTyxJQUFJLENBQUM7SUFDaEIsQ0FBQztJQUVNLFFBQVEsQ0FBQyxJQUFZLEVBQUUs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QUMvQyxPQUFPLENBQUMsYUFBYSxFQUFFLElBQUksRUFBRSxRQUFRLENBQUMsQ0FBQztRQUM1QyxPQUFPLENBQUMsTUFBTSxFQUFFLENBQUMsQ0FBQyxFQUFFLENBQUMsRUFBRSxFQUFFLENBQUMsR0FBRyxDQUFDLFFBQVEsQ0FBQyxDQUFDLEVBQUUsQ0FBQyxDQUFDLENBQUMsQ0FBQztRQUM5QyxPQUFPLENBQUMsT0FBTyxFQUFFLENBQUMsQ0FBQyxFQUFFLENBQUMsRUFBRSxFQUFFLENBQUMsR0FBRyxDQUFDLFNBQVMsQ0FBQyxDQUFDLEVBQUUsQ0FBQyxDQUFDLENBQUMsQ0FBQztRQUNoRCxPQUFPLEdBQUcsQ0FBQyxJQUFJLEVBQUUsQ0FBQztJQUN0QixDQUFDO3dIQVZRLHVCQUF1Qjt1RUFBdkIsdUJBQXVCLFdBQXZCLHVCQUF1QixtQkFEVixNQUFNOztpRkFDbkIsdUJBQXVCO2NBRG5DLFVBQVU7ZUFBQyxFQUFFLFVBQVUsRUFBRSxNQUFNLEVBQUUiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBJbmplY3RhYmxlIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5cbmltcG9ydCB7IEZpbGUgfSBmcm9tICdAYXdlc29tZS1jb3Jkb3ZhLXBsdWdpbnMvZmlsZS9uZ3gnO1xuXG5pbXBvcnQgeyBjb252ZXJ0VG9CbG9iIH0gZnJvbSAnQHdtL2NvcmUnO1xuaW1wb3J0IHtmb3JFYWNofSBmcm9tIFwibG9kYXNoLWVzXCI7XG5cbmV4cG9ydCBpbnRlcmZhY2UgSVVwbG9hZFJlc3BvbnNlIHtcbiAgICB0ZXh0OiBzdHJpbmc7XG4gICAgcmVzcG9uc2U6IGFueTtcbiAgICBoZWFkZXJzOiAoc3RyaW5nKSA9PiBzdHJpbmc7XG59XG5cbmV4cG9ydCBjbGFzcyBVcGxvYWRSZXF1ZXN0IHtcblxuICAgIHByaXZhdGUgX2ZpbGVzID0gW107XG4gICAgcHJpdmF0ZSBfcGFyYW1zID0gW107XG4gICAgcHJpdmF0ZSBfaGVhZGVycyA9IFtdO1xuXG4gICAgY29uc3RydWN0b3IgKHByaXZhdGUgdXJsOiBzdHJpbmcsIHByaXZhdGUgY29yZG92YUZpbGU6IEZpbGUpIHtcblxuICAgIH1cblxuICAgIHB1YmxpYyBhZGRGaWxlKG5hbWU6IHN0cmluZywgcGF0aDogc3RyaW5nLCBmaWxlbmFtZTogc3RyaW5nKTogVXBsb2FkUmVxdWVzdCB7XG4gICAgICAgIHRoaXMuX2ZpbGVzLnB1c2goe1xuICAgICAgICAgICAgbmFtZTogbmFtZSxcbiAgICAgICAgICAgIHBhdGg6IHBhdGgsXG4gICAgICAgICAgICBmaWxlTmFtZTogZmlsZW5hbWVcbiAgICAgICAgfSk7XG4gICAgICAgIHJldHVybiB0aGlzO1xuICAgIH1cblxuICAgIHB1YmxpYyBhZGRIZWFkZXIobmFtZTogc3RyaW5nLCB2YWx1ZTogc3RyaW5nKTogVXBsb2FkUmVxdWVzdCB7XG4gICAgICAgIHRoaXMuX2hlYWRlcnMucHVzaCh7XG4gICAgICAgICAgICBuYW1lOiBuYW1lLFxuICAgICAgICAgICAgdmFsdWU6IHZhbHVlXG4gICAgICAgIH0pO1xuICAgICAgICByZXR1cm4gdGhpcztcbiAgICB9XG5cbiAgICBwdWJsaWMgYWRkUGFyYW0obmFtZTogc3RyaW5nLCB2YWx1ZTogc3RyaW5nKTogVXBsb2FkUmVxdWVzdCB7XG4gICAgICAgIHRoaXMuX3BhcmFtcy5wdXNoKHtcbiAgICAgICAgICAgIG5hbWU6IG5hbWUsXG4gICAgICAgICAgICB2YWx1ZTogdmFsdWVcbiAgICAgICAgfSk7XG4gICAgICAgIHJldHVybiB0aGlzO1xuICAgIH1cblxuICAgIHB1YmxpYyBwb3N0KCk6IFByb21pc2U8SVVwbG9hZFJlc3BvbnNlPiB7XG4gICAgICAgIGNvbnN0IGZvcm1EYXRhID0gbmV3IEZvcm1EYXRhKCk7XG4gICAgICAgIHRoaXMuX3BhcmFtcy5mb3JFYWNoKCBlID0+IGZvcm1EYXRhLmFwcGVuZChlLm5hbWUsIGUudmFsdWUpKTtcbiAgICAgICAgcmV0dXJuIFByb21pc2UuYWxsKHRoaXMuX2ZpbGVzLm1hcCggZSA9PiB7XG4gICAgICAgICAgICBpZiAoZS5wYXRoKSB7XG4gICAgICAgICAgICAgICAgcmV0dXJuIGNvbnZlcnRUb0Jsb2IoZS5wYXRoKVxuICAgICAgICAgICAgICAgICAgICAudGhlbihyZXN1bHQgPT4ge1xuICAgICAgICAgICAgICAgICAgICAgICAgcmV0dXJuIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBuYW1lOiBlLm5hbWUsXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgZmlsZU5hbWU6IGUuZmlsZU5hbWUsXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgYmxvYjogcmVzdWx0LmJsb2JcbiAgICAgICAgICAgICAgICAgICAgICAgIH07XG4gICAgICAgICAgICAgICAgICAgIH0pO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgcmV0dXJuIGU7XG4gICAgICAgIH0pKS50aGVuKHBhcmFtcyA9PiB7XG4gICAgICAgICAgICBwYXJhbXMuZm9yRWFjaChlID0+IGZvcm1EYXRhLmFwcGVuZChlLm5hbWUsIGUuYmxvYiB8fCBlLnBhdGgsIGUuZmlsZU5hbWUpKTtcbiAgICAgICAgICAgIHJldHVybiBuZXcgUHJvbWlzZTxJVXBsb2FkUmVzcG9uc2U+KChyZXNvbHZlLCByZWplY3QpID0+IHtcbiAgICAgICAgICAgICAgICBjb25zdCByZXF1ZXN0ID0gbmV3IFhNTEh0dHBSZXF1ZXN0KCk7XG4gICAgICAgICAgICAgICAgcmVxdWVzdC5vcGVuKCdQT1NUJywgdGhpcy51cmwpO1xuICAgICAgICAgICAgICAgIHRoaXMuX2hlYWRlcnMuZm9yRWFjaChlID0+IHJlcXVlc3Quc2V0UmVxdWVzdEhlYWRlcihlLm5hbWUsIGUudmFsdWUpKTtcbiAgICAgICAgICAgICAgICByZXF1ZXN0Lm9ubG9hZCA9ICgpID0+IHtcbiAgICAgICAgICAgICAgICAgICAgcmVzb2x2ZSh7XG4gICAgICAgICAgICAgICAgICAgICAgICBoZWFkZXJzOiAobmFtZTogc3RyaW5nKSA9PiByZXF1ZXN0LmdldFJlc3BvbnNlSGVhZGVyKG5hbWUpLFxuICAgICAgICAgICAgICAgICAgICAgICAgcmVzcG9uc2U6IHJlcXVlc3QucmVzcG9uc2UsXG4gICAgICAgICAgICAgICAgICAgICAgICB0ZXh0OiByZXF1ZXN0LnJlc3BvbnNlVGV4dCBhcyBzdHJpbmdcbiAgICAgICAgICAgICAgICAgICAgfSk7XG4gICAgICAgICAgICAgICAgfTtcbiAgICAgICAgICAgICAgICByZXF1ZXN0Lm9uZXJyb3IgPSByZWplY3Q7XG4gICAgICAgICAgICAgICAgcmVxdWVzdC5vbmFib3J0ID0gcmVqZWN0O1xuICAgICAgICAgICAgICAgIHJlcXVlc3Quc2VuZChmb3JtRGF0YSk7XG4gICAgICAgICAgICB9KTtcbiAgICAgICAgfSk7XG4gICAgfVxufVxuXG5ASW5qZWN0YWJsZSh7IHByb3ZpZGVkSW46ICdyb290JyB9KVxuZXhwb3J0IGNsYXNzIERldmljZUZpbGVVcGxvYWRTZXJ2aWNlIHtcbiAgICBzdGF0aWMgcmVhZG9ubHkgU0VSVklDRV9OQU1FID0gJ0RldmljZUZpbGVVcGxvYWRTZXJ2aWNlJztcbiAgICBjb25zdHJ1Y3Rvcihwcml2YXRlIGNvcmRvdmFGaWxlOiBGaWxlKSB7fVxuXG4gICAgcHVibGljIHVwbG9hZCh1cmw6IHN0cmluZywgZmlsZVBhcmFtTmFtZTogc3RyaW5nLCBwYXRoOiBzdHJpbmcsIGZpbGVOYW1lPzogc3RyaW5nLCBwYXJhbXM/OiBhbnksIGhlYWRlcnM/OiBhbnkpOiBQcm9taXNlPElVcGxvYWRSZXNwb25zZT4ge1xuICAgICAgICBjb25zdCByZXEgPSBuZXcgVXBsb2FkUmVxdWVzdCh1cmwsIHRoaXMuY29yZG92YUZpbGUpXG4gICAgICAgICAgICAuYWRkRmlsZShmaWxlUGFyYW1OYW1lLCBwYXRoLCBmaWxlTmFtZSk7XG4gICAgICAgIGZvckVhY2gocGFyYW1zLCAoaywgdikgPT4gcmVxLmFkZFBhcmFtKGssIHYpKTtcbiAgICAgICAgZm9yRWFjaChoZWFkZXJzLCAoaywgdikgPT4gcmVxLmFkZEhlYWRlcihrLCB2KSk7XG4gICAgICAgIHJldHVybiByZXEucG9zdCgpO1xuICAgIH1cblxufVxuIl19
@@ -227,11 +227,11 @@ export class DeviceFileService {
227
227
  .then(() => this._uploadDir = appDir + uploadsDirName, () => this.cordovaFile.createDir(appDir, uploadsDirName, true)
228
228
  .then(() => this._uploadDir = appDir + uploadsDirName));
229
229
  }
230
- static { this.ɵfac = function DeviceFileService_Factory(t) { return new (t || DeviceFileService)(i0.ɵɵinject(i1.AppVersion), i0.ɵɵinject(i2.File)); }; }
230
+ static { this.ɵfac = function DeviceFileService_Factory(__ngFactoryType__) { return new (__ngFactoryType__ || DeviceFileService)(i0.ɵɵinject(i1.AppVersion), i0.ɵɵinject(i2.File)); }; }
231
231
  static { this.ɵprov = /*@__PURE__*/ i0.ɵɵdefineInjectable({ token: DeviceFileService, factory: DeviceFileService.ɵfac, providedIn: 'root' }); }
232
232
  }
233
233
  (() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassMetadata(DeviceFileService, [{
234
234
  type: Injectable,
235
235
  args: [{ providedIn: 'root' }]
236
236
  }], () => [{ type: i1.AppVersion }, { type: i2.File }], null); })();
237
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGV2aWNlLWZpbGUuc2VydmljZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL21vYmlsZS9jb3JlL3NyYy9zZXJ2aWNlcy9kZXZpY2UtZmlsZS5zZXJ2aWNlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFFM0MsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLDBDQUEwQyxDQUFDO0FBQ3RFLE9BQU8sRUFBQyxJQUFJLEVBQUMsTUFBTSxtQ0FBbUMsQ0FBQztBQUV2RCxPQUFPLEVBQUUsU0FBUyxFQUFFLElBQUksRUFBRSxNQUFNLFVBQVUsQ0FBQztBQUczQyxPQUFPLEVBQUMsR0FBRyxFQUFDLE1BQU0sV0FBVyxDQUFDOzs7O0FBTTlCLE1BQU0sQ0FBTixJQUFZLFFBS1g7QUFMRCxXQUFZLFFBQVE7SUFDaEIsMkJBQWUsQ0FBQTtJQUNmLGlDQUFxQixDQUFBO0lBQ3JCLDJCQUFlLENBQUE7SUFDZiwyQkFBZSxDQUFBO0FBQ25CLENBQUMsRUFMVyxRQUFRLEtBQVIsUUFBUSxRQUtuQjtBQUVELE1BQU0sZ0JBQWdCLEdBQUcsQ0FBQyxLQUFLLEVBQUUsS0FBSyxFQUFFLEtBQUssRUFBRSxLQUFLLEVBQUUsTUFBTSxFQUFFLE1BQU0sRUFBRSxLQUFLLEVBQUUsTUFBTSxFQUFFLEtBQUssQ0FBQyxFQUN2RixnQkFBZ0IsR0FBRyxDQUFDLEtBQUssRUFBRSxLQUFLLEVBQUUsS0FBSyxFQUFFLEtBQUssRUFBRSxLQUFLLEVBQUUsS0FBSyxFQUFFLEtBQUssRUFBRSxLQUFLLEVBQUUsS0FBSyxFQUFFLEtBQUssRUFBRSxLQUFLLENBQUMsRUFDaEcsZ0JBQWdCLEdBQUcsQ0FBQyxLQUFLLEVBQUUsS0FBSyxFQUFFLE1BQU0sRUFBRSxJQUFJLEVBQUUsS0FBSyxFQUFFLEtBQUssQ0FBQyxDQUFDO0FBRWxFLE1BQU0sb0JBQW9CLEdBQUcsQ0FB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dWxhci9jb3JlJztcblxuaW1wb3J0IHsgQXBwVmVyc2lvbiB9IGZyb20gJ0Bhd2Vzb21lLWNvcmRvdmEtcGx1Z2lucy9hcHAtdmVyc2lvbi9uZ3gnO1xuaW1wb3J0IHtGaWxlfSBmcm9tICdAYXdlc29tZS1jb3Jkb3ZhLXBsdWdpbnMvZmlsZS9uZ3gnO1xuXG5pbXBvcnQgeyBpc0FuZHJvaWQsIG5vb3AgfSBmcm9tICdAd20vY29yZSc7XG5cbmltcG9ydCB7IElEZXZpY2VTdGFydFVwU2VydmljZSB9IGZyb20gJy4vZGV2aWNlLXN0YXJ0LXVwLXNlcnZpY2UnO1xuaW1wb3J0IHtub3d9IGZyb20gXCJsb2Rhc2gtZXNcIjtcblxuZGVjbGFyZSBjb25zdCBjb3Jkb3ZhO1xuZGVjbGFyZSBjb25zdCByZXNvbHZlTG9jYWxGaWxlU3lzdGVtVVJMO1xuZGVjbGFyZSBjb25zdCBGaWxlUmVhZGVyO1xuXG5leHBvcnQgZW51bSBGaWxlVHlwZSB7XG4gICAgQVVESU8gPSAnQVVESU8nLFxuICAgIERPQ1VNRU5UID0gJ0RPQ1VNRU5UJyxcbiAgICBJTUFHRSA9ICdJTUFHRScsXG4gICAgVklERU8gPSAnVklERU8nXG59XG5cbmNvbnN0IElNQUdFX0VYVEVOU0lPTlMgPSBbJ2dpZicsICdqcGcnLCAncG5nJywgJ3N2ZycsICd3ZWJwJywgJ2pwZWcnLCAnamlmJywgJ2pmaWYnLCAnamZpJ10sXG4gICAgVklERU9fRVhURU5TSU9OUyA9IFsnbXA0JywgJ21wZycsICdhdmknLCAnd21hJywgJ21wMicsICczZ3AnLCAnM2cyJywgJ200cCcsICdtNHYnLCAnbXBnJywgJ2ZpdiddLFxuICAgIEFVRElPX0VYVEVOU0lPTlMgPSBbJ21wMycsICdtNHAnLCAnYWlmZicsICdhYScsICdhYXgnLCAnd21hJ107XG5cbmNvbnN0IEFQUF9GT0xERVJfU1RSVUNUVVJFID0gW3tcbiAgICBuYW1lIDogJ3tBUFBfTkFNRX0nLFxuICAgIGNoaWxkcmVuIDogW3tcbiAgICAgICAgbmFtZSA6ICdNZWRpYScsXG4gICAgICAgIGNoaWxkcmVuIDogW1xuICAgICAgICAgICAge1xuICAgICAgICAgICAgICAgIG5hbWUgOiAne0FQUF9OQU1FfSBJbWFnZXMnLFxuICAgICAgICAgICAgICAgIGZpbGVUeXBlIDogRmlsZVR5cGUuSU1BR0VcbiAgICAgICAgICAgIH0sXG4gICAgICAgICAgICB7XG4gICAgICAgICAgICAgICAgbmFtZSA6ICd7QVBQX05BTUV9IEF1ZGlvJyxcbiAgICAgICAgICAgICAgICBmaWxlVHlwZSA6IEZpbGVUeXBlLkFVRElPXG4gICAgICAgICAgICB9LFxuICAgICAgICAgICAge1xuICAgICAgICAgICAgICAgIG5hbWUgOiAne0FQUF9OQU1FfSBWZWRpb3MnLFxuICAgICAgICAgICAgICAgIGZpbGVUeXBlIDogRmlsZVR5cGUuVklERU9cbiAgICAgICAgICAgIH0sXG4gICAgICAgICAgICB7XG4gICAgICAgICAgICAgICAgbmFtZSA6ICd7QVBQX05BTUV9IERvY3VtZW50cycsXG4gICAgICAgICAgICAgICAgZmlsZVR5cGUgOiBGaWxlVHlwZS5ET0NVTUVOVFxuICAgICAgICAgICAgfVxuICAgICAgICBdXG4gICAgfV1cbn1dO1xuXG5ASW5qZWN0YWJsZSh7IHByb3ZpZGVkSW46ICdyb290JyB9KVxuZXhwb3J0IGNsYXNzIERldmljZUZpbGVTZXJ2aWNlIGltcGxlbWVudHMgSURldmljZVN0YXJ0VXBTZXJ2aWNlIHtcbiAgICBzdGF0aWMgcmVhZG9ubHkgU0VSVklDRV9OQU1FID0gJ0RldmljZUZpbGVTZXJ2aWNlJztcblxuICAgIHByaXZhdGUgX2FwcE5hbWU6IHN0cmluZztcbiAgICBwcml2YXRlIF9maWxlVHlwZVZzUGF0aE1hcCA9IHtcbiAgICAgICAgJ3RlbXBvcmFyeScgOiB7fSxcbiAgICAgICAgJ3BlcnNpc3RlbnQnIDoge31cbiAgICB9O1xuICAgIHByaXZhdGUgX3VwbG9hZERpcjogc3RyaW5nO1xuXG4gICAgY29uc3RydWN0b3IocHJpdmF0ZSBjb3Jkb3ZhQXBwVmVyc2lvbjogQXBwVmVyc2lvbiwgcHJpdmF0ZSBjb3Jkb3ZhRmlsZTogRmlsZSkge1xuXG4gICAgfVxuXG4gICAgcHVibGljIGFkZE1lZGlhVG9HYWxsZXJ5KGZpbGVQYXRoOiBzdHJpbmcpOiBQcm9taXNlPHZvaWQ+IHtcbiAgICAgICAgaWYgKGlzQW5kcm9pZCgpICYmIHRoaXMuaXNQZXJzaXN0ZW50VHlwZShmaWxlUGF0aCkpIHtcbiAgICAgICAgICAgIHJldHVybiBuZXcgUHJvbWlzZSgocmVzb2x2ZSwgcmVqZWN0KSA9PiB7XG4gICAgICAgICAgICAgICAgY29yZG92YS5wbHVnaW5zLk1lZGlhU2Nhbm5lclBsdWdpbi5zY2FuRmlsZShmaWxlUGF0aCwgcmVzb2x2ZSwgcmVqZWN0KTtcbiAgICAgICAgICAgIH0pO1xuICAgICAgICB9XG4gICAgICAgIHJldHVybiBQcm9taXNlLnJlc29sdmUoKTtcbiAgICB9XG5cbiAgICBwdWJsaWMgYXBwZW5kVG9GaWxlTmFtZShmaWxlTmFtZTogc3RyaW5nLCBhdHRhY2htZW50Pzogc3RyaW5nKTogc3RyaW5nIHtcbiAgICAgICAgbGV0IHNwbGl0cztcbiAgICAgICAgYXR0YWNobWVudCA9IGF0dGFjaG1lbnQgfHwgJ18nICsgbm93KCk7XG4gICAgICAgIGZpbGVOYW1lID0gZmlsZU5hbWUgfHwgJ25vbmFtZSc7XG4gICAgICAgIHNwbGl0cyA9IGZpbGVOYW1lLnNwbGl0KCcuJyk7XG4gICAgICAgIGlmIChzcGxpdHMubGVuZ3RoID4gMSkge1xuICAgICAgICAgICAgc3BsaXRzW3NwbGl0cy5sZW5ndGggLSAyXSA9IHNwbGl0c1tzcGxpdHMubGVuZ3RoIC0gMl0gKyBhdHRhY2htZW50O1xuICAgICAgICAgICAgcmV0dXJuIHNwbGl0cy5qb2luKCcuJyk7XG4gICAgICAgIH1cbiAgICAgICAgcmV0dXJuIGZpbGVOYW1lICsgYXR0YWNobWVudDtcbiAgICB9XG5cbiAgICBwdWJsaWMgY2xlYXJUZW1wb3JhcnlTdG9yYWdlKCk6IFByb21pc2U8YW55PiB7XG4gICAgICAgIHJldHVybiB0aGlzLmNvcmRvdmFGaWxlLnJlbW92ZVJlY3Vyc2l2ZWx5KHRoaXMuZ2V0VGVtcG9yYXJ5Um9vdFBhdGgoKSArIHRoaXMuX2FwcE5hbWUgKyAnLycsICdNZWRpYScpO1xuICAgIH1cblxuICAgIHB1YmxpYyBjb3B5KHBlcnNpc3RlbnQ6IGJvb2xlYW4sIHNvdXJjZUZpbGVQYXRoOiBzdHJpbmcpIHtcbiAgICAgICAgY29uc3Qgc291cmNlRmlsZW5hbWUgPSBzb3VyY2VGaWxlUGF0aC5zcGxpdCgnLycpLnBvcCgpLFxuICAgICAgICAgICAgZGVzdEZvbGRlciA9IHRoaXMuZmluZEZvbGRlclBhdGgocGVyc2lzdGVudCwgc291cmNlRmlsZW5hbWUpLFxuICAgICAgICAgICAgc291cmNlRm9sZGVyID0gc291cmNlRmlsZVBhdGguc3Vic3RyaW5nKDAsIHNvdXJjZUZpbGVQYXRoLmxhc3RJbmRleE9mKCcvJykpO1xuICAgICAgICByZXR1cm4gdGhpcy5uZXdGaWxlTmFtZShkZXN0Rm9sZGVyLCBzb3VyY2VGaWxlbmFtZSlcbiAgICAgICAgICAgIC50aGVuKCBkZXN0RmlsZW5hbWUgPT4gdGhpcy5jb3Jkb3ZhRmlsZS5jb3B5RmlsZShzb3VyY2VGb2xkZXIsIHNvdXJjZUZpbGVuYW1lLCBkZXN0Rm9sZGVyLCBkZXN0RmlsZW5hbWUpXG4gICAgICAgICAgICAgICAgLnRoZW4oKCkgPT4gZGVzdEZvbGRlciArIGRlc3RGaWxlbmFtZSkpO1xuICAgIH1cblxuICAgIHB1YmxpYyBmaW5kRm9sZGVyUGF0aChwZXJzaXN0ZW50OiBib29sZWFuLCBmaWxlTmFtZTogc3RyaW5nKSB7XG4gICAgICAgIGNvbnN0IHR5cGVNYXAgPSBwZXJzaXN0ZW50ID8gdGhpcy5fZmlsZVR5cGVWc1BhdGhNYXAucGVyc2lzdGVudCA6IHRoaXMuX2ZpbGVUeXBlVnNQYXRoTWFwLnRlbXBvcmFyeSxcbiAgICAgICAgICAgIGZpbGVUeXBlID0gdGhpcy5maW5kRmlsZVR5cGUoZmlsZU5hbWUpO1xuICAgICAgICByZXR1cm4gdHlwZU1hcFtmaWxlVHlwZV0gfHwgdHlwZU1hcFtGaWxlVHlwZS5ET0NVTUVOVF07XG4gICAgfVxuXG4gICAgcHVibGljIGdldFBlcnNpc3RlbnRSb290UGF0aCgpOiBzdHJpbmcge1xuICAgICAgICByZXR1cm4gY29yZG92YS5maWxlLmRhdGFEaXJlY3Rvcnk7XG4gICAgfVxuXG4gICAgcHVibGljIGdldFRlbXBvcmFyeVJvb3RQYXRoKCk6IHN0cmluZyB7XG4gICAgICAgIHJldHVybiBjb3Jkb3ZhLmZpbGUuY2FjaGVEaXJlY3Rvcnk7XG4gICAgfVxuXG4gICAgcHVibGljIGdldFVwbG9hZERpcmVjdG9yeSgpOiBzdHJpbmcge1xuICAgICAgICByZXR1cm4gdGhpcy5fdXBsb2FkRGlyO1xuICAgIH1cblxuICAgIHB1YmxpYyBpc1BlcnNpc3RlbnRUeXBlKGZpbGVQYXRoOiBzdHJpbmcpOiBib29sZWFuIHtcbiAgICAgICAgcmV0dXJuIGZpbGVQYXRoLnN0YXJ0c1dpdGgodGhpcy5nZXRQZXJzaXN0ZW50Um9vdFBhdGgoKSk7XG4gICAgfVxuXG4gICAgcHVibGljIGlzVmFsaWRQYXRoKGZpbGVQYXRoOiBzdHJpbmcpOiBQcm9taXNlPHN0cmluZz4ge1xuICAgICAgICBsZXQgZm9sZGVyLCBmaWxlTmFtZTtcbiAgICAgICAgaWYgKCFmaWxlUGF0aCkge1xuICAgICAgICAgICAgcmV0dXJuIFByb21pc2UucmVqZWN0KCdGaWxlIHBhdGggaXMgcmVxdWlyZWQnKTtcbiAgICAgICAgfVxuICAgICAgICBmb2xkZXIgPSBmaWxlUGF0aC5zdWJzdHJpbmcoMCwgZmlsZVBhdGgubGFzdEluZGV4T2YoJy8nKSArIDEpO1xuICAgICAgICBmaWxlTmFtZSA9IGZpbGVQYXRoLnNwbGl0KCcvJykucG9wKCk7XG4gICAgICAgIHJldHVybiB0aGlzLmNvcmRvdmFGaWxlLmNoZWNrRmlsZShmb2xkZXIsIGZpbGVOYW1lKVxuICAgICAgICAgICAgLnRoZW4oKCkgPT4gZmlsZVBhdGgpO1xuICAgIH1cblxuICAgIHB1YmxpYyBsaXN0RmlsZXMoZm9sZGVyOiBzdHJpbmcsIHNlYXJjaDogc3RyaW5nIHwgUmVnRXhwKTogUHJvbWlzZTxNYXA8c3RyaW5nLCBhbnk+W10+IHtcbiAgICAgICAgcmV0dXJuIG5ldyBQcm9taXNlKChyZXNvbHZlLCByZWplY3QpID0+IHtcbiAgICAgICAgICAgIHJlc29sdmVMb2NhbEZpbGVTeXN0ZW1VUkwoZm9sZGVyLCBkaXJlY3RvcnkgPT4ge1xuICAgICAgICAgICAgICAgIGlmICghZGlyZWN0b3J5LmZpbGVzKSB7XG4gICAgICAgICAgICAgICAgICAgIGRpcmVjdG9yeS5jcmVhdGVSZWFkZXIoKS5yZWFkRW50cmllcyhlbnRyaWVzID0+IHtcbiAgICAgICAgICAgICAgICAgICAgICAgIGlmIChzZWFyY2gpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBlbnRyaWVzID0gZW50cmllcy5maWx0ZXIoZSA9PiBlLm5hbWUubWF0Y2goc2VhcmNoKSk7XG4gICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgICAgICBlbnRyaWVzID0gZW50cmllcy5tYXAoIGUgPT4ge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHJldHVybiB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIG5hbWUgOiBlLm5hbWUsXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGlzRGlyZWN0b3J5IDogZS5pc0RpcmVjdG9yeSxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgcGF0aCA6IGUubmF0aXZlVVJMXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgfTtcbiAgICAgICAgICAgICAgICAgICAgICAgIH0pO1xuICAgICAgICAgICAgICAgICAgICAgICAgcmVzb2x2ZShlbnRyaWVzKTtcbiAgICAgICAgICAgICAgICAgICAgfSwgcmVqZWN0KTtcbiAgICAgICAgICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgICAgICAgICByZXNvbHZlKFtdKTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9LCByZWplY3QpO1xuICAgICAgICB9KTtcbiAgICB9XG5cbiAgICBwdWJsaWMgbmV3RmlsZU5hbWUoZm9sZGVyOiBzdHJpbmcsIGZpbGVOYW1lOiBzdHJpbmcpOiBQcm9taXNlPHN0cmluZz4ge1xuICAgICAgICByZXR1cm4gdGhpcy5jb3Jkb3ZhRmlsZS5jaGVja0ZpbGUoZm9sZGVyLCBmaWxlTmFtZSlcbiAgICAgICAgICAgIC50aGVuKCgpID0+IHtcbiAgICAgICAgICAgICAgICBjb25zdCBleHRJbmRleCA9IGZpbGVOYW1lLmxhc3RJbmRleE9mKCcuJyk7XG4gICAgICAgICAgICAgICAgaWYgKGV4dEluZGV4ID4gMCkge1xuICAgICAgICAgICAgICAgICAgICBmaWxlTmFtZSA9IGZpbGVOYW1lLnN1YnN0cmluZygwLCBleHRJbmRleCkgKyAnXycgKyBub3coKSArICcuJyArIGZpbGVOYW1lLnN1YnN0cmluZyhleHRJbmRleCArIDEpO1xuICAgICAgICAgICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICAgICAgICAgIGZpbGVOYW1lID0gZmlsZU5hbWUgKyAnXycgKyBub3coKTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgcmV0dXJuIHRoaXMubmV3RmlsZU5hbWUoZm9sZGVyLCBmaWxlTmFtZSk7XG4gICAgICAgICAgICB9LCAoKSA9PiBmaWxlTmFtZSk7XG4gICAgfVxuXG4gICAgcHVibGljIHJlbW92ZUZpbGUoZmlsZVBhdGg6IHN0cmluZyk6IFByb21pc2U8YW55PiB7XG4gICAgICAgIGNvbnN0IGkgPSBmaWxlUGF0aC5sYXN0SW5kZXhPZignLycpLFxuICAgICAgICAgICAgZGlyID0gZmlsZVBhdGguc3Vic3RyaW5nKDAsIGkpLFxuICAgICAgICAgICAgZmlsZSA9IGZpbGVQYXRoLnN1YnN0cmluZyhpICsgMSk7XG4gICAgICAgIHJldHVybiB0aGlzLmNvcmRvdmFGaWxlLnJlbW92ZUZpbGUoZGlyLCBmaWxlKTtcbiAgICB9XG5cbiAgICAvKipcbiAgICAgKiByZW1vdmVzIHRoZSBkaXJlY3RvcnkgYXQgdGhlIHNwZWNpZmllZCBsb2NhdGlvbi5cbiAgICAgKlxuICAgICAqIEBwYXJhbSBkaXJQYXRoIGFic29sdXRlIHBhdGggb2YgZGlyZWN0b3J5XG4gICAgICovXG4gICAgcHVibGljIHJlbW92ZURpcihkaXJQYXRoOiBzdHJpbmcpOiBQcm9taXNlPGFueT4ge1xuICAgICAgICBjb25zdCBpID0gZGlyUGF0aC5sYXN0SW5kZXhPZignLycpLFxuICAgICAgICAgICAgcGFyZW50ZGlyID0gZGlyUGF0aC5zdWJzdHJpbmcoMCwgaSArIDEpLFxuICAgICAgICAgICAgZGlyID0gZGlyUGF0aC5zdWJzdHJpbmcoaSArIDEpLFxuICAgICAgICAgICAgbW92ZWREaXIgPSBkaXIgKyBub3coKTtcbiAgICAgICAgcmV0dXJuIHRoaXMuY29yZG92YUZpbGUuY2hlY2tEaXIocGFyZW50ZGlyLCBkaXIpXG4gICAgICAgICAgICAudGhlbigoKSA9PiB7XG4gICAgICAgICAgICAgICAgLyoqXG4gICAgICAgICAgICAgICAgICogSWYgZm9sZGVyIGlzIHJlbW92ZSBkaXJlY3RseSB3aXRob3V0IG1vdmluZywgdGhlbiBJTlZBTElEX01PRElGSUNBVElPTl9FUlIgaXMgdGhyb3duIGluIGFuZHJvaWRcbiAgICAgICAgICAgICAgICAgKiB3aGVuIGEgY29weSBvcGVyYXRpb24gaXMgZG9uZSB3aXRoIHRoZSBzYW1lIGRpcmVjdG9yeSBuYW1lLiBUbyBhdm9pZCB0aGlzLCBkaXJlY3Rvcnkgd2lsbCBiZSBtb3ZlZFxuICAgICAgICAgICAgICAgICAqIGZpcnN0IGFuZCByZW1vdmVkLlxuICAgICAgICAgICAgICAgICAqL1xuICAgICAgICAgICAgICAgIHJldHVybiB0aGlzLmNvcmRvdmFGaWxlLm1vdmVEaXIocGFyZW50ZGlyLCBkaXIsIHBhcmVudGRpciwgbW92ZWREaXIpXG4gICAgICAgICAgICAgICAgICAgIC50aGVuKCgpID0+IHRoaXMuY29yZG92YUZpbGUucmVtb3ZlRGlyKHBhcmVudGRpciwgbW92ZWREaXIpKTtcbiAgICAgICAgICAgIH0pLmNhdGNoKG5vb3ApO1xuICAgIH1cblxuICAgIHB1YmxpYyBzdGFydCgpOiBQcm9taXNlPGFueT4ge1xuICAgICAgICAvKipcbiAgICAgICAgICogRGVmYXVsdCBSRUFEX0NIVU5LX1NJWkUgaXMgMjU2IEtiLiBCdXQgd2l0aCB0aGF0IHNldHRpbmcgcmVhZEpzb24gbWV0aG9kIGlzIGZhaWxpbmcuIFRoaXMgaXMgYW4gaXNzdWVcbiAgICAgICAgICogd2l0aCBjb3Jkb3ZhIGZpbGUgcGx1Z2luLiBTbywgaW5jcmVhc2luZyBpdCB0byA1MTIgS2IgdG8gcmVhZCBsYXJnZSBkYXRhYmFzZSBzY2hlbWEgZmlsZXMgKD4yNTYgS2IpLlxuICAgICAgICAgKi9cbiAgICAgICAgRmlsZVJlYWRlci5SRUFEX0NIVU5LX1NJWkUgPSA1MTIgKiAxMDI0O1xuICAgICAgICByZXR1cm4gUHJvbWlzZS5yZXNvbHZlKCkudGhlbigoKSA9PiB7XG4gICAgICAgICAgICAgICAgcmV0dXJuIHRoaXMuY29yZG92YUFwcFZlcnNpb24uZ2V0QXBwTmFtZSgpO1xuICAgICAgICAgICAgfSkudGhlbihhcHBOYW1lID0+IHtcbiAgICAgICAgICAgICAgICBjb25zdCBwcm9taXNlcyA9IFtdO1xuICAgICAgICAgICAgICAgIHRoaXMuX2FwcE5hbWUgPSBhcHBOYW1lO1xuICAgICAgICAgICAgICAgIHByb21pc2VzLnB1c2godGhpcy5jcmVhdGVGb2xkZXJJZk5vdEV4aXN0cyh0aGlzLmdldFRlbXBvcmFyeVJvb3RQYXRoKCksXG4gICAgICAgICAgICAgICAgICAgIEFQUF9GT0xERVJfU1RSVUNUVVJFLFxuICAgICAgICAgICAgICAgICAgICB0aGlzLl9maWxlVHlwZVZzUGF0aE1hcC50ZW1wb3JhcnkpKTtcbiAgICAgICAgICAgICAgICBwcm9taXNlcy5wdXNoKHRoaXMuY3JlYXRlRm9sZGVySWZOb3RFeGlzdHModGhpcy5nZXRQZXJzaXN0ZW50Um9vdFBhdGgoKSxcbiAgICAgICAgICAgICAgICAgICAgQVBQX0ZPTERFUl9TVFJVQ1RVUkUsXG4gICAgICAgICAgICAgICAgICAgIHRoaXMuX2ZpbGVUeXBlVnNQYXRoTWFwLnBlcnNpc3RlbnQpKTtcbiAgICAgICAgICAgICAgICBwcm9taXNlcy5wdXNoKHRoaXMuc2V0dXBVcGxvYWREaXJlY3RvcnkoKSk7XG4gICAgICAgICAgICAgICAgcmV0dXJuIFByb21pc2UuYWxsKHByb21pc2VzKTtcbiAgICAgICAgICAgIH0pLnRoZW4oKCkgPT4ge1xuICAgICAgICAgICAgICAgIGlmIChpc0FuZHJvaWQoKSkge1xuICAgICAgICAgICAgICAgICAgICAvLyB0aGlzIGlzIG5lY2Vzc2FyeSB0byBwcmV2ZW50IG11bHRpcGxlIGZpbGUgcGVybWlzc2lvbiBwb3B1cC5cbiAgICAgICAgICAgICAgICAgICAgcmV0dXJuIHRoaXMuY29yZG92YUZpbGUucmVhZEFzVGV4dChjb3Jkb3ZhLmZpbGUuZXh0ZXJuYWxSb290RGlyZWN0b3J5LCAncmFuZG9tLWZpbGUtZm9yLXBlcm1pc3Npb24nKS5jYXRjaChub29wKTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9KTtcbiAgICB9XG5cbiAgICBwdWJsaWMgZ2V0U2VydmljZU5hbWUoKSB7XG4gICAgICAgIHJldHVybiBEZXZpY2VGaWxlU2VydmljZS5TRVJWSUNFX05BTUU7XG4gICAgfVxuXG4gICAgcHJpdmF0ZSBjcmVhdGVGb2xkZXJJZk5vdEV4aXN0cyhwYXJlbnQ6IHN0cmluZywgZm9sZGVycywgZmlsZVR5cGVMb2NhdGlvbk1hcCkge1xuICAgICAgICBjb25zdCBjaGlsZFByb21pc2VzID0gW107XG4gICAgICAgIGlmIChmb2xkZXJzKSB7XG4gICAgICAgICAgICBmb2xkZXJzLmZvckVhY2goZm9sZGVyID0+IHtcbiAgICAgICAgICAgICAgICBsZXQgZm9sZGVyUGF0aDtcbiAgICAgICAgICAgICAgICBmb2xkZXIubmFtZSA9IGZvbGRlci5uYW1lLnJlcGxhY2UoJ3tBUFBfTkFNRX0nLCB0aGlzLl9hcHBOYW1lKTtcbiAgICAgICAgICAgICAgICBmb2xkZXJQYXRoID0gcGFyZW50ICsgZm9sZGVyLm5hbWUgKyAnLyc7XG4gICAgICAgICAgICAgICAgaWYgKGZvbGRlci5maWxlVHlwZSAmJiAhZmlsZVR5cGVMb2NhdGlvbk1hcFtmb2xkZXIuZmlsZVR5cGVdKSB7XG4gICAgICAgICAgICAgICAgICAgIGZpbGVUeXBlTG9jYXRpb25NYXBbZm9sZGVyLmZpbGVUeXBlXSA9IGZvbGRlclBhdGg7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIGNvbnN0IHAgPSB0aGlzLmNvcmRvdmFGaWxlLmNyZWF0ZURpcihwYXJlbnQsIGZvbGRlci5uYW1lLCBmYWxzZSlcbiAgICAgICAgICAgICAgICAgICAgLnRoZW4oKCkgPT4gdGhpcy5jcmVhdGVGb2xkZXJJZk5vdEV4aXN0cyhmb2xkZXJQYXRoLCBmb2xkZXIuY2hpbGRyZW4sIGZpbGVUeXBlTG9jYXRpb25NYXApLFxuICAgICAgICAgICAgICAgICAgICAgICAgKCkgPT4gdGhpcy5jcmVhdGVGb2xkZXJJZk5vdEV4aXN0cyhmb2xkZXJQYXRoLCBmb2xkZXIuY2hpbGRyZW4sIGZpbGVUeXBlTG9jYXRpb25NYXApKTtcbiAgICAgICAgICAgICAgICBjaGlsZFByb21pc2VzLnB1c2gocCk7XG4gICAgICAgICAgICB9KTtcbiAgICAgICAgfVxuICAgICAgICBpZiAoY2hpbGRQcm9taXNlcy5sZW5ndGggPiAwKSB7XG4gICAgICAgICAgICByZXR1cm4gUHJvbWlzZS5hbGwoY2hpbGRQcm9taXNlcyk7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBwcml2YXRlIGZpbmRGaWxlVHlwZShmaWxlTmFtZSkge1xuICAgICAgICBsZXQgZXh0ZW5zaW9uO1xuICAgICAgICBpZiAoZmlsZU5hbWUuaW5kZXhPZignLicpID4gMCkge1xuICAgICAgICAgICAgZXh0ZW5zaW9uID0gZmlsZU5hbWUuc3BsaXQoJy4nKS5wb3AoKS50b0xvd2VyQ2FzZSgpO1xuICAgICAgICAgICAgaWYgKElNQUdFX0VYVEVOU0lPTlMuc29tZShhID0+IGEgPT09IGV4dGVuc2lvbikpIHtcbiAgICAgICAgICAgICAgICByZXR1cm4gRmlsZVR5cGUuSU1BR0U7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICBpZiAoVklERU9fRVhURU5TSU9OUy5zb21lKGEgPT4gYSA9PT0gZXh0ZW5zaW9uKSkge1xuICAgICAgICAgICAgICAgIHJldHVybiBGaWxlVHlwZS5WSURFTztcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIGlmIChBVURJT19FWFRFTlNJT05TLnNvbWUoYSA9PiBhID09PSBleHRlbnNpb24pKSB7XG4gICAgICAgICAgICAgICAgcmV0dXJuIEZpbGVUeXBlLkFVRElPO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICAgIHJldHVybiBGaWxlVHlwZS5ET0NVTUVOVDtcbiAgICB9XG5cbiAgICBwcml2YXRlIHNldHVwVXBsb2FkRGlyZWN0b3J5KCkge1xuICAgICAgICBjb25zdCB1cGxvYWRzRGlyTmFtZSA9ICd1cGxvYWRzJyxcbiAgICAgICAgICAgIGFwcERpciA9IGNvcmRvdmEuZmlsZS5kYXRhRGlyZWN0b3J5O1xuICAgICAgICByZXR1cm4gdGhpcy5jb3Jkb3ZhRmlsZS5jaGVja0RpcihhcHBEaXIsIHVwbG9hZHNEaXJOYW1lKVxuICAgICAgICAgICAgLnRoZW4oKCkgPT4gdGhpcy5fdXBsb2FkRGlyID0gYXBwRGlyICsgdXBsb2Fkc0Rpck5hbWUsXG4gICAgICAgICAgICAgICAgKCkgPT4gdGhpcy5jb3Jkb3ZhRmlsZS5jcmVhdGVEaXIoYXBwRGlyLCB1cGxvYWRzRGlyTmFtZSwgdHJ1ZSlcbiAgICAgICAgICAgICAgICAgICAgLnRoZW4oKCkgPT4gdGhpcy5fdXBsb2FkRGlyID0gYXBwRGlyICsgdXBsb2Fkc0Rpck5hbWUpKTtcbiAgICB9XG59XG4iXX0=
237
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGV2aWNlLWZpbGUuc2VydmljZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL21vYmlsZS9jb3JlL3NyYy9zZXJ2aWNlcy9kZXZpY2UtZmlsZS5zZXJ2aWNlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFFM0MsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLDBDQUEwQyxDQUFDO0FBQ3RFLE9BQU8sRUFBQyxJQUFJLEVBQUMsTUFBTSxtQ0FBbUMsQ0FBQztBQUV2RCxPQUFPLEVBQUUsU0FBUyxFQUFFLElBQUksRUFBRSxNQUFNLFVBQVUsQ0FBQztBQUczQyxPQUFPLEVBQUMsR0FBRyxFQUFDLE1BQU0sV0FBVyxDQUFDOzs7O0FBTTlCLE1BQU0sQ0FBTixJQUFZLFFBS1g7QUFMRCxXQUFZLFFBQVE7SUFDaEIsMkJBQWUsQ0FBQTtJQUNmLGlDQUFxQixDQUFBO0lBQ3JCLDJCQUFlLENBQUE7SUFDZiwyQkFBZSxDQUFBO0FBQ25CLENBQUMsRUFMVyxRQUFRLEtBQVIsUUFBUSxRQUtuQjtBQUVELE1BQU0sZ0JBQWdCLEdBQUcsQ0FBQyxLQUFLLEVBQUUsS0FBSyxFQUFFLEtBQUssRUFBRSxLQUFLLEVBQUUsTUFBTSxFQUFFLE1BQU0sRUFBRSxLQUFLLEVBQUUsTUFBTSxFQUFFLEtBQUssQ0FBQyxFQUN2RixnQkFBZ0IsR0FBRyxDQUFDLEtBQUssRUFBRSxLQUFLLEVBQUUsS0FBSyxFQUFFLEtBQUssRUFBRSxLQUFLLEVBQUUsS0FBSyxFQUFFLEtBQUssRUFBRSxLQUFLLEVBQUUsS0FBSyxFQUFFLEtBQUssRUFBRSxLQUFLLENBQUMsRUFDaEcsZ0JBQWdCLEdBQUcsQ0FBQyxLQUFLLEVBQUUsS0FBSyxFQUFFLE1BQU0sRUFBRSxJQUFJLEVBQUUsS0FBSyxFQUFFLEtBQUssQ0FBQyxDQUFDO0FBRWxFLE1BQU0sb0JBQW9CLEdBQUcsQ0FB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dWxhci9jb3JlJztcblxuaW1wb3J0IHsgQXBwVmVyc2lvbiB9IGZyb20gJ0Bhd2Vzb21lLWNvcmRvdmEtcGx1Z2lucy9hcHAtdmVyc2lvbi9uZ3gnO1xuaW1wb3J0IHtGaWxlfSBmcm9tICdAYXdlc29tZS1jb3Jkb3ZhLXBsdWdpbnMvZmlsZS9uZ3gnO1xuXG5pbXBvcnQgeyBpc0FuZHJvaWQsIG5vb3AgfSBmcm9tICdAd20vY29yZSc7XG5cbmltcG9ydCB7IElEZXZpY2VTdGFydFVwU2VydmljZSB9IGZyb20gJy4vZGV2aWNlLXN0YXJ0LXVwLXNlcnZpY2UnO1xuaW1wb3J0IHtub3d9IGZyb20gXCJsb2Rhc2gtZXNcIjtcblxuZGVjbGFyZSBjb25zdCBjb3Jkb3ZhO1xuZGVjbGFyZSBjb25zdCByZXNvbHZlTG9jYWxGaWxlU3lzdGVtVVJMO1xuZGVjbGFyZSBjb25zdCBGaWxlUmVhZGVyO1xuXG5leHBvcnQgZW51bSBGaWxlVHlwZSB7XG4gICAgQVVESU8gPSAnQVVESU8nLFxuICAgIERPQ1VNRU5UID0gJ0RPQ1VNRU5UJyxcbiAgICBJTUFHRSA9ICdJTUFHRScsXG4gICAgVklERU8gPSAnVklERU8nXG59XG5cbmNvbnN0IElNQUdFX0VYVEVOU0lPTlMgPSBbJ2dpZicsICdqcGcnLCAncG5nJywgJ3N2ZycsICd3ZWJwJywgJ2pwZWcnLCAnamlmJywgJ2pmaWYnLCAnamZpJ10sXG4gICAgVklERU9fRVhURU5TSU9OUyA9IFsnbXA0JywgJ21wZycsICdhdmknLCAnd21hJywgJ21wMicsICczZ3AnLCAnM2cyJywgJ200cCcsICdtNHYnLCAnbXBnJywgJ2ZpdiddLFxuICAgIEFVRElPX0VYVEVOU0lPTlMgPSBbJ21wMycsICdtNHAnLCAnYWlmZicsICdhYScsICdhYXgnLCAnd21hJ107XG5cbmNvbnN0IEFQUF9GT0xERVJfU1RSVUNUVVJFID0gW3tcbiAgICBuYW1lIDogJ3tBUFBfTkFNRX0nLFxuICAgIGNoaWxkcmVuIDogW3tcbiAgICAgICAgbmFtZSA6ICdNZWRpYScsXG4gICAgICAgIGNoaWxkcmVuIDogW1xuICAgICAgICAgICAge1xuICAgICAgICAgICAgICAgIG5hbWUgOiAne0FQUF9OQU1FfSBJbWFnZXMnLFxuICAgICAgICAgICAgICAgIGZpbGVUeXBlIDogRmlsZVR5cGUuSU1BR0VcbiAgICAgICAgICAgIH0sXG4gICAgICAgICAgICB7XG4gICAgICAgICAgICAgICAgbmFtZSA6ICd7QVBQX05BTUV9IEF1ZGlvJyxcbiAgICAgICAgICAgICAgICBmaWxlVHlwZSA6IEZpbGVUeXBlLkFVRElPXG4gICAgICAgICAgICB9LFxuICAgICAgICAgICAge1xuICAgICAgICAgICAgICAgIG5hbWUgOiAne0FQUF9OQU1FfSBWZWRpb3MnLFxuICAgICAgICAgICAgICAgIGZpbGVUeXBlIDogRmlsZVR5cGUuVklERU9cbiAgICAgICAgICAgIH0sXG4gICAgICAgICAgICB7XG4gICAgICAgICAgICAgICAgbmFtZSA6ICd7QVBQX05BTUV9IERvY3VtZW50cycsXG4gICAgICAgICAgICAgICAgZmlsZVR5cGUgOiBGaWxlVHlwZS5ET0NVTUVOVFxuICAgICAgICAgICAgfVxuICAgICAgICBdXG4gICAgfV1cbn1dO1xuXG5ASW5qZWN0YWJsZSh7IHByb3ZpZGVkSW46ICdyb290JyB9KVxuZXhwb3J0IGNsYXNzIERldmljZUZpbGVTZXJ2aWNlIGltcGxlbWVudHMgSURldmljZVN0YXJ0VXBTZXJ2aWNlIHtcbiAgICBzdGF0aWMgcmVhZG9ubHkgU0VSVklDRV9OQU1FID0gJ0RldmljZUZpbGVTZXJ2aWNlJztcblxuICAgIHByaXZhdGUgX2FwcE5hbWU6IHN0cmluZztcbiAgICBwcml2YXRlIF9maWxlVHlwZVZzUGF0aE1hcCA9IHtcbiAgICAgICAgJ3RlbXBvcmFyeScgOiB7fSxcbiAgICAgICAgJ3BlcnNpc3RlbnQnIDoge31cbiAgICB9O1xuICAgIHByaXZhdGUgX3VwbG9hZERpcjogc3RyaW5nO1xuXG4gICAgY29uc3RydWN0b3IocHJpdmF0ZSBjb3Jkb3ZhQXBwVmVyc2lvbjogQXBwVmVyc2lvbiwgcHJpdmF0ZSBjb3Jkb3ZhRmlsZTogRmlsZSkge1xuXG4gICAgfVxuXG4gICAgcHVibGljIGFkZE1lZGlhVG9HYWxsZXJ5KGZpbGVQYXRoOiBzdHJpbmcpOiBQcm9taXNlPHZvaWQ+IHtcbiAgICAgICAgaWYgKGlzQW5kcm9pZCgpICYmIHRoaXMuaXNQZXJzaXN0ZW50VHlwZShmaWxlUGF0aCkpIHtcbiAgICAgICAgICAgIHJldHVybiBuZXcgUHJvbWlzZSgocmVzb2x2ZSwgcmVqZWN0KSA9PiB7XG4gICAgICAgICAgICAgICAgY29yZG92YS5wbHVnaW5zLk1lZGlhU2Nhbm5lclBsdWdpbi5zY2FuRmlsZShmaWxlUGF0aCwgcmVzb2x2ZSwgcmVqZWN0KTtcbiAgICAgICAgICAgIH0pO1xuICAgICAgICB9XG4gICAgICAgIHJldHVybiBQcm9taXNlLnJlc29sdmUoKTtcbiAgICB9XG5cbiAgICBwdWJsaWMgYXBwZW5kVG9GaWxlTmFtZShmaWxlTmFtZTogc3RyaW5nLCBhdHRhY2htZW50Pzogc3RyaW5nKTogc3RyaW5nIHtcbiAgICAgICAgbGV0IHNwbGl0cztcbiAgICAgICAgYXR0YWNobWVudCA9IGF0dGFjaG1lbnQgfHwgJ18nICsgbm93KCk7XG4gICAgICAgIGZpbGVOYW1lID0gZmlsZU5hbWUgfHwgJ25vbmFtZSc7XG4gICAgICAgIHNwbGl0cyA9IGZpbGVOYW1lLnNwbGl0KCcuJyk7XG4gICAgICAgIGlmIChzcGxpdHMubGVuZ3RoID4gMSkge1xuICAgICAgICAgICAgc3BsaXRzW3NwbGl0cy5sZW5ndGggLSAyXSA9IHNwbGl0c1tzcGxpdHMubGVuZ3RoIC0gMl0gKyBhdHRhY2htZW50O1xuICAgICAgICAgICAgcmV0dXJuIHNwbGl0cy5qb2luKCcuJyk7XG4gICAgICAgIH1cbiAgICAgICAgcmV0dXJuIGZpbGVOYW1lICsgYXR0YWNobWVudDtcbiAgICB9XG5cbiAgICBwdWJsaWMgY2xlYXJUZW1wb3JhcnlTdG9yYWdlKCk6IFByb21pc2U8YW55PiB7XG4gICAgICAgIHJldHVybiB0aGlzLmNvcmRvdmFGaWxlLnJlbW92ZVJlY3Vyc2l2ZWx5KHRoaXMuZ2V0VGVtcG9yYXJ5Um9vdFBhdGgoKSArIHRoaXMuX2FwcE5hbWUgKyAnLycsICdNZWRpYScpO1xuICAgIH1cblxuICAgIHB1YmxpYyBjb3B5KHBlcnNpc3RlbnQ6IGJvb2xlYW4sIHNvdXJjZUZpbGVQYXRoOiBzdHJpbmcpIHtcbiAgICAgICAgY29uc3Qgc291cmNlRmlsZW5hbWUgPSBzb3VyY2VGaWxlUGF0aC5zcGxpdCgnLycpLnBvcCgpLFxuICAgICAgICAgICAgZGVzdEZvbGRlciA9IHRoaXMuZmluZEZvbGRlclBhdGgocGVyc2lzdGVudCwgc291cmNlRmlsZW5hbWUpLFxuICAgICAgICAgICAgc291cmNlRm9sZGVyID0gc291cmNlRmlsZVBhdGguc3Vic3RyaW5nKDAsIHNvdXJjZUZpbGVQYXRoLmxhc3RJbmRleE9mKCcvJykpO1xuICAgICAgICByZXR1cm4gdGhpcy5uZXdGaWxlTmFtZShkZXN0Rm9sZGVyLCBzb3VyY2VGaWxlbmFtZSlcbiAgICAgICAgICAgIC50aGVuKCBkZXN0RmlsZW5hbWUgPT4gdGhpcy5jb3Jkb3ZhRmlsZS5jb3B5RmlsZShzb3VyY2VGb2xkZXIsIHNvdXJjZUZpbGVuYW1lLCBkZXN0Rm9sZGVyLCBkZXN0RmlsZW5hbWUpXG4gICAgICAgICAgICAgICAgLnRoZW4oKCkgPT4gZGVzdEZvbGRlciArIGRlc3RGaWxlbmFtZSkpO1xuICAgIH1cblxuICAgIHB1YmxpYyBmaW5kRm9sZGVyUGF0aChwZXJzaXN0ZW50OiBib29sZWFuLCBmaWxlTmFtZTogc3RyaW5nKSB7XG4gICAgICAgIGNvbnN0IHR5cGVNYXAgPSBwZXJzaXN0ZW50ID8gdGhpcy5fZmlsZVR5cGVWc1BhdGhNYXAucGVyc2lzdGVudCA6IHRoaXMuX2ZpbGVUeXBlVnNQYXRoTWFwLnRlbXBvcmFyeSxcbiAgICAgICAgICAgIGZpbGVUeXBlID0gdGhpcy5maW5kRmlsZVR5cGUoZmlsZU5hbWUpO1xuICAgICAgICByZXR1cm4gdHlwZU1hcFtmaWxlVHlwZV0gfHwgdHlwZU1hcFtGaWxlVHlwZS5ET0NVTUVOVF07XG4gICAgfVxuXG4gICAgcHVibGljIGdldFBlcnNpc3RlbnRSb290UGF0aCgpOiBzdHJpbmcge1xuICAgICAgICByZXR1cm4gY29yZG92YS5maWxlLmRhdGFEaXJlY3Rvcnk7XG4gICAgfVxuXG4gICAgcHVibGljIGdldFRlbXBvcmFyeVJvb3RQYXRoKCk6IHN0cmluZyB7XG4gICAgICAgIHJldHVybiBjb3Jkb3ZhLmZpbGUuY2FjaGVEaXJlY3Rvcnk7XG4gICAgfVxuXG4gICAgcHVibGljIGdldFVwbG9hZERpcmVjdG9yeSgpOiBzdHJpbmcge1xuICAgICAgICByZXR1cm4gdGhpcy5fdXBsb2FkRGlyO1xuICAgIH1cblxuICAgIHB1YmxpYyBpc1BlcnNpc3RlbnRUeXBlKGZpbGVQYXRoOiBzdHJpbmcpOiBib29sZWFuIHtcbiAgICAgICAgcmV0dXJuIGZpbGVQYXRoLnN0YXJ0c1dpdGgodGhpcy5nZXRQZXJzaXN0ZW50Um9vdFBhdGgoKSk7XG4gICAgfVxuXG4gICAgcHVibGljIGlzVmFsaWRQYXRoKGZpbGVQYXRoOiBzdHJpbmcpOiBQcm9taXNlPHN0cmluZz4ge1xuICAgICAgICBsZXQgZm9sZGVyLCBmaWxlTmFtZTtcbiAgICAgICAgaWYgKCFmaWxlUGF0aCkge1xuICAgICAgICAgICAgcmV0dXJuIFByb21pc2UucmVqZWN0KCdGaWxlIHBhdGggaXMgcmVxdWlyZWQnKTtcbiAgICAgICAgfVxuICAgICAgICBmb2xkZXIgPSBmaWxlUGF0aC5zdWJzdHJpbmcoMCwgZmlsZVBhdGgubGFzdEluZGV4T2YoJy8nKSArIDEpO1xuICAgICAgICBmaWxlTmFtZSA9IGZpbGVQYXRoLnNwbGl0KCcvJykucG9wKCk7XG4gICAgICAgIHJldHVybiB0aGlzLmNvcmRvdmFGaWxlLmNoZWNrRmlsZShmb2xkZXIsIGZpbGVOYW1lKVxuICAgICAgICAgICAgLnRoZW4oKCkgPT4gZmlsZVBhdGgpO1xuICAgIH1cblxuICAgIHB1YmxpYyBsaXN0RmlsZXMoZm9sZGVyOiBzdHJpbmcsIHNlYXJjaDogc3RyaW5nIHwgUmVnRXhwKTogUHJvbWlzZTxNYXA8c3RyaW5nLCBhbnk+W10+IHtcbiAgICAgICAgcmV0dXJuIG5ldyBQcm9taXNlKChyZXNvbHZlLCByZWplY3QpID0+IHtcbiAgICAgICAgICAgIHJlc29sdmVMb2NhbEZpbGVTeXN0ZW1VUkwoZm9sZGVyLCBkaXJlY3RvcnkgPT4ge1xuICAgICAgICAgICAgICAgIGlmICghZGlyZWN0b3J5LmZpbGVzKSB7XG4gICAgICAgICAgICAgICAgICAgIGRpcmVjdG9yeS5jcmVhdGVSZWFkZXIoKS5yZWFkRW50cmllcyhlbnRyaWVzID0+IHtcbiAgICAgICAgICAgICAgICAgICAgICAgIGlmIChzZWFyY2gpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBlbnRyaWVzID0gZW50cmllcy5maWx0ZXIoZSA9PiBlLm5hbWUubWF0Y2goc2VhcmNoKSk7XG4gICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgICAgICBlbnRyaWVzID0gZW50cmllcy5tYXAoIGUgPT4ge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHJldHVybiB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIG5hbWUgOiBlLm5hbWUsXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGlzRGlyZWN0b3J5IDogZS5pc0RpcmVjdG9yeSxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgcGF0aCA6IGUubmF0aXZlVVJMXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgfTtcbiAgICAgICAgICAgICAgICAgICAgICAgIH0pO1xuICAgICAgICAgICAgICAgICAgICAgICAgcmVzb2x2ZShlbnRyaWVzKTtcbiAgICAgICAgICAgICAgICAgICAgfSwgcmVqZWN0KTtcbiAgICAgICAgICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgICAgICAgICByZXNvbHZlKFtdKTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9LCByZWplY3QpO1xuICAgICAgICB9KTtcbiAgICB9XG5cbiAgICBwdWJsaWMgbmV3RmlsZU5hbWUoZm9sZGVyOiBzdHJpbmcsIGZpbGVOYW1lOiBzdHJpbmcpOiBQcm9taXNlPHN0cmluZz4ge1xuICAgICAgICByZXR1cm4gdGhpcy5jb3Jkb3ZhRmlsZS5jaGVja0ZpbGUoZm9sZGVyLCBmaWxlTmFtZSlcbiAgICAgICAgICAgIC50aGVuKCgpID0+IHtcbiAgICAgICAgICAgICAgICBjb25zdCBleHRJbmRleCA9IGZpbGVOYW1lLmxhc3RJbmRleE9mKCcuJyk7XG4gICAgICAgICAgICAgICAgaWYgKGV4dEluZGV4ID4gMCkge1xuICAgICAgICAgICAgICAgICAgICBmaWxlTmFtZSA9IGZpbGVOYW1lLnN1YnN0cmluZygwLCBleHRJbmRleCkgKyAnXycgKyBub3coKSArICcuJyArIGZpbGVOYW1lLnN1YnN0cmluZyhleHRJbmRleCArIDEpO1xuICAgICAgICAgICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICAgICAgICAgIGZpbGVOYW1lID0gZmlsZU5hbWUgKyAnXycgKyBub3coKTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgcmV0dXJuIHRoaXMubmV3RmlsZU5hbWUoZm9sZGVyLCBmaWxlTmFtZSk7XG4gICAgICAgICAgICB9LCAoKSA9PiBmaWxlTmFtZSk7XG4gICAgfVxuXG4gICAgcHVibGljIHJlbW92ZUZpbGUoZmlsZVBhdGg6IHN0cmluZyk6IFByb21pc2U8YW55PiB7XG4gICAgICAgIGNvbnN0IGkgPSBmaWxlUGF0aC5sYXN0SW5kZXhPZignLycpLFxuICAgICAgICAgICAgZGlyID0gZmlsZVBhdGguc3Vic3RyaW5nKDAsIGkpLFxuICAgICAgICAgICAgZmlsZSA9IGZpbGVQYXRoLnN1YnN0cmluZyhpICsgMSk7XG4gICAgICAgIHJldHVybiB0aGlzLmNvcmRvdmFGaWxlLnJlbW92ZUZpbGUoZGlyLCBmaWxlKTtcbiAgICB9XG5cbiAgICAvKipcbiAgICAgKiByZW1vdmVzIHRoZSBkaXJlY3RvcnkgYXQgdGhlIHNwZWNpZmllZCBsb2NhdGlvbi5cbiAgICAgKlxuICAgICAqIEBwYXJhbSBkaXJQYXRoIGFic29sdXRlIHBhdGggb2YgZGlyZWN0b3J5XG4gICAgICovXG4gICAgcHVibGljIHJlbW92ZURpcihkaXJQYXRoOiBzdHJpbmcpOiBQcm9taXNlPGFueT4ge1xuICAgICAgICBjb25zdCBpID0gZGlyUGF0aC5sYXN0SW5kZXhPZignLycpLFxuICAgICAgICAgICAgcGFyZW50ZGlyID0gZGlyUGF0aC5zdWJzdHJpbmcoMCwgaSArIDEpLFxuICAgICAgICAgICAgZGlyID0gZGlyUGF0aC5zdWJzdHJpbmcoaSArIDEpLFxuICAgICAgICAgICAgbW92ZWREaXIgPSBkaXIgKyBub3coKTtcbiAgICAgICAgcmV0dXJuIHRoaXMuY29yZG92YUZpbGUuY2hlY2tEaXIocGFyZW50ZGlyLCBkaXIpXG4gICAgICAgICAgICAudGhlbigoKSA9PiB7XG4gICAgICAgICAgICAgICAgLyoqXG4gICAgICAgICAgICAgICAgICogSWYgZm9sZGVyIGlzIHJlbW92ZSBkaXJlY3RseSB3aXRob3V0IG1vdmluZywgdGhlbiBJTlZBTElEX01PRElGSUNBVElPTl9FUlIgaXMgdGhyb3duIGluIGFuZHJvaWRcbiAgICAgICAgICAgICAgICAgKiB3aGVuIGEgY29weSBvcGVyYXRpb24gaXMgZG9uZSB3aXRoIHRoZSBzYW1lIGRpcmVjdG9yeSBuYW1lLiBUbyBhdm9pZCB0aGlzLCBkaXJlY3Rvcnkgd2lsbCBiZSBtb3ZlZFxuICAgICAgICAgICAgICAgICAqIGZpcnN0IGFuZCByZW1vdmVkLlxuICAgICAgICAgICAgICAgICAqL1xuICAgICAgICAgICAgICAgIHJldHVybiB0aGlzLmNvcmRvdmFGaWxlLm1vdmVEaXIocGFyZW50ZGlyLCBkaXIsIHBhcmVudGRpciwgbW92ZWREaXIpXG4gICAgICAgICAgICAgICAgICAgIC50aGVuKCgpID0+IHRoaXMuY29yZG92YUZpbGUucmVtb3ZlRGlyKHBhcmVudGRpciwgbW92ZWREaXIpKTtcbiAgICAgICAgICAgIH0pLmNhdGNoKG5vb3ApO1xuICAgIH1cblxuICAgIHB1YmxpYyBzdGFydCgpOiBQcm9taXNlPGFueT4ge1xuICAgICAgICAvKipcbiAgICAgICAgICogRGVmYXVsdCBSRUFEX0NIVU5LX1NJWkUgaXMgMjU2IEtiLiBCdXQgd2l0aCB0aGF0IHNldHRpbmcgcmVhZEpzb24gbWV0aG9kIGlzIGZhaWxpbmcuIFRoaXMgaXMgYW4gaXNzdWVcbiAgICAgICAgICogd2l0aCBjb3Jkb3ZhIGZpbGUgcGx1Z2luLiBTbywgaW5jcmVhc2luZyBpdCB0byA1MTIgS2IgdG8gcmVhZCBsYXJnZSBkYXRhYmFzZSBzY2hlbWEgZmlsZXMgKD4yNTYgS2IpLlxuICAgICAgICAgKi9cbiAgICAgICAgRmlsZVJlYWRlci5SRUFEX0NIVU5LX1NJWkUgPSA1MTIgKiAxMDI0O1xuICAgICAgICByZXR1cm4gUHJvbWlzZS5yZXNvbHZlKCkudGhlbigoKSA9PiB7XG4gICAgICAgICAgICAgICAgcmV0dXJuIHRoaXMuY29yZG92YUFwcFZlcnNpb24uZ2V0QXBwTmFtZSgpO1xuICAgICAgICAgICAgfSkudGhlbihhcHBOYW1lID0+IHtcbiAgICAgICAgICAgICAgICBjb25zdCBwcm9taXNlcyA9IFtdO1xuICAgICAgICAgICAgICAgIHRoaXMuX2FwcE5hbWUgPSBhcHBOYW1lO1xuICAgICAgICAgICAgICAgIHByb21pc2VzLnB1c2godGhpcy5jcmVhdGVGb2xkZXJJZk5vdEV4aXN0cyh0aGlzLmdldFRlbXBvcmFyeVJvb3RQYXRoKCksXG4gICAgICAgICAgICAgICAgICAgIEFQUF9GT0xERVJfU1RSVUNUVVJFLFxuICAgICAgICAgICAgICAgICAgICB0aGlzLl9maWxlVHlwZVZzUGF0aE1hcC50ZW1wb3JhcnkpKTtcbiAgICAgICAgICAgICAgICBwcm9taXNlcy5wdXNoKHRoaXMuY3JlYXRlRm9sZGVySWZOb3RFeGlzdHModGhpcy5nZXRQZXJzaXN0ZW50Um9vdFBhdGgoKSxcbiAgICAgICAgICAgICAgICAgICAgQVBQX0ZPTERFUl9TVFJVQ1RVUkUsXG4gICAgICAgICAgICAgICAgICAgIHRoaXMuX2ZpbGVUeXBlVnNQYXRoTWFwLnBlcnNpc3RlbnQpKTtcbiAgICAgICAgICAgICAgICBwcm9taXNlcy5wdXNoKHRoaXMuc2V0dXBVcGxvYWREaXJlY3RvcnkoKSk7XG4gICAgICAgICAgICAgICAgcmV0dXJuIFByb21pc2UuYWxsKHByb21pc2VzKTtcbiAgICAgICAgICAgIH0pLnRoZW4oKCkgPT4ge1xuICAgICAgICAgICAgICAgIGlmIChpc0FuZHJvaWQoKSkge1xuICAgICAgICAgICAgICAgICAgICAvLyB0aGlzIGlzIG5lY2Vzc2FyeSB0byBwcmV2ZW50IG11bHRpcGxlIGZpbGUgcGVybWlzc2lvbiBwb3B1cC5cbiAgICAgICAgICAgICAgICAgICAgcmV0dXJuIHRoaXMuY29yZG92YUZpbGUucmVhZEFzVGV4dChjb3Jkb3ZhLmZpbGUuZXh0ZXJuYWxSb290RGlyZWN0b3J5LCAncmFuZG9tLWZpbGUtZm9yLXBlcm1pc3Npb24nKS5jYXRjaChub29wKTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9KTtcbiAgICB9XG5cbiAgICBwdWJsaWMgZ2V0U2VydmljZU5hbWUoKSB7XG4gICAgICAgIHJldHVybiBEZXZpY2VGaWxlU2VydmljZS5TRVJWSUNFX05BTUU7XG4gICAgfVxuXG4gICAgcHJpdmF0ZSBjcmVhdGVGb2xkZXJJZk5vdEV4aXN0cyhwYXJlbnQ6IHN0cmluZywgZm9sZGVycywgZmlsZVR5cGVMb2NhdGlvbk1hcCkge1xuICAgICAgICBjb25zdCBjaGlsZFByb21pc2VzID0gW107XG4gICAgICAgIGlmIChmb2xkZXJzKSB7XG4gICAgICAgICAgICBmb2xkZXJzLmZvckVhY2goZm9sZGVyID0+IHtcbiAgICAgICAgICAgICAgICBsZXQgZm9sZGVyUGF0aDtcbiAgICAgICAgICAgICAgICBmb2xkZXIubmFtZSA9IGZvbGRlci5uYW1lLnJlcGxhY2UoJ3tBUFBfTkFNRX0nLCB0aGlzLl9hcHBOYW1lKTtcbiAgICAgICAgICAgICAgICBmb2xkZXJQYXRoID0gcGFyZW50ICsgZm9sZGVyLm5hbWUgKyAnLyc7XG4gICAgICAgICAgICAgICAgaWYgKGZvbGRlci5maWxlVHlwZSAmJiAhZmlsZVR5cGVMb2NhdGlvbk1hcFtmb2xkZXIuZmlsZVR5cGVdKSB7XG4gICAgICAgICAgICAgICAgICAgIGZpbGVUeXBlTG9jYXRpb25NYXBbZm9sZGVyLmZpbGVUeXBlXSA9IGZvbGRlclBhdGg7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIGNvbnN0IHAgPSB0aGlzLmNvcmRvdmFGaWxlLmNyZWF0ZURpcihwYXJlbnQsIGZvbGRlci5uYW1lLCBmYWxzZSlcbiAgICAgICAgICAgICAgICAgICAgLnRoZW4oKCkgPT4gdGhpcy5jcmVhdGVGb2xkZXJJZk5vdEV4aXN0cyhmb2xkZXJQYXRoLCBmb2xkZXIuY2hpbGRyZW4sIGZpbGVUeXBlTG9jYXRpb25NYXApLFxuICAgICAgICAgICAgICAgICAgICAgICAgKCkgPT4gdGhpcy5jcmVhdGVGb2xkZXJJZk5vdEV4aXN0cyhmb2xkZXJQYXRoLCBmb2xkZXIuY2hpbGRyZW4sIGZpbGVUeXBlTG9jYXRpb25NYXApKTtcbiAgICAgICAgICAgICAgICBjaGlsZFByb21pc2VzLnB1c2gocCk7XG4gICAgICAgICAgICB9KTtcbiAgICAgICAgfVxuICAgICAgICBpZiAoY2hpbGRQcm9taXNlcy5sZW5ndGggPiAwKSB7XG4gICAgICAgICAgICByZXR1cm4gUHJvbWlzZS5hbGwoY2hpbGRQcm9taXNlcyk7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBwcml2YXRlIGZpbmRGaWxlVHlwZShmaWxlTmFtZSkge1xuICAgICAgICBsZXQgZXh0ZW5zaW9uO1xuICAgICAgICBpZiAoZmlsZU5hbWUuaW5kZXhPZignLicpID4gMCkge1xuICAgICAgICAgICAgZXh0ZW5zaW9uID0gZmlsZU5hbWUuc3BsaXQoJy4nKS5wb3AoKS50b0xvd2VyQ2FzZSgpO1xuICAgICAgICAgICAgaWYgKElNQUdFX0VYVEVOU0lPTlMuc29tZShhID0+IGEgPT09IGV4dGVuc2lvbikpIHtcbiAgICAgICAgICAgICAgICByZXR1cm4gRmlsZVR5cGUuSU1BR0U7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICBpZiAoVklERU9fRVhURU5TSU9OUy5zb21lKGEgPT4gYSA9PT0gZXh0ZW5zaW9uKSkge1xuICAgICAgICAgICAgICAgIHJldHVybiBGaWxlVHlwZS5WSURFTztcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIGlmIChBVURJT19FWFRFTlNJT05TLnNvbWUoYSA9PiBhID09PSBleHRlbnNpb24pKSB7XG4gICAgICAgICAgICAgICAgcmV0dXJuIEZpbGVUeXBlLkFVRElPO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICAgIHJldHVybiBGaWxlVHlwZS5ET0NVTUVOVDtcbiAgICB9XG5cbiAgICBwcml2YXRlIHNldHVwVXBsb2FkRGlyZWN0b3J5KCkge1xuICAgICAgICBjb25zdCB1cGxvYWRzRGlyTmFtZSA9ICd1cGxvYWRzJyxcbiAgICAgICAgICAgIGFwcERpciA9IGNvcmRvdmEuZmlsZS5kYXRhRGlyZWN0b3J5O1xuICAgICAgICByZXR1cm4gdGhpcy5jb3Jkb3ZhRmlsZS5jaGVja0RpcihhcHBEaXIsIHVwbG9hZHNEaXJOYW1lKVxuICAgICAgICAgICAgLnRoZW4oKCkgPT4gdGhpcy5fdXBsb2FkRGlyID0gYXBwRGlyICsgdXBsb2Fkc0Rpck5hbWUsXG4gICAgICAgICAgICAgICAgKCkgPT4gdGhpcy5jb3Jkb3ZhRmlsZS5jcmVhdGVEaXIoYXBwRGlyLCB1cGxvYWRzRGlyTmFtZSwgdHJ1ZSlcbiAgICAgICAgICAgICAgICAgICAgLnRoZW4oKCkgPT4gdGhpcy5fdXBsb2FkRGlyID0gYXBwRGlyICsgdXBsb2Fkc0Rpck5hbWUpKTtcbiAgICB9XG59XG4iXX0=
@@ -140,11 +140,11 @@ export class DeviceService {
140
140
  getEntry(key) {
141
141
  return this._registry[key];
142
142
  }
143
- static { this.ɵfac = function DeviceService_Factory(t) { return new (t || DeviceService)(i0.ɵɵinject(i1.File)); }; }
143
+ static { this.ɵfac = function DeviceService_Factory(__ngFactoryType__) { return new (__ngFactoryType__ || DeviceService)(i0.ɵɵinject(i1.File)); }; }
144
144
  static { this.ɵprov = /*@__PURE__*/ i0.ɵɵdefineInjectable({ token: DeviceService, factory: DeviceService.ɵfac, providedIn: 'root' }); }
145
145
  }
146
146
  (() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassMetadata(DeviceService, [{
147
147
  type: Injectable,
148
148
  args: [{ providedIn: 'root' }]
149
149
  }], () => [{ type: i1.File }], null); })();
150
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGV2aWNlLnNlcnZpY2UuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9tb2JpbGUvY29yZS9zcmMvc2VydmljZXMvZGV2aWNlLnNlcnZpY2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUUzQyxPQUFPLEVBQUMsSUFBSSxFQUFDLE1BQU0sbUNBQW1DLENBQUM7QUFFdkQsT0FBTyxFQUFFLFVBQVUsRUFBRSxVQUFVLEVBQUUsSUFBSSxFQUFFLFlBQVksRUFBRSxLQUFLLEVBQUUsTUFBTSxVQUFVLENBQUM7QUFHN0UsT0FBTyxFQUFDLE9BQU8sRUFBQyxNQUFNLFdBQVcsQ0FBQzs7O0FBSWxDLE1BQU0sa0JBQWtCLEdBQUcsZUFBZSxDQUFDO0FBYTNDLE1BQU0sT0FBTyxhQUFhO2FBQ04saUJBQVksR0FBRyxlQUFlLEFBQWxCLENBQW1CO0lBUy9DLFlBQTJCLElBQVU7UUFBVixTQUFJLEdBQUosSUFBSSxDQUFNO1FBUDdCLGNBQVMsR0FBRyxFQUFFLENBQUM7UUFDZixhQUFRLEdBQUcsS0FBSyxDQUFDO1FBQ2pCLHVCQUFrQixHQUFHLEVBQUUsQ0FBQztRQUN4Qix5QkFBb0IsR0FBRyxFQUFFLENBQUM7UUFDMUIscUJBQWdCLEdBQTRCLEVBQUUsQ0FBQztRQUMvQyxZQUFPLEdBQVcsRUFBWSxDQUFDO1FBR25DLE1BQU0sV0FBVyxHQUFHLEVBQUUsQ0FBQztRQUN2QixVQUFVLENBQUMsR0FBRyxFQUFFO1lBQ1osSUFBSSxDQUFDLElBQUksQ0FBQyxRQUFRLEVBQUUsQ0FBQztnQkFDakIsT0FBTyxDQUFDLElBQUksQ0FBQyxrQ0FBa0MsV0FBVyxVQUFVLENBQUMsQ0FBQztnQkFDdEUsT0FBTyxDQUFDLElBQUksQ0FBQyxnQkFBZ0IsRUFBRSxJQUFJLENBQUMsZ0JBQWdCLENBQUMsR0FBRyxDQUFDLENBQUMsQ0FBQyxFQUFFLENBQUMs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LEtBQUssQ0FBQztRQUM1QixPQUFPLElBQUksQ0FBQyxJQUFJLENBQUMsU0FBUyxDQUFDLE9BQU8sQ0FBQyxJQUFJLENBQUMsYUFBYSxFQUNqRCxrQkFBa0IsRUFDbEIsSUFBSSxDQUFDLFNBQVMsQ0FBQyxJQUFJLENBQUMsU0FBUyxDQUFDLEVBQzlCLEVBQUUsT0FBTyxFQUFFLElBQUksRUFBRSxDQUFDLENBQUM7SUFDM0IsQ0FBQztJQUVEOzs7T0FHRztJQUNJLFFBQVEsQ0FBQyxHQUFXO1FBQ3ZCLE9BQU8sSUFBSSxDQUFDLFNBQVMsQ0FBQyxHQUFHLENBQUMsQ0FBQztJQUMvQixDQUFDOzhFQXBKUSxhQUFhO3VFQUFiLGFBQWEsV0FBYixhQUFhLG1CQURBLE1BQU07O2lGQUNuQixhQUFhO2NBRHpCLFVBQVU7ZUFBQyxFQUFFLFVBQVUsRUFBRSxNQUFNLEVBQUUiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBJbmplY3RhYmxlIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5cbmltcG9ydCB7RmlsZX0gZnJvbSAnQGF3ZXNvbWUtY29yZG92YS1wbHVnaW5zL2ZpbGUvbmd4JztcblxuaW1wb3J0IHsgJGFwcERpZ2VzdCwgaGFzQ29yZG92YSwgbm9vcCwgZmV0Y2hDb250ZW50LCBpc0lvcyB9IGZyb20gJ0B3bS9jb3JlJztcblxuaW1wb3J0IHsgSURldmljZVN0YXJ0VXBTZXJ2aWNlIH0gZnJvbSAnLi9kZXZpY2Utc3RhcnQtdXAtc2VydmljZSc7XG5pbXBvcnQge2ZvckVhY2h9IGZyb20gXCJsb2Rhc2gtZXNcIjtcblxuZGVjbGFyZSBjb25zdCBjb3Jkb3ZhO1xuXG5jb25zdCBSRUdJU1RSWV9GSUxFX05BTUUgPSAncmVnaXN0cnkuaW5mbyc7XG5cbmV4cG9ydCBpbnRlcmZhY2UgQ29uZmlnIHtcbiAgICBiYXNlVXJsOiBzdHJpbmc7XG4gICAgY3VzdG9tVXJsU2NoZW1lOiBzdHJpbmc7XG4gICAgY3VzdG9tVXJsOiBzdHJpbmc7XG4gICAgYnVpbGRUaW1lOiBudW1iZXI7XG4gICAgZW5hYmxlU1NMUGlubmluZzogYm9vbGVhbjtcbiAgICBvZmZsaW5lU3RvcmFnZTogYm9vbGVhbjtcbiAgICB1c2VOYXRpdmVYSFI6IGJvb2xlYW47XG59XG5cbkBJbmplY3RhYmxlKHsgcHJvdmlkZWRJbjogJ3Jvb3QnIH0pXG5leHBvcnQgY2xhc3MgRGV2aWNlU2VydmljZSB7XG4gICAgc3RhdGljIHJlYWRvbmx5IFNFUlZJQ0VfTkFNRSA9ICdEZXZpY2VTZXJ2aWNlJztcblxuICAgIHByaXZhdGUgX3JlZ2lzdHJ5ID0ge307XG4gICAgcHJpdmF0ZSBfaXNSZWFkeSA9IGZhbHNlO1xuICAgIHByaXZhdGUgX3doZW5SZWFkeVByb21pc2VzID0gW107XG4gICAgcHJpdmF0ZSBfYmFja0J0blRhcExpc3RlbmVycyA9IFtdO1xuICAgIHByaXZhdGUgX3N0YXJ0VXBTZXJ2aWNlczogSURldmljZVN0YXJ0VXBTZXJ2aWNlW10gPSBbXTtcbiAgICBwcml2YXRlIF9jb25maWc6IENvbmZpZyA9IHt9IGFzIENvbmZpZztcblxuICAgIHB1YmxpYyBjb25zdHJ1Y3Rvcihwcml2YXRlIGZpbGU6IEZpbGUpIHtcbiAgICAgICAgY29uc3QgbWF4V2FpdFRpbWUgPSAxMDtcbiAgICAgICAgc2V0VGltZW91dCgoKSA9PiB7XG4gICAgICAgICAgICBpZiAoIXRoaXMuX2lzUmVhZHkpIHtcbiAgICAgICAgICAgICAgICBjb25zb2xlLndhcm4oYERldmljZSBpcyBub3QgcmVhZHkgZXZlbiBhZnRlciAke21heFdhaXRUaW1lfSBzZWNvbmRzYCk7XG4gICAgICAgICAgICAgICAgY29uc29sZS53YXJuKCdXYWl0aW5nIEZvciAlTycsIHRoaXMuX3N0YXJ0VXBTZXJ2aWNlcy5tYXAoaSA9PiBpLmdldFNlcnZpY2VOYW1lKCkpKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfSwgbWF4V2FpdFRpbWUgKiAxMDAwKTtcbiAgICAgICAgZG9jdW1lbnQuYWRkRXZlbnRMaXN0ZW5lcignYmFja2J1dHRvbicsIHRoaXMuZXhlY3V0ZUJhY2tUYXBMaXN0ZW5lcnMuYmluZCh0aGlzKSk7XG4gICAgICAgIGlmIChoYXNDb3Jkb3ZhKCkpIHtcbiAgICAgICAgICAgIGNvbnN0IHBvcnQgPSBsb2NhdGlvbi5wb3J0ID8gJzonICsgbG9jYXRpb24ucG9ydCA6ICcnO1xuICAgICAgICAgICAgY29uc3QgY29uZmlnVXJsID0gYCR7bG9jYXRpb24ucHJvdG9jb2x9Ly8ke2xvY2F0aW9uLmhvc3RuYW1lfSR7cG9ydH0ke2lzSW9zKCkgPyAnJyA6ICcvX3d3dyd9L2NvbmZpZy5qc29uYDtcbiAgICAgICAgICAgIGZldGNoQ29udGVudCgnanNvbicsIGNvbmZpZ1VybCwgdHJ1ZSwgKHJlc3BvbnNlID0+IHtcbiAgICAgICAgICAgICAgICBpZiAoIXJlc3BvbnNlLmVycm9yICYmIHJlc3BvbnNlLmJhc2VVcmwpIHtcbiAgICAgICAgICAgICAgICAgICAgdGhpcy5fY29uZmlnID0gcmVzcG9uc2U7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfSkpO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgcHVibGljIGV4ZWN1dGVCYWNrVGFwTGlzdGVuZXJzKCRldmVudCkge1xuICAgICAgICBmb3JFYWNoKHRoaXMuX2JhY2tCdG5UYXBMaXN0ZW5lcnMsIGZuID0+IHtcbiAgICAgICAgICAgIHJldHVybiBmbigkZXZlbnQpICE9PSBmYWxzZTtcbiAgICAgICAgfSk7XG4gICAgICAgIC8vIGV4cGxpY2l0bHkgYXBwbHlpbmcgdGhlIGRpZ2VzdCBjeWNsZSBhcyB0aGUgYmFja2J1dHRvbiBsaXN0ZW5lciBpcyBub3QgcmVuZGVyaW5nIHRoZSBwYWdlIGNvbnRlbnQuXG4gICAgICAgIC8vIFRoaXMgaXMgYmVjYXVzZSB6b25lIGlzIG5vdCBydW4gKHRoZXJlIGlzIG5vIGNoYW5nZSBkZXRlY3Rpb24pXG4gICAgICAgIC8vIGh0dHBzOi8vd2VibG9ncy50aGlua3RlY3R1cmUuY29tL3Rob21hcy8yMDE3LzAyL2NvcmRvdmEtdnMtem9uZWpzLW9yLXdoeS1pcy1hbmd1bGFycy1kb2N1bWVudC1ldmVudC1saXN0ZW5lci1ub3QtaW4tYS16b25lLmh0bWxcbiAgICAgICAgJGFwcERpZ2VzdCgpO1xuICAgIH1cblxuICAgIHB1YmxpYyBhZGRTdGFydFVwU2VydmljZShzZXJ2aWNlOiBJRGV2aWNlU3RhcnRVcFNlcnZpY2UpIHtcbiAgICAgICAgdGhpcy5fc3RhcnRVcFNlcnZpY2VzLnB1c2goc2VydmljZSk7XG4gICAgfVxuXG4gICAgcHVibGljIG9uQmFja0J1dHRvblRhcChmbjogKCRldmVudCkgPT4gYm9vbGVhbikge1xuICAgICAgICB0aGlzLl9iYWNrQnRuVGFwTGlzdGVuZXJzLnVuc2hpZnQoZm4pO1xuICAgICAgICByZXR1cm4gKCkgPT4ge1xuICAgICAgICAgICAgY29uc3QgaSA9IHRoaXMuX2JhY2tCdG5UYXBMaXN0ZW5lcnMuaW5kZXhPZihmbik7XG4gICAgICAgICAgICBpZiAoaSA+PSAwKSB7XG4gICAgICAgICAgICAgICAgdGhpcy5fYmFja0J0blRhcExpc3RlbmVycy5zcGxpY2UoaSwgMSk7XG4gICAgICAgICAgICB9XG4gICAgICAgIH07XG4gICAgfVxuXG4gICAgcHVibGljIHN0YXJ0KCkge1xuICAgICAgICBpZiAodGhpcy5faXNSZWFkeSB8fCB0aGlzLl9zdGFydFVwU2VydmljZXMubGVuZ3RoID09PSAwKSB7XG4gICAgICAgICAgICB0aGlzLl9pc1JlYWR5ID0gdHJ1ZTtcbiAgICAgICAgICAgIHJldHVybiBQcm9taXNlLnJlc29sdmUoKTtcbiAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgIHJldHVybiBuZXcgUHJvbWlzZTx2b2lkPigocmVzb2x2ZSkgPT4ge1xuICAgICAgICAgICAgICAgIGlmIChoYXNDb3Jkb3ZhKCkpIHtcbiAgICAgICAgICAgICAgICAgICAgZG9jdW1lbnQuYWRkRXZlbnRMaXN0ZW5lcignZGV2aWNlcmVhZHknLCAoKSA9PiByZXNvbHZlKCksIGZhbHNlKTtcbiAgICAgICAgICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgICAgICAgICByZXNvbHZlKCk7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfSkudGhlbigoKSA9PiB7XG4gICAgICAgICAgICAgICAgaWYgKHdpbmRvd1snY29yZG92YSddKSB7XG4gICAgICAgICAgICAgICAgICAgIHJldHVybiB0aGlzLmZpbGUucmVhZEFzVGV4dChjb3Jkb3ZhLmZpbGUuZGF0YURpcmVjdG9yeSwgUkVHSVNUUllfRklMRV9OQU1FKVxuICAgICAgICAgICAgICAgICAgICAgICAgLnRoZW4oY29udGVudCA9PiAgdGhpcy5fcmVnaXN0cnkgPSBKU09OLnBhcnNlKGNvbnRlbnQpLCBub29wKTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9KS50aGVuKCgpID0+IHtcbiAgICAgICAgICAgICAgICByZXR1cm4gUHJvbWlzZS5hbGwodGhpcy5fc3RhcnRVcFNlcnZpY2VzLm1hcChzID0+IHtcbiAgICAgICAgICAgICAgICAgICAgcmV0dXJuIHMuc3RhcnQoKS5jYXRjaCgoZXJyb3IpID0+IHtcbiAgICAgICAgICAgICAgICAgICAgICAgIGNvbnNvbGUuZXJyb3IoJyVzIGZhaWxlZCB0byBzdGFydCBkdWUgdG86ICVPJywgcy5nZXRTZXJ2aWNlTmFtZSgpLCBlcnJvcik7XG4gICAgICAgICAgICAgICAgICAgICAgICByZXR1cm4gUHJvbWlzZS5yZWplY3QoZXJyb3IpO1xuICAgICAgICAgICAgICAgICAgICB9KTtcbiAgICAgICAgICAgICAgICB9KSk7XG4gICAgICAgICAgICB9KS50aGVuKCgpID0+IHtcbiAgICAgICAgICAgICAgICB3aW5kb3dbJ3dtRGV2aWNlUmVhZHknXSA9IHRydWU7XG4gICAgICAgICAgICAgICAgZG9jdW1lbnQuZGlzcGF0Y2hFdmVudChuZXcgQ3VzdG9tRXZlbnQoJ3dtRGV2aWNlUmVhZHknKSk7XG4gICAgICAgICAgICAgICAgdGhpcy5fc3RhcnRVcFNlcnZpY2VzLmxlbmd0aCA9IDA7XG4gICAgICAgICAgICAgICAgdGhpcy5fd2hlblJlYWR5UHJvbWlzZXMuZm9yRWFjaChmbiA9PiBmbigpKTtcbiAgICAgICAgICAgICAgICB0aGlzLl9pc1JlYWR5ID0gdHJ1ZTtcbiAgICAgICAgICAgIH0pO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgcHVibGljIGdldFNlcnZpY2VOYW1lKCkge1xuICAgICAgICByZXR1cm4gRGV2aWNlU2VydmljZS5TRVJWSUNFX05BTUU7XG4gICAgfVxuXG4gICAgcHVibGljIHdoZW5SZWFkeSgpOiBQcm9taXNlPHZvaWQ+IHtcbiAgICAgICAgaWYgKHRoaXMuX2lzUmVhZHkpIHtcbiAgICAgICAgICAgIHJldHVybiBQcm9taXNlLnJlc29sdmUoKTtcbiAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgIHJldHVybiBuZXcgUHJvbWlzZTx2b2lkPigocmVzb2x2ZSkgPT4ge1xuICAgICAgICAgICAgICAgIHRoaXMuX3doZW5SZWFkeVByb21pc2VzLnB1c2gocmVzb2x2ZSk7XG4gICAgICAgICAgICB9KTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIHB1YmxpYyBnZXRCYXNlVXJsKCkge1xuICAgICAgICByZXR1cm4gdGhpcy5fY29uZmlnLmJhc2VVcmwgPT09ICdodHRwOi8vTk9TRVJWRVJSRVFVSVJFRC5jb20nID8gJ05PTkUnIDogdGhpcy5fY29uZmlnLmJhc2VVcmw7XG4gICAgfVxuXG4gICAgcHVibGljIGlzQXBwQ29ubmVjdGVkVG9QcmV2aWV3KCkge1xuICAgICAgICByZXR1cm4gdGhpcy5fY29uZmlnLmN1c3RvbVVybCAhPT0gdGhpcy5fY29uZmlnLmJhc2VVcmwgJiYgdGhpcy5nZXRCYXNlVXJsKCkgIT09ICdOT05FJztcbiAgICB9XG5cbiAgICBwdWJsaWMgZ2V0Q29uZmlnKCk6IENvbmZpZyB7XG4gICAgICAgIHJldHVybiB0aGlzLl9jb25maWc7XG4gICAgfVxuXG4gICAgcHVibGljIHVzZU5hdGl2ZVhIUigpIHtcbiAgICAgICAgcmV0dXJuIChpc0lvcygpIHx8IHRoaXMuX2NvbmZpZy51c2VOYXRpdmVYSFIgPT09IHRydWUpXG4gICAgICAgICAgICAmJiBoYXNDb3Jkb3ZhKClcbiAgICAgICAgICAgICYmIGNvcmRvdmEucGx1Z2luXG4gICAgICAgICAgICAmJiBjb3Jkb3ZhLnBsdWdpbi5odHRwO1xuICAgIH1cblxuICAgIC8qKlxuICAgICAqIEByZXR1cm5zIHtQcm9taXNlPG51bWJlcj59IHByb21pc2UgcmVzb2x2ZWQgd2l0aCB0aGUgYXBwIGJ1aWxkIHRpbWVcbiAgICAgKi9cbiAgICBwdWJsaWMgZ2V0QXBwQnVpbGRUaW1lKCk6IFByb21pc2U8bnVtYmVyPiB7XG4gICAgICAgIHJldHVybiBQcm9taXNlLnJlc29sdmUodGhpcy5fY29uZmlnLmJ1aWxkVGltZSk7XG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogU3RvcmVzIGFuIGVudHJ5IHRoYXQgc3Vydml2ZXMgYXBwIHJlc3RhcnRzIGFuZCB1cGRhdGVzLlxuICAgICAqXG4gICAgICogQHBhcmFtIHtzdHJpbmd9IGtleVxuICAgICAqIEBwYXJhbSB7T2JqZWN0fSB2YWx1ZVxuICAgICAqIEByZXR1cm5zIHtQcm9taXNlPGFueT59XG4gICAgICovXG4gICAgcHVibGljIHN0b3JlRW50cnkoa2V5OiBzdHJpbmcsIHZhbHVlOiBPYmplY3QpOiBQcm9taXNlPGFueT4ge1xuICAgICAgICB0aGlzLl9yZWdpc3RyeVtrZXldID0gdmFsdWU7XG4gICAgICAgIHJldHVybiB0aGlzLmZpbGUud3JpdGVGaWxlKGNvcmRvdmEuZmlsZS5kYXRhRGlyZWN0b3J5LFxuICAgICAgICAgICAgUkVHSVNUUllfRklMRV9OQU1FLFxuICAgICAgICAgICAgSlNPTi5zdHJpbmdpZnkodGhpcy5fcmVnaXN0cnkpLFxuICAgICAgICAgICAgeyByZXBsYWNlOiB0cnVlIH0pO1xuICAgIH1cblxuICAgIC8qKlxuICAgICAqIEBwYXJhbSB7c3RyaW5nfSBrZXlcbiAgICAgKiBAcmV0dXJucyB7YW55fSBlbnRyeSBjb3JyZXNwb25kaW5nIHRvIHRoZSBrZXlcbiAgICAgKi9cbiAgICBwdWJsaWMgZ2V0RW50cnkoa2V5OiBzdHJpbmcpOiBhbnkge1xuICAgICAgICByZXR1cm4gdGhpcy5fcmVnaXN0cnlba2V5XTtcbiAgICB9XG59XG4iXX0=
150
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGV2aWNlLnNlcnZpY2UuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9tb2JpbGUvY29yZS9zcmMvc2VydmljZXMvZGV2aWNlLnNlcnZpY2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUUzQyxPQUFPLEVBQUMsSUFBSSxFQUFDLE1BQU0sbUNBQW1DLENBQUM7QUFFdkQsT0FBTyxFQUFFLFVBQVUsRUFBRSxVQUFVLEVBQUUsSUFBSSxFQUFFLFlBQVksRUFBRSxLQUFLLEVBQUUsTUFBTSxVQUFVLENBQUM7QUFHN0UsT0FBTyxFQUFDLE9BQU8sRUFBQyxNQUFNLFdBQVcsQ0FBQzs7O0FBSWxDLE1BQU0sa0JBQWtCLEdBQUcsZUFBZSxDQUFDO0FBYTNDLE1BQU0sT0FBTyxhQUFhO2FBQ04saUJBQVksR0FBRyxlQUFlLEFBQWxCLENBQW1CO0lBUy9DLFlBQTJCLElBQVU7UUFBVixTQUFJLEdBQUosSUFBSSxDQUFNO1FBUDdCLGNBQVMsR0FBRyxFQUFFLENBQUM7UUFDZixhQUFRLEdBQUcsS0FBSyxDQUFDO1FBQ2pCLHVCQUFrQixHQUFHLEVBQUUsQ0FBQztRQUN4Qix5QkFBb0IsR0FBRyxFQUFFLENBQUM7UUFDMUIscUJBQWdCLEdBQTRCLEVBQUUsQ0FBQztRQUMvQyxZQUFPLEdBQVcsRUFBWSxDQUFDO1FBR25DLE1BQU0sV0FBVyxHQUFHLEVBQUUsQ0FBQztRQUN2QixVQUFVLENBQUMsR0FBRyxFQUFFO1lBQ1osSUFBSSxDQUFDLElBQUksQ0FBQyxRQUFRLEVBQUUsQ0FBQztnQkFDakIsT0FBTyxDQUFDLElBQUksQ0FBQyxrQ0FBa0MsV0FBVyxVQUFVLENBQUMsQ0FBQztnQkFDdEUsT0FBTyxDQUFDLElBQUksQ0FBQyxnQkFBZ0IsRUFBRSxJQUFJLENBQUMsZ0JBQWdCLENBQUMsR0FBRyxDQUFDLENBQUMsQ0FBQyxFQUFFLENBQUMs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LEtBQUssQ0FBQztRQUM1QixPQUFPLElBQUksQ0FBQyxJQUFJLENBQUMsU0FBUyxDQUFDLE9BQU8sQ0FBQyxJQUFJLENBQUMsYUFBYSxFQUNqRCxrQkFBa0IsRUFDbEIsSUFBSSxDQUFDLFNBQVMsQ0FBQyxJQUFJLENBQUMsU0FBUyxDQUFDLEVBQzlCLEVBQUUsT0FBTyxFQUFFLElBQUksRUFBRSxDQUFDLENBQUM7SUFDM0IsQ0FBQztJQUVEOzs7T0FHRztJQUNJLFFBQVEsQ0FBQyxHQUFXO1FBQ3ZCLE9BQU8sSUFBSSxDQUFDLFNBQVMsQ0FBQyxHQUFHLENBQUMsQ0FBQztJQUMvQixDQUFDOzhHQXBKUSxhQUFhO3VFQUFiLGFBQWEsV0FBYixhQUFhLG1CQURBLE1BQU07O2lGQUNuQixhQUFhO2NBRHpCLFVBQVU7ZUFBQyxFQUFFLFVBQVUsRUFBRSxNQUFNLEVBQUUiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBJbmplY3RhYmxlIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5cbmltcG9ydCB7RmlsZX0gZnJvbSAnQGF3ZXNvbWUtY29yZG92YS1wbHVnaW5zL2ZpbGUvbmd4JztcblxuaW1wb3J0IHsgJGFwcERpZ2VzdCwgaGFzQ29yZG92YSwgbm9vcCwgZmV0Y2hDb250ZW50LCBpc0lvcyB9IGZyb20gJ0B3bS9jb3JlJztcblxuaW1wb3J0IHsgSURldmljZVN0YXJ0VXBTZXJ2aWNlIH0gZnJvbSAnLi9kZXZpY2Utc3RhcnQtdXAtc2VydmljZSc7XG5pbXBvcnQge2ZvckVhY2h9IGZyb20gXCJsb2Rhc2gtZXNcIjtcblxuZGVjbGFyZSBjb25zdCBjb3Jkb3ZhO1xuXG5jb25zdCBSRUdJU1RSWV9GSUxFX05BTUUgPSAncmVnaXN0cnkuaW5mbyc7XG5cbmV4cG9ydCBpbnRlcmZhY2UgQ29uZmlnIHtcbiAgICBiYXNlVXJsOiBzdHJpbmc7XG4gICAgY3VzdG9tVXJsU2NoZW1lOiBzdHJpbmc7XG4gICAgY3VzdG9tVXJsOiBzdHJpbmc7XG4gICAgYnVpbGRUaW1lOiBudW1iZXI7XG4gICAgZW5hYmxlU1NMUGlubmluZzogYm9vbGVhbjtcbiAgICBvZmZsaW5lU3RvcmFnZTogYm9vbGVhbjtcbiAgICB1c2VOYXRpdmVYSFI6IGJvb2xlYW47XG59XG5cbkBJbmplY3RhYmxlKHsgcHJvdmlkZWRJbjogJ3Jvb3QnIH0pXG5leHBvcnQgY2xhc3MgRGV2aWNlU2VydmljZSB7XG4gICAgc3RhdGljIHJlYWRvbmx5IFNFUlZJQ0VfTkFNRSA9ICdEZXZpY2VTZXJ2aWNlJztcblxuICAgIHByaXZhdGUgX3JlZ2lzdHJ5ID0ge307XG4gICAgcHJpdmF0ZSBfaXNSZWFkeSA9IGZhbHNlO1xuICAgIHByaXZhdGUgX3doZW5SZWFkeVByb21pc2VzID0gW107XG4gICAgcHJpdmF0ZSBfYmFja0J0blRhcExpc3RlbmVycyA9IFtdO1xuICAgIHByaXZhdGUgX3N0YXJ0VXBTZXJ2aWNlczogSURldmljZVN0YXJ0VXBTZXJ2aWNlW10gPSBbXTtcbiAgICBwcml2YXRlIF9jb25maWc6IENvbmZpZyA9IHt9IGFzIENvbmZpZztcblxuICAgIHB1YmxpYyBjb25zdHJ1Y3Rvcihwcml2YXRlIGZpbGU6IEZpbGUpIHtcbiAgICAgICAgY29uc3QgbWF4V2FpdFRpbWUgPSAxMDtcbiAgICAgICAgc2V0VGltZW91dCgoKSA9PiB7XG4gICAgICAgICAgICBpZiAoIXRoaXMuX2lzUmVhZHkpIHtcbiAgICAgICAgICAgICAgICBjb25zb2xlLndhcm4oYERldmljZSBpcyBub3QgcmVhZHkgZXZlbiBhZnRlciAke21heFdhaXRUaW1lfSBzZWNvbmRzYCk7XG4gICAgICAgICAgICAgICAgY29uc29sZS53YXJuKCdXYWl0aW5nIEZvciAlTycsIHRoaXMuX3N0YXJ0VXBTZXJ2aWNlcy5tYXAoaSA9PiBpLmdldFNlcnZpY2VOYW1lKCkpKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfSwgbWF4V2FpdFRpbWUgKiAxMDAwKTtcbiAgICAgICAgZG9jdW1lbnQuYWRkRXZlbnRMaXN0ZW5lcignYmFja2J1dHRvbicsIHRoaXMuZXhlY3V0ZUJhY2tUYXBMaXN0ZW5lcnMuYmluZCh0aGlzKSk7XG4gICAgICAgIGlmIChoYXNDb3Jkb3ZhKCkpIHtcbiAgICAgICAgICAgIGNvbnN0IHBvcnQgPSBsb2NhdGlvbi5wb3J0ID8gJzonICsgbG9jYXRpb24ucG9ydCA6ICcnO1xuICAgICAgICAgICAgY29uc3QgY29uZmlnVXJsID0gYCR7bG9jYXRpb24ucHJvdG9jb2x9Ly8ke2xvY2F0aW9uLmhvc3RuYW1lfSR7cG9ydH0ke2lzSW9zKCkgPyAnJyA6ICcvX3d3dyd9L2NvbmZpZy5qc29uYDtcbiAgICAgICAgICAgIGZldGNoQ29udGVudCgnanNvbicsIGNvbmZpZ1VybCwgdHJ1ZSwgKHJlc3BvbnNlID0+IHtcbiAgICAgICAgICAgICAgICBpZiAoIXJlc3BvbnNlLmVycm9yICYmIHJlc3BvbnNlLmJhc2VVcmwpIHtcbiAgICAgICAgICAgICAgICAgICAgdGhpcy5fY29uZmlnID0gcmVzcG9uc2U7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfSkpO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgcHVibGljIGV4ZWN1dGVCYWNrVGFwTGlzdGVuZXJzKCRldmVudCkge1xuICAgICAgICBmb3JFYWNoKHRoaXMuX2JhY2tCdG5UYXBMaXN0ZW5lcnMsIGZuID0+IHtcbiAgICAgICAgICAgIHJldHVybiBmbigkZXZlbnQpICE9PSBmYWxzZTtcbiAgICAgICAgfSk7XG4gICAgICAgIC8vIGV4cGxpY2l0bHkgYXBwbHlpbmcgdGhlIGRpZ2VzdCBjeWNsZSBhcyB0aGUgYmFja2J1dHRvbiBsaXN0ZW5lciBpcyBub3QgcmVuZGVyaW5nIHRoZSBwYWdlIGNvbnRlbnQuXG4gICAgICAgIC8vIFRoaXMgaXMgYmVjYXVzZSB6b25lIGlzIG5vdCBydW4gKHRoZXJlIGlzIG5vIGNoYW5nZSBkZXRlY3Rpb24pXG4gICAgICAgIC8vIGh0dHBzOi8vd2VibG9ncy50aGlua3RlY3R1cmUuY29tL3Rob21hcy8yMDE3LzAyL2NvcmRvdmEtdnMtem9uZWpzLW9yLXdoeS1pcy1hbmd1bGFycy1kb2N1bWVudC1ldmVudC1saXN0ZW5lci1ub3QtaW4tYS16b25lLmh0bWxcbiAgICAgICAgJGFwcERpZ2VzdCgpO1xuICAgIH1cblxuICAgIHB1YmxpYyBhZGRTdGFydFVwU2VydmljZShzZXJ2aWNlOiBJRGV2aWNlU3RhcnRVcFNlcnZpY2UpIHtcbiAgICAgICAgdGhpcy5fc3RhcnRVcFNlcnZpY2VzLnB1c2goc2VydmljZSk7XG4gICAgfVxuXG4gICAgcHVibGljIG9uQmFja0J1dHRvblRhcChmbjogKCRldmVudCkgPT4gYm9vbGVhbikge1xuICAgICAgICB0aGlzLl9iYWNrQnRuVGFwTGlzdGVuZXJzLnVuc2hpZnQoZm4pO1xuICAgICAgICByZXR1cm4gKCkgPT4ge1xuICAgICAgICAgICAgY29uc3QgaSA9IHRoaXMuX2JhY2tCdG5UYXBMaXN0ZW5lcnMuaW5kZXhPZihmbik7XG4gICAgICAgICAgICBpZiAoaSA+PSAwKSB7XG4gICAgICAgICAgICAgICAgdGhpcy5fYmFja0J0blRhcExpc3RlbmVycy5zcGxpY2UoaSwgMSk7XG4gICAgICAgICAgICB9XG4gICAgICAgIH07XG4gICAgfVxuXG4gICAgcHVibGljIHN0YXJ0KCkge1xuICAgICAgICBpZiAodGhpcy5faXNSZWFkeSB8fCB0aGlzLl9zdGFydFVwU2VydmljZXMubGVuZ3RoID09PSAwKSB7XG4gICAgICAgICAgICB0aGlzLl9pc1JlYWR5ID0gdHJ1ZTtcbiAgICAgICAgICAgIHJldHVybiBQcm9taXNlLnJlc29sdmUoKTtcbiAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgIHJldHVybiBuZXcgUHJvbWlzZTx2b2lkPigocmVzb2x2ZSkgPT4ge1xuICAgICAgICAgICAgICAgIGlmIChoYXNDb3Jkb3ZhKCkpIHtcbiAgICAgICAgICAgICAgICAgICAgZG9jdW1lbnQuYWRkRXZlbnRMaXN0ZW5lcignZGV2aWNlcmVhZHknLCAoKSA9PiByZXNvbHZlKCksIGZhbHNlKTtcbiAgICAgICAgICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgICAgICAgICByZXNvbHZlKCk7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfSkudGhlbigoKSA9PiB7XG4gICAgICAgICAgICAgICAgaWYgKHdpbmRvd1snY29yZG92YSddKSB7XG4gICAgICAgICAgICAgICAgICAgIHJldHVybiB0aGlzLmZpbGUucmVhZEFzVGV4dChjb3Jkb3ZhLmZpbGUuZGF0YURpcmVjdG9yeSwgUkVHSVNUUllfRklMRV9OQU1FKVxuICAgICAgICAgICAgICAgICAgICAgICAgLnRoZW4oY29udGVudCA9PiAgdGhpcy5fcmVnaXN0cnkgPSBKU09OLnBhcnNlKGNvbnRlbnQpLCBub29wKTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9KS50aGVuKCgpID0+IHtcbiAgICAgICAgICAgICAgICByZXR1cm4gUHJvbWlzZS5hbGwodGhpcy5fc3RhcnRVcFNlcnZpY2VzLm1hcChzID0+IHtcbiAgICAgICAgICAgICAgICAgICAgcmV0dXJuIHMuc3RhcnQoKS5jYXRjaCgoZXJyb3IpID0+IHtcbiAgICAgICAgICAgICAgICAgICAgICAgIGNvbnNvbGUuZXJyb3IoJyVzIGZhaWxlZCB0byBzdGFydCBkdWUgdG86ICVPJywgcy5nZXRTZXJ2aWNlTmFtZSgpLCBlcnJvcik7XG4gICAgICAgICAgICAgICAgICAgICAgICByZXR1cm4gUHJvbWlzZS5yZWplY3QoZXJyb3IpO1xuICAgICAgICAgICAgICAgICAgICB9KTtcbiAgICAgICAgICAgICAgICB9KSk7XG4gICAgICAgICAgICB9KS50aGVuKCgpID0+IHtcbiAgICAgICAgICAgICAgICB3aW5kb3dbJ3dtRGV2aWNlUmVhZHknXSA9IHRydWU7XG4gICAgICAgICAgICAgICAgZG9jdW1lbnQuZGlzcGF0Y2hFdmVudChuZXcgQ3VzdG9tRXZlbnQoJ3dtRGV2aWNlUmVhZHknKSk7XG4gICAgICAgICAgICAgICAgdGhpcy5fc3RhcnRVcFNlcnZpY2VzLmxlbmd0aCA9IDA7XG4gICAgICAgICAgICAgICAgdGhpcy5fd2hlblJlYWR5UHJvbWlzZXMuZm9yRWFjaChmbiA9PiBmbigpKTtcbiAgICAgICAgICAgICAgICB0aGlzLl9pc1JlYWR5ID0gdHJ1ZTtcbiAgICAgICAgICAgIH0pO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgcHVibGljIGdldFNlcnZpY2VOYW1lKCkge1xuICAgICAgICByZXR1cm4gRGV2aWNlU2VydmljZS5TRVJWSUNFX05BTUU7XG4gICAgfVxuXG4gICAgcHVibGljIHdoZW5SZWFkeSgpOiBQcm9taXNlPHZvaWQ+IHtcbiAgICAgICAgaWYgKHRoaXMuX2lzUmVhZHkpIHtcbiAgICAgICAgICAgIHJldHVybiBQcm9taXNlLnJlc29sdmUoKTtcbiAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgIHJldHVybiBuZXcgUHJvbWlzZTx2b2lkPigocmVzb2x2ZSkgPT4ge1xuICAgICAgICAgICAgICAgIHRoaXMuX3doZW5SZWFkeVByb21pc2VzLnB1c2gocmVzb2x2ZSk7XG4gICAgICAgICAgICB9KTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIHB1YmxpYyBnZXRCYXNlVXJsKCkge1xuICAgICAgICByZXR1cm4gdGhpcy5fY29uZmlnLmJhc2VVcmwgPT09ICdodHRwOi8vTk9TRVJWRVJSRVFVSVJFRC5jb20nID8gJ05PTkUnIDogdGhpcy5fY29uZmlnLmJhc2VVcmw7XG4gICAgfVxuXG4gICAgcHVibGljIGlzQXBwQ29ubmVjdGVkVG9QcmV2aWV3KCkge1xuICAgICAgICByZXR1cm4gdGhpcy5fY29uZmlnLmN1c3RvbVVybCAhPT0gdGhpcy5fY29uZmlnLmJhc2VVcmwgJiYgdGhpcy5nZXRCYXNlVXJsKCkgIT09ICdOT05FJztcbiAgICB9XG5cbiAgICBwdWJsaWMgZ2V0Q29uZmlnKCk6IENvbmZpZyB7XG4gICAgICAgIHJldHVybiB0aGlzLl9jb25maWc7XG4gICAgfVxuXG4gICAgcHVibGljIHVzZU5hdGl2ZVhIUigpIHtcbiAgICAgICAgcmV0dXJuIChpc0lvcygpIHx8IHRoaXMuX2NvbmZpZy51c2VOYXRpdmVYSFIgPT09IHRydWUpXG4gICAgICAgICAgICAmJiBoYXNDb3Jkb3ZhKClcbiAgICAgICAgICAgICYmIGNvcmRvdmEucGx1Z2luXG4gICAgICAgICAgICAmJiBjb3Jkb3ZhLnBsdWdpbi5odHRwO1xuICAgIH1cblxuICAgIC8qKlxuICAgICAqIEByZXR1cm5zIHtQcm9taXNlPG51bWJlcj59IHByb21pc2UgcmVzb2x2ZWQgd2l0aCB0aGUgYXBwIGJ1aWxkIHRpbWVcbiAgICAgKi9cbiAgICBwdWJsaWMgZ2V0QXBwQnVpbGRUaW1lKCk6IFByb21pc2U8bnVtYmVyPiB7XG4gICAgICAgIHJldHVybiBQcm9taXNlLnJlc29sdmUodGhpcy5fY29uZmlnLmJ1aWxkVGltZSk7XG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogU3RvcmVzIGFuIGVudHJ5IHRoYXQgc3Vydml2ZXMgYXBwIHJlc3RhcnRzIGFuZCB1cGRhdGVzLlxuICAgICAqXG4gICAgICogQHBhcmFtIHtzdHJpbmd9IGtleVxuICAgICAqIEBwYXJhbSB7T2JqZWN0fSB2YWx1ZVxuICAgICAqIEByZXR1cm5zIHtQcm9taXNlPGFueT59XG4gICAgICovXG4gICAgcHVibGljIHN0b3JlRW50cnkoa2V5OiBzdHJpbmcsIHZhbHVlOiBPYmplY3QpOiBQcm9taXNlPGFueT4ge1xuICAgICAgICB0aGlzLl9yZWdpc3RyeVtrZXldID0gdmFsdWU7XG4gICAgICAgIHJldHVybiB0aGlzLmZpbGUud3JpdGVGaWxlKGNvcmRvdmEuZmlsZS5kYXRhRGlyZWN0b3J5LFxuICAgICAgICAgICAgUkVHSVNUUllfRklMRV9OQU1FLFxuICAgICAgICAgICAgSlNPTi5zdHJpbmdpZnkodGhpcy5fcmVnaXN0cnkpLFxuICAgICAgICAgICAgeyByZXBsYWNlOiB0cnVlIH0pO1xuICAgIH1cblxuICAgIC8qKlxuICAgICAqIEBwYXJhbSB7c3RyaW5nfSBrZXlcbiAgICAgKiBAcmV0dXJucyB7YW55fSBlbnRyeSBjb3JyZXNwb25kaW5nIHRvIHRoZSBrZXlcbiAgICAgKi9cbiAgICBwdWJsaWMgZ2V0RW50cnkoa2V5OiBzdHJpbmcpOiBhbnkge1xuICAgICAgICByZXR1cm4gdGhpcy5fcmVnaXN0cnlba2V5XTtcbiAgICB9XG59XG4iXX0=
@@ -34,7 +34,7 @@ export class ExtAppMessageService {
34
34
  this.handlers.push(handler);
35
35
  return () => remove(this.handlers, handler);
36
36
  }
37
- static { this.ɵfac = function ExtAppMessageService_Factory(t) { return new (t || ExtAppMessageService)(i0.ɵɵinject(i1.App)); }; }
37
+ static { this.ɵfac = function ExtAppMessageService_Factory(__ngFactoryType__) { return new (__ngFactoryType__ || ExtAppMessageService)(i0.ɵɵinject(i1.App)); }; }
38
38
  static { this.ɵprov = /*@__PURE__*/ i0.ɵɵdefineInjectable({ token: ExtAppMessageService, factory: ExtAppMessageService.ɵfac, providedIn: 'root' }); }
39
39
  }
40
40
  (() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassMetadata(ExtAppMessageService, [{
@@ -111,4 +111,4 @@ export class ExtAppMessageService {
111
111
  handleOpenURL.lastURL = url;
112
112
  };
113
113
  }(window, document));
114
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZXh0LWFwcC1tZXNzYWdlLnNlcnZpY2UuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9tb2JpbGUvY29yZS9zcmMvc2VydmljZXMvZXh0LWFwcC1tZXNzYWdlLnNlcnZpY2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUUzQyxPQUFPLEVBQUUsR0FBRyxFQUFFLFlBQVksRUFBRSxNQUFNLFVBQVUsQ0FBQztBQUM3QyxPQUFPLEVBQUMsT0FBTyxFQUFFLE1BQU0sRUFBRSxLQUFLLEVBQUUsVUFBVSxFQUFDLE1BQU0sV0FBVyxDQUFDOzs7QUFhN0QsTUFBTSxPQUFPLG9CQUFvQjthQUNiLGlCQUFZLEdBQUcsc0JBQXNCLEFBQXpCLENBQTBCO0lBR3RELFlBQW9CLEdBQVE7UUFBUixRQUFHLEdBQUgsR0FBRyxDQUFLO1FBRnBCLGFBQVEsR0FBRyxFQUFFLENBQUM7UUFHbEIsUUFBUSxDQUFDLGdCQUFnQixDQUFDLDRCQUE0QixFQUFFLENBQUMsQ0FBQyxFQUFFO1lBQ3hELE1BQU0sT0FBTyxHQUFHLENBQUMsQ0FBQyxDQUFDLFFBQVEsQ0FBQyxDQUFDLE9BQU8sQ0FBWSxDQUFDO1lBQ2pELElBQUksQ0FBQyxRQUFRLENBQUMsT0FBTyxDQUFDLE9BQU8sQ0FBQyxFQUFFO2dCQUM1QixNQUFNLE9BQU8sR0FBRyxPQUFPLElBQUksT0FBTyxDQUFDLE9BQU8sQ0FBQyxLQUFLLENBQUMsT0FBTyxDQUFDLE9BQU8sQ0FBQyxDQUFDO2dCQUNsRSxJQUFJLE9BQU8sSUFBSSxPQUFPLENBQUMsTUFBTSxHQUFHLENBQUMsRUFBRSxDQUFDO29CQUNoQyxPQUFPLENBQUMsUUFBUSxDQUFDLE9BQU8sQ0FBQyxDQUFDO2dCQUM5QixDQUFDO1lBQ0wsQ0FBQyxDQUFDLENBQUM7UUFDUCxDQUFDLENBQUMsQ0FBQztJQUNQLENBQUM7SUFFRDs7Ozs7OztP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QUM7SUFDaEMsQ0FBQyxDQUFDO0FBQ04sQ0FBQyxDQUFDLE1BQU0sRUFBRSxRQUFRLENBQUMsQ0FBQyxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgSW5qZWN0YWJsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuXG5pbXBvcnQgeyBBcHAsIGdldFZhbGlkSlNPTiB9IGZyb20gJ0B3bS9jb3JlJztcbmltcG9ydCB7Zm9yRWFjaCwgcmVtb3ZlLCBzcGxpdCwgc3RhcnRzV2l0aH0gZnJvbSBcImxvZGFzaC1lc1wiO1xuXG5pbnRlcmZhY2UgTWVzc2FnZSB7XG4gICAgYWRkcmVzczogc3RyaW5nO1xuICAgIGRhdGE6IE1hcDxzdHJpbmcsIHN0cmluZz47XG59XG5cbmludGVyZmFjZSBIYW5kbGVyIHtcbiAgICBwYXR0ZXJuOiBzdHJpbmc7XG4gICAgY2FsbGJhY2s6IChtc2c6IHN0cmluZykgPT4gYW55O1xufVxuXG5ASW5qZWN0YWJsZSh7IHByb3ZpZGVkSW46ICdyb290JyB9KVxuZXhwb3J0IGNsYXNzIEV4dEFwcE1lc3NhZ2VTZXJ2aWNlIHtcbiAgICBzdGF0aWMgcmVhZG9ubHkgU0VSVklDRV9OQU1FID0gJ0V4dEFwcE1lc3NhZ2VTZXJ2aWNlJztcbiAgICBwcml2YXRlIGhhbmRsZXJzID0gW107XG5cbiAgICBjb25zdHJ1Y3Rvcihwcml2YXRlIGFwcDogQXBwKSB7XG4gICAgICAgIGRvY3VtZW50LmFkZEV2ZW50TGlzdGVuZXIoJ2V4dGVybmFsQXBwTWVzc2FnZVJlY2VpdmVkJywgZSA9PiB7XG4gICAgICAgICAgICBjb25zdCBtZXNzYWdlID0gKGVbJ2RldGFpbCddLm1lc3NhZ2UpIGFzIE1lc3NhZ2U7XG4gICAgICAgICAgICB0aGlzLmhhbmRsZXJzLmZvckVhY2goaGFuZGxlciA9PiB7XG4gICAgICAgICAgICAgICAgY29uc3QgbWF0Y2hlcyA9IGhhbmRsZXIgJiYgbWVzc2FnZS5hZGRyZXNzLm1hdGNoKGhhbmRsZXIucGF0dGVybik7XG4gICAgICAgICAgICAgICAgaWYgKG1hdGNoZXMgJiYgbWF0Y2hlcy5sZW5ndGggPiAwKSB7XG4gICAgICAgICAgICAgICAgICAgIGhhbmRsZXIuY2FsbEJhY2sobWVzc2FnZSk7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfSk7XG4gICAgICAgIH0pO1xuICAgIH1cblxuICAgIC8qKlxuICAgICAqIGFkZHMgYSBsaXN0ZW5lciBmb3IgYSBtZXNzYWdlIHdob3NlIGFkZHJlc3MgbWF0Y2hlcyB3aXRoIHRoZSBnaXZlbiByZWdleCBwYXR0ZXJuLlxuICAgICAqXG4gICAgICogQHBhcmFtIHtzdHJpbmd9IG1lc3NhZ2VBZGRyZXNzUGF0dGVybiBhIHJlZ2V4IHBhdHRlcm4gdGhhdCBpcyB1c2VkIHRvIHRhcmdldCBtZXNzYWdlcyB0byBsaXN0ZW4uXG4gICAgICogQHBhcmFtIHtGdW5jdGlvbn0gbGlzdGVuZXIgZnVuY3Rpb24gdG8gaW52b2tlIHdoZW4gbWVzc2FnZSB0aGF0IG1hdGNoZXMgcmVnZXggaXMgcmVjZWl2ZWQuXG4gICAgICogICAgICAgICAgICAgICAgICBtZXNzYWdlIHJlY2VpdmVkIHdpbGwgYmUgc2VudCBhcyBmaXJzdCBhcmd1bWVudC5cbiAgICAgKiBAcmV0dXJucyB7RnVuY3Rpb259IGEgZnVuY3Rpb24gd2hpY2ggcmVtb3ZlcyB0aGUgbGlzdGVuZXIgd2hlbiBpbnZva2VkLlxuICAgICAqL1xuICAgIHB1YmxpYyBzdWJzY3JpYmUobWVzc2FnZUFkZHJlc3NQYXR0ZXJuLCBsaXN0ZW5lcjogKG1zZzogTWVzc2FnZSkgPT4gYW55KSB7XG4gICAgICAgIGNvbnN0IGhhbmRsZXIgPSB7XG4gICAgICAgICAgICBwYXR0ZXJuIDogbmV3IFJlZ0V4cChtZXNzYWdlQWRkcmVzc1BhdHRlcm4pLFxuICAgICAgICAgICAgY2FsbEJhY2sgOiBsaXN0ZW5lclxuICAgICAgICB9O1xuICAgICAgICB0aGlzLmhhbmRsZXJzLnB1c2goaGFuZGxlcik7XG4gICAgICAgIHJldHVybiAoKSA9PiByZW1vdmUodGhpcy5oYW5kbGVycywgaGFuZGxlcik7XG4gICAgfVxuXG59XG5cbihmdW5jdGlvbiAod2luZG93LCBkb2N1bWVudCkge1xuICAgICd1c2Ugc3RyaWN0JztcbiAgICAvLyBsaXN0ZW4gYXBwLXRvLWFwcCBjb21tdW5pY2F0aW9uIHZpYSB1cmwgc2NoZW1lc1xuICAgIGZ1bmN0aW9uIHN1YlN0cmluZyhzdHIsIGJlZ2luLCBlbmQpIHtcbiAgICAgICAgZW5kID0gZW5kIDwgMCA/IHVuZGVmaW5lZCA6IGVuZDtcbiAgICAgICAgcmV0dXJuIChzdHIgJiYgYmVnaW4gPj0gMCAmJiBzdHIubGVuZ3RoID4gYmVnaW4gJiYgc3RyLnN1YnN0cmluZyhiZWdpbiwgZW5kKSkgfHwgdW5kZWZpbmVkO1xuICAgIH1cbiAgICBmdW5jdGlvbiBpbmRleE9mKHN0ciwgcGF0dGVybikge1xuICAgICAgICByZXR1cm4gc3RyICYmIHN0ci5pbmRleE9mKHBhdHRlcm4pO1xuICAgIH1cbiAgICAvKipcbiAgICAgKiByZXR1cm5zIGlmIG9BdXRoIGZsb3cgaXMgaW1wbGljaXQgb3IgcGtjZSB1c2luZyBzdGF0ZSBvYmplY3QgaW4gcmVkaXJlY3RfdXJpIHJlc3BvbnNlLlxuICAgICAqXG4gICAgICogQHBhcmFtIHt1cmx9IHN0cmluZyB3aGljaCBjb250YWlucyBhY2Nlc3MgdG9rZW4gYW5kIHN0YXRlIGluZm9ybWF0aW9uLlxuICAgICAqIEByZXR1cm5zIHtCb29sZWFufVxuICAgICAqL1xuICAgIGZ1bmN0aW9uIGdldEZsb3codXJsKSB7XG4gICAgICAgIGlmICghdXJsKSB7XG4gICAgICAgICAgICByZXR1cm4gZmFsc2U7XG4gICAgICAgIH1cbiAgICAgICAgY29uc3Qgc3RhdGVPYmogPSB1cmwubWF0Y2goL1xceyhbXildKylcXH0vKTtcbiAgICAgICAgaWYgKHN0YXRlT2JqKSB7XG4gICAgICAgICAgICBjb25zdCBwYXJzZWRPYmogPSBnZXRWYWxpZEpTT04oJ3snICsgc3RhdGVPYmpbMV0gKyAnfScpO1xuICAgICAgICAgICAgaWYgKHBhcnNlZE9iaiAmJiBwYXJzZWRPYmouZmxvdykge1xuICAgICAgICAgICAgICAgIHJldHVybiBwYXJzZWRPYmouZmxvdztcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgICByZXR1cm4gZmFsc2U7XG4gICAgfVxuICAgIGZ1bmN0aW9uIGV4dHJhY3REYXRhKHVybCkge1xuICAgICAgICBsZXQgc3RyID0gc3ViU3RyaW5nKHVybCwgaW5kZXhPZih1cmwsICc/JykgKyAxLCBpbmRleE9mKHVybCwgJyMnKSk7XG4gICAgICAgIGNvbnN0IGRhdGEgPSB7fSwgZmxvdyA9IGdldEZsb3codXJsKTtcbiAgICAgICAgLy8gYWNjZXNzIHRva2VuIGNvbWVzIGFzIGEgaGFzaCBmb3IgaW1wbGljaXQgZmxvd1xuICAgICAgICBpZiAoZmxvdyA9PT0gJ2ltcGxpY2l0Jykge1xuICAgICAgICAgICAgc3RyID0gdXJsLm1hdGNoKC9hY2Nlc3NfdG9rZW49KFteJiNdKikvKVswXTtcbiAgICAgICAgfSBlbHNlIGlmIChmbG93ID09PSAncGtjZScpIHtcbiAgICAgICAgICAgIHN0ciA9IHVybC5tYXRjaCgvY29kZT0oW14mI10qKS8pWzBdO1xuICAgICAgICB9XG4gICAgICAgIGZvckVhY2goc3BsaXQoc3RyLCAnJicpLCBlbnRyeSA9PiB7XG4gICAgICAgICAgICBjb25zdCBlc3BsaXRzID0gZW50cnkuc3BsaXQoJz0nKTtcbiAgICAgICAgICAgIGRhdGFbZXNwbGl0c1swXV0gPSBlc3BsaXRzWzFdO1xuICAgICAgICB9KTtcbiAgICAgICAgcmV0dXJuIGRhdGE7XG4gICAgfVxuICAgIGZ1bmN0aW9uIGV4dHJhY3RBZGRyZXNzKHVybCkge1xuICAgICAgICAvLyBhY2Nlc3MgdG9rZW4gY29tZXMgYXMgYSBoYXNoIGZvciBpbXBsaWNpdCBmbG93XG4gICAgICAgIGNvbnN0IGFkZHJlc3NLZXkgPSBnZXRGbG93KHVybCkgPT09ICdpbXBsaWNpdCcgPyAnIycgOiAnPyc7XG4gICAgICAgIHJldHVybiBzdWJTdHJpbmcodXJsLCBpbmRleE9mKHVybCwgJzovLycpICsgMywgaW5kZXhPZih1cmwsIGFkZHJlc3NLZXkpKTtcbiAgICB9XG4gICAgZnVuY3Rpb24gY3JlYXRlTWVzc2FnZSh1cmwpIHtcbiAgICAgICAgcmV0dXJuIHtcbiAgICAgICAgICAgICdhZGRyZXNzJzogZXh0cmFjdEFkZHJlc3ModXJsKSxcbiAgICAgICAgICAgICdkYXRhJzogZXh0cmFjdERhdGEodXJsKVxuICAgICAgICB9O1xuICAgIH1cbiAgICB3aW5kb3dbJ2hhbmRsZU9wZW5VUkwnXSA9IGZ1bmN0aW9uICh1cmwpIHtcbiAgICAgICAgY29uc3QgaGFuZGxlT3BlblVSTCA9IHdpbmRvd1snaGFuZGxlT3BlblVSTCddO1xuICAgICAgICBpZiAoaGFuZGxlT3BlblVSTC5pc1JlYWR5ICYmICFzdGFydHNXaXRoKHVybCwgJ2h0dHAnKSkge1xuICAgICAgICAgICAgY29uc3QgbWVzc2FnZSA9IGNyZWF0ZU1lc3NhZ2UodXJsKTtcbiAgICAgICAgICAgIGNvbnN0IGUgPSBuZXcgd2luZG93WydDdXN0b21FdmVudCddKCdleHRlcm5hbEFwcE1lc3NhZ2VSZWNlaXZlZCcsIHtcbiAgICAgICAgICAgICAgICAnZGV0YWlsJzoge1xuICAgICAgICAgICAgICAgICAgICAnbWVzc2FnZSc6IG1lc3NhZ2VcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9KTtcbiAgICAgICAgICAgIGRvY3VtZW50LmRpc3BhdGNoRXZlbnQoZSk7XG4gICAgICAgIH1cbiAgICAgICAgaGFuZGxlT3BlblVSTC5sYXN0VVJMID0gdXJsO1xuICAgIH07XG59KHdpbmRvdywgZG9jdW1lbnQpKTtcbiJdfQ==
114
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZXh0LWFwcC1tZXNzYWdlLnNlcnZpY2UuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9tb2JpbGUvY29yZS9zcmMvc2VydmljZXMvZXh0LWFwcC1tZXNzYWdlLnNlcnZpY2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUUzQyxPQUFPLEVBQUUsR0FBRyxFQUFFLFlBQVksRUFBRSxNQUFNLFVBQVUsQ0FBQztBQUM3QyxPQUFPLEVBQUMsT0FBTyxFQUFFLE1BQU0sRUFBRSxLQUFLLEVBQUUsVUFBVSxFQUFDLE1BQU0sV0FBVyxDQUFDOzs7QUFhN0QsTUFBTSxPQUFPLG9CQUFvQjthQUNiLGlCQUFZLEdBQUcsc0JBQXNCLEFBQXpCLENBQTBCO0lBR3RELFlBQW9CLEdBQVE7UUFBUixRQUFHLEdBQUgsR0FBRyxDQUFLO1FBRnBCLGFBQVEsR0FBRyxFQUFFLENBQUM7UUFHbEIsUUFBUSxDQUFDLGdCQUFnQixDQUFDLDRCQUE0QixFQUFFLENBQUMsQ0FBQyxFQUFFO1lBQ3hELE1BQU0sT0FBTyxHQUFHLENBQUMsQ0FBQyxDQUFDLFFBQVEsQ0FBQyxDQUFDLE9BQU8sQ0FBWSxDQUFDO1lBQ2pELElBQUksQ0FBQyxRQUFRLENBQUMsT0FBTyxDQUFDLE9BQU8sQ0FBQyxFQUFFO2dCQUM1QixNQUFNLE9BQU8sR0FBRyxPQUFPLElBQUksT0FBTyxDQUFDLE9BQU8sQ0FBQyxLQUFLLENBQUMsT0FBTyxDQUFDLE9BQU8sQ0FBQyxDQUFDO2dCQUNsRSxJQUFJLE9BQU8sSUFBSSxPQUFPLENBQUMsTUFBTSxHQUFHLENBQUMsRUFBRSxDQUFDO29CQUNoQyxPQUFPLENBQUMsUUFBUSxDQUFDLE9BQU8sQ0FBQyxDQUFDO2dCQUM5QixDQUFDO1lBQ0wsQ0FBQyxDQUFDLENBQUM7UUFDUCxDQUFDLENBQUMsQ0FBQztJQUNQLENBQUM7SUFFRDs7Ozs7OztP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QUM7SUFDaEMsQ0FBQyxDQUFDO0FBQ04sQ0FBQyxDQUFDLE1BQU0sRUFBRSxRQUFRLENBQUMsQ0FBQyxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgSW5qZWN0YWJsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuXG5pbXBvcnQgeyBBcHAsIGdldFZhbGlkSlNPTiB9IGZyb20gJ0B3bS9jb3JlJztcbmltcG9ydCB7Zm9yRWFjaCwgcmVtb3ZlLCBzcGxpdCwgc3RhcnRzV2l0aH0gZnJvbSBcImxvZGFzaC1lc1wiO1xuXG5pbnRlcmZhY2UgTWVzc2FnZSB7XG4gICAgYWRkcmVzczogc3RyaW5nO1xuICAgIGRhdGE6IE1hcDxzdHJpbmcsIHN0cmluZz47XG59XG5cbmludGVyZmFjZSBIYW5kbGVyIHtcbiAgICBwYXR0ZXJuOiBzdHJpbmc7XG4gICAgY2FsbGJhY2s6IChtc2c6IHN0cmluZykgPT4gYW55O1xufVxuXG5ASW5qZWN0YWJsZSh7IHByb3ZpZGVkSW46ICdyb290JyB9KVxuZXhwb3J0IGNsYXNzIEV4dEFwcE1lc3NhZ2VTZXJ2aWNlIHtcbiAgICBzdGF0aWMgcmVhZG9ubHkgU0VSVklDRV9OQU1FID0gJ0V4dEFwcE1lc3NhZ2VTZXJ2aWNlJztcbiAgICBwcml2YXRlIGhhbmRsZXJzID0gW107XG5cbiAgICBjb25zdHJ1Y3Rvcihwcml2YXRlIGFwcDogQXBwKSB7XG4gICAgICAgIGRvY3VtZW50LmFkZEV2ZW50TGlzdGVuZXIoJ2V4dGVybmFsQXBwTWVzc2FnZVJlY2VpdmVkJywgZSA9PiB7XG4gICAgICAgICAgICBjb25zdCBtZXNzYWdlID0gKGVbJ2RldGFpbCddLm1lc3NhZ2UpIGFzIE1lc3NhZ2U7XG4gICAgICAgICAgICB0aGlzLmhhbmRsZXJzLmZvckVhY2goaGFuZGxlciA9PiB7XG4gICAgICAgICAgICAgICAgY29uc3QgbWF0Y2hlcyA9IGhhbmRsZXIgJiYgbWVzc2FnZS5hZGRyZXNzLm1hdGNoKGhhbmRsZXIucGF0dGVybik7XG4gICAgICAgICAgICAgICAgaWYgKG1hdGNoZXMgJiYgbWF0Y2hlcy5sZW5ndGggPiAwKSB7XG4gICAgICAgICAgICAgICAgICAgIGhhbmRsZXIuY2FsbEJhY2sobWVzc2FnZSk7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfSk7XG4gICAgICAgIH0pO1xuICAgIH1cblxuICAgIC8qKlxuICAgICAqIGFkZHMgYSBsaXN0ZW5lciBmb3IgYSBtZXNzYWdlIHdob3NlIGFkZHJlc3MgbWF0Y2hlcyB3aXRoIHRoZSBnaXZlbiByZWdleCBwYXR0ZXJuLlxuICAgICAqXG4gICAgICogQHBhcmFtIHtzdHJpbmd9IG1lc3NhZ2VBZGRyZXNzUGF0dGVybiBhIHJlZ2V4IHBhdHRlcm4gdGhhdCBpcyB1c2VkIHRvIHRhcmdldCBtZXNzYWdlcyB0byBsaXN0ZW4uXG4gICAgICogQHBhcmFtIHtGdW5jdGlvbn0gbGlzdGVuZXIgZnVuY3Rpb24gdG8gaW52b2tlIHdoZW4gbWVzc2FnZSB0aGF0IG1hdGNoZXMgcmVnZXggaXMgcmVjZWl2ZWQuXG4gICAgICogICAgICAgICAgICAgICAgICBtZXNzYWdlIHJlY2VpdmVkIHdpbGwgYmUgc2VudCBhcyBmaXJzdCBhcmd1bWVudC5cbiAgICAgKiBAcmV0dXJucyB7RnVuY3Rpb259IGEgZnVuY3Rpb24gd2hpY2ggcmVtb3ZlcyB0aGUgbGlzdGVuZXIgd2hlbiBpbnZva2VkLlxuICAgICAqL1xuICAgIHB1YmxpYyBzdWJzY3JpYmUobWVzc2FnZUFkZHJlc3NQYXR0ZXJuLCBsaXN0ZW5lcjogKG1zZzogTWVzc2FnZSkgPT4gYW55KSB7XG4gICAgICAgIGNvbnN0IGhhbmRsZXIgPSB7XG4gICAgICAgICAgICBwYXR0ZXJuIDogbmV3IFJlZ0V4cChtZXNzYWdlQWRkcmVzc1BhdHRlcm4pLFxuICAgICAgICAgICAgY2FsbEJhY2sgOiBsaXN0ZW5lclxuICAgICAgICB9O1xuICAgICAgICB0aGlzLmhhbmRsZXJzLnB1c2goaGFuZGxlcik7XG4gICAgICAgIHJldHVybiAoKSA9PiByZW1vdmUodGhpcy5oYW5kbGVycywgaGFuZGxlcik7XG4gICAgfVxuXG59XG5cbihmdW5jdGlvbiAod2luZG93LCBkb2N1bWVudCkge1xuICAgICd1c2Ugc3RyaWN0JztcbiAgICAvLyBsaXN0ZW4gYXBwLXRvLWFwcCBjb21tdW5pY2F0aW9uIHZpYSB1cmwgc2NoZW1lc1xuICAgIGZ1bmN0aW9uIHN1YlN0cmluZyhzdHIsIGJlZ2luLCBlbmQpIHtcbiAgICAgICAgZW5kID0gZW5kIDwgMCA/IHVuZGVmaW5lZCA6IGVuZDtcbiAgICAgICAgcmV0dXJuIChzdHIgJiYgYmVnaW4gPj0gMCAmJiBzdHIubGVuZ3RoID4gYmVnaW4gJiYgc3RyLnN1YnN0cmluZyhiZWdpbiwgZW5kKSkgfHwgdW5kZWZpbmVkO1xuICAgIH1cbiAgICBmdW5jdGlvbiBpbmRleE9mKHN0ciwgcGF0dGVybikge1xuICAgICAgICByZXR1cm4gc3RyICYmIHN0ci5pbmRleE9mKHBhdHRlcm4pO1xuICAgIH1cbiAgICAvKipcbiAgICAgKiByZXR1cm5zIGlmIG9BdXRoIGZsb3cgaXMgaW1wbGljaXQgb3IgcGtjZSB1c2luZyBzdGF0ZSBvYmplY3QgaW4gcmVkaXJlY3RfdXJpIHJlc3BvbnNlLlxuICAgICAqXG4gICAgICogQHBhcmFtIHt1cmx9IHN0cmluZyB3aGljaCBjb250YWlucyBhY2Nlc3MgdG9rZW4gYW5kIHN0YXRlIGluZm9ybWF0aW9uLlxuICAgICAqIEByZXR1cm5zIHtCb29sZWFufVxuICAgICAqL1xuICAgIGZ1bmN0aW9uIGdldEZsb3codXJsKSB7XG4gICAgICAgIGlmICghdXJsKSB7XG4gICAgICAgICAgICByZXR1cm4gZmFsc2U7XG4gICAgICAgIH1cbiAgICAgICAgY29uc3Qgc3RhdGVPYmogPSB1cmwubWF0Y2goL1xceyhbXildKylcXH0vKTtcbiAgICAgICAgaWYgKHN0YXRlT2JqKSB7XG4gICAgICAgICAgICBjb25zdCBwYXJzZWRPYmogPSBnZXRWYWxpZEpTT04oJ3snICsgc3RhdGVPYmpbMV0gKyAnfScpO1xuICAgICAgICAgICAgaWYgKHBhcnNlZE9iaiAmJiBwYXJzZWRPYmouZmxvdykge1xuICAgICAgICAgICAgICAgIHJldHVybiBwYXJzZWRPYmouZmxvdztcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgICByZXR1cm4gZmFsc2U7XG4gICAgfVxuICAgIGZ1bmN0aW9uIGV4dHJhY3REYXRhKHVybCkge1xuICAgICAgICBsZXQgc3RyID0gc3ViU3RyaW5nKHVybCwgaW5kZXhPZih1cmwsICc/JykgKyAxLCBpbmRleE9mKHVybCwgJyMnKSk7XG4gICAgICAgIGNvbnN0IGRhdGEgPSB7fSwgZmxvdyA9IGdldEZsb3codXJsKTtcbiAgICAgICAgLy8gYWNjZXNzIHRva2VuIGNvbWVzIGFzIGEgaGFzaCBmb3IgaW1wbGljaXQgZmxvd1xuICAgICAgICBpZiAoZmxvdyA9PT0gJ2ltcGxpY2l0Jykge1xuICAgICAgICAgICAgc3RyID0gdXJsLm1hdGNoKC9hY2Nlc3NfdG9rZW49KFteJiNdKikvKVswXTtcbiAgICAgICAgfSBlbHNlIGlmIChmbG93ID09PSAncGtjZScpIHtcbiAgICAgICAgICAgIHN0ciA9IHVybC5tYXRjaCgvY29kZT0oW14mI10qKS8pWzBdO1xuICAgICAgICB9XG4gICAgICAgIGZvckVhY2goc3BsaXQoc3RyLCAnJicpLCBlbnRyeSA9PiB7XG4gICAgICAgICAgICBjb25zdCBlc3BsaXRzID0gZW50cnkuc3BsaXQoJz0nKTtcbiAgICAgICAgICAgIGRhdGFbZXNwbGl0c1swXV0gPSBlc3BsaXRzWzFdO1xuICAgICAgICB9KTtcbiAgICAgICAgcmV0dXJuIGRhdGE7XG4gICAgfVxuICAgIGZ1bmN0aW9uIGV4dHJhY3RBZGRyZXNzKHVybCkge1xuICAgICAgICAvLyBhY2Nlc3MgdG9rZW4gY29tZXMgYXMgYSBoYXNoIGZvciBpbXBsaWNpdCBmbG93XG4gICAgICAgIGNvbnN0IGFkZHJlc3NLZXkgPSBnZXRGbG93KHVybCkgPT09ICdpbXBsaWNpdCcgPyAnIycgOiAnPyc7XG4gICAgICAgIHJldHVybiBzdWJTdHJpbmcodXJsLCBpbmRleE9mKHVybCwgJzovLycpICsgMywgaW5kZXhPZih1cmwsIGFkZHJlc3NLZXkpKTtcbiAgICB9XG4gICAgZnVuY3Rpb24gY3JlYXRlTWVzc2FnZSh1cmwpIHtcbiAgICAgICAgcmV0dXJuIHtcbiAgICAgICAgICAgICdhZGRyZXNzJzogZXh0cmFjdEFkZHJlc3ModXJsKSxcbiAgICAgICAgICAgICdkYXRhJzogZXh0cmFjdERhdGEodXJsKVxuICAgICAgICB9O1xuICAgIH1cbiAgICB3aW5kb3dbJ2hhbmRsZU9wZW5VUkwnXSA9IGZ1bmN0aW9uICh1cmwpIHtcbiAgICAgICAgY29uc3QgaGFuZGxlT3BlblVSTCA9IHdpbmRvd1snaGFuZGxlT3BlblVSTCddO1xuICAgICAgICBpZiAoaGFuZGxlT3BlblVSTC5pc1JlYWR5ICYmICFzdGFydHNXaXRoKHVybCwgJ2h0dHAnKSkge1xuICAgICAgICAgICAgY29uc3QgbWVzc2FnZSA9IGNyZWF0ZU1lc3NhZ2UodXJsKTtcbiAgICAgICAgICAgIGNvbnN0IGUgPSBuZXcgd2luZG93WydDdXN0b21FdmVudCddKCdleHRlcm5hbEFwcE1lc3NhZ2VSZWNlaXZlZCcsIHtcbiAgICAgICAgICAgICAgICAnZGV0YWlsJzoge1xuICAgICAgICAgICAgICAgICAgICAnbWVzc2FnZSc6IG1lc3NhZ2VcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9KTtcbiAgICAgICAgICAgIGRvY3VtZW50LmRpc3BhdGNoRXZlbnQoZSk7XG4gICAgICAgIH1cbiAgICAgICAgaGFuZGxlT3BlblVSTC5sYXN0VVJMID0gdXJsO1xuICAgIH07XG59KHdpbmRvdywgZG9jdW1lbnQpKTtcbiJdfQ==