@bizdoc/core 1.13.12 → 1.13.13
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.
- package/bizdoc-core.d.ts +5 -0
- package/esm2020/bizdoc-core.mjs +5 -0
- package/esm2020/lib/admin/admin-dismiss.service.mjs +22 -0
- package/esm2020/lib/admin/admin-menu.component.mjs +27 -0
- package/esm2020/lib/admin/core/ace.input.mjs +147 -0
- package/esm2020/lib/admin/core/color-picker.input.mjs +208 -0
- package/esm2020/lib/admin/core/search.input.mjs +43 -0
- package/esm2020/lib/admin/diff/configuration-diff.component.mjs +558 -0
- package/esm2020/lib/admin/document-trace/document-trace.component.mjs +469 -0
- package/esm2020/lib/admin/document-trace/reassign.dialog.mjs +40 -0
- package/esm2020/lib/admin/document-trace/timeline.mjs +2 -0
- package/esm2020/lib/admin/document-trace/trace-element.component.mjs +105 -0
- package/esm2020/lib/admin/form/form.resolve.service.mjs +17 -0
- package/esm2020/lib/admin/form/form.service.mjs +26 -0
- package/esm2020/lib/admin/form/workflow/node-ref.mjs +8 -0
- package/esm2020/lib/admin/form/workflow/node.component.mjs +128 -0
- package/esm2020/lib/admin/form/workflow/role-node.component.mjs +90 -0
- package/esm2020/lib/admin/form/workflow/workflow.component.mjs +408 -0
- package/esm2020/lib/admin/indices/manage-cube-index.component.mjs +161 -0
- package/esm2020/lib/admin/patterns/patterns.component.mjs +179 -0
- package/esm2020/lib/admin/permissions/permissions.component.mjs +97 -0
- package/esm2020/lib/admin/positions/positions-popup.component.mjs +74 -0
- package/esm2020/lib/admin/positions/positions.component.mjs +458 -0
- package/esm2020/lib/admin/profiler/profiler.component.mjs +260 -0
- package/esm2020/lib/admin/utility-ref.mjs +38 -0
- package/esm2020/lib/admin/utility-wrapper.component.mjs +51 -0
- package/esm2020/lib/admin/utility.pane.component.mjs +51 -0
- package/esm2020/lib/app.component.mjs +90 -0
- package/esm2020/lib/bizdoc.module.mjs +93 -0
- package/esm2020/lib/browse/browse-items.component.mjs +476 -0
- package/esm2020/lib/browse/browse.mobile.component.mjs +101 -0
- package/esm2020/lib/browse/browse.pane.component.mjs +149 -0
- package/esm2020/lib/browse/expanded-item/expanded-item.component.mjs +315 -0
- package/esm2020/lib/browse/filter/filter.component.mjs +164 -0
- package/esm2020/lib/browse/folders-menu.component.mjs +51 -0
- package/esm2020/lib/chat/chat-info.mjs +69 -0
- package/esm2020/lib/chat/chat.mobile.component.mjs +26 -0
- package/esm2020/lib/chat/chat.service.mjs +122 -0
- package/esm2020/lib/chat/contacts.component.mjs +103 -0
- package/esm2020/lib/chat/contacts.pane.component.mjs +29 -0
- package/esm2020/lib/chat/conversation.component.mjs +193 -0
- package/esm2020/lib/chat/conversation.pane.component.mjs +44 -0
- package/esm2020/lib/compose/action/action-picker.component.mjs +84 -0
- package/esm2020/lib/compose/action/action-ref.mjs +19 -0
- package/esm2020/lib/compose/action/action.base.mjs +49 -0
- package/esm2020/lib/compose/action/action.dialog.mjs +61 -0
- package/esm2020/lib/compose/action/action.pane.dialog.exp.mjs +72 -0
- package/esm2020/lib/compose/action/assign-action.component.mjs +90 -0
- package/esm2020/lib/compose/action/return-action.component.mjs +52 -0
- package/esm2020/lib/compose/attachments/attachments.component.mjs +127 -0
- package/esm2020/lib/compose/attachments/preview/attachment-preview.component.mjs +155 -0
- package/esm2020/lib/compose/attachments/progress-button.directive.mjs +25 -0
- package/esm2020/lib/compose/can-deactivate-changes.service.mjs +27 -0
- package/esm2020/lib/compose/comments/Comments.pane.component.mjs +49 -0
- package/esm2020/lib/compose/comments/comment.component.mjs +186 -0
- package/esm2020/lib/compose/comments/comments.component.mjs +227 -0
- package/esm2020/lib/compose/comments/edit-comment.component.mjs +32 -0
- package/esm2020/lib/compose/comments/edits.component.mjs +30 -0
- package/esm2020/lib/compose/comments/quick-comment.component.exp.mjs +63 -0
- package/esm2020/lib/compose/comments/votes.component.mjs +42 -0
- package/esm2020/lib/compose/compose-resolve.service.mjs +55 -0
- package/esm2020/lib/compose/compose.mobile.component.mjs +112 -0
- package/esm2020/lib/compose/compose.pane.component.mjs +201 -0
- package/esm2020/lib/compose/copy/copy.dialog.mjs +46 -0
- package/esm2020/lib/compose/dismiss.service.mjs +25 -0
- package/esm2020/lib/compose/document-resolver.service.mjs +17 -0
- package/esm2020/lib/compose/document.component.mjs +45 -0
- package/esm2020/lib/compose/document.mobile.component.mjs +22 -0
- package/esm2020/lib/compose/document.pane.component.mjs +26 -0
- package/esm2020/lib/compose/events/events.component.mjs +30 -0
- package/esm2020/lib/compose/form-ref.mjs +46 -0
- package/esm2020/lib/compose/form-selector/form-selector.sheet.mjs +82 -0
- package/esm2020/lib/compose/form.component.mjs +447 -0
- package/esm2020/lib/compose/new-menu.component.mjs +104 -0
- package/esm2020/lib/compose/privilage.directive.mjs +64 -0
- package/esm2020/lib/compose/recipient-resolver.service.mjs +18 -0
- package/esm2020/lib/compose/save-changes.dialog.mjs +18 -0
- package/esm2020/lib/compose/state.component.mjs +37 -0
- package/esm2020/lib/compose/tag/tags.component.mjs +91 -0
- package/esm2020/lib/compose/trace/flow.component.mjs +656 -0
- package/esm2020/lib/compose/trace/people.component.mjs +35 -0
- package/esm2020/lib/compose/trace/trace.base.mjs +71 -0
- package/esm2020/lib/compose/trace/trace.component.mjs +345 -0
- package/esm2020/lib/compose/trace/trace.pane.component.mjs +52 -0
- package/esm2020/lib/compose/version-compare/version-compare.component.mjs +53 -0
- package/esm2020/lib/compose/version-compare/version-compare.directive.mjs +344 -0
- package/esm2020/lib/compose/version-compare/version.pane.component.mjs +56 -0
- package/esm2020/lib/core/NgComponentOutlet.mjs +38 -0
- package/esm2020/lib/core/account.service.mjs +37 -0
- package/esm2020/lib/core/animated-icon/animated-icon.directive.mjs +17 -0
- package/esm2020/lib/core/animations.mjs +156 -0
- package/esm2020/lib/core/authentication.mjs +3 -0
- package/esm2020/lib/core/avatar/avatar.component.mjs +103 -0
- package/esm2020/lib/core/base.mjs +2 -0
- package/esm2020/lib/core/colors.mjs +322 -0
- package/esm2020/lib/core/component-factory-resolver.mjs +64 -0
- package/esm2020/lib/core/configuration.mjs +16 -0
- package/esm2020/lib/core/controls/address.input.mjs +193 -0
- package/esm2020/lib/core/controls/auto-complete.input.mjs +256 -0
- package/esm2020/lib/core/controls/combination-picker-body.mjs +173 -0
- package/esm2020/lib/core/controls/combination-picker.mjs +277 -0
- package/esm2020/lib/core/controls/combination-pool.mjs +105 -0
- package/esm2020/lib/core/controls/file.input.mjs +392 -0
- package/esm2020/lib/core/controls/select.input.mjs +237 -0
- package/esm2020/lib/core/controls/time-picker.mjs +196 -0
- package/esm2020/lib/core/controls/timespan.input.mjs +207 -0
- package/esm2020/lib/core/datasource.service.mjs +75 -0
- package/esm2020/lib/core/decorators.mjs +46 -0
- package/esm2020/lib/core/firebase.service.mjs +50 -0
- package/esm2020/lib/core/functions.mjs +200 -0
- package/esm2020/lib/core/guide/guide.component.mjs +219 -0
- package/esm2020/lib/core/guide/guide.service.mjs +107 -0
- package/esm2020/lib/core/http.interceptor.mjs +79 -0
- package/esm2020/lib/core/hub.service.mjs +108 -0
- package/esm2020/lib/core/identity/identity.component.mjs +67 -0
- package/esm2020/lib/core/info/attachment-info.service.mjs +51 -0
- package/esm2020/lib/core/info/document-info.service.mjs +21 -0
- package/esm2020/lib/core/info/location-info.component.mjs +61 -0
- package/esm2020/lib/core/info/map-info.mjs +40 -0
- package/esm2020/lib/core/layout/autocomplete.field.mjs +60 -0
- package/esm2020/lib/core/layout/checkbox.field.mjs +41 -0
- package/esm2020/lib/core/layout/checkbox.mjs +35 -0
- package/esm2020/lib/core/layout/date-range.field.mjs +53 -0
- package/esm2020/lib/core/layout/date.field.mjs +52 -0
- package/esm2020/lib/core/layout/expression.field.mjs +51 -0
- package/esm2020/lib/core/layout/file.field.mjs +47 -0
- package/esm2020/lib/core/layout/html.field.mjs +48 -0
- package/esm2020/lib/core/layout/input.base.mjs +11 -0
- package/esm2020/lib/core/layout/input.field.mjs +64 -0
- package/esm2020/lib/core/layout/layout.component.mjs +196 -0
- package/esm2020/lib/core/layout/numeric.field.mjs +47 -0
- package/esm2020/lib/core/layout/select.field.mjs +82 -0
- package/esm2020/lib/core/layout/switch.field.mjs +41 -0
- package/esm2020/lib/core/layout/textarea.field.mjs +42 -0
- package/esm2020/lib/core/layout/timespan.field.mjs +50 -0
- package/esm2020/lib/core/lottie-animation.mjs +46 -0
- package/esm2020/lib/core/mailbox.service.mjs +395 -0
- package/esm2020/lib/core/models.mjs +40 -0
- package/esm2020/lib/core/none.component.mjs +40 -0
- package/esm2020/lib/core/pipes/action.pipe.mjs +25 -0
- package/esm2020/lib/core/pipes/calendar.pipe.mjs +72 -0
- package/esm2020/lib/core/pipes/date-format.pipe.mjs +19 -0
- package/esm2020/lib/core/pipes/daterange.pipe.mjs +62 -0
- package/esm2020/lib/core/pipes/difference.pipe.mjs +15 -0
- package/esm2020/lib/core/pipes/duration-format.pipe.mjs +48 -0
- package/esm2020/lib/core/pipes/duration.pipe.mjs +19 -0
- package/esm2020/lib/core/pipes/form.pipe.mjs +25 -0
- package/esm2020/lib/core/pipes/join.pipe.mjs +18 -0
- package/esm2020/lib/core/pipes/role.pipe.mjs +25 -0
- package/esm2020/lib/core/pipes/sanitize-html.pipe.mjs +18 -0
- package/esm2020/lib/core/pipes/sort.pipe.mjs +48 -0
- package/esm2020/lib/core/pipes/state.pipe.mjs +25 -0
- package/esm2020/lib/core/pipes/time-ago.pipe.mjs +66 -0
- package/esm2020/lib/core/pipes/translate.pipe.mjs +38 -0
- package/esm2020/lib/core/pipes/type-value.pipe.mjs +42 -0
- package/esm2020/lib/core/pipes/user-name.pipe.mjs +21 -0
- package/esm2020/lib/core/popup/popup-ref.mjs +20 -0
- package/esm2020/lib/core/popup/popup.component.mjs +37 -0
- package/esm2020/lib/core/popup/popup.service.mjs +148 -0
- package/esm2020/lib/core/popup/tooltip.directive.mjs +82 -0
- package/esm2020/lib/core/prompt/ask/ask.dialog.mjs +29 -0
- package/esm2020/lib/core/prompt/mask/mask.component.mjs +21 -0
- package/esm2020/lib/core/prompt.service.mjs +86 -0
- package/esm2020/lib/core/router.mjs +35 -0
- package/esm2020/lib/core/session.service.mjs +247 -0
- package/esm2020/lib/core/slots/pane-ref.mjs +125 -0
- package/esm2020/lib/core/slots/router.directive.mjs +70 -0
- package/esm2020/lib/core/slots/router.service.mjs +36 -0
- package/esm2020/lib/core/slots/slots.component.mjs +1049 -0
- package/esm2020/lib/core/tagging/documents.component.mjs +25 -0
- package/esm2020/lib/core/tagging/edit-input.component.mjs +233 -0
- package/esm2020/lib/core/tagging/emoji.component.mjs +35 -0
- package/esm2020/lib/core/tagging/tagging-item.directive.mjs +39 -0
- package/esm2020/lib/core/tagging/tagging.component-base.mjs +29 -0
- package/esm2020/lib/core/tagging/tagging.directive.mjs +138 -0
- package/esm2020/lib/core/tagging/tagging.pipe.mjs +72 -0
- package/esm2020/lib/core/tagging/users.component.mjs +32 -0
- package/esm2020/lib/core/translate.service.mjs +99 -0
- package/esm2020/lib/core/translations.mjs +1104 -0
- package/esm2020/lib/core/window-title.service.mjs +53 -0
- package/esm2020/lib/cube/accum/accum.component.mjs +257 -0
- package/esm2020/lib/cube/chart/chart.component.mjs +326 -0
- package/esm2020/lib/cube/cube-info.service.mjs +100 -0
- package/esm2020/lib/cube/cube-menu.component.mjs +27 -0
- package/esm2020/lib/cube/cube-view.component.mjs +186 -0
- package/esm2020/lib/cube/cube.service.mjs +407 -0
- package/esm2020/lib/cube/declarations.mjs +2 -0
- package/esm2020/lib/cube/explore/document-item.component.mjs +38 -0
- package/esm2020/lib/cube/explore/explore-item.component.mjs +27 -0
- package/esm2020/lib/cube/explore/explore-items.component.mjs +186 -0
- package/esm2020/lib/cube/explore/explore.pane.component.mjs +81 -0
- package/esm2020/lib/cube/explore/item-resolver.service.mjs +32 -0
- package/esm2020/lib/cube/explore/item.pane.component.mjs +23 -0
- package/esm2020/lib/cube/filter/filter-tags.component.exp.mjs +75 -0
- package/esm2020/lib/cube/filter/filter.component.mjs +137 -0
- package/esm2020/lib/cube/grid/grid.component.mjs +217 -0
- package/esm2020/lib/cube/grid/spreadsheet.component.mjs +365 -0
- package/esm2020/lib/cube/matrix/matrix.base.mjs +127 -0
- package/esm2020/lib/cube/matrix/matrix.mobile.component.mjs +63 -0
- package/esm2020/lib/cube/matrix/matrix.pane.component.mjs +76 -0
- package/esm2020/lib/cube/matrix/popup.component.mjs +70 -0
- package/esm2020/lib/cube/matrix/table.component.mjs +489 -0
- package/esm2020/lib/cube/parallel/item.mjs +41 -0
- package/esm2020/lib/cube/parallel/parallel.component.mjs +160 -0
- package/esm2020/lib/cube/pivot/pivot.component.mjs +500 -0
- package/esm2020/lib/cube/sum/sum.component.mjs +404 -0
- package/esm2020/lib/cube/view-base.mjs +79 -0
- package/esm2020/lib/cube/view.mobile.component.mjs +127 -0
- package/esm2020/lib/cube/view.pane.component.mjs +84 -0
- package/esm2020/lib/dashboard/actions/actions.widget.mjs +126 -0
- package/esm2020/lib/dashboard/cube/accum-cube.widget.mjs +145 -0
- package/esm2020/lib/dashboard/cube/cube-analysis.base.mjs +90 -0
- package/esm2020/lib/dashboard/cube/cube-analysis.widget.mjs +53 -0
- package/esm2020/lib/dashboard/cube/cube-chart.widget.mjs +144 -0
- package/esm2020/lib/dashboard/cube/documents.widget.mjs +64 -0
- package/esm2020/lib/dashboard/cube/filter/filter.component.mjs +59 -0
- package/esm2020/lib/dashboard/dashboard.component.mjs +47 -0
- package/esm2020/lib/dashboard/dashboard.pane.component.mjs +24 -0
- package/esm2020/lib/dashboard/recents/recents.widget.mjs +98 -0
- package/esm2020/lib/dashboard/score/activity.widget.mjs +162 -0
- package/esm2020/lib/dashboard/score/compare-departments.widget.mjs +204 -0
- package/esm2020/lib/dashboard/score/peers-performance.widget.mjs +253 -0
- package/esm2020/lib/dashboard/score/pending-results.widget.mjs +64 -0
- package/esm2020/lib/dashboard/score/personal-score.widget.mjs +219 -0
- package/esm2020/lib/dashboard/widget-item.component.mjs +89 -0
- package/esm2020/lib/dashboard/widget-ref.mjs +18 -0
- package/esm2020/lib/desktop.module.mjs +144 -0
- package/esm2020/lib/home/about/about.dialog.mjs +26 -0
- package/esm2020/lib/home/home-base.component.mjs +91 -0
- package/esm2020/lib/home/home.desktop.component.mjs +201 -0
- package/esm2020/lib/home/home.mobile.component.mjs +116 -0
- package/esm2020/lib/home/notifications/notifications.component.mjs +67 -0
- package/esm2020/lib/home/options/options.component.mjs +94 -0
- package/esm2020/lib/home/outofoffice/outofoffice.component.mjs +38 -0
- package/esm2020/lib/home/search.service.mjs +75 -0
- package/esm2020/lib/home/sign/sign.component.mjs +54 -0
- package/esm2020/lib/home/tools.component.mjs +82 -0
- package/esm2020/lib/impersonate/impersonate.component.mjs +65 -0
- package/esm2020/lib/mobile.module.mjs +59 -0
- package/esm2020/lib/modules/chart.module.mjs +37 -0
- package/esm2020/lib/modules/circular-gauge.module.mjs +17 -0
- package/esm2020/lib/modules/date.adapter.mjs +30 -0
- package/esm2020/lib/modules/datepicker.intl.mjs +39 -0
- package/esm2020/lib/modules/diagram.module.mjs +34 -0
- package/esm2020/lib/modules/gantt.module.mjs +17 -0
- package/esm2020/lib/modules/grid.module.mjs +23 -0
- package/esm2020/lib/modules/material.module.mjs +188 -0
- package/esm2020/lib/modules/paginator.intl.mjs +21 -0
- package/esm2020/lib/modules/pivot.module.mjs +23 -0
- package/esm2020/lib/modules/schedule.module.mjs +21 -0
- package/esm2020/lib/modules/spreadsheet.module.mjs +28 -0
- package/esm2020/lib/modules/stepper.intl.mjs +17 -0
- package/esm2020/lib/modules/texteditor.module.mjs +27 -0
- package/esm2020/lib/notifications/filter.component.mjs +25 -0
- package/esm2020/lib/notifications/notifications-table.component.mjs +106 -0
- package/esm2020/lib/notifications/notifications.component-base.mjs +47 -0
- package/esm2020/lib/notifications/notifications.mobile.component.mjs +20 -0
- package/esm2020/lib/notifications/notifications.pane.component.mjs +23 -0
- package/esm2020/lib/notifications/notifications.service.mjs +71 -0
- package/esm2020/lib/notifications/types/commented.notification.mjs +53 -0
- package/esm2020/lib/notifications/types/cube-anomaly.notification.mjs +58 -0
- package/esm2020/lib/notifications/types/escalated.notification.mjs +33 -0
- package/esm2020/lib/notifications/types/liked.notification.mjs +50 -0
- package/esm2020/lib/notifications/types/long-running-task.notification.mjs +31 -0
- package/esm2020/lib/notifications/types/notification-base.mjs +40 -0
- package/esm2020/lib/notifications/types/nudge.notification.mjs +31 -0
- package/esm2020/lib/notifications/types/state-changed.notification.mjs +30 -0
- package/esm2020/lib/notifications/types/tagged.notification.mjs +43 -0
- package/esm2020/lib/notifications/types/text.notification.mjs +20 -0
- package/esm2020/lib/notifications/types/upcoming-event.notification.mjs +36 -0
- package/esm2020/lib/options/options.component.mjs +227 -0
- package/esm2020/lib/options/options.service.mjs +38 -0
- package/esm2020/lib/reports/arguments-component.mjs +83 -0
- package/esm2020/lib/reports/cube/documents.component.mjs +40 -0
- package/esm2020/lib/reports/cube/grid-documents.component.mjs +72 -0
- package/esm2020/lib/reports/cube/table-documents.component.mjs +56 -0
- package/esm2020/lib/reports/cube/usage-args.component.mjs +61 -0
- package/esm2020/lib/reports/cube/usage-base.mjs +79 -0
- package/esm2020/lib/reports/cube/usage-chart.component.mjs +352 -0
- package/esm2020/lib/reports/cube/usage-pivot.component.mjs +237 -0
- package/esm2020/lib/reports/cube/usage.component.mjs +40 -0
- package/esm2020/lib/reports/report-ref.mjs +31 -0
- package/esm2020/lib/reports/report-viewer.component.mjs +154 -0
- package/esm2020/lib/reports/report.mobile.component.mjs +120 -0
- package/esm2020/lib/reports/report.pane.component.mjs +88 -0
- package/esm2020/lib/reports/reports-menu.component.mjs +26 -0
- package/esm2020/lib/reports/substitution/substitution.component.mjs +40 -0
- package/esm2020/lib/reports/table/table-view.component.mjs +41 -0
- package/esm2020/lib/reports/tasks/tasks.component.mjs +95 -0
- package/esm2020/lib/routes.desktop.mjs +197 -0
- package/esm2020/lib/routes.mobile.mjs +69 -0
- package/esm2020/lib/scheduler/schedule.component.mjs +166 -0
- package/esm2020/lib/scheduler/scheduler.mobile.component.mjs +37 -0
- package/esm2020/lib/scheduler/scheduler.pane.component.mjs +53 -0
- package/esm2020/lib/shared.module.mjs +528 -0
- package/esm2020/lib/system.module.mjs +110 -0
- package/esm2020/lib/views/cube/chart.component.mjs +75 -0
- package/esm2020/lib/views/cube/cube-base.mjs +96 -0
- package/esm2020/lib/views/cube/explore.component.mjs +83 -0
- package/esm2020/lib/views/cube/matrix.component.mjs +97 -0
- package/esm2020/lib/views/cube/parallel.component.mjs +53 -0
- package/esm2020/lib/views/cube/pivot.component.mjs +51 -0
- package/esm2020/lib/views/cube/sum.component.mjs +64 -0
- package/esm2020/lib/views/cube/view.component.mjs +102 -0
- package/esm2020/lib/views/document-view-ref.mjs +27 -0
- package/esm2020/lib/views/timeline/timeline.component.exp.mjs +313 -0
- package/esm2020/lib/views/view-item.component.mjs +70 -0
- package/esm2020/lib/views/views.component.mjs +25 -0
- package/esm2020/lib/views/views.mobile.component.mjs +20 -0
- package/esm2020/lib/views/views.pane.component.mjs +31 -0
- package/esm2020/public-api.mjs +142 -0
- package/fesm2015/bizdoc-core.mjs +29622 -0
- package/fesm2015/bizdoc-core.mjs.map +1 -0
- package/fesm2020/bizdoc-core.mjs +29412 -0
- package/fesm2020/bizdoc-core.mjs.map +1 -0
- package/lib/admin/admin-dismiss.service.d.ts +14 -0
- package/lib/admin/admin-menu.component.d.ts +12 -0
- package/lib/admin/core/ace.input.d.ts +52 -0
- package/lib/admin/core/color-picker.input.d.ts +64 -0
- package/lib/admin/core/search.input.d.ts +13 -0
- package/lib/admin/diff/configuration-diff.component.d.ts +116 -0
- package/lib/admin/document-trace/document-trace.component.d.ts +83 -0
- package/lib/admin/document-trace/reassign.dialog.d.ts +22 -0
- package/lib/admin/document-trace/timeline.d.ts +40 -0
- package/lib/admin/document-trace/trace-element.component.d.ts +37 -0
- package/lib/admin/form/form.resolve.service.d.ts +12 -0
- package/lib/admin/form/form.service.d.ts +13 -0
- package/lib/admin/form/workflow/node-ref.d.ts +7 -0
- package/lib/admin/form/workflow/node.component.d.ts +37 -0
- package/lib/admin/form/workflow/role-node.component.d.ts +22 -0
- package/lib/admin/form/workflow/workflow.component.d.ts +73 -0
- package/lib/admin/indices/manage-cube-index.component.d.ts +54 -0
- package/lib/admin/patterns/patterns.component.d.ts +79 -0
- package/lib/admin/permissions/permissions.component.d.ts +45 -0
- package/lib/admin/positions/positions-popup.component.d.ts +39 -0
- package/lib/admin/positions/positions.component.d.ts +117 -0
- package/lib/admin/profiler/profiler.component.d.ts +108 -0
- package/lib/admin/utility-ref.d.ts +19 -0
- package/lib/admin/utility-wrapper.component.d.ts +28 -0
- package/lib/admin/utility.pane.component.d.ts +24 -0
- package/lib/app.component.d.ts +24 -0
- package/lib/bizdoc.module.d.ts +18 -0
- package/lib/browse/browse-items.component.d.ts +104 -0
- package/lib/browse/browse.mobile.component.d.ts +39 -0
- package/lib/browse/browse.pane.component.d.ts +50 -0
- package/lib/browse/expanded-item/expanded-item.component.d.ts +67 -0
- package/lib/browse/filter/filter.component.d.ts +71 -0
- package/lib/browse/folders-menu.component.d.ts +22 -0
- package/lib/chat/chat-info.d.ts +37 -0
- package/lib/chat/chat.mobile.component.d.ts +10 -0
- package/lib/chat/chat.service.d.ts +38 -0
- package/lib/chat/contacts.component.d.ts +38 -0
- package/lib/chat/contacts.pane.component.d.ts +12 -0
- package/lib/chat/conversation.component.d.ts +56 -0
- package/lib/chat/conversation.pane.component.d.ts +16 -0
- package/lib/compose/action/action-picker.component.d.ts +25 -0
- package/lib/compose/action/action-ref.d.ts +10 -0
- package/lib/compose/action/action.base.d.ts +15 -0
- package/lib/compose/action/action.dialog.d.ts +29 -0
- package/lib/compose/action/action.pane.dialog.exp.d.ts +31 -0
- package/lib/compose/action/assign-action.component.d.ts +36 -0
- package/lib/compose/action/return-action.component.d.ts +17 -0
- package/lib/compose/attachments/attachments.component.d.ts +35 -0
- package/lib/compose/attachments/preview/attachment-preview.component.d.ts +49 -0
- package/lib/compose/attachments/progress-button.directive.d.ts +12 -0
- package/lib/compose/can-deactivate-changes.service.d.ts +12 -0
- package/lib/compose/comments/Comments.pane.component.d.ts +18 -0
- package/lib/compose/comments/comment.component.d.ts +51 -0
- package/lib/compose/comments/comments.component.d.ts +66 -0
- package/lib/compose/comments/edit-comment.component.d.ts +25 -0
- package/lib/compose/comments/edits.component.d.ts +26 -0
- package/lib/compose/comments/quick-comment.component.exp.d.ts +28 -0
- package/lib/compose/comments/votes.component.d.ts +22 -0
- package/lib/compose/compose-resolve.service.d.ts +27 -0
- package/lib/compose/compose.mobile.component.d.ts +42 -0
- package/lib/compose/compose.pane.component.d.ts +57 -0
- package/lib/compose/copy/copy.dialog.d.ts +23 -0
- package/lib/compose/dismiss.service.d.ts +12 -0
- package/lib/compose/document-resolver.service.d.ts +12 -0
- package/lib/compose/document.component.d.ts +18 -0
- package/lib/compose/document.mobile.component.d.ts +10 -0
- package/lib/compose/document.pane.component.d.ts +12 -0
- package/lib/compose/events/events.component.d.ts +13 -0
- package/lib/compose/form-ref.d.ts +30 -0
- package/lib/compose/form-selector/form-selector.sheet.d.ts +28 -0
- package/lib/compose/form.component.d.ts +97 -0
- package/lib/compose/new-menu.component.d.ts +36 -0
- package/lib/compose/privilage.directive.d.ts +26 -0
- package/lib/compose/recipient-resolver.service.d.ts +12 -0
- package/lib/compose/save-changes.dialog.d.ts +7 -0
- package/lib/compose/state.component.d.ts +12 -0
- package/lib/compose/tag/tags.component.d.ts +36 -0
- package/lib/compose/trace/flow.component.d.ts +59 -0
- package/lib/compose/trace/people.component.d.ts +18 -0
- package/lib/compose/trace/trace.base.d.ts +28 -0
- package/lib/compose/trace/trace.component.d.ts +55 -0
- package/lib/compose/trace/trace.pane.component.d.ts +20 -0
- package/lib/compose/version-compare/version-compare.component.d.ts +24 -0
- package/lib/compose/version-compare/version-compare.directive.d.ts +89 -0
- package/lib/compose/version-compare/version.pane.component.d.ts +21 -0
- package/lib/core/NgComponentOutlet.d.ts +15 -0
- package/lib/core/account.service.d.ts +18 -0
- package/lib/core/animated-icon/animated-icon.directive.d.ts +7 -0
- package/lib/core/animations.d.ts +26 -0
- package/lib/core/authentication.d.ts +6 -0
- package/lib/core/avatar/avatar.component.d.ts +34 -0
- package/lib/core/base.d.ts +29 -0
- package/lib/core/colors.d.ts +6 -0
- package/lib/core/component-factory-resolver.d.ts +12 -0
- package/lib/core/configuration.d.ts +111 -0
- package/lib/core/controls/address.input.d.ts +63 -0
- package/lib/core/controls/auto-complete.input.d.ts +86 -0
- package/lib/core/controls/combination-picker-body.d.ts +114 -0
- package/lib/core/controls/combination-picker.d.ts +82 -0
- package/lib/core/controls/combination-pool.d.ts +42 -0
- package/lib/core/controls/file.input.d.ts +88 -0
- package/lib/core/controls/select.input.d.ts +84 -0
- package/lib/core/controls/time-picker.d.ts +52 -0
- package/lib/core/controls/timespan.input.d.ts +55 -0
- package/lib/core/datasource.service.d.ts +46 -0
- package/lib/core/decorators.d.ts +17 -0
- package/lib/core/firebase.service.d.ts +17 -0
- package/lib/core/functions.d.ts +50 -0
- package/lib/core/guide/guide.component.d.ts +31 -0
- package/lib/core/guide/guide.service.d.ts +32 -0
- package/lib/core/http.interceptor.d.ts +21 -0
- package/lib/core/hub.service.d.ts +133 -0
- package/lib/core/identity/identity.component.d.ts +29 -0
- package/lib/core/info/attachment-info.service.d.ts +17 -0
- package/lib/core/info/document-info.service.d.ts +13 -0
- package/lib/core/info/location-info.component.d.ts +28 -0
- package/lib/core/info/map-info.d.ts +15 -0
- package/lib/core/layout/autocomplete.field.d.ts +21 -0
- package/lib/core/layout/checkbox.d.ts +10 -0
- package/lib/core/layout/checkbox.field.d.ts +11 -0
- package/lib/core/layout/date-range.field.d.ts +13 -0
- package/lib/core/layout/date.field.d.ts +11 -0
- package/lib/core/layout/expression.field.d.ts +12 -0
- package/lib/core/layout/file.field.d.ts +14 -0
- package/lib/core/layout/html.field.d.ts +12 -0
- package/lib/core/layout/input.base.d.ts +10 -0
- package/lib/core/layout/input.field.d.ts +14 -0
- package/lib/core/layout/layout.component.d.ts +33 -0
- package/lib/core/layout/numeric.field.d.ts +11 -0
- package/lib/core/layout/select.field.d.ts +22 -0
- package/lib/core/layout/switch.field.d.ts +11 -0
- package/lib/core/layout/textarea.field.d.ts +11 -0
- package/lib/core/layout/timespan.field.d.ts +11 -0
- package/lib/core/lottie-animation.d.ts +14 -0
- package/lib/core/mailbox.service.d.ts +141 -0
- package/lib/core/models.d.ts +649 -0
- package/lib/core/none.component.d.ts +9 -0
- package/lib/core/pipes/action.pipe.d.ts +10 -0
- package/lib/core/pipes/calendar.pipe.d.ts +27 -0
- package/lib/core/pipes/date-format.pipe.d.ts +8 -0
- package/lib/core/pipes/daterange.pipe.d.ts +15 -0
- package/lib/core/pipes/difference.pipe.d.ts +7 -0
- package/lib/core/pipes/duration-format.pipe.d.ts +11 -0
- package/lib/core/pipes/duration.pipe.d.ts +8 -0
- package/lib/core/pipes/form.pipe.d.ts +10 -0
- package/lib/core/pipes/join.pipe.d.ts +10 -0
- package/lib/core/pipes/role.pipe.d.ts +10 -0
- package/lib/core/pipes/sanitize-html.pipe.d.ts +10 -0
- package/lib/core/pipes/sort.pipe.d.ts +12 -0
- package/lib/core/pipes/state.pipe.d.ts +10 -0
- package/lib/core/pipes/time-ago.pipe.d.ts +16 -0
- package/lib/core/pipes/translate.pipe.d.ts +18 -0
- package/lib/core/pipes/type-value.pipe.d.ts +15 -0
- package/lib/core/pipes/user-name.pipe.d.ts +11 -0
- package/lib/core/popup/popup-ref.d.ts +14 -0
- package/lib/core/popup/popup.component.d.ts +22 -0
- package/lib/core/popup/popup.service.d.ts +24 -0
- package/lib/core/popup/tooltip.directive.d.ts +29 -0
- package/lib/core/prompt/ask/ask.dialog.d.ts +22 -0
- package/lib/core/prompt/mask/mask.component.d.ts +10 -0
- package/lib/core/prompt.service.d.ts +36 -0
- package/lib/core/router.d.ts +20 -0
- package/lib/core/session.service.d.ts +80 -0
- package/lib/core/slots/pane-ref.d.ts +113 -0
- package/lib/core/slots/router.directive.d.ts +25 -0
- package/lib/core/slots/router.service.d.ts +36 -0
- package/lib/core/slots/slots.component.d.ts +183 -0
- package/lib/core/tagging/documents.component.d.ts +11 -0
- package/lib/core/tagging/edit-input.component.d.ts +65 -0
- package/lib/core/tagging/emoji.component.d.ts +18 -0
- package/lib/core/tagging/tagging-item.directive.d.ts +15 -0
- package/lib/core/tagging/tagging.component-base.d.ts +19 -0
- package/lib/core/tagging/tagging.directive.d.ts +34 -0
- package/lib/core/tagging/tagging.pipe.d.ts +24 -0
- package/lib/core/tagging/users.component.d.ts +15 -0
- package/lib/core/translate.service.d.ts +28 -0
- package/lib/core/translations.d.ts +1097 -0
- package/lib/core/window-title.service.d.ts +21 -0
- package/lib/cube/accum/accum.component.d.ts +63 -0
- package/lib/cube/chart/chart.component.d.ts +74 -0
- package/lib/cube/cube-info.service.d.ts +77 -0
- package/lib/cube/cube-menu.component.d.ts +12 -0
- package/lib/cube/cube-view.component.d.ts +31 -0
- package/lib/cube/cube.service.d.ts +267 -0
- package/lib/cube/declarations.d.ts +23 -0
- package/lib/cube/explore/document-item.component.d.ts +16 -0
- package/lib/cube/explore/explore-item.component.d.ts +14 -0
- package/lib/cube/explore/explore-items.component.d.ts +57 -0
- package/lib/cube/explore/explore.pane.component.d.ts +29 -0
- package/lib/cube/explore/item-resolver.service.d.ts +20 -0
- package/lib/cube/explore/item.pane.component.d.ts +13 -0
- package/lib/cube/filter/filter-tags.component.exp.d.ts +31 -0
- package/lib/cube/filter/filter.component.d.ts +44 -0
- package/lib/cube/grid/grid.component.d.ts +59 -0
- package/lib/cube/grid/spreadsheet.component.d.ts +62 -0
- package/lib/cube/matrix/matrix.base.d.ts +72 -0
- package/lib/cube/matrix/matrix.mobile.component.d.ts +22 -0
- package/lib/cube/matrix/matrix.pane.component.d.ts +23 -0
- package/lib/cube/matrix/popup.component.d.ts +23 -0
- package/lib/cube/matrix/table.component.d.ts +100 -0
- package/lib/cube/parallel/item.d.ts +13 -0
- package/lib/cube/parallel/parallel.component.d.ts +52 -0
- package/lib/cube/pivot/pivot.component.d.ts +103 -0
- package/lib/cube/sum/sum.component.d.ts +78 -0
- package/lib/cube/view-base.d.ts +39 -0
- package/lib/cube/view.mobile.component.d.ts +46 -0
- package/lib/cube/view.pane.component.d.ts +27 -0
- package/lib/dashboard/actions/actions.widget.d.ts +39 -0
- package/lib/dashboard/cube/accum-cube.widget.d.ts +33 -0
- package/lib/dashboard/cube/cube-analysis.base.d.ts +59 -0
- package/lib/dashboard/cube/cube-analysis.widget.d.ts +17 -0
- package/lib/dashboard/cube/cube-chart.widget.d.ts +32 -0
- package/lib/dashboard/cube/documents.widget.d.ts +30 -0
- package/lib/dashboard/cube/filter/filter.component.d.ts +22 -0
- package/lib/dashboard/dashboard.component.d.ts +20 -0
- package/lib/dashboard/dashboard.pane.component.d.ts +8 -0
- package/lib/dashboard/recents/recents.widget.d.ts +40 -0
- package/lib/dashboard/score/activity.widget.d.ts +50 -0
- package/lib/dashboard/score/compare-departments.widget.d.ts +51 -0
- package/lib/dashboard/score/peers-performance.widget.d.ts +65 -0
- package/lib/dashboard/score/pending-results.widget.d.ts +28 -0
- package/lib/dashboard/score/personal-score.widget.d.ts +57 -0
- package/lib/dashboard/widget-item.component.d.ts +31 -0
- package/lib/dashboard/widget-ref.d.ts +11 -0
- package/lib/desktop.module.d.ts +45 -0
- package/lib/home/about/about.dialog.d.ts +14 -0
- package/lib/home/home-base.component.d.ts +34 -0
- package/lib/home/home.desktop.component.d.ts +56 -0
- package/lib/home/home.mobile.component.d.ts +38 -0
- package/lib/home/notifications/notifications.component.d.ts +28 -0
- package/lib/home/options/options.component.d.ts +46 -0
- package/lib/home/outofoffice/outofoffice.component.d.ts +19 -0
- package/lib/home/search.service.d.ts +23 -0
- package/lib/home/sign/sign.component.d.ts +17 -0
- package/lib/home/tools.component.d.ts +36 -0
- package/lib/impersonate/impersonate.component.d.ts +27 -0
- package/lib/mobile.module.d.ts +25 -0
- package/lib/modules/chart.module.d.ts +7 -0
- package/lib/modules/circular-gauge.module.d.ts +7 -0
- package/lib/modules/date.adapter.d.ts +13 -0
- package/lib/modules/datepicker.intl.d.ts +30 -0
- package/lib/modules/diagram.module.d.ts +8 -0
- package/lib/modules/gantt.module.d.ts +7 -0
- package/lib/modules/grid.module.d.ts +7 -0
- package/lib/modules/material.module.d.ts +45 -0
- package/lib/modules/paginator.intl.d.ts +14 -0
- package/lib/modules/pivot.module.d.ts +7 -0
- package/lib/modules/schedule.module.d.ts +7 -0
- package/lib/modules/spreadsheet.module.d.ts +8 -0
- package/lib/modules/stepper.intl.d.ts +10 -0
- package/lib/modules/texteditor.module.d.ts +8 -0
- package/lib/notifications/filter.component.d.ts +9 -0
- package/lib/notifications/notifications-table.component.d.ts +32 -0
- package/lib/notifications/notifications.component-base.d.ts +12 -0
- package/lib/notifications/notifications.mobile.component.d.ts +8 -0
- package/lib/notifications/notifications.pane.component.d.ts +8 -0
- package/lib/notifications/notifications.service.d.ts +24 -0
- package/lib/notifications/types/commented.notification.d.ts +26 -0
- package/lib/notifications/types/cube-anomaly.notification.d.ts +29 -0
- package/lib/notifications/types/escalated.notification.d.ts +25 -0
- package/lib/notifications/types/liked.notification.d.ts +25 -0
- package/lib/notifications/types/long-running-task.notification.d.ts +21 -0
- package/lib/notifications/types/notification-base.d.ts +20 -0
- package/lib/notifications/types/nudge.notification.d.ts +23 -0
- package/lib/notifications/types/state-changed.notification.d.ts +22 -0
- package/lib/notifications/types/tagged.notification.d.ts +26 -0
- package/lib/notifications/types/text.notification.d.ts +13 -0
- package/lib/notifications/types/upcoming-event.notification.d.ts +20 -0
- package/lib/options/options.component.d.ts +66 -0
- package/lib/options/options.service.d.ts +14 -0
- package/lib/reports/arguments-component.d.ts +27 -0
- package/lib/reports/cube/documents.component.d.ts +34 -0
- package/lib/reports/cube/grid-documents.component.d.ts +28 -0
- package/lib/reports/cube/table-documents.component.d.ts +28 -0
- package/lib/reports/cube/usage-args.component.d.ts +21 -0
- package/lib/reports/cube/usage-base.d.ts +72 -0
- package/lib/reports/cube/usage-chart.component.d.ts +62 -0
- package/lib/reports/cube/usage-pivot.component.d.ts +62 -0
- package/lib/reports/cube/usage.component.d.ts +16 -0
- package/lib/reports/report-ref.d.ts +27 -0
- package/lib/reports/report-viewer.component.d.ts +48 -0
- package/lib/reports/report.mobile.component.d.ts +45 -0
- package/lib/reports/report.pane.component.d.ts +34 -0
- package/lib/reports/reports-menu.component.d.ts +12 -0
- package/lib/reports/substitution/substitution.component.d.ts +23 -0
- package/lib/reports/table/table-view.component.d.ts +19 -0
- package/lib/reports/tasks/tasks.component.d.ts +68 -0
- package/lib/routes.desktop.d.ts +2 -0
- package/lib/routes.mobile.d.ts +2 -0
- package/lib/scheduler/schedule.component.d.ts +43 -0
- package/lib/scheduler/scheduler.mobile.component.d.ts +14 -0
- package/lib/scheduler/scheduler.pane.component.d.ts +20 -0
- package/lib/shared.module.d.ts +187 -0
- package/lib/system.module.d.ts +32 -0
- package/lib/views/cube/chart.component.d.ts +39 -0
- package/lib/views/cube/cube-base.d.ts +46 -0
- package/lib/views/cube/explore.component.d.ts +43 -0
- package/lib/views/cube/matrix.component.d.ts +51 -0
- package/lib/views/cube/parallel.component.d.ts +32 -0
- package/lib/views/cube/pivot.component.d.ts +34 -0
- package/lib/views/cube/sum.component.d.ts +33 -0
- package/lib/views/cube/view.component.d.ts +40 -0
- package/lib/views/document-view-ref.d.ts +18 -0
- package/lib/views/timeline/timeline.component.exp.d.ts +66 -0
- package/lib/views/view-item.component.d.ts +28 -0
- package/lib/views/views.component.d.ts +14 -0
- package/lib/views/views.mobile.component.d.ts +10 -0
- package/lib/views/views.pane.component.d.ts +12 -0
- package/package.json +78 -78
- package/public-api.d.ts +144 -0
- package/LICENSE.md +0 -1
- package/karma.conf.js +0 -44
- package/ng-package.json +0 -11
- package/src/lib/admin/admin-dismiss.service.ts +0 -24
- package/src/lib/admin/admin-menu.component.html +0 -18
- package/src/lib/admin/admin-menu.component.ts +0 -20
- package/src/lib/admin/core/ace.input.ts +0 -133
- package/src/lib/admin/core/color-picker.input.scss +0 -17
- package/src/lib/admin/core/color-picker.input.ts +0 -175
- package/src/lib/admin/core/search.input.ts +0 -32
- package/src/lib/admin/diff/_configuration-diff-theme.scss +0 -72
- package/src/lib/admin/diff/configuration-diff.component.html +0 -24
- package/src/lib/admin/diff/configuration-diff.component.scss +0 -16
- package/src/lib/admin/diff/configuration-diff.component.ts +0 -552
- package/src/lib/admin/document-trace/_timeline-theme.scss +0 -70
- package/src/lib/admin/document-trace/document-trace.component.html +0 -55
- package/src/lib/admin/document-trace/document-trace.component.scss +0 -10
- package/src/lib/admin/document-trace/document-trace.component.ts +0 -471
- package/src/lib/admin/document-trace/reassign.dialog.html +0 -24
- package/src/lib/admin/document-trace/reassign.dialog.ts +0 -34
- package/src/lib/admin/document-trace/timeline.ts +0 -45
- package/src/lib/admin/document-trace/trace-element.component.html +0 -57
- package/src/lib/admin/document-trace/trace-element.component.scss +0 -21
- package/src/lib/admin/document-trace/trace-element.component.ts +0 -106
- package/src/lib/admin/form/form.resolve.service.ts +0 -13
- package/src/lib/admin/form/form.service.ts +0 -23
- package/src/lib/admin/form/workflow/node-ref.ts +0 -8
- package/src/lib/admin/form/workflow/node.component.html +0 -36
- package/src/lib/admin/form/workflow/node.component.scss +0 -4
- package/src/lib/admin/form/workflow/node.component.ts +0 -129
- package/src/lib/admin/form/workflow/role-node.component.html +0 -40
- package/src/lib/admin/form/workflow/role-node.component.ts +0 -66
- package/src/lib/admin/form/workflow/tools.component.exp.ts +0 -13
- package/src/lib/admin/form/workflow/tools.component.html +0 -1
- package/src/lib/admin/form/workflow/workflow.component.html +0 -73
- package/src/lib/admin/form/workflow/workflow.component.scss +0 -52
- package/src/lib/admin/form/workflow/workflow.component.ts +0 -400
- package/src/lib/admin/indices/manage-cube-index.component.html +0 -35
- package/src/lib/admin/indices/manage-cube-index.component.scss +0 -16
- package/src/lib/admin/indices/manage-cube-index.component.ts +0 -155
- package/src/lib/admin/patterns/patterns.component.html +0 -70
- package/src/lib/admin/patterns/patterns.component.ts +0 -166
- package/src/lib/admin/permissions/permissions.component.html +0 -21
- package/src/lib/admin/permissions/permissions.component.scss +0 -7
- package/src/lib/admin/permissions/permissions.component.ts +0 -89
- package/src/lib/admin/positions/positions-popup.component.html +0 -23
- package/src/lib/admin/positions/positions-popup.component.ts +0 -68
- package/src/lib/admin/positions/positions.component.html +0 -148
- package/src/lib/admin/positions/positions.component.scss +0 -14
- package/src/lib/admin/positions/positions.component.ts +0 -463
- package/src/lib/admin/profiler/profiler.component.html +0 -109
- package/src/lib/admin/profiler/profiler.component.scss +0 -22
- package/src/lib/admin/profiler/profiler.component.ts +0 -268
- package/src/lib/admin/utility-ref.ts +0 -44
- package/src/lib/admin/utility-wrapper.component.ts +0 -52
- package/src/lib/admin/utility.pane.component.ts +0 -49
- package/src/lib/app.component.ts +0 -89
- package/src/lib/bizdoc.module.ts +0 -71
- package/src/lib/browse/_browse-theme.scss +0 -86
- package/src/lib/browse/browse-items.component.html +0 -171
- package/src/lib/browse/browse-items.component.scss +0 -52
- package/src/lib/browse/browse-items.component.ts +0 -455
- package/src/lib/browse/browse.mobile.component.html +0 -33
- package/src/lib/browse/browse.mobile.component.ts +0 -90
- package/src/lib/browse/browse.pane.component.html +0 -43
- package/src/lib/browse/browse.pane.component.scss +0 -4
- package/src/lib/browse/browse.pane.component.ts +0 -141
- package/src/lib/browse/expanded-item/expanded-item.component.html +0 -38
- package/src/lib/browse/expanded-item/expanded-item.component.scss +0 -35
- package/src/lib/browse/expanded-item/expanded-item.component.ts +0 -333
- package/src/lib/browse/filter/filter.component.html +0 -50
- package/src/lib/browse/filter/filter.component.scss +0 -10
- package/src/lib/browse/filter/filter.component.ts +0 -156
- package/src/lib/browse/folders-menu.component.html +0 -20
- package/src/lib/browse/folders-menu.component.scss +0 -15
- package/src/lib/browse/folders-menu.component.ts +0 -42
- package/src/lib/chat/_chat-theme.scss +0 -95
- package/src/lib/chat/chat-info.ts +0 -76
- package/src/lib/chat/chat-pool.component.exp.ts +0 -117
- package/src/lib/chat/chat-pool.component.html +0 -13
- package/src/lib/chat/chat-pool.component.scss +0 -10
- package/src/lib/chat/chat.mobile.component.html +0 -6
- package/src/lib/chat/chat.mobile.component.scss +0 -8
- package/src/lib/chat/chat.mobile.component.ts +0 -18
- package/src/lib/chat/chat.service.ts +0 -128
- package/src/lib/chat/contacts.component.html +0 -37
- package/src/lib/chat/contacts.component.scss +0 -49
- package/src/lib/chat/contacts.component.ts +0 -88
- package/src/lib/chat/contacts.pane.component.ts +0 -25
- package/src/lib/chat/conversation.component.html +0 -28
- package/src/lib/chat/conversation.component.scss +0 -14
- package/src/lib/chat/conversation.component.ts +0 -186
- package/src/lib/chat/conversation.pane.component.ts +0 -46
- package/src/lib/compose/_compose-theme.scss +0 -63
- package/src/lib/compose/action/action-picker.component.html +0 -25
- package/src/lib/compose/action/action-picker.component.scss +0 -4
- package/src/lib/compose/action/action-picker.component.ts +0 -72
- package/src/lib/compose/action/action-ref.ts +0 -19
- package/src/lib/compose/action/action.base.ts +0 -58
- package/src/lib/compose/action/action.dialog.html +0 -17
- package/src/lib/compose/action/action.dialog.scss +0 -1
- package/src/lib/compose/action/action.dialog.ts +0 -57
- package/src/lib/compose/action/action.pane.dialog.exp.ts +0 -77
- package/src/lib/compose/action/action.pane.dialog.html +0 -12
- package/src/lib/compose/action/assign-action.component.html +0 -35
- package/src/lib/compose/action/assign-action.component.ts +0 -77
- package/src/lib/compose/action/return-action.component.html +0 -13
- package/src/lib/compose/action/return-action.component.ts +0 -38
- package/src/lib/compose/attachments/attachments.component.html +0 -23
- package/src/lib/compose/attachments/attachments.component.scss +0 -21
- package/src/lib/compose/attachments/attachments.component.ts +0 -114
- package/src/lib/compose/attachments/preview/attachment-preview.component.html +0 -15
- package/src/lib/compose/attachments/preview/attachment-preview.component.scss +0 -36
- package/src/lib/compose/attachments/preview/attachment-preview.component.ts +0 -140
- package/src/lib/compose/attachments/progress-button.directive.ts +0 -18
- package/src/lib/compose/can-deactivate-changes.service.ts +0 -22
- package/src/lib/compose/comments/_comments-theme.scss +0 -82
- package/src/lib/compose/comments/comment.component.html +0 -36
- package/src/lib/compose/comments/comment.component.ts +0 -160
- package/src/lib/compose/comments/comments.component.html +0 -27
- package/src/lib/compose/comments/comments.component.scss +0 -33
- package/src/lib/compose/comments/comments.component.ts +0 -220
- package/src/lib/compose/comments/comments.pane.component.ts +0 -41
- package/src/lib/compose/comments/edit-comment.component.html +0 -3
- package/src/lib/compose/comments/edit-comment.component.ts +0 -35
- package/src/lib/compose/comments/edits.component.html +0 -7
- package/src/lib/compose/comments/edits.component.ts +0 -33
- package/src/lib/compose/comments/quick-comment.component.exp.ts +0 -60
- package/src/lib/compose/comments/quick-comment.component.html +0 -5
- package/src/lib/compose/comments/quick-comment.component.scss +0 -11
- package/src/lib/compose/comments/votes.component.html +0 -7
- package/src/lib/compose/comments/votes.component.ts +0 -38
- package/src/lib/compose/compose-resolve.service.ts +0 -42
- package/src/lib/compose/compose.mobile.component.html +0 -67
- package/src/lib/compose/compose.mobile.component.scss +0 -14
- package/src/lib/compose/compose.mobile.component.ts +0 -97
- package/src/lib/compose/compose.pane.component.html +0 -67
- package/src/lib/compose/compose.pane.component.scss +0 -6
- package/src/lib/compose/compose.pane.component.ts +0 -187
- package/src/lib/compose/copy/copy.dialog.html +0 -21
- package/src/lib/compose/copy/copy.dialog.ts +0 -40
- package/src/lib/compose/dismiss.service.ts +0 -26
- package/src/lib/compose/document-resolver.service.ts +0 -13
- package/src/lib/compose/document.component.html +0 -5
- package/src/lib/compose/document.component.ts +0 -41
- package/src/lib/compose/document.mobile.component.ts +0 -20
- package/src/lib/compose/document.pane.component.ts +0 -22
- package/src/lib/compose/events/events.component.html +0 -6
- package/src/lib/compose/events/events.component.ts +0 -21
- package/src/lib/compose/form-ref.ts +0 -53
- package/src/lib/compose/form-selector/form-selector.sheet.html +0 -10
- package/src/lib/compose/form-selector/form-selector.sheet.ts +0 -74
- package/src/lib/compose/form.component.html +0 -13
- package/src/lib/compose/form.component.ts +0 -446
- package/src/lib/compose/maps/maps.component.html +0 -3
- package/src/lib/compose/maps/maps.component.ts +0 -22
- package/src/lib/compose/new-menu.component.html +0 -13
- package/src/lib/compose/new-menu.component.scss +0 -11
- package/src/lib/compose/new-menu.component.ts +0 -106
- package/src/lib/compose/privilage.directive.ts +0 -43
- package/src/lib/compose/recipient-resolver.service.ts +0 -15
- package/src/lib/compose/save-changes.dialog.html +0 -13
- package/src/lib/compose/save-changes.dialog.ts +0 -10
- package/src/lib/compose/state.component.ts +0 -29
- package/src/lib/compose/tag/tags.component.html +0 -22
- package/src/lib/compose/tag/tags.component.scss +0 -1
- package/src/lib/compose/tag/tags.component.ts +0 -83
- package/src/lib/compose/trace/flow.component.html +0 -19
- package/src/lib/compose/trace/flow.component.scss +0 -7
- package/src/lib/compose/trace/flow.component.ts +0 -695
- package/src/lib/compose/trace/people.component.ts +0 -33
- package/src/lib/compose/trace/trace.base.ts +0 -72
- package/src/lib/compose/trace/trace.component.html +0 -57
- package/src/lib/compose/trace/trace.component.scss +0 -21
- package/src/lib/compose/trace/trace.component.ts +0 -368
- package/src/lib/compose/trace/trace.pane.component.html +0 -3
- package/src/lib/compose/trace/trace.pane.component.scss +0 -5
- package/src/lib/compose/trace/trace.pane.component.ts +0 -47
- package/src/lib/compose/version-compare/_compare-theme.scss +0 -147
- package/src/lib/compose/version-compare/version-compare.component.ts +0 -49
- package/src/lib/compose/version-compare/version-compare.directive.ts +0 -292
- package/src/lib/compose/version-compare/version.pane.component.html +0 -19
- package/src/lib/compose/version-compare/version.pane.component.scss +0 -8
- package/src/lib/compose/version-compare/version.pane.component.ts +0 -53
- package/src/lib/core/NgComponentOutlet.ts +0 -31
- package/src/lib/core/account.service.ts +0 -30
- package/src/lib/core/animated-icon/animated-icon.directive.html +0 -3
- package/src/lib/core/animated-icon/animated-icon.directive.scss +0 -12
- package/src/lib/core/animated-icon/animated-icon.directive.ts +0 -41
- package/src/lib/core/animations.ts +0 -207
- package/src/lib/core/authentication.ts +0 -7
- package/src/lib/core/avatar/_avatar-theme.scss +0 -60
- package/src/lib/core/avatar/avatar.component.html +0 -6
- package/src/lib/core/avatar/avatar.component.ts +0 -108
- package/src/lib/core/base.ts +0 -47
- package/src/lib/core/can-activate.service.exp.ts +0 -31
- package/src/lib/core/colors.ts +0 -322
- package/src/lib/core/component-factory-resolver.ts +0 -67
- package/src/lib/core/configuration.ts +0 -121
- package/src/lib/core/controls/_daterange-theme.scss +0 -16
- package/src/lib/core/controls/address.input.ts +0 -163
- package/src/lib/core/controls/auto-complete.input.ts +0 -218
- package/src/lib/core/controls/combination-picker-body.html +0 -34
- package/src/lib/core/controls/combination-picker-body.scss +0 -40
- package/src/lib/core/controls/combination-picker-body.ts +0 -194
- package/src/lib/core/controls/combination-picker.html +0 -6
- package/src/lib/core/controls/combination-picker.scss +0 -9
- package/src/lib/core/controls/combination-picker.ts +0 -243
- package/src/lib/core/controls/combination-pool.html +0 -10
- package/src/lib/core/controls/combination-pool.scss +0 -35
- package/src/lib/core/controls/combination-pool.ts +0 -92
- package/src/lib/core/controls/file.input.html +0 -48
- package/src/lib/core/controls/file.input.scss +0 -40
- package/src/lib/core/controls/file.input.ts +0 -363
- package/src/lib/core/controls/select.input.ts +0 -211
- package/src/lib/core/controls/time-picker.html +0 -4
- package/src/lib/core/controls/time-picker.ts +0 -199
- package/src/lib/core/controls/timespan.input.ts +0 -175
- package/src/lib/core/datasource.service.ts +0 -80
- package/src/lib/core/decorators.ts +0 -56
- package/src/lib/core/firebase.service.ts +0 -55
- package/src/lib/core/functions.ts +0 -241
- package/src/lib/core/guide/_guide-theme.scss +0 -197
- package/src/lib/core/guide/guide.component.html +0 -20
- package/src/lib/core/guide/guide.component.ts +0 -210
- package/src/lib/core/guide/guide.service.ts +0 -98
- package/src/lib/core/http.interceptor.ts +0 -80
- package/src/lib/core/hub.service.ts +0 -202
- package/src/lib/core/identity/identity.component.html +0 -2
- package/src/lib/core/identity/identity.component.ts +0 -57
- package/src/lib/core/info/attachment-info.service.ts +0 -48
- package/src/lib/core/info/document-info.service.ts +0 -14
- package/src/lib/core/info/location-info.component.scss +0 -13
- package/src/lib/core/info/location-info.component.ts +0 -64
- package/src/lib/core/info/map-info.ts +0 -33
- package/src/lib/core/layout/autocomplete.field.ts +0 -41
- package/src/lib/core/layout/checkbox.field.ts +0 -21
- package/src/lib/core/layout/checkbox.scss +0 -13
- package/src/lib/core/layout/checkbox.ts +0 -21
- package/src/lib/core/layout/date-range.field.ts +0 -32
- package/src/lib/core/layout/date.field.ts +0 -26
- package/src/lib/core/layout/expression.field.ts +0 -26
- package/src/lib/core/layout/file.field.ts +0 -27
- package/src/lib/core/layout/html.field.ts +0 -28
- package/src/lib/core/layout/input.base.ts +0 -12
- package/src/lib/core/layout/input.field.ts +0 -43
- package/src/lib/core/layout/layout.component.scss +0 -9
- package/src/lib/core/layout/layout.component.ts +0 -189
- package/src/lib/core/layout/numeric.field.ts +0 -24
- package/src/lib/core/layout/select.field.ts +0 -52
- package/src/lib/core/layout/switch.field.ts +0 -21
- package/src/lib/core/layout/textarea.field.ts +0 -21
- package/src/lib/core/layout/timespan.field.ts +0 -25
- package/src/lib/core/lottie-animation.ts +0 -37
- package/src/lib/core/mailbox.service.ts +0 -453
- package/src/lib/core/models.ts +0 -681
- package/src/lib/core/none.component.scss +0 -26
- package/src/lib/core/none.component.ts +0 -28
- package/src/lib/core/pipes/action.pipe.ts +0 -18
- package/src/lib/core/pipes/calendar.pipe.ts +0 -84
- package/src/lib/core/pipes/date-format.pipe.ts +0 -12
- package/src/lib/core/pipes/daterange.pipe.ts +0 -45
- package/src/lib/core/pipes/difference.pipe.ts +0 -9
- package/src/lib/core/pipes/duration-format.pipe.ts +0 -42
- package/src/lib/core/pipes/duration.pipe.ts +0 -13
- package/src/lib/core/pipes/form.pipe.ts +0 -19
- package/src/lib/core/pipes/join.pipe.ts +0 -10
- package/src/lib/core/pipes/role.pipe.ts +0 -19
- package/src/lib/core/pipes/sanitize-html.pipe.ts +0 -10
- package/src/lib/core/pipes/sort.pipe.ts +0 -34
- package/src/lib/core/pipes/state.pipe.ts +0 -19
- package/src/lib/core/pipes/time-ago.pipe.ts +0 -59
- package/src/lib/core/pipes/translate.pipe.ts +0 -22
- package/src/lib/core/pipes/type-value.pipe.ts +0 -37
- package/src/lib/core/pipes/user-name.pipe.ts +0 -14
- package/src/lib/core/popup/_popup-theme.scss +0 -363
- package/src/lib/core/popup/popup-ref.ts +0 -19
- package/src/lib/core/popup/popup.component.html +0 -6
- package/src/lib/core/popup/popup.component.ts +0 -40
- package/src/lib/core/popup/popup.service.ts +0 -156
- package/src/lib/core/popup/tooltip.directive.ts +0 -58
- package/src/lib/core/prompt/ask/ask.dialog.html +0 -6
- package/src/lib/core/prompt/ask/ask.dialog.ts +0 -35
- package/src/lib/core/prompt/mask/mask.component.html +0 -1
- package/src/lib/core/prompt/mask/mask.component.scss +0 -14
- package/src/lib/core/prompt/mask/mask.component.ts +0 -15
- package/src/lib/core/prompt.service.ts +0 -81
- package/src/lib/core/router.ts +0 -29
- package/src/lib/core/session.service.ts +0 -255
- package/src/lib/core/slots/_slots-theme.scss +0 -140
- package/src/lib/core/slots/extended-tab.component.exp.ts +0 -35
- package/src/lib/core/slots/extended-tab.component.html +0 -0
- package/src/lib/core/slots/intro.pane.component.exp.ts +0 -23
- package/src/lib/core/slots/intro.pane.component.html +0 -22
- package/src/lib/core/slots/intro.pane.component.scss +0 -8
- package/src/lib/core/slots/pane-ref.ts +0 -162
- package/src/lib/core/slots/router.directive.ts +0 -55
- package/src/lib/core/slots/router.service.ts +0 -54
- package/src/lib/core/slots/slot.component.exp.ts +0 -49
- package/src/lib/core/slots/slot.component.html +0 -15
- package/src/lib/core/slots/slot.component.scss +0 -18
- package/src/lib/core/slots/slots.component.html +0 -67
- package/src/lib/core/slots/slots.component.scss +0 -163
- package/src/lib/core/slots/slots.component.ts +0 -1171
- package/src/lib/core/tagging/documents.component.html +0 -11
- package/src/lib/core/tagging/documents.component.ts +0 -19
- package/src/lib/core/tagging/edit-input.component.html +0 -41
- package/src/lib/core/tagging/edit-input.component.scss +0 -21
- package/src/lib/core/tagging/edit-input.component.ts +0 -211
- package/src/lib/core/tagging/emoji.component.ts +0 -23
- package/src/lib/core/tagging/tagging-item.directive.ts +0 -34
- package/src/lib/core/tagging/tagging.component-base.ts +0 -29
- package/src/lib/core/tagging/tagging.component.scss +0 -22
- package/src/lib/core/tagging/tagging.directive.ts +0 -130
- package/src/lib/core/tagging/tagging.pipe.ts +0 -76
- package/src/lib/core/tagging/users.component.html +0 -13
- package/src/lib/core/tagging/users.component.ts +0 -28
- package/src/lib/core/translate.service.ts +0 -103
- package/src/lib/core/translations.ts +0 -1104
- package/src/lib/core/window-title.service.ts +0 -54
- package/src/lib/cube/accum/accum.component.html +0 -16
- package/src/lib/cube/accum/accum.component.ts +0 -265
- package/src/lib/cube/chart/chart.component.html +0 -32
- package/src/lib/cube/chart/chart.component.ts +0 -329
- package/src/lib/cube/cube-info.service.ts +0 -135
- package/src/lib/cube/cube-menu.component.html +0 -13
- package/src/lib/cube/cube-menu.component.ts +0 -18
- package/src/lib/cube/cube-view.component.html +0 -66
- package/src/lib/cube/cube-view.component.ts +0 -186
- package/src/lib/cube/cube.service.ts +0 -483
- package/src/lib/cube/declarations.ts +0 -24
- package/src/lib/cube/explore/document-item.component.ts +0 -28
- package/src/lib/cube/explore/explore-item.component.scss +0 -4
- package/src/lib/cube/explore/explore-item.component.ts +0 -23
- package/src/lib/cube/explore/explore-items.component.html +0 -25
- package/src/lib/cube/explore/explore-items.component.scss +0 -7
- package/src/lib/cube/explore/explore-items.component.ts +0 -185
- package/src/lib/cube/explore/explore.pane.component.html +0 -12
- package/src/lib/cube/explore/explore.pane.component.ts +0 -75
- package/src/lib/cube/explore/item-resolver.service.ts +0 -24
- package/src/lib/cube/explore/item.pane.component.html +0 -3
- package/src/lib/cube/explore/item.pane.component.ts +0 -23
- package/src/lib/cube/filter/filter-tags.component.exp.ts +0 -70
- package/src/lib/cube/filter/filter-tags.component.html +0 -11
- package/src/lib/cube/filter/filter-tags.component.scss +0 -0
- package/src/lib/cube/filter/filter-tags.component.spec.ts +0 -25
- package/src/lib/cube/filter/filter.component.html +0 -25
- package/src/lib/cube/filter/filter.component.scss +0 -8
- package/src/lib/cube/filter/filter.component.ts +0 -116
- package/src/lib/cube/grid/grid.component.html +0 -29
- package/src/lib/cube/grid/grid.component.scss +0 -10
- package/src/lib/cube/grid/grid.component.ts +0 -223
- package/src/lib/cube/grid/spreadsheet.component.ts +0 -380
- package/src/lib/cube/matrix/_matrix.theme.scss +0 -86
- package/src/lib/cube/matrix/matrix.base.ts +0 -149
- package/src/lib/cube/matrix/matrix.mobile.component.html +0 -28
- package/src/lib/cube/matrix/matrix.mobile.component.ts +0 -60
- package/src/lib/cube/matrix/matrix.pane.component.html +0 -34
- package/src/lib/cube/matrix/matrix.pane.component.scss +0 -10
- package/src/lib/cube/matrix/matrix.pane.component.ts +0 -71
- package/src/lib/cube/matrix/popup.component.html +0 -32
- package/src/lib/cube/matrix/popup.component.scss +0 -7
- package/src/lib/cube/matrix/popup.component.ts +0 -57
- package/src/lib/cube/matrix/table.component.html +0 -43
- package/src/lib/cube/matrix/table.component.scss +0 -21
- package/src/lib/cube/matrix/table.component.ts +0 -514
- package/src/lib/cube/parallel/item.ts +0 -47
- package/src/lib/cube/parallel/parallel.component.html +0 -17
- package/src/lib/cube/parallel/parallel.component.scss +0 -13
- package/src/lib/cube/parallel/parallel.component.ts +0 -167
- package/src/lib/cube/pivot/pivot.component.html +0 -14
- package/src/lib/cube/pivot/pivot.component.ts +0 -514
- package/src/lib/cube/sum/_sum.theme.scss +0 -63
- package/src/lib/cube/sum/sum.component.html +0 -60
- package/src/lib/cube/sum/sum.component.scss +0 -94
- package/src/lib/cube/sum/sum.component.ts +0 -438
- package/src/lib/cube/view-base.ts +0 -82
- package/src/lib/cube/view.mobile.component.html +0 -38
- package/src/lib/cube/view.mobile.component.scss +0 -9
- package/src/lib/cube/view.mobile.component.ts +0 -115
- package/src/lib/cube/view.pane.component.html +0 -25
- package/src/lib/cube/view.pane.component.scss +0 -12
- package/src/lib/cube/view.pane.component.ts +0 -76
- package/src/lib/dashboard/_table.widget.scss +0 -19
- package/src/lib/dashboard/actions/actions.widget.html +0 -6
- package/src/lib/dashboard/actions/actions.widget.ts +0 -118
- package/src/lib/dashboard/cube/accum-cube.widget.html +0 -15
- package/src/lib/dashboard/cube/accum-cube.widget.ts +0 -154
- package/src/lib/dashboard/cube/cube-analysis.base.ts +0 -113
- package/src/lib/dashboard/cube/cube-analysis.widget.ts +0 -44
- package/src/lib/dashboard/cube/cube-chart.widget.html +0 -7
- package/src/lib/dashboard/cube/cube-chart.widget.ts +0 -144
- package/src/lib/dashboard/cube/documents.widget.html +0 -19
- package/src/lib/dashboard/cube/documents.widget.ts +0 -57
- package/src/lib/dashboard/cube/filter/filter.component.html +0 -3
- package/src/lib/dashboard/cube/filter/filter.component.ts +0 -51
- package/src/lib/dashboard/cube/gauge.component.exp.ts +0 -18
- package/src/lib/dashboard/dashboard.component.html +0 -18
- package/src/lib/dashboard/dashboard.component.scss +0 -36
- package/src/lib/dashboard/dashboard.component.ts +0 -45
- package/src/lib/dashboard/dashboard.pane.component.ts +0 -19
- package/src/lib/dashboard/recents/recents.widget.html +0 -32
- package/src/lib/dashboard/recents/recents.widget.scss +0 -9
- package/src/lib/dashboard/recents/recents.widget.ts +0 -89
- package/src/lib/dashboard/score/activity.widget.html +0 -9
- package/src/lib/dashboard/score/activity.widget.ts +0 -164
- package/src/lib/dashboard/score/compare-departments.widget.html +0 -8
- package/src/lib/dashboard/score/compare-departments.widget.ts +0 -210
- package/src/lib/dashboard/score/peers-performance.widget.html +0 -23
- package/src/lib/dashboard/score/peers-performance.widget.ts +0 -254
- package/src/lib/dashboard/score/pending-results.widget.html +0 -29
- package/src/lib/dashboard/score/pending-results.widget.ts +0 -57
- package/src/lib/dashboard/score/personal-score.widget.html +0 -18
- package/src/lib/dashboard/score/personal-score.widget.ts +0 -225
- package/src/lib/dashboard/widget-item.component.ts +0 -90
- package/src/lib/dashboard/widget-ref.ts +0 -20
- package/src/lib/desktop.module.ts +0 -98
- package/src/lib/home/_home-theme.scss +0 -156
- package/src/lib/home/about/about.dialog.html +0 -19
- package/src/lib/home/about/about.dialog.ts +0 -18
- package/src/lib/home/home-base.component.ts +0 -100
- package/src/lib/home/home.desktop.component.html +0 -87
- package/src/lib/home/home.desktop.component.scss +0 -66
- package/src/lib/home/home.desktop.component.ts +0 -188
- package/src/lib/home/home.mobile.component.html +0 -81
- package/src/lib/home/home.mobile.component.scss +0 -49
- package/src/lib/home/home.mobile.component.ts +0 -105
- package/src/lib/home/notifications/notifications.component.html +0 -18
- package/src/lib/home/notifications/notifications.component.scss +0 -36
- package/src/lib/home/notifications/notifications.component.ts +0 -55
- package/src/lib/home/options/options.component.html +0 -41
- package/src/lib/home/options/options.component.scss +0 -16
- package/src/lib/home/options/options.component.ts +0 -95
- package/src/lib/home/outofoffice/outofoffice.component.html +0 -5
- package/src/lib/home/outofoffice/outofoffice.component.scss +0 -10
- package/src/lib/home/outofoffice/outofoffice.component.ts +0 -33
- package/src/lib/home/progress-bar.directive.exp.ts +0 -24
- package/src/lib/home/search.service.ts +0 -87
- package/src/lib/home/sign/sign.component.html +0 -15
- package/src/lib/home/sign/sign.component.ts +0 -42
- package/src/lib/home/submenu.directive.exp.ts +0 -43
- package/src/lib/home/tools.component.html +0 -27
- package/src/lib/home/tools.component.scss +0 -15
- package/src/lib/home/tools.component.ts +0 -72
- package/src/lib/home/welcome/welcome.dialog.exp.ts +0 -35
- package/src/lib/home/welcome/welcome.dialog.html +0 -14
- package/src/lib/impersonate/impersonate.component.html +0 -17
- package/src/lib/impersonate/impersonate.component.scss +0 -3
- package/src/lib/impersonate/impersonate.component.spec.ts +0 -24
- package/src/lib/impersonate/impersonate.component.ts +0 -60
- package/src/lib/mobile.module.ts +0 -39
- package/src/lib/modules/chart.module.ts +0 -37
- package/src/lib/modules/circular-gauge.module.ts +0 -11
- package/src/lib/modules/date.adapter.ts +0 -31
- package/src/lib/modules/datepicker.intl.ts +0 -35
- package/src/lib/modules/diagram.module.ts +0 -20
- package/src/lib/modules/gantt.module.ts +0 -12
- package/src/lib/modules/grid.module.ts +0 -16
- package/src/lib/modules/material.module.ts +0 -104
- package/src/lib/modules/paginator.intl.ts +0 -16
- package/src/lib/modules/pivot.module.ts +0 -13
- package/src/lib/modules/schedule.module.ts +0 -12
- package/src/lib/modules/spreadsheet.module.ts +0 -17
- package/src/lib/modules/stepper.intl.ts +0 -12
- package/src/lib/modules/texteditor.module.ts +0 -16
- package/src/lib/notifications/filter.component.html +0 -6
- package/src/lib/notifications/filter.component.ts +0 -16
- package/src/lib/notifications/notifications-table.component.html +0 -54
- package/src/lib/notifications/notifications-table.component.scss +0 -14
- package/src/lib/notifications/notifications-table.component.ts +0 -94
- package/src/lib/notifications/notifications.component-base.ts +0 -49
- package/src/lib/notifications/notifications.mobile.component.ts +0 -13
- package/src/lib/notifications/notifications.pane.component.ts +0 -16
- package/src/lib/notifications/notifications.service.ts +0 -66
- package/src/lib/notifications/types/commented.notification.html +0 -14
- package/src/lib/notifications/types/commented.notification.ts +0 -51
- package/src/lib/notifications/types/cube-anomaly.notification.ts +0 -51
- package/src/lib/notifications/types/escalated.notification.ts +0 -36
- package/src/lib/notifications/types/liked.notification.ts +0 -49
- package/src/lib/notifications/types/long-running-task.notification.ts +0 -23
- package/src/lib/notifications/types/notification-base.ts +0 -37
- package/src/lib/notifications/types/nudge.notification.ts +0 -32
- package/src/lib/notifications/types/state-changed.notification.ts +0 -27
- package/src/lib/notifications/types/tagged.notification.ts +0 -46
- package/src/lib/notifications/types/text.notification.ts +0 -13
- package/src/lib/notifications/types/upcoming-event.notification.ts +0 -25
- package/src/lib/options/options.component.html +0 -149
- package/src/lib/options/options.component.scss +0 -19
- package/src/lib/options/options.component.ts +0 -244
- package/src/lib/options/options.service.ts +0 -30
- package/src/lib/reports/arguments-component.ts +0 -73
- package/src/lib/reports/cube/grid-documents.component.html +0 -25
- package/src/lib/reports/cube/grid-documents.component.ts +0 -85
- package/src/lib/reports/cube/table-documents.component.css +0 -18
- package/src/lib/reports/cube/table-documents.component.html +0 -30
- package/src/lib/reports/cube/table-documents.component.ts +0 -65
- package/src/lib/reports/cube/usage-args.component.html +0 -3
- package/src/lib/reports/cube/usage-args.component.ts +0 -55
- package/src/lib/reports/cube/usage-base.ts +0 -112
- package/src/lib/reports/cube/usage-browse.component.exp.ts +0 -93
- package/src/lib/reports/cube/usage-browse.component.html +0 -27
- package/src/lib/reports/cube/usage-browse.component.scss +0 -24
- package/src/lib/reports/cube/usage-chart.component.html +0 -11
- package/src/lib/reports/cube/usage-chart.component.ts +0 -387
- package/src/lib/reports/cube/usage-pivot.component.html +0 -19
- package/src/lib/reports/cube/usage-pivot.component.ts +0 -252
- package/src/lib/reports/report-ref.ts +0 -42
- package/src/lib/reports/report-viewer.component.html +0 -2
- package/src/lib/reports/report-viewer.component.scss +0 -12
- package/src/lib/reports/report-viewer.component.ts +0 -162
- package/src/lib/reports/report.mobile.component.html +0 -16
- package/src/lib/reports/report.mobile.component.scss +0 -7
- package/src/lib/reports/report.mobile.component.ts +0 -107
- package/src/lib/reports/report.pane.component.html +0 -8
- package/src/lib/reports/report.pane.component.scss +0 -9
- package/src/lib/reports/report.pane.component.ts +0 -78
- package/src/lib/reports/reports-menu.component.html +0 -9
- package/src/lib/reports/reports-menu.component.ts +0 -20
- package/src/lib/reports/substitution/substitution.component.html +0 -26
- package/src/lib/reports/substitution/substitution.component.ts +0 -34
- package/src/lib/reports/table/table-view.component.html +0 -8
- package/src/lib/reports/table/table-view.component.scss +0 -0
- package/src/lib/reports/table/table-view.component.ts +0 -33
- package/src/lib/reports/tasks/tasks.component.html +0 -21
- package/src/lib/reports/tasks/tasks.component.ts +0 -114
- package/src/lib/reports/timeline/timeline.component.exp.ts +0 -225
- package/src/lib/reports/timeline/timeline.component.html +0 -9
- package/src/lib/routes.desktop.ts +0 -196
- package/src/lib/routes.mobile.ts +0 -70
- package/src/lib/scheduler/schedule.component.html +0 -36
- package/src/lib/scheduler/schedule.component.scss +0 -13
- package/src/lib/scheduler/schedule.component.ts +0 -158
- package/src/lib/scheduler/scheduler.mobile.component.ts +0 -30
- package/src/lib/scheduler/scheduler.pane.component.ts +0 -49
- package/src/lib/shared.module.ts +0 -386
- package/src/lib/system.module.ts +0 -75
- package/src/lib/views/_views.theme.scss +0 -18
- package/src/lib/views/cube/chart.component.html +0 -24
- package/src/lib/views/cube/chart.component.ts +0 -88
- package/src/lib/views/cube/cube-base.ts +0 -126
- package/src/lib/views/cube/explore.component.html +0 -33
- package/src/lib/views/cube/explore.component.ts +0 -82
- package/src/lib/views/cube/filter.component.exp.ts +0 -66
- package/src/lib/views/cube/filter.component.html +0 -25
- package/src/lib/views/cube/matrix.component.html +0 -42
- package/src/lib/views/cube/matrix.component.scss +0 -3
- package/src/lib/views/cube/matrix.component.ts +0 -107
- package/src/lib/views/cube/parallel.component.html +0 -10
- package/src/lib/views/cube/parallel.component.scss +0 -13
- package/src/lib/views/cube/parallel.component.ts +0 -62
- package/src/lib/views/cube/pivot.component.html +0 -8
- package/src/lib/views/cube/pivot.component.ts +0 -62
- package/src/lib/views/cube/sum.component.html +0 -30
- package/src/lib/views/cube/sum.component.scss +0 -3
- package/src/lib/views/cube/sum.component.ts +0 -71
- package/src/lib/views/cube/view.component.html +0 -34
- package/src/lib/views/cube/view.component.scss +0 -12
- package/src/lib/views/cube/view.component.ts +0 -103
- package/src/lib/views/document-view-ref.ts +0 -34
- package/src/lib/views/timeline/timeline.component.exp.ts +0 -333
- package/src/lib/views/timeline/timeline.component.html +0 -6
- package/src/lib/views/timeline/timeline.component.scss +0 -6
- package/src/lib/views/view-item.component.ts +0 -67
- package/src/lib/views/views.component.html +0 -4
- package/src/lib/views/views.component.scss +0 -33
- package/src/lib/views/views.component.ts +0 -23
- package/src/lib/views/views.mobile.component.ts +0 -19
- package/src/lib/views/views.pane.component.ts +0 -31
- package/src/polyfills.ts +0 -81
- package/src/public-api.ts +0 -147
- package/src/styles/_app.scss +0 -316
- package/src/styles/_emoji-mart.scss +0 -504
- package/src/styles/_syncfusion-base-definitions.scss +0 -63
- package/src/styles/_syncfusion-dark-definitions.scss +0 -23
- package/src/styles/_syncfusion-icons.scss +0 -57
- package/src/styles/_syncfusion-light-definitions.scss +0 -23
- package/src/styles/_syncfusion.scss +0 -22
- package/src/styles/brown.scss +0 -15
- package/src/styles/build.ps1 +0 -25
- package/src/styles/dark.scss +0 -24
- package/src/styles/deep-purple-light-blue.scss +0 -22
- package/src/styles/deep-purple-teal.scss +0 -22
- package/src/styles/default.scss +0 -23
- package/src/styles/diagram-icons.eot +0 -0
- package/src/styles/diagram-icons.ttf +0 -0
- package/src/styles/green.scss +0 -14
- package/src/styles/indigo.scss +0 -15
- package/src/test.ts +0 -26
- package/tsconfig.lib.json +0 -25
- package/tsconfig.lib.prod.json +0 -10
- package/tsconfig.spec.json +0 -18
@@ -0,0 +1,105 @@
|
|
1
|
+
import { Component, Input, Output, EventEmitter } from "@angular/core";
|
2
|
+
import { debounceTime, takeUntil } from "rxjs/operators";
|
3
|
+
import { Validators } from "@angular/forms";
|
4
|
+
import { Subject } from "rxjs";
|
5
|
+
import * as i0 from "@angular/core";
|
6
|
+
import * as i1 from "../../cube/cube.service";
|
7
|
+
import * as i2 from "@angular/forms";
|
8
|
+
import * as i3 from "../session.service";
|
9
|
+
import * as i4 from "@angular/material/form-field";
|
10
|
+
import * as i5 from "@angular/material/select";
|
11
|
+
import * as i6 from "@angular/material/core";
|
12
|
+
import * as i7 from "@angular/common";
|
13
|
+
import * as i8 from "../pipes/translate.pipe";
|
14
|
+
export class CombinationPool {
|
15
|
+
constructor(_service, _fb, _session) {
|
16
|
+
this._service = _service;
|
17
|
+
this._fb = _fb;
|
18
|
+
this._session = _session;
|
19
|
+
this.model = {};
|
20
|
+
this.source = 'combinations';
|
21
|
+
this.modelChange = new EventEmitter();
|
22
|
+
this._axes = [];
|
23
|
+
this.working = true;
|
24
|
+
this._keys = {};
|
25
|
+
this._values = {};
|
26
|
+
this._destroy = new Subject();
|
27
|
+
}
|
28
|
+
ngOnInit() {
|
29
|
+
this._cube = this.cube ? this._session.profile.cubes.find(c => c.name === this.cube) : this._session.profile.cubes[0];
|
30
|
+
this._axes = this._cube.axes.filter(a => a.combination && !a.hidden);
|
31
|
+
this._axes.forEach(a => {
|
32
|
+
let control = this.form.controls[a.name];
|
33
|
+
if (!control) {
|
34
|
+
control = this._fb.control(null, Validators.required);
|
35
|
+
this.form.addControl(a.name, control);
|
36
|
+
}
|
37
|
+
this._keys[a.dataType] = [];
|
38
|
+
control.valueChanges.pipe(debounceTime(250), takeUntil(this._destroy)).subscribe(v => {
|
39
|
+
this.model[a.name] = v;
|
40
|
+
this._populate().
|
41
|
+
then(() => this.modelChange.next(this.model));
|
42
|
+
});
|
43
|
+
});
|
44
|
+
this._populate();
|
45
|
+
}
|
46
|
+
_populate() {
|
47
|
+
this.working = true;
|
48
|
+
const values = {};
|
49
|
+
this._axes.forEach(a => {
|
50
|
+
const val = this.model[a.name];
|
51
|
+
if (val)
|
52
|
+
values[a.name] = val;
|
53
|
+
});
|
54
|
+
return this._service.constraints(this._cube.name, values, { source: this.source }).toPromise().then(r => {
|
55
|
+
Object.keys(r).forEach(t => {
|
56
|
+
this._values[t] = r[t];
|
57
|
+
const keys = this._keys[t] = Object.keys(r[t]);
|
58
|
+
const axis = this._axes.find(a => a.dataType === t), control = this.form.controls[axis.name];
|
59
|
+
if (keys.length < 2) {
|
60
|
+
if (keys.length === 1)
|
61
|
+
control.patchValue(this.model[axis.name] = keys[0], { emitEvent: false });
|
62
|
+
control.disable({ emitEvent: false });
|
63
|
+
}
|
64
|
+
else if (control.disabled)
|
65
|
+
control.enable({ emitEvent: false });
|
66
|
+
});
|
67
|
+
Object.assign(this._values, r);
|
68
|
+
this.working = false;
|
69
|
+
});
|
70
|
+
}
|
71
|
+
clear(axis) {
|
72
|
+
const control = this.form.controls[axis];
|
73
|
+
control.patchValue(null);
|
74
|
+
}
|
75
|
+
clearAll() {
|
76
|
+
const values = {};
|
77
|
+
this._axes.forEach(a => {
|
78
|
+
values[a.name] = null;
|
79
|
+
});
|
80
|
+
this.form.patchValue(values);
|
81
|
+
}
|
82
|
+
ngOnDestroy() {
|
83
|
+
this._destroy.next();
|
84
|
+
}
|
85
|
+
}
|
86
|
+
CombinationPool.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.2.0", ngImport: i0, type: CombinationPool, deps: [{ token: i1.CubeService }, { token: i2.FormBuilder }, { token: i3.SessionService }], target: i0.ɵɵFactoryTarget.Component });
|
87
|
+
CombinationPool.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.2.0", type: CombinationPool, selector: "bizdoc-combination-pool", inputs: { form: ["formGroup", "form"], appearance: "appearance", cube: "cube", model: "model", source: "source" }, outputs: { modelChange: "modelChange" }, ngImport: i0, template: "<form [formGroup]=\"form\">\r\n <mat-form-field *ngFor=\"let a of _axes\" [appearance]=\"appearance\">\r\n <mat-label>{{a.title}}</mat-label>\r\n <mat-select [formControlName]=\"a.name\">\r\n <mat-option *ngIf=\"form.controls[a.name].value\">{{'Dashes'|translate:('Clear'|translate)}}</mat-option>\r\n <mat-option *ngFor=\"let key of _keys[a.dataType]\" [value]=\"key\">{{_values[a.dataType][key]}}</mat-option>\r\n </mat-select>\r\n <mat-hint>{{form.controls[a.name].value}}</mat-hint>\r\n </mat-form-field>\r\n</form>\r\n", styles: [":host{flex:1 1 auto}form{flex-flow:row wrap;box-sizing:border-box;display:flex;padding:0!important}form>*{flex:1 1 auto;box-sizing:border-box;width:50%;padding:0 5px 0 0}[dir=rtl] form>*{padding:0 0 5px}@media (max-width: 599px){form{flex-flow:column}form>*{width:unset}}\n"], components: [{ type: i4.MatFormField, selector: "mat-form-field", inputs: ["color", "appearance", "hideRequiredMarker", "hintLabel", "floatLabel"], exportAs: ["matFormField"] }, { type: i5.MatSelect, selector: "mat-select", inputs: ["disabled", "disableRipple", "tabIndex"], exportAs: ["matSelect"] }, { type: i6.MatOption, selector: "mat-option", exportAs: ["matOption"] }], directives: [{ type: i2.ɵNgNoValidate, selector: "form:not([ngNoForm]):not([ngNativeValidate])" }, { type: i2.NgControlStatusGroup, selector: "[formGroupName],[formArrayName],[ngModelGroup],[formGroup],form:not([ngNoForm]),[ngForm]" }, { type: i2.FormGroupDirective, selector: "[formGroup]", inputs: ["formGroup"], outputs: ["ngSubmit"], exportAs: ["ngForm"] }, { type: i7.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { type: i4.MatLabel, selector: "mat-label" }, { type: i2.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { type: i2.FormControlName, selector: "[formControlName]", inputs: ["formControlName", "disabled", "ngModel"], outputs: ["ngModelChange"] }, { type: i7.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { type: i4.MatHint, selector: "mat-hint", inputs: ["align", "id"] }], pipes: { "translate": i8.TranslatePipe } });
|
88
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.2.0", ngImport: i0, type: CombinationPool, decorators: [{
|
89
|
+
type: Component,
|
90
|
+
args: [{ selector: 'bizdoc-combination-pool', template: "<form [formGroup]=\"form\">\r\n <mat-form-field *ngFor=\"let a of _axes\" [appearance]=\"appearance\">\r\n <mat-label>{{a.title}}</mat-label>\r\n <mat-select [formControlName]=\"a.name\">\r\n <mat-option *ngIf=\"form.controls[a.name].value\">{{'Dashes'|translate:('Clear'|translate)}}</mat-option>\r\n <mat-option *ngFor=\"let key of _keys[a.dataType]\" [value]=\"key\">{{_values[a.dataType][key]}}</mat-option>\r\n </mat-select>\r\n <mat-hint>{{form.controls[a.name].value}}</mat-hint>\r\n </mat-form-field>\r\n</form>\r\n", styles: [":host{flex:1 1 auto}form{flex-flow:row wrap;box-sizing:border-box;display:flex;padding:0!important}form>*{flex:1 1 auto;box-sizing:border-box;width:50%;padding:0 5px 0 0}[dir=rtl] form>*{padding:0 0 5px}@media (max-width: 599px){form{flex-flow:column}form>*{width:unset}}\n"] }]
|
91
|
+
}], ctorParameters: function () { return [{ type: i1.CubeService }, { type: i2.FormBuilder }, { type: i3.SessionService }]; }, propDecorators: { form: [{
|
92
|
+
type: Input,
|
93
|
+
args: ['formGroup']
|
94
|
+
}], appearance: [{
|
95
|
+
type: Input
|
96
|
+
}], cube: [{
|
97
|
+
type: Input
|
98
|
+
}], model: [{
|
99
|
+
type: Input
|
100
|
+
}], source: [{
|
101
|
+
type: Input
|
102
|
+
}], modelChange: [{
|
103
|
+
type: Output
|
104
|
+
}] } });
|
105
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29tYmluYXRpb24tcG9vbC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL2xpYnJhcmllcy9jb3JlL3NyYy9saWIvY29yZS9jb250cm9scy9jb21iaW5hdGlvbi1wb29sLnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vbGlicmFyaWVzL2NvcmUvc3JjL2xpYi9jb3JlL2NvbnRyb2xzL2NvbWJpbmF0aW9uLXBvb2wuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsU0FBUyxFQUFFLEtBQUssRUFBVSxNQUFNLEVBQUUsWUFBWSxFQUFhLE1BQU0sZUFBZSxDQUFDO0FBQzFGLE9BQU8sRUFBRSxZQUFZLEVBQUUsU0FBUyxFQUFPLE1BQU0sZ0JBQWdCLENBQUM7QUFDOUQsT0FBTyxFQUFlLFVBQVUsRUFBYSxNQUFNLGdCQUFnQixDQUFDO0FBSXBFLE9BQU8sRUFBRSxPQUFPLEVBQWMsTUFBTSxNQUFNLENBQUM7Ozs7Ozs7Ozs7QUFPM0MsTUFBTSxPQUFPLGVBQWU7SUFtQjFCLFlBQW9CLFFBQXFCLEVBQy9CLEdBQWdCLEVBQ2hCLFFBQXdCO1FBRmQsYUFBUSxHQUFSLFFBQVEsQ0FBYTtRQUMvQixRQUFHLEdBQUgsR0FBRyxDQUFhO1FBQ2hCLGFBQVEsR0FBUixRQUFRLENBQWdCO1FBYmxDLFVBQUssR0FBMEMsRUFBRSxDQUFDO1FBRWxELFdBQU0sR0FBbUMsY0FBYyxDQUFDO1FBRS9DLGdCQUFXLEdBQUcsSUFBSSxZQUFZLEVBQXlDLENBQUM7UUFDakYsVUFBSyxHQUFlLEVBQUUsQ0FBQztRQUV2QixZQUFPLEdBQUcsSUFBSSxDQUFDO1FBQ04sVUFBSyxHQUFpQyxFQUFFLENBQUM7UUFDekMsWUFBTyxHQUErQyxFQUFFLENBQUM7UUFDakQsYUFBUSxHQUFHLElBQUksT0FBTyxFQUFRLENBQUM7SUFHVixDQUFDO0lBQ3ZDLFFBQVE7UUFDTixJQUFJLENBQUMsS0FBSyxHQUFHLElBQUksQ0FBQyxJQUFJ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TUFBTSxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUMsR0FBRyxJQUFJLENBQUM7UUFDeEIsQ0FBQyxDQUFDLENBQUM7UUFDSCxJQUFJLENBQUMsSUFBSSxDQUFDLFVBQVUsQ0FBQyxNQUFNLENBQUMsQ0FBQztJQUMvQixDQUFDO0lBQ0QsV0FBVztRQUNULElBQUksQ0FBQyxRQUFRLENBQUMsSUFBSSxFQUFFLENBQUM7SUFDdkIsQ0FBQzs7NEdBN0VVLGVBQWU7Z0dBQWYsZUFBZSwyTkNiNUIscWlCQVVBOzJGREdhLGVBQWU7a0JBTDNCLFNBQVM7K0JBQ0UseUJBQXlCO3lKQU1uQyxJQUFJO3NCQURILEtBQUs7dUJBQUMsV0FBVztnQkFHbEIsVUFBVTtzQkFEVCxLQUFLO2dCQUdOLElBQUk7c0JBREgsS0FBSztnQkFHTixLQUFLO3NCQURKLEtBQUs7Z0JBR04sTUFBTTtzQkFETCxLQUFLO2dCQUdHLFdBQVc7c0JBRG5CLE1BQU0iLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDb21wb25lbnQsIElucHV0LCBPbkluaXQsIE91dHB1dCwgRXZlbnRFbWl0dGVyLCBPbkRlc3Ryb3kgfSBmcm9tIFwiQGFuZ3VsYXIvY29yZVwiO1xyXG5pbXBvcnQgeyBkZWJvdW5jZVRpbWUsIHRha2VVbnRpbCwgdGFwIH0gZnJvbSBcInJ4anMvb3BlcmF0b3JzXCI7XHJcbmltcG9ydCB7IEZvcm1CdWlsZGVyLCBWYWxpZGF0b3JzLCBGb3JtR3JvdXAgfSBmcm9tIFwiQGFuZ3VsYXIvZm9ybXNcIjtcclxuaW1wb3J0IHsgU2Vzc2lvblNlcnZpY2UgfSBmcm9tIFwiLi4vc2Vzc2lvbi5zZXJ2aWNlXCI7XHJcbmltcG9ydCB7IEN1YmVTZXJ2aWNlIH0gZnJvbSBcIi4uLy4uL2N1YmUvY3ViZS5zZXJ2aWNlXCI7XHJcbmltcG9ydCB7IEN1YmVBeGlzLCBDdWJlIH0gZnJvbSBcIi4uL21vZGVsc1wiO1xyXG5pbXBvcnQgeyBTdWJqZWN0LCBPYnNlcnZhYmxlIH0gZnJvbSBcInJ4anNcIjtcclxuaW1wb3J0IHsgTWF0Rm9ybUZpZWxkQXBwZWFyYW5jZSB9IGZyb20gXCJAYW5ndWxhci9tYXRlcmlhbC9mb3JtLWZpZWxkXCI7XHJcbkBDb21wb25lbnQoe1xyXG4gIHNlbGVjdG9yOiAnYml6ZG9jLWNvbWJpbmF0aW9uLXBvb2wnLFxyXG4gIHRlbXBsYXRlVXJsOiAnY29tYmluYXRpb24tcG9vbC5odG1sJyxcclxuICBzdHlsZVVybHM6IFsnY29tYmluYXRpb24tcG9vbC5zY3NzJ11cclxufSlcclxuZXhwb3J0IGNsYXNzIENvbWJpbmF0aW9uUG9vbCBpbXBsZW1lbnRzIE9uSW5pdCwgT25EZXN0cm95IHtcclxuICBASW5wdXQoJ2Zvcm1Hcm91cCcpXHJcbiAgZm9ybSE6IEZvcm1Hcm91cDtcclxuICBASW5wdXQoKVxyXG4gIGFwcGVhcmFuY2U/OiBNYXRGb3JtRmllbGRBcHBlYXJhbmNlO1xyXG4gIEBJbnB1dCgpXHJcbiAgY3ViZTogc3RyaW5nO1xyXG4gIEBJbnB1dCgpXHJcbiAgbW9kZWw6IHsgW2F4aXM6IHN0cmluZ106IChzdHJpbmcgfCBudW1iZXIpIH0gPSB7fTtcclxuICBASW5wdXQoKVxyXG4gIHNvdXJjZTogJ2NvbnN0cmFpbnRzJyB8ICdjb21iaW5hdGlvbnMnID0gJ2NvbWJpbmF0aW9ucyc7XHJcbiAgQE91dHB1dCgpXHJcbiAgcmVhZG9ubHkgbW9kZWxDaGFuZ2UgPSBuZXcgRXZlbnRFbWl0dGVyPHsgW2F4aXM6IHN0cmluZ106IChzdHJpbmcgfCBudW1iZXIpIH0+KCk7XHJcbiAgX2F4ZXM6IEN1YmVBeGlzW10gPSBbXTtcclxuICBfY3ViZTogQ3ViZTtcclxuICB3b3JraW5nID0gdHJ1ZTtcclxuICByZWFkb25seSBfa2V5czogeyBbdHlwZTogc3RyaW5nXTogc3RyaW5nW10gfSA9IHt9O1xyXG4gIHJlYWRvbmx5IF92YWx1ZXM6IHsgW3R5cGU6IHN0cmluZ106IHsgW2tleTogc3RyaW5nXTogYW55IH0gfSA9IHt9O1xyXG4gIHByaXZhdGUgcmVhZG9ubHkgX2Rlc3Ryb3kgPSBuZXcgU3ViamVjdDx2b2lkPigpO1xyXG4gIGNvbnN0cnVjdG9yKHByaXZhdGUgX3NlcnZpY2U6IEN1YmVTZXJ2aWNlLFxyXG4gICAgcHJpdmF0ZSBfZmI6IEZvcm1CdWlsZGVyLFxyXG4gICAgcHJpdmF0ZSBfc2Vzc2lvbjogU2Vzc2lvblNlcnZpY2UpIHsgfVxyXG4gIG5nT25Jbml0KCk6IHZvaWQge1xyXG4gICAgdGhpcy5fY3ViZSA9IHRoaXMuY3ViZSA/IHRoaXMuX3Nlc3Npb24ucHJvZmlsZS5jdWJlcy5maW5kKGMgPT4gYy5uYW1lID09PSB0aGlzLmN1YmUpIDogdGhpcy5fc2Vzc2lvbi5wcm9maWxlLmN1YmVzWzBdO1xyXG4gICAgdGhpcy5fYXhlcyA9IHRoaXMuX2N1YmUuYXhlcy5maWx0ZXIoYSA9PiBhLmNvbWJpbmF0aW9uICYmICFhLmhpZGRlbik7XHJcbiAgICB0aGlzLl9heGVzLmZvckVhY2goYSA9PiB7XHJcbiAgICAgIGxldCBjb250cm9sID0gdGhpcy5mb3JtLmNvbnRyb2xzW2EubmFtZV07XHJcbiAgICAgIGlmICghY29udHJvbCkge1xyXG4gICAgICAgIGNvbnRyb2wgPSB0aGlzLl9mYi5jb250cm9sKG51bGwsIFZhbGlkYXRvcnMucmVxdWlyZWQpO1xyXG4gICAgICAgIHRoaXMuZm9ybS5hZGRDb250cm9sKGEubmFtZSwgY29udHJvbCk7XHJcbiAgICAgIH1cclxuICAgICAgdGhpcy5fa2V5c1thLmRhdGFUeXBlXSA9IFtdO1xyXG4gICAgICBjb250cm9sLnZhbHVlQ2hhbmdlcy5waXBlKGRlYm91bmNlVGltZSgyNTApLCB0YWtlVW50aWwodGhpcy5fZGVzdHJveSkpLnN1YnNjcmliZSh2ID0+IHtcclxuICAgICAgICB0aGlzLm1vZGVsW2EubmFtZV0gPSB2O1xyXG4gICAgICAgIHRoaXMuX3BvcHVsYXRlKCkuXHJcbiAgICAgICAgICB0aGVuKCgpID0+XHJcbiAgICAgICAgICAgIHRoaXMubW9kZWxDaGFuZ2UubmV4dCh0aGlzLm1vZGVsKSk7XHJcbiAgICAgIH0pO1xyXG4gICAgfSk7XHJcbiAgICB0aGlzLl9wb3B1bGF0ZSgpO1xyXG4gIH1cclxuICBwcml2YXRlIF9wb3B1bGF0ZSgpIHtcclxuICAgIHRoaXMud29ya2luZyA9IHRydWU7XHJcbiAgICBjb25zdCB2YWx1ZXMgPSB7fTtcclxuICAgIHRoaXMuX2F4ZXMuZm9yRWFjaChhID0+IHtcclxuICAgICAgY29uc3QgdmFsID0gdGhpcy5tb2RlbFthLm5hbWVdO1xyXG4gICAgICBpZiAodmFsKSB2YWx1ZXNbYS5uYW1lXSA9IHZhbDtcclxuICAgIH0pO1xyXG4gICAgcmV0dXJuIHRoaXMuX3NlcnZpY2UuY29uc3RyYWludHModGhpcy5fY3ViZS5uYW1lLCB2YWx1ZXMsIHsgc291cmNlOiB0aGlzLnNvdXJjZSB9KS50b1Byb21pc2UoKS50aGVuKHIgPT4ge1xyXG4gICAgICBPYmplY3Qua2V5cyhyKS5mb3JFYWNoKHQgPT4ge1xyXG4gICAgICAgIHRoaXMuX3ZhbHVlc1t0XSA9IHJbdF07XHJcbiAgICAgICAgY29uc3Qga2V5cyA9IHRoaXMuX2tleXNbdF0gPSBPYmplY3Qua2V5cyhyW3RdKTtcclxuICAgICAgICBjb25zdCBheGlzID0gdGhpcy5fYXhlcy5maW5kKGEgPT4gYS5kYXRhVHlwZSA9PT0gdCksIGNvbnRyb2wgPSB0aGlzLmZvcm0uY29udHJvbHNbYXhpcy5uYW1lXTtcclxuICAgICAgICBpZiAoa2V5cy5sZW5ndGggPCAyKSB7XHJcbiAgICAgICAgICBpZiAoa2V5cy5sZW5ndGggPT09IDEpXHJcbiAgICAgICAgICAgIGNvbnRyb2wucGF0Y2hWYWx1ZSh0aGlzLm1vZGVsW2F4aXMubmFtZV0gPSBrZXlzWzBdLCB7IGVtaXRFdmVudDogZmFsc2UgfSk7XHJcbiAgICAgICAgICBjb250cm9sLmRpc2FibGUoeyBlbWl0RXZlbnQ6IGZhbHNlIH0pO1xyXG4gICAgICAgIH1cclxuICAgICAgICBlbHNlIGlmIChjb250cm9sLmRpc2FibGVkKSBjb250cm9sLmVuYWJsZSh7IGVtaXRFdmVudDogZmFsc2UgfSk7XHJcbiAgICAgIH0pO1xyXG4gICAgICBPYmplY3QuYXNzaWduKHRoaXMuX3ZhbHVlcywgcik7XHJcbiAgICAgIHRoaXMud29ya2luZyA9IGZhbHNlO1xyXG4gICAgfSk7XHJcbiAgfVxyXG4gIGNsZWFyKGF4aXM6IHN0cmluZykge1xyXG4gICAgY29uc3QgY29udHJvbCA9IHRoaXMuZm9ybS5jb250cm9sc1theGlzXTtcclxuICAgIGNvbnRyb2wucGF0Y2hWYWx1ZShudWxsKTtcclxuICB9XHJcbiAgY2xlYXJBbGwoKSB7XHJcbiAgICBjb25zdCB2YWx1ZXMgPSB7fTtcclxuICAgIHRoaXMuX2F4ZXMuZm9yRWFjaChhID0+IHtcclxuICAgICAgdmFsdWVzW2EubmFtZV0gPSBudWxsO1xyXG4gICAgfSk7XHJcbiAgICB0aGlzLmZvcm0ucGF0Y2hWYWx1ZSh2YWx1ZXMpO1xyXG4gIH1cclxuICBuZ09uRGVzdHJveSgpOiB2b2lkIHtcclxuICAgIHRoaXMuX2Rlc3Ryb3kubmV4dCgpO1xyXG4gIH1cclxufVxyXG4iLCI8Zm9ybSBbZm9ybUdyb3VwXT1cImZvcm1cIj5cclxuICA8bWF0LWZvcm0tZmllbGQgKm5nRm9yPVwibGV0IGEgb2YgX2F4ZXNcIiBbYXBwZWFyYW5jZV09XCJhcHBlYXJhbmNlXCI+XHJcbiAgICA8bWF0LWxhYmVsPnt7YS50aXRsZX19PC9tYXQtbGFiZWw+XHJcbiAgICA8bWF0LXNlbGVjdCBbZm9ybUNvbnRyb2xOYW1lXT1cImEubmFtZVwiPlxyXG4gICAgICA8bWF0LW9wdGlvbiAqbmdJZj1cImZvcm0uY29udHJvbHNbYS5uYW1lXS52YWx1ZVwiPnt7J0Rhc2hlcyd8dHJhbnNsYXRlOignQ2xlYXInfHRyYW5zbGF0ZSl9fTwvbWF0LW9wdGlvbj5cclxuICAgICAgPG1hdC1vcHRpb24gKm5nRm9yPVwibGV0IGtleSBvZiBfa2V5c1thLmRhdGFUeXBlXVwiIFt2YWx1ZV09XCJrZXlcIj57e192YWx1ZXNbYS5kYXRhVHlwZV1ba2V5XX19PC9tYXQtb3B0aW9uPlxyXG4gICAgPC9tYXQtc2VsZWN0PlxyXG4gICAgPG1hdC1oaW50Pnt7Zm9ybS5jb250cm9sc1thLm5hbWVdLnZhbHVlfX08L21hdC1oaW50PlxyXG4gIDwvbWF0LWZvcm0tZmllbGQ+XHJcbjwvZm9ybT5cclxuIl19
|
@@ -0,0 +1,392 @@
|
|
1
|
+
import { Component, HostBinding, HostListener, Inject, Input, Optional, Self, ViewChild } from '@angular/core';
|
2
|
+
import { coerceBooleanProperty } from '@angular/cdk/coercion';
|
3
|
+
import { forkJoin, of } from 'rxjs';
|
4
|
+
import { Subject, tap } from 'rxjs';
|
5
|
+
import { isArray } from '../functions';
|
6
|
+
import { AttachmentInfo } from '../info/attachment-info.service';
|
7
|
+
import { DOCUMENT_MODEL } from '../mailbox.service';
|
8
|
+
import { catchError } from 'rxjs';
|
9
|
+
import * as i0 from "@angular/core";
|
10
|
+
import * as i1 from "../mailbox.service";
|
11
|
+
import * as i2 from "@angular/platform-browser";
|
12
|
+
import * as i3 from "../info/attachment-info.service";
|
13
|
+
import * as i4 from "../translate.service";
|
14
|
+
import * as i5 from "../session.service";
|
15
|
+
import * as i6 from "../prompt.service";
|
16
|
+
import * as i7 from "@angular/forms";
|
17
|
+
import * as i8 from "@angular/material/button";
|
18
|
+
import * as i9 from "@angular/material/icon";
|
19
|
+
import * as i10 from "@angular/material/menu";
|
20
|
+
import * as i11 from "@angular/material/divider";
|
21
|
+
import * as i12 from "@angular/common";
|
22
|
+
import * as i13 from "../../compose/attachments/progress-button.directive";
|
23
|
+
import * as i14 from "@angular/flex-layout/flex";
|
24
|
+
import * as i15 from "../popup/tooltip.directive";
|
25
|
+
import * as i16 from "../pipes/translate.pipe";
|
26
|
+
import * as i17 from "../pipes/calendar.pipe";
|
27
|
+
const EXTENDED_ICONS = { 'xlsx': 'excel', 'docx': 'word', 'pptx': 'powerpoint', 'pdf': 'pdf' };
|
28
|
+
export class FileInput {
|
29
|
+
constructor(_dropableElement, _mailbox, _sanitizer, _attachmentInfo, _translate, _session, _sb, ngControl, _model) {
|
30
|
+
this._dropableElement = _dropableElement;
|
31
|
+
this._mailbox = _mailbox;
|
32
|
+
this._sanitizer = _sanitizer;
|
33
|
+
this._attachmentInfo = _attachmentInfo;
|
34
|
+
this._translate = _translate;
|
35
|
+
this._session = _session;
|
36
|
+
this._sb = _sb;
|
37
|
+
this.ngControl = ngControl;
|
38
|
+
this._model = _model;
|
39
|
+
this.id = `type-file-upload-${FileInput.nextId++}`;
|
40
|
+
this.stateChanges = new Subject();
|
41
|
+
this._multiple = false;
|
42
|
+
this.accept = null;
|
43
|
+
this.icon = 'publish';
|
44
|
+
this._dragDrop = new Subject();
|
45
|
+
this._pending = new Subject();
|
46
|
+
this.errorState = false;
|
47
|
+
this.controlType = 'bizdoc-file-upload';
|
48
|
+
this.describedBy = '';
|
49
|
+
if (this.ngControl != null) {
|
50
|
+
this.ngControl.valueAccessor = this;
|
51
|
+
}
|
52
|
+
}
|
53
|
+
get multiple() {
|
54
|
+
return this._multiple;
|
55
|
+
}
|
56
|
+
set multiple(value) {
|
57
|
+
this._multiple = coerceBooleanProperty(value);
|
58
|
+
}
|
59
|
+
hasVersion(item) {
|
60
|
+
return this._model.attachments.find(a => a.fileName === item.fileName && a.id !== item.id) != null;
|
61
|
+
}
|
62
|
+
getVersions(item) {
|
63
|
+
return this._model.attachments.filter(a => a.fileName === item.fileName && a.id !== item.id);
|
64
|
+
}
|
65
|
+
download(item) {
|
66
|
+
location.href = this._mailbox.formatDownloadUrl(this._model.documentId, item.id);
|
67
|
+
item.viewed = new Date();
|
68
|
+
}
|
69
|
+
previewOrDownload(item) {
|
70
|
+
if (this.canPreview(item))
|
71
|
+
this.openPreview(item);
|
72
|
+
else
|
73
|
+
this.download(item);
|
74
|
+
}
|
75
|
+
canPreview(item) {
|
76
|
+
return AttachmentInfo.exists(item.contentType);
|
77
|
+
}
|
78
|
+
canEdit(item) {
|
79
|
+
return !this._model.completed && item.userId === this._session.profile.userId && !item.deleted;
|
80
|
+
}
|
81
|
+
openPreview(item) {
|
82
|
+
this._attachmentInfo.preview(this._model, item.id);
|
83
|
+
}
|
84
|
+
cancel(item) {
|
85
|
+
this._model.attachments.remove(item);
|
86
|
+
}
|
87
|
+
checkIn(item) {
|
88
|
+
const accept = item.isImage ? 'image/*' :
|
89
|
+
'.' + AttachmentInfo.fileExt(item.fileName) + ',' + item.contentType;
|
90
|
+
this._prompt({ multiple: false, accept }).then(files => {
|
91
|
+
//if (!files[0].name.startsWith(item.fileName)) {
|
92
|
+
// this._sb.error(this._translate.get('CheckInMatchErr', item.fileName));
|
93
|
+
// return;
|
94
|
+
//}
|
95
|
+
this._mailbox.checkIn(this._model.id, this._model.version, item.id, files[0]).subscribe(a => {
|
96
|
+
//if (a instanceof UploadEvent) {
|
97
|
+
// Object.assign(item, {
|
98
|
+
// progress: a.loaded / a.total
|
99
|
+
// });
|
100
|
+
// return;
|
101
|
+
//}
|
102
|
+
Object.assign(item, a, { progress: null, checkedOut: null });
|
103
|
+
this._sb.toast(this._translate.get('CheckedIn', item.fileName));
|
104
|
+
}, e => this._handleError(e));
|
105
|
+
});
|
106
|
+
}
|
107
|
+
checkOut(item) {
|
108
|
+
this._mailbox.checkOut(this._model.id, this._model.version, item.id).
|
109
|
+
subscribe(() => {
|
110
|
+
item.checkedOut = true;
|
111
|
+
this.download(item);
|
112
|
+
});
|
113
|
+
}
|
114
|
+
discard(item) {
|
115
|
+
const task = () => this._mailbox.removeattachment(this._model.id, item.id).subscribe(() => {
|
116
|
+
item.deleted = true;
|
117
|
+
if (this.multiple) {
|
118
|
+
this.items.remove(item);
|
119
|
+
if (this.items.length)
|
120
|
+
this._value = this.items.map(i => i.id);
|
121
|
+
else
|
122
|
+
this.items = null;
|
123
|
+
}
|
124
|
+
else
|
125
|
+
this._value = this.items = null;
|
126
|
+
this._onChange(this._value);
|
127
|
+
this._model.attachments.remove(item);
|
128
|
+
}, e => this._handleError(e));
|
129
|
+
if (this._model.draft)
|
130
|
+
task();
|
131
|
+
else
|
132
|
+
this._sb.ask('DeleteFileAsk', 'DeleteFile', { color: 'warn' }).subscribe(ok => ok && task());
|
133
|
+
}
|
134
|
+
_handleError(response) {
|
135
|
+
switch (response.status) {
|
136
|
+
case 401:
|
137
|
+
break;
|
138
|
+
case 409: // version change
|
139
|
+
{
|
140
|
+
this._sb.error('VersionErr', this._model.number);
|
141
|
+
break;
|
142
|
+
}
|
143
|
+
case 406: // validation exception
|
144
|
+
this._sb.errorString(response.error);
|
145
|
+
break;
|
146
|
+
default:
|
147
|
+
this._sb.error();
|
148
|
+
}
|
149
|
+
}
|
150
|
+
ngOnInit() {
|
151
|
+
const container = this._dropableElement.nativeElement;
|
152
|
+
this._dragDrop.subscribe(ok => {
|
153
|
+
if (ok)
|
154
|
+
container.classList.add('drag');
|
155
|
+
else
|
156
|
+
container.classList.remove('drag');
|
157
|
+
});
|
158
|
+
if (!this._placeholder)
|
159
|
+
this._placeholder = this._translate.get('DragFile');
|
160
|
+
}
|
161
|
+
handleDocumentDrop(event) {
|
162
|
+
event.stopPropagation();
|
163
|
+
event.preventDefault();
|
164
|
+
}
|
165
|
+
handleDrop(event) {
|
166
|
+
event.preventDefault();
|
167
|
+
this._dragDrop.next(false);
|
168
|
+
this._onTouched && this._onTouched();
|
169
|
+
const { items } = event.dataTransfer;
|
170
|
+
const files = [];
|
171
|
+
for (let i = 0; i < items.length; i++) {
|
172
|
+
const file = items[i].getAsFile();
|
173
|
+
files.push(file);
|
174
|
+
}
|
175
|
+
const checkedOut = this.items.filter(i => i.checkedOut);
|
176
|
+
if (this.items && checkedOut.length) {
|
177
|
+
const observables = [];
|
178
|
+
for (let item of checkedOut) {
|
179
|
+
let file = files.find(f => f.name.startsWith(item.fileName));
|
180
|
+
if (file) {
|
181
|
+
let observable = this._mailbox.checkIn(this._model.id, this._model.version, item.id, file).
|
182
|
+
pipe(tap(e => {
|
183
|
+
//Object.assign(item, a, { progress: null });
|
184
|
+
}), catchError(e => {
|
185
|
+
this._handleError(e);
|
186
|
+
return of(false);
|
187
|
+
}));
|
188
|
+
observables.push(observable);
|
189
|
+
}
|
190
|
+
}
|
191
|
+
forkJoin(observables).subscribe(e => {
|
192
|
+
const attachments = e.filter(e => e);
|
193
|
+
attachments.length && this._sb.toast(attachments.length > 1 ? this._translate.get('CheckedInN', attachments.length) :
|
194
|
+
this._translate.get('CheckedIn', attachments[0].fileName));
|
195
|
+
});
|
196
|
+
}
|
197
|
+
else
|
198
|
+
this._upload(files);
|
199
|
+
}
|
200
|
+
handleEnter(event) {
|
201
|
+
event.preventDefault();
|
202
|
+
!this.disabled && this._dragDrop.next(true);
|
203
|
+
}
|
204
|
+
handleLeave(event) {
|
205
|
+
event.preventDefault();
|
206
|
+
!this.disabled && this._dragDrop.next(false);
|
207
|
+
}
|
208
|
+
handleOver(event) {
|
209
|
+
event.preventDefault();
|
210
|
+
!this.disabled && this._dragDrop.next(true);
|
211
|
+
}
|
212
|
+
writeValue(val) {
|
213
|
+
if (!val) {
|
214
|
+
this.items = null;
|
215
|
+
return;
|
216
|
+
}
|
217
|
+
else if (isArray(val))
|
218
|
+
this.items =
|
219
|
+
val.map(i => this._createItem(i));
|
220
|
+
else
|
221
|
+
this.items[this._createItem(val)];
|
222
|
+
}
|
223
|
+
registerOnChange(fn) {
|
224
|
+
this._onChange = fn;
|
225
|
+
}
|
226
|
+
registerOnTouched(fn) {
|
227
|
+
this._onTouched = fn;
|
228
|
+
}
|
229
|
+
setDisabledState(isDisabled) {
|
230
|
+
this.disabled = isDisabled;
|
231
|
+
}
|
232
|
+
get value() {
|
233
|
+
return this._value;
|
234
|
+
}
|
235
|
+
set value(val) {
|
236
|
+
this.writeValue(val);
|
237
|
+
this.stateChanges.next();
|
238
|
+
}
|
239
|
+
get placeholder() {
|
240
|
+
return this._placeholder;
|
241
|
+
}
|
242
|
+
set placeholder(plh) {
|
243
|
+
this._placeholder = plh;
|
244
|
+
this.stateChanges.next();
|
245
|
+
}
|
246
|
+
get empty() { return !this.items; }
|
247
|
+
get required() {
|
248
|
+
return this._required;
|
249
|
+
}
|
250
|
+
set required(req) {
|
251
|
+
this._required = coerceBooleanProperty(req);
|
252
|
+
this.stateChanges.next();
|
253
|
+
}
|
254
|
+
get disabled() { return this._disabled; }
|
255
|
+
set disabled(value) {
|
256
|
+
this._disabled = coerceBooleanProperty(value);
|
257
|
+
this.stateChanges.next();
|
258
|
+
}
|
259
|
+
setDescribedByIds(ids) {
|
260
|
+
this.describedBy = ids.join(' ');
|
261
|
+
}
|
262
|
+
onContainerClick() {
|
263
|
+
}
|
264
|
+
prompt() {
|
265
|
+
this._prompt().then(this._upload.bind(this));
|
266
|
+
}
|
267
|
+
_prompt(options) {
|
268
|
+
if (options) {
|
269
|
+
if (options.accept)
|
270
|
+
this.accept = options.accept;
|
271
|
+
if (options.multiple !== undefined)
|
272
|
+
this.multiple = options.multiple;
|
273
|
+
}
|
274
|
+
return new Promise((resolve) => {
|
275
|
+
this._input.nativeElement.click();
|
276
|
+
this._pending.subscribe(resolve);
|
277
|
+
});
|
278
|
+
}
|
279
|
+
_change(evt) {
|
280
|
+
this._onTouched && this._onTouched();
|
281
|
+
const { files } = evt.srcElement;
|
282
|
+
const arr = [];
|
283
|
+
for (var i = 0; i < files.length; i++) {
|
284
|
+
let file = files.item(i);
|
285
|
+
arr.push(file);
|
286
|
+
}
|
287
|
+
this._pending.next(arr);
|
288
|
+
}
|
289
|
+
_createItem(id) {
|
290
|
+
//const log = this._model.log.filter(l => l.fileId == attachment.id && l.userId == this._session.userId),
|
291
|
+
const attachment = this._model.attachments.find(a => a.id === id), fileExt = AttachmentInfo.fileExt(attachment.fileName), icon = EXTENDED_ICONS[fileExt];
|
292
|
+
return {
|
293
|
+
...attachment,
|
294
|
+
hasPreview: AttachmentInfo.exists(attachment.contentType),
|
295
|
+
isImage: AttachmentInfo.isImage(attachment.contentType),
|
296
|
+
fileExt,
|
297
|
+
icon,
|
298
|
+
url: this._sanitizer.bypassSecurityTrustUrl(this._mailbox.formatDownloadUrl(this._model.documentId, attachment.id)),
|
299
|
+
checkedOut: attachment.checkedOut &&
|
300
|
+
attachment.holdingId === this._session.userId
|
301
|
+
};
|
302
|
+
}
|
303
|
+
_upload(files) {
|
304
|
+
const observables = [];
|
305
|
+
for (let file of files) {
|
306
|
+
let observable = this._mailbox.upload(this._model.id, this._model.formId, this._model.version, file, { isPrivate: true }).
|
307
|
+
pipe(tap(e => {
|
308
|
+
// if (e.progress) {
|
309
|
+
// }
|
310
|
+
}), catchError(e => {
|
311
|
+
this._handleError(e);
|
312
|
+
return of(false);
|
313
|
+
}));
|
314
|
+
observables.push(observable);
|
315
|
+
}
|
316
|
+
this._input.nativeElement.value = null;
|
317
|
+
forkJoin(observables).subscribe(e => {
|
318
|
+
const ids = [];
|
319
|
+
if (!this.items)
|
320
|
+
this.items = [];
|
321
|
+
e.forEach(a => {
|
322
|
+
if (!a)
|
323
|
+
return;
|
324
|
+
ids.push(a.id);
|
325
|
+
this._model.attachments.push(a);
|
326
|
+
this.items.push(this._createItem(a.id));
|
327
|
+
});
|
328
|
+
if (this.multiple)
|
329
|
+
this._value = this._value ? this._value.concat(ids) : ids;
|
330
|
+
else
|
331
|
+
this._value = ids[0];
|
332
|
+
this._onChange(this._value);
|
333
|
+
});
|
334
|
+
}
|
335
|
+
ngOnDestroy() {
|
336
|
+
this._dragDrop.complete();
|
337
|
+
this._pending.complete();
|
338
|
+
this.stateChanges.complete();
|
339
|
+
}
|
340
|
+
}
|
341
|
+
FileInput.nextId = 0;
|
342
|
+
FileInput.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.2.0", ngImport: i0, type: FileInput, deps: [{ token: i0.ElementRef }, { token: i1.MailboxService }, { token: i2.DomSanitizer }, { token: i3.AttachmentInfo }, { token: i4.TranslateService }, { token: i5.SessionService }, { token: i6.PromptService }, { token: i7.NgControl, optional: true, self: true }, { token: DOCUMENT_MODEL }], target: i0.ɵɵFactoryTarget.Component });
|
343
|
+
FileInput.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.2.0", type: FileInput, selector: "bizdoc-file-upload", inputs: { multiple: "multiple", accept: "accept", icon: "icon", value: "value", placeholder: "placeholder", required: "required", disabled: "disabled" }, host: { listeners: { "document:drop": "handleDocumentDrop($event)", "drop": "handleDrop($event)", "dragenter": "handleEnter($event)", "dragleave": "handleLeave($event)", "dragover": "handleOver($event)" }, properties: { "id": "this.id", "attr.aria-describedby": "this.describedBy" }, classAttribute: "file-dropable" }, viewQueries: [{ propertyName: "_input", first: true, predicate: ["input"], descendants: true }], ngImport: i0, template: "<button mat-button *ngIf=\"!items; else preview\" (click)=\"prompt()\">\r\n <mat-icon class=\"filled\">{{icon}}</mat-icon>\r\n <span class=\"mat-h3\">{{placeholder}}</span>\r\n</button>\r\n<input type=\"file\" #input\r\n [accept]=accept [multiple]=multiple (change)='_change($event)' style=\"display: none\" />\r\n<ng-template #preview>\r\n <div *ngFor='let a of items' class=\"attachment-item\"\r\n [class.deleted]=\"a.deleted\" [class.failed]=\"a.failed\"\r\n [progressIndicator]=\"a.progress\">\r\n <img *ngIf=\"a.isImage\" [src]=\"a.url\" (click)=\"openPreview(a)\" height=\"80\" class=\"file-preview\">\r\n <div *ngIf=\"a.hasPreview && !a.isImage\" fxLayout=\"column\" class=\"file-preview\">\r\n <button mat-icon-button (click)=\"openPreview(a)\" [bizdocTooltip]=\"'Preview'|translate\"><mat-icon class=\"mat-icon-rtl-mirror\">find_in_page</mat-icon></button>\r\n <span>.{{a.fileExt}}</span>\r\n </div>\r\n <mat-icon *ngIf=\"a.icon\" [svgIcon]=\"a.icon\" [inline]=\"true\"></mat-icon>\r\n <div class=\"file-overlay row\">\r\n <span class=\"filename\">{{a.fileName}}</span>\r\n <span class=\"divider\"></span>\r\n <button mat-icon-button class=\"options\" [matMenuTriggerFor]=\"menu\" [bizdocTooltip]=\"'Options' | translate\">\r\n <mat-icon>more_vert</mat-icon>\r\n </button>\r\n </div>\r\n <mat-menu #menu>\r\n <ng-container *ngIf=\"!a.failed\">\r\n <ng-container *ngIf=\"canEdit(a) && !a.failed\">\r\n <ng-container *ngIf=\"!a.checkedOut\">\r\n <button mat-menu-item (click)=\"checkOut(a)\">{{\"CheckOut\" | translate}}</button>\r\n <button mat-menu-item (click)=\"prompt()\">{{\"Add\" | translate}}</button>\r\n </ng-container>\r\n <button mat-menu-item (click)=\"checkIn(a)\" *ngIf=\"a.checkedOut\">{{\"CheckIn\" | translate}}</button>\r\n </ng-container>\r\n <mat-divider></mat-divider>\r\n <button mat-menu-item (click)=\"download(a)\">{{\"Download\" | translate}}</button>\r\n <button mat-menu-item *ngIf=\"canPreview(a)\" (click)=\"openPreview(a)\"><mat-icon>landscape</mat-icon> {{\"Preview\" | translate}}</button>\r\n <ng-container *ngIf=\"hasVersion(a)\">\r\n <mat-divider></mat-divider>\r\n <button mat-menu-item *ngFor=\"let v of getVersions(a)\" (click)=\"previewOrDownload(v)\">{{v.time | amCalendar}}</button>\r\n </ng-container>\r\n <ng-container *ngIf=\"canEdit(a)\">\r\n <mat-divider></mat-divider>\r\n <button mat-menu-item (click)=\"discard(a)\">{{\"Discard\" | translate}}</button>\r\n </ng-container>\r\n </ng-container>\r\n <button mat-menu-item (click)=\"cancel(a)\" *ngIf=\"a.failed\">{{\"Cancel\" | translate}}</button>\r\n </mat-menu>\r\n </div>\r\n</ng-template>\r\n", styles: [":host{display:flex}.attachment-item{height:80px;position:relative}.attachment-item img{cursor:zoom-in}.attachment-item .file-preview{position:absolute}.attachment-item .file-overlay{position:relative;height:inherit}.attachment-item .file-overlay .filename{font-size:x-small;cursor:pointer;background:rgba(255,255,255,.4);align-self:flex-end}.attachment-item .file-overlay:hover .filename{background:white;opacity:.5}\n"], components: [{ type: i8.MatButton, selector: "button[mat-button], button[mat-raised-button], button[mat-icon-button], button[mat-fab], button[mat-mini-fab], button[mat-stroked-button], button[mat-flat-button]", inputs: ["disabled", "disableRipple", "color"], exportAs: ["matButton"] }, { type: i9.MatIcon, selector: "mat-icon", inputs: ["color", "inline", "svgIcon", "fontSet", "fontIcon"], exportAs: ["matIcon"] }, { type: i10.MatMenu, selector: "mat-menu", exportAs: ["matMenu"] }, { type: i10.MatMenuItem, selector: "[mat-menu-item]", inputs: ["disabled", "disableRipple", "role"], exportAs: ["matMenuItem"] }, { type: i11.MatDivider, selector: "mat-divider", inputs: ["vertical", "inset"] }], directives: [{ type: i12.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { type: i12.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { type: i13.ProgressDirective, selector: "[progressIndicator]", inputs: ["progressIndicator"] }, { type: i14.DefaultLayoutDirective, selector: " [fxLayout], [fxLayout.xs], [fxLayout.sm], [fxLayout.md], [fxLayout.lg], [fxLayout.xl], [fxLayout.lt-sm], [fxLayout.lt-md], [fxLayout.lt-lg], [fxLayout.lt-xl], [fxLayout.gt-xs], [fxLayout.gt-sm], [fxLayout.gt-md], [fxLayout.gt-lg]", inputs: ["fxLayout", "fxLayout.xs", "fxLayout.sm", "fxLayout.md", "fxLayout.lg", "fxLayout.xl", "fxLayout.lt-sm", "fxLayout.lt-md", "fxLayout.lt-lg", "fxLayout.lt-xl", "fxLayout.gt-xs", "fxLayout.gt-sm", "fxLayout.gt-md", "fxLayout.gt-lg"] }, { type: i15.TooltipDirective, selector: "[bizdocTooltip]", inputs: ["bizdocTooltip", "bizdocTooltipTemplate", "bizdocTooltipContext", "bizdocTooltipPosition", "bizdocTooltipDuration", "bizdocTooltipDisabled"] }, { type: i10.MatMenuTrigger, selector: "[mat-menu-trigger-for], [matMenuTriggerFor]", exportAs: ["matMenuTrigger"] }], pipes: { "translate": i16.TranslatePipe, "amCalendar": i17.CalendarPipe } });
|
344
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.2.0", ngImport: i0, type: FileInput, decorators: [{
|
345
|
+
type: Component,
|
346
|
+
args: [{ host: { class: 'file-dropable' }, selector: 'bizdoc-file-upload', template: "<button mat-button *ngIf=\"!items; else preview\" (click)=\"prompt()\">\r\n <mat-icon class=\"filled\">{{icon}}</mat-icon>\r\n <span class=\"mat-h3\">{{placeholder}}</span>\r\n</button>\r\n<input type=\"file\" #input\r\n [accept]=accept [multiple]=multiple (change)='_change($event)' style=\"display: none\" />\r\n<ng-template #preview>\r\n <div *ngFor='let a of items' class=\"attachment-item\"\r\n [class.deleted]=\"a.deleted\" [class.failed]=\"a.failed\"\r\n [progressIndicator]=\"a.progress\">\r\n <img *ngIf=\"a.isImage\" [src]=\"a.url\" (click)=\"openPreview(a)\" height=\"80\" class=\"file-preview\">\r\n <div *ngIf=\"a.hasPreview && !a.isImage\" fxLayout=\"column\" class=\"file-preview\">\r\n <button mat-icon-button (click)=\"openPreview(a)\" [bizdocTooltip]=\"'Preview'|translate\"><mat-icon class=\"mat-icon-rtl-mirror\">find_in_page</mat-icon></button>\r\n <span>.{{a.fileExt}}</span>\r\n </div>\r\n <mat-icon *ngIf=\"a.icon\" [svgIcon]=\"a.icon\" [inline]=\"true\"></mat-icon>\r\n <div class=\"file-overlay row\">\r\n <span class=\"filename\">{{a.fileName}}</span>\r\n <span class=\"divider\"></span>\r\n <button mat-icon-button class=\"options\" [matMenuTriggerFor]=\"menu\" [bizdocTooltip]=\"'Options' | translate\">\r\n <mat-icon>more_vert</mat-icon>\r\n </button>\r\n </div>\r\n <mat-menu #menu>\r\n <ng-container *ngIf=\"!a.failed\">\r\n <ng-container *ngIf=\"canEdit(a) && !a.failed\">\r\n <ng-container *ngIf=\"!a.checkedOut\">\r\n <button mat-menu-item (click)=\"checkOut(a)\">{{\"CheckOut\" | translate}}</button>\r\n <button mat-menu-item (click)=\"prompt()\">{{\"Add\" | translate}}</button>\r\n </ng-container>\r\n <button mat-menu-item (click)=\"checkIn(a)\" *ngIf=\"a.checkedOut\">{{\"CheckIn\" | translate}}</button>\r\n </ng-container>\r\n <mat-divider></mat-divider>\r\n <button mat-menu-item (click)=\"download(a)\">{{\"Download\" | translate}}</button>\r\n <button mat-menu-item *ngIf=\"canPreview(a)\" (click)=\"openPreview(a)\"><mat-icon>landscape</mat-icon> {{\"Preview\" | translate}}</button>\r\n <ng-container *ngIf=\"hasVersion(a)\">\r\n <mat-divider></mat-divider>\r\n <button mat-menu-item *ngFor=\"let v of getVersions(a)\" (click)=\"previewOrDownload(v)\">{{v.time | amCalendar}}</button>\r\n </ng-container>\r\n <ng-container *ngIf=\"canEdit(a)\">\r\n <mat-divider></mat-divider>\r\n <button mat-menu-item (click)=\"discard(a)\">{{\"Discard\" | translate}}</button>\r\n </ng-container>\r\n </ng-container>\r\n <button mat-menu-item (click)=\"cancel(a)\" *ngIf=\"a.failed\">{{\"Cancel\" | translate}}</button>\r\n </mat-menu>\r\n </div>\r\n</ng-template>\r\n", styles: [":host{display:flex}.attachment-item{height:80px;position:relative}.attachment-item img{cursor:zoom-in}.attachment-item .file-preview{position:absolute}.attachment-item .file-overlay{position:relative;height:inherit}.attachment-item .file-overlay .filename{font-size:x-small;cursor:pointer;background:rgba(255,255,255,.4);align-self:flex-end}.attachment-item .file-overlay:hover .filename{background:white;opacity:.5}\n"] }]
|
347
|
+
}], ctorParameters: function () { return [{ type: i0.ElementRef }, { type: i1.MailboxService }, { type: i2.DomSanitizer }, { type: i3.AttachmentInfo }, { type: i4.TranslateService }, { type: i5.SessionService }, { type: i6.PromptService }, { type: i7.NgControl, decorators: [{
|
348
|
+
type: Optional
|
349
|
+
}, {
|
350
|
+
type: Self
|
351
|
+
}] }, { type: undefined, decorators: [{
|
352
|
+
type: Inject,
|
353
|
+
args: [DOCUMENT_MODEL]
|
354
|
+
}] }]; }, propDecorators: { id: [{
|
355
|
+
type: HostBinding
|
356
|
+
}], multiple: [{
|
357
|
+
type: Input
|
358
|
+
}], accept: [{
|
359
|
+
type: Input
|
360
|
+
}], icon: [{
|
361
|
+
type: Input
|
362
|
+
}], _input: [{
|
363
|
+
type: ViewChild,
|
364
|
+
args: ['input']
|
365
|
+
}], handleDocumentDrop: [{
|
366
|
+
type: HostListener,
|
367
|
+
args: ['document:drop', ['$event']]
|
368
|
+
}], handleDrop: [{
|
369
|
+
type: HostListener,
|
370
|
+
args: ['drop', ['$event']]
|
371
|
+
}], handleEnter: [{
|
372
|
+
type: HostListener,
|
373
|
+
args: ['dragenter', ['$event']]
|
374
|
+
}], handleLeave: [{
|
375
|
+
type: HostListener,
|
376
|
+
args: ['dragleave', ['$event']]
|
377
|
+
}], handleOver: [{
|
378
|
+
type: HostListener,
|
379
|
+
args: ['dragover', ['$event']]
|
380
|
+
}], value: [{
|
381
|
+
type: Input
|
382
|
+
}], placeholder: [{
|
383
|
+
type: Input
|
384
|
+
}], required: [{
|
385
|
+
type: Input
|
386
|
+
}], disabled: [{
|
387
|
+
type: Input
|
388
|
+
}], describedBy: [{
|
389
|
+
type: HostBinding,
|
390
|
+
args: ['attr.aria-describedby']
|
391
|
+
}] } });
|
392
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZmlsZS5pbnB1dC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL2xpYnJhcmllcy9jb3JlL3NyYy9saWIvY29yZS9jb250cm9scy9maWxlLmlucHV0LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vbGlicmFyaWVzL2NvcmUvc3JjL2xpYi9jb3JlL2NvbnRyb2xzL2ZpbGUuaW5wdXQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsU0FBUyxFQUFjLFdBQVcsRUFBRSxZQUFZLEVBQUUsTUFBTSxFQUFFLEtBQUssRUFBcUIsUUFBUSxFQUFFLElBQUksRUFBRSxTQUFTLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFHOUksT0FBTyxFQUFFLHFCQUFxQixFQUFFLE1BQU0sdUJBQXVCLENBQUM7QUFFOUQsT0FBTyxFQUFFLFFBQVEsRUFBRSxFQUFFLEVBQUUsTUFBTSxNQUFNLENBQUM7QUFDcEMsT0FBTyxFQUFFLE9BQU8sRUFBRSxHQUFHLEVBQUUsTUFBTSxNQUFNLENBQUM7QUFDcEMsT0FBTyxFQUFFLE9BQU8sRUFBRSxNQUFNLGNBQWMsQ0FBQztBQUN2QyxPQUFPLEVBQUUsY0FBYyxFQUFFLE1BQU0saUNBQWlDLENBQUM7QUFDakUsT0FBTyxFQUFtQixjQUFjLEVBQStCLE1BQU0sb0JBQW9CLENBQUM7QUFNbEcsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLE1BQU0sQ0FBQzs7Ozs7Ozs7Ozs7Ozs7Ozs7OztBQUVsQyxNQUFNLGNBQWMsR0FBRyxFQUFFLE1BQU0sRUFBRSxPQUFPLEVBQUUsTUFBTSxFQUFFLE1BQU0sRUFBRSxNQUFNLEVBQUUsWUFBWSxFQUFFLEtBQUssRUFBRSxLQUFLLEVBQUUsQ0FBQztBQVEvRixNQUFNLE9BQ0UsU0FBUztJQXdCZixZQUNVLGdCQUE0QixFQUM1QixRQUF3QixFQUN4QixVQUF3QixFQUN4QixlQUErQixFQUMvQixVQUE0QixFQUM1QixRQUF3QixFQUN4QixHQUFrQixF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SUFBSTtzQkFBWixLQUFLO2dCQUNjLE1BQU07c0JBQXpCLFNBQVM7dUJBQUMsT0FBTztnQkFpSWxCLGtCQUFrQjtzQkFEakIsWUFBWTt1QkFBQyxlQUFlLEVBQUUsQ0FBQyxRQUFRLENBQUM7Z0JBTXpDLFVBQVU7c0JBRFQsWUFBWTt1QkFBQyxNQUFNLEVBQUUsQ0FBQyxRQUFRLENBQUM7Z0JBdUNoQyxXQUFXO3NCQURWLFlBQVk7dUJBQUMsV0FBVyxFQUFFLENBQUMsUUFBUSxDQUFDO2dCQU1yQyxXQUFXO3NCQURWLFlBQVk7dUJBQUMsV0FBVyxFQUFFLENBQUMsUUFBUSxDQUFDO2dCQU1yQyxVQUFVO3NCQURULFlBQVk7dUJBQUMsVUFBVSxFQUFFLENBQUMsUUFBUSxDQUFDO2dCQXdCdkIsS0FBSztzQkFBakIsS0FBSztnQkFPTyxXQUFXO3NCQUF2QixLQUFLO2dCQVdGLFFBQVE7c0JBRFgsS0FBSztnQkFTRixRQUFRO3NCQURYLEtBQUs7Z0JBUWdDLFdBQVc7c0JBQWhELFdBQVc7dUJBQUMsdUJBQXVCIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29tcG9uZW50LCBFbGVtZW50UmVmLCBIb3N0QmluZGluZywgSG9zdExpc3RlbmVyLCBJbmplY3QsIElucHV0LCBPbkRlc3Ryb3ksIE9uSW5pdCwgT3B0aW9uYWwsIFNlbGYsIFZpZXdDaGlsZCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xyXG5pbXBvcnQgeyBOZ0NvbnRyb2wsIENvbnRyb2xWYWx1ZUFjY2Vzc29yIH0gZnJvbSAnQGFuZ3VsYXIvZm9ybXMnO1xyXG5pbXBvcnQgeyBNYXRGb3JtRmllbGRDb250cm9sIH0gZnJvbSAnQGFuZ3VsYXIvbWF0ZXJpYWwvZm9ybS1maWVsZCc7XHJcbmltcG9ydCB7IGNvZXJjZUJvb2xlYW5Qcm9wZXJ0eSB9IGZyb20gJ0Bhbmd1bGFyL2Nkay9jb2VyY2lvbic7XHJcbmltcG9ydCB7IERvbVNhbml0aXplciB9IGZyb20gJ0Bhbmd1bGFyL3BsYXRmb3JtLWJyb3dzZXInO1xyXG5pbXBvcnQgeyBmb3JrSm9pbiwgb2YgfSBmcm9tICdyeGpzJztcclxuaW1wb3J0IHsgU3ViamVjdCwgdGFwIH0gZnJvbSAncnhqcyc7XHJcbmltcG9ydCB7IGlzQXJyYXkgfSBmcm9tICcuLi9mdW5jdGlvbnMnO1xyXG5pbXBvcnQgeyBBdHRhY2htZW50SW5mbyB9IGZyb20gJy4uL2luZm8vYXR0YWNobWVudC1pbmZvLnNlcnZpY2UnO1xyXG5pbXBvcnQgeyBBdHRhY2htZW50RXh0cmEsIERPQ1VNRU5UX01PREVMLCBNYWlsYm94U2VydmljZSwgVXBsb2FkRXZlbnQgfSBmcm9tICcuLi9tYWlsYm94LnNlcnZpY2UnO1xyXG5pbXBvcnQgeyBBdHRhY2htZW50LCBSZWNpcGllbnRNb2RlbCB9IGZyb20gJy4uL21vZGVscyc7XHJcbmltcG9ydCB7IFByb21wdFNlcnZpY2UgfSBmcm9tICcuLi9wcm9tcHQuc2VydmljZSc7XHJcbmltcG9ydCB7IFNlc3Npb25TZXJ2aWNlIH0gZnJvbSAnLi4vc2Vzc2lvbi5zZXJ2aWNlJztcclxuaW1wb3J0IHsgVHJhbnNsYXRlU2VydmljZSB9IGZyb20gJy4uL3RyYW5zbGF0ZS5zZXJ2aWNlJztcclxuaW1wb3J0IHsgSHR0cEVycm9yUmVzcG9uc2UgfSBmcm9tICdAYW5ndWxhci9jb21tb24vaHR0cCc7XHJcbmltcG9ydCB7IGNhdGNoRXJyb3IgfSBmcm9tICdyeGpzJztcclxuXHJcbmNvbnN0IEVYVEVOREVEX0lDT05TID0geyAneGxzeCc6ICdleGNlbCcsICdkb2N4JzogJ3dvcmQnLCAncHB0eCc6ICdwb3dlcnBvaW50JywgJ3BkZic6ICdwZGYnIH07XHJcblxyXG5AQ29tcG9uZW50KHtcclxuICB0ZW1wbGF0ZVVybDogJ2ZpbGUuaW5wdXQuaHRtbCcsXHJcbiAgc3R5bGVVcmxzOiBbJ2ZpbGUuaW5wdXQuc2NzcyddLFxyXG4gIGhvc3Q6IHsgY2xhc3M6ICdmaWxlLWRyb3BhYmxlJyB9LFxyXG4gIHNlbGVjdG9yOiAnYml6ZG9jLWZpbGUtdXBsb2FkJ1xyXG59KVxyXG5leHBvcnRcclxuICBjbGFzcyBGaWxlSW5wdXQgaW1wbGVtZW50cyBNYXRGb3JtRmllbGRDb250cm9sPG51bWJlciB8IG51bWJlcltdPiwgQ29udHJvbFZhbHVlQWNjZXNzb3IsIE9uSW5pdCwgT25EZXN0cm95IHtcclxuICBwcml2YXRlIHN0YXRpYyBuZXh0SWQgPSAwO1xyXG4gIEBIb3N0QmluZGluZygpIHJlYWRvbmx5IGlkID0gYHR5cGUtZmlsZS11cGxvYWQtJHtGaWxlSW5wdXQubmV4dElkKyt9YDtcclxuICByZWFkb25seSBzdGF0ZUNoYW5nZXMgPSBuZXcgU3ViamVjdDx2b2lkPigpO1xyXG4gIHByaXZhdGUgX211bHRpcGxlID0gZmFsc2U7XHJcbiAgcHVibGljIGdldCBtdWx0aXBsZSgpIHtcclxuICAgIHJldHVybiB0aGlzLl9tdWx0aXBsZTtcclxuICB9XHJcbiAgQElucHV0KClcclxuICBwdWJsaWMgc2V0IG11bHRpcGxlKHZhbHVlKSB7XHJcbiAgICB0aGlzLl9tdWx0aXBsZSA9IGNvZXJjZUJvb2xlYW5Qcm9wZXJ0eSh2YWx1ZSk7XHJcbiAgfVxyXG4gIEBJbnB1dCgpIGFjY2VwdCA9IG51bGw7XHJcbiAgQElucHV0KCkgaWNvbiA9ICdwdWJsaXNoJztcclxuICBAVmlld0NoaWxkKCdpbnB1dCcpIF9pbnB1dDogRWxlbWVudFJlZjxIVE1MSW5wdXRFbGVtZW50PjtcclxuICBpdGVtczogQXR0YWNobWVudEV4dHJhW107XHJcbiAgcHJpdmF0ZSBfcGxhY2Vob2xkZXI6IHN0cmluZztcclxuICBwcml2YXRlIF9yZXF1aXJlZDogYW55O1xyXG4gIHByaXZhdGUgX2Rpc2FibGVkOiBib29sZWFuO1xyXG4gIHByaXZhdGUgX29uQ2hhbmdlOiBhbnk7XHJcbiAgcHJpdmF0ZSBfb25Ub3VjaGVkOiBhbnk7XHJcbiAgcHJpdmF0ZSBfdmFsdWU6IG51bWJlciB8IG51bWJlcltdO1xyXG4gIHByaXZhdGUgcmVhZG9ubHkgX2RyYWdEcm9wID0gbmV3IFN1YmplY3Q8Ym9vbGVhbj4oKTtcclxuICBwcml2YXRlIHJlYWRvbmx5IF9wZW5kaW5nID0gbmV3IFN1YmplY3Q8RmlsZVtdPigpO1xyXG4gIGNvbnN0cnVjdG9yKFxyXG4gICAgcHJpdmF0ZSBfZHJvcGFibGVFbGVtZW50OiBFbGVtZW50UmVmLFxyXG4gICAgcHJpdmF0ZSBfbWFpbGJveDogTWFpbGJveFNlcnZpY2UsXHJcbiAgICBwcml2YXRlIF9zYW5pdGl6ZXI6IERvbVNhbml0aXplcixcclxuICAgIHByaXZhdGUgX2F0dGFjaG1lbnRJbmZvOiBBdHRhY2htZW50SW5mbyxcclxuICAgIHByaXZhdGUgX3RyYW5zbGF0ZTogVHJhbnNsYXRlU2VydmljZSxcclxuICAgIHByaXZhdGUgX3Nlc3Npb246IFNlc3Npb25TZXJ2aWNlLFxyXG4gICAgcHJpdmF0ZSBfc2I6IFByb21wdFNlcnZpY2UsXHJcbiAgICBAT3B0aW9uYWwoKSBAU2VsZigpIHB1YmxpYyBuZ0NvbnRyb2w6IE5nQ29udHJvbCxcclxuICAgIEBJbmplY3QoRE9DVU1FTlRfTU9ERUwpIHByaXZhdGUgX21vZGVsOiBSZWNpcGllbnRNb2RlbDxhbnk+LFxyXG4gICkge1xyXG4gICAgaWYgKHRoaXMubmdDb250cm9sICE9IG51bGwpIHtcclxuICAgICAgdGhpcy5uZ0NvbnRyb2wudmFsdWVBY2Nlc3NvciA9IHRoaXM7XHJcbiAgICB9XHJcbiAgfVxyXG4gIGhhc1ZlcnNpb24oaXRlbTogQXR0YWNobWVudCk6IGJvb2xlYW4ge1xyXG4gICAgcmV0dXJuIHRoaXMuX21vZGVsLmF0dGFjaG1lbnRzLmZpbmQoYSA9PiBhLmZpbGVOYW1lID09PSBpdGVtLmZpbGVOYW1lICYmIGEuaWQgIT09IGl0ZW0uaWQpICE9IG51bGw7XHJcbiAgfVxyXG4gIGdldFZlcnNpb25zKGl0ZW06IEF0dGFjaG1lbnQpOiBBdHRhY2htZW50W10ge1xyXG4gICAgcmV0dXJuIHRoaXMuX21vZGVsLmF0dGFjaG1lbnRzLmZpbHRlcihhID0+IGEuZmlsZU5hbWUgPT09IGl0ZW0uZmlsZU5hbWUgJiYgYS5pZCAhPT0gaXRlbS5pZCk7XHJcbiAgfVxyXG4gIGRvd25sb2FkKGl0ZW06IEF0dGFjaG1lbnRFeHRyYSkge1xyXG4gICAgbG9jYXRpb24uaHJlZiA9IHRoaXMuX21haWxib3guZm9ybWF0RG93bmxvYWRVcmwodGhpcy5fbW9kZWwuZG9jdW1lbnRJZCwgaXRlbS5pZCk7XHJcbiAgICAoaXRlbSBhcyBBdHRhY2htZW50RXh0cmEpLnZpZXdlZCA9IG5ldyBEYXRlKCk7XHJcbiAgfVxyXG4gIHByZXZpZXdPckRvd25sb2FkKGl0ZW06IEF0dGFjaG1lbnRFeHRyYSkge1xyXG4gICAgaWYgKHRoaXMuY2FuUHJldmlldyhpdGVtKSlcclxuICAgICAgdGhpcy5vcGVuUHJldmlldyhpdGVtKTtcclxuICAgIGVsc2VcclxuICAgICAgdGhpcy5kb3dubG9hZChpdGVtKTtcclxuICB9XHJcbiAgY2FuUHJldmlldyhpdGVtOiBBdHRhY2htZW50RXh0cmEpOiBib29sZWFuIHtcclxuICAgIHJldHVybiBBdHRhY2htZW50SW5mby5leGlzdHMoaXRlbS5jb250ZW50VHlwZSk7XHJcbiAgfVxyXG4gIGNhbkVkaXQoaXRlbTogQXR0YWNobWVudEV4dHJhKTogYm9vbGVhbiB7XHJcbiAgICByZXR1cm4gIXRoaXMuX21vZGVsLmNvbXBsZXRlZCAmJiBpdGVtLnVzZXJJZCA9PT0gdGhpcy5fc2Vzc2lvbi5wcm9maWxlLnVzZXJJZCAmJiAhaXRlbS5kZWxldGVkO1xyXG4gIH1cclxuICBvcGVuUHJldmlldyhpdGVtOiBBdHRhY2htZW50RXh0cmEpIHtcclxuICAgIHRoaXMuX2F0dGFjaG1lbnRJbmZvLnByZXZpZXcodGhpcy5fbW9kZWwsIGl0ZW0uaWQpO1xyXG4gIH1cclxuICBjYW5jZWwoaXRlbTogQXR0YWNobWVudEV4dHJhKSB7XHJcbiAgICB0aGlzLl9tb2RlbC5hdHRhY2htZW50cy5yZW1vdmUoaXRlbSk7XHJcbiAgfVxyXG4gIGNoZWNrSW4oaXRlbTogQXR0YWNobWVudEV4dHJhKSB7XHJcbiAgICBjb25zdCBhY2NlcHQgPSBpdGVtLmlzSW1hZ2UgPyAnaW1hZ2UvKicgOlxyXG4gICAgICAnLicgKyBBdHRhY2htZW50SW5mby5maWxlRXh0KGl0ZW0uZmlsZU5hbWUpICsgJywnICsgaXRlbS5jb250ZW50VHlwZTtcclxuICAgIHRoaXMuX3Byb21wdCh7IG11bHRpcGxlOiBmYWxzZSwgYWNjZXB0IH0pLnRoZW4oZmlsZXMgPT4ge1xyXG4gICAgICAvL2lmICghZmlsZXNbMF0ubmFtZS5zdGFydHNXaXRoKGl0ZW0uZmlsZU5hbWUpKSB7XHJcbiAgICAgIC8vICB0aGlzLl9zYi5lcnJvcih0aGlzLl90cmFuc2xhdGUuZ2V0KCdDaGVja0luTWF0Y2hFcnInLCBpdGVtLmZpbGVOYW1lKSk7XHJcbiAgICAgIC8vICByZXR1cm47XHJcbiAgICAgIC8vfVxyXG4gICAgICB0aGlzLl9tYWlsYm94LmNoZWNrSW4odGhpcy5fbW9kZWwuaWQsIHRoaXMuX21vZGVsLnZlcnNpb24sIGl0ZW0uaWQsIGZpbGVzWzBdKS5zdWJzY3JpYmUoYSA9PiB7XHJcbiAgICAgICAgLy9pZiAoYSBpbnN0YW5jZW9mIFVwbG9hZEV2ZW50KSB7XHJcbiAgICAgICAgLy8gIE9iamVjdC5hc3NpZ24oaXRlbSwge1xyXG4gICAgICAgIC8vICAgIHByb2dyZXNzOiBhLmxvYWRlZCAvIGEudG90YWxcclxuICAgICAgICAvLyAgfSk7XHJcbiAgICAgICAgLy8gIHJldHVybjtcclxuICAgICAgICAvL31cclxuICAgICAgICBPYmplY3QuYXNzaWduKGl0ZW0sIGEsIHsgcHJvZ3Jlc3M6IG51bGwsIGNoZWNrZWRPdXQ6IG51bGwgfSk7XHJcbiAgICAgICAgdGhpcy5fc2IudG9hc3QodGhpcy5fdHJhbnNsYXRlLmdldCgnQ2hlY2tlZEluJywgaXRlbS5maWxlTmFtZSkpO1xyXG4gICAgICB9LCBlID0+IHRoaXMuX2hhbmRsZUVycm9yKGUpKTtcclxuICAgIH1cclxuICAgIClcclxuICB9XHJcbiAgY2hlY2tPdXQoaXRlbTogQXR0YWNobWVudEV4dHJhKSB7XHJcbiAgICB0aGlzLl9tYWlsYm94LmNoZWNrT3V0KHRoaXMuX21vZGVsLmlkLCB0aGlzLl9tb2RlbC52ZXJzaW9uLCBpdGVtLmlkKS5cclxuICAgICAgc3Vic2NyaWJlKCgpID0+IHtcclxuICAgICAgICBpdGVtLmNoZWNrZWRPdXQgPSB0cnVlO1xyXG4gICAgICAgIHRoaXMuZG93bmxvYWQoaXRlbSk7XHJcbiAgICAgIH0pO1xyXG4gIH1cclxuICBkaXNjYXJkKGl0ZW06IEF0dGFjaG1lbnRFeHRyYSkge1xyXG4gICAgY29uc3QgdGFzayA9ICgpID0+XHJcbiAgICAgIHRoaXMuX21haWxib3gucmVtb3ZlYXR0YWNobWVudCh0aGlzLl9tb2RlbC5pZCwgaXRlbS5pZCkuc3Vic2NyaWJlKCgpID0+IHtcclxuICAgICAgICBpdGVtLmRlbGV0ZWQgPSB0cnVlO1xyXG4gICAgICAgIGlmICh0aGlzLm11bHRpcGxlKSB7XHJcbiAgICAgICAgICB0aGlzLml0ZW1zLnJlbW92ZShpdGVtKTtcclxuICAgICAgICAgIGlmICh0aGlzLml0ZW1zLmxlbmd0aClcclxuICAgICAgICAgICAgdGhpcy5fdmFsdWUgPSB0aGlzLml0ZW1zLm1hcChpID0+IGkuaWQpO1xyXG4gICAgICAgICAgZWxzZSB0aGlzLml0ZW1zID0gbnVsbDtcclxuICAgICAgICB9XHJcbiAgICAgICAgZWxzZVxyXG4gICAgICAgICAgdGhpcy5fdmFsdWUgPSB0aGlzLml0ZW1zID0gbnVsbDtcclxuICAgICAgICB0aGlzLl9vbkNoYW5nZSh0aGlzLl92YWx1ZSk7XHJcbiAgICAgICAgdGhpcy5fbW9kZWwuYXR0YWNobWVudHMucmVtb3ZlKGl0ZW0pO1xyXG4gICAgICB9LCBlID0+XHJcbiAgICAgICAgdGhpcy5faGFuZGxlRXJyb3IoZSkpO1xyXG4gICAgaWYgKHRoaXMuX21vZGVsLmRyYWZ0KVxyXG4gICAgICB0YXNrKCk7XHJcbiAgICBlbHNlXHJcbiAgICAgIHRoaXMuX3NiLmFzaygnRGVsZXRlRmlsZUFzaycsICdEZWxldGVGaWxlJywgeyBjb2xvcjogJ3dhcm4nIH0pLnN1YnNjcmliZShvayA9PlxyXG4gICAgICAgIG9rICYmIHRhc2soKSk7XHJcbiAgfVxyXG4gIHByaXZhdGUgX2hhbmRsZUVycm9yKHJlc3BvbnNlOiBIdHRwRXJyb3JSZXNwb25zZSk6IHZvaWQge1xyXG4gICAgc3dpdGNoIChyZXNwb25zZS5zdGF0dXMpIHtcclxuICAgICAgY2FzZSA0MDE6XHJcbiAgICAgICAgYnJlYWs7XHJcbiAgICAgIGNhc2UgNDA5OiAvLyB2ZXJzaW9uIGNoYW5nZVxyXG4gICAgICAgIHtcclxuICAgICAgICAgIHRoaXMuX3NiLmVycm9yKCdWZXJzaW9uRXJyJywgdGhpcy5fbW9kZWwubnVtYmVyKTtcclxuICAgICAgICAgIGJyZWFrO1xyXG4gICAgICAgIH1cclxuICAgICAgY2FzZSA0MDY6IC8vIHZhbGlkYXRpb24gZXhjZXB0aW9uXHJcbiAgICAgICAgdGhpcy5fc2IuZXJyb3JTdHJpbmcocmVzcG9uc2UuZXJyb3IpO1xyXG4gICAgICAgIGJyZWFrO1xyXG4gICAgICBkZWZhdWx0OlxyXG4gICAgICAgIHRoaXMuX3NiLmVycm9yKCk7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICBuZ09uSW5pdCgpOiB2b2lkIHtcclxuICAgIGNvbnN0IGNvbnRhaW5lciA9IHRoaXMuX2Ryb3BhYmxlRWxlbWVudC5uYXRpdmVFbGVtZW50O1xyXG4gICAgdGhpcy5fZHJhZ0Ryb3Auc3Vic2NyaWJlKG9rID0+IHtcclxuICAgICAgaWYgKG9rKSBjb250YWluZXIuY2xhc3NMaXN0LmFkZCgnZHJhZycpO1xyXG4gICAgICBlbHNlIGNvbnRhaW5lci5jbGFzc0xpc3QucmVtb3ZlKCdkcmFnJyk7XHJcbiAgICB9KTtcclxuICAgIGlmICghdGhpcy5fcGxhY2Vob2xkZXIpIHRoaXMuX3BsYWNlaG9sZGVyID0gdGhpcy5fdHJhbnNsYXRlLmdldCgnRHJhZ0ZpbGUnKTtcclxuICB9XHJcbiAgQEhvc3RMaXN0ZW5lcignZG9jdW1lbnQ6ZHJvcCcsIFsnJGV2ZW50J10pXHJcbiAgaGFuZGxlRG9jdW1lbnREcm9wKGV2ZW50OiBLZXlib2FyZEV2ZW50KSB7XHJcbiAgICBldmVudC5zdG9wUHJvcGFnYXRpb24oKTtcclxuICAgIGV2ZW50LnByZXZlbnREZWZhdWx0KCk7XHJcbiAgfVxyXG4gIEBIb3N0TGlzdGVuZXIoJ2Ryb3AnLCBbJyRldmVudCddKVxyXG4gIGhhbmRsZURyb3AoZXZlbnQ6IERyYWdFdmVudCkge1xyXG4gICAgZXZlbnQucHJldmVudERlZmF1bHQoKTtcclxuICAgIHRoaXMuX2RyYWdEcm9wLm5leHQoZmFsc2UpO1xyXG4gICAgdGhpcy5fb25Ub3VjaGVkICYmIHRoaXMuX29uVG91Y2hlZCgpO1xyXG4gICAgY29uc3QgeyBpdGVtcyB9ID0gZXZlbnQuZGF0YVRyYW5zZmVyO1xyXG4gICAgY29uc3QgZmlsZXMgPSBbXSBhcyBGaWxlW107XHJcbiAgICBmb3IgKGxldCBpID0gMDsgaSA8IGl0ZW1zLmxlbmd0aDsgaSsrKSB7XHJcbiAgICAgIGNvbnN0IGZpbGUgPSBpdGVtc1tpXS5nZXRBc0ZpbGUoKTtcclxuICAgICAgZmlsZXMucHVzaChmaWxlKTtcclxuICAgIH1cclxuICAgIGNvbnN0IGNoZWNrZWRPdXQgPSB0aGlzLml0ZW1zLmZpbHRlcihpID0+IGkuY2hlY2tlZE91dCk7XHJcbiAgICBpZiAodGhpcy5pdGVtcyAmJiBjaGVja2VkT3V0Lmxlbmd0aCkge1xyXG4gICAgICBjb25zdCBvYnNlcnZhYmxlcyA9IFtdO1xyXG4gICAgICBmb3IgKGxldCBpdGVtIG9mIGNoZWNrZWRPdXQpIHtcclxuICAgICAgICBsZXQgZmlsZSA9IGZpbGVzLmZpbmQoZiA9PiBmLm5hbWUuc3RhcnRzV2l0aChpdGVtLmZpbGVOYW1lKSk7XHJcbiAgICAgICAgaWYgKGZpbGUpIHtcclxuICAgICAgICAgIGxldCBvYnNlcnZhYmxlID0gdGhpcy5fbWFpbGJveC5jaGVja0luKHRoaXMuX21vZGVsLmlkLCB0aGlzLl9tb2RlbC52ZXJzaW9uLCBpdGVtLmlkLCBmaWxlKS5cclxuICAgICAgICAgICAgcGlwZSh0YXAoZSA9PiB7XHJcbiAgICAgICAgICAgICAgLy9PYmplY3QuYXNzaWduKGl0ZW0sIGEsIHsgcHJvZ3Jlc3M6IG51bGwgfSk7XHJcbiAgICAgICAgICAgIH0pLCBjYXRjaEVycm9yKGUgPT4ge1xyXG4gICAgICAgICAgICAgIHRoaXMuX2hhbmRsZUVycm9yKGUpO1xyXG4gICAgICAgICAgICAgIHJldHVybiBvZihmYWxzZSk7XHJcbiAgICAgICAgICAgIH0pKTtcclxuICAgICAgICAgIG9ic2VydmFibGVzLnB1c2gob2JzZXJ2YWJsZSk7XHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcbiAgICAgIGZvcmtKb2luKG9ic2VydmFibGVzKS5zdWJzY3JpYmUoZSA9PiB7XHJcbiAgICAgICAgY29uc3QgYXR0YWNobWVudHMgPSBlLmZpbHRlcihlID0+IGUpIGFzIEF0dGFjaG1lbnRbXTtcclxuICAgICAgICBhdHRhY2htZW50cy5sZW5ndGggJiYgdGhpcy5fc2IudG9hc3QoXHJcbiAgICAgICAgICBhdHRhY2htZW50cy5sZW5ndGggPiAxID8gdGhpcy5fdHJhbnNsYXRlLmdldCgnQ2hlY2tlZEluTicsIGF0dGFjaG1lbnRzLmxlbmd0aCkgOlxyXG4gICAgICAgICAgICB0aGlzLl90cmFuc2xhdGUuZ2V0KCdDaGVja2VkSW4nLCBhdHRhY2htZW50c1swXS5maWxlTmFtZSlcclxuICAgICAgICApXHJcbiAgICAgIH0pO1xyXG4gICAgfVxyXG4gICAgZWxzZVxyXG4gICAgICB0aGlzLl91cGxvYWQoZmlsZXMpO1xyXG4gIH1cclxuICBASG9zdExpc3RlbmVyKCdkcmFnZW50ZXInLCBbJyRldmVudCddKVxyXG4gIGhhbmRsZUVudGVyKGV2ZW50OiBEcmFnRXZlbnQpIHtcclxuICAgIGV2ZW50LnByZXZlbnREZWZhdWx0KCk7XHJcbiAgICAhdGhpcy5kaXNhYmxlZCAmJiB0aGlzLl9kcmFnRHJvcC5uZXh0KHRydWUpO1xyXG4gIH1cclxuICBASG9zdExpc3RlbmVyKCdkcmFnbGVhdmUnLCBbJyRldmVudCddKVxyXG4gIGhhbmRsZUxlYXZlKGV2ZW50OiBEcmFnRXZlbnQpIHtcclxuICAgIGV2ZW50LnByZXZlbnREZWZhdWx0KCk7XHJcbiAgICAhdGhpcy5kaXNhYmxlZCAmJiB0aGlzLl9kcmFnRHJvcC5uZXh0KGZhbHNlKTtcclxuICB9XHJcbiAgQEhvc3RMaXN0ZW5lcignZHJhZ292ZXInLCBbJyRldmVudCddKVxyXG4gIGhhbmRsZU92ZXIoZXZlbnQ6IERyYWdFdmVudCkge1xyXG4gICAgZXZlbnQucHJldmVudERlZmF1bHQoKTtcclxuICAgICF0aGlzLmRpc2FibGVkICYmIHRoaXMuX2RyYWdEcm9wLm5leHQodHJ1ZSk7XHJcbiAgfVxyXG4gIHdyaXRlVmFsdWUodmFsOiBudW1iZXIgfCBudW1iZXJbXSk6IHZvaWQge1xyXG4gICAgaWYgKCF2YWwpIHtcclxuICAgICAgdGhpcy5pdGVtcyA9IG51bGw7XHJcbiAgICAgIHJldHVybjtcclxuICAgIH1cclxuICAgIGVsc2UgaWYgKGlzQXJyYXkodmFsKSlcclxuICAgICAgdGhpcy5pdGVtcyA9XHJcbiAgICAgICAgdmFsLm1hcChpID0+IHRoaXMuX2NyZWF0ZUl0ZW0oaSkpO1xyXG4gICAgZWxzZSB0aGlzLml0ZW1zW3RoaXMuX2NyZWF0ZUl0ZW0odmFsKV07XHJcbiAgfVxyXG4gIHJlZ2lzdGVyT25DaGFuZ2UoZm46IGFueSk6IHZvaWQge1xyXG4gICAgdGhpcy5fb25DaGFuZ2UgPSBmbjtcclxuICB9XHJcbiAgcmVnaXN0ZXJPblRvdWNoZWQoZm46IGFueSk6IHZvaWQge1xyXG4gICAgdGhpcy5fb25Ub3VjaGVkID0gZm47XHJcbiAgfVxyXG4gIHNldERpc2FibGVkU3RhdGU/KGlzRGlzYWJsZWQ6IGJvb2xlYW4pOiB2b2lkIHtcclxuICAgIHRoaXMuZGlzYWJsZWQgPSBpc0Rpc2FibGVkO1xyXG4gIH1cclxuICBASW5wdXQoKSBnZXQgdmFsdWUoKTogbnVtYmVyIHwgbnVtYmVyW10ge1xyXG4gICAgcmV0dXJuIHRoaXMuX3ZhbHVlO1xyXG4gIH1cclxuICBzZXQgdmFsdWUodmFsOiBudW1iZXIgfCBudW1iZXJbXSkge1xyXG4gICAgdGhpcy53cml0ZVZhbHVlKHZhbCk7XHJcbiAgICB0aGlzLnN0YXRlQ2hhbmdlcy5uZXh0KCk7XHJcbiAgfVxyXG4gIEBJbnB1dCgpIGdldCBwbGFjZWhvbGRlcigpOiBzdHJpbmcge1xyXG4gICAgcmV0dXJuIHRoaXMuX3BsYWNlaG9sZGVyO1xyXG4gIH1cclxuICBzZXQgcGxhY2Vob2xkZXIocGxoOiBzdHJpbmcpIHtcclxuICAgIHRoaXMuX3BsYWNlaG9sZGVyID0gcGxoO1xyXG4gICAgdGhpcy5zdGF0ZUNoYW5nZXMubmV4dCgpO1xyXG4gIH1cclxuICBmb2N1c2VkOiBib29sZWFuO1xyXG4gIGdldCBlbXB0eSgpOiBib29sZWFuIHsgcmV0dXJuICF0aGlzLml0ZW1zOyB9XHJcbiAgc2hvdWxkTGFiZWxGbG9hdDogYm9vbGVhbjtcclxuICBASW5wdXQoKVxyXG4gIGdldCByZXF1aXJlZCgpOiBib29sZWFuIHtcclxuICAgIHJldHVybiB0aGlzLl9yZXF1aXJlZDtcclxuICB9XHJcbiAgc2V0IHJlcXVpcmVkKHJlcTogYm9vbGVhbikge1xyXG4gICAgdGhpcy5fcmVxdWlyZWQgPSBjb2VyY2VCb29sZWFuUHJvcGVydHkocmVxKTtcclxuICAgIHRoaXMuc3RhdGVDaGFuZ2VzLm5leHQoKTtcclxuICB9XHJcbiAgQElucHV0KClcclxuICBnZXQgZGlzYWJsZWQoKTogYm9vbGVhbiB7IHJldHVybiB0aGlzLl9kaXNhYmxlZDsgfVxyXG4gIHNldCBkaXNhYmxlZCh2YWx1ZTogYm9vbGVhbikge1xyXG4gICAgdGhpcy5fZGlzYWJsZWQgPSBjb2VyY2VCb29sZWFuUHJvcGVydHkodmFsdWUpO1xyXG4gICAgdGhpcy5zdGF0ZUNoYW5nZXMubmV4dCgpO1xyXG4gIH1cclxuICBlcnJvclN0YXRlID0gZmFsc2U7XHJcbiAgY29udHJvbFR5cGU/OiBzdHJpbmcgPSAnYml6ZG9jLWZpbGUtdXBsb2FkJztcclxuICBASG9zdEJpbmRpbmcoJ2F0dHIuYXJpYS1kZXNjcmliZWRieScpIGRlc2NyaWJlZEJ5ID0gJyc7XHJcbiAgc2V0RGVzY3JpYmVkQnlJZHMoaWRzOiBzdHJpbmdbXSkge1xyXG4gICAgdGhpcy5kZXNjcmliZWRCeSA9IGlkcy5qb2luKCcgJyk7XHJcbiAgfVxyXG4gIG9uQ29udGFpbmVyQ2xpY2soKTogdm9pZCB7XHJcbiAgfVxyXG4gIHByb21wdCgpIHtcclxuICAgIHRoaXMuX3Byb21wdCgpLnRoZW4odGhpcy5fdXBsb2FkLmJpbmQodGhpcykpXHJcbiAgfVxyXG4gIHByaXZhdGUgX3Byb21wdChvcHRpb25zPzogeyBtdWx0aXBsZTogYm9vbGVhbiwgYWNjZXB0Pzogc3RyaW5nIH0pOiBQcm9taXNlPEZpbGUgfCBGaWxlW10+IHtcclxuICAgIGlmIChvcHRpb25zKSB7XHJcbiAgICAgIGlmIChvcHRpb25zLmFjY2VwdCkgdGhpcy5hY2NlcHQgPSBvcHRpb25zLmFjY2VwdDtcclxuICAgICAgaWYgKG9wdGlvbnMubXVsdGlwbGUgIT09IHVuZGVmaW5lZCkgdGhpcy5tdWx0aXBsZSA9IG9wdGlvbnMubXVsdGlwbGU7XHJcbiAgICB9XHJcbiAgICByZXR1cm4gbmV3IFByb21pc2UoKHJlc29sdmUpID0+IHtcclxuICAgICAgdGhpcy5faW5wdXQubmF0aXZlRWxlbWVudC5jbGljaygpO1xyXG4gICAgICB0aGlzLl9wZW5kaW5nLnN1YnNjcmliZShyZXNvbHZlKTtcclxuICAgIH0pXHJcbiAgfVxyXG4gIF9jaGFuZ2UoZXZ0OiBJbnB1dEV2ZW50KSB7XHJcbiAgICB0aGlzLl9vblRvdWNoZWQgJiYgdGhpcy5fb25Ub3VjaGVkKCk7XHJcbiAgICBjb25zdCB7IGZpbGVzIH0gPSBldnQuc3JjRWxlbWVudCBhcyBIVE1MSW5wdXRFbGVtZW50O1xyXG4gICAgY29uc3QgYXJyID0gW10gYXMgRmlsZVtdO1xyXG4gICAgZm9yICh2YXIgaSA9IDA7IGkgPCBmaWxlcy5sZW5ndGg7IGkrKykge1xyXG4gICAgICBsZXQgZmlsZSA9IGZpbGVzLml0ZW0oaSk7XHJcbiAgICAgIGFyci5wdXNoKGZpbGUpO1xyXG4gICAgfVxyXG4gICAgdGhpcy5fcGVuZGluZy5uZXh0KGFycik7XHJcbiAgfVxyXG4gIHByaXZhdGUgX2NyZWF0ZUl0ZW0oaWQ6IG51bWJlcik6IGFueSB7XHJcbiAgICAvL2NvbnN0IGxvZyA9IHRoaXMuX21vZGVsLmxvZy5maWx0ZXIobCA9PiBsLmZpbGVJZCA9PSBhdHRhY2htZW50LmlkICYmIGwudXNlcklkID09IHRoaXMuX3Nlc3Npb24udXNlcklkKSxcclxuICAgIGNvbnN0IGF0dGFjaG1lbnQgPSB0aGlzLl9tb2RlbC5hdHRhY2htZW50cy5maW5kKGEgPT4gYS5pZCA9PT0gaWQpLFxyXG4gICAgICBmaWxlRXh0ID0gQXR0YWNobWVudEluZm8uZmlsZUV4dChhdHRhY2htZW50LmZpbGVOYW1lKSxcclxuICAgICAgaWNvbiA9IEVYVEVOREVEX0lDT05TW2ZpbGVFeHRdO1xyXG4gICAgcmV0dXJuIHtcclxuICAgICAgLi4uYXR0YWNobWVudCxcclxuICAgICAgaGFzUHJldmlldzogQXR0YWNobWVudEluZm8uZXhpc3RzKGF0dGFjaG1lbnQuY29udGVudFR5cGUpLFxyXG4gICAgICBpc0ltYWdlOiBBdHRhY2htZW50SW5mby5pc0ltYWdlKGF0dGFjaG1lbnQuY29udGVudFR5cGUpLFxyXG4gICAgICBmaWxlRXh0LFxyXG4gICAgICBpY29uLFxyXG4gICAgICB1cmw6IHRoaXMuX3Nhbml0aXplci5ieXBhc3NTZWN1cml0eVRydXN0VXJsKFxyXG4gICAgICAgIHRoaXMuX21haWxib3guZm9ybWF0RG93bmxvYWRVcmwodGhpcy5fbW9kZWwuZG9jdW1lbnRJZCwgYXR0YWNobWVudC5pZCkpLFxyXG4gICAgICBjaGVja2VkT3V0OlxyXG4gICAgICAgIGF0dGFjaG1lbnQuY2hlY2tlZE91dCAmJlxyXG4gICAgICAgIGF0dGFjaG1lbnQuaG9sZGluZ0lkID09PSB0aGlzLl9zZXNzaW9uLnVzZXJJZFxyXG4gICAgfSBhcyBBdHRhY2htZW50RXh0cmE7XHJcbiAgfVxyXG4gIHByaXZhdGUgX3VwbG9hZChmaWxlczogRmlsZVtdKSB7XHJcbiAgICBjb25zdCBvYnNlcnZhYmxlcyA9IFtdO1xyXG4gICAgZm9yIChsZXQgZmlsZSBvZiBmaWxlcykge1xyXG4gICAgICBsZXQgb2JzZXJ2YWJsZSA9IHRoaXMuX21haWxib3gudXBsb2FkKHRoaXMuX21vZGVsLmlkLCB0aGlzLl9tb2RlbC5mb3JtSWQsIHRoaXMuX21vZGVsLnZlcnNpb24sXHJcbiAgICAgICAgZmlsZSwgeyBpc1ByaXZhdGU6IHRydWUgfSkuXHJcbiAgICAgICAgcGlwZSh0YXAoZSA9PiB7XHJcbiAgICAgICAgICAvLyAgaWYgKGUucHJvZ3Jlc3MpIHtcclxuXHJcbiAgICAgICAgICAvLyAgfVxyXG4gICAgICAgIH0pLCBjYXRjaEVycm9yKGUgPT4ge1xyXG4gICAgICAgICAgdGhpcy5faGFuZGxlRXJyb3IoZSk7XHJcbiAgICAgICAgICByZXR1cm4gb2YoZmFsc2UpO1xyXG4gICAgICAgIH0pKTtcclxuICAgICAgb2JzZXJ2YWJsZXMucHVzaChvYnNlcnZhYmxlKTtcclxuICAgIH1cclxuICAgIHRoaXMuX2lucHV0Lm5hdGl2ZUVsZW1lbnQudmFsdWUgPSBudWxsO1xyXG4gICAgZm9ya0pvaW4ob2JzZXJ2YWJsZXMpLnN1YnNjcmliZShlID0+IHtcclxuICAgICAgY29uc3QgaWRzID0gW107XHJcbiAgICAgIGlmICghdGhpcy5pdGVtcykgdGhpcy5pdGVtcyA9IFtdO1xyXG4gICAgICBlLmZvckVhY2goYSA9PiB7XHJcbiAgICAgICAgaWYgKCFhKSByZXR1cm47XHJcbiAgICAgICAgaWRzLnB1c2goYS5pZCk7XHJcbiAgICAgICAgdGhpcy5fbW9kZWwuYXR0YWNobWVudHMucHVzaChhKTtcclxuICAgICAgICB0aGlzLml0ZW1zLnB1c2godGhpcy5fY3JlYXRlSXRlbShhLmlkKSk7XHJcbiAgICAgIH0pXHJcbiAgICAgIGlmICh0aGlzLm11bHRpcGxlKVxyXG4gICAgICAgIHRoaXMuX3ZhbHVlID0gdGhpcy5fdmFsdWUgPyAodGhpcy5fdmFsdWUgYXMgbnVtYmVyW10pLmNvbmNhdChpZHMpIDogaWRzO1xyXG4gICAgICBlbHNlXHJcbiAgICAgICAgdGhpcy5fdmFsdWUgPSBpZHNbMF07XHJcbiAgICAgIHRoaXMuX29uQ2hhbmdlKHRoaXMuX3ZhbHVlKTtcclxuICAgIH0pO1xyXG4gIH1cclxuICBuZ09uRGVzdHJveSgpOiB2b2lkIHtcclxuICAgIHRoaXMuX2RyYWdEcm9wLmNvbXBsZXRlKCk7XHJcbiAgICB0aGlzLl9wZW5kaW5nLmNvbXBsZXRlKCk7XHJcbiAgICB0aGlzLnN0YXRlQ2hhbmdlcy5jb21wbGV0ZSgpO1xyXG4gIH1cclxufVxyXG4iLCI8YnV0dG9uIG1hdC1idXR0b24gKm5nSWY9XCIhaXRlbXM7IGVsc2UgcHJldmlld1wiIChjbGljayk9XCJwcm9tcHQoKVwiPlxyXG4gIDxtYXQtaWNvbiBjbGFzcz1cImZpbGxlZFwiPnt7aWNvbn19PC9tYXQtaWNvbj5cclxuICA8c3BhbiBjbGFzcz1cIm1hdC1oM1wiPnt7cGxhY2Vob2xkZXJ9fTwvc3Bhbj5cclxuPC9idXR0b24+XHJcbjxpbnB1dCB0eXBlPVwiZmlsZVwiICNpbnB1dFxyXG4gICAgICAgW2FjY2VwdF09YWNjZXB0IFttdWx0aXBsZV09bXVsdGlwbGUgKGNoYW5nZSk9J19jaGFuZ2UoJGV2ZW50KScgc3R5bGU9XCJkaXNwbGF5OiBub25lXCIgLz5cclxuPG5nLXRlbXBsYXRlICNwcmV2aWV3PlxyXG4gIDxkaXYgKm5nRm9yPSdsZXQgYSBvZiBpdGVtcycgY2xhc3M9XCJhdHRhY2htZW50LWl0ZW1cIlxyXG4gICAgICAgW2NsYXNzLmRlbGV0ZWRdPVwiYS5kZWxldGVkXCIgW2NsYXNzLmZhaWxlZF09XCJhLmZhaWxlZFwiXHJcbiAgICAgICBbcHJvZ3Jlc3NJbmRpY2F0b3JdPVwiYS5wcm9ncmVzc1wiPlxyXG4gICAgPGltZyAqbmdJZj1cImEuaXNJbWFnZVwiIFtzcmNdPVwiYS51cmxcIiAoY2xpY2spPVwib3BlblByZXZpZXcoYSlcIiBoZWlnaHQ9XCI4MFwiIGNsYXNzPVwiZmlsZS1wcmV2aWV3XCI+XHJcbiAgICA8ZGl2ICpuZ0lmPVwiYS5oYXNQcmV2aWV3ICYmICFhLmlzSW1hZ2VcIiBmeExheW91dD1cImNvbHVtblwiIGNsYXNzPVwiZmlsZS1wcmV2aWV3XCI+XHJcbiAgICAgIDxidXR0b24gbWF0LWljb24tYnV0dG9uIChjbGljayk9XCJvcGVuUHJldmlldyhhKVwiIFtiaXpkb2NUb29sdGlwXT1cIidQcmV2aWV3J3x0cmFuc2xhdGVcIj48bWF0LWljb24gY2xhc3M9XCJtYXQtaWNvbi1ydGwtbWlycm9yXCI+ZmluZF9pbl9wYWdlPC9tYXQtaWNvbj48L2J1dHRvbj5cclxuICAgICAgPHNwYW4+Lnt7YS5maWxlRXh0fX08L3NwYW4+XHJcbiAgICA8L2Rpdj5cclxuICAgIDxtYXQtaWNvbiAqbmdJZj1cImEuaWNvblwiIFtzdmdJY29uXT1cImEuaWNvblwiIFtpbmxpbmVdPVwidHJ1ZVwiPjwvbWF0LWljb24+XHJcbiAgICA8ZGl2IGNsYXNzPVwiZmlsZS1vdmVybGF5IHJvd1wiPlxyXG4gICAgICA8c3BhbiBjbGFzcz1cImZpbGVuYW1lXCI+e3thLmZpbGVOYW1lfX08L3NwYW4+XHJcbiAgICAgIDxzcGFuIGNsYXNzPVwiZGl2aWRlclwiPjwvc3Bhbj5cclxuICAgICAgPGJ1dHRvbiBtYXQtaWNvbi1idXR0b24gY2xhc3M9XCJvcHRpb25zXCIgW21hdE1lbnVUcmlnZ2VyRm9yXT1cIm1lbnVcIiBbYml6ZG9jVG9vbHRpcF09XCInT3B0aW9ucycgfCB0cmFuc2xhdGVcIj5cclxuICAgICAgICA8bWF0LWljb24+bW9yZV92ZXJ0PC9tYXQtaWNvbj5cclxuICAgICAgPC9idXR0b24+XHJcbiAgICA8L2Rpdj5cclxuICAgIDxtYXQtbWVudSAjbWVudT5cclxuICAgICAgPG5nLWNvbnRhaW5lciAqbmdJZj1cIiFhLmZhaWxlZFwiPlxyXG4gICAgICAgIDxuZy1jb250YWluZXIgKm5nSWY9XCJjYW5FZGl0KGEpICYmICFhLmZhaWxlZFwiPlxyXG4gICAgICAgICAgPG5nLWNvbnRhaW5lciAqbmdJZj1cIiFhLmNoZWNrZWRPdXRcIj5cclxuICAgICAgICAgICAgPGJ1dHRvbiBtYXQtbWVudS1pdGVtIChjbGljayk9XCJjaGVja091dChhKVwiPnt7XCJDaGVja091dFwiIHwgdHJhbnNsYXRlfX08L2J1dHRvbj5cclxuICAgICAgICAgICAgPGJ1dHRvbiBtYXQtbWVudS1pdGVtIChjbGljayk9XCJwcm9tcHQoKVwiPnt7XCJBZGRcIiB8IHRyYW5zbGF0ZX19PC9idXR0b24+XHJcbiAgICAgICAgICA8L25nLWNvbnRhaW5lcj5cclxuICAgICAgICAgIDxidXR0b24gbWF0LW1lbnUtaXRlbSAoY2xpY2spPVwiY2hlY2tJbihhKVwiICpuZ0lmPVwiYS5jaGVja2VkT3V0XCI+e3tcIkNoZWNrSW5cIiB8IHRyYW5zbGF0ZX19PC9idXR0b24+XHJcbiAgICAgICAgPC9uZy1jb250YWluZXI+XHJcbiAgICAgICAgPG1hdC1kaXZpZGVyPjwvbWF0LWRpdmlkZXI+XHJcbiAgICAgICAgPGJ1dHRvbiBtYXQtbWVudS1pdGVtIChjbGljayk9XCJkb3dubG9hZChhKVwiPnt7XCJEb3dubG9hZFwiIHwgdHJhbnNsYXRlfX08L2J1dHRvbj5cclxuICAgICAgICA8YnV0dG9uIG1hdC1tZW51LWl0ZW0gKm5nSWY9XCJjYW5QcmV2aWV3KGEpXCIgKGNsaWNrKT1cIm9wZW5QcmV2aWV3KGEpXCI+PG1hdC1pY29uPmxhbmRzY2FwZTwvbWF0LWljb24+IHt7XCJQcmV2aWV3XCIgfCB0cmFuc2xhdGV9fTwvYnV0dG9uPlxyXG4gICAgICAgIDxuZy1jb250YWluZXIgKm5nSWY9XCJoYXNWZXJzaW9uKGEpXCI+XHJcbiAgICAgICAgICA8bWF0LWRpdmlkZXI+PC9tYXQtZGl2aWRlcj5cclxuICAgICAgICAgIDxidXR0b24gbWF0LW1lbnUtaXRlbSAqbmdGb3I9XCJsZXQgdiBvZiBnZXRWZXJzaW9ucyhhKVwiIChjbGljayk9XCJwcmV2aWV3T3JEb3dubG9hZCh2KVwiPnt7di50aW1lIHwgIGFtQ2FsZW5kYXJ9fTwvYnV0dG9uPlxyXG4gICAgICAgIDwvbmctY29udGFpbmVyPlxyXG4gICAgICAgIDxuZy1jb250YWluZXIgKm5nSWY9XCJjYW5FZGl0KGEpXCI+XHJcbiAgICAgICAgICA8bWF0LWRpdmlkZXI+PC9tYXQtZGl2aWRlcj5cclxuICAgICAgICAgIDxidXR0b24gbWF0LW1lbnUtaXRlbSAoY2xpY2spPVwiZGlzY2FyZChhKVwiPnt7XCJEaXNjYXJkXCIgfCB0cmFuc2xhdGV9fTwvYnV0dG9uPlxyXG4gICAgICAgIDwvbmctY29udGFpbmVyPlxyXG4gICAgICA8L25nLWNvbnRhaW5lcj5cclxuICAgICAgPGJ1dHRvbiBtYXQtbWVudS1pdGVtIChjbGljayk9XCJjYW5jZWwoYSlcIiAqbmdJZj1cImEuZmFpbGVkXCI+e3tcIkNhbmNlbFwiIHwgdHJhbnNsYXRlfX08L2J1dHRvbj5cclxuICAgIDwvbWF0LW1lbnU+XHJcbiAgPC9kaXY+XHJcbjwvbmctdGVtcGxhdGU+XHJcbiJdfQ==
|