@bizdoc/core 1.16.30 → 1.16.32

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 (658) hide show
  1. package/assets/themes/brown.min.css +1 -1
  2. package/assets/themes/dark.min.css +7 -2
  3. package/assets/themes/deep-purple-light-blue.min.css +1 -1
  4. package/assets/themes/deep-purple-teal.min.css +1 -1
  5. package/assets/themes/default.min.css +1 -1
  6. package/assets/themes/green.min.css +1 -1
  7. package/assets/themes/indigo.min.css +1 -1
  8. package/esm2020/lib/admin/admin-dismiss.service.mjs +4 -4
  9. package/esm2020/lib/admin/admin-menu.component.mjs +4 -4
  10. package/esm2020/lib/admin/configuration-designer/cube-axes-filter.component.mjs +4 -4
  11. package/esm2020/lib/admin/configuration-designer/designer-element.component.mjs +13 -13
  12. package/esm2020/lib/admin/configuration-designer/designer-privileges.component.mjs +4 -4
  13. package/esm2020/lib/admin/configuration-designer/designer.base.mjs +10 -10
  14. package/esm2020/lib/admin/configuration-designer/designer.component.mjs +7 -6
  15. package/esm2020/lib/admin/configuration-designer/elements/action.component.mjs +4 -4
  16. package/esm2020/lib/admin/configuration-designer/elements/analysis-view.component.mjs +4 -4
  17. package/esm2020/lib/admin/configuration-designer/elements/analysis-widget.component.mjs +4 -4
  18. package/esm2020/lib/admin/configuration-designer/elements/anomaly-rule.component.mjs +4 -4
  19. package/esm2020/lib/admin/configuration-designer/elements/box-form.component.mjs +4 -4
  20. package/esm2020/lib/admin/configuration-designer/elements/configuration-datasource.component.mjs +4 -4
  21. package/esm2020/lib/admin/configuration-designer/elements/cube-index-utility.component.mjs +4 -4
  22. package/esm2020/lib/admin/configuration-designer/elements/cube-view.component.mjs +4 -4
  23. package/esm2020/lib/admin/configuration-designer/elements/cube.component.mjs +4 -4
  24. package/esm2020/lib/admin/configuration-designer/elements/documents-report.component.mjs +4 -4
  25. package/esm2020/lib/admin/configuration-designer/elements/documents-widget.component.mjs +4 -4
  26. package/esm2020/lib/admin/configuration-designer/elements/explore-view.component.mjs +4 -4
  27. package/esm2020/lib/admin/configuration-designer/elements/folder.component.mjs +4 -4
  28. package/esm2020/lib/admin/configuration-designer/elements/form.component.mjs +4 -4
  29. package/esm2020/lib/admin/configuration-designer/elements/guide.component.mjs +4 -4
  30. package/esm2020/lib/admin/configuration-designer/elements/matrix-view.component.mjs +4 -4
  31. package/esm2020/lib/admin/configuration-designer/elements/node.component.mjs +4 -4
  32. package/esm2020/lib/admin/configuration-designer/elements/parallel-view.component.mjs +4 -4
  33. package/esm2020/lib/admin/configuration-designer/elements/performance-widget.component.mjs +4 -4
  34. package/esm2020/lib/admin/configuration-designer/elements/pivot-view.component.mjs +4 -4
  35. package/esm2020/lib/admin/configuration-designer/elements/policy.component.mjs +4 -4
  36. package/esm2020/lib/admin/configuration-designer/elements/report.component.mjs +4 -4
  37. package/esm2020/lib/admin/configuration-designer/elements/return-to-role-action.component.mjs +4 -4
  38. package/esm2020/lib/admin/configuration-designer/elements/role.component.mjs +4 -4
  39. package/esm2020/lib/admin/configuration-designer/elements/rule.component.mjs +4 -4
  40. package/esm2020/lib/admin/configuration-designer/elements/state.component.mjs +4 -4
  41. package/esm2020/lib/admin/configuration-designer/elements/sum-view.component.mjs +4 -4
  42. package/esm2020/lib/admin/configuration-designer/elements/tasks-report.component.mjs +4 -4
  43. package/esm2020/lib/admin/configuration-designer/elements/type.component.mjs +4 -4
  44. package/esm2020/lib/admin/configuration-designer/elements/usage-report.component.mjs +4 -4
  45. package/esm2020/lib/admin/configuration-designer/elements/utility.component.mjs +4 -4
  46. package/esm2020/lib/admin/configuration-designer/elements/view.component.mjs +4 -4
  47. package/esm2020/lib/admin/configuration-designer/elements/widget.component.mjs +4 -4
  48. package/esm2020/lib/admin/configuration-designer/icon-picker.component.mjs +4 -4
  49. package/esm2020/lib/admin/core/ace.input.mjs +4 -4
  50. package/esm2020/lib/admin/core/color-picker.input.mjs +4 -4
  51. package/esm2020/lib/admin/core/search.input.mjs +4 -4
  52. package/esm2020/lib/admin/diff/configuration-diff.component.mjs +4 -4
  53. package/esm2020/lib/admin/document-trace/document-trace.component.mjs +5 -5
  54. package/esm2020/lib/admin/document-trace/reassign.dialog.mjs +4 -4
  55. package/esm2020/lib/admin/document-trace/trace-element.component.mjs +4 -4
  56. package/esm2020/lib/admin/form/designer/designer.component.mjs +4 -4
  57. package/esm2020/lib/admin/form/form.resolve.service.mjs +4 -4
  58. package/esm2020/lib/admin/form/workflow/node.component.mjs +4 -4
  59. package/esm2020/lib/admin/form/workflow/role-node.component.mjs +4 -4
  60. package/esm2020/lib/admin/form/workflow/workflow.component.mjs +4 -4
  61. package/esm2020/lib/admin/indices/manage-cube-index.component.mjs +4 -4
  62. package/esm2020/lib/admin/localized-string.component.mjs +4 -4
  63. package/esm2020/lib/admin/patterns/patterns.component.mjs +4 -4
  64. package/esm2020/lib/admin/permissions/permissions.component.mjs +4 -4
  65. package/esm2020/lib/admin/positions/positions-popup.component.mjs +4 -4
  66. package/esm2020/lib/admin/positions/positions.component.mjs +4 -4
  67. package/esm2020/lib/admin/profiler/outofoffice.component.mjs +4 -4
  68. package/esm2020/lib/admin/profiler/profiler.component.mjs +4 -4
  69. package/esm2020/lib/admin/system.service.mjs +8 -5
  70. package/esm2020/lib/admin/utility-wrapper.component.mjs +4 -4
  71. package/esm2020/lib/admin/utility.pane.component.mjs +4 -4
  72. package/esm2020/lib/app.component.mjs +7 -7
  73. package/esm2020/lib/bizdoc.module.mjs +5 -5
  74. package/esm2020/lib/browse/browse-items.component.mjs +4 -4
  75. package/esm2020/lib/browse/browse.mobile.component.mjs +4 -4
  76. package/esm2020/lib/browse/browse.pane.component.mjs +4 -4
  77. package/esm2020/lib/browse/expanded-item/expanded-item.component.mjs +4 -4
  78. package/esm2020/lib/browse/filter/filter.component.mjs +4 -4
  79. package/esm2020/lib/browse/folders-menu.component.mjs +4 -4
  80. package/esm2020/lib/chat/chat-info.mjs +4 -4
  81. package/esm2020/lib/chat/chat.mobile.component.mjs +4 -4
  82. package/esm2020/lib/chat/chat.service.mjs +4 -4
  83. package/esm2020/lib/chat/contacts.component.mjs +7 -7
  84. package/esm2020/lib/chat/contacts.pane.component.mjs +4 -4
  85. package/esm2020/lib/chat/conversation.component.mjs +4 -4
  86. package/esm2020/lib/chat/conversation.pane.component.mjs +4 -4
  87. package/esm2020/lib/compose/action/action-picker.component.mjs +4 -4
  88. package/esm2020/lib/compose/action/action.dialog.mjs +4 -4
  89. package/esm2020/lib/compose/action/action.pane.dialog.exp.mjs +4 -4
  90. package/esm2020/lib/compose/action/assign-action.component.mjs +5 -5
  91. package/esm2020/lib/compose/action/moveto-action.component.mjs +4 -4
  92. package/esm2020/lib/compose/action/return-action.component.mjs +4 -4
  93. package/esm2020/lib/compose/attachments/attachments.component.mjs +4 -4
  94. package/esm2020/lib/compose/attachments/preview/attachment-preview.component.mjs +4 -4
  95. package/esm2020/lib/compose/attachments/progress-button.directive.mjs +4 -4
  96. package/esm2020/lib/compose/box/box.component.mjs +4 -4
  97. package/esm2020/lib/compose/can-deactivate-changes.service.mjs +4 -4
  98. package/esm2020/lib/compose/comments/comment.component.mjs +4 -4
  99. package/esm2020/lib/compose/comments/comments.component.mjs +4 -4
  100. package/esm2020/lib/compose/comments/comments.pane.component.mjs +4 -4
  101. package/esm2020/lib/compose/comments/edit-comment.component.mjs +4 -4
  102. package/esm2020/lib/compose/comments/edits.component.mjs +4 -4
  103. package/esm2020/lib/compose/comments/quick-comment.component.exp.mjs +4 -4
  104. package/esm2020/lib/compose/comments/votes.component.mjs +4 -4
  105. package/esm2020/lib/compose/compose-resolve.service.mjs +7 -7
  106. package/esm2020/lib/compose/compose.mobile.component.mjs +4 -4
  107. package/esm2020/lib/compose/compose.pane.component.mjs +4 -4
  108. package/esm2020/lib/compose/copy/copy.dialog.mjs +4 -4
  109. package/esm2020/lib/compose/dismiss.service.mjs +4 -4
  110. package/esm2020/lib/compose/document-resolver.service.mjs +4 -4
  111. package/esm2020/lib/compose/document.component.mjs +4 -4
  112. package/esm2020/lib/compose/document.mobile.component.mjs +4 -4
  113. package/esm2020/lib/compose/document.pane.component.mjs +4 -4
  114. package/esm2020/lib/compose/events/events.component.mjs +4 -4
  115. package/esm2020/lib/compose/form-selector/form-selector.sheet.mjs +4 -4
  116. package/esm2020/lib/compose/form.component.mjs +4 -4
  117. package/esm2020/lib/compose/new-menu.component.mjs +4 -4
  118. package/esm2020/lib/compose/privilage.directive.mjs +7 -7
  119. package/esm2020/lib/compose/recipient-resolver.service.mjs +4 -4
  120. package/esm2020/lib/compose/state.component.mjs +4 -4
  121. package/esm2020/lib/compose/tag/tags.component.mjs +4 -4
  122. package/esm2020/lib/compose/trace/flow.component.mjs +4 -4
  123. package/esm2020/lib/compose/trace/people.component.mjs +4 -4
  124. package/esm2020/lib/compose/trace/trace.base.mjs +4 -4
  125. package/esm2020/lib/compose/trace/trace.component.mjs +4 -4
  126. package/esm2020/lib/compose/trace/trace.pane.component.mjs +4 -4
  127. package/esm2020/lib/compose/version-compare/version-compare.component.mjs +4 -4
  128. package/esm2020/lib/compose/version-compare/version-compare.directive.mjs +10 -10
  129. package/esm2020/lib/compose/version-compare/version.pane.component.mjs +4 -4
  130. package/esm2020/lib/core/NgComponentOutlet.mjs +4 -4
  131. package/esm2020/lib/core/account.service.mjs +4 -4
  132. package/esm2020/lib/core/animated-icon/animated-icon.directive.mjs +4 -4
  133. package/esm2020/lib/core/avatar/avatar.component.mjs +4 -4
  134. package/esm2020/lib/core/component-factory-resolver.mjs +4 -4
  135. package/esm2020/lib/core/controls/address.input.mjs +4 -4
  136. package/esm2020/lib/core/controls/auto-complete.input.mjs +4 -4
  137. package/esm2020/lib/core/controls/combination-picker-body.mjs +4 -4
  138. package/esm2020/lib/core/controls/combination-picker.mjs +4 -4
  139. package/esm2020/lib/core/controls/combination-pool.mjs +4 -4
  140. package/esm2020/lib/core/controls/file.input.mjs +4 -4
  141. package/esm2020/lib/core/controls/select.input.mjs +4 -4
  142. package/esm2020/lib/core/controls/signature.input.mjs +4 -4
  143. package/esm2020/lib/core/controls/time-picker.mjs +4 -4
  144. package/esm2020/lib/core/controls/timespan.input.mjs +4 -4
  145. package/esm2020/lib/core/datasource.service.mjs +4 -4
  146. package/esm2020/lib/core/guide/guide.component.mjs +4 -4
  147. package/esm2020/lib/core/guide/guide.service.mjs +4 -4
  148. package/esm2020/lib/core/guide/help-tip.component.mjs +4 -4
  149. package/esm2020/lib/core/http.interceptor.mjs +4 -4
  150. package/esm2020/lib/core/hub.service.mjs +4 -4
  151. package/esm2020/lib/core/identity/identity.component.mjs +4 -4
  152. package/esm2020/lib/core/info/attachment-info.service.mjs +4 -4
  153. package/esm2020/lib/core/info/document-info.service.mjs +4 -4
  154. package/esm2020/lib/core/info/location-info.component.mjs +4 -4
  155. package/esm2020/lib/core/info/map-info.mjs +4 -4
  156. package/esm2020/lib/core/layout/autocomplete.field.mjs +4 -4
  157. package/esm2020/lib/core/layout/checkbox.field.mjs +4 -4
  158. package/esm2020/lib/core/layout/checkbox.mjs +4 -4
  159. package/esm2020/lib/core/layout/date-range.field.mjs +4 -4
  160. package/esm2020/lib/core/layout/date.field.mjs +4 -4
  161. package/esm2020/lib/core/layout/expression.field.mjs +4 -4
  162. package/esm2020/lib/core/layout/file.field.mjs +4 -4
  163. package/esm2020/lib/core/layout/html.field.mjs +4 -4
  164. package/esm2020/lib/core/layout/input.base.mjs +4 -4
  165. package/esm2020/lib/core/layout/input.field.mjs +4 -4
  166. package/esm2020/lib/core/layout/layout.component.mjs +4 -4
  167. package/esm2020/lib/core/layout/numeric.field.mjs +4 -4
  168. package/esm2020/lib/core/layout/select.field.mjs +4 -4
  169. package/esm2020/lib/core/layout/switch.field.mjs +4 -4
  170. package/esm2020/lib/core/layout/textarea.field.mjs +4 -4
  171. package/esm2020/lib/core/layout/timespan.field.mjs +4 -4
  172. package/esm2020/lib/core/lottie-animation.mjs +4 -4
  173. package/esm2020/lib/core/mailbox.service.mjs +4 -4
  174. package/esm2020/lib/core/none.component.mjs +4 -4
  175. package/esm2020/lib/core/pipes/action.pipe.mjs +4 -4
  176. package/esm2020/lib/core/pipes/calendar.pipe.mjs +4 -4
  177. package/esm2020/lib/core/pipes/date-format.pipe.mjs +4 -4
  178. package/esm2020/lib/core/pipes/daterange.pipe.mjs +7 -7
  179. package/esm2020/lib/core/pipes/difference.pipe.mjs +4 -4
  180. package/esm2020/lib/core/pipes/duration-format.pipe.mjs +4 -4
  181. package/esm2020/lib/core/pipes/duration.pipe.mjs +4 -4
  182. package/esm2020/lib/core/pipes/form.pipe.mjs +4 -4
  183. package/esm2020/lib/core/pipes/join.pipe.mjs +4 -4
  184. package/esm2020/lib/core/pipes/localized-string.pipe.mjs +4 -4
  185. package/esm2020/lib/core/pipes/role.pipe.mjs +4 -4
  186. package/esm2020/lib/core/pipes/sanitize-html.pipe.mjs +4 -4
  187. package/esm2020/lib/core/pipes/sort.pipe.mjs +7 -7
  188. package/esm2020/lib/core/pipes/state.pipe.mjs +4 -4
  189. package/esm2020/lib/core/pipes/time-ago.pipe.mjs +7 -7
  190. package/esm2020/lib/core/pipes/translate.pipe.mjs +7 -7
  191. package/esm2020/lib/core/pipes/type-value.pipe.mjs +4 -4
  192. package/esm2020/lib/core/pipes/user-name.pipe.mjs +4 -4
  193. package/esm2020/lib/core/popup/popup.component.mjs +4 -4
  194. package/esm2020/lib/core/popup/popup.service.mjs +4 -4
  195. package/esm2020/lib/core/popup/tooltip.directive.mjs +7 -7
  196. package/esm2020/lib/core/prompt/ask/ask.dialog.mjs +4 -4
  197. package/esm2020/lib/core/prompt/mask/mask.component.mjs +4 -4
  198. package/esm2020/lib/core/prompt.service.mjs +4 -4
  199. package/esm2020/lib/core/router.mjs +7 -7
  200. package/esm2020/lib/core/save-changes.dialog.mjs +4 -4
  201. package/esm2020/lib/core/session.service.mjs +4 -4
  202. package/esm2020/lib/core/slots/router.directive.mjs +4 -4
  203. package/esm2020/lib/core/slots/router.service.mjs +4 -4
  204. package/esm2020/lib/core/slots/slots.component.mjs +4 -4
  205. package/esm2020/lib/core/tagging/documents.component.mjs +4 -4
  206. package/esm2020/lib/core/tagging/edit-input.component.mjs +4 -4
  207. package/esm2020/lib/core/tagging/emoji.component.mjs +4 -4
  208. package/esm2020/lib/core/tagging/tagging-item.directive.mjs +4 -4
  209. package/esm2020/lib/core/tagging/tagging.component-base.mjs +4 -4
  210. package/esm2020/lib/core/tagging/tagging.directive.mjs +4 -4
  211. package/esm2020/lib/core/tagging/tagging.pipe.mjs +4 -4
  212. package/esm2020/lib/core/tagging/users.component.mjs +4 -4
  213. package/esm2020/lib/core/translate.service.mjs +4 -4
  214. package/esm2020/lib/core/window-title.service.mjs +4 -4
  215. package/esm2020/lib/cube/accum/accum.component.mjs +4 -4
  216. package/esm2020/lib/cube/chart/chart.component.mjs +4 -4
  217. package/esm2020/lib/cube/cube-info.service.mjs +4 -4
  218. package/esm2020/lib/cube/cube-menu.component.mjs +4 -4
  219. package/esm2020/lib/cube/cube-view.component.mjs +4 -4
  220. package/esm2020/lib/cube/cube.service.mjs +4 -4
  221. package/esm2020/lib/cube/explore/document-item.component.mjs +4 -4
  222. package/esm2020/lib/cube/explore/explore-item.component.mjs +4 -4
  223. package/esm2020/lib/cube/explore/explore-items.component.mjs +4 -4
  224. package/esm2020/lib/cube/explore/explore.pane.component.mjs +4 -4
  225. package/esm2020/lib/cube/explore/item-resolver.service.mjs +7 -7
  226. package/esm2020/lib/cube/explore/item.pane.component.mjs +4 -4
  227. package/esm2020/lib/cube/filter/filter-tags.component.exp.mjs +4 -4
  228. package/esm2020/lib/cube/filter/filter.component.mjs +4 -4
  229. package/esm2020/lib/cube/grid/grid.component.mjs +4 -4
  230. package/esm2020/lib/cube/grid/spreadsheet.component.mjs +4 -4
  231. package/esm2020/lib/cube/matrix/matrix.base.mjs +4 -4
  232. package/esm2020/lib/cube/matrix/matrix.mobile.component.mjs +4 -4
  233. package/esm2020/lib/cube/matrix/matrix.pane.component.mjs +4 -4
  234. package/esm2020/lib/cube/matrix/popup.component.mjs +4 -4
  235. package/esm2020/lib/cube/matrix/table.component.mjs +4 -4
  236. package/esm2020/lib/cube/parallel/parallel.component.mjs +4 -4
  237. package/esm2020/lib/cube/pivot/pivot.component.mjs +4 -4
  238. package/esm2020/lib/cube/sum/sum.component.mjs +4 -4
  239. package/esm2020/lib/cube/view-base.mjs +4 -4
  240. package/esm2020/lib/cube/view.mobile.component.mjs +4 -4
  241. package/esm2020/lib/cube/view.pane.component.mjs +4 -4
  242. package/esm2020/lib/dashboard/actions/actions.widget.mjs +4 -4
  243. package/esm2020/lib/dashboard/cube/accum-cube.widget.mjs +4 -4
  244. package/esm2020/lib/dashboard/cube/compare.widget.mjs +4 -4
  245. package/esm2020/lib/dashboard/cube/cube-analysis.base.mjs +4 -4
  246. package/esm2020/lib/dashboard/cube/cube-analysis.widget.mjs +4 -4
  247. package/esm2020/lib/dashboard/cube/cube-chart.widget.mjs +4 -4
  248. package/esm2020/lib/dashboard/cube/documents.widget.mjs +4 -4
  249. package/esm2020/lib/dashboard/cube/filter/filter.component.mjs +4 -4
  250. package/esm2020/lib/dashboard/dashboard.component.mjs +4 -4
  251. package/esm2020/lib/dashboard/dashboard.pane.component.mjs +4 -4
  252. package/esm2020/lib/dashboard/recents/recents.widget.mjs +4 -4
  253. package/esm2020/lib/dashboard/score/activity.widget.mjs +4 -4
  254. package/esm2020/lib/dashboard/score/compare-groups.widget.mjs +4 -4
  255. package/esm2020/lib/dashboard/score/peers-performance.widget.mjs +4 -4
  256. package/esm2020/lib/dashboard/score/pending-results.widget.mjs +4 -4
  257. package/esm2020/lib/dashboard/score/personal-score.widget.mjs +4 -4
  258. package/esm2020/lib/dashboard/widget-item.component.mjs +4 -4
  259. package/esm2020/lib/desktop.module.mjs +5 -5
  260. package/esm2020/lib/home/about/about.dialog.mjs +4 -4
  261. package/esm2020/lib/home/home-base.component.mjs +4 -4
  262. package/esm2020/lib/home/home.desktop.component.mjs +4 -4
  263. package/esm2020/lib/home/home.mobile.component.mjs +4 -4
  264. package/esm2020/lib/home/notifications/notifications.component.mjs +4 -4
  265. package/esm2020/lib/home/options/options.component.mjs +4 -4
  266. package/esm2020/lib/home/outofoffice/outofoffice.component.mjs +4 -4
  267. package/esm2020/lib/home/sign/sign.component.mjs +4 -4
  268. package/esm2020/lib/home/tools.component.mjs +4 -4
  269. package/esm2020/lib/impersonate/impersonate.component.mjs +4 -4
  270. package/esm2020/lib/mobile.module.mjs +5 -5
  271. package/esm2020/lib/modules/chart.module.mjs +5 -5
  272. package/esm2020/lib/modules/circular-gauge.module.mjs +5 -5
  273. package/esm2020/lib/modules/datepicker.intl.mjs +4 -4
  274. package/esm2020/lib/modules/dayjs.module.mjs +5 -5
  275. package/esm2020/lib/modules/diagram.module.mjs +5 -5
  276. package/esm2020/lib/modules/gantt.module.mjs +5 -5
  277. package/esm2020/lib/modules/grid.module.mjs +5 -5
  278. package/esm2020/lib/modules/material.module.mjs +5 -5
  279. package/esm2020/lib/modules/paginator.intl.mjs +4 -4
  280. package/esm2020/lib/modules/pivot.module.mjs +5 -5
  281. package/esm2020/lib/modules/schedule.module.mjs +5 -5
  282. package/esm2020/lib/modules/spreadsheet.module.mjs +5 -5
  283. package/esm2020/lib/modules/stepper.intl.mjs +4 -4
  284. package/esm2020/lib/modules/texteditor.module.mjs +5 -5
  285. package/esm2020/lib/notifications/filter.component.mjs +4 -4
  286. package/esm2020/lib/notifications/notifications-table.component.mjs +4 -4
  287. package/esm2020/lib/notifications/notifications.mobile.component.mjs +4 -4
  288. package/esm2020/lib/notifications/notifications.pane.component.mjs +4 -4
  289. package/esm2020/lib/notifications/notifications.service.mjs +4 -4
  290. package/esm2020/lib/notifications/types/commented.notification.mjs +4 -4
  291. package/esm2020/lib/notifications/types/cube-anomaly.notification.mjs +4 -4
  292. package/esm2020/lib/notifications/types/escalated.notification.mjs +4 -4
  293. package/esm2020/lib/notifications/types/liked.notification.mjs +4 -4
  294. package/esm2020/lib/notifications/types/long-running-task.notification.mjs +4 -4
  295. package/esm2020/lib/notifications/types/notification-base.mjs +4 -4
  296. package/esm2020/lib/notifications/types/nudge.notification.mjs +4 -4
  297. package/esm2020/lib/notifications/types/state-changed.notification.mjs +4 -4
  298. package/esm2020/lib/notifications/types/tagged.notification.mjs +4 -4
  299. package/esm2020/lib/notifications/types/text.notification.mjs +4 -4
  300. package/esm2020/lib/notifications/types/upcoming-event.notification.mjs +4 -4
  301. package/esm2020/lib/options/options.component.mjs +4 -4
  302. package/esm2020/lib/options/options.service.mjs +4 -4
  303. package/esm2020/lib/reports/arguments-component.mjs +4 -4
  304. package/esm2020/lib/reports/cube/documents.component.mjs +4 -4
  305. package/esm2020/lib/reports/cube/grid-documents.component.mjs +4 -4
  306. package/esm2020/lib/reports/cube/table-documents.component.mjs +4 -4
  307. package/esm2020/lib/reports/cube/usage-args.component.mjs +4 -4
  308. package/esm2020/lib/reports/cube/usage-base.mjs +4 -4
  309. package/esm2020/lib/reports/cube/usage-chart.component.mjs +4 -4
  310. package/esm2020/lib/reports/cube/usage-pivot.component.mjs +4 -4
  311. package/esm2020/lib/reports/cube/usage.component.mjs +4 -4
  312. package/esm2020/lib/reports/report-viewer.component.mjs +4 -4
  313. package/esm2020/lib/reports/report.mobile.component.mjs +4 -4
  314. package/esm2020/lib/reports/report.pane.component.mjs +4 -4
  315. package/esm2020/lib/reports/reports-menu.component.mjs +4 -4
  316. package/esm2020/lib/reports/substitution/substitution.component.mjs +4 -4
  317. package/esm2020/lib/reports/table/table-view.component.mjs +4 -4
  318. package/esm2020/lib/reports/tasks/tasks.component.mjs +4 -4
  319. package/esm2020/lib/scheduler/schedule.component.mjs +4 -4
  320. package/esm2020/lib/scheduler/scheduler.mobile.component.mjs +4 -4
  321. package/esm2020/lib/scheduler/scheduler.pane.component.mjs +4 -4
  322. package/esm2020/lib/search/cube.component.mjs +4 -4
  323. package/esm2020/lib/search/document.component.mjs +4 -4
  324. package/esm2020/lib/search/guide.component.mjs +4 -4
  325. package/esm2020/lib/search/path.component.mjs +4 -4
  326. package/esm2020/lib/search/search.service.mjs +4 -4
  327. package/esm2020/lib/shared.module.mjs +5 -5
  328. package/esm2020/lib/system.module.mjs +5 -5
  329. package/esm2020/lib/views/cube/chart.component.mjs +4 -4
  330. package/esm2020/lib/views/cube/cube-base.mjs +4 -4
  331. package/esm2020/lib/views/cube/explore.component.mjs +4 -4
  332. package/esm2020/lib/views/cube/matrix.component.mjs +4 -4
  333. package/esm2020/lib/views/cube/parallel.component.mjs +4 -4
  334. package/esm2020/lib/views/cube/pivot.component.mjs +4 -4
  335. package/esm2020/lib/views/cube/sum.component.mjs +4 -4
  336. package/esm2020/lib/views/cube/view.component.mjs +4 -4
  337. package/esm2020/lib/views/timeline/timeline.component.exp.mjs +4 -4
  338. package/esm2020/lib/views/view-item.component.mjs +4 -4
  339. package/esm2020/lib/views/views.component.mjs +4 -4
  340. package/esm2020/lib/views/views.mobile.component.mjs +4 -4
  341. package/esm2020/lib/views/views.pane.component.mjs +4 -4
  342. package/fesm2015/bizdoc-core.mjs +1081 -1077
  343. package/fesm2015/bizdoc-core.mjs.map +1 -1
  344. package/fesm2020/bizdoc-core.mjs +1081 -1077
  345. package/fesm2020/bizdoc-core.mjs.map +1 -1
  346. package/lib/admin/configuration-designer/designer.component.d.ts.map +1 -1
  347. package/lib/admin/system.service.d.ts.map +1 -1
  348. package/lib/compose/action/return-action.component.d.ts.map +1 -1
  349. package/package.json +1 -1
  350. package/esm2020/lib/admin/architecture/cube-axes-filter.component.mjs +0 -237
  351. package/esm2020/lib/admin/architecture/declarations.mjs +0 -55
  352. package/esm2020/lib/admin/architecture/designer-element.component.mjs +0 -443
  353. package/esm2020/lib/admin/architecture/designer-privileges.component.mjs +0 -169
  354. package/esm2020/lib/admin/architecture/designer.base.mjs +0 -133
  355. package/esm2020/lib/admin/architecture/designer.component.mjs +0 -473
  356. package/esm2020/lib/admin/architecture/elements/action.component.mjs +0 -84
  357. package/esm2020/lib/admin/architecture/elements/analysis-view.component.mjs +0 -475
  358. package/esm2020/lib/admin/architecture/elements/analysis-widget.component.mjs +0 -459
  359. package/esm2020/lib/admin/architecture/elements/anomaly-rule.component.mjs +0 -41
  360. package/esm2020/lib/admin/architecture/elements/attribute.component.mjs +0 -62
  361. package/esm2020/lib/admin/architecture/elements/box-form.component.mjs +0 -117
  362. package/esm2020/lib/admin/architecture/elements/configuration-datasource.component.mjs +0 -132
  363. package/esm2020/lib/admin/architecture/elements/control.component.mjs +0 -43
  364. package/esm2020/lib/admin/architecture/elements/cube-index-utility.component.mjs +0 -98
  365. package/esm2020/lib/admin/architecture/elements/cube-view.component.mjs +0 -133
  366. package/esm2020/lib/admin/architecture/elements/cube.component.mjs +0 -1763
  367. package/esm2020/lib/admin/architecture/elements/documents-report.component.mjs +0 -86
  368. package/esm2020/lib/admin/architecture/elements/documents-widget.component.mjs +0 -93
  369. package/esm2020/lib/admin/architecture/elements/explore-view.component.mjs +0 -113
  370. package/esm2020/lib/admin/architecture/elements/feedback-widget.component.mjs +0 -125
  371. package/esm2020/lib/admin/architecture/elements/folder.component.mjs +0 -353
  372. package/esm2020/lib/admin/architecture/elements/form-invite.dialog.mjs +0 -239
  373. package/esm2020/lib/admin/architecture/elements/form.component.mjs +0 -432
  374. package/esm2020/lib/admin/architecture/elements/guide.component.mjs +0 -236
  375. package/esm2020/lib/admin/architecture/elements/matrix-view.component.mjs +0 -445
  376. package/esm2020/lib/admin/architecture/elements/node.component.mjs +0 -30
  377. package/esm2020/lib/admin/architecture/elements/parallel-view.component.mjs +0 -246
  378. package/esm2020/lib/admin/architecture/elements/performance-report.component.mjs +0 -118
  379. package/esm2020/lib/admin/architecture/elements/performance-widget.component.mjs +0 -121
  380. package/esm2020/lib/admin/architecture/elements/pivot-view.component.mjs +0 -232
  381. package/esm2020/lib/admin/architecture/elements/policy.component.mjs +0 -30
  382. package/esm2020/lib/admin/architecture/elements/report.component.mjs +0 -75
  383. package/esm2020/lib/admin/architecture/elements/return-to-role-action.component.mjs +0 -69
  384. package/esm2020/lib/admin/architecture/elements/role.component.mjs +0 -120
  385. package/esm2020/lib/admin/architecture/elements/rule.component.mjs +0 -30
  386. package/esm2020/lib/admin/architecture/elements/state.component.mjs +0 -64
  387. package/esm2020/lib/admin/architecture/elements/sum-view.component.mjs +0 -228
  388. package/esm2020/lib/admin/architecture/elements/tasks-report.component.mjs +0 -152
  389. package/esm2020/lib/admin/architecture/elements/type.component.mjs +0 -378
  390. package/esm2020/lib/admin/architecture/elements/usage-report.component.mjs +0 -277
  391. package/esm2020/lib/admin/architecture/elements/utility.component.mjs +0 -30
  392. package/esm2020/lib/admin/architecture/elements/view.component.mjs +0 -30
  393. package/esm2020/lib/admin/architecture/elements/widget.component.mjs +0 -75
  394. package/esm2020/lib/admin/architecture/icon-picker.component.mjs +0 -219
  395. package/esm2020/lib/admin/core/localized-string.component.mjs +0 -241
  396. package/esm2020/lib/admin/form/designer/box-designer.component.mjs +0 -496
  397. package/esm2020/lib/admin/form/designer/declarations.mjs +0 -2
  398. package/esm2020/lib/admin/form/designer/properties.component.mjs +0 -133
  399. package/esm2020/lib/admin/form/designer/section.component.mjs +0 -106
  400. package/esm2020/lib/admin/form/designer/settings.component.mjs +0 -61
  401. package/esm2020/lib/compose/box/control.component.mjs +0 -47
  402. package/esm2020/lib/compose/box/row.component.mjs +0 -41
  403. package/esm2020/lib/core/checkbox.mjs +0 -49
  404. package/esm2020/lib/core/fields/address.designer.mjs +0 -47
  405. package/esm2020/lib/core/fields/address.field.mjs +0 -104
  406. package/esm2020/lib/core/fields/autocomplete.field.mjs +0 -198
  407. package/esm2020/lib/core/fields/checkbox.designer.mjs +0 -43
  408. package/esm2020/lib/core/fields/checkbox.field.mjs +0 -95
  409. package/esm2020/lib/core/fields/checklist.designer.mjs +0 -98
  410. package/esm2020/lib/core/fields/checklist.field.mjs +0 -144
  411. package/esm2020/lib/core/fields/date-range.designer.mjs +0 -55
  412. package/esm2020/lib/core/fields/date-range.field.mjs +0 -113
  413. package/esm2020/lib/core/fields/date.designer.mjs +0 -49
  414. package/esm2020/lib/core/fields/date.field.mjs +0 -114
  415. package/esm2020/lib/core/fields/expression.field.mjs +0 -80
  416. package/esm2020/lib/core/fields/file.designer.mjs +0 -49
  417. package/esm2020/lib/core/fields/file.field.mjs +0 -90
  418. package/esm2020/lib/core/fields/html.designer.mjs +0 -76
  419. package/esm2020/lib/core/fields/html.field.mjs +0 -114
  420. package/esm2020/lib/core/fields/input.designer.mjs +0 -112
  421. package/esm2020/lib/core/fields/input.field.mjs +0 -212
  422. package/esm2020/lib/core/fields/numeric.designer.mjs +0 -91
  423. package/esm2020/lib/core/fields/numeric.field.mjs +0 -95
  424. package/esm2020/lib/core/fields/options.base.mjs +0 -41
  425. package/esm2020/lib/core/fields/options.component.mjs +0 -106
  426. package/esm2020/lib/core/fields/radio-button.designer.mjs +0 -83
  427. package/esm2020/lib/core/fields/radio-button.field.mjs +0 -114
  428. package/esm2020/lib/core/fields/select.designer.mjs +0 -105
  429. package/esm2020/lib/core/fields/select.field.mjs +0 -157
  430. package/esm2020/lib/core/fields/signature.designer.mjs +0 -46
  431. package/esm2020/lib/core/fields/signature.field.mjs +0 -114
  432. package/esm2020/lib/core/fields/switch.field.mjs +0 -82
  433. package/esm2020/lib/core/fields/textarea.designer.mjs +0 -62
  434. package/esm2020/lib/core/fields/textarea.field.mjs +0 -106
  435. package/esm2020/lib/core/fields/timespan.field.mjs +0 -93
  436. package/esm2020/lib/core/fields/yesno.designer.mjs +0 -104
  437. package/esm2020/lib/core/fields/yesno.field.mjs +0 -101
  438. package/esm2020/lib/core/inputs/address.input.mjs +0 -229
  439. package/esm2020/lib/core/inputs/auto-complete.input.mjs +0 -320
  440. package/esm2020/lib/core/inputs/combination-picker-body.mjs +0 -309
  441. package/esm2020/lib/core/inputs/combination-picker.mjs +0 -296
  442. package/esm2020/lib/core/inputs/combination-pool.mjs +0 -161
  443. package/esm2020/lib/core/inputs/file.input.mjs +0 -685
  444. package/esm2020/lib/core/inputs/select.input.mjs +0 -293
  445. package/esm2020/lib/core/inputs/signature.input.mjs +0 -162
  446. package/esm2020/lib/core/inputs/time-picker.mjs +0 -220
  447. package/esm2020/lib/core/inputs/timespan.input.mjs +0 -202
  448. package/esm2020/lib/core/layout.component.mjs +0 -146
  449. package/esm2020/lib/dashboard/cube/document-state.widget.mjs +0 -85
  450. package/esm2020/lib/designer.module.mjs +0 -98
  451. package/esm2020/lib/notifications/types/invite.notification.mjs +0 -51
  452. package/esm2020/lib/reports/cube/role-performance.component.mjs +0 -61
  453. package/lib/admin/architecture/cube-axes-filter.component.d.ts +0 -32
  454. package/lib/admin/architecture/cube-axes-filter.component.d.ts.map +0 -1
  455. package/lib/admin/architecture/declarations.d.ts +0 -229
  456. package/lib/admin/architecture/declarations.d.ts.map +0 -1
  457. package/lib/admin/architecture/designer-element.component.d.ts +0 -87
  458. package/lib/admin/architecture/designer-element.component.d.ts.map +0 -1
  459. package/lib/admin/architecture/designer-privileges.component.d.ts +0 -34
  460. package/lib/admin/architecture/designer-privileges.component.d.ts.map +0 -1
  461. package/lib/admin/architecture/designer.base.d.ts +0 -55
  462. package/lib/admin/architecture/designer.base.d.ts.map +0 -1
  463. package/lib/admin/architecture/designer.component.d.ts +0 -60
  464. package/lib/admin/architecture/designer.component.d.ts.map +0 -1
  465. package/lib/admin/architecture/elements/action.component.d.ts +0 -23
  466. package/lib/admin/architecture/elements/action.component.d.ts.map +0 -1
  467. package/lib/admin/architecture/elements/analysis-view.component.d.ts +0 -21
  468. package/lib/admin/architecture/elements/analysis-view.component.d.ts.map +0 -1
  469. package/lib/admin/architecture/elements/analysis-widget.component.d.ts +0 -20
  470. package/lib/admin/architecture/elements/analysis-widget.component.d.ts.map +0 -1
  471. package/lib/admin/architecture/elements/anomaly-rule.component.d.ts +0 -10
  472. package/lib/admin/architecture/elements/anomaly-rule.component.d.ts.map +0 -1
  473. package/lib/admin/architecture/elements/attribute.component.d.ts +0 -13
  474. package/lib/admin/architecture/elements/attribute.component.d.ts.map +0 -1
  475. package/lib/admin/architecture/elements/box-form.component.d.ts +0 -23
  476. package/lib/admin/architecture/elements/box-form.component.d.ts.map +0 -1
  477. package/lib/admin/architecture/elements/configuration-datasource.component.d.ts +0 -28
  478. package/lib/admin/architecture/elements/configuration-datasource.component.d.ts.map +0 -1
  479. package/lib/admin/architecture/elements/control.component.d.ts +0 -14
  480. package/lib/admin/architecture/elements/control.component.d.ts.map +0 -1
  481. package/lib/admin/architecture/elements/cube-index-utility.component.d.ts +0 -13
  482. package/lib/admin/architecture/elements/cube-index-utility.component.d.ts.map +0 -1
  483. package/lib/admin/architecture/elements/cube-view.component.d.ts +0 -15
  484. package/lib/admin/architecture/elements/cube-view.component.d.ts.map +0 -1
  485. package/lib/admin/architecture/elements/cube.component.d.ts +0 -51
  486. package/lib/admin/architecture/elements/cube.component.d.ts.map +0 -1
  487. package/lib/admin/architecture/elements/documents-report.component.d.ts +0 -14
  488. package/lib/admin/architecture/elements/documents-report.component.d.ts.map +0 -1
  489. package/lib/admin/architecture/elements/documents-widget.component.d.ts +0 -20
  490. package/lib/admin/architecture/elements/documents-widget.component.d.ts.map +0 -1
  491. package/lib/admin/architecture/elements/explore-view.component.d.ts +0 -16
  492. package/lib/admin/architecture/elements/explore-view.component.d.ts.map +0 -1
  493. package/lib/admin/architecture/elements/feedback-widget.component.d.ts +0 -35
  494. package/lib/admin/architecture/elements/feedback-widget.component.d.ts.map +0 -1
  495. package/lib/admin/architecture/elements/folder.component.d.ts +0 -23
  496. package/lib/admin/architecture/elements/folder.component.d.ts.map +0 -1
  497. package/lib/admin/architecture/elements/form-invite.dialog.d.ts +0 -48
  498. package/lib/admin/architecture/elements/form-invite.dialog.d.ts.map +0 -1
  499. package/lib/admin/architecture/elements/form.component.d.ts +0 -51
  500. package/lib/admin/architecture/elements/form.component.d.ts.map +0 -1
  501. package/lib/admin/architecture/elements/guide.component.d.ts +0 -15
  502. package/lib/admin/architecture/elements/guide.component.d.ts.map +0 -1
  503. package/lib/admin/architecture/elements/matrix-view.component.d.ts +0 -22
  504. package/lib/admin/architecture/elements/matrix-view.component.d.ts.map +0 -1
  505. package/lib/admin/architecture/elements/node.component.d.ts +0 -8
  506. package/lib/admin/architecture/elements/node.component.d.ts.map +0 -1
  507. package/lib/admin/architecture/elements/parallel-view.component.d.ts +0 -19
  508. package/lib/admin/architecture/elements/parallel-view.component.d.ts.map +0 -1
  509. package/lib/admin/architecture/elements/performance-report.component.d.ts +0 -16
  510. package/lib/admin/architecture/elements/performance-report.component.d.ts.map +0 -1
  511. package/lib/admin/architecture/elements/performance-widget.component.d.ts +0 -15
  512. package/lib/admin/architecture/elements/performance-widget.component.d.ts.map +0 -1
  513. package/lib/admin/architecture/elements/pivot-view.component.d.ts +0 -20
  514. package/lib/admin/architecture/elements/pivot-view.component.d.ts.map +0 -1
  515. package/lib/admin/architecture/elements/policy.component.d.ts +0 -8
  516. package/lib/admin/architecture/elements/policy.component.d.ts.map +0 -1
  517. package/lib/admin/architecture/elements/report.component.d.ts +0 -13
  518. package/lib/admin/architecture/elements/report.component.d.ts.map +0 -1
  519. package/lib/admin/architecture/elements/return-to-role-action.component.d.ts +0 -18
  520. package/lib/admin/architecture/elements/return-to-role-action.component.d.ts.map +0 -1
  521. package/lib/admin/architecture/elements/role.component.d.ts +0 -17
  522. package/lib/admin/architecture/elements/role.component.d.ts.map +0 -1
  523. package/lib/admin/architecture/elements/rule.component.d.ts +0 -8
  524. package/lib/admin/architecture/elements/rule.component.d.ts.map +0 -1
  525. package/lib/admin/architecture/elements/state.component.d.ts +0 -14
  526. package/lib/admin/architecture/elements/state.component.d.ts.map +0 -1
  527. package/lib/admin/architecture/elements/sum-view.component.d.ts +0 -18
  528. package/lib/admin/architecture/elements/sum-view.component.d.ts.map +0 -1
  529. package/lib/admin/architecture/elements/tasks-report.component.d.ts +0 -18
  530. package/lib/admin/architecture/elements/tasks-report.component.d.ts.map +0 -1
  531. package/lib/admin/architecture/elements/type.component.d.ts +0 -32
  532. package/lib/admin/architecture/elements/type.component.d.ts.map +0 -1
  533. package/lib/admin/architecture/elements/usage-report.component.d.ts +0 -24
  534. package/lib/admin/architecture/elements/usage-report.component.d.ts.map +0 -1
  535. package/lib/admin/architecture/elements/utility.component.d.ts +0 -8
  536. package/lib/admin/architecture/elements/utility.component.d.ts.map +0 -1
  537. package/lib/admin/architecture/elements/view.component.d.ts +0 -8
  538. package/lib/admin/architecture/elements/view.component.d.ts.map +0 -1
  539. package/lib/admin/architecture/elements/widget.component.d.ts +0 -13
  540. package/lib/admin/architecture/elements/widget.component.d.ts.map +0 -1
  541. package/lib/admin/architecture/icon-picker.component.d.ts +0 -69
  542. package/lib/admin/architecture/icon-picker.component.d.ts.map +0 -1
  543. package/lib/admin/core/localized-string.component.d.ts +0 -57
  544. package/lib/admin/core/localized-string.component.d.ts.map +0 -1
  545. package/lib/admin/form/designer/box-designer.component.d.ts +0 -93
  546. package/lib/admin/form/designer/box-designer.component.d.ts.map +0 -1
  547. package/lib/admin/form/designer/declarations.d.ts +0 -27
  548. package/lib/admin/form/designer/declarations.d.ts.map +0 -1
  549. package/lib/admin/form/designer/properties.component.d.ts +0 -27
  550. package/lib/admin/form/designer/properties.component.d.ts.map +0 -1
  551. package/lib/admin/form/designer/section.component.d.ts +0 -28
  552. package/lib/admin/form/designer/section.component.d.ts.map +0 -1
  553. package/lib/admin/form/designer/settings.component.d.ts +0 -20
  554. package/lib/admin/form/designer/settings.component.d.ts.map +0 -1
  555. package/lib/compose/box/control.component.d.ts +0 -23
  556. package/lib/compose/box/control.component.d.ts.map +0 -1
  557. package/lib/compose/box/row.component.d.ts +0 -21
  558. package/lib/compose/box/row.component.d.ts.map +0 -1
  559. package/lib/core/checkbox.d.ts +0 -11
  560. package/lib/core/checkbox.d.ts.map +0 -1
  561. package/lib/core/fields/address.designer.d.ts +0 -22
  562. package/lib/core/fields/address.designer.d.ts.map +0 -1
  563. package/lib/core/fields/address.field.d.ts +0 -22
  564. package/lib/core/fields/address.field.d.ts.map +0 -1
  565. package/lib/core/fields/autocomplete.field.d.ts +0 -56
  566. package/lib/core/fields/autocomplete.field.d.ts.map +0 -1
  567. package/lib/core/fields/checkbox.designer.d.ts +0 -20
  568. package/lib/core/fields/checkbox.designer.d.ts.map +0 -1
  569. package/lib/core/fields/checkbox.field.d.ts +0 -18
  570. package/lib/core/fields/checkbox.field.d.ts.map +0 -1
  571. package/lib/core/fields/checklist.designer.d.ts +0 -33
  572. package/lib/core/fields/checklist.designer.d.ts.map +0 -1
  573. package/lib/core/fields/checklist.field.d.ts +0 -21
  574. package/lib/core/fields/checklist.field.d.ts.map +0 -1
  575. package/lib/core/fields/date-range.designer.d.ts +0 -28
  576. package/lib/core/fields/date-range.designer.d.ts.map +0 -1
  577. package/lib/core/fields/date-range.field.d.ts +0 -33
  578. package/lib/core/fields/date-range.field.d.ts.map +0 -1
  579. package/lib/core/fields/date.designer.d.ts +0 -26
  580. package/lib/core/fields/date.designer.d.ts.map +0 -1
  581. package/lib/core/fields/date.field.d.ts +0 -23
  582. package/lib/core/fields/date.field.d.ts.map +0 -1
  583. package/lib/core/fields/expression.field.d.ts +0 -21
  584. package/lib/core/fields/expression.field.d.ts.map +0 -1
  585. package/lib/core/fields/file.designer.d.ts +0 -22
  586. package/lib/core/fields/file.designer.d.ts.map +0 -1
  587. package/lib/core/fields/file.field.d.ts +0 -22
  588. package/lib/core/fields/file.field.d.ts.map +0 -1
  589. package/lib/core/fields/html.designer.d.ts +0 -24
  590. package/lib/core/fields/html.designer.d.ts.map +0 -1
  591. package/lib/core/fields/html.field.d.ts +0 -24
  592. package/lib/core/fields/html.field.d.ts.map +0 -1
  593. package/lib/core/fields/input.designer.d.ts +0 -34
  594. package/lib/core/fields/input.designer.d.ts.map +0 -1
  595. package/lib/core/fields/input.field.d.ts +0 -29
  596. package/lib/core/fields/input.field.d.ts.map +0 -1
  597. package/lib/core/fields/numeric.designer.d.ts +0 -30
  598. package/lib/core/fields/numeric.designer.d.ts.map +0 -1
  599. package/lib/core/fields/numeric.field.d.ts +0 -26
  600. package/lib/core/fields/numeric.field.d.ts.map +0 -1
  601. package/lib/core/fields/options.base.d.ts +0 -29
  602. package/lib/core/fields/options.base.d.ts.map +0 -1
  603. package/lib/core/fields/options.component.d.ts +0 -25
  604. package/lib/core/fields/options.component.d.ts.map +0 -1
  605. package/lib/core/fields/radio-button.designer.d.ts +0 -31
  606. package/lib/core/fields/radio-button.designer.d.ts.map +0 -1
  607. package/lib/core/fields/radio-button.field.d.ts +0 -17
  608. package/lib/core/fields/radio-button.field.d.ts.map +0 -1
  609. package/lib/core/fields/select.designer.d.ts +0 -34
  610. package/lib/core/fields/select.designer.d.ts.map +0 -1
  611. package/lib/core/fields/select.field.d.ts +0 -23
  612. package/lib/core/fields/select.field.d.ts.map +0 -1
  613. package/lib/core/fields/signature.designer.d.ts +0 -20
  614. package/lib/core/fields/signature.designer.d.ts.map +0 -1
  615. package/lib/core/fields/signature.field.d.ts +0 -24
  616. package/lib/core/fields/signature.field.d.ts.map +0 -1
  617. package/lib/core/fields/switch.field.d.ts +0 -17
  618. package/lib/core/fields/switch.field.d.ts.map +0 -1
  619. package/lib/core/fields/textarea.designer.d.ts +0 -28
  620. package/lib/core/fields/textarea.designer.d.ts.map +0 -1
  621. package/lib/core/fields/textarea.field.d.ts +0 -24
  622. package/lib/core/fields/textarea.field.d.ts.map +0 -1
  623. package/lib/core/fields/timespan.field.d.ts +0 -21
  624. package/lib/core/fields/timespan.field.d.ts.map +0 -1
  625. package/lib/core/fields/yesno.designer.d.ts +0 -26
  626. package/lib/core/fields/yesno.designer.d.ts.map +0 -1
  627. package/lib/core/fields/yesno.field.d.ts +0 -18
  628. package/lib/core/fields/yesno.field.d.ts.map +0 -1
  629. package/lib/core/inputs/address.input.d.ts +0 -66
  630. package/lib/core/inputs/address.input.d.ts.map +0 -1
  631. package/lib/core/inputs/auto-complete.input.d.ts +0 -87
  632. package/lib/core/inputs/auto-complete.input.d.ts.map +0 -1
  633. package/lib/core/inputs/combination-picker-body.d.ts +0 -115
  634. package/lib/core/inputs/combination-picker-body.d.ts.map +0 -1
  635. package/lib/core/inputs/combination-picker.d.ts +0 -83
  636. package/lib/core/inputs/combination-picker.d.ts.map +0 -1
  637. package/lib/core/inputs/combination-pool.d.ts +0 -43
  638. package/lib/core/inputs/combination-pool.d.ts.map +0 -1
  639. package/lib/core/inputs/file.input.d.ts +0 -100
  640. package/lib/core/inputs/file.input.d.ts.map +0 -1
  641. package/lib/core/inputs/select.input.d.ts +0 -85
  642. package/lib/core/inputs/select.input.d.ts.map +0 -1
  643. package/lib/core/inputs/signature.input.d.ts +0 -54
  644. package/lib/core/inputs/signature.input.d.ts.map +0 -1
  645. package/lib/core/inputs/time-picker.d.ts +0 -53
  646. package/lib/core/inputs/time-picker.d.ts.map +0 -1
  647. package/lib/core/inputs/timespan.input.d.ts +0 -60
  648. package/lib/core/inputs/timespan.input.d.ts.map +0 -1
  649. package/lib/core/layout.component.d.ts +0 -29
  650. package/lib/core/layout.component.d.ts.map +0 -1
  651. package/lib/dashboard/cube/document-state.widget.d.ts +0 -30
  652. package/lib/dashboard/cube/document-state.widget.d.ts.map +0 -1
  653. package/lib/designer.module.d.ts +0 -30
  654. package/lib/designer.module.d.ts.map +0 -1
  655. package/lib/notifications/types/invite.notification.d.ts +0 -22
  656. package/lib/notifications/types/invite.notification.d.ts.map +0 -1
  657. package/lib/reports/cube/role-performance.component.d.ts +0 -37
  658. package/lib/reports/cube/role-performance.component.d.ts.map +0 -1
@@ -1,296 +0,0 @@
1
- import { Component, Input, EventEmitter, Output, Optional, HostBinding, Self, Injector } from "@angular/core";
2
- import { ComponentPortal } from "@angular/cdk/portal";
3
- import { MatFormFieldControl } from "@angular/material/form-field";
4
- import { coerceNumberProperty, coerceBooleanProperty } from "@angular/cdk/coercion";
5
- import { UP_ARROW, ESCAPE, DOWN_ARROW } from "@angular/cdk/keycodes";
6
- import { merge, Subject } from "rxjs";
7
- import { filter, tap } from "rxjs/operators";
8
- import { ACCOUNT_DELIMITER } from "../../cube/cube.service";
9
- import { CombinationPickerBody, COMBINATION_PICKER_BODY } from "./combination-picker-body";
10
- import * as i0 from "@angular/core";
11
- import * as i1 from "@angular/forms";
12
- import * as i2 from "@angular/material/form-field";
13
- import * as i3 from "@angular/cdk/overlay";
14
- import * as i4 from "@angular/material/dialog";
15
- import * as i5 from "@angular/cdk/a11y";
16
- import * as i6 from "@angular/cdk/bidi";
17
- import * as i7 from "@angular/material/button";
18
- import * as i8 from "@angular/material/icon";
19
- const RECORDS_LIMIT = 50;
20
- export class CombinationPicker {
21
- constructor(ngControl, _formField, _overlay, _dialog, _vc, _injector, _fm, _elementRef, _dir) {
22
- this.ngControl = ngControl;
23
- this._formField = _formField;
24
- this._overlay = _overlay;
25
- this._dialog = _dialog;
26
- this._vc = _vc;
27
- this._injector = _injector;
28
- this._fm = _fm;
29
- this._elementRef = _elementRef;
30
- this._dir = _dir;
31
- this._required = false;
32
- this._disabled = false;
33
- this._onChange = (_) => { };
34
- this._onTouched = () => { };
35
- this._opened = false;
36
- this._limit = RECORDS_LIMIT;
37
- this.stateChanges = new Subject();
38
- this._divider = ACCOUNT_DELIMITER;
39
- this.optionSelected = new EventEmitter();
40
- this._description = null;
41
- this.descriptionChange = new EventEmitter();
42
- this.id = `account-picker-${CombinationPicker.nextId++}`;
43
- this.focused = false;
44
- this.errorState = false;
45
- this.controlType = 'account-picker-input';
46
- this.describedBy = '';
47
- this._destroy = new Subject();
48
- if (this.ngControl != null) {
49
- this.ngControl.valueAccessor = this;
50
- }
51
- _fm.monitor(_elementRef.nativeElement, true).subscribe(origin => {
52
- if (this.focused && !origin) {
53
- this._onTouched();
54
- }
55
- this.focused = !!origin;
56
- this.stateChanges.next();
57
- });
58
- }
59
- set limit(val) { this._limit = coerceNumberProperty(val); }
60
- get limit() { return this._limit; }
61
- set description(val) { this._description = val; }
62
- get description() { return this._description || ''; }
63
- get placeholder() {
64
- return this._placeholder;
65
- }
66
- set placeholder(plh) {
67
- this._placeholder = plh;
68
- this.stateChanges.next();
69
- }
70
- get empty() {
71
- return this._value === null;
72
- }
73
- get shouldLabelFloat() {
74
- return this.focused || !this.empty;
75
- }
76
- get required() {
77
- return this._required;
78
- }
79
- set required(req) {
80
- this._required = coerceBooleanProperty(req);
81
- this.stateChanges.next();
82
- }
83
- get disabled() { return this._disabled; }
84
- set disabled(value) {
85
- this._disabled = value;
86
- this.stateChanges.next();
87
- }
88
- setDescribedByIds(ids) {
89
- this.describedBy = ids.join(' ');
90
- }
91
- onContainerClick(evt) {
92
- if (evt.target.tagName !== 'INPUT') {
93
- }
94
- this._open();
95
- }
96
- open(evt) {
97
- this._open();
98
- evt.stopPropagation();
99
- }
100
- writeValue(obj) {
101
- this.value = obj;
102
- }
103
- registerOnChange(fn) {
104
- this._onChange = fn;
105
- }
106
- registerOnTouched(fn) {
107
- this._onTouched = fn;
108
- }
109
- setDisabledState(isDisabled) {
110
- this.disabled = isDisabled;
111
- }
112
- get value() {
113
- return this._value;
114
- }
115
- set value(value) {
116
- this._value = value;
117
- this.stateChanges.next();
118
- }
119
- ngOnInit() {
120
- }
121
- ngDoCheck() {
122
- if (this.ngControl) {
123
- this.errorState = this.ngControl.invalid && this.ngControl.touched;
124
- this.stateChanges.next();
125
- }
126
- }
127
- _keyDown(evt) {
128
- if (evt.altKey && evt.keyCode === DOWN_ARROW)
129
- this._open();
130
- else if (evt.keyCode)
131
- return;
132
- evt.preventDefault();
133
- }
134
- _open() {
135
- if (this._opened)
136
- return;
137
- this._onTouched();
138
- const data = {
139
- divider: this._divider,
140
- displayDivider: this._displayDivider,
141
- limit: this._limit,
142
- value: this._value,
143
- cube: this.cube,
144
- exploreSettings: this.exploreSettings
145
- };
146
- if (this.touchUi) {
147
- this._dialogRef = this._dialog.open(CombinationPickerBody, {
148
- direction: this._dir.value,
149
- data,
150
- maxHeight: '90vh'
151
- });
152
- this._attach(this._dialogRef.componentInstance);
153
- }
154
- else {
155
- if (!this._overlayRef) {
156
- this._overlayRef = this._createOverlayRef();
157
- const injector = Injector.create([{
158
- provide: COMBINATION_PICKER_BODY, useValue: data
159
- }], this._injector);
160
- this._portal = new ComponentPortal(CombinationPickerBody, this._vc, injector);
161
- }
162
- else
163
- this._reposition();
164
- const componentRef = this._overlayRef.attach(this._portal);
165
- this._attach(componentRef.instance);
166
- this._opened = true;
167
- }
168
- }
169
- _attach(body) {
170
- body.modeChange.
171
- subscribe(() => setTimeout(() => this._reposition(), 0));
172
- body.selectionChange.
173
- subscribe(e => {
174
- const { value, description } = e;
175
- this.value = value;
176
- this.description = description;
177
- this.descriptionChange.emit(description);
178
- this._onChange(this.value);
179
- this.close();
180
- this.optionSelected.emit(e);
181
- });
182
- }
183
- _reposition() {
184
- const el = this._getConnectedOverlayOrigin();
185
- this._overlayRef.updateSize({ minWidth: `${el.nativeElement.getBoundingClientRect().width}px` });
186
- }
187
- _createOverlayRef() {
188
- const el = this._getConnectedOverlayOrigin();
189
- const overlayRef = this._overlay.create({
190
- positionStrategy: this._overlay.position().flexibleConnectedTo(el).
191
- withViewportMargin(8).
192
- withFlexibleDimensions().
193
- withPositions([{ originX: 'start', originY: 'bottom', overlayX: 'start', overlayY: 'top' },
194
- { originX: 'start', originY: 'top', overlayX: 'start', overlayY: 'bottom' }]),
195
- hasBackdrop: true,
196
- direction: this._dir.value,
197
- backdropClass: 'cdk-overlay-transparent-backdrop',
198
- minWidth: `${el.nativeElement.getBoundingClientRect().width}px`,
199
- panelClass: 'home-panel'
200
- });
201
- merge(overlayRef.backdropClick(), overlayRef.keydownEvents().
202
- pipe(filter(e => e.keyCode === ESCAPE || (e.keyCode === UP_ARROW && e.altKey)), tap(e => e.stopPropagation()))).
203
- subscribe(() => this.close());
204
- return overlayRef;
205
- }
206
- _getConnectedOverlayOrigin() {
207
- return this._formField ? this._formField.getConnectedOverlayOrigin() : this._elementRef;
208
- }
209
- close() {
210
- if (this._overlayRef)
211
- this._overlayRef.detach();
212
- else
213
- this._dialogRef.close();
214
- this._opened = false;
215
- }
216
- ngOnDestroy() {
217
- this._destroy.next();
218
- this._destroy.complete();
219
- this._fm.stopMonitoring(this._elementRef.nativeElement);
220
- this.optionSelected.complete();
221
- this.descriptionChange.complete();
222
- this.stateChanges.complete();
223
- }
224
- }
225
- CombinationPicker.nextId = 0;
226
- CombinationPicker.ɵfac = function CombinationPicker_Factory(t) { return new (t || CombinationPicker)(i0.ɵɵdirectiveInject(i1.NgControl, 10), i0.ɵɵdirectiveInject(i2.MatFormField, 8), i0.ɵɵdirectiveInject(i3.Overlay), i0.ɵɵdirectiveInject(i4.MatDialog), i0.ɵɵdirectiveInject(i0.ViewContainerRef), i0.ɵɵdirectiveInject(i0.Injector), i0.ɵɵdirectiveInject(i5.FocusMonitor), i0.ɵɵdirectiveInject(i0.ElementRef), i0.ɵɵdirectiveInject(i6.Directionality)); };
227
- CombinationPicker.ɵcmp = /*@__PURE__*/ i0.ɵɵdefineComponent({ type: CombinationPicker, selectors: [["bizdoc-combination-picker"]], hostVars: 4, hostBindings: function CombinationPicker_HostBindings(rf, ctx) { if (rf & 2) {
228
- i0.ɵɵhostProperty("id", ctx.id);
229
- i0.ɵɵattribute("aria-describedby", ctx.describedBy);
230
- i0.ɵɵclassProp("floating", ctx.shouldLabelFloat);
231
- } }, inputs: { _divider: ["divider", "_divider"], _displayDivider: ["displayDivider", "_displayDivider"], limit: "limit", cube: "cube", exploreSettings: "exploreSettings", description: "description", touchUi: "touchUi", placeholder: "placeholder", required: "required", disabled: "disabled", value: "value" }, outputs: { optionSelected: "optionSelected", descriptionChange: "descriptionChange" }, features: [i0.ɵɵProvidersFeature([{ provide: MatFormFieldControl, useExisting: CombinationPicker }])], decls: 6, vars: 6, consts: [[1, "account-picker-element"], [1, "mat-input-element", 3, "disabled", "value", "keydown"], [1, "mat-form-field-suffix"], ["mat-icon-button", "", "matSuffix", "", "tabindex", "-1", 3, "disableRipple", "disabled", "click"]], template: function CombinationPicker_Template(rf, ctx) { if (rf & 1) {
232
- i0.ɵɵelementStart(0, "div", 0)(1, "textarea", 1);
233
- i0.ɵɵlistener("keydown", function CombinationPicker_Template_textarea_keydown_1_listener($event) { return ctx._keyDown($event); });
234
- i0.ɵɵelementEnd();
235
- i0.ɵɵelementStart(2, "div", 2)(3, "button", 3);
236
- i0.ɵɵlistener("click", function CombinationPicker_Template_button_click_3_listener($event) { return ctx.open($event); });
237
- i0.ɵɵelementStart(4, "mat-icon");
238
- i0.ɵɵtext(5, "arrow_drop_down");
239
- i0.ɵɵelementEnd()()()();
240
- } if (rf & 2) {
241
- i0.ɵɵadvance(1);
242
- i0.ɵɵproperty("disabled", ctx.disabled)("value", ctx.description);
243
- i0.ɵɵadvance(2);
244
- i0.ɵɵclassProp("mat-warn", ctx.errorState);
245
- i0.ɵɵproperty("disableRipple", true)("disabled", ctx.disabled);
246
- } }, dependencies: [i2.MatSuffix, i7.MatButton, i8.MatIcon], styles: [".account-picker-element[_ngcontent-%COMP%]{display:flex;flex-direction:row}.account-picker-element[_ngcontent-%COMP%] textarea[_ngcontent-%COMP%]{resize:none;flex:auto}"] });
247
- (function () { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassMetadata(CombinationPicker, [{
248
- type: Component,
249
- args: [{ selector: 'bizdoc-combination-picker', providers: [{ provide: MatFormFieldControl, useExisting: CombinationPicker }], host: {
250
- '[class.floating]': 'shouldLabelFloat',
251
- '[attr.aria-describedby]': 'describedBy'
252
- }, template: "<div class=\"account-picker-element\">\r\n <textarea class=\"mat-input-element\" [disabled]=\"disabled\" (keydown)=\"_keyDown($event)\" [value]=\"description\"></textarea>\r\n <div class=\"mat-form-field-suffix\">\r\n <button mat-icon-button [disableRipple]=true (click)=\"open($event)\" matSuffix [disabled]=\"disabled\" tabindex=\"-1\" [class.mat-warn]=\"errorState\"><mat-icon>arrow_drop_down</mat-icon></button>\r\n </div>\r\n</div>\r\n", styles: [".account-picker-element{display:flex;flex-direction:row}.account-picker-element textarea{resize:none;flex:auto}\n"] }]
253
- }], function () { return [{ type: i1.NgControl, decorators: [{
254
- type: Optional
255
- }, {
256
- type: Self
257
- }] }, { type: i2.MatFormField, decorators: [{
258
- type: Optional
259
- }] }, { type: i3.Overlay }, { type: i4.MatDialog }, { type: i0.ViewContainerRef }, { type: i0.Injector }, { type: i5.FocusMonitor }, { type: i0.ElementRef }, { type: i6.Directionality }]; }, { _divider: [{
260
- type: Input,
261
- args: ['divider']
262
- }], _displayDivider: [{
263
- type: Input,
264
- args: ['displayDivider']
265
- }], limit: [{
266
- type: Input
267
- }], cube: [{
268
- type: Input
269
- }], exploreSettings: [{
270
- type: Input
271
- }], optionSelected: [{
272
- type: Output
273
- }], description: [{
274
- type: Input
275
- }], descriptionChange: [{
276
- type: Output
277
- }], id: [{
278
- type: HostBinding
279
- }], touchUi: [{
280
- type: Input
281
- }], placeholder: [{
282
- type: Input
283
- }], shouldLabelFloat: [{
284
- type: HostBinding,
285
- args: ['class.floating']
286
- }], required: [{
287
- type: Input
288
- }], disabled: [{
289
- type: Input
290
- }], describedBy: [{
291
- type: HostBinding,
292
- args: ['attr.aria-describedby']
293
- }], value: [{
294
- type: Input
295
- }] }); })();
296
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29tYmluYXRpb24tcGlja2VyLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vbGlicmFyaWVzL2NvcmUvc3JjL2xpYi9jb3JlL2lucHV0cy9jb21iaW5hdGlvbi1waWNrZXIudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi9saWJyYXJpZXMvY29yZS9zcmMvbGliL2NvcmUvaW5wdXRzL2NvbWJpbmF0aW9uLXBpY2tlci5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxTQUFTLEVBQWdDLEtBQUssRUFBRSxZQUFZLEVBQUUsTUFBTSxFQUFFLFFBQVEsRUFBYSxXQUFXLEVBQUUsSUFBSSxFQUFtQixRQUFRLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFHeEssT0FBTyxFQUFFLGVBQWUsRUFBRSxNQUFNLHFCQUFxQixDQUFDO0FBQ3RELE9BQU8sRUFBZ0IsbUJBQW1CLEVBQUUsTUFBTSw4QkFBOEIsQ0FBQztBQUlqRixPQUFPLEVBQUUsb0JBQW9CLEVBQUUscUJBQXFCLEVBQUUsTUFBTSx1QkFBdUIsQ0FBQztBQUNwRixPQUFPLEVBQUUsUUFBUSxFQUFFLE1BQU0sRUFBRSxVQUFVLEVBQUUsTUFBTSx1QkFBdUIsQ0FBQztBQUNyRSxPQUFPLEVBQUUsS0FBSyxFQUFFLE9BQU8sRUFBRSxNQUFNLE1BQU0sQ0FBQztBQUN0QyxPQUFPLEVBQUUsTUFBTSxFQUFFLEdBQUcsRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBQzdDLE9BQU8sRUFBRSxpQkFBaUIsRUFBRSxNQUFNLHlCQUF5QixDQUFDO0FBQzVELE9BQU8sRUFBdUIscUJBQXFCLEVBQTRCLHVCQUF1QixFQUFtQixNQUFNLDJCQUEyQixDQUFDOzs7Ozs7Ozs7O0FBRTNKLE1BQU0sYUFBYSxHQUFHLEVBQUUsQ0FBQztBQVl6QixNQUFNLE9BQU8saUJBQWlCO0lBNkY1QixZQUF1QyxTQUFvQixFQUFzQixVQUF3QixFQUMvRixRQUFpQixFQUFVLE9BQWtCLEVB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Q3RDLHlCQUF5QixFQUFFLGFBQWE7aUJBQ3pDOztzQkErRlksUUFBUTs7c0JBQUksSUFBSTs7c0JBQWlDLFFBQVE7Nk1BL0VwRCxRQUFRO2tCQUF6QixLQUFLO21CQUFDLFNBQVM7WUFDUyxlQUFlO2tCQUF2QyxLQUFLO21CQUFDLGdCQUFnQjtZQUNWLEtBQUs7a0JBQWpCLEtBQUs7WUFFRyxJQUFJO2tCQUFaLEtBQUs7WUFDRyxlQUFlO2tCQUF2QixLQUFLO1lBRUcsY0FBYztrQkFEdEIsTUFBTTtZQUdNLFdBQVc7a0JBQXZCLEtBQUs7WUFHRyxpQkFBaUI7a0JBRHpCLE1BQU07WUFFaUIsRUFBRTtrQkFBekIsV0FBVztZQUNILE9BQU87a0JBQWYsS0FBSztZQUNPLFdBQVc7a0JBQXZCLEtBQUs7WUFZRixnQkFBZ0I7a0JBRG5CLFdBQVc7bUJBQUMsZ0JBQWdCO1lBS3pCLFFBQVE7a0JBRFgsS0FBSztZQVNGLFFBQVE7a0JBRFgsS0FBSztZQVFnQyxXQUFXO2tCQUFoRCxXQUFXO21CQUFDLHVCQUF1QjtZQXlCdkIsS0FBSztrQkFBakIsS0FBSyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENvbXBvbmVudCwgVmlld0NvbnRhaW5lclJlZiwgRWxlbWVudFJlZiwgSW5wdXQsIEV2ZW50RW1pdHRlciwgT3V0cHV0LCBPcHRpb25hbCwgT25EZXN0cm95LCBIb3N0QmluZGluZywgU2VsZiwgT25Jbml0LCBEb0NoZWNrLCBJbmplY3RvciB9IGZyb20gXCJAYW5ndWxhci9jb3JlXCI7XHJcbmltcG9ydCB7IENvbnRyb2xWYWx1ZUFjY2Vzc29yLCBOZ0NvbnRyb2wgfSBmcm9tIFwiQGFuZ3VsYXIvZm9ybXNcIjtcclxuaW1wb3J0IHsgT3ZlcmxheSwgT3ZlcmxheVJlZiB9IGZyb20gXCJAYW5ndWxhci9jZGsvb3ZlcmxheVwiO1xyXG5pbXBvcnQgeyBDb21wb25lbnRQb3J0YWwgfSBmcm9tIFwiQGFuZ3VsYXIvY2RrL3BvcnRhbFwiO1xyXG5pbXBvcnQgeyBNYXRGb3JtRmllbGQsIE1hdEZvcm1GaWVsZENvbnRyb2wgfSBmcm9tIFwiQGFuZ3VsYXIvbWF0ZXJpYWwvZm9ybS1maWVsZFwiO1xyXG5pbXBvcnQgeyBNYXREaWFsb2csIE1hdERpYWxvZ1JlZiB9IGZyb20gXCJAYW5ndWxhci9tYXRlcmlhbC9kaWFsb2dcIjtcclxuaW1wb3J0IHsgRm9jdXNNb25pdG9yIH0gZnJvbSBcIkBhbmd1bGFyL2Nkay9hMTF5XCI7XHJcbmltcG9ydCB7IERpcmVjdGlvbmFsaXR5IH0gZnJvbSBcIkBhbmd1bGFyL2Nkay9iaWRpXCI7XHJcbmltcG9ydCB7IGNvZXJjZU51bWJlclByb3BlcnR5LCBjb2VyY2VCb29sZWFuUHJvcGVydHkgfSBmcm9tIFwiQGFuZ3VsYXIvY2RrL2NvZXJjaW9uXCI7XHJcbmltcG9ydCB7IFVQX0FSUk9XLCBFU0NBUEUsIERPV05fQVJST1cgfSBmcm9tIFwiQGFuZ3VsYXIvY2RrL2tleWNvZGVzXCI7XHJcbmltcG9ydCB7IG1lcmdlLCBTdWJqZWN0IH0gZnJvbSBcInJ4anNcIjtcclxuaW1wb3J0IHsgZmlsdGVyLCB0YXAgfSBmcm9tIFwicnhqcy9vcGVyYXRvcnNcIjtcclxuaW1wb3J0IHsgQUNDT1VOVF9ERUxJTUlURVIgfSBmcm9tIFwiLi4vLi4vY3ViZS9jdWJlLnNlcnZpY2VcIjtcclxuaW1wb3J0IHsgQ29tYmluYXRpb25Cb2R5RGF0YSwgQ29tYmluYXRpb25QaWNrZXJCb2R5LCBDb21iaW5hdGlvblNlbGVjdGVkRXZlbnQsIENPTUJJTkFUSU9OX1BJQ0tFUl9CT0RZLCBFeHBsb3JlU2V0dGluZ3MgfSBmcm9tIFwiLi9jb21iaW5hdGlvbi1waWNrZXItYm9keVwiO1xyXG5cclxuY29uc3QgUkVDT1JEU19MSU1JVCA9IDUwO1xyXG5cclxuQENvbXBvbmVudCh7XHJcbiAgc2VsZWN0b3I6ICdiaXpkb2MtY29tYmluYXRpb24tcGlja2VyJyxcclxuICB0ZW1wbGF0ZVVybDogJ2NvbWJpbmF0aW9uLXBpY2tlci5odG1sJyxcclxuICBzdHlsZVVybHM6IFsnY29tYmluYXRpb24tcGlja2VyLnNjc3MnXSxcclxuICBwcm92aWRlcnM6IFt7IHByb3ZpZGU6IE1hdEZvcm1GaWVsZENvbnRyb2wsIHVzZUV4aXN0aW5nOiBDb21iaW5hdGlvblBpY2tlciB9XSxcclxuICBob3N0OiB7XHJcbiAgICAnW2NsYXNzLmZsb2F0aW5nXSc6ICdzaG91bGRMYWJlbEZsb2F0JyxcclxuICAgICdbYXR0ci5hcmlhLWRlc2NyaWJlZGJ5XSc6ICdkZXNjcmliZWRCeSdcclxuICB9XHJcbn0pXHJcbmV4cG9ydCBjbGFzcyBDb21iaW5hdGlvblBpY2tlciBpbXBsZW1lbnRzIE1hdEZvcm1GaWVsZENvbnRyb2w8c3RyaW5nPiwgQ29udHJvbFZhbHVlQWNjZXNzb3IsIE9uSW5pdCwgRG9DaGVjaywgT25EZXN0cm95IHtcclxuICBwcml2YXRlIHN0YXRpYyBuZXh0SWQgPSAwO1xyXG4gIHByaXZhdGUgX3BsYWNlaG9sZGVyOiBzdHJpbmc7XHJcbiAgcHJpdmF0ZSBfcmVxdWlyZWQgPSBmYWxzZTtcclxuICBwcml2YXRlIF9kaXNhYmxlZCA9IGZhbHNlO1xyXG4gIHByaXZhdGUgX29uQ2hhbmdlID0gKF86IGFueSkgPT4geyB9O1xyXG4gIHByaXZhdGUgX29uVG91Y2hlZCA9ICgpID0+IHsgfTtcclxuICBwcml2YXRlIF92YWx1ZTogc3RyaW5nO1xyXG4gIHByaXZhdGUgX29wZW5lZCA9IGZhbHNlO1xyXG4gIHByaXZhdGUgX2xpbWl0OiBudW1iZXIgPSBSRUNPUkRTX0xJTUlUO1xyXG4gIHByaXZhdGUgX292ZXJsYXlSZWY6IE92ZXJsYXlSZWY7XHJcbiAgcHJpdmF0ZSBfcG9ydGFsOiBDb21wb25lbnRQb3J0YWw8Q29tYmluYXRpb25QaWNrZXJCb2R5PjtcclxuICBwcml2YXRlIF9kaWFsb2dSZWY6IE1hdERpYWxvZ1JlZjxDb21iaW5hdGlvblBpY2tlckJvZHk+O1xyXG4gIHJlYWRvbmx5IHN0YXRlQ2hhbmdlcyA9IG5ldyBTdWJqZWN0PHZvaWQ+KCk7XHJcbiAgQElucHV0KCdkaXZpZGVyJykgX2RpdmlkZXI6IHN0cmluZyA9IEFDQ09VTlRfREVMSU1JVEVSO1xyXG4gIEBJbnB1dCgnZGlzcGxheURpdmlkZXInKSBfZGlzcGxheURpdmlkZXI6IHN0cmluZztcclxuICBASW5wdXQoKSBzZXQgbGltaXQodmFsOiBudW1iZXIpIHsgdGhpcy5fbGltaXQgPSBjb2VyY2VOdW1iZXJQcm9wZXJ0eSh2YWwpOyB9XHJcbiAgZ2V0IGxpbWl0KCk6IG51bWJlciB7IHJldHVybiB0aGlzLl9saW1pdDsgfVxyXG4gIEBJbnB1dCgpIGN1YmU6IHN0cmluZztcclxuICBASW5wdXQoKSBleHBsb3JlU2V0dGluZ3M/OiBFeHBsb3JlU2V0dGluZ3M7XHJcbiAgQE91dHB1dCgpXHJcbiAgcmVhZG9ubHkgb3B0aW9uU2VsZWN0ZWQgPSBuZXcgRXZlbnRFbWl0dGVyPENvbWJpbmF0aW9uU2VsZWN0ZWRFdmVudD4oKTtcclxuICBwcml2YXRlIF9kZXNjcmlwdGlvbjogc3RyaW5nID0gbnVsbDtcclxuICBASW5wdXQoKSBzZXQgZGVzY3JpcHRpb24odmFsOiBzdHJpbmcpIHsgdGhpcy5fZGVzY3JpcHRpb24gPSB2YWw7IH1cclxuICBnZXQgZGVzY3JpcHRpb24oKTogc3RyaW5nIHsgcmV0dXJuIHRoaXMuX2Rlc2NyaXB0aW9uIHx8ICcnOyB9XHJcbiAgQE91dHB1dCgpXHJcbiAgcmVhZG9ubHkgZGVzY3JpcHRpb25DaGFuZ2UgPSBuZXcgRXZlbnRFbWl0dGVyPHN0cmluZz4oKTtcclxuICBASG9zdEJpbmRpbmcoKSByZWFkb25seSBpZCA9IGBhY2NvdW50LXBpY2tlci0ke0NvbWJpbmF0aW9uUGlja2VyLm5leHRJZCsrfWA7XHJcbiAgQElucHV0KCkgdG91Y2hVaTogYm9vbGVhbjtcclxuICBASW5wdXQoKSBnZXQgcGxhY2Vob2xkZXIoKSB7XHJcbiAgICByZXR1cm4gdGhpcy5fcGxhY2Vob2xkZXI7XHJcbiAgfVxyXG4gIHNldCBwbGFjZWhvbGRlcihwbGgpIHtcclxuICAgIHRoaXMuX3BsYWNlaG9sZGVyID0gcGxoO1xyXG4gICAgdGhpcy5zdGF0ZUNoYW5nZXMubmV4dCgpO1xyXG4gIH1cclxuICBmb2N1c2VkID0gZmFsc2U7XHJcbiAgZ2V0IGVtcHR5KCk6IGJvb2xlYW4ge1xyXG4gICAgcmV0dXJuIHRoaXMuX3ZhbHVlID09PSBudWxsO1xyXG4gIH1cclxuICBASG9zdEJpbmRpbmcoJ2NsYXNzLmZsb2F0aW5nJylcclxuICBnZXQgc2hvdWxkTGFiZWxGbG9hdCgpIHtcclxuICAgIHJldHVybiB0aGlzLmZvY3VzZWQgfHwgIXRoaXMuZW1wdHk7XHJcbiAgfVxyXG4gIEBJbnB1dCgpXHJcbiAgZ2V0IHJlcXVpcmVkKCkge1xyXG4gICAgcmV0dXJuIHRoaXMuX3JlcXVpcmVkO1xyXG4gIH1cclxuICBzZXQgcmVxdWlyZWQocmVxKSB7XHJcbiAgICB0aGlzLl9yZXF1aXJlZCA9IGNvZXJjZUJvb2xlYW5Qcm9wZXJ0eShyZXEpO1xyXG4gICAgdGhpcy5zdGF0ZUNoYW5nZXMubmV4dCgpO1xyXG4gIH1cclxuICBASW5wdXQoKVxyXG4gIGdldCBkaXNhYmxlZCgpOiBib29sZWFuIHsgcmV0dXJuIHRoaXMuX2Rpc2FibGVkOyB9XHJcbiAgc2V0IGRpc2FibGVkKHZhbHVlOiBib29sZWFuKSB7XHJcbiAgICB0aGlzLl9kaXNhYmxlZCA9IHZhbHVlO1xyXG4gICAgdGhpcy5zdGF0ZUNoYW5nZXMubmV4dCgpO1xyXG4gIH1cclxuICBlcnJvclN0YXRlID0gZmFsc2U7XHJcbiAgY29udHJvbFR5cGU/OiBzdHJpbmcgPSAnYWNjb3VudC1waWNrZXItaW5wdXQnO1xyXG4gIEBIb3N0QmluZGluZygnYXR0ci5hcmlhLWRlc2NyaWJlZGJ5JykgZGVzY3JpYmVkQnkgPSAnJztcclxuICBzZXREZXNjcmliZWRCeUlkcyhpZHM6IHN0cmluZ1tdKSB7XHJcbiAgICB0aGlzLmRlc2NyaWJlZEJ5ID0gaWRzLmpvaW4oJyAnKTtcclxuICB9XHJcbiAgb25Db250YWluZXJDbGljayhldnQ6IE1vdXNlRXZlbnQpOiB2b2lkIHtcclxuICAgIGlmICgoZXZ0LnRhcmdldCBhcyBFbGVtZW50KS50YWdOYW1lICE9PSAnSU5QVVQnKSB7XHJcbiAgICB9XHJcbiAgICB0aGlzLl9vcGVuKCk7XHJcbiAgfVxyXG4gIG9wZW4oZXZ0OiBFdmVudCkge1xyXG4gICAgdGhpcy5fb3BlbigpO1xyXG4gICAgZXZ0LnN0b3BQcm9wYWdhdGlvbigpO1xyXG4gIH1cclxuICB3cml0ZVZhbHVlKG9iajogYW55KTogdm9pZCB7XHJcbiAgICB0aGlzLnZhbHVlID0gb2JqO1xyXG4gIH1cclxuICByZWdpc3Rlck9uQ2hhbmdlKGZuOiBhbnkpOiB2b2lkIHtcclxuICAgIHRoaXMuX29uQ2hhbmdlID0gZm47XHJcbiAgfVxyXG4gIHJlZ2lzdGVyT25Ub3VjaGVkKGZuOiBhbnkpOiB2b2lkIHtcclxuICAgIHRoaXMuX29uVG91Y2hlZCA9IGZuO1xyXG4gIH1cclxuICBzZXREaXNhYmxlZFN0YXRlPyhpc0Rpc2FibGVkOiBib29sZWFuKTogdm9pZCB7XHJcbiAgICB0aGlzLmRpc2FibGVkID0gaXNEaXNhYmxlZDtcclxuICB9XHJcbiAgQElucHV0KCkgZ2V0IHZhbHVlKCk6IHN0cmluZyB8IG51bGwge1xyXG4gICAgcmV0dXJuIHRoaXMuX3ZhbHVlO1xyXG4gIH1cclxuICBzZXQgdmFsdWUodmFsdWU6IHN0cmluZyB8IG51bGwpIHtcclxuICAgIHRoaXMuX3ZhbHVlID0gdmFsdWU7XHJcbiAgICB0aGlzLnN0YXRlQ2hhbmdlcy5uZXh0KCk7XHJcbiAgfVxyXG4gIHByaXZhdGUgcmVhZG9ubHkgX2Rlc3Ryb3kgPSBuZXcgU3ViamVjdDx2b2lkPigpO1xyXG4gIGNvbnN0cnVjdG9yKEBPcHRpb25hbCgpIEBTZWxmKCkgcHVibGljIG5nQ29udHJvbDogTmdDb250cm9sLCBAT3B0aW9uYWwoKSBwcml2YXRlIF9mb3JtRmllbGQ6IE1hdEZvcm1GaWVsZCxcclxuICAgIHByaXZhdGUgX292ZXJsYXk6IE92ZXJsYXksIHByaXZhdGUgX2RpYWxvZzogTWF0RGlhbG9nLFxyXG4gICAgcHJpdmF0ZSBfdmM6IFZpZXdDb250YWluZXJSZWYsXHJcbiAgICBwcml2YXRlIF9pbmplY3RvcjogSW5qZWN0b3IsXHJcbiAgICBwcml2YXRlIF9mbTogRm9jdXNNb25pdG9yLFxyXG4gICAgcHJpdmF0ZSBfZWxlbWVudFJlZjogRWxlbWVudFJlZixcclxuICAgIHByaXZhdGUgX2RpcjogRGlyZWN0aW9uYWxpdHkpIHtcclxuICAgIGlmICh0aGlzLm5nQ29udHJvbCAhPSBudWxsKSB7XHJcbiAgICAgIHRoaXMubmdDb250cm9sLnZhbHVlQWNjZXNzb3IgPSB0aGlzO1xyXG4gICAgfVxyXG4gICAgX2ZtLm1vbml0b3IoX2VsZW1lbnRSZWYubmF0aXZlRWxlbWVudCwgdHJ1ZSkuc3Vic2NyaWJlKG9yaWdpbiA9PiB7XHJcbiAgICAgIGlmICh0aGlzLmZvY3VzZWQgJiYgIW9yaWdpbikge1xyXG4gICAgICAgIHRoaXMuX29uVG91Y2hlZCgpO1xyXG4gICAgICB9XHJcbiAgICAgIHRoaXMuZm9jdXNlZCA9ICEhb3JpZ2luO1xyXG4gICAgICB0aGlzLnN0YXRlQ2hhbmdlcy5uZXh0KCk7XHJcbiAgICB9KTtcclxuICB9XHJcbiAgbmdPbkluaXQoKTogdm9pZCB7XHJcbiAgfVxyXG4gIG5nRG9DaGVjaygpOiB2b2lkIHtcclxuICAgIGlmICh0aGlzLm5nQ29udHJvbCkge1xyXG4gICAgICB0aGlzLmVycm9yU3RhdGUgPSB0aGlzLm5nQ29udHJvbC5pbnZhbGlkICYmIHRoaXMubmdDb250cm9sLnRvdWNoZWQ7XHJcbiAgICAgIHRoaXMuc3RhdGVDaGFuZ2VzLm5leHQoKTtcclxuICAgIH1cclxuICB9XHJcbiAgX2tleURvd24oZXZ0OiBLZXlib2FyZEV2ZW50KSB7XHJcbiAgICBpZiAoZXZ0LmFsdEtleSAmJiBldnQua2V5Q29kZSA9PT0gRE9XTl9BUlJPVylcclxuICAgICAgdGhpcy5fb3BlbigpO1xyXG4gICAgZWxzZSBpZiAoZXZ0LmtleUNvZGUpXHJcbiAgICAgIHJldHVybjtcclxuICAgIGV2dC5wcmV2ZW50RGVmYXVsdCgpO1xyXG4gIH1cclxuICBwcml2YXRlIF9vcGVuKCkge1xyXG4gICAgaWYgKHRoaXMuX29wZW5lZCkgcmV0dXJuO1xyXG4gICAgdGhpcy5fb25Ub3VjaGVkKCk7XHJcbiAgICBjb25zdCBkYXRhID0ge1xyXG4gICAgICBkaXZpZGVyOiB0aGlzLl9kaXZpZGVyLFxyXG4gICAgICBkaXNwbGF5RGl2aWRlcjogdGhpcy5fZGlzcGxheURpdmlkZXIsXHJcbiAgICAgIGxpbWl0OiB0aGlzLl9saW1pdCxcclxuICAgICAgdmFsdWU6IHRoaXMuX3ZhbHVlLFxyXG4gICAgICBjdWJlOiB0aGlzLmN1YmUsXHJcbiAgICAgIGV4cGxvcmVTZXR0aW5nczogdGhpcy5leHBsb3JlU2V0dGluZ3NcclxuICAgIH0gYXMgQ29tYmluYXRpb25Cb2R5RGF0YTtcclxuICAgIGlmICh0aGlzLnRvdWNoVWkpIHtcclxuICAgICAgdGhpcy5fZGlhbG9nUmVmID0gdGhpcy5fZGlhbG9nLm9wZW4oQ29tYmluYXRpb25QaWNrZXJCb2R5LCB7XHJcbiAgICAgICAgZGlyZWN0aW9uOiB0aGlzLl9kaXIudmFsdWUsXHJcbiAgICAgICAgZGF0YSxcclxuICAgICAgICBtYXhIZWlnaHQ6ICc5MHZoJ1xyXG4gICAgICB9KTtcclxuICAgICAgdGhpcy5fYXR0YWNoKHRoaXMuX2RpYWxvZ1JlZi5jb21wb25lbnRJbnN0YW5jZSk7XHJcbiAgICB9XHJcbiAgICBlbHNlIHtcclxuICAgICAgaWYgKCF0aGlzLl9vdmVybGF5UmVmKSB7XHJcbiAgICAgICAgdGhpcy5fb3ZlcmxheVJlZiA9IHRoaXMuX2NyZWF0ZU92ZXJsYXlSZWYoKTtcclxuICAgICAgICBjb25zdCBpbmplY3RvciA9IEluamVjdG9yLmNyZWF0ZShbe1xyXG4gICAgICAgICAgcHJvdmlkZTogQ09NQklOQVRJT05fUElDS0VSX0JPRFksIHVzZVZhbHVlOiBkYXRhXHJcbiAgICAgICAgfV0sIHRoaXMuX2luamVjdG9yXHJcbiAgICAgICAgKTtcclxuICAgICAgICB0aGlzLl9wb3J0YWwgPSBuZXcgQ29tcG9uZW50UG9ydGFsKENvbWJpbmF0aW9uUGlja2VyQm9keSwgdGhpcy5fdmMsIGluamVjdG9yKTtcclxuICAgICAgfVxyXG4gICAgICBlbHNlXHJcbiAgICAgICAgdGhpcy5fcmVwb3NpdGlvbigpO1xyXG4gICAgICBjb25zdCBjb21wb25lbnRSZWYgPSB0aGlzLl9vdmVybGF5UmVmLmF0dGFjaCh0aGlzLl9wb3J0YWwpO1xyXG4gICAgICB0aGlzLl9hdHRhY2goY29tcG9uZW50UmVmLmluc3RhbmNlKTtcclxuICAgICAgdGhpcy5fb3BlbmVkID0gdHJ1ZTtcclxuICAgIH1cclxuICB9XHJcbiAgcHJpdmF0ZSBfYXR0YWNoKGJvZHk6IENvbWJpbmF0aW9uUGlja2VyQm9keSkge1xyXG4gICAgYm9keS5tb2RlQ2hhbmdlLlxyXG4gICAgICBzdWJzY3JpYmUoKCkgPT4gc2V0VGltZW91dCgoKSA9PiB0aGlzLl9yZXBvc2l0aW9uKCksIDApKTtcclxuICAgIGJvZHkuc2VsZWN0aW9uQ2hhbmdlLlxyXG4gICAgICBzdWJzY3JpYmUoZSA9PiB7XHJcbiAgICAgICAgY29uc3QgeyB2YWx1ZSwgZGVzY3JpcHRpb24gfSA9IGU7XHJcbiAgICAgICAgdGhpcy52YWx1ZSA9IHZhbHVlO1xyXG4gICAgICAgIHRoaXMuZGVzY3JpcHRpb24gPSBkZXNjcmlwdGlvbjtcclxuICAgICAgICB0aGlzLmRlc2NyaXB0aW9uQ2hhbmdlLmVtaXQoZGVzY3JpcHRpb24pO1xyXG4gICAgICAgIHRoaXMuX29uQ2hhbmdlKHRoaXMudmFsdWUpO1xyXG4gICAgICAgIHRoaXMuY2xvc2UoKTtcclxuICAgICAgICB0aGlzLm9wdGlvblNlbGVjdGVkLmVtaXQoZSk7XHJcbiAgICAgIH0pO1xyXG4gIH1cclxuICBwcml2YXRlIF9yZXBvc2l0aW9uKCkge1xyXG4gICAgY29uc3QgZWwgPSB0aGlzLl9nZXRDb25uZWN0ZWRPdmVybGF5T3JpZ2luKCk7XHJcbiAgICB0aGlzLl9vdmVybGF5UmVmLnVwZGF0ZVNpemUoeyBtaW5XaWR0aDogYCR7ZWwubmF0aXZlRWxlbWVudC5nZXRCb3VuZGluZ0NsaWVudFJlY3QoKS53aWR0aH1weGAgfSk7XHJcbiAgfVxyXG4gIHByaXZhdGUgX2NyZWF0ZU92ZXJsYXlSZWYoKTogT3ZlcmxheVJlZiB7XHJcbiAgICBjb25zdCBlbCA9IHRoaXMuX2dldENvbm5lY3RlZE92ZXJsYXlPcmlnaW4oKTtcclxuICAgIGNvbnN0IG92ZXJsYXlSZWYgPSB0aGlzLl9vdmVybGF5LmNyZWF0ZSh7XHJcbiAgICAgIHBvc2l0aW9uU3RyYXRlZ3k6IHRoaXMuX292ZXJsYXkucG9zaXRpb24oKS5mbGV4aWJsZUNvbm5lY3RlZFRvKGVsKS5cclxuICAgICAgICB3aXRoVmlld3BvcnRNYXJnaW4oOCkuXHJcbiAgICAgICAgd2l0aEZsZXhpYmxlRGltZW5zaW9ucygpLlxyXG4gICAgICAgIHdpdGhQb3NpdGlvbnMoW3sgb3JpZ2luWDogJ3N0YXJ0Jywgb3JpZ2luWTogJ2JvdHRvbScsIG92ZXJsYXlYOiAnc3RhcnQnLCBvdmVybGF5WTogJ3RvcCcgfSxcclxuICAgICAgICB7IG9yaWdpblg6ICdzdGFydCcsIG9yaWdpblk6ICd0b3AnLCBvdmVybGF5WDogJ3N0YXJ0Jywgb3ZlcmxheVk6ICdib3R0b20nIH1dKSxcclxuICAgICAgaGFzQmFja2Ryb3A6IHRydWUsXHJcbiAgICAgIGRpcmVjdGlvbjogdGhpcy5fZGlyLnZhbHVlLFxyXG4gICAgICBiYWNrZHJvcENsYXNzOiAnY2RrLW92ZXJsYXktdHJhbnNwYXJlbnQtYmFja2Ryb3AnLFxyXG4gICAgICBtaW5XaWR0aDogYCR7ZWwubmF0aXZlRWxlbWVudC5nZXRCb3VuZGluZ0NsaWVudFJlY3QoKS53aWR0aH1weGAsXHJcbiAgICAgIHBhbmVsQ2xhc3M6ICdob21lLXBhbmVsJ1xyXG4gICAgfSk7XHJcbiAgICBtZXJnZShvdmVybGF5UmVmLmJhY2tkcm9wQ2xpY2soKSwgb3ZlcmxheVJlZi5rZXlkb3duRXZlbnRzKCkuXHJcbiAgICAgIHBpcGUoZmlsdGVyKGUgPT4gZS5rZXlDb2RlID09PSBFU0NBUEUgfHwgKGUua2V5Q29kZSA9PT0gVVBfQVJST1cgJiYgZS5hbHRLZXkpKSxcclxuICAgICAgICB0YXAoZSA9PiBlLnN0b3BQcm9wYWdhdGlvbigpKSkpLlxyXG4gICAgICBzdWJzY3JpYmUoKCkgPT4gdGhpcy5jbG9zZSgpKTtcclxuICAgIHJldHVybiBvdmVybGF5UmVmO1xyXG4gIH1cclxuICBwcml2YXRlIF9nZXRDb25uZWN0ZWRPdmVybGF5T3JpZ2luKCk6IEVsZW1lbnRSZWYge1xyXG4gICAgcmV0dXJuIHRoaXMuX2Zvcm1GaWVsZCA/IHRoaXMuX2Zvcm1GaWVsZC5nZXRDb25uZWN0ZWRPdmVybGF5T3JpZ2luKCkgOiB0aGlzLl9lbGVtZW50UmVmO1xyXG4gIH1cclxuICBjbG9zZSgpIHtcclxuICAgIGlmICh0aGlzLl9vdmVybGF5UmVmKSB0aGlzLl9vdmVybGF5UmVmLmRldGFjaCgpO1xyXG4gICAgZWxzZSB0aGlzLl9kaWFsb2dSZWYuY2xvc2UoKTtcclxuICAgIHRoaXMuX29wZW5lZCA9IGZhbHNlO1xyXG4gIH1cclxuICBuZ09uRGVzdHJveSgpOiB2b2lkIHtcclxuICAgIHRoaXMuX2Rlc3Ryb3kubmV4dCgpO1xyXG4gICAgdGhpcy5fZGVzdHJveS5jb21wbGV0ZSgpO1xyXG4gICAgdGhpcy5fZm0uc3RvcE1vbml0b3JpbmcodGhpcy5fZWxlbWVudFJlZi5uYXRpdmVFbGVtZW50KTtcclxuICAgIHRoaXMub3B0aW9uU2VsZWN0ZWQuY29tcGxldGUoKTtcclxuICAgIHRoaXMuZGVzY3JpcHRpb25DaGFuZ2UuY29tcGxldGUoKTtcclxuICAgIHRoaXMuc3RhdGVDaGFuZ2VzLmNvbXBsZXRlKCk7XHJcbiAgfVxyXG59XHJcbiIsIjxkaXYgY2xhc3M9XCJhY2NvdW50LXBpY2tlci1lbGVtZW50XCI+XHJcbiAgPHRleHRhcmVhIGNsYXNzPVwibWF0LWlucHV0LWVsZW1lbnRcIiBbZGlzYWJsZWRdPVwiZGlzYWJsZWRcIiAoa2V5ZG93bik9XCJfa2V5RG93bigkZXZlbnQpXCIgW3ZhbHVlXT1cImRlc2NyaXB0aW9uXCI+PC90ZXh0YXJlYT5cclxuICA8ZGl2IGNsYXNzPVwibWF0LWZvcm0tZmllbGQtc3VmZml4XCI+XHJcbiAgICA8YnV0dG9uIG1hdC1pY29uLWJ1dHRvbiBbZGlzYWJsZVJpcHBsZV09dHJ1ZSAoY2xpY2spPVwib3BlbigkZXZlbnQpXCIgbWF0U3VmZml4IFtkaXNhYmxlZF09XCJkaXNhYmxlZFwiIHRhYmluZGV4PVwiLTFcIiBbY2xhc3MubWF0LXdhcm5dPVwiZXJyb3JTdGF0ZVwiPjxtYXQtaWNvbj5hcnJvd19kcm9wX2Rvd248L21hdC1pY29uPjwvYnV0dG9uPlxyXG4gIDwvZGl2PlxyXG48L2Rpdj5cclxuIl19
@@ -1,161 +0,0 @@
1
- import { Component, Input, Output, EventEmitter } from "@angular/core";
2
- import { debounceTime, takeUntil } from "rxjs/operators";
3
- import { Validators } from "@angular/forms";
4
- import { Subject } from "rxjs";
5
- import * as i0 from "@angular/core";
6
- import * as i1 from "../../cube/cube.service";
7
- import * as i2 from "@angular/forms";
8
- import * as i3 from "../session.service";
9
- import * as i4 from "@angular/common";
10
- import * as i5 from "@angular/material/core";
11
- import * as i6 from "@angular/material/form-field";
12
- import * as i7 from "@angular/material/select";
13
- import * as i8 from "../pipes/translate.pipe";
14
- function CombinationPool_mat_form_field_1_mat_option_4_Template(rf, ctx) { if (rf & 1) {
15
- i0.ɵɵelementStart(0, "mat-option");
16
- i0.ɵɵtext(1);
17
- i0.ɵɵpipe(2, "translate");
18
- i0.ɵɵpipe(3, "translate");
19
- i0.ɵɵelementEnd();
20
- } if (rf & 2) {
21
- i0.ɵɵadvance(1);
22
- i0.ɵɵtextInterpolate(i0.ɵɵpipeBind2(2, 1, "Dashes", i0.ɵɵpipeBind1(3, 4, "Clear")));
23
- } }
24
- function CombinationPool_mat_form_field_1_mat_option_5_Template(rf, ctx) { if (rf & 1) {
25
- i0.ɵɵelementStart(0, "mat-option", 6);
26
- i0.ɵɵtext(1);
27
- i0.ɵɵelementEnd();
28
- } if (rf & 2) {
29
- const key_r4 = ctx.$implicit;
30
- const a_r1 = i0.ɵɵnextContext().$implicit;
31
- const ctx_r3 = i0.ɵɵnextContext();
32
- i0.ɵɵproperty("value", key_r4);
33
- i0.ɵɵadvance(1);
34
- i0.ɵɵtextInterpolate(ctx_r3._values[a_r1.dataType][key_r4]);
35
- } }
36
- function CombinationPool_mat_form_field_1_Template(rf, ctx) { if (rf & 1) {
37
- i0.ɵɵelementStart(0, "mat-form-field", 2)(1, "mat-label");
38
- i0.ɵɵtext(2);
39
- i0.ɵɵelementEnd();
40
- i0.ɵɵelementStart(3, "mat-select", 3);
41
- i0.ɵɵtemplate(4, CombinationPool_mat_form_field_1_mat_option_4_Template, 4, 6, "mat-option", 4);
42
- i0.ɵɵtemplate(5, CombinationPool_mat_form_field_1_mat_option_5_Template, 2, 2, "mat-option", 5);
43
- i0.ɵɵelementEnd();
44
- i0.ɵɵelementStart(6, "mat-hint");
45
- i0.ɵɵtext(7);
46
- i0.ɵɵelementEnd()();
47
- } if (rf & 2) {
48
- const a_r1 = ctx.$implicit;
49
- const ctx_r0 = i0.ɵɵnextContext();
50
- i0.ɵɵproperty("appearance", ctx_r0.appearance);
51
- i0.ɵɵadvance(2);
52
- i0.ɵɵtextInterpolate(a_r1.title);
53
- i0.ɵɵadvance(1);
54
- i0.ɵɵproperty("formControlName", a_r1.name);
55
- i0.ɵɵadvance(1);
56
- i0.ɵɵproperty("ngIf", ctx_r0.form.controls[a_r1.name].value);
57
- i0.ɵɵadvance(1);
58
- i0.ɵɵproperty("ngForOf", ctx_r0._keys[a_r1.dataType]);
59
- i0.ɵɵadvance(2);
60
- i0.ɵɵtextInterpolate(ctx_r0.form.controls[a_r1.name].value);
61
- } }
62
- export class CombinationPool {
63
- constructor(_service, _fb, _session) {
64
- this._service = _service;
65
- this._fb = _fb;
66
- this._session = _session;
67
- this.model = {};
68
- this.source = 'combinations';
69
- this.modelChange = new EventEmitter();
70
- this._axes = [];
71
- this.working = true;
72
- this._keys = {};
73
- this._values = {};
74
- this._destroy = new Subject();
75
- }
76
- ngOnInit() {
77
- this._cube = this.cube ? this._session.profile.cubes.find(c => c.name === this.cube) : this._session.profile.cubes[0];
78
- this._axes = this._cube.axes.filter(a => a.combination && a.selectionMode !== 'None');
79
- this._axes.forEach(a => {
80
- let control = this.form.controls[a.name];
81
- if (!control) {
82
- control = this._fb.control(null, Validators.required);
83
- this.form.addControl(a.name, control);
84
- }
85
- this._keys[a.dataType] = [];
86
- control.valueChanges.pipe(debounceTime(250), takeUntil(this._destroy)).subscribe(v => {
87
- this.model[a.name] = v;
88
- this._populate().
89
- then(() => this.modelChange.next(this.model));
90
- });
91
- });
92
- this._populate();
93
- }
94
- _populate() {
95
- this.working = true;
96
- const values = {};
97
- this._axes.forEach(a => {
98
- const val = this.model[a.name];
99
- if (val)
100
- values[a.name] = val;
101
- });
102
- return this._service.constraints(this._cube.name, values, { source: this.source }).toPromise().then(r => {
103
- Object.keys(r).forEach(t => {
104
- this._values[t] = r[t];
105
- const keys = this._keys[t] = Object.keys(r[t]);
106
- const axis = this._axes.find(a => a.dataType === t), control = this.form.controls[axis.name];
107
- if (keys.length < 2) {
108
- if (keys.length === 1)
109
- control.patchValue(this.model[axis.name] = keys[0], { emitEvent: false });
110
- control.disable({ emitEvent: false });
111
- }
112
- else if (control.disabled)
113
- control.enable({ emitEvent: false });
114
- });
115
- Object.assign(this._values, r);
116
- this.working = false;
117
- });
118
- }
119
- clear(axis) {
120
- const control = this.form.controls[axis];
121
- control.patchValue(null);
122
- }
123
- clearAll() {
124
- const values = {};
125
- this._axes.forEach(a => {
126
- values[a.name] = null;
127
- });
128
- this.form.patchValue(values);
129
- }
130
- ngOnDestroy() {
131
- this._destroy.next();
132
- }
133
- }
134
- CombinationPool.ɵfac = function CombinationPool_Factory(t) { return new (t || CombinationPool)(i0.ɵɵdirectiveInject(i1.CubeService), i0.ɵɵdirectiveInject(i2.FormBuilder), i0.ɵɵdirectiveInject(i3.SessionService)); };
135
- CombinationPool.ɵcmp = /*@__PURE__*/ i0.ɵɵdefineComponent({ type: CombinationPool, selectors: [["bizdoc-combination-pool"]], inputs: { form: ["formGroup", "form"], appearance: "appearance", cube: "cube", model: "model", source: "source" }, outputs: { modelChange: "modelChange" }, decls: 2, vars: 2, consts: [[3, "formGroup"], [3, "appearance", 4, "ngFor", "ngForOf"], [3, "appearance"], [3, "formControlName"], [4, "ngIf"], [3, "value", 4, "ngFor", "ngForOf"], [3, "value"]], template: function CombinationPool_Template(rf, ctx) { if (rf & 1) {
136
- i0.ɵɵelementStart(0, "form", 0);
137
- i0.ɵɵtemplate(1, CombinationPool_mat_form_field_1_Template, 8, 6, "mat-form-field", 1);
138
- i0.ɵɵelementEnd();
139
- } if (rf & 2) {
140
- i0.ɵɵproperty("formGroup", ctx.form);
141
- i0.ɵɵadvance(1);
142
- i0.ɵɵproperty("ngForOf", ctx._axes);
143
- } }, dependencies: [i4.NgForOf, i4.NgIf, i2.ɵNgNoValidate, i2.NgControlStatus, i2.NgControlStatusGroup, i2.FormGroupDirective, i2.FormControlName, i5.MatOption, i6.MatFormField, i6.MatHint, i6.MatLabel, i7.MatSelect, i8.TranslatePipe], styles: ["[_nghost-%COMP%]{flex:1 1 auto}form[_ngcontent-%COMP%]{flex-flow:row wrap;box-sizing:border-box;display:flex;padding:0!important}form[_ngcontent-%COMP%] > *[_ngcontent-%COMP%]{flex:1 1 auto;box-sizing:border-box;width:50%;padding:0 5px 0 0}[dir=rtl][_ngcontent-%COMP%] form[_ngcontent-%COMP%] > *[_ngcontent-%COMP%]{padding:0 0 5px}@media (max-width: 599px){form[_ngcontent-%COMP%]{flex-flow:column}form[_ngcontent-%COMP%] > *[_ngcontent-%COMP%]{width:unset}}"] });
144
- (function () { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassMetadata(CombinationPool, [{
145
- type: Component,
146
- args: [{ selector: 'bizdoc-combination-pool', template: "<form [formGroup]=\"form\">\r\n <mat-form-field *ngFor=\"let a of _axes\" [appearance]=\"appearance\">\r\n <mat-label>{{a.title}}</mat-label>\r\n <mat-select [formControlName]=\"a.name\">\r\n <mat-option *ngIf=\"form.controls[a.name].value\">{{'Dashes'|translate:('Clear'|translate)}}</mat-option>\r\n <mat-option *ngFor=\"let key of _keys[a.dataType]\" [value]=\"key\">{{_values[a.dataType][key]}}</mat-option>\r\n </mat-select>\r\n <mat-hint>{{form.controls[a.name].value}}</mat-hint>\r\n </mat-form-field>\r\n</form>\r\n", styles: [":host{flex:1 1 auto}form{flex-flow:row wrap;box-sizing:border-box;display:flex;padding:0!important}form>*{flex:1 1 auto;box-sizing:border-box;width:50%;padding:0 5px 0 0}[dir=rtl] form>*{padding:0 0 5px}@media (max-width: 599px){form{flex-flow:column}form>*{width:unset}}\n"] }]
147
- }], function () { return [{ type: i1.CubeService }, { type: i2.FormBuilder }, { type: i3.SessionService }]; }, { form: [{
148
- type: Input,
149
- args: ['formGroup']
150
- }], appearance: [{
151
- type: Input
152
- }], cube: [{
153
- type: Input
154
- }], model: [{
155
- type: Input
156
- }], source: [{
157
- type: Input
158
- }], modelChange: [{
159
- type: Output
160
- }] }); })();
161
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29tYmluYXRpb24tcG9vbC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL2xpYnJhcmllcy9jb3JlL3NyYy9saWIvY29yZS9pbnB1dHMvY29tYmluYXRpb24tcG9vbC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uL2xpYnJhcmllcy9jb3JlL3NyYy9saWIvY29yZS9pbnB1dHMvY29tYmluYXRpb24tcG9vbC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxTQUFTLEVBQUUsS0FBSyxFQUFVLE1BQU0sRUFBRSxZQUFZLEVBQWEsTUFBTSxlQUFlLENBQUM7QUFDMUYsT0FBTyxFQUFFLFlBQVksRUFBRSxTQUFTLEVBQU8sTUFBTSxnQkFBZ0IsQ0FBQztBQUM5RCxPQUFPLEVBQWUsVUFBVSxFQUFhLE1BQU0sZ0JBQWdCLENBQUM7QUFJcEUsT0FBTyxFQUFFLE9BQU8sRUFBYyxNQUFNLE1BQU0sQ0FBQzs7Ozs7Ozs7Ozs7SUNGckMsa0NBQWdEO0lBQUEsWUFBMEM7OztJQUFBLGlCQUFhOztJQUF2RCxlQUEwQztJQUExQyxtRkFBMEM7OztJQUMxRixxQ0FBZ0U7SUFBQSxZQUE0QjtJQUFBLGlCQUFhOzs7OztJQUF2RCw4QkFBYTtJQUFDLGVBQTRCO0lBQTVCLDJEQUE0Qjs7O0lBSmhHLHlDQUFrRSxnQkFBQTtJQUNyRCxZQUFXO0lBQUEsaUJBQVk7SUFDbEMscUNBQXVDO0lBQ3JDLCtGQUF1RztJQUN2RywrRkFBeUc7SUFDM0csaUJBQWE7SUFDYixnQ0FBVTtJQUFBLFlBQStCO0lBQUEsaUJBQVcsRUFBQTs7OztJQU5kLDhDQUF5QjtJQUNwRCxlQUFXO0lBQVgsZ0NBQVc7SUFDVixlQUEwQjtJQUExQiwyQ0FBMEI7SUFDdkIsZUFBaUM7SUFBakMsNERBQWlDO0lBQ2xCLGVBQW9CO0lBQXBCLHFEQUFvQjtJQUV4QyxlQUErQjtJQUEvQiwyREFBK0I7O0FETTdDLE1BQU0sT0FBTyxlQUFlO0lBbUIxQixZ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eyBDb21wb25lbnQsIElucHV0LCBPbkluaXQsIE91dHB1dCwgRXZlbnRFbWl0dGVyLCBPbkRlc3Ryb3kgfSBmcm9tIFwiQGFuZ3VsYXIvY29yZVwiO1xyXG5pbXBvcnQgeyBkZWJvdW5jZVRpbWUsIHRha2VVbnRpbCwgdGFwIH0gZnJvbSBcInJ4anMvb3BlcmF0b3JzXCI7XHJcbmltcG9ydCB7IEZvcm1CdWlsZGVyLCBWYWxpZGF0b3JzLCBGb3JtR3JvdXAgfSBmcm9tIFwiQGFuZ3VsYXIvZm9ybXNcIjtcclxuaW1wb3J0IHsgU2Vzc2lvblNlcnZpY2UgfSBmcm9tIFwiLi4vc2Vzc2lvbi5zZXJ2aWNlXCI7XHJcbmltcG9ydCB7IEN1YmVTZXJ2aWNlIH0gZnJvbSBcIi4uLy4uL2N1YmUvY3ViZS5zZXJ2aWNlXCI7XHJcbmltcG9ydCB7IEN1YmVBeGlzLCBDdWJlIH0gZnJvbSBcIi4uL21vZGVsc1wiO1xyXG5pbXBvcnQgeyBTdWJqZWN0LCBPYnNlcnZhYmxlIH0gZnJvbSBcInJ4anNcIjtcclxuaW1wb3J0IHsgTWF0Rm9ybUZpZWxkQXBwZWFyYW5jZSB9IGZyb20gXCJAYW5ndWxhci9tYXRlcmlhbC9mb3JtLWZpZWxkXCI7XHJcbkBDb21wb25lbnQoe1xyXG4gIHNlbGVjdG9yOiAnYml6ZG9jLWNvbWJpbmF0aW9uLXBvb2wnLFxyXG4gIHRlbXBsYXRlVXJsOiAnY29tYmluYXRpb24tcG9vbC5odG1sJyxcclxuICBzdHlsZVVybHM6IFsnY29tYmluYXRpb24tcG9vbC5zY3NzJ11cclxufSlcclxuZXhwb3J0IGNsYXNzIENvbWJpbmF0aW9uUG9vbCBpbXBsZW1lbnRzIE9uSW5pdCwgT25EZXN0cm95IHtcclxuICBASW5wdXQoJ2Zvcm1Hcm91cCcpXHJcbiAgZm9ybSE6IEZvcm1Hcm91cDtcclxuICBASW5wdXQoKVxyXG4gIGFwcGVhcmFuY2U/OiBNYXRGb3JtRmllbGRBcHBlYXJhbmNlO1xyXG4gIEBJbnB1dCgpXHJcbiAgY3ViZTogc3RyaW5nO1xyXG4gIEBJbnB1dCgpXHJcbiAgbW9kZWw6IHsgW2F4aXM6IHN0cmluZ106IChzdHJpbmcgfCBudW1iZXIpIH0gPSB7fTtcclxuICBASW5wdXQoKVxyXG4gIHNvdXJjZTogJ2NvbnN0cmFpbnRzJyB8ICdjb21iaW5hdGlvbnMnID0gJ2NvbWJpbmF0aW9ucyc7XHJcbiAgQE91dHB1dCgpXHJcbiAgcmVhZG9ubHkgbW9kZWxDaGFuZ2UgPSBuZXcgRXZlbnRFbWl0dGVyPHsgW2F4aXM6IHN0cmluZ106IChzdHJpbmcgfCBudW1iZXIpIH0+KCk7XHJcbiAgX2F4ZXM6IEN1YmVBeGlzW10gPSBbXTtcclxuICBfY3ViZTogQ3ViZTtcclxuICB3b3JraW5nID0gdHJ1ZTtcclxuICByZWFkb25seSBfa2V5czogeyBbdHlwZTogc3RyaW5nXTogc3RyaW5nW10gfSA9IHt9O1xyXG4gIHJlYWRvbmx5IF92YWx1ZXM6IHsgW3R5cGU6IHN0cmluZ106IHsgW2tleTogc3RyaW5nXTogYW55IH0gfSA9IHt9O1xyXG4gIHByaXZhdGUgcmVhZG9ubHkgX2Rlc3Ryb3kgPSBuZXcgU3ViamVjdDx2b2lkPigpO1xyXG4gIGNvbnN0cnVjdG9yKHByaXZhdGUgX3NlcnZpY2U6IEN1YmVTZXJ2aWNlLFxyXG4gICAgcHJpdmF0ZSBfZmI6IEZvcm1CdWlsZGVyLFxyXG4gICAgcHJpdmF0ZSBfc2Vzc2lvbjogU2Vzc2lvblNlcnZpY2UpIHsgfVxyXG4gIG5nT25Jbml0KCk6IHZvaWQge1xyXG4gICAgdGhpcy5fY3ViZSA9IHRoaXMuY3ViZSA/IHRoaXMuX3Nlc3Npb24ucHJvZmlsZS5jdWJlcy5maW5kKGMgPT4gYy5uYW1lID09PSB0aGlzLmN1YmUpIDogdGhpcy5fc2Vzc2lvbi5wcm9maWxlLmN1YmVzWzBdO1xyXG4gICAgdGhpcy5fYXhlcyA9IHRoaXMuX2N1YmUuYXhlcy5maWx0ZXIoYSA9PiBhLmNvbWJpbmF0aW9uICYmIGEuc2VsZWN0aW9uTW9kZSAhPT0gJ05vbmUnKTtcclxuICAgIHRoaXMuX2F4ZXMuZm9yRWFjaChhID0+IHtcclxuICAgICAgbGV0IGNvbnRyb2wgPSB0aGlzLmZvcm0uY29udHJvbHNbYS5uYW1lXTtcclxuICAgICAgaWYgKCFjb250cm9sKSB7XHJcbiAgICAgICAgY29udHJvbCA9IHRoaXMuX2ZiLmNvbnRyb2wobnVsbCwgVmFsaWRhdG9ycy5yZXF1aXJlZCk7XHJcbiAgICAgICAgdGhpcy5mb3JtLmFkZENvbnRyb2woYS5uYW1lLCBjb250cm9sKTtcclxuICAgICAgfVxyXG4gICAgICB0aGlzLl9rZXlzW2EuZGF0YVR5cGVdID0gW107XHJcbiAgICAgIGNvbnRyb2wudmFsdWVDaGFuZ2VzLnBpcGUoZGVib3VuY2VUaW1lKDI1MCksIHRha2VVbnRpbCh0aGlzLl9kZXN0cm95KSkuc3Vic2NyaWJlKHYgPT4ge1xyXG4gICAgICAgIHRoaXMubW9kZWxbYS5uYW1lXSA9IHY7XHJcbiAgICAgICAgdGhpcy5fcG9wdWxhdGUoKS5cclxuICAgICAgICAgIHRoZW4oKCkgPT5cclxuICAgICAgICAgICAgdGhpcy5tb2RlbENoYW5nZS5uZXh0KHRoaXMubW9kZWwpKTtcclxuICAgICAgfSk7XHJcbiAgICB9KTtcclxuICAgIHRoaXMuX3BvcHVsYXRlKCk7XHJcbiAgfVxyXG4gIHByaXZhdGUgX3BvcHVsYXRlKCkge1xyXG4gICAgdGhpcy53b3JraW5nID0gdHJ1ZTtcclxuICAgIGNvbnN0IHZhbHVlcyA9IHt9O1xyXG4gICAgdGhpcy5fYXhlcy5mb3JFYWNoKGEgPT4ge1xyXG4gICAgICBjb25zdCB2YWwgPSB0aGlzLm1vZGVsW2EubmFtZV07XHJcbiAgICAgIGlmICh2YWwpIHZhbHVlc1thLm5hbWVdID0gdmFsO1xyXG4gICAgfSk7XHJcbiAgICByZXR1cm4gdGhpcy5fc2VydmljZS5jb25zdHJhaW50cyh0aGlzLl9jdWJlLm5hbWUsIHZhbHVlcywgeyBzb3VyY2U6IHRoaXMuc291cmNlIH0pLnRvUHJvbWlzZSgpLnRoZW4ociA9PiB7XHJcbiAgICAgIE9iamVjdC5rZXlzKHIpLmZvckVhY2godCA9PiB7XHJcbiAgICAgICAgdGhpcy5fdmFsdWVzW3RdID0gclt0XTtcclxuICAgICAgICBjb25zdCBrZXlzID0gdGhpcy5fa2V5c1t0XSA9IE9iamVjdC5rZXlzKHJbdF0pO1xyXG4gICAgICAgIGNvbnN0IGF4aXMgPSB0aGlzLl9heGVzLmZpbmQoYSA9PiBhLmRhdGFUeXBlID09PSB0KSwgY29udHJvbCA9IHRoaXMuZm9ybS5jb250cm9sc1theGlzLm5hbWVdO1xyXG4gICAgICAgIGlmIChrZXlzLmxlbmd0aCA8IDIpIHtcclxuICAgICAgICAgIGlmIChrZXlzLmxlbmd0aCA9PT0gMSlcclxuICAgICAgICAgICAgY29udHJvbC5wYXRjaFZhbHVlKHRoaXMubW9kZWxbYXhpcy5uYW1lXSA9IGtleXNbMF0sIHsgZW1pdEV2ZW50OiBmYWxzZSB9KTtcclxuICAgICAgICAgIGNvbnRyb2wuZGlzYWJsZSh7IGVtaXRFdmVudDogZmFsc2UgfSk7XHJcbiAgICAgICAgfVxyXG4gICAgICAgIGVsc2UgaWYgKGNvbnRyb2wuZGlzYWJsZWQpIGNvbnRyb2wuZW5hYmxlKHsgZW1pdEV2ZW50OiBmYWxzZSB9KTtcclxuICAgICAgfSk7XHJcbiAgICAgIE9iamVjdC5hc3NpZ24odGhpcy5fdmFsdWVzLCByKTtcclxuICAgICAgdGhpcy53b3JraW5nID0gZmFsc2U7XHJcbiAgICB9KTtcclxuICB9XHJcbiAgY2xlYXIoYXhpczogc3RyaW5nKSB7XHJcbiAgICBjb25zdCBjb250cm9sID0gdGhpcy5mb3JtLmNvbnRyb2xzW2F4aXNdO1xyXG4gICAgY29udHJvbC5wYXRjaFZhbHVlKG51bGwpO1xyXG4gIH1cclxuICBjbGVhckFsbCgpIHtcclxuICAgIGNvbnN0IHZhbHVlcyA9IHt9O1xyXG4gICAgdGhpcy5fYXhlcy5mb3JFYWNoKGEgPT4ge1xyXG4gICAgICB2YWx1ZXNbYS5uYW1lXSA9IG51bGw7XHJcbiAgICB9KTtcclxuICAgIHRoaXMuZm9ybS5wYXRjaFZhbHVlKHZhbHVlcyk7XHJcbiAgfVxyXG4gIG5nT25EZXN0cm95KCk6IHZvaWQge1xyXG4gICAgdGhpcy5fZGVzdHJveS5uZXh0KCk7XHJcbiAgfVxyXG59XHJcbiIsIjxmb3JtIFtmb3JtR3JvdXBdPVwiZm9ybVwiPlxyXG4gIDxtYXQtZm9ybS1maWVsZCAqbmdGb3I9XCJsZXQgYSBvZiBfYXhlc1wiIFthcHBlYXJhbmNlXT1cImFwcGVhcmFuY2VcIj5cclxuICAgIDxtYXQtbGFiZWw+e3thLnRpdGxlfX08L21hdC1sYWJlbD5cclxuICAgIDxtYXQtc2VsZWN0IFtmb3JtQ29udHJvbE5hbWVdPVwiYS5uYW1lXCI+XHJcbiAgICAgIDxtYXQtb3B0aW9uICpuZ0lmPVwiZm9ybS5jb250cm9sc1thLm5hbWVdLnZhbHVlXCI+e3snRGFzaGVzJ3x0cmFuc2xhdGU6KCdDbGVhcid8dHJhbnNsYXRlKX19PC9tYXQtb3B0aW9uPlxyXG4gICAgICA8bWF0LW9wdGlvbiAqbmdGb3I9XCJsZXQga2V5IG9mIF9rZXlzW2EuZGF0YVR5cGVdXCIgW3ZhbHVlXT1cImtleVwiPnt7X3ZhbHVlc1thLmRhdGFUeXBlXVtrZXldfX08L21hdC1vcHRpb24+XHJcbiAgICA8L21hdC1zZWxlY3Q+XHJcbiAgICA8bWF0LWhpbnQ+e3tmb3JtLmNvbnRyb2xzW2EubmFtZV0udmFsdWV9fTwvbWF0LWhpbnQ+XHJcbiAgPC9tYXQtZm9ybS1maWVsZD5cclxuPC9mb3JtPlxyXG4iXX0=