@bizdoc/core 1.13.37 → 1.14.0-next.10

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 (329) hide show
  1. package/assets/bizdoc-schema.json +5 -0
  2. package/assets/themes/brown.min.css +18 -20
  3. package/assets/themes/dark.min.css +1 -80
  4. package/assets/themes/deep-purple-light-blue.min.css +20 -22
  5. package/assets/themes/deep-purple-teal.min.css +20 -22
  6. package/assets/themes/default.min.css +20 -22
  7. package/assets/themes/green.min.css +18 -20
  8. package/assets/themes/indigo.min.css +18 -20
  9. package/esm2020/lib/admin/admin-dismiss.service.mjs +3 -3
  10. package/esm2020/lib/admin/admin-menu.component.mjs +3 -3
  11. package/esm2020/lib/admin/core/ace.input.mjs +3 -3
  12. package/esm2020/lib/admin/core/color-picker.input.mjs +3 -3
  13. package/esm2020/lib/admin/core/search.input.mjs +3 -3
  14. package/esm2020/lib/admin/diff/configuration-diff.component.mjs +3 -3
  15. package/esm2020/lib/admin/document-trace/document-trace.component.mjs +3 -3
  16. package/esm2020/lib/admin/document-trace/reassign.dialog.mjs +3 -3
  17. package/esm2020/lib/admin/document-trace/trace-element.component.mjs +3 -3
  18. package/esm2020/lib/admin/form/form.resolve.service.mjs +3 -3
  19. package/esm2020/lib/admin/form/form.service.mjs +3 -3
  20. package/esm2020/lib/admin/form/workflow/node.component.mjs +3 -3
  21. package/esm2020/lib/admin/form/workflow/role-node.component.mjs +3 -3
  22. package/esm2020/lib/admin/form/workflow/workflow.component.mjs +5 -5
  23. package/esm2020/lib/admin/indices/manage-cube-index.component.mjs +3 -3
  24. package/esm2020/lib/admin/patterns/patterns.component.mjs +3 -3
  25. package/esm2020/lib/admin/permissions/permissions.component.mjs +3 -3
  26. package/esm2020/lib/admin/positions/positions-popup.component.mjs +3 -3
  27. package/esm2020/lib/admin/positions/positions.component.mjs +3 -3
  28. package/esm2020/lib/admin/profiler/profiler.component.mjs +3 -3
  29. package/esm2020/lib/admin/utility-wrapper.component.mjs +3 -3
  30. package/esm2020/lib/admin/utility.pane.component.mjs +3 -3
  31. package/esm2020/lib/app.component.mjs +8 -8
  32. package/esm2020/lib/bizdoc.module.mjs +7 -5
  33. package/esm2020/lib/browse/browse-items.component.mjs +10 -12
  34. package/esm2020/lib/browse/browse.mobile.component.mjs +3 -3
  35. package/esm2020/lib/browse/browse.pane.component.mjs +3 -3
  36. package/esm2020/lib/browse/expanded-item/expanded-item.component.mjs +17 -12
  37. package/esm2020/lib/browse/filter/filter.component.mjs +3 -3
  38. package/esm2020/lib/browse/folders-menu.component.mjs +3 -3
  39. package/esm2020/lib/chat/chat-info.mjs +3 -3
  40. package/esm2020/lib/chat/chat.mobile.component.mjs +3 -3
  41. package/esm2020/lib/chat/chat.service.mjs +3 -3
  42. package/esm2020/lib/chat/contacts.component.mjs +6 -6
  43. package/esm2020/lib/chat/contacts.pane.component.mjs +3 -3
  44. package/esm2020/lib/chat/conversation.component.mjs +3 -3
  45. package/esm2020/lib/chat/conversation.pane.component.mjs +3 -3
  46. package/esm2020/lib/compose/action/action-picker.component.mjs +3 -3
  47. package/esm2020/lib/compose/action/action.dialog.mjs +3 -3
  48. package/esm2020/lib/compose/action/action.pane.dialog.exp.mjs +3 -3
  49. package/esm2020/lib/compose/action/assign-action.component.mjs +21 -45
  50. package/esm2020/lib/compose/action/moveto-action.component.mjs +3 -3
  51. package/esm2020/lib/compose/action/return-action.component.mjs +18 -18
  52. package/esm2020/lib/compose/attachments/attachments.component.mjs +3 -3
  53. package/esm2020/lib/compose/attachments/preview/attachment-preview.component.mjs +3 -3
  54. package/esm2020/lib/compose/attachments/progress-button.directive.mjs +3 -3
  55. package/esm2020/lib/compose/can-deactivate-changes.service.mjs +5 -5
  56. package/esm2020/lib/compose/comments/Comments.pane.component.mjs +3 -3
  57. package/esm2020/lib/compose/comments/comment.component.mjs +3 -3
  58. package/esm2020/lib/compose/comments/comments.component.mjs +3 -3
  59. package/esm2020/lib/compose/comments/edit-comment.component.mjs +3 -3
  60. package/esm2020/lib/compose/comments/edits.component.mjs +3 -3
  61. package/esm2020/lib/compose/comments/quick-comment.component.exp.mjs +3 -3
  62. package/esm2020/lib/compose/comments/votes.component.mjs +3 -3
  63. package/esm2020/lib/compose/compose-resolve.service.mjs +6 -6
  64. package/esm2020/lib/compose/compose.mobile.component.mjs +5 -5
  65. package/esm2020/lib/compose/compose.pane.component.mjs +9 -6
  66. package/esm2020/lib/compose/copy/copy.dialog.mjs +3 -3
  67. package/esm2020/lib/compose/dismiss.service.mjs +5 -5
  68. package/esm2020/lib/compose/document-resolver.service.mjs +3 -3
  69. package/esm2020/lib/compose/document.component.mjs +3 -3
  70. package/esm2020/lib/compose/document.mobile.component.mjs +3 -3
  71. package/esm2020/lib/compose/document.pane.component.mjs +3 -3
  72. package/esm2020/lib/compose/events/events.component.mjs +3 -3
  73. package/esm2020/lib/compose/form-selector/form-selector.sheet.mjs +3 -3
  74. package/esm2020/lib/compose/form.component.mjs +40 -31
  75. package/esm2020/lib/compose/new-menu.component.mjs +3 -3
  76. package/esm2020/lib/compose/privilage.directive.mjs +6 -6
  77. package/esm2020/lib/compose/recipient-resolver.service.mjs +3 -3
  78. package/esm2020/lib/compose/save-changes.dialog.mjs +3 -3
  79. package/esm2020/lib/compose/state.component.mjs +3 -3
  80. package/esm2020/lib/compose/tag/tags.component.mjs +5 -5
  81. package/esm2020/lib/compose/trace/flow.component.mjs +71 -29
  82. package/esm2020/lib/compose/trace/people.component.mjs +3 -3
  83. package/esm2020/lib/compose/trace/trace.base.mjs +3 -3
  84. package/esm2020/lib/compose/trace/trace.component.mjs +12 -5
  85. package/esm2020/lib/compose/trace/trace.pane.component.mjs +3 -3
  86. package/esm2020/lib/compose/version-compare/version-compare.component.mjs +3 -3
  87. package/esm2020/lib/compose/version-compare/version-compare.directive.mjs +9 -9
  88. package/esm2020/lib/compose/version-compare/version.pane.component.mjs +3 -3
  89. package/esm2020/lib/core/NgComponentOutlet.mjs +3 -3
  90. package/esm2020/lib/core/account.service.mjs +3 -3
  91. package/esm2020/lib/core/animated-icon/animated-icon.directive.mjs +3 -3
  92. package/esm2020/lib/core/animations.mjs +3 -3
  93. package/esm2020/lib/core/avatar/avatar.component.mjs +3 -3
  94. package/esm2020/lib/core/base.mjs +1 -1
  95. package/esm2020/lib/core/component-factory-resolver.mjs +4 -4
  96. package/esm2020/lib/core/configuration.mjs +6 -5
  97. package/esm2020/lib/core/controls/address.input.mjs +20 -7
  98. package/esm2020/lib/core/controls/auto-complete.input.mjs +6 -6
  99. package/esm2020/lib/core/controls/combination-picker-body.mjs +3 -3
  100. package/esm2020/lib/core/controls/combination-picker.mjs +3 -3
  101. package/esm2020/lib/core/controls/combination-pool.mjs +3 -3
  102. package/esm2020/lib/core/controls/file.input.mjs +144 -116
  103. package/esm2020/lib/core/controls/select.input.mjs +19 -19
  104. package/esm2020/lib/core/controls/time-picker.mjs +3 -3
  105. package/esm2020/lib/core/controls/timespan.input.mjs +3 -3
  106. package/esm2020/lib/core/datasource.service.mjs +3 -3
  107. package/esm2020/lib/core/functions.mjs +21 -16
  108. package/esm2020/lib/core/guide/guide.component.mjs +3 -3
  109. package/esm2020/lib/core/guide/guide.service.mjs +16 -5
  110. package/esm2020/lib/core/http.interceptor.mjs +3 -3
  111. package/esm2020/lib/core/hub.service.mjs +3 -3
  112. package/esm2020/lib/core/identity/identity.component.mjs +3 -3
  113. package/esm2020/lib/core/info/attachment-info.service.mjs +3 -3
  114. package/esm2020/lib/core/info/document-info.service.mjs +3 -3
  115. package/esm2020/lib/core/info/location-info.component.mjs +3 -3
  116. package/esm2020/lib/core/info/map-info.mjs +3 -3
  117. package/esm2020/lib/core/layout/autocomplete.field.mjs +3 -3
  118. package/esm2020/lib/core/layout/checkbox.field.mjs +3 -3
  119. package/esm2020/lib/core/layout/checkbox.mjs +3 -3
  120. package/esm2020/lib/core/layout/date-range.field.mjs +3 -3
  121. package/esm2020/lib/core/layout/date.field.mjs +3 -3
  122. package/esm2020/lib/core/layout/expression.field.mjs +3 -3
  123. package/esm2020/lib/core/layout/file.field.mjs +3 -3
  124. package/esm2020/lib/core/layout/html.field.mjs +3 -3
  125. package/esm2020/lib/core/layout/input.base.mjs +3 -3
  126. package/esm2020/lib/core/layout/input.field.mjs +3 -3
  127. package/esm2020/lib/core/layout/layout.component.mjs +3 -3
  128. package/esm2020/lib/core/layout/numeric.field.mjs +3 -3
  129. package/esm2020/lib/core/layout/select.field.mjs +3 -3
  130. package/esm2020/lib/core/layout/switch.field.mjs +3 -3
  131. package/esm2020/lib/core/layout/textarea.field.mjs +3 -3
  132. package/esm2020/lib/core/layout/timespan.field.mjs +3 -3
  133. package/esm2020/lib/core/lottie-animation.mjs +3 -3
  134. package/esm2020/lib/core/mailbox.service.mjs +25 -10
  135. package/esm2020/lib/core/models.mjs +1 -1
  136. package/esm2020/lib/core/none.component.mjs +3 -3
  137. package/esm2020/lib/core/pipes/action.pipe.mjs +3 -3
  138. package/esm2020/lib/core/pipes/calendar.pipe.mjs +3 -3
  139. package/esm2020/lib/core/pipes/date-format.pipe.mjs +3 -3
  140. package/esm2020/lib/core/pipes/daterange.pipe.mjs +6 -6
  141. package/esm2020/lib/core/pipes/difference.pipe.mjs +3 -3
  142. package/esm2020/lib/core/pipes/duration-format.pipe.mjs +3 -3
  143. package/esm2020/lib/core/pipes/duration.pipe.mjs +3 -3
  144. package/esm2020/lib/core/pipes/form.pipe.mjs +3 -3
  145. package/esm2020/lib/core/pipes/join.pipe.mjs +3 -3
  146. package/esm2020/lib/core/pipes/role.pipe.mjs +3 -3
  147. package/esm2020/lib/core/pipes/sanitize-html.pipe.mjs +3 -3
  148. package/esm2020/lib/core/pipes/sort.pipe.mjs +6 -6
  149. package/esm2020/lib/core/pipes/state.pipe.mjs +3 -3
  150. package/esm2020/lib/core/pipes/time-ago.pipe.mjs +3 -3
  151. package/esm2020/lib/core/pipes/translate.pipe.mjs +6 -6
  152. package/esm2020/lib/core/pipes/type-value.pipe.mjs +3 -3
  153. package/esm2020/lib/core/pipes/user-name.pipe.mjs +3 -3
  154. package/esm2020/lib/core/popup/popup.component.mjs +3 -3
  155. package/esm2020/lib/core/popup/popup.service.mjs +3 -3
  156. package/esm2020/lib/core/popup/tooltip.directive.mjs +6 -6
  157. package/esm2020/lib/core/prompt/ask/ask.dialog.mjs +3 -3
  158. package/esm2020/lib/core/prompt/mask/mask.component.mjs +3 -3
  159. package/esm2020/lib/core/prompt.service.mjs +3 -3
  160. package/esm2020/lib/core/router.mjs +6 -6
  161. package/esm2020/lib/core/session.service.mjs +20 -9
  162. package/esm2020/lib/core/slots/pane-ref.mjs +4 -1
  163. package/esm2020/lib/core/slots/router.directive.mjs +3 -3
  164. package/esm2020/lib/core/slots/router.service.mjs +3 -3
  165. package/esm2020/lib/core/slots/slots.component.mjs +114 -76
  166. package/esm2020/lib/core/tagging/documents.component.mjs +3 -3
  167. package/esm2020/lib/core/tagging/edit-input.component.mjs +3 -3
  168. package/esm2020/lib/core/tagging/emoji.component.mjs +3 -3
  169. package/esm2020/lib/core/tagging/tagging-item.directive.mjs +3 -3
  170. package/esm2020/lib/core/tagging/tagging.component-base.mjs +3 -3
  171. package/esm2020/lib/core/tagging/tagging.directive.mjs +3 -3
  172. package/esm2020/lib/core/tagging/tagging.pipe.mjs +3 -3
  173. package/esm2020/lib/core/tagging/users.component.mjs +3 -3
  174. package/esm2020/lib/core/translate.service.mjs +3 -3
  175. package/esm2020/lib/core/translations.mjs +11 -7
  176. package/esm2020/lib/core/window-title.service.mjs +3 -3
  177. package/esm2020/lib/cube/accum/accum.component.mjs +3 -3
  178. package/esm2020/lib/cube/chart/chart.component.mjs +20 -5
  179. package/esm2020/lib/cube/cube-info.service.mjs +3 -3
  180. package/esm2020/lib/cube/cube-menu.component.mjs +3 -3
  181. package/esm2020/lib/cube/cube-view.component.mjs +3 -3
  182. package/esm2020/lib/cube/cube.service.mjs +3 -3
  183. package/esm2020/lib/cube/explore/document-item.component.mjs +3 -3
  184. package/esm2020/lib/cube/explore/explore-item.component.mjs +3 -3
  185. package/esm2020/lib/cube/explore/explore-items.component.mjs +3 -3
  186. package/esm2020/lib/cube/explore/explore.pane.component.mjs +5 -5
  187. package/esm2020/lib/cube/explore/item-resolver.service.mjs +6 -6
  188. package/esm2020/lib/cube/explore/item.pane.component.mjs +3 -3
  189. package/esm2020/lib/cube/filter/filter-tags.component.exp.mjs +3 -3
  190. package/esm2020/lib/cube/filter/filter.component.mjs +3 -3
  191. package/esm2020/lib/cube/grid/grid.component.mjs +3 -3
  192. package/esm2020/lib/cube/grid/spreadsheet.component.mjs +3 -3
  193. package/esm2020/lib/cube/matrix/matrix.base.mjs +3 -3
  194. package/esm2020/lib/cube/matrix/matrix.mobile.component.mjs +3 -3
  195. package/esm2020/lib/cube/matrix/matrix.pane.component.mjs +6 -6
  196. package/esm2020/lib/cube/matrix/popup.component.mjs +3 -3
  197. package/esm2020/lib/cube/matrix/table.component.mjs +5 -5
  198. package/esm2020/lib/cube/parallel/parallel.component.mjs +3 -3
  199. package/esm2020/lib/cube/pivot/pivot.component.mjs +16 -5
  200. package/esm2020/lib/cube/sum/sum.component.mjs +3 -3
  201. package/esm2020/lib/cube/view-base.mjs +3 -3
  202. package/esm2020/lib/cube/view.mobile.component.mjs +3 -3
  203. package/esm2020/lib/cube/view.pane.component.mjs +8 -4
  204. package/esm2020/lib/dashboard/actions/actions.widget.mjs +3 -3
  205. package/esm2020/lib/dashboard/cube/accum-cube.widget.mjs +3 -3
  206. package/esm2020/lib/dashboard/cube/compare.widget.mjs +3 -3
  207. package/esm2020/lib/dashboard/cube/cube-analysis.base.mjs +3 -3
  208. package/esm2020/lib/dashboard/cube/cube-analysis.widget.mjs +3 -3
  209. package/esm2020/lib/dashboard/cube/cube-chart.widget.mjs +3 -3
  210. package/esm2020/lib/dashboard/cube/documents.widget.mjs +3 -3
  211. package/esm2020/lib/dashboard/cube/filter/filter.component.mjs +3 -3
  212. package/esm2020/lib/dashboard/dashboard.component.mjs +3 -3
  213. package/esm2020/lib/dashboard/dashboard.pane.component.mjs +3 -3
  214. package/esm2020/lib/dashboard/recents/recents.widget.mjs +5 -5
  215. package/esm2020/lib/dashboard/score/activity.widget.mjs +3 -3
  216. package/esm2020/lib/dashboard/score/compare-groups.widget.mjs +3 -3
  217. package/esm2020/lib/dashboard/score/peers-performance.widget.mjs +3 -3
  218. package/esm2020/lib/dashboard/score/pending-results.widget.mjs +3 -3
  219. package/esm2020/lib/dashboard/score/personal-score.widget.mjs +18 -14
  220. package/esm2020/lib/dashboard/widget-item.component.mjs +3 -3
  221. package/esm2020/lib/desktop.module.mjs +4 -4
  222. package/esm2020/lib/home/about/about.dialog.mjs +3 -3
  223. package/esm2020/lib/home/home-base.component.mjs +3 -3
  224. package/esm2020/lib/home/home.desktop.component.mjs +6 -6
  225. package/esm2020/lib/home/home.mobile.component.mjs +3 -3
  226. package/esm2020/lib/home/notifications/notifications.component.mjs +3 -3
  227. package/esm2020/lib/home/options/options.component.mjs +3 -3
  228. package/esm2020/lib/home/outofoffice/outofoffice.component.mjs +3 -3
  229. package/esm2020/lib/home/search.service.mjs +3 -3
  230. package/esm2020/lib/home/sign/sign.component.mjs +3 -3
  231. package/esm2020/lib/home/tools.component.mjs +3 -3
  232. package/esm2020/lib/impersonate/impersonate.component.mjs +3 -3
  233. package/esm2020/lib/mobile.module.mjs +4 -4
  234. package/esm2020/lib/modules/chart.module.mjs +4 -4
  235. package/esm2020/lib/modules/circular-gauge.module.mjs +4 -4
  236. package/esm2020/lib/modules/datepicker.intl.mjs +3 -3
  237. package/esm2020/lib/modules/dayjs.module.mjs +4 -4
  238. package/esm2020/lib/modules/diagram.module.mjs +4 -4
  239. package/esm2020/lib/modules/gantt.module.mjs +4 -4
  240. package/esm2020/lib/modules/grid.module.mjs +4 -4
  241. package/esm2020/lib/modules/material.module.mjs +4 -4
  242. package/esm2020/lib/modules/paginator.intl.mjs +3 -3
  243. package/esm2020/lib/modules/pivot.module.mjs +4 -4
  244. package/esm2020/lib/modules/schedule.module.mjs +4 -4
  245. package/esm2020/lib/modules/spreadsheet.module.mjs +4 -4
  246. package/esm2020/lib/modules/stepper.intl.mjs +3 -3
  247. package/esm2020/lib/modules/texteditor.module.mjs +4 -4
  248. package/esm2020/lib/notifications/filter.component.mjs +3 -3
  249. package/esm2020/lib/notifications/notifications-table.component.mjs +3 -3
  250. package/esm2020/lib/notifications/notifications.mobile.component.mjs +3 -3
  251. package/esm2020/lib/notifications/notifications.pane.component.mjs +3 -3
  252. package/esm2020/lib/notifications/notifications.service.mjs +3 -3
  253. package/esm2020/lib/notifications/types/commented.notification.mjs +3 -3
  254. package/esm2020/lib/notifications/types/cube-anomaly.notification.mjs +3 -3
  255. package/esm2020/lib/notifications/types/escalated.notification.mjs +3 -3
  256. package/esm2020/lib/notifications/types/liked.notification.mjs +3 -3
  257. package/esm2020/lib/notifications/types/long-running-task.notification.mjs +3 -3
  258. package/esm2020/lib/notifications/types/notification-base.mjs +5 -5
  259. package/esm2020/lib/notifications/types/nudge.notification.mjs +3 -3
  260. package/esm2020/lib/notifications/types/state-changed.notification.mjs +3 -3
  261. package/esm2020/lib/notifications/types/tagged.notification.mjs +3 -3
  262. package/esm2020/lib/notifications/types/text.notification.mjs +3 -3
  263. package/esm2020/lib/notifications/types/upcoming-event.notification.mjs +3 -3
  264. package/esm2020/lib/options/options.component.mjs +3 -3
  265. package/esm2020/lib/options/options.service.mjs +3 -3
  266. package/esm2020/lib/reports/arguments-component.mjs +3 -3
  267. package/esm2020/lib/reports/cube/documents.component.mjs +3 -3
  268. package/esm2020/lib/reports/cube/grid-documents.component.mjs +3 -3
  269. package/esm2020/lib/reports/cube/table-documents.component.mjs +3 -3
  270. package/esm2020/lib/reports/cube/usage-args.component.mjs +3 -3
  271. package/esm2020/lib/reports/cube/usage-base.mjs +3 -3
  272. package/esm2020/lib/reports/cube/usage-chart.component.mjs +3 -3
  273. package/esm2020/lib/reports/cube/usage-pivot.component.mjs +3 -3
  274. package/esm2020/lib/reports/cube/usage.component.mjs +3 -3
  275. package/esm2020/lib/reports/report-viewer.component.mjs +3 -3
  276. package/esm2020/lib/reports/report.mobile.component.mjs +3 -3
  277. package/esm2020/lib/reports/report.pane.component.mjs +3 -3
  278. package/esm2020/lib/reports/reports-menu.component.mjs +3 -3
  279. package/esm2020/lib/reports/substitution/substitution.component.mjs +3 -3
  280. package/esm2020/lib/reports/table/table-view.component.mjs +3 -3
  281. package/esm2020/lib/reports/tasks/tasks.component.mjs +3 -3
  282. package/esm2020/lib/routes.desktop.mjs +18 -18
  283. package/esm2020/lib/scheduler/schedule.component.mjs +3 -3
  284. package/esm2020/lib/scheduler/scheduler.mobile.component.mjs +3 -3
  285. package/esm2020/lib/scheduler/scheduler.pane.component.mjs +3 -3
  286. package/esm2020/lib/shared.module.mjs +8 -6
  287. package/esm2020/lib/system.module.mjs +4 -4
  288. package/esm2020/lib/views/cube/chart.component.mjs +3 -3
  289. package/esm2020/lib/views/cube/cube-base.mjs +3 -3
  290. package/esm2020/lib/views/cube/explore.component.mjs +3 -3
  291. package/esm2020/lib/views/cube/matrix.component.mjs +3 -3
  292. package/esm2020/lib/views/cube/parallel.component.mjs +3 -3
  293. package/esm2020/lib/views/cube/pivot.component.mjs +3 -3
  294. package/esm2020/lib/views/cube/sum.component.mjs +3 -3
  295. package/esm2020/lib/views/cube/view.component.mjs +3 -3
  296. package/esm2020/lib/views/timeline/timeline.component.exp.mjs +3 -3
  297. package/esm2020/lib/views/view-item.component.mjs +9 -13
  298. package/esm2020/lib/views/views.component.mjs +3 -3
  299. package/esm2020/lib/views/views.mobile.component.mjs +3 -3
  300. package/esm2020/lib/views/views.pane.component.mjs +3 -3
  301. package/esm2020/public-api.mjs +2 -2
  302. package/fesm2015/bizdoc-core.mjs +1526 -1317
  303. package/fesm2015/bizdoc-core.mjs.map +1 -1
  304. package/fesm2020/bizdoc-core.mjs +1526 -1316
  305. package/fesm2020/bizdoc-core.mjs.map +1 -1
  306. package/lib/browse/browse-items.component.d.ts +0 -1
  307. package/lib/compose/action/assign-action.component.d.ts +3 -9
  308. package/lib/compose/action/return-action.component.d.ts +4 -2
  309. package/lib/compose/compose.pane.component.d.ts +1 -0
  310. package/lib/compose/form.component.d.ts +7 -3
  311. package/lib/core/animations.d.ts +1 -1
  312. package/lib/core/base.d.ts +3 -3
  313. package/lib/core/component-factory-resolver.d.ts +1 -1
  314. package/lib/core/configuration.d.ts +6 -5
  315. package/lib/core/controls/address.input.d.ts +5 -3
  316. package/lib/core/controls/file.input.d.ts +15 -4
  317. package/lib/core/controls/select.input.d.ts +5 -5
  318. package/lib/core/functions.d.ts +7 -3
  319. package/lib/core/guide/guide.service.d.ts +8 -2
  320. package/lib/core/mailbox.service.d.ts +2 -1
  321. package/lib/core/models.d.ts +2 -0
  322. package/lib/core/session.service.d.ts +3 -1
  323. package/lib/core/slots/pane-ref.d.ts +9 -6
  324. package/lib/core/slots/slots.component.d.ts +28 -7
  325. package/lib/core/translations.d.ts +6 -2
  326. package/lib/home/home.desktop.component.d.ts +1 -1
  327. package/lib/views/view-item.component.d.ts +2 -4
  328. package/package.json +15 -15
  329. package/public-api.d.ts +1 -1
@@ -11,7 +11,7 @@ export class CanDeactivateCompose {
11
11
  if (component.form.dirty)
12
12
  return this._sb.ask('SaveChangesAsk', 'SaveChanges', { i18n: true, color: 'primary', ok: 'Save', cancel: 'Ignore' }).pipe(switchMap(ok => {
13
13
  if (ok)
14
- return component.form.save(true);
14
+ return component.form.save();
15
15
  else
16
16
  return of(true);
17
17
  }));
@@ -19,9 +19,9 @@ export class CanDeactivateCompose {
19
19
  return true;
20
20
  }
21
21
  }
22
- CanDeactivateCompose.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.2.5", ngImport: i0, type: CanDeactivateCompose, deps: [{ token: i1.PromptService }], target: i0.ɵɵFactoryTarget.Injectable });
23
- CanDeactivateCompose.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "13.2.5", ngImport: i0, type: CanDeactivateCompose });
24
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.2.5", ngImport: i0, type: CanDeactivateCompose, decorators: [{
22
+ CanDeactivateCompose.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.1", ngImport: i0, type: CanDeactivateCompose, deps: [{ token: i1.PromptService }], target: i0.ɵɵFactoryTarget.Injectable });
23
+ CanDeactivateCompose.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "13.3.1", ngImport: i0, type: CanDeactivateCompose });
24
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.1", ngImport: i0, type: CanDeactivateCompose, decorators: [{
25
25
  type: Injectable
26
26
  }], ctorParameters: function () { return [{ type: i1.PromptService }]; } });
27
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2FuLWRlYWN0aXZhdGUtY2hhbmdlcy5zZXJ2aWNlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vbGlicmFyaWVzL2NvcmUvc3JjL2xpYi9jb21wb3NlL2Nhbi1kZWFjdGl2YXRlLWNoYW5nZXMuc2VydmljZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBRzNDLE9BQU8sRUFBYyxFQUFFLEVBQUUsTUFBTSxNQUFNLENBQUM7QUFFdEMsT0FBTyxFQUFFLFNBQVMsRUFBRSxNQUFNLGdCQUFnQixDQUFDOzs7QUFHM0MsTUFBTSxPQUFPLG9CQUFvQjtJQUMvQixZQUFvQixHQUFrQjtRQUFsQixRQUFHLEdBQUgsR0FBRyxDQUFlO0lBQ3RDLENBQUM7SUFDRCxhQUFhLENBQUMsU0FBMkIsRUFBRSxhQUFxQyxFQUFFLGFBQWtDLEVBQUUsVUFBZ0M7UUFDcEosSUFBSSxTQUFTLENBQUMsSUFBSSxDQUFDLEtBQUs7WUFDdEIsT0FBTyxJQUFJLENBQUMsR0FBRyxDQUFDLEdBQUcsQ0FBQyxnQkFBZ0IsRUFBRSxhQUFhLEVBQUUsRUFBRSxJQUFJLEVBQUUsSUFBSSxFQUFFLEtBQUssRUFBRSxTQUFTLEVBQUUsRUFBRSxFQUFFLE1BQU0sRUFBRSxNQUFNLEVBQUUsUUFBUSxFQUFFLENBQUMsQ0FBQyxJQUFJLENBQUMsU0FBUyxDQUFDLEVBQUUsQ0FBQyxFQUFFO2dCQUN2SSxJQUFJLEVBQUU7b0JBQ0osT0FBTyxTQUFTLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsQ0FBQzs7b0JBRWpDLE9BQU8sRUFBRSxDQUFDLElBQUksQ0FBQyxDQUFDO1lBQ3BCLENBQUMsQ0FBQyxDQUFDLENBQUM7O1lBQ0QsT0FBTyxJQUFJLENBQUM7SUFDbkIsQ0FBQzs7aUhBWlUsb0JBQW9CO3FIQUFwQixvQkFBb0I7MkZBQXBCLG9CQUFvQjtrQkFEaEMsVUFBVSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEluamVjdGFibGUgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuaW1wb3J0IHsgQ2FuRGVhY3RpdmF0ZSwgQWN0aXZhdGVkUm91dGVTbmFwc2hvdCwgUm91dGVyU3RhdGVTbmFwc2hvdCwgVXJsVHJlZSB9IGZyb20gJ0Bhbmd1bGFyL3JvdXRlcic7XHJcbmltcG9ydCB7IENvbXBvc2VDb21wb25lbnQgfSBmcm9tICcuL2NvbXBvc2UubW9iaWxlLmNvbXBvbmVudCc7XHJcbmltcG9ydCB7IE9ic2VydmFibGUsIG9mIH0gZnJvbSAncnhqcyc7XHJcbmltcG9ydCB7IFByb21wdFNlcnZpY2UgfSBmcm9tICcuLi9jb3JlL3Byb21wdC5zZXJ2aWNlJztcclxuaW1wb3J0IHsgc3dpdGNoTWFwIH0gZnJvbSAncnhqcy9vcGVyYXRvcnMnO1xyXG5cclxuQEluamVjdGFibGUoKVxyXG5leHBvcnQgY2xhc3MgQ2FuRGVhY3RpdmF0ZUNvbXBvc2UgaW1wbGVtZW50cyBDYW5EZWFjdGl2YXRlPENvbXBvc2VDb21wb25lbnQ+IHtcclxuICBjb25zdHJ1Y3Rvcihwcml2YXRlIF9zYjogUHJvbXB0U2VydmljZSkge1xyXG4gIH1cclxuICBjYW5EZWFjdGl2YXRlKGNvbXBvbmVudDogQ29tcG9zZUNvbXBvbmVudCwgX2N1cnJlbnRSb3V0ZTogQWN0aXZhdGVkUm91dGVTbmFwc2hvdCwgX2N1cnJlbnRTdGF0ZTogUm91dGVyU3RhdGVTbmFwc2hvdCwgX25leHRTdGF0ZT86IFJvdXRlclN0YXRlU25hcHNob3QpOiBPYnNlcnZhYmxlPGJvb2xlYW4gfCBVcmxUcmVlPiB8IFByb21pc2U8Ym9vbGVhbiB8IFVybFRyZWU+IHwgYm9vbGVhbiB8IFVybFRyZWUge1xyXG4gICAgaWYgKGNvbXBvbmVudC5mb3JtLmRpcnR5KVxyXG4gICAgICByZXR1cm4gdGhpcy5fc2IuYXNrKCdTYXZlQ2hhbmdlc0FzaycsICdTYXZlQ2hhbmdlcycsIHsgaTE4bjogdHJ1ZSwgY29sb3I6ICdwcmltYXJ5Jywgb2s6ICdTYXZlJywgY2FuY2VsOiAnSWdub3JlJyB9KS5waXBlKHN3aXRjaE1hcChvayA9PiB7XHJcbiAgICAgICAgaWYgKG9rKVxyXG4gICAgICAgICAgcmV0dXJuIGNvbXBvbmVudC5mb3JtLnNhdmUodHJ1ZSk7XHJcbiAgICAgICAgZWxzZVxyXG4gICAgICAgICAgcmV0dXJuIG9mKHRydWUpO1xyXG4gICAgICB9KSk7XHJcbiAgICBlbHNlIHJldHVybiB0cnVlO1xyXG4gIH1cclxufVxyXG4iXX0=
27
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2FuLWRlYWN0aXZhdGUtY2hhbmdlcy5zZXJ2aWNlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vbGlicmFyaWVzL2NvcmUvc3JjL2xpYi9jb21wb3NlL2Nhbi1kZWFjdGl2YXRlLWNoYW5nZXMuc2VydmljZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBRzNDLE9BQU8sRUFBYyxFQUFFLEVBQUUsTUFBTSxNQUFNLENBQUM7QUFFdEMsT0FBTyxFQUFFLFNBQVMsRUFBRSxNQUFNLGdCQUFnQixDQUFDOzs7QUFHM0MsTUFBTSxPQUFPLG9CQUFvQjtJQUMvQixZQUFvQixHQUFrQjtRQUFsQixRQUFHLEdBQUgsR0FBRyxDQUFlO0lBQ3RDLENBQUM7SUFDRCxhQUFhLENBQUMsU0FBMkIsRUFBRSxhQUFxQyxFQUFFLGFBQWtDLEVBQUUsVUFBZ0M7UUFDcEosSUFBSSxTQUFTLENBQUMsSUFBSSxDQUFDLEtBQUs7WUFDdEIsT0FBTyxJQUFJLENBQUMsR0FBRyxDQUFDLEdBQUcsQ0FBQyxnQkFBZ0IsRUFBRSxhQUFhLEVBQUUsRUFBRSxJQUFJLEVBQUUsSUFBSSxFQUFFLEtBQUssRUFBRSxTQUFTLEVBQUUsRUFBRSxFQUFFLE1BQU0sRUFBRSxNQUFNLEVBQUUsUUFBUSxFQUFFLENBQUMsQ0FBQyxJQUFJLENBQUMsU0FBUyxDQUFDLEVBQUUsQ0FBQyxFQUFFO2dCQUN2SSxJQUFJLEVBQUU7b0JBQ0osT0FBTyxTQUFTLENBQUMsSUFBSSxDQUFDLElBQUksRUFBRSxDQUFDOztvQkFFN0IsT0FBTyxFQUFFLENBQUMsSUFBSSxDQUFDLENBQUM7WUFDcEIsQ0FBQyxDQUFDLENBQUMsQ0FBQzs7WUFDRCxPQUFPLElBQUksQ0FBQztJQUNuQixDQUFDOztpSEFaVSxvQkFBb0I7cUhBQXBCLG9CQUFvQjsyRkFBcEIsb0JBQW9CO2tCQURoQyxVQUFVIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgSW5qZWN0YWJsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xyXG5pbXBvcnQgeyBDYW5EZWFjdGl2YXRlLCBBY3RpdmF0ZWRSb3V0ZVNuYXBzaG90LCBSb3V0ZXJTdGF0ZVNuYXBzaG90LCBVcmxUcmVlIH0gZnJvbSAnQGFuZ3VsYXIvcm91dGVyJztcclxuaW1wb3J0IHsgQ29tcG9zZUNvbXBvbmVudCB9IGZyb20gJy4vY29tcG9zZS5tb2JpbGUuY29tcG9uZW50JztcclxuaW1wb3J0IHsgT2JzZXJ2YWJsZSwgb2YgfSBmcm9tICdyeGpzJztcclxuaW1wb3J0IHsgUHJvbXB0U2VydmljZSB9IGZyb20gJy4uL2NvcmUvcHJvbXB0LnNlcnZpY2UnO1xyXG5pbXBvcnQgeyBzd2l0Y2hNYXAgfSBmcm9tICdyeGpzL29wZXJhdG9ycyc7XHJcblxyXG5ASW5qZWN0YWJsZSgpXHJcbmV4cG9ydCBjbGFzcyBDYW5EZWFjdGl2YXRlQ29tcG9zZSBpbXBsZW1lbnRzIENhbkRlYWN0aXZhdGU8Q29tcG9zZUNvbXBvbmVudD4ge1xyXG4gIGNvbnN0cnVjdG9yKHByaXZhdGUgX3NiOiBQcm9tcHRTZXJ2aWNlKSB7XHJcbiAgfVxyXG4gIGNhbkRlYWN0aXZhdGUoY29tcG9uZW50OiBDb21wb3NlQ29tcG9uZW50LCBfY3VycmVudFJvdXRlOiBBY3RpdmF0ZWRSb3V0ZVNuYXBzaG90LCBfY3VycmVudFN0YXRlOiBSb3V0ZXJTdGF0ZVNuYXBzaG90LCBfbmV4dFN0YXRlPzogUm91dGVyU3RhdGVTbmFwc2hvdCk6IE9ic2VydmFibGU8Ym9vbGVhbiB8IFVybFRyZWU+IHwgUHJvbWlzZTxib29sZWFuIHwgVXJsVHJlZT4gfCBib29sZWFuIHwgVXJsVHJlZSB7XHJcbiAgICBpZiAoY29tcG9uZW50LmZvcm0uZGlydHkpXHJcbiAgICAgIHJldHVybiB0aGlzLl9zYi5hc2soJ1NhdmVDaGFuZ2VzQXNrJywgJ1NhdmVDaGFuZ2VzJywgeyBpMThuOiB0cnVlLCBjb2xvcjogJ3ByaW1hcnknLCBvazogJ1NhdmUnLCBjYW5jZWw6ICdJZ25vcmUnIH0pLnBpcGUoc3dpdGNoTWFwKG9rID0+IHtcclxuICAgICAgICBpZiAob2spXHJcbiAgICAgICAgICByZXR1cm4gY29tcG9uZW50LmZvcm0uc2F2ZSgpO1xyXG4gICAgICAgIGVsc2VcclxuICAgICAgICAgIHJldHVybiBvZih0cnVlKTtcclxuICAgICAgfSkpO1xyXG4gICAgZWxzZSByZXR1cm4gdHJ1ZTtcclxuICB9XHJcbn1cclxuIl19
@@ -27,9 +27,9 @@ export class CommentsPaneComponent {
27
27
  this._destroy.complete();
28
28
  }
29
29
  }
30
- CommentsPaneComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.2.5", ngImport: i0, type: CommentsPaneComponent, deps: [{ token: i1.TranslateService }, { token: i2.PaneRef }], target: i0.ɵɵFactoryTarget.Component });
31
- CommentsPaneComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.2.5", type: CommentsPaneComponent, selector: "ng-component", host: { classAttribute: "pane" }, viewQueries: [{ propertyName: "_comments", first: true, predicate: CommentsComponent, descendants: true, static: true }], ngImport: i0, template: `<bizdoc-comments [model]=model></bizdoc-comments>`, isInline: true, styles: [":host{min-width:320px}\n"], components: [{ type: i3.CommentsComponent, selector: "bizdoc-comments", inputs: ["model"], outputs: ["change"] }] });
32
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.2.5", ngImport: i0, type: CommentsPaneComponent, decorators: [{
30
+ CommentsPaneComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.1", ngImport: i0, type: CommentsPaneComponent, deps: [{ token: i1.TranslateService }, { token: i2.PaneRef }], target: i0.ɵɵFactoryTarget.Component });
31
+ CommentsPaneComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.3.1", type: CommentsPaneComponent, selector: "ng-component", host: { classAttribute: "pane" }, viewQueries: [{ propertyName: "_comments", first: true, predicate: CommentsComponent, descendants: true, static: true }], ngImport: i0, template: `<bizdoc-comments [model]=model></bizdoc-comments>`, isInline: true, styles: [":host{min-width:320px}\n"], components: [{ type: i3.CommentsComponent, selector: "bizdoc-comments", inputs: ["model"], outputs: ["change"] }] });
32
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.1", ngImport: i0, type: CommentsPaneComponent, decorators: [{
33
33
  type: Component,
34
34
  args: [{
35
35
  template: `<bizdoc-comments [model]=model></bizdoc-comments>`,
@@ -158,9 +158,9 @@ export class CommentComponent {
158
158
  });
159
159
  }
160
160
  }
161
- CommentComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.2.5", 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.2.5", 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.2.5", ngImport: i0, type: CommentComponent, decorators: [{
161
+ CommentComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.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.3.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.3.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.2.5", 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.2.5", 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.2.5", ngImport: i0, type: CommentsComponent, decorators: [{
206
+ CommentsComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.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.3.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.3.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.2.5", 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.2.5", 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.2.5", ngImport: i0, type: EditCommentComponent, decorators: [{
23
+ EditCommentComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.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.3.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.3.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.2.5", 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.2.5", 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.2.5", ngImport: i0, type: CommentEditsComponent, decorators: [{
21
+ CommentEditsComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.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.3.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.3.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.2.5", 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.2.5", 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.2.5", ngImport: i0, type: QuickCommentComponent, decorators: [{
54
+ QuickCommentComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.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.3.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.3.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.2.5", 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.2.5", 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.2.5", ngImport: i0, type: CommentLikesComponent, decorators: [{
33
+ CommentLikesComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.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.3.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.3.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.2.5", 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.2.5", ngImport: i0, type: RecipientResolveService });
29
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.2.5", ngImport: i0, type: RecipientResolveService, decorators: [{
27
+ RecipientResolveService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.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.3.1", ngImport: i0, type: RecipientResolveService });
29
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.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.2.5", 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.2.5", ngImport: i0, type: DocumentResolveService });
52
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.2.5", ngImport: i0, type: DocumentResolveService, decorators: [{
50
+ DocumentResolveService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.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.3.1", ngImport: i0, type: DocumentResolveService });
52
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.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==
@@ -39,7 +39,7 @@ export class ComposeComponent {
39
39
  }
40
40
  ngOnInit() {
41
41
  this._route.data.subscribe(() => {
42
- this.model = this._route.snapshot.data.item;
42
+ this.model = this._route.snapshot.data['item'];
43
43
  this.newCommentsCount = this.model.unreadComments || null;
44
44
  const form = this._session.profile.forms.find(f => f.name === this.model.formId);
45
45
  this._title.set(this.model.number ? `#${this.model.number}` : form.title);
@@ -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.2.5", 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.2.5", 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.2.5", ngImport: i0, type: ComposeComponent, decorators: [{
94
+ ComposeComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.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.3.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", "saved"] }, { 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.3.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.2.5", ngImpor
109
109
  type: ViewChild,
110
110
  args: [MatSidenav, { static: true }]
111
111
  }] } });
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=
112
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29tcG9zZS5tb2JpbGUuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vbGlicmFyaWVzL2NvcmUvc3JjL2xpYi9jb21wb3NlL2NvbXBvc2UubW9iaWxlLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uL2xpYnJhcmllcy9jb3JlL3NyYy9saWIvY29tcG9zZS9jb21wb3NlLm1vYmlsZS5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsU0FBUyxFQUFhLFNBQVMsRUFBVSxNQUFNLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDaEYsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLDJCQUEyQixDQUFDO0FBQ3ZELE9BQU8sRUFBRSxPQUFPLEVBQUUsTUFBTSxNQUFNLENBQUM7QUFDL0IsT0FBTyxFQUFFLFNBQVMsRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBQzNDLE9BQU8sRUFBa0IsS0FBSyxFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFHdkQsT0FBTyxFQUFFLGlCQUFpQixFQUFFLE1BQU0sK0JBQStCLENBQUM7QUFFbEUsT0FBTyxFQUFFLG9CQUFvQixFQUFFLE1BQU0sa0JBQWtCLENBQUM7QUFDeEQsT0FBTyxFQUFFLFFBQVEsRUFBRSxNQUFNLG1CQUFtQixDQUFDO0FBRTdDLE9BQU8sRUFBZ0IsYUFBYSxFQUFFLE1BQU0sdUJBQXVCLENBQUM7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7QUFNcEUsdURBQXVEO0FBQ3ZELE1BQU0sT0FBTyxnQkFBZ0I7SUFjM0IsbUJBQW1CO0lBQ25CLFlBQ1UsTUFBMEIsRUFDMUIsUUFBd0IsRUFDeEIsT0FBZSxFQUNmLE1BQXNCLEVBQ1AsTUFBb0I7UUFKbkMsV0FBTSxHQUFOLE1BQU0sQ0FBb0I7UUFDMUIsYUFBUSxHQUFSLFFBQVEsQ0FBZ0I7UUFDeEIsWUFBTyxHQUFQLE9BQU8sQ0FBUTtRQUNmLFdBQU0sR0FBTixNQUFNLENBQWdCO1FB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b250ZW50IjpbImltcG9ydCB7IENvbXBvbmVudCwgT25EZXN0cm95LCBWaWV3Q2hpbGQsIE9uSW5pdCwgSW5qZWN0IH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XHJcbmltcG9ydCB7IE1hdFNpZGVuYXYgfSBmcm9tICdAYW5ndWxhci9tYXRlcmlhbC9zaWRlbmF2JztcclxuaW1wb3J0IHsgU3ViamVjdCB9IGZyb20gJ3J4anMnO1xyXG5pbXBvcnQgeyB0YWtlVW50aWwgfSBmcm9tICdyeGpzL29wZXJhdG9ycyc7XHJcbmltcG9ydCB7IFJlY2lwaWVudE1vZGVsLCBJTkJPWCB9IGZyb20gJy4uL2NvcmUvbW9kZWxzJztcclxuaW1wb3J0IHsgU2Vzc2lvblNlcnZpY2UgfSBmcm9tICcuLi9jb3JlL3Nlc3Npb24uc2VydmljZSc7XHJcbmltcG9ydCB7IFdpbmRvd1RpdGxlU2VydmljZSB9IGZyb20gJy4uL2NvcmUvd2luZG93LXRpdGxlLnNlcnZpY2UnO1xyXG5pbXBvcnQgeyBDb21tZW50c0NvbXBvbmVudCB9IGZyb20gJy4vY29tbWVudHMvY29tbWVudHMuY29tcG9uZW50JztcclxuaW1wb3J0IHsgQWN0aXZhdGVkUm91dGUsIFJvdXRlciB9IGZyb20gJ0Bhbmd1bGFyL3JvdXRlcic7XHJcbmltcG9ydCB7IENvbXBvc2VGb3JtQ29tcG9uZW50IH0gZnJvbSAnLi9mb3JtLmNvbXBvbmVudCc7XHJcbmltcG9ydCB7IGlzTW9iaWxlIH0gZnJvbSAnLi4vY29yZS9mdW5jdGlvbnMnO1xyXG5pbXBvcnQgeyBWaWV3TW9kZSB9IGZyb20gJy4uL2NvcmUvYmFzZSc7XHJcbmltcG9ydCB7IEJpekRvY0NvbmZpZywgQklaRE9DX0NPTkZJRyB9IGZyb20gJy4uL2NvcmUvY29uZmlndXJhdGlvbic7XHJcblxyXG5AQ29tcG9uZW50KHtcclxuICB0ZW1wbGF0ZVVybDogJy4vY29tcG9zZS5tb2JpbGUuY29tcG9uZW50Lmh0bWwnLFxyXG4gIHN0eWxlVXJsczogWycuL2NvbXBvc2UubW9iaWxlLmNvbXBvbmVudC5zY3NzJ11cclxufSlcclxuLyoqIGNvbXBvc2UgY29tcG9uZW50IHJlc3BvbnNpYmxlIGZvciBlZGl0aW5nIGEgZm9ybSAqL1xyXG5leHBvcnQgY2xhc3MgQ29tcG9zZUNvbXBvbmVudCBpbXBsZW1lbnRzIE9uSW5pdCwgT25EZXN0cm95IHtcclxuICBAVmlld0NoaWxkKENvbXBvc2VGb3JtQ29tcG9uZW50LCB7IHN0YXRpYzogdHJ1ZSB9KSBmb3JtOiBDb21wb3NlRm9ybUNvbXBvbmVudDtcclxuICBAVmlld0NoaWxkKENvbW1lbnRzQ29tcG9uZW50LCB7fSkgY29tbWVudHM6IENvbW1lbnRzQ29tcG9uZW50O1xyXG4gIEBWaWV3Q2hpbGQoTWF0U2lkZW5hdiwgeyBzdGF0aWM6IHRydWUgfSkgZHJhd2VyOiBNYXRTaWRlbmF2O1xyXG4gIHdvcmtpbmc6IGJvb2xlYW47XHJcbiAgZGlydHk6IGJvb2xlYW47XHJcbiAgdmFsaWQ6IGJvb2xlYW47XHJcbiAgbW9kZTogVmlld01vZGU7XHJcbiAgbW9kZWw6IFJlY2lwaWVudE1vZGVsPGFueT47XHJcbiAgbmV3Q29tbWVudHNDb3VudDogbnVtYmVyO1xyXG4gIHZpZXdNb2RlOiAnY29tbWVudHMnIHwgJ3ZpZXdzJztcclxuICByZWFkb25seSBpc01vYmlsZSA9IGlzTW9iaWxlKCk7XHJcbiAgcmVhZG9ubHkgICBlbmFibGVBbmFseXNpczogYm9vbGVhbjtcclxuICBwcml2YXRlIHJlYWRvbmx5IF9kZXN0cm95ID0gbmV3IFN1YmplY3Q8dm9pZD4oKTtcclxuICAvKiogY29tcG9zZSBjdG9yICovXHJcbiAgY29uc3RydWN0b3IoXHJcbiAgICBwcml2YXRlIF90aXRsZTogV2luZG93VGl0bGVTZXJ2aWNlLFxyXG4gICAgcHJpdmF0ZSBfc2Vzc2lvbjogU2Vzc2lvblNlcnZpY2UsXHJcbiAgICBwcml2YXRlIF9yb3V0ZXI6IFJvdXRlcixcclxuICAgIHByaXZhdGUgX3JvdXRlOiBBY3RpdmF0ZWRSb3V0ZSxcclxuICAgIEBJbmplY3QoQklaRE9DX0NPTkZJRykgY29uZmlnOiBCaXpEb2NDb25maWcgICkge1xyXG4gICAgdGhpcy5lbmFibGVBbmFseXNpcyA9IF9zZXNzaW9uLnByb2ZpbGUudmlld3MubGVuZ3RoID4gMDtcclxuICB9XHJcbiAgbmdPbkluaXQoKTogdm9pZCB7XHJcbiAgICB0aGlzLl9yb3V0ZS5kYXRhLnN1YnNjcmliZSgoKSA9PiB7XHJcbiAgICAgIHRoaXMubW9kZWwgPSB0aGlzLl9yb3V0ZS5zbmFwc2hvdC5kYXRhWydpdGVtJ107XHJcbiAgICAgIHRoaXMubmV3Q29tbWVudHNDb3VudCA9IHRoaXMubW9kZWwudW5yZWFkQ29tbWVudHMgfHwgbnVsbDtcclxuICAgICAgY29uc3QgZm9ybSA9IHRoaXMuX3Nlc3Npb24ucHJvZmlsZS5mb3Jtcy5maW5kKGYgPT4gZi5uYW1lID09PSB0aGlzLm1vZGVsLmZvcm1JZCk7XHJcbiAgICAgIHRoaXMuX3RpdGxlLnNldCh0aGlzLm1vZGVsLm51bWJlciA/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==