nuxeo-development-framework 0.0.0-watch

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 (984) hide show
  1. package/README.md +24 -0
  2. package/esm2015/lib/components/activities-log/activities-log/activities-log.component.js +188 -0
  3. package/esm2015/lib/components/activities-log/activities-log/activities-log.service.js +35 -0
  4. package/esm2015/lib/components/activities-log/activities-log.module.js +41 -0
  5. package/esm2015/lib/components/activity/activity/activity.component.js +28 -0
  6. package/esm2015/lib/components/activity/activity.module.js +37 -0
  7. package/esm2015/lib/components/attachment-item/attachment-item/attachment-item.component.js +54 -0
  8. package/esm2015/lib/components/attachment-item/attachment-item.module.js +44 -0
  9. package/esm2015/lib/components/attachment-modal/attachment-modal.module.js +40 -0
  10. package/esm2015/lib/components/attachment-modal/attachments/attachments.component.js +157 -0
  11. package/esm2015/lib/components/avatar/avatar/avatar.component.js +55 -0
  12. package/esm2015/lib/components/avatar/avatar.module.js +32 -0
  13. package/esm2015/lib/components/card/card.component.js +48 -0
  14. package/esm2015/lib/components/card/card.module.js +23 -0
  15. package/esm2015/lib/components/charts/chart.const.js +3 -0
  16. package/esm2015/lib/components/charts/chart.token.js +3 -0
  17. package/esm2015/lib/components/charts/charts.module.js +19 -0
  18. package/esm2015/lib/components/charts/components/base-chart.component.js +44 -0
  19. package/esm2015/lib/components/charts/components/chart.component.js +135 -0
  20. package/esm2015/lib/components/charts/components/data-chart.component.js +156 -0
  21. package/esm2015/lib/components/charts/components/index.js +4 -0
  22. package/esm2015/lib/components/charts/defaults/bar.js +18 -0
  23. package/esm2015/lib/components/charts/defaults/doughnut.js +18 -0
  24. package/esm2015/lib/components/charts/defaults/index.js +5 -0
  25. package/esm2015/lib/components/charts/defaults/line.js +36 -0
  26. package/esm2015/lib/components/charts/defaults/pie.js +20 -0
  27. package/esm2015/lib/components/charts/index.js +10 -0
  28. package/esm2015/lib/components/charts/models/index.js +5 -0
  29. package/esm2015/lib/components/charts/models/options.js +2 -0
  30. package/esm2015/lib/components/charts/models/plugins-options.js +2 -0
  31. package/esm2015/lib/components/charts/models/response.js +2 -0
  32. package/esm2015/lib/components/charts/models/statistic-request-config.js +2 -0
  33. package/esm2015/lib/components/charts/plugins/doughnut-center-text.js +25 -0
  34. package/esm2015/lib/components/charts/plugins/doughnut-empty-state.js +34 -0
  35. package/esm2015/lib/components/charts/plugins/index.js +4 -0
  36. package/esm2015/lib/components/charts/plugins/legend-margin.js +16 -0
  37. package/esm2015/lib/components/charts/services/index.js +2 -0
  38. package/esm2015/lib/components/charts/services/statistic.service.js +71 -0
  39. package/esm2015/lib/components/charts/utility/colors.js +79 -0
  40. package/esm2015/lib/components/charts/utility/common.js +7 -0
  41. package/esm2015/lib/components/charts/utility/index.js +3 -0
  42. package/esm2015/lib/components/comments/comments.module.js +86 -0
  43. package/esm2015/lib/components/comments/components/comment-item/comment-item.component.js +94 -0
  44. package/esm2015/lib/components/comments/components/comments-dashlet/comments-dashlet.component.js +81 -0
  45. package/esm2015/lib/components/comments/components/comments-list/comments-list.component.js +74 -0
  46. package/esm2015/lib/components/comments/components/edit-delete-modal/edit-delete-modal.component.js +57 -0
  47. package/esm2015/lib/components/comments/constants/comment.js +25 -0
  48. package/esm2015/lib/components/comments/services/comment-api.service.js +71 -0
  49. package/esm2015/lib/components/confirm-caller/confirm-caller.dialog.js +77 -0
  50. package/esm2015/lib/components/confirm-caller/confirm-caller.module.js +28 -0
  51. package/esm2015/lib/components/confirm-caller/confirm-dialog/confirm-dialog.component.js +29 -0
  52. package/esm2015/lib/components/confirmation-dialog/confirmation-dialog/confirmation-dialog.component.js +30 -0
  53. package/esm2015/lib/components/confirmation-dialog/confirmation-dialog.module.js +30 -0
  54. package/esm2015/lib/components/correspondence-relation/components/correspondence-relation/correspondence-relation.component.js +148 -0
  55. package/esm2015/lib/components/correspondence-relation/components/correspondence-relation-create-form/correspondence-relation-create-form.component.js +150 -0
  56. package/esm2015/lib/components/correspondence-relation/components/correspondence-relation-list/correspondence-relation-list.component.js +111 -0
  57. package/esm2015/lib/components/correspondence-relation/components/correspondence-relation-reply/correspondence-relation-reply.component.js +69 -0
  58. package/esm2015/lib/components/correspondence-relation/components/versions/versions.component.js +105 -0
  59. package/esm2015/lib/components/correspondence-relation/correspondence-relation.module.js +119 -0
  60. package/esm2015/lib/components/correspondence-relation/services/correspondence-realation.service.js +165 -0
  61. package/esm2015/lib/components/correspondence-relation/services/viewer-files.service.js +54 -0
  62. package/esm2015/lib/components/create-entity/create-entity/create-entity.component.js +69 -0
  63. package/esm2015/lib/components/create-entity/create-entity.module.js +36 -0
  64. package/esm2015/lib/components/cts-tags/components/correspondence-tags/correspondence-tags.component.js +180 -0
  65. package/esm2015/lib/components/cts-tags/cts-tags.module.js +65 -0
  66. package/esm2015/lib/components/cts-tags/services/tags-api.service.js +86 -0
  67. package/esm2015/lib/components/custom-toastr/components/custom-toastr/custom-toastr.component.js +67 -0
  68. package/esm2015/lib/components/custom-toastr/custom-toastr.module.js +36 -0
  69. package/esm2015/lib/components/custom-toastr/interfaces/toast-type.interface.js +2 -0
  70. package/esm2015/lib/components/custom-toastr/services/custom-toastr.service.js +63 -0
  71. package/esm2015/lib/components/diagrams/components/base-node.component.js +41 -0
  72. package/esm2015/lib/components/diagrams/components/circle-node/circle-node.component.js +19 -0
  73. package/esm2015/lib/components/diagrams/components/connection-label.component.js +92 -0
  74. package/esm2015/lib/components/diagrams/components/content-node/content-node.component.js +20 -0
  75. package/esm2015/lib/components/diagrams/components/custom-connection.component.js +84 -0
  76. package/esm2015/lib/components/diagrams/components/custom-socket.component.js +37 -0
  77. package/esm2015/lib/components/diagrams/components/gateway-node/gateway-node.component.js +18 -0
  78. package/esm2015/lib/components/diagrams/components/gateway-ports.component.js +118 -0
  79. package/esm2015/lib/components/diagrams/components/index.js +16 -0
  80. package/esm2015/lib/components/diagrams/components/node-icon.component.js +35 -0
  81. package/esm2015/lib/components/diagrams/components/node-inputs.component.js +61 -0
  82. package/esm2015/lib/components/diagrams/components/node-outputs.component.js +57 -0
  83. package/esm2015/lib/components/diagrams/components/node-ports.component.js +98 -0
  84. package/esm2015/lib/components/diagrams/components/remove-button.component.js +68 -0
  85. package/esm2015/lib/components/diagrams/components/status-icon.component.js +37 -0
  86. package/esm2015/lib/components/diagrams/components/template-node/template-node.component.js +40 -0
  87. package/esm2015/lib/components/diagrams/components/zoom-control.component.js +62 -0
  88. package/esm2015/lib/components/diagrams/constants/defaults.js +19 -0
  89. package/esm2015/lib/components/diagrams/constants/direction.js +7 -0
  90. package/esm2015/lib/components/diagrams/constants/index.js +8 -0
  91. package/esm2015/lib/components/diagrams/constants/message-type.js +5 -0
  92. package/esm2015/lib/components/diagrams/constants/node-type.js +8 -0
  93. package/esm2015/lib/components/diagrams/constants/notify-events.js +4 -0
  94. package/esm2015/lib/components/diagrams/constants/sizes.js +8 -0
  95. package/esm2015/lib/components/diagrams/constants/status.js +12 -0
  96. package/esm2015/lib/components/diagrams/diagrams.module.js +81 -0
  97. package/esm2015/lib/components/diagrams/directive/diagram.directive.js +86 -0
  98. package/esm2015/lib/components/diagrams/directive/index.js +2 -0
  99. package/esm2015/lib/components/diagrams/editor/customize.js +62 -0
  100. package/esm2015/lib/components/diagrams/editor/editor.js +97 -0
  101. package/esm2015/lib/components/diagrams/editor/index.js +5 -0
  102. package/esm2015/lib/components/diagrams/editor/overrides/connection-path.transformers.js +50 -0
  103. package/esm2015/lib/components/diagrams/editor/overrides/index.js +2 -0
  104. package/esm2015/lib/components/diagrams/editor/path-plugin.js +18 -0
  105. package/esm2015/lib/components/diagrams/editor/socket-position-watcher.js +7 -0
  106. package/esm2015/lib/components/diagrams/index.js +2 -0
  107. package/esm2015/lib/components/diagrams/models/base-node.model.js +26 -0
  108. package/esm2015/lib/components/diagrams/models/circle-node.model.js +10 -0
  109. package/esm2015/lib/components/diagrams/models/connection.model.js +15 -0
  110. package/esm2015/lib/components/diagrams/models/content-node.model.js +7 -0
  111. package/esm2015/lib/components/diagrams/models/gate-way.model.js +11 -0
  112. package/esm2015/lib/components/diagrams/models/index.js +8 -0
  113. package/esm2015/lib/components/diagrams/models/ports.model.js +14 -0
  114. package/esm2015/lib/components/diagrams/models/socket.model.js +9 -0
  115. package/esm2015/lib/components/diagrams/models/template-node.model.js +12 -0
  116. package/esm2015/lib/components/diagrams/public-api.js +9 -0
  117. package/esm2015/lib/components/diagrams/services/diagram-plugins.service.js +19 -0
  118. package/esm2015/lib/components/diagrams/services/diagram.service.js +222 -0
  119. package/esm2015/lib/components/diagrams/services/index.js +5 -0
  120. package/esm2015/lib/components/diagrams/services/message.service.js +24 -0
  121. package/esm2015/lib/components/diagrams/services/workflow.service.js +239 -0
  122. package/esm2015/lib/components/diagrams/types/common.type.js +2 -0
  123. package/esm2015/lib/components/diagrams/types/connection-config.type.js +2 -0
  124. package/esm2015/lib/components/diagrams/types/connection-label.type.js +2 -0
  125. package/esm2015/lib/components/diagrams/types/customization.type.js +2 -0
  126. package/esm2015/lib/components/diagrams/types/diagram-config.type.js +2 -0
  127. package/esm2015/lib/components/diagrams/types/diagram-editor.type.js +2 -0
  128. package/esm2015/lib/components/diagrams/types/emitter-type.js +2 -0
  129. package/esm2015/lib/components/diagrams/types/index.js +18 -0
  130. package/esm2015/lib/components/diagrams/types/layout.type.js +2 -0
  131. package/esm2015/lib/components/diagrams/types/node-content.js +2 -0
  132. package/esm2015/lib/components/diagrams/types/node-definition.js +2 -0
  133. package/esm2015/lib/components/diagrams/types/node-status.type.js +2 -0
  134. package/esm2015/lib/components/diagrams/types/node.type.js +2 -0
  135. package/esm2015/lib/components/diagrams/types/notify-event.type.js +2 -0
  136. package/esm2015/lib/components/diagrams/types/path.type.js +2 -0
  137. package/esm2015/lib/components/diagrams/types/ports-config.type.js +2 -0
  138. package/esm2015/lib/components/diagrams/types/schemes.type.js +2 -0
  139. package/esm2015/lib/components/diagrams/types/socket.type.js +2 -0
  140. package/esm2015/lib/components/diagrams/utilities/common.js +35 -0
  141. package/esm2015/lib/components/diagrams/utilities/index.js +5 -0
  142. package/esm2015/lib/components/diagrams/utilities/random.js +11 -0
  143. package/esm2015/lib/components/diagrams/utilities/remove.util.js +95 -0
  144. package/esm2015/lib/components/diagrams/utilities/serialize.js +23 -0
  145. package/esm2015/lib/components/display-suitable-icon/display-suitable-icon/display-suitable-icon.component.js +44 -0
  146. package/esm2015/lib/components/display-suitable-icon/display-suitable-icon/icon.service.js +140 -0
  147. package/esm2015/lib/components/display-suitable-icon/display-suitable-icon.module.js +24 -0
  148. package/esm2015/lib/components/documents/components/attachments-list/attachments-list.component.js +159 -0
  149. package/esm2015/lib/components/documents/components/attachments-page-provider/attachments-page-provider.component.js +76 -0
  150. package/esm2015/lib/components/documents/components/document-list/documents-list.component.js +251 -0
  151. package/esm2015/lib/components/documents/components/document-scan/document-scan.component.js +975 -0
  152. package/esm2015/lib/components/documents/components/document-scan/document-scan.service.js +30 -0
  153. package/esm2015/lib/components/documents/components/document-upload/document-upload.component.js +175 -0
  154. package/esm2015/lib/components/documents/components/documents/documents.component.js +63 -0
  155. package/esm2015/lib/components/documents/constants/document-templates.js +32 -0
  156. package/esm2015/lib/components/documents/constants/documents.js +86 -0
  157. package/esm2015/lib/components/documents/documents.module.js +123 -0
  158. package/esm2015/lib/components/documents/services/document-templates.service.js +115 -0
  159. package/esm2015/lib/components/documents/services/documents.service.js +223 -0
  160. package/esm2015/lib/components/dynamic-chart/dynamic-chart/dynamic-chart.component.js +545 -0
  161. package/esm2015/lib/components/dynamic-chart/dynamic-chart.module.js +38 -0
  162. package/esm2015/lib/components/dynamic-chart/services/chart-data.service.js +558 -0
  163. package/esm2015/lib/components/dynamic-fields-renderer/dynamic-fields-renderer/dynamic-fields-renderer.component.js +201 -0
  164. package/esm2015/lib/components/dynamic-fields-renderer/dynamic-fields-renderer.module.js +51 -0
  165. package/esm2015/lib/components/dynamic-filter/dynamic-filter/dynamic-filter.component.js +137 -0
  166. package/esm2015/lib/components/dynamic-filter/dynamic-filter.module.js +27 -0
  167. package/esm2015/lib/components/dynamic-form/components/department-form/department-form.component.js +129 -0
  168. package/esm2015/lib/components/dynamic-form/components/dynamic-form/dynamic-form.component.js +105 -0
  169. package/esm2015/lib/components/dynamic-form/components/dynamic-form/fields.adapter.js +127 -0
  170. package/esm2015/lib/components/dynamic-form/components/dynamic-form/form-builder.service.js +107 -0
  171. package/esm2015/lib/components/dynamic-form/components/dynamic-form-boolitem/dynamic-form-boolitem.component.js +35 -0
  172. package/esm2015/lib/components/dynamic-form/components/dynamic-form-builder/dynamic-form-builder.component.js +165 -0
  173. package/esm2015/lib/components/dynamic-form/components/dynamic-form-checkbox-item/dynamic-form-checkbox-item.component.js +71 -0
  174. package/esm2015/lib/components/dynamic-form/components/dynamic-form-dateitem/dynamic-form-dateitem.component.js +213 -0
  175. package/esm2015/lib/components/dynamic-form/components/dynamic-form-dateitem/owlDateTimeIntl.js +78 -0
  176. package/esm2015/lib/components/dynamic-form/components/dynamic-form-department/constants/department.js +13 -0
  177. package/esm2015/lib/components/dynamic-form/components/dynamic-form-department/dynamic-form-department.component.js +230 -0
  178. package/esm2015/lib/components/dynamic-form/components/dynamic-form-department/services/department-api.service.js +253 -0
  179. package/esm2015/lib/components/dynamic-form/components/dynamic-form-department/services/department-management.service.js +104 -0
  180. package/esm2015/lib/components/dynamic-form/components/dynamic-form-field/dynamic-form-field.component.js +85 -0
  181. package/esm2015/lib/components/dynamic-form/components/dynamic-form-hijri-dateitem/dynamic-form-hijri-dateitem.component.js +139 -0
  182. package/esm2015/lib/components/dynamic-form/components/dynamic-form-item-dispatcher/dynamic-form-item-dispatcher.component.js +81 -0
  183. package/esm2015/lib/components/dynamic-form/components/dynamic-form-mapitem/dynamic-form-mapitem.component.js +36 -0
  184. package/esm2015/lib/components/dynamic-form/components/dynamic-form-options/dynamic-form-options.component.js +106 -0
  185. package/esm2015/lib/components/dynamic-form/components/dynamic-form-select-tag/dynamic-form-select-tag.component.js +104 -0
  186. package/esm2015/lib/components/dynamic-form/components/dynamic-form-select-user-filter/dynamic-form-select-user-filter.component.js +207 -0
  187. package/esm2015/lib/components/dynamic-form/components/dynamic-form-select-users/dynamic-form-select-users.component.js +337 -0
  188. package/esm2015/lib/components/dynamic-form/components/dynamic-form-select-users/services/user-api.service.js +64 -0
  189. package/esm2015/lib/components/dynamic-form/components/dynamic-form-selectitem/dynamic-form-selectitem.component.js +191 -0
  190. package/esm2015/lib/components/dynamic-form/components/dynamic-form-slide-toggleitem/dynamic-form-slide-toggleitem.component.js +81 -0
  191. package/esm2015/lib/components/dynamic-form/components/dynamic-form-textarea/dynamic-form-textarea.component.js +180 -0
  192. package/esm2015/lib/components/dynamic-form/components/dynamic-form-textitem/dynamic-form-textitem.component.js +316 -0
  193. package/esm2015/lib/components/dynamic-form/components/dynamic-form-treeview-select/dropdown-treeview-select-i18n.js +79 -0
  194. package/esm2015/lib/components/dynamic-form/components/dynamic-form-treeview-select/dropdown-treeview-select.component.js +336 -0
  195. package/esm2015/lib/components/dynamic-form/components/dynamic-form-viewer/dynamic-form-viewer.component.js +54 -0
  196. package/esm2015/lib/components/dynamic-form/components/dynamic-form-vocabulary-item/dynamic-form-vocabulary-item.component.js +178 -0
  197. package/esm2015/lib/components/dynamic-form/components/form-wrappers/base-edit-form/base-edit-form.js +768 -0
  198. package/esm2015/lib/components/dynamic-form/components/form-wrappers/date-wrapper/date-wrapper.component.js +35 -0
  199. package/esm2015/lib/components/dynamic-form/components/form-wrappers/date-wrapper/date-wrapper.formio.js +17 -0
  200. package/esm2015/lib/components/dynamic-form/components/form-wrappers/toggle-wrapper/toggle-wrapper.component.js +34 -0
  201. package/esm2015/lib/components/dynamic-form/components/form-wrappers/toggle-wrapper/toggle-wrapper.formio.js +17 -0
  202. package/esm2015/lib/components/dynamic-form/components/form-wrappers/user-selector-wrapper/user-selector-wrapper.component.js +74 -0
  203. package/esm2015/lib/components/dynamic-form/components/form-wrappers/user-selector-wrapper/user-selector-wrapper.formio.js +30 -0
  204. package/esm2015/lib/components/dynamic-form/components/form-wrappers/vocabulary-wrapper/vocabulary-wrapper.component.js +32 -0
  205. package/esm2015/lib/components/dynamic-form/components/form-wrappers/vocabulary-wrapper/vocabulary-wrapper.formio.js +30 -0
  206. package/esm2015/lib/components/dynamic-form/directives/dynamic-form-content-proxy.directive.js +17 -0
  207. package/esm2015/lib/components/dynamic-form/dynamic-form.module.js +306 -0
  208. package/esm2015/lib/components/dynamic-form/interfaces/dynamic-form-boolitem-properties.interface.js +2 -0
  209. package/esm2015/lib/components/dynamic-form/interfaces/dynamic-form-dateitem-properties.interface.js +2 -0
  210. package/esm2015/lib/components/dynamic-form/interfaces/dynamic-form-item-properties.interface.js +2 -0
  211. package/esm2015/lib/components/dynamic-form/interfaces/dynamic-form-item-validator.interface.js +2 -0
  212. package/esm2015/lib/components/dynamic-form/interfaces/dynamic-form-item.interface.js +2 -0
  213. package/esm2015/lib/components/dynamic-form/interfaces/dynamic-form-keyvaluepairsitem-properties.interface.js +2 -0
  214. package/esm2015/lib/components/dynamic-form/interfaces/dynamic-form-selectitem-properties.interface.js +2 -0
  215. package/esm2015/lib/components/dynamic-form/interfaces/dynamic-form-textitem-pipe-property.interface.js +2 -0
  216. package/esm2015/lib/components/dynamic-form/interfaces/dynamic-form-textitem-properties.interface.js +2 -0
  217. package/esm2015/lib/components/dynamic-form/interfaces/dynamic-form.interfaces.js +10 -0
  218. package/esm2015/lib/components/dynamic-form/models/dynamic-form-baseitem.model.js +63 -0
  219. package/esm2015/lib/components/dynamic-form/models/dynamic-form-boolitem.model.js +20 -0
  220. package/esm2015/lib/components/dynamic-form/models/dynamic-form-dateitem.model.js +24 -0
  221. package/esm2015/lib/components/dynamic-form/models/dynamic-form-datetimeitem.model.js +12 -0
  222. package/esm2015/lib/components/dynamic-form/models/dynamic-form-mapitem.model.js +16 -0
  223. package/esm2015/lib/components/dynamic-form/models/dynamic-form-selectitem.model.js +17 -0
  224. package/esm2015/lib/components/dynamic-form/models/dynamic-form-textitem.model.js +32 -0
  225. package/esm2015/lib/components/dynamic-form/models/dynamic-form.models.js +8 -0
  226. package/esm2015/lib/components/dynamic-form/services/card-item-types.service.js +46 -0
  227. package/esm2015/lib/components/dynamic-form/services/dynamic-component-mapper.service.js +60 -0
  228. package/esm2015/lib/components/dynamic-form/services/dynamic-form-update.service.js +83 -0
  229. package/esm2015/lib/components/dynamic-form/validators/length-validator.js +15 -0
  230. package/esm2015/lib/components/dynamic-form/validators/regex-validator.js +15 -0
  231. package/esm2015/lib/components/dynamic-form/validators/required-validator.js +9 -0
  232. package/esm2015/lib/components/dynamic-form/validators/value-validator.js +15 -0
  233. package/esm2015/lib/components/dynamic-search/dynamic-search/dynamic-search.component.js +342 -0
  234. package/esm2015/lib/components/dynamic-search/dynamic-search.module.js +61 -0
  235. package/esm2015/lib/components/dynamic-table/dynamic-table/dynamic-table.component.js +288 -0
  236. package/esm2015/lib/components/dynamic-table/dynamic-table.module.js +44 -0
  237. package/esm2015/lib/components/dynamic-table/services/dynamic-table.service.js +16 -0
  238. package/esm2015/lib/components/dynamic-tabs/dynamic-tabs/dynamic-tabs.component.js +39 -0
  239. package/esm2015/lib/components/dynamic-tabs/dynamic-tabs.module.js +34 -0
  240. package/esm2015/lib/components/dynamic-view/boolean-viewer/boolean-viewer.component.js +37 -0
  241. package/esm2015/lib/components/dynamic-view/custom-document-viewer/custom-document-viewer.component.js +59 -0
  242. package/esm2015/lib/components/dynamic-view/custom-pp-viewer/custom-pp-viewer.component.js +68 -0
  243. package/esm2015/lib/components/dynamic-view/cutome-voc-viewer/cutome-voc-viewer.component.js +33 -0
  244. package/esm2015/lib/components/dynamic-view/data-viewer/data-viewer.component.js +36 -0
  245. package/esm2015/lib/components/dynamic-view/date-viewer/date-viewer.component.js +56 -0
  246. package/esm2015/lib/components/dynamic-view/department-viewer/department-viewer.component.js +90 -0
  247. package/esm2015/lib/components/dynamic-view/dropdown-viewer/dropdown-viewer.component.js +72 -0
  248. package/esm2015/lib/components/dynamic-view/dynamic-view.module.js +70 -0
  249. package/esm2015/lib/components/dynamic-view/dynamic-viewe.service.js +62 -0
  250. package/esm2015/lib/components/dynamic-view/list-viewer/list-viewer.component.js +40 -0
  251. package/esm2015/lib/components/file-manger/components/add-to-collection/add-to-collection.component.js +150 -0
  252. package/esm2015/lib/components/file-manger/components/clipboard/clipboard.component.js +264 -0
  253. package/esm2015/lib/components/file-manger/components/copy/copy.component.js +151 -0
  254. package/esm2015/lib/components/file-manger/components/create-directory/create-directory.component.js +118 -0
  255. package/esm2015/lib/components/file-manger/components/create-modal/create-modal.component.js +526 -0
  256. package/esm2015/lib/components/file-manger/components/creation-type/creation-type.component.js +28 -0
  257. package/esm2015/lib/components/file-manger/components/delete/delete.component.js +103 -0
  258. package/esm2015/lib/components/file-manger/components/folder-modal/folder-modal.component.js +131 -0
  259. package/esm2015/lib/components/file-manger/components/loan-request/loan-request.component.js +107 -0
  260. package/esm2015/lib/components/file-manger/components/move/move.component.js +140 -0
  261. package/esm2015/lib/components/file-manger/components/publish-dialog/publish-dialog.component.js +152 -0
  262. package/esm2015/lib/components/file-manger/components/rename/rename.component.js +114 -0
  263. package/esm2015/lib/components/file-manger/components/scan-modal/scan-modal.component.js +347 -0
  264. package/esm2015/lib/components/file-manger/components/share-dialog/share-dialog.component.js +314 -0
  265. package/esm2015/lib/components/file-manger/components/sidepanel/sidepanel.component.js +257 -0
  266. package/esm2015/lib/components/file-manger/components/template-modal/template-modal.component.js +68 -0
  267. package/esm2015/lib/components/file-manger/components/transfer-doc/transfer-doc.component.js +102 -0
  268. package/esm2015/lib/components/file-manger/components/update-modal/update-modal.component.js +366 -0
  269. package/esm2015/lib/components/file-manger/directives/file-grid-infinite-scroll.directive.js +78 -0
  270. package/esm2015/lib/components/file-manger/file-manager.abstract.js +1202 -0
  271. package/esm2015/lib/components/file-manger/file-manger.module.js +304 -0
  272. package/esm2015/lib/components/file-manger/models/file-manager-config.model.js +7 -0
  273. package/esm2015/lib/components/file-manger/models/index.js +4 -0
  274. package/esm2015/lib/components/file-manger/models/pagination-payload.mode.js +2 -0
  275. package/esm2015/lib/components/file-manger/models/pagination-response.model.js +6 -0
  276. package/esm2015/lib/components/filter/filter/filter.component.js +102 -0
  277. package/esm2015/lib/components/filter/filter.module.js +45 -0
  278. package/esm2015/lib/components/hijri-gregorian-datepicker/hijri-gregorian-datepicker/gregorian-datepicker/gregorian-datepicker.component.js +123 -0
  279. package/esm2015/lib/components/hijri-gregorian-datepicker/hijri-gregorian-datepicker/hijri-datepicker/hijri-datepicker.component.js +126 -0
  280. package/esm2015/lib/components/hijri-gregorian-datepicker/hijri-gregorian-datepicker/hijri-gregorian-datepicker.component.js +165 -0
  281. package/esm2015/lib/components/hijri-gregorian-datepicker/hijri-gregorian-datepicker/provide-parent-form.directive.js +32 -0
  282. package/esm2015/lib/components/hijri-gregorian-datepicker/ngx-hijri-gregorian-datepicker.module.js +58 -0
  283. package/esm2015/lib/components/hijri-gregorian-datepicker/services/date-formatter.service.js +71 -0
  284. package/esm2015/lib/components/hijri-gregorian-datepicker/services/date-helper.service.js +30 -0
  285. package/esm2015/lib/components/hijri-gregorian-datepicker/utils/CustomNgbDateParserFormatter.js +43 -0
  286. package/esm2015/lib/components/hijri-gregorian-datepicker/utils/IslamicI18n.js +26 -0
  287. package/esm2015/lib/components/hijri-gregorian-datepicker/utils/consts.js +5 -0
  288. package/esm2015/lib/components/latest-activity/components/activity-line/activity-line.component.js +80 -0
  289. package/esm2015/lib/components/latest-activity/components/latest-activity/latest-activity.component.js +78 -0
  290. package/esm2015/lib/components/latest-activity/components/single-activity/single-activity.component.js +38 -0
  291. package/esm2015/lib/components/latest-activity/constants/activitylog.js +80 -0
  292. package/esm2015/lib/components/latest-activity/latest-activity.module.js +61 -0
  293. package/esm2015/lib/components/latest-activity/services/activity-log.service.js +33 -0
  294. package/esm2015/lib/components/mutiple-dynamic-form-viewer/multiple-dynamic-form-viewer/multiple-dynamic-form-viewer.component.js +51 -0
  295. package/esm2015/lib/components/mutiple-dynamic-form-viewer/mutiple-dynamic-form-viewer.module.js +30 -0
  296. package/esm2015/lib/components/notifications/components/base-list-notfications.component.js +156 -0
  297. package/esm2015/lib/components/notifications/components/base-notifications.component.js +17 -0
  298. package/esm2015/lib/components/notifications/components/index.js +7 -0
  299. package/esm2015/lib/components/notifications/components/notification-item/get-icon.pipe.js +44 -0
  300. package/esm2015/lib/components/notifications/components/notification-item/notification-item.component.js +55 -0
  301. package/esm2015/lib/components/notifications/components/notification-source-select/notification-source-select.component.js +38 -0
  302. package/esm2015/lib/components/notifications/components/notification-status-toggle/notification-status-toggle.component.js +26 -0
  303. package/esm2015/lib/components/notifications/components/notifications-button/notifications-button.component.js +148 -0
  304. package/esm2015/lib/components/notifications/components/notifications-date-select/notifications-date-select.component.js +63 -0
  305. package/esm2015/lib/components/notifications/components/notifications-list/notifications-list.component.js +69 -0
  306. package/esm2015/lib/components/notifications/components/notifications-list/options.js +24 -0
  307. package/esm2015/lib/components/notifications/components/notifications-list-actions/notifications-list-actions.component.js +43 -0
  308. package/esm2015/lib/components/notifications/components/notifications-settings/check-if-subscribed.pipe.js +29 -0
  309. package/esm2015/lib/components/notifications/components/notifications-settings/notifications-settings.adapter.js +30 -0
  310. package/esm2015/lib/components/notifications/components/notifications-settings/notifications-settings.component.js +163 -0
  311. package/esm2015/lib/components/notifications/components/notifications-sidebar/notifications-sidebar-content.js +28 -0
  312. package/esm2015/lib/components/notifications/components/notifications-sidebar/notifications-sidebar.component.js +158 -0
  313. package/esm2015/lib/components/notifications/constants/date.js +8 -0
  314. package/esm2015/lib/components/notifications/constants/index.js +5 -0
  315. package/esm2015/lib/components/notifications/constants/pagination.js +5 -0
  316. package/esm2015/lib/components/notifications/constants/panel.js +5 -0
  317. package/esm2015/lib/components/notifications/constants/status.js +10 -0
  318. package/esm2015/lib/components/notifications/containers/index.js +3 -0
  319. package/esm2015/lib/components/notifications/containers/notifications-list-container/notifications-list-container.component.js +98 -0
  320. package/esm2015/lib/components/notifications/containers/notifications-list-container/options.js +18 -0
  321. package/esm2015/lib/components/notifications/containers/notifications-settings-container/notifications-settings-container.component.js +68 -0
  322. package/esm2015/lib/components/notifications/directives/button.directive.js +28 -0
  323. package/esm2015/lib/components/notifications/directives/index.js +3 -0
  324. package/esm2015/lib/components/notifications/directives/notification.directive.js +28 -0
  325. package/esm2015/lib/components/notifications/index.js +2 -0
  326. package/esm2015/lib/components/notifications/models/common.js +2 -0
  327. package/esm2015/lib/components/notifications/models/index.js +12 -0
  328. package/esm2015/lib/components/notifications/models/notification-definition.model.js +2 -0
  329. package/esm2015/lib/components/notifications/models/notification-message.mode.js +2 -0
  330. package/esm2015/lib/components/notifications/models/notification-options.js +2 -0
  331. package/esm2015/lib/components/notifications/models/notification-setting.presenter.js +2 -0
  332. package/esm2015/lib/components/notifications/models/notification-subscription.model.js +2 -0
  333. package/esm2015/lib/components/notifications/models/notification.model.js +2 -0
  334. package/esm2015/lib/components/notifications/models/notifications-list-options.js +3 -0
  335. package/esm2015/lib/components/notifications/models/paging-response.model.js +2 -0
  336. package/esm2015/lib/components/notifications/models/params.model.js +2 -0
  337. package/esm2015/lib/components/notifications/models/vocabularies.js +2 -0
  338. package/esm2015/lib/components/notifications/notifications.module.js +147 -0
  339. package/esm2015/lib/components/notifications/public-api.js +12 -0
  340. package/esm2015/lib/components/notifications/services/index.js +2 -0
  341. package/esm2015/lib/components/notifications/services/listener.service.js +19 -0
  342. package/esm2015/lib/components/notifications/services/notifications.service.js +178 -0
  343. package/esm2015/lib/components/notifications/services/params.service.js +31 -0
  344. package/esm2015/lib/components/notifications/services/response.service.js +65 -0
  345. package/esm2015/lib/components/notifications/services/socket.service.js +84 -0
  346. package/esm2015/lib/components/notifications/utilities/index.js +2 -0
  347. package/esm2015/lib/components/notifications/utilities/response.adapter.js +12 -0
  348. package/esm2015/lib/components/pagination/pagination/pagination.component.js +124 -0
  349. package/esm2015/lib/components/pagination/pagination.module.js +32 -0
  350. package/esm2015/lib/components/pdf-tron/pdf-tron.module.js +24 -0
  351. package/esm2015/lib/components/pdf-tron/pdftron/pdftron.component.js +768 -0
  352. package/esm2015/lib/components/pdf-tron/pdftron/pdftron.service.js +241 -0
  353. package/esm2015/lib/components/permissions/add-permissions-dialog/add-permissions-dialog.component.js +195 -0
  354. package/esm2015/lib/components/permissions/permission.service.js +118 -0
  355. package/esm2015/lib/components/permissions/permissions/permissions.component.js +278 -0
  356. package/esm2015/lib/components/permissions/permissions-template/permissions-template.component.js +101 -0
  357. package/esm2015/lib/components/permissions/permissions.module.js +87 -0
  358. package/esm2015/lib/components/select/select/select.component.js +130 -0
  359. package/esm2015/lib/components/select/select.module.js +39 -0
  360. package/esm2015/lib/components/select-users-by-department/select-users-by-department.module.js +47 -0
  361. package/esm2015/lib/components/select-users-by-department/select-users-by-departments/department-management.service.js +27 -0
  362. package/esm2015/lib/components/select-users-by-department/select-users-by-departments/select-users-by-departments.component.js +116 -0
  363. package/esm2015/lib/components/spell-checker-field/spell-checker-field.module.js +37 -0
  364. package/esm2015/lib/components/spell-checker-field/spell-checker-text-field/spell-checker-text-field.component.js +88 -0
  365. package/esm2015/lib/components/table/dynamic-column/dynamic-column.component.js +64 -0
  366. package/esm2015/lib/components/table/dynamic-component.js +59 -0
  367. package/esm2015/lib/components/table/page-sizes-list/page-sizes-list.component.js +38 -0
  368. package/esm2015/lib/components/table/table/table.component.js +257 -0
  369. package/esm2015/lib/components/table/table.module.js +69 -0
  370. package/esm2015/lib/components/toasts/components/notification-toast/notification-toast.component.js +53 -0
  371. package/esm2015/lib/components/toasts/index.js +2 -0
  372. package/esm2015/lib/components/toasts/public-api.js +3 -0
  373. package/esm2015/lib/components/toasts/toasts.module.js +19 -0
  374. package/esm2015/lib/components/user/user/user.component.js +31 -0
  375. package/esm2015/lib/components/user/user.module.js +30 -0
  376. package/esm2015/lib/components/users-card/users-card.component.js +43 -0
  377. package/esm2015/lib/components/users-card/users-card.module.js +28 -0
  378. package/esm2015/lib/components/viewer-log/components/viewer-log/viewer-log.component.js +38 -0
  379. package/esm2015/lib/components/viewer-log/viewer-log.module.js +20 -0
  380. package/esm2015/lib/components/vocabulary/interfaces/op-type.interface.js +2 -0
  381. package/esm2015/lib/components/vocabulary/services/vocabulary-api.service.js +55 -0
  382. package/esm2015/lib/components/vocabulary/translated-vocabulary-select/translated-vocabulary-select.component.js +217 -0
  383. package/esm2015/lib/components/vocabulary/vocabulary/vocabulary.component.js +106 -0
  384. package/esm2015/lib/components/vocabulary/vocabulary.module.js +41 -0
  385. package/esm2015/lib/configuration/app-config.service.js +31 -0
  386. package/esm2015/lib/configuration/helpers/app-initializer.js +4 -0
  387. package/esm2015/lib/core/adapters/adapter.service.js +50 -0
  388. package/esm2015/lib/core/core.module.js +117 -0
  389. package/esm2015/lib/core/enums/language.enum.js +6 -0
  390. package/esm2015/lib/core/env/env-manager.js +15 -0
  391. package/esm2015/lib/core/env/index.js +2 -0
  392. package/esm2015/lib/core/models/api-response.model.js +2 -0
  393. package/esm2015/lib/core/models/automation-response.model.js +2 -0
  394. package/esm2015/lib/core/models/base-response.models.js +2 -0
  395. package/esm2015/lib/core/models/component.model.js +8 -0
  396. package/esm2015/lib/core/models/index.js +5 -0
  397. package/esm2015/lib/core/services/callApi/call-api.service.js +50 -0
  398. package/esm2015/lib/core/services/extension/action.extensions.js +9 -0
  399. package/esm2015/lib/core/services/extension/component-register.service.js +25 -0
  400. package/esm2015/lib/core/services/extension/extenion-utils.js +115 -0
  401. package/esm2015/lib/core/services/extension/extension-element.js +2 -0
  402. package/esm2015/lib/core/services/extension/extension-loader.service.js +127 -0
  403. package/esm2015/lib/core/services/extension/extension.service.js +120 -0
  404. package/esm2015/lib/core/services/initialization/initialization.service.js +138 -0
  405. package/esm2015/lib/core/services/localStorag/local-storag.service.js +123 -0
  406. package/esm2015/lib/core/services/nuxeo/new-nuxeo-overide.js +146 -0
  407. package/esm2015/lib/core/services/nuxeo/nuxeo-override.js +82 -0
  408. package/esm2015/lib/core/services/nuxeo/nuxeo.service.js +155 -0
  409. package/esm2015/lib/core/services/roles/roles.service.js +130 -0
  410. package/esm2015/lib/core/services/translation/translate-loader.service.js +150 -0
  411. package/esm2015/lib/core/services/translation/translation.service.js +176 -0
  412. package/esm2015/lib/core/services/user/user-preferences.service.js +171 -0
  413. package/esm2015/lib/core/utilities/moment-date-adapter.js +178 -0
  414. package/esm2015/lib/core/utilities/utility.service.js +81 -0
  415. package/esm2015/lib/directive/app-has-role/app-has-role.directive.js +61 -0
  416. package/esm2015/lib/directive/clickOutSide/click-outside.directive.js +29 -0
  417. package/esm2015/lib/directive/directive.module.js +52 -0
  418. package/esm2015/lib/directive/drag-and-drop/drag-and-drop.directive.js +46 -0
  419. package/esm2015/lib/directive/permissions/evaluators.service.js +152 -0
  420. package/esm2015/lib/directive/permissions/permissions.directive.js +69 -0
  421. package/esm2015/lib/directive/rtl/set-dir-rtl.directive.js +28 -0
  422. package/esm2015/lib/directive/rtl/set-rtl.directive.js +29 -0
  423. package/esm2015/lib/nuxeo-development-framework.component.js +26 -0
  424. package/esm2015/lib/nuxeo-development-framework.module.js +20 -0
  425. package/esm2015/lib/nuxeo-development-framework.service.js +14 -0
  426. package/esm2015/lib/pipes/file-size.pipe.js +57 -0
  427. package/esm2015/lib/pipes/hijri-date.pipe.js +46 -0
  428. package/esm2015/lib/pipes/localized-date.pipe.js +81 -0
  429. package/esm2015/lib/pipes/multi-value.pipe.js +42 -0
  430. package/esm2015/lib/pipes/pipes.module.js +29 -0
  431. package/esm2015/lib/pipes/secure-html.pipe.js +34 -0
  432. package/esm2015/lib/pipes/secure.pipe.js +40 -0
  433. package/esm2015/lib/pipes/time-ago.pipe.js +68 -0
  434. package/esm2015/lib/shared/components/base/base-column.component.js +18 -0
  435. package/esm2015/lib/shared/components/base/base-dialog.component.js +25 -0
  436. package/esm2015/lib/shared/components/base/base-selector.component.js +96 -0
  437. package/esm2015/lib/shared/components/base/base.component.js +57 -0
  438. package/esm2015/lib/shared/components/base/destroy.subject.js +19 -0
  439. package/esm2015/lib/shared/components/base/index.js +6 -0
  440. package/esm2015/lib/shared/components/button/button.component.js +90 -0
  441. package/esm2015/lib/shared/components/index.js +3 -0
  442. package/esm2015/lib/shared/components/item-list/item-list.component.js +78 -0
  443. package/esm2015/lib/shared/components/no-data/no-data.component.js +41 -0
  444. package/esm2015/lib/shared/components/nuxeo-dialog/confirmation/ndf-confirmation-dialog.component.js +23 -0
  445. package/esm2015/lib/shared/components/nuxeo-dialog/index.js +6 -0
  446. package/esm2015/lib/shared/components/nuxeo-dialog/models/confirm-options.model.js +22 -0
  447. package/esm2015/lib/shared/components/nuxeo-dialog/models/dialog-option.model.js +2 -0
  448. package/esm2015/lib/shared/components/nuxeo-dialog/nuxeo-dialog.module.js +47 -0
  449. package/esm2015/lib/shared/components/nuxeo-dialog/nuxeo.dialog.js +86 -0
  450. package/esm2015/lib/shared/components/nuxeo-dialog/services/nuxeo-dialog.service.js +56 -0
  451. package/esm2015/lib/shared/components/read-more/read-more.component.js +108 -0
  452. package/esm2015/lib/shared/components/search-autocomplete/search-autocomplete.component.js +146 -0
  453. package/esm2015/lib/shared/components/spinner/spinner.component.js +29 -0
  454. package/esm2015/lib/shared/components/user-card/user-card.component.js +49 -0
  455. package/esm2015/lib/shared/libraryShared.module.js +85 -0
  456. package/esm2015/lib/shared/models/index.js +4 -0
  457. package/esm2015/lib/shared/models/mapper/index.js +2 -0
  458. package/esm2015/lib/shared/models/mapper/nuxeo-mapper.js +32 -0
  459. package/esm2015/lib/shared/models/nuxeo-response.model.js +2 -0
  460. package/esm2015/lib/shared/models/task.model.js +2 -0
  461. package/esm2015/lib/shared/services/base/base.service.js +157 -0
  462. package/esm2015/lib/shared/services/base/cache-base.service.js +295 -0
  463. package/esm2015/lib/shared/services/base/config/default-ttl-config.js +9 -0
  464. package/esm2015/lib/shared/services/base/config/index.js +2 -0
  465. package/esm2015/lib/shared/services/base/constants/default-cache-options.js +28 -0
  466. package/esm2015/lib/shared/services/base/constants/index.js +2 -0
  467. package/esm2015/lib/shared/services/base/http-base.service.js +106 -0
  468. package/esm2015/lib/shared/services/base/index.js +3 -0
  469. package/esm2015/lib/shared/services/base/models/cache-info-model.js +12 -0
  470. package/esm2015/lib/shared/services/base/models/http-options.model.js +2 -0
  471. package/esm2015/lib/shared/services/base/models/index.js +6 -0
  472. package/esm2015/lib/shared/services/base/models/operation-options.model.js +2 -0
  473. package/esm2015/lib/shared/services/base/models/query-options.model.js +2 -0
  474. package/esm2015/lib/shared/services/base/models/request-options.model.js +2 -0
  475. package/esm2015/lib/shared/services/index.js +2 -0
  476. package/esm2015/lib/shared-services/dialog-mangment.service.js +102 -0
  477. package/esm2015/lib/shared-services/dynamic-form.service.js +241 -0
  478. package/esm2015/lib/shared-services/file-manager.adapter.js +74 -0
  479. package/esm2015/lib/shared-services/file-manager.service.js +1028 -0
  480. package/esm2015/lib/shared-services/global-admin.service.js +22 -0
  481. package/esm2015/lib/shared-services/global-pdftron.service.js +51 -0
  482. package/esm2015/lib/shared-services/mainfolder.service.js +170 -0
  483. package/esm2015/lib/shared-services/publishing-document.service.js +202 -0
  484. package/esm2015/lib/shared-services/recently-viewed.service.js +57 -0
  485. package/esm2015/lib/shared-services/shared-docs.service.js +129 -0
  486. package/esm2015/lib/shared-services/shared-services.module.js +20 -0
  487. package/esm2015/lib/shared-services/upload-file.service.js +29 -0
  488. package/esm2015/lib/shared-services/upload-managment.service.js +151 -0
  489. package/esm2015/lib/shared-services/user.service.js +64 -0
  490. package/esm2015/nuxeo-development-framework.js +5 -0
  491. package/esm2015/public-api.js +249 -0
  492. package/fesm2015/nuxeo-development-framework.js +33522 -0
  493. package/fesm2015/nuxeo-development-framework.js.map +1 -0
  494. package/lib/components/activities-log/activities-log/activities-log.component.d.ts +26 -0
  495. package/lib/components/activities-log/activities-log/activities-log.service.d.ts +9 -0
  496. package/lib/components/activities-log/activities-log.module.d.ts +12 -0
  497. package/lib/components/activity/activity/activity.component.d.ts +13 -0
  498. package/lib/components/activity/activity.module.d.ts +13 -0
  499. package/lib/components/attachment-item/attachment-item/attachment-item.component.d.ts +21 -0
  500. package/lib/components/attachment-item/attachment-item.module.d.ts +13 -0
  501. package/lib/components/attachment-modal/attachment-modal.module.d.ts +12 -0
  502. package/lib/components/attachment-modal/attachments/attachments.component.d.ts +50 -0
  503. package/lib/components/avatar/avatar/avatar.component.d.ts +23 -0
  504. package/lib/components/avatar/avatar.module.d.ts +13 -0
  505. package/lib/components/card/card.component.d.ts +32 -0
  506. package/lib/components/card/card.module.d.ts +12 -0
  507. package/lib/components/charts/chart.const.d.ts +2 -0
  508. package/lib/components/charts/chart.token.d.ts +8 -0
  509. package/lib/components/charts/charts.module.d.ts +9 -0
  510. package/lib/components/charts/components/base-chart.component.d.ts +21 -0
  511. package/lib/components/charts/components/chart.component.d.ts +28 -0
  512. package/lib/components/charts/components/data-chart.component.d.ts +36 -0
  513. package/lib/components/charts/components/index.d.ts +3 -0
  514. package/lib/components/charts/defaults/bar.d.ts +2 -0
  515. package/lib/components/charts/defaults/doughnut.d.ts +2 -0
  516. package/lib/components/charts/defaults/index.d.ts +4 -0
  517. package/lib/components/charts/defaults/line.d.ts +2 -0
  518. package/lib/components/charts/defaults/pie.d.ts +2 -0
  519. package/lib/components/charts/index.d.ts +9 -0
  520. package/lib/components/charts/models/index.d.ts +4 -0
  521. package/lib/components/charts/models/options.d.ts +12 -0
  522. package/lib/components/charts/models/plugins-options.d.ts +18 -0
  523. package/lib/components/charts/models/response.d.ts +5 -0
  524. package/lib/components/charts/models/statistic-request-config.d.ts +30 -0
  525. package/lib/components/charts/plugins/doughnut-center-text.d.ts +2 -0
  526. package/lib/components/charts/plugins/doughnut-empty-state.d.ts +2 -0
  527. package/lib/components/charts/plugins/index.d.ts +3 -0
  528. package/lib/components/charts/plugins/legend-margin.d.ts +2 -0
  529. package/lib/components/charts/services/index.d.ts +1 -0
  530. package/lib/components/charts/services/statistic.service.d.ts +23 -0
  531. package/lib/components/charts/utility/colors.d.ts +11 -0
  532. package/lib/components/charts/utility/common.d.ts +4 -0
  533. package/lib/components/charts/utility/index.d.ts +2 -0
  534. package/lib/components/comments/comments.module.d.ts +27 -0
  535. package/lib/components/comments/components/comment-item/comment-item.component.d.ts +26 -0
  536. package/lib/components/comments/components/comments-dashlet/comments-dashlet.component.d.ts +46 -0
  537. package/lib/components/comments/components/comments-list/comments-list.component.d.ts +28 -0
  538. package/lib/components/comments/components/edit-delete-modal/edit-delete-modal.component.d.ts +25 -0
  539. package/lib/components/comments/constants/comment.d.ts +25 -0
  540. package/lib/components/comments/services/comment-api.service.d.ts +16 -0
  541. package/lib/components/confirm-caller/confirm-caller.dialog.d.ts +46 -0
  542. package/lib/components/confirm-caller/confirm-caller.module.d.ts +17 -0
  543. package/lib/components/confirm-caller/confirm-dialog/confirm-dialog.component.d.ts +12 -0
  544. package/lib/components/confirmation-dialog/confirmation-dialog/confirmation-dialog.component.d.ts +12 -0
  545. package/lib/components/confirmation-dialog/confirmation-dialog.module.d.ts +10 -0
  546. package/lib/components/correspondence-relation/components/correspondence-relation/correspondence-relation.component.d.ts +34 -0
  547. package/lib/components/correspondence-relation/components/correspondence-relation-create-form/correspondence-relation-create-form.component.d.ts +45 -0
  548. package/lib/components/correspondence-relation/components/correspondence-relation-list/correspondence-relation-list.component.d.ts +31 -0
  549. package/lib/components/correspondence-relation/components/correspondence-relation-reply/correspondence-relation-reply.component.d.ts +18 -0
  550. package/lib/components/correspondence-relation/components/versions/versions.component.d.ts +49 -0
  551. package/lib/components/correspondence-relation/correspondence-relation.module.d.ts +32 -0
  552. package/lib/components/correspondence-relation/services/correspondence-realation.service.d.ts +26 -0
  553. package/lib/components/correspondence-relation/services/viewer-files.service.d.ts +18 -0
  554. package/lib/components/create-entity/create-entity/create-entity.component.d.ts +17 -0
  555. package/lib/components/create-entity/create-entity.module.d.ts +11 -0
  556. package/lib/components/cts-tags/components/correspondence-tags/correspondence-tags.component.d.ts +43 -0
  557. package/lib/components/cts-tags/cts-tags.module.d.ts +21 -0
  558. package/lib/components/cts-tags/services/tags-api.service.d.ts +17 -0
  559. package/lib/components/custom-toastr/components/custom-toastr/custom-toastr.component.d.ts +21 -0
  560. package/lib/components/custom-toastr/custom-toastr.module.d.ts +12 -0
  561. package/lib/components/custom-toastr/interfaces/toast-type.interface.d.ts +1 -0
  562. package/lib/components/custom-toastr/services/custom-toastr.service.d.ts +30 -0
  563. package/lib/components/diagrams/components/base-node.component.d.ts +30 -0
  564. package/lib/components/diagrams/components/circle-node/circle-node.component.d.ts +7 -0
  565. package/lib/components/diagrams/components/connection-label.component.d.ts +19 -0
  566. package/lib/components/diagrams/components/content-node/content-node.component.d.ts +8 -0
  567. package/lib/components/diagrams/components/custom-connection.component.d.ts +13 -0
  568. package/lib/components/diagrams/components/custom-socket.component.d.ts +6 -0
  569. package/lib/components/diagrams/components/gateway-node/gateway-node.component.d.ts +6 -0
  570. package/lib/components/diagrams/components/gateway-ports.component.d.ts +12 -0
  571. package/lib/components/diagrams/components/index.d.ts +15 -0
  572. package/lib/components/diagrams/components/node-icon.component.d.ts +8 -0
  573. package/lib/components/diagrams/components/node-inputs.component.d.ts +12 -0
  574. package/lib/components/diagrams/components/node-outputs.component.d.ts +12 -0
  575. package/lib/components/diagrams/components/node-ports.component.d.ts +13 -0
  576. package/lib/components/diagrams/components/remove-button.component.d.ts +7 -0
  577. package/lib/components/diagrams/components/status-icon.component.d.ts +8 -0
  578. package/lib/components/diagrams/components/template-node/template-node.component.d.ts +17 -0
  579. package/lib/components/diagrams/components/zoom-control.component.d.ts +11 -0
  580. package/lib/components/diagrams/constants/defaults.d.ts +2 -0
  581. package/lib/components/diagrams/constants/direction.d.ts +6 -0
  582. package/lib/components/diagrams/constants/index.d.ts +7 -0
  583. package/lib/components/diagrams/constants/message-type.d.ts +4 -0
  584. package/lib/components/diagrams/constants/node-type.d.ts +7 -0
  585. package/lib/components/diagrams/constants/notify-events.d.ts +3 -0
  586. package/lib/components/diagrams/constants/sizes.d.ts +7 -0
  587. package/lib/components/diagrams/constants/status.d.ts +11 -0
  588. package/lib/components/diagrams/diagrams.module.d.ts +29 -0
  589. package/lib/components/diagrams/directive/diagram.directive.d.ts +27 -0
  590. package/lib/components/diagrams/directive/index.d.ts +1 -0
  591. package/lib/components/diagrams/editor/customize.d.ts +25 -0
  592. package/lib/components/diagrams/editor/editor.d.ts +3 -0
  593. package/lib/components/diagrams/editor/index.d.ts +4 -0
  594. package/lib/components/diagrams/editor/overrides/connection-path.transformers.d.ts +2 -0
  595. package/lib/components/diagrams/editor/overrides/index.d.ts +1 -0
  596. package/lib/components/diagrams/editor/path-plugin.d.ts +4 -0
  597. package/lib/components/diagrams/editor/socket-position-watcher.d.ts +3 -0
  598. package/lib/components/diagrams/index.d.ts +1 -0
  599. package/lib/components/diagrams/models/base-node.model.d.ts +22 -0
  600. package/lib/components/diagrams/models/circle-node.model.d.ts +7 -0
  601. package/lib/components/diagrams/models/connection.model.d.ts +16 -0
  602. package/lib/components/diagrams/models/content-node.model.d.ts +5 -0
  603. package/lib/components/diagrams/models/gate-way.model.d.ts +8 -0
  604. package/lib/components/diagrams/models/index.d.ts +7 -0
  605. package/lib/components/diagrams/models/ports.model.d.ts +11 -0
  606. package/lib/components/diagrams/models/socket.model.d.ts +7 -0
  607. package/lib/components/diagrams/models/template-node.model.d.ts +8 -0
  608. package/lib/components/diagrams/public-api.d.ts +8 -0
  609. package/lib/components/diagrams/services/diagram-plugins.service.d.ts +16 -0
  610. package/lib/components/diagrams/services/diagram.service.d.ts +53 -0
  611. package/lib/components/diagrams/services/index.d.ts +4 -0
  612. package/lib/components/diagrams/services/message.service.d.ts +10 -0
  613. package/lib/components/diagrams/services/workflow.service.d.ts +80 -0
  614. package/lib/components/diagrams/types/common.type.d.ts +9 -0
  615. package/lib/components/diagrams/types/connection-config.type.d.ts +11 -0
  616. package/lib/components/diagrams/types/connection-label.type.d.ts +4 -0
  617. package/lib/components/diagrams/types/customization.type.d.ts +10 -0
  618. package/lib/components/diagrams/types/diagram-config.type.d.ts +42 -0
  619. package/lib/components/diagrams/types/diagram-editor.type.d.ts +26 -0
  620. package/lib/components/diagrams/types/emitter-type.d.ts +5 -0
  621. package/lib/components/diagrams/types/index.d.ts +17 -0
  622. package/lib/components/diagrams/types/layout.type.d.ts +13 -0
  623. package/lib/components/diagrams/types/node-content.d.ts +9 -0
  624. package/lib/components/diagrams/types/node-definition.d.ts +20 -0
  625. package/lib/components/diagrams/types/node-status.type.d.ts +2 -0
  626. package/lib/components/diagrams/types/node.type.d.ts +2 -0
  627. package/lib/components/diagrams/types/notify-event.type.d.ts +2 -0
  628. package/lib/components/diagrams/types/path.type.d.ts +18 -0
  629. package/lib/components/diagrams/types/ports-config.type.d.ts +11 -0
  630. package/lib/components/diagrams/types/schemes.type.d.ts +3 -0
  631. package/lib/components/diagrams/types/socket.type.d.ts +5 -0
  632. package/lib/components/diagrams/utilities/common.d.ts +19 -0
  633. package/lib/components/diagrams/utilities/index.d.ts +4 -0
  634. package/lib/components/diagrams/utilities/random.d.ts +1 -0
  635. package/lib/components/diagrams/utilities/remove.util.d.ts +30 -0
  636. package/lib/components/diagrams/utilities/serialize.d.ts +15 -0
  637. package/lib/components/display-suitable-icon/display-suitable-icon/display-suitable-icon.component.d.ts +17 -0
  638. package/lib/components/display-suitable-icon/display-suitable-icon/icon.service.d.ts +8 -0
  639. package/lib/components/display-suitable-icon/display-suitable-icon.module.d.ts +8 -0
  640. package/lib/components/documents/components/attachments-list/attachments-list.component.d.ts +55 -0
  641. package/lib/components/documents/components/attachments-page-provider/attachments-page-provider.component.d.ts +38 -0
  642. package/lib/components/documents/components/document-list/documents-list.component.d.ts +81 -0
  643. package/lib/components/documents/components/document-scan/document-scan.component.d.ts +112 -0
  644. package/lib/components/documents/components/document-scan/document-scan.service.d.ts +14 -0
  645. package/lib/components/documents/components/document-upload/document-upload.component.d.ts +60 -0
  646. package/lib/components/documents/components/documents/documents.component.d.ts +27 -0
  647. package/lib/components/documents/constants/document-templates.d.ts +33 -0
  648. package/lib/components/documents/constants/documents.d.ts +95 -0
  649. package/lib/components/documents/documents.module.d.ts +33 -0
  650. package/lib/components/documents/services/document-templates.service.d.ts +24 -0
  651. package/lib/components/documents/services/documents.service.d.ts +36 -0
  652. package/lib/components/dynamic-chart/dynamic-chart/dynamic-chart.component.d.ts +78 -0
  653. package/lib/components/dynamic-chart/dynamic-chart.module.d.ts +15 -0
  654. package/lib/components/dynamic-chart/services/chart-data.service.d.ts +37 -0
  655. package/lib/components/dynamic-fields-renderer/dynamic-fields-renderer/dynamic-fields-renderer.component.d.ts +142 -0
  656. package/lib/components/dynamic-fields-renderer/dynamic-fields-renderer.module.d.ts +14 -0
  657. package/lib/components/dynamic-filter/dynamic-filter/dynamic-filter.component.d.ts +55 -0
  658. package/lib/components/dynamic-filter/dynamic-filter.module.d.ts +17 -0
  659. package/lib/components/dynamic-form/components/department-form/department-form.component.d.ts +28 -0
  660. package/lib/components/dynamic-form/components/dynamic-form/dynamic-form.component.d.ts +27 -0
  661. package/lib/components/dynamic-form/components/dynamic-form/fields.adapter.d.ts +6 -0
  662. package/lib/components/dynamic-form/components/dynamic-form/form-builder.service.d.ts +21 -0
  663. package/lib/components/dynamic-form/components/dynamic-form-boolitem/dynamic-form-boolitem.component.d.ts +17 -0
  664. package/lib/components/dynamic-form/components/dynamic-form-builder/dynamic-form-builder.component.d.ts +57 -0
  665. package/lib/components/dynamic-form/components/dynamic-form-checkbox-item/dynamic-form-checkbox-item.component.d.ts +35 -0
  666. package/lib/components/dynamic-form/components/dynamic-form-dateitem/dynamic-form-dateitem.component.d.ts +71 -0
  667. package/lib/components/dynamic-form/components/dynamic-form-dateitem/owlDateTimeIntl.d.ts +52 -0
  668. package/lib/components/dynamic-form/components/dynamic-form-department/constants/department.d.ts +12 -0
  669. package/lib/components/dynamic-form/components/dynamic-form-department/dynamic-form-department.component.d.ts +85 -0
  670. package/lib/components/dynamic-form/components/dynamic-form-department/services/department-api.service.d.ts +32 -0
  671. package/lib/components/dynamic-form/components/dynamic-form-department/services/department-management.service.d.ts +23 -0
  672. package/lib/components/dynamic-form/components/dynamic-form-field/dynamic-form-field.component.d.ts +30 -0
  673. package/lib/components/dynamic-form/components/dynamic-form-hijri-dateitem/dynamic-form-hijri-dateitem.component.d.ts +64 -0
  674. package/lib/components/dynamic-form/components/dynamic-form-item-dispatcher/dynamic-form-item-dispatcher.component.d.ts +25 -0
  675. package/lib/components/dynamic-form/components/dynamic-form-mapitem/dynamic-form-mapitem.component.d.ts +15 -0
  676. package/lib/components/dynamic-form/components/dynamic-form-options/dynamic-form-options.component.d.ts +45 -0
  677. package/lib/components/dynamic-form/components/dynamic-form-select-tag/dynamic-form-select-tag.component.d.ts +43 -0
  678. package/lib/components/dynamic-form/components/dynamic-form-select-user-filter/dynamic-form-select-user-filter.component.d.ts +65 -0
  679. package/lib/components/dynamic-form/components/dynamic-form-select-users/dynamic-form-select-users.component.d.ts +92 -0
  680. package/lib/components/dynamic-form/components/dynamic-form-select-users/services/user-api.service.d.ts +16 -0
  681. package/lib/components/dynamic-form/components/dynamic-form-selectitem/dynamic-form-selectitem.component.d.ts +80 -0
  682. package/lib/components/dynamic-form/components/dynamic-form-slide-toggleitem/dynamic-form-slide-toggleitem.component.d.ts +40 -0
  683. package/lib/components/dynamic-form/components/dynamic-form-textarea/dynamic-form-textarea.component.d.ts +71 -0
  684. package/lib/components/dynamic-form/components/dynamic-form-textitem/dynamic-form-textitem.component.d.ts +94 -0
  685. package/lib/components/dynamic-form/components/dynamic-form-treeview-select/dropdown-treeview-select-i18n.d.ts +21 -0
  686. package/lib/components/dynamic-form/components/dynamic-form-treeview-select/dropdown-treeview-select.component.d.ts +112 -0
  687. package/lib/components/dynamic-form/components/dynamic-form-viewer/dynamic-form-viewer.component.d.ts +20 -0
  688. package/lib/components/dynamic-form/components/dynamic-form-vocabulary-item/dynamic-form-vocabulary-item.component.d.ts +79 -0
  689. package/lib/components/dynamic-form/components/form-wrappers/base-edit-form/base-edit-form.d.ts +599 -0
  690. package/lib/components/dynamic-form/components/form-wrappers/date-wrapper/date-wrapper.component.d.ts +13 -0
  691. package/lib/components/dynamic-form/components/form-wrappers/date-wrapper/date-wrapper.formio.d.ts +2 -0
  692. package/lib/components/dynamic-form/components/form-wrappers/toggle-wrapper/toggle-wrapper.component.d.ts +13 -0
  693. package/lib/components/dynamic-form/components/form-wrappers/toggle-wrapper/toggle-wrapper.formio.d.ts +2 -0
  694. package/lib/components/dynamic-form/components/form-wrappers/user-selector-wrapper/user-selector-wrapper.component.d.ts +16 -0
  695. package/lib/components/dynamic-form/components/form-wrappers/user-selector-wrapper/user-selector-wrapper.formio.d.ts +2 -0
  696. package/lib/components/dynamic-form/components/form-wrappers/vocabulary-wrapper/vocabulary-wrapper.component.d.ts +13 -0
  697. package/lib/components/dynamic-form/components/form-wrappers/vocabulary-wrapper/vocabulary-wrapper.formio.d.ts +2 -0
  698. package/lib/components/dynamic-form/directives/dynamic-form-content-proxy.directive.d.ts +9 -0
  699. package/lib/components/dynamic-form/dynamic-form.module.d.ts +68 -0
  700. package/lib/components/dynamic-form/interfaces/dynamic-form-boolitem-properties.interface.d.ts +5 -0
  701. package/lib/components/dynamic-form/interfaces/dynamic-form-dateitem-properties.interface.d.ts +5 -0
  702. package/lib/components/dynamic-form/interfaces/dynamic-form-item-properties.interface.d.ts +15 -0
  703. package/lib/components/dynamic-form/interfaces/dynamic-form-item-validator.interface.d.ts +4 -0
  704. package/lib/components/dynamic-form/interfaces/dynamic-form-item.interface.d.ts +12 -0
  705. package/lib/components/dynamic-form/interfaces/dynamic-form-keyvaluepairsitem-properties.interface.d.ts +8 -0
  706. package/lib/components/dynamic-form/interfaces/dynamic-form-selectitem-properties.interface.d.ts +10 -0
  707. package/lib/components/dynamic-form/interfaces/dynamic-form-textitem-pipe-property.interface.d.ts +5 -0
  708. package/lib/components/dynamic-form/interfaces/dynamic-form-textitem-properties.interface.d.ts +8 -0
  709. package/lib/components/dynamic-form/interfaces/dynamic-form.interfaces.d.ts +9 -0
  710. package/lib/components/dynamic-form/models/dynamic-form-baseitem.model.d.ts +21 -0
  711. package/lib/components/dynamic-form/models/dynamic-form-boolitem.model.d.ts +11 -0
  712. package/lib/components/dynamic-form/models/dynamic-form-dateitem.model.d.ts +13 -0
  713. package/lib/components/dynamic-form/models/dynamic-form-datetimeitem.model.d.ts +9 -0
  714. package/lib/components/dynamic-form/models/dynamic-form-mapitem.model.d.ts +8 -0
  715. package/lib/components/dynamic-form/models/dynamic-form-selectitem.model.d.ts +11 -0
  716. package/lib/components/dynamic-form/models/dynamic-form-textitem.model.d.ts +15 -0
  717. package/lib/components/dynamic-form/models/dynamic-form.models.d.ts +7 -0
  718. package/lib/components/dynamic-form/services/card-item-types.service.d.ts +13 -0
  719. package/lib/components/dynamic-form/services/dynamic-component-mapper.service.d.ts +36 -0
  720. package/lib/components/dynamic-form/services/dynamic-form-update.service.d.ts +25 -0
  721. package/lib/components/dynamic-form/validators/length-validator.d.ts +7 -0
  722. package/lib/components/dynamic-form/validators/regex-validator.d.ts +7 -0
  723. package/lib/components/dynamic-form/validators/required-validator.d.ts +5 -0
  724. package/lib/components/dynamic-form/validators/value-validator.d.ts +7 -0
  725. package/lib/components/dynamic-search/dynamic-search/dynamic-search.component.d.ts +103 -0
  726. package/lib/components/dynamic-search/dynamic-search.module.d.ts +20 -0
  727. package/lib/components/dynamic-table/dynamic-table/dynamic-table.component.d.ts +130 -0
  728. package/lib/components/dynamic-table/dynamic-table.module.d.ts +16 -0
  729. package/lib/components/dynamic-table/services/dynamic-table.service.d.ts +8 -0
  730. package/lib/components/dynamic-tabs/dynamic-tabs/dynamic-tabs.component.d.ts +13 -0
  731. package/lib/components/dynamic-tabs/dynamic-tabs.module.d.ts +11 -0
  732. package/lib/components/dynamic-view/boolean-viewer/boolean-viewer.component.d.ts +13 -0
  733. package/lib/components/dynamic-view/custom-document-viewer/custom-document-viewer.component.d.ts +22 -0
  734. package/lib/components/dynamic-view/custom-pp-viewer/custom-pp-viewer.component.d.ts +28 -0
  735. package/lib/components/dynamic-view/cutome-voc-viewer/cutome-voc-viewer.component.d.ts +16 -0
  736. package/lib/components/dynamic-view/data-viewer/data-viewer.component.d.ts +13 -0
  737. package/lib/components/dynamic-view/date-viewer/date-viewer.component.d.ts +22 -0
  738. package/lib/components/dynamic-view/department-viewer/department-viewer.component.d.ts +30 -0
  739. package/lib/components/dynamic-view/dropdown-viewer/dropdown-viewer.component.d.ts +39 -0
  740. package/lib/components/dynamic-view/dynamic-view.module.d.ts +24 -0
  741. package/lib/components/dynamic-view/dynamic-viewe.service.d.ts +15 -0
  742. package/lib/components/dynamic-view/list-viewer/list-viewer.component.d.ts +20 -0
  743. package/lib/components/file-manger/components/add-to-collection/add-to-collection.component.d.ts +37 -0
  744. package/lib/components/file-manger/components/clipboard/clipboard.component.d.ts +41 -0
  745. package/lib/components/file-manger/components/copy/copy.component.d.ts +40 -0
  746. package/lib/components/file-manger/components/create-directory/create-directory.component.d.ts +29 -0
  747. package/lib/components/file-manger/components/create-modal/create-modal.component.d.ts +104 -0
  748. package/lib/components/file-manger/components/creation-type/creation-type.component.d.ts +13 -0
  749. package/lib/components/file-manger/components/delete/delete.component.d.ts +31 -0
  750. package/lib/components/file-manger/components/folder-modal/folder-modal.component.d.ts +57 -0
  751. package/lib/components/file-manger/components/loan-request/loan-request.component.d.ts +29 -0
  752. package/lib/components/file-manger/components/move/move.component.d.ts +40 -0
  753. package/lib/components/file-manger/components/publish-dialog/publish-dialog.component.d.ts +39 -0
  754. package/lib/components/file-manger/components/rename/rename.component.d.ts +30 -0
  755. package/lib/components/file-manger/components/scan-modal/scan-modal.component.d.ts +96 -0
  756. package/lib/components/file-manger/components/share-dialog/share-dialog.component.d.ts +57 -0
  757. package/lib/components/file-manger/components/sidepanel/sidepanel.component.d.ts +62 -0
  758. package/lib/components/file-manger/components/template-modal/template-modal.component.d.ts +35 -0
  759. package/lib/components/file-manger/components/transfer-doc/transfer-doc.component.d.ts +30 -0
  760. package/lib/components/file-manger/components/update-modal/update-modal.component.d.ts +196 -0
  761. package/lib/components/file-manger/directives/file-grid-infinite-scroll.directive.d.ts +12 -0
  762. package/lib/components/file-manger/file-manager.abstract.d.ts +188 -0
  763. package/lib/components/file-manger/file-manger.module.d.ts +61 -0
  764. package/lib/components/file-manger/models/file-manager-config.model.d.ts +8 -0
  765. package/lib/components/file-manger/models/index.d.ts +3 -0
  766. package/lib/components/file-manger/models/pagination-payload.mode.d.ts +3 -0
  767. package/lib/components/file-manger/models/pagination-response.model.d.ts +30 -0
  768. package/lib/components/filter/filter/filter.component.d.ts +31 -0
  769. package/lib/components/filter/filter.module.d.ts +15 -0
  770. package/lib/components/hijri-gregorian-datepicker/hijri-gregorian-datepicker/gregorian-datepicker/gregorian-datepicker.component.d.ts +35 -0
  771. package/lib/components/hijri-gregorian-datepicker/hijri-gregorian-datepicker/hijri-datepicker/hijri-datepicker.component.d.ts +35 -0
  772. package/lib/components/hijri-gregorian-datepicker/hijri-gregorian-datepicker/hijri-gregorian-datepicker.component.d.ts +39 -0
  773. package/lib/components/hijri-gregorian-datepicker/hijri-gregorian-datepicker/provide-parent-form.directive.d.ts +9 -0
  774. package/lib/components/hijri-gregorian-datepicker/ngx-hijri-gregorian-datepicker.module.d.ts +15 -0
  775. package/lib/components/hijri-gregorian-datepicker/services/date-formatter.service.d.ts +15 -0
  776. package/lib/components/hijri-gregorian-datepicker/services/date-helper.service.d.ts +9 -0
  777. package/lib/components/hijri-gregorian-datepicker/utils/CustomNgbDateParserFormatter.d.ts +11 -0
  778. package/lib/components/hijri-gregorian-datepicker/utils/IslamicI18n.d.ts +10 -0
  779. package/lib/components/hijri-gregorian-datepicker/utils/consts.d.ts +4 -0
  780. package/lib/components/latest-activity/components/activity-line/activity-line.component.d.ts +19 -0
  781. package/lib/components/latest-activity/components/latest-activity/latest-activity.component.d.ts +23 -0
  782. package/lib/components/latest-activity/components/single-activity/single-activity.component.d.ts +15 -0
  783. package/lib/components/latest-activity/constants/activitylog.d.ts +83 -0
  784. package/lib/components/latest-activity/latest-activity.module.d.ts +20 -0
  785. package/lib/components/latest-activity/services/activity-log.service.d.ts +12 -0
  786. package/lib/components/mutiple-dynamic-form-viewer/multiple-dynamic-form-viewer/multiple-dynamic-form-viewer.component.d.ts +17 -0
  787. package/lib/components/mutiple-dynamic-form-viewer/mutiple-dynamic-form-viewer.module.d.ts +10 -0
  788. package/lib/components/notifications/components/base-list-notfications.component.d.ts +42 -0
  789. package/lib/components/notifications/components/base-notifications.component.d.ts +11 -0
  790. package/lib/components/notifications/components/index.d.ts +6 -0
  791. package/lib/components/notifications/components/notification-item/get-icon.pipe.d.ts +8 -0
  792. package/lib/components/notifications/components/notification-item/notification-item.component.d.ts +24 -0
  793. package/lib/components/notifications/components/notification-source-select/notification-source-select.component.d.ts +15 -0
  794. package/lib/components/notifications/components/notification-status-toggle/notification-status-toggle.component.d.ts +8 -0
  795. package/lib/components/notifications/components/notifications-button/notifications-button.component.d.ts +42 -0
  796. package/lib/components/notifications/components/notifications-date-select/notifications-date-select.component.d.ts +22 -0
  797. package/lib/components/notifications/components/notifications-list/notifications-list.component.d.ts +18 -0
  798. package/lib/components/notifications/components/notifications-list/options.d.ts +2 -0
  799. package/lib/components/notifications/components/notifications-list-actions/notifications-list-actions.component.d.ts +15 -0
  800. package/lib/components/notifications/components/notifications-settings/check-if-subscribed.pipe.d.ts +8 -0
  801. package/lib/components/notifications/components/notifications-settings/notifications-settings.adapter.d.ts +3 -0
  802. package/lib/components/notifications/components/notifications-settings/notifications-settings.component.d.ts +40 -0
  803. package/lib/components/notifications/components/notifications-sidebar/notifications-sidebar-content.d.ts +9 -0
  804. package/lib/components/notifications/components/notifications-sidebar/notifications-sidebar.component.d.ts +43 -0
  805. package/lib/components/notifications/constants/date.d.ts +7 -0
  806. package/lib/components/notifications/constants/index.d.ts +4 -0
  807. package/lib/components/notifications/constants/pagination.d.ts +4 -0
  808. package/lib/components/notifications/constants/panel.d.ts +4 -0
  809. package/lib/components/notifications/constants/status.d.ts +9 -0
  810. package/lib/components/notifications/containers/index.d.ts +2 -0
  811. package/lib/components/notifications/containers/notifications-list-container/notifications-list-container.component.d.ts +27 -0
  812. package/lib/components/notifications/containers/notifications-list-container/options.d.ts +2 -0
  813. package/lib/components/notifications/containers/notifications-settings-container/notifications-settings-container.component.d.ts +22 -0
  814. package/lib/components/notifications/directives/button.directive.d.ts +9 -0
  815. package/lib/components/notifications/directives/index.d.ts +2 -0
  816. package/lib/components/notifications/directives/notification.directive.d.ts +9 -0
  817. package/lib/components/notifications/index.d.ts +1 -0
  818. package/lib/components/notifications/models/common.d.ts +64 -0
  819. package/lib/components/notifications/models/index.d.ts +11 -0
  820. package/lib/components/notifications/models/notification-definition.model.d.ts +17 -0
  821. package/lib/components/notifications/models/notification-message.mode.d.ts +14 -0
  822. package/lib/components/notifications/models/notification-options.d.ts +7 -0
  823. package/lib/components/notifications/models/notification-setting.presenter.d.ts +24 -0
  824. package/lib/components/notifications/models/notification-subscription.model.d.ts +13 -0
  825. package/lib/components/notifications/models/notification.model.d.ts +16 -0
  826. package/lib/components/notifications/models/notifications-list-options.d.ts +38 -0
  827. package/lib/components/notifications/models/paging-response.model.d.ts +12 -0
  828. package/lib/components/notifications/models/params.model.d.ts +6 -0
  829. package/lib/components/notifications/models/vocabularies.d.ts +12 -0
  830. package/lib/components/notifications/notifications.module.d.ts +41 -0
  831. package/lib/components/notifications/public-api.d.ts +11 -0
  832. package/lib/components/notifications/services/index.d.ts +1 -0
  833. package/lib/components/notifications/services/listener.service.d.ts +8 -0
  834. package/lib/components/notifications/services/notifications.service.d.ts +60 -0
  835. package/lib/components/notifications/services/params.service.d.ts +19 -0
  836. package/lib/components/notifications/services/response.service.d.ts +19 -0
  837. package/lib/components/notifications/services/socket.service.d.ts +26 -0
  838. package/lib/components/notifications/utilities/index.d.ts +1 -0
  839. package/lib/components/notifications/utilities/response.adapter.d.ts +3 -0
  840. package/lib/components/pagination/pagination/pagination.component.d.ts +46 -0
  841. package/lib/components/pagination/pagination.module.d.ts +13 -0
  842. package/lib/components/pdf-tron/pdf-tron.module.d.ts +8 -0
  843. package/lib/components/pdf-tron/pdftron/pdftron.component.d.ts +107 -0
  844. package/lib/components/pdf-tron/pdftron/pdftron.service.d.ts +33 -0
  845. package/lib/components/permissions/add-permissions-dialog/add-permissions-dialog.component.d.ts +46 -0
  846. package/lib/components/permissions/permission.service.d.ts +21 -0
  847. package/lib/components/permissions/permissions/permissions.component.d.ts +50 -0
  848. package/lib/components/permissions/permissions-template/permissions-template.component.d.ts +22 -0
  849. package/lib/components/permissions/permissions.module.d.ts +22 -0
  850. package/lib/components/select/select/select.component.d.ts +43 -0
  851. package/lib/components/select/select.module.d.ts +12 -0
  852. package/lib/components/select-users-by-department/select-users-by-department.module.d.ts +13 -0
  853. package/lib/components/select-users-by-department/select-users-by-departments/department-management.service.d.ts +10 -0
  854. package/lib/components/select-users-by-department/select-users-by-departments/select-users-by-departments.component.d.ts +33 -0
  855. package/lib/components/spell-checker-field/spell-checker-field.module.d.ts +10 -0
  856. package/lib/components/spell-checker-field/spell-checker-text-field/spell-checker-text-field.component.d.ts +24 -0
  857. package/lib/components/table/dynamic-column/dynamic-column.component.d.ts +19 -0
  858. package/lib/components/table/dynamic-component.d.ts +20 -0
  859. package/lib/components/table/page-sizes-list/page-sizes-list.component.d.ts +15 -0
  860. package/lib/components/table/table/table.component.d.ts +122 -0
  861. package/lib/components/table/table.module.d.ts +25 -0
  862. package/lib/components/toasts/components/notification-toast/notification-toast.component.d.ts +17 -0
  863. package/lib/components/toasts/index.d.ts +1 -0
  864. package/lib/components/toasts/public-api.d.ts +2 -0
  865. package/lib/components/toasts/toasts.module.d.ts +8 -0
  866. package/lib/components/user/user/user.component.d.ts +13 -0
  867. package/lib/components/user/user.module.d.ts +10 -0
  868. package/lib/components/users-card/users-card.component.d.ts +22 -0
  869. package/lib/components/users-card/users-card.module.d.ts +17 -0
  870. package/lib/components/viewer-log/components/viewer-log/viewer-log.component.d.ts +14 -0
  871. package/lib/components/viewer-log/viewer-log.module.d.ts +10 -0
  872. package/lib/components/vocabulary/interfaces/op-type.interface.d.ts +1 -0
  873. package/lib/components/vocabulary/services/vocabulary-api.service.d.ts +19 -0
  874. package/lib/components/vocabulary/translated-vocabulary-select/translated-vocabulary-select.component.d.ts +81 -0
  875. package/lib/components/vocabulary/vocabulary/vocabulary.component.d.ts +37 -0
  876. package/lib/components/vocabulary/vocabulary.module.d.ts +13 -0
  877. package/lib/configuration/app-config.service.d.ts +14 -0
  878. package/lib/configuration/helpers/app-initializer.d.ts +2 -0
  879. package/lib/core/adapters/adapter.service.d.ts +11 -0
  880. package/lib/core/core.module.d.ts +17 -0
  881. package/lib/core/enums/language.enum.d.ts +4 -0
  882. package/lib/core/env/env-manager.d.ts +53 -0
  883. package/lib/core/env/index.d.ts +1 -0
  884. package/lib/core/models/api-response.model.d.ts +24 -0
  885. package/lib/core/models/automation-response.model.d.ts +24 -0
  886. package/lib/core/models/base-response.models.d.ts +12 -0
  887. package/lib/core/models/component.model.d.ts +6 -0
  888. package/lib/core/models/index.d.ts +4 -0
  889. package/lib/core/services/callApi/call-api.service.d.ts +18 -0
  890. package/lib/core/services/extension/action.extensions.d.ts +31 -0
  891. package/lib/core/services/extension/component-register.service.d.ts +17 -0
  892. package/lib/core/services/extension/extenion-utils.d.ts +14 -0
  893. package/lib/core/services/extension/extension-element.d.ts +5 -0
  894. package/lib/core/services/extension/extension-loader.service.d.ts +28 -0
  895. package/lib/core/services/extension/extension.service.d.ts +70 -0
  896. package/lib/core/services/initialization/initialization.service.d.ts +31 -0
  897. package/lib/core/services/localStorag/local-storag.service.d.ts +41 -0
  898. package/lib/core/services/nuxeo/new-nuxeo-overide.d.ts +14 -0
  899. package/lib/core/services/nuxeo/nuxeo-override.d.ts +8 -0
  900. package/lib/core/services/nuxeo/nuxeo.service.d.ts +37 -0
  901. package/lib/core/services/roles/roles.service.d.ts +12 -0
  902. package/lib/core/services/translation/translate-loader.service.d.ts +26 -0
  903. package/lib/core/services/translation/translation.service.d.ts +74 -0
  904. package/lib/core/services/user/user-preferences.service.d.ts +81 -0
  905. package/lib/core/utilities/moment-date-adapter.d.ts +37 -0
  906. package/lib/core/utilities/utility.service.d.ts +11 -0
  907. package/lib/directive/app-has-role/app-has-role.directive.d.ts +18 -0
  908. package/lib/directive/clickOutSide/click-outside.directive.d.ts +11 -0
  909. package/lib/directive/directive.module.d.ts +17 -0
  910. package/lib/directive/drag-and-drop/drag-and-drop.directive.d.ts +11 -0
  911. package/lib/directive/permissions/evaluators.service.d.ts +37 -0
  912. package/lib/directive/permissions/permissions.directive.d.ts +42 -0
  913. package/lib/directive/rtl/set-dir-rtl.directive.d.ts +13 -0
  914. package/lib/directive/rtl/set-rtl.directive.d.ts +13 -0
  915. package/lib/nuxeo-development-framework.component.d.ts +8 -0
  916. package/lib/nuxeo-development-framework.module.d.ts +10 -0
  917. package/lib/nuxeo-development-framework.service.d.ts +6 -0
  918. package/lib/pipes/file-size.pipe.d.ts +34 -0
  919. package/lib/pipes/hijri-date.pipe.d.ts +32 -0
  920. package/lib/pipes/localized-date.pipe.d.ts +44 -0
  921. package/lib/pipes/multi-value.pipe.d.ts +32 -0
  922. package/lib/pipes/pipes.module.d.ts +18 -0
  923. package/lib/pipes/secure-html.pipe.d.ts +26 -0
  924. package/lib/pipes/secure.pipe.d.ts +29 -0
  925. package/lib/pipes/time-ago.pipe.d.ts +34 -0
  926. package/lib/shared/components/base/base-column.component.d.ts +10 -0
  927. package/lib/shared/components/base/base-dialog.component.d.ts +12 -0
  928. package/lib/shared/components/base/base-selector.component.d.ts +43 -0
  929. package/lib/shared/components/base/base.component.d.ts +34 -0
  930. package/lib/shared/components/base/destroy.subject.d.ts +9 -0
  931. package/lib/shared/components/base/index.d.ts +5 -0
  932. package/lib/shared/components/button/button.component.d.ts +39 -0
  933. package/lib/shared/components/index.d.ts +2 -0
  934. package/lib/shared/components/item-list/item-list.component.d.ts +45 -0
  935. package/lib/shared/components/no-data/no-data.component.d.ts +22 -0
  936. package/lib/shared/components/nuxeo-dialog/confirmation/ndf-confirmation-dialog.component.d.ts +9 -0
  937. package/lib/shared/components/nuxeo-dialog/index.d.ts +5 -0
  938. package/lib/shared/components/nuxeo-dialog/models/confirm-options.model.d.ts +22 -0
  939. package/lib/shared/components/nuxeo-dialog/models/dialog-option.model.d.ts +16 -0
  940. package/lib/shared/components/nuxeo-dialog/nuxeo-dialog.module.d.ts +15 -0
  941. package/lib/shared/components/nuxeo-dialog/nuxeo.dialog.d.ts +23 -0
  942. package/lib/shared/components/nuxeo-dialog/services/nuxeo-dialog.service.d.ts +13 -0
  943. package/lib/shared/components/read-more/read-more.component.d.ts +37 -0
  944. package/lib/shared/components/search-autocomplete/search-autocomplete.component.d.ts +51 -0
  945. package/lib/shared/components/spinner/spinner.component.d.ts +18 -0
  946. package/lib/shared/components/user-card/user-card.component.d.ts +30 -0
  947. package/lib/shared/libraryShared.module.d.ts +27 -0
  948. package/lib/shared/models/index.d.ts +3 -0
  949. package/lib/shared/models/mapper/index.d.ts +1 -0
  950. package/lib/shared/models/mapper/nuxeo-mapper.d.ts +8 -0
  951. package/lib/shared/models/nuxeo-response.model.d.ts +61 -0
  952. package/lib/shared/models/task.model.d.ts +71 -0
  953. package/lib/shared/services/base/base.service.d.ts +29 -0
  954. package/lib/shared/services/base/cache-base.service.d.ts +17 -0
  955. package/lib/shared/services/base/config/default-ttl-config.d.ts +7 -0
  956. package/lib/shared/services/base/config/index.d.ts +1 -0
  957. package/lib/shared/services/base/constants/default-cache-options.d.ts +16 -0
  958. package/lib/shared/services/base/constants/index.d.ts +1 -0
  959. package/lib/shared/services/base/http-base.service.d.ts +17 -0
  960. package/lib/shared/services/base/index.d.ts +2 -0
  961. package/lib/shared/services/base/models/cache-info-model.d.ts +49 -0
  962. package/lib/shared/services/base/models/http-options.model.d.ts +7 -0
  963. package/lib/shared/services/base/models/index.d.ts +5 -0
  964. package/lib/shared/services/base/models/operation-options.model.d.ts +8 -0
  965. package/lib/shared/services/base/models/query-options.model.d.ts +5 -0
  966. package/lib/shared/services/base/models/request-options.model.d.ts +7 -0
  967. package/lib/shared/services/index.d.ts +1 -0
  968. package/lib/shared-services/dialog-mangment.service.d.ts +19 -0
  969. package/lib/shared-services/dynamic-form.service.d.ts +24 -0
  970. package/lib/shared-services/file-manager.adapter.d.ts +48 -0
  971. package/lib/shared-services/file-manager.service.d.ts +102 -0
  972. package/lib/shared-services/global-admin.service.d.ts +11 -0
  973. package/lib/shared-services/global-pdftron.service.d.ts +11 -0
  974. package/lib/shared-services/mainfolder.service.d.ts +32 -0
  975. package/lib/shared-services/publishing-document.service.d.ts +25 -0
  976. package/lib/shared-services/recently-viewed.service.d.ts +17 -0
  977. package/lib/shared-services/shared-docs.service.d.ts +23 -0
  978. package/lib/shared-services/shared-services.module.d.ts +7 -0
  979. package/lib/shared-services/upload-file.service.d.ts +10 -0
  980. package/lib/shared-services/upload-managment.service.d.ts +72 -0
  981. package/lib/shared-services/user.service.d.ts +12 -0
  982. package/nuxeo-development-framework.d.ts +5 -0
  983. package/package.json +82 -0
  984. package/public-api.d.ts +236 -0
@@ -0,0 +1,545 @@
1
+ import { __awaiter } from "tslib";
2
+ import { Component, Input, ViewChild, } from '@angular/core';
3
+ import { Chart } from 'chart.js/auto';
4
+ // import 'chartjs-plugin-labels';
5
+ import 'chartjs-adapter-moment';
6
+ import * as _ from 'lodash';
7
+ import { Subject, forkJoin, fromEvent } from 'rxjs';
8
+ import { debounceTime, map, takeUntil } from 'rxjs/operators';
9
+ import * as i0 from "@angular/core";
10
+ import * as i1 from "@ngx-translate/core";
11
+ import * as i2 from "../../../core/services/callApi/call-api.service";
12
+ import * as i3 from "@angular/router";
13
+ import * as i4 from "../services/chart-data.service";
14
+ import * as i5 from "../../../core/services/translation/translation.service";
15
+ import * as i6 from "../../dynamic-form/components/dynamic-form-department/services/department-api.service";
16
+ import * as i7 from "../../../shared/components/spinner/spinner.component";
17
+ import * as i8 from "@angular/common";
18
+ /** @ignore */
19
+ export class DynamicChartComponent {
20
+ constructor(translate, changeDetector, callApi, router, chartData, translationService, departmentApiService, ngZone) {
21
+ this.translate = translate;
22
+ this.changeDetector = changeDetector;
23
+ this.callApi = callApi;
24
+ this.router = router;
25
+ this.chartData = chartData;
26
+ this.translationService = translationService;
27
+ this.departmentApiService = departmentApiService;
28
+ this.ngZone = ngZone;
29
+ this.prefix = 'STATS.'; // for translation
30
+ this.randomColors = false;
31
+ this.onDestroy$ = new Subject();
32
+ this.creatChart = new Subject();
33
+ this.headers = {}; // headers in constants
34
+ this.range = '["from_now-7d_to_now"]';
35
+ this.selectedRange = 'week'; // range to be filterd on
36
+ this.colors = {
37
+ inProgress: '#3c3cf0',
38
+ registered: '#5a1496',
39
+ draft: '#596973',
40
+ archived: '#fbb62c',
41
+ closed: '#00dca5',
42
+ assigned: '#fd6670',
43
+ undefined: '#f7f8f9',
44
+ other: '#f17205',
45
+ };
46
+ this.data = [];
47
+ this.isFetching = false;
48
+ this.randomColor = false;
49
+ this.combinedData = false;
50
+ this.card = false;
51
+ this.cardTitle = '';
52
+ this.noFetchedKey = false;
53
+ this.isInternalActive = false; // used to control on showing results of internal coresp results in charts
54
+ Chart.defaults.font.family = 'FS Albert Arabic Web';
55
+ Chart.defaults.font.size = 13;
56
+ this.translate.onLangChange.pipe(takeUntil(this.onDestroy$)).subscribe((data) => {
57
+ this.creatChart.next();
58
+ });
59
+ }
60
+ listenToWindowResize() {
61
+ this.ngZone.runOutsideAngular(() => {
62
+ fromEvent(window, 'resize')
63
+ .pipe(debounceTime(300), takeUntil(this.onDestroy$))
64
+ .subscribe(() => {
65
+ if (this.chartObj) {
66
+ this.chartObj.resize();
67
+ }
68
+ });
69
+ });
70
+ }
71
+ createChart() {
72
+ this.creatChart.pipe(debounceTime(500)).subscribe((res) => {
73
+ this.getData().subscribe((data) => {
74
+ var _a;
75
+ this.data = data;
76
+ this.changeDetector.detectChanges();
77
+ let randomColors = {};
78
+ if (this.randomColors) {
79
+ data.data.forEach((item) => {
80
+ randomColors[item.label] = this.stringToHslColor(`${item.label}`, 40, 70);
81
+ });
82
+ }
83
+ this.colors = this.randomColors ? randomColors : this.colors;
84
+ const { options, chartData } = this.chartData[this.chartType]({
85
+ data: data,
86
+ colors: this.colors,
87
+ prefix: this.prefix,
88
+ });
89
+ if (((_a = data.data) === null || _a === void 0 ? void 0 : _a.length) || data.length) {
90
+ if (!this.chartObj) {
91
+ const ctx = this.chart.nativeElement.getContext('2d');
92
+ this.chartObj = new Chart(ctx, options);
93
+ }
94
+ else {
95
+ this.chartObj.chart.data = chartData;
96
+ this.chartObj.update();
97
+ }
98
+ }
99
+ else {
100
+ // const ctx = this.chart.nativeElement.getContext('2d');
101
+ // let noOptions = {
102
+ // type: options.type,
103
+ // data: {
104
+ // datasets: [],
105
+ // },
106
+ // options: {},
107
+ // };
108
+ // this.chartObj = new Chart(ctx, noOptions);
109
+ // this.chartObj.chart.data = [];
110
+ }
111
+ });
112
+ });
113
+ }
114
+ createChartWithoutPP() {
115
+ this.isFetching = true;
116
+ this.creatChart.pipe(debounceTime(300)).subscribe((res) => {
117
+ var _a;
118
+ this.data = this.inputChartData;
119
+ this.changeDetector.detectChanges();
120
+ let randomColors = {};
121
+ if (this.randomColors) {
122
+ this.data.data.forEach((item) => {
123
+ randomColors[item.label] = this.stringToHslColor(`${item.label}`, 40, 70);
124
+ });
125
+ }
126
+ this.colors = this.randomColors ? randomColors : this.colors;
127
+ const { options, chartData } = this.chartData[this.chartType]({
128
+ data: this.data,
129
+ colors: this.colors,
130
+ prefix: this.prefix,
131
+ });
132
+ if (((_a = this.data.data) === null || _a === void 0 ? void 0 : _a.length) || this.data.length) {
133
+ if (!this.chartObj) {
134
+ const ctx = this.chart.nativeElement.getContext('2d');
135
+ this.chartObj = new Chart(ctx, options);
136
+ this.isFetching = false;
137
+ }
138
+ else {
139
+ this.chartObj.chart.data = chartData;
140
+ this.chartObj.update();
141
+ this.isFetching = false;
142
+ }
143
+ }
144
+ else {
145
+ this.isFetching = false;
146
+ // const ctx = this.chart.nativeElement.getContext('2d');
147
+ // let noOptions = {
148
+ // type: options.type,
149
+ // data: {
150
+ // datasets: [],
151
+ // },
152
+ // options: {},
153
+ // };
154
+ // this.chartObj = new Chart(ctx, noOptions);
155
+ // this.chartObj.chart.data = [];
156
+ }
157
+ });
158
+ }
159
+ updateStats() {
160
+ if (this.inputChartData) {
161
+ this.createChartWithoutPP();
162
+ }
163
+ else {
164
+ this.createChart();
165
+ }
166
+ }
167
+ ngOnInit() {
168
+ return __awaiter(this, void 0, void 0, function* () {
169
+ this.translationService.isArabic.subscribe((res) => {
170
+ this.isArabic = res;
171
+ });
172
+ setTimeout(() => {
173
+ if (this.inputChartData) {
174
+ this.createChartWithoutPP();
175
+ this.creatChart.next();
176
+ }
177
+ else {
178
+ this.createChart();
179
+ this.creatChart.next();
180
+ }
181
+ });
182
+ });
183
+ }
184
+ ngOnChanges(changes) {
185
+ var _a, _b, _c;
186
+ this.isFetching = true;
187
+ const minChanged = changes.min && !((_a = changes.min) === null || _a === void 0 ? void 0 : _a.firstChange);
188
+ const maxChanged = changes.max && !((_b = changes.max) === null || _b === void 0 ? void 0 : _b.firstChange);
189
+ const rangeChanged = changes.range && !((_c = changes.range) === null || _c === void 0 ? void 0 : _c.firstChange);
190
+ if (minChanged || maxChanged || rangeChanged) {
191
+ setTimeout(() => {
192
+ this.creatChart.next();
193
+ this.isFetching = false;
194
+ });
195
+ }
196
+ }
197
+ ngOnDestroy() {
198
+ this.myDataSubscription ? this.myDataSubscription.unsubscribe() : '';
199
+ this.onDestroy$.next(true);
200
+ this.onDestroy$.complete();
201
+ this.creatChart.unsubscribe();
202
+ }
203
+ getData() {
204
+ this.isFetching = true;
205
+ if (this.combinedData) {
206
+ return this.getCombinedData(this.pageProvider, this.quickFilters, this.range, this.pageProviderTwo, this.quickFilterTwo, this.quickFilterThree, this.statusOne, this.statusTwo, this.statusThree);
207
+ }
208
+ else {
209
+ let params = {
210
+ pageProvider: this.pageProvider,
211
+ currentPageIndex: 0,
212
+ offset: 0,
213
+ pageSize: 1,
214
+ dublincore_created_agg: this.range,
215
+ quickFilters: this.quickFilters,
216
+ dublincore_created_min: this.min,
217
+ dublincore_created_max: this.max,
218
+ system_currentLifeCycleState_3: JSON.stringify(this.systemCurrentLifeCycleState),
219
+ };
220
+ // if there tenant id sent from outside then add it to the params
221
+ if (this.tenantId) {
222
+ params['queryParams'] = `${this.tenantId}`;
223
+ }
224
+ if (this.asigneeDepartments) {
225
+ params['assignment_department_1'] = JSON.stringify(this.asigneeDepartments);
226
+ }
227
+ return this.callApi
228
+ .query(params, {
229
+ headers: this.headers,
230
+ })
231
+ .pipe(map((data) => {
232
+ const items = data.aggregations[this.aggregations].buckets
233
+ ? data.aggregations[this.aggregations].buckets.map((item) => ({
234
+ label: this.fetchedKey
235
+ ? _.get(item, this.fetchedKey)
236
+ : this.noFetchedKey
237
+ ? this.consturctChartLabel(item)
238
+ : item.key,
239
+ count: item.docCount,
240
+ }))
241
+ : [];
242
+ this.isFetching = false;
243
+ return {
244
+ data: items,
245
+ totalItems: data.totalSize,
246
+ };
247
+ }));
248
+ }
249
+ }
250
+ consturctChartLabel(item) {
251
+ let label;
252
+ let groupSplit;
253
+ let secrecy;
254
+ let depCode;
255
+ let departmentName;
256
+ let direction;
257
+ let restPrefix;
258
+ let myPrifx = `tenant_${this.tenantId}_cts_`;
259
+ if (item.fetchedKey['entity-type'] == 'group') {
260
+ restPrefix = item.key.replace(myPrifx, '');
261
+ groupSplit = restPrefix.split('_');
262
+ if (restPrefix.includes('Top_Secret')) {
263
+ secrecy = this.translationService.instant('vocabulary.VOC_SecrecyLevel.Top_Secret');
264
+ depCode = groupSplit[groupSplit.length - 3];
265
+ let dirExtracted = groupSplit[0];
266
+ direction = this.translationService.instant(dirExtracted[0].toUpperCase() + dirExtracted.substr(1).toLowerCase());
267
+ this.departmentApiService.getDepartmentDetails(depCode).subscribe((res) => {
268
+ var _a, _b;
269
+ departmentName = this.isArabic
270
+ ? (_a = res === null || res === void 0 ? void 0 : res.entries[0]) === null || _a === void 0 ? void 0 : _a.properties['dept:arabicName']
271
+ : (_b = res === null || res === void 0 ? void 0 : res.entries[0]) === null || _b === void 0 ? void 0 : _b.properties['dept:englishName'];
272
+ });
273
+ }
274
+ else {
275
+ secrecy = this.translationService.instant('vocabulary.VOC_SecrecyLevel.' + groupSplit[groupSplit.length - 1]);
276
+ depCode = groupSplit[groupSplit.length - 2];
277
+ let dirExtracted = groupSplit[0];
278
+ direction = this.translationService.instant(dirExtracted[0].toUpperCase() + dirExtracted.substr(1).toLowerCase());
279
+ this.departmentApiService.getDepartmentDetails(depCode).subscribe((res) => {
280
+ var _a, _b;
281
+ departmentName = this.isArabic
282
+ ? (_a = res === null || res === void 0 ? void 0 : res.entries[0]) === null || _a === void 0 ? void 0 : _a.properties['dept:arabicName']
283
+ : (_b = res === null || res === void 0 ? void 0 : res.entries[0]) === null || _b === void 0 ? void 0 : _b.properties['dept:englishName'];
284
+ });
285
+ }
286
+ label =
287
+ this.aggregations == 'assignment_department_agg'
288
+ ? departmentName + '-' + secrecy
289
+ : departmentName + ' ' + direction + '-' + secrecy;
290
+ }
291
+ else {
292
+ label = item.fetchedKey.fullName;
293
+ }
294
+ return label;
295
+ }
296
+ getCombinedData(pageProviderOne, quickFilterOne, selectedRange, pageProviderTwo, quickFilterTwo, quickFilterThree, statusOne, statusTwo, statusThree) {
297
+ let outgoingParams = {
298
+ pageProvider: pageProviderOne,
299
+ currentPageIndex: 0,
300
+ offset: 0,
301
+ pageSize: 1,
302
+ dublincore_created_agg: selectedRange,
303
+ quickFilters: quickFilterOne,
304
+ dublincore_created_min: this.min,
305
+ dublincore_created_max: this.max,
306
+ system_currentLifeCycleState_3: JSON.stringify(this.systemCurrentLifeCycleState),
307
+ };
308
+ // if there tenant id sent from outside then add it to the params
309
+ if (this.tenantId) {
310
+ outgoingParams['queryParams'] = `${this.tenantId}`;
311
+ }
312
+ const getOutgoing$ = this.callApi
313
+ .query(outgoingParams, {
314
+ headers: this.headers,
315
+ })
316
+ .pipe(map((data) => {
317
+ const items = data.aggregations[this.aggregations].buckets
318
+ ? data.aggregations[this.aggregations].buckets.map((item) => ({
319
+ label: this.fetchedKey ? _.get(item, this.fetchedKey) : item.key,
320
+ count: item.docCount,
321
+ id: item.key,
322
+ status: statusOne,
323
+ totalItems: data.totalSize,
324
+ }))
325
+ : [];
326
+ return {
327
+ data: items,
328
+ totalItems: data.totalSize,
329
+ };
330
+ }));
331
+ let incomingParams = {
332
+ pageProvider: pageProviderTwo,
333
+ currentPageIndex: 0,
334
+ offset: 0,
335
+ pageSize: 1,
336
+ dublincore_created_agg: selectedRange,
337
+ quickFilters: quickFilterTwo,
338
+ dublincore_created_min: this.min,
339
+ dublincore_created_max: this.max,
340
+ system_currentLifeCycleState_3: JSON.stringify(this.systemCurrentLifeCycleState),
341
+ };
342
+ // if there tenant id sent from outside then add it to the params
343
+ if (this.tenantId) {
344
+ incomingParams['queryParams'] = `${this.tenantId}`;
345
+ }
346
+ const getIncoming$ = this.callApi
347
+ .query(incomingParams, {
348
+ headers: this.headers,
349
+ })
350
+ .pipe(map((data) => {
351
+ const items = data.aggregations[this.aggregations].buckets
352
+ ? data.aggregations[this.aggregations].buckets.map((item) => ({
353
+ label: this.fetchedKey ? _.get(item, this.fetchedKey) : item.key,
354
+ count: item.docCount,
355
+ id: item.key,
356
+ status: statusTwo,
357
+ totalItems: data.totalSize,
358
+ }))
359
+ : [];
360
+ return {
361
+ data: items,
362
+ totalItems: data.totalSize,
363
+ };
364
+ }));
365
+ let internalParams = {
366
+ pageProvider: pageProviderTwo,
367
+ currentPageIndex: 0,
368
+ offset: 0,
369
+ pageSize: 1,
370
+ dublincore_created_agg: selectedRange,
371
+ quickFilters: quickFilterThree,
372
+ dublincore_created_min: this.min,
373
+ dublincore_created_max: this.max,
374
+ system_currentLifeCycleState_3: JSON.stringify(this.systemCurrentLifeCycleState),
375
+ };
376
+ // if there tenant id sent from outside then add it to the params
377
+ if (this.tenantId) {
378
+ internalParams['queryParams'] = `${this.tenantId}`;
379
+ }
380
+ const getInternal$ = this.callApi
381
+ .query(internalParams, {
382
+ headers: this.headers,
383
+ })
384
+ .pipe(map((data) => {
385
+ const items = data.aggregations[this.aggregations].buckets
386
+ ? data.aggregations[this.aggregations].buckets.map((item) => ({
387
+ label: this.fetchedKey ? _.get(item, this.fetchedKey) : item.key,
388
+ count: item.docCount,
389
+ id: item.key,
390
+ status: statusThree,
391
+ totalItems: data.totalSize,
392
+ }))
393
+ : [];
394
+ return {
395
+ data: items,
396
+ totalItems: data.totalSize,
397
+ };
398
+ }));
399
+ if (this.isInternalActive) {
400
+ return forkJoin([getOutgoing$, getIncoming$, getInternal$]).pipe(map((data) => {
401
+ let combinedData = [...data[0].data, ...data[1].data, ...data[2].data];
402
+ this.isFetching = false;
403
+ return combinedData;
404
+ }));
405
+ }
406
+ else {
407
+ return forkJoin([getOutgoing$, getIncoming$]).pipe(map((data) => {
408
+ let combinedData = [...data[0].data, ...data[1].data];
409
+ this.isFetching = false;
410
+ return combinedData;
411
+ }));
412
+ }
413
+ }
414
+ previewCorrespondences() {
415
+ let queryParams;
416
+ if (this.combinedData) {
417
+ queryParams = {
418
+ combinedData: this.combinedData,
419
+ pageProvider: this.pageProvider,
420
+ headers: JSON.stringify(this.headers),
421
+ range: this.range,
422
+ aggregations: this.aggregations,
423
+ quickFilterOne: this.quickFilters,
424
+ quickFilterTwo: this.quickFilterTwo,
425
+ quickFilterThree: this.quickFilterThree,
426
+ systemCurrentLifeCycleState: this.systemCurrentLifeCycleState,
427
+ statusOne: this.statusOne,
428
+ statusTwo: this.statusTwo,
429
+ statusThree: this.statusThree,
430
+ min: this.min,
431
+ max: this.max,
432
+ chartTitle: this.cardTitle,
433
+ };
434
+ }
435
+ else {
436
+ queryParams = {
437
+ combinedData: this.combinedData,
438
+ pageProvider: this.pageProvider,
439
+ quickFilterOne: this.quickFilters,
440
+ headers: JSON.stringify(this.headers),
441
+ range: this.range,
442
+ aggregations: this.aggregations,
443
+ systemCurrentLifeCycleState: this.systemCurrentLifeCycleState,
444
+ min: this.min,
445
+ max: this.max,
446
+ chartTitle: this.cardTitle,
447
+ };
448
+ }
449
+ // if there tenant id sent from outside then add it to the params
450
+ if (this.tenantId) {
451
+ queryParams['queryParams'] = `${this.tenantId}`;
452
+ }
453
+ this.router.navigate(['report', 'chart-details'], {
454
+ queryParams: queryParams,
455
+ });
456
+ }
457
+ stringToHslColor(str, s, l) {
458
+ var hash = 0;
459
+ for (var i = 0; i < str.length; i++) {
460
+ hash = str.charCodeAt(i) + ((hash << 5) - hash);
461
+ }
462
+ var h = hash % 360;
463
+ return 'hsl(' + h + ', ' + s + '%, ' + l + '%)';
464
+ }
465
+ }
466
+ DynamicChartComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0, type: DynamicChartComponent, deps: [{ token: i1.TranslateService }, { token: i0.ChangeDetectorRef }, { token: i2.CallApiService }, { token: i3.Router }, { token: i4.ChartDataService }, { token: i5.TranslationService }, { token: i6.DepartmentApiService }, { token: i0.NgZone }], target: i0.ɵɵFactoryTarget.Component });
467
+ DynamicChartComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "12.2.17", type: DynamicChartComponent, selector: "cts-dynamic-chart", inputs: { prefix: "prefix", chartType: "chartType", randomColors: "randomColors", pageProvider: "pageProvider", headers: "headers", observable: "observable", aggregations: "aggregations", quickFilters: "quickFilters", systemCurrentLifeCycleState: "systemCurrentLifeCycleState", range: "range", label: "label", selectedRange: "selectedRange", tenantId: "tenantId", colors: "colors", randomColor: "randomColor", fetchedKey: "fetchedKey", pageProviderTwo: "pageProviderTwo", quickFilterTwo: "quickFilterTwo", quickFilterThree: "quickFilterThree", combinedData: "combinedData", statusOne: "statusOne", statusTwo: "statusTwo", statusThree: "statusThree", min: "min", max: "max", width: "width", height: "height", card: "card", cardTitle: "cardTitle", inputChartData: "inputChartData", asigneeDepartments: "asigneeDepartments", noFetchedKey: "noFetchedKey", isInternalActive: "isInternalActive" }, viewQueries: [{ propertyName: "chart", first: true, predicate: ["revenueLineChart"], descendants: true }], usesOnChanges: true, ngImport: i0, template: "<div class=\"card-continer\" *ngIf=\"card; else test\">\r\n <div class=\"chart-card-header\">\r\n <div class=\"chart-card-title\">{{ cardTitle | translate }}</div>\r\n <button class=\"chart-card-button\" (click)=\"previewCorrespondences()\">\r\n {{ 'report.Preview' | translate }}\r\n </button>\r\n </div>\r\n <ng-container *ngIf=\"isFetching\">\r\n <cts-spinner></cts-spinner>\r\n </ng-container>\r\n <div class=\"stat chart-canvas\" [style.height.px]=\"height\">\r\n <div [hidden]=\"data.data?.length == 0 || data.length == 0\">\r\n <canvas #revenueLineChart [height]=\"height\" [width]=\"width\"></canvas>\r\n </div>\r\n <div class=\"no-stats\" *ngIf=\"data.data?.length == 0 || data.length == 0\">\r\n <span>{{ 'STATS.noData' | translate }}</span>\r\n </div>\r\n </div>\r\n</div>\r\n\r\n<ng-template #test>\r\n <div class=\"stat\">\r\n <canvas #revenueLineChart [height]=\"height\" [width]=\"width\"></canvas>\r\n </div>\r\n</ng-template>\r\n", styles: [".bi{margin:0!important}.memo-sorting-wrapper{width:265px;margin:0 10px;height:100%;display:flex}.memo-sorting-wrapper .sorting-direction{width:65px;height:40px;background-color:#465573;color:#fff;font-size:20px;display:flex;justify-content:center;align-items:center;cursor:pointer}.memo-sorting-wrapper .memo-sorting-trigger{width:calc(100% - 65px);height:100%;background-color:transparent;border:1px solid lightgrey;display:flex;justify-content:space-between;align-items:center;padding:0 15px;font-size:14px}.memo-sorting-wrapper .memo-sorting-trigger i{font-size:16px;color:gray}.memo-sorting-menu{width:200px}.my-button{border:1px solid #465573;color:#465573;border-radius:5px;background-color:transparent;font-weight:bold;min-width:80px;height:40px}.my-button.reset{border:none}.my-button:hover{color:#fff;background-color:#465573}.my-button:hover.reset{color:#465573;border:1px solid #465573;background-color:#fff}.app-property-value .app-input-wrapper label{color:#646f85;font-size:13px;margin-bottom:5px}.app-property-value .app-input-wrapper label .text-danger{font-size:16px;line-height:14px;margin:0 5px!important}.app-property-value .app-input-wrapper .form-control{border:1px solid #ccc;border-radius:5px;background-color:#8f98aa1a;height:40px}.app-property-value .app-input-wrapper .form-control:disabled{background-color:#e9ecef!important}.app-property-value .app-input-wrapper .form-control:focus{border:1px solid #1a96c6;box-shadow:0 0 4px #79c3c26b!important}.app-property-value .app-input-wrapper .app-textitem-editable-error .error-containers{list-style:none;padding:0;margin:0;font-size:14px}.app-property-value .app-input-wrapper .app-textitem-editable-error .error-containers .error{margin-top:5px}.autocomplete-container .input-container input:focus,hijri-gregorian-datepicker .form-group .input-group .form-control:focus,.ng-select.ng-select-focused .ng-select-container{border:1px solid #1a96c6!important;box-shadow:0 0 4px #79c3c26b!important}input::placeholder{font-size:12px}.form-control:focus{box-shadow:none!important}.mat-stepper-horizontal{margin-top:-25px}.mat-stepper-horizontal .mat-horizontal-stepper-header-container .mat-step-header.cdk-program-focused{background-color:transparent}.mat-stepper-horizontal .mat-horizontal-stepper-header-container .mat-step-header .mat-step-icon-selected{background-color:transparent;color:#fff;background-image:linear-gradient(to right,#0dbab5,#1a96c6)}@media only screen and (max-width: 576px){.mat-stepper-horizontal .mat-horizontal-stepper-header-container .mat-step-header .mat-step-label .mat-step-text-label{white-space:pre-wrap;overflow:visible}}.mat-stepper-horizontal .mat-horizontal-content-container{overflow:visible}@media only screen and (max-width: 768px){.mat-stepper-horizontal .mat-horizontal-content-container{padding:0 0 24px}}.mat-stepper-horizontal.rtl .mat-horizontal-stepper-header:first-child:after,.mat-stepper-horizontal.rtl .mat-horizontal-stepper-header:last-child:before{display:none}.mat-stepper-horizontal.rtl .mat-horizontal-stepper-header:first-child:before{border-top-width:1px;border-top-style:solid;content:\"\";display:inline-block;height:0;position:absolute;width:calc(50% - 20px);left:0}.mat-stepper-horizontal.rtl .mat-horizontal-stepper-header:last-child:after{border-top-width:1px;border-top-style:solid;content:\"\";display:inline-block;height:0;position:absolute;width:calc(50% - 20px);right:0}.form-wrapper{padding:30px 15px;border:1px solid #dde0e2}.form-wrapper .buttons-wrapper{display:flex;justify-content:space-between}.form-wrapper .buttons-wrapper .action-buttons-wrapper{display:flex}.form-wrapper .buttons-wrapper button{background-image:linear-gradient(to right,#0dbab5,#1a96c6);height:40px;color:#fff;border:none;width:125px;margin-top:20px;border-radius:5px}.form-wrapper .buttons-wrapper button:disabled{opacity:.4;cursor:not-allowed}.form-wrapper .buttons-wrapper button:hover{opacity:.7}.form-wrapper .upload-wrapper{display:flex;flex-direction:column;justify-content:flex-end}.form-wrapper .upload-wrapper label{color:#8f98aa;font-size:14px}.form-wrapper .upload-wrapper button{padding:10px;border:1px solid lightgray}.form-wrapper .upload-wrapper button span{margin:0 10px}.renameFileComponent .form-wrapper{padding:30px 15px;border:none!important}.renameFileComponent .form-wrapper .buttons-wrapper{display:flex;justify-content:space-between}.renameFileComponent .form-wrapper .buttons-wrapper .action-buttons-wrapper{display:flex}.renameFileComponent .form-wrapper .buttons-wrapper button{background-image:linear-gradient(to right,#0dbab5,#1a96c6);height:40px;color:#fff;border:none;width:125px;margin-top:20px;border-radius:5px}.renameFileComponent .form-wrapper .buttons-wrapper button:disabled{opacity:.4;cursor:not-allowed}.renameFileComponent .form-wrapper .buttons-wrapper button:hover{opacity:.7}.renameFileComponent .form-wrapper .upload-wrapper{display:flex;flex-direction:column;justify-content:flex-end}.renameFileComponent .form-wrapper .upload-wrapper label{color:#8f98aa;font-size:14px}.renameFileComponent .form-wrapper .upload-wrapper button{padding:10px;border:1px solid lightgray}.renameFileComponent .form-wrapper .upload-wrapper button span{margin:0 10px}.my-dynamic-viewer{display:flex;align-items:center;font-size:12px;min-height:30px}.my-dynamic-viewer .my-label{font-size:12px;font-weight:500;width:150px;word-break:break-word}@media (max-width: 992px){.my-dynamic-viewer .my-label{width:50%}}.my-dynamic-viewer .my-value{width:calc(100% - 150px);word-break:break-word}@media (max-width: 992px){.my-dynamic-viewer .my-value{width:50%}}.my-dynamic-viewer .direction-img{font-size:14px}.my-dynamic-viewer .direction-img .incoming{display:none}.my-dynamic-viewer .direction-img .outgoing{display:none}.my-dynamic-viewer .direction-img .internal{display:none}.my-dynamic-viewer.draft .my-value{color:#596973}.my-dynamic-viewer.inProgress .my-value{color:#3c3cf0}.my-dynamic-viewer.registered .my-value{color:#4f008c}.my-dynamic-viewer.archived .my-value{color:#fbb62c}.my-dynamic-viewer.closed .my-value{color:#00dca5}.my-dynamic-viewer.approved .my-value{color:#06a57e}.my-dynamic-viewer.assigned .my-value{color:#fd6670}.my-dynamic-viewer.sent .my-value{color:#3c3cf0}.my-dynamic-viewer.published .my-value{color:#00dca5}.my-dynamic-viewer.Outgoing .my-value{display:flex}.my-dynamic-viewer.Outgoing .my-value .direction-img .outgoing{color:#fbb62c;margin:1px 5px;display:flex}.my-dynamic-viewer.Outgoing .my-value .text{margin:0 5px}.my-dynamic-viewer.Internal .my-value{display:flex}.my-dynamic-viewer.Internal .my-value .direction-img .internal{color:#3c3cf0;margin:1px 5px;display:flex}.my-dynamic-viewer.Internal .my-value .text{margin:0 5px}.my-dynamic-viewer.Incoming .my-value{display:flex}.my-dynamic-viewer.Incoming .my-value .direction-img .incoming{color:#00dca5;display:flex}.my-dynamic-viewer.Incoming .my-value .text{margin:-3px 5px 0}.my-dynamic-viewer.vertical{display:block}.my-dynamic-viewer.vertical .my-label{width:auto}.my-dynamic-viewer.vertical .my-value{width:auto}.my-dynamic-viewer.with-out-label{width:100%!important}.no-stats{width:100%;height:100%;display:grid;place-items:center}.card-continer{background:#ffffff;border-radius:5px;width:100%;padding:16px 20px;box-shadow:0 1px 1px #00000017}.card-continer .chart-card-header{display:flex;justify-content:space-between;align-items:center}.card-continer .chart-card-header .chart-card-title{font-weight:500}.card-continer .chart-card-header .chart-card-button{all:unset;background:#3341551a;color:#465573;padding:6px 18px;border-radius:24px;font-size:16px;cursor:pointer}.card-continer .chart-card-header .chart-card-button:hover{background:#8f98aa;color:#fff}.chart-canvas{position:relative;width:100%}\n"], components: [{ type: i7.SpinnerComponent, selector: "cts-spinner" }], directives: [{ type: i8.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }], pipes: { "translate": i1.TranslatePipe } });
468
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0, type: DynamicChartComponent, decorators: [{
469
+ type: Component,
470
+ args: [{
471
+ selector: 'cts-dynamic-chart',
472
+ templateUrl: './dynamic-chart.component.html',
473
+ styleUrls: ['./dynamic-chart.component.scss'],
474
+ }]
475
+ }], ctorParameters: function () { return [{ type: i1.TranslateService }, { type: i0.ChangeDetectorRef }, { type: i2.CallApiService }, { type: i3.Router }, { type: i4.ChartDataService }, { type: i5.TranslationService }, { type: i6.DepartmentApiService }, { type: i0.NgZone }]; }, propDecorators: { chart: [{
476
+ type: ViewChild,
477
+ args: ['revenueLineChart', { static: false }]
478
+ }], prefix: [{
479
+ type: Input
480
+ }], chartType: [{
481
+ type: Input
482
+ }], randomColors: [{
483
+ type: Input
484
+ }], pageProvider: [{
485
+ type: Input
486
+ }], headers: [{
487
+ type: Input
488
+ }], observable: [{
489
+ type: Input
490
+ }], aggregations: [{
491
+ type: Input
492
+ }], quickFilters: [{
493
+ type: Input
494
+ }], systemCurrentLifeCycleState: [{
495
+ type: Input
496
+ }], range: [{
497
+ type: Input
498
+ }], label: [{
499
+ type: Input
500
+ }], selectedRange: [{
501
+ type: Input
502
+ }], tenantId: [{
503
+ type: Input
504
+ }], colors: [{
505
+ type: Input
506
+ }], randomColor: [{
507
+ type: Input
508
+ }], fetchedKey: [{
509
+ type: Input
510
+ }], pageProviderTwo: [{
511
+ type: Input
512
+ }], quickFilterTwo: [{
513
+ type: Input
514
+ }], quickFilterThree: [{
515
+ type: Input
516
+ }], combinedData: [{
517
+ type: Input
518
+ }], statusOne: [{
519
+ type: Input
520
+ }], statusTwo: [{
521
+ type: Input
522
+ }], statusThree: [{
523
+ type: Input
524
+ }], min: [{
525
+ type: Input
526
+ }], max: [{
527
+ type: Input
528
+ }], width: [{
529
+ type: Input
530
+ }], height: [{
531
+ type: Input
532
+ }], card: [{
533
+ type: Input
534
+ }], cardTitle: [{
535
+ type: Input
536
+ }], inputChartData: [{
537
+ type: Input
538
+ }], asigneeDepartments: [{
539
+ type: Input
540
+ }], noFetchedKey: [{
541
+ type: Input
542
+ }], isInternalActive: [{
543
+ type: Input
544
+ }] } });
545
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZHluYW1pYy1jaGFydC5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9udXhlby1kZXZlbG9wbWVudC1mcmFtZXdvcmsvc3JjL2xpYi9jb21wb25lbnRzL2R5bmFtaWMtY2hhcnQvZHluYW1pYy1jaGFydC9keW5hbWljLWNoYXJ0LmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL251eGVvLWRldmVsb3BtZW50LWZyYW1ld29yay9zcmMvbGliL2NvbXBvbmVudHMvZHluYW1pYy1jaGFydC9keW5hbWljLWNoYXJ0L2R5bmFtaWMtY2hhcnQuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IjtBQUFBLE9BQU8sRUFFTCxTQUFTLEVBRVQsS0FBSyxFQU1MLFNBQVMsR0FDVixNQUFNLGVBQWUsQ0FBQztBQUd2QixPQUFPLEVBQUUsS0FBSyxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQ3RDLGtDQUFrQztBQUNsQyxPQUFPLHdCQUF3QixDQUFDO0FBQ2hDLE9BQU8sS0FBSyxDQUFDLE1BQU0sUUFBUSxDQUFDO0FBQzVCLE9BQU8sRUFBYyxPQUFPLEVBQWdCLFFBQVEsRUFBRSxTQUFTLEVBQUUsTUFBTSxNQUFNLENBQUM7QUFDOUUsT0FBTyxFQUFFLFlBQVksRUFBRSxHQUFHLEVBQUUsU0FBUyxFQUFFLE1BQU0sZ0JBQWdCLENBQUM7Ozs7Ozs7Ozs7QUFLOUQsY0FBYztBQU1kLE1BQU0sT0FBTyxxQkFBcUI7SUEwRWhDLFlBQ1MsU0FBMkIsRUFDM0IsY0FBaUMsRUFDaEMsT0FBdUIsRUFDdkIsTUFBYyxFQUNmLFNBQTJCLEVBQzFCLGtCQUFzQyxFQUN0QyxvQkFBMEMsRUFDMUMsTUFBYztRQVBmLGNBQVMsR0FBVCxTQUFTLENBQWtCO1FBQzNCLG1CQUFjLEdBQWQsY0FBYyxDQUFtQjtRQUNoQyxZQUFPLEdBQVAsT0FBTyxDQUFnQjtRQUN2QixX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RyxZQUFZO3NCQUFwQixLQUFLO2dCQUNHLE9BQU87c0JBQWYsS0FBSztnQkFDRyxVQUFVO3NCQUFsQixLQUFLO2dCQUNHLFlBQVk7c0JBQXBCLEtBQUs7Z0JBQ0csWUFBWTtzQkFBcEIsS0FBSztnQkFDRywyQkFBMkI7c0JBQW5DLEtBQUs7Z0JBQ0csS0FBSztzQkFBYixLQUFLO2dCQUNHLEtBQUs7c0JBQWIsS0FBSztnQkFFTixhQUFhO3NCQURaLEtBQUs7Z0JBRUcsUUFBUTtzQkFBaEIsS0FBSztnQkFDRyxNQUFNO3NCQUFkLEtBQUs7Z0JBY04sV0FBVztzQkFEVixLQUFLO2dCQUdOLFVBQVU7c0JBRFQsS0FBSztnQkFHTixlQUFlO3NCQURkLEtBQUs7Z0JBR04sY0FBYztzQkFEYixLQUFLO2dCQUdOLGdCQUFnQjtzQkFEZixLQUFLO2dCQUdOLFlBQVk7c0JBRFgsS0FBSztnQkFHTixTQUFTO3NCQURSLEtBQUs7Z0JBR04sU0FBUztzQkFEUixLQUFLO2dCQUdOLFdBQVc7c0JBRFYsS0FBSztnQkFHTixHQUFHO3NCQURGLEtBQUs7Z0JBR04sR0FBRztzQkFERixLQUFLO2dCQUdOLEtBQUs7c0JBREosS0FBSztnQkFHTixNQUFNO3NCQURMLEtBQUs7Z0JBR04sSUFBSTtzQkFESCxLQUFLO2dCQUdOLFNBQVM7c0JBRFIsS0FBSztnQkFHTixjQUFjO3NCQURiLEtBQUs7Z0JBR04sa0JBQWtCO3NCQURqQixLQUFLO2dCQUdOLFlBQVk7c0JBRFgsS0FBSztnQkFHRyxnQkFBZ0I7c0JBQXhCLEtBQUsiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge1xyXG4gIENoYW5nZURldGVjdG9yUmVmLFxyXG4gIENvbXBvbmVudCxcclxuICBFbGVtZW50UmVmLFxyXG4gIElucHV0LFxyXG4gIE5nWm9uZSxcclxuICBPbkNoYW5nZXMsXHJcbiAgT25EZXN0cm95LFxyXG4gIE9uSW5pdCxcclxuICBTaW1wbGVDaGFuZ2VzLFxyXG4gIFZpZXdDaGlsZCxcclxufSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuaW1wb3J0IHsgUm91dGVyIH0gZnJvbSAnQGFuZ3VsYXIvcm91dGVyJztcclxuaW1wb3J0IHsgVHJhbnNsYXRlU2VydmljZSB9IGZyb20gJ0BuZ3gtdHJhbnNsYXRlL2NvcmUnO1xyXG5pbXBvcnQgeyBDaGFydCB9IGZyb20gJ2NoYXJ0LmpzL2F1dG8nO1xyXG4vLyBpbXBvcnQgJ2NoYXJ0anMtcGx1Z2luLWxhYmVscyc7XHJcbmltcG9ydCAnY2hhcnRqcy1hZGFwdGVyLW1vbWVudCc7XHJcbmltcG9ydCAqIGFzIF8gZnJvbSAnbG9kYXNoJztcclxuaW1wb3J0IHsgT2JzZXJ2YWJsZSwgU3ViamVjdCwgU3Vic2NyaXB0aW9uLCBmb3JrSm9pbiwgZnJvbUV2ZW50IH0gZnJvbSAncnhqcyc7XHJcbmltcG9ydCB7IGRlYm91bmNlVGltZSwgbWFwLCB0YWtlVW50aWwgfSBmcm9tICdyeGpzL29wZXJhdG9ycyc7XHJcbmltcG9ydCB7IENhbGxBcGlTZXJ2aWNlIH0gZnJvbSAnLi4vLi4vLi4vY29yZS9zZXJ2aWNlcy9jYWxsQXBpL2NhbGwtYXBpLnNlcnZpY2UnO1xyXG5pbXBvcnQgeyBUcmFuc2xhdGlvblNlcnZpY2UgfSBmcm9tICcuLi8uLi8uLi9jb3JlL3NlcnZpY2VzL3RyYW5zbGF0aW9uL3RyYW5zbGF0aW9uLnNlcnZpY2UnO1xyXG5pbXBvcnQgeyBEZXBhcnRtZW50QXBpU2VydmljZSB9IGZyb20gJy4uLy4uL2R5bmFtaWMtZm9ybS9jb21wb25lbnRzL2R5bmFtaWMtZm9ybS1kZXBhcnRtZW50L3NlcnZpY2VzL2RlcGFydG1lbnQtYXBpLnNlcnZpY2UnO1xyXG5pbXBvcnQgeyBDaGFydERhdGFTZXJ2aWNlIH0gZnJvbSAnLi4vc2VydmljZXMvY2hhcnQtZGF0YS5zZXJ2aWNlJztcclxuLyoqIEBpZ25vcmUgKi9cclxuQENvbXBvbmVudCh7XHJcbiAgc2VsZWN0b3I6ICdjdHMtZHluYW1pYy1jaGFydCcsXHJcbiAgdGVtcGxhdGVVcmw6ICcuL2R5bmFtaWMtY2hhcnQuY29tcG9uZW50Lmh0bWwnLFxyXG4gIHN0eWxlVXJsczogWycuL2R5bmFtaWMtY2hhcnQuY29tcG9uZW50LnNjc3MnXSxcclxufSlcclxuZXhwb3J0IGNsYXNzIER5bmFtaWNDaGFydENvbXBvbmVudCBpbXBsZW1lbnRzIE9uSW5pdCwgT25DaGFuZ2VzLCBPbkRlc3Ryb3kge1xyXG4gIEBWaWV3Q2hpbGQoJ3JldmVudWVMaW5lQ2hhcnQnLCB7IHN0YXRpYzogZmFsc2UgfSkgY2hhcnQ6IEVsZW1lbnRSZWY7XHJcbiAgQElucHV0KClcclxuICBwcmVmaXggPSAnU1RBVFMuJzsgLy8gZm9yIHRyYW5zbGF0aW9uXHJcbiAgQElucHV0KClcclxuICBjaGFydFR5cGU7IC8vIGZ1bmN0aW9ucyBleGlzdCBpbnNpZGUgQ2hhcnREYXRhU2VydmljZVxyXG4gIEBJbnB1dCgpIHJhbmRvbUNvbG9yczogYm9vbGVhbiA9IGZhbHNlO1xyXG4gIHByaXZhdGUgY2hhcnRPYmo7XHJcbiAgcHJpdmF0ZSBvbkRlc3Ryb3kkID0gbmV3IFN1YmplY3Q8Ym9vbGVhbj4oKTtcclxuICBjcmVhdENoYXJ0ID0gbmV3IFN1YmplY3Q8YW55PigpO1xyXG4gIEBJbnB1dCgpIHBhZ2VQcm92aWRlcjsgLy8gZGVmaW5lIGFwaSB0byBnZXQgdGhlIGRhdGEgZnJvbVxyXG4gIEBJbnB1dCgpIGhlYWRlcnMgPSB7fTsgLy8gaGVhZGVycyBpbiBjb25zdGFudHNcclxuICBASW5wdXQoKSBvYnNlcnZhYmxlOyAvLyBvYnNlcnZhYmxlIGluIGNhc2Ugb2YgY2FsbCBhcGkgaXMgY2FsbGVkIGZyb20gb3V0c2lkZSB0aGUgY29tcG9uZW50XHJcbiAgQElucHV0KCkgYWdncmVnYXRpb25zO1xyXG4gIEBJbnB1dCgpIHF1aWNrRmlsdGVycztcclxuICBASW5wdXQoKSBzeXN0ZW1DdXJyZW50TGlmZUN5Y2xlU3RhdGU7XHJcbiAgQElucHV0KCkgcmFuZ2UgPSAnW1wiZnJvbV9ub3ctN2RfdG9fbm93XCJdJztcclxuICBASW5wdXQoKSBsYWJlbDtcclxuICBASW5wdXQoKVxyXG4gIHNlbGVjdGVkUmFuZ2UgPSAnd2Vlayc7IC8vIHJhbmdlIHRvIGJlIGZpbHRlcmQgb25cclxuICBASW5wdXQoKSB0ZW5hbnRJZDsgLy8gd2lsbCBiZSBzZW50IG9ubHkgaW4gY2FzZSBvZiBtdWx0aSB0ZW5hbnRcclxuICBASW5wdXQoKSBjb2xvcnM6IGFueSA9IHtcclxuICAgIGluUHJvZ3Jlc3M6ICcjM2MzY2YwJyxcclxuICAgIHJlZ2lzdGVyZWQ6ICcjNWExNDk2JyxcclxuICAgIGRyYWZ0OiAnIzU5Njk3MycsXHJcbiAgICBhcmNoaXZlZDogJyNmYmI2MmMnLFxyXG4gICAgY2xvc2VkOiAnIzAwZGNhNScsXHJcbiAgICBhc3NpZ25lZDogJyNmZDY2NzAnLFxyXG4gICAgdW5kZWZpbmVkOiAnI2Y3ZjhmOScsXHJcbiAgICBvdGhlcjogJyNmMTcyMDUnLFxyXG4gIH07XHJcbiAgZGF0YTogYW55ID0gW107XHJcbiAgaXNGZXRjaGluZzogYm9vbGVhbiA9IGZhbHNlO1xyXG4gIGNoYXJ0czogW107XHJcbiAgQElucHV0KClcclxuICByYW5kb21Db2xvcjogYm9vbGVhbiA9IGZhbHNlO1xyXG4gIEBJbnB1dCgpXHJcbiAgZmV0Y2hlZEtleTtcclxuICBASW5wdXQoKVxyXG4gIHBhZ2VQcm92aWRlclR3bztcclxuICBASW5wdXQoKVxyXG4gIHF1aWNrRmlsdGVyVHdvO1xyXG4gIEBJbnB1dCgpXHJcbiAgcXVpY2tGaWx0ZXJUaHJlZTtcclxuICBASW5wdXQoKVxyXG4gIGNvbWJpbmVkRGF0YSA9IGZhbHNlO1xyXG4gIEBJbnB1dCgpXHJcbiAgc3RhdHVzT25lO1xyXG4gIEBJbnB1dCgpXHJcbiAgc3RhdHVzVHdvO1xyXG4gIEBJbnB1dCgpXHJcbiAgc3RhdHVzVGhyZWU7XHJcbiAgQElucHV0KClcclxuICBtaW47XHJcbiAgQElucHV0KClcclxuICBtYXg7XHJcbiAgQElucHV0KClcclxuICB3aWR0aDtcclxuICBASW5wdXQoKVxyXG4gIGhlaWdodDtcclxuICBASW5wdXQoKVxyXG4gIGNhcmQgPSBmYWxzZTtcclxuICBASW5wdXQoKVxyXG4gIGNhcmRUaXRsZSA9ICcnO1xyXG4gIEBJbnB1dCgpXHJcbiAgaW5wdXRDaGFydERhdGE7XHJcbiAgQElucHV0KClcclxuICBhc2lnbmVlRGVwYXJ0bWVudHM7XHJcbiAgQElucHV0KClcclxuICBub0ZldGNoZWRLZXkgPSBmYWxzZTtcclxuXHJcbiAgQElucHV0KCkgaXNJbnRlcm5hbEFjdGl2ZSA9IGZhbHNlOyAvLyB1c2VkIHRvIGNvbnRyb2wgb24gc2hvd2luZyByZXN1bHRzIG9mIGludGVybmFsIGNvcmVzcCByZXN1bHRzIGluIGNoYXJ0c1xyXG4gIG15RGF0YVN1YnNjcmlwdGlvbjogU3Vic2NyaXB0aW9uO1xyXG4gIGlzQXJhYmljO1xyXG4gIGNvbnN0cnVjdG9yKFxyXG4gICAgcHVibGljIHRyYW5zbGF0ZTogVHJhbnNsYXRlU2VydmljZSxcclxuICAgIHB1YmxpYyBjaGFuZ2VEZXRlY3RvcjogQ2hhbmdlRGV0ZWN0b3JSZWYsXHJcbiAgICBwcml2YXRlIGNhbGxBcGk6IENhbGxBcGlTZXJ2aWNlLFxyXG4gICAgcHJpdmF0ZSByb3V0ZXI6IFJvdXRlcixcclxuICAgIHB1YmxpYyBjaGFydERhdGE6IENoYXJ0RGF0YVNlcnZpY2UsXHJcbiAgICBwcml2YXRlIHRyYW5zbGF0aW9uU2VydmljZTogVHJhbnNsYXRpb25TZXJ2aWNlLFxyXG4gICAgcHJpdmF0ZSBkZXBhcnRtZW50QXBpU2VydmljZTogRGVwYXJ0bWVudEFwaVNlcnZpY2UsXHJcbiAgICBwcml2YXRlIG5nWm9uZTogTmdab25lXHJcbiAgKSB7XHJcbiAgICBDaGFydC5kZWZhdWx0cy5mb250LmZhbWlseSA9ICdGUyBBbGJlcnQgQXJhYmljIFdlYic7XHJcbiAgICBDaGFydC5kZWZhdWx0cy5mb250LnNpemUgPSAxMztcclxuICAgIHRoaXMudHJhbnNsYXRlLm9uTGFuZ0NoYW5nZS5waXBlKHRha2VVbnRpbCh0aGlzLm9uRGVzdHJveSQpKS5zdWJzY3JpYmUoKGRhdGEpID0+IHtcclxuICAgICAgdGhpcy5jcmVhdENoYXJ0Lm5leHQoKTtcclxuICAgIH0pO1xyXG4gIH1cclxuXHJcbiAgcHJvdGVjdGVkIGxpc3RlblRvV2luZG93UmVzaXplKCkge1xyXG4gICAgdGhpcy5uZ1pvbmUucnVuT3V0c2lkZUFuZ3VsYXIoKCkgPT4ge1xyXG4gICAgICBmcm9tRXZlbnQod2luZG93LCAncmVzaXplJylcclxuICAgICAgICAucGlwZShkZWJvdW5jZVRpbWUoMzAwKSwgdGFrZVVudGlsKHRoaXMub25EZXN0cm95JCkpXHJcbiAgICAgICAgLnN1YnNjcmliZSgoKSA9PiB7XHJcbiAgICAgICAgICBpZiAodGhpcy5jaGFydE9iaikge1xyXG4gICAgICAgICAgICB0aGlzLmNoYXJ0T2JqLnJlc2l6ZSgpO1xyXG4gICAgICAgICAgfVxyXG4gICAgICAgIH0pO1xyXG4gICAgfSk7XHJcbiAgfVxyXG5cclxuICBjcmVhdGVDaGFydCgpIHtcclxuICAgIHRoaXMuY3JlYXRDaGFydC5waXBlKGRlYm91bmNlVGltZSg1MDApKS5zdWJzY3JpYmUoKHJlcykgPT4ge1xyXG4gICAgICB0aGlzLmdldERhdGEoKS5zdWJzY3JpYmUoKGRhdGEpID0+IHtcclxuICAgICAgICB0aGlzLmRhdGEgPSBkYXRhO1xyXG4gICAgICAgIHRoaXMuY2hhbmdlRGV0ZWN0b3IuZGV0ZWN0Q2hhbmdlcygpO1xyXG4gICAgICAgIGxldCByYW5kb21Db2xvcnMgPSB7fTtcclxuICAgICAgICBpZiAodGhpcy5yYW5kb21Db2xvcnMpIHtcclxuICAgICAgICAgIGRhdGEuZGF0YS5mb3JFYWNoKChpdGVtKSA9PiB7XHJcbiAgICAgICAgICAgIHJhbmRvbUNvbG9yc1tpdGVtLmxhYmVsXSA9IHRoaXMuc3RyaW5nVG9Ic2xDb2xvcihgJHtpdGVtLmxhYmVsfWAsIDQwLCA3MCk7XHJcbiAgICAgICAgICB9KTtcclxuICAgICAgICB9XHJcbiAgICAgICAgdGhpcy5jb2xvcnMgPSB0aGlzLnJhbmRvbUNvbG9ycyA/IHJhbmRvbUNvbG9ycyA6IHRoaXMuY29sb3JzO1xyXG4gICAgICAgIGNvbnN0IHsgb3B0aW9ucywgY2hhcnREYXRhIH0gPSB0aGlzLmNoYXJ0RGF0YVt0aGlzLmNoYXJ0VHlwZV0oe1xyXG4gICAgICAgICAgZGF0YTogZGF0YSxcclxuICAgICAgICAgIGNvbG9yczogdGhpcy5jb2xvcnMsXHJcbiAgICAgICAgICBwcmVmaXg6IHRoaXMucHJlZml4LFxyXG4gICAgICAgIH0pO1xyXG4gICAgICAgIGlmIChkYXRhLmRhdGE/Lmxlbmd0aCB8fCBkYXRhLmxlbmd0aCkge1xyXG4gICAgICAgICAgaWYgKCF0aGlzLmNoYXJ0T2JqKSB7XHJcbiAgICAgICAgICAgIGNvbnN0IGN0eCA9IHRoaXMuY2hhcnQubmF0aXZlRWxlbWVudC5nZXRDb250ZXh0KCcyZCcpO1xyXG4gICAgICAgICAgICB0aGlzLmNoYXJ0T2JqID0gbmV3IENoYXJ0KGN0eCwgb3B0aW9ucyk7XHJcbiAgICAgICAgICB9IGVsc2Uge1xyXG4gICAgICAgICAgICB0aGlzLmNoYXJ0T2JqLmNoYXJ0LmRhdGEgPSBjaGFydERhdGE7XHJcbiAgICAgICAgICAgIHRoaXMuY2hhcnRPYmoudXBkYXRlKCk7XHJcbiAgICAgICAgICB9XHJcbiAgICAgICAgfSBlbHNlIHtcclxuICAgICAgICAgIC8vIGNvbnN0IGN0eCA9IHRoaXMuY2hhcnQubmF0aXZlRWxlbWVudC5nZXRDb250ZXh0KCcyZCcpO1xyXG4gICAgICAgICAgLy8gbGV0IG5vT3B0aW9ucyA9IHtcclxuICAgICAgICAgIC8vICAgdHlwZTogb3B0aW9ucy50eXBlLFxyXG4gICAgICAgICAgLy8gICBkYXRhOiB7XHJcbiAgICAgICAgICAvLyAgICAgZGF0YXNldHM6IFtdLFxyXG4gICAgICAgICAgLy8gICB9LFxyXG4gICAgICAgICAgLy8gICBvcHRpb25zOiB7fSxcclxuICAgICAgICAgIC8vIH07XHJcbiAgICAgICAgICAvLyB0aGlzLmNoYXJ0T2JqID0gbmV3IENoYXJ0KGN0eCwgbm9PcHRpb25zKTtcclxuICAgICAgICAgIC8vIHRoaXMuY2hhcnRPYmouY2hhcnQuZGF0YSA9IFtdO1xyXG4gICAgICAgIH1cclxuICAgICAgfSk7XHJcbiAgICB9KTtcclxuICB9XHJcbiAgY3JlYXRlQ2hhcnRXaXRob3V0UFAoKSB7XHJcbiAgICB0aGlzLmlzRmV0Y2hpbmcgPSB0cnVlO1xyXG4gICAgdGhpcy5jcmVhdENoYXJ0LnBpcGUoZGVib3VuY2VUaW1lKDMwMCkpLnN1YnNjcmliZSgocmVzKSA9PiB7XHJcbiAgICAgIHRoaXMuZGF0YSA9IHRoaXMuaW5wdXRDaGFydERhdGE7XHJcbiAgICAgIHRoaXMuY2hhbmdlRGV0ZWN0b3IuZGV0ZWN0Q2hhbmdlcygpO1xyXG4gICAgICBsZXQgcmFuZG9tQ29sb3JzID0ge307XHJcbiAgICAgIGlmICh0aGlzLnJhbmRvbUNvbG9ycykge1xyXG4gICAgICAgIHRoaXMuZGF0YS5kYXRhLmZvckVhY2goKGl0ZW0pID0+IHtcclxuICAgICAgICAgIHJhbmRvbUNvbG9yc1tpdGVtLmxhYmVsXSA9IHRoaXMuc3RyaW5nVG9Ic2xDb2xvcihgJHtpdGVtLmxhYmVsfWAsIDQwLCA3MCk7XHJcbiAgICAgICAgfSk7XHJcbiAgICAgIH1cclxuICAgICAgdGhpcy5jb2xvcnMgPSB0aGlzLnJhbmRvbUNvbG9ycyA/IHJhbmRvbUNvbG9ycyA6IHRoaXMuY29sb3JzO1xyXG4gICAgICBjb25zdCB7IG9wdGlvbnMsIGNoYXJ0RGF0YSB9ID0gdGhpcy5jaGFydERhdGFbdGhpcy5jaGFydFR5cGVdKHtcclxuICAgICAgICBkYXRhOiB0aGlzLmRhdGEsXHJcbiAgICAgICAgY29sb3JzOiB0aGlzLmNvbG9ycyxcclxuICAgICAgICBwcmVmaXg6IHRoaXMucHJlZml4LFxyXG4gICAgICB9KTtcclxuICAgICAgaWYgKHRoaXMuZGF0YS5kYXRhPy5sZW5ndGggfHwgdGhpcy5kYXRhLmxlbmd0aCkge1xyXG4gICAgICAgIGlmICghdGhpcy5jaGFydE9iaikge1xyXG4gICAgICAgICAgY29uc3QgY3R4ID0gdGhpcy5jaGFydC5uYXRpdmVFbGVtZW50LmdldENvbnRleHQoJzJkJyk7XHJcbiAgICAgICAgICB0aGlzLmNoYXJ0T2JqID0gbmV3IENoYXJ0KGN0eCwgb3B0aW9ucyk7XHJcbiAgICAgICAgICB0aGlzLmlzRmV0Y2hpbmcgPSBmYWxzZTtcclxuICAgICAgICB9IGVsc2Uge1xyXG4gICAgICAgICAgdGhpcy5jaGFydE9iai5jaGFydC5kYXRhID0gY2hhcnREYXRhO1xyXG4gICAgICAgICAgdGhpcy5jaGFydE9iai51cGRhdGUoKTtcclxuICAgICAgICAgIHRoaXMuaXNGZXRjaGluZyA9IGZhbHNlO1xyXG4gICAgICAgIH1cclxuICAgICAgfSBlbHNlIHtcclxuICAgICAgICB0aGlzLmlzRmV0Y2hpbmcgPSBmYWxzZTtcclxuICAgICAgICAvLyBjb25zdCBjdHggPSB0aGlzLmNoYXJ0Lm5hdGl2ZUVsZW1lbnQuZ2V0Q29udGV4dCgnMmQnKTtcclxuICAgICAgICAvLyBsZXQgbm9PcHRpb25zID0ge1xyXG4gICAgICAgIC8vICAgdHlwZTogb3B0aW9ucy50eXBlLFxyXG4gICAgICAgIC8vICAgZGF0YToge1xyXG4gICAgICAgIC8vICAgICBkYXRhc2V0czogW10sXHJcbiAgICAgICAgLy8gICB9LFxyXG4gICAgICAgIC8vICAgb3B0aW9uczoge30sXHJcbiAgICAgICAgLy8gfTtcclxuICAgICAgICAvLyB0aGlzLmNoYXJ0T2JqID0gbmV3IENoYXJ0KGN0eCwgbm9PcHRpb25zKTtcclxuICAgICAgICAvLyB0aGlzLmNoYXJ0T2JqLmNoYXJ0LmRhdGEgPSBbXTtcclxuICAgICAgfVxyXG4gICAgfSk7XHJcbiAgfVxyXG5cclxuICB1cGRhdGVTdGF0cygpIHtcclxuICAgIGlmICh0aGlzLmlucHV0Q2hhcnREYXRhKSB7XHJcbiAgICAgIHRoaXMuY3JlYXRlQ2hhcnRXaXRob3V0UFAoKTtcclxuICAgIH0gZWxzZSB7XHJcbiAgICAgIHRoaXMuY3JlYXRlQ2hhcnQoKTtcclxuICAgIH1cclxuICB9XHJcblxyXG4gIGFzeW5jIG5nT25Jbml0KCkge1xyXG4gICAgdGhpcy50cmFuc2xhdGlvblNlcnZpY2UuaXNBcmFiaWMuc3Vic2NyaWJlKChyZXMpID0+IHtcclxuICAgICAgdGhpcy5pc0FyYWJpYyA9IHJlcztcclxuICAgIH0pO1xyXG4gICAgc2V0VGltZW91dCgoKSA9PiB7XHJcbiAgICAgIGlmICh0aGlzLmlucHV0Q2hhcnREYXRhKSB7XHJcbiAgICAgICAgdGhpcy5jcmVhdGVDaGFydFdpdGhvdXRQUCgpO1xyXG4gICAgICAgIHRoaXMuY3JlYXRDaGFydC5uZXh0KCk7XHJcbiAgICAgIH0gZWxzZSB7XHJcbiAgICAgICAgdGhpcy5jcmVhdGVDaGFydCgpO1xyXG4gICAgICAgIHRoaXMuY3JlYXRDaGFydC5uZXh0KCk7XHJcbiAgICAgIH1cclxuICAgIH0pO1xyXG4gIH1cclxuICBuZ09uQ2hhbmdlcyhjaGFuZ2VzOiBTaW1wbGVDaGFuZ2VzKSB7XHJcbiAgICB0aGlzLmlzRmV0Y2hpbmcgPSB0cnVlO1xyXG4gICAgY29uc3QgbWluQ2hhbmdlZCA9IGNoYW5nZXMubWluICYmICFjaGFuZ2VzLm1pbj8uZmlyc3RDaGFuZ2U7XHJcbiAgICBjb25zdCBtYXhDaGFuZ2VkID0gY2hhbmdlcy5tYXggJiYgIWNoYW5nZXMubWF4Py5maXJzdENoYW5nZTtcclxuICAgIGNvbnN0IHJhbmdlQ2hhbmdlZCA9IGNoYW5nZXMucmFuZ2UgJiYgIWNoYW5nZXMucmFuZ2U/LmZpcnN0Q2hhbmdlO1xyXG4gICAgaWYgKG1pbkNoYW5nZWQgfHwgbWF4Q2hhbmdlZCB8fCByYW5nZUNoYW5nZWQpIHtcclxuICAgICAgc2V0VGltZW91dCgoKSA9PiB7XHJcbiAgICAgICAgdGhpcy5jcmVhdENoYXJ0Lm5leHQoKTtcclxuICAgICAgICB0aGlzLmlzRmV0Y2hpbmcgPSBmYWxzZTtcclxuICAgICAgfSk7XHJcbiAgICB9XHJcbiAgfVxyXG4gIG5nT25EZXN0cm95KCkge1xyXG4gICAgdGhpcy5teURhdGFTdWJzY3JpcHRpb24gPyB0aGlzLm15RGF0YVN1YnNjcmlwdGlvbi51bnN1YnNjcmliZSgpIDogJyc7XHJcbiAgICB0aGlzLm9uRGVzdHJveSQubmV4dCh0cnVlKTtcclxuICAgIHRoaXMub25EZXN0cm95JC5jb21wbGV0ZSgpO1xyXG4gICAgdGhpcy5jcmVhdENoYXJ0LnVuc3Vic2NyaWJlKCk7XHJcbiAgfVxyXG4gIGdldERhdGEoKTogT2JzZXJ2YWJsZTxhbnk+IHtcclxuICAgIHRoaXMuaXNGZXRjaGluZyA9IHRydWU7XHJcbiAgICBpZiAodGhpcy5jb21iaW5lZERhdGEpIHtcclxuICAgICAgcmV0dXJuIHRoaXMuZ2V0Q29tYmluZWREYXRhKFxyXG4gICAgICAgIHRoaXMucGFnZVByb3ZpZGVyLFxyXG4gICAgICAgIHRoaXMucXVpY2tGaWx0ZXJzLFxyXG4gICAgICAgIHRoaXMucmFuZ2UsXHJcbiAgICAgICAgdGhpcy5wYWdlUHJvdmlkZXJUd28sXHJcbiAgICAgICAgdGhpcy5xdWlja0ZpbHRlclR3byxcclxuICAgICAgICB0aGlzLnF1aWNrRmlsdGVyVGhyZWUsXHJcbiAgICAgICAgdGhpcy5zdGF0dXNPbmUsXHJcbiAgICAgICAgdGhpcy5zdGF0dXNUd28sXHJcbiAgICAgICAgdGhpcy5zdGF0dXNUaHJlZVxyXG4gICAgICApO1xyXG4gICAgfSBlbHNlIHtcclxuICAgICAgbGV0IHBhcmFtcyA9IHtcclxuICAgICAgICBwYWdlUHJvdmlkZXI6IHRoaXMucGFnZVByb3ZpZGVyLFxyXG4gICAgICAgIGN1cnJlbnRQYWdlSW5kZXg6IDAsXHJcbiAgICAgICAgb2Zmc2V0OiAwLFxyXG4gICAgICAgIHBhZ2VTaXplOiAxLFxyXG4gICAgICAgIGR1YmxpbmNvcmVfY3JlYXRlZF9hZ2c6IHRoaXMucmFuZ2UsXHJcbiAgICAgICAgcXVpY2tGaWx0ZXJzOiB0aGlzLnF1aWNrRmlsdGVycyxcclxuICAgICAgICBkdWJsaW5jb3JlX2NyZWF0ZWRfbWluOiB0aGlzLm1pbixcclxuICAgICAgICBkdWJsaW5jb3JlX2NyZWF0ZWRfbWF4OiB0aGlzLm1heCxcclxuICAgICAgICBzeXN0ZW1fY3VycmVudExpZmVDeWNsZVN0YXRlXzM6IEpTT04uc3RyaW5naWZ5KHRoaXMuc3lzdGVtQ3VycmVudExpZmVDeWNsZVN0YXRlKSxcclxuICAgICAgfTtcclxuICAgICAgLy8gaWYgdGhlcmUgdGVuYW50IGlkIHNlbnQgZnJvbSBvdXRzaWRlIHRoZW4gYWRkIGl0IHRvIHRoZSBwYXJhbXNcclxuICAgICAgaWYgKHRoaXMudGVuYW50SWQpIHtcclxuICAgICAgICBwYXJhbXNbJ3F1ZXJ5UGFyYW1zJ10gPSBgJHt0aGlzLnRlbmFudElkfWA7XHJcbiAgICAgIH1cclxuICAgICAgaWYgKHRoaXMuYXNpZ25lZURlcGFydG1lbnRzKSB7XHJcbiAgICAgICAgcGFyYW1zWydhc3NpZ25tZW50X2RlcGFydG1lbnRfMSddID0gSlNPTi5zdHJpbmdpZnkodGhpcy5hc2lnbmVlRGVwYXJ0bWVudHMpO1xyXG4gICAgICB9XHJcbiAgICAgIHJldHVybiB0aGlzLmNhbGxBcGlcclxuICAgICAgICAucXVlcnkocGFyYW1zLCB7XHJcbiAgICAgICAgICBoZWFkZXJzOiB0aGlzLmhlYWRlcnMsXHJcbiAgICAgICAgfSlcclxuICAgICAgICAucGlwZShcclxuICAgICAgICAgIG1hcCgoZGF0YSkgPT4ge1xyXG4gICAgICAgICAgICBjb25zdCBpdGVtcyA9IGRhdGEuYWdncmVnYXRpb25zW3RoaXMuYWdncmVnYXRpb25zXS5idWNrZXRzXHJcbiAgICAgICAgICAgICAgPyBkYXRhLmFnZ3JlZ2F0aW9uc1t0aGlzLmFnZ3JlZ2F0aW9uc10uYnVja2V0cy5tYXAoKGl0ZW0pID0+ICh7XHJcbiAgICAgICAgICAgICAgICAgIGxhYmVsOiB0aGlzLmZldGNoZWRLZXlcclxuICAgICAgICAgICAgICAgICAgICA/IF8uZ2V0KGl0ZW0sIHRoaXMuZmV0Y2hlZEtleSlcclxuICAgICAgICAgICAgICAgICAgICA6IHRoaXMubm9GZXRjaGVkS2V5XHJcbiAgICAgICAgICAgICAgICAgICAgPyB0aGlzLmNvbnN0dXJjdENoYXJ0TGFiZWwoaXRlbSlcclxuICAgICAgICAgICAgICAgICAgICA6IGl0ZW0ua2V5LFxyXG4gICAgICAgICAgICAgICAgICBjb3VudDogaXRlbS5kb2NDb3VudCxcclxuICAgICAgICAgICAgICAgIH0pKVxyXG4gICAgICAgICAgICAgIDogW107XHJcbiAgICAgICAgICAgIHRoaXMuaXNGZXRjaGluZyA9IGZhbHNlO1xyXG4gICAgICAgICAgICByZXR1cm4ge1xyXG4gICAgICAgICAgICAgIGRhdGE6IGl0ZW1zLFxyXG4gICAgICAgICAgICAgIHRvdGFsSXRlbXM6IGRhdGEudG90YWxTaXplLFxyXG4gICAgICAgICAgICB9O1xyXG4gICAgICAgICAgfSlcclxuICAgICAgICApO1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgY29uc3R1cmN0Q2hhcnRMYWJlbChpdGVtKSB7XHJcbiAgICBsZXQgbGFiZWw7XHJcbiAgICBsZXQgZ3JvdXBTcGxpdDtcclxuICAgIGxldCBzZWNyZWN5O1xyXG4gICAgbGV0IGRlcENvZGU7XHJcbiAgICBsZXQgZGVwYXJ0bWVudE5hbWU7XHJcbiAgICBsZXQgZGlyZWN0aW9uO1xyXG4gICAgbGV0IHJlc3RQcmVmaXg7XHJcbiAgICBsZXQgbXlQcmlmeCA9IGB0ZW5hbnRfJHt0aGlzLnRlbmFudElkfV9jdHNfYDtcclxuXHJcbiAgICBpZiAoaXRlbS5mZXRjaGVkS2V5WydlbnRpdHktdHlwZSddID09ICdncm91cCcpIHtcclxuICAgICAgcmVzdFByZWZpeCA9IGl0ZW0ua2V5LnJlcGxhY2UobXlQcmlmeCwgJycpO1xyXG4gICAgICBncm91cFNwbGl0ID0gcmVzdFByZWZpeC5zcGxpdCgnXycpO1xyXG4gICAgICBpZiAocmVzdFByZWZpeC5pbmNsdWRlcygnVG9wX1NlY3JldCcpKSB7XHJcbiAgICAgICAgc2VjcmVjeSA9IHRoaXMudHJhbnNsYXRpb25TZXJ2aWNlLmluc3RhbnQoXHJcbiAgICAgICAgICAndm9jYWJ1bGFyeS5WT0NfU2VjcmVjeUxldmVsLlRvcF9TZWNyZXQnXHJcbiAgICAgICAgKTtcclxuICAgICAgICBkZXBDb2RlID0gZ3JvdXBTcGxpdFtncm91cFNwbGl0Lmxlbmd0aCAtIDNdO1xyXG4gICAgICAgIGxldCBkaXJFeHRyYWN0ZWQgPSBncm91cFNwbGl0WzBdO1xyXG4gICAgICAgIGRpcmVjdGlvbiA9IHRoaXMudHJhbnNsYXRpb25TZXJ2aWNlLmluc3RhbnQoXHJcbiAgICAgICAgICBkaXJFeHRyYWN0ZWRbMF0udG9VcHBlckNhc2UoKSArIGRpckV4dHJhY3RlZC5zdWJzdHIoMSkudG9Mb3dlckNhc2UoKVxyXG4gICAgICAgICk7XHJcbiAgICAgICAgdGhpcy5kZXBhcnRtZW50QXBpU2VydmljZS5nZXREZXBhcnRtZW50RGV0YWlscyhkZXBDb2RlKS5zdWJzY3JpYmUoKHJlcykgPT4ge1xyXG4gICAgICAgICAgZGVwYXJ0bWVudE5hbWUgPSB0aGlzLmlzQXJhYmljXHJcbiAgICAgICAgICAgID8gcmVzPy5lbnRyaWVzWzBdPy5wcm9wZXJ0aWVzWydkZXB0OmFyYWJpY05hbWUnXVxyXG4gICAgICAgICAgICA6IHJlcz8uZW50cmllc1swXT8ucHJvcGVydGllc1snZGVwdDplbmdsaXNoTmFtZSddO1xyXG4gICAgICAgIH0pO1xyXG4gICAgICB9IGVsc2Uge1xyXG4gICAgICAgIHNlY3JlY3kgPSB0aGlzLnRyYW5zbGF0aW9uU2VydmljZS5pbnN0YW50KFxyXG4gICAgICAgICAgJ3ZvY2FidWxhcnkuVk9DX1NlY3JlY3lMZXZlbC4nICsgZ3JvdXBTcGxpdFtncm91cFNwbGl0Lmxlbmd0aCAtIDFdXHJcbiAgICAgICAgKTtcclxuICAgICAgICBkZXBDb2RlID0gZ3JvdXBTcGxpdFtncm91cFNwbGl0Lmxlbmd0aCAtIDJdO1xyXG4gICAgICAgIGxldCBkaXJFeHRyYWN0ZWQgPSBncm91cFNwbGl0WzBdO1xyXG4gICAgICAgIGRpcmVjdGlvbiA9IHRoaXMudHJhbnNsYXRpb25TZXJ2aWNlLmluc3RhbnQoXHJcbiAgICAgICAgICBkaXJFeHRyYWN0ZWRbMF0udG9VcHBlckNhc2UoKSArIGRpckV4dHJhY3RlZC5zdWJzdHIoMSkudG9Mb3dlckNhc2UoKVxyXG4gICAgICAgICk7XHJcbiAgICAgICAgdGhpcy5kZXBhcnRtZW50QXBpU2VydmljZS5nZXREZXBhcnRtZW50RGV0YWlscyhkZXBDb2RlKS5zdWJzY3JpYmUoKHJlcykgPT4ge1xyXG4gICAgICAgICAgZGVwYXJ0bWVudE5hbWUgPSB0aGlzLmlzQXJhYmljXHJcbiAgICAgICAgICAgID8gcmVzPy5lbnRyaWVzWzBdPy5wcm9wZXJ0aWVzWydkZXB0OmFyYWJpY05hbWUnXVxyXG4gICAgICAgICAgICA6IHJlcz8uZW50cmllc1swXT8ucHJvcGVydGllc1snZGVwdDplbmdsaXNoTmFtZSddO1xyXG4gICAgICAgIH0pO1xyXG4gICAgICB9XHJcbiAgICAgIGxhYmVsID1cclxuICAgICAgICB0aGlzLmFnZ3JlZ2F0aW9ucyA9PSAnYXNzaWdubWVudF9kZXBhcnRtZW50X2FnZydcclxuICAgICAgICAgID8gZGVwYXJ0bWVudE5hbWUgKyAnLScgKyBzZWNyZWN5XHJcbiAgICAgICAgICA6IGRlcGFydG1lbnROYW1lICsgJyAnICsgZGlyZWN0aW9uICsgJy0nICsgc2VjcmVjeTtcclxuICAgIH0gZWxzZSB7XHJcbiAgICAgIGxhYmVsID0gaXRlbS5mZXRjaGVkS2V5LmZ1bGxOYW1lO1xyXG4gICAgfVxyXG4gICAgcmV0dXJuIGxhYmVsO1xyXG4gIH1cclxuICBnZXRDb21iaW5lZERhdGEoXHJcbiAgICBwYWdlUHJvdmlkZXJPbmUsXHJcbiAgICBxdWlja0ZpbHRlck9uZSxcclxuICAgIHNlbGVjdGVkUmFuZ2UsXHJcbiAgICBwYWdlUHJvdmlkZXJUd28sXHJcbiAgICBxdWlja0ZpbHRlclR3byxcclxuICAgIHF1aWNrRmlsdGVyVGhyZWUsXHJcbiAgICBzdGF0dXNPbmUsXHJcbiAgICBzdGF0dXNUd28sXHJcbiAgICBzdGF0dXNUaHJlZVxyXG4gICkge1xyXG4gICAgbGV0IG91dGdvaW5nUGFyYW1zID0ge1xyXG4gICAgICBwYWdlUHJvdmlkZXI6IHBhZ2VQcm92aWRlck9uZSxcclxuICAgICAgY3VycmVudFBhZ2VJbmRleDogMCxcclxuICAgICAgb2Zmc2V0OiAwLFxyXG4gICAgICBwYWdlU2l6ZTogMSxcclxuICAgICAgZHVibGluY29yZV9jcmVhdGVkX2FnZzogc2VsZWN0ZWRSYW5nZSxcclxuICAgICAgcXVpY2tGaWx0ZXJzOiBxdWlja0ZpbHRlck9uZSxcclxuICAgICAgZHVibGluY29yZV9jcmVhdGVkX21pbjogdGhpcy5taW4sXHJcbiAgICAgIGR1YmxpbmNvcmVfY3JlYXRlZF9tYXg6IHRoaXMubWF4LFxyXG4gICAgICBzeXN0ZW1fY3VycmVudExpZmVDeWNsZVN0YXRlXzM6IEpTT04uc3RyaW5naWZ5KHRoaXMuc3lzdGVtQ3VycmVudExpZmVDeWNsZVN0YXRlKSxcclxuICAgIH07XHJcbiAgICAvLyBpZiB0aGVyZSB0ZW5hbnQgaWQgc2VudCBmcm9tIG91dHNpZGUgdGhlbiBhZGQgaXQgdG8gdGhlIHBhcmFtc1xyXG4gICAgaWYgKHRoaXMudGVuYW50SWQpIHtcclxuICAgICAgb3V0Z29pbmdQYXJhbXNbJ3F1ZXJ5UGFyYW1zJ10gPSBgJHt0aGlzLnRlbmFudElkfWA7XHJcbiAgICB9XHJcbiAgICBjb25zdCBnZXRPdXRnb2luZyQgPSB0aGlzLmNhbGxBcGlcclxuICAgICAgLnF1ZXJ5KG91dGdvaW5nUGFyYW1zLCB7XHJcbiAgICAgICAgaGVhZGVyczogdGhpcy5oZWFkZXJzLFxyXG4gICAgICB9KVxyXG4gICAgICAucGlwZShcclxuICAgICAgICBtYXAoKGRhdGEpID0+IHtcclxuICAgICAgICAgIGNvbnN0IGl0ZW1zID0gZGF0YS5hZ2dyZWdhdGlvbnNbdGhpcy5hZ2dyZWdhdGlvbnNdLmJ1Y2tldHNcclxuICAgICAgICAgICAgPyBkYXRhLmFnZ3JlZ2F0aW9uc1t0aGlzLmFnZ3JlZ2F0aW9uc10uYnVja2V0cy5tYXAoKGl0ZW0pID0+ICh7XHJcbiAgICAgICAgICAgICAgICBsYWJlbDogdGhpcy5mZXRjaGVkS2V5ID8gXy5nZXQoaXRlbSwgdGhpcy5mZXRjaGVkS2V5KSA6IGl0ZW0ua2V5LFxyXG4gICAgICAgICAgICAgICAgY291bnQ6IGl0ZW0uZG9jQ291bnQsXHJcbiAgICAgICAgICAgICAgICBpZDogaXRlbS5rZXksXHJcbiAgICAgICAgICAgICAgICBzdGF0dXM6IHN0YXR1c09uZSxcclxuICAgICAgICAgICAgICAgIHRvdGFsSXRlbXM6IGRhdGEudG90YWxTaXplLFxyXG4gICAgICAgICAgICAgIH0pKVxyXG4gICAgICAgICAgICA6IFtdO1xyXG4gICAgICAgICAgcmV0dXJuIHtcclxuICAgICAgICAgICAgZGF0YTogaXRlbXMsXHJcbiAgICAgICAgICAgIHRvdGFsSXRlbXM6IGRhdGEudG90YWxTaXplLFxyXG4gICAgICAgICAgfTtcclxuICAgICAgICB9KVxyXG4gICAgICApO1xyXG4gICAgbGV0IGluY29taW5nUGFyYW1zID0ge1xyXG4gICAgICBwYWdlUHJvdmlkZXI6IHBhZ2VQcm92aWRlclR3byxcclxuICAgICAgY3VycmVudFBhZ2VJbmRleDogMCxcclxuICAgICAgb2Zmc2V0OiAwLFxyXG4gICAgICBwYWdlU2l6ZTogMSxcclxuICAgICAgZHVibGluY29yZV9jcmVhdGVkX2FnZzogc2VsZWN0ZWRSYW5nZSxcclxuICAgICAgcXVpY2tGaWx0ZXJzOiBxdWlja0ZpbHRlclR3byxcclxuICAgICAgZHVibGluY29yZV9jcmVhdGVkX21pbjogdGhpcy5taW4sXHJcbiAgICAgIGR1YmxpbmNvcmVfY3JlYXRlZF9tYXg6IHRoaXMubWF4LFxyXG4gICAgICBzeXN0ZW1fY3VycmVudExpZmVDeWNsZVN0YXRlXzM6IEpTT04uc3RyaW5naWZ5KHRoaXMuc3lzdGVtQ3VycmVudExpZmVDeWNsZVN0YXRlKSxcclxuICAgIH07XHJcbiAgICAvLyBpZiB0aGVyZSB0ZW5hbnQgaWQgc2VudCBmcm9tIG91dHNpZGUgdGhlbiBhZGQgaXQgdG8gdGhlIHBhcmFtc1xyXG4gICAgaWYgKHRoaXMudGVuYW50SWQpIHtcclxuICAgICAgaW5jb21pbmdQYXJhbXNbJ3F1ZXJ5UGFyYW1zJ10gPSBgJHt0aGlzLnRlbmFudElkfWA7XHJcbiAgICB9XHJcbiAgICBjb25zdCBnZXRJbmNvbWluZyQgPSB0aGlzLmNhbGxBcGlcclxuICAgICAgLnF1ZXJ5KGluY29taW5nUGFyYW1zLCB7XHJcbiAgICAgICAgaGVhZGVyczogdGhpcy5oZWFkZXJzLFxyXG4gICAgICB9KVxyXG4gICAgICAucGlwZShcclxuICAgICAgICBtYXAoKGRhdGEpID0+IHtcclxuICAgICAgICAgIGNvbnN0IGl0ZW1zID0gZGF0YS5hZ2dyZWdhdGlvbnNbdGhpcy5hZ2dyZWdhdGlvbnNdLmJ1Y2tldHNcclxuICAgICAgICAgICAgPyBkYXRhLmFnZ3JlZ2F0aW9uc1t0aGlzLmFnZ3JlZ2F0aW9uc10uYnVja2V0cy5tYXAoKGl0ZW0pID0+ICh7XHJcbiAgICAgICAgICAgICAgICBsYWJlbDogdGhpcy5mZXRjaGVkS2V5ID8gXy5nZXQoaXRlbSwgdGhpcy5mZXRjaGVkS2V5KSA6IGl0ZW0ua2V5LFxyXG4gICAgICAgICAgICAgICAgY291bnQ6IGl0ZW0uZG9jQ291bnQsXHJcbiAgICAgICAgICAgICAgICBpZDogaXRlbS5rZXksXHJcbiAgICAgICAgICAgICAgICBzdGF0dXM6IHN0YXR1c1R3byxcclxuICAgICAgICAgICAgICAgIHRvdGFsSXRlbXM6IGRhdGEudG90YWxTaXplLFxyXG4gICAgICAgICAgICAgIH0pKVxyXG4gICAgICAgICAgICA6IFtdO1xyXG4gICAgICAgICAgcmV0dXJuIHtcclxuICAgICAgICAgICAgZGF0YTogaXRlbXMsXHJcbiAgICAgICAgICAgIHRvdGFsSXRlbXM6IGRhdGEudG90YWxTaXplLFxyXG4gICAgICAgICAgfTtcclxuICAgICAgICB9KVxyXG4gICAgICApO1xyXG4gICAgbGV0IGludGVybmFsUGFyYW1zID0ge1xyXG4gICAgICBwYWdlUHJvdmlkZXI6IHBhZ2VQcm92aWRlclR3byxcclxuICAgICAgY3VycmVudFBhZ2VJbmRleDogMCxcclxuICAgICAgb2Zmc2V0OiAwLFxyXG4gICAgICBwYWdlU2l6ZTogMSxcclxuICAgICAgZHVibGluY29yZV9jcmVhdGVkX2FnZzogc2VsZWN0ZWRSYW5nZSxcclxuICAgICAgcXVpY2tGaWx0ZXJzOiBxdWlja0ZpbHRlclRocmVlLFxyXG4gICAgICBkdWJsaW5jb3JlX2NyZWF0ZWRfbWluOiB0aGlzLm1pbixcclxuICAgICAgZHVibGluY29yZV9jcmVhdGVkX21heDogdGhpcy5tYXgsXHJcbiAgICAgIHN5c3RlbV9jdXJyZW50TGlmZUN5Y2xlU3RhdGVfMzogSlNPTi5zdHJpbmdpZnkodGhpcy5zeXN0ZW1DdXJyZW50TGlmZUN5Y2xlU3RhdGUpLFxyXG4gICAgfTtcclxuICAgIC8vIGlmIHRoZXJlIHRlbmFudCBpZCBzZW50IGZyb20gb3V0c2lkZSB0aGVuIGFkZCBpdCB0byB0aGUgcGFyYW1zXHJcbiAgICBpZiAodGhpcy50ZW5hbnRJZCkge1xyXG4gICAgICBpbnRlcm5hbFBhcmFtc1sncXVlcnlQYXJhbXMnXSA9IGAke3RoaXMudGVuYW50SWR9YDtcclxuICAgIH1cclxuICAgIGNvbnN0IGdldEludGVybmFsJCA9IHRoaXMuY2FsbEFwaVxyXG4gICAgICAucXVlcnkoaW50ZXJuYWxQYXJhbXMsIHtcclxuICAgICAgICBoZWFkZXJzOiB0aGlzLmhlYWRlcnMsXHJcbiAgICAgIH0pXHJcbiAgICAgIC5waXBlKFxyXG4gICAgICAgIG1hcCgoZGF0YSkgPT4ge1xyXG4gICAgICAgICAgY29uc3QgaXRlbXMgPSBkYXRhLmFnZ3JlZ2F0aW9uc1t0aGlzLmFnZ3JlZ2F0aW9uc10uYnVja2V0c1xyXG4gICAgICAgICAgICA/IGRhdGEuYWdncmVnYXRpb25zW3RoaXMuYWdncmVnYXRpb25zXS5idWNrZXRzLm1hcCgoaXRlbSkgPT4gKHtcclxuICAgICAgICAgICAgICAgIGxhYmVsOiB0aGlzLmZldGNoZWRLZXkgPyBfLmdldChpdGVtLCB0aGlzLmZldGNoZWRLZXkpIDogaXRlbS5rZXksXHJcbiAgICAgICAgICAgICAgICBjb3VudDogaXRlbS5kb2NDb3VudCxcclxuICAgICAgICAgICAgICAgIGlkOiBpdGVtLmtleSxcclxuICAgICAgICAgICAgICAgIHN0YXR1czogc3RhdHVzVGhyZWUsXHJcbiAgICAgICAgICAgICAgICB0b3RhbEl0ZW1zOiBkYXRhLnRvdGFsU2l6ZSxcclxuICAgICAgICAgICAgICB9KSlcclxuICAgICAgICAgICAgOiBbXTtcclxuICAgICAgICAgIHJldHVybiB7XHJcbiAgICAgICAgICAgIGRhdGE6IGl0ZW1zLFxyXG4gICAgICAgICAgICB0b3RhbEl0ZW1zOiBkYXRhLnRvdGFsU2l6ZSxcclxuICAgICAgICAgIH07XHJcbiAgICAgICAgfSlcclxuICAgICAgKTtcclxuICAgIGlmICh0aGlzLmlzSW50ZXJuYWxBY3RpdmUpIHtcclxuICAgICAgcmV0dXJuIGZvcmtKb2luKFtnZXRPdXRnb2luZyQsIGdldEluY29taW5nJCwgZ2V0SW50ZXJuYWwkXSkucGlwZShcclxuICAgICAgICBtYXAoKGRhdGEpID0+IHtcclxuICAgICAgICAgIGxldCBjb21iaW5lZERhdGEgPSBbLi4uZGF0YVswXS5kYXRhLCAuLi5kYXRhWzFdLmRhdGEsIC4uLmRhdGFbMl0uZGF0YV07XHJcbiAgICAgICAgICB0aGlzLmlzRmV0Y2hpbmcgPSBmYWxzZTtcclxuICAgICAgICAgIHJldHVybiBjb21iaW5lZERhdGE7XHJcbiAgICAgICAgfSlcclxuICAgICAgKTtcclxuICAgIH0gZWxzZSB7XHJcbiAgICAgIHJldHVybiBmb3JrSm9pbihbZ2V0T3V0Z29pbmckLCBnZXRJbmNvbWluZyRdKS5waXBlKFxyXG4gICAgICAgIG1hcCgoZGF0YSkgPT4ge1xyXG4gICAgICAgICAgbGV0IGNvbWJpbmVkRGF0YSA9IFsuLi5kYXRhWzBdLmRhdGEsIC4uLmRhdGFbMV0uZGF0YV07XHJcbiAgICAgICAgICB0aGlzLmlzRmV0Y2hpbmcgPSBmYWxzZTtcclxuICAgICAgICAgIHJldHVybiBjb21iaW5lZERhdGE7XHJcbiAgICAgICAgfSlcclxuICAgICAgKTtcclxuICAgIH1cclxuICB9XHJcblxyXG4gIHByZXZpZXdDb3JyZXNwb25kZW5jZXMoKSB7XHJcbiAgICBsZXQgcXVlcnlQYXJhbXM7XHJcbiAgICBpZiAodGhpcy5jb21iaW5lZERhdGEpIHtcclxuICAgICAgcXVlcnlQYXJhbXMgPSB7XHJcbiAgICAgICAgY29tYmluZWREYXRhOiB0aGlzLmNvbWJpbmVkRGF0YSxcclxuICAgICAgICBwYWdlUHJvdmlkZXI6IHRoaXMucGFnZVByb3ZpZGVyLFxyXG4gICAgICAgIGhlYWRlcnM6IEpTT04uc3RyaW5naWZ5KHRoaXMuaGVhZGVycyksXHJcbiAgICAgICAgcmFuZ2U6IHRoaXMucmFuZ2UsXHJcbiAgICAgICAgYWdncmVnYXRpb25zOiB0aGlzLmFnZ3JlZ2F0aW9ucyxcclxuICAgICAgICBxdWlja0ZpbHRlck9uZTogdGhpcy5xdWlja0ZpbHRlcnMsXHJcbiAgICAgICAgcXVpY2tGaWx0ZXJUd286IHRoaXMucXVpY2tGaWx0ZXJUd28sXHJcbiAgICAgICAgcXVpY2tGaWx0ZXJUaHJlZTogdGhpcy5xdWlja0ZpbHRlclRocmVlLFxyXG4gICAgICAgIHN5c3RlbUN1cnJlbnRMaWZlQ3ljbGVTdGF0ZTogdGhpcy5zeXN0ZW1DdXJyZW50TGlmZUN5Y2xlU3RhdGUsXHJcbiAgICAgICAgc3RhdHVzT25lOiB0aGlzLnN0YXR1c09uZSxcclxuICAgICAgICBzdGF0dXNUd286IHRoaXMuc3RhdHVzVHdvLFxyXG4gICAgICAgIHN0YXR1c1RocmVlOiB0aGlzLnN0YXR1c1RocmVlLFxyXG4gICAgICAgIG1pbjogdGhpcy5taW4sXHJcbiAgICAgICAgbWF4OiB0aGlzLm1heCxcclxuICAgICAgICBjaGFydFRpdGxlOiB0aGlzLmNhcmRUaXRsZSxcclxuICAgICAgfTtcclxuICAgIH0gZWxzZSB7XHJcbiAgICAgIHF1ZXJ5UGFyYW1zID0ge1xyXG4gICAgICAgIGNvbWJpbmVkRGF0YTogdGhpcy5jb21iaW5lZERhdGEsXHJcbiAgICAgICAgcGFnZVByb3ZpZGVyOiB0aGlzLnBhZ2VQcm92aWRlcixcclxuICAgICAgICBxdWlja0ZpbHRlck9uZTogdGhpcy5xdWlja0ZpbHRlcnMsXHJcbiAgICAgICAgaGVhZGVyczogSlNPTi5zdHJpbmdpZnkodGhpcy5oZWFkZXJzKSxcclxuICAgICAgICByYW5nZTogdGhpcy5yYW5nZSxcclxuICAgICAgICBhZ2dyZWdhdGlvbnM6IHRoaXMuYWdncmVnYXRpb25zLFxyXG4gICAgICAgIHN5c3RlbUN1cnJlbnRMaWZlQ3ljbGVTdGF0ZTogdGhpcy5zeXN0ZW1DdXJyZW50TGlmZUN5Y2xlU3RhdGUsXHJcbiAgICAgICAgbWluOiB0aGlzLm1pbixcclxuICAgICAgICBtYXg6IHRoaXMubWF4LFxyXG4gICAgICAgIGNoYXJ0VGl0bGU6IHRoaXMuY2FyZFRpdGxlLFxyXG4gICAgICB9O1xyXG4gICAgfVxyXG4gICAgLy8gaWYgdGhlcmUgdGVuYW50IGlkIHNlbnQgZnJvbSBvdXRzaWRlIHRoZW4gYWRkIGl0IHRvIHRoZSBwYXJhbXNcclxuICAgIGlmICh0aGlzLnRlbmFudElkKSB7XHJcbiAgICAgIHF1ZXJ5UGFyYW1zWydxdWVyeVBhcmFtcyddID0gYCR7dGhpcy50ZW5hbnRJZH1gO1xyXG4gICAgfVxyXG4gICAgdGhpcy5yb3V0ZXIubmF2aWdhdGUoWydyZXBvcnQnLCAnY2hhcnQtZGV0YWlscyddLCB7XHJcbiAgICAgIHF1ZXJ5UGFyYW1zOiBxdWVyeVBhcmFtcyxcclxuICAgIH0pO1xyXG4gIH1cclxuXHJcbiAgc3RyaW5nVG9Ic2xDb2xvcihzdHIsIHMsIGwpIHtcclxuICAgIHZhciBoYXNoID0gMDtcclxuICAgIGZvciAodmFyIGkgPSAwOyBpIDwgc3RyLmxlbmd0aDsgaSsrKSB7XHJcbiAgICAgIGhhc2ggPSBzdHIuY2hhckNvZGVBdChpKSArICgoaGFzaCA8PCA1KSAtIGhhc2gpO1xyXG4gICAgfVxyXG4gICAgdmFyIGggPSBoYXNoICUgMzYwO1xyXG4gICAgcmV0dXJuICdoc2woJyArIGggKyAnLCAnICsgcyArICclLCAnICsgbCArICclKSc7XHJcbiAgfVxyXG59XHJcbiIsIjxkaXYgY2xhc3M9XCJjYXJkLWNvbnRpbmVyXCIgKm5nSWY9XCJjYXJkOyBlbHNlIHRlc3RcIj5cclxuICA8ZGl2IGNsYXNzPVwiY2hhcnQtY2FyZC1oZWFkZXJcIj5cclxuICAgIDxkaXYgY2xhc3M9XCJjaGFydC1jYXJkLXRpdGxlXCI+e3sgY2FyZFRpdGxlIHwgdHJhbnNsYXRlIH19PC9kaXY+XHJcbiAgICA8YnV0dG9uIGNsYXNzPVwiY2hhcnQtY2FyZC1idXR0b25cIiAoY2xpY2spPVwicHJldmlld0NvcnJlc3BvbmRlbmNlcygpXCI+XHJcbiAgICAgIHt7ICdyZXBvcnQuUHJldmlldycgfCB0cmFuc2xhdGUgfX1cclxuICAgIDwvYnV0dG9uPlxyXG4gIDwvZGl2PlxyXG4gIDxuZy1jb250YWluZXIgKm5nSWY9XCJpc0ZldGNoaW5nXCI+XHJcbiAgICA8Y3RzLXNwaW5uZXI+PC9jdHMtc3Bpbm5lcj5cclxuICA8L25nLWNvbnRhaW5lcj5cclxuICA8ZGl2IGNsYXNzPVwic3RhdCBjaGFydC1jYW52YXNcIiBbc3R5bGUuaGVpZ2h0LnB4XT1cImhlaWdodFwiPlxyXG4gICAgPGRpdiBbaGlkZGVuXT1cImRhdGEuZGF0YT8ubGVuZ3RoID09IDAgfHwgZGF0YS5sZW5ndGggPT0gMFwiPlxyXG4gICAgICA8Y2FudmFzICNyZXZlbnVlTGluZUNoYXJ0IFtoZWlnaHRdPVwiaGVpZ2h0XCIgW3dpZHRoXT1cIndpZHRoXCI+PC9jYW52YXM+XHJcbiAgICA8L2Rpdj5cclxuICAgIDxkaXYgY2xhc3M9XCJuby1zdGF0c1wiICpuZ0lmPVwiZGF0YS5kYXRhPy5sZW5ndGggPT0gMCB8fCBkYXRhLmxlbmd0aCA9PSAwXCI+XHJcbiAgICAgIDxzcGFuPnt7ICdTVEFUUy5ub0RhdGEnIHwgdHJhbnNsYXRlIH19PC9zcGFuPlxyXG4gICAgPC9kaXY+XHJcbiAgPC9kaXY+XHJcbjwvZGl2PlxyXG5cclxuPG5nLXRlbXBsYXRlICN0ZXN0PlxyXG4gIDxkaXYgY2xhc3M9XCJzdGF0XCI+XHJcbiAgICA8Y2FudmFzICNyZXZlbnVlTGluZUNoYXJ0IFtoZWlnaHRdPVwiaGVpZ2h0XCIgW3dpZHRoXT1cIndpZHRoXCI+PC9jYW52YXM+XHJcbiAgPC9kaXY+XHJcbjwvbmctdGVtcGxhdGU+XHJcbiJdfQ==