@wavemaker/app-ng-runtime 11.8.0-next.139432 → 11.8.0-next.141156

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 (1423) hide show
  1. app-ng-runtime/build-task/bundles/index.umd.js +10 -12
  2. app-ng-runtime/build-task/esm2022/advanced/carousel/carousel-template/carousel-template.build.mjs +2 -4
  3. app-ng-runtime/build-task/esm2022/advanced/carousel/carousel.build.mjs +1 -1
  4. app-ng-runtime/build-task/esm2022/basic/default/label/label.build.mjs +1 -1
  5. app-ng-runtime/build-task/esm2022/basic/progress/progress-bar/progress-bar.build.mjs +1 -1
  6. app-ng-runtime/build-task/esm2022/containers/accordion/accordion.build.mjs +1 -1
  7. app-ng-runtime/build-task/esm2022/containers/repeat-template.build.mjs +2 -4
  8. app-ng-runtime/build-task/esm2022/containers/tabs/tabs.build.mjs +1 -1
  9. app-ng-runtime/build-task/esm2022/data/form/form-field/form-field.build.mjs +1 -1
  10. app-ng-runtime/build-task/esm2022/data/form/form.build.mjs +2 -5
  11. app-ng-runtime/build-task/esm2022/data/list/list.build.mjs +1 -1
  12. app-ng-runtime/build-task/esm2022/data/media-list/media-list.build.mjs +1 -1
  13. app-ng-runtime/build-task/esm2022/data/table/table-column/table-column.build.mjs +1 -1
  14. app-ng-runtime/build-task/esm2022/data/table/table.build.mjs +1 -1
  15. app-ng-runtime/build-task/esm2022/dialogs/partial-dialog/partial-dialog.build.mjs +1 -1
  16. app-ng-runtime/build-task/esm2022/input/file-upload/file-upload.build.mjs +1 -1
  17. app-ng-runtime/build-task/esm2022/navigation/menu/menu.build.mjs +8 -3
  18. app-ng-runtime/build-task/esm2022/navigation/popover/popover.build.mjs +1 -1
  19. app-ng-runtime/build-task/esm2022/page/page-content/page-content.build.mjs +1 -1
  20. app-ng-runtime/build-task/esm2022/page/page.build.mjs +1 -1
  21. app-ng-runtime/build-task/esm2022/utils/utils.mjs +1 -1
  22. app-ng-runtime/build-task/fesm2022/index.mjs +11 -13
  23. app-ng-runtime/build-task/fesm2022/index.mjs.map +1 -1
  24. app-ng-runtime/components/advanced/carousel/bundles/index.umd.js +11 -21
  25. app-ng-runtime/components/advanced/carousel/carousel-template/carousel-template.directive.d.ts +2 -2
  26. app-ng-runtime/components/advanced/carousel/carousel.directive.d.ts +2 -2
  27. app-ng-runtime/components/advanced/carousel/esm2022/carousel-template/carousel-template.directive.mjs +7 -12
  28. app-ng-runtime/components/advanced/carousel/esm2022/carousel.animator.mjs +1 -1
  29. app-ng-runtime/components/advanced/carousel/esm2022/carousel.directive.mjs +7 -12
  30. app-ng-runtime/components/advanced/carousel/esm2022/carousel.module.mjs +2 -2
  31. app-ng-runtime/components/advanced/carousel/fesm2022/index.mjs +13 -23
  32. app-ng-runtime/components/advanced/carousel/fesm2022/index.mjs.map +1 -1
  33. app-ng-runtime/components/advanced/login/bundles/index.umd.js +8 -14
  34. app-ng-runtime/components/advanced/login/esm2022/login.component.mjs +9 -15
  35. app-ng-runtime/components/advanced/login/esm2022/login.module.mjs +2 -2
  36. app-ng-runtime/components/advanced/login/fesm2022/index.mjs +10 -16
  37. app-ng-runtime/components/advanced/login/fesm2022/index.mjs.map +1 -1
  38. app-ng-runtime/components/advanced/login/login.component.d.ts +2 -2
  39. app-ng-runtime/components/advanced/marquee/bundles/index.umd.js +6 -11
  40. app-ng-runtime/components/advanced/marquee/esm2022/marquee.directive.mjs +7 -12
  41. app-ng-runtime/components/advanced/marquee/esm2022/marquee.module.mjs +2 -2
  42. app-ng-runtime/components/advanced/marquee/fesm2022/index.mjs +8 -13
  43. app-ng-runtime/components/advanced/marquee/fesm2022/index.mjs.map +1 -1
  44. app-ng-runtime/components/advanced/marquee/marquee.directive.d.ts +2 -2
  45. app-ng-runtime/components/base/bundles/index.umd.js +104 -159
  46. app-ng-runtime/components/base/esm2022/components.module.mjs +2 -2
  47. app-ng-runtime/components/base/esm2022/directives/show-in-device.directive.mjs +4 -4
  48. app-ng-runtime/components/base/esm2022/pipes/custom-pipes.mjs +24 -24
  49. app-ng-runtime/components/base/esm2022/pipes/image.pipe.mjs +2 -2
  50. app-ng-runtime/components/base/esm2022/pipes/sanitize.pipe.mjs +3 -3
  51. app-ng-runtime/components/base/esm2022/pipes/trust-as.pipe.mjs +3 -3
  52. app-ng-runtime/components/base/esm2022/pipes/wm-pipe.mjs +1 -1
  53. app-ng-runtime/components/base/esm2022/utils/data-utils.mjs +2 -2
  54. app-ng-runtime/components/base/esm2022/utils/form-utils.mjs +2 -2
  55. app-ng-runtime/components/base/esm2022/utils/live-utils.mjs +1 -1
  56. app-ng-runtime/components/base/esm2022/utils/widget-utils.mjs +1 -1
  57. app-ng-runtime/components/base/esm2022/widgets/common/base/base-container.component.mjs +5 -5
  58. app-ng-runtime/components/base/esm2022/widgets/common/base/base-field-validations.mjs +1 -1
  59. app-ng-runtime/components/base/esm2022/widgets/common/base/base.component.mjs +7 -32
  60. app-ng-runtime/components/base/esm2022/widgets/common/base/dataset-aware-nav.component.mjs +5 -13
  61. app-ng-runtime/components/base/esm2022/widgets/common/base/partial-container.directive.mjs +4 -4
  62. app-ng-runtime/components/base/esm2022/widgets/common/base/stylable.component.mjs +3 -3
  63. app-ng-runtime/components/base/esm2022/widgets/common/base/text-content.directive.mjs +3 -3
  64. app-ng-runtime/components/base/esm2022/widgets/common/container/container.directive.mjs +7 -12
  65. app-ng-runtime/components/base/esm2022/widgets/common/dialog/dialog.service.mjs +3 -3
  66. app-ng-runtime/components/base/esm2022/widgets/common/item-template/item-template.directive.mjs +7 -12
  67. app-ng-runtime/components/base/esm2022/widgets/common/lazy-load/lazy-load.directive.mjs +3 -3
  68. app-ng-runtime/components/base/esm2022/widgets/common/message/message.component.mjs +10 -16
  69. app-ng-runtime/components/base/esm2022/widgets/common/partial/partial.directive.mjs +7 -12
  70. app-ng-runtime/components/base/esm2022/widgets/common/partial-param/partial-param.directive.mjs +7 -7
  71. app-ng-runtime/components/base/esm2022/widgets/common/pull-to-refresh/pull-to-refresh.mjs +1 -1
  72. app-ng-runtime/components/base/esm2022/widgets/common/redraw/redrawable.directive.mjs +4 -4
  73. app-ng-runtime/components/base/esm2022/widgets/common/repeat-template/repeat-template.directive.mjs +7 -12
  74. app-ng-runtime/components/base/esm2022/widgets/common/smooth-scroll/smooth-scroll.directive.mjs +6 -6
  75. app-ng-runtime/components/base/esm2022/widgets/framework/deviceview.mjs +1 -1
  76. app-ng-runtime/components/base/esm2022/widgets/framework/property-change-handler.mjs +1 -1
  77. app-ng-runtime/components/base/esm2022/widgets/framework/styler.mjs +1 -1
  78. app-ng-runtime/components/base/esm2022/widgets/framework/widget-props.mjs +1 -1
  79. app-ng-runtime/components/base/esm2022/widgets/framework/widget-proxy-provider.mjs +1 -1
  80. app-ng-runtime/components/base/esm2022/widgets/framework/widget-registry.mjs +1 -1
  81. app-ng-runtime/components/base/fesm2022/index.mjs +100 -157
  82. app-ng-runtime/components/base/fesm2022/index.mjs.map +1 -1
  83. app-ng-runtime/components/base/utils/data-utils.d.ts +1 -0
  84. app-ng-runtime/components/base/widgets/common/base/base-container.component.d.ts +1 -1
  85. app-ng-runtime/components/base/widgets/common/base/base.component.d.ts +2 -4
  86. app-ng-runtime/components/base/widgets/common/base/dataset-aware-nav.component.d.ts +1 -1
  87. app-ng-runtime/components/base/widgets/common/container/container.directive.d.ts +2 -2
  88. app-ng-runtime/components/base/widgets/common/item-template/item-template.directive.d.ts +2 -2
  89. app-ng-runtime/components/base/widgets/common/message/message.component.d.ts +2 -2
  90. app-ng-runtime/components/base/widgets/common/partial/partial.directive.d.ts +2 -2
  91. app-ng-runtime/components/base/widgets/common/repeat-template/repeat-template.directive.d.ts +2 -2
  92. app-ng-runtime/components/basic/default/anchor/anchor.component.d.ts +2 -2
  93. app-ng-runtime/components/basic/default/audio/audio.component.d.ts +2 -2
  94. app-ng-runtime/components/basic/default/bundles/index.umd.js +106 -149
  95. app-ng-runtime/components/basic/default/esm2022/anchor/anchor.component.mjs +27 -31
  96. app-ng-runtime/components/basic/default/esm2022/audio/audio.component.mjs +7 -13
  97. app-ng-runtime/components/basic/default/esm2022/basic.module.mjs +2 -2
  98. app-ng-runtime/components/basic/default/esm2022/html/html.directive.mjs +8 -13
  99. app-ng-runtime/components/basic/default/esm2022/icon/icon.component.mjs +14 -19
  100. app-ng-runtime/components/basic/default/esm2022/iframe/iframe.component.mjs +9 -15
  101. app-ng-runtime/components/basic/default/esm2022/label/label.directive.mjs +7 -12
  102. app-ng-runtime/components/basic/default/esm2022/picture/picture.directive.mjs +7 -12
  103. app-ng-runtime/components/basic/default/esm2022/picture/picture.props.mjs +1 -1
  104. app-ng-runtime/components/basic/default/esm2022/spinner/spinner.component.mjs +27 -30
  105. app-ng-runtime/components/basic/default/esm2022/video/video.component.mjs +17 -21
  106. app-ng-runtime/components/basic/default/fesm2022/index.mjs +108 -151
  107. app-ng-runtime/components/basic/default/fesm2022/index.mjs.map +1 -1
  108. app-ng-runtime/components/basic/default/html/html.directive.d.ts +2 -2
  109. app-ng-runtime/components/basic/default/icon/icon.component.d.ts +2 -2
  110. app-ng-runtime/components/basic/default/iframe/iframe.component.d.ts +2 -2
  111. app-ng-runtime/components/basic/default/label/label.directive.d.ts +2 -2
  112. app-ng-runtime/components/basic/default/picture/picture.directive.d.ts +2 -2
  113. app-ng-runtime/components/basic/default/spinner/spinner.component.d.ts +2 -2
  114. app-ng-runtime/components/basic/default/video/video.component.d.ts +2 -2
  115. app-ng-runtime/components/basic/progress/bundles/index.umd.js +17 -29
  116. app-ng-runtime/components/basic/progress/esm2022/progress-bar/progress-bar.component.mjs +13 -19
  117. app-ng-runtime/components/basic/progress/esm2022/progress-circle/progress-circle.component.mjs +7 -13
  118. app-ng-runtime/components/basic/progress/esm2022/progress.module.mjs +2 -2
  119. app-ng-runtime/components/basic/progress/esm2022/utils.mjs +1 -1
  120. app-ng-runtime/components/basic/progress/fesm2022/index.mjs +19 -31
  121. app-ng-runtime/components/basic/progress/fesm2022/index.mjs.map +1 -1
  122. app-ng-runtime/components/basic/progress/progress-bar/progress-bar.component.d.ts +2 -2
  123. app-ng-runtime/components/basic/progress/progress-circle/progress-circle.component.d.ts +2 -2
  124. app-ng-runtime/components/basic/rich-text-editor/bundles/index.umd.js +5 -6
  125. app-ng-runtime/components/basic/rich-text-editor/esm2022/rich-text-editor.component.mjs +5 -6
  126. app-ng-runtime/components/basic/rich-text-editor/esm2022/rich-text-editor.module.mjs +2 -2
  127. app-ng-runtime/components/basic/rich-text-editor/fesm2022/index.mjs +6 -7
  128. app-ng-runtime/components/basic/rich-text-editor/fesm2022/index.mjs.map +1 -1
  129. app-ng-runtime/components/basic/search/bundles/index.umd.js +111 -120
  130. app-ng-runtime/components/basic/search/esm2022/data-provider/data-provider.mjs +1 -1
  131. app-ng-runtime/components/basic/search/esm2022/data-provider/local-data-provider.mjs +1 -1
  132. app-ng-runtime/components/basic/search/esm2022/data-provider/remote-data-provider.mjs +1 -1
  133. app-ng-runtime/components/basic/search/esm2022/scrollable.directive.mjs +3 -3
  134. app-ng-runtime/components/basic/search/esm2022/search.component.mjs +110 -119
  135. app-ng-runtime/components/basic/search/esm2022/search.module.mjs +2 -2
  136. app-ng-runtime/components/basic/search/fesm2022/index.mjs +112 -121
  137. app-ng-runtime/components/basic/search/fesm2022/index.mjs.map +1 -1
  138. app-ng-runtime/components/basic/search/search.component.d.ts +2 -2
  139. app-ng-runtime/components/basic/tree/bundles/index.umd.js +9 -15
  140. app-ng-runtime/components/basic/tree/esm2022/tree.component.mjs +10 -16
  141. app-ng-runtime/components/basic/tree/esm2022/tree.module.mjs +2 -2
  142. app-ng-runtime/components/basic/tree/fesm2022/index.mjs +11 -17
  143. app-ng-runtime/components/basic/tree/fesm2022/index.mjs.map +1 -1
  144. app-ng-runtime/components/basic/tree/tree.component.d.ts +2 -2
  145. app-ng-runtime/components/chart/bundles/index.umd.js +22 -26
  146. app-ng-runtime/components/chart/chart.component.d.ts +2 -2
  147. app-ng-runtime/components/chart/esm2022/chart.component.mjs +22 -26
  148. app-ng-runtime/components/chart/esm2022/chart.module.mjs +2 -2
  149. app-ng-runtime/components/chart/esm2022/chart.utils.mjs +1 -1
  150. app-ng-runtime/components/chart/fesm2022/index.mjs +23 -27
  151. app-ng-runtime/components/chart/fesm2022/index.mjs.map +1 -1
  152. app-ng-runtime/components/containers/accordion/accordion-pane/accordion-pane.component.d.ts +2 -2
  153. app-ng-runtime/components/containers/accordion/accordion.directive.d.ts +2 -2
  154. app-ng-runtime/components/containers/accordion/bundles/index.umd.js +24 -35
  155. app-ng-runtime/components/containers/accordion/esm2022/accordion-pane/accordion-pane.component.mjs +17 -23
  156. app-ng-runtime/components/containers/accordion/esm2022/accordion-pane/accordion-pane.props.mjs +4 -4
  157. app-ng-runtime/components/containers/accordion/esm2022/accordion.directive.mjs +7 -12
  158. app-ng-runtime/components/containers/accordion/esm2022/accordion.module.mjs +2 -2
  159. app-ng-runtime/components/containers/accordion/fesm2022/index.mjs +26 -37
  160. app-ng-runtime/components/containers/accordion/fesm2022/index.mjs.map +1 -1
  161. app-ng-runtime/components/containers/layout-grid/bundles/index.umd.js +17 -32
  162. app-ng-runtime/components/containers/layout-grid/esm2022/layout-grid-column/layout-grid-column.directive.mjs +8 -13
  163. app-ng-runtime/components/containers/layout-grid/esm2022/layout-grid-row/layout-grid-row.directive.mjs +7 -12
  164. app-ng-runtime/components/containers/layout-grid/esm2022/layout-grid.directive.mjs +7 -12
  165. app-ng-runtime/components/containers/layout-grid/esm2022/layout-grid.module.mjs +2 -2
  166. app-ng-runtime/components/containers/layout-grid/fesm2022/index.mjs +19 -34
  167. app-ng-runtime/components/containers/layout-grid/fesm2022/index.mjs.map +1 -1
  168. app-ng-runtime/components/containers/layout-grid/layout-grid-column/layout-grid-column.directive.d.ts +2 -2
  169. app-ng-runtime/components/containers/layout-grid/layout-grid-row/layout-grid-row.directive.d.ts +2 -2
  170. app-ng-runtime/components/containers/layout-grid/layout-grid.directive.d.ts +2 -2
  171. app-ng-runtime/components/containers/linear-layout/bundles/index.umd.js +11 -21
  172. app-ng-runtime/components/containers/linear-layout/esm2022/linear-layout-item/linear-layout-item.directive.mjs +7 -12
  173. app-ng-runtime/components/containers/linear-layout/esm2022/linear-layout.directive.mjs +7 -12
  174. app-ng-runtime/components/containers/linear-layout/esm2022/linear-layout.module.mjs +2 -2
  175. app-ng-runtime/components/containers/linear-layout/fesm2022/index.mjs +13 -23
  176. app-ng-runtime/components/containers/linear-layout/fesm2022/index.mjs.map +1 -1
  177. app-ng-runtime/components/containers/linear-layout/linear-layout-item/linear-layout-item.directive.d.ts +2 -2
  178. app-ng-runtime/components/containers/linear-layout/linear-layout.directive.d.ts +2 -2
  179. app-ng-runtime/components/containers/panel/bundles/index.umd.js +80 -80
  180. app-ng-runtime/components/containers/panel/esm2022/panel.component.mjs +81 -81
  181. app-ng-runtime/components/containers/panel/esm2022/panel.module.mjs +2 -2
  182. app-ng-runtime/components/containers/panel/fesm2022/index.mjs +82 -82
  183. app-ng-runtime/components/containers/panel/fesm2022/index.mjs.map +1 -1
  184. app-ng-runtime/components/containers/panel/panel.component.d.ts +2 -2
  185. app-ng-runtime/components/containers/tabs/bundles/index.umd.js +47 -58
  186. app-ng-runtime/components/containers/tabs/esm2022/tab-pane/tab-pane.component.mjs +8 -14
  187. app-ng-runtime/components/containers/tabs/esm2022/tab-pane/tab-pane.props.mjs +4 -4
  188. app-ng-runtime/components/containers/tabs/esm2022/tabs.animator.mjs +1 -1
  189. app-ng-runtime/components/containers/tabs/esm2022/tabs.component.mjs +39 -44
  190. app-ng-runtime/components/containers/tabs/esm2022/tabs.module.mjs +2 -2
  191. app-ng-runtime/components/containers/tabs/esm2022/tabs.props.mjs +1 -1
  192. app-ng-runtime/components/containers/tabs/fesm2022/index.mjs +49 -60
  193. app-ng-runtime/components/containers/tabs/fesm2022/index.mjs.map +1 -1
  194. app-ng-runtime/components/containers/tabs/tab-pane/tab-pane.component.d.ts +2 -2
  195. app-ng-runtime/components/containers/tabs/tabs.component.d.ts +2 -2
  196. app-ng-runtime/components/containers/tile/bundles/index.umd.js +6 -11
  197. app-ng-runtime/components/containers/tile/esm2022/tile.directive.mjs +7 -12
  198. app-ng-runtime/components/containers/tile/esm2022/tile.module.mjs +2 -2
  199. app-ng-runtime/components/containers/tile/fesm2022/index.mjs +8 -13
  200. app-ng-runtime/components/containers/tile/fesm2022/index.mjs.map +1 -1
  201. app-ng-runtime/components/containers/tile/tile.directive.d.ts +2 -2
  202. app-ng-runtime/components/containers/wizard/bundles/index.umd.js +98 -102
  203. app-ng-runtime/components/containers/wizard/esm2022/wizard-step/wizard-step.directive.mjs +8 -13
  204. app-ng-runtime/components/containers/wizard/esm2022/wizard.component.mjs +93 -92
  205. app-ng-runtime/components/containers/wizard/esm2022/wizard.module.mjs +2 -2
  206. app-ng-runtime/components/containers/wizard/fesm2022/index.mjs +100 -104
  207. app-ng-runtime/components/containers/wizard/fesm2022/index.mjs.map +1 -1
  208. app-ng-runtime/components/containers/wizard/wizard-step/wizard-step.directive.d.ts +2 -2
  209. app-ng-runtime/components/containers/wizard/wizard.component.d.ts +2 -2
  210. app-ng-runtime/components/data/card/bundles/index.umd.js +50 -70
  211. app-ng-runtime/components/data/card/card-actions/card-actions.directive.d.ts +2 -2
  212. app-ng-runtime/components/data/card/card-content/card-content.component.d.ts +2 -2
  213. app-ng-runtime/components/data/card/card-footer/card-footer.directive.d.ts +2 -2
  214. app-ng-runtime/components/data/card/card.component.d.ts +2 -2
  215. app-ng-runtime/components/data/card/esm2022/card-actions/card-actions.directive.mjs +7 -12
  216. app-ng-runtime/components/data/card/esm2022/card-content/card-content.component.mjs +9 -15
  217. app-ng-runtime/components/data/card/esm2022/card-footer/card-footer.directive.mjs +7 -12
  218. app-ng-runtime/components/data/card/esm2022/card.component.mjs +34 -38
  219. app-ng-runtime/components/data/card/esm2022/card.module.mjs +2 -2
  220. app-ng-runtime/components/data/card/fesm2022/index.mjs +52 -72
  221. app-ng-runtime/components/data/card/fesm2022/index.mjs.map +1 -1
  222. app-ng-runtime/components/data/form/bundles/index.umd.js +115 -127
  223. app-ng-runtime/components/data/form/esm2022/form-action/form-action.directive.mjs +8 -13
  224. app-ng-runtime/components/data/form/esm2022/form-field/form-field.directive.mjs +7 -13
  225. app-ng-runtime/components/data/form/esm2022/form-field/form-field.props.mjs +1 -1
  226. app-ng-runtime/components/data/form/esm2022/form-widget.directive.mjs +4 -4
  227. app-ng-runtime/components/data/form/esm2022/form.component.mjs +84 -87
  228. app-ng-runtime/components/data/form/esm2022/form.module.mjs +2 -2
  229. app-ng-runtime/components/data/form/esm2022/form.props.mjs +1 -1
  230. app-ng-runtime/components/data/form/esm2022/live-actions/dependson.directive.mjs +4 -4
  231. app-ng-runtime/components/data/form/esm2022/live-actions/live-actions.directive.mjs +4 -4
  232. app-ng-runtime/components/data/form/esm2022/live-filter/live-filter.directive.mjs +5 -5
  233. app-ng-runtime/components/data/form/esm2022/live-form/live-form.directive.mjs +8 -6
  234. app-ng-runtime/components/data/form/fesm2022/index.mjs +117 -129
  235. app-ng-runtime/components/data/form/fesm2022/index.mjs.map +1 -1
  236. app-ng-runtime/components/data/form/form-action/form-action.directive.d.ts +2 -2
  237. app-ng-runtime/components/data/form/form-field/form-field.directive.d.ts +2 -2
  238. app-ng-runtime/components/data/form/form.component.d.ts +2 -2
  239. app-ng-runtime/components/data/list/bundles/index.umd.js +142 -142
  240. app-ng-runtime/components/data/list/esm2022/list-item.directive.mjs +4 -4
  241. app-ng-runtime/components/data/list/esm2022/list.animator.mjs +1 -1
  242. app-ng-runtime/components/data/list/esm2022/list.component.mjs +140 -140
  243. app-ng-runtime/components/data/list/esm2022/list.module.mjs +2 -2
  244. app-ng-runtime/components/data/list/fesm2022/index.mjs +144 -144
  245. app-ng-runtime/components/data/list/fesm2022/index.mjs.map +1 -1
  246. app-ng-runtime/components/data/list/list.component.d.ts +2 -2
  247. app-ng-runtime/components/data/live-table/bundles/index.umd.js +7 -13
  248. app-ng-runtime/components/data/live-table/esm2022/live-table.component.mjs +8 -14
  249. app-ng-runtime/components/data/live-table/esm2022/live-table.module.mjs +2 -2
  250. app-ng-runtime/components/data/live-table/fesm2022/index.mjs +9 -15
  251. app-ng-runtime/components/data/live-table/fesm2022/index.mjs.map +1 -1
  252. app-ng-runtime/components/data/live-table/live-table.component.d.ts +2 -2
  253. app-ng-runtime/components/data/pagination/bundles/index.umd.js +96 -98
  254. app-ng-runtime/components/data/pagination/esm2022/pagination.component.mjs +97 -99
  255. app-ng-runtime/components/data/pagination/esm2022/pagination.module.mjs +2 -2
  256. app-ng-runtime/components/data/pagination/fesm2022/index.mjs +98 -100
  257. app-ng-runtime/components/data/pagination/fesm2022/index.mjs.map +1 -1
  258. app-ng-runtime/components/data/pagination/pagination.component.d.ts +2 -2
  259. app-ng-runtime/components/data/table/bundles/index.umd.js +106 -128
  260. app-ng-runtime/components/data/table/esm2022/table-action/table-action.directive.mjs +8 -13
  261. app-ng-runtime/components/data/table/esm2022/table-column/table-column.directive.mjs +17 -13
  262. app-ng-runtime/components/data/table/esm2022/table-column/table-column.props.mjs +2 -2
  263. app-ng-runtime/components/data/table/esm2022/table-column-group/table-column-group.directive.mjs +8 -13
  264. app-ng-runtime/components/data/table/esm2022/table-cud.directive.mjs +4 -4
  265. app-ng-runtime/components/data/table/esm2022/table-filter.directive.mjs +4 -4
  266. app-ng-runtime/components/data/table/esm2022/table-row/table-row.directive.mjs +8 -13
  267. app-ng-runtime/components/data/table/esm2022/table-row-action/table-row-action.directive.mjs +7 -12
  268. app-ng-runtime/components/data/table/esm2022/table.component.mjs +60 -66
  269. app-ng-runtime/components/data/table/esm2022/table.module.mjs +2 -2
  270. app-ng-runtime/components/data/table/esm2022/table.props.mjs +2 -2
  271. app-ng-runtime/components/data/table/fesm2022/index.mjs +108 -130
  272. app-ng-runtime/components/data/table/fesm2022/index.mjs.map +1 -1
  273. app-ng-runtime/components/data/table/table-action/table-action.directive.d.ts +2 -2
  274. app-ng-runtime/components/data/table/table-column/table-column.directive.d.ts +2 -2
  275. app-ng-runtime/components/data/table/table-column-group/table-column-group.directive.d.ts +2 -2
  276. app-ng-runtime/components/data/table/table-row/table-row.directive.d.ts +2 -2
  277. app-ng-runtime/components/data/table/table-row-action/table-row-action.directive.d.ts +2 -2
  278. app-ng-runtime/components/data/table/table.component.d.ts +2 -2
  279. app-ng-runtime/components/dialogs/alert-dialog/alert-dialog.component.d.ts +2 -2
  280. app-ng-runtime/components/dialogs/alert-dialog/bundles/index.umd.js +9 -15
  281. app-ng-runtime/components/dialogs/alert-dialog/esm2022/alert-dialog.component.mjs +10 -16
  282. app-ng-runtime/components/dialogs/alert-dialog/esm2022/alert-dialog.module.mjs +2 -2
  283. app-ng-runtime/components/dialogs/alert-dialog/fesm2022/index.mjs +11 -17
  284. app-ng-runtime/components/dialogs/alert-dialog/fesm2022/index.mjs.map +1 -1
  285. app-ng-runtime/components/dialogs/confirm-dialog/bundles/index.umd.js +11 -17
  286. app-ng-runtime/components/dialogs/confirm-dialog/confirm-dialog.component.d.ts +2 -2
  287. app-ng-runtime/components/dialogs/confirm-dialog/esm2022/confirm-dialog.component.mjs +12 -18
  288. app-ng-runtime/components/dialogs/confirm-dialog/esm2022/confirm-dialog.module.mjs +2 -2
  289. app-ng-runtime/components/dialogs/confirm-dialog/fesm2022/index.mjs +13 -19
  290. app-ng-runtime/components/dialogs/confirm-dialog/fesm2022/index.mjs.map +1 -1
  291. app-ng-runtime/components/dialogs/default/base-dialog.d.ts +2 -2
  292. app-ng-runtime/components/dialogs/default/bundles/index.umd.js +69 -73
  293. app-ng-runtime/components/dialogs/default/dialog-footer/dialog-footer.directive.d.ts +2 -2
  294. app-ng-runtime/components/dialogs/default/esm2022/base-dialog.mjs +8 -13
  295. app-ng-runtime/components/dialogs/default/esm2022/dialog-body/dialog-body.directive.mjs +4 -4
  296. app-ng-runtime/components/dialogs/default/esm2022/dialog-footer/dialog-footer.directive.mjs +7 -12
  297. app-ng-runtime/components/dialogs/default/esm2022/dialog-header/dialog-header.component.mjs +55 -49
  298. app-ng-runtime/components/dialogs/default/esm2022/dialog.module.mjs +2 -2
  299. app-ng-runtime/components/dialogs/default/fesm2022/index.mjs +71 -75
  300. app-ng-runtime/components/dialogs/default/fesm2022/index.mjs.map +1 -1
  301. app-ng-runtime/components/dialogs/design-dialog/bundles/index.umd.js +14 -20
  302. app-ng-runtime/components/dialogs/design-dialog/dialog.component.d.ts +2 -2
  303. app-ng-runtime/components/dialogs/design-dialog/esm2022/design-dialog.module.mjs +2 -2
  304. app-ng-runtime/components/dialogs/design-dialog/esm2022/dialog.component.mjs +15 -21
  305. app-ng-runtime/components/dialogs/design-dialog/fesm2022/index.mjs +16 -22
  306. app-ng-runtime/components/dialogs/design-dialog/fesm2022/index.mjs.map +1 -1
  307. app-ng-runtime/components/dialogs/iframe-dialog/bundles/index.umd.js +14 -20
  308. app-ng-runtime/components/dialogs/iframe-dialog/esm2022/iframe-dialog.component.mjs +15 -21
  309. app-ng-runtime/components/dialogs/iframe-dialog/esm2022/iframe-dialog.module.mjs +2 -2
  310. app-ng-runtime/components/dialogs/iframe-dialog/fesm2022/index.mjs +16 -22
  311. app-ng-runtime/components/dialogs/iframe-dialog/fesm2022/index.mjs.map +1 -1
  312. app-ng-runtime/components/dialogs/iframe-dialog/iframe-dialog.component.d.ts +2 -2
  313. app-ng-runtime/components/dialogs/login-dialog/bundles/index.umd.js +4 -4
  314. app-ng-runtime/components/dialogs/login-dialog/esm2022/login-dialog.directive.mjs +4 -4
  315. app-ng-runtime/components/dialogs/login-dialog/esm2022/login-dialog.module.mjs +2 -2
  316. app-ng-runtime/components/dialogs/login-dialog/fesm2022/index.mjs +4 -4
  317. app-ng-runtime/components/dialogs/login-dialog/fesm2022/index.mjs.map +1 -1
  318. app-ng-runtime/components/dialogs/partial-dialog/bundles/index.umd.js +10 -16
  319. app-ng-runtime/components/dialogs/partial-dialog/esm2022/partial-dialog.component.mjs +11 -17
  320. app-ng-runtime/components/dialogs/partial-dialog/esm2022/partial-dialog.module.mjs +2 -2
  321. app-ng-runtime/components/dialogs/partial-dialog/fesm2022/index.mjs +12 -18
  322. app-ng-runtime/components/dialogs/partial-dialog/fesm2022/index.mjs.map +1 -1
  323. app-ng-runtime/components/dialogs/partial-dialog/partial-dialog.component.d.ts +2 -2
  324. app-ng-runtime/components/input/calendar/bundles/index.umd.js +8 -14
  325. app-ng-runtime/components/input/calendar/calendar.component.d.ts +2 -2
  326. app-ng-runtime/components/input/calendar/esm2022/calendar.component.mjs +9 -15
  327. app-ng-runtime/components/input/calendar/esm2022/calendar.module.mjs +2 -2
  328. app-ng-runtime/components/input/calendar/fesm2022/index.mjs +10 -16
  329. app-ng-runtime/components/input/calendar/fesm2022/index.mjs.map +1 -1
  330. app-ng-runtime/components/input/chips/bundles/index.umd.js +34 -41
  331. app-ng-runtime/components/input/chips/chips.component.d.ts +2 -2
  332. app-ng-runtime/components/input/chips/esm2022/chips.component.mjs +35 -42
  333. app-ng-runtime/components/input/chips/esm2022/chips.module.mjs +2 -2
  334. app-ng-runtime/components/input/chips/fesm2022/index.mjs +35 -42
  335. app-ng-runtime/components/input/chips/fesm2022/index.mjs.map +1 -1
  336. app-ng-runtime/components/input/color-picker/bundles/index.umd.js +11 -24
  337. app-ng-runtime/components/input/color-picker/color-picker.component.d.ts +2 -2
  338. app-ng-runtime/components/input/color-picker/esm2022/color-picker.component.mjs +12 -25
  339. app-ng-runtime/components/input/color-picker/esm2022/color-picker.module.mjs +2 -2
  340. app-ng-runtime/components/input/color-picker/fesm2022/index.mjs +12 -25
  341. app-ng-runtime/components/input/color-picker/fesm2022/index.mjs.map +1 -1
  342. app-ng-runtime/components/input/currency/bundles/index.umd.js +11 -18
  343. app-ng-runtime/components/input/currency/currency.component.d.ts +2 -2
  344. app-ng-runtime/components/input/currency/esm2022/currency.component.mjs +12 -19
  345. app-ng-runtime/components/input/currency/esm2022/currency.module.mjs +2 -2
  346. app-ng-runtime/components/input/currency/fesm2022/index.mjs +12 -19
  347. app-ng-runtime/components/input/currency/fesm2022/index.mjs.map +1 -1
  348. app-ng-runtime/components/input/default/bundles/index.umd.js +416 -540
  349. app-ng-runtime/components/input/default/button/button.component.d.ts +2 -2
  350. app-ng-runtime/components/input/default/button-group/button-group.directive.d.ts +2 -2
  351. app-ng-runtime/components/input/default/checkbox/checkbox.component.d.ts +2 -2
  352. app-ng-runtime/components/input/default/checkboxset/checkboxset.component.d.ts +2 -2
  353. app-ng-runtime/components/input/default/composite/composite.directive.d.ts +2 -2
  354. app-ng-runtime/components/input/default/esm2022/base-form-custom.component.mjs +3 -3
  355. app-ng-runtime/components/input/default/esm2022/base-form.component.mjs +4 -4
  356. app-ng-runtime/components/input/default/esm2022/button/button.component.mjs +28 -32
  357. app-ng-runtime/components/input/default/esm2022/button-group/button-group.directive.mjs +7 -12
  358. app-ng-runtime/components/input/default/esm2022/caption-position.directive.mjs +4 -5
  359. app-ng-runtime/components/input/default/esm2022/checkbox/checkbox.component.mjs +14 -23
  360. app-ng-runtime/components/input/default/esm2022/checkboxset/checkboxset.component.mjs +101 -103
  361. app-ng-runtime/components/input/default/esm2022/composite/composite.directive.mjs +7 -12
  362. app-ng-runtime/components/input/default/esm2022/dataset-aware-form.component.mjs +4 -4
  363. app-ng-runtime/components/input/default/esm2022/input.module.mjs +2 -2
  364. app-ng-runtime/components/input/default/esm2022/number/number.component.mjs +10 -17
  365. app-ng-runtime/components/input/default/esm2022/radioset/radioset.component.mjs +101 -103
  366. app-ng-runtime/components/input/default/esm2022/select/select.component.mjs +55 -72
  367. app-ng-runtime/components/input/default/esm2022/switch/switch.component.mjs +28 -34
  368. app-ng-runtime/components/input/default/esm2022/text/base/base-input.mjs +8 -13
  369. app-ng-runtime/components/input/default/esm2022/text/calendar/input-calendar.component.mjs +11 -21
  370. app-ng-runtime/components/input/default/esm2022/text/color/input-color.component.mjs +11 -21
  371. app-ng-runtime/components/input/default/esm2022/text/email/input-email.component.mjs +11 -20
  372. app-ng-runtime/components/input/default/esm2022/text/locale/number-locale.mjs +7 -16
  373. app-ng-runtime/components/input/default/esm2022/text/number/input-number.component.mjs +12 -21
  374. app-ng-runtime/components/input/default/esm2022/text/text/input-text.component.mjs +11 -20
  375. app-ng-runtime/components/input/default/esm2022/textarea/textarea.component.mjs +12 -21
  376. app-ng-runtime/components/input/default/fesm2022/index.mjs +414 -540
  377. app-ng-runtime/components/input/default/fesm2022/index.mjs.map +1 -1
  378. app-ng-runtime/components/input/default/number/number.component.d.ts +2 -2
  379. app-ng-runtime/components/input/default/radioset/radioset.component.d.ts +2 -2
  380. app-ng-runtime/components/input/default/select/select.component.d.ts +3 -4
  381. app-ng-runtime/components/input/default/switch/switch.component.d.ts +2 -2
  382. app-ng-runtime/components/input/default/text/base/base-input.d.ts +2 -2
  383. app-ng-runtime/components/input/default/text/calendar/input-calendar.component.d.ts +2 -2
  384. app-ng-runtime/components/input/default/text/color/input-color.component.d.ts +2 -2
  385. app-ng-runtime/components/input/default/text/email/input-email.component.d.ts +2 -2
  386. app-ng-runtime/components/input/default/text/locale/number-locale.d.ts +1 -1
  387. app-ng-runtime/components/input/default/text/number/input-number.component.d.ts +2 -2
  388. app-ng-runtime/components/input/default/text/text/input-text.component.d.ts +2 -2
  389. app-ng-runtime/components/input/default/textarea/textarea.component.d.ts +2 -2
  390. app-ng-runtime/components/input/epoch/base-date-time.component.d.ts +1 -1
  391. app-ng-runtime/components/input/epoch/bundles/index.umd.js +112 -145
  392. app-ng-runtime/components/input/epoch/date/date.component.d.ts +2 -2
  393. app-ng-runtime/components/input/epoch/date-time/date-time.component.d.ts +2 -2
  394. app-ng-runtime/components/input/epoch/esm2022/base-date-time.component.mjs +6 -11
  395. app-ng-runtime/components/input/epoch/esm2022/date/date.component.mjs +19 -26
  396. app-ng-runtime/components/input/epoch/esm2022/date/date.props.mjs +2 -2
  397. app-ng-runtime/components/input/epoch/esm2022/date/imaskUtil.mjs +1 -1
  398. app-ng-runtime/components/input/epoch/esm2022/date-time/date-time-picker.component.mjs +40 -40
  399. app-ng-runtime/components/input/epoch/esm2022/date-time/date-time.component.mjs +31 -41
  400. app-ng-runtime/components/input/epoch/esm2022/epoch.module.mjs +2 -2
  401. app-ng-runtime/components/input/epoch/esm2022/picker/picker.component.mjs +5 -7
  402. app-ng-runtime/components/input/epoch/esm2022/time/time.component.mjs +19 -28
  403. app-ng-runtime/components/input/epoch/fesm2022/index.mjs +114 -147
  404. app-ng-runtime/components/input/epoch/fesm2022/index.mjs.map +1 -1
  405. app-ng-runtime/components/input/epoch/time/time.component.d.ts +2 -2
  406. app-ng-runtime/components/input/file-upload/bundles/index.umd.js +121 -119
  407. app-ng-runtime/components/input/file-upload/esm2022/file-upload.component.mjs +122 -120
  408. app-ng-runtime/components/input/file-upload/esm2022/file-upload.module.mjs +2 -2
  409. app-ng-runtime/components/input/file-upload/fesm2022/index.mjs +123 -121
  410. app-ng-runtime/components/input/file-upload/fesm2022/index.mjs.map +1 -1
  411. app-ng-runtime/components/input/file-upload/file-upload.component.d.ts +2 -2
  412. app-ng-runtime/components/input/rating/bundles/index.umd.js +39 -46
  413. app-ng-runtime/components/input/rating/esm2022/rating.component.mjs +40 -47
  414. app-ng-runtime/components/input/rating/esm2022/rating.module.mjs +2 -2
  415. app-ng-runtime/components/input/rating/fesm2022/index.mjs +40 -47
  416. app-ng-runtime/components/input/rating/fesm2022/index.mjs.map +1 -1
  417. app-ng-runtime/components/input/rating/rating.component.d.ts +2 -2
  418. app-ng-runtime/components/input/slider/bundles/index.umd.js +12 -21
  419. app-ng-runtime/components/input/slider/esm2022/slider.component.mjs +13 -22
  420. app-ng-runtime/components/input/slider/esm2022/slider.module.mjs +2 -2
  421. app-ng-runtime/components/input/slider/fesm2022/index.mjs +13 -22
  422. app-ng-runtime/components/input/slider/fesm2022/index.mjs.map +1 -1
  423. app-ng-runtime/components/input/slider/slider.component.d.ts +2 -2
  424. app-ng-runtime/components/navigation/breadcrumb/breadcrumb.component.d.ts +2 -2
  425. app-ng-runtime/components/navigation/breadcrumb/bundles/index.umd.js +28 -33
  426. app-ng-runtime/components/navigation/breadcrumb/esm2022/breadcrumb.component.mjs +29 -34
  427. app-ng-runtime/components/navigation/breadcrumb/esm2022/breadcrumb.module.mjs +2 -2
  428. app-ng-runtime/components/navigation/breadcrumb/fesm2022/index.mjs +30 -35
  429. app-ng-runtime/components/navigation/breadcrumb/fesm2022/index.mjs.map +1 -1
  430. app-ng-runtime/components/navigation/menu/bundles/index.umd.js +117 -133
  431. app-ng-runtime/components/navigation/menu/esm2022/menu-adapator.component.mjs +6 -11
  432. app-ng-runtime/components/navigation/menu/esm2022/menu-dropdown/menu-dropdown.component.mjs +4 -5
  433. app-ng-runtime/components/navigation/menu/esm2022/menu-dropdown-item/menu-dropdown-item.component.mjs +23 -23
  434. app-ng-runtime/components/navigation/menu/esm2022/menu.component.mjs +34 -37
  435. app-ng-runtime/components/navigation/menu/esm2022/menu.module.mjs +2 -2
  436. app-ng-runtime/components/navigation/menu/esm2022/nav/nav-item/nav-item.directive.mjs +7 -12
  437. app-ng-runtime/components/navigation/menu/esm2022/nav/nav.component.mjs +50 -52
  438. app-ng-runtime/components/navigation/menu/esm2022/nav/navigation-control.directive.mjs +3 -3
  439. app-ng-runtime/components/navigation/menu/fesm2022/index.mjs +119 -135
  440. app-ng-runtime/components/navigation/menu/fesm2022/index.mjs.map +1 -1
  441. app-ng-runtime/components/navigation/menu/menu-adapator.component.d.ts +1 -1
  442. app-ng-runtime/components/navigation/menu/menu.component.d.ts +2 -2
  443. app-ng-runtime/components/navigation/menu/nav/nav-item/nav-item.directive.d.ts +2 -2
  444. app-ng-runtime/components/navigation/menu/nav/nav.component.d.ts +2 -2
  445. app-ng-runtime/components/navigation/navbar/bundles/index.umd.js +22 -29
  446. app-ng-runtime/components/navigation/navbar/esm2022/navbar.component.mjs +23 -30
  447. app-ng-runtime/components/navigation/navbar/esm2022/navbar.module.mjs +2 -2
  448. app-ng-runtime/components/navigation/navbar/fesm2022/index.mjs +24 -31
  449. app-ng-runtime/components/navigation/navbar/fesm2022/index.mjs.map +1 -1
  450. app-ng-runtime/components/navigation/navbar/navbar.component.d.ts +2 -2
  451. app-ng-runtime/components/navigation/popover/bundles/index.umd.js +11 -18
  452. app-ng-runtime/components/navigation/popover/esm2022/popover.component.mjs +12 -19
  453. app-ng-runtime/components/navigation/popover/esm2022/popover.module.mjs +2 -2
  454. app-ng-runtime/components/navigation/popover/fesm2022/index.mjs +13 -20
  455. app-ng-runtime/components/navigation/popover/fesm2022/index.mjs.map +1 -1
  456. app-ng-runtime/components/navigation/popover/popover.component.d.ts +2 -2
  457. app-ng-runtime/components/page/default/bundles/index.umd.js +31 -63
  458. app-ng-runtime/components/page/default/content/content.component.d.ts +2 -2
  459. app-ng-runtime/components/page/default/esm2022/content/content.component.mjs +7 -13
  460. app-ng-runtime/components/page/default/esm2022/layout.directive.mjs +7 -12
  461. app-ng-runtime/components/page/default/esm2022/page-content/page-content.component.mjs +7 -13
  462. app-ng-runtime/components/page/default/esm2022/page.directive.mjs +7 -12
  463. app-ng-runtime/components/page/default/esm2022/page.module.mjs +2 -2
  464. app-ng-runtime/components/page/default/esm2022/router-outlet.directive.mjs +7 -12
  465. app-ng-runtime/components/page/default/esm2022/spa-page.directive.mjs +7 -12
  466. app-ng-runtime/components/page/default/fesm2022/index.mjs +33 -65
  467. app-ng-runtime/components/page/default/fesm2022/index.mjs.map +1 -1
  468. app-ng-runtime/components/page/default/layout.directive.d.ts +2 -2
  469. app-ng-runtime/components/page/default/page-content/page-content.component.d.ts +2 -2
  470. app-ng-runtime/components/page/default/page.directive.d.ts +2 -2
  471. app-ng-runtime/components/page/default/router-outlet.directive.d.ts +2 -2
  472. app-ng-runtime/components/page/default/spa-page.directive.d.ts +2 -2
  473. app-ng-runtime/components/page/footer/bundles/index.umd.js +6 -11
  474. app-ng-runtime/components/page/footer/esm2022/footer.directive.mjs +7 -12
  475. app-ng-runtime/components/page/footer/esm2022/footer.module.mjs +2 -2
  476. app-ng-runtime/components/page/footer/fesm2022/index.mjs +8 -13
  477. app-ng-runtime/components/page/footer/fesm2022/index.mjs.map +1 -1
  478. app-ng-runtime/components/page/footer/footer.directive.d.ts +2 -2
  479. app-ng-runtime/components/page/header/bundles/index.umd.js +6 -12
  480. app-ng-runtime/components/page/header/esm2022/header.component.mjs +7 -13
  481. app-ng-runtime/components/page/header/esm2022/header.module.mjs +2 -2
  482. app-ng-runtime/components/page/header/fesm2022/index.mjs +8 -14
  483. app-ng-runtime/components/page/header/fesm2022/index.mjs.map +1 -1
  484. app-ng-runtime/components/page/header/header.component.d.ts +2 -2
  485. app-ng-runtime/components/page/left-panel/bundles/index.umd.js +7 -12
  486. app-ng-runtime/components/page/left-panel/esm2022/left-panel.animator.mjs +1 -1
  487. app-ng-runtime/components/page/left-panel/esm2022/left-panel.directive.mjs +8 -13
  488. app-ng-runtime/components/page/left-panel/esm2022/left-panel.module.mjs +2 -2
  489. app-ng-runtime/components/page/left-panel/fesm2022/index.mjs +9 -14
  490. app-ng-runtime/components/page/left-panel/fesm2022/index.mjs.map +1 -1
  491. app-ng-runtime/components/page/left-panel/left-panel.directive.d.ts +2 -2
  492. app-ng-runtime/components/page/right-panel/bundles/index.umd.js +6 -11
  493. app-ng-runtime/components/page/right-panel/esm2022/right-panel.directive.mjs +7 -12
  494. app-ng-runtime/components/page/right-panel/esm2022/right-panel.module.mjs +2 -2
  495. app-ng-runtime/components/page/right-panel/fesm2022/index.mjs +8 -13
  496. app-ng-runtime/components/page/right-panel/fesm2022/index.mjs.map +1 -1
  497. app-ng-runtime/components/page/right-panel/right-panel.directive.d.ts +2 -2
  498. app-ng-runtime/components/page/top-nav/bundles/index.umd.js +6 -11
  499. app-ng-runtime/components/page/top-nav/esm2022/top-nav.directive.mjs +7 -12
  500. app-ng-runtime/components/page/top-nav/esm2022/top-nav.module.mjs +2 -2
  501. app-ng-runtime/components/page/top-nav/fesm2022/index.mjs +8 -13
  502. app-ng-runtime/components/page/top-nav/fesm2022/index.mjs.map +1 -1
  503. app-ng-runtime/components/page/top-nav/top-nav.directive.d.ts +2 -2
  504. app-ng-runtime/components/prefab/bundles/index.umd.js +12 -22
  505. app-ng-runtime/components/prefab/esm2022/prefab-container/prefab-container.directive.mjs +7 -12
  506. app-ng-runtime/components/prefab/esm2022/prefab.directive.mjs +8 -13
  507. app-ng-runtime/components/prefab/esm2022/prefab.module.mjs +2 -2
  508. app-ng-runtime/components/prefab/fesm2022/index.mjs +13 -23
  509. app-ng-runtime/components/prefab/fesm2022/index.mjs.map +1 -1
  510. app-ng-runtime/components/prefab/prefab-container/prefab-container.directive.d.ts +2 -2
  511. app-ng-runtime/components/prefab/prefab.directive.d.ts +2 -2
  512. app-ng-runtime/core/bundles/index.umd.js +16 -16
  513. app-ng-runtime/core/esm2022/core.module.mjs +2 -2
  514. app-ng-runtime/core/esm2022/services/constant.service.mjs +2 -2
  515. app-ng-runtime/core/esm2022/services/field-type.service.mjs +3 -3
  516. app-ng-runtime/core/esm2022/services/field-widget.service.mjs +3 -3
  517. app-ng-runtime/core/esm2022/services/pagination.service.mjs +2 -2
  518. app-ng-runtime/core/esm2022/services/script-loader.service.mjs +3 -3
  519. app-ng-runtime/core/esm2022/services/state-persistence.service.mjs +2 -2
  520. app-ng-runtime/core/esm2022/services/user-custom-pipe-manager.service.mjs +2 -2
  521. app-ng-runtime/core/esm2022/services/utils.service.mjs +3 -3
  522. app-ng-runtime/core/esm2022/services/viewport.service.mjs +3 -3
  523. app-ng-runtime/core/esm2022/utils/build-utils.mjs +1 -1
  524. app-ng-runtime/core/esm2022/utils/dom.mjs +1 -1
  525. app-ng-runtime/core/esm2022/utils/event-notifier.mjs +1 -1
  526. app-ng-runtime/core/esm2022/utils/expression-parser.mjs +2 -2
  527. app-ng-runtime/core/esm2022/utils/id-generator.mjs +1 -1
  528. app-ng-runtime/core/esm2022/utils/lru-cache.mjs +1 -1
  529. app-ng-runtime/core/esm2022/utils/utils.mjs +1 -1
  530. app-ng-runtime/core/esm2022/utils/watcher.mjs +1 -1
  531. app-ng-runtime/core/esm2022/utils/wm-project-properties.mjs +1 -1
  532. app-ng-runtime/core/fesm2022/index.mjs +17 -17
  533. app-ng-runtime/core/fesm2022/index.mjs.map +1 -1
  534. app-ng-runtime/http/bundles/index.umd.js +3 -3
  535. app-ng-runtime/http/esm2022/http-service.module.mjs +2 -2
  536. app-ng-runtime/http/esm2022/http.service.mjs +3 -3
  537. app-ng-runtime/http/fesm2022/index.mjs +3 -3
  538. app-ng-runtime/http/fesm2022/index.mjs.map +1 -1
  539. app-ng-runtime/locales/angular/global/af-na.js +4 -4
  540. app-ng-runtime/locales/angular/global/af.js +4 -4
  541. app-ng-runtime/locales/angular/global/agq.js +4 -4
  542. app-ng-runtime/locales/angular/global/ak.js +4 -4
  543. app-ng-runtime/locales/angular/global/am.js +4 -4
  544. app-ng-runtime/locales/angular/global/ar-ae.js +4 -4
  545. app-ng-runtime/locales/angular/global/ar-bh.js +4 -4
  546. app-ng-runtime/locales/angular/global/ar-dj.js +4 -4
  547. app-ng-runtime/locales/angular/global/ar-dz.js +4 -4
  548. app-ng-runtime/locales/angular/global/ar-eg.js +4 -4
  549. app-ng-runtime/locales/angular/global/ar-eh.js +4 -4
  550. app-ng-runtime/locales/angular/global/ar-er.js +4 -4
  551. app-ng-runtime/locales/angular/global/ar-il.js +4 -4
  552. app-ng-runtime/locales/angular/global/ar-iq.js +4 -4
  553. app-ng-runtime/locales/angular/global/ar-jo.js +4 -4
  554. app-ng-runtime/locales/angular/global/ar-km.js +4 -4
  555. app-ng-runtime/locales/angular/global/ar-kw.js +4 -4
  556. app-ng-runtime/locales/angular/global/ar-lb.js +4 -4
  557. app-ng-runtime/locales/angular/global/ar-ly.js +4 -4
  558. app-ng-runtime/locales/angular/global/ar-ma.js +4 -4
  559. app-ng-runtime/locales/angular/global/ar-mr.js +4 -4
  560. app-ng-runtime/locales/angular/global/ar-om.js +4 -4
  561. app-ng-runtime/locales/angular/global/ar-ps.js +4 -4
  562. app-ng-runtime/locales/angular/global/ar-qa.js +4 -4
  563. app-ng-runtime/locales/angular/global/ar-sa.js +4 -4
  564. app-ng-runtime/locales/angular/global/ar-sd.js +4 -4
  565. app-ng-runtime/locales/angular/global/ar-so.js +4 -4
  566. app-ng-runtime/locales/angular/global/ar-ss.js +4 -4
  567. app-ng-runtime/locales/angular/global/ar-sy.js +4 -4
  568. app-ng-runtime/locales/angular/global/ar-td.js +4 -4
  569. app-ng-runtime/locales/angular/global/ar-tn.js +4 -4
  570. app-ng-runtime/locales/angular/global/ar-ye.js +4 -4
  571. app-ng-runtime/locales/angular/global/ar.js +4 -4
  572. app-ng-runtime/locales/angular/global/as.js +4 -4
  573. app-ng-runtime/locales/angular/global/asa.js +4 -4
  574. app-ng-runtime/locales/angular/global/ast.js +4 -4
  575. app-ng-runtime/locales/angular/global/az-cyrl.js +4 -4
  576. app-ng-runtime/locales/angular/global/az-latn.js +4 -4
  577. app-ng-runtime/locales/angular/global/az.js +4 -4
  578. app-ng-runtime/locales/angular/global/bas.js +4 -4
  579. app-ng-runtime/locales/angular/global/be-tarask.js +4 -4
  580. app-ng-runtime/locales/angular/global/be.js +4 -4
  581. app-ng-runtime/locales/angular/global/bem.js +4 -4
  582. app-ng-runtime/locales/angular/global/bez.js +4 -4
  583. app-ng-runtime/locales/angular/global/bg.js +4 -4
  584. app-ng-runtime/locales/angular/global/bm.js +4 -4
  585. app-ng-runtime/locales/angular/global/bn-in.js +4 -4
  586. app-ng-runtime/locales/angular/global/bn.js +4 -4
  587. app-ng-runtime/locales/angular/global/bo-in.js +4 -4
  588. app-ng-runtime/locales/angular/global/bo.js +4 -4
  589. app-ng-runtime/locales/angular/global/br.js +4 -4
  590. app-ng-runtime/locales/angular/global/brx.js +4 -4
  591. app-ng-runtime/locales/angular/global/bs-cyrl.js +4 -4
  592. app-ng-runtime/locales/angular/global/bs-latn.js +4 -4
  593. app-ng-runtime/locales/angular/global/bs.js +4 -4
  594. app-ng-runtime/locales/angular/global/ca-ad.js +4 -4
  595. app-ng-runtime/locales/angular/global/ca-es-valencia.js +4 -4
  596. app-ng-runtime/locales/angular/global/ca-fr.js +4 -4
  597. app-ng-runtime/locales/angular/global/ca-it.js +4 -4
  598. app-ng-runtime/locales/angular/global/ca.js +4 -4
  599. app-ng-runtime/locales/angular/global/ccp-in.js +4 -4
  600. app-ng-runtime/locales/angular/global/ccp.js +4 -4
  601. app-ng-runtime/locales/angular/global/ce.js +4 -4
  602. app-ng-runtime/locales/angular/global/ceb.js +4 -4
  603. app-ng-runtime/locales/angular/global/cgg.js +4 -4
  604. app-ng-runtime/locales/angular/global/chr.js +4 -4
  605. app-ng-runtime/locales/angular/global/ckb-ir.js +4 -4
  606. app-ng-runtime/locales/angular/global/ckb.js +4 -4
  607. app-ng-runtime/locales/angular/global/cs.js +4 -4
  608. app-ng-runtime/locales/angular/global/cy.js +4 -4
  609. app-ng-runtime/locales/angular/global/da-gl.js +4 -4
  610. app-ng-runtime/locales/angular/global/da.js +4 -4
  611. app-ng-runtime/locales/angular/global/dav.js +4 -4
  612. app-ng-runtime/locales/angular/global/de-at.js +4 -4
  613. app-ng-runtime/locales/angular/global/de-be.js +4 -4
  614. app-ng-runtime/locales/angular/global/de-ch.js +4 -4
  615. app-ng-runtime/locales/angular/global/de-it.js +4 -4
  616. app-ng-runtime/locales/angular/global/de-li.js +4 -4
  617. app-ng-runtime/locales/angular/global/de-lu.js +4 -4
  618. app-ng-runtime/locales/angular/global/de.js +4 -4
  619. app-ng-runtime/locales/angular/global/dje.js +4 -4
  620. app-ng-runtime/locales/angular/global/doi.js +4 -4
  621. app-ng-runtime/locales/angular/global/dsb.js +4 -4
  622. app-ng-runtime/locales/angular/global/dua.js +4 -4
  623. app-ng-runtime/locales/angular/global/dyo.js +4 -4
  624. app-ng-runtime/locales/angular/global/dz.js +4 -4
  625. app-ng-runtime/locales/angular/global/ebu.js +4 -4
  626. app-ng-runtime/locales/angular/global/ee-tg.js +4 -4
  627. app-ng-runtime/locales/angular/global/ee.js +4 -4
  628. app-ng-runtime/locales/angular/global/el-cy.js +4 -4
  629. app-ng-runtime/locales/angular/global/el.js +4 -4
  630. app-ng-runtime/locales/angular/global/en-001.js +4 -4
  631. app-ng-runtime/locales/angular/global/en-150.js +4 -4
  632. app-ng-runtime/locales/angular/global/en-ae.js +4 -4
  633. app-ng-runtime/locales/angular/global/en-ag.js +4 -4
  634. app-ng-runtime/locales/angular/global/en-ai.js +4 -4
  635. app-ng-runtime/locales/angular/global/en-as.js +4 -4
  636. app-ng-runtime/locales/angular/global/en-at.js +4 -4
  637. app-ng-runtime/locales/angular/global/en-au.js +4 -4
  638. app-ng-runtime/locales/angular/global/en-bb.js +4 -4
  639. app-ng-runtime/locales/angular/global/en-be.js +4 -4
  640. app-ng-runtime/locales/angular/global/en-bi.js +4 -4
  641. app-ng-runtime/locales/angular/global/en-bm.js +4 -4
  642. app-ng-runtime/locales/angular/global/en-bs.js +4 -4
  643. app-ng-runtime/locales/angular/global/en-bw.js +4 -4
  644. app-ng-runtime/locales/angular/global/en-bz.js +4 -4
  645. app-ng-runtime/locales/angular/global/en-ca.js +4 -4
  646. app-ng-runtime/locales/angular/global/en-cc.js +4 -4
  647. app-ng-runtime/locales/angular/global/en-ch.js +4 -4
  648. app-ng-runtime/locales/angular/global/en-ck.js +4 -4
  649. app-ng-runtime/locales/angular/global/en-cm.js +4 -4
  650. app-ng-runtime/locales/angular/global/en-cx.js +4 -4
  651. app-ng-runtime/locales/angular/global/en-cy.js +4 -4
  652. app-ng-runtime/locales/angular/global/en-de.js +4 -4
  653. app-ng-runtime/locales/angular/global/en-dg.js +4 -4
  654. app-ng-runtime/locales/angular/global/en-dk.js +4 -4
  655. app-ng-runtime/locales/angular/global/en-dm.js +4 -4
  656. app-ng-runtime/locales/angular/global/en-er.js +4 -4
  657. app-ng-runtime/locales/angular/global/en-fi.js +4 -4
  658. app-ng-runtime/locales/angular/global/en-fj.js +4 -4
  659. app-ng-runtime/locales/angular/global/en-fk.js +4 -4
  660. app-ng-runtime/locales/angular/global/en-fm.js +4 -4
  661. app-ng-runtime/locales/angular/global/en-gb.js +4 -4
  662. app-ng-runtime/locales/angular/global/en-gd.js +4 -4
  663. app-ng-runtime/locales/angular/global/en-gg.js +4 -4
  664. app-ng-runtime/locales/angular/global/en-gh.js +4 -4
  665. app-ng-runtime/locales/angular/global/en-gi.js +4 -4
  666. app-ng-runtime/locales/angular/global/en-gm.js +4 -4
  667. app-ng-runtime/locales/angular/global/en-gu.js +4 -4
  668. app-ng-runtime/locales/angular/global/en-gy.js +4 -4
  669. app-ng-runtime/locales/angular/global/en-hk.js +4 -4
  670. app-ng-runtime/locales/angular/global/en-ie.js +4 -4
  671. app-ng-runtime/locales/angular/global/en-il.js +4 -4
  672. app-ng-runtime/locales/angular/global/en-im.js +4 -4
  673. app-ng-runtime/locales/angular/global/en-in.js +4 -4
  674. app-ng-runtime/locales/angular/global/en-io.js +4 -4
  675. app-ng-runtime/locales/angular/global/en-je.js +4 -4
  676. app-ng-runtime/locales/angular/global/en-jm.js +4 -4
  677. app-ng-runtime/locales/angular/global/en-ke.js +4 -4
  678. app-ng-runtime/locales/angular/global/en-ki.js +4 -4
  679. app-ng-runtime/locales/angular/global/en-kn.js +4 -4
  680. app-ng-runtime/locales/angular/global/en-ky.js +4 -4
  681. app-ng-runtime/locales/angular/global/en-lc.js +4 -4
  682. app-ng-runtime/locales/angular/global/en-lr.js +4 -4
  683. app-ng-runtime/locales/angular/global/en-ls.js +4 -4
  684. app-ng-runtime/locales/angular/global/en-mg.js +4 -4
  685. app-ng-runtime/locales/angular/global/en-mh.js +4 -4
  686. app-ng-runtime/locales/angular/global/en-mo.js +4 -4
  687. app-ng-runtime/locales/angular/global/en-mp.js +4 -4
  688. app-ng-runtime/locales/angular/global/en-ms.js +4 -4
  689. app-ng-runtime/locales/angular/global/en-mt.js +4 -4
  690. app-ng-runtime/locales/angular/global/en-mu.js +4 -4
  691. app-ng-runtime/locales/angular/global/en-mv.js +4 -4
  692. app-ng-runtime/locales/angular/global/en-mw.js +4 -4
  693. app-ng-runtime/locales/angular/global/en-my.js +4 -4
  694. app-ng-runtime/locales/angular/global/en-na.js +4 -4
  695. app-ng-runtime/locales/angular/global/en-nf.js +4 -4
  696. app-ng-runtime/locales/angular/global/en-ng.js +4 -4
  697. app-ng-runtime/locales/angular/global/en-nl.js +4 -4
  698. app-ng-runtime/locales/angular/global/en-nr.js +4 -4
  699. app-ng-runtime/locales/angular/global/en-nu.js +4 -4
  700. app-ng-runtime/locales/angular/global/en-nz.js +4 -4
  701. app-ng-runtime/locales/angular/global/en-pg.js +4 -4
  702. app-ng-runtime/locales/angular/global/en-ph.js +4 -4
  703. app-ng-runtime/locales/angular/global/en-pk.js +4 -4
  704. app-ng-runtime/locales/angular/global/en-pn.js +4 -4
  705. app-ng-runtime/locales/angular/global/en-pr.js +4 -4
  706. app-ng-runtime/locales/angular/global/en-pw.js +4 -4
  707. app-ng-runtime/locales/angular/global/en-rw.js +4 -4
  708. app-ng-runtime/locales/angular/global/en-sb.js +4 -4
  709. app-ng-runtime/locales/angular/global/en-sc.js +4 -4
  710. app-ng-runtime/locales/angular/global/en-sd.js +4 -4
  711. app-ng-runtime/locales/angular/global/en-se.js +4 -4
  712. app-ng-runtime/locales/angular/global/en-sg.js +4 -4
  713. app-ng-runtime/locales/angular/global/en-sh.js +4 -4
  714. app-ng-runtime/locales/angular/global/en-si.js +4 -4
  715. app-ng-runtime/locales/angular/global/en-sl.js +4 -4
  716. app-ng-runtime/locales/angular/global/en-ss.js +4 -4
  717. app-ng-runtime/locales/angular/global/en-sx.js +4 -4
  718. app-ng-runtime/locales/angular/global/en-sz.js +4 -4
  719. app-ng-runtime/locales/angular/global/en-tc.js +4 -4
  720. app-ng-runtime/locales/angular/global/en-tk.js +4 -4
  721. app-ng-runtime/locales/angular/global/en-to.js +4 -4
  722. app-ng-runtime/locales/angular/global/en-tt.js +4 -4
  723. app-ng-runtime/locales/angular/global/en-tv.js +4 -4
  724. app-ng-runtime/locales/angular/global/en-tz.js +4 -4
  725. app-ng-runtime/locales/angular/global/en-ug.js +4 -4
  726. app-ng-runtime/locales/angular/global/en-um.js +4 -4
  727. app-ng-runtime/locales/angular/global/en-vc.js +4 -4
  728. app-ng-runtime/locales/angular/global/en-vg.js +4 -4
  729. app-ng-runtime/locales/angular/global/en-vi.js +4 -4
  730. app-ng-runtime/locales/angular/global/en-vu.js +4 -4
  731. app-ng-runtime/locales/angular/global/en-ws.js +4 -4
  732. app-ng-runtime/locales/angular/global/en-za.js +4 -4
  733. app-ng-runtime/locales/angular/global/en-zm.js +4 -4
  734. app-ng-runtime/locales/angular/global/en-zw.js +4 -4
  735. app-ng-runtime/locales/angular/global/en.js +4 -4
  736. app-ng-runtime/locales/angular/global/eo.js +4 -4
  737. app-ng-runtime/locales/angular/global/es-419.js +4 -4
  738. app-ng-runtime/locales/angular/global/es-ar.js +4 -4
  739. app-ng-runtime/locales/angular/global/es-bo.js +4 -4
  740. app-ng-runtime/locales/angular/global/es-br.js +4 -4
  741. app-ng-runtime/locales/angular/global/es-bz.js +4 -4
  742. app-ng-runtime/locales/angular/global/es-cl.js +4 -4
  743. app-ng-runtime/locales/angular/global/es-co.js +4 -4
  744. app-ng-runtime/locales/angular/global/es-cr.js +4 -4
  745. app-ng-runtime/locales/angular/global/es-cu.js +4 -4
  746. app-ng-runtime/locales/angular/global/es-do.js +4 -4
  747. app-ng-runtime/locales/angular/global/es-ea.js +4 -4
  748. app-ng-runtime/locales/angular/global/es-ec.js +4 -4
  749. app-ng-runtime/locales/angular/global/es-gq.js +4 -4
  750. app-ng-runtime/locales/angular/global/es-gt.js +4 -4
  751. app-ng-runtime/locales/angular/global/es-hn.js +4 -4
  752. app-ng-runtime/locales/angular/global/es-ic.js +4 -4
  753. app-ng-runtime/locales/angular/global/es-mx.js +4 -4
  754. app-ng-runtime/locales/angular/global/es-ni.js +4 -4
  755. app-ng-runtime/locales/angular/global/es-pa.js +4 -4
  756. app-ng-runtime/locales/angular/global/es-pe.js +4 -4
  757. app-ng-runtime/locales/angular/global/es-ph.js +4 -4
  758. app-ng-runtime/locales/angular/global/es-pr.js +4 -4
  759. app-ng-runtime/locales/angular/global/es-py.js +4 -4
  760. app-ng-runtime/locales/angular/global/es-sv.js +4 -4
  761. app-ng-runtime/locales/angular/global/es-us.js +4 -4
  762. app-ng-runtime/locales/angular/global/es-uy.js +4 -4
  763. app-ng-runtime/locales/angular/global/es-ve.js +4 -4
  764. app-ng-runtime/locales/angular/global/es.js +4 -4
  765. app-ng-runtime/locales/angular/global/et.js +4 -4
  766. app-ng-runtime/locales/angular/global/eu.js +4 -4
  767. app-ng-runtime/locales/angular/global/ewo.js +4 -4
  768. app-ng-runtime/locales/angular/global/fa-af.js +4 -4
  769. app-ng-runtime/locales/angular/global/fa.js +4 -4
  770. app-ng-runtime/locales/angular/global/ff-adlm-bf.js +4 -4
  771. app-ng-runtime/locales/angular/global/ff-adlm-cm.js +4 -4
  772. app-ng-runtime/locales/angular/global/ff-adlm-gh.js +4 -4
  773. app-ng-runtime/locales/angular/global/ff-adlm-gm.js +4 -4
  774. app-ng-runtime/locales/angular/global/ff-adlm-gw.js +4 -4
  775. app-ng-runtime/locales/angular/global/ff-adlm-lr.js +4 -4
  776. app-ng-runtime/locales/angular/global/ff-adlm-mr.js +4 -4
  777. app-ng-runtime/locales/angular/global/ff-adlm-ne.js +4 -4
  778. app-ng-runtime/locales/angular/global/ff-adlm-ng.js +4 -4
  779. app-ng-runtime/locales/angular/global/ff-adlm-sl.js +4 -4
  780. app-ng-runtime/locales/angular/global/ff-adlm-sn.js +4 -4
  781. app-ng-runtime/locales/angular/global/ff-adlm.js +4 -4
  782. app-ng-runtime/locales/angular/global/ff-cm.js +44 -58
  783. app-ng-runtime/locales/angular/global/ff-gn.js +44 -58
  784. app-ng-runtime/locales/angular/global/ff-latn-bf.js +4 -4
  785. app-ng-runtime/locales/angular/global/ff-latn-cm.js +4 -4
  786. app-ng-runtime/locales/angular/global/ff-latn-gh.js +4 -4
  787. app-ng-runtime/locales/angular/global/ff-latn-gm.js +4 -4
  788. app-ng-runtime/locales/angular/global/ff-latn-gn.js +4 -4
  789. app-ng-runtime/locales/angular/global/ff-latn-gw.js +4 -4
  790. app-ng-runtime/locales/angular/global/ff-latn-lr.js +4 -4
  791. app-ng-runtime/locales/angular/global/ff-latn-mr.js +4 -4
  792. app-ng-runtime/locales/angular/global/ff-latn-ne.js +4 -4
  793. app-ng-runtime/locales/angular/global/ff-latn-ng.js +4 -4
  794. app-ng-runtime/locales/angular/global/ff-latn-sl.js +4 -4
  795. app-ng-runtime/locales/angular/global/ff-latn.js +4 -4
  796. app-ng-runtime/locales/angular/global/ff-mr.js +44 -58
  797. app-ng-runtime/locales/angular/global/ff.js +4 -4
  798. app-ng-runtime/locales/angular/global/fi.js +4 -4
  799. app-ng-runtime/locales/angular/global/fil.js +4 -4
  800. app-ng-runtime/locales/angular/global/fo-dk.js +4 -4
  801. app-ng-runtime/locales/angular/global/fo.js +4 -4
  802. app-ng-runtime/locales/angular/global/fr-be.js +4 -4
  803. app-ng-runtime/locales/angular/global/fr-bf.js +4 -4
  804. app-ng-runtime/locales/angular/global/fr-bi.js +4 -4
  805. app-ng-runtime/locales/angular/global/fr-bj.js +4 -4
  806. app-ng-runtime/locales/angular/global/fr-bl.js +4 -4
  807. app-ng-runtime/locales/angular/global/fr-ca.js +4 -4
  808. app-ng-runtime/locales/angular/global/fr-cd.js +4 -4
  809. app-ng-runtime/locales/angular/global/fr-cf.js +4 -4
  810. app-ng-runtime/locales/angular/global/fr-cg.js +4 -4
  811. app-ng-runtime/locales/angular/global/fr-ch.js +4 -4
  812. app-ng-runtime/locales/angular/global/fr-ci.js +4 -4
  813. app-ng-runtime/locales/angular/global/fr-cm.js +4 -4
  814. app-ng-runtime/locales/angular/global/fr-dj.js +4 -4
  815. app-ng-runtime/locales/angular/global/fr-dz.js +4 -4
  816. app-ng-runtime/locales/angular/global/fr-ga.js +4 -4
  817. app-ng-runtime/locales/angular/global/fr-gf.js +4 -4
  818. app-ng-runtime/locales/angular/global/fr-gn.js +4 -4
  819. app-ng-runtime/locales/angular/global/fr-gp.js +4 -4
  820. app-ng-runtime/locales/angular/global/fr-gq.js +4 -4
  821. app-ng-runtime/locales/angular/global/fr-ht.js +4 -4
  822. app-ng-runtime/locales/angular/global/fr-km.js +4 -4
  823. app-ng-runtime/locales/angular/global/fr-lu.js +4 -4
  824. app-ng-runtime/locales/angular/global/fr-ma.js +4 -4
  825. app-ng-runtime/locales/angular/global/fr-mc.js +4 -4
  826. app-ng-runtime/locales/angular/global/fr-mf.js +4 -4
  827. app-ng-runtime/locales/angular/global/fr-mg.js +4 -4
  828. app-ng-runtime/locales/angular/global/fr-ml.js +4 -4
  829. app-ng-runtime/locales/angular/global/fr-mq.js +4 -4
  830. app-ng-runtime/locales/angular/global/fr-mr.js +4 -4
  831. app-ng-runtime/locales/angular/global/fr-mu.js +4 -4
  832. app-ng-runtime/locales/angular/global/fr-nc.js +4 -4
  833. app-ng-runtime/locales/angular/global/fr-ne.js +4 -4
  834. app-ng-runtime/locales/angular/global/fr-pf.js +4 -4
  835. app-ng-runtime/locales/angular/global/fr-pm.js +4 -4
  836. app-ng-runtime/locales/angular/global/fr-re.js +4 -4
  837. app-ng-runtime/locales/angular/global/fr-rw.js +4 -4
  838. app-ng-runtime/locales/angular/global/fr-sc.js +4 -4
  839. app-ng-runtime/locales/angular/global/fr-sn.js +4 -4
  840. app-ng-runtime/locales/angular/global/fr-sy.js +4 -4
  841. app-ng-runtime/locales/angular/global/fr-td.js +4 -4
  842. app-ng-runtime/locales/angular/global/fr-tg.js +4 -4
  843. app-ng-runtime/locales/angular/global/fr-tn.js +4 -4
  844. app-ng-runtime/locales/angular/global/fr-vu.js +4 -4
  845. app-ng-runtime/locales/angular/global/fr-wf.js +4 -4
  846. app-ng-runtime/locales/angular/global/fr-yt.js +4 -4
  847. app-ng-runtime/locales/angular/global/fr.js +4 -4
  848. app-ng-runtime/locales/angular/global/fur.js +4 -4
  849. app-ng-runtime/locales/angular/global/fy.js +4 -4
  850. app-ng-runtime/locales/angular/global/ga-gb.js +4 -4
  851. app-ng-runtime/locales/angular/global/ga.js +4 -4
  852. app-ng-runtime/locales/angular/global/gd.js +4 -4
  853. app-ng-runtime/locales/angular/global/gl.js +4 -4
  854. app-ng-runtime/locales/angular/global/gsw-fr.js +4 -4
  855. app-ng-runtime/locales/angular/global/gsw-li.js +4 -4
  856. app-ng-runtime/locales/angular/global/gsw.js +4 -4
  857. app-ng-runtime/locales/angular/global/gu.js +4 -4
  858. app-ng-runtime/locales/angular/global/guz.js +4 -4
  859. app-ng-runtime/locales/angular/global/gv.js +4 -4
  860. app-ng-runtime/locales/angular/global/ha-gh.js +4 -4
  861. app-ng-runtime/locales/angular/global/ha-ne.js +4 -4
  862. app-ng-runtime/locales/angular/global/ha.js +4 -4
  863. app-ng-runtime/locales/angular/global/haw.js +4 -4
  864. app-ng-runtime/locales/angular/global/he.js +4 -4
  865. app-ng-runtime/locales/angular/global/hi-latn.js +4 -4
  866. app-ng-runtime/locales/angular/global/hi.js +4 -4
  867. app-ng-runtime/locales/angular/global/hr-ba.js +4 -4
  868. app-ng-runtime/locales/angular/global/hr.js +4 -4
  869. app-ng-runtime/locales/angular/global/hsb.js +4 -4
  870. app-ng-runtime/locales/angular/global/hu.js +4 -4
  871. app-ng-runtime/locales/angular/global/hy.js +4 -4
  872. app-ng-runtime/locales/angular/global/ia.js +4 -4
  873. app-ng-runtime/locales/angular/global/id.js +4 -4
  874. app-ng-runtime/locales/angular/global/ig.js +4 -4
  875. app-ng-runtime/locales/angular/global/ii.js +4 -4
  876. app-ng-runtime/locales/angular/global/is.js +4 -4
  877. app-ng-runtime/locales/angular/global/it-ch.js +4 -4
  878. app-ng-runtime/locales/angular/global/it-sm.js +4 -4
  879. app-ng-runtime/locales/angular/global/it-va.js +4 -4
  880. app-ng-runtime/locales/angular/global/it.js +4 -4
  881. app-ng-runtime/locales/angular/global/ja.js +4 -4
  882. app-ng-runtime/locales/angular/global/jgo.js +4 -4
  883. app-ng-runtime/locales/angular/global/jmc.js +4 -4
  884. app-ng-runtime/locales/angular/global/jv.js +4 -4
  885. app-ng-runtime/locales/angular/global/ka.js +4 -4
  886. app-ng-runtime/locales/angular/global/kab.js +4 -4
  887. app-ng-runtime/locales/angular/global/kam.js +4 -4
  888. app-ng-runtime/locales/angular/global/kde.js +4 -4
  889. app-ng-runtime/locales/angular/global/kea.js +4 -4
  890. app-ng-runtime/locales/angular/global/kgp.js +4 -4
  891. app-ng-runtime/locales/angular/global/khq.js +4 -4
  892. app-ng-runtime/locales/angular/global/ki.js +4 -4
  893. app-ng-runtime/locales/angular/global/kk.js +4 -4
  894. app-ng-runtime/locales/angular/global/kkj.js +4 -4
  895. app-ng-runtime/locales/angular/global/kl.js +4 -4
  896. app-ng-runtime/locales/angular/global/kln.js +4 -4
  897. app-ng-runtime/locales/angular/global/km.js +4 -4
  898. app-ng-runtime/locales/angular/global/kn.js +4 -4
  899. app-ng-runtime/locales/angular/global/ko-kp.js +4 -4
  900. app-ng-runtime/locales/angular/global/ko.js +4 -4
  901. app-ng-runtime/locales/angular/global/kok.js +4 -4
  902. app-ng-runtime/locales/angular/global/ks-arab.js +4 -4
  903. app-ng-runtime/locales/angular/global/ks-deva.js +4 -4
  904. app-ng-runtime/locales/angular/global/ks.js +4 -4
  905. app-ng-runtime/locales/angular/global/ksb.js +4 -4
  906. app-ng-runtime/locales/angular/global/ksf.js +4 -4
  907. app-ng-runtime/locales/angular/global/ksh.js +4 -4
  908. app-ng-runtime/locales/angular/global/ku.js +4 -4
  909. app-ng-runtime/locales/angular/global/kw.js +4 -4
  910. app-ng-runtime/locales/angular/global/ky.js +4 -4
  911. app-ng-runtime/locales/angular/global/lag.js +4 -4
  912. app-ng-runtime/locales/angular/global/lb.js +4 -4
  913. app-ng-runtime/locales/angular/global/lg.js +4 -4
  914. app-ng-runtime/locales/angular/global/lkt.js +4 -4
  915. app-ng-runtime/locales/angular/global/ln-ao.js +4 -4
  916. app-ng-runtime/locales/angular/global/ln-cf.js +4 -4
  917. app-ng-runtime/locales/angular/global/ln-cg.js +4 -4
  918. app-ng-runtime/locales/angular/global/ln.js +4 -4
  919. app-ng-runtime/locales/angular/global/lo.js +4 -4
  920. app-ng-runtime/locales/angular/global/lrc-iq.js +4 -4
  921. app-ng-runtime/locales/angular/global/lrc.js +4 -4
  922. app-ng-runtime/locales/angular/global/lt.js +4 -4
  923. app-ng-runtime/locales/angular/global/lu.js +4 -4
  924. app-ng-runtime/locales/angular/global/luo.js +4 -4
  925. app-ng-runtime/locales/angular/global/luy.js +4 -4
  926. app-ng-runtime/locales/angular/global/lv.js +4 -4
  927. app-ng-runtime/locales/angular/global/mai.js +4 -4
  928. app-ng-runtime/locales/angular/global/mas-tz.js +4 -4
  929. app-ng-runtime/locales/angular/global/mas.js +4 -4
  930. app-ng-runtime/locales/angular/global/mer.js +4 -4
  931. app-ng-runtime/locales/angular/global/mfe.js +4 -4
  932. app-ng-runtime/locales/angular/global/mg.js +4 -4
  933. app-ng-runtime/locales/angular/global/mgh.js +4 -4
  934. app-ng-runtime/locales/angular/global/mgo.js +4 -4
  935. app-ng-runtime/locales/angular/global/mi.js +4 -4
  936. app-ng-runtime/locales/angular/global/mk.js +4 -4
  937. app-ng-runtime/locales/angular/global/ml.js +4 -4
  938. app-ng-runtime/locales/angular/global/mn.js +4 -4
  939. app-ng-runtime/locales/angular/global/mni-beng.js +4 -4
  940. app-ng-runtime/locales/angular/global/mni.js +4 -4
  941. app-ng-runtime/locales/angular/global/mr.js +4 -4
  942. app-ng-runtime/locales/angular/global/ms-bn.js +4 -4
  943. app-ng-runtime/locales/angular/global/ms-id.js +4 -4
  944. app-ng-runtime/locales/angular/global/ms-sg.js +4 -4
  945. app-ng-runtime/locales/angular/global/ms.js +4 -4
  946. app-ng-runtime/locales/angular/global/mt.js +4 -4
  947. app-ng-runtime/locales/angular/global/mua.js +4 -4
  948. app-ng-runtime/locales/angular/global/my.js +4 -4
  949. app-ng-runtime/locales/angular/global/mzn.js +4 -4
  950. app-ng-runtime/locales/angular/global/naq.js +4 -4
  951. app-ng-runtime/locales/angular/global/nb-sj.js +4 -4
  952. app-ng-runtime/locales/angular/global/nb.js +4 -4
  953. app-ng-runtime/locales/angular/global/nd.js +4 -4
  954. app-ng-runtime/locales/angular/global/nds-nl.js +4 -4
  955. app-ng-runtime/locales/angular/global/nds.js +4 -4
  956. app-ng-runtime/locales/angular/global/ne-in.js +4 -4
  957. app-ng-runtime/locales/angular/global/ne.js +4 -4
  958. app-ng-runtime/locales/angular/global/nl-aw.js +4 -4
  959. app-ng-runtime/locales/angular/global/nl-be.js +4 -4
  960. app-ng-runtime/locales/angular/global/nl-bq.js +4 -4
  961. app-ng-runtime/locales/angular/global/nl-cw.js +4 -4
  962. app-ng-runtime/locales/angular/global/nl-sr.js +4 -4
  963. app-ng-runtime/locales/angular/global/nl-sx.js +4 -4
  964. app-ng-runtime/locales/angular/global/nl.js +4 -4
  965. app-ng-runtime/locales/angular/global/nmg.js +4 -4
  966. app-ng-runtime/locales/angular/global/nn.js +4 -4
  967. app-ng-runtime/locales/angular/global/nnh.js +4 -4
  968. app-ng-runtime/locales/angular/global/no.js +4 -4
  969. app-ng-runtime/locales/angular/global/nus.js +4 -4
  970. app-ng-runtime/locales/angular/global/nyn.js +4 -4
  971. app-ng-runtime/locales/angular/global/om-ke.js +4 -4
  972. app-ng-runtime/locales/angular/global/om.js +4 -4
  973. app-ng-runtime/locales/angular/global/or.js +4 -4
  974. app-ng-runtime/locales/angular/global/os-ru.js +4 -4
  975. app-ng-runtime/locales/angular/global/os.js +4 -4
  976. app-ng-runtime/locales/angular/global/pa-arab.js +4 -4
  977. app-ng-runtime/locales/angular/global/pa-guru.js +4 -4
  978. app-ng-runtime/locales/angular/global/pa.js +4 -4
  979. app-ng-runtime/locales/angular/global/pcm.js +4 -4
  980. app-ng-runtime/locales/angular/global/pl.js +4 -4
  981. app-ng-runtime/locales/angular/global/ps-pk.js +4 -4
  982. app-ng-runtime/locales/angular/global/ps.js +4 -4
  983. app-ng-runtime/locales/angular/global/pt-ao.js +4 -4
  984. app-ng-runtime/locales/angular/global/pt-ch.js +4 -4
  985. app-ng-runtime/locales/angular/global/pt-cv.js +4 -4
  986. app-ng-runtime/locales/angular/global/pt-gq.js +4 -4
  987. app-ng-runtime/locales/angular/global/pt-gw.js +4 -4
  988. app-ng-runtime/locales/angular/global/pt-lu.js +4 -4
  989. app-ng-runtime/locales/angular/global/pt-mo.js +4 -4
  990. app-ng-runtime/locales/angular/global/pt-mz.js +4 -4
  991. app-ng-runtime/locales/angular/global/pt-pt.js +4 -4
  992. app-ng-runtime/locales/angular/global/pt-st.js +4 -4
  993. app-ng-runtime/locales/angular/global/pt-tl.js +4 -4
  994. app-ng-runtime/locales/angular/global/pt.js +4 -4
  995. app-ng-runtime/locales/angular/global/qu-bo.js +4 -4
  996. app-ng-runtime/locales/angular/global/qu-ec.js +4 -4
  997. app-ng-runtime/locales/angular/global/qu.js +4 -4
  998. app-ng-runtime/locales/angular/global/rm.js +4 -4
  999. app-ng-runtime/locales/angular/global/rn.js +4 -4
  1000. app-ng-runtime/locales/angular/global/ro-md.js +4 -4
  1001. app-ng-runtime/locales/angular/global/ro.js +4 -4
  1002. app-ng-runtime/locales/angular/global/rof.js +4 -4
  1003. app-ng-runtime/locales/angular/global/ru-by.js +4 -4
  1004. app-ng-runtime/locales/angular/global/ru-kg.js +4 -4
  1005. app-ng-runtime/locales/angular/global/ru-kz.js +4 -4
  1006. app-ng-runtime/locales/angular/global/ru-md.js +4 -4
  1007. app-ng-runtime/locales/angular/global/ru-ua.js +4 -4
  1008. app-ng-runtime/locales/angular/global/ru.js +4 -4
  1009. app-ng-runtime/locales/angular/global/rw.js +4 -4
  1010. app-ng-runtime/locales/angular/global/rwk.js +4 -4
  1011. app-ng-runtime/locales/angular/global/sa.js +4 -4
  1012. app-ng-runtime/locales/angular/global/sah.js +4 -4
  1013. app-ng-runtime/locales/angular/global/saq.js +4 -4
  1014. app-ng-runtime/locales/angular/global/sat-olck.js +4 -4
  1015. app-ng-runtime/locales/angular/global/sat.js +4 -4
  1016. app-ng-runtime/locales/angular/global/sbp.js +4 -4
  1017. app-ng-runtime/locales/angular/global/sc.js +4 -4
  1018. app-ng-runtime/locales/angular/global/sd-arab.js +4 -4
  1019. app-ng-runtime/locales/angular/global/sd-deva.js +4 -4
  1020. app-ng-runtime/locales/angular/global/sd.js +4 -4
  1021. app-ng-runtime/locales/angular/global/se-fi.js +4 -4
  1022. app-ng-runtime/locales/angular/global/se-se.js +4 -4
  1023. app-ng-runtime/locales/angular/global/se.js +4 -4
  1024. app-ng-runtime/locales/angular/global/seh.js +4 -4
  1025. app-ng-runtime/locales/angular/global/ses.js +4 -4
  1026. app-ng-runtime/locales/angular/global/sg.js +4 -4
  1027. app-ng-runtime/locales/angular/global/shi-latn.js +4 -4
  1028. app-ng-runtime/locales/angular/global/shi-tfng.js +4 -4
  1029. app-ng-runtime/locales/angular/global/shi.js +4 -4
  1030. app-ng-runtime/locales/angular/global/si.js +4 -4
  1031. app-ng-runtime/locales/angular/global/sk.js +4 -4
  1032. app-ng-runtime/locales/angular/global/sl.js +4 -4
  1033. app-ng-runtime/locales/angular/global/smn.js +4 -4
  1034. app-ng-runtime/locales/angular/global/sn.js +4 -4
  1035. app-ng-runtime/locales/angular/global/so-dj.js +4 -4
  1036. app-ng-runtime/locales/angular/global/so-et.js +4 -4
  1037. app-ng-runtime/locales/angular/global/so-ke.js +4 -4
  1038. app-ng-runtime/locales/angular/global/so.js +4 -4
  1039. app-ng-runtime/locales/angular/global/sq-mk.js +4 -4
  1040. app-ng-runtime/locales/angular/global/sq-xk.js +4 -4
  1041. app-ng-runtime/locales/angular/global/sq.js +4 -4
  1042. app-ng-runtime/locales/angular/global/sr-cyrl-ba.js +4 -4
  1043. app-ng-runtime/locales/angular/global/sr-cyrl-me.js +4 -4
  1044. app-ng-runtime/locales/angular/global/sr-cyrl-xk.js +4 -4
  1045. app-ng-runtime/locales/angular/global/sr-cyrl.js +4 -4
  1046. app-ng-runtime/locales/angular/global/sr-latn-ba.js +4 -4
  1047. app-ng-runtime/locales/angular/global/sr-latn-me.js +4 -4
  1048. app-ng-runtime/locales/angular/global/sr-latn-xk.js +4 -4
  1049. app-ng-runtime/locales/angular/global/sr-latn.js +4 -4
  1050. app-ng-runtime/locales/angular/global/sr.js +4 -4
  1051. app-ng-runtime/locales/angular/global/su-latn.js +4 -4
  1052. app-ng-runtime/locales/angular/global/su.js +4 -4
  1053. app-ng-runtime/locales/angular/global/sv-ax.js +4 -4
  1054. app-ng-runtime/locales/angular/global/sv-fi.js +4 -4
  1055. app-ng-runtime/locales/angular/global/sv.js +4 -4
  1056. app-ng-runtime/locales/angular/global/sw-cd.js +4 -4
  1057. app-ng-runtime/locales/angular/global/sw-ke.js +4 -4
  1058. app-ng-runtime/locales/angular/global/sw-ug.js +4 -4
  1059. app-ng-runtime/locales/angular/global/sw.js +4 -4
  1060. app-ng-runtime/locales/angular/global/ta-lk.js +4 -4
  1061. app-ng-runtime/locales/angular/global/ta-my.js +4 -4
  1062. app-ng-runtime/locales/angular/global/ta-sg.js +4 -4
  1063. app-ng-runtime/locales/angular/global/ta.js +4 -4
  1064. app-ng-runtime/locales/angular/global/te.js +4 -4
  1065. app-ng-runtime/locales/angular/global/teo-ke.js +4 -4
  1066. app-ng-runtime/locales/angular/global/teo.js +4 -4
  1067. app-ng-runtime/locales/angular/global/tg.js +4 -4
  1068. app-ng-runtime/locales/angular/global/th.js +4 -4
  1069. app-ng-runtime/locales/angular/global/ti-er.js +4 -4
  1070. app-ng-runtime/locales/angular/global/ti.js +4 -4
  1071. app-ng-runtime/locales/angular/global/tk.js +4 -4
  1072. app-ng-runtime/locales/angular/global/to.js +4 -4
  1073. app-ng-runtime/locales/angular/global/tr-cy.js +4 -4
  1074. app-ng-runtime/locales/angular/global/tr.js +4 -4
  1075. app-ng-runtime/locales/angular/global/tt.js +4 -4
  1076. app-ng-runtime/locales/angular/global/twq.js +4 -4
  1077. app-ng-runtime/locales/angular/global/tzm.js +4 -4
  1078. app-ng-runtime/locales/angular/global/ug.js +4 -4
  1079. app-ng-runtime/locales/angular/global/uk.js +4 -4
  1080. app-ng-runtime/locales/angular/global/und.js +4 -4
  1081. app-ng-runtime/locales/angular/global/ur-in.js +4 -4
  1082. app-ng-runtime/locales/angular/global/ur.js +4 -4
  1083. app-ng-runtime/locales/angular/global/uz-arab.js +4 -4
  1084. app-ng-runtime/locales/angular/global/uz-cyrl.js +4 -4
  1085. app-ng-runtime/locales/angular/global/uz-latn.js +4 -4
  1086. app-ng-runtime/locales/angular/global/uz.js +4 -4
  1087. app-ng-runtime/locales/angular/global/vai-latn.js +4 -4
  1088. app-ng-runtime/locales/angular/global/vai-vaii.js +4 -4
  1089. app-ng-runtime/locales/angular/global/vai.js +4 -4
  1090. app-ng-runtime/locales/angular/global/vi.js +4 -4
  1091. app-ng-runtime/locales/angular/global/vun.js +4 -4
  1092. app-ng-runtime/locales/angular/global/wae.js +4 -4
  1093. app-ng-runtime/locales/angular/global/wo.js +4 -4
  1094. app-ng-runtime/locales/angular/global/xh.js +4 -4
  1095. app-ng-runtime/locales/angular/global/xog.js +4 -4
  1096. app-ng-runtime/locales/angular/global/yav.js +4 -4
  1097. app-ng-runtime/locales/angular/global/yi.js +4 -4
  1098. app-ng-runtime/locales/angular/global/yo-bj.js +4 -4
  1099. app-ng-runtime/locales/angular/global/yo.js +4 -4
  1100. app-ng-runtime/locales/angular/global/yrl-co.js +4 -4
  1101. app-ng-runtime/locales/angular/global/yrl-ve.js +4 -4
  1102. app-ng-runtime/locales/angular/global/yrl.js +4 -4
  1103. app-ng-runtime/locales/angular/global/yue-hans.js +4 -4
  1104. app-ng-runtime/locales/angular/global/yue-hant.js +4 -4
  1105. app-ng-runtime/locales/angular/global/yue.js +4 -4
  1106. app-ng-runtime/locales/angular/global/zgh.js +4 -4
  1107. app-ng-runtime/locales/angular/global/zh-hans-hk.js +4 -4
  1108. app-ng-runtime/locales/angular/global/zh-hans-mo.js +4 -4
  1109. app-ng-runtime/locales/angular/global/zh-hans-sg.js +4 -4
  1110. app-ng-runtime/locales/angular/global/zh-hans.js +4 -4
  1111. app-ng-runtime/locales/angular/global/zh-hant-hk.js +4 -4
  1112. app-ng-runtime/locales/angular/global/zh-hant-mo.js +4 -4
  1113. app-ng-runtime/locales/angular/global/zh-hant.js +4 -4
  1114. app-ng-runtime/locales/angular/global/zh.js +4 -4
  1115. app-ng-runtime/locales/angular/global/zu.js +4 -4
  1116. app-ng-runtime/mobile/components/basic/default/bundles/index.umd.js +124 -125
  1117. app-ng-runtime/mobile/components/basic/default/esm2022/anchor/anchor.directive.mjs +4 -4
  1118. app-ng-runtime/mobile/components/basic/default/esm2022/app-update/app-update.component.mjs +6 -7
  1119. app-ng-runtime/mobile/components/basic/default/esm2022/basic.module.mjs +2 -2
  1120. app-ng-runtime/mobile/components/basic/default/esm2022/file-browser/file-browser.component.mjs +36 -36
  1121. app-ng-runtime/mobile/components/basic/default/esm2022/file-browser/file-selector.service.mjs +3 -3
  1122. app-ng-runtime/mobile/components/basic/default/esm2022/image-cache/image-cache.directive.mjs +4 -4
  1123. app-ng-runtime/mobile/components/basic/default/esm2022/network-info-toaster/network-info-toaster.component.mjs +47 -49
  1124. app-ng-runtime/mobile/components/basic/default/esm2022/process-manager/process-management.service.mjs +2 -2
  1125. app-ng-runtime/mobile/components/basic/default/esm2022/process-manager/process-manager.component.mjs +30 -28
  1126. app-ng-runtime/mobile/components/basic/default/fesm2022/index.mjs +125 -126
  1127. app-ng-runtime/mobile/components/basic/default/fesm2022/index.mjs.map +1 -1
  1128. app-ng-runtime/mobile/components/basic/default/network-info-toaster/network-info-toaster.component.d.ts +2 -2
  1129. app-ng-runtime/mobile/components/basic/search/bundles/index.umd.js +3 -3
  1130. app-ng-runtime/mobile/components/basic/search/esm2022/search.directive.mjs +3 -3
  1131. app-ng-runtime/mobile/components/basic/search/esm2022/search.module.mjs +2 -2
  1132. app-ng-runtime/mobile/components/basic/search/fesm2022/index.mjs +3 -3
  1133. app-ng-runtime/mobile/components/basic/search/fesm2022/index.mjs.map +1 -1
  1134. app-ng-runtime/mobile/components/containers/segmented-control/bundles/index.umd.js +25 -37
  1135. app-ng-runtime/mobile/components/containers/segmented-control/esm2022/segment-content/segment-content.component.mjs +8 -14
  1136. app-ng-runtime/mobile/components/containers/segmented-control/esm2022/segmented-control.component.mjs +20 -26
  1137. app-ng-runtime/mobile/components/containers/segmented-control/esm2022/segmented-control.module.mjs +2 -2
  1138. app-ng-runtime/mobile/components/containers/segmented-control/fesm2022/index.mjs +27 -39
  1139. app-ng-runtime/mobile/components/containers/segmented-control/fesm2022/index.mjs.map +1 -1
  1140. app-ng-runtime/mobile/components/containers/segmented-control/segment-content/segment-content.component.d.ts +2 -2
  1141. app-ng-runtime/mobile/components/containers/segmented-control/segmented-control.component.d.ts +2 -2
  1142. app-ng-runtime/mobile/components/data/media-list/bundles/index.umd.js +41 -46
  1143. app-ng-runtime/mobile/components/data/media-list/esm2022/media-list-item/media-list-item.directive.mjs +2 -2
  1144. app-ng-runtime/mobile/components/data/media-list/esm2022/media-list.component.mjs +41 -46
  1145. app-ng-runtime/mobile/components/data/media-list/esm2022/media-list.module.mjs +2 -2
  1146. app-ng-runtime/mobile/components/data/media-list/fesm2022/index.mjs +43 -48
  1147. app-ng-runtime/mobile/components/data/media-list/fesm2022/index.mjs.map +1 -1
  1148. app-ng-runtime/mobile/components/data/media-list/media-list.component.d.ts +2 -2
  1149. app-ng-runtime/mobile/components/device/barcode-scanner/barcode-scanner.component.d.ts +2 -2
  1150. app-ng-runtime/mobile/components/device/barcode-scanner/bundles/index.umd.js +8 -14
  1151. app-ng-runtime/mobile/components/device/barcode-scanner/esm2022/barcode-scanner.component.mjs +9 -15
  1152. app-ng-runtime/mobile/components/device/barcode-scanner/esm2022/barcode-scanner.module.mjs +2 -2
  1153. app-ng-runtime/mobile/components/device/barcode-scanner/fesm2022/index.mjs +10 -16
  1154. app-ng-runtime/mobile/components/device/barcode-scanner/fesm2022/index.mjs.map +1 -1
  1155. app-ng-runtime/mobile/components/device/camera/bundles/index.umd.js +9 -15
  1156. app-ng-runtime/mobile/components/device/camera/camera.component.d.ts +2 -2
  1157. app-ng-runtime/mobile/components/device/camera/esm2022/camera.component.mjs +10 -16
  1158. app-ng-runtime/mobile/components/device/camera/esm2022/camera.module.mjs +2 -2
  1159. app-ng-runtime/mobile/components/device/camera/fesm2022/index.mjs +11 -17
  1160. app-ng-runtime/mobile/components/device/camera/fesm2022/index.mjs.map +1 -1
  1161. app-ng-runtime/mobile/components/input/file-upload/bundles/index.umd.js +3 -3
  1162. app-ng-runtime/mobile/components/input/file-upload/esm2022/file-upload.directive.mjs +3 -3
  1163. app-ng-runtime/mobile/components/input/file-upload/esm2022/file-upload.module.mjs +2 -2
  1164. app-ng-runtime/mobile/components/input/file-upload/fesm2022/index.mjs +3 -3
  1165. app-ng-runtime/mobile/components/input/file-upload/fesm2022/index.mjs.map +1 -1
  1166. app-ng-runtime/mobile/components/page/default/bundles/index.umd.js +5 -6
  1167. app-ng-runtime/mobile/components/page/default/esm2022/page-content-loader/page-content-loader.component.mjs +3 -4
  1168. app-ng-runtime/mobile/components/page/default/esm2022/page.directive.mjs +3 -3
  1169. app-ng-runtime/mobile/components/page/default/esm2022/page.module.mjs +2 -2
  1170. app-ng-runtime/mobile/components/page/default/fesm2022/index.mjs +5 -6
  1171. app-ng-runtime/mobile/components/page/default/fesm2022/index.mjs.map +1 -1
  1172. app-ng-runtime/mobile/components/page/left-panel/bundles/index.umd.js +3 -3
  1173. app-ng-runtime/mobile/components/page/left-panel/esm2022/left-panel.directive.mjs +3 -3
  1174. app-ng-runtime/mobile/components/page/left-panel/esm2022/left-panel.module.mjs +2 -2
  1175. app-ng-runtime/mobile/components/page/left-panel/fesm2022/index.mjs +3 -3
  1176. app-ng-runtime/mobile/components/page/left-panel/fesm2022/index.mjs.map +1 -1
  1177. app-ng-runtime/mobile/components/page/mobile-navbar/bundles/index.umd.js +35 -40
  1178. app-ng-runtime/mobile/components/page/mobile-navbar/esm2022/mobile-navbar.component.mjs +36 -41
  1179. app-ng-runtime/mobile/components/page/mobile-navbar/esm2022/mobile-navbar.module.mjs +2 -2
  1180. app-ng-runtime/mobile/components/page/mobile-navbar/fesm2022/index.mjs +36 -41
  1181. app-ng-runtime/mobile/components/page/mobile-navbar/fesm2022/index.mjs.map +1 -1
  1182. app-ng-runtime/mobile/components/page/mobile-navbar/mobile-navbar.component.d.ts +2 -2
  1183. app-ng-runtime/mobile/components/page/tab-bar/bundles/index.umd.js +37 -43
  1184. app-ng-runtime/mobile/components/page/tab-bar/esm2022/tab-bar.module.mjs +2 -2
  1185. app-ng-runtime/mobile/components/page/tab-bar/esm2022/tabbar.component.mjs +38 -44
  1186. app-ng-runtime/mobile/components/page/tab-bar/fesm2022/index.mjs +39 -45
  1187. app-ng-runtime/mobile/components/page/tab-bar/fesm2022/index.mjs.map +1 -1
  1188. app-ng-runtime/mobile/components/page/tab-bar/tabbar.component.d.ts +2 -2
  1189. app-ng-runtime/mobile/core/bundles/index.umd.js +18 -18
  1190. app-ng-runtime/mobile/core/esm2022/core.module.mjs +3 -3
  1191. app-ng-runtime/mobile/core/esm2022/native.xhr.mjs +1 -1
  1192. app-ng-runtime/mobile/core/esm2022/services/device-file-cache.service.mjs +3 -3
  1193. app-ng-runtime/mobile/core/esm2022/services/device-file-download.service.mjs +3 -3
  1194. app-ng-runtime/mobile/core/esm2022/services/device-file-opener.service.mjs +3 -3
  1195. app-ng-runtime/mobile/core/esm2022/services/device-file-upload.service.mjs +3 -3
  1196. app-ng-runtime/mobile/core/esm2022/services/device-file.service.mjs +3 -3
  1197. app-ng-runtime/mobile/core/esm2022/services/device.service.mjs +3 -3
  1198. app-ng-runtime/mobile/core/esm2022/services/ext-app-message.service.mjs +3 -3
  1199. app-ng-runtime/mobile/core/esm2022/services/network.service.mjs +3 -3
  1200. app-ng-runtime/mobile/core/fesm2022/index.mjs +18 -18
  1201. app-ng-runtime/mobile/core/fesm2022/index.mjs.map +1 -1
  1202. app-ng-runtime/mobile/offline/bundles/index.umd.js +15 -15
  1203. app-ng-runtime/mobile/offline/esm2022/models/local-db-store.mjs +1 -1
  1204. app-ng-runtime/mobile/offline/esm2022/offline.module.mjs +3 -3
  1205. app-ng-runtime/mobile/offline/esm2022/services/change-log.service.mjs +3 -3
  1206. app-ng-runtime/mobile/offline/esm2022/services/local-db-data-pull.service.mjs +3 -3
  1207. app-ng-runtime/mobile/offline/esm2022/services/local-db-management.service.mjs +3 -3
  1208. app-ng-runtime/mobile/offline/esm2022/services/local-db.service.mjs +3 -3
  1209. app-ng-runtime/mobile/offline/esm2022/services/local-key-value.service.mjs +2 -2
  1210. app-ng-runtime/mobile/offline/esm2022/services/push.service.mjs +3 -3
  1211. app-ng-runtime/mobile/offline/esm2022/services/workers/error-blocker.mjs +1 -1
  1212. app-ng-runtime/mobile/offline/esm2022/services/workers/file-handler.mjs +1 -1
  1213. app-ng-runtime/mobile/offline/esm2022/services/workers/id-resolver.mjs +3 -3
  1214. app-ng-runtime/mobile/offline/esm2022/services/workers/multi-part-param-transformer.mjs +1 -1
  1215. app-ng-runtime/mobile/offline/esm2022/utils/file-upload.utils.mjs +1 -1
  1216. app-ng-runtime/mobile/offline/esm2022/utils/live-variable.utils.mjs +1 -1
  1217. app-ng-runtime/mobile/offline/esm2022/utils/query-executor.utils.mjs +1 -1
  1218. app-ng-runtime/mobile/offline/esm2022/utils/security.utils.mjs +1 -1
  1219. app-ng-runtime/mobile/offline/esm2022/utils/utils.mjs +1 -1
  1220. app-ng-runtime/mobile/offline/fesm2022/index.mjs +16 -16
  1221. app-ng-runtime/mobile/offline/fesm2022/index.mjs.map +1 -1
  1222. app-ng-runtime/mobile/placeholder/runtime/bundles/index.umd.js +2 -3
  1223. app-ng-runtime/mobile/placeholder/runtime/esm2022/components/app-ext.component.mjs +2 -3
  1224. app-ng-runtime/mobile/placeholder/runtime/esm2022/mobile-runtime.module.mjs +2 -2
  1225. app-ng-runtime/mobile/placeholder/runtime/fesm2022/index.mjs +2 -3
  1226. app-ng-runtime/mobile/placeholder/runtime/fesm2022/index.mjs.map +1 -1
  1227. app-ng-runtime/mobile/placeholder/runtime-dynamic/bundles/index.umd.js +1 -1
  1228. app-ng-runtime/mobile/placeholder/runtime-dynamic/esm2022/mobile-runtime-dynamic.module.mjs +2 -2
  1229. app-ng-runtime/mobile/placeholder/runtime-dynamic/fesm2022/index.mjs +1 -1
  1230. app-ng-runtime/mobile/placeholder/runtime-dynamic/fesm2022/index.mjs.map +1 -1
  1231. app-ng-runtime/mobile/runtime/bundles/index.umd.js +9 -10
  1232. app-ng-runtime/mobile/runtime/esm2022/components/app-ext.component.mjs +3 -4
  1233. app-ng-runtime/mobile/runtime/esm2022/mobile-runtime.module.mjs +3 -3
  1234. app-ng-runtime/mobile/runtime/esm2022/services/cookie.service.mjs +2 -2
  1235. app-ng-runtime/mobile/runtime/esm2022/services/http-interceptor.service.mjs +3 -3
  1236. app-ng-runtime/mobile/runtime/esm2022/services/webprocess.service.mjs +3 -3
  1237. app-ng-runtime/mobile/runtime/fesm2022/index.mjs +9 -10
  1238. app-ng-runtime/mobile/runtime/fesm2022/index.mjs.map +1 -1
  1239. app-ng-runtime/mobile/runtime-dynamic/bundles/index.umd.js +3 -3
  1240. app-ng-runtime/mobile/runtime-dynamic/esm2022/mobile-runtime-dynamic.module.mjs +2 -2
  1241. app-ng-runtime/mobile/runtime-dynamic/esm2022/services/live-sync.service.mjs +3 -3
  1242. app-ng-runtime/mobile/runtime-dynamic/fesm2022/index.mjs +3 -3
  1243. app-ng-runtime/mobile/runtime-dynamic/fesm2022/index.mjs.map +1 -1
  1244. app-ng-runtime/mobile/variables/bundles/index.umd.js +5 -5
  1245. app-ng-runtime/mobile/variables/esm2022/services/camera-service.mjs +4 -4
  1246. app-ng-runtime/mobile/variables/esm2022/services/contacts-service.mjs +1 -1
  1247. app-ng-runtime/mobile/variables/esm2022/services/datasync-service.mjs +1 -1
  1248. app-ng-runtime/mobile/variables/esm2022/services/device-service/device-service.mjs +1 -1
  1249. app-ng-runtime/mobile/variables/esm2022/services/device-service/location-service.mjs +1 -1
  1250. app-ng-runtime/mobile/variables/esm2022/services/file-service.mjs +1 -1
  1251. app-ng-runtime/mobile/variables/esm2022/services/scan-service.mjs +1 -1
  1252. app-ng-runtime/mobile/variables/esm2022/variables.module.mjs +3 -3
  1253. app-ng-runtime/mobile/variables/fesm2022/index.mjs +5 -5
  1254. app-ng-runtime/mobile/variables/fesm2022/index.mjs.map +1 -1
  1255. app-ng-runtime/oAuth/bundles/index.umd.js +3 -3
  1256. app-ng-runtime/oAuth/esm2022/oAuth.module.mjs +2 -2
  1257. app-ng-runtime/oAuth/esm2022/oAuth.service.mjs +3 -3
  1258. app-ng-runtime/oAuth/esm2022/oAuth.utils.mjs +1 -1
  1259. app-ng-runtime/oAuth/fesm2022/index.mjs +3 -3
  1260. app-ng-runtime/oAuth/fesm2022/index.mjs.map +1 -1
  1261. app-ng-runtime/package.json +1 -1
  1262. app-ng-runtime/runtime/base/bundles/index.umd.js +118 -122
  1263. app-ng-runtime/runtime/base/esm2022/components/app-component/app.component.mjs +27 -27
  1264. app-ng-runtime/runtime/base/esm2022/components/app-spinner.component.mjs +8 -9
  1265. app-ng-runtime/runtime/base/esm2022/components/base-layout.component.mjs +2 -2
  1266. app-ng-runtime/runtime/base/esm2022/components/base-page.component.mjs +3 -3
  1267. app-ng-runtime/runtime/base/esm2022/components/base-partial.component.mjs +3 -3
  1268. app-ng-runtime/runtime/base/esm2022/components/base-prefab.component.mjs +3 -3
  1269. app-ng-runtime/runtime/base/esm2022/components/base-spa-page.component.mjs +3 -3
  1270. app-ng-runtime/runtime/base/esm2022/components/custom-toaster.component.mjs +12 -13
  1271. app-ng-runtime/runtime/base/esm2022/components/empty-component/empty-page.component.mjs +3 -4
  1272. app-ng-runtime/runtime/base/esm2022/components/prefab-preview.component.mjs +3 -4
  1273. app-ng-runtime/runtime/base/esm2022/directives/accessroles.directive.mjs +3 -3
  1274. app-ng-runtime/runtime/base/esm2022/directives/prefab.directive.mjs +4 -4
  1275. app-ng-runtime/runtime/base/esm2022/guards/auth.guard.mjs +3 -3
  1276. app-ng-runtime/runtime/base/esm2022/guards/can-deactivate-page.guard.mjs +3 -3
  1277. app-ng-runtime/runtime/base/esm2022/guards/page-not-found.guard.mjs +3 -3
  1278. app-ng-runtime/runtime/base/esm2022/guards/role.guard.mjs +3 -3
  1279. app-ng-runtime/runtime/base/esm2022/overrides/wm_dom_renderer.mjs +4 -4
  1280. app-ng-runtime/runtime/base/esm2022/overrides/wm_shared_styles_host.mjs +5 -5
  1281. app-ng-runtime/runtime/base/esm2022/resolves/app-extension.resolve.mjs +3 -3
  1282. app-ng-runtime/runtime/base/esm2022/resolves/app-js.resolve.mjs +3 -3
  1283. app-ng-runtime/runtime/base/esm2022/resolves/app-variables.resolve.mjs +3 -3
  1284. app-ng-runtime/runtime/base/esm2022/resolves/i18n.resolve.mjs +3 -3
  1285. app-ng-runtime/runtime/base/esm2022/resolves/metadata.resolve.mjs +3 -3
  1286. app-ng-runtime/runtime/base/esm2022/resolves/security-config.resolve.mjs +3 -3
  1287. app-ng-runtime/runtime/base/esm2022/runtime-base.module.mjs +3 -3
  1288. app-ng-runtime/runtime/base/esm2022/services/app-defaults.service.mjs +3 -3
  1289. app-ng-runtime/runtime/base/esm2022/services/app.manager.service.mjs +3 -3
  1290. app-ng-runtime/runtime/base/esm2022/services/app.service.mjs +3 -3
  1291. app-ng-runtime/runtime/base/esm2022/services/dynamic-component-ref-provider.service.mjs +3 -3
  1292. app-ng-runtime/runtime/base/esm2022/services/http-interceptor.services.mjs +3 -3
  1293. app-ng-runtime/runtime/base/esm2022/services/i18n.service.mjs +3 -3
  1294. app-ng-runtime/runtime/base/esm2022/services/navigation.service.mjs +3 -3
  1295. app-ng-runtime/runtime/base/esm2022/services/pipe-provider.service.mjs +3 -3
  1296. app-ng-runtime/runtime/base/esm2022/services/pipe.service.mjs +3 -3
  1297. app-ng-runtime/runtime/base/esm2022/services/prefab-manager.service.mjs +3 -3
  1298. app-ng-runtime/runtime/base/esm2022/services/spinner.service.mjs +3 -3
  1299. app-ng-runtime/runtime/base/esm2022/services/toaster.service.mjs +3 -3
  1300. app-ng-runtime/runtime/base/esm2022/util/fragment-monitor.mjs +3 -3
  1301. app-ng-runtime/runtime/base/esm2022/util/wm-route-reuse-strategy.mjs +2 -2
  1302. app-ng-runtime/runtime/base/fesm2022/index.mjs +130 -134
  1303. app-ng-runtime/runtime/base/fesm2022/index.mjs.map +1 -1
  1304. app-ng-runtime/runtime/base/overrides/wm_dom_renderer.d.ts +2 -2
  1305. app-ng-runtime/runtime/dynamic/bundles/index.umd.js +14 -15
  1306. app-ng-runtime/runtime/dynamic/esm2022/app/app.module.mjs +1 -1
  1307. app-ng-runtime/runtime/dynamic/esm2022/app/components/page-wrapper.component.mjs +3 -4
  1308. app-ng-runtime/runtime/dynamic/esm2022/app/services/app-extension.service.mjs +3 -3
  1309. app-ng-runtime/runtime/dynamic/esm2022/app/services/app-js-provider.service.mjs +3 -3
  1310. app-ng-runtime/runtime/dynamic/esm2022/app/services/app-resource-manager.service.mjs +3 -3
  1311. app-ng-runtime/runtime/dynamic/esm2022/app/services/app-variables-provider.service.mjs +3 -3
  1312. app-ng-runtime/runtime/dynamic/esm2022/app/services/component-ref-provider.service.mjs +3 -3
  1313. app-ng-runtime/runtime/dynamic/esm2022/app/services/prefab-config-provider.service.mjs +3 -3
  1314. app-ng-runtime/runtime/dynamic/esm2022/main.mjs +1 -1
  1315. app-ng-runtime/runtime/dynamic/fesm2022/index.mjs +16 -17
  1316. app-ng-runtime/runtime/dynamic/fesm2022/index.mjs.map +1 -1
  1317. app-ng-runtime/scripts/datatable/datatable.js +2 -1
  1318. app-ng-runtime/security/bundles/index.umd.js +3 -3
  1319. app-ng-runtime/security/esm2022/security.module.mjs +2 -2
  1320. app-ng-runtime/security/esm2022/security.service.mjs +3 -3
  1321. app-ng-runtime/security/fesm2022/index.mjs +3 -3
  1322. app-ng-runtime/security/fesm2022/index.mjs.map +1 -1
  1323. app-ng-runtime/swipey/esm2022/swipe.animation.mjs +1 -1
  1324. app-ng-runtime/swipey/fesm2022/index.mjs.map +1 -1
  1325. app-ng-runtime/transpiler/esm2022/build.mjs +1 -1
  1326. app-ng-runtime/transpiler/fesm2022/index.mjs.map +1 -1
  1327. app-ng-runtime/variables/bundles/index.umd.js +5 -5
  1328. app-ng-runtime/variables/esm2022/factory/variable.factory.mjs +1 -1
  1329. app-ng-runtime/variables/esm2022/manager/action/login-action.manager.mjs +1 -1
  1330. app-ng-runtime/variables/esm2022/manager/action/logout-action.manager.mjs +1 -1
  1331. app-ng-runtime/variables/esm2022/manager/action/notification-action.manager.mjs +1 -1
  1332. app-ng-runtime/variables/esm2022/manager/variable/base-variable.manager.mjs +1 -1
  1333. app-ng-runtime/variables/esm2022/manager/variable/device-variable-manager.mjs +1 -1
  1334. app-ng-runtime/variables/esm2022/manager/variable/device-variable-service.mjs +1 -1
  1335. app-ng-runtime/variables/esm2022/manager/variable/web-socket-variable.manager.mjs +1 -1
  1336. app-ng-runtime/variables/esm2022/model/action/notification-action.mjs +1 -1
  1337. app-ng-runtime/variables/esm2022/service/metadata-service/metadata.service.mjs +3 -3
  1338. app-ng-runtime/variables/esm2022/service/variables.service.mjs +3 -3
  1339. app-ng-runtime/variables/esm2022/util/action/navigation-action.utils.mjs +1 -1
  1340. app-ng-runtime/variables/esm2022/util/variable/pagination.utils.mjs +1 -1
  1341. app-ng-runtime/variables/esm2022/util/variable/service-variable.utils.mjs +1 -1
  1342. app-ng-runtime/variables/esm2022/util/variable/variables.utils.mjs +1 -1
  1343. app-ng-runtime/variables/esm2022/variables.module.mjs +2 -2
  1344. app-ng-runtime/variables/fesm2022/index.mjs +5 -5
  1345. app-ng-runtime/variables/fesm2022/index.mjs.map +1 -1
  1346. app-ng-runtime/build-task/.npmignore +0 -2
  1347. app-ng-runtime/components/advanced/carousel/.npmignore +0 -2
  1348. app-ng-runtime/components/advanced/login/.npmignore +0 -2
  1349. app-ng-runtime/components/advanced/marquee/.npmignore +0 -2
  1350. app-ng-runtime/components/base/.npmignore +0 -2
  1351. app-ng-runtime/components/basic/default/.npmignore +0 -2
  1352. app-ng-runtime/components/basic/progress/.npmignore +0 -2
  1353. app-ng-runtime/components/basic/rich-text-editor/.npmignore +0 -2
  1354. app-ng-runtime/components/basic/search/.npmignore +0 -2
  1355. app-ng-runtime/components/basic/tree/.npmignore +0 -2
  1356. app-ng-runtime/components/chart/.npmignore +0 -2
  1357. app-ng-runtime/components/containers/accordion/.npmignore +0 -2
  1358. app-ng-runtime/components/containers/layout-grid/.npmignore +0 -2
  1359. app-ng-runtime/components/containers/linear-layout/.npmignore +0 -2
  1360. app-ng-runtime/components/containers/panel/.npmignore +0 -2
  1361. app-ng-runtime/components/containers/tabs/.npmignore +0 -2
  1362. app-ng-runtime/components/containers/tile/.npmignore +0 -2
  1363. app-ng-runtime/components/containers/wizard/.npmignore +0 -2
  1364. app-ng-runtime/components/data/card/.npmignore +0 -2
  1365. app-ng-runtime/components/data/form/.npmignore +0 -2
  1366. app-ng-runtime/components/data/list/.npmignore +0 -2
  1367. app-ng-runtime/components/data/live-table/.npmignore +0 -2
  1368. app-ng-runtime/components/data/pagination/.npmignore +0 -2
  1369. app-ng-runtime/components/data/table/.npmignore +0 -2
  1370. app-ng-runtime/components/dialogs/alert-dialog/.npmignore +0 -2
  1371. app-ng-runtime/components/dialogs/confirm-dialog/.npmignore +0 -2
  1372. app-ng-runtime/components/dialogs/default/.npmignore +0 -2
  1373. app-ng-runtime/components/dialogs/design-dialog/.npmignore +0 -2
  1374. app-ng-runtime/components/dialogs/iframe-dialog/.npmignore +0 -2
  1375. app-ng-runtime/components/dialogs/login-dialog/.npmignore +0 -2
  1376. app-ng-runtime/components/dialogs/partial-dialog/.npmignore +0 -2
  1377. app-ng-runtime/components/input/calendar/.npmignore +0 -2
  1378. app-ng-runtime/components/input/chips/.npmignore +0 -2
  1379. app-ng-runtime/components/input/color-picker/.npmignore +0 -2
  1380. app-ng-runtime/components/input/currency/.npmignore +0 -2
  1381. app-ng-runtime/components/input/default/.npmignore +0 -2
  1382. app-ng-runtime/components/input/epoch/.npmignore +0 -2
  1383. app-ng-runtime/components/input/file-upload/.npmignore +0 -2
  1384. app-ng-runtime/components/input/rating/.npmignore +0 -2
  1385. app-ng-runtime/components/input/slider/.npmignore +0 -2
  1386. app-ng-runtime/components/navigation/breadcrumb/.npmignore +0 -2
  1387. app-ng-runtime/components/navigation/menu/.npmignore +0 -2
  1388. app-ng-runtime/components/navigation/navbar/.npmignore +0 -2
  1389. app-ng-runtime/components/navigation/popover/.npmignore +0 -2
  1390. app-ng-runtime/components/page/default/.npmignore +0 -2
  1391. app-ng-runtime/components/page/footer/.npmignore +0 -2
  1392. app-ng-runtime/components/page/header/.npmignore +0 -2
  1393. app-ng-runtime/components/page/left-panel/.npmignore +0 -2
  1394. app-ng-runtime/components/page/right-panel/.npmignore +0 -2
  1395. app-ng-runtime/components/page/top-nav/.npmignore +0 -2
  1396. app-ng-runtime/components/prefab/.npmignore +0 -2
  1397. app-ng-runtime/core/.npmignore +0 -2
  1398. app-ng-runtime/http/.npmignore +0 -2
  1399. app-ng-runtime/mobile/components/basic/default/.npmignore +0 -2
  1400. app-ng-runtime/mobile/components/basic/search/.npmignore +0 -2
  1401. app-ng-runtime/mobile/components/containers/segmented-control/.npmignore +0 -2
  1402. app-ng-runtime/mobile/components/data/media-list/.npmignore +0 -2
  1403. app-ng-runtime/mobile/components/device/barcode-scanner/.npmignore +0 -2
  1404. app-ng-runtime/mobile/components/device/camera/.npmignore +0 -2
  1405. app-ng-runtime/mobile/components/input/file-upload/.npmignore +0 -2
  1406. app-ng-runtime/mobile/components/page/default/.npmignore +0 -2
  1407. app-ng-runtime/mobile/components/page/left-panel/.npmignore +0 -2
  1408. app-ng-runtime/mobile/components/page/mobile-navbar/.npmignore +0 -2
  1409. app-ng-runtime/mobile/components/page/tab-bar/.npmignore +0 -2
  1410. app-ng-runtime/mobile/core/.npmignore +0 -2
  1411. app-ng-runtime/mobile/offline/.npmignore +0 -2
  1412. app-ng-runtime/mobile/placeholder/runtime/.npmignore +0 -2
  1413. app-ng-runtime/mobile/placeholder/runtime-dynamic/.npmignore +0 -2
  1414. app-ng-runtime/mobile/runtime/.npmignore +0 -2
  1415. app-ng-runtime/mobile/runtime-dynamic/.npmignore +0 -2
  1416. app-ng-runtime/mobile/variables/.npmignore +0 -2
  1417. app-ng-runtime/oAuth/.npmignore +0 -2
  1418. app-ng-runtime/runtime/base/.npmignore +0 -2
  1419. app-ng-runtime/runtime/dynamic/.npmignore +0 -2
  1420. app-ng-runtime/security/.npmignore +0 -2
  1421. app-ng-runtime/swipey/.npmignore +0 -2
  1422. app-ng-runtime/transpiler/.npmignore +0 -2
  1423. app-ng-runtime/variables/.npmignore +0 -2
@@ -33,7 +33,7 @@ export class AppJSResolve {
33
33
  static { this.ɵfac = function AppJSResolve_Factory(t) { return new (t || AppJSResolve)(i0.ɵɵinject(i0.Injector), i0.ɵɵinject(i1.App), i0.ɵɵinject(i1.UtilsService), i0.ɵɵinject(i2.AppJSProvider)); }; }
34
34
  static { this.ɵprov = /*@__PURE__*/ i0.ɵɵdefineInjectable({ token: AppJSResolve, factory: AppJSResolve.ɵfac }); }
35
35
  }
36
- (() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassMetadata(AppJSResolve, [{
36
+ (function () { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassMetadata(AppJSResolve, [{
37
37
  type: Injectable
38
- }], () => [{ type: i0.Injector }, { type: i1.App }, { type: i1.UtilsService }, { type: i2.AppJSProvider }], null); })();
39
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYXBwLWpzLnJlc29sdmUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9ydW50aW1lLWJhc2Uvc3JjL3Jlc29sdmVzL2FwcC1qcy5yZXNvbHZlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxVQUFVLEVBQUUsUUFBUSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBR3JELE9BQU8sRUFBRSxHQUFHLEVBQUUsWUFBWSxFQUFFLE1BQU0sVUFBVSxDQUFDO0FBRTdDLE9BQU8sRUFBRSxhQUFhLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUMvQyxPQUFPLEVBQUUsaUJBQWlCLEVBQUUsTUFBTSxpQ0FBaUMsQ0FBQzs7OztBQUVwRSxJQUFJLFdBQVcsR0FBRyxLQUFLLENBQUM7QUFHeEIsTUFBTSxPQUFPLFlBQVk7SUFHckIsMkhBQTJIO0lBQzNILFlBQ1ksR0FBYSxFQUNiLEdBQVEsRUFDUixXQUF5QixFQUN6QixhQUE0QjtRQUg1QixRQUFHLEdBQUgsR0FBRyxDQUFVO1FBQ2IsUUFBRyxHQUFILEdBQUcsQ0FBSztRQUNSLGdCQUFXLEdBQVgsV0FBVyxDQUFjO1FBQ3pCLGtCQUFhLEdBQWIsYUFBYSxDQUFlO1FBRXBDLElBQUksQ0FBQyxVQUFVLEdBQUcsSUFBSSxDQUFDLEdBQUcsQ0FBQyxHQUFHLENBQUMsaUJBQWlCLENBQUMsQ0FBQztJQUN0RCxDQUFDO0lBRUQsS0FBSyxDQUFDLE9BQU87UUFDVCxJQUFJLFdBQVcsRUFBRSxDQUFDO1lBQ2QsT0FBTyxJQUFJLENBQUM7UUFDaEIsQ0FBQztRQUVELElBQUksQ0FBQztZQUNELGlCQUFpQjtZQUNqQixNQUFNLFdBQVcsR0FBRyxNQUFNLElBQUksQ0FBQyxhQUFhLENBQUMsY0FBYyxFQUFFLENBQUM7WUFDOUQsV0FBVyxDQUFDLElBQUksQ0FBQyxHQUFHLEVBQUUsSUFBSSxDQUFDLFdBQVcsRUFBRSxJQUFJLENBQUMsR0FBRyxDQUFDLENBQUM7UUFDdEQsQ0FBQztRQUFDLE9BQU8sQ0FBQyxFQUFFLENBQUM7WUFDVCxPQUFPLENBQUMsSUFBSSxDQUFDLDJCQUEyQixFQUFFLENBQUMsQ0FBQyxDQUFDO1FBQ2pELENBQUM7UUFFRCxXQUFXLEdBQUcsSUFBSSxDQUFDO1FBRW5CLE9BQU8sSUFBSSxDQUFDO0lBQ2hCLENBQUM7NkVBN0JRLFlBQVk7dUVBQVosWUFBWSxXQUFaLFlBQVk7O2lGQUFaLFlBQVk7Y0FEeEIsVUFBVSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEluamVjdGFibGUsIEluamVjdG9yIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5cblxuaW1wb3J0IHsgQXBwLCBVdGlsc1NlcnZpY2UgfSBmcm9tICdAd20vY29yZSc7XG5cbmltcG9ydCB7IEFwcEpTUHJvdmlkZXIgfSBmcm9tICcuLi90eXBlcy90eXBlcyc7XG5pbXBvcnQgeyBBcHBNYW5hZ2VyU2VydmljZSB9IGZyb20gJy4uL3NlcnZpY2VzL2FwcC5tYW5hZ2VyLnNlcnZpY2UnO1xuXG5sZXQgYXBwSnNMb2FkZWQgPSBmYWxzZTtcblxuQEluamVjdGFibGUoKVxuZXhwb3J0IGNsYXNzIEFwcEpTUmVzb2x2ZSB7XG4gICAgcHJpdmF0ZSBhcHBNYW5hZ2VyO1xuXG4gICAgLy8gQXBwTWFuYWdlclNlcnZpY2U6IFRvIGJlIG1ha2Ugc3VyZSB0aGlzIGluc3RhbmNlIGF2YWlsYWJsZSBmb3IgbG9jYWxlKGVuLmpzb24pIGNhbGxzIHJlcXVlc3QgdG8gdHJhY2sgaW5zaWRlIGludGVyY2VwdGVyXG4gICAgY29uc3RydWN0b3IoXG4gICAgICAgIHByaXZhdGUgaW5qOiBJbmplY3RvcixcbiAgICAgICAgcHJpdmF0ZSBhcHA6IEFwcCxcbiAgICAgICAgcHJpdmF0ZSB1dGlsU2VydmljZTogVXRpbHNTZXJ2aWNlLFxuICAgICAgICBwcml2YXRlIGFwcEpzUHJvdmlkZXI6IEFwcEpTUHJvdmlkZXJcbiAgICApIHtcbiAgICAgICAgdGhpcy5hcHBNYW5hZ2VyID0gdGhpcy5pbmouZ2V0KEFwcE1hbmFnZXJTZXJ2aWNlKTtcbiAgICB9XG5cbiAgICBhc3luYyByZXNvbHZlKCkge1xuICAgICAgICBpZiAoYXBwSnNMb2FkZWQpIHtcbiAgICAgICAgICAgIHJldHVybiB0cnVlO1xuICAgICAgICB9XG5cbiAgICAgICAgdHJ5IHtcbiAgICAgICAgICAgIC8vIGV4ZWN1dGUgYXBwLmpzXG4gICAgICAgICAgICBjb25zdCBhcHBTY3JpcHRGbiA9IGF3YWl0IHRoaXMuYXBwSnNQcm92aWRlci5nZXRBcHBTY3JpcHRGbigpO1xuICAgICAgICAgICAgYXBwU2NyaXB0Rm4odGhpcy5hcHAsIHRoaXMudXRpbFNlcnZpY2UsIHRoaXMuaW5qKTtcbiAgICAgICAgfSBjYXRjaCAoZSkge1xuICAgICAgICAgICAgY29uc29sZS53YXJuKCdFcnJvciBpbiBleGVjdXRpbmcgYXBwLmpzJywgZSk7XG4gICAgICAgIH1cblxuICAgICAgICBhcHBKc0xvYWRlZCA9IHRydWU7XG5cbiAgICAgICAgcmV0dXJuIHRydWU7XG4gICAgfVxufVxuIl19
38
+ }], function () { return [{ type: i0.Injector }, { type: i1.App }, { type: i1.UtilsService }, { type: i2.AppJSProvider }]; }, null); })();
39
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYXBwLWpzLnJlc29sdmUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9ydW50aW1lLWJhc2Uvc3JjL3Jlc29sdmVzL2FwcC1qcy5yZXNvbHZlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxVQUFVLEVBQUUsUUFBUSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBR3JELE9BQU8sRUFBRSxHQUFHLEVBQUUsWUFBWSxFQUFFLE1BQU0sVUFBVSxDQUFDO0FBRTdDLE9BQU8sRUFBRSxhQUFhLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUMvQyxPQUFPLEVBQUUsaUJBQWlCLEVBQUUsTUFBTSxpQ0FBaUMsQ0FBQzs7OztBQUVwRSxJQUFJLFdBQVcsR0FBRyxLQUFLLENBQUM7QUFHeEIsTUFBTSxPQUFPLFlBQVk7SUFHckIsMkhBQTJIO0lBQzNILFlBQ1ksR0FBYSxFQUNiLEdBQVEsRUFDUixXQUF5QixFQUN6QixhQUE0QjtRQUg1QixRQUFHLEdBQUgsR0FBRyxDQUFVO1FBQ2IsUUFBRyxHQUFILEdBQUcsQ0FBSztRQUNSLGdCQUFXLEdBQVgsV0FBVyxDQUFjO1FBQ3pCLGtCQUFhLEdBQWIsYUFBYSxDQUFlO1FBRXBDLElBQUksQ0FBQyxVQUFVLEdBQUcsSUFBSSxDQUFDLEdBQUcsQ0FBQyxHQUFHLENBQUMsaUJBQWlCLENBQUMsQ0FBQztJQUN0RCxDQUFDO0lBRUQsS0FBSyxDQUFDLE9BQU87UUFDVCxJQUFJLFdBQVcsRUFBRTtZQUNiLE9BQU8sSUFBSSxDQUFDO1NBQ2Y7UUFFRCxJQUFJO1lBQ0EsaUJBQWlCO1lBQ2pCLE1BQU0sV0FBVyxHQUFHLE1BQU0sSUFBSSxDQUFDLGFBQWEsQ0FBQyxjQUFjLEVBQUUsQ0FBQztZQUM5RCxXQUFXLENBQUMsSUFBSSxDQUFDLEdBQUcsRUFBRSxJQUFJLENBQUMsV0FBVyxFQUFFLElBQUksQ0FBQyxHQUFHLENBQUMsQ0FBQztTQUNyRDtRQUFDLE9BQU8sQ0FBQyxFQUFFO1lBQ1IsT0FBTyxDQUFDLElBQUksQ0FBQywyQkFBMkIsRUFBRSxDQUFDLENBQUMsQ0FBQztTQUNoRDtRQUVELFdBQVcsR0FBRyxJQUFJLENBQUM7UUFFbkIsT0FBTyxJQUFJLENBQUM7SUFDaEIsQ0FBQzs2RUE3QlEsWUFBWTt1RUFBWixZQUFZLFdBQVosWUFBWTs7dUZBQVosWUFBWTtjQUR4QixVQUFVIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgSW5qZWN0YWJsZSwgSW5qZWN0b3IgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcblxuXG5pbXBvcnQgeyBBcHAsIFV0aWxzU2VydmljZSB9IGZyb20gJ0B3bS9jb3JlJztcblxuaW1wb3J0IHsgQXBwSlNQcm92aWRlciB9IGZyb20gJy4uL3R5cGVzL3R5cGVzJztcbmltcG9ydCB7IEFwcE1hbmFnZXJTZXJ2aWNlIH0gZnJvbSAnLi4vc2VydmljZXMvYXBwLm1hbmFnZXIuc2VydmljZSc7XG5cbmxldCBhcHBKc0xvYWRlZCA9IGZhbHNlO1xuXG5ASW5qZWN0YWJsZSgpXG5leHBvcnQgY2xhc3MgQXBwSlNSZXNvbHZlIHtcbiAgICBwcml2YXRlIGFwcE1hbmFnZXI7XG5cbiAgICAvLyBBcHBNYW5hZ2VyU2VydmljZTogVG8gYmUgbWFrZSBzdXJlIHRoaXMgaW5zdGFuY2UgYXZhaWxhYmxlIGZvciBsb2NhbGUoZW4uanNvbikgY2FsbHMgcmVxdWVzdCB0byB0cmFjayBpbnNpZGUgaW50ZXJjZXB0ZXJcbiAgICBjb25zdHJ1Y3RvcihcbiAgICAgICAgcHJpdmF0ZSBpbmo6IEluamVjdG9yLFxuICAgICAgICBwcml2YXRlIGFwcDogQXBwLFxuICAgICAgICBwcml2YXRlIHV0aWxTZXJ2aWNlOiBVdGlsc1NlcnZpY2UsXG4gICAgICAgIHByaXZhdGUgYXBwSnNQcm92aWRlcjogQXBwSlNQcm92aWRlclxuICAgICkge1xuICAgICAgICB0aGlzLmFwcE1hbmFnZXIgPSB0aGlzLmluai5nZXQoQXBwTWFuYWdlclNlcnZpY2UpO1xuICAgIH1cblxuICAgIGFzeW5jIHJlc29sdmUoKSB7XG4gICAgICAgIGlmIChhcHBKc0xvYWRlZCkge1xuICAgICAgICAgICAgcmV0dXJuIHRydWU7XG4gICAgICAgIH1cblxuICAgICAgICB0cnkge1xuICAgICAgICAgICAgLy8gZXhlY3V0ZSBhcHAuanNcbiAgICAgICAgICAgIGNvbnN0IGFwcFNjcmlwdEZuID0gYXdhaXQgdGhpcy5hcHBKc1Byb3ZpZGVyLmdldEFwcFNjcmlwdEZuKCk7XG4gICAgICAgICAgICBhcHBTY3JpcHRGbih0aGlzLmFwcCwgdGhpcy51dGlsU2VydmljZSwgdGhpcy5pbmopO1xuICAgICAgICB9IGNhdGNoIChlKSB7XG4gICAgICAgICAgICBjb25zb2xlLndhcm4oJ0Vycm9yIGluIGV4ZWN1dGluZyBhcHAuanMnLCBlKTtcbiAgICAgICAgfVxuXG4gICAgICAgIGFwcEpzTG9hZGVkID0gdHJ1ZTtcblxuICAgICAgICByZXR1cm4gdHJ1ZTtcbiAgICB9XG59XG4iXX0=
@@ -22,10 +22,10 @@ export class AppVariablesResolve {
22
22
  static { this.ɵfac = function AppVariablesResolve_Factory(t) { return new (t || AppVariablesResolve)(i0.ɵɵinject(i1.AppManagerService), i0.ɵɵinject(i2.AppVariablesProvider)); }; }
23
23
  static { this.ɵprov = /*@__PURE__*/ i0.ɵɵdefineInjectable({ token: AppVariablesResolve, factory: AppVariablesResolve.ɵfac, providedIn: 'root' }); }
24
24
  }
25
- (() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassMetadata(AppVariablesResolve, [{
25
+ (function () { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassMetadata(AppVariablesResolve, [{
26
26
  type: Injectable,
27
27
  args: [{
28
28
  providedIn: 'root'
29
29
  }]
30
- }], () => [{ type: i1.AppManagerService }, { type: i2.AppVariablesProvider }], null); })();
31
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYXBwLXZhcmlhYmxlcy5yZXNvbHZlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvcnVudGltZS1iYXNlL3NyYy9yZXNvbHZlcy9hcHAtdmFyaWFibGVzLnJlc29sdmUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUczQyxPQUFPLEVBQUUsaUJBQWlCLEVBQUUsTUFBTSxpQ0FBaUMsQ0FBQztBQUNwRSxPQUFPLEVBQUUsb0JBQW9CLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQzs7OztBQUV0RCxJQUFJLGtCQUFrQixHQUFHLEtBQUssQ0FBQztBQUsvQixNQUFNLE9BQU8sbUJBQW1CO0lBRTVCLFlBQ1ksVUFBNkIsRUFDN0Isb0JBQTBDO1FBRDFDLGVBQVUsR0FBVixVQUFVLENBQW1CO1FBQzdCLHlCQUFvQixHQUFwQixvQkFBb0IsQ0FBc0I7SUFDbkQsQ0FBQztJQUVKLE9BQU87UUFDSCxpQkFBaUI7UUFDakIsSUFBSSxrQkFBa0IsRUFBRSxDQUFDO1lBQ3JCLE9BQU8sSUFBSSxDQUFDO1FBQ2hCLENBQUM7UUFFRCxPQUFPLE9BQU8sQ0FBQyxHQUFHLENBQUMsQ0FBQyxJQUFJLENBQUMsVUFBVSxDQUFDLGtCQUFrQixFQUFFLEVBQUUsSUFBSSxDQUFDLFVBQVUsQ0FBQyxZQUFZLEVBQUUsRUFBRSxJQUFJLENBQUMsb0JBQW9CLENBQUMsZUFBZSxFQUFFLENBQUMsQ0FBQzthQUNsSSxJQUFJLENBQUMsQ0FBQyxJQUFJLEVBQUUsRUFBRSxDQUFDLElBQUksQ0FBQyxVQUFVLENBQUMsZ0JBQWdCLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUM7YUFDekQsSUFBSSxDQUFDLEdBQUcsRUFBRSxDQUFDLGtCQUFrQixHQUFHLElBQUksQ0FBQyxDQUFDO0lBQy9DLENBQUM7b0ZBaEJRLG1CQUFtQjt1RUFBbkIsbUJBQW1CLFdBQW5CLG1CQUFtQixtQkFGaEIsTUFBTTs7aUZBRVQsbUJBQW1CO2NBSC9CLFVBQVU7ZUFBQztnQkFDUixVQUFVLEVBQUUsTUFBTTthQUNyQiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEluamVjdGFibGUgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcblxuXG5pbXBvcnQgeyBBcHBNYW5hZ2VyU2VydmljZSB9IGZyb20gJy4uL3NlcnZpY2VzL2FwcC5tYW5hZ2VyLnNlcnZpY2UnO1xuaW1wb3J0IHsgQXBwVmFyaWFibGVzUHJvdmlkZXIgfSBmcm9tICcuLi90eXBlcy90eXBlcyc7XG5cbmxldCBhcHBWYXJpYWJsZXNMb2FkZWQgPSBmYWxzZTtcblxuQEluamVjdGFibGUoe1xuICAgIHByb3ZpZGVkSW46ICdyb290J1xufSlcbmV4cG9ydCBjbGFzcyBBcHBWYXJpYWJsZXNSZXNvbHZlIHtcblxuICAgIGNvbnN0cnVjdG9yKFxuICAgICAgICBwcml2YXRlIGFwcE1hbmFnZXI6IEFwcE1hbmFnZXJTZXJ2aWNlLFxuICAgICAgICBwcml2YXRlIGFwcFZhcmlhYmxlc1Byb3ZpZGVyOiBBcHBWYXJpYWJsZXNQcm92aWRlclxuICAgICkge31cblxuICAgIHJlc29sdmUoKSB7XG4gICAgICAgIC8vIGV4ZWN1dGUgYXBwLmpzXG4gICAgICAgIGlmIChhcHBWYXJpYWJsZXNMb2FkZWQpIHtcbiAgICAgICAgICAgIHJldHVybiB0cnVlO1xuICAgICAgICB9XG5cbiAgICAgICAgcmV0dXJuIFByb21pc2UuYWxsKFt0aGlzLmFwcE1hbmFnZXIubG9hZFNlY3VyaXR5Q29uZmlnKCksIHRoaXMuYXBwTWFuYWdlci5sb2FkTWV0YWRhdGEoKSwgdGhpcy5hcHBWYXJpYWJsZXNQcm92aWRlci5nZXRBcHBWYXJpYWJsZXMoKV0pXG4gICAgICAgICAgICAudGhlbigoZGF0YSkgPT4gdGhpcy5hcHBNYW5hZ2VyLmxvYWRBcHBWYXJpYWJsZXMoZGF0YVsyXSkpXG4gICAgICAgICAgICAudGhlbigoKSA9PiBhcHBWYXJpYWJsZXNMb2FkZWQgPSB0cnVlKTtcbiAgICB9XG59XG4iXX0=
30
+ }], function () { return [{ type: i1.AppManagerService }, { type: i2.AppVariablesProvider }]; }, null); })();
31
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYXBwLXZhcmlhYmxlcy5yZXNvbHZlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvcnVudGltZS1iYXNlL3NyYy9yZXNvbHZlcy9hcHAtdmFyaWFibGVzLnJlc29sdmUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUczQyxPQUFPLEVBQUUsaUJBQWlCLEVBQUUsTUFBTSxpQ0FBaUMsQ0FBQztBQUNwRSxPQUFPLEVBQUUsb0JBQW9CLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQzs7OztBQUV0RCxJQUFJLGtCQUFrQixHQUFHLEtBQUssQ0FBQztBQUsvQixNQUFNLE9BQU8sbUJBQW1CO0lBRTVCLFlBQ1ksVUFBNkIsRUFDN0Isb0JBQTBDO1FBRDFDLGVBQVUsR0FBVixVQUFVLENBQW1CO1FBQzdCLHlCQUFvQixHQUFwQixvQkFBb0IsQ0FBc0I7SUFDbkQsQ0FBQztJQUVKLE9BQU87UUFDSCxpQkFBaUI7UUFDakIsSUFBSSxrQkFBa0IsRUFBRTtZQUNwQixPQUFPLElBQUksQ0FBQztTQUNmO1FBRUQsT0FBTyxPQUFPLENBQUMsR0FBRyxDQUFDLENBQUMsSUFBSSxDQUFDLFVBQVUsQ0FBQyxrQkFBa0IsRUFBRSxFQUFFLElBQUksQ0FBQyxVQUFVLENBQUMsWUFBWSxFQUFFLEVBQUUsSUFBSSxDQUFDLG9CQUFvQixDQUFDLGVBQWUsRUFBRSxDQUFDLENBQUM7YUFDbEksSUFBSSxDQUFDLENBQUMsSUFBSSxFQUFFLEVBQUUsQ0FBQyxJQUFJLENBQUMsVUFBVSxDQUFDLGdCQUFnQixDQUFDLElBQUksQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDO2FBQ3pELElBQUksQ0FBQyxHQUFHLEVBQUUsQ0FBQyxrQkFBa0IsR0FBRyxJQUFJLENBQUMsQ0FBQztJQUMvQyxDQUFDO29GQWhCUSxtQkFBbUI7dUVBQW5CLG1CQUFtQixXQUFuQixtQkFBbUIsbUJBRmhCLE1BQU07O3VGQUVULG1CQUFtQjtjQUgvQixVQUFVO2VBQUM7Z0JBQ1IsVUFBVSxFQUFFLE1BQU07YUFDckIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBJbmplY3RhYmxlIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5cblxuaW1wb3J0IHsgQXBwTWFuYWdlclNlcnZpY2UgfSBmcm9tICcuLi9zZXJ2aWNlcy9hcHAubWFuYWdlci5zZXJ2aWNlJztcbmltcG9ydCB7IEFwcFZhcmlhYmxlc1Byb3ZpZGVyIH0gZnJvbSAnLi4vdHlwZXMvdHlwZXMnO1xuXG5sZXQgYXBwVmFyaWFibGVzTG9hZGVkID0gZmFsc2U7XG5cbkBJbmplY3RhYmxlKHtcbiAgICBwcm92aWRlZEluOiAncm9vdCdcbn0pXG5leHBvcnQgY2xhc3MgQXBwVmFyaWFibGVzUmVzb2x2ZSB7XG5cbiAgICBjb25zdHJ1Y3RvcihcbiAgICAgICAgcHJpdmF0ZSBhcHBNYW5hZ2VyOiBBcHBNYW5hZ2VyU2VydmljZSxcbiAgICAgICAgcHJpdmF0ZSBhcHBWYXJpYWJsZXNQcm92aWRlcjogQXBwVmFyaWFibGVzUHJvdmlkZXJcbiAgICApIHt9XG5cbiAgICByZXNvbHZlKCkge1xuICAgICAgICAvLyBleGVjdXRlIGFwcC5qc1xuICAgICAgICBpZiAoYXBwVmFyaWFibGVzTG9hZGVkKSB7XG4gICAgICAgICAgICByZXR1cm4gdHJ1ZTtcbiAgICAgICAgfVxuXG4gICAgICAgIHJldHVybiBQcm9taXNlLmFsbChbdGhpcy5hcHBNYW5hZ2VyLmxvYWRTZWN1cml0eUNvbmZpZygpLCB0aGlzLmFwcE1hbmFnZXIubG9hZE1ldGFkYXRhKCksIHRoaXMuYXBwVmFyaWFibGVzUHJvdmlkZXIuZ2V0QXBwVmFyaWFibGVzKCldKVxuICAgICAgICAgICAgLnRoZW4oKGRhdGEpID0+IHRoaXMuYXBwTWFuYWdlci5sb2FkQXBwVmFyaWFibGVzKGRhdGFbMl0pKVxuICAgICAgICAgICAgLnRoZW4oKCkgPT4gYXBwVmFyaWFibGVzTG9hZGVkID0gdHJ1ZSk7XG4gICAgfVxufVxuIl19
@@ -12,7 +12,7 @@ export class I18nResolve {
12
12
  static { this.ɵfac = function I18nResolve_Factory(t) { return new (t || I18nResolve)(i0.ɵɵinject(i1.AbstractI18nService)); }; }
13
13
  static { this.ɵprov = /*@__PURE__*/ i0.ɵɵdefineInjectable({ token: I18nResolve, factory: I18nResolve.ɵfac }); }
14
14
  }
15
- (() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassMetadata(I18nResolve, [{
15
+ (function () { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassMetadata(I18nResolve, [{
16
16
  type: Injectable
17
- }], () => [{ type: i1.AbstractI18nService }], null); })();
18
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaTE4bi5yZXNvbHZlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvcnVudGltZS1iYXNlL3NyYy9yZXNvbHZlcy9pMThuLnJlc29sdmUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUUzQyxPQUFPLEVBQUUsbUJBQW1CLEVBQUUsTUFBTSxVQUFVLENBQUM7OztBQUcvQyxNQUFNLE9BQU8sV0FBVztJQUVwQixZQUFvQixXQUFnQztRQUFoQyxnQkFBVyxHQUFYLFdBQVcsQ0FBcUI7SUFBRyxDQUFDO0lBRXhELE9BQU87UUFDSCxPQUFPLElBQUksQ0FBQyxXQUFXLENBQUMsaUJBQWlCLEVBQUUsQ0FBQztJQUNoRCxDQUFDOzRFQU5RLFdBQVc7dUVBQVgsV0FBVyxXQUFYLFdBQVc7O2lGQUFYLFdBQVc7Y0FEdkIsVUFBVSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEluamVjdGFibGUgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcblxuaW1wb3J0IHsgQWJzdHJhY3RJMThuU2VydmljZSB9IGZyb20gJ0B3bS9jb3JlJztcblxuQEluamVjdGFibGUoKVxuZXhwb3J0IGNsYXNzIEkxOG5SZXNvbHZlIHtcblxuICAgIGNvbnN0cnVjdG9yKHByaXZhdGUgaTE4blNlcnZpY2U6IEFic3RyYWN0STE4blNlcnZpY2UpIHt9XG5cbiAgICByZXNvbHZlKCkge1xuICAgICAgICByZXR1cm4gdGhpcy5pMThuU2VydmljZS5sb2FkRGVmYXVsdExvY2FsZSgpO1xuICAgIH1cbn1cbiJdfQ==
17
+ }], function () { return [{ type: i1.AbstractI18nService }]; }, null); })();
18
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaTE4bi5yZXNvbHZlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvcnVudGltZS1iYXNlL3NyYy9yZXNvbHZlcy9pMThuLnJlc29sdmUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUUzQyxPQUFPLEVBQUUsbUJBQW1CLEVBQUUsTUFBTSxVQUFVLENBQUM7OztBQUcvQyxNQUFNLE9BQU8sV0FBVztJQUVwQixZQUFvQixXQUFnQztRQUFoQyxnQkFBVyxHQUFYLFdBQVcsQ0FBcUI7SUFBRyxDQUFDO0lBRXhELE9BQU87UUFDSCxPQUFPLElBQUksQ0FBQyxXQUFXLENBQUMsaUJBQWlCLEVBQUUsQ0FBQztJQUNoRCxDQUFDOzRFQU5RLFdBQVc7dUVBQVgsV0FBVyxXQUFYLFdBQVc7O3VGQUFYLFdBQVc7Y0FEdkIsVUFBVSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEluamVjdGFibGUgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcblxuaW1wb3J0IHsgQWJzdHJhY3RJMThuU2VydmljZSB9IGZyb20gJ0B3bS9jb3JlJztcblxuQEluamVjdGFibGUoKVxuZXhwb3J0IGNsYXNzIEkxOG5SZXNvbHZlIHtcblxuICAgIGNvbnN0cnVjdG9yKHByaXZhdGUgaTE4blNlcnZpY2U6IEFic3RyYWN0STE4blNlcnZpY2UpIHt9XG5cbiAgICByZXNvbHZlKCkge1xuICAgICAgICByZXR1cm4gdGhpcy5pMThuU2VydmljZS5sb2FkRGVmYXVsdExvY2FsZSgpO1xuICAgIH1cbn1cbiJdfQ==
@@ -13,10 +13,10 @@ export class MetadataResolve {
13
13
  static { this.ɵfac = function MetadataResolve_Factory(t) { return new (t || MetadataResolve)(i0.ɵɵinject(i1.AppManagerService)); }; }
14
14
  static { this.ɵprov = /*@__PURE__*/ i0.ɵɵdefineInjectable({ token: MetadataResolve, factory: MetadataResolve.ɵfac, providedIn: 'root' }); }
15
15
  }
16
- (() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassMetadata(MetadataResolve, [{
16
+ (function () { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassMetadata(MetadataResolve, [{
17
17
  type: Injectable,
18
18
  args: [{
19
19
  providedIn: 'root'
20
20
  }]
21
- }], () => [{ type: i1.AppManagerService }], null); })();
22
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibWV0YWRhdGEucmVzb2x2ZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3J1bnRpbWUtYmFzZS9zcmMvcmVzb2x2ZXMvbWV0YWRhdGEucmVzb2x2ZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBRzNDLE9BQU8sRUFBRSxpQkFBaUIsRUFBRSxNQUFNLGlDQUFpQyxDQUFDOzs7QUFFcEUsSUFBSSxnQkFBZ0IsR0FBRyxLQUFLLENBQUM7QUFLN0IsTUFBTSxPQUFPLGVBQWU7SUFDeEIsWUFBb0IsVUFBNkI7UUFBN0IsZUFBVSxHQUFWLFVBQVUsQ0FBbUI7SUFBRyxDQUFDO0lBRXJELE9BQU87UUFDSCxPQUFPLGdCQUFnQixJQUFJLElBQUksQ0FBQyxVQUFVLENBQUMsWUFBWSxFQUFFLENBQUMsSUFBSSxDQUFDLEdBQUcsRUFBRSxDQUFDLGdCQUFnQixHQUFHLElBQUksQ0FBQyxDQUFDO0lBQ2xHLENBQUM7Z0ZBTFEsZUFBZTt1RUFBZixlQUFlLFdBQWYsZUFBZSxtQkFGWixNQUFNOztpRkFFVCxlQUFlO2NBSDNCLFVBQVU7ZUFBQztnQkFDUixVQUFVLEVBQUUsTUFBTTthQUNyQiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEluamVjdGFibGUgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcblxuXG5pbXBvcnQgeyBBcHBNYW5hZ2VyU2VydmljZSB9IGZyb20gJy4uL3NlcnZpY2VzL2FwcC5tYW5hZ2VyLnNlcnZpY2UnO1xuXG5sZXQgbWV0YWRhdGFSZXNvbHZlZCA9IGZhbHNlO1xuXG5ASW5qZWN0YWJsZSh7XG4gICAgcHJvdmlkZWRJbjogJ3Jvb3QnXG59KVxuZXhwb3J0IGNsYXNzIE1ldGFkYXRhUmVzb2x2ZSB7XG4gICAgY29uc3RydWN0b3IocHJpdmF0ZSBhcHBNYW5hZ2VyOiBBcHBNYW5hZ2VyU2VydmljZSkge31cblxuICAgIHJlc29sdmUoKSB7XG4gICAgICAgIHJldHVybiBtZXRhZGF0YVJlc29sdmVkIHx8IHRoaXMuYXBwTWFuYWdlci5sb2FkTWV0YWRhdGEoKS50aGVuKCgpID0+IG1ldGFkYXRhUmVzb2x2ZWQgPSB0cnVlKTtcbiAgICB9XG59XG4iXX0=
21
+ }], function () { return [{ type: i1.AppManagerService }]; }, null); })();
22
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibWV0YWRhdGEucmVzb2x2ZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3J1bnRpbWUtYmFzZS9zcmMvcmVzb2x2ZXMvbWV0YWRhdGEucmVzb2x2ZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBRzNDLE9BQU8sRUFBRSxpQkFBaUIsRUFBRSxNQUFNLGlDQUFpQyxDQUFDOzs7QUFFcEUsSUFBSSxnQkFBZ0IsR0FBRyxLQUFLLENBQUM7QUFLN0IsTUFBTSxPQUFPLGVBQWU7SUFDeEIsWUFBb0IsVUFBNkI7UUFBN0IsZUFBVSxHQUFWLFVBQVUsQ0FBbUI7SUFBRyxDQUFDO0lBRXJELE9BQU87UUFDSCxPQUFPLGdCQUFnQixJQUFJLElBQUksQ0FBQyxVQUFVLENBQUMsWUFBWSxFQUFFLENBQUMsSUFBSSxDQUFDLEdBQUcsRUFBRSxDQUFDLGdCQUFnQixHQUFHLElBQUksQ0FBQyxDQUFDO0lBQ2xHLENBQUM7Z0ZBTFEsZUFBZTt1RUFBZixlQUFlLFdBQWYsZUFBZSxtQkFGWixNQUFNOzt1RkFFVCxlQUFlO2NBSDNCLFVBQVU7ZUFBQztnQkFDUixVQUFVLEVBQUUsTUFBTTthQUNyQiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEluamVjdGFibGUgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcblxuXG5pbXBvcnQgeyBBcHBNYW5hZ2VyU2VydmljZSB9IGZyb20gJy4uL3NlcnZpY2VzL2FwcC5tYW5hZ2VyLnNlcnZpY2UnO1xuXG5sZXQgbWV0YWRhdGFSZXNvbHZlZCA9IGZhbHNlO1xuXG5ASW5qZWN0YWJsZSh7XG4gICAgcHJvdmlkZWRJbjogJ3Jvb3QnXG59KVxuZXhwb3J0IGNsYXNzIE1ldGFkYXRhUmVzb2x2ZSB7XG4gICAgY29uc3RydWN0b3IocHJpdmF0ZSBhcHBNYW5hZ2VyOiBBcHBNYW5hZ2VyU2VydmljZSkge31cblxuICAgIHJlc29sdmUoKSB7XG4gICAgICAgIHJldHVybiBtZXRhZGF0YVJlc29sdmVkIHx8IHRoaXMuYXBwTWFuYWdlci5sb2FkTWV0YWRhdGEoKS50aGVuKCgpID0+IG1ldGFkYXRhUmVzb2x2ZWQgPSB0cnVlKTtcbiAgICB9XG59XG4iXX0=
@@ -19,10 +19,10 @@ export class SecurityConfigResolve {
19
19
  static { this.ɵfac = function SecurityConfigResolve_Factory(t) { return new (t || SecurityConfigResolve)(i0.ɵɵinject(i1.AppManagerService)); }; }
20
20
  static { this.ɵprov = /*@__PURE__*/ i0.ɵɵdefineInjectable({ token: SecurityConfigResolve, factory: SecurityConfigResolve.ɵfac, providedIn: 'root' }); }
21
21
  }
22
- (() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassMetadata(SecurityConfigResolve, [{
22
+ (function () { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassMetadata(SecurityConfigResolve, [{
23
23
  type: Injectable,
24
24
  args: [{
25
25
  providedIn: 'root'
26
26
  }]
27
- }], () => [{ type: i1.AppManagerService }], null); })();
28
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2VjdXJpdHktY29uZmlnLnJlc29sdmUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9ydW50aW1lLWJhc2Uvc3JjL3Jlc29sdmVzL3NlY3VyaXR5LWNvbmZpZy5yZXNvbHZlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFHM0MsT0FBTyxFQUFFLHNCQUFzQixFQUFFLFdBQVcsRUFBRSxNQUFNLFVBQVUsQ0FBQztBQUUvRCxPQUFPLEVBQUUsaUJBQWlCLEVBQUUsTUFBTSxpQ0FBaUMsQ0FBQzs7O0FBS3BFLE1BQU0sT0FBTyxxQkFBcUI7SUFHOUIsWUFBb0IsVUFBNkI7UUFBN0IsZUFBVSxHQUFWLFVBQVUsQ0FBbUI7UUFFN0MsSUFBSSxDQUFDLFdBQVcsRUFBRSxFQUFFLENBQUM7WUFDakIsdUZBQXVGO1lBQ3ZGLElBQUksQ0FBQyxNQUFNLEdBQUcsSUFBSSxDQUFDLFVBQVUsQ0FBQyxZQUFZLEVBQUUsSUFBSSxJQUFJLENBQUMsVUFBVSxDQUFDLG9CQUFvQixFQUFFLElBQUksQ0FBQyxzQkFBc0IsRUFBRSxDQUFDLGVBQWUsQ0FBQztRQUN4SSxDQUFDO0lBQ0wsQ0FBQztJQUVELE9BQU87UUFDSCxPQUFPLElBQUksQ0FBQyxNQUFNLElBQUksSUFBSSxDQUFDLFVBQVUsQ0FBQyxrQkFBa0IsRUFBRSxDQUFDLElBQUksQ0FBQyxHQUFHLEVBQUU7WUFDakUsSUFBSSxDQUFDLE1BQU0sR0FBRyxJQUFJLENBQUM7UUFDdkIsQ0FBQyxDQUFDLENBQUM7SUFDUCxDQUFDO3NGQWZRLHFCQUFxQjt1RUFBckIscUJBQXFCLFdBQXJCLHFCQUFxQixtQkFGbEIsTUFBTTs7aUZBRVQscUJBQXFCO2NBSGpDLFVBQVU7ZUFBQztnQkFDUixVQUFVLEVBQUUsTUFBTTthQUNyQiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEluamVjdGFibGUgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcblxuXG5pbXBvcnQgeyBnZXRXbVByb2plY3RQcm9wZXJ0aWVzLCBpc01vYmlsZUFwcCB9IGZyb20gJ0B3bS9jb3JlJztcblxuaW1wb3J0IHsgQXBwTWFuYWdlclNlcnZpY2UgfSBmcm9tICcuLi9zZXJ2aWNlcy9hcHAubWFuYWdlci5zZXJ2aWNlJztcblxuQEluamVjdGFibGUoe1xuICAgIHByb3ZpZGVkSW46ICdyb290J1xufSlcbmV4cG9ydCBjbGFzcyBTZWN1cml0eUNvbmZpZ1Jlc29sdmUge1xuICAgIGxvYWRlZDogYm9vbGVhbjtcblxuICAgIGNvbnN0cnVjdG9yKHByaXZhdGUgYXBwTWFuYWdlcjogQXBwTWFuYWdlclNlcnZpY2UpIHtcblxuICAgICAgICBpZiAoIWlzTW9iaWxlQXBwKCkpIHtcbiAgICAgICAgICAgIC8vIGlmIHRoZSBwcm9qZWN0IHR5cGUgaXMgUFJFRkFCLCBzZXR0aW5nIHRoaXMgZmxhZyB3aWxsIG5vdCB0cmlnZ2VyIHNlY3VyaXR5L2luZm8gY2FsbFxuICAgICAgICAgICAgdGhpcy5sb2FkZWQgPSB0aGlzLmFwcE1hbmFnZXIuaXNQcmVmYWJUeXBlKCkgfHwgdGhpcy5hcHBNYW5hZ2VyLmlzVGVtcGxhdGVCdW5kbGVUeXBlKCkgfHwgIWdldFdtUHJvamVjdFByb3BlcnRpZXMoKS5zZWN1cml0eUVuYWJsZWQ7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICByZXNvbHZlKCkge1xuICAgICAgICByZXR1cm4gdGhpcy5sb2FkZWQgfHwgdGhpcy5hcHBNYW5hZ2VyLmxvYWRTZWN1cml0eUNvbmZpZygpLnRoZW4oKCkgPT4ge1xuICAgICAgICAgICAgdGhpcy5sb2FkZWQgPSB0cnVlO1xuICAgICAgICB9KTtcbiAgICB9XG59XG4iXX0=
27
+ }], function () { return [{ type: i1.AppManagerService }]; }, null); })();
28
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2VjdXJpdHktY29uZmlnLnJlc29sdmUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9ydW50aW1lLWJhc2Uvc3JjL3Jlc29sdmVzL3NlY3VyaXR5LWNvbmZpZy5yZXNvbHZlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFHM0MsT0FBTyxFQUFFLHNCQUFzQixFQUFFLFdBQVcsRUFBRSxNQUFNLFVBQVUsQ0FBQztBQUUvRCxPQUFPLEVBQUUsaUJBQWlCLEVBQUUsTUFBTSxpQ0FBaUMsQ0FBQzs7O0FBS3BFLE1BQU0sT0FBTyxxQkFBcUI7SUFHOUIsWUFBb0IsVUFBNkI7UUFBN0IsZUFBVSxHQUFWLFVBQVUsQ0FBbUI7UUFFN0MsSUFBSSxDQUFDLFdBQVcsRUFBRSxFQUFFO1lBQ2hCLHVGQUF1RjtZQUN2RixJQUFJLENBQUMsTUFBTSxHQUFHLElBQUksQ0FBQyxVQUFVLENBQUMsWUFBWSxFQUFFLElBQUksSUFBSSxDQUFDLFVBQVUsQ0FBQyxvQkFBb0IsRUFBRSxJQUFJLENBQUMsc0JBQXNCLEVBQUUsQ0FBQyxlQUFlLENBQUM7U0FDdkk7SUFDTCxDQUFDO0lBRUQsT0FBTztRQUNILE9BQU8sSUFBSSxDQUFDLE1BQU0sSUFBSSxJQUFJLENBQUMsVUFBVSxDQUFDLGtCQUFrQixFQUFFLENBQUMsSUFBSSxDQUFDLEdBQUcsRUFBRTtZQUNqRSxJQUFJLENBQUMsTUFBTSxHQUFHLElBQUksQ0FBQztRQUN2QixDQUFDLENBQUMsQ0FBQztJQUNQLENBQUM7c0ZBZlEscUJBQXFCO3VFQUFyQixxQkFBcUIsV0FBckIscUJBQXFCLG1CQUZsQixNQUFNOzt1RkFFVCxxQkFBcUI7Y0FIakMsVUFBVTtlQUFDO2dCQUNSLFVBQVUsRUFBRSxNQUFNO2FBQ3JCIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgSW5qZWN0YWJsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuXG5cbmltcG9ydCB7IGdldFdtUHJvamVjdFByb3BlcnRpZXMsIGlzTW9iaWxlQXBwIH0gZnJvbSAnQHdtL2NvcmUnO1xuXG5pbXBvcnQgeyBBcHBNYW5hZ2VyU2VydmljZSB9IGZyb20gJy4uL3NlcnZpY2VzL2FwcC5tYW5hZ2VyLnNlcnZpY2UnO1xuXG5ASW5qZWN0YWJsZSh7XG4gICAgcHJvdmlkZWRJbjogJ3Jvb3QnXG59KVxuZXhwb3J0IGNsYXNzIFNlY3VyaXR5Q29uZmlnUmVzb2x2ZSB7XG4gICAgbG9hZGVkOiBib29sZWFuO1xuXG4gICAgY29uc3RydWN0b3IocHJpdmF0ZSBhcHBNYW5hZ2VyOiBBcHBNYW5hZ2VyU2VydmljZSkge1xuXG4gICAgICAgIGlmICghaXNNb2JpbGVBcHAoKSkge1xuICAgICAgICAgICAgLy8gaWYgdGhlIHByb2plY3QgdHlwZSBpcyBQUkVGQUIsIHNldHRpbmcgdGhpcyBmbGFnIHdpbGwgbm90IHRyaWdnZXIgc2VjdXJpdHkvaW5mbyBjYWxsXG4gICAgICAgICAgICB0aGlzLmxvYWRlZCA9IHRoaXMuYXBwTWFuYWdlci5pc1ByZWZhYlR5cGUoKSB8fCB0aGlzLmFwcE1hbmFnZXIuaXNUZW1wbGF0ZUJ1bmRsZVR5cGUoKSB8fCAhZ2V0V21Qcm9qZWN0UHJvcGVydGllcygpLnNlY3VyaXR5RW5hYmxlZDtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIHJlc29sdmUoKSB7XG4gICAgICAgIHJldHVybiB0aGlzLmxvYWRlZCB8fCB0aGlzLmFwcE1hbmFnZXIubG9hZFNlY3VyaXR5Q29uZmlnKCkudGhlbigoKSA9PiB7XG4gICAgICAgICAgICB0aGlzLmxvYWRlZCA9IHRydWU7XG4gICAgICAgIH0pO1xuICAgIH1cbn1cbiJdfQ==
@@ -418,7 +418,7 @@ export class RuntimeBaseModule {
418
418
  TopNavModule,
419
419
  PrefabModule] }); }
420
420
  }
421
- (() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassMetadata(RuntimeBaseModule, [{
421
+ (function () { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassMetadata(RuntimeBaseModule, [{
422
422
  type: NgModule,
423
423
  args: [{
424
424
  declarations: [...definitions],
@@ -460,7 +460,7 @@ export class RuntimeBaseModule {
460
460
  { provide: ɵDomRendererFactory2, useClass: WMDomRendererFactory2 }
461
461
  ]
462
462
  }]
463
- }], () => [{ type: i1.MobileRuntimeModule }, { type: i2.App }, { type: i2.Viewport }], null); })();
463
+ }], function () { return [{ type: i1.MobileRuntimeModule }, { type: i2.App }, { type: i2.Viewport }]; }, null); })();
464
464
  (function () { (typeof ngJitMode === "undefined" || ngJitMode) && i0.ɵɵsetNgModuleScope(RuntimeBaseModule, { declarations: [AccessrolesDirective,
465
465
  AppSpinnerComponent,
466
466
  CustomToasterComponent,
@@ -641,4 +641,4 @@ export const WM_MODULES_FOR_ROOT = [
641
641
  HttpServiceModule.forRoot(),
642
642
  RuntimeBaseModule.forRoot()
643
643
  ];
644
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicnVudGltZS1iYXNlLm1vZHVsZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3Byb2plY3RzL3J1bnRpbWUtYmFzZS9zcmMvcnVudGltZS1iYXNlLm1vZHVsZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUMsZUFBZSxFQUFFLFNBQVMsRUFBdUIsUUFBUSxFQUFDLE1BQU0sZUFBZSxDQUFDO0FBQ3hGLE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUMvQyxPQUFPLEVBQUUsWUFBWSxFQUFFLFFBQVEsRUFBRSxXQUFXLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUN0RSxPQUFPLEVBQUUsaUJBQWlCLEVBQUUsZ0JBQWdCLEVBQUUsTUFBTSxzQkFBc0IsQ0FBQztBQUMzRSxPQUFPLEVBQUUsaUJBQWlCLEVBQUUsTUFBTSwyQkFBMkIsQ0FBQztBQUM5RCxPQUFPLEVBQUMsb0JBQW9CLEVBQUMsTUFBTSwyQkFBMkIsQ0FBQztBQUMvRCxPQUFPLEVBQUUsV0FBVyxFQUFFLG1CQUFtQixFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFFbEUsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLFlBQVksQ0FBQztBQUUxQyxPQUFPLEVBQ0gsZUFBZSxFQUNmLFVBQVUsRUFDVixtQkFBbUIsRUFDbkIseUJBQXlCLEVBQ3pCLHNCQUFzQixFQUN0QixzQkFBc0IsRUFDdEIsR0FBRyxFQUNILFdBQVcsRUFDWCxVQUFVLEVBQ1YsMkJBQTJCLEVBQzNCLFFBQVEsRUFDUixRQUFRLEVBQ1IsTUFBTSxFQUNOLE1BQU0sRUFDTixRQUFRLEVBQ1IsVUFBVSxFQUNiLE1BQU0sVUFBVSxDQUFDO0FBQ2xCLE9BQU8sRUFBRSxrQkFBa0IsRUFBRSxNQUFNLHFCQUFxQixDQUFDO0FBQ3pELE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSx3QkFBd0IsQ0FBQztBQUN0RCxPQUFPLEVBQUUsbUJBQW1CLEVBQUUsTUFBTSx1Q0FB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QjtRQUVuQixhQUFhO1FBQ2IsZ0JBQWdCO1FBQ2hCLFVBQVU7UUFDVixZQUFZO1FBQ1osYUFBYTtRQUViLFdBQVc7UUFDWCxjQUFjO1FBQ2QsV0FBVztRQUNYLGFBQWE7UUFFYixVQUFVO1FBQ1YsWUFBWTtRQUNaLFlBQVk7UUFDWixlQUFlO1FBQ2YsZ0JBQWdCO1FBQ2hCLFlBQVk7UUFDWixZQUFZO0FBeUpoQixNQUFNLENBQUMsTUFBTSxtQkFBbUIsR0FBRztJQUMvQixrQkFBa0IsQ0FBQyxPQUFPLEVBQUU7SUFDNUIsbUJBQW1CLENBQUMsT0FBTyxFQUFFO0lBQzdCLFVBQVUsQ0FBQyxPQUFPLEVBQUU7SUFDcEIsY0FBYyxDQUFDLE9BQU8sRUFBRTtJQUN4QixXQUFXLENBQUMsT0FBTyxFQUFFO0lBQ3JCLGVBQWUsQ0FBQyxPQUFPLEVBQUU7SUFDekIsaUJBQWlCLENBQUMsT0FBTyxFQUFFO0lBQzNCLGlCQUFpQixDQUFDLE9BQU8sRUFBRTtDQUM5QixDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtBUFBfSU5JVElBTElaRVIsIExPQ0FMRV9JRCwgTW9kdWxlV2l0aFByb3ZpZGVycywgTmdNb2R1bGV9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgUm91dGVyTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvcm91dGVyJztcbmltcG9ydCB7IENvbW1vbk1vZHVsZSwgRGF0ZVBpcGUsIERlY2ltYWxQaXBlIH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uJztcbmltcG9ydCB7IEhUVFBfSU5URVJDRVBUT1JTLCBIdHRwQ2xpZW50TW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uL2h0dHAnO1xuaW1wb3J0IHsgybVTaGFyZWRTdHlsZXNIb3N0IH0gZnJvbSAnQGFuZ3VsYXIvcGxhdGZvcm0tYnJvd3Nlcic7XG5pbXBvcnQge8m1RG9tUmVuZGVyZXJGYWN0b3J5Mn0gZnJvbSBcIkBhbmd1bGFyL3BsYXRmb3JtLWJyb3dzZXJcIjtcbmltcG9ydCB7IEZvcm1zTW9kdWxlLCBSZWFjdGl2ZUZvcm1zTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvZm9ybXMnO1xuXG5pbXBvcnQgeyBUb2FzdHJNb2R1bGUgfSBmcm9tICduZ3gtdG9hc3RyJztcblxuaW1wb3J0IHtcbiAgICBfV01fQVBQX1BST0pFQ1QsXG4gICAgJHBhcnNlRXhwcixcbiAgICBBYnN0cmFjdEkxOG5TZXJ2aWNlLFxuICAgIEFic3RyYWN0TmF2aWdhdGlvblNlcnZpY2UsXG4gICAgQWJzdHJhY3RTcGlubmVyU2VydmljZSxcbiAgICBBYnN0cmFjdFRvYXN0ZXJTZXJ2aWNlLFxuICAgIEFwcCxcbiAgICBBcHBEZWZhdWx0cyxcbiAgICBDb3JlTW9kdWxlLFxuICAgIER5bmFtaWNDb21wb25lbnRSZWZQcm92aWRlcixcbiAgICBpc09iamVjdCxcbiAgICBpc0lwaG9uZSxcbiAgICBpc0lwb2QsXG4gICAgaXNJcGFkLFxuICAgIFZpZXdwb3J0LFxuICAgIGhhc0NvcmRvdmFcbn0gZnJvbSAnQHdtL2NvcmUnO1xuaW1wb3J0IHsgV21Db21wb25lbnRzTW9kdWxlIH0gZnJvbSAnQHdtL2NvbXBvbmVudHMvYmFzZSc7XG5pbXBvcnQgeyBEaWFsb2dNb2R1bGUgfSBmcm9tICdAd20vY29tcG9uZW50cy9kaWFsb2dzJztcbmltcG9ydCB7IENvbmZpcm1EaWFsb2dNb2R1bGUgfSBmcm9tICdAd20vY29tcG9uZW50cy9kaWFsb2dzL2NvbmZpcm0tZGlhbG9nJztcbmltcG9ydCB7IERlc2lnbkRpYWxvZ01vZHVsZSB9IGZyb20gJ0B3bS9jb21wb25lbnRzL2RpYWxvZ3MvZGVzaWduLWRpYWxvZyc7XG5pbXBvcnQgeyBQcmVmYWJNb2R1bGUgfSBmcm9tICdAd20vY29tcG9uZW50cy9wcmVmYWInO1xuaW1wb3J0IHsgTW9iaWxlUnVudGltZU1vZHVsZSB9IGZyb20gJ0B3bS9tb2JpbGUvcnVudGltZSc7XG5pbXBvcnQgeyBTZWN1cml0eU1vZHVsZSB9IGZyb20gJ0B3bS9zZWN1cml0eSc7XG5pbXBvcnQgeyBIdHRwU2VydmljZU1vZHVsZSB9IGZyb20gJ0B3bS9odHRwJztcbmltcG9ydCB7IFZhcmlhYmxlc01vZHVsZSB9IGZyb20gJ0B3bS92YXJpYWJsZXMnO1xuaW1wb3J0IHsgT0F1dGhNb2R1bGUgfSBmcm9tICdAd20vb0F1dGgnO1xuXG5pbXBvcnQgeyBBY2Nlc3Nyb2xlc0RpcmVjdGl2ZSB9IGZyb20gJy4vZGlyZWN0aXZlcy9hY2Nlc3Nyb2xlcy5kaXJlY3RpdmUnO1xuaW1wb3J0IHsgQXBwU3Bpbm5lckNvbXBvbmVudCB9IGZyb20gJy4vY29tcG9uZW50cy9hcHAtc3Bpbm5lci5jb21wb25lbnQnO1xuaW1wb3J0IHsgQ3VzdG9tVG9hc3RlckNvbXBvbmVudCB9IGZyb20gJy4vY29tcG9uZW50cy9jdXN0b20tdG9hc3Rlci5jb21wb25lbnQnO1xuaW1wb3J0IHsgRW1wdHlQYWdlQ29tcG9uZW50IH0gZnJvbSAnLi9jb21wb25lbnRzL2VtcHR5LWNvbXBvbmVudC9lbXB0eS1wYWdlLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBQcmVmYWJEaXJlY3RpdmUgfSBmcm9tICcuL2RpcmVjdGl2ZXMvcHJlZmFiLmRpcmVjdGl2ZSc7XG5pbXBvcnQgeyBBcHBSZWYgfSBmcm9tICcuL3NlcnZpY2VzL2FwcC5zZXJ2aWNlJztcbmltcG9ydCB7IFRvYXN0ZXJTZXJ2aWNlSW1wbCB9IGZyb20gJy4vc2VydmljZXMvdG9hc3Rlci5zZXJ2aWNlJztcbmltcG9ydCB7IEkxOG5TZXJ2aWNlSW1wbCB9IGZyb20gJy4vc2VydmljZXMvaTE4bi5zZXJ2aWNlJztcbmltcG9ydCB7IFNwaW5uZXJTZXJ2aWNlSW1wbCB9IGZyb20gJy4vc2VydmljZXMvc3Bpbm5lci5zZXJ2aWNlJztcbmltcG9ydCB7IE5hdmlnYXRpb25TZXJ2aWNlSW1wbCB9IGZyb20gJy4vc2VydmljZXMvbmF2aWdhdGlvbi5zZXJ2aWNlJztcbmltcG9ydCB7IFBpcGVTZXJ2aWNlIH0gZnJvbSBcIi4vc2VydmljZXMvcGlwZS5zZXJ2aWNlXCI7XG5pbXBvcnQgeyBBcHBEZWZhdWx0c1NlcnZpY2UgfSBmcm9tICcuL3NlcnZpY2VzL2FwcC1kZWZhdWx0cy5zZXJ2aWNlJztcbmltcG9ydCB7IEFwcE1hbmFnZXJTZXJ2aWNlIH0gZnJvbSAnLi9zZXJ2aWNlcy9hcHAubWFuYWdlci5zZXJ2aWNlJztcbmltcG9ydCB7IFByZWZhYk1hbmFnZXJTZXJ2aWNlIH0gZnJvbSAnLi9zZXJ2aWNlcy9wcmVmYWItbWFuYWdlci5zZXJ2aWNlJztcbmltcG9ydCB7IEF1dGhHdWFyZCB9IGZyb20gJy4vZ3VhcmRzL2F1dGguZ3VhcmQnO1xuaW1wb3J0IHsgUm9sZUd1YXJkIH0gZnJvbSAnLi9ndWFyZHMvcm9sZS5ndWFyZCc7XG5pbXBvcnQgeyBQYWdlTm90Rm91bmRHdWFyZCB9IGZyb20gJy4vZ3VhcmRzL3BhZ2Utbm90LWZvdW5kLmd1YXJkJztcbmltcG9ydCB7IEFwcEpTUmVzb2x2ZSB9IGZyb20gJy4vcmVzb2x2ZXMvYXBwLWpzLnJlc29sdmUnO1xuaW1wb3J0IHsgQXBwRXh0ZW5zaW9uSlNSZXNvbHZlIH0gZnJvbSAnLi9yZXNvbHZlcy9hcHAtZXh0ZW5zaW9uLnJlc29sdmUnO1xuaW1wb3J0IHsgSTE4blJlc29sdmUgfSBmcm9tICcuL3Jlc29sdmVzL2kxOG4ucmVzb2x2ZSc7XG5pbXBvcnQgeyBBcHBDb21wb25lbnQgfSBmcm9tICcuL2NvbXBvbmVudHMvYXBwLWNvbXBvbmVudC9hcHAuY29tcG9uZW50JztcbmltcG9ydCB7IEh0dHBDYWxsSW50ZXJjZXB0b3IgfSBmcm9tICcuL3NlcnZpY2VzL2h0dHAtaW50ZXJjZXB0b3Iuc2VydmljZXMnO1xuaW1wb3J0IHsgUHJlZmFiUHJldmlld0NvbXBvbmVudCB9IGZyb20gJy4vY29tcG9uZW50cy9wcmVmYWItcHJldmlldy5jb21wb25lbnQnO1xuaW1wb3J0IHsgRHluYW1pY0NvbXBvbmVudFJlZlByb3ZpZGVyU2VydmljZSB9IGZyb20gJy4vc2VydmljZXMvZHluYW1pYy1jb21wb25lbnQtcmVmLXByb3ZpZGVyLnNlcnZpY2UnO1xuaW1wb3J0IHsgQ2FuRGVhY3RpdmF0ZVBhZ2VHdWFyZCB9IGZyb20gJy4vZ3VhcmRzL2Nhbi1kZWFjdGl2YXRlLXBhZ2UuZ3VhcmQnO1xuaW1wb3J0IHsgTUFYX0NBQ0hFX0FHRSwgTUFYX0NBQ0hFX1NJWkUgfSBmcm9tICcuL3V0aWwvd20tcm91dGUtcmV1c2Utc3RyYXRlZ3knO1xuXG4vL2FuZ3VsYXIgb3ZlcnJpZGVzXG5pbXBvcnQgeyBXTURvbVNoYXJlZFN0eWxlc0hvc3QgfSBmcm9tIFwiLi9vdmVycmlkZXMvd21fc2hhcmVkX3N0eWxlc19ob3N0XCI7XG5pbXBvcnQgeyBXTURvbVJlbmRlcmVyRmFjdG9yeTIgfSBmcm9tIFwiLi9vdmVycmlkZXMvd21fZG9tX3JlbmRlcmVyXCI7XG5pbXBvcnQge1BhZ2VNb2R1bGV9IGZyb20gXCJAd20vY29tcG9uZW50cy9wYWdlXCI7XG5pbXBvcnQge0Zvb3Rlck1vZHVsZX0gZnJvbSBcIkB3bS9jb21wb25lbnRzL3BhZ2UvZm9vdGVyXCI7XG5pbXBvcnQge0hlYWRlck1vZHVsZX0gZnJvbSBcIkB3bS9jb21wb25lbnRzL3BhZ2UvaGVhZGVyXCI7XG5pbXBvcnQge0xlZnRQYW5lbE1vZHVsZX0gZnJvbSBcIkB3bS9jb21wb25lbnRzL3BhZ2UvbGVmdC1wYW5lbFwiO1xuaW1wb3J0IHtSaWdodFBhbmVsTW9kdWxlfSBmcm9tIFwiQHdtL2NvbXBvbmVudHMvcGFnZS9yaWdodC1wYW5lbFwiO1xuaW1wb3J0IHtUb3BOYXZNb2R1bGV9IGZyb20gXCJAd20vY29tcG9uZW50cy9wYWdlL3RvcC1uYXZcIjtcbmltcG9ydCB7QmFzaWNNb2R1bGV9IGZyb20gXCJAd20vY29tcG9uZW50cy9iYXNpY1wiO1xuaW1wb3J0IHtQcm9ncmVzc01vZHVsZX0gZnJvbSBcIkB3bS9jb21wb25lbnRzL2Jhc2ljL3Byb2dyZXNzXCI7XG5pbXBvcnQge1JpY2hUZXh0RWRpdG9yTW9kdWxlfSBmcm9tIFwiQHdtL2NvbXBvbmVudHMvYmFzaWMvcmljaC10ZXh0LWVkaXRvclwiO1xuaW1wb3J0IHtTZWFyY2hNb2R1bGV9IGZyb20gXCJAd20vY29tcG9uZW50cy9iYXNpYy9zZWFyY2hcIjtcbmltcG9ydCB7VHJlZU1vZHVsZX0gZnJvbSBcIkB3bS9jb21wb25lbnRzL2Jhc2ljL3RyZWVcIjtcbmltcG9ydCB7Q2FsZW5kYXJNb2R1bGV9IGZyb20gXCJAd20vY29tcG9uZW50cy9pbnB1dC9jYWxlbmRhclwiO1xuaW1wb3J0IHtDaGlwc01vZHVsZX0gZnJvbSBcIkB3bS9jb21wb25lbnRzL2lucHV0L2NoaXBzXCI7XG5pbXBvcnQge0NvbG9yUGlja2VyTW9kdWxlfSBmcm9tIFwiQHdtL2NvbXBvbmVudHMvaW5wdXQvY29sb3ItcGlja2VyXCI7XG5pbXBvcnQge0N1cnJlbmN5TW9kdWxlfSBmcm9tIFwiQHdtL2NvbXBvbmVudHMvaW5wdXQvY3VycmVuY3lcIjtcbmltcG9ydCB7RXBvY2hNb2R1bGV9IGZyb20gXCJAd20vY29tcG9uZW50cy9pbnB1dC9lcG9jaFwiO1xuaW1wb3J0IHtGaWxlVXBsb2FkTW9kdWxlfSBmcm9tIFwiQHdtL2NvbXBvbmVudHMvaW5wdXQvZmlsZS11cGxvYWRcIjtcbmltcG9ydCB7SW5wdXRNb2R1bGV9IGZyb20gXCJAd20vY29tcG9uZW50cy9pbnB1dFwiO1xuaW1wb3J0IHtSYXRpbmdNb2R1bGV9IGZyb20gXCJAd20vY29tcG9uZW50cy9pbnB1dC9yYXRpbmdcIjtcbmltcG9ydCB7U2xpZGVyTW9kdWxlfSBmcm9tIFwiQHdtL2NvbXBvbmVudHMvaW5wdXQvc2xpZGVyXCI7XG5pbXBvcnQge0NhcmRNb2R1bGV9IGZyb20gXCJAd20vY29tcG9uZW50cy9kYXRhL2NhcmRcIjtcbmltcG9ydCB7Rm9ybU1vZHVsZX0gZnJvbSBcIkB3bS9jb21wb25lbnRzL2RhdGEvZm9ybVwiO1xuaW1wb3J0IHtMaXN0TW9kdWxlfSBmcm9tIFwiQHdtL2NvbXBvbmVudHMvZGF0YS9saXN0XCI7XG5pbXBvcnQge0xpdmVUYWJsZU1vZHVsZX0gZnJvbSBcIkB3bS9jb21wb25lbnRzL2RhdGEvbGl2ZS10YWJsZVwiO1xuaW1wb3J0IHtQYWdpbmF0aW9uTW9kdWxlfSBmcm9tIFwiQHdtL2NvbXBvbmVudHMvZGF0YS9wYWdpbmF0aW9uXCI7XG5pbXBvcnQge1RhYmxlTW9kdWxlfSBmcm9tIFwiQHdtL2NvbXBvbmVudHMvZGF0YS90YWJsZVwiO1xuaW1wb3J0IHtDaGFydE1vZHVsZX0gZnJvbSBcIkB3bS9jb21wb25lbnRzL2NoYXJ0XCI7XG5pbXBvcnQge0FjY29yZGlvbk1vZHVsZX0gZnJvbSBcIkB3bS9jb21wb25lbnRzL2NvbnRhaW5lcnMvYWNjb3JkaW9uXCI7XG5pbXBvcnQge0xpbmVhckxheW91dE1vZHVsZX0gZnJvbSBcIkB3bS9jb21wb25lbnRzL2NvbnRhaW5lcnMvbGluZWFyLWxheW91dFwiO1xuaW1wb3J0IHtMYXlvdXRHcmlkTW9kdWxlfSBmcm9tIFwiQHdtL2NvbXBvbmVudHMvY29udGFpbmVycy9sYXlvdXQtZ3JpZFwiO1xuaW1wb3J0IHtQYW5lbE1vZHVsZX0gZnJvbSBcIkB3bS9jb21wb25lbnRzL2NvbnRhaW5lcnMvcGFuZWxcIjtcbmltcG9ydCB7VGFic01vZHVsZX0gZnJvbSBcIkB3bS9jb21wb25lbnRzL2NvbnRhaW5lcnMvdGFic1wiO1xuaW1wb3J0IHtUaWxlTW9kdWxlfSBmcm9tIFwiQHdtL2NvbXBvbmVudHMvY29udGFpbmVycy90aWxlXCI7XG5pbXBvcnQge1dpemFyZE1vZHVsZX0gZnJvbSBcIkB3bS9jb21wb25lbnRzL2NvbnRhaW5lcnMvd2l6YXJkXCI7XG5pbXBvcnQge0FsZXJ0RGlhbG9nTW9kdWxlfSBmcm9tIFwiQHdtL2NvbXBvbmVudHMvZGlhbG9ncy9hbGVydC1kaWFsb2dcIjtcbmltcG9ydCB7SWZyYW1lRGlhbG9nTW9kdWxlfSBmcm9tIFwiQHdtL2NvbXBvbmVudHMvZGlhbG9ncy9pZnJhbWUtZGlhbG9nXCI7XG5pbXBvcnQge0xvZ2luRGlhbG9nTW9kdWxlfSBmcm9tIFwiQHdtL2NvbXBvbmVudHMvZGlhbG9ncy9sb2dpbi1kaWFsb2dcIjtcbmltcG9ydCB7UGFydGlhbERpYWxvZ01vZHVsZX0gZnJvbSBcIkB3bS9jb21wb25lbnRzL2RpYWxvZ3MvcGFydGlhbC1kaWFsb2dcIjtcbmltcG9ydCB7QnJlYWRjcnVtYk1vZHVsZX0gZnJvbSBcIkB3bS9jb21wb25lbnRzL25hdmlnYXRpb24vYnJlYWRjcnVtYlwiO1xuaW1wb3J0IHtNZW51TW9kdWxlfSBmcm9tIFwiQHdtL2NvbXBvbmVudHMvbmF2aWdhdGlvbi9tZW51XCI7XG5pbXBvcnQge05hdmJhck1vZHVsZX0gZnJvbSBcIkB3bS9jb21wb25lbnRzL25hdmlnYXRpb24vbmF2YmFyXCI7XG5pbXBvcnQge1BvcG92ZXJNb2R1bGV9IGZyb20gXCJAd20vY29tcG9uZW50cy9uYXZpZ2F0aW9uL3BvcG92ZXJcIjtcbmltcG9ydCB7Q2Fyb3VzZWxNb2R1bGV9IGZyb20gXCJAd20vY29tcG9uZW50cy9hZHZhbmNlZC9jYXJvdXNlbFwiO1xuaW1wb3J0IHtMb2dpbk1vZHVsZX0gZnJvbSBcIkB3bS9jb21wb25lbnRzL2FkdmFuY2VkL2xvZ2luXCI7XG5pbXBvcnQge01hcnF1ZWVNb2R1bGV9IGZyb20gXCJAd20vY29tcG9uZW50cy9hZHZhbmNlZC9tYXJxdWVlXCI7XG5pbXBvcnQge0JzRGF0ZXBpY2tlck1vZHVsZX0gZnJvbSBcIm5neC1ib290c3RyYXAvZGF0ZXBpY2tlclwiO1xuaW1wb3J0IHtUaW1lcGlja2VyTW9kdWxlIGFzIG5neFRpbWVwaWNrZXJNb2R1bGV9IGZyb20gXCJuZ3gtYm9vdHN0cmFwL3RpbWVwaWNrZXJcIjtcbmltcG9ydCB7QnNEcm9wZG93bk1vZHVsZX0gZnJvbSBcIm5neC1ib290c3RyYXAvZHJvcGRvd25cIjtcbmltcG9ydCB7UGFnaW5hdGlvbk1vZHVsZSBhcyBuZ3hQYWdpbmF0aW9uTW9kdWxlfSBmcm9tIFwibmd4LWJvb3RzdHJhcC9wYWdpbmF0aW9uXCI7XG5pbXBvcnQge1R5cGVhaGVhZE1vZHVsZX0gZnJvbSBcIm5neC1ib290c3RyYXAvdHlwZWFoZWFkXCI7XG5pbXBvcnQge1Byb2dyZXNzYmFyTW9kdWxlfSBmcm9tIFwibmd4LWJvb3RzdHJhcC9wcm9ncmVzc2JhclwiO1xuaW1wb3J0IHtDYXJvdXNlbE1vZHVsZSBhcyBuZ3hDYXJvdXNlbE1vZHVsZX0gZnJvbSBcIm5neC1ib290c3RyYXAvY2Fyb3VzZWxcIjtcbmltcG9ydCB7UG9wb3Zlck1vZHVsZSBhcyBuZ3hQb3BvdmVyTW9kdWxlfSBmcm9tIFwibmd4LWJvb3RzdHJhcC9wb3BvdmVyXCI7XG5pbXBvcnQge05nQ2lyY2xlUHJvZ3Jlc3NNb2R1bGV9IGZyb20gXCJuZy1jaXJjbGUtcHJvZ3Jlc3NcIjtcbmltcG9ydCB7VG9vbHRpcE1vZHVsZX0gZnJvbSBcIm5neC1ib290c3RyYXAvdG9vbHRpcFwiO1xuXG5kZWNsYXJlIGNvbnN0IF9XTV9BUFBfUFJPUEVSVElFUztcblxuY29uc3QgaW5pdGlhbGl6ZVByb2plY3REZXRhaWxzID0gKCkgPT4ge1xuICAgIGxldCBjZG5VcmwgPSBkb2N1bWVudC5xdWVyeVNlbGVjdG9yKCdbbmFtZT1cImRlcGxveVVybFwiXScpICYmIGRvY3VtZW50LnF1ZXJ5U2VsZWN0b3IoJ1tuYW1lPVwiZGVwbG95VXJsXCJdJykuZ2V0QXR0cmlidXRlKCdjb250ZW50Jyk7XG4gICAgLy9mb3IgcHJldmlld1xuICAgIGlmKCFjZG5VcmwpIHtcbiAgICAgICAgY2RuVXJsID0gZG9jdW1lbnQucXVlcnlTZWxlY3RvcignW25hbWU9XCJjZG5VcmxcIl0nKSAmJiBkb2N1bWVudC5xdWVyeVNlbGVjdG9yKCdbbmFtZT1cImNkblVybFwiXScpLmdldEF0dHJpYnV0ZSgnY29udGVudCcpO1xuICAgIH1cbiAgICBfV01fQVBQX1BST0pFQ1QuaWQgPSBoYXNDb3Jkb3ZhKCkgPyBfV01fQVBQX1BST1BFUlRJRVMuZGlzcGxheU5hbWUgOiBsb2NhdGlvbi5ocmVmLnNwbGl0KCcvJylbM107XG4gICAgLy8gSW50ZWdyYXRpb24gd2l0aCB0aGlyZCBwYXJ0eSBhcHBzIGxpa2UgaW4gU1NQQS9XZWJDb21wb25lbnRzLCB0aGlzIG1ldGEgdGFnIHdpdGggY2RuVXJsIHdpbGwgbm90IGJlIHRoZXJlIHRoZW4gZGVmYXVsdCBpdCB0byBuZy1idW5kbGUvXG4gICAgX1dNX0FQUF9QUk9KRUNULmNkblVybCA9IGNkblVybCB8fCAnbmctYnVuZGxlLyc7XG4gICAgX1dNX0FQUF9QUk9KRUNULm5nRGVzdCA9ICduZy1idW5kbGUvJztcbiAgICB0cnkge1xuICAgICAgICAvL0B0cy1pZ25vcmVcbiAgICAgICAgX193ZWJwYWNrX3JlcXVpcmVfXy5wID0gX193ZWJwYWNrX3B1YmxpY19wYXRoX18gPSBjZG5Vcmw7XG4gICAgfSBjYXRjaChlKSB7XG4gICAgICAgIC8vZm9yIGFwcCBwcmV2aWV3IHRoZXJlIGlzIG5vIHdlYnBhY2suIERvbid0IGRvIGFueXRoaW5nLlxuICAgIH1cbn07XG5cbmVudW0gT1Mge1xuICAgIElPUyA9ICdpb3MnLFxuICAgIEFORFJPSUQgPSAnYW5kcm9pZCdcbn1cblxuZXhwb3J0IGZ1bmN0aW9uIGdldFNldHRpbmdQcm92aWRlcihrZXk6IHN0cmluZywgZGVmYXVsdFZhbHVlOiBhbnkpIHtcbiAgICByZXR1cm4ge1xuICAgICAgICBwcm92aWRlOiBrZXksXG4gICAgICAgIHVzZVZhbHVlOiBkZWZhdWx0VmFsdWVcbiAgICB9O1xufTtcblxuZXhwb3J0IGZ1bmN0aW9uIEluaXRpYWxpemVBcHAoSTE4blNlcnZpY2UsIEFwcEpTUmVzb2x2ZSkge1xuICAgIHJldHVybiBhc3luYyAoKSA9PiB7XG4gICAgICAgIGluaXRpYWxpemVQcm9qZWN0RGV0YWlscygpO1xuICAgICAgICBhd2FpdCBBcHBKU1Jlc29sdmUucmVzb2x2ZSgpO1xuICAgICAgICByZXR1cm4gSTE4blNlcnZpY2UubG9hZERlZmF1bHRMb2NhbGUoKTtcbiAgICB9O1xufVxuXG5leHBvcnQgZnVuY3Rpb24gc2V0QW5ndWxhckxvY2FsZShJMThuU2VydmljZSkge1xuICAgIGluaXRpYWxpemVQcm9qZWN0RGV0YWlscygpO1xuICAgIHJldHVybiBJMThuU2VydmljZS5kZWR1Y2VBcHBMb2NhbGUoKTtcbn1cblxuY29uc3QgZGVmaW5pdGlvbnMgPSBbXG4gICAgQWNjZXNzcm9sZXNEaXJlY3RpdmUsXG4gICAgQXBwU3Bpbm5lckNvbXBvbmVudCxcbiAgICBDdXN0b21Ub2FzdGVyQ29tcG9uZW50LFxuICAgIFByZWZhYkRpcmVjdGl2ZSxcbiAgICBBcHBDb21wb25lbnQsXG4gICAgUHJlZmFiUHJldmlld0NvbXBvbmVudCxcbiAgICBFbXB0eVBhZ2VDb21wb25lbnRcbl07XG5cbmV4cG9ydCBjb25zdCBSRVFVSVJFRF9NT0RVTEVTX0ZPUl9EWU5BTUlDX0NPTVBPTkVOVFMgPSBbXG4gICAgQ29uZmlybURpYWxvZ01vZHVsZSxcbiAgICBEZXNpZ25EaWFsb2dNb2R1bGUsXG4gICAgRGlhbG9nTW9kdWxlLFxuXG4gICAgLy8gTkdYIEJvb3RzdHJhcFxuICAgIEJzRGF0ZXBpY2tlck1vZHVsZSxcbiAgICBuZ3hUaW1lcGlja2VyTW9kdWxlLFxuICAgIEJzRHJvcGRvd25Nb2R1bGUsXG4gICAgbmd4UGFnaW5hdGlvbk1vZHVsZSxcbiAgICBUeXBlYWhlYWRNb2R1bGUsXG4gICAgUHJvZ3Jlc3NiYXJNb2R1bGUsXG4gICAgbmd4Q2Fyb3VzZWxNb2R1bGUsXG4gICAgbmd4UG9wb3Zlck1vZHVsZSxcbiAgICBOZ0NpcmNsZVByb2dyZXNzTW9kdWxlLFxuICAgIFRvb2x0aXBNb2R1bGUsXG5cbiAgICAvLyBCYXNpYyB3aWRnZXRzXG4gICAgQmFzaWNNb2R1bGUsXG4gICAgUHJvZ3Jlc3NNb2R1bGUsXG4gICAgUmljaFRleHRFZGl0b3JNb2R1bGUsXG4gICAgU2VhcmNoTW9kdWxlLFxuICAgIFRyZWVNb2R1bGUsXG5cbiAgICAvLyBJbnB1dFxuICAgIENhbGVuZGFyTW9kdWxlLFxuICAgIENoaXBzTW9kdWxlLFxuICAgIENvbG9yUGlja2VyTW9kdWxlLFxuICAgIEN1cnJlbmN5TW9kdWxlLFxuICAgIEVwb2NoTW9kdWxlLFxuICAgIEZpbGVVcGxvYWRNb2R1bGUsXG4gICAgSW5wdXRNb2R1bGUsXG4gICAgUmF0aW5nTW9kdWxlLFxuICAgIFNsaWRlck1vZHVsZSxcblxuICAgIC8vIERhdGFcbiAgICBDYXJkTW9kdWxlLFxuICAgIEZvcm1Nb2R1bGUsXG4gICAgTGlzdE1vZHVsZSxcbiAgICBMaXZlVGFibGVNb2R1bGUsXG4gICAgUGFnaW5hdGlvbk1vZHVsZSxcbiAgICBUYWJsZU1vZHVsZSxcblxuICAgIC8vIGNoYXJ0XG4gICAgQ2hhcnRNb2R1bGUsXG5cbiAgICAvLyBjb250YWluZXIgbW9kdWxlc1xuICAgIEFjY29yZGlvbk1vZHVsZSxcbiAgICBMaW5lYXJMYXlvdXRNb2R1bGUsXG4gICAgTGF5b3V0R3JpZE1vZHVsZSxcbiAgICBQYW5lbE1vZHVsZSxcbiAgICBUYWJzTW9kdWxlLFxuICAgIFRpbGVNb2R1bGUsXG4gICAgV2l6YXJkTW9kdWxlLFxuXG4gICAgLy8gZGlhbG9nc1xuICAgIEFsZXJ0RGlhbG9nTW9kdWxlLFxuICAgIElmcmFtZURpYWxvZ01vZHVsZSxcbiAgICBMb2dpbkRpYWxvZ01vZHVsZSxcbiAgICBQYXJ0aWFsRGlhbG9nTW9kdWxlLFxuXG4gICAgLy8gbmF2aWdhdGlvblxuICAgIEJyZWFkY3J1bWJNb2R1bGUsXG4gICAgTWVudU1vZHVsZSxcbiAgICBOYXZiYXJNb2R1bGUsXG4gICAgUG9wb3Zlck1vZHVsZSxcblxuICAgIC8vIEFkdmFuY2VkXG4gICAgQ2Fyb3VzZWxNb2R1bGUsXG4gICAgTG9naW5Nb2R1bGUsXG4gICAgTWFycXVlZU1vZHVsZSxcblxuICAgIFBhZ2VNb2R1bGUsXG4gICAgRm9vdGVyTW9kdWxlLFxuICAgIEhlYWRlck1vZHVsZSxcbiAgICBMZWZ0UGFuZWxNb2R1bGUsXG4gICAgUmlnaHRQYW5lbE1vZHVsZSxcbiAgICBUb3BOYXZNb2R1bGUsXG4gICAgUHJlZmFiTW9kdWxlXG5dO1xuXG4vLyBzZXR0aW5nIHBhcnNlRXhwciBhcyBleHByRXZhbHVhdG9yIGZvciBzd2lwZUFuaW1hdGlvblxuKCQuZm4gYXMgYW55KS5zd2lwZUFuaW1hdGlvbi5leHByZXNzaW9uRXZhbHVhdG9yID0gJHBhcnNlRXhwcjtcblxuQE5nTW9kdWxlKHtcbiAgICBkZWNsYXJhdGlvbnM6IFsgLi4uZGVmaW5pdGlvbnMgXSxcbiAgICBpbXBvcnRzOiBbXG4gICAgICAgIENvbW1vbk1vZHVsZSxcbiAgICAgICAgUm91dGVyTW9kdWxlLFxuICAgICAgICBIdHRwQ2xpZW50TW9kdWxlLFxuICAgICAgICBGb3Jtc01vZHVsZSxcbiAgICAgICAgUmVhY3RpdmVGb3Jtc01vZHVsZSxcblxuICAgICAgICBUb2FzdHJNb2R1bGUsXG4gICAgICAgIFdtQ29tcG9uZW50c01vZHVsZSxcbiAgICAgICAgTW9iaWxlUnVudGltZU1vZHVsZSxcbiAgICAgICAgQ29yZU1vZHVsZSxcbiAgICAgICAgU2VjdXJpdHlNb2R1bGUsXG4gICAgICAgIE9BdXRoTW9kdWxlLFxuICAgICAgICBWYXJpYWJsZXNNb2R1bGUsXG4gICAgICAgIEh0dHBTZXJ2aWNlTW9kdWxlLFxuICAgICAgICAuLi5SRVFVSVJFRF9NT0RVTEVTX0ZPUl9EWU5BTUlDX0NPTVBPTkVOVFNcbiAgICBdLFxuICAgIGV4cG9ydHM6IFtcbiAgICAgICAgRm9ybXNNb2R1bGUsXG4gICAgICAgIFJlYWN0aXZlRm9ybXNNb2R1bGUsXG5cbiAgICAgICAgLi4uZGVmaW5pdGlvbnMsXG5cbiAgICAgICAgQ29tbW9uTW9kdWxlLFxuICAgICAgICBSb3V0ZXJNb2R1bGUsXG4gICAgICAgIEh0dHBDbGllbnRNb2R1bGUsXG5cbiAgICAgICAgVG9hc3RyTW9kdWxlLFxuICAgICAgICBXbUNvbXBvbmVudHNNb2R1bGUsXG4gICAgICAgIE1vYmlsZVJ1bnRpbWVNb2R1bGUsXG4gICAgICAgIENvcmVNb2R1bGUsXG4gICAgICAgIFNlY3VyaXR5TW9kdWxlLFxuICAgICAgICBPQXV0aE1vZHVsZSxcbiAgICAgICAgVmFyaWFibGVzTW9kdWxlLFxuICAgICAgICBIdHRwU2VydmljZU1vZHVsZSxcbiAgICAgICAgLi4uUkVRVUlSRURfTU9EVUxFU19GT1JfRFlOQU1JQ19DT01QT05FTlRTXG4gICAgXSxcbiAgICBwcm92aWRlcnM6IFtcbiAgICAgICAge3Byb3ZpZGU6IMm1U2hhcmVkU3R5bGVzSG9zdCwgdXNlQ2xhc3M6IFdNRG9tU2hhcmVkU3R5bGVzSG9zdH0sXG4gICAgICAgIHtwcm92aWRlOiDJtURvbVJlbmRlcmVyRmFjdG9yeTIsIHVzZUNsYXNzOiBXTURvbVJlbmRlcmVyRmFjdG9yeTJ9XG4gICAgXVxufSlcbmV4cG9ydCBjbGFzcyBSdW50aW1lQmFzZU1vZHVsZSB7XG5cbiAgICAvLyB0aGlzIHBvbHlmaWxsIGlzIHRvIGFkZCBzdXBwb3J0IGZvciBDdXN0b21FdmVudCBpbiBJRTExXG4gICAgc3RhdGljIGFkZEN1c3RvbUV2ZW50UG9seWZpbGwoKSB7XG4gICAgICAgICAgICBpZiAoIHR5cGVvZiB3aW5kb3dbJ0N1c3RvbUV2ZW50J10gPT09ICdmdW5jdGlvbicgKSB7XG4gICAgICAgICAgICAgICAgcmV0dXJuIGZhbHNlO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgLy8gQWRkaW5nIHR5cGUgYXMgYW55IHRvIGF2b2lkIGVycm9yIFRTMjMyMlxuICAgICAgICAgICAgY29uc3QgQ3VzdG9tRXZlbnQ6IGFueSA9IChldmVudCwgcGFyYW1zKSA9PiB7XG4gICAgICAgICAgICAgICAgcGFyYW1zID0gcGFyYW1zIHx8IHsgYnViYmxlczogZmFsc2UsIGNhbmNlbGFibGU6IGZhbHNlLCBkZXRhaWw6IG51bGwgfTtcbiAgICAgICAgICAgICAgICBjb25zdCBldnQgPSBkb2N1bWVudC5jcmVhdGVFdmVudCggJ0N1c3RvbUV2ZW50JyApO1xuICAgICAgICAgICAgICAgIGV2dC5pbml0Q3VzdG9tRXZlbnQoIGV2ZW50LCBwYXJhbXMuYnViYmxlcywgcGFyYW1zLmNhbmNlbGFibGUsIHBhcmFtcy5kZXRhaWwgKTtcbiAgICAgICAgICAgICAgICByZXR1cm4gZXZ0O1xuICAgICAgICAgICAgfTtcblxuICAgICAgICAgICAgQ3VzdG9tRXZlbnQucHJvdG90eXBlID0gd2luZG93WydFdmVudCddLnByb3RvdHlwZTtcbiAgICAgICAgICAgIC8vICMjIyBBTkdVTEFSOVRPRE8gIyMjXG4gICAgICAgICAgICB3aW5kb3dbJ0N1c3RvbUV2ZW50J10gPSBDdXN0b21FdmVudDtcbiAgICB9XG5cbiAgICBzdGF0aWMgZm9yUm9vdCgpOiBNb2R1bGVXaXRoUHJvdmlkZXJzPFJ1bnRpbWVCYXNlTW9kdWxlPiB7XG4gICAgICAgIHJldHVybiB7XG4gICAgICAgICAgICBuZ01vZHVsZTogUnVudGltZUJhc2VNb2R1bGUsXG4gICAgICAgICAgICBwcm92aWRlcnM6IFtcbiAgICAgICAgICAgICAgICB7cHJvdmlkZTogQXBwLCB1c2VDbGFzczogQXBwUmVmfSxcbiAgICAgICAgICAgICAgICB7cHJvdmlkZTogQWJzdHJhY3RUb2FzdGVyU2VydmljZSwgdXNlQ2xhc3M6IFRvYXN0ZXJTZXJ2aWNlSW1wbH0sXG4gICAgICAgICAgICAgICAge3Byb3ZpZGU6IEFic3RyYWN0STE4blNlcnZpY2UsIHVzZUNsYXNzOiBJMThuU2VydmljZUltcGx9LFxuICAgICAgICAgICAgICAgIHtwcm92aWRlOiBBYnN0cmFjdFNwaW5uZXJTZXJ2aWNlLCB1c2VDbGFzczogU3Bpbm5lclNlcnZpY2VJbXBsfSxcbiAgICAgICAgICAgICAgICB7cHJvdmlkZTogQWJzdHJhY3ROYXZpZ2F0aW9uU2VydmljZSwgdXNlQ2xhc3M6IE5hdmlnYXRpb25TZXJ2aWNlSW1wbH0sXG4gICAgICAgICAgICAgICAge3Byb3ZpZGU6IEFwcERlZmF1bHRzLCB1c2VDbGFzczogQXBwRGVmYXVsdHNTZXJ2aWNlfSxcbiAgICAgICAgICAgICAgICB7cHJvdmlkZTogRHluYW1pY0NvbXBvbmVudFJlZlByb3ZpZGVyLCB1c2VDbGFzczogRHluYW1pY0NvbXBvbmVudFJlZlByb3ZpZGVyU2VydmljZX0sXG4gICAgICAgICAgICAgICAge1xuICAgICAgICAgICAgICAgICAgICBwcm92aWRlOiBBUFBfSU5JVElBTElaRVIsXG4gICAgICAgICAgICAgICAgICAgIHVzZUZhY3Rvcnk6IEluaXRpYWxpemVBcHAsXG4gICAgICAgICAgICAgICAgICAgIGRlcHM6IFtBYnN0cmFjdEkxOG5TZXJ2aWNlLCBBcHBKU1Jlc29sdmVdLFxuICAgICAgICAgICAgICAgICAgICBtdWx0aTogdHJ1ZVxuICAgICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICAgICAge1xuICAgICAgICAgICAgICAgICAgICBwcm92aWRlOiBMT0NBTEVfSUQsXG4gICAgICAgICAgICAgICAgICAgIHVzZUZhY3Rvcnk6IHNldEFuZ3VsYXJMb2NhbGUsXG4gICAgICAgICAgICAgICAgICAgIGRlcHM6IFtBYnN0cmFjdEkxOG5TZXJ2aWNlXVxuICAgICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICAgICAge1xuICAgICAgICAgICAgICAgICAgICBwcm92aWRlOiBIVFRQX0lOVEVSQ0VQVE9SUyxcbiAgICAgICAgICAgICAgICAgICAgdXNlQ2xhc3M6IEh0dHBDYWxsSW50ZXJjZXB0b3IsXG4gICAgICAgICAgICAgICAgICAgIG11bHRpOiB0cnVlXG4gICAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgICBQaXBlU2VydmljZSxcbiAgICAgICAgICAgICAgICBEZWNpbWFsUGlwZSxcbiAgICAgICAgICAgICAgICBEYXRlUGlwZSxcbiAgICAgICAgICAgICAgICBBcHBNYW5hZ2VyU2VydmljZSxcbiAgICAgICAgICAgICAgICBQcmVmYWJNYW5hZ2VyU2VydmljZSxcbiAgICAgICAgICAgICAgICBBdXRoR3VhcmQsXG4gICAgICAgICAgICAgICAgUm9sZUd1YXJkLFxuICAgICAgICAgICAgICAgIFBhZ2VOb3RGb3VuZEd1YXJkLFxuICAgICAgICAgICAgICAgIENhbkRlYWN0aXZhdGVQYWdlR3VhcmQsXG4gICAgICAgICAgICAgICAgQXBwSlNSZXNvbHZlLFxuICAgICAgICAgICAgICAgIEFwcEV4dGVuc2lvbkpTUmVzb2x2ZSxcbiAgICAgICAgICAgICAgICBJMThuUmVzb2x2ZSxcbiAgICAgICAgICAgICAgICBnZXRTZXR0aW5nUHJvdmlkZXIoTUFYX0NBQ0hFX1NJWkUsIDEwKSxcbiAgICAgICAgICAgICAgICBnZXRTZXR0aW5nUHJvdmlkZXIoTUFYX0NBQ0hFX0FHRSwgMzAgKiA2MClcbiAgICAgICAgICAgIF1cbiAgICAgICAgfTtcbiAgICB9XG5cbiAgICBjb25zdHJ1Y3Rvcihtb2JpbGVSdW50aW1lTW9kdWxlOiBNb2JpbGVSdW50aW1lTW9kdWxlLFxuICAgICAgICAgICAgICAgIGFwcDogQXBwLFxuICAgICAgICAgICAgICAgIHZpZXdwb3J0OiBWaWV3cG9ydCkge1xuICAgICAgICBSdW50aW1lQmFzZU1vZHVsZS5hZGRDdXN0b21FdmVudFBvbHlmaWxsKCk7XG5cbiAgICAgICAgdGhpcy5nZXREZXZpY2VEZXRhaWxzKCkudGhlbihkZXRhaWxzID0+IHtcbiAgICAgICAgICAgIGFwcC5zZWxlY3RlZFZpZXdQb3J0ID0ge1xuICAgICAgICAgICAgICAgIG9zOiBkZXRhaWxzLm9zLFxuICAgICAgICAgICAgICAgIGNhdGVnb3J5OiBkZXRhaWxzLnNlbGVjdGVkRGV2aWNlQ2F0ZWdvcnlcbiAgICAgICAgICAgIH07XG4gICAgICAgICAgICB2aWV3cG9ydC51cGRhdGUoZGV0YWlscyk7XG4gICAgICAgICAgICBhcHAubm90aWZ5KCdvbi12aWV3cG9ydC1kZXRhaWxzJywgZGV0YWlscy5vcyk7XG4gICAgICAgIH0pO1xuICAgIH1cblxuXG4gICAgcHJpdmF0ZSBnZXREZXZpY2VEZXRhaWxzKCk6IFByb21pc2U8YW55PiB7XG4gICAgICAgIHJldHVybiBuZXcgUHJvbWlzZTxhbnk+KGZ1bmN0aW9uIChyZXNvbHZlLCByZWplY3QpIHtcbiAgICAgICAgICAgIGNvbnN0IG1zZ0NvbnRlbnQgPSB7a2V5OiAnb24tbG9hZCd9O1xuICAgICAgICAgICAgLy8gTm90aWZ5IHByZXZpZXcgd2luZG93IHRoYXQgYXBwbGljYXRpb24gaXMgcmVhZHkuIE90aGVyd2lzZSwgaWRlbnRpZnkgdGhlIE9TLlxuICAgICAgICAgICAgaWYgKHdpbmRvdy50b3AgIT09IHdpbmRvdykge1xuICAgICAgICAgICAgICAgIHdpbmRvdy50b3AucG9zdE1lc3NhZ2UobXNnQ29udGVudCwgJyonKTtcbiAgICAgICAgICAgICAgICAvLyBUaGlzIGlzIGZvciBwcmV2aWV3IHBhZ2VcbiAgICAgICAgICAgICAgICB3aW5kb3cub25tZXNzYWdlID0gZnVuY3Rpb24gKG1zZykge1xuICAgICAgICAgICAgICAgICAgICBjb25zdCBkYXRhID0gbXNnLmRhdGE7XG4gICAgICAgICAgICAgICAgICAgIGlmIChpc09iamVjdChkYXRhKSAmJiBkYXRhLmtleSA9PT0gJ3N3aXRjaC1kZXZpY2UnKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICByZXNvbHZlKGRhdGEuZGV2aWNlKTtcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH07XG4gICAgICAgICAgICB9IGVsc2UgaWYgKGlzSXBob25lKCkgfHwgaXNJcG9kKCkgfHwgaXNJcGFkKCkpIHtcbiAgICAgICAgICAgICAgICByZXNvbHZlKHsnb3MnOiBPUy5JT1N9KTtcbiAgICAgICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICAgICAgcmVzb2x2ZSh7J29zJzogT1MuQU5EUk9JRH0pO1xuICAgICAgICAgICAgfVxuICAgICAgICB9KTtcbiAgICB9XG59XG5cbmV4cG9ydCBjb25zdCBXTV9NT0RVTEVTX0ZPUl9ST09UID0gW1xuICAgIFdtQ29tcG9uZW50c01vZHVsZS5mb3JSb290KCksXG4gICAgTW9iaWxlUnVudGltZU1vZHVsZS5mb3JSb290KCksXG4gICAgQ29yZU1vZHVsZS5mb3JSb290KCksXG4gICAgU2VjdXJpdHlNb2R1bGUuZm9yUm9vdCgpLFxuICAgIE9BdXRoTW9kdWxlLmZvclJvb3QoKSxcbiAgICBWYXJpYWJsZXNNb2R1bGUuZm9yUm9vdCgpLFxuICAgIEh0dHBTZXJ2aWNlTW9kdWxlLmZvclJvb3QoKSxcbiAgICBSdW50aW1lQmFzZU1vZHVsZS5mb3JSb290KClcbl07XG4iXX0=
644
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicnVudGltZS1iYXNlLm1vZHVsZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3Byb2plY3RzL3J1bnRpbWUtYmFzZS9zcmMvcnVudGltZS1iYXNlLm1vZHVsZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUMsZUFBZSxFQUFFLFNBQVMsRUFBdUIsUUFBUSxFQUFDLE1BQU0sZUFBZSxDQUFDO0FBQ3hGLE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUMvQyxPQUFPLEVBQUUsWUFBWSxFQUFFLFFBQVEsRUFBRSxXQUFXLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUN0RSxPQUFPLEVBQUUsaUJBQWlCLEVBQUUsZ0JBQWdCLEVBQUUsTUFBTSxzQkFBc0IsQ0FBQztBQUMzRSxPQUFPLEVBQUUsaUJBQWlCLEVBQUUsTUFBTSwyQkFBMkIsQ0FBQztBQUM5RCxPQUFPLEVBQUMsb0JBQW9CLEVBQUMsTUFBTSwyQkFBMkIsQ0FBQztBQUMvRCxPQUFPLEVBQUUsV0FBVyxFQUFFLG1CQUFtQixFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFFbEUsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLFlBQVksQ0FBQztBQUUxQyxPQUFPLEVBQ0gsZUFBZSxFQUNmLFVBQVUsRUFDVixtQkFBbUIsRUFDbkIseUJBQXlCLEVBQ3pCLHNCQUFzQixFQUN0QixzQkFBc0IsRUFDdEIsR0FBRyxFQUNILFdBQVcsRUFDWCxVQUFVLEVBQ1YsMkJBQTJCLEVBQzNCLFFBQVEsRUFDUixRQUFRLEVBQ1IsTUFBTSxFQUNOLE1BQU0sRUFDTixRQUFRLEVBQ1IsVUFBVSxFQUNiLE1BQU0sVUFBVSxDQUFDO0FBQ2xCLE9BQU8sRUFBRSxrQkFBa0IsRUFBRSxNQUFNLHFCQUFxQixDQUFDO0FBQ3pELE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSx3QkFBd0IsQ0FBQztBQUN0RCxPQUFPLEVBQUUsbUJBQW1CLEVBQUUsTUFBTSx1Q0FB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LFdBQVc7UUFDWCxhQUFhO1FBRWIsVUFBVTtRQUNWLFlBQVk7UUFDWixZQUFZO1FBQ1osZUFBZTtRQUNmLGdCQUFnQjtRQUNoQixZQUFZO1FBQ1osWUFBWTtBQXlKaEIsTUFBTSxDQUFDLE1BQU0sbUJBQW1CLEdBQUc7SUFDL0Isa0JBQWtCLENBQUMsT0FBTyxFQUFFO0lBQzVCLG1CQUFtQixDQUFDLE9BQU8sRUFBRTtJQUM3QixVQUFVLENBQUMsT0FBTyxFQUFFO0lBQ3BCLGNBQWMsQ0FBQyxPQUFPLEVBQUU7SUFDeEIsV0FBVyxDQUFDLE9BQU8sRUFBRTtJQUNyQixlQUFlLENBQUMsT0FBTyxFQUFFO0lBQ3pCLGlCQUFpQixDQUFDLE9BQU8sRUFBRTtJQUMzQixpQkFBaUIsQ0FBQyxPQUFPLEVBQUU7Q0FDOUIsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7QVBQX0lOSVRJQUxJWkVSLCBMT0NBTEVfSUQsIE1vZHVsZVdpdGhQcm92aWRlcnMsIE5nTW9kdWxlfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IFJvdXRlck1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL3JvdXRlcic7XG5pbXBvcnQgeyBDb21tb25Nb2R1bGUsIERhdGVQaXBlLCBEZWNpbWFsUGlwZSB9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbic7XG5pbXBvcnQgeyBIVFRQX0lOVEVSQ0VQVE9SUywgSHR0cENsaWVudE1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbi9odHRwJztcbmltcG9ydCB7IMm1U2hhcmVkU3R5bGVzSG9zdCB9IGZyb20gJ0Bhbmd1bGFyL3BsYXRmb3JtLWJyb3dzZXInO1xuaW1wb3J0IHvJtURvbVJlbmRlcmVyRmFjdG9yeTJ9IGZyb20gXCJAYW5ndWxhci9wbGF0Zm9ybS1icm93c2VyXCI7XG5pbXBvcnQgeyBGb3Jtc01vZHVsZSwgUmVhY3RpdmVGb3Jtc01vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2Zvcm1zJztcblxuaW1wb3J0IHsgVG9hc3RyTW9kdWxlIH0gZnJvbSAnbmd4LXRvYXN0cic7XG5cbmltcG9ydCB7XG4gICAgX1dNX0FQUF9QUk9KRUNULFxuICAgICRwYXJzZUV4cHIsXG4gICAgQWJzdHJhY3RJMThuU2VydmljZSxcbiAgICBBYnN0cmFjdE5hdmlnYXRpb25TZXJ2aWNlLFxuICAgIEFic3RyYWN0U3Bpbm5lclNlcnZpY2UsXG4gICAgQWJzdHJhY3RUb2FzdGVyU2VydmljZSxcbiAgICBBcHAsXG4gICAgQXBwRGVmYXVsdHMsXG4gICAgQ29yZU1vZHVsZSxcbiAgICBEeW5hbWljQ29tcG9uZW50UmVmUHJvdmlkZXIsXG4gICAgaXNPYmplY3QsXG4gICAgaXNJcGhvbmUsXG4gICAgaXNJcG9kLFxuICAgIGlzSXBhZCxcbiAgICBWaWV3cG9ydCxcbiAgICBoYXNDb3Jkb3ZhXG59IGZyb20gJ0B3bS9jb3JlJztcbmltcG9ydCB7IFdtQ29tcG9uZW50c01vZHVsZSB9IGZyb20gJ0B3bS9jb21wb25lbnRzL2Jhc2UnO1xuaW1wb3J0IHsgRGlhbG9nTW9kdWxlIH0gZnJvbSAnQHdtL2NvbXBvbmVudHMvZGlhbG9ncyc7XG5pbXBvcnQgeyBDb25maXJtRGlhbG9nTW9kdWxlIH0gZnJvbSAnQHdtL2NvbXBvbmVudHMvZGlhbG9ncy9jb25maXJtLWRpYWxvZyc7XG5pbXBvcnQgeyBEZXNpZ25EaWFsb2dNb2R1bGUgfSBmcm9tICdAd20vY29tcG9uZW50cy9kaWFsb2dzL2Rlc2lnbi1kaWFsb2cnO1xuaW1wb3J0IHsgUHJlZmFiTW9kdWxlIH0gZnJvbSAnQHdtL2NvbXBvbmVudHMvcHJlZmFiJztcbmltcG9ydCB7IE1vYmlsZVJ1bnRpbWVNb2R1bGUgfSBmcm9tICdAd20vbW9iaWxlL3J1bnRpbWUnO1xuaW1wb3J0IHsgU2VjdXJpdHlNb2R1bGUgfSBmcm9tICdAd20vc2VjdXJpdHknO1xuaW1wb3J0IHsgSHR0cFNlcnZpY2VNb2R1bGUgfSBmcm9tICdAd20vaHR0cCc7XG5pbXBvcnQgeyBWYXJpYWJsZXNNb2R1bGUgfSBmcm9tICdAd20vdmFyaWFibGVzJztcbmltcG9ydCB7IE9BdXRoTW9kdWxlIH0gZnJvbSAnQHdtL29BdXRoJztcblxuaW1wb3J0IHsgQWNjZXNzcm9sZXNEaXJlY3RpdmUgfSBmcm9tICcuL2RpcmVjdGl2ZXMvYWNjZXNzcm9sZXMuZGlyZWN0aXZlJztcbmltcG9ydCB7IEFwcFNwaW5uZXJDb21wb25lbnQgfSBmcm9tICcuL2NvbXBvbmVudHMvYXBwLXNwaW5uZXIuY29tcG9uZW50JztcbmltcG9ydCB7IEN1c3RvbVRvYXN0ZXJDb21wb25lbnQgfSBmcm9tICcuL2NvbXBvbmVudHMvY3VzdG9tLXRvYXN0ZXIuY29tcG9uZW50JztcbmltcG9ydCB7IEVtcHR5UGFnZUNvbXBvbmVudCB9IGZyb20gJy4vY29tcG9uZW50cy9lbXB0eS1jb21wb25lbnQvZW1wdHktcGFnZS5jb21wb25lbnQnO1xuaW1wb3J0IHsgUHJlZmFiRGlyZWN0aXZlIH0gZnJvbSAnLi9kaXJlY3RpdmVzL3ByZWZhYi5kaXJlY3RpdmUnO1xuaW1wb3J0IHsgQXBwUmVmIH0gZnJvbSAnLi9zZXJ2aWNlcy9hcHAuc2VydmljZSc7XG5pbXBvcnQgeyBUb2FzdGVyU2VydmljZUltcGwgfSBmcm9tICcuL3NlcnZpY2VzL3RvYXN0ZXIuc2VydmljZSc7XG5pbXBvcnQgeyBJMThuU2VydmljZUltcGwgfSBmcm9tICcuL3NlcnZpY2VzL2kxOG4uc2VydmljZSc7XG5pbXBvcnQgeyBTcGlubmVyU2VydmljZUltcGwgfSBmcm9tICcuL3NlcnZpY2VzL3NwaW5uZXIuc2VydmljZSc7XG5pbXBvcnQgeyBOYXZpZ2F0aW9uU2VydmljZUltcGwgfSBmcm9tICcuL3NlcnZpY2VzL25hdmlnYXRpb24uc2VydmljZSc7XG5pbXBvcnQgeyBQaXBlU2VydmljZSB9IGZyb20gXCIuL3NlcnZpY2VzL3BpcGUuc2VydmljZVwiO1xuaW1wb3J0IHsgQXBwRGVmYXVsdHNTZXJ2aWNlIH0gZnJvbSAnLi9zZXJ2aWNlcy9hcHAtZGVmYXVsdHMuc2VydmljZSc7XG5pbXBvcnQgeyBBcHBNYW5hZ2VyU2VydmljZSB9IGZyb20gJy4vc2VydmljZXMvYXBwLm1hbmFnZXIuc2VydmljZSc7XG5pbXBvcnQgeyBQcmVmYWJNYW5hZ2VyU2VydmljZSB9IGZyb20gJy4vc2VydmljZXMvcHJlZmFiLW1hbmFnZXIuc2VydmljZSc7XG5pbXBvcnQgeyBBdXRoR3VhcmQgfSBmcm9tICcuL2d1YXJkcy9hdXRoLmd1YXJkJztcbmltcG9ydCB7IFJvbGVHdWFyZCB9IGZyb20gJy4vZ3VhcmRzL3JvbGUuZ3VhcmQnO1xuaW1wb3J0IHsgUGFnZU5vdEZvdW5kR3VhcmQgfSBmcm9tICcuL2d1YXJkcy9wYWdlLW5vdC1mb3VuZC5ndWFyZCc7XG5pbXBvcnQgeyBBcHBKU1Jlc29sdmUgfSBmcm9tICcuL3Jlc29sdmVzL2FwcC1qcy5yZXNvbHZlJztcbmltcG9ydCB7IEFwcEV4dGVuc2lvbkpTUmVzb2x2ZSB9IGZyb20gJy4vcmVzb2x2ZXMvYXBwLWV4dGVuc2lvbi5yZXNvbHZlJztcbmltcG9ydCB7IEkxOG5SZXNvbHZlIH0gZnJvbSAnLi9yZXNvbHZlcy9pMThuLnJlc29sdmUnO1xuaW1wb3J0IHsgQXBwQ29tcG9uZW50IH0gZnJvbSAnLi9jb21wb25lbnRzL2FwcC1jb21wb25lbnQvYXBwLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBIdHRwQ2FsbEludGVyY2VwdG9yIH0gZnJvbSAnLi9zZXJ2aWNlcy9odHRwLWludGVyY2VwdG9yLnNlcnZpY2VzJztcbmltcG9ydCB7IFByZWZhYlByZXZpZXdDb21wb25lbnQgfSBmcm9tICcuL2NvbXBvbmVudHMvcHJlZmFiLXByZXZpZXcuY29tcG9uZW50JztcbmltcG9ydCB7IER5bmFtaWNDb21wb25lbnRSZWZQcm92aWRlclNlcnZpY2UgfSBmcm9tICcuL3NlcnZpY2VzL2R5bmFtaWMtY29tcG9uZW50LXJlZi1wcm92aWRlci5zZXJ2aWNlJztcbmltcG9ydCB7IENhbkRlYWN0aXZhdGVQYWdlR3VhcmQgfSBmcm9tICcuL2d1YXJkcy9jYW4tZGVhY3RpdmF0ZS1wYWdlLmd1YXJkJztcbmltcG9ydCB7IE1BWF9DQUNIRV9BR0UsIE1BWF9DQUNIRV9TSVpFIH0gZnJvbSAnLi91dGlsL3dtLXJvdXRlLXJldXNlLXN0cmF0ZWd5JztcblxuLy9hbmd1bGFyIG92ZXJyaWRlc1xuaW1wb3J0IHsgV01Eb21TaGFyZWRTdHlsZXNIb3N0IH0gZnJvbSBcIi4vb3ZlcnJpZGVzL3dtX3NoYXJlZF9zdHlsZXNfaG9zdFwiO1xuaW1wb3J0IHsgV01Eb21SZW5kZXJlckZhY3RvcnkyIH0gZnJvbSBcIi4vb3ZlcnJpZGVzL3dtX2RvbV9yZW5kZXJlclwiO1xuaW1wb3J0IHtQYWdlTW9kdWxlfSBmcm9tIFwiQHdtL2NvbXBvbmVudHMvcGFnZVwiO1xuaW1wb3J0IHtGb290ZXJNb2R1bGV9IGZyb20gXCJAd20vY29tcG9uZW50cy9wYWdlL2Zvb3RlclwiO1xuaW1wb3J0IHtIZWFkZXJNb2R1bGV9IGZyb20gXCJAd20vY29tcG9uZW50cy9wYWdlL2hlYWRlclwiO1xuaW1wb3J0IHtMZWZ0UGFuZWxNb2R1bGV9IGZyb20gXCJAd20vY29tcG9uZW50cy9wYWdlL2xlZnQtcGFuZWxcIjtcbmltcG9ydCB7UmlnaHRQYW5lbE1vZHVsZX0gZnJvbSBcIkB3bS9jb21wb25lbnRzL3BhZ2UvcmlnaHQtcGFuZWxcIjtcbmltcG9ydCB7VG9wTmF2TW9kdWxlfSBmcm9tIFwiQHdtL2NvbXBvbmVudHMvcGFnZS90b3AtbmF2XCI7XG5pbXBvcnQge0Jhc2ljTW9kdWxlfSBmcm9tIFwiQHdtL2NvbXBvbmVudHMvYmFzaWNcIjtcbmltcG9ydCB7UHJvZ3Jlc3NNb2R1bGV9IGZyb20gXCJAd20vY29tcG9uZW50cy9iYXNpYy9wcm9ncmVzc1wiO1xuaW1wb3J0IHtSaWNoVGV4dEVkaXRvck1vZHVsZX0gZnJvbSBcIkB3bS9jb21wb25lbnRzL2Jhc2ljL3JpY2gtdGV4dC1lZGl0b3JcIjtcbmltcG9ydCB7U2VhcmNoTW9kdWxlfSBmcm9tIFwiQHdtL2NvbXBvbmVudHMvYmFzaWMvc2VhcmNoXCI7XG5pbXBvcnQge1RyZWVNb2R1bGV9IGZyb20gXCJAd20vY29tcG9uZW50cy9iYXNpYy90cmVlXCI7XG5pbXBvcnQge0NhbGVuZGFyTW9kdWxlfSBmcm9tIFwiQHdtL2NvbXBvbmVudHMvaW5wdXQvY2FsZW5kYXJcIjtcbmltcG9ydCB7Q2hpcHNNb2R1bGV9IGZyb20gXCJAd20vY29tcG9uZW50cy9pbnB1dC9jaGlwc1wiO1xuaW1wb3J0IHtDb2xvclBpY2tlck1vZHVsZX0gZnJvbSBcIkB3bS9jb21wb25lbnRzL2lucHV0L2NvbG9yLXBpY2tlclwiO1xuaW1wb3J0IHtDdXJyZW5jeU1vZHVsZX0gZnJvbSBcIkB3bS9jb21wb25lbnRzL2lucHV0L2N1cnJlbmN5XCI7XG5pbXBvcnQge0Vwb2NoTW9kdWxlfSBmcm9tIFwiQHdtL2NvbXBvbmVudHMvaW5wdXQvZXBvY2hcIjtcbmltcG9ydCB7RmlsZVVwbG9hZE1vZHVsZX0gZnJvbSBcIkB3bS9jb21wb25lbnRzL2lucHV0L2ZpbGUtdXBsb2FkXCI7XG5pbXBvcnQge0lucHV0TW9kdWxlfSBmcm9tIFwiQHdtL2NvbXBvbmVudHMvaW5wdXRcIjtcbmltcG9ydCB7UmF0aW5nTW9kdWxlfSBmcm9tIFwiQHdtL2NvbXBvbmVudHMvaW5wdXQvcmF0aW5nXCI7XG5pbXBvcnQge1NsaWRlck1vZHVsZX0gZnJvbSBcIkB3bS9jb21wb25lbnRzL2lucHV0L3NsaWRlclwiO1xuaW1wb3J0IHtDYXJkTW9kdWxlfSBmcm9tIFwiQHdtL2NvbXBvbmVudHMvZGF0YS9jYXJkXCI7XG5pbXBvcnQge0Zvcm1Nb2R1bGV9IGZyb20gXCJAd20vY29tcG9uZW50cy9kYXRhL2Zvcm1cIjtcbmltcG9ydCB7TGlzdE1vZHVsZX0gZnJvbSBcIkB3bS9jb21wb25lbnRzL2RhdGEvbGlzdFwiO1xuaW1wb3J0IHtMaXZlVGFibGVNb2R1bGV9IGZyb20gXCJAd20vY29tcG9uZW50cy9kYXRhL2xpdmUtdGFibGVcIjtcbmltcG9ydCB7UGFnaW5hdGlvbk1vZHVsZX0gZnJvbSBcIkB3bS9jb21wb25lbnRzL2RhdGEvcGFnaW5hdGlvblwiO1xuaW1wb3J0IHtUYWJsZU1vZHVsZX0gZnJvbSBcIkB3bS9jb21wb25lbnRzL2RhdGEvdGFibGVcIjtcbmltcG9ydCB7Q2hhcnRNb2R1bGV9IGZyb20gXCJAd20vY29tcG9uZW50cy9jaGFydFwiO1xuaW1wb3J0IHtBY2NvcmRpb25Nb2R1bGV9IGZyb20gXCJAd20vY29tcG9uZW50cy9jb250YWluZXJzL2FjY29yZGlvblwiO1xuaW1wb3J0IHtMaW5lYXJMYXlvdXRNb2R1bGV9IGZyb20gXCJAd20vY29tcG9uZW50cy9jb250YWluZXJzL2xpbmVhci1sYXlvdXRcIjtcbmltcG9ydCB7TGF5b3V0R3JpZE1vZHVsZX0gZnJvbSBcIkB3bS9jb21wb25lbnRzL2NvbnRhaW5lcnMvbGF5b3V0LWdyaWRcIjtcbmltcG9ydCB7UGFuZWxNb2R1bGV9IGZyb20gXCJAd20vY29tcG9uZW50cy9jb250YWluZXJzL3BhbmVsXCI7XG5pbXBvcnQge1RhYnNNb2R1bGV9IGZyb20gXCJAd20vY29tcG9uZW50cy9jb250YWluZXJzL3RhYnNcIjtcbmltcG9ydCB7VGlsZU1vZHVsZX0gZnJvbSBcIkB3bS9jb21wb25lbnRzL2NvbnRhaW5lcnMvdGlsZVwiO1xuaW1wb3J0IHtXaXphcmRNb2R1bGV9IGZyb20gXCJAd20vY29tcG9uZW50cy9jb250YWluZXJzL3dpemFyZFwiO1xuaW1wb3J0IHtBbGVydERpYWxvZ01vZHVsZX0gZnJvbSBcIkB3bS9jb21wb25lbnRzL2RpYWxvZ3MvYWxlcnQtZGlhbG9nXCI7XG5pbXBvcnQge0lmcmFtZURpYWxvZ01vZHVsZX0gZnJvbSBcIkB3bS9jb21wb25lbnRzL2RpYWxvZ3MvaWZyYW1lLWRpYWxvZ1wiO1xuaW1wb3J0IHtMb2dpbkRpYWxvZ01vZHVsZX0gZnJvbSBcIkB3bS9jb21wb25lbnRzL2RpYWxvZ3MvbG9naW4tZGlhbG9nXCI7XG5pbXBvcnQge1BhcnRpYWxEaWFsb2dNb2R1bGV9IGZyb20gXCJAd20vY29tcG9uZW50cy9kaWFsb2dzL3BhcnRpYWwtZGlhbG9nXCI7XG5pbXBvcnQge0JyZWFkY3J1bWJNb2R1bGV9IGZyb20gXCJAd20vY29tcG9uZW50cy9uYXZpZ2F0aW9uL2JyZWFkY3J1bWJcIjtcbmltcG9ydCB7TWVudU1vZHVsZX0gZnJvbSBcIkB3bS9jb21wb25lbnRzL25hdmlnYXRpb24vbWVudVwiO1xuaW1wb3J0IHtOYXZiYXJNb2R1bGV9IGZyb20gXCJAd20vY29tcG9uZW50cy9uYXZpZ2F0aW9uL25hdmJhclwiO1xuaW1wb3J0IHtQb3BvdmVyTW9kdWxlfSBmcm9tIFwiQHdtL2NvbXBvbmVudHMvbmF2aWdhdGlvbi9wb3BvdmVyXCI7XG5pbXBvcnQge0Nhcm91c2VsTW9kdWxlfSBmcm9tIFwiQHdtL2NvbXBvbmVudHMvYWR2YW5jZWQvY2Fyb3VzZWxcIjtcbmltcG9ydCB7TG9naW5Nb2R1bGV9IGZyb20gXCJAd20vY29tcG9uZW50cy9hZHZhbmNlZC9sb2dpblwiO1xuaW1wb3J0IHtNYXJxdWVlTW9kdWxlfSBmcm9tIFwiQHdtL2NvbXBvbmVudHMvYWR2YW5jZWQvbWFycXVlZVwiO1xuaW1wb3J0IHtCc0RhdGVwaWNrZXJNb2R1bGV9IGZyb20gXCJuZ3gtYm9vdHN0cmFwL2RhdGVwaWNrZXJcIjtcbmltcG9ydCB7VGltZXBpY2tlck1vZHVsZSBhcyBuZ3hUaW1lcGlja2VyTW9kdWxlfSBmcm9tIFwibmd4LWJvb3RzdHJhcC90aW1lcGlja2VyXCI7XG5pbXBvcnQge0JzRHJvcGRvd25Nb2R1bGV9IGZyb20gXCJuZ3gtYm9vdHN0cmFwL2Ryb3Bkb3duXCI7XG5pbXBvcnQge1BhZ2luYXRpb25Nb2R1bGUgYXMgbmd4UGFnaW5hdGlvbk1vZHVsZX0gZnJvbSBcIm5neC1ib290c3RyYXAvcGFnaW5hdGlvblwiO1xuaW1wb3J0IHtUeXBlYWhlYWRNb2R1bGV9IGZyb20gXCJuZ3gtYm9vdHN0cmFwL3R5cGVhaGVhZFwiO1xuaW1wb3J0IHtQcm9ncmVzc2Jhck1vZHVsZX0gZnJvbSBcIm5neC1ib290c3RyYXAvcHJvZ3Jlc3NiYXJcIjtcbmltcG9ydCB7Q2Fyb3VzZWxNb2R1bGUgYXMgbmd4Q2Fyb3VzZWxNb2R1bGV9IGZyb20gXCJuZ3gtYm9vdHN0cmFwL2Nhcm91c2VsXCI7XG5pbXBvcnQge1BvcG92ZXJNb2R1bGUgYXMgbmd4UG9wb3Zlck1vZHVsZX0gZnJvbSBcIm5neC1ib290c3RyYXAvcG9wb3ZlclwiO1xuaW1wb3J0IHtOZ0NpcmNsZVByb2dyZXNzTW9kdWxlfSBmcm9tIFwibmctY2lyY2xlLXByb2dyZXNzXCI7XG5pbXBvcnQge1Rvb2x0aXBNb2R1bGV9IGZyb20gXCJuZ3gtYm9vdHN0cmFwL3Rvb2x0aXBcIjtcblxuZGVjbGFyZSBjb25zdCBfV01fQVBQX1BST1BFUlRJRVM7XG5cbmNvbnN0IGluaXRpYWxpemVQcm9qZWN0RGV0YWlscyA9ICgpID0+IHtcbiAgICBsZXQgY2RuVXJsID0gZG9jdW1lbnQucXVlcnlTZWxlY3RvcignW25hbWU9XCJkZXBsb3lVcmxcIl0nKSAmJiBkb2N1bWVudC5xdWVyeVNlbGVjdG9yKCdbbmFtZT1cImRlcGxveVVybFwiXScpLmdldEF0dHJpYnV0ZSgnY29udGVudCcpO1xuICAgIC8vZm9yIHByZXZpZXdcbiAgICBpZighY2RuVXJsKSB7XG4gICAgICAgIGNkblVybCA9IGRvY3VtZW50LnF1ZXJ5U2VsZWN0b3IoJ1tuYW1lPVwiY2RuVXJsXCJdJykgJiYgZG9jdW1lbnQucXVlcnlTZWxlY3RvcignW25hbWU9XCJjZG5VcmxcIl0nKS5nZXRBdHRyaWJ1dGUoJ2NvbnRlbnQnKTtcbiAgICB9XG4gICAgX1dNX0FQUF9QUk9KRUNULmlkID0gaGFzQ29yZG92YSgpID8gX1dNX0FQUF9QUk9QRVJUSUVTLmRpc3BsYXlOYW1lIDogbG9jYXRpb24uaHJlZi5zcGxpdCgnLycpWzNdO1xuICAgIC8vIEludGVncmF0aW9uIHdpdGggdGhpcmQgcGFydHkgYXBwcyBsaWtlIGluIFNTUEEvV2ViQ29tcG9uZW50cywgdGhpcyBtZXRhIHRhZyB3aXRoIGNkblVybCB3aWxsIG5vdCBiZSB0aGVyZSB0aGVuIGRlZmF1bHQgaXQgdG8gbmctYnVuZGxlL1xuICAgIF9XTV9BUFBfUFJPSkVDVC5jZG5VcmwgPSBjZG5VcmwgfHwgJ25nLWJ1bmRsZS8nO1xuICAgIF9XTV9BUFBfUFJPSkVDVC5uZ0Rlc3QgPSAnbmctYnVuZGxlLyc7XG4gICAgdHJ5IHtcbiAgICAgICAgLy9AdHMtaWdub3JlXG4gICAgICAgIF9fd2VicGFja19yZXF1aXJlX18ucCA9IF9fd2VicGFja19wdWJsaWNfcGF0aF9fID0gY2RuVXJsO1xuICAgIH0gY2F0Y2goZSkge1xuICAgICAgICAvL2ZvciBhcHAgcHJldmlldyB0aGVyZSBpcyBubyB3ZWJwYWNrLiBEb24ndCBkbyBhbnl0aGluZy5cbiAgICB9XG59O1xuXG5lbnVtIE9TIHtcbiAgICBJT1MgPSAnaW9zJyxcbiAgICBBTkRST0lEID0gJ2FuZHJvaWQnXG59XG5cbmV4cG9ydCBmdW5jdGlvbiBnZXRTZXR0aW5nUHJvdmlkZXIoa2V5OiBzdHJpbmcsIGRlZmF1bHRWYWx1ZTogYW55KSB7XG4gICAgcmV0dXJuIHtcbiAgICAgICAgcHJvdmlkZToga2V5LFxuICAgICAgICB1c2VWYWx1ZTogZGVmYXVsdFZhbHVlXG4gICAgfTtcbn07XG5cbmV4cG9ydCBmdW5jdGlvbiBJbml0aWFsaXplQXBwKEkxOG5TZXJ2aWNlLCBBcHBKU1Jlc29sdmUpIHtcbiAgICByZXR1cm4gYXN5bmMgKCkgPT4ge1xuICAgICAgICBpbml0aWFsaXplUHJvamVjdERldGFpbHMoKTtcbiAgICAgICAgYXdhaXQgQXBwSlNSZXNvbHZlLnJlc29sdmUoKTtcbiAgICAgICAgcmV0dXJuIEkxOG5TZXJ2aWNlLmxvYWREZWZhdWx0TG9jYWxlKCk7XG4gICAgfTtcbn1cblxuZXhwb3J0IGZ1bmN0aW9uIHNldEFuZ3VsYXJMb2NhbGUoSTE4blNlcnZpY2UpIHtcbiAgICBpbml0aWFsaXplUHJvamVjdERldGFpbHMoKTtcbiAgICByZXR1cm4gSTE4blNlcnZpY2UuZGVkdWNlQXBwTG9jYWxlKCk7XG59XG5cbmNvbnN0IGRlZmluaXRpb25zID0gW1xuICAgIEFjY2Vzc3JvbGVzRGlyZWN0aXZlLFxuICAgIEFwcFNwaW5uZXJDb21wb25lbnQsXG4gICAgQ3VzdG9tVG9hc3RlckNvbXBvbmVudCxcbiAgICBQcmVmYWJEaXJlY3RpdmUsXG4gICAgQXBwQ29tcG9uZW50LFxuICAgIFByZWZhYlByZXZpZXdDb21wb25lbnQsXG4gICAgRW1wdHlQYWdlQ29tcG9uZW50XG5dO1xuXG5leHBvcnQgY29uc3QgUkVRVUlSRURfTU9EVUxFU19GT1JfRFlOQU1JQ19DT01QT05FTlRTID0gW1xuICAgIENvbmZpcm1EaWFsb2dNb2R1bGUsXG4gICAgRGVzaWduRGlhbG9nTW9kdWxlLFxuICAgIERpYWxvZ01vZHVsZSxcblxuICAgIC8vIE5HWCBCb290c3RyYXBcbiAgICBCc0RhdGVwaWNrZXJNb2R1bGUsXG4gICAgbmd4VGltZXBpY2tlck1vZHVsZSxcbiAgICBCc0Ryb3Bkb3duTW9kdWxlLFxuICAgIG5neFBhZ2luYXRpb25Nb2R1bGUsXG4gICAgVHlwZWFoZWFkTW9kdWxlLFxuICAgIFByb2dyZXNzYmFyTW9kdWxlLFxuICAgIG5neENhcm91c2VsTW9kdWxlLFxuICAgIG5neFBvcG92ZXJNb2R1bGUsXG4gICAgTmdDaXJjbGVQcm9ncmVzc01vZHVsZSxcbiAgICBUb29sdGlwTW9kdWxlLFxuXG4gICAgLy8gQmFzaWMgd2lkZ2V0c1xuICAgIEJhc2ljTW9kdWxlLFxuICAgIFByb2dyZXNzTW9kdWxlLFxuICAgIFJpY2hUZXh0RWRpdG9yTW9kdWxlLFxuICAgIFNlYXJjaE1vZHVsZSxcbiAgICBUcmVlTW9kdWxlLFxuXG4gICAgLy8gSW5wdXRcbiAgICBDYWxlbmRhck1vZHVsZSxcbiAgICBDaGlwc01vZHVsZSxcbiAgICBDb2xvclBpY2tlck1vZHVsZSxcbiAgICBDdXJyZW5jeU1vZHVsZSxcbiAgICBFcG9jaE1vZHVsZSxcbiAgICBGaWxlVXBsb2FkTW9kdWxlLFxuICAgIElucHV0TW9kdWxlLFxuICAgIFJhdGluZ01vZHVsZSxcbiAgICBTbGlkZXJNb2R1bGUsXG5cbiAgICAvLyBEYXRhXG4gICAgQ2FyZE1vZHVsZSxcbiAgICBGb3JtTW9kdWxlLFxuICAgIExpc3RNb2R1bGUsXG4gICAgTGl2ZVRhYmxlTW9kdWxlLFxuICAgIFBhZ2luYXRpb25Nb2R1bGUsXG4gICAgVGFibGVNb2R1bGUsXG5cbiAgICAvLyBjaGFydFxuICAgIENoYXJ0TW9kdWxlLFxuXG4gICAgLy8gY29udGFpbmVyIG1vZHVsZXNcbiAgICBBY2NvcmRpb25Nb2R1bGUsXG4gICAgTGluZWFyTGF5b3V0TW9kdWxlLFxuICAgIExheW91dEdyaWRNb2R1bGUsXG4gICAgUGFuZWxNb2R1bGUsXG4gICAgVGFic01vZHVsZSxcbiAgICBUaWxlTW9kdWxlLFxuICAgIFdpemFyZE1vZHVsZSxcblxuICAgIC8vIGRpYWxvZ3NcbiAgICBBbGVydERpYWxvZ01vZHVsZSxcbiAgICBJZnJhbWVEaWFsb2dNb2R1bGUsXG4gICAgTG9naW5EaWFsb2dNb2R1bGUsXG4gICAgUGFydGlhbERpYWxvZ01vZHVsZSxcblxuICAgIC8vIG5hdmlnYXRpb25cbiAgICBCcmVhZGNydW1iTW9kdWxlLFxuICAgIE1lbnVNb2R1bGUsXG4gICAgTmF2YmFyTW9kdWxlLFxuICAgIFBvcG92ZXJNb2R1bGUsXG5cbiAgICAvLyBBZHZhbmNlZFxuICAgIENhcm91c2VsTW9kdWxlLFxuICAgIExvZ2luTW9kdWxlLFxuICAgIE1hcnF1ZWVNb2R1bGUsXG5cbiAgICBQYWdlTW9kdWxlLFxuICAgIEZvb3Rlck1vZHVsZSxcbiAgICBIZWFkZXJNb2R1bGUsXG4gICAgTGVmdFBhbmVsTW9kdWxlLFxuICAgIFJpZ2h0UGFuZWxNb2R1bGUsXG4gICAgVG9wTmF2TW9kdWxlLFxuICAgIFByZWZhYk1vZHVsZVxuXTtcblxuLy8gc2V0dGluZyBwYXJzZUV4cHIgYXMgZXhwckV2YWx1YXRvciBmb3Igc3dpcGVBbmltYXRpb25cbigkLmZuIGFzIGFueSkuc3dpcGVBbmltYXRpb24uZXhwcmVzc2lvbkV2YWx1YXRvciA9ICRwYXJzZUV4cHI7XG5cbkBOZ01vZHVsZSh7XG4gICAgZGVjbGFyYXRpb25zOiBbIC4uLmRlZmluaXRpb25zIF0sXG4gICAgaW1wb3J0czogW1xuICAgICAgICBDb21tb25Nb2R1bGUsXG4gICAgICAgIFJvdXRlck1vZHVsZSxcbiAgICAgICAgSHR0cENsaWVudE1vZHVsZSxcbiAgICAgICAgRm9ybXNNb2R1bGUsXG4gICAgICAgIFJlYWN0aXZlRm9ybXNNb2R1bGUsXG5cbiAgICAgICAgVG9hc3RyTW9kdWxlLFxuICAgICAgICBXbUNvbXBvbmVudHNNb2R1bGUsXG4gICAgICAgIE1vYmlsZVJ1bnRpbWVNb2R1bGUsXG4gICAgICAgIENvcmVNb2R1bGUsXG4gICAgICAgIFNlY3VyaXR5TW9kdWxlLFxuICAgICAgICBPQXV0aE1vZHVsZSxcbiAgICAgICAgVmFyaWFibGVzTW9kdWxlLFxuICAgICAgICBIdHRwU2VydmljZU1vZHVsZSxcbiAgICAgICAgLi4uUkVRVUlSRURfTU9EVUxFU19GT1JfRFlOQU1JQ19DT01QT05FTlRTXG4gICAgXSxcbiAgICBleHBvcnRzOiBbXG4gICAgICAgIEZvcm1zTW9kdWxlLFxuICAgICAgICBSZWFjdGl2ZUZvcm1zTW9kdWxlLFxuXG4gICAgICAgIC4uLmRlZmluaXRpb25zLFxuXG4gICAgICAgIENvbW1vbk1vZHVsZSxcbiAgICAgICAgUm91dGVyTW9kdWxlLFxuICAgICAgICBIdHRwQ2xpZW50TW9kdWxlLFxuXG4gICAgICAgIFRvYXN0ck1vZHVsZSxcbiAgICAgICAgV21Db21wb25lbnRzTW9kdWxlLFxuICAgICAgICBNb2JpbGVSdW50aW1lTW9kdWxlLFxuICAgICAgICBDb3JlTW9kdWxlLFxuICAgICAgICBTZWN1cml0eU1vZHVsZSxcbiAgICAgICAgT0F1dGhNb2R1bGUsXG4gICAgICAgIFZhcmlhYmxlc01vZHVsZSxcbiAgICAgICAgSHR0cFNlcnZpY2VNb2R1bGUsXG4gICAgICAgIC4uLlJFUVVJUkVEX01PRFVMRVNfRk9SX0RZTkFNSUNfQ09NUE9ORU5UU1xuICAgIF0sXG4gICAgcHJvdmlkZXJzOiBbXG4gICAgICAgIHtwcm92aWRlOiDJtVNoYXJlZFN0eWxlc0hvc3QsIHVzZUNsYXNzOiBXTURvbVNoYXJlZFN0eWxlc0hvc3R9LFxuICAgICAgICB7cHJvdmlkZTogybVEb21SZW5kZXJlckZhY3RvcnkyLCB1c2VDbGFzczogV01Eb21SZW5kZXJlckZhY3RvcnkyfVxuICAgIF1cbn0pXG5leHBvcnQgY2xhc3MgUnVudGltZUJhc2VNb2R1bGUge1xuXG4gICAgLy8gdGhpcyBwb2x5ZmlsbCBpcyB0byBhZGQgc3VwcG9ydCBmb3IgQ3VzdG9tRXZlbnQgaW4gSUUxMVxuICAgIHN0YXRpYyBhZGRDdXN0b21FdmVudFBvbHlmaWxsKCkge1xuICAgICAgICAgICAgaWYgKCB0eXBlb2Ygd2luZG93WydDdXN0b21FdmVudCddID09PSAnZnVuY3Rpb24nICkge1xuICAgICAgICAgICAgICAgIHJldHVybiBmYWxzZTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIC8vIEFkZGluZyB0eXBlIGFzIGFueSB0byBhdm9pZCBlcnJvciBUUzIzMjJcbiAgICAgICAgICAgIGNvbnN0IEN1c3RvbUV2ZW50OiBhbnkgPSAoZXZlbnQsIHBhcmFtcykgPT4ge1xuICAgICAgICAgICAgICAgIHBhcmFtcyA9IHBhcmFtcyB8fCB7IGJ1YmJsZXM6IGZhbHNlLCBjYW5jZWxhYmxlOiBmYWxzZSwgZGV0YWlsOiBudWxsIH07XG4gICAgICAgICAgICAgICAgY29uc3QgZXZ0ID0gZG9jdW1lbnQuY3JlYXRlRXZlbnQoICdDdXN0b21FdmVudCcgKTtcbiAgICAgICAgICAgICAgICBldnQuaW5pdEN1c3RvbUV2ZW50KCBldmVudCwgcGFyYW1zLmJ1YmJsZXMsIHBhcmFtcy5jYW5jZWxhYmxlLCBwYXJhbXMuZGV0YWlsICk7XG4gICAgICAgICAgICAgICAgcmV0dXJuIGV2dDtcbiAgICAgICAgICAgIH07XG5cbiAgICAgICAgICAgIEN1c3RvbUV2ZW50LnByb3RvdHlwZSA9IHdpbmRvd1snRXZlbnQnXS5wcm90b3R5cGU7XG4gICAgICAgICAgICAvLyAjIyMgQU5HVUxBUjlUT0RPICMjI1xuICAgICAgICAgICAgd2luZG93WydDdXN0b21FdmVudCddID0gQ3VzdG9tRXZlbnQ7XG4gICAgfVxuXG4gICAgc3RhdGljIGZvclJvb3QoKTogTW9kdWxlV2l0aFByb3ZpZGVyczxSdW50aW1lQmFzZU1vZHVsZT4ge1xuICAgICAgICByZXR1cm4ge1xuICAgICAgICAgICAgbmdNb2R1bGU6IFJ1bnRpbWVCYXNlTW9kdWxlLFxuICAgICAgICAgICAgcHJvdmlkZXJzOiBbXG4gICAgICAgICAgICAgICAge3Byb3ZpZGU6IEFwcCwgdXNlQ2xhc3M6IEFwcFJlZn0sXG4gICAgICAgICAgICAgICAge3Byb3ZpZGU6IEFic3RyYWN0VG9hc3RlclNlcnZpY2UsIHVzZUNsYXNzOiBUb2FzdGVyU2VydmljZUltcGx9LFxuICAgICAgICAgICAgICAgIHtwcm92aWRlOiBBYnN0cmFjdEkxOG5TZXJ2aWNlLCB1c2VDbGFzczogSTE4blNlcnZpY2VJbXBsfSxcbiAgICAgICAgICAgICAgICB7cHJvdmlkZTogQWJzdHJhY3RTcGlubmVyU2VydmljZSwgdXNlQ2xhc3M6IFNwaW5uZXJTZXJ2aWNlSW1wbH0sXG4gICAgICAgICAgICAgICAge3Byb3ZpZGU6IEFic3RyYWN0TmF2aWdhdGlvblNlcnZpY2UsIHVzZUNsYXNzOiBOYXZpZ2F0aW9uU2VydmljZUltcGx9LFxuICAgICAgICAgICAgICAgIHtwcm92aWRlOiBBcHBEZWZhdWx0cywgdXNlQ2xhc3M6IEFwcERlZmF1bHRzU2VydmljZX0sXG4gICAgICAgICAgICAgICAge3Byb3ZpZGU6IER5bmFtaWNDb21wb25lbnRSZWZQcm92aWRlciwgdXNlQ2xhc3M6IER5bmFtaWNDb21wb25lbnRSZWZQcm92aWRlclNlcnZpY2V9LFxuICAgICAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgICAgICAgcHJvdmlkZTogQVBQX0lOSVRJQUxJWkVSLFxuICAgICAgICAgICAgICAgICAgICB1c2VGYWN0b3J5OiBJbml0aWFsaXplQXBwLFxuICAgICAgICAgICAgICAgICAgICBkZXBzOiBbQWJzdHJhY3RJMThuU2VydmljZSwgQXBwSlNSZXNvbHZlXSxcbiAgICAgICAgICAgICAgICAgICAgbXVsdGk6IHRydWVcbiAgICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgICAgICAgcHJvdmlkZTogTE9DQUxFX0lELFxuICAgICAgICAgICAgICAgICAgICB1c2VGYWN0b3J5OiBzZXRBbmd1bGFyTG9jYWxlLFxuICAgICAgICAgICAgICAgICAgICBkZXBzOiBbQWJzdHJhY3RJMThuU2VydmljZV1cbiAgICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgICAgICAgcHJvdmlkZTogSFRUUF9JTlRFUkNFUFRPUlMsXG4gICAgICAgICAgICAgICAgICAgIHVzZUNsYXNzOiBIdHRwQ2FsbEludGVyY2VwdG9yLFxuICAgICAgICAgICAgICAgICAgICBtdWx0aTogdHJ1ZVxuICAgICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICAgICAgUGlwZVNlcnZpY2UsXG4gICAgICAgICAgICAgICAgRGVjaW1hbFBpcGUsXG4gICAgICAgICAgICAgICAgRGF0ZVBpcGUsXG4gICAgICAgICAgICAgICAgQXBwTWFuYWdlclNlcnZpY2UsXG4gICAgICAgICAgICAgICAgUHJlZmFiTWFuYWdlclNlcnZpY2UsXG4gICAgICAgICAgICAgICAgQXV0aEd1YXJkLFxuICAgICAgICAgICAgICAgIFJvbGVHdWFyZCxcbiAgICAgICAgICAgICAgICBQYWdlTm90Rm91bmRHdWFyZCxcbiAgICAgICAgICAgICAgICBDYW5EZWFjdGl2YXRlUGFnZUd1YXJkLFxuICAgICAgICAgICAgICAgIEFwcEpTUmVzb2x2ZSxcbiAgICAgICAgICAgICAgICBBcHBFeHRlbnNpb25KU1Jlc29sdmUsXG4gICAgICAgICAgICAgICAgSTE4blJlc29sdmUsXG4gICAgICAgICAgICAgICAgZ2V0U2V0dGluZ1Byb3ZpZGVyKE1BWF9DQUNIRV9TSVpFLCAxMCksXG4gICAgICAgICAgICAgICAgZ2V0U2V0dGluZ1Byb3ZpZGVyKE1BWF9DQUNIRV9BR0UsIDMwICogNjApXG4gICAgICAgICAgICBdXG4gICAgICAgIH07XG4gICAgfVxuXG4gICAgY29uc3RydWN0b3IobW9iaWxlUnVudGltZU1vZHVsZTogTW9iaWxlUnVudGltZU1vZHVsZSxcbiAgICAgICAgICAgICAgICBhcHA6IEFwcCxcbiAgICAgICAgICAgICAgICB2aWV3cG9ydDogVmlld3BvcnQpIHtcbiAgICAgICAgUnVudGltZUJhc2VNb2R1bGUuYWRkQ3VzdG9tRXZlbnRQb2x5ZmlsbCgpO1xuXG4gICAgICAgIHRoaXMuZ2V0RGV2aWNlRGV0YWlscygpLnRoZW4oZGV0YWlscyA9PiB7XG4gICAgICAgICAgICBhcHAuc2VsZWN0ZWRWaWV3UG9ydCA9IHtcbiAgICAgICAgICAgICAgICBvczogZGV0YWlscy5vcyxcbiAgICAgICAgICAgICAgICBjYXRlZ29yeTogZGV0YWlscy5zZWxlY3RlZERldmljZUNhdGVnb3J5XG4gICAgICAgICAgICB9O1xuICAgICAgICAgICAgdmlld3BvcnQudXBkYXRlKGRldGFpbHMpO1xuICAgICAgICAgICAgYXBwLm5vdGlmeSgnb24tdmlld3BvcnQtZGV0YWlscycsIGRldGFpbHMub3MpO1xuICAgICAgICB9KTtcbiAgICB9XG5cblxuICAgIHByaXZhdGUgZ2V0RGV2aWNlRGV0YWlscygpOiBQcm9taXNlPGFueT4ge1xuICAgICAgICByZXR1cm4gbmV3IFByb21pc2U8YW55PihmdW5jdGlvbiAocmVzb2x2ZSwgcmVqZWN0KSB7XG4gICAgICAgICAgICBjb25zdCBtc2dDb250ZW50ID0ge2tleTogJ29uLWxvYWQnfTtcbiAgICAgICAgICAgIC8vIE5vdGlmeSBwcmV2aWV3IHdpbmRvdyB0aGF0IGFwcGxpY2F0aW9uIGlzIHJlYWR5LiBPdGhlcndpc2UsIGlkZW50aWZ5IHRoZSBPUy5cbiAgICAgICAgICAgIGlmICh3aW5kb3cudG9wICE9PSB3aW5kb3cpIHtcbiAgICAgICAgICAgICAgICB3aW5kb3cudG9wLnBvc3RNZXNzYWdlKG1zZ0NvbnRlbnQsICcqJyk7XG4gICAgICAgICAgICAgICAgLy8gVGhpcyBpcyBmb3IgcHJldmlldyBwYWdlXG4gICAgICAgICAgICAgICAgd2luZG93Lm9ubWVzc2FnZSA9IGZ1bmN0aW9uIChtc2cpIHtcbiAgICAgICAgICAgICAgICAgICAgY29uc3QgZGF0YSA9IG1zZy5kYXRhO1xuICAgICAgICAgICAgICAgICAgICBpZiAoaXNPYmplY3QoZGF0YSkgJiYgZGF0YS5rZXkgPT09ICdzd2l0Y2gtZGV2aWNlJykge1xuICAgICAgICAgICAgICAgICAgICAgICAgcmVzb2x2ZShkYXRhLmRldmljZSk7XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9O1xuICAgICAgICAgICAgfSBlbHNlIGlmIChpc0lwaG9uZSgpIHx8IGlzSXBvZCgpIHx8IGlzSXBhZCgpKSB7XG4gICAgICAgICAgICAgICAgcmVzb2x2ZSh7J29zJzogT1MuSU9TfSk7XG4gICAgICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgICAgIHJlc29sdmUoeydvcyc6IE9TLkFORFJPSUR9KTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfSk7XG4gICAgfVxufVxuXG5leHBvcnQgY29uc3QgV01fTU9EVUxFU19GT1JfUk9PVCA9IFtcbiAgICBXbUNvbXBvbmVudHNNb2R1bGUuZm9yUm9vdCgpLFxuICAgIE1vYmlsZVJ1bnRpbWVNb2R1bGUuZm9yUm9vdCgpLFxuICAgIENvcmVNb2R1bGUuZm9yUm9vdCgpLFxuICAgIFNlY3VyaXR5TW9kdWxlLmZvclJvb3QoKSxcbiAgICBPQXV0aE1vZHVsZS5mb3JSb290KCksXG4gICAgVmFyaWFibGVzTW9kdWxlLmZvclJvb3QoKSxcbiAgICBIdHRwU2VydmljZU1vZHVsZS5mb3JSb290KCksXG4gICAgUnVudGltZUJhc2VNb2R1bGUuZm9yUm9vdCgpXG5dO1xuIl19
@@ -16,7 +16,7 @@ export class AppDefaultsService {
16
16
  static { this.ɵfac = function AppDefaultsService_Factory(t) { return new (t || AppDefaultsService)(); }; }
17
17
  static { this.ɵprov = /*@__PURE__*/ i0.ɵɵdefineInjectable({ token: AppDefaultsService, factory: AppDefaultsService.ɵfac }); }
18
18
  }
19
- (() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassMetadata(AppDefaultsService, [{
19
+ (function () { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassMetadata(AppDefaultsService, [{
20
20
  type: Injectable
21
- }], () => [], null); })();
22
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYXBwLWRlZmF1bHRzLnNlcnZpY2UuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9ydW50aW1lLWJhc2Uvc3JjL3NlcnZpY2VzL2FwcC1kZWZhdWx0cy5zZXJ2aWNlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSxlQUFlLENBQUM7O0FBTzNDLE1BQU0sT0FBTyxrQkFBa0I7SUFFM0I7SUFDQSxDQUFDO0lBT0QsVUFBVSxDQUFDLE9BQVk7UUFDbkIsTUFBTSxVQUFVLEdBQUcsT0FBTyxDQUFDLElBQUksQ0FBQztRQUNoQyxNQUFNLFVBQVUsR0FBRyxPQUFPLENBQUMsSUFBSSxDQUFDO1FBQ2hDLE1BQU0sY0FBYyxHQUFHLENBQUMsVUFBVSxJQUFJLFVBQVUsQ0FBQyxDQUFDLENBQUMsQ0FBQyxVQUFVLEdBQUcsR0FBRyxHQUFHLFVBQVUsQ0FBQyxDQUFDLENBQUMsU0FBUyxDQUFDO1FBQzlGLE1BQU0sUUFBUSxHQUFHLE9BQU8sQ0FBQyxRQUFRLENBQUM7UUFFbEMsSUFBSSxDQUFDLFVBQVUsR0FBRyxVQUFVLENBQUM7UUFDN0IsSUFBSSxDQUFDLFVBQVUsR0FBRyxVQUFVLENBQUM7UUFDN0IsSUFBSSxDQUFDLGNBQWMsR0FBRyxjQUFjLENBQUM7UUFDckMsSUFBSSxDQUFDLFlBQVksR0FBRyxRQUFRLENBQUM7SUFDakMsQ0FBQzttRkFwQlEsa0JBQWtCO3VFQUFsQixrQkFBa0IsV0FBbEIsa0JBQWtCOztpRkFBbEIsa0JBQWtCO2NBRDlCLFVBQVUiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBJbmplY3RhYmxlIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5cbmltcG9ydCB7IEFwcERlZmF1bHRzIH0gZnJvbSAnQHdtL2NvcmUnO1xuXG5kZWNsYXJlIGNvbnN0IF87XG5cbkBJbmplY3RhYmxlKClcbmV4cG9ydCBjbGFzcyBBcHBEZWZhdWx0c1NlcnZpY2UgaW1wbGVtZW50cyBBcHBEZWZhdWx0cyB7XG5cbiAgICBjb25zdHJ1Y3RvcigpIHtcbiAgICB9XG5cbiAgICBkYXRlRm9ybWF0OiBzdHJpbmc7XG4gICAgdGltZUZvcm1hdDogc3RyaW5nO1xuICAgIGRhdGVUaW1lRm9ybWF0OiBzdHJpbmc7XG4gICAgY3VycmVuY3lDb2RlOiBzdHJpbmc7XG5cbiAgICBzZXRGb3JtYXRzKGZvcm1hdHM6IGFueSkge1xuICAgICAgICBjb25zdCBkYXRlRm9ybWF0ID0gZm9ybWF0cy5kYXRlO1xuICAgICAgICBjb25zdCB0aW1lRm9ybWF0ID0gZm9ybWF0cy50aW1lO1xuICAgICAgICBjb25zdCBkYXRlVGltZUZvcm1hdCA9IChkYXRlRm9ybWF0ICYmIHRpbWVGb3JtYXQpID8gZGF0ZUZvcm1hdCArICcgJyArIHRpbWVGb3JtYXQgOiB1bmRlZmluZWQ7XG4gICAgICAgIGNvbnN0IGN1cnJlbmN5ID0gZm9ybWF0cy5jdXJyZW5jeTtcblxuICAgICAgICB0aGlzLmRhdGVGb3JtYXQgPSBkYXRlRm9ybWF0O1xuICAgICAgICB0aGlzLnRpbWVGb3JtYXQgPSB0aW1lRm9ybWF0O1xuICAgICAgICB0aGlzLmRhdGVUaW1lRm9ybWF0ID0gZGF0ZVRpbWVGb3JtYXQ7XG4gICAgICAgIHRoaXMuY3VycmVuY3lDb2RlID0gY3VycmVuY3k7XG4gICAgfVxufVxuIl19
21
+ }], function () { return []; }, null); })();
22
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYXBwLWRlZmF1bHRzLnNlcnZpY2UuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9ydW50aW1lLWJhc2Uvc3JjL3NlcnZpY2VzL2FwcC1kZWZhdWx0cy5zZXJ2aWNlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSxlQUFlLENBQUM7O0FBTzNDLE1BQU0sT0FBTyxrQkFBa0I7SUFFM0I7SUFDQSxDQUFDO0lBT0QsVUFBVSxDQUFDLE9BQVk7UUFDbkIsTUFBTSxVQUFVLEdBQUcsT0FBTyxDQUFDLElBQUksQ0FBQztRQUNoQyxNQUFNLFVBQVUsR0FBRyxPQUFPLENBQUMsSUFBSSxDQUFDO1FBQ2hDLE1BQU0sY0FBYyxHQUFHLENBQUMsVUFBVSxJQUFJLFVBQVUsQ0FBQyxDQUFDLENBQUMsQ0FBQyxVQUFVLEdBQUcsR0FBRyxHQUFHLFVBQVUsQ0FBQyxDQUFDLENBQUMsU0FBUyxDQUFDO1FBQzlGLE1BQU0sUUFBUSxHQUFHLE9BQU8sQ0FBQyxRQUFRLENBQUM7UUFFbEMsSUFBSSxDQUFDLFVBQVUsR0FBRyxVQUFVLENBQUM7UUFDN0IsSUFBSSxDQUFDLFVBQVUsR0FBRyxVQUFVLENBQUM7UUFDN0IsSUFBSSxDQUFDLGNBQWMsR0FBRyxjQUFjLENBQUM7UUFDckMsSUFBSSxDQUFDLFlBQVksR0FBRyxRQUFRLENBQUM7SUFDakMsQ0FBQzttRkFwQlEsa0JBQWtCO3VFQUFsQixrQkFBa0IsV0FBbEIsa0JBQWtCOzt1RkFBbEIsa0JBQWtCO2NBRDlCLFVBQVUiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBJbmplY3RhYmxlIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5cbmltcG9ydCB7IEFwcERlZmF1bHRzIH0gZnJvbSAnQHdtL2NvcmUnO1xuXG5kZWNsYXJlIGNvbnN0IF87XG5cbkBJbmplY3RhYmxlKClcbmV4cG9ydCBjbGFzcyBBcHBEZWZhdWx0c1NlcnZpY2UgaW1wbGVtZW50cyBBcHBEZWZhdWx0cyB7XG5cbiAgICBjb25zdHJ1Y3RvcigpIHtcbiAgICB9XG5cbiAgICBkYXRlRm9ybWF0OiBzdHJpbmc7XG4gICAgdGltZUZvcm1hdDogc3RyaW5nO1xuICAgIGRhdGVUaW1lRm9ybWF0OiBzdHJpbmc7XG4gICAgY3VycmVuY3lDb2RlOiBzdHJpbmc7XG5cbiAgICBzZXRGb3JtYXRzKGZvcm1hdHM6IGFueSkge1xuICAgICAgICBjb25zdCBkYXRlRm9ybWF0ID0gZm9ybWF0cy5kYXRlO1xuICAgICAgICBjb25zdCB0aW1lRm9ybWF0ID0gZm9ybWF0cy50aW1lO1xuICAgICAgICBjb25zdCBkYXRlVGltZUZvcm1hdCA9IChkYXRlRm9ybWF0ICYmIHRpbWVGb3JtYXQpID8gZGF0ZUZvcm1hdCArICcgJyArIHRpbWVGb3JtYXQgOiB1bmRlZmluZWQ7XG4gICAgICAgIGNvbnN0IGN1cnJlbmN5ID0gZm9ybWF0cy5jdXJyZW5jeTtcblxuICAgICAgICB0aGlzLmRhdGVGb3JtYXQgPSBkYXRlRm9ybWF0O1xuICAgICAgICB0aGlzLnRpbWVGb3JtYXQgPSB0aW1lRm9ybWF0O1xuICAgICAgICB0aGlzLmRhdGVUaW1lRm9ybWF0ID0gZGF0ZVRpbWVGb3JtYXQ7XG4gICAgICAgIHRoaXMuY3VycmVuY3lDb2RlID0gY3VycmVuY3k7XG4gICAgfVxufVxuIl19
@@ -478,7 +478,7 @@ export class AppManagerService {
478
478
  static { this.ɵfac = function AppManagerService_Factory(t) { return new (t || AppManagerService)(i0.ɵɵinject(i1.AbstractHttpService), i0.ɵɵinject(i2.SecurityService), i0.ɵɵinject(i1.AbstractDialogService), i0.ɵɵinject(i3.Router), i0.ɵɵinject(i1.App), i0.ɵɵinject(i4.VariablesService), i0.ɵɵinject(i4.MetadataService), i0.ɵɵinject(i1.AbstractSpinnerService), i0.ɵɵinject(i1.AbstractI18nService), i0.ɵɵinject(i5.DatePipe)); }; }
479
479
  static { this.ɵprov = /*@__PURE__*/ i0.ɵɵdefineInjectable({ token: AppManagerService, factory: AppManagerService.ɵfac }); }
480
480
  }
481
- (() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassMetadata(AppManagerService, [{
481
+ (function () { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassMetadata(AppManagerService, [{
482
482
  type: Injectable
483
- }], () => [{ type: i1.AbstractHttpService }, { type: i2.SecurityService }, { type: i1.AbstractDialogService }, { type: i3.Router }, { type: i1.App }, { type: i4.VariablesService }, { type: i4.MetadataService }, { type: i1.AbstractSpinnerService }, { type: i1.AbstractI18nService }, { type: i5.DatePipe }], null); })();
484
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYXBwLm1hbmFnZXIuc2VydmljZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3J1bnRpbWUtYmFzZS9zcmMvc2VydmljZXMvYXBwLm1hbmFnZXIuc2VydmljZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQzNDLE9BQU8sRUFBRSxNQUFNLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUN6QyxPQUFPLEVBQUUsUUFBUSxFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFFM0MsT0FBTyxFQUNILHFCQUFxQixFQUNyQixtQkFBbUIsRUFDbkIsbUJBQW1CLEVBQ25CLHNCQUFzQixFQUN0QixHQUFHLEVBQ0gsWUFBWSxFQUNaLFNBQVMsRUFDVCxTQUFTLEVBQ1QsVUFBVSxFQUNiLE1BQU0sVUFBVSxDQUFDO0FBQ2xCLE9BQU8sRUFBRSxlQUFlLEVBQUUsTUFBTSxjQUFjLENBQUM7QUFDL0MsT0FBTyxFQUFFLFNBQVMsRUFBRSxVQUFVLEVBQUUsYUFBYSxFQUFHLGVBQWUsRUFBRSxnQkFBZ0IsRUFBRSxNQUFNLGVBQWUsQ0FBQzs7Ozs7OztBQUd6RyxJQUFLLGFBT0o7QUFQRCxXQUFLLGFBQWE7SUFDZCxzRUFBcUQsQ0FBQTtJQUNyRCxzRUFBcUQsQ0FBQTtJQUNyRCx5REFBaUQsQ0FBQTtJQUNqRCxvREFBNEMsQ0FBQTtJQUM1QyxpRUFBbUQsQ0FBQTtJQUNuRCxvQ0FBb0MsQ0FBQTtBQUN4QyxDQUFDLEVBUEksYUFBYSxLQUFiLGFBQWEsUUFPakI7QUFHRCxNQUFNLE9BQU8saUJBQWlCO2FBQ1YsaUJBQVksR0FBRyxtQkFBbUIsQUFBdEIsQ0FBdUI7SUFRbkQsWUFDWSxLQUEwQixFQUMxQixTQUEwQixFQUMxQixPQUE4QixFQUM5QixPQUFlLEVBQ2YsSUFBUyxFQUNULFVBQTRCLEVBQzVCLFNBQTBCLEVBQzFCLFFBQWdDLEVBQ2hDLEtBQTBC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QUM3QixNQUFNO2dCQUNWLEtBQUssYUFBYSxDQUFDLGVBQWU7b0JBQzlCLElBQUksQ0FBQyxZQUFZLENBQUMsT0FBTyxDQUFDLGFBQWEsQ0FBQyxDQUFDO29CQUN6QyxNQUFNO1lBQ2QsQ0FBQztRQUNMLENBQUMsQ0FBQztRQUVGLFVBQVUsQ0FBQyxHQUFHLEVBQUU7WUFDWixJQUFJLENBQUMsV0FBVyxDQUFDLEVBQUMsR0FBRyxFQUFFLGFBQWEsQ0FBQyxPQUFPLEVBQUMsQ0FBQyxDQUFDO1FBQ25ELENBQUMsQ0FBQyxDQUFDO1FBRUgsT0FBTyxZQUFZLENBQUMsTUFBTSxFQUFFLGVBQWUsRUFBRSxJQUFJLEVBQUUsUUFBUSxDQUFDLEVBQUU7WUFDMUQsSUFBSSxDQUFDLFNBQVMsR0FBRyxFQUFFLENBQUM7WUFDcEIsSUFBSSxDQUFDLFFBQVEsQ0FBQyxLQUFLLEVBQUUsQ0FBQztnQkFDbEIsSUFBSSxDQUFDLFNBQVMsR0FBRyxRQUFRLENBQUMsU0FBUyxDQUFDO2dCQUNwQyxJQUFJLENBQUMsV0FBVyxDQUFDLEVBQUMsS0FBSyxFQUFFLGFBQWEsQ0FBQyxxQkFBcUIsRUFBRSxRQUFRLEVBQUUsUUFBUSxFQUFDLENBQUMsQ0FBQztZQUN2RixDQUFDO1FBQ0wsQ0FBQyxDQUFDLENBQUM7SUFDUCxDQUFDO0lBRUQsZUFBZTtRQUNYLElBQUksSUFBSSxDQUFDLG9CQUFvQixFQUFFLEVBQUUsQ0FBQztZQUM5QixPQUFPLElBQUksQ0FBQyxzQkFBc0IsRUFBRSxDQUFDO1FBQ3pDLENBQUM7SUFDTCxDQUFDO2tGQW5nQlEsaUJBQWlCO3VFQUFqQixpQkFBaUIsV0FBakIsaUJBQWlCOztpRkFBakIsaUJBQWlCO2NBRDdCLFVBQVUiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBJbmplY3RhYmxlIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBSb3V0ZXIgfSBmcm9tICdAYW5ndWxhci9yb3V0ZXInO1xuaW1wb3J0IHsgRGF0ZVBpcGUgfSBmcm9tICdAYW5ndWxhci9jb21tb24nO1xuXG5pbXBvcnQge1xuICAgIEFic3RyYWN0RGlhbG9nU2VydmljZSxcbiAgICBBYnN0cmFjdEh0dHBTZXJ2aWNlLFxuICAgIEFic3RyYWN0STE4blNlcnZpY2UsXG4gICAgQWJzdHJhY3RTcGlubmVyU2VydmljZSxcbiAgICBBcHAsXG4gICAgZmV0Y2hDb250ZW50LFxuICAgIGlzRGVmaW5lZCxcbiAgICB0cmlnZ2VyRm4sXG4gICAgJGFwcERpZ2VzdFxufSBmcm9tICdAd20vY29yZSc7XG5pbXBvcnQgeyBTZWN1cml0eVNlcnZpY2UgfSBmcm9tICdAd20vc2VjdXJpdHknO1xuaW1wb3J0IHsgQ09OU1RBTlRTLCAkcm9vdFNjb3BlLCByb3V0ZXJTZXJ2aWNlLCAgTWV0YWRhdGFTZXJ2aWNlLCBWYXJpYWJsZXNTZXJ2aWNlIH0gZnJvbSAnQHdtL3ZhcmlhYmxlcyc7XG5kZWNsYXJlIGNvbnN0IF87XG5cbmVudW0gUE9TVF9NRVNTQUdFUyB7XG4gICAgSElERV9URU1QTEFURVNfU0hPV19DQVNFID0gJ2hpZGUtdGVtcGxhdGVzLXNob3ctY2FzZScsXG4gICAgU0hPV19URU1QTEFURVNfU0hPV19DQVNFID0gJ3Nob3ctdGVtcGxhdGVzLXNob3ctY2FzZScsXG4gICAgVVBEQVRFX0xPQ0FUSU9OICAgICAgICAgID0gJ3VwZGF0ZS1sb2NhdGlvbi1wYXRoJyxcbiAgICBTRUxFQ1RfVEVNUExBVEUgICAgICAgICAgPSAnc2VsZWN0LXRlbXBsYXRlJyxcbiAgICBURU1QTEFURUJVTkRMRV9DT05GSUcgICAgPSAndGVtcGxhdGUtYnVuZGxlLWNvbmZpZycsXG4gICAgT05fTE9BRCAgICAgICAgICAgICAgICAgID0gJ29uLWxvYWQnXG59XG5cbkBJbmplY3RhYmxlKClcbmV4cG9ydCBjbGFzcyBBcHBNYW5hZ2VyU2VydmljZSB7XG4gICAgc3RhdGljIHJlYWRvbmx5IFNFUlZJQ0VfTkFNRSA9ICdBcHBNYW5hZ2VyU2VydmljZSc7XG5cbiAgICBwcml2YXRlIGFwcFZhcmlhYmxlc0xvYWRlZCA9IGZhbHNlO1xuICAgIHByaXZhdGUgYXBwVmFyaWFibGVzRmlyZWQgPSBmYWxzZTtcbiAgICBwcml2YXRlIF9ub1JlZGlyZWN0ID0gZmFsc2U7XG4gICAgcHJpdmF0ZSB0ZW1wbGF0ZXM6IEFycmF5PGFueT47XG4gICAgcHJpdmF0ZSBsYXN0TG9nZ2VkVXNlcklkO1xuXG4gICAgY29uc3RydWN0b3IoXG4gICAgICAgIHByaXZhdGUgJGh0dHA6IEFic3RyYWN0SHR0cFNlcnZpY2UsXG4gICAgICAgIHByaXZhdGUgJHNlY3VyaXR5OiBTZWN1cml0eVNlcnZpY2UsXG4gICAgICAgIHByaXZhdGUgJGRpYWxvZzogQWJzdHJhY3REaWFsb2dTZXJ2aWNlLFxuICAgICAgICBwcml2YXRlICRyb3V0ZXI6IFJvdXRlcixcbiAgICAgICAgcHJpdmF0ZSAkYXBwOiBBcHAsXG4gICAgICAgIHByaXZhdGUgJHZhcmlhYmxlczogVmFyaWFibGVzU2VydmljZSxcbiAgICAgICAgcHJpdmF0ZSAkbWV0YWRhdGE6IE1ldGFkYXRhU2VydmljZSxcbiAgICAgICAgcHJpdmF0ZSAkc3Bpbm5lcjogQWJzdHJhY3RTcGlubmVyU2VydmljZSxcbiAgICAgICAgcHJpdmF0ZSAkaTE4bjogQWJzdHJhY3RJMThuU2VydmljZSxcbiAgICAgICAgcHJpdmF0ZSAkZGF0ZVBpcGU6IERhdGVQaXBlLFxuICAgICkge1xuICAgICAgICAvLyByZWdpc3RlciBtZXRob2QgdG8gaW52b2tlIG9uIHNlc3Npb24gdGltZW91dFxuICAgICAgICB0aGlzLiRodHRwLnJlZ2lzdGVyT25TZXNzaW9uVGltZW91dCh0aGlzLmhhbmRsZTQwMS5iaW5kKHRoaXMpKTtcblxuICAgICAgICB0aGlzLiR2YXJpYWJsZXMucmVnaXN0ZXJEZXBlbmRlbmN5KCdhcHBNYW5hZ2VyJywgdGhpcyk7XG5cbiAgICAgICAgdGhpcy4kYXBwLnN1YnNjcmliZSgndG9nZ2xlLXZhcmlhYmxlLXN0YXRlJywgKGRhdGEpID0+IHtcbiAgICAgICAgICAgIGNvbnN0IHZhcmlhYmxlID0gZGF0YS52YXJpYWJsZSxcbiAgICAgICAgICAgICAgICBhY3RpdmUgPSBkYXRhLmFjdGl2ZTtcbiAgICAgICAgICAgIGlmICghXy5pc0VtcHR5KF8udHJpbSh2YXJpYWJsZS5zcGlubmVyQ29udGV4dCkpKSB7XG4gICAgICAgICAgICAgICAgaWYgKGFjdGl2ZSkge1xuICAgICAgICAgICAgICAgICAgICBsZXQgc3Bpbm5lckV4aXN0cztcbiAgICAgICAgICAgICAgICAgICAgLy8gV01TLTIxMTE3IDogRG8gbm90IHRyaWdnZXIgc3Bpbm5lciwgaWYgdGhlIGN1cnJlbnQgdmFyaWFibGUgaXMgc2FtZSBhcyBzcGlubmVyIHdoaWNoIGlzIGluIGNvbnRleHRcbiAgICAgICAgICAgICAgICAgICAgaWYgKHZhcmlhYmxlLl9zcGlubmVySWQgJiYgdmFyaWFibGUuX3NwaW5uZXJJZC5sZW5ndGgpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIF8uZm9yRWFjaCh2YXJpYWJsZS5fc3Bpbm5lcklkLCAoaXRlbSkgPT4ge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGlmIChpdGVtLnNsaWNlKDAsIGl0ZW0ubGFzdEluZGV4T2YoJ18nKSkgPT09IHZhcmlhYmxlLl9pZCAmJiAodGhpcy4kc3Bpbm5lciBhcyBhbnkpLm1lc3NhZ2VzQnlDb250ZXh0ICYmICh0aGlzLiRzcGlubmVyIGFzIGFueSkubWVzc2FnZXNCeUNvbnRleHRbdmFyaWFibGUuc3Bpbm5lckNvbnRleHRdICYmXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICh2YXJpYWJsZS5zcGlubmVyTWVzc2FnZSA9PT0gKHRoaXMuJHNwaW5uZXIgYXMgYW55KS5tZXNzYWdlc0J5Q29udGV4dFt2YXJpYWJsZS5zcGlubmVyQ29udGV4dF1bXCJmaW5hbE1lc3NhZ2VcIl0gfHwgdmFyaWFibGUuc3Bpbm5lck1lc3NhZ2UgPT09ICh0aGlzLiRzcGlubmVyIGFzIGFueSkubWVzc2FnZXNCeUNvbnRleHRbdmFyaWFibGUuc3Bpbm5lckNvbnRleHRdW2l0ZW1dKSkge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBzcGlubmVyRXhpc3RzID0gdHJ1ZTtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgcmV0dXJuO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgICAgIH0pO1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgIGlmICghc3Bpbm5lckV4aXN0cykge1xuICAgICAgICAgICAgICAgICAgICAgICAgdmFyaWFibGUuX3NwaW5uZXJJZCA9IHZhcmlhYmxlLl9zcGlubmVySWQgfHwgW107XG4gICAgICAgICAgICAgICAgICAgICAgICBjb25zdCBzcGlubmVySWQgPSB0aGlzLiRzcGlubmVyLnNob3codmFyaWFibGUuc3Bpbm5lck1lc3NhZ2UsXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgdmFyaWFibGUuX2lkICsgJ18nICsgRGF0ZS5ub3coKSxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB2YXJpYWJsZS5zcGlubmVyY2xhc3MsXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgdmFyaWFibGUuc3Bpbm5lckNvbnRleHQpO1xuICAgICAgICAgICAgICAgICAgICAgICAgdmFyaWFibGUuX3NwaW5uZXJJZC5wdXNoKHNwaW5uZXJJZCk7XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgICAgICAgICB0aGlzLiRzcGlubmVyLmhpZGUodmFyaWFibGUuX3NwaW5uZXJJZC5zaGlmdCgpKTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIH0pO1xuICAgICAgICB0aGlzLiRhcHAuc3Vic2NyaWJlKCd1c2VyTG9nZ2VkSW4nLCAoKSA9PiB7XG4gICAgICAgICAgICB0aGlzLnNldExhbmRpbmdQYWdlKCk7XG4gICAgICAgICAgICBpZiAodGhpcy5sYXN0TG9nZ2VkVXNlcklkKSB7XG4gICAgICAgICAgICAgICAgdGhpcy4kc2VjdXJpdHkuZ2V0Q29uZmlnKGNvbmZpZyA9PiB7XG4gICAgICAgICAgICAgICAgICAgIGlmKGNvbmZpZyAmJiBjb25maWcudXNlckluZm8udXNlcklkICE9PSB0aGlzLmxhc3RMb2dnZWRVc2VySWQpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIHRoaXMuJGFwcC5jbGVhclBhZ2VDYWNoZSgpO1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfSwgbnVsbCk7XG4gICAgICAgICAgICB9XG4gICAgICAgIH0pO1xuICAgICAgICB0aGlzLiRhcHAuc3Vic2NyaWJlKCd1c2VyTG9nZ2VkT3V0JywgKCkgPT4gdGhpcy5zZXRMYW5kaW5nUGFnZSgpLnRoZW4oKCkgPT4ge1xuICAgICAgICAgICAgdGhpcy4kYXBwLmNsZWFyUGFnZUNhY2hlKCk7XG4gICAgICAgIH0pKTtcbiAgICAgICAgdGhpcy4kYXBwLnN1YnNjcmliZSgnaHR0cDQwMScsIChkID0ge30pID0+IHRoaXMuaGFuZGxlNDAxKGQucGFnZSwgZC5vcHRpb25zKSk7XG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogT24gc2Vzc2lvbiB0aW1lb3V0LCBpZiB0aGUgc2Vzc2lvbiB0aW1lb3V0IGNvbmZpZyBpcyBzZXQgdG8gYSBkaWFsb2csIHRoZW4gb3BlbiBsb2dpbiBkaWFsb2dcbiAgICAgKi9cbiAgICBwcml2YXRlIHNob3dMb2dpbkRpYWxvZygpIHtcbiAgICAgICAgdGhpcy4kc3Bpbm5lci5oaWRlKCdnbG9iYWxTcGlubmVyJyk7XG4gICAgICAgIC8vIFJlbW92aW5nIHRoZSBjbG9zZSBhbGwgZGlhbG9ncyBjYWxsLCBzbyB0aGUgZXhpc3RpbmcgZGlhbG9ncyByZW1haW4gb3BlbiBhbmRcbiAgICAgICAgLy8gdGhlIGxvZ2luIGRpYWxvZyBjb21lcyBvbiB0b3Agb2YgaXQuXG4gICAgICAgIHRoaXMuJGRpYWxvZy5vcGVuKCdDb21tb25Mb2dpbkRpYWxvZycpO1xuICAgICAgICAvLyBTaW5jZSB0aGUgbG9naW4gZGlhbG9nIGlzIGNsb3NlZCBhbmQgb3BlbmVkIGl0cyB1cGRhdGVkIHByb3BlcnR5IGlzbid0IHJlYWQgYnkgYW5ndWxhci5cbiAgICAgICAgLy8gSGVuY2Ugd2UgdHJpZ2dlciB0aGUgZGlnZXN0IGN5Y2xlXG4gICAgICAgICRhcHBEaWdlc3QoKTtcbiAgICB9XG5cbiAgICBsb2FkQXBwSlMoKSB7XG5cbiAgICB9XG5cbiAgICBsb2FkQ29tbW9uUGFnZSgpIHtcblxuICAgIH1cblxuICAgIGxvYWRTZWN1cml0eUNvbmZpZyhmb3JjZUZsYWc/OiBib29sZWFuKSB7XG4gICAgICAgIHJldHVybiB0aGlzLiRzZWN1cml0eS5sb2FkKGZvcmNlRmxhZykudGhlbigocikgPT4ge1xuICAgICAgICAgICAgaWYgKCF0aGlzLiRhcHAubGFuZGluZ1BhZ2VOYW1lKSB7XG4gICAgICAgICAgICAgICAgdGhpcy5zZXRMYW5kaW5nUGFnZSgpO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgcmV0dXJuIHI7XG4gICAgICAgIH0pO1xuICAgIH1cblxuICAgIGxvYWRNZXRhZGF0YSgpIHtcbiAgICAgICAgcmV0dXJuIHRoaXMuJG1ldGFkYXRhLmxvYWQoKTtcbiAgICB9XG5cbiAgICBsb2FkQXBwVmFyaWFibGVzKHZhcmlhYmxlcz86IGFueSkge1xuICAgICAgICBpZiAodGhpcy5hcHBWYXJpYWJsZXNMb2FkZWQpIHtcbiAgICAgICAgICAgIHJldHVybiBQcm9taXNlLnJlc29sdmUoKTtcbiAgICAgICAgfVxuXG4gICAgICAgIGNvbnN0IGluaXQgPSByZXNwb25zZSA9PiB7XG4gICAgICAgICAgICBjb25zdCBkYXRhID0gdGhpcy4kdmFyaWFibGVzLnJlZ2lzdGVyKCdhcHAnLCByZXNwb25zZSwgdGhpcy4kYXBwKTtcbiAgICAgICAgICAgIC8vIG5vdCBhc3NpZ25pbmcgZGlyZWN0bHkgdG8gdGhpcy4kYXBwIHRvIGtlZXAgdGhlIHJlZmVyZW5jZSBpbiB0YWN0XG4gICAgICAgICAgICBfLmV4dGVuZCh0aGlzLiRhcHAuVmFyaWFibGVzLCBkYXRhLlZhcmlhYmxlcyk7XG4gICAgICAgICAgICBfLmV4dGVuZCh0aGlzLiRhcHAuQWN0aW9ucywgZGF0YS5BY3Rpb25zKTtcbiAgICAgICAgICAgIHRoaXMudXBkYXRlTG9nZ2VkSW5Vc2VyVmFyaWFibGUoKTtcbiAgICAgICAgICAgIHRoaXMudXBkYXRlU3VwcG9ydGVkTG9jYWxlVmFyaWFibGUoKTtcbiAgICAgICAgICAgIHRoaXMuYXBwVmFyaWFibGVzTG9hZGVkID0gdHJ1ZTtcbiAgICAgICAgICAgIHRoaXMuYXBwVmFyaWFibGVzRmlyZWQgPSBmYWxzZTtcbiAgICAgICAgfTtcblxuICAgICAgICBpZiAoaXNEZWZpbmVkKHZhcmlhYmxlcykpIHtcbiAgICAgICAgICAgIGluaXQodmFyaWFibGVzKTtcbiAgICAgICAgICAgIHJldHVybiBQcm9taXNlLnJlc29sdmUoKTtcbiAgICAgICAgfVxuXG4gICAgICAgIHJldHVybiB0aGlzLiRodHRwLmdldCgnLi9hcHAudmFyaWFibGVzLmpzb24nKS50aGVuKHJlc3BvbnNlID0+IGluaXQocmVzcG9uc2UpKTtcbiAgICB9XG5cbiAgICAvKipcbiAgICAgKiBnZXR0ZXIgYW5kIHNldHRlciBmb3IgdGhlIHByb3BlcnR5IGFwcFZhcmlhYmxlc0ZpcmVkXG4gICAgICogdGhpcyBmbGFnIGRldGVybWluZXMgaWYgdGhlIGFwcCB2YXJpYWJsZXMod2l0aCBzdGFydFVwZGF0ZTp0cnVlKSBoYXZlIGJlZW4gZmlyZWRcbiAgICAgKiB0aGV5IHNob3VsZCBnZXQgZmlyZWQgb25seSBvbmNlIHRocm91Z2ggYXBwIGxpZmVjeWNsZVxuICAgICAqIEBwYXJhbSB7Ym9vbGVhbn0gaXNGaXJlZFxuICAgICAqIEByZXR1cm5zIHtib29sZWFufVxuICAgICAqL1xuICAgIGlzQXBwVmFyaWFibGVzRmlyZWQoaXNGaXJlZD86IGJvb2xlYW4pIHtcbiAgICAgICAgaWYgKGlzRGVmaW5lZChpc0ZpcmVkKSkge1xuICAgICAgICAgICAgdGhpcy5hcHBWYXJpYWJsZXNGaXJlZCA9IGlzRmlyZWQ7XG4gICAgICAgIH1cbiAgICAgICAgcmV0dXJuIHRoaXMuYXBwVmFyaWFibGVzRmlyZWQ7XG4gICAgfVxuXG4gICAgcHJpdmF0ZSBjbGVhckxvZ2dlZEluVXNlclZhcmlhYmxlKHZhcmlhYmxlKSB7XG4gICAgICAgIHZhcmlhYmxlLmlzQXV0aGVudGljYXRlZCA9IGZhbHNlO1xuICAgICAgICB2YXJpYWJsZS5yb2xlcyAgICAgICAgICAgPSBbXTtcbiAgICAgICAgdmFyaWFibGUubmFtZSAgICAgICAgICAgID0gdW5kZWZpbmVkO1xuICAgICAgICB2YXJpYWJsZS5pZCAgICAgICAgICAgICAgPSB1bmRlZmluZWQ7XG4gICAgICAgIHZhcmlhYmxlLnRlbmFudElkICAgICAgICA9IHVuZGVmaW5lZDtcbiAgICB9XG5cbiAgICBwcml2YXRlIHVwZGF0ZUxvZ2dlZEluVXNlclZhcmlhYmxlKCkge1xuICAgICAgICBjb25zdCBsb2dnZWRJblVzZXIgPSBfLmdldCh0aGlzLiRhcHAsICdWYXJpYWJsZXMubG9nZ2VkSW5Vc2VyLmRhdGFTZXQnKTtcblxuICAgICAgICAvLyBzYW5pdHkgY2hlY2tcbiAgICAgICAgaWYgKCFsb2dnZWRJblVzZXIpIHtcbiAgICAgICAgICAgIHJldHVybjtcbiAgICAgICAgfVxuICAgICAgICByZXR1cm4gdGhpcy4kc2VjdXJpdHkubG9hZCgpLnRoZW4oKCkgPT4ge1xuICAgICAgICAgICAgY29uc3Qgc2VjdXJpdHlDb25maWcgPSB0aGlzLiRzZWN1cml0eS5nZXQoKTtcbiAgICAgICAgICAgIGlmIChzZWN1cml0eUNvbmZpZyAmJiBzZWN1cml0eUNvbmZpZy5zZWN1cml0eUVuYWJsZWQgJiYgc2VjdXJpdHlDb25maWcuYXV0aGVudGljYXRlZCkge1xuICAgICAgICAgICAgICAgIGxvZ2dlZEluVXNlci5pc0F1dGhlbnRpY2F0ZWQgPSBzZWN1cml0eUNvbmZpZy5hdXRoZW50aWNhdGVkO1xuICAgICAgICAgICAgICAgIGxvZ2dlZEluVXNlci5yb2xlcyAgICAgICAgICAgPSBzZWN1cml0eUNvbmZpZy51c2VySW5mby51c2VyUm9sZXM7XG4gICAgICAgICAgICAgICAgbG9nZ2VkSW5Vc2VyLm5hbWUgICAgICAgICAgICA9IHNlY3VyaXR5Q29uZmlnLnVzZXJJbmZvLnVzZXJOYW1lO1xuICAgICAgICAgICAgICAgIGxvZ2dlZEluVXNlci5pZCAgICAgICAgICAgICAgPSBzZWN1cml0eUNvbmZpZy51c2VySW5mby51c2VySWQ7XG4gICAgICAgICAgICAgICAgbG9nZ2VkSW5Vc2VyLnRlbmFudElkICAgICAgICA9IHNlY3VyaXR5Q29uZmlnLnVzZXJJbmZvLnRlbmFudElkO1xuICAgICAgICAgICAgICAgIGxvZ2dlZEluVXNlci51c2VyQXR0cmlidXRlcyAgPSBzZWN1cml0eUNvbmZpZy51c2VySW5mby51c2VyQXR0cmlidXRlczsgLy8gYXNzaWduIHRoZSBleHRyYSB1c2VyQXR0cmlidXRlcyBmb3IgY3VzdG9tIHVzYWdlLlxuICAgICAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgICAgICB0aGlzLmNsZWFyTG9nZ2VkSW5Vc2VyVmFyaWFibGUobG9nZ2VkSW5Vc2VyKTtcbiAgICAgICAgICAgICAgICBsb2dnZWRJblVzZXIuaXNTZWN1cml0eUVuYWJsZWQgPSBzZWN1cml0eUNvbmZpZyAmJiBzZWN1cml0eUNvbmZpZy5zZWN1cml0eUVuYWJsZWQ7XG4gICAgICAgICAgICAgICAgdGhyb3cgbnVsbDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIHJldHVybiBzZWN1cml0eUNvbmZpZztcbiAgICAgICAgfSkuY2F0Y2goZXJyID0+IHtcbiAgICAgICAgICAgIGxvZ2dlZEluVXNlci5pc0F1dGhlbnRpY2F0ZWQgPSBmYWxzZTtcbiAgICAgICAgICAgIGxvZ2dlZEluVXNlci5yb2xlcyAgICAgICAgICAgPSBbXTtcbiAgICAgICAgICAgIGxvZ2dlZEluVXNlci5uYW1lICAgICAgICAgICAgPSB1bmRlZmluZWQ7XG4gICAgICAgICAgICBsb2dnZWRJblVzZXIuaWQgICAgICAgICAgICAgID0gdW5kZWZpbmVkO1xuICAgICAgICAgICAgbG9nZ2VkSW5Vc2VyLnRlbmFudElkICAgICAgICA9IHVuZGVmaW5lZDtcbiAgICAgICAgICAgIGxvZ2dlZEluVXNlci51c2VyQXR0cmlidXRlcyAgPSB7fTtcbiAgICAgICAgfSk7XG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogT3ZlcnJpZGluZyB0aGUgYXBwIHZhcmlhYmxlIHN1cHBvcnRlZCBsb2NhbGUgd2l0aCB0aGUgd21Qcm9wZXJ0aWVzIGkxOG4gRGF0YVZhbHVlc1xuICAgICAqXG4gICAgICogVE9ET1tWaWJodV06XG4gICAgICogQ2FuIHdyaXRlIGEgc2ltcGxlIG1pZ3JhdGlvbiB0byBzeW5jIHRoZSBzdXBwb3J0ZWRMb2NhbGUgdmFyaWFibGUgd2l0aCAnX1dNX0FQUF9QUk9QRVJUSUVTLnN1cHBvcnRlZExhbmd1YWdlcydcbiAgICAgKiBIZW5jZSwgdGhpcyBtYXkgbm90IGJlIHJlcXVpcmVkXG4gICAgICpcbiAgICAgKi9cbiAgICB1cGRhdGVTdXBwb3J0ZWRMb2NhbGVWYXJpYWJsZSgpIHtcbiAgICAgICAgY29uc3Qgc3VwcG9ydGVkTG9jYWxlVmFyID0gXy5nZXQodGhpcy4kYXBwLCAnVmFyaWFibGVzLnN1cHBvcnRlZExvY2FsZScpO1xuICAgIH1cblxuICAgIGhhbmRsZVNTT0xvZ2luKGNvbmZpZykge1xuICAgICAgICBjb25zdCBTU09fVVJMID0gJ3NlcnZpY2VzL3NlY3VyaXR5L3Nzb2xvZ2luJyxcbiAgICAgICAgICAgIFBSRVZJRVdfV0lORE9XX05BTUUgPSAnV01fUFJFVklFV19XSU5ET1cnO1xuICAgICAgICBsZXQgcGFnZSxcbiAgICAgICAgICAgIHBhZ2VQYXJhbXM7XG5cbiAgICAgICAgLy8gZG8gbm90IHByb3ZpZGUgcmVkaXJlY3RUbyBwYWdlIGlmIGZldGNoaW5nIEhPTUUgcGFnZSByZXN1bHRlZCA0MDFcbiAgICAgICAgLy8gb24gYXBwIGxvYWQsIGJ5IGRlZmF1bHQgSG9tZSBwYWdlIGlzIGxvYWRlZFxuICAgICAgICBwYWdlID0gdGhpcy4kc2VjdXJpdHkuZ2V0UmVkaXJlY3RQYWdlKGNvbmZpZyk7XG5cbiAgICAgICAgaWYgKENPTlNUQU5UUy5oYXNDb3Jkb3ZhKSB7XG4gICAgICAgICAgICAvLyBnZXQgcHJldmlvdXNseSBsb2dnZWRJblVzZXIgbmFtZSAoaWYgYW55KVxuICAgICAgICAgICAgY29uc3QgbGFzdExvZ2dlZEluVXNlcm5hbWUgPSBfLmdldCh0aGlzLiRzZWN1cml0eS5nZXQoKSwgJ3VzZXJJbmZvLnVzZXJOYW1lJyk7XG4gICAgICAgICAgICB0aGlzLiRzZWN1cml0eS5hdXRoSW5Ccm93c2VyKClcbiAgICAgICAgICAgICAgICAudGhlbigoKSA9PiB0aGlzLnJlbG9hZEFwcERhdGEoKSlcbiAgICAgICAgICAgICAgICAudGhlbigoKSA9PiB7XG4gICAgICAgICAgICAgICAgICAgIGNvbnN0IHByZXNlbnRMb2dnZWRJblVzZXJuYW1lID0gXy5nZXQodGhpcy4kc2VjdXJpdHkuZ2V0KCksICd1c2VySW5mby51c2VyTmFtZScpO1xuICAgICAgICAgICAgICAgICAgICBpZiAocHJlc2VudExvZ2dlZEluVXNlcm5hbWUgJiYgcHJlc2VudExvZ2dlZEluVXNlcm5hbWUgPT09IGxhc3RMb2dnZWRJblVzZXJuYW1lKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICByb3V0ZXJTZXJ2aWNlLm5hdmlnYXRlKFtwYWdlXSk7XG4gICAgICAgICAgICAgICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICAgICAgICAgICAgICByb3V0ZXJTZXJ2aWNlLm5hdmlnYXRlKFtgL2BdKTtcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH0pO1xuICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgcGFnZSA9IHBhZ2UgPyAnP3JlZGlyZWN0UGFnZT0nICsgZW5jb2RlVVJJQ29tcG9uZW50KHBhZ2UpIDogJyc7XG4gICAgICAgICAgICBwYWdlUGFyYW1zID0gdGhpcy4kc2VjdXJpdHkuZ2V0UXVlcnlTdHJpbmcodGhpcy4kc2VjdXJpdHkuZ2V0UmVkaXJlY3RlZFJvdXRlUXVlcnlQYXJhbXMoKSk7XG4gICAgICAgICAgICBwYWdlUGFyYW1zID0gcGFnZVBhcmFtcyA/ICc/JyArIHBhZ2VQYXJhbXMgOiAnJztcbiAgICAgICAgICAgIC8vIHNob3dpbmcgYSByZWRpcmVjdGluZyBtZXNzYWdlXG4gICAgICAgICAgICBkb2N1bWVudC5ib2R5LnRleHRDb250ZW50ID0gXy5nZXQodGhpcy5nZXRBcHBMb2NhbGUoKSwgWydNRVNTQUdFX0xPR0lOX1JFRElSRUNUSU9OJ10pIHx8ICdSZWRpcmVjdGluZyB0byBzc28gbG9naW4uLi4nO1xuICAgICAgICAgICAgLy8gYXBwZW5kaW5nIHJlZGlyZWN0IHRvIHBhZ2UgYW5kIHBhZ2UgcGFyYW1zXG4gICAgICAgICAgICBjb25zdCBzc29VcmwgPSB0aGlzLmdldERlcGxveWVkVVJMKCkgKyBTU09fVVJMICsgcGFnZSArIHBhZ2VQYXJhbXM7XG4gICAgICAgICAgICAvKlxuICAgICAgICAgICAgICogcmVtb3ZlIGlGcmFtZSB3aGVuIHJlZGlyZWN0ZWQgdG8gSWRQIGxvZ2luIHBhZ2UuXG4gICAgICAgICAgICAgKiB0aGlzIGlzIGJlaW5nIGRvbmUgYXMgSURQcyBkbyBub3QgYWxsb3cgdG8gZ2V0IHRoZW1zZWx2ZXMgbG9hZGVkIGludG8gaUZyYW1lcy5cbiAgICAgICAgICAgICAqIHJlbW92ZS10b29sYmFyIGhhcyBiZWVuIGFzc2lnbmVkIHdpdGggYSB3aW5kb3cgbmFtZSBXTV9QUkVWSUVXX1dJTkRPVywgY2hlY2sgaWYgdGhlIGlmcmFtZSBpcyBvdXIgdG9vbGJhciByZWxhdGVkIGFuZFxuICAgICAgICAgICAgICogc2FmZWx5IGNoYW5nZSB0aGUgbG9jYXRpb24gb2YgdGhlIHBhcmVudCB0b29sYmFyIHdpdGggY3VycmVudCB1cmwuXG4gICAgICAgICAgICAgKi9cbiAgICAgICAgICAgIGlmICh3aW5kb3cuc2VsZiAhPT0gd2luZG93LnRvcCkge1xuICAgICAgICAgICAgICAgIHRyeSB7XG4gICAgICAgICAgICAgICAgICAgIGlmICh3aW5kb3cucGFyZW50ICYmIHdpbmRvdy5sb2NhdGlvbi5vcmlnaW4gPT09IHdpbmRvdy5wYXJlbnQub3JpZ2luKXtcbiAgICAgICAgICAgICAgICAgICAgICAgIGlmKHdpbmRvdy5wYXJlbnQubmFtZSA9PT0gUFJFVklFV19XSU5ET1dfTkFNRSkge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHdpbmRvdy5wYXJlbnQubG9jYXRpb24uaHJlZiA9IHdpbmRvdy5zZWxmLmxvY2F0aW9uLmhyZWY7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgd2luZG93LnBhcmVudC5uYW1lID0gXCJcIlxuICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgICAgICAgICAgICAgd2luZG93LmxvY2F0aW9uLmhyZWYgPSBzc29VcmxcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH0gY2F0Y2ggKGVycm9yKSB7XG4gICAgICAgICAgICAgICAgICAgIHdpbmRvdy5sb2NhdGlvbi5ocmVmID0gc3NvVXJsO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICAgICAgd2luZG93LmxvY2F0aW9uLmhyZWYgPSBzc29Vcmw7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAvKipcbiAgICAgKiBIYW5kbGVzIHRoZSBhcHAgd2hlbiBhIFhIUiByZXF1ZXN0IHJldHVybnMgNDAxIHJlc3BvbnNlXG4gICAgICogSWYgbm8gdXNlciB3YXMgbG9nZ2VkIGluIGJlZm9yZSA0MDEgb2NjdXJyZWQsIEZpcnN0IHRpbWUgTG9naW4gaXMgc2ltdWxhdGVkXG4gICAgICogRWxzZSwgYSBzZXNzaW9uIHRpbWVvdXQgaGFzIG9jY3VycmVkIGFuZCB0aGUgc2FtZSBpcyBzaW11bGF0ZWRcbiAgICAgKiBAcGFyYW0gcGFnZSAgaWYgcHJvdmlkZWQsIHJlcHJlc2VudHMgdGhlIHBhZ2UgbmFtZSBmb3Igd2hpY2ggWEhSIHJlcXVlc3QgcmV0dXJuZWQgNDAxLCBvbiByZS1sb2dpblxuICAgICAqICAgICAgICAgICAgICBpZiBub3QgcHJvdmlkZWQsIGEgc2VydmljZSByZXF1ZXN0IHJldHVybmVkIDQwMVxuICAgICAqIEBwYXJhbSBvblN1Y2Nlc3Mgc3VjY2VzcyBoYW5kbGVyXG4gICAgICogQHBhcmFtIG9uRXJyb3IgZXJyb3IgaGFuZGxlclxuICAgICAqL1xuICAgIGhhbmRsZTQwMShwYWdlPywgb3B0aW9ucz8pIHtcbiAgICAgICAgbGV0IHNlc3Npb25UaW1lb3V0Q29uZmlnLFxuICAgICAgICAgICAgc2Vzc2lvblRpbWVvdXRNZXRob2QsXG4gICAgICAgICAgICBsb2dpbkNvbmZpZyxcbiAgICAgICAgICAgIGxvZ2luTWV0aG9kO1xuICAgICAgICBjb25zdCBMT0dJTl9NRVRIT0QgPSB7XG4gICAgICAgICAgICAgICAgJ0RJQUxPRycgOiAnRElBTE9HJyxcbiAgICAgICAgICAgICAgICAnUEFHRScgICA6ICdQQUdFJyxcbiAgICAgICAgICAgICAgICAnU1NPJyAgICA6ICdTU08nXG4gICAgICAgICAgICB9O1xuXG4gICAgICAgIGNvbnN0IGNvbmZpZyA9IHRoaXMuJHNlY3VyaXR5LmdldCgpO1xuICAgICAgICBsZXQgcXVlcnlQYXJhbXNPYmogPSB7fTtcbiAgICAgICAgbG9naW5Db25maWcgPSBjb25maWcubG9naW5Db25maWc7XG4gICAgICAgIHRoaXMubGFzdExvZ2dlZFVzZXJJZCA9IGNvbmZpZy51c2VySW5mbyAmJiBjb25maWcudXNlckluZm8udXNlcklkO1xuICAgICAgICAvLyBpZiB1c2VyIGZvdW5kLCA0MDEgd2FzIHRocm93biBhZnRlciBzZXNzaW9uIHRpbWVcbiAgICAgICAgaWYgKGNvbmZpZy51c2VySW5mbyAmJiBjb25maWcudXNlckluZm8udXNlck5hbWUpIHtcbiAgICAgICAgICAgIGNvbmZpZy5hdXRoZW50aWNhdGVkID0gZmFsc2U7XG4gICAgICAgICAgICBzZXNzaW9uVGltZW91dENvbmZpZyA9IGxvZ2luQ29uZmlnLnNlc3Npb25UaW1lb3V0IHx8IHsndHlwZSc6IExPR0lOX01FVEhPRC5ESUFMT0d9O1xuICAgICAgICAgICAgc2Vzc2lvblRpbWVvdXRNZXRob2QgPSBzZXNzaW9uVGltZW91dENvbmZpZy50eXBlLnRvVXBwZXJDYXNlKCk7XG4gICAgICAgICAgICBzd2l0Y2ggKHNlc3Npb25UaW1lb3V0TWV0aG9kKSB7XG4gICAgICAgICAgICAgICAgY2FzZSBMT0dJTl9NRVRIT0QuRElBTE9HOlxuICAgICAgICAgICAgICAgICAgICB0aGlzLnNob3dMb2dpbkRpYWxvZygpO1xuICAgICAgICAgICAgICAgICAgICBicmVhaztcbiAgICAgICAgICAgICAgICBjYXNlIExPR0lOX01FVEhPRC5QQUdFOlxuICAgICAgICAgICAgICAgICAgICBpZiAoIXBhZ2UpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIHBhZ2UgPSB0aGlzLiRzZWN1cml0eS5nZXRDdXJyZW50Um91dGVQYWdlKCk7XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgcXVlcnlQYXJhbXNPYmpbJ3JlZGlyZWN0VG8nXSA9IHBhZ2U7XG4gICAgICAgICAgICAgICAgICAgIC8vIEFkZGluZyBxdWVyeSBwYXJhbXMocGFnZSBwYXJhbXMgb2YgcGFnZSBiZWluZyByZWRpcmVjdGVkIHRvKSB0byB0aGUgVVJMLlxuICAgICAgICAgICAgICAgICAgICBxdWVyeVBhcmFtc09iaiA9IF8ubWVyZ2UocXVlcnlQYXJhbXNPYmosIHRoaXMuJHNlY3VyaXR5LmdldFJlZGlyZWN0ZWRSb3V0ZVF1ZXJ5UGFyYW1zKCkpO1xuICAgICAgICAgICAgICAgICAgICAvLyB0aGUgcmVkaXJlY3QgcGFnZSBzaG91bGQgbm90IGJlIHNhbWUgYXMgc2Vzc2lvbiB0aW1lb3V0IGxvZ2luIHBhZ2VcbiAgICAgICAgICAgICAgICAgICAgaWYgKCBwYWdlICE9PSBzZXNzaW9uVGltZW91dENvbmZpZy5wYWdlTmFtZSkge1xuICAgICAgICAgICAgICAgICAgICAgICAgdGhpcy4kcm91dGVyLm5hdmlnYXRlKFtzZXNzaW9uVGltZW91dENvbmZpZy5wYWdlTmFtZV0sIHtxdWVyeVBhcmFtczogcXVlcnlQYXJhbXNPYmp9KTtcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICBicmVhaztcbiAgICAgICAgICAgICAgICBjYXNlIExPR0lOX01FVEhPRC5TU086XG4gICAgICAgICAgICAgICAgICAgIHRoaXMuaGFuZGxlU1NPTG9naW4oY29uZmlnKTtcbiAgICAgICAgICAgICAgICAgICAgYnJlYWs7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICB0aGlzLnNldExhbmRpbmdQYWdlKCk7XG4gICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICAvLyBpZiBubyB1c2VyIGZvdW5kLCA0MDEgd2FzIHRocm93biBmb3IgZmlyc3QgdGltZSBsb2dpblxuICAgICAgICAgICAgbG9naW5NZXRob2QgPSBsb2dpbkNvbmZpZy50eXBlLnRvVXBwZXJDYXNlKCk7XG4gICAgICAgICAgICBzd2l0Y2ggKGxvZ2luTWV0aG9kKSB7XG4gICAgICAgICAgICAgICAgY2FzZSBMT0dJTl9NRVRIT0QuRElBTE9HOlxuICAgICAgICAgICAgICAgICAgICAvLyBUaHJvdWdoIGxvZ2luRGlhbG9nLCB1c2VyIHdpbGwgcmVtYWluIGluIHRoZSBjdXJyZW50IHN0YXRlIGFuZCBmYWlsZWQgY2FsbHMgd2lsbCBiZSBleGVjdXRlZCBwb3N0IGxvZ2luIHRocm91Z2ggTG9naW5WYXJpYWJsZVNlcnZpY2UuXG4gICAgICAgICAgICAgICAgICAgIC8vIE5PVEU6IHVzZXIgd2lsbCBiZSByZWRpcmVjdGVkIHRvIHJlc3BlY3RpdmUgbGFuZGluZyBwYWdlIG9ubHkgaWYgZGlhbG9nIGlzIG9wZW5lZCBtYW51YWxseShub3QgdGhyb3VnaCBhIGZhaWxlZCA0MDEgY2FsbCkuXG4gICAgICAgICAgICAgICAgICAgIHRoaXMubm9SZWRpcmVjdCh0cnVlKTtcbiAgICAgICAgICAgICAgICAgICAgdGhpcy5zaG93TG9naW5EaWFsb2coKTtcbiAgICAgICAgICAgICAgICAgICAgYnJlYWs7XG4gICAgICAgICAgICAgICAgY2FzZSBMT0dJTl9NRVRIT0QuUEFHRTpcbiAgICAgICAgICAgICAgICAgICAgLy8gZG8gbm90IHByb3ZpZGUgcmVkaXJlY3RUbyBwYWdlIGlmIGZldGNoaW5nIEhPTUUgcGFnZSByZXN1bHRlZCA0MDFcbiAgICAgICAgICAgICAgICAgICAgLy8gb24gYXBwIGxvYWQsIGJ5IGRlZmF1bHQgSG9tZSBwYWdlIGlzIGxvYWRlZFxuICAgICAgICAgICAgICAgICAgICBwYWdlID0gdGhpcy4kc2VjdXJpdHkuZ2V0UmVkaXJlY3RQYWdlKGNvbmZpZywgcGFnZSk7XG4gICAgICAgICAgICAgICAgICAgIHF1ZXJ5UGFyYW1zT2JqWydyZWRpcmVjdFRvJ10gPSBwYWdlO1xuICAgICAgICAgICAgICAgICAgICBjb25zdCBleHRyYVF1ZXJ5UGFyYW1zID0gKG9wdGlvbnMgJiYgb3B0aW9ucy5xdWVyeVBhcmFtcykgfHwgdGhpcy4kc2VjdXJpdHkuZ2V0UmVkaXJlY3RlZFJvdXRlUXVlcnlQYXJhbXMoKTtcbiAgICAgICAgICAgICAgICAgICAgcXVlcnlQYXJhbXNPYmogPSBfLm1lcmdlKHF1ZXJ5UGFyYW1zT2JqLCBleHRyYVF1ZXJ5UGFyYW1zKTtcbiAgICAgICAgICAgICAgICAgICAgdGhpcy4kcm91dGVyLm5hdmlnYXRlKFtsb2dpbkNvbmZpZy5wYWdlTmFtZV0sIHtxdWVyeVBhcmFtczogcXVlcnlQYXJhbXNPYmp9KTtcbiAgICAgICAgICAgICAgICAgICAgdGhpcy4kYXBwLmxhbmRpbmdQYWdlTmFtZSA9IGxvZ2luQ29uZmlnLnBhZ2VOYW1lO1xuICAgICAgICAgICAgICAgICAgICBicmVhaztcbiAgICAgICAgICAgICAgICBjYXNlIExPR0lOX01FVEhPRC5TU086XG4gICAgICAgICAgICAgICAgICAgIHRoaXMuaGFuZGxlU1NPTG9naW4oY29uZmlnKTtcbiAgICAgICAgICAgICAgICAgICAgYnJlYWs7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAvKipcbiAgICAgKiBVcGRhdGVzIGRhdGEgZGVwZW5kZW50IG9uIGxvZ2dlZCBpbiB1c2VyXG4gICAgICogUmVsb2FkcyBzZWN1cml0eSBjb25maWcsIG1ldGFkYXRhXG4gICAgICogVXBkYXRlcyB0aGUgbG9nZ2VkSW5Vc2VyVmFyaWFibGVcbiAgICAgKiBAcmV0dXJucyB7UHJvbWlzZTx2b2lkPn1cbiAgICAgKi9cbiAgICByZWxvYWRBcHBEYXRhKCkge1xuICAgICAgICByZXR1cm4gdGhpcy5sb2FkU2VjdXJpdHlDb25maWcodHJ1ZSkudGhlbigoKSA9PiB7XG4gICAgICAgICAgICByZXR1cm4gdGhpcy5sb2FkTWV0YWRhdGEoKS50aGVuKCgpID0+IHtcbiAgICAgICAgICAgICAgICByZXR1cm4gdGhpcy51cGRhdGVMb2dnZWRJblVzZXJWYXJpYWJsZSgpO1xuICAgICAgICAgICAgfSk7XG4gICAgICAgIH0pO1xuICAgIH1cblxuICAgIG5vUmVkaXJlY3QodmFsdWU/OiBib29sZWFuKSB7XG4gICAgICAgIGlmIChfLmlzVW5kZWZpbmVkKHZhbHVlKSkge1xuICAgICAgICAgICAgcmV0dXJuIHRoaXMuX25vUmVkaXJlY3Q7XG4gICAgICAgIH1cblxuICAgICAgICB0aGlzLl9ub1JlZGlyZWN0ID0gdmFsdWU7XG4gICAgICAgIHJldHVybiB0aGlzLl9ub1JlZGlyZWN0O1xuICAgIH1cblxuICAgIC8qKlxuICAgICAqIGludm9rZXMgc2Vzc2lvbiBmYWlsdXJlIHJlcXVlc3RzXG4gICAgICovXG4gICAgZXhlY3V0ZVNlc3Npb25GYWlsdXJlUmVxdWVzdHMoKSB7XG4gICAgICAgIHRoaXMuJGh0dHAuZXhlY3V0ZVNlc3Npb25GYWlsdXJlUmVxdWVzdHMoKTtcbiAgICB9XG5cbiAgICBwdXNoVG9TZXNzaW9uRmFpbHVyZVJlcXVlc3RzKGNhbGxiYWNrKSB7XG4gICAgICAgIHRoaXMuJGh0dHAucHVzaFRvU2Vzc2lvbkZhaWx1cmVRdWV1ZShjYWxsYmFjayk7XG4gICAgfVxuXG4gICAgcHVibGljIGdldERlcGxveWVkVVJMKCkge1xuICAgICAgICByZXR1cm4gdGhpcy4kYXBwLmRlcGxveWVkVXJsID8gdGhpcy4kYXBwLmRlcGxveWVkVXJsIDogJHJvb3RTY29wZS5wcm9qZWN0LmRlcGxveWVkVXJsO1xuICAgIH1cblxuICAgIC8qKlxuICAgICAqIEZldGNoZXMgdGhlIGN1c3RvbXVybHNjaGVtZSBmb3IgYSBtb2JpbGUgYXBwXG4gICAgICogd2hpY2ggaXMgdXNlZCBmb3IgcmVkaXJlY3Rpb24gYmFjayB0byB0aGUgYXBwIGZyb20gYnJvd3NlciBpbiBpbXBsaWNpdCBvQXV0aCBmbG93XG4gICAgICogQHJldHVybnMge3N0cmluZ31cbiAgICAgKi9cbiAgICBwdWJsaWMgZ2V0Q3VzdG9tVXJsU2NoZW1lKCkge1xuICAgICAgICByZXR1cm4gdGhpcy4kYXBwLmN1c3RvbVVybFNjaGVtZTtcbiAgICB9XG5cbiAgICBub3RpZnkoZXZlbnROYW1lLCBkYXRhKSB7XG4gICAgICAgIHRoaXMuJGFwcC5ub3RpZnkoZXZlbnROYW1lLCBkYXRhKTtcbiAgICB9XG5cbiAgICBzdWJzY3JpYmUoZXZlbnROYW1lLCBkYXRhKSB7XG4gICAgICAgIHJldHVybiB0aGlzLiRhcHAuc3Vic2NyaWJlKGV2ZW50TmFtZSwgZGF0YSk7XG4gICAgfVxuXG4gICAgZ2V0QWN0aXZlUGFnZSgpIHtcbiAgICAgICAgcmV0dXJuIHRoaXMuJGFwcC5hY3RpdmVQYWdlO1xuICAgIH1cblxuICAgIGdldEFwcExvY2FsZSgpIHtcbiAgICAgICAgcmV0dXJuIHRoaXMuJGFwcC5hcHBMb2NhbGU7XG4gICAgfVxuXG4gICAgZ2V0U2VsZWN0ZWRMb2NhbGUoKSB7XG4gICAgICAgIHJldHVybiB0aGlzLiRpMThuLmdldFNlbGVjdGVkTG9jYWxlKCk7XG4gICAgfVxuXG4gICAgbm90aWZ5QXBwKHRlbXBsYXRlLCB0eXBlLCB0aXRsZT8pIHtcbiAgICAgICAgdGhpcy4kYXBwLm5vdGlmeUFwcCh0ZW1wbGF0ZSwgdHlwZSwgdGl0bGUpO1xuICAgIH1cblxuICAgIC8qKlxuICAgICAqIFRyaWdnZXJzIHRoZSBvbkJlZm9yZVNlcnZpY2UgbWV0aG9kIGRlZmluZWQgaW4gYXBwLmpzIG9mIHRoZSBhcHBcbiAgICAgKiBAcGFyYW0gcmVxdWVzdFBhcmFtc1xuICAgICAqL1xuICAgIGFwcE9uQmVmb3JlU2VydmljZUNhbGwocmVxdWVzdFBhcmFtczogYW55KSB7XG4gICAgICAgIHJldHVybiB0cmlnZ2VyRm4odGhpcy4kYXBwLm9uQmVmb3JlU2VydmljZUNhbGwsIHJlcXVlc3RQYXJhbXMpO1xuICAgIH1cblxuICAgIC8qKlxuICAgICAqIFRyaWdnZXJzIHRoZSBvblNlcnZpY2VTdWNjZXNzIG1ldGhvZCBkZWZpbmVkIGluIGFwcC5qcyBvZiB0aGUgYXBwXG4gICAgICogQHBhcmFtIGRhdGFcbiAgICAgKiBAcGFyYW0geGhyT2JqXG4gICAgICovXG4gICAgYXBwT25TZXJ2aWNlU3VjY2VzcyhkYXRhOiBhbnksIHhock9iajogYW55KSB7XG4gICAgICAgIHJldHVybiB0cmlnZ2VyRm4odGhpcy4kYXBwLm9uU2VydmljZVN1Y2Nlc3MsIGRhdGEsIHhock9iaik7XG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogVHJpZ2dlcnMgdGhlIG9uU2VydmljZUVycm9yIG1ldGhvZCBkZWZpbmVkIGluIGFwcC5qcyBvZiB0aGUgYXBwXG4gICAgICogQHBhcmFtIGRhdGFcbiAgICAgKiBAcGFyYW0geGhyT2JcbiAgICAgKi9cbiAgICBhcHBPblNlcnZpY2VFcnJvcihkYXRhOiBhbnksIHhock9iPzogYW55KSB7XG4gICAgICAgIHJldHVybiB0cmlnZ2VyRm4odGhpcy4kYXBwLm9uU2VydmljZUVycm9yLCBkYXRhLCB4aHJPYik7XG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogVHJpZ2dlcnMgdGhlIGFwcFZhcmlhYmxlc1JlYWR5IG1ldGhvZCBkZWZpbmVkIGluIGFwcC5qcyBvZiB0aGUgYXBwXG4gICAgICovXG4gICAgYXBwVmFyaWFibGVzUmVhZHkoKSB7XG4gICAgICAgIHRyaWdnZXJGbih0aGlzLiRhcHAub25BcHBWYXJpYWJsZXNSZWFkeSk7XG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogVHJpZ2dlcnMgdGhlIG9uQmVmb3JlQXBwUmVhZHkgbWV0aG9kIGRlZmluZWQgaW4gYXBwLmpzIG9mIHRoZSBhcHBcbiAgICAgKi9cbiAgICBiZWZvcmVBcHBSZWFkeSgpIHtcbiAgICAgICAgdHJpZ2dlckZuKHRoaXMuJGFwcC5vbkJlZm9yZUFwcFJlYWR5KTtcbiAgICB9XG5cbiAgICAvKipcbiAgICAgKiBSZXR1cm5zIHRoZSBwaXBlIGJhc2VkIG9uIHRoZSBpbnB1dFxuICAgICAqL1xuICAgIGdldFBpcGUocGlwZSkge1xuICAgICAgICBpZiAocGlwZSA9PT0gJ2RhdGUnKSB7XG4gICAgICAgICAgICByZXR1cm4gdGhpcy4kZGF0ZVBpcGU7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBwcml2YXRlIHNldExhbmRpbmdQYWdlKCkge1xuICAgICAgICByZXR1cm4gdGhpcy4kc2VjdXJpdHkuZ2V0UGFnZUJ5TG9nZ2VkSW5Vc2VyKCkudGhlbihwID0+IHRoaXMuJGFwcC5sYW5kaW5nUGFnZU5hbWUgPSA8c3RyaW5nPiBwKTtcbiAgICB9XG5cbiAgICAvKipcbiAgICAgKiByZXR1cm4gdHJ1ZSBpZiBwcmVmYWIgdHlwZSBhcHBcbiAgICAgKiBAcmV0dXJucyB7Ym9vbGVhbn1cbiAgICAgKi9cbiAgICBpc1ByZWZhYlR5cGUoKSB7XG4gICAgICAgIHJldHVybiB0aGlzLiRhcHAuaXNQcmVmYWJUeXBlO1xuICAgIH1cblxuICAgIC8qKlxuICAgICAqIHJldHVybiB0cnVlIGlmIHRlbXBsYXRlIGJ1bmRsZSB0eXBlIGFwcFxuICAgICAqIEByZXR1cm5zIHtib29sZWFufVxuICAgICAqL1xuICAgIGlzVGVtcGxhdGVCdW5kbGVUeXBlKCkge1xuICAgICAgICByZXR1cm4gdGhpcy4kYXBwLmlzVGVtcGxhdGVCdW5kbGVUeXBlO1xuICAgIH1cblxuICAgIHBvc3RNZXNzYWdlKGNvbnRlbnQpIHtcbiAgICAgICAgd2luZG93LnRvcC5wb3N0TWVzc2FnZShjb250ZW50LCAnKicpO1xuICAgIH1cblxuICAgIHNob3dUZW1wbGF0ZShpZHgpIHtcbiAgICAgICAgY29uc3QgdGVtcGxhdGUgPSB0aGlzLnRlbXBsYXRlc1tpZHhdO1xuICAgICAgICAvLyBzY29wZS5hY3RpdmVUZW1wbGF0ZUluZGV4ID0gaWR4O1xuICAgICAgICB0aGlzLiRyb3V0ZXIubmF2aWdhdGUoW3RlbXBsYXRlLmlkXSk7XG4gICAgfVxuICAgIHBvc3RUZW1wbGF0ZUJ1bmRsZUluZm8oKSB7XG5cbiAgICAgICAgd2luZG93Lm9ubWVzc2FnZSA9IChldnQpID0+IHtcbiAgICAgICAgICAgIGNvbnN0IG1zZ0RhdGEgPSBldnQuZGF0YTtcblxuICAgICAgICAgICAgaWYgKCFfLmlzT2JqZWN0KG1zZ0RhdGEpKSB7XG4gICAgICAgICAgICAgICAgcmV0dXJuO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICBjb25zdCBrZXkgPSBtc2dEYXRhLmtleTtcblxuICAgICAgICAgICAgc3dpdGNoIChrZXkpIHtcbiAgICAgICAgICAgICAgICBjYXNlIFBPU1RfTUVTU0FHRVMuSElERV9URU1QTEFURVNfU0hPV19DQVNFOlxuICAgICAgICAgICAgICAgICAgICAvLyBzY29wZS5oaWRlU2hvd0Nhc2UgPSB0cnVlO1xuICAgICAgICAgICAgICAgICAgICBicmVhaztcbiAgICAgICAgICAgICAgICBjYXNlIFBPU1RfTUVTU0FHRVMuU0VMRUNUX1RFTVBMQVRFOlxuICAgICAgICAgICAgICAgICAgICB0aGlzLnNob3dUZW1wbGF0ZShtc2dEYXRhLnRlbXBsYXRlSW5kZXgpO1xuICAgICAgICAgICAgICAgICAgICBicmVhaztcbiAgICAgICAgICAgIH1cbiAgICAgICAgfTtcblxuICAgICAgICBzZXRUaW1lb3V0KCgpID0+IHtcbiAgICAgICAgICAgIHRoaXMucG9zdE1lc3NhZ2Uoe2tleTogUE9TVF9NRVNTQUdFUy5PTl9MT0FEfSk7XG4gICAgICAgIH0pO1xuXG4gICAgICAgIHJldHVybiBmZXRjaENvbnRlbnQoJ2pzb24nLCAnLi9jb25maWcuanNvbicsIHRydWUsIHJlc3BvbnNlID0+IHtcbiAgICAgICAgICAgIHRoaXMudGVtcGxhdGVzID0gW107XG4gICAgICAgICAgICBpZiAoIXJlc3BvbnNlLmVycm9yKSB7XG4gICAgICAgICAgICAgICAgdGhpcy50ZW1wbGF0ZXMgPSByZXNwb25zZS50ZW1wbGF0ZXM7XG4gICAgICAgICAgICAgICAgdGhpcy5wb3N0TWVzc2FnZSh7J2tleSc6IFBPU1RfTUVTU0FHRVMuVEVNUExBVEVCVU5ETEVfQ09ORklHLCAnY29uZmlnJzogcmVzcG9uc2V9KTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfSk7XG4gICAgfVxuXG4gICAgcG9zdEFwcFR5cGVJbmZvKCkge1xuICAgICAgICBpZiAodGhpcy5pc1RlbXBsYXRlQnVuZGxlVHlwZSgpKSB7XG4gICAgICAgICAgICByZXR1cm4gdGhpcy5wb3N0VGVtcGxhdGVCdW5kbGVJbmZvKCk7XG4gICAgICAgIH1cbiAgICB9XG59XG4iXX0=
483
+ }], function () { return [{ type: i1.AbstractHttpService }, { type: i2.SecurityService }, { type: i1.AbstractDialogService }, { type: i3.Router }, { type: i1.App }, { type: i4.VariablesService }, { type: i4.MetadataService }, { type: i1.AbstractSpinnerService }, { type: i1.AbstractI18nService }, { type: i5.DatePipe }]; }, null); })();
484
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYXBwLm1hbmFnZXIuc2VydmljZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3J1bnRpbWUtYmFzZS9zcmMvc2VydmljZXMvYXBwLm1hbmFnZXIuc2VydmljZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQzNDLE9BQU8sRUFBRSxNQUFNLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUN6QyxPQUFPLEVBQUUsUUFBUSxFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFFM0MsT0FBTyxFQUNILHFCQUFxQixFQUNyQixtQkFBbUIsRUFDbkIsbUJBQW1CLEVBQ25CLHNCQUFzQixFQUN0QixHQUFHLEVBQ0gsWUFBWSxFQUNaLFNBQVMsRUFDVCxTQUFTLEVBQ1QsVUFBVSxFQUNiLE1BQU0sVUFBVSxDQUFDO0FBQ2xCLE9BQU8sRUFBRSxlQUFlLEVBQUUsTUFBTSxjQUFjLENBQUM7QUFDL0MsT0FBTyxFQUFFLFNBQVMsRUFBRSxVQUFVLEVBQUUsYUFBYSxFQUFHLGVBQWUsRUFBRSxnQkFBZ0IsRUFBRSxNQUFNLGVBQWUsQ0FBQzs7Ozs7OztBQUd6RyxJQUFLLGFBT0o7QUFQRCxXQUFLLGFBQWE7SUFDZCxzRUFBcUQsQ0FBQTtJQUNyRCxzRUFBcUQsQ0FBQTtJQUNyRCx5REFBaUQsQ0FBQTtJQUNqRCxvREFBNEMsQ0FBQTtJQUM1QyxpRUFBbUQsQ0FBQTtJQUNuRCxvQ0FBb0MsQ0FBQTtBQUN4QyxDQUFDLEVBUEksYUFBYSxLQUFiLGFBQWEsUUFPakI7QUFHRCxNQUFNLE9BQU8saUJBQWlCO2FBQ1YsaUJBQVksR0FBRyxtQkFBbUIsQ0FBQztJQVFuRCxZQUNZLEtBQTBCLEVBQzFCLFNBQTBCLEVBQzFCLE9BQThCLEVBQzlCLE9BQWUsRUFDZixJQUFTLEVBQ1QsVUFBNEIsRUFDNUIsU0FBMEIsRUFDMUIsUUFBZ0MsRUFDaEMsS0FBMEIsRUFDMUIs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S0FBSyxFQUFFO2dCQUNqQixJQUFJLENBQUMsU0FBUyxHQUFHLFFBQVEsQ0FBQyxTQUFTLENBQUM7Z0JBQ3BDLElBQUksQ0FBQyxXQUFXLENBQUMsRUFBQyxLQUFLLEVBQUUsYUFBYSxDQUFDLHFCQUFxQixFQUFFLFFBQVEsRUFBRSxRQUFRLEVBQUMsQ0FBQyxDQUFDO2FBQ3RGO1FBQ0wsQ0FBQyxDQUFDLENBQUM7SUFDUCxDQUFDO0lBRUQsZUFBZTtRQUNYLElBQUksSUFBSSxDQUFDLG9CQUFvQixFQUFFLEVBQUU7WUFDN0IsT0FBTyxJQUFJLENBQUMsc0JBQXNCLEVBQUUsQ0FBQztTQUN4QztJQUNMLENBQUM7a0ZBbmdCUSxpQkFBaUI7dUVBQWpCLGlCQUFpQixXQUFqQixpQkFBaUI7O3VGQUFqQixpQkFBaUI7Y0FEN0IsVUFBVSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEluamVjdGFibGUgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IFJvdXRlciB9IGZyb20gJ0Bhbmd1bGFyL3JvdXRlcic7XG5pbXBvcnQgeyBEYXRlUGlwZSB9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbic7XG5cbmltcG9ydCB7XG4gICAgQWJzdHJhY3REaWFsb2dTZXJ2aWNlLFxuICAgIEFic3RyYWN0SHR0cFNlcnZpY2UsXG4gICAgQWJzdHJhY3RJMThuU2VydmljZSxcbiAgICBBYnN0cmFjdFNwaW5uZXJTZXJ2aWNlLFxuICAgIEFwcCxcbiAgICBmZXRjaENvbnRlbnQsXG4gICAgaXNEZWZpbmVkLFxuICAgIHRyaWdnZXJGbixcbiAgICAkYXBwRGlnZXN0XG59IGZyb20gJ0B3bS9jb3JlJztcbmltcG9ydCB7IFNlY3VyaXR5U2VydmljZSB9IGZyb20gJ0B3bS9zZWN1cml0eSc7XG5pbXBvcnQgeyBDT05TVEFOVFMsICRyb290U2NvcGUsIHJvdXRlclNlcnZpY2UsICBNZXRhZGF0YVNlcnZpY2UsIFZhcmlhYmxlc1NlcnZpY2UgfSBmcm9tICdAd20vdmFyaWFibGVzJztcbmRlY2xhcmUgY29uc3QgXztcblxuZW51bSBQT1NUX01FU1NBR0VTIHtcbiAgICBISURFX1RFTVBMQVRFU19TSE9XX0NBU0UgPSAnaGlkZS10ZW1wbGF0ZXMtc2hvdy1jYXNlJyxcbiAgICBTSE9XX1RFTVBMQVRFU19TSE9XX0NBU0UgPSAnc2hvdy10ZW1wbGF0ZXMtc2hvdy1jYXNlJyxcbiAgICBVUERBVEVfTE9DQVRJT04gICAgICAgICAgPSAndXBkYXRlLWxvY2F0aW9uLXBhdGgnLFxuICAgIFNFTEVDVF9URU1QTEFURSAgICAgICAgICA9ICdzZWxlY3QtdGVtcGxhdGUnLFxuICAgIFRFTVBMQVRFQlVORExFX0NPTkZJRyAgICA9ICd0ZW1wbGF0ZS1idW5kbGUtY29uZmlnJyxcbiAgICBPTl9MT0FEICAgICAgICAgICAgICAgICAgPSAnb24tbG9hZCdcbn1cblxuQEluamVjdGFibGUoKVxuZXhwb3J0IGNsYXNzIEFwcE1hbmFnZXJTZXJ2aWNlIHtcbiAgICBzdGF0aWMgcmVhZG9ubHkgU0VSVklDRV9OQU1FID0gJ0FwcE1hbmFnZXJTZXJ2aWNlJztcblxuICAgIHByaXZhdGUgYXBwVmFyaWFibGVzTG9hZGVkID0gZmFsc2U7XG4gICAgcHJpdmF0ZSBhcHBWYXJpYWJsZXNGaXJlZCA9IGZhbHNlO1xuICAgIHByaXZhdGUgX25vUmVkaXJlY3QgPSBmYWxzZTtcbiAgICBwcml2YXRlIHRlbXBsYXRlczogQXJyYXk8YW55PjtcbiAgICBwcml2YXRlIGxhc3RMb2dnZWRVc2VySWQ7XG5cbiAgICBjb25zdHJ1Y3RvcihcbiAgICAgICAgcHJpdmF0ZSAkaHR0cDogQWJzdHJhY3RIdHRwU2VydmljZSxcbiAgICAgICAgcHJpdmF0ZSAkc2VjdXJpdHk6IFNlY3VyaXR5U2VydmljZSxcbiAgICAgICAgcHJpdmF0ZSAkZGlhbG9nOiBBYnN0cmFjdERpYWxvZ1NlcnZpY2UsXG4gICAgICAgIHByaXZhdGUgJHJvdXRlcjogUm91dGVyLFxuICAgICAgICBwcml2YXRlICRhcHA6IEFwcCxcbiAgICAgICAgcHJpdmF0ZSAkdmFyaWFibGVzOiBWYXJpYWJsZXNTZXJ2aWNlLFxuICAgICAgICBwcml2YXRlICRtZXRhZGF0YTogTWV0YWRhdGFTZXJ2aWNlLFxuICAgICAgICBwcml2YXRlICRzcGlubmVyOiBBYnN0cmFjdFNwaW5uZXJTZXJ2aWNlLFxuICAgICAgICBwcml2YXRlICRpMThuOiBBYnN0cmFjdEkxOG5TZXJ2aWNlLFxuICAgICAgICBwcml2YXRlICRkYXRlUGlwZTogRGF0ZVBpcGUsXG4gICAgKSB7XG4gICAgICAgIC8vIHJlZ2lzdGVyIG1ldGhvZCB0byBpbnZva2Ugb24gc2Vzc2lvbiB0aW1lb3V0XG4gICAgICAgIHRoaXMuJGh0dHAucmVnaXN0ZXJPblNlc3Npb25UaW1lb3V0KHRoaXMuaGFuZGxlNDAxLmJpbmQodGhpcykpO1xuXG4gICAgICAgIHRoaXMuJHZhcmlhYmxlcy5yZWdpc3RlckRlcGVuZGVuY3koJ2FwcE1hbmFnZXInLCB0aGlzKTtcblxuICAgICAgICB0aGlzLiRhcHAuc3Vic2NyaWJlKCd0b2dnbGUtdmFyaWFibGUtc3RhdGUnLCAoZGF0YSkgPT4ge1xuICAgICAgICAgICAgY29uc3QgdmFyaWFibGUgPSBkYXRhLnZhcmlhYmxlLFxuICAgICAgICAgICAgICAgIGFjdGl2ZSA9IGRhdGEuYWN0aXZlO1xuICAgICAgICAgICAgaWYgKCFfLmlzRW1wdHkoXy50cmltKHZhcmlhYmxlLnNwaW5uZXJDb250ZXh0KSkpIHtcbiAgICAgICAgICAgICAgICBpZiAoYWN0aXZlKSB7XG4gICAgICAgICAgICAgICAgICAgIGxldCBzcGlubmVyRXhpc3RzO1xuICAgICAgICAgICAgICAgICAgICAvLyBXTVMtMjExMTcgOiBEbyBub3QgdHJpZ2dlciBzcGlubmVyLCBpZiB0aGUgY3VycmVudCB2YXJpYWJsZSBpcyBzYW1lIGFzIHNwaW5uZXIgd2hpY2ggaXMgaW4gY29udGV4dFxuICAgICAgICAgICAgICAgICAgICBpZiAodmFyaWFibGUuX3NwaW5uZXJJZCAmJiB2YXJpYWJsZS5fc3Bpbm5lcklkLmxlbmd0aCkge1xuICAgICAgICAgICAgICAgICAgICAgICAgXy5mb3JFYWNoKHZhcmlhYmxlLl9zcGlubmVySWQsIChpdGVtKSA9PiB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgaWYgKGl0ZW0uc2xpY2UoMCwgaXRlbS5sYXN0SW5kZXhPZignXycpKSA9PT0gdmFyaWFibGUuX2lkICYmICh0aGlzLiRzcGlubmVyIGFzIGFueSkubWVzc2FnZXNCeUNvbnRleHQgJiYgKHRoaXMuJHNwaW5uZXIgYXMgYW55KS5tZXNzYWdlc0J5Q29udGV4dFt2YXJpYWJsZS5zcGlubmVyQ29udGV4dF0gJiZcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKHZhcmlhYmxlLnNwaW5uZXJNZXNzYWdlID09PSAodGhpcy4kc3Bpbm5lciBhcyBhbnkpLm1lc3NhZ2VzQnlDb250ZXh0W3ZhcmlhYmxlLnNwaW5uZXJDb250ZXh0XVtcImZpbmFsTWVzc2FnZVwiXSB8fCB2YXJpYWJsZS5zcGlubmVyTWVzc2FnZSA9PT0gKHRoaXMuJHNwaW5uZXIgYXMgYW55KS5tZXNzYWdlc0J5Q29udGV4dFt2YXJpYWJsZS5zcGlubmVyQ29udGV4dF1baXRlbV0pKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHNwaW5uZXJFeGlzdHMgPSB0cnVlO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICByZXR1cm47XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICAgICAgfSk7XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgaWYgKCFzcGlubmVyRXhpc3RzKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICB2YXJpYWJsZS5fc3Bpbm5lcklkID0gdmFyaWFibGUuX3NwaW5uZXJJZCB8fCBbXTtcbiAgICAgICAgICAgICAgICAgICAgICAgIGNvbnN0IHNwaW5uZXJJZCA9IHRoaXMuJHNwaW5uZXIuc2hvdyh2YXJpYWJsZS5zcGlubmVyTWVzc2FnZSxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB2YXJpYWJsZS5faWQgKyAnXycgKyBEYXRlLm5vdygpLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHZhcmlhYmxlLnNwaW5uZXJjbGFzcyxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB2YXJpYWJsZS5zcGlubmVyQ29udGV4dCk7XG4gICAgICAgICAgICAgICAgICAgICAgICB2YXJpYWJsZS5fc3Bpbm5lcklkLnB1c2goc3Bpbm5lcklkKTtcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICAgICAgICAgIHRoaXMuJHNwaW5uZXIuaGlkZSh2YXJpYWJsZS5fc3Bpbm5lcklkLnNoaWZ0KCkpO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfSk7XG4gICAgICAgIHRoaXMuJGFwcC5zdWJzY3JpYmUoJ3VzZXJMb2dnZWRJbicsICgpID0+IHtcbiAgICAgICAgICAgIHRoaXMuc2V0TGFuZGluZ1BhZ2UoKTtcbiAgICAgICAgICAgIGlmICh0aGlzLmxhc3RMb2dnZWRVc2VySWQpIHtcbiAgICAgICAgICAgICAgICB0aGlzLiRzZWN1cml0eS5nZXRDb25maWcoY29uZmlnID0+IHtcbiAgICAgICAgICAgICAgICAgICAgaWYoY29uZmlnICYmIGNvbmZpZy51c2VySW5mby51c2VySWQgIT09IHRoaXMubGFzdExvZ2dlZFVzZXJJZCkge1xuICAgICAgICAgICAgICAgICAgICAgICAgdGhpcy4kYXBwLmNsZWFyUGFnZUNhY2hlKCk7XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9LCBudWxsKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfSk7XG4gICAgICAgIHRoaXMuJGFwcC5zdWJzY3JpYmUoJ3VzZXJMb2dnZWRPdXQnLCAoKSA9PiB0aGlzLnNldExhbmRpbmdQYWdlKCkudGhlbigoKSA9PiB7XG4gICAgICAgICAgICB0aGlzLiRhcHAuY2xlYXJQYWdlQ2FjaGUoKTtcbiAgICAgICAgfSkpO1xuICAgICAgICB0aGlzLiRhcHAuc3Vic2NyaWJlKCdodHRwNDAxJywgKGQgPSB7fSkgPT4gdGhpcy5oYW5kbGU0MDEoZC5wYWdlLCBkLm9wdGlvbnMpKTtcbiAgICB9XG5cbiAgICAvKipcbiAgICAgKiBPbiBzZXNzaW9uIHRpbWVvdXQsIGlmIHRoZSBzZXNzaW9uIHRpbWVvdXQgY29uZmlnIGlzIHNldCB0byBhIGRpYWxvZywgdGhlbiBvcGVuIGxvZ2luIGRpYWxvZ1xuICAgICAqL1xuICAgIHByaXZhdGUgc2hvd0xvZ2luRGlhbG9nKCkge1xuICAgICAgICB0aGlzLiRzcGlubmVyLmhpZGUoJ2dsb2JhbFNwaW5uZXInKTtcbiAgICAgICAgLy8gUmVtb3ZpbmcgdGhlIGNsb3NlIGFsbCBkaWFsb2dzIGNhbGwsIHNvIHRoZSBleGlzdGluZyBkaWFsb2dzIHJlbWFpbiBvcGVuIGFuZFxuICAgICAgICAvLyB0aGUgbG9naW4gZGlhbG9nIGNvbWVzIG9uIHRvcCBvZiBpdC5cbiAgICAgICAgdGhpcy4kZGlhbG9nLm9wZW4oJ0NvbW1vbkxvZ2luRGlhbG9nJyk7XG4gICAgICAgIC8vIFNpbmNlIHRoZSBsb2dpbiBkaWFsb2cgaXMgY2xvc2VkIGFuZCBvcGVuZWQgaXRzIHVwZGF0ZWQgcHJvcGVydHkgaXNuJ3QgcmVhZCBieSBhbmd1bGFyLlxuICAgICAgICAvLyBIZW5jZSB3ZSB0cmlnZ2VyIHRoZSBkaWdlc3QgY3ljbGVcbiAgICAgICAgJGFwcERpZ2VzdCgpO1xuICAgIH1cblxuICAgIGxvYWRBcHBKUygpIHtcblxuICAgIH1cblxuICAgIGxvYWRDb21tb25QYWdlKCkge1xuXG4gICAgfVxuXG4gICAgbG9hZFNlY3VyaXR5Q29uZmlnKGZvcmNlRmxhZz86IGJvb2xlYW4pIHtcbiAgICAgICAgcmV0dXJuIHRoaXMuJHNlY3VyaXR5LmxvYWQoZm9yY2VGbGFnKS50aGVuKChyKSA9PiB7XG4gICAgICAgICAgICBpZiAoIXRoaXMuJGFwcC5sYW5kaW5nUGFnZU5hbWUpIHtcbiAgICAgICAgICAgICAgICB0aGlzLnNldExhbmRpbmdQYWdlKCk7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICByZXR1cm4gcjtcbiAgICAgICAgfSk7XG4gICAgfVxuXG4gICAgbG9hZE1ldGFkYXRhKCkge1xuICAgICAgICByZXR1cm4gdGhpcy4kbWV0YWRhdGEubG9hZCgpO1xuICAgIH1cblxuICAgIGxvYWRBcHBWYXJpYWJsZXModmFyaWFibGVzPzogYW55KSB7XG4gICAgICAgIGlmICh0aGlzLmFwcFZhcmlhYmxlc0xvYWRlZCkge1xuICAgICAgICAgICAgcmV0dXJuIFByb21pc2UucmVzb2x2ZSgpO1xuICAgICAgICB9XG5cbiAgICAgICAgY29uc3QgaW5pdCA9IHJlc3BvbnNlID0+IHtcbiAgICAgICAgICAgIGNvbnN0IGRhdGEgPSB0aGlzLiR2YXJpYWJsZXMucmVnaXN0ZXIoJ2FwcCcsIHJlc3BvbnNlLCB0aGlzLiRhcHApO1xuICAgICAgICAgICAgLy8gbm90IGFzc2lnbmluZyBkaXJlY3RseSB0byB0aGlzLiRhcHAgdG8ga2VlcCB0aGUgcmVmZXJlbmNlIGluIHRhY3RcbiAgICAgICAgICAgIF8uZXh0ZW5kKHRoaXMuJGFwcC5WYXJpYWJsZXMsIGRhdGEuVmFyaWFibGVzKTtcbiAgICAgICAgICAgIF8uZXh0ZW5kKHRoaXMuJGFwcC5BY3Rpb25zLCBkYXRhLkFjdGlvbnMpO1xuICAgICAgICAgICAgdGhpcy51cGRhdGVMb2dnZWRJblVzZXJWYXJpYWJsZSgpO1xuICAgICAgICAgICAgdGhpcy51cGRhdGVTdXBwb3J0ZWRMb2NhbGVWYXJpYWJsZSgpO1xuICAgICAgICAgICAgdGhpcy5hcHBWYXJpYWJsZXNMb2FkZWQgPSB0cnVlO1xuICAgICAgICAgICAgdGhpcy5hcHBWYXJpYWJsZXNGaXJlZCA9IGZhbHNlO1xuICAgICAgICB9O1xuXG4gICAgICAgIGlmIChpc0RlZmluZWQodmFyaWFibGVzKSkge1xuICAgICAgICAgICAgaW5pdCh2YXJpYWJsZXMpO1xuICAgICAgICAgICAgcmV0dXJuIFByb21pc2UucmVzb2x2ZSgpO1xuICAgICAgICB9XG5cbiAgICAgICAgcmV0dXJuIHRoaXMuJGh0dHAuZ2V0KCcuL2FwcC52YXJpYWJsZXMuanNvbicpLnRoZW4ocmVzcG9uc2UgPT4gaW5pdChyZXNwb25zZSkpO1xuICAgIH1cblxuICAgIC8qKlxuICAgICAqIGdldHRlciBhbmQgc2V0dGVyIGZvciB0aGUgcHJvcGVydHkgYXBwVmFyaWFibGVzRmlyZWRcbiAgICAgKiB0aGlzIGZsYWcgZGV0ZXJtaW5lcyBpZiB0aGUgYXBwIHZhcmlhYmxlcyh3aXRoIHN0YXJ0VXBkYXRlOnRydWUpIGhhdmUgYmVlbiBmaXJlZFxuICAgICAqIHRoZXkgc2hvdWxkIGdldCBmaXJlZCBvbmx5IG9uY2UgdGhyb3VnaCBhcHAgbGlmZWN5Y2xlXG4gICAgICogQHBhcmFtIHtib29sZWFufSBpc0ZpcmVkXG4gICAgICogQHJldHVybnMge2Jvb2xlYW59XG4gICAgICovXG4gICAgaXNBcHBWYXJpYWJsZXNGaXJlZChpc0ZpcmVkPzogYm9vbGVhbikge1xuICAgICAgICBpZiAoaXNEZWZpbmVkKGlzRmlyZWQpKSB7XG4gICAgICAgICAgICB0aGlzLmFwcFZhcmlhYmxlc0ZpcmVkID0gaXNGaXJlZDtcbiAgICAgICAgfVxuICAgICAgICByZXR1cm4gdGhpcy5hcHBWYXJpYWJsZXNGaXJlZDtcbiAgICB9XG5cbiAgICBwcml2YXRlIGNsZWFyTG9nZ2VkSW5Vc2VyVmFyaWFibGUodmFyaWFibGUpIHtcbiAgICAgICAgdmFyaWFibGUuaXNBdXRoZW50aWNhdGVkID0gZmFsc2U7XG4gICAgICAgIHZhcmlhYmxlLnJvbGVzICAgICAgICAgICA9IFtdO1xuICAgICAgICB2YXJpYWJsZS5uYW1lICAgICAgICAgICAgPSB1bmRlZmluZWQ7XG4gICAgICAgIHZhcmlhYmxlLmlkICAgICAgICAgICAgICA9IHVuZGVmaW5lZDtcbiAgICAgICAgdmFyaWFibGUudGVuYW50SWQgICAgICAgID0gdW5kZWZpbmVkO1xuICAgIH1cblxuICAgIHByaXZhdGUgdXBkYXRlTG9nZ2VkSW5Vc2VyVmFyaWFibGUoKSB7XG4gICAgICAgIGNvbnN0IGxvZ2dlZEluVXNlciA9IF8uZ2V0KHRoaXMuJGFwcCwgJ1ZhcmlhYmxlcy5sb2dnZWRJblVzZXIuZGF0YVNldCcpO1xuXG4gICAgICAgIC8vIHNhbml0eSBjaGVja1xuICAgICAgICBpZiAoIWxvZ2dlZEluVXNlcikge1xuICAgICAgICAgICAgcmV0dXJuO1xuICAgICAgICB9XG4gICAgICAgIHJldHVybiB0aGlzLiRzZWN1cml0eS5sb2FkKCkudGhlbigoKSA9PiB7XG4gICAgICAgICAgICBjb25zdCBzZWN1cml0eUNvbmZpZyA9IHRoaXMuJHNlY3VyaXR5LmdldCgpO1xuICAgICAgICAgICAgaWYgKHNlY3VyaXR5Q29uZmlnICYmIHNlY3VyaXR5Q29uZmlnLnNlY3VyaXR5RW5hYmxlZCAmJiBzZWN1cml0eUNvbmZpZy5hdXRoZW50aWNhdGVkKSB7XG4gICAgICAgICAgICAgICAgbG9nZ2VkSW5Vc2VyLmlzQXV0aGVudGljYXRlZCA9IHNlY3VyaXR5Q29uZmlnLmF1dGhlbnRpY2F0ZWQ7XG4gICAgICAgICAgICAgICAgbG9nZ2VkSW5Vc2VyLnJvbGVzICAgICAgICAgICA9IHNlY3VyaXR5Q29uZmlnLnVzZXJJbmZvLnVzZXJSb2xlcztcbiAgICAgICAgICAgICAgICBsb2dnZWRJblVzZXIubmFtZSAgICAgICAgICAgID0gc2VjdXJpdHlDb25maWcudXNlckluZm8udXNlck5hbWU7XG4gICAgICAgICAgICAgICAgbG9nZ2VkSW5Vc2VyLmlkICAgICAgICAgICAgICA9IHNlY3VyaXR5Q29uZmlnLnVzZXJJbmZvLnVzZXJJZDtcbiAgICAgICAgICAgICAgICBsb2dnZWRJblVzZXIudGVuYW50SWQgICAgICAgID0gc2VjdXJpdHlDb25maWcudXNlckluZm8udGVuYW50SWQ7XG4gICAgICAgICAgICAgICAgbG9nZ2VkSW5Vc2VyLnVzZXJBdHRyaWJ1dGVzICA9IHNlY3VyaXR5Q29uZmlnLnVzZXJJbmZvLnVzZXJBdHRyaWJ1dGVzOyAvLyBhc3NpZ24gdGhlIGV4dHJhIHVzZXJBdHRyaWJ1dGVzIGZvciBjdXN0b20gdXNhZ2UuXG4gICAgICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgICAgIHRoaXMuY2xlYXJMb2dnZWRJblVzZXJWYXJpYWJsZShsb2dnZWRJblVzZXIpO1xuICAgICAgICAgICAgICAgIGxvZ2dlZEluVXNlci5pc1NlY3VyaXR5RW5hYmxlZCA9IHNlY3VyaXR5Q29uZmlnICYmIHNlY3VyaXR5Q29uZmlnLnNlY3VyaXR5RW5hYmxlZDtcbiAgICAgICAgICAgICAgICB0aHJvdyBudWxsO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgcmV0dXJuIHNlY3VyaXR5Q29uZmlnO1xuICAgICAgICB9KS5jYXRjaChlcnIgPT4ge1xuICAgICAgICAgICAgbG9nZ2VkSW5Vc2VyLmlzQXV0aGVudGljYXRlZCA9IGZhbHNlO1xuICAgICAgICAgICAgbG9nZ2VkSW5Vc2VyLnJvbGVzICAgICAgICAgICA9IFtdO1xuICAgICAgICAgICAgbG9nZ2VkSW5Vc2VyLm5hbWUgICAgICAgICAgICA9IHVuZGVmaW5lZDtcbiAgICAgICAgICAgIGxvZ2dlZEluVXNlci5pZCAgICAgICAgICAgICAgPSB1bmRlZmluZWQ7XG4gICAgICAgICAgICBsb2dnZWRJblVzZXIudGVuYW50SWQgICAgICAgID0gdW5kZWZpbmVkO1xuICAgICAgICAgICAgbG9nZ2VkSW5Vc2VyLnVzZXJBdHRyaWJ1dGVzICA9IHt9O1xuICAgICAgICB9KTtcbiAgICB9XG5cbiAgICAvKipcbiAgICAgKiBPdmVycmlkaW5nIHRoZSBhcHAgdmFyaWFibGUgc3VwcG9ydGVkIGxvY2FsZSB3aXRoIHRoZSB3bVByb3BlcnRpZXMgaTE4biBEYXRhVmFsdWVzXG4gICAgICpcbiAgICAgKiBUT0RPW1ZpYmh1XTpcbiAgICAgKiBDYW4gd3JpdGUgYSBzaW1wbGUgbWlncmF0aW9uIHRvIHN5bmMgdGhlIHN1cHBvcnRlZExvY2FsZSB2YXJpYWJsZSB3aXRoICdfV01fQVBQX1BST1BFUlRJRVMuc3VwcG9ydGVkTGFuZ3VhZ2VzJ1xuICAgICAqIEhlbmNlLCB0aGlzIG1heSBub3QgYmUgcmVxdWlyZWRcbiAgICAgKlxuICAgICAqL1xuICAgIHVwZGF0ZVN1cHBvcnRlZExvY2FsZVZhcmlhYmxlKCkge1xuICAgICAgICBjb25zdCBzdXBwb3J0ZWRMb2NhbGVWYXIgPSBfLmdldCh0aGlzLiRhcHAsICdWYXJpYWJsZXMuc3VwcG9ydGVkTG9jYWxlJyk7XG4gICAgfVxuXG4gICAgaGFuZGxlU1NPTG9naW4oY29uZmlnKSB7XG4gICAgICAgIGNvbnN0IFNTT19VUkwgPSAnc2VydmljZXMvc2VjdXJpdHkvc3NvbG9naW4nLFxuICAgICAgICAgICAgUFJFVklFV19XSU5ET1dfTkFNRSA9ICdXTV9QUkVWSUVXX1dJTkRPVyc7XG4gICAgICAgIGxldCBwYWdlLFxuICAgICAgICAgICAgcGFnZVBhcmFtcztcblxuICAgICAgICAvLyBkbyBub3QgcHJvdmlkZSByZWRpcmVjdFRvIHBhZ2UgaWYgZmV0Y2hpbmcgSE9NRSBwYWdlIHJlc3VsdGVkIDQwMVxuICAgICAgICAvLyBvbiBhcHAgbG9hZCwgYnkgZGVmYXVsdCBIb21lIHBhZ2UgaXMgbG9hZGVkXG4gICAgICAgIHBhZ2UgPSB0aGlzLiRzZWN1cml0eS5nZXRSZWRpcmVjdFBhZ2UoY29uZmlnKTtcblxuICAgICAgICBpZiAoQ09OU1RBTlRTLmhhc0NvcmRvdmEpIHtcbiAgICAgICAgICAgIC8vIGdldCBwcmV2aW91c2x5IGxvZ2dlZEluVXNlciBuYW1lIChpZiBhbnkpXG4gICAgICAgICAgICBjb25zdCBsYXN0TG9nZ2VkSW5Vc2VybmFtZSA9IF8uZ2V0KHRoaXMuJHNlY3VyaXR5LmdldCgpLCAndXNlckluZm8udXNlck5hbWUnKTtcbiAgICAgICAgICAgIHRoaXMuJHNlY3VyaXR5LmF1dGhJbkJyb3dzZXIoKVxuICAgICAgICAgICAgICAgIC50aGVuKCgpID0+IHRoaXMucmVsb2FkQXBwRGF0YSgpKVxuICAgICAgICAgICAgICAgIC50aGVuKCgpID0+IHtcbiAgICAgICAgICAgICAgICAgICAgY29uc3QgcHJlc2VudExvZ2dlZEluVXNlcm5hbWUgPSBfLmdldCh0aGlzLiRzZWN1cml0eS5nZXQoKSwgJ3VzZXJJbmZvLnVzZXJOYW1lJyk7XG4gICAgICAgICAgICAgICAgICAgIGlmIChwcmVzZW50TG9nZ2VkSW5Vc2VybmFtZSAmJiBwcmVzZW50TG9nZ2VkSW5Vc2VybmFtZSA9PT0gbGFzdExvZ2dlZEluVXNlcm5hbWUpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIHJvdXRlclNlcnZpY2UubmF2aWdhdGUoW3BhZ2VdKTtcbiAgICAgICAgICAgICAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIHJvdXRlclNlcnZpY2UubmF2aWdhdGUoW2AvYF0pO1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfSk7XG4gICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICBwYWdlID0gcGFnZSA/ICc/cmVkaXJlY3RQYWdlPScgKyBlbmNvZGVVUklDb21wb25lbnQocGFnZSkgOiAnJztcbiAgICAgICAgICAgIHBhZ2VQYXJhbXMgPSB0aGlzLiRzZWN1cml0eS5nZXRRdWVyeVN0cmluZyh0aGlzLiRzZWN1cml0eS5nZXRSZWRpcmVjdGVkUm91dGVRdWVyeVBhcmFtcygpKTtcbiAgICAgICAgICAgIHBhZ2VQYXJhbXMgPSBwYWdlUGFyYW1zID8gJz8nICsgcGFnZVBhcmFtcyA6ICcnO1xuICAgICAgICAgICAgLy8gc2hvd2luZyBhIHJlZGlyZWN0aW5nIG1lc3NhZ2VcbiAgICAgICAgICAgIGRvY3VtZW50LmJvZHkudGV4dENvbnRlbnQgPSBfLmdldCh0aGlzLmdldEFwcExvY2FsZSgpLCBbJ01FU1NBR0VfTE9HSU5fUkVESVJFQ1RJT04nXSkgfHwgJ1JlZGlyZWN0aW5nIHRvIHNzbyBsb2dpbi4uLic7XG4gICAgICAgICAgICAvLyBhcHBlbmRpbmcgcmVkaXJlY3QgdG8gcGFnZSBhbmQgcGFnZSBwYXJhbXNcbiAgICAgICAgICAgIGNvbnN0IHNzb1VybCA9IHRoaXMuZ2V0RGVwbG95ZWRVUkwoKSArIFNTT19VUkwgKyBwYWdlICsgcGFnZVBhcmFtcztcbiAgICAgICAgICAgIC8qXG4gICAgICAgICAgICAgKiByZW1vdmUgaUZyYW1lIHdoZW4gcmVkaXJlY3RlZCB0byBJZFAgbG9naW4gcGFnZS5cbiAgICAgICAgICAgICAqIHRoaXMgaXMgYmVpbmcgZG9uZSBhcyBJRFBzIGRvIG5vdCBhbGxvdyB0byBnZXQgdGhlbXNlbHZlcyBsb2FkZWQgaW50byBpRnJhbWVzLlxuICAgICAgICAgICAgICogcmVtb3ZlLXRvb2xiYXIgaGFzIGJlZW4gYXNzaWduZWQgd2l0aCBhIHdpbmRvdyBuYW1lIFdNX1BSRVZJRVdfV0lORE9XLCBjaGVjayBpZiB0aGUgaWZyYW1lIGlzIG91ciB0b29sYmFyIHJlbGF0ZWQgYW5kXG4gICAgICAgICAgICAgKiBzYWZlbHkgY2hhbmdlIHRoZSBsb2NhdGlvbiBvZiB0aGUgcGFyZW50IHRvb2xiYXIgd2l0aCBjdXJyZW50IHVybC5cbiAgICAgICAgICAgICAqL1xuICAgICAgICAgICAgaWYgKHdpbmRvdy5zZWxmICE9PSB3aW5kb3cudG9wKSB7XG4gICAgICAgICAgICAgICAgdHJ5IHtcbiAgICAgICAgICAgICAgICAgICAgaWYgKHdpbmRvdy5wYXJlbnQgJiYgd2luZG93LmxvY2F0aW9uLm9yaWdpbiA9PT0gd2luZG93LnBhcmVudC5vcmlnaW4pe1xuICAgICAgICAgICAgICAgICAgICAgICAgaWYod2luZG93LnBhcmVudC5uYW1lID09PSBQUkVWSUVXX1dJTkRPV19OQU1FKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgd2luZG93LnBhcmVudC5sb2NhdGlvbi5ocmVmID0gd2luZG93LnNlbGYubG9jYXRpb24uaHJlZjtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB3aW5kb3cucGFyZW50Lm5hbWUgPSBcIlwiXG4gICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICAgICAgICAgICAgICB3aW5kb3cubG9jYXRpb24uaHJlZiA9IHNzb1VybFxuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfSBjYXRjaCAoZXJyb3IpIHtcbiAgICAgICAgICAgICAgICAgICAgd2luZG93LmxvY2F0aW9uLmhyZWYgPSBzc29Vcmw7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgICAgICB3aW5kb3cubG9jYXRpb24uaHJlZiA9IHNzb1VybDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cblxuICAgIC8qKlxuICAgICAqIEhhbmRsZXMgdGhlIGFwcCB3aGVuIGEgWEhSIHJlcXVlc3QgcmV0dXJucyA0MDEgcmVzcG9uc2VcbiAgICAgKiBJZiBubyB1c2VyIHdhcyBsb2dnZWQgaW4gYmVmb3JlIDQwMSBvY2N1cnJlZCwgRmlyc3QgdGltZSBMb2dpbiBpcyBzaW11bGF0ZWRcbiAgICAgKiBFbHNlLCBhIHNlc3Npb24gdGltZW91dCBoYXMgb2NjdXJyZWQgYW5kIHRoZSBzYW1lIGlzIHNpbXVsYXRlZFxuICAgICAqIEBwYXJhbSBwYWdlICBpZiBwcm92aWRlZCwgcmVwcmVzZW50cyB0aGUgcGFnZSBuYW1lIGZvciB3aGljaCBYSFIgcmVxdWVzdCByZXR1cm5lZCA0MDEsIG9uIHJlLWxvZ2luXG4gICAgICogICAgICAgICAgICAgIGlmIG5vdCBwcm92aWRlZCwgYSBzZXJ2aWNlIHJlcXVlc3QgcmV0dXJuZWQgNDAxXG4gICAgICogQHBhcmFtIG9uU3VjY2VzcyBzdWNjZXNzIGhhbmRsZXJcbiAgICAgKiBAcGFyYW0gb25FcnJvciBlcnJvciBoYW5kbGVyXG4gICAgICovXG4gICAgaGFuZGxlNDAxKHBhZ2U/LCBvcHRpb25zPykge1xuICAgICAgICBsZXQgc2Vzc2lvblRpbWVvdXRDb25maWcsXG4gICAgICAgICAgICBzZXNzaW9uVGltZW91dE1ldGhvZCxcbiAgICAgICAgICAgIGxvZ2luQ29uZmlnLFxuICAgICAgICAgICAgbG9naW5NZXRob2Q7XG4gICAgICAgIGNvbnN0IExPR0lOX01FVEhPRCA9IHtcbiAgICAgICAgICAgICAgICAnRElBTE9HJyA6ICdESUFMT0cnLFxuICAgICAgICAgICAgICAgICdQQUdFJyAgIDogJ1BBR0UnLFxuICAgICAgICAgICAgICAgICdTU08nICAgIDogJ1NTTydcbiAgICAgICAgICAgIH07XG5cbiAgICAgICAgY29uc3QgY29uZmlnID0gdGhpcy4kc2VjdXJpdHkuZ2V0KCk7XG4gICAgICAgIGxldCBxdWVyeVBhcmFtc09iaiA9IHt9O1xuICAgICAgICBsb2dpbkNvbmZpZyA9IGNvbmZpZy5sb2dpbkNvbmZpZztcbiAgICAgICAgdGhpcy5sYXN0TG9nZ2VkVXNlcklkID0gY29uZmlnLnVzZXJJbmZvICYmIGNvbmZpZy51c2VySW5mby51c2VySWQ7XG4gICAgICAgIC8vIGlmIHVzZXIgZm91bmQsIDQwMSB3YXMgdGhyb3duIGFmdGVyIHNlc3Npb24gdGltZVxuICAgICAgICBpZiAoY29uZmlnLnVzZXJJbmZvICYmIGNvbmZpZy51c2VySW5mby51c2VyTmFtZSkge1xuICAgICAgICAgICAgY29uZmlnLmF1dGhlbnRpY2F0ZWQgPSBmYWxzZTtcbiAgICAgICAgICAgIHNlc3Npb25UaW1lb3V0Q29uZmlnID0gbG9naW5Db25maWcuc2Vzc2lvblRpbWVvdXQgfHwgeyd0eXBlJzogTE9HSU5fTUVUSE9ELkRJQUxPR307XG4gICAgICAgICAgICBzZXNzaW9uVGltZW91dE1ldGhvZCA9IHNlc3Npb25UaW1lb3V0Q29uZmlnLnR5cGUudG9VcHBlckNhc2UoKTtcbiAgICAgICAgICAgIHN3aXRjaCAoc2Vzc2lvblRpbWVvdXRNZXRob2QpIHtcbiAgICAgICAgICAgICAgICBjYXNlIExPR0lOX01FVEhPRC5ESUFMT0c6XG4gICAgICAgICAgICAgICAgICAgIHRoaXMuc2hvd0xvZ2luRGlhbG9nKCk7XG4gICAgICAgICAgICAgICAgICAgIGJyZWFrO1xuICAgICAgICAgICAgICAgIGNhc2UgTE9HSU5fTUVUSE9ELlBBR0U6XG4gICAgICAgICAgICAgICAgICAgIGlmICghcGFnZSkge1xuICAgICAgICAgICAgICAgICAgICAgICAgcGFnZSA9IHRoaXMuJHNlY3VyaXR5LmdldEN1cnJlbnRSb3V0ZVBhZ2UoKTtcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICBxdWVyeVBhcmFtc09ialsncmVkaXJlY3RUbyddID0gcGFnZTtcbiAgICAgICAgICAgICAgICAgICAgLy8gQWRkaW5nIHF1ZXJ5IHBhcmFtcyhwYWdlIHBhcmFtcyBvZiBwYWdlIGJlaW5nIHJlZGlyZWN0ZWQgdG8pIHRvIHRoZSBVUkwuXG4gICAgICAgICAgICAgICAgICAgIHF1ZXJ5UGFyYW1zT2JqID0gXy5tZXJnZShxdWVyeVBhcmFtc09iaiwgdGhpcy4kc2VjdXJpdHkuZ2V0UmVkaXJlY3RlZFJvdXRlUXVlcnlQYXJhbXMoKSk7XG4gICAgICAgICAgICAgICAgICAgIC8vIHRoZSByZWRpcmVjdCBwYWdlIHNob3VsZCBub3QgYmUgc2FtZSBhcyBzZXNzaW9uIHRpbWVvdXQgbG9naW4gcGFnZVxuICAgICAgICAgICAgICAgICAgICBpZiAoIHBhZ2UgIT09IHNlc3Npb25UaW1lb3V0Q29uZmlnLnBhZ2VOYW1lKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICB0aGlzLiRyb3V0ZXIubmF2aWdhdGUoW3Nlc3Npb25UaW1lb3V0Q29uZmlnLnBhZ2VOYW1lXSwge3F1ZXJ5UGFyYW1zOiBxdWVyeVBhcmFtc09ian0pO1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgIGJyZWFrO1xuICAgICAgICAgICAgICAgIGNhc2UgTE9HSU5fTUVUSE9ELlNTTzpcbiAgICAgICAgICAgICAgICAgICAgdGhpcy5oYW5kbGVTU09Mb2dpbihjb25maWcpO1xuICAgICAgICAgICAgICAgICAgICBicmVhaztcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIHRoaXMuc2V0TGFuZGluZ1BhZ2UoKTtcbiAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgIC8vIGlmIG5vIHVzZXIgZm91bmQsIDQwMSB3YXMgdGhyb3duIGZvciBmaXJzdCB0aW1lIGxvZ2luXG4gICAgICAgICAgICBsb2dpbk1ldGhvZCA9IGxvZ2luQ29uZmlnLnR5cGUudG9VcHBlckNhc2UoKTtcbiAgICAgICAgICAgIHN3aXRjaCAobG9naW5NZXRob2QpIHtcbiAgICAgICAgICAgICAgICBjYXNlIExPR0lOX01FVEhPRC5ESUFMT0c6XG4gICAgICAgICAgICAgICAgICAgIC8vIFRocm91Z2ggbG9naW5EaWFsb2csIHVzZXIgd2lsbCByZW1haW4gaW4gdGhlIGN1cnJlbnQgc3RhdGUgYW5kIGZhaWxlZCBjYWxscyB3aWxsIGJlIGV4ZWN1dGVkIHBvc3QgbG9naW4gdGhyb3VnaCBMb2dpblZhcmlhYmxlU2VydmljZS5cbiAgICAgICAgICAgICAgICAgICAgLy8gTk9URTogdXNlciB3aWxsIGJlIHJlZGlyZWN0ZWQgdG8gcmVzcGVjdGl2ZSBsYW5kaW5nIHBhZ2Ugb25seSBpZiBkaWFsb2cgaXMgb3BlbmVkIG1hbnVhbGx5KG5vdCB0aHJvdWdoIGEgZmFpbGVkIDQwMSBjYWxsKS5cbiAgICAgICAgICAgICAgICAgICAgdGhpcy5ub1JlZGlyZWN0KHRydWUpO1xuICAgICAgICAgICAgICAgICAgICB0aGlzLnNob3dMb2dpbkRpYWxvZygpO1xuICAgICAgICAgICAgICAgICAgICBicmVhaztcbiAgICAgICAgICAgICAgICBjYXNlIExPR0lOX01FVEhPRC5QQUdFOlxuICAgICAgICAgICAgICAgICAgICAvLyBkbyBub3QgcHJvdmlkZSByZWRpcmVjdFRvIHBhZ2UgaWYgZmV0Y2hpbmcgSE9NRSBwYWdlIHJlc3VsdGVkIDQwMVxuICAgICAgICAgICAgICAgICAgICAvLyBvbiBhcHAgbG9hZCwgYnkgZGVmYXVsdCBIb21lIHBhZ2UgaXMgbG9hZGVkXG4gICAgICAgICAgICAgICAgICAgIHBhZ2UgPSB0aGlzLiRzZWN1cml0eS5nZXRSZWRpcmVjdFBhZ2UoY29uZmlnLCBwYWdlKTtcbiAgICAgICAgICAgICAgICAgICAgcXVlcnlQYXJhbXNPYmpbJ3JlZGlyZWN0VG8nXSA9IHBhZ2U7XG4gICAgICAgICAgICAgICAgICAgIGNvbnN0IGV4dHJhUXVlcnlQYXJhbXMgPSAob3B0aW9ucyAmJiBvcHRpb25zLnF1ZXJ5UGFyYW1zKSB8fCB0aGlzLiRzZWN1cml0eS5nZXRSZWRpcmVjdGVkUm91dGVRdWVyeVBhcmFtcygpO1xuICAgICAgICAgICAgICAgICAgICBxdWVyeVBhcmFtc09iaiA9IF8ubWVyZ2UocXVlcnlQYXJhbXNPYmosIGV4dHJhUXVlcnlQYXJhbXMpO1xuICAgICAgICAgICAgICAgICAgICB0aGlzLiRyb3V0ZXIubmF2aWdhdGUoW2xvZ2luQ29uZmlnLnBhZ2VOYW1lXSwge3F1ZXJ5UGFyYW1zOiBxdWVyeVBhcmFtc09ian0pO1xuICAgICAgICAgICAgICAgICAgICB0aGlzLiRhcHAubGFuZGluZ1BhZ2VOYW1lID0gbG9naW5Db25maWcucGFnZU5hbWU7XG4gICAgICAgICAgICAgICAgICAgIGJyZWFrO1xuICAgICAgICAgICAgICAgIGNhc2UgTE9HSU5fTUVUSE9ELlNTTzpcbiAgICAgICAgICAgICAgICAgICAgdGhpcy5oYW5kbGVTU09Mb2dpbihjb25maWcpO1xuICAgICAgICAgICAgICAgICAgICBicmVhaztcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cblxuICAgIC8qKlxuICAgICAqIFVwZGF0ZXMgZGF0YSBkZXBlbmRlbnQgb24gbG9nZ2VkIGluIHVzZXJcbiAgICAgKiBSZWxvYWRzIHNlY3VyaXR5IGNvbmZpZywgbWV0YWRhdGFcbiAgICAgKiBVcGRhdGVzIHRoZSBsb2dnZWRJblVzZXJWYXJpYWJsZVxuICAgICAqIEByZXR1cm5zIHtQcm9taXNlPHZvaWQ+fVxuICAgICAqL1xuICAgIHJlbG9hZEFwcERhdGEoKSB7XG4gICAgICAgIHJldHVybiB0aGlzLmxvYWRTZWN1cml0eUNvbmZpZyh0cnVlKS50aGVuKCgpID0+IHtcbiAgICAgICAgICAgIHJldHVybiB0aGlzLmxvYWRNZXRhZGF0YSgpLnRoZW4oKCkgPT4ge1xuICAgICAgICAgICAgICAgIHJldHVybiB0aGlzLnVwZGF0ZUxvZ2dlZEluVXNlclZhcmlhYmxlKCk7XG4gICAgICAgICAgICB9KTtcbiAgICAgICAgfSk7XG4gICAgfVxuXG4gICAgbm9SZWRpcmVjdCh2YWx1ZT86IGJvb2xlYW4pIHtcbiAgICAgICAgaWYgKF8uaXNVbmRlZmluZWQodmFsdWUpKSB7XG4gICAgICAgICAgICByZXR1cm4gdGhpcy5fbm9SZWRpcmVjdDtcbiAgICAgICAgfVxuXG4gICAgICAgIHRoaXMuX25vUmVkaXJlY3QgPSB2YWx1ZTtcbiAgICAgICAgcmV0dXJuIHRoaXMuX25vUmVkaXJlY3Q7XG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogaW52b2tlcyBzZXNzaW9uIGZhaWx1cmUgcmVxdWVzdHNcbiAgICAgKi9cbiAgICBleGVjdXRlU2Vzc2lvbkZhaWx1cmVSZXF1ZXN0cygpIHtcbiAgICAgICAgdGhpcy4kaHR0cC5leGVjdXRlU2Vzc2lvbkZhaWx1cmVSZXF1ZXN0cygpO1xuICAgIH1cblxuICAgIHB1c2hUb1Nlc3Npb25GYWlsdXJlUmVxdWVzdHMoY2FsbGJhY2spIHtcbiAgICAgICAgdGhpcy4kaHR0cC5wdXNoVG9TZXNzaW9uRmFpbHVyZVF1ZXVlKGNhbGxiYWNrKTtcbiAgICB9XG5cbiAgICBwdWJsaWMgZ2V0RGVwbG95ZWRVUkwoKSB7XG4gICAgICAgIHJldHVybiB0aGlzLiRhcHAuZGVwbG95ZWRVcmwgPyB0aGlzLiRhcHAuZGVwbG95ZWRVcmwgOiAkcm9vdFNjb3BlLnByb2plY3QuZGVwbG95ZWRVcmw7XG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogRmV0Y2hlcyB0aGUgY3VzdG9tdXJsc2NoZW1lIGZvciBhIG1vYmlsZSBhcHBcbiAgICAgKiB3aGljaCBpcyB1c2VkIGZvciByZWRpcmVjdGlvbiBiYWNrIHRvIHRoZSBhcHAgZnJvbSBicm93c2VyIGluIGltcGxpY2l0IG9BdXRoIGZsb3dcbiAgICAgKiBAcmV0dXJucyB7c3RyaW5nfVxuICAgICAqL1xuICAgIHB1YmxpYyBnZXRDdXN0b21VcmxTY2hlbWUoKSB7XG4gICAgICAgIHJldHVybiB0aGlzLiRhcHAuY3VzdG9tVXJsU2NoZW1lO1xuICAgIH1cblxuICAgIG5vdGlmeShldmVudE5hbWUsIGRhdGEpIHtcbiAgICAgICAgdGhpcy4kYXBwLm5vdGlmeShldmVudE5hbWUsIGRhdGEpO1xuICAgIH1cblxuICAgIHN1YnNjcmliZShldmVudE5hbWUsIGRhdGEpIHtcbiAgICAgICAgcmV0dXJuIHRoaXMuJGFwcC5zdWJzY3JpYmUoZXZlbnROYW1lLCBkYXRhKTtcbiAgICB9XG5cbiAgICBnZXRBY3RpdmVQYWdlKCkge1xuICAgICAgICByZXR1cm4gdGhpcy4kYXBwLmFjdGl2ZVBhZ2U7XG4gICAgfVxuXG4gICAgZ2V0QXBwTG9jYWxlKCkge1xuICAgICAgICByZXR1cm4gdGhpcy4kYXBwLmFwcExvY2FsZTtcbiAgICB9XG5cbiAgICBnZXRTZWxlY3RlZExvY2FsZSgpIHtcbiAgICAgICAgcmV0dXJuIHRoaXMuJGkxOG4uZ2V0U2VsZWN0ZWRMb2NhbGUoKTtcbiAgICB9XG5cbiAgICBub3RpZnlBcHAodGVtcGxhdGUsIHR5cGUsIHRpdGxlPykge1xuICAgICAgICB0aGlzLiRhcHAubm90aWZ5QXBwKHRlbXBsYXRlLCB0eXBlLCB0aXRsZSk7XG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogVHJpZ2dlcnMgdGhlIG9uQmVmb3JlU2VydmljZSBtZXRob2QgZGVmaW5lZCBpbiBhcHAuanMgb2YgdGhlIGFwcFxuICAgICAqIEBwYXJhbSByZXF1ZXN0UGFyYW1zXG4gICAgICovXG4gICAgYXBwT25CZWZvcmVTZXJ2aWNlQ2FsbChyZXF1ZXN0UGFyYW1zOiBhbnkpIHtcbiAgICAgICAgcmV0dXJuIHRyaWdnZXJGbih0aGlzLiRhcHAub25CZWZvcmVTZXJ2aWNlQ2FsbCwgcmVxdWVzdFBhcmFtcyk7XG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogVHJpZ2dlcnMgdGhlIG9uU2VydmljZVN1Y2Nlc3MgbWV0aG9kIGRlZmluZWQgaW4gYXBwLmpzIG9mIHRoZSBhcHBcbiAgICAgKiBAcGFyYW0gZGF0YVxuICAgICAqIEBwYXJhbSB4aHJPYmpcbiAgICAgKi9cbiAgICBhcHBPblNlcnZpY2VTdWNjZXNzKGRhdGE6IGFueSwgeGhyT2JqOiBhbnkpIHtcbiAgICAgICAgcmV0dXJuIHRyaWdnZXJGbih0aGlzLiRhcHAub25TZXJ2aWNlU3VjY2VzcywgZGF0YSwgeGhyT2JqKTtcbiAgICB9XG5cbiAgICAvKipcbiAgICAgKiBUcmlnZ2VycyB0aGUgb25TZXJ2aWNlRXJyb3IgbWV0aG9kIGRlZmluZWQgaW4gYXBwLmpzIG9mIHRoZSBhcHBcbiAgICAgKiBAcGFyYW0gZGF0YVxuICAgICAqIEBwYXJhbSB4aHJPYlxuICAgICAqL1xuICAgIGFwcE9uU2VydmljZUVycm9yKGRhdGE6IGFueSwgeGhyT2I/OiBhbnkpIHtcbiAgICAgICAgcmV0dXJuIHRyaWdnZXJGbih0aGlzLiRhcHAub25TZXJ2aWNlRXJyb3IsIGRhdGEsIHhock9iKTtcbiAgICB9XG5cbiAgICAvKipcbiAgICAgKiBUcmlnZ2VycyB0aGUgYXBwVmFyaWFibGVzUmVhZHkgbWV0aG9kIGRlZmluZWQgaW4gYXBwLmpzIG9mIHRoZSBhcHBcbiAgICAgKi9cbiAgICBhcHBWYXJpYWJsZXNSZWFkeSgpIHtcbiAgICAgICAgdHJpZ2dlckZuKHRoaXMuJGFwcC5vbkFwcFZhcmlhYmxlc1JlYWR5KTtcbiAgICB9XG5cbiAgICAvKipcbiAgICAgKiBUcmlnZ2VycyB0aGUgb25CZWZvcmVBcHBSZWFkeSBtZXRob2QgZGVmaW5lZCBpbiBhcHAuanMgb2YgdGhlIGFwcFxuICAgICAqL1xuICAgIGJlZm9yZUFwcFJlYWR5KCkge1xuICAgICAgICB0cmlnZ2VyRm4odGhpcy4kYXBwLm9uQmVmb3JlQXBwUmVhZHkpO1xuICAgIH1cblxuICAgIC8qKlxuICAgICAqIFJldHVybnMgdGhlIHBpcGUgYmFzZWQgb24gdGhlIGlucHV0XG4gICAgICovXG4gICAgZ2V0UGlwZShwaXBlKSB7XG4gICAgICAgIGlmIChwaXBlID09PSAnZGF0ZScpIHtcbiAgICAgICAgICAgIHJldHVybiB0aGlzLiRkYXRlUGlwZTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIHByaXZhdGUgc2V0TGFuZGluZ1BhZ2UoKSB7XG4gICAgICAgIHJldHVybiB0aGlzLiRzZWN1cml0eS5nZXRQYWdlQnlMb2dnZWRJblVzZXIoKS50aGVuKHAgPT4gdGhpcy4kYXBwLmxhbmRpbmdQYWdlTmFtZSA9IDxzdHJpbmc+IHApO1xuICAgIH1cblxuICAgIC8qKlxuICAgICAqIHJldHVybiB0cnVlIGlmIHByZWZhYiB0eXBlIGFwcFxuICAgICAqIEByZXR1cm5zIHtib29sZWFufVxuICAgICAqL1xuICAgIGlzUHJlZmFiVHlwZSgpIHtcbiAgICAgICAgcmV0dXJuIHRoaXMuJGFwcC5pc1ByZWZhYlR5cGU7XG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogcmV0dXJuIHRydWUgaWYgdGVtcGxhdGUgYnVuZGxlIHR5cGUgYXBwXG4gICAgICogQHJldHVybnMge2Jvb2xlYW59XG4gICAgICovXG4gICAgaXNUZW1wbGF0ZUJ1bmRsZVR5cGUoKSB7XG4gICAgICAgIHJldHVybiB0aGlzLiRhcHAuaXNUZW1wbGF0ZUJ1bmRsZVR5cGU7XG4gICAgfVxuXG4gICAgcG9zdE1lc3NhZ2UoY29udGVudCkge1xuICAgICAgICB3aW5kb3cudG9wLnBvc3RNZXNzYWdlKGNvbnRlbnQsICcqJyk7XG4gICAgfVxuXG4gICAgc2hvd1RlbXBsYXRlKGlkeCkge1xuICAgICAgICBjb25zdCB0ZW1wbGF0ZSA9IHRoaXMudGVtcGxhdGVzW2lkeF07XG4gICAgICAgIC8vIHNjb3BlLmFjdGl2ZVRlbXBsYXRlSW5kZXggPSBpZHg7XG4gICAgICAgIHRoaXMuJHJvdXRlci5uYXZpZ2F0ZShbdGVtcGxhdGUuaWRdKTtcbiAgICB9XG4gICAgcG9zdFRlbXBsYXRlQnVuZGxlSW5mbygpIHtcblxuICAgICAgICB3aW5kb3cub25tZXNzYWdlID0gKGV2dCkgPT4ge1xuICAgICAgICAgICAgY29uc3QgbXNnRGF0YSA9IGV2dC5kYXRhO1xuXG4gICAgICAgICAgICBpZiAoIV8uaXNPYmplY3QobXNnRGF0YSkpIHtcbiAgICAgICAgICAgICAgICByZXR1cm47XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIGNvbnN0IGtleSA9IG1zZ0RhdGEua2V5O1xuXG4gICAgICAgICAgICBzd2l0Y2ggKGtleSkge1xuICAgICAgICAgICAgICAgIGNhc2UgUE9TVF9NRVNTQUdFUy5ISURFX1RFTVBMQVRFU19TSE9XX0NBU0U6XG4gICAgICAgICAgICAgICAgICAgIC8vIHNjb3BlLmhpZGVTaG93Q2FzZSA9IHRydWU7XG4gICAgICAgICAgICAgICAgICAgIGJyZWFrO1xuICAgICAgICAgICAgICAgIGNhc2UgUE9TVF9NRVNTQUdFUy5TRUxFQ1RfVEVNUExBVEU6XG4gICAgICAgICAgICAgICAgICAgIHRoaXMuc2hvd1RlbXBsYXRlKG1zZ0RhdGEudGVtcGxhdGVJbmRleCk7XG4gICAgICAgICAgICAgICAgICAgIGJyZWFrO1xuICAgICAgICAgICAgfVxuICAgICAgICB9O1xuXG4gICAgICAgIHNldFRpbWVvdXQoKCkgPT4ge1xuICAgICAgICAgICAgdGhpcy5wb3N0TWVzc2FnZSh7a2V5OiBQT1NUX01FU1NBR0VTLk9OX0xPQUR9KTtcbiAgICAgICAgfSk7XG5cbiAgICAgICAgcmV0dXJuIGZldGNoQ29udGVudCgnanNvbicsICcuL2NvbmZpZy5qc29uJywgdHJ1ZSwgcmVzcG9uc2UgPT4ge1xuICAgICAgICAgICAgdGhpcy50ZW1wbGF0ZXMgPSBbXTtcbiAgICAgICAgICAgIGlmICghcmVzcG9uc2UuZXJyb3IpIHtcbiAgICAgICAgICAgICAgICB0aGlzLnRlbXBsYXRlcyA9IHJlc3BvbnNlLnRlbXBsYXRlcztcbiAgICAgICAgICAgICAgICB0aGlzLnBvc3RNZXNzYWdlKHsna2V5JzogUE9TVF9NRVNTQUdFUy5URU1QTEFURUJVTkRMRV9DT05GSUcsICdjb25maWcnOiByZXNwb25zZX0pO1xuICAgICAgICAgICAgfVxuICAgICAgICB9KTtcbiAgICB9XG5cbiAgICBwb3N0QXBwVHlwZUluZm8oKSB7XG4gICAgICAgIGlmICh0aGlzLmlzVGVtcGxhdGVCdW5kbGVUeXBlKCkpIHtcbiAgICAgICAgICAgIHJldHVybiB0aGlzLnBvc3RUZW1wbGF0ZUJ1bmRsZUluZm8oKTtcbiAgICAgICAgfVxuICAgIH1cbn1cbiJdfQ==