@bizdoc/core 2.0.0 → 2.0.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (386) hide show
  1. package/assets/themes/brown.min.css +8 -8
  2. package/assets/themes/dark.min.css +87 -1
  3. package/assets/themes/deep-purple-light-blue.min.css +8 -8
  4. package/assets/themes/deep-purple-teal.min.css +8 -8
  5. package/assets/themes/default.min.css +8 -8
  6. package/assets/themes/green.min.css +8 -8
  7. package/assets/themes/indigo.min.css +8 -8
  8. package/esm2020/lib/admin/admin-dismiss.service.mjs +3 -3
  9. package/esm2020/lib/admin/admin-menu.component.mjs +3 -3
  10. package/esm2020/lib/admin/architecture/cube-axes-filter.component.mjs +3 -3
  11. package/esm2020/lib/admin/architecture/designer-element.component.mjs +15 -15
  12. package/esm2020/lib/admin/architecture/designer-privileges.component.mjs +3 -3
  13. package/esm2020/lib/admin/architecture/designer.base.mjs +9 -9
  14. package/esm2020/lib/admin/architecture/designer.component.mjs +3 -3
  15. package/esm2020/lib/admin/architecture/elements/action.component.mjs +3 -3
  16. package/esm2020/lib/admin/architecture/elements/analysis-view.component.mjs +3 -3
  17. package/esm2020/lib/admin/architecture/elements/analysis-widget.component.mjs +3 -3
  18. package/esm2020/lib/admin/architecture/elements/anomaly-rule.component.mjs +3 -3
  19. package/esm2020/lib/admin/architecture/elements/attribute.component.mjs +3 -3
  20. package/esm2020/lib/admin/architecture/elements/box-form.component.mjs +3 -3
  21. package/esm2020/lib/admin/architecture/elements/configuration-datasource.component.mjs +3 -3
  22. package/esm2020/lib/admin/architecture/elements/control.component.mjs +3 -3
  23. package/esm2020/lib/admin/architecture/elements/cube-index-utility.component.mjs +3 -3
  24. package/esm2020/lib/admin/architecture/elements/cube-view.component.mjs +3 -3
  25. package/esm2020/lib/admin/architecture/elements/cube.component.mjs +3 -3
  26. package/esm2020/lib/admin/architecture/elements/document-state-widget.component.mjs +3 -3
  27. package/esm2020/lib/admin/architecture/elements/documents-report.component.mjs +3 -3
  28. package/esm2020/lib/admin/architecture/elements/documents-widget.component.mjs +3 -3
  29. package/esm2020/lib/admin/architecture/elements/explore-view.component.mjs +3 -3
  30. package/esm2020/lib/admin/architecture/elements/folder.component.mjs +3 -3
  31. package/esm2020/lib/admin/architecture/elements/form-invite.dialog.mjs +3 -3
  32. package/esm2020/lib/admin/architecture/elements/form.component.mjs +3 -3
  33. package/esm2020/lib/admin/architecture/elements/guide.component.mjs +3 -3
  34. package/esm2020/lib/admin/architecture/elements/matrix-view.component.mjs +3 -3
  35. package/esm2020/lib/admin/architecture/elements/node.component.mjs +3 -3
  36. package/esm2020/lib/admin/architecture/elements/parallel-view.component.mjs +3 -3
  37. package/esm2020/lib/admin/architecture/elements/performance-report.component.mjs +3 -3
  38. package/esm2020/lib/admin/architecture/elements/performance-widget.component.mjs +3 -3
  39. package/esm2020/lib/admin/architecture/elements/pivot-view.component.mjs +3 -3
  40. package/esm2020/lib/admin/architecture/elements/policy.component.mjs +3 -3
  41. package/esm2020/lib/admin/architecture/elements/report.component.mjs +3 -3
  42. package/esm2020/lib/admin/architecture/elements/return-to-role-action.component.mjs +3 -3
  43. package/esm2020/lib/admin/architecture/elements/role.component.mjs +3 -3
  44. package/esm2020/lib/admin/architecture/elements/rule.component.mjs +3 -3
  45. package/esm2020/lib/admin/architecture/elements/state.component.mjs +3 -3
  46. package/esm2020/lib/admin/architecture/elements/sum-view.component.mjs +3 -3
  47. package/esm2020/lib/admin/architecture/elements/tasks-report.component.mjs +3 -3
  48. package/esm2020/lib/admin/architecture/elements/type.component.mjs +3 -3
  49. package/esm2020/lib/admin/architecture/elements/usage-report.component.mjs +3 -3
  50. package/esm2020/lib/admin/architecture/elements/utility.component.mjs +3 -3
  51. package/esm2020/lib/admin/architecture/elements/view.component.mjs +3 -3
  52. package/esm2020/lib/admin/architecture/elements/widget.component.mjs +3 -3
  53. package/esm2020/lib/admin/architecture/icon-picker.component.mjs +3 -3
  54. package/esm2020/lib/admin/core/ace.input.mjs +3 -3
  55. package/esm2020/lib/admin/core/color-picker.input.mjs +3 -3
  56. package/esm2020/lib/admin/core/localized-string.component.mjs +3 -3
  57. package/esm2020/lib/admin/core/search.input.mjs +3 -3
  58. package/esm2020/lib/admin/diff/configuration-diff.component.mjs +3 -3
  59. package/esm2020/lib/admin/document-trace/document-trace.component.mjs +4 -4
  60. package/esm2020/lib/admin/document-trace/reassign.dialog.mjs +3 -3
  61. package/esm2020/lib/admin/document-trace/trace-element.component.mjs +3 -3
  62. package/esm2020/lib/admin/form/designer/box-designer.component.mjs +6 -6
  63. package/esm2020/lib/admin/form/designer/properties.component.mjs +3 -3
  64. package/esm2020/lib/admin/form/designer/section.component.mjs +3 -3
  65. package/esm2020/lib/admin/form/designer/settings.component.mjs +3 -3
  66. package/esm2020/lib/admin/form/form.resolve.service.mjs +3 -3
  67. package/esm2020/lib/admin/form/workflow/node.component.mjs +3 -3
  68. package/esm2020/lib/admin/form/workflow/role-node.component.mjs +3 -3
  69. package/esm2020/lib/admin/form/workflow/workflow.component.mjs +3 -3
  70. package/esm2020/lib/admin/indices/manage-cube-index.component.mjs +3 -3
  71. package/esm2020/lib/admin/patterns/patterns.component.mjs +3 -3
  72. package/esm2020/lib/admin/permissions/permissions.component.mjs +3 -3
  73. package/esm2020/lib/admin/positions/positions-popup.component.mjs +3 -3
  74. package/esm2020/lib/admin/positions/positions.component.mjs +3 -3
  75. package/esm2020/lib/admin/profiler/outofoffice.component.mjs +3 -3
  76. package/esm2020/lib/admin/profiler/profiler.component.mjs +3 -3
  77. package/esm2020/lib/admin/system.service.mjs +3 -3
  78. package/esm2020/lib/admin/utility-wrapper.component.mjs +3 -3
  79. package/esm2020/lib/admin/utility.pane.component.mjs +3 -3
  80. package/esm2020/lib/app.component.mjs +6 -6
  81. package/esm2020/lib/bizdoc.module.mjs +4 -4
  82. package/esm2020/lib/browse/browse-items.component.mjs +3 -3
  83. package/esm2020/lib/browse/browse.mobile.component.mjs +3 -3
  84. package/esm2020/lib/browse/browse.pane.component.mjs +3 -3
  85. package/esm2020/lib/browse/expanded-item/expanded-item.component.mjs +3 -3
  86. package/esm2020/lib/browse/filter/filter.component.mjs +3 -3
  87. package/esm2020/lib/browse/folders-menu.component.mjs +3 -3
  88. package/esm2020/lib/chat/chat-info.mjs +3 -3
  89. package/esm2020/lib/chat/chat.mobile.component.mjs +3 -3
  90. package/esm2020/lib/chat/chat.service.mjs +3 -3
  91. package/esm2020/lib/chat/contacts.component.mjs +7 -7
  92. package/esm2020/lib/chat/contacts.pane.component.mjs +3 -3
  93. package/esm2020/lib/chat/conversation.component.mjs +3 -3
  94. package/esm2020/lib/chat/conversation.pane.component.mjs +3 -3
  95. package/esm2020/lib/compose/action/action-picker.component.mjs +3 -3
  96. package/esm2020/lib/compose/action/action.dialog.mjs +3 -3
  97. package/esm2020/lib/compose/action/action.pane.dialog.exp.mjs +3 -3
  98. package/esm2020/lib/compose/action/assign-action.component.mjs +3 -3
  99. package/esm2020/lib/compose/action/moveto-action.component.mjs +3 -3
  100. package/esm2020/lib/compose/action/return-action.component.mjs +3 -3
  101. package/esm2020/lib/compose/attachments/attachments.component.mjs +3 -3
  102. package/esm2020/lib/compose/attachments/preview/attachment-preview.component.mjs +3 -3
  103. package/esm2020/lib/compose/attachments/progress-button.directive.mjs +3 -3
  104. package/esm2020/lib/compose/box/box.component.mjs +3 -3
  105. package/esm2020/lib/compose/box/control.component.mjs +3 -3
  106. package/esm2020/lib/compose/box/row.component.mjs +3 -3
  107. package/esm2020/lib/compose/can-deactivate-changes.service.mjs +3 -3
  108. package/esm2020/lib/compose/comments/comment.component.mjs +3 -3
  109. package/esm2020/lib/compose/comments/comments.component.mjs +3 -3
  110. package/esm2020/lib/compose/comments/comments.pane.component.mjs +3 -3
  111. package/esm2020/lib/compose/comments/edit-comment.component.mjs +3 -3
  112. package/esm2020/lib/compose/comments/edits.component.mjs +3 -3
  113. package/esm2020/lib/compose/comments/quick-comment.component.exp.mjs +3 -3
  114. package/esm2020/lib/compose/comments/votes.component.mjs +3 -3
  115. package/esm2020/lib/compose/compose-resolve.service.mjs +6 -6
  116. package/esm2020/lib/compose/compose.mobile.component.mjs +3 -3
  117. package/esm2020/lib/compose/compose.pane.component.mjs +3 -3
  118. package/esm2020/lib/compose/copy/copy.dialog.mjs +3 -3
  119. package/esm2020/lib/compose/dismiss.service.mjs +3 -3
  120. package/esm2020/lib/compose/document-resolver.service.mjs +3 -3
  121. package/esm2020/lib/compose/document.component.mjs +3 -3
  122. package/esm2020/lib/compose/document.mobile.component.mjs +3 -3
  123. package/esm2020/lib/compose/document.pane.component.mjs +3 -3
  124. package/esm2020/lib/compose/events/events.component.mjs +3 -3
  125. package/esm2020/lib/compose/form-selector/form-selector.sheet.mjs +3 -3
  126. package/esm2020/lib/compose/form.component.mjs +3 -3
  127. package/esm2020/lib/compose/new-menu.component.mjs +5 -5
  128. package/esm2020/lib/compose/privilage.directive.mjs +6 -6
  129. package/esm2020/lib/compose/recipient-resolver.service.mjs +3 -3
  130. package/esm2020/lib/compose/state.component.mjs +3 -3
  131. package/esm2020/lib/compose/tag/tags.component.mjs +3 -3
  132. package/esm2020/lib/compose/trace/flow.component.mjs +3 -3
  133. package/esm2020/lib/compose/trace/people.component.mjs +3 -3
  134. package/esm2020/lib/compose/trace/trace.base.mjs +3 -3
  135. package/esm2020/lib/compose/trace/trace.component.mjs +3 -3
  136. package/esm2020/lib/compose/trace/trace.pane.component.mjs +3 -3
  137. package/esm2020/lib/compose/version-compare/version-compare.component.mjs +3 -3
  138. package/esm2020/lib/compose/version-compare/version-compare.directive.mjs +9 -9
  139. package/esm2020/lib/compose/version-compare/version.pane.component.mjs +3 -3
  140. package/esm2020/lib/core/NgComponentOutlet.mjs +3 -3
  141. package/esm2020/lib/core/account.service.mjs +3 -3
  142. package/esm2020/lib/core/animated-icon/animated-icon.directive.mjs +3 -3
  143. package/esm2020/lib/core/avatar/avatar.component.mjs +3 -3
  144. package/esm2020/lib/core/checkbox.mjs +3 -3
  145. package/esm2020/lib/core/component-factory-resolver.mjs +3 -3
  146. package/esm2020/lib/core/datasource.service.mjs +3 -3
  147. package/esm2020/lib/core/fields/address.designer.mjs +3 -3
  148. package/esm2020/lib/core/fields/address.field.mjs +3 -3
  149. package/esm2020/lib/core/fields/autocomplete.field.mjs +6 -6
  150. package/esm2020/lib/core/fields/checkbox.designer.mjs +3 -3
  151. package/esm2020/lib/core/fields/checkbox.field.mjs +3 -3
  152. package/esm2020/lib/core/fields/checklist.designer.mjs +3 -3
  153. package/esm2020/lib/core/fields/checklist.field.mjs +3 -3
  154. package/esm2020/lib/core/fields/date-range.designer.mjs +3 -3
  155. package/esm2020/lib/core/fields/date-range.field.mjs +3 -3
  156. package/esm2020/lib/core/fields/date.designer.mjs +3 -3
  157. package/esm2020/lib/core/fields/date.field.mjs +3 -3
  158. package/esm2020/lib/core/fields/expression.field.mjs +6 -6
  159. package/esm2020/lib/core/fields/file.designer.mjs +3 -3
  160. package/esm2020/lib/core/fields/file.field.mjs +3 -3
  161. package/esm2020/lib/core/fields/html.designer.mjs +3 -3
  162. package/esm2020/lib/core/fields/html.field.mjs +3 -3
  163. package/esm2020/lib/core/fields/input.designer.mjs +3 -3
  164. package/esm2020/lib/core/fields/input.field.mjs +3 -3
  165. package/esm2020/lib/core/fields/localized-string.field.mjs +6 -6
  166. package/esm2020/lib/core/fields/numeric.designer.mjs +3 -3
  167. package/esm2020/lib/core/fields/numeric.field.mjs +3 -3
  168. package/esm2020/lib/core/fields/options.base.mjs +6 -6
  169. package/esm2020/lib/core/fields/options.component.mjs +3 -3
  170. package/esm2020/lib/core/fields/radio-button.designer.mjs +3 -3
  171. package/esm2020/lib/core/fields/radio-button.field.mjs +3 -3
  172. package/esm2020/lib/core/fields/select.designer.mjs +3 -3
  173. package/esm2020/lib/core/fields/select.field.mjs +3 -3
  174. package/esm2020/lib/core/fields/signature.designer.mjs +3 -3
  175. package/esm2020/lib/core/fields/signature.field.mjs +3 -3
  176. package/esm2020/lib/core/fields/switch.field.mjs +3 -3
  177. package/esm2020/lib/core/fields/textarea.designer.mjs +3 -3
  178. package/esm2020/lib/core/fields/textarea.field.mjs +3 -3
  179. package/esm2020/lib/core/fields/time.designer.mjs +3 -3
  180. package/esm2020/lib/core/fields/time.field.mjs +3 -3
  181. package/esm2020/lib/core/fields/timespan.field.mjs +7 -7
  182. package/esm2020/lib/core/fields/yesno.designer.mjs +3 -3
  183. package/esm2020/lib/core/fields/yesno.field.mjs +3 -3
  184. package/esm2020/lib/core/guide/guide.component.mjs +3 -3
  185. package/esm2020/lib/core/guide/guide.service.mjs +3 -3
  186. package/esm2020/lib/core/guide/help-tip.component.mjs +3 -3
  187. package/esm2020/lib/core/http.interceptor.mjs +3 -3
  188. package/esm2020/lib/core/hub.service.mjs +3 -3
  189. package/esm2020/lib/core/identity/identity.component.mjs +3 -3
  190. package/esm2020/lib/core/info/attachment-info.service.mjs +3 -3
  191. package/esm2020/lib/core/info/document-info.service.mjs +3 -3
  192. package/esm2020/lib/core/info/location-info.component.mjs +3 -3
  193. package/esm2020/lib/core/info/map-info.mjs +3 -3
  194. package/esm2020/lib/core/inputs/address.input.mjs +3 -3
  195. package/esm2020/lib/core/inputs/auto-complete.input.mjs +4 -4
  196. package/esm2020/lib/core/inputs/combination-picker-body.mjs +3 -3
  197. package/esm2020/lib/core/inputs/combination-picker.mjs +3 -3
  198. package/esm2020/lib/core/inputs/combination-pool.mjs +3 -3
  199. package/esm2020/lib/core/inputs/file.input.mjs +3 -3
  200. package/esm2020/lib/core/inputs/select.input.mjs +3 -3
  201. package/esm2020/lib/core/inputs/signature.input.mjs +3 -3
  202. package/esm2020/lib/core/inputs/time-picker.mjs +3 -3
  203. package/esm2020/lib/core/inputs/timespan.input.mjs +3 -3
  204. package/esm2020/lib/core/layout.component.mjs +3 -3
  205. package/esm2020/lib/core/lottie-animation.mjs +3 -3
  206. package/esm2020/lib/core/mailbox.service.mjs +3 -3
  207. package/esm2020/lib/core/none.component.mjs +3 -3
  208. package/esm2020/lib/core/pipes/action.pipe.mjs +3 -3
  209. package/esm2020/lib/core/pipes/calendar.pipe.mjs +3 -3
  210. package/esm2020/lib/core/pipes/date-format.pipe.mjs +3 -3
  211. package/esm2020/lib/core/pipes/daterange.pipe.mjs +6 -6
  212. package/esm2020/lib/core/pipes/difference.pipe.mjs +3 -3
  213. package/esm2020/lib/core/pipes/duration-format.pipe.mjs +3 -3
  214. package/esm2020/lib/core/pipes/duration.pipe.mjs +3 -3
  215. package/esm2020/lib/core/pipes/form.pipe.mjs +3 -3
  216. package/esm2020/lib/core/pipes/join.pipe.mjs +3 -3
  217. package/esm2020/lib/core/pipes/localized-string.pipe.mjs +3 -3
  218. package/esm2020/lib/core/pipes/role.pipe.mjs +3 -3
  219. package/esm2020/lib/core/pipes/sanitize-html.pipe.mjs +3 -3
  220. package/esm2020/lib/core/pipes/sort.pipe.mjs +6 -6
  221. package/esm2020/lib/core/pipes/state.pipe.mjs +3 -3
  222. package/esm2020/lib/core/pipes/time-ago.pipe.mjs +6 -6
  223. package/esm2020/lib/core/pipes/translate.pipe.mjs +9 -9
  224. package/esm2020/lib/core/pipes/type-value.pipe.mjs +3 -3
  225. package/esm2020/lib/core/pipes/user-name.pipe.mjs +3 -3
  226. package/esm2020/lib/core/popup/popup.component.mjs +3 -3
  227. package/esm2020/lib/core/popup/popup.service.mjs +3 -3
  228. package/esm2020/lib/core/popup/tooltip.directive.mjs +6 -6
  229. package/esm2020/lib/core/prompt/ask/ask.dialog.mjs +3 -3
  230. package/esm2020/lib/core/prompt/mask/mask.component.mjs +3 -3
  231. package/esm2020/lib/core/prompt.service.mjs +3 -3
  232. package/esm2020/lib/core/router.mjs +6 -6
  233. package/esm2020/lib/core/save-changes.dialog.mjs +3 -3
  234. package/esm2020/lib/core/session.service.mjs +3 -3
  235. package/esm2020/lib/core/slots/router.directive.mjs +3 -3
  236. package/esm2020/lib/core/slots/router.service.mjs +3 -3
  237. package/esm2020/lib/core/slots/slots.component.mjs +3 -3
  238. package/esm2020/lib/core/tagging/documents.component.mjs +3 -3
  239. package/esm2020/lib/core/tagging/edit-input.component.mjs +3 -3
  240. package/esm2020/lib/core/tagging/emoji.component.mjs +3 -3
  241. package/esm2020/lib/core/tagging/tagging-item.directive.mjs +3 -3
  242. package/esm2020/lib/core/tagging/tagging.component-base.mjs +3 -3
  243. package/esm2020/lib/core/tagging/tagging.directive.mjs +3 -3
  244. package/esm2020/lib/core/tagging/tagging.pipe.mjs +3 -3
  245. package/esm2020/lib/core/tagging/users.component.mjs +3 -3
  246. package/esm2020/lib/core/translate.service.mjs +3 -3
  247. package/esm2020/lib/core/window-title.service.mjs +3 -3
  248. package/esm2020/lib/cube/accum/accum.component.mjs +3 -3
  249. package/esm2020/lib/cube/chart/chart.component.mjs +3 -3
  250. package/esm2020/lib/cube/cube-info.service.mjs +3 -3
  251. package/esm2020/lib/cube/cube-menu.component.mjs +3 -3
  252. package/esm2020/lib/cube/cube-view.component.mjs +3 -3
  253. package/esm2020/lib/cube/cube.service.mjs +3 -3
  254. package/esm2020/lib/cube/explore/document-item.component.mjs +3 -3
  255. package/esm2020/lib/cube/explore/explore-item.component.mjs +3 -3
  256. package/esm2020/lib/cube/explore/explore-items.component.mjs +3 -3
  257. package/esm2020/lib/cube/explore/explore.pane.component.mjs +3 -3
  258. package/esm2020/lib/cube/explore/item-resolver.service.mjs +6 -6
  259. package/esm2020/lib/cube/explore/item.pane.component.mjs +3 -3
  260. package/esm2020/lib/cube/filter/filter-tags.component.exp.mjs +3 -3
  261. package/esm2020/lib/cube/filter/filter.component.mjs +3 -3
  262. package/esm2020/lib/cube/grid/grid.component.mjs +3 -3
  263. package/esm2020/lib/cube/grid/spreadsheet.component.mjs +3 -3
  264. package/esm2020/lib/cube/matrix/matrix.base.mjs +3 -3
  265. package/esm2020/lib/cube/matrix/matrix.mobile.component.mjs +3 -3
  266. package/esm2020/lib/cube/matrix/matrix.pane.component.mjs +3 -3
  267. package/esm2020/lib/cube/matrix/popup.component.mjs +3 -3
  268. package/esm2020/lib/cube/matrix/table.component.mjs +3 -3
  269. package/esm2020/lib/cube/parallel/parallel.component.mjs +3 -3
  270. package/esm2020/lib/cube/pivot/pivot.component.mjs +3 -3
  271. package/esm2020/lib/cube/sum/sum.component.mjs +3 -3
  272. package/esm2020/lib/cube/view-base.mjs +3 -3
  273. package/esm2020/lib/cube/view.mobile.component.mjs +3 -3
  274. package/esm2020/lib/cube/view.pane.component.mjs +3 -3
  275. package/esm2020/lib/dashboard/actions/actions.widget.mjs +3 -3
  276. package/esm2020/lib/dashboard/cube/accum-cube.widget.mjs +3 -3
  277. package/esm2020/lib/dashboard/cube/compare.widget.mjs +3 -3
  278. package/esm2020/lib/dashboard/cube/cube-analysis.base.mjs +5 -5
  279. package/esm2020/lib/dashboard/cube/cube-analysis.widget.mjs +3 -3
  280. package/esm2020/lib/dashboard/cube/cube-chart.widget.mjs +3 -3
  281. package/esm2020/lib/dashboard/cube/document-state.widget.mjs +3 -3
  282. package/esm2020/lib/dashboard/cube/documents.widget.mjs +3 -3
  283. package/esm2020/lib/dashboard/cube/filter/filter.component.mjs +3 -3
  284. package/esm2020/lib/dashboard/dashboard.component.mjs +20 -6
  285. package/esm2020/lib/dashboard/dashboard.pane.component.mjs +3 -3
  286. package/esm2020/lib/dashboard/recents/recents.widget.mjs +3 -3
  287. package/esm2020/lib/dashboard/score/activity.widget.mjs +3 -3
  288. package/esm2020/lib/dashboard/score/compare-groups.widget.mjs +3 -3
  289. package/esm2020/lib/dashboard/score/peers-performance.widget.mjs +3 -3
  290. package/esm2020/lib/dashboard/score/pending-results.widget.mjs +3 -3
  291. package/esm2020/lib/dashboard/score/personal-score.widget.mjs +3 -3
  292. package/esm2020/lib/dashboard/widget-item.component.mjs +3 -3
  293. package/esm2020/lib/designer.module.mjs +4 -4
  294. package/esm2020/lib/desktop.module.mjs +4 -4
  295. package/esm2020/lib/home/about/about.dialog.mjs +3 -3
  296. package/esm2020/lib/home/home-base.component.mjs +3 -3
  297. package/esm2020/lib/home/home.desktop.component.mjs +5 -5
  298. package/esm2020/lib/home/home.mobile.component.mjs +3 -3
  299. package/esm2020/lib/home/notifications/notifications.component.mjs +3 -3
  300. package/esm2020/lib/home/options/options.component.mjs +3 -3
  301. package/esm2020/lib/home/outofoffice/outofoffice.component.mjs +3 -3
  302. package/esm2020/lib/home/sign/sign.component.mjs +3 -3
  303. package/esm2020/lib/home/tools.component.mjs +3 -3
  304. package/esm2020/lib/impersonate/impersonate.component.mjs +3 -3
  305. package/esm2020/lib/mobile.module.mjs +4 -4
  306. package/esm2020/lib/modules/chart.module.mjs +4 -4
  307. package/esm2020/lib/modules/circular-gauge.module.mjs +4 -4
  308. package/esm2020/lib/modules/datepicker.intl.mjs +3 -3
  309. package/esm2020/lib/modules/dayjs.module.mjs +4 -4
  310. package/esm2020/lib/modules/diagram.module.mjs +4 -4
  311. package/esm2020/lib/modules/gantt.module.mjs +4 -4
  312. package/esm2020/lib/modules/grid.module.mjs +4 -4
  313. package/esm2020/lib/modules/linear-gauge.module.mjs +17 -0
  314. package/esm2020/lib/modules/material.module.mjs +4 -4
  315. package/esm2020/lib/modules/paginator.intl.mjs +3 -3
  316. package/esm2020/lib/modules/pivot.module.mjs +4 -4
  317. package/esm2020/lib/modules/schedule.module.mjs +4 -4
  318. package/esm2020/lib/modules/spreadsheet.module.mjs +4 -4
  319. package/esm2020/lib/modules/stepper.intl.mjs +3 -3
  320. package/esm2020/lib/modules/texteditor.module.mjs +4 -4
  321. package/esm2020/lib/notifications/filter.component.mjs +3 -3
  322. package/esm2020/lib/notifications/notifications-table.component.mjs +3 -3
  323. package/esm2020/lib/notifications/notifications.mobile.component.mjs +3 -3
  324. package/esm2020/lib/notifications/notifications.pane.component.mjs +3 -3
  325. package/esm2020/lib/notifications/notifications.service.mjs +3 -3
  326. package/esm2020/lib/notifications/types/commented.notification.mjs +3 -3
  327. package/esm2020/lib/notifications/types/cube-anomaly.notification.mjs +3 -3
  328. package/esm2020/lib/notifications/types/escalated.notification.mjs +3 -3
  329. package/esm2020/lib/notifications/types/invite.notification.mjs +3 -3
  330. package/esm2020/lib/notifications/types/liked.notification.mjs +3 -3
  331. package/esm2020/lib/notifications/types/long-running-task.notification.mjs +3 -3
  332. package/esm2020/lib/notifications/types/notification-base.mjs +3 -3
  333. package/esm2020/lib/notifications/types/nudge.notification.mjs +3 -3
  334. package/esm2020/lib/notifications/types/state-changed.notification.mjs +3 -3
  335. package/esm2020/lib/notifications/types/tagged.notification.mjs +3 -3
  336. package/esm2020/lib/notifications/types/text.notification.mjs +3 -3
  337. package/esm2020/lib/notifications/types/upcoming-event.notification.mjs +3 -3
  338. package/esm2020/lib/options/options.component.mjs +3 -3
  339. package/esm2020/lib/options/options.service.mjs +3 -3
  340. package/esm2020/lib/reports/arguments-component.mjs +3 -3
  341. package/esm2020/lib/reports/cube/documents.component.mjs +3 -3
  342. package/esm2020/lib/reports/cube/grid-documents.component.mjs +3 -3
  343. package/esm2020/lib/reports/cube/role-performance.component.mjs +3 -3
  344. package/esm2020/lib/reports/cube/table-documents.component.mjs +3 -3
  345. package/esm2020/lib/reports/cube/usage-args.component.mjs +3 -3
  346. package/esm2020/lib/reports/cube/usage-base.mjs +3 -3
  347. package/esm2020/lib/reports/cube/usage-chart.component.mjs +3 -3
  348. package/esm2020/lib/reports/cube/usage-pivot.component.mjs +3 -3
  349. package/esm2020/lib/reports/cube/usage.component.mjs +3 -3
  350. package/esm2020/lib/reports/report-viewer.component.mjs +3 -3
  351. package/esm2020/lib/reports/report.mobile.component.mjs +3 -3
  352. package/esm2020/lib/reports/report.pane.component.mjs +3 -3
  353. package/esm2020/lib/reports/reports-menu.component.mjs +3 -3
  354. package/esm2020/lib/reports/substitution/substitution.component.mjs +3 -3
  355. package/esm2020/lib/reports/table/table-view.component.mjs +3 -3
  356. package/esm2020/lib/reports/tasks/tasks.component.mjs +3 -3
  357. package/esm2020/lib/scheduler/schedule.component.mjs +3 -3
  358. package/esm2020/lib/scheduler/scheduler.mobile.component.mjs +3 -3
  359. package/esm2020/lib/scheduler/scheduler.pane.component.mjs +3 -3
  360. package/esm2020/lib/search/cube.component.mjs +3 -3
  361. package/esm2020/lib/search/document.component.mjs +3 -3
  362. package/esm2020/lib/search/guide.component.mjs +3 -3
  363. package/esm2020/lib/search/path.component.mjs +3 -3
  364. package/esm2020/lib/search/search.service.mjs +3 -3
  365. package/esm2020/lib/shared.module.mjs +12 -5
  366. package/esm2020/lib/system.module.mjs +4 -4
  367. package/esm2020/lib/views/cube/chart.component.mjs +3 -3
  368. package/esm2020/lib/views/cube/cube-base.mjs +3 -3
  369. package/esm2020/lib/views/cube/explore.component.mjs +3 -3
  370. package/esm2020/lib/views/cube/matrix.component.mjs +3 -3
  371. package/esm2020/lib/views/cube/parallel.component.mjs +3 -3
  372. package/esm2020/lib/views/cube/pivot.component.mjs +3 -3
  373. package/esm2020/lib/views/cube/sum.component.mjs +3 -3
  374. package/esm2020/lib/views/cube/view.component.mjs +3 -3
  375. package/esm2020/lib/views/timeline/timeline.component.exp.mjs +3 -3
  376. package/esm2020/lib/views/view-item.component.mjs +3 -3
  377. package/esm2020/lib/views/views.component.mjs +3 -3
  378. package/esm2020/lib/views/views.mobile.component.mjs +3 -3
  379. package/esm2020/lib/views/views.pane.component.mjs +3 -3
  380. package/fesm2015/bizdoc-core.mjs +1253 -1218
  381. package/fesm2015/bizdoc-core.mjs.map +1 -1
  382. package/fesm2020/bizdoc-core.mjs +1253 -1218
  383. package/fesm2020/bizdoc-core.mjs.map +1 -1
  384. package/lib/modules/linear-gauge.module.d.ts +7 -0
  385. package/lib/shared.module.d.ts +9 -8
  386. package/package.json +19 -19
@@ -39,9 +39,9 @@ export class HtmlSimplePipe {
39
39
  return value.replace(HTML_EXP, '');
40
40
  }
41
41
  }
42
- HtmlSimplePipe.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.0.1", ngImport: i0, type: HtmlSimplePipe, deps: [], target: i0.ɵɵFactoryTarget.Pipe });
43
- HtmlSimplePipe.ɵpipe = i0.ɵɵngDeclarePipe({ minVersion: "14.0.0", version: "15.0.1", ngImport: i0, type: HtmlSimplePipe, name: "htmlToText" });
44
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.0.1", ngImport: i0, type: HtmlSimplePipe, decorators: [{
42
+ HtmlSimplePipe.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.0.4", ngImport: i0, type: HtmlSimplePipe, deps: [], target: i0.ɵɵFactoryTarget.Pipe });
43
+ HtmlSimplePipe.ɵpipe = i0.ɵɵngDeclarePipe({ minVersion: "14.0.0", version: "15.0.4", ngImport: i0, type: HtmlSimplePipe, name: "htmlToText" });
44
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.0.4", ngImport: i0, type: HtmlSimplePipe, decorators: [{
45
45
  type: Pipe,
46
46
  args: [{ name: 'htmlToText' }]
47
47
  }] });
@@ -92,12 +92,12 @@ export class ContactsComponent {
92
92
  this._destroy.complete();
93
93
  }
94
94
  }
95
- ContactsComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.0.1", ngImport: i0, type: ContactsComponent, deps: [{ token: i1.ChatService }, { token: i2.PromptService }, { token: i3.SessionService }, { token: i4.AccountService }, { token: i0.ChangeDetectorRef }, { token: i5.HubService }], target: i0.ɵɵFactoryTarget.Component });
96
- ContactsComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.0.1", type: ContactsComponent, selector: "bizdoc-contacts", outputs: { selected: "selected" }, ngImport: i0, template: " <!-- search -->\r\n<mat-form-field floatLabel=\"never\" class=\"search\">\r\n <input type=\"search\" matInput [formControl]=\"searchControl\" [matAutocomplete]=\"user\" placeholder=\"{{'SearchContacts' | translate}}\" />\r\n <button mat-button *ngIf=\"searchControl.value\" matSuffix mat-icon-button aria-label=\"\" (click)=\"searchControl.setValue('')\">\r\n <mat-icon>close</mat-icon>\r\n </button>\r\n <mat-autocomplete #user (optionSelected)=\"optionSelected($event)\">\r\n <mat-option *ngFor=\"let u of users$ | async\" [value]=\"u.id\">\r\n {{u.name}}\r\n </mat-option>\r\n </mat-autocomplete>\r\n</mat-form-field>\r\n<!-- contacts -->\r\n<mat-nav-list>\r\n <mat-list-item *ngFor=\"let c of contacts |filter:'forgotten':undefined| sort : 'time' : 'desc'\" (click)=\"open(c)\" [class.read]=\"c.visited>=c.time\">\r\n <bizdoc-avatar [person]=\"c\" *ngIf=\"c.name\" [interactive]=\"false\"></bizdoc-avatar>\r\n <h3 matListItemTitle>\r\n {{c.nick || c.name}}\r\n </h3>\r\n <div matListItemLine>\r\n <div class=\"chat-text\" [innerText]=\"c.text | htmlToText\"></div>\r\n </div>\r\n <p matListItemLine>\r\n <small [bizdocTooltip]=\"c.time | amCalendar\">{{c.time | amTimeAgo}}</small>\r\n <small *ngIf=\"!c.accepted\">\r\n {{'You' | translate }}\r\n </small>\r\n <mat-icon *ngIf=\"!c.accepted && c.watermark>=c.time\" class=\"watermark\">done_all</mat-icon>\r\n </p>\r\n <button mat-icon-button [matMenuTriggerFor]=\"menu\" (click)=\"$event.stopPropagation()\" class=\"tool\" >\r\n <mat-icon [matBadge]=\"c.count\" [matBadgeHidden]=\"!c.count\" matBadgeSize=\"medium\" matBadgeColor=\"accent\" matBadgePosition=\"before\" matBadgeOverlap=\"false\">more_vert</mat-icon>\r\n </button>\r\n <mat-menu #menu>\r\n <button mat-menu-item (click)=\"forget(c)\">{{'Forget'|translate}}</button>\r\n </mat-menu>\r\n </mat-list-item>\r\n</mat-nav-list>\r\n", styles: [":host{display:flex;flex-direction:column}.search{padding:8px 8px 0;animation:width ease-in-out 1}.search.collapse{width:0}.mat-mdc-nav-list{flex:1 1 auto;overflow:auto}.mat-mdc-nav-list .mat-mdc-list-item .chat-text{overflow:hidden;white-space:nowrap;text-overflow:ellipsis;max-width:150px;display:block}.mat-mdc-nav-list .mat-mdc-list-item .watermark{width:16px;height:16px;font-size:16px}.mat-mdc-nav-list .mat-mdc-list-item .tool{opacity:0}.mat-mdc-nav-list .mat-mdc-list-item:hover .tool{opacity:1}\n"], dependencies: [{ kind: "directive", type: i6.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i6.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i7.DefaultValueAccessor, selector: "input:not([type=checkbox])[formControlName],textarea[formControlName],input:not([type=checkbox])[formControl],textarea[formControl],input:not([type=checkbox])[ngModel],textarea[ngModel],[ngDefaultControl]" }, { kind: "directive", type: i7.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i7.FormControlDirective, selector: "[formControl]", inputs: ["formControl", "disabled", "ngModel"], outputs: ["ngModelChange"], exportAs: ["ngForm"] }, { kind: "directive", type: i8.MatBadge, selector: "[matBadge]", inputs: ["matBadgeDisabled", "matBadgeColor", "matBadgeOverlap", "matBadgePosition", "matBadge", "matBadgeDescription", "matBadgeSize", "matBadgeHidden"] }, { kind: "component", type: i9.MatNavList, selector: "mat-nav-list", exportAs: ["matNavList"] }, { kind: "component", type: i9.MatListItem, selector: "mat-list-item, a[mat-list-item], button[mat-list-item]", inputs: ["activated"], exportAs: ["matListItem"] }, { kind: "directive", type: i9.MatListItemLine, selector: "[matListItemLine]" }, { kind: "directive", type: i9.MatListItemTitle, selector: "[matListItemTitle]" }, { kind: "component", type: i10.MatAutocomplete, selector: "mat-autocomplete", inputs: ["disableRipple"], exportAs: ["matAutocomplete"] }, { kind: "component", type: i11.MatOption, selector: "mat-option", exportAs: ["matOption"] }, { kind: "directive", type: i10.MatAutocompleteTrigger, selector: "input[matAutocomplete], textarea[matAutocomplete]", exportAs: ["matAutocompleteTrigger"] }, { kind: "component", type: i12.MatFormField, selector: "mat-form-field", inputs: ["hideRequiredMarker", "color", "floatLabel", "appearance", "subscriptSizing", "hintLabel"], exportAs: ["matFormField"] }, { kind: "directive", type: i12.MatSuffix, selector: "[matSuffix], [matIconSuffix], [matTextSuffix]" }, { kind: "component", type: i13.MatButton, selector: " button[mat-button], button[mat-raised-button], button[mat-flat-button], button[mat-stroked-button] ", inputs: ["disabled", "disableRipple", "color"], exportAs: ["matButton"] }, { kind: "component", type: i13.MatIconButton, selector: "button[mat-icon-button]", inputs: ["disabled", "disableRipple", "color"], exportAs: ["matButton"] }, { kind: "directive", type: i14.MatInput, selector: "input[matInput], textarea[matInput], select[matNativeControl], input[matNativeControl], textarea[matNativeControl]", inputs: ["disabled", "id", "placeholder", "name", "required", "type", "errorStateMatcher", "aria-describedby", "value", "readonly"], exportAs: ["matInput"] }, { kind: "component", type: i15.MatIcon, selector: "mat-icon", inputs: ["color", "inline", "svgIcon", "fontSet", "fontIcon"], exportAs: ["matIcon"] }, { kind: "component", type: i16.MatMenu, selector: "mat-menu", exportAs: ["matMenu"] }, { kind: "component", type: i16.MatMenuItem, selector: "[mat-menu-item]", inputs: ["disabled", "disableRipple", "role"], exportAs: ["matMenuItem"] }, { kind: "directive", type: i16.MatMenuTrigger, selector: "[mat-menu-trigger-for], [matMenuTriggerFor]", exportAs: ["matMenuTrigger"] }, { kind: "component", type: i17.AvatarComponent, selector: "bizdoc-avatar", inputs: ["person", "interactive", "dense"] }, { kind: "directive", type: i18.TooltipDirective, selector: "[bizdocTooltip]", inputs: ["bizdocTooltip", "bizdocTooltipTemplate", "bizdocTooltipContext", "bizdocTooltipPosition", "bizdocTooltipDuration", "bizdocTooltipDisabled"] }, { kind: "pipe", type: i6.AsyncPipe, name: "async" }, { kind: "pipe", type: i19.CalendarPipe, name: "amCalendar" }, { kind: "pipe", type: i20.TimeAgoPipe, name: "amTimeAgo" }, { kind: "pipe", type: HtmlSimplePipe, name: "htmlToText" }, { kind: "pipe", type: i21.TranslatePipe, name: "translate" }, { kind: "pipe", type: i22.FilterPipe, name: "filter" }, { kind: "pipe", type: i22.ArraySortPipe, name: "sort" }] });
97
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.0.1", ngImport: i0, type: ContactsComponent, decorators: [{
95
+ ContactsComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.0.4", ngImport: i0, type: ContactsComponent, deps: [{ token: i1.ChatService }, { token: i2.PromptService }, { token: i3.SessionService }, { token: i4.AccountService }, { token: i0.ChangeDetectorRef }, { token: i5.HubService }], target: i0.ɵɵFactoryTarget.Component });
96
+ ContactsComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.0.4", type: ContactsComponent, selector: "bizdoc-contacts", outputs: { selected: "selected" }, ngImport: i0, template: " <!-- search -->\r\n<mat-form-field floatLabel=\"never\" class=\"search\">\r\n <input type=\"search\" matInput [formControl]=\"searchControl\" [matAutocomplete]=\"user\" placeholder=\"{{'SearchContacts' | translate}}\" />\r\n <button mat-button *ngIf=\"searchControl.value\" matSuffix mat-icon-button aria-label=\"\" (click)=\"searchControl.setValue('')\">\r\n <mat-icon>close</mat-icon>\r\n </button>\r\n <mat-autocomplete #user (optionSelected)=\"optionSelected($event)\">\r\n <mat-option *ngFor=\"let u of users$ | async\" [value]=\"u.id\">\r\n {{u.name}}\r\n </mat-option>\r\n </mat-autocomplete>\r\n</mat-form-field>\r\n<!-- contacts -->\r\n<mat-nav-list>\r\n <mat-list-item *ngFor=\"let c of contacts |filter:'forgotten':undefined| sort : 'time' : 'desc'\" (click)=\"open(c)\" [class.read]=\"c.visited>=c.time\">\r\n <bizdoc-avatar [person]=\"c\" *ngIf=\"c.name\" [interactive]=\"false\"></bizdoc-avatar>\r\n <h3 matListItemTitle>\r\n {{c.nick || c.name}}\r\n </h3>\r\n <div matListItemLine>\r\n <div class=\"chat-text\" [innerText]=\"c.text | htmlToText\"></div>\r\n </div>\r\n <p matListItemLine>\r\n <small [bizdocTooltip]=\"c.time | amCalendar\">{{c.time | amTimeAgo}}</small>\r\n <small *ngIf=\"!c.accepted\">\r\n {{'You' | translate }}\r\n </small>\r\n <mat-icon *ngIf=\"!c.accepted && c.watermark>=c.time\" class=\"watermark\">done_all</mat-icon>\r\n </p>\r\n <button mat-icon-button [matMenuTriggerFor]=\"menu\" (click)=\"$event.stopPropagation()\" class=\"tool\" >\r\n <mat-icon [matBadge]=\"c.count\" [matBadgeHidden]=\"!c.count\" matBadgeSize=\"medium\" matBadgeColor=\"accent\" matBadgePosition=\"before\" matBadgeOverlap=\"false\">more_vert</mat-icon>\r\n </button>\r\n <mat-menu #menu>\r\n <button mat-menu-item (click)=\"forget(c)\">{{'Forget'|translate}}</button>\r\n </mat-menu>\r\n </mat-list-item>\r\n</mat-nav-list>\r\n", styles: [":host{display:flex;flex-direction:column}.search{padding:8px 8px 0;animation:width ease-in-out 1}.search.collapse{width:0}.mat-mdc-nav-list{flex:1 1 auto;overflow:auto}.mat-mdc-nav-list .mat-mdc-list-item .chat-text{overflow:hidden;white-space:nowrap;text-overflow:ellipsis;max-width:150px;display:block}.mat-mdc-nav-list .mat-mdc-list-item .watermark{width:16px;height:16px;font-size:16px}.mat-mdc-nav-list .mat-mdc-list-item .tool{opacity:0}.mat-mdc-nav-list .mat-mdc-list-item:hover .tool{opacity:1}\n"], dependencies: [{ kind: "directive", type: i6.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i6.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i7.DefaultValueAccessor, selector: "input:not([type=checkbox])[formControlName],textarea[formControlName],input:not([type=checkbox])[formControl],textarea[formControl],input:not([type=checkbox])[ngModel],textarea[ngModel],[ngDefaultControl]" }, { kind: "directive", type: i7.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i7.FormControlDirective, selector: "[formControl]", inputs: ["formControl", "disabled", "ngModel"], outputs: ["ngModelChange"], exportAs: ["ngForm"] }, { kind: "directive", type: i8.MatBadge, selector: "[matBadge]", inputs: ["matBadgeDisabled", "matBadgeColor", "matBadgeOverlap", "matBadgePosition", "matBadge", "matBadgeDescription", "matBadgeSize", "matBadgeHidden"] }, { kind: "component", type: i9.MatNavList, selector: "mat-nav-list", exportAs: ["matNavList"] }, { kind: "component", type: i9.MatListItem, selector: "mat-list-item, a[mat-list-item], button[mat-list-item]", inputs: ["activated"], exportAs: ["matListItem"] }, { kind: "directive", type: i9.MatListItemLine, selector: "[matListItemLine]" }, { kind: "directive", type: i9.MatListItemTitle, selector: "[matListItemTitle]" }, { kind: "component", type: i10.MatAutocomplete, selector: "mat-autocomplete", inputs: ["disableRipple"], exportAs: ["matAutocomplete"] }, { kind: "component", type: i11.MatOption, selector: "mat-option", exportAs: ["matOption"] }, { kind: "directive", type: i10.MatAutocompleteTrigger, selector: "input[matAutocomplete], textarea[matAutocomplete]", exportAs: ["matAutocompleteTrigger"] }, { kind: "component", type: i12.MatFormField, selector: "mat-form-field", inputs: ["hideRequiredMarker", "color", "floatLabel", "appearance", "subscriptSizing", "hintLabel"], exportAs: ["matFormField"] }, { kind: "directive", type: i12.MatSuffix, selector: "[matSuffix], [matIconSuffix], [matTextSuffix]", inputs: ["matTextSuffix"] }, { kind: "component", type: i13.MatButton, selector: " button[mat-button], button[mat-raised-button], button[mat-flat-button], button[mat-stroked-button] ", inputs: ["disabled", "disableRipple", "color"], exportAs: ["matButton"] }, { kind: "component", type: i13.MatIconButton, selector: "button[mat-icon-button]", inputs: ["disabled", "disableRipple", "color"], exportAs: ["matButton"] }, { kind: "directive", type: i14.MatInput, selector: "input[matInput], textarea[matInput], select[matNativeControl], input[matNativeControl], textarea[matNativeControl]", inputs: ["disabled", "id", "placeholder", "name", "required", "type", "errorStateMatcher", "aria-describedby", "value", "readonly"], exportAs: ["matInput"] }, { kind: "component", type: i15.MatIcon, selector: "mat-icon", inputs: ["color", "inline", "svgIcon", "fontSet", "fontIcon"], exportAs: ["matIcon"] }, { kind: "component", type: i16.MatMenu, selector: "mat-menu", exportAs: ["matMenu"] }, { kind: "component", type: i16.MatMenuItem, selector: "[mat-menu-item]", inputs: ["disabled", "disableRipple", "role"], exportAs: ["matMenuItem"] }, { kind: "directive", type: i16.MatMenuTrigger, selector: "[mat-menu-trigger-for], [matMenuTriggerFor]", exportAs: ["matMenuTrigger"] }, { kind: "component", type: i17.AvatarComponent, selector: "bizdoc-avatar", inputs: ["person", "interactive", "dense"] }, { kind: "directive", type: i18.TooltipDirective, selector: "[bizdocTooltip]", inputs: ["bizdocTooltip", "bizdocTooltipTemplate", "bizdocTooltipContext", "bizdocTooltipPosition", "bizdocTooltipDuration", "bizdocTooltipDisabled"] }, { kind: "pipe", type: i6.AsyncPipe, name: "async" }, { kind: "pipe", type: i19.CalendarPipe, name: "amCalendar" }, { kind: "pipe", type: i20.TimeAgoPipe, name: "amTimeAgo" }, { kind: "pipe", type: HtmlSimplePipe, name: "htmlToText" }, { kind: "pipe", type: i21.TranslatePipe, name: "translate" }, { kind: "pipe", type: i22.FilterPipe, name: "filter" }, { kind: "pipe", type: i22.ArraySortPipe, name: "sort" }] });
97
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.0.4", ngImport: i0, type: ContactsComponent, decorators: [{
98
98
  type: Component,
99
99
  args: [{ selector: 'bizdoc-contacts', template: " <!-- search -->\r\n<mat-form-field floatLabel=\"never\" class=\"search\">\r\n <input type=\"search\" matInput [formControl]=\"searchControl\" [matAutocomplete]=\"user\" placeholder=\"{{'SearchContacts' | translate}}\" />\r\n <button mat-button *ngIf=\"searchControl.value\" matSuffix mat-icon-button aria-label=\"\" (click)=\"searchControl.setValue('')\">\r\n <mat-icon>close</mat-icon>\r\n </button>\r\n <mat-autocomplete #user (optionSelected)=\"optionSelected($event)\">\r\n <mat-option *ngFor=\"let u of users$ | async\" [value]=\"u.id\">\r\n {{u.name}}\r\n </mat-option>\r\n </mat-autocomplete>\r\n</mat-form-field>\r\n<!-- contacts -->\r\n<mat-nav-list>\r\n <mat-list-item *ngFor=\"let c of contacts |filter:'forgotten':undefined| sort : 'time' : 'desc'\" (click)=\"open(c)\" [class.read]=\"c.visited>=c.time\">\r\n <bizdoc-avatar [person]=\"c\" *ngIf=\"c.name\" [interactive]=\"false\"></bizdoc-avatar>\r\n <h3 matListItemTitle>\r\n {{c.nick || c.name}}\r\n </h3>\r\n <div matListItemLine>\r\n <div class=\"chat-text\" [innerText]=\"c.text | htmlToText\"></div>\r\n </div>\r\n <p matListItemLine>\r\n <small [bizdocTooltip]=\"c.time | amCalendar\">{{c.time | amTimeAgo}}</small>\r\n <small *ngIf=\"!c.accepted\">\r\n {{'You' | translate }}\r\n </small>\r\n <mat-icon *ngIf=\"!c.accepted && c.watermark>=c.time\" class=\"watermark\">done_all</mat-icon>\r\n </p>\r\n <button mat-icon-button [matMenuTriggerFor]=\"menu\" (click)=\"$event.stopPropagation()\" class=\"tool\" >\r\n <mat-icon [matBadge]=\"c.count\" [matBadgeHidden]=\"!c.count\" matBadgeSize=\"medium\" matBadgeColor=\"accent\" matBadgePosition=\"before\" matBadgeOverlap=\"false\">more_vert</mat-icon>\r\n </button>\r\n <mat-menu #menu>\r\n <button mat-menu-item (click)=\"forget(c)\">{{'Forget'|translate}}</button>\r\n </mat-menu>\r\n </mat-list-item>\r\n</mat-nav-list>\r\n", styles: [":host{display:flex;flex-direction:column}.search{padding:8px 8px 0;animation:width ease-in-out 1}.search.collapse{width:0}.mat-mdc-nav-list{flex:1 1 auto;overflow:auto}.mat-mdc-nav-list .mat-mdc-list-item .chat-text{overflow:hidden;white-space:nowrap;text-overflow:ellipsis;max-width:150px;display:block}.mat-mdc-nav-list .mat-mdc-list-item .watermark{width:16px;height:16px;font-size:16px}.mat-mdc-nav-list .mat-mdc-list-item .tool{opacity:0}.mat-mdc-nav-list .mat-mdc-list-item:hover .tool{opacity:1}\n"] }]
100
100
  }], ctorParameters: function () { return [{ type: i1.ChatService }, { type: i2.PromptService }, { type: i3.SessionService }, { type: i4.AccountService }, { type: i0.ChangeDetectorRef }, { type: i5.HubService }]; }, propDecorators: { selected: [{
101
101
  type: Output
102
102
  }] } });
103
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29udGFjdHMuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vbGlicmFyaWVzL2NvcmUvc3JjL2xpYi9jaGF0L2NvbnRhY3RzLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uL2xpYnJhcmllcy9jb3JlL3NyYy9saWIvY2hhdC9jb250YWN0cy5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQXFCLFNBQVMsRUFBRSxZQUFZLEVBQXFCLE1BQU0sRUFBRSxJQUFJLEVBQWlCLE1BQU0sZUFBZSxDQUFDO0FBQzNILE9BQU8sRUFBRSxLQUFLLEVBQWMsT0FBTyxFQUFFLE1BQU0sTUFBTSxDQUFDO0FBQ2xELE9BQU8sRUFBRSxZQUFZLEVBQUUsR0FBRyxFQUFFLFNBQVMsRUFBRSxTQUFTLEVBQUUsTUFBTSxFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFLakYsT0FBTyxFQUFFLFdBQVcsRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBRzdDLE9BQU8sRUFBRSxRQUFRLEVBQUUsTUFBTSxtQkFBbUIsQ0FBQztBQUc3QyxPQUFPLEVBQUUsUUFBUSxFQUFFLE1BQU0sTUFBTSxDQUFDO0FBQ2hDLE9BQU8sRUFBRSxHQUFHLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUNyQyxPQUFPLEVBQUUsUUFBUSxFQUFFLE1BQU0sc0NBQXNDLENBQUM7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztBQUdoRSxNQUFNLE9BQU8sY0FBYztJQUN2QixTQUFTLENBQUMsS0FBVSxFQUFFLEdBQUcsSUFBVztRQUNsQyxJQUFJLENBQUMsS0FBSztZQUFFLE9BQU8sRUFBRSxDQUFDO2FBQ2pCLElBQUksQ0FBQyxRQUFRLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQztZQUFFLE9BQU8sS0FBSyxDQUFDOztZQUN4QyxPQUFRLEtBQWdCLENBQUMsT0FBTyxDQUFDLFFBQVEsRUFBRSxFQUFFLENBQUMsQ0FBQztJQUN0RCxDQUFDOzsyR0FMUSxjQUFjO3lHQUFkLGNBQWM7MkZBQWQsY0FBYztrQkFEMUIsSUFBSTttQkFBQyxFQUFDLElBQUksRUFBRSxZQUFZLEVBQUM7O0FBYzFCLE1BQU0sT0FDRSxpQkFBaUI7SUFNdkIsWUFDVSxRQUFxQixFQUNyQixHQUFrQixFQUNsQixRQUF3QixFQUN4QixTQUF5QixFQUN6QixlQUFrQyxFQUNsQyxVQUFzQjtRQUx0QixhQUFRLEdBQVIsUUFBUSxDQUFhO1FBQ3JCLFFBQUcsR0FBSCxHQUFHLENBQWU7UUFDbEIsYUFBUSxHQUFSLFFBQVEsQ0FBZ0I7UUFDeEIsY0FBUyxHQUFULFNBQVMsQ0FBZ0I7UUFDekIsb0JBQWUsR0FBZixlQUFlLENBQW1CO1FBQ2xDLGVBQVUsR0FBVixVQUFVLENBQVk7UUFYYixhQUFRLEdBQUcsSUFBSSxZQUFZLEVBQVcsQ0FBQztRQUdqRCxrQkFBYSxHQUFHLElBQUksV0FBVyxFQUFFLENBQUM7UUFDMUIsYUFBUSxHQUFHLElBQUksT0FBTyxFQUFRLENBQUM7UUFROUMsS0FBSyxDQUFDLElBQUksQ0FBQyxVQUFVLENBQUMsS0FBSyxFQUFFLElBQUksQ0FBQyxVQUFVLENBQUMsY0FBYyxDQUFDO1lBQzFELElBQUksQ0FBQyxTQUFTLENBQUMsSUFBSSxDQUFDLFFBQVEsQ0FBQyxDQUFDO1lBQzlCLFNBQVMsQ0FBQyxHQUFHLEVBQUUsQ0FDYixJQUFJLENBQUMsZUFBZSxDQUFDLGFBQWEsRUFBRSxDQUFDLENBQUM7UUFDMUMsUUFBUSxDQUFDLE1BQU07WUFDYixJQUFJLENBQUMsU0FBUyxDQUFDLElBQUksQ0FBQyxRQUFRLENBQUMsQ0FBQztZQUM5QixTQUFTLENBQUMsQ0FBQyxDQUFDLEVBQUUsQ0FBQyxJQUFJLENBQUMsU0FBUyxDQUFDLEdBQUcsQ0FBQyxDQUFDLENBQUMsRUFBRSxDQUFDLENBQUMsU0FBUyxDQUFDLENBQUMsQ0FBQyxFQUFFLENBQUMsTUFBTSxDQUFDLE1BQU0sQ0FBQyxDQUFDLEVBQUUsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDO1FBQy9FLElBQUksQ0FBQyxRQUFRLEdBQUcsSUFBSSxDQUFDLFFBQVEsQ0FBQyxPQUFPLENBQUMsUUFBUSxDQUFDO0lBQ2pELENBQUM7SUFDTyxRQUFRO1FBQ2QsUUFBUSxDQUFDLElBQUksQ0FBQyxRQUFRLENBQUMsR0FBRyxDQUFDLENBQUMsQ0FBQyxFQUFFLENBQzdCLElBQUksQ0FBQyxTQUFTLENBQUMsR0FBRyxDQUFDLENBQUMsQ0FBQyxFQUFFLENBQUMsQ0FBQyxJQUFJLENBQUMsR0FBRyxDQUFDLENBQUMsQ0FBQyxFQUFFLENBQUMsTUFBTSxDQUFDLE1BQU0sQ0FBQyxDQUFDLEVBQUUsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUM7WUFDOUQsU0FBUyxFQUFFLENBQUE7SUFDZixDQUFDO0lBQ0QsUUFBUTtRQUNOLE1BQU0sRUFBRSxHQUFHLElBQUksQ0FBQyxRQUFRLENBQUMsTUFBTSxDQUFDO1FBQ2hDLElBQUksQ0FBQyxRQUFRLEVBQUUsQ0FBQztRQUNoQixJQUFJLENBQUMsTUFBTSxHQUFHLElBQUksQ0FBQyxhQUFhLENBQUMsWUFBWSxDQUFDLElBQUksQ0FBQyxZQUFZLENBQUMsR0FBRyxDQUFDLEVBQ2xFLE1BQU0sQ0FBQyxDQUFDLENBQUMsRUFBRSxDQUFDLFFBQVEsQ0FBQyxDQUFDLENBQUMsQ0FBQyxFQUN4QixTQUFTLENBQUMsSUFBSSxDQUFDLFFBQVEsQ0FBQyxFQUN4QixTQUFTLENBQUMsQ0FBQyxDQUFDLEVBQUUsQ0FBQyxJQUFJLENBQUMsUUFBUSxDQUFDLE9BQU8sQ0FBQyxDQUFDLENBQUMsQ0FBQyxFQUN4QyxHQUFHLENBQUMsRUFBRSxDQUFDLEVBQUUsQ0FBQyxFQUFFLENBQUMsTUFBTSxDQUFDLENBQUMsQ0FBQyxFQUFFLENBQUMsQ0FBQyxDQUFDLEVBQUUsS0FBSyxFQUFFLENBQUMsQ0FBQyxDQUFDLENBQUM7SUFDNUMsQ0FBQztJQUNELGNBQWMsQ0FBQyxFQUFnQztRQUM3QyxNQUFNLEVBQUUsS0FBSyxFQUFFLEVBQUUsRUFBRSxHQUFHLEVBQUUsQ0FBQyxNQUFNLENBQUM7UUFDaEMsTUFBTSxPQUFPLEdBQUcsSUFBSSxDQUFDLFFBQVEsQ0FBQyxJQUFJLENBQUMsRUFBRSxDQUFDLENBQUM7UUFDdkMsSUFBSSxDQUFDLElBQUksQ0FBQyxPQUFPLENBQUMsQ0FBQztJQUNyQixDQUFDO0lBQ0QsSUFBSSxDQUFDLElBQWE7UUFDaEIsSUFBSSxDQUFDLFFBQVEsQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLENBQUM7SUFDM0IsQ0FBQztJQUVELE1BQU0sQ0FBQyxJQUFhO1FBQ2xCLElBQUksQ0FBQyxRQUFRLENBQUMsTUFBTSxDQUFDLElBQUksQ0FBQyxFQUFFLENBQUMsQ0FBQyxTQUFTLENBQUMsR0FBRyxFQUFFO1lBQzNDLElBQUksQ0FBQyxTQUFTLEdBQUcsSUFBSSxDQUFDO1lBQ3RCLElBQUksQ0FBQyxRQUFRLENBQUMsTUFBTSxDQUFDLElBQUksQ0FBQyxDQUFDO1FBQzdCLENBQUMsRUFBRSxHQUFHLEVBQUUsQ0FBQyxJQUFJLENBQUMsR0FBRyxDQUFDLEtBQUssRUFBRSxDQUFDLENBQUM7SUFDN0IsQ0FBQztJQUNELFdBQVc7UUFDVCxJQUFJLENBQUMsUUFBUSxDQUFDLElBQUksRUFBRSxDQUFDO1FBQ3JCLElBQUksQ0FBQyxRQUFRLENBQUMsUUFBUSxFQUFFLENBQUM7SUFDM0IsQ0FBQzs7OEdBdERLLGlCQUFpQjtrR0FBakIsaUJBQWlCLDBGQ2hDekIsKzVEQXFDQSxxMklEbkJhLGNBQWM7MkZBY25CLGlCQUFpQjtrQkFOeEIsU0FBUzsrQkFDRSxpQkFBaUI7aVBBTVIsUUFBUTtzQkFBMUIsTUFBTSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENoYW5nZURldGVjdG9yUmVmLCBDb21wb25lbnQsIEV2ZW50RW1pdHRlciwgT25EZXN0cm95LCBPbkluaXQsIE91dHB1dCwgUGlwZSwgUGlwZVRyYW5zZm9ybSB9IGZyb20gXCJAYW5ndWxhci9jb3JlXCI7XHJcbmltcG9ydCB7IG1lcmdlLCBPYnNlcnZhYmxlLCBTdWJqZWN0IH0gZnJvbSAncnhqcyc7XHJcbmltcG9ydCB7IGRlYm91bmNlVGltZSwgbWFwLCB0YWtlVW50aWwsIHN3aXRjaE1hcCwgZmlsdGVyIH0gZnJvbSAncnhqcy9vcGVyYXRvcnMnO1xyXG5cclxuaW1wb3J0IHsgQ29udGFjdCwgVXNlckluZm8gfSBmcm9tICcuLi9jb3JlL21vZGVscyc7XHJcbmltcG9ydCB7IFNlc3Npb25TZXJ2aWNlIH0gZnJvbSAnLi4vY29yZS9zZXNzaW9uLnNlcnZpY2UnO1xyXG5pbXBvcnQgeyBQcm9tcHRTZXJ2aWNlIH0gZnJvbSAnLi4vY29yZS9wcm9tcHQuc2VydmljZSc7XHJcbmltcG9ydCB7IEZvcm1Db250cm9sIH0gZnJvbSAnQGFuZ3VsYXIvZm9ybXMnO1xyXG5pbXBvcnQgeyBDaGF0U2VydmljZSB9IGZyb20gJy4vY2hhdC5zZXJ2aWNlJztcclxuaW1wb3J0IHsgSHViU2VydmljZSB9IGZyb20gJy4uL2NvcmUvaHViLnNlcnZpY2UnO1xyXG5pbXBvcnQgeyBpc1N0cmluZyB9IGZyb20gXCIuLi9jb3JlL2Z1bmN0aW9uc1wiO1xyXG5pbXBvcnQgeyBNYXRBdXRvY29tcGxldGVTZWxlY3RlZEV2ZW50IH0gZnJvbSBcIkBhbmd1bGFyL21hdGVyaWFsL2F1dG9jb21wbGV0ZVwiO1xyXG5pbXBvcnQgeyBBY2NvdW50U2VydmljZSB9IGZyb20gXCIuLi9jb3JlL2FjY291bnQuc2VydmljZVwiO1xyXG5pbXBvcnQgeyBmb3JrSm9pbiB9IGZyb20gXCJyeGpzXCI7XHJcbmltcG9ydCB7IHRhcCB9IGZyb20gXCJyeGpzL29wZXJhdG9yc1wiO1xyXG5pbXBvcnQgeyBIVE1MX0VYUCB9IGZyb20gXCIuLi9jb3JlL3RhZ2dpbmcvZWRpdC1pbnB1dC5jb21wb25lbnRcIjtcclxuXHJcbkBQaXBlKHtuYW1lOiAnaHRtbFRvVGV4dCd9KVxyXG5leHBvcnQgY2xhc3MgSHRtbFNpbXBsZVBpcGUgaW1wbGVtZW50cyBQaXBlVHJhbnNmb3JtIHtcclxuICAgIHRyYW5zZm9ybSh2YWx1ZTogYW55LCAuLi5hcmdzOiBhbnlbXSkge1xyXG4gICAgICBpZiAoIXZhbHVlKSByZXR1cm4gJyc7XHJcbiAgICAgIGVsc2UgaWYgKCFIVE1MX0VYUC50ZXN0KHZhbHVlKSkgcmV0dXJuIHZhbHVlO1xyXG4gICAgICBlbHNlIHJldHVybiAodmFsdWUgYXMgc3RyaW5nKS5yZXBsYWNlKEhUTUxfRVhQLCAnJyk7XHJcbiAgICB9XHJcbn1cclxuXHJcbkBDb21wb25lbnQoe1xyXG4gIHNlbGVjdG9yOiAnYml6ZG9jLWNvbnRhY3RzJyxcclxuICB0ZW1wbGF0ZVVybDogJy4vY29udGFjdHMuY29tcG9uZW50Lmh0bWwnLFxyXG4gIHN0eWxlVXJsczogWycuL2NvbnRhY3RzLmNvbXBvbmVudC5zY3NzJ11cclxufSlcclxuZXhwb3J0XHJcbiAgY2xhc3MgQ29udGFjdHNDb21wb25lbnQgaW1wbGVtZW50cyBPbkluaXQsIE9uRGVzdHJveSB7XHJcbiAgQE91dHB1dCgpIHJlYWRvbmx5IHNlbGVjdGVkID0gbmV3IEV2ZW50RW1pdHRlcjxDb250YWN0PigpO1xyXG4gIGNvbnRhY3RzOiBDb250YWN0W107XHJcbiAgdXNlcnMkOiBPYnNlcnZhYmxlPFVzZXJJbmZvW10+O1xyXG4gIHJlYWRvbmx5IHNlYXJjaENvbnRyb2wgPSBuZXcgRm9ybUNvbnRyb2woKTtcclxuICBwcml2YXRlIHJlYWRvbmx5IF9kZXN0cm95ID0gbmV3IFN1YmplY3Q8dm9pZD4oKTtcclxuICBjb25zdHJ1Y3RvcihcclxuICAgIHByaXZhdGUgX3NlcnZpY2U6IENoYXRTZXJ2aWNlLFxyXG4gICAgcHJpdmF0ZSBfc2I6IFByb21wdFNlcnZpY2UsXHJcbiAgICBwcml2YXRlIF9zZXNzaW9uOiBTZXNzaW9uU2VydmljZSxcclxuICAgIHByaXZhdGUgX2FjY291bnRzOiBBY2NvdW50U2VydmljZSxcclxuICAgIHByaXZhdGUgX2NoYW5nZURldGVjdG9yOiBDaGFuZ2VEZXRlY3RvclJlZixcclxuICAgIHByaXZhdGUgX21lc3NhZ2luZzogSHViU2VydmljZSkge1xyXG4gICAgbWVyZ2UodGhpcy5fbWVzc2FnaW5nLmNoYXQkLCB0aGlzLl9tZXNzYWdpbmcuY2hhdFdhdGVybWFyayQpLlxyXG4gICAgICBwaXBlKHRha2VVbnRpbCh0aGlzLl9kZXN0cm95KSkuXHJcbiAgICAgIHN1YnNjcmliZSgoKSA9PlxyXG4gICAgICAgIHRoaXMuX2NoYW5nZURldGVjdG9yLmRldGVjdENoYW5nZXMoKSk7XHJcbiAgICBfc2VydmljZS5jaGFuZ2UuXHJcbiAgICAgIHBpcGUodGFrZVVudGlsKHRoaXMuX2Rlc3Ryb3kpKS5cclxuICAgICAgc3Vic2NyaWJlKGMgPT4gdGhpcy5fYWNjb3VudHMuZ2V0KGMuaWQpLnN1YnNjcmliZSh1ID0+IE9iamVjdC5hc3NpZ24oYywgdSkpKTtcclxuICAgIHRoaXMuY29udGFjdHMgPSB0aGlzLl9zZXNzaW9uLnByb2ZpbGUuY29udGFjdHM7XHJcbiAgfVxyXG4gIHByaXZhdGUgX3ByZXBhcmUoKSB7XHJcbiAgICBmb3JrSm9pbih0aGlzLmNvbnRhY3RzLm1hcChjID0+XHJcbiAgICAgIHRoaXMuX2FjY291bnRzLmdldChjLmlkKS5waXBlKHRhcCh1ID0+IE9iamVjdC5hc3NpZ24oYywgdSkpKSkpLlxyXG4gICAgICBzdWJzY3JpYmUoKVxyXG4gIH1cclxuICBuZ09uSW5pdCgpOiB2b2lkIHtcclxuICAgIGNvbnN0IG1lID0gdGhpcy5fc2Vzc2lvbi51c2VySWQ7XHJcbiAgICB0aGlzLl9wcmVwYXJlKCk7XHJcbiAgICB0aGlzLnVzZXJzJCA9IHRoaXMuc2VhcmNoQ29udHJvbC52YWx1ZUNoYW5nZXMucGlwZShkZWJvdW5jZVRpbWUoMjAwKSxcclxuICAgICAgZmlsdGVyKHYgPT4gaXNTdHJpbmcodikpLFxyXG4gICAgICB0YWtlVW50aWwodGhpcy5fZGVzdHJveSksXHJcbiAgICAgIHN3aXRjaE1hcCh2ID0+IHRoaXMuX3NlcnZpY2UuZmluZEFsbCh2KSksXHJcbiAgICAgIG1hcCh1cyA9PiB1cy5maWx0ZXIodSA9PiB1LmlkICE9PSBtZSkpKTtcclxuICB9XHJcbiAgb3B0aW9uU2VsZWN0ZWQoZXY6IE1hdEF1dG9jb21wbGV0ZVNlbGVjdGVkRXZlbnQpIHtcclxuICAgIGNvbnN0IHsgdmFsdWU6IGlkIH0gPSBldi5vcHRpb247XHJcbiAgICBjb25zdCBjb250YWN0ID0gdGhpcy5fc2VydmljZS5maW5kKGlkKTtcclxuICAgIHRoaXMub3Blbihjb250YWN0KTtcclxuICB9XHJcbiAgb3BlbihpdGVtOiBDb250YWN0KSB7XHJcbiAgICB0aGlzLnNlbGVjdGVkLm5leHQoaXRlbSk7XHJcbiAgfVxyXG5cclxuICBmb3JnZXQoaXRlbTogQ29udGFjdCkge1xyXG4gICAgdGhpcy5fc2VydmljZS5mb3JnZXQoaXRlbS5pZCkuc3Vic2NyaWJlKCgpID0+IHtcclxuICAgICAgaXRlbS5mb3Jnb3R0ZW4gPSB0cnVlO1xyXG4gICAgICB0aGlzLmNvbnRhY3RzLnJlbW92ZShpdGVtKTtcclxuICAgIH0sICgpID0+IHRoaXMuX3NiLmVycm9yKCkpO1xyXG4gIH1cclxuICBuZ09uRGVzdHJveSgpOiB2b2lkIHtcclxuICAgIHRoaXMuX2Rlc3Ryb3kubmV4dCgpO1xyXG4gICAgdGhpcy5fZGVzdHJveS5jb21wbGV0ZSgpO1xyXG4gIH1cclxufVxyXG4iLCIgICAgPCEtLSBzZWFyY2ggLS0+XHJcbjxtYXQtZm9ybS1maWVsZCBmbG9hdExhYmVsPVwibmV2ZXJcIiBjbGFzcz1cInNlYXJjaFwiPlxyXG4gIDxpbnB1dCB0eXBlPVwic2VhcmNoXCIgbWF0SW5wdXQgW2Zvcm1Db250cm9sXT1cInNlYXJjaENvbnRyb2xcIiBbbWF0QXV0b2NvbXBsZXRlXT1cInVzZXJcIiBwbGFjZWhvbGRlcj1cInt7J1NlYXJjaENvbnRhY3RzJyB8IHRyYW5zbGF0ZX19XCIgLz5cclxuICA8YnV0dG9uIG1hdC1idXR0b24gKm5nSWY9XCJzZWFyY2hDb250cm9sLnZhbHVlXCIgbWF0U3VmZml4IG1hdC1pY29uLWJ1dHRvbiBhcmlhLWxhYmVsPVwiXCIgKGNsaWNrKT1cInNlYXJjaENvbnRyb2wuc2V0VmFsdWUoJycpXCI+XHJcbiAgICA8bWF0LWljb24+Y2xvc2U8L21hdC1pY29uPlxyXG4gIDwvYnV0dG9uPlxyXG4gIDxtYXQtYXV0b2NvbXBsZXRlICN1c2VyIChvcHRpb25TZWxlY3RlZCk9XCJvcHRpb25TZWxlY3RlZCgkZXZlbnQpXCI+XHJcbiAgICA8bWF0LW9wdGlvbiAqbmdGb3I9XCJsZXQgdSBvZiB1c2VycyQgfCBhc3luY1wiIFt2YWx1ZV09XCJ1LmlkXCI+XHJcbiAgICAgIHt7dS5uYW1lfX1cclxuICAgIDwvbWF0LW9wdGlvbj5cclxuICA8L21hdC1hdXRvY29tcGxldGU+XHJcbjwvbWF0LWZvcm0tZmllbGQ+XHJcbjwhLS0gY29udGFjdHMgLS0+XHJcbjxtYXQtbmF2LWxpc3Q+XHJcbiAgPG1hdC1saXN0LWl0ZW0gKm5nRm9yPVwibGV0IGMgb2YgY29udGFjdHMgfGZpbHRlcjonZm9yZ290dGVuJzp1bmRlZmluZWR8IHNvcnQgOiAndGltZScgOiAnZGVzYydcIiAoY2xpY2spPVwib3BlbihjKVwiIFtjbGFzcy5yZWFkXT1cImMudmlzaXRlZD49Yy50aW1lXCI+XHJcbiAgICA8Yml6ZG9jLWF2YXRhciBbcGVyc29uXT1cImNcIiAqbmdJZj1cImMubmFtZVwiIFtpbnRlcmFjdGl2ZV09XCJmYWxzZVwiPjwvYml6ZG9jLWF2YXRhcj5cclxuICAgIDxoMyBtYXRMaXN0SXRlbVRpdGxlPlxyXG4gICAgICB7e2MubmljayB8fCBjLm5hbWV9fVxyXG4gICAgPC9oMz5cclxuICAgIDxkaXYgbWF0TGlzdEl0ZW1MaW5lPlxyXG4gICAgICA8ZGl2IGNsYXNzPVwiY2hhdC10ZXh0XCIgW2lubmVyVGV4dF09XCJjLnRleHQgfCBodG1sVG9UZXh0XCI+PC9kaXY+XHJcbiAgICA8L2Rpdj5cclxuICAgIDxwIG1hdExpc3RJdGVtTGluZT5cclxuICAgICAgPHNtYWxsIFtiaXpkb2NUb29sdGlwXT1cImMudGltZSB8IGFtQ2FsZW5kYXJcIj57e2MudGltZSB8IGFtVGltZUFnb319PC9zbWFsbD5cclxuICAgICAgPHNtYWxsICpuZ0lmPVwiIWMuYWNjZXB0ZWRcIj5cclxuICAgICAgICB7eydZb3UnIHwgdHJhbnNsYXRlIH19XHJcbiAgICAgIDwvc21hbGw+XHJcbiAgICAgIDxtYXQtaWNvbiAqbmdJZj1cIiFjLmFjY2VwdGVkICYmIGMud2F0ZXJtYXJrPj1jLnRpbWVcIiBjbGFzcz1cIndhdGVybWFya1wiPmRvbmVfYWxsPC9tYXQtaWNvbj5cclxuICAgIDwvcD5cclxuICAgIDxidXR0b24gbWF0LWljb24tYnV0dG9uIFttYXRNZW51VHJpZ2dlckZvcl09XCJtZW51XCIgKGNsaWNrKT1cIiRldmVudC5zdG9wUHJvcGFnYXRpb24oKVwiIGNsYXNzPVwidG9vbFwiID5cclxuICAgICAgPG1hdC1pY29uIFttYXRCYWRnZV09XCJjLmNvdW50XCIgW21hdEJhZGdlSGlkZGVuXT1cIiFjLmNvdW50XCIgbWF0QmFkZ2VTaXplPVwibWVkaXVtXCIgbWF0QmFkZ2VDb2xvcj1cImFjY2VudFwiIG1hdEJhZGdlUG9zaXRpb249XCJiZWZvcmVcIiBtYXRCYWRnZU92ZXJsYXA9XCJmYWxzZVwiPm1vcmVfdmVydDwvbWF0LWljb24+XHJcbiAgICA8L2J1dHRvbj5cclxuICAgIDxtYXQtbWVudSAjbWVudT5cclxuICAgICAgPGJ1dHRvbiBtYXQtbWVudS1pdGVtIChjbGljayk9XCJmb3JnZXQoYylcIj57eydGb3JnZXQnfHRyYW5zbGF0ZX19PC9idXR0b24+XHJcbiAgICA8L21hdC1tZW51PlxyXG4gIDwvbWF0LWxpc3QtaXRlbT5cclxuPC9tYXQtbmF2LWxpc3Q+XHJcbiJdfQ==
103
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29udGFjdHMuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vbGlicmFyaWVzL2NvcmUvc3JjL2xpYi9jaGF0L2NvbnRhY3RzLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uL2xpYnJhcmllcy9jb3JlL3NyYy9saWIvY2hhdC9jb250YWN0cy5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQXFCLFNBQVMsRUFBRSxZQUFZLEVBQXFCLE1BQU0sRUFBRSxJQUFJLEVBQWlCLE1BQU0sZUFBZSxDQUFDO0FBQzNILE9BQU8sRUFBRSxLQUFLLEVBQWMsT0FBTyxFQUFFLE1BQU0sTUFBTSxDQUFDO0FBQ2xELE9BQU8sRUFBRSxZQUFZLEVBQUUsR0FBRyxFQUFFLFNBQVMsRUFBRSxTQUFTLEVBQUUsTUFBTSxFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFLakYsT0FBTyxFQUFFLFdBQVcsRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBRzdDLE9BQU8sRUFBRSxRQUFRLEVBQUUsTUFBTSxtQkFBbUIsQ0FBQztBQUc3QyxPQUFPLEVBQUUsUUFBUSxFQUFFLE1BQU0sTUFBTSxDQUFDO0FBQ2hDLE9BQU8sRUFBRSxHQUFHLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUNyQyxPQUFPLEVBQUUsUUFBUSxFQUFFLE1BQU0sc0NBQXNDLENBQUM7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztBQUdoRSxNQUFNLE9BQU8sY0FBYztJQUN2QixTQUFTLENBQUMsS0FBVSxFQUFFLEdBQUcsSUFBVztRQUNsQyxJQUFJLENBQUMsS0FBSztZQUFFLE9BQU8sRUFBRSxDQUFDO2FBQ2pCLElBQUksQ0FBQyxRQUFRLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQztZQUFFLE9BQU8sS0FBSyxDQUFDOztZQUN4QyxPQUFRLEtBQWdCLENBQUMsT0FBTyxDQUFDLFFBQVEsRUFBRSxFQUFFLENBQUMsQ0FBQztJQUN0RCxDQUFDOzsyR0FMUSxjQUFjO3lHQUFkLGNBQWM7MkZBQWQsY0FBYztrQkFEMUIsSUFBSTttQkFBQyxFQUFDLElBQUksRUFBRSxZQUFZLEVBQUM7O0FBYzFCLE1BQU0sT0FDRSxpQkFBaUI7SUFNdkIsWUFDVSxRQUFxQixFQUNyQixHQUFrQixFQUNsQixRQUF3QixFQUN4QixTQUF5QixFQUN6QixlQUFrQyxFQUNsQyxVQUFzQjtRQUx0QixhQUFRLEdBQVIsUUFBUSxDQUFhO1FBQ3JCLFFBQUcsR0FBSCxHQUFHLENBQWU7UUFDbEIsYUFBUSxHQUFSLFFBQVEsQ0FBZ0I7UUFDeEIsY0FBUyxHQUFULFNBQVMsQ0FBZ0I7UUFDekIsb0JBQWUsR0FBZixlQUFlLENBQW1CO1FBQ2xDLGVBQVUsR0FBVixVQUFVLENBQVk7UUFYYixhQUFRLEdBQUcsSUFBSSxZQUFZLEVBQVcsQ0FBQztRQUdqRCxrQkFBYSxHQUFHLElBQUksV0FBVyxFQUFFLENBQUM7UUFDMUIsYUFBUSxHQUFHLElBQUksT0FBTyxFQUFRLENBQUM7UUFROUMsS0FBSyxDQUFDLElBQUksQ0FBQyxVQUFVLENBQUMsS0FBSyxFQUFFLElBQUksQ0FBQyxVQUFVLENBQUMsY0FBYyxDQUFDO1lBQzFELElBQUksQ0FBQyxTQUFTLENBQUMsSUFBSSxDQUFDLFFBQVEsQ0FBQyxDQUFDO1lBQzlCLFNBQVMsQ0FBQyxHQUFHLEVBQUUsQ0FDYixJQUFJLENBQUMsZUFBZSxDQUFDLGFBQWEsRUFBRSxDQUFDLENBQUM7UUFDMUMsUUFBUSxDQUFDLE1BQU07WUFDYixJQUFJLENBQUMsU0FBUyxDQUFDLElBQUksQ0FBQyxRQUFRLENBQUMsQ0FBQztZQUM5QixTQUFTLENBQUMsQ0FBQyxDQUFDLEVBQUUsQ0FBQyxJQUFJLENBQUMsU0FBUyxDQUFDLEdBQUcsQ0FBQyxDQUFDLENBQUMsRUFBRSxDQUFDLENBQUMsU0FBUyxDQUFDLENBQUMsQ0FBQyxFQUFFLENBQUMsTUFBTSxDQUFDLE1BQU0sQ0FBQyxDQUFDLEVBQUUsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDO1FBQy9FLElBQUksQ0FBQyxRQUFRLEdBQUcsSUFBSSxDQUFDLFFBQVEsQ0FBQyxPQUFPLENBQUMsUUFBUSxDQUFDO0lBQ2pELENBQUM7SUFDTyxRQUFRO1FBQ2QsUUFBUSxDQUFDLElBQUksQ0FBQyxRQUFRLENBQUMsR0FBRyxDQUFDLENBQUMsQ0FBQyxFQUFFLENBQzdCLElBQUksQ0FBQyxTQUFTLENBQUMsR0FBRyxDQUFDLENBQUMsQ0FBQyxFQUFFLENBQUMsQ0FBQyxJQUFJLENBQUMsR0FBRyxDQUFDLENBQUMsQ0FBQyxFQUFFLENBQUMsTUFBTSxDQUFDLE1BQU0sQ0FBQyxDQUFDLEVBQUUsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUM7WUFDOUQsU0FBUyxFQUFFLENBQUE7SUFDZixDQUFDO0lBQ0QsUUFBUTtRQUNOLE1BQU0sRUFBRSxHQUFHLElBQUksQ0FBQyxRQUFRLENBQUMsTUFBTSxDQUFDO1FBQ2hDLElBQUksQ0FBQyxRQUFRLEVBQUUsQ0FBQztRQUNoQixJQUFJLENBQUMsTUFBTSxHQUFHLElBQUksQ0FBQyxhQUFhLENBQUMsWUFBWSxDQUFDLElBQUksQ0FBQyxZQUFZLENBQUMsR0FBRyxDQUFDLEVBQ2xFLE1BQU0sQ0FBQyxDQUFDLENBQUMsRUFBRSxDQUFDLFFBQVEsQ0FBQyxDQUFDLENBQUMsQ0FBQyxFQUN4QixTQUFTLENBQUMsSUFBSSxDQUFDLFFBQVEsQ0FBQyxFQUN4QixTQUFTLENBQUMsQ0FBQyxDQUFDLEVBQUUsQ0FBQyxJQUFJLENBQUMsUUFBUSxDQUFDLE9BQU8sQ0FBQyxDQUFDLENBQUMsQ0FBQyxFQUN4QyxHQUFHLENBQUMsRUFBRSxDQUFDLEVBQUUsQ0FBQyxFQUFFLENBQUMsTUFBTSxDQUFDLENBQUMsQ0FBQyxFQUFFLENBQUMsQ0FBQyxDQUFDLEVBQUUsS0FBSyxFQUFFLENBQUMsQ0FBQyxDQUFDLENBQUM7SUFDNUMsQ0FBQztJQUNELGNBQWMsQ0FBQyxFQUFnQztRQUM3QyxNQUFNLEVBQUUsS0FBSyxFQUFFLEVBQUUsRUFBRSxHQUFHLEVBQUUsQ0FBQyxNQUFNLENBQUM7UUFDaEMsTUFBTSxPQUFPLEdBQUcsSUFBSSxDQUFDLFFBQVEsQ0FBQyxJQUFJLENBQUMsRUFBRSxDQUFDLENBQUM7UUFDdkMsSUFBSSxDQUFDLElBQUksQ0FBQyxPQUFPLENBQUMsQ0FBQztJQUNyQixDQUFDO0lBQ0QsSUFBSSxDQUFDLElBQWE7UUFDaEIsSUFBSSxDQUFDLFFBQVEsQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLENBQUM7SUFDM0IsQ0FBQztJQUVELE1BQU0sQ0FBQyxJQUFhO1FBQ2xCLElBQUksQ0FBQyxRQUFRLENBQUMsTUFBTSxDQUFDLElBQUksQ0FBQyxFQUFFLENBQUMsQ0FBQyxTQUFTLENBQUMsR0FBRyxFQUFFO1lBQzNDLElBQUksQ0FBQyxTQUFTLEdBQUcsSUFBSSxDQUFDO1lBQ3RCLElBQUksQ0FBQyxRQUFRLENBQUMsTUFBTSxDQUFDLElBQUksQ0FBQyxDQUFDO1FBQzdCLENBQUMsRUFBRSxHQUFHLEVBQUUsQ0FBQyxJQUFJLENBQUMsR0FBRyxDQUFDLEtBQUssRUFBRSxDQUFDLENBQUM7SUFDN0IsQ0FBQztJQUNELFdBQVc7UUFDVCxJQUFJLENBQUMsUUFBUSxDQUFDLElBQUksRUFBRSxDQUFDO1FBQ3JCLElBQUksQ0FBQyxRQUFRLENBQUMsUUFBUSxFQUFFLENBQUM7SUFDM0IsQ0FBQzs7OEdBdERLLGlCQUFpQjtrR0FBakIsaUJBQWlCLDBGQ2hDekIsKzVEQXFDQSxnNElEbkJhLGNBQWM7MkZBY25CLGlCQUFpQjtrQkFOeEIsU0FBUzsrQkFDRSxpQkFBaUI7aVBBTVIsUUFBUTtzQkFBMUIsTUFBTSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENoYW5nZURldGVjdG9yUmVmLCBDb21wb25lbnQsIEV2ZW50RW1pdHRlciwgT25EZXN0cm95LCBPbkluaXQsIE91dHB1dCwgUGlwZSwgUGlwZVRyYW5zZm9ybSB9IGZyb20gXCJAYW5ndWxhci9jb3JlXCI7XHJcbmltcG9ydCB7IG1lcmdlLCBPYnNlcnZhYmxlLCBTdWJqZWN0IH0gZnJvbSAncnhqcyc7XHJcbmltcG9ydCB7IGRlYm91bmNlVGltZSwgbWFwLCB0YWtlVW50aWwsIHN3aXRjaE1hcCwgZmlsdGVyIH0gZnJvbSAncnhqcy9vcGVyYXRvcnMnO1xyXG5cclxuaW1wb3J0IHsgQ29udGFjdCwgVXNlckluZm8gfSBmcm9tICcuLi9jb3JlL21vZGVscyc7XHJcbmltcG9ydCB7IFNlc3Npb25TZXJ2aWNlIH0gZnJvbSAnLi4vY29yZS9zZXNzaW9uLnNlcnZpY2UnO1xyXG5pbXBvcnQgeyBQcm9tcHRTZXJ2aWNlIH0gZnJvbSAnLi4vY29yZS9wcm9tcHQuc2VydmljZSc7XHJcbmltcG9ydCB7IEZvcm1Db250cm9sIH0gZnJvbSAnQGFuZ3VsYXIvZm9ybXMnO1xyXG5pbXBvcnQgeyBDaGF0U2VydmljZSB9IGZyb20gJy4vY2hhdC5zZXJ2aWNlJztcclxuaW1wb3J0IHsgSHViU2VydmljZSB9IGZyb20gJy4uL2NvcmUvaHViLnNlcnZpY2UnO1xyXG5pbXBvcnQgeyBpc1N0cmluZyB9IGZyb20gXCIuLi9jb3JlL2Z1bmN0aW9uc1wiO1xyXG5pbXBvcnQgeyBNYXRBdXRvY29tcGxldGVTZWxlY3RlZEV2ZW50IH0gZnJvbSBcIkBhbmd1bGFyL21hdGVyaWFsL2F1dG9jb21wbGV0ZVwiO1xyXG5pbXBvcnQgeyBBY2NvdW50U2VydmljZSB9IGZyb20gXCIuLi9jb3JlL2FjY291bnQuc2VydmljZVwiO1xyXG5pbXBvcnQgeyBmb3JrSm9pbiB9IGZyb20gXCJyeGpzXCI7XHJcbmltcG9ydCB7IHRhcCB9IGZyb20gXCJyeGpzL29wZXJhdG9yc1wiO1xyXG5pbXBvcnQgeyBIVE1MX0VYUCB9IGZyb20gXCIuLi9jb3JlL3RhZ2dpbmcvZWRpdC1pbnB1dC5jb21wb25lbnRcIjtcclxuXHJcbkBQaXBlKHtuYW1lOiAnaHRtbFRvVGV4dCd9KVxyXG5leHBvcnQgY2xhc3MgSHRtbFNpbXBsZVBpcGUgaW1wbGVtZW50cyBQaXBlVHJhbnNmb3JtIHtcclxuICAgIHRyYW5zZm9ybSh2YWx1ZTogYW55LCAuLi5hcmdzOiBhbnlbXSkge1xyXG4gICAgICBpZiAoIXZhbHVlKSByZXR1cm4gJyc7XHJcbiAgICAgIGVsc2UgaWYgKCFIVE1MX0VYUC50ZXN0KHZhbHVlKSkgcmV0dXJuIHZhbHVlO1xyXG4gICAgICBlbHNlIHJldHVybiAodmFsdWUgYXMgc3RyaW5nKS5yZXBsYWNlKEhUTUxfRVhQLCAnJyk7XHJcbiAgICB9XHJcbn1cclxuXHJcbkBDb21wb25lbnQoe1xyXG4gIHNlbGVjdG9yOiAnYml6ZG9jLWNvbnRhY3RzJyxcclxuICB0ZW1wbGF0ZVVybDogJy4vY29udGFjdHMuY29tcG9uZW50Lmh0bWwnLFxyXG4gIHN0eWxlVXJsczogWycuL2NvbnRhY3RzLmNvbXBvbmVudC5zY3NzJ11cclxufSlcclxuZXhwb3J0XHJcbiAgY2xhc3MgQ29udGFjdHNDb21wb25lbnQgaW1wbGVtZW50cyBPbkluaXQsIE9uRGVzdHJveSB7XHJcbiAgQE91dHB1dCgpIHJlYWRvbmx5IHNlbGVjdGVkID0gbmV3IEV2ZW50RW1pdHRlcjxDb250YWN0PigpO1xyXG4gIGNvbnRhY3RzOiBDb250YWN0W107XHJcbiAgdXNlcnMkOiBPYnNlcnZhYmxlPFVzZXJJbmZvW10+O1xyXG4gIHJlYWRvbmx5IHNlYXJjaENvbnRyb2wgPSBuZXcgRm9ybUNvbnRyb2woKTtcclxuICBwcml2YXRlIHJlYWRvbmx5IF9kZXN0cm95ID0gbmV3IFN1YmplY3Q8dm9pZD4oKTtcclxuICBjb25zdHJ1Y3RvcihcclxuICAgIHByaXZhdGUgX3NlcnZpY2U6IENoYXRTZXJ2aWNlLFxyXG4gICAgcHJpdmF0ZSBfc2I6IFByb21wdFNlcnZpY2UsXHJcbiAgICBwcml2YXRlIF9zZXNzaW9uOiBTZXNzaW9uU2VydmljZSxcclxuICAgIHByaXZhdGUgX2FjY291bnRzOiBBY2NvdW50U2VydmljZSxcclxuICAgIHByaXZhdGUgX2NoYW5nZURldGVjdG9yOiBDaGFuZ2VEZXRlY3RvclJlZixcclxuICAgIHByaXZhdGUgX21lc3NhZ2luZzogSHViU2VydmljZSkge1xyXG4gICAgbWVyZ2UodGhpcy5fbWVzc2FnaW5nLmNoYXQkLCB0aGlzLl9tZXNzYWdpbmcuY2hhdFdhdGVybWFyayQpLlxyXG4gICAgICBwaXBlKHRha2VVbnRpbCh0aGlzLl9kZXN0cm95KSkuXHJcbiAgICAgIHN1YnNjcmliZSgoKSA9PlxyXG4gICAgICAgIHRoaXMuX2NoYW5nZURldGVjdG9yLmRldGVjdENoYW5nZXMoKSk7XHJcbiAgICBfc2VydmljZS5jaGFuZ2UuXHJcbiAgICAgIHBpcGUodGFrZVVudGlsKHRoaXMuX2Rlc3Ryb3kpKS5cclxuICAgICAgc3Vic2NyaWJlKGMgPT4gdGhpcy5fYWNjb3VudHMuZ2V0KGMuaWQpLnN1YnNjcmliZSh1ID0+IE9iamVjdC5hc3NpZ24oYywgdSkpKTtcclxuICAgIHRoaXMuY29udGFjdHMgPSB0aGlzLl9zZXNzaW9uLnByb2ZpbGUuY29udGFjdHM7XHJcbiAgfVxyXG4gIHByaXZhdGUgX3ByZXBhcmUoKSB7XHJcbiAgICBmb3JrSm9pbih0aGlzLmNvbnRhY3RzLm1hcChjID0+XHJcbiAgICAgIHRoaXMuX2FjY291bnRzLmdldChjLmlkKS5waXBlKHRhcCh1ID0+IE9iamVjdC5hc3NpZ24oYywgdSkpKSkpLlxyXG4gICAgICBzdWJzY3JpYmUoKVxyXG4gIH1cclxuICBuZ09uSW5pdCgpOiB2b2lkIHtcclxuICAgIGNvbnN0IG1lID0gdGhpcy5fc2Vzc2lvbi51c2VySWQ7XHJcbiAgICB0aGlzLl9wcmVwYXJlKCk7XHJcbiAgICB0aGlzLnVzZXJzJCA9IHRoaXMuc2VhcmNoQ29udHJvbC52YWx1ZUNoYW5nZXMucGlwZShkZWJvdW5jZVRpbWUoMjAwKSxcclxuICAgICAgZmlsdGVyKHYgPT4gaXNTdHJpbmcodikpLFxyXG4gICAgICB0YWtlVW50aWwodGhpcy5fZGVzdHJveSksXHJcbiAgICAgIHN3aXRjaE1hcCh2ID0+IHRoaXMuX3NlcnZpY2UuZmluZEFsbCh2KSksXHJcbiAgICAgIG1hcCh1cyA9PiB1cy5maWx0ZXIodSA9PiB1LmlkICE9PSBtZSkpKTtcclxuICB9XHJcbiAgb3B0aW9uU2VsZWN0ZWQoZXY6IE1hdEF1dG9jb21wbGV0ZVNlbGVjdGVkRXZlbnQpIHtcclxuICAgIGNvbnN0IHsgdmFsdWU6IGlkIH0gPSBldi5vcHRpb247XHJcbiAgICBjb25zdCBjb250YWN0ID0gdGhpcy5fc2VydmljZS5maW5kKGlkKTtcclxuICAgIHRoaXMub3Blbihjb250YWN0KTtcclxuICB9XHJcbiAgb3BlbihpdGVtOiBDb250YWN0KSB7XHJcbiAgICB0aGlzLnNlbGVjdGVkLm5leHQoaXRlbSk7XHJcbiAgfVxyXG5cclxuICBmb3JnZXQoaXRlbTogQ29udGFjdCkge1xyXG4gICAgdGhpcy5fc2VydmljZS5mb3JnZXQoaXRlbS5pZCkuc3Vic2NyaWJlKCgpID0+IHtcclxuICAgICAgaXRlbS5mb3Jnb3R0ZW4gPSB0cnVlO1xyXG4gICAgICB0aGlzLmNvbnRhY3RzLnJlbW92ZShpdGVtKTtcclxuICAgIH0sICgpID0+IHRoaXMuX3NiLmVycm9yKCkpO1xyXG4gIH1cclxuICBuZ09uRGVzdHJveSgpOiB2b2lkIHtcclxuICAgIHRoaXMuX2Rlc3Ryb3kubmV4dCgpO1xyXG4gICAgdGhpcy5fZGVzdHJveS5jb21wbGV0ZSgpO1xyXG4gIH1cclxufVxyXG4iLCIgICAgPCEtLSBzZWFyY2ggLS0+XHJcbjxtYXQtZm9ybS1maWVsZCBmbG9hdExhYmVsPVwibmV2ZXJcIiBjbGFzcz1cInNlYXJjaFwiPlxyXG4gIDxpbnB1dCB0eXBlPVwic2VhcmNoXCIgbWF0SW5wdXQgW2Zvcm1Db250cm9sXT1cInNlYXJjaENvbnRyb2xcIiBbbWF0QXV0b2NvbXBsZXRlXT1cInVzZXJcIiBwbGFjZWhvbGRlcj1cInt7J1NlYXJjaENvbnRhY3RzJyB8IHRyYW5zbGF0ZX19XCIgLz5cclxuICA8YnV0dG9uIG1hdC1idXR0b24gKm5nSWY9XCJzZWFyY2hDb250cm9sLnZhbHVlXCIgbWF0U3VmZml4IG1hdC1pY29uLWJ1dHRvbiBhcmlhLWxhYmVsPVwiXCIgKGNsaWNrKT1cInNlYXJjaENvbnRyb2wuc2V0VmFsdWUoJycpXCI+XHJcbiAgICA8bWF0LWljb24+Y2xvc2U8L21hdC1pY29uPlxyXG4gIDwvYnV0dG9uPlxyXG4gIDxtYXQtYXV0b2NvbXBsZXRlICN1c2VyIChvcHRpb25TZWxlY3RlZCk9XCJvcHRpb25TZWxlY3RlZCgkZXZlbnQpXCI+XHJcbiAgICA8bWF0LW9wdGlvbiAqbmdGb3I9XCJsZXQgdSBvZiB1c2VycyQgfCBhc3luY1wiIFt2YWx1ZV09XCJ1LmlkXCI+XHJcbiAgICAgIHt7dS5uYW1lfX1cclxuICAgIDwvbWF0LW9wdGlvbj5cclxuICA8L21hdC1hdXRvY29tcGxldGU+XHJcbjwvbWF0LWZvcm0tZmllbGQ+XHJcbjwhLS0gY29udGFjdHMgLS0+XHJcbjxtYXQtbmF2LWxpc3Q+XHJcbiAgPG1hdC1saXN0LWl0ZW0gKm5nRm9yPVwibGV0IGMgb2YgY29udGFjdHMgfGZpbHRlcjonZm9yZ290dGVuJzp1bmRlZmluZWR8IHNvcnQgOiAndGltZScgOiAnZGVzYydcIiAoY2xpY2spPVwib3BlbihjKVwiIFtjbGFzcy5yZWFkXT1cImMudmlzaXRlZD49Yy50aW1lXCI+XHJcbiAgICA8Yml6ZG9jLWF2YXRhciBbcGVyc29uXT1cImNcIiAqbmdJZj1cImMubmFtZVwiIFtpbnRlcmFjdGl2ZV09XCJmYWxzZVwiPjwvYml6ZG9jLWF2YXRhcj5cclxuICAgIDxoMyBtYXRMaXN0SXRlbVRpdGxlPlxyXG4gICAgICB7e2MubmljayB8fCBjLm5hbWV9fVxyXG4gICAgPC9oMz5cclxuICAgIDxkaXYgbWF0TGlzdEl0ZW1MaW5lPlxyXG4gICAgICA8ZGl2IGNsYXNzPVwiY2hhdC10ZXh0XCIgW2lubmVyVGV4dF09XCJjLnRleHQgfCBodG1sVG9UZXh0XCI+PC9kaXY+XHJcbiAgICA8L2Rpdj5cclxuICAgIDxwIG1hdExpc3RJdGVtTGluZT5cclxuICAgICAgPHNtYWxsIFtiaXpkb2NUb29sdGlwXT1cImMudGltZSB8IGFtQ2FsZW5kYXJcIj57e2MudGltZSB8IGFtVGltZUFnb319PC9zbWFsbD5cclxuICAgICAgPHNtYWxsICpuZ0lmPVwiIWMuYWNjZXB0ZWRcIj5cclxuICAgICAgICB7eydZb3UnIHwgdHJhbnNsYXRlIH19XHJcbiAgICAgIDwvc21hbGw+XHJcbiAgICAgIDxtYXQtaWNvbiAqbmdJZj1cIiFjLmFjY2VwdGVkICYmIGMud2F0ZXJtYXJrPj1jLnRpbWVcIiBjbGFzcz1cIndhdGVybWFya1wiPmRvbmVfYWxsPC9tYXQtaWNvbj5cclxuICAgIDwvcD5cclxuICAgIDxidXR0b24gbWF0LWljb24tYnV0dG9uIFttYXRNZW51VHJpZ2dlckZvcl09XCJtZW51XCIgKGNsaWNrKT1cIiRldmVudC5zdG9wUHJvcGFnYXRpb24oKVwiIGNsYXNzPVwidG9vbFwiID5cclxuICAgICAgPG1hdC1pY29uIFttYXRCYWRnZV09XCJjLmNvdW50XCIgW21hdEJhZGdlSGlkZGVuXT1cIiFjLmNvdW50XCIgbWF0QmFkZ2VTaXplPVwibWVkaXVtXCIgbWF0QmFkZ2VDb2xvcj1cImFjY2VudFwiIG1hdEJhZGdlUG9zaXRpb249XCJiZWZvcmVcIiBtYXRCYWRnZU92ZXJsYXA9XCJmYWxzZVwiPm1vcmVfdmVydDwvbWF0LWljb24+XHJcbiAgICA8L2J1dHRvbj5cclxuICAgIDxtYXQtbWVudSAjbWVudT5cclxuICAgICAgPGJ1dHRvbiBtYXQtbWVudS1pdGVtIChjbGljayk9XCJmb3JnZXQoYylcIj57eydGb3JnZXQnfHRyYW5zbGF0ZX19PC9idXR0b24+XHJcbiAgICA8L21hdC1tZW51PlxyXG4gIDwvbWF0LWxpc3QtaXRlbT5cclxuPC9tYXQtbmF2LWxpc3Q+XHJcbiJdfQ==
@@ -15,9 +15,9 @@ export class ContactsPaneComponent {
15
15
  });
16
16
  }
17
17
  }
18
- ContactsPaneComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.0.1", ngImport: i0, type: ContactsPaneComponent, deps: [{ token: i1.PaneRef }, { token: i2.TranslateService }, { token: i3.PanesRouter }], target: i0.ɵɵFactoryTarget.Component });
19
- ContactsPaneComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.0.1", type: ContactsPaneComponent, selector: "ng-component", host: { classAttribute: "pane" }, ngImport: i0, template: `<bizdoc-contacts (selected)="selected($event)"></bizdoc-contacts>`, isInline: true, dependencies: [{ kind: "component", type: i4.ContactsComponent, selector: "bizdoc-contacts", outputs: ["selected"] }] });
20
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.0.1", ngImport: i0, type: ContactsPaneComponent, decorators: [{
18
+ ContactsPaneComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.0.4", ngImport: i0, type: ContactsPaneComponent, deps: [{ token: i1.PaneRef }, { token: i2.TranslateService }, { token: i3.PanesRouter }], target: i0.ɵɵFactoryTarget.Component });
19
+ ContactsPaneComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.0.4", type: ContactsPaneComponent, selector: "ng-component", host: { classAttribute: "pane" }, ngImport: i0, template: `<bizdoc-contacts (selected)="selected($event)"></bizdoc-contacts>`, isInline: true, dependencies: [{ kind: "component", type: i4.ContactsComponent, selector: "bizdoc-contacts", outputs: ["selected"] }] });
20
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.0.4", ngImport: i0, type: ContactsPaneComponent, decorators: [{
21
21
  type: Component,
22
22
  args: [{
23
23
  template: `<bizdoc-contacts (selected)="selected($event)"></bizdoc-contacts>`,
@@ -170,9 +170,9 @@ export class ConversationComponent {
170
170
  window.localStorage.setItem(this.contact.id, this._input.text);
171
171
  }
172
172
  }
173
- ConversationComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.0.1", ngImport: i0, type: ConversationComponent, deps: [{ token: BIZDOC_CONFIG }, { token: i1.ChatService }, { token: i2.HubService }, { token: i3.TranslateService }, { token: i4.AccountService }, { token: i5.PromptService }, { token: i0.ViewContainerRef }, { token: i6.Overlay }], target: i0.ɵɵFactoryTarget.Component });
174
- ConversationComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.0.1", type: ConversationComponent, selector: "bizdoc-chat-conversation", inputs: { contact: "contact" }, viewQueries: [{ propertyName: "_input", first: true, predicate: EditInputComponent, descendants: true, static: true }, { propertyName: "conversationElement", first: true, predicate: ["conversation"], descendants: true, read: ElementRef, static: true }, { propertyName: "previewTemplate", first: true, predicate: ["previewTemplate"], descendants: true }], usesOnChanges: true, ngImport: i0, template: "<div (wheel)=\"onScroll($event)\" class=\"chat-conversation\" #conversation>\r\n <bizdoc-none *ngIf=\"!items.length\" title=\"Chat\" icon=\"chat\"></bizdoc-none>\r\n\r\n <ng-container *ngFor=\"let item of items; let i = index; trackBy: trackBy\">\r\n <div class=\"chat-item\" [class.you]=\"item.userId!==contact.id\">\r\n <div class=\"chat-text\" [innerHTML]=\"item.text|taggingHtml:item.resource\"></div>\r\n <img *ngIf=\"item.image\" [src]=\"'data:image/png;base64,'+item.image\" alt=\"\" (click)=\"preview(item)\" />\r\n <div class=\"chat-info\" *ngIf=\"(i===items.length - 1)||item.userId!==items[i+1].userId\">\r\n <small>\r\n <bizdoc-identity-name [identity]=\"item.userId\" chating=\"none\">\r\n </bizdoc-identity-name>\r\n </small>\r\n <span class=\"divider\"></span>\r\n <small class=\"chat-time\" [bizdocTooltip]=\"item.time | amDateFormat: 'lll'\">{{item.time | amCalendar : null : CALENDAR_SPEC }}</small>\r\n </div>\r\n </div>\r\n <div class=\"chat-watermark\" *ngIf=\"watermark && ((i<items.length - 1 && items[i+1].time>watermark&&item.time<=watermark)||(i===items.length - 1 &&item.time<=watermark))\">\r\n <mat-icon [bizdocTooltip]=\"'Watched' | translate : (watermark | amTimeAgo)\">done_all</mat-icon>\r\n </div>\r\n </ng-container>\r\n</div>\r\n<div class=\"chat-typing\" [style.visibility]=\"typing ? 'visible':'hidden'\" [innerHTML]=\"(profile?.gender === 'Male' ? 'TypingMale' : profile?.gender === 'Female' ? 'TypingFemale' : 'Typing') | translate : (profile?.nick || profile?.name)\"></div>\r\n\r\n<bizdoc-edit-text (ok)=\"send($event)\" (focus)=\"onFocus()\"\r\n (focusout)=\"onBlur()\" [disabled]=\"sending\" (change)=\"_textChange.next()\"></bizdoc-edit-text>\r\n<ng-template #previewTemplate let-item=\"item\">\r\n <img [src]=\"'data:image/png;base64,'+item.image\" alt=\"\" />\r\n</ng-template>\r\n", styles: [":host{display:flex;flex-direction:column;flex:1 auto;overflow-y:auto}.chat-conversation{flex:1 1 auto;overflow-y:auto;overflow-x:hidden;padding:0 4px}\n"], dependencies: [{ kind: "directive", type: i7.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i7.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: i8.MatIcon, selector: "mat-icon", inputs: ["color", "inline", "svgIcon", "fontSet", "fontIcon"], exportAs: ["matIcon"] }, { kind: "component", type: i9.IdentityName, selector: "bizdoc-identity-name", inputs: ["identity", "by", "chating"] }, { kind: "component", type: i10.EditInputComponent, selector: "bizdoc-edit-text", inputs: ["placeholder", "text", "image", "resource", "disabled", "autofocus", "cache"], outputs: ["change", "ok", "focus", "blur"] }, { kind: "component", type: i11.NoneComponent, selector: "bizdoc-none", inputs: ["title", "subtitle", "icon"] }, { kind: "directive", type: i12.TooltipDirective, selector: "[bizdocTooltip]", inputs: ["bizdocTooltip", "bizdocTooltipTemplate", "bizdocTooltipContext", "bizdocTooltipPosition", "bizdocTooltipDuration", "bizdocTooltipDisabled"] }, { kind: "pipe", type: i13.DateFormatPipe, name: "amDateFormat" }, { kind: "pipe", type: i14.CalendarPipe, name: "amCalendar" }, { kind: "pipe", type: i15.TimeAgoPipe, name: "amTimeAgo" }, { kind: "pipe", type: i16.TranslatePipe, name: "translate" }, { kind: "pipe", type: i17.TaggingPipe, name: "taggingHtml" }] });
175
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.0.1", ngImport: i0, type: ConversationComponent, decorators: [{
173
+ ConversationComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.0.4", ngImport: i0, type: ConversationComponent, deps: [{ token: BIZDOC_CONFIG }, { token: i1.ChatService }, { token: i2.HubService }, { token: i3.TranslateService }, { token: i4.AccountService }, { token: i5.PromptService }, { token: i0.ViewContainerRef }, { token: i6.Overlay }], target: i0.ɵɵFactoryTarget.Component });
174
+ ConversationComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.0.4", type: ConversationComponent, selector: "bizdoc-chat-conversation", inputs: { contact: "contact" }, viewQueries: [{ propertyName: "_input", first: true, predicate: EditInputComponent, descendants: true, static: true }, { propertyName: "conversationElement", first: true, predicate: ["conversation"], descendants: true, read: ElementRef, static: true }, { propertyName: "previewTemplate", first: true, predicate: ["previewTemplate"], descendants: true }], usesOnChanges: true, ngImport: i0, template: "<div (wheel)=\"onScroll($event)\" class=\"chat-conversation\" #conversation>\r\n <bizdoc-none *ngIf=\"!items.length\" title=\"Chat\" icon=\"chat\"></bizdoc-none>\r\n\r\n <ng-container *ngFor=\"let item of items; let i = index; trackBy: trackBy\">\r\n <div class=\"chat-item\" [class.you]=\"item.userId!==contact.id\">\r\n <div class=\"chat-text\" [innerHTML]=\"item.text|taggingHtml:item.resource\"></div>\r\n <img *ngIf=\"item.image\" [src]=\"'data:image/png;base64,'+item.image\" alt=\"\" (click)=\"preview(item)\" />\r\n <div class=\"chat-info\" *ngIf=\"(i===items.length - 1)||item.userId!==items[i+1].userId\">\r\n <small>\r\n <bizdoc-identity-name [identity]=\"item.userId\" chating=\"none\">\r\n </bizdoc-identity-name>\r\n </small>\r\n <span class=\"divider\"></span>\r\n <small class=\"chat-time\" [bizdocTooltip]=\"item.time | amDateFormat: 'lll'\">{{item.time | amCalendar : null : CALENDAR_SPEC }}</small>\r\n </div>\r\n </div>\r\n <div class=\"chat-watermark\" *ngIf=\"watermark && ((i<items.length - 1 && items[i+1].time>watermark&&item.time<=watermark)||(i===items.length - 1 &&item.time<=watermark))\">\r\n <mat-icon [bizdocTooltip]=\"'Watched' | translate : (watermark | amTimeAgo)\">done_all</mat-icon>\r\n </div>\r\n </ng-container>\r\n</div>\r\n<div class=\"chat-typing\" [style.visibility]=\"typing ? 'visible':'hidden'\" [innerHTML]=\"(profile?.gender === 'Male' ? 'TypingMale' : profile?.gender === 'Female' ? 'TypingFemale' : 'Typing') | translate : (profile?.nick || profile?.name)\"></div>\r\n\r\n<bizdoc-edit-text (ok)=\"send($event)\" (focus)=\"onFocus()\"\r\n (focusout)=\"onBlur()\" [disabled]=\"sending\" (change)=\"_textChange.next()\"></bizdoc-edit-text>\r\n<ng-template #previewTemplate let-item=\"item\">\r\n <img [src]=\"'data:image/png;base64,'+item.image\" alt=\"\" />\r\n</ng-template>\r\n", styles: [":host{display:flex;flex-direction:column;flex:1 auto;overflow-y:auto}.chat-conversation{flex:1 1 auto;overflow-y:auto;overflow-x:hidden;padding:0 4px}\n"], dependencies: [{ kind: "directive", type: i7.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i7.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: i8.MatIcon, selector: "mat-icon", inputs: ["color", "inline", "svgIcon", "fontSet", "fontIcon"], exportAs: ["matIcon"] }, { kind: "component", type: i9.IdentityName, selector: "bizdoc-identity-name", inputs: ["identity", "by", "chating"] }, { kind: "component", type: i10.EditInputComponent, selector: "bizdoc-edit-text", inputs: ["placeholder", "text", "image", "resource", "disabled", "autofocus", "cache"], outputs: ["change", "ok", "focus", "blur"] }, { kind: "component", type: i11.NoneComponent, selector: "bizdoc-none", inputs: ["title", "subtitle", "icon"] }, { kind: "directive", type: i12.TooltipDirective, selector: "[bizdocTooltip]", inputs: ["bizdocTooltip", "bizdocTooltipTemplate", "bizdocTooltipContext", "bizdocTooltipPosition", "bizdocTooltipDuration", "bizdocTooltipDisabled"] }, { kind: "pipe", type: i13.DateFormatPipe, name: "amDateFormat" }, { kind: "pipe", type: i14.CalendarPipe, name: "amCalendar" }, { kind: "pipe", type: i15.TimeAgoPipe, name: "amTimeAgo" }, { kind: "pipe", type: i16.TranslatePipe, name: "translate" }, { kind: "pipe", type: i17.TaggingPipe, name: "taggingHtml" }] });
175
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.0.4", ngImport: i0, type: ConversationComponent, decorators: [{
176
176
  type: Component,
177
177
  args: [{ selector: 'bizdoc-chat-conversation', template: "<div (wheel)=\"onScroll($event)\" class=\"chat-conversation\" #conversation>\r\n <bizdoc-none *ngIf=\"!items.length\" title=\"Chat\" icon=\"chat\"></bizdoc-none>\r\n\r\n <ng-container *ngFor=\"let item of items; let i = index; trackBy: trackBy\">\r\n <div class=\"chat-item\" [class.you]=\"item.userId!==contact.id\">\r\n <div class=\"chat-text\" [innerHTML]=\"item.text|taggingHtml:item.resource\"></div>\r\n <img *ngIf=\"item.image\" [src]=\"'data:image/png;base64,'+item.image\" alt=\"\" (click)=\"preview(item)\" />\r\n <div class=\"chat-info\" *ngIf=\"(i===items.length - 1)||item.userId!==items[i+1].userId\">\r\n <small>\r\n <bizdoc-identity-name [identity]=\"item.userId\" chating=\"none\">\r\n </bizdoc-identity-name>\r\n </small>\r\n <span class=\"divider\"></span>\r\n <small class=\"chat-time\" [bizdocTooltip]=\"item.time | amDateFormat: 'lll'\">{{item.time | amCalendar : null : CALENDAR_SPEC }}</small>\r\n </div>\r\n </div>\r\n <div class=\"chat-watermark\" *ngIf=\"watermark && ((i<items.length - 1 && items[i+1].time>watermark&&item.time<=watermark)||(i===items.length - 1 &&item.time<=watermark))\">\r\n <mat-icon [bizdocTooltip]=\"'Watched' | translate : (watermark | amTimeAgo)\">done_all</mat-icon>\r\n </div>\r\n </ng-container>\r\n</div>\r\n<div class=\"chat-typing\" [style.visibility]=\"typing ? 'visible':'hidden'\" [innerHTML]=\"(profile?.gender === 'Male' ? 'TypingMale' : profile?.gender === 'Female' ? 'TypingFemale' : 'Typing') | translate : (profile?.nick || profile?.name)\"></div>\r\n\r\n<bizdoc-edit-text (ok)=\"send($event)\" (focus)=\"onFocus()\"\r\n (focusout)=\"onBlur()\" [disabled]=\"sending\" (change)=\"_textChange.next()\"></bizdoc-edit-text>\r\n<ng-template #previewTemplate let-item=\"item\">\r\n <img [src]=\"'data:image/png;base64,'+item.image\" alt=\"\" />\r\n</ng-template>\r\n", styles: [":host{display:flex;flex-direction:column;flex:1 auto;overflow-y:auto}.chat-conversation{flex:1 1 auto;overflow-y:auto;overflow-x:hidden;padding:0 4px}\n"] }]
178
178
  }], ctorParameters: function () { return [{ type: undefined, decorators: [{
@@ -36,9 +36,9 @@ export class ConversationPaneComponent {
36
36
  this._destroy.complete();
37
37
  }
38
38
  }
39
- ConversationPaneComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.0.1", ngImport: i0, type: ConversationPaneComponent, deps: [{ token: i1.PaneRef }, { token: i2.TranslateService }, { token: i3.AccountService }, { token: i4.ChatService }, { token: i5.SessionService }], target: i0.ɵɵFactoryTarget.Component });
40
- ConversationPaneComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.0.1", type: ConversationPaneComponent, selector: "ng-component", host: { classAttribute: "pane" }, ngImport: i0, template: '<bizdoc-chat-conversation [contact]=contact></bizdoc-chat-conversation>', isInline: true, styles: [":host{min-width:320px}\n"], dependencies: [{ kind: "component", type: i6.ConversationComponent, selector: "bizdoc-chat-conversation", inputs: ["contact"] }] });
41
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.0.1", ngImport: i0, type: ConversationPaneComponent, decorators: [{
39
+ ConversationPaneComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.0.4", ngImport: i0, type: ConversationPaneComponent, deps: [{ token: i1.PaneRef }, { token: i2.TranslateService }, { token: i3.AccountService }, { token: i4.ChatService }, { token: i5.SessionService }], target: i0.ɵɵFactoryTarget.Component });
40
+ ConversationPaneComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.0.4", type: ConversationPaneComponent, selector: "ng-component", host: { classAttribute: "pane" }, ngImport: i0, template: '<bizdoc-chat-conversation [contact]=contact></bizdoc-chat-conversation>', isInline: true, styles: [":host{min-width:320px}\n"], dependencies: [{ kind: "component", type: i6.ConversationComponent, selector: "bizdoc-chat-conversation", inputs: ["contact"] }] });
41
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.0.4", ngImport: i0, type: ConversationPaneComponent, decorators: [{
42
42
  type: Component,
43
43
  args: [{ template: '<bizdoc-chat-conversation [contact]=contact></bizdoc-chat-conversation>', host: {
44
44
  class: 'pane'
@@ -68,9 +68,9 @@ export class ActionPicker extends ActionBase {
68
68
  });
69
69
  }
70
70
  }
71
- ActionPicker.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.0.1", ngImport: i0, type: ActionPicker, deps: [{ token: DOCUMENT_MODEL }, { token: i1.SessionService }, { token: i2.MailboxService }, { token: i3.MatDialog }, { token: i4.AccountService }, { token: i5.TranslateService }, { token: i6.PromptService }], target: i0.ɵɵFactoryTarget.Component });
72
- ActionPicker.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.0.1", type: ActionPicker, selector: "bizdoc-action-picker", inputs: { working: "working" }, outputs: { workingChange: "workingChange" }, usesInheritance: true, usesOnChanges: true, ngImport: i0, template: "<ng-container *ngIf=\"actions.length\">\r\n <button mat-raised-button color=\"primary\" [attr.data-help]=\"'action-'+actions[0].name\" (click)=\"send(actions[0])\" [disabled]=\"working\">\r\n <span>{{actions[0].title}}</span>\r\n </button>\r\n &nbsp;\r\n <ng-container [ngSwitch]=\"actions.length\">\r\n <button mat-stroked-button [attr.data-help]=\"'action-'+actions[1].name\" *ngSwitchCase=\"2\" [disabled]=\"working\" (click)=\"send(actions[1])\">\r\n <span>{{actions[1].title}}</span>\r\n </button>\r\n <ng-container *ngSwitchDefault>\r\n <button mat-stroked-button data-help=\"send\" [matMenuTriggerFor]=\"actionMenu\" [disabled]=\"working\" [bizdocTooltip]=\"'Send' | translate\">\r\n <span>{{'Actions' | translate}}</span> <mat-icon>arrow_drop_down</mat-icon>\r\n </button>\r\n <!-- action -->\r\n <mat-menu #actionMenu>\r\n <ng-template matMenuContent>\r\n <ng-container *ngFor=\"let a of actions.slice(1); let i = index\">\r\n <mat-divider *ngIf=\"i > 1 && actions[i - 1].group !== a.group\"></mat-divider>\r\n <button mat-menu-item (click)=\"send(a)\">{{a.title}}</button>\r\n </ng-container>\r\n </ng-template>\r\n </mat-menu>\r\n </ng-container>\r\n </ng-container>\r\n</ng-container>\r\n", styles: [":host{display:flex;flex-direction:row}\n"], dependencies: [{ kind: "directive", type: i7.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i7.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i7.NgSwitch, selector: "[ngSwitch]", inputs: ["ngSwitch"] }, { kind: "directive", type: i7.NgSwitchCase, selector: "[ngSwitchCase]", inputs: ["ngSwitchCase"] }, { kind: "directive", type: i7.NgSwitchDefault, selector: "[ngSwitchDefault]" }, { kind: "component", type: i8.MatDivider, selector: "mat-divider", inputs: ["vertical", "inset"] }, { kind: "component", type: i9.MatButton, selector: " button[mat-button], button[mat-raised-button], button[mat-flat-button], button[mat-stroked-button] ", inputs: ["disabled", "disableRipple", "color"], exportAs: ["matButton"] }, { kind: "component", type: i10.MatIcon, selector: "mat-icon", inputs: ["color", "inline", "svgIcon", "fontSet", "fontIcon"], exportAs: ["matIcon"] }, { kind: "component", type: i11.MatMenu, selector: "mat-menu", exportAs: ["matMenu"] }, { kind: "component", type: i11.MatMenuItem, selector: "[mat-menu-item]", inputs: ["disabled", "disableRipple", "role"], exportAs: ["matMenuItem"] }, { kind: "directive", type: i11.MatMenuContent, selector: "ng-template[matMenuContent]" }, { kind: "directive", type: i11.MatMenuTrigger, selector: "[mat-menu-trigger-for], [matMenuTriggerFor]", exportAs: ["matMenuTrigger"] }, { kind: "directive", type: i12.TooltipDirective, selector: "[bizdocTooltip]", inputs: ["bizdocTooltip", "bizdocTooltipTemplate", "bizdocTooltipContext", "bizdocTooltipPosition", "bizdocTooltipDuration", "bizdocTooltipDisabled"] }, { kind: "pipe", type: i13.TranslatePipe, name: "translate" }] });
73
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.0.1", ngImport: i0, type: ActionPicker, decorators: [{
71
+ ActionPicker.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.0.4", ngImport: i0, type: ActionPicker, deps: [{ token: DOCUMENT_MODEL }, { token: i1.SessionService }, { token: i2.MailboxService }, { token: i3.MatDialog }, { token: i4.AccountService }, { token: i5.TranslateService }, { token: i6.PromptService }], target: i0.ɵɵFactoryTarget.Component });
72
+ ActionPicker.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.0.4", type: ActionPicker, selector: "bizdoc-action-picker", inputs: { working: "working" }, outputs: { workingChange: "workingChange" }, usesInheritance: true, usesOnChanges: true, ngImport: i0, template: "<ng-container *ngIf=\"actions.length\">\r\n <button mat-raised-button color=\"primary\" [attr.data-help]=\"'action-'+actions[0].name\" (click)=\"send(actions[0])\" [disabled]=\"working\">\r\n <span>{{actions[0].title}}</span>\r\n </button>\r\n &nbsp;\r\n <ng-container [ngSwitch]=\"actions.length\">\r\n <button mat-stroked-button [attr.data-help]=\"'action-'+actions[1].name\" *ngSwitchCase=\"2\" [disabled]=\"working\" (click)=\"send(actions[1])\">\r\n <span>{{actions[1].title}}</span>\r\n </button>\r\n <ng-container *ngSwitchDefault>\r\n <button mat-stroked-button data-help=\"send\" [matMenuTriggerFor]=\"actionMenu\" [disabled]=\"working\" [bizdocTooltip]=\"'Send' | translate\">\r\n <span>{{'Actions' | translate}}</span> <mat-icon>arrow_drop_down</mat-icon>\r\n </button>\r\n <!-- action -->\r\n <mat-menu #actionMenu>\r\n <ng-template matMenuContent>\r\n <ng-container *ngFor=\"let a of actions.slice(1); let i = index\">\r\n <mat-divider *ngIf=\"i > 1 && actions[i - 1].group !== a.group\"></mat-divider>\r\n <button mat-menu-item (click)=\"send(a)\">{{a.title}}</button>\r\n </ng-container>\r\n </ng-template>\r\n </mat-menu>\r\n </ng-container>\r\n </ng-container>\r\n</ng-container>\r\n", styles: [":host{display:flex;flex-direction:row}\n"], dependencies: [{ kind: "directive", type: i7.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i7.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i7.NgSwitch, selector: "[ngSwitch]", inputs: ["ngSwitch"] }, { kind: "directive", type: i7.NgSwitchCase, selector: "[ngSwitchCase]", inputs: ["ngSwitchCase"] }, { kind: "directive", type: i7.NgSwitchDefault, selector: "[ngSwitchDefault]" }, { kind: "component", type: i8.MatDivider, selector: "mat-divider", inputs: ["vertical", "inset"] }, { kind: "component", type: i9.MatButton, selector: " button[mat-button], button[mat-raised-button], button[mat-flat-button], button[mat-stroked-button] ", inputs: ["disabled", "disableRipple", "color"], exportAs: ["matButton"] }, { kind: "component", type: i10.MatIcon, selector: "mat-icon", inputs: ["color", "inline", "svgIcon", "fontSet", "fontIcon"], exportAs: ["matIcon"] }, { kind: "component", type: i11.MatMenu, selector: "mat-menu", exportAs: ["matMenu"] }, { kind: "component", type: i11.MatMenuItem, selector: "[mat-menu-item]", inputs: ["disabled", "disableRipple", "role"], exportAs: ["matMenuItem"] }, { kind: "directive", type: i11.MatMenuContent, selector: "ng-template[matMenuContent]" }, { kind: "directive", type: i11.MatMenuTrigger, selector: "[mat-menu-trigger-for], [matMenuTriggerFor]", exportAs: ["matMenuTrigger"] }, { kind: "directive", type: i12.TooltipDirective, selector: "[bizdocTooltip]", inputs: ["bizdocTooltip", "bizdocTooltipTemplate", "bizdocTooltipContext", "bizdocTooltipPosition", "bizdocTooltipDuration", "bizdocTooltipDisabled"] }, { kind: "pipe", type: i13.TranslatePipe, name: "translate" }] });
73
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.0.4", ngImport: i0, type: ActionPicker, decorators: [{
74
74
  type: Component,
75
75
  args: [{ selector: 'bizdoc-action-picker', template: "<ng-container *ngIf=\"actions.length\">\r\n <button mat-raised-button color=\"primary\" [attr.data-help]=\"'action-'+actions[0].name\" (click)=\"send(actions[0])\" [disabled]=\"working\">\r\n <span>{{actions[0].title}}</span>\r\n </button>\r\n &nbsp;\r\n <ng-container [ngSwitch]=\"actions.length\">\r\n <button mat-stroked-button [attr.data-help]=\"'action-'+actions[1].name\" *ngSwitchCase=\"2\" [disabled]=\"working\" (click)=\"send(actions[1])\">\r\n <span>{{actions[1].title}}</span>\r\n </button>\r\n <ng-container *ngSwitchDefault>\r\n <button mat-stroked-button data-help=\"send\" [matMenuTriggerFor]=\"actionMenu\" [disabled]=\"working\" [bizdocTooltip]=\"'Send' | translate\">\r\n <span>{{'Actions' | translate}}</span> <mat-icon>arrow_drop_down</mat-icon>\r\n </button>\r\n <!-- action -->\r\n <mat-menu #actionMenu>\r\n <ng-template matMenuContent>\r\n <ng-container *ngFor=\"let a of actions.slice(1); let i = index\">\r\n <mat-divider *ngIf=\"i > 1 && actions[i - 1].group !== a.group\"></mat-divider>\r\n <button mat-menu-item (click)=\"send(a)\">{{a.title}}</button>\r\n </ng-container>\r\n </ng-template>\r\n </mat-menu>\r\n </ng-container>\r\n </ng-container>\r\n</ng-container>\r\n", styles: [":host{display:flex;flex-direction:row}\n"] }]
76
76
  }], ctorParameters: function () { return [{ type: undefined, decorators: [{
@@ -45,9 +45,9 @@ export class ActionDialog {
45
45
  this._destroy.complete();
46
46
  }
47
47
  }
48
- ActionDialog.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.0.1", ngImport: i0, type: ActionDialog, deps: [{ token: MAT_DIALOG_DATA }, { token: i1.SessionService }, { token: i2.BizDocComponentFactoryResolver }], target: i0.ɵɵFactoryTarget.Component });
49
- ActionDialog.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.0.1", type: ActionDialog, selector: "ng-component", viewQueries: [{ propertyName: "container", first: true, predicate: ["container"], descendants: true, read: ViewContainerRef }], ngImport: i0, template: "<h2 mat-dialog-title>{{action.title}}</h2>\r\n<mat-dialog-content class=\"column\">\r\n <p *ngIf=\"!action.arguments.length\">\r\n {{ 'ActionAsk' | translate : (action.verb || action.title).toLowerCase() }}\r\n </p>\r\n <bizdoc-layout [fields]=\"action.arguments\"\r\n *ngIf=\"!action.template; else template\"\r\n [(model)]=\"arguments\"\r\n [(valid)]=\"valid\"></bizdoc-layout>\r\n</mat-dialog-content>\r\n<mat-dialog-actions>\r\n <button mat-button type=\"submit\" [disabled]=\"!valid\" [mat-dialog-close]=\"arguments\" color=\"primary\">{{'OK'|translate}}</button>\r\n <button mat-button mat-dialog-close>{{'Cancel' | translate}}</button>\r\n</mat-dialog-actions>\r\n<ng-template #template>\r\n <ngx-component-outlet [type]=\"comp\" [injector]=\"injector\" (create)=\"bind($event)\"></ngx-component-outlet>\r\n</ng-template>\r\n", styles: [":host ::ng-deep form{display:flex}\n"], dependencies: [{ kind: "directive", type: i3.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i4.MatDialogClose, selector: "[mat-dialog-close], [matDialogClose]", inputs: ["aria-label", "type", "mat-dialog-close", "matDialogClose"], exportAs: ["matDialogClose"] }, { kind: "directive", type: i4.MatDialogTitle, selector: "[mat-dialog-title], [matDialogTitle]", inputs: ["id"], exportAs: ["matDialogTitle"] }, { kind: "directive", type: i4.MatDialogContent, selector: "[mat-dialog-content], mat-dialog-content, [matDialogContent]" }, { kind: "directive", type: i4.MatDialogActions, selector: "[mat-dialog-actions], mat-dialog-actions, [matDialogActions]", inputs: ["align"] }, { kind: "component", type: i5.MatButton, selector: " button[mat-button], button[mat-raised-button], button[mat-flat-button], button[mat-stroked-button] ", inputs: ["disabled", "disableRipple", "color"], exportAs: ["matButton"] }, { kind: "component", type: i6.LayoutComponent, selector: "bizdoc-layout", inputs: ["fields", "model", "dirty", "params", "valid"], outputs: ["modelChange", "dirtyChange", "validChange"] }, { kind: "directive", type: i7.NgxComponentOutlet, selector: "ngx-component-outlet", inputs: ["type", "injector", "ngxComponentOutletContent"], outputs: ["create"] }, { kind: "pipe", type: i8.TranslatePipe, name: "translate" }] });
50
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.0.1", ngImport: i0, type: ActionDialog, decorators: [{
48
+ ActionDialog.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.0.4", ngImport: i0, type: ActionDialog, deps: [{ token: MAT_DIALOG_DATA }, { token: i1.SessionService }, { token: i2.BizDocComponentFactoryResolver }], target: i0.ɵɵFactoryTarget.Component });
49
+ ActionDialog.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.0.4", type: ActionDialog, selector: "ng-component", viewQueries: [{ propertyName: "container", first: true, predicate: ["container"], descendants: true, read: ViewContainerRef }], ngImport: i0, template: "<h2 mat-dialog-title>{{action.title}}</h2>\r\n<mat-dialog-content class=\"column\">\r\n <p *ngIf=\"!action.arguments.length\">\r\n {{ 'ActionAsk' | translate : (action.verb || action.title).toLowerCase() }}\r\n </p>\r\n <bizdoc-layout [fields]=\"action.arguments\"\r\n *ngIf=\"!action.template; else template\"\r\n [(model)]=\"arguments\"\r\n [(valid)]=\"valid\"></bizdoc-layout>\r\n</mat-dialog-content>\r\n<mat-dialog-actions>\r\n <button mat-button type=\"submit\" [disabled]=\"!valid\" [mat-dialog-close]=\"arguments\" color=\"primary\">{{'OK'|translate}}</button>\r\n <button mat-button mat-dialog-close>{{'Cancel' | translate}}</button>\r\n</mat-dialog-actions>\r\n<ng-template #template>\r\n <ngx-component-outlet [type]=\"comp\" [injector]=\"injector\" (create)=\"bind($event)\"></ngx-component-outlet>\r\n</ng-template>\r\n", styles: [":host ::ng-deep form{display:flex}\n"], dependencies: [{ kind: "directive", type: i3.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i4.MatDialogClose, selector: "[mat-dialog-close], [matDialogClose]", inputs: ["aria-label", "type", "mat-dialog-close", "matDialogClose"], exportAs: ["matDialogClose"] }, { kind: "directive", type: i4.MatDialogTitle, selector: "[mat-dialog-title], [matDialogTitle]", inputs: ["id"], exportAs: ["matDialogTitle"] }, { kind: "directive", type: i4.MatDialogContent, selector: "[mat-dialog-content], mat-dialog-content, [matDialogContent]" }, { kind: "directive", type: i4.MatDialogActions, selector: "[mat-dialog-actions], mat-dialog-actions, [matDialogActions]", inputs: ["align"] }, { kind: "component", type: i5.MatButton, selector: " button[mat-button], button[mat-raised-button], button[mat-flat-button], button[mat-stroked-button] ", inputs: ["disabled", "disableRipple", "color"], exportAs: ["matButton"] }, { kind: "component", type: i6.LayoutComponent, selector: "bizdoc-layout", inputs: ["fields", "model", "dirty", "params", "valid"], outputs: ["modelChange", "dirtyChange", "validChange"] }, { kind: "directive", type: i7.NgxComponentOutlet, selector: "ngx-component-outlet", inputs: ["type", "injector", "ngxComponentOutletContent"], outputs: ["create"] }, { kind: "pipe", type: i8.TranslatePipe, name: "translate" }] });
50
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.0.4", ngImport: i0, type: ActionDialog, decorators: [{
51
51
  type: Component,
52
52
  args: [{ template: "<h2 mat-dialog-title>{{action.title}}</h2>\r\n<mat-dialog-content class=\"column\">\r\n <p *ngIf=\"!action.arguments.length\">\r\n {{ 'ActionAsk' | translate : (action.verb || action.title).toLowerCase() }}\r\n </p>\r\n <bizdoc-layout [fields]=\"action.arguments\"\r\n *ngIf=\"!action.template; else template\"\r\n [(model)]=\"arguments\"\r\n [(valid)]=\"valid\"></bizdoc-layout>\r\n</mat-dialog-content>\r\n<mat-dialog-actions>\r\n <button mat-button type=\"submit\" [disabled]=\"!valid\" [mat-dialog-close]=\"arguments\" color=\"primary\">{{'OK'|translate}}</button>\r\n <button mat-button mat-dialog-close>{{'Cancel' | translate}}</button>\r\n</mat-dialog-actions>\r\n<ng-template #template>\r\n <ngx-component-outlet [type]=\"comp\" [injector]=\"injector\" (create)=\"bind($event)\"></ngx-component-outlet>\r\n</ng-template>\r\n", styles: [":host ::ng-deep form{display:flex}\n"] }]
53
53
  }], ctorParameters: function () { return [{ type: undefined, decorators: [{
@@ -59,9 +59,9 @@ export class ActionPaneComponent extends ActionBase {
59
59
  this._destroy.complete();
60
60
  }
61
61
  }
62
- ActionPaneComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.0.1", ngImport: i0, type: ActionPaneComponent, deps: [{ token: i1.PaneRef }, { token: i2.MailboxService }, { token: i3.BizDocComponentFactoryResolver }, { token: i0.ComponentFactoryResolver }, { token: i4.AccountService }, { token: i5.PromptService }, { token: i6.TranslateService }, { token: i7.SessionService }], target: i0.ɵɵFactoryTarget.Component });
63
- ActionPaneComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.0.1", type: ActionPaneComponent, selector: "bizdoc-action-dialog.pane", host: { classAttribute: "pane" }, viewQueries: [{ propertyName: "container", first: true, predicate: ["container"], descendants: true }], usesInheritance: true, ngImport: i0, template: "<h2 mat-dialog-title>{{action.title}}</h2>\r\n<mat-dialog-content>\r\n <p *ngIf=\"!action.arguments.length\">\r\n {{ 'ActionAsk' | translate : (action.verb || action.title).toLowerCase() }}\r\n </p>\r\n <ng-container #container>\r\n </ng-container>\r\n</mat-dialog-content>\r\n<mat-dialog-actions>\r\n <button mat-button type=\"submit\" [disabled]=\"!valid\" (click)=\"ok()\" color=\"primary\">{{'Yes'|translate}}</button>\r\n <button mat-button (click)='close()'>{{'No' | translate}}</button>\r\n</mat-dialog-actions>\r\n", styles: [":host ::ng-deep form{display:flex}\n"], dependencies: [{ kind: "directive", type: i8.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i9.MatDialogTitle, selector: "[mat-dialog-title], [matDialogTitle]", inputs: ["id"], exportAs: ["matDialogTitle"] }, { kind: "directive", type: i9.MatDialogContent, selector: "[mat-dialog-content], mat-dialog-content, [matDialogContent]" }, { kind: "directive", type: i9.MatDialogActions, selector: "[mat-dialog-actions], mat-dialog-actions, [matDialogActions]", inputs: ["align"] }, { kind: "component", type: i10.MatButton, selector: " button[mat-button], button[mat-raised-button], button[mat-flat-button], button[mat-stroked-button] ", inputs: ["disabled", "disableRipple", "color"], exportAs: ["matButton"] }, { kind: "pipe", type: i11.TranslatePipe, name: "translate" }] });
64
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.0.1", ngImport: i0, type: ActionPaneComponent, decorators: [{
62
+ ActionPaneComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.0.4", ngImport: i0, type: ActionPaneComponent, deps: [{ token: i1.PaneRef }, { token: i2.MailboxService }, { token: i3.BizDocComponentFactoryResolver }, { token: i0.ComponentFactoryResolver }, { token: i4.AccountService }, { token: i5.PromptService }, { token: i6.TranslateService }, { token: i7.SessionService }], target: i0.ɵɵFactoryTarget.Component });
63
+ ActionPaneComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.0.4", type: ActionPaneComponent, selector: "bizdoc-action-dialog.pane", host: { classAttribute: "pane" }, viewQueries: [{ propertyName: "container", first: true, predicate: ["container"], descendants: true }], usesInheritance: true, ngImport: i0, template: "<h2 mat-dialog-title>{{action.title}}</h2>\r\n<mat-dialog-content>\r\n <p *ngIf=\"!action.arguments.length\">\r\n {{ 'ActionAsk' | translate : (action.verb || action.title).toLowerCase() }}\r\n </p>\r\n <ng-container #container>\r\n </ng-container>\r\n</mat-dialog-content>\r\n<mat-dialog-actions>\r\n <button mat-button type=\"submit\" [disabled]=\"!valid\" (click)=\"ok()\" color=\"primary\">{{'Yes'|translate}}</button>\r\n <button mat-button (click)='close()'>{{'No' | translate}}</button>\r\n</mat-dialog-actions>\r\n", styles: [":host ::ng-deep form{display:flex}\n"], dependencies: [{ kind: "directive", type: i8.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i9.MatDialogTitle, selector: "[mat-dialog-title], [matDialogTitle]", inputs: ["id"], exportAs: ["matDialogTitle"] }, { kind: "directive", type: i9.MatDialogContent, selector: "[mat-dialog-content], mat-dialog-content, [matDialogContent]" }, { kind: "directive", type: i9.MatDialogActions, selector: "[mat-dialog-actions], mat-dialog-actions, [matDialogActions]", inputs: ["align"] }, { kind: "component", type: i10.MatButton, selector: " button[mat-button], button[mat-raised-button], button[mat-flat-button], button[mat-stroked-button] ", inputs: ["disabled", "disableRipple", "color"], exportAs: ["matButton"] }, { kind: "pipe", type: i11.TranslatePipe, name: "translate" }] });
64
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.0.4", ngImport: i0, type: ActionPaneComponent, decorators: [{
65
65
  type: Component,
66
66
  args: [{ selector: 'bizdoc-action-dialog.pane', host: {
67
67
  class: 'pane'
@@ -59,15 +59,15 @@ let AssignActionComponent = class AssignActionComponent {
59
59
  this._destroy.complete();
60
60
  }
61
61
  };
62
- AssignActionComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.0.1", ngImport: i0, type: AssignActionComponent, deps: [{ token: i1.FormBuilder }, { token: i2.SessionService }, { token: i3.AccountService }], target: i0.ɵɵFactoryTarget.Component });
63
- AssignActionComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.0.1", type: AssignActionComponent, selector: "ng-component", viewQueries: [{ propertyName: "nameInput", first: true, predicate: ["nameInput"], descendants: true, read: ElementRef, static: true }], ngImport: i0, template: "<form autocomplete=\"off\" class=\"column\" [formGroup]=\"form\">\r\n <mat-form-field>\r\n <input required [placeholder]=\"'AssignTo'|translate\"\r\n [formControl]=userId\r\n cdkFocusInitial matInput\r\n [matAutocomplete]=\"auto\">\r\n <mat-autocomplete #auto=\"matAutocomplete\" (optionSelected)=\"userSelected($event)\" [displayWith]=\"displayWith\">\r\n <mat-option *ngFor=\"let u of users$ | async\" [value]=\"u\">\r\n {{u.name}}\r\n <span *ngIf=\"u.email\">&nbsp; - {{u.email}}</span>\r\n </mat-option>\r\n </mat-autocomplete>\r\n <mat-error *ngIf=\"form.controls.userIds.hasError('required')\">{{'Required'|translate:('AssignTo'|translate)}}</mat-error>\r\n </mat-form-field>\r\n <div>\r\n <mat-checkbox formControlName=fyi> {{ 'AssignFYI' | translate }}</mat-checkbox>\r\n &nbsp;\r\n<!-- <mat-checkbox formControlName=roundtrip> {{ 'AssignRoundtrip' | translate }}</mat-checkbox>-->\r\n </div>\r\n <mat-form-field>\r\n <textarea matInput cdkTextareaAutosize formControlName=\"note\" [placeholder]=\"'Note'|translate\" maxlength=\"200\">\r\n </textarea>\r\n <mat-hint align=\"end\">{{form.controls['note'].value?.length || 0}} / {{200}}</mat-hint>\r\n <mat-hint>{{'AssignNoteHint'| translate}}</mat-hint>\r\n </mat-form-field>\r\n</form>\r\n", dependencies: [{ kind: "directive", type: i4.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i4.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i1.ɵNgNoValidate, selector: "form:not([ngNoForm]):not([ngNativeValidate])" }, { kind: "directive", type: i1.DefaultValueAccessor, selector: "input:not([type=checkbox])[formControlName],textarea[formControlName],input:not([type=checkbox])[formControl],textarea[formControl],input:not([type=checkbox])[ngModel],textarea[ngModel],[ngDefaultControl]" }, { kind: "directive", type: i1.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i1.NgControlStatusGroup, selector: "[formGroupName],[formArrayName],[ngModelGroup],[formGroup],form:not([ngNoForm]),[ngForm]" }, { kind: "directive", type: i1.RequiredValidator, selector: ":not([type=checkbox])[required][formControlName],:not([type=checkbox])[required][formControl],:not([type=checkbox])[required][ngModel]", inputs: ["required"] }, { kind: "directive", type: i1.MaxLengthValidator, selector: "[maxlength][formControlName],[maxlength][formControl],[maxlength][ngModel]", inputs: ["maxlength"] }, { kind: "directive", type: i1.FormControlDirective, selector: "[formControl]", inputs: ["formControl", "disabled", "ngModel"], outputs: ["ngModelChange"], exportAs: ["ngForm"] }, { kind: "directive", type: i1.FormGroupDirective, selector: "[formGroup]", inputs: ["formGroup"], outputs: ["ngSubmit"], exportAs: ["ngForm"] }, { kind: "directive", type: i1.FormControlName, selector: "[formControlName]", inputs: ["formControlName", "disabled", "ngModel"], outputs: ["ngModelChange"] }, { kind: "component", type: i5.MatAutocomplete, selector: "mat-autocomplete", inputs: ["disableRipple"], exportAs: ["matAutocomplete"] }, { kind: "component", type: i6.MatOption, selector: "mat-option", exportAs: ["matOption"] }, { kind: "directive", type: i5.MatAutocompleteTrigger, selector: "input[matAutocomplete], textarea[matAutocomplete]", exportAs: ["matAutocompleteTrigger"] }, { kind: "component", type: i7.MatFormField, selector: "mat-form-field", inputs: ["hideRequiredMarker", "color", "floatLabel", "appearance", "subscriptSizing", "hintLabel"], exportAs: ["matFormField"] }, { kind: "directive", type: i7.MatHint, selector: "mat-hint", inputs: ["align", "id"] }, { kind: "directive", type: i7.MatError, selector: "mat-error, [matError]", inputs: ["id"] }, { kind: "component", type: i8.MatCheckbox, selector: "mat-checkbox", inputs: ["disableRipple", "color", "tabIndex"], exportAs: ["matCheckbox"] }, { kind: "directive", type: i9.MatInput, selector: "input[matInput], textarea[matInput], select[matNativeControl], input[matNativeControl], textarea[matNativeControl]", inputs: ["disabled", "id", "placeholder", "name", "required", "type", "errorStateMatcher", "aria-describedby", "value", "readonly"], exportAs: ["matInput"] }, { kind: "directive", type: i10.CdkTextareaAutosize, selector: "textarea[cdkTextareaAutosize]", inputs: ["cdkAutosizeMinRows", "cdkAutosizeMaxRows", "cdkTextareaAutosize", "placeholder"], exportAs: ["cdkTextareaAutosize"] }, { kind: "pipe", type: i4.AsyncPipe, name: "async" }, { kind: "pipe", type: i11.TranslatePipe, name: "translate" }] });
62
+ AssignActionComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.0.4", ngImport: i0, type: AssignActionComponent, deps: [{ token: i1.FormBuilder }, { token: i2.SessionService }, { token: i3.AccountService }], target: i0.ɵɵFactoryTarget.Component });
63
+ AssignActionComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.0.4", type: AssignActionComponent, selector: "ng-component", viewQueries: [{ propertyName: "nameInput", first: true, predicate: ["nameInput"], descendants: true, read: ElementRef, static: true }], ngImport: i0, template: "<form autocomplete=\"off\" class=\"column\" [formGroup]=\"form\">\r\n <mat-form-field>\r\n <input required [placeholder]=\"'AssignTo'|translate\"\r\n [formControl]=userId\r\n cdkFocusInitial matInput\r\n [matAutocomplete]=\"auto\">\r\n <mat-autocomplete #auto=\"matAutocomplete\" (optionSelected)=\"userSelected($event)\" [displayWith]=\"displayWith\">\r\n <mat-option *ngFor=\"let u of users$ | async\" [value]=\"u\">\r\n {{u.name}}\r\n <span *ngIf=\"u.email\">&nbsp; - {{u.email}}</span>\r\n </mat-option>\r\n </mat-autocomplete>\r\n <mat-error *ngIf=\"form.controls.userIds.hasError('required')\">{{'Required'|translate:('AssignTo'|translate)}}</mat-error>\r\n </mat-form-field>\r\n <div>\r\n <mat-checkbox formControlName=fyi> {{ 'AssignFYI' | translate }}</mat-checkbox>\r\n &nbsp;\r\n<!-- <mat-checkbox formControlName=roundtrip> {{ 'AssignRoundtrip' | translate }}</mat-checkbox>-->\r\n </div>\r\n <mat-form-field>\r\n <textarea matInput cdkTextareaAutosize formControlName=\"note\" [placeholder]=\"'Note'|translate\" maxlength=\"200\">\r\n </textarea>\r\n <mat-hint align=\"end\">{{form.controls['note'].value?.length || 0}} / {{200}}</mat-hint>\r\n <mat-hint>{{'AssignNoteHint'| translate}}</mat-hint>\r\n </mat-form-field>\r\n</form>\r\n", dependencies: [{ kind: "directive", type: i4.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i4.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i1.ɵNgNoValidate, selector: "form:not([ngNoForm]):not([ngNativeValidate])" }, { kind: "directive", type: i1.DefaultValueAccessor, selector: "input:not([type=checkbox])[formControlName],textarea[formControlName],input:not([type=checkbox])[formControl],textarea[formControl],input:not([type=checkbox])[ngModel],textarea[ngModel],[ngDefaultControl]" }, { kind: "directive", type: i1.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i1.NgControlStatusGroup, selector: "[formGroupName],[formArrayName],[ngModelGroup],[formGroup],form:not([ngNoForm]),[ngForm]" }, { kind: "directive", type: i1.RequiredValidator, selector: ":not([type=checkbox])[required][formControlName],:not([type=checkbox])[required][formControl],:not([type=checkbox])[required][ngModel]", inputs: ["required"] }, { kind: "directive", type: i1.MaxLengthValidator, selector: "[maxlength][formControlName],[maxlength][formControl],[maxlength][ngModel]", inputs: ["maxlength"] }, { kind: "directive", type: i1.FormControlDirective, selector: "[formControl]", inputs: ["formControl", "disabled", "ngModel"], outputs: ["ngModelChange"], exportAs: ["ngForm"] }, { kind: "directive", type: i1.FormGroupDirective, selector: "[formGroup]", inputs: ["formGroup"], outputs: ["ngSubmit"], exportAs: ["ngForm"] }, { kind: "directive", type: i1.FormControlName, selector: "[formControlName]", inputs: ["formControlName", "disabled", "ngModel"], outputs: ["ngModelChange"] }, { kind: "component", type: i5.MatAutocomplete, selector: "mat-autocomplete", inputs: ["disableRipple"], exportAs: ["matAutocomplete"] }, { kind: "component", type: i6.MatOption, selector: "mat-option", exportAs: ["matOption"] }, { kind: "directive", type: i5.MatAutocompleteTrigger, selector: "input[matAutocomplete], textarea[matAutocomplete]", exportAs: ["matAutocompleteTrigger"] }, { kind: "component", type: i7.MatFormField, selector: "mat-form-field", inputs: ["hideRequiredMarker", "color", "floatLabel", "appearance", "subscriptSizing", "hintLabel"], exportAs: ["matFormField"] }, { kind: "directive", type: i7.MatHint, selector: "mat-hint", inputs: ["align", "id"] }, { kind: "directive", type: i7.MatError, selector: "mat-error, [matError]", inputs: ["id"] }, { kind: "component", type: i8.MatCheckbox, selector: "mat-checkbox", inputs: ["disableRipple", "color", "tabIndex"], exportAs: ["matCheckbox"] }, { kind: "directive", type: i9.MatInput, selector: "input[matInput], textarea[matInput], select[matNativeControl], input[matNativeControl], textarea[matNativeControl]", inputs: ["disabled", "id", "placeholder", "name", "required", "type", "errorStateMatcher", "aria-describedby", "value", "readonly"], exportAs: ["matInput"] }, { kind: "directive", type: i10.CdkTextareaAutosize, selector: "textarea[cdkTextareaAutosize]", inputs: ["cdkAutosizeMinRows", "cdkAutosizeMaxRows", "cdkTextareaAutosize", "placeholder"], exportAs: ["cdkTextareaAutosize"] }, { kind: "pipe", type: i4.AsyncPipe, name: "async" }, { kind: "pipe", type: i11.TranslatePipe, name: "translate" }] });
64
64
  AssignActionComponent = __decorate([
65
65
  BizDoc({
66
66
  selector: 'bizdoc-action-assign'
67
67
  })
68
68
  ], AssignActionComponent);
69
69
  export { AssignActionComponent };
70
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.0.1", ngImport: i0, type: AssignActionComponent, decorators: [{
70
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.0.4", ngImport: i0, type: AssignActionComponent, decorators: [{
71
71
  type: Component,
72
72
  args: [{ template: "<form autocomplete=\"off\" class=\"column\" [formGroup]=\"form\">\r\n <mat-form-field>\r\n <input required [placeholder]=\"'AssignTo'|translate\"\r\n [formControl]=userId\r\n cdkFocusInitial matInput\r\n [matAutocomplete]=\"auto\">\r\n <mat-autocomplete #auto=\"matAutocomplete\" (optionSelected)=\"userSelected($event)\" [displayWith]=\"displayWith\">\r\n <mat-option *ngFor=\"let u of users$ | async\" [value]=\"u\">\r\n {{u.name}}\r\n <span *ngIf=\"u.email\">&nbsp; - {{u.email}}</span>\r\n </mat-option>\r\n </mat-autocomplete>\r\n <mat-error *ngIf=\"form.controls.userIds.hasError('required')\">{{'Required'|translate:('AssignTo'|translate)}}</mat-error>\r\n </mat-form-field>\r\n <div>\r\n <mat-checkbox formControlName=fyi> {{ 'AssignFYI' | translate }}</mat-checkbox>\r\n &nbsp;\r\n<!-- <mat-checkbox formControlName=roundtrip> {{ 'AssignRoundtrip' | translate }}</mat-checkbox>-->\r\n </div>\r\n <mat-form-field>\r\n <textarea matInput cdkTextareaAutosize formControlName=\"note\" [placeholder]=\"'Note'|translate\" maxlength=\"200\">\r\n </textarea>\r\n <mat-hint align=\"end\">{{form.controls['note'].value?.length || 0}} / {{200}}</mat-hint>\r\n <mat-hint>{{'AssignNoteHint'| translate}}</mat-hint>\r\n </mat-form-field>\r\n</form>\r\n" }]
73
73
  }], ctorParameters: function () { return [{ type: i1.FormBuilder }, { type: i2.SessionService }, { type: i3.AccountService }]; }, propDecorators: { nameInput: [{
@@ -72,15 +72,15 @@ let MoveToActionComponent = class MoveToActionComponent {
72
72
  this._destroy.complete();
73
73
  }
74
74
  };
75
- MoveToActionComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.0.1", ngImport: i0, type: MoveToActionComponent, deps: [{ token: i1.FormBuilder }, { token: i2.SessionService }, { token: i3.AccountService }], target: i0.ɵɵFactoryTarget.Component });
76
- MoveToActionComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.0.1", type: MoveToActionComponent, selector: "ng-component", viewQueries: [{ propertyName: "nameInput", first: true, predicate: ["nameInput"], descendants: true, read: ElementRef, static: true }], ngImport: i0, template: "<form autocomplete=\"off\" class=\"column\" [formGroup]=\"form\">\r\n <mat-form-field>\r\n <mat-chip-grid #chipList [attr.aria-label]=\"'AssignTo'|translate\">\r\n <mat-chip-row *ngFor=\"let u of form.value.userIds\"\r\n [selectable]=\"true\"\r\n [removable]=\"true\"\r\n (removed)=\"removed(u)\">\r\n {{u | userName | async }}\r\n <mat-icon matChipRemove>cancel</mat-icon>\r\n </mat-chip-row>\r\n </mat-chip-grid>\r\n <input required [placeholder]=\"'AssignTo'|translate\"\r\n [formControl]=userIds\r\n cdkFocusInitial\r\n #nameInput\r\n [matAutocomplete]=\"auto\"\r\n [matChipInputFor]=\"chipList\"\r\n [matChipInputSeparatorKeyCodes]=\"separatorKeysCodes\">\r\n <mat-autocomplete #auto=\"matAutocomplete\" (optionSelected)=\"userSelected(nameInput, $event)\">\r\n <mat-option *ngFor=\"let u of users$ | async\" [value]=\"u.id\">\r\n {{u.name}}\r\n <span *ngIf=\"u.email\">&nbsp; - {{u.email}}</span>\r\n </mat-option>\r\n </mat-autocomplete>\r\n <mat-error *ngIf=\"form.controls.userIds.hasError('required')\">{{'Required'|translate:('AssignTo'|translate)}}</mat-error>\r\n </mat-form-field>\r\n <mat-form-field>\r\n <textarea matInput cdkTextareaAutosize formControlName=\"note\" [placeholder]=\"'Note'|translate\" maxlength=\"200\">\r\n </textarea>\r\n <mat-hint align=\"end\">{{form.controls['note'].value?.length || 0}} / {{200}}</mat-hint>\r\n <mat-hint>{{'AssignNoteHint'| translate}}</mat-hint>\r\n </mat-form-field>\r\n</form>\r\n", dependencies: [{ kind: "directive", type: i4.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i4.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i1.ɵNgNoValidate, selector: "form:not([ngNoForm]):not([ngNativeValidate])" }, { kind: "directive", type: i1.DefaultValueAccessor, selector: "input:not([type=checkbox])[formControlName],textarea[formControlName],input:not([type=checkbox])[formControl],textarea[formControl],input:not([type=checkbox])[ngModel],textarea[ngModel],[ngDefaultControl]" }, { kind: "directive", type: i1.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i1.NgControlStatusGroup, selector: "[formGroupName],[formArrayName],[ngModelGroup],[formGroup],form:not([ngNoForm]),[ngForm]" }, { kind: "directive", type: i1.RequiredValidator, selector: ":not([type=checkbox])[required][formControlName],:not([type=checkbox])[required][formControl],:not([type=checkbox])[required][ngModel]", inputs: ["required"] }, { kind: "directive", type: i1.MaxLengthValidator, selector: "[maxlength][formControlName],[maxlength][formControl],[maxlength][ngModel]", inputs: ["maxlength"] }, { kind: "directive", type: i1.FormControlDirective, selector: "[formControl]", inputs: ["formControl", "disabled", "ngModel"], outputs: ["ngModelChange"], exportAs: ["ngForm"] }, { kind: "directive", type: i1.FormGroupDirective, selector: "[formGroup]", inputs: ["formGroup"], outputs: ["ngSubmit"], exportAs: ["ngForm"] }, { kind: "directive", type: i1.FormControlName, selector: "[formControlName]", inputs: ["formControlName", "disabled", "ngModel"], outputs: ["ngModelChange"] }, { kind: "component", type: i5.MatChipGrid, selector: "mat-chip-grid", inputs: ["tabIndex", "disabled", "placeholder", "required", "value", "errorStateMatcher"], outputs: ["change", "valueChange"] }, { kind: "directive", type: i5.MatChipInput, selector: "input[matChipInputFor]", inputs: ["matChipInputFor", "matChipInputAddOnBlur", "matChipInputSeparatorKeyCodes", "placeholder", "id", "disabled"], outputs: ["matChipInputTokenEnd"], exportAs: ["matChipInput", "matChipInputFor"] }, { kind: "directive", type: i5.MatChipRemove, selector: "[matChipRemove]" }, { kind: "component", type: i5.MatChipRow, selector: "mat-chip-row, mat-basic-chip-row", inputs: ["color", "disabled", "disableRipple", "tabIndex", "editable"], outputs: ["edited"] }, { kind: "component", type: i6.MatAutocomplete, selector: "mat-autocomplete", inputs: ["disableRipple"], exportAs: ["matAutocomplete"] }, { kind: "component", type: i7.MatOption, selector: "mat-option", exportAs: ["matOption"] }, { kind: "directive", type: i6.MatAutocompleteTrigger, selector: "input[matAutocomplete], textarea[matAutocomplete]", exportAs: ["matAutocompleteTrigger"] }, { kind: "component", type: i8.MatFormField, selector: "mat-form-field", inputs: ["hideRequiredMarker", "color", "floatLabel", "appearance", "subscriptSizing", "hintLabel"], exportAs: ["matFormField"] }, { kind: "directive", type: i8.MatHint, selector: "mat-hint", inputs: ["align", "id"] }, { kind: "directive", type: i8.MatError, selector: "mat-error, [matError]", inputs: ["id"] }, { kind: "directive", type: i9.MatInput, selector: "input[matInput], textarea[matInput], select[matNativeControl], input[matNativeControl], textarea[matNativeControl]", inputs: ["disabled", "id", "placeholder", "name", "required", "type", "errorStateMatcher", "aria-describedby", "value", "readonly"], exportAs: ["matInput"] }, { kind: "directive", type: i10.CdkTextareaAutosize, selector: "textarea[cdkTextareaAutosize]", inputs: ["cdkAutosizeMinRows", "cdkAutosizeMaxRows", "cdkTextareaAutosize", "placeholder"], exportAs: ["cdkTextareaAutosize"] }, { kind: "component", type: i11.MatIcon, selector: "mat-icon", inputs: ["color", "inline", "svgIcon", "fontSet", "fontIcon"], exportAs: ["matIcon"] }, { kind: "pipe", type: i4.AsyncPipe, name: "async" }, { kind: "pipe", type: i12.TranslatePipe, name: "translate" }, { kind: "pipe", type: i13.UserNamePipe, name: "userName" }] });
75
+ MoveToActionComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.0.4", ngImport: i0, type: MoveToActionComponent, deps: [{ token: i1.FormBuilder }, { token: i2.SessionService }, { token: i3.AccountService }], target: i0.ɵɵFactoryTarget.Component });
76
+ MoveToActionComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.0.4", type: MoveToActionComponent, selector: "ng-component", viewQueries: [{ propertyName: "nameInput", first: true, predicate: ["nameInput"], descendants: true, read: ElementRef, static: true }], ngImport: i0, template: "<form autocomplete=\"off\" class=\"column\" [formGroup]=\"form\">\r\n <mat-form-field>\r\n <mat-chip-grid #chipList [attr.aria-label]=\"'AssignTo'|translate\">\r\n <mat-chip-row *ngFor=\"let u of form.value.userIds\"\r\n [selectable]=\"true\"\r\n [removable]=\"true\"\r\n (removed)=\"removed(u)\">\r\n {{u | userName | async }}\r\n <mat-icon matChipRemove>cancel</mat-icon>\r\n </mat-chip-row>\r\n </mat-chip-grid>\r\n <input required [placeholder]=\"'AssignTo'|translate\"\r\n [formControl]=userIds\r\n cdkFocusInitial\r\n #nameInput\r\n [matAutocomplete]=\"auto\"\r\n [matChipInputFor]=\"chipList\"\r\n [matChipInputSeparatorKeyCodes]=\"separatorKeysCodes\">\r\n <mat-autocomplete #auto=\"matAutocomplete\" (optionSelected)=\"userSelected(nameInput, $event)\">\r\n <mat-option *ngFor=\"let u of users$ | async\" [value]=\"u.id\">\r\n {{u.name}}\r\n <span *ngIf=\"u.email\">&nbsp; - {{u.email}}</span>\r\n </mat-option>\r\n </mat-autocomplete>\r\n <mat-error *ngIf=\"form.controls.userIds.hasError('required')\">{{'Required'|translate:('AssignTo'|translate)}}</mat-error>\r\n </mat-form-field>\r\n <mat-form-field>\r\n <textarea matInput cdkTextareaAutosize formControlName=\"note\" [placeholder]=\"'Note'|translate\" maxlength=\"200\">\r\n </textarea>\r\n <mat-hint align=\"end\">{{form.controls['note'].value?.length || 0}} / {{200}}</mat-hint>\r\n <mat-hint>{{'AssignNoteHint'| translate}}</mat-hint>\r\n </mat-form-field>\r\n</form>\r\n", dependencies: [{ kind: "directive", type: i4.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i4.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i1.ɵNgNoValidate, selector: "form:not([ngNoForm]):not([ngNativeValidate])" }, { kind: "directive", type: i1.DefaultValueAccessor, selector: "input:not([type=checkbox])[formControlName],textarea[formControlName],input:not([type=checkbox])[formControl],textarea[formControl],input:not([type=checkbox])[ngModel],textarea[ngModel],[ngDefaultControl]" }, { kind: "directive", type: i1.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i1.NgControlStatusGroup, selector: "[formGroupName],[formArrayName],[ngModelGroup],[formGroup],form:not([ngNoForm]),[ngForm]" }, { kind: "directive", type: i1.RequiredValidator, selector: ":not([type=checkbox])[required][formControlName],:not([type=checkbox])[required][formControl],:not([type=checkbox])[required][ngModel]", inputs: ["required"] }, { kind: "directive", type: i1.MaxLengthValidator, selector: "[maxlength][formControlName],[maxlength][formControl],[maxlength][ngModel]", inputs: ["maxlength"] }, { kind: "directive", type: i1.FormControlDirective, selector: "[formControl]", inputs: ["formControl", "disabled", "ngModel"], outputs: ["ngModelChange"], exportAs: ["ngForm"] }, { kind: "directive", type: i1.FormGroupDirective, selector: "[formGroup]", inputs: ["formGroup"], outputs: ["ngSubmit"], exportAs: ["ngForm"] }, { kind: "directive", type: i1.FormControlName, selector: "[formControlName]", inputs: ["formControlName", "disabled", "ngModel"], outputs: ["ngModelChange"] }, { kind: "component", type: i5.MatChipGrid, selector: "mat-chip-grid", inputs: ["tabIndex", "disabled", "placeholder", "required", "value", "errorStateMatcher"], outputs: ["change", "valueChange"] }, { kind: "directive", type: i5.MatChipInput, selector: "input[matChipInputFor]", inputs: ["matChipInputFor", "matChipInputAddOnBlur", "matChipInputSeparatorKeyCodes", "placeholder", "id", "disabled"], outputs: ["matChipInputTokenEnd"], exportAs: ["matChipInput", "matChipInputFor"] }, { kind: "directive", type: i5.MatChipRemove, selector: "[matChipRemove]" }, { kind: "component", type: i5.MatChipRow, selector: "mat-chip-row, mat-basic-chip-row", inputs: ["color", "disabled", "disableRipple", "tabIndex", "editable"], outputs: ["edited"] }, { kind: "component", type: i6.MatAutocomplete, selector: "mat-autocomplete", inputs: ["disableRipple"], exportAs: ["matAutocomplete"] }, { kind: "component", type: i7.MatOption, selector: "mat-option", exportAs: ["matOption"] }, { kind: "directive", type: i6.MatAutocompleteTrigger, selector: "input[matAutocomplete], textarea[matAutocomplete]", exportAs: ["matAutocompleteTrigger"] }, { kind: "component", type: i8.MatFormField, selector: "mat-form-field", inputs: ["hideRequiredMarker", "color", "floatLabel", "appearance", "subscriptSizing", "hintLabel"], exportAs: ["matFormField"] }, { kind: "directive", type: i8.MatHint, selector: "mat-hint", inputs: ["align", "id"] }, { kind: "directive", type: i8.MatError, selector: "mat-error, [matError]", inputs: ["id"] }, { kind: "directive", type: i9.MatInput, selector: "input[matInput], textarea[matInput], select[matNativeControl], input[matNativeControl], textarea[matNativeControl]", inputs: ["disabled", "id", "placeholder", "name", "required", "type", "errorStateMatcher", "aria-describedby", "value", "readonly"], exportAs: ["matInput"] }, { kind: "directive", type: i10.CdkTextareaAutosize, selector: "textarea[cdkTextareaAutosize]", inputs: ["cdkAutosizeMinRows", "cdkAutosizeMaxRows", "cdkTextareaAutosize", "placeholder"], exportAs: ["cdkTextareaAutosize"] }, { kind: "component", type: i11.MatIcon, selector: "mat-icon", inputs: ["color", "inline", "svgIcon", "fontSet", "fontIcon"], exportAs: ["matIcon"] }, { kind: "pipe", type: i4.AsyncPipe, name: "async" }, { kind: "pipe", type: i12.TranslatePipe, name: "translate" }, { kind: "pipe", type: i13.UserNamePipe, name: "userName" }] });
77
77
  MoveToActionComponent = __decorate([
78
78
  BizDoc({
79
79
  selector: 'bizdoc-action-moveto'
80
80
  })
81
81
  ], MoveToActionComponent);
82
82
  export { MoveToActionComponent };
83
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.0.1", ngImport: i0, type: MoveToActionComponent, decorators: [{
83
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.0.4", ngImport: i0, type: MoveToActionComponent, decorators: [{
84
84
  type: Component,
85
85
  args: [{ template: "<form autocomplete=\"off\" class=\"column\" [formGroup]=\"form\">\r\n <mat-form-field>\r\n <mat-chip-grid #chipList [attr.aria-label]=\"'AssignTo'|translate\">\r\n <mat-chip-row *ngFor=\"let u of form.value.userIds\"\r\n [selectable]=\"true\"\r\n [removable]=\"true\"\r\n (removed)=\"removed(u)\">\r\n {{u | userName | async }}\r\n <mat-icon matChipRemove>cancel</mat-icon>\r\n </mat-chip-row>\r\n </mat-chip-grid>\r\n <input required [placeholder]=\"'AssignTo'|translate\"\r\n [formControl]=userIds\r\n cdkFocusInitial\r\n #nameInput\r\n [matAutocomplete]=\"auto\"\r\n [matChipInputFor]=\"chipList\"\r\n [matChipInputSeparatorKeyCodes]=\"separatorKeysCodes\">\r\n <mat-autocomplete #auto=\"matAutocomplete\" (optionSelected)=\"userSelected(nameInput, $event)\">\r\n <mat-option *ngFor=\"let u of users$ | async\" [value]=\"u.id\">\r\n {{u.name}}\r\n <span *ngIf=\"u.email\">&nbsp; - {{u.email}}</span>\r\n </mat-option>\r\n </mat-autocomplete>\r\n <mat-error *ngIf=\"form.controls.userIds.hasError('required')\">{{'Required'|translate:('AssignTo'|translate)}}</mat-error>\r\n </mat-form-field>\r\n <mat-form-field>\r\n <textarea matInput cdkTextareaAutosize formControlName=\"note\" [placeholder]=\"'Note'|translate\" maxlength=\"200\">\r\n </textarea>\r\n <mat-hint align=\"end\">{{form.controls['note'].value?.length || 0}} / {{200}}</mat-hint>\r\n <mat-hint>{{'AssignNoteHint'| translate}}</mat-hint>\r\n </mat-form-field>\r\n</form>\r\n" }]
86
86
  }], ctorParameters: function () { return [{ type: i1.FormBuilder }, { type: i2.SessionService }, { type: i3.AccountService }]; }, propDecorators: { nameInput: [{
@@ -36,15 +36,15 @@ let ReturnActionComponent = class ReturnActionComponent {
36
36
  }
37
37
  }
38
38
  };
39
- ReturnActionComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.0.1", ngImport: i0, type: ReturnActionComponent, deps: [{ token: i1.FormBuilder }, { token: i2.ActionRef }, { token: i3.SessionService }], target: i0.ɵɵFactoryTarget.Component });
40
- ReturnActionComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.0.1", type: ReturnActionComponent, selector: "ng-component", ngImport: i0, template: "<form autocomplete=\"off\" class=\"column\" [formGroup]=\"form\">\r\n <mat-form-field>\r\n <mat-select formControlName=\"recipientId\" cdkFocusInitial [placeholder]=\"'User'|translate\" required>\r\n <mat-option *ngFor=\"let r of recipients\" [value]=\"r.id\">{{r.userId | userName | async }}</mat-option>\r\n </mat-select>\r\n <mat-error *ngIf=\"form.controls.recipientId.hasError('required')\">{{'Required'|translate:('User'|translate)}}</mat-error>\r\n </mat-form-field>\r\n <mat-form-field>\r\n <textarea matInput cdkTextareaAutosize formControlName=\"note\" [placeholder]=\"'Note'|translate\" maxlength=\"200\">\r\n </textarea>\r\n <mat-hint align=\"end\">{{form.controls['note'].value?.length || 0}} / {{200}}</mat-hint>\r\n </mat-form-field>\r\n</form>\r\n", dependencies: [{ kind: "directive", type: i4.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i4.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i1.ɵNgNoValidate, selector: "form:not([ngNoForm]):not([ngNativeValidate])" }, { kind: "directive", type: i1.DefaultValueAccessor, selector: "input:not([type=checkbox])[formControlName],textarea[formControlName],input:not([type=checkbox])[formControl],textarea[formControl],input:not([type=checkbox])[ngModel],textarea[ngModel],[ngDefaultControl]" }, { kind: "directive", type: i1.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i1.NgControlStatusGroup, selector: "[formGroupName],[formArrayName],[ngModelGroup],[formGroup],form:not([ngNoForm]),[ngForm]" }, { kind: "directive", type: i1.RequiredValidator, selector: ":not([type=checkbox])[required][formControlName],:not([type=checkbox])[required][formControl],:not([type=checkbox])[required][ngModel]", inputs: ["required"] }, { kind: "directive", type: i1.MaxLengthValidator, selector: "[maxlength][formControlName],[maxlength][formControl],[maxlength][ngModel]", inputs: ["maxlength"] }, { kind: "directive", type: i1.FormGroupDirective, selector: "[formGroup]", inputs: ["formGroup"], outputs: ["ngSubmit"], exportAs: ["ngForm"] }, { kind: "directive", type: i1.FormControlName, selector: "[formControlName]", inputs: ["formControlName", "disabled", "ngModel"], outputs: ["ngModelChange"] }, { kind: "component", type: i5.MatOption, selector: "mat-option", exportAs: ["matOption"] }, { kind: "component", type: i6.MatFormField, selector: "mat-form-field", inputs: ["hideRequiredMarker", "color", "floatLabel", "appearance", "subscriptSizing", "hintLabel"], exportAs: ["matFormField"] }, { kind: "directive", type: i6.MatHint, selector: "mat-hint", inputs: ["align", "id"] }, { kind: "directive", type: i6.MatError, selector: "mat-error, [matError]", inputs: ["id"] }, { kind: "component", type: i7.MatSelect, selector: "mat-select", inputs: ["disabled", "disableRipple", "tabIndex"], exportAs: ["matSelect"] }, { kind: "directive", type: i8.MatInput, selector: "input[matInput], textarea[matInput], select[matNativeControl], input[matNativeControl], textarea[matNativeControl]", inputs: ["disabled", "id", "placeholder", "name", "required", "type", "errorStateMatcher", "aria-describedby", "value", "readonly"], exportAs: ["matInput"] }, { kind: "directive", type: i9.CdkTextareaAutosize, selector: "textarea[cdkTextareaAutosize]", inputs: ["cdkAutosizeMinRows", "cdkAutosizeMaxRows", "cdkTextareaAutosize", "placeholder"], exportAs: ["cdkTextareaAutosize"] }, { kind: "pipe", type: i4.AsyncPipe, name: "async" }, { kind: "pipe", type: i10.TranslatePipe, name: "translate" }, { kind: "pipe", type: i11.UserNamePipe, name: "userName" }] });
39
+ ReturnActionComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.0.4", ngImport: i0, type: ReturnActionComponent, deps: [{ token: i1.FormBuilder }, { token: i2.ActionRef }, { token: i3.SessionService }], target: i0.ɵɵFactoryTarget.Component });
40
+ ReturnActionComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.0.4", type: ReturnActionComponent, selector: "ng-component", ngImport: i0, template: "<form autocomplete=\"off\" class=\"column\" [formGroup]=\"form\">\r\n <mat-form-field>\r\n <mat-select formControlName=\"recipientId\" cdkFocusInitial [placeholder]=\"'User'|translate\" required>\r\n <mat-option *ngFor=\"let r of recipients\" [value]=\"r.id\">{{r.userId | userName | async }}</mat-option>\r\n </mat-select>\r\n <mat-error *ngIf=\"form.controls.recipientId.hasError('required')\">{{'Required'|translate:('User'|translate)}}</mat-error>\r\n </mat-form-field>\r\n <mat-form-field>\r\n <textarea matInput cdkTextareaAutosize formControlName=\"note\" [placeholder]=\"'Note'|translate\" maxlength=\"200\">\r\n </textarea>\r\n <mat-hint align=\"end\">{{form.controls['note'].value?.length || 0}} / {{200}}</mat-hint>\r\n </mat-form-field>\r\n</form>\r\n", dependencies: [{ kind: "directive", type: i4.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i4.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i1.ɵNgNoValidate, selector: "form:not([ngNoForm]):not([ngNativeValidate])" }, { kind: "directive", type: i1.DefaultValueAccessor, selector: "input:not([type=checkbox])[formControlName],textarea[formControlName],input:not([type=checkbox])[formControl],textarea[formControl],input:not([type=checkbox])[ngModel],textarea[ngModel],[ngDefaultControl]" }, { kind: "directive", type: i1.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i1.NgControlStatusGroup, selector: "[formGroupName],[formArrayName],[ngModelGroup],[formGroup],form:not([ngNoForm]),[ngForm]" }, { kind: "directive", type: i1.RequiredValidator, selector: ":not([type=checkbox])[required][formControlName],:not([type=checkbox])[required][formControl],:not([type=checkbox])[required][ngModel]", inputs: ["required"] }, { kind: "directive", type: i1.MaxLengthValidator, selector: "[maxlength][formControlName],[maxlength][formControl],[maxlength][ngModel]", inputs: ["maxlength"] }, { kind: "directive", type: i1.FormGroupDirective, selector: "[formGroup]", inputs: ["formGroup"], outputs: ["ngSubmit"], exportAs: ["ngForm"] }, { kind: "directive", type: i1.FormControlName, selector: "[formControlName]", inputs: ["formControlName", "disabled", "ngModel"], outputs: ["ngModelChange"] }, { kind: "component", type: i5.MatOption, selector: "mat-option", exportAs: ["matOption"] }, { kind: "component", type: i6.MatFormField, selector: "mat-form-field", inputs: ["hideRequiredMarker", "color", "floatLabel", "appearance", "subscriptSizing", "hintLabel"], exportAs: ["matFormField"] }, { kind: "directive", type: i6.MatHint, selector: "mat-hint", inputs: ["align", "id"] }, { kind: "directive", type: i6.MatError, selector: "mat-error, [matError]", inputs: ["id"] }, { kind: "component", type: i7.MatSelect, selector: "mat-select", inputs: ["disabled", "disableRipple", "tabIndex"], exportAs: ["matSelect"] }, { kind: "directive", type: i8.MatInput, selector: "input[matInput], textarea[matInput], select[matNativeControl], input[matNativeControl], textarea[matNativeControl]", inputs: ["disabled", "id", "placeholder", "name", "required", "type", "errorStateMatcher", "aria-describedby", "value", "readonly"], exportAs: ["matInput"] }, { kind: "directive", type: i9.CdkTextareaAutosize, selector: "textarea[cdkTextareaAutosize]", inputs: ["cdkAutosizeMinRows", "cdkAutosizeMaxRows", "cdkTextareaAutosize", "placeholder"], exportAs: ["cdkTextareaAutosize"] }, { kind: "pipe", type: i4.AsyncPipe, name: "async" }, { kind: "pipe", type: i10.TranslatePipe, name: "translate" }, { kind: "pipe", type: i11.UserNamePipe, name: "userName" }] });
41
41
  ReturnActionComponent = __decorate([
42
42
  BizDoc({
43
43
  selector: 'bizdoc-action-return'
44
44
  })
45
45
  ], ReturnActionComponent);
46
46
  export { ReturnActionComponent };
47
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.0.1", ngImport: i0, type: ReturnActionComponent, decorators: [{
47
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.0.4", ngImport: i0, type: ReturnActionComponent, decorators: [{
48
48
  type: Component,
49
49
  args: [{ template: "<form autocomplete=\"off\" class=\"column\" [formGroup]=\"form\">\r\n <mat-form-field>\r\n <mat-select formControlName=\"recipientId\" cdkFocusInitial [placeholder]=\"'User'|translate\" required>\r\n <mat-option *ngFor=\"let r of recipients\" [value]=\"r.id\">{{r.userId | userName | async }}</mat-option>\r\n </mat-select>\r\n <mat-error *ngIf=\"form.controls.recipientId.hasError('required')\">{{'Required'|translate:('User'|translate)}}</mat-error>\r\n </mat-form-field>\r\n <mat-form-field>\r\n <textarea matInput cdkTextareaAutosize formControlName=\"note\" [placeholder]=\"'Note'|translate\" maxlength=\"200\">\r\n </textarea>\r\n <mat-hint align=\"end\">{{form.controls['note'].value?.length || 0}} / {{200}}</mat-hint>\r\n </mat-form-field>\r\n</form>\r\n" }]
50
50
  }], ctorParameters: function () { return [{ type: i1.FormBuilder }, { type: i2.ActionRef }, { type: i3.SessionService }]; } });
@@ -112,9 +112,9 @@ export class AttachmentsComponent {
112
112
  this._sb.ask('DeleteFileAsk', 'DeleteFile', { color: 'warn' }).subscribe(ok => ok && task());
113
113
  }
114
114
  }
115
- AttachmentsComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.0.1", ngImport: i0, type: AttachmentsComponent, deps: [{ token: i1.MailboxService }, { token: i2.SessionService }, { token: i0.ViewContainerRef }, { token: i3.PromptService }, { token: i4.Overlay }, { token: i0.Injector }, { token: i5.Directionality }], target: i0.ɵɵFactoryTarget.Component });
116
- AttachmentsComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.0.1", type: AttachmentsComponent, selector: "bizdoc-attachments", inputs: { model: "model", viewedIndicator: "viewedIndicator", includeDeleted: "includeDeleted" }, usesOnChanges: true, ngImport: i0, template: "<div *ngFor=\"let a of attachments\">\r\n <button mat-button class=\"attachment-link\" [matMenuTriggerFor]=\"attachment\" [bizdocTooltip]=\"a.time | amCalendar\" [progressIndicator]=\"a.progress\">\r\n <mat-icon *ngIf=\"viewedIndicator && a.viewed\">done_all</mat-icon>\r\n <!--[bizdocTooltip]=\"a.viewed | amCalendar\"-->\r\n <mat-icon>attachment</mat-icon>&nbsp;\r\n <span [class.deleted]=\"a.deleted\" [class.failed]=\"a.failed\">{{a.fileName}}</span>\r\n </button>\r\n <mat-menu #attachment>\r\n <ng-container *ngIf=\"!a.failed\">\r\n <button mat-menu-item (click)=\"download(a)\">{{\"Download\" | translate}}</button>\r\n <button mat-menu-item *ngIf=\"canPreview(a)\" (click)=\"preview(a)\"><mat-icon>landscape</mat-icon> {{\"Preview\" | translate}}</button>\r\n <ng-container *ngIf=\"hasVersion(a)\">\r\n <mat-divider></mat-divider>\r\n <button mat-menu-item *ngFor=\"let v of getVersions(a)\" (click)=\"previewOrDownload(v)\">{{v.time | amCalendar}}</button>\r\n </ng-container>\r\n <ng-container *ngIf=\"canDelete(a)\">\r\n <mat-divider></mat-divider>\r\n <button mat-menu-item (click)=\"discard(a)\">{{\"Discard\" | translate}}</button>\r\n </ng-container>\r\n </ng-container>\r\n <button mat-menu-item (click)=\"cancel(a)\" *ngIf=\"a.failed\">{{\"Cancel\" | translate}}</button>\r\n </mat-menu>\r\n</div>\r\n", styles: [":host{display:flex;flex-flow:wrap}.attachment-link.failed{color:red}.attachment-link .deleted{text-decoration:line-through}::ng-deep button .progress{background-color:#696969;position:absolute;height:100%}\n"], dependencies: [{ kind: "directive", type: i6.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i6.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: i7.MatDivider, selector: "mat-divider", inputs: ["vertical", "inset"] }, { kind: "component", type: i8.MatButton, selector: " button[mat-button], button[mat-raised-button], button[mat-flat-button], button[mat-stroked-button] ", inputs: ["disabled", "disableRipple", "color"], exportAs: ["matButton"] }, { kind: "component", type: i9.MatIcon, selector: "mat-icon", inputs: ["color", "inline", "svgIcon", "fontSet", "fontIcon"], exportAs: ["matIcon"] }, { kind: "component", type: i10.MatMenu, selector: "mat-menu", exportAs: ["matMenu"] }, { kind: "component", type: i10.MatMenuItem, selector: "[mat-menu-item]", inputs: ["disabled", "disableRipple", "role"], exportAs: ["matMenuItem"] }, { kind: "directive", type: i10.MatMenuTrigger, selector: "[mat-menu-trigger-for], [matMenuTriggerFor]", exportAs: ["matMenuTrigger"] }, { kind: "directive", type: i11.ProgressDirective, selector: "[progressIndicator]", inputs: ["progressIndicator"] }, { kind: "directive", type: i12.TooltipDirective, selector: "[bizdocTooltip]", inputs: ["bizdocTooltip", "bizdocTooltipTemplate", "bizdocTooltipContext", "bizdocTooltipPosition", "bizdocTooltipDuration", "bizdocTooltipDisabled"] }, { kind: "pipe", type: i13.CalendarPipe, name: "amCalendar" }, { kind: "pipe", type: i14.TranslatePipe, name: "translate" }] });
117
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.0.1", ngImport: i0, type: AttachmentsComponent, decorators: [{
115
+ AttachmentsComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.0.4", ngImport: i0, type: AttachmentsComponent, deps: [{ token: i1.MailboxService }, { token: i2.SessionService }, { token: i0.ViewContainerRef }, { token: i3.PromptService }, { token: i4.Overlay }, { token: i0.Injector }, { token: i5.Directionality }], target: i0.ɵɵFactoryTarget.Component });
116
+ AttachmentsComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.0.4", type: AttachmentsComponent, selector: "bizdoc-attachments", inputs: { model: "model", viewedIndicator: "viewedIndicator", includeDeleted: "includeDeleted" }, usesOnChanges: true, ngImport: i0, template: "<div *ngFor=\"let a of attachments\">\r\n <button mat-button class=\"attachment-link\" [matMenuTriggerFor]=\"attachment\" [bizdocTooltip]=\"a.time | amCalendar\" [progressIndicator]=\"a.progress\">\r\n <mat-icon *ngIf=\"viewedIndicator && a.viewed\">done_all</mat-icon>\r\n <!--[bizdocTooltip]=\"a.viewed | amCalendar\"-->\r\n <mat-icon>attachment</mat-icon>&nbsp;\r\n <span [class.deleted]=\"a.deleted\" [class.failed]=\"a.failed\">{{a.fileName}}</span>\r\n </button>\r\n <mat-menu #attachment>\r\n <ng-container *ngIf=\"!a.failed\">\r\n <button mat-menu-item (click)=\"download(a)\">{{\"Download\" | translate}}</button>\r\n <button mat-menu-item *ngIf=\"canPreview(a)\" (click)=\"preview(a)\"><mat-icon>landscape</mat-icon> {{\"Preview\" | translate}}</button>\r\n <ng-container *ngIf=\"hasVersion(a)\">\r\n <mat-divider></mat-divider>\r\n <button mat-menu-item *ngFor=\"let v of getVersions(a)\" (click)=\"previewOrDownload(v)\">{{v.time | amCalendar}}</button>\r\n </ng-container>\r\n <ng-container *ngIf=\"canDelete(a)\">\r\n <mat-divider></mat-divider>\r\n <button mat-menu-item (click)=\"discard(a)\">{{\"Discard\" | translate}}</button>\r\n </ng-container>\r\n </ng-container>\r\n <button mat-menu-item (click)=\"cancel(a)\" *ngIf=\"a.failed\">{{\"Cancel\" | translate}}</button>\r\n </mat-menu>\r\n</div>\r\n", styles: [":host{display:flex;flex-flow:wrap}.attachment-link.failed{color:red}.attachment-link .deleted{text-decoration:line-through}::ng-deep button .progress{background-color:#696969;position:absolute;height:100%}\n"], dependencies: [{ kind: "directive", type: i6.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i6.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: i7.MatDivider, selector: "mat-divider", inputs: ["vertical", "inset"] }, { kind: "component", type: i8.MatButton, selector: " button[mat-button], button[mat-raised-button], button[mat-flat-button], button[mat-stroked-button] ", inputs: ["disabled", "disableRipple", "color"], exportAs: ["matButton"] }, { kind: "component", type: i9.MatIcon, selector: "mat-icon", inputs: ["color", "inline", "svgIcon", "fontSet", "fontIcon"], exportAs: ["matIcon"] }, { kind: "component", type: i10.MatMenu, selector: "mat-menu", exportAs: ["matMenu"] }, { kind: "component", type: i10.MatMenuItem, selector: "[mat-menu-item]", inputs: ["disabled", "disableRipple", "role"], exportAs: ["matMenuItem"] }, { kind: "directive", type: i10.MatMenuTrigger, selector: "[mat-menu-trigger-for], [matMenuTriggerFor]", exportAs: ["matMenuTrigger"] }, { kind: "directive", type: i11.ProgressDirective, selector: "[progressIndicator]", inputs: ["progressIndicator"] }, { kind: "directive", type: i12.TooltipDirective, selector: "[bizdocTooltip]", inputs: ["bizdocTooltip", "bizdocTooltipTemplate", "bizdocTooltipContext", "bizdocTooltipPosition", "bizdocTooltipDuration", "bizdocTooltipDisabled"] }, { kind: "pipe", type: i13.CalendarPipe, name: "amCalendar" }, { kind: "pipe", type: i14.TranslatePipe, name: "translate" }] });
117
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.0.4", ngImport: i0, type: AttachmentsComponent, decorators: [{
118
118
  type: Component,
119
119
  args: [{ selector: 'bizdoc-attachments', template: "<div *ngFor=\"let a of attachments\">\r\n <button mat-button class=\"attachment-link\" [matMenuTriggerFor]=\"attachment\" [bizdocTooltip]=\"a.time | amCalendar\" [progressIndicator]=\"a.progress\">\r\n <mat-icon *ngIf=\"viewedIndicator && a.viewed\">done_all</mat-icon>\r\n <!--[bizdocTooltip]=\"a.viewed | amCalendar\"-->\r\n <mat-icon>attachment</mat-icon>&nbsp;\r\n <span [class.deleted]=\"a.deleted\" [class.failed]=\"a.failed\">{{a.fileName}}</span>\r\n </button>\r\n <mat-menu #attachment>\r\n <ng-container *ngIf=\"!a.failed\">\r\n <button mat-menu-item (click)=\"download(a)\">{{\"Download\" | translate}}</button>\r\n <button mat-menu-item *ngIf=\"canPreview(a)\" (click)=\"preview(a)\"><mat-icon>landscape</mat-icon> {{\"Preview\" | translate}}</button>\r\n <ng-container *ngIf=\"hasVersion(a)\">\r\n <mat-divider></mat-divider>\r\n <button mat-menu-item *ngFor=\"let v of getVersions(a)\" (click)=\"previewOrDownload(v)\">{{v.time | amCalendar}}</button>\r\n </ng-container>\r\n <ng-container *ngIf=\"canDelete(a)\">\r\n <mat-divider></mat-divider>\r\n <button mat-menu-item (click)=\"discard(a)\">{{\"Discard\" | translate}}</button>\r\n </ng-container>\r\n </ng-container>\r\n <button mat-menu-item (click)=\"cancel(a)\" *ngIf=\"a.failed\">{{\"Cancel\" | translate}}</button>\r\n </mat-menu>\r\n</div>\r\n", styles: [":host{display:flex;flex-flow:wrap}.attachment-link.failed{color:red}.attachment-link .deleted{text-decoration:line-through}::ng-deep button .progress{background-color:#696969;position:absolute;height:100%}\n"] }]
120
120
  }], ctorParameters: function () { return [{ type: i1.MailboxService }, { type: i2.SessionService }, { type: i0.ViewContainerRef }, { type: i3.PromptService }, { type: i4.Overlay }, { type: i0.Injector }, { type: i5.Directionality }]; }, propDecorators: { model: [{
@@ -96,8 +96,8 @@ export class AttachmentPreview {
96
96
  this.animationState = 'leave';
97
97
  }
98
98
  }
99
- AttachmentPreview.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.0.1", ngImport: i0, type: AttachmentPreview, deps: [{ token: i1.Directionality }, { token: i0.Renderer2 }, { token: FILE_PREVIEW_DIALOG_DATA }, { token: i2.DomSanitizer }, { token: i3.MailboxService }, { token: i4.OverlayRef }], target: i0.ɵɵFactoryTarget.Component });
100
- AttachmentPreview.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.0.1", type: AttachmentPreview, selector: "bizdoc-attachment-preview", host: { listeners: { "document:resize": "resize()", "document:keydown.escape": "close()" } }, viewQueries: [{ propertyName: "obj", first: true, predicate: ["obj"], descendants: true }, { propertyName: "img", first: true, predicate: ["img"], descendants: true, static: true }], ngImport: i0, template: "<div class=\"overlay-content\" [@slideContent]=\"animationState\" (@slideContent.start)=\"onAnimationStart($event)\"\r\n [dir]=\"dir\" (@slideContent.done)=\"onAnimationDone($event)\">\r\n <div class=\"toolbar-wrapper\" class=\"row\" [@slideDown]=\"slideDown\" *ngIf=\"!loading\">\r\n <button mat-icon-button (click)=\"close()\" bizdocTooltip=\"{{'Back' | translate}}\"><mat-icon class=\"mat-icon-rtl-mirror\">keyboard_arrow_left</mat-icon></button>\r\n <span class=\"mat-body-1\">{{data.file.fileName}}</span>\r\n <span class=\"divider\"></span>\r\n <button mat-icon-button (click)=\"rotate()\" bizdocTooltip=\"{{'Rotate' | translate }}\"><mat-icon>screen_rotation</mat-icon></button>\r\n <button mat-icon-button (click)=\"download()\" bizdocTooltip=\"{{'Download' | translate}}\"><mat-icon>save_alt</mat-icon></button>\r\n </div>\r\n <div class=\"spinner-wrapper\" *ngIf=\"loading\">\r\n <mat-spinner></mat-spinner>\r\n </div>\r\n <object (load)=\"onLoad($event)\" [data]=\"objectData\" [type]=\"data.file.contentType\" *ngIf=\"!isImage\" #obj width=\"250\"\r\n height=\"200\">\r\n </object>\r\n <img *ngIf=\"isImage\" (load)=\"onLoad($event)\" [style.opacity]=\"loading ? 0 : 1\" [@fade]=\"loading ? 'fadeOut' : 'fadeIn'\" [src]=\"objectData\" #img>\r\n</div>\r\n", styles: [":host{display:flex;flex-direction:column;align-items:center}.spinner-wrapper{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);z-index:-1}img{width:100%;max-width:500px;height:auto}.overlay-content{padding:1em}.overlay-content .toolbar-wrapper{align-items:center;color:#f5f5f5}.divider{flex:1 1 auto}\n"], dependencies: [{ kind: "directive", type: i5.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i1.Dir, selector: "[dir]", inputs: ["dir"], outputs: ["dirChange"], exportAs: ["dir"] }, { kind: "component", type: i6.MatProgressSpinner, selector: "mat-progress-spinner, mat-spinner", inputs: ["color", "mode", "value", "diameter", "strokeWidth"], exportAs: ["matProgressSpinner"] }, { kind: "component", type: i7.MatIconButton, selector: "button[mat-icon-button]", inputs: ["disabled", "disableRipple", "color"], exportAs: ["matButton"] }, { kind: "component", type: i8.MatIcon, selector: "mat-icon", inputs: ["color", "inline", "svgIcon", "fontSet", "fontIcon"], exportAs: ["matIcon"] }, { kind: "directive", type: i9.TooltipDirective, selector: "[bizdocTooltip]", inputs: ["bizdocTooltip", "bizdocTooltipTemplate", "bizdocTooltipContext", "bizdocTooltipPosition", "bizdocTooltipDuration", "bizdocTooltipDisabled"] }, { kind: "pipe", type: i10.TranslatePipe, name: "translate" }], animations: [
99
+ AttachmentPreview.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.0.4", ngImport: i0, type: AttachmentPreview, deps: [{ token: i1.Directionality }, { token: i0.Renderer2 }, { token: FILE_PREVIEW_DIALOG_DATA }, { token: i2.DomSanitizer }, { token: i3.MailboxService }, { token: i4.OverlayRef }], target: i0.ɵɵFactoryTarget.Component });
100
+ AttachmentPreview.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.0.4", type: AttachmentPreview, selector: "bizdoc-attachment-preview", host: { listeners: { "document:resize": "resize()", "document:keydown.escape": "close()" } }, viewQueries: [{ propertyName: "obj", first: true, predicate: ["obj"], descendants: true }, { propertyName: "img", first: true, predicate: ["img"], descendants: true, static: true }], ngImport: i0, template: "<div class=\"overlay-content\" [@slideContent]=\"animationState\" (@slideContent.start)=\"onAnimationStart($event)\"\r\n [dir]=\"dir\" (@slideContent.done)=\"onAnimationDone($event)\">\r\n <div class=\"toolbar-wrapper\" class=\"row\" [@slideDown]=\"slideDown\" *ngIf=\"!loading\">\r\n <button mat-icon-button (click)=\"close()\" bizdocTooltip=\"{{'Back' | translate}}\"><mat-icon class=\"mat-icon-rtl-mirror\">keyboard_arrow_left</mat-icon></button>\r\n <span class=\"mat-body-1\">{{data.file.fileName}}</span>\r\n <span class=\"divider\"></span>\r\n <button mat-icon-button (click)=\"rotate()\" bizdocTooltip=\"{{'Rotate' | translate }}\"><mat-icon>screen_rotation</mat-icon></button>\r\n <button mat-icon-button (click)=\"download()\" bizdocTooltip=\"{{'Download' | translate}}\"><mat-icon>save_alt</mat-icon></button>\r\n </div>\r\n <div class=\"spinner-wrapper\" *ngIf=\"loading\">\r\n <mat-spinner></mat-spinner>\r\n </div>\r\n <object (load)=\"onLoad($event)\" [data]=\"objectData\" [type]=\"data.file.contentType\" *ngIf=\"!isImage\" #obj width=\"250\"\r\n height=\"200\">\r\n </object>\r\n <img *ngIf=\"isImage\" (load)=\"onLoad($event)\" [style.opacity]=\"loading ? 0 : 1\" [@fade]=\"loading ? 'fadeOut' : 'fadeIn'\" [src]=\"objectData\" #img>\r\n</div>\r\n", styles: [":host{display:flex;flex-direction:column;align-items:center}.spinner-wrapper{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);z-index:-1}img{width:100%;max-width:500px;height:auto}.overlay-content{padding:1em}.overlay-content .toolbar-wrapper{align-items:center;color:#f5f5f5}.divider{flex:1 1 auto}\n"], dependencies: [{ kind: "directive", type: i5.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i1.Dir, selector: "[dir]", inputs: ["dir"], outputs: ["dirChange"], exportAs: ["dir"] }, { kind: "component", type: i6.MatProgressSpinner, selector: "mat-progress-spinner, mat-spinner", inputs: ["color", "mode", "value", "diameter", "strokeWidth"], exportAs: ["matProgressSpinner"] }, { kind: "component", type: i7.MatIconButton, selector: "button[mat-icon-button]", inputs: ["disabled", "disableRipple", "color"], exportAs: ["matButton"] }, { kind: "component", type: i8.MatIcon, selector: "mat-icon", inputs: ["color", "inline", "svgIcon", "fontSet", "fontIcon"], exportAs: ["matIcon"] }, { kind: "directive", type: i9.TooltipDirective, selector: "[bizdocTooltip]", inputs: ["bizdocTooltip", "bizdocTooltipTemplate", "bizdocTooltipContext", "bizdocTooltipPosition", "bizdocTooltipDuration", "bizdocTooltipDisabled"] }, { kind: "pipe", type: i10.TranslatePipe, name: "translate" }], animations: [
101
101
  trigger('fade', [
102
102
  state('fadeOut', style({ opacity: 0 })),
103
103
  state('fadeIn', style({ opacity: 1 })),
@@ -116,7 +116,7 @@ AttachmentPreview.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", vers
116
116
  transition('* => *', animate(ANIMATION_TIMINGS)),
117
117
  ])
118
118
  ] });
119
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.0.1", ngImport: i0, type: AttachmentPreview, decorators: [{
119
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.0.4", ngImport: i0, type: AttachmentPreview, decorators: [{
120
120
  type: Component,
121
121
  args: [{ selector: 'bizdoc-attachment-preview', animations: [
122
122
  trigger('fade', [
@@ -14,9 +14,9 @@ export class ProgressDirective {
14
14
  this.renderer.setStyle(this._progressDiv, 'width', `${this.progressIndicator}%`);
15
15
  }
16
16
  }
17
- ProgressDirective.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.0.1", ngImport: i0, type: ProgressDirective, deps: [{ token: i0.ElementRef }, { token: i0.Renderer2 }], target: i0.ɵɵFactoryTarget.Directive });
18
- ProgressDirective.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "15.0.1", type: ProgressDirective, selector: "[progressIndicator]", inputs: { progressIndicator: "progressIndicator" }, usesOnChanges: true, ngImport: i0 });
19
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.0.1", ngImport: i0, type: ProgressDirective, decorators: [{
17
+ ProgressDirective.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.0.4", ngImport: i0, type: ProgressDirective, deps: [{ token: i0.ElementRef }, { token: i0.Renderer2 }], target: i0.ɵɵFactoryTarget.Directive });
18
+ ProgressDirective.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "15.0.4", type: ProgressDirective, selector: "[progressIndicator]", inputs: { progressIndicator: "progressIndicator" }, usesOnChanges: true, ngImport: i0 });
19
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.0.4", ngImport: i0, type: ProgressDirective, decorators: [{
20
20
  type: Directive,
21
21
  args: [{ selector: '[progressIndicator]' }]
22
22
  }], ctorParameters: function () { return [{ type: i0.ElementRef }, { type: i0.Renderer2 }]; }, propDecorators: { progressIndicator: [{