@bizdoc/core 1.10.7 → 1.11.0-next.1

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 (331) hide show
  1. package/assets/bizdoc-schema.json +7 -4
  2. package/esm2020/lib/admin/admin-dismiss.service.mjs +3 -3
  3. package/esm2020/lib/admin/admin-menu.component.mjs +3 -3
  4. package/esm2020/lib/admin/core/ace.input.mjs +3 -3
  5. package/esm2020/lib/admin/core/color-picker.input.mjs +3 -3
  6. package/esm2020/lib/admin/core/search.input.mjs +3 -3
  7. package/esm2020/lib/admin/diff/configuration-diff.component.mjs +3 -3
  8. package/esm2020/lib/admin/document-trace/document-trace.component.mjs +3 -3
  9. package/esm2020/lib/admin/document-trace/reassign.dialog.mjs +3 -3
  10. package/esm2020/lib/admin/document-trace/trace-element.component.mjs +3 -3
  11. package/esm2020/lib/admin/form/form.resolve.service.mjs +3 -3
  12. package/esm2020/lib/admin/form/form.service.mjs +3 -3
  13. package/esm2020/lib/admin/form/workflow/node.component.mjs +3 -3
  14. package/esm2020/lib/admin/form/workflow/role-node.component.mjs +3 -3
  15. package/esm2020/lib/admin/form/workflow/workflow.component.mjs +3 -3
  16. package/esm2020/lib/admin/indices/manage-cube-index.component.mjs +3 -3
  17. package/esm2020/lib/admin/patterns/patterns.component.mjs +3 -3
  18. package/esm2020/lib/admin/permissions/permissions.component.mjs +3 -3
  19. package/esm2020/lib/admin/positions/positions-popup.component.mjs +3 -3
  20. package/esm2020/lib/admin/positions/positions.component.mjs +7 -7
  21. package/esm2020/lib/admin/profiler/profiler.component.mjs +3 -3
  22. package/esm2020/lib/admin/utility-wrapper.component.mjs +3 -3
  23. package/esm2020/lib/admin/utility.pane.component.mjs +3 -3
  24. package/esm2020/lib/app.component.mjs +6 -6
  25. package/esm2020/lib/bizdoc.module.mjs +4 -4
  26. package/esm2020/lib/browse/browse-items.component.mjs +6 -6
  27. package/esm2020/lib/browse/browse.mobile.component.mjs +4 -4
  28. package/esm2020/lib/browse/browse.pane.component.mjs +4 -4
  29. package/esm2020/lib/browse/expanded-item/expanded-item.component.mjs +3 -3
  30. package/esm2020/lib/browse/filter/filter.component.mjs +3 -3
  31. package/esm2020/lib/browse/folders-menu.component.mjs +3 -3
  32. package/esm2020/lib/chat/chat-info.mjs +3 -3
  33. package/esm2020/lib/chat/chat.mobile.component.mjs +3 -3
  34. package/esm2020/lib/chat/chat.service.mjs +3 -3
  35. package/esm2020/lib/chat/contacts.component.mjs +6 -6
  36. package/esm2020/lib/chat/contacts.pane.component.mjs +3 -3
  37. package/esm2020/lib/chat/conversation.component.mjs +3 -3
  38. package/esm2020/lib/chat/conversation.pane.component.mjs +3 -3
  39. package/esm2020/lib/compose/action/action-picker.component.mjs +3 -3
  40. package/esm2020/lib/compose/action/action.dialog.mjs +3 -3
  41. package/esm2020/lib/compose/action/action.pane.dialog.mjs +3 -3
  42. package/esm2020/lib/compose/action/assign-action.component.mjs +3 -3
  43. package/esm2020/lib/compose/action/return-action.component.mjs +3 -3
  44. package/esm2020/lib/compose/attachments/attachments.component.mjs +29 -21
  45. package/esm2020/lib/compose/attachments/preview/attachment-preview.component.mjs +10 -16
  46. package/esm2020/lib/compose/attachments/progress-button.directive.mjs +3 -3
  47. package/esm2020/lib/compose/can-deactivate-changes.service.mjs +3 -3
  48. package/esm2020/lib/compose/comments/Comments.pane.component.mjs +3 -3
  49. package/esm2020/lib/compose/comments/comment.component.mjs +3 -3
  50. package/esm2020/lib/compose/comments/comments.component.mjs +3 -3
  51. package/esm2020/lib/compose/comments/edit-comment.component.mjs +3 -3
  52. package/esm2020/lib/compose/comments/edits.component.mjs +3 -3
  53. package/esm2020/lib/compose/comments/quick-comment.component.exp.mjs +3 -3
  54. package/esm2020/lib/compose/comments/votes.component.mjs +3 -3
  55. package/esm2020/lib/compose/compose-resolve.service.mjs +6 -6
  56. package/esm2020/lib/compose/compose.mobile.component.mjs +5 -5
  57. package/esm2020/lib/compose/compose.pane.component.mjs +6 -6
  58. package/esm2020/lib/compose/copy/copy.dialog.mjs +3 -3
  59. package/esm2020/lib/compose/dismiss.service.mjs +3 -3
  60. package/esm2020/lib/compose/document-resolver.service.mjs +3 -3
  61. package/esm2020/lib/compose/document.component.mjs +3 -3
  62. package/esm2020/lib/compose/document.mobile.component.mjs +3 -3
  63. package/esm2020/lib/compose/document.pane.component.mjs +3 -3
  64. package/esm2020/lib/compose/events/events.component.mjs +3 -3
  65. package/esm2020/lib/compose/form-selector/form-selector.sheet.mjs +5 -5
  66. package/esm2020/lib/compose/form.component.mjs +37 -11
  67. package/esm2020/lib/compose/new-menu.component.mjs +5 -5
  68. package/esm2020/lib/compose/privilage.directive.mjs +6 -6
  69. package/esm2020/lib/compose/recipient-resolver.service.mjs +3 -3
  70. package/esm2020/lib/compose/save-changes.dialog.mjs +3 -3
  71. package/esm2020/lib/compose/state.component.mjs +3 -3
  72. package/esm2020/lib/compose/tag/tags.component.mjs +3 -3
  73. package/esm2020/lib/compose/trace/flow.component.mjs +10 -7
  74. package/esm2020/lib/compose/trace/people.component.mjs +3 -3
  75. package/esm2020/lib/compose/trace/trace.base.mjs +3 -3
  76. package/esm2020/lib/compose/trace/trace.component.mjs +44 -18
  77. package/esm2020/lib/compose/trace/trace.pane.component.mjs +4 -4
  78. package/esm2020/lib/compose/version-compare/version-compare.component.mjs +3 -3
  79. package/esm2020/lib/compose/version-compare/version-compare.directive.mjs +9 -9
  80. package/esm2020/lib/compose/version-compare/version.pane.component.mjs +3 -3
  81. package/esm2020/lib/core/NgComponentOutlet.mjs +3 -3
  82. package/esm2020/lib/core/account.service.mjs +3 -3
  83. package/esm2020/lib/core/animated-icon/animated-icon.directive.mjs +3 -3
  84. package/esm2020/lib/core/avatar/avatar.component.mjs +3 -3
  85. package/esm2020/lib/core/base.mjs +1 -1
  86. package/esm2020/lib/core/component-factory-resolver.mjs +3 -3
  87. package/esm2020/lib/core/configuration.mjs +2 -1
  88. package/esm2020/lib/core/controls/address.input.mjs +3 -3
  89. package/esm2020/lib/core/controls/auto-complete.input.mjs +3 -3
  90. package/esm2020/lib/core/controls/combination-picker-body.mjs +3 -3
  91. package/esm2020/lib/core/controls/combination-picker.mjs +3 -3
  92. package/esm2020/lib/core/controls/combination-pool.mjs +3 -3
  93. package/esm2020/lib/core/controls/file.input.mjs +360 -0
  94. package/esm2020/lib/core/controls/select.input.mjs +15 -13
  95. package/esm2020/lib/core/controls/time-picker.mjs +3 -3
  96. package/esm2020/lib/core/controls/timespan.input.mjs +3 -3
  97. package/esm2020/lib/core/datasource.service.mjs +23 -11
  98. package/esm2020/lib/core/functions.mjs +5 -1
  99. package/esm2020/lib/core/guide/guide.component.mjs +3 -3
  100. package/esm2020/lib/core/guide/guide.service.mjs +3 -3
  101. package/esm2020/lib/core/http.interceptor.mjs +3 -3
  102. package/esm2020/lib/core/hub.service.mjs +4 -4
  103. package/esm2020/lib/core/identity/identity.component.mjs +3 -3
  104. package/esm2020/lib/core/info/attachment-info.service.mjs +10 -12
  105. package/esm2020/lib/core/info/document-info.service.mjs +3 -3
  106. package/esm2020/lib/core/info/location-info.component.mjs +3 -3
  107. package/esm2020/lib/core/info/map-info.mjs +3 -3
  108. package/esm2020/lib/core/layout/autocomplete.field.mjs +4 -4
  109. package/esm2020/lib/core/layout/checkbox.field.mjs +3 -3
  110. package/esm2020/lib/core/layout/checkbox.mjs +3 -3
  111. package/esm2020/lib/core/layout/date-range.field.mjs +3 -3
  112. package/esm2020/lib/core/layout/date.field.mjs +3 -3
  113. package/esm2020/lib/core/layout/expression.field.mjs +3 -3
  114. package/esm2020/lib/core/layout/html.field.mjs +3 -3
  115. package/esm2020/lib/core/layout/input.base.mjs +3 -3
  116. package/esm2020/lib/core/layout/input.field.mjs +3 -3
  117. package/esm2020/lib/core/layout/layout.component.mjs +3 -3
  118. package/esm2020/lib/core/layout/numeric.field.mjs +3 -3
  119. package/esm2020/lib/core/layout/select.field.mjs +5 -5
  120. package/esm2020/lib/core/layout/switch.field.mjs +3 -3
  121. package/esm2020/lib/core/layout/textarea.field.mjs +3 -3
  122. package/esm2020/lib/core/layout/timespan.field.mjs +3 -3
  123. package/esm2020/lib/core/lottie-animation.mjs +3 -3
  124. package/esm2020/lib/core/mailbox.service.mjs +111 -35
  125. package/esm2020/lib/core/models.mjs +8 -1
  126. package/esm2020/lib/core/none.component.mjs +3 -3
  127. package/esm2020/lib/core/pipes/action.pipe.mjs +3 -3
  128. package/esm2020/lib/core/pipes/calendar.pipe.mjs +3 -3
  129. package/esm2020/lib/core/pipes/date-format.pipe.mjs +3 -3
  130. package/esm2020/lib/core/pipes/daterange.pipe.mjs +6 -6
  131. package/esm2020/lib/core/pipes/difference.pipe.mjs +3 -3
  132. package/esm2020/lib/core/pipes/duration-format.pipe.mjs +3 -3
  133. package/esm2020/lib/core/pipes/duration.pipe.mjs +3 -3
  134. package/esm2020/lib/core/pipes/form.pipe.mjs +3 -3
  135. package/esm2020/lib/core/pipes/join.pipe.mjs +3 -3
  136. package/esm2020/lib/core/pipes/role.pipe.mjs +3 -3
  137. package/esm2020/lib/core/pipes/sanitize-html.pipe.mjs +3 -3
  138. package/esm2020/lib/core/pipes/sort.pipe.mjs +6 -6
  139. package/esm2020/lib/core/pipes/state.pipe.mjs +3 -3
  140. package/esm2020/lib/core/pipes/time-ago.pipe.mjs +3 -3
  141. package/esm2020/lib/core/pipes/translate.pipe.mjs +6 -6
  142. package/esm2020/lib/core/pipes/type-value.pipe.mjs +3 -3
  143. package/esm2020/lib/core/pipes/user-name.pipe.mjs +3 -3
  144. package/esm2020/lib/core/popup/popup.component.mjs +3 -3
  145. package/esm2020/lib/core/popup/popup.service.mjs +3 -3
  146. package/esm2020/lib/core/popup/tooltip.directive.mjs +6 -6
  147. package/esm2020/lib/core/prompt/ask/ask.dialog.mjs +3 -3
  148. package/esm2020/lib/core/prompt/mask/mask.component.mjs +3 -3
  149. package/esm2020/lib/core/prompt.service.mjs +3 -3
  150. package/esm2020/lib/core/router.mjs +6 -6
  151. package/esm2020/lib/core/session.service.mjs +3 -3
  152. package/esm2020/lib/core/slots/pane-ref.mjs +3 -1
  153. package/esm2020/lib/core/slots/router.directive.mjs +3 -3
  154. package/esm2020/lib/core/slots/router.service.mjs +3 -3
  155. package/esm2020/lib/core/slots/slots.component.mjs +11 -7
  156. package/esm2020/lib/core/tagging/documents.component.mjs +3 -3
  157. package/esm2020/lib/core/tagging/edit-input.component.mjs +3 -3
  158. package/esm2020/lib/core/tagging/emoji.component.mjs +3 -3
  159. package/esm2020/lib/core/tagging/tagging-item.directive.mjs +3 -3
  160. package/esm2020/lib/core/tagging/tagging.component-base.mjs +3 -3
  161. package/esm2020/lib/core/tagging/tagging.directive.mjs +3 -3
  162. package/esm2020/lib/core/tagging/tagging.pipe.mjs +3 -3
  163. package/esm2020/lib/core/tagging/users.component.mjs +3 -3
  164. package/esm2020/lib/core/translate.service.mjs +3 -3
  165. package/esm2020/lib/core/translations.mjs +10 -2
  166. package/esm2020/lib/core/window-title.service.mjs +3 -3
  167. package/esm2020/lib/cube/accum/accum.component.mjs +16 -8
  168. package/esm2020/lib/cube/chart/chart.component.mjs +16 -8
  169. package/esm2020/lib/cube/cube-info.service.mjs +4 -4
  170. package/esm2020/lib/cube/cube-menu.component.mjs +3 -3
  171. package/esm2020/lib/cube/cube-view.component.mjs +3 -3
  172. package/esm2020/lib/cube/cube.service.mjs +4 -4
  173. package/esm2020/lib/cube/explore/document-item.component.mjs +3 -3
  174. package/esm2020/lib/cube/explore/explore-item.component.mjs +3 -3
  175. package/esm2020/lib/cube/explore/explore-items.component.mjs +18 -10
  176. package/esm2020/lib/cube/explore/explore.pane.component.mjs +14 -9
  177. package/esm2020/lib/cube/explore/item-resolver.service.mjs +6 -6
  178. package/esm2020/lib/cube/explore/item.pane.component.mjs +3 -3
  179. package/esm2020/lib/cube/filter/filter-tags.component.exp.mjs +3 -3
  180. package/esm2020/lib/cube/filter/filter.component.mjs +3 -3
  181. package/esm2020/lib/cube/grid/grid.component.mjs +3 -3
  182. package/esm2020/lib/cube/grid/spreadsheet.component.mjs +5 -5
  183. package/esm2020/lib/cube/matrix/matrix.base.mjs +3 -3
  184. package/esm2020/lib/cube/matrix/matrix.mobile.component.mjs +3 -3
  185. package/esm2020/lib/cube/matrix/matrix.pane.component.mjs +3 -3
  186. package/esm2020/lib/cube/matrix/popup.component.mjs +4 -4
  187. package/esm2020/lib/cube/matrix/table.component.mjs +5 -5
  188. package/esm2020/lib/cube/parallel/parallel.component.mjs +16 -8
  189. package/esm2020/lib/cube/pivot/pivot.component.mjs +21 -12
  190. package/esm2020/lib/cube/sum/sum.component.mjs +4 -4
  191. package/esm2020/lib/cube/view-base.mjs +3 -3
  192. package/esm2020/lib/cube/view.mobile.component.mjs +13 -7
  193. package/esm2020/lib/cube/view.pane.component.mjs +5 -6
  194. package/esm2020/lib/dashboard/actions/actions.widget.mjs +3 -3
  195. package/esm2020/lib/dashboard/cube/accum-cube.widget.mjs +3 -3
  196. package/esm2020/lib/dashboard/cube/cube-analysis.base.mjs +4 -4
  197. package/esm2020/lib/dashboard/cube/cube-analysis.widget.mjs +3 -3
  198. package/esm2020/lib/dashboard/cube/cube-chart.widget.mjs +3 -3
  199. package/esm2020/lib/dashboard/cube/documents.widget.mjs +3 -3
  200. package/esm2020/lib/dashboard/cube/filter/filter.component.mjs +3 -3
  201. package/esm2020/lib/dashboard/dashboard.component.mjs +3 -3
  202. package/esm2020/lib/dashboard/dashboard.pane.component.mjs +3 -3
  203. package/esm2020/lib/dashboard/recents/recents.widget.mjs +5 -5
  204. package/esm2020/lib/dashboard/score/activity.widget.mjs +3 -3
  205. package/esm2020/lib/dashboard/score/compare-departments.widget.mjs +3 -3
  206. package/esm2020/lib/dashboard/score/peers-performance.widget.mjs +3 -3
  207. package/esm2020/lib/dashboard/score/pending-results.widget.mjs +3 -3
  208. package/esm2020/lib/dashboard/score/personal-score.widget.mjs +3 -3
  209. package/esm2020/lib/dashboard/widget-item.component.mjs +3 -3
  210. package/esm2020/lib/desktop.module.mjs +4 -4
  211. package/esm2020/lib/home/about/about.dialog.mjs +3 -3
  212. package/esm2020/lib/home/home-base.component.mjs +5 -5
  213. package/esm2020/lib/home/home.desktop.component.mjs +3 -3
  214. package/esm2020/lib/home/home.mobile.component.mjs +3 -3
  215. package/esm2020/lib/home/notifications/notifications.component.mjs +3 -3
  216. package/esm2020/lib/home/options/options.component.mjs +3 -3
  217. package/esm2020/lib/home/outofoffice/outofoffice.component.mjs +3 -3
  218. package/esm2020/lib/home/search.service.mjs +3 -3
  219. package/esm2020/lib/home/sign/sign.component.mjs +3 -3
  220. package/esm2020/lib/home/tools.component.mjs +3 -3
  221. package/esm2020/lib/impersonate/impersonate.component.mjs +3 -3
  222. package/esm2020/lib/mobile.module.mjs +4 -4
  223. package/esm2020/lib/modules/chart.module.mjs +4 -4
  224. package/esm2020/lib/modules/circular-gauge.module.mjs +4 -4
  225. package/esm2020/lib/modules/date.adapter.mjs +3 -3
  226. package/esm2020/lib/modules/datepicker.intl.mjs +3 -3
  227. package/esm2020/lib/modules/diagram.module.mjs +4 -4
  228. package/esm2020/lib/modules/gantt.module.mjs +4 -4
  229. package/esm2020/lib/modules/grid.module.mjs +4 -4
  230. package/esm2020/lib/modules/material.module.mjs +4 -4
  231. package/esm2020/lib/modules/paginator.intl.mjs +3 -3
  232. package/esm2020/lib/modules/pivot.module.mjs +4 -4
  233. package/esm2020/lib/modules/schedule.module.mjs +4 -4
  234. package/esm2020/lib/modules/spreadsheet.module.mjs +4 -4
  235. package/esm2020/lib/modules/stepper.intl.mjs +3 -3
  236. package/esm2020/lib/modules/texteditor.module.mjs +4 -4
  237. package/esm2020/lib/notifications/filter.component.mjs +3 -3
  238. package/esm2020/lib/notifications/notifications-table.component.mjs +3 -3
  239. package/esm2020/lib/notifications/notifications.mobile.component.mjs +3 -3
  240. package/esm2020/lib/notifications/notifications.pane.component.mjs +3 -3
  241. package/esm2020/lib/notifications/notifications.service.mjs +3 -3
  242. package/esm2020/lib/notifications/types/commented.notification.mjs +3 -3
  243. package/esm2020/lib/notifications/types/cube-anomaly.notification.mjs +3 -3
  244. package/esm2020/lib/notifications/types/escalated.notification.mjs +3 -3
  245. package/esm2020/lib/notifications/types/liked.notification.mjs +3 -3
  246. package/esm2020/lib/notifications/types/long-running-task.notification.mjs +3 -3
  247. package/esm2020/lib/notifications/types/notification-base.mjs +3 -3
  248. package/esm2020/lib/notifications/types/nudge.notification.mjs +3 -3
  249. package/esm2020/lib/notifications/types/state-changed.notification.mjs +3 -3
  250. package/esm2020/lib/notifications/types/tagged.notification.mjs +3 -3
  251. package/esm2020/lib/notifications/types/text.notification.mjs +3 -3
  252. package/esm2020/lib/notifications/types/upcoming-event.notification.mjs +3 -3
  253. package/esm2020/lib/options/options.component.mjs +3 -3
  254. package/esm2020/lib/options/options.service.mjs +3 -3
  255. package/esm2020/lib/reports/arguments-component.mjs +3 -3
  256. package/esm2020/lib/reports/cube/grid-documents.component.mjs +3 -3
  257. package/esm2020/lib/reports/cube/table-documents.component.mjs +3 -3
  258. package/esm2020/lib/reports/cube/usage-args.component.mjs +3 -3
  259. package/esm2020/lib/reports/cube/usage-base.mjs +3 -3
  260. package/esm2020/lib/reports/cube/usage-chart.component.mjs +10 -10
  261. package/esm2020/lib/reports/cube/usage-pivot.component.mjs +3 -3
  262. package/esm2020/lib/reports/report-viewer.component.mjs +6 -6
  263. package/esm2020/lib/reports/report.mobile.component.mjs +3 -3
  264. package/esm2020/lib/reports/report.pane.component.mjs +3 -3
  265. package/esm2020/lib/reports/reports-menu.component.mjs +3 -3
  266. package/esm2020/lib/reports/substitution/substitution.component.mjs +3 -3
  267. package/esm2020/lib/reports/table/table-view.component.mjs +3 -3
  268. package/esm2020/lib/reports/tasks/tasks.component.mjs +3 -3
  269. package/esm2020/lib/routes.desktop.mjs +1 -1
  270. package/esm2020/lib/scheduler/schedule.component.mjs +4 -4
  271. package/esm2020/lib/scheduler/scheduler.mobile.component.mjs +3 -3
  272. package/esm2020/lib/scheduler/scheduler.pane.component.mjs +3 -3
  273. package/esm2020/lib/shared.module.mjs +10 -8
  274. package/esm2020/lib/system.module.mjs +4 -4
  275. package/esm2020/lib/views/cube/chart.component.mjs +4 -4
  276. package/esm2020/lib/views/cube/cube-base.mjs +4 -4
  277. package/esm2020/lib/views/cube/explore.component.mjs +4 -4
  278. package/esm2020/lib/views/cube/matrix.component.mjs +5 -5
  279. package/esm2020/lib/views/cube/parallel.component.mjs +5 -6
  280. package/esm2020/lib/views/cube/pivot.component.mjs +5 -5
  281. package/esm2020/lib/views/cube/sum.component.mjs +5 -5
  282. package/esm2020/lib/views/cube/view.component.mjs +3 -3
  283. package/esm2020/lib/views/timeline/timeline.component.exp.mjs +3 -3
  284. package/esm2020/lib/views/view-item.component.mjs +3 -3
  285. package/esm2020/lib/views/views.component.mjs +3 -3
  286. package/esm2020/lib/views/views.mobile.component.mjs +3 -3
  287. package/esm2020/lib/views/views.pane.component.mjs +3 -3
  288. package/esm2020/public-api.mjs +4 -3
  289. package/fesm2015/bizdoc-core.mjs +3720 -3171
  290. package/fesm2015/bizdoc-core.mjs.map +1 -1
  291. package/fesm2020/bizdoc-core.mjs +3730 -3179
  292. package/fesm2020/bizdoc-core.mjs.map +1 -1
  293. package/lib/browse/browse.mobile.component.d.ts +1 -0
  294. package/lib/browse/browse.pane.component.d.ts +1 -0
  295. package/lib/compose/attachments/preview/attachment-preview.component.d.ts +3 -4
  296. package/lib/compose/form.component.d.ts +1 -0
  297. package/lib/compose/trace/trace.component.d.ts +6 -0
  298. package/lib/core/base.d.ts +3 -1
  299. package/lib/core/configuration.d.ts +3 -1
  300. package/lib/core/controls/file.input.d.ts +87 -0
  301. package/lib/core/controls/select.input.d.ts +7 -5
  302. package/lib/core/datasource.service.d.ts +7 -4
  303. package/lib/core/functions.d.ts +1 -0
  304. package/lib/core/hub.service.d.ts +1 -2
  305. package/lib/core/info/attachment-info.service.d.ts +1 -2
  306. package/lib/core/mailbox.service.d.ts +25 -6
  307. package/lib/core/models.d.ts +10 -6
  308. package/lib/core/slots/pane-ref.d.ts +2 -0
  309. package/lib/core/translations.d.ts +8 -0
  310. package/lib/cube/accum/accum.component.d.ts +6 -3
  311. package/lib/cube/chart/chart.component.d.ts +6 -3
  312. package/lib/cube/cube-info.service.d.ts +2 -1
  313. package/lib/cube/cube.service.d.ts +1 -2
  314. package/lib/cube/explore/explore-items.component.d.ts +6 -3
  315. package/lib/cube/explore/explore.pane.component.d.ts +5 -4
  316. package/lib/cube/matrix/table.component.d.ts +2 -1
  317. package/lib/cube/parallel/parallel.component.d.ts +6 -3
  318. package/lib/cube/pivot/pivot.component.d.ts +4 -1
  319. package/lib/cube/sum/sum.component.d.ts +2 -1
  320. package/lib/cube/view.mobile.component.d.ts +3 -2
  321. package/lib/dashboard/cube/cube-analysis.base.d.ts +2 -1
  322. package/lib/shared.module.d.ts +176 -175
  323. package/lib/views/cube/chart.component.d.ts +2 -1
  324. package/lib/views/cube/cube-base.d.ts +2 -1
  325. package/lib/views/cube/explore.component.d.ts +2 -1
  326. package/lib/views/cube/matrix.component.d.ts +3 -2
  327. package/lib/views/cube/parallel.component.d.ts +1 -2
  328. package/lib/views/cube/pivot.component.d.ts +2 -1
  329. package/lib/views/cube/sum.component.d.ts +2 -1
  330. package/package.json +13 -13
  331. package/public-api.d.ts +4 -3
@@ -158,9 +158,9 @@ export class CommentComponent {
158
158
  });
159
159
  }
160
160
  }
161
- CommentComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.1.0", ngImport: i0, type: CommentComponent, deps: [{ token: i1.SessionService }, { token: i2.PromptService }, { token: i3.TranslateService }, { token: i4.ChatInfo }, { token: i5.AccountService }, { token: i6.Popup }, { token: i7.Overlay }, { token: i8.MailboxService }, { token: i0.ViewContainerRef }, { token: BIZDOC_CONFIG }], target: i0.ɵɵFactoryTarget.Component });
162
- CommentComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.1.0", type: CommentComponent, selector: "bizdoc-comment", inputs: { model: "model", item: "item" }, outputs: { deleted: "deleted", reply: "reply" }, host: { classAttribute: "comment" }, viewQueries: [{ propertyName: "bodyElement", first: true, predicate: ["body"], descendants: true }, { propertyName: "previewTemplate", first: true, predicate: ["previewTemplate"], descendants: true }], ngImport: i0, template: "<div class=\"row\">\r\n <div class=\"comment-body\" #body>\r\n <div [innerHTML]=\"item.text|taggingHtml:item.resource\" class=\"comment-text\"></div>\r\n <img *ngIf=\"item.image\" [src]=\"'data:image/png;base64,'+item.image\" alt=\"\" (click)=\"preview()\" />\r\n </div>\r\n <button mat-icon-button *ngIf=\"me\" [matMenuTriggerFor]=\"menu\" class=\"tool\" (click)=\"$event.stopPropagation()\"><mat-icon>more_vert</mat-icon></button>\r\n <mat-menu #menu>\r\n <ng-template matMenuContent>\r\n <button mat-menu-item (click)=\"edit()\">{{'Edit'|translate}}</button>\r\n <mat-divider></mat-divider>\r\n <button mat-menu-item (click)=\"delete()\">{{'Delete'|translate}}</button>\r\n </ng-template>\r\n </mat-menu>\r\n</div>\r\n<div class=\"row\">\r\n <div class=\"column\">\r\n <span [innerHTML]=\"name | sanitizeHtml\" (click)=\"chat($event)\"></span>\r\n <div>\r\n <small fxFlex bizdocTooltip=\"{{item.edited || item.time | amCalendar }}\">{{item.edited || item.time | amTimeAgo}}</small>\r\n <ng-container *ngIf=\"item.edited\">\r\n &nbsp;<a (click)=\"edits()\" class=\"modification\">{{'Edited'| translate}}</a>\r\n </ng-container>\r\n <ng-container *ngIf=\"!me\">\r\n &nbsp;<a (click)=\"reply.emit()\" class=\"modification\">{{'Reply'| translate}}</a>\r\n </ng-container>\r\n </div>\r\n </div>\r\n <div class=\"comment-actions\" *ngIf=\"voting\">\r\n <a *ngIf=\"item.votes > 0 || item.votes < 0\" [class.score-negative]=\"item.votes < 0\" class=\"comment-score\" dir=\"ltr\" (click)=\"votes()\" [bizdocTooltip]=\"'Votes'|translate\">{{item.votes}}</a>\r\n <button mat-icon-button (click)=\"vote(1, $event)\" [class.voted-true]=\"item.voted===1\" ><mat-icon>thumb_up_alt</mat-icon></button>\r\n <button mat-icon-button (click)=\"vote(-1, $event)\" [class.voted-false]=\"item.voted===-1\" ><mat-icon>thumb_down_alt</mat-icon></button>\r\n </div>\r\n</div>\r\n<ng-template #previewTemplate>\r\n <img [src]=\"'data:image/png;base64,'+item.image\" alt=\"\" />\r\n</ng-template>\r\n", components: [{ type: i9.MatButton, selector: "button[mat-button], button[mat-raised-button], button[mat-icon-button], button[mat-fab], button[mat-mini-fab], button[mat-stroked-button], button[mat-flat-button]", inputs: ["disabled", "disableRipple", "color"], exportAs: ["matButton"] }, { type: i10.MatIcon, selector: "mat-icon", inputs: ["color", "inline", "svgIcon", "fontSet", "fontIcon"], exportAs: ["matIcon"] }, { type: i11.MatMenu, selector: "mat-menu", exportAs: ["matMenu"] }, { type: i11.MatMenuItem, selector: "[mat-menu-item]", inputs: ["disabled", "disableRipple", "role"], exportAs: ["matMenuItem"] }, { type: i12.MatDivider, selector: "mat-divider", inputs: ["vertical", "inset"] }], directives: [{ type: i13.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { type: i11.MatMenuTrigger, selector: "[mat-menu-trigger-for], [matMenuTriggerFor]", exportAs: ["matMenuTrigger"] }, { type: i11.MatMenuContent, selector: "ng-template[matMenuContent]" }, { type: i14.DefaultFlexDirective, selector: " [fxFlex], [fxFlex.xs], [fxFlex.sm], [fxFlex.md], [fxFlex.lg], [fxFlex.xl], [fxFlex.lt-sm], [fxFlex.lt-md], [fxFlex.lt-lg], [fxFlex.lt-xl], [fxFlex.gt-xs], [fxFlex.gt-sm], [fxFlex.gt-md], [fxFlex.gt-lg]", inputs: ["fxFlex", "fxFlex.xs", "fxFlex.sm", "fxFlex.md", "fxFlex.lg", "fxFlex.xl", "fxFlex.lt-sm", "fxFlex.lt-md", "fxFlex.lt-lg", "fxFlex.lt-xl", "fxFlex.gt-xs", "fxFlex.gt-sm", "fxFlex.gt-md", "fxFlex.gt-lg"] }, { type: i15.TooltipDirective, selector: "[bizdocTooltip]", inputs: ["bizdocTooltip", "bizdocTooltipTemplate", "bizdocTooltipContext", "bizdocTooltipPosition", "bizdocTooltipDuration", "bizdocTooltipDisabled"] }, { type: i16.Dir, selector: "[dir]", inputs: ["dir"], outputs: ["dirChange"], exportAs: ["dir"] }], pipes: { "taggingHtml": i17.TaggingPipe, "translate": i18.TranslatePipe, "sanitizeHtml": i19.SanitizeHtmlPipe, "amCalendar": i20.CalendarPipe, "amTimeAgo": i21.TimeAgoPipe } });
163
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.1.0", ngImport: i0, type: CommentComponent, decorators: [{
161
+ CommentComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.1.1", ngImport: i0, type: CommentComponent, deps: [{ token: i1.SessionService }, { token: i2.PromptService }, { token: i3.TranslateService }, { token: i4.ChatInfo }, { token: i5.AccountService }, { token: i6.Popup }, { token: i7.Overlay }, { token: i8.MailboxService }, { token: i0.ViewContainerRef }, { token: BIZDOC_CONFIG }], target: i0.ɵɵFactoryTarget.Component });
162
+ CommentComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.1.1", type: CommentComponent, selector: "bizdoc-comment", inputs: { model: "model", item: "item" }, outputs: { deleted: "deleted", reply: "reply" }, host: { classAttribute: "comment" }, viewQueries: [{ propertyName: "bodyElement", first: true, predicate: ["body"], descendants: true }, { propertyName: "previewTemplate", first: true, predicate: ["previewTemplate"], descendants: true }], ngImport: i0, template: "<div class=\"row\">\r\n <div class=\"comment-body\" #body>\r\n <div [innerHTML]=\"item.text|taggingHtml:item.resource\" class=\"comment-text\"></div>\r\n <img *ngIf=\"item.image\" [src]=\"'data:image/png;base64,'+item.image\" alt=\"\" (click)=\"preview()\" />\r\n </div>\r\n <button mat-icon-button *ngIf=\"me\" [matMenuTriggerFor]=\"menu\" class=\"tool\" (click)=\"$event.stopPropagation()\"><mat-icon>more_vert</mat-icon></button>\r\n <mat-menu #menu>\r\n <ng-template matMenuContent>\r\n <button mat-menu-item (click)=\"edit()\">{{'Edit'|translate}}</button>\r\n <mat-divider></mat-divider>\r\n <button mat-menu-item (click)=\"delete()\">{{'Delete'|translate}}</button>\r\n </ng-template>\r\n </mat-menu>\r\n</div>\r\n<div class=\"row\">\r\n <div class=\"column\">\r\n <span [innerHTML]=\"name | sanitizeHtml\" (click)=\"chat($event)\"></span>\r\n <div>\r\n <small fxFlex bizdocTooltip=\"{{item.edited || item.time | amCalendar }}\">{{item.edited || item.time | amTimeAgo}}</small>\r\n <ng-container *ngIf=\"item.edited\">\r\n &nbsp;<a (click)=\"edits()\" class=\"modification\">{{'Edited'| translate}}</a>\r\n </ng-container>\r\n <ng-container *ngIf=\"!me\">\r\n &nbsp;<a (click)=\"reply.emit()\" class=\"modification\">{{'Reply'| translate}}</a>\r\n </ng-container>\r\n </div>\r\n </div>\r\n <div class=\"comment-actions\" *ngIf=\"voting\">\r\n <a *ngIf=\"item.votes > 0 || item.votes < 0\" [class.score-negative]=\"item.votes < 0\" class=\"comment-score\" dir=\"ltr\" (click)=\"votes()\" [bizdocTooltip]=\"'Votes'|translate\">{{item.votes}}</a>\r\n <button mat-icon-button (click)=\"vote(1, $event)\" [class.voted-true]=\"item.voted===1\" ><mat-icon>thumb_up_alt</mat-icon></button>\r\n <button mat-icon-button (click)=\"vote(-1, $event)\" [class.voted-false]=\"item.voted===-1\" ><mat-icon>thumb_down_alt</mat-icon></button>\r\n </div>\r\n</div>\r\n<ng-template #previewTemplate>\r\n <img [src]=\"'data:image/png;base64,'+item.image\" alt=\"\" />\r\n</ng-template>\r\n", components: [{ type: i9.MatButton, selector: "button[mat-button], button[mat-raised-button], button[mat-icon-button], button[mat-fab], button[mat-mini-fab], button[mat-stroked-button], button[mat-flat-button]", inputs: ["disabled", "disableRipple", "color"], exportAs: ["matButton"] }, { type: i10.MatIcon, selector: "mat-icon", inputs: ["color", "inline", "svgIcon", "fontSet", "fontIcon"], exportAs: ["matIcon"] }, { type: i11.MatMenu, selector: "mat-menu", exportAs: ["matMenu"] }, { type: i11.MatMenuItem, selector: "[mat-menu-item]", inputs: ["disabled", "disableRipple", "role"], exportAs: ["matMenuItem"] }, { type: i12.MatDivider, selector: "mat-divider", inputs: ["vertical", "inset"] }], directives: [{ type: i13.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { type: i11.MatMenuTrigger, selector: "[mat-menu-trigger-for], [matMenuTriggerFor]", exportAs: ["matMenuTrigger"] }, { type: i11.MatMenuContent, selector: "ng-template[matMenuContent]" }, { type: i14.DefaultFlexDirective, selector: " [fxFlex], [fxFlex.xs], [fxFlex.sm], [fxFlex.md], [fxFlex.lg], [fxFlex.xl], [fxFlex.lt-sm], [fxFlex.lt-md], [fxFlex.lt-lg], [fxFlex.lt-xl], [fxFlex.gt-xs], [fxFlex.gt-sm], [fxFlex.gt-md], [fxFlex.gt-lg]", inputs: ["fxFlex", "fxFlex.xs", "fxFlex.sm", "fxFlex.md", "fxFlex.lg", "fxFlex.xl", "fxFlex.lt-sm", "fxFlex.lt-md", "fxFlex.lt-lg", "fxFlex.lt-xl", "fxFlex.gt-xs", "fxFlex.gt-sm", "fxFlex.gt-md", "fxFlex.gt-lg"] }, { type: i15.TooltipDirective, selector: "[bizdocTooltip]", inputs: ["bizdocTooltip", "bizdocTooltipTemplate", "bizdocTooltipContext", "bizdocTooltipPosition", "bizdocTooltipDuration", "bizdocTooltipDisabled"] }, { type: i16.Dir, selector: "[dir]", inputs: ["dir"], outputs: ["dirChange"], exportAs: ["dir"] }], pipes: { "taggingHtml": i17.TaggingPipe, "translate": i18.TranslatePipe, "sanitizeHtml": i19.SanitizeHtmlPipe, "amCalendar": i20.CalendarPipe, "amTimeAgo": i21.TimeAgoPipe } });
163
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.1.1", ngImport: i0, type: CommentComponent, decorators: [{
164
164
  type: Component,
165
165
  args: [{ selector: 'bizdoc-comment', host: {
166
166
  class: 'comment'
@@ -203,9 +203,9 @@ export class CommentsComponent {
203
203
  window.localStorage.setItem(id, this.input.text);
204
204
  }
205
205
  }
206
- CommentsComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.1.0", ngImport: i0, type: CommentsComponent, deps: [{ token: i1.AccountService }, { token: i2.SessionService }, { token: i3.PromptService }, { token: i4.TranslateService }, { token: i5.ChatInfo }, { token: i6.MailboxService }, { token: i7.HubService }, { token: BIZDOC_CONFIG }], target: i0.ɵɵFactoryTarget.Component });
207
- CommentsComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.1.0", type: CommentsComponent, selector: "bizdoc-comments", inputs: { model: "model" }, outputs: { change: "change" }, host: { classAttribute: "comments" }, viewQueries: [{ propertyName: "threadElement", first: true, predicate: ["thread"], descendants: true, read: ElementRef, static: true }, { propertyName: "input", first: true, predicate: EditInputComponent, descendants: true, static: true }], usesOnChanges: true, ngImport: i0, template: "<bizdoc-none *ngIf=\"!model.comments.length\" icon=\"format_quote\"></bizdoc-none>\r\n\r\n<div fxLayout=\"column\" #thread (scroll)=\"onScroll($event)\" class=\"comments-thread\">\r\n <ng-container role=\"listitem\" *ngFor=\"let c of model.comments; trackBy: trackBy\">\r\n <bizdoc-comment *ngIf=\"!c.deleted || showDeleted; else deletedMsg\"\r\n [model]=\"model\"\r\n [item]=\"c\"\r\n (reply)=\"reply(c)\"\r\n (deleted)=\"deleted(c)\">\r\n </bizdoc-comment>\r\n </ng-container>\r\n</div>\r\n\r\n<div class=\"comments-typing\" [style.visibility]=\"typing ? 'visible': 'hidden'\">{{'Typing' | translate : typing}}</div>\r\n\r\n<div class=\"comments-reply\" *ngIf=\"replyName\">\r\n <span [innerHTML]=\"replyName | sanitizeHtml\" (click)=\"chat($event)\"></span>\r\n &nbsp; <a class=\"modification\" (click)=\"clearReply()\">{{'Cancel'|translate}}</a>\r\n</div>\r\n\r\n<bizdoc-edit-text (ok)=\"post($event)\" (change)=\"_textChange.next()\"\r\n [disabled]=\"sending\" (focus)=\"onFocus()\" (blur)=\"onBlur()\">\r\n</bizdoc-edit-text>\r\n\r\n<ng-template #deletedMsg>\r\n <a (click)=\"showDeleted = true\" class=\"comment-deleted\">{{'Deleted' | translate}}</a>\r\n</ng-template>\r\n", styles: [":host{display:flex;flex-direction:column;height:100%}.comments-thread{flex:1 1 auto;overflow:auto;padding:8px 8px 0}.comment-deleted{align-self:center;font-feature-settings:\"smcp\",\"c2sc\";font-variant:all-small-caps}.comments-typing,.comments-reply{font-size:12px;padding:0 8px}.comments-reply .modification{font-size:medium}.modification{font-feature-settings:\"smcp\",\"c2sc\";font-variant:all-small-caps}\n"], components: [{ type: i8.NoneComponent, selector: "bizdoc-none", inputs: ["title", "subtitle", "icon"] }, { type: i9.CommentComponent, selector: "bizdoc-comment", inputs: ["model", "item"], outputs: ["deleted", "reply"] }, { type: i10.EditInputComponent, selector: "bizdoc-edit-text", inputs: ["placeholder", "text", "image", "resource", "disabled", "autofocus", "cache"], outputs: ["change", "ok", "focus", "blur"] }], directives: [{ type: i11.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { type: i12.DefaultLayoutDirective, selector: " [fxLayout], [fxLayout.xs], [fxLayout.sm], [fxLayout.md], [fxLayout.lg], [fxLayout.xl], [fxLayout.lt-sm], [fxLayout.lt-md], [fxLayout.lt-lg], [fxLayout.lt-xl], [fxLayout.gt-xs], [fxLayout.gt-sm], [fxLayout.gt-md], [fxLayout.gt-lg]", inputs: ["fxLayout", "fxLayout.xs", "fxLayout.sm", "fxLayout.md", "fxLayout.lg", "fxLayout.xl", "fxLayout.lt-sm", "fxLayout.lt-md", "fxLayout.lt-lg", "fxLayout.lt-xl", "fxLayout.gt-xs", "fxLayout.gt-sm", "fxLayout.gt-md", "fxLayout.gt-lg"] }, { type: i11.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }], pipes: { "translate": i13.TranslatePipe, "sanitizeHtml": i14.SanitizeHtmlPipe } });
208
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.1.0", ngImport: i0, type: CommentsComponent, decorators: [{
206
+ CommentsComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.1.1", ngImport: i0, type: CommentsComponent, deps: [{ token: i1.AccountService }, { token: i2.SessionService }, { token: i3.PromptService }, { token: i4.TranslateService }, { token: i5.ChatInfo }, { token: i6.MailboxService }, { token: i7.HubService }, { token: BIZDOC_CONFIG }], target: i0.ɵɵFactoryTarget.Component });
207
+ CommentsComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.1.1", type: CommentsComponent, selector: "bizdoc-comments", inputs: { model: "model" }, outputs: { change: "change" }, host: { classAttribute: "comments" }, viewQueries: [{ propertyName: "threadElement", first: true, predicate: ["thread"], descendants: true, read: ElementRef, static: true }, { propertyName: "input", first: true, predicate: EditInputComponent, descendants: true, static: true }], usesOnChanges: true, ngImport: i0, template: "<bizdoc-none *ngIf=\"!model.comments.length\" icon=\"format_quote\"></bizdoc-none>\r\n\r\n<div fxLayout=\"column\" #thread (scroll)=\"onScroll($event)\" class=\"comments-thread\">\r\n <ng-container role=\"listitem\" *ngFor=\"let c of model.comments; trackBy: trackBy\">\r\n <bizdoc-comment *ngIf=\"!c.deleted || showDeleted; else deletedMsg\"\r\n [model]=\"model\"\r\n [item]=\"c\"\r\n (reply)=\"reply(c)\"\r\n (deleted)=\"deleted(c)\">\r\n </bizdoc-comment>\r\n </ng-container>\r\n</div>\r\n\r\n<div class=\"comments-typing\" [style.visibility]=\"typing ? 'visible': 'hidden'\">{{'Typing' | translate : typing}}</div>\r\n\r\n<div class=\"comments-reply\" *ngIf=\"replyName\">\r\n <span [innerHTML]=\"replyName | sanitizeHtml\" (click)=\"chat($event)\"></span>\r\n &nbsp; <a class=\"modification\" (click)=\"clearReply()\">{{'Cancel'|translate}}</a>\r\n</div>\r\n\r\n<bizdoc-edit-text (ok)=\"post($event)\" (change)=\"_textChange.next()\"\r\n [disabled]=\"sending\" (focus)=\"onFocus()\" (blur)=\"onBlur()\">\r\n</bizdoc-edit-text>\r\n\r\n<ng-template #deletedMsg>\r\n <a (click)=\"showDeleted = true\" class=\"comment-deleted\">{{'Deleted' | translate}}</a>\r\n</ng-template>\r\n", styles: [":host{display:flex;flex-direction:column;height:100%}.comments-thread{flex:1 1 auto;overflow:auto;padding:8px 8px 0}.comment-deleted{align-self:center;font-feature-settings:\"smcp\",\"c2sc\";font-variant:all-small-caps}.comments-typing,.comments-reply{font-size:12px;padding:0 8px}.comments-reply .modification{font-size:medium}.modification{font-feature-settings:\"smcp\",\"c2sc\";font-variant:all-small-caps}\n"], components: [{ type: i8.NoneComponent, selector: "bizdoc-none", inputs: ["title", "subtitle", "icon"] }, { type: i9.CommentComponent, selector: "bizdoc-comment", inputs: ["model", "item"], outputs: ["deleted", "reply"] }, { type: i10.EditInputComponent, selector: "bizdoc-edit-text", inputs: ["placeholder", "text", "image", "resource", "disabled", "autofocus", "cache"], outputs: ["change", "ok", "focus", "blur"] }], directives: [{ type: i11.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { type: i12.DefaultLayoutDirective, selector: " [fxLayout], [fxLayout.xs], [fxLayout.sm], [fxLayout.md], [fxLayout.lg], [fxLayout.xl], [fxLayout.lt-sm], [fxLayout.lt-md], [fxLayout.lt-lg], [fxLayout.lt-xl], [fxLayout.gt-xs], [fxLayout.gt-sm], [fxLayout.gt-md], [fxLayout.gt-lg]", inputs: ["fxLayout", "fxLayout.xs", "fxLayout.sm", "fxLayout.md", "fxLayout.lg", "fxLayout.xl", "fxLayout.lt-sm", "fxLayout.lt-md", "fxLayout.lt-lg", "fxLayout.lt-xl", "fxLayout.gt-xs", "fxLayout.gt-sm", "fxLayout.gt-md", "fxLayout.gt-lg"] }, { type: i11.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }], pipes: { "translate": i13.TranslatePipe, "sanitizeHtml": i14.SanitizeHtmlPipe } });
208
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.1.1", ngImport: i0, type: CommentsComponent, decorators: [{
209
209
  type: Component,
210
210
  args: [{ selector: 'bizdoc-comments', host: {
211
211
  class: 'comments'
@@ -20,9 +20,9 @@ export class EditCommentComponent {
20
20
  });
21
21
  }
22
22
  }
23
- EditCommentComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.1.0", ngImport: i0, type: EditCommentComponent, deps: [{ token: i1.PopupRef }, { token: POPUP_DATA }, { token: i2.PromptService }, { token: i3.MailboxService }], target: i0.ɵɵFactoryTarget.Component });
24
- EditCommentComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.1.0", type: EditCommentComponent, selector: "bizdoc-edit-comment", ngImport: i0, template: "<bizdoc-edit-text (ok)=\"ok($event)\"\r\n [resource]=\"data.resource\" [text]=\"data.text\" [image]=\"data.image\"\r\n [disabled]=\"sending\" autofocus></bizdoc-edit-text>\r\n", components: [{ type: i4.EditInputComponent, selector: "bizdoc-edit-text", inputs: ["placeholder", "text", "image", "resource", "disabled", "autofocus", "cache"], outputs: ["change", "ok", "focus", "blur"] }] });
25
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.1.0", ngImport: i0, type: EditCommentComponent, decorators: [{
23
+ EditCommentComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.1.1", ngImport: i0, type: EditCommentComponent, deps: [{ token: i1.PopupRef }, { token: POPUP_DATA }, { token: i2.PromptService }, { token: i3.MailboxService }], target: i0.ɵɵFactoryTarget.Component });
24
+ EditCommentComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.1.1", type: EditCommentComponent, selector: "bizdoc-edit-comment", ngImport: i0, template: "<bizdoc-edit-text (ok)=\"ok($event)\"\r\n [resource]=\"data.resource\" [text]=\"data.text\" [image]=\"data.image\"\r\n [disabled]=\"sending\" autofocus></bizdoc-edit-text>\r\n", components: [{ type: i4.EditInputComponent, selector: "bizdoc-edit-text", inputs: ["placeholder", "text", "image", "resource", "disabled", "autofocus", "cache"], outputs: ["change", "ok", "focus", "blur"] }] });
25
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.1.1", ngImport: i0, type: EditCommentComponent, decorators: [{
26
26
  type: Component,
27
27
  args: [{ selector: 'bizdoc-edit-comment', template: "<bizdoc-edit-text (ok)=\"ok($event)\"\r\n [resource]=\"data.resource\" [text]=\"data.text\" [image]=\"data.image\"\r\n [disabled]=\"sending\" autofocus></bizdoc-edit-text>\r\n" }]
28
28
  }], ctorParameters: function () { return [{ type: i1.PopupRef }, { type: undefined, decorators: [{
@@ -18,9 +18,9 @@ export class CommentEditsComponent {
18
18
  this.versions = this._mailbox.edits(this._data.documentId, this._data.id);
19
19
  }
20
20
  }
21
- CommentEditsComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.1.0", ngImport: i0, type: CommentEditsComponent, deps: [{ token: POPUP_DATA }, { token: i1.MailboxService }], target: i0.ɵɵFactoryTarget.Component });
22
- CommentEditsComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.1.0", type: CommentEditsComponent, selector: "bizdoc-comment-edits", ngImport: i0, template: "<span class=\"mat-title\">{{'History' | translate}}</span>\r\n\r\n<div *ngFor=\"let v of versions | async\" class=\"comment\">\r\n <p [innerHTML]=\"v.text|taggingHtml:resource\"></p>\r\n <bizdoc-identity-name class=\"mat-body\" [identity]=\"v.userId\" [by]=\"v.byId\" *ngIf=\"v.byId || byId\"></bizdoc-identity-name>\r\n <small>{{v.time | amCalendar}}</small>\r\n</div>\r\n", styles: [":host{padding:8px}\n"], components: [{ type: i2.IdentityName, selector: "bizdoc-identity-name", inputs: ["identity", "by", "chating"] }], directives: [{ type: i3.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { type: i3.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }], pipes: { "translate": i4.TranslatePipe, "async": i3.AsyncPipe, "taggingHtml": i5.TaggingPipe, "amCalendar": i6.CalendarPipe } });
23
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.1.0", ngImport: i0, type: CommentEditsComponent, decorators: [{
21
+ CommentEditsComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.1.1", ngImport: i0, type: CommentEditsComponent, deps: [{ token: POPUP_DATA }, { token: i1.MailboxService }], target: i0.ɵɵFactoryTarget.Component });
22
+ CommentEditsComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.1.1", type: CommentEditsComponent, selector: "bizdoc-comment-edits", ngImport: i0, template: "<span class=\"mat-title\">{{'History' | translate}}</span>\r\n\r\n<div *ngFor=\"let v of versions | async\" class=\"comment\">\r\n <p [innerHTML]=\"v.text|taggingHtml:resource\"></p>\r\n <bizdoc-identity-name class=\"mat-body\" [identity]=\"v.userId\" [by]=\"v.byId\" *ngIf=\"v.byId || byId\"></bizdoc-identity-name>\r\n <small>{{v.time | amCalendar}}</small>\r\n</div>\r\n", styles: [":host{padding:8px}\n"], components: [{ type: i2.IdentityName, selector: "bizdoc-identity-name", inputs: ["identity", "by", "chating"] }], directives: [{ type: i3.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { type: i3.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }], pipes: { "translate": i4.TranslatePipe, "async": i3.AsyncPipe, "taggingHtml": i5.TaggingPipe, "amCalendar": i6.CalendarPipe } });
23
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.1.1", ngImport: i0, type: CommentEditsComponent, decorators: [{
24
24
  type: Component,
25
25
  args: [{ selector: 'bizdoc-comment-edits', styles: [':host { padding: 8px }'], template: "<span class=\"mat-title\">{{'History' | translate}}</span>\r\n\r\n<div *ngFor=\"let v of versions | async\" class=\"comment\">\r\n <p [innerHTML]=\"v.text|taggingHtml:resource\"></p>\r\n <bizdoc-identity-name class=\"mat-body\" [identity]=\"v.userId\" [by]=\"v.byId\" *ngIf=\"v.byId || byId\"></bizdoc-identity-name>\r\n <small>{{v.time | amCalendar}}</small>\r\n</div>\r\n" }]
26
26
  }], ctorParameters: function () { return [{ type: undefined, decorators: [{
@@ -51,9 +51,9 @@ export class QuickCommentComponent {
51
51
  this._destroy.complete();
52
52
  }
53
53
  }
54
- QuickCommentComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.1.0", ngImport: i0, type: QuickCommentComponent, deps: [{ token: DOCUMENT_MODEL }, { token: i1.AccountService }, { token: i2.MailboxService }, { token: i3.HubService }, { token: i4.PromptService }], target: i0.ɵɵFactoryTarget.Component });
55
- QuickCommentComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.1.0", type: QuickCommentComponent, selector: "bizdoc-quick-comment", ngImport: i0, template: "<div class=\"comments-typing\" [style.visibility]=\"typing ? 'visible': 'hidden'\">{{'Typing' | translate : typing}}</div>\r\n<bizdoc-edit-text (ok)=\"post($event)\" (change)=\"_textChange.next()\"\r\n [disabled]=\"sending\" [placeholder]=\"''\">\r\n</bizdoc-edit-text>\r\n<div *ngIf=\"model.comments.length\">{{(model.comments.length === 1 ? 'OneComment' : 'CommentsCount') | translate: model.comments.length}}</div>\r\n", styles: [":host{display:flex;flex-direction:column}.comments-typing{font-size:12px;padding:0 8px}\n"], components: [{ type: i5.EditInputComponent, selector: "bizdoc-edit-text", inputs: ["placeholder", "text", "image", "resource", "disabled", "autofocus", "cache"], outputs: ["change", "ok", "focus", "blur"] }], directives: [{ type: i6.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }], pipes: { "translate": i7.TranslatePipe } });
56
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.1.0", ngImport: i0, type: QuickCommentComponent, decorators: [{
54
+ QuickCommentComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.1.1", ngImport: i0, type: QuickCommentComponent, deps: [{ token: DOCUMENT_MODEL }, { token: i1.AccountService }, { token: i2.MailboxService }, { token: i3.HubService }, { token: i4.PromptService }], target: i0.ɵɵFactoryTarget.Component });
55
+ QuickCommentComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.1.1", type: QuickCommentComponent, selector: "bizdoc-quick-comment", ngImport: i0, template: "<div class=\"comments-typing\" [style.visibility]=\"typing ? 'visible': 'hidden'\">{{'Typing' | translate : typing}}</div>\r\n<bizdoc-edit-text (ok)=\"post($event)\" (change)=\"_textChange.next()\"\r\n [disabled]=\"sending\" [placeholder]=\"''\">\r\n</bizdoc-edit-text>\r\n<div *ngIf=\"model.comments.length\">{{(model.comments.length === 1 ? 'OneComment' : 'CommentsCount') | translate: model.comments.length}}</div>\r\n", styles: [":host{display:flex;flex-direction:column}.comments-typing{font-size:12px;padding:0 8px}\n"], components: [{ type: i5.EditInputComponent, selector: "bizdoc-edit-text", inputs: ["placeholder", "text", "image", "resource", "disabled", "autofocus", "cache"], outputs: ["change", "ok", "focus", "blur"] }], directives: [{ type: i6.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }], pipes: { "translate": i7.TranslatePipe } });
56
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.1.1", ngImport: i0, type: QuickCommentComponent, decorators: [{
57
57
  type: Component,
58
58
  args: [{ selector: 'bizdoc-quick-comment', template: "<div class=\"comments-typing\" [style.visibility]=\"typing ? 'visible': 'hidden'\">{{'Typing' | translate : typing}}</div>\r\n<bizdoc-edit-text (ok)=\"post($event)\" (change)=\"_textChange.next()\"\r\n [disabled]=\"sending\" [placeholder]=\"''\">\r\n</bizdoc-edit-text>\r\n<div *ngIf=\"model.comments.length\">{{(model.comments.length === 1 ? 'OneComment' : 'CommentsCount') | translate: model.comments.length}}</div>\r\n", styles: [":host{display:flex;flex-direction:column}.comments-typing{font-size:12px;padding:0 8px}\n"] }]
59
59
  }], ctorParameters: function () { return [{ type: undefined, decorators: [{
@@ -30,9 +30,9 @@ export class CommentLikesComponent {
30
30
  this._destroy.complete();
31
31
  }
32
32
  }
33
- CommentLikesComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.1.0", ngImport: i0, type: CommentLikesComponent, deps: [{ token: POPUP_DATA }, { token: i1.MailboxService }, { token: i2.HubService }], target: i0.ɵɵFactoryTarget.Component });
34
- CommentLikesComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.1.0", type: CommentLikesComponent, selector: "bizdoc-comment-votes", ngImport: i0, template: "<span class=\"mat-title\">{{'Votes' | translate}}</span>\r\n<div *ngFor=\"let v of votes | async\" class=\"vote\">\r\n <bizdoc-identity-name class=\"mat-body\" [identity]=\"v.userId\" [by]=\"v.byId\"></bizdoc-identity-name>\r\n <button mat-icon-button><mat-icon>{{v.voted === 1 ? 'thumb_up_alt' : 'thumb_down_alt'}}</mat-icon></button>\r\n <br />\r\n <small bizdocTooltip=\"{{v.time | amCalendar }}\">{{v.time | amTimeAgo}}</small>\r\n</div>\r\n", styles: [":host{padding:8px}\n"], components: [{ type: i3.IdentityName, selector: "bizdoc-identity-name", inputs: ["identity", "by", "chating"] }, { type: i4.MatButton, selector: "button[mat-button], button[mat-raised-button], button[mat-icon-button], button[mat-fab], button[mat-mini-fab], button[mat-stroked-button], button[mat-flat-button]", inputs: ["disabled", "disableRipple", "color"], exportAs: ["matButton"] }, { type: i5.MatIcon, selector: "mat-icon", inputs: ["color", "inline", "svgIcon", "fontSet", "fontIcon"], exportAs: ["matIcon"] }], directives: [{ type: i6.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { type: i7.TooltipDirective, selector: "[bizdocTooltip]", inputs: ["bizdocTooltip", "bizdocTooltipTemplate", "bizdocTooltipContext", "bizdocTooltipPosition", "bizdocTooltipDuration", "bizdocTooltipDisabled"] }], pipes: { "translate": i8.TranslatePipe, "async": i6.AsyncPipe, "amCalendar": i9.CalendarPipe, "amTimeAgo": i10.TimeAgoPipe } });
35
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.1.0", ngImport: i0, type: CommentLikesComponent, decorators: [{
33
+ CommentLikesComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.1.1", ngImport: i0, type: CommentLikesComponent, deps: [{ token: POPUP_DATA }, { token: i1.MailboxService }, { token: i2.HubService }], target: i0.ɵɵFactoryTarget.Component });
34
+ CommentLikesComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.1.1", type: CommentLikesComponent, selector: "bizdoc-comment-votes", ngImport: i0, template: "<span class=\"mat-title\">{{'Votes' | translate}}</span>\r\n<div *ngFor=\"let v of votes | async\" class=\"vote\">\r\n <bizdoc-identity-name class=\"mat-body\" [identity]=\"v.userId\" [by]=\"v.byId\"></bizdoc-identity-name>\r\n <button mat-icon-button><mat-icon>{{v.voted === 1 ? 'thumb_up_alt' : 'thumb_down_alt'}}</mat-icon></button>\r\n <br />\r\n <small bizdocTooltip=\"{{v.time | amCalendar }}\">{{v.time | amTimeAgo}}</small>\r\n</div>\r\n", styles: [":host{padding:8px}\n"], components: [{ type: i3.IdentityName, selector: "bizdoc-identity-name", inputs: ["identity", "by", "chating"] }, { type: i4.MatButton, selector: "button[mat-button], button[mat-raised-button], button[mat-icon-button], button[mat-fab], button[mat-mini-fab], button[mat-stroked-button], button[mat-flat-button]", inputs: ["disabled", "disableRipple", "color"], exportAs: ["matButton"] }, { type: i5.MatIcon, selector: "mat-icon", inputs: ["color", "inline", "svgIcon", "fontSet", "fontIcon"], exportAs: ["matIcon"] }], directives: [{ type: i6.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { type: i7.TooltipDirective, selector: "[bizdocTooltip]", inputs: ["bizdocTooltip", "bizdocTooltipTemplate", "bizdocTooltipContext", "bizdocTooltipPosition", "bizdocTooltipDuration", "bizdocTooltipDisabled"] }], pipes: { "translate": i8.TranslatePipe, "async": i6.AsyncPipe, "amCalendar": i9.CalendarPipe, "amTimeAgo": i10.TimeAgoPipe } });
35
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.1.1", ngImport: i0, type: CommentLikesComponent, decorators: [{
36
36
  type: Component,
37
37
  args: [{ selector: 'bizdoc-comment-votes', styles: [':host { padding: 8px }'], template: "<span class=\"mat-title\">{{'Votes' | translate}}</span>\r\n<div *ngFor=\"let v of votes | async\" class=\"vote\">\r\n <bizdoc-identity-name class=\"mat-body\" [identity]=\"v.userId\" [by]=\"v.byId\"></bizdoc-identity-name>\r\n <button mat-icon-button><mat-icon>{{v.voted === 1 ? 'thumb_up_alt' : 'thumb_down_alt'}}</mat-icon></button>\r\n <br />\r\n <small bizdocTooltip=\"{{v.time | amCalendar }}\">{{v.time | amTimeAgo}}</small>\r\n</div>\r\n" }]
38
38
  }], ctorParameters: function () { return [{ type: undefined, decorators: [{
@@ -24,9 +24,9 @@ export class RecipientResolveService {
24
24
  return this._mailbox.get(id).pipe(tap(null, () => this._sb.error()));
25
25
  }
26
26
  }
27
- RecipientResolveService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.1.0", ngImport: i0, type: RecipientResolveService, deps: [{ token: i1.MailboxService }, { token: i2.PromptService }, { token: i3.Router }], target: i0.ɵɵFactoryTarget.Injectable });
28
- RecipientResolveService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "13.1.0", ngImport: i0, type: RecipientResolveService });
29
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.1.0", ngImport: i0, type: RecipientResolveService, decorators: [{
27
+ RecipientResolveService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.1.1", ngImport: i0, type: RecipientResolveService, deps: [{ token: i1.MailboxService }, { token: i2.PromptService }, { token: i3.Router }], target: i0.ɵɵFactoryTarget.Injectable });
28
+ RecipientResolveService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "13.1.1", ngImport: i0, type: RecipientResolveService });
29
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.1.1", ngImport: i0, type: RecipientResolveService, decorators: [{
30
30
  type: Injectable
31
31
  }], ctorParameters: function () { return [{ type: i1.MailboxService }, { type: i2.PromptService }, { type: i3.Router }]; } });
32
32
  /** */
@@ -47,9 +47,9 @@ export class DocumentResolveService {
47
47
  return this._mailbox.info(id).pipe(tap(null, () => this._sb.error()));
48
48
  }
49
49
  }
50
- DocumentResolveService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.1.0", ngImport: i0, type: DocumentResolveService, deps: [{ token: i1.MailboxService }, { token: i2.PromptService }, { token: i3.Router }], target: i0.ɵɵFactoryTarget.Injectable });
51
- DocumentResolveService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "13.1.0", ngImport: i0, type: DocumentResolveService });
52
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.1.0", ngImport: i0, type: DocumentResolveService, decorators: [{
50
+ DocumentResolveService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.1.1", ngImport: i0, type: DocumentResolveService, deps: [{ token: i1.MailboxService }, { token: i2.PromptService }, { token: i3.Router }], target: i0.ɵɵFactoryTarget.Injectable });
51
+ DocumentResolveService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "13.1.1", ngImport: i0, type: DocumentResolveService });
52
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.1.1", ngImport: i0, type: DocumentResolveService, decorators: [{
53
53
  type: Injectable
54
54
  }], ctorParameters: function () { return [{ type: i1.MailboxService }, { type: i2.PromptService }, { type: i3.Router }]; } });
55
55
  //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29tcG9zZS1yZXNvbHZlLnNlcnZpY2UuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9saWJyYXJpZXMvY29yZS9zcmMvbGliL2NvbXBvc2UvY29tcG9zZS1yZXNvbHZlLnNlcnZpY2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUUzQyxPQUFPLEVBQWMsRUFBRSxFQUFFLE1BQU0sTUFBTSxDQUFDO0FBQ3RDLE9BQU8sRUFBRSxHQUFHLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQzs7Ozs7QUFJckM7cUNBQ3FDO0FBRXJDLE1BQU0sT0FBTyx1QkFBdUI7SUFDbEMsWUFBb0IsUUFBd0IsRUFBVSxHQUFrQixFQUFVLE9BQWU7UUFBN0UsYUFBUSxHQUFSLFFBQVEsQ0FBZ0I7UUFBVSxRQUFHLEdBQUgsR0FBRyxDQUFlO1FBQVUsWUFBTyxHQUFQLE9BQU8sQ0FBUTtJQUUvRixDQUFDO0lBQ0QsT0FBTyxDQUFDLEtBQTZCO1FBQ3JDLE1BQU0sR0FBRyxHQUFHLElBQUksQ0FBQyxPQUFPLENBQUMsb0JBQW9CLEVBQUUsQ0FBQztRQUNoRCxJQUFJLEdBQUcsQ0FBQyxNQUFNLElBQUksR0FBRyxDQUFDLE1BQU0sQ0FBQyxLQUFLLEVBQUU7WUFDbEMsTUFBTSxJQUFJLEdBQUcsR0FBRyxDQUFDLE1BQU0sQ0FBQyxLQUFLLENBQUMsTUFBTSxDQUFDLENBQUM7WUFDcEMsSUFBSSxJQUFJO2dCQUNKLE9BQU8sRUFBRSxDQUFDLElBQUksQ0FBQyxDQUFDO1NBQ3ZCO1FBQ0csTUFBTSxFQUFFLEdBQUcsS0FBSyxDQUFDLFFBQVEsQ0FBQyxHQUFHLENBQUMsSUFBSSxDQUFDLENBQUMsUUFBUSxFQUFFLENBQUM7UUFDL0MsT0FBTyxJQUFJLENBQUMsUUFBUSxDQUFDLEdBQUcsQ0FBQyxFQUFFLENBQUMsQ0FBQyxJQUFJLENBQUMsR0FBRyxDQUFDLElBQUksRUFBRSxHQUFHLEVBQUUsQ0FBQyxJQUFJLENBQUMsR0FBRyxDQUFDLEtBQUssRUFBRSxDQUFDLENBQUMsQ0FBQztJQUMzRSxDQUFDOztvSEFiVSx1QkFBdUI7d0hBQXZCLHVCQUF1QjsyRkFBdkIsdUJBQXVCO2tCQURuQyxVQUFVOztBQWdCWCxNQUFNO0FBRU4sTUFBTSxPQUFPLHNCQUFzQjtJQUNqQyxZQUFvQixRQUF3QixFQUFVLEdBQWtCLEVBQVUsT0FBZTtRQUE3RSxhQUFRLEdBQVIsUUFBUSxDQUFnQjtRQUFVLFFBQUcsR0FBSCxHQUFHLENBQWU7UUFBVSxZQUFPLEdBQVAsT0FBTyxDQUFRO0lBRS9GLENBQUM7SUFDRCxPQUFPLENBQUMsS0FBNkI7UUFDckMsTUFBTSxJQUFJLEdBQUcsSUFBSSxDQUFDLE9BQU8sQ0FBQyxvQkFBb0IsRUFBRSxDQUFDO1FBQ2pELElBQUksSUFBSSxDQUFDLE1BQU0sSUFBSSxJQUFJLENBQUMsTUFBTSxDQUFDLEtBQUssRUFBRTtZQUNwQyxNQUFNLElBQUksR0FBRyxJQUFJLENBQUMsTUFBTSxDQUFDLEtBQUssQ0FBQyxNQUFNLENBQUMsQ0FBQztZQUNyQyxJQUFJLElBQUk7Z0JBQ0osT0FBTyxFQUFFLENBQUMsSUFBSSxDQUFDLENBQUM7U0FDdkI7UUFDRyxNQUFNLEVBQUUsR0FBRyxLQUFLLENBQUMsUUFBUSxDQUFDLEdBQUcsQ0FBQyxJQUFJLENBQUMsQ0FBQyxRQUFRLEVBQUUsQ0FBQztRQUMvQyxPQUFPLElBQUksQ0FBQyxRQUFRLENBQUMsSUFBSSxDQUFDLEVBQUUsQ0FBQyxDQUFDLElBQUksQ0FBQyxHQUFHLENBQUMsSUFBSSxFQUFFLEdBQUcsRUFBRSxDQUFDLElBQUksQ0FBQyxHQUFHLENBQUMsS0FBSyxFQUFFLENBQUMsQ0FBQyxDQUFDO0lBQzVFLENBQUM7O21IQWJVLHNCQUFzQjt1SEFBdEIsc0JBQXNCOzJGQUF0QixzQkFBc0I7a0JBRGxDLFVBQVUiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBJbmplY3RhYmxlIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XHJcbmltcG9ydCB7IFJlc29sdmUsIEFjdGl2YXRlZFJvdXRlU25hcHNob3QsIFJvdXRlciB9IGZyb20gJ0Bhbmd1bGFyL3JvdXRlcic7XHJcbmltcG9ydCB7IE9ic2VydmFibGUsIG9mIH0gZnJvbSAncnhqcyc7XHJcbmltcG9ydCB7IHRhcCB9IGZyb20gJ3J4anMvb3BlcmF0b3JzJztcclxuaW1wb3J0IHsgRG9jdW1lbnRNb2RlbCwgUmVjaXBpZW50TW9kZWwgfSBmcm9tICcuLi9jb3JlL21vZGVscyc7XHJcbmltcG9ydCB7IE1haWxib3hTZXJ2aWNlIH0gZnJvbSAnLi4vY29yZS9tYWlsYm94LnNlcnZpY2UnO1xyXG5pbXBvcnQgeyBQcm9tcHRTZXJ2aWNlIH0gZnJvbSAnLi4vY29yZS9wcm9tcHQuc2VydmljZSc7XHJcbi8qKlxyXG4gKiBnZXQgbW9kZWwgYmVmb3JlIHJvdXRlIG5hdmlnYXRlICovXHJcbkBJbmplY3RhYmxlKClcclxuZXhwb3J0IGNsYXNzIFJlY2lwaWVudFJlc29sdmVTZXJ2aWNlIGltcGxlbWVudHMgUmVzb2x2ZTx2b2lkIHwgUmVjaXBpZW50TW9kZWw8YW55Pj57XHJcbiAgY29uc3RydWN0b3IocHJpdmF0ZSBfbWFpbGJveDogTWFpbGJveFNlcnZpY2UsIHByaXZhdGUgX3NiOiBQcm9tcHRTZXJ2aWNlLCBwcml2YXRlIF9yb3V0ZXI6IFJvdXRlcikge1xyXG5cclxuICAgIH1cclxuICAgIHJlc29sdmUocm91dGU6IEFjdGl2YXRlZFJvdXRlU25hcHNob3QpOiBPYnNlcnZhYmxlPHZvaWQgfCBSZWNpcGllbnRNb2RlbDxhbnk+PiB7XHJcbiAgICBjb25zdCBuYXYgPSB0aGlzLl9yb3V0ZXIuZ2V0Q3VycmVudE5hdmlnYXRpb24oKTtcclxuICAgIGlmIChuYXYuZXh0cmFzICYmIG5hdi5leHRyYXMuc3RhdGUpIHtcclxuICAgICAgY29uc3QgaXRlbSA9IG5hdi5leHRyYXMuc3RhdGVbJ2l0ZW0nXTtcclxuICAgICAgICBpZiAoaXRlbSlcclxuICAgICAgICAgICAgcmV0dXJuIG9mKGl0ZW0pO1xyXG4gICAgfVxyXG4gICAgICAgIGNvbnN0IGlkID0gcm91dGUucGFyYW1NYXAuZ2V0KCdpZCcpLmRlY29kZUlkKCk7XHJcbiAgICAgICAgcmV0dXJuIHRoaXMuX21haWxib3guZ2V0KGlkKS5waXBlKHRhcChudWxsLCAoKSA9PiB0aGlzLl9zYi5lcnJvcigpKSk7XHJcbiAgfVxyXG59XHJcbi8qKiAqL1xyXG5ASW5qZWN0YWJsZSgpXHJcbmV4cG9ydCBjbGFzcyBEb2N1bWVudFJlc29sdmVTZXJ2aWNlIGltcGxlbWVudHMgUmVzb2x2ZTx2b2lkIHwgRG9jdW1lbnRNb2RlbDxhbnk+PntcclxuICBjb25zdHJ1Y3Rvcihwcml2YXRlIF9tYWlsYm94OiBNYWlsYm94U2VydmljZSwgcHJpdmF0ZSBfc2I6IFByb21wdFNlcnZpY2UsIHByaXZhdGUgX3JvdXRlcjogUm91dGVyKSB7XHJcblxyXG4gICAgfVxyXG4gICAgcmVzb2x2ZShyb3V0ZTogQWN0aXZhdGVkUm91dGVTbmFwc2hvdCk6IE9ic2VydmFibGU8dm9pZCB8IERvY3VtZW50TW9kZWw8YW55Pj4ge1xyXG4gICAgY29uc3QgZGF0YSA9IHRoaXMuX3JvdXRlci5nZXRDdXJyZW50TmF2aWdhdGlvbigpO1xyXG4gICAgaWYgKGRhdGEuZXh0cmFzICYmIGRhdGEuZXh0cmFzLnN0YXRlKSB7XHJcbiAgICAgIGNvbnN0IGl0ZW0gPSBkYXRhLmV4dHJhcy5zdGF0ZVsnaXRlbSddO1xyXG4gICAgICAgIGlmIChpdGVtKVxyXG4gICAgICAgICAgICByZXR1cm4gb2YoaXRlbSk7XHJcbiAgICB9XHJcbiAgICAgICAgY29uc3QgaWQgPSByb3V0ZS5wYXJhbU1hcC5nZXQoJ2lkJykuZGVjb2RlSWQoKTtcclxuICAgICAgICByZXR1cm4gdGhpcy5fbWFpbGJveC5pbmZvKGlkKS5waXBlKHRhcChudWxsLCAoKSA9PiB0aGlzLl9zYi5lcnJvcigpKSk7XHJcbiAgfVxyXG59XHJcbiJdfQ==
@@ -35,7 +35,7 @@ export class ComposeComponent {
35
35
  this._route = _route;
36
36
  this.isMobile = isMobile();
37
37
  this._destroy = new Subject();
38
- this.enableAnalysis = config.analysis !== false && _session.profile.views.length > 0;
38
+ this.enableAnalysis = _session.profile.views.length > 0;
39
39
  }
40
40
  ngOnInit() {
41
41
  this._route.data.subscribe(() => {
@@ -91,9 +91,9 @@ export class ComposeComponent {
91
91
  this._destroy.complete();
92
92
  }
93
93
  }
94
- ComposeComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.1.0", ngImport: i0, type: ComposeComponent, deps: [{ token: i1.WindowTitleService }, { token: i2.SessionService }, { token: i3.Router }, { token: i3.ActivatedRoute }, { token: BIZDOC_CONFIG }], target: i0.ɵɵFactoryTarget.Component });
95
- ComposeComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.1.0", type: ComposeComponent, selector: "ng-component", viewQueries: [{ propertyName: "form", first: true, predicate: ComposeFormComponent, descendants: true, static: true }, { propertyName: "comments", first: true, predicate: CommentsComponent, descendants: true }, { propertyName: "drawer", first: true, predicate: MatSidenav, descendants: true, static: true }], ngImport: i0, template: "<mat-toolbar class=\"nav-toolbar\">\r\n <button mat-icon-button color=\"primary\" (click)=\"form.back()\" [bizdocTooltip]=\"'Back'|translate\" *ngIf=\"form.page !== undefined\" tabindex=\"1\">\r\n <mat-icon class=\"mat-icon-rtl-mirror\">arrow_back</mat-icon>\r\n </button>\r\n <button mat-icon-button color=\"primary\" *ngIf=\"model.draft\" data-help=\"submit\"\r\n (click)=\"submit()\" [disabled]=\"!valid||working\" [bizdocTooltip]=\"'Submit' | translate\">\r\n <mat-icon class=\"mat-icon-rtl-mirror\">send</mat-icon>\r\n </button>\r\n <button mat-icon-button color=\"primary\" *ngIf=\"form.actions.length === 1\" [attr.data-help]=\"'action-'+form.actions[0].name\" (click)=\"send(model.actions[0])\" [disabled]=\"!valid||working\" [bizdocTooltip]=\"form.actions[0].title\">\r\n <mat-icon class=\"mat-icon-rtl-mirror\">{{form.actions[0].icon || 'send'}}</mat-icon>\r\n </button>\r\n <button mat-icon-button data-help=\"send\" color=\"primary\" *ngIf=\"form.actions.length > 1\" [matMenuTriggerFor]=\"actionmenu\" [disabled]=\"!valid||working\" [bizdocTooltip]=\"'Send' | translate\">\r\n <mat-icon class=\"mat-icon-rtl-mirror\">send</mat-icon>\r\n </button>\r\n <!-- action -->\r\n <mat-menu #actionmenu>\r\n <ng-container *ngFor=\"let a of form.actions | sort : 'group'; let i = index\">\r\n <mat-divider *ngIf=\"i>0 && form.actions[i-1].group !== a.group\"></mat-divider>\r\n <button mat-menu-item (click)=\"send(a.name)\">{{a.title}}</button>\r\n </ng-container>\r\n </mat-menu>\r\n <button mat-icon-button (click)=\"form.save().subscribe()\" data-help=\"save\" [disabled]=\"!dirty||working\" [bizdocTooltip]=\"(model.draft ? 'SaveDraft' : 'Save') | translate\" *ngIf=\"mode === 'compose'\">\r\n <mat-icon>save</mat-icon>\r\n </button>\r\n <button mat-icon-button data-help=\"tag\" (click)=\"form.tag($event)\" [bizdocTooltip]=\"'Tags' | translate\" [disabled]=\"working\"><mat-icon class=\"filled\">{{model.tags && model.tags.length ?'bookmark':'bookmark_border'}}</mat-icon></button>\r\n <button mat-icon-button data-help=\"flag\" [bizdocTooltip]=\"'Flagged'| translate\" [disabled]=\"working\" (click)=\"form.flag()\"><mat-icon class=\"filled\">{{model.flag ? 'star' : 'star_border'}}</mat-icon></button>\r\n <button mat-icon-button (click)=\"form.attach()\" data-help=\"attach\" [bizdocTooltip]=\"'AttachFile' | translate\" [disabled]=\"working\"><mat-icon>attach_file</mat-icon></button>\r\n <button mat-icon-button [disabled]=\"working\" data-help=\"edit\" (click)=\"edit()\" [bizdocTooltip]=\"'Edit' | translate\" *ngIf=\"mode !== 'compose' && !model.completed && model.pending\"><mat-icon>create</mat-icon></button>\r\n <span class=\"divider\"></span> \r\n <button mat-icon-button (click)=\"toggle('comments')\" data-help=\"comments\" [bizdocTooltip]=\"'Comments' | translate\" [matBadge]=\"newCommentsCount\" [matBadgeHidden]=\"!newCommentsCount\" matBadgeColor=\"accent\">\r\n <mat-icon class=\"filled\">format_quote</mat-icon>\r\n </button>\r\n <button mat-icon-button (click)=\"toggle('views')\" [bizdocTooltip]=\"'View' | translate\" [attr.aria-label]=\"'View' | translate\" *ngIf=\"enableAnalysis\" class=\"tool\"><mat-icon>data_usage</mat-icon></button>\r\n <button mat-icon-button [matMenuTriggerFor]=\"optionsMenu\" [bizdocTooltip]=\"'Options' | translate\" [attr.aria-label]=\"'Options' | translate\"><mat-icon>more_vert</mat-icon></button>\r\n <mat-menu #optionsMenu=\"matMenu\">\r\n <ng-template matMenuContent>\r\n <button mat-menu-item (click)=\"form.copy()\" [disabled]=\"working\">\r\n <!--<mat-icon>content_copy</mat-icon>-->\r\n <span>{{'Copy' | translate}}</span>\r\n </button>\r\n <button mat-menu-item (click)=\"discard()\" *ngIf=\"model.draft && !model.issued\" [disabled]=\"working\">\r\n <!--<mat-icon>delete_outlined</mat-icon>-->\r\n <span>{{'Discard' | translate}}</span>\r\n </button>\r\n <ng-container *ngIf=\"form.help\">\r\n <mat-divider></mat-divider>\r\n <button mat-menu-item (click)=\"form.guide(form.help)\">\r\n <!--<mat-icon>help_outline</mat-icon>-->\r\n <span>{{'Help' | translate}}</span>\r\n </button>\r\n </ng-container>\r\n </ng-template>\r\n </mat-menu>\r\n</mat-toolbar>\r\n<mat-sidenav-container class=\"page-container\">\r\n <mat-sidenav-content>\r\n <bizdoc-form [model]=model #form (validChange)=\"valid=$event\"\r\n (workingChange)=\"working=$event\"\r\n (dirtyChange)=\"dirty=$event\" [mode]=\"mode\"></bizdoc-form>\r\n </mat-sidenav-content>\r\n <mat-sidenav mode=\"over\" position=\"end\" [opened]=\"false\" #drawer autoFocus=\"false\" class=\"side-nav\">\r\n <ng-container [ngSwitch]=\"viewMode\">\r\n <bizdoc-document-views [model]=\"model\" *ngSwitchCase=\"'views'\"></bizdoc-document-views>\r\n <bizdoc-comments [model]=\"model\" *ngSwitchDefault></bizdoc-comments>\r\n </ng-container>\r\n </mat-sidenav>\r\n</mat-sidenav-container>\r\n", styles: [".page-container ::ng-deep form{padding:6px}.side-nav{min-width:280px}\n"], components: [{ type: i4.MatToolbar, selector: "mat-toolbar", inputs: ["color"], exportAs: ["matToolbar"] }, { type: i5.MatButton, selector: "button[mat-button], button[mat-raised-button], button[mat-icon-button], button[mat-fab], button[mat-mini-fab], button[mat-stroked-button], button[mat-flat-button]", inputs: ["disabled", "disableRipple", "color"], exportAs: ["matButton"] }, { type: i6.MatIcon, selector: "mat-icon", inputs: ["color", "inline", "svgIcon", "fontSet", "fontIcon"], exportAs: ["matIcon"] }, { type: i7.MatMenu, selector: "mat-menu", exportAs: ["matMenu"] }, { type: i8.MatDivider, selector: "mat-divider", inputs: ["vertical", "inset"] }, { type: i7.MatMenuItem, selector: "[mat-menu-item]", inputs: ["disabled", "disableRipple", "role"], exportAs: ["matMenuItem"] }, { type: i9.MatSidenavContainer, selector: "mat-sidenav-container", exportAs: ["matSidenavContainer"] }, { type: i9.MatSidenavContent, selector: "mat-sidenav-content" }, { type: i10.ComposeFormComponent, selector: "bizdoc-form", inputs: ["model", "working", "dirty", "valid", "mode", "contacts"], outputs: ["modelChange", "workingChange", "dirtyChange", "validChange"] }, { type: i9.MatSidenav, selector: "mat-sidenav", inputs: ["fixedInViewport", "fixedTopGap", "fixedBottomGap"], exportAs: ["matSidenav"] }, { type: i11.DocumentViewsComponent, selector: "bizdoc-document-views", inputs: ["model"] }, { type: i12.CommentsComponent, selector: "bizdoc-comments", inputs: ["model"], outputs: ["change"] }], directives: [{ type: i13.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { type: i14.TooltipDirective, selector: "[bizdocTooltip]", inputs: ["bizdocTooltip", "bizdocTooltipTemplate", "bizdocTooltipContext", "bizdocTooltipPosition", "bizdocTooltipDuration", "bizdocTooltipDisabled"] }, { type: i7.MatMenuTrigger, selector: "[mat-menu-trigger-for], [matMenuTriggerFor]", exportAs: ["matMenuTrigger"] }, { type: i13.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { type: i15.MatBadge, selector: "[matBadge]", inputs: ["matBadgeDisabled", "matBadgeColor", "matBadgeOverlap", "matBadgePosition", "matBadge", "matBadgeDescription", "matBadgeSize", "matBadgeHidden"] }, { type: i7.MatMenuContent, selector: "ng-template[matMenuContent]" }, { type: i13.NgSwitch, selector: "[ngSwitch]", inputs: ["ngSwitch"] }, { type: i13.NgSwitchCase, selector: "[ngSwitchCase]", inputs: ["ngSwitchCase"] }, { type: i13.NgSwitchDefault, selector: "[ngSwitchDefault]" }], pipes: { "translate": i16.TranslatePipe, "sort": i17.ArraySortPipe } });
96
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.1.0", ngImport: i0, type: ComposeComponent, decorators: [{
94
+ ComposeComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.1.1", ngImport: i0, type: ComposeComponent, deps: [{ token: i1.WindowTitleService }, { token: i2.SessionService }, { token: i3.Router }, { token: i3.ActivatedRoute }, { token: BIZDOC_CONFIG }], target: i0.ɵɵFactoryTarget.Component });
95
+ ComposeComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.1.1", type: ComposeComponent, selector: "ng-component", viewQueries: [{ propertyName: "form", first: true, predicate: ComposeFormComponent, descendants: true, static: true }, { propertyName: "comments", first: true, predicate: CommentsComponent, descendants: true }, { propertyName: "drawer", first: true, predicate: MatSidenav, descendants: true, static: true }], ngImport: i0, template: "<mat-toolbar class=\"nav-toolbar\">\r\n <button mat-icon-button color=\"primary\" (click)=\"form.back()\" [bizdocTooltip]=\"'Back'|translate\" *ngIf=\"form.page !== undefined\" tabindex=\"1\">\r\n <mat-icon class=\"mat-icon-rtl-mirror\">arrow_back</mat-icon>\r\n </button>\r\n <button mat-icon-button color=\"primary\" *ngIf=\"model.draft\" data-help=\"submit\"\r\n (click)=\"submit()\" [disabled]=\"!valid||working\" [bizdocTooltip]=\"'Submit' | translate\">\r\n <mat-icon class=\"mat-icon-rtl-mirror\">send</mat-icon>\r\n </button>\r\n <button mat-icon-button color=\"primary\" *ngIf=\"form.actions.length === 1\" [attr.data-help]=\"'action-'+form.actions[0].name\" (click)=\"send(model.actions[0])\" [disabled]=\"!valid||working\" [bizdocTooltip]=\"form.actions[0].title\">\r\n <mat-icon class=\"mat-icon-rtl-mirror\">{{form.actions[0].icon || 'send'}}</mat-icon>\r\n </button>\r\n <button mat-icon-button data-help=\"send\" color=\"primary\" *ngIf=\"form.actions.length > 1\" [matMenuTriggerFor]=\"actionmenu\" [disabled]=\"!valid||working\" [bizdocTooltip]=\"'Send' | translate\">\r\n <mat-icon class=\"mat-icon-rtl-mirror\">send</mat-icon>\r\n </button>\r\n <!-- action -->\r\n <mat-menu #actionmenu>\r\n <ng-container *ngFor=\"let a of form.actions | sort : 'group'; let i = index\">\r\n <mat-divider *ngIf=\"i>0 && form.actions[i-1].group !== a.group\"></mat-divider>\r\n <button mat-menu-item (click)=\"send(a.name)\">{{a.title}}</button>\r\n </ng-container>\r\n </mat-menu>\r\n <button mat-icon-button (click)=\"form.save().subscribe()\" data-help=\"save\" [disabled]=\"!dirty||working\" [bizdocTooltip]=\"(model.draft ? 'SaveDraft' : 'Save') | translate\" *ngIf=\"mode === 'compose'\">\r\n <mat-icon>save</mat-icon>\r\n </button>\r\n <button mat-icon-button data-help=\"tag\" (click)=\"form.tag($event)\" [bizdocTooltip]=\"'Tags' | translate\" [disabled]=\"working\"><mat-icon class=\"filled\">{{model.tags && model.tags.length ?'bookmark':'bookmark_border'}}</mat-icon></button>\r\n <button mat-icon-button data-help=\"flag\" [bizdocTooltip]=\"'Flagged'| translate\" [disabled]=\"working\" (click)=\"form.flag()\"><mat-icon class=\"filled\">{{model.flag ? 'star' : 'star_border'}}</mat-icon></button>\r\n <button mat-icon-button (click)=\"form.attach()\" data-help=\"attach\" [bizdocTooltip]=\"'AttachFile' | translate\" [disabled]=\"working\"><mat-icon>attach_file</mat-icon></button>\r\n <button mat-icon-button [disabled]=\"working\" data-help=\"edit\" (click)=\"edit()\" [bizdocTooltip]=\"'Edit' | translate\" *ngIf=\"mode !== 'compose' && !model.completed && model.pending\"><mat-icon>create</mat-icon></button>\r\n <span class=\"divider\"></span> \r\n <button mat-icon-button (click)=\"toggle('comments')\" data-help=\"comments\" [bizdocTooltip]=\"'Comments' | translate\" [matBadge]=\"newCommentsCount\" [matBadgeHidden]=\"!newCommentsCount\" matBadgeColor=\"accent\">\r\n <mat-icon class=\"filled\">format_quote</mat-icon>\r\n </button>\r\n <button mat-icon-button (click)=\"toggle('views')\" [bizdocTooltip]=\"'View' | translate\" [attr.aria-label]=\"'View' | translate\" *ngIf=\"enableAnalysis\" class=\"tool\"><mat-icon>data_usage</mat-icon></button>\r\n <button mat-icon-button [matMenuTriggerFor]=\"optionsMenu\" [bizdocTooltip]=\"'Options' | translate\" [attr.aria-label]=\"'Options' | translate\"><mat-icon>more_vert</mat-icon></button>\r\n <mat-menu #optionsMenu=\"matMenu\">\r\n <ng-template matMenuContent>\r\n <button mat-menu-item (click)=\"form.copy()\" [disabled]=\"working\">\r\n <!--<mat-icon>content_copy</mat-icon>-->\r\n <span>{{'Copy' | translate}}</span>\r\n </button>\r\n <button mat-menu-item (click)=\"discard()\" *ngIf=\"model.draft && !model.issued\" [disabled]=\"working\">\r\n <!--<mat-icon>delete_outlined</mat-icon>-->\r\n <span>{{'Discard' | translate}}</span>\r\n </button>\r\n <ng-container *ngIf=\"form.help\">\r\n <mat-divider></mat-divider>\r\n <button mat-menu-item (click)=\"form.guide(form.help)\">\r\n <!--<mat-icon>help_outline</mat-icon>-->\r\n <span>{{'Help' | translate}}</span>\r\n </button>\r\n </ng-container>\r\n </ng-template>\r\n </mat-menu>\r\n</mat-toolbar>\r\n<mat-sidenav-container class=\"page-container\">\r\n <mat-sidenav-content>\r\n <bizdoc-form [model]=model #form (validChange)=\"valid=$event\"\r\n (workingChange)=\"working=$event\"\r\n (dirtyChange)=\"dirty=$event\" [mode]=\"mode\"></bizdoc-form>\r\n </mat-sidenav-content>\r\n <mat-sidenav mode=\"over\" position=\"end\" [opened]=\"false\" #drawer autoFocus=\"false\" class=\"side-nav\">\r\n <ng-container [ngSwitch]=\"viewMode\">\r\n <bizdoc-document-views [model]=\"model\" *ngSwitchCase=\"'views'\"></bizdoc-document-views>\r\n <bizdoc-comments [model]=\"model\" *ngSwitchDefault></bizdoc-comments>\r\n </ng-container>\r\n </mat-sidenav>\r\n</mat-sidenav-container>\r\n", styles: [".page-container ::ng-deep form{padding:6px}.side-nav{min-width:280px}\n"], components: [{ type: i4.MatToolbar, selector: "mat-toolbar", inputs: ["color"], exportAs: ["matToolbar"] }, { type: i5.MatButton, selector: "button[mat-button], button[mat-raised-button], button[mat-icon-button], button[mat-fab], button[mat-mini-fab], button[mat-stroked-button], button[mat-flat-button]", inputs: ["disabled", "disableRipple", "color"], exportAs: ["matButton"] }, { type: i6.MatIcon, selector: "mat-icon", inputs: ["color", "inline", "svgIcon", "fontSet", "fontIcon"], exportAs: ["matIcon"] }, { type: i7.MatMenu, selector: "mat-menu", exportAs: ["matMenu"] }, { type: i8.MatDivider, selector: "mat-divider", inputs: ["vertical", "inset"] }, { type: i7.MatMenuItem, selector: "[mat-menu-item]", inputs: ["disabled", "disableRipple", "role"], exportAs: ["matMenuItem"] }, { type: i9.MatSidenavContainer, selector: "mat-sidenav-container", exportAs: ["matSidenavContainer"] }, { type: i9.MatSidenavContent, selector: "mat-sidenav-content" }, { type: i10.ComposeFormComponent, selector: "bizdoc-form", inputs: ["model", "working", "dirty", "valid", "mode", "contacts"], outputs: ["modelChange", "workingChange", "dirtyChange", "validChange"] }, { type: i9.MatSidenav, selector: "mat-sidenav", inputs: ["fixedInViewport", "fixedTopGap", "fixedBottomGap"], exportAs: ["matSidenav"] }, { type: i11.DocumentViewsComponent, selector: "bizdoc-document-views", inputs: ["model"] }, { type: i12.CommentsComponent, selector: "bizdoc-comments", inputs: ["model"], outputs: ["change"] }], directives: [{ type: i13.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { type: i14.TooltipDirective, selector: "[bizdocTooltip]", inputs: ["bizdocTooltip", "bizdocTooltipTemplate", "bizdocTooltipContext", "bizdocTooltipPosition", "bizdocTooltipDuration", "bizdocTooltipDisabled"] }, { type: i7.MatMenuTrigger, selector: "[mat-menu-trigger-for], [matMenuTriggerFor]", exportAs: ["matMenuTrigger"] }, { type: i13.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { type: i15.MatBadge, selector: "[matBadge]", inputs: ["matBadgeDisabled", "matBadgeColor", "matBadgeOverlap", "matBadgePosition", "matBadge", "matBadgeDescription", "matBadgeSize", "matBadgeHidden"] }, { type: i7.MatMenuContent, selector: "ng-template[matMenuContent]" }, { type: i13.NgSwitch, selector: "[ngSwitch]", inputs: ["ngSwitch"] }, { type: i13.NgSwitchCase, selector: "[ngSwitchCase]", inputs: ["ngSwitchCase"] }, { type: i13.NgSwitchDefault, selector: "[ngSwitchDefault]" }], pipes: { "translate": i16.TranslatePipe, "sort": i17.ArraySortPipe } });
96
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.1.1", ngImport: i0, type: ComposeComponent, decorators: [{
97
97
  type: Component,
98
98
  args: [{ template: "<mat-toolbar class=\"nav-toolbar\">\r\n <button mat-icon-button color=\"primary\" (click)=\"form.back()\" [bizdocTooltip]=\"'Back'|translate\" *ngIf=\"form.page !== undefined\" tabindex=\"1\">\r\n <mat-icon class=\"mat-icon-rtl-mirror\">arrow_back</mat-icon>\r\n </button>\r\n <button mat-icon-button color=\"primary\" *ngIf=\"model.draft\" data-help=\"submit\"\r\n (click)=\"submit()\" [disabled]=\"!valid||working\" [bizdocTooltip]=\"'Submit' | translate\">\r\n <mat-icon class=\"mat-icon-rtl-mirror\">send</mat-icon>\r\n </button>\r\n <button mat-icon-button color=\"primary\" *ngIf=\"form.actions.length === 1\" [attr.data-help]=\"'action-'+form.actions[0].name\" (click)=\"send(model.actions[0])\" [disabled]=\"!valid||working\" [bizdocTooltip]=\"form.actions[0].title\">\r\n <mat-icon class=\"mat-icon-rtl-mirror\">{{form.actions[0].icon || 'send'}}</mat-icon>\r\n </button>\r\n <button mat-icon-button data-help=\"send\" color=\"primary\" *ngIf=\"form.actions.length > 1\" [matMenuTriggerFor]=\"actionmenu\" [disabled]=\"!valid||working\" [bizdocTooltip]=\"'Send' | translate\">\r\n <mat-icon class=\"mat-icon-rtl-mirror\">send</mat-icon>\r\n </button>\r\n <!-- action -->\r\n <mat-menu #actionmenu>\r\n <ng-container *ngFor=\"let a of form.actions | sort : 'group'; let i = index\">\r\n <mat-divider *ngIf=\"i>0 && form.actions[i-1].group !== a.group\"></mat-divider>\r\n <button mat-menu-item (click)=\"send(a.name)\">{{a.title}}</button>\r\n </ng-container>\r\n </mat-menu>\r\n <button mat-icon-button (click)=\"form.save().subscribe()\" data-help=\"save\" [disabled]=\"!dirty||working\" [bizdocTooltip]=\"(model.draft ? 'SaveDraft' : 'Save') | translate\" *ngIf=\"mode === 'compose'\">\r\n <mat-icon>save</mat-icon>\r\n </button>\r\n <button mat-icon-button data-help=\"tag\" (click)=\"form.tag($event)\" [bizdocTooltip]=\"'Tags' | translate\" [disabled]=\"working\"><mat-icon class=\"filled\">{{model.tags && model.tags.length ?'bookmark':'bookmark_border'}}</mat-icon></button>\r\n <button mat-icon-button data-help=\"flag\" [bizdocTooltip]=\"'Flagged'| translate\" [disabled]=\"working\" (click)=\"form.flag()\"><mat-icon class=\"filled\">{{model.flag ? 'star' : 'star_border'}}</mat-icon></button>\r\n <button mat-icon-button (click)=\"form.attach()\" data-help=\"attach\" [bizdocTooltip]=\"'AttachFile' | translate\" [disabled]=\"working\"><mat-icon>attach_file</mat-icon></button>\r\n <button mat-icon-button [disabled]=\"working\" data-help=\"edit\" (click)=\"edit()\" [bizdocTooltip]=\"'Edit' | translate\" *ngIf=\"mode !== 'compose' && !model.completed && model.pending\"><mat-icon>create</mat-icon></button>\r\n <span class=\"divider\"></span> \r\n <button mat-icon-button (click)=\"toggle('comments')\" data-help=\"comments\" [bizdocTooltip]=\"'Comments' | translate\" [matBadge]=\"newCommentsCount\" [matBadgeHidden]=\"!newCommentsCount\" matBadgeColor=\"accent\">\r\n <mat-icon class=\"filled\">format_quote</mat-icon>\r\n </button>\r\n <button mat-icon-button (click)=\"toggle('views')\" [bizdocTooltip]=\"'View' | translate\" [attr.aria-label]=\"'View' | translate\" *ngIf=\"enableAnalysis\" class=\"tool\"><mat-icon>data_usage</mat-icon></button>\r\n <button mat-icon-button [matMenuTriggerFor]=\"optionsMenu\" [bizdocTooltip]=\"'Options' | translate\" [attr.aria-label]=\"'Options' | translate\"><mat-icon>more_vert</mat-icon></button>\r\n <mat-menu #optionsMenu=\"matMenu\">\r\n <ng-template matMenuContent>\r\n <button mat-menu-item (click)=\"form.copy()\" [disabled]=\"working\">\r\n <!--<mat-icon>content_copy</mat-icon>-->\r\n <span>{{'Copy' | translate}}</span>\r\n </button>\r\n <button mat-menu-item (click)=\"discard()\" *ngIf=\"model.draft && !model.issued\" [disabled]=\"working\">\r\n <!--<mat-icon>delete_outlined</mat-icon>-->\r\n <span>{{'Discard' | translate}}</span>\r\n </button>\r\n <ng-container *ngIf=\"form.help\">\r\n <mat-divider></mat-divider>\r\n <button mat-menu-item (click)=\"form.guide(form.help)\">\r\n <!--<mat-icon>help_outline</mat-icon>-->\r\n <span>{{'Help' | translate}}</span>\r\n </button>\r\n </ng-container>\r\n </ng-template>\r\n </mat-menu>\r\n</mat-toolbar>\r\n<mat-sidenav-container class=\"page-container\">\r\n <mat-sidenav-content>\r\n <bizdoc-form [model]=model #form (validChange)=\"valid=$event\"\r\n (workingChange)=\"working=$event\"\r\n (dirtyChange)=\"dirty=$event\" [mode]=\"mode\"></bizdoc-form>\r\n </mat-sidenav-content>\r\n <mat-sidenav mode=\"over\" position=\"end\" [opened]=\"false\" #drawer autoFocus=\"false\" class=\"side-nav\">\r\n <ng-container [ngSwitch]=\"viewMode\">\r\n <bizdoc-document-views [model]=\"model\" *ngSwitchCase=\"'views'\"></bizdoc-document-views>\r\n <bizdoc-comments [model]=\"model\" *ngSwitchDefault></bizdoc-comments>\r\n </ng-container>\r\n </mat-sidenav>\r\n</mat-sidenav-container>\r\n", styles: [".page-container ::ng-deep form{padding:6px}.side-nav{min-width:280px}\n"] }]
99
99
  }], ctorParameters: function () { return [{ type: i1.WindowTitleService }, { type: i2.SessionService }, { type: i3.Router }, { type: i3.ActivatedRoute }, { type: undefined, decorators: [{
@@ -109,4 +109,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.1.0", ngImpor
109
109
  type: ViewChild,
110
110
  args: [MatSidenav, { static: true }]
111
111
  }] } });
112
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29tcG9zZS5tb2JpbGUuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vbGlicmFyaWVzL2NvcmUvc3JjL2xpYi9jb21wb3NlL2NvbXBvc2UubW9iaWxlLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uL2xpYnJhcmllcy9jb3JlL3NyYy9saWIvY29tcG9zZS9jb21wb3NlLm1vYmlsZS5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsU0FBUyxFQUFhLFNBQVMsRUFBVSxNQUFNLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDaEYsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLDJCQUEyQixDQUFDO0FBQ3ZELE9BQU8sRUFBRSxPQUFPLEVBQUUsTUFBTSxNQUFNLENBQUM7QUFDL0IsT0FBTyxFQUFFLFNBQVMsRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBQzNDLE9BQU8sRUFBa0IsS0FBSyxFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFHdkQsT0FBTyxFQUFFLGlCQUFpQixFQUFFLE1BQU0sK0JBQStCLENBQUM7QUFFbEUsT0FBTyxFQUFFLG9CQUFvQixFQUFFLE1BQU0sa0JBQWtCLENBQUM7QUFDeEQsT0FBTyxFQUFFLFFBQVEsRUFBRSxNQUFNLG1CQUFtQixDQUFDO0FBRTdDLE9BQU8sRUFBZ0IsYUFBYSxFQUFFLE1BQU0sdUJBQXVCLENBQUM7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7QUFNcEUsdURBQXVEO0FBQ3ZELE1BQU0sT0FBTyxnQkFBZ0I7SUFjM0IsbUJBQW1CO0lBQ25CLFlBQ1UsTUFBMEIsRUFDMUIsUUFBd0IsRUFDeEIsT0FBZSxFQUNmLE1BQXNCLEVBQ1AsTUFBb0I7UUFKbkMsV0FBTSxHQUFOLE1BQU0sQ0FBb0I7UUFDMUIsYUFBUSxHQUFSLFFBQVEsQ0FBZ0I7UUFDeEIsWUFBTyxHQUFQLE9BQU8sQ0FBUTtRQUNmLFdBQU0sR0FBTixNQUFNLENBQWdCO1FB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RUFBRSxJQUFJLEVBQUUiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDb21wb25lbnQsIE9uRGVzdHJveSwgVmlld0NoaWxkLCBPbkluaXQsIEluamVjdCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xyXG5pbXBvcnQgeyBNYXRTaWRlbmF2IH0gZnJvbSAnQGFuZ3VsYXIvbWF0ZXJpYWwvc2lkZW5hdic7XHJcbmltcG9ydCB7IFN1YmplY3QgfSBmcm9tICdyeGpzJztcclxuaW1wb3J0IHsgdGFrZVVudGlsIH0gZnJvbSAncnhqcy9vcGVyYXRvcnMnO1xyXG5pbXBvcnQgeyBSZWNpcGllbnRNb2RlbCwgSU5CT1ggfSBmcm9tICcuLi9jb3JlL21vZGVscyc7XHJcbmltcG9ydCB7IFNlc3Npb25TZXJ2aWNlIH0gZnJvbSAnLi4vY29yZS9zZXNzaW9uLnNlcnZpY2UnO1xyXG5pbXBvcnQgeyBXaW5kb3dUaXRsZVNlcnZpY2UgfSBmcm9tICcuLi9jb3JlL3dpbmRvdy10aXRsZS5zZXJ2aWNlJztcclxuaW1wb3J0IHsgQ29tbWVudHNDb21wb25lbnQgfSBmcm9tICcuL2NvbW1lbnRzL2NvbW1lbnRzLmNvbXBvbmVudCc7XHJcbmltcG9ydCB7IEFjdGl2YXRlZFJvdXRlLCBSb3V0ZXIgfSBmcm9tICdAYW5ndWxhci9yb3V0ZXInO1xyXG5pbXBvcnQgeyBDb21wb3NlRm9ybUNvbXBvbmVudCB9IGZyb20gJy4vZm9ybS5jb21wb25lbnQnO1xyXG5pbXBvcnQgeyBpc01vYmlsZSB9IGZyb20gJy4uL2NvcmUvZnVuY3Rpb25zJztcclxuaW1wb3J0IHsgVmlld01vZGUgfSBmcm9tICcuLi9jb3JlL2Jhc2UnO1xyXG5pbXBvcnQgeyBCaXpEb2NDb25maWcsIEJJWkRPQ19DT05GSUcgfSBmcm9tICcuLi9jb3JlL2NvbmZpZ3VyYXRpb24nO1xyXG5cclxuQENvbXBvbmVudCh7XHJcbiAgdGVtcGxhdGVVcmw6ICcuL2NvbXBvc2UubW9iaWxlLmNvbXBvbmVudC5odG1sJyxcclxuICBzdHlsZVVybHM6IFsnLi9jb21wb3NlLm1vYmlsZS5jb21wb25lbnQuc2NzcyddXHJcbn0pXHJcbi8qKiBjb21wb3NlIGNvbXBvbmVudCByZXNwb25zaWJsZSBmb3IgZWRpdGluZyBhIGZvcm0gKi9cclxuZXhwb3J0IGNsYXNzIENvbXBvc2VDb21wb25lbnQgaW1wbGVtZW50cyBPbkluaXQsIE9uRGVzdHJveSB7XHJcbiAgQFZpZXdDaGlsZChDb21wb3NlRm9ybUNvbXBvbmVudCwgeyBzdGF0aWM6IHRydWUgfSkgZm9ybTogQ29tcG9zZUZvcm1Db21wb25lbnQ7XHJcbiAgQFZpZXdDaGlsZChDb21tZW50c0NvbXBvbmVudCwge30pIGNvbW1lbnRzOiBDb21tZW50c0NvbXBvbmVudDtcclxuICBAVmlld0NoaWxkKE1hdFNpZGVuYXYsIHsgc3RhdGljOiB0cnVlIH0pIGRyYXdlcjogTWF0U2lkZW5hdjtcclxuICB3b3JraW5nOiBib29sZWFuO1xyXG4gIGRpcnR5OiBib29sZWFuO1xyXG4gIHZhbGlkOiBib29sZWFuO1xyXG4gIG1vZGU6IFZpZXdNb2RlO1xyXG4gIG1vZGVsOiBSZWNpcGllbnRNb2RlbDxhbnk+O1xyXG4gIG5ld0NvbW1lbnRzQ291bnQ6IG51bWJlcjtcclxuICB2aWV3TW9kZTogJ2NvbW1lbnRzJyB8ICd2aWV3cyc7XHJcbiAgcmVhZG9ubHkgaXNNb2JpbGUgPSBpc01vYmlsZSgpO1xyXG4gIHJlYWRvbmx5ICAgZW5hYmxlQW5hbHlzaXM6IGJvb2xlYW47XHJcbiAgcHJpdmF0ZSByZWFkb25seSBfZGVzdHJveSA9IG5ldyBTdWJqZWN0PHZvaWQ+KCk7XHJcbiAgLyoqIGNvbXBvc2UgY3RvciAqL1xyXG4gIGNvbnN0cnVjdG9yKFxyXG4gICAgcHJpdmF0ZSBfdGl0bGU6IFdpbmRvd1RpdGxlU2VydmljZSxcclxuICAgIHByaXZhdGUgX3Nlc3Npb246IFNlc3Npb25TZXJ2aWNlLFxyXG4gICAgcHJpdmF0ZSBfcm91dGVyOiBSb3V0ZXIsXHJcbiAgICBwcml2YXRlIF9yb3V0ZTogQWN0aXZhdGVkUm91dGUsXHJcbiAgICBASW5qZWN0KEJJWkRPQ19DT05GSUcpIGNvbmZpZzogQml6RG9jQ29uZmlnICApIHtcclxuICAgIHRoaXMuZW5hYmxlQW5hbHlzaXMgPSBjb25maWcuYW5hbHlzaXMgIT09IGZhbHNlICYmIF9zZXNzaW9uLnByb2ZpbGUudmlld3MubGVuZ3RoID4gMDtcclxuICB9XHJcbiAgbmdPbkluaXQoKTogdm9pZCB7XHJcbiAgICB0aGlzLl9yb3V0ZS5kYXRhLnN1YnNjcmliZSgoKSA9PiB7XHJcbiAgICAgIHRoaXMubW9kZWwgPSB0aGlzLl9yb3V0ZS5zbmFwc2hvdC5kYXRhLml0ZW07XHJcbiAgICAgIHRoaXMubmV3Q29tbWVudHNDb3VudCA9IHRoaXMubW9kZWwudW5yZWFkQ29tbWVudHMgfHwgbnVsbDtcclxuICAgICAgY29uc3QgZm9ybSA9IHRoaXMuX3Nlc3Npb24ucHJvZmlsZS5mb3Jtcy5maW5kKGYgPT4gZi5uYW1lID09PSB0aGlzLm1vZGVsLmZvcm1JZCk7XHJcbiAgICAgIHRoaXMuX3RpdGxlLnNldCh0aGlzLm1vZGVsLm51bWJlciA/IGAjJHt0aGlzLm1vZGVsLm51bWJlcn1gIDogZm9ybS50aXRsZSk7XHJcbiAgICAgIHRoaXMubmV3Q29tbWVudHNDb3VudCAmJlxyXG4gICAgICAgIHRoaXMuZHJhd2VyLm9wZW4oKTtcclxuICAgICAgY29uc3QgeyBwYWdlIH0gPSB0aGlzLl9yb3V0ZS5zbmFwc2hvdC5xdWVyeVBhcmFtcztcclxuICAgICAgcGFnZSAmJlxyXG4gICAgICAgIHRoaXMuZm9ybS5uYXZpZ2F0ZShwYWdlKTtcclxuICAgICAgdGhpcy5tb2RlID0gdGhpcy5tb2RlbC5kcmFmdCA/ICdjb21wb3NlJyA6ICdwcmV2aWV3JztcclxuICAgIH0pO1xyXG4gICAgdGhpcy5kcmF3ZXIub3BlbmVkQ2hhbmdlLnBpcGUodGFrZVVudGlsKHRoaXMuX2Rlc3Ryb3kpKS5zdWJzY3JpYmUobyA9PiB7XHJcbiAgICAgIGlmIChvKSB7XHJcbiAgICAgICAgaWYgKHRoaXMuY29tbWVudHMpIHtcclxuICAgICAgICAgICF0aGlzLm5ld0NvbW1lbnRzQ291bnQgJiYgdGhpcy5jb21tZW50cy5mb2N1cygpO1xyXG4gICAgICAgICAgdGhpcy5jb21tZW50cy5jaGFuZ2UucGlwZSh0YWtlVW50aWwodGhpcy5fZGVzdHJveSkpLnN1YnNjcmliZSgoKSA9PlxyXG4gICAgICAgICAgICB0aGlzLm5ld0NvbW1lbnRzQ291bnQgPSB0aGlzLmNvbW1lbnRzLnVucmVhZENvbW1lbnRzKTtcclxuICAgICAgICB9XHJcbiAgICAgIH1cclxuICAgIH0pO1xyXG4gIH1cclxuICB0b2dnbGUobW9kZTogJ2NvbW1lbnRzJyB8ICd2aWV3cycpIHtcclxuICAgIGlmICh0aGlzLnZpZXdNb2RlID09PSBtb2RlKSB7XHJcbiAgICAgIHRoaXMuZHJhd2VyLmNsb3NlKCk7XHJcbiAgICAgIHRoaXMudmlld01vZGUgPSBudWxsO1xyXG4gICAgfVxyXG4gICAgZWxzZSB7XHJcbiAgICAgIHRoaXMudmlld01vZGUgPSBtb2RlO1xyXG4gICAgICAhdGhpcy5kcmF3ZXIub3BlbmVkICYmIHRoaXMuZHJhd2VyLm9wZW4oKTtcclxuICAgIH1cclxuICB9XHJcbiAgc2VuZChhY3Rpb246IHN0cmluZykge1xyXG4gICAgdGhpcy5mb3JtLnNlbmQoYWN0aW9uKS5zdWJzY3JpYmUodGhpcy5fY2xvc2UuYmluZCh0aGlzKSk7XHJcbiAgfVxyXG4gIGVkaXQoKSB7XHJcbiAgICB0aGlzLm1vZGUgPSAnY29tcG9zZSc7XHJcbiAgfVxyXG4gIGRpc2NhcmQoKSB7XHJcbiAgICB0aGlzLmZvcm0uZGlzY2FyZCgpLnN1YnNjcmliZSh0aGlzLl9jbG9zZS5iaW5kKHRoaXMpKVxyXG4gIH1cclxuICBzdWJtaXQoKSB7XHJcbiAgICB0aGlzLmZvcm0uc3VibWl0KCkuc3Vic2NyaWJlKHRoaXMuX2Nsb3NlLmJpbmQodGhpcykpO1xyXG4gIH1cclxuICBwcml2YXRlIF9jbG9zZSgpOiB2b2lkIHtcclxuICAgIHRoaXMuX3JvdXRlci5uYXZpZ2F0ZShbJ21haWxib3gvZicsIElOQk9YXSwge1xyXG4gICAgICBxdWVyeVBhcmFtc0hhbmRsaW5nOiAncHJlc2VydmUnXHJcbiAgICB9KTtcclxuICB9XHJcbiAgbmdPbkRlc3Ryb3koKTogdm9pZCB7XHJcbiAgICB0aGlzLl9kZXN0cm95Lm5leHQoKTtcclxuICAgIHRoaXMuX2Rlc3Ryb3kuY29tcGxldGUoKTtcclxuICB9XHJcbn1cclxuIiwiPG1hdC10b29sYmFyIGNsYXNzPVwibmF2LXRvb2xiYXJcIj5cclxuICA8YnV0dG9uIG1hdC1pY29uLWJ1dHRvbiBjb2xvcj1cInByaW1hcnlcIiAoY2xpY2spPVwiZm9ybS5iYWNrKClcIiBbYml6ZG9jVG9vbHRpcF09XCInQmFjayd8dHJhbnNsYXRlXCIgKm5nSWY9XCJmb3JtLnBhZ2UgIT09IHVuZGVmaW5lZFwiIHRhYmluZGV4PVwiMVwiPlxyXG4gICAgPG1hdC1pY29uIGNsYXNzPVwibWF0LWljb24tcnRsLW1pcnJvclwiPmFycm93X2JhY2s8L21hdC1pY29uPlxyXG4gIDwvYnV0dG9uPlxyXG4gIDxidXR0b24gbWF0LWljb24tYnV0dG9uIGNvbG9yPVwicHJpbWFyeVwiICpuZ0lmPVwibW9kZWwuZHJhZnRcIiBkYXRhLWhlbHA9XCJzdWJtaXRcIlxyXG4gICAgICAgICAgKGNsaWNrKT1cInN1Ym1pdCgpXCIgW2Rpc2FibGVkXT1cIiF2YWxpZHx8d29ya2luZ1wiIFtiaXpkb2NUb29sdGlwXT1cIidTdWJtaXQnIHwgdHJhbnNsYXRlXCI+XHJcbiAgICA8bWF0LWljb24gY2xhc3M9XCJtYXQtaWNvbi1ydGwtbWlycm9yXCI+c2VuZDwvbWF0LWljb24+XHJcbiAgPC9idXR0b24+XHJcbiAgPGJ1dHRvbiBtYXQtaWNvbi1idXR0b24gY29sb3I9XCJwcmltYXJ5XCIgKm5nSWY9XCJmb3JtLmFjdGlvbnMubGVuZ3RoID09PSAxXCIgW2F0dHIuZGF0YS1oZWxwXT1cIidhY3Rpb24tJytmb3JtLmFjdGlvbnNbMF0ubmFtZVwiIChjbGljayk9XCJzZW5kKG1vZGVsLmFjdGlvbnNbMF0pXCIgW2Rpc2FibGVkXT1cIiF2YWxpZHx8d29ya2luZ1wiIFtiaXpkb2NUb29sdGlwXT1cImZvcm0uYWN0aW9uc1swXS50aXRsZVwiPlxyXG4gICAgPG1hdC1pY29uIGNsYXNzPVwibWF0LWljb24tcnRsLW1pcnJvclwiPnt7Zm9ybS5hY3Rpb25zWzBdLmljb24gfHwgJ3NlbmQnfX08L21hdC1pY29uPlxyXG4gIDwvYnV0dG9uPlxyXG4gIDxidXR0b24gbWF0LWljb24tYnV0dG9uIGRhdGEtaGVscD1cInNlbmRcIiBjb2xvcj1cInByaW1hcnlcIiAqbmdJZj1cImZvcm0uYWN0aW9ucy5sZW5ndGggPiAxXCIgW21hdE1lbnVUcmlnZ2VyRm9yXT1cImFjdGlvbm1lbnVcIiBbZGlzYWJsZWRdPVwiIXZhbGlkfHx3b3JraW5nXCIgW2JpemRvY1Rvb2x0aXBdPVwiJ1NlbmQnIHwgdHJhbnNsYXRlXCI+XHJcbiAgICA8bWF0LWljb24gY2xhc3M9XCJtYXQtaWNvbi1ydGwtbWlycm9yXCI+c2VuZDwvbWF0LWljb24+XHJcbiAgPC9idXR0b24+XHJcbiAgPCEtLSBhY3Rpb24gLS0+XHJcbiAgPG1hdC1tZW51ICNhY3Rpb25tZW51PlxyXG4gICAgPG5nLWNvbnRhaW5lciAqbmdGb3I9XCJsZXQgYSBvZiBmb3JtLmFjdGlvbnMgfCBzb3J0IDogJ2dyb3VwJzsgbGV0IGkgPSBpbmRleFwiPlxyXG4gICAgICA8bWF0LWRpdmlkZXIgKm5nSWY9XCJpPjAgJiYgZm9ybS5hY3Rpb25zW2ktMV0uZ3JvdXAgIT09IGEuZ3JvdXBcIj48L21hdC1kaXZpZGVyPlxyXG4gICAgICA8YnV0dG9uIG1hdC1tZW51LWl0ZW0gKGNsaWNrKT1cInNlbmQoYS5uYW1lKVwiPnt7YS50aXRsZX19PC9idXR0b24+XHJcbiAgICA8L25nLWNvbnRhaW5lcj5cclxuICA8L21hdC1tZW51PlxyXG4gIDxidXR0b24gbWF0LWljb24tYnV0dG9uIChjbGljayk9XCJmb3JtLnNhdmUoKS5zdWJzY3JpYmUoKVwiIGRhdGEtaGVscD1cInNhdmVcIiBbZGlzYWJsZWRdPVwiIWRpcnR5fHx3b3JraW5nXCIgW2JpemRvY1Rvb2x0aXBdPVwiKG1vZGVsLmRyYWZ0ID8gJ1NhdmVEcmFmdCcgOiAnU2F2ZScpIHwgdHJhbnNsYXRlXCIgKm5nSWY9XCJtb2RlID09PSAnY29tcG9zZSdcIj5cclxuICAgIDxtYXQtaWNvbj5zYXZlPC9tYXQtaWNvbj5cclxuICA8L2J1dHRvbj5cclxuICA8YnV0dG9uIG1hdC1pY29uLWJ1dHRvbiBkYXRhLWhlbHA9XCJ0YWdcIiAoY2xpY2spPVwiZm9ybS50YWcoJGV2ZW50KVwiIFtiaXpkb2NUb29sdGlwXT1cIidUYWdzJyB8IHRyYW5zbGF0ZVwiIFtkaXNhYmxlZF09XCJ3b3JraW5nXCI+PG1hdC1pY29uIGNsYXNzPVwiZmlsbGVkXCI+e3ttb2RlbC50YWdzICYmIG1vZGVsLnRhZ3MubGVuZ3RoID8nYm9va21hcmsnOidib29rbWFya19ib3JkZXInfX08L21hdC1pY29uPjwvYnV0dG9uPlxyXG4gIDxidXR0b24gbWF0LWljb24tYnV0dG9uIGRhdGEtaGVscD1cImZsYWdcIiBbYml6ZG9jVG9vbHRpcF09XCInRmxhZ2dlZCd8IHRyYW5zbGF0ZVwiIFtkaXNhYmxlZF09XCJ3b3JraW5nXCIgKGNsaWNrKT1cImZvcm0uZmxhZygpXCI+PG1hdC1pY29uIGNsYXNzPVwiZmlsbGVkXCI+e3ttb2RlbC5mbGFnID8gJ3N0YXInIDogJ3N0YXJfYm9yZGVyJ319PC9tYXQtaWNvbj48L2J1dHRvbj5cclxuICA8YnV0dG9uIG1hdC1pY29uLWJ1dHRvbiAoY2xpY2spPVwiZm9ybS5hdHRhY2goKVwiIGRhdGEtaGVscD1cImF0dGFjaFwiIFtiaXpkb2NUb29sdGlwXT1cIidBdHRhY2hGaWxlJyB8IHRyYW5zbGF0ZVwiIFtkaXNhYmxlZF09XCJ3b3JraW5nXCI+PG1hdC1pY29uPmF0dGFjaF9maWxlPC9tYXQtaWNvbj48L2J1dHRvbj5cclxuICA8YnV0dG9uIG1hdC1pY29uLWJ1dHRvbiBbZGlzYWJsZWRdPVwid29ya2luZ1wiIGRhdGEtaGVscD1cImVkaXRcIiAoY2xpY2spPVwiZWRpdCgpXCIgW2JpemRvY1Rvb2x0aXBdPVwiJ0VkaXQnIHwgdHJhbnNsYXRlXCIgKm5nSWY9XCJtb2RlICE9PSAnY29tcG9zZScgJiYgIW1vZGVsLmNvbXBsZXRlZCAmJiBtb2RlbC5wZW5kaW5nXCI+PG1hdC1pY29uPmNyZWF0ZTwvbWF0LWljb24+PC9idXR0b24+XHJcbiAgPHNwYW4gY2xhc3M9XCJkaXZpZGVyXCI+PC9zcGFuPiBcclxuICA8YnV0dG9uIG1hdC1pY29uLWJ1dHRvbiAoY2xpY2spPVwidG9nZ2xlKCdjb21tZW50cycpXCIgZGF0YS1oZWxwPVwiY29tbWVudHNcIiBbYml6ZG9jVG9vbHRpcF09XCInQ29tbWVudHMnIHwgdHJhbnNsYXRlXCIgW21hdEJhZGdlXT1cIm5ld0NvbW1lbnRzQ291bnRcIiBbbWF0QmFkZ2VIaWRkZW5dPVwiIW5ld0NvbW1lbnRzQ291bnRcIiBtYXRCYWRnZUNvbG9yPVwiYWNjZW50XCI+XHJcbiAgICA8bWF0LWljb24gY2xhc3M9XCJmaWxsZWRcIj5mb3JtYXRfcXVvdGU8L21hdC1pY29uPlxyXG4gIDwvYnV0dG9uPlxyXG4gIDxidXR0b24gbWF0LWljb24tYnV0dG9uIChjbGljayk9XCJ0b2dnbGUoJ3ZpZXdzJylcIiBbYml6ZG9jVG9vbHRpcF09XCInVmlldycgfCB0cmFuc2xhdGVcIiBbYXR0ci5hcmlhLWxhYmVsXT1cIidWaWV3JyB8IHRyYW5zbGF0ZVwiICpuZ0lmPVwiZW5hYmxlQW5hbHlzaXNcIiBjbGFzcz1cInRvb2xcIj48bWF0LWljb24+ZGF0YV91c2FnZTwvbWF0LWljb24+PC9idXR0b24+XHJcbiAgPGJ1dHRvbiBtYXQtaWNvbi1idXR0b24gW21hdE1lbnVUcmlnZ2VyRm9yXT1cIm9wdGlvbnNNZW51XCIgW2JpemRvY1Rvb2x0aXBdPVwiJ09wdGlvbnMnIHwgdHJhbnNsYXRlXCIgW2F0dHIuYXJpYS1sYWJlbF09XCInT3B0aW9ucycgfCB0cmFuc2xhdGVcIj48bWF0LWljb24+bW9yZV92ZXJ0PC9tYXQtaWNvbj48L2J1dHRvbj5cclxuICA8bWF0LW1lbnUgI29wdGlvbnNNZW51PVwibWF0TWVudVwiPlxyXG4gICAgPG5nLXRlbXBsYXRlIG1hdE1lbnVDb250ZW50PlxyXG4gICAgICA8YnV0dG9uIG1hdC1tZW51LWl0ZW0gKGNsaWNrKT1cImZvcm0uY29weSgpXCIgW2Rpc2FibGVkXT1cIndvcmtpbmdcIj5cclxuICAgICAgICA8IS0tPG1hdC1pY29uPmNvbnRlbnRfY29weTwvbWF0LWljb24+LS0+XHJcbiAgICAgICAgPHNwYW4+e3snQ29weScgfCB0cmFuc2xhdGV9fTwvc3Bhbj5cclxuICAgICAgPC9idXR0b24+XHJcbiAgICAgIDxidXR0b24gbWF0LW1lbnUtaXRlbSAoY2xpY2spPVwiZGlzY2FyZCgpXCIgKm5nSWY9XCJtb2RlbC5kcmFmdCAmJiAhbW9kZWwuaXNzdWVkXCIgW2Rpc2FibGVkXT1cIndvcmtpbmdcIj5cclxuICAgICAgICA8IS0tPG1hdC1pY29uPmRlbGV0ZV9vdXRsaW5lZDwvbWF0LWljb24+LS0+XHJcbiAgICAgICAgPHNwYW4+e3snRGlzY2FyZCcgfCB0cmFuc2xhdGV9fTwvc3Bhbj5cclxuICAgICAgPC9idXR0b24+XHJcbiAgICAgIDxuZy1jb250YWluZXIgKm5nSWY9XCJmb3JtLmhlbHBcIj5cclxuICAgICAgICA8bWF0LWRpdmlkZXI+PC9tYXQtZGl2aWRlcj5cclxuICAgICAgICA8YnV0dG9uIG1hdC1tZW51LWl0ZW0gKGNsaWNrKT1cImZvcm0uZ3VpZGUoZm9ybS5oZWxwKVwiPlxyXG4gICAgICAgICAgPCEtLTxtYXQtaWNvbj5oZWxwX291dGxpbmU8L21hdC1pY29uPi0tPlxyXG4gICAgICAgICAgPHNwYW4+e3snSGVscCcgfCB0cmFuc2xhdGV9fTwvc3Bhbj5cclxuICAgICAgICA8L2J1dHRvbj5cclxuICAgICAgPC9uZy1jb250YWluZXI+XHJcbiAgICA8L25nLXRlbXBsYXRlPlxyXG4gIDwvbWF0LW1lbnU+XHJcbjwvbWF0LXRvb2xiYXI+XHJcbjxtYXQtc2lkZW5hdi1jb250YWluZXIgY2xhc3M9XCJwYWdlLWNvbnRhaW5lclwiPlxyXG4gIDxtYXQtc2lkZW5hdi1jb250ZW50PlxyXG4gICAgPGJpemRvYy1mb3JtIFttb2RlbF09bW9kZWwgI2Zvcm0gKHZhbGlkQ2hhbmdlKT1cInZhbGlkPSRldmVudFwiXHJcbiAgICAgICAgICAgICAgICAgKHdvcmtpbmdDaGFuZ2UpPVwid29ya2luZz0kZXZlbnRcIlxyXG4gICAgICAgICAgICAgICAgIChkaXJ0eUNoYW5nZSk9XCJkaXJ0eT0kZXZlbnRcIiBbbW9kZV09XCJtb2RlXCI+PC9iaXpkb2MtZm9ybT5cclxuICA8L21hdC1zaWRlbmF2LWNvbnRlbnQ+XHJcbiAgPG1hdC1zaWRlbmF2IG1vZGU9XCJvdmVyXCIgcG9zaXRpb249XCJlbmRcIiBbb3BlbmVkXT1cImZhbHNlXCIgI2RyYXdlciBhdXRvRm9jdXM9XCJmYWxzZVwiIGNsYXNzPVwic2lkZS1uYXZcIj5cclxuICAgIDxuZy1jb250YWluZXIgW25nU3dpdGNoXT1cInZpZXdNb2RlXCI+XHJcbiAgICAgIDxiaXpkb2MtZG9jdW1lbnQtdmlld3MgW21vZGVsXT1cIm1vZGVsXCIgKm5nU3dpdGNoQ2FzZT1cIid2aWV3cydcIj48L2JpemRvYy1kb2N1bWVudC12aWV3cz5cclxuICAgICAgPGJpemRvYy1jb21tZW50cyBbbW9kZWxdPVwibW9kZWxcIiAqbmdTd2l0Y2hEZWZhdWx0PjwvYml6ZG9jLWNvbW1lbnRzPlxyXG4gICAgPC9uZy1jb250YWluZXI+XHJcbiAgPC9tYXQtc2lkZW5hdj5cclxuPC9tYXQtc2lkZW5hdi1jb250YWluZXI+XHJcbiJdfQ==
112
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29tcG9zZS5tb2JpbGUuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vbGlicmFyaWVzL2NvcmUvc3JjL2xpYi9jb21wb3NlL2NvbXBvc2UubW9iaWxlLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uL2xpYnJhcmllcy9jb3JlL3NyYy9saWIvY29tcG9zZS9jb21wb3NlLm1vYmlsZS5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsU0FBUyxFQUFhLFNBQVMsRUFBVSxNQUFNLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDaEYsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLDJCQUEyQixDQUFDO0FBQ3ZELE9BQU8sRUFBRSxPQUFPLEVBQUUsTUFBTSxNQUFNLENBQUM7QUFDL0IsT0FBTyxFQUFFLFNBQVMsRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBQzNDLE9BQU8sRUFBa0IsS0FBSyxFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFHdkQsT0FBTyxFQUFFLGlCQUFpQixFQUFFLE1BQU0sK0JBQStCLENBQUM7QUFFbEUsT0FBTyxFQUFFLG9CQUFvQixFQUFFLE1BQU0sa0JBQWtCLENBQUM7QUFDeEQsT0FBTyxFQUFFLFFBQVEsRUFBRSxNQUFNLG1CQUFtQixDQUFDO0FBRTdDLE9BQU8sRUFBZ0IsYUFBYSxFQUFFLE1BQU0sdUJBQXVCLENBQUM7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7QUFNcEUsdURBQXVEO0FBQ3ZELE1BQU0sT0FBTyxnQkFBZ0I7SUFjM0IsbUJBQW1CO0lBQ25CLFlBQ1UsTUFBMEIsRUFDMUIsUUFBd0IsRUFDeEIsT0FBZSxFQUNmLE1BQXNCLEVBQ1AsTUFBb0I7UUFKbkMsV0FBTSxHQUFOLE1BQU0sQ0FBb0I7UUFDMUIsYUFBUSxHQUFSLFFBQVEsQ0FBZ0I7UUFDeEIsWUFBTyxHQUFQLE9BQU8sQ0FBUTtRQUNmLFdBQU0sR0FBTixNQUFNLENBQWdCO1FB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dCI6WyJpbXBvcnQgeyBDb21wb25lbnQsIE9uRGVzdHJveSwgVmlld0NoaWxkLCBPbkluaXQsIEluamVjdCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xyXG5pbXBvcnQgeyBNYXRTaWRlbmF2IH0gZnJvbSAnQGFuZ3VsYXIvbWF0ZXJpYWwvc2lkZW5hdic7XHJcbmltcG9ydCB7IFN1YmplY3QgfSBmcm9tICdyeGpzJztcclxuaW1wb3J0IHsgdGFrZVVudGlsIH0gZnJvbSAncnhqcy9vcGVyYXRvcnMnO1xyXG5pbXBvcnQgeyBSZWNpcGllbnRNb2RlbCwgSU5CT1ggfSBmcm9tICcuLi9jb3JlL21vZGVscyc7XHJcbmltcG9ydCB7IFNlc3Npb25TZXJ2aWNlIH0gZnJvbSAnLi4vY29yZS9zZXNzaW9uLnNlcnZpY2UnO1xyXG5pbXBvcnQgeyBXaW5kb3dUaXRsZVNlcnZpY2UgfSBmcm9tICcuLi9jb3JlL3dpbmRvdy10aXRsZS5zZXJ2aWNlJztcclxuaW1wb3J0IHsgQ29tbWVudHNDb21wb25lbnQgfSBmcm9tICcuL2NvbW1lbnRzL2NvbW1lbnRzLmNvbXBvbmVudCc7XHJcbmltcG9ydCB7IEFjdGl2YXRlZFJvdXRlLCBSb3V0ZXIgfSBmcm9tICdAYW5ndWxhci9yb3V0ZXInO1xyXG5pbXBvcnQgeyBDb21wb3NlRm9ybUNvbXBvbmVudCB9IGZyb20gJy4vZm9ybS5jb21wb25lbnQnO1xyXG5pbXBvcnQgeyBpc01vYmlsZSB9IGZyb20gJy4uL2NvcmUvZnVuY3Rpb25zJztcclxuaW1wb3J0IHsgVmlld01vZGUgfSBmcm9tICcuLi9jb3JlL2Jhc2UnO1xyXG5pbXBvcnQgeyBCaXpEb2NDb25maWcsIEJJWkRPQ19DT05GSUcgfSBmcm9tICcuLi9jb3JlL2NvbmZpZ3VyYXRpb24nO1xyXG5cclxuQENvbXBvbmVudCh7XHJcbiAgdGVtcGxhdGVVcmw6ICcuL2NvbXBvc2UubW9iaWxlLmNvbXBvbmVudC5odG1sJyxcclxuICBzdHlsZVVybHM6IFsnLi9jb21wb3NlLm1vYmlsZS5jb21wb25lbnQuc2NzcyddXHJcbn0pXHJcbi8qKiBjb21wb3NlIGNvbXBvbmVudCByZXNwb25zaWJsZSBmb3IgZWRpdGluZyBhIGZvcm0gKi9cclxuZXhwb3J0IGNsYXNzIENvbXBvc2VDb21wb25lbnQgaW1wbGVtZW50cyBPbkluaXQsIE9uRGVzdHJveSB7XHJcbiAgQFZpZXdDaGlsZChDb21wb3NlRm9ybUNvbXBvbmVudCwgeyBzdGF0aWM6IHRydWUgfSkgZm9ybTogQ29tcG9zZUZvcm1Db21wb25lbnQ7XHJcbiAgQFZpZXdDaGlsZChDb21tZW50c0NvbXBvbmVudCwge30pIGNvbW1lbnRzOiBDb21tZW50c0NvbXBvbmVudDtcclxuICBAVmlld0NoaWxkKE1hdFNpZGVuYXYsIHsgc3RhdGljOiB0cnVlIH0pIGRyYXdlcjogTWF0U2lkZW5hdjtcclxuICB3b3JraW5nOiBib29sZWFuO1xyXG4gIGRpcnR5OiBib29sZWFuO1xyXG4gIHZhbGlkOiBib29sZWFuO1xyXG4gIG1vZGU6IFZpZXdNb2RlO1xyXG4gIG1vZGVsOiBSZWNpcGllbnRNb2RlbDxhbnk+O1xyXG4gIG5ld0NvbW1lbnRzQ291bnQ6IG51bWJlcjtcclxuICB2aWV3TW9kZTogJ2NvbW1lbnRzJyB8ICd2aWV3cyc7XHJcbiAgcmVhZG9ubHkgaXNNb2JpbGUgPSBpc01vYmlsZSgpO1xyXG4gIHJlYWRvbmx5ICAgZW5hYmxlQW5hbHlzaXM6IGJvb2xlYW47XHJcbiAgcHJpdmF0ZSByZWFkb25seSBfZGVzdHJveSA9IG5ldyBTdWJqZWN0PHZvaWQ+KCk7XHJcbiAgLyoqIGNvbXBvc2UgY3RvciAqL1xyXG4gIGNvbnN0cnVjdG9yKFxyXG4gICAgcHJpdmF0ZSBfdGl0bGU6IFdpbmRvd1RpdGxlU2VydmljZSxcclxuICAgIHByaXZhdGUgX3Nlc3Npb246IFNlc3Npb25TZXJ2aWNlLFxyXG4gICAgcHJpdmF0ZSBfcm91dGVyOiBSb3V0ZXIsXHJcbiAgICBwcml2YXRlIF9yb3V0ZTogQWN0aXZhdGVkUm91dGUsXHJcbiAgICBASW5qZWN0KEJJWkRPQ19DT05GSUcpIGNvbmZpZzogQml6RG9jQ29uZmlnICApIHtcclxuICAgIHRoaXMuZW5hYmxlQW5hbHlzaXMgPSBfc2Vzc2lvbi5wcm9maWxlLnZpZXdzLmxlbmd0aCA+IDA7XHJcbiAgfVxyXG4gIG5nT25Jbml0KCk6IHZvaWQge1xyXG4gICAgdGhpcy5fcm91dGUuZGF0YS5zdWJzY3JpYmUoKCkgPT4ge1xyXG4gICAgICB0aGlzLm1vZGVsID0gdGhpcy5fcm91dGUuc25hcHNob3QuZGF0YS5pdGVtO1xyXG4gICAgICB0aGlzLm5ld0NvbW1lbnRzQ291bnQgPSB0aGlzLm1vZGVsLnVucmVhZENvbW1lbnRzIHx8IG51bGw7XHJcbiAgICAgIGNvbnN0IGZvcm0gPSB0aGlzLl9zZXNzaW9uLnByb2ZpbGUuZm9ybXMuZmluZChmID0+IGYubmFtZSA9PT0gdGhpcy5tb2RlbC5mb3JtSWQpO1xyXG4gICAgICB0aGlzLl90aXRsZS5zZXQodGhpcy5tb2RlbC5udW1iZXIgPyBgIyR7dGhpcy5tb2RlbC5udW1iZXJ9YCA6IGZvcm0udGl0bGUpO1xyXG4gICAgICB0aGlzLm5ld0NvbW1lbnRzQ291bnQgJiZcclxuICAgICAgICB0aGlzLmRyYXdlci5vcGVuKCk7XHJcbiAgICAgIGNvbnN0IHsgcGFnZSB9ID0gdGhpcy5fcm91dGUuc25hcHNob3QucXVlcnlQYXJhbXM7XHJcbiAgICAgIHBhZ2UgJiZcclxuICAgICAgICB0aGlzLmZvcm0ubmF2aWdhdGUocGFnZSk7XHJcbiAgICAgIHRoaXMubW9kZSA9IHRoaXMubW9kZWwuZHJhZnQgPyAnY29tcG9zZScgOiAncHJldmlldyc7XHJcbiAgICB9KTtcclxuICAgIHRoaXMuZHJhd2VyLm9wZW5lZENoYW5nZS5waXBlKHRha2VVbnRpbCh0aGlzLl9kZXN0cm95KSkuc3Vic2NyaWJlKG8gPT4ge1xyXG4gICAgICBpZiAobykge1xyXG4gICAgICAgIGlmICh0aGlzLmNvbW1lbnRzKSB7XHJcbiAgICAgICAgICAhdGhpcy5uZXdDb21tZW50c0NvdW50ICYmIHRoaXMuY29tbWVudHMuZm9jdXMoKTtcclxuICAgICAgICAgIHRoaXMuY29tbWVudHMuY2hhbmdlLnBpcGUodGFrZVVudGlsKHRoaXMuX2Rlc3Ryb3kpKS5zdWJzY3JpYmUoKCkgPT5cclxuICAgICAgICAgICAgdGhpcy5uZXdDb21tZW50c0NvdW50ID0gdGhpcy5jb21tZW50cy51bnJlYWRDb21tZW50cyk7XHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcbiAgICB9KTtcclxuICB9XHJcbiAgdG9nZ2xlKG1vZGU6ICdjb21tZW50cycgfCAndmlld3MnKSB7XHJcbiAgICBpZiAodGhpcy52aWV3TW9kZSA9PT0gbW9kZSkge1xyXG4gICAgICB0aGlzLmRyYXdlci5jbG9zZSgpO1xyXG4gICAgICB0aGlzLnZpZXdNb2RlID0gbnVsbDtcclxuICAgIH1cclxuICAgIGVsc2Uge1xyXG4gICAgICB0aGlzLnZpZXdNb2RlID0gbW9kZTtcclxuICAgICAgIXRoaXMuZHJhd2VyLm9wZW5lZCAmJiB0aGlzLmRyYXdlci5vcGVuKCk7XHJcbiAgICB9XHJcbiAgfVxyXG4gIHNlbmQoYWN0aW9uOiBzdHJpbmcpIHtcclxuICAgIHRoaXMuZm9ybS5zZW5kKGFjdGlvbikuc3Vic2NyaWJlKHRoaXMuX2Nsb3NlLmJpbmQodGhpcykpO1xyXG4gIH1cclxuICBlZGl0KCkge1xyXG4gICAgdGhpcy5tb2RlID0gJ2NvbXBvc2UnO1xyXG4gIH1cclxuICBkaXNjYXJkKCkge1xyXG4gICAgdGhpcy5mb3JtLmRpc2NhcmQoKS5zdWJzY3JpYmUodGhpcy5fY2xvc2UuYmluZCh0aGlzKSlcclxuICB9XHJcbiAgc3VibWl0KCkge1xyXG4gICAgdGhpcy5mb3JtLnN1Ym1pdCgpLnN1YnNjcmliZSh0aGlzLl9jbG9zZS5iaW5kKHRoaXMpKTtcclxuICB9XHJcbiAgcHJpdmF0ZSBfY2xvc2UoKTogdm9pZCB7XHJcbiAgICB0aGlzLl9yb3V0ZXIubmF2aWdhdGUoWydtYWlsYm94L2YnLCBJTkJPWF0sIHtcclxuICAgICAgcXVlcnlQYXJhbXNIYW5kbGluZzogJ3ByZXNlcnZlJ1xyXG4gICAgfSk7XHJcbiAgfVxyXG4gIG5nT25EZXN0cm95KCk6IHZvaWQge1xyXG4gICAgdGhpcy5fZGVzdHJveS5uZXh0KCk7XHJcbiAgICB0aGlzLl9kZXN0cm95LmNvbXBsZXRlKCk7XHJcbiAgfVxyXG59XHJcbiIsIjxtYXQtdG9vbGJhciBjbGFzcz1cIm5hdi10b29sYmFyXCI+XHJcbiAgPGJ1dHRvbiBtYXQtaWNvbi1idXR0b24gY29sb3I9XCJwcmltYXJ5XCIgKGNsaWNrKT1cImZvcm0uYmFjaygpXCIgW2JpemRvY1Rvb2x0aXBdPVwiJ0JhY2snfHRyYW5zbGF0ZVwiICpuZ0lmPVwiZm9ybS5wYWdlICE9PSB1bmRlZmluZWRcIiB0YWJpbmRleD1cIjFcIj5cclxuICAgIDxtYXQtaWNvbiBjbGFzcz1cIm1hdC1pY29uLXJ0bC1taXJyb3JcIj5hcnJvd19iYWNrPC9tYXQtaWNvbj5cclxuICA8L2J1dHRvbj5cclxuICA8YnV0dG9uIG1hdC1pY29uLWJ1dHRvbiBjb2xvcj1cInByaW1hcnlcIiAqbmdJZj1cIm1vZGVsLmRyYWZ0XCIgZGF0YS1oZWxwPVwic3VibWl0XCJcclxuICAgICAgICAgIChjbGljayk9XCJzdWJtaXQoKVwiIFtkaXNhYmxlZF09XCIhdmFsaWR8fHdvcmtpbmdcIiBbYml6ZG9jVG9vbHRpcF09XCInU3VibWl0JyB8IHRyYW5zbGF0ZVwiPlxyXG4gICAgPG1hdC1pY29uIGNsYXNzPVwibWF0LWljb24tcnRsLW1pcnJvclwiPnNlbmQ8L21hdC1pY29uPlxyXG4gIDwvYnV0dG9uPlxyXG4gIDxidXR0b24gbWF0LWljb24tYnV0dG9uIGNvbG9yPVwicHJpbWFyeVwiICpuZ0lmPVwiZm9ybS5hY3Rpb25zLmxlbmd0aCA9PT0gMVwiIFthdHRyLmRhdGEtaGVscF09XCInYWN0aW9uLScrZm9ybS5hY3Rpb25zWzBdLm5hbWVcIiAoY2xpY2spPVwic2VuZChtb2RlbC5hY3Rpb25zWzBdKVwiIFtkaXNhYmxlZF09XCIhdmFsaWR8fHdvcmtpbmdcIiBbYml6ZG9jVG9vbHRpcF09XCJmb3JtLmFjdGlvbnNbMF0udGl0bGVcIj5cclxuICAgIDxtYXQtaWNvbiBjbGFzcz1cIm1hdC1pY29uLXJ0bC1taXJyb3JcIj57e2Zvcm0uYWN0aW9uc1swXS5pY29uIHx8ICdzZW5kJ319PC9tYXQtaWNvbj5cclxuICA8L2J1dHRvbj5cclxuICA8YnV0dG9uIG1hdC1pY29uLWJ1dHRvbiBkYXRhLWhlbHA9XCJzZW5kXCIgY29sb3I9XCJwcmltYXJ5XCIgKm5nSWY9XCJmb3JtLmFjdGlvbnMubGVuZ3RoID4gMVwiIFttYXRNZW51VHJpZ2dlckZvcl09XCJhY3Rpb25tZW51XCIgW2Rpc2FibGVkXT1cIiF2YWxpZHx8d29ya2luZ1wiIFtiaXpkb2NUb29sdGlwXT1cIidTZW5kJyB8IHRyYW5zbGF0ZVwiPlxyXG4gICAgPG1hdC1pY29uIGNsYXNzPVwibWF0LWljb24tcnRsLW1pcnJvclwiPnNlbmQ8L21hdC1pY29uPlxyXG4gIDwvYnV0dG9uPlxyXG4gIDwhLS0gYWN0aW9uIC0tPlxyXG4gIDxtYXQtbWVudSAjYWN0aW9ubWVudT5cclxuICAgIDxuZy1jb250YWluZXIgKm5nRm9yPVwibGV0IGEgb2YgZm9ybS5hY3Rpb25zIHwgc29ydCA6ICdncm91cCc7IGxldCBpID0gaW5kZXhcIj5cclxuICAgICAgPG1hdC1kaXZpZGVyICpuZ0lmPVwiaT4wICYmIGZvcm0uYWN0aW9uc1tpLTFdLmdyb3VwICE9PSBhLmdyb3VwXCI+PC9tYXQtZGl2aWRlcj5cclxuICAgICAgPGJ1dHRvbiBtYXQtbWVudS1pdGVtIChjbGljayk9XCJzZW5kKGEubmFtZSlcIj57e2EudGl0bGV9fTwvYnV0dG9uPlxyXG4gICAgPC9uZy1jb250YWluZXI+XHJcbiAgPC9tYXQtbWVudT5cclxuICA8YnV0dG9uIG1hdC1pY29uLWJ1dHRvbiAoY2xpY2spPVwiZm9ybS5zYXZlKCkuc3Vic2NyaWJlKClcIiBkYXRhLWhlbHA9XCJzYXZlXCIgW2Rpc2FibGVkXT1cIiFkaXJ0eXx8d29ya2luZ1wiIFtiaXpkb2NUb29sdGlwXT1cIihtb2RlbC5kcmFmdCA/ICdTYXZlRHJhZnQnIDogJ1NhdmUnKSB8IHRyYW5zbGF0ZVwiICpuZ0lmPVwibW9kZSA9PT0gJ2NvbXBvc2UnXCI+XHJcbiAgICA8bWF0LWljb24+c2F2ZTwvbWF0LWljb24+XHJcbiAgPC9idXR0b24+XHJcbiAgPGJ1dHRvbiBtYXQtaWNvbi1idXR0b24gZGF0YS1oZWxwPVwidGFnXCIgKGNsaWNrKT1cImZvcm0udGFnKCRldmVudClcIiBbYml6ZG9jVG9vbHRpcF09XCInVGFncycgfCB0cmFuc2xhdGVcIiBbZGlzYWJsZWRdPVwid29ya2luZ1wiPjxtYXQtaWNvbiBjbGFzcz1cImZpbGxlZFwiPnt7bW9kZWwudGFncyAmJiBtb2RlbC50YWdzLmxlbmd0aCA/J2Jvb2ttYXJrJzonYm9va21hcmtfYm9yZGVyJ319PC9tYXQtaWNvbj48L2J1dHRvbj5cclxuICA8YnV0dG9uIG1hdC1pY29uLWJ1dHRvbiBkYXRhLWhlbHA9XCJmbGFnXCIgW2JpemRvY1Rvb2x0aXBdPVwiJ0ZsYWdnZWQnfCB0cmFuc2xhdGVcIiBbZGlzYWJsZWRdPVwid29ya2luZ1wiIChjbGljayk9XCJmb3JtLmZsYWcoKVwiPjxtYXQtaWNvbiBjbGFzcz1cImZpbGxlZFwiPnt7bW9kZWwuZmxhZyA/ICdzdGFyJyA6ICdzdGFyX2JvcmRlcid9fTwvbWF0LWljb24+PC9idXR0b24+XHJcbiAgPGJ1dHRvbiBtYXQtaWNvbi1idXR0b24gKGNsaWNrKT1cImZvcm0uYXR0YWNoKClcIiBkYXRhLWhlbHA9XCJhdHRhY2hcIiBbYml6ZG9jVG9vbHRpcF09XCInQXR0YWNoRmlsZScgfCB0cmFuc2xhdGVcIiBbZGlzYWJsZWRdPVwid29ya2luZ1wiPjxtYXQtaWNvbj5hdHRhY2hfZmlsZTwvbWF0LWljb24+PC9idXR0b24+XHJcbiAgPGJ1dHRvbiBtYXQtaWNvbi1idXR0b24gW2Rpc2FibGVkXT1cIndvcmtpbmdcIiBkYXRhLWhlbHA9XCJlZGl0XCIgKGNsaWNrKT1cImVkaXQoKVwiIFtiaXpkb2NUb29sdGlwXT1cIidFZGl0JyB8IHRyYW5zbGF0ZVwiICpuZ0lmPVwibW9kZSAhPT0gJ2NvbXBvc2UnICYmICFtb2RlbC5jb21wbGV0ZWQgJiYgbW9kZWwucGVuZGluZ1wiPjxtYXQtaWNvbj5jcmVhdGU8L21hdC1pY29uPjwvYnV0dG9uPlxyXG4gIDxzcGFuIGNsYXNzPVwiZGl2aWRlclwiPjwvc3Bhbj4gXHJcbiAgPGJ1dHRvbiBtYXQtaWNvbi1idXR0b24gKGNsaWNrKT1cInRvZ2dsZSgnY29tbWVudHMnKVwiIGRhdGEtaGVscD1cImNvbW1lbnRzXCIgW2JpemRvY1Rvb2x0aXBdPVwiJ0NvbW1lbnRzJyB8IHRyYW5zbGF0ZVwiIFttYXRCYWRnZV09XCJuZXdDb21tZW50c0NvdW50XCIgW21hdEJhZGdlSGlkZGVuXT1cIiFuZXdDb21tZW50c0NvdW50XCIgbWF0QmFkZ2VDb2xvcj1cImFjY2VudFwiPlxyXG4gICAgPG1hdC1pY29uIGNsYXNzPVwiZmlsbGVkXCI+Zm9ybWF0X3F1b3RlPC9tYXQtaWNvbj5cclxuICA8L2J1dHRvbj5cclxuICA8YnV0dG9uIG1hdC1pY29uLWJ1dHRvbiAoY2xpY2spPVwidG9nZ2xlKCd2aWV3cycpXCIgW2JpemRvY1Rvb2x0aXBdPVwiJ1ZpZXcnIHwgdHJhbnNsYXRlXCIgW2F0dHIuYXJpYS1sYWJlbF09XCInVmlldycgfCB0cmFuc2xhdGVcIiAqbmdJZj1cImVuYWJsZUFuYWx5c2lzXCIgY2xhc3M9XCJ0b29sXCI+PG1hdC1pY29uPmRhdGFfdXNhZ2U8L21hdC1pY29uPjwvYnV0dG9uPlxyXG4gIDxidXR0b24gbWF0LWljb24tYnV0dG9uIFttYXRNZW51VHJpZ2dlckZvcl09XCJvcHRpb25zTWVudVwiIFtiaXpkb2NUb29sdGlwXT1cIidPcHRpb25zJyB8IHRyYW5zbGF0ZVwiIFthdHRyLmFyaWEtbGFiZWxdPVwiJ09wdGlvbnMnIHwgdHJhbnNsYXRlXCI+PG1hdC1pY29uPm1vcmVfdmVydDwvbWF0LWljb24+PC9idXR0b24+XHJcbiAgPG1hdC1tZW51ICNvcHRpb25zTWVudT1cIm1hdE1lbnVcIj5cclxuICAgIDxuZy10ZW1wbGF0ZSBtYXRNZW51Q29udGVudD5cclxuICAgICAgPGJ1dHRvbiBtYXQtbWVudS1pdGVtIChjbGljayk9XCJmb3JtLmNvcHkoKVwiIFtkaXNhYmxlZF09XCJ3b3JraW5nXCI+XHJcbiAgICAgICAgPCEtLTxtYXQtaWNvbj5jb250ZW50X2NvcHk8L21hdC1pY29uPi0tPlxyXG4gICAgICAgIDxzcGFuPnt7J0NvcHknIHwgdHJhbnNsYXRlfX08L3NwYW4+XHJcbiAgICAgIDwvYnV0dG9uPlxyXG4gICAgICA8YnV0dG9uIG1hdC1tZW51LWl0ZW0gKGNsaWNrKT1cImRpc2NhcmQoKVwiICpuZ0lmPVwibW9kZWwuZHJhZnQgJiYgIW1vZGVsLmlzc3VlZFwiIFtkaXNhYmxlZF09XCJ3b3JraW5nXCI+XHJcbiAgICAgICAgPCEtLTxtYXQtaWNvbj5kZWxldGVfb3V0bGluZWQ8L21hdC1pY29uPi0tPlxyXG4gICAgICAgIDxzcGFuPnt7J0Rpc2NhcmQnIHwgdHJhbnNsYXRlfX08L3NwYW4+XHJcbiAgICAgIDwvYnV0dG9uPlxyXG4gICAgICA8bmctY29udGFpbmVyICpuZ0lmPVwiZm9ybS5oZWxwXCI+XHJcbiAgICAgICAgPG1hdC1kaXZpZGVyPjwvbWF0LWRpdmlkZXI+XHJcbiAgICAgICAgPGJ1dHRvbiBtYXQtbWVudS1pdGVtIChjbGljayk9XCJmb3JtLmd1aWRlKGZvcm0uaGVscClcIj5cclxuICAgICAgICAgIDwhLS08bWF0LWljb24+aGVscF9vdXRsaW5lPC9tYXQtaWNvbj4tLT5cclxuICAgICAgICAgIDxzcGFuPnt7J0hlbHAnIHwgdHJhbnNsYXRlfX08L3NwYW4+XHJcbiAgICAgICAgPC9idXR0b24+XHJcbiAgICAgIDwvbmctY29udGFpbmVyPlxyXG4gICAgPC9uZy10ZW1wbGF0ZT5cclxuICA8L21hdC1tZW51PlxyXG48L21hdC10b29sYmFyPlxyXG48bWF0LXNpZGVuYXYtY29udGFpbmVyIGNsYXNzPVwicGFnZS1jb250YWluZXJcIj5cclxuICA8bWF0LXNpZGVuYXYtY29udGVudD5cclxuICAgIDxiaXpkb2MtZm9ybSBbbW9kZWxdPW1vZGVsICNmb3JtICh2YWxpZENoYW5nZSk9XCJ2YWxpZD0kZXZlbnRcIlxyXG4gICAgICAgICAgICAgICAgICh3b3JraW5nQ2hhbmdlKT1cIndvcmtpbmc9JGV2ZW50XCJcclxuICAgICAgICAgICAgICAgICAoZGlydHlDaGFuZ2UpPVwiZGlydHk9JGV2ZW50XCIgW21vZGVdPVwibW9kZVwiPjwvYml6ZG9jLWZvcm0+XHJcbiAgPC9tYXQtc2lkZW5hdi1jb250ZW50PlxyXG4gIDxtYXQtc2lkZW5hdiBtb2RlPVwib3ZlclwiIHBvc2l0aW9uPVwiZW5kXCIgW29wZW5lZF09XCJmYWxzZVwiICNkcmF3ZXIgYXV0b0ZvY3VzPVwiZmFsc2VcIiBjbGFzcz1cInNpZGUtbmF2XCI+XHJcbiAgICA8bmctY29udGFpbmVyIFtuZ1N3aXRjaF09XCJ2aWV3TW9kZVwiPlxyXG4gICAgICA8Yml6ZG9jLWRvY3VtZW50LXZpZXdzIFttb2RlbF09XCJtb2RlbFwiICpuZ1N3aXRjaENhc2U9XCIndmlld3MnXCI+PC9iaXpkb2MtZG9jdW1lbnQtdmlld3M+XHJcbiAgICAgIDxiaXpkb2MtY29tbWVudHMgW21vZGVsXT1cIm1vZGVsXCIgKm5nU3dpdGNoRGVmYXVsdD48L2JpemRvYy1jb21tZW50cz5cclxuICAgIDwvbmctY29udGFpbmVyPlxyXG4gIDwvbWF0LXNpZGVuYXY+XHJcbjwvbWF0LXNpZGVuYXYtY29udGFpbmVyPlxyXG4iXX0=