@igo2/common 18.0.1-next.2 → 18.0.2

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 (312) hide show
  1. package/entity/src/entity-table/entity-table.theming.scss +1 -1
  2. package/esm2022/action/action.module.mjs +19 -0
  3. package/esm2022/action/actionbar/actionbar-item.component.mjs +192 -0
  4. package/esm2022/action/actionbar/actionbar.component.mjs +277 -0
  5. package/esm2022/action/actionbar/actionbar.module.mjs +19 -0
  6. package/esm2022/action/igo2-common-action.mjs +5 -0
  7. package/esm2022/action/public_api.mjs +5 -0
  8. package/esm2022/action/shared/action.enums.mjs +7 -0
  9. package/esm2022/action/shared/action.interfaces.mjs +2 -0
  10. package/esm2022/action/shared/index.mjs +4 -0
  11. package/esm2022/action/shared/store.mjs +8 -0
  12. package/esm2022/backdrop/backdrop.component.mjs +21 -0
  13. package/esm2022/backdrop/backdrop.module.mjs +25 -0
  14. package/esm2022/backdrop/igo2-common-backdrop.mjs +5 -0
  15. package/esm2022/backdrop/public_api.mjs +3 -0
  16. package/esm2022/badge/badge-icon.directive.mjs +149 -0
  17. package/esm2022/badge/badge-icon.module.mjs +25 -0
  18. package/esm2022/badge/igo2-common-badge.mjs +5 -0
  19. package/esm2022/badge/public_api.mjs +3 -0
  20. package/esm2022/clickout/clickout.directive.mjs +32 -0
  21. package/esm2022/clickout/clickout.module.mjs +25 -0
  22. package/esm2022/clickout/igo2-common-clickout.mjs +5 -0
  23. package/esm2022/clickout/public_api.mjs +3 -0
  24. package/esm2022/clone/clone.module.mjs +25 -0
  25. package/esm2022/clone/clone.pipe.mjs +25 -0
  26. package/esm2022/clone/igo2-common-clone.mjs +5 -0
  27. package/esm2022/clone/public_api.mjs +3 -0
  28. package/esm2022/collapsible/collapse.directive.mjs +57 -0
  29. package/esm2022/collapsible/collapsible.component.mjs +38 -0
  30. package/esm2022/collapsible/collapsible.module.mjs +26 -0
  31. package/esm2022/collapsible/igo2-common-collapsible.mjs +5 -0
  32. package/esm2022/collapsible/public_api.mjs +10 -0
  33. package/esm2022/color/color-picker-form-field/color-picker-form-field.component.mjs +104 -0
  34. package/esm2022/color/color-picker-form-field/color-picker-form-field.module.mjs +19 -0
  35. package/esm2022/color/color-picker-form-field/index.mjs +3 -0
  36. package/esm2022/color/igo2-common-color.mjs +5 -0
  37. package/esm2022/color/public_api.mjs +2 -0
  38. package/esm2022/confirm-dialog/confirm-dialog.component.mjs +31 -0
  39. package/esm2022/confirm-dialog/confirm-dialog.interface.mjs +2 -0
  40. package/esm2022/confirm-dialog/confirm-dialog.module.mjs +27 -0
  41. package/esm2022/confirm-dialog/confirm-dialog.service.mjs +35 -0
  42. package/esm2022/confirm-dialog/igo2-common-confirm-dialog.mjs +5 -0
  43. package/esm2022/confirm-dialog/public_api.mjs +5 -0
  44. package/esm2022/context-menu/context-menu.directive.mjs +109 -0
  45. package/esm2022/context-menu/context-menu.module.mjs +26 -0
  46. package/esm2022/context-menu/igo2-common-context-menu.mjs +5 -0
  47. package/esm2022/context-menu/long-press.directive.mjs +65 -0
  48. package/esm2022/context-menu/public_api.mjs +10 -0
  49. package/esm2022/custom-html/custom-html.component.mjs +21 -0
  50. package/esm2022/custom-html/custom-html.module.mjs +25 -0
  51. package/esm2022/custom-html/custom-html.pipe.mjs +23 -0
  52. package/esm2022/custom-html/igo2-common-custom-html.mjs +5 -0
  53. package/esm2022/custom-html/public_api.mjs +10 -0
  54. package/esm2022/dom/dom.interfaces.mjs +2 -0
  55. package/esm2022/dom/dom.module.mjs +27 -0
  56. package/esm2022/dom/dom.service.mjs +35 -0
  57. package/esm2022/dom/igo2-common-dom.mjs +5 -0
  58. package/esm2022/dom/public_api.mjs +4 -0
  59. package/esm2022/drag-drop/drag-drop.directive.mjs +82 -0
  60. package/esm2022/drag-drop/drag-drop.module.mjs +26 -0
  61. package/esm2022/drag-drop/igo2-common-drag-drop.mjs +5 -0
  62. package/esm2022/drag-drop/public_api.mjs +4 -0
  63. package/esm2022/drag-drop/tree-drag-drop/index.mjs +3 -0
  64. package/esm2022/drag-drop/tree-drag-drop/tree-drag-drop.directive.mjs +391 -0
  65. package/esm2022/drag-drop/tree-drag-drop/tree-drag-drop.interface.mjs +2 -0
  66. package/esm2022/dynamic-component/dynamic-component.module.mjs +19 -0
  67. package/esm2022/dynamic-component/dynamic-outlet/dynamic-outlet.component.mjs +129 -0
  68. package/esm2022/dynamic-component/dynamic-outlet/dynamic-outlet.module.mjs +19 -0
  69. package/esm2022/dynamic-component/igo2-common-dynamic-component.mjs +5 -0
  70. package/esm2022/dynamic-component/public_api.mjs +5 -0
  71. package/esm2022/dynamic-component/shared/dynamic-component.interfaces.mjs +2 -0
  72. package/esm2022/dynamic-component/shared/dynamic-component.mjs +183 -0
  73. package/esm2022/dynamic-component/shared/dynamic-component.service.mjs +30 -0
  74. package/esm2022/dynamic-component/shared/index.mjs +4 -0
  75. package/esm2022/entity/entity-selector/entity-selector.component.mjs +174 -0
  76. package/esm2022/entity/entity-selector/entity-selector.module.mjs +19 -0
  77. package/esm2022/entity/entity-selector/index.mjs +3 -0
  78. package/esm2022/entity/entity-table/entity-table-row.directive.mjs +138 -0
  79. package/esm2022/entity/entity-table/entity-table.component.mjs +883 -0
  80. package/esm2022/entity/entity-table/entity-table.module.mjs +19 -0
  81. package/esm2022/entity/entity-table/index.mjs +3 -0
  82. package/esm2022/entity/entity-table-paginator/entity-table-paginator.component.mjs +158 -0
  83. package/esm2022/entity/entity-table-paginator/entity-table-paginator.interface.mjs +2 -0
  84. package/esm2022/entity/entity-table-paginator/entity-table-paginator.module.mjs +19 -0
  85. package/esm2022/entity/entity-table-paginator/index.mjs +4 -0
  86. package/esm2022/entity/entity.module.mjs +30 -0
  87. package/esm2022/entity/igo2-common-entity.mjs +5 -0
  88. package/esm2022/entity/public_api.mjs +6 -0
  89. package/esm2022/entity/shared/entity.enums.mjs +28 -0
  90. package/esm2022/entity/shared/entity.interfaces.mjs +2 -0
  91. package/esm2022/entity/shared/entity.utils.mjs +73 -0
  92. package/esm2022/entity/shared/index.mjs +10 -0
  93. package/esm2022/entity/shared/state.mjs +194 -0
  94. package/esm2022/entity/shared/store.mjs +322 -0
  95. package/esm2022/entity/shared/strategies/filter-custom-function.mjs +80 -0
  96. package/esm2022/entity/shared/strategies/filter-selection.mjs +81 -0
  97. package/esm2022/entity/shared/strategies/index.mjs +4 -0
  98. package/esm2022/entity/shared/strategies/strategy.mjs +82 -0
  99. package/esm2022/entity/shared/transaction.mjs +329 -0
  100. package/esm2022/entity/shared/view.mjs +330 -0
  101. package/esm2022/entity/shared/watcher.mjs +135 -0
  102. package/esm2022/environment/environment.interface.mjs +2 -0
  103. package/esm2022/environment/igo2-common-environment.mjs +5 -0
  104. package/esm2022/environment/public_api.mjs +2 -0
  105. package/esm2022/flexible/flexible.component.mjs +137 -0
  106. package/esm2022/flexible/flexible.module.mjs +25 -0
  107. package/esm2022/flexible/flexible.type.mjs +2 -0
  108. package/esm2022/flexible/igo2-common-flexible.mjs +5 -0
  109. package/esm2022/flexible/public_api.mjs +4 -0
  110. package/esm2022/form/form/form.component.mjs +105 -0
  111. package/esm2022/form/form/form.module.mjs +19 -0
  112. package/esm2022/form/form/index.mjs +3 -0
  113. package/esm2022/form/form-dialog/form-dialog.component.mjs +94 -0
  114. package/esm2022/form/form-dialog/form-dialog.interface.mjs +2 -0
  115. package/esm2022/form/form-dialog/form-dialog.module.mjs +31 -0
  116. package/esm2022/form/form-dialog/form-dialog.service.mjs +30 -0
  117. package/esm2022/form/form-dialog/index.mjs +5 -0
  118. package/esm2022/form/form-field/form-field-select.component.mjs +117 -0
  119. package/esm2022/form/form-field/form-field-text.component.mjs +126 -0
  120. package/esm2022/form/form-field/form-field-textarea.component.mjs +95 -0
  121. package/esm2022/form/form-field/form-field.component.mjs +65 -0
  122. package/esm2022/form/form-field/form-field.directive.mjs +11 -0
  123. package/esm2022/form/form-field/form-field.module.mjs +23 -0
  124. package/esm2022/form/form-field/index.mjs +7 -0
  125. package/esm2022/form/form-group/form-group.component.mjs +81 -0
  126. package/esm2022/form/form-group/form-group.module.mjs +19 -0
  127. package/esm2022/form/form-group/index.mjs +3 -0
  128. package/esm2022/form/form.module.mjs +32 -0
  129. package/esm2022/form/igo2-common-form.mjs +5 -0
  130. package/esm2022/form/public_api.mjs +7 -0
  131. package/esm2022/form/shared/form-field-component.mjs +7 -0
  132. package/esm2022/form/shared/form-field.service.mjs +28 -0
  133. package/esm2022/form/shared/form.interfaces.mjs +2 -0
  134. package/esm2022/form/shared/form.service.mjs +82 -0
  135. package/esm2022/form/shared/form.utils.mjs +41 -0
  136. package/esm2022/form/shared/index.mjs +6 -0
  137. package/esm2022/home-button/home-button.component.mjs +25 -0
  138. package/esm2022/home-button/home-button.module.mjs +19 -0
  139. package/esm2022/home-button/igo2-common-home-button.mjs +5 -0
  140. package/esm2022/home-button/public_api.mjs +3 -0
  141. package/esm2022/icon/icon/icon.component.mjs +38 -0
  142. package/esm2022/icon/icon.provider.mjs +14 -0
  143. package/esm2022/icon/igo2-common-icon.mjs +5 -0
  144. package/esm2022/icon/public_api.mjs +4 -0
  145. package/esm2022/icon/shared/icon.interface.mjs +2 -0
  146. package/esm2022/icon/shared/icon.service.mjs +26 -0
  147. package/esm2022/icon/shared/icons.mjs +40 -0
  148. package/esm2022/icon/shared/index.mjs +4 -0
  149. package/esm2022/igo2-common.mjs +5 -0
  150. package/esm2022/image/igo2-common-image.mjs +5 -0
  151. package/esm2022/image/image-error.directive.mjs +35 -0
  152. package/esm2022/image/image.module.mjs +26 -0
  153. package/esm2022/image/public_api.mjs +7 -0
  154. package/esm2022/image/secure-image.pipe.mjs +66 -0
  155. package/esm2022/interactive-tour/igo2-common-interactive-tour.mjs +5 -0
  156. package/esm2022/interactive-tour/interactive-tour.component.mjs +131 -0
  157. package/esm2022/interactive-tour/interactive-tour.interface.mjs +2 -0
  158. package/esm2022/interactive-tour/interactive-tour.loader.mjs +49 -0
  159. package/esm2022/interactive-tour/interactive-tour.module.mjs +19 -0
  160. package/esm2022/interactive-tour/interactive-tour.service.mjs +303 -0
  161. package/esm2022/interactive-tour/public_api.mjs +6 -0
  162. package/esm2022/json-dialog/igo2-common-json-dialog.mjs +5 -0
  163. package/esm2022/json-dialog/json-dialog.component.mjs +38 -0
  164. package/esm2022/json-dialog/json-dialog.module.mjs +26 -0
  165. package/esm2022/json-dialog/json-dialog.service.mjs +26 -0
  166. package/esm2022/json-dialog/public_api.mjs +4 -0
  167. package/esm2022/keyvalue/igo2-common-keyvalue.mjs +5 -0
  168. package/esm2022/keyvalue/keyvalue.module.mjs +25 -0
  169. package/esm2022/keyvalue/keyvalue.pipe.mjs +19 -0
  170. package/esm2022/keyvalue/public_api.mjs +3 -0
  171. package/esm2022/list/igo2-common-list.mjs +5 -0
  172. package/esm2022/list/list-item.directive.mjs +166 -0
  173. package/esm2022/list/list.component.mjs +252 -0
  174. package/esm2022/list/list.module.mjs +26 -0
  175. package/esm2022/list/public_api.mjs +7 -0
  176. package/esm2022/panel/igo2-common-panel.mjs +5 -0
  177. package/esm2022/panel/panel.component.mjs +30 -0
  178. package/esm2022/panel/panel.module.mjs +19 -0
  179. package/esm2022/panel/public_api.mjs +3 -0
  180. package/esm2022/public_api.mjs +20 -0
  181. package/esm2022/select-value-dialog/igo2-common-select-value-dialog.mjs +5 -0
  182. package/esm2022/select-value-dialog/public_api.mjs +6 -0
  183. package/esm2022/select-value-dialog/select-value-check-radio-dialog.component.mjs +103 -0
  184. package/esm2022/select-value-dialog/select-value-dialog.enums.mjs +6 -0
  185. package/esm2022/select-value-dialog/select-value-dialog.interface.mjs +2 -0
  186. package/esm2022/select-value-dialog/select-value-dialog.module.mjs +27 -0
  187. package/esm2022/select-value-dialog/select-value-dialog.service.mjs +29 -0
  188. package/esm2022/sidenav/igo2-common-sidenav.mjs +5 -0
  189. package/esm2022/sidenav/public_api.mjs +3 -0
  190. package/esm2022/sidenav/sidenav-shim.directive.mjs +58 -0
  191. package/esm2022/sidenav/sidenav.module.mjs +25 -0
  192. package/esm2022/spinner/igo2-common-spinner.mjs +5 -0
  193. package/esm2022/spinner/public_api.mjs +4 -0
  194. package/esm2022/spinner/spinner-activity.directive.mjs +56 -0
  195. package/esm2022/spinner/spinner.component.mjs +29 -0
  196. package/esm2022/spinner/spinner.module.mjs +26 -0
  197. package/esm2022/stop-propagation/igo2-common-stop-propagation.mjs +5 -0
  198. package/esm2022/stop-propagation/public_api.mjs +10 -0
  199. package/esm2022/stop-propagation/stop-drop-propagation.directive.mjs +21 -0
  200. package/esm2022/stop-propagation/stop-propagation.directive.mjs +20 -0
  201. package/esm2022/stop-propagation/stop-propagation.module.mjs +26 -0
  202. package/esm2022/table/igo2-common-table.mjs +5 -0
  203. package/esm2022/table/public_api.mjs +7 -0
  204. package/esm2022/table/table-action-color.enum.mjs +7 -0
  205. package/esm2022/table/table-database.mjs +28 -0
  206. package/esm2022/table/table-datasource.mjs +66 -0
  207. package/esm2022/table/table-model.interface.mjs +2 -0
  208. package/esm2022/table/table.component.mjs +143 -0
  209. package/esm2022/table/table.module.mjs +25 -0
  210. package/esm2022/tool/igo2-common-tool.mjs +5 -0
  211. package/esm2022/tool/public_api.mjs +4 -0
  212. package/esm2022/tool/shared/index.mjs +6 -0
  213. package/esm2022/tool/shared/tool-component.mjs +9 -0
  214. package/esm2022/tool/shared/tool.interface.mjs +2 -0
  215. package/esm2022/tool/shared/tool.service.mjs +43 -0
  216. package/esm2022/tool/shared/toolbox.enums.mjs +2 -0
  217. package/esm2022/tool/shared/toolbox.mjs +192 -0
  218. package/esm2022/tool/tool.module.mjs +28 -0
  219. package/esm2022/tool/toolbox/index.mjs +3 -0
  220. package/esm2022/tool/toolbox/toolbox.animation.mjs +10 -0
  221. package/esm2022/tool/toolbox/toolbox.component.mjs +241 -0
  222. package/esm2022/tool/toolbox/toolbox.module.mjs +19 -0
  223. package/esm2022/widget/igo2-common-widget.mjs +5 -0
  224. package/esm2022/widget/public_api.mjs +4 -0
  225. package/esm2022/widget/shared/index.mjs +4 -0
  226. package/esm2022/widget/shared/widget.interfaces.mjs +2 -0
  227. package/esm2022/widget/shared/widget.mjs +4 -0
  228. package/esm2022/widget/shared/widget.service.mjs +22 -0
  229. package/esm2022/widget/widget-outlet/index.mjs +3 -0
  230. package/esm2022/widget/widget-outlet/widget-outlet.component.mjs +112 -0
  231. package/esm2022/widget/widget-outlet/widget-outlet.module.mjs +19 -0
  232. package/esm2022/widget/widget.module.mjs +22 -0
  233. package/esm2022/workspace/igo2-common-workspace.mjs +5 -0
  234. package/esm2022/workspace/public_api.mjs +5 -0
  235. package/esm2022/workspace/shared/index.mjs +4 -0
  236. package/esm2022/workspace/shared/store.mjs +37 -0
  237. package/esm2022/workspace/shared/workspace.interfaces.mjs +2 -0
  238. package/esm2022/workspace/shared/workspace.mjs +143 -0
  239. package/esm2022/workspace/workspace-selector/index.mjs +3 -0
  240. package/esm2022/workspace/workspace-selector/workspace-selector.component.mjs +51 -0
  241. package/esm2022/workspace/workspace-selector/workspace-selector.module.mjs +19 -0
  242. package/esm2022/workspace/workspace-widget-outlet/index.mjs +3 -0
  243. package/esm2022/workspace/workspace-widget-outlet/workspace-widget-outlet.component.mjs +73 -0
  244. package/esm2022/workspace/workspace-widget-outlet/workspace-widget-outlet.module.mjs +19 -0
  245. package/esm2022/workspace/workspace.module.mjs +27 -0
  246. package/fesm2022/igo2-common-action.mjs +16 -16
  247. package/fesm2022/igo2-common-action.mjs.map +1 -1
  248. package/fesm2022/igo2-common-backdrop.mjs +8 -8
  249. package/fesm2022/igo2-common-backdrop.mjs.map +1 -1
  250. package/fesm2022/igo2-common-badge.mjs +7 -7
  251. package/fesm2022/igo2-common-badge.mjs.map +1 -1
  252. package/fesm2022/igo2-common-clickout.mjs +7 -7
  253. package/fesm2022/igo2-common-clickout.mjs.map +1 -1
  254. package/fesm2022/igo2-common-clone.mjs +7 -7
  255. package/fesm2022/igo2-common-clone.mjs.map +1 -1
  256. package/fesm2022/igo2-common-collapsible.mjs +11 -11
  257. package/fesm2022/igo2-common-collapsible.mjs.map +1 -1
  258. package/fesm2022/igo2-common-color.mjs +9 -9
  259. package/fesm2022/igo2-common-color.mjs.map +1 -1
  260. package/fesm2022/igo2-common-confirm-dialog.mjs +11 -11
  261. package/fesm2022/igo2-common-confirm-dialog.mjs.map +1 -1
  262. package/fesm2022/igo2-common-context-menu.mjs +10 -10
  263. package/fesm2022/igo2-common-context-menu.mjs.map +1 -1
  264. package/fesm2022/igo2-common-custom-html.mjs +11 -11
  265. package/fesm2022/igo2-common-custom-html.mjs.map +1 -1
  266. package/fesm2022/igo2-common-dom.mjs +7 -7
  267. package/fesm2022/igo2-common-dom.mjs.map +1 -1
  268. package/fesm2022/igo2-common-drag-drop.mjs +10 -10
  269. package/fesm2022/igo2-common-drag-drop.mjs.map +1 -1
  270. package/fesm2022/igo2-common-dynamic-component.mjs +14 -14
  271. package/fesm2022/igo2-common-dynamic-component.mjs.map +1 -1
  272. package/fesm2022/igo2-common-entity.mjs +33 -33
  273. package/fesm2022/igo2-common-entity.mjs.map +1 -1
  274. package/fesm2022/igo2-common-flexible.mjs +7 -7
  275. package/fesm2022/igo2-common-flexible.mjs.map +1 -1
  276. package/fesm2022/igo2-common-form.mjs +57 -57
  277. package/fesm2022/igo2-common-form.mjs.map +1 -1
  278. package/fesm2022/igo2-common-home-button.mjs +8 -8
  279. package/fesm2022/igo2-common-home-button.mjs.map +1 -1
  280. package/fesm2022/igo2-common-icon.mjs +14 -13
  281. package/fesm2022/igo2-common-icon.mjs.map +1 -1
  282. package/fesm2022/igo2-common-image.mjs +10 -10
  283. package/fesm2022/igo2-common-image.mjs.map +1 -1
  284. package/fesm2022/igo2-common-interactive-tour.mjs +14 -14
  285. package/fesm2022/igo2-common-interactive-tour.mjs.map +1 -1
  286. package/fesm2022/igo2-common-json-dialog.mjs +11 -11
  287. package/fesm2022/igo2-common-json-dialog.mjs.map +1 -1
  288. package/fesm2022/igo2-common-keyvalue.mjs +7 -7
  289. package/fesm2022/igo2-common-keyvalue.mjs.map +1 -1
  290. package/fesm2022/igo2-common-list.mjs +11 -11
  291. package/fesm2022/igo2-common-list.mjs.map +1 -1
  292. package/fesm2022/igo2-common-panel.mjs +8 -8
  293. package/fesm2022/igo2-common-panel.mjs.map +1 -1
  294. package/fesm2022/igo2-common-select-value-dialog.mjs +11 -11
  295. package/fesm2022/igo2-common-select-value-dialog.mjs.map +1 -1
  296. package/fesm2022/igo2-common-sidenav.mjs +7 -7
  297. package/fesm2022/igo2-common-sidenav.mjs.map +1 -1
  298. package/fesm2022/igo2-common-spinner.mjs +11 -11
  299. package/fesm2022/igo2-common-spinner.mjs.map +1 -1
  300. package/fesm2022/igo2-common-stop-propagation.mjs +10 -10
  301. package/fesm2022/igo2-common-stop-propagation.mjs.map +1 -1
  302. package/fesm2022/igo2-common-table.mjs +8 -8
  303. package/fesm2022/igo2-common-table.mjs.map +1 -1
  304. package/fesm2022/igo2-common-tool.mjs +15 -15
  305. package/fesm2022/igo2-common-tool.mjs.map +1 -1
  306. package/fesm2022/igo2-common-widget.mjs +15 -15
  307. package/fesm2022/igo2-common-widget.mjs.map +1 -1
  308. package/fesm2022/igo2-common-workspace.mjs +20 -20
  309. package/fesm2022/igo2-common-workspace.mjs.map +1 -1
  310. package/package.json +76 -8
  311. package/src/style/style.scss +1 -1
  312. package/style/style.css +1 -4
@@ -0,0 +1,303 @@
1
+ import { Injectable } from '@angular/core';
2
+ import { ConfigService } from '@igo2/core/config';
3
+ import { LanguageService } from '@igo2/core/language';
4
+ import { MediaService } from '@igo2/core/media';
5
+ import { autoPlacement, offset } from '@floating-ui/dom';
6
+ import { ShepherdService } from 'angular-shepherd';
7
+ import { InteractiveTourLoader } from './interactive-tour.loader';
8
+ import * as i0 from "@angular/core";
9
+ import * as i1 from "@igo2/core/config";
10
+ import * as i2 from "@igo2/core/media";
11
+ import * as i3 from "@igo2/core/language";
12
+ import * as i4 from "./interactive-tour.loader";
13
+ import * as i5 from "angular-shepherd";
14
+ export class InteractiveTourService {
15
+ configService;
16
+ mediaService;
17
+ languageService;
18
+ interactiveTourLoader;
19
+ shepherdService;
20
+ previousStep;
21
+ nextIndex = 1;
22
+ constructor(configService, mediaService, languageService, interactiveTourLoader, shepherdService) {
23
+ this.configService = configService;
24
+ this.mediaService = mediaService;
25
+ this.languageService = languageService;
26
+ this.interactiveTourLoader = interactiveTourLoader;
27
+ this.shepherdService = shepherdService;
28
+ if (this.isAppHaveTour()) {
29
+ this.interactiveTourLoader.loadConfigTour();
30
+ }
31
+ }
32
+ isAppHaveTour() {
33
+ const haveTour = this.configService.getConfig('interactiveTour.activateInteractiveTour');
34
+ if (haveTour === undefined) {
35
+ return true;
36
+ }
37
+ else {
38
+ return haveTour;
39
+ }
40
+ }
41
+ isToolHaveTourConfig(toolName) {
42
+ const checkTourActiveOptions = this.interactiveTourLoader.getTourOptionData(toolName);
43
+ if (checkTourActiveOptions === undefined) {
44
+ return false;
45
+ }
46
+ else {
47
+ return true;
48
+ }
49
+ }
50
+ disabledTourButton(toolName) {
51
+ const stepConfig = this.interactiveTourLoader.getTourOptionData(toolName);
52
+ if (stepConfig?.conditions) {
53
+ for (const condition of stepConfig.conditions) {
54
+ if (document.querySelector(condition) === null) {
55
+ return true;
56
+ }
57
+ }
58
+ }
59
+ return false;
60
+ }
61
+ isMobile() {
62
+ return this.mediaService.isMobile();
63
+ }
64
+ isTourDisplayInMobile() {
65
+ const showInMobile = this.configService.getConfig('interactiveTour.tourInMobile');
66
+ return showInMobile === undefined ? true : showInMobile;
67
+ }
68
+ getButtons(buttonKind) {
69
+ if (buttonKind === 'noBackButton') {
70
+ return [
71
+ {
72
+ classes: 'shepherd-button-primary',
73
+ text: this.languageService.translate.instant('igo.common.interactiveTour.nextButton'),
74
+ type: 'next'
75
+ }
76
+ ];
77
+ }
78
+ if (buttonKind === 'first') {
79
+ return [
80
+ {
81
+ classes: 'shepherd-button-secondary',
82
+ text: this.languageService.translate.instant('igo.common.interactiveTour.exitButton'),
83
+ type: 'cancel'
84
+ },
85
+ {
86
+ classes: 'shepherd-button-primary',
87
+ text: this.languageService.translate.instant('igo.common.interactiveTour.nextButton'),
88
+ type: 'next'
89
+ }
90
+ ];
91
+ }
92
+ if (buttonKind === 'last') {
93
+ return [
94
+ {
95
+ classes: 'shepherd-button-secondary',
96
+ text: this.languageService.translate.instant('igo.common.interactiveTour.backButton'),
97
+ type: 'back'
98
+ },
99
+ {
100
+ classes: 'shepherd-button-primary',
101
+ text: this.languageService.translate.instant('igo.common.interactiveTour.exitButton'),
102
+ type: 'cancel'
103
+ }
104
+ ];
105
+ }
106
+ return [
107
+ {
108
+ classes: 'shepherd-button-secondary',
109
+ text: this.languageService.translate.instant('igo.common.interactiveTour.backButton'),
110
+ type: 'back'
111
+ },
112
+ {
113
+ classes: 'shepherd-button-primary',
114
+ text: this.languageService.translate.instant('igo.common.interactiveTour.nextButton'),
115
+ type: 'next'
116
+ }
117
+ ];
118
+ }
119
+ getAction(actionName) {
120
+ const action = {
121
+ click: 'click'
122
+ };
123
+ return action[actionName.toLowerCase()];
124
+ }
125
+ addProgress() {
126
+ const self = this;
127
+ let nbTry = 0;
128
+ const maxTry = 21;
129
+ const checkExist = setInterval(() => {
130
+ if (self.getCurrentStep()) {
131
+ if (self.getCurrentStep().options.attachTo.element &&
132
+ !document.querySelector(self.getCurrentStep().options.attachTo.element)) {
133
+ self.cancel();
134
+ clearInterval(checkExist);
135
+ return;
136
+ }
137
+ else {
138
+ const currentStepElement = self.getCurrentStep().getElement();
139
+ if (currentStepElement) {
140
+ const shepherdList = currentStepElement.querySelectorAll('.shepherd-content, .shepherd-text');
141
+ shepherdList.forEach((element) => {
142
+ element.classList.add('mat-typography');
143
+ });
144
+ }
145
+ const header = currentStepElement
146
+ ? currentStepElement.querySelector('.shepherd-header')
147
+ : undefined;
148
+ nbTry++;
149
+ if (header || nbTry > maxTry) {
150
+ clearInterval(checkExist);
151
+ }
152
+ if (header) {
153
+ const stepsArray = self.steps;
154
+ const progress = document.createElement('span');
155
+ progress.className = 'shepherd-progress';
156
+ progress.innerText = `${stepsArray.indexOf(self.getCurrentStep()) + 1}/${stepsArray.length}`;
157
+ header.insertBefore(progress, currentStepElement.querySelector('.shepherd-cancel-icon'));
158
+ }
159
+ }
160
+ }
161
+ }, 100);
162
+ }
163
+ checkNext(index, tour, service) {
164
+ if (tour.getCurrentStep()) {
165
+ if (tour.getCurrentStep().options.attachTo.element &&
166
+ document.querySelector(tour.getCurrentStep().options.attachTo.element)) {
167
+ tour.complete();
168
+ return;
169
+ }
170
+ if (index.index === tour.steps.length - 1) {
171
+ tour.complete();
172
+ return;
173
+ }
174
+ tour.steps.splice(index.index, 1);
175
+ const nextStep = tour.steps[index.index];
176
+ if (nextStep.options.attachTo.element &&
177
+ !document.querySelector(nextStep.options.attachTo.element)) {
178
+ service.checkNext(index, tour, service);
179
+ }
180
+ else {
181
+ tour._setupModal();
182
+ tour.show(nextStep.id);
183
+ }
184
+ }
185
+ }
186
+ executeAction(step, actionConfig) {
187
+ if (!actionConfig) {
188
+ return;
189
+ }
190
+ if (actionConfig.condition &&
191
+ ((actionConfig.condition.charAt(0) === '!' &&
192
+ document.querySelector(actionConfig.condition.slice(1))) ||
193
+ (actionConfig.condition.charAt(0) !== '!' &&
194
+ !document.querySelector(actionConfig.condition)))) {
195
+ return;
196
+ }
197
+ const element = document.querySelector(actionConfig.element || step.element);
198
+ const action = this.getAction(actionConfig.action);
199
+ if (element && action) {
200
+ element[action]();
201
+ }
202
+ }
203
+ executeActionPromise(step, actionConfig) {
204
+ return new Promise((resolve) => {
205
+ this.executeAction(step, actionConfig);
206
+ if (!actionConfig || !actionConfig.waitFor) {
207
+ resolve();
208
+ return;
209
+ }
210
+ let nbTry = 0;
211
+ const maxTry = actionConfig.maxWait ? actionConfig.maxWait / 100 : 20;
212
+ const checkExist = setInterval(() => {
213
+ nbTry++;
214
+ if (nbTry > maxTry || document.querySelector(actionConfig.waitFor)) {
215
+ clearInterval(checkExist);
216
+ resolve();
217
+ }
218
+ }, 100);
219
+ });
220
+ }
221
+ getShepherdSteps(tourConfig) {
222
+ const shepherdSteps = [];
223
+ let i = 0;
224
+ for (const step of tourConfig.steps) {
225
+ const position = step.position ?? tourConfig.position;
226
+ shepherdSteps.push({
227
+ attachTo: {
228
+ element: step.element,
229
+ on: position // PopperPlacement
230
+ },
231
+ floatingUIOptions: {
232
+ middleware: [
233
+ position === 'auto' && autoPlacement(),
234
+ offset({ mainAxis: 15 })
235
+ ].filter(Boolean)
236
+ },
237
+ beforeShowPromise: () => {
238
+ return Promise.all([
239
+ this.executeActionPromise(this.previousStep, this.previousStep ? this.previousStep.beforeChange : undefined),
240
+ this.executeActionPromise(step, step.beforeShow)
241
+ ]);
242
+ },
243
+ buttons: this.getButtons(i === 0
244
+ ? 'first'
245
+ : i + 1 === tourConfig.steps.length
246
+ ? 'last'
247
+ : tourConfig.steps[i].noBackButton
248
+ ? 'noBackButton'
249
+ : undefined),
250
+ classes: step.class,
251
+ highlightClass: step.highlightClass,
252
+ scrollTo: step.scrollToElement || tourConfig.scrollToElement || true,
253
+ canClickTarget: step.disableInteraction
254
+ ? !step.disableInteraction
255
+ : undefined,
256
+ title: this.languageService.translate.instant(step.title || tourConfig.title),
257
+ text: [this.languageService.translate.instant(step.text)],
258
+ when: {
259
+ show: () => {
260
+ this.executeAction(step, step.onShow);
261
+ },
262
+ hide: () => {
263
+ this.previousStep = step;
264
+ this.executeAction(step, step.onHide);
265
+ }
266
+ }
267
+ });
268
+ i++;
269
+ }
270
+ return shepherdSteps;
271
+ }
272
+ startTour(toolName) {
273
+ const stepConfig = this.interactiveTourLoader.getTourOptionData(toolName);
274
+ this.shepherdService.defaultStepOptions = {
275
+ classes: stepConfig.class,
276
+ highlightClass: stepConfig.highlightClass,
277
+ canClickTarget: stepConfig.disableInteraction
278
+ ? !stepConfig.disableInteraction
279
+ : true,
280
+ cancelIcon: {
281
+ enabled: true
282
+ }
283
+ };
284
+ const shepherdSteps = this.getShepherdSteps(stepConfig);
285
+ this.shepherdService.modal = true;
286
+ this.shepherdService.confirmCancel = false;
287
+ this.shepherdService.addSteps(shepherdSteps);
288
+ this.shepherdService.tourObject.on('show', this.addProgress);
289
+ this.shepherdService.tourObject.on('cancel', (index) => {
290
+ this.checkNext(index, this.shepherdService.tourObject, this);
291
+ });
292
+ this.shepherdService.start();
293
+ }
294
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: InteractiveTourService, deps: [{ token: i1.ConfigService }, { token: i2.MediaService }, { token: i3.LanguageService }, { token: i4.InteractiveTourLoader }, { token: i5.ShepherdService }], target: i0.ɵɵFactoryTarget.Injectable });
295
+ static ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: InteractiveTourService, providedIn: 'root' });
296
+ }
297
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: InteractiveTourService, decorators: [{
298
+ type: Injectable,
299
+ args: [{
300
+ providedIn: 'root'
301
+ }]
302
+ }], ctorParameters: () => [{ type: i1.ConfigService }, { type: i2.MediaService }, { type: i3.LanguageService }, { type: i4.InteractiveTourLoader }, { type: i5.ShepherdService }] });
303
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW50ZXJhY3RpdmUtdG91ci5zZXJ2aWNlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vcGFja2FnZXMvY29tbW9uL2ludGVyYWN0aXZlLXRvdXIvc3JjL2ludGVyYWN0aXZlLXRvdXIuc2VydmljZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBRTNDLE9BQU8sRUFBRSxhQUFhLEVBQUUsTUFBTSxtQkFBbUIsQ0FBQztBQUNsRCxPQUFPLEVBQUUsZUFBZSxFQUFFLE1BQU0scUJBQXFCLENBQUM7QUFDdEQsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLGtCQUFrQixDQUFDO0FBRWhELE9BQU8sRUFBRSxhQUFhLEVBQUUsTUFBTSxFQUFFLE1BQU0sa0JBQWtCLENBQUM7QUFDekQsT0FBTyxFQUFFLGVBQWUsRUFBRSxNQUFNLGtCQUFrQixDQUFDO0FBUW5ELE9BQU8sRUFBRSxxQkFBcUIsRUFBRSxNQUFNLDJCQUEyQixDQUFDOzs7Ozs7O0FBS2xFLE1BQU0sT0FBTyxzQkFBc0I7SUFLdkI7SUFDQTtJQUNBO0lBQ0E7SUFDQTtJQVJGLFlBQVksQ0FBc0I7SUFDbEMsU0FBUyxHQUFHLENBQUMsQ0FBQztJQUV0QixZQUNVLGFBQTRCLEVBQzVCLFlBQTBCLEVBQzFCLGVBQWdDLEVBQ2hDLHFCQUE0QyxFQUM1QyxlQUFnQztRQUpoQyxrQkFBYSxHQUFiLGFBQWEsQ0FBZTtRQUM1QixpQkFBWSxHQUFaLFlBQVksQ0FBYztRQUMxQixvQkFBZSxHQUFmLGVBQWUsQ0FBaUI7UUFDaEMsMEJBQXFCLEdBQXJCLHFCQUFxQixDQUF1QjtRQUM1QyxvQkFBZSxHQUFmLGVBQWUsQ0FBaUI7UUFFeEMsSUFBSSxJQUFJLENBQUMsYUFBYSxFQUFFLEVBQUUsQ0FBQztZQUN6QixJQUFJLENBQUMscUJBQXFCLENBQUMsY0FBYyxFQUFFLENBQUM7UUFDOUMsQ0FBQztJQUNILENBQUM7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LENBQUMsRUFBRSxDQUFDLE1BQU0sRUFBRSxJQUFJLENBQUMsV0FBVyxDQUFDLENBQUM7UUFDN0QsSUFBSSxDQUFDLGVBQWUsQ0FBQyxVQUFVLENBQUMsRUFBRSxDQUFDLFFBQVEsRUFBRSxDQUFDLEtBQUssRUFBRSxFQUFFO1lBQ3JELElBQUksQ0FBQyxTQUFTLENBQUMsS0FBSyxFQUFFLElBQUksQ0FBQyxlQUFlLENBQUMsVUFBVSxFQUFFLElBQUksQ0FBQyxDQUFDO1FBQy9ELENBQUMsQ0FBQyxDQUFDO1FBRUgsSUFBSSxDQUFDLGVBQWUsQ0FBQyxLQUFLLEVBQUUsQ0FBQztJQUMvQixDQUFDO3dHQW5XVSxzQkFBc0I7NEdBQXRCLHNCQUFzQixjQUZyQixNQUFNOzs0RkFFUCxzQkFBc0I7a0JBSGxDLFVBQVU7bUJBQUM7b0JBQ1YsVUFBVSxFQUFFLE1BQU07aUJBQ25CIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgSW5qZWN0YWJsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuXG5pbXBvcnQgeyBDb25maWdTZXJ2aWNlIH0gZnJvbSAnQGlnbzIvY29yZS9jb25maWcnO1xuaW1wb3J0IHsgTGFuZ3VhZ2VTZXJ2aWNlIH0gZnJvbSAnQGlnbzIvY29yZS9sYW5ndWFnZSc7XG5pbXBvcnQgeyBNZWRpYVNlcnZpY2UgfSBmcm9tICdAaWdvMi9jb3JlL21lZGlhJztcblxuaW1wb3J0IHsgYXV0b1BsYWNlbWVudCwgb2Zmc2V0IH0gZnJvbSAnQGZsb2F0aW5nLXVpL2RvbSc7XG5pbXBvcnQgeyBTaGVwaGVyZFNlcnZpY2UgfSBmcm9tICdhbmd1bGFyLXNoZXBoZXJkJztcbmltcG9ydCBTaGVwaGVyZCBmcm9tICdzaGVwaGVyZC5qcyc7XG5cbmltcG9ydCB7XG4gIEludGVyYWN0aXZlVG91ckFjdGlvbixcbiAgSW50ZXJhY3RpdmVUb3VyT3B0aW9ucyxcbiAgSW50ZXJhY3RpdmVUb3VyU3RlcFxufSBmcm9tICcuL2ludGVyYWN0aXZlLXRvdXIuaW50ZXJmYWNlJztcbmltcG9ydCB7IEludGVyYWN0aXZlVG91ckxvYWRlciB9IGZyb20gJy4vaW50ZXJhY3RpdmUtdG91ci5sb2FkZXInO1xuXG5ASW5qZWN0YWJsZSh7XG4gIHByb3ZpZGVkSW46ICdyb290J1xufSlcbmV4cG9ydCBjbGFzcyBJbnRlcmFjdGl2ZVRvdXJTZXJ2aWNlIHtcbiAgcHJpdmF0ZSBwcmV2aW91c1N0ZXA6IEludGVyYWN0aXZlVG91clN0ZXA7XG4gIHByaXZhdGUgbmV4dEluZGV4ID0gMTtcblxuICBjb25zdHJ1Y3RvcihcbiAgICBwcml2YXRlIGNvbmZpZ1NlcnZpY2U6IENvbmZpZ1NlcnZpY2UsXG4gICAgcHJpdmF0ZSBtZWRpYVNlcnZpY2U6IE1lZGlhU2VydmljZSxcbiAgICBwcml2YXRlIGxhbmd1YWdlU2VydmljZTogTGFuZ3VhZ2VTZXJ2aWNlLFxuICAgIHByaXZhdGUgaW50ZXJhY3RpdmVUb3VyTG9hZGVyOiBJbnRlcmFjdGl2ZVRvdXJMb2FkZXIsXG4gICAgcHJpdmF0ZSBzaGVwaGVyZFNlcnZpY2U6IFNoZXBoZXJkU2VydmljZVxuICApIHtcbiAgICBpZiAodGhpcy5pc0FwcEhhdmVUb3VyKCkpIHtcbiAgICAgIHRoaXMuaW50ZXJhY3RpdmVUb3VyTG9hZGVyLmxvYWRDb25maWdUb3VyKCk7XG4gICAgfVxuICB9XG5cbiAgcHVibGljIGlzQXBwSGF2ZVRvdXIoKSB7XG4gICAgY29uc3QgaGF2ZVRvdXIgPSB0aGlzLmNvbmZpZ1NlcnZpY2UuZ2V0Q29uZmlnKFxuICAgICAgJ2ludGVyYWN0aXZlVG91ci5hY3RpdmF0ZUludGVyYWN0aXZlVG91cidcbiAgICApO1xuICAgIGlmIChoYXZlVG91ciA9PT0gdW5kZWZpbmVkKSB7XG4gICAgICByZXR1cm4gdHJ1ZTtcbiAgICB9IGVsc2Uge1xuICAgICAgcmV0dXJuIGhhdmVUb3VyO1xuICAgIH1cbiAgfVxuXG4gIHB1YmxpYyBpc1Rvb2xIYXZlVG91ckNvbmZpZyh0b29sTmFtZTogc3RyaW5nKTogYm9vbGVhbiB7XG4gICAgY29uc3QgY2hlY2tUb3VyQWN0aXZlT3B0aW9ucyA9XG4gICAgICB0aGlzLmludGVyYWN0aXZlVG91ckxvYWRlci5nZXRUb3VyT3B0aW9uRGF0YSh0b29sTmFtZSk7XG4gICAgaWYgKGNoZWNrVG91ckFjdGl2ZU9wdGlvbnMgPT09IHVuZGVmaW5lZCkge1xuICAgICAgcmV0dXJuIGZhbHNlO1xuICAgIH0gZWxzZSB7XG4gICAgICByZXR1cm4gdHJ1ZTtcbiAgICB9XG4gIH1cblxuICBwdWJsaWMgZGlzYWJsZWRUb3VyQnV0dG9uKHRvb2xOYW1lOiBzdHJpbmcpOiBib29sZWFuIHtcbiAgICBjb25zdCBzdGVwQ29uZmlnOiBJbnRlcmFjdGl2ZVRvdXJPcHRpb25zID1cbiAgICAgIHRoaXMuaW50ZXJhY3RpdmVUb3VyTG9hZGVyLmdldFRvdXJPcHRpb25EYXRhKHRvb2xOYW1lKTtcblxuICAgIGlmIChzdGVwQ29uZmlnPy5jb25kaXRpb25zKSB7XG4gICAgICBmb3IgKGNvbnN0IGNvbmRpdGlvbiBvZiBzdGVwQ29uZmlnLmNvbmRpdGlvbnMpIHtcbiAgICAgICAgaWYgKGRvY3VtZW50LnF1ZXJ5U2VsZWN0b3IoY29uZGl0aW9uKSA9PT0gbnVsbCkge1xuICAgICAgICAgIHJldHVybiB0cnVlO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICAgIHJldHVybiBmYWxzZTtcbiAgfVxuXG4gIHB1YmxpYyBpc01vYmlsZSgpOiBib29sZWFuIHtcbiAgICByZXR1cm4gdGhpcy5tZWRpYVNlcnZpY2UuaXNNb2JpbGUoKTtcbiAgfVxuXG4gIHB1YmxpYyBpc1RvdXJEaXNwbGF5SW5Nb2JpbGUoKTogYm9vbGVhbiB7XG4gICAgY29uc3Qgc2hvd0luTW9iaWxlID0gdGhpcy5jb25maWdTZXJ2aWNlLmdldENvbmZpZyhcbiAgICAgICdpbnRlcmFjdGl2ZVRvdXIudG91ckluTW9iaWxlJ1xuICAgICk7XG5cbiAgICByZXR1cm4gc2hvd0luTW9iaWxlID09PSB1bmRlZmluZWQgPyB0cnVlIDogc2hvd0luTW9iaWxlO1xuICB9XG5cbiAgcHJpdmF0ZSBnZXRCdXR0b25zKGJ1dHRvbktpbmQ/OiAnZmlyc3QnIHwgJ2xhc3QnIHwgJ25vQmFja0J1dHRvbicpIHtcbiAgICBpZiAoYnV0dG9uS2luZCA9PT0gJ25vQmFja0J1dHRvbicpIHtcbiAgICAgIHJldHVybiBbXG4gICAgICAgIHtcbiAgICAgICAgICBjbGFzc2VzOiAnc2hlcGhlcmQtYnV0dG9uLXByaW1hcnknLFxuICAgICAgICAgIHRleHQ6IHRoaXMubGFuZ3VhZ2VTZXJ2aWNlLnRyYW5zbGF0ZS5pbnN0YW50KFxuICAgICAgICAgICAgJ2lnby5jb21tb24uaW50ZXJhY3RpdmVUb3VyLm5leHRCdXR0b24nXG4gICAgICAgICAgKSxcbiAgICAgICAgICB0eXBlOiAnbmV4dCdcbiAgICAgICAgfVxuICAgICAgXTtcbiAgICB9XG4gICAgaWYgKGJ1dHRvbktpbmQgPT09ICdmaXJzdCcpIHtcbiAgICAgIHJldHVybiBbXG4gICAgICAgIHtcbiAgICAgICAgICBjbGFzc2VzOiAnc2hlcGhlcmQtYnV0dG9uLXNlY29uZGFyeScsXG4gICAgICAgICAgdGV4dDogdGhpcy5sYW5ndWFnZVNlcnZpY2UudHJhbnNsYXRlLmluc3RhbnQoXG4gICAgICAgICAgICAnaWdvLmNvbW1vbi5pbnRlcmFjdGl2ZVRvdXIuZXhpdEJ1dHRvbidcbiAgICAgICAgICApLFxuICAgICAgICAgIHR5cGU6ICdjYW5jZWwnXG4gICAgICAgIH0sXG4gICAgICAgIHtcbiAgICAgICAgICBjbGFzc2VzOiAnc2hlcGhlcmQtYnV0dG9uLXByaW1hcnknLFxuICAgICAgICAgIHRleHQ6IHRoaXMubGFuZ3VhZ2VTZXJ2aWNlLnRyYW5zbGF0ZS5pbnN0YW50KFxuICAgICAgICAgICAgJ2lnby5jb21tb24uaW50ZXJhY3RpdmVUb3VyLm5leHRCdXR0b24nXG4gICAgICAgICAgKSxcbiAgICAgICAgICB0eXBlOiAnbmV4dCdcbiAgICAgICAgfVxuICAgICAgXTtcbiAgICB9XG5cbiAgICBpZiAoYnV0dG9uS2luZCA9PT0gJ2xhc3QnKSB7XG4gICAgICByZXR1cm4gW1xuICAgICAgICB7XG4gICAgICAgICAgY2xhc3NlczogJ3NoZXBoZXJkLWJ1dHRvbi1zZWNvbmRhcnknLFxuICAgICAgICAgIHRleHQ6IHRoaXMubGFuZ3VhZ2VTZXJ2aWNlLnRyYW5zbGF0ZS5pbnN0YW50KFxuICAgICAgICAgICAgJ2lnby5jb21tb24uaW50ZXJhY3RpdmVUb3VyLmJhY2tCdXR0b24nXG4gICAgICAgICAgKSxcbiAgICAgICAgICB0eXBlOiAnYmFjaydcbiAgICAgICAgfSxcbiAgICAgICAge1xuICAgICAgICAgIGNsYXNzZXM6ICdzaGVwaGVyZC1idXR0b24tcHJpbWFyeScsXG4gICAgICAgICAgdGV4dDogdGhpcy5sYW5ndWFnZVNlcnZpY2UudHJhbnNsYXRlLmluc3RhbnQoXG4gICAgICAgICAgICAnaWdvLmNvbW1vbi5pbnRlcmFjdGl2ZVRvdXIuZXhpdEJ1dHRvbidcbiAgICAgICAgICApLFxuICAgICAgICAgIHR5cGU6ICdjYW5jZWwnXG4gICAgICAgIH1cbiAgICAgIF07XG4gICAgfVxuXG4gICAgcmV0dXJuIFtcbiAgICAgIHtcbiAgICAgICAgY2xhc3NlczogJ3NoZXBoZXJkLWJ1dHRvbi1zZWNvbmRhcnknLFxuICAgICAgICB0ZXh0OiB0aGlzLmxhbmd1YWdlU2VydmljZS50cmFuc2xhdGUuaW5zdGFudChcbiAgICAgICAgICAnaWdvLmNvbW1vbi5pbnRlcmFjdGl2ZVRvdXIuYmFja0J1dHRvbidcbiAgICAgICAgKSxcbiAgICAgICAgdHlwZTogJ2JhY2snXG4gICAgICB9LFxuICAgICAge1xuICAgICAgICBjbGFzc2VzOiAnc2hlcGhlcmQtYnV0dG9uLXByaW1hcnknLFxuICAgICAgICB0ZXh0OiB0aGlzLmxhbmd1YWdlU2VydmljZS50cmFuc2xhdGUuaW5zdGFudChcbiAgICAgICAgICAnaWdvLmNvbW1vbi5pbnRlcmFjdGl2ZVRvdXIubmV4dEJ1dHRvbidcbiAgICAgICAgKSxcbiAgICAgICAgdHlwZTogJ25leHQnXG4gICAgICB9XG4gICAgXTtcbiAgfVxuXG4gIHByaXZhdGUgZ2V0QWN0aW9uKGFjdGlvbk5hbWU6IHN0cmluZykge1xuICAgIGNvbnN0IGFjdGlvbiA9IHtcbiAgICAgIGNsaWNrOiAnY2xpY2snXG4gICAgfTtcbiAgICByZXR1cm4gYWN0aW9uW2FjdGlvbk5hbWUudG9Mb3dlckNhc2UoKV07XG4gIH1cblxuICBwcml2YXRlIGFkZFByb2dyZXNzKCkge1xuICAgIGNvbnN0IHNlbGYgPSB0aGlzIGFzIGFueTtcbiAgICBsZXQgbmJUcnkgPSAwO1xuICAgIGNvbnN0IG1heFRyeSA9IDIxO1xuICAgIGNvbnN0IGNoZWNrRXhpc3QgPSBzZXRJbnRlcnZhbCgoKSA9PiB7XG4gICAgICBpZiAoc2VsZi5nZXRDdXJyZW50U3RlcCgpKSB7XG4gICAgICAgIGlmIChcbiAgICAgICAgICBzZWxmLmdldEN1cnJlbnRTdGVwKCkub3B0aW9ucy5hdHRhY2hUby5lbGVtZW50ICYmXG4gICAgICAgICAgIWRvY3VtZW50LnF1ZXJ5U2VsZWN0b3IoXG4gICAgICAgICAgICBzZWxmLmdldEN1cnJlbnRTdGVwKCkub3B0aW9ucy5hdHRhY2hUby5lbGVtZW50XG4gICAgICAgICAgKVxuICAgICAgICApIHtcbiAgICAgICAgICBzZWxmLmNhbmNlbCgpO1xuICAgICAgICAgIGNsZWFySW50ZXJ2YWwoY2hlY2tFeGlzdCk7XG4gICAgICAgICAgcmV0dXJuO1xuICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgIGNvbnN0IGN1cnJlbnRTdGVwRWxlbWVudCA9IHNlbGYuZ2V0Q3VycmVudFN0ZXAoKS5nZXRFbGVtZW50KCk7XG4gICAgICAgICAgaWYgKGN1cnJlbnRTdGVwRWxlbWVudCkge1xuICAgICAgICAgICAgY29uc3Qgc2hlcGhlcmRMaXN0ID0gY3VycmVudFN0ZXBFbGVtZW50LnF1ZXJ5U2VsZWN0b3JBbGwoXG4gICAgICAgICAgICAgICcuc2hlcGhlcmQtY29udGVudCwgLnNoZXBoZXJkLXRleHQnXG4gICAgICAgICAgICApO1xuICAgICAgICAgICAgc2hlcGhlcmRMaXN0LmZvckVhY2goKGVsZW1lbnQpID0+IHtcbiAgICAgICAgICAgICAgZWxlbWVudC5jbGFzc0xpc3QuYWRkKCdtYXQtdHlwb2dyYXBoeScpO1xuICAgICAgICAgICAgfSk7XG4gICAgICAgICAgfVxuICAgICAgICAgIGNvbnN0IGhlYWRlciA9IGN1cnJlbnRTdGVwRWxlbWVudFxuICAgICAgICAgICAgPyBjdXJyZW50U3RlcEVsZW1lbnQucXVlcnlTZWxlY3RvcignLnNoZXBoZXJkLWhlYWRlcicpXG4gICAgICAgICAgICA6IHVuZGVmaW5lZDtcblxuICAgICAgICAgIG5iVHJ5Kys7XG4gICAgICAgICAgaWYgKGhlYWRlciB8fCBuYlRyeSA+IG1heFRyeSkge1xuICAgICAgICAgICAgY2xlYXJJbnRlcnZhbChjaGVja0V4aXN0KTtcbiAgICAgICAgICB9XG5cbiAgICAgICAgICBpZiAoaGVhZGVyKSB7XG4gICAgICAgICAgICBjb25zdCBzdGVwc0FycmF5ID0gc2VsZi5zdGVwcztcbiAgICAgICAgICAgIGNvbnN0IHByb2dyZXNzID0gZG9jdW1lbnQuY3JlYXRlRWxlbWVudCgnc3BhbicpO1xuICAgICAgICAgICAgcHJvZ3Jlc3MuY2xhc3NOYW1lID0gJ3NoZXBoZXJkLXByb2dyZXNzJztcbiAgICAgICAgICAgIHByb2dyZXNzLmlubmVyVGV4dCA9IGAke1xuICAgICAgICAgICAgICBzdGVwc0FycmF5LmluZGV4T2Yoc2VsZi5nZXRDdXJyZW50U3RlcCgpKSArIDFcbiAgICAgICAgICAgIH0vJHtzdGVwc0FycmF5Lmxlbmd0aH1gO1xuICAgICAgICAgICAgaGVhZGVyLmluc2VydEJlZm9yZShcbiAgICAgICAgICAgICAgcHJvZ3Jlc3MsXG4gICAgICAgICAgICAgIGN1cnJlbnRTdGVwRWxlbWVudC5xdWVyeVNlbGVjdG9yKCcuc2hlcGhlcmQtY2FuY2VsLWljb24nKVxuICAgICAgICAgICAgKTtcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9LCAxMDApO1xuICB9XG5cbiAgcHJpdmF0ZSBjaGVja05leHQoaW5kZXgsIHRvdXIsIHNlcnZpY2UpIHtcbiAgICBpZiAodG91ci5nZXRDdXJyZW50U3RlcCgpKSB7XG4gICAgICBpZiAoXG4gICAgICAgIHRvdXIuZ2V0Q3VycmVudFN0ZXAoKS5vcHRpb25zLmF0dGFjaFRvLmVsZW1lbnQgJiZcbiAgICAgICAgZG9jdW1lbnQucXVlcnlTZWxlY3Rvcih0b3VyLmdldEN1cnJlbnRTdGVwKCkub3B0aW9ucy5hdHRhY2hUby5lbGVtZW50KVxuICAgICAgKSB7XG4gICAgICAgIHRvdXIuY29tcGxldGUoKTtcbiAgICAgICAgcmV0dXJuO1xuICAgICAgfVxuXG4gICAgICBpZiAoaW5kZXguaW5kZXggPT09IHRvdXIuc3RlcHMubGVuZ3RoIC0gMSkge1xuICAgICAgICB0b3VyLmNvbXBsZXRlKCk7XG4gICAgICAgIHJldHVybjtcbiAgICAgIH1cblxuICAgICAgdG91ci5zdGVwcy5zcGxpY2UoaW5kZXguaW5kZXgsIDEpO1xuICAgICAgY29uc3QgbmV4dFN0ZXAgPSB0b3VyLnN0ZXBzW2luZGV4LmluZGV4XTtcbiAgICAgIGlmIChcbiAgICAgICAgbmV4dFN0ZXAub3B0aW9ucy5hdHRhY2hUby5lbGVtZW50ICYmXG4gICAgICAgICFkb2N1bWVudC5xdWVyeVNlbGVjdG9yKG5leHRTdGVwLm9wdGlvbnMuYXR0YWNoVG8uZWxlbWVudClcbiAgICAgICkge1xuICAgICAgICBzZXJ2aWNlLmNoZWNrTmV4dChpbmRleCwgdG91ciwgc2VydmljZSk7XG4gICAgICB9IGVsc2Uge1xuICAgICAgICB0b3VyLl9zZXR1cE1vZGFsKCk7XG4gICAgICAgIHRvdXIuc2hvdyhuZXh0U3RlcC5pZCk7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgcHJpdmF0ZSBleGVjdXRlQWN0aW9uKFxuICAgIHN0ZXA6IEludGVyYWN0aXZlVG91clN0ZXAsXG4gICAgYWN0aW9uQ29uZmlnOiBJbnRlcmFjdGl2ZVRvdXJBY3Rpb25cbiAgKSB7XG4gICAgaWYgKCFhY3Rpb25Db25maWcpIHtcbiAgICAgIHJldHVybjtcbiAgICB9XG5cbiAgICBpZiAoXG4gICAgICBhY3Rpb25Db25maWcuY29uZGl0aW9uICYmXG4gICAgICAoKGFjdGlvbkNvbmZpZy5jb25kaXRpb24uY2hhckF0KDApID09PSAnIScgJiZcbiAgICAgICAgZG9jdW1lbnQucXVlcnlTZWxlY3RvcihhY3Rpb25Db25maWcuY29uZGl0aW9uLnNsaWNlKDEpKSkgfHxcbiAgICAgICAgKGFjdGlvbkNvbmZpZy5jb25kaXRpb24uY2hhckF0KDApICE9PSAnIScgJiZcbiAgICAgICAgICAhZG9jdW1lbnQucXVlcnlTZWxlY3RvcihhY3Rpb25Db25maWcuY29uZGl0aW9uKSkpXG4gICAgKSB7XG4gICAgICByZXR1cm47XG4gICAgfVxuXG4gICAgY29uc3QgZWxlbWVudDogSFRNTEVsZW1lbnQgPSBkb2N1bWVudC5xdWVyeVNlbGVjdG9yKFxuICAgICAgYWN0aW9uQ29uZmlnLmVsZW1lbnQgfHwgc3RlcC5lbGVtZW50XG4gICAgKSBhcyBIVE1MRWxlbWVudDtcbiAgICBjb25zdCBhY3Rpb24gPSB0aGlzLmdldEFjdGlvbihhY3Rpb25Db25maWcuYWN0aW9uKTtcbiAgICBpZiAoZWxlbWVudCAmJiBhY3Rpb24pIHtcbiAgICAgIGVsZW1lbnRbYWN0aW9uXSgpO1xuICAgIH1cbiAgfVxuXG4gIHByaXZhdGUgZXhlY3V0ZUFjdGlvblByb21pc2UoXG4gICAgc3RlcDogSW50ZXJhY3RpdmVUb3VyU3RlcCxcbiAgICBhY3Rpb25Db25maWc6IEludGVyYWN0aXZlVG91ckFjdGlvblxuICApIHtcbiAgICByZXR1cm4gbmV3IFByb21pc2U8dm9pZD4oKHJlc29sdmUpID0+IHtcbiAgICAgIHRoaXMuZXhlY3V0ZUFjdGlvbihzdGVwLCBhY3Rpb25Db25maWcpO1xuICAgICAgaWYgKCFhY3Rpb25Db25maWcgfHwgIWFjdGlvbkNvbmZpZy53YWl0Rm9yKSB7XG4gICAgICAgIHJlc29sdmUoKTtcbiAgICAgICAgcmV0dXJuO1xuICAgICAgfVxuICAgICAgbGV0IG5iVHJ5ID0gMDtcbiAgICAgIGNvbnN0IG1heFRyeSA9IGFjdGlvbkNvbmZpZy5tYXhXYWl0ID8gYWN0aW9uQ29uZmlnLm1heFdhaXQgLyAxMDAgOiAyMDtcbiAgICAgIGNvbnN0IGNoZWNrRXhpc3QgPSBzZXRJbnRlcnZhbCgoKSA9PiB7XG4gICAgICAgIG5iVHJ5Kys7XG4gICAgICAgIGlmIChuYlRyeSA+IG1heFRyeSB8fCBkb2N1bWVudC5xdWVyeVNlbGVjdG9yKGFjdGlvbkNvbmZpZy53YWl0Rm9yKSkge1xuICAgICAgICAgIGNsZWFySW50ZXJ2YWwoY2hlY2tFeGlzdCk7XG4gICAgICAgICAgcmVzb2x2ZSgpO1xuICAgICAgICB9XG4gICAgICB9LCAxMDApO1xuICAgIH0pO1xuICB9XG5cbiAgcHJpdmF0ZSBnZXRTaGVwaGVyZFN0ZXBzKHRvdXJDb25maWc6IEludGVyYWN0aXZlVG91ck9wdGlvbnMpIHtcbiAgICBjb25zdCBzaGVwaGVyZFN0ZXBzOiBTaGVwaGVyZC5TdGVwLlN0ZXBPcHRpb25zW10gPSBbXTtcblxuICAgIGxldCBpID0gMDtcbiAgICBmb3IgKGNvbnN0IHN0ZXAgb2YgdG91ckNvbmZpZy5zdGVwcykge1xuICAgICAgY29uc3QgcG9zaXRpb24gPSBzdGVwLnBvc2l0aW9uID8/IHRvdXJDb25maWcucG9zaXRpb247XG4gICAgICBzaGVwaGVyZFN0ZXBzLnB1c2goe1xuICAgICAgICBhdHRhY2hUbzoge1xuICAgICAgICAgIGVsZW1lbnQ6IHN0ZXAuZWxlbWVudCxcbiAgICAgICAgICBvbjogcG9zaXRpb24gYXMgYW55IC8vIFBvcHBlclBsYWNlbWVudFxuICAgICAgICB9LFxuICAgICAgICBmbG9hdGluZ1VJT3B0aW9uczoge1xuICAgICAgICAgIG1pZGRsZXdhcmU6IFtcbiAgICAgICAgICAgIHBvc2l0aW9uID09PSAnYXV0bycgJiYgYXV0b1BsYWNlbWVudCgpLFxuICAgICAgICAgICAgb2Zmc2V0KHsgbWFpbkF4aXM6IDE1IH0pXG4gICAgICAgICAgXS5maWx0ZXIoQm9vbGVhbilcbiAgICAgICAgfSxcbiAgICAgICAgYmVmb3JlU2hvd1Byb21pc2U6ICgpID0+IHtcbiAgICAgICAgICByZXR1cm4gUHJvbWlzZS5hbGwoW1xuICAgICAgICAgICAgdGhpcy5leGVjdXRlQWN0aW9uUHJvbWlzZShcbiAgICAgICAgICAgICAgdGhpcy5wcmV2aW91c1N0ZXAsXG4gICAgICAgICAgICAgIHRoaXMucHJldmlvdXNTdGVwID8gdGhpcy5wcmV2aW91c1N0ZXAuYmVmb3JlQ2hhbmdlIDogdW5kZWZpbmVkXG4gICAgICAgICAgICApLFxuICAgICAgICAgICAgdGhpcy5leGVjdXRlQWN0aW9uUHJvbWlzZShzdGVwLCBzdGVwLmJlZm9yZVNob3cpXG4gICAgICAgICAgXSk7XG4gICAgICAgIH0sXG4gICAgICAgIGJ1dHRvbnM6IHRoaXMuZ2V0QnV0dG9ucyhcbiAgICAgICAgICBpID09PSAwXG4gICAgICAgICAgICA/ICdmaXJzdCdcbiAgICAgICAgICAgIDogaSArIDEgPT09IHRvdXJDb25maWcuc3RlcHMubGVuZ3RoXG4gICAgICAgICAgICAgID8gJ2xhc3QnXG4gICAgICAgICAgICAgIDogdG91ckNvbmZpZy5zdGVwc1tpXS5ub0JhY2tCdXR0b25cbiAgICAgICAgICAgICAgICA/ICdub0JhY2tCdXR0b24nXG4gICAgICAgICAgICAgICAgOiB1bmRlZmluZWRcbiAgICAgICAgKSxcbiAgICAgICAgY2xhc3Nlczogc3RlcC5jbGFzcyxcbiAgICAgICAgaGlnaGxpZ2h0Q2xhc3M6IHN0ZXAuaGlnaGxpZ2h0Q2xhc3MsXG4gICAgICAgIHNjcm9sbFRvOiBzdGVwLnNjcm9sbFRvRWxlbWVudCB8fCB0b3VyQ29uZmlnLnNjcm9sbFRvRWxlbWVudCB8fCB0cnVlLFxuICAgICAgICBjYW5DbGlja1RhcmdldDogc3RlcC5kaXNhYmxlSW50ZXJhY3Rpb25cbiAgICAgICAgICA/ICFzdGVwLmRpc2FibGVJbnRlcmFjdGlvblxuICAgICAgICAgIDogdW5kZWZpbmVkLFxuICAgICAgICB0aXRsZTogdGhpcy5sYW5ndWFnZVNlcnZpY2UudHJhbnNsYXRlLmluc3RhbnQoXG4gICAgICAgICAgc3RlcC50aXRsZSB8fCB0b3VyQ29uZmlnLnRpdGxlXG4gICAgICAgICksXG4gICAgICAgIHRleHQ6IFt0aGlzLmxhbmd1YWdlU2VydmljZS50cmFuc2xhdGUuaW5zdGFudChzdGVwLnRleHQpXSxcbiAgICAgICAgd2hlbjoge1xuICAgICAgICAgIHNob3c6ICgpID0+IHtcbiAgICAgICAgICAgIHRoaXMuZXhlY3V0ZUFjdGlvbihzdGVwLCBzdGVwLm9uU2hvdyk7XG4gICAgICAgICAgfSxcbiAgICAgICAgICBoaWRlOiAoKSA9PiB7XG4gICAgICAgICAgICB0aGlzLnByZXZpb3VzU3RlcCA9IHN0ZXA7XG4gICAgICAgICAgICB0aGlzLmV4ZWN1dGVBY3Rpb24oc3RlcCwgc3RlcC5vbkhpZGUpO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfSBzYXRpc2ZpZXMgU2hlcGhlcmQuU3RlcC5TdGVwT3B0aW9ucyk7XG4gICAgICBpKys7XG4gICAgfVxuXG4gICAgcmV0dXJuIHNoZXBoZXJkU3RlcHM7XG4gIH1cblxuICBwdWJsaWMgc3RhcnRUb3VyKHRvb2xOYW1lOiBzdHJpbmcpIHtcbiAgICBjb25zdCBzdGVwQ29uZmlnOiBJbnRlcmFjdGl2ZVRvdXJPcHRpb25zID1cbiAgICAgIHRoaXMuaW50ZXJhY3RpdmVUb3VyTG9hZGVyLmdldFRvdXJPcHRpb25EYXRhKHRvb2xOYW1lKTtcblxuICAgIHRoaXMuc2hlcGhlcmRTZXJ2aWNlLmRlZmF1bHRTdGVwT3B0aW9ucyA9IHtcbiAgICAgIGNsYXNzZXM6IHN0ZXBDb25maWcuY2xhc3MsXG4gICAgICBoaWdobGlnaHRDbGFzczogc3RlcENvbmZpZy5oaWdobGlnaHRDbGFzcyxcbiAgICAgIGNhbkNsaWNrVGFyZ2V0OiBzdGVwQ29uZmlnLmRpc2FibGVJbnRlcmFjdGlvblxuICAgICAgICA/ICFzdGVwQ29uZmlnLmRpc2FibGVJbnRlcmFjdGlvblxuICAgICAgICA6IHRydWUsXG4gICAgICBjYW5jZWxJY29uOiB7XG4gICAgICAgIGVuYWJsZWQ6IHRydWVcbiAgICAgIH1cbiAgICB9O1xuXG4gICAgY29uc3Qgc2hlcGhlcmRTdGVwcyA9IHRoaXMuZ2V0U2hlcGhlcmRTdGVwcyhzdGVwQ29uZmlnKTtcblxuICAgIHRoaXMuc2hlcGhlcmRTZXJ2aWNlLm1vZGFsID0gdHJ1ZTtcbiAgICB0aGlzLnNoZXBoZXJkU2VydmljZS5jb25maXJtQ2FuY2VsID0gZmFsc2U7XG4gICAgdGhpcy5zaGVwaGVyZFNlcnZpY2UuYWRkU3RlcHMoc2hlcGhlcmRTdGVwcyk7XG5cbiAgICB0aGlzLnNoZXBoZXJkU2VydmljZS50b3VyT2JqZWN0Lm9uKCdzaG93JywgdGhpcy5hZGRQcm9ncmVzcyk7XG4gICAgdGhpcy5zaGVwaGVyZFNlcnZpY2UudG91ck9iamVjdC5vbignY2FuY2VsJywgKGluZGV4KSA9PiB7XG4gICAgICB0aGlzLmNoZWNrTmV4dChpbmRleCwgdGhpcy5zaGVwaGVyZFNlcnZpY2UudG91ck9iamVjdCwgdGhpcyk7XG4gICAgfSk7XG5cbiAgICB0aGlzLnNoZXBoZXJkU2VydmljZS5zdGFydCgpO1xuICB9XG59XG4iXX0=
@@ -0,0 +1,6 @@
1
+ export * from './interactive-tour.module';
2
+ export * from './interactive-tour.component';
3
+ export * from './interactive-tour.service';
4
+ export * from './interactive-tour.loader';
5
+ export * from './interactive-tour.interface';
6
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHVibGljX2FwaS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3BhY2thZ2VzL2NvbW1vbi9pbnRlcmFjdGl2ZS10b3VyL3NyYy9wdWJsaWNfYXBpLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLGNBQWMsMkJBQTJCLENBQUM7QUFDMUMsY0FBYyw4QkFBOEIsQ0FBQztBQUM3QyxjQUFjLDRCQUE0QixDQUFDO0FBQzNDLGNBQWMsMkJBQTJCLENBQUM7QUFDMUMsY0FBYyw4QkFBOEIsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImV4cG9ydCAqIGZyb20gJy4vaW50ZXJhY3RpdmUtdG91ci5tb2R1bGUnO1xuZXhwb3J0ICogZnJvbSAnLi9pbnRlcmFjdGl2ZS10b3VyLmNvbXBvbmVudCc7XG5leHBvcnQgKiBmcm9tICcuL2ludGVyYWN0aXZlLXRvdXIuc2VydmljZSc7XG5leHBvcnQgKiBmcm9tICcuL2ludGVyYWN0aXZlLXRvdXIubG9hZGVyJztcbmV4cG9ydCAqIGZyb20gJy4vaW50ZXJhY3RpdmUtdG91ci5pbnRlcmZhY2UnO1xuIl19
@@ -0,0 +1,5 @@
1
+ /**
2
+ * Generated bundle index. Do not edit.
3
+ */
4
+ export * from './public_api';
5
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaWdvMi1jb21tb24tanNvbi1kaWFsb2cuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9wYWNrYWdlcy9jb21tb24vanNvbi1kaWFsb2cvc3JjL2lnbzItY29tbW9uLWpzb24tZGlhbG9nLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBOztHQUVHO0FBRUgsY0FBYyxjQUFjLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyIvKipcbiAqIEdlbmVyYXRlZCBidW5kbGUgaW5kZXguIERvIG5vdCBlZGl0LlxuICovXG5cbmV4cG9ydCAqIGZyb20gJy4vcHVibGljX2FwaSc7XG4iXX0=
@@ -0,0 +1,38 @@
1
+ import { KeyValuePipe, NgFor, NgIf, NgTemplateOutlet } from '@angular/common';
2
+ import { Component } from '@angular/core';
3
+ import { MatButtonModule } from '@angular/material/button';
4
+ import { MatDialogActions, MatDialogContent, MatDialogRef, MatDialogTitle } from '@angular/material/dialog';
5
+ import * as i0 from "@angular/core";
6
+ import * as i1 from "@angular/material/dialog";
7
+ import * as i2 from "@angular/material/button";
8
+ export class JsonDialogComponent {
9
+ dialogRef;
10
+ title;
11
+ data;
12
+ ignoreKeys;
13
+ constructor(dialogRef) {
14
+ this.dialogRef = dialogRef;
15
+ }
16
+ isObject(val) {
17
+ return typeof val === 'object' && !Array.isArray(val);
18
+ }
19
+ getKey(baseKey, key) {
20
+ return (baseKey ? baseKey + '.' : '') + key;
21
+ }
22
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: JsonDialogComponent, deps: [{ token: i1.MatDialogRef }], target: i0.ɵɵFactoryTarget.Component });
23
+ static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.13", type: JsonDialogComponent, isStandalone: true, selector: "igo-json-dialog", ngImport: i0, template: "<h1 mat-dialog-title class=\"mat-typography\">{{ title }}</h1>\n\n<div mat-dialog-content class=\"mat-typography\">\n <ng-container\n *ngTemplateOutlet=\"loopObject; context: { obj: data }\"\n ></ng-container>\n\n <ng-template #loopObject let-obj=\"obj\" let-baseKey=\"baseKey\">\n <ng-container *ngFor=\"let property of obj | keyvalue\">\n <ng-container\n *ngIf=\"ignoreKeys.indexOf(getKey(baseKey, property.key)) === -1\"\n >\n <ng-container *ngIf=\"isObject(property.value); else notObject\">\n <ng-container\n *ngTemplateOutlet=\"\n loopObject;\n context: {\n obj: property.value,\n baseKey: getKey(baseKey, property.key)\n }\n \"\n ></ng-container>\n </ng-container>\n\n <ng-template #notObject>\n <p>\n <span\n ><b>{{ getKey(baseKey, property.key) }}</b> : </span\n ><span class=\"propertyValue\" [innerHtml]=\"property.value\"></span>\n </p>\n </ng-template>\n </ng-container>\n </ng-container>\n </ng-template>\n</div>\n\n<div mat-dialog-actions>\n <button mat-button color=\"primary\" (click)=\"dialogRef.close(false)\">\n OK\n </button>\n</div>\n", dependencies: [{ kind: "directive", type: MatDialogTitle, selector: "[mat-dialog-title], [matDialogTitle]", inputs: ["id"], exportAs: ["matDialogTitle"] }, { kind: "directive", type: MatDialogContent, selector: "[mat-dialog-content], mat-dialog-content, [matDialogContent]" }, { kind: "directive", type: NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "directive", type: NgFor, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: MatDialogActions, selector: "[mat-dialog-actions], mat-dialog-actions, [matDialogActions]", inputs: ["align"] }, { kind: "ngmodule", type: MatButtonModule }, { kind: "component", type: i2.MatButton, selector: " button[mat-button], button[mat-raised-button], button[mat-flat-button], button[mat-stroked-button] ", exportAs: ["matButton"] }, { kind: "pipe", type: KeyValuePipe, name: "keyvalue" }] });
24
+ }
25
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: JsonDialogComponent, decorators: [{
26
+ type: Component,
27
+ args: [{ selector: 'igo-json-dialog', standalone: true, imports: [
28
+ MatDialogTitle,
29
+ MatDialogContent,
30
+ NgTemplateOutlet,
31
+ NgFor,
32
+ NgIf,
33
+ MatDialogActions,
34
+ MatButtonModule,
35
+ KeyValuePipe
36
+ ], template: "<h1 mat-dialog-title class=\"mat-typography\">{{ title }}</h1>\n\n<div mat-dialog-content class=\"mat-typography\">\n <ng-container\n *ngTemplateOutlet=\"loopObject; context: { obj: data }\"\n ></ng-container>\n\n <ng-template #loopObject let-obj=\"obj\" let-baseKey=\"baseKey\">\n <ng-container *ngFor=\"let property of obj | keyvalue\">\n <ng-container\n *ngIf=\"ignoreKeys.indexOf(getKey(baseKey, property.key)) === -1\"\n >\n <ng-container *ngIf=\"isObject(property.value); else notObject\">\n <ng-container\n *ngTemplateOutlet=\"\n loopObject;\n context: {\n obj: property.value,\n baseKey: getKey(baseKey, property.key)\n }\n \"\n ></ng-container>\n </ng-container>\n\n <ng-template #notObject>\n <p>\n <span\n ><b>{{ getKey(baseKey, property.key) }}</b> : </span\n ><span class=\"propertyValue\" [innerHtml]=\"property.value\"></span>\n </p>\n </ng-template>\n </ng-container>\n </ng-container>\n </ng-template>\n</div>\n\n<div mat-dialog-actions>\n <button mat-button color=\"primary\" (click)=\"dialogRef.close(false)\">\n OK\n </button>\n</div>\n" }]
37
+ }], ctorParameters: () => [{ type: i1.MatDialogRef }] });
38
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoianNvbi1kaWFsb2cuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vcGFja2FnZXMvY29tbW9uL2pzb24tZGlhbG9nL3NyYy9qc29uLWRpYWxvZy5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi9wYWNrYWdlcy9jb21tb24vanNvbi1kaWFsb2cvc3JjL2pzb24tZGlhbG9nLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxZQUFZLEVBQUUsS0FBSyxFQUFFLElBQUksRUFBRSxnQkFBZ0IsRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBQzlFLE9BQU8sRUFBRSxTQUFTLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDMUMsT0FBTyxFQUFFLGVBQWUsRUFBRSxNQUFNLDBCQUEwQixDQUFDO0FBQzNELE9BQU8sRUFDTCxnQkFBZ0IsRUFDaEIsZ0JBQWdCLEVBQ2hCLFlBQVksRUFDWixjQUFjLEVBQ2YsTUFBTSwwQkFBMEIsQ0FBQzs7OztBQWlCbEMsTUFBTSxPQUFPLG1CQUFtQjtJQUtYO0lBSlosS0FBSyxDQUFTO0lBQ2QsSUFBSSxDQUFNO0lBQ1YsVUFBVSxDQUFXO0lBRTVCLFlBQW1CLFNBQTRDO1FBQTVDLGNBQVMsR0FBVCxTQUFTLENBQW1DO0lBQUcsQ0FBQztJQUVuRSxRQUFRLENBQUMsR0FBRztRQUNWLE9BQU8sT0FBTyxHQUFHLEtBQUssUUFBUSxJQUFJLENBQUMsS0FBSyxDQUFDLE9BQU8sQ0FBQyxHQUFHLENBQUMsQ0FBQztJQUN4RCxDQUFDO0lBRUQsTUFBTSxDQUFDLE9BQU8sRUFBRSxHQUFHO1FBQ2pCLE9BQU8sQ0FBQyxPQUFPLENBQUMsQ0FBQyxDQUFDLE9BQU8sR0FBRyxHQUFHLENBQUMsQ0FBQyxDQUFDLEVBQUUsQ0FBQyxHQUFHLEdBQUcsQ0FBQztJQUM5QyxDQUFDO3dHQWJVLG1CQUFtQjs0RkFBbkIsbUJBQW1CLDJFQ3pCaEMsd3dDQXlDQSw0Q0QxQkksY0FBYywrSEFDZCxnQkFBZ0IseUdBQ2hCLGdCQUFnQixvSkFDaEIsS0FBSyxtSEFDTCxJQUFJLDZGQUNKLGdCQUFnQiwySEFDaEIsZUFBZSx1TkFDZixZQUFZOzs0RkFHSCxtQkFBbUI7a0JBZi9CLFNBQVM7K0JBQ0UsaUJBQWlCLGNBRWYsSUFBSSxXQUNQO3dCQUNQLGNBQWM7d0JBQ2QsZ0JBQWdCO3dCQUNoQixnQkFBZ0I7d0JBQ2hCLEtBQUs7d0JBQ0wsSUFBSTt3QkFDSixnQkFBZ0I7d0JBQ2hCLGVBQWU7d0JBQ2YsWUFBWTtxQkFDYiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEtleVZhbHVlUGlwZSwgTmdGb3IsIE5nSWYsIE5nVGVtcGxhdGVPdXRsZXQgfSBmcm9tICdAYW5ndWxhci9jb21tb24nO1xuaW1wb3J0IHsgQ29tcG9uZW50IH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBNYXRCdXR0b25Nb2R1bGUgfSBmcm9tICdAYW5ndWxhci9tYXRlcmlhbC9idXR0b24nO1xuaW1wb3J0IHtcbiAgTWF0RGlhbG9nQWN0aW9ucyxcbiAgTWF0RGlhbG9nQ29udGVudCxcbiAgTWF0RGlhbG9nUmVmLFxuICBNYXREaWFsb2dUaXRsZVxufSBmcm9tICdAYW5ndWxhci9tYXRlcmlhbC9kaWFsb2cnO1xuXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdpZ28tanNvbi1kaWFsb2cnLFxuICB0ZW1wbGF0ZVVybDogJy4vanNvbi1kaWFsb2cuY29tcG9uZW50Lmh0bWwnLFxuICBzdGFuZGFsb25lOiB0cnVlLFxuICBpbXBvcnRzOiBbXG4gICAgTWF0RGlhbG9nVGl0bGUsXG4gICAgTWF0RGlhbG9nQ29udGVudCxcbiAgICBOZ1RlbXBsYXRlT3V0bGV0LFxuICAgIE5nRm9yLFxuICAgIE5nSWYsXG4gICAgTWF0RGlhbG9nQWN0aW9ucyxcbiAgICBNYXRCdXR0b25Nb2R1bGUsXG4gICAgS2V5VmFsdWVQaXBlXG4gIF1cbn0pXG5leHBvcnQgY2xhc3MgSnNvbkRpYWxvZ0NvbXBvbmVudCB7XG4gIHB1YmxpYyB0aXRsZTogc3RyaW5nO1xuICBwdWJsaWMgZGF0YTogYW55O1xuICBwdWJsaWMgaWdub3JlS2V5czogc3RyaW5nW107XG5cbiAgY29uc3RydWN0b3IocHVibGljIGRpYWxvZ1JlZjogTWF0RGlhbG9nUmVmPEpzb25EaWFsb2dDb21wb25lbnQ+KSB7fVxuXG4gIGlzT2JqZWN0KHZhbCkge1xuICAgIHJldHVybiB0eXBlb2YgdmFsID09PSAnb2JqZWN0JyAmJiAhQXJyYXkuaXNBcnJheSh2YWwpO1xuICB9XG5cbiAgZ2V0S2V5KGJhc2VLZXksIGtleSkge1xuICAgIHJldHVybiAoYmFzZUtleSA/IGJhc2VLZXkgKyAnLicgOiAnJykgKyBrZXk7XG4gIH1cbn1cbiIsIjxoMSBtYXQtZGlhbG9nLXRpdGxlIGNsYXNzPVwibWF0LXR5cG9ncmFwaHlcIj57eyB0aXRsZSB9fTwvaDE+XG5cbjxkaXYgbWF0LWRpYWxvZy1jb250ZW50IGNsYXNzPVwibWF0LXR5cG9ncmFwaHlcIj5cbiAgPG5nLWNvbnRhaW5lclxuICAgICpuZ1RlbXBsYXRlT3V0bGV0PVwibG9vcE9iamVjdDsgY29udGV4dDogeyBvYmo6IGRhdGEgfVwiXG4gID48L25nLWNvbnRhaW5lcj5cblxuICA8bmctdGVtcGxhdGUgI2xvb3BPYmplY3QgbGV0LW9iaj1cIm9ialwiIGxldC1iYXNlS2V5PVwiYmFzZUtleVwiPlxuICAgIDxuZy1jb250YWluZXIgKm5nRm9yPVwibGV0IHByb3BlcnR5IG9mIG9iaiB8IGtleXZhbHVlXCI+XG4gICAgICA8bmctY29udGFpbmVyXG4gICAgICAgICpuZ0lmPVwiaWdub3JlS2V5cy5pbmRleE9mKGdldEtleShiYXNlS2V5LCBwcm9wZXJ0eS5rZXkpKSA9PT0gLTFcIlxuICAgICAgPlxuICAgICAgICA8bmctY29udGFpbmVyICpuZ0lmPVwiaXNPYmplY3QocHJvcGVydHkudmFsdWUpOyBlbHNlIG5vdE9iamVjdFwiPlxuICAgICAgICAgIDxuZy1jb250YWluZXJcbiAgICAgICAgICAgICpuZ1RlbXBsYXRlT3V0bGV0PVwiXG4gICAgICAgICAgICAgIGxvb3BPYmplY3Q7XG4gICAgICAgICAgICAgIGNvbnRleHQ6IHtcbiAgICAgICAgICAgICAgICBvYmo6IHByb3BlcnR5LnZhbHVlLFxuICAgICAgICAgICAgICAgIGJhc2VLZXk6IGdldEtleShiYXNlS2V5LCBwcm9wZXJ0eS5rZXkpXG4gICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIFwiXG4gICAgICAgICAgPjwvbmctY29udGFpbmVyPlxuICAgICAgICA8L25nLWNvbnRhaW5lcj5cblxuICAgICAgICA8bmctdGVtcGxhdGUgI25vdE9iamVjdD5cbiAgICAgICAgICA8cD5cbiAgICAgICAgICAgIDxzcGFuXG4gICAgICAgICAgICAgID48Yj57eyBnZXRLZXkoYmFzZUtleSwgcHJvcGVydHkua2V5KSB9fTwvYj4gOiA8L3NwYW5cbiAgICAgICAgICAgID48c3BhbiBjbGFzcz1cInByb3BlcnR5VmFsdWVcIiBbaW5uZXJIdG1sXT1cInByb3BlcnR5LnZhbHVlXCI+PC9zcGFuPlxuICAgICAgICAgIDwvcD5cbiAgICAgICAgPC9uZy10ZW1wbGF0ZT5cbiAgICAgIDwvbmctY29udGFpbmVyPlxuICAgIDwvbmctY29udGFpbmVyPlxuICA8L25nLXRlbXBsYXRlPlxuPC9kaXY+XG5cbjxkaXYgbWF0LWRpYWxvZy1hY3Rpb25zPlxuICA8YnV0dG9uIG1hdC1idXR0b24gY29sb3I9XCJwcmltYXJ5XCIgKGNsaWNrKT1cImRpYWxvZ1JlZi5jbG9zZShmYWxzZSlcIj5cbiAgICBPS1xuICA8L2J1dHRvbj5cbjwvZGl2PlxuIl19
@@ -0,0 +1,26 @@
1
+ import { NgModule } from '@angular/core';
2
+ import { JsonDialogComponent } from './json-dialog.component';
3
+ import { JsonDialogService } from './json-dialog.service';
4
+ import * as i0 from "@angular/core";
5
+ export class IgoJsonDialogModule {
6
+ /**
7
+ * @deprecated it has no effect
8
+ */
9
+ static forRoot() {
10
+ return {
11
+ ngModule: IgoJsonDialogModule
12
+ };
13
+ }
14
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: IgoJsonDialogModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
15
+ static ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "18.2.13", ngImport: i0, type: IgoJsonDialogModule, imports: [JsonDialogComponent], exports: [JsonDialogComponent] });
16
+ static ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: IgoJsonDialogModule, providers: [JsonDialogService], imports: [JsonDialogComponent] });
17
+ }
18
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: IgoJsonDialogModule, decorators: [{
19
+ type: NgModule,
20
+ args: [{
21
+ imports: [JsonDialogComponent],
22
+ exports: [JsonDialogComponent],
23
+ providers: [JsonDialogService]
24
+ }]
25
+ }] });
26
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoianNvbi1kaWFsb2cubW9kdWxlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vcGFja2FnZXMvY29tbW9uL2pzb24tZGlhbG9nL3NyYy9qc29uLWRpYWxvZy5tb2R1bGUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUF1QixRQUFRLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFFOUQsT0FBTyxFQUFFLG1CQUFtQixFQUFFLE1BQU0seUJBQXlCLENBQUM7QUFDOUQsT0FBTyxFQUFFLGlCQUFpQixFQUFFLE1BQU0sdUJBQXVCLENBQUM7O0FBTzFELE1BQU0sT0FBTyxtQkFBbUI7SUFDOUI7O09BRUc7SUFDSCxNQUFNLENBQUMsT0FBTztRQUNaLE9BQU87WUFDTCxRQUFRLEVBQUUsbUJBQW1CO1NBQzlCLENBQUM7SUFDSixDQUFDO3dHQVJVLG1CQUFtQjt5R0FBbkIsbUJBQW1CLFlBSnBCLG1CQUFtQixhQUNuQixtQkFBbUI7eUdBR2xCLG1CQUFtQixhQUZuQixDQUFDLGlCQUFpQixDQUFDLFlBRnBCLG1CQUFtQjs7NEZBSWxCLG1CQUFtQjtrQkFML0IsUUFBUTttQkFBQztvQkFDUixPQUFPLEVBQUUsQ0FBQyxtQkFBbUIsQ0FBQztvQkFDOUIsT0FBTyxFQUFFLENBQUMsbUJBQW1CLENBQUM7b0JBQzlCLFNBQVMsRUFBRSxDQUFDLGlCQUFpQixDQUFDO2lCQUMvQiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IE1vZHVsZVdpdGhQcm92aWRlcnMsIE5nTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5cbmltcG9ydCB7IEpzb25EaWFsb2dDb21wb25lbnQgfSBmcm9tICcuL2pzb24tZGlhbG9nLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBKc29uRGlhbG9nU2VydmljZSB9IGZyb20gJy4vanNvbi1kaWFsb2cuc2VydmljZSc7XG5cbkBOZ01vZHVsZSh7XG4gIGltcG9ydHM6IFtKc29uRGlhbG9nQ29tcG9uZW50XSxcbiAgZXhwb3J0czogW0pzb25EaWFsb2dDb21wb25lbnRdLFxuICBwcm92aWRlcnM6IFtKc29uRGlhbG9nU2VydmljZV1cbn0pXG5leHBvcnQgY2xhc3MgSWdvSnNvbkRpYWxvZ01vZHVsZSB7XG4gIC8qKlxuICAgKiBAZGVwcmVjYXRlZCBpdCBoYXMgbm8gZWZmZWN0XG4gICAqL1xuICBzdGF0aWMgZm9yUm9vdCgpOiBNb2R1bGVXaXRoUHJvdmlkZXJzPElnb0pzb25EaWFsb2dNb2R1bGU+IHtcbiAgICByZXR1cm4ge1xuICAgICAgbmdNb2R1bGU6IElnb0pzb25EaWFsb2dNb2R1bGVcbiAgICB9O1xuICB9XG59XG4iXX0=
@@ -0,0 +1,26 @@
1
+ import { Injectable } from '@angular/core';
2
+ import { MatDialog } from '@angular/material/dialog';
3
+ import { JsonDialogComponent } from './json-dialog.component';
4
+ import * as i0 from "@angular/core";
5
+ import * as i1 from "@angular/material/dialog";
6
+ export class JsonDialogService {
7
+ dialog;
8
+ constructor(dialog) {
9
+ this.dialog = dialog;
10
+ }
11
+ open(title, data, ignoreKeys) {
12
+ const dialogRef = this.dialog.open(JsonDialogComponent, {
13
+ disableClose: false
14
+ });
15
+ dialogRef.componentInstance.data = data;
16
+ dialogRef.componentInstance.title = title;
17
+ dialogRef.componentInstance.ignoreKeys = ignoreKeys ?? [];
18
+ return dialogRef.afterClosed();
19
+ }
20
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: JsonDialogService, deps: [{ token: i1.MatDialog }], target: i0.ɵɵFactoryTarget.Injectable });
21
+ static ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: JsonDialogService });
22
+ }
23
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: JsonDialogService, decorators: [{
24
+ type: Injectable
25
+ }], ctorParameters: () => [{ type: i1.MatDialog }] });
26
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoianNvbi1kaWFsb2cuc2VydmljZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3BhY2thZ2VzL2NvbW1vbi9qc29uLWRpYWxvZy9zcmMvanNvbi1kaWFsb2cuc2VydmljZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQzNDLE9BQU8sRUFBRSxTQUFTLEVBQUUsTUFBTSwwQkFBMEIsQ0FBQztBQUlyRCxPQUFPLEVBQUUsbUJBQW1CLEVBQUUsTUFBTSx5QkFBeUIsQ0FBQzs7O0FBRzlELE1BQU0sT0FBTyxpQkFBaUI7SUFDUjtJQUFwQixZQUFvQixNQUFpQjtRQUFqQixXQUFNLEdBQU4sTUFBTSxDQUFXO0lBQUcsQ0FBQztJQUVsQyxJQUFJLENBQUMsS0FBVSxFQUFFLElBQUksRUFBRSxVQUFxQjtRQUNqRCxNQUFNLFNBQVMsR0FBRyxJQUFJLENBQUMsTUFBTSxDQUFDLElBQUksQ0FBQyxtQkFBbUIsRUFBRTtZQUN0RCxZQUFZLEVBQUUsS0FBSztTQUNwQixDQUFDLENBQUM7UUFDSCxTQUFTLENBQUMsaUJBQWlCLENBQUMsSUFBSSxHQUFHLElBQUksQ0FBQztRQUN4QyxTQUFTLENBQUMsaUJBQWlCLENBQUMsS0FBSyxHQUFHLEtBQUssQ0FBQztRQUMxQyxTQUFTLENBQUMsaUJBQWlCLENBQUMsVUFBVSxHQUFHLFVBQVUsSUFBSSxFQUFFLENBQUM7UUFFMUQsT0FBTyxTQUFTLENBQUMsV0FBVyxFQUFFLENBQUM7SUFDakMsQ0FBQzt3R0FaVSxpQkFBaUI7NEdBQWpCLGlCQUFpQjs7NEZBQWpCLGlCQUFpQjtrQkFEN0IsVUFBVSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEluamVjdGFibGUgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IE1hdERpYWxvZyB9IGZyb20gJ0Bhbmd1bGFyL21hdGVyaWFsL2RpYWxvZyc7XG5cbmltcG9ydCB7IE9ic2VydmFibGUgfSBmcm9tICdyeGpzJztcblxuaW1wb3J0IHsgSnNvbkRpYWxvZ0NvbXBvbmVudCB9IGZyb20gJy4vanNvbi1kaWFsb2cuY29tcG9uZW50JztcblxuQEluamVjdGFibGUoKVxuZXhwb3J0IGNsYXNzIEpzb25EaWFsb2dTZXJ2aWNlIHtcbiAgY29uc3RydWN0b3IocHJpdmF0ZSBkaWFsb2c6IE1hdERpYWxvZykge31cblxuICBwdWJsaWMgb3Blbih0aXRsZTogYW55LCBkYXRhLCBpZ25vcmVLZXlzPzogc3RyaW5nW10pOiBPYnNlcnZhYmxlPGFueT4ge1xuICAgIGNvbnN0IGRpYWxvZ1JlZiA9IHRoaXMuZGlhbG9nLm9wZW4oSnNvbkRpYWxvZ0NvbXBvbmVudCwge1xuICAgICAgZGlzYWJsZUNsb3NlOiBmYWxzZVxuICAgIH0pO1xuICAgIGRpYWxvZ1JlZi5jb21wb25lbnRJbnN0YW5jZS5kYXRhID0gZGF0YTtcbiAgICBkaWFsb2dSZWYuY29tcG9uZW50SW5zdGFuY2UudGl0bGUgPSB0aXRsZTtcbiAgICBkaWFsb2dSZWYuY29tcG9uZW50SW5zdGFuY2UuaWdub3JlS2V5cyA9IGlnbm9yZUtleXMgPz8gW107XG5cbiAgICByZXR1cm4gZGlhbG9nUmVmLmFmdGVyQ2xvc2VkKCk7XG4gIH1cbn1cbiJdfQ==
@@ -0,0 +1,4 @@
1
+ export * from './json-dialog.module';
2
+ export * from './json-dialog.component';
3
+ export * from './json-dialog.service';
4
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHVibGljX2FwaS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3BhY2thZ2VzL2NvbW1vbi9qc29uLWRpYWxvZy9zcmMvcHVibGljX2FwaS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxjQUFjLHNCQUFzQixDQUFDO0FBQ3JDLGNBQWMseUJBQXlCLENBQUM7QUFDeEMsY0FBYyx1QkFBdUIsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImV4cG9ydCAqIGZyb20gJy4vanNvbi1kaWFsb2cubW9kdWxlJztcbmV4cG9ydCAqIGZyb20gJy4vanNvbi1kaWFsb2cuY29tcG9uZW50JztcbmV4cG9ydCAqIGZyb20gJy4vanNvbi1kaWFsb2cuc2VydmljZSc7XG4iXX0=
@@ -0,0 +1,5 @@
1
+ /**
2
+ * Generated bundle index. Do not edit.
3
+ */
4
+ export * from './public_api';
5
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaWdvMi1jb21tb24ta2V5dmFsdWUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9wYWNrYWdlcy9jb21tb24va2V5dmFsdWUvc3JjL2lnbzItY29tbW9uLWtleXZhbHVlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBOztHQUVHO0FBRUgsY0FBYyxjQUFjLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyIvKipcbiAqIEdlbmVyYXRlZCBidW5kbGUgaW5kZXguIERvIG5vdCBlZGl0LlxuICovXG5cbmV4cG9ydCAqIGZyb20gJy4vcHVibGljX2FwaSc7XG4iXX0=
@@ -0,0 +1,25 @@
1
+ import { NgModule } from '@angular/core';
2
+ import { KeyValuePipe } from './keyvalue.pipe';
3
+ import * as i0 from "@angular/core";
4
+ /**
5
+ * @deprecated import the KeyValuePipe directly
6
+ */
7
+ export class IgoKeyValueModule {
8
+ static forRoot() {
9
+ return {
10
+ ngModule: IgoKeyValueModule,
11
+ providers: []
12
+ };
13
+ }
14
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: IgoKeyValueModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
15
+ static ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "18.2.13", ngImport: i0, type: IgoKeyValueModule, imports: [KeyValuePipe], exports: [KeyValuePipe] });
16
+ static ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: IgoKeyValueModule });
17
+ }
18
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: IgoKeyValueModule, decorators: [{
19
+ type: NgModule,
20
+ args: [{
21
+ imports: [KeyValuePipe],
22
+ exports: [KeyValuePipe]
23
+ }]
24
+ }] });
25
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoia2V5dmFsdWUubW9kdWxlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vcGFja2FnZXMvY29tbW9uL2tleXZhbHVlL3NyYy9rZXl2YWx1ZS5tb2R1bGUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUF1QixRQUFRLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFFOUQsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLGlCQUFpQixDQUFDOztBQUUvQzs7R0FFRztBQUtILE1BQU0sT0FBTyxpQkFBaUI7SUFDNUIsTUFBTSxDQUFDLE9BQU87UUFDWixPQUFPO1lBQ0wsUUFBUSxFQUFFLGlCQUFpQjtZQUMzQixTQUFTLEVBQUUsRUFBRTtTQUNkLENBQUM7SUFDSixDQUFDO3dHQU5VLGlCQUFpQjt5R0FBakIsaUJBQWlCLFlBSGxCLFlBQVksYUFDWixZQUFZO3lHQUVYLGlCQUFpQjs7NEZBQWpCLGlCQUFpQjtrQkFKN0IsUUFBUTttQkFBQztvQkFDUixPQUFPLEVBQUUsQ0FBQyxZQUFZLENBQUM7b0JBQ3ZCLE9BQU8sRUFBRSxDQUFDLFlBQVksQ0FBQztpQkFDeEIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBNb2R1bGVXaXRoUHJvdmlkZXJzLCBOZ01vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuXG5pbXBvcnQgeyBLZXlWYWx1ZVBpcGUgfSBmcm9tICcuL2tleXZhbHVlLnBpcGUnO1xuXG4vKipcbiAqIEBkZXByZWNhdGVkIGltcG9ydCB0aGUgS2V5VmFsdWVQaXBlIGRpcmVjdGx5XG4gKi9cbkBOZ01vZHVsZSh7XG4gIGltcG9ydHM6IFtLZXlWYWx1ZVBpcGVdLFxuICBleHBvcnRzOiBbS2V5VmFsdWVQaXBlXVxufSlcbmV4cG9ydCBjbGFzcyBJZ29LZXlWYWx1ZU1vZHVsZSB7XG4gIHN0YXRpYyBmb3JSb290KCk6IE1vZHVsZVdpdGhQcm92aWRlcnM8SWdvS2V5VmFsdWVNb2R1bGU+IHtcbiAgICByZXR1cm4ge1xuICAgICAgbmdNb2R1bGU6IElnb0tleVZhbHVlTW9kdWxlLFxuICAgICAgcHJvdmlkZXJzOiBbXVxuICAgIH07XG4gIH1cbn1cbiJdfQ==
@@ -0,0 +1,19 @@
1
+ import { Pipe } from '@angular/core';
2
+ import * as i0 from "@angular/core";
3
+ export class KeyValuePipe {
4
+ transform(value) {
5
+ const keyValues = [];
6
+ Object.getOwnPropertyNames(value).forEach((key) => keyValues.push({ key, value: value[key] }));
7
+ return keyValues;
8
+ }
9
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: KeyValuePipe, deps: [], target: i0.ɵɵFactoryTarget.Pipe });
10
+ static ɵpipe = i0.ɵɵngDeclarePipe({ minVersion: "14.0.0", version: "18.2.13", ngImport: i0, type: KeyValuePipe, isStandalone: true, name: "keyvalue" });
11
+ }
12
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: KeyValuePipe, decorators: [{
13
+ type: Pipe,
14
+ args: [{
15
+ name: 'keyvalue',
16
+ standalone: true
17
+ }]
18
+ }] });
19
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoia2V5dmFsdWUucGlwZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3BhY2thZ2VzL2NvbW1vbi9rZXl2YWx1ZS9zcmMva2V5dmFsdWUucGlwZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsSUFBSSxFQUFpQixNQUFNLGVBQWUsQ0FBQzs7QUFNcEQsTUFBTSxPQUFPLFlBQVk7SUFDdkIsU0FBUyxDQUFDLEtBQVU7UUFDbEIsTUFBTSxTQUFTLEdBQUcsRUFBRSxDQUFDO1FBQ3JCLE1BQU0sQ0FBQyxtQkFBbUIsQ0FBQyxLQUFLLENBQUMsQ0FBQyxPQUFPLENBQUMsQ0FBQyxHQUFXLEVBQUUsRUFBRSxDQUN4RCxTQUFTLENBQUMsSUFBSSxDQUFDLEVBQUUsR0FBRyxFQUFFLEtBQUssRUFBRSxLQUFLLENBQUMsR0FBRyxDQUFDLEVBQUUsQ0FBQyxDQUMzQyxDQUFDO1FBRUYsT0FBTyxTQUFTLENBQUM7SUFDbkIsQ0FBQzt3R0FSVSxZQUFZO3NHQUFaLFlBQVk7OzRGQUFaLFlBQVk7a0JBSnhCLElBQUk7bUJBQUM7b0JBQ0osSUFBSSxFQUFFLFVBQVU7b0JBQ2hCLFVBQVUsRUFBRSxJQUFJO2lCQUNqQiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IFBpcGUsIFBpcGVUcmFuc2Zvcm0gfSBmcm9tICdAYW5ndWxhci9jb3JlJztcblxuQFBpcGUoe1xuICBuYW1lOiAna2V5dmFsdWUnLFxuICBzdGFuZGFsb25lOiB0cnVlXG59KVxuZXhwb3J0IGNsYXNzIEtleVZhbHVlUGlwZSBpbXBsZW1lbnRzIFBpcGVUcmFuc2Zvcm0ge1xuICB0cmFuc2Zvcm0odmFsdWU6IGFueSk6IGFueSB7XG4gICAgY29uc3Qga2V5VmFsdWVzID0gW107XG4gICAgT2JqZWN0LmdldE93blByb3BlcnR5TmFtZXModmFsdWUpLmZvckVhY2goKGtleTogc3RyaW5nKSA9PlxuICAgICAga2V5VmFsdWVzLnB1c2goeyBrZXksIHZhbHVlOiB2YWx1ZVtrZXldIH0pXG4gICAgKTtcblxuICAgIHJldHVybiBrZXlWYWx1ZXM7XG4gIH1cbn1cbiJdfQ==
@@ -0,0 +1,3 @@
1
+ export * from './keyvalue.module';
2
+ export * from './keyvalue.pipe';
3
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHVibGljX2FwaS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3BhY2thZ2VzL2NvbW1vbi9rZXl2YWx1ZS9zcmMvcHVibGljX2FwaS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxjQUFjLG1CQUFtQixDQUFDO0FBQ2xDLGNBQWMsaUJBQWlCLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJleHBvcnQgKiBmcm9tICcuL2tleXZhbHVlLm1vZHVsZSc7XG5leHBvcnQgKiBmcm9tICcuL2tleXZhbHVlLnBpcGUnO1xuIl19
@@ -0,0 +1,5 @@
1
+ /**
2
+ * Generated bundle index. Do not edit.
3
+ */
4
+ export * from './public_api';
5
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaWdvMi1jb21tb24tbGlzdC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3BhY2thZ2VzL2NvbW1vbi9saXN0L3NyYy9pZ28yLWNvbW1vbi1saXN0LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBOztHQUVHO0FBRUgsY0FBYyxjQUFjLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyIvKipcbiAqIEdlbmVyYXRlZCBidW5kbGUgaW5kZXguIERvIG5vdCBlZGl0LlxuICovXG5cbmV4cG9ydCAqIGZyb20gJy4vcHVibGljX2FwaSc7XG4iXX0=