@bizdoc/core 3.9.0 → 3.9.2
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/fesm2022/bizdoc-core.mjs
CHANGED
@@ -9031,100 +9031,104 @@ class ExpandedItemComponent {
|
|
9031
9031
|
this.actions = actions && actions.length ? this._session.profile.actions.filter(a => actions.indexOf(a.name) > -1) : undefined;
|
9032
9032
|
this._sender();
|
9033
9033
|
this._comments();
|
9034
|
-
this._note();
|
9034
|
+
this.note = await this._note();
|
9035
9035
|
this._awaiting();
|
9036
9036
|
}
|
9037
9037
|
/** */
|
9038
9038
|
async _note() {
|
9039
|
-
const { ownerId, ownerBy, issued, substituteId, received, replied, log, id, note, repliedBy, actionId, escalated, originId, draft } = this.model;
|
9040
|
-
let target;
|
9041
|
-
if (actionId)
|
9042
|
-
target = await this._target(id);
|
9039
|
+
const { ownerId, ownerBy, issued, substituteId, received, replied, log, id, note, repliedBy, actionId, escalated, originId, draft } = this.model, { profile } = this._session;
|
9043
9040
|
if (substituteId) {
|
9044
9041
|
const substituting = await firstValueFrom(this._accounts.get(substituteId));
|
9045
9042
|
if (replied) {
|
9046
|
-
const time = this._fromNow(replied),
|
9043
|
+
const time = this._fromNow(replied), action = this._actionName(actionId, 'adjective');
|
9044
|
+
const target = await this._target(id);
|
9047
9045
|
if (target)
|
9048
|
-
|
9046
|
+
return this._translate.personalize('YouSubstituteActionTakenTo', substituting.gender, action, target, this._formatUserElement(substituting), time);
|
9049
9047
|
else
|
9050
|
-
|
9048
|
+
return this._translate.personalize('YouSubstituteActionTaken', substituting.gender, action, this._formatUserElement(substituting), time);
|
9051
9049
|
}
|
9052
9050
|
else if (escalated) {
|
9053
9051
|
const escalation = log.find(l => l.type === 'Escalation' && l.recipientId === originId);
|
9054
|
-
|
9052
|
+
return this._translate.personalize('EscalatedFrom', substituting.gender, this._formatUserElement(substituting), this._duration(escalation.duration));
|
9055
9053
|
}
|
9056
9054
|
else {
|
9057
9055
|
const time = this._fromNow(received);
|
9058
|
-
|
9056
|
+
return this._translate.personalize('SubstitutingNote', substituting.gender, this._formatUserElement(substituting), time, note || '');
|
9059
9057
|
}
|
9060
9058
|
}
|
9061
|
-
else if (
|
9059
|
+
else if (actionId) {
|
9060
|
+
const target = await this._target(id);
|
9062
9061
|
const time = this._fromNow(replied);
|
9063
9062
|
if (repliedBy) {
|
9064
9063
|
if (repliedBy === this._session.userId) {
|
9064
|
+
const action = this._actionName(actionId, 'you');
|
9065
9065
|
if (target)
|
9066
|
-
|
9066
|
+
return this._translate.get('ActionTakenByYouTo', action, target, profile.name, time);
|
9067
9067
|
else
|
9068
|
-
|
9068
|
+
return this._translate.get('ActionTakenByYou', action, profile.name, time);
|
9069
|
+
}
|
9070
|
+
else {
|
9071
|
+
const by = await firstValueFrom(this._accounts.get(repliedBy));
|
9072
|
+
const action = this._actionName(actionId, by.gender);
|
9073
|
+
if (target)
|
9074
|
+
return this._translate.get('YouTakenActionByTo', this._formatUserElement(by), action, target, time);
|
9075
|
+
else
|
9076
|
+
return this._translate.get('YouTakenActionBy', this._formatUserElement(by), action, time);
|
9069
9077
|
}
|
9070
|
-
else
|
9071
|
-
this._accounts.get(repliedBy).subscribe(u => {
|
9072
|
-
if (target)
|
9073
|
-
this.note = this._translate.get('YouTakenActionByTo', this._formatUserElement(u), this._actionName(actionId, u.gender), target, time);
|
9074
|
-
else
|
9075
|
-
this.note = this._translate.get('YouTakenActionBy', this._formatUserElement(u), this._actionName(actionId, u.gender), time);
|
9076
|
-
});
|
9077
9078
|
}
|
9078
|
-
else if (this._session.
|
9079
|
+
else if (this._session.isImpersonating) {
|
9080
|
+
const action = this._actionName(actionId, profile.gender);
|
9079
9081
|
if (target)
|
9080
|
-
|
9082
|
+
return this._translate.personalize('ActionTakenTo', profile.gender, profile.name, action, target, time);
|
9081
9083
|
else
|
9082
|
-
|
9084
|
+
return this._translate.personalize('ActionTaken', profile.gender, profile.name, action, time);
|
9083
9085
|
}
|
9084
9086
|
else {
|
9087
|
+
const action = this._actionName(actionId, 'you');
|
9085
9088
|
if (target)
|
9086
|
-
|
9089
|
+
return this._translate.get('YouTakenActionTo', action, target, time);
|
9087
9090
|
else
|
9088
|
-
|
9091
|
+
return this._translate.get('YouTakenAction', action, time);
|
9089
9092
|
}
|
9090
9093
|
}
|
9091
9094
|
else if (note)
|
9092
|
-
|
9095
|
+
return note;
|
9093
9096
|
else if (originId) {
|
9094
9097
|
const origin = this.model.recipients.find(r => r.id === originId);
|
9095
|
-
const action = this.
|
9098
|
+
const action = this._actionName(origin.actionId, 'adjective');
|
9096
9099
|
if ((origin.repliedBy || origin.userId) === this._session.userId)
|
9097
|
-
|
9100
|
+
return this._translate.get('ActionByYou', action);
|
9098
9101
|
else if (origin.repliedBy) {
|
9099
9102
|
const who = await firstValueFrom(this._accounts.get(origin.userId));
|
9100
9103
|
const by = await firstValueFrom(this._accounts.get(origin.repliedBy));
|
9101
|
-
|
9104
|
+
return this._translate.get('ActionByBy', action, by.name, who.name);
|
9102
9105
|
}
|
9103
9106
|
else {
|
9104
9107
|
const who = await firstValueFrom(this._accounts.get(origin.userId));
|
9105
|
-
|
9108
|
+
return this._translate.get('ActionBy', action, who.name);
|
9106
9109
|
}
|
9107
9110
|
}
|
9108
9111
|
else if (ownerId === this._session.userId && !draft) {
|
9109
9112
|
const time = this._fromNow(issued);
|
9110
9113
|
if (ownerBy) {
|
9111
9114
|
if (ownerBy === this._session.userId)
|
9112
|
-
|
9115
|
+
return this._translate.personalize('YouSubmittedNoteBy', profile.byGender, profile.name, time);
|
9113
9116
|
else {
|
9114
9117
|
const by = await firstValueFrom(this._accounts.get(ownerBy));
|
9115
9118
|
if (this._session.isImpersonating)
|
9116
|
-
|
9119
|
+
return this._translate.personalize('SubmittedNoteBy', by.gender, this._formatUserElement(by), profile.name, time);
|
9117
9120
|
else
|
9118
|
-
|
9121
|
+
return this._translate.personalize('SubmittedNoteYouBy', by.gender, this._formatUserElement(by), time);
|
9119
9122
|
}
|
9120
9123
|
}
|
9121
9124
|
else {
|
9122
9125
|
if (this._session.isImpersonating)
|
9123
|
-
|
9126
|
+
return this._translate.personalize('SubmittedNote', profile.gender, profile.name, time);
|
9124
9127
|
else
|
9125
|
-
|
9128
|
+
return this._translate.get('YouSubmittedNote', time);
|
9126
9129
|
}
|
9127
9130
|
}
|
9131
|
+
return null;
|
9128
9132
|
}
|
9129
9133
|
async _target(id) {
|
9130
9134
|
const origins = this.model.recipients.filter(r => r.originId === id);
|
@@ -9132,23 +9136,30 @@ class ExpandedItemComponent {
|
|
9132
9136
|
const users = await firstValueFrom(this._accounts.getAll(origins.map(r => r.userId)));
|
9133
9137
|
return this._translate.join(users.map(u => this._formatUserElement(u)));
|
9134
9138
|
}
|
9135
|
-
return
|
9139
|
+
return null;
|
9136
9140
|
}
|
9137
9141
|
_actionName(name, gender) {
|
9138
9142
|
const action = this._session.profile.actions.find(a => a.name === name);
|
9139
9143
|
if (!action)
|
9140
9144
|
return name;
|
9141
|
-
|
9142
|
-
|
9143
|
-
|
9144
|
-
|
9145
|
-
|
9146
|
-
action.
|
9147
|
-
|
9148
|
-
|
9149
|
-
|
9150
|
-
|
9151
|
-
|
9145
|
+
switch (gender) {
|
9146
|
+
case 'adjective':
|
9147
|
+
return (action.adjective || action.past || action.title).toLowerCase();
|
9148
|
+
case 'you':
|
9149
|
+
const gender = this._session.gender;
|
9150
|
+
return ((gender === 'Male' ? (action.youMale || action.you) :
|
9151
|
+
gender === 'Female' ? (action.youFemale || action.you) :
|
9152
|
+
action.you) || action.past ||
|
9153
|
+
action.title).toLowerCase();
|
9154
|
+
case 'Male':
|
9155
|
+
return (action.pastMale || action.past ||
|
9156
|
+
action.title).toLowerCase();
|
9157
|
+
case 'Female':
|
9158
|
+
return (action.pastFemale || action.past ||
|
9159
|
+
action.title).toLowerCase();
|
9160
|
+
default:
|
9161
|
+
return (action.past || action.title).toLowerCase();
|
9162
|
+
}
|
9152
9163
|
}
|
9153
9164
|
_fromNow(date) {
|
9154
9165
|
return dayjs(date).fromNow();
|
@@ -9234,7 +9245,7 @@ class ExpandedItemComponent {
|
|
9234
9245
|
this._mailbox.send(id, version, formId, null, action, args).subscribe({
|
9235
9246
|
next: async (r) => {
|
9236
9247
|
const target = await this._target(id);
|
9237
|
-
const adjective = this.
|
9248
|
+
const adjective = this._actionName(action, 'adjective');
|
9238
9249
|
if (target)
|
9239
9250
|
this._sb.toast('SentTo', number, adjective, target);
|
9240
9251
|
else
|
@@ -9250,10 +9261,6 @@ class ExpandedItemComponent {
|
|
9250
9261
|
}
|
9251
9262
|
});
|
9252
9263
|
}
|
9253
|
-
_getActionAdjective(action) {
|
9254
|
-
const caction = this._session.profile.actions.find(a => a.name === action), adjective = caction.adjective || caction.title;
|
9255
|
-
return adjective.toLowerCase();
|
9256
|
-
}
|
9257
9264
|
/**
|
9258
9265
|
*
|
9259
9266
|
* @param response
|
@@ -10577,11 +10584,11 @@ class ComposePaneComponent {
|
|
10577
10584
|
this._destroy.complete();
|
10578
10585
|
}
|
10579
10586
|
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.1.2", ngImport: i0, type: ComposePaneComponent, deps: [{ token: SessionService }, { token: MailboxService }, { token: PaneRef }, { token: PanesRouter }], target: i0.ɵɵFactoryTarget.Component }); }
|
10580
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "20.1.2", type: ComposePaneComponent, isStandalone: false, selector: "bizdoc-compose-pane", host: { listeners: { "document:drop": "handleDocumentDrop($event)", "drop": "handleDrop($event)", "dragenter": "handleEnter($event)", "dragleave": "handleLeave($event)", "dragover": "handleOver($event)", "document:keydown": "handleKeydown($event)" } }, viewQueries: [{ propertyName: "form", first: true, predicate: ComposeFormComponent, descendants: true, static: true }, { propertyName: "dropableElement", first: true, predicate: ["dropable"], descendants: true, read: ElementRef, static: true }], ngImport: i0, template: "<mat-toolbar class=\"nav-toolbar\">\r\n @if (page !== undefined) {\r\n <button mat-icon-button (click)=\"form.back()\" [bizdocTooltip]=\"'Back'|translate\" tabindex=\"1\">\r\n <mat-icon class=\"mat-icon-rtl-mirror\">arrow_circle_left</mat-icon>\r\n </button>\r\n }\r\n @if (model.draft) {\r\n <button mat-stroked-button color=\"primary\" data-help=\"submit\"\r\n (click)=\"submit()\" [disabled]=\"!valid||working\">\r\n <span>{{'Submit' | translate}}</span>\r\n </button>\r\n }\r\n @if (form.actions.length === 1) {\r\n <button mat-stroked-button [color]=\"!model.draft ? 'primary' : null\" [attr.data-help]=\"'action-'+form.actions[0].name\" (click)=\"send(model.actions![0])\" [disabled]=\"!valid||working\">\r\n <span>{{form.actions[0].title}}</span>\r\n @if (form.actions[0].icon) {\r\n <mat-icon>{{form.actions[0].icon}}</mat-icon>\r\n }\r\n </button>\r\n }\r\n @else if (form.actions.length > 1) {\r\n <button mat-stroked-button data-help=\"send\" [color]=\"!model.draft ? 'primary' : null\" [matMenuTriggerFor]=\"actionMenu\" [disabled]=\"!valid||working\">\r\n <span>{{'Send' | translate}}</span>\r\n </button>\r\n }\r\n <!-- action -->\r\n <mat-menu #actionMenu>\r\n <ng-template matMenuContent>\r\n @for (a of form.actions; track a; let i = $index) {\r\n @if (i > 0 && form.actions[i - 1].group !== a.group) {\r\n <mat-divider></mat-divider>\r\n }\r\n <button mat-menu-item (click)=\"send(a.name)\">{{a.title}}</button>\r\n }\r\n </ng-template>\r\n </mat-menu>\r\n <!--<ng-template #actionsPane>\r\n <mat-list>\r\n
|
10587
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "20.1.2", type: ComposePaneComponent, isStandalone: false, selector: "bizdoc-compose-pane", host: { listeners: { "document:drop": "handleDocumentDrop($event)", "drop": "handleDrop($event)", "dragenter": "handleEnter($event)", "dragleave": "handleLeave($event)", "dragover": "handleOver($event)", "document:keydown": "handleKeydown($event)" } }, viewQueries: [{ propertyName: "form", first: true, predicate: ComposeFormComponent, descendants: true, static: true }, { propertyName: "dropableElement", first: true, predicate: ["dropable"], descendants: true, read: ElementRef, static: true }], ngImport: i0, template: "<mat-toolbar class=\"nav-toolbar\">\r\n @if (page !== undefined) {\r\n <button mat-icon-button (click)=\"form.back()\" [bizdocTooltip]=\"'Back'|translate\" tabindex=\"1\">\r\n <mat-icon class=\"mat-icon-rtl-mirror\">arrow_circle_left</mat-icon>\r\n </button>\r\n }\r\n @if (model.draft) {\r\n <button mat-stroked-button color=\"primary\" data-help=\"submit\"\r\n (click)=\"submit()\" [disabled]=\"!valid||working\">\r\n <span>{{'Submit' | translate}}</span>\r\n </button>\r\n }\r\n @if (form.actions.length === 1) {\r\n <button mat-stroked-button [color]=\"!model.draft ? 'primary' : null\" [attr.data-help]=\"'action-'+form.actions[0].name\" (click)=\"send(model.actions![0])\" [disabled]=\"!valid||working\">\r\n <span>{{form.actions[0].title}}</span>\r\n @if (form.actions[0].icon) {\r\n <mat-icon>{{form.actions[0].icon}}</mat-icon>\r\n }\r\n </button>\r\n }\r\n @else if (form.actions.length > 1) {\r\n <button mat-stroked-button data-help=\"send\" [color]=\"!model.draft ? 'primary' : null\" [matMenuTriggerFor]=\"actionMenu\" [disabled]=\"!valid||working\">\r\n <span>{{'Send' | translate}}</span>\r\n </button>\r\n }\r\n <!-- action -->\r\n <mat-menu #actionMenu>\r\n <ng-template matMenuContent>\r\n @for (a of form.actions; track a; let i = $index) {\r\n @if (i > 0 && form.actions[i - 1].group !== a.group) {\r\n <mat-divider></mat-divider>\r\n }\r\n <button mat-menu-item (click)=\"send(a.name)\">{{a.title}}</button>\r\n }\r\n </ng-template>\r\n </mat-menu>\r\n <!--<ng-template #actionsPane>\r\n <mat-list>\r\n <mat-list-item (click)=\"send(a.name)\">\r\n @if(a.icon) {\r\n <mat-icon matListItemIcon>{{a.icon}}</mat-icon>\r\n }\r\n <span matListItemTitle>{{a.title}}</span>\r\n <span matListItemLine>{{a.note}}</span>\r\n </mat-list-item>\r\n </mat-list>\r\n </ng-template>-->\r\n @if (mode === 'compose') {\r\n <button mat-icon-button (click)=\"save()\" data-help=\"save\" [disabled]=\"!dirty||working\" [bizdocTooltip]=\"'Save'|translate\">\r\n <mat-icon>save</mat-icon>\r\n </button>\r\n }\r\n <button mat-icon-button data-help=\"tag\" (click)=\"form.tag($event)\" [bizdocTooltip]=\"'Tags' | translate\" [disabled]=\"working\"><mat-icon [class.filled]=\"form.userTags\">bookmark</mat-icon></button>\r\n <button mat-icon-button data-help=\"flag\" [bizdocTooltip]=\"'Flagged'| translate\" [disabled]=\"working\" (click)=\"form.flag()\"><mat-icon [class.filled]=\"model.flag\">star</mat-icon></button>\r\n <button mat-icon-button (click)=\"form.attach()\" data-help=\"attach\" [bizdocTooltip]=\"'AttachFile' | translate\" [disabled]=\"working\"><mat-icon>attach_file</mat-icon></button>\r\n @if (mode !== 'compose' && model.pending && !model.completed) {\r\n <button mat-icon-button [disabled]=\"working\" data-help=\"edit\" (click)=\"edit()\" [bizdocTooltip]=\"'Edit' | translate\"><mat-icon>create</mat-icon></button>\r\n }\r\n <span class=\"divider\"></span>\r\n <button mat-icon-button (click)=\"navTrace()\" [bizdocTooltip]=\"'Trace' | translate\" tabindex=\"1\"><mat-icon>network_node</mat-icon></button>\r\n <button mat-icon-button (click)=\"navComments()\" data-help=\"comments\" [bizdocTooltip]=\"'Comments' | translate\">\r\n <mat-icon [matBadge]=\"newCommentsCount\" [matBadgeHidden]=\"!newCommentsCount\" matBadgeColor=\"accent\" [class.filled]=\"model.comments.length > 0\">format_quote</mat-icon>\r\n </button>\r\n @if (enableInsights) {\r\n <button mat-icon-button (click)=\"insights()\" [bizdocTooltip]=\"'Insights' | translate\" [attr.aria-label]=\"'Insight' | translate\" class=\"tool\"><mat-icon>data_usage</mat-icon></button>\r\n }\r\n @if (expendable) {\r\n <button mat-icon-button (click)=\"expand()\" [bizdocTooltip]=\"'Expand' | translate\" [attr.aria-label]=\"'Expand' | translate\"><mat-icon>open_in_new</mat-icon></button>\r\n }\r\n <button mat-icon-button [matMenuTriggerFor]=\"optionsMenu\" [bizdocTooltip]=\"'Options' | translate\" [attr.aria-label]=\"'Options' | translate\"><mat-icon>more_vert</mat-icon></button>\r\n <mat-menu #optionsMenu=\"matMenu\">\r\n <ng-template matMenuContent>\r\n <button mat-menu-item (click)=\"form.copy()\" [disabled]=\"working\">\r\n <!--<mat-icon>content_copy</mat-icon>-->\r\n <span>{{'Copy' | translate}}</span>\r\n </button>\r\n @if (model.draft && !model.issued) {\r\n <button mat-menu-item (click)=\"discard()\" [disabled]=\"working\">\r\n <!--<mat-icon>delete_outlined</mat-icon>-->\r\n <span>{{'Discard' | translate}}</span>\r\n </button>\r\n }\r\n @if (form.help) {\r\n <mat-divider></mat-divider>\r\n <button mat-menu-item (click)=\"form.guide(form.help)\">\r\n <!--<mat-icon>help_outline</mat-icon>-->\r\n <span>{{'Help' | translate}}</span>\r\n </button>\r\n }\r\n <mat-divider></mat-divider>\r\n <button mat-menu-item (click)=\"close()\"><!--<mat-icon></mat-icon>--><span>{{'Close'| translate}}</span></button>\r\n </ng-template>\r\n </mat-menu>\r\n</mat-toolbar>\r\n<div class=\"file-dropable form-container\" #dropable>\r\n <bizdoc-form [model]=model [page]=\"page\" #form\r\n (modelChange)=\"change()\"\r\n (saved)=\"saved()\"\r\n (validChange)=\"valid=$event\"\r\n (workingChange)=\"working=$event\"\r\n (dirtyChange)=\"dirty=$event\" [mode]=\"mode\"></bizdoc-form>\r\n</div>\r\n", styles: [":host{display:flex;-ms-flex-direction:column;-webkit-flex-direction:column;flex-direction:column;height:100%}.form-container{-ms-flex:1;-webkit-flex:1;flex:1;overflow:auto}button{margin-inline-end:6px}\n"], dependencies: [{ kind: "directive", type: i7$1.MatBadge, selector: "[matBadge]", inputs: ["matBadgeColor", "matBadgeOverlap", "matBadgeDisabled", "matBadgePosition", "matBadge", "matBadgeDescription", "matBadgeSize", "matBadgeHidden"] }, { kind: "component", type: i2$5.MatDivider, selector: "mat-divider", inputs: ["vertical", "inset"] }, { kind: "component", type: i8$1.MatToolbar, selector: "mat-toolbar", inputs: ["color"], exportAs: ["matToolbar"] }, { kind: "component", type: i8.MatButton, selector: " button[matButton], a[matButton], button[mat-button], button[mat-raised-button], button[mat-flat-button], button[mat-stroked-button], a[mat-button], a[mat-raised-button], a[mat-flat-button], a[mat-stroked-button] ", inputs: ["matButton"], exportAs: ["matButton", "matAnchor"] }, { kind: "component", type: i8.MatIconButton, selector: "button[mat-icon-button], a[mat-icon-button], button[matIconButton], a[matIconButton]", exportAs: ["matButton", "matAnchor"] }, { kind: "component", type: i7.MatIcon, selector: "mat-icon", inputs: ["color", "inline", "svgIcon", "fontSet", "fontIcon"], exportAs: ["matIcon"] }, { kind: "component", type: i10.MatMenu, selector: "mat-menu", inputs: ["backdropClass", "aria-label", "aria-labelledby", "aria-describedby", "xPosition", "yPosition", "overlapTrigger", "hasBackdrop", "class", "classList"], outputs: ["closed", "close"], exportAs: ["matMenu"] }, { kind: "component", type: i10.MatMenuItem, selector: "[mat-menu-item]", inputs: ["role", "disabled", "disableRipple"], exportAs: ["matMenuItem"] }, { kind: "directive", type: i10.MatMenuContent, selector: "ng-template[matMenuContent]" }, { kind: "directive", type: i10.MatMenuTrigger, selector: "[mat-menu-trigger-for], [matMenuTriggerFor]", inputs: ["mat-menu-trigger-for", "matMenuTriggerFor", "matMenuTriggerData", "matMenuTriggerRestoreFocus"], outputs: ["menuOpened", "onMenuOpen", "menuClosed", "onMenuClose"], exportAs: ["matMenuTrigger"] }, { kind: "component", type: ComposeFormComponent, selector: "bizdoc-form", inputs: ["model", "working", "dirty", "valid", "page", "mode", "contacts"], outputs: ["modelChange", "workingChange", "dirtyChange", "validChange", "saved"] }, { kind: "directive", type: TooltipDirective, selector: "[bizdocTooltip]", inputs: ["bizdocTooltip", "bizdocTooltipTemplate", "bizdocTooltipContext", "bizdocTooltipPosition", "bizdocTooltipDuration", "bizdocTooltipDisabled"] }, { kind: "pipe", type: TranslatePipe, name: "translate" }] }); }
|
10581
10588
|
}
|
10582
10589
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.1.2", ngImport: i0, type: ComposePaneComponent, decorators: [{
|
10583
10590
|
type: Component,
|
10584
|
-
args: [{ standalone: false, selector: 'bizdoc-compose-pane', template: "<mat-toolbar class=\"nav-toolbar\">\r\n @if (page !== undefined) {\r\n <button mat-icon-button (click)=\"form.back()\" [bizdocTooltip]=\"'Back'|translate\" tabindex=\"1\">\r\n <mat-icon class=\"mat-icon-rtl-mirror\">arrow_circle_left</mat-icon>\r\n </button>\r\n }\r\n @if (model.draft) {\r\n <button mat-stroked-button color=\"primary\" data-help=\"submit\"\r\n (click)=\"submit()\" [disabled]=\"!valid||working\">\r\n <span>{{'Submit' | translate}}</span>\r\n </button>\r\n }\r\n @if (form.actions.length === 1) {\r\n <button mat-stroked-button [color]=\"!model.draft ? 'primary' : null\" [attr.data-help]=\"'action-'+form.actions[0].name\" (click)=\"send(model.actions![0])\" [disabled]=\"!valid||working\">\r\n <span>{{form.actions[0].title}}</span>\r\n @if (form.actions[0].icon) {\r\n <mat-icon>{{form.actions[0].icon}}</mat-icon>\r\n }\r\n </button>\r\n }\r\n @else if (form.actions.length > 1) {\r\n <button mat-stroked-button data-help=\"send\" [color]=\"!model.draft ? 'primary' : null\" [matMenuTriggerFor]=\"actionMenu\" [disabled]=\"!valid||working\">\r\n <span>{{'Send' | translate}}</span>\r\n </button>\r\n }\r\n <!-- action -->\r\n <mat-menu #actionMenu>\r\n <ng-template matMenuContent>\r\n @for (a of form.actions; track a; let i = $index) {\r\n @if (i > 0 && form.actions[i - 1].group !== a.group) {\r\n <mat-divider></mat-divider>\r\n }\r\n <button mat-menu-item (click)=\"send(a.name)\">{{a.title}}</button>\r\n }\r\n </ng-template>\r\n </mat-menu>\r\n <!--<ng-template #actionsPane>\r\n <mat-list>\r\n
|
10591
|
+
args: [{ standalone: false, selector: 'bizdoc-compose-pane', template: "<mat-toolbar class=\"nav-toolbar\">\r\n @if (page !== undefined) {\r\n <button mat-icon-button (click)=\"form.back()\" [bizdocTooltip]=\"'Back'|translate\" tabindex=\"1\">\r\n <mat-icon class=\"mat-icon-rtl-mirror\">arrow_circle_left</mat-icon>\r\n </button>\r\n }\r\n @if (model.draft) {\r\n <button mat-stroked-button color=\"primary\" data-help=\"submit\"\r\n (click)=\"submit()\" [disabled]=\"!valid||working\">\r\n <span>{{'Submit' | translate}}</span>\r\n </button>\r\n }\r\n @if (form.actions.length === 1) {\r\n <button mat-stroked-button [color]=\"!model.draft ? 'primary' : null\" [attr.data-help]=\"'action-'+form.actions[0].name\" (click)=\"send(model.actions![0])\" [disabled]=\"!valid||working\">\r\n <span>{{form.actions[0].title}}</span>\r\n @if (form.actions[0].icon) {\r\n <mat-icon>{{form.actions[0].icon}}</mat-icon>\r\n }\r\n </button>\r\n }\r\n @else if (form.actions.length > 1) {\r\n <button mat-stroked-button data-help=\"send\" [color]=\"!model.draft ? 'primary' : null\" [matMenuTriggerFor]=\"actionMenu\" [disabled]=\"!valid||working\">\r\n <span>{{'Send' | translate}}</span>\r\n </button>\r\n }\r\n <!-- action -->\r\n <mat-menu #actionMenu>\r\n <ng-template matMenuContent>\r\n @for (a of form.actions; track a; let i = $index) {\r\n @if (i > 0 && form.actions[i - 1].group !== a.group) {\r\n <mat-divider></mat-divider>\r\n }\r\n <button mat-menu-item (click)=\"send(a.name)\">{{a.title}}</button>\r\n }\r\n </ng-template>\r\n </mat-menu>\r\n <!--<ng-template #actionsPane>\r\n <mat-list>\r\n <mat-list-item (click)=\"send(a.name)\">\r\n @if(a.icon) {\r\n <mat-icon matListItemIcon>{{a.icon}}</mat-icon>\r\n }\r\n <span matListItemTitle>{{a.title}}</span>\r\n <span matListItemLine>{{a.note}}</span>\r\n </mat-list-item>\r\n </mat-list>\r\n </ng-template>-->\r\n @if (mode === 'compose') {\r\n <button mat-icon-button (click)=\"save()\" data-help=\"save\" [disabled]=\"!dirty||working\" [bizdocTooltip]=\"'Save'|translate\">\r\n <mat-icon>save</mat-icon>\r\n </button>\r\n }\r\n <button mat-icon-button data-help=\"tag\" (click)=\"form.tag($event)\" [bizdocTooltip]=\"'Tags' | translate\" [disabled]=\"working\"><mat-icon [class.filled]=\"form.userTags\">bookmark</mat-icon></button>\r\n <button mat-icon-button data-help=\"flag\" [bizdocTooltip]=\"'Flagged'| translate\" [disabled]=\"working\" (click)=\"form.flag()\"><mat-icon [class.filled]=\"model.flag\">star</mat-icon></button>\r\n <button mat-icon-button (click)=\"form.attach()\" data-help=\"attach\" [bizdocTooltip]=\"'AttachFile' | translate\" [disabled]=\"working\"><mat-icon>attach_file</mat-icon></button>\r\n @if (mode !== 'compose' && model.pending && !model.completed) {\r\n <button mat-icon-button [disabled]=\"working\" data-help=\"edit\" (click)=\"edit()\" [bizdocTooltip]=\"'Edit' | translate\"><mat-icon>create</mat-icon></button>\r\n }\r\n <span class=\"divider\"></span>\r\n <button mat-icon-button (click)=\"navTrace()\" [bizdocTooltip]=\"'Trace' | translate\" tabindex=\"1\"><mat-icon>network_node</mat-icon></button>\r\n <button mat-icon-button (click)=\"navComments()\" data-help=\"comments\" [bizdocTooltip]=\"'Comments' | translate\">\r\n <mat-icon [matBadge]=\"newCommentsCount\" [matBadgeHidden]=\"!newCommentsCount\" matBadgeColor=\"accent\" [class.filled]=\"model.comments.length > 0\">format_quote</mat-icon>\r\n </button>\r\n @if (enableInsights) {\r\n <button mat-icon-button (click)=\"insights()\" [bizdocTooltip]=\"'Insights' | translate\" [attr.aria-label]=\"'Insight' | translate\" class=\"tool\"><mat-icon>data_usage</mat-icon></button>\r\n }\r\n @if (expendable) {\r\n <button mat-icon-button (click)=\"expand()\" [bizdocTooltip]=\"'Expand' | translate\" [attr.aria-label]=\"'Expand' | translate\"><mat-icon>open_in_new</mat-icon></button>\r\n }\r\n <button mat-icon-button [matMenuTriggerFor]=\"optionsMenu\" [bizdocTooltip]=\"'Options' | translate\" [attr.aria-label]=\"'Options' | translate\"><mat-icon>more_vert</mat-icon></button>\r\n <mat-menu #optionsMenu=\"matMenu\">\r\n <ng-template matMenuContent>\r\n <button mat-menu-item (click)=\"form.copy()\" [disabled]=\"working\">\r\n <!--<mat-icon>content_copy</mat-icon>-->\r\n <span>{{'Copy' | translate}}</span>\r\n </button>\r\n @if (model.draft && !model.issued) {\r\n <button mat-menu-item (click)=\"discard()\" [disabled]=\"working\">\r\n <!--<mat-icon>delete_outlined</mat-icon>-->\r\n <span>{{'Discard' | translate}}</span>\r\n </button>\r\n }\r\n @if (form.help) {\r\n <mat-divider></mat-divider>\r\n <button mat-menu-item (click)=\"form.guide(form.help)\">\r\n <!--<mat-icon>help_outline</mat-icon>-->\r\n <span>{{'Help' | translate}}</span>\r\n </button>\r\n }\r\n <mat-divider></mat-divider>\r\n <button mat-menu-item (click)=\"close()\"><!--<mat-icon></mat-icon>--><span>{{'Close'| translate}}</span></button>\r\n </ng-template>\r\n </mat-menu>\r\n</mat-toolbar>\r\n<div class=\"file-dropable form-container\" #dropable>\r\n <bizdoc-form [model]=model [page]=\"page\" #form\r\n (modelChange)=\"change()\"\r\n (saved)=\"saved()\"\r\n (validChange)=\"valid=$event\"\r\n (workingChange)=\"working=$event\"\r\n (dirtyChange)=\"dirty=$event\" [mode]=\"mode\"></bizdoc-form>\r\n</div>\r\n", styles: [":host{display:flex;-ms-flex-direction:column;-webkit-flex-direction:column;flex-direction:column;height:100%}.form-container{-ms-flex:1;-webkit-flex:1;flex:1;overflow:auto}button{margin-inline-end:6px}\n"] }]
|
10585
10592
|
}], ctorParameters: () => [{ type: SessionService }, { type: MailboxService }, { type: PaneRef }, { type: PanesRouter }], propDecorators: { form: [{
|
10586
10593
|
type: ViewChild,
|
10587
10594
|
args: [ComposeFormComponent, { static: true }]
|
@@ -13692,13 +13699,13 @@ class CommentComponent {
|
|
13692
13699
|
});
|
13693
13700
|
}
|
13694
13701
|
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.1.2", ngImport: i0, type: CommentComponent, deps: [{ token: SessionService }, { token: PromptService }, { token: TranslateService }, { token: ChatInfo }, { token: AccountService }, { token: Popup }, { token: i2$3.Overlay }, { token: MailboxService }, { token: i0.ViewContainerRef }, { token: BIZDOC_CONFIG }], target: i0.ɵɵFactoryTarget.Component }); }
|
13695
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "20.1.2", type: CommentComponent, isStandalone: false, selector: "bizdoc-comment", inputs: { model: "model", item: "item" }, outputs: { deleted: "deleted", reply: "reply" }, host: { classAttribute: "comment" }, viewQueries: [{ propertyName: "bodyElement", first: true, predicate: ["body"], descendants: true }, { propertyName: "previewTemplate", first: true, predicate: ["previewTemplate"], descendants: true }], ngImport: i0, template: "<div class=\"row\">\r\n <div class=\"comment-body\" #body>\r\n <div [innerHTML]=\"item.text|taggingHtml:item.resource\" class=\"comment-text mat-body-1\"></div>\r\n @if (item.image) {\r\n <img [src]=\"'data:image/png;base64,'+item.image\" alt=\"\" (click)=\"preview()\" />\r\n }\r\n </div>\r\n <!-- menu -->\r\n @if (me) {\r\n <button mat-icon-button [matMenuTriggerFor]=\"menu\" class=\"comment-menu\" (click)=\"$event.stopPropagation()\"><mat-icon>more_vert</mat-icon></button>\r\n }\r\n <mat-menu #menu>\r\n <ng-template matMenuContent>\r\n @if (!item.deleted) {\r\n <button mat-menu-item (click)=\"edit()\">{{'Edit'|translate}}</button>\r\n <mat-divider></mat-divider>\r\n <button mat-menu-item (click)=\"delete(true)\">{{'Delete'|translate}}</button>\r\n }\r\n @else {\r\n <button mat-menu-item (click)=\"delete(false)\">{{'Undo'|translate}}</button>\r\n }\r\n </ng-template>\r\n </mat-menu>\r\n</div>\r\n<!-- reply -->\r\n@if(item.reply) {\r\n<div class=\"column comment-reply\">\r\n <div class=\"row\">\r\n <div [innerHTML]=\"item.reply.text|taggingHtml:item.reply.resource\" class=\"comment-text mat-body-1\"></div>\r\n @if (item.reply.image) {\r\n <img [src]=\"'data:image/png;base64,'+item.reply.image\" alt=\"\" (click)=\"null\" />\r\n }\r\n </div>\r\n <div class=\"row\">\r\n <small class=\"comment-tools\">\r\n <span
|
13702
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "20.1.2", type: CommentComponent, isStandalone: false, selector: "bizdoc-comment", inputs: { model: "model", item: "item" }, outputs: { deleted: "deleted", reply: "reply" }, host: { classAttribute: "comment" }, viewQueries: [{ propertyName: "bodyElement", first: true, predicate: ["body"], descendants: true }, { propertyName: "previewTemplate", first: true, predicate: ["previewTemplate"], descendants: true }], ngImport: i0, template: "<div class=\"row\">\r\n <div class=\"comment-body\" #body>\r\n <div [innerHTML]=\"item.text|taggingHtml:item.resource\" class=\"comment-text mat-body-1\"></div>\r\n @if (item.image) {\r\n <img [src]=\"'data:image/png;base64,'+item.image\" alt=\"\" (click)=\"preview()\" />\r\n }\r\n </div>\r\n <!-- menu -->\r\n @if (me) {\r\n <button mat-icon-button [matMenuTriggerFor]=\"menu\" class=\"comment-menu\" (click)=\"$event.stopPropagation()\"><mat-icon>more_vert</mat-icon></button>\r\n }\r\n <mat-menu #menu>\r\n <ng-template matMenuContent>\r\n @if (!item.deleted) {\r\n <button mat-menu-item (click)=\"edit()\">{{'Edit'|translate}}</button>\r\n <mat-divider></mat-divider>\r\n <button mat-menu-item (click)=\"delete(true)\">{{'Delete'|translate}}</button>\r\n }\r\n @else {\r\n <button mat-menu-item (click)=\"delete(false)\">{{'Undo'|translate}}</button>\r\n }\r\n </ng-template>\r\n </mat-menu>\r\n</div>\r\n<!-- reply -->\r\n@if(item.reply) {\r\n<div class=\"column comment-reply\">\r\n <div class=\"row\">\r\n <div [innerHTML]=\"item.reply.text|taggingHtml:item.reply.resource\" class=\"comment-text mat-body-1\"></div>\r\n @if (item.reply.image) {\r\n <img [src]=\"'data:image/png;base64,'+item.reply.image\" alt=\"\" (click)=\"null\" />\r\n }\r\n </div>\r\n <div class=\"row\">\r\n <small class=\"comment-tools\">\r\n <span [bizdocTooltip]=\"item.reply.time | amDateFormat: 'lll'\">{{item.reply.time | amTimeAgo}}</span>\r\n </small>\r\n </div>\r\n</div>\r\n}\r\n<div class=\"row\">\r\n <div class=\"column\">\r\n <small [innerHTML]=\"name | sanitizeHtml\" (click)=\"chat($event)\" class=\"uname\"></small>\r\n <small class=\"comment-tools flex\">\r\n <span class=\"flex\" [bizdocTooltip]=\"(item.edited || item.time) | amDateFormat: 'lll'\">{{(item.edited || item.time) | amTimeAgo}}</span>\r\n @if (item.edited) {\r\n <a (click)=\"edits()\">{{'Edited'| translate}}</a>\r\n }\r\n @if (!me) {\r\n <a (click)=\"reply.emit()\">{{'Reply'| translate}}</a>\r\n }\r\n </small>\r\n </div>\r\n @if (voting) {\r\n <div class=\"comment-actions\">\r\n @if (item.votes > 0 || item.votes < 0) {\r\n <a [class.score-negative]=\"item.votes < 0\" class=\"comment-score\" dir=\"ltr\" (click)=\"votes()\" [bizdocTooltip]=\"'Votes'|translate\">{{item.votes}}</a>\r\n }\r\n <mat-icon matRipple (click)=\"vote(1, $event)\" [class.voted-true]=\"item.voted===1\">thumb_up_alt</mat-icon>\r\n <mat-icon matRipple (click)=\"vote(-1, $event)\" [class.voted-false]=\"item.voted===-1\">thumb_down_alt</mat-icon>\r\n </div>\r\n }\r\n</div>\r\n<ng-template #previewTemplate>\r\n <img [src]=\"'data:image/png;base64,'+item.image\" alt=\"\" />\r\n</ng-template>\r\n", dependencies: [{ kind: "directive", type: i2$3.ɵɵDir, selector: "[dir]", inputs: ["dir"], outputs: ["dirChange"], exportAs: ["dir"] }, { kind: "directive", type: i1$3.MatRipple, selector: "[mat-ripple], [matRipple]", inputs: ["matRippleColor", "matRippleUnbounded", "matRippleCentered", "matRippleRadius", "matRippleAnimation", "matRippleDisabled", "matRippleTrigger"], exportAs: ["matRipple"] }, { kind: "component", type: i2$5.MatDivider, selector: "mat-divider", inputs: ["vertical", "inset"] }, { kind: "component", type: i8.MatIconButton, selector: "button[mat-icon-button], a[mat-icon-button], button[matIconButton], a[matIconButton]", exportAs: ["matButton", "matAnchor"] }, { kind: "component", type: i7.MatIcon, selector: "mat-icon", inputs: ["color", "inline", "svgIcon", "fontSet", "fontIcon"], exportAs: ["matIcon"] }, { kind: "component", type: i10.MatMenu, selector: "mat-menu", inputs: ["backdropClass", "aria-label", "aria-labelledby", "aria-describedby", "xPosition", "yPosition", "overlapTrigger", "hasBackdrop", "class", "classList"], outputs: ["closed", "close"], exportAs: ["matMenu"] }, { kind: "component", type: i10.MatMenuItem, selector: "[mat-menu-item]", inputs: ["role", "disabled", "disableRipple"], exportAs: ["matMenuItem"] }, { kind: "directive", type: i10.MatMenuContent, selector: "ng-template[matMenuContent]" }, { kind: "directive", type: i10.MatMenuTrigger, selector: "[mat-menu-trigger-for], [matMenuTriggerFor]", inputs: ["mat-menu-trigger-for", "matMenuTriggerFor", "matMenuTriggerData", "matMenuTriggerRestoreFocus"], outputs: ["menuOpened", "onMenuOpen", "menuClosed", "onMenuClose"], exportAs: ["matMenuTrigger"] }, { kind: "directive", type: TooltipDirective, selector: "[bizdocTooltip]", inputs: ["bizdocTooltip", "bizdocTooltipTemplate", "bizdocTooltipContext", "bizdocTooltipPosition", "bizdocTooltipDuration", "bizdocTooltipDisabled"] }, { kind: "pipe", type: DateFormatPipe, name: "amDateFormat" }, { kind: "pipe", type: TimeAgoPipe, name: "amTimeAgo" }, { kind: "pipe", type: TranslatePipe, name: "translate" }, { kind: "pipe", type: SanitizeHtmlPipe, name: "sanitizeHtml" }, { kind: "pipe", type: TaggingPipe, name: "taggingHtml" }] }); }
|
13696
13703
|
}
|
13697
13704
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.1.2", ngImport: i0, type: CommentComponent, decorators: [{
|
13698
13705
|
type: Component,
|
13699
13706
|
args: [{ standalone: false, selector: 'bizdoc-comment', host: {
|
13700
13707
|
class: 'comment'
|
13701
|
-
}, template: "<div class=\"row\">\r\n <div class=\"comment-body\" #body>\r\n <div [innerHTML]=\"item.text|taggingHtml:item.resource\" class=\"comment-text mat-body-1\"></div>\r\n @if (item.image) {\r\n <img [src]=\"'data:image/png;base64,'+item.image\" alt=\"\" (click)=\"preview()\" />\r\n }\r\n </div>\r\n <!-- menu -->\r\n @if (me) {\r\n <button mat-icon-button [matMenuTriggerFor]=\"menu\" class=\"comment-menu\" (click)=\"$event.stopPropagation()\"><mat-icon>more_vert</mat-icon></button>\r\n }\r\n <mat-menu #menu>\r\n <ng-template matMenuContent>\r\n @if (!item.deleted) {\r\n <button mat-menu-item (click)=\"edit()\">{{'Edit'|translate}}</button>\r\n <mat-divider></mat-divider>\r\n <button mat-menu-item (click)=\"delete(true)\">{{'Delete'|translate}}</button>\r\n }\r\n @else {\r\n <button mat-menu-item (click)=\"delete(false)\">{{'Undo'|translate}}</button>\r\n }\r\n </ng-template>\r\n </mat-menu>\r\n</div>\r\n<!-- reply -->\r\n@if(item.reply) {\r\n<div class=\"column comment-reply\">\r\n <div class=\"row\">\r\n <div [innerHTML]=\"item.reply.text|taggingHtml:item.reply.resource\" class=\"comment-text mat-body-1\"></div>\r\n @if (item.reply.image) {\r\n <img [src]=\"'data:image/png;base64,'+item.reply.image\" alt=\"\" (click)=\"null\" />\r\n }\r\n </div>\r\n <div class=\"row\">\r\n <small class=\"comment-tools\">\r\n <span
|
13708
|
+
}, template: "<div class=\"row\">\r\n <div class=\"comment-body\" #body>\r\n <div [innerHTML]=\"item.text|taggingHtml:item.resource\" class=\"comment-text mat-body-1\"></div>\r\n @if (item.image) {\r\n <img [src]=\"'data:image/png;base64,'+item.image\" alt=\"\" (click)=\"preview()\" />\r\n }\r\n </div>\r\n <!-- menu -->\r\n @if (me) {\r\n <button mat-icon-button [matMenuTriggerFor]=\"menu\" class=\"comment-menu\" (click)=\"$event.stopPropagation()\"><mat-icon>more_vert</mat-icon></button>\r\n }\r\n <mat-menu #menu>\r\n <ng-template matMenuContent>\r\n @if (!item.deleted) {\r\n <button mat-menu-item (click)=\"edit()\">{{'Edit'|translate}}</button>\r\n <mat-divider></mat-divider>\r\n <button mat-menu-item (click)=\"delete(true)\">{{'Delete'|translate}}</button>\r\n }\r\n @else {\r\n <button mat-menu-item (click)=\"delete(false)\">{{'Undo'|translate}}</button>\r\n }\r\n </ng-template>\r\n </mat-menu>\r\n</div>\r\n<!-- reply -->\r\n@if(item.reply) {\r\n<div class=\"column comment-reply\">\r\n <div class=\"row\">\r\n <div [innerHTML]=\"item.reply.text|taggingHtml:item.reply.resource\" class=\"comment-text mat-body-1\"></div>\r\n @if (item.reply.image) {\r\n <img [src]=\"'data:image/png;base64,'+item.reply.image\" alt=\"\" (click)=\"null\" />\r\n }\r\n </div>\r\n <div class=\"row\">\r\n <small class=\"comment-tools\">\r\n <span [bizdocTooltip]=\"item.reply.time | amDateFormat: 'lll'\">{{item.reply.time | amTimeAgo}}</span>\r\n </small>\r\n </div>\r\n</div>\r\n}\r\n<div class=\"row\">\r\n <div class=\"column\">\r\n <small [innerHTML]=\"name | sanitizeHtml\" (click)=\"chat($event)\" class=\"uname\"></small>\r\n <small class=\"comment-tools flex\">\r\n <span class=\"flex\" [bizdocTooltip]=\"(item.edited || item.time) | amDateFormat: 'lll'\">{{(item.edited || item.time) | amTimeAgo}}</span>\r\n @if (item.edited) {\r\n <a (click)=\"edits()\">{{'Edited'| translate}}</a>\r\n }\r\n @if (!me) {\r\n <a (click)=\"reply.emit()\">{{'Reply'| translate}}</a>\r\n }\r\n </small>\r\n </div>\r\n @if (voting) {\r\n <div class=\"comment-actions\">\r\n @if (item.votes > 0 || item.votes < 0) {\r\n <a [class.score-negative]=\"item.votes < 0\" class=\"comment-score\" dir=\"ltr\" (click)=\"votes()\" [bizdocTooltip]=\"'Votes'|translate\">{{item.votes}}</a>\r\n }\r\n <mat-icon matRipple (click)=\"vote(1, $event)\" [class.voted-true]=\"item.voted===1\">thumb_up_alt</mat-icon>\r\n <mat-icon matRipple (click)=\"vote(-1, $event)\" [class.voted-false]=\"item.voted===-1\">thumb_down_alt</mat-icon>\r\n </div>\r\n }\r\n</div>\r\n<ng-template #previewTemplate>\r\n <img [src]=\"'data:image/png;base64,'+item.image\" alt=\"\" />\r\n</ng-template>\r\n" }]
|
13702
13709
|
}], ctorParameters: () => [{ type: SessionService }, { type: PromptService }, { type: TranslateService }, { type: ChatInfo }, { type: AccountService }, { type: Popup }, { type: i2$3.Overlay }, { type: MailboxService }, { type: i0.ViewContainerRef }, { type: undefined, decorators: [{
|
13703
13710
|
type: Inject,
|
13704
13711
|
args: [BIZDOC_CONFIG]
|
@@ -13824,12 +13831,12 @@ class CommentsComponent {
|
|
13824
13831
|
reply(item) {
|
13825
13832
|
this._replyTo = item;
|
13826
13833
|
this._accounts.get(item.byId || item.userId).
|
13827
|
-
subscribe(u => this.replyName =
|
13834
|
+
subscribe(u => this.replyName = u.name);
|
13828
13835
|
this.input.focus();
|
13829
13836
|
}
|
13830
13837
|
clearReply() {
|
13831
|
-
this._replyTo =
|
13832
|
-
this.replyName =
|
13838
|
+
this._replyTo = null;
|
13839
|
+
this.replyName = null;
|
13833
13840
|
}
|
13834
13841
|
ngAfterViewInit() {
|
13835
13842
|
const { comments } = this.model;
|
@@ -13912,13 +13919,13 @@ class CommentsComponent {
|
|
13912
13919
|
window.localStorage.setItem(id, this.input.text);
|
13913
13920
|
}
|
13914
13921
|
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.1.2", ngImport: i0, type: CommentsComponent, deps: [{ token: AccountService }, { token: SessionService }, { token: PromptService }, { token: TranslateService }, { token: ChatInfo }, { token: MailboxService }, { token: HubService }, { token: BIZDOC_CONFIG }], target: i0.ɵɵFactoryTarget.Component }); }
|
13915
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "20.1.2", type: CommentsComponent, isStandalone: false, selector: "bizdoc-comments", inputs: { model: "model" }, outputs: { change: "change" }, host: { classAttribute: "comments" }, viewQueries: [{ propertyName: "threadElement", first: true, predicate: ["thread"], descendants: true, read: ElementRef, static: true }, { propertyName: "input", first: true, predicate: EditInputComponent, descendants: true, static: true }], usesOnChanges: true, ngImport: i0, template: "@if (!model.comments.length) {\r\n <bizdoc-none icon=\"format_quote\"></bizdoc-none>\r\n}\r\n\r\n<div class=\"column comments-thread mat-body\" #thread (scroll)=\"onScroll($event)\">\r\n @for (c of model.comments; track c.id) {\r\n <ng-container>\r\n @if (!c.deleted || showDeleted.has(c.id)) {\r\n <bizdoc-comment role=\"listitem\"\r\n [model]=\"model\"\r\n [item]=\"c\"\r\n (reply)=\"reply(c)\">\r\n </bizdoc-comment>\r\n } @else {\r\n <a (click)=\"showDeleted.add(c.id)\" class=\"comment-deleted\">{{'Deleted' | translate}}</a>\r\n }\r\n </ng-container>\r\n }\r\n</div>\r\n\r\n<
|
13922
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "20.1.2", type: CommentsComponent, isStandalone: false, selector: "bizdoc-comments", inputs: { model: "model" }, outputs: { change: "change" }, host: { classAttribute: "comments" }, viewQueries: [{ propertyName: "threadElement", first: true, predicate: ["thread"], descendants: true, read: ElementRef, static: true }, { propertyName: "input", first: true, predicate: EditInputComponent, descendants: true, static: true }], usesOnChanges: true, ngImport: i0, template: "@if (!model.comments.length) {\r\n <bizdoc-none icon=\"format_quote\"></bizdoc-none>\r\n}\r\n\r\n<div class=\"column comments-thread mat-body\" #thread (scroll)=\"onScroll($event)\">\r\n @for (c of model.comments; track c.id) {\r\n <ng-container>\r\n @if (!c.deleted || showDeleted.has(c.id)) {\r\n <bizdoc-comment role=\"listitem\"\r\n [model]=\"model\"\r\n [item]=\"c\"\r\n (reply)=\"reply(c)\">\r\n </bizdoc-comment>\r\n } @else {\r\n <a (click)=\"showDeleted.add(c.id)\" class=\"comment-deleted\">{{'Deleted' | translate}}</a>\r\n }\r\n </ng-container>\r\n }\r\n</div>\r\n\r\n<small class=\"mat-body comments-typing\" [style.visibility]=\"typing ? 'visible': 'hidden'\">{{'Typing' | translate : typing}}</small>\r\n\r\n@if (replyName) {\r\n<small class=\"mat-body comments-reply\">\r\n {{'ReplyTo' |translate : replyName }}\r\n <a class=\"comment-cancel-reply\" (click)=\"clearReply()\">{{'Cancel'|translate}}</a>\r\n</small>\r\n}\r\n\r\n<bizdoc-edit-text (ok)=\"post($event)\" (change)=\"_textChange.next()\"\r\n placeholder=\"CommentHere\"\r\n [disabled]=\"sending\" (focus)=\"onFocus()\" (blur)=\"onBlur()\">\r\n</bizdoc-edit-text>\r\n", styles: [":host{display:flex;-ms-flex-direction:column;-webkit-flex-direction:column;flex-direction:column;height:100%}.comments-thread{flex:1 1 auto;overflow:auto;padding:8px 12px 0}.comment-deleted{align-self:center}.comments-typing,.comments-reply{font-size:11px;padding:0 8px}.comments-reply .comment-cancel-reply{font-variant:small-caps}\n"], dependencies: [{ kind: "component", type: EditInputComponent, selector: "bizdoc-edit-text", inputs: ["placeholder", "text", "image", "resource", "disabled", "autofocus", "cache"], outputs: ["change", "ok", "focus", "blur"] }, { kind: "component", type: NoneComponent, selector: "bizdoc-none", inputs: ["title", "subtitle", "icon"] }, { kind: "component", type: CommentComponent, selector: "bizdoc-comment", inputs: ["model", "item"], outputs: ["deleted", "reply"] }, { kind: "pipe", type: TranslatePipe, name: "translate" }] }); }
|
13916
13923
|
}
|
13917
13924
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.1.2", ngImport: i0, type: CommentsComponent, decorators: [{
|
13918
13925
|
type: Component,
|
13919
13926
|
args: [{ standalone: false, selector: 'bizdoc-comments', host: {
|
13920
13927
|
class: 'comments'
|
13921
|
-
}, template: "@if (!model.comments.length) {\r\n <bizdoc-none icon=\"format_quote\"></bizdoc-none>\r\n}\r\n\r\n<div class=\"column comments-thread mat-body\" #thread (scroll)=\"onScroll($event)\">\r\n @for (c of model.comments; track c.id) {\r\n <ng-container>\r\n @if (!c.deleted || showDeleted.has(c.id)) {\r\n <bizdoc-comment role=\"listitem\"\r\n [model]=\"model\"\r\n [item]=\"c\"\r\n (reply)=\"reply(c)\">\r\n </bizdoc-comment>\r\n } @else {\r\n <a (click)=\"showDeleted.add(c.id)\" class=\"comment-deleted\">{{'Deleted' | translate}}</a>\r\n }\r\n </ng-container>\r\n }\r\n</div>\r\n\r\n<
|
13928
|
+
}, template: "@if (!model.comments.length) {\r\n <bizdoc-none icon=\"format_quote\"></bizdoc-none>\r\n}\r\n\r\n<div class=\"column comments-thread mat-body\" #thread (scroll)=\"onScroll($event)\">\r\n @for (c of model.comments; track c.id) {\r\n <ng-container>\r\n @if (!c.deleted || showDeleted.has(c.id)) {\r\n <bizdoc-comment role=\"listitem\"\r\n [model]=\"model\"\r\n [item]=\"c\"\r\n (reply)=\"reply(c)\">\r\n </bizdoc-comment>\r\n } @else {\r\n <a (click)=\"showDeleted.add(c.id)\" class=\"comment-deleted\">{{'Deleted' | translate}}</a>\r\n }\r\n </ng-container>\r\n }\r\n</div>\r\n\r\n<small class=\"mat-body comments-typing\" [style.visibility]=\"typing ? 'visible': 'hidden'\">{{'Typing' | translate : typing}}</small>\r\n\r\n@if (replyName) {\r\n<small class=\"mat-body comments-reply\">\r\n {{'ReplyTo' |translate : replyName }}\r\n <a class=\"comment-cancel-reply\" (click)=\"clearReply()\">{{'Cancel'|translate}}</a>\r\n</small>\r\n}\r\n\r\n<bizdoc-edit-text (ok)=\"post($event)\" (change)=\"_textChange.next()\"\r\n placeholder=\"CommentHere\"\r\n [disabled]=\"sending\" (focus)=\"onFocus()\" (blur)=\"onBlur()\">\r\n</bizdoc-edit-text>\r\n", styles: [":host{display:flex;-ms-flex-direction:column;-webkit-flex-direction:column;flex-direction:column;height:100%}.comments-thread{flex:1 1 auto;overflow:auto;padding:8px 12px 0}.comment-deleted{align-self:center}.comments-typing,.comments-reply{font-size:11px;padding:0 8px}.comments-reply .comment-cancel-reply{font-variant:small-caps}\n"] }]
|
13922
13929
|
}], ctorParameters: () => [{ type: AccountService }, { type: SessionService }, { type: PromptService }, { type: TranslateService }, { type: ChatInfo }, { type: MailboxService }, { type: HubService }, { type: undefined, decorators: [{
|
13923
13930
|
type: Inject,
|
13924
13931
|
args: [BIZDOC_CONFIG]
|
@@ -15579,10 +15586,11 @@ const FYI_PATH = 'M12 2C6.48 2 2 6.48 2 12s4.48 10 10 10 10-4.48 10-10S17.52 2 1
|
|
15579
15586
|
/** flow-view component*/
|
15580
15587
|
class FlowViewComponent extends TraceBase {
|
15581
15588
|
/** workflow-view ctor */
|
15582
|
-
constructor(_accounts, _translate, _duration, _elementRef, session, hub) {
|
15589
|
+
constructor(_accounts, _translate, _popup, _duration, _elementRef, session, hub) {
|
15583
15590
|
super(session, hub);
|
15584
15591
|
this._accounts = _accounts;
|
15585
15592
|
this._translate = _translate;
|
15593
|
+
this._popup = _popup;
|
15586
15594
|
this._duration = _duration;
|
15587
15595
|
this._elementRef = _elementRef;
|
15588
15596
|
this.connectorType = 'Bezier';
|
@@ -15661,6 +15669,7 @@ class FlowViewComponent extends TraceBase {
|
|
15661
15669
|
snapSettings: this.snapSettings,
|
15662
15670
|
scrollSettings: this.scrollSettings,
|
15663
15671
|
height: 560,
|
15672
|
+
// mouseEnter: this._mouseEnter.bind(this),
|
15664
15673
|
//layers: [
|
15665
15674
|
// {
|
15666
15675
|
// zIndex: 0,
|
@@ -15715,6 +15724,10 @@ class FlowViewComponent extends TraceBase {
|
|
15715
15724
|
n.tooltip.content = this._tooltip(n.addInfo.tooltip);
|
15716
15725
|
});
|
15717
15726
|
}
|
15727
|
+
_mouseEnter(evt) {
|
15728
|
+
evt.element.addInfo && evt.element.addInfo.tooltip &&
|
15729
|
+
this._popup.open('', evt.actualObject);
|
15730
|
+
}
|
15718
15731
|
/** */
|
15719
15732
|
async _prepare() {
|
15720
15733
|
const { connectors: dconnectors, nodes: dnodes } = this.model.workflow;
|
@@ -16189,7 +16202,7 @@ class FlowViewComponent extends TraceBase {
|
|
16189
16202
|
else {
|
16190
16203
|
const who = await firstValueFrom(this._accounts.get(recipient.userId));
|
16191
16204
|
const action = this._action(recipient.actionId, who.gender);
|
16192
|
-
tooltip.note = this._translate.get('ActionTakenTo', who.name, action, this._translate.join(to));
|
16205
|
+
tooltip.note = this._translate.get('ActionTakenTo', who.name, action, this._translate.join(to), ago);
|
16193
16206
|
}
|
16194
16207
|
}
|
16195
16208
|
else if (this._session.isImpersonating) {
|
@@ -16282,7 +16295,7 @@ class FlowViewComponent extends TraceBase {
|
|
16282
16295
|
this.diagram?.destroy();
|
16283
16296
|
super.ngOnDestroy();
|
16284
16297
|
}
|
16285
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.1.2", ngImport: i0, type: FlowViewComponent, deps: [{ token: AccountService }, { token: TranslateService }, { token: DurationFormatPipe }, { token: i0.ElementRef }, { token: SessionService }, { token: HubService }], target: i0.ɵɵFactoryTarget.Component }); }
|
16298
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.1.2", ngImport: i0, type: FlowViewComponent, deps: [{ token: AccountService }, { token: TranslateService }, { token: Popup }, { token: DurationFormatPipe }, { token: i0.ElementRef }, { token: SessionService }, { token: HubService }], target: i0.ɵɵFactoryTarget.Component }); }
|
16286
16299
|
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "20.1.2", type: FlowViewComponent, isStandalone: false, selector: "bizdoc-flow", inputs: { model: "model", version: "version", connectorType: "connectorType" }, host: { attributes: { "id": "diagram1", "dir": "ltr" } }, usesInheritance: true, usesOnChanges: true, ngImport: i0, template: '', isInline: true, styles: [":host{min-height:500px;min-width:400px;background-color:transparent!important}\n"] }); }
|
16287
16300
|
}
|
16288
16301
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.1.2", ngImport: i0, type: FlowViewComponent, decorators: [{
|
@@ -16291,7 +16304,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.1.2", ngImpor
|
|
16291
16304
|
id: 'diagram1',
|
16292
16305
|
dir: 'ltr'
|
16293
16306
|
}, styles: [":host{min-height:500px;min-width:400px;background-color:transparent!important}\n"] }]
|
16294
|
-
}], ctorParameters: () => [{ type: AccountService }, { type: TranslateService }, { type: DurationFormatPipe }, { type: i0.ElementRef }, { type: SessionService }, { type: HubService }], propDecorators: { model: [{
|
16307
|
+
}], ctorParameters: () => [{ type: AccountService }, { type: TranslateService }, { type: Popup }, { type: DurationFormatPipe }, { type: i0.ElementRef }, { type: SessionService }, { type: HubService }], propDecorators: { model: [{
|
16295
16308
|
type: Input
|
16296
16309
|
}], version: [{
|
16297
16310
|
type: Input
|
@@ -21588,11 +21601,11 @@ class HomeComponent extends HomeBase {
|
|
21588
21601
|
item.instance.onPick();
|
21589
21602
|
}
|
21590
21603
|
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.1.2", ngImport: i0, type: HomeComponent, deps: [{ token: PanesRouter }, { token: SearchService }, { token: DocumentFactory }, { token: Popup }, { token: GuideService }, { token: AuthenticationImpl }, { token: BIZDOC_CONFIG }], target: i0.ɵɵFactoryTarget.Component }); }
|
21591
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "20.1.2", type: HomeComponent, isStandalone: false, selector: "bizdoc-home", host: { listeners: { "document:keydown": "handleKeyboardEvent($event)" }, classAttribute: "mat-app-background" }, viewQueries: [{ propertyName: "drawer", first: true, predicate: MatSidenav, descendants: true, static: true }, { propertyName: "main", first: true, predicate: ["main"], descendants: true, static: true }, { propertyName: "input", first: true, predicate: ["input"], descendants: true }, { propertyName: "trigger", first: true, predicate: ["input"], descendants: true, read: MatAutocompleteTrigger }], usesInheritance: true, ngImport: i0, template: "<!-- menu -->\r\n<div [class.nav-collapsed]=\"collapsed\" [class.nav-open]=\"subMenu\"\r\n [class.dialog]=\"isDialogMode\"\r\n class=\"nav-menu row\">\r\n\r\n <div class=\"column\">\r\n <!--@if(appLogo){\r\n <img [src]=\"appLogo\" class=\"app-logo\" />\r\n }-->\r\n @if (forms.length) {\r\n <div [class.active]=\"activeMenu === 'new'\" class=\"new-container\">\r\n <button mat-raised-button\r\n [bizdocTooltip]=\"'Compose'|translate\" bizdocTooltipPosition=\"end\" [bizdocTooltipDisabled]=\"!collapsed\"\r\n (click)=\"openNew()\" [disabled]=\"creating\"\r\n [attr.aria-label]=\"'Compose'| translate\" color=\"primary\" data-help=\"compose\">\r\n <mat-icon>add</mat-icon>\r\n <span class=\"nav-label\">{{'Compose'| translate}}</span>\r\n </button>\r\n </div>\r\n }\r\n <mat-nav-list>\r\n <mat-list-item class=\"nav-menu\" [attr.aria-label]=\"'Dashboard' | translate\"\r\n (click)=\"nav('dashboard')\" [class.active]=\"activeMenu === 'dashboard'\"\r\n data-help=\"dashboard\"\r\n [bizdocTooltip]=\"'Dashboard'|translate\" bizdocTooltipPosition=\"end\" [bizdocTooltipDisabled]=\"!collapsed\">\r\n <mat-icon matListItemIcon>apps</mat-icon><span class=\"nav-label\" matListItemTitle>{{'Dashboard' | translate}}</span>\r\n </mat-list-item>\r\n <mat-list-item class=\"nav-menu\" (click)=\"openMailbox()\" [bizdocTooltip]=\"'Mailbox'|translate\" bizdocTooltipPosition=\"end\" [bizdocTooltipDisabled]=\"!collapsed\"\r\n [class.active]=\"activeMenu === 'mailbox'\"\r\n [attr.aria-label]=\"'Mailbox' | translate\" data-help=\"folders\">\r\n <mat-icon matListItemIcon [matBadge]=\"profile.inboxCount\" [matBadgeHidden]=\"!profile.inboxCount\" matBadgeColor=\"accent\" aria-hidden=\"false\">inbox</mat-icon>\r\n <span class=\"nav-label\" matListItemTitle>{{'Mailbox' | translate}}</span>\r\n </mat-list-item>\r\n @if (schedulerEnabled) {\r\n <mat-list-item class=\"nav-menu\" [attr.aria-label]=\"'Scheduler' | translate\"\r\n (click)=\"nav('schedule')\" [class.active]=\"activeMenu === 'schedule'\"\r\n [bizdocTooltip]=\"'Scheduler'|translate\" bizdocTooltipPosition=\"end\" [bizdocTooltipDisabled]=\"!collapsed\">\r\n <mat-icon matListItemIcon class=\"mat-icon-rtl-mirror\">date_range</mat-icon><span class=\"nav-label\" matListItemTitle>{{ 'Scheduler' | translate}}</span>\r\n </mat-list-item>\r\n }\r\n @if (chatEnabled) {\r\n <mat-list-item class=\"nav-menu\" data-help=\"chat\" [attr.aria-label]=\"'Chat' | translate\"\r\n (click)=\"nav('contacts')\" [class.active]=\"activeMenu === 'contacts'\"\r\n [bizdocTooltip]=\"'Chat'|translate\" bizdocTooltipPosition=\"end\" [bizdocTooltipDisabled]=\"!collapsed\">\r\n <mat-icon matListItemIcon [matBadge]=\"profile.conversationsCount\" [matBadgeHidden]=\"!profile.conversationsCount\" matBadgeColor=\"accent\" aria-hidden=\"false\">chat</mat-icon>\r\n <span class=\"nav-label\" matListItemTitle>{{ 'Chat' | translate}}</span>\r\n </mat-list-item>\r\n }\r\n <mat-divider></mat-divider>\r\n @if (enableAnalysis && profile.cubes.length) {\r\n <mat-list-item class=\"nav-menu\" (click)=\"openSubMenu('cube')\"\r\n [class.active]=\"activeMenu === 'cube'\"\r\n [bizdocTooltip]=\"'Cube'|translate\" bizdocTooltipPosition=\"end\" [bizdocTooltipDisabled]=\"!collapsed\"\r\n data-help=\"cube\" [attr.aria-label]=\"'Cube' | translate\">\r\n <mat-icon matListItemIcon>equalizer</mat-icon><span class=\"nav-label\" matListItemTitle>{{'Cube' | translate}}</span>\r\n </mat-list-item>\r\n }\r\n @if (profile.reports.length) {\r\n <mat-list-item class=\"nav-menu\" (click)=\"openSubMenu('reports')\"\r\n [class.active]=\"activeMenu === 'reports'\"\r\n [bizdocTooltip]=\"'Reports'|translate\" bizdocTooltipPosition=\"end\" [bizdocTooltipDisabled]=\"!collapsed\" data-help=\"reports\" [attr.aria-label]=\"'Reports' | translate\">\r\n <mat-icon matListItemIcon>list_alt</mat-icon><span class=\"nav-label\" matListItemTitle>{{'Reports' | translate}}</span>\r\n </mat-list-item>\r\n }\r\n @if (isSysAdmin) {\r\n <mat-divider></mat-divider>\r\n <mat-list-item class=\"nav-menu\" (click)=\"openSubMenu('admin')\"\r\n [class.active]=\"activeMenu === 'admin'\"\r\n [bizdocTooltip]=\"'System'|translate\" bizdocTooltipPosition=\"end\" [bizdocTooltipDisabled]=\"!collapsed\" [attr.aria-label]=\"'System' | translate\">\r\n <mat-icon matListItemIcon>device_hub</mat-icon>\r\n <span class=\"nav-label\" matListItemTitle>{{'Workflow' | translate}}</span>\r\n </mat-list-item>\r\n }\r\n </mat-nav-list>\r\n <span class=\"divider\"></span>\r\n <!--<lottie name=\"lf30_editor_qr7zgmcs\" *ngIf=\"loading\"></lottie>-->\r\n <div class=\"sign-in\">\r\n <button mat-icon-button data-help=\"settings\" [bizdocTooltip]=\"'Settings' | translate\" bizdocTooltipPosition=\"above\"\r\n [attr.aria-label]=\"'Settings' | translate\" (click)=\"options($event)\">\r\n <mat-icon matAnimate=\"rotate\">settingson</mat-icon>\r\n </button>\r\n @if(canSignOut) {\r\n <span class=\"divider\"></span>\r\n <button mat-icon-button data-help=\"sign-in\" [attr.aria-label]=\"'Power' | translate\" (click)=\"signout($event)\" [bizdocTooltip]=\"'Exit'|translate\" bizdocTooltipPosition=\"above\">\r\n <mat-icon class=\"mat-icon-rtl-mirror\">logout</mat-icon>\r\n </button>\r\n }\r\n </div>\r\n </div>\r\n <!-- -->\r\n @if (subMenu) {\r\n <div class=\"sub-menu\" (mouseleave)=\"collapseSubMenu()\" [@subMenu]=\"subMenuMode\" (@subMenu.done)=\"resize()\">\r\n @if (subMenu !== 'new') {\r\n <div class=\"action\">\r\n <button mat-icon-button (click)=\"togglePinned()\" [bizdocTooltip]=\"(pinned?'Collapse':'Expand')|translate\"><mat-icon class=\"mat-icon-rtl-mirror\">{{pinned ? 'push_pin' : 'menu'}}</mat-icon></button>\r\n </div>\r\n }\r\n @switch (subMenu) {\r\n @case ('new') {\r\n <bizdoc-new-menu (change)=\"closeSubMenu()\"></bizdoc-new-menu>\r\n }\r\n @case ('mailbox') {\r\n <bizdoc-folders-menu [collapsed]=\"subMenuMode === 'shrink'\" (change)=\"collapseSubMenu()\"></bizdoc-folders-menu>\r\n }\r\n @case ('admin') {\r\n <bizdoc-admin-menu [collapsed]=\"subMenuMode === 'shrink'\"></bizdoc-admin-menu>\r\n }\r\n @case ('reports') {\r\n <bizdoc-reports-menu [collapsed]=\"subMenuMode === 'shrink'\" (change)=\"collapseSubMenu()\"></bizdoc-reports-menu>\r\n }\r\n @case ('cube') {\r\n <bizdoc-cube-menu [collapsed]=\"subMenuMode === 'shrink'\" (change)=\"collapseSubMenu()\"></bizdoc-cube-menu>\r\n }\r\n }\r\n </div>\r\n }\r\n @if (isDialogMode) {\r\n <div class=\"backdrop\"></div>\r\n }\r\n</div>\r\n<div class=\"main\">\r\n <!-- title -->\r\n <div class=\"row header\" [@title]=\"main.titleVariant\">\r\n <h1>\r\n @if (main.swap) {\r\n <button mat-icon-button (click)=\"main.back()\" [bizdocTooltip]=\"'Back'|translate\"><mat-icon class=\"mat-icon-rtl-mirror\">arrow_circle_left</mat-icon></button>\r\n }\r\n @for (p of main.panes; track p.id; let first = $first) {\r\n @if (!first) {\r\n <span class=\"breadcrumbs\">\\</span>\r\n }\r\n {{p.title}}\r\n }\r\n @if (guide) {\r\n <button mat-icon-button (click)=\"openGuide(guide)\" [bizdocTooltip]=\"'Help'|translate\"><mat-icon>help</mat-icon></button>\r\n }\r\n </h1>\r\n <span class=\"divider\">\r\n </span>\r\n <!--search-->\r\n <input type=\"text\"\r\n [@search]=\"searching\"\r\n (@search.done)=\"searching && focus()\"\r\n #input\r\n (keydown.escape)=\"collapse($event)\"\r\n [attr.aria-label]=\"'Search'|translate\"\r\n [formControl]=\"search\"\r\n [matAutocomplete]=\"auto\" class=\"search-box\">\r\n <mat-autocomplete autoActiveFirstOption #auto=\"matAutocomplete\" (optionSelected)=\"goto($event)\" [displayWith]=\"displayWith\">\r\n @for (o of results | async; track o) {\r\n <mat-option [value]=\"o\">\r\n <ng-container (attached)=\"onAttached(o, $event)\" [cdkPortalOutlet]=\"o.portal\"></ng-container>\r\n </mat-option>\r\n }\r\n </mat-autocomplete>\r\n <button mat-icon-button (click)=\"toggle($event)\" [bizdocTooltip]=\"'Search'|translate\" class=\"tool\"><mat-icon>search</mat-icon></button>\r\n <!--notifications-->\r\n <button mat-icon-button (click)=\"openNotifs($event)\" [bizdocTooltip]=\"'Notifications'|translate\" bizdocTooltipPosition=\"start\" class=\"tool\"\r\n [attr.aria-label]=\"'Notifications'| translate\"\r\n data-help=\"notifications\">\r\n <mat-icon [matBadge]=\"profile.messagesCount\" [matBadgeHidden]=\"!profile.messagesCount\"\r\n matBadgeColor=\"accent\" aria-hidden=\"false\"\r\n [class.filled]=\"profile.messagesCount\">\r\n {{profile.options.notifications?.active === true ? 'notifications':'notifications_off'}}\r\n </mat-icon>\r\n </button>\r\n </div>\r\n <!--panes & tabs-->\r\n <bizdoc-panes-outlet (dialogChange)=\"isDialogMode = $event\" #main></bizdoc-panes-outlet>\r\n</div>\r\n", styles: [":host{display:flex;height:100%}::ng-deep .nav-collapsed .mdc-list-item{padding-right:0}::ng-deep [dir=rtl] .nav-collapsed .mdc-list-item{padding-left:0}.nav-menu{z-index:1}.nav-menu .sub-menu{min-width:210px;display:block;z-index:1;overflow-x:hidden;align-self:stretch}.nav-menu .sub-menu .action{display:flex;-ms-flex-direction:row-reverse;-webkit-flex-direction:row-reverse;flex-direction:row-reverse}.nav-menu .new-container{margin:8px 8px 0;text-align:center}.nav-menu .new-container button{min-width:35px;padding:0 14px;height:40px}.nav-menu .new-container button .mat-icon{margin-right:2px;margin-left:2px}.nav-menu .nav-icon{display:none}.nav-menu.nav-collapsed .nav-menu{padding:0}.nav-menu.nav-collapsed .nav-icon{display:unset}.nav-menu.nav-collapsed .nav-label{display:none}.nav-menu.nav-collapsed .sign-in{-ms-flex-direction:column;-webkit-flex-direction:column;flex-direction:column;align-items:center}.nav-menu .sign-in{display:flex;-ms-flex-direction:row;-webkit-flex-direction:row;flex-direction:row;overflow:hidden;margin-bottom:5px;align-items:baseline}.backdrop{position:absolute;z-index:200;width:100%;height:100%;display:block;background:#424242;opacity:.8}.main{flex:1;overflow-x:hidden;display:flex;-ms-flex-direction:column;-webkit-flex-direction:column;flex-direction:column}.main .header{margin:4px 4px 0 0;align-items:center;min-width:max-content}.main .header h1{font-size:xx-large;margin:12px;font-weight:100}.main .header h1 button{vertical-align:middle}.main .header h1 .breadcrumbs{font-size:smaller}.main .header .search-box{font-size:large}\n"], dependencies: [{ kind: "directive", type: i1$2.DefaultValueAccessor, selector: "input:not([type=checkbox])[formControlName],textarea[formControlName],input:not([type=checkbox])[formControl],textarea[formControl],input:not([type=checkbox])[ngModel],textarea[ngModel],[ngDefaultControl]" }, { kind: "directive", type: i1$2.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i1$2.FormControlDirective, selector: "[formControl]", inputs: ["formControl", "disabled", "ngModel"], outputs: ["ngModelChange"], exportAs: ["ngForm"] }, { kind: "directive", type: i5.CdkPortalOutlet, selector: "[cdkPortalOutlet]", inputs: ["cdkPortalOutlet"], outputs: ["attached"], exportAs: ["cdkPortalOutlet"] }, { kind: "directive", type: i7$1.MatBadge, selector: "[matBadge]", inputs: ["matBadgeColor", "matBadgeOverlap", "matBadgeDisabled", "matBadgePosition", "matBadge", "matBadgeDescription", "matBadgeSize", "matBadgeHidden"] }, { kind: "component", type: i2$5.MatNavList, selector: "mat-nav-list", exportAs: ["matNavList"] }, { kind: "component", type: i2$5.MatListItem, selector: "mat-list-item, a[mat-list-item], button[mat-list-item]", inputs: ["activated"], exportAs: ["matListItem"] }, { kind: "directive", type: i2$5.MatListItemIcon, selector: "[matListItemIcon]" }, { kind: "component", type: i2$5.MatDivider, selector: "mat-divider", inputs: ["vertical", "inset"] }, { kind: "directive", type: i2$5.MatListItemTitle, selector: "[matListItemTitle]" }, { kind: "component", type: i2$6.MatAutocomplete, selector: "mat-autocomplete", inputs: ["aria-label", "aria-labelledby", "displayWith", "autoActiveFirstOption", "autoSelectActiveOption", "requireSelection", "panelWidth", "disableRipple", "class", "hideSingleSelectionIndicator"], outputs: ["optionSelected", "opened", "closed", "optionActivated"], exportAs: ["matAutocomplete"] }, { kind: "component", type: i2$6.MatOption, selector: "mat-option", inputs: ["value", "id", "disabled"], outputs: ["onSelectionChange"], exportAs: ["matOption"] }, { kind: "directive", type: i2$6.MatAutocompleteTrigger, selector: "input[matAutocomplete], textarea[matAutocomplete]", inputs: ["matAutocomplete", "matAutocompletePosition", "matAutocompleteConnectedTo", "autocomplete", "matAutocompleteDisabled"], exportAs: ["matAutocompleteTrigger"] }, { kind: "component", type: i8.MatButton, selector: " button[matButton], a[matButton], button[mat-button], button[mat-raised-button], button[mat-flat-button], button[mat-stroked-button], a[mat-button], a[mat-raised-button], a[mat-flat-button], a[mat-stroked-button] ", inputs: ["matButton"], exportAs: ["matButton", "matAnchor"] }, { kind: "component", type: i8.MatIconButton, selector: "button[mat-icon-button], a[mat-icon-button], button[matIconButton], a[matIconButton]", exportAs: ["matButton", "matAnchor"] }, { kind: "component", type: i7.MatIcon, selector: "mat-icon", inputs: ["color", "inline", "svgIcon", "fontSet", "fontIcon"], exportAs: ["matIcon"] }, { kind: "directive", type: MatIconAnimate, selector: "[matAnimate]" }, { kind: "directive", type: TooltipDirective, selector: "[bizdocTooltip]", inputs: ["bizdocTooltip", "bizdocTooltipTemplate", "bizdocTooltipContext", "bizdocTooltipPosition", "bizdocTooltipDuration", "bizdocTooltipDisabled"] }, { kind: "component", type: AdminMenuComponent, selector: "bizdoc-admin-menu", inputs: ["collapsed"] }, { kind: "component", type: SlotsComponent, selector: "bizdoc-panes-outlet", outputs: ["dialogChange"] }, { kind: "component", type: CubeMenuComponent, selector: "bizdoc-cube-menu", inputs: ["collapsed"], outputs: ["change"] }, { kind: "component", type: ReportsMenuComponent, selector: "bizdoc-reports-menu", inputs: ["collapsed"], outputs: ["change"] }, { kind: "component", type: FoldersMenuComponent, selector: "bizdoc-folders-menu", inputs: ["collapsed"], outputs: ["change"] }, { kind: "component", type: ComposeMenuComponent, selector: "bizdoc-new-menu", outputs: ["change"] }, { kind: "pipe", type: i9.AsyncPipe, name: "async" }, { kind: "pipe", type: TranslatePipe, name: "translate" }], animations: [subMenuAnimation, panesTitleAnimation, searchAnimation] }); }
|
21604
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "20.1.2", type: HomeComponent, isStandalone: false, selector: "bizdoc-home", host: { listeners: { "document:keydown": "handleKeyboardEvent($event)" }, classAttribute: "mat-app-background" }, viewQueries: [{ propertyName: "drawer", first: true, predicate: MatSidenav, descendants: true, static: true }, { propertyName: "main", first: true, predicate: ["main"], descendants: true, static: true }, { propertyName: "input", first: true, predicate: ["input"], descendants: true }, { propertyName: "trigger", first: true, predicate: ["input"], descendants: true, read: MatAutocompleteTrigger }], usesInheritance: true, ngImport: i0, template: "<!-- menu -->\r\n<div [class.nav-collapsed]=\"collapsed\" [class.nav-open]=\"subMenu\"\r\n [class.dialog]=\"isDialogMode\"\r\n class=\"nav-menu row\">\r\n\r\n <div class=\"column\">\r\n <!--@if(appLogo){\r\n <img [src]=\"appLogo\" class=\"app-logo\" />\r\n }-->\r\n @if (forms.length) {\r\n <div [class.active]=\"activeMenu === 'new'\" class=\"new-container\">\r\n <button mat-raised-button\r\n [bizdocTooltip]=\"'Compose'|translate\" bizdocTooltipPosition=\"end\" [bizdocTooltipDisabled]=\"!collapsed\"\r\n (click)=\"openNew()\" [disabled]=\"creating\"\r\n [attr.aria-label]=\"'Compose'| translate\" color=\"primary\" data-help=\"compose\">\r\n <mat-icon>add</mat-icon>\r\n <span class=\"nav-label\">{{'Compose'| translate}}</span>\r\n </button>\r\n </div>\r\n }\r\n <mat-nav-list>\r\n <mat-list-item class=\"nav-menu\" [attr.aria-label]=\"'Dashboard' | translate\"\r\n (click)=\"nav('dashboard')\" [class.active]=\"activeMenu === 'dashboard'\"\r\n data-help=\"dashboard\"\r\n [bizdocTooltip]=\"'Dashboard'|translate\" bizdocTooltipPosition=\"end\" [bizdocTooltipDisabled]=\"!collapsed\">\r\n <mat-icon matListItemIcon>apps</mat-icon><span class=\"nav-label\" matListItemTitle>{{'Dashboard' | translate}}</span>\r\n </mat-list-item>\r\n <mat-list-item class=\"nav-menu\" (click)=\"openMailbox()\" [bizdocTooltip]=\"'Mailbox'|translate\" bizdocTooltipPosition=\"end\" [bizdocTooltipDisabled]=\"!collapsed\"\r\n [class.active]=\"activeMenu === 'mailbox'\"\r\n [attr.aria-label]=\"'Mailbox' | translate\" data-help=\"folders\">\r\n <mat-icon matListItemIcon [matBadge]=\"profile.inboxCount\" [matBadgeHidden]=\"!profile.inboxCount\" matBadgeColor=\"accent\" aria-hidden=\"false\">inbox</mat-icon>\r\n <span class=\"nav-label\" matListItemTitle>{{'Mailbox' | translate}}</span>\r\n </mat-list-item>\r\n @if (schedulerEnabled) {\r\n <mat-list-item class=\"nav-menu\" [attr.aria-label]=\"'Scheduler' | translate\"\r\n (click)=\"nav('schedule')\" [class.active]=\"activeMenu === 'schedule'\"\r\n [bizdocTooltip]=\"'Scheduler'|translate\" bizdocTooltipPosition=\"end\" [bizdocTooltipDisabled]=\"!collapsed\">\r\n <mat-icon matListItemIcon class=\"mat-icon-rtl-mirror\">date_range</mat-icon><span class=\"nav-label\" matListItemTitle>{{ 'Scheduler' | translate}}</span>\r\n </mat-list-item>\r\n }\r\n @if (chatEnabled) {\r\n <mat-list-item class=\"nav-menu\" data-help=\"chat\" [attr.aria-label]=\"'Chat' | translate\"\r\n (click)=\"nav('contacts')\" [class.active]=\"activeMenu === 'contacts'\"\r\n [bizdocTooltip]=\"'Chat'|translate\" bizdocTooltipPosition=\"end\" [bizdocTooltipDisabled]=\"!collapsed\">\r\n <mat-icon matListItemIcon [matBadge]=\"profile.conversationsCount\" [matBadgeHidden]=\"!profile.conversationsCount\" matBadgeColor=\"accent\" aria-hidden=\"false\">chat</mat-icon>\r\n <span class=\"nav-label\" matListItemTitle>{{ 'Chat' | translate}}</span>\r\n </mat-list-item>\r\n }\r\n <mat-divider></mat-divider>\r\n @if (enableAnalysis && profile.cubes.length) {\r\n <mat-list-item class=\"nav-menu\" (click)=\"openSubMenu('cube')\"\r\n [class.active]=\"activeMenu === 'cube'\"\r\n [bizdocTooltip]=\"'Cube'|translate\" bizdocTooltipPosition=\"end\" [bizdocTooltipDisabled]=\"!collapsed\"\r\n data-help=\"cube\" [attr.aria-label]=\"'Cube' | translate\">\r\n <mat-icon matListItemIcon>equalizer</mat-icon><span class=\"nav-label\" matListItemTitle>{{'Cube' | translate}}</span>\r\n </mat-list-item>\r\n }\r\n @if (profile.reports.length) {\r\n <mat-list-item class=\"nav-menu\" (click)=\"openSubMenu('reports')\"\r\n [class.active]=\"activeMenu === 'reports'\"\r\n [bizdocTooltip]=\"'Reports'|translate\" bizdocTooltipPosition=\"end\" [bizdocTooltipDisabled]=\"!collapsed\" data-help=\"reports\" [attr.aria-label]=\"'Reports' | translate\">\r\n <mat-icon matListItemIcon>list_alt</mat-icon><span class=\"nav-label\" matListItemTitle>{{'Reports' | translate}}</span>\r\n </mat-list-item>\r\n }\r\n @if (isSysAdmin) {\r\n <mat-divider></mat-divider>\r\n <mat-list-item class=\"nav-menu\" (click)=\"openSubMenu('admin')\"\r\n [class.active]=\"activeMenu === 'admin'\"\r\n [bizdocTooltip]=\"'Tools'|translate\" bizdocTooltipPosition=\"end\" [bizdocTooltipDisabled]=\"!collapsed\" [attr.aria-label]=\"'System' | translate\">\r\n <mat-icon matListItemIcon>build</mat-icon>\r\n <span class=\"nav-label\" matListItemTitle>{{'Workflow' | translate}}</span>\r\n </mat-list-item>\r\n }\r\n </mat-nav-list>\r\n <span class=\"divider\"></span>\r\n <!--<lottie name=\"lf30_editor_qr7zgmcs\" *ngIf=\"loading\"></lottie>-->\r\n <div class=\"sign-in\">\r\n <button mat-icon-button data-help=\"settings\" [bizdocTooltip]=\"'Settings' | translate\" bizdocTooltipPosition=\"above\"\r\n [attr.aria-label]=\"'Settings' | translate\" (click)=\"options($event)\">\r\n <mat-icon matAnimate=\"rotate\">settingson</mat-icon>\r\n </button>\r\n @if(canSignOut) {\r\n <span class=\"divider\"></span>\r\n <button mat-icon-button data-help=\"sign-in\" [attr.aria-label]=\"'Power' | translate\" (click)=\"signout($event)\" [bizdocTooltip]=\"'Exit'|translate\" bizdocTooltipPosition=\"above\">\r\n <mat-icon class=\"mat-icon-rtl-mirror\">logout</mat-icon>\r\n </button>\r\n }\r\n </div>\r\n </div>\r\n <!-- -->\r\n @if (subMenu) {\r\n <div class=\"sub-menu\" (mouseleave)=\"collapseSubMenu()\" [@subMenu]=\"subMenuMode\" (@subMenu.done)=\"resize()\">\r\n @if (subMenu !== 'new') {\r\n <div class=\"action\">\r\n <button mat-icon-button (click)=\"togglePinned()\" [bizdocTooltip]=\"(pinned?'Collapse':'Expand')|translate\"><mat-icon class=\"mat-icon-rtl-mirror\">{{pinned ? 'push_pin' : 'menu'}}</mat-icon></button>\r\n </div>\r\n }\r\n @switch (subMenu) {\r\n @case ('new') {\r\n <bizdoc-new-menu (change)=\"closeSubMenu()\"></bizdoc-new-menu>\r\n }\r\n @case ('mailbox') {\r\n <bizdoc-folders-menu [collapsed]=\"subMenuMode === 'shrink'\" (change)=\"collapseSubMenu()\"></bizdoc-folders-menu>\r\n }\r\n @case ('admin') {\r\n <bizdoc-admin-menu [collapsed]=\"subMenuMode === 'shrink'\"></bizdoc-admin-menu>\r\n }\r\n @case ('reports') {\r\n <bizdoc-reports-menu [collapsed]=\"subMenuMode === 'shrink'\" (change)=\"collapseSubMenu()\"></bizdoc-reports-menu>\r\n }\r\n @case ('cube') {\r\n <bizdoc-cube-menu [collapsed]=\"subMenuMode === 'shrink'\" (change)=\"collapseSubMenu()\"></bizdoc-cube-menu>\r\n }\r\n }\r\n </div>\r\n }\r\n @if (isDialogMode) {\r\n <div class=\"backdrop\"></div>\r\n }\r\n</div>\r\n<div class=\"main\">\r\n <!-- title -->\r\n <div class=\"row header\" [@title]=\"main.titleVariant\">\r\n <h1>\r\n @if (main.swap) {\r\n <button mat-icon-button (click)=\"main.back()\" [bizdocTooltip]=\"'Back'|translate\"><mat-icon class=\"mat-icon-rtl-mirror\">arrow_circle_left</mat-icon></button>\r\n }\r\n @for (p of main.panes; track p.id; let first = $first) {\r\n @if (!first) {\r\n <span class=\"breadcrumbs\">\\</span>\r\n }\r\n {{p.title}}\r\n }\r\n @if (guide) {\r\n <button mat-icon-button (click)=\"openGuide(guide)\" [bizdocTooltip]=\"'Help'|translate\"><mat-icon>help</mat-icon></button>\r\n }\r\n </h1>\r\n <span class=\"divider\">\r\n </span>\r\n <!--search-->\r\n <input type=\"text\"\r\n [@search]=\"searching\"\r\n (@search.done)=\"searching && focus()\"\r\n #input\r\n (keydown.escape)=\"collapse($event)\"\r\n [attr.aria-label]=\"'Search'|translate\"\r\n [formControl]=\"search\"\r\n [matAutocomplete]=\"auto\" class=\"search-box\">\r\n <mat-autocomplete autoActiveFirstOption #auto=\"matAutocomplete\" (optionSelected)=\"goto($event)\" [displayWith]=\"displayWith\">\r\n @for (o of results | async; track o) {\r\n <mat-option [value]=\"o\">\r\n <ng-container (attached)=\"onAttached(o, $event)\" [cdkPortalOutlet]=\"o.portal\"></ng-container>\r\n </mat-option>\r\n }\r\n </mat-autocomplete>\r\n <button mat-icon-button (click)=\"toggle($event)\" [bizdocTooltip]=\"'Search'|translate\" class=\"tool\"><mat-icon>search</mat-icon></button>\r\n <!--notifications-->\r\n <button mat-icon-button (click)=\"openNotifs($event)\" [bizdocTooltip]=\"'Notifications'|translate\" bizdocTooltipPosition=\"start\" class=\"tool\"\r\n [attr.aria-label]=\"'Notifications'| translate\"\r\n data-help=\"notifications\">\r\n <mat-icon [matBadge]=\"profile.messagesCount\" [matBadgeHidden]=\"!profile.messagesCount\"\r\n matBadgeColor=\"accent\" aria-hidden=\"false\"\r\n [class.filled]=\"profile.messagesCount\">\r\n {{profile.options.notifications?.active === true ? 'notifications':'notifications_off'}}\r\n </mat-icon>\r\n </button>\r\n </div>\r\n <!--panes & tabs-->\r\n <bizdoc-panes-outlet (dialogChange)=\"isDialogMode = $event\" #main></bizdoc-panes-outlet>\r\n</div>\r\n", styles: [":host{display:flex;height:100%}::ng-deep .nav-collapsed .mdc-list-item{padding-right:0}::ng-deep [dir=rtl] .nav-collapsed .mdc-list-item{padding-left:0}.nav-menu{z-index:1}.nav-menu .sub-menu{min-width:210px;display:block;z-index:1;overflow-x:hidden;align-self:stretch}.nav-menu .sub-menu .action{display:flex;-ms-flex-direction:row-reverse;-webkit-flex-direction:row-reverse;flex-direction:row-reverse}.nav-menu .new-container{margin:8px 8px 0;text-align:center}.nav-menu .new-container button{min-width:35px;padding:0 14px;height:40px}.nav-menu .new-container button .mat-icon{margin-right:2px;margin-left:2px}.nav-menu .nav-icon{display:none}.nav-menu.nav-collapsed .nav-menu{padding:0}.nav-menu.nav-collapsed .nav-icon{display:unset}.nav-menu.nav-collapsed .nav-label{display:none}.nav-menu.nav-collapsed .sign-in{-ms-flex-direction:column;-webkit-flex-direction:column;flex-direction:column;align-items:center}.nav-menu .sign-in{display:flex;-ms-flex-direction:row;-webkit-flex-direction:row;flex-direction:row;overflow:hidden;margin-bottom:5px;align-items:baseline}.backdrop{position:absolute;z-index:200;width:100%;height:100%;display:block;background:#424242;opacity:.8}.main{flex:1;overflow-x:hidden;display:flex;-ms-flex-direction:column;-webkit-flex-direction:column;flex-direction:column}.main .header{margin:4px 4px 0 0;align-items:center;min-width:max-content}.main .header h1{font-size:xx-large;margin:12px;font-weight:100}.main .header h1 button{vertical-align:middle}.main .header h1 .breadcrumbs{font-size:smaller}.main .header .search-box{font-size:large}\n"], dependencies: [{ kind: "directive", type: i1$2.DefaultValueAccessor, selector: "input:not([type=checkbox])[formControlName],textarea[formControlName],input:not([type=checkbox])[formControl],textarea[formControl],input:not([type=checkbox])[ngModel],textarea[ngModel],[ngDefaultControl]" }, { kind: "directive", type: i1$2.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i1$2.FormControlDirective, selector: "[formControl]", inputs: ["formControl", "disabled", "ngModel"], outputs: ["ngModelChange"], exportAs: ["ngForm"] }, { kind: "directive", type: i5.CdkPortalOutlet, selector: "[cdkPortalOutlet]", inputs: ["cdkPortalOutlet"], outputs: ["attached"], exportAs: ["cdkPortalOutlet"] }, { kind: "directive", type: i7$1.MatBadge, selector: "[matBadge]", inputs: ["matBadgeColor", "matBadgeOverlap", "matBadgeDisabled", "matBadgePosition", "matBadge", "matBadgeDescription", "matBadgeSize", "matBadgeHidden"] }, { kind: "component", type: i2$5.MatNavList, selector: "mat-nav-list", exportAs: ["matNavList"] }, { kind: "component", type: i2$5.MatListItem, selector: "mat-list-item, a[mat-list-item], button[mat-list-item]", inputs: ["activated"], exportAs: ["matListItem"] }, { kind: "directive", type: i2$5.MatListItemIcon, selector: "[matListItemIcon]" }, { kind: "component", type: i2$5.MatDivider, selector: "mat-divider", inputs: ["vertical", "inset"] }, { kind: "directive", type: i2$5.MatListItemTitle, selector: "[matListItemTitle]" }, { kind: "component", type: i2$6.MatAutocomplete, selector: "mat-autocomplete", inputs: ["aria-label", "aria-labelledby", "displayWith", "autoActiveFirstOption", "autoSelectActiveOption", "requireSelection", "panelWidth", "disableRipple", "class", "hideSingleSelectionIndicator"], outputs: ["optionSelected", "opened", "closed", "optionActivated"], exportAs: ["matAutocomplete"] }, { kind: "component", type: i2$6.MatOption, selector: "mat-option", inputs: ["value", "id", "disabled"], outputs: ["onSelectionChange"], exportAs: ["matOption"] }, { kind: "directive", type: i2$6.MatAutocompleteTrigger, selector: "input[matAutocomplete], textarea[matAutocomplete]", inputs: ["matAutocomplete", "matAutocompletePosition", "matAutocompleteConnectedTo", "autocomplete", "matAutocompleteDisabled"], exportAs: ["matAutocompleteTrigger"] }, { kind: "component", type: i8.MatButton, selector: " button[matButton], a[matButton], button[mat-button], button[mat-raised-button], button[mat-flat-button], button[mat-stroked-button], a[mat-button], a[mat-raised-button], a[mat-flat-button], a[mat-stroked-button] ", inputs: ["matButton"], exportAs: ["matButton", "matAnchor"] }, { kind: "component", type: i8.MatIconButton, selector: "button[mat-icon-button], a[mat-icon-button], button[matIconButton], a[matIconButton]", exportAs: ["matButton", "matAnchor"] }, { kind: "component", type: i7.MatIcon, selector: "mat-icon", inputs: ["color", "inline", "svgIcon", "fontSet", "fontIcon"], exportAs: ["matIcon"] }, { kind: "directive", type: MatIconAnimate, selector: "[matAnimate]" }, { kind: "directive", type: TooltipDirective, selector: "[bizdocTooltip]", inputs: ["bizdocTooltip", "bizdocTooltipTemplate", "bizdocTooltipContext", "bizdocTooltipPosition", "bizdocTooltipDuration", "bizdocTooltipDisabled"] }, { kind: "component", type: AdminMenuComponent, selector: "bizdoc-admin-menu", inputs: ["collapsed"] }, { kind: "component", type: SlotsComponent, selector: "bizdoc-panes-outlet", outputs: ["dialogChange"] }, { kind: "component", type: CubeMenuComponent, selector: "bizdoc-cube-menu", inputs: ["collapsed"], outputs: ["change"] }, { kind: "component", type: ReportsMenuComponent, selector: "bizdoc-reports-menu", inputs: ["collapsed"], outputs: ["change"] }, { kind: "component", type: FoldersMenuComponent, selector: "bizdoc-folders-menu", inputs: ["collapsed"], outputs: ["change"] }, { kind: "component", type: ComposeMenuComponent, selector: "bizdoc-new-menu", outputs: ["change"] }, { kind: "pipe", type: i9.AsyncPipe, name: "async" }, { kind: "pipe", type: TranslatePipe, name: "translate" }], animations: [subMenuAnimation, panesTitleAnimation, searchAnimation] }); }
|
21592
21605
|
}
|
21593
21606
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.1.2", ngImport: i0, type: HomeComponent, decorators: [{
|
21594
21607
|
type: Component,
|
21595
|
-
args: [{ standalone: false, selector: 'bizdoc-home', host: { class: 'mat-app-background' }, animations: [subMenuAnimation, panesTitleAnimation, searchAnimation], template: "<!-- menu -->\r\n<div [class.nav-collapsed]=\"collapsed\" [class.nav-open]=\"subMenu\"\r\n [class.dialog]=\"isDialogMode\"\r\n class=\"nav-menu row\">\r\n\r\n <div class=\"column\">\r\n <!--@if(appLogo){\r\n <img [src]=\"appLogo\" class=\"app-logo\" />\r\n }-->\r\n @if (forms.length) {\r\n <div [class.active]=\"activeMenu === 'new'\" class=\"new-container\">\r\n <button mat-raised-button\r\n [bizdocTooltip]=\"'Compose'|translate\" bizdocTooltipPosition=\"end\" [bizdocTooltipDisabled]=\"!collapsed\"\r\n (click)=\"openNew()\" [disabled]=\"creating\"\r\n [attr.aria-label]=\"'Compose'| translate\" color=\"primary\" data-help=\"compose\">\r\n <mat-icon>add</mat-icon>\r\n <span class=\"nav-label\">{{'Compose'| translate}}</span>\r\n </button>\r\n </div>\r\n }\r\n <mat-nav-list>\r\n <mat-list-item class=\"nav-menu\" [attr.aria-label]=\"'Dashboard' | translate\"\r\n (click)=\"nav('dashboard')\" [class.active]=\"activeMenu === 'dashboard'\"\r\n data-help=\"dashboard\"\r\n [bizdocTooltip]=\"'Dashboard'|translate\" bizdocTooltipPosition=\"end\" [bizdocTooltipDisabled]=\"!collapsed\">\r\n <mat-icon matListItemIcon>apps</mat-icon><span class=\"nav-label\" matListItemTitle>{{'Dashboard' | translate}}</span>\r\n </mat-list-item>\r\n <mat-list-item class=\"nav-menu\" (click)=\"openMailbox()\" [bizdocTooltip]=\"'Mailbox'|translate\" bizdocTooltipPosition=\"end\" [bizdocTooltipDisabled]=\"!collapsed\"\r\n [class.active]=\"activeMenu === 'mailbox'\"\r\n [attr.aria-label]=\"'Mailbox' | translate\" data-help=\"folders\">\r\n <mat-icon matListItemIcon [matBadge]=\"profile.inboxCount\" [matBadgeHidden]=\"!profile.inboxCount\" matBadgeColor=\"accent\" aria-hidden=\"false\">inbox</mat-icon>\r\n <span class=\"nav-label\" matListItemTitle>{{'Mailbox' | translate}}</span>\r\n </mat-list-item>\r\n @if (schedulerEnabled) {\r\n <mat-list-item class=\"nav-menu\" [attr.aria-label]=\"'Scheduler' | translate\"\r\n (click)=\"nav('schedule')\" [class.active]=\"activeMenu === 'schedule'\"\r\n [bizdocTooltip]=\"'Scheduler'|translate\" bizdocTooltipPosition=\"end\" [bizdocTooltipDisabled]=\"!collapsed\">\r\n <mat-icon matListItemIcon class=\"mat-icon-rtl-mirror\">date_range</mat-icon><span class=\"nav-label\" matListItemTitle>{{ 'Scheduler' | translate}}</span>\r\n </mat-list-item>\r\n }\r\n @if (chatEnabled) {\r\n <mat-list-item class=\"nav-menu\" data-help=\"chat\" [attr.aria-label]=\"'Chat' | translate\"\r\n (click)=\"nav('contacts')\" [class.active]=\"activeMenu === 'contacts'\"\r\n [bizdocTooltip]=\"'Chat'|translate\" bizdocTooltipPosition=\"end\" [bizdocTooltipDisabled]=\"!collapsed\">\r\n <mat-icon matListItemIcon [matBadge]=\"profile.conversationsCount\" [matBadgeHidden]=\"!profile.conversationsCount\" matBadgeColor=\"accent\" aria-hidden=\"false\">chat</mat-icon>\r\n <span class=\"nav-label\" matListItemTitle>{{ 'Chat' | translate}}</span>\r\n </mat-list-item>\r\n }\r\n <mat-divider></mat-divider>\r\n @if (enableAnalysis && profile.cubes.length) {\r\n <mat-list-item class=\"nav-menu\" (click)=\"openSubMenu('cube')\"\r\n [class.active]=\"activeMenu === 'cube'\"\r\n [bizdocTooltip]=\"'Cube'|translate\" bizdocTooltipPosition=\"end\" [bizdocTooltipDisabled]=\"!collapsed\"\r\n data-help=\"cube\" [attr.aria-label]=\"'Cube' | translate\">\r\n <mat-icon matListItemIcon>equalizer</mat-icon><span class=\"nav-label\" matListItemTitle>{{'Cube' | translate}}</span>\r\n </mat-list-item>\r\n }\r\n @if (profile.reports.length) {\r\n <mat-list-item class=\"nav-menu\" (click)=\"openSubMenu('reports')\"\r\n [class.active]=\"activeMenu === 'reports'\"\r\n [bizdocTooltip]=\"'Reports'|translate\" bizdocTooltipPosition=\"end\" [bizdocTooltipDisabled]=\"!collapsed\" data-help=\"reports\" [attr.aria-label]=\"'Reports' | translate\">\r\n <mat-icon matListItemIcon>list_alt</mat-icon><span class=\"nav-label\" matListItemTitle>{{'Reports' | translate}}</span>\r\n </mat-list-item>\r\n }\r\n @if (isSysAdmin) {\r\n <mat-divider></mat-divider>\r\n <mat-list-item class=\"nav-menu\" (click)=\"openSubMenu('admin')\"\r\n [class.active]=\"activeMenu === 'admin'\"\r\n [bizdocTooltip]=\"'System'|translate\" bizdocTooltipPosition=\"end\" [bizdocTooltipDisabled]=\"!collapsed\" [attr.aria-label]=\"'System' | translate\">\r\n <mat-icon matListItemIcon>device_hub</mat-icon>\r\n <span class=\"nav-label\" matListItemTitle>{{'Workflow' | translate}}</span>\r\n </mat-list-item>\r\n }\r\n </mat-nav-list>\r\n <span class=\"divider\"></span>\r\n <!--<lottie name=\"lf30_editor_qr7zgmcs\" *ngIf=\"loading\"></lottie>-->\r\n <div class=\"sign-in\">\r\n <button mat-icon-button data-help=\"settings\" [bizdocTooltip]=\"'Settings' | translate\" bizdocTooltipPosition=\"above\"\r\n [attr.aria-label]=\"'Settings' | translate\" (click)=\"options($event)\">\r\n <mat-icon matAnimate=\"rotate\">settingson</mat-icon>\r\n </button>\r\n @if(canSignOut) {\r\n <span class=\"divider\"></span>\r\n <button mat-icon-button data-help=\"sign-in\" [attr.aria-label]=\"'Power' | translate\" (click)=\"signout($event)\" [bizdocTooltip]=\"'Exit'|translate\" bizdocTooltipPosition=\"above\">\r\n <mat-icon class=\"mat-icon-rtl-mirror\">logout</mat-icon>\r\n </button>\r\n }\r\n </div>\r\n </div>\r\n <!-- -->\r\n @if (subMenu) {\r\n <div class=\"sub-menu\" (mouseleave)=\"collapseSubMenu()\" [@subMenu]=\"subMenuMode\" (@subMenu.done)=\"resize()\">\r\n @if (subMenu !== 'new') {\r\n <div class=\"action\">\r\n <button mat-icon-button (click)=\"togglePinned()\" [bizdocTooltip]=\"(pinned?'Collapse':'Expand')|translate\"><mat-icon class=\"mat-icon-rtl-mirror\">{{pinned ? 'push_pin' : 'menu'}}</mat-icon></button>\r\n </div>\r\n }\r\n @switch (subMenu) {\r\n @case ('new') {\r\n <bizdoc-new-menu (change)=\"closeSubMenu()\"></bizdoc-new-menu>\r\n }\r\n @case ('mailbox') {\r\n <bizdoc-folders-menu [collapsed]=\"subMenuMode === 'shrink'\" (change)=\"collapseSubMenu()\"></bizdoc-folders-menu>\r\n }\r\n @case ('admin') {\r\n <bizdoc-admin-menu [collapsed]=\"subMenuMode === 'shrink'\"></bizdoc-admin-menu>\r\n }\r\n @case ('reports') {\r\n <bizdoc-reports-menu [collapsed]=\"subMenuMode === 'shrink'\" (change)=\"collapseSubMenu()\"></bizdoc-reports-menu>\r\n }\r\n @case ('cube') {\r\n <bizdoc-cube-menu [collapsed]=\"subMenuMode === 'shrink'\" (change)=\"collapseSubMenu()\"></bizdoc-cube-menu>\r\n }\r\n }\r\n </div>\r\n }\r\n @if (isDialogMode) {\r\n <div class=\"backdrop\"></div>\r\n }\r\n</div>\r\n<div class=\"main\">\r\n <!-- title -->\r\n <div class=\"row header\" [@title]=\"main.titleVariant\">\r\n <h1>\r\n @if (main.swap) {\r\n <button mat-icon-button (click)=\"main.back()\" [bizdocTooltip]=\"'Back'|translate\"><mat-icon class=\"mat-icon-rtl-mirror\">arrow_circle_left</mat-icon></button>\r\n }\r\n @for (p of main.panes; track p.id; let first = $first) {\r\n @if (!first) {\r\n <span class=\"breadcrumbs\">\\</span>\r\n }\r\n {{p.title}}\r\n }\r\n @if (guide) {\r\n <button mat-icon-button (click)=\"openGuide(guide)\" [bizdocTooltip]=\"'Help'|translate\"><mat-icon>help</mat-icon></button>\r\n }\r\n </h1>\r\n <span class=\"divider\">\r\n </span>\r\n <!--search-->\r\n <input type=\"text\"\r\n [@search]=\"searching\"\r\n (@search.done)=\"searching && focus()\"\r\n #input\r\n (keydown.escape)=\"collapse($event)\"\r\n [attr.aria-label]=\"'Search'|translate\"\r\n [formControl]=\"search\"\r\n [matAutocomplete]=\"auto\" class=\"search-box\">\r\n <mat-autocomplete autoActiveFirstOption #auto=\"matAutocomplete\" (optionSelected)=\"goto($event)\" [displayWith]=\"displayWith\">\r\n @for (o of results | async; track o) {\r\n <mat-option [value]=\"o\">\r\n <ng-container (attached)=\"onAttached(o, $event)\" [cdkPortalOutlet]=\"o.portal\"></ng-container>\r\n </mat-option>\r\n }\r\n </mat-autocomplete>\r\n <button mat-icon-button (click)=\"toggle($event)\" [bizdocTooltip]=\"'Search'|translate\" class=\"tool\"><mat-icon>search</mat-icon></button>\r\n <!--notifications-->\r\n <button mat-icon-button (click)=\"openNotifs($event)\" [bizdocTooltip]=\"'Notifications'|translate\" bizdocTooltipPosition=\"start\" class=\"tool\"\r\n [attr.aria-label]=\"'Notifications'| translate\"\r\n data-help=\"notifications\">\r\n <mat-icon [matBadge]=\"profile.messagesCount\" [matBadgeHidden]=\"!profile.messagesCount\"\r\n matBadgeColor=\"accent\" aria-hidden=\"false\"\r\n [class.filled]=\"profile.messagesCount\">\r\n {{profile.options.notifications?.active === true ? 'notifications':'notifications_off'}}\r\n </mat-icon>\r\n </button>\r\n </div>\r\n <!--panes & tabs-->\r\n <bizdoc-panes-outlet (dialogChange)=\"isDialogMode = $event\" #main></bizdoc-panes-outlet>\r\n</div>\r\n", styles: [":host{display:flex;height:100%}::ng-deep .nav-collapsed .mdc-list-item{padding-right:0}::ng-deep [dir=rtl] .nav-collapsed .mdc-list-item{padding-left:0}.nav-menu{z-index:1}.nav-menu .sub-menu{min-width:210px;display:block;z-index:1;overflow-x:hidden;align-self:stretch}.nav-menu .sub-menu .action{display:flex;-ms-flex-direction:row-reverse;-webkit-flex-direction:row-reverse;flex-direction:row-reverse}.nav-menu .new-container{margin:8px 8px 0;text-align:center}.nav-menu .new-container button{min-width:35px;padding:0 14px;height:40px}.nav-menu .new-container button .mat-icon{margin-right:2px;margin-left:2px}.nav-menu .nav-icon{display:none}.nav-menu.nav-collapsed .nav-menu{padding:0}.nav-menu.nav-collapsed .nav-icon{display:unset}.nav-menu.nav-collapsed .nav-label{display:none}.nav-menu.nav-collapsed .sign-in{-ms-flex-direction:column;-webkit-flex-direction:column;flex-direction:column;align-items:center}.nav-menu .sign-in{display:flex;-ms-flex-direction:row;-webkit-flex-direction:row;flex-direction:row;overflow:hidden;margin-bottom:5px;align-items:baseline}.backdrop{position:absolute;z-index:200;width:100%;height:100%;display:block;background:#424242;opacity:.8}.main{flex:1;overflow-x:hidden;display:flex;-ms-flex-direction:column;-webkit-flex-direction:column;flex-direction:column}.main .header{margin:4px 4px 0 0;align-items:center;min-width:max-content}.main .header h1{font-size:xx-large;margin:12px;font-weight:100}.main .header h1 button{vertical-align:middle}.main .header h1 .breadcrumbs{font-size:smaller}.main .header .search-box{font-size:large}\n"] }]
|
21608
|
+
args: [{ standalone: false, selector: 'bizdoc-home', host: { class: 'mat-app-background' }, animations: [subMenuAnimation, panesTitleAnimation, searchAnimation], template: "<!-- menu -->\r\n<div [class.nav-collapsed]=\"collapsed\" [class.nav-open]=\"subMenu\"\r\n [class.dialog]=\"isDialogMode\"\r\n class=\"nav-menu row\">\r\n\r\n <div class=\"column\">\r\n <!--@if(appLogo){\r\n <img [src]=\"appLogo\" class=\"app-logo\" />\r\n }-->\r\n @if (forms.length) {\r\n <div [class.active]=\"activeMenu === 'new'\" class=\"new-container\">\r\n <button mat-raised-button\r\n [bizdocTooltip]=\"'Compose'|translate\" bizdocTooltipPosition=\"end\" [bizdocTooltipDisabled]=\"!collapsed\"\r\n (click)=\"openNew()\" [disabled]=\"creating\"\r\n [attr.aria-label]=\"'Compose'| translate\" color=\"primary\" data-help=\"compose\">\r\n <mat-icon>add</mat-icon>\r\n <span class=\"nav-label\">{{'Compose'| translate}}</span>\r\n </button>\r\n </div>\r\n }\r\n <mat-nav-list>\r\n <mat-list-item class=\"nav-menu\" [attr.aria-label]=\"'Dashboard' | translate\"\r\n (click)=\"nav('dashboard')\" [class.active]=\"activeMenu === 'dashboard'\"\r\n data-help=\"dashboard\"\r\n [bizdocTooltip]=\"'Dashboard'|translate\" bizdocTooltipPosition=\"end\" [bizdocTooltipDisabled]=\"!collapsed\">\r\n <mat-icon matListItemIcon>apps</mat-icon><span class=\"nav-label\" matListItemTitle>{{'Dashboard' | translate}}</span>\r\n </mat-list-item>\r\n <mat-list-item class=\"nav-menu\" (click)=\"openMailbox()\" [bizdocTooltip]=\"'Mailbox'|translate\" bizdocTooltipPosition=\"end\" [bizdocTooltipDisabled]=\"!collapsed\"\r\n [class.active]=\"activeMenu === 'mailbox'\"\r\n [attr.aria-label]=\"'Mailbox' | translate\" data-help=\"folders\">\r\n <mat-icon matListItemIcon [matBadge]=\"profile.inboxCount\" [matBadgeHidden]=\"!profile.inboxCount\" matBadgeColor=\"accent\" aria-hidden=\"false\">inbox</mat-icon>\r\n <span class=\"nav-label\" matListItemTitle>{{'Mailbox' | translate}}</span>\r\n </mat-list-item>\r\n @if (schedulerEnabled) {\r\n <mat-list-item class=\"nav-menu\" [attr.aria-label]=\"'Scheduler' | translate\"\r\n (click)=\"nav('schedule')\" [class.active]=\"activeMenu === 'schedule'\"\r\n [bizdocTooltip]=\"'Scheduler'|translate\" bizdocTooltipPosition=\"end\" [bizdocTooltipDisabled]=\"!collapsed\">\r\n <mat-icon matListItemIcon class=\"mat-icon-rtl-mirror\">date_range</mat-icon><span class=\"nav-label\" matListItemTitle>{{ 'Scheduler' | translate}}</span>\r\n </mat-list-item>\r\n }\r\n @if (chatEnabled) {\r\n <mat-list-item class=\"nav-menu\" data-help=\"chat\" [attr.aria-label]=\"'Chat' | translate\"\r\n (click)=\"nav('contacts')\" [class.active]=\"activeMenu === 'contacts'\"\r\n [bizdocTooltip]=\"'Chat'|translate\" bizdocTooltipPosition=\"end\" [bizdocTooltipDisabled]=\"!collapsed\">\r\n <mat-icon matListItemIcon [matBadge]=\"profile.conversationsCount\" [matBadgeHidden]=\"!profile.conversationsCount\" matBadgeColor=\"accent\" aria-hidden=\"false\">chat</mat-icon>\r\n <span class=\"nav-label\" matListItemTitle>{{ 'Chat' | translate}}</span>\r\n </mat-list-item>\r\n }\r\n <mat-divider></mat-divider>\r\n @if (enableAnalysis && profile.cubes.length) {\r\n <mat-list-item class=\"nav-menu\" (click)=\"openSubMenu('cube')\"\r\n [class.active]=\"activeMenu === 'cube'\"\r\n [bizdocTooltip]=\"'Cube'|translate\" bizdocTooltipPosition=\"end\" [bizdocTooltipDisabled]=\"!collapsed\"\r\n data-help=\"cube\" [attr.aria-label]=\"'Cube' | translate\">\r\n <mat-icon matListItemIcon>equalizer</mat-icon><span class=\"nav-label\" matListItemTitle>{{'Cube' | translate}}</span>\r\n </mat-list-item>\r\n }\r\n @if (profile.reports.length) {\r\n <mat-list-item class=\"nav-menu\" (click)=\"openSubMenu('reports')\"\r\n [class.active]=\"activeMenu === 'reports'\"\r\n [bizdocTooltip]=\"'Reports'|translate\" bizdocTooltipPosition=\"end\" [bizdocTooltipDisabled]=\"!collapsed\" data-help=\"reports\" [attr.aria-label]=\"'Reports' | translate\">\r\n <mat-icon matListItemIcon>list_alt</mat-icon><span class=\"nav-label\" matListItemTitle>{{'Reports' | translate}}</span>\r\n </mat-list-item>\r\n }\r\n @if (isSysAdmin) {\r\n <mat-divider></mat-divider>\r\n <mat-list-item class=\"nav-menu\" (click)=\"openSubMenu('admin')\"\r\n [class.active]=\"activeMenu === 'admin'\"\r\n [bizdocTooltip]=\"'Tools'|translate\" bizdocTooltipPosition=\"end\" [bizdocTooltipDisabled]=\"!collapsed\" [attr.aria-label]=\"'System' | translate\">\r\n <mat-icon matListItemIcon>build</mat-icon>\r\n <span class=\"nav-label\" matListItemTitle>{{'Workflow' | translate}}</span>\r\n </mat-list-item>\r\n }\r\n </mat-nav-list>\r\n <span class=\"divider\"></span>\r\n <!--<lottie name=\"lf30_editor_qr7zgmcs\" *ngIf=\"loading\"></lottie>-->\r\n <div class=\"sign-in\">\r\n <button mat-icon-button data-help=\"settings\" [bizdocTooltip]=\"'Settings' | translate\" bizdocTooltipPosition=\"above\"\r\n [attr.aria-label]=\"'Settings' | translate\" (click)=\"options($event)\">\r\n <mat-icon matAnimate=\"rotate\">settingson</mat-icon>\r\n </button>\r\n @if(canSignOut) {\r\n <span class=\"divider\"></span>\r\n <button mat-icon-button data-help=\"sign-in\" [attr.aria-label]=\"'Power' | translate\" (click)=\"signout($event)\" [bizdocTooltip]=\"'Exit'|translate\" bizdocTooltipPosition=\"above\">\r\n <mat-icon class=\"mat-icon-rtl-mirror\">logout</mat-icon>\r\n </button>\r\n }\r\n </div>\r\n </div>\r\n <!-- -->\r\n @if (subMenu) {\r\n <div class=\"sub-menu\" (mouseleave)=\"collapseSubMenu()\" [@subMenu]=\"subMenuMode\" (@subMenu.done)=\"resize()\">\r\n @if (subMenu !== 'new') {\r\n <div class=\"action\">\r\n <button mat-icon-button (click)=\"togglePinned()\" [bizdocTooltip]=\"(pinned?'Collapse':'Expand')|translate\"><mat-icon class=\"mat-icon-rtl-mirror\">{{pinned ? 'push_pin' : 'menu'}}</mat-icon></button>\r\n </div>\r\n }\r\n @switch (subMenu) {\r\n @case ('new') {\r\n <bizdoc-new-menu (change)=\"closeSubMenu()\"></bizdoc-new-menu>\r\n }\r\n @case ('mailbox') {\r\n <bizdoc-folders-menu [collapsed]=\"subMenuMode === 'shrink'\" (change)=\"collapseSubMenu()\"></bizdoc-folders-menu>\r\n }\r\n @case ('admin') {\r\n <bizdoc-admin-menu [collapsed]=\"subMenuMode === 'shrink'\"></bizdoc-admin-menu>\r\n }\r\n @case ('reports') {\r\n <bizdoc-reports-menu [collapsed]=\"subMenuMode === 'shrink'\" (change)=\"collapseSubMenu()\"></bizdoc-reports-menu>\r\n }\r\n @case ('cube') {\r\n <bizdoc-cube-menu [collapsed]=\"subMenuMode === 'shrink'\" (change)=\"collapseSubMenu()\"></bizdoc-cube-menu>\r\n }\r\n }\r\n </div>\r\n }\r\n @if (isDialogMode) {\r\n <div class=\"backdrop\"></div>\r\n }\r\n</div>\r\n<div class=\"main\">\r\n <!-- title -->\r\n <div class=\"row header\" [@title]=\"main.titleVariant\">\r\n <h1>\r\n @if (main.swap) {\r\n <button mat-icon-button (click)=\"main.back()\" [bizdocTooltip]=\"'Back'|translate\"><mat-icon class=\"mat-icon-rtl-mirror\">arrow_circle_left</mat-icon></button>\r\n }\r\n @for (p of main.panes; track p.id; let first = $first) {\r\n @if (!first) {\r\n <span class=\"breadcrumbs\">\\</span>\r\n }\r\n {{p.title}}\r\n }\r\n @if (guide) {\r\n <button mat-icon-button (click)=\"openGuide(guide)\" [bizdocTooltip]=\"'Help'|translate\"><mat-icon>help</mat-icon></button>\r\n }\r\n </h1>\r\n <span class=\"divider\">\r\n </span>\r\n <!--search-->\r\n <input type=\"text\"\r\n [@search]=\"searching\"\r\n (@search.done)=\"searching && focus()\"\r\n #input\r\n (keydown.escape)=\"collapse($event)\"\r\n [attr.aria-label]=\"'Search'|translate\"\r\n [formControl]=\"search\"\r\n [matAutocomplete]=\"auto\" class=\"search-box\">\r\n <mat-autocomplete autoActiveFirstOption #auto=\"matAutocomplete\" (optionSelected)=\"goto($event)\" [displayWith]=\"displayWith\">\r\n @for (o of results | async; track o) {\r\n <mat-option [value]=\"o\">\r\n <ng-container (attached)=\"onAttached(o, $event)\" [cdkPortalOutlet]=\"o.portal\"></ng-container>\r\n </mat-option>\r\n }\r\n </mat-autocomplete>\r\n <button mat-icon-button (click)=\"toggle($event)\" [bizdocTooltip]=\"'Search'|translate\" class=\"tool\"><mat-icon>search</mat-icon></button>\r\n <!--notifications-->\r\n <button mat-icon-button (click)=\"openNotifs($event)\" [bizdocTooltip]=\"'Notifications'|translate\" bizdocTooltipPosition=\"start\" class=\"tool\"\r\n [attr.aria-label]=\"'Notifications'| translate\"\r\n data-help=\"notifications\">\r\n <mat-icon [matBadge]=\"profile.messagesCount\" [matBadgeHidden]=\"!profile.messagesCount\"\r\n matBadgeColor=\"accent\" aria-hidden=\"false\"\r\n [class.filled]=\"profile.messagesCount\">\r\n {{profile.options.notifications?.active === true ? 'notifications':'notifications_off'}}\r\n </mat-icon>\r\n </button>\r\n </div>\r\n <!--panes & tabs-->\r\n <bizdoc-panes-outlet (dialogChange)=\"isDialogMode = $event\" #main></bizdoc-panes-outlet>\r\n</div>\r\n", styles: [":host{display:flex;height:100%}::ng-deep .nav-collapsed .mdc-list-item{padding-right:0}::ng-deep [dir=rtl] .nav-collapsed .mdc-list-item{padding-left:0}.nav-menu{z-index:1}.nav-menu .sub-menu{min-width:210px;display:block;z-index:1;overflow-x:hidden;align-self:stretch}.nav-menu .sub-menu .action{display:flex;-ms-flex-direction:row-reverse;-webkit-flex-direction:row-reverse;flex-direction:row-reverse}.nav-menu .new-container{margin:8px 8px 0;text-align:center}.nav-menu .new-container button{min-width:35px;padding:0 14px;height:40px}.nav-menu .new-container button .mat-icon{margin-right:2px;margin-left:2px}.nav-menu .nav-icon{display:none}.nav-menu.nav-collapsed .nav-menu{padding:0}.nav-menu.nav-collapsed .nav-icon{display:unset}.nav-menu.nav-collapsed .nav-label{display:none}.nav-menu.nav-collapsed .sign-in{-ms-flex-direction:column;-webkit-flex-direction:column;flex-direction:column;align-items:center}.nav-menu .sign-in{display:flex;-ms-flex-direction:row;-webkit-flex-direction:row;flex-direction:row;overflow:hidden;margin-bottom:5px;align-items:baseline}.backdrop{position:absolute;z-index:200;width:100%;height:100%;display:block;background:#424242;opacity:.8}.main{flex:1;overflow-x:hidden;display:flex;-ms-flex-direction:column;-webkit-flex-direction:column;flex-direction:column}.main .header{margin:4px 4px 0 0;align-items:center;min-width:max-content}.main .header h1{font-size:xx-large;margin:12px;font-weight:100}.main .header h1 button{vertical-align:middle}.main .header h1 .breadcrumbs{font-size:smaller}.main .header .search-box{font-size:large}\n"] }]
|
21596
21609
|
}], ctorParameters: () => [{ type: PanesRouter }, { type: SearchService }, { type: DocumentFactory }, { type: Popup }, { type: GuideService }, { type: AuthenticationImpl }, { type: undefined, decorators: [{
|
21597
21610
|
type: Inject,
|
21598
21611
|
args: [BIZDOC_CONFIG]
|
@@ -22053,7 +22066,7 @@ const PANES_CONFIG = [
|
|
22053
22066
|
]
|
22054
22067
|
}, {
|
22055
22068
|
path: 'trace',
|
22056
|
-
icon: '
|
22069
|
+
icon: 'network_node',
|
22057
22070
|
component: TracePaneComponent,
|
22058
22071
|
policy: OpenPolicy.Tab | OpenPolicy.Expandable
|
22059
22072
|
}, {
|
@@ -22077,7 +22090,7 @@ const PANES_CONFIG = [
|
|
22077
22090
|
policy: OpenPolicy.Tab | OpenPolicy.Expandable
|
22078
22091
|
}, {
|
22079
22092
|
path: 'trace',
|
22080
|
-
icon: '
|
22093
|
+
icon: 'network_node',
|
22081
22094
|
component: TracePaneComponent,
|
22082
22095
|
policy: OpenPolicy.Tab | OpenPolicy.Expandable
|
22083
22096
|
}, {
|