@wavemaker/app-ng-runtime 11.10.5-rc.6100 → 11.11.0-1.6140

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 (1174) hide show
  1. package/build-task/bundles/index.umd.js +94 -68
  2. package/build-task/esm2022/advanced/carousel/carousel-template/carousel-template.build.mjs +8 -8
  3. package/build-task/esm2022/containers/repeat-template.build.mjs +5 -5
  4. package/build-task/esm2022/containers/wizard/wizard-step/wizard-step.build.mjs +2 -2
  5. package/build-task/esm2022/containers/wizard/wizard.build.mjs +33 -4
  6. package/build-task/esm2022/data/form/form-field/form-field.build.mjs +10 -10
  7. package/build-task/esm2022/data/table/table-column/table-column.build.mjs +15 -11
  8. package/build-task/esm2022/page/page.build.mjs +2 -8
  9. package/build-task/esm2022/public_api.mjs +1 -1
  10. package/build-task/fesm2022/index.mjs +95 -69
  11. package/build-task/fesm2022/index.mjs.map +1 -1
  12. package/components/advanced/carousel/bundles/index.umd.js +8 -36
  13. package/components/advanced/carousel/carousel-template/carousel-template.directive.d.ts +1 -1
  14. package/components/advanced/carousel/carousel.directive.d.ts +1 -1
  15. package/components/advanced/carousel/esm2022/carousel-template/carousel-template.directive.mjs +3 -2
  16. package/components/advanced/carousel/esm2022/carousel.directive.mjs +3 -2
  17. package/components/advanced/carousel/esm2022/public_api.mjs +1 -2
  18. package/components/advanced/carousel/fesm2022/index.mjs +8 -36
  19. package/components/advanced/carousel/fesm2022/index.mjs.map +1 -1
  20. package/components/advanced/carousel/public_api.d.ts +0 -1
  21. package/components/advanced/custom/bundles/index.umd.js +8 -33
  22. package/components/advanced/custom/custom-widget-container/custom-widget-container.directive.d.ts +1 -1
  23. package/components/advanced/custom/custom-widget.directive.d.ts +1 -1
  24. package/components/advanced/custom/esm2022/custom-widget-container/custom-widget-container.directive.mjs +3 -2
  25. package/components/advanced/custom/esm2022/custom-widget.directive.mjs +3 -2
  26. package/components/advanced/custom/esm2022/public_api.mjs +1 -2
  27. package/components/advanced/custom/fesm2022/index.mjs +7 -32
  28. package/components/advanced/custom/fesm2022/index.mjs.map +1 -1
  29. package/components/advanced/custom/public_api.d.ts +0 -1
  30. package/components/advanced/login/bundles/index.umd.js +10 -34
  31. package/components/advanced/login/esm2022/login.component.mjs +7 -6
  32. package/components/advanced/login/esm2022/public_api.mjs +1 -2
  33. package/components/advanced/login/fesm2022/index.mjs +8 -32
  34. package/components/advanced/login/fesm2022/index.mjs.map +1 -1
  35. package/components/advanced/login/login.component.d.ts +1 -1
  36. package/components/advanced/login/public_api.d.ts +0 -1
  37. package/components/advanced/marquee/bundles/index.umd.js +6 -29
  38. package/components/advanced/marquee/esm2022/marquee.directive.mjs +3 -2
  39. package/components/advanced/marquee/esm2022/public_api.mjs +1 -2
  40. package/components/advanced/marquee/fesm2022/index.mjs +5 -28
  41. package/components/advanced/marquee/fesm2022/index.mjs.map +1 -1
  42. package/components/advanced/marquee/marquee.directive.d.ts +1 -1
  43. package/components/advanced/marquee/public_api.d.ts +0 -1
  44. package/components/base/bundles/index.umd.js +86 -278
  45. package/components/base/components.module.d.ts +13 -15
  46. package/components/base/directives/show-in-device.directive.d.ts +1 -1
  47. package/components/base/esm2022/components.module.mjs +7 -13
  48. package/components/base/esm2022/directives/show-in-device.directive.mjs +3 -2
  49. package/components/base/esm2022/pipes/custom-pipes.mjs +33 -16
  50. package/components/base/esm2022/pipes/image.pipe.mjs +3 -2
  51. package/components/base/esm2022/pipes/sanitize.pipe.mjs +3 -2
  52. package/components/base/esm2022/pipes/trust-as.pipe.mjs +3 -2
  53. package/components/base/esm2022/public_api.mjs +1 -2
  54. package/components/base/esm2022/utils/form-utils.mjs +3 -1
  55. package/components/base/esm2022/utils/live-utils.mjs +3 -7
  56. package/components/base/esm2022/widgets/common/base/base-field-validations.mjs +4 -2
  57. package/components/base/esm2022/widgets/common/base/base.component.mjs +3 -5
  58. package/components/base/esm2022/widgets/common/base/custom-widget-container.directive.mjs +3 -2
  59. package/components/base/esm2022/widgets/common/base/partial-container.directive.mjs +3 -2
  60. package/components/base/esm2022/widgets/common/base/text-content.directive.mjs +3 -2
  61. package/components/base/esm2022/widgets/common/container/container.directive.mjs +3 -2
  62. package/components/base/esm2022/widgets/common/dialog/dialog.service.mjs +3 -3
  63. package/components/base/esm2022/widgets/common/item-template/item-template.directive.mjs +3 -2
  64. package/components/base/esm2022/widgets/common/lazy-load/lazy-load.directive.mjs +3 -2
  65. package/components/base/esm2022/widgets/common/message/message.component.mjs +5 -5
  66. package/components/base/esm2022/widgets/common/partial/partial.directive.mjs +3 -2
  67. package/components/base/esm2022/widgets/common/partial-param/partial-param.directive.mjs +5 -3
  68. package/components/base/esm2022/widgets/common/redraw/redrawable.directive.mjs +3 -2
  69. package/components/base/esm2022/widgets/common/repeat-template/repeat-template.directive.mjs +3 -2
  70. package/components/base/fesm2022/index.mjs +85 -276
  71. package/components/base/fesm2022/index.mjs.map +1 -1
  72. package/components/base/pipes/custom-pipes.d.ts +15 -15
  73. package/components/base/pipes/image.pipe.d.ts +1 -1
  74. package/components/base/pipes/sanitize.pipe.d.ts +1 -1
  75. package/components/base/pipes/trust-as.pipe.d.ts +1 -1
  76. package/components/base/public_api.d.ts +0 -1
  77. package/components/base/widgets/common/base/custom-widget-container.directive.d.ts +1 -1
  78. package/components/base/widgets/common/base/partial-container.directive.d.ts +1 -1
  79. package/components/base/widgets/common/base/text-content.directive.d.ts +1 -1
  80. package/components/base/widgets/common/container/container.directive.d.ts +1 -1
  81. package/components/base/widgets/common/item-template/item-template.directive.d.ts +1 -1
  82. package/components/base/widgets/common/lazy-load/lazy-load.directive.d.ts +1 -1
  83. package/components/base/widgets/common/message/message.component.d.ts +1 -1
  84. package/components/base/widgets/common/partial/partial.directive.d.ts +1 -1
  85. package/components/base/widgets/common/partial-param/partial-param.directive.d.ts +2 -2
  86. package/components/base/widgets/common/redraw/redrawable.directive.d.ts +1 -1
  87. package/components/base/widgets/common/repeat-template/repeat-template.directive.d.ts +1 -1
  88. package/components/basic/default/anchor/anchor.component.d.ts +1 -1
  89. package/components/basic/default/audio/audio.component.d.ts +1 -1
  90. package/components/basic/default/bundles/index.umd.js +100 -148
  91. package/components/basic/default/esm2022/anchor/anchor.component.mjs +23 -21
  92. package/components/basic/default/esm2022/audio/audio.component.mjs +7 -6
  93. package/components/basic/default/esm2022/html/html.directive.mjs +3 -2
  94. package/components/basic/default/esm2022/icon/icon.component.mjs +17 -16
  95. package/components/basic/default/esm2022/iframe/iframe.component.mjs +14 -13
  96. package/components/basic/default/esm2022/label/label.directive.mjs +3 -2
  97. package/components/basic/default/esm2022/picture/picture.directive.mjs +3 -2
  98. package/components/basic/default/esm2022/picture/picture.props.mjs +1 -5
  99. package/components/basic/default/esm2022/public_api.mjs +1 -2
  100. package/components/basic/default/esm2022/spinner/spinner.component.mjs +26 -24
  101. package/components/basic/default/esm2022/video/video.component.mjs +19 -18
  102. package/components/basic/default/fesm2022/index.mjs +101 -148
  103. package/components/basic/default/fesm2022/index.mjs.map +1 -1
  104. package/components/basic/default/html/html.directive.d.ts +1 -1
  105. package/components/basic/default/icon/icon.component.d.ts +1 -1
  106. package/components/basic/default/iframe/iframe.component.d.ts +1 -1
  107. package/components/basic/default/label/label.directive.d.ts +1 -1
  108. package/components/basic/default/picture/picture.directive.d.ts +1 -1
  109. package/components/basic/default/public_api.d.ts +0 -1
  110. package/components/basic/default/spinner/spinner.component.d.ts +1 -1
  111. package/components/basic/default/video/video.component.d.ts +1 -1
  112. package/components/basic/progress/bundles/index.umd.js +20 -51
  113. package/components/basic/progress/esm2022/progress-bar/progress-bar.component.mjs +12 -11
  114. package/components/basic/progress/esm2022/progress-circle/progress-circle.component.mjs +8 -6
  115. package/components/basic/progress/esm2022/public_api.mjs +1 -2
  116. package/components/basic/progress/fesm2022/index.mjs +19 -49
  117. package/components/basic/progress/fesm2022/index.mjs.map +1 -1
  118. package/components/basic/progress/progress-bar/progress-bar.component.d.ts +1 -1
  119. package/components/basic/progress/progress-circle/progress-circle.component.d.ts +1 -1
  120. package/components/basic/progress/public_api.d.ts +0 -1
  121. package/components/basic/rich-text-editor/bundles/index.umd.js +15 -40
  122. package/components/basic/rich-text-editor/esm2022/public_api.mjs +1 -2
  123. package/components/basic/rich-text-editor/esm2022/rich-text-editor.component.mjs +13 -12
  124. package/components/basic/rich-text-editor/fesm2022/index.mjs +13 -37
  125. package/components/basic/rich-text-editor/fesm2022/index.mjs.map +1 -1
  126. package/components/basic/rich-text-editor/public_api.d.ts +0 -1
  127. package/components/basic/rich-text-editor/rich-text-editor.component.d.ts +1 -1
  128. package/components/basic/search/bundles/index.umd.js +170 -207
  129. package/components/basic/search/esm2022/public_api.mjs +1 -2
  130. package/components/basic/search/esm2022/scrollable.directive.mjs +3 -2
  131. package/components/basic/search/esm2022/search.component.mjs +76 -72
  132. package/components/basic/search/fesm2022/index.mjs +107 -143
  133. package/components/basic/search/fesm2022/index.mjs.map +1 -1
  134. package/components/basic/search/public_api.d.ts +0 -1
  135. package/components/basic/search/scrollable.directive.d.ts +1 -1
  136. package/components/basic/search/search.component.d.ts +1 -1
  137. package/components/basic/tree/bundles/index.umd.js +9 -33
  138. package/components/basic/tree/esm2022/public_api.mjs +1 -2
  139. package/components/basic/tree/esm2022/tree.component.mjs +7 -6
  140. package/components/basic/tree/fesm2022/index.mjs +8 -32
  141. package/components/basic/tree/fesm2022/index.mjs.map +1 -1
  142. package/components/basic/tree/public_api.d.ts +0 -1
  143. package/components/basic/tree/tree.component.d.ts +1 -1
  144. package/components/chart/bundles/index.umd.js +27 -53
  145. package/components/chart/chart.component.d.ts +1 -1
  146. package/components/chart/esm2022/chart.component.mjs +26 -24
  147. package/components/chart/esm2022/chart.utils.mjs +3 -1
  148. package/components/chart/esm2022/public_api.mjs +1 -2
  149. package/components/chart/fesm2022/index.mjs +27 -52
  150. package/components/chart/fesm2022/index.mjs.map +1 -1
  151. package/components/chart/public_api.d.ts +0 -1
  152. package/components/containers/accordion/accordion-pane/accordion-pane.component.d.ts +1 -1
  153. package/components/containers/accordion/accordion.directive.d.ts +1 -1
  154. package/components/containers/accordion/bundles/index.umd.js +208 -237
  155. package/components/containers/accordion/esm2022/accordion-pane/accordion-pane.component.mjs +10 -11
  156. package/components/containers/accordion/esm2022/accordion.directive.mjs +5 -4
  157. package/components/containers/accordion/esm2022/public_api.mjs +1 -2
  158. package/components/containers/accordion/fesm2022/index.mjs +189 -217
  159. package/components/containers/accordion/fesm2022/index.mjs.map +1 -1
  160. package/components/containers/accordion/public_api.d.ts +0 -1
  161. package/components/containers/layout-grid/bundles/index.umd.js +13 -43
  162. package/components/containers/layout-grid/esm2022/layout-grid-column/layout-grid-column.directive.mjs +7 -9
  163. package/components/containers/layout-grid/esm2022/layout-grid-row/layout-grid-row.directive.mjs +3 -2
  164. package/components/containers/layout-grid/esm2022/layout-grid.directive.mjs +3 -2
  165. package/components/containers/layout-grid/esm2022/public_api.mjs +1 -2
  166. package/components/containers/layout-grid/fesm2022/index.mjs +13 -43
  167. package/components/containers/layout-grid/fesm2022/index.mjs.map +1 -1
  168. package/components/containers/layout-grid/layout-grid-column/layout-grid-column.directive.d.ts +1 -1
  169. package/components/containers/layout-grid/layout-grid-row/layout-grid-row.directive.d.ts +1 -1
  170. package/components/containers/layout-grid/layout-grid.directive.d.ts +1 -1
  171. package/components/containers/layout-grid/public_api.d.ts +0 -1
  172. package/components/containers/linear-layout/bundles/index.umd.js +8 -33
  173. package/components/containers/linear-layout/esm2022/linear-layout-item/linear-layout-item.directive.mjs +3 -2
  174. package/components/containers/linear-layout/esm2022/linear-layout.directive.mjs +3 -2
  175. package/components/containers/linear-layout/esm2022/public_api.mjs +1 -2
  176. package/components/containers/linear-layout/fesm2022/index.mjs +7 -32
  177. package/components/containers/linear-layout/fesm2022/index.mjs.map +1 -1
  178. package/components/containers/linear-layout/linear-layout-item/linear-layout-item.directive.d.ts +1 -1
  179. package/components/containers/linear-layout/linear-layout.directive.d.ts +1 -1
  180. package/components/containers/linear-layout/public_api.d.ts +0 -1
  181. package/components/containers/panel/bundles/index.umd.js +87 -118
  182. package/components/containers/panel/esm2022/panel.component.mjs +48 -46
  183. package/components/containers/panel/esm2022/public_api.mjs +1 -2
  184. package/components/containers/panel/fesm2022/index.mjs +49 -79
  185. package/components/containers/panel/fesm2022/index.mjs.map +1 -1
  186. package/components/containers/panel/panel.component.d.ts +1 -1
  187. package/components/containers/panel/public_api.d.ts +0 -1
  188. package/components/containers/tabs/bundles/index.umd.js +112 -120
  189. package/components/containers/tabs/esm2022/public_api.mjs +1 -2
  190. package/components/containers/tabs/esm2022/tab-pane/tab-pane.component.mjs +8 -10
  191. package/components/containers/tabs/esm2022/tabs.component.mjs +61 -38
  192. package/components/containers/tabs/esm2022/tabs.props.mjs +2 -5
  193. package/components/containers/tabs/fesm2022/index.mjs +72 -81
  194. package/components/containers/tabs/fesm2022/index.mjs.map +1 -1
  195. package/components/containers/tabs/public_api.d.ts +0 -1
  196. package/components/containers/tabs/tab-pane/tab-pane.component.d.ts +1 -1
  197. package/components/containers/tabs/tabs.component.d.ts +3 -1
  198. package/components/containers/tile/bundles/index.umd.js +6 -29
  199. package/components/containers/tile/esm2022/public_api.mjs +1 -2
  200. package/components/containers/tile/esm2022/tile.directive.mjs +3 -2
  201. package/components/containers/tile/fesm2022/index.mjs +5 -28
  202. package/components/containers/tile/fesm2022/index.mjs.map +1 -1
  203. package/components/containers/tile/public_api.d.ts +0 -1
  204. package/components/containers/tile/tile.directive.d.ts +1 -1
  205. package/components/containers/wizard/bundles/index.umd.js +355 -189
  206. package/components/containers/wizard/esm2022/public_api.mjs +2 -3
  207. package/components/containers/wizard/esm2022/wizard-action/wizard-action.directive.mjs +3 -2
  208. package/components/containers/wizard/esm2022/wizard-step/wizard-step.component.mjs +176 -0
  209. package/components/containers/wizard/esm2022/wizard-step/wizard-step.props.mjs +8 -5
  210. package/components/containers/wizard/esm2022/wizard.component.mjs +264 -105
  211. package/components/containers/wizard/esm2022/wizard.props.mjs +8 -4
  212. package/components/containers/wizard/fesm2022/index.mjs +323 -155
  213. package/components/containers/wizard/fesm2022/index.mjs.map +1 -1
  214. package/components/containers/wizard/public_api.d.ts +1 -2
  215. package/components/containers/wizard/wizard-action/wizard-action.directive.d.ts +1 -1
  216. package/components/containers/wizard/wizard-step/{wizard-step.directive.d.ts → wizard-step.component.d.ts} +12 -6
  217. package/components/containers/wizard/wizard.component.d.ts +64 -18
  218. package/components/data/card/bundles/index.umd.js +92 -135
  219. package/components/data/card/card-actions/card-actions.directive.d.ts +1 -1
  220. package/components/data/card/card-content/card-content.component.d.ts +1 -1
  221. package/components/data/card/card-footer/card-footer.directive.d.ts +1 -1
  222. package/components/data/card/card.component.d.ts +1 -1
  223. package/components/data/card/esm2022/card-actions/card-actions.directive.mjs +3 -2
  224. package/components/data/card/esm2022/card-content/card-content.component.mjs +7 -6
  225. package/components/data/card/esm2022/card-footer/card-footer.directive.mjs +3 -2
  226. package/components/data/card/esm2022/card.component.mjs +39 -38
  227. package/components/data/card/esm2022/public_api.mjs +1 -2
  228. package/components/data/card/fesm2022/index.mjs +49 -92
  229. package/components/data/card/fesm2022/index.mjs.map +1 -1
  230. package/components/data/card/public_api.d.ts +0 -1
  231. package/components/data/form/bundles/index.umd.js +115 -182
  232. package/components/data/form/esm2022/form-action/form-action.directive.mjs +3 -2
  233. package/components/data/form/esm2022/form-field/form-field.directive.mjs +3 -2
  234. package/components/data/form/esm2022/form-widget.directive.mjs +3 -2
  235. package/components/data/form/esm2022/form.component.mjs +101 -104
  236. package/components/data/form/esm2022/form.props.mjs +1 -11
  237. package/components/data/form/esm2022/live-actions/dependson.directive.mjs +3 -2
  238. package/components/data/form/esm2022/live-actions/live-actions.directive.mjs +3 -2
  239. package/components/data/form/esm2022/live-filter/live-filter.directive.mjs +3 -2
  240. package/components/data/form/esm2022/live-form/live-form.directive.mjs +3 -6
  241. package/components/data/form/esm2022/public_api.mjs +1 -2
  242. package/components/data/form/fesm2022/index.mjs +117 -184
  243. package/components/data/form/fesm2022/index.mjs.map +1 -1
  244. package/components/data/form/form-action/form-action.directive.d.ts +1 -1
  245. package/components/data/form/form-field/form-field.directive.d.ts +1 -1
  246. package/components/data/form/form-widget.directive.d.ts +1 -1
  247. package/components/data/form/form.component.d.ts +1 -1
  248. package/components/data/form/live-actions/dependson.directive.d.ts +1 -1
  249. package/components/data/form/live-actions/live-actions.directive.d.ts +1 -1
  250. package/components/data/form/live-filter/live-filter.directive.d.ts +1 -1
  251. package/components/data/form/live-form/live-form.directive.d.ts +1 -1
  252. package/components/data/form/public_api.d.ts +0 -1
  253. package/components/data/list/bundles/index.umd.js +195 -504
  254. package/components/data/list/esm2022/list-item.directive.mjs +4 -3
  255. package/components/data/list/esm2022/list.component.mjs +187 -232
  256. package/components/data/list/esm2022/list.props.mjs +2 -3
  257. package/components/data/list/esm2022/public_api.mjs +1 -2
  258. package/components/data/list/fesm2022/index.mjs +193 -502
  259. package/components/data/list/fesm2022/index.mjs.map +1 -1
  260. package/components/data/list/list-item.directive.d.ts +1 -1
  261. package/components/data/list/list.component.d.ts +1 -1
  262. package/components/data/list/public_api.d.ts +0 -1
  263. package/components/data/live-table/bundles/index.umd.js +9 -33
  264. package/components/data/live-table/esm2022/live-table.component.mjs +7 -6
  265. package/components/data/live-table/esm2022/public_api.mjs +1 -2
  266. package/components/data/live-table/fesm2022/index.mjs +8 -32
  267. package/components/data/live-table/fesm2022/index.mjs.map +1 -1
  268. package/components/data/live-table/live-table.component.d.ts +1 -1
  269. package/components/data/live-table/public_api.d.ts +0 -1
  270. package/components/data/pagination/bundles/index.umd.js +80 -110
  271. package/components/data/pagination/esm2022/pagination.component.mjs +80 -76
  272. package/components/data/pagination/esm2022/public_api.mjs +1 -2
  273. package/components/data/pagination/fesm2022/index.mjs +81 -110
  274. package/components/data/pagination/fesm2022/index.mjs.map +1 -1
  275. package/components/data/pagination/pagination.component.d.ts +1 -1
  276. package/components/data/pagination/public_api.d.ts +0 -1
  277. package/components/data/table/bundles/index.umd.js +69 -135
  278. package/components/data/table/esm2022/public_api.mjs +1 -2
  279. package/components/data/table/esm2022/table-action/table-action.directive.mjs +3 -2
  280. package/components/data/table/esm2022/table-column/table-column.directive.mjs +3 -2
  281. package/components/data/table/esm2022/table-column-group/table-column-group.directive.mjs +3 -2
  282. package/components/data/table/esm2022/table-cud.directive.mjs +3 -2
  283. package/components/data/table/esm2022/table-filter.directive.mjs +5 -2
  284. package/components/data/table/esm2022/table-row/table-row.directive.mjs +3 -2
  285. package/components/data/table/esm2022/table-row-action/table-row-action.directive.mjs +3 -2
  286. package/components/data/table/esm2022/table.component.mjs +51 -48
  287. package/components/data/table/fesm2022/index.mjs +73 -140
  288. package/components/data/table/fesm2022/index.mjs.map +1 -1
  289. package/components/data/table/public_api.d.ts +0 -1
  290. package/components/data/table/table-action/table-action.directive.d.ts +1 -1
  291. package/components/data/table/table-column/table-column.directive.d.ts +1 -1
  292. package/components/data/table/table-column-group/table-column-group.directive.d.ts +1 -1
  293. package/components/data/table/table-cud.directive.d.ts +1 -1
  294. package/components/data/table/table-filter.directive.d.ts +1 -1
  295. package/components/data/table/table-row/table-row.directive.d.ts +1 -1
  296. package/components/data/table/table-row-action/table-row-action.directive.d.ts +1 -1
  297. package/components/data/table/table.component.d.ts +1 -1
  298. package/components/dialogs/alert-dialog/alert-dialog.component.d.ts +1 -1
  299. package/components/dialogs/alert-dialog/bundles/index.umd.js +32 -64
  300. package/components/dialogs/alert-dialog/esm2022/alert-dialog.component.mjs +10 -10
  301. package/components/dialogs/alert-dialog/esm2022/public_api.mjs +1 -2
  302. package/components/dialogs/alert-dialog/fesm2022/index.mjs +11 -43
  303. package/components/dialogs/alert-dialog/fesm2022/index.mjs.map +1 -1
  304. package/components/dialogs/alert-dialog/public_api.d.ts +0 -1
  305. package/components/dialogs/confirm-dialog/bundles/index.umd.js +10 -42
  306. package/components/dialogs/confirm-dialog/confirm-dialog.component.d.ts +1 -1
  307. package/components/dialogs/confirm-dialog/esm2022/confirm-dialog.component.mjs +9 -9
  308. package/components/dialogs/confirm-dialog/esm2022/public_api.mjs +1 -2
  309. package/components/dialogs/confirm-dialog/fesm2022/index.mjs +10 -42
  310. package/components/dialogs/confirm-dialog/fesm2022/index.mjs.map +1 -1
  311. package/components/dialogs/confirm-dialog/public_api.d.ts +0 -1
  312. package/components/dialogs/default/bundles/index.umd.js +76 -136
  313. package/components/dialogs/default/dialog-body/dialog-body.directive.d.ts +1 -1
  314. package/components/dialogs/default/dialog-footer/dialog-footer.directive.d.ts +1 -1
  315. package/components/dialogs/default/dialog-header/dialog-header.component.d.ts +1 -1
  316. package/components/dialogs/default/esm2022/base-dialog.mjs +3 -3
  317. package/components/dialogs/default/esm2022/dialog-body/dialog-body.directive.mjs +3 -2
  318. package/components/dialogs/default/esm2022/dialog-footer/dialog-footer.directive.mjs +3 -2
  319. package/components/dialogs/default/esm2022/dialog-header/dialog-header.component.mjs +70 -97
  320. package/components/dialogs/default/esm2022/public_api.mjs +1 -2
  321. package/components/dialogs/default/fesm2022/index.mjs +78 -137
  322. package/components/dialogs/default/fesm2022/index.mjs.map +1 -1
  323. package/components/dialogs/default/public_api.d.ts +0 -1
  324. package/components/dialogs/design-dialog/bundles/index.umd.js +16 -47
  325. package/components/dialogs/design-dialog/dialog.component.d.ts +1 -1
  326. package/components/dialogs/design-dialog/esm2022/dialog.component.mjs +14 -13
  327. package/components/dialogs/design-dialog/esm2022/public_api.mjs +1 -2
  328. package/components/dialogs/design-dialog/fesm2022/index.mjs +14 -45
  329. package/components/dialogs/design-dialog/fesm2022/index.mjs.map +1 -1
  330. package/components/dialogs/design-dialog/public_api.d.ts +0 -1
  331. package/components/dialogs/iframe-dialog/bundles/index.umd.js +20 -57
  332. package/components/dialogs/iframe-dialog/esm2022/iframe-dialog.component.mjs +21 -21
  333. package/components/dialogs/iframe-dialog/esm2022/public_api.mjs +1 -2
  334. package/components/dialogs/iframe-dialog/fesm2022/index.mjs +21 -57
  335. package/components/dialogs/iframe-dialog/fesm2022/index.mjs.map +1 -1
  336. package/components/dialogs/iframe-dialog/iframe-dialog.component.d.ts +1 -1
  337. package/components/dialogs/iframe-dialog/public_api.d.ts +0 -1
  338. package/components/dialogs/login-dialog/bundles/index.umd.js +6 -38
  339. package/components/dialogs/login-dialog/esm2022/login-dialog.directive.mjs +3 -2
  340. package/components/dialogs/login-dialog/esm2022/public_api.mjs +1 -2
  341. package/components/dialogs/login-dialog/fesm2022/index.mjs +6 -41
  342. package/components/dialogs/login-dialog/fesm2022/index.mjs.map +1 -1
  343. package/components/dialogs/login-dialog/login-dialog.directive.d.ts +1 -1
  344. package/components/dialogs/login-dialog/public_api.d.ts +0 -1
  345. package/components/dialogs/partial-dialog/bundles/index.umd.js +17 -49
  346. package/components/dialogs/partial-dialog/esm2022/partial-dialog.component.mjs +16 -15
  347. package/components/dialogs/partial-dialog/esm2022/public_api.mjs +1 -2
  348. package/components/dialogs/partial-dialog/fesm2022/index.mjs +16 -47
  349. package/components/dialogs/partial-dialog/fesm2022/index.mjs.map +1 -1
  350. package/components/dialogs/partial-dialog/partial-dialog.component.d.ts +1 -1
  351. package/components/dialogs/partial-dialog/public_api.d.ts +0 -1
  352. package/components/input/calendar/bundles/index.umd.js +24 -46
  353. package/components/input/calendar/calendar.component.d.ts +1 -1
  354. package/components/input/calendar/esm2022/calendar.component.mjs +28 -10
  355. package/components/input/calendar/esm2022/calendar.props.mjs +1 -1
  356. package/components/input/calendar/esm2022/public_api.mjs +1 -2
  357. package/components/input/calendar/fesm2022/index.mjs +30 -48
  358. package/components/input/calendar/fesm2022/index.mjs.map +1 -1
  359. package/components/input/calendar/public_api.d.ts +0 -1
  360. package/components/input/chips/bundles/index.umd.js +86 -114
  361. package/components/input/chips/chips.component.d.ts +1 -1
  362. package/components/input/chips/esm2022/chips.component.mjs +28 -27
  363. package/components/input/chips/esm2022/public_api.mjs +1 -2
  364. package/components/input/chips/fesm2022/index.mjs +29 -56
  365. package/components/input/chips/fesm2022/index.mjs.map +1 -1
  366. package/components/input/chips/public_api.d.ts +0 -1
  367. package/components/input/color-picker/bundles/index.umd.js +14 -42
  368. package/components/input/color-picker/color-picker.component.d.ts +1 -1
  369. package/components/input/color-picker/esm2022/color-picker.component.mjs +14 -8
  370. package/components/input/color-picker/esm2022/public_api.mjs +1 -2
  371. package/components/input/color-picker/fesm2022/index.mjs +15 -42
  372. package/components/input/color-picker/fesm2022/index.mjs.map +1 -1
  373. package/components/input/color-picker/public_api.d.ts +0 -1
  374. package/components/input/currency/bundles/index.umd.js +11 -41
  375. package/components/input/currency/currency.component.d.ts +1 -1
  376. package/components/input/currency/esm2022/currency.component.mjs +8 -6
  377. package/components/input/currency/esm2022/public_api.mjs +1 -2
  378. package/components/input/currency/fesm2022/index.mjs +11 -41
  379. package/components/input/currency/fesm2022/index.mjs.map +1 -1
  380. package/components/input/currency/public_api.d.ts +0 -1
  381. package/components/input/default/bundles/index.umd.js +2183 -2263
  382. package/components/input/default/button/button.component.d.ts +1 -1
  383. package/components/input/default/button-group/button-group.directive.d.ts +1 -1
  384. package/components/input/default/caption-position.directive.d.ts +1 -1
  385. package/components/input/default/checkbox/checkbox.component.d.ts +1 -1
  386. package/components/input/default/checkboxset/checkboxset.component.d.ts +1 -1
  387. package/components/input/default/composite/composite.directive.d.ts +1 -1
  388. package/components/input/default/esm2022/button/button.component.mjs +23 -21
  389. package/components/input/default/esm2022/button-group/button-group.directive.mjs +3 -2
  390. package/components/input/default/esm2022/caption-position.directive.mjs +3 -2
  391. package/components/input/default/esm2022/checkbox/checkbox.component.mjs +9 -6
  392. package/components/input/default/esm2022/checkboxset/checkboxset.component.mjs +73 -72
  393. package/components/input/default/esm2022/composite/composite.directive.mjs +3 -2
  394. package/components/input/default/esm2022/number/number.component.mjs +9 -6
  395. package/components/input/default/esm2022/public_api.mjs +1 -2
  396. package/components/input/default/esm2022/radioset/radioset.component.mjs +73 -72
  397. package/components/input/default/esm2022/select/select.component.mjs +29 -32
  398. package/components/input/default/esm2022/switch/switch.component.mjs +29 -27
  399. package/components/input/default/esm2022/text/calendar/input-calendar.component.mjs +9 -6
  400. package/components/input/default/esm2022/text/color/input-color.component.mjs +9 -6
  401. package/components/input/default/esm2022/text/email/input-email.component.mjs +9 -6
  402. package/components/input/default/esm2022/text/number/input-number.component.mjs +9 -6
  403. package/components/input/default/esm2022/text/text/input-text.component.mjs +10 -6
  404. package/components/input/default/esm2022/textarea/textarea.component.mjs +14 -11
  405. package/components/input/default/fesm2022/index.mjs +2198 -2277
  406. package/components/input/default/fesm2022/index.mjs.map +1 -1
  407. package/components/input/default/number/number.component.d.ts +1 -1
  408. package/components/input/default/public_api.d.ts +0 -1
  409. package/components/input/default/radioset/radioset.component.d.ts +1 -1
  410. package/components/input/default/select/select.component.d.ts +1 -1
  411. package/components/input/default/switch/switch.component.d.ts +1 -1
  412. package/components/input/default/text/calendar/input-calendar.component.d.ts +1 -1
  413. package/components/input/default/text/color/input-color.component.d.ts +1 -1
  414. package/components/input/default/text/email/input-email.component.d.ts +1 -1
  415. package/components/input/default/text/number/input-number.component.d.ts +1 -1
  416. package/components/input/default/text/text/input-text.component.d.ts +1 -1
  417. package/components/input/default/textarea/textarea.component.d.ts +1 -1
  418. package/components/input/epoch/base-date-time.component.d.ts +0 -1
  419. package/components/input/epoch/bundles/index.umd.js +220 -262
  420. package/components/input/epoch/date/date.component.d.ts +1 -1
  421. package/components/input/epoch/date/imaskUtil.d.ts +2 -2
  422. package/components/input/epoch/date-time/date-time-picker.component.d.ts +6 -6
  423. package/components/input/epoch/date-time/date-time.component.d.ts +1 -1
  424. package/components/input/epoch/esm2022/base-date-time.component.mjs +6 -9
  425. package/components/input/epoch/esm2022/date/date.component.mjs +19 -18
  426. package/components/input/epoch/esm2022/date/imaskUtil.mjs +3 -1
  427. package/components/input/epoch/esm2022/date-time/date-time-picker.component.mjs +76 -62
  428. package/components/input/epoch/esm2022/date-time/date-time.component.mjs +28 -24
  429. package/components/input/epoch/esm2022/picker/picker.component.mjs +33 -28
  430. package/components/input/epoch/esm2022/public_api.mjs +1 -2
  431. package/components/input/epoch/esm2022/time/time.component.mjs +25 -21
  432. package/components/input/epoch/fesm2022/index.mjs +196 -237
  433. package/components/input/epoch/fesm2022/index.mjs.map +1 -1
  434. package/components/input/epoch/picker/picker.component.d.ts +2 -2
  435. package/components/input/epoch/public_api.d.ts +0 -1
  436. package/components/input/epoch/time/time.component.d.ts +1 -1
  437. package/components/input/file-upload/bundles/index.umd.js +135 -178
  438. package/components/input/file-upload/esm2022/file-upload.component.mjs +133 -150
  439. package/components/input/file-upload/esm2022/public_api.mjs +1 -2
  440. package/components/input/file-upload/fesm2022/index.mjs +133 -175
  441. package/components/input/file-upload/fesm2022/index.mjs.map +1 -1
  442. package/components/input/file-upload/file-upload.component.d.ts +1 -2
  443. package/components/input/file-upload/public_api.d.ts +0 -1
  444. package/components/input/rating/bundles/index.umd.js +50 -77
  445. package/components/input/rating/esm2022/public_api.mjs +1 -2
  446. package/components/input/rating/esm2022/rating.component.mjs +23 -20
  447. package/components/input/rating/fesm2022/index.mjs +23 -49
  448. package/components/input/rating/fesm2022/index.mjs.map +1 -1
  449. package/components/input/rating/public_api.d.ts +0 -1
  450. package/components/input/rating/rating.component.d.ts +1 -1
  451. package/components/input/slider/bundles/index.umd.js +35 -63
  452. package/components/input/slider/esm2022/public_api.mjs +1 -2
  453. package/components/input/slider/esm2022/slider.component.mjs +15 -13
  454. package/components/input/slider/fesm2022/index.mjs +15 -42
  455. package/components/input/slider/fesm2022/index.mjs.map +1 -1
  456. package/components/input/slider/public_api.d.ts +0 -1
  457. package/components/input/slider/slider.component.d.ts +1 -1
  458. package/components/navigation/breadcrumb/breadcrumb.component.d.ts +1 -1
  459. package/components/navigation/breadcrumb/bundles/index.umd.js +40 -67
  460. package/components/navigation/breadcrumb/esm2022/breadcrumb.component.mjs +23 -21
  461. package/components/navigation/breadcrumb/esm2022/public_api.mjs +1 -2
  462. package/components/navigation/breadcrumb/fesm2022/index.mjs +23 -50
  463. package/components/navigation/breadcrumb/fesm2022/index.mjs.map +1 -1
  464. package/components/navigation/breadcrumb/public_api.d.ts +0 -1
  465. package/components/navigation/menu/bundles/index.umd.js +642 -696
  466. package/components/navigation/menu/esm2022/menu-adapator.component.mjs +1 -1
  467. package/components/navigation/menu/esm2022/menu-dropdown/menu-dropdown.component.mjs +11 -9
  468. package/components/navigation/menu/esm2022/menu-dropdown-item/menu-dropdown-item.component.mjs +24 -18
  469. package/components/navigation/menu/esm2022/menu.component.mjs +34 -31
  470. package/components/navigation/menu/esm2022/nav/nav-item/nav-item.directive.mjs +3 -2
  471. package/components/navigation/menu/esm2022/nav/nav.component.mjs +39 -29
  472. package/components/navigation/menu/esm2022/nav/navigation-control.directive.mjs +6 -3
  473. package/components/navigation/menu/esm2022/public_api.mjs +1 -2
  474. package/components/navigation/menu/fesm2022/index.mjs +534 -587
  475. package/components/navigation/menu/fesm2022/index.mjs.map +1 -1
  476. package/components/navigation/menu/menu-dropdown/menu-dropdown.component.d.ts +1 -1
  477. package/components/navigation/menu/menu-dropdown-item/menu-dropdown-item.component.d.ts +1 -1
  478. package/components/navigation/menu/menu.component.d.ts +1 -1
  479. package/components/navigation/menu/nav/nav-item/nav-item.directive.d.ts +1 -1
  480. package/components/navigation/menu/nav/nav.component.d.ts +1 -1
  481. package/components/navigation/menu/nav/navigation-control.directive.d.ts +1 -1
  482. package/components/navigation/menu/public_api.d.ts +0 -1
  483. package/components/navigation/navbar/bundles/index.umd.js +20 -44
  484. package/components/navigation/navbar/esm2022/navbar.component.mjs +18 -16
  485. package/components/navigation/navbar/esm2022/public_api.mjs +1 -2
  486. package/components/navigation/navbar/fesm2022/index.mjs +18 -41
  487. package/components/navigation/navbar/fesm2022/index.mjs.map +1 -1
  488. package/components/navigation/navbar/navbar.component.d.ts +1 -1
  489. package/components/navigation/navbar/public_api.d.ts +0 -1
  490. package/components/navigation/popover/bundles/index.umd.js +12 -43
  491. package/components/navigation/popover/esm2022/popover.component.mjs +11 -9
  492. package/components/navigation/popover/esm2022/public_api.mjs +1 -2
  493. package/components/navigation/popover/fesm2022/index.mjs +11 -41
  494. package/components/navigation/popover/fesm2022/index.mjs.map +1 -1
  495. package/components/navigation/popover/popover.component.d.ts +1 -1
  496. package/components/navigation/popover/public_api.d.ts +0 -1
  497. package/components/page/default/bundles/index.umd.js +96 -138
  498. package/components/page/default/content/content.component.d.ts +1 -1
  499. package/components/page/default/esm2022/content/content.component.mjs +7 -6
  500. package/components/page/default/esm2022/layout.directive.mjs +3 -2
  501. package/components/page/default/esm2022/page-content/page-content.component.mjs +7 -6
  502. package/components/page/default/esm2022/page-content/page-content.props.mjs +2 -3
  503. package/components/page/default/esm2022/page.directive.mjs +3 -2
  504. package/components/page/default/esm2022/public_api.mjs +1 -2
  505. package/components/page/default/esm2022/router-outlet.directive.mjs +3 -2
  506. package/components/page/default/esm2022/spa-page.directive.mjs +3 -2
  507. package/components/page/default/fesm2022/index.mjs +96 -138
  508. package/components/page/default/fesm2022/index.mjs.map +1 -1
  509. package/components/page/default/layout.directive.d.ts +1 -1
  510. package/components/page/default/page-content/page-content.component.d.ts +1 -1
  511. package/components/page/default/page.directive.d.ts +1 -1
  512. package/components/page/default/public_api.d.ts +0 -1
  513. package/components/page/default/router-outlet.directive.d.ts +1 -1
  514. package/components/page/default/spa-page.directive.d.ts +1 -1
  515. package/components/page/footer/bundles/index.umd.js +6 -29
  516. package/components/page/footer/esm2022/footer.directive.mjs +3 -2
  517. package/components/page/footer/esm2022/public_api.mjs +1 -2
  518. package/components/page/footer/fesm2022/index.mjs +5 -28
  519. package/components/page/footer/fesm2022/index.mjs.map +1 -1
  520. package/components/page/footer/footer.directive.d.ts +1 -1
  521. package/components/page/footer/public_api.d.ts +0 -1
  522. package/components/page/header/bundles/index.umd.js +9 -33
  523. package/components/page/header/esm2022/header.component.mjs +7 -6
  524. package/components/page/header/esm2022/public_api.mjs +1 -2
  525. package/components/page/header/fesm2022/index.mjs +8 -32
  526. package/components/page/header/fesm2022/index.mjs.map +1 -1
  527. package/components/page/header/header.component.d.ts +1 -1
  528. package/components/page/header/public_api.d.ts +0 -1
  529. package/components/page/left-panel/bundles/index.umd.js +6 -29
  530. package/components/page/left-panel/esm2022/left-panel.directive.mjs +3 -2
  531. package/components/page/left-panel/esm2022/public_api.mjs +1 -2
  532. package/components/page/left-panel/fesm2022/index.mjs +5 -28
  533. package/components/page/left-panel/fesm2022/index.mjs.map +1 -1
  534. package/components/page/left-panel/left-panel.directive.d.ts +1 -1
  535. package/components/page/left-panel/public_api.d.ts +0 -1
  536. package/components/page/right-panel/bundles/index.umd.js +6 -29
  537. package/components/page/right-panel/esm2022/public_api.mjs +1 -2
  538. package/components/page/right-panel/esm2022/right-panel.directive.mjs +3 -2
  539. package/components/page/right-panel/fesm2022/index.mjs +5 -28
  540. package/components/page/right-panel/fesm2022/index.mjs.map +1 -1
  541. package/components/page/right-panel/public_api.d.ts +0 -1
  542. package/components/page/right-panel/right-panel.directive.d.ts +1 -1
  543. package/components/page/top-nav/bundles/index.umd.js +6 -29
  544. package/components/page/top-nav/esm2022/public_api.mjs +1 -2
  545. package/components/page/top-nav/esm2022/top-nav.directive.mjs +3 -2
  546. package/components/page/top-nav/fesm2022/index.mjs +5 -28
  547. package/components/page/top-nav/fesm2022/index.mjs.map +1 -1
  548. package/components/page/top-nav/public_api.d.ts +0 -1
  549. package/components/page/top-nav/top-nav.directive.d.ts +1 -1
  550. package/components/prefab/bundles/index.umd.js +8 -33
  551. package/components/prefab/esm2022/prefab-container/prefab-container.directive.mjs +3 -2
  552. package/components/prefab/esm2022/prefab.directive.mjs +3 -2
  553. package/components/prefab/esm2022/public_api.mjs +1 -2
  554. package/components/prefab/fesm2022/index.mjs +7 -32
  555. package/components/prefab/fesm2022/index.mjs.map +1 -1
  556. package/components/prefab/prefab-container/prefab-container.directive.d.ts +1 -1
  557. package/components/prefab/prefab.directive.d.ts +1 -1
  558. package/components/prefab/public_api.d.ts +0 -1
  559. package/core/bundles/index.umd.js +32 -85
  560. package/core/esm2022/public_api.mjs +2 -3
  561. package/core/esm2022/types/types.mjs +1 -1
  562. package/core/esm2022/utils/build-utils.mjs +9 -5
  563. package/core/esm2022/utils/utils.mjs +12 -40
  564. package/core/fesm2022/index.mjs +32 -81
  565. package/core/fesm2022/index.mjs.map +1 -1
  566. package/core/public_api.d.ts +1 -2
  567. package/core/types/types.d.ts +1 -0
  568. package/core/utils/utils.d.ts +1 -3
  569. package/http/bundles/index.umd.js +9 -34
  570. package/http/esm2022/http.service.mjs +6 -3
  571. package/http/esm2022/public_api.mjs +4 -2
  572. package/http/fesm2022/index.mjs +9 -34
  573. package/http/fesm2022/index.mjs.map +1 -1
  574. package/http/public_api.d.ts +3 -1
  575. package/npm-shrinkwrap.json +2 -2
  576. package/oAuth/bundles/index.umd.js +9 -42
  577. package/oAuth/esm2022/oAuth.utils.mjs +7 -23
  578. package/oAuth/esm2022/public_api.mjs +1 -2
  579. package/oAuth/fesm2022/index.mjs +8 -40
  580. package/oAuth/fesm2022/index.mjs.map +1 -1
  581. package/oAuth/public_api.d.ts +0 -1
  582. package/package-lock.json +2 -2
  583. package/package.json +1 -1
  584. package/runtime/base/bundles/index.umd.js +690 -596
  585. package/runtime/base/components/app-component/app.component.d.ts +1 -1
  586. package/runtime/base/components/app-spinner.component.d.ts +1 -1
  587. package/runtime/base/components/custom-toaster.component.d.ts +1 -1
  588. package/runtime/base/components/empty-component/empty-page.component.d.ts +1 -1
  589. package/runtime/base/components/prefab-preview.component.d.ts +1 -1
  590. package/runtime/base/directives/accessroles.directive.d.ts +1 -1
  591. package/runtime/base/directives/prefab.directive.d.ts +1 -1
  592. package/runtime/base/esm2022/components/app-component/app.component.mjs +42 -49
  593. package/runtime/base/esm2022/components/app-spinner.component.mjs +29 -21
  594. package/runtime/base/esm2022/components/base-page.component.mjs +3 -11
  595. package/runtime/base/esm2022/components/base-spa-page.component.mjs +3 -11
  596. package/runtime/base/esm2022/components/custom-toaster.component.mjs +20 -14
  597. package/runtime/base/esm2022/components/empty-component/empty-page.component.mjs +4 -3
  598. package/runtime/base/esm2022/components/prefab-preview.component.mjs +8 -6
  599. package/runtime/base/esm2022/directives/accessroles.directive.mjs +3 -2
  600. package/runtime/base/esm2022/directives/prefab.directive.mjs +3 -2
  601. package/runtime/base/esm2022/public_api.mjs +1 -1
  602. package/runtime/base/esm2022/resolves/security-config.resolve.mjs +4 -6
  603. package/runtime/base/esm2022/runtime-base.module.mjs +486 -337
  604. package/runtime/base/esm2022/services/app.manager.service.mjs +31 -48
  605. package/runtime/base/esm2022/services/app.service.mjs +8 -1
  606. package/runtime/base/esm2022/services/i18n.service.mjs +39 -72
  607. package/runtime/base/fesm2022/index.mjs +697 -605
  608. package/runtime/base/fesm2022/index.mjs.map +1 -1
  609. package/runtime/base/runtime-base.module.d.ts +115 -84
  610. package/runtime/base/services/app.service.d.ts +1 -0
  611. package/runtime/base/services/i18n.service.d.ts +1 -1
  612. package/runtime/dynamic/app/app.config.d.ts +5 -0
  613. package/runtime/dynamic/app/components/page-wrapper.component.d.ts +1 -1
  614. package/runtime/dynamic/bundles/index.umd.js +270 -117
  615. package/runtime/dynamic/esm2022/app/app.config.mjs +136 -0
  616. package/runtime/dynamic/esm2022/app/app.module.mjs +151 -105
  617. package/runtime/dynamic/esm2022/app/components/page-wrapper.component.mjs +7 -4
  618. package/runtime/dynamic/esm2022/app/services/component-ref-provider.service.mjs +1 -1
  619. package/runtime/dynamic/esm2022/main.mjs +11 -16
  620. package/runtime/dynamic/fesm2022/index.mjs +340 -184
  621. package/runtime/dynamic/fesm2022/index.mjs.map +1 -1
  622. package/security/bundles/index.umd.js +3 -34
  623. package/security/esm2022/public_api.mjs +1 -2
  624. package/security/esm2022/security.service.mjs +4 -15
  625. package/security/fesm2022/index.mjs +5 -32
  626. package/security/fesm2022/index.mjs.map +1 -1
  627. package/security/public_api.d.ts +0 -1
  628. package/transpiler/bundles/index.umd.js +271 -168
  629. package/transpiler/esm2022/build.mjs +1 -6
  630. package/transpiler/esm2022/imports.mjs +268 -161
  631. package/transpiler/fesm2022/index.mjs +267 -165
  632. package/transpiler/fesm2022/index.mjs.map +1 -1
  633. package/variables/bundles/index.umd.js +16 -197
  634. package/variables/constants/variables.constants.d.ts +0 -2
  635. package/variables/esm2022/constants/variables.constants.mjs +1 -3
  636. package/variables/esm2022/factory/variable-manager.factory.mjs +1 -3
  637. package/variables/esm2022/factory/variable.factory.mjs +1 -5
  638. package/variables/esm2022/manager/action/logout-action.manager.mjs +5 -7
  639. package/variables/esm2022/manager/variable/web-socket-variable.manager.mjs +3 -3
  640. package/variables/esm2022/public_api.mjs +1 -5
  641. package/variables/esm2022/service/metadata-service/metadata.service.mjs +6 -11
  642. package/variables/esm2022/util/variable/service-variable.utils.mjs +1 -4
  643. package/variables/esm2022/util/variable/variables.utils.mjs +5 -19
  644. package/variables/fesm2022/index.mjs +16 -198
  645. package/variables/fesm2022/index.mjs.map +1 -1
  646. package/variables/public_api.d.ts +0 -4
  647. package/components/advanced/carousel/carousel.module.d.ts +0 -11
  648. package/components/advanced/carousel/esm2022/carousel.module.mjs +0 -36
  649. package/components/advanced/custom/custom-widget.module.d.ts +0 -10
  650. package/components/advanced/custom/esm2022/custom-widget.module.mjs +0 -32
  651. package/components/advanced/login/esm2022/login.module.mjs +0 -28
  652. package/components/advanced/login/login.module.d.ts +0 -9
  653. package/components/advanced/marquee/esm2022/marquee.module.mjs +0 -28
  654. package/components/advanced/marquee/marquee.module.d.ts +0 -9
  655. package/components/base/esm2022/widgets/common/smooth-scroll/smooth-scroll.directive.mjs +0 -221
  656. package/components/base/widgets/common/smooth-scroll/smooth-scroll.directive.d.ts +0 -22
  657. package/components/basic/default/basic.module.d.ts +0 -17
  658. package/components/basic/default/esm2022/basic.module.mjs +0 -60
  659. package/components/basic/progress/esm2022/progress.module.mjs +0 -36
  660. package/components/basic/progress/progress.module.d.ts +0 -11
  661. package/components/basic/rich-text-editor/esm2022/rich-text-editor.module.mjs +0 -28
  662. package/components/basic/rich-text-editor/rich-text-editor.module.d.ts +0 -9
  663. package/components/basic/search/esm2022/search.module.mjs +0 -45
  664. package/components/basic/search/search.module.d.ts +0 -12
  665. package/components/basic/tree/esm2022/tree.module.mjs +0 -28
  666. package/components/basic/tree/tree.module.d.ts +0 -9
  667. package/components/chart/chart.module.d.ts +0 -10
  668. package/components/chart/esm2022/chart.module.mjs +0 -32
  669. package/components/containers/accordion/accordion.module.d.ts +0 -10
  670. package/components/containers/accordion/esm2022/accordion.module.mjs +0 -32
  671. package/components/containers/layout-grid/esm2022/layout-grid.module.mjs +0 -36
  672. package/components/containers/layout-grid/layout-grid.module.d.ts +0 -11
  673. package/components/containers/linear-layout/esm2022/linear-layout.module.mjs +0 -32
  674. package/components/containers/linear-layout/linear-layout.module.d.ts +0 -10
  675. package/components/containers/panel/esm2022/panel.module.mjs +0 -36
  676. package/components/containers/panel/panel.module.d.ts +0 -11
  677. package/components/containers/tabs/esm2022/tabs.module.mjs +0 -32
  678. package/components/containers/tabs/tabs.module.d.ts +0 -10
  679. package/components/containers/tile/esm2022/tile.module.mjs +0 -28
  680. package/components/containers/tile/tile.module.d.ts +0 -9
  681. package/components/containers/wizard/esm2022/wizard-step/wizard-step.directive.mjs +0 -140
  682. package/components/containers/wizard/esm2022/wizard.module.mjs +0 -40
  683. package/components/containers/wizard/wizard.module.d.ts +0 -12
  684. package/components/data/card/card.module.d.ts +0 -15
  685. package/components/data/card/esm2022/card.module.mjs +0 -52
  686. package/components/data/form/esm2022/form.module.mjs +0 -68
  687. package/components/data/form/form.module.d.ts +0 -19
  688. package/components/data/list/esm2022/list.module.mjs +0 -40
  689. package/components/data/list/list.module.d.ts +0 -11
  690. package/components/data/live-table/esm2022/live-table.module.mjs +0 -28
  691. package/components/data/live-table/live-table.module.d.ts +0 -9
  692. package/components/data/pagination/esm2022/pagination.module.mjs +0 -36
  693. package/components/data/pagination/pagination.module.d.ts +0 -11
  694. package/components/data/table/esm2022/table.module.mjs +0 -91
  695. package/components/data/table/table.module.d.ts +0 -24
  696. package/components/dialogs/alert-dialog/alert-dialog.module.d.ts +0 -11
  697. package/components/dialogs/alert-dialog/esm2022/alert-dialog.module.mjs +0 -36
  698. package/components/dialogs/confirm-dialog/confirm-dialog.module.d.ts +0 -11
  699. package/components/dialogs/confirm-dialog/esm2022/confirm-dialog.module.mjs +0 -36
  700. package/components/dialogs/default/dialog.module.d.ts +0 -12
  701. package/components/dialogs/default/esm2022/dialog.module.mjs +0 -40
  702. package/components/dialogs/design-dialog/design-dialog.module.d.ts +0 -11
  703. package/components/dialogs/design-dialog/esm2022/design-dialog.module.mjs +0 -36
  704. package/components/dialogs/iframe-dialog/esm2022/iframe-dialog.module.mjs +0 -40
  705. package/components/dialogs/iframe-dialog/iframe-dialog.module.d.ts +0 -12
  706. package/components/dialogs/login-dialog/esm2022/login-dialog.module.mjs +0 -40
  707. package/components/dialogs/login-dialog/login-dialog.module.d.ts +0 -12
  708. package/components/dialogs/partial-dialog/esm2022/partial-dialog.module.mjs +0 -36
  709. package/components/dialogs/partial-dialog/partial-dialog.module.d.ts +0 -11
  710. package/components/input/calendar/calendar.module.d.ts +0 -12
  711. package/components/input/calendar/esm2022/calendar.module.mjs +0 -40
  712. package/components/input/chips/chips.module.d.ts +0 -10
  713. package/components/input/chips/esm2022/chips.module.mjs +0 -32
  714. package/components/input/color-picker/color-picker.module.d.ts +0 -11
  715. package/components/input/color-picker/esm2022/color-picker.module.mjs +0 -36
  716. package/components/input/currency/currency.module.d.ts +0 -11
  717. package/components/input/currency/esm2022/currency.module.mjs +0 -36
  718. package/components/input/default/esm2022/input.module.mjs +0 -96
  719. package/components/input/default/input.module.d.ts +0 -26
  720. package/components/input/epoch/epoch.module.d.ts +0 -18
  721. package/components/input/epoch/esm2022/epoch.module.mjs +0 -70
  722. package/components/input/file-upload/esm2022/file-upload.module.mjs +0 -28
  723. package/components/input/file-upload/file-upload.module.d.ts +0 -9
  724. package/components/input/rating/esm2022/rating.module.mjs +0 -32
  725. package/components/input/rating/rating.module.d.ts +0 -10
  726. package/components/input/slider/esm2022/slider.module.mjs +0 -32
  727. package/components/input/slider/slider.module.d.ts +0 -10
  728. package/components/navigation/breadcrumb/breadcrumb.module.d.ts +0 -10
  729. package/components/navigation/breadcrumb/esm2022/breadcrumb.module.mjs +0 -32
  730. package/components/navigation/menu/esm2022/menu.module.mjs +0 -71
  731. package/components/navigation/menu/menu.module.d.ts +0 -17
  732. package/components/navigation/navbar/esm2022/navbar.module.mjs +0 -28
  733. package/components/navigation/navbar/navbar.module.d.ts +0 -9
  734. package/components/navigation/popover/esm2022/popover.module.mjs +0 -36
  735. package/components/navigation/popover/popover.module.d.ts +0 -11
  736. package/components/page/default/esm2022/page.module.mjs +0 -55
  737. package/components/page/default/page.module.d.ts +0 -14
  738. package/components/page/footer/esm2022/footer.module.mjs +0 -28
  739. package/components/page/footer/footer.module.d.ts +0 -9
  740. package/components/page/header/esm2022/header.module.mjs +0 -28
  741. package/components/page/header/header.module.d.ts +0 -9
  742. package/components/page/left-panel/esm2022/left-panel.module.mjs +0 -28
  743. package/components/page/left-panel/left-panel.module.d.ts +0 -9
  744. package/components/page/right-panel/esm2022/right-panel.module.mjs +0 -28
  745. package/components/page/right-panel/right-panel.module.d.ts +0 -9
  746. package/components/page/top-nav/esm2022/top-nav.module.mjs +0 -28
  747. package/components/page/top-nav/top-nav.module.d.ts +0 -9
  748. package/components/prefab/esm2022/prefab.module.mjs +0 -32
  749. package/components/prefab/prefab.module.d.ts +0 -10
  750. package/core/core.module.d.ts +0 -9
  751. package/core/esm2022/core.module.mjs +0 -27
  752. package/http/esm2022/http-service.module.mjs +0 -36
  753. package/http/http-service.module.d.ts +0 -14
  754. package/locales/fullcalendar/af.js +0 -27
  755. package/locales/fullcalendar/ar-dz.js +0 -28
  756. package/locales/fullcalendar/ar-kw.js +0 -28
  757. package/locales/fullcalendar/ar-ly.js +0 -28
  758. package/locales/fullcalendar/ar-ma.js +0 -28
  759. package/locales/fullcalendar/ar-sa.js +0 -28
  760. package/locales/fullcalendar/ar-tn.js +0 -28
  761. package/locales/fullcalendar/ar.js +0 -28
  762. package/locales/fullcalendar/az.js +0 -29
  763. package/locales/fullcalendar/bg.js +0 -28
  764. package/locales/fullcalendar/bs.js +0 -29
  765. package/locales/fullcalendar/ca.js +0 -27
  766. package/locales/fullcalendar/cs.js +0 -29
  767. package/locales/fullcalendar/da.js +0 -27
  768. package/locales/fullcalendar/de.js +0 -30
  769. package/locales/fullcalendar/el.js +0 -27
  770. package/locales/fullcalendar/en-au.js +0 -14
  771. package/locales/fullcalendar/en-gb.js +0 -14
  772. package/locales/fullcalendar/en-nz.js +0 -14
  773. package/locales/fullcalendar/es-us.js +0 -27
  774. package/locales/fullcalendar/es.js +0 -27
  775. package/locales/fullcalendar/et.js +0 -29
  776. package/locales/fullcalendar/eu.js +0 -27
  777. package/locales/fullcalendar/fa.js +0 -30
  778. package/locales/fullcalendar/fi.js +0 -27
  779. package/locales/fullcalendar/fr-ca.js +0 -24
  780. package/locales/fullcalendar/fr-ch.js +0 -28
  781. package/locales/fullcalendar/fr.js +0 -28
  782. package/locales/fullcalendar/gl.js +0 -27
  783. package/locales/fullcalendar/he.js +0 -24
  784. package/locales/fullcalendar/hi.js +0 -29
  785. package/locales/fullcalendar/hr.js +0 -29
  786. package/locales/fullcalendar/hu.js +0 -27
  787. package/locales/fullcalendar/id.js +0 -27
  788. package/locales/fullcalendar/is.js +0 -27
  789. package/locales/fullcalendar/it.js +0 -29
  790. package/locales/fullcalendar/ja.js +0 -25
  791. package/locales/fullcalendar/ka.js +0 -29
  792. package/locales/fullcalendar/kk.js +0 -29
  793. package/locales/fullcalendar/ko.js +0 -23
  794. package/locales/fullcalendar/lb.js +0 -27
  795. package/locales/fullcalendar/lt.js +0 -27
  796. package/locales/fullcalendar/lv.js +0 -29
  797. package/locales/fullcalendar/mk.js +0 -25
  798. package/locales/fullcalendar/ms.js +0 -29
  799. package/locales/fullcalendar/nb.js +0 -27
  800. package/locales/fullcalendar/ne.js +0 -27
  801. package/locales/fullcalendar/nl.js +0 -27
  802. package/locales/fullcalendar/nn.js +0 -27
  803. package/locales/fullcalendar/pl.js +0 -27
  804. package/locales/fullcalendar/pt-br.js +0 -25
  805. package/locales/fullcalendar/pt.js +0 -27
  806. package/locales/fullcalendar/ro.js +0 -29
  807. package/locales/fullcalendar/ru.js +0 -29
  808. package/locales/fullcalendar/sk.js +0 -29
  809. package/locales/fullcalendar/sl.js +0 -27
  810. package/locales/fullcalendar/sq.js +0 -29
  811. package/locales/fullcalendar/sr-cyrl.js +0 -29
  812. package/locales/fullcalendar/sr.js +0 -29
  813. package/locales/fullcalendar/sv.js +0 -27
  814. package/locales/fullcalendar/th.js +0 -30
  815. package/locales/fullcalendar/tr.js +0 -27
  816. package/locales/fullcalendar/ug.js +0 -17
  817. package/locales/fullcalendar/uk.js +0 -29
  818. package/locales/fullcalendar/uz.js +0 -21
  819. package/locales/fullcalendar/vi.js +0 -29
  820. package/locales/fullcalendar/zh-cn.js +0 -30
  821. package/locales/fullcalendar/zh-tw.js +0 -23
  822. package/mobile/components/basic/default/.npmignore +0 -2
  823. package/mobile/components/basic/default/anchor/anchor.directive.d.ts +0 -8
  824. package/mobile/components/basic/default/app-update/app-update.component.d.ts +0 -26
  825. package/mobile/components/basic/default/basic.module.d.ts +0 -15
  826. package/mobile/components/basic/default/bundles/index.umd.js +0 -980
  827. package/mobile/components/basic/default/esm2022/anchor/anchor.directive.mjs +0 -44
  828. package/mobile/components/basic/default/esm2022/app-update/app-update.component.mjs +0 -116
  829. package/mobile/components/basic/default/esm2022/basic.module.mjs +0 -52
  830. package/mobile/components/basic/default/esm2022/file-browser/file-browser.component.mjs +0 -236
  831. package/mobile/components/basic/default/esm2022/file-browser/file-selector.service.mjs +0 -85
  832. package/mobile/components/basic/default/esm2022/image-cache/image-cache.directive.mjs +0 -61
  833. package/mobile/components/basic/default/esm2022/index.mjs +0 -5
  834. package/mobile/components/basic/default/esm2022/network-info-toaster/network-info-toaster.component.mjs +0 -183
  835. package/mobile/components/basic/default/esm2022/network-info-toaster/network-info-toaster.props.mjs +0 -5
  836. package/mobile/components/basic/default/esm2022/process-manager/process-management.service.mjs +0 -47
  837. package/mobile/components/basic/default/esm2022/process-manager/process-manager.component.mjs +0 -175
  838. package/mobile/components/basic/default/esm2022/public_api.mjs +0 -10
  839. package/mobile/components/basic/default/fesm2022/index.mjs +0 -958
  840. package/mobile/components/basic/default/fesm2022/index.mjs.map +0 -1
  841. package/mobile/components/basic/default/file-browser/file-browser.component.d.ts +0 -39
  842. package/mobile/components/basic/default/file-browser/file-selector.service.d.ts +0 -27
  843. package/mobile/components/basic/default/image-cache/image-cache.directive.d.ts +0 -18
  844. package/mobile/components/basic/default/index.d.ts +0 -5
  845. package/mobile/components/basic/default/network-info-toaster/network-info-toaster.component.d.ts +0 -28
  846. package/mobile/components/basic/default/network-info-toaster/network-info-toaster.props.d.ts +0 -1
  847. package/mobile/components/basic/default/package.json +0 -23
  848. package/mobile/components/basic/default/process-manager/process-management.service.d.ts +0 -36
  849. package/mobile/components/basic/default/process-manager/process-manager.component.d.ts +0 -33
  850. package/mobile/components/basic/default/public_api.d.ts +0 -9
  851. package/mobile/components/basic/search/.npmignore +0 -2
  852. package/mobile/components/basic/search/bundles/index.umd.js +0 -66
  853. package/mobile/components/basic/search/esm2022/index.mjs +0 -5
  854. package/mobile/components/basic/search/esm2022/public_api.mjs +0 -3
  855. package/mobile/components/basic/search/esm2022/search.directive.mjs +0 -17
  856. package/mobile/components/basic/search/esm2022/search.module.mjs +0 -28
  857. package/mobile/components/basic/search/fesm2022/index.mjs +0 -49
  858. package/mobile/components/basic/search/fesm2022/index.mjs.map +0 -1
  859. package/mobile/components/basic/search/index.d.ts +0 -5
  860. package/mobile/components/basic/search/package.json +0 -23
  861. package/mobile/components/basic/search/public_api.d.ts +0 -2
  862. package/mobile/components/basic/search/search.directive.d.ts +0 -7
  863. package/mobile/components/basic/search/search.module.d.ts +0 -9
  864. package/mobile/components/containers/segmented-control/.npmignore +0 -2
  865. package/mobile/components/containers/segmented-control/bundles/index.umd.js +0 -281
  866. package/mobile/components/containers/segmented-control/esm2022/index.mjs +0 -5
  867. package/mobile/components/containers/segmented-control/esm2022/public_api.mjs +0 -4
  868. package/mobile/components/containers/segmented-control/esm2022/segment-content/segment-content.component.mjs +0 -70
  869. package/mobile/components/containers/segmented-control/esm2022/segment-content/segment-content.props.mjs +0 -14
  870. package/mobile/components/containers/segmented-control/esm2022/segmented-control.component.mjs +0 -147
  871. package/mobile/components/containers/segmented-control/esm2022/segmented-control.module.mjs +0 -32
  872. package/mobile/components/containers/segmented-control/esm2022/segmented-control.props.mjs +0 -9
  873. package/mobile/components/containers/segmented-control/fesm2022/index.mjs +0 -264
  874. package/mobile/components/containers/segmented-control/fesm2022/index.mjs.map +0 -1
  875. package/mobile/components/containers/segmented-control/index.d.ts +0 -5
  876. package/mobile/components/containers/segmented-control/package.json +0 -23
  877. package/mobile/components/containers/segmented-control/public_api.d.ts +0 -3
  878. package/mobile/components/containers/segmented-control/segment-content/segment-content.component.d.ts +0 -18
  879. package/mobile/components/containers/segmented-control/segment-content/segment-content.props.d.ts +0 -1
  880. package/mobile/components/containers/segmented-control/segmented-control.component.d.ts +0 -20
  881. package/mobile/components/containers/segmented-control/segmented-control.module.d.ts +0 -10
  882. package/mobile/components/containers/segmented-control/segmented-control.props.d.ts +0 -1
  883. package/mobile/components/data/media-list/.npmignore +0 -2
  884. package/mobile/components/data/media-list/bundles/index.umd.js +0 -310
  885. package/mobile/components/data/media-list/esm2022/index.mjs +0 -5
  886. package/mobile/components/data/media-list/esm2022/media-list-item/media-list-item.directive.mjs +0 -24
  887. package/mobile/components/data/media-list/esm2022/media-list.component.mjs +0 -213
  888. package/mobile/components/data/media-list/esm2022/media-list.module.mjs +0 -48
  889. package/mobile/components/data/media-list/esm2022/media-list.props.mjs +0 -16
  890. package/mobile/components/data/media-list/esm2022/public_api.mjs +0 -4
  891. package/mobile/components/data/media-list/fesm2022/index.mjs +0 -297
  892. package/mobile/components/data/media-list/fesm2022/index.mjs.map +0 -1
  893. package/mobile/components/data/media-list/index.d.ts +0 -5
  894. package/mobile/components/data/media-list/media-list-item/media-list-item.directive.d.ts +0 -8
  895. package/mobile/components/data/media-list/media-list.component.d.ts +0 -33
  896. package/mobile/components/data/media-list/media-list.module.d.ts +0 -14
  897. package/mobile/components/data/media-list/media-list.props.d.ts +0 -1
  898. package/mobile/components/data/media-list/package.json +0 -23
  899. package/mobile/components/data/media-list/public_api.d.ts +0 -3
  900. package/mobile/components/device/barcode-scanner/.npmignore +0 -2
  901. package/mobile/components/device/barcode-scanner/barcode-scanner.component.d.ts +0 -18
  902. package/mobile/components/device/barcode-scanner/barcode-scanner.module.d.ts +0 -9
  903. package/mobile/components/device/barcode-scanner/barcode-scanner.props.d.ts +0 -1
  904. package/mobile/components/device/barcode-scanner/bundles/index.umd.js +0 -129
  905. package/mobile/components/device/barcode-scanner/esm2022/barcode-scanner.component.mjs +0 -69
  906. package/mobile/components/device/barcode-scanner/esm2022/barcode-scanner.module.mjs +0 -28
  907. package/mobile/components/device/barcode-scanner/esm2022/barcode-scanner.props.mjs +0 -15
  908. package/mobile/components/device/barcode-scanner/esm2022/index.mjs +0 -5
  909. package/mobile/components/device/barcode-scanner/esm2022/public_api.mjs +0 -3
  910. package/mobile/components/device/barcode-scanner/fesm2022/index.mjs +0 -112
  911. package/mobile/components/device/barcode-scanner/fesm2022/index.mjs.map +0 -1
  912. package/mobile/components/device/barcode-scanner/index.d.ts +0 -5
  913. package/mobile/components/device/barcode-scanner/package.json +0 -23
  914. package/mobile/components/device/barcode-scanner/public_api.d.ts +0 -2
  915. package/mobile/components/device/camera/.npmignore +0 -2
  916. package/mobile/components/device/camera/bundles/index.umd.js +0 -170
  917. package/mobile/components/device/camera/camera.component.d.ts +0 -37
  918. package/mobile/components/device/camera/camera.module.d.ts +0 -9
  919. package/mobile/components/device/camera/camera.props.d.ts +0 -1
  920. package/mobile/components/device/camera/esm2022/camera.component.mjs +0 -101
  921. package/mobile/components/device/camera/esm2022/camera.module.mjs +0 -28
  922. package/mobile/components/device/camera/esm2022/camera.props.mjs +0 -25
  923. package/mobile/components/device/camera/esm2022/index.mjs +0 -5
  924. package/mobile/components/device/camera/esm2022/public_api.mjs +0 -3
  925. package/mobile/components/device/camera/fesm2022/index.mjs +0 -153
  926. package/mobile/components/device/camera/fesm2022/index.mjs.map +0 -1
  927. package/mobile/components/device/camera/index.d.ts +0 -5
  928. package/mobile/components/device/camera/package.json +0 -23
  929. package/mobile/components/device/camera/public_api.d.ts +0 -2
  930. package/mobile/components/input/file-upload/.npmignore +0 -2
  931. package/mobile/components/input/file-upload/bundles/index.umd.js +0 -88
  932. package/mobile/components/input/file-upload/esm2022/file-upload.directive.mjs +0 -41
  933. package/mobile/components/input/file-upload/esm2022/file-upload.module.mjs +0 -28
  934. package/mobile/components/input/file-upload/esm2022/index.mjs +0 -5
  935. package/mobile/components/input/file-upload/esm2022/public_api.mjs +0 -3
  936. package/mobile/components/input/file-upload/fesm2022/index.mjs +0 -71
  937. package/mobile/components/input/file-upload/fesm2022/index.mjs.map +0 -1
  938. package/mobile/components/input/file-upload/file-upload.directive.d.ts +0 -11
  939. package/mobile/components/input/file-upload/file-upload.module.d.ts +0 -9
  940. package/mobile/components/input/file-upload/index.d.ts +0 -5
  941. package/mobile/components/input/file-upload/package.json +0 -23
  942. package/mobile/components/input/file-upload/public_api.d.ts +0 -2
  943. package/mobile/components/page/default/.npmignore +0 -2
  944. package/mobile/components/page/default/bundles/index.umd.js +0 -127
  945. package/mobile/components/page/default/esm2022/index.mjs +0 -5
  946. package/mobile/components/page/default/esm2022/page-content-loader/page-content-loader.component.mjs +0 -24
  947. package/mobile/components/page/default/esm2022/page.directive.mjs +0 -58
  948. package/mobile/components/page/default/esm2022/page.module.mjs +0 -32
  949. package/mobile/components/page/default/esm2022/public_api.mjs +0 -4
  950. package/mobile/components/page/default/fesm2022/index.mjs +0 -110
  951. package/mobile/components/page/default/fesm2022/index.mjs.map +0 -1
  952. package/mobile/components/page/default/index.d.ts +0 -5
  953. package/mobile/components/page/default/package.json +0 -23
  954. package/mobile/components/page/default/page-content-loader/page-content-loader.component.d.ts +0 -7
  955. package/mobile/components/page/default/page.directive.d.ts +0 -19
  956. package/mobile/components/page/default/page.module.d.ts +0 -10
  957. package/mobile/components/page/default/public_api.d.ts +0 -3
  958. package/mobile/components/page/left-panel/.npmignore +0 -2
  959. package/mobile/components/page/left-panel/bundles/index.umd.js +0 -91
  960. package/mobile/components/page/left-panel/esm2022/index.mjs +0 -5
  961. package/mobile/components/page/left-panel/esm2022/left-panel.directive.mjs +0 -45
  962. package/mobile/components/page/left-panel/esm2022/left-panel.module.mjs +0 -28
  963. package/mobile/components/page/left-panel/esm2022/public_api.mjs +0 -3
  964. package/mobile/components/page/left-panel/fesm2022/index.mjs +0 -74
  965. package/mobile/components/page/left-panel/fesm2022/index.mjs.map +0 -1
  966. package/mobile/components/page/left-panel/index.d.ts +0 -5
  967. package/mobile/components/page/left-panel/left-panel.directive.d.ts +0 -16
  968. package/mobile/components/page/left-panel/left-panel.module.d.ts +0 -9
  969. package/mobile/components/page/left-panel/package.json +0 -23
  970. package/mobile/components/page/left-panel/public_api.d.ts +0 -2
  971. package/mobile/components/page/mobile-navbar/.npmignore +0 -2
  972. package/mobile/components/page/mobile-navbar/bundles/index.umd.js +0 -332
  973. package/mobile/components/page/mobile-navbar/esm2022/index.mjs +0 -5
  974. package/mobile/components/page/mobile-navbar/esm2022/mobile-navbar.component.mjs +0 -247
  975. package/mobile/components/page/mobile-navbar/esm2022/mobile-navbar.module.mjs +0 -32
  976. package/mobile/components/page/mobile-navbar/esm2022/mobile-navbar.props.mjs +0 -41
  977. package/mobile/components/page/mobile-navbar/esm2022/public_api.mjs +0 -3
  978. package/mobile/components/page/mobile-navbar/fesm2022/index.mjs +0 -317
  979. package/mobile/components/page/mobile-navbar/fesm2022/index.mjs.map +0 -1
  980. package/mobile/components/page/mobile-navbar/index.d.ts +0 -5
  981. package/mobile/components/page/mobile-navbar/mobile-navbar.component.d.ts +0 -50
  982. package/mobile/components/page/mobile-navbar/mobile-navbar.module.d.ts +0 -10
  983. package/mobile/components/page/mobile-navbar/mobile-navbar.props.d.ts +0 -2
  984. package/mobile/components/page/mobile-navbar/package.json +0 -23
  985. package/mobile/components/page/mobile-navbar/public_api.d.ts +0 -2
  986. package/mobile/components/page/tab-bar/.npmignore +0 -2
  987. package/mobile/components/page/tab-bar/bundles/index.umd.js +0 -279
  988. package/mobile/components/page/tab-bar/esm2022/index.mjs +0 -5
  989. package/mobile/components/page/tab-bar/esm2022/public_api.mjs +0 -3
  990. package/mobile/components/page/tab-bar/esm2022/tab-bar.module.mjs +0 -28
  991. package/mobile/components/page/tab-bar/esm2022/tabbar.component.mjs +0 -219
  992. package/mobile/components/page/tab-bar/esm2022/tabbar.props.mjs +0 -15
  993. package/mobile/components/page/tab-bar/fesm2022/index.mjs +0 -262
  994. package/mobile/components/page/tab-bar/fesm2022/index.mjs.map +0 -1
  995. package/mobile/components/page/tab-bar/index.d.ts +0 -5
  996. package/mobile/components/page/tab-bar/package.json +0 -23
  997. package/mobile/components/page/tab-bar/public_api.d.ts +0 -2
  998. package/mobile/components/page/tab-bar/tab-bar.module.d.ts +0 -9
  999. package/mobile/components/page/tab-bar/tabbar.component.d.ts +0 -40
  1000. package/mobile/components/page/tab-bar/tabbar.props.d.ts +0 -1
  1001. package/mobile/core/.npmignore +0 -2
  1002. package/mobile/core/bundles/index.umd.js +0 -1658
  1003. package/mobile/core/core.module.d.ts +0 -15
  1004. package/mobile/core/esm2022/core.module.mjs +0 -79
  1005. package/mobile/core/esm2022/index.mjs +0 -5
  1006. package/mobile/core/esm2022/native.xhr.mjs +0 -340
  1007. package/mobile/core/esm2022/public_api.mjs +0 -12
  1008. package/mobile/core/esm2022/services/device-file-cache.service.mjs +0 -92
  1009. package/mobile/core/esm2022/services/device-file-download.service.mjs +0 -154
  1010. package/mobile/core/esm2022/services/device-file-opener.service.mjs +0 -112
  1011. package/mobile/core/esm2022/services/device-file-upload.service.mjs +0 -91
  1012. package/mobile/core/esm2022/services/device-file.service.mjs +0 -237
  1013. package/mobile/core/esm2022/services/device-start-up-service.mjs +0 -2
  1014. package/mobile/core/esm2022/services/device.service.mjs +0 -150
  1015. package/mobile/core/esm2022/services/ext-app-message.service.mjs +0 -114
  1016. package/mobile/core/esm2022/services/network.service.mjs +0 -358
  1017. package/mobile/core/fesm2022/index.mjs +0 -1660
  1018. package/mobile/core/fesm2022/index.mjs.map +0 -1
  1019. package/mobile/core/index.d.ts +0 -5
  1020. package/mobile/core/native.xhr.d.ts +0 -36
  1021. package/mobile/core/package.json +0 -28
  1022. package/mobile/core/public_api.d.ts +0 -11
  1023. package/mobile/core/services/device-file-cache.service.d.ts +0 -24
  1024. package/mobile/core/services/device-file-download.service.d.ts +0 -36
  1025. package/mobile/core/services/device-file-opener.service.d.ts +0 -25
  1026. package/mobile/core/services/device-file-upload.service.d.ts +0 -27
  1027. package/mobile/core/services/device-file.service.d.ts +0 -45
  1028. package/mobile/core/services/device-start-up-service.d.ts +0 -4
  1029. package/mobile/core/services/device.service.d.ts +0 -52
  1030. package/mobile/core/services/ext-app-message.service.d.ts +0 -24
  1031. package/mobile/core/services/network.service.d.ts +0 -118
  1032. package/mobile/offline/.npmignore +0 -2
  1033. package/mobile/offline/bundles/index.umd.js +0 -3512
  1034. package/mobile/offline/esm2022/index.mjs +0 -5
  1035. package/mobile/offline/esm2022/models/config.mjs +0 -64
  1036. package/mobile/offline/esm2022/models/local-db-store.mjs +0 -412
  1037. package/mobile/offline/esm2022/offline.module.mjs +0 -100
  1038. package/mobile/offline/esm2022/public_api.mjs +0 -7
  1039. package/mobile/offline/esm2022/services/change-log.service.mjs +0 -332
  1040. package/mobile/offline/esm2022/services/local-db-data-pull.service.mjs +0 -525
  1041. package/mobile/offline/esm2022/services/local-db-management.service.mjs +0 -855
  1042. package/mobile/offline/esm2022/services/local-db.service.mjs +0 -193
  1043. package/mobile/offline/esm2022/services/local-key-value.service.mjs +0 -87
  1044. package/mobile/offline/esm2022/services/push.service.mjs +0 -49
  1045. package/mobile/offline/esm2022/services/workers/error-blocker.mjs +0 -115
  1046. package/mobile/offline/esm2022/services/workers/file-handler.mjs +0 -162
  1047. package/mobile/offline/esm2022/services/workers/id-resolver.mjs +0 -154
  1048. package/mobile/offline/esm2022/services/workers/multi-part-param-transformer.mjs +0 -63
  1049. package/mobile/offline/esm2022/utils/file-upload.utils.mjs +0 -59
  1050. package/mobile/offline/esm2022/utils/live-variable.utils.mjs +0 -232
  1051. package/mobile/offline/esm2022/utils/query-executor.utils.mjs +0 -82
  1052. package/mobile/offline/esm2022/utils/security.utils.mjs +0 -119
  1053. package/mobile/offline/esm2022/utils/utils.mjs +0 -8
  1054. package/mobile/offline/fesm2022/index.mjs +0 -3529
  1055. package/mobile/offline/fesm2022/index.mjs.map +0 -1
  1056. package/mobile/offline/index.d.ts +0 -5
  1057. package/mobile/offline/models/config.d.ts +0 -80
  1058. package/mobile/offline/models/local-db-store.d.ts +0 -119
  1059. package/mobile/offline/offline.module.d.ts +0 -17
  1060. package/mobile/offline/package.json +0 -28
  1061. package/mobile/offline/public_api.d.ts +0 -6
  1062. package/mobile/offline/services/change-log.service.d.ts +0 -112
  1063. package/mobile/offline/services/local-db-data-pull.service.d.ts +0 -139
  1064. package/mobile/offline/services/local-db-management.service.d.ts +0 -179
  1065. package/mobile/offline/services/local-db.service.d.ts +0 -83
  1066. package/mobile/offline/services/local-key-value.service.d.ts +0 -38
  1067. package/mobile/offline/services/push.service.d.ts +0 -11
  1068. package/mobile/offline/services/workers/error-blocker.d.ts +0 -26
  1069. package/mobile/offline/services/workers/file-handler.d.ts +0 -56
  1070. package/mobile/offline/services/workers/id-resolver.d.ts +0 -26
  1071. package/mobile/offline/services/workers/multi-part-param-transformer.d.ts +0 -11
  1072. package/mobile/offline/utils/file-upload.utils.d.ts +0 -14
  1073. package/mobile/offline/utils/live-variable.utils.d.ts +0 -24
  1074. package/mobile/offline/utils/query-executor.utils.d.ts +0 -15
  1075. package/mobile/offline/utils/security.utils.d.ts +0 -19
  1076. package/mobile/offline/utils/utils.d.ts +0 -2
  1077. package/mobile/placeholder/runtime/.npmignore +0 -2
  1078. package/mobile/placeholder/runtime/bundles/index.umd.js +0 -70
  1079. package/mobile/placeholder/runtime/components/app-ext.component.d.ts +0 -5
  1080. package/mobile/placeholder/runtime/esm2022/components/app-ext.component.mjs +0 -19
  1081. package/mobile/placeholder/runtime/esm2022/index.mjs +0 -5
  1082. package/mobile/placeholder/runtime/esm2022/mobile-runtime.module.mjs +0 -27
  1083. package/mobile/placeholder/runtime/esm2022/public_api.mjs +0 -3
  1084. package/mobile/placeholder/runtime/fesm2022/index.mjs +0 -50
  1085. package/mobile/placeholder/runtime/fesm2022/index.mjs.map +0 -1
  1086. package/mobile/placeholder/runtime/index.d.ts +0 -5
  1087. package/mobile/placeholder/runtime/mobile-runtime.module.d.ts +0 -9
  1088. package/mobile/placeholder/runtime/package.json +0 -27
  1089. package/mobile/placeholder/runtime/public_api.d.ts +0 -2
  1090. package/mobile/placeholder/runtime-dynamic/.npmignore +0 -2
  1091. package/mobile/placeholder/runtime-dynamic/bundles/index.umd.js +0 -40
  1092. package/mobile/placeholder/runtime-dynamic/esm2022/index.mjs +0 -5
  1093. package/mobile/placeholder/runtime-dynamic/esm2022/mobile-runtime-dynamic.module.mjs +0 -13
  1094. package/mobile/placeholder/runtime-dynamic/esm2022/public_api.mjs +0 -2
  1095. package/mobile/placeholder/runtime-dynamic/fesm2022/index.mjs +0 -20
  1096. package/mobile/placeholder/runtime-dynamic/fesm2022/index.mjs.map +0 -1
  1097. package/mobile/placeholder/runtime-dynamic/index.d.ts +0 -5
  1098. package/mobile/placeholder/runtime-dynamic/mobile-runtime-dynamic.module.d.ts +0 -7
  1099. package/mobile/placeholder/runtime-dynamic/package.json +0 -23
  1100. package/mobile/placeholder/runtime-dynamic/public_api.d.ts +0 -1
  1101. package/mobile/runtime/.npmignore +0 -2
  1102. package/mobile/runtime/bundles/index.umd.js +0 -732
  1103. package/mobile/runtime/components/app-ext.component.d.ts +0 -14
  1104. package/mobile/runtime/esm2022/components/app-ext.component.mjs +0 -59
  1105. package/mobile/runtime/esm2022/index.mjs +0 -5
  1106. package/mobile/runtime/esm2022/mobile-runtime.module.mjs +0 -351
  1107. package/mobile/runtime/esm2022/public_api.mjs +0 -6
  1108. package/mobile/runtime/esm2022/services/cookie.service.mjs +0 -135
  1109. package/mobile/runtime/esm2022/services/http-interceptor.service.mjs +0 -147
  1110. package/mobile/runtime/esm2022/services/webprocess.service.mjs +0 -76
  1111. package/mobile/runtime/fesm2022/index.mjs +0 -742
  1112. package/mobile/runtime/fesm2022/index.mjs.map +0 -1
  1113. package/mobile/runtime/index.d.ts +0 -5
  1114. package/mobile/runtime/mobile-runtime.module.d.ts +0 -51
  1115. package/mobile/runtime/package.json +0 -28
  1116. package/mobile/runtime/public_api.d.ts +0 -5
  1117. package/mobile/runtime/services/cookie.service.d.ts +0 -31
  1118. package/mobile/runtime/services/http-interceptor.service.d.ts +0 -19
  1119. package/mobile/runtime/services/webprocess.service.d.ts +0 -15
  1120. package/mobile/runtime-dynamic/.npmignore +0 -2
  1121. package/mobile/runtime-dynamic/bundles/index.umd.js +0 -461
  1122. package/mobile/runtime-dynamic/esm2022/index.mjs +0 -5
  1123. package/mobile/runtime-dynamic/esm2022/mobile-runtime-dynamic.module.mjs +0 -48
  1124. package/mobile/runtime-dynamic/esm2022/public_api.mjs +0 -2
  1125. package/mobile/runtime-dynamic/esm2022/services/live-sync.service.mjs +0 -404
  1126. package/mobile/runtime-dynamic/fesm2022/index.mjs +0 -454
  1127. package/mobile/runtime-dynamic/fesm2022/index.mjs.map +0 -1
  1128. package/mobile/runtime-dynamic/index.d.ts +0 -5
  1129. package/mobile/runtime-dynamic/mobile-runtime-dynamic.module.d.ts +0 -8
  1130. package/mobile/runtime-dynamic/package.json +0 -23
  1131. package/mobile/runtime-dynamic/public_api.d.ts +0 -1
  1132. package/mobile/runtime-dynamic/services/live-sync.service.d.ts +0 -38
  1133. package/mobile/variables/.npmignore +0 -2
  1134. package/mobile/variables/bundles/index.umd.js +0 -1166
  1135. package/mobile/variables/esm2022/index.mjs +0 -5
  1136. package/mobile/variables/esm2022/public_api.mjs +0 -10
  1137. package/mobile/variables/esm2022/services/calendar-service.mjs +0 -77
  1138. package/mobile/variables/esm2022/services/camera-service.mjs +0 -70
  1139. package/mobile/variables/esm2022/services/contacts-service.mjs +0 -74
  1140. package/mobile/variables/esm2022/services/datasync-service.mjs +0 -363
  1141. package/mobile/variables/esm2022/services/device-service/device-service.mjs +0 -161
  1142. package/mobile/variables/esm2022/services/device-service/location-service.mjs +0 -200
  1143. package/mobile/variables/esm2022/services/file-service.mjs +0 -87
  1144. package/mobile/variables/esm2022/services/scan-service.mjs +0 -60
  1145. package/mobile/variables/esm2022/variables.module.mjs +0 -78
  1146. package/mobile/variables/fesm2022/index.mjs +0 -1143
  1147. package/mobile/variables/fesm2022/index.mjs.map +0 -1
  1148. package/mobile/variables/index.d.ts +0 -5
  1149. package/mobile/variables/package.json +0 -28
  1150. package/mobile/variables/public_api.d.ts +0 -9
  1151. package/mobile/variables/services/calendar-service.d.ts +0 -10
  1152. package/mobile/variables/services/camera-service.d.ts +0 -8
  1153. package/mobile/variables/services/contacts-service.d.ts +0 -6
  1154. package/mobile/variables/services/datasync-service.d.ts +0 -11
  1155. package/mobile/variables/services/device-service/device-service.d.ts +0 -17
  1156. package/mobile/variables/services/device-service/location-service.d.ts +0 -63
  1157. package/mobile/variables/services/file-service.d.ts +0 -7
  1158. package/mobile/variables/services/scan-service.d.ts +0 -7
  1159. package/mobile/variables/variables.module.d.ts +0 -25
  1160. package/oAuth/esm2022/oAuth.module.mjs +0 -19
  1161. package/oAuth/oAuth.module.d.ts +0 -8
  1162. package/scripts/fullcalendar/main.min.js +0 -6
  1163. package/security/esm2022/security.module.mjs +0 -19
  1164. package/security/security.module.d.ts +0 -8
  1165. package/variables/esm2022/manager/variable/device-variable-manager.mjs +0 -48
  1166. package/variables/esm2022/manager/variable/device-variable-operation.mjs +0 -2
  1167. package/variables/esm2022/manager/variable/device-variable-service.mjs +0 -45
  1168. package/variables/esm2022/model/variable/device-variable.mjs +0 -19
  1169. package/variables/esm2022/variables.module.mjs +0 -52
  1170. package/variables/manager/variable/device-variable-manager.d.ts +0 -26
  1171. package/variables/manager/variable/device-variable-operation.d.ts +0 -37
  1172. package/variables/manager/variable/device-variable-service.d.ts +0 -6
  1173. package/variables/model/variable/device-variable.d.ts +0 -6
  1174. package/variables/variables.module.d.ts +0 -16
@@ -1 +1 @@
1
- {"version":3,"file":"index.mjs","sources":["../../../../projects/runtime-dynamic/src/app/components/page-wrapper.component.ts","../../../../projects/runtime-dynamic/src/app/app.routes.ts","../../../../projects/runtime-dynamic/src/app/services/app-js-provider.service.ts","../../../../projects/runtime-dynamic/src/app/services/app-resource-manager.service.ts","../../../../projects/runtime-dynamic/src/app/services/app-variables-provider.service.ts","../../../../projects/runtime-dynamic/src/app/services/app-extension.service.ts","../../../../projects/runtime-dynamic/src/app/services/component-ref-provider.service.ts","../../../../projects/runtime-dynamic/src/app/services/customwidget-config-provider.service.ts","../../../../projects/runtime-dynamic/src/app/services/prefab-config-provider.service.ts","../../../../projects/runtime-dynamic/src/app/app.module.ts","../../../../projects/runtime-dynamic/src/main.ts","../../../../projects/runtime-dynamic/src/index.ts"],"sourcesContent":["import {\n ApplicationRef,\n Component,\n ElementRef,\n Injector,\n NgZone,\n OnDestroy,\n OnInit,\n ViewContainerRef,\n HostListener\n} from '@angular/core';\nimport { ActivatedRoute, Router } from '@angular/router';\n\nimport { Subscription } from 'rxjs';\n\nimport { AbstractSpinnerService, App, noop} from '@wm/core';\nimport { MetadataService } from '@wm/variables';\nimport { SecurityService } from '@wm/security';\nimport { AppManagerService, BasePageComponent, ComponentRefProvider, ComponentType } from '@wm/runtime/base';\n\n@Component({\n selector: 'app-page-outlet',\n template: '<div></div>'\n})\nexport class PageWrapperComponent implements OnInit, OnDestroy {\n\n subscription: Subscription;\n instance: any;\n\n constructor(\n private injector: Injector,\n private route: ActivatedRoute,\n private vcRef: ViewContainerRef,\n private appRef: ApplicationRef,\n private metadataService: MetadataService,\n private securityService: SecurityService,\n private appManager: AppManagerService,\n private app: App,\n private ngZone: NgZone,\n private elRef: ElementRef,\n private spinnerService: AbstractSpinnerService,\n private componentRefProvider: ComponentRefProvider,\n private router: Router\n ) {}\n\n getTargetNode() {\n return this.elRef.nativeElement;\n }\n\n resetViewContainer() {\n this.vcRef.clear();\n const $target = this.getTargetNode();\n $target.innerHTML = '';\n }\n\n renderPage(pageName) {\n const $target = this.getTargetNode();\n\n this.appManager.loadAppVariables()\n .then(async () => {\n const pageComponentFactoryRef = await this.componentRefProvider.getComponentFactoryRef(pageName, ComponentType.PAGE);\n if (pageComponentFactoryRef) {\n const componentRef = this.vcRef.createComponent(pageComponentFactoryRef, 0, this.injector);\n this.instance = componentRef.instance;\n $target.appendChild(componentRef.location.nativeElement);\n } else {\n BasePageComponent.clear();\n }\n if (this.vcRef.length > 1) {\n this.vcRef.remove(1);\n }\n });\n }\n\n renderPrefabPreviewPage() {\n this.router.navigate(['prefab-preview']);\n }\n\n loadPage(pageName) {\n this.ngZone.run(() => {\n if (pageName) {\n this.renderPage(pageName);\n }\n });\n }\n\n ngOnInit() {\n if (this.app.isPrefabType) {\n // there is only one route\n this.renderPrefabPreviewPage();\n } else {\n $(this.getTargetNode()).find('>div').first().remove();\n this.subscription = this.route.params.subscribe(({pageName}: any) => {\n this.loadPage(pageName);\n });\n }\n }\n\n ngOnDestroy() {\n this.vcRef.clear();\n if (this.subscription) {\n this.subscription.unsubscribe();\n }\n }\n\n ngOnAttach() {\n this.getTargetNode().appendChild(this.instance.$page[0]);\n this.instance.ngOnAttach();\n }\n\n ngOnDetach() {\n this.instance.ngOnDetach();\n }\n}\n","import { MetadataResolve, AppExtensionJSResolve } from '@wm/runtime/base';\nimport { SecurityConfigResolve, PrefabPreviewComponent, CanDeactivatePageGuard, EmptyPageComponent } from '@wm/runtime/base';\n\nimport { PageWrapperComponent } from './components/page-wrapper.component';\nimport {Routes} from '@angular/router';\n\nconst appDependenciesResolve = {\n securityConfig: SecurityConfigResolve,\n metadata: MetadataResolve,\n appMetaConfig: AppExtensionJSResolve\n};\n\nexport const routes: Routes = [\n {\n path: '',\n pathMatch: 'full',\n resolve: appDependenciesResolve,\n component: EmptyPageComponent\n },\n {\n path: 'prefab-preview',\n pathMatch: 'full',\n resolve: appDependenciesResolve,\n component: PrefabPreviewComponent\n },\n {\n path: ':pageName',\n pathMatch: 'full',\n resolve: appDependenciesResolve,\n component: PageWrapperComponent,\n canDeactivate: [CanDeactivatePageGuard]\n }\n];\n","import { Injectable } from '@angular/core';\nimport { HttpClient } from '@angular/common/http';\n\nimport { AppJSProvider } from '@wm/runtime/base';\n\n@Injectable({\n providedIn: 'root'\n})\nexport class AppJSProviderService extends AppJSProvider {\n constructor(private $http: HttpClient) {\n super();\n }\n\n public getAppScriptFn(): Promise<Function> {\n return this.$http.get('./app.js', {responseType: 'text'})\n .toPromise()\n .then(script => new Function('App', 'Utils', 'Injector', script));\n }\n}\n","import { Injectable } from '@angular/core';\n\nimport { AbstractHttpService, App } from '@wm/core';\n\nconst cache = new Map<string, string>();\n\n@Injectable()\nexport class AppResourceManagerService {\n\n get(url: string, useCache?: boolean): string | any {\n const cachedResponse = cache.get(url);\n\n if (cachedResponse) {\n return Promise.resolve(cachedResponse);\n }\n\n return this.$http.get(url).then(response => {\n if (useCache) {\n cache.set(url, response);\n }\n return response;\n });\n }\n\n public clearCache() {\n cache.clear();\n }\n\n constructor(private $http: AbstractHttpService) {}\n}\n","import { Injectable } from '@angular/core';\nimport { AppVariablesProvider } from '@wm/runtime/base';\nimport { AppResourceManagerService } from './app-resource-manager.service';\n\n@Injectable({\n providedIn: 'root'\n})\nexport class AppVariablesProviderService extends AppVariablesProvider {\n constructor(private resourceManager: AppResourceManagerService) {\n super();\n }\n\n public async getAppVariables(): Promise<any> {\n return this.resourceManager.get('./app.variables.json');\n }\n}\n","import { Injectable } from '@angular/core';\nimport { AppExtensionProvider } from '@wm/runtime/base';\nimport { appendScriptToHead } from '@wm/core';\n@Injectable({\n providedIn: 'root'\n})\nexport class AppExtensionProviderService extends AppExtensionProvider {\n\n // With renderer create element, added onloaded callback the append to the body\n public loadFormatterConfigScript(callback:Function):void {\n try{\n appendScriptToHead(callback);\n }catch(e){\n console.warn('Error while loading the formatters.js file');\n }\n }\n}\n","import {\n Compiler,\n Component,\n CUSTOM_ELEMENTS_SCHEMA, forwardRef, Inject,\n Injectable,\n Injector,\n NgModule,\n NO_ERRORS_SCHEMA,\n ViewEncapsulation\n} from '@angular/core';\n\nimport { App, getValidJSON, UserDefinedExecutionContext } from '@wm/core';\nimport { transpile, scopeComponentStyles } from '@wm/transpiler';\nimport {\n AppManagerService,\n BasePageComponent,\n BasePartialComponent,\n BaseCustomWidgetComponent,\n BasePrefabComponent,\n ComponentRefProvider,\n ComponentType,\n RuntimeBaseModule,\n getPrefabMinJsonUrl,\n getPrefabPartialJsonUrl\n} from '@wm/runtime/base';\n\nimport { AppResourceManagerService } from './app-resource-manager.service';\nimport {isString, isUndefined} from \"lodash-es\";\nimport * as customWidgets from '@wavemaker/custom-widgets-m3';\n\ninterface IPageMinJSON {\n markup: string;\n script: string;\n styles: string;\n variables: string;\n config?: string;\n}\n\ndeclare const window: any;\n\nconst fragmentCache = new Map<string, any>();\n\nwindow.resourceCache = fragmentCache;\n\nconst componentFactoryRefCache = new Map<ComponentType, Map<string, any>>();\n\ncomponentFactoryRefCache.set(ComponentType.PAGE, new Map<string, any>());\ncomponentFactoryRefCache.set(ComponentType.PARTIAL, new Map<string, any>());\ncomponentFactoryRefCache.set(ComponentType.PREFAB, new Map<string, any>());\ncomponentFactoryRefCache.set(ComponentType.WIDGET, new Map<string, any>());\n\nconst _decodeURIComponent = (str: string) => decodeURIComponent(str.replace(/\\+/g, ' '));\n\nconst getFragmentUrl = (fragmentName: string, type: ComponentType, options?) => {\n if (type === ComponentType.PAGE || type === ComponentType.PARTIAL) {\n return options && options.prefab ? getPrefabPartialJsonUrl(options.prefab, fragmentName) : `./pages/${fragmentName}/page.min.json`;\n } else if (type === ComponentType.PREFAB) {\n return getPrefabMinJsonUrl(fragmentName);\n } else if (type === ComponentType.WIDGET){\n return `./custom-widgets/${fragmentName}/page.min.json` \n }\n};\n\nconst scriptCache = new Map<string, Function>();\nconst execScript = (\n script: string,\n identifier: string,\n ctx: string,\n instance: any,\n app: any,\n utils: any\n) => {\n let fn = scriptCache.get(identifier);\n // Fix for [WMS-21196]: Incorrect script is being assigned, when 2 prefabs have same partial name (i.e. same identifier).\n if ((ctx === 'Partial' && !isUndefined(instance.Prefab)) || !fn) {\n fn = new Function(ctx, 'App', 'Utils', script);\n scriptCache.set(identifier, fn);\n }\n fn(instance, app, utils);\n};\n\nclass BaseDynamicComponent {\n init() {}\n}\n\nconst getDynamicModule = (componentRef: any) => {\n return NgModule({\n declarations: [componentRef],\n imports: [\n RuntimeBaseModule,\n ],\n schemas: [CUSTOM_ELEMENTS_SCHEMA, NO_ERRORS_SCHEMA]\n })(class DynamicModule {});\n};\n\nconst getDynamicComponent = (\n componentName,\n type: ComponentType,\n template: string,\n css: string,\n script: any,\n variables: string,\n) => {\n\n const componentDef = {\n template,\n styles: [css],\n encapsulation: ViewEncapsulation.None\n };\n\n let BaseClass: any = BaseDynamicComponent;\n let selector = '';\n let context = '';\n\n switch (type) {\n case ComponentType.PAGE:\n BaseClass = BasePageComponent;\n selector = `app-page-${componentName}`;\n context = 'Page';\n break;\n case ComponentType.PARTIAL:\n BaseClass = BasePartialComponent;\n selector = `app-partial-${componentName}`;\n context = 'Partial';\n break;\n case ComponentType.PREFAB:\n BaseClass = BasePrefabComponent;\n selector = `app-prefab-${componentName}`;\n context = 'Prefab';\n break;\n case ComponentType.WIDGET:\n BaseClass = BaseCustomWidgetComponent;\n selector = `app-custom-${componentName}`;\n context = 'Widget';\n break;\n }\n\n class DynamicComponent extends BaseClass {\n isDynamicComponent: boolean = true;\n pageName;\n partialName;\n prefabName;\n customWidgetName;\n constructor(@Inject(Injector) public injector: Injector) {\n super();\n this.injector = injector;\n switch (type) {\n case ComponentType.PAGE:\n this.pageName = componentName;\n break;\n case ComponentType.PARTIAL:\n this.partialName = componentName;\n break;\n case ComponentType.PREFAB:\n this.prefabName = componentName;\n break;\n case ComponentType.WIDGET:\n this.customWidgetName = componentName;\n break;\n }\n\n super.init();\n }\n\n evalUserScript(instance: any, appContext: any, utils: any) {\n execScript(script, selector, context, instance, appContext, utils);\n }\n\n getVariables() {\n return JSON.parse(variables);\n }\n\n // in preview mode, there will be no function registered. functions will be generated dynamically through $parseEvent and $parseExpr\n getExpressions() {\n return {};\n }\n }\n\n const component = Component({\n ...componentDef,\n selector,\n providers: [\n {\n provide: UserDefinedExecutionContext,\n useExisting: DynamicComponent\n }\n ]\n })(DynamicComponent)\n return component;\n};\n\n@Injectable()\nexport class ComponentRefProviderService extends ComponentRefProvider {\n\n private loadResourcesOfFragment(componentName, componentType, options?): Promise<IPageMinJSON> {\n const url = getFragmentUrl(componentName, componentType, options);\n\n const resource = fragmentCache.get(url);\n\n if (resource) {\n return resource;\n }\n const promise = (((componentType === ComponentType.WIDGET && !customWidgets[componentName]) || componentType !== ComponentType.WIDGET) ? this.resouceMngr.get(url, true) : Promise.resolve(customWidgets[componentName]))\n .then(({markup, script, styles, variables, config}: IPageMinJSON) => {\n const response = {\n markup: transpile(_decodeURIComponent(markup)).markup,\n script: _decodeURIComponent(script),\n styles: scopeComponentStyles(componentName, componentType, _decodeURIComponent(styles)),\n variables: getValidJSON(_decodeURIComponent(variables)),\n ...(config? {config : getValidJSON(_decodeURIComponent(config))} : {})\n };\n fragmentCache.set(url, Promise.resolve(response));\n\n return response;\n }, e => {\n const status = e.details.status;\n const errorMsgMap = {\n 404 : this.app.appLocale.MESSAGE_PAGE_NOT_FOUND || 'The page you are trying to reach is not available',\n 403 : this.app.appLocale.LABEL_ACCESS_DENIED || 'Access Denied'\n };\n return Promise.reject(errorMsgMap[status]);\n });\n fragmentCache.set(url, promise);\n return promise;\n }\n\n constructor(\n private resouceMngr: AppResourceManagerService,\n private app: App,\n private appManager: AppManagerService,\n private compiler: Compiler\n ) {\n super();\n }\n\n public async getComponentFactoryRef(componentName: string, componentType: ComponentType, options?: {}): Promise<any> {\n // check in the cache.\n const componentFactoryMap = componentFactoryRefCache.get(componentType);\n let componentFactoryRef;\n if (componentFactoryMap) {\n const updatedComponentName = (options && options['prefab']) ? options['prefab'] + componentName : componentName;\n componentFactoryRef = componentFactoryMap.get(updatedComponentName);\n\n if (componentFactoryRef) {\n return componentFactoryRef;\n }\n }\n\n return this.loadResourcesOfFragment(componentName, componentType, options)\n .then(({markup, script, styles, variables}) => {\n const componentDef = getDynamicComponent(componentName, componentType, markup, styles, script, JSON.stringify(variables));\n const moduleDef = getDynamicModule(componentDef);\n\n componentFactoryRef = this.compiler\n .compileModuleAndAllComponentsSync(moduleDef)\n .componentFactories\n .filter(factory => // @ts-ignore\n factory.componentType === componentDef)[0];\n const updatedComponentName = (options && options['prefab']) ? options['prefab'] + componentName : componentName;\n componentFactoryRefCache.get(componentType).set(updatedComponentName, componentFactoryRef);\n\n return componentFactoryRef;\n }, (err) => {\n if (err) {\n const msg = \"Error while loading page\";\n // console the error for easy debugging\n console.log(msg, err);\n this.appManager.notifyApp(\n isString(err) ? err : msg + ', check browser console for error details',\n 'error'\n );\n }\n });\n }\n\n // clears the cache map\n public clearComponentFactoryRefCache() {\n this.resouceMngr.clearCache();\n fragmentCache.clear();\n componentFactoryRefCache.forEach(map => {\n map.clear();\n });\n }\n}\n","import { Injectable } from '@angular/core';\n\nimport { CustomwidgetConfigProvider } from '@wm/runtime/base';\n\nconst cache = new Map<string, any>();\n@Injectable()\nexport class CustomwidgetConfigProviderService extends CustomwidgetConfigProvider {\n\n constructor() {\n super();\n }\n\n public getConfig(widgetname: string): Promise<any> {\n return new Promise((res, rej) => {\n Promise.resolve(window['resourceCache'].get(`./custom-widgets/${widgetname}/page.min.json`)).then((pageInfo) => {\n res(pageInfo.config);\n });\n })\n }\n}\n","import { Injectable } from '@angular/core';\n\nimport { getPrefabConfigUrl, PrefabConfigProvider } from '@wm/runtime/base';\n\nimport { AppResourceManagerService } from './app-resource-manager.service';\n\nconst cache = new Map<string, any>();\n@Injectable()\nexport class PrefabConfigProviderService extends PrefabConfigProvider {\n\n constructor(private resourceMngr: AppResourceManagerService) {\n super();\n }\n\n public getConfig(prefabName: string): Promise<any> {\n const config = cache.get(prefabName);\n if (config) {\n return Promise.resolve(config);\n }\n\n return this.resourceMngr.get(getPrefabConfigUrl(prefabName))\n .then(_config => {\n cache.set(prefabName, _config);\n return _config;\n });\n }\n}\n","import { Injector, ModuleWithProviders, NgModule } from '@angular/core';\nimport { BrowserModule } from '@angular/platform-browser';\nimport { CommonModule } from '@angular/common';\nimport { RouteReuseStrategy, RouterModule } from '@angular/router';\nimport { HttpClientModule, HttpClientXsrfModule } from '@angular/common/http';\nimport { FormsModule, ReactiveFormsModule } from '@angular/forms';\n\nimport { TypeaheadModule } from 'ngx-bootstrap/typeahead';\nimport { TimepickerModule as ngxTimepickerModule } from 'ngx-bootstrap/timepicker';\nimport { ProgressbarModule } from 'ngx-bootstrap/progressbar';\nimport { PaginationModule as ngxPaginationModule } from 'ngx-bootstrap/pagination';\nimport { ModalModule } from 'ngx-bootstrap/modal';\nimport { TooltipModule } from 'ngx-bootstrap/tooltip';\nimport { BsDatepickerModule } from 'ngx-bootstrap/datepicker';\nimport { BsDropdownModule } from 'ngx-bootstrap/dropdown';\nimport { PopoverModule as ngxPopoverModule } from 'ngx-bootstrap/popover';\n\nimport { NgCircleProgressModule } from 'ng-circle-progress';\nimport { ToastNoAnimationModule } from 'ngx-toastr';\nimport { CarouselModule as ngxCarouselModule, } from 'ngx-bootstrap/carousel';\n\nimport {App, getWmProjectProperties, PartialRefProvider, CustomWidgetRefProvider} from '@wm/core';\n// Basic widgets\n\nimport { BasicModule } from '@wm/components/basic';\nimport { ProgressModule } from '@wm/components/basic/progress';\nimport { RichTextEditorModule } from '@wm/components/basic/rich-text-editor';\nimport { SearchModule } from '@wm/components/basic/search';\nimport { TreeModule } from '@wm/components/basic/tree';\n\n// input\nimport { InputModule } from '@wm/components/input';\nimport { CalendarModule } from '@wm/components/input/calendar';\nimport { ChipsModule } from '@wm/components/input/chips';\nimport { ColorPickerModule } from '@wm/components/input/color-picker';\nimport { CurrencyModule } from '@wm/components/input/currency';\nimport { EpochModule } from '@wm/components/input/epoch';\nimport { FileUploadModule } from '@wm/components/input/file-upload';\nimport { RatingModule } from '@wm/components/input/rating';\nimport { SliderModule } from '@wm/components/input/slider';\n\nimport { MobileRuntimeDynamicModule, MOBILE_COMPONENT_MODULES_FOR_ROOT } from '@wm/mobile/runtime/dynamic';\n\n// Data\nimport { CardModule } from '@wm/components/data/card';\nimport { FormModule } from '@wm/components/data/form';\nimport { ListModule } from '@wm/components/data/list';\nimport { LiveTableModule } from '@wm/components/data/live-table';\nimport { PaginationModule } from '@wm/components/data/pagination';\nimport { TableModule } from '@wm/components/data/table';\n\n// Chart\nimport { ChartModule } from '@wm/components/chart';\n\n// Containers\nimport { AccordionModule } from '@wm/components/containers/accordion';\nimport { LinearLayoutModule } from '@wm/components/containers/linear-layout';\nimport { LayoutGridModule } from '@wm/components/containers/layout-grid';\nimport { PanelModule } from '@wm/components/containers/panel';\nimport { TabsModule } from '@wm/components/containers/tabs';\nimport { TileModule } from '@wm/components/containers/tile';\nimport { WizardModule } from '@wm/components/containers/wizard';\n\n// Dialogs\nimport { AlertDialogModule } from '@wm/components/dialogs/alert-dialog';\nimport { IframeDialogModule } from '@wm/components/dialogs/iframe-dialog';\nimport { LoginDialogModule } from '@wm/components/dialogs/login-dialog';\nimport { PartialDialogModule } from '@wm/components/dialogs/partial-dialog';\n\n// Navigation\nimport { BreadcrumbModule } from '@wm/components/navigation/breadcrumb';\nimport { MenuModule } from '@wm/components/navigation/menu';\nimport { NavbarModule } from '@wm/components/navigation/navbar';\nimport { PopoverModule } from '@wm/components/navigation/popover';\n\n// Advanced\nimport { CarouselModule } from '@wm/components/advanced/carousel';\nimport { LoginModule } from '@wm/components/advanced/login';\nimport { MarqueeModule } from '@wm/components/advanced/marquee';\nimport { CustomModule } from '@wm/components/advanced/custom';\n\nimport { PageModule } from '@wm/components/page';\nimport { FooterModule } from '@wm/components/page/footer';\nimport { HeaderModule } from '@wm/components/page/header';\nimport { LeftPanelModule } from '@wm/components/page/left-panel';\nimport { RightPanelModule } from '@wm/components/page/right-panel';\nimport { TopNavModule } from '@wm/components/page/top-nav';\n\nimport { PrefabModule } from '@wm/components/prefab';\n\nimport {\n AppComponent,\n AppJSProvider,\n AppVariablesProvider,\n ComponentRefProvider,\n PrefabConfigProvider,\n WmRouteReuseStrategy,\n WM_MODULES_FOR_ROOT,\n CustomwidgetConfigProvider,\n REQUIRED_MODULES_FOR_DYNAMIC_COMPONENTS,\n AppExtensionProvider\n} from '@wm/runtime/base';\n\nimport { routes } from './app.routes';\nimport { PageWrapperComponent } from './components/page-wrapper.component';\nimport { AppJSProviderService } from './services/app-js-provider.service';\nimport { AppVariablesProviderService } from './services/app-variables-provider.service';\nimport { AppExtensionProviderService } from './services/app-extension.service';\nimport { ComponentRefProviderService } from './services/component-ref-provider.service';\nimport { CustomwidgetConfigProviderService } from './services/customwidget-config-provider.service';\nimport { PrefabConfigProviderService } from './services/prefab-config-provider.service';\nimport { AppResourceManagerService } from './services/app-resource-manager.service';\nimport { BrowserAnimationsModule } from '@angular/platform-browser/animations';\n\nexport const routerModule = RouterModule.forRoot(routes, { useHash: true, scrollPositionRestoration: 'top' });\nexport const toastrModule = ToastNoAnimationModule.forRoot({ maxOpened: 1, autoDismiss: true });\n\n// In angular 15, xsrf headerName should not be null. Angular 15 is not using default header value like it used to send in calls\n// for angular 12 if the headerName is null . The user has to take care of not sending null values. Then ng 15 uses default value for headerName\nlet xsrfHeaderName = getWmProjectProperties().xsrf_header_name;\nlet xsrfOptions = {\n cookieName: 'wm_xsrf_token'\n}\nif(xsrfHeaderName) {\n xsrfOptions['headerName'] = xsrfHeaderName;\n}\nexport const httpClientXsrfModule = HttpClientXsrfModule.withOptions(xsrfOptions);\n\nexport const modalModule: ModuleWithProviders<ModalModule> = ModalModule.forRoot();\nexport const bsDatePickerModule: ModuleWithProviders<BsDatepickerModule> = BsDatepickerModule.forRoot();\nexport const timepickerModule: ModuleWithProviders<ngxTimepickerModule> = ngxTimepickerModule.forRoot();\nexport const bsDropdownModule: ModuleWithProviders<BsDropdownModule> = BsDropdownModule.forRoot();\nexport const paginationModule: ModuleWithProviders<ngxPaginationModule> = ngxPaginationModule.forRoot();\nexport const typeaheadModule: ModuleWithProviders<TypeaheadModule> = TypeaheadModule.forRoot();\nexport const progressbarModule: ModuleWithProviders<ProgressbarModule> = ProgressbarModule.forRoot();\nexport const carouselModule: ModuleWithProviders<ngxCarouselModule> = ngxCarouselModule.forRoot();\nexport const popoverModule: ModuleWithProviders<ngxPopoverModule> = ngxPopoverModule.forRoot();\nexport const ngCircleProgressModule: ModuleWithProviders<NgCircleProgressModule> = NgCircleProgressModule.forRoot({});\nexport const tooltipModule: ModuleWithProviders<TooltipModule> = TooltipModule.forRoot();\n\nconst componentsModule = [\n // NGX Bootstrap\n BsDatepickerModule,\n ngxTimepickerModule,\n BsDropdownModule,\n ngxPaginationModule,\n TypeaheadModule,\n ProgressbarModule,\n ngxCarouselModule,\n ngxPopoverModule,\n NgCircleProgressModule,\n TooltipModule,\n\n // Basic widgets\n BasicModule,\n ProgressModule,\n RichTextEditorModule,\n SearchModule,\n TreeModule,\n\n // Input\n CalendarModule,\n ChipsModule,\n ColorPickerModule,\n CurrencyModule,\n EpochModule,\n FileUploadModule,\n InputModule,\n RatingModule,\n SliderModule,\n\n // Data\n CardModule,\n FormModule,\n ListModule,\n LiveTableModule,\n PaginationModule,\n TableModule,\n\n // chart\n ChartModule,\n\n // container modules\n AccordionModule,\n LinearLayoutModule,\n LayoutGridModule,\n PanelModule,\n TabsModule,\n TileModule,\n WizardModule,\n\n // dialogs\n AlertDialogModule,\n IframeDialogModule,\n LoginDialogModule,\n PartialDialogModule,\n\n // navigation\n BreadcrumbModule,\n MenuModule,\n NavbarModule,\n PopoverModule,\n\n // Advanced\n CarouselModule,\n LoginModule,\n MarqueeModule,\n CustomModule,\n\n PageModule,\n FooterModule,\n HeaderModule,\n LeftPanelModule,\n RightPanelModule,\n TopNavModule,\n\n PrefabModule\n];\n\nREQUIRED_MODULES_FOR_DYNAMIC_COMPONENTS.push(...componentsModule);\nREQUIRED_MODULES_FOR_DYNAMIC_COMPONENTS.push(...MOBILE_COMPONENT_MODULES_FOR_ROOT);\nREQUIRED_MODULES_FOR_DYNAMIC_COMPONENTS.push(FormsModule, ReactiveFormsModule);\n\n@NgModule({\n declarations: [\n PageWrapperComponent\n ],\n imports: [\n BrowserModule,\n BrowserAnimationsModule,\n CommonModule,\n RouterModule,\n HttpClientModule,\n\n modalModule,\n bsDatePickerModule,\n timepickerModule,\n bsDropdownModule,\n paginationModule,\n typeaheadModule,\n tooltipModule,\n progressbarModule,\n carouselModule,\n popoverModule,\n ngCircleProgressModule,\n\n routerModule,\n toastrModule,\n httpClientXsrfModule,\n MobileRuntimeDynamicModule,\n WM_MODULES_FOR_ROOT\n ],\n providers: [\n AppResourceManagerService,\n { provide: AppJSProvider, useClass: AppJSProviderService },\n { provide: AppVariablesProvider, useClass: AppVariablesProviderService },\n { provide: AppExtensionProvider,useClass:AppExtensionProviderService},\n { provide: ComponentRefProvider, useClass: ComponentRefProviderService },\n { provide: PartialRefProvider, useClass: ComponentRefProviderService },\n { provide: CustomWidgetRefProvider, useClass: ComponentRefProviderService },\n { provide: CustomwidgetConfigProvider, useClass: CustomwidgetConfigProviderService },\n { provide: PrefabConfigProvider, useClass: PrefabConfigProviderService },\n { provide: RouteReuseStrategy, useClass: WmRouteReuseStrategy },\n ],\n bootstrap: [AppComponent]\n})\nexport class AppModule {\n constructor(private app: App, private inj: Injector, private componentRefProvider: ComponentRefProvider) {\n if (window['cordova']) {\n // clear the cached urls on logout, to load the Login Page and not the Main Page as app reload(window.location.reload) is not invoked in mobile\n this.app.subscribe('userLoggedOut', this.componentRefProvider.clearComponentFactoryRefCache.bind(this.componentRefProvider));\n }\n }\n}\n","import { ApplicationRef, enableProdMode, NgModuleRef } from '@angular/core';\nimport { platformBrowserDynamic } from '@angular/platform-browser-dynamic';\n\nimport { AppModule } from './app/app.module';\nimport {isEmpty} from \"lodash-es\";\n\nconst DEBUG_MODE = 'debugMode';\n\nif (sessionStorage.getItem(DEBUG_MODE) !== 'true') {\n enableProdMode();\n}\n\nconsole.time('bootstrap');\n\n\ndocument.addEventListener('DOMContentLoaded', () => {\n new Promise<void|Event>( resolve => {\n if (window['cordova']) {\n document.addEventListener('deviceready', resolve);\n } else {\n resolve();\n }\n }).then(() => platformBrowserDynamic().bootstrapModule(AppModule))\n .then((appModuleRef: NgModuleRef<AppModule>) => {\n const applicationRef = appModuleRef.injector.get(ApplicationRef);\n window.addEventListener('unload', () => {\n applicationRef.components.map(c => c && c.destroy());\n });\n console.timeEnd('bootstrap');\n }, err => console.log(err));\n});\n\n(window as any).debugMode = function(on) {\n if (isEmpty(on)) {\n on = true;\n }\n const value = on ? 'true' : 'false';\n if (sessionStorage.getItem(DEBUG_MODE) !== value) {\n sessionStorage.setItem(DEBUG_MODE, value);\n window.location.reload();\n }\n};\n\nexport default () => {};\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public_api';\n"],"names":["i1","cache","i1.AppResourceManagerService","i2","i3","ngxTimepickerModule","ngxPaginationModule","ngxCarouselModule","ngxPopoverModule","PaginationModule","PopoverModule","CarouselModule"],"mappings":"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"}
1
+ {"version":3,"file":"index.mjs","sources":["../../../../projects/runtime-dynamic/src/app/components/page-wrapper.component.ts","../../../../projects/runtime-dynamic/src/app/app.routes.ts","../../../../projects/runtime-dynamic/src/app/services/customwidget-config-provider.service.ts","../../../../projects/runtime-dynamic/src/app/services/app-js-provider.service.ts","../../../../projects/runtime-dynamic/src/app/services/app-resource-manager.service.ts","../../../../projects/runtime-dynamic/src/app/services/app-variables-provider.service.ts","../../../../projects/runtime-dynamic/src/app/services/app-extension.service.ts","../../../../projects/runtime-dynamic/src/app/services/component-ref-provider.service.ts","../../../../projects/runtime-dynamic/src/app/services/prefab-config-provider.service.ts","../../../../projects/runtime-dynamic/src/app/app.config.ts","../../../../projects/runtime-dynamic/src/main.ts","../../../../projects/runtime-dynamic/src/app/app.module.ts","../../../../projects/runtime-dynamic/src/index.ts"],"sourcesContent":["import { WmComponentsModule } from \"@wm/components/base\";\nimport {\n ApplicationRef,\n Component,\n ElementRef,\n Injector,\n NgZone,\n OnDestroy,\n OnInit,\n ViewContainerRef,\n HostListener\n} from '@angular/core';\nimport { ActivatedRoute, Router } from '@angular/router';\n\nimport { Subscription } from 'rxjs';\n\nimport { AbstractSpinnerService, App, noop} from '@wm/core';\nimport { MetadataService } from '@wm/variables';\nimport { SecurityService } from '@wm/security';\nimport { AppManagerService, BasePageComponent, ComponentRefProvider, ComponentType } from '@wm/runtime/base';\n\n@Component({\n standalone: true,\n imports: [WmComponentsModule],\n selector: 'app-page-outlet',\n template: '<div></div>'\n})\nexport class PageWrapperComponent implements OnInit, OnDestroy {\n\n subscription: Subscription;\n instance: any;\n\n constructor(\n private injector: Injector,\n private route: ActivatedRoute,\n private vcRef: ViewContainerRef,\n private appRef: ApplicationRef,\n private metadataService: MetadataService,\n private securityService: SecurityService,\n private appManager: AppManagerService,\n private app: App,\n private ngZone: NgZone,\n private elRef: ElementRef,\n private spinnerService: AbstractSpinnerService,\n private componentRefProvider: ComponentRefProvider,\n private router: Router\n ) {}\n\n getTargetNode() {\n return this.elRef.nativeElement;\n }\n\n resetViewContainer() {\n this.vcRef.clear();\n const $target = this.getTargetNode();\n $target.innerHTML = '';\n }\n\n renderPage(pageName) {\n const $target = this.getTargetNode();\n\n this.appManager.loadAppVariables()\n .then(async () => {\n const pageComponentFactoryRef = await this.componentRefProvider.getComponentFactoryRef(pageName, ComponentType.PAGE);\n if (pageComponentFactoryRef) {\n const componentRef = this.vcRef.createComponent(pageComponentFactoryRef, 0, this.injector);\n this.instance = componentRef.instance;\n $target.appendChild(componentRef.location.nativeElement);\n } else {\n BasePageComponent.clear();\n }\n if (this.vcRef.length > 1) {\n this.vcRef.remove(1);\n }\n });\n }\n\n renderPrefabPreviewPage() {\n this.router.navigate(['prefab-preview']);\n }\n\n loadPage(pageName) {\n this.ngZone.run(() => {\n if (pageName) {\n this.renderPage(pageName);\n }\n });\n }\n\n ngOnInit() {\n if (this.app.isPrefabType) {\n // there is only one route\n this.renderPrefabPreviewPage();\n } else {\n $(this.getTargetNode()).find('>div').first().remove();\n this.subscription = this.route.params.subscribe(({pageName}: any) => {\n this.loadPage(pageName);\n });\n }\n }\n\n ngOnDestroy() {\n this.vcRef.clear();\n if (this.subscription) {\n this.subscription.unsubscribe();\n }\n }\n\n ngOnAttach() {\n this.getTargetNode().appendChild(this.instance.$page[0]);\n this.instance.ngOnAttach();\n }\n\n ngOnDetach() {\n this.instance.ngOnDetach();\n }\n}\n","import { MetadataResolve, AppExtensionJSResolve } from '@wm/runtime/base';\nimport { SecurityConfigResolve, PrefabPreviewComponent, CanDeactivatePageGuard, EmptyPageComponent } from '@wm/runtime/base';\n\nimport { PageWrapperComponent } from './components/page-wrapper.component';\nimport {Routes} from '@angular/router';\n\nconst appDependenciesResolve = {\n securityConfig: SecurityConfigResolve,\n metadata: MetadataResolve,\n appMetaConfig: AppExtensionJSResolve\n};\n\nexport const routes: Routes = [\n {\n path: '',\n pathMatch: 'full',\n resolve: appDependenciesResolve,\n component: EmptyPageComponent\n },\n {\n path: 'prefab-preview',\n pathMatch: 'full',\n resolve: appDependenciesResolve,\n component: PrefabPreviewComponent\n },\n {\n path: ':pageName',\n pathMatch: 'full',\n resolve: appDependenciesResolve,\n component: PageWrapperComponent,\n canDeactivate: [CanDeactivatePageGuard]\n }\n];\n","import { Injectable } from '@angular/core';\n\nimport { CustomwidgetConfigProvider } from '@wm/runtime/base';\n\nconst cache = new Map<string, any>();\n@Injectable()\nexport class CustomwidgetConfigProviderService extends CustomwidgetConfigProvider {\n\n constructor() {\n super();\n }\n\n public getConfig(widgetname: string): Promise<any> {\n return new Promise((res, rej) => {\n Promise.resolve(window['resourceCache'].get(`./custom-widgets/${widgetname}/page.min.json`)).then((pageInfo) => {\n res(pageInfo.config);\n });\n })\n }\n}\n","import { Injectable } from '@angular/core';\nimport { HttpClient } from '@angular/common/http';\n\nimport { AppJSProvider } from '@wm/runtime/base';\n\n@Injectable({\n providedIn: 'root'\n})\nexport class AppJSProviderService extends AppJSProvider {\n constructor(private $http: HttpClient) {\n super();\n }\n\n public getAppScriptFn(): Promise<Function> {\n return this.$http.get('./app.js', {responseType: 'text'})\n .toPromise()\n .then(script => new Function('App', 'Utils', 'Injector', script));\n }\n}\n","import { Injectable } from '@angular/core';\n\nimport { AbstractHttpService, App } from '@wm/core';\n\nconst cache = new Map<string, string>();\n\n@Injectable()\nexport class AppResourceManagerService {\n\n get(url: string, useCache?: boolean): string | any {\n const cachedResponse = cache.get(url);\n\n if (cachedResponse) {\n return Promise.resolve(cachedResponse);\n }\n\n return this.$http.get(url).then(response => {\n if (useCache) {\n cache.set(url, response);\n }\n return response;\n });\n }\n\n public clearCache() {\n cache.clear();\n }\n\n constructor(private $http: AbstractHttpService) {}\n}\n","import { Injectable } from '@angular/core';\nimport { AppVariablesProvider } from '@wm/runtime/base';\nimport { AppResourceManagerService } from './app-resource-manager.service';\n\n@Injectable({\n providedIn: 'root'\n})\nexport class AppVariablesProviderService extends AppVariablesProvider {\n constructor(private resourceManager: AppResourceManagerService) {\n super();\n }\n\n public async getAppVariables(): Promise<any> {\n return this.resourceManager.get('./app.variables.json');\n }\n}\n","import { Injectable } from '@angular/core';\nimport { AppExtensionProvider } from '@wm/runtime/base';\nimport { appendScriptToHead } from '@wm/core';\n@Injectable({\n providedIn: 'root'\n})\nexport class AppExtensionProviderService extends AppExtensionProvider {\n\n // With renderer create element, added onloaded callback the append to the body\n public loadFormatterConfigScript(callback:Function):void {\n try{\n appendScriptToHead(callback);\n }catch(e){\n console.warn('Error while loading the formatters.js file');\n }\n }\n}\n","import {\n Compiler,\n Component,\n CUSTOM_ELEMENTS_SCHEMA, forwardRef, Inject,\n Injectable,\n Injector,\n NgModule,\n NO_ERRORS_SCHEMA,\n ViewEncapsulation\n} from '@angular/core';\n\nimport { App, getValidJSON, UserDefinedExecutionContext } from '@wm/core';\nimport { transpile, scopeComponentStyles } from '@wm/transpiler';\nimport {\n AppManagerService,\n BasePageComponent,\n BasePartialComponent,\n BaseCustomWidgetComponent,\n BasePrefabComponent,\n ComponentRefProvider,\n ComponentType,\n RuntimeBaseModule,\n getPrefabMinJsonUrl,\n getPrefabPartialJsonUrl\n} from '@wm/runtime/base';\n\nimport { AppResourceManagerService } from './app-resource-manager.service';\nimport { isString, isUndefined } from \"lodash-es\";\nimport * as customWidgets from '@wavemaker/custom-widgets-m3';\n\ninterface IPageMinJSON {\n markup: string;\n script: string;\n styles: string;\n variables: string;\n config?: string;\n}\n\ndeclare const window: any;\n\nconst fragmentCache = new Map<string, any>();\n\nwindow.resourceCache = fragmentCache;\n\nconst componentFactoryRefCache = new Map<ComponentType, Map<string, any>>();\n\ncomponentFactoryRefCache.set(ComponentType.PAGE, new Map<string, any>());\ncomponentFactoryRefCache.set(ComponentType.PARTIAL, new Map<string, any>());\ncomponentFactoryRefCache.set(ComponentType.PREFAB, new Map<string, any>());\ncomponentFactoryRefCache.set(ComponentType.WIDGET, new Map<string, any>());\n\nconst _decodeURIComponent = (str: string) => decodeURIComponent(str.replace(/\\+/g, ' '));\n\nconst getFragmentUrl = (fragmentName: string, type: ComponentType, options?) => {\n if (type === ComponentType.PAGE || type === ComponentType.PARTIAL) {\n return options && options.prefab ? getPrefabPartialJsonUrl(options.prefab, fragmentName) : `./pages/${fragmentName}/page.min.json`;\n } else if (type === ComponentType.PREFAB) {\n return getPrefabMinJsonUrl(fragmentName);\n } else if (type === ComponentType.WIDGET) {\n return `./custom-widgets/${fragmentName}/page.min.json`\n }\n};\n\nconst scriptCache = new Map<string, Function>();\nconst execScript = (\n script: string,\n identifier: string,\n ctx: string,\n instance: any,\n app: any,\n utils: any\n) => {\n let fn = scriptCache.get(identifier);\n // Fix for [WMS-21196]: Incorrect script is being assigned, when 2 prefabs have same partial name (i.e. same identifier).\n if ((ctx === 'Partial' && !isUndefined(instance.Prefab)) || !fn) {\n fn = new Function(ctx, 'App', 'Utils', script);\n scriptCache.set(identifier, fn);\n }\n fn(instance, app, utils);\n};\n\nclass BaseDynamicComponent {\n init() { }\n}\n\nconst getDynamicModule = (componentRef: any) => {\n return NgModule({\n declarations: [componentRef],\n imports: [\n RuntimeBaseModule,\n ],\n schemas: [CUSTOM_ELEMENTS_SCHEMA, NO_ERRORS_SCHEMA]\n })(class DynamicModule { });\n};\n\nconst getDynamicComponent = (\n componentName,\n type: ComponentType,\n template: string,\n css: string,\n script: any,\n variables: string,\n) => {\n\n const componentDef = {\n template,\n styles: [css],\n encapsulation: ViewEncapsulation.None\n };\n\n let BaseClass: any = BaseDynamicComponent;\n let selector = '';\n let context = '';\n\n switch (type) {\n case ComponentType.PAGE:\n BaseClass = BasePageComponent;\n selector = `app-page-${componentName}`;\n context = 'Page';\n break;\n case ComponentType.PARTIAL:\n BaseClass = BasePartialComponent;\n selector = `app-partial-${componentName}`;\n context = 'Partial';\n break;\n case ComponentType.PREFAB:\n BaseClass = BasePrefabComponent;\n selector = `app-prefab-${componentName}`;\n context = 'Prefab';\n break;\n case ComponentType.WIDGET:\n BaseClass = BaseCustomWidgetComponent;\n selector = `app-custom-${componentName}`;\n context = 'Widget';\n break;\n }\n\n class DynamicComponent extends BaseClass {\n isDynamicComponent: boolean = true;\n pageName;\n partialName;\n prefabName;\n customWidgetName;\n constructor(@Inject(Injector) public injector: Injector) {\n super();\n this.injector = injector;\n switch (type) {\n case ComponentType.PAGE:\n this.pageName = componentName;\n break;\n case ComponentType.PARTIAL:\n this.partialName = componentName;\n break;\n case ComponentType.PREFAB:\n this.prefabName = componentName;\n break;\n case ComponentType.WIDGET:\n this.customWidgetName = componentName;\n break;\n }\n\n super.init();\n }\n\n evalUserScript(instance: any, appContext: any, utils: any) {\n execScript(script, selector, context, instance, appContext, utils);\n }\n\n getVariables() {\n return JSON.parse(variables);\n }\n\n // in preview mode, there will be no function registered. functions will be generated dynamically through $parseEvent and $parseExpr\n getExpressions() {\n return {};\n }\n }\n\n const component = Component({\n ...componentDef,\n selector,\n providers: [\n {\n provide: UserDefinedExecutionContext,\n useExisting: DynamicComponent\n }\n ]\n })(DynamicComponent)\n return component;\n};\n\n@Injectable()\nexport class ComponentRefProviderService extends ComponentRefProvider {\n\n private loadResourcesOfFragment(componentName, componentType, options?): Promise<IPageMinJSON> {\n const url = getFragmentUrl(componentName, componentType, options);\n\n const resource = fragmentCache.get(url);\n\n if (resource) {\n return resource;\n }\n const promise = (((componentType === ComponentType.WIDGET && !customWidgets[componentName]) || componentType !== ComponentType.WIDGET) ? this.resouceMngr.get(url, true) : Promise.resolve(customWidgets[componentName]))\n .then(({ markup, script, styles, variables, config }: IPageMinJSON) => {\n const response = {\n markup: transpile(_decodeURIComponent(markup)).markup,\n script: _decodeURIComponent(script),\n styles: scopeComponentStyles(componentName, componentType, _decodeURIComponent(styles)),\n variables: getValidJSON(_decodeURIComponent(variables)),\n ...(config ? { config: getValidJSON(_decodeURIComponent(config)) } : {})\n };\n fragmentCache.set(url, Promise.resolve(response));\n\n return response;\n }, e => {\n const status = e.details.status;\n const errorMsgMap = {\n 404: this.app.appLocale.MESSAGE_PAGE_NOT_FOUND || 'The page you are trying to reach is not available',\n 403: this.app.appLocale.LABEL_ACCESS_DENIED || 'Access Denied'\n };\n return Promise.reject(errorMsgMap[status]);\n });\n fragmentCache.set(url, promise);\n return promise;\n }\n\n constructor(\n private resouceMngr: AppResourceManagerService,\n private app: App,\n private appManager: AppManagerService,\n private compiler: Compiler\n ) {\n super();\n }\n\n public async getComponentFactoryRef(componentName: string, componentType: ComponentType, options?: {}): Promise<any> {\n // check in the cache.\n const componentFactoryMap = componentFactoryRefCache.get(componentType);\n let componentFactoryRef;\n if (componentFactoryMap) {\n const updatedComponentName = (options && options['prefab']) ? options['prefab'] + componentName : componentName;\n componentFactoryRef = componentFactoryMap.get(updatedComponentName);\n\n if (componentFactoryRef) {\n return componentFactoryRef;\n }\n }\n\n return this.loadResourcesOfFragment(componentName, componentType, options)\n .then(({ markup, script, styles, variables }) => {\n const componentDef = getDynamicComponent(componentName, componentType, markup, styles, script, JSON.stringify(variables));\n const moduleDef = getDynamicModule(componentDef);\n\n componentFactoryRef = this.compiler\n .compileModuleAndAllComponentsSync(moduleDef)\n .componentFactories\n .filter(factory => // @ts-ignore\n factory.componentType === componentDef)[0];\n const updatedComponentName = (options && options['prefab']) ? options['prefab'] + componentName : componentName;\n componentFactoryRefCache.get(componentType).set(updatedComponentName, componentFactoryRef);\n\n return componentFactoryRef;\n }, (err) => {\n if (err) {\n const msg = \"Error while loading page\";\n // console the error for easy debugging\n console.log(msg, err);\n this.appManager.notifyApp(\n isString(err) ? err : msg + ', check browser console for error details',\n 'error'\n );\n }\n });\n }\n\n // clears the cache map\n public clearComponentFactoryRefCache() {\n this.resouceMngr.clearCache();\n fragmentCache.clear();\n componentFactoryRefCache.forEach(map => {\n map.clear();\n });\n }\n}\n","import { Injectable } from '@angular/core';\n\nimport { getPrefabConfigUrl, PrefabConfigProvider } from '@wm/runtime/base';\n\nimport { AppResourceManagerService } from './app-resource-manager.service';\n\nconst cache = new Map<string, any>();\n@Injectable()\nexport class PrefabConfigProviderService extends PrefabConfigProvider {\n\n constructor(private resourceMngr: AppResourceManagerService) {\n super();\n }\n\n public getConfig(prefabName: string): Promise<any> {\n const config = cache.get(prefabName);\n if (config) {\n return Promise.resolve(config);\n }\n\n return this.resourceMngr.get(getPrefabConfigUrl(prefabName))\n .then(_config => {\n cache.set(prefabName, _config);\n return _config;\n });\n }\n}\n","import { ApplicationConfig, importProvidersFrom, APP_INITIALIZER, LOCALE_ID } from \"@angular/core\";\nimport { provideRouter, RouteReuseStrategy, withComponentInputBinding, withHashLocation } from \"@angular/router\";\nimport { provideHttpClient, withXsrfConfiguration, HTTP_INTERCEPTORS, withInterceptorsFromDi } from \"@angular/common/http\";\nimport { provideAnimations } from \"@angular/platform-browser/animations\";\nimport { routes } from \"./app.routes\";\nimport { HttpServiceImpl } from \"@wm/http\";\nimport { SecurityService } from \"@wm/security\";\nimport { VariablesService, MetadataService } from \"@wm/variables\";\nimport { OAuthService } from \"@wm/oAuth\";\nimport {\n AppJSProvider,\n AppVariablesProvider,\n ComponentRefProvider,\n PrefabConfigProvider,\n AppExtensionProvider,\n CustomwidgetConfigProvider,\n AppDefaultsService,\n AppExtensionJSResolve,\n AppJSResolve,\n AppManagerService,\n AppRef,\n I18nServiceImpl,\n NavigationServiceImpl,\n SpinnerServiceImpl,\n ToasterServiceImpl,\n DynamicComponentRefProviderService,\n HttpCallInterceptor,\n PrefabManagerService,\n CanDeactivatePageGuard,\n PageNotFoundGuard,\n I18nResolve,\n RoleGuard,\n PipeService,\n AuthGuard,\n WmRouteReuseStrategy\n} from \"@wm/runtime/base\";\nimport {\n AbstractDialogService,\n AbstractHttpService,\n AbstractI18nService,\n AbstractNavigationService,\n AbstractSpinnerService,\n AbstractToasterService,\n App,\n AppDefaults,\n CustomWidgetRefProvider,\n DynamicComponentRefProvider,\n PartialRefProvider,\n _WM_APP_PROJECT,\n} from \"@wm/core\";\nimport { ModalModule } from \"ngx-bootstrap/modal\";\nimport { ToastNoAnimationModule } from \"ngx-toastr\";\nimport { BsDatepickerModule } from \"ngx-bootstrap/datepicker\";\nimport { NgCircleProgressModule } from \"ng-circle-progress\";\nimport { DatePipe, DecimalPipe } from \"@angular/common\";\nimport { CustomwidgetConfigProviderService } from \"./services/customwidget-config-provider.service\";\nimport { AppJSProviderService } from \"./services/app-js-provider.service\";\nimport { AppVariablesProviderService } from \"./services/app-variables-provider.service\";\nimport { AppExtensionProviderService } from \"./services/app-extension.service\";\nimport { ComponentRefProviderService } from \"./services/component-ref-provider.service\";\nimport { PrefabConfigProviderService } from \"./services/prefab-config-provider.service\";\nimport { AppResourceManagerService } from \"./services/app-resource-manager.service\";\nimport { CustomPipe, DialogServiceImpl, FilterPipe, ImagePipe, SanitizePipe, ToDatePipe, TrailingZeroDecimalPipe, TrustAsPipe } from \"@wm/components/base\";\nimport {PageDirective} from \"@wm/components/page\";\n\n\nconst wmModules = [\n importProvidersFrom(\n ModalModule.forRoot(),\n ToastNoAnimationModule.forRoot({ maxOpened: 1, autoDismiss: true }),\n BsDatepickerModule.forRoot(),\n NgCircleProgressModule.forRoot(),\n )\n];\nexport const xsrfHeaderName = \"X-WM-XSRF-TOKEN\";\n\n\n\n\nconst initializeProjectDetails = () => {\n let cdnUrl = document.querySelector('[name=\"deployUrl\"]') && document.querySelector('[name=\"deployUrl\"]').getAttribute('content');\n _WM_APP_PROJECT.isPreview = cdnUrl ? false : true;\n const apiUrl = document.querySelector('[name=\"apiUrl\"]') && document.querySelector('[name=\"apiUrl\"]').getAttribute('content');\n //for preview\n if (!cdnUrl) {\n cdnUrl = document.querySelector('[name=\"cdnUrl\"]') && document.querySelector('[name=\"cdnUrl\"]').getAttribute('content');\n }\n _WM_APP_PROJECT.id = location.href.split('/')[3];\n // Integration with third party apps like in SSPA/WebComponents, this meta tag with cdnUrl will not be there then default it to ng-bundle/\n _WM_APP_PROJECT.apiUrl = apiUrl || './';\n _WM_APP_PROJECT.cdnUrl = cdnUrl || 'ng-bundle/';\n _WM_APP_PROJECT.ngDest = 'ng-bundle/';\n try {\n // eslint-disable-next-line @typescript-eslint/ban-ts-comment\n //@ts-ignore\n __webpack_require__.p = __webpack_public_path__ = cdnUrl;\n } catch (e) {\n //for app preview there is no webpack. Don't do anything.\n }\n};\n\nexport function InitializeApp(I18nService, AppJSResolve) {\n return async () => {\n initializeProjectDetails();\n await AppJSResolve.resolve();\n return I18nService.loadDefaultLocale();\n };\n}\n\nexport function setAngularLocale(I18nService) {\n initializeProjectDetails();\n return I18nService.deduceAppLocale();\n}\n\nexport const appConfig: ApplicationConfig = {\n providers: [\n // Provide Angular core services\n provideRouter(routes, withHashLocation(), withComponentInputBinding()),\n provideHttpClient(\n withInterceptorsFromDi(),\n withXsrfConfiguration({\n cookieName: \"wm_xsrf_token\",\n headerName: xsrfHeaderName\n })\n ),\n provideAnimations(),\n // Provide application-specific services\n {\n provide: APP_INITIALIZER,\n useFactory: InitializeApp,\n deps: [AbstractI18nService, AppJSResolve],\n multi: true\n },\n {\n provide: LOCALE_ID,\n useFactory: setAngularLocale,\n deps: [AbstractI18nService]\n },\n {\n provide: HTTP_INTERCEPTORS,\n useClass: HttpCallInterceptor,\n multi: true\n },\n { provide: App, useClass: AppRef },\n { provide: AbstractToasterService, useClass: ToasterServiceImpl },\n { provide: AbstractI18nService, useClass: I18nServiceImpl },\n { provide: AbstractSpinnerService, useClass: SpinnerServiceImpl },\n { provide: AbstractNavigationService, useClass: NavigationServiceImpl },\n { provide: AbstractDialogService, useClass: DialogServiceImpl },\n { provide: AppDefaults, useClass: AppDefaultsService },\n { provide: DynamicComponentRefProvider, useClass: DynamicComponentRefProviderService },\n { provide: AppJSProvider, useClass: AppJSProviderService },\n { provide: AppVariablesProvider, useClass: AppVariablesProviderService },\n { provide: AppExtensionProvider, useClass: AppExtensionProviderService },\n { provide: ComponentRefProvider, useClass: ComponentRefProviderService },\n { provide: PartialRefProvider, useClass: ComponentRefProviderService },\n { provide: CustomWidgetRefProvider, useClass: ComponentRefProviderService },\n { provide: CustomwidgetConfigProvider, useClass: CustomwidgetConfigProviderService },\n { provide: PrefabConfigProvider, useClass: PrefabConfigProviderService },\n { provide: RouteReuseStrategy, useClass: WmRouteReuseStrategy },\n { provide: AbstractHttpService, useClass: HttpServiceImpl },\n AppResourceManagerService,\n PipeService,\n DecimalPipe,\n SanitizePipe,\n ToDatePipe,\n FilterPipe,\n TrailingZeroDecimalPipe,\n TrustAsPipe,\n ImagePipe,\n CustomPipe,\n Location,\n DatePipe,\n AppManagerService,\n PrefabManagerService,\n AuthGuard,\n RoleGuard,\n PageNotFoundGuard,\n CanDeactivatePageGuard,\n AppJSResolve,\n AppExtensionJSResolve,\n I18nResolve,\n SecurityService,\n OAuthService,\n VariablesService,\n MetadataService,\n ...wmModules,\n PageDirective\n ]\n};\n","import { ApplicationRef, enableProdMode } from '@angular/core';\n\nimport { isEmpty } from \"lodash-es\";\nimport { bootstrapApplication } from '@angular/platform-browser';\nimport { AppComponent } from '@wm/runtime/base';\nimport { appConfig } from './app/app.config';\n\nconst DEBUG_MODE = 'debugMode';\n\nif (sessionStorage.getItem(DEBUG_MODE) !== 'true') {\n enableProdMode();\n}\n\nconsole.time('bootstrap');\n\n\ndocument.addEventListener('DOMContentLoaded', () => {\n new Promise<Event | void>(resolve => {\n resolve();\n }).then(() => bootstrapApplication(AppComponent, appConfig))\n .then((appRef: ApplicationRef) => { \n window.addEventListener('unload', () => {\n appRef.components.map(c => c?.destroy());\n });\n })\n .catch(err => console.error('Error bootstrapping app:', err));\n});\n\n(window as any).debugMode = function (on) {\n if (isEmpty(on)) {\n on = true;\n }\n const value = on ? 'true' : 'false';\n if (sessionStorage.getItem(DEBUG_MODE) !== value) {\n sessionStorage.setItem(DEBUG_MODE, value);\n window.location.reload();\n }\n};\n\nexport default () => { };\n","import { Injector, ModuleWithProviders, NgModule } from '@angular/core';\nimport { BrowserModule } from '@angular/platform-browser';\nimport { CommonModule } from '@angular/common';\nimport { RouteReuseStrategy, RouterModule } from '@angular/router';\nimport { HttpClientModule, HttpClientXsrfModule } from '@angular/common/http';\nimport { FormsModule, ReactiveFormsModule } from '@angular/forms';\nimport { TypeaheadModule } from 'ngx-bootstrap/typeahead';\nimport { TimepickerModule as ngxTimepickerModule } from 'ngx-bootstrap/timepicker';\nimport { ProgressbarModule } from 'ngx-bootstrap/progressbar';\nimport { PaginationModule as ngxPaginationModule } from 'ngx-bootstrap/pagination';\nimport { ModalModule } from 'ngx-bootstrap/modal';\nimport { TooltipModule } from 'ngx-bootstrap/tooltip';\nimport { BsDatepickerModule } from 'ngx-bootstrap/datepicker';\nimport { BsDropdownModule } from 'ngx-bootstrap/dropdown';\nimport { PopoverModule as ngxPopoverModule } from 'ngx-bootstrap/popover';\n\nimport { NgCircleProgressModule } from 'ng-circle-progress';\nimport { ToastNoAnimationModule } from 'ngx-toastr';\nimport { CarouselModule as ngxCarouselModule, } from 'ngx-bootstrap/carousel';\n\nimport { App, getWmProjectProperties, PartialRefProvider, CustomWidgetRefProvider, AbstractHttpService } from '@wm/core';\n// Basic widgets\n\nimport {\n AnchorComponent,\n AudioComponent,\n HtmlDirective,\n IconComponent,\n IframeComponent,\n LabelDirective,\n PictureDirective,\n SpinnerComponent,\n VideoComponent\n} from '@wm/components/basic';\nimport { ProgressBarComponent, ProgressCircleComponent } from '@wm/components/basic/progress';\nimport { RichTextEditorComponent } from '@wm/components/basic/rich-text-editor';\nimport { SearchComponent, ScrollableDirective } from '@wm/components/basic/search';\nimport { TreeComponent } from '@wm/components/basic/tree';\n\n// input\nimport {\n ButtonComponent,\n ButtonGroupDirective,\n CaptionPositionDirective,\n CheckboxComponent,\n CheckboxsetComponent,\n CompositeDirective,\n NumberComponent,\n RadiosetComponent,\n SelectComponent,\n SwitchComponent,\n InputCalendarComponent,\n InputColorComponent,\n InputEmailComponent,\n InputNumberComponent,\n InputTextComponent,\n TextareaComponent\n} from '@wm/components/input';\nimport { CalendarComponent } from '@wm/components/input/calendar';\nimport { ChipsComponent } from '@wm/components/input/chips';\nimport { ColorPickerComponent } from '@wm/components/input/color-picker';\nimport { CurrencyComponent } from '@wm/components/input/currency';\nimport {\n DateComponent,\n DatetimeComponent,\n TimeComponent,\n DateTimePickerComponent,\n TimePickerComponent,\n PickerComponent,\n PickerGroupComponent\n} from '@wm/components/input/epoch';\nimport { FileUploadComponent } from '@wm/components/input/file-upload';\nimport { RatingComponent } from '@wm/components/input/rating';\nimport { SliderComponent } from '@wm/components/input/slider';\n// Data\nimport {\n CardComponent,\n CardActionsDirective,\n CardContentComponent,\n CardFooterDirective\n} from '@wm/components/data/card';\nimport {\n FormComponent,\n FormWidgetDirective,\n FormActionDirective,\n FormFieldDirective,\n LiveActionsDirective,\n DependsonDirective,\n LiveFilterDirective,\n LiveFormDirective\n} from '@wm/components/data/form';\nimport { ListComponent, ListItemDirective } from '@wm/components/data/list';\nimport { LiveTableComponent } from '@wm/components/data/live-table';\nimport { PaginationComponent } from '@wm/components/data/pagination';\nimport {\n TableComponent,\n TableCUDDirective,\n TableFilterSortDirective,\n TableActionDirective,\n TableColumnDirective,\n TableColumnGroupDirective,\n TableRowDirective,\n TableRowActionDirective\n} from '@wm/components/data/table';\n\n// Chart\nimport { ChartComponent } from '@wm/components/chart';\n\n// Containers\nimport { AccordionPaneComponent, AccordionDirective } from '@wm/components/containers/accordion';\nimport { LinearLayoutDirective, LinearLayoutItemDirective } from '@wm/components/containers/linear-layout';\nimport { LayoutgridDirective, LayoutGridRowDirective, LayoutGridColumnDirective } from '@wm/components/containers/layout-grid';\nimport { PanelComponent } from '@wm/components/containers/panel';\nimport { TabPaneComponent, TabsComponent } from '@wm/components/containers/tabs';\nimport { TileDirective } from '@wm/components/containers/tile';\nimport { WizardActionDirective, WizardStepComponent, WizardComponent } from '@wm/components/containers/wizard';\n\n// Dialogs\nimport { AlertDialogComponent } from '@wm/components/dialogs/alert-dialog';\nimport { IframeDialogComponent } from '@wm/components/dialogs/iframe-dialog';\nimport { LoginDialogDirective } from '@wm/components/dialogs/login-dialog';\nimport { PartialDialogComponent } from '@wm/components/dialogs/partial-dialog';\n\n// Navigation\nimport { BreadcrumbComponent } from '@wm/components/navigation/breadcrumb';\nimport { MenuComponent, MenuDropdownComponent, MenuDropdownItemComponent, NavigationControlDirective, NavComponent, NavItemDirective } from '@wm/components/navigation/menu';\nimport { NavbarComponent } from '@wm/components/navigation/navbar';\nimport { PopoverComponent } from '@wm/components/navigation/popover';\n\n// Advanced\nimport { CarouselDirective, CarouselTemplateDirective } from '@wm/components/advanced/carousel';\nimport { LoginComponent } from '@wm/components/advanced/login';\nimport { MarqueeDirective } from '@wm/components/advanced/marquee';\nimport { CustomWidgetDirective, CustomWidgetContainerDirective } from '@wm/components/advanced/custom';\n\nimport {\n PageDirective,\n LayoutDirective,\n ContentComponent,\n PageContentComponent,\n SpaPageDirective,\n RouterOutletDirective\n} from '@wm/components/page';\nimport { FooterDirective } from '@wm/components/page/footer';\nimport { HeaderComponent } from '@wm/components/page/header';\nimport { LeftPanelDirective } from '@wm/components/page/left-panel';\nimport { RightPanelDirective } from '@wm/components/page/right-panel';\nimport { TopNavDirective } from '@wm/components/page/top-nav';\n\nimport { PrefabDirective, PrefabContainerDirective } from '@wm/components/prefab';\n\nimport {\n AppComponent,\n AppJSProvider,\n AppVariablesProvider,\n ComponentRefProvider,\n PrefabConfigProvider,\n WmRouteReuseStrategy,\n WM_MODULES_FOR_ROOT,\n CustomwidgetConfigProvider,\n REQUIRED_MODULES_FOR_DYNAMIC_COMPONENTS,\n AppExtensionProvider\n} from '@wm/runtime/base';\n\nimport { routes } from './app.routes';\nimport { PageWrapperComponent } from './components/page-wrapper.component';\nimport { AppJSProviderService } from './services/app-js-provider.service';\nimport { AppVariablesProviderService } from './services/app-variables-provider.service';\nimport { AppExtensionProviderService } from './services/app-extension.service';\nimport { ComponentRefProviderService } from './services/component-ref-provider.service';\nimport { CustomwidgetConfigProviderService } from './services/customwidget-config-provider.service';\nimport { PrefabConfigProviderService } from './services/prefab-config-provider.service';\nimport { AppResourceManagerService } from './services/app-resource-manager.service';\nimport { BrowserAnimationsModule } from '@angular/platform-browser/animations';\nimport { HttpServiceImpl } from '@wm/http';\n\nexport const routerModule = RouterModule.forRoot(routes, { useHash: true, scrollPositionRestoration: 'top' });\nexport const toastrModule = ToastNoAnimationModule.forRoot({ maxOpened: 1, autoDismiss: true });\n\n// In angular 15, xsrf headerName should not be null. Angular 15 is not using default header value like it used to send in calls\n// for angular 12 if the headerName is null . The user has to take care of not sending null values. Then ng 15 uses default value for headerName\nconst xsrfHeaderName = getWmProjectProperties().xsrf_header_name;\nconst xsrfOptions = {\n cookieName: 'wm_xsrf_token'\n}\nif (xsrfHeaderName) {\n xsrfOptions['headerName'] = xsrfHeaderName;\n}\nexport const httpClientXsrfModule = HttpClientXsrfModule.withOptions(xsrfOptions);\n\nexport const modalModule: ModuleWithProviders<ModalModule> = ModalModule.forRoot();\nexport const bsDatePickerModule: ModuleWithProviders<BsDatepickerModule> = BsDatepickerModule.forRoot();\nexport const timepickerModule: ModuleWithProviders<ngxTimepickerModule> = ngxTimepickerModule.forRoot();\nexport const bsDropdownModule: ModuleWithProviders<BsDropdownModule> = BsDropdownModule.forRoot();\nexport const paginationModule: ModuleWithProviders<ngxPaginationModule> = ngxPaginationModule.forRoot();\nexport const typeaheadModule: ModuleWithProviders<TypeaheadModule> = TypeaheadModule.forRoot();\nexport const progressbarModule: ModuleWithProviders<ProgressbarModule> = ProgressbarModule.forRoot();\nexport const carouselModule: ModuleWithProviders<ngxCarouselModule> = ngxCarouselModule.forRoot();\nexport const popoverModule: ModuleWithProviders<ngxPopoverModule> = ngxPopoverModule.forRoot();\nexport const ngCircleProgressModule: ModuleWithProviders<NgCircleProgressModule> = NgCircleProgressModule.forRoot({});\nexport const tooltipModule: ModuleWithProviders<TooltipModule> = TooltipModule.forRoot();\n\nconst componentsModule = [\n // NGX Bootstrap\n BsDatepickerModule,\n ngxTimepickerModule,\n BsDropdownModule,\n ngxPaginationModule,\n TypeaheadModule,\n ProgressbarModule,\n ngxCarouselModule,\n ngxPopoverModule,\n NgCircleProgressModule,\n TooltipModule,\n\n // Basic widgets\n AnchorComponent,\n AudioComponent,\n HtmlDirective,\n IconComponent,\n IframeComponent,\n LabelDirective,\n PictureDirective,\n SpinnerComponent,\n VideoComponent,\n ProgressBarComponent, ProgressCircleComponent,\n RichTextEditorComponent,\n SearchComponent, ScrollableDirective,\n TreeComponent,\n\n // Input\n CalendarComponent,\n ChipsComponent,\n ColorPickerComponent,\n CurrencyComponent,\n DateComponent,\n DatetimeComponent,\n TimeComponent,\n DateTimePickerComponent,\n TimePickerComponent,\n PickerComponent,\n PickerGroupComponent,\n FileUploadComponent,\n ButtonComponent,\n ButtonGroupDirective,\n CaptionPositionDirective,\n CheckboxComponent,\n CheckboxsetComponent,\n CompositeDirective,\n NumberComponent,\n RadiosetComponent,\n SelectComponent,\n SwitchComponent,\n InputCalendarComponent,\n InputColorComponent,\n InputEmailComponent,\n InputNumberComponent,\n InputTextComponent,\n TextareaComponent,\n RatingComponent,\n SliderComponent,\n\n // Data\n CardComponent,\n CardActionsDirective,\n CardContentComponent,\n CardFooterDirective,\n FormComponent,\n FormWidgetDirective,\n FormActionDirective,\n FormFieldDirective,\n LiveActionsDirective,\n DependsonDirective,\n LiveFilterDirective,\n LiveFormDirective,\n ListComponent, ListItemDirective,\n LiveTableComponent,\n PaginationComponent,\n TableComponent,\n TableCUDDirective,\n TableFilterSortDirective,\n TableActionDirective,\n TableColumnDirective,\n TableColumnGroupDirective,\n TableRowDirective,\n TableRowActionDirective,\n\n // chart\n ChartComponent,\n\n // container modules\n AccordionPaneComponent, AccordionDirective,\n LinearLayoutDirective, LinearLayoutItemDirective,\n LayoutgridDirective, LayoutGridRowDirective, LayoutGridColumnDirective,\n PanelComponent,\n TabPaneComponent, TabsComponent,\n TileDirective,\n WizardActionDirective, WizardStepComponent, WizardComponent,\n\n // dialogs\n AlertDialogComponent,\n IframeDialogComponent,\n LoginDialogDirective,\n PartialDialogComponent,\n\n // navigation\n BreadcrumbComponent,\n MenuComponent, MenuDropdownComponent, MenuDropdownItemComponent, NavigationControlDirective, NavComponent, NavItemDirective,\n NavbarComponent,\n PopoverComponent,\n\n // Advanced\n CarouselDirective, CarouselTemplateDirective,\n LoginComponent,\n MarqueeDirective,\n CustomWidgetDirective, CustomWidgetContainerDirective,\n\n PageDirective,\n LayoutDirective,\n ContentComponent,\n PageContentComponent,\n SpaPageDirective,\n RouterOutletDirective,\n FooterDirective,\n HeaderComponent,\n LeftPanelDirective,\n RightPanelDirective,\n TopNavDirective,\n\n PrefabDirective, PrefabContainerDirective\n];\n\nREQUIRED_MODULES_FOR_DYNAMIC_COMPONENTS.push(...componentsModule as any);\nREQUIRED_MODULES_FOR_DYNAMIC_COMPONENTS.push(FormsModule as any, ReactiveFormsModule as any);\n\n@NgModule({\n declarations: [\n PageWrapperComponent\n ],\n imports: [\n BrowserModule,\n BrowserAnimationsModule,\n CommonModule,\n RouterModule,\n HttpClientModule,\n\n modalModule,\n bsDatePickerModule,\n timepickerModule,\n bsDropdownModule,\n paginationModule,\n typeaheadModule,\n tooltipModule,\n progressbarModule,\n carouselModule,\n popoverModule,\n ngCircleProgressModule,\n\n routerModule,\n toastrModule,\n httpClientXsrfModule,\n WM_MODULES_FOR_ROOT\n ],\n providers: [\n AppResourceManagerService,\n { provide: AppJSProvider, useClass: AppJSProviderService },\n { provide: AppVariablesProvider, useClass: AppVariablesProviderService },\n { provide: AppExtensionProvider, useClass: AppExtensionProviderService },\n { provide: ComponentRefProvider, useClass: ComponentRefProviderService },\n { provide: PartialRefProvider, useClass: ComponentRefProviderService },\n { provide: CustomWidgetRefProvider, useClass: ComponentRefProviderService },\n { provide: CustomwidgetConfigProvider, useClass: CustomwidgetConfigProviderService },\n { provide: PrefabConfigProvider, useClass: PrefabConfigProviderService },\n { provide: RouteReuseStrategy, useClass: WmRouteReuseStrategy },\n { provide: AbstractHttpService, useClass: HttpServiceImpl }\n ],\n bootstrap: [AppComponent]\n})\nexport class AppModule {\n constructor(private app: App, private inj: Injector, private componentRefProvider: ComponentRefProvider) {\n }\n}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public_api';\n"],"names":["cache","i1","i1.AppResourceManagerService","i2","i3","xsrfHeaderName","ngxTimepickerModule","ngxPaginationModule","ngxCarouselModule","ngxPopoverModule"],"mappings":"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"}
@@ -132,10 +132,8 @@
132
132
  if (this.requestQueue.config.length > 1) {
133
133
  return;
134
134
  }
135
- if (!i1.hasCordova()) {
136
- // for web project, return config returned from backend API call.
137
- this.getWebConfig(onSuccess.bind(this), onError.bind(this));
138
- }
135
+ // for web project, return config returned from backend API call.
136
+ this.getWebConfig(onSuccess.bind(this), onError.bind(this));
139
137
  /* else {
140
138
  /!*
141
139
  * for mobile app, first get the mobile config (saved in the apk)
@@ -293,13 +291,7 @@
293
291
  url: 'j_spring_security_check',
294
292
  'data': payload
295
293
  }).then((response) => {
296
- const xsrfCookieValue = response.body ? response.body[XSRF_COOKIE_NAME] : '';
297
- // override the default xsrf cookie name and xsrf header names with WaveMaker specific values
298
- if (xsrfCookieValue) {
299
- if (i1.hasCordova()) {
300
- localStorage.setItem(XSRF_COOKIE_NAME, xsrfCookieValue || '');
301
- }
302
- }
294
+ response.body ? response.body[XSRF_COOKIE_NAME] : '';
303
295
  // After the successful login in device, this function triggers the pending onLoginCallbacks.
304
296
  this.injector.get(i1.App).notify('userLoggedIn', {});
305
297
  i1.triggerFn(successCallback, response);
@@ -332,9 +324,6 @@
332
324
  }).then((response) => {
333
325
  lodashEs.set(this.get(), 'authenticated', false);
334
326
  lodashEs.set(this.get(), 'userInfo', null);
335
- /*if (CONSTANTS.hasCordova) {
336
- localStorage.setItem(CONSTANTS.XSRF_COOKIE_NAME, '');
337
- }*/
338
327
  this.injector.get(i1.App).notify('userLoggedOut', {});
339
328
  i1.triggerFn(successCallback, response);
340
329
  }, failureCallback);
@@ -354,9 +343,6 @@
354
343
  * @returns xsrf cookie value
355
344
  */
356
345
  isXsrfEnabled() {
357
- if (i1.hasCordova()) {
358
- return localStorage.getItem(XSRF_COOKIE_NAME);
359
- }
360
346
  return this.getCookieByName(XSRF_COOKIE_NAME);
361
347
  }
362
348
  /**
@@ -416,23 +402,6 @@
416
402
  type: i0.Injectable
417
403
  }], () => [{ type: i0__namespace.Injector }, { type: i1__namespace.AbstractHttpService }, { type: i2__namespace.Router }, { type: i2__namespace.ActivatedRoute }, { type: i3__namespace.Location }], null); })();
418
404
 
419
- class SecurityModule {
420
- static forRoot() {
421
- return {
422
- ngModule: SecurityModule,
423
- providers: [SecurityService]
424
- };
425
- }
426
- static { this.ɵfac = function SecurityModule_Factory(__ngFactoryType__) { return new (__ngFactoryType__ || SecurityModule)(); }; }
427
- static { this.ɵmod = /*@__PURE__*/ i0__namespace.ɵɵdefineNgModule({ type: SecurityModule }); }
428
- static { this.ɵinj = /*@__PURE__*/ i0__namespace.ɵɵdefineInjector({}); }
429
- }
430
- (() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0__namespace.ɵsetClassMetadata(SecurityModule, [{
431
- type: i0.NgModule,
432
- args: [{}]
433
- }], null, null); })();
434
-
435
- exports.SecurityModule = SecurityModule;
436
405
  exports.SecurityService = SecurityService;
437
406
 
438
407
  }));
@@ -1,3 +1,2 @@
1
- export * from './security.module';
2
1
  export * from './security.service';
3
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHVibGljX2FwaS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3Byb2plY3RzL3NlY3VyaXR5L3NyYy9wdWJsaWNfYXBpLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLGNBQWMsbUJBQW1CLENBQUM7QUFDbEMsY0FBYyxvQkFBb0IsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImV4cG9ydCAqIGZyb20gJy4vc2VjdXJpdHkubW9kdWxlJztcbmV4cG9ydCAqIGZyb20gJy4vc2VjdXJpdHkuc2VydmljZSc7XG4iXX0=
2
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHVibGljX2FwaS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3Byb2plY3RzL3NlY3VyaXR5L3NyYy9wdWJsaWNfYXBpLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLGNBQWMsb0JBQW9CLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJleHBvcnQgKiBmcm9tICcuL3NlY3VyaXR5LnNlcnZpY2UnO1xuIl19
@@ -1,7 +1,7 @@
1
1
  import { Injectable, Injector } from '@angular/core';
2
2
  import { Location } from '@angular/common';
3
3
  import { ActivatedRoute, Router } from '@angular/router';
4
- import { AbstractHttpService, App, getClonedObject, getWmProjectProperties, hasCordova, triggerFn } from '@wm/core';
4
+ import { AbstractHttpService, App, getClonedObject, getWmProjectProperties, triggerFn } from '@wm/core';
5
5
  import { each, forEach, get, isEmpty, join, set } from "lodash-es";
6
6
  import * as i0 from "@angular/core";
7
7
  import * as i1 from "@wm/core";
@@ -116,10 +116,8 @@ export class SecurityService {
116
116
  if (this.requestQueue.config.length > 1) {
117
117
  return;
118
118
  }
119
- if (!hasCordova()) {
120
- // for web project, return config returned from backend API call.
121
- this.getWebConfig(onSuccess.bind(this), onError.bind(this));
122
- }
119
+ // for web project, return config returned from backend API call.
120
+ this.getWebConfig(onSuccess.bind(this), onError.bind(this));
123
121
  /* else {
124
122
  /!*
125
123
  * for mobile app, first get the mobile config (saved in the apk)
@@ -289,9 +287,6 @@ export class SecurityService {
289
287
  const xsrfCookieValue = response.body ? response.body[XSRF_COOKIE_NAME] : '';
290
288
  // override the default xsrf cookie name and xsrf header names with WaveMaker specific values
291
289
  if (xsrfCookieValue) {
292
- if (hasCordova()) {
293
- localStorage.setItem(XSRF_COOKIE_NAME, xsrfCookieValue || '');
294
- }
295
290
  }
296
291
  // After the successful login in device, this function triggers the pending onLoginCallbacks.
297
292
  this.injector.get(App).notify('userLoggedIn', {});
@@ -325,9 +320,6 @@ export class SecurityService {
325
320
  }).then((response) => {
326
321
  set(this.get(), 'authenticated', false);
327
322
  set(this.get(), 'userInfo', null);
328
- /*if (CONSTANTS.hasCordova) {
329
- localStorage.setItem(CONSTANTS.XSRF_COOKIE_NAME, '');
330
- }*/
331
323
  this.injector.get(App).notify('userLoggedOut', {});
332
324
  triggerFn(successCallback, response);
333
325
  }, failureCallback);
@@ -347,9 +339,6 @@ export class SecurityService {
347
339
  * @returns xsrf cookie value
348
340
  */
349
341
  isXsrfEnabled() {
350
- if (hasCordova()) {
351
- return localStorage.getItem(XSRF_COOKIE_NAME);
352
- }
353
342
  return this.getCookieByName(XSRF_COOKIE_NAME);
354
343
  }
355
344
  /**
@@ -408,4 +397,4 @@ export class SecurityService {
408
397
  (() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassMetadata(SecurityService, [{
409
398
  type: Injectable
410
399
  }], () => [{ type: i0.Injector }, { type: i1.AbstractHttpService }, { type: i2.Router }, { type: i2.ActivatedRoute }, { type: i3.Location }], null); })();
411
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2VjdXJpdHkuc2VydmljZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3Byb2plY3RzL3NlY3VyaXR5L3NyYy9zZWN1cml0eS5zZXJ2aWNlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxVQUFVLEVBQUUsUUFBUSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQ3JELE9BQU8sRUFBRSxRQUFRLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUMzQyxPQUFPLEVBQUUsY0FBYyxFQUFFLE1BQU0sRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBRXpELE9BQU8sRUFDSCxtQkFBbUIsRUFDbkIsR0FBRyxFQUNILGVBQWUsRUFDZixzQkFBc0IsRUFDdEIsVUFBVSxFQUNWLFNBQVMsRUFDWixNQUFNLFVBQVUsQ0FBQztBQUNsQixPQUFPLEVBQUMsSUFBSSxFQUFFLE9BQU8sRUFBRSxHQUFHLEVBQUUsT0FBTyxFQUFFLElBQUksRUFBRSxHQUFHLEVBQUMsTUFBTSxXQUFXLENBQUM7Ozs7O0FBRWpFLHVEQUF1RDtBQUN2RCxNQUFNLGdCQUFnQixHQUFHLGVBQWUsRUFDcEMsaUJBQWlCLEdBQUcsSUFBSSxDQUFDO0FBRzdCLE1BQU0sT0FBTyxlQUFlO0lBT3hCLFlBQ1ksUUFBa0IsRUFDbEIsS0FBMEIsRUFDMUIsYUFBcUIsRUFDckIsY0FBOEIsRUFDOUIsU0FBbUI7UUFKbkIsYUFBUSxHQUFSLFFBQVEsQ0FBVTtRQUNsQixVQUFLLEdBQUwsS0FBSyxDQUFxQjtRQUMxQixrQkFBYSxHQUFiLGFBQWEsQ0FBUTtRQUNyQixtQkFBYyxHQUFkLGNBQWMsQ0FBZ0I7UUFDOUIsY0FBUyxHQUFULFNBQVMsQ0FBVTtRQVAvQixpQkFBWSxHQUFRLEVBQUUsQ0FBQztJQVFwQixDQUFDO0lBRUosUUFBUTtRQUNKLE9BQU8sSUFBSSxDQUFDLE1BQU0sQ0FBQztJQUN2QixDQUFDO0lBRUQsR0FBRztRQUNDLE9BQU8sSUFBSSxDQUFDLE1BQU0sQ0FB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QUUsR0FBRyxFQUFFOzRCQUN0RSxPQUFPLEVBQUUsQ0FBQzs0QkFDVixXQUFXLEVBQUUsQ0FBQzt3QkFDbEIsQ0FBQyxDQUFDLENBQUM7b0JBQ1AsQ0FBQztnQkFDTCxDQUFDO3FCQUFNLENBQUM7b0JBQ0osT0FBTyxFQUFFLENBQUM7Z0JBQ2QsQ0FBQztZQUNMLENBQUMsRUFBRSxNQUFNLENBQUMsQ0FBQztRQUNmLENBQUMsQ0FBQyxDQUFDO0lBQ1AsQ0FBQztJQUVEOztPQUVHO0lBQ0gsZUFBZTtRQUNYLE9BQU8sSUFBSSxPQUFPLENBQU0sQ0FBQyxPQUFPLEVBQUUsTUFBTSxFQUFFLEVBQUU7WUFDeEMsSUFBSSxDQUFDLFNBQVMsQ0FBQyxDQUFDLE1BQU0sRUFBRSxFQUFFO2dCQUN0QixJQUFJLE1BQU0sSUFBSSxNQUFNLENBQUMsUUFBUSxFQUFFLENBQUM7b0JBQzVCLE9BQU8sQ0FBQyxNQUFNLENBQUMsUUFBUSxDQUFDLENBQUM7Z0JBQzdCLENBQUM7cUJBQU0sQ0FBQztvQkFDSixNQUFNLEVBQUUsQ0FBQztnQkFDYixDQUFDO1lBQ0wsQ0FBQyxFQUFFLE1BQU0sQ0FBQyxDQUFDO1FBQ2YsQ0FBQyxDQUFDLENBQUM7SUFDUCxDQUFDO0lBRUQ7Ozs7T0FJRztJQUNILGFBQWE7UUFDVCxPQUFPLE9BQU8sQ0FBQyxNQUFNLENBQUMseUNBQXlDLENBQUMsQ0FBQztJQUNyRSxDQUFDO2dIQXRhUSxlQUFlO3VFQUFmLGVBQWUsV0FBZixlQUFlOztpRkFBZixlQUFlO2NBRDNCLFVBQVUiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBJbmplY3RhYmxlLCBJbmplY3RvciB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgTG9jYXRpb24gfSBmcm9tICdAYW5ndWxhci9jb21tb24nO1xuaW1wb3J0IHsgQWN0aXZhdGVkUm91dGUsIFJvdXRlciB9IGZyb20gJ0Bhbmd1bGFyL3JvdXRlcic7XG5cbmltcG9ydCB7XG4gICAgQWJzdHJhY3RIdHRwU2VydmljZSxcbiAgICBBcHAsXG4gICAgZ2V0Q2xvbmVkT2JqZWN0LFxuICAgIGdldFdtUHJvamVjdFByb3BlcnRpZXMsXG4gICAgaGFzQ29yZG92YSxcbiAgICB0cmlnZ2VyRm5cbn0gZnJvbSAnQHdtL2NvcmUnO1xuaW1wb3J0IHtlYWNoLCBmb3JFYWNoLCBnZXQsIGlzRW1wdHksIGpvaW4sIHNldH0gZnJvbSBcImxvZGFzaC1lc1wiO1xuXG4vLyBUb2RvW1NodWJoYW1dOiBNb3ZlIGJlbG93IGNvbnN0YW50cyB0byBhIGNvbW1vbiBmaWxlXG5jb25zdCBYU1JGX0NPT0tJRV9OQU1FID0gJ3dtX3hzcmZfdG9rZW4nLFxuICAgIGlzQXBwbGljYXRpb25UeXBlID0gdHJ1ZTtcblxuQEluamVjdGFibGUoKVxuZXhwb3J0IGNsYXNzIFNlY3VyaXR5U2VydmljZSB7XG4gICAgY29uZmlnO1xuICAgIGxhc3RMb2dnZWRJblVzZXI7XG4gICAgbG9nZ2VkSW5Vc2VyO1xuICAgIGxvYWRQcm9taXNlOiBQcm9taXNlPGFueT47XG4gICAgcmVxdWVzdFF1ZXVlOiBhbnkgPSB7fTtcblxuICAgIGNvbnN0cnVjdG9yKFxuICAgICAgICBwcml2YXRlIGluamVjdG9yOiBJbmplY3RvcixcbiAgICAgICAgcHJpdmF0ZSAkaHR0cDogQWJzdHJhY3RIdHRwU2VydmljZSxcbiAgICAgICAgcHJpdmF0ZSByb3V0ZXJTZXJ2aWNlOiBSb3V0ZXIsXG4gICAgICAgIHByaXZhdGUgYWN0aXZhdGVkUm91dGU6IEFjdGl2YXRlZFJvdXRlLFxuICAgICAgICBwcml2YXRlIF9sb2NhdGlvbjogTG9jYXRpb25cbiAgICApIHt9XG5cbiAgICBpc0xvYWRlZCgpIHtcbiAgICAgICAgcmV0dXJuIHRoaXMuY29uZmlnO1xuICAgIH1cblxuICAgIGdldCgpIHtcbiAgICAgICAgcmV0dXJuIHRoaXMuY29uZmlnO1xuICAgIH1cblxuICAgIGxvYWQoZm9yY2VGbGFnPzogYm9vbGVhbikge1xuICAgICAgICBpZih0aGlzLmxvYWRQcm9taXNlKSB7cmV0dXJuIHRoaXMubG9hZFByb21pc2U7fVxuICAgICAgIC8vIENoZWNrIHNlY3VyaXR5RW5hYmxlZCBmbGFnIGluIF9XTV9BUFBfUFJPUEVSVElFU1xuICAgICAgIGlmICghKHdpbmRvdyBhcyBhbnkpLl9XTV9BUFBfUFJPUEVSVElFUz8uc2VjdXJpdHlFbmFibGVkKSB7XG4gICAgICAgIHJldHVybiBQcm9taXNlLnJlc29sdmUobnVsbCk7IFxuICAgICAgICB9XG4gICAgICAgIGlmICghZm9yY2VGbGFnICYmIHRoaXMuY29uZmlnKSB7cmV0dXJuIFByb21pc2UucmVzb2x2ZSh0aGlzLmNvbmZpZyk7fVxuICAgICAgICB0aGlzLmxvYWRQcm9taXNlID0gbmV3IFByb21pc2UoKHJlc29sdmUsIHJlamVjdCkgPT4ge1xuICAgICAgICAgICAgICAgIHRoaXMuJGh0dHAuc2VuZCh7J3VybCc6ICdzZXJ2aWNlcy9zZWN1cml0eS9pbmZvJywgJ21ldGhvZCc6ICdHRVQnfSkudGhlbigocmVzcG9uc2UpID0+IHtcbiAgICAgICAgICAgICAgICAgICAgdGhpcy5jb25maWcgPSByZXNwb25zZS5ib2R5O1xuICAgICAgICAgICAgICAgICAgICAod2luZG93IGFzIGFueSkuX1dNX0FQUF9QUk9QRVJUSUVTWydzZWN1cml0eUluZm8nXSA9IHRoaXMuY29uZmlnXG4gICAgICAgICAgICAgICAgICAgIHRoaXMubGFzdExvZ2dlZEluVXNlciA9IGdldENsb25lZE9iamVjdCh0aGlzLmxvZ2dlZEluVXNlcik7XG4gICAgICAgICAgICAgICAgICAgIHRoaXMubG9nZ2VkSW5Vc2VyID0gdGhpcy5jb25maWcudXNlckluZm87XG4gICAgICAgICAgICAgICAgICAgIHJlc29sdmUocmVzcG9uc2UuYm9keSk7XG4gICAgICAgICAgICAgICAgfSkuY2F0Y2goKGVycik9PntcbiAgICAgICAgICAgICAgICAgICAgcmVqZWN0KGVycik7XG4gICAgICAgICAgICAgICAgfSkuZmluYWxseSgoKT0+e1xuICAgICAgICAgICAgICAgICAgICB0aGlzLmxvYWRQcm9taXNlID0gbnVsbDtcbiAgICAgICAgICAgICAgICB9KTtcbiAgICAgICAgfSk7XG4gICAgICAgIHJldHVybiB0aGlzLmxvYWRQcm9taXNlO1xuICAgIH1cblxuICAgIC8qKlxuICAgICAqIGdldHMgdGhlIHNlY3VyaXR5IGNvbmZpZyBmcm9tIHRoZSBkZXBsb3llZCBhcHAgKGJhY2tlbmQgY2FsbClcbiAgICAgKiBAcGFyYW0gc3VjY2Vzc1xuICAgICAqIEBwYXJhbSBlcnJvclxuICAgICAqL1xuICAgIGdldFdlYkNvbmZpZyhzdWNjZXNzLCBlcnJvcikge1xuICAgICAgICBpZiAodGhpcy5nZXQoKSkge1xuICAgICAgICAgICAgLy8gaWYgYWxyZWFkeSBmZXRjaGVkLCByZXR1cm4gaXRcbiAgICAgICAgICAgIHRyaWdnZXJGbihzdWNjZXNzLCB0aGlzLmdldCgpKTtcbiAgICAgICAgICAgIHJldHVybjtcbiAgICAgICAgfVxuICAgICAgICB0aGlzLmxvYWQoKVxuICAgICAgICAgICAgLnRoZW4oY29uZmlnID0+IHtcbiAgICAgICAgICAgICAgICB0cmlnZ2VyRm4oc3VjY2VzcywgY29uZmlnKTtcbiAgICAgICAgICAgIH0sIGVycm9yKTtcbiAgICB9XG5cbiAgICAvKipcbiAgICAgKiBSZXR1cm5zIHNlY3VyaXR5IGNvbmZpZ1xuICAgICAqIEBwYXJhbSBzdWNjZXNzQ2FsbGJhY2tcbiAgICAgKiBAcGFyYW0gZmFpbHVyZUNhbGxiYWNrXG4gICAgICovXG4gICAgZ2V0Q29uZmlnKHN1Y2Nlc3NDYWxsYmFjaywgZmFpbHVyZUNhbGxiYWNrKSB7XG4gICAgICAgIGZ1bmN0aW9uIGludm9rZVF1ZXVlZENhbGxiYWNrcyhpZCwgbWV0aG9kLCBkYXRhKSB7XG4gICAgICAgICAgICBmb3JFYWNoKHRoaXMucmVxdWVzdFF1ZXVlW2lkXSwgZm4gPT4gdHJpZ2dlckZuKGZuW21ldGhvZF0sIGRhdGEpKTtcbiAgICAgICAgICAgIHRoaXMucmVxdWVzdFF1ZXVlW2lkXSA9IG51bGw7XG4gICAgICAgIH1cblxuICAgICAgICBmdW5jdGlvbiBvblN1Y2Nlc3MoY29uZmlnKSB7XG4gICAgICAgICAgICBjb25maWcgPSBjb25maWcgPyBjb25maWcgOiB7fVxuICAgICAgICAgICAgY29uZmlnLmhvbWVQYWdlID0gZ2V0V21Qcm9qZWN0UHJvcGVydGllcygpLmhvbWVQYWdlO1xuICAgICAgICAgICAgaWYgKGNvbmZpZy51c2VySW5mbykge1xuICAgICAgICAgICAgICAgIC8vIEJhY2tlbmQgcmV0dXJucyBsYW5kaW5nUGFnZSBpbnN0ZWFkIG9mIGhvbWVQYWdlLCBoZW5jZSB0aGlzIHN0YXRlbWVudChmb3IgY29uc2lzdGVuY3kpXG4gICAgICAgICAgICAgICAgLy8gY29uZmlnLnVzZXJJbmZvLmhvbWVQYWdlID0gY29uZmlnLnVzZXJJbmZvLmxhbmRpbmdQYWdlO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgdGhpcy5jb25maWcgPSBjb25maWc7XG4gICAgICAgICAgICB0aGlzLmxhc3RMb2dnZWRJblVzZXIgPSBnZXRDbG9uZWRPYmplY3QodGhpcy5sb2dnZWRJblVzZXIpO1xuICAgICAgICAgICAgdGhpcy5sb2dnZWRJblVzZXIgPSBjb25maWcudXNlckluZm87XG4gICAgICAgICAgICBpbnZva2VRdWV1ZWRDYWxsYmFja3MuY2FsbCh0aGlzLCAnY29uZmlnJywgJ3N1Y2Nlc3MnLCB0aGlzLmdldCgpKTtcbiAgICAgICAgfVxuXG4gICAgICAgIGZ1bmN0aW9uIG9uRXJyb3IoZXJyb3IpIHtcbiAgICAgICAgICAgIC8qaWYgKCRyb290U2NvcGUuaXNNb2JpbGVBcHBsaWNhdGlvblR5cGUpIHtcbiAgICAgICAgICAgICB0aGlzLmNvbmZpZyA9IHtcbiAgICAgICAgICAgICAnc2VjdXJpdHlFbmFibGVkJzogZmFsc2UsXG4gICAgICAgICAgICAgJ2F1dGhlbnRpY2F0ZWQnOiBmYWxzZSxcbiAgICAgICAgICAgICAnaG9tZVBhZ2UnOiBfV01fQVBQX1BST1BFUlRJRVMuaG9tZVBhZ2UsXG4gICAgICAgICAgICAgJ3VzZXJJbmZvJzogbnVsbCxcbiAgICAgICAgICAgICAnbG9naW4nOiBudWxsXG4gICAgICAgICAgICAgfTtcbiAgICAgICAgICAgICBpbnZva2VRdWV1ZWRDYWxsYmFja3MoJ2NvbmZpZycsICdzdWNjZXNzJywgdGhpcy5nZXQoKSk7XG4gICAgICAgICAgICAgfSBlbHNlIHsqL1xuICAgICAgICAgICAgaW52b2tlUXVldWVkQ2FsbGJhY2tzLmNhbGwodGhpcywgJ2NvbmZpZycsICdlcnJvcicsIGVycm9yKTtcbiAgICAgICAgICAgIC8vIH1cbiAgICAgICAgfVxuXG4gICAgICAgIGlmICh0aGlzLmdldCgpKSB7XG4gICAgICAgICAgICAvLyBpZiBhbHJlYWR5IGZldGNoZWQsIHJldHVybiBpdFxuICAgICAgICAgICAgdHJpZ2dlckZuKHN1Y2Nlc3NDYWxsYmFjaywgdGhpcy5nZXQoKSk7XG4gICAgICAgICAgICByZXR1cm47XG4gICAgICAgIH1cblxuICAgICAgICAvLyBRdWV1ZSBjaGVjaywgaWYgc2FtZSBxdWV1ZSBpcyBhbHJlYWR5IGluIHByb2dyZXNzLCBkbyBub3Qgc2VuZCBhbm90aGVyIHJlcXVlc3RcbiAgICAgICAgdGhpcy5yZXF1ZXN0UXVldWUuY29uZmlnID0gdGhpcy5yZXF1ZXN0UXVldWUuY29uZmlnIHx8IFtdO1xuICAgICAgICB0aGlzLnJlcXVlc3RRdWV1ZS5jb25maWcucHVzaCh7XG4gICAgICAgICAgICBzdWNjZXNzOiBzdWNjZXNzQ2FsbGJhY2ssXG4gICAgICAgICAgICBlcnJvcjogZmFpbHVyZUNhbGxiYWNrXG4gICAgICAgIH0pO1xuICAgICAgICBpZiAodGhpcy5yZXF1ZXN0UXVldWUuY29uZmlnLmxlbmd0aCA+IDEpIHtcbiAgICAgICAgICAgIHJldHVybjtcbiAgICAgICAgfVxuXG4gICAgICAgIGlmICghaGFzQ29yZG92YSgpKSB7XG4gICAgICAgICAgICAvLyBmb3Igd2ViIHByb2plY3QsIHJldHVybiBjb25maWcgcmV0dXJuZWQgZnJvbSBiYWNrZW5kIEFQSSBjYWxsLlxuICAgICAgICAgICAgdGhpcy5nZXRXZWJDb25maWcob25TdWNjZXNzLmJpbmQodGhpcyksIG9uRXJyb3IuYmluZCh0aGlzKSk7XG4gICAgICAgIH1cbiAgICAgICAgLyogZWxzZSB7XG4gICAgICAgICAvISpcbiAgICAgICAgICogZm9yIG1vYmlsZSBhcHAsIGZpcnN0IGdldCB0aGUgbW9iaWxlIGNvbmZpZyAoc2F2ZWQgaW4gdGhlIGFwaylcbiAgICAgICAgICogLSBpZiBzZWN1cml0eSBub3QgZW5hYmxlZCwganVzdCByZXR1cm4gbW9iaWxlIGNvbmZpZyAobm8gYmFja2VuZCBjYWxsIHJlcXVpcmVkKVxuICAgICAgICAgKiAtIGVsc2UsIGdldCBXZWIgY29uZmlnICh3aWxsIGJlICB0aGUgc2FtZSBBUEkgaGl0IGZvciBsb2dpbikgYW5kIG1lcmdlIHRoZSBjb25maWcgd2l0aCBfbW9iaWxlY29uZmlnXG4gICAgICAgICAqIS9cbiAgICAgICAgIGdldE1vYmlsZUNvbmZpZyhmdW5jdGlvbiAobW9iaWxlY29uZmlnKSB7XG4gICAgICAgICBpZiAoIW1vYmlsZWNvbmZpZy5zZWN1cml0eUVuYWJsZWQpIHtcbiAgICAgICAgIG9uU3VjY2Vzcyhtb2JpbGVjb25maWcpO1xuICAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgIGdldFdlYkNvbmZpZyhmdW5jdGlvbiAoY29uZmlnKSB7XG4gICAgICAgICBjb25maWcgPSBtZXJnZVdlYkFuZE1vYmlsZUNvbmZpZyhjb25maWcpO1xuICAgICAgICAgb25TdWNjZXNzKGNvbmZpZyk7XG4gICAgICAgICB9LCBmdW5jdGlvbiAoKSB7b25TdWNjZXNzKG1vYmlsZWNvbmZpZyk7IH0pO1xuICAgICAgICAgfVxuICAgICAgICAgfSwgb25FcnJvcik7XG4gICAgICAgICB9Ki9cbiAgICB9XG5cbiAgICBnZXRMYXN0TG9nZ2VkSW5Vc2VybmFtZSgpIHtcbiAgICAgICAgcmV0dXJuIHRoaXMubGFzdExvZ2dlZEluVXNlciAmJiB0aGlzLmxhc3RMb2dnZWRJblVzZXIudXNlck5hbWU7XG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogUmV0dXJucyB0aGUgY3VycmVudCBwYWdlIG5hbWVcbiAgICAgKiBAcmV0dXJucyB7c3RyaW5nfVxuICAgICAqL1xuICAgIGdldEN1cnJlbnRSb3V0ZVBhZ2UoKSB7XG4gICAgICAgIGNvbnN0IHAgPSB0aGlzLl9sb2NhdGlvbi5wYXRoKCk7XG4gICAgICAgIGxldCBsSW5kZXggPSBwLmluZGV4T2YoJz8nKTtcbiAgICAgICAgbEluZGV4ID0gbEluZGV4ID09PSAtMSA/IHAubGVuZ3RoIDogbEluZGV4IC0gMTtcbiAgICAgICAgcmV0dXJuIHAuc3Vic3RyKDEsIGxJbmRleCk7IC8vIGlnbm9yZSB0aGUgcXVlcnkgcGFyYW1zXG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogUmV0dXJucyBRdWVyeSBwYXJhbXMgZm9yIHNwZWNpZmllZCBwYXJhbSBuYW1lIGluIGN1cnJlbnQgUm91dGVcbiAgICAgKiBAcGFyYW0gcGFyYW1OYW1lLCB0aGUgcGFyYW0gbmFtZSB3aG9zZSBxdWVyeSBwYXJhbSB2YWx1ZSBpcyB0byBiZSByZXRyaWV2ZWRcbiAgICAgKiBAcmV0dXJucyB7YW55fVxuICAgICAqL1xuICAgIGdldEN1cnJlbnRSb3V0ZVF1ZXJ5UGFyYW0ocGFyYW1OYW1lKSB7XG4gICAgICAgIGxldCBwYXJhbVZhbDtcbiAgICAgICAgdGhpcy5hY3RpdmF0ZWRSb3V0ZS5xdWVyeVBhcmFtcy5zdWJzY3JpYmUocGFyYW1zID0+IHtcbiAgICAgICAgICAgIHBhcmFtVmFsID0gcGFyYW1zW3BhcmFtTmFtZV07XG4gICAgICAgIH0pO1xuICAgICAgICByZXR1cm4gcGFyYW1WYWw7XG4gICAgfVxuXG4gICAgaXNOb1BhZ2VMb2FkZWQoKSB7XG4gICAgICAgIHJldHVybiAhaXNFbXB0eSh0aGlzLmdldEN1cnJlbnRSb3V0ZVBhZ2UoKSk7XG4gICAgfVxuXG4gICAgZ2V0UGFnZUJ5TG9nZ2VkSW5Vc2VyKCkge1xuICAgICAgICBjb25zdCB0aGF0ID0gdGhpcztcbiAgICAgICAgcmV0dXJuIG5ldyBQcm9taXNlKChyZXNvbHZlKSA9PiB7XG4gICAgICAgICAgICBsZXQgcGFnZTtcbiAgICAgICAgICAgIGlmICghaXNBcHBsaWNhdGlvblR5cGUpIHtcbiAgICAgICAgICAgICAgICBpZiAodGhhdC5pc05vUGFnZUxvYWRlZCgpKSB7XG4gICAgICAgICAgICAgICAgICAgIHBhZ2UgPSBnZXRXbVByb2plY3RQcm9wZXJ0aWVzKCkuaG9tZVBhZ2U7XG4gICAgICAgICAgICAgICAgICAgIHJlc29sdmUocGFnZSk7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgICAgICB0aGF0LmdldENvbmZpZygoY29uZmlnKSA9PiB7XG4gICAgICAgICAgICAgICAgICAgIGlmIChjb25maWcuc2VjdXJpdHlFbmFibGVkICYmIGNvbmZpZy5hdXRoZW50aWNhdGVkKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICBwYWdlID0gY29uZmlnLnVzZXJJbmZvLmxhbmRpbmdQYWdlIHx8IGdldFdtUHJvamVjdFByb3BlcnRpZXMoKS5ob21lUGFnZTtcbiAgICAgICAgICAgICAgICAgICAgICAgIC8vIG92ZXJyaWRlIHRoZSBkZWZhdWx0IHhzcmYgY29va2llIG5hbWUgYW5kIHhzcmYgaGVhZGVyIG5hbWVzIHdpdGggV2F2ZU1ha2VyIHNwZWNpZmljIHZhbHVlc1xuICAgICAgICAgICAgICAgICAgICAgICAgaWYgKHRoYXQuaXNYc3JmRW5hYmxlZCgpKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgLy8gdGhpcy4kaHR0cC5kZWZhdWx0cy54c3JmQ29va2llTmFtZSA9IFhTUkZfQ09PS0lFO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8vIHRoaXMuJGh0dHAuZGVmYXVsdHMueHNyZkhlYWRlck5hbWUgPSBjb25maWcuY3NyZkhlYWRlck5hbWU7XG4gICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICAgICAgICAgICAgICBwYWdlID0gZ2V0V21Qcm9qZWN0UHJvcGVydGllcygpLmhvbWVQYWdlO1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgIHJlc29sdmUocGFnZSk7XG4gICAgICAgICAgICAgICAgfSwgZnVuY3Rpb24gKCkge1xuICAgICAgICAgICAgICAgICAgICByZXNvbHZlKGdldFdtUHJvamVjdFByb3BlcnRpZXMoKS5ob21lUGFnZSk7XG4gICAgICAgICAgICAgICAgfSk7XG4gICAgICAgICAgICB9XG4gICAgICAgIH0pO1xuICAgIH1cblxuICAgIC8qKlxuICAgICAqIExvYWRzIHRoZSBBcHAgcGFnZSBhcyBmb2xsb3dzOlxuICAgICAqIFNlY3VyaXR5IGRpc2FibGVkOlxuICAgICAqICAgICAgLSBIb21lIHBhZ2VcbiAgICAgKiBTZWN1cml0eSBlbmFibGVkOlxuICAgICAqICAgICAgLSBVc2VyIGlzIGxvZ2dlZCBpbiwgcmVzcGVjdGl2ZSBsYW5kaW5nIHBhZ2UgaXMgbG9hZGVkXG4gICAgICogICAgICAtIE5vdCBsb2dnZWQgaW46XG4gICAgICogICAgICAgICAgLSBIb21lIHBhZ2UgaXMgcHVibGljLCBsb2FkcyB0aGUgaG9tZSBwYWdlXG4gICAgICogICAgICAgICAgLSBIb21lIHBhZ2Ugbm90IHB1YmxpYywgTG9naW4gcGFnZShpbiBjb25maWcpIGlzIGxvYWRlZFxuICAgICAqIEBwYXJhbSBmb3JjZVBhZ2VMb2FkXG4gICAgICogQHJldHVybnMge1Byb21pc2U8VD59XG4gICAgICovXG4gICAgbG9hZFBhZ2VCeVVzZXJSb2xlKGZvcmNlUGFnZUxvYWQ/KSB7XG4gICAgICAgIGNvbnN0IHRoYXQgPSB0aGlzO1xuICAgICAgICByZXR1cm4gdGhpcy5nZXRQYWdlQnlMb2dnZWRJblVzZXIoKS50aGVuKHBhZ2UgPT4ge1xuICAgICAgICAgICAgaWYgKHRoYXQuaXNOb1BhZ2VMb2FkZWQoKSB8fCBmb3JjZVBhZ2VMb2FkKSB7XG4gICAgICAgICAgICAgICAgLy8gUmVsb2FkIHRoZSBwYWdlIHdoZW4gY3VycmVudCBwYWdlIGFuZCBwb3N0IGxvZ2luIGxhbmRpbmcgcGFnZSBhcmUgc2FtZVxuICAgICAgICAgICAgICAgIGlmICh0aGF0LmdldEN1cnJlbnRSb3V0ZVBhZ2UoKSA9PT0gcGFnZSkge1xuICAgICAgICAgICAgICAgICAgICAod2luZG93LmxvY2F0aW9uIGFzIGFueSkucmVsb2FkKCk7XG4gICAgICAgICAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgICAgICAgICAgdGhhdC5yb3V0ZXJTZXJ2aWNlLm5hdmlnYXRlKFtgLyR7cGFnZX1gXSk7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9KTtcbiAgICB9XG5cbiAgICAvKipcbiAgICAgKiBOYXZpZ2F0ZXMgdG8gdGhlIGN1cnJlbnQgdXNlcidzIGhvbWVQYWdlIGJhc2VkIG9uIHRoZSBjb25maWcgaW4gU2VjdXJpdHlTZXJ2aWNlXG4gICAgICogQXNzdW1wdGlvbiBpcyB0aGUgU2VjdXJpdHlTZXJ2aWNlIGlzIHVwZGF0ZWQgd2l0aCB0aGUgbGF0ZXN0IHNlY3VyaXR5IGNvbmZpZyBiZWZvcmUgbWFraW5nIGNhbGwgdG8gdGhpcyBmdW5jdGlvblxuICAgICAqL1xuICAgIG5hdmlnYXRlT25Mb2dpbigpIHtcbiAgICAgICAgdGhpcy5sb2FkUGFnZUJ5VXNlclJvbGUodHJ1ZSk7XG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogR2V0cyB0aGUgcGFnZSB3aGljaCBuZWVkcyB0byBiZSByZWRpcmVjdGVkIHRvIG9uIHN1Y2Nlc3NmdWwgbG9naW5cbiAgICAgKiBAcGFyYW0gY29uZmlnLFxuICAgICAqIEBwYXJhbSBwYWdlLCBwYWdlIG5hbWUgZm9yIHJlZGlyZWN0aW9uXG4gICAgICogQHJldHVybnMge2FueXxzdHJpbmd9XG4gICAgICovXG4gICAgZ2V0UmVkaXJlY3RQYWdlKGNvbmZpZywgcGFnZT8pIHtcbiAgICAgICAgY29uc3QgaG9tZVBhZ2UgPSBnZXRXbVByb2plY3RQcm9wZXJ0aWVzKCkuaG9tZVBhZ2UsXG4gICAgICAgICAgICBsb2dpblBhZ2UgPSBnZXQoY29uZmlnLCAnbG9naW5Db25maWcucGFnZU5hbWUnKTtcbiAgICAgICAgbGV0IHByZXZSZWRpcmVjdFBhZ2UsXG4gICAgICAgICAgICByZWRpcmVjdFBhZ2UgPSBwYWdlIHx8IHRoaXMuZ2V0Q3VycmVudFJvdXRlUGFnZSgpO1xuXG4gICAgICAgIC8vIGlmIHVzZXIgaXMgYWxyZWFkeSBvbiBIb21lIHBhZ2Ugb3IgTG9naW4gcGFnZSwgdGhleSBzaG91bGQgbm90IGJlIHJlZGlyZWN0ZWQgdG8gdGhhdCBwYWdlLCBoZW5jZSByZXR1cm4gdW5kZWZpbmVkXG4gICAgICAgIGlmIChyZWRpcmVjdFBhZ2UgPT09IGhvbWVQYWdlIHx8IHJlZGlyZWN0UGFnZSA9PT0gbG9naW5QYWdlKSB7XG4gICAgICAgICAgICAvKlxuICAgICAgICAgICAgICogZmluZCBwcmV2aW91cyByZWRpcmVjdCBwYWdlIGZyb20gVVJMLCBpZiBleGlzdHMsIHVzZXIgc2hvdWxkIHJlZGlyZWN0IHRvIHRoYXQgcGFnZS5cbiAgICAgICAgICAgICAqIFVTRSBDQVNFOlxuICAgICAgICAgICAgICogIHVzZXIgaXMgb24gaHR0cDovL2xvY2FsaG9zdDo4MDgwL2FwcC8jL0xvZ2luP3JlZGlyZWN0VG89cGFnZVxuICAgICAgICAgICAgICogIGEgdmFyaWFibGUgY2FsbCBmYWlscyByZXN1bHRpbmcgNDAxXG4gICAgICAgICAgICAgKiAgaW4gdGhpcyBjYXNlLCByZWRpcmVjdFRvIHBhZ2Ugc2hvdWxkIGJlICdwYWdlJyBhbmQgbm90IHVuZGVmaW5lZFxuICAgICAgICAgICAgICovXG4gICAgICAgICAgICBwcmV2UmVkaXJlY3RQYWdlID0gdGhpcy5nZXRDdXJyZW50Um91dGVRdWVyeVBhcmFtKCdyZWRpcmVjdFRvJyk7XG4gICAgICAgICAgICByZWRpcmVjdFBhZ2UgPSAhaXNFbXB0eShwcmV2UmVkaXJlY3RQYWdlKSA/IHByZXZSZWRpcmVjdFBhZ2UgOiB1bmRlZmluZWQ7XG4gICAgICAgIH1cblxuICAgICAgICByZXR1cm4gcmVkaXJlY3RQYWdlO1xuICAgIH1cblxuICAgIC8qKlxuICAgICAqIFJldHVybnMgYWxsIHRoZSBxdWVyeSBwYXJhbXMoaW5jbHVkaW5nIHBhZ2UgcGFyYW1zIGFuZCByZWRpcmVjdCB0byBwYXJhbXMpIGFzc29jaWF0ZWQgd2l0aCByZWRpcmVjdGVkIHBhZ2VcbiAgICAgKi9cbiAgICBnZXRSZWRpcmVjdGVkUm91dGVRdWVyeVBhcmFtcygpIHtcbiAgICAgICAgbGV0IHF1ZXJ5UGFyYW1zID0ge307XG4gICAgICAgIHRoaXMuYWN0aXZhdGVkUm91dGUucXVlcnlQYXJhbXMuc3Vic2NyaWJlKChwYXJhbVZhbCkgPT4ge1xuICAgICAgICAgICAgZm9yRWFjaChwYXJhbVZhbCwgKHZhbCwga2V5KSA9PiB7XG4gICAgICAgICAgICAgICAgcXVlcnlQYXJhbXNba2V5XSA9IHZhbDtcbiAgICAgICAgICAgIH0pO1xuICAgICAgICB9KTtcbiAgICAgICAgcmV0dXJuIHF1ZXJ5UGFyYW1zO1xuICAgIH1cblxuICAgIC8vIGFjY2VwdHMgcXVlcnkgb2JqZWN0IGxpa2Uge2E6MSwgYjoyfSBhbmQgcmV0dXJucyBhPTEmYj0yIHN0cmluZ1xuICAgIGdldFF1ZXJ5U3RyaW5nKHF1ZXJ5T2JqZWN0KSB7XG4gICAgICAgIGNvbnN0IHBhcmFtcyA9IFtdO1xuICAgICAgICBmb3JFYWNoKHF1ZXJ5T2JqZWN0LCBmdW5jdGlvbiAodmFsdWUsIGtleSkge1xuICAgICAgICAgICAgcGFyYW1zLnB1c2goa2V5ICsgJz0nICsgdmFsdWUpO1xuICAgICAgICB9KTtcbiAgICAgICAgcmV0dXJuIGpvaW4ocGFyYW1zLCAnJicpO1xuICAgIH1cblxuICAgIGFwcExvZ2luKHBhcmFtcywgc3VjY2Vzc0NhbGxiYWNrLCBmYWlsdXJlQ2FsbGJhY2spIHtcbiAgICAgICAgbGV0IHBheWxvYWQgPSAnJztcblxuICAgICAgICAvLyBlbmNvZGUgYWxsIHBhcmFtZXRlcnNcbiAgICAgICAgZWFjaChwYXJhbXMsIGZ1bmN0aW9uICh2YWx1ZSwgbmFtZSkge1xuICAgICAgICAgICAgcGF5bG9hZCArPSAocGF5bG9hZCA/ICcmJyA6ICcnKSArIGVuY29kZVVSSUNvbXBvbmVudChuYW1lKSArICc9JyArIGVuY29kZVVSSUNvbXBvbmVudCh2YWx1ZSk7XG4gICAgICAgIH0pO1xuXG4gICAgICAgIHJldHVybiB0aGlzLiRodHRwLnNlbmQoe1xuICAgICAgICAgICAgbWV0aG9kOiAnUE9TVCcsXG4gICAgICAgICAgICBoZWFkZXJzOiB7XG4gICAgICAgICAgICAgICAgJ0NvbnRlbnQtVHlwZSc6ICdhcHBsaWNhdGlvbi94LXd3dy1mb3JtLXVybGVuY29kZWQnXG4gICAgICAgICAgICB9LFxuICAgICAgICAgICAgdXJsOiAnal9zcHJpbmdfc2VjdXJpdHlfY2hlY2snLFxuICAgICAgICAgICAgJ2RhdGEnOiBwYXlsb2FkXG4gICAgICAgIH0pLnRoZW4oKHJlc3BvbnNlKSA9PiB7XG4gICAgICAgICAgICBjb25zdCB4c3JmQ29va2llVmFsdWUgPSByZXNwb25zZS5ib2R5ID8gcmVzcG9uc2UuYm9keVtYU1JGX0NPT0tJRV9OQU1FXSA6ICcnO1xuXG4gICAgICAgICAgICAvLyBvdmVycmlkZSB0aGUgZGVmYXVsdCB4c3JmIGNvb2tpZSBuYW1lIGFuZCB4c3JmIGhlYWRlciBuYW1lcyB3aXRoIFdhdmVNYWtlciBzcGVjaWZpYyB2YWx1ZXNcbiAgICAgICAgICAgIGlmICh4c3JmQ29va2llVmFsdWUpIHtcbiAgICAgICAgICAgICAgICBpZiAoaGFzQ29yZG92YSgpKSB7XG4gICAgICAgICAgICAgICAgICAgIGxvY2FsU3RvcmFnZS5zZXRJdGVtKFhTUkZfQ09PS0lFX05BTUUsIHhzcmZDb29raWVWYWx1ZSB8fCAnJyk7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICAgICAgLy8gQWZ0ZXIgdGhlIHN1Y2Nlc3NmdWwgbG9naW4gaW4gZGV2aWNlLCB0aGlzIGZ1bmN0aW9uIHRyaWdnZXJzIHRoZSBwZW5kaW5nIG9uTG9naW5DYWxsYmFja3MuXG4gICAgICAgICAgICB0aGlzLmluamVjdG9yLmdldChBcHApLm5vdGlmeSgndXNlckxvZ2dlZEluJywge30pO1xuICAgICAgICAgICAgdHJpZ2dlckZuKHN1Y2Nlc3NDYWxsYmFjaywgcmVzcG9uc2UpO1xuICAgICAgICB9LCBmYWlsdXJlQ2FsbGJhY2spO1xuICAgIH1cblxuICAgIC8qKlxuICAgICAqIFRoZSBBUEkgaXMgdXNlZCB0byBjaGVjayBpZiB0aGUgdXNlciBpcyBhdXRoZW50aWNhdGVkIGluIHRoZSBSVU4gbW9kZS5cbiAgICAgKlxuICAgICAqIEBwYXJhbSB7ZnVuY3Rpb259IHN1Y2Nlc3NDYWxsYmFjayB0byBiZSBjYWxsZWQgb24gc3VjY2Vzc1xuICAgICAqIEBwYXJhbSB7ZnVuY3Rpb259IGZhaWx1cmVDYWxsYmFjayB0byBiZSBjYWxsZWQgb24gZmFpbHVyZVxuICAgICAqL1xuICAgIGlzQXV0aGVudGljYXRlZChzdWNjZXNzQ2FsbGJhY2ssIGZhaWx1cmVDYWxsYmFjaykge1xuICAgICAgICB0aGlzLmdldENvbmZpZyhmdW5jdGlvbiAoY29uZmlnKSB7XG4gICAgICAgICAgICB0cmlnZ2VyRm4oc3VjY2Vzc0NhbGxiYWNrLCBjb25maWcuYXV0aGVudGljYXRlZCk7XG4gICAgICAgIH0sIGZhaWx1cmVDYWxsYmFjayk7XG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogVGhlIEFQSSBpcyB1c2VkIHRvIGxvZ291dCBvZiB0aGUgYXBwLlxuICAgICAqXG4gICAgICogQHBhcmFtIHtmdW5jdGlvbn0gc3VjY2Vzc0NhbGxiYWNrIHRvIGJlIGNhbGxlZCBvbiBzdWNjZXNzXG4gICAgICogQHBhcmFtIHtmdW5jdGlvbn0gZmFpbHVyZUNhbGxiYWNrIHRvIGJlIGNhbGxlZCBvbiBmYWlsdXJlXG4gICAgICovXG4gICAgYXBwTG9nb3V0KHN1Y2Nlc3NDYWxsYmFjaywgZmFpbHVyZUNhbGxiYWNrKSB7XG4gICAgICAgIHJldHVybiB0aGlzLiRodHRwLnNlbmQoe1xuICAgICAgICAgICAgdGFyZ2V0OiAnU2VjdXJpdHknLFxuICAgICAgICAgICAgdXJsOiAnal9zcHJpbmdfc2VjdXJpdHlfbG9nb3V0JyxcbiAgICAgICAgICAgIG1ldGhvZDogJ1BPU1QnLFxuICAgICAgICAgICAgcmVzcG9uc2VUeXBlOiAndGV4dCcsXG4gICAgICAgICAgICBieVBhc3NSZXN1bHQ6IHRydWVcbiAgICAgICAgfSkudGhlbigocmVzcG9uc2UpID0+IHtcbiAgICAgICAgICAgIHNldCh0aGlzLmdldCgpLCAnYXV0aGVudGljYXRlZCcsIGZhbHNlKTtcbiAgICAgICAgICAgIHNldCh0aGlzLmdldCgpLCAndXNlckluZm8nLCBudWxsKTtcbiAgICAgICAgICAgIC8qaWYgKENPTlNUQU5UUy5oYXNDb3Jkb3ZhKSB7XG4gICAgICAgICAgICAgICAgbG9jYWxTdG9yYWdlLnNldEl0ZW0oQ09OU1RBTlRTLlhTUkZfQ09PS0lFX05BTUUsICcnKTtcbiAgICAgICAgICAgIH0qL1xuICAgICAgICAgICAgdGhpcy5pbmplY3Rvci5nZXQoQXBwKS5ub3RpZnkoJ3VzZXJMb2dnZWRPdXQnLCB7fSk7XG4gICAgICAgICAgICB0cmlnZ2VyRm4oc3VjY2Vzc0NhbGxiYWNrLCByZXNwb25zZSk7XG4gICAgICAgIH0sIGZhaWx1cmVDYWxsYmFjayk7XG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogQ2hlY2tzIGFuZCByZXR1cm4gdGhlIGNvb2tpZVxuICAgICAqIEBwYXJhbSBuYW1lLCBjb29raWUga2V5XG4gICAgICogQHJldHVybnMge3N0cmluZ31cbiAgICAgKi9cbiAgICBnZXRDb29raWVCeU5hbWUobmFtZSkge1xuICAgICAgICAvLyBUb2RvOiBTaHViaGFtIEltcGxlbWVudCBjb29raWUgbmF0aXZlIGpzXG4gICAgICAgIHJldHVybiAnY29va2llJztcbiAgICB9XG5cbiAgICAvKipcbiAgICAgKiBUaGlzIGZ1bmN0aW9uIHJldHVybnMgdGhlIGNvb2tpZVZhbHVlIGlmIHhzcmYgaXMgZW5hYmxlZC5cbiAgICAgKiBJbiBkZXZpY2UsIHhzcmYgY29va2llIGlzIHN0b3JlZCBpbiBsb2NhbFN0b3JhZ2UuXG4gICAgICogQHJldHVybnMgeHNyZiBjb29raWUgdmFsdWVcbiAgICAgKi9cbiAgICBpc1hzcmZFbmFibGVkKCkge1xuICAgICAgICBpZiAoaGFzQ29yZG92YSgpKSB7XG4gICAgICAgICAgICByZXR1cm4gbG9jYWxTdG9yYWdlLmdldEl0ZW0oWFNSRl9DT09LSUVfTkFNRSk7XG4gICAgICAgIH1cbiAgICAgICAgcmV0dXJuIHRoaXMuZ2V0Q29va2llQnlOYW1lKFhTUkZfQ09PS0lFX05BTUUpO1xuICAgIH1cblxuICAgIC8qKlxuICAgICAqIFRoaXMgZnVuY3Rpb24gcmV0dXJucyBhIHByb21pc2UuIFByb21pc2UgaXMgcmVzb2x2ZWQgd2hlbiBzZWN1cml0eSBpc1xuICAgICAqIDEuIGRpc2FibGVkXG4gICAgICogMi4gZW5hYmxlZCBhbmQgdXNlciBpcyBhdXRoZW50aWNhdGVkXG4gICAgICogMy4gZW5hYmxlZCBhbmQgdXNlciBpcyBub3QgYXV0aGVudGljYXRlZCwgdGhlbiBwcm9taXNlIGlzIHJlc29sdmVkIG9uIHVzZXIgbG9naW5cbiAgICAgKiBAcmV0dXJucyB7Kn0gcHJvbWlzZVxuICAgICAqL1xuICAgIHB1YmxpYyBvblVzZXJMb2dpbigpOiBQcm9taXNlPGFueT4ge1xuICAgICAgICByZXR1cm4gbmV3IFByb21pc2U8dm9pZD4oKHJlc29sdmUsIHJlamVjdCkgPT4ge1xuICAgICAgICAgICAgdGhpcy5nZXRDb25maWcoY29uZmlnID0+IHtcbiAgICAgICAgICAgICAgICBpZiAoY29uZmlnLnNlY3VyaXR5RW5hYmxlZCkge1xuICAgICAgICAgICAgICAgICAgICBpZiAoY29uZmlnLmF1dGhlbnRpY2F0ZWQpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIHJlc29sdmUoKTtcbiAgICAgICAgICAgICAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIGNvbnN0IHVuc3Vic2NyaWJlID0gdGhpcy5pbmplY3Rvci5nZXQoQXBwKS5zdWJzY3JpYmUoJ3VzZXJMb2dnZWRJbicsICgpID0+IHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICByZXNvbHZlKCk7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgdW5zdWJzY3JpYmUoKTtcbiAgICAgICAgICAgICAgICAgICAgICAgIH0pO1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgICAgICAgICAgcmVzb2x2ZSgpO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH0sIHJlamVjdCk7XG4gICAgICAgIH0pO1xuICAgIH1cblxuICAgIC8qKlxuICAgICAqIEByZXR1cm5zIGEgcHJvbWlzZSB0aGF0IGlzIHJlc29sdmVkIHdpdGggbG9nZ2VkLWluLXVzZXJcbiAgICAgKi9cbiAgICBnZXRMb2dnZWRJblVzZXIoKSB7XG4gICAgICAgIHJldHVybiBuZXcgUHJvbWlzZTxhbnk+KChyZXNvbHZlLCByZWplY3QpID0+IHtcbiAgICAgICAgICAgIHRoaXMuZ2V0Q29uZmlnKChjb25maWcpID0+IHtcbiAgICAgICAgICAgICAgICBpZiAoY29uZmlnICYmIGNvbmZpZy51c2VySW5mbykge1xuICAgICAgICAgICAgICAgICAgICByZXNvbHZlKGNvbmZpZy51c2VySW5mbyk7XG4gICAgICAgICAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgICAgICAgICAgcmVqZWN0KCk7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfSwgcmVqZWN0KTtcbiAgICAgICAgfSk7XG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogVGhpcyBpcyBmb3IgbW9iaWxlIGFwcHMgdG8gYXV0aGVudGljYXRlIHZpYSBicm93c2VyLlxuICAgICAqXG4gICAgICogQHJldHVybnMgYSBwcm9taXNlIHRoYXQgaXMgcmVzb2x2ZWQgYWZ0ZXIgbG9naW5cbiAgICAgKi9cbiAgICBhdXRoSW5Ccm93c2VyKCk6IFByb21pc2U8YW55PiB7XG4gICAgICAgIHJldHVybiBQcm9taXNlLnJlamVjdCgnVGhpcyBhdXRoSW5Ccm93c2VyIHNob3VsZCBub3QgYmUgY2FsbGVkJyk7XG4gICAgfVxufVxuIl19
400
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2VjdXJpdHkuc2VydmljZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3Byb2plY3RzL3NlY3VyaXR5L3NyYy9zZWN1cml0eS5zZXJ2aWNlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxVQUFVLEVBQUUsUUFBUSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQ3JELE9BQU8sRUFBRSxRQUFRLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUMzQyxPQUFPLEVBQUUsY0FBYyxFQUFFLE1BQU0sRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBRXpELE9BQU8sRUFDSCxtQkFBbUIsRUFDbkIsR0FBRyxFQUNILGVBQWUsRUFDZixzQkFBc0IsRUFDdEIsU0FBUyxFQUNaLE1BQU0sVUFBVSxDQUFDO0FBQ2xCLE9BQU8sRUFBQyxJQUFJLEVBQUUsT0FBTyxFQUFFLEdBQUcsRUFBRSxPQUFPLEVBQUUsSUFBSSxFQUFFLEdBQUcsRUFBQyxNQUFNLFdBQVcsQ0FBQzs7Ozs7QUFFakUsdURBQXVEO0FBQ3ZELE1BQU0sZ0JBQWdCLEdBQUcsZUFBZSxFQUNwQyxpQkFBaUIsR0FBRyxJQUFJLENBQUM7QUFHN0IsTUFBTSxPQUFPLGVBQWU7SUFPeEIsWUFDWSxRQUFrQixFQUNsQixLQUEwQixFQUMxQixhQUFxQixFQUNyQixjQUE4QixFQUM5QixTQUFtQjtRQUpuQixhQUFRLEdBQVIsUUFBUSxDQUFVO1FBQ2xCLFVBQUssR0FBTCxLQUFLLENBQXFCO1FBQzFCLGtCQUFhLEdBQWIsYUFBYSxDQUFRO1FBQ3JCLG1CQUFjLEdBQWQsY0FBYyxDQUFnQjtRQUM5QixjQUFTLEdBQVQsU0FBUyxDQUFVO1FBUC9CLGlCQUFZLEdBQVEsRUFBRSxDQUFDO0lBUXBCLENBQUM7SUFFSixRQUFRO1FBQ0osT0FBTyxJQUFJLENBQUMsTUFBTSxDQUFDO0lBQ3ZCLENBQUM7SUFFRCxHQUFHO1FBQ0MsT0FBTyxJQUFJLENBQUMsTUFBTSxDQUFDO0lBQ3ZCLENB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QUUsTUFBTSxFQUFFLEVBQUU7WUFDeEMsSUFBSSxDQUFDLFNBQVMsQ0FBQyxDQUFDLE1BQU0sRUFBRSxFQUFFO2dCQUN0QixJQUFJLE1BQU0sSUFBSSxNQUFNLENBQUMsUUFBUSxFQUFFLENBQUM7b0JBQzVCLE9BQU8sQ0FBQyxNQUFNLENBQUMsUUFBUSxDQUFDLENBQUM7Z0JBQzdCLENBQUM7cUJBQU0sQ0FBQztvQkFDSixNQUFNLEVBQUUsQ0FBQztnQkFDYixDQUFDO1lBQ0wsQ0FBQyxFQUFFLE1BQU0sQ0FBQyxDQUFDO1FBQ2YsQ0FBQyxDQUFDLENBQUM7SUFDUCxDQUFDO0lBRUQ7Ozs7T0FJRztJQUNILGFBQWE7UUFDVCxPQUFPLE9BQU8sQ0FBQyxNQUFNLENBQUMseUNBQXlDLENBQUMsQ0FBQztJQUNyRSxDQUFDO2dIQTNaUSxlQUFlO3VFQUFmLGVBQWUsV0FBZixlQUFlOztpRkFBZixlQUFlO2NBRDNCLFVBQVUiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBJbmplY3RhYmxlLCBJbmplY3RvciB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgTG9jYXRpb24gfSBmcm9tICdAYW5ndWxhci9jb21tb24nO1xuaW1wb3J0IHsgQWN0aXZhdGVkUm91dGUsIFJvdXRlciB9IGZyb20gJ0Bhbmd1bGFyL3JvdXRlcic7XG5cbmltcG9ydCB7XG4gICAgQWJzdHJhY3RIdHRwU2VydmljZSxcbiAgICBBcHAsXG4gICAgZ2V0Q2xvbmVkT2JqZWN0LFxuICAgIGdldFdtUHJvamVjdFByb3BlcnRpZXMsXG4gICAgdHJpZ2dlckZuXG59IGZyb20gJ0B3bS9jb3JlJztcbmltcG9ydCB7ZWFjaCwgZm9yRWFjaCwgZ2V0LCBpc0VtcHR5LCBqb2luLCBzZXR9IGZyb20gXCJsb2Rhc2gtZXNcIjtcblxuLy8gVG9kb1tTaHViaGFtXTogTW92ZSBiZWxvdyBjb25zdGFudHMgdG8gYSBjb21tb24gZmlsZVxuY29uc3QgWFNSRl9DT09LSUVfTkFNRSA9ICd3bV94c3JmX3Rva2VuJyxcbiAgICBpc0FwcGxpY2F0aW9uVHlwZSA9IHRydWU7XG5cbkBJbmplY3RhYmxlKClcbmV4cG9ydCBjbGFzcyBTZWN1cml0eVNlcnZpY2Uge1xuICAgIGNvbmZpZztcbiAgICBsYXN0TG9nZ2VkSW5Vc2VyO1xuICAgIGxvZ2dlZEluVXNlcjtcbiAgICBsb2FkUHJvbWlzZTogUHJvbWlzZTxhbnk+O1xuICAgIHJlcXVlc3RRdWV1ZTogYW55ID0ge307XG5cbiAgICBjb25zdHJ1Y3RvcihcbiAgICAgICAgcHJpdmF0ZSBpbmplY3RvcjogSW5qZWN0b3IsXG4gICAgICAgIHByaXZhdGUgJGh0dHA6IEFic3RyYWN0SHR0cFNlcnZpY2UsXG4gICAgICAgIHByaXZhdGUgcm91dGVyU2VydmljZTogUm91dGVyLFxuICAgICAgICBwcml2YXRlIGFjdGl2YXRlZFJvdXRlOiBBY3RpdmF0ZWRSb3V0ZSxcbiAgICAgICAgcHJpdmF0ZSBfbG9jYXRpb246IExvY2F0aW9uXG4gICAgKSB7fVxuXG4gICAgaXNMb2FkZWQoKSB7XG4gICAgICAgIHJldHVybiB0aGlzLmNvbmZpZztcbiAgICB9XG5cbiAgICBnZXQoKSB7XG4gICAgICAgIHJldHVybiB0aGlzLmNvbmZpZztcbiAgICB9XG5cbiAgICBsb2FkKGZvcmNlRmxhZz86IGJvb2xlYW4pIHtcbiAgICAgICAgaWYodGhpcy5sb2FkUHJvbWlzZSkge3JldHVybiB0aGlzLmxvYWRQcm9taXNlO31cbiAgICAgICAvLyBDaGVjayBzZWN1cml0eUVuYWJsZWQgZmxhZyBpbiBfV01fQVBQX1BST1BFUlRJRVNcbiAgICAgICBpZiAoISh3aW5kb3cgYXMgYW55KS5fV01fQVBQX1BST1BFUlRJRVM/LnNlY3VyaXR5RW5hYmxlZCkge1xuICAgICAgICByZXR1cm4gUHJvbWlzZS5yZXNvbHZlKG51bGwpOyBcbiAgICAgICAgfVxuICAgICAgICBpZiAoIWZvcmNlRmxhZyAmJiB0aGlzLmNvbmZpZykge3JldHVybiBQcm9taXNlLnJlc29sdmUodGhpcy5jb25maWcpO31cbiAgICAgICAgdGhpcy5sb2FkUHJvbWlzZSA9IG5ldyBQcm9taXNlKChyZXNvbHZlLCByZWplY3QpID0+IHtcbiAgICAgICAgICAgICAgICB0aGlzLiRodHRwLnNlbmQoeyd1cmwnOiAnc2VydmljZXMvc2VjdXJpdHkvaW5mbycsICdtZXRob2QnOiAnR0VUJ30pLnRoZW4oKHJlc3BvbnNlKSA9PiB7XG4gICAgICAgICAgICAgICAgICAgIHRoaXMuY29uZmlnID0gcmVzcG9uc2UuYm9keTtcbiAgICAgICAgICAgICAgICAgICAgKHdpbmRvdyBhcyBhbnkpLl9XTV9BUFBfUFJPUEVSVElFU1snc2VjdXJpdHlJbmZvJ10gPSB0aGlzLmNvbmZpZ1xuICAgICAgICAgICAgICAgICAgICB0aGlzLmxhc3RMb2dnZWRJblVzZXIgPSBnZXRDbG9uZWRPYmplY3QodGhpcy5sb2dnZWRJblVzZXIpO1xuICAgICAgICAgICAgICAgICAgICB0aGlzLmxvZ2dlZEluVXNlciA9IHRoaXMuY29uZmlnLnVzZXJJbmZvO1xuICAgICAgICAgICAgICAgICAgICByZXNvbHZlKHJlc3BvbnNlLmJvZHkpO1xuICAgICAgICAgICAgICAgIH0pLmNhdGNoKChlcnIpPT57XG4gICAgICAgICAgICAgICAgICAgIHJlamVjdChlcnIpO1xuICAgICAgICAgICAgICAgIH0pLmZpbmFsbHkoKCk9PntcbiAgICAgICAgICAgICAgICAgICAgdGhpcy5sb2FkUHJvbWlzZSA9IG51bGw7XG4gICAgICAgICAgICAgICAgfSk7XG4gICAgICAgIH0pO1xuICAgICAgICByZXR1cm4gdGhpcy5sb2FkUHJvbWlzZTtcbiAgICB9XG5cbiAgICAvKipcbiAgICAgKiBnZXRzIHRoZSBzZWN1cml0eSBjb25maWcgZnJvbSB0aGUgZGVwbG95ZWQgYXBwIChiYWNrZW5kIGNhbGwpXG4gICAgICogQHBhcmFtIHN1Y2Nlc3NcbiAgICAgKiBAcGFyYW0gZXJyb3JcbiAgICAgKi9cbiAgICBnZXRXZWJDb25maWcoc3VjY2VzcywgZXJyb3IpIHtcbiAgICAgICAgaWYgKHRoaXMuZ2V0KCkpIHtcbiAgICAgICAgICAgIC8vIGlmIGFscmVhZHkgZmV0Y2hlZCwgcmV0dXJuIGl0XG4gICAgICAgICAgICB0cmlnZ2VyRm4oc3VjY2VzcywgdGhpcy5nZXQoKSk7XG4gICAgICAgICAgICByZXR1cm47XG4gICAgICAgIH1cbiAgICAgICAgdGhpcy5sb2FkKClcbiAgICAgICAgICAgIC50aGVuKGNvbmZpZyA9PiB7XG4gICAgICAgICAgICAgICAgdHJpZ2dlckZuKHN1Y2Nlc3MsIGNvbmZpZyk7XG4gICAgICAgICAgICB9LCBlcnJvcik7XG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogUmV0dXJucyBzZWN1cml0eSBjb25maWdcbiAgICAgKiBAcGFyYW0gc3VjY2Vzc0NhbGxiYWNrXG4gICAgICogQHBhcmFtIGZhaWx1cmVDYWxsYmFja1xuICAgICAqL1xuICAgIGdldENvbmZpZyhzdWNjZXNzQ2FsbGJhY2ssIGZhaWx1cmVDYWxsYmFjaykge1xuICAgICAgICBmdW5jdGlvbiBpbnZva2VRdWV1ZWRDYWxsYmFja3MoaWQsIG1ldGhvZCwgZGF0YSkge1xuICAgICAgICAgICAgZm9yRWFjaCh0aGlzLnJlcXVlc3RRdWV1ZVtpZF0sIGZuID0+IHRyaWdnZXJGbihmblttZXRob2RdLCBkYXRhKSk7XG4gICAgICAgICAgICB0aGlzLnJlcXVlc3RRdWV1ZVtpZF0gPSBudWxsO1xuICAgICAgICB9XG5cbiAgICAgICAgZnVuY3Rpb24gb25TdWNjZXNzKGNvbmZpZykge1xuICAgICAgICAgICAgY29uZmlnID0gY29uZmlnID8gY29uZmlnIDoge31cbiAgICAgICAgICAgIGNvbmZpZy5ob21lUGFnZSA9IGdldFdtUHJvamVjdFByb3BlcnRpZXMoKS5ob21lUGFnZTtcbiAgICAgICAgICAgIGlmIChjb25maWcudXNlckluZm8pIHtcbiAgICAgICAgICAgICAgICAvLyBCYWNrZW5kIHJldHVybnMgbGFuZGluZ1BhZ2UgaW5zdGVhZCBvZiBob21lUGFnZSwgaGVuY2UgdGhpcyBzdGF0ZW1lbnQoZm9yIGNvbnNpc3RlbmN5KVxuICAgICAgICAgICAgICAgIC8vIGNvbmZpZy51c2VySW5mby5ob21lUGFnZSA9IGNvbmZpZy51c2VySW5mby5sYW5kaW5nUGFnZTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIHRoaXMuY29uZmlnID0gY29uZmlnO1xuICAgICAgICAgICAgdGhpcy5sYXN0TG9nZ2VkSW5Vc2VyID0gZ2V0Q2xvbmVkT2JqZWN0KHRoaXMubG9nZ2VkSW5Vc2VyKTtcbiAgICAgICAgICAgIHRoaXMubG9nZ2VkSW5Vc2VyID0gY29uZmlnLnVzZXJJbmZvO1xuICAgICAgICAgICAgaW52b2tlUXVldWVkQ2FsbGJhY2tzLmNhbGwodGhpcywgJ2NvbmZpZycsICdzdWNjZXNzJywgdGhpcy5nZXQoKSk7XG4gICAgICAgIH1cblxuICAgICAgICBmdW5jdGlvbiBvbkVycm9yKGVycm9yKSB7XG4gICAgICAgICAgICAvKmlmICgkcm9vdFNjb3BlLmlzTW9iaWxlQXBwbGljYXRpb25UeXBlKSB7XG4gICAgICAgICAgICAgdGhpcy5jb25maWcgPSB7XG4gICAgICAgICAgICAgJ3NlY3VyaXR5RW5hYmxlZCc6IGZhbHNlLFxuICAgICAgICAgICAgICdhdXRoZW50aWNhdGVkJzogZmFsc2UsXG4gICAgICAgICAgICAgJ2hvbWVQYWdlJzogX1dNX0FQUF9QUk9QRVJUSUVTLmhvbWVQYWdlLFxuICAgICAgICAgICAgICd1c2VySW5mbyc6IG51bGwsXG4gICAgICAgICAgICAgJ2xvZ2luJzogbnVsbFxuICAgICAgICAgICAgIH07XG4gICAgICAgICAgICAgaW52b2tlUXVldWVkQ2FsbGJhY2tzKCdjb25maWcnLCAnc3VjY2VzcycsIHRoaXMuZ2V0KCkpO1xuICAgICAgICAgICAgIH0gZWxzZSB7Ki9cbiAgICAgICAgICAgIGludm9rZVF1ZXVlZENhbGxiYWNrcy5jYWxsKHRoaXMsICdjb25maWcnLCAnZXJyb3InLCBlcnJvcik7XG4gICAgICAgICAgICAvLyB9XG4gICAgICAgIH1cblxuICAgICAgICBpZiAodGhpcy5nZXQoKSkge1xuICAgICAgICAgICAgLy8gaWYgYWxyZWFkeSBmZXRjaGVkLCByZXR1cm4gaXRcbiAgICAgICAgICAgIHRyaWdnZXJGbihzdWNjZXNzQ2FsbGJhY2ssIHRoaXMuZ2V0KCkpO1xuICAgICAgICAgICAgcmV0dXJuO1xuICAgICAgICB9XG5cbiAgICAgICAgLy8gUXVldWUgY2hlY2ssIGlmIHNhbWUgcXVldWUgaXMgYWxyZWFkeSBpbiBwcm9ncmVzcywgZG8gbm90IHNlbmQgYW5vdGhlciByZXF1ZXN0XG4gICAgICAgIHRoaXMucmVxdWVzdFF1ZXVlLmNvbmZpZyA9IHRoaXMucmVxdWVzdFF1ZXVlLmNvbmZpZyB8fCBbXTtcbiAgICAgICAgdGhpcy5yZXF1ZXN0UXVldWUuY29uZmlnLnB1c2goe1xuICAgICAgICAgICAgc3VjY2Vzczogc3VjY2Vzc0NhbGxiYWNrLFxuICAgICAgICAgICAgZXJyb3I6IGZhaWx1cmVDYWxsYmFja1xuICAgICAgICB9KTtcbiAgICAgICAgaWYgKHRoaXMucmVxdWVzdFF1ZXVlLmNvbmZpZy5sZW5ndGggPiAxKSB7XG4gICAgICAgICAgICByZXR1cm47XG4gICAgICAgIH1cblxuICAgICAgICAgICAgLy8gZm9yIHdlYiBwcm9qZWN0LCByZXR1cm4gY29uZmlnIHJldHVybmVkIGZyb20gYmFja2VuZCBBUEkgY2FsbC5cbiAgICAgICAgICAgIHRoaXMuZ2V0V2ViQ29uZmlnKG9uU3VjY2Vzcy5iaW5kKHRoaXMpLCBvbkVycm9yLmJpbmQodGhpcykpO1xuICAgICAgICAvKiBlbHNlIHtcbiAgICAgICAgIC8hKlxuICAgICAgICAgKiBmb3IgbW9iaWxlIGFwcCwgZmlyc3QgZ2V0IHRoZSBtb2JpbGUgY29uZmlnIChzYXZlZCBpbiB0aGUgYXBrKVxuICAgICAgICAgKiAtIGlmIHNlY3VyaXR5IG5vdCBlbmFibGVkLCBqdXN0IHJldHVybiBtb2JpbGUgY29uZmlnIChubyBiYWNrZW5kIGNhbGwgcmVxdWlyZWQpXG4gICAgICAgICAqIC0gZWxzZSwgZ2V0IFdlYiBjb25maWcgKHdpbGwgYmUgIHRoZSBzYW1lIEFQSSBoaXQgZm9yIGxvZ2luKSBhbmQgbWVyZ2UgdGhlIGNvbmZpZyB3aXRoIF9tb2JpbGVjb25maWdcbiAgICAgICAgICohL1xuICAgICAgICAgZ2V0TW9iaWxlQ29uZmlnKGZ1bmN0aW9uIChtb2JpbGVjb25maWcpIHtcbiAgICAgICAgIGlmICghbW9iaWxlY29uZmlnLnNlY3VyaXR5RW5hYmxlZCkge1xuICAgICAgICAgb25TdWNjZXNzKG1vYmlsZWNvbmZpZyk7XG4gICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgZ2V0V2ViQ29uZmlnKGZ1bmN0aW9uIChjb25maWcpIHtcbiAgICAgICAgIGNvbmZpZyA9IG1lcmdlV2ViQW5kTW9iaWxlQ29uZmlnKGNvbmZpZyk7XG4gICAgICAgICBvblN1Y2Nlc3MoY29uZmlnKTtcbiAgICAgICAgIH0sIGZ1bmN0aW9uICgpIHtvblN1Y2Nlc3MobW9iaWxlY29uZmlnKTsgfSk7XG4gICAgICAgICB9XG4gICAgICAgICB9LCBvbkVycm9yKTtcbiAgICAgICAgIH0qL1xuICAgIH1cblxuICAgIGdldExhc3RMb2dnZWRJblVzZXJuYW1lKCkge1xuICAgICAgICByZXR1cm4gdGhpcy5sYXN0TG9nZ2VkSW5Vc2VyICYmIHRoaXMubGFzdExvZ2dlZEluVXNlci51c2VyTmFtZTtcbiAgICB9XG5cbiAgICAvKipcbiAgICAgKiBSZXR1cm5zIHRoZSBjdXJyZW50IHBhZ2UgbmFtZVxuICAgICAqIEByZXR1cm5zIHtzdHJpbmd9XG4gICAgICovXG4gICAgZ2V0Q3VycmVudFJvdXRlUGFnZSgpIHtcbiAgICAgICAgY29uc3QgcCA9IHRoaXMuX2xvY2F0aW9uLnBhdGgoKTtcbiAgICAgICAgbGV0IGxJbmRleCA9IHAuaW5kZXhPZignPycpO1xuICAgICAgICBsSW5kZXggPSBsSW5kZXggPT09IC0xID8gcC5sZW5ndGggOiBsSW5kZXggLSAxO1xuICAgICAgICByZXR1cm4gcC5zdWJzdHIoMSwgbEluZGV4KTsgLy8gaWdub3JlIHRoZSBxdWVyeSBwYXJhbXNcbiAgICB9XG5cbiAgICAvKipcbiAgICAgKiBSZXR1cm5zIFF1ZXJ5IHBhcmFtcyBmb3Igc3BlY2lmaWVkIHBhcmFtIG5hbWUgaW4gY3VycmVudCBSb3V0ZVxuICAgICAqIEBwYXJhbSBwYXJhbU5hbWUsIHRoZSBwYXJhbSBuYW1lIHdob3NlIHF1ZXJ5IHBhcmFtIHZhbHVlIGlzIHRvIGJlIHJldHJpZXZlZFxuICAgICAqIEByZXR1cm5zIHthbnl9XG4gICAgICovXG4gICAgZ2V0Q3VycmVudFJvdXRlUXVlcnlQYXJhbShwYXJhbU5hbWUpIHtcbiAgICAgICAgbGV0IHBhcmFtVmFsO1xuICAgICAgICB0aGlzLmFjdGl2YXRlZFJvdXRlLnF1ZXJ5UGFyYW1zLnN1YnNjcmliZShwYXJhbXMgPT4ge1xuICAgICAgICAgICAgcGFyYW1WYWwgPSBwYXJhbXNbcGFyYW1OYW1lXTtcbiAgICAgICAgfSk7XG4gICAgICAgIHJldHVybiBwYXJhbVZhbDtcbiAgICB9XG5cbiAgICBpc05vUGFnZUxvYWRlZCgpIHtcbiAgICAgICAgcmV0dXJuICFpc0VtcHR5KHRoaXMuZ2V0Q3VycmVudFJvdXRlUGFnZSgpKTtcbiAgICB9XG5cbiAgICBnZXRQYWdlQnlMb2dnZWRJblVzZXIoKSB7XG4gICAgICAgIGNvbnN0IHRoYXQgPSB0aGlzO1xuICAgICAgICByZXR1cm4gbmV3IFByb21pc2UoKHJlc29sdmUpID0+IHtcbiAgICAgICAgICAgIGxldCBwYWdlO1xuICAgICAgICAgICAgaWYgKCFpc0FwcGxpY2F0aW9uVHlwZSkge1xuICAgICAgICAgICAgICAgIGlmICh0aGF0LmlzTm9QYWdlTG9hZGVkKCkpIHtcbiAgICAgICAgICAgICAgICAgICAgcGFnZSA9IGdldFdtUHJvamVjdFByb3BlcnRpZXMoKS5ob21lUGFnZTtcbiAgICAgICAgICAgICAgICAgICAgcmVzb2x2ZShwYWdlKTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgICAgIHRoYXQuZ2V0Q29uZmlnKChjb25maWcpID0+IHtcbiAgICAgICAgICAgICAgICAgICAgaWYgKGNvbmZpZy5zZWN1cml0eUVuYWJsZWQgJiYgY29uZmlnLmF1dGhlbnRpY2F0ZWQpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIHBhZ2UgPSBjb25maWcudXNlckluZm8ubGFuZGluZ1BhZ2UgfHwgZ2V0V21Qcm9qZWN0UHJvcGVydGllcygpLmhvbWVQYWdlO1xuICAgICAgICAgICAgICAgICAgICAgICAgLy8gb3ZlcnJpZGUgdGhlIGRlZmF1bHQgeHNyZiBjb29raWUgbmFtZSBhbmQgeHNyZiBoZWFkZXIgbmFtZXMgd2l0aCBXYXZlTWFrZXIgc3BlY2lmaWMgdmFsdWVzXG4gICAgICAgICAgICAgICAgICAgICAgICBpZiAodGhhdC5pc1hzcmZFbmFibGVkKCkpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAvLyB0aGlzLiRodHRwLmRlZmF1bHRzLnhzcmZDb29raWVOYW1lID0gWFNSRl9DT09LSUU7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgLy8gdGhpcy4kaHR0cC5kZWZhdWx0cy54c3JmSGVhZGVyTmFtZSA9IGNvbmZpZy5jc3JmSGVhZGVyTmFtZTtcbiAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIHBhZ2UgPSBnZXRXbVByb2plY3RQcm9wZXJ0aWVzKCkuaG9tZVBhZ2U7XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgcmVzb2x2ZShwYWdlKTtcbiAgICAgICAgICAgICAgICB9LCBmdW5jdGlvbiAoKSB7XG4gICAgICAgICAgICAgICAgICAgIHJlc29sdmUoZ2V0V21Qcm9qZWN0UHJvcGVydGllcygpLmhvbWVQYWdlKTtcbiAgICAgICAgICAgICAgICB9KTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfSk7XG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogTG9hZHMgdGhlIEFwcCBwYWdlIGFzIGZvbGxvd3M6XG4gICAgICogU2VjdXJpdHkgZGlzYWJsZWQ6XG4gICAgICogICAgICAtIEhvbWUgcGFnZVxuICAgICAqIFNlY3VyaXR5IGVuYWJsZWQ6XG4gICAgICogICAgICAtIFVzZXIgaXMgbG9nZ2VkIGluLCByZXNwZWN0aXZlIGxhbmRpbmcgcGFnZSBpcyBsb2FkZWRcbiAgICAgKiAgICAgIC0gTm90IGxvZ2dlZCBpbjpcbiAgICAgKiAgICAgICAgICAtIEhvbWUgcGFnZSBpcyBwdWJsaWMsIGxvYWRzIHRoZSBob21lIHBhZ2VcbiAgICAgKiAgICAgICAgICAtIEhvbWUgcGFnZSBub3QgcHVibGljLCBMb2dpbiBwYWdlKGluIGNvbmZpZykgaXMgbG9hZGVkXG4gICAgICogQHBhcmFtIGZvcmNlUGFnZUxvYWRcbiAgICAgKiBAcmV0dXJucyB7UHJvbWlzZTxUPn1cbiAgICAgKi9cbiAgICBsb2FkUGFnZUJ5VXNlclJvbGUoZm9yY2VQYWdlTG9hZD8pIHtcbiAgICAgICAgY29uc3QgdGhhdCA9IHRoaXM7XG4gICAgICAgIHJldHVybiB0aGlzLmdldFBhZ2VCeUxvZ2dlZEluVXNlcigpLnRoZW4ocGFnZSA9PiB7XG4gICAgICAgICAgICBpZiAodGhhdC5pc05vUGFnZUxvYWRlZCgpIHx8IGZvcmNlUGFnZUxvYWQpIHtcbiAgICAgICAgICAgICAgICAvLyBSZWxvYWQgdGhlIHBhZ2Ugd2hlbiBjdXJyZW50IHBhZ2UgYW5kIHBvc3QgbG9naW4gbGFuZGluZyBwYWdlIGFyZSBzYW1lXG4gICAgICAgICAgICAgICAgaWYgKHRoYXQuZ2V0Q3VycmVudFJvdXRlUGFnZSgpID09PSBwYWdlKSB7XG4gICAgICAgICAgICAgICAgICAgICh3aW5kb3cubG9jYXRpb24gYXMgYW55KS5yZWxvYWQoKTtcbiAgICAgICAgICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgICAgICAgICB0aGF0LnJvdXRlclNlcnZpY2UubmF2aWdhdGUoW2AvJHtwYWdlfWBdKTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIH0pO1xuICAgIH1cblxuICAgIC8qKlxuICAgICAqIE5hdmlnYXRlcyB0byB0aGUgY3VycmVudCB1c2VyJ3MgaG9tZVBhZ2UgYmFzZWQgb24gdGhlIGNvbmZpZyBpbiBTZWN1cml0eVNlcnZpY2VcbiAgICAgKiBBc3N1bXB0aW9uIGlzIHRoZSBTZWN1cml0eVNlcnZpY2UgaXMgdXBkYXRlZCB3aXRoIHRoZSBsYXRlc3Qgc2VjdXJpdHkgY29uZmlnIGJlZm9yZSBtYWtpbmcgY2FsbCB0byB0aGlzIGZ1bmN0aW9uXG4gICAgICovXG4gICAgbmF2aWdhdGVPbkxvZ2luKCkge1xuICAgICAgICB0aGlzLmxvYWRQYWdlQnlVc2VyUm9sZSh0cnVlKTtcbiAgICB9XG5cbiAgICAvKipcbiAgICAgKiBHZXRzIHRoZSBwYWdlIHdoaWNoIG5lZWRzIHRvIGJlIHJlZGlyZWN0ZWQgdG8gb24gc3VjY2Vzc2Z1bCBsb2dpblxuICAgICAqIEBwYXJhbSBjb25maWcsXG4gICAgICogQHBhcmFtIHBhZ2UsIHBhZ2UgbmFtZSBmb3IgcmVkaXJlY3Rpb25cbiAgICAgKiBAcmV0dXJucyB7YW55fHN0cmluZ31cbiAgICAgKi9cbiAgICBnZXRSZWRpcmVjdFBhZ2UoY29uZmlnLCBwYWdlPykge1xuICAgICAgICBjb25zdCBob21lUGFnZSA9IGdldFdtUHJvamVjdFByb3BlcnRpZXMoKS5ob21lUGFnZSxcbiAgICAgICAgICAgIGxvZ2luUGFnZSA9IGdldChjb25maWcsICdsb2dpbkNvbmZpZy5wYWdlTmFtZScpO1xuICAgICAgICBsZXQgcHJldlJlZGlyZWN0UGFnZSxcbiAgICAgICAgICAgIHJlZGlyZWN0UGFnZSA9IHBhZ2UgfHwgdGhpcy5nZXRDdXJyZW50Um91dGVQYWdlKCk7XG5cbiAgICAgICAgLy8gaWYgdXNlciBpcyBhbHJlYWR5IG9uIEhvbWUgcGFnZSBvciBMb2dpbiBwYWdlLCB0aGV5IHNob3VsZCBub3QgYmUgcmVkaXJlY3RlZCB0byB0aGF0IHBhZ2UsIGhlbmNlIHJldHVybiB1bmRlZmluZWRcbiAgICAgICAgaWYgKHJlZGlyZWN0UGFnZSA9PT0gaG9tZVBhZ2UgfHwgcmVkaXJlY3RQYWdlID09PSBsb2dpblBhZ2UpIHtcbiAgICAgICAgICAgIC8qXG4gICAgICAgICAgICAgKiBmaW5kIHByZXZpb3VzIHJlZGlyZWN0IHBhZ2UgZnJvbSBVUkwsIGlmIGV4aXN0cywgdXNlciBzaG91bGQgcmVkaXJlY3QgdG8gdGhhdCBwYWdlLlxuICAgICAgICAgICAgICogVVNFIENBU0U6XG4gICAgICAgICAgICAgKiAgdXNlciBpcyBvbiBodHRwOi8vbG9jYWxob3N0OjgwODAvYXBwLyMvTG9naW4/cmVkaXJlY3RUbz1wYWdlXG4gICAgICAgICAgICAgKiAgYSB2YXJpYWJsZSBjYWxsIGZhaWxzIHJlc3VsdGluZyA0MDFcbiAgICAgICAgICAgICAqICBpbiB0aGlzIGNhc2UsIHJlZGlyZWN0VG8gcGFnZSBzaG91bGQgYmUgJ3BhZ2UnIGFuZCBub3QgdW5kZWZpbmVkXG4gICAgICAgICAgICAgKi9cbiAgICAgICAgICAgIHByZXZSZWRpcmVjdFBhZ2UgPSB0aGlzLmdldEN1cnJlbnRSb3V0ZVF1ZXJ5UGFyYW0oJ3JlZGlyZWN0VG8nKTtcbiAgICAgICAgICAgIHJlZGlyZWN0UGFnZSA9ICFpc0VtcHR5KHByZXZSZWRpcmVjdFBhZ2UpID8gcHJldlJlZGlyZWN0UGFnZSA6IHVuZGVmaW5lZDtcbiAgICAgICAgfVxuXG4gICAgICAgIHJldHVybiByZWRpcmVjdFBhZ2U7XG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogUmV0dXJucyBhbGwgdGhlIHF1ZXJ5IHBhcmFtcyhpbmNsdWRpbmcgcGFnZSBwYXJhbXMgYW5kIHJlZGlyZWN0IHRvIHBhcmFtcykgYXNzb2NpYXRlZCB3aXRoIHJlZGlyZWN0ZWQgcGFnZVxuICAgICAqL1xuICAgIGdldFJlZGlyZWN0ZWRSb3V0ZVF1ZXJ5UGFyYW1zKCkge1xuICAgICAgICBsZXQgcXVlcnlQYXJhbXMgPSB7fTtcbiAgICAgICAgdGhpcy5hY3RpdmF0ZWRSb3V0ZS5xdWVyeVBhcmFtcy5zdWJzY3JpYmUoKHBhcmFtVmFsKSA9PiB7XG4gICAgICAgICAgICBmb3JFYWNoKHBhcmFtVmFsLCAodmFsLCBrZXkpID0+IHtcbiAgICAgICAgICAgICAgICBxdWVyeVBhcmFtc1trZXldID0gdmFsO1xuICAgICAgICAgICAgfSk7XG4gICAgICAgIH0pO1xuICAgICAgICByZXR1cm4gcXVlcnlQYXJhbXM7XG4gICAgfVxuXG4gICAgLy8gYWNjZXB0cyBxdWVyeSBvYmplY3QgbGlrZSB7YToxLCBiOjJ9IGFuZCByZXR1cm5zIGE9MSZiPTIgc3RyaW5nXG4gICAgZ2V0UXVlcnlTdHJpbmcocXVlcnlPYmplY3QpIHtcbiAgICAgICAgY29uc3QgcGFyYW1zID0gW107XG4gICAgICAgIGZvckVhY2gocXVlcnlPYmplY3QsIGZ1bmN0aW9uICh2YWx1ZSwga2V5KSB7XG4gICAgICAgICAgICBwYXJhbXMucHVzaChrZXkgKyAnPScgKyB2YWx1ZSk7XG4gICAgICAgIH0pO1xuICAgICAgICByZXR1cm4gam9pbihwYXJhbXMsICcmJyk7XG4gICAgfVxuXG4gICAgYXBwTG9naW4ocGFyYW1zLCBzdWNjZXNzQ2FsbGJhY2ssIGZhaWx1cmVDYWxsYmFjaykge1xuICAgICAgICBsZXQgcGF5bG9hZCA9ICcnO1xuXG4gICAgICAgIC8vIGVuY29kZSBhbGwgcGFyYW1ldGVyc1xuICAgICAgICBlYWNoKHBhcmFtcywgZnVuY3Rpb24gKHZhbHVlLCBuYW1lKSB7XG4gICAgICAgICAgICBwYXlsb2FkICs9IChwYXlsb2FkID8gJyYnIDogJycpICsgZW5jb2RlVVJJQ29tcG9uZW50KG5hbWUpICsgJz0nICsgZW5jb2RlVVJJQ29tcG9uZW50KHZhbHVlKTtcbiAgICAgICAgfSk7XG5cbiAgICAgICAgcmV0dXJuIHRoaXMuJGh0dHAuc2VuZCh7XG4gICAgICAgICAgICBtZXRob2Q6ICdQT1NUJyxcbiAgICAgICAgICAgIGhlYWRlcnM6IHtcbiAgICAgICAgICAgICAgICAnQ29udGVudC1UeXBlJzogJ2FwcGxpY2F0aW9uL3gtd3d3LWZvcm0tdXJsZW5jb2RlZCdcbiAgICAgICAgICAgIH0sXG4gICAgICAgICAgICB1cmw6ICdqX3NwcmluZ19zZWN1cml0eV9jaGVjaycsXG4gICAgICAgICAgICAnZGF0YSc6IHBheWxvYWRcbiAgICAgICAgfSkudGhlbigocmVzcG9uc2UpID0+IHtcbiAgICAgICAgICAgIGNvbnN0IHhzcmZDb29raWVWYWx1ZSA9IHJlc3BvbnNlLmJvZHkgPyByZXNwb25zZS5ib2R5W1hTUkZfQ09PS0lFX05BTUVdIDogJyc7XG5cbiAgICAgICAgICAgIC8vIG92ZXJyaWRlIHRoZSBkZWZhdWx0IHhzcmYgY29va2llIG5hbWUgYW5kIHhzcmYgaGVhZGVyIG5hbWVzIHdpdGggV2F2ZU1ha2VyIHNwZWNpZmljIHZhbHVlc1xuICAgICAgICAgICAgaWYgKHhzcmZDb29raWVWYWx1ZSkge1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgLy8gQWZ0ZXIgdGhlIHN1Y2Nlc3NmdWwgbG9naW4gaW4gZGV2aWNlLCB0aGlzIGZ1bmN0aW9uIHRyaWdnZXJzIHRoZSBwZW5kaW5nIG9uTG9naW5DYWxsYmFja3MuXG4gICAgICAgICAgICB0aGlzLmluamVjdG9yLmdldChBcHApLm5vdGlmeSgndXNlckxvZ2dlZEluJywge30pO1xuICAgICAgICAgICAgdHJpZ2dlckZuKHN1Y2Nlc3NDYWxsYmFjaywgcmVzcG9uc2UpO1xuICAgICAgICB9LCBmYWlsdXJlQ2FsbGJhY2spO1xuICAgIH1cblxuICAgIC8qKlxuICAgICAqIFRoZSBBUEkgaXMgdXNlZCB0byBjaGVjayBpZiB0aGUgdXNlciBpcyBhdXRoZW50aWNhdGVkIGluIHRoZSBSVU4gbW9kZS5cbiAgICAgKlxuICAgICAqIEBwYXJhbSB7ZnVuY3Rpb259IHN1Y2Nlc3NDYWxsYmFjayB0byBiZSBjYWxsZWQgb24gc3VjY2Vzc1xuICAgICAqIEBwYXJhbSB7ZnVuY3Rpb259IGZhaWx1cmVDYWxsYmFjayB0byBiZSBjYWxsZWQgb24gZmFpbHVyZVxuICAgICAqL1xuICAgIGlzQXV0aGVudGljYXRlZChzdWNjZXNzQ2FsbGJhY2ssIGZhaWx1cmVDYWxsYmFjaykge1xuICAgICAgICB0aGlzLmdldENvbmZpZyhmdW5jdGlvbiAoY29uZmlnKSB7XG4gICAgICAgICAgICB0cmlnZ2VyRm4oc3VjY2Vzc0NhbGxiYWNrLCBjb25maWcuYXV0aGVudGljYXRlZCk7XG4gICAgICAgIH0sIGZhaWx1cmVDYWxsYmFjayk7XG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogVGhlIEFQSSBpcyB1c2VkIHRvIGxvZ291dCBvZiB0aGUgYXBwLlxuICAgICAqXG4gICAgICogQHBhcmFtIHtmdW5jdGlvbn0gc3VjY2Vzc0NhbGxiYWNrIHRvIGJlIGNhbGxlZCBvbiBzdWNjZXNzXG4gICAgICogQHBhcmFtIHtmdW5jdGlvbn0gZmFpbHVyZUNhbGxiYWNrIHRvIGJlIGNhbGxlZCBvbiBmYWlsdXJlXG4gICAgICovXG4gICAgYXBwTG9nb3V0KHN1Y2Nlc3NDYWxsYmFjaywgZmFpbHVyZUNhbGxiYWNrKSB7XG4gICAgICAgIHJldHVybiB0aGlzLiRodHRwLnNlbmQoe1xuICAgICAgICAgICAgdGFyZ2V0OiAnU2VjdXJpdHknLFxuICAgICAgICAgICAgdXJsOiAnal9zcHJpbmdfc2VjdXJpdHlfbG9nb3V0JyxcbiAgICAgICAgICAgIG1ldGhvZDogJ1BPU1QnLFxuICAgICAgICAgICAgcmVzcG9uc2VUeXBlOiAndGV4dCcsXG4gICAgICAgICAgICBieVBhc3NSZXN1bHQ6IHRydWVcbiAgICAgICAgfSkudGhlbigocmVzcG9uc2UpID0+IHtcbiAgICAgICAgICAgIHNldCh0aGlzLmdldCgpLCAnYXV0aGVudGljYXRlZCcsIGZhbHNlKTtcbiAgICAgICAgICAgIHNldCh0aGlzLmdldCgpLCAndXNlckluZm8nLCBudWxsKTtcbiAgICAgICAgICAgIHRoaXMuaW5qZWN0b3IuZ2V0KEFwcCkubm90aWZ5KCd1c2VyTG9nZ2VkT3V0Jywge30pO1xuICAgICAgICAgICAgdHJpZ2dlckZuKHN1Y2Nlc3NDYWxsYmFjaywgcmVzcG9uc2UpO1xuICAgICAgICB9LCBmYWlsdXJlQ2FsbGJhY2spO1xuICAgIH1cblxuICAgIC8qKlxuICAgICAqIENoZWNrcyBhbmQgcmV0dXJuIHRoZSBjb29raWVcbiAgICAgKiBAcGFyYW0gbmFtZSwgY29va2llIGtleVxuICAgICAqIEByZXR1cm5zIHtzdHJpbmd9XG4gICAgICovXG4gICAgZ2V0Q29va2llQnlOYW1lKG5hbWUpIHtcbiAgICAgICAgLy8gVG9kbzogU2h1YmhhbSBJbXBsZW1lbnQgY29va2llIG5hdGl2ZSBqc1xuICAgICAgICByZXR1cm4gJ2Nvb2tpZSc7XG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogVGhpcyBmdW5jdGlvbiByZXR1cm5zIHRoZSBjb29raWVWYWx1ZSBpZiB4c3JmIGlzIGVuYWJsZWQuXG4gICAgICogSW4gZGV2aWNlLCB4c3JmIGNvb2tpZSBpcyBzdG9yZWQgaW4gbG9jYWxTdG9yYWdlLlxuICAgICAqIEByZXR1cm5zIHhzcmYgY29va2llIHZhbHVlXG4gICAgICovXG4gICAgaXNYc3JmRW5hYmxlZCgpIHtcbiAgICAgICAgcmV0dXJuIHRoaXMuZ2V0Q29va2llQnlOYW1lKFhTUkZfQ09PS0lFX05BTUUpO1xuICAgIH1cblxuICAgIC8qKlxuICAgICAqIFRoaXMgZnVuY3Rpb24gcmV0dXJucyBhIHByb21pc2UuIFByb21pc2UgaXMgcmVzb2x2ZWQgd2hlbiBzZWN1cml0eSBpc1xuICAgICAqIDEuIGRpc2FibGVkXG4gICAgICogMi4gZW5hYmxlZCBhbmQgdXNlciBpcyBhdXRoZW50aWNhdGVkXG4gICAgICogMy4gZW5hYmxlZCBhbmQgdXNlciBpcyBub3QgYXV0aGVudGljYXRlZCwgdGhlbiBwcm9taXNlIGlzIHJlc29sdmVkIG9uIHVzZXIgbG9naW5cbiAgICAgKiBAcmV0dXJucyB7Kn0gcHJvbWlzZVxuICAgICAqL1xuICAgIHB1YmxpYyBvblVzZXJMb2dpbigpOiBQcm9taXNlPGFueT4ge1xuICAgICAgICByZXR1cm4gbmV3IFByb21pc2U8dm9pZD4oKHJlc29sdmUsIHJlamVjdCkgPT4ge1xuICAgICAgICAgICAgdGhpcy5nZXRDb25maWcoY29uZmlnID0+IHtcbiAgICAgICAgICAgICAgICBpZiAoY29uZmlnLnNlY3VyaXR5RW5hYmxlZCkge1xuICAgICAgICAgICAgICAgICAgICBpZiAoY29uZmlnLmF1dGhlbnRpY2F0ZWQpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIHJlc29sdmUoKTtcbiAgICAgICAgICAgICAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIGNvbnN0IHVuc3Vic2NyaWJlID0gdGhpcy5pbmplY3Rvci5nZXQoQXBwKS5zdWJzY3JpYmUoJ3VzZXJMb2dnZWRJbicsICgpID0+IHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICByZXNvbHZlKCk7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgdW5zdWJzY3JpYmUoKTtcbiAgICAgICAgICAgICAgICAgICAgICAgIH0pO1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgICAgICAgICAgcmVzb2x2ZSgpO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH0sIHJlamVjdCk7XG4gICAgICAgIH0pO1xuICAgIH1cblxuICAgIC8qKlxuICAgICAqIEByZXR1cm5zIGEgcHJvbWlzZSB0aGF0IGlzIHJlc29sdmVkIHdpdGggbG9nZ2VkLWluLXVzZXJcbiAgICAgKi9cbiAgICBnZXRMb2dnZWRJblVzZXIoKSB7XG4gICAgICAgIHJldHVybiBuZXcgUHJvbWlzZTxhbnk+KChyZXNvbHZlLCByZWplY3QpID0+IHtcbiAgICAgICAgICAgIHRoaXMuZ2V0Q29uZmlnKChjb25maWcpID0+IHtcbiAgICAgICAgICAgICAgICBpZiAoY29uZmlnICYmIGNvbmZpZy51c2VySW5mbykge1xuICAgICAgICAgICAgICAgICAgICByZXNvbHZlKGNvbmZpZy51c2VySW5mbyk7XG4gICAgICAgICAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgICAgICAgICAgcmVqZWN0KCk7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfSwgcmVqZWN0KTtcbiAgICAgICAgfSk7XG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogVGhpcyBpcyBmb3IgbW9iaWxlIGFwcHMgdG8gYXV0aGVudGljYXRlIHZpYSBicm93c2VyLlxuICAgICAqXG4gICAgICogQHJldHVybnMgYSBwcm9taXNlIHRoYXQgaXMgcmVzb2x2ZWQgYWZ0ZXIgbG9naW5cbiAgICAgKi9cbiAgICBhdXRoSW5Ccm93c2VyKCk6IFByb21pc2U8YW55PiB7XG4gICAgICAgIHJldHVybiBQcm9taXNlLnJlamVjdCgnVGhpcyBhdXRoSW5Ccm93c2VyIHNob3VsZCBub3QgYmUgY2FsbGVkJyk7XG4gICAgfVxufVxuIl19