@bizdoc/core 3.0.6 → 3.2.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 (651) hide show
  1. package/assets/system/Workday.svg +37 -37
  2. package/assets/themes/brown.min.css +1 -1
  3. package/assets/themes/dark.min.css +1 -1
  4. package/assets/themes/deep-purple-light-blue.min.css +1 -1
  5. package/assets/themes/deep-purple-teal.min.css +1 -1
  6. package/assets/themes/default.min.css +25 -15
  7. package/assets/themes/green.min.css +1 -1
  8. package/assets/themes/indigo-amber.min.css +1 -1
  9. package/assets/themes/indigo.min.css +1 -1
  10. package/esm2022/bizdoc-core.mjs +1 -1
  11. package/esm2022/lib/admin/admin-dismiss.service.mjs +4 -4
  12. package/esm2022/lib/admin/admin-menu.component.mjs +5 -5
  13. package/esm2022/lib/admin/architecture/cube-axes-filter.component.mjs +10 -10
  14. package/esm2022/lib/admin/architecture/declarations.mjs +3 -2
  15. package/esm2022/lib/admin/architecture/designer-element.component.mjs +25 -22
  16. package/esm2022/lib/admin/architecture/designer-privileges.component.mjs +6 -6
  17. package/esm2022/lib/admin/architecture/designer.base.mjs +11 -14
  18. package/esm2022/lib/admin/architecture/designer.component.mjs +9 -8
  19. package/esm2022/lib/admin/architecture/elements/action.component.mjs +4 -5
  20. package/esm2022/lib/admin/architecture/elements/analysis-view.component.mjs +5 -5
  21. package/esm2022/lib/admin/architecture/elements/analysis-widget.component.mjs +5 -5
  22. package/esm2022/lib/admin/architecture/elements/anomaly-rule.component.mjs +5 -5
  23. package/esm2022/lib/admin/architecture/elements/attribute.component.mjs +5 -6
  24. package/esm2022/lib/admin/architecture/elements/box-form.component.mjs +5 -5
  25. package/esm2022/lib/admin/architecture/elements/configuration-datasource.component.mjs +5 -5
  26. package/esm2022/lib/admin/architecture/elements/control.component.mjs +4 -7
  27. package/esm2022/lib/admin/architecture/elements/cube-index-utility.component.mjs +5 -5
  28. package/esm2022/lib/admin/architecture/elements/cube-view.component.mjs +5 -5
  29. package/esm2022/lib/admin/architecture/elements/cube.component.mjs +14 -15
  30. package/esm2022/lib/admin/architecture/elements/document-state-widget.component.mjs +6 -8
  31. package/esm2022/lib/admin/architecture/elements/documents-report.component.mjs +5 -5
  32. package/esm2022/lib/admin/architecture/elements/documents-widget.component.mjs +5 -5
  33. package/esm2022/lib/admin/architecture/elements/explore-view.component.mjs +5 -5
  34. package/esm2022/lib/admin/architecture/elements/folder.component.mjs +5 -6
  35. package/esm2022/lib/admin/architecture/elements/form-invite.dialog.mjs +9 -11
  36. package/esm2022/lib/admin/architecture/elements/form.component.mjs +13 -14
  37. package/esm2022/lib/admin/architecture/elements/guide.component.mjs +5 -6
  38. package/esm2022/lib/admin/architecture/elements/job.component.mjs +5 -6
  39. package/esm2022/lib/admin/architecture/elements/matrix-view.component.mjs +6 -6
  40. package/esm2022/lib/admin/architecture/elements/node.component.mjs +4 -4
  41. package/esm2022/lib/admin/architecture/elements/parallel-view.component.mjs +5 -5
  42. package/esm2022/lib/admin/architecture/elements/performance-report.component.mjs +5 -5
  43. package/esm2022/lib/admin/architecture/elements/performance-widget.component.mjs +5 -5
  44. package/esm2022/lib/admin/architecture/elements/pivot-view.component.mjs +5 -5
  45. package/esm2022/lib/admin/architecture/elements/policy.component.mjs +4 -4
  46. package/esm2022/lib/admin/architecture/elements/report.component.mjs +5 -6
  47. package/esm2022/lib/admin/architecture/elements/return-to-role-action.component.mjs +5 -5
  48. package/esm2022/lib/admin/architecture/elements/role.component.mjs +5 -6
  49. package/esm2022/lib/admin/architecture/elements/rule.component.mjs +4 -4
  50. package/esm2022/lib/admin/architecture/elements/source.component.mjs +4 -4
  51. package/esm2022/lib/admin/architecture/elements/state.component.mjs +4 -5
  52. package/esm2022/lib/admin/architecture/elements/sum-view.component.mjs +5 -5
  53. package/esm2022/lib/admin/architecture/elements/tasks-report.component.mjs +5 -5
  54. package/esm2022/lib/admin/architecture/elements/type.component.mjs +7 -8
  55. package/esm2022/lib/admin/architecture/elements/usage-report.component.mjs +6 -6
  56. package/esm2022/lib/admin/architecture/elements/utility.component.mjs +4 -4
  57. package/esm2022/lib/admin/architecture/elements/view.component.mjs +4 -4
  58. package/esm2022/lib/admin/architecture/elements/widget.component.mjs +5 -6
  59. package/esm2022/lib/admin/architecture/icon-picker.component.mjs +12 -7
  60. package/esm2022/lib/admin/core/ace.input.mjs +14 -13
  61. package/esm2022/lib/admin/core/color-picker.input.mjs +5 -5
  62. package/esm2022/lib/admin/core/localized-string.component.mjs +8 -7
  63. package/esm2022/lib/admin/core/search.input.mjs +5 -5
  64. package/esm2022/lib/admin/diff/configuration-diff.component.mjs +8 -7
  65. package/esm2022/lib/admin/document-trace/document-trace.component.mjs +19 -13
  66. package/esm2022/lib/admin/document-trace/reassign.dialog.mjs +5 -5
  67. package/esm2022/lib/admin/document-trace/timeline.mjs +1 -1
  68. package/esm2022/lib/admin/document-trace/trace-element.component.mjs +6 -6
  69. package/esm2022/lib/admin/form/designer/box-designer.component.mjs +6 -6
  70. package/esm2022/lib/admin/form/designer/declarations.mjs +1 -1
  71. package/esm2022/lib/admin/form/designer/design-control.component.mjs +4 -4
  72. package/esm2022/lib/admin/form/designer/properties.component.mjs +5 -5
  73. package/esm2022/lib/admin/form/designer/section.component.mjs +5 -5
  74. package/esm2022/lib/admin/form/designer/settings.component.mjs +4 -4
  75. package/esm2022/lib/admin/form/form.resolve.service.mjs +4 -4
  76. package/esm2022/lib/admin/form/workflow/node-ref.mjs +1 -1
  77. package/esm2022/lib/admin/form/workflow/node.component.mjs +35 -35
  78. package/esm2022/lib/admin/form/workflow/role-node.component.mjs +5 -5
  79. package/esm2022/lib/admin/form/workflow/workflow.component.mjs +10 -12
  80. package/esm2022/lib/admin/indices/manage-cube-index.component.mjs +9 -9
  81. package/esm2022/lib/admin/patterns/patterns.component.mjs +5 -5
  82. package/esm2022/lib/admin/permissions/permissions.component.mjs +5 -5
  83. package/esm2022/lib/admin/positions/positions-popup.component.mjs +8 -7
  84. package/esm2022/lib/admin/positions/positions.component.mjs +9 -9
  85. package/esm2022/lib/admin/profiler/outofoffice.component.mjs +6 -6
  86. package/esm2022/lib/admin/profiler/profiler.component.mjs +7 -7
  87. package/esm2022/lib/admin/system.service.mjs +15 -11
  88. package/esm2022/lib/admin/utility-ref.mjs +7 -5
  89. package/esm2022/lib/admin/utility-wrapper.component.mjs +4 -4
  90. package/esm2022/lib/admin/utility.pane.component.mjs +4 -4
  91. package/esm2022/lib/app.component.mjs +7 -7
  92. package/esm2022/lib/bizdoc.module.mjs +5 -5
  93. package/esm2022/lib/browse/browse-items.component.mjs +34 -33
  94. package/esm2022/lib/browse/browse.mobile.component.mjs +11 -8
  95. package/esm2022/lib/browse/browse.pane.component.mjs +9 -9
  96. package/esm2022/lib/browse/expanded-item/expanded-item.component.mjs +12 -12
  97. package/esm2022/lib/browse/filter/filter.component.mjs +27 -39
  98. package/esm2022/lib/browse/folders-menu.component.mjs +5 -5
  99. package/esm2022/lib/chat/chat-info.mjs +9 -8
  100. package/esm2022/lib/chat/chat.mobile.component.mjs +5 -5
  101. package/esm2022/lib/chat/chat.service.mjs +6 -6
  102. package/esm2022/lib/chat/contacts.component.mjs +10 -9
  103. package/esm2022/lib/chat/contacts.pane.component.mjs +4 -4
  104. package/esm2022/lib/chat/conversation.component.mjs +8 -8
  105. package/esm2022/lib/chat/conversation.pane.component.mjs +4 -4
  106. package/esm2022/lib/compose/action/action-picker.component.mjs +7 -10
  107. package/esm2022/lib/compose/action/action-ref.mjs +1 -1
  108. package/esm2022/lib/compose/action/action.base.mjs +1 -1
  109. package/esm2022/lib/compose/action/action.dialog.mjs +5 -5
  110. package/esm2022/lib/compose/action/action.pane.dialog.exp.mjs +7 -7
  111. package/esm2022/lib/compose/action/assign-action.component.mjs +5 -5
  112. package/esm2022/lib/compose/action/moveto-action.component.mjs +6 -6
  113. package/esm2022/lib/compose/action/return-action.component.mjs +5 -5
  114. package/esm2022/lib/compose/attachments/attachments.component.mjs +5 -5
  115. package/esm2022/lib/compose/attachments/preview/attachment-preview.component.mjs +5 -5
  116. package/esm2022/lib/compose/attachments/progress-button.directive.mjs +4 -4
  117. package/esm2022/lib/compose/box/box.component.mjs +5 -5
  118. package/esm2022/lib/compose/box/control.component.mjs +4 -4
  119. package/esm2022/lib/compose/box/row.component.mjs +4 -4
  120. package/esm2022/lib/compose/can-deactivate-changes.service.mjs +4 -4
  121. package/esm2022/lib/compose/comments/comment.component.mjs +18 -15
  122. package/esm2022/lib/compose/comments/comments.component.mjs +7 -7
  123. package/esm2022/lib/compose/comments/comments.pane.component.mjs +5 -5
  124. package/esm2022/lib/compose/comments/edit-comment.component.mjs +4 -4
  125. package/esm2022/lib/compose/comments/edits.component.mjs +5 -5
  126. package/esm2022/lib/compose/comments/quick-comment.component.exp.mjs +6 -6
  127. package/esm2022/lib/compose/comments/votes.component.mjs +5 -5
  128. package/esm2022/lib/compose/compose-resolve.service.mjs +4 -4
  129. package/esm2022/lib/compose/compose.mobile.component.mjs +8 -8
  130. package/esm2022/lib/compose/compose.pane.component.mjs +11 -11
  131. package/esm2022/lib/compose/copy/copy.dialog.mjs +5 -5
  132. package/esm2022/lib/compose/dismiss.service.mjs +4 -4
  133. package/esm2022/lib/compose/document-resolve.service.mjs +7 -7
  134. package/esm2022/lib/compose/document-resolver.service.mjs +4 -4
  135. package/esm2022/lib/compose/document.component.mjs +4 -4
  136. package/esm2022/lib/compose/document.mobile.component.mjs +4 -4
  137. package/esm2022/lib/compose/document.pane.component.mjs +4 -4
  138. package/esm2022/lib/compose/events/events.component.mjs +5 -5
  139. package/esm2022/lib/compose/form-ref.mjs +1 -1
  140. package/esm2022/lib/compose/form-selector/form-selector.sheet.mjs +5 -5
  141. package/esm2022/lib/compose/form.component.mjs +59 -23
  142. package/esm2022/lib/compose/new-menu.component.mjs +8 -7
  143. package/esm2022/lib/compose/overlay.component.exp.mjs +4 -4
  144. package/esm2022/lib/compose/privilage.directive.mjs +7 -7
  145. package/esm2022/lib/compose/recipient-resolver.service.mjs +4 -4
  146. package/esm2022/lib/compose/state.component.mjs +4 -4
  147. package/esm2022/lib/compose/tag/tags.component.mjs +5 -5
  148. package/esm2022/lib/compose/trace/flow.component.mjs +16 -17
  149. package/esm2022/lib/compose/trace/people.component.mjs +14 -9
  150. package/esm2022/lib/compose/trace/trace.base.mjs +6 -7
  151. package/esm2022/lib/compose/trace/trace.component.mjs +5 -5
  152. package/esm2022/lib/compose/trace/trace.pane.component.mjs +4 -4
  153. package/esm2022/lib/compose/version-compare/version-compare.component.mjs +5 -4
  154. package/esm2022/lib/compose/version-compare/version-compare.directive.mjs +14 -14
  155. package/esm2022/lib/compose/version-compare/version.pane.component.mjs +5 -5
  156. package/esm2022/lib/core/account.service.mjs +4 -4
  157. package/esm2022/lib/core/animated-icon/animated-icon.directive.mjs +4 -4
  158. package/esm2022/lib/core/animations.mjs +1 -1
  159. package/esm2022/lib/core/authentication.mjs +1 -1
  160. package/esm2022/lib/core/avatar/avatar.component.mjs +52 -43
  161. package/esm2022/lib/core/base.mjs +1 -1
  162. package/esm2022/lib/core/checkbox.mjs +19 -19
  163. package/esm2022/lib/core/colors.mjs +1 -1
  164. package/esm2022/lib/core/component-factory-resolver.mjs +5 -5
  165. package/esm2022/lib/core/configuration.mjs +1 -1
  166. package/esm2022/lib/core/datasource.service.mjs +4 -4
  167. package/esm2022/lib/core/decorators.mjs +1 -1
  168. package/esm2022/lib/core/document-factory.service.mjs +4 -11
  169. package/esm2022/lib/core/fields/address.designer.mjs +4 -4
  170. package/esm2022/lib/core/fields/address.field.mjs +31 -31
  171. package/esm2022/lib/core/fields/autocomplete.field.mjs +65 -65
  172. package/esm2022/lib/core/fields/axes-picker.designer.mjs +25 -25
  173. package/esm2022/lib/core/fields/axes-picker.field.mjs +5 -5
  174. package/esm2022/lib/core/fields/checkbox.designer.mjs +4 -4
  175. package/esm2022/lib/core/fields/checkbox.field.mjs +5 -5
  176. package/esm2022/lib/core/fields/checklist.designer.mjs +59 -59
  177. package/esm2022/lib/core/fields/checklist.field.mjs +5 -5
  178. package/esm2022/lib/core/fields/date-range.designer.mjs +4 -4
  179. package/esm2022/lib/core/fields/date-range.field.mjs +5 -5
  180. package/esm2022/lib/core/fields/date.designer.mjs +4 -4
  181. package/esm2022/lib/core/fields/date.field.mjs +5 -5
  182. package/esm2022/lib/core/fields/expression.field.mjs +30 -30
  183. package/esm2022/lib/core/fields/file.designer.mjs +4 -4
  184. package/esm2022/lib/core/fields/file.field.mjs +5 -5
  185. package/esm2022/lib/core/fields/html.designer.mjs +4 -4
  186. package/esm2022/lib/core/fields/html.field.mjs +5 -5
  187. package/esm2022/lib/core/fields/input.designer.mjs +4 -4
  188. package/esm2022/lib/core/fields/input.field.mjs +5 -5
  189. package/esm2022/lib/core/fields/localized-string.field.mjs +7 -7
  190. package/esm2022/lib/core/fields/numeric.designer.mjs +4 -4
  191. package/esm2022/lib/core/fields/numeric.field.mjs +5 -5
  192. package/esm2022/lib/core/fields/options.base.mjs +8 -8
  193. package/esm2022/lib/core/fields/options.component.mjs +5 -5
  194. package/esm2022/lib/core/fields/radio-button.designer.mjs +5 -5
  195. package/esm2022/lib/core/fields/radio-button.field.mjs +5 -5
  196. package/esm2022/lib/core/fields/select.designer.mjs +63 -63
  197. package/esm2022/lib/core/fields/select.field.mjs +5 -5
  198. package/esm2022/lib/core/fields/signature.designer.mjs +4 -4
  199. package/esm2022/lib/core/fields/signature.field.mjs +5 -5
  200. package/esm2022/lib/core/fields/switch.field.mjs +5 -5
  201. package/esm2022/lib/core/fields/tags.designer.mjs +4 -4
  202. package/esm2022/lib/core/fields/tags.field.mjs +5 -5
  203. package/esm2022/lib/core/fields/textarea.designer.mjs +4 -4
  204. package/esm2022/lib/core/fields/textarea.field.mjs +5 -5
  205. package/esm2022/lib/core/fields/time.designer.mjs +4 -4
  206. package/esm2022/lib/core/fields/time.field.mjs +5 -5
  207. package/esm2022/lib/core/fields/timespan.field.mjs +30 -30
  208. package/esm2022/lib/core/fields/yesno.designer.mjs +23 -23
  209. package/esm2022/lib/core/fields/yesno.field.mjs +5 -5
  210. package/esm2022/lib/core/firebase.service.mjs +1 -1
  211. package/esm2022/lib/core/functions.mjs +4 -1
  212. package/esm2022/lib/core/guide/guide.component.mjs +5 -5
  213. package/esm2022/lib/core/guide/guide.service.mjs +11 -7
  214. package/esm2022/lib/core/guide/help-tip.component.mjs +22 -22
  215. package/esm2022/lib/core/http.interceptor.mjs +6 -6
  216. package/esm2022/lib/core/hub.service.mjs +4 -4
  217. package/esm2022/lib/core/identity/identity.component.mjs +5 -5
  218. package/esm2022/lib/core/info/attachment-info.service.mjs +4 -4
  219. package/esm2022/lib/core/info/document-info.service.mjs +4 -4
  220. package/esm2022/lib/core/info/location-info.component.mjs +4 -4
  221. package/esm2022/lib/core/info/map-info.mjs +4 -4
  222. package/esm2022/lib/core/inputs/address.input.mjs +21 -21
  223. package/esm2022/lib/core/inputs/auto-complete.input.mjs +38 -37
  224. package/esm2022/lib/core/inputs/combination-picker-body.mjs +10 -12
  225. package/esm2022/lib/core/inputs/combination-picker.mjs +4 -5
  226. package/esm2022/lib/core/inputs/combination-pool.mjs +7 -6
  227. package/esm2022/lib/core/inputs/file.input.mjs +30 -24
  228. package/esm2022/lib/core/inputs/select.input.mjs +37 -37
  229. package/esm2022/lib/core/inputs/signature.input.mjs +4 -4
  230. package/esm2022/lib/core/inputs/time-picker.mjs +8 -8
  231. package/esm2022/lib/core/inputs/timespan.input.mjs +7 -7
  232. package/esm2022/lib/core/layout.component.mjs +11 -5
  233. package/esm2022/lib/core/lottie-animation.exp.mjs +49 -0
  234. package/esm2022/lib/core/mailbox.service.mjs +20 -14
  235. package/esm2022/lib/core/models.mjs +2 -1
  236. package/esm2022/lib/core/none.component.mjs +15 -15
  237. package/esm2022/lib/core/pipes/action.pipe.mjs +4 -4
  238. package/esm2022/lib/core/pipes/calendar.pipe.mjs +4 -4
  239. package/esm2022/lib/core/pipes/date-format.pipe.mjs +4 -4
  240. package/esm2022/lib/core/pipes/daterange.pipe.mjs +7 -7
  241. package/esm2022/lib/core/pipes/difference.pipe.mjs +4 -4
  242. package/esm2022/lib/core/pipes/duration-format.pipe.mjs +4 -4
  243. package/esm2022/lib/core/pipes/duration.pipe.mjs +4 -4
  244. package/esm2022/lib/core/pipes/filter.pipe.mjs +25 -0
  245. package/esm2022/lib/core/pipes/form.pipe.mjs +4 -4
  246. package/esm2022/lib/core/pipes/join.pipe.mjs +4 -4
  247. package/esm2022/lib/core/pipes/localized-string.pipe.mjs +4 -4
  248. package/esm2022/lib/core/pipes/role.pipe.mjs +4 -4
  249. package/esm2022/lib/core/pipes/sanitize-html.pipe.mjs +4 -4
  250. package/esm2022/lib/core/pipes/sort.pipe.mjs +8 -30
  251. package/esm2022/lib/core/pipes/state.pipe.mjs +4 -4
  252. package/esm2022/lib/core/pipes/time-ago.pipe.mjs +4 -4
  253. package/esm2022/lib/core/pipes/to-now.pipe.mjs +4 -4
  254. package/esm2022/lib/core/pipes/translate.pipe.mjs +10 -10
  255. package/esm2022/lib/core/pipes/type-value.pipe.mjs +4 -4
  256. package/esm2022/lib/core/pipes/user-name.pipe.mjs +4 -4
  257. package/esm2022/lib/core/popup/popup-ref.mjs +1 -1
  258. package/esm2022/lib/core/popup/popup.component.mjs +4 -4
  259. package/esm2022/lib/core/popup/popup.service.mjs +7 -5
  260. package/esm2022/lib/core/popup/tooltip.directive.mjs +10 -11
  261. package/esm2022/lib/core/prompt/ask/ask.dialog.mjs +4 -4
  262. package/esm2022/lib/core/prompt/mask/mask.component.mjs +4 -4
  263. package/esm2022/lib/core/prompt.service.mjs +6 -6
  264. package/esm2022/lib/core/router.mjs +9 -9
  265. package/esm2022/lib/core/save-changes.dialog.mjs +4 -4
  266. package/esm2022/lib/core/session.service.mjs +18 -9
  267. package/esm2022/lib/core/slots/pane-ref.mjs +2 -2
  268. package/esm2022/lib/core/slots/router.directive.mjs +4 -4
  269. package/esm2022/lib/core/slots/router.service.mjs +6 -5
  270. package/esm2022/lib/core/slots/slots.component.mjs +26 -23
  271. package/esm2022/lib/core/sticky-toolbar.exp.mjs +9 -6
  272. package/esm2022/lib/core/tagging/documents.component.mjs +5 -5
  273. package/esm2022/lib/core/tagging/edit-input.component.mjs +17 -14
  274. package/esm2022/lib/core/tagging/emoji.component.mjs +4 -4
  275. package/esm2022/lib/core/tagging/tagging-item.directive.mjs +4 -4
  276. package/esm2022/lib/core/tagging/tagging.component-base.mjs +4 -4
  277. package/esm2022/lib/core/tagging/tagging.directive.mjs +5 -5
  278. package/esm2022/lib/core/tagging/tagging.pipe.mjs +4 -4
  279. package/esm2022/lib/core/tagging/users.component.mjs +5 -5
  280. package/esm2022/lib/core/translate.service.mjs +5 -4
  281. package/esm2022/lib/core/translations.mjs +8 -6
  282. package/esm2022/lib/core/virtual-tabs.component.exp.mjs +7 -7
  283. package/esm2022/lib/core/window-title.service.mjs +14 -6
  284. package/esm2022/lib/cube/accum/accum.component.mjs +4 -4
  285. package/esm2022/lib/cube/chart/chart.component.mjs +8 -7
  286. package/esm2022/lib/cube/cube-info.service.mjs +13 -10
  287. package/esm2022/lib/cube/cube-menu.component.mjs +5 -5
  288. package/esm2022/lib/cube/cube-view.component.mjs +5 -5
  289. package/esm2022/lib/cube/cube.service.mjs +21 -19
  290. package/esm2022/lib/cube/declarations.mjs +1 -1
  291. package/esm2022/lib/cube/explore/document-item.component.mjs +4 -4
  292. package/esm2022/lib/cube/explore/explore-item.component.mjs +4 -4
  293. package/esm2022/lib/cube/explore/explore-items.component.mjs +8 -8
  294. package/esm2022/lib/cube/explore/explore.pane.component.mjs +5 -5
  295. package/esm2022/lib/cube/explore/item-resolver.service.mjs +7 -7
  296. package/esm2022/lib/cube/explore/item.pane.component.mjs +5 -5
  297. package/esm2022/lib/cube/filter/filter-tags.component.exp.mjs +5 -5
  298. package/esm2022/lib/cube/filter/filter.component.mjs +14 -13
  299. package/esm2022/lib/cube/grid/grid.component.mjs +9 -8
  300. package/esm2022/lib/cube/matrix/matrix.base.mjs +20 -18
  301. package/esm2022/lib/cube/matrix/matrix.mobile.component.mjs +5 -5
  302. package/esm2022/lib/cube/matrix/matrix.pane.component.mjs +6 -6
  303. package/esm2022/lib/cube/matrix/popup.component.mjs +5 -5
  304. package/esm2022/lib/cube/matrix/table.component.mjs +10 -9
  305. package/esm2022/lib/cube/parallel/item.mjs +1 -2
  306. package/esm2022/lib/cube/parallel/parallel.component.mjs +5 -5
  307. package/esm2022/lib/cube/pivot/pivot.component.mjs +16 -7
  308. package/esm2022/lib/cube/spreadsheet/spreadsheet.component.mjs +6 -6
  309. package/esm2022/lib/cube/spreadsheet/spreadsheet.container.exp.mjs +4 -4
  310. package/esm2022/lib/cube/sum/sum.component.mjs +20 -19
  311. package/esm2022/lib/cube/view-base.mjs +5 -5
  312. package/esm2022/lib/cube/view.mobile.component.mjs +6 -6
  313. package/esm2022/lib/cube/view.pane.component.mjs +5 -5
  314. package/esm2022/lib/dashboard/actions/actions.widget.mjs +7 -6
  315. package/esm2022/lib/dashboard/cube/accum-cube.widget.mjs +4 -8
  316. package/esm2022/lib/dashboard/cube/compare.widget.mjs +5 -7
  317. package/esm2022/lib/dashboard/cube/cube-analysis.base.mjs +8 -6
  318. package/esm2022/lib/dashboard/cube/cube-analysis.widget.mjs +4 -4
  319. package/esm2022/lib/dashboard/cube/cube-chart.widget.mjs +5 -4
  320. package/esm2022/lib/dashboard/cube/document-state.widget.mjs +6 -5
  321. package/esm2022/lib/dashboard/cube/documents.widget.mjs +4 -4
  322. package/esm2022/lib/dashboard/cube/filter/filter.component.mjs +4 -4
  323. package/esm2022/lib/dashboard/dashboard.component.mjs +5 -5
  324. package/esm2022/lib/dashboard/dashboard.pane.component.mjs +4 -4
  325. package/esm2022/lib/dashboard/recents/recents.widget.mjs +13 -16
  326. package/esm2022/lib/dashboard/score/activity.widget.mjs +7 -6
  327. package/esm2022/lib/dashboard/score/compare-groups.widget.mjs +12 -5
  328. package/esm2022/lib/dashboard/score/peers-performance.widget.mjs +9 -8
  329. package/esm2022/lib/dashboard/score/pending-results.widget.mjs +5 -5
  330. package/esm2022/lib/dashboard/score/personal-score.widget.mjs +19 -18
  331. package/esm2022/lib/dashboard/widget-item.component.mjs +4 -4
  332. package/esm2022/lib/dashboard/widget-ref.mjs +1 -1
  333. package/esm2022/lib/designer.module.mjs +5 -5
  334. package/esm2022/lib/desktop.module.mjs +8 -12
  335. package/esm2022/lib/home/about/about.dialog.mjs +6 -6
  336. package/esm2022/lib/home/home-base.component.mjs +18 -10
  337. package/esm2022/lib/home/home.desktop.component.mjs +12 -22
  338. package/esm2022/lib/home/home.mobile.component.mjs +29 -32
  339. package/esm2022/lib/home/notifications/notifications.component.mjs +22 -24
  340. package/esm2022/lib/home/outofoffice/outofoffice.component.mjs +10 -10
  341. package/esm2022/lib/home/sign/sign.component.mjs +17 -21
  342. package/esm2022/lib/impersonate/impersonate.component.mjs +36 -34
  343. package/esm2022/lib/mobile.module.mjs +8 -11
  344. package/esm2022/lib/modules/chart.module.mjs +13 -11
  345. package/esm2022/lib/modules/circular-gauge.module.mjs +9 -7
  346. package/esm2022/lib/modules/date.adapter.mjs +1 -1
  347. package/esm2022/lib/modules/datepicker.intl.mjs +4 -4
  348. package/esm2022/lib/modules/dayjs.module.mjs +5 -5
  349. package/esm2022/lib/modules/diagram.module.mjs +9 -7
  350. package/esm2022/lib/modules/gantt.module.mjs +11 -9
  351. package/esm2022/lib/modules/grid.module.mjs +9 -7
  352. package/esm2022/lib/modules/linear-gauge.module.mjs +5 -5
  353. package/esm2022/lib/modules/material.module.mjs +5 -5
  354. package/esm2022/lib/modules/paginator.intl.mjs +4 -4
  355. package/esm2022/lib/modules/pivot.module.mjs +9 -7
  356. package/esm2022/lib/modules/schedule.module.mjs +9 -7
  357. package/esm2022/lib/modules/spreadsheet.module.mjs +5 -5
  358. package/esm2022/lib/modules/stepper.intl.mjs +4 -4
  359. package/esm2022/lib/modules/texteditor.module.mjs +7 -6
  360. package/esm2022/lib/notifications/filter.component.mjs +4 -4
  361. package/esm2022/lib/notifications/notifications-table.component.mjs +7 -8
  362. package/esm2022/lib/notifications/notifications.component-base.mjs +1 -1
  363. package/esm2022/lib/notifications/notifications.mobile.component.mjs +4 -4
  364. package/esm2022/lib/notifications/notifications.pane.component.mjs +4 -4
  365. package/esm2022/lib/notifications/notifications.service.mjs +13 -6
  366. package/esm2022/lib/notifications/types/commented.notification.mjs +17 -17
  367. package/esm2022/lib/notifications/types/cube-anomaly.notification.mjs +4 -4
  368. package/esm2022/lib/notifications/types/escalated.notification.mjs +4 -4
  369. package/esm2022/lib/notifications/types/invite.notification.mjs +4 -4
  370. package/esm2022/lib/notifications/types/liked.notification.mjs +17 -17
  371. package/esm2022/lib/notifications/types/long-running-task.notification.mjs +4 -4
  372. package/esm2022/lib/notifications/types/notification-base.mjs +4 -4
  373. package/esm2022/lib/notifications/types/nudge.notification.mjs +4 -4
  374. package/esm2022/lib/notifications/types/state-changed.notification.mjs +4 -4
  375. package/esm2022/lib/notifications/types/tagged.notification.mjs +7 -7
  376. package/esm2022/lib/notifications/types/text.notification.mjs +4 -4
  377. package/esm2022/lib/notifications/types/upcoming-event.notification.mjs +4 -4
  378. package/esm2022/lib/options/options.component.mjs +91 -49
  379. package/esm2022/lib/options/options.desktop.component.mjs +26 -0
  380. package/esm2022/lib/options/options.mobile.component.mjs +23 -0
  381. package/esm2022/lib/reports/arguments-component.mjs +4 -4
  382. package/esm2022/lib/reports/cube/documents.component.mjs +4 -4
  383. package/esm2022/lib/reports/cube/grid-documents.component.mjs +4 -4
  384. package/esm2022/lib/reports/cube/performance-hilo.component.mjs +5 -5
  385. package/esm2022/lib/reports/cube/performance-wind.component.mjs +4 -4
  386. package/esm2022/lib/reports/cube/table-documents.component.mjs +7 -6
  387. package/esm2022/lib/reports/cube/usage-args.component.mjs +6 -5
  388. package/esm2022/lib/reports/cube/usage-base.mjs +8 -8
  389. package/esm2022/lib/reports/cube/usage-chart.component.mjs +5 -5
  390. package/esm2022/lib/reports/cube/usage-pivot.component.mjs +5 -5
  391. package/esm2022/lib/reports/cube/usage.component.mjs +4 -4
  392. package/esm2022/lib/reports/report-ref.mjs +1 -1
  393. package/esm2022/lib/reports/report-viewer.component.mjs +5 -5
  394. package/esm2022/lib/reports/report.mobile.component.mjs +5 -5
  395. package/esm2022/lib/reports/report.pane.component.mjs +5 -5
  396. package/esm2022/lib/reports/reports-menu.component.mjs +5 -5
  397. package/esm2022/lib/reports/substitution/substitution.component.mjs +5 -5
  398. package/esm2022/lib/reports/table/table-view.component.mjs +5 -5
  399. package/esm2022/lib/reports/tasks/tasks.component.mjs +4 -4
  400. package/esm2022/lib/routes.desktop.mjs +24 -5
  401. package/esm2022/lib/routes.mobile.mjs +12 -2
  402. package/esm2022/lib/scheduler/schedule.component.mjs +5 -5
  403. package/esm2022/lib/scheduler/scheduler.mobile.component.mjs +4 -4
  404. package/esm2022/lib/scheduler/scheduler.pane.component.mjs +4 -4
  405. package/esm2022/lib/search/cube.component.mjs +8 -9
  406. package/esm2022/lib/search/declarations.mjs +1 -1
  407. package/esm2022/lib/search/document.component.mjs +4 -4
  408. package/esm2022/lib/search/guide.component.mjs +4 -4
  409. package/esm2022/lib/search/path.component.mjs +15 -15
  410. package/esm2022/lib/search/search.service.mjs +5 -5
  411. package/esm2022/lib/shared.module.mjs +17 -17
  412. package/esm2022/lib/system.module.mjs +5 -5
  413. package/esm2022/lib/views/cube/chart.component.mjs +5 -5
  414. package/esm2022/lib/views/cube/cube-base.mjs +4 -4
  415. package/esm2022/lib/views/cube/explore.component.mjs +6 -6
  416. package/esm2022/lib/views/cube/matrix.component.mjs +7 -7
  417. package/esm2022/lib/views/cube/parallel.component.mjs +5 -5
  418. package/esm2022/lib/views/cube/pivot.component.mjs +5 -5
  419. package/esm2022/lib/views/cube/sum.component.mjs +5 -5
  420. package/esm2022/lib/views/cube/view.component.mjs +7 -7
  421. package/esm2022/lib/views/document-view-ref.mjs +1 -1
  422. package/esm2022/lib/views/timeline/timeline.component.mjs +7 -8
  423. package/esm2022/lib/views/view-item.component.mjs +4 -4
  424. package/esm2022/lib/views/views.component.mjs +5 -5
  425. package/esm2022/lib/views/views.mobile.component.mjs +6 -6
  426. package/esm2022/lib/views/views.pane.component.mjs +8 -8
  427. package/esm2022/public-api.mjs +4 -3
  428. package/fesm2022/bizdoc-core.mjs +3819 -3701
  429. package/fesm2022/bizdoc-core.mjs.map +1 -1
  430. package/lib/admin/architecture/cube-axes-filter.component.d.ts +4 -1
  431. package/lib/admin/architecture/declarations.d.ts +14 -9
  432. package/lib/admin/architecture/designer-element.component.d.ts +1 -0
  433. package/lib/admin/architecture/designer-privileges.component.d.ts +4 -2
  434. package/lib/admin/architecture/designer.base.d.ts +1 -4
  435. package/lib/admin/architecture/designer.component.d.ts +3 -3
  436. package/lib/admin/architecture/elements/action.component.d.ts +13 -13
  437. package/lib/admin/architecture/elements/analysis-view.component.d.ts +8 -8
  438. package/lib/admin/architecture/elements/analysis-widget.component.d.ts +7 -7
  439. package/lib/admin/architecture/elements/anomaly-rule.component.d.ts +3 -3
  440. package/lib/admin/architecture/elements/attribute.component.d.ts +1 -1
  441. package/lib/admin/architecture/elements/box-form.component.d.ts +5 -5
  442. package/lib/admin/architecture/elements/configuration-datasource.component.d.ts +1 -1
  443. package/lib/admin/architecture/elements/control.component.d.ts +1 -2
  444. package/lib/admin/architecture/elements/cube-index-utility.component.d.ts +3 -4
  445. package/lib/admin/architecture/elements/cube-view.component.d.ts +4 -4
  446. package/lib/admin/architecture/elements/cube.component.d.ts +9 -10
  447. package/lib/admin/architecture/elements/document-state-widget.component.d.ts +3 -6
  448. package/lib/admin/architecture/elements/documents-report.component.d.ts +4 -5
  449. package/lib/admin/architecture/elements/documents-widget.component.d.ts +5 -5
  450. package/lib/admin/architecture/elements/explore-view.component.d.ts +4 -4
  451. package/lib/admin/architecture/elements/folder.component.d.ts +2 -2
  452. package/lib/admin/architecture/elements/form-invite.dialog.d.ts +7 -7
  453. package/lib/admin/architecture/elements/form.component.d.ts +10 -9
  454. package/lib/admin/architecture/elements/guide.component.d.ts +1 -1
  455. package/lib/admin/architecture/elements/matrix-view.component.d.ts +16 -16
  456. package/lib/admin/architecture/elements/parallel-view.component.d.ts +9 -10
  457. package/lib/admin/architecture/elements/performance-report.component.d.ts +2 -3
  458. package/lib/admin/architecture/elements/performance-widget.component.d.ts +4 -5
  459. package/lib/admin/architecture/elements/pivot-view.component.d.ts +9 -10
  460. package/lib/admin/architecture/elements/report.component.d.ts +1 -1
  461. package/lib/admin/architecture/elements/return-to-role-action.component.d.ts +1 -1
  462. package/lib/admin/architecture/elements/role.component.d.ts +4 -4
  463. package/lib/admin/architecture/elements/source.component.d.ts +2 -3
  464. package/lib/admin/architecture/elements/state.component.d.ts +4 -4
  465. package/lib/admin/architecture/elements/sum-view.component.d.ts +7 -8
  466. package/lib/admin/architecture/elements/tasks-report.component.d.ts +4 -4
  467. package/lib/admin/architecture/elements/type.component.d.ts +8 -4
  468. package/lib/admin/architecture/elements/usage-report.component.d.ts +7 -7
  469. package/lib/admin/architecture/elements/widget.component.d.ts +1 -1
  470. package/lib/admin/architecture/icon-picker.component.d.ts +5 -3
  471. package/lib/admin/core/ace.input.d.ts +2 -5
  472. package/lib/admin/core/localized-string.component.d.ts +3 -2
  473. package/lib/admin/document-trace/document-trace.component.d.ts +6 -5
  474. package/lib/admin/document-trace/reassign.dialog.d.ts +2 -2
  475. package/lib/admin/document-trace/timeline.d.ts +2 -2
  476. package/lib/admin/form/designer/box-designer.component.d.ts +11 -11
  477. package/lib/admin/form/designer/section.component.d.ts +5 -5
  478. package/lib/admin/form/workflow/node-ref.d.ts +1 -1
  479. package/lib/admin/form/workflow/node.component.d.ts +3 -2
  480. package/lib/admin/form/workflow/role-node.component.d.ts +11 -11
  481. package/lib/admin/form/workflow/workflow.component.d.ts +5 -4
  482. package/lib/admin/indices/manage-cube-index.component.d.ts +3 -3
  483. package/lib/admin/patterns/patterns.component.d.ts +2 -2
  484. package/lib/admin/positions/positions-popup.component.d.ts +1 -1
  485. package/lib/admin/positions/positions.component.d.ts +6 -6
  486. package/lib/admin/profiler/outofoffice.component.d.ts +15 -15
  487. package/lib/admin/profiler/profiler.component.d.ts +3 -3
  488. package/lib/admin/system.service.d.ts +11 -12
  489. package/lib/admin/utility-ref.d.ts +2 -2
  490. package/lib/browse/browse-items.component.d.ts +6 -7
  491. package/lib/browse/browse.mobile.component.d.ts +2 -2
  492. package/lib/browse/browse.pane.component.d.ts +2 -2
  493. package/lib/browse/filter/filter.component.d.ts +10 -11
  494. package/lib/chat/chat-info.d.ts +1 -1
  495. package/lib/chat/chat.service.d.ts +1 -1
  496. package/lib/chat/conversation.component.d.ts +2 -2
  497. package/lib/compose/action/action.base.d.ts +2 -1
  498. package/lib/compose/action/assign-action.component.d.ts +5 -5
  499. package/lib/compose/action/moveto-action.component.d.ts +3 -3
  500. package/lib/compose/action/return-action.component.d.ts +4 -4
  501. package/lib/compose/box/box.component.d.ts +1 -1
  502. package/lib/compose/comments/comments.component.d.ts +4 -4
  503. package/lib/compose/compose.mobile.component.d.ts +5 -5
  504. package/lib/compose/compose.pane.component.d.ts +3 -3
  505. package/lib/compose/copy/copy.dialog.d.ts +1 -1
  506. package/lib/compose/form-ref.d.ts +5 -5
  507. package/lib/compose/form.component.d.ts +36 -2
  508. package/lib/compose/new-menu.component.d.ts +2 -1
  509. package/lib/compose/privilage.directive.d.ts +1 -1
  510. package/lib/compose/tag/tags.component.d.ts +1 -1
  511. package/lib/compose/trace/flow.component.d.ts +1 -0
  512. package/lib/compose/trace/people.component.d.ts +5 -2
  513. package/lib/compose/trace/trace.base.d.ts +1 -1
  514. package/lib/compose/version-compare/version-compare.directive.d.ts +1 -1
  515. package/lib/core/account.service.d.ts +1 -1
  516. package/lib/core/authentication.d.ts +1 -1
  517. package/lib/core/avatar/avatar.component.d.ts +14 -11
  518. package/lib/core/base.d.ts +9 -9
  519. package/lib/core/datasource.service.d.ts +1 -1
  520. package/lib/core/document-factory.service.d.ts +0 -1
  521. package/lib/core/fields/address.designer.d.ts +3 -3
  522. package/lib/core/fields/address.field.d.ts +1 -1
  523. package/lib/core/fields/autocomplete.field.d.ts +5 -5
  524. package/lib/core/fields/axes-picker.designer.d.ts +3 -3
  525. package/lib/core/fields/axes-picker.field.d.ts +1 -1
  526. package/lib/core/fields/checkbox.designer.d.ts +2 -2
  527. package/lib/core/fields/checkbox.field.d.ts +1 -1
  528. package/lib/core/fields/checklist.designer.d.ts +4 -4
  529. package/lib/core/fields/checklist.field.d.ts +1 -2
  530. package/lib/core/fields/date-range.designer.d.ts +6 -6
  531. package/lib/core/fields/date-range.field.d.ts +2 -2
  532. package/lib/core/fields/date.designer.d.ts +5 -5
  533. package/lib/core/fields/file.designer.d.ts +3 -3
  534. package/lib/core/fields/html.designer.d.ts +4 -4
  535. package/lib/core/fields/input.designer.d.ts +8 -9
  536. package/lib/core/fields/numeric.designer.d.ts +7 -7
  537. package/lib/core/fields/options.base.d.ts +1 -1
  538. package/lib/core/fields/radio-button.designer.d.ts +3 -3
  539. package/lib/core/fields/radio-button.field.d.ts +2 -3
  540. package/lib/core/fields/select.designer.d.ts +5 -5
  541. package/lib/core/fields/select.field.d.ts +1 -2
  542. package/lib/core/fields/signature.designer.d.ts +2 -2
  543. package/lib/core/fields/switch.field.d.ts +1 -1
  544. package/lib/core/fields/textarea.designer.d.ts +6 -6
  545. package/lib/core/fields/time.designer.d.ts +5 -5
  546. package/lib/core/fields/yesno.designer.d.ts +3 -3
  547. package/lib/core/fields/yesno.field.d.ts +1 -1
  548. package/lib/core/firebase.service.d.ts +1 -1
  549. package/lib/core/functions.d.ts +7 -4
  550. package/lib/core/guide/help-tip.component.d.ts +1 -1
  551. package/lib/core/http.interceptor.d.ts +1 -1
  552. package/lib/core/hub.service.d.ts +2 -2
  553. package/lib/core/inputs/address.input.d.ts +5 -4
  554. package/lib/core/inputs/auto-complete.input.d.ts +4 -4
  555. package/lib/core/inputs/combination-picker-body.d.ts +2 -2
  556. package/lib/core/inputs/file.input.d.ts +4 -4
  557. package/lib/core/inputs/time-picker.d.ts +2 -2
  558. package/lib/core/inputs/timespan.input.d.ts +7 -7
  559. package/lib/core/{lottie-animation.d.ts → lottie-animation.exp.d.ts} +0 -1
  560. package/lib/core/mailbox.service.d.ts +2 -3
  561. package/lib/core/models.d.ts +6 -5
  562. package/lib/core/pipes/filter.pipe.d.ts +7 -0
  563. package/lib/core/pipes/localized-string.pipe.d.ts +1 -1
  564. package/lib/core/pipes/sort.pipe.d.ts +1 -6
  565. package/lib/core/pipes/time-ago.pipe.d.ts +1 -1
  566. package/lib/core/pipes/user-name.pipe.d.ts +1 -1
  567. package/lib/core/popup/popup-ref.d.ts +4 -4
  568. package/lib/core/popup/tooltip.directive.d.ts +2 -3
  569. package/lib/core/router.d.ts +3 -3
  570. package/lib/core/session.service.d.ts +10 -7
  571. package/lib/core/slots/pane-ref.d.ts +18 -18
  572. package/lib/core/slots/router.directive.d.ts +2 -2
  573. package/lib/core/slots/router.service.d.ts +3 -3
  574. package/lib/core/slots/slots.component.d.ts +3 -3
  575. package/lib/core/sticky-toolbar.exp.d.ts +1 -0
  576. package/lib/core/tagging/edit-input.component.d.ts +5 -5
  577. package/lib/core/tagging/emoji.component.d.ts +1 -1
  578. package/lib/core/tagging/tagging.component-base.d.ts +1 -1
  579. package/lib/core/tagging/tagging.directive.d.ts +1 -1
  580. package/lib/core/tagging/tagging.pipe.d.ts +1 -1
  581. package/lib/core/translate.service.d.ts +2 -2
  582. package/lib/core/translations.d.ts +2 -1049
  583. package/lib/core/virtual-tabs.component.exp.d.ts +2 -2
  584. package/lib/core/window-title.service.d.ts +2 -1
  585. package/lib/cube/accum/accum.component.d.ts +1 -1
  586. package/lib/cube/chart/chart.component.d.ts +5 -5
  587. package/lib/cube/cube-info.service.d.ts +1 -1
  588. package/lib/cube/cube.service.d.ts +2 -2
  589. package/lib/cube/declarations.d.ts +3 -3
  590. package/lib/cube/explore/explore-items.component.d.ts +2 -2
  591. package/lib/cube/filter/filter.component.d.ts +1 -1
  592. package/lib/cube/grid/grid.component.d.ts +4 -4
  593. package/lib/cube/matrix/matrix.base.d.ts +9 -8
  594. package/lib/cube/matrix/matrix.pane.component.d.ts +2 -1
  595. package/lib/cube/matrix/table.component.d.ts +3 -3
  596. package/lib/cube/pivot/pivot.component.d.ts +6 -7
  597. package/lib/cube/spreadsheet/spreadsheet.component.d.ts +3 -3
  598. package/lib/cube/sum/sum.component.d.ts +5 -5
  599. package/lib/cube/view-base.d.ts +3 -2
  600. package/lib/cube/view.mobile.component.d.ts +1 -1
  601. package/lib/dashboard/cube/accum-cube.widget.d.ts +0 -1
  602. package/lib/dashboard/cube/cube-analysis.base.d.ts +9 -6
  603. package/lib/dashboard/cube/filter/filter.component.d.ts +3 -2
  604. package/lib/dashboard/recents/recents.widget.d.ts +5 -6
  605. package/lib/dashboard/score/activity.widget.d.ts +1 -0
  606. package/lib/dashboard/score/peers-performance.widget.d.ts +1 -0
  607. package/lib/dashboard/score/personal-score.widget.d.ts +2 -4
  608. package/lib/desktop.module.d.ts +5 -6
  609. package/lib/home/about/about.dialog.d.ts +2 -2
  610. package/lib/home/home-base.component.d.ts +2 -0
  611. package/lib/home/home.desktop.component.d.ts +6 -9
  612. package/lib/home/home.mobile.component.d.ts +4 -6
  613. package/lib/home/notifications/notifications.component.d.ts +3 -5
  614. package/lib/home/outofoffice/outofoffice.component.d.ts +3 -3
  615. package/lib/home/sign/sign.component.d.ts +4 -2
  616. package/lib/impersonate/impersonate.component.d.ts +11 -12
  617. package/lib/mobile.module.d.ts +3 -3
  618. package/lib/modules/chart.module.d.ts +1 -0
  619. package/lib/modules/circular-gauge.module.d.ts +1 -0
  620. package/lib/modules/diagram.module.d.ts +1 -0
  621. package/lib/modules/gantt.module.d.ts +1 -0
  622. package/lib/modules/grid.module.d.ts +1 -0
  623. package/lib/modules/pivot.module.d.ts +1 -0
  624. package/lib/modules/schedule.module.d.ts +1 -0
  625. package/lib/notifications/filter.component.d.ts +2 -2
  626. package/lib/options/options.component.d.ts +54 -31
  627. package/lib/options/options.desktop.component.d.ts +10 -0
  628. package/lib/options/options.mobile.component.d.ts +9 -0
  629. package/lib/reports/arguments-component.d.ts +2 -2
  630. package/lib/reports/cube/performance-hilo.component.d.ts +1 -1
  631. package/lib/reports/cube/performance-wind.component.d.ts +2 -2
  632. package/lib/reports/cube/usage-args.component.d.ts +3 -1
  633. package/lib/reports/cube/usage-base.d.ts +9 -7
  634. package/lib/reports/cube/usage-pivot.component.d.ts +1 -1
  635. package/lib/reports/report.mobile.component.d.ts +3 -1
  636. package/lib/search/cube.component.d.ts +1 -1
  637. package/lib/search/declarations.d.ts +2 -2
  638. package/lib/shared.module.d.ts +154 -153
  639. package/lib/views/cube/chart.component.d.ts +2 -2
  640. package/lib/views/cube/cube-base.d.ts +6 -6
  641. package/lib/views/cube/sum.component.d.ts +2 -2
  642. package/lib/views/timeline/timeline.component.d.ts +3 -2
  643. package/lib/views/views.component.d.ts +1 -1
  644. package/package.json +7 -7
  645. package/public-api.d.ts +3 -2
  646. package/assets/themes/readme.md +0 -0
  647. package/esm2022/lib/core/lottie-animation.mjs +0 -48
  648. package/esm2022/lib/home/options/options.component.mjs +0 -97
  649. package/esm2022/lib/options/options.service.mjs +0 -42
  650. package/lib/home/options/options.component.d.ts +0 -45
  651. package/lib/options/options.service.d.ts +0 -14
@@ -28,7 +28,6 @@ export class GuideDesignComponent extends DesignerTypeElementComponent {
28
28
  this.model.steps = [];
29
29
  else if (this.mode !== 'widget')
30
30
  this.model.steps.forEach(s => this.steps.push(this.newStep(s), { emitEvent: false }));
31
- super.ngOnInit();
32
31
  }
33
32
  newStep(step) {
34
33
  return this._fb.group({
@@ -44,11 +43,11 @@ export class GuideDesignComponent extends DesignerTypeElementComponent {
44
43
  })
45
44
  });
46
45
  }
47
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.3", ngImport: i0, type: GuideDesignComponent, deps: null, target: i0.ɵɵFactoryTarget.Component }); }
48
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "18.2.3", type: GuideDesignComponent, selector: "ng-component", usesInheritance: true, ngImport: i0, template: "<bizdoc-designer-element [form]=\"form\" [privileges]=\"true\"\n [context]=\"context\">\n <ng-template bizdocEditContent>\n <ng-container [formGroup]=\"form\">\n <h2 class=\"mat-h2 row\">\n {{'Steps'|translate}}\n <span class=\"divider\"></span>\n <button mat-icon-button (click)=\"add(steps, newStep(), 'Step', stepform)\" [bizdocTooltip]=\"'Add'|translate\" type=\"button\"><mat-icon>add_circle_outline</mat-icon></button>\n </h2>\n <table formArrayName=\"steps\" class=\"mat-mdc-table\" cdkDropList (cdkDropListDropped)=\"drop($event, steps)\">\n @for (s of steps.controls; track s; let index = $index) {\n <tr class=\"mat-mdc-row\" [formGroup]=\"s\" cdkDrag>\n <td class=\"mat-mdc-cell\">\n <mat-icon cdkDragHandle>drag_indicator</mat-icon>\n </td>\n <td class=\"mat-mdc-cell\" width=\"99%\">\n {{s.controls.title.value || s.controls.content.value }}\n </td>\n <td class=\"mat-mdc-cell nowrap\">\n <button mat-icon-button (click)=\"edit(s, 'Step', 'step')\" [bizdocTooltip]=\"'Edit'|translate\" type=\"button\"><mat-icon>edit</mat-icon></button>\n <button mat-icon-button (click)=\"steps.removeAt(index)\" [bizdocTooltip]=\"'Remove'|translate\" type=\"button\"><mat-icon>delete</mat-icon></button>\n </td>\n </tr>\n }\n </table>\n </ng-container>\n </ng-template>\n <ng-template bizdocCustomContent=\"step\" let-form=\"form\">\n <ng-container [formGroup]=\"form\">\n <mat-form-field class=\"flex\">\n <mat-label>{{'Title'|translate}}</mat-label>\n <input matInput formControlName=\"title\" />\n </mat-form-field>\n <mat-form-field class=\"flex\">\n <mat-label>{{'Content'|translate}}</mat-label>\n <input matInput formControlName=\"content\" required />\n @if (form.controls.content.hasError('required')) {\n <mat-error [innerHTML]=\"'RequiredErr'|translate:('Content'|translate)\"></mat-error>\n }\n </mat-form-field>\n <mat-form-field class=\"flex\">\n <mat-label>{{'Selector'|translate}}</mat-label>\n <input matInput formControlName=\"selector\" />\n </mat-form-field>\n <mat-form-field class=\"flex\">\n <mat-label>{{'Position'|translate}}</mat-label>\n <mat-select formControlName=\"position\">\n <mat-option value=\"Above\">{{'Above'|translate}}</mat-option>\n <mat-option value=\"Start\">{{'Start'|translate}}</mat-option>\n <mat-option value=\"End\">{{'End'|translate}}</mat-option>\n <mat-option value=\"Below\">{{'Below'|translate}}</mat-option>\n </mat-select>\n </mat-form-field>\n <mat-checkbox formControlName=\"execute\">{{'Execute'|translate}}</mat-checkbox>\n <!--privileges-->\n <bizdoc-designer-privileges [form]=\"form.controls.privileges\"></bizdoc-designer-privileges>\n </ng-container>\n </ng-template>\n</bizdoc-designer-element>\n", dependencies: [{ 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.FormGroupDirective, selector: "[formGroup]", inputs: ["formGroup"], outputs: ["ngSubmit"], exportAs: ["ngForm"] }, { kind: "directive", type: i1.FormControlName, selector: "[formControlName]", inputs: ["formControlName", "disabled", "ngModel"], outputs: ["ngModelChange"] }, { kind: "directive", type: i1.FormArrayName, selector: "[formArrayName]", inputs: ["formArrayName"] }, { kind: "directive", type: i2.CdkDropList, selector: "[cdkDropList], cdk-drop-list", inputs: ["cdkDropListConnectedTo", "cdkDropListData", "cdkDropListOrientation", "id", "cdkDropListLockAxis", "cdkDropListDisabled", "cdkDropListSortingDisabled", "cdkDropListEnterPredicate", "cdkDropListSortPredicate", "cdkDropListAutoScrollDisabled", "cdkDropListAutoScrollStep", "cdkDropListElementContainer"], outputs: ["cdkDropListDropped", "cdkDropListEntered", "cdkDropListExited", "cdkDropListSorted"], exportAs: ["cdkDropList"] }, { kind: "directive", type: i2.CdkDrag, selector: "[cdkDrag]", inputs: ["cdkDragData", "cdkDragLockAxis", "cdkDragRootElement", "cdkDragBoundary", "cdkDragStartDelay", "cdkDragFreeDragPosition", "cdkDragDisabled", "cdkDragConstrainPosition", "cdkDragPreviewClass", "cdkDragPreviewContainer", "cdkDragScale"], outputs: ["cdkDragStarted", "cdkDragReleased", "cdkDragEnded", "cdkDragEntered", "cdkDragExited", "cdkDragDropped", "cdkDragMoved"], exportAs: ["cdkDrag"] }, { kind: "directive", type: i2.CdkDragHandle, selector: "[cdkDragHandle]", inputs: ["cdkDragHandleDisabled"] }, { kind: "component", type: i3.MatOption, selector: "mat-option", inputs: ["value", "id", "disabled"], outputs: ["onSelectionChange"], exportAs: ["matOption"] }, { kind: "component", type: i4.MatFormField, selector: "mat-form-field", inputs: ["hideRequiredMarker", "color", "floatLabel", "appearance", "subscriptSizing", "hintLabel"], exportAs: ["matFormField"] }, { kind: "directive", type: i4.MatLabel, selector: "mat-label" }, { kind: "directive", type: i4.MatError, selector: "mat-error, [matError]", inputs: ["id"] }, { kind: "component", type: i5.MatSelect, selector: "mat-select", inputs: ["aria-describedby", "panelClass", "disabled", "disableRipple", "tabIndex", "hideSingleSelectionIndicator", "placeholder", "required", "multiple", "disableOptionCentering", "compareWith", "value", "aria-label", "aria-labelledby", "errorStateMatcher", "typeaheadDebounceInterval", "sortComparator", "id", "panelWidth"], outputs: ["openedChange", "opened", "closed", "selectionChange", "valueChange"], exportAs: ["matSelect"] }, { kind: "component", type: i6.MatIconButton, selector: "button[mat-icon-button]", exportAs: ["matButton"] }, { kind: "component", type: i7.MatCheckbox, selector: "mat-checkbox", inputs: ["aria-label", "aria-labelledby", "aria-describedby", "id", "required", "labelPosition", "name", "value", "disableRipple", "tabIndex", "color", "disabledInteractive", "checked", "disabled", "indeterminate"], outputs: ["change", "indeterminateChange"], exportAs: ["matCheckbox"] }, { 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: "component", type: i9.MatIcon, selector: "mat-icon", inputs: ["color", "inline", "svgIcon", "fontSet", "fontIcon"], exportAs: ["matIcon"] }, { kind: "directive", type: i10.TooltipDirective, selector: "[bizdocTooltip]", inputs: ["bizdocTooltip", "bizdocTooltipTemplate", "bizdocTooltipContext", "bizdocTooltipPosition", "bizdocTooltipDuration", "bizdocTooltipDisabled"] }, { kind: "component", type: i11.DesignerPrivilegesComponent, selector: "bizdoc-designer-privileges", inputs: ["form"] }, { kind: "directive", type: i12.CustomContentDirective, selector: "[bizdocCustomContent]", inputs: ["bizdocCustomContent"] }, { kind: "directive", type: i12.EditContentDirective, selector: "[bizdocEditContent]" }, { kind: "component", type: i12.DesignerItemComponent, selector: "bizdoc-designer-element", inputs: ["privileges", "icon", "form", "context"], outputs: ["save", "continue"] }, { kind: "pipe", type: i13.TranslatePipe, name: "translate" }] }); }
46
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.4", ngImport: i0, type: GuideDesignComponent, deps: null, target: i0.ɵɵFactoryTarget.Component }); }
47
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "18.2.4", type: GuideDesignComponent, selector: "ng-component", usesInheritance: true, ngImport: i0, template: "<bizdoc-designer-element [form]=\"form\" [privileges]=\"true\"\r\n [context]=\"context\">\r\n <ng-template bizdocEditContent>\r\n <ng-container [formGroup]=\"form\">\r\n <h2 class=\"mat-h2 row\">\r\n {{'Steps'|translate}}\r\n <span class=\"divider\"></span>\r\n <button mat-icon-button (click)=\"add(steps, newStep(), 'Step', stepform)\" [bizdocTooltip]=\"'Add'|translate\" type=\"button\"><mat-icon>add_circle_outline</mat-icon></button>\r\n </h2>\r\n <table formArrayName=\"steps\" class=\"mat-mdc-table\" cdkDropList (cdkDropListDropped)=\"drop($event, steps)\">\r\n @for (s of steps.controls; track s; let index = $index) {\r\n <tr class=\"mat-mdc-row\" [formGroup]=\"s\" cdkDrag>\r\n <td class=\"mat-mdc-cell\">\r\n <mat-icon cdkDragHandle>drag_indicator</mat-icon>\r\n </td>\r\n <td class=\"mat-mdc-cell\" width=\"99%\">\r\n {{s.controls.title.value || s.controls.content.value }}\r\n </td>\r\n <td class=\"mat-mdc-cell nowrap\">\r\n <button mat-icon-button (click)=\"edit(s, 'Step', 'step')\" [bizdocTooltip]=\"'Edit'|translate\" type=\"button\"><mat-icon>edit</mat-icon></button>\r\n <button mat-icon-button (click)=\"steps.removeAt(index)\" [bizdocTooltip]=\"'Remove'|translate\" type=\"button\"><mat-icon>delete</mat-icon></button>\r\n </td>\r\n </tr>\r\n }\r\n </table>\r\n </ng-container>\r\n </ng-template>\r\n <ng-template bizdocCustomContent=\"step\" let-form=\"form\">\r\n <ng-container [formGroup]=\"form\">\r\n <mat-form-field class=\"flex\">\r\n <mat-label>{{'Title'|translate}}</mat-label>\r\n <input matInput formControlName=\"title\" />\r\n </mat-form-field>\r\n <mat-form-field class=\"flex\">\r\n <mat-label>{{'Content'|translate}}</mat-label>\r\n <input matInput formControlName=\"content\" required />\r\n @if (form.controls.content.hasError('required')) {\r\n <mat-error [innerHTML]=\"'RequiredErr'|translate:('Content'|translate)\"></mat-error>\r\n }\r\n </mat-form-field>\r\n <mat-form-field class=\"flex\">\r\n <mat-label>{{'Selector'|translate}}</mat-label>\r\n <input matInput formControlName=\"selector\" />\r\n </mat-form-field>\r\n <mat-form-field class=\"flex\">\r\n <mat-label>{{'Position'|translate}}</mat-label>\r\n <mat-select formControlName=\"position\">\r\n <mat-option value=\"Above\">{{'Above'|translate}}</mat-option>\r\n <mat-option value=\"Start\">{{'Start'|translate}}</mat-option>\r\n <mat-option value=\"End\">{{'End'|translate}}</mat-option>\r\n <mat-option value=\"Below\">{{'Below'|translate}}</mat-option>\r\n </mat-select>\r\n </mat-form-field>\r\n <mat-checkbox formControlName=\"execute\">{{'Execute'|translate}}</mat-checkbox>\r\n <!--privileges-->\r\n <bizdoc-designer-privileges [form]=\"form.controls.privileges\"></bizdoc-designer-privileges>\r\n </ng-container>\r\n </ng-template>\r\n</bizdoc-designer-element>\r\n", dependencies: [{ 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.FormGroupDirective, selector: "[formGroup]", inputs: ["formGroup"], outputs: ["ngSubmit"], exportAs: ["ngForm"] }, { kind: "directive", type: i1.FormControlName, selector: "[formControlName]", inputs: ["formControlName", "disabled", "ngModel"], outputs: ["ngModelChange"] }, { kind: "directive", type: i1.FormArrayName, selector: "[formArrayName]", inputs: ["formArrayName"] }, { kind: "directive", type: i2.CdkDropList, selector: "[cdkDropList], cdk-drop-list", inputs: ["cdkDropListConnectedTo", "cdkDropListData", "cdkDropListOrientation", "id", "cdkDropListLockAxis", "cdkDropListDisabled", "cdkDropListSortingDisabled", "cdkDropListEnterPredicate", "cdkDropListSortPredicate", "cdkDropListAutoScrollDisabled", "cdkDropListAutoScrollStep", "cdkDropListElementContainer"], outputs: ["cdkDropListDropped", "cdkDropListEntered", "cdkDropListExited", "cdkDropListSorted"], exportAs: ["cdkDropList"] }, { kind: "directive", type: i2.CdkDrag, selector: "[cdkDrag]", inputs: ["cdkDragData", "cdkDragLockAxis", "cdkDragRootElement", "cdkDragBoundary", "cdkDragStartDelay", "cdkDragFreeDragPosition", "cdkDragDisabled", "cdkDragConstrainPosition", "cdkDragPreviewClass", "cdkDragPreviewContainer", "cdkDragScale"], outputs: ["cdkDragStarted", "cdkDragReleased", "cdkDragEnded", "cdkDragEntered", "cdkDragExited", "cdkDragDropped", "cdkDragMoved"], exportAs: ["cdkDrag"] }, { kind: "directive", type: i2.CdkDragHandle, selector: "[cdkDragHandle]", inputs: ["cdkDragHandleDisabled"] }, { kind: "component", type: i3.MatOption, selector: "mat-option", inputs: ["value", "id", "disabled"], outputs: ["onSelectionChange"], exportAs: ["matOption"] }, { kind: "component", type: i4.MatFormField, selector: "mat-form-field", inputs: ["hideRequiredMarker", "color", "floatLabel", "appearance", "subscriptSizing", "hintLabel"], exportAs: ["matFormField"] }, { kind: "directive", type: i4.MatLabel, selector: "mat-label" }, { kind: "directive", type: i4.MatError, selector: "mat-error, [matError]", inputs: ["id"] }, { kind: "component", type: i5.MatSelect, selector: "mat-select", inputs: ["aria-describedby", "panelClass", "disabled", "disableRipple", "tabIndex", "hideSingleSelectionIndicator", "placeholder", "required", "multiple", "disableOptionCentering", "compareWith", "value", "aria-label", "aria-labelledby", "errorStateMatcher", "typeaheadDebounceInterval", "sortComparator", "id", "panelWidth"], outputs: ["openedChange", "opened", "closed", "selectionChange", "valueChange"], exportAs: ["matSelect"] }, { kind: "component", type: i6.MatIconButton, selector: "button[mat-icon-button]", exportAs: ["matButton"] }, { kind: "component", type: i7.MatCheckbox, selector: "mat-checkbox", inputs: ["aria-label", "aria-labelledby", "aria-describedby", "id", "required", "labelPosition", "name", "value", "disableRipple", "tabIndex", "color", "disabledInteractive", "checked", "disabled", "indeterminate"], outputs: ["change", "indeterminateChange"], exportAs: ["matCheckbox"] }, { 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: "component", type: i9.MatIcon, selector: "mat-icon", inputs: ["color", "inline", "svgIcon", "fontSet", "fontIcon"], exportAs: ["matIcon"] }, { kind: "directive", type: i10.TooltipDirective, selector: "[bizdocTooltip]", inputs: ["bizdocTooltip", "bizdocTooltipTemplate", "bizdocTooltipContext", "bizdocTooltipPosition", "bizdocTooltipDuration", "bizdocTooltipDisabled"] }, { kind: "component", type: i11.DesignerPrivilegesComponent, selector: "bizdoc-designer-privileges", inputs: ["form"] }, { kind: "directive", type: i12.CustomContentDirective, selector: "[bizdocCustomContent]", inputs: ["bizdocCustomContent"] }, { kind: "directive", type: i12.EditContentDirective, selector: "[bizdocEditContent]" }, { kind: "component", type: i12.DesignerItemComponent, selector: "bizdoc-designer-element", inputs: ["privileges", "icon", "form", "context"], outputs: ["save", "continue"] }, { kind: "pipe", type: i13.TranslatePipe, name: "translate" }] }); }
49
48
  }
50
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.3", ngImport: i0, type: GuideDesignComponent, decorators: [{
49
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.4", ngImport: i0, type: GuideDesignComponent, decorators: [{
51
50
  type: Component,
52
- args: [{ template: "<bizdoc-designer-element [form]=\"form\" [privileges]=\"true\"\n [context]=\"context\">\n <ng-template bizdocEditContent>\n <ng-container [formGroup]=\"form\">\n <h2 class=\"mat-h2 row\">\n {{'Steps'|translate}}\n <span class=\"divider\"></span>\n <button mat-icon-button (click)=\"add(steps, newStep(), 'Step', stepform)\" [bizdocTooltip]=\"'Add'|translate\" type=\"button\"><mat-icon>add_circle_outline</mat-icon></button>\n </h2>\n <table formArrayName=\"steps\" class=\"mat-mdc-table\" cdkDropList (cdkDropListDropped)=\"drop($event, steps)\">\n @for (s of steps.controls; track s; let index = $index) {\n <tr class=\"mat-mdc-row\" [formGroup]=\"s\" cdkDrag>\n <td class=\"mat-mdc-cell\">\n <mat-icon cdkDragHandle>drag_indicator</mat-icon>\n </td>\n <td class=\"mat-mdc-cell\" width=\"99%\">\n {{s.controls.title.value || s.controls.content.value }}\n </td>\n <td class=\"mat-mdc-cell nowrap\">\n <button mat-icon-button (click)=\"edit(s, 'Step', 'step')\" [bizdocTooltip]=\"'Edit'|translate\" type=\"button\"><mat-icon>edit</mat-icon></button>\n <button mat-icon-button (click)=\"steps.removeAt(index)\" [bizdocTooltip]=\"'Remove'|translate\" type=\"button\"><mat-icon>delete</mat-icon></button>\n </td>\n </tr>\n }\n </table>\n </ng-container>\n </ng-template>\n <ng-template bizdocCustomContent=\"step\" let-form=\"form\">\n <ng-container [formGroup]=\"form\">\n <mat-form-field class=\"flex\">\n <mat-label>{{'Title'|translate}}</mat-label>\n <input matInput formControlName=\"title\" />\n </mat-form-field>\n <mat-form-field class=\"flex\">\n <mat-label>{{'Content'|translate}}</mat-label>\n <input matInput formControlName=\"content\" required />\n @if (form.controls.content.hasError('required')) {\n <mat-error [innerHTML]=\"'RequiredErr'|translate:('Content'|translate)\"></mat-error>\n }\n </mat-form-field>\n <mat-form-field class=\"flex\">\n <mat-label>{{'Selector'|translate}}</mat-label>\n <input matInput formControlName=\"selector\" />\n </mat-form-field>\n <mat-form-field class=\"flex\">\n <mat-label>{{'Position'|translate}}</mat-label>\n <mat-select formControlName=\"position\">\n <mat-option value=\"Above\">{{'Above'|translate}}</mat-option>\n <mat-option value=\"Start\">{{'Start'|translate}}</mat-option>\n <mat-option value=\"End\">{{'End'|translate}}</mat-option>\n <mat-option value=\"Below\">{{'Below'|translate}}</mat-option>\n </mat-select>\n </mat-form-field>\n <mat-checkbox formControlName=\"execute\">{{'Execute'|translate}}</mat-checkbox>\n <!--privileges-->\n <bizdoc-designer-privileges [form]=\"form.controls.privileges\"></bizdoc-designer-privileges>\n </ng-container>\n </ng-template>\n</bizdoc-designer-element>\n" }]
51
+ args: [{ template: "<bizdoc-designer-element [form]=\"form\" [privileges]=\"true\"\r\n [context]=\"context\">\r\n <ng-template bizdocEditContent>\r\n <ng-container [formGroup]=\"form\">\r\n <h2 class=\"mat-h2 row\">\r\n {{'Steps'|translate}}\r\n <span class=\"divider\"></span>\r\n <button mat-icon-button (click)=\"add(steps, newStep(), 'Step', stepform)\" [bizdocTooltip]=\"'Add'|translate\" type=\"button\"><mat-icon>add_circle_outline</mat-icon></button>\r\n </h2>\r\n <table formArrayName=\"steps\" class=\"mat-mdc-table\" cdkDropList (cdkDropListDropped)=\"drop($event, steps)\">\r\n @for (s of steps.controls; track s; let index = $index) {\r\n <tr class=\"mat-mdc-row\" [formGroup]=\"s\" cdkDrag>\r\n <td class=\"mat-mdc-cell\">\r\n <mat-icon cdkDragHandle>drag_indicator</mat-icon>\r\n </td>\r\n <td class=\"mat-mdc-cell\" width=\"99%\">\r\n {{s.controls.title.value || s.controls.content.value }}\r\n </td>\r\n <td class=\"mat-mdc-cell nowrap\">\r\n <button mat-icon-button (click)=\"edit(s, 'Step', 'step')\" [bizdocTooltip]=\"'Edit'|translate\" type=\"button\"><mat-icon>edit</mat-icon></button>\r\n <button mat-icon-button (click)=\"steps.removeAt(index)\" [bizdocTooltip]=\"'Remove'|translate\" type=\"button\"><mat-icon>delete</mat-icon></button>\r\n </td>\r\n </tr>\r\n }\r\n </table>\r\n </ng-container>\r\n </ng-template>\r\n <ng-template bizdocCustomContent=\"step\" let-form=\"form\">\r\n <ng-container [formGroup]=\"form\">\r\n <mat-form-field class=\"flex\">\r\n <mat-label>{{'Title'|translate}}</mat-label>\r\n <input matInput formControlName=\"title\" />\r\n </mat-form-field>\r\n <mat-form-field class=\"flex\">\r\n <mat-label>{{'Content'|translate}}</mat-label>\r\n <input matInput formControlName=\"content\" required />\r\n @if (form.controls.content.hasError('required')) {\r\n <mat-error [innerHTML]=\"'RequiredErr'|translate:('Content'|translate)\"></mat-error>\r\n }\r\n </mat-form-field>\r\n <mat-form-field class=\"flex\">\r\n <mat-label>{{'Selector'|translate}}</mat-label>\r\n <input matInput formControlName=\"selector\" />\r\n </mat-form-field>\r\n <mat-form-field class=\"flex\">\r\n <mat-label>{{'Position'|translate}}</mat-label>\r\n <mat-select formControlName=\"position\">\r\n <mat-option value=\"Above\">{{'Above'|translate}}</mat-option>\r\n <mat-option value=\"Start\">{{'Start'|translate}}</mat-option>\r\n <mat-option value=\"End\">{{'End'|translate}}</mat-option>\r\n <mat-option value=\"Below\">{{'Below'|translate}}</mat-option>\r\n </mat-select>\r\n </mat-form-field>\r\n <mat-checkbox formControlName=\"execute\">{{'Execute'|translate}}</mat-checkbox>\r\n <!--privileges-->\r\n <bizdoc-designer-privileges [form]=\"form.controls.privileges\"></bizdoc-designer-privileges>\r\n </ng-container>\r\n </ng-template>\r\n</bizdoc-designer-element>\r\n" }]
53
52
  }] });
54
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZ3VpZGUuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vbGlicmFyaWVzL2NvcmUvc3JjL2xpYi9hZG1pbi9hcmNoaXRlY3R1cmUvZWxlbWVudHMvZ3VpZGUuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vLi4vbGlicmFyaWVzL2NvcmUvc3JjL2xpYi9hZG1pbi9hcmNoaXRlY3R1cmUvZWxlbWVudHMvZ3VpZGUuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFNBQVMsRUFBVSxNQUFNLGVBQWUsQ0FBQztBQUVsRCxPQUFPLEVBQUUsNEJBQTRCLEVBQUUsTUFBTSxrQkFBa0IsQ0FBQzs7Ozs7Ozs7Ozs7Ozs7O0FBR2hFLE1BQU0sT0FBTyxvQkFBcUIsU0FBUSw0QkFBNEI7SUFEdEU7O1FBRVcsVUFBSyxHQUFHLElBQUksQ0FBQyxHQUFHLENBQUMsS0FBSyxDQUFDLEVBQUUsQ0FBQyxDQUFDO1FBQzNCLFNBQUksR0FBRyxJQUFJLENBQUMsR0FBRyxDQUFDLEtBQUssQ0FBQztZQUM3QixJQUFJLEVBQUUsSUFBSTtZQUNWLEtBQUssRUFBRSxJQUFJLENBQUMsS0FBSztTQUNsQixDQUFDLENBQUM7S0FzQko7SUFyQkMsUUFBUTtRQUNOLElBQUksQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLEtBQUs7WUFBRSxJQUFJLENBQUMsS0FBSyxDQUFDLEtBQUssR0FBRyxFQUFFLENBQUM7YUFFM0MsSUFBSSxJQUFJLENBQUMsSUFBSSxLQUFLLFFBQVE7WUFDeEIsSUFBSSxDQUFDLEtBQUssQ0FBQyxLQUFLLENBQUMsT0FBTyxDQUFDLENBQUMsQ0FBQyxFQUFFLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLE9BQU8sQ0FBQyxDQUFDLENBQUMsRUFBRSxFQUFFLFNBQVMsRUFBRSxLQUFLLEVBQUUsQ0FBQyxDQUFDLENBQUM7UUFDMUYsS0FBSyxDQUFDLFFBQVEsRUFBRSxDQUFDO0lBQ25CLENBQUM7SUFDRCxPQUFPLENBQUMsSUFBZ0I7UUFDdEIsT0FBTyxJQUFJLENBQUMsR0FBRyxDQUFDLEtBQUssQ0FBQztZQUNwQixPQUFPLEVBQUUsSUFBSSxFQUFFLE9BQU87WUFDdEIsS0FBSyxFQUFFLElBQUksRUFBRSxLQUFLO1lBQ2xCLFFBQVEsRUFBRSxJQUFJLEVBQUUsUUFBUTtZQUN4QixRQUFRLEVBQUUsSUFBSSxFQUFFLFFBQVE7WUFDeEIsUUFBUSxFQUFFLElBQUksRUFBRSxRQUFRO1lBQ3hCLE9BQU8sRUFBRSxJQUFJLEVBQUUsT0FBTztZQUN0QixVQUFVLEVBQUUsSUFBSSxDQUFDLEdBQUcsQ0FBQyxLQUFLLENBQUM7Z0JBQ3pCLElBQUksRUFBRSxJQUFJO2dCQUNWLEtBQUssRUFBRSxFQUFFO2FBQ1YsQ0FBQztTQUNILENBQUMsQ0FBQztJQUNMLENBQUM7OEdBMUJVLG9CQUFvQjtrR0FBcEIsb0JBQW9CLDJFQ0xqQyxvK0ZBMkRBOzsyRkR0RGEsb0JBQW9CO2tCQURoQyxTQUFTIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29tcG9uZW50LCBPbkluaXQgfSBmcm9tIFwiQGFuZ3VsYXIvY29yZVwiO1xyXG5pbXBvcnQgeyBHdWlkZVN0ZXAgfSBmcm9tIFwiLi4vLi4vLi4vY29yZS9tb2RlbHNcIjtcclxuaW1wb3J0IHsgRGVzaWduZXJUeXBlRWxlbWVudENvbXBvbmVudCB9IGZyb20gXCIuLi9kZXNpZ25lci5iYXNlXCI7XHJcblxyXG5AQ29tcG9uZW50KHsgdGVtcGxhdGVVcmw6ICdndWlkZS5jb21wb25lbnQuaHRtbCcgfSlcclxuZXhwb3J0IGNsYXNzIEd1aWRlRGVzaWduQ29tcG9uZW50IGV4dGVuZHMgRGVzaWduZXJUeXBlRWxlbWVudENvbXBvbmVudCBpbXBsZW1lbnRzIE9uSW5pdCB7XHJcbiAgcmVhZG9ubHkgc3RlcHMgPSB0aGlzLl9mYi5hcnJheShbXSk7XHJcbiAgcmVhZG9ubHkgZm9ybSA9IHRoaXMuX2ZiLmdyb3VwKHtcclxuICAgIG1vZGU6IG51bGwsXHJcbiAgICBzdGVwczogdGhpcy5zdGVwc1xyXG4gIH0pO1xyXG4gIG5nT25Jbml0KCkge1xyXG4gICAgaWYgKCF0aGlzLm1vZGVsLnN0ZXBzKSB0aGlzLm1vZGVsLnN0ZXBzID0gW107XHJcbiAgICBlbHNlXHJcbiAgICAgIGlmICh0aGlzLm1vZGUgIT09ICd3aWRnZXQnKVxyXG4gICAgICAgIHRoaXMubW9kZWwuc3RlcHMuZm9yRWFjaChzID0+IHRoaXMuc3RlcHMucHVzaCh0aGlzLm5ld1N0ZXAocyksIHsgZW1pdEV2ZW50OiBmYWxzZSB9KSk7XHJcbiAgICBzdXBlci5uZ09uSW5pdCgpO1xyXG4gIH1cclxuICBuZXdTdGVwKHN0ZXA/OiBHdWlkZVN0ZXApOiBhbnkge1xyXG4gICAgcmV0dXJuIHRoaXMuX2ZiLmdyb3VwKHtcclxuICAgICAgY29udGVudDogc3RlcD8uY29udGVudCxcclxuICAgICAgdGl0bGU6IHN0ZXA/LnRpdGxlLFxyXG4gICAgICBzZWxlY3Rvcjogc3RlcD8uc2VsZWN0b3IsXHJcbiAgICAgIHBvc2l0aW9uOiBzdGVwPy5wb3NpdGlvbixcclxuICAgICAgbmF2aWdhdGU6IHN0ZXA/Lm5hdmlnYXRlLFxyXG4gICAgICBleGVjdXRlOiBzdGVwPy5leGVjdXRlLFxyXG4gICAgICBwcml2aWxlZ2VzOiB0aGlzLl9mYi5ncm91cCh7XHJcbiAgICAgICAgcnVsZTogbnVsbCxcclxuICAgICAgICByb2xlczogW11cclxuICAgICAgfSlcclxuICAgIH0pO1xyXG4gIH1cclxufVxyXG4iLCI8Yml6ZG9jLWRlc2lnbmVyLWVsZW1lbnQgW2Zvcm1dPVwiZm9ybVwiIFtwcml2aWxlZ2VzXT1cInRydWVcIlxuICAgICAgICAgICAgICAgICAgICAgICAgIFtjb250ZXh0XT1cImNvbnRleHRcIj5cbiAgPG5nLXRlbXBsYXRlIGJpemRvY0VkaXRDb250ZW50PlxuICAgIDxuZy1jb250YWluZXIgW2Zvcm1Hcm91cF09XCJmb3JtXCI+XG4gICAgICA8aDIgY2xhc3M9XCJtYXQtaDIgcm93XCI+XG4gICAgICAgIHt7J1N0ZXBzJ3x0cmFuc2xhdGV9fVxuICAgICAgICA8c3BhbiBjbGFzcz1cImRpdmlkZXJcIj48L3NwYW4+XG4gICAgICAgIDxidXR0b24gbWF0LWljb24tYnV0dG9uIChjbGljayk9XCJhZGQoc3RlcHMsIG5ld1N0ZXAoKSwgJ1N0ZXAnLCBzdGVwZm9ybSlcIiBbYml6ZG9jVG9vbHRpcF09XCInQWRkJ3x0cmFuc2xhdGVcIiB0eXBlPVwiYnV0dG9uXCI+PG1hdC1pY29uPmFkZF9jaXJjbGVfb3V0bGluZTwvbWF0LWljb24+PC9idXR0b24+XG4gICAgICA8L2gyPlxuICAgICAgPHRhYmxlIGZvcm1BcnJheU5hbWU9XCJzdGVwc1wiIGNsYXNzPVwibWF0LW1kYy10YWJsZVwiIGNka0Ryb3BMaXN0IChjZGtEcm9wTGlzdERyb3BwZWQpPVwiZHJvcCgkZXZlbnQsIHN0ZXBzKVwiPlxuICAgICAgICBAZm9yIChzIG9mIHN0ZXBzLmNvbnRyb2xzOyB0cmFjayBzOyBsZXQgaW5kZXggPSAkaW5kZXgpIHtcbiAgICAgICAgPHRyIGNsYXNzPVwibWF0LW1kYy1yb3dcIiBbZm9ybUdyb3VwXT1cInNcIiBjZGtEcmFnPlxuICAgICAgICAgIDx0ZCBjbGFzcz1cIm1hdC1tZGMtY2VsbFwiPlxuICAgICAgICAgICAgPG1hdC1pY29uIGNka0RyYWdIYW5kbGU+ZHJhZ19pbmRpY2F0b3I8L21hdC1pY29uPlxuICAgICAgICAgIDwvdGQ+XG4gICAgICAgICAgPHRkIGNsYXNzPVwibWF0LW1kYy1jZWxsXCIgd2lkdGg9XCI5OSVcIj5cbiAgICAgICAgICAgIHt7cy5jb250cm9scy50aXRsZS52YWx1ZSB8fCBzLmNvbnRyb2xzLmNvbnRlbnQudmFsdWUgfX1cbiAgICAgICAgICA8L3RkPlxuICAgICAgICAgIDx0ZCBjbGFzcz1cIm1hdC1tZGMtY2VsbCBub3dyYXBcIj5cbiAgICAgICAgICAgIDxidXR0b24gbWF0LWljb24tYnV0dG9uIChjbGljayk9XCJlZGl0KHMsICdTdGVwJywgJ3N0ZXAnKVwiIFtiaXpkb2NUb29sdGlwXT1cIidFZGl0J3x0cmFuc2xhdGVcIiB0eXBlPVwiYnV0dG9uXCI+PG1hdC1pY29uPmVkaXQ8L21hdC1pY29uPjwvYnV0dG9uPlxuICAgICAgICAgICAgPGJ1dHRvbiBtYXQtaWNvbi1idXR0b24gKGNsaWNrKT1cInN0ZXBzLnJlbW92ZUF0KGluZGV4KVwiIFtiaXpkb2NUb29sdGlwXT1cIidSZW1vdmUnfHRyYW5zbGF0ZVwiIHR5cGU9XCJidXR0b25cIj48bWF0LWljb24+ZGVsZXRlPC9tYXQtaWNvbj48L2J1dHRvbj5cbiAgICAgICAgICA8L3RkPlxuICAgICAgICA8L3RyPlxuICAgICAgICB9XG4gICAgICA8L3RhYmxlPlxuICAgIDwvbmctY29udGFpbmVyPlxuICA8L25nLXRlbXBsYXRlPlxuICA8bmctdGVtcGxhdGUgYml6ZG9jQ3VzdG9tQ29udGVudD1cInN0ZXBcIiBsZXQtZm9ybT1cImZvcm1cIj5cbiAgICA8bmctY29udGFpbmVyIFtmb3JtR3JvdXBdPVwiZm9ybVwiPlxuICAgICAgPG1hdC1mb3JtLWZpZWxkIGNsYXNzPVwiZmxleFwiPlxuICAgICAgICA8bWF0LWxhYmVsPnt7J1RpdGxlJ3x0cmFuc2xhdGV9fTwvbWF0LWxhYmVsPlxuICAgICAgICA8aW5wdXQgbWF0SW5wdXQgZm9ybUNvbnRyb2xOYW1lPVwidGl0bGVcIiAvPlxuICAgICAgPC9tYXQtZm9ybS1maWVsZD5cbiAgICAgIDxtYXQtZm9ybS1maWVsZCBjbGFzcz1cImZsZXhcIj5cbiAgICAgICAgPG1hdC1sYWJlbD57eydDb250ZW50J3x0cmFuc2xhdGV9fTwvbWF0LWxhYmVsPlxuICAgICAgICA8aW5wdXQgbWF0SW5wdXQgZm9ybUNvbnRyb2xOYW1lPVwiY29udGVudFwiIHJlcXVpcmVkIC8+XG4gICAgICAgIEBpZiAoZm9ybS5jb250cm9scy5jb250ZW50Lmhhc0Vycm9yKCdyZXF1aXJlZCcpKSB7XG4gICAgICAgIDxtYXQtZXJyb3IgW2lubmVySFRNTF09XCInUmVxdWlyZWRFcnInfHRyYW5zbGF0ZTooJ0NvbnRlbnQnfHRyYW5zbGF0ZSlcIj48L21hdC1lcnJvcj5cbiAgICAgICAgfVxuICAgICAgPC9tYXQtZm9ybS1maWVsZD5cbiAgICAgIDxtYXQtZm9ybS1maWVsZCBjbGFzcz1cImZsZXhcIj5cbiAgICAgICAgPG1hdC1sYWJlbD57eydTZWxlY3Rvcid8dHJhbnNsYXRlfX08L21hdC1sYWJlbD5cbiAgICAgICAgPGlucHV0IG1hdElucHV0IGZvcm1Db250cm9sTmFtZT1cInNlbGVjdG9yXCIgLz5cbiAgICAgIDwvbWF0LWZvcm0tZmllbGQ+XG4gICAgICA8bWF0LWZvcm0tZmllbGQgY2xhc3M9XCJmbGV4XCI+XG4gICAgICAgIDxtYXQtbGFiZWw+e3snUG9zaXRpb24nfHRyYW5zbGF0ZX19PC9tYXQtbGFiZWw+XG4gICAgICAgIDxtYXQtc2VsZWN0IGZvcm1Db250cm9sTmFtZT1cInBvc2l0aW9uXCI+XG4gICAgICAgICAgPG1hdC1vcHRpb24gdmFsdWU9XCJBYm92ZVwiPnt7J0Fib3ZlJ3x0cmFuc2xhdGV9fTwvbWF0LW9wdGlvbj5cbiAgICAgICAgICA8bWF0LW9wdGlvbiB2YWx1ZT1cIlN0YXJ0XCI+e3snU3RhcnQnfHRyYW5zbGF0ZX19PC9tYXQtb3B0aW9uPlxuICAgICAgICAgIDxtYXQtb3B0aW9uIHZhbHVlPVwiRW5kXCI+e3snRW5kJ3x0cmFuc2xhdGV9fTwvbWF0LW9wdGlvbj5cbiAgICAgICAgICA8bWF0LW9wdGlvbiB2YWx1ZT1cIkJlbG93XCI+e3snQmVsb3cnfHRyYW5zbGF0ZX19PC9tYXQtb3B0aW9uPlxuICAgICAgICA8L21hdC1zZWxlY3Q+XG4gICAgICA8L21hdC1mb3JtLWZpZWxkPlxuICAgICAgPG1hdC1jaGVja2JveCBmb3JtQ29udHJvbE5hbWU9XCJleGVjdXRlXCI+e3snRXhlY3V0ZSd8dHJhbnNsYXRlfX08L21hdC1jaGVja2JveD5cbiAgICAgIDwhLS1wcml2aWxlZ2VzLS0+XG4gICAgICA8Yml6ZG9jLWRlc2lnbmVyLXByaXZpbGVnZXMgW2Zvcm1dPVwiZm9ybS5jb250cm9scy5wcml2aWxlZ2VzXCI+PC9iaXpkb2MtZGVzaWduZXItcHJpdmlsZWdlcz5cbiAgICA8L25nLWNvbnRhaW5lcj5cbiAgPC9uZy10ZW1wbGF0ZT5cbjwvYml6ZG9jLWRlc2lnbmVyLWVsZW1lbnQ+XG4iXX0=
53
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZ3VpZGUuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvY29yZS9zcmMvbGliL2FkbWluL2FyY2hpdGVjdHVyZS9lbGVtZW50cy9ndWlkZS5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9jb3JlL3NyYy9saWIvYWRtaW4vYXJjaGl0ZWN0dXJlL2VsZW1lbnRzL2d1aWRlLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxTQUFTLEVBQVUsTUFBTSxlQUFlLENBQUM7QUFFbEQsT0FBTyxFQUFFLDRCQUE0QixFQUFFLE1BQU0sa0JBQWtCLENBQUM7Ozs7Ozs7Ozs7Ozs7OztBQUdoRSxNQUFNLE9BQU8sb0JBQXFCLFNBQVEsNEJBQTRCO0lBRHRFOztRQUVXLFVBQUssR0FBRyxJQUFJLENBQUMsR0FBRyxDQUFDLEtBQUssQ0FBQyxFQUFFLENBQUMsQ0FBQztRQUMzQixTQUFJLEdBQUcsSUFBSSxDQUFDLEdBQUcsQ0FBQyxLQUFLLENBQUM7WUFDN0IsSUFBSSxFQUFFLElBQUk7WUFDVixLQUFLLEVBQUUsSUFBSSxDQUFDLEtBQUs7U0FDbEIsQ0FBQyxDQUFDO0tBcUJKO0lBcEJDLFFBQVE7UUFDTixJQUFJLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxLQUFLO1lBQUUsSUFBSSxDQUFDLEtBQUssQ0FBQyxLQUFLLEdBQUcsRUFBRSxDQUFDO2FBRTNDLElBQUksSUFBSSxDQUFDLElBQUksS0FBSyxRQUFRO1lBQ3hCLElBQUksQ0FBQyxLQUFLLENBQUMsS0FBSyxDQUFDLE9BQU8sQ0FBQyxDQUFDLENBQUMsRUFBRSxDQUFDLElBQUksQ0FBQyxLQUFLLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxPQUFPLENBQUMsQ0FBQyxDQUFDLEVBQUUsRUFBRSxTQUFTLEVBQUUsS0FBSyxFQUFFLENBQUMsQ0FBQyxDQUFDO0lBQzVGLENBQUM7SUFDRCxPQUFPLENBQUMsSUFBZ0I7UUFDdEIsT0FBTyxJQUFJLENBQUMsR0FBRyxDQUFDLEtBQUssQ0FBQztZQUNwQixPQUFPLEVBQUUsSUFBSSxFQUFFLE9BQU87WUFDdEIsS0FBSyxFQUFFLElBQUksRUFBRSxLQUFLO1lBQ2xCLFFBQVEsRUFBRSxJQUFJLEVBQUUsUUFBUTtZQUN4QixRQUFRLEVBQUUsSUFBSSxFQUFFLFFBQVE7WUFDeEIsUUFBUSxFQUFFLElBQUksRUFBRSxRQUFRO1lBQ3hCLE9BQU8sRUFBRSxJQUFJLEVBQUUsT0FBTztZQUN0QixVQUFVLEVBQUUsSUFBSSxDQUFDLEdBQUcsQ0FBQyxLQUFLLENBQUM7Z0JBQ3pCLElBQUksRUFBRSxJQUFJO2dCQUNWLEtBQUssRUFBRSxFQUFFO2FBQ1YsQ0FBQztTQUNILENBQUMsQ0FBQztJQUNMLENBQUM7OEdBekJVLG9CQUFvQjtrR0FBcEIsb0JBQW9CLDJFQ0xqQywwbEdBMkRBOzsyRkR0RGEsb0JBQW9CO2tCQURoQyxTQUFTIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29tcG9uZW50LCBPbkluaXQgfSBmcm9tIFwiQGFuZ3VsYXIvY29yZVwiO1xyXG5pbXBvcnQgeyBHdWlkZVN0ZXAgfSBmcm9tIFwiLi4vLi4vLi4vY29yZS9tb2RlbHNcIjtcclxuaW1wb3J0IHsgRGVzaWduZXJUeXBlRWxlbWVudENvbXBvbmVudCB9IGZyb20gXCIuLi9kZXNpZ25lci5iYXNlXCI7XHJcblxyXG5AQ29tcG9uZW50KHsgdGVtcGxhdGVVcmw6ICdndWlkZS5jb21wb25lbnQuaHRtbCcgfSlcclxuZXhwb3J0IGNsYXNzIEd1aWRlRGVzaWduQ29tcG9uZW50IGV4dGVuZHMgRGVzaWduZXJUeXBlRWxlbWVudENvbXBvbmVudCBpbXBsZW1lbnRzIE9uSW5pdCB7XHJcbiAgcmVhZG9ubHkgc3RlcHMgPSB0aGlzLl9mYi5hcnJheShbXSk7XHJcbiAgcmVhZG9ubHkgZm9ybSA9IHRoaXMuX2ZiLmdyb3VwKHtcclxuICAgIG1vZGU6IG51bGwsXHJcbiAgICBzdGVwczogdGhpcy5zdGVwc1xyXG4gIH0pO1xyXG4gIG5nT25Jbml0KCkge1xyXG4gICAgaWYgKCF0aGlzLm1vZGVsLnN0ZXBzKSB0aGlzLm1vZGVsLnN0ZXBzID0gW107XHJcbiAgICBlbHNlXHJcbiAgICAgIGlmICh0aGlzLm1vZGUgIT09ICd3aWRnZXQnKVxyXG4gICAgICAgIHRoaXMubW9kZWwuc3RlcHMuZm9yRWFjaChzID0+IHRoaXMuc3RlcHMucHVzaCh0aGlzLm5ld1N0ZXAocyksIHsgZW1pdEV2ZW50OiBmYWxzZSB9KSk7XHJcbiAgfVxyXG4gIG5ld1N0ZXAoc3RlcD86IEd1aWRlU3RlcCk6IGFueSB7XHJcbiAgICByZXR1cm4gdGhpcy5fZmIuZ3JvdXAoe1xyXG4gICAgICBjb250ZW50OiBzdGVwPy5jb250ZW50LFxyXG4gICAgICB0aXRsZTogc3RlcD8udGl0bGUsXHJcbiAgICAgIHNlbGVjdG9yOiBzdGVwPy5zZWxlY3RvcixcclxuICAgICAgcG9zaXRpb246IHN0ZXA/LnBvc2l0aW9uLFxyXG4gICAgICBuYXZpZ2F0ZTogc3RlcD8ubmF2aWdhdGUsXHJcbiAgICAgIGV4ZWN1dGU6IHN0ZXA/LmV4ZWN1dGUsXHJcbiAgICAgIHByaXZpbGVnZXM6IHRoaXMuX2ZiLmdyb3VwKHtcclxuICAgICAgICBydWxlOiBudWxsLFxyXG4gICAgICAgIHJvbGVzOiBbXVxyXG4gICAgICB9KVxyXG4gICAgfSk7XHJcbiAgfVxyXG59XHJcbiIsIjxiaXpkb2MtZGVzaWduZXItZWxlbWVudCBbZm9ybV09XCJmb3JtXCIgW3ByaXZpbGVnZXNdPVwidHJ1ZVwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICBbY29udGV4dF09XCJjb250ZXh0XCI+XHJcbiAgPG5nLXRlbXBsYXRlIGJpemRvY0VkaXRDb250ZW50PlxyXG4gICAgPG5nLWNvbnRhaW5lciBbZm9ybUdyb3VwXT1cImZvcm1cIj5cclxuICAgICAgPGgyIGNsYXNzPVwibWF0LWgyIHJvd1wiPlxyXG4gICAgICAgIHt7J1N0ZXBzJ3x0cmFuc2xhdGV9fVxyXG4gICAgICAgIDxzcGFuIGNsYXNzPVwiZGl2aWRlclwiPjwvc3Bhbj5cclxuICAgICAgICA8YnV0dG9uIG1hdC1pY29uLWJ1dHRvbiAoY2xpY2spPVwiYWRkKHN0ZXBzLCBuZXdTdGVwKCksICdTdGVwJywgc3RlcGZvcm0pXCIgW2JpemRvY1Rvb2x0aXBdPVwiJ0FkZCd8dHJhbnNsYXRlXCIgdHlwZT1cImJ1dHRvblwiPjxtYXQtaWNvbj5hZGRfY2lyY2xlX291dGxpbmU8L21hdC1pY29uPjwvYnV0dG9uPlxyXG4gICAgICA8L2gyPlxyXG4gICAgICA8dGFibGUgZm9ybUFycmF5TmFtZT1cInN0ZXBzXCIgY2xhc3M9XCJtYXQtbWRjLXRhYmxlXCIgY2RrRHJvcExpc3QgKGNka0Ryb3BMaXN0RHJvcHBlZCk9XCJkcm9wKCRldmVudCwgc3RlcHMpXCI+XHJcbiAgICAgICAgQGZvciAocyBvZiBzdGVwcy5jb250cm9sczsgdHJhY2sgczsgbGV0IGluZGV4ID0gJGluZGV4KSB7XHJcbiAgICAgICAgPHRyIGNsYXNzPVwibWF0LW1kYy1yb3dcIiBbZm9ybUdyb3VwXT1cInNcIiBjZGtEcmFnPlxyXG4gICAgICAgICAgPHRkIGNsYXNzPVwibWF0LW1kYy1jZWxsXCI+XHJcbiAgICAgICAgICAgIDxtYXQtaWNvbiBjZGtEcmFnSGFuZGxlPmRyYWdfaW5kaWNhdG9yPC9tYXQtaWNvbj5cclxuICAgICAgICAgIDwvdGQ+XHJcbiAgICAgICAgICA8dGQgY2xhc3M9XCJtYXQtbWRjLWNlbGxcIiB3aWR0aD1cIjk5JVwiPlxyXG4gICAgICAgICAgICB7e3MuY29udHJvbHMudGl0bGUudmFsdWUgfHwgcy5jb250cm9scy5jb250ZW50LnZhbHVlIH19XHJcbiAgICAgICAgICA8L3RkPlxyXG4gICAgICAgICAgPHRkIGNsYXNzPVwibWF0LW1kYy1jZWxsIG5vd3JhcFwiPlxyXG4gICAgICAgICAgICA8YnV0dG9uIG1hdC1pY29uLWJ1dHRvbiAoY2xpY2spPVwiZWRpdChzLCAnU3RlcCcsICdzdGVwJylcIiBbYml6ZG9jVG9vbHRpcF09XCInRWRpdCd8dHJhbnNsYXRlXCIgdHlwZT1cImJ1dHRvblwiPjxtYXQtaWNvbj5lZGl0PC9tYXQtaWNvbj48L2J1dHRvbj5cclxuICAgICAgICAgICAgPGJ1dHRvbiBtYXQtaWNvbi1idXR0b24gKGNsaWNrKT1cInN0ZXBzLnJlbW92ZUF0KGluZGV4KVwiIFtiaXpkb2NUb29sdGlwXT1cIidSZW1vdmUnfHRyYW5zbGF0ZVwiIHR5cGU9XCJidXR0b25cIj48bWF0LWljb24+ZGVsZXRlPC9tYXQtaWNvbj48L2J1dHRvbj5cclxuICAgICAgICAgIDwvdGQ+XHJcbiAgICAgICAgPC90cj5cclxuICAgICAgICB9XHJcbiAgICAgIDwvdGFibGU+XHJcbiAgICA8L25nLWNvbnRhaW5lcj5cclxuICA8L25nLXRlbXBsYXRlPlxyXG4gIDxuZy10ZW1wbGF0ZSBiaXpkb2NDdXN0b21Db250ZW50PVwic3RlcFwiIGxldC1mb3JtPVwiZm9ybVwiPlxyXG4gICAgPG5nLWNvbnRhaW5lciBbZm9ybUdyb3VwXT1cImZvcm1cIj5cclxuICAgICAgPG1hdC1mb3JtLWZpZWxkIGNsYXNzPVwiZmxleFwiPlxyXG4gICAgICAgIDxtYXQtbGFiZWw+e3snVGl0bGUnfHRyYW5zbGF0ZX19PC9tYXQtbGFiZWw+XHJcbiAgICAgICAgPGlucHV0IG1hdElucHV0IGZvcm1Db250cm9sTmFtZT1cInRpdGxlXCIgLz5cclxuICAgICAgPC9tYXQtZm9ybS1maWVsZD5cclxuICAgICAgPG1hdC1mb3JtLWZpZWxkIGNsYXNzPVwiZmxleFwiPlxyXG4gICAgICAgIDxtYXQtbGFiZWw+e3snQ29udGVudCd8dHJhbnNsYXRlfX08L21hdC1sYWJlbD5cclxuICAgICAgICA8aW5wdXQgbWF0SW5wdXQgZm9ybUNvbnRyb2xOYW1lPVwiY29udGVudFwiIHJlcXVpcmVkIC8+XHJcbiAgICAgICAgQGlmIChmb3JtLmNvbnRyb2xzLmNvbnRlbnQuaGFzRXJyb3IoJ3JlcXVpcmVkJykpIHtcclxuICAgICAgICA8bWF0LWVycm9yIFtpbm5lckhUTUxdPVwiJ1JlcXVpcmVkRXJyJ3x0cmFuc2xhdGU6KCdDb250ZW50J3x0cmFuc2xhdGUpXCI+PC9tYXQtZXJyb3I+XHJcbiAgICAgICAgfVxyXG4gICAgICA8L21hdC1mb3JtLWZpZWxkPlxyXG4gICAgICA8bWF0LWZvcm0tZmllbGQgY2xhc3M9XCJmbGV4XCI+XHJcbiAgICAgICAgPG1hdC1sYWJlbD57eydTZWxlY3Rvcid8dHJhbnNsYXRlfX08L21hdC1sYWJlbD5cclxuICAgICAgICA8aW5wdXQgbWF0SW5wdXQgZm9ybUNvbnRyb2xOYW1lPVwic2VsZWN0b3JcIiAvPlxyXG4gICAgICA8L21hdC1mb3JtLWZpZWxkPlxyXG4gICAgICA8bWF0LWZvcm0tZmllbGQgY2xhc3M9XCJmbGV4XCI+XHJcbiAgICAgICAgPG1hdC1sYWJlbD57eydQb3NpdGlvbid8dHJhbnNsYXRlfX08L21hdC1sYWJlbD5cclxuICAgICAgICA8bWF0LXNlbGVjdCBmb3JtQ29udHJvbE5hbWU9XCJwb3NpdGlvblwiPlxyXG4gICAgICAgICAgPG1hdC1vcHRpb24gdmFsdWU9XCJBYm92ZVwiPnt7J0Fib3ZlJ3x0cmFuc2xhdGV9fTwvbWF0LW9wdGlvbj5cclxuICAgICAgICAgIDxtYXQtb3B0aW9uIHZhbHVlPVwiU3RhcnRcIj57eydTdGFydCd8dHJhbnNsYXRlfX08L21hdC1vcHRpb24+XHJcbiAgICAgICAgICA8bWF0LW9wdGlvbiB2YWx1ZT1cIkVuZFwiPnt7J0VuZCd8dHJhbnNsYXRlfX08L21hdC1vcHRpb24+XHJcbiAgICAgICAgICA8bWF0LW9wdGlvbiB2YWx1ZT1cIkJlbG93XCI+e3snQmVsb3cnfHRyYW5zbGF0ZX19PC9tYXQtb3B0aW9uPlxyXG4gICAgICAgIDwvbWF0LXNlbGVjdD5cclxuICAgICAgPC9tYXQtZm9ybS1maWVsZD5cclxuICAgICAgPG1hdC1jaGVja2JveCBmb3JtQ29udHJvbE5hbWU9XCJleGVjdXRlXCI+e3snRXhlY3V0ZSd8dHJhbnNsYXRlfX08L21hdC1jaGVja2JveD5cclxuICAgICAgPCEtLXByaXZpbGVnZXMtLT5cclxuICAgICAgPGJpemRvYy1kZXNpZ25lci1wcml2aWxlZ2VzIFtmb3JtXT1cImZvcm0uY29udHJvbHMucHJpdmlsZWdlc1wiPjwvYml6ZG9jLWRlc2lnbmVyLXByaXZpbGVnZXM+XHJcbiAgICA8L25nLWNvbnRhaW5lcj5cclxuICA8L25nLXRlbXBsYXRlPlxyXG48L2JpemRvYy1kZXNpZ25lci1lbGVtZW50PlxyXG4iXX0=
@@ -31,7 +31,6 @@ export class JobDesignComponent extends DesignerTypeElementComponent {
31
31
  case 'edit':
32
32
  break;
33
33
  }
34
- super.ngOnInit();
35
34
  }
36
35
  execute() {
37
36
  this.working = true;
@@ -45,14 +44,14 @@ export class JobDesignComponent extends DesignerTypeElementComponent {
45
44
  }
46
45
  });
47
46
  }
48
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.3", ngImport: i0, type: JobDesignComponent, deps: [{ token: i1.FormBuilder }, { token: i2.SystemService }, { token: i3.PromptService }, { token: i0.ElementRef }, { token: DesignerRef }], target: i0.ɵɵFactoryTarget.Component }); }
49
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "18.2.3", type: JobDesignComponent, selector: "ng-component", usesInheritance: true, ngImport: i0, template: "<bizdoc-designer-element [form]=\"form\" [privileges]=\"true\">\n <!-- widget -->\n <ng-template bizdocContent>\n @if (jobInfo) {\n <dl>\n @if (jobInfo.lastExecution) {\n <dt>{{'LastExecution'|translate}}</dt>\n <dd>{{jobInfo.lastExecution|amTimeAgo}}</dd>\n }\n @if (jobInfo.nextExecution) {\n <dt>{{'NextExecution'|translate}}</dt>\n <dd>{{jobInfo.nextExecution|amTimeAgo}}</dd>\n }\n @if (jobInfo.lastJobState) {\n <dt>{{'LastJobState'|translate}}</dt>\n <dd>\n @if (jobInfo.error) {\n <mat-icon [bizdocTooltip]=\"jobInfo.error\">report</mat-icon>\n }\n <span class=\"job-state\">{{jobInfo.lastJobState| translate}}</span>\n </dd>\n }\n </dl>\n }\n <div class=\"row start center\">\n <button mat-stroked-button (click)=\"execute()\" [disabled]=\"model.draft || working\">\n <span> {{'Execute'|translate}}</span>\n </button>\n &nbsp;\n @if (working) {\n <mat-spinner diameter=\"22\"></mat-spinner>\n }\n </div>\n </ng-template>\n <!-- edit -->\n <ng-template bizdocEditContent>\n <ng-container [formGroup]=\"form\">\n </ng-container>\n </ng-template>\n</bizdoc-designer-element>\n", dependencies: [{ kind: "directive", type: i1.NgControlStatusGroup, selector: "[formGroupName],[formArrayName],[ngModelGroup],[formGroup],form:not([ngNoForm]),[ngForm]" }, { kind: "directive", type: i1.FormGroupDirective, selector: "[formGroup]", inputs: ["formGroup"], outputs: ["ngSubmit"], exportAs: ["ngForm"] }, { kind: "component", type: i4.MatProgressSpinner, selector: "mat-progress-spinner, mat-spinner", inputs: ["color", "mode", "value", "diameter", "strokeWidth"], exportAs: ["matProgressSpinner"] }, { kind: "component", type: i5.MatButton, selector: " button[mat-button], button[mat-raised-button], button[mat-flat-button], button[mat-stroked-button] ", exportAs: ["matButton"] }, { kind: "component", type: i6.MatIcon, selector: "mat-icon", inputs: ["color", "inline", "svgIcon", "fontSet", "fontIcon"], exportAs: ["matIcon"] }, { kind: "directive", type: i7.TooltipDirective, selector: "[bizdocTooltip]", inputs: ["bizdocTooltip", "bizdocTooltipTemplate", "bizdocTooltipContext", "bizdocTooltipPosition", "bizdocTooltipDuration", "bizdocTooltipDisabled"] }, { kind: "directive", type: i8.EditContentDirective, selector: "[bizdocEditContent]" }, { kind: "directive", type: i8.WidgetContentDirective, selector: "[bizdocContent]" }, { kind: "component", type: i8.DesignerItemComponent, selector: "bizdoc-designer-element", inputs: ["privileges", "icon", "form", "context"], outputs: ["save", "continue"] }, { kind: "pipe", type: i9.TimeAgoPipe, name: "amTimeAgo" }, { kind: "pipe", type: i10.TranslatePipe, name: "translate" }] }); }
47
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.4", ngImport: i0, type: JobDesignComponent, deps: [{ token: i1.FormBuilder }, { token: i2.SystemService }, { token: i3.PromptService }, { token: i0.ElementRef }, { token: DesignerRef }], target: i0.ɵɵFactoryTarget.Component }); }
48
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "18.2.4", type: JobDesignComponent, selector: "ng-component", usesInheritance: true, ngImport: i0, template: "<bizdoc-designer-element [form]=\"form\" [privileges]=\"true\">\r\n <!-- widget -->\r\n <ng-template bizdocContent>\r\n @if (jobInfo) {\r\n <dl>\r\n @if (jobInfo.lastExecution) {\r\n <dt>{{'LastExecution'|translate}}</dt>\r\n <dd>{{jobInfo.lastExecution|amTimeAgo}}</dd>\r\n }\r\n @if (jobInfo.nextExecution) {\r\n <dt>{{'NextExecution'|translate}}</dt>\r\n <dd>{{jobInfo.nextExecution|amTimeAgo}}</dd>\r\n }\r\n @if (jobInfo.lastJobState) {\r\n <dt>{{'LastJobState'|translate}}</dt>\r\n <dd>\r\n @if (jobInfo.error) {\r\n <mat-icon [bizdocTooltip]=\"jobInfo.error\">report</mat-icon>\r\n }\r\n <span class=\"job-state\">{{jobInfo.lastJobState| translate}}</span>\r\n </dd>\r\n }\r\n </dl>\r\n }\r\n <div class=\"row start center\">\r\n <button mat-stroked-button (click)=\"execute()\" [disabled]=\"model.draft || working\">\r\n <span> {{'Execute'|translate}}</span>\r\n </button>\r\n &nbsp;\r\n @if (working) {\r\n <mat-spinner diameter=\"22\"></mat-spinner>\r\n }\r\n </div>\r\n </ng-template>\r\n <!-- edit -->\r\n <ng-template bizdocEditContent>\r\n <ng-container [formGroup]=\"form\">\r\n </ng-container>\r\n </ng-template>\r\n</bizdoc-designer-element>\r\n", dependencies: [{ kind: "directive", type: i1.NgControlStatusGroup, selector: "[formGroupName],[formArrayName],[ngModelGroup],[formGroup],form:not([ngNoForm]),[ngForm]" }, { kind: "directive", type: i1.FormGroupDirective, selector: "[formGroup]", inputs: ["formGroup"], outputs: ["ngSubmit"], exportAs: ["ngForm"] }, { kind: "component", type: i4.MatProgressSpinner, selector: "mat-progress-spinner, mat-spinner", inputs: ["color", "mode", "value", "diameter", "strokeWidth"], exportAs: ["matProgressSpinner"] }, { kind: "component", type: i5.MatButton, selector: " button[mat-button], button[mat-raised-button], button[mat-flat-button], button[mat-stroked-button] ", exportAs: ["matButton"] }, { kind: "component", type: i6.MatIcon, selector: "mat-icon", inputs: ["color", "inline", "svgIcon", "fontSet", "fontIcon"], exportAs: ["matIcon"] }, { kind: "directive", type: i7.TooltipDirective, selector: "[bizdocTooltip]", inputs: ["bizdocTooltip", "bizdocTooltipTemplate", "bizdocTooltipContext", "bizdocTooltipPosition", "bizdocTooltipDuration", "bizdocTooltipDisabled"] }, { kind: "directive", type: i8.EditContentDirective, selector: "[bizdocEditContent]" }, { kind: "directive", type: i8.WidgetContentDirective, selector: "[bizdocContent]" }, { kind: "component", type: i8.DesignerItemComponent, selector: "bizdoc-designer-element", inputs: ["privileges", "icon", "form", "context"], outputs: ["save", "continue"] }, { kind: "pipe", type: i9.TimeAgoPipe, name: "amTimeAgo" }, { kind: "pipe", type: i10.TranslatePipe, name: "translate" }] }); }
50
49
  }
51
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.3", ngImport: i0, type: JobDesignComponent, decorators: [{
50
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.4", ngImport: i0, type: JobDesignComponent, decorators: [{
52
51
  type: Component,
53
- args: [{ template: "<bizdoc-designer-element [form]=\"form\" [privileges]=\"true\">\n <!-- widget -->\n <ng-template bizdocContent>\n @if (jobInfo) {\n <dl>\n @if (jobInfo.lastExecution) {\n <dt>{{'LastExecution'|translate}}</dt>\n <dd>{{jobInfo.lastExecution|amTimeAgo}}</dd>\n }\n @if (jobInfo.nextExecution) {\n <dt>{{'NextExecution'|translate}}</dt>\n <dd>{{jobInfo.nextExecution|amTimeAgo}}</dd>\n }\n @if (jobInfo.lastJobState) {\n <dt>{{'LastJobState'|translate}}</dt>\n <dd>\n @if (jobInfo.error) {\n <mat-icon [bizdocTooltip]=\"jobInfo.error\">report</mat-icon>\n }\n <span class=\"job-state\">{{jobInfo.lastJobState| translate}}</span>\n </dd>\n }\n </dl>\n }\n <div class=\"row start center\">\n <button mat-stroked-button (click)=\"execute()\" [disabled]=\"model.draft || working\">\n <span> {{'Execute'|translate}}</span>\n </button>\n &nbsp;\n @if (working) {\n <mat-spinner diameter=\"22\"></mat-spinner>\n }\n </div>\n </ng-template>\n <!-- edit -->\n <ng-template bizdocEditContent>\n <ng-container [formGroup]=\"form\">\n </ng-container>\n </ng-template>\n</bizdoc-designer-element>\n" }]
52
+ args: [{ template: "<bizdoc-designer-element [form]=\"form\" [privileges]=\"true\">\r\n <!-- widget -->\r\n <ng-template bizdocContent>\r\n @if (jobInfo) {\r\n <dl>\r\n @if (jobInfo.lastExecution) {\r\n <dt>{{'LastExecution'|translate}}</dt>\r\n <dd>{{jobInfo.lastExecution|amTimeAgo}}</dd>\r\n }\r\n @if (jobInfo.nextExecution) {\r\n <dt>{{'NextExecution'|translate}}</dt>\r\n <dd>{{jobInfo.nextExecution|amTimeAgo}}</dd>\r\n }\r\n @if (jobInfo.lastJobState) {\r\n <dt>{{'LastJobState'|translate}}</dt>\r\n <dd>\r\n @if (jobInfo.error) {\r\n <mat-icon [bizdocTooltip]=\"jobInfo.error\">report</mat-icon>\r\n }\r\n <span class=\"job-state\">{{jobInfo.lastJobState| translate}}</span>\r\n </dd>\r\n }\r\n </dl>\r\n }\r\n <div class=\"row start center\">\r\n <button mat-stroked-button (click)=\"execute()\" [disabled]=\"model.draft || working\">\r\n <span> {{'Execute'|translate}}</span>\r\n </button>\r\n &nbsp;\r\n @if (working) {\r\n <mat-spinner diameter=\"22\"></mat-spinner>\r\n }\r\n </div>\r\n </ng-template>\r\n <!-- edit -->\r\n <ng-template bizdocEditContent>\r\n <ng-container [formGroup]=\"form\">\r\n </ng-container>\r\n </ng-template>\r\n</bizdoc-designer-element>\r\n" }]
54
53
  }], ctorParameters: () => [{ type: i1.FormBuilder }, { type: i2.SystemService }, { type: i3.PromptService }, { type: i0.ElementRef }, { type: i11.DesignerRef, decorators: [{
55
54
  type: Inject,
56
55
  args: [DesignerRef]
57
56
  }] }] });
58
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiam9iLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL2xpYnJhcmllcy9jb3JlL3NyYy9saWIvYWRtaW4vYXJjaGl0ZWN0dXJlL2VsZW1lbnRzL2pvYi5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJyYXJpZXMvY29yZS9zcmMvbGliL2FkbWluL2FyY2hpdGVjdHVyZS9lbGVtZW50cy9qb2IuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFNBQVMsRUFBYyxNQUFNLEVBQVUsTUFBTSxlQUFlLENBQUM7QUFJdEUsT0FBTyxFQUFFLDRCQUE0QixFQUFFLE1BQU0sa0JBQWtCLENBQUM7QUFDaEUsT0FBTyxFQUFFLFdBQVcsRUFBRSxNQUFNLGlCQUFpQixDQUFDOzs7Ozs7Ozs7Ozs7O0FBTTlDLE1BQU0sT0FBTyxrQkFBbUIsU0FBUSw0QkFBNEI7SUFJbEUsWUFBWSxFQUFlLEVBQ2pCLFFBQXVCLEVBQ3ZCLEdBQWtCLEVBQzFCLE9BQXdCLEVBQ0gsR0FBZ0I7UUFDckMsS0FBSyxDQUFDLEVBQUUsRUFBRSxPQUFPLEVBQUUsR0FBRyxDQUFDLENBQUM7UUFKaEIsYUFBUSxHQUFSLFFBQVEsQ0FBZTtRQUN2QixRQUFHLEdBQUgsR0FBRyxDQUFlO1FBTG5CLFNBQUksR0FBRyxJQUFJLENBQUMsR0FBRyxDQUFDLEtBQUssQ0FBQyxFQUFFLENBQUMsQ0FBQztRQUNuQyxZQUFPLEdBQUcsS0FBSyxDQUFDO0lBUWhCLENBQUM7SUFDRCxRQUFRO1FBQ04sUUFBUSxJQUFJLENBQUMsSUFBSSxFQUFFLENBQUM7WUFDbEIsS0FBSyxRQUFRO2dCQUNYLElBQUksQ0FBQyxRQUFRLENBQUMsR0FBRyxDQUFDLElBQUksQ0FBQyxLQUFLLENBQUMsSUFBSSxDQUFDLENBQUMsU0FBUyxDQUFDLENBQUMsQ0FBQyxFQUFFO29CQUMvQyxJQUFJLENBQUMsT0FBTyxHQUFHLENBQUMsQ0FBQyxPQUFPLENBQUM7Z0JBQzNCLENBQUMsQ0FBQyxDQUFDO2dCQUNILE1BQU07WUFDUixLQUFLLE1BQU07Z0JBQ1QsTUFBTTtRQUNWLENBQUM7UUFDRCxLQUFLLENBQUMsUUFBUSxFQUFFLENBQUM7SUFDbkIsQ0FBQztJQUNELE9BQU87UUFDTCxJQUFJLENBQUMsT0FBTyxHQUFHLElBQUksQ0FBQztRQUNwQixJQUFJLENBQUMsUUFBUSxDQUFDLE9BQU8sQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLElBQUksQ0FBQyxDQUFDLFNBQVMsQ0FBQztZQUMvQyxJQUFJLEVBQUUsQ0FBQyxDQUFDLEVBQUU7Z0JBQ1IsSUFBSSxDQUFDLE9BQU8sR0FBRyxDQUFDLENBQUM7Z0JBQ2pCLElBQUksQ0FBQyxPQUFPLEdBQUcsS0FBSyxDQUFDO1lBQ3ZCLENBQUMsRUFBRSxLQUFLLEVBQUUsR0FBRyxFQUFFO2dCQUNiLElBQUksQ0FBQyxPQUFPLEdBQUcsS0FBSyxDQUFDO2dCQUNyQixJQUFJLENBQUMsR0FBRyxDQUFDLEtBQUssRUFBRSxDQUFDO1lBQ25CLENBQUM7U0FDRixDQUFDLENBQUM7SUFDTCxDQUFDOzhHQWxDVSxrQkFBa0IsaUlBUW5CLFdBQVc7a0dBUlYsa0JBQWtCLDJFQ1gvQiw0eENBd0NBOzsyRkQ3QmEsa0JBQWtCO2tCQUo5QixTQUFTOzs7MEJBWUwsTUFBTTsyQkFBQyxXQUFXIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29tcG9uZW50LCBFbGVtZW50UmVmLCBJbmplY3QsIE9uSW5pdCB9IGZyb20gXCJAYW5ndWxhci9jb3JlXCI7XHJcbmltcG9ydCB7IEZvcm1CdWlsZGVyIH0gZnJvbSBcIkBhbmd1bGFyL2Zvcm1zXCI7XHJcbmltcG9ydCB7IFByb21wdFNlcnZpY2UgfSBmcm9tIFwiLi4vLi4vLi4vY29yZS9wcm9tcHQuc2VydmljZVwiO1xyXG5pbXBvcnQgeyBCYWNrZ3JvdW5kSm9iSW5mbywgU3lzdGVtU2VydmljZSB9IGZyb20gXCIuLi8uLi9zeXN0ZW0uc2VydmljZVwiO1xyXG5pbXBvcnQgeyBEZXNpZ25lclR5cGVFbGVtZW50Q29tcG9uZW50IH0gZnJvbSBcIi4uL2Rlc2lnbmVyLmJhc2VcIjtcclxuaW1wb3J0IHsgRGVzaWduZXJSZWYgfSBmcm9tIFwiLi4vZGVjbGFyYXRpb25zXCI7XHJcblxyXG5AQ29tcG9uZW50KHtcclxuICB0ZW1wbGF0ZVVybDogJ2pvYi5jb21wb25lbnQuaHRtbCcsXHJcbiAgLy9zdHlsZVVybHM6IFsnam9iLmNvbXBvbmVudC5zY3NzJ11cclxufSlcclxuZXhwb3J0IGNsYXNzIEpvYkRlc2lnbkNvbXBvbmVudCBleHRlbmRzIERlc2lnbmVyVHlwZUVsZW1lbnRDb21wb25lbnQgaW1wbGVtZW50cyBPbkluaXQge1xyXG4gIHJlYWRvbmx5IGZvcm0gPSB0aGlzLl9mYi5ncm91cCh7fSk7XHJcbiAgd29ya2luZyA9IGZhbHNlO1xyXG4gIGpvYkluZm86IEJhY2tncm91bmRKb2JJbmZvO1xyXG4gIGNvbnN0cnVjdG9yKGZiOiBGb3JtQnVpbGRlcixcclxuICAgIHByaXZhdGUgX3NlcnZpY2U6IFN5c3RlbVNlcnZpY2UsXHJcbiAgICBwcml2YXRlIF9wczogUHJvbXB0U2VydmljZSxcclxuICAgIGVsZW1lbnQ6IEVsZW1lbnRSZWY8YW55PixcclxuICAgIEBJbmplY3QoRGVzaWduZXJSZWYpIHJlZjogRGVzaWduZXJSZWYpIHtcclxuICAgIHN1cGVyKGZiLCBlbGVtZW50LCByZWYpO1xyXG4gIH1cclxuICBuZ09uSW5pdCgpIHtcclxuICAgIHN3aXRjaCAodGhpcy5tb2RlKSB7XHJcbiAgICAgIGNhc2UgJ3dpZGdldCc6XHJcbiAgICAgICAgdGhpcy5fc2VydmljZS5qb2IodGhpcy5tb2RlbC5uYW1lKS5zdWJzY3JpYmUociA9PiB7XHJcbiAgICAgICAgICB0aGlzLmpvYkluZm8gPSByLmpvYkluZm87XHJcbiAgICAgICAgfSk7XHJcbiAgICAgICAgYnJlYWs7XHJcbiAgICAgIGNhc2UgJ2VkaXQnOlxyXG4gICAgICAgIGJyZWFrO1xyXG4gICAgfVxyXG4gICAgc3VwZXIubmdPbkluaXQoKTtcclxuICB9XHJcbiAgZXhlY3V0ZSgpIHtcclxuICAgIHRoaXMud29ya2luZyA9IHRydWU7XHJcbiAgICB0aGlzLl9zZXJ2aWNlLmV4ZWN1dGUodGhpcy5tb2RlbC5uYW1lKS5zdWJzY3JpYmUoe1xyXG4gICAgICBuZXh0OiBlID0+IHtcclxuICAgICAgICB0aGlzLmpvYkluZm8gPSBlO1xyXG4gICAgICAgIHRoaXMud29ya2luZyA9IGZhbHNlO1xyXG4gICAgICB9LCBlcnJvcjogKCkgPT4ge1xyXG4gICAgICAgIHRoaXMud29ya2luZyA9IGZhbHNlO1xyXG4gICAgICAgIHRoaXMuX3BzLmVycm9yKCk7XHJcbiAgICAgIH1cclxuICAgIH0pO1xyXG4gIH1cclxufVxyXG4iLCI8Yml6ZG9jLWRlc2lnbmVyLWVsZW1lbnQgW2Zvcm1dPVwiZm9ybVwiIFtwcml2aWxlZ2VzXT1cInRydWVcIj5cbiAgPCEtLSB3aWRnZXQgLS0+XG4gIDxuZy10ZW1wbGF0ZSBiaXpkb2NDb250ZW50PlxuICAgIEBpZiAoam9iSW5mbykge1xuICAgICAgPGRsPlxuICAgICAgICBAaWYgKGpvYkluZm8ubGFzdEV4ZWN1dGlvbikge1xuICAgICAgICAgIDxkdD57eydMYXN0RXhlY3V0aW9uJ3x0cmFuc2xhdGV9fTwvZHQ+XG4gICAgICAgICAgPGRkPnt7am9iSW5mby5sYXN0RXhlY3V0aW9ufGFtVGltZUFnb319PC9kZD5cbiAgICAgICAgfVxuICAgICAgICBAaWYgKGpvYkluZm8ubmV4dEV4ZWN1dGlvbikge1xuICAgICAgICAgIDxkdD57eydOZXh0RXhlY3V0aW9uJ3x0cmFuc2xhdGV9fTwvZHQ+XG4gICAgICAgICAgPGRkPnt7am9iSW5mby5uZXh0RXhlY3V0aW9ufGFtVGltZUFnb319PC9kZD5cbiAgICAgICAgfVxuICAgICAgICBAaWYgKGpvYkluZm8ubGFzdEpvYlN0YXRlKSB7XG4gICAgICAgICAgPGR0Pnt7J0xhc3RKb2JTdGF0ZSd8dHJhbnNsYXRlfX08L2R0PlxuICAgICAgICAgIDxkZD5cbiAgICAgICAgICAgIEBpZiAoam9iSW5mby5lcnJvcikge1xuICAgICAgICAgICAgICA8bWF0LWljb24gW2JpemRvY1Rvb2x0aXBdPVwiam9iSW5mby5lcnJvclwiPnJlcG9ydDwvbWF0LWljb24+XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICA8c3BhbiBjbGFzcz1cImpvYi1zdGF0ZVwiPnt7am9iSW5mby5sYXN0Sm9iU3RhdGV8IHRyYW5zbGF0ZX19PC9zcGFuPlxuICAgICAgICAgIDwvZGQ+XG4gICAgICAgIH1cbiAgICAgIDwvZGw+XG4gICAgfVxuICAgIDxkaXYgY2xhc3M9XCJyb3cgc3RhcnQgY2VudGVyXCI+XG4gICAgICA8YnV0dG9uIG1hdC1zdHJva2VkLWJ1dHRvbiAoY2xpY2spPVwiZXhlY3V0ZSgpXCIgW2Rpc2FibGVkXT1cIm1vZGVsLmRyYWZ0IHx8IHdvcmtpbmdcIj5cbiAgICAgICAgPHNwYW4+IHt7J0V4ZWN1dGUnfHRyYW5zbGF0ZX19PC9zcGFuPlxuICAgICAgPC9idXR0b24+XG4gICAgICAmbmJzcDtcbiAgICAgIEBpZiAod29ya2luZykge1xuICAgICAgICA8bWF0LXNwaW5uZXIgZGlhbWV0ZXI9XCIyMlwiPjwvbWF0LXNwaW5uZXI+XG4gICAgICB9XG4gICAgPC9kaXY+XG4gIDwvbmctdGVtcGxhdGU+XG4gIDwhLS0gZWRpdCAtLT5cbiAgPG5nLXRlbXBsYXRlIGJpemRvY0VkaXRDb250ZW50PlxuICAgIDxuZy1jb250YWluZXIgW2Zvcm1Hcm91cF09XCJmb3JtXCI+XG4gICAgPC9uZy1jb250YWluZXI+XG4gIDwvbmctdGVtcGxhdGU+XG48L2JpemRvYy1kZXNpZ25lci1lbGVtZW50PlxuIl19
57
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiam9iLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2NvcmUvc3JjL2xpYi9hZG1pbi9hcmNoaXRlY3R1cmUvZWxlbWVudHMvam9iLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2NvcmUvc3JjL2xpYi9hZG1pbi9hcmNoaXRlY3R1cmUvZWxlbWVudHMvam9iLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxTQUFTLEVBQWMsTUFBTSxFQUFVLE1BQU0sZUFBZSxDQUFDO0FBSXRFLE9BQU8sRUFBRSw0QkFBNEIsRUFBRSxNQUFNLGtCQUFrQixDQUFDO0FBQ2hFLE9BQU8sRUFBRSxXQUFXLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQzs7Ozs7Ozs7Ozs7OztBQU05QyxNQUFNLE9BQU8sa0JBQW1CLFNBQVEsNEJBQTRCO0lBSWxFLFlBQVksRUFBZSxFQUNqQixRQUF1QixFQUN2QixHQUFrQixFQUMxQixPQUF3QixFQUNILEdBQWdCO1FBQ3JDLEtBQUssQ0FBQyxFQUFFLEVBQUUsT0FBTyxFQUFFLEdBQUcsQ0FBQyxDQUFDO1FBSmhCLGFBQVEsR0FBUixRQUFRLENBQWU7UUFDdkIsUUFBRyxHQUFILEdBQUcsQ0FBZTtRQUxuQixTQUFJLEdBQUcsSUFBSSxDQUFDLEdBQUcsQ0FBQyxLQUFLLENBQUMsRUFBRSxDQUFDLENBQUM7UUFDbkMsWUFBTyxHQUFHLEtBQUssQ0FBQztJQVFoQixDQUFDO0lBQ0QsUUFBUTtRQUNOLFFBQVEsSUFBSSxDQUFDLElBQUksRUFBRSxDQUFDO1lBQ2xCLEtBQUssUUFBUTtnQkFDWCxJQUFJLENBQUMsUUFBUSxDQUFDLEdBQUcsQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLElBQUksQ0FBQyxDQUFDLFNBQVMsQ0FBQyxDQUFDLENBQUMsRUFBRTtvQkFDL0MsSUFBSSxDQUFDLE9BQU8sR0FBRyxDQUFDLENBQUMsT0FBTyxDQUFDO2dCQUMzQixDQUFDLENBQUMsQ0FBQztnQkFDSCxNQUFNO1lBQ1IsS0FBSyxNQUFNO2dCQUNULE1BQU07UUFDVixDQUFDO0lBQ0gsQ0FBQztJQUNELE9BQU87UUFDTCxJQUFJLENBQUMsT0FBTyxHQUFHLElBQUksQ0FBQztRQUNwQixJQUFJLENBQUMsUUFBUSxDQUFDLE9BQU8sQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLElBQUksQ0FBQyxDQUFDLFNBQVMsQ0FBQztZQUMvQyxJQUFJLEVBQUUsQ0FBQyxDQUFDLEVBQUU7Z0JBQ1IsSUFBSSxDQUFDLE9BQU8sR0FBRyxDQUFDLENBQUM7Z0JBQ2pCLElBQUksQ0FBQyxPQUFPLEdBQUcsS0FBSyxDQUFDO1lBQ3ZCLENBQUMsRUFBRSxLQUFLLEVBQUUsR0FBRyxFQUFFO2dCQUNiLElBQUksQ0FBQyxPQUFPLEdBQUcsS0FBSyxDQUFDO2dCQUNyQixJQUFJLENBQUMsR0FBRyxDQUFDLEtBQUssRUFBRSxDQUFDO1lBQ25CLENBQUM7U0FDRixDQUFDLENBQUM7SUFDTCxDQUFDOzhHQWpDVSxrQkFBa0IsaUlBUW5CLFdBQVc7a0dBUlYsa0JBQWtCLDJFQ1gvQiw0MkNBd0NBOzsyRkQ3QmEsa0JBQWtCO2tCQUo5QixTQUFTOzs7MEJBWUwsTUFBTTsyQkFBQyxXQUFXIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29tcG9uZW50LCBFbGVtZW50UmVmLCBJbmplY3QsIE9uSW5pdCB9IGZyb20gXCJAYW5ndWxhci9jb3JlXCI7XHJcbmltcG9ydCB7IEZvcm1CdWlsZGVyIH0gZnJvbSBcIkBhbmd1bGFyL2Zvcm1zXCI7XHJcbmltcG9ydCB7IFByb21wdFNlcnZpY2UgfSBmcm9tIFwiLi4vLi4vLi4vY29yZS9wcm9tcHQuc2VydmljZVwiO1xyXG5pbXBvcnQgeyBCYWNrZ3JvdW5kSm9iSW5mbywgU3lzdGVtU2VydmljZSB9IGZyb20gXCIuLi8uLi9zeXN0ZW0uc2VydmljZVwiO1xyXG5pbXBvcnQgeyBEZXNpZ25lclR5cGVFbGVtZW50Q29tcG9uZW50IH0gZnJvbSBcIi4uL2Rlc2lnbmVyLmJhc2VcIjtcclxuaW1wb3J0IHsgRGVzaWduZXJSZWYgfSBmcm9tIFwiLi4vZGVjbGFyYXRpb25zXCI7XHJcblxyXG5AQ29tcG9uZW50KHtcclxuICB0ZW1wbGF0ZVVybDogJ2pvYi5jb21wb25lbnQuaHRtbCcsXHJcbiAgLy9zdHlsZVVybHM6IFsnam9iLmNvbXBvbmVudC5zY3NzJ11cclxufSlcclxuZXhwb3J0IGNsYXNzIEpvYkRlc2lnbkNvbXBvbmVudCBleHRlbmRzIERlc2lnbmVyVHlwZUVsZW1lbnRDb21wb25lbnQgaW1wbGVtZW50cyBPbkluaXQge1xyXG4gIHJlYWRvbmx5IGZvcm0gPSB0aGlzLl9mYi5ncm91cCh7fSk7XHJcbiAgd29ya2luZyA9IGZhbHNlO1xyXG4gIGpvYkluZm86IEJhY2tncm91bmRKb2JJbmZvO1xyXG4gIGNvbnN0cnVjdG9yKGZiOiBGb3JtQnVpbGRlcixcclxuICAgIHByaXZhdGUgX3NlcnZpY2U6IFN5c3RlbVNlcnZpY2UsXHJcbiAgICBwcml2YXRlIF9wczogUHJvbXB0U2VydmljZSxcclxuICAgIGVsZW1lbnQ6IEVsZW1lbnRSZWY8YW55PixcclxuICAgIEBJbmplY3QoRGVzaWduZXJSZWYpIHJlZjogRGVzaWduZXJSZWYpIHtcclxuICAgIHN1cGVyKGZiLCBlbGVtZW50LCByZWYpO1xyXG4gIH1cclxuICBuZ09uSW5pdCgpIHtcclxuICAgIHN3aXRjaCAodGhpcy5tb2RlKSB7XHJcbiAgICAgIGNhc2UgJ3dpZGdldCc6XHJcbiAgICAgICAgdGhpcy5fc2VydmljZS5qb2IodGhpcy5tb2RlbC5uYW1lKS5zdWJzY3JpYmUociA9PiB7XHJcbiAgICAgICAgICB0aGlzLmpvYkluZm8gPSByLmpvYkluZm87XHJcbiAgICAgICAgfSk7XHJcbiAgICAgICAgYnJlYWs7XHJcbiAgICAgIGNhc2UgJ2VkaXQnOlxyXG4gICAgICAgIGJyZWFrO1xyXG4gICAgfVxyXG4gIH1cclxuICBleGVjdXRlKCkge1xyXG4gICAgdGhpcy53b3JraW5nID0gdHJ1ZTtcclxuICAgIHRoaXMuX3NlcnZpY2UuZXhlY3V0ZSh0aGlzLm1vZGVsLm5hbWUpLnN1YnNjcmliZSh7XHJcbiAgICAgIG5leHQ6IGUgPT4ge1xyXG4gICAgICAgIHRoaXMuam9iSW5mbyA9IGU7XHJcbiAgICAgICAgdGhpcy53b3JraW5nID0gZmFsc2U7XHJcbiAgICAgIH0sIGVycm9yOiAoKSA9PiB7XHJcbiAgICAgICAgdGhpcy53b3JraW5nID0gZmFsc2U7XHJcbiAgICAgICAgdGhpcy5fcHMuZXJyb3IoKTtcclxuICAgICAgfVxyXG4gICAgfSk7XHJcbiAgfVxyXG59XHJcbiIsIjxiaXpkb2MtZGVzaWduZXItZWxlbWVudCBbZm9ybV09XCJmb3JtXCIgW3ByaXZpbGVnZXNdPVwidHJ1ZVwiPlxyXG4gIDwhLS0gd2lkZ2V0IC0tPlxyXG4gIDxuZy10ZW1wbGF0ZSBiaXpkb2NDb250ZW50PlxyXG4gICAgQGlmIChqb2JJbmZvKSB7XHJcbiAgICAgIDxkbD5cclxuICAgICAgICBAaWYgKGpvYkluZm8ubGFzdEV4ZWN1dGlvbikge1xyXG4gICAgICAgICAgPGR0Pnt7J0xhc3RFeGVjdXRpb24nfHRyYW5zbGF0ZX19PC9kdD5cclxuICAgICAgICAgIDxkZD57e2pvYkluZm8ubGFzdEV4ZWN1dGlvbnxhbVRpbWVBZ299fTwvZGQ+XHJcbiAgICAgICAgfVxyXG4gICAgICAgIEBpZiAoam9iSW5mby5uZXh0RXhlY3V0aW9uKSB7XHJcbiAgICAgICAgICA8ZHQ+e3snTmV4dEV4ZWN1dGlvbid8dHJhbnNsYXRlfX08L2R0PlxyXG4gICAgICAgICAgPGRkPnt7am9iSW5mby5uZXh0RXhlY3V0aW9ufGFtVGltZUFnb319PC9kZD5cclxuICAgICAgICB9XHJcbiAgICAgICAgQGlmIChqb2JJbmZvLmxhc3RKb2JTdGF0ZSkge1xyXG4gICAgICAgICAgPGR0Pnt7J0xhc3RKb2JTdGF0ZSd8dHJhbnNsYXRlfX08L2R0PlxyXG4gICAgICAgICAgPGRkPlxyXG4gICAgICAgICAgICBAaWYgKGpvYkluZm8uZXJyb3IpIHtcclxuICAgICAgICAgICAgICA8bWF0LWljb24gW2JpemRvY1Rvb2x0aXBdPVwiam9iSW5mby5lcnJvclwiPnJlcG9ydDwvbWF0LWljb24+XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgPHNwYW4gY2xhc3M9XCJqb2Itc3RhdGVcIj57e2pvYkluZm8ubGFzdEpvYlN0YXRlfCB0cmFuc2xhdGV9fTwvc3Bhbj5cclxuICAgICAgICAgIDwvZGQ+XHJcbiAgICAgICAgfVxyXG4gICAgICA8L2RsPlxyXG4gICAgfVxyXG4gICAgPGRpdiBjbGFzcz1cInJvdyBzdGFydCBjZW50ZXJcIj5cclxuICAgICAgPGJ1dHRvbiBtYXQtc3Ryb2tlZC1idXR0b24gKGNsaWNrKT1cImV4ZWN1dGUoKVwiIFtkaXNhYmxlZF09XCJtb2RlbC5kcmFmdCB8fCB3b3JraW5nXCI+XHJcbiAgICAgICAgPHNwYW4+IHt7J0V4ZWN1dGUnfHRyYW5zbGF0ZX19PC9zcGFuPlxyXG4gICAgICA8L2J1dHRvbj5cclxuICAgICAgJm5ic3A7XHJcbiAgICAgIEBpZiAod29ya2luZykge1xyXG4gICAgICAgIDxtYXQtc3Bpbm5lciBkaWFtZXRlcj1cIjIyXCI+PC9tYXQtc3Bpbm5lcj5cclxuICAgICAgfVxyXG4gICAgPC9kaXY+XHJcbiAgPC9uZy10ZW1wbGF0ZT5cclxuICA8IS0tIGVkaXQgLS0+XHJcbiAgPG5nLXRlbXBsYXRlIGJpemRvY0VkaXRDb250ZW50PlxyXG4gICAgPG5nLWNvbnRhaW5lciBbZm9ybUdyb3VwXT1cImZvcm1cIj5cclxuICAgIDwvbmctY29udGFpbmVyPlxyXG4gIDwvbmctdGVtcGxhdGU+XHJcbjwvYml6ZG9jLWRlc2lnbmVyLWVsZW1lbnQ+XHJcbiJdfQ==
@@ -36,7 +36,7 @@ let MatrixViewDesignComponent = class MatrixViewDesignComponent extends Designer
36
36
  closeView(evt) {
37
37
  this.view = null;
38
38
  if (this.context.mode === 'add')
39
- this.context.collection.push(this.context.form);
39
+ this.context.collection?.push(this.context.form);
40
40
  evt?.preventDefault();
41
41
  evt?.stopPropagation();
42
42
  }
@@ -84,15 +84,15 @@ let MatrixViewDesignComponent = class MatrixViewDesignComponent extends Designer
84
84
  calculate: sum?.calculate || 'Sum'
85
85
  });
86
86
  }
87
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.3", ngImport: i0, type: MatrixViewDesignComponent, deps: null, target: i0.ɵɵFactoryTarget.Component }); }
88
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "18.2.3", type: MatrixViewDesignComponent, selector: "ng-component", host: { classAttribute: "column" }, usesInheritance: true, ngImport: i0, template: "@if (mode !== 'widget') {\n @if (view) {\n<h2 class=\"mat-h2\">{{context.title|translate}}</h2>\n<div (document:keydown.escape)=\"closeView($event)\" #element class=\"column\">\n <ng-container *ngTemplateOutlet=\"view; context: context\"></ng-container>\n</div>\n<div class=\"row actions\">\n <span class=\"divider\"></span>\n <button mat-icon-button (click)=\"closeView()\" type=\"button\" [bizdocTooltip]=\"'Back'|translate\"><mat-icon>keyboard_return</mat-icon></button>\n</div>\n } @else {\n<ng-container [formGroup]=\"form\">\n @if (cubes.length>1) {\n <mat-form-field>\n <mat-label>{{'Cube'|translate}}</mat-label>\n <mat-select required formControlName=\"cube\" (selectionChange)=\"cubeSelected($event)\">\n @for (c of cubes; track c) {\n <mat-option [value]=\"c.name\">{{c.title|localizedString}}</mat-option>\n }\n </mat-select>\n </mat-form-field>\n }\n <div class=\"row gap\">\n <mat-form-field class=\"flex\">\n <mat-label>{{'XAxis'|translate}}</mat-label>\n <mat-select formControlName=\"xAxis\" required>\n @for (a of cube?.axes; track a) {\n <mat-option [value]=\"a.name\">{{a.title }}</mat-option>\n }\n </mat-select>\n @if (form.controls.xAxis.hasError('required')) {\n <mat-error [innerHTML]=\"'RequiredErr'|translate:('XAxis'|translate)\"></mat-error>\n }\n </mat-form-field>\n <mat-form-field class=\"flex\">\n <mat-label>{{'Series'|translate}}</mat-label>\n <mat-select formControlName=\"series\" required>\n @for (a of cube?.axes; track a) {\n @if (form.controls.xAxis.value!==a.name) {\n <mat-option [value]=\"a.name\">{{a.title }}</mat-option>\n }\n }\n </mat-select>\n @if (form.controls.series.hasError('required')) {\n <mat-error [innerHTML]=\"'RequiredErr'|translate:('Series'|translate)\"></mat-error>\n }\n </mat-form-field>\n </div>\n @if (cube?.indices?.length) {\n <mat-form-field class=\"flex\">\n <mat-label>{{'Indices'|translate}}</mat-label>\n <mat-select formControlName=\"indices\" multiple>\n @for (i of cube.indices; track i) {\n <mat-option [value]=\"i.name\">{{i.title}}</mat-option>\n }\n </mat-select>\n </mat-form-field>\n }\n <div class=\"row gap\">\n <mat-form-field class=\"flex\">\n <mat-label>{{'Filters'|translate}}</mat-label>\n <mat-select formControlName=\"filters\" multiple>\n @for (a of cube?.axes; track a) {\n @if (form.controls.xAxis.value !== a.name && form.controls.series.value !== a.name) {\n <mat-option [value]=\"a.name\">{{a.title }}</mat-option>\n }\n }\n </mat-select>\n </mat-form-field>\n <mat-form-field class=\"flex\">\n <mat-label>{{'Aggregate'|translate}}</mat-label>\n <mat-select formControlName=\"aggregate\" multiple>\n @for (a of cube?.axes; track a) {\n @if (form.controls.xAxis.value !== a.name && form.controls.series.value !== a.name && (!form.controls.filters.value || form.controls.filters.value.indexOf(a.name) < 0)) {\n <mat-option [value]=\"a.name\">{{a.title }}</mat-option>\n }\n }\n </mat-select>\n <mat-hint></mat-hint>\n </mat-form-field>\n </div>\n <h2 class=\"mat-h2 row\">\n {{'Summary'|translate}}\n <span class=\"divider\"></span>\n <button mat-icon-button (click)=\"add(form.controls.sum, newSum(), 'Summary', sumform)\" [bizdocTooltip]=\"'Add'|translate\" type=\"button\"><mat-icon>add_circle_outline</mat-icon></button>\n </h2>\n <table class=\"mat-mdc-table\" formArrayName=\"sum\" cdkDropList (cdkDropListDropped)=\"drop($event, form.controls.sum)\">\n @for (s of form.controls.sum.controls; track s; let index = $index) {\n <tr class=\"mat-mdc-row\" [formGroup]=\"s\" cdkDrag>\n <td class=\"mat-mdc-cell\">\n <mat-icon cdkDragHandle>drag_indicator</mat-icon>\n </td>\n <td class=\"mat-mdc-cell\" style=\"width: 100%\">{{s.controls.title.value}}</td>\n <td class=\"mat-mdc-cell\" style=\"white-space: pre;\">\n <button mat-icon-button (click)=\"edit(s, 'Summary', sumform)\" [bizdocTooltip]=\"'Edit'|translate\" type=\"button\"><mat-icon>edit</mat-icon></button>\n <button mat-icon-button (click)=\"form.controls.sum.removeAt(index)\" [bizdocTooltip]=\"'Remove'|translate\" type=\"button\"><mat-icon>delete</mat-icon></button>\n </td>\n </tr>\n }\n </table>\n</ng-container>\n }\n}\n<ng-template #sumform let-form=\"form\">\n <ng-container [formGroup]=\"form\">\n <mat-form-field class=\"flex\">\n <mat-label>{{'Title'|translate}}</mat-label>\n <input matInput formControlName=\"title\" required />\n </mat-form-field>\n <mat-radio-group formControlName=\"axis\">\n <mat-radio-button value=\"XAxis\">{{'XAxis'|translate}}</mat-radio-button>\n <mat-radio-button value=\"Series\">{{'Series'|translate}}</mat-radio-button>\n </mat-radio-group>\n <mat-form-field class=\"flex\">\n <mat-label>{{'Calculate'|translate}}</mat-label>\n <mat-select formControlName=\"calculate\">\n <mat-option>{{'None'|translate}}</mat-option>\n <mat-option value=\"Quarter\">{{'Quarter'|translate}}</mat-option>\n <mat-option value=\"Year\">{{'Year'|translate}}</mat-option>\n <mat-option value=\"Month\">{{'Month'|translate}}</mat-option>\n <mat-option value=\"Sum\">{{'Sum'|translate}}</mat-option>\n </mat-select>\n </mat-form-field>\n <div class=\"row\">\n <mat-form-field class=\"flex\">\n <mat-label>{{'Value'|translate}}</mat-label>\n <input matInput formControlName=\"value\" />\n </mat-form-field>\n <mat-form-field class=\"flex\">\n <mat-label>{{'Format'|translate}}</mat-label>\n <mat-select formControlName=\"format\">\n <mat-option value=\"Currency\">{{'Currency'|translate}}</mat-option>\n <mat-option value=\"Number\">{{'Numeric'|translate}}</mat-option>\n <mat-option value=\"Percent\">{{'Percent'|translate}}</mat-option>\n </mat-select>\n </mat-form-field>\n </div>\n </ng-container>\n</ng-template>\n", dependencies: [{ kind: "directive", type: i1.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "directive", type: i2.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: i2.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i2.NgControlStatusGroup, selector: "[formGroupName],[formArrayName],[ngModelGroup],[formGroup],form:not([ngNoForm]),[ngForm]" }, { kind: "directive", type: i2.RequiredValidator, selector: ":not([type=checkbox])[required][formControlName],:not([type=checkbox])[required][formControl],:not([type=checkbox])[required][ngModel]", inputs: ["required"] }, { kind: "directive", type: i2.FormGroupDirective, selector: "[formGroup]", inputs: ["formGroup"], outputs: ["ngSubmit"], exportAs: ["ngForm"] }, { kind: "directive", type: i2.FormControlName, selector: "[formControlName]", inputs: ["formControlName", "disabled", "ngModel"], outputs: ["ngModelChange"] }, { kind: "directive", type: i2.FormArrayName, selector: "[formArrayName]", inputs: ["formArrayName"] }, { kind: "directive", type: i3.CdkDropList, selector: "[cdkDropList], cdk-drop-list", inputs: ["cdkDropListConnectedTo", "cdkDropListData", "cdkDropListOrientation", "id", "cdkDropListLockAxis", "cdkDropListDisabled", "cdkDropListSortingDisabled", "cdkDropListEnterPredicate", "cdkDropListSortPredicate", "cdkDropListAutoScrollDisabled", "cdkDropListAutoScrollStep", "cdkDropListElementContainer"], outputs: ["cdkDropListDropped", "cdkDropListEntered", "cdkDropListExited", "cdkDropListSorted"], exportAs: ["cdkDropList"] }, { kind: "directive", type: i3.CdkDrag, selector: "[cdkDrag]", inputs: ["cdkDragData", "cdkDragLockAxis", "cdkDragRootElement", "cdkDragBoundary", "cdkDragStartDelay", "cdkDragFreeDragPosition", "cdkDragDisabled", "cdkDragConstrainPosition", "cdkDragPreviewClass", "cdkDragPreviewContainer", "cdkDragScale"], outputs: ["cdkDragStarted", "cdkDragReleased", "cdkDragEnded", "cdkDragEntered", "cdkDragExited", "cdkDragDropped", "cdkDragMoved"], exportAs: ["cdkDrag"] }, { kind: "directive", type: i3.CdkDragHandle, selector: "[cdkDragHandle]", inputs: ["cdkDragHandleDisabled"] }, { kind: "directive", type: i4.MatRadioGroup, selector: "mat-radio-group", inputs: ["color", "name", "labelPosition", "value", "selected", "disabled", "required", "disabledInteractive"], outputs: ["change"], exportAs: ["matRadioGroup"] }, { kind: "component", type: i4.MatRadioButton, selector: "mat-radio-button", inputs: ["id", "name", "aria-label", "aria-labelledby", "aria-describedby", "disableRipple", "tabIndex", "checked", "value", "labelPosition", "disabled", "required", "color", "disabledInteractive"], outputs: ["change"], exportAs: ["matRadioButton"] }, { kind: "component", type: i5.MatOption, selector: "mat-option", inputs: ["value", "id", "disabled"], outputs: ["onSelectionChange"], exportAs: ["matOption"] }, { kind: "component", type: i6.MatFormField, selector: "mat-form-field", inputs: ["hideRequiredMarker", "color", "floatLabel", "appearance", "subscriptSizing", "hintLabel"], exportAs: ["matFormField"] }, { kind: "directive", type: i6.MatLabel, selector: "mat-label" }, { 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: ["aria-describedby", "panelClass", "disabled", "disableRipple", "tabIndex", "hideSingleSelectionIndicator", "placeholder", "required", "multiple", "disableOptionCentering", "compareWith", "value", "aria-label", "aria-labelledby", "errorStateMatcher", "typeaheadDebounceInterval", "sortComparator", "id", "panelWidth"], outputs: ["openedChange", "opened", "closed", "selectionChange", "valueChange"], exportAs: ["matSelect"] }, { kind: "component", type: i8.MatIconButton, selector: "button[mat-icon-button]", exportAs: ["matButton"] }, { 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: "component", type: i10.MatIcon, selector: "mat-icon", inputs: ["color", "inline", "svgIcon", "fontSet", "fontIcon"], exportAs: ["matIcon"] }, { kind: "directive", type: i11.TooltipDirective, selector: "[bizdocTooltip]", inputs: ["bizdocTooltip", "bizdocTooltipTemplate", "bizdocTooltipContext", "bizdocTooltipPosition", "bizdocTooltipDuration", "bizdocTooltipDisabled"] }, { kind: "pipe", type: i12.LocalizedStringPipe, name: "localizedString" }, { kind: "pipe", type: i13.TranslatePipe, name: "translate" }] }); }
87
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.4", ngImport: i0, type: MatrixViewDesignComponent, deps: null, target: i0.ɵɵFactoryTarget.Component }); }
88
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "18.2.4", type: MatrixViewDesignComponent, selector: "ng-component", host: { classAttribute: "column" }, usesInheritance: true, ngImport: i0, template: "@if (mode !== 'widget') {\r\n @if (view) {\r\n<h2 class=\"mat-h2\">{{context.title|translate}}</h2>\r\n<div (document:keydown.escape)=\"closeView($event)\" #element class=\"column\">\r\n <ng-container *ngTemplateOutlet=\"view; context: context\"></ng-container>\r\n</div>\r\n<div class=\"row actions\">\r\n <span class=\"divider\"></span>\r\n <button mat-icon-button (click)=\"closeView()\" type=\"button\" [bizdocTooltip]=\"'Back'|translate\"><mat-icon>keyboard_return</mat-icon></button>\r\n</div>\r\n } @else {\r\n<ng-container [formGroup]=\"form\">\r\n @if (cubes.length>1) {\r\n <mat-form-field>\r\n <mat-label>{{'Cube'|translate}}</mat-label>\r\n <mat-select required formControlName=\"cube\" (selectionChange)=\"cubeSelected($event)\">\r\n @for (c of cubes; track c) {\r\n <mat-option [value]=\"c.name\">{{c.title|localizedString}}</mat-option>\r\n }\r\n </mat-select>\r\n </mat-form-field>\r\n }\r\n <div class=\"row gap\">\r\n <mat-form-field class=\"flex\">\r\n <mat-label>{{'XAxis'|translate}}</mat-label>\r\n <mat-select formControlName=\"xAxis\" required>\r\n @for (a of cube?.axes; track a) {\r\n <mat-option [value]=\"a.name\">{{a.title }}</mat-option>\r\n }\r\n </mat-select>\r\n @if (form.controls.xAxis.hasError('required')) {\r\n <mat-error [innerHTML]=\"'RequiredErr'|translate:('XAxis'|translate)\"></mat-error>\r\n }\r\n </mat-form-field>\r\n <mat-form-field class=\"flex\">\r\n <mat-label>{{'Series'|translate}}</mat-label>\r\n <mat-select formControlName=\"series\" required>\r\n @for (a of cube?.axes; track a) {\r\n @if (form.controls.xAxis.value!==a.name) {\r\n <mat-option [value]=\"a.name\">{{a.title }}</mat-option>\r\n }\r\n }\r\n </mat-select>\r\n @if (form.controls.series.hasError('required')) {\r\n <mat-error [innerHTML]=\"'RequiredErr'|translate:('Series'|translate)\"></mat-error>\r\n }\r\n </mat-form-field>\r\n </div>\r\n @if (cube?.indices?.length) {\r\n <mat-form-field class=\"flex\">\r\n <mat-label>{{'Indices'|translate}}</mat-label>\r\n <mat-select formControlName=\"indices\" multiple>\r\n @for (i of cube.indices; track i) {\r\n <mat-option [value]=\"i.name\">{{i.title}}</mat-option>\r\n }\r\n </mat-select>\r\n </mat-form-field>\r\n }\r\n <div class=\"row gap\">\r\n <mat-form-field class=\"flex\">\r\n <mat-label>{{'Filters'|translate}}</mat-label>\r\n <mat-select formControlName=\"filters\" multiple>\r\n @for (a of cube?.axes; track a) {\r\n @if (form.controls.xAxis.value !== a.name && form.controls.series.value !== a.name) {\r\n <mat-option [value]=\"a.name\">{{a.title }}</mat-option>\r\n }\r\n }\r\n </mat-select>\r\n </mat-form-field>\r\n <mat-form-field class=\"flex\">\r\n <mat-label>{{'Aggregate'|translate}}</mat-label>\r\n <mat-select formControlName=\"aggregate\" multiple>\r\n @for (a of cube?.axes; track a) {\r\n @if (form.controls.xAxis.value !== a.name && form.controls.series.value !== a.name && (!form.controls.filters.value || form.controls.filters.value.indexOf(a.name) < 0)) {\r\n <mat-option [value]=\"a.name\">{{a.title }}</mat-option>\r\n }\r\n }\r\n </mat-select>\r\n <mat-hint></mat-hint>\r\n </mat-form-field>\r\n </div>\r\n <h2 class=\"mat-h2 row\">\r\n {{'Summary'|translate}}\r\n <span class=\"divider\"></span>\r\n <button mat-icon-button (click)=\"add(form.controls.sum, newSum(), 'Summary', sumform)\" [bizdocTooltip]=\"'Add'|translate\" type=\"button\"><mat-icon>add_circle_outline</mat-icon></button>\r\n </h2>\r\n <table class=\"mat-mdc-table\" formArrayName=\"sum\" cdkDropList (cdkDropListDropped)=\"drop($event, form.controls.sum)\">\r\n @for (s of form.controls.sum.controls; track s; let index = $index) {\r\n <tr class=\"mat-mdc-row\" [formGroup]=\"s\" cdkDrag>\r\n <td class=\"mat-mdc-cell\">\r\n <mat-icon cdkDragHandle>drag_indicator</mat-icon>\r\n </td>\r\n <td class=\"mat-mdc-cell\" style=\"width: 100%\">{{s.controls.title.value}}</td>\r\n <td class=\"mat-mdc-cell\" style=\"white-space: pre;\">\r\n <button mat-icon-button (click)=\"edit(s, 'Summary', sumform)\" [bizdocTooltip]=\"'Edit'|translate\" type=\"button\"><mat-icon>edit</mat-icon></button>\r\n <button mat-icon-button (click)=\"form.controls.sum.removeAt(index)\" [bizdocTooltip]=\"'Remove'|translate\" type=\"button\"><mat-icon>delete</mat-icon></button>\r\n </td>\r\n </tr>\r\n }\r\n </table>\r\n</ng-container>\r\n }\r\n}\r\n<ng-template #sumform let-form=\"form\">\r\n <ng-container [formGroup]=\"form\">\r\n <mat-form-field class=\"flex\">\r\n <mat-label>{{'Title'|translate}}</mat-label>\r\n <input matInput formControlName=\"title\" required />\r\n </mat-form-field>\r\n <mat-radio-group formControlName=\"axis\">\r\n <mat-radio-button value=\"XAxis\">{{'XAxis'|translate}}</mat-radio-button>\r\n <mat-radio-button value=\"Series\">{{'Series'|translate}}</mat-radio-button>\r\n </mat-radio-group>\r\n <mat-form-field class=\"flex\">\r\n <mat-label>{{'Calculate'|translate}}</mat-label>\r\n <mat-select formControlName=\"calculate\">\r\n <mat-option>{{'None'|translate}}</mat-option>\r\n <mat-option value=\"Quarter\">{{'Quarter'|translate}}</mat-option>\r\n <mat-option value=\"Year\">{{'Year'|translate}}</mat-option>\r\n <mat-option value=\"Month\">{{'Month'|translate}}</mat-option>\r\n <mat-option value=\"Sum\">{{'Sum'|translate}}</mat-option>\r\n </mat-select>\r\n </mat-form-field>\r\n <div class=\"row\">\r\n <mat-form-field class=\"flex\">\r\n <mat-label>{{'Value'|translate}}</mat-label>\r\n <input matInput formControlName=\"value\" />\r\n </mat-form-field>\r\n <mat-form-field class=\"flex\">\r\n <mat-label>{{'Format'|translate}}</mat-label>\r\n <mat-select formControlName=\"format\">\r\n <mat-option value=\"Currency\">{{'Currency'|translate}}</mat-option>\r\n <mat-option value=\"Number\">{{'Numeric'|translate}}</mat-option>\r\n <mat-option value=\"Percent\">{{'Percent'|translate}}</mat-option>\r\n </mat-select>\r\n </mat-form-field>\r\n </div>\r\n </ng-container>\r\n</ng-template>\r\n", dependencies: [{ kind: "directive", type: i1.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "directive", type: i2.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: i2.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i2.NgControlStatusGroup, selector: "[formGroupName],[formArrayName],[ngModelGroup],[formGroup],form:not([ngNoForm]),[ngForm]" }, { kind: "directive", type: i2.RequiredValidator, selector: ":not([type=checkbox])[required][formControlName],:not([type=checkbox])[required][formControl],:not([type=checkbox])[required][ngModel]", inputs: ["required"] }, { kind: "directive", type: i2.FormGroupDirective, selector: "[formGroup]", inputs: ["formGroup"], outputs: ["ngSubmit"], exportAs: ["ngForm"] }, { kind: "directive", type: i2.FormControlName, selector: "[formControlName]", inputs: ["formControlName", "disabled", "ngModel"], outputs: ["ngModelChange"] }, { kind: "directive", type: i2.FormArrayName, selector: "[formArrayName]", inputs: ["formArrayName"] }, { kind: "directive", type: i3.CdkDropList, selector: "[cdkDropList], cdk-drop-list", inputs: ["cdkDropListConnectedTo", "cdkDropListData", "cdkDropListOrientation", "id", "cdkDropListLockAxis", "cdkDropListDisabled", "cdkDropListSortingDisabled", "cdkDropListEnterPredicate", "cdkDropListSortPredicate", "cdkDropListAutoScrollDisabled", "cdkDropListAutoScrollStep", "cdkDropListElementContainer"], outputs: ["cdkDropListDropped", "cdkDropListEntered", "cdkDropListExited", "cdkDropListSorted"], exportAs: ["cdkDropList"] }, { kind: "directive", type: i3.CdkDrag, selector: "[cdkDrag]", inputs: ["cdkDragData", "cdkDragLockAxis", "cdkDragRootElement", "cdkDragBoundary", "cdkDragStartDelay", "cdkDragFreeDragPosition", "cdkDragDisabled", "cdkDragConstrainPosition", "cdkDragPreviewClass", "cdkDragPreviewContainer", "cdkDragScale"], outputs: ["cdkDragStarted", "cdkDragReleased", "cdkDragEnded", "cdkDragEntered", "cdkDragExited", "cdkDragDropped", "cdkDragMoved"], exportAs: ["cdkDrag"] }, { kind: "directive", type: i3.CdkDragHandle, selector: "[cdkDragHandle]", inputs: ["cdkDragHandleDisabled"] }, { kind: "directive", type: i4.MatRadioGroup, selector: "mat-radio-group", inputs: ["color", "name", "labelPosition", "value", "selected", "disabled", "required", "disabledInteractive"], outputs: ["change"], exportAs: ["matRadioGroup"] }, { kind: "component", type: i4.MatRadioButton, selector: "mat-radio-button", inputs: ["id", "name", "aria-label", "aria-labelledby", "aria-describedby", "disableRipple", "tabIndex", "checked", "value", "labelPosition", "disabled", "required", "color", "disabledInteractive"], outputs: ["change"], exportAs: ["matRadioButton"] }, { kind: "component", type: i5.MatOption, selector: "mat-option", inputs: ["value", "id", "disabled"], outputs: ["onSelectionChange"], exportAs: ["matOption"] }, { kind: "component", type: i6.MatFormField, selector: "mat-form-field", inputs: ["hideRequiredMarker", "color", "floatLabel", "appearance", "subscriptSizing", "hintLabel"], exportAs: ["matFormField"] }, { kind: "directive", type: i6.MatLabel, selector: "mat-label" }, { 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: ["aria-describedby", "panelClass", "disabled", "disableRipple", "tabIndex", "hideSingleSelectionIndicator", "placeholder", "required", "multiple", "disableOptionCentering", "compareWith", "value", "aria-label", "aria-labelledby", "errorStateMatcher", "typeaheadDebounceInterval", "sortComparator", "id", "panelWidth"], outputs: ["openedChange", "opened", "closed", "selectionChange", "valueChange"], exportAs: ["matSelect"] }, { kind: "component", type: i8.MatIconButton, selector: "button[mat-icon-button]", exportAs: ["matButton"] }, { 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: "component", type: i10.MatIcon, selector: "mat-icon", inputs: ["color", "inline", "svgIcon", "fontSet", "fontIcon"], exportAs: ["matIcon"] }, { kind: "directive", type: i11.TooltipDirective, selector: "[bizdocTooltip]", inputs: ["bizdocTooltip", "bizdocTooltipTemplate", "bizdocTooltipContext", "bizdocTooltipPosition", "bizdocTooltipDuration", "bizdocTooltipDisabled"] }, { kind: "pipe", type: i12.LocalizedStringPipe, name: "localizedString" }, { kind: "pipe", type: i13.TranslatePipe, name: "translate" }] }); }
89
89
  };
90
90
  MatrixViewDesignComponent = __decorate([
91
91
  BizDoc({ selector: 'matrix-view-designer' })
92
92
  ], MatrixViewDesignComponent);
93
93
  export { MatrixViewDesignComponent };
94
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.3", ngImport: i0, type: MatrixViewDesignComponent, decorators: [{
94
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.4", ngImport: i0, type: MatrixViewDesignComponent, decorators: [{
95
95
  type: Component,
96
- args: [{ host: { class: 'column' }, template: "@if (mode !== 'widget') {\n @if (view) {\n<h2 class=\"mat-h2\">{{context.title|translate}}</h2>\n<div (document:keydown.escape)=\"closeView($event)\" #element class=\"column\">\n <ng-container *ngTemplateOutlet=\"view; context: context\"></ng-container>\n</div>\n<div class=\"row actions\">\n <span class=\"divider\"></span>\n <button mat-icon-button (click)=\"closeView()\" type=\"button\" [bizdocTooltip]=\"'Back'|translate\"><mat-icon>keyboard_return</mat-icon></button>\n</div>\n } @else {\n<ng-container [formGroup]=\"form\">\n @if (cubes.length>1) {\n <mat-form-field>\n <mat-label>{{'Cube'|translate}}</mat-label>\n <mat-select required formControlName=\"cube\" (selectionChange)=\"cubeSelected($event)\">\n @for (c of cubes; track c) {\n <mat-option [value]=\"c.name\">{{c.title|localizedString}}</mat-option>\n }\n </mat-select>\n </mat-form-field>\n }\n <div class=\"row gap\">\n <mat-form-field class=\"flex\">\n <mat-label>{{'XAxis'|translate}}</mat-label>\n <mat-select formControlName=\"xAxis\" required>\n @for (a of cube?.axes; track a) {\n <mat-option [value]=\"a.name\">{{a.title }}</mat-option>\n }\n </mat-select>\n @if (form.controls.xAxis.hasError('required')) {\n <mat-error [innerHTML]=\"'RequiredErr'|translate:('XAxis'|translate)\"></mat-error>\n }\n </mat-form-field>\n <mat-form-field class=\"flex\">\n <mat-label>{{'Series'|translate}}</mat-label>\n <mat-select formControlName=\"series\" required>\n @for (a of cube?.axes; track a) {\n @if (form.controls.xAxis.value!==a.name) {\n <mat-option [value]=\"a.name\">{{a.title }}</mat-option>\n }\n }\n </mat-select>\n @if (form.controls.series.hasError('required')) {\n <mat-error [innerHTML]=\"'RequiredErr'|translate:('Series'|translate)\"></mat-error>\n }\n </mat-form-field>\n </div>\n @if (cube?.indices?.length) {\n <mat-form-field class=\"flex\">\n <mat-label>{{'Indices'|translate}}</mat-label>\n <mat-select formControlName=\"indices\" multiple>\n @for (i of cube.indices; track i) {\n <mat-option [value]=\"i.name\">{{i.title}}</mat-option>\n }\n </mat-select>\n </mat-form-field>\n }\n <div class=\"row gap\">\n <mat-form-field class=\"flex\">\n <mat-label>{{'Filters'|translate}}</mat-label>\n <mat-select formControlName=\"filters\" multiple>\n @for (a of cube?.axes; track a) {\n @if (form.controls.xAxis.value !== a.name && form.controls.series.value !== a.name) {\n <mat-option [value]=\"a.name\">{{a.title }}</mat-option>\n }\n }\n </mat-select>\n </mat-form-field>\n <mat-form-field class=\"flex\">\n <mat-label>{{'Aggregate'|translate}}</mat-label>\n <mat-select formControlName=\"aggregate\" multiple>\n @for (a of cube?.axes; track a) {\n @if (form.controls.xAxis.value !== a.name && form.controls.series.value !== a.name && (!form.controls.filters.value || form.controls.filters.value.indexOf(a.name) < 0)) {\n <mat-option [value]=\"a.name\">{{a.title }}</mat-option>\n }\n }\n </mat-select>\n <mat-hint></mat-hint>\n </mat-form-field>\n </div>\n <h2 class=\"mat-h2 row\">\n {{'Summary'|translate}}\n <span class=\"divider\"></span>\n <button mat-icon-button (click)=\"add(form.controls.sum, newSum(), 'Summary', sumform)\" [bizdocTooltip]=\"'Add'|translate\" type=\"button\"><mat-icon>add_circle_outline</mat-icon></button>\n </h2>\n <table class=\"mat-mdc-table\" formArrayName=\"sum\" cdkDropList (cdkDropListDropped)=\"drop($event, form.controls.sum)\">\n @for (s of form.controls.sum.controls; track s; let index = $index) {\n <tr class=\"mat-mdc-row\" [formGroup]=\"s\" cdkDrag>\n <td class=\"mat-mdc-cell\">\n <mat-icon cdkDragHandle>drag_indicator</mat-icon>\n </td>\n <td class=\"mat-mdc-cell\" style=\"width: 100%\">{{s.controls.title.value}}</td>\n <td class=\"mat-mdc-cell\" style=\"white-space: pre;\">\n <button mat-icon-button (click)=\"edit(s, 'Summary', sumform)\" [bizdocTooltip]=\"'Edit'|translate\" type=\"button\"><mat-icon>edit</mat-icon></button>\n <button mat-icon-button (click)=\"form.controls.sum.removeAt(index)\" [bizdocTooltip]=\"'Remove'|translate\" type=\"button\"><mat-icon>delete</mat-icon></button>\n </td>\n </tr>\n }\n </table>\n</ng-container>\n }\n}\n<ng-template #sumform let-form=\"form\">\n <ng-container [formGroup]=\"form\">\n <mat-form-field class=\"flex\">\n <mat-label>{{'Title'|translate}}</mat-label>\n <input matInput formControlName=\"title\" required />\n </mat-form-field>\n <mat-radio-group formControlName=\"axis\">\n <mat-radio-button value=\"XAxis\">{{'XAxis'|translate}}</mat-radio-button>\n <mat-radio-button value=\"Series\">{{'Series'|translate}}</mat-radio-button>\n </mat-radio-group>\n <mat-form-field class=\"flex\">\n <mat-label>{{'Calculate'|translate}}</mat-label>\n <mat-select formControlName=\"calculate\">\n <mat-option>{{'None'|translate}}</mat-option>\n <mat-option value=\"Quarter\">{{'Quarter'|translate}}</mat-option>\n <mat-option value=\"Year\">{{'Year'|translate}}</mat-option>\n <mat-option value=\"Month\">{{'Month'|translate}}</mat-option>\n <mat-option value=\"Sum\">{{'Sum'|translate}}</mat-option>\n </mat-select>\n </mat-form-field>\n <div class=\"row\">\n <mat-form-field class=\"flex\">\n <mat-label>{{'Value'|translate}}</mat-label>\n <input matInput formControlName=\"value\" />\n </mat-form-field>\n <mat-form-field class=\"flex\">\n <mat-label>{{'Format'|translate}}</mat-label>\n <mat-select formControlName=\"format\">\n <mat-option value=\"Currency\">{{'Currency'|translate}}</mat-option>\n <mat-option value=\"Number\">{{'Numeric'|translate}}</mat-option>\n <mat-option value=\"Percent\">{{'Percent'|translate}}</mat-option>\n </mat-select>\n </mat-form-field>\n </div>\n </ng-container>\n</ng-template>\n" }]
96
+ args: [{ host: { class: 'column' }, template: "@if (mode !== 'widget') {\r\n @if (view) {\r\n<h2 class=\"mat-h2\">{{context.title|translate}}</h2>\r\n<div (document:keydown.escape)=\"closeView($event)\" #element class=\"column\">\r\n <ng-container *ngTemplateOutlet=\"view; context: context\"></ng-container>\r\n</div>\r\n<div class=\"row actions\">\r\n <span class=\"divider\"></span>\r\n <button mat-icon-button (click)=\"closeView()\" type=\"button\" [bizdocTooltip]=\"'Back'|translate\"><mat-icon>keyboard_return</mat-icon></button>\r\n</div>\r\n } @else {\r\n<ng-container [formGroup]=\"form\">\r\n @if (cubes.length>1) {\r\n <mat-form-field>\r\n <mat-label>{{'Cube'|translate}}</mat-label>\r\n <mat-select required formControlName=\"cube\" (selectionChange)=\"cubeSelected($event)\">\r\n @for (c of cubes; track c) {\r\n <mat-option [value]=\"c.name\">{{c.title|localizedString}}</mat-option>\r\n }\r\n </mat-select>\r\n </mat-form-field>\r\n }\r\n <div class=\"row gap\">\r\n <mat-form-field class=\"flex\">\r\n <mat-label>{{'XAxis'|translate}}</mat-label>\r\n <mat-select formControlName=\"xAxis\" required>\r\n @for (a of cube?.axes; track a) {\r\n <mat-option [value]=\"a.name\">{{a.title }}</mat-option>\r\n }\r\n </mat-select>\r\n @if (form.controls.xAxis.hasError('required')) {\r\n <mat-error [innerHTML]=\"'RequiredErr'|translate:('XAxis'|translate)\"></mat-error>\r\n }\r\n </mat-form-field>\r\n <mat-form-field class=\"flex\">\r\n <mat-label>{{'Series'|translate}}</mat-label>\r\n <mat-select formControlName=\"series\" required>\r\n @for (a of cube?.axes; track a) {\r\n @if (form.controls.xAxis.value!==a.name) {\r\n <mat-option [value]=\"a.name\">{{a.title }}</mat-option>\r\n }\r\n }\r\n </mat-select>\r\n @if (form.controls.series.hasError('required')) {\r\n <mat-error [innerHTML]=\"'RequiredErr'|translate:('Series'|translate)\"></mat-error>\r\n }\r\n </mat-form-field>\r\n </div>\r\n @if (cube?.indices?.length) {\r\n <mat-form-field class=\"flex\">\r\n <mat-label>{{'Indices'|translate}}</mat-label>\r\n <mat-select formControlName=\"indices\" multiple>\r\n @for (i of cube.indices; track i) {\r\n <mat-option [value]=\"i.name\">{{i.title}}</mat-option>\r\n }\r\n </mat-select>\r\n </mat-form-field>\r\n }\r\n <div class=\"row gap\">\r\n <mat-form-field class=\"flex\">\r\n <mat-label>{{'Filters'|translate}}</mat-label>\r\n <mat-select formControlName=\"filters\" multiple>\r\n @for (a of cube?.axes; track a) {\r\n @if (form.controls.xAxis.value !== a.name && form.controls.series.value !== a.name) {\r\n <mat-option [value]=\"a.name\">{{a.title }}</mat-option>\r\n }\r\n }\r\n </mat-select>\r\n </mat-form-field>\r\n <mat-form-field class=\"flex\">\r\n <mat-label>{{'Aggregate'|translate}}</mat-label>\r\n <mat-select formControlName=\"aggregate\" multiple>\r\n @for (a of cube?.axes; track a) {\r\n @if (form.controls.xAxis.value !== a.name && form.controls.series.value !== a.name && (!form.controls.filters.value || form.controls.filters.value.indexOf(a.name) < 0)) {\r\n <mat-option [value]=\"a.name\">{{a.title }}</mat-option>\r\n }\r\n }\r\n </mat-select>\r\n <mat-hint></mat-hint>\r\n </mat-form-field>\r\n </div>\r\n <h2 class=\"mat-h2 row\">\r\n {{'Summary'|translate}}\r\n <span class=\"divider\"></span>\r\n <button mat-icon-button (click)=\"add(form.controls.sum, newSum(), 'Summary', sumform)\" [bizdocTooltip]=\"'Add'|translate\" type=\"button\"><mat-icon>add_circle_outline</mat-icon></button>\r\n </h2>\r\n <table class=\"mat-mdc-table\" formArrayName=\"sum\" cdkDropList (cdkDropListDropped)=\"drop($event, form.controls.sum)\">\r\n @for (s of form.controls.sum.controls; track s; let index = $index) {\r\n <tr class=\"mat-mdc-row\" [formGroup]=\"s\" cdkDrag>\r\n <td class=\"mat-mdc-cell\">\r\n <mat-icon cdkDragHandle>drag_indicator</mat-icon>\r\n </td>\r\n <td class=\"mat-mdc-cell\" style=\"width: 100%\">{{s.controls.title.value}}</td>\r\n <td class=\"mat-mdc-cell\" style=\"white-space: pre;\">\r\n <button mat-icon-button (click)=\"edit(s, 'Summary', sumform)\" [bizdocTooltip]=\"'Edit'|translate\" type=\"button\"><mat-icon>edit</mat-icon></button>\r\n <button mat-icon-button (click)=\"form.controls.sum.removeAt(index)\" [bizdocTooltip]=\"'Remove'|translate\" type=\"button\"><mat-icon>delete</mat-icon></button>\r\n </td>\r\n </tr>\r\n }\r\n </table>\r\n</ng-container>\r\n }\r\n}\r\n<ng-template #sumform let-form=\"form\">\r\n <ng-container [formGroup]=\"form\">\r\n <mat-form-field class=\"flex\">\r\n <mat-label>{{'Title'|translate}}</mat-label>\r\n <input matInput formControlName=\"title\" required />\r\n </mat-form-field>\r\n <mat-radio-group formControlName=\"axis\">\r\n <mat-radio-button value=\"XAxis\">{{'XAxis'|translate}}</mat-radio-button>\r\n <mat-radio-button value=\"Series\">{{'Series'|translate}}</mat-radio-button>\r\n </mat-radio-group>\r\n <mat-form-field class=\"flex\">\r\n <mat-label>{{'Calculate'|translate}}</mat-label>\r\n <mat-select formControlName=\"calculate\">\r\n <mat-option>{{'None'|translate}}</mat-option>\r\n <mat-option value=\"Quarter\">{{'Quarter'|translate}}</mat-option>\r\n <mat-option value=\"Year\">{{'Year'|translate}}</mat-option>\r\n <mat-option value=\"Month\">{{'Month'|translate}}</mat-option>\r\n <mat-option value=\"Sum\">{{'Sum'|translate}}</mat-option>\r\n </mat-select>\r\n </mat-form-field>\r\n <div class=\"row\">\r\n <mat-form-field class=\"flex\">\r\n <mat-label>{{'Value'|translate}}</mat-label>\r\n <input matInput formControlName=\"value\" />\r\n </mat-form-field>\r\n <mat-form-field class=\"flex\">\r\n <mat-label>{{'Format'|translate}}</mat-label>\r\n <mat-select formControlName=\"format\">\r\n <mat-option value=\"Currency\">{{'Currency'|translate}}</mat-option>\r\n <mat-option value=\"Number\">{{'Numeric'|translate}}</mat-option>\r\n <mat-option value=\"Percent\">{{'Percent'|translate}}</mat-option>\r\n </mat-select>\r\n </mat-form-field>\r\n </div>\r\n </ng-container>\r\n</ng-template>\r\n" }]
97
97
  }] });
98
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibWF0cml4LXZpZXcuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vbGlicmFyaWVzL2NvcmUvc3JjL2xpYi9hZG1pbi9hcmNoaXRlY3R1cmUvZWxlbWVudHMvbWF0cml4LXZpZXcuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vLi4vbGlicmFyaWVzL2NvcmUvc3JjL2xpYi9hZG1pbi9hcmNoaXRlY3R1cmUvZWxlbWVudHMvbWF0cml4LXZpZXcuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IjtBQUFBLE9BQU8sRUFBRSxTQUFTLEVBQXVCLE1BQU0sZUFBZSxDQUFDO0FBQy9ELE9BQU8sRUFBd0IsVUFBVSxFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFDbEUsT0FBTyxFQUFFLE1BQU0sRUFBRSxNQUFNLDBCQUEwQixDQUFDO0FBQ2xELE9BQU8sRUFBRSxPQUFPLEVBQUUsUUFBUSxFQUFFLE1BQU0seUJBQXlCLENBQUM7QUFHNUQsT0FBTyxFQUFFLDRCQUE0QixFQUFFLE1BQU0sa0JBQWtCLENBQUM7Ozs7Ozs7Ozs7Ozs7OztBQU96RCxJQUFNLHlCQUF5QixHQUEvQixNQUFNLHlCQUEwQixTQUFRLDRCQUFpRDtJQUF6Rjs7UUFDSSxTQUFJLEdBQUcsSUFBSSxDQUFDLEdBQUcsQ0FBQyxLQUFLLENBQUM7WUFDN0IsSUFBSSxFQUFFLElBQUk7WUFDVixLQUFLLEVBQUUsSUFBSSxDQUFDLEdBQUcsQ0FBQyxPQUFPLENBQVMsSUFBSSxFQUFFLFVBQVUsQ0FBQyxRQUFRLENBQUM7WUFDMUQsTUFBTSxFQUFFLElBQUksQ0FBQyxHQUFHLENBQUMsT0FBTyxDQUFTLElBQUksRUFBRSxVQUFVLENBQUMsUUFBUSxDQUFDO1lBQzNELE9BQU8sRUFBRSxJQUFJLENBQUMsR0FBRyxDQUFDLE9BQU8sQ0FBVyxJQUFJLENBQUM7WUFDekMsU0FBUyxFQUFFLElBQUksQ0FBQyxHQUFHLENBQUMsT0FBTyxDQUFXLElBQUksQ0FBQztZQUMzQyxHQUFHLEVBQUUsSUFBSSxDQUFDLEdBQUcsQ0FBQyxLQUFLLENBQWlCLEVBQUUsQ0FBQztZQUN2QyxPQUFPLEVBQUUsSUFBSSxDQUFDLEdBQUcsQ0FBQyxPQUFPLENBQVcsSUFBSSxDQUFDO1lBQ3pDLE9BQU8sRUFBRSxJQUFJO1lBQ2IsT0FBTyxFQUFFLElBQUk7U0FDZCxDQUFDLENBQUM7S0E0REo7SUExREMsU0FBUyxDQUFDLEdBQVc7UUFDbkIsSUFBSSxDQUFDLElBQUksR0FBRyxJQUFJLENBQUM7UUFDakIsSUFBSSxJQUFJLENBQUMsT0FBTyxDQUFDLElBQUksS0FBSyxLQUFLO1lBQzdCLElBQUksQ0FBQyxPQUFPLENBQUMsVUFBVSxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsT0FBTyxDQUFDLElBQUksQ0FBQyxDQUFDO1FBQ2xELEdBQUcsRUFBRSxjQUFjLEVBQUUsQ0FBQztRQUN0QixHQUFHLEVBQUUsZUFBZSxFQUFFLENBQUM7SUFDekIsQ0FBQztJQU9ELEdBQUcsQ0FBQyxVQUFxQixFQUFFLElBQWUsRUFBRSxLQUFhLEVBQ3ZELFFBQTBCO1FBRTFCLElBQUksQ0FBQyxJQUFJLEdBQUcsUUFBUSxDQUFDO1FBQ3JCLElBQUksQ0FBQyxPQUFPLEdBQUcsRUFBRSxJQUFJLEVBQUUsSUFBSSxFQUFFLEtBQUssRUFBRSxJQUFJLEVBQUUsS0FBSyxFQUFFLFVBQVUsRUFBRSxDQUFDO1FBQzlELElBQUksQ0FBQyxLQUFLLEVBQUUsQ0FBQztJQUNmLENBQUM7SUFDRCxJQUFJLENBQUMsSUFBZSxFQUFFLEtBQWEsRUFBRSxRQUEwQjtRQUM3RCxJQUFJLENBQUMsSUFBSSxHQUFHLFFBQVEsQ0FBQztRQUNyQixJQUFJLENBQUMsT0FBTyxHQUFHLEVBQUUsSUFBSSxFQUFFLElBQUksRUFBRSxLQUFLLEVBQUUsSUFBSSxFQUFFLE1BQU0sRUFBRSxDQUFDO1FBQ25ELElBQUksQ0FBQyxLQUFLLEVBQUUsQ0FBQztJQUNmLENBQUM7SUFDRCxRQUFRO1FBQ04sSUFBSSxJQUFJLENBQUMsSUFBSSxLQUFLLFFBQVEsRUFBRSxDQUFDO1lBQzNCLElBQUksUUFBUSxDQUFDLElBQUksQ0FBQyxPQUFPLENBQUMsT0FBTyxDQUFDO2dCQUFFLElBQUksQ0FBQyxPQUFPLENBQUMsT0FBTyxHQUFHLENBQUMsSUFBSSxDQUFDLE9BQU8sQ0FBQyxPQUFPLENBQUMsQ0FBQztZQUNsRixJQUFJLElBQUksQ0FBQyxPQUFPLENBQUMsR0FBRyxFQUFFLENBQUM7Z0JBQ3JCLElBQUksT0FBTyxDQUFDLElBQUksQ0FBQyxPQUFPLENBQUMsR0FBRyxDQUFDO29CQUMzQixJQUFJLENBQUMsT0FBTyxDQUFDLEdBQUcsQ0FBQyxPQUFPLENBQUMsQ0FBQyxDQUFDLEVBQUUsQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLFFBQVEsQ0FBQyxHQUFHLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxNQUFNLENBQUMsQ0FBQyxDQUFDLEVBQUUsRUFBRSxTQUFTLEVBQUUsS0FBSyxFQUFFLENBQUMsQ0FBQyxDQUFDOztvQkFFakcsSUFBSSxDQUFDLElBQUksQ0FBQyxRQUFRLENBQUMsR0FBRyxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsTUFBTSxDQUFDLElBQUksQ0FBQyxPQUFPLENBQUMsR0FBRyxDQUFDLEVBQUUsRUFBRSxTQUFTLEVBQUUsS0FBSyxFQUFFLENBQUMsQ0FBQztZQUNyRixDQUFDO1lBQ0QsTUFBTSxFQUFFLElBQUksRUFBRSxLQUFLLEVBQUUsTUFBTSxFQUFFLFNBQVMsRUFBRSxHQUFHLElBQUksQ0FBQyxJQUFJLENBQUMsUUFBUSxDQUFDO1lBQzlELElBQUksQ0FBQyxZQUFZLENBQUMsU0FBUyxDQUFDLEdBQUcsRUFBRSxDQUFDLEtBQUssQ0FBQyxNQUFNLENBQUMsRUFBRSxTQUFTLEVBQUUsS0FBSyxFQUFFLENBQUMsQ0FBQyxDQUFDO1lBQ3RFLDZCQUE2QjtZQUM3QiwwQ0FBMEM7WUFDMUMsa0NBQWtDO1lBQ2xDLDhDQUE4QztZQUM5QyxzQ0FBc0M7WUFDdEMsMkNBQTJDO1lBQzNDLHVDQUF1QztZQUN2Qyw4Q0FBOEM7UUFDaEQsQ0FBQztRQUNELEtBQUssQ0FBQyxRQUFRLEVBQUUsQ0FBQztJQUNuQixDQUFDO0lBQ0QsTUFBTSxDQUFDLEdBQWlCO1FBQ3RCLE9BQU8sSUFBSSxDQUFDLEdBQUcsQ0FBQyxLQUFLLENBQUM7WUFDcEIsSUFBSSxFQUFFLEdBQUcsRUFBRSxJQUFJLElBQUksUUFBUTtZQUMzQixLQUFLLEVBQUUsSUFBSSxDQUFDLEdBQUcsQ0FBQyxPQUFPLENBQUMsR0FBRyxFQUFFLEtBQUssRUFBRSxVQUFVLENBQUMsUUFBUSxDQUFDO1lBQ3hELEtBQUssRUFBRSxHQUFHLEVBQUUsS0FBSyxJQUFJLElBQUk7WUFDekIsTUFBTSxFQUFFLEdBQUcsRUFBRSxNQUFNLElBQUksVUFBVTtZQUNqQyxTQUFTLEVBQUUsR0FBRyxFQUFFLFNBQVMsSUFBSSxJQUFJO1lBQ2pDLFVBQVUsRUFBRSxHQUFHLEVBQUUsVUFBVSxJQUFJLElBQUk7WUFDbkMsU0FBUyxFQUFFLEdBQUcsRUFBRSxTQUFTLElBQUksS0FBSztTQUNuQyxDQUFDLENBQUM7SUFDTCxDQUFDOzhHQXRFVSx5QkFBeUI7a0dBQXpCLHlCQUF5QiwrR0NidEMsa2hNQTJJQTs7QUQ5SGEseUJBQXlCO0lBRHJDLE1BQU0sQ0FBQyxFQUFFLFFBQVEsRUFBRSxzQkFBc0IsRUFBRSxDQUFDO0dBQ2hDLHlCQUF5QixDQXVFckM7OzJGQXZFWSx5QkFBeUI7a0JBTHJDLFNBQVM7MkJBRUYsRUFBRSxLQUFLLEVBQUUsUUFBUSxFQUFFIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29tcG9uZW50LCBPbkluaXQsIFRlbXBsYXRlUmVmIH0gZnJvbSBcIkBhbmd1bGFyL2NvcmVcIjtcclxuaW1wb3J0IHsgRm9ybUFycmF5LCBGb3JtR3JvdXAsIFZhbGlkYXRvcnMgfSBmcm9tIFwiQGFuZ3VsYXIvZm9ybXNcIjtcclxuaW1wb3J0IHsgQml6RG9jIH0gZnJvbSBcIi4uLy4uLy4uL2NvcmUvZGVjb3JhdG9yc1wiO1xyXG5pbXBvcnQgeyBpc0FycmF5LCBpc1N0cmluZyB9IGZyb20gXCIuLi8uLi8uLi9jb3JlL2Z1bmN0aW9uc1wiO1xyXG5pbXBvcnQgeyBTdW1TZXR0aW5ncyB9IGZyb20gXCIuLi8uLi8uLi9jdWJlL21hdHJpeC90YWJsZS5jb21wb25lbnRcIjtcclxuaW1wb3J0IHsgTWF0cml4U2V0dGluZ3NNb2RlbCB9IGZyb20gXCIuLi8uLi8uLi92aWV3cy9jdWJlL21hdHJpeC5jb21wb25lbnRcIjtcclxuaW1wb3J0IHsgRGVzaWduZXJDdWJlRWxlbWVudENvbXBvbmVudCB9IGZyb20gXCIuLi9kZXNpZ25lci5iYXNlXCI7XHJcblxyXG5AQ29tcG9uZW50KHtcclxuICB0ZW1wbGF0ZVVybDogJ21hdHJpeC12aWV3LmNvbXBvbmVudC5odG1sJyxcclxuICBob3N0OiB7IGNsYXNzOiAnY29sdW1uJyB9XHJcbn0pXHJcbkBCaXpEb2MoeyBzZWxlY3RvcjogJ21hdHJpeC12aWV3LWRlc2lnbmVyJyB9KVxyXG5leHBvcnQgY2xhc3MgTWF0cml4Vmlld0Rlc2lnbkNvbXBvbmVudCBleHRlbmRzIERlc2lnbmVyQ3ViZUVsZW1lbnRDb21wb25lbnQ8TWF0cml4U2V0dGluZ3NNb2RlbD4gaW1wbGVtZW50cyBPbkluaXQge1xyXG4gIHJlYWRvbmx5IGZvcm0gPSB0aGlzLl9mYi5ncm91cCh7XHJcbiAgICBjdWJlOiBudWxsLFxyXG4gICAgeEF4aXM6IHRoaXMuX2ZiLmNvbnRyb2w8c3RyaW5nPihudWxsLCBWYWxpZGF0b3JzLnJlcXVpcmVkKSxcclxuICAgIHNlcmllczogdGhpcy5fZmIuY29udHJvbDxzdHJpbmc+KG51bGwsIFZhbGlkYXRvcnMucmVxdWlyZWQpLFxyXG4gICAgaW5kaWNlczogdGhpcy5fZmIuY29udHJvbDxzdHJpbmdbXT4obnVsbCksXHJcbiAgICBhZ2dyZWdhdGU6IHRoaXMuX2ZiLmNvbnRyb2w8c3RyaW5nW10+KG51bGwpLFxyXG4gICAgc3VtOiB0aGlzLl9mYi5hcnJheTxGb3JtR3JvdXA8YW55Pj4oW10pLFxyXG4gICAgZmlsdGVyczogdGhpcy5fZmIuY29udHJvbDxzdHJpbmdbXT4obnVsbCksXHJcbiAgICBpbmRleEF0OiBudWxsLFxyXG4gICAgcGxhY2VBdDogbnVsbFxyXG4gIH0pO1xyXG4gIHZpZXc6IFRlbXBsYXRlUmVmPGFueT47XHJcbiAgY2xvc2VWaWV3KGV2dD86IEV2ZW50KSB7XHJcbiAgICB0aGlzLnZpZXcgPSBudWxsO1xyXG4gICAgaWYgKHRoaXMuY29udGV4dC5tb2RlID09PSAnYWRkJylcclxuICAgICAgdGhpcy5jb250ZXh0LmNvbGxlY3Rpb24ucHVzaCh0aGlzLmNvbnRleHQuZm9ybSk7XHJcbiAgICBldnQ/LnByZXZlbnREZWZhdWx0KCk7XHJcbiAgICBldnQ/LnN0b3BQcm9wYWdhdGlvbigpO1xyXG4gIH1cclxuICBjb250ZXh0OiB7XHJcbiAgICBtb2RlOiAnYWRkJyB8ICdlZGl0JztcclxuICAgIHRpdGxlOiBzdHJpbmc7XHJcbiAgICBmb3JtOiBGb3JtR3JvdXA7XHJcbiAgICBjb2xsZWN0aW9uPzogRm9ybUFycmF5O1xyXG4gIH07XHJcbiAgYWRkKGNvbGxlY3Rpb246IEZvcm1BcnJheSwgZm9ybTogRm9ybUdyb3VwLCB0aXRsZTogc3RyaW5nLFxyXG4gICAgdGVtcGxhdGU6IFRlbXBsYXRlUmVmPGFueT4pIHtcclxuXHJcbiAgICB0aGlzLnZpZXcgPSB0ZW1wbGF0ZTtcclxuICAgIHRoaXMuY29udGV4dCA9IHsgZm9ybTogZm9ybSwgdGl0bGUsIG1vZGU6ICdhZGQnLCBjb2xsZWN0aW9uIH07XHJcbiAgICB0aGlzLmZvY3VzKCk7XHJcbiAgfVxyXG4gIGVkaXQoZm9ybTogRm9ybUdyb3VwLCB0aXRsZTogc3RyaW5nLCB0ZW1wbGF0ZTogVGVtcGxhdGVSZWY8YW55Pikge1xyXG4gICAgdGhpcy52aWV3ID0gdGVtcGxhdGU7XHJcbiAgICB0aGlzLmNvbnRleHQgPSB7IGZvcm06IGZvcm0sIHRpdGxlLCBtb2RlOiAnZWRpdCcgfTtcclxuICAgIHRoaXMuZm9jdXMoKTtcclxuICB9XHJcbiAgbmdPbkluaXQoKSB7XHJcbiAgICBpZiAodGhpcy5tb2RlICE9PSAnd2lkZ2V0Jykge1xyXG4gICAgICBpZiAoaXNTdHJpbmcodGhpcy5vcHRpb25zLmluZGljZXMpKSB0aGlzLm9wdGlvbnMuaW5kaWNlcyA9IFt0aGlzLm9wdGlvbnMuaW5kaWNlc107XHJcbiAgICAgIGlmICh0aGlzLm9wdGlvbnMuc3VtKSB7XHJcbiAgICAgICAgaWYgKGlzQXJyYXkodGhpcy5vcHRpb25zLnN1bSkpXHJcbiAgICAgICAgICB0aGlzLm9wdGlvbnMuc3VtLmZvckVhY2gocyA9PiB0aGlzLmZvcm0uY29udHJvbHMuc3VtLnB1c2godGhpcy5uZXdTdW0ocyksIHsgZW1pdEV2ZW50OiBmYWxzZSB9KSk7XHJcbiAgICAgICAgZWxzZVxyXG4gICAgICAgICAgdGhpcy5mb3JtLmNvbnRyb2xzLnN1bS5wdXNoKHRoaXMubmV3U3VtKHRoaXMub3B0aW9ucy5zdW0pLCB7IGVtaXRFdmVudDogZmFsc2UgfSk7XHJcbiAgICAgIH1cclxuICAgICAgY29uc3QgeyBjdWJlLCB4QXhpcywgc2VyaWVzLCBhZ2dyZWdhdGUgfSA9IHRoaXMuZm9ybS5jb250cm9scztcclxuICAgICAgY3ViZS52YWx1ZUNoYW5nZXMuc3Vic2NyaWJlKCgpID0+IHhBeGlzLmVuYWJsZSh7IGVtaXRFdmVudDogZmFsc2UgfSkpO1xyXG4gICAgICAvLyAgaWYgKCF0aGlzLm9wdGlvbnMueEF4aXMpIFxyXG4gICAgICAvLyAgICB0aGlzLmRpc2FibGUoJ3NlcmllcycsICdhZ2dyZWdhdGUnKTtcclxuICAgICAgLy8gIGVsc2UgaWYgKCF0aGlzLm9wdGlvbnMuc2VyaWVzKVxyXG4gICAgICAvLyAgICBhZ2dyZWdhdGUuZGlzYWJsZSh7IGVtaXRFdmVudDogZmFsc2UgfSk7XHJcbiAgICAgIC8vICB4QXhpcy52YWx1ZUNoYW5nZXMuc3Vic2NyaWJlKCgpID0+XHJcbiAgICAgIC8vICAgIHNlcmllcy5lbmFibGUoeyBlbWl0RXZlbnQ6IGZhbHNlIH0pKTtcclxuICAgICAgLy8gIHNlcmllcy52YWx1ZUNoYW5nZXMuc3Vic2NyaWJlKCgpID0+XHJcbiAgICAgIC8vICAgIGFnZ3JlZ2F0ZS5lbmFibGUoeyBlbWl0RXZlbnQ6IGZhbHNlIH0pKTtcclxuICAgIH1cclxuICAgIHN1cGVyLm5nT25Jbml0KCk7XHJcbiAgfVxyXG4gIG5ld1N1bShzdW0/OiBTdW1TZXR0aW5ncykge1xyXG4gICAgcmV0dXJuIHRoaXMuX2ZiLmdyb3VwKHtcclxuICAgICAgYXhpczogc3VtPy5heGlzIHx8ICdTZXJpZXMnLFxyXG4gICAgICB0aXRsZTogdGhpcy5fZmIuY29udHJvbChzdW0/LnRpdGxlLCBWYWxpZGF0b3JzLnJlcXVpcmVkKSxcclxuICAgICAgdmFsdWU6IHN1bT8udmFsdWUgfHwgbnVsbCxcclxuICAgICAgZm9ybWF0OiBzdW0/LmZvcm1hdCB8fCAnQ3VycmVuY3knLFxyXG4gICAgICBwcmVjaXNpb246IHN1bT8ucHJlY2lzaW9uIHx8IG51bGwsXHJcbiAgICAgIGV4cGxvcmFibGU6IHN1bT8uZXhwbG9yYWJsZSB8fCBudWxsLFxyXG4gICAgICBjYWxjdWxhdGU6IHN1bT8uY2FsY3VsYXRlIHx8ICdTdW0nXHJcbiAgICB9KTtcclxuICB9XHJcbn1cclxuIiwiQGlmIChtb2RlICE9PSAnd2lkZ2V0Jykge1xuICBAaWYgKHZpZXcpIHtcbjxoMiBjbGFzcz1cIm1hdC1oMlwiPnt7Y29udGV4dC50aXRsZXx0cmFuc2xhdGV9fTwvaDI+XG48ZGl2IChkb2N1bWVudDprZXlkb3duLmVzY2FwZSk9XCJjbG9zZVZpZXcoJGV2ZW50KVwiICNlbGVtZW50IGNsYXNzPVwiY29sdW1uXCI+XG4gIDxuZy1jb250YWluZXIgKm5nVGVtcGxhdGVPdXRsZXQ9XCJ2aWV3OyBjb250ZXh0OiBjb250ZXh0XCI+PC9uZy1jb250YWluZXI+XG48L2Rpdj5cbjxkaXYgY2xhc3M9XCJyb3cgYWN0aW9uc1wiPlxuICA8c3BhbiBjbGFzcz1cImRpdmlkZXJcIj48L3NwYW4+XG4gIDxidXR0b24gbWF0LWljb24tYnV0dG9uIChjbGljayk9XCJjbG9zZVZpZXcoKVwiIHR5cGU9XCJidXR0b25cIiBbYml6ZG9jVG9vbHRpcF09XCInQmFjayd8dHJhbnNsYXRlXCI+PG1hdC1pY29uPmtleWJvYXJkX3JldHVybjwvbWF0LWljb24+PC9idXR0b24+XG48L2Rpdj5cbiAgfSBAZWxzZSB7XG48bmctY29udGFpbmVyIFtmb3JtR3JvdXBdPVwiZm9ybVwiPlxuICBAaWYgKGN1YmVzLmxlbmd0aD4xKSB7XG4gIDxtYXQtZm9ybS1maWVsZD5cbiAgICA8bWF0LWxhYmVsPnt7J0N1YmUnfHRyYW5zbGF0ZX19PC9tYXQtbGFiZWw+XG4gICAgPG1hdC1zZWxlY3QgcmVxdWlyZWQgZm9ybUNvbnRyb2xOYW1lPVwiY3ViZVwiIChzZWxlY3Rpb25DaGFuZ2UpPVwiY3ViZVNlbGVjdGVkKCRldmVudClcIj5cbiAgICAgIEBmb3IgKGMgb2YgY3ViZXM7IHRyYWNrIGMpIHtcbiAgICAgIDxtYXQtb3B0aW9uIFt2YWx1ZV09XCJjLm5hbWVcIj57e2MudGl0bGV8bG9jYWxpemVkU3RyaW5nfX08L21hdC1vcHRpb24+XG4gICAgICB9XG4gICAgPC9tYXQtc2VsZWN0PlxuICA8L21hdC1mb3JtLWZpZWxkPlxuICB9XG4gIDxkaXYgY2xhc3M9XCJyb3cgZ2FwXCI+XG4gICAgPG1hdC1mb3JtLWZpZWxkIGNsYXNzPVwiZmxleFwiPlxuICAgICAgPG1hdC1sYWJlbD57eydYQXhpcyd8dHJhbnNsYXRlfX08L21hdC1sYWJlbD5cbiAgICAgIDxtYXQtc2VsZWN0IGZvcm1Db250cm9sTmFtZT1cInhBeGlzXCIgcmVxdWlyZWQ+XG4gICAgICAgIEBmb3IgKGEgb2YgY3ViZT8uYXhlczsgdHJhY2sgYSkge1xuICAgICAgICA8bWF0LW9wdGlvbiBbdmFsdWVdPVwiYS5uYW1lXCI+e3thLnRpdGxlIH19PC9tYXQtb3B0aW9uPlxuICAgICAgICB9XG4gICAgICA8L21hdC1zZWxlY3Q+XG4gICAgICBAaWYgKGZvcm0uY29udHJvbHMueEF4aXMuaGFzRXJyb3IoJ3JlcXVpcmVkJykpIHtcbiAgICAgIDxtYXQtZXJyb3IgW2lubmVySFRNTF09XCInUmVxdWlyZWRFcnInfHRyYW5zbGF0ZTooJ1hBeGlzJ3x0cmFuc2xhdGUpXCI+PC9tYXQtZXJyb3I+XG4gICAgICB9XG4gICAgPC9tYXQtZm9ybS1maWVsZD5cbiAgICA8bWF0LWZvcm0tZmllbGQgY2xhc3M9XCJmbGV4XCI+XG4gICAgICA8bWF0LWxhYmVsPnt7J1Nlcmllcyd8dHJhbnNsYXRlfX08L21hdC1sYWJlbD5cbiAgICAgIDxtYXQtc2VsZWN0IGZvcm1Db250cm9sTmFtZT1cInNlcmllc1wiIHJlcXVpcmVkPlxuICAgICAgICBAZm9yIChhIG9mIGN1YmU/LmF4ZXM7IHRyYWNrIGEpIHtcbiAgICAgICAgQGlmIChmb3JtLmNvbnRyb2xzLnhBeGlzLnZhbHVlIT09YS5uYW1lKSB7XG4gICAgICAgIDxtYXQtb3B0aW9uIFt2YWx1ZV09XCJhLm5hbWVcIj57e2EudGl0bGUgfX08L21hdC1vcHRpb24+XG4gICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgPC9tYXQtc2VsZWN0PlxuICAgICAgQGlmIChmb3JtLmNvbnRyb2xzLnNlcmllcy5oYXNFcnJvcigncmVxdWlyZWQnKSkge1xuICAgICAgPG1hdC1lcnJvciBbaW5uZXJIVE1MXT1cIidSZXF1aXJlZEVycid8dHJhbnNsYXRlOignU2VyaWVzJ3x0cmFuc2xhdGUpXCI+PC9tYXQtZXJyb3I+XG4gICAgICB9XG4gICAgPC9tYXQtZm9ybS1maWVsZD5cbiAgPC9kaXY+XG4gIEBpZiAoY3ViZT8uaW5kaWNlcz8ubGVuZ3RoKSB7XG4gIDxtYXQtZm9ybS1maWVsZCBjbGFzcz1cImZsZXhcIj5cbiAgICA8bWF0LWxhYmVsPnt7J0luZGljZXMnfHRyYW5zbGF0ZX19PC9tYXQtbGFiZWw+XG4gICAgPG1hdC1zZWxlY3QgZm9ybUNvbnRyb2xOYW1lPVwiaW5kaWNlc1wiIG11bHRpcGxlPlxuICAgICAgQGZvciAoaSBvZiBjdWJlLmluZGljZXM7IHRyYWNrIGkpIHtcbiAgICAgIDxtYXQtb3B0aW9uIFt2YWx1ZV09XCJpLm5hbWVcIj57e2kudGl0bGV9fTwvbWF0LW9wdGlvbj5cbiAgICAgIH1cbiAgICA8L21hdC1zZWxlY3Q+XG4gIDwvbWF0LWZvcm0tZmllbGQ+XG4gIH1cbiAgPGRpdiBjbGFzcz1cInJvdyBnYXBcIj5cbiAgICA8bWF0LWZvcm0tZmllbGQgY2xhc3M9XCJmbGV4XCI+XG4gICAgICA8bWF0LWxhYmVsPnt7J0ZpbHRlcnMnfHRyYW5zbGF0ZX19PC9tYXQtbGFiZWw+XG4gICAgICA8bWF0LXNlbGVjdCBmb3JtQ29udHJvbE5hbWU9XCJmaWx0ZXJzXCIgbXVsdGlwbGU+XG4gICAgICAgIEBmb3IgKGEgb2YgY3ViZT8uYXhlczsgdHJhY2sgYSkge1xuICAgICAgICBAaWYgKGZvcm0uY29udHJvbHMueEF4aXMudmFsdWUgIT09IGEubmFtZSAmJiBmb3JtLmNvbnRyb2xzLnNlcmllcy52YWx1ZSAhPT0gYS5uYW1lKSB7XG4gICAgICAgIDxtYXQtb3B0aW9uIFt2YWx1ZV09XCJhLm5hbWVcIj57e2EudGl0bGUgfX08L21hdC1vcHRpb24+XG4gICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgPC9tYXQtc2VsZWN0PlxuICAgIDwvbWF0LWZvcm0tZmllbGQ+XG4gICAgPG1hdC1mb3JtLWZpZWxkIGNsYXNzPVwiZmxleFwiPlxuICAgICAgPG1hdC1sYWJlbD57eydBZ2dyZWdhdGUnfHRyYW5zbGF0ZX19PC9tYXQtbGFiZWw+XG4gICAgICA8bWF0LXNlbGVjdCBmb3JtQ29udHJvbE5hbWU9XCJhZ2dyZWdhdGVcIiBtdWx0aXBsZT5cbiAgICAgICAgQGZvciAoYSBvZiBjdWJlPy5heGVzOyB0cmFjayBhKSB7XG4gICAgICAgIEBpZiAoZm9ybS5jb250cm9scy54QXhpcy52YWx1ZSAhPT0gYS5uYW1lICYmIGZvcm0uY29udHJvbHMuc2VyaWVzLnZhbHVlICE9PSBhLm5hbWUgJiYgKCFmb3JtLmNvbnRyb2xzLmZpbHRlcnMudmFsdWUgfHwgZm9ybS5jb250cm9scy5maWx0ZXJzLnZhbHVlLmluZGV4T2YoYS5uYW1lKSA8IDApKSB7XG4gICAgICAgIDxtYXQtb3B0aW9uIFt2YWx1ZV09XCJhLm5hbWVcIj57e2EudGl0bGUgfX08L21hdC1vcHRpb24+XG4gICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgPC9tYXQtc2VsZWN0PlxuICAgICAgPG1hdC1oaW50PjwvbWF0LWhpbnQ+XG4gICAgPC9tYXQtZm9ybS1maWVsZD5cbiAgPC9kaXY+XG4gIDxoMiBjbGFzcz1cIm1hdC1oMiByb3dcIj5cbiAgICB7eydTdW1tYXJ5J3x0cmFuc2xhdGV9fVxuICAgIDxzcGFuIGNsYXNzPVwiZGl2aWRlclwiPjwvc3Bhbj5cbiAgICA8YnV0dG9uIG1hdC1pY29uLWJ1dHRvbiAoY2xpY2spPVwiYWRkKGZvcm0uY29udHJvbHMuc3VtLCBuZXdTdW0oKSwgJ1N1bW1hcnknLCBzdW1mb3JtKVwiIFtiaXpkb2NUb29sdGlwXT1cIidBZGQnfHRyYW5zbGF0ZVwiIHR5cGU9XCJidXR0b25cIj48bWF0LWljb24+YWRkX2NpcmNsZV9vdXRsaW5lPC9tYXQtaWNvbj48L2J1dHRvbj5cbiAgPC9oMj5cbiAgPHRhYmxlIGNsYXNzPVwibWF0LW1kYy10YWJsZVwiIGZvcm1BcnJheU5hbWU9XCJzdW1cIiBjZGtEcm9wTGlzdCAoY2RrRHJvcExpc3REcm9wcGVkKT1cImRyb3AoJGV2ZW50LCBmb3JtLmNvbnRyb2xzLnN1bSlcIj5cbiAgICBAZm9yIChzIG9mIGZvcm0uY29udHJvbHMuc3VtLmNvbnRyb2xzOyB0cmFjayBzOyBsZXQgaW5kZXggPSAkaW5kZXgpIHtcbiAgICA8dHIgY2xhc3M9XCJtYXQtbWRjLXJvd1wiIFtmb3JtR3JvdXBdPVwic1wiIGNka0RyYWc+XG4gICAgICA8dGQgY2xhc3M9XCJtYXQtbWRjLWNlbGxcIj5cbiAgICAgICAgPG1hdC1pY29uIGNka0RyYWdIYW5kbGU+ZHJhZ19pbmRpY2F0b3I8L21hdC1pY29uPlxuICAgICAgPC90ZD5cbiAgICAgIDx0ZCBjbGFzcz1cIm1hdC1tZGMtY2VsbFwiIHN0eWxlPVwid2lkdGg6IDEwMCVcIj57e3MuY29udHJvbHMudGl0bGUudmFsdWV9fTwvdGQ+XG4gICAgICA8dGQgY2xhc3M9XCJtYXQtbWRjLWNlbGxcIiBzdHlsZT1cIndoaXRlLXNwYWNlOiBwcmU7XCI+XG4gICAgICAgIDxidXR0b24gbWF0LWljb24tYnV0dG9uIChjbGljayk9XCJlZGl0KHMsICdTdW1tYXJ5Jywgc3VtZm9ybSlcIiBbYml6ZG9jVG9vbHRpcF09XCInRWRpdCd8dHJhbnNsYXRlXCIgdHlwZT1cImJ1dHRvblwiPjxtYXQtaWNvbj5lZGl0PC9tYXQtaWNvbj48L2J1dHRvbj5cbiAgICAgICAgPGJ1dHRvbiBtYXQtaWNvbi1idXR0b24gKGNsaWNrKT1cImZvcm0uY29udHJvbHMuc3VtLnJlbW92ZUF0KGluZGV4KVwiIFtiaXpkb2NUb29sdGlwXT1cIidSZW1vdmUnfHRyYW5zbGF0ZVwiIHR5cGU9XCJidXR0b25cIj48bWF0LWljb24+ZGVsZXRlPC9tYXQtaWNvbj48L2J1dHRvbj5cbiAgICAgIDwvdGQ+XG4gICAgPC90cj5cbiAgICB9XG4gIDwvdGFibGU+XG48L25nLWNvbnRhaW5lcj5cbiAgfVxufVxuPG5nLXRlbXBsYXRlICNzdW1mb3JtIGxldC1mb3JtPVwiZm9ybVwiPlxuICA8bmctY29udGFpbmVyIFtmb3JtR3JvdXBdPVwiZm9ybVwiPlxuICAgIDxtYXQtZm9ybS1maWVsZCBjbGFzcz1cImZsZXhcIj5cbiAgICAgIDxtYXQtbGFiZWw+e3snVGl0bGUnfHRyYW5zbGF0ZX19PC9tYXQtbGFiZWw+XG4gICAgICA8aW5wdXQgbWF0SW5wdXQgZm9ybUNvbnRyb2xOYW1lPVwidGl0bGVcIiByZXF1aXJlZCAvPlxuICAgIDwvbWF0LWZvcm0tZmllbGQ+XG4gICAgPG1hdC1yYWRpby1ncm91cCBmb3JtQ29udHJvbE5hbWU9XCJheGlzXCI+XG4gICAgICA8bWF0LXJhZGlvLWJ1dHRvbiB2YWx1ZT1cIlhBeGlzXCI+e3snWEF4aXMnfHRyYW5zbGF0ZX19PC9tYXQtcmFkaW8tYnV0dG9uPlxuICAgICAgPG1hdC1yYWRpby1idXR0b24gdmFsdWU9XCJTZXJpZXNcIj57eydTZXJpZXMnfHRyYW5zbGF0ZX19PC9tYXQtcmFkaW8tYnV0dG9uPlxuICAgIDwvbWF0LXJhZGlvLWdyb3VwPlxuICAgIDxtYXQtZm9ybS1maWVsZCBjbGFzcz1cImZsZXhcIj5cbiAgICAgIDxtYXQtbGFiZWw+e3snQ2FsY3VsYXRlJ3x0cmFuc2xhdGV9fTwvbWF0LWxhYmVsPlxuICAgICAgPG1hdC1zZWxlY3QgZm9ybUNvbnRyb2xOYW1lPVwiY2FsY3VsYXRlXCI+XG4gICAgICAgIDxtYXQtb3B0aW9uPnt7J05vbmUnfHRyYW5zbGF0ZX19PC9tYXQtb3B0aW9uPlxuICAgICAgICA8bWF0LW9wdGlvbiB2YWx1ZT1cIlF1YXJ0ZXJcIj57eydRdWFydGVyJ3x0cmFuc2xhdGV9fTwvbWF0LW9wdGlvbj5cbiAgICAgICAgPG1hdC1vcHRpb24gdmFsdWU9XCJZZWFyXCI+e3snWWVhcid8dHJhbnNsYXRlfX08L21hdC1vcHRpb24+XG4gICAgICAgIDxtYXQtb3B0aW9uIHZhbHVlPVwiTW9udGhcIj57eydNb250aCd8dHJhbnNsYXRlfX08L21hdC1vcHRpb24+XG4gICAgICAgIDxtYXQtb3B0aW9uIHZhbHVlPVwiU3VtXCI+e3snU3VtJ3x0cmFuc2xhdGV9fTwvbWF0LW9wdGlvbj5cbiAgICAgIDwvbWF0LXNlbGVjdD5cbiAgICA8L21hdC1mb3JtLWZpZWxkPlxuICAgIDxkaXYgY2xhc3M9XCJyb3dcIj5cbiAgICAgIDxtYXQtZm9ybS1maWVsZCBjbGFzcz1cImZsZXhcIj5cbiAgICAgICAgPG1hdC1sYWJlbD57eydWYWx1ZSd8dHJhbnNsYXRlfX08L21hdC1sYWJlbD5cbiAgICAgICAgPGlucHV0IG1hdElucHV0IGZvcm1Db250cm9sTmFtZT1cInZhbHVlXCIgLz5cbiAgICAgIDwvbWF0LWZvcm0tZmllbGQ+XG4gICAgICA8bWF0LWZvcm0tZmllbGQgY2xhc3M9XCJmbGV4XCI+XG4gICAgICAgIDxtYXQtbGFiZWw+e3snRm9ybWF0J3x0cmFuc2xhdGV9fTwvbWF0LWxhYmVsPlxuICAgICAgICA8bWF0LXNlbGVjdCBmb3JtQ29udHJvbE5hbWU9XCJmb3JtYXRcIj5cbiAgICAgICAgICA8bWF0LW9wdGlvbiB2YWx1ZT1cIkN1cnJlbmN5XCI+e3snQ3VycmVuY3knfHRyYW5zbGF0ZX19PC9tYXQtb3B0aW9uPlxuICAgICAgICAgIDxtYXQtb3B0aW9uIHZhbHVlPVwiTnVtYmVyXCI+e3snTnVtZXJpYyd8dHJhbnNsYXRlfX08L21hdC1vcHRpb24+XG4gICAgICAgICAgPG1hdC1vcHRpb24gdmFsdWU9XCJQZXJjZW50XCI+e3snUGVyY2VudCd8dHJhbnNsYXRlfX08L21hdC1vcHRpb24+XG4gICAgICAgIDwvbWF0LXNlbGVjdD5cbiAgICAgIDwvbWF0LWZvcm0tZmllbGQ+XG4gICAgPC9kaXY+XG4gIDwvbmctY29udGFpbmVyPlxuPC9uZy10ZW1wbGF0ZT5cbiJdfQ==
98
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibWF0cml4LXZpZXcuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvY29yZS9zcmMvbGliL2FkbWluL2FyY2hpdGVjdHVyZS9lbGVtZW50cy9tYXRyaXgtdmlldy5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9jb3JlL3NyYy9saWIvYWRtaW4vYXJjaGl0ZWN0dXJlL2VsZW1lbnRzL21hdHJpeC12aWV3LmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7QUFBQSxPQUFPLEVBQUUsU0FBUyxFQUF1QixNQUFNLGVBQWUsQ0FBQztBQUMvRCxPQUFPLEVBQXdCLFVBQVUsRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBQ2xFLE9BQU8sRUFBRSxNQUFNLEVBQUUsTUFBTSwwQkFBMEIsQ0FBQztBQUNsRCxPQUFPLEVBQUUsT0FBTyxFQUFFLFFBQVEsRUFBRSxNQUFNLHlCQUF5QixDQUFDO0FBRzVELE9BQU8sRUFBRSw0QkFBNEIsRUFBRSxNQUFNLGtCQUFrQixDQUFDOzs7Ozs7Ozs7Ozs7Ozs7QUFPekQsSUFBTSx5QkFBeUIsR0FBL0IsTUFBTSx5QkFBMEIsU0FBUSw0QkFBaUQ7SUFBekY7O1FBQ0ksU0FBSSxHQUFHLElBQUksQ0FBQyxHQUFHLENBQUMsS0FBSyxDQUFDO1lBQzdCLElBQUksRUFBRSxJQUFJO1lBQ1YsS0FBSyxFQUFFLElBQUksQ0FBQyxHQUFHLENBQUMsT0FBTyxDQUFnQixJQUFJLEVBQUUsVUFBVSxDQUFDLFFBQVEsQ0FBQztZQUNqRSxNQUFNLEVBQUUsSUFBSSxDQUFDLEdBQUcsQ0FBQyxPQUFPLENBQWdCLElBQUksRUFBRSxVQUFVLENBQUMsUUFBUSxDQUFDO1lBQ2xFLE9BQU8sRUFBRSxJQUFJLENBQUMsR0FBRyxDQUFDLE9BQU8sQ0FBa0IsSUFBSSxDQUFDO1lBQ2hELFNBQVMsRUFBRSxJQUFJLENBQUMsR0FBRyxDQUFDLE9BQU8sQ0FBa0IsSUFBSSxDQUFDO1lBQ2xELEdBQUcsRUFBRSxJQUFJLENBQUMsR0FBRyxDQUFDLEtBQUssQ0FBaUIsRUFBRSxDQUFDO1lBQ3ZDLE9BQU8sRUFBRSxJQUFJLENBQUMsR0FBRyxDQUFDLE9BQU8sQ0FBa0IsSUFBSSxDQUFDO1lBQ2hELE9BQU8sRUFBRSxJQUFJO1lBQ2IsT0FBTyxFQUFFLElBQUk7U0FDZCxDQUFDLENBQUM7S0E0REo7SUExREMsU0FBUyxDQUFDLEdBQVc7UUFDbkIsSUFBSSxDQUFDLElBQUksR0FBRyxJQUFJLENBQUM7UUFDakIsSUFBSSxJQUFJLENBQUMsT0FBTyxDQUFDLElBQUksS0FBSyxLQUFLO1lBQzdCLElBQUksQ0FBQyxPQUFPLENBQUMsVUFBVSxFQUFFLElBQUksQ0FBQyxJQUFJLENBQUMsT0FBTyxDQUFDLElBQUksQ0FBQyxDQUFDO1FBQ25ELEdBQUcsRUFBRSxjQUFjLEVBQUUsQ0FBQztRQUN0QixHQUFHLEVBQUUsZUFBZSxFQUFFLENBQUM7SUFDekIsQ0FBQztJQU9ELEdBQUcsQ0FBQyxVQUFxQixFQUFFLElBQWUsRUFBRSxLQUFhLEVBQ3ZELFFBQTBCO1FBRTFCLElBQUksQ0FBQyxJQUFJLEdBQUcsUUFBUSxDQUFDO1FBQ3JCLElBQUksQ0FBQyxPQUFPLEdBQUcsRUFBRSxJQUFJLEVBQUUsSUFBSSxFQUFFLEtBQUssRUFBRSxJQUFJLEVBQUUsS0FBSyxFQUFFLFVBQVUsRUFBRSxDQUFDO1FBQzlELElBQUksQ0FBQyxLQUFLLEVBQUUsQ0FBQztJQUNmLENBQUM7SUFDRCxJQUFJLENBQUMsSUFBZSxFQUFFLEtBQWEsRUFBRSxRQUEwQjtRQUM3RCxJQUFJLENBQUMsSUFBSSxHQUFHLFFBQVEsQ0FBQztRQUNyQixJQUFJLENBQUMsT0FBTyxHQUFHLEVBQUUsSUFBSSxFQUFFLElBQUksRUFBRSxLQUFLLEVBQUUsSUFBSSxFQUFFLE1BQU0sRUFBRSxDQUFDO1FBQ25ELElBQUksQ0FBQyxLQUFLLEVBQUUsQ0FBQztJQUNmLENBQUM7SUFDUSxRQUFRO1FBQ2YsSUFBSSxJQUFJLENBQUMsSUFBSSxLQUFLLFFBQVEsRUFBRSxDQUFDO1lBQzNCLElBQUksUUFBUSxDQUFDLElBQUksQ0FBQyxPQUFPLENBQUMsT0FBTyxDQUFDO2dCQUFFLElBQUksQ0FBQyxPQUFPLENBQUMsT0FBTyxHQUFHLENBQUMsSUFBSSxDQUFDLE9BQU8sQ0FBQyxPQUFPLENBQUMsQ0FBQztZQUNsRixJQUFJLElBQUksQ0FBQyxPQUFPLENBQUMsR0FBRyxFQUFFLENBQUM7Z0JBQ3JCLElBQUksT0FBTyxDQUFDLElBQUksQ0FBQyxPQUFPLENBQUMsR0FBRyxDQUFDO29CQUMzQixJQUFJLENBQUMsT0FBTyxDQUFDLEdBQUcsQ0FBQyxPQUFPLENBQUMsQ0FBQyxDQUFDLEVBQUUsQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLFFBQVEsQ0FBQyxHQUFHLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxNQUFNLENBQUMsQ0FBQyxDQUFDLEVBQUUsRUFBRSxTQUFTLEVBQUUsS0FBSyxFQUFFLENBQUMsQ0FBQyxDQUFDOztvQkFFakcsSUFBSSxDQUFDLElBQUksQ0FBQyxRQUFRLENBQUMsR0FBRyxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsTUFBTSxDQUFDLElBQUksQ0FBQyxPQUFPLENBQUMsR0FBRyxDQUFDLEVBQUUsRUFBRSxTQUFTLEVBQUUsS0FBSyxFQUFFLENBQUMsQ0FBQztZQUNyRixDQUFDO1lBQ0QsTUFBTSxFQUFFLElBQUksRUFBRSxLQUFLLEVBQUUsTUFBTSxFQUFFLFNBQVMsRUFBRSxHQUFHLElBQUksQ0FBQyxJQUFJLENBQUMsUUFBUSxDQUFDO1lBQzlELElBQUksQ0FBQyxZQUFZLENBQUMsU0FBUyxDQUFDLEdBQUcsRUFBRSxDQUFDLEtBQUssQ0FBQyxNQUFNLENBQUMsRUFBRSxTQUFTLEVBQUUsS0FBSyxFQUFFLENBQUMsQ0FBQyxDQUFDO1lBQ3RFLDZCQUE2QjtZQUM3QiwwQ0FBMEM7WUFDMUMsa0NBQWtDO1lBQ2xDLDhDQUE4QztZQUM5QyxzQ0FBc0M7WUFDdEMsMkNBQTJDO1lBQzNDLHVDQUF1QztZQUN2Qyw4Q0FBOEM7UUFDaEQsQ0FBQztRQUNELEtBQUssQ0FBQyxRQUFRLEVBQUUsQ0FBQztJQUNuQixDQUFDO0lBQ0QsTUFBTSxDQUFDLEdBQWlCO1FBQ3RCLE9BQU8sSUFBSSxDQUFDLEdBQUcsQ0FBQyxLQUFLLENBQUM7WUFDcEIsSUFBSSxFQUFFLEdBQUcsRUFBRSxJQUFJLElBQUksUUFBUTtZQUMzQixLQUFLLEVBQUUsSUFBSSxDQUFDLEdBQUcsQ0FBQyxPQUFPLENBQUMsR0FBRyxFQUFFLEtBQUssRUFBRSxVQUFVLENBQUMsUUFBUSxDQUFDO1lBQ3hELEtBQUssRUFBRSxHQUFHLEVBQUUsS0FBSyxJQUFJLElBQUk7WUFDekIsTUFBTSxFQUFFLEdBQUcsRUFBRSxNQUFNLElBQUksVUFBVTtZQUNqQyxTQUFTLEVBQUUsR0FBRyxFQUFFLFNBQVMsSUFBSSxJQUFJO1lBQ2pDLFVBQVUsRUFBRSxHQUFHLEVBQUUsVUFBVSxJQUFJLElBQUk7WUFDbkMsU0FBUyxFQUFFLEdBQUcsRUFBRSxTQUFTLElBQUksS0FBSztTQUNuQyxDQUFDLENBQUM7SUFDTCxDQUFDOzhHQXRFVSx5QkFBeUI7a0dBQXpCLHlCQUF5QiwrR0NidEMsd3lNQTJJQTs7QUQ5SGEseUJBQXlCO0lBRHJDLE1BQU0sQ0FBQyxFQUFFLFFBQVEsRUFBRSxzQkFBc0IsRUFBRSxDQUFDO0dBQ2hDLHlCQUF5QixDQXVFckM7OzJGQXZFWSx5QkFBeUI7a0JBTHJDLFNBQVM7MkJBRUYsRUFBRSxLQUFLLEVBQUUsUUFBUSxFQUFFIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29tcG9uZW50LCBPbkluaXQsIFRlbXBsYXRlUmVmIH0gZnJvbSBcIkBhbmd1bGFyL2NvcmVcIjtcclxuaW1wb3J0IHsgRm9ybUFycmF5LCBGb3JtR3JvdXAsIFZhbGlkYXRvcnMgfSBmcm9tIFwiQGFuZ3VsYXIvZm9ybXNcIjtcclxuaW1wb3J0IHsgQml6RG9jIH0gZnJvbSBcIi4uLy4uLy4uL2NvcmUvZGVjb3JhdG9yc1wiO1xyXG5pbXBvcnQgeyBpc0FycmF5LCBpc1N0cmluZyB9IGZyb20gXCIuLi8uLi8uLi9jb3JlL2Z1bmN0aW9uc1wiO1xyXG5pbXBvcnQgeyBTdW1TZXR0aW5ncyB9IGZyb20gXCIuLi8uLi8uLi9jdWJlL21hdHJpeC90YWJsZS5jb21wb25lbnRcIjtcclxuaW1wb3J0IHsgTWF0cml4U2V0dGluZ3NNb2RlbCB9IGZyb20gXCIuLi8uLi8uLi92aWV3cy9jdWJlL21hdHJpeC5jb21wb25lbnRcIjtcclxuaW1wb3J0IHsgRGVzaWduZXJDdWJlRWxlbWVudENvbXBvbmVudCB9IGZyb20gXCIuLi9kZXNpZ25lci5iYXNlXCI7XHJcblxyXG5AQ29tcG9uZW50KHtcclxuICB0ZW1wbGF0ZVVybDogJ21hdHJpeC12aWV3LmNvbXBvbmVudC5odG1sJyxcclxuICBob3N0OiB7IGNsYXNzOiAnY29sdW1uJyB9XHJcbn0pXHJcbkBCaXpEb2MoeyBzZWxlY3RvcjogJ21hdHJpeC12aWV3LWRlc2lnbmVyJyB9KVxyXG5leHBvcnQgY2xhc3MgTWF0cml4Vmlld0Rlc2lnbkNvbXBvbmVudCBleHRlbmRzIERlc2lnbmVyQ3ViZUVsZW1lbnRDb21wb25lbnQ8TWF0cml4U2V0dGluZ3NNb2RlbD4gaW1wbGVtZW50cyBPbkluaXQge1xyXG4gIHJlYWRvbmx5IGZvcm0gPSB0aGlzLl9mYi5ncm91cCh7XHJcbiAgICBjdWJlOiBudWxsLFxyXG4gICAgeEF4aXM6IHRoaXMuX2ZiLmNvbnRyb2w8c3RyaW5nIHwgbnVsbD4obnVsbCwgVmFsaWRhdG9ycy5yZXF1aXJlZCksXHJcbiAgICBzZXJpZXM6IHRoaXMuX2ZiLmNvbnRyb2w8c3RyaW5nIHwgbnVsbD4obnVsbCwgVmFsaWRhdG9ycy5yZXF1aXJlZCksXHJcbiAgICBpbmRpY2VzOiB0aGlzLl9mYi5jb250cm9sPHN0cmluZ1tdIHwgbnVsbD4obnVsbCksXHJcbiAgICBhZ2dyZWdhdGU6IHRoaXMuX2ZiLmNvbnRyb2w8c3RyaW5nW10gfCBudWxsPihudWxsKSxcclxuICAgIHN1bTogdGhpcy5fZmIuYXJyYXk8Rm9ybUdyb3VwPGFueT4+KFtdKSxcclxuICAgIGZpbHRlcnM6IHRoaXMuX2ZiLmNvbnRyb2w8c3RyaW5nW10gfCBudWxsPihudWxsKSxcclxuICAgIGluZGV4QXQ6IG51bGwsXHJcbiAgICBwbGFjZUF0OiBudWxsXHJcbiAgfSk7XHJcbiAgdmlldzogVGVtcGxhdGVSZWY8YW55PnwgbnVsbDtcclxuICBjbG9zZVZpZXcoZXZ0PzogRXZlbnQpIHtcclxuICAgIHRoaXMudmlldyA9IG51bGw7XHJcbiAgICBpZiAodGhpcy5jb250ZXh0Lm1vZGUgPT09ICdhZGQnKVxyXG4gICAgICB0aGlzLmNvbnRleHQuY29sbGVjdGlvbj8ucHVzaCh0aGlzLmNvbnRleHQuZm9ybSk7XHJcbiAgICBldnQ/LnByZXZlbnREZWZhdWx0KCk7XHJcbiAgICBldnQ/LnN0b3BQcm9wYWdhdGlvbigpO1xyXG4gIH1cclxuICBjb250ZXh0OiB7XHJcbiAgICBtb2RlOiAnYWRkJyB8ICdlZGl0JztcclxuICAgIHRpdGxlOiBzdHJpbmc7XHJcbiAgICBmb3JtOiBGb3JtR3JvdXA7XHJcbiAgICBjb2xsZWN0aW9uPzogRm9ybUFycmF5O1xyXG4gIH07XHJcbiAgYWRkKGNvbGxlY3Rpb246IEZvcm1BcnJheSwgZm9ybTogRm9ybUdyb3VwLCB0aXRsZTogc3RyaW5nLFxyXG4gICAgdGVtcGxhdGU6IFRlbXBsYXRlUmVmPGFueT4pIHtcclxuXHJcbiAgICB0aGlzLnZpZXcgPSB0ZW1wbGF0ZTtcclxuICAgIHRoaXMuY29udGV4dCA9IHsgZm9ybTogZm9ybSwgdGl0bGUsIG1vZGU6ICdhZGQnLCBjb2xsZWN0aW9uIH07XHJcbiAgICB0aGlzLmZvY3VzKCk7XHJcbiAgfVxyXG4gIGVkaXQoZm9ybTogRm9ybUdyb3VwLCB0aXRsZTogc3RyaW5nLCB0ZW1wbGF0ZTogVGVtcGxhdGVSZWY8YW55Pikge1xyXG4gICAgdGhpcy52aWV3ID0gdGVtcGxhdGU7XHJcbiAgICB0aGlzLmNvbnRleHQgPSB7IGZvcm06IGZvcm0sIHRpdGxlLCBtb2RlOiAnZWRpdCcgfTtcclxuICAgIHRoaXMuZm9jdXMoKTtcclxuICB9XHJcbiAgb3ZlcnJpZGUgbmdPbkluaXQoKSB7XHJcbiAgICBpZiAodGhpcy5tb2RlICE9PSAnd2lkZ2V0Jykge1xyXG4gICAgICBpZiAoaXNTdHJpbmcodGhpcy5vcHRpb25zLmluZGljZXMpKSB0aGlzLm9wdGlvbnMuaW5kaWNlcyA9IFt0aGlzLm9wdGlvbnMuaW5kaWNlc107XHJcbiAgICAgIGlmICh0aGlzLm9wdGlvbnMuc3VtKSB7XHJcbiAgICAgICAgaWYgKGlzQXJyYXkodGhpcy5vcHRpb25zLnN1bSkpXHJcbiAgICAgICAgICB0aGlzLm9wdGlvbnMuc3VtLmZvckVhY2gocyA9PiB0aGlzLmZvcm0uY29udHJvbHMuc3VtLnB1c2godGhpcy5uZXdTdW0ocyksIHsgZW1pdEV2ZW50OiBmYWxzZSB9KSk7XHJcbiAgICAgICAgZWxzZVxyXG4gICAgICAgICAgdGhpcy5mb3JtLmNvbnRyb2xzLnN1bS5wdXNoKHRoaXMubmV3U3VtKHRoaXMub3B0aW9ucy5zdW0pLCB7IGVtaXRFdmVudDogZmFsc2UgfSk7XHJcbiAgICAgIH1cclxuICAgICAgY29uc3QgeyBjdWJlLCB4QXhpcywgc2VyaWVzLCBhZ2dyZWdhdGUgfSA9IHRoaXMuZm9ybS5jb250cm9scztcclxuICAgICAgY3ViZS52YWx1ZUNoYW5nZXMuc3Vic2NyaWJlKCgpID0+IHhBeGlzLmVuYWJsZSh7IGVtaXRFdmVudDogZmFsc2UgfSkpO1xyXG4gICAgICAvLyAgaWYgKCF0aGlzLm9wdGlvbnMueEF4aXMpIFxyXG4gICAgICAvLyAgICB0aGlzLmRpc2FibGUoJ3NlcmllcycsICdhZ2dyZWdhdGUnKTtcclxuICAgICAgLy8gIGVsc2UgaWYgKCF0aGlzLm9wdGlvbnMuc2VyaWVzKVxyXG4gICAgICAvLyAgICBhZ2dyZWdhdGUuZGlzYWJsZSh7IGVtaXRFdmVudDogZmFsc2UgfSk7XHJcbiAgICAgIC8vICB4QXhpcy52YWx1ZUNoYW5nZXMuc3Vic2NyaWJlKCgpID0+XHJcbiAgICAgIC8vICAgIHNlcmllcy5lbmFibGUoeyBlbWl0RXZlbnQ6IGZhbHNlIH0pKTtcclxuICAgICAgLy8gIHNlcmllcy52YWx1ZUNoYW5nZXMuc3Vic2NyaWJlKCgpID0+XHJcbiAgICAgIC8vICAgIGFnZ3JlZ2F0ZS5lbmFibGUoeyBlbWl0RXZlbnQ6IGZhbHNlIH0pKTtcclxuICAgIH1cclxuICAgIHN1cGVyLm5nT25Jbml0KCk7XHJcbiAgfVxyXG4gIG5ld1N1bShzdW0/OiBTdW1TZXR0aW5ncykge1xyXG4gICAgcmV0dXJuIHRoaXMuX2ZiLmdyb3VwKHtcclxuICAgICAgYXhpczogc3VtPy5heGlzIHx8ICdTZXJpZXMnLFxyXG4gICAgICB0aXRsZTogdGhpcy5fZmIuY29udHJvbChzdW0/LnRpdGxlLCBWYWxpZGF0b3JzLnJlcXVpcmVkKSxcclxuICAgICAgdmFsdWU6IHN1bT8udmFsdWUgfHwgbnVsbCxcclxuICAgICAgZm9ybWF0OiBzdW0/LmZvcm1hdCB8fCAnQ3VycmVuY3knLFxyXG4gICAgICBwcmVjaXNpb246IHN1bT8ucHJlY2lzaW9uIHx8IG51bGwsXHJcbiAgICAgIGV4cGxvcmFibGU6IHN1bT8uZXhwbG9yYWJsZSB8fCBudWxsLFxyXG4gICAgICBjYWxjdWxhdGU6IHN1bT8uY2FsY3VsYXRlIHx8ICdTdW0nXHJcbiAgICB9KTtcclxuICB9XHJcbn1cclxuIiwiQGlmIChtb2RlICE9PSAnd2lkZ2V0Jykge1xyXG4gIEBpZiAodmlldykge1xyXG48aDIgY2xhc3M9XCJtYXQtaDJcIj57e2NvbnRleHQudGl0bGV8dHJhbnNsYXRlfX08L2gyPlxyXG48ZGl2IChkb2N1bWVudDprZXlkb3duLmVzY2FwZSk9XCJjbG9zZVZpZXcoJGV2ZW50KVwiICNlbGVtZW50IGNsYXNzPVwiY29sdW1uXCI+XHJcbiAgPG5nLWNvbnRhaW5lciAqbmdUZW1wbGF0ZU91dGxldD1cInZpZXc7IGNvbnRleHQ6IGNvbnRleHRcIj48L25nLWNvbnRhaW5lcj5cclxuPC9kaXY+XHJcbjxkaXYgY2xhc3M9XCJyb3cgYWN0aW9uc1wiPlxyXG4gIDxzcGFuIGNsYXNzPVwiZGl2aWRlclwiPjwvc3Bhbj5cclxuICA8YnV0dG9uIG1hdC1pY29uLWJ1dHRvbiAoY2xpY2spPVwiY2xvc2VWaWV3KClcIiB0eXBlPVwiYnV0dG9uXCIgW2JpemRvY1Rvb2x0aXBdPVwiJ0JhY2snfHRyYW5zbGF0ZVwiPjxtYXQtaWNvbj5rZXlib2FyZF9yZXR1cm48L21hdC1pY29uPjwvYnV0dG9uPlxyXG48L2Rpdj5cclxuICB9IEBlbHNlIHtcclxuPG5nLWNvbnRhaW5lciBbZm9ybUdyb3VwXT1cImZvcm1cIj5cclxuICBAaWYgKGN1YmVzLmxlbmd0aD4xKSB7XHJcbiAgPG1hdC1mb3JtLWZpZWxkPlxyXG4gICAgPG1hdC1sYWJlbD57eydDdWJlJ3x0cmFuc2xhdGV9fTwvbWF0LWxhYmVsPlxyXG4gICAgPG1hdC1zZWxlY3QgcmVxdWlyZWQgZm9ybUNvbnRyb2xOYW1lPVwiY3ViZVwiIChzZWxlY3Rpb25DaGFuZ2UpPVwiY3ViZVNlbGVjdGVkKCRldmVudClcIj5cclxuICAgICAgQGZvciAoYyBvZiBjdWJlczsgdHJhY2sgYykge1xyXG4gICAgICA8bWF0LW9wdGlvbiBbdmFsdWVdPVwiYy5uYW1lXCI+e3tjLnRpdGxlfGxvY2FsaXplZFN0cmluZ319PC9tYXQtb3B0aW9uPlxyXG4gICAgICB9XHJcbiAgICA8L21hdC1zZWxlY3Q+XHJcbiAgPC9tYXQtZm9ybS1maWVsZD5cclxuICB9XHJcbiAgPGRpdiBjbGFzcz1cInJvdyBnYXBcIj5cclxuICAgIDxtYXQtZm9ybS1maWVsZCBjbGFzcz1cImZsZXhcIj5cclxuICAgICAgPG1hdC1sYWJlbD57eydYQXhpcyd8dHJhbnNsYXRlfX08L21hdC1sYWJlbD5cclxuICAgICAgPG1hdC1zZWxlY3QgZm9ybUNvbnRyb2xOYW1lPVwieEF4aXNcIiByZXF1aXJlZD5cclxuICAgICAgICBAZm9yIChhIG9mIGN1YmU/LmF4ZXM7IHRyYWNrIGEpIHtcclxuICAgICAgICA8bWF0LW9wdGlvbiBbdmFsdWVdPVwiYS5uYW1lXCI+e3thLnRpdGxlIH19PC9tYXQtb3B0aW9uPlxyXG4gICAgICAgIH1cclxuICAgICAgPC9tYXQtc2VsZWN0PlxyXG4gICAgICBAaWYgKGZvcm0uY29udHJvbHMueEF4aXMuaGFzRXJyb3IoJ3JlcXVpcmVkJykpIHtcclxuICAgICAgPG1hdC1lcnJvciBbaW5uZXJIVE1MXT1cIidSZXF1aXJlZEVycid8dHJhbnNsYXRlOignWEF4aXMnfHRyYW5zbGF0ZSlcIj48L21hdC1lcnJvcj5cclxuICAgICAgfVxyXG4gICAgPC9tYXQtZm9ybS1maWVsZD5cclxuICAgIDxtYXQtZm9ybS1maWVsZCBjbGFzcz1cImZsZXhcIj5cclxuICAgICAgPG1hdC1sYWJlbD57eydTZXJpZXMnfHRyYW5zbGF0ZX19PC9tYXQtbGFiZWw+XHJcbiAgICAgIDxtYXQtc2VsZWN0IGZvcm1Db250cm9sTmFtZT1cInNlcmllc1wiIHJlcXVpcmVkPlxyXG4gICAgICAgIEBmb3IgKGEgb2YgY3ViZT8uYXhlczsgdHJhY2sgYSkge1xyXG4gICAgICAgIEBpZiAoZm9ybS5jb250cm9scy54QXhpcy52YWx1ZSE9PWEubmFtZSkge1xyXG4gICAgICAgIDxtYXQtb3B0aW9uIFt2YWx1ZV09XCJhLm5hbWVcIj57e2EudGl0bGUgfX08L21hdC1vcHRpb24+XHJcbiAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgICAgPC9tYXQtc2VsZWN0PlxyXG4gICAgICBAaWYgKGZvcm0uY29udHJvbHMuc2VyaWVzLmhhc0Vycm9yKCdyZXF1aXJlZCcpKSB7XHJcbiAgICAgIDxtYXQtZXJyb3IgW2lubmVySFRNTF09XCInUmVxdWlyZWRFcnInfHRyYW5zbGF0ZTooJ1Nlcmllcyd8dHJhbnNsYXRlKVwiPjwvbWF0LWVycm9yPlxyXG4gICAgICB9XHJcbiAgICA8L21hdC1mb3JtLWZpZWxkPlxyXG4gIDwvZGl2PlxyXG4gIEBpZiAoY3ViZT8uaW5kaWNlcz8ubGVuZ3RoKSB7XHJcbiAgPG1hdC1mb3JtLWZpZWxkIGNsYXNzPVwiZmxleFwiPlxyXG4gICAgPG1hdC1sYWJlbD57eydJbmRpY2VzJ3x0cmFuc2xhdGV9fTwvbWF0LWxhYmVsPlxyXG4gICAgPG1hdC1zZWxlY3QgZm9ybUNvbnRyb2xOYW1lPVwiaW5kaWNlc1wiIG11bHRpcGxlPlxyXG4gICAgICBAZm9yIChpIG9mIGN1YmUuaW5kaWNlczsgdHJhY2sgaSkge1xyXG4gICAgICA8bWF0LW9wdGlvbiBbdmFsdWVdPVwiaS5uYW1lXCI+e3tpLnRpdGxlfX08L21hdC1vcHRpb24+XHJcbiAgICAgIH1cclxuICAgIDwvbWF0LXNlbGVjdD5cclxuICA8L21hdC1mb3JtLWZpZWxkPlxyXG4gIH1cclxuICA8ZGl2IGNsYXNzPVwicm93IGdhcFwiPlxyXG4gICAgPG1hdC1mb3JtLWZpZWxkIGNsYXNzPVwiZmxleFwiPlxyXG4gICAgICA8bWF0LWxhYmVsPnt7J0ZpbHRlcnMnfHRyYW5zbGF0ZX19PC9tYXQtbGFiZWw+XHJcbiAgICAgIDxtYXQtc2VsZWN0IGZvcm1Db250cm9sTmFtZT1cImZpbHRlcnNcIiBtdWx0aXBsZT5cclxuICAgICAgICBAZm9yIChhIG9mIGN1YmU/LmF4ZXM7IHRyYWNrIGEpIHtcclxuICAgICAgICBAaWYgKGZvcm0uY29udHJvbHMueEF4aXMudmFsdWUgIT09IGEubmFtZSAmJiBmb3JtLmNvbnRyb2xzLnNlcmllcy52YWx1ZSAhPT0gYS5uYW1lKSB7XHJcbiAgICAgICAgPG1hdC1vcHRpb24gW3ZhbHVlXT1cImEubmFtZVwiPnt7YS50aXRsZSB9fTwvbWF0LW9wdGlvbj5cclxuICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgICA8L21hdC1zZWxlY3Q+XHJcbiAgICA8L21hdC1mb3JtLWZpZWxkPlxyXG4gICAgPG1hdC1mb3JtLWZpZWxkIGNsYXNzPVwiZmxleFwiPlxyXG4gICAgICA8bWF0LWxhYmVsPnt7J0FnZ3JlZ2F0ZSd8dHJhbnNsYXRlfX08L21hdC1sYWJlbD5cclxuICAgICAgPG1hdC1zZWxlY3QgZm9ybUNvbnRyb2xOYW1lPVwiYWdncmVnYXRlXCIgbXVsdGlwbGU+XHJcbiAgICAgICAgQGZvciAoYSBvZiBjdWJlPy5heGVzOyB0cmFjayBhKSB7XHJcbiAgICAgICAgQGlmIChmb3JtLmNvbnRyb2xzLnhBeGlzLnZhbHVlICE9PSBhLm5hbWUgJiYgZm9ybS5jb250cm9scy5zZXJpZXMudmFsdWUgIT09IGEubmFtZSAmJiAoIWZvcm0uY29udHJvbHMuZmlsdGVycy52YWx1ZSB8fCBmb3JtLmNvbnRyb2xzLmZpbHRlcnMudmFsdWUuaW5kZXhPZihhLm5hbWUpIDwgMCkpIHtcclxuICAgICAgICA8bWF0LW9wdGlvbiBbdmFsdWVdPVwiYS5uYW1lXCI+e3thLnRpdGxlIH19PC9tYXQtb3B0aW9uPlxyXG4gICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICAgIDwvbWF0LXNlbGVjdD5cclxuICAgICAgPG1hdC1oaW50PjwvbWF0LWhpbnQ+XHJcbiAgICA8L21hdC1mb3JtLWZpZWxkPlxyXG4gIDwvZGl2PlxyXG4gIDxoMiBjbGFzcz1cIm1hdC1oMiByb3dcIj5cclxuICAgIHt7J1N1bW1hcnknfHRyYW5zbGF0ZX19XHJcbiAgICA8c3BhbiBjbGFzcz1cImRpdmlkZXJcIj48L3NwYW4+XHJcbiAgICA8YnV0dG9uIG1hdC1pY29uLWJ1dHRvbiAoY2xpY2spPVwiYWRkKGZvcm0uY29udHJvbHMuc3VtLCBuZXdTdW0oKSwgJ1N1bW1hcnknLCBzdW1mb3JtKVwiIFtiaXpkb2NUb29sdGlwXT1cIidBZGQnfHRyYW5zbGF0ZVwiIHR5cGU9XCJidXR0b25cIj48bWF0LWljb24+YWRkX2NpcmNsZV9vdXRsaW5lPC9tYXQtaWNvbj48L2J1dHRvbj5cclxuICA8L2gyPlxyXG4gIDx0YWJsZSBjbGFzcz1cIm1hdC1tZGMtdGFibGVcIiBmb3JtQXJyYXlOYW1lPVwic3VtXCIgY2RrRHJvcExpc3QgKGNka0Ryb3BMaXN0RHJvcHBlZCk9XCJkcm9wKCRldmVudCwgZm9ybS5jb250cm9scy5zdW0pXCI+XHJcbiAgICBAZm9yIChzIG9mIGZvcm0uY29udHJvbHMuc3VtLmNvbnRyb2xzOyB0cmFjayBzOyBsZXQgaW5kZXggPSAkaW5kZXgpIHtcclxuICAgIDx0ciBjbGFzcz1cIm1hdC1tZGMtcm93XCIgW2Zvcm1Hcm91cF09XCJzXCIgY2RrRHJhZz5cclxuICAgICAgPHRkIGNsYXNzPVwibWF0LW1kYy1jZWxsXCI+XHJcbiAgICAgICAgPG1hdC1pY29uIGNka0RyYWdIYW5kbGU+ZHJhZ19pbmRpY2F0b3I8L21hdC1pY29uPlxyXG4gICAgICA8L3RkPlxyXG4gICAgICA8dGQgY2xhc3M9XCJtYXQtbWRjLWNlbGxcIiBzdHlsZT1cIndpZHRoOiAxMDAlXCI+e3tzLmNvbnRyb2xzLnRpdGxlLnZhbHVlfX08L3RkPlxyXG4gICAgICA8dGQgY2xhc3M9XCJtYXQtbWRjLWNlbGxcIiBzdHlsZT1cIndoaXRlLXNwYWNlOiBwcmU7XCI+XHJcbiAgICAgICAgPGJ1dHRvbiBtYXQtaWNvbi1idXR0b24gKGNsaWNrKT1cImVkaXQocywgJ1N1bW1hcnknLCBzdW1mb3JtKVwiIFtiaXpkb2NUb29sdGlwXT1cIidFZGl0J3x0cmFuc2xhdGVcIiB0eXBlPVwiYnV0dG9uXCI+PG1hdC1pY29uPmVkaXQ8L21hdC1pY29uPjwvYnV0dG9uPlxyXG4gICAgICAgIDxidXR0b24gbWF0LWljb24tYnV0dG9uIChjbGljayk9XCJmb3JtLmNvbnRyb2xzLnN1bS5yZW1vdmVBdChpbmRleClcIiBbYml6ZG9jVG9vbHRpcF09XCInUmVtb3ZlJ3x0cmFuc2xhdGVcIiB0eXBlPVwiYnV0dG9uXCI+PG1hdC1pY29uPmRlbGV0ZTwvbWF0LWljb24+PC9idXR0b24+XHJcbiAgICAgIDwvdGQ+XHJcbiAgICA8L3RyPlxyXG4gICAgfVxyXG4gIDwvdGFibGU+XHJcbjwvbmctY29udGFpbmVyPlxyXG4gIH1cclxufVxyXG48bmctdGVtcGxhdGUgI3N1bWZvcm0gbGV0LWZvcm09XCJmb3JtXCI+XHJcbiAgPG5nLWNvbnRhaW5lciBbZm9ybUdyb3VwXT1cImZvcm1cIj5cclxuICAgIDxtYXQtZm9ybS1maWVsZCBjbGFzcz1cImZsZXhcIj5cclxuICAgICAgPG1hdC1sYWJlbD57eydUaXRsZSd8dHJhbnNsYXRlfX08L21hdC1sYWJlbD5cclxuICAgICAgPGlucHV0IG1hdElucHV0IGZvcm1Db250cm9sTmFtZT1cInRpdGxlXCIgcmVxdWlyZWQgLz5cclxuICAgIDwvbWF0LWZvcm0tZmllbGQ+XHJcbiAgICA8bWF0LXJhZGlvLWdyb3VwIGZvcm1Db250cm9sTmFtZT1cImF4aXNcIj5cclxuICAgICAgPG1hdC1yYWRpby1idXR0b24gdmFsdWU9XCJYQXhpc1wiPnt7J1hBeGlzJ3x0cmFuc2xhdGV9fTwvbWF0LXJhZGlvLWJ1dHRvbj5cclxuICAgICAgPG1hdC1yYWRpby1idXR0b24gdmFsdWU9XCJTZXJpZXNcIj57eydTZXJpZXMnfHRyYW5zbGF0ZX19PC9tYXQtcmFkaW8tYnV0dG9uPlxyXG4gICAgPC9tYXQtcmFkaW8tZ3JvdXA+XHJcbiAgICA8bWF0LWZvcm0tZmllbGQgY2xhc3M9XCJmbGV4XCI+XHJcbiAgICAgIDxtYXQtbGFiZWw+e3snQ2FsY3VsYXRlJ3x0cmFuc2xhdGV9fTwvbWF0LWxhYmVsPlxyXG4gICAgICA8bWF0LXNlbGVjdCBmb3JtQ29udHJvbE5hbWU9XCJjYWxjdWxhdGVcIj5cclxuICAgICAgICA8bWF0LW9wdGlvbj57eydOb25lJ3x0cmFuc2xhdGV9fTwvbWF0LW9wdGlvbj5cclxuICAgICAgICA8bWF0LW9wdGlvbiB2YWx1ZT1cIlF1YXJ0ZXJcIj57eydRdWFydGVyJ3x0cmFuc2xhdGV9fTwvbWF0LW9wdGlvbj5cclxuICAgICAgICA8bWF0LW9wdGlvbiB2YWx1ZT1cIlllYXJcIj57eydZZWFyJ3x0cmFuc2xhdGV9fTwvbWF0LW9wdGlvbj5cclxuICAgICAgICA8bWF0LW9wdGlvbiB2YWx1ZT1cIk1vbnRoXCI+e3snTW9udGgnfHRyYW5zbGF0ZX19PC9tYXQtb3B0aW9uPlxyXG4gICAgICAgIDxtYXQtb3B0aW9uIHZhbHVlPVwiU3VtXCI+e3snU3VtJ3x0cmFuc2xhdGV9fTwvbWF0LW9wdGlvbj5cclxuICAgICAgPC9tYXQtc2VsZWN0PlxyXG4gICAgPC9tYXQtZm9ybS1maWVsZD5cclxuICAgIDxkaXYgY2xhc3M9XCJyb3dcIj5cclxuICAgICAgPG1hdC1mb3JtLWZpZWxkIGNsYXNzPVwiZmxleFwiPlxyXG4gICAgICAgIDxtYXQtbGFiZWw+e3snVmFsdWUnfHRyYW5zbGF0ZX19PC9tYXQtbGFiZWw+XHJcbiAgICAgICAgPGlucHV0IG1hdElucHV0IGZvcm1Db250cm9sTmFtZT1cInZhbHVlXCIgLz5cclxuICAgICAgPC9tYXQtZm9ybS1maWVsZD5cclxuICAgICAgPG1hdC1mb3JtLWZpZWxkIGNsYXNzPVwiZmxleFwiPlxyXG4gICAgICAgIDxtYXQtbGFiZWw+e3snRm9ybWF0J3x0cmFuc2xhdGV9fTwvbWF0LWxhYmVsPlxyXG4gICAgICAgIDxtYXQtc2VsZWN0IGZvcm1Db250cm9sTmFtZT1cImZvcm1hdFwiPlxyXG4gICAgICAgICAgPG1hdC1vcHRpb24gdmFsdWU9XCJDdXJyZW5jeVwiPnt7J0N1cnJlbmN5J3x0cmFuc2xhdGV9fTwvbWF0LW9wdGlvbj5cclxuICAgICAgICAgIDxtYXQtb3B0aW9uIHZhbHVlPVwiTnVtYmVyXCI+e3snTnVtZXJpYyd8dHJhbnNsYXRlfX08L21hdC1vcHRpb24+XHJcbiAgICAgICAgICA8bWF0LW9wdGlvbiB2YWx1ZT1cIlBlcmNlbnRcIj57eydQZXJjZW50J3x0cmFuc2xhdGV9fTwvbWF0LW9wdGlvbj5cclxuICAgICAgICA8L21hdC1zZWxlY3Q+XHJcbiAgICAgIDwvbWF0LWZvcm0tZmllbGQ+XHJcbiAgICA8L2Rpdj5cclxuICA8L25nLWNvbnRhaW5lcj5cclxuPC9uZy10ZW1wbGF0ZT5cclxuIl19
@@ -8,11 +8,11 @@ export class NodeDesignerComponent extends DesignerTypeElementComponent {
8
8
  super(...arguments);
9
9
  this.form = this._fb.group({});
10
10
  }
11
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.3", ngImport: i0, type: NodeDesignerComponent, deps: null, target: i0.ɵɵFactoryTarget.Component }); }
12
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.3", type: NodeDesignerComponent, selector: "bizdoc-node-designer", usesInheritance: true, ngImport: i0, template: "<bizdoc-designer-element [form]=\"form\">\r\n <ng-template bizdocEditContent>\r\n <ng-container [formGroup]=\"form\">\r\n </ng-container>\r\n </ng-template>\r\n</bizdoc-designer-element>\r\n", dependencies: [{ kind: "directive", type: i1.NgControlStatusGroup, selector: "[formGroupName],[formArrayName],[ngModelGroup],[formGroup],form:not([ngNoForm]),[ngForm]" }, { kind: "directive", type: i1.FormGroupDirective, selector: "[formGroup]", inputs: ["formGroup"], outputs: ["ngSubmit"], exportAs: ["ngForm"] }, { kind: "directive", type: i2.EditContentDirective, selector: "[bizdocEditContent]" }, { kind: "component", type: i2.DesignerItemComponent, selector: "bizdoc-designer-element", inputs: ["privileges", "icon", "form", "context"], outputs: ["save", "continue"] }] }); }
11
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.4", ngImport: i0, type: NodeDesignerComponent, deps: null, target: i0.ɵɵFactoryTarget.Component }); }
12
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.4", type: NodeDesignerComponent, selector: "bizdoc-node-designer", usesInheritance: true, ngImport: i0, template: "<bizdoc-designer-element [form]=\"form\">\r\n <ng-template bizdocEditContent>\r\n <ng-container [formGroup]=\"form\">\r\n </ng-container>\r\n </ng-template>\r\n</bizdoc-designer-element>\r\n", dependencies: [{ kind: "directive", type: i1.NgControlStatusGroup, selector: "[formGroupName],[formArrayName],[ngModelGroup],[formGroup],form:not([ngNoForm]),[ngForm]" }, { kind: "directive", type: i1.FormGroupDirective, selector: "[formGroup]", inputs: ["formGroup"], outputs: ["ngSubmit"], exportAs: ["ngForm"] }, { kind: "directive", type: i2.EditContentDirective, selector: "[bizdocEditContent]" }, { kind: "component", type: i2.DesignerItemComponent, selector: "bizdoc-designer-element", inputs: ["privileges", "icon", "form", "context"], outputs: ["save", "continue"] }] }); }
13
13
  }
14
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.3", ngImport: i0, type: NodeDesignerComponent, decorators: [{
14
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.4", ngImport: i0, type: NodeDesignerComponent, decorators: [{
15
15
  type: Component,
16
16
  args: [{ selector: 'bizdoc-node-designer', template: "<bizdoc-designer-element [form]=\"form\">\r\n <ng-template bizdocEditContent>\r\n <ng-container [formGroup]=\"form\">\r\n </ng-container>\r\n </ng-template>\r\n</bizdoc-designer-element>\r\n" }]
17
17
  }] });
18
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibm9kZS5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJyYXJpZXMvY29yZS9zcmMvbGliL2FkbWluL2FyY2hpdGVjdHVyZS9lbGVtZW50cy9ub2RlLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uLy4uL2xpYnJhcmllcy9jb3JlL3NyYy9saWIvYWRtaW4vYXJjaGl0ZWN0dXJlL2VsZW1lbnRzL25vZGUuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFNBQVMsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUMxQyxPQUFPLEVBQUUsNEJBQTRCLEVBQUUsTUFBTSxrQkFBa0IsQ0FBQzs7OztBQU1oRSxNQUFNLE9BQU8scUJBQXNCLFNBQVEsNEJBQTRCO0lBSnZFOztRQUtFLFNBQUksR0FBRyxJQUFJLENBQUMsR0FBRyxDQUFDLEtBQUssQ0FBQyxFQUNyQixDQUFDLENBQUM7S0FDSjs4R0FIWSxxQkFBcUI7a0dBQXJCLHFCQUFxQixtRkNQbEMsd01BTUE7OzJGRENhLHFCQUFxQjtrQkFKakMsU0FBUzsrQkFDRSxzQkFBc0IiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDb21wb25lbnQgfSBmcm9tIFwiQGFuZ3VsYXIvY29yZVwiO1xyXG5pbXBvcnQgeyBEZXNpZ25lclR5cGVFbGVtZW50Q29tcG9uZW50IH0gZnJvbSBcIi4uL2Rlc2lnbmVyLmJhc2VcIjtcclxuXHJcbkBDb21wb25lbnQoe1xyXG4gIHNlbGVjdG9yOiAnYml6ZG9jLW5vZGUtZGVzaWduZXInLFxyXG50ZW1wbGF0ZVVybDogJ25vZGUuY29tcG9uZW50Lmh0bWwnXHJcbn0pXHJcbmV4cG9ydCBjbGFzcyBOb2RlRGVzaWduZXJDb21wb25lbnQgZXh0ZW5kcyBEZXNpZ25lclR5cGVFbGVtZW50Q29tcG9uZW50IHtcclxuICBmb3JtID0gdGhpcy5fZmIuZ3JvdXAoe1xyXG4gIH0pO1xyXG59XHJcbiIsIjxiaXpkb2MtZGVzaWduZXItZWxlbWVudCBbZm9ybV09XCJmb3JtXCI+XHJcbiAgPG5nLXRlbXBsYXRlIGJpemRvY0VkaXRDb250ZW50PlxyXG4gICAgPG5nLWNvbnRhaW5lciBbZm9ybUdyb3VwXT1cImZvcm1cIj5cclxuICAgIDwvbmctY29udGFpbmVyPlxyXG4gIDwvbmctdGVtcGxhdGU+XHJcbjwvYml6ZG9jLWRlc2lnbmVyLWVsZW1lbnQ+XHJcbiJdfQ==
18
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibm9kZS5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9jb3JlL3NyYy9saWIvYWRtaW4vYXJjaGl0ZWN0dXJlL2VsZW1lbnRzL25vZGUuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvY29yZS9zcmMvbGliL2FkbWluL2FyY2hpdGVjdHVyZS9lbGVtZW50cy9ub2RlLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxTQUFTLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDMUMsT0FBTyxFQUFFLDRCQUE0QixFQUFFLE1BQU0sa0JBQWtCLENBQUM7Ozs7QUFNaEUsTUFBTSxPQUFPLHFCQUFzQixTQUFRLDRCQUE0QjtJQUp2RTs7UUFLRSxTQUFJLEdBQUcsSUFBSSxDQUFDLEdBQUcsQ0FBQyxLQUFLLENBQUMsRUFDckIsQ0FBQyxDQUFDO0tBQ0o7OEdBSFkscUJBQXFCO2tHQUFyQixxQkFBcUIsbUZDUGxDLHdNQU1BOzsyRkRDYSxxQkFBcUI7a0JBSmpDLFNBQVM7K0JBQ0Usc0JBQXNCIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29tcG9uZW50IH0gZnJvbSBcIkBhbmd1bGFyL2NvcmVcIjtcclxuaW1wb3J0IHsgRGVzaWduZXJUeXBlRWxlbWVudENvbXBvbmVudCB9IGZyb20gXCIuLi9kZXNpZ25lci5iYXNlXCI7XHJcblxyXG5AQ29tcG9uZW50KHtcclxuICBzZWxlY3RvcjogJ2JpemRvYy1ub2RlLWRlc2lnbmVyJyxcclxudGVtcGxhdGVVcmw6ICdub2RlLmNvbXBvbmVudC5odG1sJ1xyXG59KVxyXG5leHBvcnQgY2xhc3MgTm9kZURlc2lnbmVyQ29tcG9uZW50IGV4dGVuZHMgRGVzaWduZXJUeXBlRWxlbWVudENvbXBvbmVudCB7XHJcbiAgZm9ybSA9IHRoaXMuX2ZiLmdyb3VwKHtcclxuICB9KTtcclxufVxyXG4iLCI8Yml6ZG9jLWRlc2lnbmVyLWVsZW1lbnQgW2Zvcm1dPVwiZm9ybVwiPlxyXG4gIDxuZy10ZW1wbGF0ZSBiaXpkb2NFZGl0Q29udGVudD5cclxuICAgIDxuZy1jb250YWluZXIgW2Zvcm1Hcm91cF09XCJmb3JtXCI+XHJcbiAgICA8L25nLWNvbnRhaW5lcj5cclxuICA8L25nLXRlbXBsYXRlPlxyXG48L2JpemRvYy1kZXNpZ25lci1lbGVtZW50PlxyXG4iXX0=
@@ -24,15 +24,15 @@ let ParallelViewDesignComponent = class ParallelViewDesignComponent extends Desi
24
24
  scope: null
25
25
  });
26
26
  }
27
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.3", ngImport: i0, type: ParallelViewDesignComponent, deps: null, target: i0.ɵɵFactoryTarget.Component }); }
28
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "18.2.3", type: ParallelViewDesignComponent, selector: "ng-component", host: { classAttribute: "column" }, usesInheritance: true, ngImport: i0, template: "@if (mode !== 'widget') {\n<ng-container [formGroup]=\"form\">\n @if (cubes.length > 1) {\n <mat-form-field>\n <mat-label>{{'Cube'|translate}}</mat-label>\n <mat-select required formControlName=\"cube\" (selectionChange)=\"cubeSelected($event)\">\n @for (c of cubes; track c) {\n <mat-option [value]=\"c.name\">{{c.title|localizedString}}</mat-option>\n }\n </mat-select>\n </mat-form-field>\n }\n <mat-form-field>\n <mat-label>{{'XAxis'|translate}}</mat-label>\n <mat-select formControlName=\"xAxis\" required multiple>\n @for (a of cube?.axes; track a) {\n <mat-option [value]=\"a.name\">{{a.title }}</mat-option>\n }\n </mat-select>\n @if (form.controls.xAxis.hasError('required')) {\n <mat-error [innerHTML]=\"'RequiredErr'|translate:('XAxis'|translate)\"></mat-error>\n }\n </mat-form-field>\n <mat-form-field>\n <mat-label>{{'Series'|translate}}</mat-label>\n <mat-select formControlName=\"series\" required multiple>\n @for (a of cube?.axes; track a) {\n @if (form.controls.xAxis.value?.indexOf(a.name) < 0) {\n <mat-option [value]=\"a.name\">{{a.title }}</mat-option>\n }\n }\n </mat-select>\n @if (form.controls.series.hasError('required')) {\n <mat-error [innerHTML]=\"'RequiredErr'|translate:('Series'|translate)\"></mat-error>\n }\n </mat-form-field>\n @if (cube?.indices?.length) {\n <mat-form-field>\n <mat-label>{{'Indices'|translate}}</mat-label>\n <mat-select formControlName=\"indices\" multiple>\n @for (x of cube.indices; track x) {\n <mat-option [value]=\"x.name\">{{x.title || x.name}}</mat-option>\n }\n </mat-select>\n </mat-form-field>\n }\n <mat-form-field>\n <mat-label>{{'ChartType'|translate}}</mat-label>\n <mat-select formControlName=\"chartType\">\n <mat-option value=\"Pie\">{{'Pie'|translate}}</mat-option>\n <mat-option value=\"Column\">{{'Column'|translate}}</mat-option>\n <mat-option value=\"Line\">{{'Line'|translate}}</mat-option>\n <mat-option value=\"Area\">{{'Area'|translate}}</mat-option>\n </mat-select>\n </mat-form-field>\n <mat-form-field>\n <mat-label>{{'Aggregate'|translate}}</mat-label>\n <mat-select formControlName=\"aggregate\" multiple>\n @for (a of cube?.axes; track a) {\n @if (form.controls.xAxis.value!==a.name && form.controls.series.value !== a.name && (!form.controls.filters.value || form.controls.filters.value?.indexOf(a.name) < 0)) {\n <mat-option [value]=\"a.name\">{{a.title }}</mat-option>\n }\n }\n </mat-select>\n </mat-form-field>\n</ng-container>\n<!--@if(options.xAxis){<div>\n <bizdoc-cube-parallel [cube]=\"options.cube\"\n [xAxis]=\"options.xAxis\"\n [series]=\"options.series\"\n [indices]=\"options.indices\"\n [filters]=\"options.filters\"\n [chartType]=\"options.chartType\"\n [scope]=\"options.scope\"\n [size]=\"250\"></bizdoc-cube-parallel>\n</div>}-->\n}\n", dependencies: [{ 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.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: i2.MatOption, selector: "mat-option", inputs: ["value", "id", "disabled"], outputs: ["onSelectionChange"], exportAs: ["matOption"] }, { kind: "component", type: i3.MatFormField, selector: "mat-form-field", inputs: ["hideRequiredMarker", "color", "floatLabel", "appearance", "subscriptSizing", "hintLabel"], exportAs: ["matFormField"] }, { kind: "directive", type: i3.MatLabel, selector: "mat-label" }, { kind: "directive", type: i3.MatError, selector: "mat-error, [matError]", inputs: ["id"] }, { kind: "component", type: i4.MatSelect, selector: "mat-select", inputs: ["aria-describedby", "panelClass", "disabled", "disableRipple", "tabIndex", "hideSingleSelectionIndicator", "placeholder", "required", "multiple", "disableOptionCentering", "compareWith", "value", "aria-label", "aria-labelledby", "errorStateMatcher", "typeaheadDebounceInterval", "sortComparator", "id", "panelWidth"], outputs: ["openedChange", "opened", "closed", "selectionChange", "valueChange"], exportAs: ["matSelect"] }, { kind: "pipe", type: i5.LocalizedStringPipe, name: "localizedString" }, { kind: "pipe", type: i6.TranslatePipe, name: "translate" }] }); }
27
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.4", ngImport: i0, type: ParallelViewDesignComponent, deps: null, target: i0.ɵɵFactoryTarget.Component }); }
28
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "18.2.4", type: ParallelViewDesignComponent, selector: "ng-component", host: { classAttribute: "column" }, usesInheritance: true, ngImport: i0, template: "@if (mode !== 'widget') {\r\n<ng-container [formGroup]=\"form\">\r\n @if (cubes.length > 1) {\r\n <mat-form-field>\r\n <mat-label>{{'Cube'|translate}}</mat-label>\r\n <mat-select required formControlName=\"cube\" (selectionChange)=\"cubeSelected($event)\">\r\n @for (c of cubes; track c) {\r\n <mat-option [value]=\"c.name\">{{c.title|localizedString}}</mat-option>\r\n }\r\n </mat-select>\r\n </mat-form-field>\r\n }\r\n <mat-form-field>\r\n <mat-label>{{'XAxis'|translate}}</mat-label>\r\n <mat-select formControlName=\"xAxis\" required multiple>\r\n @for (a of cube?.axes; track a) {\r\n <mat-option [value]=\"a.name\">{{a.title }}</mat-option>\r\n }\r\n </mat-select>\r\n @if (form.controls.xAxis.hasError('required')) {\r\n <mat-error [innerHTML]=\"'RequiredErr'|translate:('XAxis'|translate)\"></mat-error>\r\n }\r\n </mat-form-field>\r\n <mat-form-field>\r\n <mat-label>{{'Series'|translate}}</mat-label>\r\n <mat-select formControlName=\"series\" required multiple>\r\n @for (a of cube?.axes; track a) {\r\n @if (form.controls.xAxis.value?.indexOf(a.name) < 0) {\r\n <mat-option [value]=\"a.name\">{{a.title }}</mat-option>\r\n }\r\n }\r\n </mat-select>\r\n @if (form.controls.series.hasError('required')) {\r\n <mat-error [innerHTML]=\"'RequiredErr'|translate:('Series'|translate)\"></mat-error>\r\n }\r\n </mat-form-field>\r\n @if (cube?.indices?.length) {\r\n <mat-form-field>\r\n <mat-label>{{'Indices'|translate}}</mat-label>\r\n <mat-select formControlName=\"indices\" multiple>\r\n @for (x of cube.indices; track x) {\r\n <mat-option [value]=\"x.name\">{{x.title || x.name}}</mat-option>\r\n }\r\n </mat-select>\r\n </mat-form-field>\r\n }\r\n <mat-form-field>\r\n <mat-label>{{'ChartType'|translate}}</mat-label>\r\n <mat-select formControlName=\"chartType\">\r\n <mat-option value=\"Pie\">{{'Pie'|translate}}</mat-option>\r\n <mat-option value=\"Column\">{{'Column'|translate}}</mat-option>\r\n <mat-option value=\"Line\">{{'Line'|translate}}</mat-option>\r\n <mat-option value=\"Area\">{{'Area'|translate}}</mat-option>\r\n </mat-select>\r\n </mat-form-field>\r\n <mat-form-field>\r\n <mat-label>{{'Aggregate'|translate}}</mat-label>\r\n <mat-select formControlName=\"aggregate\" multiple>\r\n @for (a of cube?.axes; track a) {\r\n @if (form.controls.xAxis.value!==a.name && form.controls.series.value !== a.name && (!form.controls.filters.value || form.controls.filters.value?.indexOf(a.name) < 0)) {\r\n <mat-option [value]=\"a.name\">{{a.title }}</mat-option>\r\n }\r\n }\r\n </mat-select>\r\n </mat-form-field>\r\n</ng-container>\r\n<!--@if(options.xAxis){<div>\r\n <bizdoc-cube-parallel [cube]=\"options.cube\"\r\n [xAxis]=\"options.xAxis\"\r\n [series]=\"options.series\"\r\n [indices]=\"options.indices\"\r\n [filters]=\"options.filters\"\r\n [chartType]=\"options.chartType\"\r\n [scope]=\"options.scope\"\r\n [size]=\"250\"></bizdoc-cube-parallel>\r\n</div>}-->\r\n}\r\n", dependencies: [{ 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.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: i2.MatOption, selector: "mat-option", inputs: ["value", "id", "disabled"], outputs: ["onSelectionChange"], exportAs: ["matOption"] }, { kind: "component", type: i3.MatFormField, selector: "mat-form-field", inputs: ["hideRequiredMarker", "color", "floatLabel", "appearance", "subscriptSizing", "hintLabel"], exportAs: ["matFormField"] }, { kind: "directive", type: i3.MatLabel, selector: "mat-label" }, { kind: "directive", type: i3.MatError, selector: "mat-error, [matError]", inputs: ["id"] }, { kind: "component", type: i4.MatSelect, selector: "mat-select", inputs: ["aria-describedby", "panelClass", "disabled", "disableRipple", "tabIndex", "hideSingleSelectionIndicator", "placeholder", "required", "multiple", "disableOptionCentering", "compareWith", "value", "aria-label", "aria-labelledby", "errorStateMatcher", "typeaheadDebounceInterval", "sortComparator", "id", "panelWidth"], outputs: ["openedChange", "opened", "closed", "selectionChange", "valueChange"], exportAs: ["matSelect"] }, { kind: "pipe", type: i5.LocalizedStringPipe, name: "localizedString" }, { kind: "pipe", type: i6.TranslatePipe, name: "translate" }] }); }
29
29
  };
30
30
  ParallelViewDesignComponent = __decorate([
31
31
  BizDoc({ selector: 'parallel-view-designer' })
32
32
  ], ParallelViewDesignComponent);
33
33
  export { ParallelViewDesignComponent };
34
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.3", ngImport: i0, type: ParallelViewDesignComponent, decorators: [{
34
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.4", ngImport: i0, type: ParallelViewDesignComponent, decorators: [{
35
35
  type: Component,
36
- args: [{ host: { class: 'column' }, template: "@if (mode !== 'widget') {\n<ng-container [formGroup]=\"form\">\n @if (cubes.length > 1) {\n <mat-form-field>\n <mat-label>{{'Cube'|translate}}</mat-label>\n <mat-select required formControlName=\"cube\" (selectionChange)=\"cubeSelected($event)\">\n @for (c of cubes; track c) {\n <mat-option [value]=\"c.name\">{{c.title|localizedString}}</mat-option>\n }\n </mat-select>\n </mat-form-field>\n }\n <mat-form-field>\n <mat-label>{{'XAxis'|translate}}</mat-label>\n <mat-select formControlName=\"xAxis\" required multiple>\n @for (a of cube?.axes; track a) {\n <mat-option [value]=\"a.name\">{{a.title }}</mat-option>\n }\n </mat-select>\n @if (form.controls.xAxis.hasError('required')) {\n <mat-error [innerHTML]=\"'RequiredErr'|translate:('XAxis'|translate)\"></mat-error>\n }\n </mat-form-field>\n <mat-form-field>\n <mat-label>{{'Series'|translate}}</mat-label>\n <mat-select formControlName=\"series\" required multiple>\n @for (a of cube?.axes; track a) {\n @if (form.controls.xAxis.value?.indexOf(a.name) < 0) {\n <mat-option [value]=\"a.name\">{{a.title }}</mat-option>\n }\n }\n </mat-select>\n @if (form.controls.series.hasError('required')) {\n <mat-error [innerHTML]=\"'RequiredErr'|translate:('Series'|translate)\"></mat-error>\n }\n </mat-form-field>\n @if (cube?.indices?.length) {\n <mat-form-field>\n <mat-label>{{'Indices'|translate}}</mat-label>\n <mat-select formControlName=\"indices\" multiple>\n @for (x of cube.indices; track x) {\n <mat-option [value]=\"x.name\">{{x.title || x.name}}</mat-option>\n }\n </mat-select>\n </mat-form-field>\n }\n <mat-form-field>\n <mat-label>{{'ChartType'|translate}}</mat-label>\n <mat-select formControlName=\"chartType\">\n <mat-option value=\"Pie\">{{'Pie'|translate}}</mat-option>\n <mat-option value=\"Column\">{{'Column'|translate}}</mat-option>\n <mat-option value=\"Line\">{{'Line'|translate}}</mat-option>\n <mat-option value=\"Area\">{{'Area'|translate}}</mat-option>\n </mat-select>\n </mat-form-field>\n <mat-form-field>\n <mat-label>{{'Aggregate'|translate}}</mat-label>\n <mat-select formControlName=\"aggregate\" multiple>\n @for (a of cube?.axes; track a) {\n @if (form.controls.xAxis.value!==a.name && form.controls.series.value !== a.name && (!form.controls.filters.value || form.controls.filters.value?.indexOf(a.name) < 0)) {\n <mat-option [value]=\"a.name\">{{a.title }}</mat-option>\n }\n }\n </mat-select>\n </mat-form-field>\n</ng-container>\n<!--@if(options.xAxis){<div>\n <bizdoc-cube-parallel [cube]=\"options.cube\"\n [xAxis]=\"options.xAxis\"\n [series]=\"options.series\"\n [indices]=\"options.indices\"\n [filters]=\"options.filters\"\n [chartType]=\"options.chartType\"\n [scope]=\"options.scope\"\n [size]=\"250\"></bizdoc-cube-parallel>\n</div>}-->\n}\n" }]
36
+ args: [{ host: { class: 'column' }, template: "@if (mode !== 'widget') {\r\n<ng-container [formGroup]=\"form\">\r\n @if (cubes.length > 1) {\r\n <mat-form-field>\r\n <mat-label>{{'Cube'|translate}}</mat-label>\r\n <mat-select required formControlName=\"cube\" (selectionChange)=\"cubeSelected($event)\">\r\n @for (c of cubes; track c) {\r\n <mat-option [value]=\"c.name\">{{c.title|localizedString}}</mat-option>\r\n }\r\n </mat-select>\r\n </mat-form-field>\r\n }\r\n <mat-form-field>\r\n <mat-label>{{'XAxis'|translate}}</mat-label>\r\n <mat-select formControlName=\"xAxis\" required multiple>\r\n @for (a of cube?.axes; track a) {\r\n <mat-option [value]=\"a.name\">{{a.title }}</mat-option>\r\n }\r\n </mat-select>\r\n @if (form.controls.xAxis.hasError('required')) {\r\n <mat-error [innerHTML]=\"'RequiredErr'|translate:('XAxis'|translate)\"></mat-error>\r\n }\r\n </mat-form-field>\r\n <mat-form-field>\r\n <mat-label>{{'Series'|translate}}</mat-label>\r\n <mat-select formControlName=\"series\" required multiple>\r\n @for (a of cube?.axes; track a) {\r\n @if (form.controls.xAxis.value?.indexOf(a.name) < 0) {\r\n <mat-option [value]=\"a.name\">{{a.title }}</mat-option>\r\n }\r\n }\r\n </mat-select>\r\n @if (form.controls.series.hasError('required')) {\r\n <mat-error [innerHTML]=\"'RequiredErr'|translate:('Series'|translate)\"></mat-error>\r\n }\r\n </mat-form-field>\r\n @if (cube?.indices?.length) {\r\n <mat-form-field>\r\n <mat-label>{{'Indices'|translate}}</mat-label>\r\n <mat-select formControlName=\"indices\" multiple>\r\n @for (x of cube.indices; track x) {\r\n <mat-option [value]=\"x.name\">{{x.title || x.name}}</mat-option>\r\n }\r\n </mat-select>\r\n </mat-form-field>\r\n }\r\n <mat-form-field>\r\n <mat-label>{{'ChartType'|translate}}</mat-label>\r\n <mat-select formControlName=\"chartType\">\r\n <mat-option value=\"Pie\">{{'Pie'|translate}}</mat-option>\r\n <mat-option value=\"Column\">{{'Column'|translate}}</mat-option>\r\n <mat-option value=\"Line\">{{'Line'|translate}}</mat-option>\r\n <mat-option value=\"Area\">{{'Area'|translate}}</mat-option>\r\n </mat-select>\r\n </mat-form-field>\r\n <mat-form-field>\r\n <mat-label>{{'Aggregate'|translate}}</mat-label>\r\n <mat-select formControlName=\"aggregate\" multiple>\r\n @for (a of cube?.axes; track a) {\r\n @if (form.controls.xAxis.value!==a.name && form.controls.series.value !== a.name && (!form.controls.filters.value || form.controls.filters.value?.indexOf(a.name) < 0)) {\r\n <mat-option [value]=\"a.name\">{{a.title }}</mat-option>\r\n }\r\n }\r\n </mat-select>\r\n </mat-form-field>\r\n</ng-container>\r\n<!--@if(options.xAxis){<div>\r\n <bizdoc-cube-parallel [cube]=\"options.cube\"\r\n [xAxis]=\"options.xAxis\"\r\n [series]=\"options.series\"\r\n [indices]=\"options.indices\"\r\n [filters]=\"options.filters\"\r\n [chartType]=\"options.chartType\"\r\n [scope]=\"options.scope\"\r\n [size]=\"250\"></bizdoc-cube-parallel>\r\n</div>}-->\r\n}\r\n" }]
37
37
  }] });
38
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicGFyYWxsZWwtdmlldy5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJyYXJpZXMvY29yZS9zcmMvbGliL2FkbWluL2FyY2hpdGVjdHVyZS9lbGVtZW50cy9wYXJhbGxlbC12aWV3LmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uLy4uL2xpYnJhcmllcy9jb3JlL3NyYy9saWIvYWRtaW4vYXJjaGl0ZWN0dXJlL2VsZW1lbnRzL3BhcmFsbGVsLXZpZXcuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IjtBQUFBLE9BQU8sRUFBRSxTQUFTLEVBQVUsTUFBTSxlQUFlLENBQUM7QUFDbEQsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBQzVDLE9BQU8sRUFBRSxNQUFNLEVBQUUsTUFBTSwwQkFBMEIsQ0FBQztBQUVsRCxPQUFPLEVBQUUsNEJBQTRCLEVBQUUsTUFBTSxrQkFBa0IsQ0FBQzs7Ozs7Ozs7QUFPekQsSUFBTSwyQkFBMkIsR0FBakMsTUFBTSwyQkFBNEIsU0FBUSw0QkFBbUQ7SUFBN0Y7O1FBQ0ksU0FBSSxHQUFHLElBQUksQ0FBQyxHQUFHLENBQUMsS0FBSyxDQUFDO1lBQzdCLElBQUksRUFBRSxJQUFJO1lBQ1YsS0FBSyxFQUFFLElBQUksQ0FBQyxHQUFHLENBQUMsT0FBTyxDQUFXLElBQUksRUFBRSxVQUFVLENBQUMsUUFBUSxDQUFDO1lBQzVELE1BQU0sRUFBRSxJQUFJLENBQUMsR0FBRyxDQUFDLE9BQU8sQ0FBVyxJQUFJLEVBQUUsVUFBVSxDQUFDLFFBQVEsQ0FBQztZQUM3RCxPQUFPLEVBQUUsSUFBSSxDQUFDLEdBQUcsQ0FBQyxPQUFPLENBQVcsSUFBSSxDQUFDO1lBQ3pDLE9BQU8sRUFBRSxJQUFJLENBQUMsR0FBRyxDQUFDLE9BQU8sQ0FBVyxJQUFJLENBQUM7WUFDekMsU0FBUyxFQUFFLEtBQUs7WUFDaEIsU0FBUyxFQUFFLElBQUksQ0FBQyxHQUFHLENBQUMsT0FBTyxDQUFXLElBQUksQ0FBQztZQUMzQyxLQUFLLEVBQUUsSUFBSTtTQUNaLENBQUMsQ0FBQztLQUNKOzhHQVhZLDJCQUEyQjtrR0FBM0IsMkJBQTJCLCtHQ1h4Qyx5NUZBNkVBOztBRGxFYSwyQkFBMkI7SUFEdkMsTUFBTSxDQUFDLEVBQUUsUUFBUSxFQUFFLHdCQUF3QixFQUFFLENBQUM7R0FDbEMsMkJBQTJCLENBV3ZDOzsyRkFYWSwyQkFBMkI7a0JBTHZDLFNBQVM7MkJBRUYsRUFBRSxLQUFLLEVBQUUsUUFBUSxFQUFFIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29tcG9uZW50LCBPbkluaXQgfSBmcm9tIFwiQGFuZ3VsYXIvY29yZVwiO1xyXG5pbXBvcnQgeyBWYWxpZGF0b3JzIH0gZnJvbSBcIkBhbmd1bGFyL2Zvcm1zXCI7XHJcbmltcG9ydCB7IEJpekRvYyB9IGZyb20gXCIuLi8uLi8uLi9jb3JlL2RlY29yYXRvcnNcIjtcclxuaW1wb3J0IHsgUGFyYWxsZWxTZXR0aW5nc01vZGVsIH0gZnJvbSBcIi4uLy4uLy4uL3ZpZXdzL2N1YmUvcGFyYWxsZWwuY29tcG9uZW50XCI7XHJcbmltcG9ydCB7IERlc2lnbmVyQ3ViZUVsZW1lbnRDb21wb25lbnQgfSBmcm9tIFwiLi4vZGVzaWduZXIuYmFzZVwiO1xyXG5cclxuQENvbXBvbmVudCh7XHJcbiAgdGVtcGxhdGVVcmw6ICdwYXJhbGxlbC12aWV3LmNvbXBvbmVudC5odG1sJyxcclxuICBob3N0OiB7IGNsYXNzOiAnY29sdW1uJyB9XHJcbn0pXHJcbkBCaXpEb2MoeyBzZWxlY3RvcjogJ3BhcmFsbGVsLXZpZXctZGVzaWduZXInIH0pXHJcbmV4cG9ydCBjbGFzcyBQYXJhbGxlbFZpZXdEZXNpZ25Db21wb25lbnQgZXh0ZW5kcyBEZXNpZ25lckN1YmVFbGVtZW50Q29tcG9uZW50PFBhcmFsbGVsU2V0dGluZ3NNb2RlbD4gaW1wbGVtZW50cyBPbkluaXQge1xyXG4gIHJlYWRvbmx5IGZvcm0gPSB0aGlzLl9mYi5ncm91cCh7XHJcbiAgICBjdWJlOiBudWxsLFxyXG4gICAgeEF4aXM6IHRoaXMuX2ZiLmNvbnRyb2w8c3RyaW5nW10+KG51bGwsIFZhbGlkYXRvcnMucmVxdWlyZWQpLFxyXG4gICAgc2VyaWVzOiB0aGlzLl9mYi5jb250cm9sPHN0cmluZ1tdPihudWxsLCBWYWxpZGF0b3JzLnJlcXVpcmVkKSxcclxuICAgIGluZGljZXM6IHRoaXMuX2ZiLmNvbnRyb2w8c3RyaW5nW10+KG51bGwpLFxyXG4gICAgZmlsdGVyczogdGhpcy5fZmIuY29udHJvbDxzdHJpbmdbXT4obnVsbCksXHJcbiAgICBjaGFydFR5cGU6ICdQaWUnLFxyXG4gICAgYWdncmVnYXRlOiB0aGlzLl9mYi5jb250cm9sPHN0cmluZ1tdPihudWxsKSxcclxuICAgIHNjb3BlOiBudWxsXHJcbiAgfSk7XHJcbn1cclxuIiwiQGlmIChtb2RlICE9PSAnd2lkZ2V0Jykge1xuPG5nLWNvbnRhaW5lciBbZm9ybUdyb3VwXT1cImZvcm1cIj5cbiAgQGlmIChjdWJlcy5sZW5ndGggPiAxKSB7XG4gIDxtYXQtZm9ybS1maWVsZD5cbiAgICA8bWF0LWxhYmVsPnt7J0N1YmUnfHRyYW5zbGF0ZX19PC9tYXQtbGFiZWw+XG4gICAgPG1hdC1zZWxlY3QgcmVxdWlyZWQgZm9ybUNvbnRyb2xOYW1lPVwiY3ViZVwiIChzZWxlY3Rpb25DaGFuZ2UpPVwiY3ViZVNlbGVjdGVkKCRldmVudClcIj5cbiAgICAgIEBmb3IgKGMgb2YgY3ViZXM7IHRyYWNrIGMpIHtcbiAgICAgIDxtYXQtb3B0aW9uIFt2YWx1ZV09XCJjLm5hbWVcIj57e2MudGl0bGV8bG9jYWxpemVkU3RyaW5nfX08L21hdC1vcHRpb24+XG4gICAgICB9XG4gICAgPC9tYXQtc2VsZWN0PlxuICA8L21hdC1mb3JtLWZpZWxkPlxuICB9XG4gIDxtYXQtZm9ybS1maWVsZD5cbiAgICA8bWF0LWxhYmVsPnt7J1hBeGlzJ3x0cmFuc2xhdGV9fTwvbWF0LWxhYmVsPlxuICAgIDxtYXQtc2VsZWN0IGZvcm1Db250cm9sTmFtZT1cInhBeGlzXCIgcmVxdWlyZWQgbXVsdGlwbGU+XG4gICAgICBAZm9yIChhIG9mIGN1YmU/LmF4ZXM7IHRyYWNrIGEpIHtcbiAgICAgIDxtYXQtb3B0aW9uIFt2YWx1ZV09XCJhLm5hbWVcIj57e2EudGl0bGUgfX08L21hdC1vcHRpb24+XG4gICAgICB9XG4gICAgPC9tYXQtc2VsZWN0PlxuICAgIEBpZiAoZm9ybS5jb250cm9scy54QXhpcy5oYXNFcnJvcigncmVxdWlyZWQnKSkge1xuICAgIDxtYXQtZXJyb3IgW2lubmVySFRNTF09XCInUmVxdWlyZWRFcnInfHRyYW5zbGF0ZTooJ1hBeGlzJ3x0cmFuc2xhdGUpXCI+PC9tYXQtZXJyb3I+XG4gICAgfVxuICA8L21hdC1mb3JtLWZpZWxkPlxuICA8bWF0LWZvcm0tZmllbGQ+XG4gICAgPG1hdC1sYWJlbD57eydTZXJpZXMnfHRyYW5zbGF0ZX19PC9tYXQtbGFiZWw+XG4gICAgPG1hdC1zZWxlY3QgZm9ybUNvbnRyb2xOYW1lPVwic2VyaWVzXCIgcmVxdWlyZWQgbXVsdGlwbGU+XG4gICAgICBAZm9yIChhIG9mIGN1YmU/LmF4ZXM7IHRyYWNrIGEpIHtcbiAgICAgIEBpZiAoZm9ybS5jb250cm9scy54QXhpcy52YWx1ZT8uaW5kZXhPZihhLm5hbWUpIDwgMCkge1xuICAgICAgPG1hdC1vcHRpb24gW3ZhbHVlXT1cImEubmFtZVwiPnt7YS50aXRsZSB9fTwvbWF0LW9wdGlvbj5cbiAgICAgIH1cbiAgICAgIH1cbiAgICA8L21hdC1zZWxlY3Q+XG4gICAgQGlmIChmb3JtLmNvbnRyb2xzLnNlcmllcy5oYXNFcnJvcigncmVxdWlyZWQnKSkge1xuICAgIDxtYXQtZXJyb3IgW2lubmVySFRNTF09XCInUmVxdWlyZWRFcnInfHRyYW5zbGF0ZTooJ1Nlcmllcyd8dHJhbnNsYXRlKVwiPjwvbWF0LWVycm9yPlxuICAgIH1cbiAgPC9tYXQtZm9ybS1maWVsZD5cbiAgQGlmIChjdWJlPy5pbmRpY2VzPy5sZW5ndGgpIHtcbiAgPG1hdC1mb3JtLWZpZWxkPlxuICAgIDxtYXQtbGFiZWw+e3snSW5kaWNlcyd8dHJhbnNsYXRlfX08L21hdC1sYWJlbD5cbiAgICA8bWF0LXNlbGVjdCBmb3JtQ29udHJvbE5hbWU9XCJpbmRpY2VzXCIgbXVsdGlwbGU+XG4gICAgICBAZm9yICh4IG9mIGN1YmUuaW5kaWNlczsgdHJhY2sgeCkge1xuICAgICAgPG1hdC1vcHRpb24gW3ZhbHVlXT1cIngubmFtZVwiPnt7eC50aXRsZSB8fCB4Lm5hbWV9fTwvbWF0LW9wdGlvbj5cbiAgICAgIH1cbiAgICA8L21hdC1zZWxlY3Q+XG4gIDwvbWF0LWZvcm0tZmllbGQ+XG4gIH1cbiAgPG1hdC1mb3JtLWZpZWxkPlxuICAgIDxtYXQtbGFiZWw+e3snQ2hhcnRUeXBlJ3x0cmFuc2xhdGV9fTwvbWF0LWxhYmVsPlxuICAgIDxtYXQtc2VsZWN0IGZvcm1Db250cm9sTmFtZT1cImNoYXJ0VHlwZVwiPlxuICAgICAgPG1hdC1vcHRpb24gdmFsdWU9XCJQaWVcIj57eydQaWUnfHRyYW5zbGF0ZX19PC9tYXQtb3B0aW9uPlxuICAgICAgPG1hdC1vcHRpb24gdmFsdWU9XCJDb2x1bW5cIj57eydDb2x1bW4nfHRyYW5zbGF0ZX19PC9tYXQtb3B0aW9uPlxuICAgICAgPG1hdC1vcHRpb24gdmFsdWU9XCJMaW5lXCI+e3snTGluZSd8dHJhbnNsYXRlfX08L21hdC1vcHRpb24+XG4gICAgICA8bWF0LW9wdGlvbiB2YWx1ZT1cIkFyZWFcIj57eydBcmVhJ3x0cmFuc2xhdGV9fTwvbWF0LW9wdGlvbj5cbiAgICA8L21hdC1zZWxlY3Q+XG4gIDwvbWF0LWZvcm0tZmllbGQ+XG4gIDxtYXQtZm9ybS1maWVsZD5cbiAgICA8bWF0LWxhYmVsPnt7J0FnZ3JlZ2F0ZSd8dHJhbnNsYXRlfX08L21hdC1sYWJlbD5cbiAgICA8bWF0LXNlbGVjdCBmb3JtQ29udHJvbE5hbWU9XCJhZ2dyZWdhdGVcIiBtdWx0aXBsZT5cbiAgICAgIEBmb3IgKGEgb2YgY3ViZT8uYXhlczsgdHJhY2sgYSkge1xuICAgICAgQGlmIChmb3JtLmNvbnRyb2xzLnhBeGlzLnZhbHVlIT09YS5uYW1lICYmIGZvcm0uY29udHJvbHMuc2VyaWVzLnZhbHVlICE9PSBhLm5hbWUgJiYgKCFmb3JtLmNvbnRyb2xzLmZpbHRlcnMudmFsdWUgfHwgZm9ybS5jb250cm9scy5maWx0ZXJzLnZhbHVlPy5pbmRleE9mKGEubmFtZSkgPCAwKSkge1xuICAgICAgPG1hdC1vcHRpb24gW3ZhbHVlXT1cImEubmFtZVwiPnt7YS50aXRsZSB9fTwvbWF0LW9wdGlvbj5cbiAgICAgIH1cbiAgICAgIH1cbiAgICA8L21hdC1zZWxlY3Q+XG4gIDwvbWF0LWZvcm0tZmllbGQ+XG48L25nLWNvbnRhaW5lcj5cbjwhLS1AaWYob3B0aW9ucy54QXhpcyl7PGRpdj5cbiAgPGJpemRvYy1jdWJlLXBhcmFsbGVsICBbY3ViZV09XCJvcHRpb25zLmN1YmVcIlxuICAgIFt4QXhpc109XCJvcHRpb25zLnhBeGlzXCJcbiAgICBbc2VyaWVzXT1cIm9wdGlvbnMuc2VyaWVzXCJcbiAgICBbaW5kaWNlc109XCJvcHRpb25zLmluZGljZXNcIlxuICAgIFtmaWx0ZXJzXT1cIm9wdGlvbnMuZmlsdGVyc1wiXG4gICAgW2NoYXJ0VHlwZV09XCJvcHRpb25zLmNoYXJ0VHlwZVwiXG4gICAgW3Njb3BlXT1cIm9wdGlvbnMuc2NvcGVcIlxuICBbc2l6ZV09XCIyNTBcIj48L2JpemRvYy1jdWJlLXBhcmFsbGVsPlxuPC9kaXY+fS0tPlxufVxuIl19
38
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicGFyYWxsZWwtdmlldy5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9jb3JlL3NyYy9saWIvYWRtaW4vYXJjaGl0ZWN0dXJlL2VsZW1lbnRzL3BhcmFsbGVsLXZpZXcuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvY29yZS9zcmMvbGliL2FkbWluL2FyY2hpdGVjdHVyZS9lbGVtZW50cy9wYXJhbGxlbC12aWV3LmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7QUFBQSxPQUFPLEVBQUUsU0FBUyxFQUFVLE1BQU0sZUFBZSxDQUFDO0FBQ2xELE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUM1QyxPQUFPLEVBQUUsTUFBTSxFQUFFLE1BQU0sMEJBQTBCLENBQUM7QUFFbEQsT0FBTyxFQUFFLDRCQUE0QixFQUFFLE1BQU0sa0JBQWtCLENBQUM7Ozs7Ozs7O0FBT3pELElBQU0sMkJBQTJCLEdBQWpDLE1BQU0sMkJBQTRCLFNBQVEsNEJBQW1EO0lBQTdGOztRQUNJLFNBQUksR0FBRyxJQUFJLENBQUMsR0FBRyxDQUFDLEtBQUssQ0FBQztZQUM3QixJQUFJLEVBQUUsSUFBSTtZQUNWLEtBQUssRUFBRSxJQUFJLENBQUMsR0FBRyxDQUFDLE9BQU8sQ0FBa0IsSUFBSSxFQUFFLFVBQVUsQ0FBQyxRQUFRLENBQUM7WUFDbkUsTUFBTSxFQUFFLElBQUksQ0FBQyxHQUFHLENBQUMsT0FBTyxDQUFrQixJQUFJLEVBQUUsVUFBVSxDQUFDLFFBQVEsQ0FBQztZQUNwRSxPQUFPLEVBQUUsSUFBSSxDQUFDLEdBQUcsQ0FBQyxPQUFPLENBQWtCLElBQUksQ0FBQztZQUNoRCxPQUFPLEVBQUUsSUFBSSxDQUFDLEdBQUcsQ0FBQyxPQUFPLENBQWtCLElBQUksQ0FBQztZQUNoRCxTQUFTLEVBQUUsS0FBSztZQUNoQixTQUFTLEVBQUUsSUFBSSxDQUFDLEdBQUcsQ0FBQyxPQUFPLENBQWtCLElBQUksQ0FBQztZQUNsRCxLQUFLLEVBQUUsSUFBSTtTQUNaLENBQUMsQ0FBQztLQUNKOzhHQVhZLDJCQUEyQjtrR0FBM0IsMkJBQTJCLCtHQ1h4QyxtakdBNkVBOztBRGxFYSwyQkFBMkI7SUFEdkMsTUFBTSxDQUFDLEVBQUUsUUFBUSxFQUFFLHdCQUF3QixFQUFFLENBQUM7R0FDbEMsMkJBQTJCLENBV3ZDOzsyRkFYWSwyQkFBMkI7a0JBTHZDLFNBQVM7MkJBRUYsRUFBRSxLQUFLLEVBQUUsUUFBUSxFQUFFIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29tcG9uZW50LCBPbkluaXQgfSBmcm9tIFwiQGFuZ3VsYXIvY29yZVwiO1xyXG5pbXBvcnQgeyBWYWxpZGF0b3JzIH0gZnJvbSBcIkBhbmd1bGFyL2Zvcm1zXCI7XHJcbmltcG9ydCB7IEJpekRvYyB9IGZyb20gXCIuLi8uLi8uLi9jb3JlL2RlY29yYXRvcnNcIjtcclxuaW1wb3J0IHsgUGFyYWxsZWxTZXR0aW5nc01vZGVsIH0gZnJvbSBcIi4uLy4uLy4uL3ZpZXdzL2N1YmUvcGFyYWxsZWwuY29tcG9uZW50XCI7XHJcbmltcG9ydCB7IERlc2lnbmVyQ3ViZUVsZW1lbnRDb21wb25lbnQgfSBmcm9tIFwiLi4vZGVzaWduZXIuYmFzZVwiO1xyXG5cclxuQENvbXBvbmVudCh7XHJcbiAgdGVtcGxhdGVVcmw6ICdwYXJhbGxlbC12aWV3LmNvbXBvbmVudC5odG1sJyxcclxuICBob3N0OiB7IGNsYXNzOiAnY29sdW1uJyB9XHJcbn0pXHJcbkBCaXpEb2MoeyBzZWxlY3RvcjogJ3BhcmFsbGVsLXZpZXctZGVzaWduZXInIH0pXHJcbmV4cG9ydCBjbGFzcyBQYXJhbGxlbFZpZXdEZXNpZ25Db21wb25lbnQgZXh0ZW5kcyBEZXNpZ25lckN1YmVFbGVtZW50Q29tcG9uZW50PFBhcmFsbGVsU2V0dGluZ3NNb2RlbD4ge1xyXG4gIHJlYWRvbmx5IGZvcm0gPSB0aGlzLl9mYi5ncm91cCh7XHJcbiAgICBjdWJlOiBudWxsLFxyXG4gICAgeEF4aXM6IHRoaXMuX2ZiLmNvbnRyb2w8c3RyaW5nW10gfCBudWxsPihudWxsLCBWYWxpZGF0b3JzLnJlcXVpcmVkKSxcclxuICAgIHNlcmllczogdGhpcy5fZmIuY29udHJvbDxzdHJpbmdbXSB8IG51bGw+KG51bGwsIFZhbGlkYXRvcnMucmVxdWlyZWQpLFxyXG4gICAgaW5kaWNlczogdGhpcy5fZmIuY29udHJvbDxzdHJpbmdbXSB8IG51bGw+KG51bGwpLFxyXG4gICAgZmlsdGVyczogdGhpcy5fZmIuY29udHJvbDxzdHJpbmdbXSB8IG51bGw+KG51bGwpLFxyXG4gICAgY2hhcnRUeXBlOiAnUGllJyxcclxuICAgIGFnZ3JlZ2F0ZTogdGhpcy5fZmIuY29udHJvbDxzdHJpbmdbXSB8IG51bGw+KG51bGwpLFxyXG4gICAgc2NvcGU6IG51bGxcclxuICB9KTtcclxufVxyXG4iLCJAaWYgKG1vZGUgIT09ICd3aWRnZXQnKSB7XHJcbjxuZy1jb250YWluZXIgW2Zvcm1Hcm91cF09XCJmb3JtXCI+XHJcbiAgQGlmIChjdWJlcy5sZW5ndGggPiAxKSB7XHJcbiAgPG1hdC1mb3JtLWZpZWxkPlxyXG4gICAgPG1hdC1sYWJlbD57eydDdWJlJ3x0cmFuc2xhdGV9fTwvbWF0LWxhYmVsPlxyXG4gICAgPG1hdC1zZWxlY3QgcmVxdWlyZWQgZm9ybUNvbnRyb2xOYW1lPVwiY3ViZVwiIChzZWxlY3Rpb25DaGFuZ2UpPVwiY3ViZVNlbGVjdGVkKCRldmVudClcIj5cclxuICAgICAgQGZvciAoYyBvZiBjdWJlczsgdHJhY2sgYykge1xyXG4gICAgICA8bWF0LW9wdGlvbiBbdmFsdWVdPVwiYy5uYW1lXCI+e3tjLnRpdGxlfGxvY2FsaXplZFN0cmluZ319PC9tYXQtb3B0aW9uPlxyXG4gICAgICB9XHJcbiAgICA8L21hdC1zZWxlY3Q+XHJcbiAgPC9tYXQtZm9ybS1maWVsZD5cclxuICB9XHJcbiAgPG1hdC1mb3JtLWZpZWxkPlxyXG4gICAgPG1hdC1sYWJlbD57eydYQXhpcyd8dHJhbnNsYXRlfX08L21hdC1sYWJlbD5cclxuICAgIDxtYXQtc2VsZWN0IGZvcm1Db250cm9sTmFtZT1cInhBeGlzXCIgcmVxdWlyZWQgbXVsdGlwbGU+XHJcbiAgICAgIEBmb3IgKGEgb2YgY3ViZT8uYXhlczsgdHJhY2sgYSkge1xyXG4gICAgICA8bWF0LW9wdGlvbiBbdmFsdWVdPVwiYS5uYW1lXCI+e3thLnRpdGxlIH19PC9tYXQtb3B0aW9uPlxyXG4gICAgICB9XHJcbiAgICA8L21hdC1zZWxlY3Q+XHJcbiAgICBAaWYgKGZvcm0uY29udHJvbHMueEF4aXMuaGFzRXJyb3IoJ3JlcXVpcmVkJykpIHtcclxuICAgIDxtYXQtZXJyb3IgW2lubmVySFRNTF09XCInUmVxdWlyZWRFcnInfHRyYW5zbGF0ZTooJ1hBeGlzJ3x0cmFuc2xhdGUpXCI+PC9tYXQtZXJyb3I+XHJcbiAgICB9XHJcbiAgPC9tYXQtZm9ybS1maWVsZD5cclxuICA8bWF0LWZvcm0tZmllbGQ+XHJcbiAgICA8bWF0LWxhYmVsPnt7J1Nlcmllcyd8dHJhbnNsYXRlfX08L21hdC1sYWJlbD5cclxuICAgIDxtYXQtc2VsZWN0IGZvcm1Db250cm9sTmFtZT1cInNlcmllc1wiIHJlcXVpcmVkIG11bHRpcGxlPlxyXG4gICAgICBAZm9yIChhIG9mIGN1YmU/LmF4ZXM7IHRyYWNrIGEpIHtcclxuICAgICAgQGlmIChmb3JtLmNvbnRyb2xzLnhBeGlzLnZhbHVlPy5pbmRleE9mKGEubmFtZSkgPCAwKSB7XHJcbiAgICAgIDxtYXQtb3B0aW9uIFt2YWx1ZV09XCJhLm5hbWVcIj57e2EudGl0bGUgfX08L21hdC1vcHRpb24+XHJcbiAgICAgIH1cclxuICAgICAgfVxyXG4gICAgPC9tYXQtc2VsZWN0PlxyXG4gICAgQGlmIChmb3JtLmNvbnRyb2xzLnNlcmllcy5oYXNFcnJvcigncmVxdWlyZWQnKSkge1xyXG4gICAgPG1hdC1lcnJvciBbaW5uZXJIVE1MXT1cIidSZXF1aXJlZEVycid8dHJhbnNsYXRlOignU2VyaWVzJ3x0cmFuc2xhdGUpXCI+PC9tYXQtZXJyb3I+XHJcbiAgICB9XHJcbiAgPC9tYXQtZm9ybS1maWVsZD5cclxuICBAaWYgKGN1YmU/LmluZGljZXM/Lmxlbmd0aCkge1xyXG4gIDxtYXQtZm9ybS1maWVsZD5cclxuICAgIDxtYXQtbGFiZWw+e3snSW5kaWNlcyd8dHJhbnNsYXRlfX08L21hdC1sYWJlbD5cclxuICAgIDxtYXQtc2VsZWN0IGZvcm1Db250cm9sTmFtZT1cImluZGljZXNcIiBtdWx0aXBsZT5cclxuICAgICAgQGZvciAoeCBvZiBjdWJlLmluZGljZXM7IHRyYWNrIHgpIHtcclxuICAgICAgPG1hdC1vcHRpb24gW3ZhbHVlXT1cIngubmFtZVwiPnt7eC50aXRsZSB8fCB4Lm5hbWV9fTwvbWF0LW9wdGlvbj5cclxuICAgICAgfVxyXG4gICAgPC9tYXQtc2VsZWN0PlxyXG4gIDwvbWF0LWZvcm0tZmllbGQ+XHJcbiAgfVxyXG4gIDxtYXQtZm9ybS1maWVsZD5cclxuICAgIDxtYXQtbGFiZWw+e3snQ2hhcnRUeXBlJ3x0cmFuc2xhdGV9fTwvbWF0LWxhYmVsPlxyXG4gICAgPG1hdC1zZWxlY3QgZm9ybUNvbnRyb2xOYW1lPVwiY2hhcnRUeXBlXCI+XHJcbiAgICAgIDxtYXQtb3B0aW9uIHZhbHVlPVwiUGllXCI+e3snUGllJ3x0cmFuc2xhdGV9fTwvbWF0LW9wdGlvbj5cclxuICAgICAgPG1hdC1vcHRpb24gdmFsdWU9XCJDb2x1bW5cIj57eydDb2x1bW4nfHRyYW5zbGF0ZX19PC9tYXQtb3B0aW9uPlxyXG4gICAgICA8bWF0LW9wdGlvbiB2YWx1ZT1cIkxpbmVcIj57eydMaW5lJ3x0cmFuc2xhdGV9fTwvbWF0LW9wdGlvbj5cclxuICAgICAgPG1hdC1vcHRpb24gdmFsdWU9XCJBcmVhXCI+e3snQXJlYSd8dHJhbnNsYXRlfX08L21hdC1vcHRpb24+XHJcbiAgICA8L21hdC1zZWxlY3Q+XHJcbiAgPC9tYXQtZm9ybS1maWVsZD5cclxuICA8bWF0LWZvcm0tZmllbGQ+XHJcbiAgICA8bWF0LWxhYmVsPnt7J0FnZ3JlZ2F0ZSd8dHJhbnNsYXRlfX08L21hdC1sYWJlbD5cclxuICAgIDxtYXQtc2VsZWN0IGZvcm1Db250cm9sTmFtZT1cImFnZ3JlZ2F0ZVwiIG11bHRpcGxlPlxyXG4gICAgICBAZm9yIChhIG9mIGN1YmU/LmF4ZXM7IHRyYWNrIGEpIHtcclxuICAgICAgQGlmIChmb3JtLmNvbnRyb2xzLnhBeGlzLnZhbHVlIT09YS5uYW1lICYmIGZvcm0uY29udHJvbHMuc2VyaWVzLnZhbHVlICE9PSBhLm5hbWUgJiYgKCFmb3JtLmNvbnRyb2xzLmZpbHRlcnMudmFsdWUgfHwgZm9ybS5jb250cm9scy5maWx0ZXJzLnZhbHVlPy5pbmRleE9mKGEubmFtZSkgPCAwKSkge1xyXG4gICAgICA8bWF0LW9wdGlvbiBbdmFsdWVdPVwiYS5uYW1lXCI+e3thLnRpdGxlIH19PC9tYXQtb3B0aW9uPlxyXG4gICAgICB9XHJcbiAgICAgIH1cclxuICAgIDwvbWF0LXNlbGVjdD5cclxuICA8L21hdC1mb3JtLWZpZWxkPlxyXG48L25nLWNvbnRhaW5lcj5cclxuPCEtLUBpZihvcHRpb25zLnhBeGlzKXs8ZGl2PlxyXG4gIDxiaXpkb2MtY3ViZS1wYXJhbGxlbCAgW2N1YmVdPVwib3B0aW9ucy5jdWJlXCJcclxuICAgIFt4QXhpc109XCJvcHRpb25zLnhBeGlzXCJcclxuICAgIFtzZXJpZXNdPVwib3B0aW9ucy5zZXJpZXNcIlxyXG4gICAgW2luZGljZXNdPVwib3B0aW9ucy5pbmRpY2VzXCJcclxuICAgIFtmaWx0ZXJzXT1cIm9wdGlvbnMuZmlsdGVyc1wiXHJcbiAgICBbY2hhcnRUeXBlXT1cIm9wdGlvbnMuY2hhcnRUeXBlXCJcclxuICAgIFtzY29wZV09XCJvcHRpb25zLnNjb3BlXCJcclxuICBbc2l6ZV09XCIyNTBcIj48L2JpemRvYy1jdWJlLXBhcmFsbGVsPlxyXG48L2Rpdj59LS0+XHJcbn1cclxuIl19