@bizdoc/core 1.14.9 → 1.14.12

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 (1248) hide show
  1. package/assets/bizdoc-schema.json +7 -3
  2. package/assets/themes/xslt.min.css +1 -0
  3. package/bizdoc-core.d.ts +5 -0
  4. package/esm2020/bizdoc-core.mjs +5 -0
  5. package/esm2020/lib/admin/admin-dismiss.service.mjs +22 -0
  6. package/esm2020/lib/admin/admin-menu.component.mjs +27 -0
  7. package/esm2020/lib/admin/core/ace.input.mjs +147 -0
  8. package/esm2020/lib/admin/core/color-picker.input.mjs +208 -0
  9. package/esm2020/lib/admin/core/search.input.mjs +43 -0
  10. package/esm2020/lib/admin/diff/configuration-diff.component.mjs +558 -0
  11. package/esm2020/lib/admin/document-trace/document-trace.component.mjs +532 -0
  12. package/esm2020/lib/admin/document-trace/reassign.dialog.mjs +40 -0
  13. package/esm2020/lib/admin/document-trace/timeline.mjs +2 -0
  14. package/esm2020/lib/admin/document-trace/trace-element.component.mjs +123 -0
  15. package/esm2020/lib/admin/form/form.resolve.service.mjs +17 -0
  16. package/esm2020/lib/admin/form/form.service.mjs +43 -0
  17. package/esm2020/lib/admin/form/workflow/node-ref.mjs +8 -0
  18. package/esm2020/lib/admin/form/workflow/node.component.mjs +128 -0
  19. package/esm2020/lib/admin/form/workflow/role-node.component.mjs +90 -0
  20. package/esm2020/lib/admin/form/workflow/workflow.component.mjs +441 -0
  21. package/esm2020/lib/admin/indices/manage-cube-index.component.mjs +161 -0
  22. package/esm2020/lib/admin/patterns/patterns.component.mjs +179 -0
  23. package/esm2020/lib/admin/permissions/permissions.component.mjs +97 -0
  24. package/esm2020/lib/admin/positions/positions-popup.component.mjs +74 -0
  25. package/esm2020/lib/admin/positions/positions.component.mjs +460 -0
  26. package/esm2020/lib/admin/profiler/outofoffice.component.mjs +155 -0
  27. package/esm2020/lib/admin/profiler/profiler.component.mjs +281 -0
  28. package/esm2020/lib/admin/utility-ref.mjs +38 -0
  29. package/esm2020/lib/admin/utility-wrapper.component.mjs +51 -0
  30. package/esm2020/lib/admin/utility.pane.component.mjs +51 -0
  31. package/esm2020/lib/app.component.mjs +91 -0
  32. package/esm2020/lib/bizdoc.module.mjs +101 -0
  33. package/esm2020/lib/browse/browse-items.component.mjs +481 -0
  34. package/esm2020/lib/browse/browse.mobile.component.mjs +101 -0
  35. package/esm2020/lib/browse/browse.pane.component.mjs +148 -0
  36. package/esm2020/lib/browse/expanded-item/expanded-item.component.mjs +316 -0
  37. package/esm2020/lib/browse/filter/filter.component.mjs +164 -0
  38. package/esm2020/lib/browse/folders-menu.component.mjs +51 -0
  39. package/esm2020/lib/chat/chat-info.mjs +68 -0
  40. package/esm2020/lib/chat/chat.mobile.component.mjs +26 -0
  41. package/esm2020/lib/chat/chat.service.mjs +122 -0
  42. package/esm2020/lib/chat/contacts.component.mjs +103 -0
  43. package/esm2020/lib/chat/contacts.pane.component.mjs +29 -0
  44. package/esm2020/lib/chat/conversation.component.mjs +193 -0
  45. package/esm2020/lib/chat/conversation.pane.component.mjs +53 -0
  46. package/esm2020/lib/compose/action/action-picker.component.mjs +84 -0
  47. package/esm2020/lib/compose/action/action-ref.mjs +19 -0
  48. package/esm2020/lib/compose/action/action.base.mjs +49 -0
  49. package/esm2020/lib/compose/action/action.dialog.mjs +61 -0
  50. package/esm2020/lib/compose/action/action.pane.dialog.exp.mjs +72 -0
  51. package/esm2020/lib/compose/action/assign-action.component.mjs +70 -0
  52. package/esm2020/lib/compose/action/moveto-action.component.mjs +91 -0
  53. package/esm2020/lib/compose/action/return-action.component.mjs +52 -0
  54. package/esm2020/lib/compose/attachments/attachments.component.mjs +127 -0
  55. package/esm2020/lib/compose/attachments/preview/attachment-preview.component.mjs +155 -0
  56. package/esm2020/lib/compose/attachments/progress-button.directive.mjs +25 -0
  57. package/esm2020/lib/compose/can-deactivate-changes.service.mjs +27 -0
  58. package/esm2020/lib/compose/comments/Comments.pane.component.mjs +49 -0
  59. package/esm2020/lib/compose/comments/comment.component.mjs +186 -0
  60. package/esm2020/lib/compose/comments/comments.component.mjs +227 -0
  61. package/esm2020/lib/compose/comments/edit-comment.component.mjs +32 -0
  62. package/esm2020/lib/compose/comments/edits.component.mjs +30 -0
  63. package/esm2020/lib/compose/comments/quick-comment.component.exp.mjs +63 -0
  64. package/esm2020/lib/compose/comments/votes.component.mjs +42 -0
  65. package/esm2020/lib/compose/compose-resolve.service.mjs +55 -0
  66. package/esm2020/lib/compose/compose.mobile.component.mjs +112 -0
  67. package/esm2020/lib/compose/compose.pane.component.mjs +205 -0
  68. package/esm2020/lib/compose/copy/copy.dialog.mjs +46 -0
  69. package/esm2020/lib/compose/dismiss.service.mjs +25 -0
  70. package/esm2020/lib/compose/document-resolver.service.mjs +17 -0
  71. package/esm2020/lib/compose/document.component.mjs +45 -0
  72. package/esm2020/lib/compose/document.mobile.component.mjs +22 -0
  73. package/esm2020/lib/compose/document.pane.component.mjs +26 -0
  74. package/esm2020/lib/compose/events/events.component.mjs +30 -0
  75. package/esm2020/lib/compose/form-ref.mjs +46 -0
  76. package/esm2020/lib/compose/form-selector/form-selector.sheet.mjs +88 -0
  77. package/esm2020/lib/compose/form.component.mjs +458 -0
  78. package/esm2020/lib/compose/new-menu.component.mjs +104 -0
  79. package/esm2020/lib/compose/privilage.directive.mjs +64 -0
  80. package/esm2020/lib/compose/recipient-resolver.service.mjs +18 -0
  81. package/esm2020/lib/compose/save-changes.dialog.mjs +18 -0
  82. package/esm2020/lib/compose/state.component.mjs +37 -0
  83. package/esm2020/lib/compose/tag/tags.component.mjs +91 -0
  84. package/esm2020/lib/compose/trace/flow.component.mjs +699 -0
  85. package/esm2020/lib/compose/trace/people.component.mjs +35 -0
  86. package/esm2020/lib/compose/trace/trace.base.mjs +71 -0
  87. package/esm2020/lib/compose/trace/trace.component.mjs +359 -0
  88. package/esm2020/lib/compose/trace/trace.pane.component.mjs +52 -0
  89. package/esm2020/lib/compose/version-compare/version-compare.component.mjs +53 -0
  90. package/esm2020/lib/compose/version-compare/version-compare.directive.mjs +344 -0
  91. package/esm2020/lib/compose/version-compare/version.pane.component.mjs +56 -0
  92. package/esm2020/lib/core/NgComponentOutlet.mjs +38 -0
  93. package/esm2020/lib/core/account.service.mjs +37 -0
  94. package/esm2020/lib/core/animated-icon/animated-icon.directive.mjs +17 -0
  95. package/esm2020/lib/core/animations.mjs +156 -0
  96. package/esm2020/lib/core/authentication.mjs +3 -0
  97. package/esm2020/lib/core/avatar/avatar.component.mjs +103 -0
  98. package/esm2020/lib/core/base.mjs +2 -0
  99. package/esm2020/lib/core/colors.mjs +322 -0
  100. package/esm2020/lib/core/component-factory-resolver.mjs +64 -0
  101. package/esm2020/lib/core/configuration.mjs +17 -0
  102. package/esm2020/lib/core/controls/address.input.mjs +206 -0
  103. package/esm2020/lib/core/controls/auto-complete.input.mjs +256 -0
  104. package/esm2020/lib/core/controls/combination-picker-body.mjs +173 -0
  105. package/esm2020/lib/core/controls/combination-picker.mjs +277 -0
  106. package/esm2020/lib/core/controls/combination-pool.mjs +105 -0
  107. package/esm2020/lib/core/controls/file.input.mjs +420 -0
  108. package/esm2020/lib/core/controls/select.input.mjs +237 -0
  109. package/esm2020/lib/core/controls/time-picker.mjs +196 -0
  110. package/esm2020/lib/core/controls/timespan.input.mjs +207 -0
  111. package/esm2020/lib/core/datasource.service.mjs +75 -0
  112. package/esm2020/lib/core/decorators.mjs +46 -0
  113. package/esm2020/lib/core/firebase.service.mjs +50 -0
  114. package/esm2020/lib/core/functions.mjs +205 -0
  115. package/esm2020/lib/core/guide/guide.component.mjs +224 -0
  116. package/esm2020/lib/core/guide/guide.service.mjs +118 -0
  117. package/esm2020/lib/core/guide/help-tip.component.mjs +58 -0
  118. package/esm2020/lib/core/http.interceptor.mjs +79 -0
  119. package/esm2020/lib/core/hub.service.mjs +108 -0
  120. package/esm2020/lib/core/identity/identity.component.mjs +67 -0
  121. package/esm2020/lib/core/info/attachment-info.service.mjs +51 -0
  122. package/esm2020/lib/core/info/document-info.service.mjs +21 -0
  123. package/esm2020/lib/core/info/location-info.component.mjs +61 -0
  124. package/esm2020/lib/core/info/map-info.mjs +40 -0
  125. package/esm2020/lib/core/layout/autocomplete.field.mjs +60 -0
  126. package/esm2020/lib/core/layout/checkbox.field.mjs +41 -0
  127. package/esm2020/lib/core/layout/checkbox.mjs +35 -0
  128. package/esm2020/lib/core/layout/date-range.field.mjs +53 -0
  129. package/esm2020/lib/core/layout/date.field.mjs +52 -0
  130. package/esm2020/lib/core/layout/expression.field.mjs +51 -0
  131. package/esm2020/lib/core/layout/file.field.mjs +47 -0
  132. package/esm2020/lib/core/layout/html.field.mjs +48 -0
  133. package/esm2020/lib/core/layout/input.base.mjs +11 -0
  134. package/esm2020/lib/core/layout/input.field.mjs +64 -0
  135. package/esm2020/lib/core/layout/layout.component.mjs +196 -0
  136. package/esm2020/lib/core/layout/numeric.field.mjs +47 -0
  137. package/esm2020/lib/core/layout/select.field.mjs +82 -0
  138. package/esm2020/lib/core/layout/switch.field.mjs +41 -0
  139. package/esm2020/lib/core/layout/textarea.field.mjs +42 -0
  140. package/esm2020/lib/core/layout/timespan.field.mjs +50 -0
  141. package/esm2020/lib/core/lottie-animation.mjs +46 -0
  142. package/esm2020/lib/core/mailbox.service.mjs +410 -0
  143. package/esm2020/lib/core/models.mjs +40 -0
  144. package/esm2020/lib/core/none.component.mjs +40 -0
  145. package/esm2020/lib/core/pipes/action.pipe.mjs +25 -0
  146. package/esm2020/lib/core/pipes/calendar.pipe.mjs +72 -0
  147. package/esm2020/lib/core/pipes/date-format.pipe.mjs +19 -0
  148. package/esm2020/lib/core/pipes/daterange.pipe.mjs +62 -0
  149. package/esm2020/lib/core/pipes/difference.pipe.mjs +15 -0
  150. package/esm2020/lib/core/pipes/duration-format.pipe.mjs +48 -0
  151. package/esm2020/lib/core/pipes/duration.pipe.mjs +19 -0
  152. package/esm2020/lib/core/pipes/form.pipe.mjs +25 -0
  153. package/esm2020/lib/core/pipes/join.pipe.mjs +18 -0
  154. package/esm2020/lib/core/pipes/role.pipe.mjs +25 -0
  155. package/esm2020/lib/core/pipes/sanitize-html.pipe.mjs +18 -0
  156. package/esm2020/lib/core/pipes/sort.pipe.mjs +48 -0
  157. package/esm2020/lib/core/pipes/state.pipe.mjs +25 -0
  158. package/esm2020/lib/core/pipes/time-ago.pipe.mjs +66 -0
  159. package/esm2020/lib/core/pipes/translate.pipe.mjs +38 -0
  160. package/esm2020/lib/core/pipes/type-value.pipe.mjs +42 -0
  161. package/esm2020/lib/core/pipes/user-name.pipe.mjs +21 -0
  162. package/esm2020/lib/core/popup/popup-ref.mjs +20 -0
  163. package/esm2020/lib/core/popup/popup.component.mjs +37 -0
  164. package/esm2020/lib/core/popup/popup.service.mjs +148 -0
  165. package/esm2020/lib/core/popup/tooltip.directive.mjs +82 -0
  166. package/esm2020/lib/core/prompt/ask/ask.dialog.mjs +29 -0
  167. package/esm2020/lib/core/prompt/mask/mask.component.mjs +21 -0
  168. package/esm2020/lib/core/prompt.service.mjs +86 -0
  169. package/esm2020/lib/core/router.mjs +37 -0
  170. package/esm2020/lib/core/session.service.mjs +256 -0
  171. package/esm2020/lib/core/slots/pane-ref.mjs +148 -0
  172. package/esm2020/lib/core/slots/router.directive.mjs +68 -0
  173. package/esm2020/lib/core/slots/router.service.mjs +30 -0
  174. package/esm2020/lib/core/slots/slots.component.mjs +1141 -0
  175. package/esm2020/lib/core/tagging/documents.component.mjs +25 -0
  176. package/esm2020/lib/core/tagging/edit-input.component.mjs +233 -0
  177. package/esm2020/lib/core/tagging/emoji.component.mjs +35 -0
  178. package/esm2020/lib/core/tagging/tagging-item.directive.mjs +39 -0
  179. package/esm2020/lib/core/tagging/tagging.component-base.mjs +29 -0
  180. package/esm2020/lib/core/tagging/tagging.directive.mjs +138 -0
  181. package/esm2020/lib/core/tagging/tagging.pipe.mjs +72 -0
  182. package/esm2020/lib/core/tagging/users.component.mjs +32 -0
  183. package/esm2020/lib/core/translate.service.mjs +124 -0
  184. package/esm2020/lib/core/translations.mjs +1139 -0
  185. package/esm2020/lib/core/window-title.service.mjs +53 -0
  186. package/esm2020/lib/cube/accum/accum.component.mjs +259 -0
  187. package/esm2020/lib/cube/chart/chart.component.mjs +341 -0
  188. package/esm2020/lib/cube/cube-info.service.mjs +100 -0
  189. package/esm2020/lib/cube/cube-menu.component.mjs +27 -0
  190. package/esm2020/lib/cube/cube-view.component.mjs +186 -0
  191. package/esm2020/lib/cube/cube.service.mjs +418 -0
  192. package/esm2020/lib/cube/declarations.mjs +2 -0
  193. package/esm2020/lib/cube/explore/document-item.component.mjs +38 -0
  194. package/esm2020/lib/cube/explore/explore-item.component.mjs +27 -0
  195. package/esm2020/lib/cube/explore/explore-items.component.mjs +186 -0
  196. package/esm2020/lib/cube/explore/explore.pane.component.mjs +83 -0
  197. package/esm2020/lib/cube/explore/item-resolver.service.mjs +32 -0
  198. package/esm2020/lib/cube/explore/item.pane.component.mjs +23 -0
  199. package/esm2020/lib/cube/filter/filter-tags.component.exp.mjs +75 -0
  200. package/esm2020/lib/cube/filter/filter.component.mjs +137 -0
  201. package/esm2020/lib/cube/grid/grid.component.mjs +218 -0
  202. package/esm2020/lib/cube/grid/spreadsheet.component.mjs +367 -0
  203. package/esm2020/lib/cube/matrix/matrix.base.mjs +127 -0
  204. package/esm2020/lib/cube/matrix/matrix.mobile.component.mjs +63 -0
  205. package/esm2020/lib/cube/matrix/matrix.pane.component.mjs +76 -0
  206. package/esm2020/lib/cube/matrix/popup.component.mjs +67 -0
  207. package/esm2020/lib/cube/matrix/table.component.mjs +493 -0
  208. package/esm2020/lib/cube/parallel/item.mjs +41 -0
  209. package/esm2020/lib/cube/parallel/parallel.component.mjs +159 -0
  210. package/esm2020/lib/cube/pivot/pivot.component.mjs +507 -0
  211. package/esm2020/lib/cube/sum/sum.component.mjs +404 -0
  212. package/esm2020/lib/cube/view-base.mjs +79 -0
  213. package/esm2020/lib/cube/view.mobile.component.mjs +127 -0
  214. package/esm2020/lib/cube/view.pane.component.mjs +88 -0
  215. package/esm2020/lib/dashboard/actions/actions.widget.mjs +126 -0
  216. package/esm2020/lib/dashboard/cube/accum-cube.widget.mjs +145 -0
  217. package/esm2020/lib/dashboard/cube/compare.widget.mjs +215 -0
  218. package/esm2020/lib/dashboard/cube/cube-analysis.base.mjs +90 -0
  219. package/esm2020/lib/dashboard/cube/cube-analysis.widget.mjs +53 -0
  220. package/esm2020/lib/dashboard/cube/cube-chart.widget.mjs +144 -0
  221. package/esm2020/lib/dashboard/cube/documents.widget.mjs +64 -0
  222. package/esm2020/lib/dashboard/cube/filter/filter.component.mjs +61 -0
  223. package/esm2020/lib/dashboard/dashboard.component.mjs +55 -0
  224. package/esm2020/lib/dashboard/dashboard.pane.component.mjs +24 -0
  225. package/esm2020/lib/dashboard/recents/recents.widget.mjs +98 -0
  226. package/esm2020/lib/dashboard/score/activity.widget.mjs +173 -0
  227. package/esm2020/lib/dashboard/score/compare-groups.widget.mjs +206 -0
  228. package/esm2020/lib/dashboard/score/peers-performance.widget.mjs +253 -0
  229. package/esm2020/lib/dashboard/score/pending-results.widget.mjs +60 -0
  230. package/esm2020/lib/dashboard/score/personal-score.widget.mjs +223 -0
  231. package/esm2020/lib/dashboard/widget-item.component.mjs +90 -0
  232. package/esm2020/lib/dashboard/widget-ref.mjs +18 -0
  233. package/esm2020/lib/desktop.module.mjs +144 -0
  234. package/esm2020/lib/home/about/about.dialog.mjs +26 -0
  235. package/esm2020/lib/home/home-base.component.mjs +91 -0
  236. package/esm2020/lib/home/home.desktop.component.mjs +221 -0
  237. package/esm2020/lib/home/home.mobile.component.mjs +116 -0
  238. package/esm2020/lib/home/notifications/notifications.component.mjs +67 -0
  239. package/esm2020/lib/home/options/options.component.mjs +94 -0
  240. package/esm2020/lib/home/outofoffice/outofoffice.component.mjs +38 -0
  241. package/esm2020/lib/home/search.service.mjs +75 -0
  242. package/esm2020/lib/home/sign/sign.component.mjs +54 -0
  243. package/esm2020/lib/home/tools.component.mjs +82 -0
  244. package/esm2020/lib/impersonate/impersonate.component.mjs +65 -0
  245. package/esm2020/lib/mobile.module.mjs +59 -0
  246. package/esm2020/lib/modules/chart.module.mjs +39 -0
  247. package/esm2020/lib/modules/circular-gauge.module.mjs +17 -0
  248. package/esm2020/lib/modules/date.adapter.mjs +23 -0
  249. package/esm2020/lib/modules/datepicker.intl.mjs +39 -0
  250. package/esm2020/lib/modules/dayjs.module.mjs +41 -0
  251. package/esm2020/lib/modules/diagram.module.mjs +35 -0
  252. package/esm2020/lib/modules/gantt.module.mjs +18 -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 +24 -0
  257. package/esm2020/lib/modules/schedule.module.mjs +21 -0
  258. package/esm2020/lib/modules/spreadsheet.module.mjs +30 -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 +248 -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 +357 -0
  287. package/esm2020/lib/reports/cube/usage-pivot.component.mjs +256 -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 +151 -0
  291. package/esm2020/lib/reports/report.mobile.component.mjs +128 -0
  292. package/esm2020/lib/reports/report.pane.component.mjs +96 -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 +518 -0
  303. package/esm2020/lib/system.module.mjs +113 -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 +54 -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 +67 -0
  315. package/esm2020/lib/views/views.component.mjs +33 -0
  316. package/esm2020/lib/views/views.mobile.component.mjs +20 -0
  317. package/esm2020/lib/views/views.pane.component.mjs +35 -0
  318. package/esm2020/public-api.mjs +144 -0
  319. package/fesm2015/bizdoc-core.mjs +30730 -0
  320. package/fesm2015/bizdoc-core.mjs.map +1 -0
  321. package/fesm2020/bizdoc-core.mjs +30508 -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 +98 -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 +51 -0
  333. package/lib/admin/form/form.resolve.service.d.ts +12 -0
  334. package/lib/admin/form/form.service.d.ts +30 -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 +76 -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/outofoffice.component.d.ts +48 -0
  345. package/lib/admin/profiler/profiler.component.d.ts +116 -0
  346. package/lib/admin/utility-ref.d.ts +19 -0
  347. package/lib/admin/utility-wrapper.component.d.ts +28 -0
  348. package/lib/admin/utility.pane.component.d.ts +24 -0
  349. package/lib/app.component.d.ts +24 -0
  350. package/lib/bizdoc.module.d.ts +18 -0
  351. package/lib/browse/browse-items.component.d.ts +103 -0
  352. package/lib/browse/browse.mobile.component.d.ts +39 -0
  353. package/lib/browse/browse.pane.component.d.ts +50 -0
  354. package/lib/browse/expanded-item/expanded-item.component.d.ts +67 -0
  355. package/lib/browse/filter/filter.component.d.ts +71 -0
  356. package/lib/browse/folders-menu.component.d.ts +22 -0
  357. package/lib/chat/chat-info.d.ts +37 -0
  358. package/lib/chat/chat.mobile.component.d.ts +10 -0
  359. package/lib/chat/chat.service.d.ts +38 -0
  360. package/lib/chat/contacts.component.d.ts +38 -0
  361. package/lib/chat/contacts.pane.component.d.ts +12 -0
  362. package/lib/chat/conversation.component.d.ts +56 -0
  363. package/lib/chat/conversation.pane.component.d.ts +16 -0
  364. package/lib/compose/action/action-picker.component.d.ts +25 -0
  365. package/lib/compose/action/action-ref.d.ts +10 -0
  366. package/lib/compose/action/action.base.d.ts +15 -0
  367. package/lib/compose/action/action.dialog.d.ts +29 -0
  368. package/lib/compose/action/action.pane.dialog.exp.d.ts +31 -0
  369. package/lib/compose/action/assign-action.component.d.ts +30 -0
  370. package/lib/compose/action/moveto-action.component.d.ts +36 -0
  371. package/lib/compose/action/return-action.component.d.ts +19 -0
  372. package/lib/compose/attachments/attachments.component.d.ts +35 -0
  373. package/lib/compose/attachments/preview/attachment-preview.component.d.ts +49 -0
  374. package/lib/compose/attachments/progress-button.directive.d.ts +12 -0
  375. package/lib/compose/can-deactivate-changes.service.d.ts +12 -0
  376. package/lib/compose/comments/Comments.pane.component.d.ts +18 -0
  377. package/lib/compose/comments/comment.component.d.ts +51 -0
  378. package/lib/compose/comments/comments.component.d.ts +66 -0
  379. package/lib/compose/comments/edit-comment.component.d.ts +25 -0
  380. package/lib/compose/comments/edits.component.d.ts +26 -0
  381. package/lib/compose/comments/quick-comment.component.exp.d.ts +28 -0
  382. package/lib/compose/comments/votes.component.d.ts +22 -0
  383. package/lib/compose/compose-resolve.service.d.ts +27 -0
  384. package/lib/compose/compose.mobile.component.d.ts +42 -0
  385. package/lib/compose/compose.pane.component.d.ts +58 -0
  386. package/lib/compose/copy/copy.dialog.d.ts +23 -0
  387. package/lib/compose/dismiss.service.d.ts +12 -0
  388. package/lib/compose/document-resolver.service.d.ts +12 -0
  389. package/lib/compose/document.component.d.ts +18 -0
  390. package/lib/compose/document.mobile.component.d.ts +10 -0
  391. package/lib/compose/document.pane.component.d.ts +12 -0
  392. package/lib/compose/events/events.component.d.ts +13 -0
  393. package/lib/compose/form-ref.d.ts +30 -0
  394. package/lib/compose/form-selector/form-selector.sheet.d.ts +28 -0
  395. package/lib/compose/form.component.d.ts +101 -0
  396. package/lib/compose/new-menu.component.d.ts +36 -0
  397. package/lib/compose/privilage.directive.d.ts +26 -0
  398. package/lib/compose/recipient-resolver.service.d.ts +12 -0
  399. package/lib/compose/save-changes.dialog.d.ts +7 -0
  400. package/lib/compose/state.component.d.ts +12 -0
  401. package/lib/compose/tag/tags.component.d.ts +36 -0
  402. package/lib/compose/trace/flow.component.d.ts +59 -0
  403. package/lib/compose/trace/people.component.d.ts +18 -0
  404. package/lib/compose/trace/trace.base.d.ts +28 -0
  405. package/lib/compose/trace/trace.component.d.ts +55 -0
  406. package/lib/compose/trace/trace.pane.component.d.ts +20 -0
  407. package/lib/compose/version-compare/version-compare.component.d.ts +24 -0
  408. package/lib/compose/version-compare/version-compare.directive.d.ts +89 -0
  409. package/lib/compose/version-compare/version.pane.component.d.ts +21 -0
  410. package/lib/core/NgComponentOutlet.d.ts +15 -0
  411. package/lib/core/account.service.d.ts +18 -0
  412. package/lib/core/animated-icon/animated-icon.directive.d.ts +7 -0
  413. package/lib/core/animations.d.ts +26 -0
  414. package/lib/core/authentication.d.ts +6 -0
  415. package/lib/core/avatar/avatar.component.d.ts +34 -0
  416. package/lib/core/base.d.ts +31 -0
  417. package/lib/core/colors.d.ts +6 -0
  418. package/lib/core/component-factory-resolver.d.ts +12 -0
  419. package/lib/core/configuration.d.ts +113 -0
  420. package/lib/core/controls/address.input.d.ts +65 -0
  421. package/lib/core/controls/auto-complete.input.d.ts +86 -0
  422. package/lib/core/controls/combination-picker-body.d.ts +114 -0
  423. package/lib/core/controls/combination-picker.d.ts +82 -0
  424. package/lib/core/controls/combination-pool.d.ts +42 -0
  425. package/lib/core/controls/file.input.d.ts +99 -0
  426. package/lib/core/controls/select.input.d.ts +84 -0
  427. package/lib/core/controls/time-picker.d.ts +52 -0
  428. package/lib/core/controls/timespan.input.d.ts +55 -0
  429. package/lib/core/datasource.service.d.ts +46 -0
  430. package/lib/core/decorators.d.ts +17 -0
  431. package/lib/core/firebase.service.d.ts +17 -0
  432. package/lib/core/functions.d.ts +54 -0
  433. package/lib/core/guide/guide.component.d.ts +32 -0
  434. package/lib/core/guide/guide.service.d.ts +38 -0
  435. package/lib/core/guide/help-tip.component.d.ts +16 -0
  436. package/lib/core/http.interceptor.d.ts +21 -0
  437. package/lib/core/hub.service.d.ts +133 -0
  438. package/lib/core/identity/identity.component.d.ts +29 -0
  439. package/lib/core/info/attachment-info.service.d.ts +17 -0
  440. package/lib/core/info/document-info.service.d.ts +14 -0
  441. package/lib/core/info/location-info.component.d.ts +28 -0
  442. package/lib/core/info/map-info.d.ts +15 -0
  443. package/lib/core/layout/autocomplete.field.d.ts +21 -0
  444. package/lib/core/layout/checkbox.d.ts +10 -0
  445. package/lib/core/layout/checkbox.field.d.ts +11 -0
  446. package/lib/core/layout/date-range.field.d.ts +13 -0
  447. package/lib/core/layout/date.field.d.ts +11 -0
  448. package/lib/core/layout/expression.field.d.ts +12 -0
  449. package/lib/core/layout/file.field.d.ts +14 -0
  450. package/lib/core/layout/html.field.d.ts +12 -0
  451. package/lib/core/layout/input.base.d.ts +10 -0
  452. package/lib/core/layout/input.field.d.ts +14 -0
  453. package/lib/core/layout/layout.component.d.ts +33 -0
  454. package/lib/core/layout/numeric.field.d.ts +11 -0
  455. package/lib/core/layout/select.field.d.ts +22 -0
  456. package/lib/core/layout/switch.field.d.ts +11 -0
  457. package/lib/core/layout/textarea.field.d.ts +11 -0
  458. package/lib/core/layout/timespan.field.d.ts +11 -0
  459. package/lib/core/lottie-animation.d.ts +14 -0
  460. package/lib/core/mailbox.service.d.ts +142 -0
  461. package/lib/core/models.d.ts +652 -0
  462. package/lib/core/none.component.d.ts +9 -0
  463. package/lib/core/pipes/action.pipe.d.ts +10 -0
  464. package/lib/core/pipes/calendar.pipe.d.ts +27 -0
  465. package/lib/core/pipes/date-format.pipe.d.ts +8 -0
  466. package/lib/core/pipes/daterange.pipe.d.ts +15 -0
  467. package/lib/core/pipes/difference.pipe.d.ts +7 -0
  468. package/lib/core/pipes/duration-format.pipe.d.ts +11 -0
  469. package/lib/core/pipes/duration.pipe.d.ts +8 -0
  470. package/lib/core/pipes/form.pipe.d.ts +10 -0
  471. package/lib/core/pipes/join.pipe.d.ts +10 -0
  472. package/lib/core/pipes/role.pipe.d.ts +10 -0
  473. package/lib/core/pipes/sanitize-html.pipe.d.ts +10 -0
  474. package/lib/core/pipes/sort.pipe.d.ts +12 -0
  475. package/lib/core/pipes/state.pipe.d.ts +10 -0
  476. package/lib/core/pipes/time-ago.pipe.d.ts +16 -0
  477. package/lib/core/pipes/translate.pipe.d.ts +18 -0
  478. package/lib/core/pipes/type-value.pipe.d.ts +15 -0
  479. package/lib/core/pipes/user-name.pipe.d.ts +11 -0
  480. package/lib/core/popup/popup-ref.d.ts +14 -0
  481. package/lib/core/popup/popup.component.d.ts +22 -0
  482. package/lib/core/popup/popup.service.d.ts +24 -0
  483. package/lib/core/popup/tooltip.directive.d.ts +29 -0
  484. package/lib/core/prompt/ask/ask.dialog.d.ts +22 -0
  485. package/lib/core/prompt/mask/mask.component.d.ts +10 -0
  486. package/lib/core/prompt.service.d.ts +36 -0
  487. package/lib/core/router.d.ts +22 -0
  488. package/lib/core/session.service.d.ts +82 -0
  489. package/lib/core/slots/pane-ref.d.ts +135 -0
  490. package/lib/core/slots/router.directive.d.ts +25 -0
  491. package/lib/core/slots/router.service.d.ts +36 -0
  492. package/lib/core/slots/slots.component.d.ts +212 -0
  493. package/lib/core/tagging/documents.component.d.ts +11 -0
  494. package/lib/core/tagging/edit-input.component.d.ts +65 -0
  495. package/lib/core/tagging/emoji.component.d.ts +18 -0
  496. package/lib/core/tagging/tagging-item.directive.d.ts +15 -0
  497. package/lib/core/tagging/tagging.component-base.d.ts +19 -0
  498. package/lib/core/tagging/tagging.directive.d.ts +34 -0
  499. package/lib/core/tagging/tagging.pipe.d.ts +24 -0
  500. package/lib/core/tagging/users.component.d.ts +15 -0
  501. package/lib/core/translate.service.d.ts +31 -0
  502. package/lib/core/translations.d.ts +1132 -0
  503. package/lib/core/window-title.service.d.ts +21 -0
  504. package/lib/cube/accum/accum.component.d.ts +63 -0
  505. package/lib/cube/chart/chart.component.d.ts +74 -0
  506. package/lib/cube/cube-info.service.d.ts +77 -0
  507. package/lib/cube/cube-menu.component.d.ts +12 -0
  508. package/lib/cube/cube-view.component.d.ts +31 -0
  509. package/lib/cube/cube.service.d.ts +268 -0
  510. package/lib/cube/declarations.d.ts +23 -0
  511. package/lib/cube/explore/document-item.component.d.ts +16 -0
  512. package/lib/cube/explore/explore-item.component.d.ts +14 -0
  513. package/lib/cube/explore/explore-items.component.d.ts +57 -0
  514. package/lib/cube/explore/explore.pane.component.d.ts +30 -0
  515. package/lib/cube/explore/item-resolver.service.d.ts +20 -0
  516. package/lib/cube/explore/item.pane.component.d.ts +13 -0
  517. package/lib/cube/filter/filter-tags.component.exp.d.ts +31 -0
  518. package/lib/cube/filter/filter.component.d.ts +44 -0
  519. package/lib/cube/grid/grid.component.d.ts +59 -0
  520. package/lib/cube/grid/spreadsheet.component.d.ts +62 -0
  521. package/lib/cube/matrix/matrix.base.d.ts +72 -0
  522. package/lib/cube/matrix/matrix.mobile.component.d.ts +22 -0
  523. package/lib/cube/matrix/matrix.pane.component.d.ts +36 -0
  524. package/lib/cube/matrix/popup.component.d.ts +21 -0
  525. package/lib/cube/matrix/table.component.d.ts +100 -0
  526. package/lib/cube/parallel/item.d.ts +13 -0
  527. package/lib/cube/parallel/parallel.component.d.ts +52 -0
  528. package/lib/cube/pivot/pivot.component.d.ts +103 -0
  529. package/lib/cube/sum/sum.component.d.ts +81 -0
  530. package/lib/cube/view-base.d.ts +39 -0
  531. package/lib/cube/view.mobile.component.d.ts +46 -0
  532. package/lib/cube/view.pane.component.d.ts +27 -0
  533. package/lib/dashboard/actions/actions.widget.d.ts +39 -0
  534. package/lib/dashboard/cube/accum-cube.widget.d.ts +33 -0
  535. package/lib/dashboard/cube/compare.widget.d.ts +53 -0
  536. package/lib/dashboard/cube/cube-analysis.base.d.ts +59 -0
  537. package/lib/dashboard/cube/cube-analysis.widget.d.ts +17 -0
  538. package/lib/dashboard/cube/cube-chart.widget.d.ts +32 -0
  539. package/lib/dashboard/cube/documents.widget.d.ts +30 -0
  540. package/lib/dashboard/cube/filter/filter.component.d.ts +22 -0
  541. package/lib/dashboard/dashboard.component.d.ts +24 -0
  542. package/lib/dashboard/dashboard.pane.component.d.ts +8 -0
  543. package/lib/dashboard/recents/recents.widget.d.ts +40 -0
  544. package/lib/dashboard/score/activity.widget.d.ts +50 -0
  545. package/lib/dashboard/score/compare-groups.widget.d.ts +51 -0
  546. package/lib/dashboard/score/peers-performance.widget.d.ts +65 -0
  547. package/lib/dashboard/score/pending-results.widget.d.ts +27 -0
  548. package/lib/dashboard/score/personal-score.widget.d.ts +57 -0
  549. package/lib/dashboard/widget-item.component.d.ts +33 -0
  550. package/lib/dashboard/widget-ref.d.ts +11 -0
  551. package/lib/desktop.module.d.ts +45 -0
  552. package/lib/home/about/about.dialog.d.ts +14 -0
  553. package/lib/home/home-base.component.d.ts +34 -0
  554. package/lib/home/home.desktop.component.d.ts +60 -0
  555. package/lib/home/home.mobile.component.d.ts +38 -0
  556. package/lib/home/notifications/notifications.component.d.ts +28 -0
  557. package/lib/home/options/options.component.d.ts +46 -0
  558. package/lib/home/outofoffice/outofoffice.component.d.ts +19 -0
  559. package/lib/home/search.service.d.ts +23 -0
  560. package/lib/home/sign/sign.component.d.ts +17 -0
  561. package/lib/home/tools.component.d.ts +36 -0
  562. package/lib/impersonate/impersonate.component.d.ts +27 -0
  563. package/lib/mobile.module.d.ts +25 -0
  564. package/lib/modules/chart.module.d.ts +7 -0
  565. package/lib/modules/circular-gauge.module.d.ts +7 -0
  566. package/lib/modules/date.adapter.d.ts +10 -0
  567. package/lib/modules/datepicker.intl.d.ts +30 -0
  568. package/lib/modules/dayjs.module.d.ts +6 -0
  569. package/lib/modules/diagram.module.d.ts +8 -0
  570. package/lib/modules/gantt.module.d.ts +7 -0
  571. package/lib/modules/grid.module.d.ts +7 -0
  572. package/lib/modules/material.module.d.ts +45 -0
  573. package/lib/modules/paginator.intl.d.ts +14 -0
  574. package/lib/modules/pivot.module.d.ts +7 -0
  575. package/lib/modules/schedule.module.d.ts +7 -0
  576. package/lib/modules/spreadsheet.module.d.ts +8 -0
  577. package/lib/modules/stepper.intl.d.ts +10 -0
  578. package/lib/modules/texteditor.module.d.ts +8 -0
  579. package/lib/notifications/filter.component.d.ts +9 -0
  580. package/lib/notifications/notifications-table.component.d.ts +32 -0
  581. package/lib/notifications/notifications.component-base.d.ts +12 -0
  582. package/lib/notifications/notifications.mobile.component.d.ts +8 -0
  583. package/lib/notifications/notifications.pane.component.d.ts +8 -0
  584. package/lib/notifications/notifications.service.d.ts +24 -0
  585. package/lib/notifications/types/commented.notification.d.ts +26 -0
  586. package/lib/notifications/types/cube-anomaly.notification.d.ts +29 -0
  587. package/lib/notifications/types/escalated.notification.d.ts +25 -0
  588. package/lib/notifications/types/liked.notification.d.ts +25 -0
  589. package/lib/notifications/types/long-running-task.notification.d.ts +21 -0
  590. package/lib/notifications/types/notification-base.d.ts +20 -0
  591. package/lib/notifications/types/nudge.notification.d.ts +23 -0
  592. package/lib/notifications/types/state-changed.notification.d.ts +22 -0
  593. package/lib/notifications/types/tagged.notification.d.ts +26 -0
  594. package/lib/notifications/types/text.notification.d.ts +13 -0
  595. package/lib/notifications/types/upcoming-event.notification.d.ts +20 -0
  596. package/lib/options/options.component.d.ts +67 -0
  597. package/lib/options/options.service.d.ts +14 -0
  598. package/lib/reports/arguments-component.d.ts +27 -0
  599. package/lib/reports/cube/documents.component.d.ts +34 -0
  600. package/lib/reports/cube/grid-documents.component.d.ts +28 -0
  601. package/lib/reports/cube/table-documents.component.d.ts +28 -0
  602. package/lib/reports/cube/usage-args.component.d.ts +21 -0
  603. package/lib/reports/cube/usage-base.d.ts +72 -0
  604. package/lib/reports/cube/usage-chart.component.d.ts +62 -0
  605. package/lib/reports/cube/usage-pivot.component.d.ts +66 -0
  606. package/lib/reports/cube/usage.component.d.ts +16 -0
  607. package/lib/reports/report-ref.d.ts +27 -0
  608. package/lib/reports/report-viewer.component.d.ts +47 -0
  609. package/lib/reports/report.mobile.component.d.ts +48 -0
  610. package/lib/reports/report.pane.component.d.ts +37 -0
  611. package/lib/reports/reports-menu.component.d.ts +12 -0
  612. package/lib/reports/substitution/substitution.component.d.ts +23 -0
  613. package/lib/reports/table/table-view.component.d.ts +19 -0
  614. package/lib/reports/tasks/tasks.component.d.ts +68 -0
  615. package/lib/routes.desktop.d.ts +2 -0
  616. package/lib/routes.mobile.d.ts +2 -0
  617. package/lib/scheduler/schedule.component.d.ts +43 -0
  618. package/lib/scheduler/scheduler.mobile.component.d.ts +14 -0
  619. package/lib/scheduler/scheduler.pane.component.d.ts +20 -0
  620. package/lib/shared.module.d.ts +192 -0
  621. package/lib/system.module.d.ts +34 -0
  622. package/lib/views/cube/chart.component.d.ts +39 -0
  623. package/lib/views/cube/cube-base.d.ts +46 -0
  624. package/lib/views/cube/explore.component.d.ts +43 -0
  625. package/lib/views/cube/matrix.component.d.ts +51 -0
  626. package/lib/views/cube/parallel.component.d.ts +32 -0
  627. package/lib/views/cube/pivot.component.d.ts +34 -0
  628. package/lib/views/cube/sum.component.d.ts +33 -0
  629. package/lib/views/cube/view.component.d.ts +40 -0
  630. package/lib/views/document-view-ref.d.ts +18 -0
  631. package/lib/views/timeline/timeline.component.exp.d.ts +66 -0
  632. package/lib/views/view-item.component.d.ts +28 -0
  633. package/lib/views/views.component.d.ts +18 -0
  634. package/lib/views/views.mobile.component.d.ts +10 -0
  635. package/lib/views/views.pane.component.d.ts +13 -0
  636. package/package.json +78 -78
  637. package/public-api.d.ts +146 -0
  638. package/LICENSE.md +0 -1
  639. package/karma.conf.js +0 -44
  640. package/ng-package.json +0 -11
  641. package/src/icons/pdf.svg +0 -24
  642. package/src/icons/word.svg +0 -13
  643. package/src/lib/admin/_admin-theme.scss +0 -6
  644. package/src/lib/admin/admin-dismiss.service.ts +0 -24
  645. package/src/lib/admin/admin-menu.component.html +0 -18
  646. package/src/lib/admin/admin-menu.component.ts +0 -20
  647. package/src/lib/admin/core/ace.input.ts +0 -133
  648. package/src/lib/admin/core/color-picker.input.scss +0 -17
  649. package/src/lib/admin/core/color-picker.input.ts +0 -175
  650. package/src/lib/admin/core/search.input.ts +0 -32
  651. package/src/lib/admin/diff/_configuration-diff-theme.scss +0 -84
  652. package/src/lib/admin/diff/configuration-diff.component.html +0 -24
  653. package/src/lib/admin/diff/configuration-diff.component.scss +0 -16
  654. package/src/lib/admin/diff/configuration-diff.component.ts +0 -552
  655. package/src/lib/admin/document-trace/Timeline.ts +0 -45
  656. package/src/lib/admin/document-trace/_timeline-theme.scss +0 -70
  657. package/src/lib/admin/document-trace/document-trace.component.html +0 -96
  658. package/src/lib/admin/document-trace/document-trace.component.scss +0 -16
  659. package/src/lib/admin/document-trace/document-trace.component.ts +0 -526
  660. package/src/lib/admin/document-trace/reassign.dialog.html +0 -24
  661. package/src/lib/admin/document-trace/reassign.dialog.ts +0 -34
  662. package/src/lib/admin/document-trace/trace-element.component.html +0 -55
  663. package/src/lib/admin/document-trace/trace-element.component.scss +0 -23
  664. package/src/lib/admin/document-trace/trace-element.component.ts +0 -139
  665. package/src/lib/admin/form/form.resolve.service.ts +0 -13
  666. package/src/lib/admin/form/form.service.ts +0 -49
  667. package/src/lib/admin/form/workflow/node-ref.ts +0 -8
  668. package/src/lib/admin/form/workflow/node.component.html +0 -36
  669. package/src/lib/admin/form/workflow/node.component.scss +0 -4
  670. package/src/lib/admin/form/workflow/node.component.ts +0 -129
  671. package/src/lib/admin/form/workflow/role-node.component.html +0 -40
  672. package/src/lib/admin/form/workflow/role-node.component.ts +0 -66
  673. package/src/lib/admin/form/workflow/tools.component.exp.ts +0 -13
  674. package/src/lib/admin/form/workflow/tools.component.html +0 -1
  675. package/src/lib/admin/form/workflow/workflow.component.html +0 -66
  676. package/src/lib/admin/form/workflow/workflow.component.scss +0 -57
  677. package/src/lib/admin/form/workflow/workflow.component.ts +0 -438
  678. package/src/lib/admin/indices/manage-cube-index.component.html +0 -35
  679. package/src/lib/admin/indices/manage-cube-index.component.scss +0 -16
  680. package/src/lib/admin/indices/manage-cube-index.component.ts +0 -155
  681. package/src/lib/admin/patterns/patterns.component.html +0 -70
  682. package/src/lib/admin/patterns/patterns.component.ts +0 -166
  683. package/src/lib/admin/permissions/permissions.component.html +0 -21
  684. package/src/lib/admin/permissions/permissions.component.scss +0 -7
  685. package/src/lib/admin/permissions/permissions.component.ts +0 -89
  686. package/src/lib/admin/positions/positions-popup.component.html +0 -23
  687. package/src/lib/admin/positions/positions-popup.component.ts +0 -68
  688. package/src/lib/admin/positions/positions.component.html +0 -150
  689. package/src/lib/admin/positions/positions.component.scss +0 -20
  690. package/src/lib/admin/positions/positions.component.ts +0 -464
  691. package/src/lib/admin/profiler/assign.component.html +0 -14
  692. package/src/lib/admin/profiler/outofoffice.component.html +0 -64
  693. package/src/lib/admin/profiler/outofoffice.component.ts +0 -146
  694. package/src/lib/admin/profiler/profiler.component.html +0 -110
  695. package/src/lib/admin/profiler/profiler.component.scss +0 -23
  696. package/src/lib/admin/profiler/profiler.component.ts +0 -302
  697. package/src/lib/admin/utility-ref.ts +0 -44
  698. package/src/lib/admin/utility-wrapper.component.ts +0 -52
  699. package/src/lib/admin/utility.pane.component.ts +0 -49
  700. package/src/lib/app.component.ts +0 -90
  701. package/src/lib/bizdoc.module.ts +0 -82
  702. package/src/lib/browse/_browse-theme.scss +0 -86
  703. package/src/lib/browse/browse-items.component.html +0 -171
  704. package/src/lib/browse/browse-items.component.scss +0 -52
  705. package/src/lib/browse/browse-items.component.ts +0 -460
  706. package/src/lib/browse/browse.mobile.component.html +0 -33
  707. package/src/lib/browse/browse.mobile.component.ts +0 -90
  708. package/src/lib/browse/browse.pane.component.html +0 -43
  709. package/src/lib/browse/browse.pane.component.scss +0 -4
  710. package/src/lib/browse/browse.pane.component.ts +0 -141
  711. package/src/lib/browse/expanded-item/expanded-item.component.html +0 -38
  712. package/src/lib/browse/expanded-item/expanded-item.component.scss +0 -35
  713. package/src/lib/browse/expanded-item/expanded-item.component.ts +0 -339
  714. package/src/lib/browse/filter/filter.component.html +0 -50
  715. package/src/lib/browse/filter/filter.component.scss +0 -10
  716. package/src/lib/browse/filter/filter.component.ts +0 -156
  717. package/src/lib/browse/folders-menu.component.html +0 -20
  718. package/src/lib/browse/folders-menu.component.scss +0 -15
  719. package/src/lib/browse/folders-menu.component.ts +0 -42
  720. package/src/lib/chat/_chat-theme.scss +0 -95
  721. package/src/lib/chat/chat-info.ts +0 -74
  722. package/src/lib/chat/chat-pool.component.exp.ts +0 -117
  723. package/src/lib/chat/chat-pool.component.html +0 -13
  724. package/src/lib/chat/chat-pool.component.scss +0 -10
  725. package/src/lib/chat/chat.mobile.component.html +0 -6
  726. package/src/lib/chat/chat.mobile.component.scss +0 -8
  727. package/src/lib/chat/chat.mobile.component.ts +0 -18
  728. package/src/lib/chat/chat.service.ts +0 -128
  729. package/src/lib/chat/contacts.component.html +0 -37
  730. package/src/lib/chat/contacts.component.scss +0 -49
  731. package/src/lib/chat/contacts.component.ts +0 -88
  732. package/src/lib/chat/contacts.pane.component.ts +0 -25
  733. package/src/lib/chat/conversation.component.html +0 -28
  734. package/src/lib/chat/conversation.component.scss +0 -14
  735. package/src/lib/chat/conversation.component.ts +0 -186
  736. package/src/lib/chat/conversation.pane.component.ts +0 -55
  737. package/src/lib/compose/_compose-theme.scss +0 -63
  738. package/src/lib/compose/action/action-picker.component.html +0 -25
  739. package/src/lib/compose/action/action-picker.component.scss +0 -4
  740. package/src/lib/compose/action/action-picker.component.ts +0 -72
  741. package/src/lib/compose/action/action-ref.ts +0 -19
  742. package/src/lib/compose/action/action.base.ts +0 -58
  743. package/src/lib/compose/action/action.dialog.html +0 -17
  744. package/src/lib/compose/action/action.dialog.scss +0 -1
  745. package/src/lib/compose/action/action.dialog.ts +0 -57
  746. package/src/lib/compose/action/action.pane.dialog.exp.ts +0 -77
  747. package/src/lib/compose/action/action.pane.dialog.html +0 -12
  748. package/src/lib/compose/action/assign-action.component.html +0 -23
  749. package/src/lib/compose/action/assign-action.component.ts +0 -57
  750. package/src/lib/compose/action/moveto-action.component.html +0 -33
  751. package/src/lib/compose/action/moveto-action.component.ts +0 -77
  752. package/src/lib/compose/action/return-action.component.html +0 -13
  753. package/src/lib/compose/action/return-action.component.ts +0 -42
  754. package/src/lib/compose/attachments/attachments.component.html +0 -23
  755. package/src/lib/compose/attachments/attachments.component.scss +0 -21
  756. package/src/lib/compose/attachments/attachments.component.ts +0 -114
  757. package/src/lib/compose/attachments/preview/attachment-preview.component.html +0 -17
  758. package/src/lib/compose/attachments/preview/attachment-preview.component.scss +0 -36
  759. package/src/lib/compose/attachments/preview/attachment-preview.component.ts +0 -140
  760. package/src/lib/compose/attachments/progress-button.directive.ts +0 -18
  761. package/src/lib/compose/can-deactivate-changes.service.ts +0 -22
  762. package/src/lib/compose/comments/_comments-theme.scss +0 -82
  763. package/src/lib/compose/comments/comment.component.html +0 -36
  764. package/src/lib/compose/comments/comment.component.ts +0 -160
  765. package/src/lib/compose/comments/comments.component.html +0 -27
  766. package/src/lib/compose/comments/comments.component.scss +0 -33
  767. package/src/lib/compose/comments/comments.component.ts +0 -220
  768. package/src/lib/compose/comments/comments.pane.component.ts +0 -41
  769. package/src/lib/compose/comments/edit-comment.component.html +0 -3
  770. package/src/lib/compose/comments/edit-comment.component.ts +0 -35
  771. package/src/lib/compose/comments/edits.component.html +0 -7
  772. package/src/lib/compose/comments/edits.component.ts +0 -33
  773. package/src/lib/compose/comments/quick-comment.component.exp.ts +0 -60
  774. package/src/lib/compose/comments/quick-comment.component.html +0 -5
  775. package/src/lib/compose/comments/quick-comment.component.scss +0 -11
  776. package/src/lib/compose/comments/votes.component.html +0 -7
  777. package/src/lib/compose/comments/votes.component.ts +0 -38
  778. package/src/lib/compose/compose-resolve.service.ts +0 -42
  779. package/src/lib/compose/compose.mobile.component.html +0 -67
  780. package/src/lib/compose/compose.mobile.component.scss +0 -14
  781. package/src/lib/compose/compose.mobile.component.ts +0 -97
  782. package/src/lib/compose/compose.pane.component.html +0 -68
  783. package/src/lib/compose/compose.pane.component.scss +0 -6
  784. package/src/lib/compose/compose.pane.component.ts +0 -188
  785. package/src/lib/compose/copy/copy.dialog.html +0 -21
  786. package/src/lib/compose/copy/copy.dialog.ts +0 -40
  787. package/src/lib/compose/dismiss.service.ts +0 -26
  788. package/src/lib/compose/document-resolver.service.ts +0 -13
  789. package/src/lib/compose/document.component.html +0 -5
  790. package/src/lib/compose/document.component.ts +0 -41
  791. package/src/lib/compose/document.mobile.component.ts +0 -20
  792. package/src/lib/compose/document.pane.component.ts +0 -22
  793. package/src/lib/compose/events/events.component.html +0 -6
  794. package/src/lib/compose/events/events.component.ts +0 -21
  795. package/src/lib/compose/form-ref.ts +0 -53
  796. package/src/lib/compose/form-selector/form-selector.sheet.html +0 -10
  797. package/src/lib/compose/form-selector/form-selector.sheet.ts +0 -84
  798. package/src/lib/compose/form.component.html +0 -13
  799. package/src/lib/compose/form.component.ts +0 -456
  800. package/src/lib/compose/maps/maps.component.html +0 -3
  801. package/src/lib/compose/maps/maps.component.ts +0 -22
  802. package/src/lib/compose/new-menu.component.html +0 -13
  803. package/src/lib/compose/new-menu.component.scss +0 -11
  804. package/src/lib/compose/new-menu.component.ts +0 -106
  805. package/src/lib/compose/privilage.directive.ts +0 -43
  806. package/src/lib/compose/recipient-resolver.service.ts +0 -15
  807. package/src/lib/compose/save-changes.dialog.html +0 -13
  808. package/src/lib/compose/save-changes.dialog.ts +0 -10
  809. package/src/lib/compose/state.component.ts +0 -29
  810. package/src/lib/compose/tag/tags.component.html +0 -22
  811. package/src/lib/compose/tag/tags.component.scss +0 -1
  812. package/src/lib/compose/tag/tags.component.ts +0 -83
  813. package/src/lib/compose/trace/flow.component.html +0 -19
  814. package/src/lib/compose/trace/flow.component.scss +0 -7
  815. package/src/lib/compose/trace/flow.component.ts +0 -747
  816. package/src/lib/compose/trace/people.component.ts +0 -33
  817. package/src/lib/compose/trace/trace.base.ts +0 -72
  818. package/src/lib/compose/trace/trace.component.html +0 -57
  819. package/src/lib/compose/trace/trace.component.scss +0 -21
  820. package/src/lib/compose/trace/trace.component.ts +0 -388
  821. package/src/lib/compose/trace/trace.pane.component.html +0 -3
  822. package/src/lib/compose/trace/trace.pane.component.scss +0 -5
  823. package/src/lib/compose/trace/trace.pane.component.ts +0 -47
  824. package/src/lib/compose/version-compare/_compare-theme.scss +0 -147
  825. package/src/lib/compose/version-compare/version-compare.component.ts +0 -49
  826. package/src/lib/compose/version-compare/version-compare.directive.ts +0 -292
  827. package/src/lib/compose/version-compare/version.pane.component.html +0 -19
  828. package/src/lib/compose/version-compare/version.pane.component.scss +0 -8
  829. package/src/lib/compose/version-compare/version.pane.component.ts +0 -53
  830. package/src/lib/core/NgComponentOutlet.ts +0 -31
  831. package/src/lib/core/account.service.ts +0 -30
  832. package/src/lib/core/animated-icon/animated-icon.directive.html +0 -3
  833. package/src/lib/core/animated-icon/animated-icon.directive.scss +0 -12
  834. package/src/lib/core/animated-icon/animated-icon.directive.ts +0 -41
  835. package/src/lib/core/animations.ts +0 -207
  836. package/src/lib/core/authentication.ts +0 -7
  837. package/src/lib/core/avatar/_avatar-theme.scss +0 -60
  838. package/src/lib/core/avatar/avatar.component.html +0 -6
  839. package/src/lib/core/avatar/avatar.component.ts +0 -108
  840. package/src/lib/core/base.ts +0 -43
  841. package/src/lib/core/can-activate.service.exp.ts +0 -31
  842. package/src/lib/core/colors.ts +0 -322
  843. package/src/lib/core/component-factory-resolver.ts +0 -67
  844. package/src/lib/core/configuration.ts +0 -124
  845. package/src/lib/core/controls/_daterange-theme.scss +0 -16
  846. package/src/lib/core/controls/address.input.ts +0 -173
  847. package/src/lib/core/controls/auto-complete.input.ts +0 -218
  848. package/src/lib/core/controls/combination-picker-body.html +0 -34
  849. package/src/lib/core/controls/combination-picker-body.scss +0 -40
  850. package/src/lib/core/controls/combination-picker-body.ts +0 -194
  851. package/src/lib/core/controls/combination-picker.html +0 -6
  852. package/src/lib/core/controls/combination-picker.scss +0 -9
  853. package/src/lib/core/controls/combination-picker.ts +0 -243
  854. package/src/lib/core/controls/combination-pool.html +0 -10
  855. package/src/lib/core/controls/combination-pool.scss +0 -35
  856. package/src/lib/core/controls/combination-pool.ts +0 -92
  857. package/src/lib/core/controls/file.input.html +0 -50
  858. package/src/lib/core/controls/file.input.scss +0 -41
  859. package/src/lib/core/controls/file.input.ts +0 -400
  860. package/src/lib/core/controls/select.input.ts +0 -210
  861. package/src/lib/core/controls/time-picker.html +0 -4
  862. package/src/lib/core/controls/time-picker.ts +0 -199
  863. package/src/lib/core/controls/timespan.input.ts +0 -175
  864. package/src/lib/core/datasource.service.ts +0 -80
  865. package/src/lib/core/decorators.ts +0 -56
  866. package/src/lib/core/firebase.service.ts +0 -55
  867. package/src/lib/core/functions.ts +0 -246
  868. package/src/lib/core/guide/_guide-theme.scss +0 -197
  869. package/src/lib/core/guide/guide.component.html +0 -20
  870. package/src/lib/core/guide/guide.component.ts +0 -222
  871. package/src/lib/core/guide/guide.service.ts +0 -108
  872. package/src/lib/core/guide/help-tip.component.ts +0 -43
  873. package/src/lib/core/http.interceptor.ts +0 -80
  874. package/src/lib/core/hub.service.ts +0 -202
  875. package/src/lib/core/identity/identity.component.html +0 -2
  876. package/src/lib/core/identity/identity.component.ts +0 -57
  877. package/src/lib/core/info/attachment-info.service.ts +0 -46
  878. package/src/lib/core/info/document-info.service.ts +0 -15
  879. package/src/lib/core/info/location-info.component.scss +0 -13
  880. package/src/lib/core/info/location-info.component.ts +0 -64
  881. package/src/lib/core/info/map-info.ts +0 -33
  882. package/src/lib/core/layout/autocomplete.field.ts +0 -41
  883. package/src/lib/core/layout/checkbox.field.ts +0 -21
  884. package/src/lib/core/layout/checkbox.scss +0 -13
  885. package/src/lib/core/layout/checkbox.ts +0 -21
  886. package/src/lib/core/layout/date-range.field.ts +0 -32
  887. package/src/lib/core/layout/date.field.ts +0 -26
  888. package/src/lib/core/layout/expression.field.ts +0 -26
  889. package/src/lib/core/layout/file.field.ts +0 -27
  890. package/src/lib/core/layout/html.field.ts +0 -28
  891. package/src/lib/core/layout/input.base.ts +0 -12
  892. package/src/lib/core/layout/input.field.ts +0 -43
  893. package/src/lib/core/layout/layout.component.scss +0 -9
  894. package/src/lib/core/layout/layout.component.ts +0 -189
  895. package/src/lib/core/layout/numeric.field.ts +0 -24
  896. package/src/lib/core/layout/select.field.ts +0 -52
  897. package/src/lib/core/layout/switch.field.ts +0 -21
  898. package/src/lib/core/layout/textarea.field.ts +0 -21
  899. package/src/lib/core/layout/timespan.field.ts +0 -25
  900. package/src/lib/core/lottie-animation.ts +0 -37
  901. package/src/lib/core/mailbox.service.ts +0 -471
  902. package/src/lib/core/models.ts +0 -685
  903. package/src/lib/core/none.component.scss +0 -26
  904. package/src/lib/core/none.component.ts +0 -28
  905. package/src/lib/core/pipes/action.pipe.ts +0 -18
  906. package/src/lib/core/pipes/calendar.pipe.ts +0 -84
  907. package/src/lib/core/pipes/date-format.pipe.ts +0 -12
  908. package/src/lib/core/pipes/daterange.pipe.ts +0 -45
  909. package/src/lib/core/pipes/difference.pipe.ts +0 -9
  910. package/src/lib/core/pipes/duration-format.pipe.ts +0 -42
  911. package/src/lib/core/pipes/duration.pipe.ts +0 -13
  912. package/src/lib/core/pipes/form.pipe.ts +0 -19
  913. package/src/lib/core/pipes/join.pipe.ts +0 -10
  914. package/src/lib/core/pipes/role.pipe.ts +0 -19
  915. package/src/lib/core/pipes/sanitize-html.pipe.ts +0 -10
  916. package/src/lib/core/pipes/sort.pipe.ts +0 -34
  917. package/src/lib/core/pipes/state.pipe.ts +0 -19
  918. package/src/lib/core/pipes/time-ago.pipe.ts +0 -59
  919. package/src/lib/core/pipes/translate.pipe.ts +0 -22
  920. package/src/lib/core/pipes/type-value.pipe.ts +0 -37
  921. package/src/lib/core/pipes/user-name.pipe.ts +0 -14
  922. package/src/lib/core/popup/_popup-theme.scss +0 -363
  923. package/src/lib/core/popup/popup-ref.ts +0 -19
  924. package/src/lib/core/popup/popup.component.html +0 -6
  925. package/src/lib/core/popup/popup.component.ts +0 -40
  926. package/src/lib/core/popup/popup.service.ts +0 -156
  927. package/src/lib/core/popup/tooltip.directive.ts +0 -58
  928. package/src/lib/core/prompt/ask/ask.dialog.html +0 -6
  929. package/src/lib/core/prompt/ask/ask.dialog.ts +0 -35
  930. package/src/lib/core/prompt/mask/mask.component.html +0 -1
  931. package/src/lib/core/prompt/mask/mask.component.scss +0 -14
  932. package/src/lib/core/prompt/mask/mask.component.ts +0 -15
  933. package/src/lib/core/prompt.service.ts +0 -81
  934. package/src/lib/core/router.ts +0 -31
  935. package/src/lib/core/session.service.ts +0 -265
  936. package/src/lib/core/slots/_slots-theme.scss +0 -139
  937. package/src/lib/core/slots/extended-tab.component.exp.ts +0 -35
  938. package/src/lib/core/slots/extended-tab.component.html +0 -0
  939. package/src/lib/core/slots/intro.pane.component.exp.ts +0 -23
  940. package/src/lib/core/slots/intro.pane.component.html +0 -22
  941. package/src/lib/core/slots/intro.pane.component.scss +0 -8
  942. package/src/lib/core/slots/pane-ref.ts +0 -188
  943. package/src/lib/core/slots/router.directive.ts +0 -53
  944. package/src/lib/core/slots/router.service.ts +0 -53
  945. package/src/lib/core/slots/slot.component.exp.ts +0 -49
  946. package/src/lib/core/slots/slot.component.html +0 -15
  947. package/src/lib/core/slots/slot.component.scss +0 -18
  948. package/src/lib/core/slots/slots.component.html +0 -68
  949. package/src/lib/core/slots/slots.component.scss +0 -163
  950. package/src/lib/core/slots/slots.component.ts +0 -1260
  951. package/src/lib/core/tagging/documents.component.html +0 -11
  952. package/src/lib/core/tagging/documents.component.ts +0 -19
  953. package/src/lib/core/tagging/edit-input.component.html +0 -41
  954. package/src/lib/core/tagging/edit-input.component.scss +0 -21
  955. package/src/lib/core/tagging/edit-input.component.ts +0 -211
  956. package/src/lib/core/tagging/emoji.component.ts +0 -23
  957. package/src/lib/core/tagging/tagging-item.directive.ts +0 -34
  958. package/src/lib/core/tagging/tagging.component-base.ts +0 -29
  959. package/src/lib/core/tagging/tagging.component.scss +0 -22
  960. package/src/lib/core/tagging/tagging.directive.ts +0 -130
  961. package/src/lib/core/tagging/tagging.pipe.ts +0 -76
  962. package/src/lib/core/tagging/users.component.html +0 -13
  963. package/src/lib/core/tagging/users.component.ts +0 -28
  964. package/src/lib/core/translate.service.ts +0 -128
  965. package/src/lib/core/translations.ts +0 -1138
  966. package/src/lib/core/window-title.service.ts +0 -54
  967. package/src/lib/cube/accum/accum.component.html +0 -16
  968. package/src/lib/cube/accum/accum.component.ts +0 -264
  969. package/src/lib/cube/chart/chart.component.html +0 -32
  970. package/src/lib/cube/chart/chart.component.ts +0 -344
  971. package/src/lib/cube/cube-info.service.ts +0 -135
  972. package/src/lib/cube/cube-menu.component.html +0 -13
  973. package/src/lib/cube/cube-menu.component.ts +0 -18
  974. package/src/lib/cube/cube-view.component.html +0 -66
  975. package/src/lib/cube/cube-view.component.ts +0 -186
  976. package/src/lib/cube/cube.service.ts +0 -495
  977. package/src/lib/cube/declarations.ts +0 -24
  978. package/src/lib/cube/explore/document-item.component.ts +0 -28
  979. package/src/lib/cube/explore/explore-item.component.scss +0 -4
  980. package/src/lib/cube/explore/explore-item.component.ts +0 -23
  981. package/src/lib/cube/explore/explore-items.component.html +0 -25
  982. package/src/lib/cube/explore/explore-items.component.scss +0 -7
  983. package/src/lib/cube/explore/explore-items.component.ts +0 -185
  984. package/src/lib/cube/explore/explore.pane.component.html +0 -12
  985. package/src/lib/cube/explore/explore.pane.component.ts +0 -78
  986. package/src/lib/cube/explore/item-resolver.service.ts +0 -24
  987. package/src/lib/cube/explore/item.pane.component.html +0 -3
  988. package/src/lib/cube/explore/item.pane.component.ts +0 -23
  989. package/src/lib/cube/filter/filter-tags.component.exp.ts +0 -70
  990. package/src/lib/cube/filter/filter-tags.component.html +0 -11
  991. package/src/lib/cube/filter/filter-tags.component.scss +0 -0
  992. package/src/lib/cube/filter/filter-tags.component.spec.ts +0 -25
  993. package/src/lib/cube/filter/filter.component.html +0 -25
  994. package/src/lib/cube/filter/filter.component.scss +0 -8
  995. package/src/lib/cube/filter/filter.component.ts +0 -116
  996. package/src/lib/cube/grid/grid.component.html +0 -29
  997. package/src/lib/cube/grid/grid.component.scss +0 -10
  998. package/src/lib/cube/grid/grid.component.ts +0 -223
  999. package/src/lib/cube/grid/spreadsheet.component.ts +0 -382
  1000. package/src/lib/cube/matrix/_matrix.theme.scss +0 -86
  1001. package/src/lib/cube/matrix/matrix.base.ts +0 -149
  1002. package/src/lib/cube/matrix/matrix.mobile.component.html +0 -28
  1003. package/src/lib/cube/matrix/matrix.mobile.component.ts +0 -60
  1004. package/src/lib/cube/matrix/matrix.pane.component.html +0 -34
  1005. package/src/lib/cube/matrix/matrix.pane.component.scss +0 -10
  1006. package/src/lib/cube/matrix/matrix.pane.component.ts +0 -83
  1007. package/src/lib/cube/matrix/popup.component.html +0 -32
  1008. package/src/lib/cube/matrix/popup.component.scss +0 -7
  1009. package/src/lib/cube/matrix/popup.component.ts +0 -55
  1010. package/src/lib/cube/matrix/table.component.html +0 -46
  1011. package/src/lib/cube/matrix/table.component.scss +0 -25
  1012. package/src/lib/cube/matrix/table.component.ts +0 -517
  1013. package/src/lib/cube/parallel/item.ts +0 -47
  1014. package/src/lib/cube/parallel/parallel.component.html +0 -22
  1015. package/src/lib/cube/parallel/parallel.component.scss +0 -13
  1016. package/src/lib/cube/parallel/parallel.component.ts +0 -166
  1017. package/src/lib/cube/pivot/pivot.component.html +0 -14
  1018. package/src/lib/cube/pivot/pivot.component.ts +0 -518
  1019. package/src/lib/cube/sum/_sum.theme.scss +0 -63
  1020. package/src/lib/cube/sum/sum.component.html +0 -60
  1021. package/src/lib/cube/sum/sum.component.scss +0 -94
  1022. package/src/lib/cube/sum/sum.component.ts +0 -437
  1023. package/src/lib/cube/view-base.ts +0 -82
  1024. package/src/lib/cube/view.mobile.component.html +0 -38
  1025. package/src/lib/cube/view.mobile.component.scss +0 -9
  1026. package/src/lib/cube/view.mobile.component.ts +0 -116
  1027. package/src/lib/cube/view.pane.component.html +0 -24
  1028. package/src/lib/cube/view.pane.component.scss +0 -12
  1029. package/src/lib/cube/view.pane.component.ts +0 -80
  1030. package/src/lib/dashboard/_table.widget.scss +0 -19
  1031. package/src/lib/dashboard/actions/actions.widget.html +0 -6
  1032. package/src/lib/dashboard/actions/actions.widget.ts +0 -118
  1033. package/src/lib/dashboard/cube/accum-cube.widget.html +0 -15
  1034. package/src/lib/dashboard/cube/accum-cube.widget.ts +0 -154
  1035. package/src/lib/dashboard/cube/compare.widget.ts +0 -219
  1036. package/src/lib/dashboard/cube/cube-analysis.base.ts +0 -113
  1037. package/src/lib/dashboard/cube/cube-analysis.widget.ts +0 -44
  1038. package/src/lib/dashboard/cube/cube-chart.widget.html +0 -7
  1039. package/src/lib/dashboard/cube/cube-chart.widget.ts +0 -144
  1040. package/src/lib/dashboard/cube/documents.widget.html +0 -19
  1041. package/src/lib/dashboard/cube/documents.widget.ts +0 -57
  1042. package/src/lib/dashboard/cube/filter/filter.component.html +0 -3
  1043. package/src/lib/dashboard/cube/filter/filter.component.ts +0 -53
  1044. package/src/lib/dashboard/cube/gauge.component.exp.ts +0 -18
  1045. package/src/lib/dashboard/dashboard.component.html +0 -18
  1046. package/src/lib/dashboard/dashboard.component.scss +0 -36
  1047. package/src/lib/dashboard/dashboard.component.ts +0 -53
  1048. package/src/lib/dashboard/dashboard.pane.component.ts +0 -19
  1049. package/src/lib/dashboard/recents/recents.widget.html +0 -32
  1050. package/src/lib/dashboard/recents/recents.widget.scss +0 -9
  1051. package/src/lib/dashboard/recents/recents.widget.ts +0 -89
  1052. package/src/lib/dashboard/score/activity.widget.html +0 -9
  1053. package/src/lib/dashboard/score/activity.widget.ts +0 -175
  1054. package/src/lib/dashboard/score/compare-groups.widget.html +0 -8
  1055. package/src/lib/dashboard/score/compare-groups.widget.ts +0 -212
  1056. package/src/lib/dashboard/score/peers-performance.widget.html +0 -23
  1057. package/src/lib/dashboard/score/peers-performance.widget.ts +0 -254
  1058. package/src/lib/dashboard/score/pending-results.widget.html +0 -31
  1059. package/src/lib/dashboard/score/pending-results.widget.ts +0 -52
  1060. package/src/lib/dashboard/score/personal-score.widget.html +0 -18
  1061. package/src/lib/dashboard/score/personal-score.widget.ts +0 -229
  1062. package/src/lib/dashboard/widget-item.component.ts +0 -92
  1063. package/src/lib/dashboard/widget-ref.ts +0 -20
  1064. package/src/lib/desktop.module.ts +0 -98
  1065. package/src/lib/home/_home-theme.scss +0 -174
  1066. package/src/lib/home/about/about.dialog.html +0 -19
  1067. package/src/lib/home/about/about.dialog.ts +0 -18
  1068. package/src/lib/home/home-base.component.ts +0 -100
  1069. package/src/lib/home/home.desktop.component.html +0 -92
  1070. package/src/lib/home/home.desktop.component.scss +0 -66
  1071. package/src/lib/home/home.desktop.component.ts +0 -211
  1072. package/src/lib/home/home.mobile.component.html +0 -81
  1073. package/src/lib/home/home.mobile.component.scss +0 -49
  1074. package/src/lib/home/home.mobile.component.ts +0 -105
  1075. package/src/lib/home/notifications/notifications.component.html +0 -18
  1076. package/src/lib/home/notifications/notifications.component.scss +0 -36
  1077. package/src/lib/home/notifications/notifications.component.ts +0 -55
  1078. package/src/lib/home/options/_options-theme.scss +0 -11
  1079. package/src/lib/home/options/options.component.html +0 -41
  1080. package/src/lib/home/options/options.component.scss +0 -16
  1081. package/src/lib/home/options/options.component.ts +0 -95
  1082. package/src/lib/home/outofoffice/outofoffice.component.html +0 -5
  1083. package/src/lib/home/outofoffice/outofoffice.component.scss +0 -10
  1084. package/src/lib/home/outofoffice/outofoffice.component.ts +0 -33
  1085. package/src/lib/home/progress-bar.directive.exp.ts +0 -24
  1086. package/src/lib/home/search.service.ts +0 -87
  1087. package/src/lib/home/sign/sign.component.html +0 -15
  1088. package/src/lib/home/sign/sign.component.ts +0 -42
  1089. package/src/lib/home/submenu.directive.exp.ts +0 -43
  1090. package/src/lib/home/tools.component.html +0 -27
  1091. package/src/lib/home/tools.component.scss +0 -15
  1092. package/src/lib/home/tools.component.ts +0 -72
  1093. package/src/lib/home/welcome/welcome.dialog.exp.ts +0 -35
  1094. package/src/lib/home/welcome/welcome.dialog.html +0 -14
  1095. package/src/lib/impersonate/impersonate.component.html +0 -17
  1096. package/src/lib/impersonate/impersonate.component.scss +0 -3
  1097. package/src/lib/impersonate/impersonate.component.spec.ts +0 -24
  1098. package/src/lib/impersonate/impersonate.component.ts +0 -60
  1099. package/src/lib/mobile.module.ts +0 -39
  1100. package/src/lib/modules/chart.module.ts +0 -53
  1101. package/src/lib/modules/circular-gauge.module.ts +0 -10
  1102. package/src/lib/modules/date.adapter.ts +0 -31
  1103. package/src/lib/modules/datepicker.intl.ts +0 -35
  1104. package/src/lib/modules/dayjs.module.ts +0 -32
  1105. package/src/lib/modules/diagram.module.ts +0 -25
  1106. package/src/lib/modules/gantt.module.ts +0 -12
  1107. package/src/lib/modules/grid.module.ts +0 -16
  1108. package/src/lib/modules/material.module.ts +0 -104
  1109. package/src/lib/modules/paginator.intl.ts +0 -16
  1110. package/src/lib/modules/pivot.module.ts +0 -23
  1111. package/src/lib/modules/schedule.module.ts +0 -12
  1112. package/src/lib/modules/spreadsheet.module.ts +0 -21
  1113. package/src/lib/modules/stepper.intl.ts +0 -12
  1114. package/src/lib/modules/texteditor.module.ts +0 -16
  1115. package/src/lib/notifications/filter.component.html +0 -6
  1116. package/src/lib/notifications/filter.component.ts +0 -16
  1117. package/src/lib/notifications/notifications-table.component.html +0 -54
  1118. package/src/lib/notifications/notifications-table.component.scss +0 -14
  1119. package/src/lib/notifications/notifications-table.component.ts +0 -94
  1120. package/src/lib/notifications/notifications.component-base.ts +0 -49
  1121. package/src/lib/notifications/notifications.mobile.component.ts +0 -13
  1122. package/src/lib/notifications/notifications.pane.component.ts +0 -16
  1123. package/src/lib/notifications/notifications.service.ts +0 -66
  1124. package/src/lib/notifications/types/commented.notification.html +0 -14
  1125. package/src/lib/notifications/types/commented.notification.ts +0 -51
  1126. package/src/lib/notifications/types/cube-anomaly.notification.ts +0 -51
  1127. package/src/lib/notifications/types/escalated.notification.ts +0 -36
  1128. package/src/lib/notifications/types/liked.notification.ts +0 -49
  1129. package/src/lib/notifications/types/long-running-task.notification.ts +0 -23
  1130. package/src/lib/notifications/types/notification-base.ts +0 -37
  1131. package/src/lib/notifications/types/nudge.notification.ts +0 -32
  1132. package/src/lib/notifications/types/state-changed.notification.ts +0 -27
  1133. package/src/lib/notifications/types/tagged.notification.ts +0 -46
  1134. package/src/lib/notifications/types/text.notification.ts +0 -13
  1135. package/src/lib/notifications/types/upcoming-event.notification.ts +0 -25
  1136. package/src/lib/options/options.component.html +0 -148
  1137. package/src/lib/options/options.component.scss +0 -19
  1138. package/src/lib/options/options.component.ts +0 -262
  1139. package/src/lib/options/options.service.ts +0 -30
  1140. package/src/lib/reports/arguments-component.ts +0 -73
  1141. package/src/lib/reports/cube/documents.component.ts +0 -50
  1142. package/src/lib/reports/cube/grid-documents.component.html +0 -25
  1143. package/src/lib/reports/cube/grid-documents.component.ts +0 -67
  1144. package/src/lib/reports/cube/table-documents.component.css +0 -18
  1145. package/src/lib/reports/cube/table-documents.component.html +0 -30
  1146. package/src/lib/reports/cube/table-documents.component.ts +0 -46
  1147. package/src/lib/reports/cube/usage-args.component.html +0 -3
  1148. package/src/lib/reports/cube/usage-args.component.ts +0 -55
  1149. package/src/lib/reports/cube/usage-base.ts +0 -113
  1150. package/src/lib/reports/cube/usage-browse.component.exp.ts +0 -93
  1151. package/src/lib/reports/cube/usage-browse.component.html +0 -27
  1152. package/src/lib/reports/cube/usage-browse.component.scss +0 -24
  1153. package/src/lib/reports/cube/usage-chart.component.html +0 -11
  1154. package/src/lib/reports/cube/usage-chart.component.ts +0 -386
  1155. package/src/lib/reports/cube/usage-pivot.component.html +0 -19
  1156. package/src/lib/reports/cube/usage-pivot.component.ts +0 -266
  1157. package/src/lib/reports/cube/usage.component.ts +0 -34
  1158. package/src/lib/reports/report-ref.ts +0 -41
  1159. package/src/lib/reports/report-viewer.component.html +0 -2
  1160. package/src/lib/reports/report-viewer.component.scss +0 -12
  1161. package/src/lib/reports/report-viewer.component.ts +0 -159
  1162. package/src/lib/reports/report.mobile.component.html +0 -17
  1163. package/src/lib/reports/report.mobile.component.scss +0 -7
  1164. package/src/lib/reports/report.mobile.component.ts +0 -117
  1165. package/src/lib/reports/report.pane.component.html +0 -9
  1166. package/src/lib/reports/report.pane.component.scss +0 -9
  1167. package/src/lib/reports/report.pane.component.ts +0 -88
  1168. package/src/lib/reports/reports-menu.component.html +0 -9
  1169. package/src/lib/reports/reports-menu.component.ts +0 -20
  1170. package/src/lib/reports/substitution/substitution.component.html +0 -26
  1171. package/src/lib/reports/substitution/substitution.component.ts +0 -34
  1172. package/src/lib/reports/table/table-view.component.html +0 -8
  1173. package/src/lib/reports/table/table-view.component.scss +0 -0
  1174. package/src/lib/reports/table/table-view.component.ts +0 -33
  1175. package/src/lib/reports/tasks/tasks.component.html +0 -21
  1176. package/src/lib/reports/tasks/tasks.component.ts +0 -115
  1177. package/src/lib/reports/timeline/timeline.component.exp.ts +0 -225
  1178. package/src/lib/reports/timeline/timeline.component.html +0 -9
  1179. package/src/lib/routes.desktop.ts +0 -196
  1180. package/src/lib/routes.mobile.ts +0 -70
  1181. package/src/lib/scheduler/schedule.component.html +0 -36
  1182. package/src/lib/scheduler/schedule.component.scss +0 -13
  1183. package/src/lib/scheduler/schedule.component.ts +0 -158
  1184. package/src/lib/scheduler/scheduler.mobile.component.ts +0 -30
  1185. package/src/lib/scheduler/scheduler.pane.component.ts +0 -49
  1186. package/src/lib/shared.module.ts +0 -374
  1187. package/src/lib/system.module.ts +0 -77
  1188. package/src/lib/views/_views.theme.scss +0 -18
  1189. package/src/lib/views/cube/chart.component.html +0 -24
  1190. package/src/lib/views/cube/chart.component.ts +0 -88
  1191. package/src/lib/views/cube/cube-base.ts +0 -126
  1192. package/src/lib/views/cube/explore.component.html +0 -33
  1193. package/src/lib/views/cube/explore.component.ts +0 -82
  1194. package/src/lib/views/cube/filter.component.exp.ts +0 -66
  1195. package/src/lib/views/cube/filter.component.html +0 -25
  1196. package/src/lib/views/cube/matrix.component.html +0 -42
  1197. package/src/lib/views/cube/matrix.component.scss +0 -3
  1198. package/src/lib/views/cube/matrix.component.ts +0 -106
  1199. package/src/lib/views/cube/parallel.component.html +0 -10
  1200. package/src/lib/views/cube/parallel.component.scss +0 -13
  1201. package/src/lib/views/cube/parallel.component.ts +0 -63
  1202. package/src/lib/views/cube/pivot.component.html +0 -8
  1203. package/src/lib/views/cube/pivot.component.ts +0 -62
  1204. package/src/lib/views/cube/sum.component.html +0 -30
  1205. package/src/lib/views/cube/sum.component.scss +0 -3
  1206. package/src/lib/views/cube/sum.component.ts +0 -71
  1207. package/src/lib/views/cube/view.component.html +0 -34
  1208. package/src/lib/views/cube/view.component.scss +0 -12
  1209. package/src/lib/views/cube/view.component.ts +0 -103
  1210. package/src/lib/views/document-view-ref.ts +0 -34
  1211. package/src/lib/views/timeline/timeline.component.exp.ts +0 -333
  1212. package/src/lib/views/timeline/timeline.component.html +0 -6
  1213. package/src/lib/views/timeline/timeline.component.scss +0 -6
  1214. package/src/lib/views/view-item.component.ts +0 -67
  1215. package/src/lib/views/views.component.html +0 -4
  1216. package/src/lib/views/views.component.scss +0 -33
  1217. package/src/lib/views/views.component.ts +0 -29
  1218. package/src/lib/views/views.mobile.component.ts +0 -19
  1219. package/src/lib/views/views.pane.component.ts +0 -33
  1220. package/src/polyfills.ts +0 -81
  1221. package/src/public-api.ts +0 -149
  1222. package/src/styles/_app.scss +0 -317
  1223. package/src/styles/_emoji-mart.scss +0 -504
  1224. package/src/styles/_syncfusion-base-definitions.scss +0 -63
  1225. package/src/styles/_syncfusion-dark-definitions.scss +0 -21
  1226. package/src/styles/_syncfusion-dark.scss +0 -2
  1227. package/src/styles/_syncfusion-icons.scss +0 -57
  1228. package/src/styles/_syncfusion-light-definitions.scss +0 -23
  1229. package/src/styles/_syncfusion-light.scss +0 -2
  1230. package/src/styles/_syncfusion.scss +0 -21
  1231. package/src/styles/_xslt.scss +0 -377
  1232. package/src/styles/brown.scss +0 -14
  1233. package/src/styles/build-xslt.ps1 +0 -2
  1234. package/src/styles/build.ps1 +0 -26
  1235. package/src/styles/dark.scss +0 -13
  1236. package/src/styles/deep-purple-light-blue.scss +0 -20
  1237. package/src/styles/deep-purple-teal.scss +0 -20
  1238. package/src/styles/default.scss +0 -21
  1239. package/src/styles/diagram-icons.eot +0 -0
  1240. package/src/styles/diagram-icons.ttf +0 -0
  1241. package/src/styles/green.scss +0 -13
  1242. package/src/styles/indigo.scss +0 -13
  1243. package/src/styles/xslt.scss +0 -21
  1244. package/src/styles/xslt.scss.map +0 -1
  1245. package/src/test.ts +0 -26
  1246. package/tsconfig.lib.json +0 -26
  1247. package/tsconfig.lib.prod.json +0 -10
  1248. package/tsconfig.spec.json +0 -18
@@ -0,0 +1,410 @@
1
+ import { Injectable, InjectionToken } from '@angular/core';
2
+ import { HttpEventType, HttpRequest, HttpResponse } from '@angular/common/http';
3
+ import { Observable, Subject } from 'rxjs';
4
+ import { tap, switchMap, map } from 'rxjs/operators';
5
+ import { cleanup, isArray } from './functions';
6
+ import * as i0 from "@angular/core";
7
+ import * as i1 from "./session.service";
8
+ import * as i2 from "./authentication";
9
+ import * as i3 from "./hub.service";
10
+ import * as i4 from "@angular/common/http";
11
+ export const DOCUMENT_MODEL = new InjectionToken('model');
12
+ export class MailboxService {
13
+ constructor(_session, _auth, messaging, _http) {
14
+ this._session = _session;
15
+ this._auth = _auth;
16
+ this._http = _http;
17
+ this._change$ = new Subject();
18
+ this._delete$ = new Subject();
19
+ /** */
20
+ this.changed = this._change$.asObservable();
21
+ this.deleted = this._delete$.asObservable();
22
+ /**
23
+ */
24
+ this._notify = () => (observe) => {
25
+ return observe.pipe(tap(m => {
26
+ m.loaded = true;
27
+ this._change$.next(m);
28
+ }));
29
+ };
30
+ messaging.new$.
31
+ subscribe(m => {
32
+ if (m.userId !== _session.profile.userId)
33
+ return;
34
+ _session.profile.inboxCount++;
35
+ const folder = _session.profile.folders.find(f => f.name === m.model.folderId);
36
+ folder.count++;
37
+ });
38
+ }
39
+ formatDownloadUrl(documentId, fileId, inline) {
40
+ const token = this._auth.getAccessToken();
41
+ return `/api/attachments/${documentId}/${fileId}?access_token=${token}&inline=${inline ? true : false}`;
42
+ }
43
+ download(documentId, fileId) {
44
+ //new Observable<any>(observe => {
45
+ // observe.next({});
46
+ // return {
47
+ // unsubscribe() { }
48
+ // }
49
+ //});
50
+ return this._http.get(`/api/attachments/${documentId}/${fileId}`, {
51
+ responseType: 'arraybuffer',
52
+ reportProgress: true
53
+ });
54
+ }
55
+ removeattachment(recipientId, fileId) {
56
+ return this._http.delete(`/api/attachments/${recipientId}/${fileId}`);
57
+ }
58
+ read(id, read, folderId, received) {
59
+ return this._http.put(`/api/mailbox/read/${id}`, undefined, { params: { read } }).pipe(tap(() => folderId && this._updateunreadcounter(received, folderId, read ? 1 : -1)));
60
+ }
61
+ comments(id, before) {
62
+ return this._http.get(`/api/comments/${id}`, { params: { before: new Date(before).toJSON() } });
63
+ }
64
+ tags(id, tags) {
65
+ return this._http.put(`/api/mailbox/tag/${id}`, { tags }).pipe(tap(() => {
66
+ this._change$.next({ id, tags });
67
+ }));
68
+ }
69
+ /**
70
+ *
71
+ * @param documentId
72
+ * @param stateId
73
+ * @param userId substitute
74
+ */
75
+ changeState(documentId, stateId, userId) {
76
+ return this._http.put(`/api/mailbox/changestate/${documentId}`, { stateId, userId });
77
+ }
78
+ move(id, folderId) {
79
+ return this._http.put(`/api/mailbox/move/${id}?folderId=${folderId}`, {}).pipe(tap(() => {
80
+ this._change$.next({
81
+ id,
82
+ folderId
83
+ });
84
+ }));
85
+ }
86
+ checkOut(recipientId, version, attachmentId) {
87
+ return this._http.put(`/api/attachments/${recipientId}/${attachmentId}/checkout`, null, { params: { version } });
88
+ }
89
+ checkIn(recipientId, version, attachmentId, file) {
90
+ const fd = new FormData();
91
+ fd.append(file.name, file);
92
+ const req = new HttpRequest('PUT', `/api/attachments/${recipientId}/${attachmentId}/checkin?version=${version}`, fd, {
93
+ reportProgress: true,
94
+ });
95
+ //const initialState: UploadEvent = { state: 'PENDING', progress: 0 }
96
+ //const calculateState = (
97
+ // upload: UploadEvent,
98
+ // event: HttpEvent<unknown>
99
+ //): UploadEvent => {
100
+ // // implementation
101
+ //}
102
+ return new Observable(observe => {
103
+ this._http.request(req).subscribe(event => {
104
+ if (event instanceof ProgressEvent) {
105
+ // observe.next(new UploadEvent(
106
+ // file.name,
107
+ // (event as ProgressEvent).loaded,
108
+ // (event as ProgressEvent).total
109
+ // ));
110
+ }
111
+ else if (event instanceof HttpResponse) {
112
+ const res = event;
113
+ if (res.status === 200) {
114
+ const model = res.body;
115
+ observe.next(model);
116
+ }
117
+ else
118
+ observe.error({ status: res.status, error: res.body });
119
+ observe.complete();
120
+ }
121
+ }, e => {
122
+ observe.error(e);
123
+ observe.complete();
124
+ });
125
+ return {
126
+ unsubscribe() {
127
+ //req.
128
+ }
129
+ };
130
+ });
131
+ }
132
+ upload(recipientId, formId, version, files, options) {
133
+ const fd = new FormData();
134
+ if (isArray(files))
135
+ files.forEach(f => fd.append(f.name, f));
136
+ else
137
+ fd.append(files.name, files);
138
+ //const bytesPerChunk = 20 * 1024 * 1024;
139
+ // aquire the location prior to sending the request
140
+ return this._geoLocation(formId).pipe(switchMap(params => new Observable(observe => {
141
+ let url = `/api/attachments/${recipientId}?version=${version}`;
142
+ Object.keys(params).forEach(p => url += `&${p}=${params[p]}`);
143
+ if (options) {
144
+ if (options.isPrivate)
145
+ url += '&isprivate=true';
146
+ }
147
+ const req = new HttpRequest('POST', url, fd, {
148
+ reportProgress: true,
149
+ });
150
+ this._http.request(req).subscribe(event => {
151
+ if (event instanceof ProgressEvent) {
152
+ // This is an upload progress event. Compute and show the % done:
153
+ //const percentDone = Math.round(100 * event.loaded / event.total);
154
+ //console.log(`File is ${percentDone}% uploaded.`);
155
+ }
156
+ else if (event instanceof HttpResponse) {
157
+ const res = event;
158
+ if (res.status === 200) {
159
+ const model = res.body;
160
+ observe.next(isArray(files) ? model : model[0]);
161
+ }
162
+ else
163
+ observe.error({ status: res.status, error: res.body });
164
+ observe.complete();
165
+ }
166
+ }, e => {
167
+ observe.error(e);
168
+ observe.complete();
169
+ });
170
+ return {
171
+ unsubscribe() {
172
+ }
173
+ };
174
+ })));
175
+ }
176
+ /**
177
+ * retrieve senders
178
+ * @param name
179
+ */
180
+ senders(name) {
181
+ return this._http.get('/api/mailbox/senders/', {
182
+ params: {
183
+ name
184
+ }
185
+ });
186
+ }
187
+ flag(id, flag) {
188
+ return this._http.put(`/api/mailbox/flag/${id}?flag=${flag}`, null).pipe(tap(() => this._change$.next({ id, flag })));
189
+ }
190
+ viewedcomments(id) {
191
+ return this._http.put(`/api/comments/viewed/${id}`, {}, { headers: { 'no-progress': 'true' } }).pipe(tap((e) => this._change$.next({ id, viewed: e.time })));
192
+ }
193
+ typing(id) {
194
+ return this._http.put(`/api/comments/typing/${id}`, {}, { headers: { 'no-progress': 'true' } }).toPromise();
195
+ }
196
+ editing(id) {
197
+ return this._http.put(`/api/mailbox/editing/${id}`, {}, { headers: { 'no-progress': 'true' } }).toPromise();
198
+ }
199
+ copy(id) {
200
+ return this._http.post(`/api/mailbox/copy/${id}`, {});
201
+ }
202
+ /**
203
+ *
204
+ * @param id document id
205
+ * @param options
206
+ */
207
+ comment(id, options) {
208
+ return this._http.post(`/api/comments/${id}`, options);
209
+ }
210
+ commentupdate(id, commentId, options) {
211
+ return this._http.put(`/api/comments/edit/${id}/${commentId}`, options);
212
+ }
213
+ info(documentId) {
214
+ return this._http.get(`/api/mailbox/info/${documentId}`);
215
+ }
216
+ timeline(documentId) {
217
+ return this._http.get(`/api/mailbox/timeline/${documentId}`);
218
+ }
219
+ vote(id, commentId, value) {
220
+ return this._http.post(`/api/comments/vote/${id}/${commentId}`, {}, { params: { value: value.toString() } });
221
+ }
222
+ votes(id, commentId) {
223
+ return this._http.get(`/api/comments/votes/${id}/${commentId}`);
224
+ }
225
+ edits(id, commentId) {
226
+ return this._http.get(`/api/comments/edits/${id}/${commentId}`);
227
+ }
228
+ findAll(filter, options) {
229
+ const params = { ...filter, ...options };
230
+ cleanup(params);
231
+ return this._http.get('/api/mail', { params });
232
+ }
233
+ create(form) {
234
+ return this._geoLocation(form).pipe(switchMap(p => this._http.post('/api/mail', null, {
235
+ params: {
236
+ form,
237
+ ...p
238
+ }
239
+ })), this._notify());
240
+ }
241
+ get(id, read) {
242
+ return this._http.get(`/api/mail/${id}`).pipe(tap((m) => read === false && m.read === true &&
243
+ this._updateunreadcounter(m.received, m.folderId, -1)));
244
+ }
245
+ _updateunreadcounter(date, folderId, val) {
246
+ if (
247
+ // date is above watermark
248
+ this._session.profile.options.inboxView &&
249
+ this._session.profile.options.inboxView < date)
250
+ this._session.profile.inboxCount += val;
251
+ // decrease
252
+ const folder = this._session.profile.folders.
253
+ find(f => f.name === folderId);
254
+ folder.count = Math.max(0, folder.count + val);
255
+ }
256
+ save(id, form, version, model, files) {
257
+ //const fd = new FormData();
258
+ //const modelBlob = new Blob([JSON.stringify(model)], {
259
+ // type: 'application/json',
260
+ //});
261
+ //fd.append('form-data', modelBlob);
262
+ //if (files) {
263
+ // if (isArray(files)) files.forEach(f =>
264
+ // fd.append(f.name, f));
265
+ // else for (let i = 0; i < files.length; i++) {
266
+ // let file = files.item(i);
267
+ // fd.append(file.name, file);
268
+ // }
269
+ //}
270
+ // return this._withGeoLocation(form).pipe(switchMap(params => {
271
+ // let url = `/api/mail/${id}?version=${version}`;
272
+ // Object.keys(params).forEach(p => url += `&${p}=${params[p]}`);
273
+ // const req = new HttpRequest('PUT', url, fd, {
274
+ // });
275
+ // return this._http.request(req).pipe(map(event => {
276
+ // const res = event as HttpResponse<any>;
277
+ // if (res.status === 200) {
278
+ // const model = res.body as RecipientModel<any>;
279
+ // return model;
280
+ // }
281
+ // else
282
+ // return throwError({ status: res.status, error: res.body });
283
+ // }))
284
+ // }), this._notify<T>());
285
+ return this._geoLocation(form).pipe(switchMap(params => this._http.put(`/api/mail/${id}?version=${version}`, model, { params })), this._notify());
286
+ }
287
+ delete(id) {
288
+ return this._http.delete(`/api/mail/${id}`).pipe(tap(() => this._delete$.next(id)));
289
+ }
290
+ removecomment(id) {
291
+ return this._http.delete(`/api/comments/${id}`);
292
+ }
293
+ submit(id, version, form, model, read, folderId, received) {
294
+ return this._geoLocation(form).pipe(switchMap(params => this._http.put(`/api/mail/${id}?version=${version}&go=true`, model, { params }))).pipe(this._notify());
295
+ }
296
+ send(id, version, form, model, action, actionArgs, read, folderId, received) {
297
+ return this._geoLocation(form).pipe(switchMap(params => this._http.put(`/api/mail/${id}?version=${version}&action=${action}`, model, { params: { ...params, ...actionArgs } }))).pipe(tap(() => read === false && this._updateunreadcounter(received, folderId, -1)), this._notify());
298
+ }
299
+ events(starting, ending, contains) {
300
+ return this._http.get(`/api/events`, {
301
+ params: {
302
+ starting: starting.toJSON(),
303
+ ending: ending.toJSON(),
304
+ contains: contains || ''
305
+ }
306
+ });
307
+ }
308
+ changeEvent(id, options) {
309
+ return this._http.put(`/api/events/${id}`, options);
310
+ }
311
+ /**
312
+ * get geo location if form settings requies
313
+ * @param form
314
+ */
315
+ _geoLocation(form) {
316
+ const configuration = this._session.profile.forms.find(f => f.name === form);
317
+ return new Observable(observe => {
318
+ switch (configuration.position) {
319
+ case 'Require':
320
+ case 'Ask':
321
+ navigator.geolocation.getCurrentPosition(r => {
322
+ observe.next({
323
+ lng: r.coords.longitude.toString(),
324
+ lat: r.coords.latitude.toString()
325
+ });
326
+ observe.complete();
327
+ }, e => {
328
+ if (configuration.position === 'Ask')
329
+ observe.next({});
330
+ else
331
+ observe.error('no position');
332
+ observe.complete();
333
+ });
334
+ break;
335
+ default:
336
+ observe.next({});
337
+ observe.complete();
338
+ }
339
+ });
340
+ }
341
+ }
342
+ MailboxService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.1", ngImport: i0, type: MailboxService, deps: [{ token: i1.SessionService }, { token: i2.AuthenticationImpl }, { token: i3.HubService }, { token: i4.HttpClient }], target: i0.ɵɵFactoryTarget.Injectable });
343
+ MailboxService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "13.3.1", ngImport: i0, type: MailboxService, providedIn: 'root' });
344
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.1", ngImport: i0, type: MailboxService, decorators: [{
345
+ type: Injectable,
346
+ args: [{ providedIn: 'root' }]
347
+ }], ctorParameters: function () { return [{ type: i1.SessionService }, { type: i2.AuthenticationImpl }, { type: i3.HubService }, { type: i4.HttpClient }]; } });
348
+ function isHttpResponse(event) {
349
+ return event.type === HttpEventType.Response;
350
+ }
351
+ function isHttpProgressEvent(event) {
352
+ return (event.type === HttpEventType.DownloadProgress ||
353
+ event.type === HttpEventType.UploadProgress);
354
+ }
355
+ function calculateState(upload, event) {
356
+ if (isHttpProgressEvent(event)) {
357
+ return new UploadEvent({
358
+ progress: event.total
359
+ ? Math.round((100 * event.loaded) / event.total)
360
+ : upload.progress,
361
+ state: 'progress',
362
+ });
363
+ }
364
+ if (isHttpResponse(event)) {
365
+ return new UploadEvent({
366
+ progress: 100,
367
+ state: 'done',
368
+ });
369
+ }
370
+ return upload;
371
+ }
372
+ export class UploadEvent {
373
+ constructor(options) { }
374
+ }
375
+ function reportprogress(filename) {
376
+ return (source) => source.pipe(map(r => {
377
+ //if (event instanceof ProgressEvent) {
378
+ // observe.next(new UploadEvent(
379
+ // file.name,
380
+ // (event as ProgressEvent).loaded,
381
+ // (event as ProgressEvent).total
382
+ // ));
383
+ //} else if (event instanceof HttpResponse) {
384
+ // const res = event as HttpResponse<any>;
385
+ // if (res.status === 200) {
386
+ // const model = res.body as Attachment;
387
+ // observe.next(model);
388
+ // }
389
+ // else
390
+ // observe.error({ status: res.status, error: res.body });
391
+ // observe.complete();
392
+ return r;
393
+ }));
394
+ }
395
+ export function reportProgress(attachment) {
396
+ return (source) => new Observable(observe => {
397
+ source.subscribe(r => {
398
+ //TODO progress
399
+ //if (a instanceof UploadEvent) {
400
+ // Object.assign(item, {
401
+ // progress: a.loaded / a.total
402
+ // });
403
+ // return;
404
+ //}
405
+ observe.next(r);
406
+ observe.complete();
407
+ }, e => observe.error(e));
408
+ });
409
+ }
410
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibWFpbGJveC5zZXJ2aWNlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vbGlicmFyaWVzL2NvcmUvc3JjL2xpYi9jb3JlL21haWxib3guc2VydmljZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsVUFBVSxFQUFFLGNBQWMsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUMzRCxPQUFPLEVBRUwsYUFBYSxFQUNNLFdBQVcsRUFBRSxZQUFZLEVBQzdDLE1BQU0sc0JBQXNCLENBQUM7QUFHOUIsT0FBTyxFQUFFLFVBQVUsRUFBRSxPQUFPLEVBQUUsTUFBTSxNQUFNLENBQUM7QUFDM0MsT0FBTyxFQUFFLEdBQUcsRUFBRSxTQUFTLEVBQUUsR0FBRyxFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFDckQsT0FBTyxFQUFFLE9BQU8sRUFBRSxPQUFPLEVBQUUsTUFBTSxhQUFhLENBQUM7Ozs7OztBQUsvQyxNQUFNLENBQUMsTUFBTSxjQUFjLEdBQUcsSUFBSSxjQUFjLENBQXFCLE9BQU8sQ0FBQyxDQUFDO0FBUzlFLE1BQU0sT0FBTyxjQUFjO0lBTXpCLFlBQW9CLFFBQXdCLEVBQ2xDLEtBQXlCLEVBQ2pDLFNBQXFCLEVBQ2IsS0FBaUI7UUFIUCxhQUFRLEdBQVIsUUFBUSxDQUFnQjtRQUNsQyxVQUFLLEdBQUwsS0FBSyxDQUFvQjtRQUV6QixVQUFLLEdBQUwsS0FBSyxDQUFZO1FBUlYsYUFBUSxHQUFHLElBQUksT0FBTyxFQUF1QixDQUFDO1FBQzlDLGFBQVEsR0FBRyxJQUFJLE9BQU8sRUFBVSxDQUFDO1FBQ2xELE1BQU07UUFDVSxZQUFPLEdBQUcsSUFBSSxDQUFDLFFBQVEsQ0FBQyxZQUFZLEVBQUUsQ0FBQztRQUN2QyxZQUFPLEdBQUcsSUFBSSxDQUFDLFFBQVEsQ0FBQyxZQUFZLEVBQUUsQ0FBQztRQXVWdkQ7V0FDRztRQUNLLFlBQU8sR0FBRyxHQUFNLEVBQUUsQ0FBQyxDQUFDLE9BQXNDLEVBQUUsRUFB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Q0wsUUFBUTtRQUNSLDZEQUE2RDtRQUM3RCx1QkFBdUI7UUFDdkIsT0FBTyxDQUFDLENBQUM7SUFDWCxDQUFDLENBQUMsQ0FBQyxDQUFDO0FBQ1IsQ0FBQztBQUVELE1BQU0sVUFBVSxjQUFjLENBQUMsVUFBMkI7SUFDeEQsT0FBTyxDQUFDLE1BQThCLEVBQUUsRUFBRSxDQUFDLElBQUksVUFBVSxDQUFDLE9BQU8sQ0FBQyxFQUFFO1FBQ2xFLE1BQU0sQ0FBQyxTQUFTLENBQUMsQ0FBQyxDQUFDLEVBQUU7WUFDbkIsZUFBZTtZQUNYLGlDQUFpQztZQUNqQyx5QkFBeUI7WUFDekIsa0NBQWtDO1lBQ2xDLE9BQU87WUFDUCxXQUFXO1lBQ1gsR0FBRztZQUNQLE9BQU8sQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFDLENBQUM7WUFDaEIsT0FBTyxDQUFDLFFBQVEsRUFBRSxDQUFDO1FBRXJCLENBQUMsRUFBRSxDQUFDLENBQUMsRUFBRSxDQUFDLE9BQU8sQ0FBQyxLQUFLLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQztJQUM1QixDQUFDLENBQUMsQ0FBQztBQUNMLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBJbmplY3RhYmxlLCBJbmplY3Rpb25Ub2tlbiB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xyXG5pbXBvcnQge1xyXG4gIEh0dHBDbGllbnQsIEh0dHBFdmVudCxcclxuICBIdHRwRXZlbnRUeXBlLFxyXG4gIEh0dHBQcm9ncmVzc0V2ZW50LCBIdHRwUmVxdWVzdCwgSHR0cFJlc3BvbnNlXHJcbn0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uL2h0dHAnO1xyXG5pbXBvcnQgeyBDb21tZW50LCBVc2VySW5mbywgUmVjaXBpZW50TW9kZWwsIEF0dGFjaG1lbnQsIFNjaGVkdWxlZEV2ZW50LCBIZWFkZXJNb2RlbCwgRG9jdW1lbnRNb2RlbCwgVm90ZSwgQ29tbWVudFZlcnNpb24sIENoYWluIH0gZnJvbSAnLi9tb2RlbHMnO1xyXG5pbXBvcnQgeyBTZXNzaW9uU2VydmljZSB9IGZyb20gJy4vc2Vzc2lvbi5zZXJ2aWNlJztcclxuaW1wb3J0IHsgT2JzZXJ2YWJsZSwgU3ViamVjdCB9IGZyb20gJ3J4anMnO1xyXG5pbXBvcnQgeyB0YXAsIHN3aXRjaE1hcCwgbWFwIH0gZnJvbSAncnhqcy9vcGVyYXRvcnMnO1xyXG5pbXBvcnQgeyBjbGVhbnVwLCBpc0FycmF5IH0gZnJvbSAnLi9mdW5jdGlvbnMnO1xyXG5pbXBvcnQgeyBIdWJTZXJ2aWNlIH0gZnJvbSAnLi9odWIuc2VydmljZSc7XHJcbmltcG9ydCB7IEF1dGhlbnRpY2F0aW9uSW1wbCB9IGZyb20gJy4vYXV0aGVudGljYXRpb24nO1xyXG5pbXBvcnQgeyBTYWZlVXJsIH0gZnJvbSAnQGFuZ3VsYXIvcGxhdGZvcm0tYnJvd3Nlcic7XHJcblxyXG5leHBvcnQgY29uc3QgRE9DVU1FTlRfTU9ERUwgPSBuZXcgSW5qZWN0aW9uVG9rZW48RG9jdW1lbnRNb2RlbDxhbnk+PignbW9kZWwnKTtcclxuXHJcbmV4cG9ydCB0eXBlIEZpbHRlclR5cGUgPSAncmVjZW50JyB8ICd1bnJlYWQnIHwgJ2ZsYWdnZWQnO1xyXG5cclxuZXhwb3J0IGludGVyZmFjZSBDaGFuZ2VFdmVudDxUPiB7XHJcbiAgbW9kZWw6IFJlY2lwaWVudE1vZGVsPFQ+O1xyXG59XHJcblxyXG5ASW5qZWN0YWJsZSh7IHByb3ZpZGVkSW46ICdyb290JyB9KVxyXG5leHBvcnQgY2xhc3MgTWFpbGJveFNlcnZpY2Uge1xyXG4gIHByaXZhdGUgcmVhZG9ubHkgX2NoYW5nZSQgPSBuZXcgU3ViamVjdDxSZWNpcGllbnRNb2RlbDxhbnk+PigpO1xyXG4gIHByaXZhdGUgcmVhZG9ubHkgX2RlbGV0ZSQgPSBuZXcgU3ViamVjdDxudW1iZXI+KCk7XHJcbiAgLyoqICovXHJcbiAgcHVibGljIHJlYWRvbmx5IGNoYW5nZWQgPSB0aGlzLl9jaGFuZ2UkLmFzT2JzZXJ2YWJsZSgpO1xyXG4gIHB1YmxpYyByZWFkb25seSBkZWxldGVkID0gdGhpcy5fZGVsZXRlJC5hc09ic2VydmFibGUoKTtcclxuICBjb25zdHJ1Y3Rvcihwcml2YXRlIF9zZXNzaW9uOiBTZXNzaW9uU2VydmljZSxcclxuICAgIHByaXZhdGUgX2F1dGg6IEF1dGhlbnRpY2F0aW9uSW1wbCxcclxuICAgIG1lc3NhZ2luZzogSHViU2VydmljZSxcclxuICAgIHByaXZhdGUgX2h0dHA6IEh0dHBDbGllbnQpIHtcclxuICAgIG1lc3NhZ2luZy5uZXckLlxyXG4gICAgICBzdWJzY3JpYmUobSA9PiB7XHJcbiAgICAgICAgaWYgKG0udXNlcklkICE9PSBfc2Vzc2lvbi5wcm9maWxlLnVzZXJJZCkgcmV0dXJuO1xyXG4gICAgICAgIF9zZXNzaW9uLnByb2ZpbGUuaW5ib3hDb3VudCsrO1xyXG4gICAgICAgIGNvbnN0IGZvbGRlciA9IF9zZXNzaW9uLnByb2ZpbGUuZm9sZGVycy5maW5kKGYgPT4gZi5uYW1lID09PSBtLm1vZGVsLmZvbGRlcklkKTtcclxuICAgICAgICBmb2xkZXIuY291bnQrKztcclxuICAgICAgfSk7XHJcbiAgfVxyXG4gIGZvcm1hdERvd25sb2FkVXJsKGRvY3VtZW50SWQ6IG51bWJlciwgZmlsZUlkOiBudW1iZXIsIGlubGluZT86IGJvb2xlYW4pOiBzdHJpbmcge1xyXG4gICAgY29uc3QgdG9rZW4gPSB0aGlzLl9hdXRoLmdldEFjY2Vzc1Rva2VuKCk7XHJcbiAgICByZXR1cm4gYC9hcGkvYXR0YWNobWVudHMvJHtkb2N1bWVudElkfS8ke2ZpbGVJZH0/YWNjZXNzX3Rva2VuPSR7dG9rZW59JmlubGluZT0ke2lubGluZSA/IHRydWUgOiBmYWxzZX1gO1xyXG4gIH1cclxuICBkb3dubG9hZChkb2N1bWVudElkOiBudW1iZXIsIGZpbGVJZDogbnVtYmVyKTogT2JzZXJ2YWJsZTxhbnk+IHtcclxuICAgIC8vbmV3IE9ic2VydmFibGU8YW55PihvYnNlcnZlID0+IHtcclxuICAgIC8vICBvYnNlcnZlLm5leHQoe30pO1xyXG4gICAgLy8gIHJldHVybiB7XHJcbiAgICAvLyAgICB1bnN1YnNjcmliZSgpIHsgfVxyXG4gICAgLy8gIH1cclxuICAgIC8vfSk7XHJcbiAgICByZXR1cm4gdGhpcy5faHR0cC5nZXQoYC9hcGkvYXR0YWNobWVudHMvJHtkb2N1bWVudElkfS8ke2ZpbGVJZH1gLCB7XHJcbiAgICAgIHJlc3BvbnNlVHlwZTogJ2FycmF5YnVmZmVyJyxcclxuICAgICAgcmVwb3J0UHJvZ3Jlc3M6IHRydWVcclxuICAgIH0pO1xyXG4gIH1cclxuICByZW1vdmVhdHRhY2htZW50KHJlY2lwaWVudElkOiBudW1iZXIsIGZpbGVJZDogbnVtYmVyKTogT2JzZXJ2YWJsZTxhbnk+IHtcclxuICAgIHJldHVybiB0aGlzLl9odHRwLmRlbGV0ZShgL2FwaS9hdHRhY2htZW50cy8ke3JlY2lwaWVudElkfS8ke2ZpbGVJZH1gKTtcclxuICB9XHJcbiAgcmVhZChpZDogbnVtYmVyLCByZWFkOiBib29sZWFuLCBmb2xkZXJJZD86IHN0cmluZywgcmVjZWl2ZWQ/OiBEYXRlKTogT2JzZXJ2YWJsZTxhbnk+IHtcclxuICAgIHJldHVybiB0aGlzLl9odHRwLnB1dChgL2FwaS9tYWlsYm94L3JlYWQvJHtpZH1gLCB1bmRlZmluZWQsIHsgcGFyYW1zOiB7IHJlYWQgfSBhcyBhbnkgfSkucGlwZSh0YXAoKCkgPT5cclxuICAgICAgZm9sZGVySWQgJiYgdGhpcy5fdXBkYXRldW5yZWFkY291bnRlcihyZWNlaXZlZCwgZm9sZGVySWQsIHJlYWQgPyAxIDogLTEpXHJcbiAgICApKTtcclxuICB9XHJcbiAgY29tbWVudHMoaWQ6IG51bWJlciwgYmVmb3JlOiBEYXRlKTogT2JzZXJ2YWJsZTxDb21tZW50W10+IHtcclxuICAgIHJldHVybiB0aGlzLl9odHRwLmdldDxDb21tZW50W10+KGAvYXBpL2NvbW1lbnRzLyR7aWR9YCwgeyBwYXJhbXM6IHsgYmVmb3JlOiBuZXcgRGF0ZShiZWZvcmUpLnRvSlNPTigpIH0gfSk7XHJcbiAgfVxyXG4gIHRhZ3MoaWQ6IG51bWJlciwgdGFnczogc3RyaW5nW10pOiBPYnNlcnZhYmxlPGFueT4ge1xyXG4gICAgcmV0dXJuIHRoaXMuX2h0dHAucHV0KGAvYXBpL21haWxib3gvdGFnLyR7aWR9YCwgeyB0YWdzIH0pLnBpcGUodGFwKCgpID0+IHtcclxuICAgICAgdGhpcy5fY2hhbmdlJC5uZXh0KHsgaWQsIHRhZ3MgfSBhcyBhbnkpO1xyXG4gICAgfSkpO1xyXG4gIH1cclxuICAvKipcclxuICAgKiBcclxuICAgKiBAcGFyYW0gZG9jdW1lbnRJZFxyXG4gICAqIEBwYXJhbSBzdGF0ZUlkXHJcbiAgICogQHBhcmFtIHVzZXJJZCBzdWJzdGl0dXRlXHJcbiAgICovXHJcbiAgY2hhbmdlU3RhdGUoZG9jdW1lbnRJZDogbnVtYmVyLCBzdGF0ZUlkOiBzdHJpbmcsIHVzZXJJZD86IHN0cmluZyk6IE9ic2VydmFibGU8YW55PiB7XHJcbiAgICByZXR1cm4gdGhpcy5faHR0cC5wdXQoYC9hcGkvbWFpbGJveC9jaGFuZ2VzdGF0ZS8ke2RvY3VtZW50SWR9YCwgeyBzdGF0ZUlkLCB1c2VySWQgfSk7XHJcbiAgfVxyXG4gIG1vdmUoaWQ6IG51bWJlciwgZm9sZGVySWQ6IHN0cmluZyk6IE9ic2VydmFibGU8YW55PiB7XHJcbiAgICByZXR1cm4gdGhpcy5faHR0cC5wdXQoYC9hcGkvbWFpbGJveC9tb3ZlLyR7aWR9P2ZvbGRlcklkPSR7Zm9sZGVySWR9YCwge30pLnBpcGUodGFwKCgpID0+IHtcclxuICAgICAgdGhpcy5fY2hhbmdlJC5uZXh0KHtcclxuICAgICAgICBpZCxcclxuICAgICAgICBmb2xkZXJJZFxyXG4gICAgICB9IGFzIGFueSk7XHJcbiAgICB9KSk7XHJcbiAgfVxyXG4gIGNoZWNrT3V0KHJlY2lwaWVudElkOiBudW1iZXIsIHZlcnNpb246IG51bWJlciwgYXR0YWNobWVudElkOiBudW1iZXIpIHtcclxuICAgIHJldHVybiB0aGlzLl9odHRwLnB1dDxBdHRhY2htZW50PihgL2FwaS9hdHRhY2htZW50cy8ke3JlY2lwaWVudElkfS8ke2F0dGFjaG1lbnRJZH0vY2hlY2tvdXRgLCBudWxsLCB7IHBhcmFtczogeyB2ZXJzaW9uIH0gfSk7XHJcbiAgfVxyXG4gIGNoZWNrSW4ocmVjaXBpZW50SWQ6IG51bWJlciwgdmVyc2lvbjogbnVtYmVyLCBhdHRhY2htZW50SWQ6IG51bWJlciwgZmlsZTogRmlsZSk6IE9ic2VydmFibGU8QXR0YWNobWVudD4ge1xyXG4gICAgY29uc3QgZmQgPSBuZXcgRm9ybURhdGEoKTtcclxuICAgIGZkLmFwcGVuZChmaWxlLm5hbWUsIGZpbGUpO1xyXG4gICAgY29uc3QgcmVxID0gbmV3IEh0dHBSZXF1ZXN0KCdQVVQnLFxyXG4gICAgICBgL2FwaS9hdHRhY2htZW50cy8ke3JlY2lwaWVudElkfS8ke2F0dGFjaG1lbnRJZH0vY2hlY2tpbj92ZXJzaW9uPSR7dmVyc2lvbn1gLCBmZCwge1xyXG4gICAgICByZXBvcnRQcm9ncmVzczogdHJ1ZSxcclxuICAgIH0pO1xyXG4gICAgLy9jb25zdCBpbml0aWFsU3RhdGU6IFVwbG9hZEV2ZW50ID0geyBzdGF0ZTogJ1BFTkRJTkcnLCBwcm9ncmVzczogMCB9XHJcbiAgICAvL2NvbnN0IGNhbGN1bGF0ZVN0YXRlID0gKFxyXG4gICAgLy8gIHVwbG9hZDogVXBsb2FkRXZlbnQsXHJcbiAgICAvLyAgZXZlbnQ6IEh0dHBFdmVudDx1bmtub3duPlxyXG4gICAgLy8pOiBVcGxvYWRFdmVudCA9PiB7XHJcbiAgICAvLyAgLy8gaW1wbGVtZW50YXRpb25cclxuICAgIC8vfVxyXG4gICAgcmV0dXJuIG5ldyBPYnNlcnZhYmxlPGFueT4ob2JzZXJ2ZSA9PiB7XHJcbiAgICAgIHRoaXMuX2h0dHAucmVxdWVzdChyZXEpLnN1YnNjcmliZShldmVudCA9PiB7XHJcbiAgICAgICAgaWYgKGV2ZW50IGluc3RhbmNlb2YgUHJvZ3Jlc3NFdmVudCkge1xyXG4gICAgICAgICAgLy8gIG9ic2VydmUubmV4dChuZXcgVXBsb2FkRXZlbnQoXHJcbiAgICAgICAgICAvLyAgICBmaWxlLm5hbWUsXHJcbiAgICAgICAgICAvLyAgICAoZXZlbnQgYXMgUHJvZ3Jlc3NFdmVudCkubG9hZGVkLFxyXG4gICAgICAgICAgLy8gICAgKGV2ZW50IGFzIFByb2dyZXNzRXZlbnQpLnRvdGFsXHJcbiAgICAgICAgICAvLyAgKSk7XHJcbiAgICAgICAgfSBlbHNlIGlmIChldmVudCBpbnN0YW5jZW9mIEh0dHBSZXNwb25zZSkge1xyXG4gICAgICAgICAgY29uc3QgcmVzID0gZXZlbnQgYXMgSHR0cFJlc3BvbnNlPGFueT47XHJcbiAgICAgICAgICBpZiAocmVzLnN0YXR1cyA9PT0gMjAwKSB7XHJcbiAgICAgICAgICAgIGNvbnN0IG1vZGVsID0gcmVzLmJvZHkgYXMgQXR0YWNobWVudDtcclxuICAgICAgICAgICAgb2JzZXJ2ZS5uZXh0KG1vZGVsKTtcclxuICAgICAgICAgIH1cclxuICAgICAgICAgIGVsc2VcclxuICAgICAgICAgICAgb2JzZXJ2ZS5lcnJvcih7IHN0YXR1czogcmVzLnN0YXR1cywgZXJyb3I6IHJlcy5ib2R5IH0pO1xyXG4gICAgICAgICAgb2JzZXJ2ZS5jb21wbGV0ZSgpO1xyXG4gICAgICAgIH1cclxuICAgICAgfSwgZSA9PiB7XHJcbiAgICAgICAgb2JzZXJ2ZS5lcnJvcihlKTtcclxuICAgICAgICBvYnNlcnZlLmNvbXBsZXRlKCk7XHJcbiAgICAgIH0pO1xyXG4gICAgICByZXR1cm4ge1xyXG4gICAgICAgIHVuc3Vic2NyaWJlKCkge1xyXG4gICAgICAgICAgLy9yZXEuXHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcbiAgICB9KTtcclxuICB9XHJcbiAgdXBsb2FkKHJlY2lwaWVudElkOiBudW1iZXIsIGZvcm1JZDogc3RyaW5nLCB2ZXJzaW9uOiBudW1iZXIsIGZpbGU6IEZpbGUsIG9wdGlvbnM/OiB7IGlzUHJpdmF0ZT86IGJvb2xlYW4gfSk6IE9ic2VydmFibGU8QXR0YWNobWVudD47XHJcbiAgdXBsb2FkKHJlY2lwaWVudElkOiBudW1iZXIsIGZvcm1JZDogc3RyaW5nLCB2ZXJzaW9uOiBudW1iZXIsIGZpbGVzOiBGaWxlW10sIG9wdGlvbnM/OiB7IGlzUHJpdmF0ZT86IGJvb2xlYW4gfSk6IE9ic2VydmFibGU8QXR0YWNobWVudFtdPjtcclxuICB1cGxvYWQocmVjaXBpZW50SWQ6IG51bWJlciwgZm9ybUlkOiBzdHJpbmcsIHZlcnNpb246IG51bWJlciwgZmlsZXM6IEZpbGUgfCBGaWxlW10sIG9wdGlvbnM/OiB7IGlzUHJpdmF0ZT86IGJvb2xlYW4gfSk6IE9ic2VydmFibGU8QXR0YWNobWVudCB8IEF0dGFjaG1lbnRbXT4ge1xyXG4gICAgY29uc3QgZmQgPSBuZXcgRm9ybURhdGEoKTtcclxuICAgIGlmIChpc0FycmF5KGZpbGVzKSkgZmlsZXMuZm9yRWFjaChmID0+XHJcbiAgICAgIGZkLmFwcGVuZChmLm5hbWUsIGYpKTtcclxuICAgIGVsc2UgZmQuYXBwZW5kKGZpbGVzLm5hbWUsIGZpbGVzKTtcclxuICAgIC8vY29uc3QgYnl0ZXNQZXJDaHVuayA9IDIwICogMTAyNCAqIDEwMjQ7XHJcbiAgICAvLyBhcXVpcmUgdGhlIGxvY2F0aW9uIHByaW9yIHRvIHNlbmRpbmcgdGhlIHJlcXVlc3RcclxuICAgIHJldHVybiB0aGlzLl9nZW9Mb2NhdGlvbihmb3JtSWQpLnBpcGUoc3dpdGNoTWFwKHBhcmFtcyA9PlxyXG4gICAgICBuZXcgT2JzZXJ2YWJsZTxhbnk+KG9ic2VydmUgPT4ge1xyXG4gICAgICAgIGxldCB1cmwgPSBgL2FwaS9hdHRhY2htZW50cy8ke3JlY2lwaWVudElkfT92ZXJzaW9uPSR7dmVyc2lvbn1gO1xyXG4gICAgICAgIE9iamVjdC5rZXlzKHBhcmFtcykuZm9yRWFjaChwID0+IHVybCArPSBgJiR7cH09JHtwYXJhbXNbcF19YCk7XHJcbiAgICAgICAgaWYgKG9wdGlvbnMpIHtcclxuICAgICAgICAgIGlmIChvcHRpb25zLmlzUHJpdmF0ZSkgdXJsICs9ICcmaXNwcml2YXRlPXRydWUnXHJcbiAgICAgICAgfVxyXG4gICAgICAgIGNvbnN0IHJlcSA9IG5ldyBIdHRwUmVxdWVzdCgnUE9TVCcsIHVybCwgZmQsIHtcclxuICAgICAgICAgIHJlcG9ydFByb2dyZXNzOiB0cnVlLFxyXG4gICAgICAgIH0pO1xyXG4gICAgICAgIHRoaXMuX2h0dHAucmVxdWVzdChyZXEpLnN1YnNjcmliZShldmVudCA9PiB7XHJcbiAgICAgICAgICBpZiAoZXZlbnQgaW5zdGFuY2VvZiBQcm9ncmVzc0V2ZW50KSB7XHJcbiAgICAgICAgICAgIC8vIFRoaXMgaXMgYW4gdXBsb2FkIHByb2dyZXNzIGV2ZW50LiBDb21wdXRlIGFuZCBzaG93IHRoZSAlIGRvbmU6XHJcbiAgICAgICAgICAgIC8vY29uc3QgcGVyY2VudERvbmUgPSBNYXRoLnJvdW5kKDEwMCAqIGV2ZW50LmxvYWRlZCAvIGV2ZW50LnRvdGFsKTtcclxuICAgICAgICAgICAgLy9jb25zb2xlLmxvZyhgRmlsZSBpcyAke3BlcmNlbnREb25lfSUgdXBsb2FkZWQuYCk7XHJcbiAgICAgICAgICB9IGVsc2UgaWYgKGV2ZW50IGluc3RhbmNlb2YgSHR0cFJlc3BvbnNlKSB7XHJcbiAgICAgICAgICAgIGNvbnN0IHJlcyA9IGV2ZW50IGFzIEh0dHBSZXNwb25zZTxhbnk+O1xyXG4gICAgICAgICAgICBpZiAocmVzLnN0YXR1cyA9PT0gMjAwKSB7XHJcbiAgICAgICAgICAgICAgY29uc3QgbW9kZWwgPSByZXMuYm9keSBhcyBBdHRhY2htZW50W107XHJcbiAgICAgICAgICAgICAgb2JzZXJ2ZS5uZXh0KGlzQXJyYXkoZmlsZXMpID8gbW9kZWwgOiBtb2RlbFswXSk7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgZWxzZVxyXG4gICAgICAgICAgICAgIG9ic2VydmUuZXJyb3IoeyBzdGF0dXM6IHJlcy5zdGF0dXMsIGVycm9yOiByZXMuYm9keSB9KTtcclxuICAgICAgICAgICAgb2JzZXJ2ZS5jb21wbGV0ZSgpO1xyXG4gICAgICAgICAgfVxyXG4gICAgICAgIH0sIGUgPT4ge1xyXG4gICAgICAgICAgb2JzZXJ2ZS5lcnJvcihlKTtcclxuICAgICAgICAgIG9ic2VydmUuY29tcGxldGUoKTtcclxuICAgICAgICB9KTtcclxuICAgICAgICByZXR1cm4ge1xyXG4gICAgICAgICAgdW5zdWJzY3JpYmUoKSB7XHJcbiAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgICB9KSkpO1xyXG4gIH1cclxuICAvKipcclxuICAgKiByZXRyaWV2ZSBzZW5kZXJzXHJcbiAgICogQHBhcmFtIG5hbWVcclxuICAgKi9cclxuICBzZW5kZXJzKG5hbWU6IHN0cmluZyk6IE9ic2VydmFibGU8VXNlckluZm9bXT4ge1xyXG4gICAgcmV0dXJuIHRoaXMuX2h0dHAuZ2V0PFVzZXJJbmZvW10+KCcvYXBpL21haWxib3gvc2VuZGVycy8nLCB7XHJcbiAgICAgIHBhcmFtczoge1xyXG4gICAgICAgIG5hbWVcclxuICAgICAgfVxyXG4gICAgfSk7XHJcbiAgfVxyXG4gIGZsYWcoaWQ6IG51bWJlciwgZmxhZzogYm9vbGVhbik6IE9ic2VydmFibGU8YW55PiB7XHJcbiAgICByZXR1cm4gdGhpcy5faHR0cC5wdXQoYC9hcGkvbWFpbGJveC9mbGFnLyR7aWR9P2ZsYWc9JHtmbGFnfWAsIG51bGwpLnBpcGUodGFwKCgpID0+IHRoaXMuX2NoYW5nZSQubmV4dCh7IGlkLCBmbGFnIH0gYXMgYW55KSkpO1xyXG4gIH1cclxuICB2aWV3ZWRjb21tZW50cyhpZDogbnVtYmVyKTogT2JzZXJ2YWJsZTx7IHRpbWU6IERhdGUgfT4ge1xyXG4gICAgcmV0dXJuIHRoaXMuX2h0dHAucHV0PHsgdGltZTogRGF0ZSB9PihgL2FwaS9jb21tZW50cy92aWV3ZWQvJHtpZH1gLCB7fSwgeyBoZWFkZXJzOiB7ICduby1wcm9ncmVzcyc6ICd0cnVlJyB9IH0pLnBpcGUodGFwKChlOiB7IHRpbWU6IERhdGUgfSkgPT4gdGhpcy5fY2hhbmdlJC5uZXh0KHsgaWQsIHZpZXdlZDogZS50aW1lIH0gYXMgYW55KSkpO1xyXG4gIH1cclxuICB0eXBpbmcoaWQ6IG51bWJlcik6IFByb21pc2U8YW55PiB7XHJcbiAgICByZXR1cm4gdGhpcy5faHR0cC5wdXQoYC9hcGkvY29tbWVudHMvdHlwaW5nLyR7aWR9YCwge30sIHsgaGVhZGVyczogeyAnbm8tcHJvZ3Jlc3MnOiAndHJ1ZScgfSB9KS50b1Byb21pc2UoKTtcclxuICB9XHJcbiAgZWRpdGluZyhpZDogbnVtYmVyKTogUHJvbWlzZTxhbnk+IHtcclxuICAgIHJldHVybiB0aGlzLl9odHRwLnB1dChgL2FwaS9tYWlsYm94L2VkaXRpbmcvJHtpZH1gLCB7fSwgeyBoZWFkZXJzOiB7ICduby1wcm9ncmVzcyc6ICd0cnVlJyB9IH0pLnRvUHJvbWlzZSgpO1xyXG4gIH1cclxuICBjb3B5KGlkOiBudW1iZXIpOiBPYnNlcnZhYmxlPFJlY2lwaWVudE1vZGVsPGFueT4+IHtcclxuICAgIHJldHVybiB0aGlzLl9odHRwLnBvc3Q8UmVjaXBpZW50TW9kZWw8YW55Pj4oYC9hcGkvbWFpbGJveC9jb3B5LyR7aWR9YCwge30pO1xyXG4gIH1cclxuICAvKipcclxuICAgKiBcclxuICAgKiBAcGFyYW0gaWQgZG9jdW1lbnQgaWRcclxuICAgKiBAcGFyYW0gb3B0aW9uc1xyXG4gICAqL1xyXG4gIGNvbW1lbnQoaWQ6IG51bWJlciwgb3B0aW9uczoge1xyXG4gICAgdGV4dD86IHN0cmluZyxcclxuICAgIHJlc291cmNlPzogeyBba2V5OiBzdHJpbmddOiBhbnkgfSxcclxuICAgIGltYWdlPzogc3RyaW5nLFxyXG4gICAgcGFyZW50SWQ/OiBudW1iZXJcclxuICB9KTogT2JzZXJ2YWJsZTxDb21tZW50PiB7XHJcbiAgICByZXR1cm4gdGhpcy5faHR0cC5wb3N0PENvbW1lbnQ+KGAvYXBpL2NvbW1lbnRzLyR7aWR9YCwgb3B0aW9ucyk7XHJcbiAgfVxyXG4gIGNvbW1lbnR1cGRhdGUoaWQ6IG51bWJlciwgY29tbWVudElkOiBudW1iZXIsIG9wdGlvbnM6IHtcclxuICAgIHRleHQ/OiBzdHJpbmcsXHJcbiAgICBpbWFnZT86IHN0cmluZyxcclxuICAgIHJlc291cmNlPzogeyBba2V5OiBzdHJpbmddOiBhbnkgfVxyXG4gIH0pOiBPYnNlcnZhYmxlPENvbW1lbnQ+IHtcclxuICAgIHJldHVybiB0aGlzLl9odHRwLnB1dDxDb21tZW50PihgL2FwaS9jb21tZW50cy9lZGl0LyR7aWR9LyR7Y29tbWVudElkfWAsIG9wdGlvbnMpO1xyXG4gIH1cclxuICBpbmZvPFQgPSBhbnk+KGRvY3VtZW50SWQ6IG51bWJlcik6IE9ic2VydmFibGU8RG9jdW1lbnRNb2RlbDxUPj4ge1xyXG4gICAgcmV0dXJuIHRoaXMuX2h0dHAuZ2V0PERvY3VtZW50TW9kZWw8VD4+KGAvYXBpL21haWxib3gvaW5mby8ke2RvY3VtZW50SWR9YCk7XHJcbiAgfVxyXG4gIHRpbWVsaW5lKGRvY3VtZW50SWQ6IG51bWJlcik6IE9ic2VydmFibGU8Q2hhaW4+IHtcclxuICAgIHJldHVybiB0aGlzLl9odHRwLmdldDxDaGFpbj4oYC9hcGkvbWFpbGJveC90aW1lbGluZS8ke2RvY3VtZW50SWR9YCk7XHJcbiAgfVxyXG4gIHZvdGUoaWQ6IG51bWJlciwgY29tbWVudElkOiBudW1iZXIsIHZhbHVlOiBudW1iZXIpOiBPYnNlcnZhYmxlPGFueT4ge1xyXG4gICAgcmV0dXJuIHRoaXMuX2h0dHAucG9zdChgL2FwaS9jb21tZW50cy92b3RlLyR7aWR9LyR7Y29tbWVudElkfWAsIHt9LCB7IHBhcmFtczogeyB2YWx1ZTogdmFsdWUudG9TdHJpbmcoKSB9IH0pO1xyXG4gIH1cclxuICB2b3RlcyhpZDogbnVtYmVyLCBjb21tZW50SWQ6IG51bWJlcik6IE9ic2VydmFibGU8Vm90ZVtdPiB7XHJcbiAgICByZXR1cm4gdGhpcy5faHR0cC5nZXQ8Vm90ZVtdPihgL2FwaS9jb21tZW50cy92b3Rlcy8ke2lkfS8ke2NvbW1lbnRJZH1gKTtcclxuICB9XHJcbiAgZWRpdHMoaWQ6IG51bWJlciwgY29tbWVudElkOiBudW1iZXIpOiBPYnNlcnZhYmxlPENvbW1lbnRWZXJzaW9uW10+IHtcclxuICAgIHJldHVybiB0aGlzLl9odHRwLmdldDxDb21tZW50VmVyc2lvbltdPihgL2FwaS9jb21tZW50cy9lZGl0cy8ke2lkfS8ke2NvbW1lbnRJZH1gKTtcclxuICB9XHJcbiAgZmluZEFsbChmaWx0ZXI6IHsgdHlwZT86IEZpbHRlclR5cGU7IGNvbnRhaW5zPzogc3RyaW5nOyBzdGF0ZT86IHN0cmluZzsgZm9ybT86IHN0cmluZzsgZm9sZGVySWQ/OiBzdHJpbmc7IHNlbmRlcklkPzogc3RyaW5nOyB9LFxyXG4gICAgb3B0aW9ucz86IHsgc2tpcD86IG51bWJlcjsgdGFrZT86IG51bWJlcjsgb3JkZXJCeT86ICd2YWx1ZScgfCAndmlld2VkJyB8ICdkYXRlJyB9KTogT2JzZXJ2YWJsZTxIZWFkZXJNb2RlbFtdPiB7XHJcbiAgICBjb25zdCBwYXJhbXM6IGFueSA9IHsgLi4uZmlsdGVyLCAuLi5vcHRpb25zIH07XHJcbiAgICBjbGVhbnVwKHBhcmFtcyk7XHJcbiAgICByZXR1cm4gdGhpcy5faHR0cC5nZXQ8SGVhZGVyTW9kZWxbXT4oJy9hcGkvbWFpbCcsIHsgcGFyYW1zIH0pO1xyXG4gIH1cclxuICBjcmVhdGU8VCA9IGFueT4oZm9ybTogc3RyaW5nKTogT2JzZXJ2YWJsZTxSZWNpcGllbnRNb2RlbDxUPj4ge1xyXG4gICAgcmV0dXJuIHRoaXMuX2dlb0xvY2F0aW9uKGZvcm0pLnBpcGUoc3dpdGNoTWFwKHAgPT5cclxuICAgICAgdGhpcy5faHR0cC5wb3N0PFJlY2lwaWVudE1vZGVsPGFueT4+KCcvYXBpL21haWwnLCBudWxsLCB7XHJcbiAgICAgICAgcGFyYW1zOiB7XHJcbiAgICAgICAgICBmb3JtLFxyXG4gICAgICAgICAgLi4ucFxyXG4gICAgICAgIH1cclxuICAgICAgfSkpLCB0aGlzLl9ub3RpZnk8VD4oKSk7XHJcbiAgfVxyXG4gIGdldDxUID0gYW55PihpZDogbnVtYmVyLCByZWFkPzogYm9vbGVhbik6IE9ic2VydmFibGU8UmVjaXBpZW50TW9kZWw8VD4+IHtcclxuICAgIHJldHVybiB0aGlzLl9odHRwLmdldDxSZWNpcGllbnRNb2RlbDxUPj4oYC9hcGkvbWFpbC8ke2lkfWApLnBpcGUoXHJcbiAgICAgIHRhcCgobTogUmVjaXBpZW50TW9kZWwpID0+XHJcbiAgICAgICAgcmVhZCA9PT0gZmFsc2UgJiYgbS5yZWFkID09PSB0cnVlICYmXHJcbiAgICAgICAgdGhpcy5fdXBkYXRldW5yZWFkY291bnRlcihtLnJlY2VpdmVkLCBtLmZvbGRlcklkLCAtMSlcclxuICAgICAgKSk7XHJcbiAgfVxyXG4gIHByaXZhdGUgX3VwZGF0ZXVucmVhZGNvdW50ZXIoZGF0ZTogRGF0ZSwgZm9sZGVySWQ6IHN0cmluZywgdmFsOiBudW1iZXIpIHtcclxuICAgIGlmIChcclxuICAgICAgLy8gZGF0ZSBpcyBhYm92ZSB3YXRlcm1hcmtcclxuICAgICAgdGhpcy5fc2Vzc2lvbi5wcm9maWxlLm9wdGlvbnMuaW5ib3hWaWV3ICYmXHJcbiAgICAgIHRoaXMuX3Nlc3Npb24ucHJvZmlsZS5vcHRpb25zLmluYm94VmlldyA8IGRhdGVcclxuICAgIClcclxuICAgICAgdGhpcy5fc2Vzc2lvbi5wcm9maWxlLmluYm94Q291bnQgKz0gdmFsO1xyXG4gICAgLy8gZGVjcmVhc2VcclxuICAgIGNvbnN0IGZvbGRlciA9IHRoaXMuX3Nlc3Npb24ucHJvZmlsZS5mb2xkZXJzLlxyXG4gICAgICBmaW5kKGYgPT4gZi5uYW1lID09PSBmb2xkZXJJZCk7XHJcbiAgICBmb2xkZXIuY291bnQgPSBNYXRoLm1heCgwLCBmb2xkZXIuY291bnQgKyB2YWwpO1xyXG4gIH1cclxuXHJcbiAgc2F2ZTxUID0gYW55PihpZDogbnVtYmVyLCBmb3JtOiBzdHJpbmcsIHZlcnNpb246IG51bWJlciwgbW9kZWw6IHt9LCBmaWxlcz86IEZpbGVbXSB8IEZpbGVMaXN0KTogT2JzZXJ2YWJsZTxSZWNpcGllbnRNb2RlbDxUPj4ge1xyXG4gICAgLy9jb25zdCBmZCA9IG5ldyBGb3JtRGF0YSgpO1xyXG4gICAgLy9jb25zdCBtb2RlbEJsb2IgPSBuZXcgQmxvYihbSlNPTi5zdHJpbmdpZnkobW9kZWwpXSwge1xyXG4gICAgLy8gIHR5cGU6ICdhcHBsaWNhdGlvbi9qc29uJyxcclxuICAgIC8vfSk7XHJcbiAgICAvL2ZkLmFwcGVuZCgnZm9ybS1kYXRhJywgbW9kZWxCbG9iKTtcclxuICAgIC8vaWYgKGZpbGVzKSB7XHJcbiAgICAvLyAgaWYgKGlzQXJyYXkoZmlsZXMpKSBmaWxlcy5mb3JFYWNoKGYgPT5cclxuICAgIC8vICAgIGZkLmFwcGVuZChmLm5hbWUsIGYpKTtcclxuICAgIC8vICBlbHNlIGZvciAobGV0IGkgPSAwOyBpIDwgZmlsZXMubGVuZ3RoOyBpKyspIHtcclxuICAgIC8vICAgIGxldCBmaWxlID0gZmlsZXMuaXRlbShpKTtcclxuICAgIC8vICAgIGZkLmFwcGVuZChmaWxlLm5hbWUsIGZpbGUpO1xyXG4gICAgLy8gIH1cclxuICAgIC8vfVxyXG4gICAgLy8gIHJldHVybiB0aGlzLl93aXRoR2VvTG9jYXRpb24oZm9ybSkucGlwZShzd2l0Y2hNYXAocGFyYW1zID0+IHtcclxuICAgIC8vICAgIGxldCB1cmwgPSBgL2FwaS9tYWlsLyR7aWR9P3ZlcnNpb249JHt2ZXJzaW9ufWA7XHJcbiAgICAvLyAgICBPYmplY3Qua2V5cyhwYXJhbXMpLmZvckVhY2gocCA9PiB1cmwgKz0gYCYke3B9PSR7cGFyYW1zW3BdfWApO1xyXG4gICAgLy8gICAgY29uc3QgcmVxID0gbmV3IEh0dHBSZXF1ZXN0KCdQVVQnLCB1cmwsIGZkLCB7XHJcbiAgICAvLyAgICB9KTtcclxuICAgIC8vICAgIHJldHVybiB0aGlzLl9odHRwLnJlcXVlc3QocmVxKS5waXBlKG1hcChldmVudCA9PiB7XHJcbiAgICAvLyAgICAgIGNvbnN0IHJlcyA9IGV2ZW50IGFzIEh0dHBSZXNwb25zZTxhbnk+O1xyXG4gICAgLy8gICAgICBpZiAocmVzLnN0YXR1cyA9PT0gMjAwKSB7XHJcbiAgICAvLyAgICAgICAgY29uc3QgbW9kZWwgPSByZXMuYm9keSBhcyBSZWNpcGllbnRNb2RlbDxhbnk+O1xyXG4gICAgLy8gICAgICAgIHJldHVybiBtb2RlbDtcclxuICAgIC8vICAgICAgfVxyXG4gICAgLy8gICAgICBlbHNlXHJcbiAgICAvLyAgICAgICAgcmV0dXJuIHRocm93RXJyb3IoeyBzdGF0dXM6IHJlcy5zdGF0dXMsIGVycm9yOiByZXMuYm9keSB9KTtcclxuICAgIC8vICAgIH0pKVxyXG4gICAgLy8gIH0pLCB0aGlzLl9ub3RpZnk8VD4oKSk7XHJcbiAgICByZXR1cm4gdGhpcy5fZ2VvTG9jYXRpb24oZm9ybSkucGlwZShcclxuICAgICAgc3dpdGNoTWFwKHBhcmFtcyA9PnRoaXMuX2h0dHAucHV0PFJlY2lwaWVudE1vZGVsPFQ+PihgL2FwaS9tYWlsLyR7aWR9P3ZlcnNpb249JHt2ZXJzaW9ufWAsIG1vZGVsLCB7IHBhcmFtcyB9KSksXHJcbiAgICAgIHRoaXMuX25vdGlmeTxUPigpKTtcclxuICB9XHJcbiAgZGVsZXRlKGlkOiBudW1iZXIpOiBPYnNlcnZhYmxlPGFueT4ge1xyXG4gICAgcmV0dXJuIHRoaXMuX2h0dHAuZGVsZXRlKGAvYXBpL21haWwvJHtpZH1gKS5waXBlKHRhcCgoKSA9PlxyXG4gICAgICB0aGlzLl9kZWxldGUkLm5leHQoaWQpKSk7XHJcbiAgfVxyXG4gIHJlbW92ZWNvbW1lbnQoaWQ6IG51bWJlcik6IE9ic2VydmFibGU8YW55PiB7XHJcbiAgICByZXR1cm4gdGhpcy5faHR0cC5kZWxldGUoYC9hcGkvY29tbWVudHMvJHtpZH1gKTtcclxuICB9XHJcbiAgc3VibWl0PFQgPSBhbnk+KGlkOiBudW1iZXIsIHZlcnNpb246IG51bWJlciwgZm9ybTogc3RyaW5nLCBtb2RlbD86IGFueSwgcmVhZD86IGJvb2xlYW4sIGZvbGRlcklkPzogc3RyaW5nLCByZWNlaXZlZD86IERhdGUpOiBPYnNlcnZhYmxlPFJlY2lwaWVudE1vZGVsPFQ+PiB7XHJcbiAgICByZXR1cm4gdGhpcy5fZ2VvTG9jYXRpb24oZm9ybSkucGlwZShzd2l0Y2hNYXAocGFyYW1zID0+XHJcbiAgICAgIHRoaXMuX2h0dHAucHV0PFJlY2lwaWVudE1vZGVsPGFueT4+KGAvYXBpL21haWwvJHtpZH0/dmVyc2lvbj0ke3ZlcnNpb259JmdvPXRydWVgLCBtb2RlbCwgeyBwYXJhbXMgfSkpKS5waXBlKFxyXG4gICAgICAgIHRoaXMuX25vdGlmeTxUPigpKTtcclxuICB9XHJcbiAgc2VuZDxUID0gYW55PihpZDogbnVtYmVyLCB2ZXJzaW9uOiBudW1iZXIsIGZvcm06IHN0cmluZywgbW9kZWw6IGFueSwgYWN0aW9uOiBzdHJpbmcsIGFjdGlvbkFyZ3M6IHt9LCByZWFkPzogYm9vbGVhbiwgZm9sZGVySWQ/OiBzdHJpbmcsIHJlY2VpdmVkPzogRGF0ZSk6IE9ic2VydmFibGU8UmVjaXBpZW50TW9kZWw8VD4+IHtcclxuICAgIHJldHVybiB0aGlzLl9nZW9Mb2NhdGlvbihmb3JtKS5waXBlKHN3aXRjaE1hcChwYXJhbXMgPT5cclxuICAgICAgdGhpcy5faHR0cC5wdXQ8UmVjaXBpZW50TW9kZWw8VD4+KGAvYXBpL21haWwvJHtpZH0/dmVyc2lvbj0ke3ZlcnNpb259JmFjdGlvbj0ke2FjdGlvbn1gLCBtb2RlbCwgeyBwYXJhbXM6IHsgLi4ucGFyYW1zLCAuLi5hY3Rpb25BcmdzIH0gfSkpKS5waXBlKFxyXG4gICAgICAgIHRhcCgoKSA9PlxyXG4gICAgICAgICAgcmVhZCA9PT0gZmFsc2UgJiYgdGhpcy5fdXBkYXRldW5yZWFkY291bnRlcihyZWNlaXZlZCwgZm9sZGVySWQsIC0xKVxyXG4gICAgICAgICksXHJcbiAgICAgICAgdGhpcy5fbm90aWZ5PFQ+KCkpO1xyXG4gIH1cclxuICBldmVudHMoc3RhcnRpbmc6IERhdGUsIGVuZGluZz86IERhdGUsIGNvbnRhaW5zPzogc3RyaW5nKTogT2JzZXJ2YWJsZTxTY2hlZHVsZWRFdmVudFtdPiB7XHJcbiAgICByZXR1cm4gdGhpcy5faHR0cC5nZXQ8U2NoZWR1bGVkRXZlbnRbXT4oYC9hcGkvZXZlbnRzYCwge1xyXG4gICAgICBwYXJhbXM6IHtcclxuICAgICAgICBzdGFydGluZzogc3RhcnRpbmcudG9KU09OKCksXHJcbiAgICAgICAgZW5kaW5nOiBlbmRpbmcudG9KU09OKCksXHJcbiAgICAgICAgY29udGFpbnM6IGNvbnRhaW5zIHx8ICcnXHJcbiAgICAgIH1cclxuICAgIH0pO1xyXG4gIH1cclxuICBjaGFuZ2VFdmVudChpZDogbnVtYmVyLCBvcHRpb25zOiB7IHN0YXJ0aW5nOiBEYXRlOyBlbmRpbmc/OiBEYXRlOyBjb21wbGV0ZT86IGJvb2xlYW4gfSk6IE9ic2VydmFibGU8YW55PiB7XHJcbiAgICByZXR1cm4gdGhpcy5faHR0cC5wdXQoYC9hcGkvZXZlbnRzLyR7aWR9YCwgb3B0aW9ucyk7XHJcbiAgfVxyXG4gIC8qKlxyXG4gICAqIGdldCBnZW8gbG9jYXRpb24gaWYgZm9ybSBzZXR0aW5ncyByZXF1aWVzXHJcbiAgICogQHBhcmFtIGZvcm1cclxuICAgKi9cclxuICBwcml2YXRlIF9nZW9Mb2NhdGlvbihmb3JtOiBzdHJpbmcpOiBPYnNlcnZhYmxlPHsgbG5nPzogc3RyaW5nOyBsYXQ/OiBzdHJpbmcgfT4ge1xyXG4gICAgY29uc3QgY29uZmlndXJhdGlvbiA9IHRoaXMuX3Nlc3Npb24ucHJvZmlsZS5mb3Jtcy5maW5kKGYgPT4gZi5uYW1lID09PSBmb3JtKTtcclxuICAgIHJldHVybiBuZXcgT2JzZXJ2YWJsZTxhbnk+KG9ic2VydmUgPT4ge1xyXG4gICAgICBzd2l0Y2ggKGNvbmZpZ3VyYXRpb24ucG9zaXRpb24pIHtcclxuICAgICAgICBjYXNlICdSZXF1aXJlJzpcclxuICAgICAgICBjYXNlICdBc2snOlxyXG4gICAgICAgICAgbmF2aWdhdG9yLmdlb2xvY2F0aW9uLmdldEN1cnJlbnRQb3NpdGlvbihyID0+IHtcclxuICAgICAgICAgICAgb2JzZXJ2ZS5uZXh0KHtcclxuICAgICAgICAgICAgICBsbmc6IHIuY29vcmRzLmxvbmdpdHVkZS50b1N0cmluZygpLFxyXG4gICAgICAgICAgICAgIGxhdDogci5jb29yZHMubGF0aXR1ZGUudG9TdHJpbmcoKVxyXG4gICAgICAgICAgICB9KTtcclxuICAgICAgICAgICAgb2JzZXJ2ZS5jb21wbGV0ZSgpO1xyXG4gICAgICAgICAgfSwgZSA9PiB7XHJcbiAgICAgICAgICAgIGlmIChjb25maWd1cmF0aW9uLnBvc2l0aW9uID09PSAnQXNrJylcclxuICAgICAgICAgICAgICBvYnNlcnZlLm5leHQoe30pO1xyXG4gICAgICAgICAgICBlbHNlXHJcbiAgICAgICAgICAgICAgb2JzZXJ2ZS5lcnJvcignbm8gcG9zaXRpb24nKTtcclxuICAgICAgICAgICAgb2JzZXJ2ZS5jb21wbGV0ZSgpO1xyXG4gICAgICAgICAgfSk7XHJcbiAgICAgICAgICBicmVhaztcclxuICAgICAgICBkZWZhdWx0OlxyXG4gICAgICAgICAgb2JzZXJ2ZS5uZXh0KHt9KTtcclxuICAgICAgICAgIG9ic2VydmUuY29tcGxldGUoKTtcclxuICAgICAgfVxyXG4gICAgfSk7XHJcbiAgfVxyXG4gIC8qKlxyXG4gICAqL1xyXG4gIHByaXZhdGUgX25vdGlmeSA9IDxUPigpID0+IChvYnNlcnZlOiBPYnNlcnZhYmxlPFJlY2lwaWVudE1vZGVsPFQ+PikgPT4ge1xyXG4gICAgcmV0dXJuIG9ic2VydmUucGlwZSh0YXAobSA9PiB7XHJcbiAgICAgIChtIGFzIEl0ZW1FeHRyYSkubG9hZGVkID0gdHJ1ZTtcclxuICAgICAgdGhpcy5fY2hhbmdlJC5uZXh0KG0pO1xyXG4gICAgfSkpO1xyXG4gIH07XHJcbn1cclxuZXhwb3J0IGludGVyZmFjZSBJdGVtRXh0cmEge1xyXG4gIGxvYWRpbmc/OiBib29sZWFuO1xyXG4gIGxvYWRlZD86IGJvb2xlYW47XHJcbiAgd29ya2luZz86IGJvb2xlYW47XHJcbn1cclxuZXhwb3J0IGludGVyZmFjZSBBdHRhY2htZW50RXh0cmEgZXh0ZW5kcyBBdHRhY2htZW50IHtcclxuICB1cmw6IFNhZmVVcmw7XHJcbiAgaWNvbj86IHN0cmluZztcclxuICBmaWxlRXh0OiBzdHJpbmc7XHJcbiAgaXNJbWFnZTogYm9vbGVhbjtcclxuICBwcm9ncmVzcz86IG51bWJlcjtcclxuICB2aWV3ZWQ/OiBEYXRlO1xyXG4gIGZhaWxlZD86IGJvb2xlYW47XHJcbn1cclxuZnVuY3Rpb24gaXNIdHRwUmVzcG9uc2U8VD4oZXZlbnQ6IEh0dHBFdmVudDxUPik6IGV2ZW50IGlzIEh0dHBSZXNwb25zZTxUPiB7XHJcbiAgcmV0dXJuIGV2ZW50LnR5cGUgPT09IEh0dHBFdmVudFR5cGUuUmVzcG9uc2VcclxufVxyXG5cclxuZnVuY3Rpb24gaXNIdHRwUHJvZ3Jlc3NFdmVudChcclxuICBldmVudDogSHR0cEV2ZW50PHVua25vd24+XHJcbik6IGV2ZW50IGlzIEh0dHBQcm9ncmVzc0V2ZW50IHtcclxuICByZXR1cm4gKFxyXG4gICAgZXZlbnQudHlwZSA9PT0gSHR0cEV2ZW50VHlwZS5Eb3dubG9hZFByb2dyZXNzIHx8XHJcbiAgICBldmVudC50eXBlID09PSBIdHRwRXZlbnRUeXBlLlVwbG9hZFByb2dyZXNzXHJcbiAgKVxyXG59XHJcbmZ1bmN0aW9uIGNhbGN1bGF0ZVN0YXRlKHVwbG9hZDogVXBsb2FkRXZlbnQsIGV2ZW50OiBIdHRwRXZlbnQ8dW5rbm93bj4pOiBVcGxvYWRFdmVudCB7XHJcbiAgaWYgKGlzSHR0cFByb2dyZXNzRXZlbnQoZXZlbnQpKSB7XHJcbiAgICByZXR1cm4gbmV3IFVwbG9hZEV2ZW50KHtcclxuICAgICAgcHJvZ3Jlc3M6IGV2ZW50LnRvdGFsXHJcbiAgICAgICAgPyBNYXRoLnJvdW5kKCgxMDAgKiBldmVudC5sb2FkZWQpIC8gZXZlbnQudG90YWwpXHJcbiAgICAgICAgOiB1cGxvYWQucHJvZ3Jlc3MsXHJcbiAgICAgIHN0YXRlOiAncHJvZ3Jlc3MnLFxyXG4gICAgfSk7XHJcbiAgfVxyXG4gIGlmIChpc0h0dHBSZXNwb25zZShldmVudCkpIHtcclxuICAgIHJldHVybiBuZXcgVXBsb2FkRXZlbnQoe1xyXG4gICAgICBwcm9ncmVzczogMTAwLFxyXG4gICAgICBzdGF0ZTogJ2RvbmUnLFxyXG4gICAgfSlcclxuICB9XHJcbiAgcmV0dXJuIHVwbG9hZFxyXG59XHJcbmV4cG9ydCBjbGFzcyBVcGxvYWRFdmVudCB7XHJcbiAgcmVhZG9ubHkgZmlsZU5hbWU6IHN0cmluZztcclxuICBwcm9ncmVzczogbnVtYmVyO1xyXG4gIC8vIGJ5dGVzXHJcbiAgdG90YWw6IG51bWJlcjtcclxuICBzdGF0ZTogJ3BlbmRpbmcnIHwgJ3Byb2dyZXNzJyB8ICdkb25lJztcclxuICBjb25zdHJ1Y3RvcihvcHRpb25zKSB7IH1cclxufVxyXG5cclxuZnVuY3Rpb24gcmVwb3J0cHJvZ3Jlc3MoZmlsZW5hbWU6IHN0cmluZyk6IChzb3VyY2U6IE9ic2VydmFibGU8QXR0YWNobWVudD4pID0+IE9ic2VydmFibGU8QXR0YWNobWVudD4ge1xyXG4gIHJldHVybiAoc291cmNlOiBPYnNlcnZhYmxlPEF0dGFjaG1lbnQ+KSA9PlxyXG4gICAgc291cmNlLnBpcGUobWFwKHIgPT4ge1xyXG4gICAgICAvL2lmIChldmVudCBpbnN0YW5jZW9mIFByb2dyZXNzRXZlbnQpIHtcclxuICAgICAgLy8gIG9ic2VydmUubmV4dChuZXcgVXBsb2FkRXZlbnQoXHJcbiAgICAgIC8vICAgIGZpbGUubmFtZSxcclxuICAgICAgLy8gICAgKGV2ZW50IGFzIFByb2dyZXNzRXZlbnQpLmxvYWRlZCxcclxuICAgICAgLy8gICAgKGV2ZW50IGFzIFByb2dyZXNzRXZlbnQpLnRvdGFsXHJcbiAgICAgIC8vICApKTtcclxuICAgICAgLy99IGVsc2UgaWYgKGV2ZW50IGluc3RhbmNlb2YgSHR0cFJlc3BvbnNlKSB7XHJcbiAgICAgIC8vICBjb25zdCByZXMgPSBldmVudCBhcyBIdHRwUmVzcG9uc2U8YW55PjtcclxuICAgICAgLy8gIGlmIChyZXMuc3RhdHVzID09PSAyMDApIHtcclxuICAgICAgLy8gICAgY29uc3QgbW9kZWwgPSByZXMuYm9keSBhcyBBdHRhY2htZW50O1xyXG4gICAgICAvLyAgICBvYnNlcnZlLm5leHQobW9kZWwpO1xyXG4gICAgICAvLyAgfVxyXG4gICAgICAvLyAgZWxzZVxyXG4gICAgICAvLyAgICBvYnNlcnZlLmVycm9yKHsgc3RhdHVzOiByZXMuc3RhdHVzLCBlcnJvcjogcmVzLmJvZHkgfSk7XHJcbiAgICAgIC8vICBvYnNlcnZlLmNvbXBsZXRlKCk7XHJcbiAgICAgIHJldHVybiByO1xyXG4gICAgfSkpO1xyXG59XHJcblxyXG5leHBvcnQgZnVuY3Rpb24gcmVwb3J0UHJvZ3Jlc3MoYXR0YWNobWVudDogQXR0YWNobWVudEV4dHJhKSB7XHJcbiAgcmV0dXJuIChzb3VyY2U6IE9ic2VydmFibGU8QXR0YWNobWVudD4pID0+IG5ldyBPYnNlcnZhYmxlKG9ic2VydmUgPT4ge1xyXG4gICAgc291cmNlLnN1YnNjcmliZShyID0+IHtcclxuICAgICAgLy9UT0RPIHByb2dyZXNzXHJcbiAgICAgICAgICAvL2lmIChhIGluc3RhbmNlb2YgVXBsb2FkRXZlbnQpIHtcclxuICAgICAgICAgIC8vICBPYmplY3QuYXNzaWduKGl0ZW0sIHtcclxuICAgICAgICAgIC8vICAgIHByb2dyZXNzOiBhLmxvYWRlZCAvIGEudG90YWxcclxuICAgICAgICAgIC8vICB9KTtcclxuICAgICAgICAgIC8vICByZXR1cm47XHJcbiAgICAgICAgICAvL31cclxuICAgICAgb2JzZXJ2ZS5uZXh0KHIpO1xyXG4gICAgICBvYnNlcnZlLmNvbXBsZXRlKCk7XHJcblxyXG4gICAgfSwgZSA9PiBvYnNlcnZlLmVycm9yKGUpKTtcclxuICB9KTtcclxufVxyXG4iXX0=
@@ -0,0 +1,40 @@
1
+ export const INBOX = 'ib', DRAFT = 'df';
2
+ export var ValidationType;
3
+ (function (ValidationType) {
4
+ ValidationType["Required"] = "Required";
5
+ ValidationType["Min"] = "Min";
6
+ ValidationType["Max"] = "Max";
7
+ ValidationType["MinLength"] = "MinLength";
8
+ ValidationType["MaxLength"] = "MaxLength";
9
+ ValidationType["Pattern"] = "Pattern";
10
+ ValidationType["Range"] = "Range";
11
+ ValidationType["Email"] = "Email";
12
+ })(ValidationType || (ValidationType = {}));
13
+ export var FieldType;
14
+ (function (FieldType) {
15
+ FieldType["String"] = "String";
16
+ FieldType["Number"] = "Number";
17
+ FieldType["Time"] = "Time";
18
+ FieldType["Date"] = "Date";
19
+ FieldType["DateTime"] = "DateTime";
20
+ FieldType["Checkbox"] = "Checkbox";
21
+ FieldType["Currency"] = "Currency";
22
+ FieldType["Select"] = "Select";
23
+ FieldType["EmailAddress"] = "EmailAddress";
24
+ FieldType["Html"] = "Html";
25
+ FieldType["Text"] = "Text";
26
+ FieldType["Password"] = "Password";
27
+ FieldType["PhoneNumber"] = "PhoneNumber";
28
+ FieldType["File"] = "File";
29
+ FieldType["Url"] = "Url";
30
+ FieldType["Switch"] = "Switch";
31
+ FieldType["Address"] = "Address";
32
+ FieldType["Object"] = "Object";
33
+ FieldType["Expression"] = "Expression";
34
+ FieldType["Duration"] = "Duration";
35
+ FieldType["Autocomplete"] = "Autocomplete";
36
+ FieldType["Percent"] = "Percent";
37
+ FieldType["DateRange"] = "DateRange";
38
+ })(FieldType || (FieldType = {}));
39
+ ;
40
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibW9kZWxzLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vbGlicmFyaWVzL2NvcmUvc3JjL2xpYi9jb3JlL21vZGVscy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFFQSxNQUFNLENBQUMsTUFBTSxLQUFLLEdBQUcsSUFBSSxFQUFFLEtBQUssR0FBRyxJQUFJLENBQUM7QUE4V3hDLE1BQU0sQ0FBTixJQUFZLGNBU1g7QUFURCxXQUFZLGNBQWM7SUFDeEIsdUNBQXFCLENBQUE7SUFDckIsNkJBQVcsQ0FBQTtJQUNYLDZCQUFXLENBQUE7SUFDWCx5Q0FBdUIsQ0FBQTtJQUN2Qix5Q0FBdUIsQ0FBQTtJQUN2QixxQ0FBbUIsQ0FBQTtJQUNuQixpQ0FBZSxDQUFBO0lBQ2YsaUNBQWUsQ0FBQTtBQUNqQixDQUFDLEVBVFcsY0FBYyxLQUFkLGNBQWMsUUFTekI7QUFDRCxNQUFNLENBQU4sSUFBWSxTQXdCWDtBQXhCRCxXQUFZLFNBQVM7SUFDbkIsOEJBQWlCLENBQUE7SUFDakIsOEJBQWlCLENBQUE7SUFDakIsMEJBQWEsQ0FBQTtJQUNiLDBCQUFhLENBQUE7SUFDYixrQ0FBcUIsQ0FBQTtJQUNyQixrQ0FBcUIsQ0FBQTtJQUNyQixrQ0FBcUIsQ0FBQTtJQUNyQiw4QkFBaUIsQ0FBQTtJQUNqQiwwQ0FBNkIsQ0FBQTtJQUM3QiwwQkFBYSxDQUFBO0lBQ2IsMEJBQWEsQ0FBQTtJQUNiLGtDQUFxQixDQUFBO0lBQ3JCLHdDQUEyQixDQUFBO0lBQzNCLDBCQUFhLENBQUE7SUFDYix3QkFBVyxDQUFBO0lBQ1gsOEJBQWlCLENBQUE7SUFDakIsZ0NBQW1CLENBQUE7SUFDbkIsOEJBQWlCLENBQUE7SUFDakIsc0NBQXlCLENBQUE7SUFDekIsa0NBQXFCLENBQUE7SUFDckIsMENBQTZCLENBQUE7SUFDN0IsZ0NBQW1CLENBQUE7SUFDbkIsb0NBQXVCLENBQUE7QUFDekIsQ0FBQyxFQXhCVyxTQUFTLEtBQVQsU0FBUyxRQXdCcEI7QUFtRkEsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IE5vZGVNb2RlbCwgQ29ubmVjdG9yTW9kZWwsIFNoYXBlTW9kZWwsIEZsb3dTaGFwZU1vZGVsLCBCYXNpY1NoYXBlTW9kZWwsIEltYWdlTW9kZWwsIFBhdGhNb2RlbCwgVGV4dE1vZGVsLCBCcG1uU2hhcGVNb2RlbCwgTmF0aXZlTW9kZWwgfSBmcm9tIFwiQHN5bmNmdXNpb24vZWoyLWFuZ3VsYXItZGlhZ3JhbXNcIjtcclxuXHJcbmV4cG9ydCBjb25zdCBJTkJPWCA9ICdpYicsIERSQUZUID0gJ2RmJztcclxuXHJcbmV4cG9ydCBpbnRlcmZhY2UgSGVhZGVyTW9kZWw8VCA9IGFueT4ge1xyXG4gIHBhcmVudElkPzogbnVtYmVyO1xyXG4gIGRyYWZ0PzogYm9vbGVhbjtcclxuICBpc3N1ZWQ/OiBEYXRlO1xyXG4gIGRvY3VtZW50SWQ6IG51bWJlcjtcclxuICBzdWJzdGl0dXRlSWQ/OiBzdHJpbmc7XHJcbiAgb3duZXJJZDogc3RyaW5nO1xyXG4gIGFjdGlvbj86IHN0cmluZztcclxuICBvd25lckJ5SWQ/OiBzdHJpbmc7XHJcbiAgaWQ6IG51bWJlcjtcclxuICB2ZXJzaW9uOiBudW1iZXI7XHJcbiAgZm9ybUlkOiBzdHJpbmc7XHJcbiAgbnVtYmVyPzogc3RyaW5nO1xyXG4gIHN1YmplY3Q/OiBzdHJpbmc7XHJcbiAgdmFsdWU/OiBudW1iZXI7XHJcbiAgcmVjZWl2ZWQ6IERhdGU7XHJcbiAgcmVwbGllZD86IERhdGU7XHJcbiAgZm9sZGVySWQ6IHN0cmluZztcclxuICByZWFkOiBib29sZWFuO1xyXG4gIG5vdGU/OiBzdHJpbmc7XHJcbiAgc2VuZGVySWQ/OiBzdHJpbmc7XHJcbiAgc3RhdGVJZDogc3RyaW5nO1xyXG4gIGN1cnJlbmN5Q29kZT86IHN0cmluZztcclxuICBmbGFnPzogYm9vbGVhbjtcclxuICBzdW1tYXJ5Pzogc3RyaW5nO1xyXG4gIHBlbmRpbmc/OiBib29sZWFuO1xyXG4gIG1vZGVsPzogVDtcclxufVxyXG5leHBvcnQgaW50ZXJmYWNlIERvY3VtZW50TW9kZWw8VCA9IGFueT4ge1xyXG4gIGRyYWZ0PzogYm9vbGVhbjtcclxuICBleHRyYT86IGFueTtcclxuICBudW1iZXI/OiBzdHJpbmc7XHJcbiAgc3ViamVjdD86IHN0cmluZztcclxuICBzdW1tYXJ5Pzogc3RyaW5nO1xyXG4gIGN1cnJlbmN5Q29kZT86IHN0cmluZztcclxuICB2YWx1ZT86IG51bWJlcjtcclxuICBvd25lcklkOiBzdHJpbmc7XHJcbiAgb3duZXJCeUlkPzogc3RyaW5nO1xyXG4gIGRvY3VtZW50SWQ6IG51bWJlcjtcclxuICB2ZXJzaW9uOiBudW1iZXI7XHJcbiAgZm9ybUlkOiBzdHJpbmc7XHJcbiAgc3RhdGVJZDogc3RyaW5nO1xyXG4gIGNvbXBsZXRlZD86IGJvb2xlYW47XHJcbiAgbW9kZWw/OiBUO1xyXG4gIHZpZXdlZD86IERhdGU7XHJcbiAgYXR0YWNobWVudHM6IEF0dGFjaG1lbnRbXTtcclxuICBjb21tZW50czogQ29tbWVudFtdO1xyXG4gIHVucmVhZENvbW1lbnRzOiBudW1iZXI7XHJcbiAgaXNzdWVkPzogRGF0ZTtcclxuICB3b3JrZmxvdz86IFdvcmtmbG93SW5mbztcclxuICByZWNpcGllbnRzOiBSZWNpcGllbnRbXTtcclxuICBjdWJlczogQ3ViZUVudHJ5W107XHJcbiAgZXZlbnRzOiBTY2hlZHVsZWRFdmVudFtdO1xyXG4gIGxvY2F0aW9uczogTWFwUGluW107XHJcbiAgbG9nOiBMb2dbXTtcclxuICBydWxlcz86IHsgW25hbWU6IHN0cmluZ106IGJvb2xlYW4gfTtcclxuICBwYXJlbnQ/OiBDaGFpbjtcclxuICBjaGlsZHJlbj86IENoYWluW107XHJcbn1cclxuZXhwb3J0IGludGVyZmFjZSBDaGFpbiB7XHJcbiAgY29tcGxldGVkOiBib29sZWFuO1xyXG4gIGlkOiBudW1iZXI7XHJcbiAgZm9ybUlkOiBzdHJpbmc7XHJcbiAgbnVtYmVyPzogc3RyaW5nO1xyXG4gIHN1YmplY3Q/OiBzdHJpbmc7XHJcbiAgc3RhdGVJZDogc3RyaW5nO1xyXG4gIHZhbHVlPzogbnVtYmVyO1xyXG4gIGN1cnJlbmN5Q29kZT86IHN0cmluZztcclxuICBwYXJlbnQ/OiBDaGFpbjtcclxuICBjaGlsZHJlbj86IENoYWluW107XHJcbiAgcmVjaXBpZW50cz86IFJlY2lwaWVudFtdO1xyXG4gIGV2ZW50cz86IFNjaGVkdWxlZEV2ZW50W107XHJcbiAgbG9nOiBMb2dbXTtcclxufVxyXG5leHBvcnQgaW50ZXJmYWNlIFdvcmtmbG93SW5mbyB7XHJcbiAgbm9kZXM6IE5vZGVJbmZvW107XHJcbiAgY29ubmVjdG9yczogQ29ubmVjdG9ySW5mb1tdO1xyXG59XHJcbmV4cG9ydCBpbnRlcmZhY2UgUmVjaXBpZW50TW9kZWw8VCA9IGFueT4gZXh0ZW5kcyBIZWFkZXJNb2RlbDxUPiwgRG9jdW1lbnRNb2RlbDxUPiB7XHJcbiAgZXh0cmE/OiBhbnk7XHJcbiAgYWN0aW9ucz86IHN0cmluZ1tdO1xyXG4gIGZ5aTogYm9vbGVhbjtcclxuICBvcmlnaW5JZD86IG51bWJlcjtcclxuICBlc2NhbGF0ZWQ/OiBib29sZWFuO1xyXG4gIHRhZ3M/OiBzdHJpbmdbXTtcclxuICBieUlkPzogc3RyaW5nO1xyXG59XHJcbmV4cG9ydCBpbnRlcmZhY2UgQ29ubmVjdG9ySW5mbyB7XHJcbiAgLy8gcmVjaXBpZW50IGlkXHJcbiAgb3JpZ2luSWQ/OiBudW1iZXI7XHJcbiAgZXN0aW1hdGU6IGJvb2xlYW47XHJcbiAgdGltZT86IERhdGU7XHJcbiAgc291cmNlSWQ6IHN0cmluZztcclxuICB0YXJnZXRJZDogc3RyaW5nO1xyXG59XHJcbmV4cG9ydCBpbnRlcmZhY2UgTm9kZUluZm8ge1xyXG4gIG5vdGU/OiBzdHJpbmc7XHJcbiAgb3JpZ2luSWQ/OiBudW1iZXI7XHJcbiAgaWQ6IHN0cmluZztcclxuICAvKiogbm9kZSAqL1xyXG4gIHR5cGU6IHN0cmluZztcclxuICB0aW1lPzogRGF0ZTtcclxuICBlc3RpbWF0ZTogYm9vbGVhbjtcclxuICAvKiogc2Vjb25kcyAqL1xyXG4gIHN0YW5kYXJkVGltZT86IG51bWJlcjtcclxuICBlcnJvcj86IHN0cmluZztcclxufVxyXG5leHBvcnQgaW50ZXJmYWNlIExvZyB7XHJcbiAgcmVjaXBpZW50SWQ/OiBudW1iZXI7XHJcbiAgdXNlcklkOiBzdHJpbmc7XHJcbiAgYnlJZD86IHN0cmluZztcclxuICBvcmlnaW5JZD86IHN0cmluZztcclxuICB0aW1lOiBEYXRlO1xyXG4gIG1vZGVsPzoge307XHJcbiAgdHlwZTogTG9nVHlwZTtcclxuICBub2RlSWQ/OiBzdHJpbmc7XHJcbiAgbm90ZT86IHN0cmluZztcclxuICBzdGF0ZT86IHN0cmluZztcclxuICBhY3Rpb24/OiBzdHJpbmc7XHJcbiAgZXNjYWxhdGVkPzogYm9vbGVhbjtcclxuICBzb3VyY2VJZD86IHN0cmluZztcclxuICB0YXJnZXRJZD86IHN0cmluZztcclxuICBkdXJhdGlvbj86IG51bWJlcjtcclxuICBlc3RpbWF0ZT86IGJvb2xlYW47XHJcbiAgZmlsZUlkPzogbnVtYmVyO1xyXG4gIGVycm9yPzogc3RyaW5nO1xyXG59XHJcbmV4cG9ydCBkZWNsYXJlIHR5cGUgTG9nVHlwZSA9ICdTdWJtaXQnIHwgJ0Rvd25sb2FkJyB8ICdTdGF0ZUNoYW5nZScgfCAnQWN0aW9uVGFrZW4nIHwgJ0NoZWNrSW4nIHwgJ0NoZWNrT3V0JyB8XHJcbiAgJ01vZGVsQ2hhbmdlJyB8ICdOb2RlJyB8ICdWaXJ0dWFsTm9kZScgfCAnTm9kZUp1bXAnIHwgJ0Nvbm5lY3RvcicgfCAnVmlydHVhbENvbm5lY3RvcicgfCAnRXNjYWxhdGlvbic7XHJcblxyXG5leHBvcnQgaW50ZXJmYWNlIFJlY2lwaWVudCB7XHJcbiAgb3JpZ2luSWQ/OiBudW1iZXI7XHJcbiAgc3Vic3RpdHV0ZUlkPzogc3RyaW5nO1xyXG4gIGJ5SWQ/OiBzdHJpbmc7XHJcbiAgbm9kZUlkPzogc3RyaW5nO1xyXG4gIHVzZXJJZDogc3RyaW5nO1xyXG4gIHBlbmRpbmc6IGJvb2xlYW47XHJcbiAgZm9sZGVySWQ6IHN0cmluZztcclxuICByb2xlPzogc3RyaW5nO1xyXG4gIHJlY2VpdmVkOiBEYXRlO1xyXG4gIHJlcGxpZWQ/OiBEYXRlO1xyXG4gIGVzdGltYXRlPzogYm9vbGVhbjtcclxuICBhY3Rpb24/OiBzdHJpbmc7XHJcbiAgZnlpPzogYm9vbGVhbjtcclxuICBpZDogbnVtYmVyO1xyXG4gIG5vdGU/OiBzdHJpbmc7XHJcbiAgZXNjYWxhdGVkPzogYm9vbGVhbjtcclxufVxyXG5leHBvcnQgaW50ZXJmYWNlIFNjaGVkdWxlZEV2ZW50IHtcclxuICBpZDogbnVtYmVyO1xyXG4gIGRvY3VtZW50SWQ6IG51bWJlcjtcclxuICBzdGFydGluZzogRGF0ZTtcclxuICBlbmRpbmc/OiBEYXRlO1xyXG4gIHRpdGxlPzogc3RyaW5nO1xyXG4gIGxvY2F0aW9uPzogTGF0TG5nO1xyXG59XHJcbmV4cG9ydCBpbnRlcmZhY2UgTWFwUGluIHtcclxuICBsb2NhdGlvbjogTGF0TG5nO1xyXG59XHJcblxyXG5leHBvcnQgaW50ZXJmYWNlIExhdExuZyB7XHJcbiAgbGF0OiBudW1iZXI7XHJcbiAgbG5nOiBudW1iZXI7XHJcbn1cclxuXHJcbmV4cG9ydCBpbnRlcmZhY2UgQ3ViZUVudHJ5IHtcclxuICBjdWJlOiBzdHJpbmc7XHJcbiAgYXhlczogc3RyaW5nW107XHJcbiAgdmFsdWU6IG51bWJlcjtcclxufVxyXG5cclxuZXhwb3J0IGludGVyZmFjZSBBdHRhY2htZW50IHtcclxuICBpZD86IG51bWJlcjtcclxuICBmaWxlTmFtZTogc3RyaW5nO1xyXG4gIGNvbnRlbnRUeXBlOiBzdHJpbmc7XHJcbiAgdXNlcklkOiBzdHJpbmc7XHJcbiAgYnlJZD86IHN0cmluZztcclxuICB0aW1lOiBEYXRlO1xyXG4gIGRlbGV0ZWQ/OiBib29sZWFuO1xyXG4gIGNoZWNrZWRPdXQ/OiBib29sZWFuO1xyXG4gIHByaXZhdGU/OiBib29sZWFuO1xyXG4gIGhvbGRpbmdJZD86IHN0cmluZztcclxufVxyXG5leHBvcnQgaW50ZXJmYWNlIENvbW1lbnQge1xyXG4gIGlkOiBudW1iZXI7XHJcbiAgLyoqIGJhc2U2NCAqL1xyXG4gIGltYWdlPzogc3RyaW5nO1xyXG4gIHRleHQ/OiBzdHJpbmc7XHJcbiAgdXNlcklkOiBzdHJpbmc7XHJcbiAgdGltZTogRGF0ZTtcclxuICBwYXJlbnRJZD86IG51bWJlcjtcclxuICB2b3RlZD86IG51bWJlcjtcclxuICB2b3Rlcz86IG51bWJlcjtcclxuICBlZGl0ZWQ/OiBEYXRlO1xyXG4gIGRlbGV0ZWQ/OiBib29sZWFuO1xyXG4gIGJ5SWQ/OiBzdHJpbmc7XHJcbiAgcmVzb3VyY2U/OiB7IFtrZXk6IHN0cmluZ106IGFueSB9O1xyXG59XHJcbmV4cG9ydCBpbnRlcmZhY2UgVm90ZSB7XHJcbiAgYnlJZD86IHN0cmluZztcclxuICB1c2VySWQ6IHN0cmluZztcclxuICB0aW1lOiBEYXRlO1xyXG4gIHZvdGVkPzogbnVtYmVyO1xyXG59XHJcbmV4cG9ydCBpbnRlcmZhY2UgQ29tbWVudFZlcnNpb24ge1xyXG4gIGJ5SWQ/OiBzdHJpbmc7XHJcbiAgdXNlcklkOiBzdHJpbmc7XHJcbiAgdGltZTogRGF0ZTtcclxuICBpbWFnZT86IHN0cmluZztcclxuICB0ZXh0Pzogc3RyaW5nO1xyXG4gIHJlc291cmNlPzogeyBba2V5OiBzdHJpbmddOiBhbnkgfTtcclxufVxyXG5leHBvcnQgaW50ZXJmYWNlIE5vdGlmaWNhdGlvbiB7XHJcbiAgbXV0ZWQ/OiBib29sZWFuO1xyXG4gIGRlbGV0ZWQ/OiBib29sZWFuO1xyXG4gIGlkOiBudW1iZXI7XHJcbiAgdHlwZTogTm90aWZpY2F0aW9uVHlwZTtcclxuICB0aXRsZTogc3RyaW5nO1xyXG4gIHJlYWQ/OiBib29sZWFuO1xyXG4gIHNlbnQ6IERhdGU7XHJcbiAgcmVjaXBpZW50SWQ/OiBudW1iZXI7XHJcbn1cclxuXHJcbmV4cG9ydCBkZWNsYXJlIHR5cGUgTm90aWZpY2F0aW9uVHlwZSA9XHJcbiAgJ0NvbW1lbnRlZCcgfFxyXG4gICdDdWJlQW5vbWFseScgfFxyXG4gICdFc2NhbGF0ZWQnIHxcclxuICAnTGlrZWQnIHxcclxuICAnU3RhdGVDaGFuZ2VkJyB8XHJcbiAgJ051ZGdlJyB8XHJcbiAgJ1RleHRNZXNzYWdlJyB8XHJcbiAgJ1VwY29taW5nRXZlbnQnIHxcclxuICAnSm9iUHJvZ3Jlc3MnIHxcclxuICAnVGFnZ2VkJztcclxuXHJcbmV4cG9ydCBpbnRlcmZhY2UgU3RhdGUge1xyXG4gIHNoYXBlPzogc3RyaW5nO1xyXG4gIG5hbWU6IHN0cmluZztcclxuICB0aXRsZTogc3RyaW5nO1xyXG4gIHBhc3Q/OiBzdHJpbmc7XHJcbiAgZnV0dXJlPzogc3RyaW5nO1xyXG4gIGNvbG9yPzogc3RyaW5nO1xyXG4gIGJhY2tncm91bmRDb2xvcj86IHN0cmluZztcclxufVxyXG5leHBvcnQgdHlwZSBHZW5kZXIgPSAnTWFsZScgfFxyXG4gICdGZW1hbGUnIHwgbnVsbDtcclxuXHJcbmV4cG9ydCBpbnRlcmZhY2UgVmlldyB7XHJcbiAgbmFtZTogc3RyaW5nO1xyXG4gIHRpdGxlOiBzdHJpbmc7XHJcbiAgdGVtcGxhdGU/OiBzdHJpbmc7XHJcbiAgb3B0aW9ucz86IGFueTtcclxuICBndWlkZT86IHN0cmluZztcclxuICBjdWJlczogc3RyaW5nW107XHJcbiAgZm9ybXM6IHN0cmluZ1tdO1xyXG59XHJcblxyXG5leHBvcnQgaW50ZXJmYWNlIFByb2ZpbGUge1xyXG4gIGhvbGlkYXlzOiBhbnk7XHJcbiAgdXRpbGl0aWVzOiBVdGlsaXR5W107XHJcbiAgZ3VpZGVzPzogR3VpZGVbXTtcclxuICB2aWV3czogVmlld1tdO1xyXG4gIHBob3RvPzogc3RyaW5nO1xyXG4gIHVzZXJJZDogc3RyaW5nO1xyXG4gIGJ5SWQ/OiBzdHJpbmc7XHJcbiAgYnlOYW1lPzogc3RyaW5nO1xyXG4gIG5hbWU6IHN0cmluZztcclxuICBpbXBlcnNvbmF0aW5nPzogc3RyaW5nO1xyXG4gIGF2YWlsYWJsZT86IEF2YWlsYWJpbGl0eVN0YXRlO1xyXG4gIGdlbmRlcj86IEdlbmRlcjtcclxuICBieUdlbmRlcj86IEdlbmRlcjtcclxuICBzeXN0ZW06IGJvb2xlYW47XHJcbiAgZm9ybXM6IEZvcm1bXTtcclxuICBhY3Rpb25zOiBBY3Rpb25bXTtcclxuICBzdGF0ZXM6IFN0YXRlW107XHJcbiAgZm9sZGVyczogRm9sZGVyW107XHJcbiAgcmVwb3J0czogUmVwb3J0W107XHJcbiAgdHlwZXM6IFR5cGVbXTtcclxuICBjdWJlczogQ3ViZVtdO1xyXG4gIG5vZGVzOiBGbG93Tm9kZVtdO1xyXG4gIHJvbGVzOiBSb2xlW107XHJcbiAgd2lkZ2V0czogV2lkZ2V0W107XHJcbiAgb3B0aW9uczogT3B0aW9ucztcclxuICBpbmJveDogSGVhZGVyTW9kZWxbXTtcclxuICBpbmJveENvdW50PzogbnVtYmVyO1xyXG4gIG5vdGlmaWNhdGlvbnM6IE5vdGlmaWNhdGlvbltdO1xyXG4gIG5vdGlmaWNhdGlvbnNDb3VudD86IG51bWJlcjtcclxuICByZWNlbnRzPzogSGVhZGVyTW9kZWxbXTtcclxuICBjb250YWN0czogQ29udGFjdFtdO1xyXG4gIGNvbnZlcnNhdGlvbnNDb3VudDogbnVtYmVyO1xyXG4gIGxpY2Vuc2U/OiBMaWNlbnNlO1xyXG59XHJcbmV4cG9ydCBpbnRlcmZhY2UgVHlwZSB7XHJcbiAgYXJndW1lbnRzPzogRmllbGRJbmZvW107XHJcbiAgbmFtZTogc3RyaW5nO1xyXG4gIHRpdGxlOiBzdHJpbmc7XHJcbiAgYXNzaWduYWJsZT86IGJvb2xlYW47XHJcbiAgY29sdW1ucz86IEZpZWxkSW5mb1tdO1xyXG59XHJcbmV4cG9ydCBpbnRlcmZhY2UgUm9sZSB7XHJcbiAgbmFtZTogc3RyaW5nO1xyXG4gIHRpdGxlOiBzdHJpbmc7XHJcbiAgZGF0YVR5cGU6IHN0cmluZztcclxufVxyXG5leHBvcnQgaW50ZXJmYWNlIFV0aWxpdHkge1xyXG4gIG5hbWU6IHN0cmluZztcclxuICB0aXRsZTogc3RyaW5nO1xyXG4gIGljb24/OiBzdHJpbmc7XHJcbiAgZ3VpZGU/OiBzdHJpbmc7XHJcbiAgdGVtcGxhdGU/OiBzdHJpbmc7XHJcbiAgYXJndW1lbnRzPzogRmllbGRJbmZvW107XHJcbiAgb3B0aW9uczogYW55O1xyXG59XHJcbmV4cG9ydCBpbnRlcmZhY2UgQ29udGFjdCB7XHJcbiAgdmlzaXRlZD86IERhdGU7XHJcbiAgd2F0ZXJtYXJrPzogRGF0ZTtcclxuICBpZDogc3RyaW5nO1xyXG4gIHRleHQ/OiBzdHJpbmc7XHJcbiAgdGltZTogRGF0ZTtcclxuICBhY2NlcHRlZDogYm9vbGVhbjtcclxuICBpbWFnZT86IHN0cmluZztcclxuICBjb3VudDogbnVtYmVyO1xyXG4gIGZvcmdvdHRlbj86IGJvb2xlYW47XHJcbiAgcmVzb3VyY2U/OiB7IFtrZXk6IHN0cmluZ106IGFueSB9O1xyXG59XHJcbmV4cG9ydCBpbnRlcmZhY2UgQ2hhdCB7XHJcbiAgZGF0ZTogRGF0ZTtcclxuICB1c2VySWQ6IHN0cmluZztcclxuICBjb250YWN0SWQ6IHN0cmluZztcclxuICB0ZXh0Pzogc3RyaW5nO1xyXG4gIHRpbWU6IERhdGU7XHJcbiAgLyoqIGJhc2U2NCAqL1xyXG4gIGltYWdlPzogc3RyaW5nO1xyXG4gIHJlc291cmNlPzogeyBba2V5OiBzdHJpbmddOiBhbnkgfTtcclxufVxyXG5leHBvcnQgaW50ZXJmYWNlIEZpZWxkSW5mbyB7XHJcbiAgZGVmYXVsdFZhbHVlPzogYW55O1xyXG4gIG5hbWU6IHN0cmluZztcclxuICBsYWJlbD86IHN0cmluZztcclxuICBrZXk/OiBib29sZWFuO1xyXG4gIHR5cGU/OiBGaWVsZFR5cGU7XHJcbiAgdmFsaWRhdGlvbnM/OiBWYWxpZGF0aW9uW107XHJcbiAgZmllbGRzPzogRmllbGRJbmZvW107XHJcbiAgbWF4PzogbnVtYmVyO1xyXG4gIG1pbj86IG51bWJlcjtcclxuICBzb3VyY2U/OiBzdHJpbmc7XHJcbiAgcmVxdWlyZWQ/OiBib29sZWFuO1xyXG4gIHBhdHRlcm4/OiBzdHJpbmc7XHJcbiAgaGlkZGVuPzogYm9vbGVhbjtcclxuICBwbGFjZWhvbGRlcj86IHN0cmluZztcclxuICBpc0FycmF5PzogYm9vbGVhbjtcclxuICBpc09iamVjdD86IGJvb2xlYW47XHJcbiAgZGlhZ3JhbT86IGJvb2xlYW47XHJcbiAgdGVtcGxhdGU/OiBzdHJpbmc7XHJcbiAgaGludD86IHN0cmluZztcclxuICBvcHRpb25zPzogeyBba2V5OiBzdHJpbmddOiBhbnkgfTtcclxufVxyXG5leHBvcnQgaW50ZXJmYWNlIFZhbGlkYXRpb24ge1xyXG4gIHR5cGU6IFZhbGlkYXRpb25UeXBlO1xyXG4gIG1lc3NhZ2U6IHN0cmluZztcclxuICBtaW4/OiBudW1iZXI7XHJcbiAgbWF4PzogbnVtYmVyO1xyXG4gIGV4cHJlc3Npb24/OiBhbnk7XHJcbn1cclxuZXhwb3J0IGVudW0gVmFsaWRhdGlvblR5cGUge1xyXG4gIFJlcXVpcmVkID0gJ1JlcXVpcmVkJyxcclxuICBNaW4gPSAnTWluJyxcclxuICBNYXggPSAnTWF4JyxcclxuICBNaW5MZW5ndGggPSAnTWluTGVuZ3RoJyxcclxuICBNYXhMZW5ndGggPSAnTWF4TGVuZ3RoJyxcclxuICBQYXR0ZXJuID0gJ1BhdHRlcm4nLFxyXG4gIFJhbmdlID0gJ1JhbmdlJyxcclxuICBFbWFpbCA9ICdFbWFpbCdcclxufVxyXG5leHBvcnQgZW51bSBGaWVsZFR5cGUge1xyXG4gIFN0cmluZyA9ICdTdHJpbmcnLFxyXG4gIE51bWJlciA9ICdOdW1iZXInLFxyXG4gIFRpbWUgPSAnVGltZScsXHJcbiAgRGF0ZSA9ICdEYXRlJyxcclxuICBEYXRlVGltZSA9ICdEYXRlVGltZScsXHJcbiAgQ2hlY2tib3ggPSAnQ2hlY2tib3gnLFxyXG4gIEN1cnJlbmN5ID0gJ0N1cnJlbmN5JyxcclxuICBTZWxlY3QgPSAnU2VsZWN0JyxcclxuICBFbWFpbEFkZHJlc3MgPSAnRW1haWxBZGRyZXNzJyxcclxuICBIdG1sID0gJ0h0bWwnLFxyXG4gIFRleHQgPSAnVGV4dCcsXHJcbiAgUGFzc3dvcmQgPSAnUGFzc3dvcmQnLFxyXG4gIFBob25lTnVtYmVyID0gJ1Bob25lTnVtYmVyJyxcclxuICBGaWxlID0gJ0ZpbGUnLFxyXG4gIFVybCA9ICdVcmwnLFxyXG4gIFN3aXRjaCA9ICdTd2l0Y2gnLFxyXG4gIEFkZHJlc3MgPSAnQWRkcmVzcycsXHJcbiAgT2JqZWN0ID0gJ09iamVjdCcsXHJcbiAgRXhwcmVzc2lvbiA9ICdFeHByZXNzaW9uJyxcclxuICBEdXJhdGlvbiA9ICdEdXJhdGlvbicsXHJcbiAgQXV0b2NvbXBsZXRlID0gJ0F1dG9jb21wbGV0ZScsXHJcbiAgUGVyY2VudCA9IFwiUGVyY2VudFwiLFxyXG4gIERhdGVSYW5nZSA9IFwiRGF0ZVJhbmdlXCJcclxufVxyXG5leHBvcnQgaW50ZXJmYWNlIFdpZGdldCB7XHJcbiAgbmFtZTogc3RyaW5nO1xyXG4gIGd1aWRlPzogc3RyaW5nO1xyXG4gIHRpdGxlPzogc3RyaW5nO1xyXG4gIHRlbXBsYXRlOiBzdHJpbmc7XHJcbiAgY29scz86IG51bWJlcjtcclxuICByb3dzPzogbnVtYmVyO1xyXG4gIGFyZ3VtZW50cz86IEZpZWxkSW5mb1tdO1xyXG4gIGFyZ3VtZW50c1RlbXBsYXRlPzogc3RyaW5nO1xyXG4gIG9wdGlvbnM6IGFueTtcclxufVxyXG5leHBvcnQgaW50ZXJmYWNlIExpY2Vuc2Uge1xyXG4gIG1vZGU6IExpY2Vuc2VNb2RlO1xyXG4gIGV4cGlyYXRpb24/OiBEYXRlO1xyXG4gIGNvbXBhbnlOYW1lOiBzdHJpbmc7XHJcbn1cclxuZXhwb3J0IGludGVyZmFjZSBGb2xkZXIge1xyXG4gIGZpbHRlcnM/OiB7XHJcbiAgICBjdWJlPzogc3RyaW5nO1xyXG4gICAgYXhlczogc3RyaW5nW107XHJcbiAgfTtcclxuICBuYW1lOiBzdHJpbmc7XHJcbiAgZ3JvdXA/OiBzdHJpbmc7XHJcbiAgaWNvbj86IHN0cmluZztcclxuICB0aXRsZTogc3RyaW5nO1xyXG4gIGNvdW50PzogbnVtYmVyO1xyXG4gIGNvbHVtbnM/OiBGb2xkZXJDb2x1bW5bXTtcclxufVxyXG5leHBvcnQgaW50ZXJmYWNlIEZvbGRlckNvbHVtbiB7XHJcbiAgbmFtZTogc3RyaW5nIHwgJ251bWJlcicgfCAnc3ViamVjdCcgfCAndmFsdWUnIHwgJ293bmVyJyB8ICdzZW5kZXInIHwgJ3JlY2VpdmVkJyB8ICdyZWNlaXZlZEFnbycgfCAncmVwbGllZCcgfCAnc3RhdGUnIHwgJ2lzc3VlZCcgfCAnaXNzdWVkQWdvJztcclxuICB0aXRsZTogc3RyaW5nO1xyXG4gIHR5cGU/OiAnQm9vbGVhbicgfCAnRGF0ZScgfCAnRGVjaW1hbCcgfCAnU3RyaW5nJztcclxufVxyXG5cclxuZXhwb3J0IHR5cGUgTGljZW5zZU1vZGUgPVxyXG4gICdFdmFsdWF0aW9uJyB8XHJcbiAgJ1ZhbGlkJyB8XHJcbiAgJ0dyYWNlJyB8XHJcbiAgJ0ludmFsaWQnIHxcclxuICAnTGltaXQnIHxcclxuICAnRXhwaXJlZCc7XHJcblxyXG5leHBvcnQgaW50ZXJmYWNlIEFjdGlvbiB7XHJcbiAgbmFtZTogc3RyaW5nO1xyXG4gIHRpdGxlOiBzdHJpbmc7XHJcbiAgdmVyYj86IHN0cmluZztcclxuICB5b3U/OiBzdHJpbmc7XHJcbiAgeW91TWFsZT86IHN0cmluZztcclxuICB5b3VGZW1hbGU/OiBzdHJpbmc7XHJcbiAgcGFzdD86IHN0cmluZztcclxuICBwYXN0TWFsZT86IHN0cmluZztcclxuICBwYXN0RmVtYWxlPzogc3RyaW5nO1xyXG4gIGFkamVjdGl2ZT86IHN0cmluZztcclxuICBsb2dnYWJsZT86IGJvb2xlYW47XHJcbiAgYWRqZWN0aXZlUGx1cmFsPzogc3RyaW5nO1xyXG4gIGljb24/OiBzdHJpbmc7XHJcbiAgdGVtcGxhdGU/OiBzdHJpbmc7XHJcbiAgYXJndW1lbnRzPzogRmllbGRJbmZvW107XHJcbiAgbXVsdGlwbGU/OiBib29sZWFuO1xyXG4gIGdyb3VwPzogbnVtYmVyO1xyXG4gIHNoYXBlPzogc3RyaW5nO1xyXG4gIGNvbG9yPzogc3RyaW5nO1xyXG4gIG9wdGlvbnM/OiBhbnk7XHJcbn1cclxuZXhwb3J0IGludGVyZmFjZSBPcHRpb25zIHtcclxuICBncmFudEFjY2Vzcz86IEdyYW50U2V0dGluZ3M7XHJcbiAgb3V0T2ZPZmZpY2U/OiBPdXRPZk9mZmljZVNldHRpbmdzO1xyXG4gIG5vdGlmaWNhdGlvbnM/OiBOb3RpZmljYXRpb25zU2V0dGluZ3M7XHJcbiAgZW1haWxzPzogRW1haWxTZXR0aW5ncztcclxuICBndWlkZXM/OiBzdHJpbmdbXTtcclxuICBpbmJveFZpZXc/OiBEYXRlO1xyXG4gIG5vdGlmaWNhdGlvbnNWaWV3PzogRGF0ZTtcclxuICB0YWdzPzogc3RyaW5nW107XHJcbn1cclxuZXhwb3J0IGludGVyZmFjZSBHcmFudFNldHRpbmdzIHtcclxuICBhY3RpdmU6IGJvb2xlYW47XHJcbiAgdXNlcnM/OiBzdHJpbmdbXTtcclxufVxyXG5cclxuZXhwb3J0IGludGVyZmFjZSBEaW1lbnRpb25zIHtcclxuICB3aWR0aDogbnVtYmVyO1xyXG4gIGhlaWdodDogbnVtYmVyO1xyXG59O1xyXG5cclxuZXhwb3J0XHJcbiAgaW50ZXJmYWNlIFJlcG9ydCB7XHJcbiAgb3B0aW9ucz86IGFueTtcclxuICBuYW1lOiBzdHJpbmc7XHJcbiAgdGl0bGU6IHN0cmluZztcclxuICBpY29uPzogc3RyaW5nO1xyXG4gIGd1aWRlPzogc3RyaW5nO1xyXG4gIHRlbXBsYXRlPzogc3RyaW5nO1xyXG4gIGZpZWxkcz86IEZpZWxkSW5mb1tdO1xyXG4gIGl0ZW1UZW1wbGF0ZT86IHN0cmluZztcclxuICBjb2x1bW5zOiBGaWVsZEluZm9bXTtcclxuICBhcmd1bWVudHM/OiBGaWVsZEluZm9bXTtcclxuICBhcmd1bWVudHNUZW1wbGF0ZT86IHN0cmluZztcclxufVxyXG5leHBvcnRcclxuICBpbnRlcmZhY2UgRm9ybSB7XHJcbiAgbmFtZTogc3RyaW5nO1xyXG4gIHRpdGxlOiBzdHJpbmc7XHJcbiAgY3JlYXRhYmxlOiBib29sZWFuO1xyXG4gIGljb246IHN0cmluZztcclxuICBwb3NpdGlvbj86ICdSZXF1aXJlJyB8ICdBc2snIHwgJ05vbmUnO1xyXG4gIHRlbXBsYXRlPzogc3RyaW5nO1xyXG4gIHN0cnVjdHVyZT86IEZpZWxkSW5mb1tdO1xyXG4gIHdvcmtmbG93PzogV29ya2Zsb3c7XHJcbiAgZ3VpZGU/OiBzdHJpbmc7XHJcbn1cclxuZXhwb3J0IGludGVyZmFjZSBXb3JrZmxvdyB7XHJcbiAgdmVyc2lvbjogbnVtYmVyO1xyXG4gIGNvbm5lY3RvcnM6IENvbm5lY3Rvck1vZGVsW107XHJcbiAgbm9kZXM6IE5vZGVNb2RlbFtdO1xyXG59XHJcbmV4cG9ydCBpbnRlcmZhY2UgVXNlckluZm8ge1xyXG4gIGlkOiBzdHJpbmc7XHJcbiAgbmFtZTogc3RyaW5nO1xyXG4gIHJvbGU/OiBzdHJpbmc7XHJcbiAgZ2VuZGVyPzogR2VuZGVyO1xyXG4gIHBpY3R1cmVVcmw/OiBzdHJpbmc7XHJcbiAgbmljaz86IHN0cmluZztcclxuICBwaG9uZU51bWJlcj86IHN0cmluZztcclxuICBlbWFpbD86IHN0cmluZztcclxuICBsYXN0QWN0aXZlPzogRGF0ZTtcclxuICBtb2RlPzogQXZhaWxhYmlsaXR5U3RhdGU7XHJcbn1cclxuXHJcbmV4cG9ydCBpbnRlcmZhY2UgR3VpZGUge1xyXG4gIG5hbWU6IHN0cmluZztcclxuICB0aXRsZT86IHN0cmluZztcclxuICBtb2RlPzogJ01lbnUnIHwgJ0VhZ2VyJyB8ICdQcml2YXRlJztcclxuICBzdGVwczogR3VpZGVTdGVwW107XHJcbn1cclxuZXhwb3J0IGludGVyZmFjZSBHdWlkZVN0ZXAge1xyXG4gIGV4ZWN1dGU/OiBib29sZWFuO1xyXG4gIHNlbGVjdG9yPzogc3RyaW5nO1xyXG4gIHRpdGxlPzogc3RyaW5nO1xyXG4gIGNvbnRlbnQ6IHN0cmluZztcclxuICBuYXZpZ2F0ZT86IHN0cmluZztcclxuICBwb3NpdGlvbj86ICdBYm92ZScgfCAnRW5kJyB8ICdTdGFydCcgfCAnQmVsb3cnO1xyXG59XHJcbi8vZW51bSBHdWlkZVN0ZXBQb2xpY3kgeyB9XHJcbmV4cG9ydCBpbnRlcmZhY2UgRmxvd05vZGUge1xyXG4gIG5hbWU6IHN0cmluZztcclxuICB0aXRsZTogc3RyaW5nO1xyXG4gIHN0eWxlPzogc3RyaW5nO1xyXG4gIHBhbGV0dGU/OiBzdHJpbmc7XHJcbiAgc2hhcGU6IFNoYXBlTW9kZWwgfCBGbG93U2hhcGVNb2RlbCB8IEJhc2ljU2hhcGVNb2RlbCB8IEltYWdlTW9kZWwgfCBQYXRoTW9kZWwgfCBUZXh0TW9kZWwgfCBCcG1uU2hhcGVNb2RlbCB8IE5hdGl2ZU1vZGVsO1xyXG4gIHRlbXBsYXRlPzogc3RyaW5nO1xyXG4gIGFyZ3VtZW50cz86IEZpZWxkSW5mb1tdO1xyXG59XHJcbmV4cG9ydCBkZWNsYXJlIHR5cGUgQXZhaWxhYmlsaXR5U3RhdGUgPVxyXG4gICdPZmZsaW5lJyB8XHJcbiAgJ09ubGluZScgfFxyXG4gICdPdXRPZk9mZmljZScgfFxyXG4gICdWYWNhdGlvbicgfCAnV29ya2luZ0hvbWUnO1xyXG5cclxuZXhwb3J0IGludGVyZmFjZSBDdWJlIHtcclxuICBuYW1lOiBzdHJpbmc7XHJcbiAgdGl0bGU6IHN0cmluZztcclxuICBpY29uPzogc3RyaW5nO1xyXG4gIHlBeGlzPzogWUF4aXM7XHJcbiAgdGVtcGxhdGU/OiBzdHJpbmc7XHJcbiAgY3VycmVuY3lDb2RlPzogc3RyaW5nO1xyXG4gIHZpZXdzOiBDdWJlVmlld1tdO1xyXG4gIGF4ZXM6IEN1YmVBeGlzW107XHJcbiAgaW5kaWNlcz86IEN1YmVJbmRleFtdO1xyXG59XHJcbmV4cG9ydCBpbnRlcmZhY2UgWUF4aXMge1xyXG4gIHRpdGxlPzogc3RyaW5nO1xyXG4gIHR5cGU/OiAnTm9uZScgfCAnTnVtYmVyJyB8ICdDdXJyZW5jeSc7XHJcbn1cclxuZXhwb3J0IGludGVyZmFjZSBDdWJlSW5kZXgge1xyXG4gIG5hbWU6IHN0cmluZztcclxuICBhY2N1bXVsYXRlPzogYm9vbGVhbjtcclxuICB0aXRsZTogc3RyaW5nO1xyXG59XHJcbmV4cG9ydCBpbnRlcmZhY2UgQ3ViZUF4aXMge1xyXG4gIG5hbWU6IHN0cmluZztcclxuICB0aXRsZTogc3RyaW5nO1xyXG4gIGRhdGFUeXBlOiBzdHJpbmc7XHJcbiAgaGlkZGVuPzogYm9vbGVhbjtcclxuICBjb21iaW5hdGlvbj86IGJvb2xlYW47XHJcbiAgc2VsZWN0aW9uTW9kZT86ICdTaW5nbGUnIHwgJ1BhdHRlcm4nIHwgJ011bHRpcGxlJyB8ICdTZWFyY2gnIHwgJ05vbmUnO1xyXG4gIGRlc2NlbmRlbnRPZj86IHN0cmluZztcclxufVxyXG5leHBvcnQgdHlwZSBBeGlzVHlwZSA9IHN0cmluZyB8IG51bWJlciB8IEFycmF5PHN0cmluZyB8IG51bWJlcj47XHJcblxyXG5leHBvcnQgaW50ZXJmYWNlIEF4ZXNNYXAge1xyXG4gIFtheGlzOiBzdHJpbmddOiBBeGlzVHlwZTtcclxufVxyXG5leHBvcnQgaW50ZXJmYWNlIEN1YmVWaWV3IHtcclxuICB4QXhpczogc3RyaW5nW107XHJcbiAgc2VyaWVzPzogc3RyaW5nW107XHJcbiAgZmlsdGVycz86IEF4ZXNNYXA7XHJcbiAgaW5kaWNlcz86IHN0cmluZ1tdO1xyXG4gIGljb24/OiBzdHJpbmc7XHJcbiAgZ3VpZGU/OiBzdHJpbmc7XHJcbiAgbmFtZTogc3RyaW5nO1xyXG4gIHRpdGxlOiBzdHJpbmc7XHJcbiAgdHlwZTogVmlld1R5cGU7XHJcbiAgY2hhcnRUeXBlPzogQ2hhcnRUeXBlO1xyXG4gIGluZGljZXNDaGFydFR5cGU/OiBDaGFydFR5cGU7XHJcbn1cclxuZXhwb3J0IGRlY2xhcmUgdHlwZSBWaWV3VHlwZSA9ICdTcHJlYWRzaGVldCcgfFxyXG4gICdDaGFydCcgfCAnUGl2b3QnIHwgJ0dyaWQnO1xyXG5leHBvcnQgZGVjbGFyZSB0eXBlIENoYXJ0VHlwZSA9XHJcbiAgJ1BpZScgfFxyXG4gIC8qKiAgRGVmaW5lIHRoZSBsaW5lIHNlcmllcy4gKi9cclxuICAnTGluZScgfFxyXG4gIC8qKiAgRGVmaW5lIHRoZSBDb2x1bW4gc2VyaWVzLiAqL1xyXG4gICdDb2x1bW4nIHxcclxuICAvKiogIERlZmluZSB0aGUgQXJlYSBzZXJpZXMuICovXHJcbiAgJ0FyZWEnIHxcclxuICAvKiogIERlZmluZSB0aGUgQmFyIHNlcmllcy4gKi9cclxuICAnQmFyJyB8XHJcbiAgLyoqICBEZWZpbmUgdGhlIFN0YWNraW5nQ29sdW1uIHNlcmllcy4gKi9cclxuICAnU3RhY2tpbmdDb2x1bW4nIHxcclxuICAvKiogIERlZmluZSB0aGUgU3RhY2tpbmdBcmVhIHNlcmllcy4gKi9cclxuICAnU3RhY2tpbmdBcmVhJyB8XHJcbiAgLyoqICBEZWZpbmUgdGhlIFN0YWNraW5nTGluZSBzZXJpZXMuICovXHJcbiAgJ1N0YWNraW5nTGluZScgfFxyXG4gIC8qKiAgRGVmaW5lIHRoZSBTdGFja2luZ0JhciBzZXJpZXMuICovXHJcbiAgJ1N0YWNraW5nQmFyJyB8XHJcbiAgLyoqICBEZWZpbmUgdGhlIFN0ZXBsaW5lIHNlcmllcy4gKi9cclxuICAnU3RlcExpbmUnIHxcclxuICAvKiogIERlZmluZSB0aGUgU3RlcGFyZWEgc2VyaWVzLiAqL1xyXG4gICdTdGVwQXJlYScgfFxyXG4gIC8qKiAgRGVmaW5lIHRoZSBTdGVwYXJlYSBzZXJpZXMuICovXHJcbiAgJ1NwbGluZUFyZWEnIHxcclxuICAvKiogIERlZmluZSB0aGUgU2NhdHRlciBzZXJpZXMuICovXHJcbiAgJ1NjYXR0ZXInIHxcclxuICAvKiogIERlZmluZSB0aGUgU3BsaW5lIHNlcmllcy4gKi9cclxuICAnU3BsaW5lJyB8XHJcbiAgLyoqIERlZmluZSB0aGUgU3RhY2tpbmdDb2x1bW4xMDAgc2VyaWVzICovXHJcbiAgJ1N0YWNraW5nQ29sdW1uMTAwJyB8XHJcbiAgLyoqIERlZmluZSB0aGUgU3RhY2tpbmdCYXIxMDAgc2VyaWVzICovXHJcbiAgJ1N0YWNraW5nQmFyMTAwJyB8XHJcbiAgLyoqIERlZmluZSB0aGUgU3RhY2tpbmdMaW5lMTAwIHNlcmllcyAqL1xyXG4gICdTdGFja2luZ0xpbmUxMDAnIHxcclxuICAvKiogRGVmaW5lIHRoZSBTdGFja2luZ0FyZWExMDAgc2VyaWVzICovXHJcbiAgJ1N0YWNraW5nQXJlYTEwMCcgfFxyXG4gIC8qKiBEZWZpbmUgdGhlIFJhbmdlQ29sdW1uIFNlcmllcyAqL1xyXG4gICdSYW5nZUNvbHVtbicgfFxyXG4gIC8qKiBEZWZpbmUgdGhlIFdhdGVyZmFsbCBTZXJpZXMgKi9cclxuICAnV2F0ZXJmYWxsJyB8XHJcbiAgLyoqIERlZmluZSB0aGUgUmFuZ2VBcmVhIFNlcmllcyAqL1xyXG4gICdSYW5nZUFyZWEnIHxcclxuICAvKiogRGVmaW5lIHRoZSBCdWJibGUgU2VyaWVzICovXHJcbiAgJ0J1YmJsZScgfFxyXG4gIC8qKiBEZWZpbmUgdGhlIENhbmRsZSBTZXJpZXMgKi9cclxuICAnUG9sYXInIHxcclxuICAvKiogRGVmaW5lIHRoZSByYWRhciBzZXJpZXMgKi9cclxuICAnUmFkYXInIHxcclxuICAvKiogRGVmaW5lIHRoZSBQYXJldG8gc2VyaWVzICovXHJcbiAgJ1BhcmV0bycgfCAnRG91Z2hudXQnIHwgJ0hhbGZEb3VnaG51dCcgfFxyXG4gICdGdW5uZWwnIHwgJ1B5cmFtaWQnIHxcclxuICAnU3RhY2tpbmdTdGVwQXJlYSc7XHJcbmV4cG9ydCBpbnRlcmZhY2UgT3V0T2ZPZmZpY2VTZXR0aW5ncyB7XHJcbiAgZnJvbT86IERhdGU7XHJcbiAgdG8/OiBEYXRlO1xyXG4gIGFjdGl2ZTogYm9vbGVhbjtcclxuICBzdWJzdGl0dWVJZD86IHN0cmluZztcclxufVxyXG5pbnRlcmZhY2UgTm90aWZpY2F0aW9uc1NldHRpbmdzIHtcclxuICBzb3VuZD86IGJvb2xlYW47XHJcbiAgYWN0aXZlPzogYm9vbGVhbjtcclxuICBteVN0YXRlQ2hhbmdlZD86IGJvb2xlYW47XHJcbiAgYW55U3RhdGVDaGFuZ2VkPzogYm9vbGVhbjtcclxuICBhbnlDb21tZW50PzogYm9vbGVhbjtcclxuICBteUNvbW1lbnQ/OiBib29sZWFuO1xyXG4gIGxpa2VkPzogYm9vbGVhbjtcclxuICBjdWJlQW5vbWFseT86IGJvb2xlYW47XHJcbiAgdXBjb21pbmdFdmVudHM/OiBib29sZWFuO1xyXG59XHJcbmludGVyZmFjZSBFbWFpbFNldHRpbmdzIHtcclxuICBhY3RpdmU/OiBib29sZWFuO1xyXG4gIG1haWxzPzogYm9vbGVhbjtcclxuICBjb252ZXJzYXRpb25zPzogYm9vbGVhbjtcclxuICBub3RpZmljYXRpb25zPzogYm9vbGVhbjtcclxuICBldmVudHM/OiBib29sZWFuO1xyXG59XHJcbiJdfQ==
@@ -0,0 +1,40 @@
1
+ import { animate, style, transition, trigger } from "@angular/animations";
2
+ import { Component, Input } from "@angular/core";
3
+ import { isMobile } from "./functions";
4
+ import * as i0 from "@angular/core";
5
+ import * as i1 from "@angular/material/icon";
6
+ import * as i2 from "@angular/common";
7
+ import * as i3 from "./pipes/translate.pipe";
8
+ import * as i4 from "./pipes/sanitize-html.pipe";
9
+ const noneAnimation = trigger('none', [
10
+ transition(':enter', [
11
+ style({ opacity: 0, transform: 'translateX(10px)' }),
12
+ animate('400ms ease', style({ opacity: .2, transform: 'translateX(0)' }))
13
+ ])
14
+ ]);
15
+ export class NoneComponent {
16
+ constructor() {
17
+ this.isMobile = isMobile();
18
+ }
19
+ }
20
+ NoneComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.1", ngImport: i0, type: NoneComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
21
+ NoneComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.3.1", type: NoneComponent, selector: "bizdoc-none", inputs: { title: "title", subtitle: "subtitle", icon: "icon" }, ngImport: i0, template: `<div class="none" @none>
22
+ <h4 class="mat-title">{{title|translate}}</h4>
23
+ <mat-icon class="icon">{{icon}}</mat-icon>
24
+ <h5 class="mat-body-2" *ngIf='subtitle' [innerHTML]='subtitle|translate|sanitizeHtml'></h5>
25
+ </div>`, isInline: true, styles: [".none{align-items:center;display:flex;flex-direction:column;opacity:.2;padding-top:2em;cursor:default}.none .icon{font-size:56px;height:auto;width:auto}.none h5{padding:0 8px}.none h5 ::ng-deep i.material-icons{vertical-align:text-bottom;font-size:initial}\n"], components: [{ type: i1.MatIcon, selector: "mat-icon", inputs: ["color", "inline", "svgIcon", "fontSet", "fontIcon"], exportAs: ["matIcon"] }], directives: [{ type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }], pipes: { "translate": i3.TranslatePipe, "sanitizeHtml": i4.SanitizeHtmlPipe }, animations: [noneAnimation] });
26
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.1", ngImport: i0, type: NoneComponent, decorators: [{
27
+ type: Component,
28
+ args: [{ selector: 'bizdoc-none', template: `<div class="none" @none>
29
+ <h4 class="mat-title">{{title|translate}}</h4>
30
+ <mat-icon class="icon">{{icon}}</mat-icon>
31
+ <h5 class="mat-body-2" *ngIf='subtitle' [innerHTML]='subtitle|translate|sanitizeHtml'></h5>
32
+ </div>`, animations: [noneAnimation], styles: [".none{align-items:center;display:flex;flex-direction:column;opacity:.2;padding-top:2em;cursor:default}.none .icon{font-size:56px;height:auto;width:auto}.none h5{padding:0 8px}.none h5 ::ng-deep i.material-icons{vertical-align:text-bottom;font-size:initial}\n"] }]
33
+ }], propDecorators: { title: [{
34
+ type: Input
35
+ }], subtitle: [{
36
+ type: Input
37
+ }], icon: [{
38
+ type: Input
39
+ }] } });
40
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibm9uZS5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9saWJyYXJpZXMvY29yZS9zcmMvbGliL2NvcmUvbm9uZS5jb21wb25lbnQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLE9BQU8sRUFBRSxLQUFLLEVBQUUsVUFBVSxFQUFFLE9BQU8sRUFBRSxNQUFNLHFCQUFxQixDQUFDO0FBQzFFLE9BQU8sRUFBRSxTQUFTLEVBQUUsS0FBSyxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQ2pELE9BQU8sRUFBRSxRQUFRLEVBQUUsTUFBTSxhQUFhLENBQUM7Ozs7OztBQUV2QyxNQUFNLGFBQWEsR0FBRyxPQUFPLENBQUMsTUFBTSxFQUFFO0lBQ3BDLFVBQVUsQ0FBQyxRQUFRLEVBQ2pCO1FBQ0UsS0FBSyxDQUFDLEVBQUUsT0FBTyxFQUFFLENBQUMsRUFBRSxTQUFTLEVBQUUsa0JBQWtCLEVBQUUsQ0FBQztRQUNwRCxPQUFPLENBQUMsWUFBWSxFQUFFLEtBQUssQ0FBQyxFQUFFLE9BQU8sRUFBRSxFQUFFLEVBQUUsU0FBUyxFQUFFLGVBQWUsRUFBRSxDQUFDLENBQUM7S0FDMUUsQ0FBQztDQUFDLENBQUMsQ0FBQztBQVlULE1BQU0sT0FDRSxhQUFhO0lBWHJCO1FBWVcsYUFBUSxHQUFHLFFBQVEsRUFBRSxDQUFDO0tBSWhDOzswR0FMTyxhQUFhOzhGQUFiLGFBQWEsbUhBVFQ7Ozs7T0FJTCw0bUJBRU8sQ0FBQyxhQUFhLENBQUM7MkZBR3JCLGFBQWE7a0JBWHBCLFNBQVM7K0JBQ0UsYUFBYSxZQUNiOzs7O09BSUwsY0FFTyxDQUFDLGFBQWEsQ0FBQzs4QkFLbEIsS0FBSztzQkFBYixLQUFLO2dCQUNHLFFBQVE7c0JBQWhCLEtBQUs7Z0JBQ0csSUFBSTtzQkFBWixLQUFLIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgYW5pbWF0ZSwgc3R5bGUsIHRyYW5zaXRpb24sIHRyaWdnZXIgfSBmcm9tIFwiQGFuZ3VsYXIvYW5pbWF0aW9uc1wiO1xyXG5pbXBvcnQgeyBDb21wb25lbnQsIElucHV0IH0gZnJvbSBcIkBhbmd1bGFyL2NvcmVcIjtcclxuaW1wb3J0IHsgaXNNb2JpbGUgfSBmcm9tIFwiLi9mdW5jdGlvbnNcIjtcclxuXHJcbmNvbnN0IG5vbmVBbmltYXRpb24gPSB0cmlnZ2VyKCdub25lJywgW1xyXG4gIHRyYW5zaXRpb24oJzplbnRlcicsXHJcbiAgICBbXHJcbiAgICAgIHN0eWxlKHsgb3BhY2l0eTogMCwgdHJhbnNmb3JtOiAndHJhbnNsYXRlWCgxMHB4KScgfSksXHJcbiAgICAgIGFuaW1hdGUoJzQwMG1zIGVhc2UnLCBzdHlsZSh7IG9wYWNpdHk6IC4yLCB0cmFuc2Zvcm06ICd0cmFuc2xhdGVYKDApJyB9KSlcclxuICAgIF0pXSk7XHJcblxyXG5AQ29tcG9uZW50KHtcclxuICBzZWxlY3RvcjogJ2JpemRvYy1ub25lJyxcclxuICB0ZW1wbGF0ZTogYDxkaXYgY2xhc3M9XCJub25lXCIgQG5vbmU+XHJcbiAgPGg0IGNsYXNzPVwibWF0LXRpdGxlXCI+e3t0aXRsZXx0cmFuc2xhdGV9fTwvaDQ+XHJcbiAgPG1hdC1pY29uIGNsYXNzPVwiaWNvblwiPnt7aWNvbn19PC9tYXQtaWNvbj5cclxuICA8aDUgY2xhc3M9XCJtYXQtYm9keS0yXCIgKm5nSWY9J3N1YnRpdGxlJyBbaW5uZXJIVE1MXT0nc3VidGl0bGV8dHJhbnNsYXRlfHNhbml0aXplSHRtbCc+PC9oNT5cclxuPC9kaXY+YCxcclxuICBzdHlsZVVybHM6IFsnLi9ub25lLmNvbXBvbmVudC5zY3NzJ10sXHJcbiAgYW5pbWF0aW9uczogW25vbmVBbmltYXRpb25dXHJcbn0pXHJcbmV4cG9ydFxyXG4gIGNsYXNzIE5vbmVDb21wb25lbnQge1xyXG4gIHJlYWRvbmx5IGlzTW9iaWxlID0gaXNNb2JpbGUoKTtcclxuICBASW5wdXQoKSB0aXRsZTogc3RyaW5nO1xyXG4gIEBJbnB1dCgpIHN1YnRpdGxlOiBzdHJpbmc7XHJcbiAgQElucHV0KCkgaWNvbjogc3RyaW5nO1xyXG59XHJcbiJdfQ==