@bizdoc/core 1.13.12 → 1.13.16

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 (1223) hide show
  1. package/assets/themes/brown.min.css +3 -3
  2. package/assets/themes/dark.min.css +3 -3
  3. package/assets/themes/deep-purple-light-blue.min.css +28 -26
  4. package/assets/themes/deep-purple-teal.min.css +4 -4
  5. package/assets/themes/default.min.css +4 -4
  6. package/assets/themes/green.min.css +3 -3
  7. package/assets/themes/indigo.min.css +3 -3
  8. package/bizdoc-core.d.ts +5 -0
  9. package/esm2020/bizdoc-core.mjs +5 -0
  10. package/esm2020/lib/admin/admin-dismiss.service.mjs +22 -0
  11. package/esm2020/lib/admin/admin-menu.component.mjs +27 -0
  12. package/esm2020/lib/admin/core/ace.input.mjs +147 -0
  13. package/esm2020/lib/admin/core/color-picker.input.mjs +208 -0
  14. package/esm2020/lib/admin/core/search.input.mjs +43 -0
  15. package/esm2020/lib/admin/diff/configuration-diff.component.mjs +558 -0
  16. package/esm2020/lib/admin/document-trace/document-trace.component.mjs +469 -0
  17. package/esm2020/lib/admin/document-trace/reassign.dialog.mjs +40 -0
  18. package/esm2020/lib/admin/document-trace/timeline.mjs +2 -0
  19. package/esm2020/lib/admin/document-trace/trace-element.component.mjs +105 -0
  20. package/esm2020/lib/admin/form/form.resolve.service.mjs +17 -0
  21. package/esm2020/lib/admin/form/form.service.mjs +26 -0
  22. package/esm2020/lib/admin/form/workflow/node-ref.mjs +8 -0
  23. package/esm2020/lib/admin/form/workflow/node.component.mjs +128 -0
  24. package/esm2020/lib/admin/form/workflow/role-node.component.mjs +90 -0
  25. package/esm2020/lib/admin/form/workflow/workflow.component.mjs +408 -0
  26. package/esm2020/lib/admin/indices/manage-cube-index.component.mjs +161 -0
  27. package/esm2020/lib/admin/patterns/patterns.component.mjs +179 -0
  28. package/esm2020/lib/admin/permissions/permissions.component.mjs +97 -0
  29. package/esm2020/lib/admin/positions/positions-popup.component.mjs +74 -0
  30. package/esm2020/lib/admin/positions/positions.component.mjs +458 -0
  31. package/esm2020/lib/admin/profiler/profiler.component.mjs +260 -0
  32. package/esm2020/lib/admin/utility-ref.mjs +38 -0
  33. package/esm2020/lib/admin/utility-wrapper.component.mjs +51 -0
  34. package/esm2020/lib/admin/utility.pane.component.mjs +51 -0
  35. package/esm2020/lib/app.component.mjs +90 -0
  36. package/esm2020/lib/bizdoc.module.mjs +93 -0
  37. package/esm2020/lib/browse/browse-items.component.mjs +476 -0
  38. package/esm2020/lib/browse/browse.mobile.component.mjs +101 -0
  39. package/esm2020/lib/browse/browse.pane.component.mjs +149 -0
  40. package/esm2020/lib/browse/expanded-item/expanded-item.component.mjs +315 -0
  41. package/esm2020/lib/browse/filter/filter.component.mjs +164 -0
  42. package/esm2020/lib/browse/folders-menu.component.mjs +51 -0
  43. package/esm2020/lib/chat/chat-info.mjs +69 -0
  44. package/esm2020/lib/chat/chat.mobile.component.mjs +26 -0
  45. package/esm2020/lib/chat/chat.service.mjs +122 -0
  46. package/esm2020/lib/chat/contacts.component.mjs +103 -0
  47. package/esm2020/lib/chat/contacts.pane.component.mjs +29 -0
  48. package/esm2020/lib/chat/conversation.component.mjs +193 -0
  49. package/esm2020/lib/chat/conversation.pane.component.mjs +44 -0
  50. package/esm2020/lib/compose/action/action-picker.component.mjs +84 -0
  51. package/esm2020/lib/compose/action/action-ref.mjs +19 -0
  52. package/esm2020/lib/compose/action/action.base.mjs +49 -0
  53. package/esm2020/lib/compose/action/action.dialog.mjs +61 -0
  54. package/esm2020/lib/compose/action/action.pane.dialog.exp.mjs +72 -0
  55. package/esm2020/lib/compose/action/assign-action.component.mjs +90 -0
  56. package/esm2020/lib/compose/action/return-action.component.mjs +52 -0
  57. package/esm2020/lib/compose/attachments/attachments.component.mjs +127 -0
  58. package/esm2020/lib/compose/attachments/preview/attachment-preview.component.mjs +155 -0
  59. package/esm2020/lib/compose/attachments/progress-button.directive.mjs +25 -0
  60. package/esm2020/lib/compose/can-deactivate-changes.service.mjs +27 -0
  61. package/esm2020/lib/compose/comments/Comments.pane.component.mjs +49 -0
  62. package/esm2020/lib/compose/comments/comment.component.mjs +186 -0
  63. package/esm2020/lib/compose/comments/comments.component.mjs +227 -0
  64. package/esm2020/lib/compose/comments/edit-comment.component.mjs +32 -0
  65. package/esm2020/lib/compose/comments/edits.component.mjs +30 -0
  66. package/esm2020/lib/compose/comments/quick-comment.component.exp.mjs +63 -0
  67. package/esm2020/lib/compose/comments/votes.component.mjs +42 -0
  68. package/esm2020/lib/compose/compose-resolve.service.mjs +55 -0
  69. package/esm2020/lib/compose/compose.mobile.component.mjs +112 -0
  70. package/esm2020/lib/compose/compose.pane.component.mjs +201 -0
  71. package/esm2020/lib/compose/copy/copy.dialog.mjs +46 -0
  72. package/esm2020/lib/compose/dismiss.service.mjs +25 -0
  73. package/esm2020/lib/compose/document-resolver.service.mjs +17 -0
  74. package/esm2020/lib/compose/document.component.mjs +45 -0
  75. package/esm2020/lib/compose/document.mobile.component.mjs +22 -0
  76. package/esm2020/lib/compose/document.pane.component.mjs +26 -0
  77. package/esm2020/lib/compose/events/events.component.mjs +30 -0
  78. package/esm2020/lib/compose/form-ref.mjs +46 -0
  79. package/esm2020/lib/compose/form-selector/form-selector.sheet.mjs +82 -0
  80. package/esm2020/lib/compose/form.component.mjs +447 -0
  81. package/esm2020/lib/compose/new-menu.component.mjs +104 -0
  82. package/esm2020/lib/compose/privilage.directive.mjs +64 -0
  83. package/esm2020/lib/compose/recipient-resolver.service.mjs +18 -0
  84. package/esm2020/lib/compose/save-changes.dialog.mjs +18 -0
  85. package/esm2020/lib/compose/state.component.mjs +37 -0
  86. package/esm2020/lib/compose/tag/tags.component.mjs +91 -0
  87. package/esm2020/lib/compose/trace/flow.component.mjs +656 -0
  88. package/esm2020/lib/compose/trace/people.component.mjs +35 -0
  89. package/esm2020/lib/compose/trace/trace.base.mjs +71 -0
  90. package/esm2020/lib/compose/trace/trace.component.mjs +345 -0
  91. package/esm2020/lib/compose/trace/trace.pane.component.mjs +52 -0
  92. package/esm2020/lib/compose/version-compare/version-compare.component.mjs +53 -0
  93. package/esm2020/lib/compose/version-compare/version-compare.directive.mjs +344 -0
  94. package/esm2020/lib/compose/version-compare/version.pane.component.mjs +56 -0
  95. package/esm2020/lib/core/NgComponentOutlet.mjs +38 -0
  96. package/esm2020/lib/core/account.service.mjs +37 -0
  97. package/esm2020/lib/core/animated-icon/animated-icon.directive.mjs +17 -0
  98. package/esm2020/lib/core/animations.mjs +156 -0
  99. package/esm2020/lib/core/authentication.mjs +3 -0
  100. package/esm2020/lib/core/avatar/avatar.component.mjs +103 -0
  101. package/esm2020/lib/core/base.mjs +2 -0
  102. package/esm2020/lib/core/colors.mjs +322 -0
  103. package/esm2020/lib/core/component-factory-resolver.mjs +64 -0
  104. package/esm2020/lib/core/configuration.mjs +16 -0
  105. package/esm2020/lib/core/controls/address.input.mjs +193 -0
  106. package/esm2020/lib/core/controls/auto-complete.input.mjs +256 -0
  107. package/esm2020/lib/core/controls/combination-picker-body.mjs +173 -0
  108. package/esm2020/lib/core/controls/combination-picker.mjs +277 -0
  109. package/esm2020/lib/core/controls/combination-pool.mjs +105 -0
  110. package/esm2020/lib/core/controls/file.input.mjs +392 -0
  111. package/esm2020/lib/core/controls/select.input.mjs +237 -0
  112. package/esm2020/lib/core/controls/time-picker.mjs +196 -0
  113. package/esm2020/lib/core/controls/timespan.input.mjs +207 -0
  114. package/esm2020/lib/core/datasource.service.mjs +75 -0
  115. package/esm2020/lib/core/decorators.mjs +46 -0
  116. package/esm2020/lib/core/firebase.service.mjs +50 -0
  117. package/esm2020/lib/core/functions.mjs +200 -0
  118. package/esm2020/lib/core/guide/guide.component.mjs +219 -0
  119. package/esm2020/lib/core/guide/guide.service.mjs +107 -0
  120. package/esm2020/lib/core/http.interceptor.mjs +79 -0
  121. package/esm2020/lib/core/hub.service.mjs +108 -0
  122. package/esm2020/lib/core/identity/identity.component.mjs +67 -0
  123. package/esm2020/lib/core/info/attachment-info.service.mjs +51 -0
  124. package/esm2020/lib/core/info/document-info.service.mjs +21 -0
  125. package/esm2020/lib/core/info/location-info.component.mjs +61 -0
  126. package/esm2020/lib/core/info/map-info.mjs +40 -0
  127. package/esm2020/lib/core/layout/autocomplete.field.mjs +60 -0
  128. package/esm2020/lib/core/layout/checkbox.field.mjs +41 -0
  129. package/esm2020/lib/core/layout/checkbox.mjs +35 -0
  130. package/esm2020/lib/core/layout/date-range.field.mjs +53 -0
  131. package/esm2020/lib/core/layout/date.field.mjs +52 -0
  132. package/esm2020/lib/core/layout/expression.field.mjs +51 -0
  133. package/esm2020/lib/core/layout/file.field.mjs +47 -0
  134. package/esm2020/lib/core/layout/html.field.mjs +48 -0
  135. package/esm2020/lib/core/layout/input.base.mjs +11 -0
  136. package/esm2020/lib/core/layout/input.field.mjs +64 -0
  137. package/esm2020/lib/core/layout/layout.component.mjs +196 -0
  138. package/esm2020/lib/core/layout/numeric.field.mjs +47 -0
  139. package/esm2020/lib/core/layout/select.field.mjs +82 -0
  140. package/esm2020/lib/core/layout/switch.field.mjs +41 -0
  141. package/esm2020/lib/core/layout/textarea.field.mjs +42 -0
  142. package/esm2020/lib/core/layout/timespan.field.mjs +50 -0
  143. package/esm2020/lib/core/lottie-animation.mjs +46 -0
  144. package/esm2020/lib/core/mailbox.service.mjs +395 -0
  145. package/esm2020/lib/core/models.mjs +40 -0
  146. package/esm2020/lib/core/none.component.mjs +40 -0
  147. package/esm2020/lib/core/pipes/action.pipe.mjs +25 -0
  148. package/esm2020/lib/core/pipes/calendar.pipe.mjs +72 -0
  149. package/esm2020/lib/core/pipes/date-format.pipe.mjs +19 -0
  150. package/esm2020/lib/core/pipes/daterange.pipe.mjs +62 -0
  151. package/esm2020/lib/core/pipes/difference.pipe.mjs +15 -0
  152. package/esm2020/lib/core/pipes/duration-format.pipe.mjs +48 -0
  153. package/esm2020/lib/core/pipes/duration.pipe.mjs +19 -0
  154. package/esm2020/lib/core/pipes/form.pipe.mjs +25 -0
  155. package/esm2020/lib/core/pipes/join.pipe.mjs +18 -0
  156. package/esm2020/lib/core/pipes/role.pipe.mjs +25 -0
  157. package/esm2020/lib/core/pipes/sanitize-html.pipe.mjs +18 -0
  158. package/esm2020/lib/core/pipes/sort.pipe.mjs +48 -0
  159. package/esm2020/lib/core/pipes/state.pipe.mjs +25 -0
  160. package/esm2020/lib/core/pipes/time-ago.pipe.mjs +66 -0
  161. package/esm2020/lib/core/pipes/translate.pipe.mjs +38 -0
  162. package/esm2020/lib/core/pipes/type-value.pipe.mjs +42 -0
  163. package/esm2020/lib/core/pipes/user-name.pipe.mjs +21 -0
  164. package/esm2020/lib/core/popup/popup-ref.mjs +20 -0
  165. package/esm2020/lib/core/popup/popup.component.mjs +37 -0
  166. package/esm2020/lib/core/popup/popup.service.mjs +148 -0
  167. package/esm2020/lib/core/popup/tooltip.directive.mjs +82 -0
  168. package/esm2020/lib/core/prompt/ask/ask.dialog.mjs +29 -0
  169. package/esm2020/lib/core/prompt/mask/mask.component.mjs +21 -0
  170. package/esm2020/lib/core/prompt.service.mjs +86 -0
  171. package/esm2020/lib/core/router.mjs +35 -0
  172. package/esm2020/lib/core/session.service.mjs +247 -0
  173. package/esm2020/lib/core/slots/pane-ref.mjs +125 -0
  174. package/esm2020/lib/core/slots/router.directive.mjs +70 -0
  175. package/esm2020/lib/core/slots/router.service.mjs +36 -0
  176. package/esm2020/lib/core/slots/slots.component.mjs +1049 -0
  177. package/esm2020/lib/core/tagging/documents.component.mjs +25 -0
  178. package/esm2020/lib/core/tagging/edit-input.component.mjs +233 -0
  179. package/esm2020/lib/core/tagging/emoji.component.mjs +35 -0
  180. package/esm2020/lib/core/tagging/tagging-item.directive.mjs +39 -0
  181. package/esm2020/lib/core/tagging/tagging.component-base.mjs +29 -0
  182. package/esm2020/lib/core/tagging/tagging.directive.mjs +138 -0
  183. package/esm2020/lib/core/tagging/tagging.pipe.mjs +72 -0
  184. package/esm2020/lib/core/tagging/users.component.mjs +32 -0
  185. package/esm2020/lib/core/translate.service.mjs +99 -0
  186. package/esm2020/lib/core/translations.mjs +1104 -0
  187. package/esm2020/lib/core/window-title.service.mjs +53 -0
  188. package/esm2020/lib/cube/accum/accum.component.mjs +257 -0
  189. package/esm2020/lib/cube/chart/chart.component.mjs +326 -0
  190. package/esm2020/lib/cube/cube-info.service.mjs +100 -0
  191. package/esm2020/lib/cube/cube-menu.component.mjs +27 -0
  192. package/esm2020/lib/cube/cube-view.component.mjs +186 -0
  193. package/esm2020/lib/cube/cube.service.mjs +407 -0
  194. package/esm2020/lib/cube/declarations.mjs +2 -0
  195. package/esm2020/lib/cube/explore/document-item.component.mjs +38 -0
  196. package/esm2020/lib/cube/explore/explore-item.component.mjs +27 -0
  197. package/esm2020/lib/cube/explore/explore-items.component.mjs +186 -0
  198. package/esm2020/lib/cube/explore/explore.pane.component.mjs +81 -0
  199. package/esm2020/lib/cube/explore/item-resolver.service.mjs +32 -0
  200. package/esm2020/lib/cube/explore/item.pane.component.mjs +23 -0
  201. package/esm2020/lib/cube/filter/filter-tags.component.exp.mjs +75 -0
  202. package/esm2020/lib/cube/filter/filter.component.mjs +137 -0
  203. package/esm2020/lib/cube/grid/grid.component.mjs +217 -0
  204. package/esm2020/lib/cube/grid/spreadsheet.component.mjs +365 -0
  205. package/esm2020/lib/cube/matrix/matrix.base.mjs +127 -0
  206. package/esm2020/lib/cube/matrix/matrix.mobile.component.mjs +63 -0
  207. package/esm2020/lib/cube/matrix/matrix.pane.component.mjs +76 -0
  208. package/esm2020/lib/cube/matrix/popup.component.mjs +70 -0
  209. package/esm2020/lib/cube/matrix/table.component.mjs +489 -0
  210. package/esm2020/lib/cube/parallel/item.mjs +41 -0
  211. package/esm2020/lib/cube/parallel/parallel.component.mjs +160 -0
  212. package/esm2020/lib/cube/pivot/pivot.component.mjs +500 -0
  213. package/esm2020/lib/cube/sum/sum.component.mjs +404 -0
  214. package/esm2020/lib/cube/view-base.mjs +79 -0
  215. package/esm2020/lib/cube/view.mobile.component.mjs +127 -0
  216. package/esm2020/lib/cube/view.pane.component.mjs +84 -0
  217. package/esm2020/lib/dashboard/actions/actions.widget.mjs +126 -0
  218. package/esm2020/lib/dashboard/cube/accum-cube.widget.mjs +145 -0
  219. package/esm2020/lib/dashboard/cube/cube-analysis.base.mjs +90 -0
  220. package/esm2020/lib/dashboard/cube/cube-analysis.widget.mjs +53 -0
  221. package/esm2020/lib/dashboard/cube/cube-chart.widget.mjs +144 -0
  222. package/esm2020/lib/dashboard/cube/documents.widget.mjs +64 -0
  223. package/esm2020/lib/dashboard/cube/filter/filter.component.mjs +59 -0
  224. package/esm2020/lib/dashboard/dashboard.component.mjs +47 -0
  225. package/esm2020/lib/dashboard/dashboard.pane.component.mjs +24 -0
  226. package/esm2020/lib/dashboard/recents/recents.widget.mjs +98 -0
  227. package/esm2020/lib/dashboard/score/activity.widget.mjs +162 -0
  228. package/esm2020/lib/dashboard/score/compare-departments.widget.mjs +204 -0
  229. package/esm2020/lib/dashboard/score/peers-performance.widget.mjs +253 -0
  230. package/esm2020/lib/dashboard/score/pending-results.widget.mjs +64 -0
  231. package/esm2020/lib/dashboard/score/personal-score.widget.mjs +219 -0
  232. package/esm2020/lib/dashboard/widget-item.component.mjs +89 -0
  233. package/esm2020/lib/dashboard/widget-ref.mjs +18 -0
  234. package/esm2020/lib/desktop.module.mjs +144 -0
  235. package/esm2020/lib/home/about/about.dialog.mjs +26 -0
  236. package/esm2020/lib/home/home-base.component.mjs +91 -0
  237. package/esm2020/lib/home/home.desktop.component.mjs +201 -0
  238. package/esm2020/lib/home/home.mobile.component.mjs +116 -0
  239. package/esm2020/lib/home/notifications/notifications.component.mjs +67 -0
  240. package/esm2020/lib/home/options/options.component.mjs +94 -0
  241. package/esm2020/lib/home/outofoffice/outofoffice.component.mjs +38 -0
  242. package/esm2020/lib/home/search.service.mjs +75 -0
  243. package/esm2020/lib/home/sign/sign.component.mjs +54 -0
  244. package/esm2020/lib/home/tools.component.mjs +82 -0
  245. package/esm2020/lib/impersonate/impersonate.component.mjs +65 -0
  246. package/esm2020/lib/mobile.module.mjs +59 -0
  247. package/esm2020/lib/modules/chart.module.mjs +37 -0
  248. package/esm2020/lib/modules/circular-gauge.module.mjs +17 -0
  249. package/esm2020/lib/modules/date.adapter.mjs +30 -0
  250. package/esm2020/lib/modules/datepicker.intl.mjs +39 -0
  251. package/esm2020/lib/modules/diagram.module.mjs +34 -0
  252. package/esm2020/lib/modules/gantt.module.mjs +17 -0
  253. package/esm2020/lib/modules/grid.module.mjs +23 -0
  254. package/esm2020/lib/modules/material.module.mjs +188 -0
  255. package/esm2020/lib/modules/paginator.intl.mjs +21 -0
  256. package/esm2020/lib/modules/pivot.module.mjs +23 -0
  257. package/esm2020/lib/modules/schedule.module.mjs +21 -0
  258. package/esm2020/lib/modules/spreadsheet.module.mjs +28 -0
  259. package/esm2020/lib/modules/stepper.intl.mjs +17 -0
  260. package/esm2020/lib/modules/texteditor.module.mjs +27 -0
  261. package/esm2020/lib/notifications/filter.component.mjs +25 -0
  262. package/esm2020/lib/notifications/notifications-table.component.mjs +106 -0
  263. package/esm2020/lib/notifications/notifications.component-base.mjs +47 -0
  264. package/esm2020/lib/notifications/notifications.mobile.component.mjs +20 -0
  265. package/esm2020/lib/notifications/notifications.pane.component.mjs +23 -0
  266. package/esm2020/lib/notifications/notifications.service.mjs +71 -0
  267. package/esm2020/lib/notifications/types/commented.notification.mjs +53 -0
  268. package/esm2020/lib/notifications/types/cube-anomaly.notification.mjs +58 -0
  269. package/esm2020/lib/notifications/types/escalated.notification.mjs +33 -0
  270. package/esm2020/lib/notifications/types/liked.notification.mjs +50 -0
  271. package/esm2020/lib/notifications/types/long-running-task.notification.mjs +31 -0
  272. package/esm2020/lib/notifications/types/notification-base.mjs +40 -0
  273. package/esm2020/lib/notifications/types/nudge.notification.mjs +31 -0
  274. package/esm2020/lib/notifications/types/state-changed.notification.mjs +30 -0
  275. package/esm2020/lib/notifications/types/tagged.notification.mjs +43 -0
  276. package/esm2020/lib/notifications/types/text.notification.mjs +20 -0
  277. package/esm2020/lib/notifications/types/upcoming-event.notification.mjs +36 -0
  278. package/esm2020/lib/options/options.component.mjs +227 -0
  279. package/esm2020/lib/options/options.service.mjs +38 -0
  280. package/esm2020/lib/reports/arguments-component.mjs +83 -0
  281. package/esm2020/lib/reports/cube/documents.component.mjs +40 -0
  282. package/esm2020/lib/reports/cube/grid-documents.component.mjs +72 -0
  283. package/esm2020/lib/reports/cube/table-documents.component.mjs +56 -0
  284. package/esm2020/lib/reports/cube/usage-args.component.mjs +61 -0
  285. package/esm2020/lib/reports/cube/usage-base.mjs +79 -0
  286. package/esm2020/lib/reports/cube/usage-chart.component.mjs +353 -0
  287. package/esm2020/lib/reports/cube/usage-pivot.component.mjs +239 -0
  288. package/esm2020/lib/reports/cube/usage.component.mjs +40 -0
  289. package/esm2020/lib/reports/report-ref.mjs +31 -0
  290. package/esm2020/lib/reports/report-viewer.component.mjs +154 -0
  291. package/esm2020/lib/reports/report.mobile.component.mjs +120 -0
  292. package/esm2020/lib/reports/report.pane.component.mjs +88 -0
  293. package/esm2020/lib/reports/reports-menu.component.mjs +26 -0
  294. package/esm2020/lib/reports/substitution/substitution.component.mjs +40 -0
  295. package/esm2020/lib/reports/table/table-view.component.mjs +41 -0
  296. package/esm2020/lib/reports/tasks/tasks.component.mjs +95 -0
  297. package/esm2020/lib/routes.desktop.mjs +197 -0
  298. package/esm2020/lib/routes.mobile.mjs +69 -0
  299. package/esm2020/lib/scheduler/schedule.component.mjs +166 -0
  300. package/esm2020/lib/scheduler/scheduler.mobile.component.mjs +37 -0
  301. package/esm2020/lib/scheduler/scheduler.pane.component.mjs +53 -0
  302. package/esm2020/lib/shared.module.mjs +528 -0
  303. package/esm2020/lib/system.module.mjs +110 -0
  304. package/esm2020/lib/views/cube/chart.component.mjs +75 -0
  305. package/esm2020/lib/views/cube/cube-base.mjs +96 -0
  306. package/esm2020/lib/views/cube/explore.component.mjs +83 -0
  307. package/esm2020/lib/views/cube/matrix.component.mjs +97 -0
  308. package/esm2020/lib/views/cube/parallel.component.mjs +53 -0
  309. package/esm2020/lib/views/cube/pivot.component.mjs +51 -0
  310. package/esm2020/lib/views/cube/sum.component.mjs +64 -0
  311. package/esm2020/lib/views/cube/view.component.mjs +102 -0
  312. package/esm2020/lib/views/document-view-ref.mjs +27 -0
  313. package/esm2020/lib/views/timeline/timeline.component.exp.mjs +313 -0
  314. package/esm2020/lib/views/view-item.component.mjs +70 -0
  315. package/esm2020/lib/views/views.component.mjs +25 -0
  316. package/esm2020/lib/views/views.mobile.component.mjs +20 -0
  317. package/esm2020/lib/views/views.pane.component.mjs +31 -0
  318. package/esm2020/public-api.mjs +142 -0
  319. package/fesm2015/bizdoc-core.mjs +29625 -0
  320. package/fesm2015/bizdoc-core.mjs.map +1 -0
  321. package/fesm2020/bizdoc-core.mjs +29415 -0
  322. package/fesm2020/bizdoc-core.mjs.map +1 -0
  323. package/lib/admin/admin-dismiss.service.d.ts +14 -0
  324. package/lib/admin/admin-menu.component.d.ts +12 -0
  325. package/lib/admin/core/ace.input.d.ts +52 -0
  326. package/lib/admin/core/color-picker.input.d.ts +64 -0
  327. package/lib/admin/core/search.input.d.ts +13 -0
  328. package/lib/admin/diff/configuration-diff.component.d.ts +116 -0
  329. package/lib/admin/document-trace/document-trace.component.d.ts +83 -0
  330. package/lib/admin/document-trace/reassign.dialog.d.ts +22 -0
  331. package/lib/admin/document-trace/timeline.d.ts +40 -0
  332. package/lib/admin/document-trace/trace-element.component.d.ts +37 -0
  333. package/lib/admin/form/form.resolve.service.d.ts +12 -0
  334. package/lib/admin/form/form.service.d.ts +13 -0
  335. package/lib/admin/form/workflow/node-ref.d.ts +7 -0
  336. package/lib/admin/form/workflow/node.component.d.ts +37 -0
  337. package/lib/admin/form/workflow/role-node.component.d.ts +22 -0
  338. package/lib/admin/form/workflow/workflow.component.d.ts +73 -0
  339. package/lib/admin/indices/manage-cube-index.component.d.ts +54 -0
  340. package/lib/admin/patterns/patterns.component.d.ts +79 -0
  341. package/lib/admin/permissions/permissions.component.d.ts +45 -0
  342. package/lib/admin/positions/positions-popup.component.d.ts +39 -0
  343. package/lib/admin/positions/positions.component.d.ts +117 -0
  344. package/lib/admin/profiler/profiler.component.d.ts +108 -0
  345. package/lib/admin/utility-ref.d.ts +19 -0
  346. package/lib/admin/utility-wrapper.component.d.ts +28 -0
  347. package/lib/admin/utility.pane.component.d.ts +24 -0
  348. package/lib/app.component.d.ts +24 -0
  349. package/lib/bizdoc.module.d.ts +18 -0
  350. package/lib/browse/browse-items.component.d.ts +104 -0
  351. package/lib/browse/browse.mobile.component.d.ts +39 -0
  352. package/lib/browse/browse.pane.component.d.ts +50 -0
  353. package/lib/browse/expanded-item/expanded-item.component.d.ts +67 -0
  354. package/lib/browse/filter/filter.component.d.ts +71 -0
  355. package/lib/browse/folders-menu.component.d.ts +22 -0
  356. package/lib/chat/chat-info.d.ts +37 -0
  357. package/lib/chat/chat.mobile.component.d.ts +10 -0
  358. package/lib/chat/chat.service.d.ts +38 -0
  359. package/lib/chat/contacts.component.d.ts +38 -0
  360. package/lib/chat/contacts.pane.component.d.ts +12 -0
  361. package/lib/chat/conversation.component.d.ts +56 -0
  362. package/lib/chat/conversation.pane.component.d.ts +16 -0
  363. package/lib/compose/action/action-picker.component.d.ts +25 -0
  364. package/lib/compose/action/action-ref.d.ts +10 -0
  365. package/lib/compose/action/action.base.d.ts +15 -0
  366. package/lib/compose/action/action.dialog.d.ts +29 -0
  367. package/lib/compose/action/action.pane.dialog.exp.d.ts +31 -0
  368. package/lib/compose/action/assign-action.component.d.ts +36 -0
  369. package/lib/compose/action/return-action.component.d.ts +17 -0
  370. package/lib/compose/attachments/attachments.component.d.ts +35 -0
  371. package/lib/compose/attachments/preview/attachment-preview.component.d.ts +49 -0
  372. package/lib/compose/attachments/progress-button.directive.d.ts +12 -0
  373. package/lib/compose/can-deactivate-changes.service.d.ts +12 -0
  374. package/lib/compose/comments/Comments.pane.component.d.ts +18 -0
  375. package/lib/compose/comments/comment.component.d.ts +51 -0
  376. package/lib/compose/comments/comments.component.d.ts +66 -0
  377. package/lib/compose/comments/edit-comment.component.d.ts +25 -0
  378. package/lib/compose/comments/edits.component.d.ts +26 -0
  379. package/lib/compose/comments/quick-comment.component.exp.d.ts +28 -0
  380. package/lib/compose/comments/votes.component.d.ts +22 -0
  381. package/lib/compose/compose-resolve.service.d.ts +27 -0
  382. package/lib/compose/compose.mobile.component.d.ts +42 -0
  383. package/lib/compose/compose.pane.component.d.ts +57 -0
  384. package/lib/compose/copy/copy.dialog.d.ts +23 -0
  385. package/lib/compose/dismiss.service.d.ts +12 -0
  386. package/lib/compose/document-resolver.service.d.ts +12 -0
  387. package/lib/compose/document.component.d.ts +18 -0
  388. package/lib/compose/document.mobile.component.d.ts +10 -0
  389. package/lib/compose/document.pane.component.d.ts +12 -0
  390. package/lib/compose/events/events.component.d.ts +13 -0
  391. package/lib/compose/form-ref.d.ts +30 -0
  392. package/lib/compose/form-selector/form-selector.sheet.d.ts +28 -0
  393. package/lib/compose/form.component.d.ts +97 -0
  394. package/lib/compose/new-menu.component.d.ts +36 -0
  395. package/lib/compose/privilage.directive.d.ts +26 -0
  396. package/lib/compose/recipient-resolver.service.d.ts +12 -0
  397. package/lib/compose/save-changes.dialog.d.ts +7 -0
  398. package/lib/compose/state.component.d.ts +12 -0
  399. package/lib/compose/tag/tags.component.d.ts +36 -0
  400. package/lib/compose/trace/flow.component.d.ts +59 -0
  401. package/lib/compose/trace/people.component.d.ts +18 -0
  402. package/lib/compose/trace/trace.base.d.ts +28 -0
  403. package/lib/compose/trace/trace.component.d.ts +55 -0
  404. package/lib/compose/trace/trace.pane.component.d.ts +20 -0
  405. package/lib/compose/version-compare/version-compare.component.d.ts +24 -0
  406. package/lib/compose/version-compare/version-compare.directive.d.ts +89 -0
  407. package/lib/compose/version-compare/version.pane.component.d.ts +21 -0
  408. package/lib/core/NgComponentOutlet.d.ts +15 -0
  409. package/lib/core/account.service.d.ts +18 -0
  410. package/lib/core/animated-icon/animated-icon.directive.d.ts +7 -0
  411. package/lib/core/animations.d.ts +26 -0
  412. package/lib/core/authentication.d.ts +6 -0
  413. package/lib/core/avatar/avatar.component.d.ts +34 -0
  414. package/lib/core/base.d.ts +29 -0
  415. package/lib/core/colors.d.ts +6 -0
  416. package/lib/core/component-factory-resolver.d.ts +12 -0
  417. package/lib/core/configuration.d.ts +111 -0
  418. package/lib/core/controls/address.input.d.ts +63 -0
  419. package/lib/core/controls/auto-complete.input.d.ts +86 -0
  420. package/lib/core/controls/combination-picker-body.d.ts +114 -0
  421. package/lib/core/controls/combination-picker.d.ts +82 -0
  422. package/lib/core/controls/combination-pool.d.ts +42 -0
  423. package/lib/core/controls/file.input.d.ts +88 -0
  424. package/lib/core/controls/select.input.d.ts +84 -0
  425. package/lib/core/controls/time-picker.d.ts +52 -0
  426. package/lib/core/controls/timespan.input.d.ts +55 -0
  427. package/lib/core/datasource.service.d.ts +46 -0
  428. package/lib/core/decorators.d.ts +17 -0
  429. package/lib/core/firebase.service.d.ts +17 -0
  430. package/lib/core/functions.d.ts +50 -0
  431. package/lib/core/guide/guide.component.d.ts +31 -0
  432. package/lib/core/guide/guide.service.d.ts +32 -0
  433. package/lib/core/http.interceptor.d.ts +21 -0
  434. package/lib/core/hub.service.d.ts +133 -0
  435. package/lib/core/identity/identity.component.d.ts +29 -0
  436. package/lib/core/info/attachment-info.service.d.ts +17 -0
  437. package/lib/core/info/document-info.service.d.ts +14 -0
  438. package/lib/core/info/location-info.component.d.ts +28 -0
  439. package/lib/core/info/map-info.d.ts +15 -0
  440. package/lib/core/layout/autocomplete.field.d.ts +21 -0
  441. package/lib/core/layout/checkbox.d.ts +10 -0
  442. package/lib/core/layout/checkbox.field.d.ts +11 -0
  443. package/lib/core/layout/date-range.field.d.ts +13 -0
  444. package/lib/core/layout/date.field.d.ts +11 -0
  445. package/lib/core/layout/expression.field.d.ts +12 -0
  446. package/lib/core/layout/file.field.d.ts +14 -0
  447. package/lib/core/layout/html.field.d.ts +12 -0
  448. package/lib/core/layout/input.base.d.ts +10 -0
  449. package/lib/core/layout/input.field.d.ts +14 -0
  450. package/lib/core/layout/layout.component.d.ts +33 -0
  451. package/lib/core/layout/numeric.field.d.ts +11 -0
  452. package/lib/core/layout/select.field.d.ts +22 -0
  453. package/lib/core/layout/switch.field.d.ts +11 -0
  454. package/lib/core/layout/textarea.field.d.ts +11 -0
  455. package/lib/core/layout/timespan.field.d.ts +11 -0
  456. package/lib/core/lottie-animation.d.ts +14 -0
  457. package/lib/core/mailbox.service.d.ts +141 -0
  458. package/lib/core/models.d.ts +649 -0
  459. package/lib/core/none.component.d.ts +9 -0
  460. package/lib/core/pipes/action.pipe.d.ts +10 -0
  461. package/lib/core/pipes/calendar.pipe.d.ts +27 -0
  462. package/lib/core/pipes/date-format.pipe.d.ts +8 -0
  463. package/lib/core/pipes/daterange.pipe.d.ts +15 -0
  464. package/lib/core/pipes/difference.pipe.d.ts +7 -0
  465. package/lib/core/pipes/duration-format.pipe.d.ts +11 -0
  466. package/lib/core/pipes/duration.pipe.d.ts +8 -0
  467. package/lib/core/pipes/form.pipe.d.ts +10 -0
  468. package/lib/core/pipes/join.pipe.d.ts +10 -0
  469. package/lib/core/pipes/role.pipe.d.ts +10 -0
  470. package/lib/core/pipes/sanitize-html.pipe.d.ts +10 -0
  471. package/lib/core/pipes/sort.pipe.d.ts +12 -0
  472. package/lib/core/pipes/state.pipe.d.ts +10 -0
  473. package/lib/core/pipes/time-ago.pipe.d.ts +16 -0
  474. package/lib/core/pipes/translate.pipe.d.ts +18 -0
  475. package/lib/core/pipes/type-value.pipe.d.ts +15 -0
  476. package/lib/core/pipes/user-name.pipe.d.ts +11 -0
  477. package/lib/core/popup/popup-ref.d.ts +14 -0
  478. package/lib/core/popup/popup.component.d.ts +22 -0
  479. package/lib/core/popup/popup.service.d.ts +24 -0
  480. package/lib/core/popup/tooltip.directive.d.ts +29 -0
  481. package/lib/core/prompt/ask/ask.dialog.d.ts +22 -0
  482. package/lib/core/prompt/mask/mask.component.d.ts +10 -0
  483. package/lib/core/prompt.service.d.ts +36 -0
  484. package/lib/core/router.d.ts +20 -0
  485. package/lib/core/session.service.d.ts +80 -0
  486. package/lib/core/slots/pane-ref.d.ts +113 -0
  487. package/lib/core/slots/router.directive.d.ts +25 -0
  488. package/lib/core/slots/router.service.d.ts +36 -0
  489. package/lib/core/slots/slots.component.d.ts +183 -0
  490. package/lib/core/tagging/documents.component.d.ts +11 -0
  491. package/lib/core/tagging/edit-input.component.d.ts +65 -0
  492. package/lib/core/tagging/emoji.component.d.ts +18 -0
  493. package/lib/core/tagging/tagging-item.directive.d.ts +15 -0
  494. package/lib/core/tagging/tagging.component-base.d.ts +19 -0
  495. package/lib/core/tagging/tagging.directive.d.ts +34 -0
  496. package/lib/core/tagging/tagging.pipe.d.ts +24 -0
  497. package/lib/core/tagging/users.component.d.ts +15 -0
  498. package/lib/core/translate.service.d.ts +28 -0
  499. package/lib/core/translations.d.ts +1097 -0
  500. package/lib/core/window-title.service.d.ts +21 -0
  501. package/lib/cube/accum/accum.component.d.ts +63 -0
  502. package/lib/cube/chart/chart.component.d.ts +74 -0
  503. package/lib/cube/cube-info.service.d.ts +77 -0
  504. package/lib/cube/cube-menu.component.d.ts +12 -0
  505. package/lib/cube/cube-view.component.d.ts +31 -0
  506. package/lib/cube/cube.service.d.ts +267 -0
  507. package/lib/cube/declarations.d.ts +23 -0
  508. package/lib/cube/explore/document-item.component.d.ts +16 -0
  509. package/lib/cube/explore/explore-item.component.d.ts +14 -0
  510. package/lib/cube/explore/explore-items.component.d.ts +57 -0
  511. package/lib/cube/explore/explore.pane.component.d.ts +29 -0
  512. package/lib/cube/explore/item-resolver.service.d.ts +20 -0
  513. package/lib/cube/explore/item.pane.component.d.ts +13 -0
  514. package/lib/cube/filter/filter-tags.component.exp.d.ts +31 -0
  515. package/lib/cube/filter/filter.component.d.ts +44 -0
  516. package/lib/cube/grid/grid.component.d.ts +59 -0
  517. package/lib/cube/grid/spreadsheet.component.d.ts +62 -0
  518. package/lib/cube/matrix/matrix.base.d.ts +72 -0
  519. package/lib/cube/matrix/matrix.mobile.component.d.ts +22 -0
  520. package/lib/cube/matrix/matrix.pane.component.d.ts +23 -0
  521. package/lib/cube/matrix/popup.component.d.ts +23 -0
  522. package/lib/cube/matrix/table.component.d.ts +100 -0
  523. package/lib/cube/parallel/item.d.ts +13 -0
  524. package/lib/cube/parallel/parallel.component.d.ts +52 -0
  525. package/lib/cube/pivot/pivot.component.d.ts +103 -0
  526. package/lib/cube/sum/sum.component.d.ts +78 -0
  527. package/lib/cube/view-base.d.ts +39 -0
  528. package/lib/cube/view.mobile.component.d.ts +46 -0
  529. package/lib/cube/view.pane.component.d.ts +27 -0
  530. package/lib/dashboard/actions/actions.widget.d.ts +39 -0
  531. package/lib/dashboard/cube/accum-cube.widget.d.ts +33 -0
  532. package/lib/dashboard/cube/cube-analysis.base.d.ts +59 -0
  533. package/lib/dashboard/cube/cube-analysis.widget.d.ts +17 -0
  534. package/lib/dashboard/cube/cube-chart.widget.d.ts +32 -0
  535. package/lib/dashboard/cube/documents.widget.d.ts +30 -0
  536. package/lib/dashboard/cube/filter/filter.component.d.ts +22 -0
  537. package/lib/dashboard/dashboard.component.d.ts +20 -0
  538. package/lib/dashboard/dashboard.pane.component.d.ts +8 -0
  539. package/lib/dashboard/recents/recents.widget.d.ts +40 -0
  540. package/lib/dashboard/score/activity.widget.d.ts +50 -0
  541. package/lib/dashboard/score/compare-departments.widget.d.ts +51 -0
  542. package/lib/dashboard/score/peers-performance.widget.d.ts +65 -0
  543. package/lib/dashboard/score/pending-results.widget.d.ts +28 -0
  544. package/lib/dashboard/score/personal-score.widget.d.ts +57 -0
  545. package/lib/dashboard/widget-item.component.d.ts +31 -0
  546. package/lib/dashboard/widget-ref.d.ts +11 -0
  547. package/lib/desktop.module.d.ts +45 -0
  548. package/lib/home/about/about.dialog.d.ts +14 -0
  549. package/lib/home/home-base.component.d.ts +34 -0
  550. package/lib/home/home.desktop.component.d.ts +56 -0
  551. package/lib/home/home.mobile.component.d.ts +38 -0
  552. package/lib/home/notifications/notifications.component.d.ts +28 -0
  553. package/lib/home/options/options.component.d.ts +46 -0
  554. package/lib/home/outofoffice/outofoffice.component.d.ts +19 -0
  555. package/lib/home/search.service.d.ts +23 -0
  556. package/lib/home/sign/sign.component.d.ts +17 -0
  557. package/lib/home/tools.component.d.ts +36 -0
  558. package/lib/impersonate/impersonate.component.d.ts +27 -0
  559. package/lib/mobile.module.d.ts +25 -0
  560. package/lib/modules/chart.module.d.ts +7 -0
  561. package/lib/modules/circular-gauge.module.d.ts +7 -0
  562. package/lib/modules/date.adapter.d.ts +13 -0
  563. package/lib/modules/datepicker.intl.d.ts +30 -0
  564. package/lib/modules/diagram.module.d.ts +8 -0
  565. package/lib/modules/gantt.module.d.ts +7 -0
  566. package/lib/modules/grid.module.d.ts +7 -0
  567. package/lib/modules/material.module.d.ts +45 -0
  568. package/lib/modules/paginator.intl.d.ts +14 -0
  569. package/lib/modules/pivot.module.d.ts +7 -0
  570. package/lib/modules/schedule.module.d.ts +7 -0
  571. package/lib/modules/spreadsheet.module.d.ts +8 -0
  572. package/lib/modules/stepper.intl.d.ts +10 -0
  573. package/lib/modules/texteditor.module.d.ts +8 -0
  574. package/lib/notifications/filter.component.d.ts +9 -0
  575. package/lib/notifications/notifications-table.component.d.ts +32 -0
  576. package/lib/notifications/notifications.component-base.d.ts +12 -0
  577. package/lib/notifications/notifications.mobile.component.d.ts +8 -0
  578. package/lib/notifications/notifications.pane.component.d.ts +8 -0
  579. package/lib/notifications/notifications.service.d.ts +24 -0
  580. package/lib/notifications/types/commented.notification.d.ts +26 -0
  581. package/lib/notifications/types/cube-anomaly.notification.d.ts +29 -0
  582. package/lib/notifications/types/escalated.notification.d.ts +25 -0
  583. package/lib/notifications/types/liked.notification.d.ts +25 -0
  584. package/lib/notifications/types/long-running-task.notification.d.ts +21 -0
  585. package/lib/notifications/types/notification-base.d.ts +20 -0
  586. package/lib/notifications/types/nudge.notification.d.ts +23 -0
  587. package/lib/notifications/types/state-changed.notification.d.ts +22 -0
  588. package/lib/notifications/types/tagged.notification.d.ts +26 -0
  589. package/lib/notifications/types/text.notification.d.ts +13 -0
  590. package/lib/notifications/types/upcoming-event.notification.d.ts +20 -0
  591. package/lib/options/options.component.d.ts +66 -0
  592. package/lib/options/options.service.d.ts +14 -0
  593. package/lib/reports/arguments-component.d.ts +27 -0
  594. package/lib/reports/cube/documents.component.d.ts +34 -0
  595. package/lib/reports/cube/grid-documents.component.d.ts +28 -0
  596. package/lib/reports/cube/table-documents.component.d.ts +28 -0
  597. package/lib/reports/cube/usage-args.component.d.ts +21 -0
  598. package/lib/reports/cube/usage-base.d.ts +72 -0
  599. package/lib/reports/cube/usage-chart.component.d.ts +62 -0
  600. package/lib/reports/cube/usage-pivot.component.d.ts +62 -0
  601. package/lib/reports/cube/usage.component.d.ts +16 -0
  602. package/lib/reports/report-ref.d.ts +27 -0
  603. package/lib/reports/report-viewer.component.d.ts +48 -0
  604. package/lib/reports/report.mobile.component.d.ts +45 -0
  605. package/lib/reports/report.pane.component.d.ts +34 -0
  606. package/lib/reports/reports-menu.component.d.ts +12 -0
  607. package/lib/reports/substitution/substitution.component.d.ts +23 -0
  608. package/lib/reports/table/table-view.component.d.ts +19 -0
  609. package/lib/reports/tasks/tasks.component.d.ts +68 -0
  610. package/lib/routes.desktop.d.ts +2 -0
  611. package/lib/routes.mobile.d.ts +2 -0
  612. package/lib/scheduler/schedule.component.d.ts +43 -0
  613. package/lib/scheduler/scheduler.mobile.component.d.ts +14 -0
  614. package/lib/scheduler/scheduler.pane.component.d.ts +20 -0
  615. package/lib/shared.module.d.ts +187 -0
  616. package/lib/system.module.d.ts +32 -0
  617. package/lib/views/cube/chart.component.d.ts +39 -0
  618. package/lib/views/cube/cube-base.d.ts +46 -0
  619. package/lib/views/cube/explore.component.d.ts +43 -0
  620. package/lib/views/cube/matrix.component.d.ts +51 -0
  621. package/lib/views/cube/parallel.component.d.ts +32 -0
  622. package/lib/views/cube/pivot.component.d.ts +34 -0
  623. package/lib/views/cube/sum.component.d.ts +33 -0
  624. package/lib/views/cube/view.component.d.ts +40 -0
  625. package/lib/views/document-view-ref.d.ts +18 -0
  626. package/lib/views/timeline/timeline.component.exp.d.ts +66 -0
  627. package/lib/views/view-item.component.d.ts +28 -0
  628. package/lib/views/views.component.d.ts +14 -0
  629. package/lib/views/views.mobile.component.d.ts +10 -0
  630. package/lib/views/views.pane.component.d.ts +12 -0
  631. package/package.json +78 -78
  632. package/public-api.d.ts +144 -0
  633. package/LICENSE.md +0 -1
  634. package/karma.conf.js +0 -44
  635. package/ng-package.json +0 -11
  636. package/src/lib/admin/admin-dismiss.service.ts +0 -24
  637. package/src/lib/admin/admin-menu.component.html +0 -18
  638. package/src/lib/admin/admin-menu.component.ts +0 -20
  639. package/src/lib/admin/core/ace.input.ts +0 -133
  640. package/src/lib/admin/core/color-picker.input.scss +0 -17
  641. package/src/lib/admin/core/color-picker.input.ts +0 -175
  642. package/src/lib/admin/core/search.input.ts +0 -32
  643. package/src/lib/admin/diff/_configuration-diff-theme.scss +0 -72
  644. package/src/lib/admin/diff/configuration-diff.component.html +0 -24
  645. package/src/lib/admin/diff/configuration-diff.component.scss +0 -16
  646. package/src/lib/admin/diff/configuration-diff.component.ts +0 -552
  647. package/src/lib/admin/document-trace/_timeline-theme.scss +0 -70
  648. package/src/lib/admin/document-trace/document-trace.component.html +0 -55
  649. package/src/lib/admin/document-trace/document-trace.component.scss +0 -10
  650. package/src/lib/admin/document-trace/document-trace.component.ts +0 -471
  651. package/src/lib/admin/document-trace/reassign.dialog.html +0 -24
  652. package/src/lib/admin/document-trace/reassign.dialog.ts +0 -34
  653. package/src/lib/admin/document-trace/timeline.ts +0 -45
  654. package/src/lib/admin/document-trace/trace-element.component.html +0 -57
  655. package/src/lib/admin/document-trace/trace-element.component.scss +0 -21
  656. package/src/lib/admin/document-trace/trace-element.component.ts +0 -106
  657. package/src/lib/admin/form/form.resolve.service.ts +0 -13
  658. package/src/lib/admin/form/form.service.ts +0 -23
  659. package/src/lib/admin/form/workflow/node-ref.ts +0 -8
  660. package/src/lib/admin/form/workflow/node.component.html +0 -36
  661. package/src/lib/admin/form/workflow/node.component.scss +0 -4
  662. package/src/lib/admin/form/workflow/node.component.ts +0 -129
  663. package/src/lib/admin/form/workflow/role-node.component.html +0 -40
  664. package/src/lib/admin/form/workflow/role-node.component.ts +0 -66
  665. package/src/lib/admin/form/workflow/tools.component.exp.ts +0 -13
  666. package/src/lib/admin/form/workflow/tools.component.html +0 -1
  667. package/src/lib/admin/form/workflow/workflow.component.html +0 -73
  668. package/src/lib/admin/form/workflow/workflow.component.scss +0 -52
  669. package/src/lib/admin/form/workflow/workflow.component.ts +0 -400
  670. package/src/lib/admin/indices/manage-cube-index.component.html +0 -35
  671. package/src/lib/admin/indices/manage-cube-index.component.scss +0 -16
  672. package/src/lib/admin/indices/manage-cube-index.component.ts +0 -155
  673. package/src/lib/admin/patterns/patterns.component.html +0 -70
  674. package/src/lib/admin/patterns/patterns.component.ts +0 -166
  675. package/src/lib/admin/permissions/permissions.component.html +0 -21
  676. package/src/lib/admin/permissions/permissions.component.scss +0 -7
  677. package/src/lib/admin/permissions/permissions.component.ts +0 -89
  678. package/src/lib/admin/positions/positions-popup.component.html +0 -23
  679. package/src/lib/admin/positions/positions-popup.component.ts +0 -68
  680. package/src/lib/admin/positions/positions.component.html +0 -148
  681. package/src/lib/admin/positions/positions.component.scss +0 -14
  682. package/src/lib/admin/positions/positions.component.ts +0 -463
  683. package/src/lib/admin/profiler/profiler.component.html +0 -109
  684. package/src/lib/admin/profiler/profiler.component.scss +0 -22
  685. package/src/lib/admin/profiler/profiler.component.ts +0 -268
  686. package/src/lib/admin/utility-ref.ts +0 -44
  687. package/src/lib/admin/utility-wrapper.component.ts +0 -52
  688. package/src/lib/admin/utility.pane.component.ts +0 -49
  689. package/src/lib/app.component.ts +0 -89
  690. package/src/lib/bizdoc.module.ts +0 -71
  691. package/src/lib/browse/_browse-theme.scss +0 -86
  692. package/src/lib/browse/browse-items.component.html +0 -171
  693. package/src/lib/browse/browse-items.component.scss +0 -52
  694. package/src/lib/browse/browse-items.component.ts +0 -455
  695. package/src/lib/browse/browse.mobile.component.html +0 -33
  696. package/src/lib/browse/browse.mobile.component.ts +0 -90
  697. package/src/lib/browse/browse.pane.component.html +0 -43
  698. package/src/lib/browse/browse.pane.component.scss +0 -4
  699. package/src/lib/browse/browse.pane.component.ts +0 -141
  700. package/src/lib/browse/expanded-item/expanded-item.component.html +0 -38
  701. package/src/lib/browse/expanded-item/expanded-item.component.scss +0 -35
  702. package/src/lib/browse/expanded-item/expanded-item.component.ts +0 -333
  703. package/src/lib/browse/filter/filter.component.html +0 -50
  704. package/src/lib/browse/filter/filter.component.scss +0 -10
  705. package/src/lib/browse/filter/filter.component.ts +0 -156
  706. package/src/lib/browse/folders-menu.component.html +0 -20
  707. package/src/lib/browse/folders-menu.component.scss +0 -15
  708. package/src/lib/browse/folders-menu.component.ts +0 -42
  709. package/src/lib/chat/_chat-theme.scss +0 -95
  710. package/src/lib/chat/chat-info.ts +0 -76
  711. package/src/lib/chat/chat-pool.component.exp.ts +0 -117
  712. package/src/lib/chat/chat-pool.component.html +0 -13
  713. package/src/lib/chat/chat-pool.component.scss +0 -10
  714. package/src/lib/chat/chat.mobile.component.html +0 -6
  715. package/src/lib/chat/chat.mobile.component.scss +0 -8
  716. package/src/lib/chat/chat.mobile.component.ts +0 -18
  717. package/src/lib/chat/chat.service.ts +0 -128
  718. package/src/lib/chat/contacts.component.html +0 -37
  719. package/src/lib/chat/contacts.component.scss +0 -49
  720. package/src/lib/chat/contacts.component.ts +0 -88
  721. package/src/lib/chat/contacts.pane.component.ts +0 -25
  722. package/src/lib/chat/conversation.component.html +0 -28
  723. package/src/lib/chat/conversation.component.scss +0 -14
  724. package/src/lib/chat/conversation.component.ts +0 -186
  725. package/src/lib/chat/conversation.pane.component.ts +0 -46
  726. package/src/lib/compose/_compose-theme.scss +0 -63
  727. package/src/lib/compose/action/action-picker.component.html +0 -25
  728. package/src/lib/compose/action/action-picker.component.scss +0 -4
  729. package/src/lib/compose/action/action-picker.component.ts +0 -72
  730. package/src/lib/compose/action/action-ref.ts +0 -19
  731. package/src/lib/compose/action/action.base.ts +0 -58
  732. package/src/lib/compose/action/action.dialog.html +0 -17
  733. package/src/lib/compose/action/action.dialog.scss +0 -1
  734. package/src/lib/compose/action/action.dialog.ts +0 -57
  735. package/src/lib/compose/action/action.pane.dialog.exp.ts +0 -77
  736. package/src/lib/compose/action/action.pane.dialog.html +0 -12
  737. package/src/lib/compose/action/assign-action.component.html +0 -35
  738. package/src/lib/compose/action/assign-action.component.ts +0 -77
  739. package/src/lib/compose/action/return-action.component.html +0 -13
  740. package/src/lib/compose/action/return-action.component.ts +0 -38
  741. package/src/lib/compose/attachments/attachments.component.html +0 -23
  742. package/src/lib/compose/attachments/attachments.component.scss +0 -21
  743. package/src/lib/compose/attachments/attachments.component.ts +0 -114
  744. package/src/lib/compose/attachments/preview/attachment-preview.component.html +0 -15
  745. package/src/lib/compose/attachments/preview/attachment-preview.component.scss +0 -36
  746. package/src/lib/compose/attachments/preview/attachment-preview.component.ts +0 -140
  747. package/src/lib/compose/attachments/progress-button.directive.ts +0 -18
  748. package/src/lib/compose/can-deactivate-changes.service.ts +0 -22
  749. package/src/lib/compose/comments/_comments-theme.scss +0 -82
  750. package/src/lib/compose/comments/comment.component.html +0 -36
  751. package/src/lib/compose/comments/comment.component.ts +0 -160
  752. package/src/lib/compose/comments/comments.component.html +0 -27
  753. package/src/lib/compose/comments/comments.component.scss +0 -33
  754. package/src/lib/compose/comments/comments.component.ts +0 -220
  755. package/src/lib/compose/comments/comments.pane.component.ts +0 -41
  756. package/src/lib/compose/comments/edit-comment.component.html +0 -3
  757. package/src/lib/compose/comments/edit-comment.component.ts +0 -35
  758. package/src/lib/compose/comments/edits.component.html +0 -7
  759. package/src/lib/compose/comments/edits.component.ts +0 -33
  760. package/src/lib/compose/comments/quick-comment.component.exp.ts +0 -60
  761. package/src/lib/compose/comments/quick-comment.component.html +0 -5
  762. package/src/lib/compose/comments/quick-comment.component.scss +0 -11
  763. package/src/lib/compose/comments/votes.component.html +0 -7
  764. package/src/lib/compose/comments/votes.component.ts +0 -38
  765. package/src/lib/compose/compose-resolve.service.ts +0 -42
  766. package/src/lib/compose/compose.mobile.component.html +0 -67
  767. package/src/lib/compose/compose.mobile.component.scss +0 -14
  768. package/src/lib/compose/compose.mobile.component.ts +0 -97
  769. package/src/lib/compose/compose.pane.component.html +0 -67
  770. package/src/lib/compose/compose.pane.component.scss +0 -6
  771. package/src/lib/compose/compose.pane.component.ts +0 -187
  772. package/src/lib/compose/copy/copy.dialog.html +0 -21
  773. package/src/lib/compose/copy/copy.dialog.ts +0 -40
  774. package/src/lib/compose/dismiss.service.ts +0 -26
  775. package/src/lib/compose/document-resolver.service.ts +0 -13
  776. package/src/lib/compose/document.component.html +0 -5
  777. package/src/lib/compose/document.component.ts +0 -41
  778. package/src/lib/compose/document.mobile.component.ts +0 -20
  779. package/src/lib/compose/document.pane.component.ts +0 -22
  780. package/src/lib/compose/events/events.component.html +0 -6
  781. package/src/lib/compose/events/events.component.ts +0 -21
  782. package/src/lib/compose/form-ref.ts +0 -53
  783. package/src/lib/compose/form-selector/form-selector.sheet.html +0 -10
  784. package/src/lib/compose/form-selector/form-selector.sheet.ts +0 -74
  785. package/src/lib/compose/form.component.html +0 -13
  786. package/src/lib/compose/form.component.ts +0 -446
  787. package/src/lib/compose/maps/maps.component.html +0 -3
  788. package/src/lib/compose/maps/maps.component.ts +0 -22
  789. package/src/lib/compose/new-menu.component.html +0 -13
  790. package/src/lib/compose/new-menu.component.scss +0 -11
  791. package/src/lib/compose/new-menu.component.ts +0 -106
  792. package/src/lib/compose/privilage.directive.ts +0 -43
  793. package/src/lib/compose/recipient-resolver.service.ts +0 -15
  794. package/src/lib/compose/save-changes.dialog.html +0 -13
  795. package/src/lib/compose/save-changes.dialog.ts +0 -10
  796. package/src/lib/compose/state.component.ts +0 -29
  797. package/src/lib/compose/tag/tags.component.html +0 -22
  798. package/src/lib/compose/tag/tags.component.scss +0 -1
  799. package/src/lib/compose/tag/tags.component.ts +0 -83
  800. package/src/lib/compose/trace/flow.component.html +0 -19
  801. package/src/lib/compose/trace/flow.component.scss +0 -7
  802. package/src/lib/compose/trace/flow.component.ts +0 -695
  803. package/src/lib/compose/trace/people.component.ts +0 -33
  804. package/src/lib/compose/trace/trace.base.ts +0 -72
  805. package/src/lib/compose/trace/trace.component.html +0 -57
  806. package/src/lib/compose/trace/trace.component.scss +0 -21
  807. package/src/lib/compose/trace/trace.component.ts +0 -368
  808. package/src/lib/compose/trace/trace.pane.component.html +0 -3
  809. package/src/lib/compose/trace/trace.pane.component.scss +0 -5
  810. package/src/lib/compose/trace/trace.pane.component.ts +0 -47
  811. package/src/lib/compose/version-compare/_compare-theme.scss +0 -147
  812. package/src/lib/compose/version-compare/version-compare.component.ts +0 -49
  813. package/src/lib/compose/version-compare/version-compare.directive.ts +0 -292
  814. package/src/lib/compose/version-compare/version.pane.component.html +0 -19
  815. package/src/lib/compose/version-compare/version.pane.component.scss +0 -8
  816. package/src/lib/compose/version-compare/version.pane.component.ts +0 -53
  817. package/src/lib/core/NgComponentOutlet.ts +0 -31
  818. package/src/lib/core/account.service.ts +0 -30
  819. package/src/lib/core/animated-icon/animated-icon.directive.html +0 -3
  820. package/src/lib/core/animated-icon/animated-icon.directive.scss +0 -12
  821. package/src/lib/core/animated-icon/animated-icon.directive.ts +0 -41
  822. package/src/lib/core/animations.ts +0 -207
  823. package/src/lib/core/authentication.ts +0 -7
  824. package/src/lib/core/avatar/_avatar-theme.scss +0 -60
  825. package/src/lib/core/avatar/avatar.component.html +0 -6
  826. package/src/lib/core/avatar/avatar.component.ts +0 -108
  827. package/src/lib/core/base.ts +0 -47
  828. package/src/lib/core/can-activate.service.exp.ts +0 -31
  829. package/src/lib/core/colors.ts +0 -322
  830. package/src/lib/core/component-factory-resolver.ts +0 -67
  831. package/src/lib/core/configuration.ts +0 -121
  832. package/src/lib/core/controls/_daterange-theme.scss +0 -16
  833. package/src/lib/core/controls/address.input.ts +0 -163
  834. package/src/lib/core/controls/auto-complete.input.ts +0 -218
  835. package/src/lib/core/controls/combination-picker-body.html +0 -34
  836. package/src/lib/core/controls/combination-picker-body.scss +0 -40
  837. package/src/lib/core/controls/combination-picker-body.ts +0 -194
  838. package/src/lib/core/controls/combination-picker.html +0 -6
  839. package/src/lib/core/controls/combination-picker.scss +0 -9
  840. package/src/lib/core/controls/combination-picker.ts +0 -243
  841. package/src/lib/core/controls/combination-pool.html +0 -10
  842. package/src/lib/core/controls/combination-pool.scss +0 -35
  843. package/src/lib/core/controls/combination-pool.ts +0 -92
  844. package/src/lib/core/controls/file.input.html +0 -48
  845. package/src/lib/core/controls/file.input.scss +0 -40
  846. package/src/lib/core/controls/file.input.ts +0 -363
  847. package/src/lib/core/controls/select.input.ts +0 -211
  848. package/src/lib/core/controls/time-picker.html +0 -4
  849. package/src/lib/core/controls/time-picker.ts +0 -199
  850. package/src/lib/core/controls/timespan.input.ts +0 -175
  851. package/src/lib/core/datasource.service.ts +0 -80
  852. package/src/lib/core/decorators.ts +0 -56
  853. package/src/lib/core/firebase.service.ts +0 -55
  854. package/src/lib/core/functions.ts +0 -241
  855. package/src/lib/core/guide/_guide-theme.scss +0 -197
  856. package/src/lib/core/guide/guide.component.html +0 -20
  857. package/src/lib/core/guide/guide.component.ts +0 -210
  858. package/src/lib/core/guide/guide.service.ts +0 -98
  859. package/src/lib/core/http.interceptor.ts +0 -80
  860. package/src/lib/core/hub.service.ts +0 -202
  861. package/src/lib/core/identity/identity.component.html +0 -2
  862. package/src/lib/core/identity/identity.component.ts +0 -57
  863. package/src/lib/core/info/attachment-info.service.ts +0 -48
  864. package/src/lib/core/info/document-info.service.ts +0 -14
  865. package/src/lib/core/info/location-info.component.scss +0 -13
  866. package/src/lib/core/info/location-info.component.ts +0 -64
  867. package/src/lib/core/info/map-info.ts +0 -33
  868. package/src/lib/core/layout/autocomplete.field.ts +0 -41
  869. package/src/lib/core/layout/checkbox.field.ts +0 -21
  870. package/src/lib/core/layout/checkbox.scss +0 -13
  871. package/src/lib/core/layout/checkbox.ts +0 -21
  872. package/src/lib/core/layout/date-range.field.ts +0 -32
  873. package/src/lib/core/layout/date.field.ts +0 -26
  874. package/src/lib/core/layout/expression.field.ts +0 -26
  875. package/src/lib/core/layout/file.field.ts +0 -27
  876. package/src/lib/core/layout/html.field.ts +0 -28
  877. package/src/lib/core/layout/input.base.ts +0 -12
  878. package/src/lib/core/layout/input.field.ts +0 -43
  879. package/src/lib/core/layout/layout.component.scss +0 -9
  880. package/src/lib/core/layout/layout.component.ts +0 -189
  881. package/src/lib/core/layout/numeric.field.ts +0 -24
  882. package/src/lib/core/layout/select.field.ts +0 -52
  883. package/src/lib/core/layout/switch.field.ts +0 -21
  884. package/src/lib/core/layout/textarea.field.ts +0 -21
  885. package/src/lib/core/layout/timespan.field.ts +0 -25
  886. package/src/lib/core/lottie-animation.ts +0 -37
  887. package/src/lib/core/mailbox.service.ts +0 -453
  888. package/src/lib/core/models.ts +0 -681
  889. package/src/lib/core/none.component.scss +0 -26
  890. package/src/lib/core/none.component.ts +0 -28
  891. package/src/lib/core/pipes/action.pipe.ts +0 -18
  892. package/src/lib/core/pipes/calendar.pipe.ts +0 -84
  893. package/src/lib/core/pipes/date-format.pipe.ts +0 -12
  894. package/src/lib/core/pipes/daterange.pipe.ts +0 -45
  895. package/src/lib/core/pipes/difference.pipe.ts +0 -9
  896. package/src/lib/core/pipes/duration-format.pipe.ts +0 -42
  897. package/src/lib/core/pipes/duration.pipe.ts +0 -13
  898. package/src/lib/core/pipes/form.pipe.ts +0 -19
  899. package/src/lib/core/pipes/join.pipe.ts +0 -10
  900. package/src/lib/core/pipes/role.pipe.ts +0 -19
  901. package/src/lib/core/pipes/sanitize-html.pipe.ts +0 -10
  902. package/src/lib/core/pipes/sort.pipe.ts +0 -34
  903. package/src/lib/core/pipes/state.pipe.ts +0 -19
  904. package/src/lib/core/pipes/time-ago.pipe.ts +0 -59
  905. package/src/lib/core/pipes/translate.pipe.ts +0 -22
  906. package/src/lib/core/pipes/type-value.pipe.ts +0 -37
  907. package/src/lib/core/pipes/user-name.pipe.ts +0 -14
  908. package/src/lib/core/popup/_popup-theme.scss +0 -363
  909. package/src/lib/core/popup/popup-ref.ts +0 -19
  910. package/src/lib/core/popup/popup.component.html +0 -6
  911. package/src/lib/core/popup/popup.component.ts +0 -40
  912. package/src/lib/core/popup/popup.service.ts +0 -156
  913. package/src/lib/core/popup/tooltip.directive.ts +0 -58
  914. package/src/lib/core/prompt/ask/ask.dialog.html +0 -6
  915. package/src/lib/core/prompt/ask/ask.dialog.ts +0 -35
  916. package/src/lib/core/prompt/mask/mask.component.html +0 -1
  917. package/src/lib/core/prompt/mask/mask.component.scss +0 -14
  918. package/src/lib/core/prompt/mask/mask.component.ts +0 -15
  919. package/src/lib/core/prompt.service.ts +0 -81
  920. package/src/lib/core/router.ts +0 -29
  921. package/src/lib/core/session.service.ts +0 -255
  922. package/src/lib/core/slots/_slots-theme.scss +0 -140
  923. package/src/lib/core/slots/extended-tab.component.exp.ts +0 -35
  924. package/src/lib/core/slots/extended-tab.component.html +0 -0
  925. package/src/lib/core/slots/intro.pane.component.exp.ts +0 -23
  926. package/src/lib/core/slots/intro.pane.component.html +0 -22
  927. package/src/lib/core/slots/intro.pane.component.scss +0 -8
  928. package/src/lib/core/slots/pane-ref.ts +0 -162
  929. package/src/lib/core/slots/router.directive.ts +0 -55
  930. package/src/lib/core/slots/router.service.ts +0 -54
  931. package/src/lib/core/slots/slot.component.exp.ts +0 -49
  932. package/src/lib/core/slots/slot.component.html +0 -15
  933. package/src/lib/core/slots/slot.component.scss +0 -18
  934. package/src/lib/core/slots/slots.component.html +0 -67
  935. package/src/lib/core/slots/slots.component.scss +0 -163
  936. package/src/lib/core/slots/slots.component.ts +0 -1171
  937. package/src/lib/core/tagging/documents.component.html +0 -11
  938. package/src/lib/core/tagging/documents.component.ts +0 -19
  939. package/src/lib/core/tagging/edit-input.component.html +0 -41
  940. package/src/lib/core/tagging/edit-input.component.scss +0 -21
  941. package/src/lib/core/tagging/edit-input.component.ts +0 -211
  942. package/src/lib/core/tagging/emoji.component.ts +0 -23
  943. package/src/lib/core/tagging/tagging-item.directive.ts +0 -34
  944. package/src/lib/core/tagging/tagging.component-base.ts +0 -29
  945. package/src/lib/core/tagging/tagging.component.scss +0 -22
  946. package/src/lib/core/tagging/tagging.directive.ts +0 -130
  947. package/src/lib/core/tagging/tagging.pipe.ts +0 -76
  948. package/src/lib/core/tagging/users.component.html +0 -13
  949. package/src/lib/core/tagging/users.component.ts +0 -28
  950. package/src/lib/core/translate.service.ts +0 -103
  951. package/src/lib/core/translations.ts +0 -1104
  952. package/src/lib/core/window-title.service.ts +0 -54
  953. package/src/lib/cube/accum/accum.component.html +0 -16
  954. package/src/lib/cube/accum/accum.component.ts +0 -265
  955. package/src/lib/cube/chart/chart.component.html +0 -32
  956. package/src/lib/cube/chart/chart.component.ts +0 -329
  957. package/src/lib/cube/cube-info.service.ts +0 -135
  958. package/src/lib/cube/cube-menu.component.html +0 -13
  959. package/src/lib/cube/cube-menu.component.ts +0 -18
  960. package/src/lib/cube/cube-view.component.html +0 -66
  961. package/src/lib/cube/cube-view.component.ts +0 -186
  962. package/src/lib/cube/cube.service.ts +0 -483
  963. package/src/lib/cube/declarations.ts +0 -24
  964. package/src/lib/cube/explore/document-item.component.ts +0 -28
  965. package/src/lib/cube/explore/explore-item.component.scss +0 -4
  966. package/src/lib/cube/explore/explore-item.component.ts +0 -23
  967. package/src/lib/cube/explore/explore-items.component.html +0 -25
  968. package/src/lib/cube/explore/explore-items.component.scss +0 -7
  969. package/src/lib/cube/explore/explore-items.component.ts +0 -185
  970. package/src/lib/cube/explore/explore.pane.component.html +0 -12
  971. package/src/lib/cube/explore/explore.pane.component.ts +0 -75
  972. package/src/lib/cube/explore/item-resolver.service.ts +0 -24
  973. package/src/lib/cube/explore/item.pane.component.html +0 -3
  974. package/src/lib/cube/explore/item.pane.component.ts +0 -23
  975. package/src/lib/cube/filter/filter-tags.component.exp.ts +0 -70
  976. package/src/lib/cube/filter/filter-tags.component.html +0 -11
  977. package/src/lib/cube/filter/filter-tags.component.scss +0 -0
  978. package/src/lib/cube/filter/filter-tags.component.spec.ts +0 -25
  979. package/src/lib/cube/filter/filter.component.html +0 -25
  980. package/src/lib/cube/filter/filter.component.scss +0 -8
  981. package/src/lib/cube/filter/filter.component.ts +0 -116
  982. package/src/lib/cube/grid/grid.component.html +0 -29
  983. package/src/lib/cube/grid/grid.component.scss +0 -10
  984. package/src/lib/cube/grid/grid.component.ts +0 -223
  985. package/src/lib/cube/grid/spreadsheet.component.ts +0 -380
  986. package/src/lib/cube/matrix/_matrix.theme.scss +0 -86
  987. package/src/lib/cube/matrix/matrix.base.ts +0 -149
  988. package/src/lib/cube/matrix/matrix.mobile.component.html +0 -28
  989. package/src/lib/cube/matrix/matrix.mobile.component.ts +0 -60
  990. package/src/lib/cube/matrix/matrix.pane.component.html +0 -34
  991. package/src/lib/cube/matrix/matrix.pane.component.scss +0 -10
  992. package/src/lib/cube/matrix/matrix.pane.component.ts +0 -71
  993. package/src/lib/cube/matrix/popup.component.html +0 -32
  994. package/src/lib/cube/matrix/popup.component.scss +0 -7
  995. package/src/lib/cube/matrix/popup.component.ts +0 -57
  996. package/src/lib/cube/matrix/table.component.html +0 -43
  997. package/src/lib/cube/matrix/table.component.scss +0 -21
  998. package/src/lib/cube/matrix/table.component.ts +0 -514
  999. package/src/lib/cube/parallel/item.ts +0 -47
  1000. package/src/lib/cube/parallel/parallel.component.html +0 -17
  1001. package/src/lib/cube/parallel/parallel.component.scss +0 -13
  1002. package/src/lib/cube/parallel/parallel.component.ts +0 -167
  1003. package/src/lib/cube/pivot/pivot.component.html +0 -14
  1004. package/src/lib/cube/pivot/pivot.component.ts +0 -514
  1005. package/src/lib/cube/sum/_sum.theme.scss +0 -63
  1006. package/src/lib/cube/sum/sum.component.html +0 -60
  1007. package/src/lib/cube/sum/sum.component.scss +0 -94
  1008. package/src/lib/cube/sum/sum.component.ts +0 -438
  1009. package/src/lib/cube/view-base.ts +0 -82
  1010. package/src/lib/cube/view.mobile.component.html +0 -38
  1011. package/src/lib/cube/view.mobile.component.scss +0 -9
  1012. package/src/lib/cube/view.mobile.component.ts +0 -115
  1013. package/src/lib/cube/view.pane.component.html +0 -25
  1014. package/src/lib/cube/view.pane.component.scss +0 -12
  1015. package/src/lib/cube/view.pane.component.ts +0 -76
  1016. package/src/lib/dashboard/_table.widget.scss +0 -19
  1017. package/src/lib/dashboard/actions/actions.widget.html +0 -6
  1018. package/src/lib/dashboard/actions/actions.widget.ts +0 -118
  1019. package/src/lib/dashboard/cube/accum-cube.widget.html +0 -15
  1020. package/src/lib/dashboard/cube/accum-cube.widget.ts +0 -154
  1021. package/src/lib/dashboard/cube/cube-analysis.base.ts +0 -113
  1022. package/src/lib/dashboard/cube/cube-analysis.widget.ts +0 -44
  1023. package/src/lib/dashboard/cube/cube-chart.widget.html +0 -7
  1024. package/src/lib/dashboard/cube/cube-chart.widget.ts +0 -144
  1025. package/src/lib/dashboard/cube/documents.widget.html +0 -19
  1026. package/src/lib/dashboard/cube/documents.widget.ts +0 -57
  1027. package/src/lib/dashboard/cube/filter/filter.component.html +0 -3
  1028. package/src/lib/dashboard/cube/filter/filter.component.ts +0 -51
  1029. package/src/lib/dashboard/cube/gauge.component.exp.ts +0 -18
  1030. package/src/lib/dashboard/dashboard.component.html +0 -18
  1031. package/src/lib/dashboard/dashboard.component.scss +0 -36
  1032. package/src/lib/dashboard/dashboard.component.ts +0 -45
  1033. package/src/lib/dashboard/dashboard.pane.component.ts +0 -19
  1034. package/src/lib/dashboard/recents/recents.widget.html +0 -32
  1035. package/src/lib/dashboard/recents/recents.widget.scss +0 -9
  1036. package/src/lib/dashboard/recents/recents.widget.ts +0 -89
  1037. package/src/lib/dashboard/score/activity.widget.html +0 -9
  1038. package/src/lib/dashboard/score/activity.widget.ts +0 -164
  1039. package/src/lib/dashboard/score/compare-departments.widget.html +0 -8
  1040. package/src/lib/dashboard/score/compare-departments.widget.ts +0 -210
  1041. package/src/lib/dashboard/score/peers-performance.widget.html +0 -23
  1042. package/src/lib/dashboard/score/peers-performance.widget.ts +0 -254
  1043. package/src/lib/dashboard/score/pending-results.widget.html +0 -29
  1044. package/src/lib/dashboard/score/pending-results.widget.ts +0 -57
  1045. package/src/lib/dashboard/score/personal-score.widget.html +0 -18
  1046. package/src/lib/dashboard/score/personal-score.widget.ts +0 -225
  1047. package/src/lib/dashboard/widget-item.component.ts +0 -90
  1048. package/src/lib/dashboard/widget-ref.ts +0 -20
  1049. package/src/lib/desktop.module.ts +0 -98
  1050. package/src/lib/home/_home-theme.scss +0 -156
  1051. package/src/lib/home/about/about.dialog.html +0 -19
  1052. package/src/lib/home/about/about.dialog.ts +0 -18
  1053. package/src/lib/home/home-base.component.ts +0 -100
  1054. package/src/lib/home/home.desktop.component.html +0 -87
  1055. package/src/lib/home/home.desktop.component.scss +0 -66
  1056. package/src/lib/home/home.desktop.component.ts +0 -188
  1057. package/src/lib/home/home.mobile.component.html +0 -81
  1058. package/src/lib/home/home.mobile.component.scss +0 -49
  1059. package/src/lib/home/home.mobile.component.ts +0 -105
  1060. package/src/lib/home/notifications/notifications.component.html +0 -18
  1061. package/src/lib/home/notifications/notifications.component.scss +0 -36
  1062. package/src/lib/home/notifications/notifications.component.ts +0 -55
  1063. package/src/lib/home/options/options.component.html +0 -41
  1064. package/src/lib/home/options/options.component.scss +0 -16
  1065. package/src/lib/home/options/options.component.ts +0 -95
  1066. package/src/lib/home/outofoffice/outofoffice.component.html +0 -5
  1067. package/src/lib/home/outofoffice/outofoffice.component.scss +0 -10
  1068. package/src/lib/home/outofoffice/outofoffice.component.ts +0 -33
  1069. package/src/lib/home/progress-bar.directive.exp.ts +0 -24
  1070. package/src/lib/home/search.service.ts +0 -87
  1071. package/src/lib/home/sign/sign.component.html +0 -15
  1072. package/src/lib/home/sign/sign.component.ts +0 -42
  1073. package/src/lib/home/submenu.directive.exp.ts +0 -43
  1074. package/src/lib/home/tools.component.html +0 -27
  1075. package/src/lib/home/tools.component.scss +0 -15
  1076. package/src/lib/home/tools.component.ts +0 -72
  1077. package/src/lib/home/welcome/welcome.dialog.exp.ts +0 -35
  1078. package/src/lib/home/welcome/welcome.dialog.html +0 -14
  1079. package/src/lib/impersonate/impersonate.component.html +0 -17
  1080. package/src/lib/impersonate/impersonate.component.scss +0 -3
  1081. package/src/lib/impersonate/impersonate.component.spec.ts +0 -24
  1082. package/src/lib/impersonate/impersonate.component.ts +0 -60
  1083. package/src/lib/mobile.module.ts +0 -39
  1084. package/src/lib/modules/chart.module.ts +0 -37
  1085. package/src/lib/modules/circular-gauge.module.ts +0 -11
  1086. package/src/lib/modules/date.adapter.ts +0 -31
  1087. package/src/lib/modules/datepicker.intl.ts +0 -35
  1088. package/src/lib/modules/diagram.module.ts +0 -20
  1089. package/src/lib/modules/gantt.module.ts +0 -12
  1090. package/src/lib/modules/grid.module.ts +0 -16
  1091. package/src/lib/modules/material.module.ts +0 -104
  1092. package/src/lib/modules/paginator.intl.ts +0 -16
  1093. package/src/lib/modules/pivot.module.ts +0 -13
  1094. package/src/lib/modules/schedule.module.ts +0 -12
  1095. package/src/lib/modules/spreadsheet.module.ts +0 -17
  1096. package/src/lib/modules/stepper.intl.ts +0 -12
  1097. package/src/lib/modules/texteditor.module.ts +0 -16
  1098. package/src/lib/notifications/filter.component.html +0 -6
  1099. package/src/lib/notifications/filter.component.ts +0 -16
  1100. package/src/lib/notifications/notifications-table.component.html +0 -54
  1101. package/src/lib/notifications/notifications-table.component.scss +0 -14
  1102. package/src/lib/notifications/notifications-table.component.ts +0 -94
  1103. package/src/lib/notifications/notifications.component-base.ts +0 -49
  1104. package/src/lib/notifications/notifications.mobile.component.ts +0 -13
  1105. package/src/lib/notifications/notifications.pane.component.ts +0 -16
  1106. package/src/lib/notifications/notifications.service.ts +0 -66
  1107. package/src/lib/notifications/types/commented.notification.html +0 -14
  1108. package/src/lib/notifications/types/commented.notification.ts +0 -51
  1109. package/src/lib/notifications/types/cube-anomaly.notification.ts +0 -51
  1110. package/src/lib/notifications/types/escalated.notification.ts +0 -36
  1111. package/src/lib/notifications/types/liked.notification.ts +0 -49
  1112. package/src/lib/notifications/types/long-running-task.notification.ts +0 -23
  1113. package/src/lib/notifications/types/notification-base.ts +0 -37
  1114. package/src/lib/notifications/types/nudge.notification.ts +0 -32
  1115. package/src/lib/notifications/types/state-changed.notification.ts +0 -27
  1116. package/src/lib/notifications/types/tagged.notification.ts +0 -46
  1117. package/src/lib/notifications/types/text.notification.ts +0 -13
  1118. package/src/lib/notifications/types/upcoming-event.notification.ts +0 -25
  1119. package/src/lib/options/options.component.html +0 -149
  1120. package/src/lib/options/options.component.scss +0 -19
  1121. package/src/lib/options/options.component.ts +0 -244
  1122. package/src/lib/options/options.service.ts +0 -30
  1123. package/src/lib/reports/arguments-component.ts +0 -73
  1124. package/src/lib/reports/cube/grid-documents.component.html +0 -25
  1125. package/src/lib/reports/cube/grid-documents.component.ts +0 -85
  1126. package/src/lib/reports/cube/table-documents.component.css +0 -18
  1127. package/src/lib/reports/cube/table-documents.component.html +0 -30
  1128. package/src/lib/reports/cube/table-documents.component.ts +0 -65
  1129. package/src/lib/reports/cube/usage-args.component.html +0 -3
  1130. package/src/lib/reports/cube/usage-args.component.ts +0 -55
  1131. package/src/lib/reports/cube/usage-base.ts +0 -112
  1132. package/src/lib/reports/cube/usage-browse.component.exp.ts +0 -93
  1133. package/src/lib/reports/cube/usage-browse.component.html +0 -27
  1134. package/src/lib/reports/cube/usage-browse.component.scss +0 -24
  1135. package/src/lib/reports/cube/usage-chart.component.html +0 -11
  1136. package/src/lib/reports/cube/usage-chart.component.ts +0 -387
  1137. package/src/lib/reports/cube/usage-pivot.component.html +0 -19
  1138. package/src/lib/reports/cube/usage-pivot.component.ts +0 -252
  1139. package/src/lib/reports/report-ref.ts +0 -42
  1140. package/src/lib/reports/report-viewer.component.html +0 -2
  1141. package/src/lib/reports/report-viewer.component.scss +0 -12
  1142. package/src/lib/reports/report-viewer.component.ts +0 -162
  1143. package/src/lib/reports/report.mobile.component.html +0 -16
  1144. package/src/lib/reports/report.mobile.component.scss +0 -7
  1145. package/src/lib/reports/report.mobile.component.ts +0 -107
  1146. package/src/lib/reports/report.pane.component.html +0 -8
  1147. package/src/lib/reports/report.pane.component.scss +0 -9
  1148. package/src/lib/reports/report.pane.component.ts +0 -78
  1149. package/src/lib/reports/reports-menu.component.html +0 -9
  1150. package/src/lib/reports/reports-menu.component.ts +0 -20
  1151. package/src/lib/reports/substitution/substitution.component.html +0 -26
  1152. package/src/lib/reports/substitution/substitution.component.ts +0 -34
  1153. package/src/lib/reports/table/table-view.component.html +0 -8
  1154. package/src/lib/reports/table/table-view.component.scss +0 -0
  1155. package/src/lib/reports/table/table-view.component.ts +0 -33
  1156. package/src/lib/reports/tasks/tasks.component.html +0 -21
  1157. package/src/lib/reports/tasks/tasks.component.ts +0 -114
  1158. package/src/lib/reports/timeline/timeline.component.exp.ts +0 -225
  1159. package/src/lib/reports/timeline/timeline.component.html +0 -9
  1160. package/src/lib/routes.desktop.ts +0 -196
  1161. package/src/lib/routes.mobile.ts +0 -70
  1162. package/src/lib/scheduler/schedule.component.html +0 -36
  1163. package/src/lib/scheduler/schedule.component.scss +0 -13
  1164. package/src/lib/scheduler/schedule.component.ts +0 -158
  1165. package/src/lib/scheduler/scheduler.mobile.component.ts +0 -30
  1166. package/src/lib/scheduler/scheduler.pane.component.ts +0 -49
  1167. package/src/lib/shared.module.ts +0 -386
  1168. package/src/lib/system.module.ts +0 -75
  1169. package/src/lib/views/_views.theme.scss +0 -18
  1170. package/src/lib/views/cube/chart.component.html +0 -24
  1171. package/src/lib/views/cube/chart.component.ts +0 -88
  1172. package/src/lib/views/cube/cube-base.ts +0 -126
  1173. package/src/lib/views/cube/explore.component.html +0 -33
  1174. package/src/lib/views/cube/explore.component.ts +0 -82
  1175. package/src/lib/views/cube/filter.component.exp.ts +0 -66
  1176. package/src/lib/views/cube/filter.component.html +0 -25
  1177. package/src/lib/views/cube/matrix.component.html +0 -42
  1178. package/src/lib/views/cube/matrix.component.scss +0 -3
  1179. package/src/lib/views/cube/matrix.component.ts +0 -107
  1180. package/src/lib/views/cube/parallel.component.html +0 -10
  1181. package/src/lib/views/cube/parallel.component.scss +0 -13
  1182. package/src/lib/views/cube/parallel.component.ts +0 -62
  1183. package/src/lib/views/cube/pivot.component.html +0 -8
  1184. package/src/lib/views/cube/pivot.component.ts +0 -62
  1185. package/src/lib/views/cube/sum.component.html +0 -30
  1186. package/src/lib/views/cube/sum.component.scss +0 -3
  1187. package/src/lib/views/cube/sum.component.ts +0 -71
  1188. package/src/lib/views/cube/view.component.html +0 -34
  1189. package/src/lib/views/cube/view.component.scss +0 -12
  1190. package/src/lib/views/cube/view.component.ts +0 -103
  1191. package/src/lib/views/document-view-ref.ts +0 -34
  1192. package/src/lib/views/timeline/timeline.component.exp.ts +0 -333
  1193. package/src/lib/views/timeline/timeline.component.html +0 -6
  1194. package/src/lib/views/timeline/timeline.component.scss +0 -6
  1195. package/src/lib/views/view-item.component.ts +0 -67
  1196. package/src/lib/views/views.component.html +0 -4
  1197. package/src/lib/views/views.component.scss +0 -33
  1198. package/src/lib/views/views.component.ts +0 -23
  1199. package/src/lib/views/views.mobile.component.ts +0 -19
  1200. package/src/lib/views/views.pane.component.ts +0 -31
  1201. package/src/polyfills.ts +0 -81
  1202. package/src/public-api.ts +0 -147
  1203. package/src/styles/_app.scss +0 -316
  1204. package/src/styles/_emoji-mart.scss +0 -504
  1205. package/src/styles/_syncfusion-base-definitions.scss +0 -63
  1206. package/src/styles/_syncfusion-dark-definitions.scss +0 -23
  1207. package/src/styles/_syncfusion-icons.scss +0 -57
  1208. package/src/styles/_syncfusion-light-definitions.scss +0 -23
  1209. package/src/styles/_syncfusion.scss +0 -22
  1210. package/src/styles/brown.scss +0 -15
  1211. package/src/styles/build.ps1 +0 -25
  1212. package/src/styles/dark.scss +0 -24
  1213. package/src/styles/deep-purple-light-blue.scss +0 -22
  1214. package/src/styles/deep-purple-teal.scss +0 -22
  1215. package/src/styles/default.scss +0 -23
  1216. package/src/styles/diagram-icons.eot +0 -0
  1217. package/src/styles/diagram-icons.ttf +0 -0
  1218. package/src/styles/green.scss +0 -14
  1219. package/src/styles/indigo.scss +0 -15
  1220. package/src/test.ts +0 -26
  1221. package/tsconfig.lib.json +0 -25
  1222. package/tsconfig.lib.prod.json +0 -10
  1223. package/tsconfig.spec.json +0 -18
@@ -0,0 +1,200 @@
1
+ import { MATERIAL_PALETTES } from "./colors";
2
+ const IMAGE_TYPE = ['image/png', 'image/jpeg', 'image/jpg', 'image/gif'];
3
+ export function mapToArray(map) {
4
+ return Object.keys(map).map(k => ({ key: k, value: map[k] }));
5
+ }
6
+ export function isImage(contentType) {
7
+ return IMAGE_TYPE.indexOf(contentType) > -1;
8
+ }
9
+ export function cleanup(params) {
10
+ Object.keys(params).forEach(k => {
11
+ const val = params[k];
12
+ if (val === null || val === undefined || (isArray(val) && !val.length))
13
+ delete params[k];
14
+ });
15
+ return params;
16
+ }
17
+ export function outOfBound(element) {
18
+ const bounding = element.getBoundingClientRect();
19
+ return bounding.top < 0 ||
20
+ bounding.left < 0 ||
21
+ bounding.right > document.documentElement.clientWidth ||
22
+ bounding.bottom > document.documentElement.clientHeight;
23
+ }
24
+ const IS_MOBILE = /Android|webOS|iPhone|iPad|iPod|BlackBerry|IEMobile|Opera Mini/i.test(navigator.userAgent);
25
+ export function isMobile() {
26
+ return IS_MOBILE /*|| document.cookie.indexOf('aria=1') > -1*/;
27
+ }
28
+ export function isFunction(val) {
29
+ return typeof val === 'function';
30
+ }
31
+ export function isBoolean(val) {
32
+ return typeof val === 'boolean';
33
+ }
34
+ export function isObject(val) {
35
+ return val !== null && typeof val === 'object';
36
+ }
37
+ export function isPrimitive(val) {
38
+ return typeof val !== 'object' && !Array.isArray(val);
39
+ }
40
+ export function isPromise(obj) {
41
+ return obj instanceof Promise;
42
+ }
43
+ export function isDate(val) {
44
+ return val instanceof Date;
45
+ }
46
+ export function isArray(val) {
47
+ return Array.isArray(val);
48
+ }
49
+ export function isString(val) {
50
+ return typeof val === 'string' || val instanceof String;
51
+ }
52
+ export function getWarn(mode = 500) {
53
+ return MATERIAL_PALETTES['red'][mode];
54
+ }
55
+ export function playAudio(name) {
56
+ try {
57
+ const audio = new Audio();
58
+ audio.src = `/assets/sounds/${name}.ogg`;
59
+ audio.load();
60
+ audio.play();
61
+ }
62
+ catch (e) {
63
+ console.log(e);
64
+ }
65
+ }
66
+ /**
67
+ *
68
+ * @param o1
69
+ * @param o2
70
+ */
71
+ Object.deepAssign = function (o1, o2) {
72
+ o2 && Object.keys(o2).forEach(p => {
73
+ const val = o2[p], val2 = o1[p];
74
+ if (val2 === undefined || val2 === null || isPrimitive(val))
75
+ o1[p] = val;
76
+ else if (isArray(val)) {
77
+ if (val.length && !isPrimitive(val[0])) {
78
+ for (let i = 0; i < val.length; i++) {
79
+ if (val2[i] !== undefined)
80
+ Object.deepAssign(val2[i], val[i]);
81
+ else
82
+ val2.push(val[i]);
83
+ }
84
+ val2.splice(val.length);
85
+ }
86
+ else
87
+ //(val2 as any[]).splice(0, val2.length, ...val);
88
+ o1[p] = val;
89
+ }
90
+ else if (isObject(val))
91
+ Object.deepAssign(val2, val);
92
+ });
93
+ return o1;
94
+ };
95
+ function generateEncryptionMap() {
96
+ const values = {};
97
+ for (let i = 65; i < 91; i++) {
98
+ const d = (i - 65).toString(), c = String.fromCharCode(i);
99
+ values[d] = c;
100
+ values[c] = d;
101
+ }
102
+ for (let i = 97; i < 123; i++) {
103
+ const d = (i - 71).toString(), c = String.fromCharCode(i);
104
+ values[d] = c;
105
+ values[c] = d;
106
+ }
107
+ return values;
108
+ }
109
+ const decode = generateEncryptionMap();
110
+ String.prototype.decodeId = function () {
111
+ let v = '';
112
+ for (let i = 0; i < this.length; i++) {
113
+ const c = this.charAt(i);
114
+ v += decode[c];
115
+ }
116
+ return parseInt(v);
117
+ };
118
+ Number.prototype.encodeId = function () {
119
+ let v = '', d = this.toString();
120
+ while (d.length > 0) {
121
+ let i = 51, c = i.toString();
122
+ while (!d.startsWith(c)) {
123
+ --i, c = i.toString();
124
+ }
125
+ v += decode[c];
126
+ d = d.substring(c.length);
127
+ }
128
+ return v;
129
+ };
130
+ /** global extended array functions */
131
+ window.global = window;
132
+ String.prototype.normalize = function () {
133
+ return this.replace(/ /g, '_').replace(/[^\w]/g, '').toLowerCase();
134
+ };
135
+ String.prototype.formatArgs = function (...args) {
136
+ return this.replace(/{(\d+)}/g, (_, index) => args[index] || '');
137
+ };
138
+ Array.prototype.last = function () {
139
+ return this[this.length - 1];
140
+ };
141
+ /** remove element from array */
142
+ Array.prototype.remove = function (value) {
143
+ const index = this.indexOf(value);
144
+ if (index > -1)
145
+ this.splice(index, 1);
146
+ return this;
147
+ };
148
+ /** calculate average using element predicate */
149
+ Array.prototype.average = function (predicate) {
150
+ let average = 0;
151
+ this.forEach(i => average += predicate(i));
152
+ return average !== 0 ? average / this.length : 0;
153
+ };
154
+ Array.prototype.max = function (predicate) {
155
+ let n = 0;
156
+ this.forEach(i => n = Math.max(n, predicate(i)));
157
+ return n;
158
+ };
159
+ /** sum elements using predicate */
160
+ Array.prototype.sum = function (predicate) {
161
+ let n = 0;
162
+ this.forEach(i => n += predicate(i));
163
+ return n;
164
+ };
165
+ /**
166
+ *
167
+ * @param args
168
+ */
169
+ export function queryParams(args) {
170
+ const params = {};
171
+ args &&
172
+ Object.keys(args).forEach(k => {
173
+ const val = args[k];
174
+ if (val !== null && val !== undefined) {
175
+ if (isString(val))
176
+ params[k] = val;
177
+ else if (isArray(val) && val.length)
178
+ params[k] = val;
179
+ else if (isDate(val))
180
+ params[k] = val.toJSON();
181
+ else if (isObject(val)) {
182
+ if (Object.keys(val).length)
183
+ params[k] = queryParams(val);
184
+ }
185
+ else
186
+ params[k] = val;
187
+ }
188
+ });
189
+ return params;
190
+ }
191
+ function getParameterByName(name, url = window.location.href) {
192
+ name = name.replace(/[\[\]]/g, '\\$&');
193
+ var regex = new RegExp('[?&]' + name + '(=([^&#]*)|&|#|$)'), results = regex.exec(url);
194
+ if (!results)
195
+ return null;
196
+ if (!results[2])
197
+ return '';
198
+ return decodeURIComponent(results[2].replace(/\+/g, ' '));
199
+ }
200
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZnVuY3Rpb25zLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vbGlicmFyaWVzL2NvcmUvc3JjL2xpYi9jb3JlL2Z1bmN0aW9ucy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsaUJBQWlCLEVBQUUsTUFBTSxVQUFVLENBQUM7QUFJN0MsTUFBTSxVQUFVLEdBQUcsQ0FBQyxXQUFXLEVBQUUsWUFBWSxFQUFFLFdBQVcsRUFBRSxXQUFXLENBQUMsQ0FBQztBQUV6RSxNQUFNLFVBQVUsVUFBVSxDQUFDLEdBQTJCO0lBQ3BELE9BQU8sTUFBTSxDQUFDLElBQUksQ0FBQyxHQUFHLENBQUMsQ0FBQyxHQUFHLENBQUMsQ0FBQyxDQUFDLEVBQUUsQ0FBQyxDQUFDLEVBQUUsR0FBRyxFQUFFLENBQUMsRUFBRSxLQUFLLEVBQUUsR0FBRyxDQUFDLENBQUMsQ0FBQyxFQUFFLENBQUMsQ0FBQyxDQUFDO0FBQ2hFLENBQUM7QUFFRCxNQUFNLFVBQVUsT0FBTyxDQUFDLFdBQW1CO0lBQ3pDLE9BQU8sVUFBVSxDQUFDLE9BQU8sQ0FBQyxXQUFXLENBQUMsR0FBRyxDQUFDLENBQUMsQ0FBQztBQUM5QyxDQUFDO0FBRUQsTUFBTSxVQUFVLE9BQU8sQ0FBQyxNQUFNO0lBQzVCLE1BQU0sQ0FBQyxJQUFJLENBQUMsTUFBTSxDQUFDLENBQUMsT0FBTyxDQUFDLENBQUMsQ0FBQyxFQUFFO1FBQzlCLE1BQU0sR0FBRyxHQUFHLE1BQU0sQ0FBQyxDQUFDLENBQUMsQ0FBQztRQUN0QixJQUFJLEdBQUcsS0FBSyxJQUFJLElBQUksR0FBRyxLQUFLLFNBQVMsSUFBSSxDQUFDLE9BQU8sQ0FBQyxHQUFHLENBQUMsSUFBSSxDQUFDLEdBQUcsQ0FBQyxNQUFNLENBQUM7WUFBRSxPQUFPLE1BQU0sQ0FBQyxDQUFDLENBQUMsQ0FBQTtJQUMxRixDQUFDLENBQUMsQ0FBQztJQUNILE9BQU8sTUFBTSxDQUFDO0FBQ2hCLENBQUM7QUFFRCxN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SSxDQUFDLE9BQU87UUFBRSxPQUFPLElBQUksQ0FBQztJQUMxQixJQUFJLENBQUMsT0FBTyxDQUFDLENBQUMsQ0FBQztRQUFFLE9BQU8sRUFBRSxDQUFDO0lBQzNCLE9BQU8sa0JBQWtCLENBQUMsT0FBTyxDQUFDLENBQUMsQ0FBQyxDQUFDLE9BQU8sQ0FBQyxLQUFLLEVBQUUsR0FBRyxDQUFDLENBQUMsQ0FBQztBQUM1RCxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgTUFURVJJQUxfUEFMRVRURVMgfSBmcm9tIFwiLi9jb2xvcnNcIjtcclxuXHJcbmV4cG9ydCBkZWNsYXJlIHR5cGUgTWF0ZXJpYWxNb2RlID0gNTAgfCAxMDAgfCAyMDAgfCAzMDAgfCA0MDAgfCA1MDAgfCA2MDAgfCA3MDAgfCA4MDAgfCA5MDAgfCAnQTEwMCcgfCAnQTIwMCcgfCAnQTQwMCcgfCAnQTcwMCc7XHJcblxyXG5jb25zdCBJTUFHRV9UWVBFID0gWydpbWFnZS9wbmcnLCAnaW1hZ2UvanBlZycsICdpbWFnZS9qcGcnLCAnaW1hZ2UvZ2lmJ107XHJcblxyXG5leHBvcnQgZnVuY3Rpb24gbWFwVG9BcnJheShtYXA6IHsgW2tleTogc3RyaW5nXTogYW55IH0pIHtcclxuICByZXR1cm4gT2JqZWN0LmtleXMobWFwKS5tYXAoayA9PiAoeyBrZXk6IGssIHZhbHVlOiBtYXBba10gfSkpO1xyXG59XHJcblxyXG5leHBvcnQgZnVuY3Rpb24gaXNJbWFnZShjb250ZW50VHlwZTogc3RyaW5nKTogYm9vbGVhbiB7XHJcbiAgcmV0dXJuIElNQUdFX1RZUEUuaW5kZXhPZihjb250ZW50VHlwZSkgPiAtMTtcclxufVxyXG5cclxuZXhwb3J0IGZ1bmN0aW9uIGNsZWFudXAocGFyYW1zKSB7XHJcbiAgT2JqZWN0LmtleXMocGFyYW1zKS5mb3JFYWNoKGsgPT4ge1xyXG4gICAgY29uc3QgdmFsID0gcGFyYW1zW2tdO1xyXG4gICAgaWYgKHZhbCA9PT0gbnVsbCB8fCB2YWwgPT09IHVuZGVmaW5lZCB8fCAoaXNBcnJheSh2YWwpICYmICF2YWwubGVuZ3RoKSkgZGVsZXRlIHBhcmFtc1trXVxyXG4gIH0pO1xyXG4gIHJldHVybiBwYXJhbXM7XHJcbn1cclxuXHJcbmV4cG9ydCBmdW5jdGlvbiBvdXRPZkJvdW5kKGVsZW1lbnQ6IEhUTUxFbGVtZW50KSB7XHJcbiAgY29uc3QgYm91bmRpbmcgPSBlbGVtZW50LmdldEJvdW5kaW5nQ2xpZW50UmVjdCgpO1xyXG4gIHJldHVybiBib3VuZGluZy50b3AgPCAwIHx8XHJcbiAgICBib3VuZGluZy5sZWZ0IDwgMCB8fFxyXG4gICAgYm91bmRpbmcucmlnaHQgPiBkb2N1bWVudC5kb2N1bWVudEVsZW1lbnQuY2xpZW50V2lkdGggfHxcclxuICAgIGJvdW5kaW5nLmJvdHRvbSA+IGRvY3VtZW50LmRvY3VtZW50RWxlbWVudC5jbGllbnRIZWlnaHQ7XHJcbn1cclxuXHJcbmNvbnN0IElTX01PQklMRSA9IC9BbmRyb2lkfHdlYk9TfGlQaG9uZXxpUGFkfGlQb2R8QmxhY2tCZXJyeXxJRU1vYmlsZXxPcGVyYSBNaW5pL2kudGVzdChuYXZpZ2F0b3IudXNlckFnZW50KTtcclxuZXhwb3J0IGZ1bmN0aW9uIGlzTW9iaWxlKCkge1xyXG4gIHJldHVybiBJU19NT0JJTEUgLyp8fCBkb2N1bWVudC5jb29raWUuaW5kZXhPZignYXJpYT0xJykgPiAtMSovO1xyXG59IGV4cG9ydCBmdW5jdGlvbiBpc0Z1bmN0aW9uKHZhbCk6IHZhbCBpcyBGdW5jdGlvbiB7XHJcbiAgcmV0dXJuIHR5cGVvZiB2YWwgPT09ICdmdW5jdGlvbic7XHJcbn1cclxuZXhwb3J0IGZ1bmN0aW9uIGlzQm9vbGVhbih2YWwpOiB2YWwgaXMgYm9vbGVhbiB7XHJcbiAgcmV0dXJuIHR5cGVvZiB2YWwgPT09ICdib29sZWFuJztcclxufVxyXG5leHBvcnQgZnVuY3Rpb24gaXNPYmplY3QodmFsKSB7XHJcbiAgcmV0dXJuIHZhbCAhPT0gbnVsbCAmJiB0eXBlb2YgdmFsID09PSAnb2JqZWN0JztcclxufVxyXG5leHBvcnQgZnVuY3Rpb24gaXNQcmltaXRpdmUodmFsKSB7XHJcbiAgcmV0dXJuIHR5cGVvZiB2YWwgIT09ICdvYmplY3QnICYmICFBcnJheS5pc0FycmF5KHZhbCk7XHJcbn1cclxuZXhwb3J0IGZ1bmN0aW9uIGlzUHJvbWlzZShvYmopOiBvYmogaXMgUHJvbWlzZTxhbnk+IHtcclxuICByZXR1cm4gb2JqIGluc3RhbmNlb2YgUHJvbWlzZTtcclxufVxyXG5leHBvcnQgZnVuY3Rpb24gaXNEYXRlKHZhbCk6IHZhbCBpcyBEYXRlIHtcclxuICByZXR1cm4gdmFsIGluc3RhbmNlb2YgRGF0ZTtcclxufVxyXG5leHBvcnQgZnVuY3Rpb24gaXNBcnJheSh2YWwpOiB2YWwgaXMgQXJyYXk8YW55PiB7XHJcbiAgcmV0dXJuIEFycmF5LmlzQXJyYXkodmFsKTtcclxufVxyXG5leHBvcnQgZnVuY3Rpb24gaXNTdHJpbmcodmFsOiBhbnkpOiB2YWwgaXMgc3RyaW5nIHtcclxuICByZXR1cm4gdHlwZW9mIHZhbCA9PT0gJ3N0cmluZycgfHwgdmFsIGluc3RhbmNlb2YgU3RyaW5nO1xyXG59XHJcblxyXG5leHBvcnQgZnVuY3Rpb24gZ2V0V2Fybihtb2RlOiBNYXRlcmlhbE1vZGUgPSA1MDApIHtcclxuICByZXR1cm4gTUFURVJJQUxfUEFMRVRURVNbJ3JlZCddW21vZGVdO1xyXG59XHJcblxyXG5leHBvcnQgZnVuY3Rpb24gcGxheUF1ZGlvKG5hbWU6ICdub3RpZmljYXRpb25fc2ltcGxlLTAxJyB8ICdhbGVydF9lcnJvci0wMycpIHtcclxuICB0cnkge1xyXG4gICAgY29uc3QgYXVkaW8gPSBuZXcgQXVkaW8oKTtcclxuICAgIGF1ZGlvLnNyYyA9IGAvYXNzZXRzL3NvdW5kcy8ke25hbWV9Lm9nZ2A7XHJcbiAgICBhdWRpby5sb2FkKCk7XHJcbiAgICBhdWRpby5wbGF5KCk7XHJcbiAgfSBjYXRjaCAoZSkge1xyXG4gICAgY29uc29sZS5sb2coZSk7XHJcbiAgfVxyXG59XHJcblxyXG4vKipcclxuICogXHJcbiAqIEBwYXJhbSBvMVxyXG4gKiBAcGFyYW0gbzJcclxuICovXHJcbk9iamVjdC5kZWVwQXNzaWduID0gZnVuY3Rpb24gKG8xLCBvMikge1xyXG4gIG8yICYmIE9iamVjdC5rZXlzKG8yKS5mb3JFYWNoKHAgPT4ge1xyXG4gICAgY29uc3QgdmFsID0gbzJbcF0sIHZhbDIgPSBvMVtwXTtcclxuICAgIGlmICh2YWwyID09PSB1bmRlZmluZWQgfHwgdmFsMiA9PT0gbnVsbCB8fCBpc1ByaW1pdGl2ZSh2YWwpKVxyXG4gICAgICBvMVtwXSA9IHZhbDtcclxuICAgIGVsc2UgaWYgKGlzQXJyYXkodmFsKSkge1xyXG4gICAgICBpZiAodmFsLmxlbmd0aCAmJiAhaXNQcmltaXRpdmUodmFsWzBdKSkge1xyXG4gICAgICAgIGZvciAobGV0IGkgPSAwOyBpIDwgdmFsLmxlbmd0aDsgaSsrKSB7XHJcbiAgICAgICAgICBpZiAodmFsMltpXSAhPT0gdW5kZWZpbmVkKVxyXG4gICAgICAgICAgICBPYmplY3QuZGVlcEFzc2lnbih2YWwyW2ldLCB2YWxbaV0pO1xyXG4gICAgICAgICAgZWxzZVxyXG4gICAgICAgICAgICB2YWwyLnB1c2godmFsW2ldKTtcclxuICAgICAgICB9XHJcbiAgICAgICAgKHZhbDIgYXMgYW55W10pLnNwbGljZSh2YWwubGVuZ3RoKTtcclxuICAgICAgfVxyXG4gICAgICBlbHNlXHJcbiAgICAgICAgLy8odmFsMiBhcyBhbnlbXSkuc3BsaWNlKDAsIHZhbDIubGVuZ3RoLCAuLi52YWwpO1xyXG4gICAgICAgIG8xW3BdID0gdmFsO1xyXG4gICAgfVxyXG4gICAgZWxzZSBpZiAoaXNPYmplY3QodmFsKSlcclxuICAgICAgT2JqZWN0LmRlZXBBc3NpZ24odmFsMiwgdmFsKTtcclxuICB9KTtcclxuICByZXR1cm4gbzE7XHJcbn1cclxuXHJcbmZ1bmN0aW9uIGdlbmVyYXRlRW5jcnlwdGlvbk1hcCgpOiB7IFtrZXk6IHN0cmluZ106IHN0cmluZyB8IG51bWJlciB9IHtcclxuICBjb25zdCB2YWx1ZXMgPSB7fTtcclxuICBmb3IgKGxldCBpID0gNjU7IGkgPCA5MTsgaSsrKSB7XHJcbiAgICBjb25zdCBkID0gKGkgLSA2NSkudG9TdHJpbmcoKSxcclxuICAgICAgYyA9IFN0cmluZy5mcm9tQ2hhckNvZGUoaSk7XHJcbiAgICB2YWx1ZXNbZF0gPSBjO1xyXG4gICAgdmFsdWVzW2NdID0gZDtcclxuICB9XHJcbiAgZm9yIChsZXQgaSA9IDk3OyBpIDwgMTIzOyBpKyspIHtcclxuICAgIGNvbnN0IGQgPSAoaSAtIDcxKS50b1N0cmluZygpLFxyXG4gICAgICBjID0gU3RyaW5nLmZyb21DaGFyQ29kZShpKTtcclxuICAgIHZhbHVlc1tkXSA9IGM7XHJcbiAgICB2YWx1ZXNbY10gPSBkO1xyXG4gIH1cclxuICByZXR1cm4gdmFsdWVzO1xyXG59XHJcbmNvbnN0IGRlY29kZSA9IGdlbmVyYXRlRW5jcnlwdGlvbk1hcCgpO1xyXG5kZWNsYXJlIGdsb2JhbCB7XHJcbiAgaW50ZXJmYWNlIFN0cmluZyB7XHJcbiAgICBkZWNvZGVJZDogKCkgPT4gbnVtYmVyO1xyXG4gIH1cclxuICBpbnRlcmZhY2UgTnVtYmVyIHtcclxuICAgIGVuY29kZUlkOiAoKSA9PiBzdHJpbmc7XHJcbiAgfVxyXG59XHJcblN0cmluZy5wcm90b3R5cGUuZGVjb2RlSWQgPSBmdW5jdGlvbiAoKTogbnVtYmVyIHtcclxuICBsZXQgdiA9ICcnO1xyXG4gIGZvciAobGV0IGkgPSAwOyBpIDwgdGhpcy5sZW5ndGg7IGkrKykge1xyXG4gICAgY29uc3QgYyA9IHRoaXMuY2hhckF0KGkpO1xyXG4gICAgdiArPSBkZWNvZGVbY107XHJcbiAgfVxyXG4gIHJldHVybiBwYXJzZUludCh2KTtcclxufTtcclxuTnVtYmVyLnByb3RvdHlwZS5lbmNvZGVJZCA9IGZ1bmN0aW9uICgpOiBzdHJpbmcge1xyXG4gIGxldCB2ID0gJycsXHJcbiAgICBkID0gdGhpcy50b1N0cmluZygpO1xyXG4gIHdoaWxlIChkLmxlbmd0aCA+IDApIHtcclxuICAgIGxldCBpID0gNTEsXHJcbiAgICAgIGMgPSBpLnRvU3RyaW5nKCk7XHJcbiAgICB3aGlsZSAoIWQuc3RhcnRzV2l0aChjKSkge1xyXG4gICAgICAtLWksIGMgPSBpLnRvU3RyaW5nKCk7XHJcbiAgICB9IHYgKz0gZGVjb2RlW2NdO1xyXG4gICAgZCA9IGQuc3Vic3RyaW5nKGMubGVuZ3RoKTtcclxuICB9XHJcbiAgcmV0dXJuIHY7XHJcbn07XHJcblxyXG4vKiogZ2xvYmFsIGV4dGVuZGVkIGFycmF5IGZ1bmN0aW9ucyAqL1xyXG4od2luZG93IGFzIGFueSkuZ2xvYmFsID0gd2luZG93O1xyXG5kZWNsYXJlIGdsb2JhbCB7XHJcbiAgaW50ZXJmYWNlIEFycmF5PFQ+IHtcclxuICAgIHJlbW92ZShpdGVtOiBUKTogVFtdO1xyXG4gICAgbGFzdCgpOiBUO1xyXG4gICAgYXZlcmFnZShwcmVkaWNhdGU6IChpOiBUKSA9PiBudW1iZXIpOiBudW1iZXI7XHJcbiAgICBzdW0ocHJlZGljYXRlOiAoaTogVCkgPT4gbnVtYmVyKTogbnVtYmVyO1xyXG4gICAgbWF4KHByZWRpY2F0ZTogKGk6IFQpID0+IG51bWJlcik6IG51bWJlcjtcclxuICB9XHJcbiAgaW50ZXJmYWNlIFN0cmluZyB7XHJcbiAgICBmb3JtYXRBcmdzKC4uLmFyZ3MpOiBzdHJpbmc7XHJcbiAgICBub3JtYWxpemUoKTogc3RyaW5nO1xyXG4gIH1cclxuICBpbnRlcmZhY2UgT2JqZWN0IHtcclxuICAgIGRlZXBBc3NpZ24odmFsMSwgdmFsMik6IGFueTtcclxuICB9XHJcbn1cclxuU3RyaW5nLnByb3RvdHlwZS5ub3JtYWxpemUgPSBmdW5jdGlvbiAoKSB7XHJcbiAgcmV0dXJuIHRoaXMucmVwbGFjZSgvIC9nLCAnXycpLnJlcGxhY2UoL1teXFx3XS9nLCAnJykudG9Mb3dlckNhc2UoKTtcclxufVxyXG5cclxuU3RyaW5nLnByb3RvdHlwZS5mb3JtYXRBcmdzID0gZnVuY3Rpb24gKC4uLmFyZ3MpOiBzdHJpbmcge1xyXG4gIHJldHVybiB0aGlzLnJlcGxhY2UoL3soXFxkKyl9L2csIChfLCBpbmRleCkgPT4gYXJnc1tpbmRleF0gfHwgJycpO1xyXG59XHJcbkFycmF5LnByb3RvdHlwZS5sYXN0ID0gZnVuY3Rpb24gKCkge1xyXG4gIHJldHVybiB0aGlzW3RoaXMubGVuZ3RoIC0gMV07XHJcbn1cclxuLyoqIHJlbW92ZSBlbGVtZW50IGZyb20gYXJyYXkgKi9cclxuQXJyYXkucHJvdG90eXBlLnJlbW92ZSA9IGZ1bmN0aW9uIDxUPih2YWx1ZTogVCk6IFRbXSB7XHJcbiAgY29uc3QgaW5kZXggPSB0aGlzLmluZGV4T2YodmFsdWUpO1xyXG4gIGlmIChpbmRleCA+IC0xKSB0aGlzLnNwbGljZShpbmRleCwgMSk7XHJcbiAgcmV0dXJuIHRoaXM7XHJcbn07XHJcbi8qKiBjYWxjdWxhdGUgYXZlcmFnZSB1c2luZyBlbGVtZW50IHByZWRpY2F0ZSAqL1xyXG5BcnJheS5wcm90b3R5cGUuYXZlcmFnZSA9IGZ1bmN0aW9uIDxUPihwcmVkaWNhdGU/OiAoaTogVCkgPT4gbnVtYmVyKTogbnVtYmVyIHtcclxuICBsZXQgYXZlcmFnZSA9IDA7XHJcbiAgdGhpcy5mb3JFYWNoKGkgPT5cclxuICAgIGF2ZXJhZ2UgKz0gcHJlZGljYXRlKGkpXHJcbiAgKTtcclxuICByZXR1cm4gYXZlcmFnZSAhPT0gMCA/IGF2ZXJhZ2UgLyB0aGlzLmxlbmd0aCA6IDA7XHJcbn1cclxuQXJyYXkucHJvdG90eXBlLm1heCA9IGZ1bmN0aW9uIDxUPihwcmVkaWNhdGU/OiAoaTogVCkgPT4gbnVtYmVyKTogbnVtYmVyIHtcclxuICBsZXQgbiA9IDA7XHJcbiAgdGhpcy5mb3JFYWNoKGkgPT5cclxuICAgIG4gPSBNYXRoLm1heChuLCBwcmVkaWNhdGUoaSkpXHJcbiAgKTtcclxuICByZXR1cm4gbjtcclxufVxyXG4vKiogc3VtIGVsZW1lbnRzIHVzaW5nIHByZWRpY2F0ZSAqL1xyXG5BcnJheS5wcm90b3R5cGUuc3VtID0gZnVuY3Rpb24gPFQ+KHByZWRpY2F0ZT86IChpOiBUKSA9PiBudW1iZXIpOiBudW1iZXIge1xyXG4gIGxldCBuID0gMDtcclxuICB0aGlzLmZvckVhY2goaSA9PlxyXG4gICAgbiArPSBwcmVkaWNhdGUoaSlcclxuICApO1xyXG4gIHJldHVybiBuO1xyXG59XHJcbi8qKlxyXG4gKiBcclxuICogQHBhcmFtIGFyZ3NcclxuICovXHJcbmV4cG9ydCBmdW5jdGlvbiBxdWVyeVBhcmFtcyhhcmdzOiBhbnkpIHtcclxuICBjb25zdCBwYXJhbXMgPSB7fTtcclxuICBhcmdzICYmXHJcbiAgICBPYmplY3Qua2V5cyhhcmdzKS5mb3JFYWNoKGsgPT4ge1xyXG4gICAgICBjb25zdCB2YWwgPSBhcmdzW2tdO1xyXG5cclxuICAgICAgaWYgKHZhbCAhPT0gbnVsbCAmJiB2YWwgIT09IHVuZGVmaW5lZCkge1xyXG4gICAgICAgIGlmIChpc1N0cmluZyh2YWwpKVxyXG4gICAgICAgICAgcGFyYW1zW2tdID0gdmFsO1xyXG4gICAgICAgIGVsc2UgaWYgKGlzQXJyYXkodmFsKSAmJiB2YWwubGVuZ3RoKVxyXG4gICAgICAgICAgcGFyYW1zW2tdID0gdmFsO1xyXG4gICAgICAgIGVsc2UgaWYgKGlzRGF0ZSh2YWwpKVxyXG4gICAgICAgICAgcGFyYW1zW2tdID0gdmFsLnRvSlNPTigpO1xyXG4gICAgICAgIGVsc2UgaWYgKGlzT2JqZWN0KHZhbCkpIHtcclxuICAgICAgICAgIGlmIChPYmplY3Qua2V5cyh2YWwpLmxlbmd0aCkgcGFyYW1zW2tdID0gcXVlcnlQYXJhbXModmFsKTtcclxuICAgICAgICB9XHJcbiAgICAgICAgZWxzZVxyXG4gICAgICAgICAgcGFyYW1zW2tdID0gdmFsO1xyXG4gICAgICB9XHJcbiAgICB9KTtcclxuICByZXR1cm4gcGFyYW1zO1xyXG59XHJcbmZ1bmN0aW9uIGdldFBhcmFtZXRlckJ5TmFtZShuYW1lLCB1cmwgPSB3aW5kb3cubG9jYXRpb24uaHJlZikge1xyXG4gIG5hbWUgPSBuYW1lLnJlcGxhY2UoL1tcXFtcXF1dL2csICdcXFxcJCYnKTtcclxuICB2YXIgcmVnZXggPSBuZXcgUmVnRXhwKCdbPyZdJyArIG5hbWUgKyAnKD0oW14mI10qKXwmfCN8JCknKSxcclxuICAgIHJlc3VsdHMgPSByZWdleC5leGVjKHVybCk7XHJcbiAgaWYgKCFyZXN1bHRzKSByZXR1cm4gbnVsbDtcclxuICBpZiAoIXJlc3VsdHNbMl0pIHJldHVybiAnJztcclxuICByZXR1cm4gZGVjb2RlVVJJQ29tcG9uZW50KHJlc3VsdHNbMl0ucmVwbGFjZSgvXFwrL2csICcgJykpO1xyXG59XHJcbiJdfQ==
@@ -0,0 +1,219 @@
1
+ import { Inject, Component, ElementRef, InjectionToken, HostListener } from '@angular/core';
2
+ import { trigger, state, style, transition, animate } from '@angular/animations';
3
+ import { ESCAPE, LEFT_ARROW, RIGHT_ARROW } from '@angular/cdk/keycodes';
4
+ import { outOfBound } from '../functions';
5
+ import * as i0 from "@angular/core";
6
+ import * as i1 from "../session.service";
7
+ import * as i2 from "@angular/cdk/overlay";
8
+ import * as i3 from "@angular/router";
9
+ import * as i4 from "@angular/material/button";
10
+ import * as i5 from "@angular/material/icon";
11
+ import * as i6 from "@angular/flex-layout/flex";
12
+ import * as i7 from "@angular/common";
13
+ import * as i8 from "../pipes/sanitize-html.pipe";
14
+ import * as i9 from "../pipes/translate.pipe";
15
+ export const TOUR_TOKEN = new InjectionToken('guide');
16
+ const BELOW = [{
17
+ originX: 'start',
18
+ originY: 'bottom',
19
+ overlayX: 'start',
20
+ overlayY: 'top',
21
+ panelClass: ['below', 'start']
22
+ }, {
23
+ originX: 'center',
24
+ originY: 'bottom',
25
+ overlayX: 'center',
26
+ overlayY: 'top',
27
+ panelClass: ['below', 'center']
28
+ }, {
29
+ originX: 'end',
30
+ originY: 'bottom',
31
+ overlayX: 'end',
32
+ overlayY: 'top',
33
+ panelClass: ['below', 'end']
34
+ }], ABOVE = [{
35
+ originX: 'start',
36
+ originY: 'top',
37
+ overlayX: 'start',
38
+ overlayY: 'bottom',
39
+ panelClass: ['above', 'start']
40
+ },
41
+ {
42
+ originX: 'center',
43
+ originY: 'top',
44
+ overlayX: 'center',
45
+ overlayY: 'bottom',
46
+ panelClass: ['above', 'center']
47
+ },
48
+ {
49
+ originX: 'start',
50
+ originY: 'top',
51
+ overlayX: 'end',
52
+ overlayY: 'bottom',
53
+ panelClass: ['above', 'end']
54
+ }], AFTER = [{
55
+ originX: 'end',
56
+ originY: 'top',
57
+ overlayX: 'start',
58
+ overlayY: 'top',
59
+ panelClass: ['after', 'start']
60
+ },
61
+ {
62
+ originX: 'end',
63
+ originY: 'center',
64
+ overlayX: 'start',
65
+ overlayY: 'center',
66
+ panelClass: ['after', 'center']
67
+ },
68
+ {
69
+ originX: 'end',
70
+ originY: 'bottom',
71
+ overlayX: 'start',
72
+ overlayY: 'bottom',
73
+ panelClass: ['after', 'end']
74
+ }], BEFORE = [{
75
+ originX: 'start',
76
+ originY: 'top',
77
+ overlayX: 'end',
78
+ overlayY: 'top',
79
+ panelClass: ['before', 'start']
80
+ }, {
81
+ originX: 'start',
82
+ originY: 'center',
83
+ overlayX: 'end',
84
+ overlayY: 'center',
85
+ panelClass: ['before', 'center']
86
+ }, {
87
+ originX: 'start',
88
+ originY: 'center',
89
+ overlayX: 'end',
90
+ overlayY: 'bottom',
91
+ panelClass: ['before', 'end']
92
+ }];
93
+ export class GuideComponent {
94
+ constructor(_data, _session, _overlay, _ngRouter, _overlayRef) {
95
+ this._data = _data;
96
+ this._session = _session;
97
+ this._overlay = _overlay;
98
+ this._ngRouter = _ngRouter;
99
+ this._overlayRef = _overlayRef;
100
+ this.index = 0;
101
+ this.count = this._data.steps.length;
102
+ this.working = true;
103
+ }
104
+ ngOnInit() {
105
+ this._move(0);
106
+ }
107
+ /**
108
+ *
109
+ * @param i
110
+ */
111
+ _move(i) {
112
+ const index = this.index + i;
113
+ if (index < 0 || index == this.count)
114
+ return;
115
+ this.working = true;
116
+ const step = this._data.steps[index];
117
+ const { selector, position, navigate, simulate } = step, promisses = [];
118
+ if (navigate) {
119
+ const promise = this._ngRouter.navigateByUrl(navigate);
120
+ promisses.push(promise);
121
+ }
122
+ let positionStrategy;
123
+ if (selector) {
124
+ const element = document.querySelector(selector);
125
+ if (!element)
126
+ throw `Guide ${this._data.name} step ${this.index} selector '${selector}' not found.`;
127
+ let positions;
128
+ switch (position) {
129
+ case 'Above':
130
+ positions = [...ABOVE, ...BELOW, ...AFTER, ...BEFORE];
131
+ break;
132
+ case 'End':
133
+ positions = [...AFTER, ...BEFORE, ...BELOW, ...ABOVE];
134
+ break;
135
+ case 'Start':
136
+ positions = [...BEFORE, ...AFTER, ...BELOW, ...ABOVE];
137
+ break;
138
+ case 'Below':
139
+ positions = [...BELOW, ...BEFORE, ...ABOVE, ...AFTER];
140
+ break;
141
+ default:
142
+ positions = [...BEFORE, ...BELOW, ...ABOVE, ...AFTER];
143
+ }
144
+ positionStrategy = this._overlay.position().
145
+ flexibleConnectedTo(new ElementRef(element)).
146
+ withPositions(positions).
147
+ withGrowAfterOpen();
148
+ if (outOfBound(element)) {
149
+ promisses.push(new Promise(resolve => {
150
+ const task = setInterval(() => {
151
+ if (!outOfBound(element)) {
152
+ clearInterval(task);
153
+ resolve(null);
154
+ }
155
+ }, 150);
156
+ }));
157
+ element.scrollIntoView({ behavior: 'smooth' });
158
+ }
159
+ simulate &&
160
+ promisses.push(new Promise(resolve => {
161
+ element.click();
162
+ resolve(null);
163
+ }));
164
+ }
165
+ else
166
+ positionStrategy = this._overlay.position().global().centerVertically().centerHorizontally();
167
+ const complete = () => {
168
+ this.index = index;
169
+ this.step = step;
170
+ this.working = false;
171
+ this._overlayRef.updatePositionStrategy(positionStrategy);
172
+ this._overlayRef.updatePosition();
173
+ };
174
+ promisses.length ? Promise.all(promisses).then(() => complete()) : complete();
175
+ }
176
+ keydown(evt) {
177
+ if (!this.working)
178
+ switch (evt.keyCode) {
179
+ case LEFT_ARROW:
180
+ this._move(this._session.direction === 'ltr' ? -1 : 1);
181
+ break;
182
+ case RIGHT_ARROW:
183
+ this._move(this._session.direction === 'ltr' ? 1 : -1);
184
+ break;
185
+ case ESCAPE:
186
+ this.close();
187
+ evt.stopPropagation();
188
+ break;
189
+ }
190
+ }
191
+ next() {
192
+ this._move(1);
193
+ }
194
+ prev() {
195
+ this._move(-1);
196
+ }
197
+ close() {
198
+ this._overlayRef.detach();
199
+ }
200
+ }
201
+ GuideComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.2.2", ngImport: i0, type: GuideComponent, deps: [{ token: TOUR_TOKEN }, { token: i1.SessionService }, { token: i2.Overlay }, { token: i3.Router }, { token: i2.OverlayRef }], target: i0.ɵɵFactoryTarget.Component });
202
+ GuideComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.2.2", type: GuideComponent, selector: "ng-component", host: { listeners: { "window:keydown": "keydown($event)" } }, ngImport: i0, template: "<div class=\"container\" [style.display]=\"step ? '': 'none'\" cdkTrapFocus>\r\n <div fxLayout=\"column\" class=\"content\">\r\n <div fxLayout=\"row\">\r\n <h2 *ngIf=\"step?.title\" class=\"mat-h2\">{{step?.title}}</h2>\r\n <span class=\"divider\"></span>\r\n <button mat-icon-button (click)=\"close()\" *ngIf=\"index < count - 1\"><mat-icon>close</mat-icon></button>\r\n </div>\r\n <p class=\"mat-body\" [innerHTML]=\"step?.content | sanitizeHtml\">\r\n </p>\r\n <div fxLayout=\"row\">\r\n <span class=\"divider\"></span>\r\n <button mat-icon-button (click)=\"prev()\" [disabled]=\"index === 0 || working\"><mat-icon class=\"mat-icon-rtl-mirror\">keyboard_arrow_left</mat-icon></button>\r\n <button mat-icon-button (click)=\"next()\" [disabled]=\"index === count - 1 || working\" cdkFocusInitial><mat-icon class=\"mat-icon-rtl-mirror\">keyboard_arrow_right</mat-icon></button>\r\n <button mat-button (click)=\"close()\" *ngIf=\"index === count - 1\">{{'GuideFinish'|translate}}</button>\r\n </div>\r\n </div>\r\n <div class=\"tooltip-container\">\r\n <div class=\"tooltip\"></div>\r\n </div>\r\n</div>\r\n", components: [{ type: i4.MatButton, selector: "button[mat-button], button[mat-raised-button], button[mat-icon-button], button[mat-fab], button[mat-mini-fab], button[mat-stroked-button], button[mat-flat-button]", inputs: ["disabled", "disableRipple", "color"], exportAs: ["matButton"] }, { type: i5.MatIcon, selector: "mat-icon", inputs: ["color", "inline", "svgIcon", "fontSet", "fontIcon"], exportAs: ["matIcon"] }], directives: [{ type: i6.DefaultLayoutDirective, selector: " [fxLayout], [fxLayout.xs], [fxLayout.sm], [fxLayout.md], [fxLayout.lg], [fxLayout.xl], [fxLayout.lt-sm], [fxLayout.lt-md], [fxLayout.lt-lg], [fxLayout.lt-xl], [fxLayout.gt-xs], [fxLayout.gt-sm], [fxLayout.gt-md], [fxLayout.gt-lg]", inputs: ["fxLayout", "fxLayout.xs", "fxLayout.sm", "fxLayout.md", "fxLayout.lg", "fxLayout.xl", "fxLayout.lt-sm", "fxLayout.lt-md", "fxLayout.lt-lg", "fxLayout.lt-xl", "fxLayout.gt-xs", "fxLayout.gt-sm", "fxLayout.gt-md", "fxLayout.gt-lg"] }, { type: i7.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }], pipes: { "sanitizeHtml": i8.SanitizeHtmlPipe, "translate": i9.TranslatePipe }, animations: [trigger('body', [
203
+ state('here', style({ width: '*', height: '*' })),
204
+ transition('*<=>*', animate('250ms', style({})))
205
+ ])] });
206
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.2.2", ngImport: i0, type: GuideComponent, decorators: [{
207
+ type: Component,
208
+ args: [{ animations: [trigger('body', [
209
+ state('here', style({ width: '*', height: '*' })),
210
+ transition('*<=>*', animate('250ms', style({})))
211
+ ])], template: "<div class=\"container\" [style.display]=\"step ? '': 'none'\" cdkTrapFocus>\r\n <div fxLayout=\"column\" class=\"content\">\r\n <div fxLayout=\"row\">\r\n <h2 *ngIf=\"step?.title\" class=\"mat-h2\">{{step?.title}}</h2>\r\n <span class=\"divider\"></span>\r\n <button mat-icon-button (click)=\"close()\" *ngIf=\"index < count - 1\"><mat-icon>close</mat-icon></button>\r\n </div>\r\n <p class=\"mat-body\" [innerHTML]=\"step?.content | sanitizeHtml\">\r\n </p>\r\n <div fxLayout=\"row\">\r\n <span class=\"divider\"></span>\r\n <button mat-icon-button (click)=\"prev()\" [disabled]=\"index === 0 || working\"><mat-icon class=\"mat-icon-rtl-mirror\">keyboard_arrow_left</mat-icon></button>\r\n <button mat-icon-button (click)=\"next()\" [disabled]=\"index === count - 1 || working\" cdkFocusInitial><mat-icon class=\"mat-icon-rtl-mirror\">keyboard_arrow_right</mat-icon></button>\r\n <button mat-button (click)=\"close()\" *ngIf=\"index === count - 1\">{{'GuideFinish'|translate}}</button>\r\n </div>\r\n </div>\r\n <div class=\"tooltip-container\">\r\n <div class=\"tooltip\"></div>\r\n </div>\r\n</div>\r\n" }]
212
+ }], ctorParameters: function () { return [{ type: undefined, decorators: [{
213
+ type: Inject,
214
+ args: [TOUR_TOKEN]
215
+ }] }, { type: i1.SessionService }, { type: i2.Overlay }, { type: i3.Router }, { type: i2.OverlayRef }]; }, propDecorators: { keydown: [{
216
+ type: HostListener,
217
+ args: ['window:keydown', ['$event']]
218
+ }] } });
219
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZ3VpZGUuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vbGlicmFyaWVzL2NvcmUvc3JjL2xpYi9jb3JlL2d1aWRlL2d1aWRlLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uL2xpYnJhcmllcy9jb3JlL3NyYy9saWIvY29yZS9ndWlkZS9ndWlkZS5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsTUFBTSxFQUFFLFNBQVMsRUFBVSxVQUFVLEVBQUUsY0FBYyxFQUFFLFlBQVksRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUVwRyxPQUFPLEVBQUUsT0FBTyxFQUFFLEtBQUssRUFBRSxLQUFLLEVBQUUsVUFBVSxFQUFFLE9BQU8sRUFBRSxNQUFNLHFCQUFxQixDQUFDO0FBRWpGLE9BQU8sRUFBRSxNQUFNLEVBQUUsVUFBVSxFQUFFLFdBQVcsRUFBRSxNQUFNLHVCQUF1QixDQUFDO0FBRXhFLE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSxjQUFjLENBQUM7Ozs7Ozs7Ozs7O0FBSTFDLE1BQU0sQ0FBQyxNQUFNLFVBQVUsR0FBRyxJQUFJLGNBQWMsQ0FBUSxPQUFPLENBQUMsQ0FBQztBQUU3RCxNQUFNLEtBQUssR0FBd0IsQ0FBQztRQUNsQyxPQUFPLEVBQUUsT0FBTztRQUNoQixPQUFPLEVBQUUsUUFBUTtRQUNqQixRQUFRLEVBQUUsT0FBTztRQUNqQixRQUFRLEVBQUUsS0FBSztRQUNmLFVBQVUsRUFBRSxDQUFDLE9BQU8sRUFBRSxPQUFPLENBQUM7S0FDL0IsRUFBRTtRQUNELE9BQU8sRUFBRSxRQUFRO1FBQ2pCLE9BQU8sRUFBRSxRQUFRO1FBQ2pCLFFBQVEsRUFBRSxRQUFRO1FBQ2xCLFFBQVEsRUFBRSxLQUFLO1FBQ2YsVUFBVSxFQUFFLENBQUMsT0FBTyxFQUFFLFFBQVEsQ0FBQztLQUNoQyxFQUFFO1FBQ0QsT0FBTyxFQUFFLEtBQUs7UUFDZCxP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MEJBUWxELE1BQU07MkJBQUMsVUFBVTs2SUFnRnBCLE9BQU87c0JBRE4sWUFBWTt1QkFBQyxnQkFBZ0IsRUFBRSxDQUFDLFFBQVEsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEluamVjdCwgQ29tcG9uZW50LCBPbkluaXQsIEVsZW1lbnRSZWYsIEluamVjdGlvblRva2VuLCBIb3N0TGlzdGVuZXIgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuaW1wb3J0IHsgT3ZlcmxheSwgT3ZlcmxheVJlZiwgUG9zaXRpb25TdHJhdGVneSwgQ29ubmVjdGVkUG9zaXRpb24gfSBmcm9tIFwiQGFuZ3VsYXIvY2RrL292ZXJsYXlcIjtcclxuaW1wb3J0IHsgdHJpZ2dlciwgc3RhdGUsIHN0eWxlLCB0cmFuc2l0aW9uLCBhbmltYXRlIH0gZnJvbSAnQGFuZ3VsYXIvYW5pbWF0aW9ucyc7XHJcbmltcG9ydCB7IERpcmVjdGlvbmFsaXR5IH0gZnJvbSAnQGFuZ3VsYXIvY2RrL2JpZGknO1xyXG5pbXBvcnQgeyBFU0NBUEUsIExFRlRfQVJST1csIFJJR0hUX0FSUk9XIH0gZnJvbSAnQGFuZ3VsYXIvY2RrL2tleWNvZGVzJztcclxuaW1wb3J0IHsgR3VpZGVTdGVwLCBHdWlkZSB9IGZyb20gJy4uL21vZGVscyc7XHJcbmltcG9ydCB7IG91dE9mQm91bmQgfSBmcm9tICcuLi9mdW5jdGlvbnMnO1xyXG5pbXBvcnQgeyBSb3V0ZXIgfSBmcm9tICdAYW5ndWxhci9yb3V0ZXInO1xyXG5pbXBvcnQgeyBTZXNzaW9uU2VydmljZSB9IGZyb20gJy4uL3Nlc3Npb24uc2VydmljZSc7XHJcblxyXG5leHBvcnQgY29uc3QgVE9VUl9UT0tFTiA9IG5ldyBJbmplY3Rpb25Ub2tlbjxHdWlkZT4oJ2d1aWRlJyk7XHJcblxyXG5jb25zdCBCRUxPVzogQ29ubmVjdGVkUG9zaXRpb25bXSA9IFt7XHJcbiAgb3JpZ2luWDogJ3N0YXJ0JyxcclxuICBvcmlnaW5ZOiAnYm90dG9tJyxcclxuICBvdmVybGF5WDogJ3N0YXJ0JyxcclxuICBvdmVybGF5WTogJ3RvcCcsXHJcbiAgcGFuZWxDbGFzczogWydiZWxvdycsICdzdGFydCddXHJcbn0sIHtcclxuICBvcmlnaW5YOiAnY2VudGVyJyxcclxuICBvcmlnaW5ZOiAnYm90dG9tJyxcclxuICBvdmVybGF5WDogJ2NlbnRlcicsXHJcbiAgb3ZlcmxheVk6ICd0b3AnLFxyXG4gIHBhbmVsQ2xhc3M6IFsnYmVsb3cnLCAnY2VudGVyJ11cclxufSwge1xyXG4gIG9yaWdpblg6ICdlbmQnLFxyXG4gIG9yaWdpblk6ICdib3R0b20nLFxyXG4gIG92ZXJsYXlYOiAnZW5kJyxcclxuICBvdmVybGF5WTogJ3RvcCcsXHJcbiAgcGFuZWxDbGFzczogWydiZWxvdycsICdlbmQnXVxyXG59XSxcclxuICBBQk9WRTogQ29ubmVjdGVkUG9zaXRpb25bXSA9IFt7XHJcbiAgICBvcmlnaW5YOiAnc3RhcnQnLFxyXG4gICAgb3JpZ2luWTogJ3RvcCcsXHJcbiAgICBvdmVybGF5WDogJ3N0YXJ0JyxcclxuICAgIG92ZXJsYXlZOiAnYm90dG9tJyxcclxuICAgIHBhbmVsQ2xhc3M6IFsnYWJvdmUnLCAnc3RhcnQnXVxyXG4gIH0sXHJcbiAge1xyXG4gICAgb3JpZ2luWDogJ2NlbnRlcicsXHJcbiAgICBvcmlnaW5ZOiAndG9wJyxcclxuICAgIG92ZXJsYXlYOiAnY2VudGVyJyxcclxuICAgIG92ZXJsYXlZOiAnYm90dG9tJyxcclxuICAgIHBhbmVsQ2xhc3M6IFsnYWJvdmUnLCAnY2VudGVyJ11cclxuICB9LFxyXG4gIHtcclxuICAgIG9yaWdpblg6ICdzdGFydCcsXHJcbiAgICBvcmlnaW5ZOiAndG9wJyxcclxuICAgIG92ZXJsYXlYOiAnZW5kJyxcclxuICAgIG92ZXJsYXlZOiAnYm90dG9tJyxcclxuICAgIHBhbmVsQ2xhc3M6IFsnYWJvdmUnLCAnZW5kJ11cclxuICB9XSxcclxuICBBRlRFUjogQ29ubmVjdGVkUG9zaXRpb25bXSA9IFt7XHJcbiAgICBvcmlnaW5YOiAnZW5kJyxcclxuICAgIG9yaWdpblk6ICd0b3AnLFxyXG4gICAgb3ZlcmxheVg6ICdzdGFydCcsXHJcbiAgICBvdmVybGF5WTogJ3RvcCcsXHJcbiAgICBwYW5lbENsYXNzOiBbJ2FmdGVyJywgJ3N0YXJ0J11cclxuICB9LFxyXG4gIHtcclxuICAgIG9yaWdpblg6ICdlbmQnLFxyXG4gICAgb3JpZ2luWTogJ2NlbnRlcicsXHJcbiAgICBvdmVybGF5WDogJ3N0YXJ0JyxcclxuICAgIG92ZXJsYXlZOiAnY2VudGVyJyxcclxuICAgIHBhbmVsQ2xhc3M6IFsnYWZ0ZXInLCAnY2VudGVyJ11cclxuICB9LFxyXG4gIHtcclxuICAgIG9yaWdpblg6ICdlbmQnLFxyXG4gICAgb3JpZ2luWTogJ2JvdHRvbScsXHJcbiAgICBvdmVybGF5WDogJ3N0YXJ0JyxcclxuICAgIG92ZXJsYXlZOiAnYm90dG9tJyxcclxuICAgIHBhbmVsQ2xhc3M6IFsnYWZ0ZXInLCAnZW5kJ11cclxuICB9XSxcclxuICBCRUZPUkU6IENvbm5lY3RlZFBvc2l0aW9uW10gPSBbe1xyXG4gICAgb3JpZ2luWDogJ3N0YXJ0JyxcclxuICAgIG9yaWdpblk6ICd0b3AnLFxyXG4gICAgb3ZlcmxheVg6ICdlbmQnLFxyXG4gICAgb3ZlcmxheVk6ICd0b3AnLFxyXG4gICAgcGFuZWxDbGFzczogWydiZWZvcmUnLCAnc3RhcnQnXVxyXG4gIH0sIHtcclxuICAgIG9yaWdpblg6ICdzdGFydCcsXHJcbiAgICBvcmlnaW5ZOiAnY2VudGVyJyxcclxuICAgIG92ZXJsYXlYOiAnZW5kJyxcclxuICAgIG92ZXJsYXlZOiAnY2VudGVyJyxcclxuICAgIHBhbmVsQ2xhc3M6IFsnYmVmb3JlJywgJ2NlbnRlciddXHJcbiAgfSwge1xyXG4gICAgb3JpZ2luWDogJ3N0YXJ0JyxcclxuICAgIG9yaWdpblk6ICdjZW50ZXInLFxyXG4gICAgb3ZlcmxheVg6ICdlbmQnLFxyXG4gICAgb3ZlcmxheVk6ICdib3R0b20nLFxyXG4gICAgcGFuZWxDbGFzczogWydiZWZvcmUnLCAnZW5kJ11cclxuICB9XTtcclxuXHJcbkBDb21wb25lbnQoe1xyXG4gIHRlbXBsYXRlVXJsOiAnLi9ndWlkZS5jb21wb25lbnQuaHRtbCcsXHJcbiAgYW5pbWF0aW9uczogW3RyaWdnZXIoJ2JvZHknLCBbXHJcbiAgICBzdGF0ZSgnaGVyZScsIHN0eWxlKHsgd2lkdGg6ICcqJywgaGVpZ2h0OiAnKicgfSkpLFxyXG4gICAgdHJhbnNpdGlvbignKjw9PionLCBhbmltYXRlKCcyNTBtcycsIHN0eWxlKHt9KSkpXSldXHJcbn0pXHJcbmV4cG9ydCBjbGFzcyBHdWlkZUNvbXBvbmVudCBpbXBsZW1lbnRzIE9uSW5pdCB7XHJcbiAgc3RlcDogR3VpZGVTdGVwO1xyXG4gIGluZGV4ID0gMDtcclxuICByZWFkb25seSBjb3VudDogbnVtYmVyID0gdGhpcy5fZGF0YS5zdGVwcy5sZW5ndGg7XHJcbiAgd29ya2luZyA9IHRydWU7XHJcbiAgY29uc3RydWN0b3IoXHJcbiAgICBASW5qZWN0KFRPVVJfVE9LRU4pXHJcbiAgICBwcml2YXRlIF9kYXRhOiBHdWlkZSxcclxuICAgIHByaXZhdGUgX3Nlc3Npb246IFNlc3Npb25TZXJ2aWNlLFxyXG4gICAgcHJpdmF0ZSBfb3ZlcmxheTogT3ZlcmxheSxcclxuICAgIHByaXZhdGUgX25nUm91dGVyOiBSb3V0ZXIsXHJcbiAgICBwcml2YXRlIF9vdmVybGF5UmVmOiBPdmVybGF5UmVmKSB7XHJcbiAgfVxyXG4gIG5nT25Jbml0KCk6IHZvaWQge1xyXG4gICAgdGhpcy5fbW92ZSgwKTtcclxuICB9XHJcbiAgLyoqXHJcbiAgICogXHJcbiAgICogQHBhcmFtIGlcclxuICAgKi9cclxuICBwcml2YXRlIF9tb3ZlKGk6IDAgfCAxIHwgLTEpIHtcclxuICAgIGNvbnN0IGluZGV4ID0gdGhpcy5pbmRleCArIGk7XHJcbiAgICBpZiAoaW5kZXggPCAwIHx8IGluZGV4ID09IHRoaXMuY291bnQpIHJldHVybjtcclxuICAgIHRoaXMud29ya2luZyA9IHRydWU7XHJcbiAgICBjb25zdCBzdGVwID0gdGhpcy5fZGF0YS5zdGVwc1tpbmRleF07XHJcbiAgICBjb25zdCB7IHNlbGVjdG9yLCBwb3NpdGlvbiwgbmF2aWdhdGUsIHNpbXVsYXRlIH0gPSBzdGVwLCBwcm9taXNzZXM6IFByb21pc2U8YW55PltdID0gW107XHJcbiAgICBpZiAobmF2aWdhdGUpIHtcclxuICAgICAgY29uc3QgcHJvbWlzZSA9IHRoaXMuX25nUm91dGVyLm5hdmlnYXRlQnlVcmwobmF2aWdhdGUpO1xyXG4gICAgICBwcm9taXNzZXMucHVzaChwcm9taXNlKTtcclxuICAgIH1cclxuICAgIGxldCBwb3NpdGlvblN0cmF0ZWd5OiBQb3NpdGlvblN0cmF0ZWd5O1xyXG4gICAgaWYgKHNlbGVjdG9yKSB7XHJcbiAgICAgIGNvbnN0IGVsZW1lbnQgPSBkb2N1bWVudC5xdWVyeVNlbGVjdG9yKHNlbGVjdG9yKSBhcyBIVE1MRWxlbWVudDtcclxuICAgICAgaWYgKCFlbGVtZW50KVxyXG4gICAgICAgIHRocm93IGBHdWlkZSAke3RoaXMuX2RhdGEubmFtZX0gc3RlcCAke3RoaXMuaW5kZXh9IHNlbGVjdG9yICcke3NlbGVjdG9yfScgbm90IGZvdW5kLmA7XHJcblxyXG4gICAgICBsZXQgcG9zaXRpb25zOiBDb25uZWN0ZWRQb3NpdGlvbltdO1xyXG4gICAgICBzd2l0Y2ggKHBvc2l0aW9uKSB7XHJcbiAgICAgICAgY2FzZSAnQWJvdmUnOlxyXG4gICAgICAgICAgcG9zaXRpb25zID0gWy4uLkFCT1ZFLCAuLi5CRUxPVywgLi4uQUZURVIsIC4uLkJFRk9SRV07XHJcbiAgICAgICAgICBicmVhaztcclxuICAgICAgICBjYXNlICdFbmQnOlxyXG4gICAgICAgICAgcG9zaXRpb25zID0gWy4uLkFGVEVSLCAuLi5CRUZPUkUsIC4uLkJFTE9XLCAuLi5BQk9WRV07XHJcbiAgICAgICAgICBicmVhaztcclxuICAgICAgICBjYXNlICdTdGFydCc6XHJcbiAgICAgICAgICBwb3NpdGlvbnMgPSBbLi4uQkVGT1JFLCAuLi5BRlRFUiwgLi4uQkVMT1csIC4uLkFCT1ZFXTtcclxuICAgICAgICAgIGJyZWFrO1xyXG4gICAgICAgIGNhc2UgJ0JlbG93JzpcclxuICAgICAgICAgIHBvc2l0aW9ucyA9IFsuLi5CRUxPVywgLi4uQkVGT1JFLCAuLi5BQk9WRSwgLi4uQUZURVJdO1xyXG4gICAgICAgICAgYnJlYWs7XHJcbiAgICAgICAgZGVmYXVsdDpcclxuICAgICAgICAgIHBvc2l0aW9ucyA9IFsuLi5CRUZPUkUsIC4uLkJFTE9XLCAuLi5BQk9WRSwgLi4uQUZURVJdO1xyXG4gICAgICB9XHJcbiAgICAgIHBvc2l0aW9uU3RyYXRlZ3kgPSB0aGlzLl9vdmVybGF5LnBvc2l0aW9uKCkuXHJcbiAgICAgICAgZmxleGlibGVDb25uZWN0ZWRUbyhuZXcgRWxlbWVudFJlZihlbGVtZW50KSkuXHJcbiAgICAgICAgd2l0aFBvc2l0aW9ucyhwb3NpdGlvbnMpLlxyXG4gICAgICAgIHdpdGhHcm93QWZ0ZXJPcGVuKCk7XHJcbiAgICAgIGlmIChvdXRPZkJvdW5kKGVsZW1lbnQpKSB7XHJcbiAgICAgICAgcHJvbWlzc2VzLnB1c2gobmV3IFByb21pc2U8YW55PihyZXNvbHZlID0+IHtcclxuICAgICAgICAgIGNvbnN0IHRhc2sgPSBzZXRJbnRlcnZhbCgoKSA9PiB7XHJcbiAgICAgICAgICAgIGlmICghb3V0T2ZCb3VuZChlbGVtZW50KSkge1xyXG4gICAgICAgICAgICAgIGNsZWFySW50ZXJ2YWwodGFzayk7XHJcbiAgICAgICAgICAgICAgcmVzb2x2ZShudWxsKTtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgfSwgMTUwKTtcclxuICAgICAgICB9KSk7XHJcbiAgICAgICAgZWxlbWVudC5zY3JvbGxJbnRvVmlldyh7IGJlaGF2aW9yOiAnc21vb3RoJyB9KTtcclxuICAgICAgfVxyXG4gICAgICBzaW11bGF0ZSAmJlxyXG4gICAgICAgIHByb21pc3Nlcy5wdXNoKG5ldyBQcm9taXNlKHJlc29sdmUgPT4ge1xyXG4gICAgICAgICAgZWxlbWVudC5jbGljaygpO1xyXG4gICAgICAgICAgcmVzb2x2ZShudWxsKTtcclxuICAgICAgICB9KSk7XHJcbiAgICB9XHJcbiAgICBlbHNlIHBvc2l0aW9uU3RyYXRlZ3kgPSB0aGlzLl9vdmVybGF5LnBvc2l0aW9uKCkuZ2xvYmFsKCkuY2VudGVyVmVydGljYWxseSgpLmNlbnRlckhvcml6b250YWxseSgpO1xyXG5cclxuICAgIGNvbnN0IGNvbXBsZXRlID0gKCkgPT4ge1xyXG4gICAgICB0aGlzLmluZGV4ID0gaW5kZXg7XHJcbiAgICAgIHRoaXMuc3RlcCA9IHN0ZXA7XHJcbiAgICAgIHRoaXMud29ya2luZyA9IGZhbHNlO1xyXG4gICAgICB0aGlzLl9vdmVybGF5UmVmLnVwZGF0ZVBvc2l0aW9uU3RyYXRlZ3kocG9zaXRpb25TdHJhdGVneSk7XHJcbiAgICAgIHRoaXMuX292ZXJsYXlSZWYudXBkYXRlUG9zaXRpb24oKTtcclxuICAgIH07XHJcbiAgICBwcm9taXNzZXMubGVuZ3RoID8gUHJvbWlzZS5hbGwocHJvbWlzc2VzKS50aGVuKCgpID0+IGNvbXBsZXRlKCkpIDogY29tcGxldGUoKTtcclxuICB9XHJcbiAgQEhvc3RMaXN0ZW5lcignd2luZG93OmtleWRvd24nLCBbJyRldmVudCddKVxyXG4gIGtleWRvd24oZXZ0OiBLZXlib2FyZEV2ZW50KSB7XHJcbiAgICBpZiAoIXRoaXMud29ya2luZylcclxuICAgICAgc3dpdGNoIChldnQua2V5Q29kZSkge1xyXG4gICAgICAgIGNhc2UgTEVGVF9BUlJPVzpcclxuICAgICAgICAgIHRoaXMuX21vdmUodGhpcy5fc2Vzc2lvbi5kaXJlY3Rpb24gPT09ICdsdHInID8gLTEgOiAxKTtcclxuICAgICAgICAgIGJyZWFrO1xyXG4gICAgICAgIGNhc2UgUklHSFRfQVJST1c6XHJcbiAgICAgICAgICB0aGlzLl9tb3ZlKHRoaXMuX3Nlc3Npb24uZGlyZWN0aW9uID09PSAnbHRyJyA/IDEgOiAtMSk7XHJcbiAgICAgICAgICBicmVhaztcclxuICAgICAgICBjYXNlIEVTQ0FQRTpcclxuICAgICAgICAgIHRoaXMuY2xvc2UoKTtcclxuICAgICAgICAgIGV2dC5zdG9wUHJvcGFnYXRpb24oKTtcclxuICAgICAgICAgIGJyZWFrO1xyXG4gICAgICB9XHJcbiAgfVxyXG4gIG5leHQoKSB7XHJcbiAgICB0aGlzLl9tb3ZlKDEpO1xyXG4gIH1cclxuICBwcmV2KCkge1xyXG4gICAgdGhpcy5fbW92ZSgtMSk7XHJcbiAgfVxyXG4gIGNsb3NlKCkge1xyXG4gICAgdGhpcy5fb3ZlcmxheVJlZi5kZXRhY2goKTtcclxuICB9XHJcbn1cclxuIiwiPGRpdiBjbGFzcz1cImNvbnRhaW5lclwiIFtzdHlsZS5kaXNwbGF5XT1cInN0ZXAgPyAnJzogJ25vbmUnXCIgY2RrVHJhcEZvY3VzPlxyXG4gIDxkaXYgZnhMYXlvdXQ9XCJjb2x1bW5cIiBjbGFzcz1cImNvbnRlbnRcIj5cclxuICAgIDxkaXYgZnhMYXlvdXQ9XCJyb3dcIj5cclxuICAgICAgPGgyICpuZ0lmPVwic3RlcD8udGl0bGVcIiBjbGFzcz1cIm1hdC1oMlwiPnt7c3RlcD8udGl0bGV9fTwvaDI+XHJcbiAgICAgIDxzcGFuIGNsYXNzPVwiZGl2aWRlclwiPjwvc3Bhbj5cclxuICAgICAgPGJ1dHRvbiBtYXQtaWNvbi1idXR0b24gKGNsaWNrKT1cImNsb3NlKClcIiAqbmdJZj1cImluZGV4IDwgY291bnQgLSAxXCI+PG1hdC1pY29uPmNsb3NlPC9tYXQtaWNvbj48L2J1dHRvbj5cclxuICAgIDwvZGl2PlxyXG4gICAgPHAgY2xhc3M9XCJtYXQtYm9keVwiIFtpbm5lckhUTUxdPVwic3RlcD8uY29udGVudCB8IHNhbml0aXplSHRtbFwiPlxyXG4gICAgPC9wPlxyXG4gICAgPGRpdiBmeExheW91dD1cInJvd1wiPlxyXG4gICAgICA8c3BhbiBjbGFzcz1cImRpdmlkZXJcIj48L3NwYW4+XHJcbiAgICAgIDxidXR0b24gbWF0LWljb24tYnV0dG9uIChjbGljayk9XCJwcmV2KClcIiBbZGlzYWJsZWRdPVwiaW5kZXggPT09IDAgfHwgd29ya2luZ1wiPjxtYXQtaWNvbiBjbGFzcz1cIm1hdC1pY29uLXJ0bC1taXJyb3JcIj5rZXlib2FyZF9hcnJvd19sZWZ0PC9tYXQtaWNvbj48L2J1dHRvbj5cclxuICAgICAgPGJ1dHRvbiBtYXQtaWNvbi1idXR0b24gKGNsaWNrKT1cIm5leHQoKVwiIFtkaXNhYmxlZF09XCJpbmRleCA9PT0gY291bnQgLSAxIHx8IHdvcmtpbmdcIiBjZGtGb2N1c0luaXRpYWw+PG1hdC1pY29uIGNsYXNzPVwibWF0LWljb24tcnRsLW1pcnJvclwiPmtleWJvYXJkX2Fycm93X3JpZ2h0PC9tYXQtaWNvbj48L2J1dHRvbj5cclxuICAgICAgPGJ1dHRvbiBtYXQtYnV0dG9uIChjbGljayk9XCJjbG9zZSgpXCIgKm5nSWY9XCJpbmRleCA9PT0gY291bnQgLSAxXCI+e3snR3VpZGVGaW5pc2gnfHRyYW5zbGF0ZX19PC9idXR0b24+XHJcbiAgICA8L2Rpdj5cclxuICA8L2Rpdj5cclxuICA8ZGl2IGNsYXNzPVwidG9vbHRpcC1jb250YWluZXJcIj5cclxuICAgIDxkaXYgY2xhc3M9XCJ0b29sdGlwXCI+PC9kaXY+XHJcbiAgPC9kaXY+XHJcbjwvZGl2PlxyXG4iXX0=
@@ -0,0 +1,107 @@
1
+ import { Injectable, Inject, Injector } from '@angular/core';
2
+ import { OverlayRef } from "@angular/cdk/overlay";
3
+ import { ComponentPortal } from "@angular/cdk/portal";
4
+ import { isMobile, isString } from '../functions';
5
+ import { BIZDOC_CONFIG } from '../configuration';
6
+ import { GuideComponent, TOUR_TOKEN } from './guide.component';
7
+ import * as i0 from "@angular/core";
8
+ import * as i1 from "@angular/cdk/overlay";
9
+ import * as i2 from "../session.service";
10
+ import * as i3 from "../translate.service";
11
+ /** */
12
+ export class GuideService {
13
+ constructor(_overlay, _injector, _session, _translate, _config) {
14
+ this._overlay = _overlay;
15
+ this._injector = _injector;
16
+ this._session = _session;
17
+ this._translate = _translate;
18
+ this._config = _config;
19
+ const guides = [this._intro()];
20
+ this._guides = guides.concat(this._session.profile.guides);
21
+ }
22
+ /** */
23
+ _intro() {
24
+ const mobile = isMobile();
25
+ const steps = [
26
+ { selector: '[data-help=compose]', content: this._translate.get('ComposeHelp'), position: 'End', title: this._translate.get('Compose') }
27
+ ];
28
+ steps.push({ navigate: 'dashboard', selector: '[data-help=dashboard]', content: this._translate.get('DashboardHelp'), title: this._translate.get('Dashboard') });
29
+ steps.push({
30
+ navigate: 'mailbox/f/ib',
31
+ selector: '[data-help=folders]',
32
+ simulate: !mobile,
33
+ content: this._translate.get('MailboxHelp'),
34
+ title: this._translate.get('Mailbox')
35
+ });
36
+ if (!this._config || this._config.chating !== false)
37
+ steps.push({
38
+ selector: '[data-help=chat]', content: this._translate.get('ChatHelp'),
39
+ simulate: !mobile,
40
+ position: 'Start', title: this._translate.get('Chat')
41
+ });
42
+ if (this._session.profile.cubes.length && this._session.profile.cubes[0].views.length) {
43
+ let path = `cube/${this._session.profile.cubes[0].name}/v/${this._session.profile.cubes[0].views[0].name}`;
44
+ steps.push({
45
+ simulate: !mobile,
46
+ navigate: path, selector: '[data-help=cube]',
47
+ content: this._translate.get('CubeHelp'), title: this._translate.get('Cube')
48
+ });
49
+ }
50
+ steps.push({ selector: '[data-help=notifications]', content: this._translate.get('NotificationsHelp'), title: this._translate.get('Notifications') });
51
+ return {
52
+ name: 'intro',
53
+ title: this._translate.get('Introduction'),
54
+ steps
55
+ };
56
+ }
57
+ get guides() {
58
+ return this._guides;
59
+ }
60
+ /**
61
+ *
62
+ * @param name
63
+ */
64
+ seen(name) {
65
+ return this._session.profile.options.guides && this._session.profile.options.guides.indexOf(name) > -1;
66
+ }
67
+ /**
68
+ *
69
+ * @param options
70
+ */
71
+ start(options) {
72
+ let guide;
73
+ if (isString(options)) {
74
+ guide = this._guides.find(g => g.name === options);
75
+ if (!guide)
76
+ throw `guide ${options} not found`;
77
+ }
78
+ else
79
+ guide = options;
80
+ !this.seen(guide.name) && this._session.guide(guide.name).subscribe();
81
+ const oRef = this._overlay.create({
82
+ panelClass: 'guide-panel',
83
+ hasBackdrop: true,
84
+ backdropClass: 'cdk-overlay-dark-backdrop',
85
+ disposeOnNavigation: true,
86
+ direction: this._session.direction
87
+ });
88
+ const injector = Injector.create([{
89
+ provide: TOUR_TOKEN, useValue: guide
90
+ }, {
91
+ provide: OverlayRef, useValue: oRef
92
+ }], this._injector);
93
+ const portal = new ComponentPortal(GuideComponent, null, injector);
94
+ oRef.attach(portal);
95
+ oRef.backdropClick().subscribe(() => oRef.detach());
96
+ }
97
+ }
98
+ GuideService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.2.2", ngImport: i0, type: GuideService, deps: [{ token: i1.Overlay }, { token: i0.Injector }, { token: i2.SessionService }, { token: i3.TranslateService }, { token: BIZDOC_CONFIG }], target: i0.ɵɵFactoryTarget.Injectable });
99
+ GuideService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "13.2.2", ngImport: i0, type: GuideService, providedIn: 'root' });
100
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.2.2", ngImport: i0, type: GuideService, decorators: [{
101
+ type: Injectable,
102
+ args: [{ providedIn: 'root' }]
103
+ }], ctorParameters: function () { return [{ type: i1.Overlay }, { type: i0.Injector }, { type: i2.SessionService }, { type: i3.TranslateService }, { type: undefined, decorators: [{
104
+ type: Inject,
105
+ args: [BIZDOC_CONFIG]
106
+ }] }]; } });
107
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZ3VpZGUuc2VydmljZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL2xpYnJhcmllcy9jb3JlL3NyYy9saWIvY29yZS9ndWlkZS9ndWlkZS5zZXJ2aWNlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSxFQUFFLFFBQVEsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUM3RCxPQUFPLEVBQVcsVUFBVSxFQUFFLE1BQU0sc0JBQXNCLENBQUM7QUFDM0QsT0FBTyxFQUFFLGVBQWUsRUFBRSxNQUFNLHFCQUFxQixDQUFDO0FBQ3RELE9BQU8sRUFBRSxRQUFRLEVBQUUsUUFBUSxFQUFFLE1BQU0sY0FBYyxDQUFDO0FBQ2xELE9BQU8sRUFBRSxhQUFhLEVBQWdCLE1BQU0sa0JBQWtCLENBQUM7QUFFL0QsT0FBTyxFQUFFLGNBQWMsRUFBRSxVQUFVLEVBQUUsTUFBTSxtQkFBbUIsQ0FBQzs7Ozs7QUFHL0QsTUFBTTtBQUVOLE1BQU0sT0FBTyxZQUFZO0lBRXZCLFlBQW9CLFFBQWlCLEVBQzNCLFNBQW1CLEVBQ25CLFFBQXdCLEVBQ3hCLFVBQTRCLEVBQ0wsT0FBcUI7UUFKbEMsYUFBUSxHQUFSLFFBQVEsQ0FBUztRQUMzQixjQUFTLEdBQVQsU0FBUyxDQUFVO1FBQ25CLGFBQVEsR0FBUixRQUFRLENBQWdCO1FBQ3hCLGVBQVUsR0FBVixVQUFVLENBQWtCO1FBQ0wsWUFBTyxHQUFQLE9BQU8sQ0FBYztRQUNwRCxNQUFNLE1BQU0sR0FBWSxDQUFDLElBQUksQ0FBQyxNQUFNLEVBQUUsQ0FBQyxDQUFDO1FBQ3hDLElBQUksQ0FBQyxPQUFPLEdBQUcsTUFBTSxDQUFDLE1BQU0sQ0FBQyxJQUFJLENBQUMsUUFBUSxDQUFDLE9BQU8sQ0FBQyxNQUFNLENBQUMsQ0FBQztJQUM3RCxDQUFDO0lBQ0QsTUFBTTtJQUNFLE1BQU07UUFDWixNQUFNLE1BQU0sR0FBRyxRQUFRLEVBQUUsQ0FBQztR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LEVBQUUsVUFBVSxFQUFFLFFBQVEsRUFBRSxJQUFJO2FBQ3BDLENBQUMsRUFBRSxJQUFJLENBQUMsU0FBUyxDQUFDLENBQUM7UUFDcEIsTUFBTSxNQUFNLEdBQUcsSUFBSSxlQUFlLENBQUMsY0FBYyxFQUFFLElBQUksRUFBRSxRQUFRLENBQUMsQ0FBQztRQUNuRSxJQUFJLENBQUMsTUFBTSxDQUFDLE1BQU0sQ0FBQyxDQUFDO1FBQ3BCLElBQUksQ0FBQyxhQUFhLEVBQUUsQ0FBQyxTQUFTLENBQUMsR0FBRyxFQUFFLENBQUMsSUFBSSxDQUFDLE1BQU0sRUFBRSxDQUFDLENBQUM7SUFDdEQsQ0FBQzs7eUdBckZVLFlBQVksK0hBTWIsYUFBYTs2R0FOWixZQUFZLGNBREMsTUFBTTsyRkFDbkIsWUFBWTtrQkFEeEIsVUFBVTttQkFBQyxFQUFFLFVBQVUsRUFBRSxNQUFNLEVBQUU7OzBCQU83QixNQUFNOzJCQUFDLGFBQWEiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBJbmplY3RhYmxlLCBJbmplY3QsIEluamVjdG9yIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XHJcbmltcG9ydCB7IE92ZXJsYXksIE92ZXJsYXlSZWYgfSBmcm9tIFwiQGFuZ3VsYXIvY2RrL292ZXJsYXlcIjtcclxuaW1wb3J0IHsgQ29tcG9uZW50UG9ydGFsIH0gZnJvbSBcIkBhbmd1bGFyL2Nkay9wb3J0YWxcIjtcclxuaW1wb3J0IHsgaXNNb2JpbGUsIGlzU3RyaW5nIH0gZnJvbSAnLi4vZnVuY3Rpb25zJztcclxuaW1wb3J0IHsgQklaRE9DX0NPTkZJRywgQml6RG9jQ29uZmlnIH0gZnJvbSAnLi4vY29uZmlndXJhdGlvbic7XHJcbmltcG9ydCB7IEd1aWRlU3RlcCwgR3VpZGUgfSBmcm9tICcuLi9tb2RlbHMnO1xyXG5pbXBvcnQgeyBHdWlkZUNvbXBvbmVudCwgVE9VUl9UT0tFTiB9IGZyb20gJy4vZ3VpZGUuY29tcG9uZW50JztcclxuaW1wb3J0IHsgU2Vzc2lvblNlcnZpY2UgfSBmcm9tICcuLi9zZXNzaW9uLnNlcnZpY2UnO1xyXG5pbXBvcnQgeyBUcmFuc2xhdGVTZXJ2aWNlIH0gZnJvbSAnLi4vdHJhbnNsYXRlLnNlcnZpY2UnO1xyXG4vKiogKi9cclxuQEluamVjdGFibGUoeyBwcm92aWRlZEluOiAncm9vdCcgfSlcclxuZXhwb3J0IGNsYXNzIEd1aWRlU2VydmljZSB7XHJcbiAgcHJpdmF0ZSBfZ3VpZGVzOiBHdWlkZVtdO1xyXG4gIGNvbnN0cnVjdG9yKHByaXZhdGUgX292ZXJsYXk6IE92ZXJsYXksXHJcbiAgICBwcml2YXRlIF9pbmplY3RvcjogSW5qZWN0b3IsXHJcbiAgICBwcml2YXRlIF9zZXNzaW9uOiBTZXNzaW9uU2VydmljZSxcclxuICAgIHByaXZhdGUgX3RyYW5zbGF0ZTogVHJhbnNsYXRlU2VydmljZSxcclxuICAgIEBJbmplY3QoQklaRE9DX0NPTkZJRykgcHJpdmF0ZSBfY29uZmlnOiBCaXpEb2NDb25maWcpIHtcclxuICAgIGNvbnN0IGd1aWRlczogR3VpZGVbXSA9IFt0aGlzLl9pbnRybygpXTtcclxuICAgIHRoaXMuX2d1aWRlcyA9IGd1aWRlcy5jb25jYXQodGhpcy5fc2Vzc2lvbi5wcm9maWxlLmd1aWRlcyk7XHJcbiAgfVxyXG4gIC8qKiAqL1xyXG4gIHByaXZhdGUgX2ludHJvKCk6IEd1aWRlIHtcclxuICAgIGNvbnN0IG1vYmlsZSA9IGlzTW9iaWxlKCk7XHJcbiAgICBjb25zdCBzdGVwczogR3VpZGVTdGVwW10gPSBbXHJcbiAgICAgIHsgc2VsZWN0b3I6ICdbZGF0YS1oZWxwPWNvbXBvc2VdJywgY29udGVudDogdGhpcy5fdHJhbnNsYXRlLmdldCgnQ29tcG9zZUhlbHAnKSwgcG9zaXRpb246ICdFbmQnLCB0aXRsZTogdGhpcy5fdHJhbnNsYXRlLmdldCgnQ29tcG9zZScpIH1cclxuICAgIF07XHJcbiAgICBzdGVwcy5wdXNoKHsgbmF2aWdhdGU6ICdkYXNoYm9hcmQnLCBzZWxlY3RvcjogJ1tkYXRhLWhlbHA9ZGFzaGJvYXJkXScsIGNvbnRlbnQ6IHRoaXMuX3RyYW5zbGF0ZS5nZXQoJ0Rhc2hib2FyZEhlbHAnKSwgdGl0bGU6IHRoaXMuX3RyYW5zbGF0ZS5nZXQoJ0Rhc2hib2FyZCcpIH0pO1xyXG4gICAgc3RlcHMucHVzaCh7XHJcbiAgICAgIG5hdmlnYXRlOiAnbWFpbGJveC9mL2liJyxcclxuICAgICAgc2VsZWN0b3I6ICdbZGF0YS1oZWxwPWZvbGRlcnNdJyxcclxuICAgICAgc2ltdWxhdGU6ICFtb2JpbGUsXHJcbiAgICAgIGNvbnRlbnQ6IHRoaXMuX3RyYW5zbGF0ZS5nZXQoJ01haWxib3hIZWxwJyksXHJcbiAgICAgIHRpdGxlOiB0aGlzLl90cmFuc2xhdGUuZ2V0KCdNYWlsYm94JylcclxuICAgIH0pO1xyXG4gICAgaWYgKCF0aGlzLl9jb25maWcgfHwgdGhpcy5fY29uZmlnLmNoYXRpbmcgIT09IGZhbHNlKVxyXG4gICAgICBzdGVwcy5wdXNoKHtcclxuICAgICAgICBzZWxlY3RvcjogJ1tkYXRhLWhlbHA9Y2hhdF0nLCBjb250ZW50OiB0aGlzLl90cmFuc2xhdGUuZ2V0KCdDaGF0SGVscCcpLFxyXG4gICAgICAgIHNpbXVsYXRlOiAhbW9iaWxlLFxyXG4gICAgICAgIHBvc2l0aW9uOiAnU3RhcnQnLCB0aXRsZTogdGhpcy5fdHJhbnNsYXRlLmdldCgnQ2hhdCcpXHJcbiAgICAgIH0pO1xyXG4gICAgaWYgKHRoaXMuX3Nlc3Npb24ucHJvZmlsZS5jdWJlcy5sZW5ndGggJiYgdGhpcy5fc2Vzc2lvbi5wcm9maWxlLmN1YmVzWzBdLnZpZXdzLmxlbmd0aCkge1xyXG4gICAgICBsZXQgcGF0aCA9IGBjdWJlLyR7dGhpcy5fc2Vzc2lvbi5wcm9maWxlLmN1YmVzWzBdLm5hbWV9L3YvJHt0aGlzLl9zZXNzaW9uLnByb2ZpbGUuY3ViZXNbMF0udmlld3NbMF0ubmFtZX1gO1xyXG4gICAgICBzdGVwcy5wdXNoKHtcclxuICAgICAgICBzaW11bGF0ZTogIW1vYmlsZSxcclxuICAgICAgICBuYXZpZ2F0ZTogcGF0aCwgc2VsZWN0b3I6ICdbZGF0YS1oZWxwPWN1YmVdJyxcclxuICAgICAgICBjb250ZW50OiB0aGlzLl90cmFuc2xhdGUuZ2V0KCdDdWJlSGVscCcpLCB0aXRsZTogdGhpcy5fdHJhbnNsYXRlLmdldCgnQ3ViZScpXHJcbiAgICAgIH0pO1xyXG4gICAgfVxyXG4gICAgc3RlcHMucHVzaChcclxuICAgICAgeyBzZWxlY3RvcjogJ1tkYXRhLWhlbHA9bm90aWZpY2F0aW9uc10nLCBjb250ZW50OiB0aGlzLl90cmFuc2xhdGUuZ2V0KCdOb3RpZmljYXRpb25zSGVscCcpLCB0aXRsZTogdGhpcy5fdHJhbnNsYXRlLmdldCgnTm90aWZpY2F0aW9ucycpIH1cclxuICAgICk7XHJcbiAgICByZXR1cm4ge1xyXG4gICAgICBuYW1lOiAnaW50cm8nLFxyXG4gICAgICB0aXRsZTogdGhpcy5fdHJhbnNsYXRlLmdldCgnSW50cm9kdWN0aW9uJyksXHJcbiAgICAgIHN0ZXBzXHJcbiAgICB9IGFzIEd1aWRlO1xyXG4gIH1cclxuXHJcbiAgZ2V0IGd1aWRlcygpOiBHdWlkZVtdIHtcclxuICAgIHJldHVybiB0aGlzLl9ndWlkZXM7XHJcbiAgfVxyXG4gIC8qKlxyXG4gICAqIFxyXG4gICAqIEBwYXJhbSBuYW1lXHJcbiAgICovXHJcbiAgc2VlbihuYW1lOiBzdHJpbmcpOiBib29sZWFuIHtcclxuICAgIHJldHVybiB0aGlzLl9zZXNzaW9uLnByb2ZpbGUub3B0aW9ucy5ndWlkZXMgJiYgdGhpcy5fc2Vzc2lvbi5wcm9maWxlLm9wdGlvbnMuZ3VpZGVzLmluZGV4T2YobmFtZSkgPiAtMTtcclxuICB9XHJcbiAgLyoqXHJcbiAgICogXHJcbiAgICogQHBhcmFtIG9wdGlvbnNcclxuICAgKi9cclxuICBzdGFydChvcHRpb25zOiBHdWlkZSB8IHN0cmluZykge1xyXG4gICAgbGV0IGd1aWRlOiBHdWlkZTtcclxuICAgIGlmIChpc1N0cmluZyhvcHRpb25zKSkge1xyXG4gICAgICBndWlkZSA9IHRoaXMuX2d1aWRlcy5maW5kKGcgPT4gZy5uYW1lID09PSBvcHRpb25zKTtcclxuICAgICAgaWYgKCFndWlkZSkgdGhyb3cgYGd1aWRlICR7b3B0aW9uc30gbm90IGZvdW5kYDtcclxuICAgIH1cclxuICAgIGVsc2UgZ3VpZGUgPSBvcHRpb25zIGFzIEd1aWRlO1xyXG4gICAgIXRoaXMuc2VlbihndWlkZS5uYW1lKSAmJiB0aGlzLl9zZXNzaW9uLmd1aWRlKGd1aWRlLm5hbWUpLnN1YnNjcmliZSgpO1xyXG4gICAgY29uc3Qgb1JlZiA9IHRoaXMuX292ZXJsYXkuY3JlYXRlKHtcclxuICAgICAgcGFuZWxDbGFzczogJ2d1aWRlLXBhbmVsJyxcclxuICAgICAgaGFzQmFja2Ryb3A6IHRydWUsXHJcbiAgICAgIGJhY2tkcm9wQ2xhc3M6ICdjZGstb3ZlcmxheS1kYXJrLWJhY2tkcm9wJyxcclxuICAgICAgZGlzcG9zZU9uTmF2aWdhdGlvbjogdHJ1ZSxcclxuICAgICAgZGlyZWN0aW9uOiB0aGlzLl9zZXNzaW9uLmRpcmVjdGlvblxyXG4gICAgfSk7XHJcbiAgICBjb25zdCBpbmplY3RvciA9IEluamVjdG9yLmNyZWF0ZShbe1xyXG4gICAgICBwcm92aWRlOiBUT1VSX1RPS0VOLCB1c2VWYWx1ZTogZ3VpZGVcclxuICAgIH0sIHtcclxuICAgICAgcHJvdmlkZTogT3ZlcmxheVJlZiwgdXNlVmFsdWU6IG9SZWZcclxuICAgIH1dLCB0aGlzLl9pbmplY3Rvcik7XHJcbiAgICBjb25zdCBwb3J0YWwgPSBuZXcgQ29tcG9uZW50UG9ydGFsKEd1aWRlQ29tcG9uZW50LCBudWxsLCBpbmplY3Rvcik7XHJcbiAgICBvUmVmLmF0dGFjaChwb3J0YWwpO1xyXG4gICAgb1JlZi5iYWNrZHJvcENsaWNrKCkuc3Vic2NyaWJlKCgpID0+IG9SZWYuZGV0YWNoKCkpO1xyXG4gIH1cclxufVxyXG4iXX0=