@eo-sdk/client 10.7.0-rc.4 → 11.0.0-beta.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (855) hide show
  1. package/app/eo-client/about-state/about-state.component.d.ts.map +1 -1
  2. package/app/eo-client/dashboard/widgets/charts-widget/charts-setup/charts-setup.component.d.ts +1 -1
  3. package/app/eo-client/dashboard/widgets/charts-widget/charts-setup/charts-setup.component.d.ts.map +1 -1
  4. package/app/eo-client/dashboard/widgets/charts-widget/charts-widget.component.d.ts +1 -1
  5. package/app/eo-client/dashboard/widgets/count-objects-widget/count-objects-setup/count-objects-setup.component.d.ts +1 -1
  6. package/app/eo-client/dashboard/widgets/count-objects-widget/count-objects-widget.component.d.ts +1 -1
  7. package/app/eo-client/dashboard/widgets/hitlist-widget/hitlist-setup/hitlist-setup.component.d.ts +1 -1
  8. package/app/eo-client/dashboard/widgets/hitlist-widget/hitlist-widget.component.d.ts +1 -1
  9. package/app/eo-client/dashboard/widgets/iframe-widget/iframe-setup/iframe-setup.component.d.ts +1 -1
  10. package/app/eo-client/dashboard/widgets/iframe-widget/iframe-widget.component.d.ts +1 -1
  11. package/app/eo-client/dashboard/widgets/info-inbox-widget/info-inbox-setup/info-inbox-setup.component.d.ts +1 -1
  12. package/app/eo-client/dashboard/widgets/info-inbox-widget/info-inbox-widget.component.d.ts +1 -1
  13. package/app/eo-client/dashboard/widgets/info-intray-widget/info-intray-setup/info-intray-setup.component.d.ts +1 -1
  14. package/app/eo-client/dashboard/widgets/info-intray-widget/info-intray-widget.component.d.ts +1 -1
  15. package/app/eo-client/dashboard/widgets/last-edited-widget/last-edited-and-created.component.d.ts +1 -1
  16. package/app/eo-client/dashboard/widgets/search-widget/search-widget.component.d.ts +1 -1
  17. package/app/eo-client/stored-queries-state/stored-queries-state.component.d.ts.map +1 -1
  18. package/app/eo-framework/accordion/simple-accordion/simple-accordion.component.d.ts +1 -1
  19. package/app/eo-framework/actions/action.module.d.ts.map +1 -1
  20. package/app/eo-framework/actions/actions/add-resubmission-action/add-resubmission/add-resubmission.component.d.ts +1 -1
  21. package/app/eo-framework/actions/actions/add-subscription-action/add-subscription/add-subscription.component.d.ts +1 -1
  22. package/app/eo-framework/actions/actions/cancel-signing-action/cancel-signing/cancel-signing.component.d.ts +1 -1
  23. package/app/eo-framework/actions/actions/clipboard/clipboard-object-action/clipboard-object-action.component.d.ts +1 -1
  24. package/app/eo-framework/actions/actions/custom-actions/custom-actions.component.d.ts +1 -1
  25. package/app/eo-framework/actions/actions/delete-action/delete/delete.component.d.ts +1 -1
  26. package/app/eo-framework/actions/actions/delete-content-action/delete-content/delete-content.component.d.ts +1 -1
  27. package/app/eo-framework/actions/actions/download-action/download-object-action/download-object-action.component.d.ts +1 -1
  28. package/app/eo-framework/actions/actions/email/email/email.component.d.ts +1 -1
  29. package/app/eo-framework/actions/actions/finalize/finalize-object-action/finalize-object-action.component.d.ts +1 -1
  30. package/app/eo-framework/actions/actions/open-document-action/open-document-action.component.d.ts +1 -1
  31. package/app/eo-framework/actions/actions/signature-action/sequence-list/sequence-list.component.d.ts +1 -1
  32. package/app/eo-framework/actions/actions/signature-action/sequence-list-item/sequence-list-item.component.d.ts +1 -1
  33. package/app/eo-framework/actions/actions/workflow-action/simple-workflow-action.component.d.ts +1 -1
  34. package/app/eo-framework/actions/actions/workflow-action/workflow/workflow.component.d.ts +1 -1
  35. package/app/eo-framework/actions/actions/workflow-action/workflow-action.component.d.ts +1 -1
  36. package/app/eo-framework/app-shell/app-bar/app-bar.component.d.ts +1 -1
  37. package/app/eo-framework/app-shell/app-bar/context-search/context-search.component.d.ts +1 -1
  38. package/app/eo-framework/app-shell/app-bar/user-avatar-overlay/user-avatar-overlay.component.d.ts +1 -1
  39. package/app/eo-framework/cta/component/cta.component.d.ts +1 -1
  40. package/app/eo-framework/form-elements/checkbox/checkbox.component.d.ts +1 -1
  41. package/app/eo-framework/form-elements/codesystem/codesystem.component.d.ts +1 -1
  42. package/app/eo-framework/form-elements/date/date.component.d.ts +1 -1
  43. package/app/eo-framework/form-elements/date/year-range/year-range.directive.d.ts +1 -1
  44. package/app/eo-framework/form-elements/datetime-range/datetime-range.component.d.ts +1 -1
  45. package/app/eo-framework/form-elements/dynamic-list/dynamic-list.component.d.ts +1 -1
  46. package/app/eo-framework/form-elements/form-input/form-input.component.d.ts +1 -1
  47. package/app/eo-framework/form-elements/form-input/input-focus/input-focus.directive.d.ts +1 -1
  48. package/app/eo-framework/form-elements/id-reference/id-reference.component.d.ts +1 -1
  49. package/app/eo-framework/form-elements/id-reference/reference-finder/reference-finder.component.d.ts +1 -1
  50. package/app/eo-framework/form-elements/id-reference/reference-finder-entry/reference-finder-entry.component.d.ts +1 -1
  51. package/app/eo-framework/form-elements/number/number.component.d.ts +1 -1
  52. package/app/eo-framework/form-elements/number-range/number-range.component.d.ts +1 -1
  53. package/app/eo-framework/form-elements/organization/organization.component.d.ts +1 -1
  54. package/app/eo-framework/form-elements/password/password.component.d.ts +1 -1
  55. package/app/eo-framework/form-elements/reference/reference.component.d.ts +1 -1
  56. package/app/eo-framework/form-elements/string/string.component.d.ts +1 -1
  57. package/app/eo-framework/grid/column-configurator/column-configurator.component.d.ts +1 -1
  58. package/app/eo-framework/grid/extensions/custom-sort/custom-sort.component.d.ts +1 -1
  59. package/app/eo-framework/grid/extensions/custom-sort/custom-sort.component.d.ts.map +1 -1
  60. package/app/eo-framework/grid/extensions/filter/abstract-filter.component.d.ts +3 -3
  61. package/app/eo-framework/grid/extensions/filter/abstract-filter.component.d.ts.map +1 -1
  62. package/app/eo-framework/grid/extensions/filter/custom/custom-filter.component.d.ts +1 -1
  63. package/app/eo-framework/grid/extensions/filter/setFilters/set-filter.component.d.ts +1 -1
  64. package/app/eo-framework/grid/extensions/filter/text/text-filter.component.d.ts +3 -3
  65. package/app/eo-framework/grid/extensions/filter/text/text-filter.component.d.ts.map +1 -1
  66. package/app/eo-framework/grid/extensions/pagination/pagination.component.d.ts +1 -1
  67. package/app/eo-framework/grid/extensions/quick-filter/quick-filter.component.d.ts +1 -1
  68. package/app/eo-framework/grid/extensions/reset-filter/reset-filter.component.d.ts +1 -1
  69. package/app/eo-framework/grid/extensions/total-count/total-count.component.d.ts +1 -1
  70. package/app/eo-framework/grid/filters/datetime-filter.component.d.ts.map +1 -1
  71. package/app/eo-framework/grid/grid.component.d.ts +6 -17
  72. package/app/eo-framework/grid/grid.component.d.ts.map +1 -1
  73. package/app/eo-framework/grid/grid.module.d.ts +0 -3
  74. package/app/eo-framework/grid/grid.module.d.ts.map +1 -1
  75. package/app/eo-framework/grid/row-grouping/batchRemover.d.ts +13 -0
  76. package/app/eo-framework/grid/row-grouping/batchRemover.d.ts.map +1 -0
  77. package/app/eo-framework/grid/row-grouping/group-stage.d.ts +14 -14
  78. package/app/eo-framework/grid/row-grouping/group-stage.d.ts.map +1 -1
  79. package/app/eo-framework/grid/row-grouping/row-grouping.module.d.ts +1 -0
  80. package/app/eo-framework/grid/row-grouping/row-grouping.module.d.ts.map +1 -1
  81. package/app/eo-framework/inbox-details/duetimeInfo/duetimeInfo.component.d.ts +1 -1
  82. package/app/eo-framework/inbox-details/inbox-details.component.d.ts +1 -1
  83. package/app/eo-framework/list-container/list-container.component.d.ts +1 -1
  84. package/app/eo-framework/media/media.component.d.ts +1 -1
  85. package/app/eo-framework/object-details/edit-icon/edit-icon.component.d.ts +1 -1
  86. package/app/eo-framework/object-details/favorite-icon/favorite-icon.component.d.ts +1 -1
  87. package/app/eo-framework/object-details/object-details.component.d.ts +1 -1
  88. package/app/eo-framework/object-details/object-history/history-filter/history-filter.component.d.ts +1 -1
  89. package/app/eo-framework/object-details/object-history/object-history.component.d.ts +1 -1
  90. package/app/eo-framework/object-details/object-links/object-links.component.d.ts +1 -1
  91. package/app/eo-framework/object-form/object-form/form-element/form-element-template.directive.d.ts +1 -1
  92. package/app/eo-framework/object-form/object-form/form-element/form-element.component.d.ts +1 -1
  93. package/app/eo-framework/object-form/object-form/form-element-table/form-element-table.component.d.ts +4 -1
  94. package/app/eo-framework/object-form/object-form/form-element-table/form-element-table.component.d.ts.map +1 -1
  95. package/app/eo-framework/object-form/object-form/form-element-table/row-edit/row-edit.component.d.ts +1 -1
  96. package/app/eo-framework/object-form/object-form/object-form-group/object-form-group.component.d.ts +1 -1
  97. package/app/eo-framework/object-form/object-form/object-form.component.d.ts +1 -1
  98. package/app/eo-framework/object-form/object-form-edit/object-form-edit.component.d.ts +1 -1
  99. package/app/eo-framework/object-state-details/object-state-details.component.d.ts +1 -1
  100. package/app/eo-framework/plugins/plugin.component.d.ts +2 -2
  101. package/app/eo-framework/plugins/plugins.module.d.ts.map +1 -1
  102. package/app/eo-framework/prepare-details/prepare-content-exists-info/prepare-content-exists-info.component.d.ts +1 -1
  103. package/app/eo-framework/prepare-details/prepare-details.component.d.ts +1 -1
  104. package/app/eo-framework/process/details/process-details.component.d.ts +1 -1
  105. package/app/eo-framework/process/history/process-history.component.d.ts +1 -1
  106. package/app/eo-framework/process/process-file/process-file.component.d.ts +1 -1
  107. package/app/eo-framework/process-form/process-form.component.d.ts +1 -1
  108. package/app/eo-framework/quick-search/quick-search/quick-search.component.d.ts +1 -1
  109. package/app/eo-framework/recyclebin-details/recyclebin-details.component.d.ts +1 -1
  110. package/app/eo-framework/result-list/result-list.component.d.ts +1 -1
  111. package/app/eo-framework/settings/change-password/change-password-form/change-password-form.component.d.ts +1 -1
  112. package/app/eo-framework/settings/permissions/permissions.component.d.ts +1 -1
  113. package/app/eo-framework/shortcuts/global-shortcuts/global-shortcuts-section/global-shortcuts-section.component.d.ts +1 -1
  114. package/app/eo-framework/shortcuts/shortcuts.directive.d.ts +1 -1
  115. package/app/eo-framework/stored-query/stored-query/stored-query.component.d.ts +1 -1
  116. package/app/eo-framework/stored-query/stored-query-details/dynamic-property-switch/dynamic-property-switch.component.d.ts +1 -1
  117. package/app/eo-framework/stored-query/stored-query-details/stored-query-details.component.d.ts +1 -1
  118. package/app/eo-framework/tree/tree-node/tree-node.component.d.ts +1 -1
  119. package/app/eo-framework/tree/tree.component.d.ts +1 -1
  120. package/app/eo-framework/ui/eo-dialog/eo-dialog.component.d.ts +1 -1
  121. package/app/eo-framework/ui/eo-icon/eo-icon.component.d.ts +1 -1
  122. package/app/eo-framework/ui/error-message/error-message.component.d.ts +1 -1
  123. package/app/eo-framework/ui/indexdata-summary/indexdata-summary-entry/indexdata-summary-entry.component.d.ts +1 -1
  124. package/app/eo-framework/ui/indexdata-summary/indexdata-summary.component.d.ts +1 -1
  125. package/app/eo-framework/ui/loading-spinner/loading-spinner.component.d.ts +1 -1
  126. package/app/eo-framework/ui/overlay/overlay.component.d.ts +1 -1
  127. package/app/eo-framework/ui/query-scope-select/query-scope-select.component.d.ts +1 -1
  128. package/app/eo-framework/ui/rtl-aware/rtl-aware.directive.d.ts +1 -1
  129. package/app/eo-framework/ui/signature-tab/signature-tab.component.d.ts +1 -1
  130. package/app/eo-framework/ui/user-avatar/user-avatar.component.d.ts +1 -1
  131. package/app/eo-framework/upload-overlay/upload-overlay-guard.service.d.ts +2 -2
  132. package/app/eo-framework/upload-overlay/upload-overlay-guard.service.d.ts.map +1 -1
  133. package/app/eo-framework/util/directive/prevent-double-click.directive.d.ts +1 -1
  134. package/app/eo-framework-core/api/grid.service.d.ts +4 -3
  135. package/app/eo-framework-core/api/grid.service.d.ts.map +1 -1
  136. package/app/eo-framework-core/pending-changes/pending-changes-guard.service.d.ts +1 -2
  137. package/app/eo-framework-core/pending-changes/pending-changes-guard.service.d.ts.map +1 -1
  138. package/app/eo-framework-core/route-guards/auth/auth-guard.service.d.ts +2 -2
  139. package/app/eo-framework-core/route-guards/auth/auth-guard.service.d.ts.map +1 -1
  140. package/app/eo-framework-core/route-guards/capabilities/capabilities-guard.service.d.ts +2 -2
  141. package/app/eo-framework-core/route-guards/capabilities/capabilities-guard.service.d.ts.map +1 -1
  142. package/esm2022/app/eo-client/about-state/about-state.component.mjs +81 -0
  143. package/esm2022/app/eo-client/dashboard/dashboard.component.mjs +305 -0
  144. package/esm2022/app/eo-client/dashboard/widgets/charts-widget/charts-setup/charts-setup.component.mjs +288 -0
  145. package/esm2022/app/eo-client/dashboard/widgets/charts-widget/charts-widget.component.mjs +265 -0
  146. package/esm2022/app/eo-client/dashboard/widgets/count-objects-widget/count-objects-setup/count-objects-setup.component.mjs +121 -0
  147. package/esm2022/app/eo-client/dashboard/widgets/count-objects-widget/count-objects-widget.component.mjs +125 -0
  148. package/esm2022/app/eo-client/dashboard/widgets/hitlist-widget/hitlist-setup/hitlist-setup.component.mjs +192 -0
  149. package/esm2022/app/eo-client/dashboard/widgets/hitlist-widget/hitlist-widget.component.mjs +164 -0
  150. package/esm2022/app/eo-client/dashboard/widgets/iframe-widget/iframe-setup/iframe-setup.component.mjs +59 -0
  151. package/{esm2020 → esm2022}/app/eo-client/dashboard/widgets/iframe-widget/iframe-widget.component.mjs +8 -8
  152. package/esm2022/app/eo-client/dashboard/widgets/info-inbox-widget/info-inbox-setup/info-inbox-setup.component.mjs +60 -0
  153. package/esm2022/app/eo-client/dashboard/widgets/info-inbox-widget/info-inbox-widget.component.mjs +42 -0
  154. package/esm2022/app/eo-client/dashboard/widgets/info-intray-widget/info-intray-setup/info-intray-setup.component.mjs +69 -0
  155. package/esm2022/app/eo-client/dashboard/widgets/info-intray-widget/info-intray-widget.component.mjs +43 -0
  156. package/esm2022/app/eo-client/dashboard/widgets/last-edited-widget/last-edited-and-created.component.mjs +116 -0
  157. package/esm2022/app/eo-client/dashboard/widgets/search-widget/search-widget.component.mjs +123 -0
  158. package/{esm2020 → esm2022}/app/eo-client/eo-client-routing.module.mjs +5 -5
  159. package/esm2022/app/eo-client/eo-client.module.mjs +170 -0
  160. package/esm2022/app/eo-client/favorite-state/favorite-state.component.mjs +150 -0
  161. package/esm2022/app/eo-client/inbox-state/inbox-state/inbox-state.component.mjs +218 -0
  162. package/{esm2020 → esm2022}/app/eo-client/inbox-state/inbox-state-routing.module.mjs +5 -5
  163. package/{esm2020 → esm2022}/app/eo-client/inbox-state/inbox-state.module.mjs +13 -13
  164. package/esm2022/app/eo-client/login/login.component.mjs +111 -0
  165. package/esm2022/app/eo-client/notifications-state/notifications-state.component.mjs +227 -0
  166. package/esm2022/app/eo-client/object-state/object-state/object-state.component.mjs +342 -0
  167. package/{esm2020 → esm2022}/app/eo-client/object-state/object-state-routing.module.mjs +5 -5
  168. package/esm2022/app/eo-client/object-state/object-state-service/object-state.service.mjs +134 -0
  169. package/{esm2020 → esm2022}/app/eo-client/object-state/object-state.module.mjs +11 -11
  170. package/esm2022/app/eo-client/prepare-state/prepare-state/prepare-state.component.mjs +159 -0
  171. package/{esm2020 → esm2022}/app/eo-client/prepare-state/prepare-state-routing.module.mjs +5 -5
  172. package/{esm2020 → esm2022}/app/eo-client/prepare-state/prepare-state.module.mjs +15 -15
  173. package/esm2022/app/eo-client/process-state/process-state.component.mjs +330 -0
  174. package/esm2022/app/eo-client/recyclebin-state/recyclebin-state.component.mjs +150 -0
  175. package/esm2022/app/eo-client/result-state/result-state.component.mjs +71 -0
  176. package/esm2022/app/eo-client/settings/settings.component.mjs +287 -0
  177. package/esm2022/app/eo-client/stored-queries-state/stored-queries-state.component.mjs +209 -0
  178. package/esm2022/app/eo-client/version-state/version-state.component.mjs +142 -0
  179. package/{esm2020 → esm2022}/app/eo-framework/accordion/accordion.module.mjs +5 -5
  180. package/{esm2020 → esm2022}/app/eo-framework/accordion/simple-accordion/simple-accordion.component.mjs +4 -4
  181. package/{esm2020 → esm2022}/app/eo-framework/actions/action-menu/action-component-anchor/action-component-anchor.directive.mjs +5 -5
  182. package/esm2022/app/eo-framework/actions/action-menu/action-menu.component.mjs +208 -0
  183. package/esm2022/app/eo-framework/actions/action-service/action.service.mjs +185 -0
  184. package/esm2022/app/eo-framework/actions/action-target.mjs +28 -0
  185. package/esm2022/app/eo-framework/actions/action.module.mjs +269 -0
  186. package/esm2022/app/eo-framework/actions/actions/add-resubmission-action/add-resubmission/add-resubmission.component.mjs +201 -0
  187. package/esm2022/app/eo-framework/actions/actions/add-resubmission-action/add-resubmission-action.mjs +50 -0
  188. package/esm2022/app/eo-framework/actions/actions/add-subscription-action/add-subscription/add-subscription.component.mjs +134 -0
  189. package/esm2022/app/eo-framework/actions/actions/add-subscription-action/add-subscription-action.mjs +50 -0
  190. package/{esm2020 → esm2022}/app/eo-framework/actions/actions/cancel-signing-action/cancel-signing/cancel-signing.component.mjs +6 -6
  191. package/{esm2020 → esm2022}/app/eo-framework/actions/actions/cancel-signing-action/cancel-signing-action.mjs +5 -5
  192. package/{esm2020 → esm2022}/app/eo-framework/actions/actions/clipboard/clipboard-action.mjs +5 -5
  193. package/esm2022/app/eo-framework/actions/actions/clipboard/clipboard-object-action/clipboard-object-action.component.mjs +95 -0
  194. package/{esm2020 → esm2022}/app/eo-framework/actions/actions/copy-action/copy-action.mjs +5 -5
  195. package/esm2022/app/eo-framework/actions/actions/custom-actions/custom-actions.component.mjs +88 -0
  196. package/{esm2020 → esm2022}/app/eo-framework/actions/actions/cut-action/cut-action.mjs +5 -5
  197. package/esm2022/app/eo-framework/actions/actions/delete-action/delete/delete.component.mjs +111 -0
  198. package/{esm2020 → esm2022}/app/eo-framework/actions/actions/delete-action/delete-action.mjs +5 -5
  199. package/{esm2020 → esm2022}/app/eo-framework/actions/actions/delete-action/delete-prepared-action.mjs +5 -5
  200. package/{esm2020 → esm2022}/app/eo-framework/actions/actions/delete-content-action/delete-content/delete-content.component.mjs +6 -6
  201. package/{esm2020 → esm2022}/app/eo-framework/actions/actions/delete-content-action/delete-content-action.mjs +5 -5
  202. package/{esm2020 → esm2022}/app/eo-framework/actions/actions/download-action/download-action.mjs +5 -5
  203. package/{esm2020 → esm2022}/app/eo-framework/actions/actions/download-action/download-object-action/download-object-action.component.mjs +6 -6
  204. package/esm2022/app/eo-framework/actions/actions/email/email/email.component.mjs +97 -0
  205. package/{esm2020 → esm2022}/app/eo-framework/actions/actions/email/email-action.mjs +5 -5
  206. package/esm2022/app/eo-framework/actions/actions/favorite-action/favorite-action.mjs +76 -0
  207. package/{esm2020 → esm2022}/app/eo-framework/actions/actions/finalize/definalize-action.mjs +5 -5
  208. package/{esm2020 → esm2022}/app/eo-framework/actions/actions/finalize/finalize-action.mjs +6 -6
  209. package/{esm2020 → esm2022}/app/eo-framework/actions/actions/finalize/finalize-object-action/finalize-object-action.component.mjs +6 -6
  210. package/esm2022/app/eo-framework/actions/actions/open-context-action/open-context-action.mjs +56 -0
  211. package/esm2022/app/eo-framework/actions/actions/open-document-action/open-document-action.component.mjs +69 -0
  212. package/{esm2020 → esm2022}/app/eo-framework/actions/actions/open-document-action/open-document-action.mjs +5 -5
  213. package/{esm2020 → esm2022}/app/eo-framework/actions/actions/open-versions-action/open-versions-action.mjs +5 -5
  214. package/esm2022/app/eo-framework/actions/actions/remove-subscription-action/remove-subscription-action.mjs +45 -0
  215. package/{esm2020 → esm2022}/app/eo-framework/actions/actions/restore-version-action/restore-version-action.mjs +5 -5
  216. package/esm2022/app/eo-framework/actions/actions/share-object-action/share-object/share-object.component.mjs +89 -0
  217. package/{esm2020 → esm2022}/app/eo-framework/actions/actions/share-object-action/share-object-action.mjs +5 -5
  218. package/esm2022/app/eo-framework/actions/actions/signature-action/sequence-list/sequence-list.component.mjs +184 -0
  219. package/esm2022/app/eo-framework/actions/actions/signature-action/sequence-list-item/sequence-list-item.component.mjs +53 -0
  220. package/esm2022/app/eo-framework/actions/actions/signature-action/signature/signature.component.mjs +146 -0
  221. package/{esm2020 → esm2022}/app/eo-framework/actions/actions/signature-action/signature-action.component.mjs +5 -5
  222. package/{esm2020 → esm2022}/app/eo-framework/actions/actions/unlock-action/unlock-action.mjs +5 -5
  223. package/{esm2020 → esm2022}/app/eo-framework/actions/actions/update-resubmission-action/update-resubmission-action.mjs +5 -5
  224. package/{esm2020 → esm2022}/app/eo-framework/actions/actions/workflow-action/simple-workflow-action.component.mjs +5 -5
  225. package/esm2022/app/eo-framework/actions/actions/workflow-action/workflow/workflow.component.mjs +107 -0
  226. package/{esm2020 → esm2022}/app/eo-framework/actions/actions/workflow-action/workflow-action.component.mjs +5 -5
  227. package/esm2022/app/eo-framework/app-shell/app-bar/app-add/app-add-dialog/app-add-dialog.component.mjs +173 -0
  228. package/{esm2020 → esm2022}/app/eo-framework/app-shell/app-bar/app-add/app-add.component.mjs +5 -5
  229. package/esm2022/app/eo-framework/app-shell/app-bar/app-bar.component.mjs +203 -0
  230. package/esm2022/app/eo-framework/app-shell/app-bar/app-process/app-process.component.mjs +112 -0
  231. package/esm2022/app/eo-framework/app-shell/app-bar/app-search/app-search.component.mjs +793 -0
  232. package/esm2022/app/eo-framework/app-shell/app-bar/context-search/context-search.component.mjs +46 -0
  233. package/{esm2020 → esm2022}/app/eo-framework/app-shell/app-bar/side-bar/side-bar.component.mjs +6 -6
  234. package/esm2022/app/eo-framework/app-shell/app-bar/user-avatar-overlay/user-avatar-overlay.component.mjs +42 -0
  235. package/{esm2020 → esm2022}/app/eo-framework/app-shell/app-shell-routing.module.mjs +5 -5
  236. package/{esm2020 → esm2022}/app/eo-framework/app-shell/app-shell.module.mjs +40 -40
  237. package/{esm2020 → esm2022}/app/eo-framework/cta/component/cta.component.mjs +4 -4
  238. package/{esm2020 → esm2022}/app/eo-framework/cta/cta.module.mjs +5 -5
  239. package/{esm2020 → esm2022}/app/eo-framework/eo-framework.module.mjs +110 -110
  240. package/{esm2020 → esm2022}/app/eo-framework/error/error.module.mjs +9 -9
  241. package/{esm2020 → esm2022}/app/eo-framework/error/error404/error404.component.mjs +4 -4
  242. package/{esm2020 → esm2022}/app/eo-framework/error/not-found/not-found.component.mjs +5 -5
  243. package/esm2022/app/eo-framework/form-elements/checkbox/checkbox.component.mjs +62 -0
  244. package/esm2022/app/eo-framework/form-elements/codesystem/codesystem.component.mjs +312 -0
  245. package/esm2022/app/eo-framework/form-elements/date/date.component.mjs +101 -0
  246. package/esm2022/app/eo-framework/form-elements/date/year-range/year-range.directive.mjs +44 -0
  247. package/esm2022/app/eo-framework/form-elements/datetime-range/datetime-range.component.mjs +184 -0
  248. package/esm2022/app/eo-framework/form-elements/dynamic-list/dynamic-list.component.mjs +303 -0
  249. package/{esm2020 → esm2022}/app/eo-framework/form-elements/form-elements.module.mjs +76 -76
  250. package/esm2022/app/eo-framework/form-elements/form-input/form-input.component.mjs +73 -0
  251. package/esm2022/app/eo-framework/form-elements/form-input/input-focus/input-focus.directive.mjs +35 -0
  252. package/esm2022/app/eo-framework/form-elements/id-reference/id-reference.component.mjs +252 -0
  253. package/esm2022/app/eo-framework/form-elements/id-reference/reference-finder/reference-finder.component.mjs +253 -0
  254. package/esm2022/app/eo-framework/form-elements/id-reference/reference-finder-entry/reference-finder-entry.component.mjs +33 -0
  255. package/esm2022/app/eo-framework/form-elements/id-reference/service/reference-finder.service.mjs +106 -0
  256. package/esm2022/app/eo-framework/form-elements/number/number.component.mjs +171 -0
  257. package/esm2022/app/eo-framework/form-elements/number-range/number-range.component.mjs +138 -0
  258. package/esm2022/app/eo-framework/form-elements/organization/organization.component.mjs +216 -0
  259. package/{esm2020 → esm2022}/app/eo-framework/form-elements/password/password.component.mjs +4 -4
  260. package/esm2022/app/eo-framework/form-elements/reference/reference.component.mjs +223 -0
  261. package/esm2022/app/eo-framework/form-elements/string/string.component.mjs +254 -0
  262. package/{esm2020 → esm2022}/app/eo-framework/frame/frame.component.mjs +5 -5
  263. package/esm2022/app/eo-framework/grid/column-configurator/column-configurator.component.mjs +211 -0
  264. package/esm2022/app/eo-framework/grid/extensions/custom-sort/custom-sort.component.mjs +83 -0
  265. package/{esm2020 → esm2022}/app/eo-framework/grid/extensions/empty/empty.component.mjs +4 -4
  266. package/esm2022/app/eo-framework/grid/extensions/filter/abstract-filter.component.mjs +65 -0
  267. package/esm2022/app/eo-framework/grid/extensions/filter/custom/custom-filter.component.mjs +82 -0
  268. package/esm2022/app/eo-framework/grid/extensions/filter/setFilters/set-filter.component.mjs +85 -0
  269. package/esm2022/app/eo-framework/grid/extensions/filter/text/text-filter.component.mjs +98 -0
  270. package/esm2022/app/eo-framework/grid/extensions/pagination/pagination.component.mjs +52 -0
  271. package/{esm2020 → esm2022}/app/eo-framework/grid/extensions/quick-filter/quick-filter.component.mjs +6 -6
  272. package/{esm2020 → esm2022}/app/eo-framework/grid/extensions/reset-filter/reset-filter.component.mjs +4 -4
  273. package/esm2022/app/eo-framework/grid/extensions/services/list-settings.service.mjs +42 -0
  274. package/esm2022/app/eo-framework/grid/extensions/total-count/total-count.component.mjs +36 -0
  275. package/esm2022/app/eo-framework/grid/filters/codesystem-filter.component.mjs +94 -0
  276. package/esm2022/app/eo-framework/grid/filters/datetime-filter.component.mjs +75 -0
  277. package/esm2022/app/eo-framework/grid/filters/dynamic-list-filter.component.mjs +96 -0
  278. package/esm2022/app/eo-framework/grid/filters/list-filter.component.mjs +54 -0
  279. package/esm2022/app/eo-framework/grid/filters/organization-filter.component.mjs +64 -0
  280. package/esm2022/app/eo-framework/grid/grid.component.mjs +420 -0
  281. package/esm2022/app/eo-framework/grid/grid.module.mjs +97 -0
  282. package/esm2022/app/eo-framework/grid/row-grouping/batchRemover.mjs +50 -0
  283. package/esm2022/app/eo-framework/grid/row-grouping/group-stage.mjs +623 -0
  284. package/{esm2020 → esm2022}/app/eo-framework/grid/row-grouping/row-grouping.module.mjs +2 -1
  285. package/{esm2020 → esm2022}/app/eo-framework/inbox-details/duetimeInfo/duetimeInfo.component.mjs +5 -5
  286. package/esm2022/app/eo-framework/inbox-details/inbox-details.component.mjs +457 -0
  287. package/esm2022/app/eo-framework/list-container/list-container.component.mjs +101 -0
  288. package/{esm2020 → esm2022}/app/eo-framework/list-container/list-container.module.mjs +7 -7
  289. package/esm2022/app/eo-framework/media/content-preview.service.mjs +42 -0
  290. package/esm2022/app/eo-framework/media/media.component.mjs +315 -0
  291. package/{esm2020 → esm2022}/app/eo-framework/media/media.module.mjs +13 -13
  292. package/{esm2020 → esm2022}/app/eo-framework/object-details/edit-icon/edit-icon.component.mjs +5 -5
  293. package/esm2022/app/eo-framework/object-details/favorite-icon/favorite-icon.component.mjs +104 -0
  294. package/esm2022/app/eo-framework/object-details/object-details.component.mjs +439 -0
  295. package/{esm2020 → esm2022}/app/eo-framework/object-details/object-details.module.mjs +42 -42
  296. package/esm2022/app/eo-framework/object-details/object-history/history-filter/history-filter-pipe/history-filter.pipe.mjs +32 -0
  297. package/{esm2020 → esm2022}/app/eo-framework/object-details/object-history/history-filter/history-filter.component.mjs +4 -4
  298. package/esm2022/app/eo-framework/object-details/object-history/object-history.component.mjs +82 -0
  299. package/esm2022/app/eo-framework/object-details/object-links/object-links.component.mjs +292 -0
  300. package/{esm2020 → esm2022}/app/eo-framework/object-form/object-form/form-element/form-element-template.directive.mjs +5 -5
  301. package/esm2022/app/eo-framework/object-form/object-form/form-element/form-element.component.mjs +123 -0
  302. package/esm2022/app/eo-framework/object-form/object-form/form-element-table/form-element-table.component.mjs +639 -0
  303. package/esm2022/app/eo-framework/object-form/object-form/form-element-table/row-edit/row-edit.component.mjs +238 -0
  304. package/esm2022/app/eo-framework/object-form/object-form/form-validation/form-validation.mjs +40 -0
  305. package/esm2022/app/eo-framework/object-form/object-form/object-form-group/object-form-group.component.mjs +81 -0
  306. package/esm2022/app/eo-framework/object-form/object-form/object-form-script/object-form-script.service.mjs +113 -0
  307. package/esm2022/app/eo-framework/object-form/object-form/object-form-script/object-form-scripting-scope.mjs +267 -0
  308. package/esm2022/app/eo-framework/object-form/object-form/object-form.component.mjs +148 -0
  309. package/esm2022/app/eo-framework/object-form/object-form-edit/object-form-edit.component.mjs +216 -0
  310. package/esm2022/app/eo-framework/object-form/object-form-helper.service.mjs +717 -0
  311. package/{esm2020 → esm2022}/app/eo-framework/object-form/object-form.module.mjs +37 -37
  312. package/esm2022/app/eo-framework/object-state-details/object-state-details.component.mjs +135 -0
  313. package/{esm2020 → esm2022}/app/eo-framework/plugins/plugin.component.mjs +16 -16
  314. package/{esm2020 → esm2022}/app/eo-framework/plugins/plugin.directive.mjs +5 -5
  315. package/{esm2020 → esm2022}/app/eo-framework/plugins/plugin.service.mjs +6 -6
  316. package/esm2022/app/eo-framework/plugins/plugins.module.mjs +55 -0
  317. package/{esm2020 → esm2022}/app/eo-framework/prepare-details/prepare-content-exists-info/prepare-content-exists-info.component.mjs +4 -4
  318. package/esm2022/app/eo-framework/prepare-details/prepare-details.component.mjs +557 -0
  319. package/esm2022/app/eo-framework/process/details/process-details.component.mjs +226 -0
  320. package/{esm2020 → esm2022}/app/eo-framework/process/history/process-history.component.mjs +4 -4
  321. package/{esm2020 → esm2022}/app/eo-framework/process/process-file/process-file.component.mjs +6 -6
  322. package/esm2022/app/eo-framework/process-form/process-form.component.mjs +50 -0
  323. package/{esm2020 → esm2022}/app/eo-framework/process-form/process-form.module.mjs +11 -11
  324. package/esm2022/app/eo-framework/quick-search/quick-search/quick-search.component.mjs +220 -0
  325. package/{esm2020 → esm2022}/app/eo-framework/quick-search/quick-search.module.mjs +11 -11
  326. package/esm2022/app/eo-framework/recyclebin-details/recyclebin-details.component.mjs +271 -0
  327. package/esm2022/app/eo-framework/result-list/result-list.component.mjs +369 -0
  328. package/{esm2020 → esm2022}/app/eo-framework/result-list/result-list.module.mjs +11 -11
  329. package/esm2022/app/eo-framework/settings/change-password/change-password-form/change-password-form.component.mjs +125 -0
  330. package/{esm2020 → esm2022}/app/eo-framework/settings/permissions/permissions.component.mjs +4 -4
  331. package/{esm2020 → esm2022}/app/eo-framework/settings/settings.module.mjs +13 -13
  332. package/esm2022/app/eo-framework/shortcuts/global-shortcuts/global-shortcuts-section/global-shortcuts-section.component.mjs +65 -0
  333. package/esm2022/app/eo-framework/shortcuts/global-shortcuts/global-shortcuts.component.mjs +130 -0
  334. package/{esm2020 → esm2022}/app/eo-framework/shortcuts/shortcut.interface.mjs +1 -1
  335. package/{esm2020 → esm2022}/app/eo-framework/shortcuts/shortcuts.directive.mjs +5 -5
  336. package/{esm2020 → esm2022}/app/eo-framework/shortcuts/shortcuts.module.mjs +9 -9
  337. package/esm2022/app/eo-framework/shortcuts/shortcuts.service.mjs +45 -0
  338. package/esm2022/app/eo-framework/stored-query/stored-query/stored-query.component.mjs +225 -0
  339. package/esm2022/app/eo-framework/stored-query/stored-query-details/dynamic-property-switch/dynamic-property-switch.component.mjs +46 -0
  340. package/esm2022/app/eo-framework/stored-query/stored-query-details/stored-query-details.component.mjs +501 -0
  341. package/{esm2020 → esm2022}/app/eo-framework/stored-query/stored-query.module.mjs +20 -20
  342. package/{esm2020 → esm2022}/app/eo-framework/tree/tree-node/tree-node.component.mjs +5 -5
  343. package/esm2022/app/eo-framework/tree/tree.component.mjs +281 -0
  344. package/{esm2020 → esm2022}/app/eo-framework/tree/tree.module.mjs +7 -7
  345. package/{esm2020 → esm2022}/app/eo-framework/ui/animations/panel-loading.animation.mjs +1 -1
  346. package/esm2022/app/eo-framework/ui/clipboard/clipboard.component.mjs +159 -0
  347. package/esm2022/app/eo-framework/ui/eo-dialog/eo-dialog.component.mjs +130 -0
  348. package/esm2022/app/eo-framework/ui/eo-icon/eo-icon.component.mjs +119 -0
  349. package/esm2022/app/eo-framework/ui/error-message/error-message.component.mjs +33 -0
  350. package/{esm2020 → esm2022}/app/eo-framework/ui/indexdata-summary/indexdata-summary-entry/indexdata-summary-entry.component.mjs +4 -4
  351. package/esm2022/app/eo-framework/ui/indexdata-summary/indexdata-summary.component.mjs +147 -0
  352. package/{esm2020 → esm2022}/app/eo-framework/ui/loading-spinner/loading-spinner.component.mjs +8 -8
  353. package/esm2022/app/eo-framework/ui/outside-click/outside-click.directive.mjs +60 -0
  354. package/esm2022/app/eo-framework/ui/overlay/overlay.component.mjs +71 -0
  355. package/{esm2020 → esm2022}/app/eo-framework/ui/query-scope-select/query-scope-select.component.mjs +5 -5
  356. package/esm2022/app/eo-framework/ui/router-link/router-link.directive.mjs +26 -0
  357. package/esm2022/app/eo-framework/ui/rtl-aware/rtl-aware.directive.mjs +57 -0
  358. package/esm2022/app/eo-framework/ui/signature-tab/signature-tab.component.mjs +32 -0
  359. package/{esm2020 → esm2022}/app/eo-framework/ui/ui.module.mjs +59 -59
  360. package/esm2022/app/eo-framework/ui/user-avatar/user-avatar.component.mjs +54 -0
  361. package/esm2022/app/eo-framework/upload-overlay/upload-overlay-guard.service.mjs +17 -0
  362. package/esm2022/app/eo-framework/upload-overlay/upload-overlay.component.mjs +397 -0
  363. package/{esm2020 → esm2022}/app/eo-framework/util/directive/prevent-double-click.directive.mjs +5 -5
  364. package/esm2022/app/eo-framework/util/directive/trap-focus.directive.mjs +69 -0
  365. package/esm2022/app/eo-framework/util/services/utilities.service.mjs +25 -0
  366. package/esm2022/app/eo-framework/util/sortable/order-by.pipe.mjs +48 -0
  367. package/{esm2020 → esm2022}/app/eo-framework/util/util.module.mjs +5 -5
  368. package/esm2022/app/eo-framework-core/agent/agent.service.mjs +178 -0
  369. package/esm2022/app/eo-framework-core/api/grid.service.mjs +732 -0
  370. package/esm2022/app/eo-framework-core/api/plugins.service.mjs +258 -0
  371. package/esm2022/app/eo-framework-core/empty-state/empty-state.service.mjs +53 -0
  372. package/esm2022/app/eo-framework-core/eo-framework-core.module.mjs +105 -0
  373. package/esm2022/app/eo-framework-core/error-handler/error-handler.service.mjs +89 -0
  374. package/esm2022/app/eo-framework-core/layout/layout.service.mjs +106 -0
  375. package/esm2022/app/eo-framework-core/location/location.service.mjs +146 -0
  376. package/esm2022/app/eo-framework-core/pending-changes/pending-changes-guard.service.mjs +18 -0
  377. package/esm2022/app/eo-framework-core/pending-changes/pending-changes.service.mjs +112 -0
  378. package/esm2022/app/eo-framework-core/pipes/filesize.pipe.mjs +30 -0
  379. package/{esm2020 → esm2022}/app/eo-framework-core/pipes/keys.pipe.mjs +4 -4
  380. package/esm2022/app/eo-framework-core/pipes/locale-date.pipe.mjs +63 -0
  381. package/esm2022/app/eo-framework-core/pipes/locale-number.pipe.mjs +109 -0
  382. package/{esm2020 → esm2022}/app/eo-framework-core/pipes/pipes.module.mjs +19 -19
  383. package/{esm2020 → esm2022}/app/eo-framework-core/pipes/safe-html.pipe.mjs +5 -5
  384. package/esm2022/app/eo-framework-core/references/reference.service.mjs +266 -0
  385. package/esm2022/app/eo-framework-core/route-guards/auth/auth-guard.service.mjs +29 -0
  386. package/esm2022/app/eo-framework-core/route-guards/capabilities/capabilities-guard.service.mjs +55 -0
  387. package/esm2022/app/eo-framework-core/search/app-search.service.mjs +387 -0
  388. package/esm2022/app/eo-framework-core/selection/selection.service.mjs +63 -0
  389. package/esm2022/app/eo-framework-core/title/page-title.service.mjs +42 -0
  390. package/{fesm2020 → fesm2022}/eo-sdk-client.mjs +2280 -2154
  391. package/fesm2022/eo-sdk-client.mjs.map +1 -0
  392. package/misc/scripts/copy-client-assets.js +1 -1
  393. package/package.json +31 -44
  394. package/styles.css +725 -550
  395. package/styles.scss +3 -3
  396. package/esm2020/app/eo-client/about-state/about-state.component.mjs +0 -81
  397. package/esm2020/app/eo-client/dashboard/dashboard.component.mjs +0 -305
  398. package/esm2020/app/eo-client/dashboard/widgets/charts-widget/charts-setup/charts-setup.component.mjs +0 -297
  399. package/esm2020/app/eo-client/dashboard/widgets/charts-widget/charts-widget.component.mjs +0 -265
  400. package/esm2020/app/eo-client/dashboard/widgets/count-objects-widget/count-objects-setup/count-objects-setup.component.mjs +0 -121
  401. package/esm2020/app/eo-client/dashboard/widgets/count-objects-widget/count-objects-widget.component.mjs +0 -125
  402. package/esm2020/app/eo-client/dashboard/widgets/hitlist-widget/hitlist-setup/hitlist-setup.component.mjs +0 -192
  403. package/esm2020/app/eo-client/dashboard/widgets/hitlist-widget/hitlist-widget.component.mjs +0 -164
  404. package/esm2020/app/eo-client/dashboard/widgets/iframe-widget/iframe-setup/iframe-setup.component.mjs +0 -59
  405. package/esm2020/app/eo-client/dashboard/widgets/info-inbox-widget/info-inbox-setup/info-inbox-setup.component.mjs +0 -60
  406. package/esm2020/app/eo-client/dashboard/widgets/info-inbox-widget/info-inbox-widget.component.mjs +0 -42
  407. package/esm2020/app/eo-client/dashboard/widgets/info-intray-widget/info-intray-setup/info-intray-setup.component.mjs +0 -69
  408. package/esm2020/app/eo-client/dashboard/widgets/info-intray-widget/info-intray-widget.component.mjs +0 -43
  409. package/esm2020/app/eo-client/dashboard/widgets/last-edited-widget/last-edited-and-created.component.mjs +0 -116
  410. package/esm2020/app/eo-client/dashboard/widgets/search-widget/search-widget.component.mjs +0 -123
  411. package/esm2020/app/eo-client/eo-client.module.mjs +0 -170
  412. package/esm2020/app/eo-client/favorite-state/favorite-state.component.mjs +0 -150
  413. package/esm2020/app/eo-client/inbox-state/inbox-state/inbox-state.component.mjs +0 -218
  414. package/esm2020/app/eo-client/login/login.component.mjs +0 -111
  415. package/esm2020/app/eo-client/notifications-state/notifications-state.component.mjs +0 -227
  416. package/esm2020/app/eo-client/object-state/object-state/object-state.component.mjs +0 -342
  417. package/esm2020/app/eo-client/object-state/object-state-service/object-state.service.mjs +0 -134
  418. package/esm2020/app/eo-client/prepare-state/prepare-state/prepare-state.component.mjs +0 -159
  419. package/esm2020/app/eo-client/process-state/process-state.component.mjs +0 -330
  420. package/esm2020/app/eo-client/recyclebin-state/recyclebin-state.component.mjs +0 -150
  421. package/esm2020/app/eo-client/result-state/result-state.component.mjs +0 -71
  422. package/esm2020/app/eo-client/settings/settings.component.mjs +0 -287
  423. package/esm2020/app/eo-client/stored-queries-state/stored-queries-state.component.mjs +0 -209
  424. package/esm2020/app/eo-client/version-state/version-state.component.mjs +0 -142
  425. package/esm2020/app/eo-framework/actions/action-menu/action-menu.component.mjs +0 -208
  426. package/esm2020/app/eo-framework/actions/action-service/action.service.mjs +0 -185
  427. package/esm2020/app/eo-framework/actions/action-target.mjs +0 -28
  428. package/esm2020/app/eo-framework/actions/action.module.mjs +0 -274
  429. package/esm2020/app/eo-framework/actions/actions/add-resubmission-action/add-resubmission/add-resubmission.component.mjs +0 -201
  430. package/esm2020/app/eo-framework/actions/actions/add-resubmission-action/add-resubmission-action.mjs +0 -50
  431. package/esm2020/app/eo-framework/actions/actions/add-subscription-action/add-subscription/add-subscription.component.mjs +0 -134
  432. package/esm2020/app/eo-framework/actions/actions/add-subscription-action/add-subscription-action.mjs +0 -50
  433. package/esm2020/app/eo-framework/actions/actions/clipboard/clipboard-object-action/clipboard-object-action.component.mjs +0 -95
  434. package/esm2020/app/eo-framework/actions/actions/custom-actions/custom-actions.component.mjs +0 -88
  435. package/esm2020/app/eo-framework/actions/actions/delete-action/delete/delete.component.mjs +0 -111
  436. package/esm2020/app/eo-framework/actions/actions/email/email/email.component.mjs +0 -97
  437. package/esm2020/app/eo-framework/actions/actions/favorite-action/favorite-action.mjs +0 -76
  438. package/esm2020/app/eo-framework/actions/actions/open-context-action/open-context-action.mjs +0 -56
  439. package/esm2020/app/eo-framework/actions/actions/open-document-action/open-document-action.component.mjs +0 -69
  440. package/esm2020/app/eo-framework/actions/actions/remove-subscription-action/remove-subscription-action.mjs +0 -45
  441. package/esm2020/app/eo-framework/actions/actions/share-object-action/share-object/share-object.component.mjs +0 -89
  442. package/esm2020/app/eo-framework/actions/actions/signature-action/sequence-list/sequence-list.component.mjs +0 -184
  443. package/esm2020/app/eo-framework/actions/actions/signature-action/sequence-list-item/sequence-list-item.component.mjs +0 -53
  444. package/esm2020/app/eo-framework/actions/actions/signature-action/signature/signature.component.mjs +0 -146
  445. package/esm2020/app/eo-framework/actions/actions/workflow-action/workflow/workflow.component.mjs +0 -107
  446. package/esm2020/app/eo-framework/app-shell/app-bar/app-add/app-add-dialog/app-add-dialog.component.mjs +0 -173
  447. package/esm2020/app/eo-framework/app-shell/app-bar/app-bar.component.mjs +0 -203
  448. package/esm2020/app/eo-framework/app-shell/app-bar/app-process/app-process.component.mjs +0 -112
  449. package/esm2020/app/eo-framework/app-shell/app-bar/app-search/app-search.component.mjs +0 -793
  450. package/esm2020/app/eo-framework/app-shell/app-bar/context-search/context-search.component.mjs +0 -46
  451. package/esm2020/app/eo-framework/app-shell/app-bar/user-avatar-overlay/user-avatar-overlay.component.mjs +0 -42
  452. package/esm2020/app/eo-framework/form-elements/checkbox/checkbox.component.mjs +0 -62
  453. package/esm2020/app/eo-framework/form-elements/codesystem/codesystem.component.mjs +0 -312
  454. package/esm2020/app/eo-framework/form-elements/date/date.component.mjs +0 -101
  455. package/esm2020/app/eo-framework/form-elements/date/year-range/year-range.directive.mjs +0 -44
  456. package/esm2020/app/eo-framework/form-elements/datetime-range/datetime-range.component.mjs +0 -184
  457. package/esm2020/app/eo-framework/form-elements/dynamic-list/dynamic-list.component.mjs +0 -303
  458. package/esm2020/app/eo-framework/form-elements/form-input/form-input.component.mjs +0 -73
  459. package/esm2020/app/eo-framework/form-elements/form-input/input-focus/input-focus.directive.mjs +0 -35
  460. package/esm2020/app/eo-framework/form-elements/id-reference/id-reference.component.mjs +0 -252
  461. package/esm2020/app/eo-framework/form-elements/id-reference/reference-finder/reference-finder.component.mjs +0 -253
  462. package/esm2020/app/eo-framework/form-elements/id-reference/reference-finder-entry/reference-finder-entry.component.mjs +0 -33
  463. package/esm2020/app/eo-framework/form-elements/id-reference/service/reference-finder.service.mjs +0 -106
  464. package/esm2020/app/eo-framework/form-elements/number/number.component.mjs +0 -171
  465. package/esm2020/app/eo-framework/form-elements/number-range/number-range.component.mjs +0 -138
  466. package/esm2020/app/eo-framework/form-elements/organization/organization.component.mjs +0 -216
  467. package/esm2020/app/eo-framework/form-elements/reference/reference.component.mjs +0 -223
  468. package/esm2020/app/eo-framework/form-elements/string/string.component.mjs +0 -254
  469. package/esm2020/app/eo-framework/grid/column-configurator/column-configurator.component.mjs +0 -211
  470. package/esm2020/app/eo-framework/grid/extensions/custom-sort/custom-sort.component.mjs +0 -83
  471. package/esm2020/app/eo-framework/grid/extensions/filter/abstract-filter.component.mjs +0 -65
  472. package/esm2020/app/eo-framework/grid/extensions/filter/custom/custom-filter.component.mjs +0 -82
  473. package/esm2020/app/eo-framework/grid/extensions/filter/setFilters/set-filter.component.mjs +0 -85
  474. package/esm2020/app/eo-framework/grid/extensions/filter/text/text-filter.component.mjs +0 -98
  475. package/esm2020/app/eo-framework/grid/extensions/pagination/pagination.component.mjs +0 -52
  476. package/esm2020/app/eo-framework/grid/extensions/services/list-settings.service.mjs +0 -42
  477. package/esm2020/app/eo-framework/grid/extensions/total-count/total-count.component.mjs +0 -36
  478. package/esm2020/app/eo-framework/grid/filters/codesystem-filter.component.mjs +0 -94
  479. package/esm2020/app/eo-framework/grid/filters/datetime-filter.component.mjs +0 -75
  480. package/esm2020/app/eo-framework/grid/filters/dynamic-list-filter.component.mjs +0 -96
  481. package/esm2020/app/eo-framework/grid/filters/list-filter.component.mjs +0 -54
  482. package/esm2020/app/eo-framework/grid/filters/organization-filter.component.mjs +0 -64
  483. package/esm2020/app/eo-framework/grid/grid.component.mjs +0 -421
  484. package/esm2020/app/eo-framework/grid/grid.module.mjs +0 -107
  485. package/esm2020/app/eo-framework/grid/row-grouping/group-stage.mjs +0 -528
  486. package/esm2020/app/eo-framework/inbox-details/inbox-details.component.mjs +0 -457
  487. package/esm2020/app/eo-framework/list-container/list-container.component.mjs +0 -101
  488. package/esm2020/app/eo-framework/media/content-preview.service.mjs +0 -42
  489. package/esm2020/app/eo-framework/media/media.component.mjs +0 -314
  490. package/esm2020/app/eo-framework/object-details/favorite-icon/favorite-icon.component.mjs +0 -104
  491. package/esm2020/app/eo-framework/object-details/object-details.component.mjs +0 -439
  492. package/esm2020/app/eo-framework/object-details/object-history/history-filter/history-filter-pipe/history-filter.pipe.mjs +0 -32
  493. package/esm2020/app/eo-framework/object-details/object-history/object-history.component.mjs +0 -82
  494. package/esm2020/app/eo-framework/object-details/object-links/object-links.component.mjs +0 -292
  495. package/esm2020/app/eo-framework/object-form/object-form/form-element/form-element.component.mjs +0 -123
  496. package/esm2020/app/eo-framework/object-form/object-form/form-element-table/form-element-table.component.mjs +0 -634
  497. package/esm2020/app/eo-framework/object-form/object-form/form-element-table/row-edit/row-edit.component.mjs +0 -238
  498. package/esm2020/app/eo-framework/object-form/object-form/form-validation/form-validation.mjs +0 -40
  499. package/esm2020/app/eo-framework/object-form/object-form/object-form-group/object-form-group.component.mjs +0 -81
  500. package/esm2020/app/eo-framework/object-form/object-form/object-form-script/object-form-script.service.mjs +0 -113
  501. package/esm2020/app/eo-framework/object-form/object-form/object-form-script/object-form-scripting-scope.mjs +0 -267
  502. package/esm2020/app/eo-framework/object-form/object-form/object-form.component.mjs +0 -148
  503. package/esm2020/app/eo-framework/object-form/object-form-edit/object-form-edit.component.mjs +0 -216
  504. package/esm2020/app/eo-framework/object-form/object-form-helper.service.mjs +0 -717
  505. package/esm2020/app/eo-framework/object-state-details/object-state-details.component.mjs +0 -134
  506. package/esm2020/app/eo-framework/plugins/plugins.module.mjs +0 -59
  507. package/esm2020/app/eo-framework/prepare-details/prepare-details.component.mjs +0 -557
  508. package/esm2020/app/eo-framework/process/details/process-details.component.mjs +0 -226
  509. package/esm2020/app/eo-framework/process-form/process-form.component.mjs +0 -50
  510. package/esm2020/app/eo-framework/quick-search/quick-search/quick-search.component.mjs +0 -220
  511. package/esm2020/app/eo-framework/recyclebin-details/recyclebin-details.component.mjs +0 -271
  512. package/esm2020/app/eo-framework/result-list/result-list.component.mjs +0 -368
  513. package/esm2020/app/eo-framework/settings/change-password/change-password-form/change-password-form.component.mjs +0 -125
  514. package/esm2020/app/eo-framework/shortcuts/global-shortcuts/global-shortcuts-section/global-shortcuts-section.component.mjs +0 -65
  515. package/esm2020/app/eo-framework/shortcuts/global-shortcuts/global-shortcuts.component.mjs +0 -130
  516. package/esm2020/app/eo-framework/shortcuts/shortcuts.service.mjs +0 -45
  517. package/esm2020/app/eo-framework/stored-query/stored-query/stored-query.component.mjs +0 -225
  518. package/esm2020/app/eo-framework/stored-query/stored-query-details/dynamic-property-switch/dynamic-property-switch.component.mjs +0 -46
  519. package/esm2020/app/eo-framework/stored-query/stored-query-details/stored-query-details.component.mjs +0 -501
  520. package/esm2020/app/eo-framework/tree/tree.component.mjs +0 -281
  521. package/esm2020/app/eo-framework/ui/clipboard/clipboard.component.mjs +0 -159
  522. package/esm2020/app/eo-framework/ui/eo-dialog/eo-dialog.component.mjs +0 -130
  523. package/esm2020/app/eo-framework/ui/eo-icon/eo-icon.component.mjs +0 -119
  524. package/esm2020/app/eo-framework/ui/error-message/error-message.component.mjs +0 -33
  525. package/esm2020/app/eo-framework/ui/indexdata-summary/indexdata-summary.component.mjs +0 -146
  526. package/esm2020/app/eo-framework/ui/outside-click/outside-click.directive.mjs +0 -60
  527. package/esm2020/app/eo-framework/ui/overlay/overlay.component.mjs +0 -71
  528. package/esm2020/app/eo-framework/ui/router-link/router-link.directive.mjs +0 -26
  529. package/esm2020/app/eo-framework/ui/rtl-aware/rtl-aware.directive.mjs +0 -57
  530. package/esm2020/app/eo-framework/ui/signature-tab/signature-tab.component.mjs +0 -32
  531. package/esm2020/app/eo-framework/ui/user-avatar/user-avatar.component.mjs +0 -54
  532. package/esm2020/app/eo-framework/upload-overlay/upload-overlay-guard.service.mjs +0 -17
  533. package/esm2020/app/eo-framework/upload-overlay/upload-overlay.component.mjs +0 -397
  534. package/esm2020/app/eo-framework/util/directive/trap-focus.directive.mjs +0 -69
  535. package/esm2020/app/eo-framework/util/services/utilities.service.mjs +0 -25
  536. package/esm2020/app/eo-framework/util/sortable/order-by.pipe.mjs +0 -48
  537. package/esm2020/app/eo-framework-core/agent/agent.service.mjs +0 -178
  538. package/esm2020/app/eo-framework-core/api/grid.service.mjs +0 -732
  539. package/esm2020/app/eo-framework-core/api/plugins.service.mjs +0 -258
  540. package/esm2020/app/eo-framework-core/empty-state/empty-state.service.mjs +0 -53
  541. package/esm2020/app/eo-framework-core/eo-framework-core.module.mjs +0 -105
  542. package/esm2020/app/eo-framework-core/error-handler/error-handler.service.mjs +0 -89
  543. package/esm2020/app/eo-framework-core/layout/layout.service.mjs +0 -106
  544. package/esm2020/app/eo-framework-core/location/location.service.mjs +0 -146
  545. package/esm2020/app/eo-framework-core/pending-changes/pending-changes-guard.service.mjs +0 -18
  546. package/esm2020/app/eo-framework-core/pending-changes/pending-changes.service.mjs +0 -112
  547. package/esm2020/app/eo-framework-core/pipes/filesize.pipe.mjs +0 -30
  548. package/esm2020/app/eo-framework-core/pipes/locale-date.pipe.mjs +0 -63
  549. package/esm2020/app/eo-framework-core/pipes/locale-number.pipe.mjs +0 -109
  550. package/esm2020/app/eo-framework-core/references/reference.service.mjs +0 -266
  551. package/esm2020/app/eo-framework-core/route-guards/auth/auth-guard.service.mjs +0 -29
  552. package/esm2020/app/eo-framework-core/route-guards/capabilities/capabilities-guard.service.mjs +0 -55
  553. package/esm2020/app/eo-framework-core/search/app-search.service.mjs +0 -387
  554. package/esm2020/app/eo-framework-core/selection/selection.service.mjs +0 -63
  555. package/esm2020/app/eo-framework-core/title/page-title.service.mjs +0 -42
  556. package/esm2020/projects/eo-sdk/core/eo-sdk-client-projects-eo-sdk-core.mjs +0 -5
  557. package/esm2020/projects/eo-sdk/core/lib/config/core-config.mjs +0 -23
  558. package/esm2020/projects/eo-sdk/core/lib/config/core-init.service.mjs +0 -71
  559. package/esm2020/projects/eo-sdk/core/lib/config/core-init.tokens.mjs +0 -8
  560. package/esm2020/projects/eo-sdk/core/lib/config/initialize-module.mjs +0 -11
  561. package/esm2020/projects/eo-sdk/core/lib/config/missing-translation-handler.mjs +0 -15
  562. package/esm2020/projects/eo-sdk/core/lib/config/translate-json-loader.mjs +0 -130
  563. package/esm2020/projects/eo-sdk/core/lib/environment.enaio.mjs +0 -12
  564. package/esm2020/projects/eo-sdk/core/lib/eo-core-shared.module.mjs +0 -24
  565. package/esm2020/projects/eo-sdk/core/lib/eo-core.module.mjs +0 -117
  566. package/esm2020/projects/eo-sdk/core/lib/interface/change-password.interface.mjs +0 -2
  567. package/esm2020/projects/eo-sdk/core/lib/interface/event.interface.mjs +0 -2
  568. package/esm2020/projects/eo-sdk/core/lib/interface/http-options.interface.mjs +0 -2
  569. package/esm2020/projects/eo-sdk/core/lib/interface/logger.interface.mjs +0 -7
  570. package/esm2020/projects/eo-sdk/core/lib/interface/organization-objects.interface.mjs +0 -2
  571. package/esm2020/projects/eo-sdk/core/lib/interface/tree-node.interface.mjs +0 -2
  572. package/esm2020/projects/eo-sdk/core/lib/model/baseparams.model.mjs +0 -2
  573. package/esm2020/projects/eo-sdk/core/lib/model/bpm.model.mjs +0 -70
  574. package/esm2020/projects/eo-sdk/core/lib/model/custom-action.model.mjs +0 -2
  575. package/esm2020/projects/eo-sdk/core/lib/model/dms-object-history.model.mjs +0 -30
  576. package/esm2020/projects/eo-sdk/core/lib/model/dms-object.model.mjs +0 -140
  577. package/esm2020/projects/eo-sdk/core/lib/model/eo-error.model.mjs +0 -37
  578. package/esm2020/projects/eo-sdk/core/lib/model/eo-user.model.mjs +0 -86
  579. package/esm2020/projects/eo-sdk/core/lib/model/inbox-item.model.mjs +0 -36
  580. package/esm2020/projects/eo-sdk/core/lib/model/object-type.model.mjs +0 -39
  581. package/esm2020/projects/eo-sdk/core/lib/model/org.model.mjs +0 -2
  582. package/esm2020/projects/eo-sdk/core/lib/model/prepared-item.model.mjs +0 -35
  583. package/esm2020/projects/eo-sdk/core/lib/model/range-value.model.mjs +0 -45
  584. package/esm2020/projects/eo-sdk/core/lib/model/upload-file-item.model.mjs +0 -17
  585. package/esm2020/projects/eo-sdk/core/lib/model/upload-target.model.mjs +0 -50
  586. package/esm2020/projects/eo-sdk/core/lib/model/work-item-history.model.mjs +0 -54
  587. package/esm2020/projects/eo-sdk/core/lib/service/auth/auth-interceptor.mjs +0 -29
  588. package/esm2020/projects/eo-sdk/core/lib/service/auth/auth-profile.interface.mjs +0 -2
  589. package/esm2020/projects/eo-sdk/core/lib/service/auth/auth.service.mjs +0 -215
  590. package/esm2020/projects/eo-sdk/core/lib/service/auth/gateway-info.interface.mjs +0 -2
  591. package/esm2020/projects/eo-sdk/core/lib/service/backend/backend.service.mjs +0 -358
  592. package/esm2020/projects/eo-sdk/core/lib/service/bpm/bpm.service.mjs +0 -286
  593. package/esm2020/projects/eo-sdk/core/lib/service/cache/app-cache.service.mjs +0 -117
  594. package/esm2020/projects/eo-sdk/core/lib/service/capabilities/capabilities.model.mjs +0 -2
  595. package/esm2020/projects/eo-sdk/core/lib/service/capabilities/capabilities.service.mjs +0 -60
  596. package/esm2020/projects/eo-sdk/core/lib/service/clipboard/clipboard-action.enum.mjs +0 -6
  597. package/esm2020/projects/eo-sdk/core/lib/service/clipboard/clipboard.interface.mjs +0 -2
  598. package/esm2020/projects/eo-sdk/core/lib/service/clipboard/clipboard.service.mjs +0 -100
  599. package/esm2020/projects/eo-sdk/core/lib/service/config/config.enum.mjs +0 -6
  600. package/esm2020/projects/eo-sdk/core/lib/service/config/config.interface.mjs +0 -2
  601. package/esm2020/projects/eo-sdk/core/lib/service/config/config.service.mjs +0 -135
  602. package/esm2020/projects/eo-sdk/core/lib/service/dms/dms.service.mjs +0 -507
  603. package/esm2020/projects/eo-sdk/core/lib/service/dms/dmsParams.interface.mjs +0 -2
  604. package/esm2020/projects/eo-sdk/core/lib/service/events/event.service.mjs +0 -44
  605. package/esm2020/projects/eo-sdk/core/lib/service/events/events.mjs +0 -27
  606. package/esm2020/projects/eo-sdk/core/lib/service/inbox/inbox.service.mjs +0 -111
  607. package/esm2020/projects/eo-sdk/core/lib/service/logger/console-log.service.mjs +0 -41
  608. package/esm2020/projects/eo-sdk/core/lib/service/logger/logger.mjs +0 -47
  609. package/esm2020/projects/eo-sdk/core/lib/service/notifications/notifications.service.mjs +0 -136
  610. package/esm2020/projects/eo-sdk/core/lib/service/prepare/objectTypes.interface.mjs +0 -2
  611. package/esm2020/projects/eo-sdk/core/lib/service/prepare/prepare.service.mjs +0 -305
  612. package/esm2020/projects/eo-sdk/core/lib/service/search/search-filter-type.interface.mjs +0 -2
  613. package/esm2020/projects/eo-sdk/core/lib/service/search/search-query.model.mjs +0 -510
  614. package/esm2020/projects/eo-sdk/core/lib/service/search/search.service.mjs +0 -478
  615. package/esm2020/projects/eo-sdk/core/lib/service/signing/signing.service.mjs +0 -60
  616. package/esm2020/projects/eo-sdk/core/lib/service/storage/local-storage.service.mjs +0 -111
  617. package/esm2020/projects/eo-sdk/core/lib/service/stored-queries/stored-queries-subscription.interface.mjs +0 -2
  618. package/esm2020/projects/eo-sdk/core/lib/service/stored-queries/stored-queries.service.mjs +0 -216
  619. package/esm2020/projects/eo-sdk/core/lib/service/stored-queries/stored-query.model.mjs +0 -98
  620. package/esm2020/projects/eo-sdk/core/lib/service/system/system.service.mjs +0 -345
  621. package/esm2020/projects/eo-sdk/core/lib/service/system/systemdefinition.interface.mjs +0 -2
  622. package/esm2020/projects/eo-sdk/core/lib/service/system-status/system-status.service.mjs +0 -104
  623. package/esm2020/projects/eo-sdk/core/lib/service/system-status/system.status.enum.mjs +0 -9
  624. package/esm2020/projects/eo-sdk/core/lib/service/system-status/system.status.interface.mjs +0 -2
  625. package/esm2020/projects/eo-sdk/core/lib/service/upload/upload.service.mjs +0 -46
  626. package/esm2020/projects/eo-sdk/core/lib/service/upload-registry/upload-registry.service.mjs +0 -83
  627. package/esm2020/projects/eo-sdk/core/lib/service/user/user.service.mjs +0 -399
  628. package/esm2020/projects/eo-sdk/core/lib/util/utils.mjs +0 -304
  629. package/esm2020/projects/eo-sdk/core/public_api.mjs +0 -85
  630. package/fesm2015/eo-sdk-client-projects-eo-sdk-core.mjs +0 -6118
  631. package/fesm2015/eo-sdk-client-projects-eo-sdk-core.mjs.map +0 -1
  632. package/fesm2015/eo-sdk-client.mjs +0 -27050
  633. package/fesm2015/eo-sdk-client.mjs.map +0 -1
  634. package/fesm2020/eo-sdk-client-projects-eo-sdk-core.mjs +0 -6133
  635. package/fesm2020/eo-sdk-client-projects-eo-sdk-core.mjs.map +0 -1
  636. package/fesm2020/eo-sdk-client.mjs.map +0 -1
  637. package/projects/eo-sdk/core/README.md +0 -113
  638. package/projects/eo-sdk/core/eo-sdk-client-projects-eo-sdk-core.d.ts.map +0 -1
  639. package/projects/eo-sdk/core/index.d.ts +0 -6
  640. package/projects/eo-sdk/core/lib/config/core-config.d.ts +0 -14
  641. package/projects/eo-sdk/core/lib/config/core-config.d.ts.map +0 -1
  642. package/projects/eo-sdk/core/lib/config/core-init.service.d.ts +0 -33
  643. package/projects/eo-sdk/core/lib/config/core-init.service.d.ts.map +0 -1
  644. package/projects/eo-sdk/core/lib/config/core-init.tokens.d.ts +0 -8
  645. package/projects/eo-sdk/core/lib/config/core-init.tokens.d.ts.map +0 -1
  646. package/projects/eo-sdk/core/lib/config/initialize-module.d.ts +0 -7
  647. package/projects/eo-sdk/core/lib/config/initialize-module.d.ts.map +0 -1
  648. package/projects/eo-sdk/core/lib/config/missing-translation-handler.d.ts +0 -14
  649. package/projects/eo-sdk/core/lib/config/missing-translation-handler.d.ts.map +0 -1
  650. package/projects/eo-sdk/core/lib/config/translate-json-loader.d.ts +0 -21
  651. package/projects/eo-sdk/core/lib/config/translate-json-loader.d.ts.map +0 -1
  652. package/projects/eo-sdk/core/lib/environment.enaio.d.ts +0 -6
  653. package/projects/eo-sdk/core/lib/environment.enaio.d.ts.map +0 -1
  654. package/projects/eo-sdk/core/lib/eo-core-shared.module.d.ts +0 -12
  655. package/projects/eo-sdk/core/lib/eo-core-shared.module.d.ts.map +0 -1
  656. package/projects/eo-sdk/core/lib/eo-core.module.d.ts +0 -46
  657. package/projects/eo-sdk/core/lib/eo-core.module.d.ts.map +0 -1
  658. package/projects/eo-sdk/core/lib/interface/change-password.interface.d.ts +0 -8
  659. package/projects/eo-sdk/core/lib/interface/change-password.interface.d.ts.map +0 -1
  660. package/projects/eo-sdk/core/lib/interface/event.interface.d.ts +0 -14
  661. package/projects/eo-sdk/core/lib/interface/event.interface.d.ts.map +0 -1
  662. package/projects/eo-sdk/core/lib/interface/http-options.interface.d.ts +0 -17
  663. package/projects/eo-sdk/core/lib/interface/http-options.interface.d.ts.map +0 -1
  664. package/projects/eo-sdk/core/lib/interface/logger.interface.d.ts +0 -20
  665. package/projects/eo-sdk/core/lib/interface/logger.interface.d.ts.map +0 -1
  666. package/projects/eo-sdk/core/lib/interface/organization-objects.interface.d.ts +0 -20
  667. package/projects/eo-sdk/core/lib/interface/organization-objects.interface.d.ts.map +0 -1
  668. package/projects/eo-sdk/core/lib/interface/tree-node.interface.d.ts +0 -24
  669. package/projects/eo-sdk/core/lib/interface/tree-node.interface.d.ts.map +0 -1
  670. package/projects/eo-sdk/core/lib/model/baseparams.model.d.ts +0 -58
  671. package/projects/eo-sdk/core/lib/model/baseparams.model.d.ts.map +0 -1
  672. package/projects/eo-sdk/core/lib/model/bpm.model.d.ts +0 -253
  673. package/projects/eo-sdk/core/lib/model/bpm.model.d.ts.map +0 -1
  674. package/projects/eo-sdk/core/lib/model/custom-action.model.d.ts +0 -34
  675. package/projects/eo-sdk/core/lib/model/custom-action.model.d.ts.map +0 -1
  676. package/projects/eo-sdk/core/lib/model/dms-object-history.model.d.ts +0 -59
  677. package/projects/eo-sdk/core/lib/model/dms-object-history.model.d.ts.map +0 -1
  678. package/projects/eo-sdk/core/lib/model/dms-object.model.d.ts +0 -137
  679. package/projects/eo-sdk/core/lib/model/dms-object.model.d.ts.map +0 -1
  680. package/projects/eo-sdk/core/lib/model/eo-error.model.d.ts +0 -19
  681. package/projects/eo-sdk/core/lib/model/eo-error.model.d.ts.map +0 -1
  682. package/projects/eo-sdk/core/lib/model/eo-user.model.d.ts +0 -107
  683. package/projects/eo-sdk/core/lib/model/eo-user.model.d.ts.map +0 -1
  684. package/projects/eo-sdk/core/lib/model/inbox-item.model.d.ts +0 -71
  685. package/projects/eo-sdk/core/lib/model/inbox-item.model.d.ts.map +0 -1
  686. package/projects/eo-sdk/core/lib/model/object-type.model.d.ts +0 -125
  687. package/projects/eo-sdk/core/lib/model/object-type.model.d.ts.map +0 -1
  688. package/projects/eo-sdk/core/lib/model/org.model.d.ts +0 -94
  689. package/projects/eo-sdk/core/lib/model/org.model.d.ts.map +0 -1
  690. package/projects/eo-sdk/core/lib/model/prepared-item.model.d.ts +0 -190
  691. package/projects/eo-sdk/core/lib/model/prepared-item.model.d.ts.map +0 -1
  692. package/projects/eo-sdk/core/lib/model/range-value.model.d.ts +0 -22
  693. package/projects/eo-sdk/core/lib/model/range-value.model.d.ts.map +0 -1
  694. package/projects/eo-sdk/core/lib/model/upload-file-item.model.d.ts +0 -30
  695. package/projects/eo-sdk/core/lib/model/upload-file-item.model.d.ts.map +0 -1
  696. package/projects/eo-sdk/core/lib/model/upload-target.model.d.ts +0 -60
  697. package/projects/eo-sdk/core/lib/model/upload-target.model.d.ts.map +0 -1
  698. package/projects/eo-sdk/core/lib/model/work-item-history.model.d.ts +0 -52
  699. package/projects/eo-sdk/core/lib/model/work-item-history.model.d.ts.map +0 -1
  700. package/projects/eo-sdk/core/lib/service/auth/auth-interceptor.d.ts +0 -12
  701. package/projects/eo-sdk/core/lib/service/auth/auth-interceptor.d.ts.map +0 -1
  702. package/projects/eo-sdk/core/lib/service/auth/auth-profile.interface.d.ts +0 -23
  703. package/projects/eo-sdk/core/lib/service/auth/auth-profile.interface.d.ts.map +0 -1
  704. package/projects/eo-sdk/core/lib/service/auth/auth.service.d.ts +0 -104
  705. package/projects/eo-sdk/core/lib/service/auth/auth.service.d.ts.map +0 -1
  706. package/projects/eo-sdk/core/lib/service/auth/gateway-info.interface.d.ts +0 -18
  707. package/projects/eo-sdk/core/lib/service/auth/gateway-info.interface.d.ts.map +0 -1
  708. package/projects/eo-sdk/core/lib/service/backend/backend.service.d.ts +0 -209
  709. package/projects/eo-sdk/core/lib/service/backend/backend.service.d.ts.map +0 -1
  710. package/projects/eo-sdk/core/lib/service/bpm/bpm.service.d.ts +0 -150
  711. package/projects/eo-sdk/core/lib/service/bpm/bpm.service.d.ts.map +0 -1
  712. package/projects/eo-sdk/core/lib/service/cache/app-cache.service.d.ts +0 -59
  713. package/projects/eo-sdk/core/lib/service/cache/app-cache.service.d.ts.map +0 -1
  714. package/projects/eo-sdk/core/lib/service/capabilities/capabilities.model.d.ts +0 -54
  715. package/projects/eo-sdk/core/lib/service/capabilities/capabilities.model.d.ts.map +0 -1
  716. package/projects/eo-sdk/core/lib/service/capabilities/capabilities.service.d.ts +0 -35
  717. package/projects/eo-sdk/core/lib/service/capabilities/capabilities.service.d.ts.map +0 -1
  718. package/projects/eo-sdk/core/lib/service/clipboard/clipboard-action.enum.d.ts +0 -5
  719. package/projects/eo-sdk/core/lib/service/clipboard/clipboard-action.enum.d.ts.map +0 -1
  720. package/projects/eo-sdk/core/lib/service/clipboard/clipboard.interface.d.ts +0 -16
  721. package/projects/eo-sdk/core/lib/service/clipboard/clipboard.interface.d.ts.map +0 -1
  722. package/projects/eo-sdk/core/lib/service/clipboard/clipboard.service.d.ts +0 -49
  723. package/projects/eo-sdk/core/lib/service/clipboard/clipboard.service.d.ts.map +0 -1
  724. package/projects/eo-sdk/core/lib/service/config/config.enum.d.ts +0 -5
  725. package/projects/eo-sdk/core/lib/service/config/config.enum.d.ts.map +0 -1
  726. package/projects/eo-sdk/core/lib/service/config/config.interface.d.ts +0 -55
  727. package/projects/eo-sdk/core/lib/service/config/config.interface.d.ts.map +0 -1
  728. package/projects/eo-sdk/core/lib/service/config/config.service.d.ts +0 -80
  729. package/projects/eo-sdk/core/lib/service/config/config.service.d.ts.map +0 -1
  730. package/projects/eo-sdk/core/lib/service/dms/dms.service.d.ts +0 -286
  731. package/projects/eo-sdk/core/lib/service/dms/dms.service.d.ts.map +0 -1
  732. package/projects/eo-sdk/core/lib/service/dms/dmsParams.interface.d.ts +0 -13
  733. package/projects/eo-sdk/core/lib/service/dms/dmsParams.interface.d.ts.map +0 -1
  734. package/projects/eo-sdk/core/lib/service/events/event.service.d.ts +0 -31
  735. package/projects/eo-sdk/core/lib/service/events/event.service.d.ts.map +0 -1
  736. package/projects/eo-sdk/core/lib/service/events/events.d.ts +0 -27
  737. package/projects/eo-sdk/core/lib/service/events/events.d.ts.map +0 -1
  738. package/projects/eo-sdk/core/lib/service/inbox/inbox.service.d.ts +0 -66
  739. package/projects/eo-sdk/core/lib/service/inbox/inbox.service.d.ts.map +0 -1
  740. package/projects/eo-sdk/core/lib/service/logger/console-log.service.d.ts +0 -20
  741. package/projects/eo-sdk/core/lib/service/logger/console-log.service.d.ts.map +0 -1
  742. package/projects/eo-sdk/core/lib/service/logger/logger.d.ts +0 -25
  743. package/projects/eo-sdk/core/lib/service/logger/logger.d.ts.map +0 -1
  744. package/projects/eo-sdk/core/lib/service/notifications/notifications.service.d.ts +0 -78
  745. package/projects/eo-sdk/core/lib/service/notifications/notifications.service.d.ts.map +0 -1
  746. package/projects/eo-sdk/core/lib/service/prepare/objectTypes.interface.d.ts +0 -9
  747. package/projects/eo-sdk/core/lib/service/prepare/objectTypes.interface.d.ts.map +0 -1
  748. package/projects/eo-sdk/core/lib/service/prepare/prepare.service.d.ts +0 -189
  749. package/projects/eo-sdk/core/lib/service/prepare/prepare.service.d.ts.map +0 -1
  750. package/projects/eo-sdk/core/lib/service/search/search-filter-type.interface.d.ts +0 -10
  751. package/projects/eo-sdk/core/lib/service/search/search-filter-type.interface.d.ts.map +0 -1
  752. package/projects/eo-sdk/core/lib/service/search/search-query.model.d.ts +0 -327
  753. package/projects/eo-sdk/core/lib/service/search/search-query.model.d.ts.map +0 -1
  754. package/projects/eo-sdk/core/lib/service/search/search.service.d.ts +0 -173
  755. package/projects/eo-sdk/core/lib/service/search/search.service.d.ts.map +0 -1
  756. package/projects/eo-sdk/core/lib/service/signing/signing.service.d.ts +0 -52
  757. package/projects/eo-sdk/core/lib/service/signing/signing.service.d.ts.map +0 -1
  758. package/projects/eo-sdk/core/lib/service/storage/local-storage.service.d.ts +0 -53
  759. package/projects/eo-sdk/core/lib/service/storage/local-storage.service.d.ts.map +0 -1
  760. package/projects/eo-sdk/core/lib/service/stored-queries/stored-queries-subscription.interface.d.ts +0 -15
  761. package/projects/eo-sdk/core/lib/service/stored-queries/stored-queries-subscription.interface.d.ts.map +0 -1
  762. package/projects/eo-sdk/core/lib/service/stored-queries/stored-queries.service.d.ts +0 -108
  763. package/projects/eo-sdk/core/lib/service/stored-queries/stored-queries.service.d.ts.map +0 -1
  764. package/projects/eo-sdk/core/lib/service/stored-queries/stored-query.model.d.ts +0 -74
  765. package/projects/eo-sdk/core/lib/service/stored-queries/stored-query.model.d.ts.map +0 -1
  766. package/projects/eo-sdk/core/lib/service/system/system.service.d.ts +0 -125
  767. package/projects/eo-sdk/core/lib/service/system/system.service.d.ts.map +0 -1
  768. package/projects/eo-sdk/core/lib/service/system/systemdefinition.interface.d.ts +0 -53
  769. package/projects/eo-sdk/core/lib/service/system/systemdefinition.interface.d.ts.map +0 -1
  770. package/projects/eo-sdk/core/lib/service/system-status/system-status.service.d.ts +0 -26
  771. package/projects/eo-sdk/core/lib/service/system-status/system-status.service.d.ts.map +0 -1
  772. package/projects/eo-sdk/core/lib/service/system-status/system.status.enum.d.ts +0 -8
  773. package/projects/eo-sdk/core/lib/service/system-status/system.status.enum.d.ts.map +0 -1
  774. package/projects/eo-sdk/core/lib/service/system-status/system.status.interface.d.ts +0 -8
  775. package/projects/eo-sdk/core/lib/service/system-status/system.status.interface.d.ts.map +0 -1
  776. package/projects/eo-sdk/core/lib/service/upload/upload.service.d.ts +0 -28
  777. package/projects/eo-sdk/core/lib/service/upload/upload.service.d.ts.map +0 -1
  778. package/projects/eo-sdk/core/lib/service/upload-registry/upload-registry.service.d.ts +0 -50
  779. package/projects/eo-sdk/core/lib/service/upload-registry/upload-registry.service.d.ts.map +0 -1
  780. package/projects/eo-sdk/core/lib/service/user/user.service.d.ts +0 -216
  781. package/projects/eo-sdk/core/lib/service/user/user.service.d.ts.map +0 -1
  782. package/projects/eo-sdk/core/lib/util/utils.d.ts +0 -148
  783. package/projects/eo-sdk/core/lib/util/utils.d.ts.map +0 -1
  784. package/projects/eo-sdk/core/public_api.d.ts +0 -82
  785. package/projects/eo-sdk/core/public_api.d.ts.map +0 -1
  786. /package/{esm2020 → esm2022}/app/eo-client/dashboard/widgets/charts-widget/icharts.mjs +0 -0
  787. /package/{esm2020 → esm2022}/app/eo-client/dashboard/widgets/count-objects-widget/count-objects.model.mjs +0 -0
  788. /package/{esm2020 → esm2022}/app/eo-client/dashboard/widgets/hitlist-widget/IHitlist.mjs +0 -0
  789. /package/{esm2020 → esm2022}/app/eo-client/dashboard/widgets/info-inbox-widget/info-inbox.model.mjs +0 -0
  790. /package/{esm2020 → esm2022}/app/eo-client/dashboard/widgets/info-intray-widget/info-intray.model.mjs +0 -0
  791. /package/{esm2020 → esm2022}/app/eo-client/inbox-state/inbox-state/inbox.types.enum.mjs +0 -0
  792. /package/{esm2020 → esm2022}/app/eo-client/index.mjs +0 -0
  793. /package/{esm2020 → esm2022}/app/eo-client/notifications-state/notifications-state.interface.mjs +0 -0
  794. /package/{esm2020 → esm2022}/app/eo-client/object-state/object-state-service/object-state.interface.mjs +0 -0
  795. /package/{esm2020 → esm2022}/app/eo-client/settings/agent-lock-settings.enum.mjs +0 -0
  796. /package/{esm2020 → esm2022}/app/eo-framework/accordion/index.mjs +0 -0
  797. /package/{esm2020 → esm2022}/app/eo-framework/actions/actions/signature-action/signature.model.mjs +0 -0
  798. /package/{esm2020 → esm2022}/app/eo-framework/actions/index.mjs +0 -0
  799. /package/{esm2020 → esm2022}/app/eo-framework/actions/interfaces/action-component.interface.mjs +0 -0
  800. /package/{esm2020 → esm2022}/app/eo-framework/actions/interfaces/action-list-entry.mjs +0 -0
  801. /package/{esm2020 → esm2022}/app/eo-framework/actions/interfaces/action.interface.mjs +0 -0
  802. /package/{esm2020 → esm2022}/app/eo-framework/actions/selection-range.enum.mjs +0 -0
  803. /package/{esm2020 → esm2022}/app/eo-framework/animations/animations.mjs +0 -0
  804. /package/{esm2020 → esm2022}/app/eo-framework/app-shell/app-bar/app-search/app-search.interface.mjs +0 -0
  805. /package/{esm2020 → esm2022}/app/eo-framework/app-shell/index.mjs +0 -0
  806. /package/{esm2020 → esm2022}/app/eo-framework/cta/index.mjs +0 -0
  807. /package/{esm2020 → esm2022}/app/eo-framework/error/index.mjs +0 -0
  808. /package/{esm2020 → esm2022}/app/eo-framework/form-elements/id-reference/animation/reference-finder.animation.mjs +0 -0
  809. /package/{esm2020 → esm2022}/app/eo-framework/form-elements/id-reference/interface/reference-finder.interface.mjs +0 -0
  810. /package/{esm2020 → esm2022}/app/eo-framework/form-elements/index.mjs +0 -0
  811. /package/{esm2020 → esm2022}/app/eo-framework/grid/extensions/filter/setFilters/set-filters.interface.mjs +0 -0
  812. /package/{esm2020 → esm2022}/app/eo-framework/grid/filters/filesize-filter.component.mjs +0 -0
  813. /package/{esm2020 → esm2022}/app/eo-framework/grid/grid-filter.model.mjs +0 -0
  814. /package/{esm2020 → esm2022}/app/eo-framework/grid/index.mjs +0 -0
  815. /package/{esm2020 → esm2022}/app/eo-framework/grid/loader.interface.mjs +0 -0
  816. /package/{esm2020 → esm2022}/app/eo-framework/index.mjs +0 -0
  817. /package/{esm2020 → esm2022}/app/eo-framework/list-container/index.mjs +0 -0
  818. /package/{esm2020 → esm2022}/app/eo-framework/media/index.mjs +0 -0
  819. /package/{esm2020 → esm2022}/app/eo-framework/object-details/index.mjs +0 -0
  820. /package/{esm2020 → esm2022}/app/eo-framework/object-details/object-history/history-filter/history-filter.mjs +0 -0
  821. /package/{esm2020 → esm2022}/app/eo-framework/object-form/form-status-changed-event.interface.mjs +0 -0
  822. /package/{esm2020 → esm2022}/app/eo-framework/object-form/index.mjs +0 -0
  823. /package/{esm2020 → esm2022}/app/eo-framework/object-form/object-form/form-element-table/form-element.interface.mjs +0 -0
  824. /package/{esm2020 → esm2022}/app/eo-framework/object-form/object-form/object-form-control-wrapper.mjs +0 -0
  825. /package/{esm2020 → esm2022}/app/eo-framework/object-form/object-form/object-form-control.mjs +0 -0
  826. /package/{esm2020 → esm2022}/app/eo-framework/object-form/object-form/object-form-group.model.mjs +0 -0
  827. /package/{esm2020 → esm2022}/app/eo-framework/object-form/object-form/object-form-script/object-form-script.interface.mjs +0 -0
  828. /package/{esm2020 → esm2022}/app/eo-framework/object-form/object-form/object-form.model.mjs +0 -0
  829. /package/{esm2020 → esm2022}/app/eo-framework/object-form/object-form-options.interface.mjs +0 -0
  830. /package/{esm2020 → esm2022}/app/eo-framework/plugins/index.mjs +0 -0
  831. /package/{esm2020 → esm2022}/app/eo-framework/process/process-file/file-entry-permissions.interface.mjs +0 -0
  832. /package/{esm2020 → esm2022}/app/eo-framework/quick-search/index.mjs +0 -0
  833. /package/{esm2020 → esm2022}/app/eo-framework/quick-search/quick-search/quick-search-result.interface.mjs +0 -0
  834. /package/{esm2020 → esm2022}/app/eo-framework/result-list/index.mjs +0 -0
  835. /package/{esm2020 → esm2022}/app/eo-framework/settings/change-password/change-password.interface.mjs +0 -0
  836. /package/{esm2020 → esm2022}/app/eo-framework/settings/index.mjs +0 -0
  837. /package/{esm2020 → esm2022}/app/eo-framework/shortcuts/global-shortcut-action.interface.mjs +0 -0
  838. /package/{esm2020 → esm2022}/app/eo-framework/shortcuts/global-shortcut-component.interface.mjs +0 -0
  839. /package/{esm2020 → esm2022}/app/eo-framework/shortcuts/index.mjs +0 -0
  840. /package/{esm2020 → esm2022}/app/eo-framework/stored-query/index.mjs +0 -0
  841. /package/{esm2020 → esm2022}/app/eo-framework/stored-query/stored-query-type-filter.enum.mjs +0 -0
  842. /package/{esm2020 → esm2022}/app/eo-framework/stored-query/stored-query.interface.mjs +0 -0
  843. /package/{esm2020 → esm2022}/app/eo-framework/tree/index.mjs +0 -0
  844. /package/{esm2020 → esm2022}/app/eo-framework/tree/tree.component.interface.mjs +0 -0
  845. /package/{esm2020 → esm2022}/app/eo-framework/ui/index.mjs +0 -0
  846. /package/{esm2020 → esm2022}/app/eo-framework/ui/indexdata-summary/indexdata-summary-entry.interface.mjs +0 -0
  847. /package/{esm2020 → esm2022}/app/eo-framework/util/index.mjs +0 -0
  848. /package/{esm2020 → esm2022}/app/eo-framework-core/agent/agent.interface.mjs +0 -0
  849. /package/{esm2020 → esm2022}/app/eo-framework-core/api/model/dms-object.api.interface.mjs +0 -0
  850. /package/{esm2020 → esm2022}/app/eo-framework-core/empty-state/empty-state.interface.mjs +0 -0
  851. /package/{esm2020 → esm2022}/app/eo-framework-core/error-handler/error-keys.mjs +0 -0
  852. /package/{esm2020 → esm2022}/app/eo-framework-core/index.mjs +0 -0
  853. /package/{esm2020 → esm2022}/app/eo-framework-core/pending-changes/pending-changes-component.interface.mjs +0 -0
  854. /package/{esm2020 → esm2022}/eo-sdk-client.mjs +0 -0
  855. /package/{esm2020 → esm2022}/public_api.mjs +0 -0
@@ -1,397 +0,0 @@
1
- import { of as observableOf, forkJoin as observableForkJoin, Observable } from 'rxjs';
2
- import { Component, ViewChild } from '@angular/core';
3
- import { EnaioEvent, UploadTarget, UploadFileItem, Utils, EnvironmentEnaio } from '@eo-sdk/core';
4
- import * as i0 from "@angular/core";
5
- import * as i1 from "@angular/router";
6
- import * as i2 from "@eo-sdk/core";
7
- import * as i3 from "@angular/common";
8
- import * as i4 from "@ngx-translate/core";
9
- import * as i5 from "../ui/eo-icon/eo-icon.component";
10
- import * as i6 from "../ui/loading-spinner/loading-spinner.component";
11
- import * as i7 from "../../eo-framework-core/pipes/filesize.pipe";
12
- export class UploadOverlayComponent {
13
- constructor(router, renderer, prepareService, translate, systemService, eventService, uploadRegistry) {
14
- this.router = router;
15
- this.renderer = renderer;
16
- this.prepareService = prepareService;
17
- this.translate = translate;
18
- this.systemService = systemService;
19
- this.eventService = eventService;
20
- this.uploadRegistry = uploadRegistry;
21
- this.queue = [];
22
- this.validUploadTargets = [];
23
- this.uploadTargets = [];
24
- this.dragEventCount = 0;
25
- }
26
- init() {
27
- // global drag&drop upload will only be available on desktop (web or electron)
28
- if (EnvironmentEnaio.isMobileEnvironment()) {
29
- return false;
30
- }
31
- // subscribe for the list of registered upload targets
32
- this.uploadRegistry.uploadTargets$.subscribe((uploadTargets) => {
33
- this.uploadTargets = uploadTargets;
34
- });
35
- this.pasteListener = this.renderer.listen('document', 'paste', (e) => {
36
- this.onPaste(e);
37
- });
38
- this.dragEnterListener = this.renderer.listen('document', 'dragenter', (e) => {
39
- this.onDragEnter(e);
40
- });
41
- }
42
- onPaste(e) {
43
- if (this.isUploading) {
44
- return false;
45
- }
46
- this.hasValidUploadTargets = true;
47
- this.invalidInput = false;
48
- if (!this.fileOver && this.pasteContainsFiles(e)) {
49
- let transfer = e.clipboardData;
50
- if (!transfer) {
51
- return;
52
- }
53
- // check for directories
54
- for (let i = 0; i < transfer.items.length; i++) {
55
- if (transfer.items[i].kind === 'string') {
56
- this.invalidInput = true;
57
- return;
58
- }
59
- const fe = transfer.items[i].webkitGetAsEntry();
60
- if (fe && fe.isDirectory) {
61
- this.invalidInput = true;
62
- return;
63
- }
64
- }
65
- if (!this.invalidInput) {
66
- this._preventAndStop(e);
67
- this.setFileOver(true);
68
- this.onFilesDropped(Array.from(transfer.files));
69
- }
70
- }
71
- }
72
- onDragEnter(e) {
73
- if (this.isUploading) {
74
- return false;
75
- }
76
- this.hasValidUploadTargets = true;
77
- if (!this.fileOver && this.dragContainsFiles(e)) {
78
- this.dragEventCount = 0;
79
- this.setFileOver(true);
80
- // use timeout here to force angular digest cycle before continuing, because we are accessing dom elements
81
- // that are not there (*ngIf) until fileOver is set to true.
82
- setTimeout(() => {
83
- // todo: replace by renderer solution when available (https://github.com/angular/angular/issues/15674)
84
- this.overlayEl.nativeElement.focus();
85
- // bind late (only, when needed) to dragleave event to avoid heavy processing on every drag event
86
- this.dragLeaveListener = this.renderer.listen(this.overlayEl.nativeElement, 'dragleave', (evt) => {
87
- this.dragEventCount--;
88
- if (this.dragEventCount === 0) {
89
- this.close();
90
- }
91
- });
92
- this.dropListener = this.renderer.listen(this.overlayEl.nativeElement, 'drop', (evt) => {
93
- let transfer = this._getTransfer(evt);
94
- if (!transfer) {
95
- return;
96
- }
97
- this._preventAndStop(evt);
98
- // check for directories
99
- for (let i = 0; i < transfer.items.length; i++) {
100
- const fe = transfer.items[i].webkitGetAsEntry();
101
- if (fe && fe.isDirectory) {
102
- this.invalidInput = true;
103
- }
104
- }
105
- if (!this.invalidInput) {
106
- this.onFilesDropped(transfer.files);
107
- }
108
- });
109
- this.dragOverListener = this.renderer.listen(this.overlayEl.nativeElement, 'dragover', (evt) => {
110
- let transfer = this._getTransfer(evt);
111
- if (!transfer) {
112
- return;
113
- }
114
- transfer.dropEffect = 'copy';
115
- this._preventAndStop(evt);
116
- });
117
- }, 0);
118
- }
119
- else {
120
- this.dragEventCount++;
121
- }
122
- }
123
- _getTransfer(event) {
124
- return event.dataTransfer ? event.dataTransfer : event.originalEvent.dataTransfer; // jQuery fix;
125
- }
126
- _preventAndStop(event) {
127
- event.preventDefault();
128
- event.stopPropagation();
129
- }
130
- onFilesDropped(fileItems) {
131
- // clear queue when new files are added
132
- // todo: remove in future releases to support collective file adding
133
- this.queue = [];
134
- for (let file of fileItems) {
135
- this.queue.push(new UploadFileItem(file));
136
- }
137
- // bind ESC key listener for closing the dialog as late as possible
138
- if (!this.escKeyListener) {
139
- this.escKeyListener = this.renderer.listen('document', 'keyup', (e) => {
140
- e.stopPropagation();
141
- if (e.keyCode === 27) {
142
- this.close();
143
- }
144
- });
145
- }
146
- // calculate total size of queue
147
- this.setQueueSize();
148
- // filter available targets
149
- this.validateUploadTargets();
150
- }
151
- /**
152
- * Filter list of registered upload targets, so only valid targets will be shown.
153
- */
154
- validateUploadTargets() {
155
- this.hasValidUploadTargets = true;
156
- observableForkJoin(this.uploadTargets.map(t => this.validateUploadTarget(t)))
157
- .subscribe((res) => {
158
- this.validUploadTargets = res.filter(r => r.valid).map(filtered => filtered.target).reverse().sort((a, b) => {
159
- return a.type === 'context' ? -1 : b.type === 'context' ? 1 : 0; // Context should be on top
160
- });
161
- }, err => {
162
- this.validUploadTargets = [];
163
- }, () => {
164
- this.hasValidUploadTargets = this.validUploadTargets.length > 0;
165
- });
166
- }
167
- validateUploadTarget(target) {
168
- if (!this.queue) {
169
- return observableOf({ target: target, valid: false });
170
- }
171
- return Observable.create(o => {
172
- let valid = false;
173
- if (target.type === UploadTarget.ROOT) {
174
- // todo: are there other restrictions on root target?
175
- this.prepareService.getPrepareChildTypes(null, true)
176
- .subscribe((res) => {
177
- valid = this.queue.length > 0 && res.types.length > 0;
178
- o.next({ target: target, valid: valid });
179
- o.complete();
180
- }, err => {
181
- o.next({ target: target, valid: false });
182
- o.complete();
183
- });
184
- }
185
- else if (target.type === UploadTarget.OBJECT) {
186
- // todo: check if the reference object supports the given file type
187
- valid = target.referenceObject &&
188
- target.referenceObject.type.maxFiles > 0 &&
189
- !target.referenceObject.lock &&
190
- !target.referenceObject.isFinalized &&
191
- (target.referenceObject.rights && target.referenceObject.rights.edit) &&
192
- this.queue.length === 1 &&
193
- target.referenceObject.data.yuvsigstatus !== 'signed' &&
194
- target.referenceObject.data.yuvsigstatus !== 'inprocess';
195
- o.next({ target: target, valid: valid });
196
- o.complete();
197
- }
198
- else if (target.type === UploadTarget.CONTEXT || target.type === UploadTarget.CONTEXT_TREE) {
199
- // todo: add checks related to the reference object (e.g. allowed file types)
200
- this.prepareService.getPrepareChildTypes(target.referenceObject.id, true)
201
- .subscribe((res) => {
202
- valid = target.referenceObject && this.queue.length > 0 && res.types.length > 0;
203
- // for CONTEXT_TREE targets also check if the desired node
204
- // type is part of the prepare child types
205
- if (target.type === UploadTarget.CONTEXT_TREE && target.subFolder) {
206
- const subFolder = target.subFolder;
207
- valid = !!res.types.find(t => this.systemService.implementsType(t, subFolder.data.type));
208
- }
209
- o.next({ target: target, valid: valid });
210
- o.complete();
211
- }, err => {
212
- o.next({ target: target, valid: false });
213
- o.complete();
214
- });
215
- }
216
- else {
217
- o.next({ target: target, valid: false });
218
- o.complete();
219
- }
220
- });
221
- }
222
- /**
223
- * Removes a file from the list of files to be uploaded.
224
- * @param fileItem - the file item to be removed
225
- */
226
- removeFileItem(fileItem) {
227
- this.queue = this.queue.filter((f) => f.id !== fileItem.id);
228
- if (!this.queue.length) {
229
- this.close();
230
- }
231
- else {
232
- // update available upload targets because their validity
233
- // may be based on the queue size
234
- this.validateUploadTargets();
235
- this.setQueueSize();
236
- }
237
- }
238
- /**
239
- * Proceed upload with a selected upload target.
240
- * @param uploadTarget - the target to upload files to
241
- */
242
- proceedWithUpload(uploadTarget) {
243
- if (uploadTarget.type !== UploadTarget.CUSTOM && this.queue.length > 1) {
244
- // For more than one file to be uploaded to a none custom target, we let the user decide if
245
- // batch upload should be used or not ...
246
- this.selectedUploadTarget = uploadTarget;
247
- }
248
- else if (uploadTarget.type === UploadTarget.OBJECT) {
249
- // ... otherwise upload is started immediately
250
- this.startUpload(uploadTarget, [null, this.getStateRoute()]);
251
- }
252
- else {
253
- this.startUpload(uploadTarget, [null, '/prepare']);
254
- }
255
- }
256
- /**
257
- * Proceed upload using the selected upload target.
258
- * @param useBatchUpload - flag indicating whether or not to use batch upload
259
- */
260
- proceedWithSelectedTarget(useBatchUpload) {
261
- this.startUpload(this.selectedUploadTarget, [useBatchUpload, '/prepare']);
262
- }
263
- /**
264
- * Resets the selected upload target.
265
- */
266
- resetSelectedUploadTarget() {
267
- this.selectedUploadTarget = null;
268
- }
269
- getStateRoute() {
270
- return this.router.url;
271
- }
272
- successfulUpload(target, uploadTarget) {
273
- this.eventService.trigger(EnaioEvent.DMS_OBJECT_UPDATED, uploadTarget.referenceObject);
274
- uploadTarget.onUploadSuccess(target);
275
- }
276
- /**
277
- * Start the actual upload.
278
- * @param uploadTarget - target to upload the files to
279
- * @param useBatchUpload - flag indicating whether or not to use batch upload
280
- */
281
- startUpload(uploadTarget, [...args]) {
282
- const [useBatchUpload, target] = args;
283
- this.isUploading = true;
284
- this.unbindListeners();
285
- this.prepareService
286
- .uploadToTarget(uploadTarget, this.queue, useBatchUpload)
287
- .subscribe((res) => {
288
- this.isUploading = false;
289
- if (uploadTarget.subFolder && uploadTarget.subFolder.data.data) {
290
- if (Array.isArray(res)) {
291
- let obs = [];
292
- res.forEach(r => {
293
- obs.push(this.prepareService.updatePreparedItemIndexData(r.id, uploadTarget.subFolder.data.data));
294
- });
295
- observableForkJoin(obs).subscribe(() => this.successfulUpload(target, uploadTarget));
296
- }
297
- else {
298
- this.prepareService
299
- .updatePreparedItemIndexData(res.id, uploadTarget.subFolder.data.data)
300
- .subscribe(() => this.successfulUpload(target, uploadTarget));
301
- }
302
- }
303
- else {
304
- this.successfulUpload(target, uploadTarget);
305
- }
306
- this.close();
307
- }, Utils.throw(() => {
308
- this.isUploading = false;
309
- uploadTarget.onUploadFail();
310
- this.close();
311
- }, this.translate.instant('eo.upload.global.error.title'), this.translate.instant('eo.upload.global.error.description')));
312
- this.resetSelectedUploadTarget();
313
- }
314
- setQueueSize() {
315
- let s = 0;
316
- for (let f of this.queue) {
317
- s += f.size;
318
- }
319
- this.queueSize = s;
320
- }
321
- /**
322
- * Close the upload overlay and release all bound resources.
323
- */
324
- close() {
325
- // unbind bound event listener, when they are not needed anymore
326
- this.unbindListeners();
327
- // clear upload queue
328
- this.queue = [];
329
- // hide the overlay
330
- this.setFileOver(false);
331
- this.invalidInput = false;
332
- }
333
- setFileOver(value) {
334
- this.fileOver = value;
335
- this.uploadRegistry.setOverlayActive(value);
336
- }
337
- unbindListeners() {
338
- if (this.dragLeaveListener) {
339
- this.dragLeaveListener();
340
- this.dragLeaveListener = null;
341
- }
342
- if (this.dragOverListener) {
343
- this.dragOverListener();
344
- this.dragOverListener = null;
345
- }
346
- if (this.dropListener) {
347
- this.dropListener();
348
- this.dropListener = null;
349
- }
350
- if (this.escKeyListener) {
351
- this.escKeyListener();
352
- this.escKeyListener = null;
353
- }
354
- }
355
- /**
356
- * Indicates whether or not the current drag event contains one or more files.
357
- * @param event - the drag event to be checked
358
- * @returns number of files
359
- */
360
- dragContainsFiles(event) {
361
- return Array.from(event.dataTransfer.items || []).filter(i => i.kind === 'file').length;
362
- }
363
- /**
364
- * Indicates whether or not the current paste event contains one or more files.
365
- * @param event - the paste event to be checked
366
- * @returns number of files
367
- */
368
- pasteContainsFiles(event) {
369
- return Array.from(event.clipboardData.items || []).filter(i => i.kind === 'file').length;
370
- }
371
- // ngFor tracking function for upload targets
372
- targetTrackByFn(index, item) {
373
- return item.id;
374
- }
375
- // ngFor tracking function for file items
376
- trackByFn(index, item) {
377
- return index;
378
- }
379
- ngOnInit() {
380
- this.init();
381
- }
382
- ngOnDestroy() {
383
- if (this.dragEnterListener) {
384
- this.dragEnterListener();
385
- }
386
- }
387
- }
388
- UploadOverlayComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.2", ngImport: i0, type: UploadOverlayComponent, deps: [{ token: i1.Router }, { token: i0.Renderer2 }, { token: i2.PrepareService }, { token: i2.TranslateService }, { token: i2.SystemService }, { token: i2.EventService }, { token: i2.UploadRegistryService }], target: i0.ɵɵFactoryTarget.Component });
389
- UploadOverlayComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.2.2", type: UploadOverlayComponent, selector: "eo-upload-overlay", viewQueries: [{ propertyName: "overlayEl", first: true, predicate: ["overlay"], descendants: true }], ngImport: i0, template: "<div id=\"eo-upload-overlay\" #overlay class=\"dark\" *ngIf=\"fileOver\" tabindex=\"1\"\n [ngClass]=\"{hasFiles: queue.length, invalid: invalidInput, singleFile: queue.length === 1, uploading: isUploading}\">\n\n <eo-icon class=\"button white close\" [iconSrc]=\"'assets/_default/svg/ic_clear.svg'\" (click)=\"close()\"></eo-icon>\n\n <div class=\"count\">\n <div>{{queue.length}}</div>\n <div class=\"queueSize\">{{queueSize | fileSize}}</div>\n </div>\n\n <h1 translate>eo.upload.global.headline</h1>\n <eo-icon class=\"uploady\" [iconSrc]=\"'assets/_default/svg/ic_upload.svg'\"></eo-icon>\n\n <!-- batch upload dialog -->\n <div class=\"batch-dialog\" *ngIf=\"!invalidInput && selectedUploadTarget && !isUploading\">\n\n <h2 translate>eo.upload.global.choose.title</h2>\n <p translate>eo.upload.global.choose.message</p>\n <div class=\"actions\">\n <button (click)=\"resetSelectedUploadTarget()\" translate>eo.upload.global.cancel</button>\n <button (click)=\"proceedWithSelectedTarget(false)\" class=\"primary\" translate>eo.upload.global.choose.single</button>\n <button (click)=\"proceedWithSelectedTarget(true)\" class=\"primary\" translate>eo.upload.global.choose.multi</button>\n </div>\n </div>\n\n <!-- invalid input dialog -->\n <div class=\"batch-dialog\" *ngIf=\"hasValidUploadTargets && invalidInput\">\n\n <h2 translate>eo.upload.global.invalid.title</h2>\n <p translate>eo.upload.global.invalid.message</p>\n <div class=\"actions\">\n <button (click)=\"close()\" translate>eo.upload.global.close</button>\n </div>\n </div>\n\n <!-- no upload targets available -->\n <div class=\"batch-dialog\" *ngIf=\"!hasValidUploadTargets\">\n\n <h2 translate>eo.upload.global.notarget.title</h2>\n <p translate>eo.upload.global.notarget.message</p>\n <div class=\"actions\">\n <button (click)=\"close()\" translate>eo.upload.global.close</button>\n </div>\n </div>\n\n <div class=\"contents\" *ngIf=\"hasValidUploadTargets && !invalidInput && !selectedUploadTarget && !isUploading\">\n\n <!-- list of available upload targets -->\n <div class=\"targets\">\n\n <div class=\"target-list\">\n\n <h2 translate>eo.upload.global.target</h2>\n\n <div class=\"upload-target\" *ngFor=\"let t of validUploadTargets; trackBy: targetTrackByFn\"\n (click)=\"proceedWithUpload(t)\"\n [ngSwitch]=\"t.type\">\n\n <!-- upload to root -->\n <ng-container *ngSwitchCase=\"'root'\" >\n <eo-icon [iconSrc]=\"'assets/_default/svg/ic_create_document.svg'\"></eo-icon>\n <div class=\"upload-target-general\">\n <div class=\"name\" translate>eo.upload.global.root.title</div>\n <div class=\"description\" translate>eo.upload.global.root.description</div>\n </div>\n </ng-container>\n\n <!-- replace file of a specific dms object -->\n <ng-container *ngSwitchCase=\"'object'\">\n <eo-icon [iconSrc]=\"'assets/_default/svg/ic_add_document_file_as_new_version.svg'\"></eo-icon>\n <div class=\"upload-target-replace\">\n <div class=\"name\" *ngIf=\"t.referenceObject.content;else nocontent\" translate>eo.upload.global.object.title</div>\n <ng-template #nocontent>\n <div class=\"name\" translate>eo.upload.global.object.title.nocontent</div>\n </ng-template>\n <div class=\"description\">{{t.description}}</div>\n </div>\n </ng-container>\n\n <!-- add new files to a context folder -->\n <ng-container *ngSwitchCase=\"'context'\">\n <eo-icon [iconSrc]=\"'assets/_default/svg/ic_create_document_in_folder.svg'\"></eo-icon>\n <div class=\"upload-target-context\">\n <div class=\"name\">{{'eo.upload.global.context.title'|translate:({context:t.referenceObject.type.label})}}</div>\n <div class=\"description\">{{t.description}}</div>\n </div>\n </ng-container>\n\n <!-- add new files to a context folder structure tree entry -->\n <ng-container *ngSwitchCase=\"'contexttree'\">\n <eo-icon [iconSrc]=\"'assets/_default/svg/ic_create_document_in_folder.svg'\"></eo-icon>\n <div class=\"upload-target-contexttree\">\n <div class=\"name\">{{'eo.add.title.location.subfolder'|translate: ({folder: t.subFolder.name})}}</div>\n </div>\n </ng-container>\n\n <!-- custom upload target (e.g. from plugin component) -->\n <ng-container *ngSwitchCase=\"'custom'\">\n <eo-icon [iconSrc]=\"'assets/_default/svg/ic_upload.svg'\"></eo-icon>\n <div class=\"upload-target-custom\">\n <div class=\"name\">{{t.name}}</div>\n <div class=\"description\">{{t.description}}</div>\n </div>\n </ng-container>\n </div>\n\n </div>\n\n </div>\n\n <!-- list of files dragged to the component -->\n <div class=\"files\">\n <div class=\"files-list\">\n <div class=\"file-item\" *ngFor=\"let i of queue; trackBy: trackByFn\">\n <div>\n <div class=\"name\">{{i.name}}</div>\n <div class=\"desc\"><span class=\"size\">{{i.size | fileSize}}</span><span class=\"desc-text\">&nbsp;{{i.type}}</span></div>\n </div>\n <eo-icon class=\"button white\" (click)=\"removeFileItem(i)\" [iconSrc]=\"'assets/_default/svg/ic_clear.svg'\"></eo-icon>\n </div>\n </div>\n </div>\n\n </div>\n\n <div class=\"loading\" *ngIf=\"isUploading\"><eo-loading-spinner [size]=\"'large'\"></eo-loading-spinner></div>\n\n\n</div>\n", styles: [":host #eo-upload-overlay{position:absolute;inset:0;z-index:9900;background-color:rgba(var(--color-black-rgb),.85);animation:eoFadeIn var(--app-default-transition-duration);display:flex;flex-flow:column;align-items:center;justify-content:center;color:var(--color-white);overflow:auto}:host #eo-upload-overlay h1{font-size:4em;font-weight:300;color:rgba(var(--color-white-rgb),.5);animation:eoFadeInDown var(--app-default-transition-duration)}:host #eo-upload-overlay .uploady{animation:uploady 2s linear infinite;width:20vw;height:20vw;display:block}:host #eo-upload-overlay .close{position:absolute;right:var(--app-pane-padding);top:var(--app-pane-padding)}:host #eo-upload-overlay .count{position:absolute;display:none;right:calc(var(--app-pane-padding) * 3);top:calc(var(--app-pane-padding) * 3);font-size:10vh;flex-flow:column;align-items:flex-end;line-height:1em;animation:eoFadeInDown var(--app-default-transition-duration)}:host #eo-upload-overlay .count .queueSize{font-size:var(--font-caption);line-height:var(--font-caption);margin-top:calc(var(--app-pane-padding) / 2);border-radius:2px;padding:calc(var(--app-pane-padding) / 4) calc(var(--app-pane-padding) / 2);background-color:rgba(var(--color-white-rgb),.2)}:host #eo-upload-overlay .batch-dialog{max-width:350px}:host #eo-upload-overlay .batch-dialog .actions{display:flex;padding-top:var(--app-pane-padding);justify-content:flex-end}:host #eo-upload-overlay .batch-dialog .actions button{margin:0 calc(var(--app-pane-padding) / 4)}:host #eo-upload-overlay .contents{display:none;flex-flow:row wrap;max-height:100%;margin:var(--app-pane-padding)}:host #eo-upload-overlay .targets{order:1;margin:0 calc(var(--app-pane-padding) / 2);display:flex;flex-flow:column;justify-content:center;position:relative}:host #eo-upload-overlay .targets .target-list{animation:eoFadeInRight var(--app-default-transition-duration);overflow-y:auto}:host #eo-upload-overlay .targets .target-list h2{font-size:var(--font-subhead);font-weight:400}:host #eo-upload-overlay .targets .target-list .upload-target{background:rgba(var(--color-accent),.6);border:1px solid rgba(var(--color-white-rgb),.4);margin:calc(var(--app-pane-padding) / 2) 0;padding:calc(var(--app-pane-padding) / 2);border-radius:2px;transition:all var(--app-default-transition-duration) ease-in-out;-webkit-transition:all var(--app-default-transition-duration) ease-in-out;-moz-transition:all var(--app-default-transition-duration) ease-in-out;-o-transition:all var(--app-default-transition-duration) ease-in-out;display:flex;cursor:pointer;flex-flow:row nowrap;align-items:center}:host #eo-upload-overlay .targets .target-list .upload-target eo-icon{flex:0 0 auto;margin:0 calc(var(--app-pane-padding) / 2)}:host #eo-upload-overlay .targets .target-list .upload-target>div{flex:1 1 auto;margin:0 calc(var(--app-pane-padding) / 2)}:host #eo-upload-overlay .targets .target-list .upload-target>div .name{font-size:var(--font-subhead)}:host #eo-upload-overlay .targets .target-list .upload-target>div .description{font-size:var(--font-caption);opacity:.7}:host #eo-upload-overlay .targets .target-list .upload-target:hover{background-color:var(--color-accent)}:host #eo-upload-overlay .files{order:0;padding:calc(var(--app-pane-padding) / 4);margin:0 calc(var(--app-pane-padding) / 2);overflow-y:auto;border-radius:2px;animation:eoFadeInLeft var(--app-default-transition-duration);display:flex;flex-flow:column;justify-content:center}:host #eo-upload-overlay .files .files-list{height:100%}:host #eo-upload-overlay .files .files-list .file-item{display:flex;flex-flow:row nowrap;align-items:center;cursor:default;padding:calc(var(--app-pane-padding) / 2) calc(var(--app-pane-padding) / 4);margin-bottom:calc(var(--app-pane-padding) / 4);background-color:rgba(var(--color-white-rgb),.1);-webkit-user-select:none;-moz-user-select:none;user-select:none}:host #eo-upload-overlay .files .files-list .file-item>div{flex:1 1 auto;padding:0 calc(var(--app-pane-padding) / 2)}:host #eo-upload-overlay .files .files-list .file-item>div .desc{color:rgba(var(--color-white-rgb),.75);font-size:var(--font-hint);margin-top:calc(var(--app-pane-padding) / 4)}:host #eo-upload-overlay .files .files-list .file-item>div .size{border-radius:2px;display:inline-block;padding:0 4px;background-color:rgba(var(--color-white-rgb),.2)}:host #eo-upload-overlay .files .files-list .file-item eo-icon{flex:0 0 auto;width:18px;height:18px;padding:calc(var(--app-pane-padding) / 2)}:host #eo-upload-overlay.invalid>h1,:host #eo-upload-overlay.invalid .uploady{display:none}:host #eo-upload-overlay.hasFiles .uploady{display:none}:host #eo-upload-overlay.hasFiles .count{display:flex}:host #eo-upload-overlay.hasFiles .contents{display:flex}:host #eo-upload-overlay.singleFile .contents{flex-flow:column}:host #eo-upload-overlay.singleFile .contents .files{padding:0;order:1}:host #eo-upload-overlay.singleFile .contents .targets{order:0;margin-bottom:var(--app-pane-padding)}:host #eo-upload-overlay.uploading h1,:host #eo-upload-overlay.uploading .close{display:none}@keyframes uploady{0%{transform:translateY(0);opacity:.1}50%{transform:translateY(-40px);opacity:.3}to{transform:translateY(0);opacity:.1}}\n"], dependencies: [{ kind: "directive", type: i3.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i3.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i3.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i3.NgSwitch, selector: "[ngSwitch]", inputs: ["ngSwitch"] }, { kind: "directive", type: i3.NgSwitchCase, selector: "[ngSwitchCase]", inputs: ["ngSwitchCase"] }, { kind: "directive", type: i4.TranslateDirective, selector: "[translate],[ngx-translate]", inputs: ["translate", "translateParams"] }, { kind: "component", type: i5.EoIconComponent, selector: "eo-icon", inputs: ["objectType", "iconId", "iconSrc", "badge", "iconTitle"] }, { kind: "component", type: i6.LoadingSpinnerComponent, selector: "eo-loading-spinner", inputs: ["size", "mode"] }, { kind: "pipe", type: i4.TranslatePipe, name: "translate" }, { kind: "pipe", type: i7.FileSizePipe, name: "fileSize" }] });
390
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.2", ngImport: i0, type: UploadOverlayComponent, decorators: [{
391
- type: Component,
392
- args: [{ selector: 'eo-upload-overlay', template: "<div id=\"eo-upload-overlay\" #overlay class=\"dark\" *ngIf=\"fileOver\" tabindex=\"1\"\n [ngClass]=\"{hasFiles: queue.length, invalid: invalidInput, singleFile: queue.length === 1, uploading: isUploading}\">\n\n <eo-icon class=\"button white close\" [iconSrc]=\"'assets/_default/svg/ic_clear.svg'\" (click)=\"close()\"></eo-icon>\n\n <div class=\"count\">\n <div>{{queue.length}}</div>\n <div class=\"queueSize\">{{queueSize | fileSize}}</div>\n </div>\n\n <h1 translate>eo.upload.global.headline</h1>\n <eo-icon class=\"uploady\" [iconSrc]=\"'assets/_default/svg/ic_upload.svg'\"></eo-icon>\n\n <!-- batch upload dialog -->\n <div class=\"batch-dialog\" *ngIf=\"!invalidInput && selectedUploadTarget && !isUploading\">\n\n <h2 translate>eo.upload.global.choose.title</h2>\n <p translate>eo.upload.global.choose.message</p>\n <div class=\"actions\">\n <button (click)=\"resetSelectedUploadTarget()\" translate>eo.upload.global.cancel</button>\n <button (click)=\"proceedWithSelectedTarget(false)\" class=\"primary\" translate>eo.upload.global.choose.single</button>\n <button (click)=\"proceedWithSelectedTarget(true)\" class=\"primary\" translate>eo.upload.global.choose.multi</button>\n </div>\n </div>\n\n <!-- invalid input dialog -->\n <div class=\"batch-dialog\" *ngIf=\"hasValidUploadTargets && invalidInput\">\n\n <h2 translate>eo.upload.global.invalid.title</h2>\n <p translate>eo.upload.global.invalid.message</p>\n <div class=\"actions\">\n <button (click)=\"close()\" translate>eo.upload.global.close</button>\n </div>\n </div>\n\n <!-- no upload targets available -->\n <div class=\"batch-dialog\" *ngIf=\"!hasValidUploadTargets\">\n\n <h2 translate>eo.upload.global.notarget.title</h2>\n <p translate>eo.upload.global.notarget.message</p>\n <div class=\"actions\">\n <button (click)=\"close()\" translate>eo.upload.global.close</button>\n </div>\n </div>\n\n <div class=\"contents\" *ngIf=\"hasValidUploadTargets && !invalidInput && !selectedUploadTarget && !isUploading\">\n\n <!-- list of available upload targets -->\n <div class=\"targets\">\n\n <div class=\"target-list\">\n\n <h2 translate>eo.upload.global.target</h2>\n\n <div class=\"upload-target\" *ngFor=\"let t of validUploadTargets; trackBy: targetTrackByFn\"\n (click)=\"proceedWithUpload(t)\"\n [ngSwitch]=\"t.type\">\n\n <!-- upload to root -->\n <ng-container *ngSwitchCase=\"'root'\" >\n <eo-icon [iconSrc]=\"'assets/_default/svg/ic_create_document.svg'\"></eo-icon>\n <div class=\"upload-target-general\">\n <div class=\"name\" translate>eo.upload.global.root.title</div>\n <div class=\"description\" translate>eo.upload.global.root.description</div>\n </div>\n </ng-container>\n\n <!-- replace file of a specific dms object -->\n <ng-container *ngSwitchCase=\"'object'\">\n <eo-icon [iconSrc]=\"'assets/_default/svg/ic_add_document_file_as_new_version.svg'\"></eo-icon>\n <div class=\"upload-target-replace\">\n <div class=\"name\" *ngIf=\"t.referenceObject.content;else nocontent\" translate>eo.upload.global.object.title</div>\n <ng-template #nocontent>\n <div class=\"name\" translate>eo.upload.global.object.title.nocontent</div>\n </ng-template>\n <div class=\"description\">{{t.description}}</div>\n </div>\n </ng-container>\n\n <!-- add new files to a context folder -->\n <ng-container *ngSwitchCase=\"'context'\">\n <eo-icon [iconSrc]=\"'assets/_default/svg/ic_create_document_in_folder.svg'\"></eo-icon>\n <div class=\"upload-target-context\">\n <div class=\"name\">{{'eo.upload.global.context.title'|translate:({context:t.referenceObject.type.label})}}</div>\n <div class=\"description\">{{t.description}}</div>\n </div>\n </ng-container>\n\n <!-- add new files to a context folder structure tree entry -->\n <ng-container *ngSwitchCase=\"'contexttree'\">\n <eo-icon [iconSrc]=\"'assets/_default/svg/ic_create_document_in_folder.svg'\"></eo-icon>\n <div class=\"upload-target-contexttree\">\n <div class=\"name\">{{'eo.add.title.location.subfolder'|translate: ({folder: t.subFolder.name})}}</div>\n </div>\n </ng-container>\n\n <!-- custom upload target (e.g. from plugin component) -->\n <ng-container *ngSwitchCase=\"'custom'\">\n <eo-icon [iconSrc]=\"'assets/_default/svg/ic_upload.svg'\"></eo-icon>\n <div class=\"upload-target-custom\">\n <div class=\"name\">{{t.name}}</div>\n <div class=\"description\">{{t.description}}</div>\n </div>\n </ng-container>\n </div>\n\n </div>\n\n </div>\n\n <!-- list of files dragged to the component -->\n <div class=\"files\">\n <div class=\"files-list\">\n <div class=\"file-item\" *ngFor=\"let i of queue; trackBy: trackByFn\">\n <div>\n <div class=\"name\">{{i.name}}</div>\n <div class=\"desc\"><span class=\"size\">{{i.size | fileSize}}</span><span class=\"desc-text\">&nbsp;{{i.type}}</span></div>\n </div>\n <eo-icon class=\"button white\" (click)=\"removeFileItem(i)\" [iconSrc]=\"'assets/_default/svg/ic_clear.svg'\"></eo-icon>\n </div>\n </div>\n </div>\n\n </div>\n\n <div class=\"loading\" *ngIf=\"isUploading\"><eo-loading-spinner [size]=\"'large'\"></eo-loading-spinner></div>\n\n\n</div>\n", styles: [":host #eo-upload-overlay{position:absolute;inset:0;z-index:9900;background-color:rgba(var(--color-black-rgb),.85);animation:eoFadeIn var(--app-default-transition-duration);display:flex;flex-flow:column;align-items:center;justify-content:center;color:var(--color-white);overflow:auto}:host #eo-upload-overlay h1{font-size:4em;font-weight:300;color:rgba(var(--color-white-rgb),.5);animation:eoFadeInDown var(--app-default-transition-duration)}:host #eo-upload-overlay .uploady{animation:uploady 2s linear infinite;width:20vw;height:20vw;display:block}:host #eo-upload-overlay .close{position:absolute;right:var(--app-pane-padding);top:var(--app-pane-padding)}:host #eo-upload-overlay .count{position:absolute;display:none;right:calc(var(--app-pane-padding) * 3);top:calc(var(--app-pane-padding) * 3);font-size:10vh;flex-flow:column;align-items:flex-end;line-height:1em;animation:eoFadeInDown var(--app-default-transition-duration)}:host #eo-upload-overlay .count .queueSize{font-size:var(--font-caption);line-height:var(--font-caption);margin-top:calc(var(--app-pane-padding) / 2);border-radius:2px;padding:calc(var(--app-pane-padding) / 4) calc(var(--app-pane-padding) / 2);background-color:rgba(var(--color-white-rgb),.2)}:host #eo-upload-overlay .batch-dialog{max-width:350px}:host #eo-upload-overlay .batch-dialog .actions{display:flex;padding-top:var(--app-pane-padding);justify-content:flex-end}:host #eo-upload-overlay .batch-dialog .actions button{margin:0 calc(var(--app-pane-padding) / 4)}:host #eo-upload-overlay .contents{display:none;flex-flow:row wrap;max-height:100%;margin:var(--app-pane-padding)}:host #eo-upload-overlay .targets{order:1;margin:0 calc(var(--app-pane-padding) / 2);display:flex;flex-flow:column;justify-content:center;position:relative}:host #eo-upload-overlay .targets .target-list{animation:eoFadeInRight var(--app-default-transition-duration);overflow-y:auto}:host #eo-upload-overlay .targets .target-list h2{font-size:var(--font-subhead);font-weight:400}:host #eo-upload-overlay .targets .target-list .upload-target{background:rgba(var(--color-accent),.6);border:1px solid rgba(var(--color-white-rgb),.4);margin:calc(var(--app-pane-padding) / 2) 0;padding:calc(var(--app-pane-padding) / 2);border-radius:2px;transition:all var(--app-default-transition-duration) ease-in-out;-webkit-transition:all var(--app-default-transition-duration) ease-in-out;-moz-transition:all var(--app-default-transition-duration) ease-in-out;-o-transition:all var(--app-default-transition-duration) ease-in-out;display:flex;cursor:pointer;flex-flow:row nowrap;align-items:center}:host #eo-upload-overlay .targets .target-list .upload-target eo-icon{flex:0 0 auto;margin:0 calc(var(--app-pane-padding) / 2)}:host #eo-upload-overlay .targets .target-list .upload-target>div{flex:1 1 auto;margin:0 calc(var(--app-pane-padding) / 2)}:host #eo-upload-overlay .targets .target-list .upload-target>div .name{font-size:var(--font-subhead)}:host #eo-upload-overlay .targets .target-list .upload-target>div .description{font-size:var(--font-caption);opacity:.7}:host #eo-upload-overlay .targets .target-list .upload-target:hover{background-color:var(--color-accent)}:host #eo-upload-overlay .files{order:0;padding:calc(var(--app-pane-padding) / 4);margin:0 calc(var(--app-pane-padding) / 2);overflow-y:auto;border-radius:2px;animation:eoFadeInLeft var(--app-default-transition-duration);display:flex;flex-flow:column;justify-content:center}:host #eo-upload-overlay .files .files-list{height:100%}:host #eo-upload-overlay .files .files-list .file-item{display:flex;flex-flow:row nowrap;align-items:center;cursor:default;padding:calc(var(--app-pane-padding) / 2) calc(var(--app-pane-padding) / 4);margin-bottom:calc(var(--app-pane-padding) / 4);background-color:rgba(var(--color-white-rgb),.1);-webkit-user-select:none;-moz-user-select:none;user-select:none}:host #eo-upload-overlay .files .files-list .file-item>div{flex:1 1 auto;padding:0 calc(var(--app-pane-padding) / 2)}:host #eo-upload-overlay .files .files-list .file-item>div .desc{color:rgba(var(--color-white-rgb),.75);font-size:var(--font-hint);margin-top:calc(var(--app-pane-padding) / 4)}:host #eo-upload-overlay .files .files-list .file-item>div .size{border-radius:2px;display:inline-block;padding:0 4px;background-color:rgba(var(--color-white-rgb),.2)}:host #eo-upload-overlay .files .files-list .file-item eo-icon{flex:0 0 auto;width:18px;height:18px;padding:calc(var(--app-pane-padding) / 2)}:host #eo-upload-overlay.invalid>h1,:host #eo-upload-overlay.invalid .uploady{display:none}:host #eo-upload-overlay.hasFiles .uploady{display:none}:host #eo-upload-overlay.hasFiles .count{display:flex}:host #eo-upload-overlay.hasFiles .contents{display:flex}:host #eo-upload-overlay.singleFile .contents{flex-flow:column}:host #eo-upload-overlay.singleFile .contents .files{padding:0;order:1}:host #eo-upload-overlay.singleFile .contents .targets{order:0;margin-bottom:var(--app-pane-padding)}:host #eo-upload-overlay.uploading h1,:host #eo-upload-overlay.uploading .close{display:none}@keyframes uploady{0%{transform:translateY(0);opacity:.1}50%{transform:translateY(-40px);opacity:.3}to{transform:translateY(0);opacity:.1}}\n"] }]
393
- }], ctorParameters: function () { return [{ type: i1.Router }, { type: i0.Renderer2 }, { type: i2.PrepareService }, { type: i2.TranslateService }, { type: i2.SystemService }, { type: i2.EventService }, { type: i2.UploadRegistryService }]; }, propDecorators: { overlayEl: [{
394
- type: ViewChild,
395
- args: ['overlay']
396
- }] } });
397
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidXBsb2FkLW92ZXJsYXkuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vc3JjL2FwcC9lby1mcmFtZXdvcmsvdXBsb2FkLW92ZXJsYXkvdXBsb2FkLW92ZXJsYXkuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vLi4vc3JjL2FwcC9lby1mcmFtZXdvcmsvdXBsb2FkLW92ZXJsYXkvdXBsb2FkLW92ZXJsYXkuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFDLEVBQUUsSUFBSSxZQUFZLEVBQUUsUUFBUSxJQUFJLGtCQUFrQixFQUFFLFVBQVUsRUFBQyxNQUFNLE1BQU0sQ0FBQztBQUNwRixPQUFPLEVBQUMsU0FBUyxFQUFxQixTQUFTLEVBQXNDLE1BQU0sZUFBZSxDQUFDO0FBRTNHLE9BQU8sRUFHTCxVQUFVLEVBRVYsWUFBWSxFQUNaLGNBQWMsRUFFZCxLQUFLLEVBRUwsZ0JBQWdCLEVBQ2pCLE1BQU0sY0FBYyxDQUFDOzs7Ozs7Ozs7QUFPdEIsTUFBTSxPQUFPLHNCQUFzQjtJQXNCakMsWUFBb0IsTUFBYyxFQUNkLFFBQW1CLEVBQ25CLGNBQThCLEVBQzlCLFNBQTJCLEVBQzNCLGFBQTRCLEVBQzVCLFlBQTBCLEVBQzFCLGNBQXFDO1FBTnJDLFdBQU0sR0FBTixNQUFNLENBQVE7UUFDZCxhQUFRLEdBQVIsUUFBUSxDQUFXO1FBQ25CLG1CQUFjLEdBQWQsY0FBYyxDQUFnQjtRQUM5QixjQUFTLEdBQVQsU0FBUyxDQUFrQjtRQUMzQixrQkFBYSxHQUFiLGFBQWEsQ0FBZTtRQUM1QixpQkFBWSxHQUFaLFlBQVksQ0FBYztRQUMxQixtQkFBYyxHQUFkLGNBQWMsQ0FBdUI7UUF4QnpELFVBQUssR0FBcUIsRUFBRSxDQUFDO1FBTTdCLHVCQUFrQixHQUFtQixFQUFFLENBQUM7UUFHaEMsa0JBQWEsR0FBbUIsRUFBRSxDQUFDO1FBT25DLG1CQUFj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QUMsS0FBZ0I7UUFDekMsT0FBTyxLQUFLLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxZQUFZLENBQUMsS0FBSyxJQUFJLEVBQUUsQ0FBQyxDQUFDLE1BQU0sQ0FBQyxDQUFDLENBQUMsRUFBRSxDQUFDLENBQUMsQ0FBQyxJQUFJLEtBQUssTUFBTSxDQUFDLENBQUMsTUFBTSxDQUFDO0lBQzFGLENBQUM7SUFFRDs7OztPQUlHO0lBQ0ssa0JBQWtCLENBQUMsS0FBcUI7UUFDOUMsT0FBTyxLQUFLLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxhQUFhLENBQUMsS0FBSyxJQUFJLEVBQUUsQ0FBQyxDQUFDLE1BQU0sQ0FBQyxDQUFDLENBQUMsRUFBRSxDQUFDLENBQUMsQ0FBQyxJQUFJLEtBQUssTUFBTSxDQUFDLENBQUMsTUFBTSxDQUFDO0lBQzNGLENBQUM7SUFFRCw2Q0FBNkM7SUFDN0MsZUFBZSxDQUFDLEtBQUssRUFBRSxJQUFJO1FBQ3pCLE9BQU8sSUFBSSxDQUFDLEVBQUUsQ0FBQztJQUNqQixDQUFDO0lBRUQseUNBQXlDO0lBQ3pDLFNBQVMsQ0FBQyxLQUFLLEVBQUUsSUFBSTtRQUNuQixPQUFPLEtBQUssQ0FBQztJQUNmLENBQUM7SUFFRCxRQUFRO1FBQ04sSUFBSSxDQUFDLElBQUksRUFBRSxDQUFDO0lBQ2QsQ0FBQztJQUVELFdBQVc7UUFDVCxJQUFJLElBQUksQ0FBQyxpQkFBaUIsRUFBRTtZQUMxQixJQUFJLENBQUMsaUJBQWlCLEVBQUUsQ0FBQztTQUMxQjtJQUNILENBQUM7O21IQXpiVSxzQkFBc0I7dUdBQXRCLHNCQUFzQiwrSkNyQm5DLHVtTEFpSUE7MkZENUdhLHNCQUFzQjtrQkFMbEMsU0FBUzsrQkFDRSxtQkFBbUI7NFFBTVAsU0FBUztzQkFBOUIsU0FBUzt1QkFBQyxTQUFTIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtvZiBhcyBvYnNlcnZhYmxlT2YsIGZvcmtKb2luIGFzIG9ic2VydmFibGVGb3JrSm9pbiwgT2JzZXJ2YWJsZX0gZnJvbSAncnhqcyc7XG5pbXBvcnQge0NvbXBvbmVudCwgT25Jbml0LCBSZW5kZXJlcjIsIFZpZXdDaGlsZCwgRWxlbWVudFJlZiwgT25EZXN0cm95LCBIb3N0TGlzdGVuZXJ9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHtSb3V0ZXJ9IGZyb20gJ0Bhbmd1bGFyL3JvdXRlcic7XG5pbXBvcnQge1xuICBPYmplY3RUeXBlLFxuICBFdmVudFNlcnZpY2UsXG4gIEVuYWlvRXZlbnQsXG4gIFVwbG9hZFJlZ2lzdHJ5U2VydmljZSxcbiAgVXBsb2FkVGFyZ2V0LFxuICBVcGxvYWRGaWxlSXRlbSxcbiAgUHJlcGFyZVNlcnZpY2UsXG4gIFV0aWxzLFxuICBUcmFuc2xhdGVTZXJ2aWNlLFxuICBFbnZpcm9ubWVudEVuYWlvLCBTeXN0ZW1TZXJ2aWNlXG59IGZyb20gJ0Blby1zZGsvY29yZSc7XG5cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ2VvLXVwbG9hZC1vdmVybGF5JyxcbiAgdGVtcGxhdGVVcmw6ICcuL3VwbG9hZC1vdmVybGF5LmNvbXBvbmVudC5odG1sJyxcbiAgc3R5bGVVcmxzOiBbJy4vdXBsb2FkLW92ZXJsYXkuY29tcG9uZW50LnNjc3MnXVxufSlcbmV4cG9ydCBjbGFzcyBVcGxvYWRPdmVybGF5Q29tcG9uZW50IGltcGxlbWVudHMgT25Jbml0LCBPbkRlc3Ryb3kge1xuXG4gIEBWaWV3Q2hpbGQoJ292ZXJsYXknKSBvdmVybGF5RWw6IEVsZW1lbnRSZWY7XG5cbiAgcXVldWU6IFVwbG9hZEZpbGVJdGVtW10gPSBbXTtcbiAgZmlsZU92ZXI6IGJvb2xlYW47XG4gIGlzVXBsb2FkaW5nOiBib29sZWFuO1xuICBoYXNWYWxpZFVwbG9hZFRhcmdldHM6IGJvb2xlYW47XG4gIGludmFsaWRJbnB1dDogYm9vbGVhbjtcbiAgcXVldWVTaXplOiBudW1iZXI7XG4gIHZhbGlkVXBsb2FkVGFyZ2V0czogVXBsb2FkVGFyZ2V0W10gPSBbXTtcbiAgc2VsZWN0ZWRVcGxvYWRUYXJnZXQ6IFVwbG9hZFRhcmdldDtcblxuICBwcml2YXRlIHVwbG9hZFRhcmdldHM6IFVwbG9hZFRhcmdldFtdID0gW107XG4gIHByaXZhdGUgZHJhZ0xlYXZlTGlzdGVuZXI6IEZ1bmN0aW9uO1xuICBwcml2YXRlIGRyb3BMaXN0ZW5lcjogRnVuY3Rpb247XG4gIHByaXZhdGUgZHJhZ092ZXJMaXN0ZW5lcjogRnVuY3Rpb247XG4gIHByaXZhdGUgZXNjS2V5TGlzdGVuZXI6IEZ1bmN0aW9uO1xuICBwcml2YXRlIGRyYWdFbnRlckxpc3RlbmVyOiBGdW5jdGlvbjtcbiAgcHJpdmF0ZSBwYXN0ZUxpc3RlbmVyOiBGdW5jdGlvbjtcbiAgcHJpdmF0ZSBkcmFnRXZlbnRDb3VudCA9IDA7XG5cbiAgY29uc3RydWN0b3IocHJpdmF0ZSByb3V0ZXI6IFJvdXRlcixcbiAgICAgICAgICAgICAgcHJpdmF0ZSByZW5kZXJlcjogUmVuZGVyZXIyLFxuICAgICAgICAgICAgICBwcml2YXRlIHByZXBhcmVTZXJ2aWNlOiBQcmVwYXJlU2VydmljZSxcbiAgICAgICAgICAgICAgcHJpdmF0ZSB0cmFuc2xhdGU6IFRyYW5zbGF0ZVNlcnZpY2UsXG4gICAgICAgICAgICAgIHByaXZhdGUgc3lzdGVtU2VydmljZTogU3lzdGVtU2VydmljZSxcbiAgICAgICAgICAgICAgcHJpdmF0ZSBldmVudFNlcnZpY2U6IEV2ZW50U2VydmljZSxcbiAgICAgICAgICAgICAgcHJpdmF0ZSB1cGxvYWRSZWdpc3RyeTogVXBsb2FkUmVnaXN0cnlTZXJ2aWNlKSB7XG4gIH1cblxuICBwcml2YXRlIGluaXQoKSB7XG5cbiAgICAvLyBnbG9iYWwgZHJhZyZkcm9wIHVwbG9hZCB3aWxsIG9ubHkgYmUgYXZhaWxhYmxlIG9uIGRlc2t0b3AgKHdlYiBvciBlbGVjdHJvbilcbiAgICBpZiAoRW52aXJvbm1lbnRFbmFpby5pc01vYmlsZUVudmlyb25tZW50KCkpIHtcbiAgICAgIHJldHVybiBmYWxzZTtcbiAgICB9XG5cbiAgICAvLyBzdWJzY3JpYmUgZm9yIHRoZSBsaXN0IG9mIHJlZ2lzdGVyZWQgdXBsb2FkIHRhcmdldHNcbiAgICB0aGlzLnVwbG9hZFJlZ2lzdHJ5LnVwbG9hZFRhcmdldHMkLnN1YnNjcmliZSgodXBsb2FkVGFyZ2V0czogVXBsb2FkVGFyZ2V0W10pID0+IHtcbiAgICAgIHRoaXMudXBsb2FkVGFyZ2V0cyA9IHVwbG9hZFRhcmdldHM7XG4gICAgfSk7XG5cbiAgICB0aGlzLnBhc3RlTGlzdGVuZXIgPSB0aGlzLnJlbmRlcmVyLmxpc3RlbignZG9jdW1lbnQnLCAncGFzdGUnLCAoZTogQ2xpcGJvYXJkRXZlbnQpID0+IHtcbiAgICAgIHRoaXMub25QYXN0ZShlKTtcbiAgICB9KTtcblxuICAgIHRoaXMuZHJhZ0VudGVyTGlzdGVuZXIgPSB0aGlzLnJlbmRlcmVyLmxpc3RlbignZG9jdW1lbnQnLCAnZHJhZ2VudGVyJywgKGU6IERyYWdFdmVudCkgPT4ge1xuICAgICAgdGhpcy5vbkRyYWdFbnRlcihlKTtcbiAgICB9KTtcbiAgfVxuXG4gIHByaXZhdGUgb25QYXN0ZShlOiBDbGlwYm9hcmRFdmVudCkge1xuICAgIGlmICh0aGlzLmlzVXBsb2FkaW5nKSB7XG4gICAgICByZXR1cm4gZmFsc2U7XG4gICAgfVxuICAgIHRoaXMuaGFzVmFsaWRVcGxvYWRUYXJnZXRzID0gdHJ1ZTtcbiAgICB0aGlzLmludmFsaWRJbnB1dCA9IGZhbHNlO1xuICAgIGlmICghdGhpcy5maWxlT3ZlciAmJiB0aGlzLnBhc3RlQ29udGFpbnNGaWxlcyhlKSkge1xuICAgICAgbGV0IHRyYW5zZmVyID0gZS5jbGlwYm9hcmREYXRhO1xuICAgICAgaWYgKCF0cmFuc2Zlcikge1xuICAgICAgICByZXR1cm47XG4gICAgICB9XG5cbiAgICAgIC8vIGNoZWNrIGZvciBkaXJlY3Rvcmllc1xuICAgICAgZm9yIChsZXQgaSA9IDA7IGkgPCB0cmFuc2Zlci5pdGVtcy5sZW5ndGg7IGkrKykge1xuICAgICAgICBpZiAodHJhbnNmZXIuaXRlbXNbaV0ua2luZCA9PT0gJ3N0cmluZycpIHtcbiAgICAgICAgICB0aGlzLmludmFsaWRJbnB1dCA9IHRydWU7XG4gICAgICAgICAgcmV0dXJuO1xuICAgICAgICB9XG4gICAgICAgIGNvbnN0IGZlID0gdHJhbnNmZXIuaXRlbXNbaV0ud2Via2l0R2V0QXNFbnRyeSgpO1xuICAgICAgICBpZiAoZmUgJiYgZmUuaXNEaXJlY3RvcnkpIHtcbiAgICAgICAgICAgIHRoaXMuaW52YWxpZElucHV0ID0gdHJ1ZTtcbiAgICAgICAgICAgIHJldHVybjtcbiAgICAgICAgfVxuICAgICAgfVxuICAgICAgaWYgKCF0aGlzLmludmFsaWRJbnB1dCkge1xuICAgICAgICB0aGlzLl9wcmV2ZW50QW5kU3RvcChlKTtcbiAgICAgICAgdGhpcy5zZXRGaWxlT3Zlcih0cnVlKTtcbiAgICAgICAgdGhpcy5vbkZpbGVzRHJvcHBlZChBcnJheS5mcm9tKHRyYW5zZmVyLmZpbGVzKSk7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgcHJpdmF0ZSBvbkRyYWdFbnRlcihlOiBEcmFnRXZlbnQpIHtcbiAgICBpZiAodGhpcy5pc1VwbG9hZGluZykge1xuICAgICAgcmV0dXJuIGZhbHNlO1xuICAgIH1cbiAgICB0aGlzLmhhc1ZhbGlkVXBsb2FkVGFyZ2V0cyA9IHRydWU7XG4gICAgaWYgKCF0aGlzLmZpbGVPdmVyICYmIHRoaXMuZHJhZ0NvbnRhaW5zRmlsZXMoZSkpIHtcbiAgICAgIHRoaXMuZHJhZ0V2ZW50Q291bnQgPSAwO1xuICAgICAgdGhpcy5zZXRGaWxlT3Zlcih0cnVlKTtcblxuXG4gICAgICAvLyB1c2UgdGltZW91dCBoZXJlIHRvIGZvcmNlIGFuZ3VsYXIgZGlnZXN0IGN5Y2xlIGJlZm9yZSBjb250aW51aW5nLCBiZWNhdXNlIHdlIGFyZSBhY2Nlc3NpbmcgZG9tIGVsZW1lbnRzXG4gICAgICAvLyB0aGF0IGFyZSBub3QgdGhlcmUgKCpuZ0lmKSB1bnRpbCBmaWxlT3ZlciBpcyBzZXQgdG8gdHJ1ZS5cbiAgICAgIHNldFRpbWVvdXQoKCkgPT4ge1xuICAgICAgICAvLyB0b2RvOiByZXBsYWNlIGJ5IHJlbmRlcmVyIHNvbHV0aW9uIHdoZW4gYXZhaWxhYmxlIChodHRwczovL2dpdGh1Yi5jb20vYW5ndWxhci9hbmd1bGFyL2lzc3Vlcy8xNTY3NClcbiAgICAgICAgdGhpcy5vdmVybGF5RWwubmF0aXZlRWxlbWVudC5mb2N1cygpO1xuICAgICAgICAvLyBiaW5kIGxhdGUgKG9ubHksIHdoZW4gbmVlZGVkKSB0byBkcmFnbGVhdmUgZXZlbnQgdG8gYXZvaWQgaGVhdnkgcHJvY2Vzc2luZyBvbiBldmVyeSBkcmFnIGV2ZW50XG4gICAgICAgIHRoaXMuZHJhZ0xlYXZlTGlzdGVuZXIgPSB0aGlzLnJlbmRlcmVyLmxpc3Rlbih0aGlzLm92ZXJsYXlFbC5uYXRpdmVFbGVtZW50LCAnZHJhZ2xlYXZlJywgKGV2dCkgPT4ge1xuICAgICAgICAgIHRoaXMuZHJhZ0V2ZW50Q291bnQtLTtcbiAgICAgICAgICBpZiAodGhpcy5kcmFnRXZlbnRDb3VudCA9PT0gMCkge1xuICAgICAgICAgICAgdGhpcy5jbG9zZSgpO1xuICAgICAgICAgIH1cbiAgICAgICAgfSk7XG5cbiAgICAgICAgdGhpcy5kcm9wTGlzdGVuZXIgPSB0aGlzLnJlbmRlcmVyLmxpc3Rlbih0aGlzLm92ZXJsYXlFbC5uYXRpdmVFbGVtZW50LCAnZHJvcCcsIChldnQpID0+IHtcbiAgICAgICAgICBsZXQgdHJhbnNmZXIgPSB0aGlzLl9nZXRUcmFuc2ZlcihldnQpO1xuICAgICAgICAgIGlmICghdHJhbnNmZXIpIHtcbiAgICAgICAgICAgIHJldHVybjtcbiAgICAgICAgICB9XG4gICAgICAgICAgdGhpcy5fcHJldmVudEFuZFN0b3AoZXZ0KTtcblxuICAgICAgICAgIC8vIGNoZWNrIGZvciBkaXJlY3Rvcmllc1xuICAgICAgICAgIGZvciAobGV0IGkgPSAwOyBpIDwgdHJhbnNmZXIuaXRlbXMubGVuZ3RoOyBpKyspIHtcbiAgICAgICAgICAgIGNvbnN0IGZlID0gdHJhbnNmZXIuaXRlbXNbaV0ud2Via2l0R2V0QXNFbnRyeSgpO1xuICAgICAgICAgICAgaWYgKGZlICYmIGZlLmlzRGlyZWN0b3J5KSB7XG4gICAgICAgICAgICAgIHRoaXMuaW52YWxpZElucHV0ID0gdHJ1ZTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICB9XG4gICAgICAgICAgaWYgKCF0aGlzLmludmFsaWRJbnB1dCkge1xuICAgICAgICAgICAgdGhpcy5vbkZpbGVzRHJvcHBlZCh0cmFuc2Zlci5maWxlcyk7XG4gICAgICAgICAgfVxuICAgICAgICB9KTtcblxuICAgICAgICB0aGlzLmRyYWdPdmVyTGlzdGVuZXIgPSB0aGlzLnJlbmRlcmVyLmxpc3Rlbih0aGlzLm92ZXJsYXlFbC5uYXRpdmVFbGVtZW50LCAnZHJhZ292ZXInLCAoZXZ0KSA9PiB7XG4gICAgICAgICAgbGV0IHRyYW5zZmVyID0gdGhpcy5fZ2V0VHJhbnNmZXIoZXZ0KTtcbiAgICAgICAgICBpZiAoIXRyYW5zZmVyKSB7XG4gICAgICAgICAgICByZXR1cm47XG4gICAgICAgICAgfVxuICAgICAgICAgIHRyYW5zZmVyLmRyb3BFZmZlY3QgPSAnY29weSc7XG4gICAgICAgICAgdGhpcy5fcHJldmVudEFuZFN0b3AoZXZ0KTtcbiAgICAgICAgfSk7XG4gICAgICB9LCAwKTtcbiAgICB9IGVsc2Uge1xuICAgICAgdGhpcy5kcmFnRXZlbnRDb3VudCsrO1xuICAgIH1cbiAgfVxuXG4gIHByaXZhdGUgX2dldFRyYW5zZmVyKGV2ZW50OiBhbnkpOiBhbnkge1xuICAgIHJldHVybiBldmVudC5kYXRhVHJhbnNmZXIgPyBldmVudC5kYXRhVHJhbnNmZXIgOiBldmVudC5vcmlnaW5hbEV2ZW50LmRhdGFUcmFuc2ZlcjsgLy8galF1ZXJ5IGZpeDtcbiAgfVxuXG4gIHByaXZhdGUgX3ByZXZlbnRBbmRTdG9wKGV2ZW50OiBhbnkpOiBhbnkge1xuICAgIGV2ZW50LnByZXZlbnREZWZhdWx0KCk7XG4gICAgZXZlbnQuc3RvcFByb3BhZ2F0aW9uKCk7XG4gIH1cblxuICBwcml2YXRlIG9uRmlsZXNEcm9wcGVkKGZpbGVJdGVtczogRmlsZVtdKSB7XG4gICAgLy8gY2xlYXIgcXVldWUgd2hlbiBuZXcgZmlsZXMgYXJlIGFkZGVkXG4gICAgLy8gdG9kbzogcmVtb3ZlIGluIGZ1dHVyZSByZWxlYXNlcyB0byBzdXBwb3J0IGNvbGxlY3RpdmUgZmlsZSBhZGRpbmdcbiAgICB0aGlzLnF1ZXVlID0gW107XG4gICAgZm9yIChsZXQgZmlsZSBvZiBmaWxlSXRlbXMpIHtcbiAgICAgIHRoaXMucXVldWUucHVzaChuZXcgVXBsb2FkRmlsZUl0ZW0oZmlsZSkpO1xuICAgIH1cblxuICAgIC8vIGJpbmQgRVNDIGtleSBsaXN0ZW5lciBmb3IgY2xvc2luZyB0aGUgZGlhbG9nIGFzIGxhdGUgYXMgcG9zc2libGVcbiAgICBpZiAoIXRoaXMuZXNjS2V5TGlzdGVuZXIpIHtcbiAgICAgIHRoaXMuZXNjS2V5TGlzdGVuZXIgPSB0aGlzLnJlbmRlcmVyLmxpc3RlbignZG9jdW1lbnQnLCAna2V5dXAnLCAoZSkgPT4ge1xuICAgICAgICBlLnN0b3BQcm9wYWdhdGlvbigpO1xuICAgICAgICBpZiAoZS5rZXlDb2RlID09PSAyNykge1xuICAgICAgICAgIHRoaXMuY2xvc2UoKTtcbiAgICAgICAgfVxuICAgICAgfSk7XG4gICAgfVxuICAgIC8vIGNhbGN1bGF0ZSB0b3RhbCBzaXplIG9mIHF1ZXVlXG4gICAgdGhpcy5zZXRRdWV1ZVNpemUoKTtcbiAgICAvLyBmaWx0ZXIgYXZhaWxhYmxlIHRhcmdldHNcbiAgICB0aGlzLnZhbGlkYXRlVXBsb2FkVGFyZ2V0cygpO1xuICB9XG5cbiAgLyoqXG4gICAqIEZpbHRlciBsaXN0IG9mIHJlZ2lzdGVyZWQgdXBsb2FkIHRhcmdldHMsIHNvIG9ubHkgdmFsaWQgdGFyZ2V0cyB3aWxsIGJlIHNob3duLlxuICAgKi9cbiAgcHJpdmF0ZSB2YWxpZGF0ZVVwbG9hZFRhcmdldHMoKSB7XG4gICAgdGhpcy5oYXNWYWxpZFVwbG9hZFRhcmdldHMgPSB0cnVlO1xuICAgIG9ic2VydmFibGVGb3JrSm9pbih0aGlzLnVwbG9hZFRhcmdldHMubWFwKHQgPT4gdGhpcy52YWxpZGF0ZVVwbG9hZFRhcmdldCh0KSkpXG4gICAgICAuc3Vic2NyaWJlKFxuICAgICAgICAocmVzOiB7IHRhcmdldDogVXBsb2FkVGFyZ2V0LCB2YWxpZDogYm9vbGVhbiB9W10pID0+IHtcbiAgICAgICAgICB0aGlzLnZhbGlkVXBsb2FkVGFyZ2V0cyA9IHJlcy5maWx0ZXIociA9PiByLnZhbGlkKS5tYXAoZmlsdGVyZWQgPT4gZmlsdGVyZWQudGFyZ2V0KS5yZXZlcnNlKCkuc29ydCgoYSwgYikgPT4ge1xuICAgICAgICAgICAgcmV0dXJuIGEudHlwZSA9PT0gJ2NvbnRleHQnID8gLTEgOiBiLnR5cGUgPT09ICdjb250ZXh0JyA/IDEgOiAwOyAvLyBDb250ZXh0IHNob3VsZCBiZSBvbiB0b3BcbiAgICAgICAgICB9KTtcbiAgICAgICAgfSwgZXJyID0+IHtcbiAgICAgICAgICB0aGlzLnZhbGlkVXBsb2FkVGFyZ2V0cyA9IFtdO1xuICAgICAgICB9LCAoKSA9PiB7XG4gICAgICAgICAgdGhpcy5oYXNWYWxpZFVwbG9hZFRhcmdldHMgPSB0aGlzLnZhbGlkVXBsb2FkVGFyZ2V0cy5sZW5ndGggPiAwO1xuICAgICAgICB9XG4gICAgICApO1xuICB9XG5cbiAgcHJpdmF0ZSB2YWxpZGF0ZVVwbG9hZFRhcmdldCh0YXJnZXQ6IFVwbG9hZFRhcmdldCk6IE9ic2VydmFibGU8eyB0YXJnZXQ6IFVwbG9hZFRhcmdldCwgdmFsaWQ6IGJvb2xlYW4gfT4ge1xuXG4gICAgaWYgKCF0aGlzLnF1ZXVlKSB7XG4gICAgICByZXR1cm4gb2JzZXJ2YWJsZU9mKHt0YXJnZXQ6IHRhcmdldCwgdmFsaWQ6IGZhbHNlfSk7XG4gICAgfVxuXG4gICAgcmV0dXJuIE9ic2VydmFibGUuY3JlYXRlKG8gPT4ge1xuICAgICAgbGV0IHZhbGlkID0gZmFsc2U7XG5cbiAgICAgIGlmICh0YXJnZXQudHlwZSA9PT0gVXBsb2FkVGFyZ2V0LlJPT1QpIHtcblxuICAgICAgICAvLyB0b2RvOiBhcmUgdGhlcmUgb3RoZXIgcmVzdHJpY3Rpb25zIG9uIHJvb3QgdGFyZ2V0P1xuICAgICAgICB0aGlzLnByZXBhcmVTZXJ2aWNlLmdldFByZXBhcmVDaGlsZFR5cGVzKG51bGwsIHRydWUpXG4gICAgICAgICAgLnN1YnNjcmliZShcbiAgICAgICAgICAgIChyZXM6IHsgcGFyZW50OiBzdHJpbmcsIHR5cGVzOiBPYmplY3RUeXBlW10gfSkgPT4ge1xuICAgICAgICAgICAgICB2YWxpZCA9IHRoaXMucXVldWUubGVuZ3RoID4gMCAmJiByZXMudHlwZXMubGVuZ3RoID4gMDtcbiAgICAgICAgICAgICAgby5uZXh0KHt0YXJnZXQ6IHRhcmdldCwgdmFsaWQ6IHZhbGlkfSk7XG4gICAgICAgICAgICAgIG8uY29tcGxldGUoKTtcbiAgICAgICAgICAgIH0sIGVyciA9PiB7XG4gICAgICAgICAgICAgIG8ubmV4dCh7dGFyZ2V0OiB0YXJnZXQsIHZhbGlkOiBmYWxzZX0pO1xuICAgICAgICAgICAgICBvLmNvbXBsZXRlKCk7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgKTtcbiAgICAgIH0gZWxzZSBpZiAodGFyZ2V0LnR5cGUgPT09IFVwbG9hZFRhcmdldC5PQkpFQ1QpIHtcblxuICAgICAgICAvLyB0b2RvOiBjaGVjayBpZiB0aGUgcmVmZXJlbmNlIG9iamVjdCBzdXBwb3J0cyB0aGUgZ2l2ZW4gZmlsZSB0eXBlXG4gICAgICAgIHZhbGlkID0gdGFyZ2V0LnJlZmVyZW5jZU9iamVjdCAmJlxuICAgICAgICAgIHRhcmdldC5yZWZlcmVuY2VPYmplY3QudHlwZS5tYXhGaWxlcyA+IDAgJiZcbiAgICAgICAgICAhdGFyZ2V0LnJlZmVyZW5jZU9iamVjdC5sb2NrICYmXG4gICAgICAgICAgIXRhcmdldC5yZWZlcmVuY2VPYmplY3QuaXNGaW5hbGl6ZWQgJiZcbiAgICAgICAgICAodGFyZ2V0LnJlZmVyZW5jZU9iamVjdC5yaWdodHMgJiYgdGFyZ2V0LnJlZmVyZW5jZU9iamVjdC5yaWdodHMuZWRpdCkgJiZcbiAgICAgICAgICB0aGlzLnF1ZXVlLmxlbmd0aCA9PT0gMSAmJlxuICAgICAgICAgIHRhcmdldC5yZWZlcmVuY2VPYmplY3QuZGF0YS55dXZzaWdzdGF0dXMgIT09ICdzaWduZWQnICYmXG4gICAgICAgICAgdGFyZ2V0LnJlZmVyZW5jZU9iamVjdC5kYXRhLnl1dnNpZ3N0YXR1cyAhPT0gJ2lucHJvY2Vzcyc7XG4gICAgICAgIG8ubmV4dCh7dGFyZ2V0OiB0YXJnZXQsIHZhbGlkOiB2YWxpZH0pO1xuICAgICAgICBvLmNvbXBsZXRlKCk7XG4gICAgICB9IGVsc2UgaWYgKHRhcmdldC50eXBlID09PSBVcGxvYWRUYXJnZXQuQ09OVEVYVCB8fCB0YXJnZXQudHlwZSA9PT0gVXBsb2FkVGFyZ2V0LkNPTlRFWFRfVFJFRSkge1xuXG4gICAgICAgIC8vIHRvZG86IGFkZCBjaGVja3MgcmVsYXRlZCB0byB0aGUgcmVmZXJlbmNlIG9iamVjdCAoZS5nLiBhbGxvd2VkIGZpbGUgdHlwZXMpXG4gICAgICAgIHRoaXMucHJlcGFyZVNlcnZpY2UuZ2V0UHJlcGFyZUNoaWxkVHlwZXModGFyZ2V0LnJlZmVyZW5jZU9iamVjdC5pZCwgdHJ1ZSlcbiAgICAgICAgICAuc3Vic2NyaWJlKFxuICAgICAgICAgICAgKHJlczogeyBwYXJlbnQ6IHN0cmluZywgdHlwZXM6IE9iamVjdFR5cGVbXSB9KSA9PiB7XG4gICAgICAgICAgICAgIHZhbGlkID0gdGFyZ2V0LnJlZmVyZW5jZU9iamVjdCAmJiB0aGlzLnF1ZXVlLmxlbmd0aCA+IDAgJiYgcmVzLnR5cGVzLmxlbmd0aCA+IDA7XG5cbiAgICAgICAgICAgICAgLy8gZm9yIENPTlRFWFRfVFJFRSB0YXJnZXRzIGFsc28gY2hlY2sgaWYgdGhlIGRlc2lyZWQgbm9kZVxuICAgICAgICAgICAgICAvLyB0eXBlIGlzIHBhcnQgb2YgdGhlIHByZXBhcmUgY2hpbGQgdHlwZXNcbiAgICAgICAgICAgICAgaWYgKHRhcmdldC50eXBlID09PSBVcGxvYWRUYXJnZXQuQ09OVEVYVF9UUkVFICYmIHRhcmdldC5zdWJGb2xkZXIpIHtcbiAgICAgICAgICAgICAgICBjb25zdCBzdWJGb2xkZXI6IGFueSA9IHRhcmdldC5zdWJGb2xkZXI7XG4gICAgICAgICAgICAgICAgdmFsaWQgPSAhIXJlcy50eXBlcy5maW5kKHQgPT4gdGhpcy5zeXN0ZW1TZXJ2aWNlLmltcGxlbWVudHNUeXBlKHQsIHN1YkZvbGRlci5kYXRhLnR5cGUpKTtcbiAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgIG8ubmV4dCh7dGFyZ2V0OiB0YXJnZXQsIHZhbGlkOiB2YWxpZH0pO1xuICAgICAgICAgICAgICBvLmNvbXBsZXRlKCk7XG4gICAgICAgICAgICB9LCBlcnIgPT4ge1xuICAgICAgICAgICAgICBvLm5leHQoe3RhcmdldDogdGFyZ2V0LCB2YWxpZDogZmFsc2V9KTtcbiAgICAgICAgICAgICAgby5jb21wbGV0ZSgpO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICk7XG4gICAgICB9IGVsc2Uge1xuICAgICAgICBvLm5leHQoe3RhcmdldDogdGFyZ2V0LCB2YWxpZDogZmFsc2V9KTtcbiAgICAgICAgby5jb21wbGV0ZSgpO1xuICAgICAgfVxuICAgIH0pO1xuICB9XG5cbiAgLyoqXG4gICAqIFJlbW92ZXMgYSBmaWxlIGZyb20gdGhlIGxpc3Qgb2YgZmlsZXMgdG8gYmUgdXBsb2FkZWQuXG4gICAqIEBwYXJhbSBmaWxlSXRlbSAtIHRoZSBmaWxlIGl0ZW0gdG8gYmUgcmVtb3ZlZFxuICAgKi9cbiAgcHVibGljIHJlbW92ZUZpbGVJdGVtKGZpbGVJdGVtOiBVcGxvYWRGaWxlSXRlbSkge1xuXG4gICAgdGhpcy5xdWV1ZSA9IHRoaXMucXVldWUuZmlsdGVyKChmKSA9PiBmLmlkICE9PSBmaWxlSXRlbS5pZCk7XG4gICAgaWYgKCF0aGlzLnF1ZXVlLmxlbmd0aCkge1xuICAgICAgdGhpcy5jbG9zZSgpO1xuICAgIH0gZWxzZSB7XG4gICAgICAvLyB1cGRhdGUgYXZhaWxhYmxlIHVwbG9hZCB0YXJnZXRzIGJlY2F1c2UgdGhlaXIgdmFsaWRpdHlcbiAgICAgIC8vIG1heSBiZSBiYXNlZCBvbiB0aGUgcXVldWUgc2l6ZVxuICAgICAgdGhpcy52YWxpZGF0ZVVwbG9hZFRhcmdldHMoKTtcbiAgICAgIHRoaXMuc2V0UXVldWVTaXplKCk7XG4gICAgfVxuICB9XG5cbiAgLyoqXG4gICAqIFByb2NlZWQgdXBsb2FkIHdpdGggYSBzZWxlY3RlZCB1cGxvYWQgdGFyZ2V0LlxuICAgKiBAcGFyYW0gdXBsb2FkVGFyZ2V0IC0gdGhlIHRhcmdldCB0byB1cGxvYWQgZmlsZXMgdG9cbiAgICovXG4gIHB1YmxpYyBwcm9jZWVkV2l0aFVwbG9hZCh1cGxvYWRUYXJnZXQ6IFVwbG9hZFRhcmdldCkge1xuXG4gICAgaWYgKHVwbG9hZFRhcmdldC50eXBlICE9PSBVcGxvYWRUYXJnZXQuQ1VTVE9NICYmIHRoaXMucXVldWUubGVuZ3RoID4gMSkge1xuICAgICAgLy8gRm9yIG1vcmUgdGhhbiBvbmUgZmlsZSB0byBiZSB1cGxvYWRlZCB0byBhIG5vbmUgY3VzdG9tIHRhcmdldCwgd2UgbGV0IHRoZSB1c2VyIGRlY2lkZSBpZlxuICAgICAgLy8gYmF0Y2ggdXBsb2FkIHNob3VsZCBiZSB1c2VkIG9yIG5vdCAuLi5cblxuXG4gICAgICB0aGlzLnNlbGVjdGVkVXBsb2FkVGFyZ2V0ID0gdXBsb2FkVGFyZ2V0O1xuICAgIH0gZWxzZSBpZiAodXBsb2FkVGFyZ2V0LnR5cGUgPT09IFVwbG9hZFRhcmdldC5PQkpFQ1QpIHtcbiAgICAgIC8vIC4uLiBvdGhlcndpc2UgdXBsb2FkIGlzIHN0YXJ0ZWQgaW1tZWRpYXRlbHlcbiAgICAgIHRoaXMuc3RhcnRVcGxvYWQodXBsb2FkVGFyZ2V0LCBbbnVsbCwgdGhpcy5nZXRTdGF0ZVJvdXRlKCldKTtcbiAgICB9IGVsc2Uge1xuICAgICAgdGhpcy5zdGFydFVwbG9hZCh1cGxvYWRUYXJnZXQsIFtudWxsLCAnL3ByZXBhcmUnXSk7XG4gICAgfVxuICB9XG5cbiAgLyoqXG4gICAqIFByb2NlZWQgdXBsb2FkIHVzaW5nIHRoZSBzZWxlY3RlZCB1cGxvYWQgdGFyZ2V0LlxuICAgKiBAcGFyYW0gdXNlQmF0Y2hVcGxvYWQgLSBmbGFnIGluZGljYXRpbmcgd2hldGhlciBvciBub3QgdG8gdXNlIGJhdGNoIHVwbG9hZFxuICAgKi9cbiAgcHVibGljIHByb2NlZWRXaXRoU2VsZWN0ZWRUYXJnZXQodXNlQmF0Y2hVcGxvYWQ6IGJvb2xlYW4pIHtcbiAgICB0aGlzLnN0YXJ0VXBsb2FkKHRoaXMuc2VsZWN0ZWRVcGxvYWRUYXJnZXQsIFt1c2VCYXRjaFVwbG9hZCwgJy9wcmVwYXJlJ10pO1xuICB9XG5cbiAgLyoqXG4gICAqIFJlc2V0cyB0aGUgc2VsZWN0ZWQgdXBsb2FkIHRhcmdldC5cbiAgICovXG4gIHB1YmxpYyByZXNldFNlbGVjdGVkVXBsb2FkVGFyZ2V0KCkge1xuICAgIHRoaXMuc2VsZWN0ZWRVcGxvYWRUYXJnZXQgPSBudWxsO1xuICB9XG5cbiAgZ2V0U3RhdGVSb3V0ZSgpIHtcbiAgICByZXR1cm4gdGhpcy5yb3V0ZXIudXJsO1xuICB9XG5cblxuICBwcml2YXRlIHN1Y2Nlc3NmdWxVcGxvYWQodGFyZ2V0LCB1cGxvYWRUYXJnZXQpIHtcbiAgICB0aGlzLmV2ZW50U2VydmljZS50cmlnZ2VyKEVuYWlvRXZlbnQuRE1TX09CSkVDVF9VUERBVEVELCB1cGxvYWRUYXJnZXQucmVmZXJlbmNlT2JqZWN0KTtcbiAgICB1cGxvYWRUYXJnZXQub25VcGxvYWRTdWNjZXNzKHRhcmdldCk7XG4gIH1cblxuICAvKipcbiAgICogU3RhcnQgdGhlIGFjdHVhbCB1cGxvYWQuXG4gICAqIEBwYXJhbSB1cGxvYWRUYXJnZXQgLSB0YXJnZXQgdG8gdXBsb2FkIHRoZSBmaWxlcyB0b1xuICAgKiBAcGFyYW0gdXNlQmF0Y2hVcGxvYWQgLSBmbGFnIGluZGljYXRpbmcgd2hldGhlciBvciBub3QgdG8gdXNlIGJhdGNoIHVwbG9hZFxuICAgKi9cbiAgcHJpdmF0ZSBzdGFydFVwbG9hZCh1cGxvYWRUYXJnZXQ6IFVwbG9hZFRhcmdldCwgWy4uLmFyZ3NdKSB7XG5cbiAgICBjb25zdCBbdXNlQmF0Y2hVcGxvYWQsIHRhcmdldF0gPSBhcmdzO1xuXG4gICAgdGhpcy5pc1VwbG9hZGluZyA9IHRydWU7XG4gICAgdGhpcy51bmJpbmRMaXN0ZW5lcnMoKTtcbiAgICB0aGlzLnByZXBhcmVTZXJ2aWNlXG4gICAgICAudXBsb2FkVG9UYXJnZXQodXBsb2FkVGFyZ2V0LCB0aGlzLnF1ZXVlLCB1c2VCYXRjaFVwbG9hZClcbiAgICAgIC5zdWJzY3JpYmUoKHJlcykgPT4ge1xuICAgICAgICAgIHRoaXMuaXNVcGxvYWRpbmcgPSBmYWxzZTtcbiAgICAgICAgICBpZiAodXBsb2FkVGFyZ2V0LnN1YkZvbGRlciAmJiB1cGxvYWRUYXJnZXQuc3ViRm9sZGVyLmRhdGEuZGF0YSkge1xuICAgICAgICAgICAgaWYgKEFycmF5LmlzQXJyYXkocmVzKSkge1xuICAgICAgICAgICAgICBsZXQgb2JzID0gW107XG4gICAgICAgICAgICAgIHJlcy5mb3JFYWNoKHIgPT4ge1xuICAgICAgICAgICAgICAgIG9icy5wdXNoKHRoaXMucHJlcGFyZVNlcnZpY2UudXBkYXRlUHJlcGFyZWRJdGVtSW5kZXhEYXRhKHIuaWQsIHVwbG9hZFRhcmdldC5zdWJGb2xkZXIuZGF0YS5kYXRhKSk7XG4gICAgICAgICAgICAgIH0pO1xuICAgICAgICAgICAgICBvYnNlcnZhYmxlRm9ya0pvaW4ob2JzKS5zdWJzY3JpYmUoKCkgPT4gdGhpcy5zdWNjZXNzZnVsVXBsb2FkKHRhcmdldCwgdXBsb2FkVGFyZ2V0KSk7XG4gICAgICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgICB0aGlzLnByZXBhcmVTZXJ2aWNlXG4gICAgICAgICAgICAgICAgLnVwZGF0ZVByZXBhcmVkSXRlbUluZGV4RGF0YShyZXMuaWQsIHVwbG9hZFRhcmdldC5zdWJGb2xkZXIuZGF0YS5kYXRhKVxuICAgICAgICAgICAgICAgIC5zdWJzY3JpYmUoKCkgPT4gdGhpcy5zdWNjZXNzZnVsVXBsb2FkKHRhcmdldCwgdXBsb2FkVGFyZ2V0KSk7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgIHRoaXMuc3VjY2Vzc2Z1bFVwbG9hZCh0YXJnZXQsIHVwbG9hZFRhcmdldCk7XG4gICAgICAgICAgfVxuICAgICAgICAgIHRoaXMuY2xvc2UoKTtcbiAgICAgICAgfSwgVXRpbHMudGhyb3coKCkgPT4ge1xuICAgICAgICAgIHRoaXMuaXNVcGxvYWRpbmcgPSBmYWxzZTtcbiAgICAgICAgICB1cGxvYWRUYXJnZXQub25VcGxvYWRGYWlsKCk7XG4gICAgICAgICAgdGhpcy5jbG9zZSgpO1xuICAgICAgICB9LFxuICAgICAgICB0aGlzLnRyYW5zbGF0ZS5pbnN0YW50KCdlby51cGxvYWQuZ2xvYmFsLmVycm9yLnRpdGxlJyksXG4gICAgICAgIHRoaXMudHJhbnNsYXRlLmluc3RhbnQoJ2VvLnVwbG9hZC5nbG9iYWwuZXJyb3IuZGVzY3JpcHRpb24nKSlcbiAgICAgICk7XG4gICAgdGhpcy5yZXNldFNlbGVjdGVkVXBsb2FkVGFyZ2V0KCk7XG4gIH1cblxuICBwcml2YXRlIHNldFF1ZXVlU2l6ZSgpIHtcbiAgICBsZXQgcyA9IDA7XG4gICAgZm9yIChsZXQgZiBvZiB0aGlzLnF1ZXVlKSB7XG4gICAgICBzICs9IGYuc2l6ZTtcbiAgICB9XG4gICAgdGhpcy5xdWV1ZVNpemUgPSBzO1xuICB9XG5cbiAgLyoqXG4gICAqIENsb3NlIHRoZSB1cGxvYWQgb3ZlcmxheSBhbmQgcmVsZWFzZSBhbGwgYm91bmQgcmVzb3VyY2VzLlxuICAgKi9cbiAgY2xvc2UoKSB7XG4gICAgLy8gdW5iaW5kIGJvdW5kIGV2ZW50IGxpc3RlbmVyLCB3aGVuIHRoZXkgYXJlIG5vdCBuZWVkZWQgYW55bW9yZVxuICAgIHRoaXMudW5iaW5kTGlzdGVuZXJzKCk7XG4gICAgLy8gY2xlYXIgdXBsb2FkIHF1ZXVlXG4gICAgdGhpcy5xdWV1ZSA9IFtdO1xuICAgIC8vIGhpZGUgdGhlIG92ZXJsYXlcbiAgICB0aGlzLnNldEZpbGVPdmVyKGZhbHNlKTtcbiAgICB0aGlzLmludmFsaWRJbnB1dCA9IGZhbHNlO1xuICB9XG5cbiAgcHJpdmF0ZSBzZXRGaWxlT3Zlcih2YWx1ZTogYm9vbGVhbikge1xuICAgIHRoaXMuZmlsZU92ZXIgPSB2YWx1ZTtcbiAgICB0aGlzLnVwbG9hZFJlZ2lzdHJ5LnNldE92ZXJsYXlBY3RpdmUodmFsdWUpO1xuICB9XG5cbiAgcHJpdmF0ZSB1bmJpbmRMaXN0ZW5lcnMoKSB7XG4gICAgaWYgKHRoaXMuZHJhZ0xlYXZlTGlzdGVuZXIpIHtcbiAgICAgIHRoaXMuZHJhZ0xlYXZlTGlzdGVuZXIoKTtcbiAgICAgIHRoaXMuZHJhZ0xlYXZlTGlzdGVuZXIgPSBudWxsO1xuICAgIH1cbiAgICBpZiAodGhpcy5kcmFnT3Zlckxpc3RlbmVyKSB7XG4gICAgICB0aGlzLmRyYWdPdmVyTGlzdGVuZXIoKTtcbiAgICAgIHRoaXMuZHJhZ092ZXJMaXN0ZW5lciA9IG51bGw7XG4gICAgfVxuICAgIGlmICh0aGlzLmRyb3BMaXN0ZW5lcikge1xuICAgICAgdGhpcy5kcm9wTGlzdGVuZXIoKTtcbiAgICAgIHRoaXMuZHJvcExpc3RlbmVyID0gbnVsbDtcbiAgICB9XG4gICAgaWYgKHRoaXMuZXNjS2V5TGlzdGVuZXIpIHtcbiAgICAgIHRoaXMuZXNjS2V5TGlzdGVuZXIoKTtcbiAgICAgIHRoaXMuZXNjS2V5TGlzdGVuZXIgPSBudWxsO1xuICAgIH1cbiAgfVxuXG4gIC8qKlxuICAgKiBJbmRpY2F0ZXMgd2hldGhlciBvciBub3QgdGhlIGN1cnJlbnQgZHJhZyBldmVudCBjb250YWlucyBvbmUgb3IgbW9yZSBmaWxlcy5cbiAgICogQHBhcmFtIGV2ZW50IC0gdGhlIGRyYWcgZXZlbnQgdG8gYmUgY2hlY2tlZFxuICAgKiBAcmV0dXJucyBudW1iZXIgb2YgZmlsZXNcbiAgICovXG4gICBwcml2YXRlIGRyYWdDb250YWluc0ZpbGVzKGV2ZW50OiBEcmFnRXZlbnQpOiBudW1iZXIge1xuICAgIHJldHVybiBBcnJheS5mcm9tKGV2ZW50LmRhdGFUcmFuc2Zlci5pdGVtcyB8fCBbXSkuZmlsdGVyKGkgPT4gaS5raW5kID09PSAnZmlsZScpLmxlbmd0aDtcbiAgfVxuXG4gIC8qKlxuICAgKiBJbmRpY2F0ZXMgd2hldGhlciBvciBub3QgdGhlIGN1cnJlbnQgcGFzdGUgZXZlbnQgY29udGFpbnMgb25lIG9yIG1vcmUgZmlsZXMuXG4gICAqIEBwYXJhbSBldmVudCAtIHRoZSBwYXN0ZSBldmVudCB0byBiZSBjaGVja2VkXG4gICAqIEByZXR1cm5zIG51bWJlciBvZiBmaWxlc1xuICAgKi9cbiAgcHJpdmF0ZSBwYXN0ZUNvbnRhaW5zRmlsZXMoZXZlbnQ6IENsaXBib2FyZEV2ZW50KTogbnVtYmVyIHtcbiAgICByZXR1cm4gQXJyYXkuZnJvbShldmVudC5jbGlwYm9hcmREYXRhLml0ZW1zIHx8IFtdKS5maWx0ZXIoaSA9PiBpLmtpbmQgPT09ICdmaWxlJykubGVuZ3RoO1xuICB9XG5cbiAgLy8gbmdGb3IgdHJhY2tpbmcgZnVuY3Rpb24gZm9yIHVwbG9hZCB0YXJnZXRzXG4gIHRhcmdldFRyYWNrQnlGbihpbmRleCwgaXRlbSkge1xuICAgIHJldHVybiBpdGVtLmlkO1xuICB9XG5cbiAgLy8gbmdGb3IgdHJhY2tpbmcgZnVuY3Rpb24gZm9yIGZpbGUgaXRlbXNcbiAgdHJhY2tCeUZuKGluZGV4LCBpdGVtKSB7XG4gICAgcmV0dXJuIGluZGV4O1xuICB9XG5cbiAgbmdPbkluaXQoKSB7XG4gICAgdGhpcy5pbml0KCk7XG4gIH1cblxuICBuZ09uRGVzdHJveSgpIHtcbiAgICBpZiAodGhpcy5kcmFnRW50ZXJMaXN0ZW5lcikge1xuICAgICAgdGhpcy5kcmFnRW50ZXJMaXN0ZW5lcigpO1xuICAgIH1cbiAgfVxufVxuIiwiPGRpdiBpZD1cImVvLXVwbG9hZC1vdmVybGF5XCIgI292ZXJsYXkgY2xhc3M9XCJkYXJrXCIgKm5nSWY9XCJmaWxlT3ZlclwiIHRhYmluZGV4PVwiMVwiXG4gICAgIFtuZ0NsYXNzXT1cIntoYXNGaWxlczogcXVldWUubGVuZ3RoLCBpbnZhbGlkOiBpbnZhbGlkSW5wdXQsIHNpbmdsZUZpbGU6IHF1ZXVlLmxlbmd0aCA9PT0gMSwgdXBsb2FkaW5nOiBpc1VwbG9hZGluZ31cIj5cblxuICA8ZW8taWNvbiBjbGFzcz1cImJ1dHRvbiB3aGl0ZSBjbG9zZVwiIFtpY29uU3JjXT1cIidhc3NldHMvX2RlZmF1bHQvc3ZnL2ljX2NsZWFyLnN2ZydcIiAoY2xpY2spPVwiY2xvc2UoKVwiPjwvZW8taWNvbj5cblxuICA8ZGl2IGNsYXNzPVwiY291bnRcIj5cbiAgICA8ZGl2Pnt7cXVldWUubGVuZ3RofX08L2Rpdj5cbiAgICA8ZGl2IGNsYXNzPVwicXVldWVTaXplXCI+e3txdWV1ZVNpemUgfCBmaWxlU2l6ZX19PC9kaXY+XG4gIDwvZGl2PlxuXG4gIDxoMSB0cmFuc2xhdGU+ZW8udXBsb2FkLmdsb2JhbC5oZWFkbGluZTwvaDE+XG4gIDxlby1pY29uIGNsYXNzPVwidXBsb2FkeVwiIFtpY29uU3JjXT1cIidhc3NldHMvX2RlZmF1bHQvc3ZnL2ljX3VwbG9hZC5zdmcnXCI+PC9lby1pY29uPlxuXG4gIDwhLS0gYmF0Y2ggdXBsb2FkIGRpYWxvZyAtLT5cbiAgPGRpdiBjbGFzcz1cImJhdGNoLWRpYWxvZ1wiICpuZ0lmPVwiIWludmFsaWRJbnB1dCAmJiBzZWxlY3RlZFVwbG9hZFRhcmdldCAmJiAhaXNVcGxvYWRpbmdcIj5cblxuICAgIDxoMiB0cmFuc2xhdGU+ZW8udXBsb2FkLmdsb2JhbC5jaG9vc2UudGl0bGU8L2gyPlxuICAgIDxwIHRyYW5zbGF0ZT5lby51cGxvYWQuZ2xvYmFsLmNob29zZS5tZXNzYWdlPC9wPlxuICAgIDxkaXYgY2xhc3M9XCJhY3Rpb25zXCI+XG4gICAgICA8YnV0dG9uIChjbGljayk9XCJyZXNldFNlbGVjdGVkVXBsb2FkVGFyZ2V0KClcIiB0cmFuc2xhdGU+ZW8udXBsb2FkLmdsb2JhbC5jYW5jZWw8L2J1dHRvbj5cbiAgICAgIDxidXR0b24gKGNsaWNrKT1cInByb2NlZWRXaXRoU2VsZWN0ZWRUYXJnZXQoZmFsc2UpXCIgY2xhc3M9XCJwcmltYXJ5XCIgdHJhbnNsYXRlPmVvLnVwbG9hZC5nbG9iYWwuY2hvb3NlLnNpbmdsZTwvYnV0dG9uPlxuICAgICAgPGJ1dHRvbiAoY2xpY2spPVwicHJvY2VlZFdpdGhTZWxlY3RlZFRhcmdldCh0cnVlKVwiIGNsYXNzPVwicHJpbWFyeVwiIHRyYW5zbGF0ZT5lby51cGxvYWQuZ2xvYmFsLmNob29zZS5tdWx0aTwvYnV0dG9uPlxuICAgIDwvZGl2PlxuICA8L2Rpdj5cblxuICA8IS0tIGludmFsaWQgaW5wdXQgZGlhbG9nIC0tPlxuICA8ZGl2IGNsYXNzPVwiYmF0Y2gtZGlhbG9nXCIgKm5nSWY9XCJoYXNWYWxpZFVwbG9hZFRhcmdldHMgJiYgaW52YWxpZElucHV0XCI+XG5cbiAgICA8aDIgdHJhbnNsYXRlPmVvLnVwbG9hZC5nbG9iYWwuaW52YWxpZC50aXRsZTwvaDI+XG4gICAgPHAgdHJhbnNsYXRlPmVvLnVwbG9hZC5nbG9iYWwuaW52YWxpZC5tZXNzYWdlPC9wPlxuICAgIDxkaXYgY2xhc3M9XCJhY3Rpb25zXCI+XG4gICAgICA8YnV0dG9uIChjbGljayk9XCJjbG9zZSgpXCIgdHJhbnNsYXRlPmVvLnVwbG9hZC5nbG9iYWwuY2xvc2U8L2J1dHRvbj5cbiAgICA8L2Rpdj5cbiAgPC9kaXY+XG5cbiAgPCEtLSBubyB1cGxvYWQgdGFyZ2V0cyBhdmFpbGFibGUgLS0+XG4gIDxkaXYgY2xhc3M9XCJiYXRjaC1kaWFsb2dcIiAqbmdJZj1cIiFoYXNWYWxpZFVwbG9hZFRhcmdldHNcIj5cblxuICAgIDxoMiB0cmFuc2xhdGU+ZW8udXBsb2FkLmdsb2JhbC5ub3RhcmdldC50aXRsZTwvaDI+XG4gICAgPHAgdHJhbnNsYXRlPmVvLnVwbG9hZC5nbG9iYWwubm90YXJnZXQubWVzc2FnZTwvcD5cbiAgICA8ZGl2IGNsYXNzPVwiYWN0aW9uc1wiPlxuICAgICAgPGJ1dHRvbiAoY2xpY2spPVwiY2xvc2UoKVwiIHRyYW5zbGF0ZT5lby51cGxvYWQuZ2xvYmFsLmNsb3NlPC9idXR0b24+XG4gICAgPC9kaXY+XG4gIDwvZGl2PlxuXG4gIDxkaXYgY2xhc3M9XCJjb250ZW50c1wiICpuZ0lmPVwiaGFzVmFsaWRVcGxvYWRUYXJnZXRzICYmICFpbnZhbGlkSW5wdXQgJiYgIXNlbGVjdGVkVXBsb2FkVGFyZ2V0ICYmICFpc1VwbG9hZGluZ1wiPlxuXG4gICAgPCEtLSBsaXN0IG9mIGF2YWlsYWJsZSB1cGxvYWQgdGFyZ2V0cyAtLT5cbiAgICA8ZGl2IGNsYXNzPVwidGFyZ2V0c1wiPlxuXG4gICAgICA8ZGl2IGNsYXNzPVwidGFyZ2V0LWxpc3RcIj5cblxuICAgICAgICA8aDIgdHJhbnNsYXRlPmVvLnVwbG9hZC5nbG9iYWwudGFyZ2V0PC9oMj5cblxuICAgICAgICA8ZGl2IGNsYXNzPVwidXBsb2FkLXRhcmdldFwiICpuZ0Zvcj1cImxldCB0IG9mIHZhbGlkVXBsb2FkVGFyZ2V0czsgdHJhY2tCeTogdGFyZ2V0VHJhY2tCeUZuXCJcbiAgICAgICAgICAgICAoY2xpY2spPVwicHJvY2VlZFdpdGhVcGxvYWQodClcIlxuICAgICAgICAgICAgIFtuZ1N3aXRjaF09XCJ0LnR5cGVcIj5cblxuICAgICAgICAgIDwhLS0gdXBsb2FkIHRvIHJvb3QgLS0+XG4gICAgICAgICAgPG5nLWNvbnRhaW5lciAqbmdTd2l0Y2hDYXNlPVwiJ3Jvb3QnXCIgPlxuICAgICAgICAgICAgPGVvLWljb24gW2ljb25TcmNdPVwiJ2Fzc2V0cy9fZGVmYXVsdC9zdmcvaWNfY3JlYXRlX2RvY3VtZW50LnN2ZydcIj48L2VvLWljb24+XG4gICAgICAgICAgICA8ZGl2IGNsYXNzPVwidXBsb2FkLXRhcmdldC1nZW5lcmFsXCI+XG4gICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJuYW1lXCIgdHJhbnNsYXRlPmVvLnVwbG9hZC5nbG9iYWwucm9vdC50aXRsZTwvZGl2PlxuICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwiZGVzY3JpcHRpb25cIiB0cmFuc2xhdGU+ZW8udXBsb2FkLmdsb2JhbC5yb290LmRlc2NyaXB0aW9uPC9kaXY+XG4gICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICA8L25nLWNvbnRhaW5lcj5cblxuICAgICAgICAgIDwhLS0gcmVwbGFjZSBmaWxlIG9mIGEgc3BlY2lmaWMgZG1zIG9iamVjdCAtLT5cbiAgICAgICAgICA8bmctY29udGFpbmVyICpuZ1N3aXRjaENhc2U9XCInb2JqZWN0J1wiPlxuICAgICAgICAgICAgPGVvLWljb24gW2ljb25TcmNdPVwiJ2Fzc2V0cy9fZGVmYXVsdC9zdmcvaWNfYWRkX2RvY3VtZW50X2ZpbGVfYXNfbmV3X3ZlcnNpb24uc3ZnJ1wiPjwvZW8taWNvbj5cbiAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJ1cGxvYWQtdGFyZ2V0LXJlcGxhY2VcIj5cbiAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cIm5hbWVcIiAqbmdJZj1cInQucmVmZXJlbmNlT2JqZWN0LmNvbnRlbnQ7ZWxzZSBub2NvbnRlbnRcIiB0cmFuc2xhdGU+ZW8udXBsb2FkLmdsb2JhbC5vYmplY3QudGl0bGU8L2Rpdj5cbiAgICAgICAgICAgICAgPG5nLXRlbXBsYXRlICNub2NvbnRlbnQ+XG4gICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cIm5hbWVcIiB0cmFuc2xhdGU+ZW8udXBsb2FkLmdsb2JhbC5vYmplY3QudGl0bGUubm9jb250ZW50PC9kaXY+XG4gICAgICAgICAgICAgIDwvbmctdGVtcGxhdGU+XG4gICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJkZXNjcmlwdGlvblwiPnt7dC5kZXNjcmlwdGlvbn19PC9kaXY+XG4gICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICA8L25nLWNvbnRhaW5lcj5cblxuICAgICAgICAgIDwhLS0gYWRkIG5ldyBmaWxlcyB0byBhIGNvbnRleHQgZm9sZGVyIC0tPlxuICAgICAgICAgIDxuZy1jb250YWluZXIgKm5nU3dpdGNoQ2FzZT1cIidjb250ZXh0J1wiPlxuICAgICAgICAgICAgPGVvLWljb24gW2ljb25TcmNdPVwiJ2Fzc2V0cy9fZGVmYXVsdC9zdmcvaWNfY3JlYXRlX2RvY3VtZW50X2luX2ZvbGRlci5zdmcnXCI+PC9lby1pY29uPlxuICAgICAgICAgICAgPGRpdiBjbGFzcz1cInVwbG9hZC10YXJnZXQtY29udGV4dFwiPlxuICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwibmFtZVwiPnt7J2VvLnVwbG9hZC5nbG9iYWwuY29udGV4dC50aXRsZSd8dHJhbnNsYXRlOih7Y29udGV4dDp0LnJlZmVyZW5jZU9iamVjdC50eXBlLmxhYmVsfSl9fTwvZGl2PlxuICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwiZGVzY3JpcHRpb25cIj57e3QuZGVzY3JpcHRpb259fTwvZGl2PlxuICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgPC9uZy1jb250YWluZXI+XG5cbiAgICAgICAgICA8IS0tIGFkZCBuZXcgZmlsZXMgdG8gYSBjb250ZXh0IGZvbGRlciBzdHJ1Y3R1cmUgdHJlZSBlbnRyeSAtLT5cbiAgICAgICAgICA8bmctY29udGFpbmVyICpuZ1N3aXRjaENhc2U9XCInY29udGV4dHRyZWUnXCI+XG4gICAgICAgICAgICA8ZW8taWNvbiBbaWNvblNyY109XCInYXNzZXRzL19kZWZhdWx0L3N2Zy9pY19jcmVhdGVfZG9jdW1lbnRfaW5fZm9sZGVyLnN2ZydcIj48L2VvLWljb24+XG4gICAgICAgICAgICA8ZGl2IGNsYXNzPVwidXBsb2FkLXRhcmdldC1jb250ZXh0dHJlZVwiPlxuICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwibmFtZVwiPnt7J2VvLmFkZC50aXRsZS5sb2NhdGlvbi5zdWJmb2xkZXInfHRyYW5zbGF0ZTogKHtmb2xkZXI6IHQuc3ViRm9sZGVyLm5hbWV9KX19PC9kaXY+XG4gICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICA8L25nLWNvbnRhaW5lcj5cblxuICAgICAgICAgIDwhLS0gY3VzdG9tIHVwbG9hZCB0YXJnZXQgKGUuZy4gZnJvbSBwbHVnaW4gY29tcG9uZW50KSAtLT5cbiAgICAgICAgICA8bmctY29udGFpbmVyICpuZ1N3aXRjaENhc2U9XCInY3VzdG9tJ1wiPlxuICAgICAgICAgICAgPGVvLWljb24gW2ljb25TcmNdPVwiJ2Fzc2V0cy9fZGVmYXVsdC9zdmcvaWNfdXBsb2FkLnN2ZydcIj48L2VvLWljb24+XG4gICAgICAgICAgICA8ZGl2IGNsYXNzPVwidXBsb2FkLXRhcmdldC1jdXN0b21cIj5cbiAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cIm5hbWVcIj57e3QubmFtZX19PC9kaXY+XG4gICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJkZXNjcmlwdGlvblwiPnt7dC5kZXNjcmlwdGlvbn19PC9kaXY+XG4gICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICA8L25nLWNvbnRhaW5lcj5cbiAgICAgICAgPC9kaXY+XG5cbiAgICAgIDwvZGl2PlxuXG4gICAgPC9kaXY+XG5cbiAgICA8IS0tIGxpc3Qgb2YgZmlsZXMgZHJhZ2dlZCB0byB0aGUgY29tcG9uZW50IC0tPlxuICAgIDxkaXYgY2xhc3M9XCJmaWxlc1wiPlxuICAgICAgPGRpdiBjbGFzcz1cImZpbGVzLWxpc3RcIj5cbiAgICAgICAgPGRpdiBjbGFzcz1cImZpbGUtaXRlbVwiICpuZ0Zvcj1cImxldCBpIG9mIHF1ZXVlOyB0cmFja0J5OiB0cmFja0J5Rm5cIj5cbiAgICAgICAgICA8ZGl2PlxuICAgICAgICAgICAgPGRpdiBjbGFzcz1cIm5hbWVcIj57e2kubmFtZX19PC9kaXY+XG4gICAgICAgICAgICA8ZGl2IGNsYXNzPVwiZGVzY1wiPjxzcGFuIGNsYXNzPVwic2l6ZVwiPnt7aS5zaXplIHwgZmlsZVNpemV9fTwvc3Bhbj48c3BhbiBjbGFzcz1cImRlc2MtdGV4dFwiPiZuYnNwO3t7aS50eXBlfX08L3NwYW4+PC9kaXY+XG4gICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgPGVvLWljb24gY2xhc3M9XCJidXR0b24gd2hpdGVcIiAoY2xpY2spPVwicmVtb3ZlRmlsZUl0ZW0oaSlcIiBbaWNvblNyY109XCInYXNzZXRzL19kZWZhdWx0L3N2Zy9pY19jbGVhci5zdmcnXCI+PC9lby1pY29uPlxuICAgICAgICA8L2Rpdj5cbiAgICAgIDwvZGl2PlxuICAgIDwvZGl2PlxuXG4gIDwvZGl2PlxuXG4gIDxkaXYgY2xhc3M9XCJsb2FkaW5nXCIgKm5nSWY9XCJpc1VwbG9hZGluZ1wiPjxlby1sb2FkaW5nLXNwaW5uZXIgW3NpemVdPVwiJ2xhcmdlJ1wiPjwvZW8tbG9hZGluZy1zcGlubmVyPjwvZGl2PlxuXG5cbjwvZGl2PlxuIl19
@@ -1,69 +0,0 @@
1
- import { Directive, HostListener } from '@angular/core';
2
- import * as i0 from "@angular/core";
3
- /**
4
- * This directive traps the focus inside the element it is applied to.
5
- * When applied, a users can't "tab out" of the element.
6
- * You need at least two focusable children in the element for it to work properly.
7
- * See the querySelector in the trapFocus method to know which elements count as focusable.
8
- * Additionally you can add the attribute "focusable" to an element if you are unsure.
9
- */
10
- export class TrapFocusDirective {
11
- constructor(el) {
12
- this.el = el;
13
- this.focusableSelectors = 'a[href], a, button, textarea, input[type="text"],' +
14
- 'input[type="radio"], input[type="checkbox"], select, [focusable]';
15
- }
16
- ngAfterViewInit() {
17
- this.trapFocus(this.el.nativeElement);
18
- }
19
- trapFocus(element) {
20
- let focusableElements = element.querySelectorAll(this.focusableSelectors);
21
- focusableElements = Array.from(focusableElements)
22
- .filter((el) => !el.disabled && !el.classList.contains('disabled'));
23
- const firstFocusableElement = focusableElements[0];
24
- const lastFocusableElement = focusableElements[focusableElements.length - 1];
25
- element.addEventListener('keydown', ((event) => {
26
- const isTabPressed = event.keyCode === 9; // tab key code
27
- if (!isTabPressed)
28
- return;
29
- if (event.shiftKey) /* shift + tab */ {
30
- if (document.activeElement === firstFocusableElement) {
31
- lastFocusableElement.focus();
32
- event.preventDefault();
33
- }
34
- }
35
- else /* tab */ {
36
- if (document.activeElement === lastFocusableElement) {
37
- firstFocusableElement.focus();
38
- event.preventDefault();
39
- }
40
- }
41
- }));
42
- }
43
- isArrowUpOrDownPressed(event) {
44
- const key = event.key;
45
- if (key === 'ArrowUp' || key === 'ArrowDown') {
46
- event.preventDefault();
47
- let focusableElements = this.el.nativeElement.parentElement.querySelectorAll(this.focusableSelectors);
48
- const currentIndex = Array.from(focusableElements).indexOf(document.activeElement);
49
- if (key === 'ArrowDown' && currentIndex < focusableElements.length - 1) {
50
- focusableElements[currentIndex + 1].focus();
51
- }
52
- else if (key === 'ArrowUp' && currentIndex > 0) {
53
- focusableElements[currentIndex - 1].focus();
54
- }
55
- }
56
- }
57
- }
58
- TrapFocusDirective.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.2", ngImport: i0, type: TrapFocusDirective, deps: [{ token: i0.ElementRef }], target: i0.ɵɵFactoryTarget.Directive });
59
- TrapFocusDirective.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "15.2.2", type: TrapFocusDirective, selector: "[eoTrapFocus]", host: { listeners: { "keydown": "isArrowUpOrDownPressed($event)" } }, ngImport: i0 });
60
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.2", ngImport: i0, type: TrapFocusDirective, decorators: [{
61
- type: Directive,
62
- args: [{
63
- selector: '[eoTrapFocus]'
64
- }]
65
- }], ctorParameters: function () { return [{ type: i0.ElementRef }]; }, propDecorators: { isArrowUpOrDownPressed: [{
66
- type: HostListener,
67
- args: ['keydown', ['$event']]
68
- }] } });
69
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidHJhcC1mb2N1cy5kaXJlY3RpdmUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9zcmMvYXBwL2VvLWZyYW1ld29yay91dGlsL2RpcmVjdGl2ZS90cmFwLWZvY3VzLmRpcmVjdGl2ZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUMsU0FBUyxFQUFjLFlBQVksRUFBWSxNQUFNLGVBQWUsQ0FBQzs7QUFFN0U7Ozs7OztHQU1HO0FBS0gsTUFBTSxPQUFPLGtCQUFrQjtJQUs3QixZQUFvQixFQUFjO1FBQWQsT0FBRSxHQUFGLEVBQUUsQ0FBWTtRQUhsQyx1QkFBa0IsR0FBRyxtREFBbUQ7WUFDeEUsa0VBQWtFLENBQUM7SUFFN0IsQ0FBQztJQUV2QyxlQUFlO1FBQ2IsSUFBSSxDQUFDLFNBQVMsQ0FBQyxJQUFJLENBQUMsRUFBRSxDQUFDLGFBQWEsQ0FBQyxDQUFDO0lBQ3hDLENBQUM7SUFFRCxTQUFTLENBQUMsT0FBWTtRQUNwQixJQUFJLGlCQUFpQixHQUFHLE9BQU8sQ0FBQyxnQkFBZ0IsQ0FDOUMsSUFBSSxDQUFDLGtCQUFrQixDQUN4QixDQUFDO1FBQ0YsaUJBQWlCLEdBQUcsS0FBSyxDQUFDLElBQUksQ0FBQyxpQkFBaUIsQ0FBQzthQUM5QyxNQUFNLENBQUMsQ0FBQyxFQUFPLEVBQUUsRUFBRSxDQUFDLENBQUMsRUFBRSxDQUFDLFFBQVEsSUFBSSxDQUFDLEVBQUUsQ0FBQyxTQUFTLENBQUMsUUFBUSxDQUFDLFVBQVUsQ0FBQyxDQUFDLENBQUM7UUFDM0UsTUFBTSxxQkFBcUIsR0FBUSxpQkFBaUIsQ0FBQyxDQUFDLENBQUMsQ0FBQztRQUN4RCxNQUFNLG9CQUFvQixHQUFRLGlCQUFpQixDQUFDLGlCQUFpQixDQUFDLE1BQU0sR0FBRyxDQUFDLENBQUMsQ0FBQztRQUVsRixPQUFPLENBQUMsZ0JBQWdCLENBQUMsU0FBUyxFQUFFLENBQUMsQ0FBQyxLQUFVLEVBQUUsRUFBRTtZQUNsRCxNQUFNLFlBQVksR0FBRyxLQUFLLENBQUMsT0FBTyxLQUFLLENBQUMsQ0FBQyxDQUFDLGVBQWU7WUFDekQsSUFBSSxDQUFDLFlBQVk7Z0JBQUUsT0FBTztZQUUxQixJQUFJLEtBQUssQ0FBQyxRQUFRLEVBQUUsaUJBQWlCLENBQUM7Z0JBQ3BDLElBQUksUUFBUSxDQUFDLGFBQWEsS0FBSyxxQkFBcUIsRUFBRTtvQkFDcEQsb0JBQW9CLENBQUMsS0FBSyxFQUFFLENBQUM7b0JBQzdCLEtBQUssQ0FBQyxjQUFjLEVBQUUsQ0FBQztpQkFDeEI7YUFDRjtpQkFBTSxTQUFTLENBQUM7Z0JBQ2YsSUFBSSxRQUFRLENBQUMsYUFBYSxLQUFLLG9CQUFvQixFQUFFO29CQUNuRCxxQkFBcUIsQ0FBQyxLQUFLLEVBQUUsQ0FBQztvQkFDOUIsS0FBSyxDQUFDLGNBQWMsRUFBRSxDQUFDO2lCQUN4QjthQUNGO1FBQ0gsQ0FBQyxDQUFDLENBQUMsQ0FBQztJQUNOLENBQUM7SUFHRCxzQkFBc0IsQ0FBQyxLQUFvQjtRQUV6QyxNQUFNLEdBQUcsR0FBRyxLQUFLLENBQUMsR0FBRyxDQUFBO1FBQ3JCLElBQUksR0FBRyxLQUFLLFNBQVMsSUFBSSxHQUFHLEtBQUssV0FBVyxFQUFFO1lBRTVDLEtBQUssQ0FBQyxjQUFjLEVBQUUsQ0FBQztZQUN2QixJQUFJLGlCQUFpQixHQUFHLElBQUksQ0FBQyxFQUFFLENBQUMsYUFBYSxDQUFDLGFBQWEsQ0FBQyxnQkFBZ0IsQ0FDMUUsSUFBSSxDQUFDLGtCQUFrQixDQUN4QixDQUFDO1lBQ0YsTUFBTSxZQUFZLEdBQUcsS0FBSyxDQUFDLElBQUksQ0FBQyxpQkFBaUIsQ0FBQyxDQUFDLE9BQU8sQ0FBQyxRQUFRLENBQUMsYUFBYSxDQUFDLENBQUE7WUFDbEYsSUFBSSxHQUFHLEtBQUssV0FBVyxJQUFJLFlBQVksR0FBRyxpQkFBaUIsQ0FBQyxNQUFNLEdBQUcsQ0FBQyxFQUFFO2dCQUN0RSxpQkFBaUIsQ0FBQyxZQUFZLEdBQUcsQ0FBQyxDQUFDLENBQUMsS0FBSyxFQUFFLENBQUM7YUFDN0M7aUJBQ0ksSUFBSSxHQUFHLEtBQUssU0FBUyxJQUFJLFlBQVksR0FBRyxDQUFDLEVBQUU7Z0JBQzlDLGlCQUFpQixDQUFDLFlBQVksR0FBRyxDQUFDLENBQUMsQ0FBQyxLQUFLLEVBQUUsQ0FBQzthQUU3QztTQUNGO0lBQ0gsQ0FBQzs7K0dBekRVLGtCQUFrQjttR0FBbEIsa0JBQWtCOzJGQUFsQixrQkFBa0I7a0JBSDlCLFNBQVM7bUJBQUM7b0JBQ1QsUUFBUSxFQUFFLGVBQWU7aUJBQzFCO2lHQXdDQyxzQkFBc0I7c0JBRHJCLFlBQVk7dUJBQUMsU0FBUyxFQUFFLENBQUMsUUFBUSxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtEaXJlY3RpdmUsIEVsZW1lbnRSZWYsIEhvc3RMaXN0ZW5lciwgUmVuZGVyZXIyfSBmcm9tICdAYW5ndWxhci9jb3JlJztcblxuLyoqXG4gKiBUaGlzIGRpcmVjdGl2ZSB0cmFwcyB0aGUgZm9jdXMgaW5zaWRlIHRoZSBlbGVtZW50IGl0IGlzIGFwcGxpZWQgdG8uXG4gKiBXaGVuIGFwcGxpZWQsIGEgdXNlcnMgY2FuJ3QgXCJ0YWIgb3V0XCIgb2YgdGhlIGVsZW1lbnQuXG4gKiBZb3UgbmVlZCBhdCBsZWFzdCB0d28gZm9jdXNhYmxlIGNoaWxkcmVuIGluIHRoZSBlbGVtZW50IGZvciBpdCB0byB3b3JrIHByb3Blcmx5LlxuICogU2VlIHRoZSBxdWVyeVNlbGVjdG9yIGluIHRoZSB0cmFwRm9jdXMgbWV0aG9kIHRvIGtub3cgd2hpY2ggZWxlbWVudHMgY291bnQgYXMgZm9jdXNhYmxlLlxuICogQWRkaXRpb25hbGx5IHlvdSBjYW4gYWRkIHRoZSBhdHRyaWJ1dGUgXCJmb2N1c2FibGVcIiB0byBhbiBlbGVtZW50IGlmIHlvdSBhcmUgdW5zdXJlLlxuICovXG5cbkBEaXJlY3RpdmUoe1xuICBzZWxlY3RvcjogJ1tlb1RyYXBGb2N1c10nXG59KVxuZXhwb3J0IGNsYXNzIFRyYXBGb2N1c0RpcmVjdGl2ZSB7XG5cbiAgZm9jdXNhYmxlU2VsZWN0b3JzID0gJ2FbaHJlZl0sIGEsIGJ1dHRvbiwgdGV4dGFyZWEsIGlucHV0W3R5cGU9XCJ0ZXh0XCJdLCcgK1xuICAnaW5wdXRbdHlwZT1cInJhZGlvXCJdLCBpbnB1dFt0eXBlPVwiY2hlY2tib3hcIl0sIHNlbGVjdCwgW2ZvY3VzYWJsZV0nO1xuXG4gIGNvbnN0cnVjdG9yKHByaXZhdGUgZWw6IEVsZW1lbnRSZWYpIHsgfVxuXG4gIG5nQWZ0ZXJWaWV3SW5pdCgpIHtcbiAgICB0aGlzLnRyYXBGb2N1cyh0aGlzLmVsLm5hdGl2ZUVsZW1lbnQpO1xuICB9XG5cbiAgdHJhcEZvY3VzKGVsZW1lbnQ6IGFueSkge1xuICAgIGxldCBmb2N1c2FibGVFbGVtZW50cyA9IGVsZW1lbnQucXVlcnlTZWxlY3RvckFsbChcbiAgICAgIHRoaXMuZm9jdXNhYmxlU2VsZWN0b3JzXG4gICAgKTtcbiAgICBmb2N1c2FibGVFbGVtZW50cyA9IEFycmF5LmZyb20oZm9jdXNhYmxlRWxlbWVudHMpXG4gICAgICAuZmlsdGVyKChlbDogYW55KSA9PiAhZWwuZGlzYWJsZWQgJiYgIWVsLmNsYXNzTGlzdC5jb250YWlucygnZGlzYWJsZWQnKSk7XG4gICAgY29uc3QgZmlyc3RGb2N1c2FibGVFbGVtZW50OiBhbnkgPSBmb2N1c2FibGVFbGVtZW50c1swXTtcbiAgICBjb25zdCBsYXN0Rm9jdXNhYmxlRWxlbWVudDogYW55ID0gZm9jdXNhYmxlRWxlbWVudHNbZm9jdXNhYmxlRWxlbWVudHMubGVuZ3RoIC0gMV07XG5cbiAgICBlbGVtZW50LmFkZEV2ZW50TGlzdGVuZXIoJ2tleWRvd24nLCAoKGV2ZW50OiBhbnkpID0+IHtcbiAgICAgIGNvbnN0IGlzVGFiUHJlc3NlZCA9IGV2ZW50LmtleUNvZGUgPT09IDk7IC8vIHRhYiBrZXkgY29kZVxuICAgICAgaWYgKCFpc1RhYlByZXNzZWQpIHJldHVybjtcblxuICAgICAgaWYgKGV2ZW50LnNoaWZ0S2V5KSAvKiBzaGlmdCArIHRhYiAqLyB7XG4gICAgICAgIGlmIChkb2N1bWVudC5hY3RpdmVFbGVtZW50ID09PSBmaXJzdEZvY3VzYWJsZUVsZW1lbnQpIHtcbiAgICAgICAgICBsYXN0Rm9jdXNhYmxlRWxlbWVudC5mb2N1cygpO1xuICAgICAgICAgIGV2ZW50LnByZXZlbnREZWZhdWx0KCk7XG4gICAgICAgIH1cbiAgICAgIH0gZWxzZSAvKiB0YWIgKi8ge1xuICAgICAgICBpZiAoZG9jdW1lbnQuYWN0aXZlRWxlbWVudCA9PT0gbGFzdEZvY3VzYWJsZUVsZW1lbnQpIHtcbiAgICAgICAgICBmaXJzdEZvY3VzYWJsZUVsZW1lbnQuZm9jdXMoKTtcbiAgICAgICAgICBldmVudC5wcmV2ZW50RGVmYXVsdCgpO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfSkpO1xuICB9XG5cbiAgQEhvc3RMaXN0ZW5lcigna2V5ZG93bicsIFsnJGV2ZW50J10pXG4gIGlzQXJyb3dVcE9yRG93blByZXNzZWQoZXZlbnQ6IEtleWJvYXJkRXZlbnQpIHtcblxuICAgIGNvbnN0IGtleSA9IGV2ZW50LmtleVxuICAgIGlmIChrZXkgPT09ICdBcnJvd1VwJyB8fCBrZXkgPT09ICdBcnJvd0Rvd24nKSB7XG5cbiAgICAgIGV2ZW50LnByZXZlbnREZWZhdWx0KCk7XG4gICAgICBsZXQgZm9jdXNhYmxlRWxlbWVudHMgPSB0aGlzLmVsLm5hdGl2ZUVsZW1lbnQucGFyZW50RWxlbWVudC5xdWVyeVNlbGVjdG9yQWxsKFxuICAgICAgICB0aGlzLmZvY3VzYWJsZVNlbGVjdG9yc1xuICAgICAgKTtcbiAgICAgIGNvbnN0IGN1cnJlbnRJbmRleCA9IEFycmF5LmZyb20oZm9jdXNhYmxlRWxlbWVudHMpLmluZGV4T2YoZG9jdW1lbnQuYWN0aXZlRWxlbWVudClcbiAgICAgIGlmIChrZXkgPT09ICdBcnJvd0Rvd24nICYmIGN1cnJlbnRJbmRleCA8IGZvY3VzYWJsZUVsZW1lbnRzLmxlbmd0aCAtIDEpIHtcbiAgICAgICAgZm9jdXNhYmxlRWxlbWVudHNbY3VycmVudEluZGV4ICsgMV0uZm9jdXMoKTtcbiAgICAgIH1cbiAgICAgIGVsc2UgaWYgKGtleSA9PT0gJ0Fycm93VXAnICYmIGN1cnJlbnRJbmRleCA+IDApIHtcbiAgICAgICAgZm9jdXNhYmxlRWxlbWVudHNbY3VycmVudEluZGV4IC0gMV0uZm9jdXMoKTtcblxuICAgICAgfVxuICAgIH1cbiAgfVxufVxuIl19