@bizdoc/core 1.13.0-next.3 → 1.13.0-next.7
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/esm2020/lib/admin/document-trace/trace-element.component.mjs +22 -26
- package/esm2020/lib/app.component.mjs +1 -1
- package/esm2020/lib/browse/browse-items.component.mjs +4 -4
- package/esm2020/lib/browse/expanded-item/expanded-item.component.mjs +63 -49
- package/esm2020/lib/compose/trace/flow.component.mjs +45 -75
- package/esm2020/lib/compose/trace/trace.component.mjs +24 -32
- package/esm2020/lib/core/hub.service.mjs +1 -1
- package/esm2020/lib/core/mailbox.service.mjs +31 -6
- package/esm2020/lib/core/models.mjs +1 -1
- package/esm2020/lib/core/translations.mjs +9 -2
- package/esm2020/lib/home/home-base.component.mjs +2 -2
- package/fesm2015/bizdoc-core.mjs +191 -185
- package/fesm2015/bizdoc-core.mjs.map +1 -1
- package/fesm2020/bizdoc-core.mjs +187 -183
- package/fesm2020/bizdoc-core.mjs.map +1 -1
- package/lib/admin/document-trace/trace-element.component.d.ts +1 -1
- package/lib/app.component.d.ts +2 -2
- package/lib/browse/expanded-item/expanded-item.component.d.ts +6 -6
- package/lib/core/hub.service.d.ts +1 -0
- package/lib/core/mailbox.service.d.ts +4 -1
- package/lib/core/models.d.ts +6 -2
- package/lib/core/translations.d.ts +8 -1
- package/package.json +10 -10
- package/bizdoc-core.d.ts.map +0 -1
- package/lib/admin/admin-dismiss.service.d.ts.map +0 -1
- package/lib/admin/admin-menu.component.d.ts.map +0 -1
- package/lib/admin/core/ace.input.d.ts.map +0 -1
- package/lib/admin/core/color-picker.input.d.ts.map +0 -1
- package/lib/admin/core/search.input.d.ts.map +0 -1
- package/lib/admin/diff/configuration-diff.component.d.ts.map +0 -1
- package/lib/admin/document-trace/Timeline.d.ts.map +0 -1
- package/lib/admin/document-trace/document-trace.component.d.ts.map +0 -1
- package/lib/admin/document-trace/reassign.dialog.d.ts.map +0 -1
- package/lib/admin/document-trace/trace-element.component.d.ts.map +0 -1
- package/lib/admin/form/form.resolve.service.d.ts.map +0 -1
- package/lib/admin/form/form.service.d.ts.map +0 -1
- package/lib/admin/form/workflow/node-ref.d.ts.map +0 -1
- package/lib/admin/form/workflow/node.component.d.ts.map +0 -1
- package/lib/admin/form/workflow/role-node.component.d.ts.map +0 -1
- package/lib/admin/form/workflow/workflow.component.d.ts.map +0 -1
- package/lib/admin/indices/manage-cube-index.component.d.ts.map +0 -1
- package/lib/admin/patterns/patterns.component.d.ts.map +0 -1
- package/lib/admin/permissions/permissions.component.d.ts.map +0 -1
- package/lib/admin/positions/positions-popup.component.d.ts.map +0 -1
- package/lib/admin/positions/positions.component.d.ts.map +0 -1
- package/lib/admin/profiler/profiler.component.d.ts.map +0 -1
- package/lib/admin/utility-ref.d.ts.map +0 -1
- package/lib/admin/utility-wrapper.component.d.ts.map +0 -1
- package/lib/admin/utility.pane.component.d.ts.map +0 -1
- package/lib/app.component.d.ts.map +0 -1
- package/lib/bizdoc.module.d.ts.map +0 -1
- package/lib/browse/browse-items.component.d.ts.map +0 -1
- package/lib/browse/browse.mobile.component.d.ts.map +0 -1
- package/lib/browse/browse.pane.component.d.ts.map +0 -1
- package/lib/browse/expanded-item/expanded-item.component.d.ts.map +0 -1
- package/lib/browse/filter/filter.component.d.ts.map +0 -1
- package/lib/browse/folders-menu.component.d.ts.map +0 -1
- package/lib/chat/chat-info.d.ts.map +0 -1
- package/lib/chat/chat.mobile.component.d.ts.map +0 -1
- package/lib/chat/chat.service.d.ts.map +0 -1
- package/lib/chat/contacts.component.d.ts.map +0 -1
- package/lib/chat/contacts.pane.component.d.ts.map +0 -1
- package/lib/chat/conversation.component.d.ts.map +0 -1
- package/lib/chat/conversation.pane.component.d.ts.map +0 -1
- package/lib/compose/action/action-picker.component.d.ts.map +0 -1
- package/lib/compose/action/action-ref.d.ts.map +0 -1
- package/lib/compose/action/action.base.d.ts.map +0 -1
- package/lib/compose/action/action.dialog.d.ts.map +0 -1
- package/lib/compose/action/action.pane.dialog.exp.d.ts.map +0 -1
- package/lib/compose/action/assign-action.component.d.ts.map +0 -1
- package/lib/compose/action/return-action.component.d.ts.map +0 -1
- package/lib/compose/attachments/attachments.component.d.ts.map +0 -1
- package/lib/compose/attachments/preview/attachment-preview.component.d.ts.map +0 -1
- package/lib/compose/attachments/progress-button.directive.d.ts.map +0 -1
- package/lib/compose/can-deactivate-changes.service.d.ts.map +0 -1
- package/lib/compose/comments/Comments.pane.component.d.ts.map +0 -1
- package/lib/compose/comments/comment.component.d.ts.map +0 -1
- package/lib/compose/comments/comments.component.d.ts.map +0 -1
- package/lib/compose/comments/edit-comment.component.d.ts.map +0 -1
- package/lib/compose/comments/edits.component.d.ts.map +0 -1
- package/lib/compose/comments/quick-comment.component.exp.d.ts.map +0 -1
- package/lib/compose/comments/votes.component.d.ts.map +0 -1
- package/lib/compose/compose-resolve.service.d.ts.map +0 -1
- package/lib/compose/compose.mobile.component.d.ts.map +0 -1
- package/lib/compose/compose.pane.component.d.ts.map +0 -1
- package/lib/compose/copy/copy.dialog.d.ts.map +0 -1
- package/lib/compose/dismiss.service.d.ts.map +0 -1
- package/lib/compose/document-resolver.service.d.ts.map +0 -1
- package/lib/compose/document.component.d.ts.map +0 -1
- package/lib/compose/document.mobile.component.d.ts.map +0 -1
- package/lib/compose/document.pane.component.d.ts.map +0 -1
- package/lib/compose/events/events.component.d.ts.map +0 -1
- package/lib/compose/form-ref.d.ts.map +0 -1
- package/lib/compose/form-selector/form-selector.sheet.d.ts.map +0 -1
- package/lib/compose/form.component.d.ts.map +0 -1
- package/lib/compose/new-menu.component.d.ts.map +0 -1
- package/lib/compose/privilage.directive.d.ts.map +0 -1
- package/lib/compose/recipient-resolver.service.d.ts.map +0 -1
- package/lib/compose/save-changes.dialog.d.ts.map +0 -1
- package/lib/compose/state.component.d.ts.map +0 -1
- package/lib/compose/tag/tags.component.d.ts.map +0 -1
- package/lib/compose/trace/flow.component.d.ts.map +0 -1
- package/lib/compose/trace/people.component.d.ts.map +0 -1
- package/lib/compose/trace/trace.base.d.ts.map +0 -1
- package/lib/compose/trace/trace.component.d.ts.map +0 -1
- package/lib/compose/trace/trace.pane.component.d.ts.map +0 -1
- package/lib/compose/version-compare/version-compare.component.d.ts.map +0 -1
- package/lib/compose/version-compare/version-compare.directive.d.ts.map +0 -1
- package/lib/compose/version-compare/version.pane.component.d.ts.map +0 -1
- package/lib/core/NgComponentOutlet.d.ts.map +0 -1
- package/lib/core/account.service.d.ts.map +0 -1
- package/lib/core/animated-icon/animated-icon.directive.d.ts.map +0 -1
- package/lib/core/animations.d.ts.map +0 -1
- package/lib/core/authentication.d.ts.map +0 -1
- package/lib/core/avatar/avatar.component.d.ts.map +0 -1
- package/lib/core/base.d.ts.map +0 -1
- package/lib/core/colors.d.ts.map +0 -1
- package/lib/core/component-factory-resolver.d.ts.map +0 -1
- package/lib/core/configuration.d.ts.map +0 -1
- package/lib/core/controls/address.input.d.ts.map +0 -1
- package/lib/core/controls/auto-complete.input.d.ts.map +0 -1
- package/lib/core/controls/combination-picker-body.d.ts.map +0 -1
- package/lib/core/controls/combination-picker.d.ts.map +0 -1
- package/lib/core/controls/combination-pool.d.ts.map +0 -1
- package/lib/core/controls/file.input.d.ts.map +0 -1
- package/lib/core/controls/select.input.d.ts.map +0 -1
- package/lib/core/controls/time-picker.d.ts.map +0 -1
- package/lib/core/controls/timespan.input.d.ts.map +0 -1
- package/lib/core/datasource.service.d.ts.map +0 -1
- package/lib/core/decorators.d.ts.map +0 -1
- package/lib/core/firebase.service.d.ts.map +0 -1
- package/lib/core/functions.d.ts.map +0 -1
- package/lib/core/guide/guide.component.d.ts.map +0 -1
- package/lib/core/guide/guide.service.d.ts.map +0 -1
- package/lib/core/http.interceptor.d.ts.map +0 -1
- package/lib/core/hub.service.d.ts.map +0 -1
- package/lib/core/identity/identity.component.d.ts.map +0 -1
- package/lib/core/info/attachment-info.service.d.ts.map +0 -1
- package/lib/core/info/document-info.service.d.ts.map +0 -1
- package/lib/core/info/location-info.component.d.ts.map +0 -1
- package/lib/core/info/map-info.d.ts.map +0 -1
- package/lib/core/layout/autocomplete.field.d.ts.map +0 -1
- package/lib/core/layout/checkbox.d.ts.map +0 -1
- package/lib/core/layout/checkbox.field.d.ts.map +0 -1
- package/lib/core/layout/date-range.field.d.ts.map +0 -1
- package/lib/core/layout/date.field.d.ts.map +0 -1
- package/lib/core/layout/expression.field.d.ts.map +0 -1
- package/lib/core/layout/html.field.d.ts.map +0 -1
- package/lib/core/layout/input.base.d.ts.map +0 -1
- package/lib/core/layout/input.field.d.ts.map +0 -1
- package/lib/core/layout/layout.component.d.ts.map +0 -1
- package/lib/core/layout/numeric.field.d.ts.map +0 -1
- package/lib/core/layout/select.field.d.ts.map +0 -1
- package/lib/core/layout/switch.field.d.ts.map +0 -1
- package/lib/core/layout/textarea.field.d.ts.map +0 -1
- package/lib/core/layout/timespan.field.d.ts.map +0 -1
- package/lib/core/lottie-animation.d.ts.map +0 -1
- package/lib/core/mailbox.service.d.ts.map +0 -1
- package/lib/core/models.d.ts.map +0 -1
- package/lib/core/none.component.d.ts.map +0 -1
- package/lib/core/pipes/action.pipe.d.ts.map +0 -1
- package/lib/core/pipes/calendar.pipe.d.ts.map +0 -1
- package/lib/core/pipes/date-format.pipe.d.ts.map +0 -1
- package/lib/core/pipes/daterange.pipe.d.ts.map +0 -1
- package/lib/core/pipes/difference.pipe.d.ts.map +0 -1
- package/lib/core/pipes/duration-format.pipe.d.ts.map +0 -1
- package/lib/core/pipes/duration.pipe.d.ts.map +0 -1
- package/lib/core/pipes/form.pipe.d.ts.map +0 -1
- package/lib/core/pipes/join.pipe.d.ts.map +0 -1
- package/lib/core/pipes/role.pipe.d.ts.map +0 -1
- package/lib/core/pipes/sanitize-html.pipe.d.ts.map +0 -1
- package/lib/core/pipes/sort.pipe.d.ts.map +0 -1
- package/lib/core/pipes/state.pipe.d.ts.map +0 -1
- package/lib/core/pipes/time-ago.pipe.d.ts.map +0 -1
- package/lib/core/pipes/translate.pipe.d.ts.map +0 -1
- package/lib/core/pipes/type-value.pipe.d.ts.map +0 -1
- package/lib/core/pipes/user-name.pipe.d.ts.map +0 -1
- package/lib/core/popup/popup-ref.d.ts.map +0 -1
- package/lib/core/popup/popup.component.d.ts.map +0 -1
- package/lib/core/popup/popup.service.d.ts.map +0 -1
- package/lib/core/popup/tooltip.directive.d.ts.map +0 -1
- package/lib/core/prompt/ask/ask.dialog.d.ts.map +0 -1
- package/lib/core/prompt/mask/mask.component.d.ts.map +0 -1
- package/lib/core/prompt.service.d.ts.map +0 -1
- package/lib/core/router.d.ts.map +0 -1
- package/lib/core/session.service.d.ts.map +0 -1
- package/lib/core/slots/pane-ref.d.ts.map +0 -1
- package/lib/core/slots/router.directive.d.ts.map +0 -1
- package/lib/core/slots/router.service.d.ts.map +0 -1
- package/lib/core/slots/slots.component.d.ts.map +0 -1
- package/lib/core/tagging/documents.component.d.ts.map +0 -1
- package/lib/core/tagging/edit-input.component.d.ts.map +0 -1
- package/lib/core/tagging/emoji.component.d.ts.map +0 -1
- package/lib/core/tagging/tagging-item.directive.d.ts.map +0 -1
- package/lib/core/tagging/tagging.component-base.d.ts.map +0 -1
- package/lib/core/tagging/tagging.directive.d.ts.map +0 -1
- package/lib/core/tagging/tagging.pipe.d.ts.map +0 -1
- package/lib/core/tagging/users.component.d.ts.map +0 -1
- package/lib/core/translate.service.d.ts.map +0 -1
- package/lib/core/translations.d.ts.map +0 -1
- package/lib/core/window-title.service.d.ts.map +0 -1
- package/lib/cube/accum/accum.component.d.ts.map +0 -1
- package/lib/cube/chart/chart.component.d.ts.map +0 -1
- package/lib/cube/cube-info.service.d.ts.map +0 -1
- package/lib/cube/cube-menu.component.d.ts.map +0 -1
- package/lib/cube/cube-view.component.d.ts.map +0 -1
- package/lib/cube/cube.service.d.ts.map +0 -1
- package/lib/cube/declarations.d.ts.map +0 -1
- package/lib/cube/explore/document-item.component.d.ts.map +0 -1
- package/lib/cube/explore/explore-item.component.d.ts.map +0 -1
- package/lib/cube/explore/explore-items.component.d.ts.map +0 -1
- package/lib/cube/explore/explore.pane.component.d.ts.map +0 -1
- package/lib/cube/explore/item-resolver.service.d.ts.map +0 -1
- package/lib/cube/explore/item.pane.component.d.ts.map +0 -1
- package/lib/cube/filter/filter-tags.component.exp.d.ts.map +0 -1
- package/lib/cube/filter/filter.component.d.ts.map +0 -1
- package/lib/cube/grid/grid.component.d.ts.map +0 -1
- package/lib/cube/grid/spreadsheet.component.d.ts.map +0 -1
- package/lib/cube/matrix/matrix.base.d.ts.map +0 -1
- package/lib/cube/matrix/matrix.mobile.component.d.ts.map +0 -1
- package/lib/cube/matrix/matrix.pane.component.d.ts.map +0 -1
- package/lib/cube/matrix/popup.component.d.ts.map +0 -1
- package/lib/cube/matrix/table.component.d.ts.map +0 -1
- package/lib/cube/parallel/item.d.ts.map +0 -1
- package/lib/cube/parallel/parallel.component.d.ts.map +0 -1
- package/lib/cube/pivot/pivot.component.d.ts.map +0 -1
- package/lib/cube/sum/sum.component.d.ts.map +0 -1
- package/lib/cube/view-base.d.ts.map +0 -1
- package/lib/cube/view.mobile.component.d.ts.map +0 -1
- package/lib/cube/view.pane.component.d.ts.map +0 -1
- package/lib/dashboard/actions/actions.widget.d.ts.map +0 -1
- package/lib/dashboard/cube/accum-cube.widget.d.ts.map +0 -1
- package/lib/dashboard/cube/cube-analysis.base.d.ts.map +0 -1
- package/lib/dashboard/cube/cube-analysis.widget.d.ts.map +0 -1
- package/lib/dashboard/cube/cube-chart.widget.d.ts.map +0 -1
- package/lib/dashboard/cube/documents.widget.d.ts.map +0 -1
- package/lib/dashboard/cube/filter/filter.component.d.ts.map +0 -1
- package/lib/dashboard/dashboard.component.d.ts.map +0 -1
- package/lib/dashboard/dashboard.pane.component.d.ts.map +0 -1
- package/lib/dashboard/recents/recents.widget.d.ts.map +0 -1
- package/lib/dashboard/score/activity.widget.d.ts.map +0 -1
- package/lib/dashboard/score/compare-departments.widget.d.ts.map +0 -1
- package/lib/dashboard/score/peers-performance.widget.d.ts.map +0 -1
- package/lib/dashboard/score/pending-results.widget.d.ts.map +0 -1
- package/lib/dashboard/score/personal-score.widget.d.ts.map +0 -1
- package/lib/dashboard/widget-item.component.d.ts.map +0 -1
- package/lib/dashboard/widget-ref.d.ts.map +0 -1
- package/lib/desktop.module.d.ts.map +0 -1
- package/lib/home/about/about.dialog.d.ts.map +0 -1
- package/lib/home/home-base.component.d.ts.map +0 -1
- package/lib/home/home.desktop.component.d.ts.map +0 -1
- package/lib/home/home.mobile.component.d.ts.map +0 -1
- package/lib/home/notifications/notifications.component.d.ts.map +0 -1
- package/lib/home/options/options.component.d.ts.map +0 -1
- package/lib/home/outofoffice/outofoffice.component.d.ts.map +0 -1
- package/lib/home/search.service.d.ts.map +0 -1
- package/lib/home/sign/sign.component.d.ts.map +0 -1
- package/lib/home/tools.component.d.ts.map +0 -1
- package/lib/impersonate/impersonate.component.d.ts.map +0 -1
- package/lib/mobile.module.d.ts.map +0 -1
- package/lib/modules/chart.module.d.ts.map +0 -1
- package/lib/modules/circular-gauge.module.d.ts.map +0 -1
- package/lib/modules/date.adapter.d.ts.map +0 -1
- package/lib/modules/datepicker.intl.d.ts.map +0 -1
- package/lib/modules/diagram.module.d.ts.map +0 -1
- package/lib/modules/gantt.module.d.ts.map +0 -1
- package/lib/modules/grid.module.d.ts.map +0 -1
- package/lib/modules/material.module.d.ts.map +0 -1
- package/lib/modules/paginator.intl.d.ts.map +0 -1
- package/lib/modules/pivot.module.d.ts.map +0 -1
- package/lib/modules/schedule.module.d.ts.map +0 -1
- package/lib/modules/spreadsheet.module.d.ts.map +0 -1
- package/lib/modules/stepper.intl.d.ts.map +0 -1
- package/lib/modules/texteditor.module.d.ts.map +0 -1
- package/lib/notifications/filter.component.d.ts.map +0 -1
- package/lib/notifications/notifications-table.component.d.ts.map +0 -1
- package/lib/notifications/notifications.component-base.d.ts.map +0 -1
- package/lib/notifications/notifications.mobile.component.d.ts.map +0 -1
- package/lib/notifications/notifications.pane.component.d.ts.map +0 -1
- package/lib/notifications/notifications.service.d.ts.map +0 -1
- package/lib/notifications/types/commented.notification.d.ts.map +0 -1
- package/lib/notifications/types/cube-anomaly.notification.d.ts.map +0 -1
- package/lib/notifications/types/escalated.notification.d.ts.map +0 -1
- package/lib/notifications/types/liked.notification.d.ts.map +0 -1
- package/lib/notifications/types/long-running-task.notification.d.ts.map +0 -1
- package/lib/notifications/types/notification-base.d.ts.map +0 -1
- package/lib/notifications/types/nudge.notification.d.ts.map +0 -1
- package/lib/notifications/types/state-changed.notification.d.ts.map +0 -1
- package/lib/notifications/types/tagged.notification.d.ts.map +0 -1
- package/lib/notifications/types/text.notification.d.ts.map +0 -1
- package/lib/notifications/types/upcoming-event.notification.d.ts.map +0 -1
- package/lib/options/options.component.d.ts.map +0 -1
- package/lib/options/options.service.d.ts.map +0 -1
- package/lib/reports/arguments-component.d.ts.map +0 -1
- package/lib/reports/cube/grid-documents.component.d.ts.map +0 -1
- package/lib/reports/cube/table-documents.component.d.ts.map +0 -1
- package/lib/reports/cube/usage-args.component.d.ts.map +0 -1
- package/lib/reports/cube/usage-base.d.ts.map +0 -1
- package/lib/reports/cube/usage-chart.component.d.ts.map +0 -1
- package/lib/reports/cube/usage-pivot.component.d.ts.map +0 -1
- package/lib/reports/report-ref.d.ts.map +0 -1
- package/lib/reports/report-viewer.component.d.ts.map +0 -1
- package/lib/reports/report.mobile.component.d.ts.map +0 -1
- package/lib/reports/report.pane.component.d.ts.map +0 -1
- package/lib/reports/reports-menu.component.d.ts.map +0 -1
- package/lib/reports/substitution/substitution.component.d.ts.map +0 -1
- package/lib/reports/table/table-view.component.d.ts.map +0 -1
- package/lib/reports/tasks/tasks.component.d.ts.map +0 -1
- package/lib/routes.desktop.d.ts.map +0 -1
- package/lib/routes.mobile.d.ts.map +0 -1
- package/lib/scheduler/schedule.component.d.ts.map +0 -1
- package/lib/scheduler/scheduler.mobile.component.d.ts.map +0 -1
- package/lib/scheduler/scheduler.pane.component.d.ts.map +0 -1
- package/lib/shared.module.d.ts.map +0 -1
- package/lib/system.module.d.ts.map +0 -1
- package/lib/views/cube/chart.component.d.ts.map +0 -1
- package/lib/views/cube/cube-base.d.ts.map +0 -1
- package/lib/views/cube/explore.component.d.ts.map +0 -1
- package/lib/views/cube/matrix.component.d.ts.map +0 -1
- package/lib/views/cube/parallel.component.d.ts.map +0 -1
- package/lib/views/cube/pivot.component.d.ts.map +0 -1
- package/lib/views/cube/sum.component.d.ts.map +0 -1
- package/lib/views/cube/view.component.d.ts.map +0 -1
- package/lib/views/document-view-ref.d.ts.map +0 -1
- package/lib/views/timeline/timeline.component.exp.d.ts.map +0 -1
- package/lib/views/view-item.component.d.ts.map +0 -1
- package/lib/views/views.component.d.ts.map +0 -1
- package/lib/views/views.mobile.component.d.ts.map +0 -1
- package/lib/views/views.pane.component.d.ts.map +0 -1
- package/public-api.d.ts.map +0 -1
package/fesm2015/bizdoc-core.mjs
CHANGED
@@ -128,7 +128,7 @@ import { Spreadsheet, isNumber, SpreadsheetModule, SelectionService as Selection
|
|
128
128
|
import * as i4$1 from '@ctrl/ngx-emoji-mart';
|
129
129
|
import { PickerModule } from '@ctrl/ngx-emoji-mart';
|
130
130
|
import * as i11$1 from '@syncfusion/ej2-angular-diagrams';
|
131
|
-
import { Diagram, UndoRedo, ConnectorDrawingTool, DiagramConstraints, DiagramTools, NodeConstraints, ConnectorConstraints, SelectorConstraints, Node, SymbolPaletteComponent, ComplexHierarchicalTree, BpmnDiagrams, DataBinding, ConnectionPointOrigin, SnapConstraints, ComplexHierarchicalTreeService, DiagramModule, SymbolPaletteModule, ConnectorBridgingService, LineRoutingService, BpmnDiagramsService, LayoutAnimationService, UndoRedoService, SnappingService, ConnectorEditingService, ToolBase } from '@syncfusion/ej2-angular-diagrams';
|
131
|
+
import { Diagram, UndoRedo, ConnectorDrawingTool, DiagramConstraints, DiagramTools, NodeConstraints, ConnectorConstraints, SelectorConstraints, Node, SymbolPaletteComponent, ComplexHierarchicalTree, BpmnDiagrams, DataBinding, LineDistribution, ConnectionPointOrigin, SnapConstraints, ComplexHierarchicalTreeService, DiagramModule, SymbolPaletteModule, ConnectorBridgingService, LineRoutingService, BpmnDiagramsService, LayoutAnimationService, UndoRedoService, SnappingService, ConnectorEditingService, ToolBase } from '@syncfusion/ej2-angular-diagrams';
|
132
132
|
import * as i9$2 from '@syncfusion/ej2-angular-schedule';
|
133
133
|
import { Schedule, Day, WorkWeek, Month, MonthAgenda, Agenda, Year, ScheduleModule, ExcelExportService as ExcelExportService$2, DayService, WorkWeekService, MonthService, MonthAgendaService, ICalendarExportService, AgendaService, YearService } from '@syncfusion/ej2-angular-schedule';
|
134
134
|
import * as i10$2 from '@syncfusion/ej2-angular-kanban';
|
@@ -1247,6 +1247,8 @@ class MailboxService {
|
|
1247
1247
|
};
|
1248
1248
|
messaging.new$.
|
1249
1249
|
subscribe(m => {
|
1250
|
+
if (m.userId !== _session.profile.userId)
|
1251
|
+
return;
|
1250
1252
|
_session.profile.inboxCount++;
|
1251
1253
|
const folder = _session.profile.folders.find(f => f.name === m.model.folderId);
|
1252
1254
|
folder.count++;
|
@@ -1564,20 +1566,43 @@ function isHttpProgressEvent(event) {
|
|
1564
1566
|
}
|
1565
1567
|
function calculateState(upload, event) {
|
1566
1568
|
if (isHttpProgressEvent(event)) {
|
1567
|
-
return {
|
1569
|
+
return new UploadEvent({
|
1568
1570
|
progress: event.total
|
1569
1571
|
? Math.round((100 * event.loaded) / event.total)
|
1570
1572
|
: upload.progress,
|
1571
1573
|
state: 'progress',
|
1572
|
-
};
|
1574
|
+
});
|
1573
1575
|
}
|
1574
1576
|
if (isHttpResponse(event)) {
|
1575
|
-
return {
|
1577
|
+
return new UploadEvent({
|
1576
1578
|
progress: 100,
|
1577
1579
|
state: 'done',
|
1578
|
-
};
|
1580
|
+
});
|
1579
1581
|
}
|
1580
1582
|
return upload;
|
1583
|
+
}
|
1584
|
+
class UploadEvent {
|
1585
|
+
constructor(options) { }
|
1586
|
+
}
|
1587
|
+
function reportprogress(filename) {
|
1588
|
+
return (source) => source.pipe(map(r => {
|
1589
|
+
//if (event instanceof ProgressEvent) {
|
1590
|
+
// observe.next(new UploadEvent(
|
1591
|
+
// file.name,
|
1592
|
+
// (event as ProgressEvent).loaded,
|
1593
|
+
// (event as ProgressEvent).total
|
1594
|
+
// ));
|
1595
|
+
//} else if (event instanceof HttpResponse) {
|
1596
|
+
// const res = event as HttpResponse<any>;
|
1597
|
+
// if (res.status === 200) {
|
1598
|
+
// const model = res.body as Attachment;
|
1599
|
+
// observe.next(model);
|
1600
|
+
// }
|
1601
|
+
// else
|
1602
|
+
// observe.error({ status: res.status, error: res.body });
|
1603
|
+
// observe.complete();
|
1604
|
+
return r;
|
1605
|
+
}));
|
1581
1606
|
}
|
1582
1607
|
|
1583
1608
|
class ActionRef {
|
@@ -2077,6 +2102,9 @@ const STRINGS = {
|
|
2077
2102
|
YouRepliedTo: 'You replied {0}',
|
2078
2103
|
ReplyingToYou: '{0} in reply to you',
|
2079
2104
|
ByYou: '{0} by you',
|
2105
|
+
ActionBy: '{0} by {1}',
|
2106
|
+
ActionByBy: '{0} by {1} on behalf of {2}',
|
2107
|
+
ActionByYou: '{0} by you',
|
2080
2108
|
Received: 'Received',
|
2081
2109
|
ChangeLanguage: 'Language',
|
2082
2110
|
NewMail: 'New {0} #{1} {2}',
|
@@ -2348,6 +2376,7 @@ const STRINGS = {
|
|
2348
2376
|
Votes: 'Votes',
|
2349
2377
|
Tasks: 'Tasks',
|
2350
2378
|
System: 'System',
|
2379
|
+
Everything: 'Everything',
|
2351
2380
|
NothingHere: 'Nothing to see here',
|
2352
2381
|
Matrix: 'Matrix',
|
2353
2382
|
Working: 'Working on it...'
|
@@ -2384,7 +2413,7 @@ const STRINGS = {
|
|
2384
2413
|
Skipped: '- דולג',
|
2385
2414
|
Route: 'חותמים',
|
2386
2415
|
Trace: 'הסטוריה',
|
2387
|
-
|
2416
|
+
Everything: 'הסטוריה',
|
2388
2417
|
ProfilerSearchHelp: 'הקלד/י שם משתמש ובחר/י מהרשימה כדי לסקור פעולותיו.',
|
2389
2418
|
TraceSearchHelp: 'הקלד/י מספר מסמך ובחר/י כדי לעקוב אחרי תנועותיו.',
|
2390
2419
|
DiagramVersion: 'גרסה {0}',
|
@@ -2745,6 +2774,9 @@ const STRINGS = {
|
|
2745
2774
|
YouRepliedTo: '{0}השבת ל',
|
2746
2775
|
ReplyingToYou: '{0} השיב לך',
|
2747
2776
|
ByYou: '{0} דרכך',
|
2777
|
+
ActionByYou: '{0} דרכך',
|
2778
|
+
ActionByBy: '{0} דרך {1} בשם {2}',
|
2779
|
+
ActionBy: '{0} דרך {1}',
|
2748
2780
|
EscalatedTo: 'החרפה אל {0} אחרי <em>{1}</em>',
|
2749
2781
|
EscalatedFrom: 'החרפה מ-{0} אחרי <em>{1}</em>',
|
2750
2782
|
EscalatedBy: '{0} הועבר אל {1}',
|
@@ -6917,15 +6949,15 @@ function getSecondsUntilUpdate(time) {
|
|
6917
6949
|
|
6918
6950
|
const REFRESH_TIME = 30000, TYPING_HINT_TIME = 1500;
|
6919
6951
|
class ExpandedItemComponent {
|
6920
|
-
constructor(_sb, _chat, _accounts,
|
6952
|
+
constructor(_sb, _chat, _accounts, _mailbox, _session, _dir, _dialog, _translate, _messaging) {
|
6921
6953
|
this._sb = _sb;
|
6922
6954
|
this._chat = _chat;
|
6923
6955
|
this._accounts = _accounts;
|
6924
|
-
this._dir = _dir;
|
6925
|
-
this._translate = _translate;
|
6926
6956
|
this._mailbox = _mailbox;
|
6927
|
-
this._dialog = _dialog;
|
6928
6957
|
this._session = _session;
|
6958
|
+
this._dir = _dir;
|
6959
|
+
this._dialog = _dialog;
|
6960
|
+
this._translate = _translate;
|
6929
6961
|
this._messaging = _messaging;
|
6930
6962
|
this.sent = new EventEmitter();
|
6931
6963
|
this._destroy = new Subject();
|
@@ -6933,22 +6965,22 @@ class ExpandedItemComponent {
|
|
6933
6965
|
ngOnInit() {
|
6934
6966
|
this._messaging.comment$.pipe(takeUntil(this._destroy)).
|
6935
6967
|
subscribe(e => {
|
6936
|
-
if (e.id === this.
|
6968
|
+
if (e.id === this.model.id && (e.model.byId || e.model.userId) !== this._session.userId) {
|
6937
6969
|
this._comments();
|
6938
6970
|
this._accounts.get(e.model.userId).subscribe(u => this._sb.toast('Commented', u.gender, u.name));
|
6939
6971
|
}
|
6940
6972
|
});
|
6941
6973
|
this._messaging.update$.pipe(takeUntil(this._destroy)).subscribe(e => {
|
6942
|
-
if (e.model.id === this.
|
6974
|
+
if (e.model.id === this.model.id) {
|
6943
6975
|
this._refresh();
|
6944
|
-
(e.userId !== this._session.userId) && this._accounts.get(e.userId).subscribe(u => this._sb.toast('MailVersionUpdate', this.
|
6976
|
+
(e.userId !== this._session.userId) && this._accounts.get(e.userId).subscribe(u => this._sb.toast('MailVersionUpdate', this.model.number, u.name));
|
6945
6977
|
}
|
6946
6978
|
});
|
6947
6979
|
this._mailbox.changed.pipe(takeUntil(this._destroy)).subscribe(e => {
|
6948
|
-
if (e.id === this.
|
6980
|
+
if (e.id === this.model.id)
|
6949
6981
|
this._refresh();
|
6950
6982
|
});
|
6951
|
-
this._messaging.commentTyping$.pipe(takeUntil(this._destroy), filter$1(e => e.id === this.
|
6983
|
+
this._messaging.commentTyping$.pipe(takeUntil(this._destroy), filter$1(e => e.id === this.model.documentId)).subscribe(c => {
|
6952
6984
|
this.typing = true;
|
6953
6985
|
clearTimeout(this._typingTask);
|
6954
6986
|
this._typingTask = setTimeout(() => this.typing = false, TYPING_HINT_TIME);
|
@@ -6958,31 +6990,28 @@ class ExpandedItemComponent {
|
|
6958
6990
|
}
|
6959
6991
|
_note() {
|
6960
6992
|
return __awaiter(this, void 0, void 0, function* () {
|
6961
|
-
const { ownerId, issued, substitutingId, received, replied, log, id, note, byId, action, toId } = this.
|
6993
|
+
const { ownerId, issued, substitutingId, received, replied, log, id, note, byId, action, toId, escalated, originId } = this.model;
|
6962
6994
|
if (substitutingId) {
|
6963
|
-
this._accounts.get(substitutingId).
|
6964
|
-
|
6965
|
-
|
6966
|
-
|
6967
|
-
|
6968
|
-
|
6969
|
-
this.note = this._translate.personalize('YouSubstituteActionTaken', u.gender, adjective, this._formatUserElement(u), time);
|
6970
|
-
}
|
6971
|
-
else {
|
6972
|
-
const escalations = issued &&
|
6973
|
-
log.filter(l => l.time > issued &&
|
6974
|
-
l.type === 'Escalation'
|
6975
|
-
&& l.recipientId === id);
|
6976
|
-
if (escalations && escalations.length) {
|
6977
|
-
const duration = dayjs(escalations[0].time).diff(received, 's');
|
6978
|
-
this.note = this._translate.personalize('EscalatedFrom', u.gender, this._formatUserElement(u), this._duration(duration));
|
6979
|
-
}
|
6980
|
-
else {
|
6981
|
-
const time = this._fromNow(received);
|
6982
|
-
this.note = this._translate.personalize('SubstitutingNote', u.gender, this._formatUserElement(u), time, note || '');
|
6983
|
-
}
|
6995
|
+
const substituting = yield this._accounts.get(substitutingId).toPromise();
|
6996
|
+
if (replied) {
|
6997
|
+
const time = this._fromNow(replied), action = this._session.profile.actions.find(a => a.name === action), adjective = (action.adjective || action.title).toLowerCase();
|
6998
|
+
if (toId) {
|
6999
|
+
const to = yield this._accounts.get(toId).toPromise();
|
7000
|
+
this.note = this._translate.personalize('YouSubstituteActionTakenTo', substituting.gender, adjective, this._formatUserElement(to), this._formatUserElement(substituting), time);
|
6984
7001
|
}
|
6985
|
-
|
7002
|
+
else
|
7003
|
+
this.note = this._translate.personalize('YouSubstituteActionTaken', substituting.gender, adjective, this._formatUserElement(substituting), time);
|
7004
|
+
}
|
7005
|
+
else if (escalated) {
|
7006
|
+
const escalations = log.filter(l => l.time > issued &&
|
7007
|
+
l.type === 'Escalation'
|
7008
|
+
&& l.recipientId === id);
|
7009
|
+
this.note = this._translate.personalize('EscalatedFrom', substituting.gender, this._formatUserElement(substituting), this._duration(escalations[0].duration));
|
7010
|
+
}
|
7011
|
+
else {
|
7012
|
+
const time = this._fromNow(received);
|
7013
|
+
this.note = this._translate.personalize('SubstitutingNote', substituting.gender, this._formatUserElement(substituting), time, note || '');
|
7014
|
+
}
|
6986
7015
|
}
|
6987
7016
|
else if (replied) {
|
6988
7017
|
const time = this._fromNow(replied);
|
@@ -7016,6 +7045,23 @@ class ExpandedItemComponent {
|
|
7016
7045
|
}
|
7017
7046
|
else if (note)
|
7018
7047
|
this.note = note;
|
7048
|
+
else if (originId) {
|
7049
|
+
const origin = this.model.recipients.find(r => r.id === originId);
|
7050
|
+
if (origin.toId) {
|
7051
|
+
const action = this._session.profile.actions.find(a => a.name === origin.action), adjective = action.adjective || action.past || action.title;
|
7052
|
+
if ((origin.byId || origin.userId) === this._session.userId)
|
7053
|
+
this.note = this._translate.get('ActionByYou', adjective);
|
7054
|
+
else if (origin.byId) {
|
7055
|
+
const who = yield this._accounts.get(origin.userId).toPromise();
|
7056
|
+
const by = yield this._accounts.get(origin.byId).toPromise();
|
7057
|
+
this.note = this._translate.get('ActionByBy', adjective, by.name, who.name);
|
7058
|
+
}
|
7059
|
+
else {
|
7060
|
+
const who = yield this._accounts.get(origin.userId).toPromise();
|
7061
|
+
this.note = this._translate.get('ActionBy', adjective, who.name);
|
7062
|
+
}
|
7063
|
+
}
|
7064
|
+
}
|
7019
7065
|
else if (ownerId === this._session.profile.userId && issued) {
|
7020
7066
|
const time = this._fromNow(issued);
|
7021
7067
|
if (byId) {
|
@@ -7058,9 +7104,9 @@ class ExpandedItemComponent {
|
|
7058
7104
|
/** */
|
7059
7105
|
_refresh() {
|
7060
7106
|
return __awaiter(this, void 0, void 0, function* () {
|
7061
|
-
const { actions } = this.
|
7107
|
+
const { actions } = this.model;
|
7062
7108
|
this.actions = actions && actions.length ? this._session.profile.actions.filter(a => actions.indexOf(a.name) > -1) : null;
|
7063
|
-
const { senderId } = this.
|
7109
|
+
const { senderId } = this.model;
|
7064
7110
|
// sender
|
7065
7111
|
if (senderId && (senderId !== this._session.userId)) {
|
7066
7112
|
const who = yield this._accounts.get(senderId).toPromise();
|
@@ -7072,14 +7118,14 @@ class ExpandedItemComponent {
|
|
7072
7118
|
});
|
7073
7119
|
}
|
7074
7120
|
_comments() {
|
7075
|
-
const { viewed, comments } = this.
|
7121
|
+
const { viewed, comments } = this.model;
|
7076
7122
|
this.newComments = viewed ?
|
7077
7123
|
comments.filter(c => c.time > viewed && (c.byId || c.userId) !== this._session.userId).length || null : null;
|
7078
7124
|
}
|
7079
7125
|
_awaiting() {
|
7080
7126
|
return __awaiter(this, void 0, void 0, function* () {
|
7081
7127
|
//awaiting
|
7082
|
-
let recipients = this.
|
7128
|
+
let recipients = this.model.recipients.filter(r => r.pending && !r.estimate).
|
7083
7129
|
sort((r0, r1) => r0.received > r1.received ? 1 : -1).
|
7084
7130
|
map(r => r.userId);
|
7085
7131
|
recipients = recipients.filter((r, i) => recipients.indexOf(r) === i); /* unique */
|
@@ -7111,10 +7157,10 @@ class ExpandedItemComponent {
|
|
7111
7157
|
* @param action
|
7112
7158
|
*/
|
7113
7159
|
send(action) {
|
7114
|
-
const { id, number, version, formId } = this.
|
7160
|
+
const { id, number, version, formId } = this.model;
|
7115
7161
|
const data = {
|
7116
7162
|
action,
|
7117
|
-
item: this.
|
7163
|
+
item: this.model
|
7118
7164
|
};
|
7119
7165
|
this._dialog.open(ActionDialog, {
|
7120
7166
|
data,
|
@@ -7128,10 +7174,10 @@ class ExpandedItemComponent {
|
|
7128
7174
|
this._accounts.get(r.toId).subscribe(u => this._sb.toast('SentTo', number, adjective.toLowerCase(), u.name));
|
7129
7175
|
else
|
7130
7176
|
this._sb.toast('Sent', number, adjective.toLowerCase());
|
7131
|
-
this.sent.emit(this.
|
7177
|
+
this.sent.emit(this.model);
|
7132
7178
|
this.mode = 'done';
|
7133
7179
|
}, e => {
|
7134
|
-
this._handleResponse(e, this.
|
7180
|
+
this._handleResponse(e, this.model, 'SendErr');
|
7135
7181
|
this.mode = 'failed';
|
7136
7182
|
});
|
7137
7183
|
}
|
@@ -7175,12 +7221,12 @@ class ExpandedItemComponent {
|
|
7175
7221
|
this._typingTask && clearTimeout(this._typingTask);
|
7176
7222
|
}
|
7177
7223
|
}
|
7178
|
-
ExpandedItemComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.1.1", ngImport: i0, type: ExpandedItemComponent, deps: [{ token: PromptService }, { token: ChatInfo }, { token: AccountService }, { token:
|
7179
|
-
ExpandedItemComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.1.1", type: ExpandedItemComponent, selector: "bizdoc-expanded-item", inputs: {
|
7224
|
+
ExpandedItemComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.1.1", ngImport: i0, type: ExpandedItemComponent, deps: [{ token: PromptService }, { token: ChatInfo }, { token: AccountService }, { token: MailboxService }, { token: SessionService }, { token: i7$2.Directionality }, { token: i3$2.MatDialog }, { token: TranslateService }, { token: HubService }], target: i0.ɵɵFactoryTarget.Component });
|
7225
|
+
ExpandedItemComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.1.1", type: ExpandedItemComponent, selector: "bizdoc-expanded-item", inputs: { model: "model" }, outputs: { sent: "sent" }, ngImport: i0, template: "<div class=\"summary\" *ngIf=\"model.summary\" [innerHTML]=\"model.summary\">\r\n</div>\r\n<div>\r\n <bizdoc-attachments [model]=\"model\"></bizdoc-attachments>\r\n <bizdoc-events [model]=\"model\"></bizdoc-events>\r\n</div>\r\n<div class=\"row\">\r\n <span class=\"note\" [innerHTML]=\"note | sanitizeHtml\" (click)=\"chat($event)\"></span>\r\n <span class=\"divider\"></span>\r\n <ng-container *ngFor=\"let a of actions\">\r\n <button mat-icon-button (click)=\"send(a.name)\" [bizdocTooltip]=\"a.title\" *ngIf=\"a.icon\" class=\"tool\">\r\n <mat-icon>{{a.icon}}</mat-icon>\r\n </button>\r\n </ng-container>\r\n</div>\r\n<div class=\"row\">\r\n <div class=\"mat-small\" fxLayout=\"row\">\r\n <span>{{model.stateId | state : 'past' }}</span>\r\n \r\n <span class=\"time\" [bizdocTooltip]=\"model.received | amCalendar\">{{model.received | amTimeAgo}}</span>\r\n \r\n <span [innerHTML]=\"sender | sanitizeHtml\" (click)=\"chat($event)\" class=\"who\"></span> \r\n <span [innerHTML]=\"awaiting | sanitizeHtml\" (click)=\"chat($event)\" class=\"who\"></span>\r\n </div>\r\n <span class=\"divider\"></span>\r\n <div fxLayoutAlign=\"center center\">\r\n <span class=\"mat-small\" *ngIf=\"typing\">{{'SomeoneTyping'|translate}}</span>\r\n <div *ngIf=\"model.comments.length\" class=\"mat-small\">\r\n <span *ngIf=\"!newComments; else newcomments\">{{model.comments.length > 1 ? ('CommentsCount' | translate : model.comments.length) : 'OneComment' | translate }}</span>\r\n </div>\r\n </div>\r\n <div *ngIf=\"model.tags\">\r\n <span *ngFor=\"let tag of model.tags\" class=\"mat-chip mat-standard-chip small-chip\">{{tag}}</span>\r\n </div>\r\n</div>\r\n<ng-template #newcomments>\r\n <span [innerHTML]=\"'NewCommentsCount' | translate : model.comments.length : newComments | sanitizeHtml\"></span>\r\n</ng-template>\r\n", styles: [":host{display:flex;flex-direction:column;overflow:hidden;padding-right:24px;padding-left:24px;text-align:start}.row{align-items:center;min-height:27px;flex-direction:row;box-sizing:border-box;display:flex}.note{font-weight:200}.time{text-transform:uppercase}.summary{max-width:-moz-fit-content;max-width:fit-content}\n"], components: [{ type: AttachmentsComponent, selector: "bizdoc-attachments", inputs: ["model", "viewedIndicator", "includeDeleted"] }, { type: DocumentEventsComponent, selector: "bizdoc-events", inputs: ["model"] }, { type: i7$1.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: i8.MatIcon, selector: "mat-icon", inputs: ["color", "inline", "svgIcon", "fontSet", "fontIcon"], exportAs: ["matIcon"] }], directives: [{ type: i10.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { type: i10.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { type: TooltipDirective, selector: "[bizdocTooltip]", inputs: ["bizdocTooltip", "bizdocTooltipTemplate", "bizdocTooltipContext", "bizdocTooltipPosition", "bizdocTooltipDuration", "bizdocTooltipDisabled"] }, { type: i6$1.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: i6$1.DefaultLayoutAlignDirective, selector: " [fxLayoutAlign], [fxLayoutAlign.xs], [fxLayoutAlign.sm], [fxLayoutAlign.md], [fxLayoutAlign.lg], [fxLayoutAlign.xl], [fxLayoutAlign.lt-sm], [fxLayoutAlign.lt-md], [fxLayoutAlign.lt-lg], [fxLayoutAlign.lt-xl], [fxLayoutAlign.gt-xs], [fxLayoutAlign.gt-sm], [fxLayoutAlign.gt-md], [fxLayoutAlign.gt-lg]", inputs: ["fxLayoutAlign", "fxLayoutAlign.xs", "fxLayoutAlign.sm", "fxLayoutAlign.md", "fxLayoutAlign.lg", "fxLayoutAlign.xl", "fxLayoutAlign.lt-sm", "fxLayoutAlign.lt-md", "fxLayoutAlign.lt-lg", "fxLayoutAlign.lt-xl", "fxLayoutAlign.gt-xs", "fxLayoutAlign.gt-sm", "fxLayoutAlign.gt-md", "fxLayoutAlign.gt-lg"] }], pipes: { "sanitizeHtml": SanitizeHtmlPipe, "state": StatePipe, "amCalendar": CalendarPipe, "amTimeAgo": TimeAgoPipe, "translate": TranslatePipe } });
|
7180
7226
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.1.1", ngImport: i0, type: ExpandedItemComponent, decorators: [{
|
7181
7227
|
type: Component,
|
7182
|
-
args: [{ selector: 'bizdoc-expanded-item', template: "<div class=\"summary\" *ngIf=\"
|
7183
|
-
}], ctorParameters: function () { return [{ type: PromptService }, { type: ChatInfo }, { type: AccountService }, { type:
|
7228
|
+
args: [{ selector: 'bizdoc-expanded-item', template: "<div class=\"summary\" *ngIf=\"model.summary\" [innerHTML]=\"model.summary\">\r\n</div>\r\n<div>\r\n <bizdoc-attachments [model]=\"model\"></bizdoc-attachments>\r\n <bizdoc-events [model]=\"model\"></bizdoc-events>\r\n</div>\r\n<div class=\"row\">\r\n <span class=\"note\" [innerHTML]=\"note | sanitizeHtml\" (click)=\"chat($event)\"></span>\r\n <span class=\"divider\"></span>\r\n <ng-container *ngFor=\"let a of actions\">\r\n <button mat-icon-button (click)=\"send(a.name)\" [bizdocTooltip]=\"a.title\" *ngIf=\"a.icon\" class=\"tool\">\r\n <mat-icon>{{a.icon}}</mat-icon>\r\n </button>\r\n </ng-container>\r\n</div>\r\n<div class=\"row\">\r\n <div class=\"mat-small\" fxLayout=\"row\">\r\n <span>{{model.stateId | state : 'past' }}</span>\r\n \r\n <span class=\"time\" [bizdocTooltip]=\"model.received | amCalendar\">{{model.received | amTimeAgo}}</span>\r\n \r\n <span [innerHTML]=\"sender | sanitizeHtml\" (click)=\"chat($event)\" class=\"who\"></span> \r\n <span [innerHTML]=\"awaiting | sanitizeHtml\" (click)=\"chat($event)\" class=\"who\"></span>\r\n </div>\r\n <span class=\"divider\"></span>\r\n <div fxLayoutAlign=\"center center\">\r\n <span class=\"mat-small\" *ngIf=\"typing\">{{'SomeoneTyping'|translate}}</span>\r\n <div *ngIf=\"model.comments.length\" class=\"mat-small\">\r\n <span *ngIf=\"!newComments; else newcomments\">{{model.comments.length > 1 ? ('CommentsCount' | translate : model.comments.length) : 'OneComment' | translate }}</span>\r\n </div>\r\n </div>\r\n <div *ngIf=\"model.tags\">\r\n <span *ngFor=\"let tag of model.tags\" class=\"mat-chip mat-standard-chip small-chip\">{{tag}}</span>\r\n </div>\r\n</div>\r\n<ng-template #newcomments>\r\n <span [innerHTML]=\"'NewCommentsCount' | translate : model.comments.length : newComments | sanitizeHtml\"></span>\r\n</ng-template>\r\n", styles: [":host{display:flex;flex-direction:column;overflow:hidden;padding-right:24px;padding-left:24px;text-align:start}.row{align-items:center;min-height:27px;flex-direction:row;box-sizing:border-box;display:flex}.note{font-weight:200}.time{text-transform:uppercase}.summary{max-width:-moz-fit-content;max-width:fit-content}\n"] }]
|
7229
|
+
}], ctorParameters: function () { return [{ type: PromptService }, { type: ChatInfo }, { type: AccountService }, { type: MailboxService }, { type: SessionService }, { type: i7$2.Directionality }, { type: i3$2.MatDialog }, { type: TranslateService }, { type: HubService }]; }, propDecorators: { model: [{
|
7184
7230
|
type: Input
|
7185
7231
|
}], sent: [{
|
7186
7232
|
type: Output
|
@@ -7280,7 +7326,7 @@ class BrowseItemsComponent {
|
|
7280
7326
|
this._remove(item);
|
7281
7327
|
});
|
7282
7328
|
this._messaging.new$.pipe(takeUntil(this._destroy)).subscribe(m => {
|
7283
|
-
if (!this.dataSource)
|
7329
|
+
if (!this.dataSource || m.userId !== this._session.profile.userId)
|
7284
7330
|
return;
|
7285
7331
|
const item = this.dataSource.data.find(c => c.id === m.model.id);
|
7286
7332
|
if (!item && this.folderId === m.model.folderId) {
|
@@ -7613,7 +7659,7 @@ class BrowseItemsComponent {
|
|
7613
7659
|
}
|
7614
7660
|
}
|
7615
7661
|
BrowseItemsComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.1.1", ngImport: i0, type: BrowseItemsComponent, deps: [{ token: MailboxService }, { token: AccountService }, { token: CubeService }, { token: SessionService }, { token: PromptService }, { token: TranslateService }, { token: i0.ChangeDetectorRef }, { token: RouterImpl }, { token: HubService }, { token: BIZDOC_CONFIG }], target: i0.ɵɵFactoryTarget.Component });
|
7616
|
-
BrowseItemsComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.1.1", type: BrowseItemsComponent, selector: "bizdoc-browse-items", inputs: { folderId: "folderId", filterType: "filterType", filters: "filters" }, outputs: { onopen: "open", onview: "view" }, viewQueries: [{ propertyName: "sort", first: true, predicate: MatSort, descendants: true, static: true }, { propertyName: "paginator", first: true, predicate: MatPaginator, descendants: true, static: true }], usesOnChanges: true, ngImport: i0, template: "<bizdoc-none *ngIf=\"dataSource?.data.length === 0\" title=\"NoMessages\" [subtitle]=\"!isMobile && folderId === DRAFT ? 'AltN' : null\" icon=\"mail_outline\"></bizdoc-none>\r\n<mat-progress-bar mode=\"query\" [style.visibility]=\"loading ? 'visible':'hidden'\"></mat-progress-bar>\r\n<mat-table cdkDropList class=\"data-table\"\r\n [cdkDropListDisabled]=\"isMobile\"\r\n [cdkDropListData]=\"dataSource?.data\"\r\n cdkDropListConnectedTo=\"folders\"\r\n cdkDropListSortingDisabled\r\n [dataSource]=\"dataSource\" matSort multiTemplateDataRows (matSortChange)=\"sortData()\"\r\n id=\"browse-table\" [@list]=\"dataSource\" [style.display]=\"dataSource?.data.length ?'':'none'\">\r\n <ng-container matColumnDef=\"select\">\r\n <mat-header-cell *matHeaderCellDef>\r\n <div class=\"\"></div>\r\n <mat-checkbox (change)=\"$event ? masterToggle() : null\" [aria-label]=\"'Check'|translate\"\r\n [checked]=\"selection.hasValue() && isAllSelected()\"\r\n [indeterminate]=\"selection.hasValue() && !isAllSelected()\">\r\n </mat-checkbox>\r\n </mat-header-cell>\r\n <mat-cell *matCellDef=\"let item\">\r\n <mat-checkbox (click)=\"$event.stopPropagation()\" [aria-label]=\"'Check'|translate\"\r\n (change)=\"$event ? selection.toggle(item) : null\"\r\n [checked]=\"selection.isSelected(item)\">\r\n </mat-checkbox>\r\n <!-- drag -->\r\n <!--<button mat-icon-button cdkDragHandle\r\n (mousedown)=\"dragDisabled = false\"\r\n (mouseup)=\"dragDisabled = true\"\r\n (touchstart)=\"dragDisabled = false\"\r\n (touchend)=\"dragDisabled = true\"\r\n class=\"drag\" aria-disabled=\"true\" fxHide.xs>\r\n <mat-icon>drag_indicator</mat-icon>\r\n </button>-->\r\n <button mat-icon-button (click)=\"toggleExpanded(item, $event)\" [bizdocTooltip]=\"'Details' | translate\" [attr.aria-label]=\"'Details' | translate\" class=\"tool\"><mat-icon>{{item == expandedElement ? 'unfold_less' : 'unfold_more'}}</mat-icon></button>\r\n </mat-cell>\r\n </ng-container>\r\n <!-- Number column -->\r\n <ng-container matColumnDef=\"number\">\r\n <mat-header-cell *matHeaderCellDef mat-sort-header>{{'Number' | translate}}</mat-header-cell>\r\n <mat-cell *matCellDef=\"let item\" class=\"data-column\"> {{item.number}} </mat-cell>\r\n </ng-container>\r\n\r\n <!-- Subject column -->\r\n <ng-container matColumnDef=\"subject\">\r\n <mat-header-cell *matHeaderCellDef mat-sort-header>{{'Subject' | translate}}</mat-header-cell>\r\n <mat-cell *matCellDef=\"let item\" class=\"data-column\"> {{item.subject}} </mat-cell>\r\n </ng-container>\r\n\r\n <ng-container matColumnDef=\"owner\">\r\n <mat-header-cell *matHeaderCellDef mat-sort-header>{{'Owner' | translate}}</mat-header-cell>\r\n <mat-cell *matCellDef=\"let item\" class=\"data-column\">\r\n <bizdoc-identity-name *ngIf=\"item.ownerId\" [identity]=\"item.ownerId\" [by]=\"item.ownerById\"></bizdoc-identity-name>\r\n </mat-cell>\r\n </ng-container>\r\n <ng-container matColumnDef=\"sender\">\r\n <mat-header-cell *matHeaderCellDef mat-sort-header>{{'Sender' | translate}}</mat-header-cell>\r\n <mat-cell *matCellDef=\"let item\" class=\"data-column\">\r\n <bizdoc-identity-name *ngIf=\"item.senderId\" [identity]=\"item.senderId\" [by]=\"item.byId\"></bizdoc-identity-name>\r\n </mat-cell>\r\n </ng-container>\r\n\r\n <ng-container matColumnDef=\"received\">\r\n <mat-header-cell *matHeaderCellDef mat-sort-header>{{'Received' | translate}}</mat-header-cell>\r\n <mat-cell *matCellDef=\"let item\" class=\"data-column\"> {{item.received | amCalendar}} </mat-cell>\r\n </ng-container>\r\n\r\n <ng-container matColumnDef=\"receivedAgo\">\r\n <mat-header-cell *matHeaderCellDef mat-sort-header=\"received\">{{'Received' | translate}}</mat-header-cell>\r\n <mat-cell *matCellDef=\"let item\" class=\"data-column\" [bizdocTooltip]=\"item.received | amCalendar\">{{item.received | amTimeAgo}}</mat-cell>\r\n </ng-container>\r\n\r\n <ng-container matColumnDef=\"replied\">\r\n <mat-header-cell *matHeaderCellDef mat-sort-header>{{'Replied' | translate}}</mat-header-cell>\r\n <mat-cell *matCellDef=\"let item\" class=\"data-column\"> {{item.replied | amCalendar}} </mat-cell>\r\n </ng-container>\r\n\r\n <ng-container matColumnDef=\"issued\">\r\n <mat-header-cell *matHeaderCellDef mat-sort-header>{{'Issued' | translate}}</mat-header-cell>\r\n <mat-cell *matCellDef=\"let item\" class=\"data-column\"> {{item.issued | amCalendar}} </mat-cell>\r\n </ng-container>\r\n\r\n <ng-container matColumnDef=\"issuedAgo\">\r\n <mat-header-cell *matHeaderCellDef mat-sort-header=\"issued\">{{'Issued' | translate}}</mat-header-cell>\r\n <mat-cell *matCellDef=\"let item\" class=\"data-column\" [bizdocTooltip]=\"item.issued | amCalendar\"> {{item.issued | amTimeAgo}} </mat-cell>\r\n </ng-container>\r\n\r\n <ng-container matColumnDef=\"state\">\r\n <mat-header-cell *matHeaderCellDef mat-sort-header=\"stateId\">{{'Status' | translate }}</mat-header-cell>\r\n <mat-cell *matCellDef=\"let item\" class=\"data-column\">\r\n <bizdoc-status [stateId]=\"item.stateId\"></bizdoc-status>\r\n </mat-cell>\r\n </ng-container>\r\n\r\n <ng-container *ngIf=\"customColumns\">\r\n <ng-container *ngFor=\"let c of customColumns\" [matColumnDef]=\"c.name\">\r\n <mat-header-cell *matHeaderCellDef mat-sort-header> {{c.title}} </mat-header-cell>\r\n <mat-cell *matCellDef=\"let item\" class=\"data-column\">\r\n <ng-container [ngSwitch]=\"c.type\">\r\n <span *ngSwitchCase=\"'Date'\">\r\n {{item.model[c.name] | amCalendar }}\r\n </span>\r\n <span *ngSwitchCase=\"'Decimal'\">\r\n {{item.model[c.name] | number }}\r\n </span>\r\n <span *ngSwitchCase=\"'Boolean'\">\r\n <mat-checkbox [checked]=\"item.model[c.name]\" [disabled]=\"true\"></mat-checkbox>\r\n </span>\r\n <span *ngSwitchDefault>\r\n {{item.model[c.name]}}z\r\n </span>\r\n </ng-container>\r\n </mat-cell>\r\n </ng-container>\r\n </ng-container>\r\n\r\n <!-- Value column -->\r\n <ng-container matColumnDef=\"value\">\r\n <mat-header-cell *matHeaderCellDef mat-sort-header>{{'Amount' | translate}}</mat-header-cell>\r\n <mat-cell *matCellDef=\"let item\" class=\"data-column\"> {{item.value | currency : item.currencyCode : 'symbol' : currencyFormat}} </mat-cell>\r\n </ng-container>\r\n\r\n <!-- options column -->\r\n <ng-container matColumnDef=\"options\">\r\n <mat-header-cell *matHeaderCellDef></mat-header-cell>\r\n <mat-cell *matCellDef=\"let item\">\r\n <button mat-icon-button (click)=\"flag(item, $event)\" [bizdocTooltip]=\"'Flagged'| translate\" [attr.aria-label]=\"'ToggleFlagged' | translate\" class=\"tool\"><mat-icon [class.document-flag]=\"item.flag\">{{item.flag ? 'star' : 'star_border'}}</mat-icon></button>\r\n <button mat-icon-button (click)=\"view(item, $event)\" [bizdocTooltip]=\"'View' | translate\" [attr.aria-label]=\"'View' | translate\" class=\"tool\" *ngIf=\"enableAnalysis\"><mat-icon>data_usage</mat-icon></button>\r\n <button mat-icon-button (click)=\"$event.stopPropagation()\" [matMenuTriggerFor]=\"menu\" fxHide.xs [matMenuTriggerData]=\"{item: item}\" [bizdocTooltip]=\"'Options' | translate\" [attr.aria-label]=\"'Options' | translate\" class=\"tool\"><mat-icon>more_vert</mat-icon></button>\r\n </mat-cell>\r\n </ng-container>\r\n <!-- Expanded Content Column -->\r\n <ng-container matColumnDef=\"expandedDetail\">\r\n <mat-cell *matCellDef=\"let item\" [attr.colspan]=\"displayedColumns.length\" [@updated]=\"item == updatedElement\"\r\n [class.read-row]=\"item.read\">\r\n <div [@detailExpand]=\"item == expandedElement ? 'expanded' : 'collapsed'\" style=\"width: 100%\">\r\n <bizdoc-expanded-item [item]=\"item\" *ngIf=\"item == expandedElement\"></bizdoc-expanded-item>\r\n </div>\r\n </mat-cell>\r\n </ng-container>\r\n <mat-header-row *matHeaderRowDef=\"displayedColumns; sticky: true\"></mat-header-row>\r\n <mat-row @item [@updated]=\"item == updatedElement\"\r\n *matRowDef=\"let item; let dataIndex = dataIndex; columns: displayedColumns;\" class=\"element-row\"\r\n cdkDrag [cdkDragData]=\"item\"\r\n [cdkDragDisabled]=\"dragDisabled\"\r\n (cdkDragReleased)=\"dragDisabled = true\"\r\n [ngClass]=\"{'selecteded-row': selectedElement === item,\r\n 'expanded-row': expandedElement === item,\r\n 'odd-row': dataIndex % 2,\r\n 'read-row': item.read}\" matRipple\r\n (click)=\"open(item, $event)\">\r\n <div *cdkDragPreview>\r\n <button mat-icon-button aria-disabled=\"true\"><mat-icon>drag_indicator</mat-icon></button> <span>#{{item.number}}</span>\r\n </div>\r\n <div *cdkDragPlaceholder>\r\n <!-- none -->\r\n </div>\r\n </mat-row>\r\n <mat-row *matRowDef=\"let item; ; let dataIndex = dataIndex; columns: ['expandedDetail']\"\r\n class=\"detail-row\" matRipple\r\n [ngClass]=\"{ 'selecteded-row': selectedElement === item,\r\n 'odd-row': dataIndex % 2\r\n }\"></mat-row>\r\n</mat-table>\r\n<mat-paginator #paginator [hidePageSize]=\"true\" [pageSize]=\"PAGE_SIZE\" [style.display]=\"!isMobile && dataSource?.data.length>PAGE_SIZE ? '':'none'\"></mat-paginator>\r\n<mat-menu #menu=\"matMenu\">\r\n <ng-template matMenuContent let-item=\"item\">\r\n <button mat-menu-item (click)=\"open(item, $event)\">{{'Open'|translate}}</button>\r\n <mat-divider></mat-divider>\r\n <button mat-menu-item (click)=\"toggleRead(item)\">{{(item.read ?'MarkAsUnread':'MarkAsRead')|translate}}</button>\r\n <mat-divider></mat-divider>\r\n <button mat-menu-item (click)=\"copy(item)\">{{'Copy'| translate}}</button>\r\n </ng-template>\r\n</mat-menu>\r\n", styles: ["#browse-table{width:100%}#browse-table .detail-row{min-height:0}#browse-table .element-row{cursor:pointer}#browse-table .element-row .drag{cursor:move}#browse-table .read-row{font-weight:100}@media screen and (min-width: 600px){.mat-row .tool{opacity:.05}.mat-row:hover .tool{opacity:1}}::ng-deep .mat-column-options{justify-content:end;padding-inline-end:8px}::ng-deep .mat-column-value{justify-content:right}::ng-deep .mat-column-select{white-space:nowrap}::ng-deep .mat-column-number{white-space:nowrap}\n"], components: [{ type: NoneComponent, selector: "bizdoc-none", inputs: ["title", "subtitle", "icon"] }, { type: i10$1.MatProgressBar, selector: "mat-progress-bar", inputs: ["color", "value", "bufferValue", "mode"], outputs: ["animationEnd"], exportAs: ["matProgressBar"] }, { type: i5$1.MatTable, selector: "mat-table, table[mat-table]", exportAs: ["matTable"] }, { type: i7.MatCheckbox, selector: "mat-checkbox", inputs: ["disableRipple", "color", "tabIndex", "aria-label", "aria-labelledby", "aria-describedby", "id", "required", "labelPosition", "name", "value", "checked", "disabled", "indeterminate"], outputs: ["change", "indeterminateChange"], exportAs: ["matCheckbox"] }, { type: i7$1.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: i8.MatIcon, selector: "mat-icon", inputs: ["color", "inline", "svgIcon", "fontSet", "fontIcon"], exportAs: ["matIcon"] }, { type: i6$2.MatSortHeader, selector: "[mat-sort-header]", inputs: ["disabled", "mat-sort-header", "arrowPosition", "start", "sortActionDescription", "disableClear"], exportAs: ["matSortHeader"] }, { type: IdentityName, selector: "bizdoc-identity-name", inputs: ["identity", "by", "chating"] }, { type: ExpandedItemComponent, selector: "bizdoc-expanded-item", inputs: ["item"], outputs: ["sent"] }, { type: i5$1.MatHeaderRow, selector: "mat-header-row, tr[mat-header-row]", exportAs: ["matHeaderRow"] }, { type: i5$1.MatRow, selector: "mat-row, tr[mat-row]", exportAs: ["matRow"] }, { type: i18.MatPaginator, selector: "mat-paginator", inputs: ["disabled"], exportAs: ["matPaginator"] }, { type: i8$2.MatMenu, selector: "mat-menu", exportAs: ["matMenu"] }, { type: i8$2.MatMenuItem, selector: "[mat-menu-item]", inputs: ["disabled", "disableRipple", "role"], exportAs: ["matMenuItem"] }, { type: i9.MatDivider, selector: "mat-divider", inputs: ["vertical", "inset"] }], directives: [{ type: i10.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { type: i22.CdkDropList, selector: "[cdkDropList], cdk-drop-list", inputs: ["cdkDropListConnectedTo", "cdkDropListData", "cdkDropListOrientation", "id", "cdkDropListLockAxis", "cdkDropListDisabled", "cdkDropListSortingDisabled", "cdkDropListEnterPredicate", "cdkDropListSortPredicate", "cdkDropListAutoScrollDisabled", "cdkDropListAutoScrollStep"], outputs: ["cdkDropListDropped", "cdkDropListEntered", "cdkDropListExited", "cdkDropListSorted"], exportAs: ["cdkDropList"] }, { type: i6$2.MatSort, selector: "[matSort]", inputs: ["matSortDisabled", "matSortActive", "matSortStart", "matSortDirection", "matSortDisableClear"], outputs: ["matSortChange"], exportAs: ["matSort"] }, { type: i5$1.MatColumnDef, selector: "[matColumnDef]", inputs: ["sticky", "matColumnDef"] }, { type: i5$1.MatHeaderCellDef, selector: "[matHeaderCellDef]" }, { type: i5$1.MatHeaderCell, selector: "mat-header-cell, th[mat-header-cell]" }, { type: i5$1.MatCellDef, selector: "[matCellDef]" }, { type: i5$1.MatCell, selector: "mat-cell, td[mat-cell]" }, { type: TooltipDirective, selector: "[bizdocTooltip]", inputs: ["bizdocTooltip", "bizdocTooltipTemplate", "bizdocTooltipContext", "bizdocTooltipPosition", "bizdocTooltipDuration", "bizdocTooltipDisabled"] }, { type: StateDirective, selector: "bizdoc-status", inputs: ["stateId"] }, { type: i10.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { type: i10.NgSwitch, selector: "[ngSwitch]", inputs: ["ngSwitch"] }, { type: i10.NgSwitchCase, selector: "[ngSwitchCase]", inputs: ["ngSwitchCase"] }, { type: i10.NgSwitchDefault, selector: "[ngSwitchDefault]" }, { type: i25.DefaultShowHideDirective, selector: " [fxShow], [fxShow.print], [fxShow.xs], [fxShow.sm], [fxShow.md], [fxShow.lg], [fxShow.xl], [fxShow.lt-sm], [fxShow.lt-md], [fxShow.lt-lg], [fxShow.lt-xl], [fxShow.gt-xs], [fxShow.gt-sm], [fxShow.gt-md], [fxShow.gt-lg], [fxHide], [fxHide.print], [fxHide.xs], [fxHide.sm], [fxHide.md], [fxHide.lg], [fxHide.xl], [fxHide.lt-sm], [fxHide.lt-md], [fxHide.lt-lg], [fxHide.lt-xl], [fxHide.gt-xs], [fxHide.gt-sm], [fxHide.gt-md], [fxHide.gt-lg]", inputs: ["fxShow", "fxShow.print", "fxShow.xs", "fxShow.sm", "fxShow.md", "fxShow.lg", "fxShow.xl", "fxShow.lt-sm", "fxShow.lt-md", "fxShow.lt-lg", "fxShow.lt-xl", "fxShow.gt-xs", "fxShow.gt-sm", "fxShow.gt-md", "fxShow.gt-lg", "fxHide", "fxHide.print", "fxHide.xs", "fxHide.sm", "fxHide.md", "fxHide.lg", "fxHide.xl", "fxHide.lt-sm", "fxHide.lt-md", "fxHide.lt-lg", "fxHide.lt-xl", "fxHide.gt-xs", "fxHide.gt-sm", "fxHide.gt-md", "fxHide.gt-lg"] }, { type: i8$2.MatMenuTrigger, selector: "[mat-menu-trigger-for], [matMenuTriggerFor]", exportAs: ["matMenuTrigger"] }, { type: i5$1.MatHeaderRowDef, selector: "[matHeaderRowDef]", inputs: ["matHeaderRowDef", "matHeaderRowDefSticky"] }, { type: i5$1.MatRowDef, selector: "[matRowDef]", inputs: ["matRowDefColumns", "matRowDefWhen"] }, { type: i22.CdkDrag, selector: "[cdkDrag]", inputs: ["cdkDragData", "cdkDragLockAxis", "cdkDragRootElement", "cdkDragBoundary", "cdkDragStartDelay", "cdkDragFreeDragPosition", "cdkDragDisabled", "cdkDragConstrainPosition", "cdkDragPreviewClass", "cdkDragPreviewContainer"], outputs: ["cdkDragStarted", "cdkDragReleased", "cdkDragEnded", "cdkDragEntered", "cdkDragExited", "cdkDragDropped", "cdkDragMoved"], exportAs: ["cdkDrag"] }, { type: i6.MatRipple, selector: "[mat-ripple], [matRipple]", inputs: ["matRippleColor", "matRippleUnbounded", "matRippleCentered", "matRippleRadius", "matRippleAnimation", "matRippleDisabled", "matRippleTrigger"], exportAs: ["matRipple"] }, { type: i10.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { type: i25.DefaultClassDirective, selector: " [ngClass], [ngClass.xs], [ngClass.sm], [ngClass.md], [ngClass.lg], [ngClass.xl], [ngClass.lt-sm], [ngClass.lt-md], [ngClass.lt-lg], [ngClass.lt-xl], [ngClass.gt-xs], [ngClass.gt-sm], [ngClass.gt-md], [ngClass.gt-lg]", inputs: ["ngClass", "ngClass.xs", "ngClass.sm", "ngClass.md", "ngClass.lg", "ngClass.xl", "ngClass.lt-sm", "ngClass.lt-md", "ngClass.lt-lg", "ngClass.lt-xl", "ngClass.gt-xs", "ngClass.gt-sm", "ngClass.gt-md", "ngClass.gt-lg"] }, { type: i22.CdkDragPreview, selector: "ng-template[cdkDragPreview]", inputs: ["data", "matchSize"] }, { type: i22.CdkDragPlaceholder, selector: "ng-template[cdkDragPlaceholder]", inputs: ["data"] }, { type: i8$2.MatMenuContent, selector: "ng-template[matMenuContent]" }], pipes: { "translate": TranslatePipe, "amCalendar": CalendarPipe, "amTimeAgo": TimeAgoPipe, "number": i10.DecimalPipe, "currency": i10.CurrencyPipe }, animations: [
|
7662
|
+
BrowseItemsComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.1.1", type: BrowseItemsComponent, selector: "bizdoc-browse-items", inputs: { folderId: "folderId", filterType: "filterType", filters: "filters" }, outputs: { onopen: "open", onview: "view" }, viewQueries: [{ propertyName: "sort", first: true, predicate: MatSort, descendants: true, static: true }, { propertyName: "paginator", first: true, predicate: MatPaginator, descendants: true, static: true }], usesOnChanges: true, ngImport: i0, template: "<bizdoc-none *ngIf=\"dataSource?.data.length === 0\" title=\"NoMessages\" [subtitle]=\"!isMobile && folderId === DRAFT ? 'AltN' : null\" icon=\"mail_outline\"></bizdoc-none>\r\n<mat-progress-bar mode=\"query\" [style.visibility]=\"loading ? 'visible':'hidden'\"></mat-progress-bar>\r\n<mat-table cdkDropList class=\"data-table\"\r\n [cdkDropListDisabled]=\"isMobile\"\r\n [cdkDropListData]=\"dataSource?.data\"\r\n cdkDropListConnectedTo=\"folders\"\r\n cdkDropListSortingDisabled\r\n [dataSource]=\"dataSource\" matSort multiTemplateDataRows (matSortChange)=\"sortData()\"\r\n id=\"browse-table\" [@list]=\"dataSource\" [style.display]=\"dataSource?.data.length ?'':'none'\">\r\n <ng-container matColumnDef=\"select\">\r\n <mat-header-cell *matHeaderCellDef>\r\n <div class=\"\"></div>\r\n <mat-checkbox (change)=\"$event ? masterToggle() : null\" [aria-label]=\"'Check'|translate\"\r\n [checked]=\"selection.hasValue() && isAllSelected()\"\r\n [indeterminate]=\"selection.hasValue() && !isAllSelected()\">\r\n </mat-checkbox>\r\n </mat-header-cell>\r\n <mat-cell *matCellDef=\"let item\">\r\n <mat-checkbox (click)=\"$event.stopPropagation()\" [aria-label]=\"'Check'|translate\"\r\n (change)=\"$event ? selection.toggle(item) : null\"\r\n [checked]=\"selection.isSelected(item)\">\r\n </mat-checkbox>\r\n <!-- drag -->\r\n <!--<button mat-icon-button cdkDragHandle\r\n (mousedown)=\"dragDisabled = false\"\r\n (mouseup)=\"dragDisabled = true\"\r\n (touchstart)=\"dragDisabled = false\"\r\n (touchend)=\"dragDisabled = true\"\r\n class=\"drag\" aria-disabled=\"true\" fxHide.xs>\r\n <mat-icon>drag_indicator</mat-icon>\r\n </button>-->\r\n <button mat-icon-button (click)=\"toggleExpanded(item, $event)\" [bizdocTooltip]=\"'Details' | translate\" [attr.aria-label]=\"'Details' | translate\" class=\"tool\"><mat-icon>{{item == expandedElement ? 'unfold_less' : 'unfold_more'}}</mat-icon></button>\r\n </mat-cell>\r\n </ng-container>\r\n <!-- Number column -->\r\n <ng-container matColumnDef=\"number\">\r\n <mat-header-cell *matHeaderCellDef mat-sort-header>{{'Number' | translate}}</mat-header-cell>\r\n <mat-cell *matCellDef=\"let item\" class=\"data-column\"> {{item.number}} </mat-cell>\r\n </ng-container>\r\n\r\n <!-- Subject column -->\r\n <ng-container matColumnDef=\"subject\">\r\n <mat-header-cell *matHeaderCellDef mat-sort-header>{{'Subject' | translate}}</mat-header-cell>\r\n <mat-cell *matCellDef=\"let item\" class=\"data-column\"> {{item.subject}} </mat-cell>\r\n </ng-container>\r\n\r\n <ng-container matColumnDef=\"owner\">\r\n <mat-header-cell *matHeaderCellDef mat-sort-header>{{'Owner' | translate}}</mat-header-cell>\r\n <mat-cell *matCellDef=\"let item\" class=\"data-column\">\r\n <bizdoc-identity-name *ngIf=\"item.ownerId\" [identity]=\"item.ownerId\" [by]=\"item.ownerById\"></bizdoc-identity-name>\r\n </mat-cell>\r\n </ng-container>\r\n <ng-container matColumnDef=\"sender\">\r\n <mat-header-cell *matHeaderCellDef mat-sort-header>{{'Sender' | translate}}</mat-header-cell>\r\n <mat-cell *matCellDef=\"let item\" class=\"data-column\">\r\n <bizdoc-identity-name *ngIf=\"item.senderId\" [identity]=\"item.senderId\" [by]=\"item.byId\"></bizdoc-identity-name>\r\n </mat-cell>\r\n </ng-container>\r\n\r\n <ng-container matColumnDef=\"received\">\r\n <mat-header-cell *matHeaderCellDef mat-sort-header>{{'Received' | translate}}</mat-header-cell>\r\n <mat-cell *matCellDef=\"let item\" class=\"data-column\"> {{item.received | amCalendar}} </mat-cell>\r\n </ng-container>\r\n\r\n <ng-container matColumnDef=\"receivedAgo\">\r\n <mat-header-cell *matHeaderCellDef mat-sort-header=\"received\">{{'Received' | translate}}</mat-header-cell>\r\n <mat-cell *matCellDef=\"let item\" class=\"data-column\" [bizdocTooltip]=\"item.received | amCalendar\">{{item.received | amTimeAgo}}</mat-cell>\r\n </ng-container>\r\n\r\n <ng-container matColumnDef=\"replied\">\r\n <mat-header-cell *matHeaderCellDef mat-sort-header>{{'Replied' | translate}}</mat-header-cell>\r\n <mat-cell *matCellDef=\"let item\" class=\"data-column\"> {{item.replied | amCalendar}} </mat-cell>\r\n </ng-container>\r\n\r\n <ng-container matColumnDef=\"issued\">\r\n <mat-header-cell *matHeaderCellDef mat-sort-header>{{'Issued' | translate}}</mat-header-cell>\r\n <mat-cell *matCellDef=\"let item\" class=\"data-column\"> {{item.issued | amCalendar}} </mat-cell>\r\n </ng-container>\r\n\r\n <ng-container matColumnDef=\"issuedAgo\">\r\n <mat-header-cell *matHeaderCellDef mat-sort-header=\"issued\">{{'Issued' | translate}}</mat-header-cell>\r\n <mat-cell *matCellDef=\"let item\" class=\"data-column\" [bizdocTooltip]=\"item.issued | amCalendar\"> {{item.issued | amTimeAgo}} </mat-cell>\r\n </ng-container>\r\n\r\n <ng-container matColumnDef=\"state\">\r\n <mat-header-cell *matHeaderCellDef mat-sort-header=\"stateId\">{{'Status' | translate }}</mat-header-cell>\r\n <mat-cell *matCellDef=\"let item\" class=\"data-column\">\r\n <bizdoc-status [stateId]=\"item.stateId\"></bizdoc-status>\r\n </mat-cell>\r\n </ng-container>\r\n\r\n <ng-container *ngIf=\"customColumns\">\r\n <ng-container *ngFor=\"let c of customColumns\" [matColumnDef]=\"c.name\">\r\n <mat-header-cell *matHeaderCellDef mat-sort-header> {{c.title}} </mat-header-cell>\r\n <mat-cell *matCellDef=\"let item\" class=\"data-column\">\r\n <ng-container [ngSwitch]=\"c.type\">\r\n <span *ngSwitchCase=\"'Date'\">\r\n {{item.model[c.name] | amCalendar }}\r\n </span>\r\n <span *ngSwitchCase=\"'Decimal'\">\r\n {{item.model[c.name] | number }}\r\n </span>\r\n <span *ngSwitchCase=\"'Boolean'\">\r\n <mat-checkbox [checked]=\"item.model[c.name]\" [disabled]=\"true\"></mat-checkbox>\r\n </span>\r\n <span *ngSwitchDefault>\r\n {{item.model[c.name]}}z\r\n </span>\r\n </ng-container>\r\n </mat-cell>\r\n </ng-container>\r\n </ng-container>\r\n\r\n <!-- Value column -->\r\n <ng-container matColumnDef=\"value\">\r\n <mat-header-cell *matHeaderCellDef mat-sort-header>{{'Amount' | translate}}</mat-header-cell>\r\n <mat-cell *matCellDef=\"let item\" class=\"data-column\"> {{item.value | currency : item.currencyCode : 'symbol' : currencyFormat}} </mat-cell>\r\n </ng-container>\r\n\r\n <!-- options column -->\r\n <ng-container matColumnDef=\"options\">\r\n <mat-header-cell *matHeaderCellDef></mat-header-cell>\r\n <mat-cell *matCellDef=\"let item\">\r\n <button mat-icon-button (click)=\"flag(item, $event)\" [bizdocTooltip]=\"'Flagged'| translate\" [attr.aria-label]=\"'ToggleFlagged' | translate\" class=\"tool\"><mat-icon [class.document-flag]=\"item.flag\">{{item.flag ? 'star' : 'star_border'}}</mat-icon></button>\r\n <button mat-icon-button (click)=\"view(item, $event)\" [bizdocTooltip]=\"'View' | translate\" [attr.aria-label]=\"'View' | translate\" class=\"tool\" *ngIf=\"enableAnalysis\"><mat-icon>data_usage</mat-icon></button>\r\n <button mat-icon-button (click)=\"$event.stopPropagation()\" [matMenuTriggerFor]=\"menu\" fxHide.xs [matMenuTriggerData]=\"{item: item}\" [bizdocTooltip]=\"'Options' | translate\" [attr.aria-label]=\"'Options' | translate\" class=\"tool\"><mat-icon>more_vert</mat-icon></button>\r\n </mat-cell>\r\n </ng-container>\r\n <!-- Expanded Content Column -->\r\n <ng-container matColumnDef=\"expandedDetail\">\r\n <mat-cell *matCellDef=\"let item\" [attr.colspan]=\"displayedColumns.length\" [@updated]=\"item == updatedElement\"\r\n [class.read-row]=\"item.read\">\r\n <div [@detailExpand]=\"item == expandedElement ? 'expanded' : 'collapsed'\" style=\"width: 100%\">\r\n <bizdoc-expanded-item [model]=\"item\" *ngIf=\"item == expandedElement\"></bizdoc-expanded-item>\r\n </div>\r\n </mat-cell>\r\n </ng-container>\r\n <mat-header-row *matHeaderRowDef=\"displayedColumns; sticky: true\"></mat-header-row>\r\n <mat-row @item [@updated]=\"item == updatedElement\"\r\n *matRowDef=\"let item; let dataIndex = dataIndex; columns: displayedColumns;\" class=\"element-row\"\r\n cdkDrag [cdkDragData]=\"item\"\r\n [cdkDragDisabled]=\"dragDisabled\"\r\n (cdkDragReleased)=\"dragDisabled = true\"\r\n [ngClass]=\"{'selecteded-row': selectedElement === item,\r\n 'expanded-row': expandedElement === item,\r\n 'odd-row': dataIndex % 2,\r\n 'read-row': item.read}\" matRipple\r\n (click)=\"open(item, $event)\">\r\n <div *cdkDragPreview>\r\n <button mat-icon-button aria-disabled=\"true\"><mat-icon>drag_indicator</mat-icon></button> <span>#{{item.number}}</span>\r\n </div>\r\n <div *cdkDragPlaceholder>\r\n <!-- none -->\r\n </div>\r\n </mat-row>\r\n <mat-row *matRowDef=\"let item; ; let dataIndex = dataIndex; columns: ['expandedDetail']\"\r\n class=\"detail-row\" matRipple\r\n [ngClass]=\"{ 'selecteded-row': selectedElement === item,\r\n 'odd-row': dataIndex % 2\r\n }\"></mat-row>\r\n</mat-table>\r\n<mat-paginator #paginator [hidePageSize]=\"true\" [pageSize]=\"PAGE_SIZE\" [style.display]=\"!isMobile && dataSource?.data.length>PAGE_SIZE ? '':'none'\"></mat-paginator>\r\n<mat-menu #menu=\"matMenu\">\r\n <ng-template matMenuContent let-item=\"item\">\r\n <button mat-menu-item (click)=\"open(item, $event)\">{{'Open'|translate}}</button>\r\n <mat-divider></mat-divider>\r\n <button mat-menu-item (click)=\"toggleRead(item)\">{{(item.read ?'MarkAsUnread':'MarkAsRead')|translate}}</button>\r\n <mat-divider></mat-divider>\r\n <button mat-menu-item (click)=\"copy(item)\">{{'Copy'| translate}}</button>\r\n </ng-template>\r\n</mat-menu>\r\n", styles: ["#browse-table{width:100%}#browse-table .detail-row{min-height:0}#browse-table .element-row{cursor:pointer}#browse-table .element-row .drag{cursor:move}#browse-table .read-row{font-weight:100}@media screen and (min-width: 600px){.mat-row .tool{opacity:.05}.mat-row:hover .tool{opacity:1}}::ng-deep .mat-column-options{justify-content:end;padding-inline-end:8px}::ng-deep .mat-column-value{justify-content:right}::ng-deep .mat-column-select{white-space:nowrap}::ng-deep .mat-column-number{white-space:nowrap}\n"], components: [{ type: NoneComponent, selector: "bizdoc-none", inputs: ["title", "subtitle", "icon"] }, { type: i10$1.MatProgressBar, selector: "mat-progress-bar", inputs: ["color", "value", "bufferValue", "mode"], outputs: ["animationEnd"], exportAs: ["matProgressBar"] }, { type: i5$1.MatTable, selector: "mat-table, table[mat-table]", exportAs: ["matTable"] }, { type: i7.MatCheckbox, selector: "mat-checkbox", inputs: ["disableRipple", "color", "tabIndex", "aria-label", "aria-labelledby", "aria-describedby", "id", "required", "labelPosition", "name", "value", "checked", "disabled", "indeterminate"], outputs: ["change", "indeterminateChange"], exportAs: ["matCheckbox"] }, { type: i7$1.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: i8.MatIcon, selector: "mat-icon", inputs: ["color", "inline", "svgIcon", "fontSet", "fontIcon"], exportAs: ["matIcon"] }, { type: i6$2.MatSortHeader, selector: "[mat-sort-header]", inputs: ["disabled", "mat-sort-header", "arrowPosition", "start", "sortActionDescription", "disableClear"], exportAs: ["matSortHeader"] }, { type: IdentityName, selector: "bizdoc-identity-name", inputs: ["identity", "by", "chating"] }, { type: ExpandedItemComponent, selector: "bizdoc-expanded-item", inputs: ["model"], outputs: ["sent"] }, { type: i5$1.MatHeaderRow, selector: "mat-header-row, tr[mat-header-row]", exportAs: ["matHeaderRow"] }, { type: i5$1.MatRow, selector: "mat-row, tr[mat-row]", exportAs: ["matRow"] }, { type: i18.MatPaginator, selector: "mat-paginator", inputs: ["disabled"], exportAs: ["matPaginator"] }, { type: i8$2.MatMenu, selector: "mat-menu", exportAs: ["matMenu"] }, { type: i8$2.MatMenuItem, selector: "[mat-menu-item]", inputs: ["disabled", "disableRipple", "role"], exportAs: ["matMenuItem"] }, { type: i9.MatDivider, selector: "mat-divider", inputs: ["vertical", "inset"] }], directives: [{ type: i10.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { type: i22.CdkDropList, selector: "[cdkDropList], cdk-drop-list", inputs: ["cdkDropListConnectedTo", "cdkDropListData", "cdkDropListOrientation", "id", "cdkDropListLockAxis", "cdkDropListDisabled", "cdkDropListSortingDisabled", "cdkDropListEnterPredicate", "cdkDropListSortPredicate", "cdkDropListAutoScrollDisabled", "cdkDropListAutoScrollStep"], outputs: ["cdkDropListDropped", "cdkDropListEntered", "cdkDropListExited", "cdkDropListSorted"], exportAs: ["cdkDropList"] }, { type: i6$2.MatSort, selector: "[matSort]", inputs: ["matSortDisabled", "matSortActive", "matSortStart", "matSortDirection", "matSortDisableClear"], outputs: ["matSortChange"], exportAs: ["matSort"] }, { type: i5$1.MatColumnDef, selector: "[matColumnDef]", inputs: ["sticky", "matColumnDef"] }, { type: i5$1.MatHeaderCellDef, selector: "[matHeaderCellDef]" }, { type: i5$1.MatHeaderCell, selector: "mat-header-cell, th[mat-header-cell]" }, { type: i5$1.MatCellDef, selector: "[matCellDef]" }, { type: i5$1.MatCell, selector: "mat-cell, td[mat-cell]" }, { type: TooltipDirective, selector: "[bizdocTooltip]", inputs: ["bizdocTooltip", "bizdocTooltipTemplate", "bizdocTooltipContext", "bizdocTooltipPosition", "bizdocTooltipDuration", "bizdocTooltipDisabled"] }, { type: StateDirective, selector: "bizdoc-status", inputs: ["stateId"] }, { type: i10.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { type: i10.NgSwitch, selector: "[ngSwitch]", inputs: ["ngSwitch"] }, { type: i10.NgSwitchCase, selector: "[ngSwitchCase]", inputs: ["ngSwitchCase"] }, { type: i10.NgSwitchDefault, selector: "[ngSwitchDefault]" }, { type: i25.DefaultShowHideDirective, selector: " [fxShow], [fxShow.print], [fxShow.xs], [fxShow.sm], [fxShow.md], [fxShow.lg], [fxShow.xl], [fxShow.lt-sm], [fxShow.lt-md], [fxShow.lt-lg], [fxShow.lt-xl], [fxShow.gt-xs], [fxShow.gt-sm], [fxShow.gt-md], [fxShow.gt-lg], [fxHide], [fxHide.print], [fxHide.xs], [fxHide.sm], [fxHide.md], [fxHide.lg], [fxHide.xl], [fxHide.lt-sm], [fxHide.lt-md], [fxHide.lt-lg], [fxHide.lt-xl], [fxHide.gt-xs], [fxHide.gt-sm], [fxHide.gt-md], [fxHide.gt-lg]", inputs: ["fxShow", "fxShow.print", "fxShow.xs", "fxShow.sm", "fxShow.md", "fxShow.lg", "fxShow.xl", "fxShow.lt-sm", "fxShow.lt-md", "fxShow.lt-lg", "fxShow.lt-xl", "fxShow.gt-xs", "fxShow.gt-sm", "fxShow.gt-md", "fxShow.gt-lg", "fxHide", "fxHide.print", "fxHide.xs", "fxHide.sm", "fxHide.md", "fxHide.lg", "fxHide.xl", "fxHide.lt-sm", "fxHide.lt-md", "fxHide.lt-lg", "fxHide.lt-xl", "fxHide.gt-xs", "fxHide.gt-sm", "fxHide.gt-md", "fxHide.gt-lg"] }, { type: i8$2.MatMenuTrigger, selector: "[mat-menu-trigger-for], [matMenuTriggerFor]", exportAs: ["matMenuTrigger"] }, { type: i5$1.MatHeaderRowDef, selector: "[matHeaderRowDef]", inputs: ["matHeaderRowDef", "matHeaderRowDefSticky"] }, { type: i5$1.MatRowDef, selector: "[matRowDef]", inputs: ["matRowDefColumns", "matRowDefWhen"] }, { type: i22.CdkDrag, selector: "[cdkDrag]", inputs: ["cdkDragData", "cdkDragLockAxis", "cdkDragRootElement", "cdkDragBoundary", "cdkDragStartDelay", "cdkDragFreeDragPosition", "cdkDragDisabled", "cdkDragConstrainPosition", "cdkDragPreviewClass", "cdkDragPreviewContainer"], outputs: ["cdkDragStarted", "cdkDragReleased", "cdkDragEnded", "cdkDragEntered", "cdkDragExited", "cdkDragDropped", "cdkDragMoved"], exportAs: ["cdkDrag"] }, { type: i6.MatRipple, selector: "[mat-ripple], [matRipple]", inputs: ["matRippleColor", "matRippleUnbounded", "matRippleCentered", "matRippleRadius", "matRippleAnimation", "matRippleDisabled", "matRippleTrigger"], exportAs: ["matRipple"] }, { type: i10.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { type: i25.DefaultClassDirective, selector: " [ngClass], [ngClass.xs], [ngClass.sm], [ngClass.md], [ngClass.lg], [ngClass.xl], [ngClass.lt-sm], [ngClass.lt-md], [ngClass.lt-lg], [ngClass.lt-xl], [ngClass.gt-xs], [ngClass.gt-sm], [ngClass.gt-md], [ngClass.gt-lg]", inputs: ["ngClass", "ngClass.xs", "ngClass.sm", "ngClass.md", "ngClass.lg", "ngClass.xl", "ngClass.lt-sm", "ngClass.lt-md", "ngClass.lt-lg", "ngClass.lt-xl", "ngClass.gt-xs", "ngClass.gt-sm", "ngClass.gt-md", "ngClass.gt-lg"] }, { type: i22.CdkDragPreview, selector: "ng-template[cdkDragPreview]", inputs: ["data", "matchSize"] }, { type: i22.CdkDragPlaceholder, selector: "ng-template[cdkDragPlaceholder]", inputs: ["data"] }, { type: i8$2.MatMenuContent, selector: "ng-template[matMenuContent]" }], pipes: { "translate": TranslatePipe, "amCalendar": CalendarPipe, "amTimeAgo": TimeAgoPipe, "number": i10.DecimalPipe, "currency": i10.CurrencyPipe }, animations: [
|
7617
7663
|
listAnimation,
|
7618
7664
|
itemAnimation,
|
7619
7665
|
expandListItemAnimation,
|
@@ -7626,7 +7672,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.1.1", ngImpor
|
|
7626
7672
|
itemAnimation,
|
7627
7673
|
expandListItemAnimation,
|
7628
7674
|
listItemUpdatedAnimation
|
7629
|
-
], template: "<bizdoc-none *ngIf=\"dataSource?.data.length === 0\" title=\"NoMessages\" [subtitle]=\"!isMobile && folderId === DRAFT ? 'AltN' : null\" icon=\"mail_outline\"></bizdoc-none>\r\n<mat-progress-bar mode=\"query\" [style.visibility]=\"loading ? 'visible':'hidden'\"></mat-progress-bar>\r\n<mat-table cdkDropList class=\"data-table\"\r\n [cdkDropListDisabled]=\"isMobile\"\r\n [cdkDropListData]=\"dataSource?.data\"\r\n cdkDropListConnectedTo=\"folders\"\r\n cdkDropListSortingDisabled\r\n [dataSource]=\"dataSource\" matSort multiTemplateDataRows (matSortChange)=\"sortData()\"\r\n id=\"browse-table\" [@list]=\"dataSource\" [style.display]=\"dataSource?.data.length ?'':'none'\">\r\n <ng-container matColumnDef=\"select\">\r\n <mat-header-cell *matHeaderCellDef>\r\n <div class=\"\"></div>\r\n <mat-checkbox (change)=\"$event ? masterToggle() : null\" [aria-label]=\"'Check'|translate\"\r\n [checked]=\"selection.hasValue() && isAllSelected()\"\r\n [indeterminate]=\"selection.hasValue() && !isAllSelected()\">\r\n </mat-checkbox>\r\n </mat-header-cell>\r\n <mat-cell *matCellDef=\"let item\">\r\n <mat-checkbox (click)=\"$event.stopPropagation()\" [aria-label]=\"'Check'|translate\"\r\n (change)=\"$event ? selection.toggle(item) : null\"\r\n [checked]=\"selection.isSelected(item)\">\r\n </mat-checkbox>\r\n <!-- drag -->\r\n <!--<button mat-icon-button cdkDragHandle\r\n (mousedown)=\"dragDisabled = false\"\r\n (mouseup)=\"dragDisabled = true\"\r\n (touchstart)=\"dragDisabled = false\"\r\n (touchend)=\"dragDisabled = true\"\r\n class=\"drag\" aria-disabled=\"true\" fxHide.xs>\r\n <mat-icon>drag_indicator</mat-icon>\r\n </button>-->\r\n <button mat-icon-button (click)=\"toggleExpanded(item, $event)\" [bizdocTooltip]=\"'Details' | translate\" [attr.aria-label]=\"'Details' | translate\" class=\"tool\"><mat-icon>{{item == expandedElement ? 'unfold_less' : 'unfold_more'}}</mat-icon></button>\r\n </mat-cell>\r\n </ng-container>\r\n <!-- Number column -->\r\n <ng-container matColumnDef=\"number\">\r\n <mat-header-cell *matHeaderCellDef mat-sort-header>{{'Number' | translate}}</mat-header-cell>\r\n <mat-cell *matCellDef=\"let item\" class=\"data-column\"> {{item.number}} </mat-cell>\r\n </ng-container>\r\n\r\n <!-- Subject column -->\r\n <ng-container matColumnDef=\"subject\">\r\n <mat-header-cell *matHeaderCellDef mat-sort-header>{{'Subject' | translate}}</mat-header-cell>\r\n <mat-cell *matCellDef=\"let item\" class=\"data-column\"> {{item.subject}} </mat-cell>\r\n </ng-container>\r\n\r\n <ng-container matColumnDef=\"owner\">\r\n <mat-header-cell *matHeaderCellDef mat-sort-header>{{'Owner' | translate}}</mat-header-cell>\r\n <mat-cell *matCellDef=\"let item\" class=\"data-column\">\r\n <bizdoc-identity-name *ngIf=\"item.ownerId\" [identity]=\"item.ownerId\" [by]=\"item.ownerById\"></bizdoc-identity-name>\r\n </mat-cell>\r\n </ng-container>\r\n <ng-container matColumnDef=\"sender\">\r\n <mat-header-cell *matHeaderCellDef mat-sort-header>{{'Sender' | translate}}</mat-header-cell>\r\n <mat-cell *matCellDef=\"let item\" class=\"data-column\">\r\n <bizdoc-identity-name *ngIf=\"item.senderId\" [identity]=\"item.senderId\" [by]=\"item.byId\"></bizdoc-identity-name>\r\n </mat-cell>\r\n </ng-container>\r\n\r\n <ng-container matColumnDef=\"received\">\r\n <mat-header-cell *matHeaderCellDef mat-sort-header>{{'Received' | translate}}</mat-header-cell>\r\n <mat-cell *matCellDef=\"let item\" class=\"data-column\"> {{item.received | amCalendar}} </mat-cell>\r\n </ng-container>\r\n\r\n <ng-container matColumnDef=\"receivedAgo\">\r\n <mat-header-cell *matHeaderCellDef mat-sort-header=\"received\">{{'Received' | translate}}</mat-header-cell>\r\n <mat-cell *matCellDef=\"let item\" class=\"data-column\" [bizdocTooltip]=\"item.received | amCalendar\">{{item.received | amTimeAgo}}</mat-cell>\r\n </ng-container>\r\n\r\n <ng-container matColumnDef=\"replied\">\r\n <mat-header-cell *matHeaderCellDef mat-sort-header>{{'Replied' | translate}}</mat-header-cell>\r\n <mat-cell *matCellDef=\"let item\" class=\"data-column\"> {{item.replied | amCalendar}} </mat-cell>\r\n </ng-container>\r\n\r\n <ng-container matColumnDef=\"issued\">\r\n <mat-header-cell *matHeaderCellDef mat-sort-header>{{'Issued' | translate}}</mat-header-cell>\r\n <mat-cell *matCellDef=\"let item\" class=\"data-column\"> {{item.issued | amCalendar}} </mat-cell>\r\n </ng-container>\r\n\r\n <ng-container matColumnDef=\"issuedAgo\">\r\n <mat-header-cell *matHeaderCellDef mat-sort-header=\"issued\">{{'Issued' | translate}}</mat-header-cell>\r\n <mat-cell *matCellDef=\"let item\" class=\"data-column\" [bizdocTooltip]=\"item.issued | amCalendar\"> {{item.issued | amTimeAgo}} </mat-cell>\r\n </ng-container>\r\n\r\n <ng-container matColumnDef=\"state\">\r\n <mat-header-cell *matHeaderCellDef mat-sort-header=\"stateId\">{{'Status' | translate }}</mat-header-cell>\r\n <mat-cell *matCellDef=\"let item\" class=\"data-column\">\r\n <bizdoc-status [stateId]=\"item.stateId\"></bizdoc-status>\r\n </mat-cell>\r\n </ng-container>\r\n\r\n <ng-container *ngIf=\"customColumns\">\r\n <ng-container *ngFor=\"let c of customColumns\" [matColumnDef]=\"c.name\">\r\n <mat-header-cell *matHeaderCellDef mat-sort-header> {{c.title}} </mat-header-cell>\r\n <mat-cell *matCellDef=\"let item\" class=\"data-column\">\r\n <ng-container [ngSwitch]=\"c.type\">\r\n <span *ngSwitchCase=\"'Date'\">\r\n {{item.model[c.name] | amCalendar }}\r\n </span>\r\n <span *ngSwitchCase=\"'Decimal'\">\r\n {{item.model[c.name] | number }}\r\n </span>\r\n <span *ngSwitchCase=\"'Boolean'\">\r\n <mat-checkbox [checked]=\"item.model[c.name]\" [disabled]=\"true\"></mat-checkbox>\r\n </span>\r\n <span *ngSwitchDefault>\r\n {{item.model[c.name]}}z\r\n </span>\r\n </ng-container>\r\n </mat-cell>\r\n </ng-container>\r\n </ng-container>\r\n\r\n <!-- Value column -->\r\n <ng-container matColumnDef=\"value\">\r\n <mat-header-cell *matHeaderCellDef mat-sort-header>{{'Amount' | translate}}</mat-header-cell>\r\n <mat-cell *matCellDef=\"let item\" class=\"data-column\"> {{item.value | currency : item.currencyCode : 'symbol' : currencyFormat}} </mat-cell>\r\n </ng-container>\r\n\r\n <!-- options column -->\r\n <ng-container matColumnDef=\"options\">\r\n <mat-header-cell *matHeaderCellDef></mat-header-cell>\r\n <mat-cell *matCellDef=\"let item\">\r\n <button mat-icon-button (click)=\"flag(item, $event)\" [bizdocTooltip]=\"'Flagged'| translate\" [attr.aria-label]=\"'ToggleFlagged' | translate\" class=\"tool\"><mat-icon [class.document-flag]=\"item.flag\">{{item.flag ? 'star' : 'star_border'}}</mat-icon></button>\r\n <button mat-icon-button (click)=\"view(item, $event)\" [bizdocTooltip]=\"'View' | translate\" [attr.aria-label]=\"'View' | translate\" class=\"tool\" *ngIf=\"enableAnalysis\"><mat-icon>data_usage</mat-icon></button>\r\n <button mat-icon-button (click)=\"$event.stopPropagation()\" [matMenuTriggerFor]=\"menu\" fxHide.xs [matMenuTriggerData]=\"{item: item}\" [bizdocTooltip]=\"'Options' | translate\" [attr.aria-label]=\"'Options' | translate\" class=\"tool\"><mat-icon>more_vert</mat-icon></button>\r\n </mat-cell>\r\n </ng-container>\r\n <!-- Expanded Content Column -->\r\n <ng-container matColumnDef=\"expandedDetail\">\r\n <mat-cell *matCellDef=\"let item\" [attr.colspan]=\"displayedColumns.length\" [@updated]=\"item == updatedElement\"\r\n [class.read-row]=\"item.read\">\r\n <div [@detailExpand]=\"item == expandedElement ? 'expanded' : 'collapsed'\" style=\"width: 100%\">\r\n <bizdoc-expanded-item [item]=\"item\" *ngIf=\"item == expandedElement\"></bizdoc-expanded-item>\r\n </div>\r\n </mat-cell>\r\n </ng-container>\r\n <mat-header-row *matHeaderRowDef=\"displayedColumns; sticky: true\"></mat-header-row>\r\n <mat-row @item [@updated]=\"item == updatedElement\"\r\n *matRowDef=\"let item; let dataIndex = dataIndex; columns: displayedColumns;\" class=\"element-row\"\r\n cdkDrag [cdkDragData]=\"item\"\r\n [cdkDragDisabled]=\"dragDisabled\"\r\n (cdkDragReleased)=\"dragDisabled = true\"\r\n [ngClass]=\"{'selecteded-row': selectedElement === item,\r\n 'expanded-row': expandedElement === item,\r\n 'odd-row': dataIndex % 2,\r\n 'read-row': item.read}\" matRipple\r\n (click)=\"open(item, $event)\">\r\n <div *cdkDragPreview>\r\n <button mat-icon-button aria-disabled=\"true\"><mat-icon>drag_indicator</mat-icon></button> <span>#{{item.number}}</span>\r\n </div>\r\n <div *cdkDragPlaceholder>\r\n <!-- none -->\r\n </div>\r\n </mat-row>\r\n <mat-row *matRowDef=\"let item; ; let dataIndex = dataIndex; columns: ['expandedDetail']\"\r\n class=\"detail-row\" matRipple\r\n [ngClass]=\"{ 'selecteded-row': selectedElement === item,\r\n 'odd-row': dataIndex % 2\r\n }\"></mat-row>\r\n</mat-table>\r\n<mat-paginator #paginator [hidePageSize]=\"true\" [pageSize]=\"PAGE_SIZE\" [style.display]=\"!isMobile && dataSource?.data.length>PAGE_SIZE ? '':'none'\"></mat-paginator>\r\n<mat-menu #menu=\"matMenu\">\r\n <ng-template matMenuContent let-item=\"item\">\r\n <button mat-menu-item (click)=\"open(item, $event)\">{{'Open'|translate}}</button>\r\n <mat-divider></mat-divider>\r\n <button mat-menu-item (click)=\"toggleRead(item)\">{{(item.read ?'MarkAsUnread':'MarkAsRead')|translate}}</button>\r\n <mat-divider></mat-divider>\r\n <button mat-menu-item (click)=\"copy(item)\">{{'Copy'| translate}}</button>\r\n </ng-template>\r\n</mat-menu>\r\n", styles: ["#browse-table{width:100%}#browse-table .detail-row{min-height:0}#browse-table .element-row{cursor:pointer}#browse-table .element-row .drag{cursor:move}#browse-table .read-row{font-weight:100}@media screen and (min-width: 600px){.mat-row .tool{opacity:.05}.mat-row:hover .tool{opacity:1}}::ng-deep .mat-column-options{justify-content:end;padding-inline-end:8px}::ng-deep .mat-column-value{justify-content:right}::ng-deep .mat-column-select{white-space:nowrap}::ng-deep .mat-column-number{white-space:nowrap}\n"] }]
|
7675
|
+
], template: "<bizdoc-none *ngIf=\"dataSource?.data.length === 0\" title=\"NoMessages\" [subtitle]=\"!isMobile && folderId === DRAFT ? 'AltN' : null\" icon=\"mail_outline\"></bizdoc-none>\r\n<mat-progress-bar mode=\"query\" [style.visibility]=\"loading ? 'visible':'hidden'\"></mat-progress-bar>\r\n<mat-table cdkDropList class=\"data-table\"\r\n [cdkDropListDisabled]=\"isMobile\"\r\n [cdkDropListData]=\"dataSource?.data\"\r\n cdkDropListConnectedTo=\"folders\"\r\n cdkDropListSortingDisabled\r\n [dataSource]=\"dataSource\" matSort multiTemplateDataRows (matSortChange)=\"sortData()\"\r\n id=\"browse-table\" [@list]=\"dataSource\" [style.display]=\"dataSource?.data.length ?'':'none'\">\r\n <ng-container matColumnDef=\"select\">\r\n <mat-header-cell *matHeaderCellDef>\r\n <div class=\"\"></div>\r\n <mat-checkbox (change)=\"$event ? masterToggle() : null\" [aria-label]=\"'Check'|translate\"\r\n [checked]=\"selection.hasValue() && isAllSelected()\"\r\n [indeterminate]=\"selection.hasValue() && !isAllSelected()\">\r\n </mat-checkbox>\r\n </mat-header-cell>\r\n <mat-cell *matCellDef=\"let item\">\r\n <mat-checkbox (click)=\"$event.stopPropagation()\" [aria-label]=\"'Check'|translate\"\r\n (change)=\"$event ? selection.toggle(item) : null\"\r\n [checked]=\"selection.isSelected(item)\">\r\n </mat-checkbox>\r\n <!-- drag -->\r\n <!--<button mat-icon-button cdkDragHandle\r\n (mousedown)=\"dragDisabled = false\"\r\n (mouseup)=\"dragDisabled = true\"\r\n (touchstart)=\"dragDisabled = false\"\r\n (touchend)=\"dragDisabled = true\"\r\n class=\"drag\" aria-disabled=\"true\" fxHide.xs>\r\n <mat-icon>drag_indicator</mat-icon>\r\n </button>-->\r\n <button mat-icon-button (click)=\"toggleExpanded(item, $event)\" [bizdocTooltip]=\"'Details' | translate\" [attr.aria-label]=\"'Details' | translate\" class=\"tool\"><mat-icon>{{item == expandedElement ? 'unfold_less' : 'unfold_more'}}</mat-icon></button>\r\n </mat-cell>\r\n </ng-container>\r\n <!-- Number column -->\r\n <ng-container matColumnDef=\"number\">\r\n <mat-header-cell *matHeaderCellDef mat-sort-header>{{'Number' | translate}}</mat-header-cell>\r\n <mat-cell *matCellDef=\"let item\" class=\"data-column\"> {{item.number}} </mat-cell>\r\n </ng-container>\r\n\r\n <!-- Subject column -->\r\n <ng-container matColumnDef=\"subject\">\r\n <mat-header-cell *matHeaderCellDef mat-sort-header>{{'Subject' | translate}}</mat-header-cell>\r\n <mat-cell *matCellDef=\"let item\" class=\"data-column\"> {{item.subject}} </mat-cell>\r\n </ng-container>\r\n\r\n <ng-container matColumnDef=\"owner\">\r\n <mat-header-cell *matHeaderCellDef mat-sort-header>{{'Owner' | translate}}</mat-header-cell>\r\n <mat-cell *matCellDef=\"let item\" class=\"data-column\">\r\n <bizdoc-identity-name *ngIf=\"item.ownerId\" [identity]=\"item.ownerId\" [by]=\"item.ownerById\"></bizdoc-identity-name>\r\n </mat-cell>\r\n </ng-container>\r\n <ng-container matColumnDef=\"sender\">\r\n <mat-header-cell *matHeaderCellDef mat-sort-header>{{'Sender' | translate}}</mat-header-cell>\r\n <mat-cell *matCellDef=\"let item\" class=\"data-column\">\r\n <bizdoc-identity-name *ngIf=\"item.senderId\" [identity]=\"item.senderId\" [by]=\"item.byId\"></bizdoc-identity-name>\r\n </mat-cell>\r\n </ng-container>\r\n\r\n <ng-container matColumnDef=\"received\">\r\n <mat-header-cell *matHeaderCellDef mat-sort-header>{{'Received' | translate}}</mat-header-cell>\r\n <mat-cell *matCellDef=\"let item\" class=\"data-column\"> {{item.received | amCalendar}} </mat-cell>\r\n </ng-container>\r\n\r\n <ng-container matColumnDef=\"receivedAgo\">\r\n <mat-header-cell *matHeaderCellDef mat-sort-header=\"received\">{{'Received' | translate}}</mat-header-cell>\r\n <mat-cell *matCellDef=\"let item\" class=\"data-column\" [bizdocTooltip]=\"item.received | amCalendar\">{{item.received | amTimeAgo}}</mat-cell>\r\n </ng-container>\r\n\r\n <ng-container matColumnDef=\"replied\">\r\n <mat-header-cell *matHeaderCellDef mat-sort-header>{{'Replied' | translate}}</mat-header-cell>\r\n <mat-cell *matCellDef=\"let item\" class=\"data-column\"> {{item.replied | amCalendar}} </mat-cell>\r\n </ng-container>\r\n\r\n <ng-container matColumnDef=\"issued\">\r\n <mat-header-cell *matHeaderCellDef mat-sort-header>{{'Issued' | translate}}</mat-header-cell>\r\n <mat-cell *matCellDef=\"let item\" class=\"data-column\"> {{item.issued | amCalendar}} </mat-cell>\r\n </ng-container>\r\n\r\n <ng-container matColumnDef=\"issuedAgo\">\r\n <mat-header-cell *matHeaderCellDef mat-sort-header=\"issued\">{{'Issued' | translate}}</mat-header-cell>\r\n <mat-cell *matCellDef=\"let item\" class=\"data-column\" [bizdocTooltip]=\"item.issued | amCalendar\"> {{item.issued | amTimeAgo}} </mat-cell>\r\n </ng-container>\r\n\r\n <ng-container matColumnDef=\"state\">\r\n <mat-header-cell *matHeaderCellDef mat-sort-header=\"stateId\">{{'Status' | translate }}</mat-header-cell>\r\n <mat-cell *matCellDef=\"let item\" class=\"data-column\">\r\n <bizdoc-status [stateId]=\"item.stateId\"></bizdoc-status>\r\n </mat-cell>\r\n </ng-container>\r\n\r\n <ng-container *ngIf=\"customColumns\">\r\n <ng-container *ngFor=\"let c of customColumns\" [matColumnDef]=\"c.name\">\r\n <mat-header-cell *matHeaderCellDef mat-sort-header> {{c.title}} </mat-header-cell>\r\n <mat-cell *matCellDef=\"let item\" class=\"data-column\">\r\n <ng-container [ngSwitch]=\"c.type\">\r\n <span *ngSwitchCase=\"'Date'\">\r\n {{item.model[c.name] | amCalendar }}\r\n </span>\r\n <span *ngSwitchCase=\"'Decimal'\">\r\n {{item.model[c.name] | number }}\r\n </span>\r\n <span *ngSwitchCase=\"'Boolean'\">\r\n <mat-checkbox [checked]=\"item.model[c.name]\" [disabled]=\"true\"></mat-checkbox>\r\n </span>\r\n <span *ngSwitchDefault>\r\n {{item.model[c.name]}}z\r\n </span>\r\n </ng-container>\r\n </mat-cell>\r\n </ng-container>\r\n </ng-container>\r\n\r\n <!-- Value column -->\r\n <ng-container matColumnDef=\"value\">\r\n <mat-header-cell *matHeaderCellDef mat-sort-header>{{'Amount' | translate}}</mat-header-cell>\r\n <mat-cell *matCellDef=\"let item\" class=\"data-column\"> {{item.value | currency : item.currencyCode : 'symbol' : currencyFormat}} </mat-cell>\r\n </ng-container>\r\n\r\n <!-- options column -->\r\n <ng-container matColumnDef=\"options\">\r\n <mat-header-cell *matHeaderCellDef></mat-header-cell>\r\n <mat-cell *matCellDef=\"let item\">\r\n <button mat-icon-button (click)=\"flag(item, $event)\" [bizdocTooltip]=\"'Flagged'| translate\" [attr.aria-label]=\"'ToggleFlagged' | translate\" class=\"tool\"><mat-icon [class.document-flag]=\"item.flag\">{{item.flag ? 'star' : 'star_border'}}</mat-icon></button>\r\n <button mat-icon-button (click)=\"view(item, $event)\" [bizdocTooltip]=\"'View' | translate\" [attr.aria-label]=\"'View' | translate\" class=\"tool\" *ngIf=\"enableAnalysis\"><mat-icon>data_usage</mat-icon></button>\r\n <button mat-icon-button (click)=\"$event.stopPropagation()\" [matMenuTriggerFor]=\"menu\" fxHide.xs [matMenuTriggerData]=\"{item: item}\" [bizdocTooltip]=\"'Options' | translate\" [attr.aria-label]=\"'Options' | translate\" class=\"tool\"><mat-icon>more_vert</mat-icon></button>\r\n </mat-cell>\r\n </ng-container>\r\n <!-- Expanded Content Column -->\r\n <ng-container matColumnDef=\"expandedDetail\">\r\n <mat-cell *matCellDef=\"let item\" [attr.colspan]=\"displayedColumns.length\" [@updated]=\"item == updatedElement\"\r\n [class.read-row]=\"item.read\">\r\n <div [@detailExpand]=\"item == expandedElement ? 'expanded' : 'collapsed'\" style=\"width: 100%\">\r\n <bizdoc-expanded-item [model]=\"item\" *ngIf=\"item == expandedElement\"></bizdoc-expanded-item>\r\n </div>\r\n </mat-cell>\r\n </ng-container>\r\n <mat-header-row *matHeaderRowDef=\"displayedColumns; sticky: true\"></mat-header-row>\r\n <mat-row @item [@updated]=\"item == updatedElement\"\r\n *matRowDef=\"let item; let dataIndex = dataIndex; columns: displayedColumns;\" class=\"element-row\"\r\n cdkDrag [cdkDragData]=\"item\"\r\n [cdkDragDisabled]=\"dragDisabled\"\r\n (cdkDragReleased)=\"dragDisabled = true\"\r\n [ngClass]=\"{'selecteded-row': selectedElement === item,\r\n 'expanded-row': expandedElement === item,\r\n 'odd-row': dataIndex % 2,\r\n 'read-row': item.read}\" matRipple\r\n (click)=\"open(item, $event)\">\r\n <div *cdkDragPreview>\r\n <button mat-icon-button aria-disabled=\"true\"><mat-icon>drag_indicator</mat-icon></button> <span>#{{item.number}}</span>\r\n </div>\r\n <div *cdkDragPlaceholder>\r\n <!-- none -->\r\n </div>\r\n </mat-row>\r\n <mat-row *matRowDef=\"let item; ; let dataIndex = dataIndex; columns: ['expandedDetail']\"\r\n class=\"detail-row\" matRipple\r\n [ngClass]=\"{ 'selecteded-row': selectedElement === item,\r\n 'odd-row': dataIndex % 2\r\n }\"></mat-row>\r\n</mat-table>\r\n<mat-paginator #paginator [hidePageSize]=\"true\" [pageSize]=\"PAGE_SIZE\" [style.display]=\"!isMobile && dataSource?.data.length>PAGE_SIZE ? '':'none'\"></mat-paginator>\r\n<mat-menu #menu=\"matMenu\">\r\n <ng-template matMenuContent let-item=\"item\">\r\n <button mat-menu-item (click)=\"open(item, $event)\">{{'Open'|translate}}</button>\r\n <mat-divider></mat-divider>\r\n <button mat-menu-item (click)=\"toggleRead(item)\">{{(item.read ?'MarkAsUnread':'MarkAsRead')|translate}}</button>\r\n <mat-divider></mat-divider>\r\n <button mat-menu-item (click)=\"copy(item)\">{{'Copy'| translate}}</button>\r\n </ng-template>\r\n</mat-menu>\r\n", styles: ["#browse-table{width:100%}#browse-table .detail-row{min-height:0}#browse-table .element-row{cursor:pointer}#browse-table .element-row .drag{cursor:move}#browse-table .read-row{font-weight:100}@media screen and (min-width: 600px){.mat-row .tool{opacity:.05}.mat-row:hover .tool{opacity:1}}::ng-deep .mat-column-options{justify-content:end;padding-inline-end:8px}::ng-deep .mat-column-value{justify-content:right}::ng-deep .mat-column-select{white-space:nowrap}::ng-deep .mat-column-number{white-space:nowrap}\n"] }]
|
7630
7676
|
}], ctorParameters: function () {
|
7631
7677
|
return [{ type: MailboxService }, { type: AccountService }, { type: CubeService }, { type: SessionService }, { type: PromptService }, { type: TranslateService }, { type: i0.ChangeDetectorRef }, { type: RouterImpl }, { type: HubService }, { type: undefined, decorators: [{
|
7632
7678
|
type: Inject,
|
@@ -13230,8 +13276,10 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.1.1", ngImpor
|
|
13230
13276
|
args: [{ name: 'amDurationFormat' }]
|
13231
13277
|
}], ctorParameters: function () { return [{ type: TranslateService }]; } });
|
13232
13278
|
|
13233
|
-
Diagram.Inject(ComplexHierarchicalTree, BpmnDiagrams, DataBinding /*, LayoutAnimation, LineRouting, ConnectorBridging*/);
|
13234
|
-
const
|
13279
|
+
Diagram.Inject(ComplexHierarchicalTree, BpmnDiagrams, DataBinding, LineDistribution /*, LineRouting, ConnectorBridging, LayoutAnimation, LineRouting, ConnectorBridging*/);
|
13280
|
+
const
|
13281
|
+
//ELLIPSIS = 'M 650, 150 a 75,150 0 1,0 1,0 z',
|
13282
|
+
FYI_PATH = 'M12 2C6.48 2 2 6.48 2 12s4.48 10 10 10 10-4.48 10-10S17.52 2 12 2zm1 15h-2v-6h2v6zm0-8h-2V7h2v2z', ESCALATED_PATH = 'M22 5.72l-4.6-3.86-1.29 1.53 4.6 3.86L22 5.72zM7.88 3.39L6.6 1.86 2 5.71l1.29 1.53 4.59-3.85zM12.5 8H11v6l4.75 2.85.75-1.23-4-2.37V8zM12 4c-4.97 0-9 4.03-9 9s4.02 9 9 9c4.97 0 9-4.03 9-9s-4.03-9-9-9zm0 16c-3.87 0-7-3.13-7-7s3.13-7 7-7 7 3.13 7 7-3.13 7-7 7z', WARNNING_PATH$1 = 'M 13.763735,1.8433735 H 6.3037349 l -5.27,5.27 v 7.4599995 l 5.27,5.27 h 7.4600001 l 5.27,-5.27 V 7.1133735 Z m -3.73,14.2999995 c -0.7200001,0 -1.3000001,-0.58 -1.3000001,-1.3 0,-0.72 0.58,-1.3 1.3000001,-1.3 0.72,0 1.3,0.58 1.3,1.3 0,0.72 -0.58,1.3 -1.3,1.3 z m 1,-4.3 H 9.0337349 V 5.8433735 h 2.0000001 z';
|
13235
13283
|
/** flow-view component*/
|
13236
13284
|
class FlowViewComponent extends TraceBase {
|
13237
13285
|
/** workflow-view ctor */
|
@@ -13247,19 +13295,16 @@ class FlowViewComponent extends TraceBase {
|
|
13247
13295
|
this.diagramConstraints = DiagramConstraints.Default |
|
13248
13296
|
DiagramConstraints.Pan |
|
13249
13297
|
DiagramConstraints.LineRouting |
|
13250
|
-
DiagramConstraints.
|
13298
|
+
DiagramConstraints.Zoom;
|
13251
13299
|
this.layout = {
|
13252
13300
|
type: 'ComplexHierarchicalTree',
|
13253
13301
|
connectionPointOrigin: ConnectionPointOrigin.DifferentPoint,
|
13254
13302
|
horizontalSpacing: 50,
|
13303
|
+
enableRouting: true,
|
13255
13304
|
verticalSpacing: 50,
|
13256
|
-
|
13257
|
-
//arrangement: ChildArrangement.Nonlinear,
|
13258
|
-
//horizontalAlignment:'Center',
|
13259
|
-
//verticalAlignment: 'Auto',
|
13305
|
+
horizontalAlignment: 'Center',
|
13260
13306
|
connectionDirection: 'Orientation',
|
13261
13307
|
orientation: this._session.inverse ? 'RightToLeft' : 'LeftToRight',
|
13262
|
-
margin: { left: 10, right: 10, top: 10, bottom: 10 }
|
13263
13308
|
};
|
13264
13309
|
this.scrollSettings = {
|
13265
13310
|
minZoom: .5,
|
@@ -13348,7 +13393,6 @@ class FlowViewComponent extends TraceBase {
|
|
13348
13393
|
obj.style.strokeWidth = 0;
|
13349
13394
|
}
|
13350
13395
|
else {
|
13351
|
-
// obj.shape = { type: 'Bpmn', shape: 'Event' } as BpmnShapeModel;
|
13352
13396
|
obj.width = obj.height = 50;
|
13353
13397
|
if (obj.annotations && obj.annotations.length)
|
13354
13398
|
obj.annotations[0].style.color = this._session.theme.dark ? 'white' : 'black';
|
@@ -13359,7 +13403,8 @@ class FlowViewComponent extends TraceBase {
|
|
13359
13403
|
}
|
13360
13404
|
else {
|
13361
13405
|
obj.style.strokeColor = this._accentColor;
|
13362
|
-
obj.style.fill = recipient && recipient.pending ?
|
13406
|
+
obj.style.fill = recipient && recipient.pending ?
|
13407
|
+
this._session.getAccent(recipient.userId === this._session.userId ? 500 : 400) : 'transparent';
|
13363
13408
|
}
|
13364
13409
|
obj.style.strokeWidth = 2;
|
13365
13410
|
}
|
@@ -13467,7 +13512,7 @@ class FlowViewComponent extends TraceBase {
|
|
13467
13512
|
});
|
13468
13513
|
if (c.sourceId === node.id) {
|
13469
13514
|
//
|
13470
|
-
if (c.
|
13515
|
+
if (c.virtual && c.originId !== recipient.id)
|
13471
13516
|
return;
|
13472
13517
|
connectors.push({
|
13473
13518
|
sourceID: nod.id,
|
@@ -13500,56 +13545,40 @@ class FlowViewComponent extends TraceBase {
|
|
13500
13545
|
indicators.push(actionIndicator);
|
13501
13546
|
}
|
13502
13547
|
}
|
13503
|
-
if (recipient.
|
13548
|
+
if (recipient.fyi)
|
13504
13549
|
indicators.push({
|
13505
|
-
id: nod.id + '
|
13550
|
+
id: nod.id + 'fyi',
|
13506
13551
|
shape: {
|
13507
13552
|
type: 'Path',
|
13508
|
-
data:
|
13509
|
-
align: this._session.inverse ? '
|
13553
|
+
data: FYI_PATH,
|
13554
|
+
align: this._session.inverse ? 'XMinYMax' : 'XMaxYMax'
|
13510
13555
|
},
|
13511
13556
|
style: {
|
13512
|
-
fill:
|
13557
|
+
fill: '#1976d2'
|
13513
13558
|
},
|
13514
13559
|
addInfo: {
|
13515
13560
|
indicator: true,
|
13516
13561
|
parentId: nod.id
|
13517
13562
|
}
|
13518
13563
|
});
|
13519
|
-
if (recipient.
|
13520
|
-
|
13521
|
-
id: nod.id + '
|
13564
|
+
if (recipient.escalated) {
|
13565
|
+
const escalateIndicator = {
|
13566
|
+
id: nod.id + 'escalate',
|
13522
13567
|
shape: {
|
13523
13568
|
type: 'Path',
|
13524
|
-
data:
|
13569
|
+
data: ESCALATED_PATH,
|
13525
13570
|
align: this._session.inverse ? 'XMinYMax' : 'XMaxYMax'
|
13526
13571
|
},
|
13527
13572
|
style: {
|
13528
|
-
fill:
|
13573
|
+
fill: this._session.getAccent(900)
|
13529
13574
|
},
|
13530
13575
|
addInfo: {
|
13531
13576
|
indicator: true,
|
13532
13577
|
parentId: nod.id
|
13533
13578
|
}
|
13534
|
-
}
|
13535
|
-
|
13536
|
-
|
13537
|
-
// id: nod.id + 'escalate',
|
13538
|
-
// shape: {
|
13539
|
-
// type: 'Path',
|
13540
|
-
// data: ESCALATED_PATH,
|
13541
|
-
// align: this._session.inverse ? 'XMinYMax' : 'XMaxYMax'
|
13542
|
-
// },
|
13543
|
-
// style: {
|
13544
|
-
// fill: this._session.getAccent(900)
|
13545
|
-
// },
|
13546
|
-
// addInfo: {
|
13547
|
-
// indicator: true,
|
13548
|
-
// parentId: nod.id
|
13549
|
-
// } as NodeInfoModel
|
13550
|
-
// } as NodeModel;
|
13551
|
-
// indicators.push(escalateIndicator);
|
13552
|
-
// }
|
13579
|
+
};
|
13580
|
+
indicators.push(escalateIndicator);
|
13581
|
+
}
|
13553
13582
|
}
|
13554
13583
|
}
|
13555
13584
|
else {
|
@@ -13616,36 +13645,6 @@ class FlowViewComponent extends TraceBase {
|
|
13616
13645
|
}
|
13617
13646
|
}
|
13618
13647
|
}
|
13619
|
-
/**
|
13620
|
-
*
|
13621
|
-
* @param connector
|
13622
|
-
* @param index
|
13623
|
-
* @param vconnectors
|
13624
|
-
*/
|
13625
|
-
function reroute(connector, index) {
|
13626
|
-
while (index < dconnectors.length) {
|
13627
|
-
let dconnector = dconnectors[index];
|
13628
|
-
if (dconnector.sourceId === connector.targetId) {
|
13629
|
-
if (nodes.some(n => n.id === dconnector.targetId))
|
13630
|
-
connectors.push({
|
13631
|
-
sourceID: connector.sourceId,
|
13632
|
-
targetID: dconnector.targetId,
|
13633
|
-
addInfo: {
|
13634
|
-
estimate: dconnector.estimate,
|
13635
|
-
time: dconnector.time
|
13636
|
-
}
|
13637
|
-
});
|
13638
|
-
else
|
13639
|
-
reroute({
|
13640
|
-
time: dconnector.time,
|
13641
|
-
targetId: dconnector.targetId,
|
13642
|
-
estimate: dconnector.estimate,
|
13643
|
-
sourceId: connector.sourceId
|
13644
|
-
}, index + 1);
|
13645
|
-
}
|
13646
|
-
index++;
|
13647
|
-
}
|
13648
|
-
}
|
13649
13648
|
return { connectors, nodes, indicators };
|
13650
13649
|
});
|
13651
13650
|
}
|
@@ -13843,11 +13842,28 @@ class FlowViewComponent extends TraceBase {
|
|
13843
13842
|
tooltip.substituting = this._translate.personalize('SubstitutingFor', substituting.gender, substituting.name);
|
13844
13843
|
}
|
13845
13844
|
}
|
13846
|
-
|
13847
|
-
|
13845
|
+
if (recipient.originId && !recipient.replied) {
|
13846
|
+
const origin = this.model.recipients.find(r => r.id === recipient.originId);
|
13847
|
+
if (origin.toId) {
|
13848
|
+
const action = this._session.profile.actions.find(a => a.name === origin.action), adjective = action.adjective || action.past || action.title;
|
13849
|
+
if ((origin.byId || origin.userId) === this._session.userId)
|
13850
|
+
tooltip.substituting = this._translate.get('ActionByYou', adjective);
|
13851
|
+
else if (origin.byId) {
|
13852
|
+
const who = yield this._accounts.get(origin.userId).toPromise();
|
13853
|
+
const by = yield this._accounts.get(origin.byId).toPromise();
|
13854
|
+
tooltip.substituting = this._translate.get('ActionByBy', adjective, by.name, who.name);
|
13855
|
+
}
|
13856
|
+
else {
|
13857
|
+
const who = yield this._accounts.get(origin.userId).toPromise();
|
13858
|
+
tooltip.substituting = this._translate.get('ActionBy', adjective, who.name);
|
13859
|
+
}
|
13860
|
+
}
|
13861
|
+
}
|
13862
|
+
if (recipient.escalated) {
|
13863
|
+
const escalations = this.model.log.filter(l => l.type === 'Escalation' && l.recipientId === recipient.id);
|
13848
13864
|
const userIds = escalations.map(e => e.userId);
|
13849
13865
|
const users = yield this._accounts.getAll(userIds).toPromise();
|
13850
|
-
const duration = this._duration.transform(dayjs(escalations[escalations.length - 1].
|
13866
|
+
const duration = this._duration.transform(dayjs.duration(escalations[escalations.length - 1].duration, 's'));
|
13851
13867
|
tooltip.escalation = this._translate.get('EscalatedTo', this._translate.join(users.map(u => u.name)), duration);
|
13852
13868
|
}
|
13853
13869
|
if (recipient.replied) {
|
@@ -14068,22 +14084,16 @@ class TraceViewComponent extends TraceBase {
|
|
14068
14084
|
}
|
14069
14085
|
}
|
14070
14086
|
else if (recipient.byId) {
|
14071
|
-
let who = yield profileOf(recipient.userId);
|
14072
|
-
if (recipient.byId === this._session.userId)
|
14087
|
+
let who = yield profileOf(recipient.userId), by = yield profileOf(recipient.byId);
|
14088
|
+
if (recipient.byId === this._session.userId)
|
14073
14089
|
step.name = this._translate.get('ByYou', nameOf(who));
|
14074
|
-
if (action)
|
14075
|
-
step.action = yield actionBy(action, You, recipient.toId);
|
14076
|
-
}
|
14077
14090
|
else {
|
14078
|
-
let by = yield profileOf(recipient.byId);
|
14079
14091
|
step.name = this._translate.get('By', nameOf(who), nameOf(by));
|
14080
14092
|
if (by.role)
|
14081
14093
|
step.role = by.role;
|
14082
|
-
if (action)
|
14083
|
-
step.action = yield actionBy(action, by.gender, recipient.toId);
|
14084
14094
|
}
|
14085
14095
|
if (action)
|
14086
|
-
step.action = yield actionBy(action,
|
14096
|
+
step.action = yield actionBy(action, by.gender, recipient.toId);
|
14087
14097
|
}
|
14088
14098
|
else {
|
14089
14099
|
if (recipient.userId === this._session.userId)
|
@@ -14183,30 +14193,28 @@ class TraceViewComponent extends TraceBase {
|
|
14183
14193
|
step.role = by.role;
|
14184
14194
|
}
|
14185
14195
|
}
|
14186
|
-
else {
|
14196
|
+
else if (recipient.escalated) {
|
14187
14197
|
let escalations = this.model.log.filter(l => l.time > issued &&
|
14188
14198
|
l.type === 'Escalation' && l.recipientId === recipient.id);
|
14189
|
-
|
14190
|
-
|
14191
|
-
|
14192
|
-
|
14193
|
-
escalate.push(who);
|
14194
|
-
}
|
14195
|
-
let who = yield profileOf(recipient.userId);
|
14196
|
-
if (escalations.length === 1 && escalate[0] === this._session.userId)
|
14197
|
-
step.name = this._translate.get('EscalatedByYou', nameOf(who));
|
14198
|
-
else
|
14199
|
-
step.name = this._translate.get('EscalatedBy', nameOf(who), this._translate.join(escalate.map(e => nameOf(e))));
|
14199
|
+
let escalate = [];
|
14200
|
+
for (let escalation of escalations) {
|
14201
|
+
let who = yield profileOf(escalation.userId);
|
14202
|
+
escalate.push(who);
|
14200
14203
|
}
|
14204
|
+
let who = yield profileOf(recipient.userId);
|
14205
|
+
if (escalations.length === 1 && escalate[0] === this._session.userId)
|
14206
|
+
step.name = this._translate.get('EscalatedByYou', nameOf(who));
|
14207
|
+
else
|
14208
|
+
step.name = this._translate.get('EscalatedBy', nameOf(who), this._translate.join(escalate.map(e => nameOf(e))));
|
14209
|
+
}
|
14210
|
+
else {
|
14211
|
+
if (recipient.userId === this._session.userId)
|
14212
|
+
step.name = this._translate.get('You');
|
14201
14213
|
else {
|
14202
|
-
|
14203
|
-
|
14204
|
-
|
14205
|
-
|
14206
|
-
step.name = nameOf(who);
|
14207
|
-
if (who.role)
|
14208
|
-
step.role = who.role;
|
14209
|
-
}
|
14214
|
+
let who = yield profileOf(recipient.userId);
|
14215
|
+
step.name = nameOf(who);
|
14216
|
+
if (who.role)
|
14217
|
+
step.role = who.role;
|
14210
14218
|
}
|
14211
14219
|
}
|
14212
14220
|
trace.push(step);
|
@@ -14245,10 +14253,10 @@ class TraceViewComponent extends TraceBase {
|
|
14245
14253
|
}
|
14246
14254
|
}
|
14247
14255
|
TraceViewComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.1.1", ngImport: i0, type: TraceViewComponent, deps: [{ token: SessionService }, { token: TranslateService }, { token: AccountService }, { token: ChatInfo }, { token: HubService }], target: i0.ɵɵFactoryTarget.Component });
|
14248
|
-
TraceViewComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.1.1", type: TraceViewComponent, selector: "bizdoc-trace", inputs: { model: "model" }, outputs: { versionSelected: "versionSelected" }, usesInheritance: true, usesOnChanges: true, ngImport: i0, template: "<div class=\"nav-toolbar row\">\r\n <span class=\"divider\"></span>\r\n <button mat-icon-button [matMenuTriggerFor]=\"menu\" [bizdocTooltip]=\"'ShowAll'|translate\"><mat-icon>filter_list</mat-icon></button>\r\n <mat-menu #menu> \r\n <button mat-menu-item (click)=\"showAll=false\">\r\n <mat-icon>{{ !showAll?'check':'' }}</mat-icon>\r\n <span>{{'Route' | translate }}</span>\r\n </button>\r\n <button mat-menu-item (click)=\"showAll=true\">\r\n <mat-icon>{{showAll?'check':''}}</mat-icon>\r\n <span>{{'
|
14256
|
+
TraceViewComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.1.1", type: TraceViewComponent, selector: "bizdoc-trace", inputs: { model: "model" }, outputs: { versionSelected: "versionSelected" }, usesInheritance: true, usesOnChanges: true, ngImport: i0, template: "<div class=\"nav-toolbar row\">\r\n <span class=\"divider\"></span>\r\n <button mat-icon-button [matMenuTriggerFor]=\"menu\" [bizdocTooltip]=\"'ShowAll'|translate\"><mat-icon>filter_list</mat-icon></button>\r\n <mat-menu #menu> \r\n <button mat-menu-item (click)=\"showAll=false\">\r\n <mat-icon>{{ !showAll?'check':'' }}</mat-icon>\r\n <span>{{'Route' | translate }}</span>\r\n </button>\r\n <button mat-menu-item (click)=\"showAll=true\">\r\n <mat-icon>{{showAll?'check':''}}</mat-icon>\r\n <span>{{'Everything' | translate }}</span>\r\n </button>\r\n </mat-menu>\r\n</div>\r\n<table class=\"mat-table\" @list>\r\n <tbody role=\"rowgroup\">\r\n <tr class=\"mat-row\" *ngFor=\"let l of data\" @item>\r\n <td class=\"mat-cell\">\r\n <span [innerHTML]=\"l.name | sanitizeHtml\" (click)=\"chat($event)\"></span>\r\n <span *ngIf=l.role>{{'JoinComma'|translate}}{{l.role}}</span>\r\n </td>\r\n <td class=\"mat-cell\">\r\n <ng-container [ngSwitch]=\"l.type\">\r\n <ng-container *ngSwitchCase=\"'ActionTaken'\">\r\n <span [innerHTML]=\"l.action | sanitizeHtml\" (click)=\"chat($event)\" class=\"to\"></span>\r\n </ng-container>\r\n <span *ngSwitchCase=\"'Submit'\">{{'Issued' | translate}}</span>\r\n <span *ngSwitchCase=\"'Pending'\">{{'IsPending' | translate}}</span>\r\n <span *ngSwitchCase=\"'CheckOut'\">{{'CheckedIn' | translate : l.fileName}}</span>\r\n <span *ngSwitchCase=\"'CheckIn'\">{{'CheckedOut' | translate : l.fileName}}</span>\r\n <span *ngSwitchCase=\"'Estimate'\">{{'Estimate' | translate}}</span>\r\n <span *ngSwitchCase=\"'ModelChange'\">{{'Changed' | translate}}</span>\r\n </ng-container>\r\n <span *ngIf=\"l.fyi\"> {{'FYI'|translate}}</span>\r\n </td>\r\n <td class=\"mat-cell\" [ngSwitch]=\"l.estimate\">\r\n <ng-container *ngSwitchCase=\"true\">\r\n <span *ngIf=\"l.durationMax && l.durationMax === l.durationMin\" [bizdocTooltip]=\"l.durationMax|amDurationFormat\">{{'EstimateTime'| translate : (l.durationMax | amDuration:'s')}}</span>\r\n <span *ngIf=\"l.durationMax && l.durationMax !== l.durationMin\"\r\n [bizdocTooltip]=\"l.durationMax|amDurationFormat\">{{'EstimateTimeRange'| translate : (l.durationMin | amDuration:'s') : (l.durationMax | amDuration:'s')}}</span>\r\n </ng-container>\r\n <ng-container *ngSwitchDefault>\r\n <span>{{l.time | amCalendar : null : CALENDAR_SPEC }}</span>\r\n <span *ngIf=\"l.duration\" [bizdocTooltip]=\"l.duration|amDurationFormat\" class=\"duration\"> ({{l.duration | amDuration:'s'}})</span>\r\n </ng-container>\r\n </td>\r\n <td class=\"mat-cell\">\r\n <span *ngIf=\"l.note\">{{l.note}}</span>\r\n <button mat-icon-button *ngIf=\"l.type==='ModelChange'\" (click)=\"compare(l)\" [bizdocTooltip]=\"'Compare'|translate\" bizdocTooltipPosition=\"start\"><mat-icon>more_horiz</mat-icon></button>\r\n </td>\r\n </tr>\r\n </tbody>\r\n</table>\r\n", styles: [":host{width:100%}table{width:100%;background:transparent}table td{padding:0 4px}.duration{white-space:nowrap}\n"], components: [{ type: i7$1.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: i8.MatIcon, selector: "mat-icon", inputs: ["color", "inline", "svgIcon", "fontSet", "fontIcon"], exportAs: ["matIcon"] }, { type: i8$2.MatMenu, selector: "mat-menu", exportAs: ["matMenu"] }, { type: i8$2.MatMenuItem, selector: "[mat-menu-item]", inputs: ["disabled", "disableRipple", "role"], exportAs: ["matMenuItem"] }], directives: [{ type: i8$2.MatMenuTrigger, selector: "[mat-menu-trigger-for], [matMenuTriggerFor]", exportAs: ["matMenuTrigger"] }, { type: TooltipDirective, selector: "[bizdocTooltip]", inputs: ["bizdocTooltip", "bizdocTooltipTemplate", "bizdocTooltipContext", "bizdocTooltipPosition", "bizdocTooltipDuration", "bizdocTooltipDisabled"] }, { type: i10.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { type: i10.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { type: i10.NgSwitch, selector: "[ngSwitch]", inputs: ["ngSwitch"] }, { type: i10.NgSwitchCase, selector: "[ngSwitchCase]", inputs: ["ngSwitchCase"] }, { type: i10.NgSwitchDefault, selector: "[ngSwitchDefault]" }], pipes: { "translate": TranslatePipe, "sanitizeHtml": SanitizeHtmlPipe, "amDurationFormat": DurationFormatPipe, "amDuration": DurationPipe, "amCalendar": CalendarPipe }, animations: [listAnimation, itemAnimation] });
|
14249
14257
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.1.1", ngImport: i0, type: TraceViewComponent, decorators: [{
|
14250
14258
|
type: Component,
|
14251
|
-
args: [{ selector: 'bizdoc-trace', animations: [listAnimation, itemAnimation], template: "<div class=\"nav-toolbar row\">\r\n <span class=\"divider\"></span>\r\n <button mat-icon-button [matMenuTriggerFor]=\"menu\" [bizdocTooltip]=\"'ShowAll'|translate\"><mat-icon>filter_list</mat-icon></button>\r\n <mat-menu #menu> \r\n <button mat-menu-item (click)=\"showAll=false\">\r\n <mat-icon>{{ !showAll?'check':'' }}</mat-icon>\r\n <span>{{'Route' | translate }}</span>\r\n </button>\r\n <button mat-menu-item (click)=\"showAll=true\">\r\n <mat-icon>{{showAll?'check':''}}</mat-icon>\r\n <span>{{'
|
14259
|
+
args: [{ selector: 'bizdoc-trace', animations: [listAnimation, itemAnimation], template: "<div class=\"nav-toolbar row\">\r\n <span class=\"divider\"></span>\r\n <button mat-icon-button [matMenuTriggerFor]=\"menu\" [bizdocTooltip]=\"'ShowAll'|translate\"><mat-icon>filter_list</mat-icon></button>\r\n <mat-menu #menu> \r\n <button mat-menu-item (click)=\"showAll=false\">\r\n <mat-icon>{{ !showAll?'check':'' }}</mat-icon>\r\n <span>{{'Route' | translate }}</span>\r\n </button>\r\n <button mat-menu-item (click)=\"showAll=true\">\r\n <mat-icon>{{showAll?'check':''}}</mat-icon>\r\n <span>{{'Everything' | translate }}</span>\r\n </button>\r\n </mat-menu>\r\n</div>\r\n<table class=\"mat-table\" @list>\r\n <tbody role=\"rowgroup\">\r\n <tr class=\"mat-row\" *ngFor=\"let l of data\" @item>\r\n <td class=\"mat-cell\">\r\n <span [innerHTML]=\"l.name | sanitizeHtml\" (click)=\"chat($event)\"></span>\r\n <span *ngIf=l.role>{{'JoinComma'|translate}}{{l.role}}</span>\r\n </td>\r\n <td class=\"mat-cell\">\r\n <ng-container [ngSwitch]=\"l.type\">\r\n <ng-container *ngSwitchCase=\"'ActionTaken'\">\r\n <span [innerHTML]=\"l.action | sanitizeHtml\" (click)=\"chat($event)\" class=\"to\"></span>\r\n </ng-container>\r\n <span *ngSwitchCase=\"'Submit'\">{{'Issued' | translate}}</span>\r\n <span *ngSwitchCase=\"'Pending'\">{{'IsPending' | translate}}</span>\r\n <span *ngSwitchCase=\"'CheckOut'\">{{'CheckedIn' | translate : l.fileName}}</span>\r\n <span *ngSwitchCase=\"'CheckIn'\">{{'CheckedOut' | translate : l.fileName}}</span>\r\n <span *ngSwitchCase=\"'Estimate'\">{{'Estimate' | translate}}</span>\r\n <span *ngSwitchCase=\"'ModelChange'\">{{'Changed' | translate}}</span>\r\n </ng-container>\r\n <span *ngIf=\"l.fyi\"> {{'FYI'|translate}}</span>\r\n </td>\r\n <td class=\"mat-cell\" [ngSwitch]=\"l.estimate\">\r\n <ng-container *ngSwitchCase=\"true\">\r\n <span *ngIf=\"l.durationMax && l.durationMax === l.durationMin\" [bizdocTooltip]=\"l.durationMax|amDurationFormat\">{{'EstimateTime'| translate : (l.durationMax | amDuration:'s')}}</span>\r\n <span *ngIf=\"l.durationMax && l.durationMax !== l.durationMin\"\r\n [bizdocTooltip]=\"l.durationMax|amDurationFormat\">{{'EstimateTimeRange'| translate : (l.durationMin | amDuration:'s') : (l.durationMax | amDuration:'s')}}</span>\r\n </ng-container>\r\n <ng-container *ngSwitchDefault>\r\n <span>{{l.time | amCalendar : null : CALENDAR_SPEC }}</span>\r\n <span *ngIf=\"l.duration\" [bizdocTooltip]=\"l.duration|amDurationFormat\" class=\"duration\"> ({{l.duration | amDuration:'s'}})</span>\r\n </ng-container>\r\n </td>\r\n <td class=\"mat-cell\">\r\n <span *ngIf=\"l.note\">{{l.note}}</span>\r\n <button mat-icon-button *ngIf=\"l.type==='ModelChange'\" (click)=\"compare(l)\" [bizdocTooltip]=\"'Compare'|translate\" bizdocTooltipPosition=\"start\"><mat-icon>more_horiz</mat-icon></button>\r\n </td>\r\n </tr>\r\n </tbody>\r\n</table>\r\n", styles: [":host{width:100%}table{width:100%;background:transparent}table td{padding:0 4px}.duration{white-space:nowrap}\n"] }]
|
14252
14260
|
}], ctorParameters: function () { return [{ type: SessionService }, { type: TranslateService }, { type: AccountService }, { type: ChatInfo }, { type: HubService }]; }, propDecorators: { model: [{
|
14253
14261
|
type: Input
|
14254
14262
|
}], versionSelected: [{
|
@@ -17333,7 +17341,7 @@ class HomeBase {
|
|
17333
17341
|
this._messaging.new$.subscribe(m => {
|
17334
17342
|
const { model: { formId: name, subject, number } } = m;
|
17335
17343
|
const form = this._session.profile.forms.find(f => f.name === name), msg = this._translate.get('NewMail', form.title, number, subject || '');
|
17336
|
-
this._snackBar.open(msg, this._translate.get('OpenNew'), {
|
17344
|
+
this._snackBar.open(msg, m.userId === this._session.profile.userId ? this._translate.get('OpenNew') : null, {
|
17337
17345
|
duration: 5000,
|
17338
17346
|
direction: this._session.direction,
|
17339
17347
|
politeness: 'assertive'
|
@@ -26960,33 +26968,31 @@ class TraceElementComponent {
|
|
26960
26968
|
this.nodeType = this._session.profile.nodes.find(n => n.name === addInfo.nodeType);
|
26961
26969
|
}
|
26962
26970
|
recipientInfo(recipient) {
|
26963
|
-
|
26964
|
-
|
26965
|
-
|
26966
|
-
|
26967
|
-
|
26968
|
-
const
|
26969
|
-
|
26970
|
-
}
|
26971
|
-
|
26972
|
-
|
26973
|
-
|
26974
|
-
|
26975
|
-
|
26976
|
-
|
26977
|
-
|
26978
|
-
|
26979
|
-
|
26980
|
-
if (
|
26981
|
-
|
26982
|
-
|
26983
|
-
|
26984
|
-
else
|
26985
|
-
|
26986
|
-
|
26987
|
-
|
26988
|
-
return us[0];
|
26989
|
-
}));
|
26971
|
+
return __awaiter(this, void 0, void 0, function* () {
|
26972
|
+
const info = [];
|
26973
|
+
const who = yield this._accounts.get(recipient.userId).toPromise();
|
26974
|
+
if (recipient.escalated) {
|
26975
|
+
const escalations = this.timeline.log.filter(l => l.type === 'Escalation' && l.recipientId === recipient.id);
|
26976
|
+
const escalate = yield this._accounts.get(escalations[0].userId).toPromise();
|
26977
|
+
info.push(this._translate.get('EscalatedBy', this._chat.format(escalate), this._chat.format(who)));
|
26978
|
+
}
|
26979
|
+
if (recipient.substitutingId) {
|
26980
|
+
const substitute = yield this._accounts.get(recipient.substitutingId).toPromise();
|
26981
|
+
if (recipient.byId) {
|
26982
|
+
const by = yield this._accounts.get(recipient.byId).toPromise();
|
26983
|
+
info.push(this._translate.get('SubstitutingBy', this._chat.format(who), this._chat.format(substitute), this._chat.format(by)));
|
26984
|
+
}
|
26985
|
+
else
|
26986
|
+
info.push(this._translate.get('Substituting', this._chat.format(who), this._chat.format(substitute)));
|
26987
|
+
}
|
26988
|
+
else if (recipient.byId) {
|
26989
|
+
const by = yield this._accounts.get(recipient.byId).toPromise();
|
26990
|
+
info.push(this._translate.get('By', this._chat.format(who), this._chat.format(by)));
|
26991
|
+
}
|
26992
|
+
else
|
26993
|
+
info.push(this._chat.format(who));
|
26994
|
+
return info.join(this._translate.comma);
|
26995
|
+
});
|
26990
26996
|
}
|
26991
26997
|
logInfo(log) {
|
26992
26998
|
const observables = [];
|