@bizdoc/core 1.14.2 → 1.14.4
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/assets/themes/brown.min.css +1 -1
- package/assets/themes/dark.min.css +1 -1
- package/assets/themes/deep-purple-light-blue.min.css +1 -1
- package/assets/themes/deep-purple-teal.min.css +1 -1
- package/assets/themes/default.min.css +1 -1
- package/assets/themes/green.min.css +1 -1
- package/assets/themes/indigo.min.css +1 -1
- package/esm2020/lib/admin/document-trace/document-trace.component.mjs +3 -1
- package/esm2020/lib/admin/profiler/outofoffice.component.mjs +106 -37
- package/esm2020/lib/admin/profiler/profiler.component.mjs +23 -16
- package/esm2020/lib/core/models.mjs +1 -1
- package/esm2020/lib/core/slots/pane-ref.mjs +39 -25
- package/esm2020/lib/core/slots/slots.component.mjs +27 -24
- package/esm2020/lib/core/translations.mjs +2 -2
- package/esm2020/lib/cube/cube-info.service.mjs +2 -2
- package/esm2020/lib/options/options.component.mjs +37 -16
- package/esm2020/lib/system.module.mjs +8 -7
- package/fesm2015/bizdoc-core.mjs +242 -131
- package/fesm2015/bizdoc-core.mjs.map +1 -1
- package/fesm2020/bizdoc-core.mjs +235 -127
- package/fesm2020/bizdoc-core.mjs.map +1 -1
- package/lib/admin/profiler/outofoffice.component.d.ts +29 -11
- package/lib/admin/profiler/profiler.component.d.ts +6 -3
- package/lib/core/models.d.ts +1 -1
- package/lib/core/slots/pane-ref.d.ts +25 -8
- package/lib/core/slots/slots.component.d.ts +1 -1
- package/lib/options/options.component.d.ts +4 -3
- package/lib/system.module.d.ts +1 -1
- package/package.json +16 -16
package/fesm2020/bizdoc-core.mjs
CHANGED
|
@@ -65,7 +65,7 @@ import { BrowserModule } from '@angular/platform-browser';
|
|
|
65
65
|
import * as i8$1 from '@angular/material/progress-spinner';
|
|
66
66
|
import { MatProgressSpinnerModule } from '@angular/material/progress-spinner';
|
|
67
67
|
import * as i23 from '@angular/flex-layout/flex';
|
|
68
|
-
import { ESCAPE, ENTER, COMMA, RIGHT_ARROW, LEFT_ARROW, UP_ARROW, DOWN_ARROW } from '@angular/cdk/keycodes';
|
|
68
|
+
import { ESCAPE, ENTER, COMMA, RIGHT_ARROW, LEFT_ARROW, UP_ARROW, DOWN_ARROW, SEMICOLON } from '@angular/cdk/keycodes';
|
|
69
69
|
import * as i8$2 from '@angular/material/snack-bar';
|
|
70
70
|
import { MatSnackBarModule, MAT_SNACK_BAR_DATA } from '@angular/material/snack-bar';
|
|
71
71
|
import * as i9$1 from '@angular/material/menu';
|
|
@@ -75,7 +75,7 @@ import { BrowserAnimationsModule } from '@angular/platform-browser/animations';
|
|
|
75
75
|
import * as i1$6 from '@angular/router';
|
|
76
76
|
import { NavigationStart as NavigationStart$1, ActivationEnd, RouterModule } from '@angular/router';
|
|
77
77
|
import * as i3$2 from '@angular/material/chips';
|
|
78
|
-
import { MatChipsModule, MatChipList } from '@angular/material/chips';
|
|
78
|
+
import { MatChipsModule, MatChipList, MatChipInput } from '@angular/material/chips';
|
|
79
79
|
import * as i22 from '@angular/cdk/drag-drop';
|
|
80
80
|
import { DragDropModule } from '@angular/cdk/drag-drop';
|
|
81
81
|
import { LayoutModule } from '@angular/cdk/layout';
|
|
@@ -2173,7 +2173,7 @@ const STRINGS = {
|
|
|
2173
2173
|
DeleteFileAsk: 'Are you sure you want to delete this attachment?',
|
|
2174
2174
|
DeleteCommentAsk: 'Are you sure you want to delete this comment?',
|
|
2175
2175
|
GrantAccess: 'Grant Access',
|
|
2176
|
-
GrantTip: 'May
|
|
2176
|
+
GrantTip: 'May view and take action on your behalf',
|
|
2177
2177
|
OutOfOfficeTip: 'Assign user on your absence',
|
|
2178
2178
|
Timeline: 'Timeline',
|
|
2179
2179
|
Back: 'Back',
|
|
@@ -6190,6 +6190,9 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.1", ngImpor
|
|
|
6190
6190
|
const QUERY_CHAR = ':', PATH_CHAR = ';', ARG_CHAR = '&', PANE_CHAR = '~';
|
|
6191
6191
|
const PANES_DATA = new InjectionToken('panes');
|
|
6192
6192
|
class NavigationBase {
|
|
6193
|
+
preventDefault() {
|
|
6194
|
+
this._preventDefault = true;
|
|
6195
|
+
}
|
|
6193
6196
|
}
|
|
6194
6197
|
class CollapseNavigation extends NavigationBase {
|
|
6195
6198
|
}
|
|
@@ -6210,15 +6213,29 @@ class NavigationSelected extends NavigationPaneBase {
|
|
|
6210
6213
|
}
|
|
6211
6214
|
class NavigationEnd extends NavigationPaneBase {
|
|
6212
6215
|
}
|
|
6216
|
+
class NavigationMode extends NavigationPaneBase {
|
|
6217
|
+
constructor(mode, pane) {
|
|
6218
|
+
super(pane);
|
|
6219
|
+
this.mode = mode;
|
|
6220
|
+
}
|
|
6221
|
+
}
|
|
6222
|
+
class NavigationFullscreen extends NavigationPaneBase {
|
|
6223
|
+
constructor(fullscreen, pane) {
|
|
6224
|
+
super(pane);
|
|
6225
|
+
this.fullscreen = fullscreen;
|
|
6226
|
+
}
|
|
6227
|
+
}
|
|
6228
|
+
class NavigationClose extends NavigationPaneBase {
|
|
6229
|
+
}
|
|
6213
6230
|
class ParamNavigation extends NavigationPaneBase {
|
|
6214
|
-
constructor(params,
|
|
6215
|
-
super(
|
|
6231
|
+
constructor(params, pane) {
|
|
6232
|
+
super(pane);
|
|
6216
6233
|
this.params = params;
|
|
6217
6234
|
}
|
|
6218
6235
|
}
|
|
6219
6236
|
class QueryParamNavigation extends NavigationPaneBase {
|
|
6220
|
-
constructor(queryParams,
|
|
6221
|
-
super(
|
|
6237
|
+
constructor(queryParams, pane) {
|
|
6238
|
+
super(pane);
|
|
6222
6239
|
this.queryParams = queryParams;
|
|
6223
6240
|
}
|
|
6224
6241
|
}
|
|
@@ -6232,11 +6249,13 @@ class PaneRef {
|
|
|
6232
6249
|
this._params$ = new BehaviorSubject({});
|
|
6233
6250
|
this._queryParams$ = new BehaviorSubject({});
|
|
6234
6251
|
this._resize$ = new BehaviorSubject({});
|
|
6252
|
+
this._events$ = new Subject();
|
|
6235
6253
|
this.expandable = true;
|
|
6236
|
-
const { data, params, queryParams, path, queryString, title, group, icon, help, guide, animation, fullscreen, expandable } = _options;
|
|
6237
|
-
this._mode$ = new BehaviorSubject(mode);
|
|
6238
|
-
this._fullscreen$ = new BehaviorSubject(fullscreen);
|
|
6254
|
+
const { stretch, data, params, queryParams, path, queryString, title, group, icon, help, guide, animation, fullscreen, expandable } = _options;
|
|
6239
6255
|
this._path = path || '';
|
|
6256
|
+
this._mode = mode;
|
|
6257
|
+
this._stretch = stretch;
|
|
6258
|
+
this._fullscreen = fullscreen;
|
|
6240
6259
|
this.title = title;
|
|
6241
6260
|
this.group = group;
|
|
6242
6261
|
this.guide = guide;
|
|
@@ -6250,15 +6269,8 @@ class PaneRef {
|
|
|
6250
6269
|
params && this._params$.next(params);
|
|
6251
6270
|
queryParams && this._queryParams$.next(queryParams);
|
|
6252
6271
|
}
|
|
6253
|
-
get injector() {
|
|
6254
|
-
|
|
6255
|
-
}
|
|
6256
|
-
get fullscreen() {
|
|
6257
|
-
return this._fullscreen$.value;
|
|
6258
|
-
}
|
|
6259
|
-
get fullscreenChange() {
|
|
6260
|
-
return this._fullscreen$.asObservable();
|
|
6261
|
-
}
|
|
6272
|
+
get injector() { return this._injector; }
|
|
6273
|
+
get fullscreen() { return this._fullscreen; }
|
|
6262
6274
|
get fullPath() { return this._path + (this._queryString ? (QUERY_CHAR + this._queryString) : ''); }
|
|
6263
6275
|
get instance() { return this._instance; }
|
|
6264
6276
|
get data() { return this._data$.value; }
|
|
@@ -6269,17 +6281,20 @@ class PaneRef {
|
|
|
6269
6281
|
get queryString() { return this._queryString; }
|
|
6270
6282
|
get queryParams() { return this._queryParams$.value; }
|
|
6271
6283
|
get queryParamsChange() { return this._queryParams$.asObservable(); }
|
|
6272
|
-
get
|
|
6284
|
+
get events() { return this._events$.asObservable(); }
|
|
6285
|
+
get closing() { return this.events.pipe(filter$1(e => e instanceof NavigationClose)); }
|
|
6286
|
+
get modeChange() { return this.events.pipe(filter$1(e => e instanceof NavigationMode)); }
|
|
6273
6287
|
;
|
|
6274
|
-
get
|
|
6288
|
+
get fullscreenChange() { return this.events.pipe(filter$1(e => e instanceof NavigationFullscreen)); }
|
|
6289
|
+
get path() { return this._path; }
|
|
6275
6290
|
;
|
|
6276
|
-
get mode() { return this._mode
|
|
6291
|
+
get mode() { return this._mode; }
|
|
6277
6292
|
;
|
|
6278
6293
|
get parent() { return this._options.parent; }
|
|
6279
6294
|
;
|
|
6280
|
-
get stretch() { return this.
|
|
6295
|
+
get stretch() { return this._stretch; }
|
|
6281
6296
|
;
|
|
6282
|
-
set stretch(val) { this.
|
|
6297
|
+
set stretch(val) { this._stretch = val; }
|
|
6283
6298
|
get dialog() { return this._options.dialog; }
|
|
6284
6299
|
;
|
|
6285
6300
|
get dismissable() { return this._options.dismissable; }
|
|
@@ -6307,9 +6322,8 @@ class PaneRef {
|
|
|
6307
6322
|
this._data$.complete();
|
|
6308
6323
|
this._params$.complete();
|
|
6309
6324
|
this._resize$.complete();
|
|
6325
|
+
this._events$.complete();
|
|
6310
6326
|
this._queryParams$.complete();
|
|
6311
|
-
this._fullscreen$.complete();
|
|
6312
|
-
this._mode$.complete();
|
|
6313
6327
|
}
|
|
6314
6328
|
}
|
|
6315
6329
|
|
|
@@ -17642,6 +17656,23 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.1", ngImpor
|
|
|
17642
17656
|
args: [{ selector: 'bizdoc-about', template: "<h2 mat-dialog-title>BizDoc v{{version}}</h2>\r\n<mat-dialog-content>\r\n <div *ngIf=\"license; else none\">\r\n <div [ngSwitch]=\"license.mode\">\r\n <div *ngSwitchCase=\"'Grace'\"> {{\"GraceLicense\" | translate : dayjs(license.expiration).toNow() }}</div>\r\n <div *ngSwitchCase=\"'Limited'\">{{'LimitLicense'|translate}}</div>\r\n <div *ngSwitchCase=\"'Expired'\">{{\"ExpiredLicense\" | translate : (license.expiration | amTimeAgo)}}</div>\r\n </div>\r\n <div *ngIf=\"license.companyName\" [innerHtml]='\"LicencedTo\" | translate : license.companyName'></div>\r\n </div>\r\n <br />\r\n <span>© Moding Ltd.</span>\r\n</mat-dialog-content>\r\n<mat-dialog-actions>\r\n <button mat-button mat-dialog-close>{{'OK'|translate}}</button>\r\n</mat-dialog-actions>\r\n<ng-template #none>\r\n <div>{{'EvaluationLicense' | translate}}</div>\r\n</ng-template>\r\n" }]
|
|
17643
17657
|
}], ctorParameters: function () { return [{ type: SessionService }]; } });
|
|
17644
17658
|
|
|
17659
|
+
class UserNamePipe {
|
|
17660
|
+
constructor(_accounts) {
|
|
17661
|
+
this._accounts = _accounts;
|
|
17662
|
+
}
|
|
17663
|
+
transform(value) {
|
|
17664
|
+
const subject = new BehaviorSubject(null);
|
|
17665
|
+
this._accounts.get(value).subscribe(u => subject.next(u.name));
|
|
17666
|
+
return subject;
|
|
17667
|
+
}
|
|
17668
|
+
}
|
|
17669
|
+
UserNamePipe.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.1", ngImport: i0, type: UserNamePipe, deps: [{ token: AccountService }], target: i0.ɵɵFactoryTarget.Pipe });
|
|
17670
|
+
UserNamePipe.ɵpipe = i0.ɵɵngDeclarePipe({ minVersion: "12.0.0", version: "13.3.1", ngImport: i0, type: UserNamePipe, name: "userName" });
|
|
17671
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.1", ngImport: i0, type: UserNamePipe, decorators: [{
|
|
17672
|
+
type: Pipe,
|
|
17673
|
+
args: [{ name: 'userName' }]
|
|
17674
|
+
}], ctorParameters: function () { return [{ type: AccountService }]; } });
|
|
17675
|
+
|
|
17645
17676
|
const OPTION_PANEL = new InjectionToken('options');
|
|
17646
17677
|
/** options component*/
|
|
17647
17678
|
class OptionsComponent {
|
|
@@ -17663,7 +17694,7 @@ class OptionsComponent {
|
|
|
17663
17694
|
this.language = this._fb.control(this._session.language);
|
|
17664
17695
|
this.aRIA = this._fb.control(this._session.aria);
|
|
17665
17696
|
this.languages = this._session.languages;
|
|
17666
|
-
this.gusers = this._fb.control(
|
|
17697
|
+
this.gusers = this._fb.control([]);
|
|
17667
17698
|
this.substitueId = this._fb.control(null);
|
|
17668
17699
|
this.form = this._fb.group({
|
|
17669
17700
|
notifications: this._fb.group({
|
|
@@ -17697,8 +17728,7 @@ class OptionsComponent {
|
|
|
17697
17728
|
users: this._fb.control(null, this._requiredValidator)
|
|
17698
17729
|
})
|
|
17699
17730
|
});
|
|
17700
|
-
this.separatorKeysCodes = [ENTER, COMMA];
|
|
17701
|
-
this._me = this._session.userId;
|
|
17731
|
+
this.separatorKeysCodes = [ENTER, COMMA, SEMICOLON];
|
|
17702
17732
|
this.display = (item) => {
|
|
17703
17733
|
return item ? item.name : null;
|
|
17704
17734
|
};
|
|
@@ -17734,17 +17764,33 @@ class OptionsComponent {
|
|
|
17734
17764
|
emails.controls['active'].valueChanges.pipe(takeUntil(this._destroy)).
|
|
17735
17765
|
subscribe(active => this._toggle(emails, active, 'mail', 'chat', 'notifications', 'events'));
|
|
17736
17766
|
grantAccess.controls['active'].valueChanges.pipe(takeUntil(this._destroy)).
|
|
17737
|
-
subscribe(active =>
|
|
17767
|
+
subscribe(active => {
|
|
17768
|
+
if (active) {
|
|
17769
|
+
this.gusers.enable();
|
|
17770
|
+
this.grantInput.focus();
|
|
17771
|
+
}
|
|
17772
|
+
else
|
|
17773
|
+
this.gusers.enable();
|
|
17774
|
+
});
|
|
17738
17775
|
outOfOffice.controls['active'].valueChanges.pipe(takeUntil(this._destroy)).
|
|
17739
17776
|
subscribe(active => {
|
|
17740
|
-
|
|
17777
|
+
if (active) {
|
|
17778
|
+
this.substitueId.enable();
|
|
17779
|
+
this.substitueInput.focus();
|
|
17780
|
+
}
|
|
17781
|
+
else
|
|
17782
|
+
this.substitueId.disable();
|
|
17741
17783
|
this._toggle(outOfOffice, active, 'from');
|
|
17742
17784
|
this._toggle(outOfOffice, active && outOfOffice.controls['from'].value, 'to');
|
|
17743
17785
|
});
|
|
17744
17786
|
outOfOffice.controls['from'].valueChanges.pipe(takeUntil(this._destroy)).
|
|
17745
17787
|
subscribe(from => this._toggle(outOfOffice, from !== null, 'to'));
|
|
17746
|
-
this.gusers$ = this.gusers.valueChanges.pipe(takeUntil(this._destroy),
|
|
17747
|
-
|
|
17788
|
+
this.gusers$ = this.gusers.valueChanges.pipe(takeUntil(this._destroy), filter(v => isString(v)), debounceTime(100), switchMap(v => this._accounts.findAll(v)), map(r => {
|
|
17789
|
+
const exclude = grantAccess.value.users?.slice() || [];
|
|
17790
|
+
exclude.push(this._session.profile.userId);
|
|
17791
|
+
return r.filter(u => exclude.indexOf(u.id) < 0);
|
|
17792
|
+
}));
|
|
17793
|
+
this.susers$ = this.substitueId.valueChanges.pipe(takeUntil(this._destroy), tap(v => !v && outOfOffice.controls['substitueId'].setValue(null)), filter(v => isString(v)), switchMap(v => this._accounts.findAll(v)), map(r => r.filter(u => u.id !== this._session.profile.userId)));
|
|
17748
17794
|
if (options.outOfOffice.substitueId)
|
|
17749
17795
|
this._accounts.get(options.outOfOffice.substitueId).subscribe(u => this.substitueId.setValue(u, { emitEvent: false }));
|
|
17750
17796
|
if (this._option)
|
|
@@ -17769,9 +17815,6 @@ class OptionsComponent {
|
|
|
17769
17815
|
toggleSound() {
|
|
17770
17816
|
this.form.controls['notifications'].controls['sound'].setValue(!this.options.notifications.sound);
|
|
17771
17817
|
}
|
|
17772
|
-
nameOf(id) {
|
|
17773
|
-
return this._accounts.get(id).pipe(map(u => u.name));
|
|
17774
|
-
}
|
|
17775
17818
|
addTag(event) {
|
|
17776
17819
|
const input = event.input;
|
|
17777
17820
|
const value = event.value;
|
|
@@ -17824,17 +17867,23 @@ class OptionsComponent {
|
|
|
17824
17867
|
}
|
|
17825
17868
|
}
|
|
17826
17869
|
OptionsComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.1", ngImport: i0, type: OptionsComponent, deps: [{ token: OPTION_PANEL }, { token: i1$4.OverlayRef }, { token: i1$2.FormBuilder }, { token: AccountService }, { token: PromptService }, { token: SessionService }, { token: BIZDOC_CONFIG }], target: i0.ɵɵFactoryTarget.Component });
|
|
17827
|
-
OptionsComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.3.1", type: OptionsComponent, selector: "bizdoc-options", viewQueries: [{ propertyName: "outOfOffice", first: true, predicate: ["outOfOffice"], descendants: true, read: MatExpansionPanel, static: true }, { propertyName: "notifications", first: true, predicate: ["notifications"], descendants: true, read: MatExpansionPanel, static: true }], ngImport: i0, template: "<form [formGroup]=\"form\" autocomplete=\"off\">\r\n <mat-accordion>\r\n <mat-expansion-panel #notifications>\r\n <mat-expansion-panel-header>\r\n <mat-panel-title>\r\n {{'Notifications' | translate}}\r\n </mat-panel-title>\r\n <mat-panel-description>\r\n <!--<mat-icon>notifications</mat-icon>-->\r\n </mat-panel-description>\r\n </mat-expansion-panel-header>\r\n <div formGroupName=\"notifications\" fxLayout=\"column\">\r\n <div fxLayout=\"row\">\r\n <mat-slide-toggle formControlName=\"active\">{{'Active' | translate}}</mat-slide-toggle>\r\n <span class=\"divider\"></span>\r\n <button mat-icon-button (click)=\"toggleSound()\" [bizdocTooltip]=\"'Sound'|translate\"><mat-icon>{{options.notifications.sound ? 'volume_up' : 'volume_off'}}</mat-icon></button>\r\n </div>\r\n <br />\r\n <mat-slide-toggle formControlName=\"myDocumentStateChange\">{{'MyStateChange' | translate}}</mat-slide-toggle>\r\n <mat-slide-toggle formControlName=\"anyDocumentStateChange\">{{'AnyStateChange' | translate}}</mat-slide-toggle>\r\n <mat-slide-toggle formControlName=\"commentMyDocument\">{{'CommentMyDocument' | translate}}</mat-slide-toggle>\r\n <mat-slide-toggle formControlName=\"commentAnyDocument\">{{'CommentAnyDocument' | translate}}</mat-slide-toggle>\r\n <mat-slide-toggle formControlName=\"likes\" [style.display]=\"voating?'':'none'\">{{'LikedComment' | translate}}</mat-slide-toggle>\r\n <mat-slide-toggle formControlName=\"tagged\">{{'TaggedInComments' | translate}}</mat-slide-toggle>\r\n <mat-slide-toggle formControlName=\"upcomingEvents\">{{'UpcomingEvents' | translate}}</mat-slide-toggle>\r\n <mat-slide-toggle formControlName=\"cubeAnomaly\">{{'CubeAnomaly' | translate}}</mat-slide-toggle>\r\n </div>\r\n </mat-expansion-panel>\r\n <mat-expansion-panel #emails>\r\n <mat-expansion-panel-header>\r\n <mat-panel-title>\r\n {{'Emails' | translate}}\r\n </mat-panel-title>\r\n <mat-panel-description>\r\n <!--<mat-icon>alternate_email</mat-icon>-->\r\n </mat-panel-description>\r\n </mat-expansion-panel-header>\r\n <div formGroupName=\"emails\" fxLayout=\"column\">\r\n <mat-slide-toggle formControlName=\"active\">{{'Active' | translate}}</mat-slide-toggle>\r\n <br />\r\n <mat-slide-toggle formControlName=\"mail\">{{'Mails' | translate}}</mat-slide-toggle>\r\n <mat-slide-toggle formControlName=\"chat\">{{'Conversations' | translate}}</mat-slide-toggle>\r\n <mat-slide-toggle formControlName=\"notifications\">{{'EmailNotifications' | translate}}</mat-slide-toggle>\r\n <mat-slide-toggle formControlName=\"events\">{{'AlarmEvents' | translate}}</mat-slide-toggle>\r\n </div>\r\n </mat-expansion-panel>\r\n <mat-expansion-panel #outOfOffice>\r\n <mat-expansion-panel-header>\r\n <mat-panel-title>\r\n {{'OutOfOffice' | translate}}\r\n </mat-panel-title>\r\n <mat-panel-description>\r\n <!--<mat-icon>trending_flat</mat-icon>-->\r\n <!--{{'OutOfOfficeTip' | translate}}-->\r\n </mat-panel-description>\r\n </mat-expansion-panel-header>\r\n <div formGroupName=\"outOfOffice\" fxLayout=\"column\">\r\n <mat-slide-toggle formControlName=\"active\">{{'Active' | translate}}</mat-slide-toggle>\r\n <br />\r\n <mat-form-field fxFlex>\r\n <input matInput [formControl]=\"substitueId\" type=\"search\" [matAutocomplete]=\"sauto\"\r\n [placeholder]=\"'Associate' | translate\" [required]=\"form.value.outOfOffice.active\" />\r\n <mat-autocomplete #sauto=\"matAutocomplete\" [displayWith]=\"display\"\r\n (optionSelected)=\"setSubstitute($event)\">\r\n <mat-option *ngFor=\"let u of susers$ | async\" [value]=\"u\">\r\n <span>{{u.name}}</span>\r\n </mat-option>\r\n </mat-autocomplete>\r\n <mat-hint>{{'OutOfOfficeTip' | translate}}</mat-hint>\r\n </mat-form-field>\r\n <div>\r\n <mat-form-field>\r\n <input matInput [matDatepicker]=\"from\" formControlName=\"from\" placeholder=\"{{'From'| translate}}\" />\r\n <mat-datepicker-toggle [for]=\"from\" matSuffix></mat-datepicker-toggle>\r\n <mat-datepicker #from></mat-datepicker>\r\n </mat-form-field>\r\n \r\n <mat-form-field>\r\n <input matInput [matDatepicker]=\"to\" formControlName=\"to\" [min]=\"form.value.outOfOffice?.from\" placeholder=\"{{'To'| translate}}\" />\r\n <mat-datepicker-toggle [for]=\"to\" matSuffix></mat-datepicker-toggle>\r\n <mat-datepicker #to></mat-datepicker>\r\n </mat-form-field>\r\n </div>\r\n </div>\r\n </mat-expansion-panel>\r\n <mat-expansion-panel #grantAccess>\r\n <mat-expansion-panel-header>\r\n <mat-panel-title>\r\n {{'GrantAccess' | translate}}\r\n </mat-panel-title>\r\n <mat-panel-description>\r\n <!--<mat-icon>account_circle</mat-icon>-->\r\n </mat-panel-description>\r\n </mat-expansion-panel-header>\r\n <div formGroupName=\"grantAccess\" class=\"grant-section\">\r\n <mat-slide-toggle formControlName=\"active\">{{'Active' | translate}}</mat-slide-toggle>\r\n <mat-form-field>\r\n <mat-chip-list #grantList [attr.aria-label]=\"\">\r\n <mat-chip *ngFor=\"let u of (form.value.grantAccess.users || [])\"\r\n [removable]=\"form.value.grantAccess.active\"\r\n (removed)=\"removeGrant(u)\">\r\n {{nameOf(u) | async}}\r\n <mat-icon matChipRemove *ngIf=\"form.value.grantAccess.active\">cancel</mat-icon>\r\n </mat-chip>\r\n <input [formControl]=\"gusers\" placeholder=\"{{'Users'| translate}}\"\r\n #grantInput\r\n [matAutocomplete]=\"grantAuto\"\r\n [matChipInputFor]=\"grantList\"\r\n [matChipInputSeparatorKeyCodes]=\"separatorKeysCodes\">\r\n </mat-chip-list>\r\n <mat-autocomplete #grantAuto=\"matAutocomplete\" (optionSelected)=\"addGrant(grantInput, $event)\">\r\n <mat-option *ngFor=\"let u of gusers$ | async\" [value]=\"u.id\">\r\n {{u.name}}\r\n <span *ngIf=\"u.email\"> - {{u.email}}</span>\r\n </mat-option>\r\n </mat-autocomplete>\r\n <mat-hint>{{'GrantTip' | translate}}</mat-hint>\r\n </mat-form-field>\r\n </div>\r\n </mat-expansion-panel>\r\n <mat-expansion-panel #preferences>\r\n <mat-expansion-panel-header>\r\n <mat-panel-title>\r\n {{'Preferences' | translate}}\r\n </mat-panel-title>\r\n <mat-panel-description>\r\n <!--<mat-icon></mat-icon>-->\r\n </mat-panel-description>\r\n </mat-expansion-panel-header>\r\n <div fxLayout=\"column\">\r\n <mat-form-field>\r\n <mat-chip-list #chips [selectable]=\"false\" multiple>\r\n <mat-chip *ngFor=\"let item of form.value.tags\"\r\n [removable]=\"true\" (removed)=\"removeTag(item)\">\r\n {{item}}\r\n <mat-icon matChipRemove>cancel</mat-icon>\r\n </mat-chip>\r\n <input [placeholder]=\"'Tags'|translate\"\r\n [matChipInputFor]=\"chips\"\r\n [matChipInputSeparatorKeyCodes]=\"separatorKeysCodes\"\r\n [matChipInputAddOnBlur]=\"true\"\r\n (matChipInputTokenEnd)=\"addTag($event)\">\r\n </mat-chip-list>\r\n </mat-form-field>\r\n <mat-slide-toggle [formControl]=\"aRIA\">{{'ARIA' | translate}}</mat-slide-toggle>\r\n </div>\r\n </mat-expansion-panel>\r\n </mat-accordion>\r\n</form>\r\n", styles: [":host{max-width:80vw}.grant-section{display:flex;flex-direction:column}\n"], components: [{ type: i6$3.MatExpansionPanel, selector: "mat-expansion-panel", inputs: ["disabled", "expanded", "hideToggle", "togglePosition"], outputs: ["opened", "closed", "expandedChange", "afterExpand", "afterCollapse"], exportAs: ["matExpansionPanel"] }, { type: i6$3.MatExpansionPanelHeader, selector: "mat-expansion-panel-header", inputs: ["tabIndex", "expandedHeight", "collapsedHeight"] }, { type: i1$3.MatSlideToggle, selector: "mat-slide-toggle", inputs: ["disabled", "disableRipple", "color", "tabIndex", "name", "id", "labelPosition", "aria-label", "aria-labelledby", "aria-describedby", "required", "checked"], outputs: ["change", "toggleChange"], exportAs: ["matSlideToggle"] }, { type: i7$1.MatButton, selector: "button[mat-button], button[mat-raised-button], button[mat-icon-button], button[mat-fab], button[mat-mini-fab], button[mat-stroked-button], button[mat-flat-button]", inputs: ["disabled", "disableRipple", "color"], exportAs: ["matButton"] }, { type: i8.MatIcon, selector: "mat-icon", inputs: ["color", "inline", "svgIcon", "fontSet", "fontIcon"], exportAs: ["matIcon"] }, { type: i1$1.MatFormField, selector: "mat-form-field", inputs: ["color", "appearance", "hideRequiredMarker", "hintLabel", "floatLabel"], exportAs: ["matFormField"] }, { type: i5$1.MatAutocomplete, selector: "mat-autocomplete", inputs: ["disableRipple"], exportAs: ["matAutocomplete"] }, { type: i6.MatOption, selector: "mat-option", exportAs: ["matOption"] }, { type: i3.MatDatepickerToggle, selector: "mat-datepicker-toggle", inputs: ["for", "tabIndex", "aria-label", "disabled", "disableRipple"], exportAs: ["matDatepickerToggle"] }, { type: i3.MatDatepicker, selector: "mat-datepicker", exportAs: ["matDatepicker"] }, { type: i3$2.MatChipList, selector: "mat-chip-list", inputs: ["errorStateMatcher", "multiple", "compareWith", "value", "required", "placeholder", "disabled", "aria-orientation", "selectable", "tabIndex"], outputs: ["change", "valueChange"], exportAs: ["matChipList"] }], directives: [{ type: i1$2.ɵNgNoValidate, selector: "form:not([ngNoForm]):not([ngNativeValidate])" }, { type: i1$2.NgControlStatusGroup, selector: "[formGroupName],[formArrayName],[ngModelGroup],[formGroup],form:not([ngNoForm]),[ngForm]" }, { type: i1$2.FormGroupDirective, selector: "[formGroup]", inputs: ["formGroup"], outputs: ["ngSubmit"], exportAs: ["ngForm"] }, { type: i6$3.MatAccordion, selector: "mat-accordion", inputs: ["multi", "hideToggle", "displayMode", "togglePosition"], exportAs: ["matAccordion"] }, { type: i6$3.MatExpansionPanelTitle, selector: "mat-panel-title" }, { type: i6$3.MatExpansionPanelDescription, selector: "mat-panel-description" }, { type: i1$2.FormGroupName, selector: "[formGroupName]", inputs: ["formGroupName"] }, { type: i23.DefaultLayoutDirective, selector: " [fxLayout], [fxLayout.xs], [fxLayout.sm], [fxLayout.md], [fxLayout.lg], [fxLayout.xl], [fxLayout.lt-sm], [fxLayout.lt-md], [fxLayout.lt-lg], [fxLayout.lt-xl], [fxLayout.gt-xs], [fxLayout.gt-sm], [fxLayout.gt-md], [fxLayout.gt-lg]", inputs: ["fxLayout", "fxLayout.xs", "fxLayout.sm", "fxLayout.md", "fxLayout.lg", "fxLayout.xl", "fxLayout.lt-sm", "fxLayout.lt-md", "fxLayout.lt-lg", "fxLayout.lt-xl", "fxLayout.gt-xs", "fxLayout.gt-sm", "fxLayout.gt-md", "fxLayout.gt-lg"] }, { type: i1$2.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { type: i1$2.FormControlName, selector: "[formControlName]", inputs: ["formControlName", "disabled", "ngModel"], outputs: ["ngModelChange"] }, { type: TooltipDirective, selector: "[bizdocTooltip]", inputs: ["bizdocTooltip", "bizdocTooltipTemplate", "bizdocTooltipContext", "bizdocTooltipPosition", "bizdocTooltipDuration", "bizdocTooltipDisabled"] }, { type: i23.DefaultFlexDirective, selector: " [fxFlex], [fxFlex.xs], [fxFlex.sm], [fxFlex.md], [fxFlex.lg], [fxFlex.xl], [fxFlex.lt-sm], [fxFlex.lt-md], [fxFlex.lt-lg], [fxFlex.lt-xl], [fxFlex.gt-xs], [fxFlex.gt-sm], [fxFlex.gt-md], [fxFlex.gt-lg]", inputs: ["fxFlex", "fxFlex.xs", "fxFlex.sm", "fxFlex.md", "fxFlex.lg", "fxFlex.xl", "fxFlex.lt-sm", "fxFlex.lt-md", "fxFlex.lt-lg", "fxFlex.lt-xl", "fxFlex.gt-xs", "fxFlex.gt-sm", "fxFlex.gt-md", "fxFlex.gt-lg"] }, { type: i9.MatInput, selector: "input[matInput], textarea[matInput], select[matNativeControl], input[matNativeControl], textarea[matNativeControl]", inputs: ["disabled", "id", "placeholder", "name", "required", "type", "errorStateMatcher", "aria-describedby", "value", "readonly"], exportAs: ["matInput"] }, { 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]" }, { type: i5$1.MatAutocompleteTrigger, selector: "input[matAutocomplete], textarea[matAutocomplete]", exportAs: ["matAutocompleteTrigger"] }, { type: i1$2.FormControlDirective, selector: "[formControl]", inputs: ["formControl", "disabled", "ngModel"], outputs: ["ngModelChange"], exportAs: ["ngForm"] }, { type: i1$2.RequiredValidator, selector: ":not([type=checkbox])[required][formControlName],:not([type=checkbox])[required][formControl],:not([type=checkbox])[required][ngModel]", inputs: ["required"] }, { type: i10.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { type: i1$1.MatHint, selector: "mat-hint", inputs: ["align", "id"] }, { type: i3.MatDatepickerInput, selector: "input[matDatepicker]", inputs: ["matDatepicker", "min", "max", "matDatepickerFilter"], exportAs: ["matDatepickerInput"] }, { type: i1$1.MatSuffix, selector: "[matSuffix]" }, { type: i3$2.MatChip, selector: "mat-basic-chip, [mat-basic-chip], mat-chip, [mat-chip]", inputs: ["color", "disableRipple", "tabIndex", "selected", "value", "selectable", "disabled", "removable"], outputs: ["selectionChange", "destroyed", "removed"], exportAs: ["matChip"] }, { type: i10.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { type: i3$2.MatChipRemove, selector: "[matChipRemove]" }, { type: i3$2.MatChipInput, selector: "input[matChipInputFor]", inputs: ["matChipInputFor", "matChipInputAddOnBlur", "matChipInputSeparatorKeyCodes", "placeholder", "id", "disabled"], outputs: ["matChipInputTokenEnd"], exportAs: ["matChipInput", "matChipInputFor"] }], pipes: { "translate": TranslatePipe, "async": i10.AsyncPipe } });
|
|
17870
|
+
OptionsComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.3.1", type: OptionsComponent, selector: "bizdoc-options", viewQueries: [{ propertyName: "substitueInput", first: true, predicate: ["substitueInput"], descendants: true, read: MatInput }, { propertyName: "grantInput", first: true, predicate: ["grantInput"], descendants: true, read: MatChipInput }, { propertyName: "outOfOffice", first: true, predicate: ["outOfOffice"], descendants: true, read: MatExpansionPanel, static: true }, { propertyName: "notifications", first: true, predicate: ["notifications"], descendants: true, read: MatExpansionPanel, static: true }], ngImport: i0, template: "<form [formGroup]=\"form\" autocomplete=\"off\">\r\n <mat-accordion>\r\n <mat-expansion-panel #notifications>\r\n <mat-expansion-panel-header>\r\n <mat-panel-title>\r\n {{'Notifications' | translate}}\r\n </mat-panel-title>\r\n <mat-panel-description>\r\n <!--<mat-icon>notifications</mat-icon>-->\r\n </mat-panel-description>\r\n </mat-expansion-panel-header>\r\n <div formGroupName=\"notifications\" fxLayout=\"column\">\r\n <div fxLayout=\"row\">\r\n <mat-slide-toggle formControlName=\"active\">{{'Active' | translate}}</mat-slide-toggle>\r\n <span class=\"divider\"></span>\r\n <button mat-icon-button (click)=\"toggleSound()\" [bizdocTooltip]=\"'Sound'|translate\"><mat-icon>{{options.notifications.sound ? 'volume_up' : 'volume_off'}}</mat-icon></button>\r\n </div>\r\n <br />\r\n <mat-slide-toggle formControlName=\"myDocumentStateChange\">{{'MyStateChange' | translate}}</mat-slide-toggle>\r\n <mat-slide-toggle formControlName=\"anyDocumentStateChange\">{{'AnyStateChange' | translate}}</mat-slide-toggle>\r\n <mat-slide-toggle formControlName=\"commentMyDocument\">{{'CommentMyDocument' | translate}}</mat-slide-toggle>\r\n <mat-slide-toggle formControlName=\"commentAnyDocument\">{{'CommentAnyDocument' | translate}}</mat-slide-toggle>\r\n <mat-slide-toggle formControlName=\"likes\" [style.display]=\"voating?'':'none'\">{{'LikedComment' | translate}}</mat-slide-toggle>\r\n <mat-slide-toggle formControlName=\"tagged\">{{'TaggedInComments' | translate}}</mat-slide-toggle>\r\n <mat-slide-toggle formControlName=\"upcomingEvents\">{{'UpcomingEvents' | translate}}</mat-slide-toggle>\r\n <mat-slide-toggle formControlName=\"cubeAnomaly\">{{'CubeAnomaly' | translate}}</mat-slide-toggle>\r\n </div>\r\n </mat-expansion-panel>\r\n <mat-expansion-panel #emails>\r\n <mat-expansion-panel-header>\r\n <mat-panel-title>\r\n {{'Emails' | translate}}\r\n </mat-panel-title>\r\n <mat-panel-description>\r\n <!--<mat-icon>alternate_email</mat-icon>-->\r\n </mat-panel-description>\r\n </mat-expansion-panel-header>\r\n <div formGroupName=\"emails\" fxLayout=\"column\">\r\n <mat-slide-toggle formControlName=\"active\">{{'Active' | translate}}</mat-slide-toggle>\r\n <br />\r\n <mat-slide-toggle formControlName=\"mail\">{{'Mails' | translate}}</mat-slide-toggle>\r\n <mat-slide-toggle formControlName=\"chat\">{{'Conversations' | translate}}</mat-slide-toggle>\r\n <mat-slide-toggle formControlName=\"notifications\">{{'EmailNotifications' | translate}}</mat-slide-toggle>\r\n <mat-slide-toggle formControlName=\"events\">{{'AlarmEvents' | translate}}</mat-slide-toggle>\r\n </div>\r\n </mat-expansion-panel>\r\n <mat-expansion-panel #outOfOffice>\r\n <mat-expansion-panel-header>\r\n <mat-panel-title>\r\n {{'OutOfOffice' | translate}}\r\n </mat-panel-title>\r\n <mat-panel-description>\r\n <!--<mat-icon>trending_flat</mat-icon>-->\r\n <!--{{'OutOfOfficeTip' | translate}}-->\r\n </mat-panel-description>\r\n </mat-expansion-panel-header>\r\n <div formGroupName=\"outOfOffice\" fxLayout=\"column\">\r\n <mat-slide-toggle formControlName=\"active\">{{'Active' | translate}}</mat-slide-toggle>\r\n <br />\r\n <mat-form-field fxFlex>\r\n <input matInput [formControl]=\"substitueId\" type=\"search\" [matAutocomplete]=\"sauto\" #substitueInput\r\n [placeholder]=\"'Associate' | translate\" [required]=\"form.value.outOfOffice.active\" />\r\n <mat-autocomplete #sauto=\"matAutocomplete\" [displayWith]=\"display\"\r\n (optionSelected)=\"setSubstitute($event)\">\r\n <mat-option *ngFor=\"let u of susers$ | async\" [value]=\"u\">\r\n <span>{{u.name}}</span>\r\n </mat-option>\r\n </mat-autocomplete>\r\n <mat-hint>{{'OutOfOfficeTip' | translate}}</mat-hint>\r\n </mat-form-field>\r\n <div>\r\n <mat-form-field>\r\n <input matInput [matDatepicker]=\"from\" formControlName=\"from\" placeholder=\"{{'From'| translate}}\" />\r\n <mat-datepicker-toggle [for]=\"from\" matSuffix></mat-datepicker-toggle>\r\n <mat-datepicker #from></mat-datepicker>\r\n </mat-form-field>\r\n \r\n <mat-form-field>\r\n <input matInput [matDatepicker]=\"to\" formControlName=\"to\" [min]=\"form.value.outOfOffice?.from\" placeholder=\"{{'To'| translate}}\" />\r\n <mat-datepicker-toggle [for]=\"to\" matSuffix></mat-datepicker-toggle>\r\n <mat-datepicker #to></mat-datepicker>\r\n </mat-form-field>\r\n </div>\r\n </div>\r\n </mat-expansion-panel>\r\n <mat-expansion-panel #grantAccess>\r\n <mat-expansion-panel-header>\r\n <mat-panel-title>\r\n {{'GrantAccess' | translate}}\r\n </mat-panel-title>\r\n <mat-panel-description>\r\n <!--<mat-icon>account_circle</mat-icon>-->\r\n </mat-panel-description>\r\n </mat-expansion-panel-header>\r\n <div formGroupName=\"grantAccess\" class=\"grant-section\">\r\n <mat-slide-toggle formControlName=\"active\">{{'Active' | translate}}</mat-slide-toggle>\r\n <mat-form-field>\r\n <mat-chip-list #grantList [attr.aria-label]=\"\" [disabled]=\"!form.value.grantAccess.active\">\r\n <mat-chip *ngFor=\"let u of form.value.grantAccess.users || []\"\r\n (removed)=\"removeGrant(u)\">\r\n {{u | userName | async}}\r\n <mat-icon matChipRemove>cancel</mat-icon>\r\n </mat-chip>\r\n <input [formControl]=\"gusers\" placeholder=\"{{'Users'| translate}}\"\r\n #grantInput\r\n [matAutocomplete]=\"grantAuto\"\r\n [matChipInputFor]=\"grantList\"\r\n [matChipInputSeparatorKeyCodes]=\"separatorKeysCodes\">\r\n </mat-chip-list>\r\n <mat-autocomplete #grantAuto=\"matAutocomplete\" (optionSelected)=\"addGrant(grantInput, $event)\">\r\n <mat-option *ngFor=\"let u of gusers$ | async\" [value]=\"u.id\">\r\n {{u.name}}\r\n <span *ngIf=\"u.email\"> - {{u.email}}</span>\r\n </mat-option>\r\n </mat-autocomplete>\r\n <mat-hint>{{'GrantTip' | translate}}</mat-hint>\r\n </mat-form-field>\r\n </div>\r\n </mat-expansion-panel>\r\n <mat-expansion-panel #preferences>\r\n <mat-expansion-panel-header>\r\n <mat-panel-title>\r\n {{'Preferences' | translate}}\r\n </mat-panel-title>\r\n <mat-panel-description>\r\n <!--<mat-icon></mat-icon>-->\r\n </mat-panel-description>\r\n </mat-expansion-panel-header>\r\n <div fxLayout=\"column\">\r\n <mat-form-field>\r\n <mat-chip-list #chips [selectable]=\"false\" multiple>\r\n <mat-chip *ngFor=\"let item of form.value.tags\"\r\n [removable]=\"true\" (removed)=\"removeTag(item)\">\r\n {{item}}\r\n <mat-icon matChipRemove>cancel</mat-icon>\r\n </mat-chip>\r\n <input [placeholder]=\"'Tags'|translate\"\r\n [matChipInputFor]=\"chips\"\r\n [matChipInputSeparatorKeyCodes]=\"separatorKeysCodes\"\r\n [matChipInputAddOnBlur]=\"true\"\r\n (matChipInputTokenEnd)=\"addTag($event)\">\r\n </mat-chip-list>\r\n </mat-form-field>\r\n <mat-slide-toggle [formControl]=\"aRIA\">{{'ARIA' | translate}}</mat-slide-toggle>\r\n </div>\r\n </mat-expansion-panel>\r\n </mat-accordion>\r\n</form>\r\n", styles: [":host{max-width:80vw}.grant-section{display:flex;flex-direction:column}\n"], components: [{ type: i6$3.MatExpansionPanel, selector: "mat-expansion-panel", inputs: ["disabled", "expanded", "hideToggle", "togglePosition"], outputs: ["opened", "closed", "expandedChange", "afterExpand", "afterCollapse"], exportAs: ["matExpansionPanel"] }, { type: i6$3.MatExpansionPanelHeader, selector: "mat-expansion-panel-header", inputs: ["tabIndex", "expandedHeight", "collapsedHeight"] }, { type: i1$3.MatSlideToggle, selector: "mat-slide-toggle", inputs: ["disabled", "disableRipple", "color", "tabIndex", "name", "id", "labelPosition", "aria-label", "aria-labelledby", "aria-describedby", "required", "checked"], outputs: ["change", "toggleChange"], exportAs: ["matSlideToggle"] }, { type: i7$1.MatButton, selector: "button[mat-button], button[mat-raised-button], button[mat-icon-button], button[mat-fab], button[mat-mini-fab], button[mat-stroked-button], button[mat-flat-button]", inputs: ["disabled", "disableRipple", "color"], exportAs: ["matButton"] }, { type: i8.MatIcon, selector: "mat-icon", inputs: ["color", "inline", "svgIcon", "fontSet", "fontIcon"], exportAs: ["matIcon"] }, { type: i1$1.MatFormField, selector: "mat-form-field", inputs: ["color", "appearance", "hideRequiredMarker", "hintLabel", "floatLabel"], exportAs: ["matFormField"] }, { type: i5$1.MatAutocomplete, selector: "mat-autocomplete", inputs: ["disableRipple"], exportAs: ["matAutocomplete"] }, { type: i6.MatOption, selector: "mat-option", exportAs: ["matOption"] }, { type: i3.MatDatepickerToggle, selector: "mat-datepicker-toggle", inputs: ["for", "tabIndex", "aria-label", "disabled", "disableRipple"], exportAs: ["matDatepickerToggle"] }, { type: i3.MatDatepicker, selector: "mat-datepicker", exportAs: ["matDatepicker"] }, { type: i3$2.MatChipList, selector: "mat-chip-list", inputs: ["errorStateMatcher", "multiple", "compareWith", "value", "required", "placeholder", "disabled", "aria-orientation", "selectable", "tabIndex"], outputs: ["change", "valueChange"], exportAs: ["matChipList"] }], directives: [{ type: i1$2.ɵNgNoValidate, selector: "form:not([ngNoForm]):not([ngNativeValidate])" }, { type: i1$2.NgControlStatusGroup, selector: "[formGroupName],[formArrayName],[ngModelGroup],[formGroup],form:not([ngNoForm]),[ngForm]" }, { type: i1$2.FormGroupDirective, selector: "[formGroup]", inputs: ["formGroup"], outputs: ["ngSubmit"], exportAs: ["ngForm"] }, { type: i6$3.MatAccordion, selector: "mat-accordion", inputs: ["multi", "hideToggle", "displayMode", "togglePosition"], exportAs: ["matAccordion"] }, { type: i6$3.MatExpansionPanelTitle, selector: "mat-panel-title" }, { type: i6$3.MatExpansionPanelDescription, selector: "mat-panel-description" }, { type: i1$2.FormGroupName, selector: "[formGroupName]", inputs: ["formGroupName"] }, { type: i23.DefaultLayoutDirective, selector: " [fxLayout], [fxLayout.xs], [fxLayout.sm], [fxLayout.md], [fxLayout.lg], [fxLayout.xl], [fxLayout.lt-sm], [fxLayout.lt-md], [fxLayout.lt-lg], [fxLayout.lt-xl], [fxLayout.gt-xs], [fxLayout.gt-sm], [fxLayout.gt-md], [fxLayout.gt-lg]", inputs: ["fxLayout", "fxLayout.xs", "fxLayout.sm", "fxLayout.md", "fxLayout.lg", "fxLayout.xl", "fxLayout.lt-sm", "fxLayout.lt-md", "fxLayout.lt-lg", "fxLayout.lt-xl", "fxLayout.gt-xs", "fxLayout.gt-sm", "fxLayout.gt-md", "fxLayout.gt-lg"] }, { type: i1$2.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { type: i1$2.FormControlName, selector: "[formControlName]", inputs: ["formControlName", "disabled", "ngModel"], outputs: ["ngModelChange"] }, { type: TooltipDirective, selector: "[bizdocTooltip]", inputs: ["bizdocTooltip", "bizdocTooltipTemplate", "bizdocTooltipContext", "bizdocTooltipPosition", "bizdocTooltipDuration", "bizdocTooltipDisabled"] }, { type: i23.DefaultFlexDirective, selector: " [fxFlex], [fxFlex.xs], [fxFlex.sm], [fxFlex.md], [fxFlex.lg], [fxFlex.xl], [fxFlex.lt-sm], [fxFlex.lt-md], [fxFlex.lt-lg], [fxFlex.lt-xl], [fxFlex.gt-xs], [fxFlex.gt-sm], [fxFlex.gt-md], [fxFlex.gt-lg]", inputs: ["fxFlex", "fxFlex.xs", "fxFlex.sm", "fxFlex.md", "fxFlex.lg", "fxFlex.xl", "fxFlex.lt-sm", "fxFlex.lt-md", "fxFlex.lt-lg", "fxFlex.lt-xl", "fxFlex.gt-xs", "fxFlex.gt-sm", "fxFlex.gt-md", "fxFlex.gt-lg"] }, { type: i9.MatInput, selector: "input[matInput], textarea[matInput], select[matNativeControl], input[matNativeControl], textarea[matNativeControl]", inputs: ["disabled", "id", "placeholder", "name", "required", "type", "errorStateMatcher", "aria-describedby", "value", "readonly"], exportAs: ["matInput"] }, { 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]" }, { type: i5$1.MatAutocompleteTrigger, selector: "input[matAutocomplete], textarea[matAutocomplete]", exportAs: ["matAutocompleteTrigger"] }, { type: i1$2.FormControlDirective, selector: "[formControl]", inputs: ["formControl", "disabled", "ngModel"], outputs: ["ngModelChange"], exportAs: ["ngForm"] }, { type: i1$2.RequiredValidator, selector: ":not([type=checkbox])[required][formControlName],:not([type=checkbox])[required][formControl],:not([type=checkbox])[required][ngModel]", inputs: ["required"] }, { type: i10.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { type: i1$1.MatHint, selector: "mat-hint", inputs: ["align", "id"] }, { type: i3.MatDatepickerInput, selector: "input[matDatepicker]", inputs: ["matDatepicker", "min", "max", "matDatepickerFilter"], exportAs: ["matDatepickerInput"] }, { type: i1$1.MatSuffix, selector: "[matSuffix]" }, { type: i3$2.MatChip, selector: "mat-basic-chip, [mat-basic-chip], mat-chip, [mat-chip]", inputs: ["color", "disableRipple", "tabIndex", "selected", "value", "selectable", "disabled", "removable"], outputs: ["selectionChange", "destroyed", "removed"], exportAs: ["matChip"] }, { type: i3$2.MatChipRemove, selector: "[matChipRemove]" }, { type: i3$2.MatChipInput, selector: "input[matChipInputFor]", inputs: ["matChipInputFor", "matChipInputAddOnBlur", "matChipInputSeparatorKeyCodes", "placeholder", "id", "disabled"], outputs: ["matChipInputTokenEnd"], exportAs: ["matChipInput", "matChipInputFor"] }, { type: i10.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }], pipes: { "translate": TranslatePipe, "async": i10.AsyncPipe, "userName": UserNamePipe } });
|
|
17828
17871
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.1", ngImport: i0, type: OptionsComponent, decorators: [{
|
|
17829
17872
|
type: Component,
|
|
17830
|
-
args: [{ selector: 'bizdoc-options', template: "<form [formGroup]=\"form\" autocomplete=\"off\">\r\n <mat-accordion>\r\n <mat-expansion-panel #notifications>\r\n <mat-expansion-panel-header>\r\n <mat-panel-title>\r\n {{'Notifications' | translate}}\r\n </mat-panel-title>\r\n <mat-panel-description>\r\n <!--<mat-icon>notifications</mat-icon>-->\r\n </mat-panel-description>\r\n </mat-expansion-panel-header>\r\n <div formGroupName=\"notifications\" fxLayout=\"column\">\r\n <div fxLayout=\"row\">\r\n <mat-slide-toggle formControlName=\"active\">{{'Active' | translate}}</mat-slide-toggle>\r\n <span class=\"divider\"></span>\r\n <button mat-icon-button (click)=\"toggleSound()\" [bizdocTooltip]=\"'Sound'|translate\"><mat-icon>{{options.notifications.sound ? 'volume_up' : 'volume_off'}}</mat-icon></button>\r\n </div>\r\n <br />\r\n <mat-slide-toggle formControlName=\"myDocumentStateChange\">{{'MyStateChange' | translate}}</mat-slide-toggle>\r\n <mat-slide-toggle formControlName=\"anyDocumentStateChange\">{{'AnyStateChange' | translate}}</mat-slide-toggle>\r\n <mat-slide-toggle formControlName=\"commentMyDocument\">{{'CommentMyDocument' | translate}}</mat-slide-toggle>\r\n <mat-slide-toggle formControlName=\"commentAnyDocument\">{{'CommentAnyDocument' | translate}}</mat-slide-toggle>\r\n <mat-slide-toggle formControlName=\"likes\" [style.display]=\"voating?'':'none'\">{{'LikedComment' | translate}}</mat-slide-toggle>\r\n <mat-slide-toggle formControlName=\"tagged\">{{'TaggedInComments' | translate}}</mat-slide-toggle>\r\n <mat-slide-toggle formControlName=\"upcomingEvents\">{{'UpcomingEvents' | translate}}</mat-slide-toggle>\r\n <mat-slide-toggle formControlName=\"cubeAnomaly\">{{'CubeAnomaly' | translate}}</mat-slide-toggle>\r\n </div>\r\n </mat-expansion-panel>\r\n <mat-expansion-panel #emails>\r\n <mat-expansion-panel-header>\r\n <mat-panel-title>\r\n {{'Emails' | translate}}\r\n </mat-panel-title>\r\n <mat-panel-description>\r\n <!--<mat-icon>alternate_email</mat-icon>-->\r\n </mat-panel-description>\r\n </mat-expansion-panel-header>\r\n <div formGroupName=\"emails\" fxLayout=\"column\">\r\n <mat-slide-toggle formControlName=\"active\">{{'Active' | translate}}</mat-slide-toggle>\r\n <br />\r\n <mat-slide-toggle formControlName=\"mail\">{{'Mails' | translate}}</mat-slide-toggle>\r\n <mat-slide-toggle formControlName=\"chat\">{{'Conversations' | translate}}</mat-slide-toggle>\r\n <mat-slide-toggle formControlName=\"notifications\">{{'EmailNotifications' | translate}}</mat-slide-toggle>\r\n <mat-slide-toggle formControlName=\"events\">{{'AlarmEvents' | translate}}</mat-slide-toggle>\r\n </div>\r\n </mat-expansion-panel>\r\n <mat-expansion-panel #outOfOffice>\r\n <mat-expansion-panel-header>\r\n <mat-panel-title>\r\n {{'OutOfOffice' | translate}}\r\n </mat-panel-title>\r\n <mat-panel-description>\r\n <!--<mat-icon>trending_flat</mat-icon>-->\r\n <!--{{'OutOfOfficeTip' | translate}}-->\r\n </mat-panel-description>\r\n </mat-expansion-panel-header>\r\n <div formGroupName=\"outOfOffice\" fxLayout=\"column\">\r\n <mat-slide-toggle formControlName=\"active\">{{'Active' | translate}}</mat-slide-toggle>\r\n <br />\r\n <mat-form-field fxFlex>\r\n <input matInput [formControl]=\"substitueId\" type=\"search\" [matAutocomplete]=\"sauto\"\r\n [placeholder]=\"'Associate' | translate\" [required]=\"form.value.outOfOffice.active\" />\r\n <mat-autocomplete #sauto=\"matAutocomplete\" [displayWith]=\"display\"\r\n (optionSelected)=\"setSubstitute($event)\">\r\n <mat-option *ngFor=\"let u of susers$ | async\" [value]=\"u\">\r\n <span>{{u.name}}</span>\r\n </mat-option>\r\n </mat-autocomplete>\r\n <mat-hint>{{'OutOfOfficeTip' | translate}}</mat-hint>\r\n </mat-form-field>\r\n <div>\r\n <mat-form-field>\r\n <input matInput [matDatepicker]=\"from\" formControlName=\"from\" placeholder=\"{{'From'| translate}}\" />\r\n <mat-datepicker-toggle [for]=\"from\" matSuffix></mat-datepicker-toggle>\r\n <mat-datepicker #from></mat-datepicker>\r\n </mat-form-field>\r\n \r\n <mat-form-field>\r\n <input matInput [matDatepicker]=\"to\" formControlName=\"to\" [min]=\"form.value.outOfOffice?.from\" placeholder=\"{{'To'| translate}}\" />\r\n <mat-datepicker-toggle [for]=\"to\" matSuffix></mat-datepicker-toggle>\r\n <mat-datepicker #to></mat-datepicker>\r\n </mat-form-field>\r\n </div>\r\n </div>\r\n </mat-expansion-panel>\r\n <mat-expansion-panel #grantAccess>\r\n <mat-expansion-panel-header>\r\n <mat-panel-title>\r\n {{'GrantAccess' | translate}}\r\n </mat-panel-title>\r\n <mat-panel-description>\r\n <!--<mat-icon>account_circle</mat-icon>-->\r\n </mat-panel-description>\r\n </mat-expansion-panel-header>\r\n <div formGroupName=\"grantAccess\" class=\"grant-section\">\r\n <mat-slide-toggle formControlName=\"active\">{{'Active' | translate}}</mat-slide-toggle>\r\n <mat-form-field>\r\n <mat-chip-list #grantList [attr.aria-label]=\"\">\r\n <mat-chip *ngFor=\"let u of
|
|
17873
|
+
args: [{ selector: 'bizdoc-options', template: "<form [formGroup]=\"form\" autocomplete=\"off\">\r\n <mat-accordion>\r\n <mat-expansion-panel #notifications>\r\n <mat-expansion-panel-header>\r\n <mat-panel-title>\r\n {{'Notifications' | translate}}\r\n </mat-panel-title>\r\n <mat-panel-description>\r\n <!--<mat-icon>notifications</mat-icon>-->\r\n </mat-panel-description>\r\n </mat-expansion-panel-header>\r\n <div formGroupName=\"notifications\" fxLayout=\"column\">\r\n <div fxLayout=\"row\">\r\n <mat-slide-toggle formControlName=\"active\">{{'Active' | translate}}</mat-slide-toggle>\r\n <span class=\"divider\"></span>\r\n <button mat-icon-button (click)=\"toggleSound()\" [bizdocTooltip]=\"'Sound'|translate\"><mat-icon>{{options.notifications.sound ? 'volume_up' : 'volume_off'}}</mat-icon></button>\r\n </div>\r\n <br />\r\n <mat-slide-toggle formControlName=\"myDocumentStateChange\">{{'MyStateChange' | translate}}</mat-slide-toggle>\r\n <mat-slide-toggle formControlName=\"anyDocumentStateChange\">{{'AnyStateChange' | translate}}</mat-slide-toggle>\r\n <mat-slide-toggle formControlName=\"commentMyDocument\">{{'CommentMyDocument' | translate}}</mat-slide-toggle>\r\n <mat-slide-toggle formControlName=\"commentAnyDocument\">{{'CommentAnyDocument' | translate}}</mat-slide-toggle>\r\n <mat-slide-toggle formControlName=\"likes\" [style.display]=\"voating?'':'none'\">{{'LikedComment' | translate}}</mat-slide-toggle>\r\n <mat-slide-toggle formControlName=\"tagged\">{{'TaggedInComments' | translate}}</mat-slide-toggle>\r\n <mat-slide-toggle formControlName=\"upcomingEvents\">{{'UpcomingEvents' | translate}}</mat-slide-toggle>\r\n <mat-slide-toggle formControlName=\"cubeAnomaly\">{{'CubeAnomaly' | translate}}</mat-slide-toggle>\r\n </div>\r\n </mat-expansion-panel>\r\n <mat-expansion-panel #emails>\r\n <mat-expansion-panel-header>\r\n <mat-panel-title>\r\n {{'Emails' | translate}}\r\n </mat-panel-title>\r\n <mat-panel-description>\r\n <!--<mat-icon>alternate_email</mat-icon>-->\r\n </mat-panel-description>\r\n </mat-expansion-panel-header>\r\n <div formGroupName=\"emails\" fxLayout=\"column\">\r\n <mat-slide-toggle formControlName=\"active\">{{'Active' | translate}}</mat-slide-toggle>\r\n <br />\r\n <mat-slide-toggle formControlName=\"mail\">{{'Mails' | translate}}</mat-slide-toggle>\r\n <mat-slide-toggle formControlName=\"chat\">{{'Conversations' | translate}}</mat-slide-toggle>\r\n <mat-slide-toggle formControlName=\"notifications\">{{'EmailNotifications' | translate}}</mat-slide-toggle>\r\n <mat-slide-toggle formControlName=\"events\">{{'AlarmEvents' | translate}}</mat-slide-toggle>\r\n </div>\r\n </mat-expansion-panel>\r\n <mat-expansion-panel #outOfOffice>\r\n <mat-expansion-panel-header>\r\n <mat-panel-title>\r\n {{'OutOfOffice' | translate}}\r\n </mat-panel-title>\r\n <mat-panel-description>\r\n <!--<mat-icon>trending_flat</mat-icon>-->\r\n <!--{{'OutOfOfficeTip' | translate}}-->\r\n </mat-panel-description>\r\n </mat-expansion-panel-header>\r\n <div formGroupName=\"outOfOffice\" fxLayout=\"column\">\r\n <mat-slide-toggle formControlName=\"active\">{{'Active' | translate}}</mat-slide-toggle>\r\n <br />\r\n <mat-form-field fxFlex>\r\n <input matInput [formControl]=\"substitueId\" type=\"search\" [matAutocomplete]=\"sauto\" #substitueInput\r\n [placeholder]=\"'Associate' | translate\" [required]=\"form.value.outOfOffice.active\" />\r\n <mat-autocomplete #sauto=\"matAutocomplete\" [displayWith]=\"display\"\r\n (optionSelected)=\"setSubstitute($event)\">\r\n <mat-option *ngFor=\"let u of susers$ | async\" [value]=\"u\">\r\n <span>{{u.name}}</span>\r\n </mat-option>\r\n </mat-autocomplete>\r\n <mat-hint>{{'OutOfOfficeTip' | translate}}</mat-hint>\r\n </mat-form-field>\r\n <div>\r\n <mat-form-field>\r\n <input matInput [matDatepicker]=\"from\" formControlName=\"from\" placeholder=\"{{'From'| translate}}\" />\r\n <mat-datepicker-toggle [for]=\"from\" matSuffix></mat-datepicker-toggle>\r\n <mat-datepicker #from></mat-datepicker>\r\n </mat-form-field>\r\n \r\n <mat-form-field>\r\n <input matInput [matDatepicker]=\"to\" formControlName=\"to\" [min]=\"form.value.outOfOffice?.from\" placeholder=\"{{'To'| translate}}\" />\r\n <mat-datepicker-toggle [for]=\"to\" matSuffix></mat-datepicker-toggle>\r\n <mat-datepicker #to></mat-datepicker>\r\n </mat-form-field>\r\n </div>\r\n </div>\r\n </mat-expansion-panel>\r\n <mat-expansion-panel #grantAccess>\r\n <mat-expansion-panel-header>\r\n <mat-panel-title>\r\n {{'GrantAccess' | translate}}\r\n </mat-panel-title>\r\n <mat-panel-description>\r\n <!--<mat-icon>account_circle</mat-icon>-->\r\n </mat-panel-description>\r\n </mat-expansion-panel-header>\r\n <div formGroupName=\"grantAccess\" class=\"grant-section\">\r\n <mat-slide-toggle formControlName=\"active\">{{'Active' | translate}}</mat-slide-toggle>\r\n <mat-form-field>\r\n <mat-chip-list #grantList [attr.aria-label]=\"\" [disabled]=\"!form.value.grantAccess.active\">\r\n <mat-chip *ngFor=\"let u of form.value.grantAccess.users || []\"\r\n (removed)=\"removeGrant(u)\">\r\n {{u | userName | async}}\r\n <mat-icon matChipRemove>cancel</mat-icon>\r\n </mat-chip>\r\n <input [formControl]=\"gusers\" placeholder=\"{{'Users'| translate}}\"\r\n #grantInput\r\n [matAutocomplete]=\"grantAuto\"\r\n [matChipInputFor]=\"grantList\"\r\n [matChipInputSeparatorKeyCodes]=\"separatorKeysCodes\">\r\n </mat-chip-list>\r\n <mat-autocomplete #grantAuto=\"matAutocomplete\" (optionSelected)=\"addGrant(grantInput, $event)\">\r\n <mat-option *ngFor=\"let u of gusers$ | async\" [value]=\"u.id\">\r\n {{u.name}}\r\n <span *ngIf=\"u.email\"> - {{u.email}}</span>\r\n </mat-option>\r\n </mat-autocomplete>\r\n <mat-hint>{{'GrantTip' | translate}}</mat-hint>\r\n </mat-form-field>\r\n </div>\r\n </mat-expansion-panel>\r\n <mat-expansion-panel #preferences>\r\n <mat-expansion-panel-header>\r\n <mat-panel-title>\r\n {{'Preferences' | translate}}\r\n </mat-panel-title>\r\n <mat-panel-description>\r\n <!--<mat-icon></mat-icon>-->\r\n </mat-panel-description>\r\n </mat-expansion-panel-header>\r\n <div fxLayout=\"column\">\r\n <mat-form-field>\r\n <mat-chip-list #chips [selectable]=\"false\" multiple>\r\n <mat-chip *ngFor=\"let item of form.value.tags\"\r\n [removable]=\"true\" (removed)=\"removeTag(item)\">\r\n {{item}}\r\n <mat-icon matChipRemove>cancel</mat-icon>\r\n </mat-chip>\r\n <input [placeholder]=\"'Tags'|translate\"\r\n [matChipInputFor]=\"chips\"\r\n [matChipInputSeparatorKeyCodes]=\"separatorKeysCodes\"\r\n [matChipInputAddOnBlur]=\"true\"\r\n (matChipInputTokenEnd)=\"addTag($event)\">\r\n </mat-chip-list>\r\n </mat-form-field>\r\n <mat-slide-toggle [formControl]=\"aRIA\">{{'ARIA' | translate}}</mat-slide-toggle>\r\n </div>\r\n </mat-expansion-panel>\r\n </mat-accordion>\r\n</form>\r\n", styles: [":host{max-width:80vw}.grant-section{display:flex;flex-direction:column}\n"] }]
|
|
17831
17874
|
}], ctorParameters: function () { return [{ type: undefined, decorators: [{
|
|
17832
17875
|
type: Inject,
|
|
17833
17876
|
args: [OPTION_PANEL]
|
|
17834
17877
|
}] }, { type: i1$4.OverlayRef }, { type: i1$2.FormBuilder }, { type: AccountService }, { type: PromptService }, { type: SessionService }, { type: undefined, decorators: [{
|
|
17835
17878
|
type: Inject,
|
|
17836
17879
|
args: [BIZDOC_CONFIG]
|
|
17837
|
-
}] }]; }, propDecorators: {
|
|
17880
|
+
}] }]; }, propDecorators: { substitueInput: [{
|
|
17881
|
+
type: ViewChild,
|
|
17882
|
+
args: ['substitueInput', { read: MatInput }]
|
|
17883
|
+
}], grantInput: [{
|
|
17884
|
+
type: ViewChild,
|
|
17885
|
+
args: ['grantInput', { read: MatChipInput }]
|
|
17886
|
+
}], outOfOffice: [{
|
|
17838
17887
|
type: ViewChild,
|
|
17839
17888
|
args: ['outOfOffice', { read: MatExpansionPanel, static: true }]
|
|
17840
17889
|
}], notifications: [{
|
|
@@ -18740,7 +18789,7 @@ class SlotsComponent {
|
|
|
18740
18789
|
queryParams,
|
|
18741
18790
|
policy
|
|
18742
18791
|
});
|
|
18743
|
-
pane.
|
|
18792
|
+
pane._events$.next(new NavigationFullscreen(pane._fullscreen = this.panes.length === 1, pane));
|
|
18744
18793
|
}
|
|
18745
18794
|
route &&
|
|
18746
18795
|
this._sync();
|
|
@@ -18779,7 +18828,7 @@ class SlotsComponent {
|
|
|
18779
18828
|
params,
|
|
18780
18829
|
policy, queryParams
|
|
18781
18830
|
});
|
|
18782
|
-
pane.
|
|
18831
|
+
pane._events$.next(new NavigationFullscreen(pane._fullscreen = this.panes.length === 1, pane));
|
|
18783
18832
|
}
|
|
18784
18833
|
}
|
|
18785
18834
|
});
|
|
@@ -18861,7 +18910,7 @@ class SlotsComponent {
|
|
|
18861
18910
|
for (let i = 0; i < n; i++) {
|
|
18862
18911
|
let pane = this.panes[i];
|
|
18863
18912
|
pane.fullscreen !== (n === 1) &&
|
|
18864
|
-
pane.
|
|
18913
|
+
pane._events$.next(new NavigationFullscreen(pane._fullscreen = n === 1, pane));
|
|
18865
18914
|
}
|
|
18866
18915
|
}
|
|
18867
18916
|
/**
|
|
@@ -19010,21 +19059,22 @@ class SlotsComponent {
|
|
|
19010
19059
|
}
|
|
19011
19060
|
/** */
|
|
19012
19061
|
_sync() {
|
|
19062
|
+
let path = this.panes.filter(p => p.route).map(s => s.fullPath).join(PATH_CHAR);
|
|
19063
|
+
if (this.tabs.length) {
|
|
19064
|
+
const tabs = this.tabs.filter(p => p.route);
|
|
19065
|
+
if (tabs.length)
|
|
19066
|
+
path += PANE_CHAR + tabs.map(s => s.fullPath).join(PATH_CHAR);
|
|
19067
|
+
}
|
|
19068
|
+
const state = this._history();
|
|
19013
19069
|
this._navigating = true;
|
|
19014
|
-
|
|
19070
|
+
history.pushState(state, '', '/' + path);
|
|
19015
19071
|
setTimeout(() => this._navigating = false, 200);
|
|
19016
19072
|
}
|
|
19017
19073
|
/**
|
|
19018
19074
|
*
|
|
19019
19075
|
* @param mode
|
|
19020
19076
|
*/
|
|
19021
|
-
_history(
|
|
19022
|
-
let path = this.panes.filter(p => p.route).map(s => s.fullPath).join(PATH_CHAR);
|
|
19023
|
-
if (this.tabs.length) {
|
|
19024
|
-
const tabs = this.tabs.filter(p => p.route);
|
|
19025
|
-
if (tabs.length)
|
|
19026
|
-
path += PANE_CHAR + tabs.map(s => s.fullPath).join(PATH_CHAR);
|
|
19027
|
-
}
|
|
19077
|
+
_history() {
|
|
19028
19078
|
const state = {
|
|
19029
19079
|
bizdoc: true,
|
|
19030
19080
|
step: history.state && history.state.bizdoc ? history.state.step + 1 : 1,
|
|
@@ -19036,10 +19086,7 @@ class SlotsComponent {
|
|
|
19036
19086
|
swapTab: this.swapTab,
|
|
19037
19087
|
prevGroup: this.prevGroup
|
|
19038
19088
|
};
|
|
19039
|
-
|
|
19040
|
-
history.pushState(state, '', '/' + path);
|
|
19041
|
-
else
|
|
19042
|
-
history.replaceState(state, '');
|
|
19089
|
+
return state;
|
|
19043
19090
|
}
|
|
19044
19091
|
drop(evt) {
|
|
19045
19092
|
const pane = this.panes[evt.previousIndex];
|
|
@@ -19174,7 +19221,7 @@ class SlotsComponent {
|
|
|
19174
19221
|
}
|
|
19175
19222
|
insert(position, component, options) {
|
|
19176
19223
|
const pane = this._insertPane(component, options || {}, position);
|
|
19177
|
-
pane.
|
|
19224
|
+
pane._events$.next(new NavigationFullscreen(pane._fullscreen = this.panes.length === 1, pane));
|
|
19178
19225
|
return pane;
|
|
19179
19226
|
}
|
|
19180
19227
|
_insertPane(component, options, position) {
|
|
@@ -19306,7 +19353,8 @@ class SlotsComponent {
|
|
|
19306
19353
|
this.expandPane();
|
|
19307
19354
|
break;
|
|
19308
19355
|
case 'refresh': {
|
|
19309
|
-
this._history(
|
|
19356
|
+
const state = this._history();
|
|
19357
|
+
history.replaceState(state, '');
|
|
19310
19358
|
break;
|
|
19311
19359
|
}
|
|
19312
19360
|
}
|
|
@@ -19315,11 +19363,11 @@ class SlotsComponent {
|
|
|
19315
19363
|
* escape
|
|
19316
19364
|
* @param event
|
|
19317
19365
|
*/
|
|
19318
|
-
collapse() {
|
|
19366
|
+
async collapse() {
|
|
19319
19367
|
if (!this.tabs.length)
|
|
19320
19368
|
return;
|
|
19321
19369
|
this._clearPending();
|
|
19322
|
-
this._clearTabs();
|
|
19370
|
+
await this._clearTabs();
|
|
19323
19371
|
this._sync();
|
|
19324
19372
|
this._router._events$.next(new CollapseNavigation());
|
|
19325
19373
|
}
|
|
@@ -19337,6 +19385,10 @@ class SlotsComponent {
|
|
|
19337
19385
|
}
|
|
19338
19386
|
closeTab(position) {
|
|
19339
19387
|
const tab = this.tabs[position];
|
|
19388
|
+
let evt = new NavigationClose(tab);
|
|
19389
|
+
tab._events$.next(evt);
|
|
19390
|
+
if (evt._preventDefault)
|
|
19391
|
+
return;
|
|
19340
19392
|
this.tabs.splice(position, 1);
|
|
19341
19393
|
this._destroyPane(tab);
|
|
19342
19394
|
this.selectedTabIndex = this.tabs.length ? position > 0 ? position - 1 : 0 : -1;
|
|
@@ -19356,7 +19408,7 @@ class SlotsComponent {
|
|
|
19356
19408
|
} while (i < this.panes.length);
|
|
19357
19409
|
this.selectedIndex = 0;
|
|
19358
19410
|
this._sync();
|
|
19359
|
-
pane.
|
|
19411
|
+
pane._events$.next(new NavigationFullscreen(pane._fullscreen = true, pane));
|
|
19360
19412
|
}
|
|
19361
19413
|
_getHistoryStep() {
|
|
19362
19414
|
return history.state && history.state.bizdoc ? history.state.step : 0;
|
|
@@ -19368,8 +19420,8 @@ class SlotsComponent {
|
|
|
19368
19420
|
const tab = this.tabs[this.selectedTabIndex];
|
|
19369
19421
|
this.tabs.splice(this.selectedTabIndex, 1);
|
|
19370
19422
|
this.panes.splice(0, this.panes.length, tab);
|
|
19371
|
-
tab.
|
|
19372
|
-
tab.
|
|
19423
|
+
tab._events$.next(new NavigationMode(tab._mode = 'pane', tab));
|
|
19424
|
+
tab._events$.next(new NavigationFullscreen(tab._fullscreen = true, tab));
|
|
19373
19425
|
this.selectedTabIndex = this.tabs.length ? 0 : -1;
|
|
19374
19426
|
this._sync();
|
|
19375
19427
|
}
|
|
@@ -21195,23 +21247,6 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.1", ngImpor
|
|
|
21195
21247
|
args: ['nameInput', { static: true, read: ElementRef }]
|
|
21196
21248
|
}] } });
|
|
21197
21249
|
|
|
21198
|
-
class UserNamePipe {
|
|
21199
|
-
constructor(_accounts) {
|
|
21200
|
-
this._accounts = _accounts;
|
|
21201
|
-
}
|
|
21202
|
-
transform(value) {
|
|
21203
|
-
const subject = new BehaviorSubject(null);
|
|
21204
|
-
this._accounts.get(value).subscribe(u => subject.next(u.name));
|
|
21205
|
-
return subject;
|
|
21206
|
-
}
|
|
21207
|
-
}
|
|
21208
|
-
UserNamePipe.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.1", ngImport: i0, type: UserNamePipe, deps: [{ token: AccountService }], target: i0.ɵɵFactoryTarget.Pipe });
|
|
21209
|
-
UserNamePipe.ɵpipe = i0.ɵɵngDeclarePipe({ minVersion: "12.0.0", version: "13.3.1", ngImport: i0, type: UserNamePipe, name: "userName" });
|
|
21210
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.1", ngImport: i0, type: UserNamePipe, decorators: [{
|
|
21211
|
-
type: Pipe,
|
|
21212
|
-
args: [{ name: 'userName' }]
|
|
21213
|
-
}], ctorParameters: function () { return [{ type: AccountService }]; } });
|
|
21214
|
-
|
|
21215
21250
|
let ReturnActionComponent = class ReturnActionComponent {
|
|
21216
21251
|
constructor(_fb, actionRef, session) {
|
|
21217
21252
|
this._fb = _fb;
|
|
@@ -21611,7 +21646,7 @@ class CubeInfo {
|
|
|
21611
21646
|
*/
|
|
21612
21647
|
_mapAxes(cube, axes) {
|
|
21613
21648
|
const filters = {};
|
|
21614
|
-
axes.forEach((a, i) => a && (filters[cube.axes[i].name] = a));
|
|
21649
|
+
axes.forEach((a, i) => a && cube.axes.length > i && (filters[cube.axes[i].name] = a));
|
|
21615
21650
|
return filters;
|
|
21616
21651
|
}
|
|
21617
21652
|
_open(comp, element, data) {
|
|
@@ -28751,6 +28786,7 @@ let DocumentTraceComponent = class DocumentTraceComponent {
|
|
|
28751
28786
|
this._start = r.start, this._end = r.end;
|
|
28752
28787
|
this._list();
|
|
28753
28788
|
});
|
|
28789
|
+
//let r = localStorage.getItem('trace-range');
|
|
28754
28790
|
this.range = [now.add(-2, 'w').toDate(),
|
|
28755
28791
|
now.toDate()];
|
|
28756
28792
|
this.form.valueChanges.pipe(takeUntil(this._destroy), debounceTime(200)).
|
|
@@ -28773,6 +28809,7 @@ let DocumentTraceComponent = class DocumentTraceComponent {
|
|
|
28773
28809
|
});
|
|
28774
28810
|
}
|
|
28775
28811
|
rangeChanged(args) {
|
|
28812
|
+
//localStorage.setItem('trace-range', args.);
|
|
28776
28813
|
this._dateschange.next(args);
|
|
28777
28814
|
}
|
|
28778
28815
|
guide(evt) {
|
|
@@ -29729,69 +29766,133 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.1", ngImpor
|
|
|
29729
29766
|
args: ['document:keydown', ['$event']]
|
|
29730
29767
|
}] } });
|
|
29731
29768
|
|
|
29732
|
-
class
|
|
29733
|
-
constructor(_accounts, _dialogRef, _fb,
|
|
29769
|
+
class ProfileSettingsDialog {
|
|
29770
|
+
constructor(_accounts, _dialogRef, _fb, model) {
|
|
29734
29771
|
this._accounts = _accounts;
|
|
29735
29772
|
this._dialogRef = _dialogRef;
|
|
29736
29773
|
this._fb = _fb;
|
|
29737
|
-
this.
|
|
29738
|
-
this.
|
|
29739
|
-
this.
|
|
29774
|
+
this.model = model;
|
|
29775
|
+
this.separatorKeysCodes = [ENTER, COMMA, SEMICOLON];
|
|
29776
|
+
this.substitute = this._fb.control([]);
|
|
29777
|
+
this.grants = this._fb.control([]);
|
|
29778
|
+
this.outOfOffice = this._fb.group({
|
|
29740
29779
|
active: this._fb.control(false),
|
|
29741
|
-
substitueId: this._fb.control(null
|
|
29780
|
+
substitueId: this._fb.control(null),
|
|
29742
29781
|
from: this._fb.control(null),
|
|
29743
29782
|
to: this._fb.control(null)
|
|
29744
29783
|
});
|
|
29784
|
+
this.grantAccess = this._fb.group({
|
|
29785
|
+
active: this._fb.control(false),
|
|
29786
|
+
users: this._fb.control(null)
|
|
29787
|
+
});
|
|
29788
|
+
this.form = this._fb.group({
|
|
29789
|
+
outOfOffice: this.outOfOffice,
|
|
29790
|
+
grantAccess: this.grantAccess
|
|
29791
|
+
});
|
|
29745
29792
|
this.userDisplay = (item) => {
|
|
29746
29793
|
return item ? item.name : null;
|
|
29747
29794
|
};
|
|
29748
29795
|
}
|
|
29749
|
-
get model() { return this._data.outOfOffice; }
|
|
29750
29796
|
ngOnInit() {
|
|
29751
|
-
this.users$ = this.userCtrl.valueChanges.pipe(takeUntil$1(this._dialogRef.afterClosed()), filter$1(v => isString(v)), switchMap$1(v => this._accounts.findAll(v)), map$1(r => r.filter(u => u.id !== this._data.userId)));
|
|
29752
29797
|
this.form.patchValue(this.model);
|
|
29753
|
-
|
|
29754
|
-
|
|
29755
|
-
|
|
29756
|
-
|
|
29757
|
-
|
|
29758
|
-
|
|
29798
|
+
const { active, to, from } = this.outOfOffice.controls;
|
|
29799
|
+
if (!this.model.outOfOffice || !this.model.outOfOffice.active) {
|
|
29800
|
+
to.disable({ emitEvent: false });
|
|
29801
|
+
from.disable({ emitEvent: false });
|
|
29802
|
+
this.substitute.disable({ emitEvent: false });
|
|
29803
|
+
}
|
|
29804
|
+
else {
|
|
29805
|
+
this.substitute.addValidators(Validators.required);
|
|
29806
|
+
if (!this.model.outOfOffice.from)
|
|
29807
|
+
to.disable({ emitEvent: false });
|
|
29808
|
+
}
|
|
29809
|
+
this.model.outOfOffice.substitueId &&
|
|
29810
|
+
this._accounts.get(this.model.outOfOffice.substitueId).subscribe(u => this.substitute.setValue(u, { emitEvent: false }));
|
|
29811
|
+
active.valueChanges.pipe(takeUntil$1(this._dialogRef.afterClosed())).
|
|
29759
29812
|
subscribe(active => {
|
|
29760
29813
|
if (active) {
|
|
29761
|
-
|
|
29762
|
-
|
|
29763
|
-
this.
|
|
29764
|
-
this.
|
|
29814
|
+
from.enable();
|
|
29815
|
+
from.value && to.enable();
|
|
29816
|
+
this.substitute.enable();
|
|
29817
|
+
this.substitute.addValidators(Validators.required);
|
|
29818
|
+
this.substitueInput.focus();
|
|
29765
29819
|
}
|
|
29766
29820
|
else {
|
|
29767
|
-
|
|
29768
|
-
|
|
29769
|
-
this.
|
|
29821
|
+
from.disable();
|
|
29822
|
+
to.disable();
|
|
29823
|
+
this.substitute.clearValidators();
|
|
29824
|
+
this.substitute.disable();
|
|
29770
29825
|
}
|
|
29771
29826
|
});
|
|
29772
|
-
this.
|
|
29827
|
+
this.ousers$ = this.substitute.valueChanges.pipe(takeUntil$1(this._dialogRef.afterClosed()), filter$1(v => isString(v)), switchMap$1(v => this._accounts.findAll(v)), map$1(r => r.filter(u => u.id !== this.model.userId)));
|
|
29828
|
+
from.valueChanges.pipe(takeUntil$1(this._dialogRef.afterClosed())).
|
|
29773
29829
|
subscribe(v => {
|
|
29774
29830
|
if (v)
|
|
29775
|
-
|
|
29831
|
+
to.enable();
|
|
29776
29832
|
else
|
|
29777
|
-
|
|
29833
|
+
to.disable();
|
|
29778
29834
|
});
|
|
29835
|
+
if (!this.model.grantAccess || !this.model.grantAccess.active) {
|
|
29836
|
+
this.grants.disable({ emitEvent: false });
|
|
29837
|
+
}
|
|
29838
|
+
this.grantAccess.controls['active'].valueChanges.pipe(takeUntil$1(this._dialogRef.afterClosed())).
|
|
29839
|
+
subscribe(v => {
|
|
29840
|
+
if (v) {
|
|
29841
|
+
this.grants.enable();
|
|
29842
|
+
this.grants.addValidators(Validators.required);
|
|
29843
|
+
this.grantInput.focus();
|
|
29844
|
+
}
|
|
29845
|
+
else {
|
|
29846
|
+
this.grants.clearValidators();
|
|
29847
|
+
}
|
|
29848
|
+
});
|
|
29849
|
+
this.gusers$ = this.grants.valueChanges.pipe(takeUntil$1(this._dialogRef.afterClosed()), filter$1(v => isString(v)), switchMap$1(v => this._accounts.findAll(v)), map$1(r => r.filter(u => u.id !== this.model.userId)));
|
|
29779
29850
|
}
|
|
29780
29851
|
setId(event) {
|
|
29781
|
-
|
|
29852
|
+
const { id } = event.option.value;
|
|
29853
|
+
this.outOfOffice.controls['substitueId'].setValue(id);
|
|
29854
|
+
}
|
|
29855
|
+
/**
|
|
29856
|
+
*
|
|
29857
|
+
* @param id
|
|
29858
|
+
*/
|
|
29859
|
+
removeGrant(id) {
|
|
29860
|
+
const users = this.form.value.grantAccess.users;
|
|
29861
|
+
const index = users.indexOf(id);
|
|
29862
|
+
if (index >= 0)
|
|
29863
|
+
users.splice(index, 1);
|
|
29864
|
+
this.form.patchValue({});
|
|
29865
|
+
}
|
|
29866
|
+
/**
|
|
29867
|
+
*
|
|
29868
|
+
* @param inp
|
|
29869
|
+
* @param event
|
|
29870
|
+
*/
|
|
29871
|
+
addGrant(inp, event) {
|
|
29872
|
+
const users = this.form.value.grantAccess.users;
|
|
29873
|
+
const id = event.option.value;
|
|
29874
|
+
if (!users)
|
|
29875
|
+
this.grantAccess.controls['users'].setValue([id]);
|
|
29876
|
+
else
|
|
29877
|
+
users.push(id);
|
|
29878
|
+
inp.value = '';
|
|
29879
|
+
this.form.patchValue({});
|
|
29782
29880
|
}
|
|
29783
29881
|
}
|
|
29784
|
-
|
|
29785
|
-
|
|
29786
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.1", ngImport: i0, type:
|
|
29882
|
+
ProfileSettingsDialog.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.1", ngImport: i0, type: ProfileSettingsDialog, deps: [{ token: AccountService }, { token: i3$1.MatDialogRef }, { token: i1$2.FormBuilder }, { token: MAT_DIALOG_DATA }], target: i0.ɵɵFactoryTarget.Component });
|
|
29883
|
+
ProfileSettingsDialog.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.3.1", type: ProfileSettingsDialog, selector: "ng-component", viewQueries: [{ propertyName: "substitueInput", first: true, predicate: ["substitueInput"], descendants: true, read: MatInput }, { propertyName: "grantInput", first: true, predicate: ["grantInput"], descendants: true, read: MatChipInput }], ngImport: i0, template: "<h2 mat-dialog-title>{{'Settings' | translate }}</h2>\r\n<mat-dialog-content>\r\n <form autocomplete=\"off\" [formGroup]=\"form\">\r\n <div fxLayout=\"column\" formGroupName=\"outOfOffice\">\r\n <h3 class=\"mat-body-strong\">{{'OutOfOffice'|translate}}</h3>\r\n <mat-slide-toggle formControlName=\"active\">{{'Active' | translate}}</mat-slide-toggle>\r\n <br />\r\n <mat-form-field fxFlex>\r\n <input matInput [formControl]=\"substitute\" type=\"search\" [matAutocomplete]=\"sauto\" #substitueInput\r\n [placeholder]=\"'Associate' | translate\" [required]=\"outOfOffice.value.active\" />\r\n <mat-autocomplete #sauto=\"matAutocomplete\" [displayWith]=\"userDisplay\"\r\n (optionSelected)=\"setId($event)\">\r\n <mat-option *ngFor=\"let u of ousers$ | async\" [value]=\"u\">\r\n <span>{{u.name}}</span>\r\n </mat-option>\r\n </mat-autocomplete>\r\n </mat-form-field>\r\n <div>\r\n <mat-form-field>\r\n <input matInput [matDatepicker]=\"from\" formControlName=\"from\" placeholder=\"{{'From'| translate}}\" />\r\n <mat-datepicker-toggle [for]=\"from\" matSuffix></mat-datepicker-toggle>\r\n <mat-datepicker #from></mat-datepicker>\r\n </mat-form-field>\r\n \r\n <mat-form-field>\r\n <input matInput [matDatepicker]=\"to\" formControlName=\"to\" [min]=\"form.value?.from\" placeholder=\"{{'To'| translate}}\" />\r\n <mat-datepicker-toggle [for]=\"to\" matSuffix></mat-datepicker-toggle>\r\n <mat-datepicker #to></mat-datepicker>\r\n </mat-form-field>\r\n </div>\r\n </div>\r\n <!--<hr />-->\r\n <div fxLayout=\"column\" formGroupName=\"grantAccess\">\r\n <h3 class=\"mat-body-strong\">{{'GrantAccess'|translate}}</h3>\r\n <mat-slide-toggle formControlName=\"active\">{{'Active' | translate}}</mat-slide-toggle>\r\n <mat-form-field>\r\n <mat-chip-list #grantList [attr.aria-label]=\"\" [disabled]=\"!grantAccess.value.active\">\r\n <mat-chip *ngFor=\"let u of grantAccess.value.users || []\"\r\n [removable]=\"grantAccess.value.active\"\r\n (removed)=\"removeGrant(u)\">\r\n {{u | userName | async}}\r\n <mat-icon matChipRemove>cancel</mat-icon>\r\n </mat-chip>\r\n <input [formControl]=\"grants\" placeholder=\"{{'Users'| translate}}\"\r\n [required]=\"grantAccess.value.active\"\r\n [matAutocomplete]=\"grantAuto\"\r\n #grantInput\r\n [matChipInputFor]=\"grantList\"\r\n [matChipInputSeparatorKeyCodes]=\"separatorKeysCodes\">\r\n </mat-chip-list>\r\n <mat-autocomplete #grantAuto=\"matAutocomplete\" (optionSelected)=\"addGrant(grantInput, $event)\">\r\n <mat-option *ngFor=\"let u of gusers$ | async\" [value]=\"u.id\">\r\n {{u.name}}\r\n <span *ngIf=\"u.email\"> - {{u.email}}</span>\r\n </mat-option>\r\n </mat-autocomplete>\r\n </mat-form-field>\r\n </div> \r\n </form>\r\n</mat-dialog-content>\r\n<mat-dialog-actions>\r\n <button mat-button [mat-dialog-close]=\"form.value\" color=\"primary\" [disabled]=\"!form.valid\">{{'OK' | translate}}</button>\r\n <button mat-button mat-dialog-close>{{'Cancel' | translate}}</button>\r\n</mat-dialog-actions>\r\n", components: [{ type: i1$3.MatSlideToggle, selector: "mat-slide-toggle", inputs: ["disabled", "disableRipple", "color", "tabIndex", "name", "id", "labelPosition", "aria-label", "aria-labelledby", "aria-describedby", "required", "checked"], outputs: ["change", "toggleChange"], exportAs: ["matSlideToggle"] }, { type: i1$1.MatFormField, selector: "mat-form-field", inputs: ["color", "appearance", "hideRequiredMarker", "hintLabel", "floatLabel"], exportAs: ["matFormField"] }, { type: i5$1.MatAutocomplete, selector: "mat-autocomplete", inputs: ["disableRipple"], exportAs: ["matAutocomplete"] }, { type: i6.MatOption, selector: "mat-option", exportAs: ["matOption"] }, { type: i3.MatDatepickerToggle, selector: "mat-datepicker-toggle", inputs: ["for", "tabIndex", "aria-label", "disabled", "disableRipple"], exportAs: ["matDatepickerToggle"] }, { type: i3.MatDatepicker, selector: "mat-datepicker", exportAs: ["matDatepicker"] }, { type: i3$2.MatChipList, selector: "mat-chip-list", inputs: ["errorStateMatcher", "multiple", "compareWith", "value", "required", "placeholder", "disabled", "aria-orientation", "selectable", "tabIndex"], outputs: ["change", "valueChange"], exportAs: ["matChipList"] }, { type: i8.MatIcon, selector: "mat-icon", inputs: ["color", "inline", "svgIcon", "fontSet", "fontIcon"], exportAs: ["matIcon"] }, { type: i7$1.MatButton, selector: "button[mat-button], button[mat-raised-button], button[mat-icon-button], button[mat-fab], button[mat-mini-fab], button[mat-stroked-button], button[mat-flat-button]", inputs: ["disabled", "disableRipple", "color"], exportAs: ["matButton"] }], directives: [{ type: i3$1.MatDialogTitle, selector: "[mat-dialog-title], [matDialogTitle]", inputs: ["id"], exportAs: ["matDialogTitle"] }, { type: i3$1.MatDialogContent, selector: "[mat-dialog-content], mat-dialog-content, [matDialogContent]" }, { type: i1$2.ɵNgNoValidate, selector: "form:not([ngNoForm]):not([ngNativeValidate])" }, { type: i1$2.NgControlStatusGroup, selector: "[formGroupName],[formArrayName],[ngModelGroup],[formGroup],form:not([ngNoForm]),[ngForm]" }, { type: i1$2.FormGroupDirective, selector: "[formGroup]", inputs: ["formGroup"], outputs: ["ngSubmit"], exportAs: ["ngForm"] }, { type: i23.DefaultLayoutDirective, selector: " [fxLayout], [fxLayout.xs], [fxLayout.sm], [fxLayout.md], [fxLayout.lg], [fxLayout.xl], [fxLayout.lt-sm], [fxLayout.lt-md], [fxLayout.lt-lg], [fxLayout.lt-xl], [fxLayout.gt-xs], [fxLayout.gt-sm], [fxLayout.gt-md], [fxLayout.gt-lg]", inputs: ["fxLayout", "fxLayout.xs", "fxLayout.sm", "fxLayout.md", "fxLayout.lg", "fxLayout.xl", "fxLayout.lt-sm", "fxLayout.lt-md", "fxLayout.lt-lg", "fxLayout.lt-xl", "fxLayout.gt-xs", "fxLayout.gt-sm", "fxLayout.gt-md", "fxLayout.gt-lg"] }, { type: i1$2.FormGroupName, selector: "[formGroupName]", inputs: ["formGroupName"] }, { type: i1$2.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { type: i1$2.FormControlName, selector: "[formControlName]", inputs: ["formControlName", "disabled", "ngModel"], outputs: ["ngModelChange"] }, { type: i23.DefaultFlexDirective, selector: " [fxFlex], [fxFlex.xs], [fxFlex.sm], [fxFlex.md], [fxFlex.lg], [fxFlex.xl], [fxFlex.lt-sm], [fxFlex.lt-md], [fxFlex.lt-lg], [fxFlex.lt-xl], [fxFlex.gt-xs], [fxFlex.gt-sm], [fxFlex.gt-md], [fxFlex.gt-lg]", inputs: ["fxFlex", "fxFlex.xs", "fxFlex.sm", "fxFlex.md", "fxFlex.lg", "fxFlex.xl", "fxFlex.lt-sm", "fxFlex.lt-md", "fxFlex.lt-lg", "fxFlex.lt-xl", "fxFlex.gt-xs", "fxFlex.gt-sm", "fxFlex.gt-md", "fxFlex.gt-lg"] }, { type: i9.MatInput, selector: "input[matInput], textarea[matInput], select[matNativeControl], input[matNativeControl], textarea[matNativeControl]", inputs: ["disabled", "id", "placeholder", "name", "required", "type", "errorStateMatcher", "aria-describedby", "value", "readonly"], exportAs: ["matInput"] }, { 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]" }, { type: i5$1.MatAutocompleteTrigger, selector: "input[matAutocomplete], textarea[matAutocomplete]", exportAs: ["matAutocompleteTrigger"] }, { type: i1$2.FormControlDirective, selector: "[formControl]", inputs: ["formControl", "disabled", "ngModel"], outputs: ["ngModelChange"], exportAs: ["ngForm"] }, { type: i1$2.RequiredValidator, selector: ":not([type=checkbox])[required][formControlName],:not([type=checkbox])[required][formControl],:not([type=checkbox])[required][ngModel]", inputs: ["required"] }, { type: i10.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { type: i3.MatDatepickerInput, selector: "input[matDatepicker]", inputs: ["matDatepicker", "min", "max", "matDatepickerFilter"], exportAs: ["matDatepickerInput"] }, { type: i1$1.MatSuffix, selector: "[matSuffix]" }, { type: i3$2.MatChip, selector: "mat-basic-chip, [mat-basic-chip], mat-chip, [mat-chip]", inputs: ["color", "disableRipple", "tabIndex", "selected", "value", "selectable", "disabled", "removable"], outputs: ["selectionChange", "destroyed", "removed"], exportAs: ["matChip"] }, { type: i3$2.MatChipRemove, selector: "[matChipRemove]" }, { type: i3$2.MatChipInput, selector: "input[matChipInputFor]", inputs: ["matChipInputFor", "matChipInputAddOnBlur", "matChipInputSeparatorKeyCodes", "placeholder", "id", "disabled"], outputs: ["matChipInputTokenEnd"], exportAs: ["matChipInput", "matChipInputFor"] }, { type: i10.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { type: i3$1.MatDialogActions, selector: "[mat-dialog-actions], mat-dialog-actions, [matDialogActions]" }, { type: i3$1.MatDialogClose, selector: "[mat-dialog-close], [matDialogClose]", inputs: ["aria-label", "type", "mat-dialog-close", "matDialogClose"], exportAs: ["matDialogClose"] }], pipes: { "translate": TranslatePipe, "async": i10.AsyncPipe, "userName": UserNamePipe } });
|
|
29884
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.1", ngImport: i0, type: ProfileSettingsDialog, decorators: [{
|
|
29787
29885
|
type: Component,
|
|
29788
|
-
args: [{ template: "<h2 mat-dialog-title>{{'
|
|
29886
|
+
args: [{ template: "<h2 mat-dialog-title>{{'Settings' | translate }}</h2>\r\n<mat-dialog-content>\r\n <form autocomplete=\"off\" [formGroup]=\"form\">\r\n <div fxLayout=\"column\" formGroupName=\"outOfOffice\">\r\n <h3 class=\"mat-body-strong\">{{'OutOfOffice'|translate}}</h3>\r\n <mat-slide-toggle formControlName=\"active\">{{'Active' | translate}}</mat-slide-toggle>\r\n <br />\r\n <mat-form-field fxFlex>\r\n <input matInput [formControl]=\"substitute\" type=\"search\" [matAutocomplete]=\"sauto\" #substitueInput\r\n [placeholder]=\"'Associate' | translate\" [required]=\"outOfOffice.value.active\" />\r\n <mat-autocomplete #sauto=\"matAutocomplete\" [displayWith]=\"userDisplay\"\r\n (optionSelected)=\"setId($event)\">\r\n <mat-option *ngFor=\"let u of ousers$ | async\" [value]=\"u\">\r\n <span>{{u.name}}</span>\r\n </mat-option>\r\n </mat-autocomplete>\r\n </mat-form-field>\r\n <div>\r\n <mat-form-field>\r\n <input matInput [matDatepicker]=\"from\" formControlName=\"from\" placeholder=\"{{'From'| translate}}\" />\r\n <mat-datepicker-toggle [for]=\"from\" matSuffix></mat-datepicker-toggle>\r\n <mat-datepicker #from></mat-datepicker>\r\n </mat-form-field>\r\n \r\n <mat-form-field>\r\n <input matInput [matDatepicker]=\"to\" formControlName=\"to\" [min]=\"form.value?.from\" placeholder=\"{{'To'| translate}}\" />\r\n <mat-datepicker-toggle [for]=\"to\" matSuffix></mat-datepicker-toggle>\r\n <mat-datepicker #to></mat-datepicker>\r\n </mat-form-field>\r\n </div>\r\n </div>\r\n <!--<hr />-->\r\n <div fxLayout=\"column\" formGroupName=\"grantAccess\">\r\n <h3 class=\"mat-body-strong\">{{'GrantAccess'|translate}}</h3>\r\n <mat-slide-toggle formControlName=\"active\">{{'Active' | translate}}</mat-slide-toggle>\r\n <mat-form-field>\r\n <mat-chip-list #grantList [attr.aria-label]=\"\" [disabled]=\"!grantAccess.value.active\">\r\n <mat-chip *ngFor=\"let u of grantAccess.value.users || []\"\r\n [removable]=\"grantAccess.value.active\"\r\n (removed)=\"removeGrant(u)\">\r\n {{u | userName | async}}\r\n <mat-icon matChipRemove>cancel</mat-icon>\r\n </mat-chip>\r\n <input [formControl]=\"grants\" placeholder=\"{{'Users'| translate}}\"\r\n [required]=\"grantAccess.value.active\"\r\n [matAutocomplete]=\"grantAuto\"\r\n #grantInput\r\n [matChipInputFor]=\"grantList\"\r\n [matChipInputSeparatorKeyCodes]=\"separatorKeysCodes\">\r\n </mat-chip-list>\r\n <mat-autocomplete #grantAuto=\"matAutocomplete\" (optionSelected)=\"addGrant(grantInput, $event)\">\r\n <mat-option *ngFor=\"let u of gusers$ | async\" [value]=\"u.id\">\r\n {{u.name}}\r\n <span *ngIf=\"u.email\"> - {{u.email}}</span>\r\n </mat-option>\r\n </mat-autocomplete>\r\n </mat-form-field>\r\n </div> \r\n </form>\r\n</mat-dialog-content>\r\n<mat-dialog-actions>\r\n <button mat-button [mat-dialog-close]=\"form.value\" color=\"primary\" [disabled]=\"!form.valid\">{{'OK' | translate}}</button>\r\n <button mat-button mat-dialog-close>{{'Cancel' | translate}}</button>\r\n</mat-dialog-actions>\r\n" }]
|
|
29789
29887
|
}], ctorParameters: function () { return [{ type: AccountService }, { type: i3$1.MatDialogRef }, { type: i1$2.FormBuilder }, { type: undefined, decorators: [{
|
|
29790
29888
|
type: Inject,
|
|
29791
29889
|
args: [MAT_DIALOG_DATA]
|
|
29792
|
-
}] }]; }, propDecorators: {
|
|
29890
|
+
}] }]; }, propDecorators: { substitueInput: [{
|
|
29891
|
+
type: ViewChild,
|
|
29892
|
+
args: ['substitueInput', { read: MatInput }]
|
|
29893
|
+
}], grantInput: [{
|
|
29793
29894
|
type: ViewChild,
|
|
29794
|
-
args: ['
|
|
29895
|
+
args: ['grantInput', { read: MatChipInput }]
|
|
29795
29896
|
}] } });
|
|
29796
29897
|
|
|
29797
29898
|
let ProfilerComponent = class ProfilerComponent {
|
|
@@ -29854,6 +29955,7 @@ let ProfilerComponent = class ProfilerComponent {
|
|
|
29854
29955
|
this.theme = this._session.theme.dark ? 'MaterialDark' : 'Material';
|
|
29855
29956
|
this.cols = 2;
|
|
29856
29957
|
this._destroy = new Subject();
|
|
29958
|
+
this.separatorKeysCodes = [ENTER, COMMA, SEMICOLON];
|
|
29857
29959
|
media.media$.pipe(takeUntil(this._destroy)).subscribe(m => this.cols = m.mqAlias === 'sm' || m.mqAlias === 'xm' ? 1 : 2);
|
|
29858
29960
|
_session.themeChange.pipe(takeUntil(this._destroy)).subscribe(t => {
|
|
29859
29961
|
this.theme = t.dark ? 'MaterialDark' : 'Material';
|
|
@@ -29869,12 +29971,12 @@ let ProfilerComponent = class ProfilerComponent {
|
|
|
29869
29971
|
this.users$ = this.search.valueChanges.pipe(takeUntil(this._destroy), debounceTime(250), filter(v => !isObject(v)), switchMap(v => this._accounts.findAll(v)));
|
|
29870
29972
|
}
|
|
29871
29973
|
guide(evt) {
|
|
29872
|
-
const steps = [
|
|
29873
|
-
selector: '[data-help=search]',
|
|
29874
|
-
position: 'Below',
|
|
29875
|
-
content: this._translate.get('ProfilerSearchHelp')
|
|
29876
|
-
}];
|
|
29974
|
+
const steps = [];
|
|
29877
29975
|
if (this.data) {
|
|
29976
|
+
steps.push({
|
|
29977
|
+
selector: '[data-help=settings]',
|
|
29978
|
+
content: this._translate.get('OutOfOfficeHelp')
|
|
29979
|
+
});
|
|
29878
29980
|
Object.keys(this.data.activity).length &&
|
|
29879
29981
|
steps.push({
|
|
29880
29982
|
selector: '[data-help=activity]',
|
|
@@ -29897,8 +29999,9 @@ let ProfilerComponent = class ProfilerComponent {
|
|
|
29897
29999
|
}
|
|
29898
30000
|
else
|
|
29899
30001
|
steps.push({
|
|
29900
|
-
selector: '[data-help=
|
|
29901
|
-
|
|
30002
|
+
selector: '[data-help=search]',
|
|
30003
|
+
position: 'Below',
|
|
30004
|
+
content: this._translate.get('ProfilerSearchHelp')
|
|
29902
30005
|
});
|
|
29903
30006
|
this._guide.start({
|
|
29904
30007
|
name: 'profiler',
|
|
@@ -29973,17 +30076,21 @@ let ProfilerComponent = class ProfilerComponent {
|
|
|
29973
30076
|
this._dialog.open(this.assignTpl, {}).afterClosed().
|
|
29974
30077
|
subscribe(u => u && this._reassign(u, position));
|
|
29975
30078
|
}
|
|
29976
|
-
|
|
29977
|
-
this._dialog.open(
|
|
30079
|
+
settings() {
|
|
30080
|
+
this._dialog.open(ProfileSettingsDialog, {
|
|
29978
30081
|
closeOnNavigation: true,
|
|
29979
|
-
disableClose: true,
|
|
29980
30082
|
data: {
|
|
29981
30083
|
userId: this.data.info.id,
|
|
30084
|
+
grantAccess: this.data.grantAccess,
|
|
29982
30085
|
outOfOffice: this.data.outOfOffice
|
|
29983
30086
|
}
|
|
29984
30087
|
}).afterClosed().
|
|
29985
|
-
subscribe(v => v && this._utilityRef.execute({
|
|
29986
|
-
|
|
30088
|
+
subscribe(v => v && this._utilityRef.execute({
|
|
30089
|
+
outOfOffice: v.outOfOffice,
|
|
30090
|
+
grantAccess: v.grantAccess,
|
|
30091
|
+
userId: this.data.info.id
|
|
30092
|
+
}).subscribe(() => {
|
|
30093
|
+
Object.assign(this.data);
|
|
29987
30094
|
this._sb.toast('ChangesSaved');
|
|
29988
30095
|
}, () => this._sb.error()));
|
|
29989
30096
|
}
|
|
@@ -30006,7 +30113,7 @@ let ProfilerComponent = class ProfilerComponent {
|
|
|
30006
30113
|
}
|
|
30007
30114
|
};
|
|
30008
30115
|
ProfilerComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.1", ngImport: i0, type: ProfilerComponent, deps: [{ token: PromptService }, { token: UtilityRef }, { token: SessionService }, { token: i3$1.MatDialog }, { token: DocumentInfo }, { token: i2$4.MediaObserver }, { token: ChatInfo }, { token: GuideService }, { token: PanesRouter }, { token: i0.ChangeDetectorRef }, { token: PaneRef }, { token: TranslateService }, { token: AccountService }, { token: i1$2.FormBuilder }], target: i0.ɵɵFactoryTarget.Component });
|
|
30009
|
-
ProfilerComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.3.1", type: ProfilerComponent, selector: "ng-component", host: { listeners: { "window:keydown.f1": "guide($event)", "window:resize": "resize()" }, classAttribute: "pane" }, viewQueries: [{ propertyName: "chart", first: true, predicate: ["activity"], descendants: true }, { propertyName: "chartElement", first: true, predicate: ["activity"], descendants: true, read: ElementRef }, { propertyName: "assignTpl", first: true, predicate: ["assignTpl"], descendants: true }], ngImport: i0, template: "<mat-toolbar>\r\n <mat-icon (click)=\"null\" class=\"mat-icon-rtl-mirror\">search</mat-icon>\r\n <input matInput type=\"search\" [matAutocomplete]=\"auto\" [formControl]=\"search\" data-help=\"search\" width=\"20\" />\r\n <mat-autocomplete #auto=\"matAutocomplete\" [displayWith]=\"userDisplay\"\r\n (optionSelected)=\"change($event)\">\r\n <mat-option *ngFor=\"let u of users$ | async\" [value]=\"u\">\r\n <span>{{u.name}}</span>\r\n </mat-option>\r\n </mat-autocomplete>\r\n <span class=\"divider\"></span>\r\n <button mat-icon-button (click)=\"guide()\" [bizdocTooltip]=\"'Help' | translate\"><mat-icon>help_outline</mat-icon></button>\r\n</mat-toolbar>\r\n<div *ngIf=\"data\" fxLayout=\"row wrap\">\r\n <!-- info -->\r\n <mat-card fxFlex>\r\n <mat-card-header>\r\n <mat-card-title>\r\n <span>{{data.info.name}}</span>\r\n </mat-card-title>\r\n </mat-card-header>\r\n <mat-card-content>\r\n <br />\r\n </mat-card-content>\r\n <mat-card-actions>\r\n <button mat-icon-button (click)=\"chat()\" [bizdocTooltip]=\"'Chat' | translate\" [disabled]=\"!data\"><mat-icon>chat</mat-icon></button>\r\n <span class=\"divider\"></span>\r\n <button mat-icon-button (click)=\"outOfOffice()\" [bizdocTooltip]=\"'OutOfOffice' | translate\" [disabled]=\"!data\" data-help=\"out-of-office\"><mat-icon>settings</mat-icon></button>\r\n </mat-card-actions>\r\n </mat-card>\r\n <mat-card fxFlex data-help=\"activity\">\r\n <mat-card-header>\r\n <mat-card-title>\r\n {{'Activity' | translate}}\r\n </mat-card-title>\r\n </mat-card-header>\r\n <mat-card-content>\r\n <ejs-chart #activity [primaryXAxis]=\"primaryXAxis\" [primaryYAxis]=\"primaryYAxis\" [zoomSettings]=\"zoomSettings\" [tooltip]='tooltip' (tooltipRender)=\"tooltipRender($event)\" [palettes]=\"palettes\" background=\"transparent\" [theme]='theme' [border]=\"border\" (pointClick)=\"pointClick($event)\">\r\n <e-series-collection>\r\n </e-series-collection>\r\n </ejs-chart>\r\n </mat-card-content>\r\n </mat-card>\r\n <!-- pending -->\r\n <mat-card fxFlex data-help=\"pending\">\r\n <mat-card-header>\r\n <mat-card-title>\r\n {{'Pending' | translate}}\r\n </mat-card-title>\r\n </mat-card-header>\r\n <mat-card-content>\r\n <table class=\"mat-table\" *ngIf=\"data.pending.length; else none\">\r\n <thead>\r\n <tr class=\"mat-row\">\r\n <td class=\"mat-header-cell\"></td>\r\n <td class=\"mat-header-cell\"></td>\r\n </tr>\r\n </thead>\r\n <tbody>\r\n <tr *ngFor=\"let r of data.pending\" class=\"mat-row\">\r\n <td class=\"mat-cell\"><a (click)=\"trace(r.id)\">{{r.number}}</a></td>\r\n <td class=\"mat-cell\">{{ r.received | amDifference : null : 's' | amDuration : 's'}}</td>\r\n </tr>\r\n </tbody>\r\n </table>\r\n </mat-card-content>\r\n </mat-card>\r\n <!-- positions -->\r\n <mat-card fxFlex data-help=\"positions\">\r\n <mat-card-header>\r\n <mat-card-title>\r\n {{'Positions' | translate}}\r\n </mat-card-title>\r\n </mat-card-header>\r\n <mat-card-content>\r\n <table class=\"mat-table\" *ngIf=\"data.positions.length; else none\">\r\n <tr *ngFor=\"let p of data.positions\" class=\"mat-row\">\r\n <td class=\"mat-cell\">{{p.value }}</td>\r\n <td class=\"mat-cell\">{{p.role | role}}</td>\r\n <td class=\"mat-cell\">\r\n <button mat-icon-button (click)=\"reassign(p)\" [bizdocTooltip]=\"'Reassign' | translate\"><mat-icon>swap_horiz</mat-icon></button>\r\n </td>\r\n </tr>\r\n </table>\r\n </mat-card-content>\r\n <mat-card-actions>\r\n <span class=\"divider\"></span>\r\n <button mat-icon-button (click)=\"reassign()\" [bizdocTooltip]=\"'ReassignAll' | translate\" [disabled]=\"!data || !data.positions.length\" data-help=\"reassign\"><mat-icon>swap_horiz</mat-icon></button>\r\n </mat-card-actions>\r\n </mat-card>\r\n</div>\r\n<!-- assign dialog -->\r\n<ng-template #assignTpl>\r\n <h2 mat-dialog-title>{{'Reassign' | translate }}</h2>\r\n <mat-dialog-content>\r\n <form autocomplete=\"off\" fxLayout=\"column\">\r\n <mat-form-field>\r\n <mat-select placeholder=\"{{'Who' | translate}}\" [formControl]=\"who\" required>\r\n <mat-option *ngFor=\"let u of assignable$ | async\" [value]=\"u.id\">{{u.name}}</mat-option>\r\n </mat-select>\r\n </mat-form-field>\r\n </form>\r\n </mat-dialog-content>\r\n <mat-dialog-actions>\r\n <button mat-button [mat-dialog-close]=\"who.value\" color=\"primary\" [disabled]=\"!who.valid\">{{'OK' | translate}}</button>\r\n <button mat-button mat-dialog-close>{{'Cancel' | translate}}</button>\r\n </mat-dialog-actions>\r\n</ng-template>\r\n<ng-template #none>\r\n <span class=\"mat-body-2\">{{'None' | translate }}</span>\r\n</ng-template>\r\n", styles: [":host{min-width:560px;display:block}.mat-card{margin:5px}.mat-card:hover{box-shadow:0 3px 3px -2px #0003,0 3px 4px #00000024,0 1px 8px #0000001f}.mat-table{width:100%}\n"], components: [{ type: i7$3.MatToolbar, selector: "mat-toolbar", inputs: ["color"], exportAs: ["matToolbar"] }, { type: i8.MatIcon, selector: "mat-icon", inputs: ["color", "inline", "svgIcon", "fontSet", "fontIcon"], exportAs: ["matIcon"] }, { type: i5$1.MatAutocomplete, selector: "mat-autocomplete", inputs: ["disableRipple"], exportAs: ["matAutocomplete"] }, { type: i6.MatOption, selector: "mat-option", exportAs: ["matOption"] }, { type: i7$1.MatButton, selector: "button[mat-button], button[mat-raised-button], button[mat-icon-button], button[mat-fab], button[mat-mini-fab], button[mat-stroked-button], button[mat-flat-button]", inputs: ["disabled", "disableRipple", "color"], exportAs: ["matButton"] }, { type: i19.MatCard, selector: "mat-card", exportAs: ["matCard"] }, { type: i19.MatCardHeader, selector: "mat-card-header" }, { type: i16.ChartComponent, selector: "ejs-chart", inputs: ["allowExport", "allowMultiSelection", "annotations", "axes", "background", "backgroundImage", "border", "chartArea", "columns", "crosshair", "currencyCode", "dataSource", "description", "enableAnimation", "enableAutoIntervalOnBothAxis", "enableCanvas", "enableExport", "enablePersistence", "enableRtl", "enableSideBySidePlacement", "height", "highlightColor", "highlightMode", "highlightPattern", "indicators", "isMultiSelect", "isTransposed", "legendSettings", "locale", "margin", "palettes", "primaryXAxis", "primaryYAxis", "rangeColorSettings", "rows", "selectedDataIndexes", "selectionMode", "selectionPattern", "series", "subTitle", "subTitleStyle", "tabIndex", "theme", "title", "titleStyle", "tooltip", "useGroupingSeparator", "width", "zoomSettings"], outputs: ["afterExport", "animationComplete", "annotationRender", "axisLabelClick", "axisLabelRender", "axisMultiLabelRender", "axisRangeCalculated", "beforeExport", "beforePrint", "beforeResize", "chartDoubleClick", "chartMouseClick", "chartMouseDown", "chartMouseLeave", "chartMouseMove", "chartMouseUp", "drag", "dragComplete", "dragEnd", "dragStart", "legendClick", "legendRender", "load", "loaded", "multiLevelLabelClick", "onZooming", "pointClick", "pointDoubleClick", "pointMove", "pointRender", "resized", "scrollChanged", "scrollEnd", "scrollStart", "selectionComplete", "seriesRender", "sharedTooltipRender", "textRender", "tooltipRender", "zoomComplete", "dataSourceChange"] }, { type: i1$1.MatFormField, selector: "mat-form-field", inputs: ["color", "appearance", "hideRequiredMarker", "hintLabel", "floatLabel"], exportAs: ["matFormField"] }, { type: i5.MatSelect, selector: "mat-select", inputs: ["disabled", "disableRipple", "tabIndex"], exportAs: ["matSelect"] }], directives: [{ type: i9.MatInput, selector: "input[matInput], textarea[matInput], select[matNativeControl], input[matNativeControl], textarea[matNativeControl]", inputs: ["disabled", "id", "placeholder", "name", "required", "type", "errorStateMatcher", "aria-describedby", "value", "readonly"], exportAs: ["matInput"] }, { type: i5$1.MatAutocompleteTrigger, selector: "input[matAutocomplete], textarea[matAutocomplete]", exportAs: ["matAutocompleteTrigger"] }, { 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]" }, { type: i1$2.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { type: i1$2.FormControlDirective, selector: "[formControl]", inputs: ["formControl", "disabled", "ngModel"], outputs: ["ngModelChange"], exportAs: ["ngForm"] }, { type: i10.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { type: TooltipDirective, selector: "[bizdocTooltip]", inputs: ["bizdocTooltip", "bizdocTooltipTemplate", "bizdocTooltipContext", "bizdocTooltipPosition", "bizdocTooltipDuration", "bizdocTooltipDisabled"] }, { type: i10.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { type: i23.DefaultLayoutDirective, selector: " [fxLayout], [fxLayout.xs], [fxLayout.sm], [fxLayout.md], [fxLayout.lg], [fxLayout.xl], [fxLayout.lt-sm], [fxLayout.lt-md], [fxLayout.lt-lg], [fxLayout.lt-xl], [fxLayout.gt-xs], [fxLayout.gt-sm], [fxLayout.gt-md], [fxLayout.gt-lg]", inputs: ["fxLayout", "fxLayout.xs", "fxLayout.sm", "fxLayout.md", "fxLayout.lg", "fxLayout.xl", "fxLayout.lt-sm", "fxLayout.lt-md", "fxLayout.lt-lg", "fxLayout.lt-xl", "fxLayout.gt-xs", "fxLayout.gt-sm", "fxLayout.gt-md", "fxLayout.gt-lg"] }, { type: i23.DefaultFlexDirective, selector: " [fxFlex], [fxFlex.xs], [fxFlex.sm], [fxFlex.md], [fxFlex.lg], [fxFlex.xl], [fxFlex.lt-sm], [fxFlex.lt-md], [fxFlex.lt-lg], [fxFlex.lt-xl], [fxFlex.gt-xs], [fxFlex.gt-sm], [fxFlex.gt-md], [fxFlex.gt-lg]", inputs: ["fxFlex", "fxFlex.xs", "fxFlex.sm", "fxFlex.md", "fxFlex.lg", "fxFlex.xl", "fxFlex.lt-sm", "fxFlex.lt-md", "fxFlex.lt-lg", "fxFlex.lt-xl", "fxFlex.gt-xs", "fxFlex.gt-sm", "fxFlex.gt-md", "fxFlex.gt-lg"] }, { type: i19.MatCardTitle, selector: "mat-card-title, [mat-card-title], [matCardTitle]" }, { type: i19.MatCardContent, selector: "mat-card-content, [mat-card-content], [matCardContent]" }, { type: i19.MatCardActions, selector: "mat-card-actions", inputs: ["align"], exportAs: ["matCardActions"] }, { type: i16.SeriesCollectionDirective, selector: "ej-chart>e-series-collection" }, { type: i3$1.MatDialogTitle, selector: "[mat-dialog-title], [matDialogTitle]", inputs: ["id"], exportAs: ["matDialogTitle"] }, { type: i3$1.MatDialogContent, selector: "[mat-dialog-content], mat-dialog-content, [matDialogContent]" }, { type: i1$2.ɵNgNoValidate, selector: "form:not([ngNoForm]):not([ngNativeValidate])" }, { type: i1$2.NgControlStatusGroup, selector: "[formGroupName],[formArrayName],[ngModelGroup],[formGroup],form:not([ngNoForm]),[ngForm]" }, { type: i1$2.RequiredValidator, selector: ":not([type=checkbox])[required][formControlName],:not([type=checkbox])[required][formControl],:not([type=checkbox])[required][ngModel]", inputs: ["required"] }, { type: i3$1.MatDialogActions, selector: "[mat-dialog-actions], mat-dialog-actions, [matDialogActions]" }, { type: i3$1.MatDialogClose, selector: "[mat-dialog-close], [matDialogClose]", inputs: ["aria-label", "type", "mat-dialog-close", "matDialogClose"], exportAs: ["matDialogClose"] }], pipes: { "async": i10.AsyncPipe, "translate": TranslatePipe, "amDuration": DurationPipe, "amDifference": DifferencePipe, "role": RolePipe } });
|
|
30116
|
+
ProfilerComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.3.1", type: ProfilerComponent, selector: "ng-component", host: { listeners: { "window:keydown.f1": "guide($event)", "window:resize": "resize()" }, classAttribute: "pane" }, viewQueries: [{ propertyName: "chart", first: true, predicate: ["activity"], descendants: true }, { propertyName: "chartElement", first: true, predicate: ["activity"], descendants: true, read: ElementRef }, { propertyName: "assignTpl", first: true, predicate: ["assignTpl"], descendants: true }], ngImport: i0, template: "<mat-toolbar>\r\n <mat-icon (click)=\"null\" class=\"mat-icon-rtl-mirror\">search</mat-icon>\r\n <input matInput type=\"search\" [matAutocomplete]=\"auto\" [formControl]=\"search\" data-help=\"search\" width=\"20\" />\r\n <mat-autocomplete #auto=\"matAutocomplete\" [displayWith]=\"userDisplay\"\r\n (optionSelected)=\"change($event)\">\r\n <mat-option *ngFor=\"let u of users$ | async\" [value]=\"u\">\r\n <span>{{u.name}}</span>\r\n </mat-option>\r\n </mat-autocomplete>\r\n <span class=\"divider\"></span>\r\n <button mat-icon-button (click)=\"guide()\" [bizdocTooltip]=\"'Help' | translate\"><mat-icon>help_outline</mat-icon></button>\r\n</mat-toolbar>\r\n<div *ngIf=\"data\" fxLayout=\"row wrap\">\r\n <!-- info -->\r\n <mat-card fxFlex>\r\n <mat-card-header>\r\n <mat-card-title>\r\n <span>{{data.info.name}}</span>\r\n </mat-card-title>\r\n </mat-card-header>\r\n <mat-card-content>\r\n <br />\r\n </mat-card-content>\r\n <mat-card-actions>\r\n <button mat-icon-button (click)=\"chat()\" [bizdocTooltip]=\"'Chat' | translate\" [disabled]=\"!data\"><mat-icon>chat</mat-icon></button>\r\n <span class=\"divider\"></span>\r\n <button mat-icon-button (click)=\"settings()\" [bizdocTooltip]=\"'Settings' | translate\" [disabled]=\"!data\" data-help=\"settings\"><mat-icon>settings</mat-icon></button>\r\n </mat-card-actions>\r\n </mat-card>\r\n <mat-card fxFlex data-help=\"activity\">\r\n <mat-card-header>\r\n <mat-card-title>\r\n {{'Activity' | translate}}\r\n </mat-card-title>\r\n </mat-card-header>\r\n <mat-card-content>\r\n <ejs-chart #activity [primaryXAxis]=\"primaryXAxis\" [primaryYAxis]=\"primaryYAxis\" [zoomSettings]=\"zoomSettings\" [tooltip]='tooltip' (tooltipRender)=\"tooltipRender($event)\" [palettes]=\"palettes\" background=\"transparent\" [theme]='theme' [border]=\"border\" (pointClick)=\"pointClick($event)\">\r\n <e-series-collection>\r\n </e-series-collection>\r\n </ejs-chart>\r\n </mat-card-content>\r\n </mat-card>\r\n <!-- pending -->\r\n <mat-card fxFlex data-help=\"pending\">\r\n <mat-card-header>\r\n <mat-card-title>\r\n {{'Pending' | translate}}\r\n </mat-card-title>\r\n </mat-card-header>\r\n <mat-card-content>\r\n <table class=\"mat-table\" *ngIf=\"data.pending.length; else none\">\r\n <thead>\r\n <tr class=\"mat-row\">\r\n <td class=\"mat-header-cell\"></td>\r\n <td class=\"mat-header-cell\"></td>\r\n </tr>\r\n </thead>\r\n <tbody>\r\n <tr *ngFor=\"let r of data.pending\" class=\"mat-row\">\r\n <td class=\"mat-cell\"><a (click)=\"trace(r.id)\">{{r.number}}</a></td>\r\n <td class=\"mat-cell\">{{ r.received | amDifference : null : 's' | amDuration : 's'}}</td>\r\n </tr>\r\n </tbody>\r\n </table>\r\n </mat-card-content>\r\n </mat-card>\r\n <!-- positions -->\r\n <mat-card fxFlex data-help=\"positions\">\r\n <mat-card-header>\r\n <mat-card-title>\r\n {{'Positions' | translate}}\r\n </mat-card-title>\r\n </mat-card-header>\r\n <mat-card-content>\r\n <table class=\"mat-table\" *ngIf=\"data.positions.length; else none\">\r\n <tr *ngFor=\"let p of data.positions\" class=\"mat-row\">\r\n <td class=\"mat-cell\">{{p.value }}</td>\r\n <td class=\"mat-cell\">{{p.role | role}}</td>\r\n <td class=\"mat-cell\">\r\n <button mat-icon-button (click)=\"reassign(p)\" [bizdocTooltip]=\"'Reassign' | translate\"><mat-icon>swap_horiz</mat-icon></button>\r\n </td>\r\n </tr>\r\n </table>\r\n </mat-card-content>\r\n <mat-card-actions>\r\n <span class=\"divider\"></span>\r\n <button mat-icon-button (click)=\"reassign()\" [bizdocTooltip]=\"'ReassignAll' | translate\" [disabled]=\"!data || !data.positions.length\" data-help=\"reassign\"><mat-icon>swap_horiz</mat-icon></button>\r\n </mat-card-actions>\r\n </mat-card>\r\n</div>\r\n<!-- assign dialog -->\r\n<ng-template #assignTpl>\r\n <h2 mat-dialog-title>{{'Reassign' | translate }}</h2>\r\n <mat-dialog-content>\r\n <form autocomplete=\"off\" fxLayout=\"column\">\r\n <mat-form-field>\r\n <mat-select placeholder=\"{{'Who' | translate}}\" [formControl]=\"who\" required>\r\n <mat-option *ngFor=\"let u of assignable$ | async\" [value]=\"u.id\">{{u.name}}</mat-option>\r\n </mat-select>\r\n </mat-form-field>\r\n </form>\r\n </mat-dialog-content>\r\n <mat-dialog-actions>\r\n <button mat-button [mat-dialog-close]=\"who.value\" color=\"primary\" [disabled]=\"!who.valid\">{{'OK' | translate}}</button>\r\n <button mat-button mat-dialog-close>{{'Cancel' | translate}}</button>\r\n </mat-dialog-actions>\r\n</ng-template>\r\n<ng-template #none>\r\n <span class=\"mat-body-2\">{{'None' | translate }}</span>\r\n</ng-template>\r\n", styles: [":host{min-width:560px;display:block}.mat-card{margin:5px}.mat-card:hover{box-shadow:0 3px 3px -2px #0003,0 3px 4px #00000024,0 1px 8px #0000001f}.mat-table{width:100%}\n"], components: [{ type: i7$3.MatToolbar, selector: "mat-toolbar", inputs: ["color"], exportAs: ["matToolbar"] }, { type: i8.MatIcon, selector: "mat-icon", inputs: ["color", "inline", "svgIcon", "fontSet", "fontIcon"], exportAs: ["matIcon"] }, { type: i5$1.MatAutocomplete, selector: "mat-autocomplete", inputs: ["disableRipple"], exportAs: ["matAutocomplete"] }, { type: i6.MatOption, selector: "mat-option", exportAs: ["matOption"] }, { type: i7$1.MatButton, selector: "button[mat-button], button[mat-raised-button], button[mat-icon-button], button[mat-fab], button[mat-mini-fab], button[mat-stroked-button], button[mat-flat-button]", inputs: ["disabled", "disableRipple", "color"], exportAs: ["matButton"] }, { type: i19.MatCard, selector: "mat-card", exportAs: ["matCard"] }, { type: i19.MatCardHeader, selector: "mat-card-header" }, { type: i16.ChartComponent, selector: "ejs-chart", inputs: ["allowExport", "allowMultiSelection", "annotations", "axes", "background", "backgroundImage", "border", "chartArea", "columns", "crosshair", "currencyCode", "dataSource", "description", "enableAnimation", "enableAutoIntervalOnBothAxis", "enableCanvas", "enableExport", "enablePersistence", "enableRtl", "enableSideBySidePlacement", "height", "highlightColor", "highlightMode", "highlightPattern", "indicators", "isMultiSelect", "isTransposed", "legendSettings", "locale", "margin", "palettes", "primaryXAxis", "primaryYAxis", "rangeColorSettings", "rows", "selectedDataIndexes", "selectionMode", "selectionPattern", "series", "subTitle", "subTitleStyle", "tabIndex", "theme", "title", "titleStyle", "tooltip", "useGroupingSeparator", "width", "zoomSettings"], outputs: ["afterExport", "animationComplete", "annotationRender", "axisLabelClick", "axisLabelRender", "axisMultiLabelRender", "axisRangeCalculated", "beforeExport", "beforePrint", "beforeResize", "chartDoubleClick", "chartMouseClick", "chartMouseDown", "chartMouseLeave", "chartMouseMove", "chartMouseUp", "drag", "dragComplete", "dragEnd", "dragStart", "legendClick", "legendRender", "load", "loaded", "multiLevelLabelClick", "onZooming", "pointClick", "pointDoubleClick", "pointMove", "pointRender", "resized", "scrollChanged", "scrollEnd", "scrollStart", "selectionComplete", "seriesRender", "sharedTooltipRender", "textRender", "tooltipRender", "zoomComplete", "dataSourceChange"] }, { type: i1$1.MatFormField, selector: "mat-form-field", inputs: ["color", "appearance", "hideRequiredMarker", "hintLabel", "floatLabel"], exportAs: ["matFormField"] }, { type: i5.MatSelect, selector: "mat-select", inputs: ["disabled", "disableRipple", "tabIndex"], exportAs: ["matSelect"] }], directives: [{ type: i9.MatInput, selector: "input[matInput], textarea[matInput], select[matNativeControl], input[matNativeControl], textarea[matNativeControl]", inputs: ["disabled", "id", "placeholder", "name", "required", "type", "errorStateMatcher", "aria-describedby", "value", "readonly"], exportAs: ["matInput"] }, { type: i5$1.MatAutocompleteTrigger, selector: "input[matAutocomplete], textarea[matAutocomplete]", exportAs: ["matAutocompleteTrigger"] }, { 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]" }, { type: i1$2.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { type: i1$2.FormControlDirective, selector: "[formControl]", inputs: ["formControl", "disabled", "ngModel"], outputs: ["ngModelChange"], exportAs: ["ngForm"] }, { type: i10.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { type: TooltipDirective, selector: "[bizdocTooltip]", inputs: ["bizdocTooltip", "bizdocTooltipTemplate", "bizdocTooltipContext", "bizdocTooltipPosition", "bizdocTooltipDuration", "bizdocTooltipDisabled"] }, { type: i10.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { type: i23.DefaultLayoutDirective, selector: " [fxLayout], [fxLayout.xs], [fxLayout.sm], [fxLayout.md], [fxLayout.lg], [fxLayout.xl], [fxLayout.lt-sm], [fxLayout.lt-md], [fxLayout.lt-lg], [fxLayout.lt-xl], [fxLayout.gt-xs], [fxLayout.gt-sm], [fxLayout.gt-md], [fxLayout.gt-lg]", inputs: ["fxLayout", "fxLayout.xs", "fxLayout.sm", "fxLayout.md", "fxLayout.lg", "fxLayout.xl", "fxLayout.lt-sm", "fxLayout.lt-md", "fxLayout.lt-lg", "fxLayout.lt-xl", "fxLayout.gt-xs", "fxLayout.gt-sm", "fxLayout.gt-md", "fxLayout.gt-lg"] }, { type: i23.DefaultFlexDirective, selector: " [fxFlex], [fxFlex.xs], [fxFlex.sm], [fxFlex.md], [fxFlex.lg], [fxFlex.xl], [fxFlex.lt-sm], [fxFlex.lt-md], [fxFlex.lt-lg], [fxFlex.lt-xl], [fxFlex.gt-xs], [fxFlex.gt-sm], [fxFlex.gt-md], [fxFlex.gt-lg]", inputs: ["fxFlex", "fxFlex.xs", "fxFlex.sm", "fxFlex.md", "fxFlex.lg", "fxFlex.xl", "fxFlex.lt-sm", "fxFlex.lt-md", "fxFlex.lt-lg", "fxFlex.lt-xl", "fxFlex.gt-xs", "fxFlex.gt-sm", "fxFlex.gt-md", "fxFlex.gt-lg"] }, { type: i19.MatCardTitle, selector: "mat-card-title, [mat-card-title], [matCardTitle]" }, { type: i19.MatCardContent, selector: "mat-card-content, [mat-card-content], [matCardContent]" }, { type: i19.MatCardActions, selector: "mat-card-actions", inputs: ["align"], exportAs: ["matCardActions"] }, { type: i16.SeriesCollectionDirective, selector: "ej-chart>e-series-collection" }, { type: i3$1.MatDialogTitle, selector: "[mat-dialog-title], [matDialogTitle]", inputs: ["id"], exportAs: ["matDialogTitle"] }, { type: i3$1.MatDialogContent, selector: "[mat-dialog-content], mat-dialog-content, [matDialogContent]" }, { type: i1$2.ɵNgNoValidate, selector: "form:not([ngNoForm]):not([ngNativeValidate])" }, { type: i1$2.NgControlStatusGroup, selector: "[formGroupName],[formArrayName],[ngModelGroup],[formGroup],form:not([ngNoForm]),[ngForm]" }, { type: i1$2.RequiredValidator, selector: ":not([type=checkbox])[required][formControlName],:not([type=checkbox])[required][formControl],:not([type=checkbox])[required][ngModel]", inputs: ["required"] }, { type: i3$1.MatDialogActions, selector: "[mat-dialog-actions], mat-dialog-actions, [matDialogActions]" }, { type: i3$1.MatDialogClose, selector: "[mat-dialog-close], [matDialogClose]", inputs: ["aria-label", "type", "mat-dialog-close", "matDialogClose"], exportAs: ["matDialogClose"] }], pipes: { "async": i10.AsyncPipe, "translate": TranslatePipe, "amDuration": DurationPipe, "amDifference": DifferencePipe, "role": RolePipe } });
|
|
30010
30117
|
ProfilerComponent = __decorate([
|
|
30011
30118
|
BizDoc({ selector: 'bizdoc-user-profiler' })
|
|
30012
30119
|
/** component*/
|
|
@@ -30015,7 +30122,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.1", ngImpor
|
|
|
30015
30122
|
type: Component,
|
|
30016
30123
|
args: [{ host: {
|
|
30017
30124
|
class: 'pane'
|
|
30018
|
-
}, entryComponents: [
|
|
30125
|
+
}, entryComponents: [ProfileSettingsDialog], template: "<mat-toolbar>\r\n <mat-icon (click)=\"null\" class=\"mat-icon-rtl-mirror\">search</mat-icon>\r\n <input matInput type=\"search\" [matAutocomplete]=\"auto\" [formControl]=\"search\" data-help=\"search\" width=\"20\" />\r\n <mat-autocomplete #auto=\"matAutocomplete\" [displayWith]=\"userDisplay\"\r\n (optionSelected)=\"change($event)\">\r\n <mat-option *ngFor=\"let u of users$ | async\" [value]=\"u\">\r\n <span>{{u.name}}</span>\r\n </mat-option>\r\n </mat-autocomplete>\r\n <span class=\"divider\"></span>\r\n <button mat-icon-button (click)=\"guide()\" [bizdocTooltip]=\"'Help' | translate\"><mat-icon>help_outline</mat-icon></button>\r\n</mat-toolbar>\r\n<div *ngIf=\"data\" fxLayout=\"row wrap\">\r\n <!-- info -->\r\n <mat-card fxFlex>\r\n <mat-card-header>\r\n <mat-card-title>\r\n <span>{{data.info.name}}</span>\r\n </mat-card-title>\r\n </mat-card-header>\r\n <mat-card-content>\r\n <br />\r\n </mat-card-content>\r\n <mat-card-actions>\r\n <button mat-icon-button (click)=\"chat()\" [bizdocTooltip]=\"'Chat' | translate\" [disabled]=\"!data\"><mat-icon>chat</mat-icon></button>\r\n <span class=\"divider\"></span>\r\n <button mat-icon-button (click)=\"settings()\" [bizdocTooltip]=\"'Settings' | translate\" [disabled]=\"!data\" data-help=\"settings\"><mat-icon>settings</mat-icon></button>\r\n </mat-card-actions>\r\n </mat-card>\r\n <mat-card fxFlex data-help=\"activity\">\r\n <mat-card-header>\r\n <mat-card-title>\r\n {{'Activity' | translate}}\r\n </mat-card-title>\r\n </mat-card-header>\r\n <mat-card-content>\r\n <ejs-chart #activity [primaryXAxis]=\"primaryXAxis\" [primaryYAxis]=\"primaryYAxis\" [zoomSettings]=\"zoomSettings\" [tooltip]='tooltip' (tooltipRender)=\"tooltipRender($event)\" [palettes]=\"palettes\" background=\"transparent\" [theme]='theme' [border]=\"border\" (pointClick)=\"pointClick($event)\">\r\n <e-series-collection>\r\n </e-series-collection>\r\n </ejs-chart>\r\n </mat-card-content>\r\n </mat-card>\r\n <!-- pending -->\r\n <mat-card fxFlex data-help=\"pending\">\r\n <mat-card-header>\r\n <mat-card-title>\r\n {{'Pending' | translate}}\r\n </mat-card-title>\r\n </mat-card-header>\r\n <mat-card-content>\r\n <table class=\"mat-table\" *ngIf=\"data.pending.length; else none\">\r\n <thead>\r\n <tr class=\"mat-row\">\r\n <td class=\"mat-header-cell\"></td>\r\n <td class=\"mat-header-cell\"></td>\r\n </tr>\r\n </thead>\r\n <tbody>\r\n <tr *ngFor=\"let r of data.pending\" class=\"mat-row\">\r\n <td class=\"mat-cell\"><a (click)=\"trace(r.id)\">{{r.number}}</a></td>\r\n <td class=\"mat-cell\">{{ r.received | amDifference : null : 's' | amDuration : 's'}}</td>\r\n </tr>\r\n </tbody>\r\n </table>\r\n </mat-card-content>\r\n </mat-card>\r\n <!-- positions -->\r\n <mat-card fxFlex data-help=\"positions\">\r\n <mat-card-header>\r\n <mat-card-title>\r\n {{'Positions' | translate}}\r\n </mat-card-title>\r\n </mat-card-header>\r\n <mat-card-content>\r\n <table class=\"mat-table\" *ngIf=\"data.positions.length; else none\">\r\n <tr *ngFor=\"let p of data.positions\" class=\"mat-row\">\r\n <td class=\"mat-cell\">{{p.value }}</td>\r\n <td class=\"mat-cell\">{{p.role | role}}</td>\r\n <td class=\"mat-cell\">\r\n <button mat-icon-button (click)=\"reassign(p)\" [bizdocTooltip]=\"'Reassign' | translate\"><mat-icon>swap_horiz</mat-icon></button>\r\n </td>\r\n </tr>\r\n </table>\r\n </mat-card-content>\r\n <mat-card-actions>\r\n <span class=\"divider\"></span>\r\n <button mat-icon-button (click)=\"reassign()\" [bizdocTooltip]=\"'ReassignAll' | translate\" [disabled]=\"!data || !data.positions.length\" data-help=\"reassign\"><mat-icon>swap_horiz</mat-icon></button>\r\n </mat-card-actions>\r\n </mat-card>\r\n</div>\r\n<!-- assign dialog -->\r\n<ng-template #assignTpl>\r\n <h2 mat-dialog-title>{{'Reassign' | translate }}</h2>\r\n <mat-dialog-content>\r\n <form autocomplete=\"off\" fxLayout=\"column\">\r\n <mat-form-field>\r\n <mat-select placeholder=\"{{'Who' | translate}}\" [formControl]=\"who\" required>\r\n <mat-option *ngFor=\"let u of assignable$ | async\" [value]=\"u.id\">{{u.name}}</mat-option>\r\n </mat-select>\r\n </mat-form-field>\r\n </form>\r\n </mat-dialog-content>\r\n <mat-dialog-actions>\r\n <button mat-button [mat-dialog-close]=\"who.value\" color=\"primary\" [disabled]=\"!who.valid\">{{'OK' | translate}}</button>\r\n <button mat-button mat-dialog-close>{{'Cancel' | translate}}</button>\r\n </mat-dialog-actions>\r\n</ng-template>\r\n<ng-template #none>\r\n <span class=\"mat-body-2\">{{'None' | translate }}</span>\r\n</ng-template>\r\n", styles: [":host{min-width:560px;display:block}.mat-card{margin:5px}.mat-card:hover{box-shadow:0 3px 3px -2px #0003,0 3px 4px #00000024,0 1px 8px #0000001f}.mat-table{width:100%}\n"] }]
|
|
30019
30126
|
}], ctorParameters: function () { return [{ type: PromptService }, { type: UtilityRef }, { type: SessionService }, { type: i3$1.MatDialog }, { type: DocumentInfo }, { type: i2$4.MediaObserver }, { type: ChatInfo }, { type: GuideService }, { type: PanesRouter }, { type: i0.ChangeDetectorRef }, { type: PaneRef }, { type: TranslateService }, { type: AccountService }, { type: i1$2.FormBuilder }]; }, propDecorators: { chart: [{
|
|
30020
30127
|
type: ViewChild,
|
|
30021
30128
|
args: ['activity']
|
|
@@ -30046,7 +30153,7 @@ class SystemModule {
|
|
|
30046
30153
|
}
|
|
30047
30154
|
}
|
|
30048
30155
|
SystemModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.1", ngImport: i0, type: SystemModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
|
|
30049
|
-
SystemModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "12.0.0", version: "13.3.1", ngImport: i0, type: SystemModule, declarations: [PermissionsUtility, ManageCubeIndexUtility,
|
|
30156
|
+
SystemModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "12.0.0", version: "13.3.1", ngImport: i0, type: SystemModule, declarations: [PermissionsUtility, ManageCubeIndexUtility, ProfileSettingsDialog,
|
|
30050
30157
|
UtilityWrapperComponent, UtilityPaneComponent,
|
|
30051
30158
|
SearchInput,
|
|
30052
30159
|
ReassignDialog,
|
|
@@ -30082,7 +30189,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.1", ngImpor
|
|
|
30082
30189
|
type: NgModule,
|
|
30083
30190
|
args: [{
|
|
30084
30191
|
declarations: [
|
|
30085
|
-
PermissionsUtility, ManageCubeIndexUtility,
|
|
30192
|
+
PermissionsUtility, ManageCubeIndexUtility, ProfileSettingsDialog,
|
|
30086
30193
|
UtilityWrapperComponent, UtilityPaneComponent,
|
|
30087
30194
|
SearchInput,
|
|
30088
30195
|
ReassignDialog,
|
|
@@ -30111,7 +30218,8 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.1", ngImpor
|
|
|
30111
30218
|
PositionsComponent,
|
|
30112
30219
|
WorkflowComponent, WorkflowNodeComponent, RoleNodeComponent,
|
|
30113
30220
|
PatternsComponent
|
|
30114
|
-
]
|
|
30221
|
+
],
|
|
30222
|
+
entryComponents: [ProfileSettingsDialog]
|
|
30115
30223
|
}]
|
|
30116
30224
|
}] });
|
|
30117
30225
|
|