@bizdoc/core 1.14.4 → 1.14.8
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/bizdoc-schema.json +7 -2
- package/esm2020/lib/admin/document-trace/document-trace.component.mjs +2 -2
- package/esm2020/lib/admin/form/workflow/workflow.component.mjs +2 -2
- package/esm2020/lib/admin/profiler/profiler.component.mjs +3 -11
- package/esm2020/lib/app.component.mjs +4 -3
- package/esm2020/lib/browse/browse.pane.component.mjs +3 -4
- package/esm2020/lib/compose/compose.pane.component.mjs +4 -3
- package/esm2020/lib/compose/trace/trace.pane.component.mjs +2 -2
- package/esm2020/lib/core/configuration.mjs +5 -5
- package/esm2020/lib/core/guide/guide.component.mjs +27 -15
- package/esm2020/lib/core/guide/help-tip.component.mjs +58 -0
- package/esm2020/lib/core/router.mjs +3 -1
- package/esm2020/lib/core/slots/pane-ref.mjs +35 -29
- package/esm2020/lib/core/slots/router.directive.mjs +3 -5
- package/esm2020/lib/core/slots/router.service.mjs +1 -4
- package/esm2020/lib/core/slots/slots.component.mjs +129 -93
- package/esm2020/lib/cube/cube-view.component.mjs +2 -2
- package/esm2020/lib/cube/matrix/matrix.base.mjs +1 -1
- package/esm2020/lib/cube/matrix/matrix.pane.component.mjs +1 -1
- package/esm2020/lib/cube/view.pane.component.mjs +5 -5
- package/esm2020/lib/dashboard/dashboard.component.mjs +25 -17
- package/esm2020/lib/dashboard/widget-item.component.mjs +2 -1
- package/esm2020/lib/reports/report-viewer.component.mjs +1 -1
- package/esm2020/lib/reports/report.pane.component.mjs +2 -2
- package/esm2020/lib/scheduler/scheduler.pane.component.mjs +2 -2
- package/esm2020/lib/shared.module.mjs +4 -3
- package/esm2020/lib/views/view-item.component.mjs +3 -2
- package/esm2020/lib/views/views.component.mjs +11 -3
- package/esm2020/lib/views/views.pane.component.mjs +14 -10
- package/esm2020/public-api.mjs +2 -2
- package/fesm2015/bizdoc-core.mjs +347 -241
- package/fesm2015/bizdoc-core.mjs.map +1 -1
- package/fesm2020/bizdoc-core.mjs +348 -240
- package/fesm2020/bizdoc-core.mjs.map +1 -1
- package/lib/admin/profiler/profiler.component.d.ts +0 -1
- package/lib/core/configuration.d.ts +4 -4
- package/lib/core/guide/guide.component.d.ts +2 -2
- package/lib/core/guide/help-tip.component.d.ts +16 -0
- package/lib/core/router.d.ts +2 -0
- package/lib/core/slots/pane-ref.d.ts +47 -45
- package/lib/core/slots/router.service.d.ts +2 -3
- package/lib/core/slots/slots.component.d.ts +21 -14
- package/lib/cube/matrix/matrix.base.d.ts +2 -2
- package/lib/cube/matrix/matrix.pane.component.d.ts +14 -1
- package/lib/dashboard/dashboard.component.d.ts +6 -2
- package/lib/dashboard/widget-item.component.d.ts +2 -0
- package/lib/shared.module.d.ts +183 -182
- package/lib/views/view-item.component.d.ts +2 -0
- package/lib/views/views.component.d.ts +4 -0
- package/lib/views/views.pane.component.d.ts +3 -2
- package/package.json +1 -1
- package/public-api.d.ts +1 -1
package/fesm2015/bizdoc-core.mjs
CHANGED
@@ -80,7 +80,7 @@ import { MatChipsModule, MatChipList, MatChipInput } from '@angular/material/chi
|
|
80
80
|
import * as i22 from '@angular/cdk/drag-drop';
|
81
81
|
import { DragDropModule } from '@angular/cdk/drag-drop';
|
82
82
|
import { LayoutModule } from '@angular/cdk/layout';
|
83
|
-
import * as i6$
|
83
|
+
import * as i6$2 from '@angular/material/expansion';
|
84
84
|
import { MatExpansionModule, MatExpansionPanel } from '@angular/material/expansion';
|
85
85
|
import * as i5$2 from '@angular/material/table';
|
86
86
|
import { MatTableModule, MatTableDataSource } from '@angular/material/table';
|
@@ -96,7 +96,7 @@ import * as i9$4 from '@angular/material/sidenav';
|
|
96
96
|
import { MatSidenavModule, MatSidenav } from '@angular/material/sidenav';
|
97
97
|
import * as i19 from '@angular/material/card';
|
98
98
|
import { MatCardModule } from '@angular/material/card';
|
99
|
-
import * as
|
99
|
+
import * as i7$4 from '@angular/material/grid-list';
|
100
100
|
import { MatGridListModule } from '@angular/material/grid-list';
|
101
101
|
import { MatStepperIntl, MatStepperModule } from '@angular/material/stepper';
|
102
102
|
import { MatTooltipModule } from '@angular/material/tooltip';
|
@@ -124,7 +124,7 @@ import * as i16 from '@syncfusion/ej2-angular-charts';
|
|
124
124
|
import { AccumulationChart, ChartModule, AccumulationChartModule, SparklineModule, RangeNavigatorModule, RangeTooltipService, AccumulationDistributionIndicatorService, FunnelSeriesService, StackingStepAreaSeriesService, PieSeriesService, PyramidSeriesService, LineSeriesService, ScatterSeriesService, ColumnSeriesService, SplineSeriesService, SplineAreaSeriesService, StripLineService, AreaSeriesService, ScrollBarService, StepLineSeriesService, StepAreaSeriesService, StackingColumnSeriesService, StackingLineSeriesService, StackingAreaSeriesService, BarSeriesService, StackingBarSeriesService, RangeColumnSeriesService, BubbleSeriesService, TooltipService, CrosshairService, CategoryService, DateTimeService, LogarithmicService, LegendService, ZoomService, DataLabelService, SelectionService, ChartAnnotationService, WaterfallSeriesService, RangeAreaSeriesService, PolarSeriesService, RadarSeriesService, DateTimeCategoryService, MultiLevelLabelService, ParetoSeriesService, TooltipRenderService, SparklineTooltipService, SplineRangeAreaSeriesService, AccumulationAnnotationService, AccumulationDataLabelService, AccumulationLegendService, AccumulationSelectionService, AccumulationTooltipService, RangeNavigator, AreaSeries, LineSeries, DateTime, RangeTooltip, Sparkline, SparklineTooltip, PieSeries, PyramidSeries, FunnelSeries, AccumulationDataLabel, AccumulationTooltip, AccumulationAnnotation, AccumulationLegend, AccumulationSelection, Chart as Chart$1, Category, Tooltip as Tooltip$1, Legend, Selection as Selection$1, Zoom, Crosshair, DataLabel, BarSeries, BubbleSeries, ColumnSeries, PolarSeries, RadarSeries, SplineSeries, SplineAreaSeries, ScatterSeries, StackingStepAreaSeries, StackingLineSeries, StackingAreaSeries, StackingColumnSeries, StackingBarSeries, StepAreaSeries, StepLineSeries, AccumulationChartComponent, ChartComponent } from '@syncfusion/ej2-angular-charts';
|
125
125
|
import { Workbook } from '@syncfusion/ej2-excel-export';
|
126
126
|
import { Chart } from '@syncfusion/ej2-charts';
|
127
|
-
import * as i6$
|
127
|
+
import * as i6$3 from '@syncfusion/ej2-angular-grids';
|
128
128
|
import { Grid, Selection, Aggregate, Freeze, ExcelExport, Resize, GridModule, PagerModule, ExcelExportService, AggregateService, FreezeService, GroupService, PageService, ResizeService, SortService, SelectionService as SelectionService$1, GridComponent } from '@syncfusion/ej2-angular-grids';
|
129
129
|
import { PivotView } from '@syncfusion/ej2-pivotview';
|
130
130
|
import { Tooltip } from '@syncfusion/ej2-popups';
|
@@ -140,7 +140,7 @@ import * as i10$1 from '@syncfusion/ej2-angular-kanban';
|
|
140
140
|
import { KanbanComponent, KanbanModule } from '@syncfusion/ej2-angular-kanban';
|
141
141
|
import { CircularGaugeModule, AnnotationsService, GaugeTooltipService, LegendService as LegendService$1, CircularGauge, Annotations, GaugeTooltip, CircularGaugeComponent, Legend as Legend$1 } from '@syncfusion/ej2-angular-circulargauge';
|
142
142
|
import { PivotViewModule, ExcelExportService as ExcelExportService$1, GroupingBarService, NumberFormattingService, GroupingService, PivotChartService, ConditionalFormattingService, PivotView as PivotView$1, GroupingBar, ExcelExport as ExcelExport$1, PivotChart, PivotViewComponent } from '@syncfusion/ej2-angular-pivotview';
|
143
|
-
import * as i7$
|
143
|
+
import * as i7$5 from '@syncfusion/ej2-angular-gantt';
|
144
144
|
import { GanttModule, ExcelExportService as ExcelExportService$3, DayMarkersService, SelectionService as SelectionService$3, Gantt } from '@syncfusion/ej2-angular-gantt';
|
145
145
|
import relativeTime from 'dayjs/plugin/relativeTime';
|
146
146
|
import duration from 'dayjs/plugin/duration';
|
@@ -838,10 +838,10 @@ var OpenPolicy;
|
|
838
838
|
OpenPolicy[OpenPolicy["Defer"] = 4] = "Defer";
|
839
839
|
OpenPolicy[OpenPolicy["Pinnable"] = 8] = "Pinnable";
|
840
840
|
OpenPolicy[OpenPolicy["Stretch"] = 16] = "Stretch";
|
841
|
-
OpenPolicy[OpenPolicy["
|
842
|
-
OpenPolicy[OpenPolicy["
|
843
|
-
OpenPolicy[OpenPolicy["
|
844
|
-
OpenPolicy[OpenPolicy["
|
841
|
+
OpenPolicy[OpenPolicy["Expandable"] = 32] = "Expandable";
|
842
|
+
OpenPolicy[OpenPolicy["Toggle"] = 64] = "Toggle";
|
843
|
+
OpenPolicy[OpenPolicy["Tab"] = 128] = "Tab";
|
844
|
+
OpenPolicy[OpenPolicy["Dialog"] = 384] = "Dialog";
|
845
845
|
OpenPolicy[OpenPolicy["Dismissable"] = 512] = "Dismissable";
|
846
846
|
})(OpenPolicy || (OpenPolicy = {}));
|
847
847
|
const DEFAULT_POLICY = OpenPolicy.Pane;
|
@@ -6233,7 +6233,8 @@ class NavigationPaneBase extends NavigationBase {
|
|
6233
6233
|
}
|
6234
6234
|
class NavigationStart extends NavigationPaneBase {
|
6235
6235
|
}
|
6236
|
-
|
6236
|
+
/** pane fucus change */
|
6237
|
+
class NavigationFocus extends NavigationPaneBase {
|
6237
6238
|
}
|
6238
6239
|
class NavigationEnd extends NavigationPaneBase {
|
6239
6240
|
}
|
@@ -6243,10 +6244,16 @@ class NavigationMode extends NavigationPaneBase {
|
|
6243
6244
|
this.mode = mode;
|
6244
6245
|
}
|
6245
6246
|
}
|
6246
|
-
class
|
6247
|
-
constructor(
|
6247
|
+
class NavigationExpand extends NavigationPaneBase {
|
6248
|
+
constructor(expended, pane) {
|
6248
6249
|
super(pane);
|
6249
|
-
this.
|
6250
|
+
this.expended = expended;
|
6251
|
+
}
|
6252
|
+
}
|
6253
|
+
class NavigationResize extends NavigationPaneBase {
|
6254
|
+
constructor(dimentions, pane) {
|
6255
|
+
super(pane);
|
6256
|
+
this.dimentions = dimentions;
|
6250
6257
|
}
|
6251
6258
|
}
|
6252
6259
|
class NavigationClose extends NavigationPaneBase {
|
@@ -6263,8 +6270,9 @@ class QueryParamNavigation extends NavigationPaneBase {
|
|
6263
6270
|
this.queryParams = queryParams;
|
6264
6271
|
}
|
6265
6272
|
}
|
6273
|
+
/** */
|
6266
6274
|
class PaneRef {
|
6267
|
-
constructor(component,
|
6275
|
+
constructor(component, injector, _options) {
|
6268
6276
|
this.component = component;
|
6269
6277
|
this._options = _options;
|
6270
6278
|
this._comm$ = new Subject();
|
@@ -6272,53 +6280,52 @@ class PaneRef {
|
|
6272
6280
|
this._data$ = new BehaviorSubject({});
|
6273
6281
|
this._params$ = new BehaviorSubject({});
|
6274
6282
|
this._queryParams$ = new BehaviorSubject({});
|
6275
|
-
this._resize$ = new BehaviorSubject({});
|
6276
6283
|
this._events$ = new Subject();
|
6277
|
-
|
6278
|
-
|
6279
|
-
this._path = path || '';
|
6284
|
+
const { stretchable, mode, data, params, queryParams, path, queryString, title, group, icon, help, guide, animation, expanded, expandable } = _options;
|
6285
|
+
this._path = path;
|
6280
6286
|
this._mode = mode;
|
6281
|
-
this.
|
6282
|
-
this.
|
6287
|
+
this._stretchable = stretchable;
|
6288
|
+
this._expanded = expanded;
|
6289
|
+
this._queryString = queryString;
|
6290
|
+
this._expandable = expandable !== false;
|
6291
|
+
this._injector = Injector.create([
|
6292
|
+
{ provide: PaneRef, useValue: this }
|
6293
|
+
], injector);
|
6283
6294
|
this.title = title;
|
6284
6295
|
this.group = group;
|
6285
6296
|
this.guide = guide;
|
6286
6297
|
this.help = help;
|
6287
6298
|
this.icon = icon;
|
6288
6299
|
this.animation = animation;
|
6289
|
-
this.
|
6290
|
-
if (expandable === false)
|
6291
|
-
this.expandable = false;
|
6292
|
-
this._data$.next(data);
|
6300
|
+
data && this._data$.next(data);
|
6293
6301
|
params && this._params$.next(params);
|
6294
6302
|
queryParams && this._queryParams$.next(queryParams);
|
6295
6303
|
}
|
6304
|
+
get expandable() { return this._expandable; }
|
6296
6305
|
get injector() { return this._injector; }
|
6297
|
-
get
|
6298
|
-
get fullPath() { return this._path + (this._queryString ? (QUERY_CHAR + this._queryString) : ''); }
|
6306
|
+
get expanded() { return this._expanded; }
|
6307
|
+
get fullPath() { return (this._path || '') + (this._queryString ? (QUERY_CHAR + this._queryString) : ''); }
|
6299
6308
|
get instance() { return this._instance; }
|
6300
6309
|
get data() { return this._data$.value; }
|
6301
6310
|
get dataChange() { return this._data$.asObservable(); }
|
6302
6311
|
get params() { return this._params$.value; }
|
6303
|
-
get resize() { return this._resize$.asObservable(); }
|
6304
6312
|
get paramsChange() { return this._params$.asObservable(); }
|
6305
6313
|
get queryString() { return this._queryString; }
|
6306
6314
|
get queryParams() { return this._queryParams$.value; }
|
6307
6315
|
get queryParamsChange() { return this._queryParams$.asObservable(); }
|
6308
6316
|
get events() { return this._events$.asObservable(); }
|
6317
|
+
get resized() { return this.events.pipe(filter$1(e => e instanceof NavigationResize)); }
|
6309
6318
|
get closing() { return this.events.pipe(filter$1(e => e instanceof NavigationClose)); }
|
6310
|
-
get
|
6311
|
-
;
|
6312
|
-
get fullscreenChange() { return this.events.pipe(filter$1(e => e instanceof NavigationFullscreen)); }
|
6319
|
+
get expandeding() { return this.events.pipe(filter$1(e => e instanceof NavigationExpand)); }
|
6313
6320
|
get path() { return this._path; }
|
6314
6321
|
;
|
6315
6322
|
get mode() { return this._mode; }
|
6316
6323
|
;
|
6317
6324
|
get parent() { return this._options.parent; }
|
6318
6325
|
;
|
6319
|
-
get
|
6326
|
+
get stretchable() { return this._stretchable; }
|
6320
6327
|
;
|
6321
|
-
set
|
6328
|
+
set stretchable(val) { this._stretchable = val; }
|
6322
6329
|
get dialog() { return this._options.dialog; }
|
6323
6330
|
;
|
6324
6331
|
get dismissable() { return this._options.dismissable; }
|
@@ -6329,8 +6336,8 @@ class PaneRef {
|
|
6329
6336
|
return this.parent === pane; //||
|
6330
6337
|
// (this.path && pane.path && this.path.startsWith(pane.path));
|
6331
6338
|
}
|
6332
|
-
|
6333
|
-
this._comm$.next('
|
6339
|
+
recycle() {
|
6340
|
+
this._comm$.next('recycle');
|
6334
6341
|
}
|
6335
6342
|
focus() {
|
6336
6343
|
this._comm$.next('focus');
|
@@ -6345,9 +6352,8 @@ class PaneRef {
|
|
6345
6352
|
this._comm$.complete();
|
6346
6353
|
this._data$.complete();
|
6347
6354
|
this._params$.complete();
|
6348
|
-
this._resize$.complete();
|
6349
|
-
this._events$.complete();
|
6350
6355
|
this._queryParams$.complete();
|
6356
|
+
this._events$.complete();
|
6351
6357
|
}
|
6352
6358
|
}
|
6353
6359
|
|
@@ -7071,9 +7077,6 @@ class PanesRouter {
|
|
7071
7077
|
this._comm$ = new Subject();
|
7072
7078
|
this._navigate$ = new Subject();
|
7073
7079
|
}
|
7074
|
-
get active() {
|
7075
|
-
return this._active;
|
7076
|
-
}
|
7077
7080
|
navigate(commands, options) {
|
7078
7081
|
return new Promise((resolve, reject) => {
|
7079
7082
|
this._events$.pipe(filter(e => e instanceof NavigationStart), first()).subscribe((e) => resolve(e.pane), reject);
|
@@ -7094,6 +7097,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.1", ngImpor
|
|
7094
7097
|
|
7095
7098
|
class RouterImpl {
|
7096
7099
|
}
|
7100
|
+
/** desktop */
|
7097
7101
|
class PaneRouter extends RouterImpl {
|
7098
7102
|
constructor(_router) {
|
7099
7103
|
super();
|
@@ -7108,6 +7112,7 @@ PaneRouter.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version:
|
|
7108
7112
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.1", ngImport: i0, type: PaneRouter, decorators: [{
|
7109
7113
|
type: Injectable
|
7110
7114
|
}], ctorParameters: function () { return [{ type: PanesRouter }]; } });
|
7115
|
+
/** mobile */
|
7111
7116
|
class NgRouter extends RouterImpl {
|
7112
7117
|
constructor(_router) {
|
7113
7118
|
super();
|
@@ -8484,21 +8489,30 @@ class GuideComponent {
|
|
8484
8489
|
this._overlay = _overlay;
|
8485
8490
|
this._ngRouter = _ngRouter;
|
8486
8491
|
this._overlayRef = _overlayRef;
|
8487
|
-
this.index =
|
8492
|
+
this.index = -1;
|
8488
8493
|
this.count = this._data.steps.length;
|
8489
8494
|
this.working = true;
|
8490
8495
|
}
|
8491
8496
|
ngOnInit() {
|
8492
|
-
this.
|
8497
|
+
if (this._data.name) {
|
8498
|
+
const lastindex = localStorage.getItem(this._data.name + '_guide_step');
|
8499
|
+
if (lastindex) {
|
8500
|
+
this.index = Number.parseInt(lastindex);
|
8501
|
+
}
|
8502
|
+
}
|
8503
|
+
this._moveBy(1);
|
8493
8504
|
}
|
8494
8505
|
/**
|
8495
8506
|
*
|
8496
|
-
* @param
|
8507
|
+
* @param steps
|
8497
8508
|
*/
|
8498
|
-
|
8499
|
-
const index = this.index +
|
8500
|
-
if (index < 0 || index
|
8509
|
+
_moveBy(steps) {
|
8510
|
+
const index = this.index + steps;
|
8511
|
+
if (index < 0 || index > this.count - 1) {
|
8512
|
+
localStorage.removeItem(this._data.name + '_guide_step');
|
8501
8513
|
return;
|
8514
|
+
}
|
8515
|
+
this._data.name && localStorage.setItem(this._data.name + '_guide_step', this.index.toString());
|
8502
8516
|
this.working = true;
|
8503
8517
|
const step = this._data.steps[index];
|
8504
8518
|
const { selector, position, navigate, simulate } = step, promisses = [];
|
@@ -8509,8 +8523,11 @@ class GuideComponent {
|
|
8509
8523
|
let positionStrategy;
|
8510
8524
|
if (selector) {
|
8511
8525
|
const element = document.querySelector(selector);
|
8512
|
-
if (!element)
|
8513
|
-
|
8526
|
+
if (!element) {
|
8527
|
+
console.warn(`Guide ${this._data.name} selector '${selector}' not found. skipping.`);
|
8528
|
+
this._moveBy(steps);
|
8529
|
+
return;
|
8530
|
+
}
|
8514
8531
|
let positions;
|
8515
8532
|
switch (position) {
|
8516
8533
|
case 'Above':
|
@@ -8564,10 +8581,10 @@ class GuideComponent {
|
|
8564
8581
|
if (!this.working)
|
8565
8582
|
switch (evt.keyCode) {
|
8566
8583
|
case LEFT_ARROW:
|
8567
|
-
this.
|
8584
|
+
this._moveBy(this._session.direction === 'ltr' ? -1 : 1);
|
8568
8585
|
break;
|
8569
8586
|
case RIGHT_ARROW:
|
8570
|
-
this.
|
8587
|
+
this._moveBy(this._session.direction === 'ltr' ? 1 : -1);
|
8571
8588
|
break;
|
8572
8589
|
case ESCAPE:
|
8573
8590
|
this.close();
|
@@ -8576,17 +8593,17 @@ class GuideComponent {
|
|
8576
8593
|
}
|
8577
8594
|
}
|
8578
8595
|
next() {
|
8579
|
-
this.
|
8596
|
+
this._moveBy(1);
|
8580
8597
|
}
|
8581
8598
|
prev() {
|
8582
|
-
this.
|
8599
|
+
this._moveBy(-1);
|
8583
8600
|
}
|
8584
8601
|
close() {
|
8585
8602
|
this._overlayRef.detach();
|
8586
8603
|
}
|
8587
8604
|
}
|
8588
8605
|
GuideComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.1", ngImport: i0, type: GuideComponent, deps: [{ token: TOUR_TOKEN }, { token: SessionService }, { token: i1$4.Overlay }, { token: i1$6.Router }, { token: i1$4.OverlayRef }], target: i0.ɵɵFactoryTarget.Component });
|
8589
|
-
GuideComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.3.1", type: GuideComponent, selector: "ng-component", host: { listeners: { "window:keydown": "keydown($event)" } }, ngImport: i0, template: "<div class=\"container\" [style.display]=\"step ? '': 'none'\" cdkTrapFocus>\r\n <div fxLayout=\"column\" class=\"content\">\r\n <div fxLayout=\"row\">\r\n <h2 *ngIf=\"step?.title\" class=\"mat-h2\">{{step?.title}}</h2>\r\n <span class=\"divider\"></span>\r\n <button mat-icon-button (click)=\"close()\" *ngIf=\"index < count - 1\"><mat-icon>close</mat-icon></button>\r\n </div>\r\n <p class=\"mat-body\" [innerHTML]=\"step?.content | sanitizeHtml\">\r\n </p>\r\n <div fxLayout=\"row\">\r\n <span class=\"divider\"></span>\r\n <button mat-icon-button (click)=\"prev()\" [disabled]=\"index
|
8606
|
+
GuideComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.3.1", type: GuideComponent, selector: "ng-component", host: { listeners: { "window:keydown": "keydown($event)" } }, ngImport: i0, template: "<div class=\"container\" [style.display]=\"step ? '': 'none'\" cdkTrapFocus>\r\n <div fxLayout=\"column\" class=\"content\">\r\n <div fxLayout=\"row\">\r\n <h2 *ngIf=\"step?.title\" class=\"mat-h2\">{{step?.title}}</h2>\r\n <span class=\"divider\"></span>\r\n <button mat-icon-button (click)=\"close()\" *ngIf=\"index < count - 1\"><mat-icon>close</mat-icon></button>\r\n </div>\r\n <p class=\"mat-body\" [innerHTML]=\"step?.content | sanitizeHtml\">\r\n </p>\r\n <div fxLayout=\"row\">\r\n <span class=\"divider\"></span>\r\n <button mat-icon-button (click)=\"prev()\" [disabled]=\"index < 1 || working\"><mat-icon class=\"mat-icon-rtl-mirror\">keyboard_arrow_left</mat-icon></button>\r\n <button mat-icon-button (click)=\"next()\" [disabled]=\"index >= count - 1 || working\" cdkFocusInitial><mat-icon class=\"mat-icon-rtl-mirror\">keyboard_arrow_right</mat-icon></button>\r\n <button mat-button (click)=\"close()\" *ngIf=\"index >= count - 1\">{{'GuideFinish'|translate}}</button>\r\n </div>\r\n </div>\r\n <div class=\"tooltip-container\">\r\n <div class=\"tooltip\"></div>\r\n </div>\r\n</div>\r\n", components: [{ type: i7$1.MatButton, selector: "button[mat-button], button[mat-raised-button], button[mat-icon-button], button[mat-fab], button[mat-mini-fab], button[mat-stroked-button], button[mat-flat-button]", inputs: ["disabled", "disableRipple", "color"], exportAs: ["matButton"] }, { type: i8.MatIcon, selector: "mat-icon", inputs: ["color", "inline", "svgIcon", "fontSet", "fontIcon"], exportAs: ["matIcon"] }], directives: [{ 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: i10.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }], pipes: { "sanitizeHtml": SanitizeHtmlPipe, "translate": TranslatePipe }, animations: [trigger('body', [
|
8590
8607
|
state('here', style({ width: '*', height: '*' })),
|
8591
8608
|
transition('*<=>*', animate('250ms', style({})))
|
8592
8609
|
])] });
|
@@ -8595,7 +8612,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.1", ngImpor
|
|
8595
8612
|
args: [{ animations: [trigger('body', [
|
8596
8613
|
state('here', style({ width: '*', height: '*' })),
|
8597
8614
|
transition('*<=>*', animate('250ms', style({})))
|
8598
|
-
])], template: "<div class=\"container\" [style.display]=\"step ? '': 'none'\" cdkTrapFocus>\r\n <div fxLayout=\"column\" class=\"content\">\r\n <div fxLayout=\"row\">\r\n <h2 *ngIf=\"step?.title\" class=\"mat-h2\">{{step?.title}}</h2>\r\n <span class=\"divider\"></span>\r\n <button mat-icon-button (click)=\"close()\" *ngIf=\"index < count - 1\"><mat-icon>close</mat-icon></button>\r\n </div>\r\n <p class=\"mat-body\" [innerHTML]=\"step?.content | sanitizeHtml\">\r\n </p>\r\n <div fxLayout=\"row\">\r\n <span class=\"divider\"></span>\r\n <button mat-icon-button (click)=\"prev()\" [disabled]=\"index
|
8615
|
+
])], template: "<div class=\"container\" [style.display]=\"step ? '': 'none'\" cdkTrapFocus>\r\n <div fxLayout=\"column\" class=\"content\">\r\n <div fxLayout=\"row\">\r\n <h2 *ngIf=\"step?.title\" class=\"mat-h2\">{{step?.title}}</h2>\r\n <span class=\"divider\"></span>\r\n <button mat-icon-button (click)=\"close()\" *ngIf=\"index < count - 1\"><mat-icon>close</mat-icon></button>\r\n </div>\r\n <p class=\"mat-body\" [innerHTML]=\"step?.content | sanitizeHtml\">\r\n </p>\r\n <div fxLayout=\"row\">\r\n <span class=\"divider\"></span>\r\n <button mat-icon-button (click)=\"prev()\" [disabled]=\"index < 1 || working\"><mat-icon class=\"mat-icon-rtl-mirror\">keyboard_arrow_left</mat-icon></button>\r\n <button mat-icon-button (click)=\"next()\" [disabled]=\"index >= count - 1 || working\" cdkFocusInitial><mat-icon class=\"mat-icon-rtl-mirror\">keyboard_arrow_right</mat-icon></button>\r\n <button mat-button (click)=\"close()\" *ngIf=\"index >= count - 1\">{{'GuideFinish'|translate}}</button>\r\n </div>\r\n </div>\r\n <div class=\"tooltip-container\">\r\n <div class=\"tooltip\"></div>\r\n </div>\r\n</div>\r\n" }]
|
8599
8616
|
}], ctorParameters: function () {
|
8600
8617
|
return [{ type: undefined, decorators: [{
|
8601
8618
|
type: Inject,
|
@@ -9319,7 +9336,8 @@ class ComposePaneComponent {
|
|
9319
9336
|
else
|
9320
9337
|
container.classList.remove('drag');
|
9321
9338
|
});
|
9322
|
-
this.
|
9339
|
+
this.expendable = !this._pane.expanded;
|
9340
|
+
this._pane.expandeding.subscribe(e => this.expendable = !e);
|
9323
9341
|
}
|
9324
9342
|
close() {
|
9325
9343
|
this._pane.close();
|
@@ -9338,7 +9356,7 @@ class ComposePaneComponent {
|
|
9338
9356
|
this.form.save().subscribe();
|
9339
9357
|
}
|
9340
9358
|
saved() {
|
9341
|
-
this._pane.
|
9359
|
+
this._pane.recycle();
|
9342
9360
|
}
|
9343
9361
|
navComments() {
|
9344
9362
|
this._navigate('comments').then(paneRef => {
|
@@ -9484,8 +9502,7 @@ class BrowsePaneComponent {
|
|
9484
9502
|
this._pane.title = this._translate.get('Tags');
|
9485
9503
|
this.filters = p;
|
9486
9504
|
});
|
9487
|
-
|
9488
|
-
events.pipe(filter(e => (e instanceof ParamNavigation || e instanceof NavigationStart || e instanceof NavigationSelected)
|
9505
|
+
this._router.events.pipe(takeUntil(this._destroy), filter(e => (e instanceof ParamNavigation || e instanceof NavigationStart || e instanceof NavigationFocus)
|
9489
9506
|
&& e.pane.component === ComposePaneComponent)).
|
9490
9507
|
subscribe((e) => this.items.select(e.pane.data.item.id));
|
9491
9508
|
this.contains.valueChanges.pipe(takeUntil(this._destroy), debounceTime(200)).subscribe(v => this.filters = Object.assign(Object.assign({}, this.filters), { contains: v }));
|
@@ -11216,7 +11233,7 @@ class CubeViewComponent {
|
|
11216
11233
|
this._viewDestroy = new Subject();
|
11217
11234
|
}
|
11218
11235
|
ngOnInit() {
|
11219
|
-
this._resizing.pipe(debounceTime(
|
11236
|
+
this._resizing.pipe(debounceTime(150)).subscribe(() => {
|
11220
11237
|
const { width, height } = this._dim();
|
11221
11238
|
switch (this.view.type) {
|
11222
11239
|
case 'Pivot':
|
@@ -11481,10 +11498,10 @@ class CubeViewPaneComponent extends ViewBase {
|
|
11481
11498
|
if (this.view.type === 'Spreadsheet' ||
|
11482
11499
|
this.view.type === 'Grid' ||
|
11483
11500
|
(this.view.type === 'Pivot' && !this.view.chartType))
|
11484
|
-
this._pane.
|
11501
|
+
this._pane.stretchable = true;
|
11485
11502
|
});
|
11486
11503
|
this._pane.queryParamsChange.subscribe(p => this.originalAxes = p);
|
11487
|
-
this._pane.
|
11504
|
+
this._pane.resized.subscribe(() => this.viewPane.resize());
|
11488
11505
|
}
|
11489
11506
|
/**
|
11490
11507
|
*
|
@@ -11514,12 +11531,12 @@ class CubeViewPaneComponent extends ViewBase {
|
|
11514
11531
|
}
|
11515
11532
|
}
|
11516
11533
|
CubeViewPaneComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.1", ngImport: i0, type: CubeViewPaneComponent, deps: [{ token: SessionService }, { token: PaneRef }, { token: Popup }, { token: RouterImpl }, { token: CubeService }, { token: GuideService }], target: i0.ɵɵFactoryTarget.Component });
|
11517
|
-
CubeViewPaneComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.3.1", type: CubeViewPaneComponent, selector: "ng-component", host: { listeners: { "window:keydown.f1": "guide($event)" }, classAttribute: "pane" }, viewQueries: [{ propertyName: "viewPane", first: true, predicate: CubeViewComponent, descendants: true, static: true }], usesInheritance: true, ngImport: i0, template: "<mat-toolbar class=\"nav-toolbar\">\r\n <button mat-icon-button (click)=\"guide()\" [bizdocTooltip]=\"'Help' | translate\" *ngIf=\"view.guide\"><mat-icon>help_outline</mat-icon></button>\r\n <button mat-icon-button (click)=\"vp.refresh()\" [bizdocTooltip]=\"'Refresh' | translate\"><mat-icon matAnimate=\"rotate\">autorenew</mat-icon></button>\r\n <span class=\"divider\"></span>\r\n <button mat-icon-button [bizdocTooltip]=\"'Download' | translate\"\r\n data-help=\"download\" (click)=\"vp.exportToExcel()\">\r\n <mat-icon>save_alt</mat-icon>\r\n </button>\r\n <button mat-icon-button [matMenuTriggerFor]=\"pmenu\" [bizdocTooltip]=\"'Patterns' | translate\" [disabled]=\"!patterns?.length\" data-help=\"pattern\"><mat-icon [class.filled]=\"pattern\">tune</mat-icon></button>\r\n <mat-menu #pmenu>\r\n <button mat-menu-item *ngFor=\"let p of patterns\" (click)=\"patternChange(p)\">\r\n {{p.title}}\r\n </button>\r\n </mat-menu>\r\n <button mat-icon-button (click)=\"clearFilter()\" [bizdocTooltip]=\"'Clear' | translate\" [disabled]=\"!anyFilters\"><mat-icon>clear_all</mat-icon></button>\r\n <button mat-icon-button (click)=\"filterToggle($event)\" [bizdocTooltip]=\"'Filter' | translate\" [disabled]=\"!anyAxes\" data-help=\"filter\"><mat-icon [class.filled]=\"anyFilters\">filter_list</mat-icon></button>\r\n</mat-toolbar>\r\n<mat-progress-bar mode=\"query\" [style.visibility]=\"loading ? 'visible':'hidden'\"></mat-progress-bar>\r\n
|
11534
|
+
CubeViewPaneComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.3.1", type: CubeViewPaneComponent, selector: "ng-component", host: { listeners: { "window:keydown.f1": "guide($event)" }, classAttribute: "pane" }, viewQueries: [{ propertyName: "viewPane", first: true, predicate: CubeViewComponent, descendants: true, static: true }], usesInheritance: true, ngImport: i0, template: "<mat-toolbar class=\"nav-toolbar\">\r\n <button mat-icon-button (click)=\"guide()\" [bizdocTooltip]=\"'Help' | translate\" *ngIf=\"view.guide\"><mat-icon>help_outline</mat-icon></button>\r\n <button mat-icon-button (click)=\"vp.refresh()\" [bizdocTooltip]=\"'Refresh' | translate\"><mat-icon matAnimate=\"rotate\">autorenew</mat-icon></button>\r\n <span class=\"divider\"></span>\r\n <button mat-icon-button [bizdocTooltip]=\"'Download' | translate\"\r\n data-help=\"download\" (click)=\"vp.exportToExcel()\">\r\n <mat-icon>save_alt</mat-icon>\r\n </button>\r\n <button mat-icon-button [matMenuTriggerFor]=\"pmenu\" [bizdocTooltip]=\"'Patterns' | translate\" [disabled]=\"!patterns?.length\" data-help=\"pattern\"><mat-icon [class.filled]=\"pattern\">tune</mat-icon></button>\r\n <mat-menu #pmenu>\r\n <button mat-menu-item *ngFor=\"let p of patterns\" (click)=\"patternChange(p)\">\r\n {{p.title}}\r\n </button>\r\n </mat-menu>\r\n <button mat-icon-button (click)=\"clearFilter()\" [bizdocTooltip]=\"'Clear' | translate\" [disabled]=\"!anyFilters\"><mat-icon>clear_all</mat-icon></button>\r\n <button mat-icon-button (click)=\"filterToggle($event)\" [bizdocTooltip]=\"'Filter' | translate\" [disabled]=\"!anyAxes\" data-help=\"filter\"><mat-icon [class.filled]=\"anyFilters\">filter_list</mat-icon></button>\r\n</mat-toolbar>\r\n<mat-progress-bar mode=\"query\" [style.visibility]=\"loading ? 'visible':'hidden'\"></mat-progress-bar>\r\n<bizdoc-cube-view [filters]=\"axes\" #vp\r\n (explore)=\"explore($event)\"\r\n [cube]=\"cube\"\r\n [view]=\"view\"\r\n [(loading)]=\"loading\"></bizdoc-cube-view>\r\n<!--<ng-lottie options=\"{path: 'assets/8318-loader.json'}\" *ngIf=\"loading\"></ng-lottie>-->\r\n", styles: [":host{display:flex;flex-direction:column;height:100%}:host ::ng-deep .cube-view{flex:1 auto}\n"], components: [{ type: i7$3.MatToolbar, selector: "mat-toolbar", inputs: ["color"], exportAs: ["matToolbar"] }, { 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: i9$1.MatMenu, selector: "mat-menu", exportAs: ["matMenu"] }, { type: i9$1.MatMenuItem, selector: "[mat-menu-item]", inputs: ["disabled", "disableRipple", "role"], exportAs: ["matMenuItem"] }, { type: i11.MatProgressBar, selector: "mat-progress-bar", inputs: ["color", "value", "bufferValue", "mode"], outputs: ["animationEnd"], exportAs: ["matProgressBar"] }, { type: CubeViewComponent, selector: "bizdoc-cube-view", inputs: ["filters", "cube", "view", "loading"], outputs: ["explore", "loadingChange"] }], directives: [{ type: i10.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { type: TooltipDirective, selector: "[bizdocTooltip]", inputs: ["bizdocTooltip", "bizdocTooltipTemplate", "bizdocTooltipContext", "bizdocTooltipPosition", "bizdocTooltipDuration", "bizdocTooltipDisabled"] }, { type: MatIconAnimate, selector: "[matAnimate]" }, { type: i9$1.MatMenuTrigger, selector: "[mat-menu-trigger-for], [matMenuTriggerFor]", exportAs: ["matMenuTrigger"] }, { type: i10.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }], pipes: { "translate": TranslatePipe } });
|
11518
11535
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.1", ngImport: i0, type: CubeViewPaneComponent, decorators: [{
|
11519
11536
|
type: Component,
|
11520
11537
|
args: [{ host: {
|
11521
11538
|
class: 'pane'
|
11522
|
-
}, template: "<mat-toolbar class=\"nav-toolbar\">\r\n <button mat-icon-button (click)=\"guide()\" [bizdocTooltip]=\"'Help' | translate\" *ngIf=\"view.guide\"><mat-icon>help_outline</mat-icon></button>\r\n <button mat-icon-button (click)=\"vp.refresh()\" [bizdocTooltip]=\"'Refresh' | translate\"><mat-icon matAnimate=\"rotate\">autorenew</mat-icon></button>\r\n <span class=\"divider\"></span>\r\n <button mat-icon-button [bizdocTooltip]=\"'Download' | translate\"\r\n data-help=\"download\" (click)=\"vp.exportToExcel()\">\r\n <mat-icon>save_alt</mat-icon>\r\n </button>\r\n <button mat-icon-button [matMenuTriggerFor]=\"pmenu\" [bizdocTooltip]=\"'Patterns' | translate\" [disabled]=\"!patterns?.length\" data-help=\"pattern\"><mat-icon [class.filled]=\"pattern\">tune</mat-icon></button>\r\n <mat-menu #pmenu>\r\n <button mat-menu-item *ngFor=\"let p of patterns\" (click)=\"patternChange(p)\">\r\n {{p.title}}\r\n </button>\r\n </mat-menu>\r\n <button mat-icon-button (click)=\"clearFilter()\" [bizdocTooltip]=\"'Clear' | translate\" [disabled]=\"!anyFilters\"><mat-icon>clear_all</mat-icon></button>\r\n <button mat-icon-button (click)=\"filterToggle($event)\" [bizdocTooltip]=\"'Filter' | translate\" [disabled]=\"!anyAxes\" data-help=\"filter\"><mat-icon [class.filled]=\"anyFilters\">filter_list</mat-icon></button>\r\n</mat-toolbar>\r\n<mat-progress-bar mode=\"query\" [style.visibility]=\"loading ? 'visible':'hidden'\"></mat-progress-bar>\r\n
|
11539
|
+
}, template: "<mat-toolbar class=\"nav-toolbar\">\r\n <button mat-icon-button (click)=\"guide()\" [bizdocTooltip]=\"'Help' | translate\" *ngIf=\"view.guide\"><mat-icon>help_outline</mat-icon></button>\r\n <button mat-icon-button (click)=\"vp.refresh()\" [bizdocTooltip]=\"'Refresh' | translate\"><mat-icon matAnimate=\"rotate\">autorenew</mat-icon></button>\r\n <span class=\"divider\"></span>\r\n <button mat-icon-button [bizdocTooltip]=\"'Download' | translate\"\r\n data-help=\"download\" (click)=\"vp.exportToExcel()\">\r\n <mat-icon>save_alt</mat-icon>\r\n </button>\r\n <button mat-icon-button [matMenuTriggerFor]=\"pmenu\" [bizdocTooltip]=\"'Patterns' | translate\" [disabled]=\"!patterns?.length\" data-help=\"pattern\"><mat-icon [class.filled]=\"pattern\">tune</mat-icon></button>\r\n <mat-menu #pmenu>\r\n <button mat-menu-item *ngFor=\"let p of patterns\" (click)=\"patternChange(p)\">\r\n {{p.title}}\r\n </button>\r\n </mat-menu>\r\n <button mat-icon-button (click)=\"clearFilter()\" [bizdocTooltip]=\"'Clear' | translate\" [disabled]=\"!anyFilters\"><mat-icon>clear_all</mat-icon></button>\r\n <button mat-icon-button (click)=\"filterToggle($event)\" [bizdocTooltip]=\"'Filter' | translate\" [disabled]=\"!anyAxes\" data-help=\"filter\"><mat-icon [class.filled]=\"anyFilters\">filter_list</mat-icon></button>\r\n</mat-toolbar>\r\n<mat-progress-bar mode=\"query\" [style.visibility]=\"loading ? 'visible':'hidden'\"></mat-progress-bar>\r\n<bizdoc-cube-view [filters]=\"axes\" #vp\r\n (explore)=\"explore($event)\"\r\n [cube]=\"cube\"\r\n [view]=\"view\"\r\n [(loading)]=\"loading\"></bizdoc-cube-view>\r\n<!--<ng-lottie options=\"{path: 'assets/8318-loader.json'}\" *ngIf=\"loading\"></ng-lottie>-->\r\n", styles: [":host{display:flex;flex-direction:column;height:100%}:host ::ng-deep .cube-view{flex:1 auto}\n"] }]
|
11523
11540
|
}], ctorParameters: function () { return [{ type: SessionService }, { type: PaneRef }, { type: Popup }, { type: RouterImpl }, { type: CubeService }, { type: GuideService }]; }, propDecorators: { viewPane: [{
|
11524
11541
|
type: ViewChild,
|
11525
11542
|
args: [CubeViewComponent, { static: true }]
|
@@ -13179,7 +13196,7 @@ class ReportPaneComponent {
|
|
13179
13196
|
this._cd.detectChanges();
|
13180
13197
|
});
|
13181
13198
|
this._pane.queryParamsChange.subscribe(() => this.viewer.execute());
|
13182
|
-
this._pane.
|
13199
|
+
this._pane.resized.subscribe(() => this.viewer.resize());
|
13183
13200
|
}
|
13184
13201
|
filter(evt) {
|
13185
13202
|
this._popup.open(ReportArgumentsComponent, evt.currentTarget).opened.
|
@@ -13619,7 +13636,7 @@ class WorkflowComponent {
|
|
13619
13636
|
this.diagram.fitToPage();
|
13620
13637
|
this.dirty = false;
|
13621
13638
|
});
|
13622
|
-
this._pane.
|
13639
|
+
this._pane.resized.pipe(takeUntil(this._destroy)).subscribe(() => this.diagram.refresh());
|
13623
13640
|
}
|
13624
13641
|
_palettes() {
|
13625
13642
|
this._session.profile.nodes.forEach(n => {
|
@@ -15118,7 +15135,7 @@ class TracePaneComponent {
|
|
15118
15135
|
this.model = d['item'];
|
15119
15136
|
this._pane.group = `#${this.model.number}`;
|
15120
15137
|
});
|
15121
|
-
this._pane.
|
15138
|
+
this._pane.resized.subscribe(() => {
|
15122
15139
|
this.flow.resize();
|
15123
15140
|
});
|
15124
15141
|
}
|
@@ -15509,7 +15526,7 @@ class SchedulerPaneComponent {
|
|
15509
15526
|
this.date = date ? dayjs(date.decodeId()).startOf('minute').toDate() :
|
15510
15527
|
dayjs().startOf('day').toDate();
|
15511
15528
|
});
|
15512
|
-
this._pane.
|
15529
|
+
this._pane.resized.subscribe(this._resize.bind(this));
|
15513
15530
|
}
|
15514
15531
|
_resize() {
|
15515
15532
|
this.height = (this._element.nativeElement.offsetParent.clientHeight) + 'px';
|
@@ -17250,55 +17267,6 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.1", ngImpor
|
|
17250
17267
|
}]
|
17251
17268
|
}], ctorParameters: function () { return [{ type: PaneRef }, { type: TranslateService }, { type: AccountService }, { type: ChatService }, { type: SessionService }]; } });
|
17252
17269
|
|
17253
|
-
const TIME = 1000;
|
17254
|
-
class WindowTitleService {
|
17255
|
-
constructor(config, users, translate, hub) {
|
17256
|
-
this.config = config;
|
17257
|
-
this._inFocus = true;
|
17258
|
-
this._isActive = false;
|
17259
|
-
this._mode = false;
|
17260
|
-
this._appTitle = this.config.appTitle || 'BizDoc';
|
17261
|
-
document.addEventListener('blur', () => this._inFocus = false);
|
17262
|
-
document.addEventListener('focus', () => {
|
17263
|
-
this._isActive &&
|
17264
|
-
this._clear();
|
17265
|
-
this._inFocus = true;
|
17266
|
-
});
|
17267
|
-
hub.new$.subscribe(i => users.get(i.model.senderId).subscribe(u => !this._inFocus && this._show(translate.get('NewFrom', i.model.number, u.name))));
|
17268
|
-
hub.notify$.subscribe(n => !this._inFocus && this._show(n.model.title));
|
17269
|
-
this._title = document.title;
|
17270
|
-
}
|
17271
|
-
set(value) {
|
17272
|
-
document.title = this._title = value ? `${this._appTitle} - ${value}` : this._appTitle;
|
17273
|
-
}
|
17274
|
-
_show(message) {
|
17275
|
-
this._message = message;
|
17276
|
-
this._isActive = true;
|
17277
|
-
this._task && clearInterval(this._task);
|
17278
|
-
this._task = setInterval(() => {
|
17279
|
-
this._mode = !this._mode;
|
17280
|
-
document.title = this._mode ? this._title : this._message;
|
17281
|
-
}, TIME);
|
17282
|
-
}
|
17283
|
-
_clear() {
|
17284
|
-
clearInterval(this._task);
|
17285
|
-
this._task = null;
|
17286
|
-
document.title = this._title;
|
17287
|
-
this._isActive = false;
|
17288
|
-
}
|
17289
|
-
}
|
17290
|
-
WindowTitleService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.1", ngImport: i0, type: WindowTitleService, deps: [{ token: BIZDOC_CONFIG }, { token: AccountService }, { token: TranslateService }, { token: HubService }], target: i0.ɵɵFactoryTarget.Injectable });
|
17291
|
-
WindowTitleService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "13.3.1", ngImport: i0, type: WindowTitleService, providedIn: 'root' });
|
17292
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.1", ngImport: i0, type: WindowTitleService, decorators: [{
|
17293
|
-
type: Injectable,
|
17294
|
-
args: [{ providedIn: 'root' }]
|
17295
|
-
}], ctorParameters: function () {
|
17296
|
-
return [{ type: undefined, decorators: [{
|
17297
|
-
type: Inject,
|
17298
|
-
args: [BIZDOC_CONFIG]
|
17299
|
-
}] }, { type: AccountService }, { type: TranslateService }, { type: HubService }];
|
17300
|
-
} });
|
17301
|
-
|
17302
17270
|
class WidgetRef {
|
17303
17271
|
constructor(_widget, dim) {
|
17304
17272
|
this._widget = _widget;
|
@@ -17330,6 +17298,7 @@ class WidgetItemComponent {
|
|
17330
17298
|
ngOnInit() {
|
17331
17299
|
this._resizing.pipe(debounceTime(150)).subscribe(() => this._widgetRef._resize.next(this._dim()));
|
17332
17300
|
}
|
17301
|
+
get widgetRef() { return this._widgetRef; }
|
17333
17302
|
ngAfterViewInit() {
|
17334
17303
|
// dom height
|
17335
17304
|
setTimeout(() => {
|
@@ -17393,14 +17362,64 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.1", ngImpor
|
|
17393
17362
|
args: ['window:resize']
|
17394
17363
|
}] } });
|
17395
17364
|
|
17365
|
+
const TIME = 1000;
|
17366
|
+
class WindowTitleService {
|
17367
|
+
constructor(config, users, translate, hub) {
|
17368
|
+
this.config = config;
|
17369
|
+
this._inFocus = true;
|
17370
|
+
this._isActive = false;
|
17371
|
+
this._mode = false;
|
17372
|
+
this._appTitle = this.config.appTitle || 'BizDoc';
|
17373
|
+
document.addEventListener('blur', () => this._inFocus = false);
|
17374
|
+
document.addEventListener('focus', () => {
|
17375
|
+
this._isActive &&
|
17376
|
+
this._clear();
|
17377
|
+
this._inFocus = true;
|
17378
|
+
});
|
17379
|
+
hub.new$.subscribe(i => users.get(i.model.senderId).subscribe(u => !this._inFocus && this._show(translate.get('NewFrom', i.model.number, u.name))));
|
17380
|
+
hub.notify$.subscribe(n => !this._inFocus && this._show(n.model.title));
|
17381
|
+
this._title = document.title;
|
17382
|
+
}
|
17383
|
+
set(value) {
|
17384
|
+
document.title = this._title = value ? `${this._appTitle} - ${value}` : this._appTitle;
|
17385
|
+
}
|
17386
|
+
_show(message) {
|
17387
|
+
this._message = message;
|
17388
|
+
this._isActive = true;
|
17389
|
+
this._task && clearInterval(this._task);
|
17390
|
+
this._task = setInterval(() => {
|
17391
|
+
this._mode = !this._mode;
|
17392
|
+
document.title = this._mode ? this._title : this._message;
|
17393
|
+
}, TIME);
|
17394
|
+
}
|
17395
|
+
_clear() {
|
17396
|
+
clearInterval(this._task);
|
17397
|
+
this._task = null;
|
17398
|
+
document.title = this._title;
|
17399
|
+
this._isActive = false;
|
17400
|
+
}
|
17401
|
+
}
|
17402
|
+
WindowTitleService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.1", ngImport: i0, type: WindowTitleService, deps: [{ token: BIZDOC_CONFIG }, { token: AccountService }, { token: TranslateService }, { token: HubService }], target: i0.ɵɵFactoryTarget.Injectable });
|
17403
|
+
WindowTitleService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "13.3.1", ngImport: i0, type: WindowTitleService, providedIn: 'root' });
|
17404
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.1", ngImport: i0, type: WindowTitleService, decorators: [{
|
17405
|
+
type: Injectable,
|
17406
|
+
args: [{ providedIn: 'root' }]
|
17407
|
+
}], ctorParameters: function () {
|
17408
|
+
return [{ type: undefined, decorators: [{
|
17409
|
+
type: Inject,
|
17410
|
+
args: [BIZDOC_CONFIG]
|
17411
|
+
}] }, { type: AccountService }, { type: TranslateService }, { type: HubService }];
|
17412
|
+
} });
|
17413
|
+
|
17396
17414
|
/** dashboard component*/
|
17397
17415
|
class DashboardComponent {
|
17398
|
-
constructor(_guide, observableMedia, session, title, translate) {
|
17416
|
+
constructor(_guide, observableMedia, session, pane, title, translate) {
|
17399
17417
|
this._guide = _guide;
|
17400
17418
|
this._destroy = new Subject();
|
17401
17419
|
this.cols = 3;
|
17402
17420
|
title.set(translate.get('Dashboard'));
|
17403
17421
|
this.widgets = session.profile.widgets;
|
17422
|
+
pane === null || pane === void 0 ? void 0 : pane.resized.subscribe(() => { var _a; return (_a = this.components) === null || _a === void 0 ? void 0 : _a.forEach(c => c.resize.bind(this)); });
|
17404
17423
|
observableMedia.asObservable().pipe(takeUntil(this._destroy)).subscribe(m => {
|
17405
17424
|
const { mqAlias } = m[0];
|
17406
17425
|
this.cols = (mqAlias === 'xs' || mqAlias === 'sm') ? 1 : mqAlias === 'md' ? 2 : 3;
|
@@ -17414,12 +17433,19 @@ class DashboardComponent {
|
|
17414
17433
|
this._destroy.complete();
|
17415
17434
|
}
|
17416
17435
|
}
|
17417
|
-
DashboardComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.1", ngImport: i0, type: DashboardComponent, deps: [{ token: GuideService }, { token: i2$4.MediaObserver }, { token: SessionService }, { token: WindowTitleService }, { token: TranslateService }], target: i0.ɵɵFactoryTarget.Component });
|
17418
|
-
DashboardComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.3.1", type: DashboardComponent, selector: "bizdoc-dashboard", ngImport: i0, template: "<mat-grid-list [cols]=\"cols\" @deshboard>\r\n <mat-grid-tile *ngFor=\"let w of widgets\" [colspan]=\"w.cols && w.cols <= cols ? w.cols : 1\" [rowspan]=\"w.rows || 1\">\r\n <mat-card @card>\r\n <mat-card-header>\r\n <mat-card-title [attr.data-guide]=\"'widget-'+w.name\">\r\n <span>{{w.title}}</span>\r\n <span class=\"divider\"></span>\r\n <button mat-icon-button (click)=\"widget.refresh()\" [bizdocTooltip]=\"'Refresh'|translate\" [attr.aria-label]=\"'Refresh'|translate\"><mat-icon matAnimate=\"rotate\">autorenew</mat-icon></button>\r\n <button mat-icon-button (click)=\"widget.filter($event)\" [bizdocTooltip]=\"'Filter' | translate\" [attr.aria-label]=\"'Filter'|translate\" *ngIf=\"w.arguments.length||w.argumentsTemplate\"><mat-icon>filter_list</mat-icon></button>\r\n <button mat-icon-button (click)=\"guide(w.guide)\" [bizdocTooltip]=\"'Help' | translate\" [attr.aria-label]=\"'Help'|translate\" *ngIf=\"w.guide\"><mat-icon>help_outline</mat-icon></button>\r\n </mat-card-title>\r\n </mat-card-header>\r\n <mat-card-content>\r\n <bizdoc-widget [model]=\"w\" #widget></bizdoc-widget>\r\n </mat-card-content>\r\n </mat-card>\r\n </mat-grid-tile>\r\n</mat-grid-list>\r\n", styles: [":host{width:100%;height:100%;overflow-y:auto}@media only screen and (min-width: 600px){:host{min-width:600px}}.mat-card{width:calc(100% - 50px);height:calc(100% - 50px);overflow:hidden}.mat-card ::ng-deep .mat-card-header-text{width:100%}.mat-card .mat-card-title{display:flex;flex-direction:row}.mat-card .mat-card-content{height:inherit}.mat-card:hover{box-shadow:0 3px 3px -2px #0003,0 3px 4px #00000024,0 1px 8px #0000001f}\n"], components: [{ type:
|
17436
|
+
DashboardComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.1", ngImport: i0, type: DashboardComponent, deps: [{ token: GuideService }, { token: i2$4.MediaObserver }, { token: SessionService }, { token: PaneRef, optional: true }, { token: WindowTitleService }, { token: TranslateService }], target: i0.ɵɵFactoryTarget.Component });
|
17437
|
+
DashboardComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.3.1", type: DashboardComponent, selector: "bizdoc-dashboard", viewQueries: [{ propertyName: "components", predicate: WidgetItemComponent, descendants: true }], ngImport: i0, template: "<mat-grid-list [cols]=\"cols\" @deshboard>\r\n <mat-grid-tile *ngFor=\"let w of widgets\" [colspan]=\"w.cols && w.cols <= cols ? w.cols : 1\" [rowspan]=\"w.rows || 1\">\r\n <mat-card @card>\r\n <mat-card-header>\r\n <mat-card-title [attr.data-guide]=\"'widget-'+w.name\">\r\n <span>{{w.title}}</span>\r\n <span class=\"divider\"></span>\r\n <button mat-icon-button (click)=\"widget.refresh()\" [bizdocTooltip]=\"'Refresh'|translate\" [attr.aria-label]=\"'Refresh'|translate\"><mat-icon matAnimate=\"rotate\">autorenew</mat-icon></button>\r\n <button mat-icon-button (click)=\"widget.filter($event)\" [bizdocTooltip]=\"'Filter' | translate\" [attr.aria-label]=\"'Filter'|translate\" *ngIf=\"w.arguments.length||w.argumentsTemplate\"><mat-icon>filter_list</mat-icon></button>\r\n <button mat-icon-button (click)=\"guide(w.guide)\" [bizdocTooltip]=\"'Help' | translate\" [attr.aria-label]=\"'Help'|translate\" *ngIf=\"w.guide\"><mat-icon>help_outline</mat-icon></button>\r\n </mat-card-title>\r\n </mat-card-header>\r\n <mat-card-content>\r\n <bizdoc-widget [model]=\"w\" #widget></bizdoc-widget>\r\n </mat-card-content>\r\n </mat-card>\r\n </mat-grid-tile>\r\n</mat-grid-list>\r\n", styles: [":host{width:100%;height:100%;overflow-y:auto}@media only screen and (min-width: 600px){:host{min-width:600px}}.mat-card{width:calc(100% - 50px);height:calc(100% - 50px);overflow:hidden}.mat-card ::ng-deep .mat-card-header-text{width:100%}.mat-card .mat-card-title{display:flex;flex-direction:row}.mat-card .mat-card-content{height:inherit}.mat-card:hover{box-shadow:0 3px 3px -2px #0003,0 3px 4px #00000024,0 1px 8px #0000001f}\n"], components: [{ type: i7$4.MatGridList, selector: "mat-grid-list", inputs: ["cols", "gutterSize", "rowHeight"], exportAs: ["matGridList"] }, { type: i7$4.MatGridTile, selector: "mat-grid-tile", inputs: ["rowspan", "colspan"], exportAs: ["matGridTile"] }, { type: i19.MatCard, selector: "mat-card", exportAs: ["matCard"] }, { type: i19.MatCardHeader, selector: "mat-card-header" }, { 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: WidgetItemComponent, selector: "bizdoc-widget", inputs: ["model"] }], directives: [{ type: i10.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { type: i19.MatCardTitle, selector: "mat-card-title, [mat-card-title], [matCardTitle]" }, { type: TooltipDirective, selector: "[bizdocTooltip]", inputs: ["bizdocTooltip", "bizdocTooltipTemplate", "bizdocTooltipContext", "bizdocTooltipPosition", "bizdocTooltipDuration", "bizdocTooltipDisabled"] }, { type: MatIconAnimate, selector: "[matAnimate]" }, { type: i10.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { type: i19.MatCardContent, selector: "mat-card-content, [mat-card-content], [matCardContent]" }], pipes: { "translate": TranslatePipe }, animations: [deshboardAnimation, cardsAnimation] });
|
17419
17438
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.1", ngImport: i0, type: DashboardComponent, decorators: [{
|
17420
17439
|
type: Component,
|
17421
17440
|
args: [{ selector: 'bizdoc-dashboard', animations: [deshboardAnimation, cardsAnimation], template: "<mat-grid-list [cols]=\"cols\" @deshboard>\r\n <mat-grid-tile *ngFor=\"let w of widgets\" [colspan]=\"w.cols && w.cols <= cols ? w.cols : 1\" [rowspan]=\"w.rows || 1\">\r\n <mat-card @card>\r\n <mat-card-header>\r\n <mat-card-title [attr.data-guide]=\"'widget-'+w.name\">\r\n <span>{{w.title}}</span>\r\n <span class=\"divider\"></span>\r\n <button mat-icon-button (click)=\"widget.refresh()\" [bizdocTooltip]=\"'Refresh'|translate\" [attr.aria-label]=\"'Refresh'|translate\"><mat-icon matAnimate=\"rotate\">autorenew</mat-icon></button>\r\n <button mat-icon-button (click)=\"widget.filter($event)\" [bizdocTooltip]=\"'Filter' | translate\" [attr.aria-label]=\"'Filter'|translate\" *ngIf=\"w.arguments.length||w.argumentsTemplate\"><mat-icon>filter_list</mat-icon></button>\r\n <button mat-icon-button (click)=\"guide(w.guide)\" [bizdocTooltip]=\"'Help' | translate\" [attr.aria-label]=\"'Help'|translate\" *ngIf=\"w.guide\"><mat-icon>help_outline</mat-icon></button>\r\n </mat-card-title>\r\n </mat-card-header>\r\n <mat-card-content>\r\n <bizdoc-widget [model]=\"w\" #widget></bizdoc-widget>\r\n </mat-card-content>\r\n </mat-card>\r\n </mat-grid-tile>\r\n</mat-grid-list>\r\n", styles: [":host{width:100%;height:100%;overflow-y:auto}@media only screen and (min-width: 600px){:host{min-width:600px}}.mat-card{width:calc(100% - 50px);height:calc(100% - 50px);overflow:hidden}.mat-card ::ng-deep .mat-card-header-text{width:100%}.mat-card .mat-card-title{display:flex;flex-direction:row}.mat-card .mat-card-content{height:inherit}.mat-card:hover{box-shadow:0 3px 3px -2px #0003,0 3px 4px #00000024,0 1px 8px #0000001f}\n"] }]
|
17422
|
-
}], ctorParameters: function () {
|
17441
|
+
}], ctorParameters: function () {
|
17442
|
+
return [{ type: GuideService }, { type: i2$4.MediaObserver }, { type: SessionService }, { type: PaneRef, decorators: [{
|
17443
|
+
type: Optional
|
17444
|
+
}] }, { type: WindowTitleService }, { type: TranslateService }];
|
17445
|
+
}, propDecorators: { components: [{
|
17446
|
+
type: ViewChildren,
|
17447
|
+
args: [WidgetItemComponent]
|
17448
|
+
}] } });
|
17423
17449
|
|
17424
17450
|
/** dashboard component*/
|
17425
17451
|
class DashboardPaneComponent {
|
@@ -17476,6 +17502,7 @@ class ViewItemComponent {
|
|
17476
17502
|
this._destroy = new Subject();
|
17477
17503
|
}
|
17478
17504
|
get hidden() { return this._viewRef && this._viewRef.hidden; }
|
17505
|
+
get viewRef() { return this._viewRef; }
|
17479
17506
|
ngAfterViewInit() {
|
17480
17507
|
// dom
|
17481
17508
|
const factory = this._cf.resolve(this.view.template);
|
@@ -17487,7 +17514,7 @@ class ViewItemComponent {
|
|
17487
17514
|
}
|
17488
17515
|
catch (e) {
|
17489
17516
|
}
|
17490
|
-
this._resizing.pipe(debounceTime(
|
17517
|
+
this._resizing.pipe(debounceTime(150), takeUntil$1(this._destroy)).subscribe(() => this._viewRef._resize.next(this._dim()));
|
17491
17518
|
}
|
17492
17519
|
_dim() {
|
17493
17520
|
let el = this._vc.element.nativeElement.parentElement, dim = el.getBoundingClientRect();
|
@@ -17534,31 +17561,36 @@ class DocumentViewsComponent {
|
|
17534
17561
|
this._cd.detectChanges();
|
17535
17562
|
this.views = this._session.profile.views.filter(v => !v.forms || v.forms.indexOf(this.model.formId) > -1);
|
17536
17563
|
}
|
17564
|
+
resize() {
|
17565
|
+
this.components.forEach(c => c.resize());
|
17566
|
+
}
|
17537
17567
|
}
|
17538
17568
|
DocumentViewsComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.1", ngImport: i0, type: DocumentViewsComponent, deps: [{ token: i0.ChangeDetectorRef }, { token: SessionService }], target: i0.ɵɵFactoryTarget.Component });
|
17539
|
-
DocumentViewsComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.3.1", type: DocumentViewsComponent, selector: "bizdoc-document-views", inputs: { model: "model" }, usesOnChanges: true, ngImport: i0, template: "<ng-container *ngFor=\"let v of views; let last = last;\">\r\n <bizdoc-document-view-item [model]=\"model\" [view]=\"v\" #view></bizdoc-document-view-item>\r\n <!--<hr *ngIf=\"!view.hidden && !last\" />-->\r\n</ng-container>\r\n", styles: [":host{display:flex;flex-direction:column}hr{opacity:.4;margin:4px 8px}:host ::ng-deep .nav-toolbar{display:flex;flex-direction:row}:host ::ng-deep .view{display:flex;flex-direction:column;position:relative}:host ::ng-deep .loading-view{position:absolute;width:100%;height:100%;text-align:-webkit-center}\n"], components: [{ type: ViewItemComponent, selector: "bizdoc-document-view-item", inputs: ["model", "view"] }], directives: [{ type: i10.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }] });
|
17569
|
+
DocumentViewsComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.3.1", type: DocumentViewsComponent, selector: "bizdoc-document-views", inputs: { model: "model" }, viewQueries: [{ propertyName: "components", predicate: ViewItemComponent, descendants: true }], usesOnChanges: true, ngImport: i0, template: "<ng-container *ngFor=\"let v of views; let last = last;\">\r\n <bizdoc-document-view-item [model]=\"model\" [view]=\"v\" #view></bizdoc-document-view-item>\r\n <!--<hr *ngIf=\"!view.hidden && !last\" />-->\r\n</ng-container>\r\n", styles: [":host{display:flex;flex-direction:column}hr{opacity:.4;margin:4px 8px}:host ::ng-deep .nav-toolbar{display:flex;flex-direction:row}:host ::ng-deep .view{display:flex;flex-direction:column;position:relative}:host ::ng-deep .loading-view{position:absolute;width:100%;height:100%;text-align:-webkit-center}\n"], components: [{ type: ViewItemComponent, selector: "bizdoc-document-view-item", inputs: ["model", "view"] }], directives: [{ type: i10.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }] });
|
17540
17570
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.1", ngImport: i0, type: DocumentViewsComponent, decorators: [{
|
17541
17571
|
type: Component,
|
17542
17572
|
args: [{ selector: 'bizdoc-document-views', template: "<ng-container *ngFor=\"let v of views; let last = last;\">\r\n <bizdoc-document-view-item [model]=\"model\" [view]=\"v\" #view></bizdoc-document-view-item>\r\n <!--<hr *ngIf=\"!view.hidden && !last\" />-->\r\n</ng-container>\r\n", styles: [":host{display:flex;flex-direction:column}hr{opacity:.4;margin:4px 8px}:host ::ng-deep .nav-toolbar{display:flex;flex-direction:row}:host ::ng-deep .view{display:flex;flex-direction:column;position:relative}:host ::ng-deep .loading-view{position:absolute;width:100%;height:100%;text-align:-webkit-center}\n"] }]
|
17543
|
-
}], ctorParameters: function () { return [{ type: i0.ChangeDetectorRef }, { type: SessionService }]; }, propDecorators: {
|
17573
|
+
}], ctorParameters: function () { return [{ type: i0.ChangeDetectorRef }, { type: SessionService }]; }, propDecorators: { components: [{
|
17574
|
+
type: ViewChildren,
|
17575
|
+
args: [ViewItemComponent]
|
17576
|
+
}], model: [{
|
17544
17577
|
type: Input
|
17545
17578
|
}] } });
|
17546
17579
|
|
17547
17580
|
class DocumentViewPaneComponent {
|
17548
|
-
constructor(session, translate,
|
17549
|
-
|
17550
|
-
|
17551
|
-
_pane.dataChange.subscribe(d => {
|
17581
|
+
constructor(session, translate, pane) {
|
17582
|
+
pane.title = translate.get('View');
|
17583
|
+
pane.dataChange.subscribe(d => {
|
17552
17584
|
this.model = d['item'];
|
17553
17585
|
const form = session.profile.forms.find(f => f.name === this.model.formId);
|
17554
|
-
|
17555
|
-
|
17556
|
-
_pane.icon = form.icon;
|
17586
|
+
pane.group = `#${this.model.number}`;
|
17587
|
+
pane.icon = form.icon;
|
17557
17588
|
});
|
17589
|
+
pane.resized.subscribe(() => this.views.resize());
|
17558
17590
|
}
|
17559
17591
|
}
|
17560
17592
|
DocumentViewPaneComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.1", ngImport: i0, type: DocumentViewPaneComponent, deps: [{ token: SessionService }, { token: TranslateService }, { token: PaneRef }], target: i0.ɵɵFactoryTarget.Component });
|
17561
|
-
DocumentViewPaneComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.3.1", type: DocumentViewPaneComponent, selector: "ng-component", ngImport: i0, template: '<bizdoc-document-views [model]=model></bizdoc-document-views>', isInline: true, styles: [":host{min-width:450px;flex-grow:1}\n"], components: [{ type: DocumentViewsComponent, selector: "bizdoc-document-views", inputs: ["model"] }] });
|
17593
|
+
DocumentViewPaneComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.3.1", type: DocumentViewPaneComponent, selector: "ng-component", viewQueries: [{ propertyName: "views", first: true, predicate: DocumentViewsComponent, descendants: true }], ngImport: i0, template: '<bizdoc-document-views [model]=model></bizdoc-document-views>', isInline: true, styles: [":host{min-width:450px;flex-grow:1}\n"], components: [{ type: DocumentViewsComponent, selector: "bizdoc-document-views", inputs: ["model"] }] });
|
17562
17594
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.1", ngImport: i0, type: DocumentViewPaneComponent, decorators: [{
|
17563
17595
|
type: Component,
|
17564
17596
|
args: [{
|
@@ -17567,7 +17599,10 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.1", ngImpor
|
|
17567
17599
|
min-width: 450px;
|
17568
17600
|
flex-grow: 1;}`]
|
17569
17601
|
}]
|
17570
|
-
}], ctorParameters: function () { return [{ type: SessionService }, { type: TranslateService }, { type: PaneRef }]; }
|
17602
|
+
}], ctorParameters: function () { return [{ type: SessionService }, { type: TranslateService }, { type: PaneRef }]; }, propDecorators: { views: [{
|
17603
|
+
type: ViewChild,
|
17604
|
+
args: [DocumentViewsComponent]
|
17605
|
+
}] } });
|
17571
17606
|
|
17572
17607
|
class DocumentInfoComponent {
|
17573
17608
|
constructor(_session, _cf, _injector) {
|
@@ -17973,7 +18008,7 @@ class OptionsComponent {
|
|
17973
18008
|
}
|
17974
18009
|
}
|
17975
18010
|
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 });
|
17976
|
-
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 } });
|
18011
|
+
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$2.MatExpansionPanel, selector: "mat-expansion-panel", inputs: ["disabled", "expanded", "hideToggle", "togglePosition"], outputs: ["opened", "closed", "expandedChange", "afterExpand", "afterCollapse"], exportAs: ["matExpansionPanel"] }, { type: i6$2.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$2.MatAccordion, selector: "mat-accordion", inputs: ["multi", "hideToggle", "displayMode", "togglePosition"], exportAs: ["matAccordion"] }, { type: i6$2.MatExpansionPanelTitle, selector: "mat-panel-title" }, { type: i6$2.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 } });
|
17977
18012
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.1", ngImport: i0, type: OptionsComponent, decorators: [{
|
17978
18013
|
type: Component,
|
17979
18014
|
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"] }]
|
@@ -18383,10 +18418,8 @@ class SlotRouterDirective {
|
|
18383
18418
|
}
|
18384
18419
|
ngOnInit() {
|
18385
18420
|
const path = this._link.join('/');
|
18386
|
-
this._router.events.pipe(takeUntil(this._destroy)).subscribe(e => (e instanceof NavigationStart || e instanceof ParamNavigation || e instanceof
|
18421
|
+
this._router.events.pipe(takeUntil(this._destroy)).subscribe(e => (e instanceof NavigationStart || e instanceof ParamNavigation || e instanceof NavigationFocus) && e.pane.path && e.pane.mode === 'pane'
|
18387
18422
|
&& this._toggle(e.pane.fullPath.startsWith(path)));
|
18388
|
-
this._router.active && this._router.active.path && this._router.active.fullPath.startsWith(path) &&
|
18389
|
-
this._toggle(true);
|
18390
18423
|
}
|
18391
18424
|
_toggle(val) {
|
18392
18425
|
if (val)
|
@@ -18715,6 +18748,7 @@ class SlotsComponent {
|
|
18715
18748
|
this.accent = this._session.getAccent();
|
18716
18749
|
this._pending = [];
|
18717
18750
|
this._rtl = this._session.inverse;
|
18751
|
+
this._resizing = new Subject();
|
18718
18752
|
this._destroy = new Subject();
|
18719
18753
|
_session.themeChange.pipe(takeUntil(this._destroy)).
|
18720
18754
|
subscribe(() => this.accent = _session.getAccent());
|
@@ -18827,7 +18861,7 @@ class SlotsComponent {
|
|
18827
18861
|
this.group = tab.group;
|
18828
18862
|
this.selectedTabIndex = i;
|
18829
18863
|
this._cd.detectChanges();
|
18830
|
-
this.
|
18864
|
+
this._syncBrowserHistory();
|
18831
18865
|
return;
|
18832
18866
|
}
|
18833
18867
|
}
|
@@ -18835,7 +18869,7 @@ class SlotsComponent {
|
|
18835
18869
|
yield this._navParams(path, tab, params, queryParams, state);
|
18836
18870
|
this.group = tab.group;
|
18837
18871
|
this.selectedTabIndex = i;
|
18838
|
-
this.
|
18872
|
+
this._syncBrowserHistory();
|
18839
18873
|
return;
|
18840
18874
|
}
|
18841
18875
|
i++;
|
@@ -18857,13 +18891,13 @@ class SlotsComponent {
|
|
18857
18891
|
else {
|
18858
18892
|
this._navQueryParams(pane, queryParams, state);
|
18859
18893
|
this.scrollTo(i);
|
18860
|
-
this.
|
18894
|
+
this._syncBrowserHistory();
|
18861
18895
|
return;
|
18862
18896
|
}
|
18863
18897
|
}
|
18864
18898
|
else if (pane.route === route) {
|
18865
18899
|
yield this._navParams(path, pane, params, queryParams, state);
|
18866
|
-
this.
|
18900
|
+
this._syncBrowserHistory();
|
18867
18901
|
return;
|
18868
18902
|
}
|
18869
18903
|
i++;
|
@@ -18887,8 +18921,8 @@ class SlotsComponent {
|
|
18887
18921
|
queryParams,
|
18888
18922
|
policy
|
18889
18923
|
});
|
18890
|
-
else
|
18891
|
-
|
18924
|
+
else
|
18925
|
+
this._insertPane(component || route.component, {
|
18892
18926
|
queryString,
|
18893
18927
|
path,
|
18894
18928
|
route,
|
@@ -18901,16 +18935,14 @@ class SlotsComponent {
|
|
18901
18935
|
queryParams,
|
18902
18936
|
policy
|
18903
18937
|
});
|
18904
|
-
pane._events$.next(new NavigationFullscreen(pane._fullscreen = this.panes.length === 1, pane));
|
18905
|
-
}
|
18906
18938
|
route &&
|
18907
|
-
this.
|
18939
|
+
this._syncBrowserHistory();
|
18908
18940
|
}
|
18909
18941
|
else {
|
18910
18942
|
const pane = (policy & OpenPolicy.Tab) == OpenPolicy.Tab ?
|
18911
18943
|
this.tabs[this.selectedTabIndex] : this.panes[this.selectedIndex];
|
18912
18944
|
this._navQueryParams(pane, queryParams, state);
|
18913
|
-
this.
|
18945
|
+
this._syncBrowserHistory();
|
18914
18946
|
if ((policy & OpenPolicy.Tab) != OpenPolicy.Tab)
|
18915
18947
|
this.select(this.selectedIndex);
|
18916
18948
|
}
|
@@ -18929,8 +18961,8 @@ class SlotsComponent {
|
|
18929
18961
|
queryParams,
|
18930
18962
|
policy
|
18931
18963
|
});
|
18932
|
-
else
|
18933
|
-
|
18964
|
+
else
|
18965
|
+
this._insertPane(component, {
|
18934
18966
|
data: state,
|
18935
18967
|
icon, title, help,
|
18936
18968
|
parent,
|
@@ -18940,25 +18972,29 @@ class SlotsComponent {
|
|
18940
18972
|
params,
|
18941
18973
|
policy, queryParams
|
18942
18974
|
});
|
18943
|
-
pane._events$.next(new NavigationFullscreen(pane._fullscreen = this.panes.length === 1, pane));
|
18944
|
-
}
|
18945
18975
|
}
|
18946
18976
|
}));
|
18947
18977
|
window.removeAllListeners('popstate');
|
18948
18978
|
window.addEventListener('popstate', e => {
|
18949
|
-
if (this.
|
18950
|
-
this.
|
18979
|
+
if (this._navigationInProcess) {
|
18980
|
+
this._navigationInProcess = false;
|
18951
18981
|
return;
|
18952
18982
|
}
|
18953
|
-
|
18954
|
-
|
18955
|
-
|
18983
|
+
if (e.state && e.state.bizdoc) {
|
18984
|
+
const evt = new BackNavigation();
|
18985
|
+
if (evt._preventDefault)
|
18986
|
+
return;
|
18987
|
+
this._router._events$.next(evt);
|
18988
|
+
const state = e.state;
|
18989
|
+
this._deserialize(location.pathname.substring(1), state);
|
18956
18990
|
this.swap = state.swap;
|
18957
18991
|
this.swapTab = state.swapTab;
|
18958
18992
|
this.prevGroup = state.prevGroup;
|
18959
18993
|
this.group = state.group;
|
18960
18994
|
this.selectedTabIndex = state.selectedTabIndex;
|
18961
18995
|
}
|
18996
|
+
else
|
18997
|
+
this._deserialize(location.pathname.substring(1));
|
18962
18998
|
});
|
18963
18999
|
if (location.pathname.length > 1)
|
18964
19000
|
this._deserialize(location.pathname.substring(1), history.state && history.state.bizdoc ? history.state : undefined);
|
@@ -18966,6 +19002,7 @@ class SlotsComponent {
|
|
18966
19002
|
this._router._navigate$.next({
|
18967
19003
|
commands: DEFAULT_ROUTE,
|
18968
19004
|
});
|
19005
|
+
this._resizing.pipe(debounceTime$1(150)).subscribe(this._resize.bind(this));
|
18969
19006
|
}
|
18970
19007
|
_deserialize(url, state) {
|
18971
19008
|
return __awaiter(this, void 0, void 0, function* () {
|
@@ -19022,8 +19059,10 @@ class SlotsComponent {
|
|
19022
19059
|
const n = this.panes.length;
|
19023
19060
|
for (let i = 0; i < n; i++) {
|
19024
19061
|
let pane = this.panes[i];
|
19025
|
-
pane.
|
19026
|
-
|
19062
|
+
if (pane.expanded !== (n === 1)) {
|
19063
|
+
const evt = new NavigationExpand(pane._expanded = n === 1, pane);
|
19064
|
+
pane._events$.next(evt);
|
19065
|
+
}
|
19027
19066
|
}
|
19028
19067
|
});
|
19029
19068
|
}
|
@@ -19132,7 +19171,9 @@ class SlotsComponent {
|
|
19132
19171
|
pane._queryString = this._queryString(queryParams);
|
19133
19172
|
state && pane._data$.next(state);
|
19134
19173
|
pane._queryParams$.next(queryParams);
|
19135
|
-
|
19174
|
+
const evt = new QueryParamNavigation(queryParams, pane);
|
19175
|
+
pane._events$.next(evt);
|
19176
|
+
this._router._events$.next(evt);
|
19136
19177
|
}
|
19137
19178
|
/**
|
19138
19179
|
*
|
@@ -19160,7 +19201,9 @@ class SlotsComponent {
|
|
19160
19201
|
pane._queryString = '';
|
19161
19202
|
pane._queryParams$.next({});
|
19162
19203
|
}
|
19163
|
-
|
19204
|
+
const evt = new ParamNavigation(params, pane);
|
19205
|
+
pane._events$.next(evt);
|
19206
|
+
this._router._events$.next(evt);
|
19164
19207
|
this.panes.concat(this.tabs).forEach(child => {
|
19165
19208
|
if (child.route && child.route.parent === pane.route) {
|
19166
19209
|
child._data$.next(Object.assign(child.data, state));
|
@@ -19178,24 +19221,20 @@ class SlotsComponent {
|
|
19178
19221
|
});
|
19179
19222
|
}
|
19180
19223
|
/** */
|
19181
|
-
|
19224
|
+
_syncBrowserHistory() {
|
19182
19225
|
let path = this.panes.filter(p => p.route).map(s => s.fullPath).join(PATH_CHAR);
|
19183
19226
|
if (this.tabs.length) {
|
19184
19227
|
const tabs = this.tabs.filter(p => p.route);
|
19185
19228
|
if (tabs.length)
|
19186
19229
|
path += PANE_CHAR + tabs.map(s => s.fullPath).join(PATH_CHAR);
|
19187
19230
|
}
|
19188
|
-
const state = this.
|
19189
|
-
this.
|
19231
|
+
const state = this._constructHistoryState();
|
19232
|
+
this._navigationInProcess = true;
|
19190
19233
|
history.pushState(state, '', '/' + path);
|
19191
|
-
setTimeout(() => this.
|
19234
|
+
setTimeout(() => this._navigationInProcess = false, 200);
|
19192
19235
|
}
|
19193
|
-
|
19194
|
-
|
19195
|
-
* @param mode
|
19196
|
-
*/
|
19197
|
-
_history() {
|
19198
|
-
const state = {
|
19236
|
+
_constructHistoryState() {
|
19237
|
+
return {
|
19199
19238
|
bizdoc: true,
|
19200
19239
|
step: history.state && history.state.bizdoc ? history.state.step + 1 : 1,
|
19201
19240
|
selectedTabIndex: this.selectedTabIndex,
|
@@ -19206,13 +19245,12 @@ class SlotsComponent {
|
|
19206
19245
|
swapTab: this.swapTab,
|
19207
19246
|
prevGroup: this.prevGroup
|
19208
19247
|
};
|
19209
|
-
return state;
|
19210
19248
|
}
|
19211
19249
|
drop(evt) {
|
19212
19250
|
const pane = this.panes[evt.previousIndex];
|
19213
19251
|
this.panes.splice(evt.previousIndex, 1);
|
19214
19252
|
this.panes.splice(evt.currentIndex, 0, pane);
|
19215
|
-
this.
|
19253
|
+
this._syncBrowserHistory();
|
19216
19254
|
}
|
19217
19255
|
togglePinned(pane) {
|
19218
19256
|
pane.pinned = !pane.pinned;
|
@@ -19347,26 +19385,25 @@ class SlotsComponent {
|
|
19347
19385
|
}
|
19348
19386
|
insert(position, component, options) {
|
19349
19387
|
const pane = this._insertPane(component, options || {}, position);
|
19350
|
-
pane._events$.next(new NavigationFullscreen(pane._fullscreen = this.panes.length === 1, pane));
|
19351
19388
|
return pane;
|
19352
19389
|
}
|
19353
19390
|
_insertPane(component, options, position) {
|
19354
|
-
const
|
19355
|
-
const pane = this._constract(component, 'pane',
|
19391
|
+
const stretchable = (options.policy & OpenPolicy.Stretch) == OpenPolicy.Stretch;
|
19392
|
+
const pane = this._constract(component, Object.assign({ mode: 'pane', expanded: !this.panes.length, stretchable }, options));
|
19356
19393
|
if (position === undefined)
|
19357
19394
|
position = this.panes.length;
|
19358
19395
|
this.panes.push(pane);
|
19359
19396
|
this.titleAnimation++;
|
19360
19397
|
this._cd.detectChanges();
|
19361
|
-
|
19398
|
+
const evt = new NavigationStart(pane);
|
19399
|
+
this._router._events$.next(evt);
|
19362
19400
|
if (options.focus !== false) {
|
19363
19401
|
this.selectedIndex = position;
|
19364
|
-
this._router._active = pane;
|
19365
19402
|
this._title.set(pane.title);
|
19366
19403
|
if (this.panes.length > 1)
|
19367
19404
|
this.scrollTo(position);
|
19368
19405
|
}
|
19369
|
-
this.
|
19406
|
+
this.enableNavigationArrows();
|
19370
19407
|
return pane;
|
19371
19408
|
}
|
19372
19409
|
/**
|
@@ -19374,12 +19411,9 @@ class SlotsComponent {
|
|
19374
19411
|
* @param component
|
19375
19412
|
* @param options
|
19376
19413
|
*/
|
19377
|
-
_constract(component,
|
19378
|
-
const pane = new PaneRef(component,
|
19379
|
-
pane.
|
19380
|
-
{ provide: PaneRef, useValue: pane }
|
19381
|
-
], this._injector);
|
19382
|
-
pane._comm$.subscribe(e => this._action(e, pane));
|
19414
|
+
_constract(component, options) {
|
19415
|
+
const pane = new PaneRef(component, this._injector, options);
|
19416
|
+
pane._comm$.subscribe(e => this._paneCommand(e, pane));
|
19383
19417
|
return pane;
|
19384
19418
|
}
|
19385
19419
|
/**
|
@@ -19389,12 +19423,12 @@ class SlotsComponent {
|
|
19389
19423
|
*/
|
19390
19424
|
_insertTab(component, options) {
|
19391
19425
|
const { policy } = options, dialog = (policy & OpenPolicy.Dialog) == OpenPolicy.Dialog, expandable = (policy & OpenPolicy.Expandable) == OpenPolicy.Expandable, dismissable = (policy & OpenPolicy.Dismissable) == OpenPolicy.Dismissable;
|
19392
|
-
const tab = this._constract(component,
|
19426
|
+
const tab = this._constract(component, Object.assign(Object.assign({ mode: 'tab', expanded: false }, options), { dialog,
|
19393
19427
|
dismissable,
|
19394
19428
|
expandable }));
|
19395
19429
|
this.tabs.push(tab);
|
19396
|
-
this._router._events$.next(new NavigationStart(tab));
|
19397
19430
|
this._cd.detectChanges();
|
19431
|
+
this._router._events$.next(new NavigationStart(tab));
|
19398
19432
|
if (tab.group && this.group !== tab.group && options.swap !== false) {
|
19399
19433
|
let i = 0, swap = false;
|
19400
19434
|
do {
|
@@ -19424,27 +19458,30 @@ class SlotsComponent {
|
|
19424
19458
|
this._guide.start(name);
|
19425
19459
|
}
|
19426
19460
|
back() {
|
19427
|
-
this.
|
19461
|
+
this._navBack(this.swap);
|
19428
19462
|
this.swap = null;
|
19429
19463
|
}
|
19430
|
-
|
19464
|
+
/**
|
19465
|
+
*
|
19466
|
+
* @param steps
|
19467
|
+
*/
|
19468
|
+
_navBack(steps) {
|
19431
19469
|
return __awaiter(this, void 0, void 0, function* () {
|
19432
|
-
this._router._events$.next(new BackNavigation());
|
19433
19470
|
history.go(steps - history.state.step);
|
19434
19471
|
});
|
19435
19472
|
}
|
19436
19473
|
tabBack() {
|
19437
|
-
this.
|
19474
|
+
this._navBack(this.swapTab);
|
19438
19475
|
this.swapTab = null;
|
19439
19476
|
}
|
19440
19477
|
/**
|
19441
19478
|
*
|
19442
|
-
* @param
|
19479
|
+
* @param command
|
19443
19480
|
* @param pane
|
19444
19481
|
*/
|
19445
|
-
|
19482
|
+
_paneCommand(command, pane) {
|
19446
19483
|
return __awaiter(this, void 0, void 0, function* () {
|
19447
|
-
switch (
|
19484
|
+
switch (command) {
|
19448
19485
|
case 'focus':
|
19449
19486
|
{
|
19450
19487
|
if (pane.mode === 'tab') {
|
@@ -19463,9 +19500,12 @@ class SlotsComponent {
|
|
19463
19500
|
}
|
19464
19501
|
else {
|
19465
19502
|
const index = this.panes.indexOf(pane);
|
19466
|
-
this.collapse();
|
19467
19503
|
yield this.removeAt(index);
|
19468
|
-
|
19504
|
+
this._clearPending();
|
19505
|
+
yield this._clearTabs();
|
19506
|
+
if (this.panes.length)
|
19507
|
+
this._syncBrowserHistory();
|
19508
|
+
else
|
19469
19509
|
this._router.navigate(DEFAULT_ROUTE);
|
19470
19510
|
}
|
19471
19511
|
break;
|
@@ -19475,8 +19515,8 @@ class SlotsComponent {
|
|
19475
19515
|
else
|
19476
19516
|
this.expandPane();
|
19477
19517
|
break;
|
19478
|
-
case '
|
19479
|
-
const state = this.
|
19518
|
+
case 'recycle': {
|
19519
|
+
const state = this._constructHistoryState();
|
19480
19520
|
history.replaceState(state, '');
|
19481
19521
|
break;
|
19482
19522
|
}
|
@@ -19491,37 +19531,52 @@ class SlotsComponent {
|
|
19491
19531
|
return __awaiter(this, void 0, void 0, function* () {
|
19492
19532
|
if (!this.tabs.length)
|
19493
19533
|
return;
|
19534
|
+
const evt = new CollapseNavigation();
|
19535
|
+
this._router._events$.next(evt);
|
19536
|
+
if (evt._preventDefault)
|
19537
|
+
return;
|
19494
19538
|
this._clearPending();
|
19495
19539
|
yield this._clearTabs();
|
19496
|
-
this.
|
19497
|
-
this._router._events$.next(new CollapseNavigation());
|
19540
|
+
this._syncBrowserHistory();
|
19498
19541
|
});
|
19499
19542
|
}
|
19500
19543
|
onResize() {
|
19501
|
-
|
19544
|
+
this._resizing.next();
|
19545
|
+
}
|
19546
|
+
/** */
|
19547
|
+
_resize() {
|
19548
|
+
if (this.panes.length > 1 && !this.panes[this.panes.length - 1].stretchable) {
|
19502
19549
|
const el = this._panesContainerRef.element.nativeElement, child = el.lastElementChild;
|
19503
19550
|
child.style.minWidth =
|
19504
19551
|
(el.parentElement.parentElement.clientWidth - el.parentElement.offsetLeft - child.offsetLeft - 2) + 'px';
|
19505
19552
|
}
|
19506
|
-
|
19507
|
-
_resize() {
|
19508
|
-
//this.tabs.concat(this.panes).forEach(t => t._resize$.next({
|
19509
|
-
//} as any));
|
19510
|
-
window.dispatchEvent(new Event('resize'));
|
19553
|
+
this.tabs.concat(this.panes).forEach(p => p._events$.next(new NavigationResize({}, p)));
|
19511
19554
|
}
|
19512
19555
|
closeTab(position) {
|
19513
19556
|
const tab = this.tabs[position];
|
19514
|
-
|
19515
|
-
tab._events$.next(evt);
|
19516
|
-
if (evt._preventDefault)
|
19557
|
+
if (!this._closing(tab))
|
19517
19558
|
return;
|
19518
19559
|
this.tabs.splice(position, 1);
|
19519
19560
|
this._destroyPane(tab);
|
19520
19561
|
this.selectedTabIndex = this.tabs.length ? position > 0 ? position - 1 : 0 : -1;
|
19521
|
-
this.
|
19562
|
+
this._syncBrowserHistory();
|
19563
|
+
}
|
19564
|
+
/**
|
19565
|
+
*
|
19566
|
+
* @param pane
|
19567
|
+
*/
|
19568
|
+
_closing(pane) {
|
19569
|
+
let evt = new NavigationClose(pane);
|
19570
|
+
pane._events$.next(evt);
|
19571
|
+
return !evt._preventDefault;
|
19522
19572
|
}
|
19523
19573
|
expandPane() {
|
19524
19574
|
const pane = this.panes[this.selectedIndex];
|
19575
|
+
const evt = new NavigationExpand(pane._expanded = true, pane);
|
19576
|
+
pane._events$.next(evt);
|
19577
|
+
this._router._events$.next(evt);
|
19578
|
+
if (evt._preventDefault)
|
19579
|
+
return;
|
19525
19580
|
this.swap = this._getHistoryStep();
|
19526
19581
|
let i = 0;
|
19527
19582
|
do {
|
@@ -19533,23 +19588,26 @@ class SlotsComponent {
|
|
19533
19588
|
i++;
|
19534
19589
|
} while (i < this.panes.length);
|
19535
19590
|
this.selectedIndex = 0;
|
19536
|
-
this.
|
19537
|
-
pane._events$.next(new NavigationFullscreen(pane._fullscreen = true, pane));
|
19591
|
+
this._syncBrowserHistory();
|
19538
19592
|
}
|
19539
19593
|
_getHistoryStep() {
|
19540
19594
|
return history.state && history.state.bizdoc ? history.state.step : 0;
|
19541
19595
|
}
|
19542
19596
|
expandTab() {
|
19597
|
+
const tab = this.tabs[this.selectedTabIndex];
|
19598
|
+
const evt = new NavigationExpand(tab._expanded = true, tab);
|
19599
|
+
tab._events$.next(evt);
|
19600
|
+
this._router._events$.next(evt);
|
19601
|
+
if (evt._preventDefault)
|
19602
|
+
return;
|
19543
19603
|
this.swap = this._getHistoryStep();
|
19544
19604
|
this.swapTab = null;
|
19545
19605
|
this.panes.forEach(p => this._destroyPane(p));
|
19546
|
-
const tab = this.tabs[this.selectedTabIndex];
|
19547
19606
|
this.tabs.splice(this.selectedTabIndex, 1);
|
19548
19607
|
this.panes.splice(0, this.panes.length, tab);
|
19549
|
-
tab.
|
19550
|
-
tab._events$.next(new NavigationFullscreen(tab._fullscreen = true, tab));
|
19608
|
+
tab._mode = 'pane';
|
19551
19609
|
this.selectedTabIndex = this.tabs.length ? 0 : -1;
|
19552
|
-
this.
|
19610
|
+
this._syncBrowserHistory();
|
19553
19611
|
}
|
19554
19612
|
select(position) {
|
19555
19613
|
if (this.selectedIndex === position)
|
@@ -19562,18 +19620,21 @@ class SlotsComponent {
|
|
19562
19620
|
}
|
19563
19621
|
this.selectedIndex = position;
|
19564
19622
|
const pane = this.panes[position];
|
19565
|
-
|
19566
|
-
|
19623
|
+
const evt = new NavigationFocus(pane);
|
19624
|
+
pane._events$.next(evt);
|
19625
|
+
this._router._events$.next(evt);
|
19567
19626
|
this._title.set(pane.title);
|
19568
19627
|
}
|
19569
19628
|
removeAt(position) {
|
19570
19629
|
return __awaiter(this, void 0, void 0, function* () {
|
19571
19630
|
const pane = this.panes[position];
|
19631
|
+
if (!this._closing(pane))
|
19632
|
+
return;
|
19572
19633
|
yield this._dismiss(pane);
|
19573
19634
|
this._discardPane(pane);
|
19574
19635
|
if (position >= this.selectedIndex)
|
19575
19636
|
this.select(-1);
|
19576
|
-
this.
|
19637
|
+
this._syncBrowserHistory();
|
19577
19638
|
});
|
19578
19639
|
}
|
19579
19640
|
/**
|
@@ -19622,6 +19683,8 @@ class SlotsComponent {
|
|
19622
19683
|
}
|
19623
19684
|
_clearTabs() {
|
19624
19685
|
return __awaiter(this, void 0, void 0, function* () {
|
19686
|
+
if (!this.tabs.length)
|
19687
|
+
return;
|
19625
19688
|
yield this._dismissAll(this.tabs);
|
19626
19689
|
this.tabs.forEach(t => this._destroyPane(t));
|
19627
19690
|
this.tabs.splice(0, this.tabs.length);
|
@@ -19666,10 +19729,10 @@ class SlotsComponent {
|
|
19666
19729
|
return this._panesContainerRef.element.nativeElement.querySelectorAll('.pane-content');
|
19667
19730
|
}
|
19668
19731
|
done() {
|
19669
|
-
this.
|
19732
|
+
this.enableNavigationArrows();
|
19670
19733
|
this._resize();
|
19671
19734
|
}
|
19672
|
-
|
19735
|
+
enableNavigationArrows(_) {
|
19673
19736
|
const container = this._panesContainerRef.element.nativeElement, scrollLeft = Math.round(container.scrollLeft);
|
19674
19737
|
this.next = this._rtl ? container.clientWidth - scrollLeft < container.scrollWidth :
|
19675
19738
|
scrollLeft + container.clientWidth < container.scrollWidth;
|
@@ -19699,7 +19762,7 @@ class SlotsComponent {
|
|
19699
19762
|
const delta = (e.clientX - event.clientX) * d;
|
19700
19763
|
el.style.width = el.style.minWidth
|
19701
19764
|
= Math.max(width + delta, 350) + 'px';
|
19702
|
-
pane
|
19765
|
+
pane._events$.next(new NavigationResize({}, pane));
|
19703
19766
|
}
|
19704
19767
|
}
|
19705
19768
|
onTabResize(event) {
|
@@ -19714,8 +19777,7 @@ class SlotsComponent {
|
|
19714
19777
|
event.srcElement.classList.remove('resizing');
|
19715
19778
|
document.onmousemove = document.onmouseup = null;
|
19716
19779
|
this.dragging = false;
|
19717
|
-
me.
|
19718
|
-
//this._cd.detectChanges();
|
19780
|
+
me.enableNavigationArrows();
|
19719
19781
|
this._resize();
|
19720
19782
|
};
|
19721
19783
|
function onMouseMove(e) {
|
@@ -19727,7 +19789,9 @@ class SlotsComponent {
|
|
19727
19789
|
}
|
19728
19790
|
_destroyPane(pane) {
|
19729
19791
|
pane._destroy();
|
19730
|
-
|
19792
|
+
const evt = new NavigationEnd(pane);
|
19793
|
+
pane._events$.next(evt);
|
19794
|
+
this._router._events$.next(evt);
|
19731
19795
|
}
|
19732
19796
|
ngOnDestroy() {
|
19733
19797
|
this._destroy.next();
|
@@ -19735,7 +19799,7 @@ class SlotsComponent {
|
|
19735
19799
|
}
|
19736
19800
|
}
|
19737
19801
|
SlotsComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.1", ngImport: i0, type: SlotsComponent, deps: [{ token: PANES_DATA }, { token: SessionService }, { token: i0.ChangeDetectorRef }, { token: PanesRouter }, { token: WindowTitleService }, { token: GuideService }, { token: i0.Injector }], target: i0.ɵɵFactoryTarget.Component });
|
19738
|
-
SlotsComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.3.1", type: SlotsComponent, selector: "bizdoc-panes-outlet", outputs: { dialogChange: "dialogChange" }, host: { listeners: { "document:keydown.escape": "collapse()", "window:resize": "onResize()" } }, viewQueries: [{ propertyName: "_panesContainerRef", first: true, predicate: ["panning"], descendants: true, read: ViewContainerRef, static: true }, { propertyName: "_tabsElement", first: true, predicate: ["tabing"], descendants: true }, { propertyName: "_scrollable", first: true, predicate: CdkScrollable, descendants: true, static: true }], ngImport: i0, template: "<div class=\"panes\">\r\n <div class=\"scroll-arrow\" (click)=\"scrollBy(-400)\" matRipple [matRippleUnbounded]=\"true\" [matRippleCentered]=\"true\" [matRippleColor]=\"accent\"\r\n *ngIf=\"prev\">\r\n <i class=\"material-icons mat-icon-rtl-mirror\">\r\n arrow_back_ios\r\n </i>\r\n </div>\r\n <div class=\"panes-title\" [@title]=\"titleAnimation\">\r\n <h1>\r\n <button mat-icon-button (click)=\"back()\" *ngIf=\"swap\" [bizdocTooltip]=\"'Back'|translate\"><mat-icon class=\"mat-icon-rtl-mirror\">arrow_circle_left</mat-icon></button>\r\n <ng-container *ngFor=\"let p of panes; let first = first\">\r\n <span class=\"breadcrumbs\" *ngIf=\"!first\">\\</span>\r\n {{p.title}}\r\n </ng-container>\r\n <button mat-icon-button (click)=\"guide(panes[0].guide)\" *ngIf=\"panes[0]?.guide\" [bizdocTooltip]=\"'Help'|translate\"><mat-icon>help</mat-icon></button>\r\n </h1>\r\n <span class=\"divider\">\r\n </span>\r\n <bizdoc-quicktools></bizdoc-quicktools>\r\n </div>\r\n <div #panning class=\"panes-container\"\r\n cdkScrollable\r\n @panes\r\n (scroll)=\"
|
19802
|
+
SlotsComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.3.1", type: SlotsComponent, selector: "bizdoc-panes-outlet", outputs: { dialogChange: "dialogChange" }, host: { listeners: { "document:keydown.escape": "collapse()", "window:resize": "onResize()" } }, viewQueries: [{ propertyName: "_panesContainerRef", first: true, predicate: ["panning"], descendants: true, read: ViewContainerRef, static: true }, { propertyName: "_tabsElement", first: true, predicate: ["tabing"], descendants: true }, { propertyName: "_scrollable", first: true, predicate: CdkScrollable, descendants: true, static: true }], ngImport: i0, template: "<div class=\"panes\">\r\n <div class=\"scroll-arrow\" (click)=\"scrollBy(-400)\" matRipple [matRippleUnbounded]=\"true\" [matRippleCentered]=\"true\" [matRippleColor]=\"accent\"\r\n *ngIf=\"prev\">\r\n <i class=\"material-icons mat-icon-rtl-mirror\">\r\n arrow_back_ios\r\n </i>\r\n </div>\r\n <div class=\"panes-title\" [@title]=\"titleAnimation\">\r\n <h1>\r\n <button mat-icon-button (click)=\"back()\" *ngIf=\"swap\" [bizdocTooltip]=\"'Back'|translate\"><mat-icon class=\"mat-icon-rtl-mirror\">arrow_circle_left</mat-icon></button>\r\n <ng-container *ngFor=\"let p of panes; let first = first\">\r\n <span class=\"breadcrumbs\" *ngIf=\"!first\">\\</span>\r\n {{p.title}}\r\n </ng-container>\r\n <button mat-icon-button (click)=\"guide(panes[0].guide)\" *ngIf=\"panes[0]?.guide\" [bizdocTooltip]=\"'Help'|translate\"><mat-icon>help</mat-icon></button>\r\n </h1>\r\n <span class=\"divider\">\r\n </span>\r\n <bizdoc-quicktools></bizdoc-quicktools>\r\n </div>\r\n <div #panning class=\"panes-container\"\r\n cdkScrollable\r\n @panes\r\n (scroll)=\"enableNavigationArrows($event)\">\r\n <ng-container *ngFor=\"let p of panes; let i = index\">\r\n <div (mouseenter)=\"selectedIndex !== i && !dragging && select(i)\"\r\n (click)=\"select(i)\"\r\n [class.active]=\"selectedIndex === i\" class=\"pane-content\" @pane>\r\n <ngx-component-outlet [type]=\"p.component\" [injector]=\"p.injector\" (create)=\"p._instance = $event\"></ngx-component-outlet>\r\n </div>\r\n <div class=\"pane-separator\" *ngIf=\"i < panes.length - 1\" (mousedown)=\"onPaneResize(p, $event)\"> </div>\r\n </ng-container>\r\n </div>\r\n <div class=\"backdrop\" *ngIf=\"dialog\" (click)=\"closeTab(selectedTabIndex)\"></div>\r\n <div class=\"scroll-arrow forward\"\r\n *ngIf=\"next\">\r\n <i class=\"material-icons mat-icon-rtl-mirror\" matRipple [matRippleUnbounded]=\"true\" [matRippleCentered]=\"true\" [matRippleRadius]=\"30\" [matRippleColor]=\"accent\"\r\n (click)=\"scrollBy(400)\">\r\n arrow_forward_ios\r\n </i>\r\n </div>\r\n</div>\r\n<ng-container *ngIf=\"tabs.length\">\r\n <div class=\"tabs-separator\" (mousedown)=\"onTabResize($event)\"> </div>\r\n <div class=\"mat-elevation-z18 tabs\" [@tabs]=\"tabsAnimation\" (@tabs.done)=\"done()\" #tabing>\r\n <div class=\"row tabs-title\">\r\n <button mat-icon-button (click)=\"tabBack()\" *ngIf=\"swapTab\" [bizdocTooltip]=\"prevGroup || ('Back'|translate)\"><mat-icon class=\"mat-icon-rtl-mirror\">arrow_back</mat-icon></button>\r\n <h2>{{group}}</h2>\r\n <button mat-icon-button (click)=\"expandTab()\" [bizdocTooltip]=\"'Expand'| translate\"><mat-icon inline=\"true\" class=\"mat-icon-rtl-mirror\">open_in_full</mat-icon></button>\r\n <!--*ngIf=\"selectedTabIndex <=< -1 && tabs[selectedTabIndex].expandable\"-->\r\n <span class=\"divider\"></span>\r\n <button mat-icon-button (click)=\"collapse()\" bizdocTooltip=\"Esc\"><mat-icon>close</mat-icon></button>\r\n </div>\r\n <nav mat-tab-nav-bar color=\"accent\" [disablePagination]=\"true\">\r\n <a mat-tab-link *ngFor=\"let t of tabs; let i = index\" class=\"mat-tab-link\"\r\n (click)=\"selectedTabIndex = i\"\r\n [active]=\"selectedTabIndex === i\">\r\n <mat-icon [matBadge]=\"t.badge\" [matBadgeHidden]=\"!t.badge\" matBadgeSize=\"small\" matBadgeColor=\"accent\">{{t.icon}}</mat-icon> \r\n {{t.title}}\r\n <mat-icon *ngIf=\"t.dismissable\" (click)=\"closeTab(i)\" class=\"tool\">close</mat-icon>\r\n <!--inline=\"true\"-->\r\n </a>\r\n </nav>\r\n <div *ngFor=\"let t of tabs; let i = index\" [style.display]=\"selectedTabIndex === i ? '': 'none'\" class=\"tab\" [@tab]=\"selectedTabIndex\">\r\n <ngx-component-outlet [type]=\"t.component\" [injector]=\"t.injector\" (create)=\"t._instance = $event\"></ngx-component-outlet>\r\n </div>\r\n </div>\r\n</ng-container>\r\n", styles: [":host{display:flex;flex-direction:row;flex-grow:1;overflow-x:hidden}.panes{flex-grow:1;position:relative;overflow-x:hidden;display:inline-flex;flex-direction:column;flex-basis:100%}.panes .panes-title{display:flex;flex-direction:row;align-items:center;min-width:max-content}.panes .panes-title h1{font-size:xx-large;margin:12px;font-weight:100}.panes .panes-title h1 button{vertical-align:middle}.panes .panes-title h1 .breadcrumbs{font-size:smaller}.panes .scroll-arrow{position:absolute;cursor:pointer;top:50%;z-index:1000}.panes .scroll-arrow i{font-size:50px;opacity:.2}.panes .scroll-arrow i:hover{opacity:.9}.panes .scroll-arrow:last-child{right:0}.panes .panes-container{overflow-x:auto;height:100%;display:flex;flex-direction:row}.panes .panes-container .pane-content{display:block;border-right:1px solid #00000014;height:inherit;border-left-width:1px;border-left-style:double;border-left-color:transparent;flex-grow:1;min-width:420px;overflow-y:auto}.panes .panes-container .pane-content .pane{flex-grow:1}.panes .panes-container .pane-separator{width:8px}.pane-separator,.tabs-separator{cursor:ew-resize;background-repeat:no-repeat;background-position:center;display:table;height:100%;-webkit-user-select:none;user-select:none}.tabs-separator{width:12px}::ng-deep [dir=rtl] .scroll-arrow:last-child{right:unset;left:0}.tabs{display:flex;flex-direction:column;z-index:1;-webkit-flex-grow:0;flex-shrink:1;flex-basis:0}.tabs .tabs-title{align-items:center}.tabs .tabs-title h2{font-size:x-large;margin:9px;font-weight:100}.tabs .tabs-title:hover{opacity:1}.tabs .mat-tab-link .tool{opacity:0}.tabs .mat-tab-link:hover .tool{opacity:1}.tabs .tab{flex-grow:1;overflow-y:auto;overflow-x:hidden;display:flex}\n"], components: [{ type: i7$1.MatButton, selector: "button[mat-button], button[mat-raised-button], button[mat-icon-button], button[mat-fab], button[mat-mini-fab], button[mat-stroked-button], button[mat-flat-button]", inputs: ["disabled", "disableRipple", "color"], exportAs: ["matButton"] }, { type: i8.MatIcon, selector: "mat-icon", inputs: ["color", "inline", "svgIcon", "fontSet", "fontIcon"], exportAs: ["matIcon"] }, { type: QuickToolsComponent, selector: "bizdoc-quicktools" }, { type: i8$3.MatTabNav, selector: "[mat-tab-nav-bar]", inputs: ["color"], exportAs: ["matTabNavBar", "matTabNav"] }], directives: [{ type: i10.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { type: i6.MatRipple, selector: "[mat-ripple], [matRipple]", inputs: ["matRippleColor", "matRippleUnbounded", "matRippleCentered", "matRippleRadius", "matRippleAnimation", "matRippleDisabled", "matRippleTrigger"], exportAs: ["matRipple"] }, { type: TooltipDirective, selector: "[bizdocTooltip]", inputs: ["bizdocTooltip", "bizdocTooltipTemplate", "bizdocTooltipContext", "bizdocTooltipPosition", "bizdocTooltipDuration", "bizdocTooltipDisabled"] }, { type: i10.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { type: i12$2.CdkScrollable, selector: "[cdk-scrollable], [cdkScrollable]" }, { type: NgxComponentOutlet, selector: "ngx-component-outlet", inputs: ["type", "injector", "ngxComponentOutletContent"], outputs: ["create"] }, { type: i8$3.MatTabLink, selector: "[mat-tab-link], [matTabLink]", inputs: ["disabled", "disableRipple", "tabIndex"], exportAs: ["matTabLink"] }, { type: i13.MatBadge, selector: "[matBadge]", inputs: ["matBadgeDisabled", "matBadgeColor", "matBadgeOverlap", "matBadgePosition", "matBadge", "matBadgeDescription", "matBadgeSize", "matBadgeHidden"] }], pipes: { "translate": TranslatePipe }, animations: [panesAnimation,
|
19739
19803
|
panesTitleAnimation,
|
19740
19804
|
paneAnimation,
|
19741
19805
|
paramAnimation,
|
@@ -19752,7 +19816,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.1", ngImpor
|
|
19752
19816
|
queryAnimation,
|
19753
19817
|
tabsAnimation,
|
19754
19818
|
tabAnimation
|
19755
|
-
], template: "<div class=\"panes\">\r\n <div class=\"scroll-arrow\" (click)=\"scrollBy(-400)\" matRipple [matRippleUnbounded]=\"true\" [matRippleCentered]=\"true\" [matRippleColor]=\"accent\"\r\n *ngIf=\"prev\">\r\n <i class=\"material-icons mat-icon-rtl-mirror\">\r\n arrow_back_ios\r\n </i>\r\n </div>\r\n <div class=\"panes-title\" [@title]=\"titleAnimation\">\r\n <h1>\r\n <button mat-icon-button (click)=\"back()\" *ngIf=\"swap\" [bizdocTooltip]=\"'Back'|translate\"><mat-icon class=\"mat-icon-rtl-mirror\">arrow_circle_left</mat-icon></button>\r\n <ng-container *ngFor=\"let p of panes; let first = first\">\r\n <span class=\"breadcrumbs\" *ngIf=\"!first\">\\</span>\r\n {{p.title}}\r\n </ng-container>\r\n <button mat-icon-button (click)=\"guide(panes[0].guide)\" *ngIf=\"panes[0]?.guide\" [bizdocTooltip]=\"'Help'|translate\"><mat-icon>help</mat-icon></button>\r\n </h1>\r\n <span class=\"divider\">\r\n </span>\r\n <bizdoc-quicktools></bizdoc-quicktools>\r\n </div>\r\n <div #panning class=\"panes-container\"\r\n cdkScrollable\r\n @panes\r\n (scroll)=\"
|
19819
|
+
], template: "<div class=\"panes\">\r\n <div class=\"scroll-arrow\" (click)=\"scrollBy(-400)\" matRipple [matRippleUnbounded]=\"true\" [matRippleCentered]=\"true\" [matRippleColor]=\"accent\"\r\n *ngIf=\"prev\">\r\n <i class=\"material-icons mat-icon-rtl-mirror\">\r\n arrow_back_ios\r\n </i>\r\n </div>\r\n <div class=\"panes-title\" [@title]=\"titleAnimation\">\r\n <h1>\r\n <button mat-icon-button (click)=\"back()\" *ngIf=\"swap\" [bizdocTooltip]=\"'Back'|translate\"><mat-icon class=\"mat-icon-rtl-mirror\">arrow_circle_left</mat-icon></button>\r\n <ng-container *ngFor=\"let p of panes; let first = first\">\r\n <span class=\"breadcrumbs\" *ngIf=\"!first\">\\</span>\r\n {{p.title}}\r\n </ng-container>\r\n <button mat-icon-button (click)=\"guide(panes[0].guide)\" *ngIf=\"panes[0]?.guide\" [bizdocTooltip]=\"'Help'|translate\"><mat-icon>help</mat-icon></button>\r\n </h1>\r\n <span class=\"divider\">\r\n </span>\r\n <bizdoc-quicktools></bizdoc-quicktools>\r\n </div>\r\n <div #panning class=\"panes-container\"\r\n cdkScrollable\r\n @panes\r\n (scroll)=\"enableNavigationArrows($event)\">\r\n <ng-container *ngFor=\"let p of panes; let i = index\">\r\n <div (mouseenter)=\"selectedIndex !== i && !dragging && select(i)\"\r\n (click)=\"select(i)\"\r\n [class.active]=\"selectedIndex === i\" class=\"pane-content\" @pane>\r\n <ngx-component-outlet [type]=\"p.component\" [injector]=\"p.injector\" (create)=\"p._instance = $event\"></ngx-component-outlet>\r\n </div>\r\n <div class=\"pane-separator\" *ngIf=\"i < panes.length - 1\" (mousedown)=\"onPaneResize(p, $event)\"> </div>\r\n </ng-container>\r\n </div>\r\n <div class=\"backdrop\" *ngIf=\"dialog\" (click)=\"closeTab(selectedTabIndex)\"></div>\r\n <div class=\"scroll-arrow forward\"\r\n *ngIf=\"next\">\r\n <i class=\"material-icons mat-icon-rtl-mirror\" matRipple [matRippleUnbounded]=\"true\" [matRippleCentered]=\"true\" [matRippleRadius]=\"30\" [matRippleColor]=\"accent\"\r\n (click)=\"scrollBy(400)\">\r\n arrow_forward_ios\r\n </i>\r\n </div>\r\n</div>\r\n<ng-container *ngIf=\"tabs.length\">\r\n <div class=\"tabs-separator\" (mousedown)=\"onTabResize($event)\"> </div>\r\n <div class=\"mat-elevation-z18 tabs\" [@tabs]=\"tabsAnimation\" (@tabs.done)=\"done()\" #tabing>\r\n <div class=\"row tabs-title\">\r\n <button mat-icon-button (click)=\"tabBack()\" *ngIf=\"swapTab\" [bizdocTooltip]=\"prevGroup || ('Back'|translate)\"><mat-icon class=\"mat-icon-rtl-mirror\">arrow_back</mat-icon></button>\r\n <h2>{{group}}</h2>\r\n <button mat-icon-button (click)=\"expandTab()\" [bizdocTooltip]=\"'Expand'| translate\"><mat-icon inline=\"true\" class=\"mat-icon-rtl-mirror\">open_in_full</mat-icon></button>\r\n <!--*ngIf=\"selectedTabIndex <=< -1 && tabs[selectedTabIndex].expandable\"-->\r\n <span class=\"divider\"></span>\r\n <button mat-icon-button (click)=\"collapse()\" bizdocTooltip=\"Esc\"><mat-icon>close</mat-icon></button>\r\n </div>\r\n <nav mat-tab-nav-bar color=\"accent\" [disablePagination]=\"true\">\r\n <a mat-tab-link *ngFor=\"let t of tabs; let i = index\" class=\"mat-tab-link\"\r\n (click)=\"selectedTabIndex = i\"\r\n [active]=\"selectedTabIndex === i\">\r\n <mat-icon [matBadge]=\"t.badge\" [matBadgeHidden]=\"!t.badge\" matBadgeSize=\"small\" matBadgeColor=\"accent\">{{t.icon}}</mat-icon> \r\n {{t.title}}\r\n <mat-icon *ngIf=\"t.dismissable\" (click)=\"closeTab(i)\" class=\"tool\">close</mat-icon>\r\n <!--inline=\"true\"-->\r\n </a>\r\n </nav>\r\n <div *ngFor=\"let t of tabs; let i = index\" [style.display]=\"selectedTabIndex === i ? '': 'none'\" class=\"tab\" [@tab]=\"selectedTabIndex\">\r\n <ngx-component-outlet [type]=\"t.component\" [injector]=\"t.injector\" (create)=\"t._instance = $event\"></ngx-component-outlet>\r\n </div>\r\n </div>\r\n</ng-container>\r\n", styles: [":host{display:flex;flex-direction:row;flex-grow:1;overflow-x:hidden}.panes{flex-grow:1;position:relative;overflow-x:hidden;display:inline-flex;flex-direction:column;flex-basis:100%}.panes .panes-title{display:flex;flex-direction:row;align-items:center;min-width:max-content}.panes .panes-title h1{font-size:xx-large;margin:12px;font-weight:100}.panes .panes-title h1 button{vertical-align:middle}.panes .panes-title h1 .breadcrumbs{font-size:smaller}.panes .scroll-arrow{position:absolute;cursor:pointer;top:50%;z-index:1000}.panes .scroll-arrow i{font-size:50px;opacity:.2}.panes .scroll-arrow i:hover{opacity:.9}.panes .scroll-arrow:last-child{right:0}.panes .panes-container{overflow-x:auto;height:100%;display:flex;flex-direction:row}.panes .panes-container .pane-content{display:block;border-right:1px solid #00000014;height:inherit;border-left-width:1px;border-left-style:double;border-left-color:transparent;flex-grow:1;min-width:420px;overflow-y:auto}.panes .panes-container .pane-content .pane{flex-grow:1}.panes .panes-container .pane-separator{width:8px}.pane-separator,.tabs-separator{cursor:ew-resize;background-repeat:no-repeat;background-position:center;display:table;height:100%;-webkit-user-select:none;user-select:none}.tabs-separator{width:12px}::ng-deep [dir=rtl] .scroll-arrow:last-child{right:unset;left:0}.tabs{display:flex;flex-direction:column;z-index:1;-webkit-flex-grow:0;flex-shrink:1;flex-basis:0}.tabs .tabs-title{align-items:center}.tabs .tabs-title h2{font-size:x-large;margin:9px;font-weight:100}.tabs .tabs-title:hover{opacity:1}.tabs .mat-tab-link .tool{opacity:0}.tabs .mat-tab-link:hover .tool{opacity:1}.tabs .tab{flex-grow:1;overflow-y:auto;overflow-x:hidden;display:flex}\n"] }]
|
19756
19820
|
}], ctorParameters: function () {
|
19757
19821
|
return [{ type: undefined, decorators: [{
|
19758
19822
|
type: Inject,
|
@@ -20178,7 +20242,7 @@ class HomeMobileComponent extends HomeBase {
|
|
20178
20242
|
}
|
20179
20243
|
}
|
20180
20244
|
HomeMobileComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.1", ngImport: i0, type: HomeMobileComponent, deps: [{ token: i0.Injector }, { token: i1$6.Router }, { token: i2$5.MatBottomSheet }, { token: i7$2.Directionality }, { token: SessionService }, { token: Popup }, { token: HubService }, { token: TranslateService }, { token: i8$2.MatSnackBar }, { token: ChatInfo }, { token: BIZDOC_CONFIG }], target: i0.ɵɵFactoryTarget.Component });
|
20181
|
-
HomeMobileComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.3.1", type: HomeMobileComponent, selector: "bizdoc-mobile-home", viewQueries: [{ propertyName: "menuDrawer", first: true, predicate: MatSidenav, descendants: true, static: true }, { propertyName: "secondaryDrawer", first: true, predicate: ["secondaryDrawer"], descendants: true, static: true }], usesInheritance: true, ngImport: i0, template: "<mat-toolbar color=\"primary\" [class.loading]=\"loading\">\r\n <button mat-icon-button (click)='menuDrawer.toggle()' [bizdocTooltip]=\"'Menu' | translate\" [attr.aria-label]=\"'Menu' | translate\"><mat-icon>menu</mat-icon></button>\r\n <div [routerLink]='[\"/dashboard\"]' matRipple [matRippleUnbounded]=\"true\" [matRippleRadius]=\"100\" [matRippleCentered]=\"true\" style=\"outline: none\">\r\n <img id=\"logo\" src=\"logo.svg\" alt=\"\" />\r\n </div>\r\n <span class=\"divider\"></span>\r\n <button mat-icon-button (click)=\"notifs()\" data-help=\"notifications\" [attr.aria-label]=\"'Notifications' | translate\" [bizdocTooltip]=\"'Notifications' | translate\"><mat-icon [matBadge]=\"profile.notificationsCount\" [matBadgeHidden]=\"!profile.notificationsCount\" matBadgeColor=\"accent\">notifications</mat-icon></button>\r\n <button mat-icon-button *ngIf='chatEnabled' (click)=\"chat()\" data-help=\"chat\" [attr.aria-label]=\"'Chat' | translate\" [bizdocTooltip]=\"'Chat' | translate\"><mat-icon [matBadge]=\"profile.conversationsCount\" [matBadgeHidden]=\"!profile.conversationsCount\" matBadgeColor=\"accent\">chat</mat-icon></button>\r\n</mat-toolbar>\r\n<mat-sidenav-container autosize>\r\n <mat-sidenav #menuDrawer data-help=\"menu\" mode=\"over\" closed class=\"mat-elevation-z5\">\r\n <mat-nav-list>\r\n <mat-list-item [routerLink]='[\"/dashboard\"]' [attr.aria-label]=\"'Dashboard' | translate\" routerLinkActive=\"active\" data-help=\"dashboard\">\r\n <mat-icon matListIcon>apps</mat-icon><span>{{'Dashboard' | translate}}</span>\r\n </mat-list-item>\r\n <mat-expansion-panel class=\"mat-elevation-z0\" [attr.aria-label]=\"'Mailbox' | translate\" data-help=\"folders\">\r\n <mat-expansion-panel-header>\r\n <mat-panel-title>\r\n <mat-icon>inbox</mat-icon>\r\n <span>{{'Mailbox' | translate}}</span>\r\n </mat-panel-title>\r\n </mat-expansion-panel-header>\r\n <mat-list-item *ngFor=\"let f of profile.folders\" [routerLink]='[\"/mailbox/f\", f.name]' routerLinkActive=\"active\" [attr.data-help]=\"'folder-'+f.name\" [attr.aria-label]=\"f.title\">\r\n <mat-icon matListIcon>{{f.icon}}</mat-icon><span>{{f.title}}</span>\r\n </mat-list-item>\r\n </mat-expansion-panel>\r\n <mat-list-item [routerLink]='[\"/schedule\"]' routerLinkActive=\"active\" *ngIf=\"schedulerEnabled\" [attr.aria-label]=\"'Scheduler' | translate\">\r\n <mat-icon matListIcon class=\"mat-icon-rtl-mirror\">date_range</mat-icon><span>{{ 'Schedule' | translate}}</span>\r\n </mat-list-item>\r\n <mat-divider></mat-divider>\r\n <ng-container *ngIf=\"enableAnalysis\">\r\n <ng-container *ngFor=\"let c of profile.cubes\">\r\n <mat-expansion-panel class=\"mat-elevation-z0\" *ngIf=\"c.views.length\">\r\n <mat-expansion-panel-header>\r\n <mat-panel-title>\r\n <mat-icon>{{ c.icon || 'insert_chart_outlined'}}</mat-icon>\r\n <span>{{c.title}}</span>\r\n </mat-panel-title>\r\n </mat-expansion-panel-header>\r\n <mat-list-item *ngFor=\"let v of c.views\" [routerLink]='[\"/cube\", c.name, \"v\", v.name]' routerLinkActive=\"active\" [attr.data-help]=\"'cube-view-'+v.name\">\r\n <mat-icon matListIcon>{{v.icon || 'insights'}}</mat-icon><span>{{v.title}}</span>\r\n </mat-list-item>\r\n </mat-expansion-panel>\r\n </ng-container>\r\n </ng-container>\r\n <mat-expansion-panel *ngIf=\"profile.reports.length\" class=\"mat-elevation-z0\" [attr.aria-label]=\"'Reports' | translate\">\r\n <mat-expansion-panel-header>\r\n <mat-panel-title>\r\n <mat-icon>list_alt</mat-icon>\r\n <span>{{'Reports' | translate}}</span>\r\n </mat-panel-title>\r\n </mat-expansion-panel-header>\r\n <mat-list-item *ngFor=\"let r of profile.reports\" [routerLink]='[\"/reports\", r.name]' routerLinkActive=\"active\"\r\n [attr.aria-label]=\"r.title\" [attr.data-help]=\"'report-'+r.name\">\r\n <mat-icon matListIcon>{{r.icon}}</mat-icon><span>{{r.title}}</span>\r\n </mat-list-item>\r\n </mat-expansion-panel>\r\n <mat-divider></mat-divider>\r\n <mat-list-item role=\"listitem\" data-help=\"options\"\r\n (click)=\"options($event)\">\r\n <mat-icon matListIcon>settingson</mat-icon>\r\n <span>{{'Settings' | translate}}</span>\r\n </mat-list-item>\r\n <mat-divider></mat-divider>\r\n <mat-list-item role=\"listitem\" (click)=\"signout($event)\">\r\n <mat-icon matListIcon>logout</mat-icon>\r\n <span>{{'Power' | translate}}</span>\r\n </mat-list-item>\r\n </mat-nav-list>\r\n </mat-sidenav>\r\n <mat-sidenav #secondaryDrawer position=\"end\" closed mode=\"over\" autoFocus=\"false\" class=\"mat-elevation-z3\">\r\n <ng-container [ngSwitch]=\"mode\">\r\n <bizdoc-chat [(contact)]=\"contact\" *ngSwitchCase=\"'chat'\"></bizdoc-chat>\r\n <bizdoc-notifications-table *ngSwitchCase=\"'notifications'\"></bizdoc-notifications-table>\r\n </ng-container>\r\n </mat-sidenav>\r\n <mat-sidenav-content data-help=\"main\">\r\n <router-outlet></router-outlet>\r\n </mat-sidenav-content>\r\n</mat-sidenav-container>\r\n<button mat-fab [attr.aria-label]=\"'Compose'| translate\" [@fabFull]=\"composeState\" *ngIf=\"composeEnabled\" color=\"accent\" (click)=\"compose()\" data-help=\"compose\"><mat-icon>add</mat-icon></button>\r\n", styles: ["#logo{padding-left:12px;padding-right:12px;vertical-align:middle;width:120px;filter:invert(1)}:host ::ng-deep .mat-sidenav-container{height:calc(100% - 58px)}:host ::ng-deep .mat-sidenav-container .home-content{padding:unset}::ng-deep .mat-drawer-inner-container{height:auto}router-outlet~*{position:absolute;height:100%;width:100%}::ng-deep [dir=rtl] .mat-fab{left:30px;right:unset}.mat-fab{z-index:1;position:absolute;bottom:30px;right:30px}:host ::ng-deep .mat-expansion-panel-header{padding:0 18px}:host ::ng-deep .mat-expansion-panel-header .mat-expansion-panel-header-title .mat-icon{padding:0 3px}\n"], components: [{ type: i7$3.MatToolbar, selector: "mat-toolbar", inputs: ["color"], exportAs: ["matToolbar"] }, { 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: i9$4.MatSidenavContainer, selector: "mat-sidenav-container", exportAs: ["matSidenavContainer"] }, { type: i9$4.MatSidenav, selector: "mat-sidenav", inputs: ["fixedInViewport", "fixedTopGap", "fixedBottomGap"], exportAs: ["matSidenav"] }, { type: i2$3.MatNavList, selector: "mat-nav-list", inputs: ["disableRipple", "disabled"], exportAs: ["matNavList"] }, { type: i2$3.MatListItem, selector: "mat-list-item, a[mat-list-item], button[mat-list-item]", inputs: ["disableRipple", "disabled"], exportAs: ["matListItem"] }, { 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: i12$1.MatDivider, selector: "mat-divider", inputs: ["vertical", "inset"] }, { type: ChatComponent, selector: "bizdoc-chat", inputs: ["contact"], outputs: ["contactChange"] }, { type: NotificationsTableComponent, selector: "bizdoc-notifications-table" }, { type: i9$4.MatSidenavContent, selector: "mat-sidenav-content" }], directives: [{ type: TooltipDirective, selector: "[bizdocTooltip]", inputs: ["bizdocTooltip", "bizdocTooltipTemplate", "bizdocTooltipContext", "bizdocTooltipPosition", "bizdocTooltipDuration", "bizdocTooltipDisabled"] }, { type: i6.MatRipple, selector: "[mat-ripple], [matRipple]", inputs: ["matRippleColor", "matRippleUnbounded", "matRippleCentered", "matRippleRadius", "matRippleAnimation", "matRippleDisabled", "matRippleTrigger"], exportAs: ["matRipple"] }, { type: i1$6.RouterLink, selector: ":not(a):not(area)[routerLink]", inputs: ["queryParams", "fragment", "queryParamsHandling", "preserveFragment", "skipLocationChange", "replaceUrl", "state", "relativeTo", "routerLink"] }, { type: i13.MatBadge, selector: "[matBadge]", inputs: ["matBadgeDisabled", "matBadgeColor", "matBadgeOverlap", "matBadgePosition", "matBadge", "matBadgeDescription", "matBadgeSize", "matBadgeHidden"] }, { type: i10.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { type: i1$6.RouterLinkActive, selector: "[routerLinkActive]", inputs: ["routerLinkActiveOptions", "routerLinkActive"], outputs: ["isActiveChange"], exportAs: ["routerLinkActive"] }, { type: i2$3.MatListIconCssMatStyler, selector: "[mat-list-icon], [matListIcon]" }, { type: i6$3.MatExpansionPanelTitle, selector: "mat-panel-title" }, { type: i10.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { type: i10.NgSwitch, selector: "[ngSwitch]", inputs: ["ngSwitch"] }, { type: i10.NgSwitchCase, selector: "[ngSwitchCase]", inputs: ["ngSwitchCase"] }, { type: i1$6.RouterOutlet, selector: "router-outlet", outputs: ["activate", "deactivate", "attach", "detach"], exportAs: ["outlet"] }], pipes: { "translate": TranslatePipe }, animations: [fabAnimation] });
|
20245
|
+
HomeMobileComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.3.1", type: HomeMobileComponent, selector: "bizdoc-mobile-home", viewQueries: [{ propertyName: "menuDrawer", first: true, predicate: MatSidenav, descendants: true, static: true }, { propertyName: "secondaryDrawer", first: true, predicate: ["secondaryDrawer"], descendants: true, static: true }], usesInheritance: true, ngImport: i0, template: "<mat-toolbar color=\"primary\" [class.loading]=\"loading\">\r\n <button mat-icon-button (click)='menuDrawer.toggle()' [bizdocTooltip]=\"'Menu' | translate\" [attr.aria-label]=\"'Menu' | translate\"><mat-icon>menu</mat-icon></button>\r\n <div [routerLink]='[\"/dashboard\"]' matRipple [matRippleUnbounded]=\"true\" [matRippleRadius]=\"100\" [matRippleCentered]=\"true\" style=\"outline: none\">\r\n <img id=\"logo\" src=\"logo.svg\" alt=\"\" />\r\n </div>\r\n <span class=\"divider\"></span>\r\n <button mat-icon-button (click)=\"notifs()\" data-help=\"notifications\" [attr.aria-label]=\"'Notifications' | translate\" [bizdocTooltip]=\"'Notifications' | translate\"><mat-icon [matBadge]=\"profile.notificationsCount\" [matBadgeHidden]=\"!profile.notificationsCount\" matBadgeColor=\"accent\">notifications</mat-icon></button>\r\n <button mat-icon-button *ngIf='chatEnabled' (click)=\"chat()\" data-help=\"chat\" [attr.aria-label]=\"'Chat' | translate\" [bizdocTooltip]=\"'Chat' | translate\"><mat-icon [matBadge]=\"profile.conversationsCount\" [matBadgeHidden]=\"!profile.conversationsCount\" matBadgeColor=\"accent\">chat</mat-icon></button>\r\n</mat-toolbar>\r\n<mat-sidenav-container autosize>\r\n <mat-sidenav #menuDrawer data-help=\"menu\" mode=\"over\" closed class=\"mat-elevation-z5\">\r\n <mat-nav-list>\r\n <mat-list-item [routerLink]='[\"/dashboard\"]' [attr.aria-label]=\"'Dashboard' | translate\" routerLinkActive=\"active\" data-help=\"dashboard\">\r\n <mat-icon matListIcon>apps</mat-icon><span>{{'Dashboard' | translate}}</span>\r\n </mat-list-item>\r\n <mat-expansion-panel class=\"mat-elevation-z0\" [attr.aria-label]=\"'Mailbox' | translate\" data-help=\"folders\">\r\n <mat-expansion-panel-header>\r\n <mat-panel-title>\r\n <mat-icon>inbox</mat-icon>\r\n <span>{{'Mailbox' | translate}}</span>\r\n </mat-panel-title>\r\n </mat-expansion-panel-header>\r\n <mat-list-item *ngFor=\"let f of profile.folders\" [routerLink]='[\"/mailbox/f\", f.name]' routerLinkActive=\"active\" [attr.data-help]=\"'folder-'+f.name\" [attr.aria-label]=\"f.title\">\r\n <mat-icon matListIcon>{{f.icon}}</mat-icon><span>{{f.title}}</span>\r\n </mat-list-item>\r\n </mat-expansion-panel>\r\n <mat-list-item [routerLink]='[\"/schedule\"]' routerLinkActive=\"active\" *ngIf=\"schedulerEnabled\" [attr.aria-label]=\"'Scheduler' | translate\">\r\n <mat-icon matListIcon class=\"mat-icon-rtl-mirror\">date_range</mat-icon><span>{{ 'Schedule' | translate}}</span>\r\n </mat-list-item>\r\n <mat-divider></mat-divider>\r\n <ng-container *ngIf=\"enableAnalysis\">\r\n <ng-container *ngFor=\"let c of profile.cubes\">\r\n <mat-expansion-panel class=\"mat-elevation-z0\" *ngIf=\"c.views.length\">\r\n <mat-expansion-panel-header>\r\n <mat-panel-title>\r\n <mat-icon>{{ c.icon || 'insert_chart_outlined'}}</mat-icon>\r\n <span>{{c.title}}</span>\r\n </mat-panel-title>\r\n </mat-expansion-panel-header>\r\n <mat-list-item *ngFor=\"let v of c.views\" [routerLink]='[\"/cube\", c.name, \"v\", v.name]' routerLinkActive=\"active\" [attr.data-help]=\"'cube-view-'+v.name\">\r\n <mat-icon matListIcon>{{v.icon || 'insights'}}</mat-icon><span>{{v.title}}</span>\r\n </mat-list-item>\r\n </mat-expansion-panel>\r\n </ng-container>\r\n </ng-container>\r\n <mat-expansion-panel *ngIf=\"profile.reports.length\" class=\"mat-elevation-z0\" [attr.aria-label]=\"'Reports' | translate\">\r\n <mat-expansion-panel-header>\r\n <mat-panel-title>\r\n <mat-icon>list_alt</mat-icon>\r\n <span>{{'Reports' | translate}}</span>\r\n </mat-panel-title>\r\n </mat-expansion-panel-header>\r\n <mat-list-item *ngFor=\"let r of profile.reports\" [routerLink]='[\"/reports\", r.name]' routerLinkActive=\"active\"\r\n [attr.aria-label]=\"r.title\" [attr.data-help]=\"'report-'+r.name\">\r\n <mat-icon matListIcon>{{r.icon}}</mat-icon><span>{{r.title}}</span>\r\n </mat-list-item>\r\n </mat-expansion-panel>\r\n <mat-divider></mat-divider>\r\n <mat-list-item role=\"listitem\" data-help=\"options\"\r\n (click)=\"options($event)\">\r\n <mat-icon matListIcon>settingson</mat-icon>\r\n <span>{{'Settings' | translate}}</span>\r\n </mat-list-item>\r\n <mat-divider></mat-divider>\r\n <mat-list-item role=\"listitem\" (click)=\"signout($event)\">\r\n <mat-icon matListIcon>logout</mat-icon>\r\n <span>{{'Power' | translate}}</span>\r\n </mat-list-item>\r\n </mat-nav-list>\r\n </mat-sidenav>\r\n <mat-sidenav #secondaryDrawer position=\"end\" closed mode=\"over\" autoFocus=\"false\" class=\"mat-elevation-z3\">\r\n <ng-container [ngSwitch]=\"mode\">\r\n <bizdoc-chat [(contact)]=\"contact\" *ngSwitchCase=\"'chat'\"></bizdoc-chat>\r\n <bizdoc-notifications-table *ngSwitchCase=\"'notifications'\"></bizdoc-notifications-table>\r\n </ng-container>\r\n </mat-sidenav>\r\n <mat-sidenav-content data-help=\"main\">\r\n <router-outlet></router-outlet>\r\n </mat-sidenav-content>\r\n</mat-sidenav-container>\r\n<button mat-fab [attr.aria-label]=\"'Compose'| translate\" [@fabFull]=\"composeState\" *ngIf=\"composeEnabled\" color=\"accent\" (click)=\"compose()\" data-help=\"compose\"><mat-icon>add</mat-icon></button>\r\n", styles: ["#logo{padding-left:12px;padding-right:12px;vertical-align:middle;width:120px;filter:invert(1)}:host ::ng-deep .mat-sidenav-container{height:calc(100% - 58px)}:host ::ng-deep .mat-sidenav-container .home-content{padding:unset}::ng-deep .mat-drawer-inner-container{height:auto}router-outlet~*{position:absolute;height:100%;width:100%}::ng-deep [dir=rtl] .mat-fab{left:30px;right:unset}.mat-fab{z-index:1;position:absolute;bottom:30px;right:30px}:host ::ng-deep .mat-expansion-panel-header{padding:0 18px}:host ::ng-deep .mat-expansion-panel-header .mat-expansion-panel-header-title .mat-icon{padding:0 3px}\n"], components: [{ type: i7$3.MatToolbar, selector: "mat-toolbar", inputs: ["color"], exportAs: ["matToolbar"] }, { 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: i9$4.MatSidenavContainer, selector: "mat-sidenav-container", exportAs: ["matSidenavContainer"] }, { type: i9$4.MatSidenav, selector: "mat-sidenav", inputs: ["fixedInViewport", "fixedTopGap", "fixedBottomGap"], exportAs: ["matSidenav"] }, { type: i2$3.MatNavList, selector: "mat-nav-list", inputs: ["disableRipple", "disabled"], exportAs: ["matNavList"] }, { type: i2$3.MatListItem, selector: "mat-list-item, a[mat-list-item], button[mat-list-item]", inputs: ["disableRipple", "disabled"], exportAs: ["matListItem"] }, { type: i6$2.MatExpansionPanel, selector: "mat-expansion-panel", inputs: ["disabled", "expanded", "hideToggle", "togglePosition"], outputs: ["opened", "closed", "expandedChange", "afterExpand", "afterCollapse"], exportAs: ["matExpansionPanel"] }, { type: i6$2.MatExpansionPanelHeader, selector: "mat-expansion-panel-header", inputs: ["tabIndex", "expandedHeight", "collapsedHeight"] }, { type: i12$1.MatDivider, selector: "mat-divider", inputs: ["vertical", "inset"] }, { type: ChatComponent, selector: "bizdoc-chat", inputs: ["contact"], outputs: ["contactChange"] }, { type: NotificationsTableComponent, selector: "bizdoc-notifications-table" }, { type: i9$4.MatSidenavContent, selector: "mat-sidenav-content" }], directives: [{ type: TooltipDirective, selector: "[bizdocTooltip]", inputs: ["bizdocTooltip", "bizdocTooltipTemplate", "bizdocTooltipContext", "bizdocTooltipPosition", "bizdocTooltipDuration", "bizdocTooltipDisabled"] }, { type: i6.MatRipple, selector: "[mat-ripple], [matRipple]", inputs: ["matRippleColor", "matRippleUnbounded", "matRippleCentered", "matRippleRadius", "matRippleAnimation", "matRippleDisabled", "matRippleTrigger"], exportAs: ["matRipple"] }, { type: i1$6.RouterLink, selector: ":not(a):not(area)[routerLink]", inputs: ["queryParams", "fragment", "queryParamsHandling", "preserveFragment", "skipLocationChange", "replaceUrl", "state", "relativeTo", "routerLink"] }, { type: i13.MatBadge, selector: "[matBadge]", inputs: ["matBadgeDisabled", "matBadgeColor", "matBadgeOverlap", "matBadgePosition", "matBadge", "matBadgeDescription", "matBadgeSize", "matBadgeHidden"] }, { type: i10.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { type: i1$6.RouterLinkActive, selector: "[routerLinkActive]", inputs: ["routerLinkActiveOptions", "routerLinkActive"], outputs: ["isActiveChange"], exportAs: ["routerLinkActive"] }, { type: i2$3.MatListIconCssMatStyler, selector: "[mat-list-icon], [matListIcon]" }, { type: i6$2.MatExpansionPanelTitle, selector: "mat-panel-title" }, { type: i10.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { type: i10.NgSwitch, selector: "[ngSwitch]", inputs: ["ngSwitch"] }, { type: i10.NgSwitchCase, selector: "[ngSwitchCase]", inputs: ["ngSwitchCase"] }, { type: i1$6.RouterOutlet, selector: "router-outlet", outputs: ["activate", "deactivate", "attach", "detach"], exportAs: ["outlet"] }], pipes: { "translate": TranslatePipe }, animations: [fabAnimation] });
|
20182
20246
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.1", ngImport: i0, type: HomeMobileComponent, decorators: [{
|
20183
20247
|
type: Component,
|
20184
20248
|
args: [{ selector: 'bizdoc-mobile-home', animations: [fabAnimation], template: "<mat-toolbar color=\"primary\" [class.loading]=\"loading\">\r\n <button mat-icon-button (click)='menuDrawer.toggle()' [bizdocTooltip]=\"'Menu' | translate\" [attr.aria-label]=\"'Menu' | translate\"><mat-icon>menu</mat-icon></button>\r\n <div [routerLink]='[\"/dashboard\"]' matRipple [matRippleUnbounded]=\"true\" [matRippleRadius]=\"100\" [matRippleCentered]=\"true\" style=\"outline: none\">\r\n <img id=\"logo\" src=\"logo.svg\" alt=\"\" />\r\n </div>\r\n <span class=\"divider\"></span>\r\n <button mat-icon-button (click)=\"notifs()\" data-help=\"notifications\" [attr.aria-label]=\"'Notifications' | translate\" [bizdocTooltip]=\"'Notifications' | translate\"><mat-icon [matBadge]=\"profile.notificationsCount\" [matBadgeHidden]=\"!profile.notificationsCount\" matBadgeColor=\"accent\">notifications</mat-icon></button>\r\n <button mat-icon-button *ngIf='chatEnabled' (click)=\"chat()\" data-help=\"chat\" [attr.aria-label]=\"'Chat' | translate\" [bizdocTooltip]=\"'Chat' | translate\"><mat-icon [matBadge]=\"profile.conversationsCount\" [matBadgeHidden]=\"!profile.conversationsCount\" matBadgeColor=\"accent\">chat</mat-icon></button>\r\n</mat-toolbar>\r\n<mat-sidenav-container autosize>\r\n <mat-sidenav #menuDrawer data-help=\"menu\" mode=\"over\" closed class=\"mat-elevation-z5\">\r\n <mat-nav-list>\r\n <mat-list-item [routerLink]='[\"/dashboard\"]' [attr.aria-label]=\"'Dashboard' | translate\" routerLinkActive=\"active\" data-help=\"dashboard\">\r\n <mat-icon matListIcon>apps</mat-icon><span>{{'Dashboard' | translate}}</span>\r\n </mat-list-item>\r\n <mat-expansion-panel class=\"mat-elevation-z0\" [attr.aria-label]=\"'Mailbox' | translate\" data-help=\"folders\">\r\n <mat-expansion-panel-header>\r\n <mat-panel-title>\r\n <mat-icon>inbox</mat-icon>\r\n <span>{{'Mailbox' | translate}}</span>\r\n </mat-panel-title>\r\n </mat-expansion-panel-header>\r\n <mat-list-item *ngFor=\"let f of profile.folders\" [routerLink]='[\"/mailbox/f\", f.name]' routerLinkActive=\"active\" [attr.data-help]=\"'folder-'+f.name\" [attr.aria-label]=\"f.title\">\r\n <mat-icon matListIcon>{{f.icon}}</mat-icon><span>{{f.title}}</span>\r\n </mat-list-item>\r\n </mat-expansion-panel>\r\n <mat-list-item [routerLink]='[\"/schedule\"]' routerLinkActive=\"active\" *ngIf=\"schedulerEnabled\" [attr.aria-label]=\"'Scheduler' | translate\">\r\n <mat-icon matListIcon class=\"mat-icon-rtl-mirror\">date_range</mat-icon><span>{{ 'Schedule' | translate}}</span>\r\n </mat-list-item>\r\n <mat-divider></mat-divider>\r\n <ng-container *ngIf=\"enableAnalysis\">\r\n <ng-container *ngFor=\"let c of profile.cubes\">\r\n <mat-expansion-panel class=\"mat-elevation-z0\" *ngIf=\"c.views.length\">\r\n <mat-expansion-panel-header>\r\n <mat-panel-title>\r\n <mat-icon>{{ c.icon || 'insert_chart_outlined'}}</mat-icon>\r\n <span>{{c.title}}</span>\r\n </mat-panel-title>\r\n </mat-expansion-panel-header>\r\n <mat-list-item *ngFor=\"let v of c.views\" [routerLink]='[\"/cube\", c.name, \"v\", v.name]' routerLinkActive=\"active\" [attr.data-help]=\"'cube-view-'+v.name\">\r\n <mat-icon matListIcon>{{v.icon || 'insights'}}</mat-icon><span>{{v.title}}</span>\r\n </mat-list-item>\r\n </mat-expansion-panel>\r\n </ng-container>\r\n </ng-container>\r\n <mat-expansion-panel *ngIf=\"profile.reports.length\" class=\"mat-elevation-z0\" [attr.aria-label]=\"'Reports' | translate\">\r\n <mat-expansion-panel-header>\r\n <mat-panel-title>\r\n <mat-icon>list_alt</mat-icon>\r\n <span>{{'Reports' | translate}}</span>\r\n </mat-panel-title>\r\n </mat-expansion-panel-header>\r\n <mat-list-item *ngFor=\"let r of profile.reports\" [routerLink]='[\"/reports\", r.name]' routerLinkActive=\"active\"\r\n [attr.aria-label]=\"r.title\" [attr.data-help]=\"'report-'+r.name\">\r\n <mat-icon matListIcon>{{r.icon}}</mat-icon><span>{{r.title}}</span>\r\n </mat-list-item>\r\n </mat-expansion-panel>\r\n <mat-divider></mat-divider>\r\n <mat-list-item role=\"listitem\" data-help=\"options\"\r\n (click)=\"options($event)\">\r\n <mat-icon matListIcon>settingson</mat-icon>\r\n <span>{{'Settings' | translate}}</span>\r\n </mat-list-item>\r\n <mat-divider></mat-divider>\r\n <mat-list-item role=\"listitem\" (click)=\"signout($event)\">\r\n <mat-icon matListIcon>logout</mat-icon>\r\n <span>{{'Power' | translate}}</span>\r\n </mat-list-item>\r\n </mat-nav-list>\r\n </mat-sidenav>\r\n <mat-sidenav #secondaryDrawer position=\"end\" closed mode=\"over\" autoFocus=\"false\" class=\"mat-elevation-z3\">\r\n <ng-container [ngSwitch]=\"mode\">\r\n <bizdoc-chat [(contact)]=\"contact\" *ngSwitchCase=\"'chat'\"></bizdoc-chat>\r\n <bizdoc-notifications-table *ngSwitchCase=\"'notifications'\"></bizdoc-notifications-table>\r\n </ng-container>\r\n </mat-sidenav>\r\n <mat-sidenav-content data-help=\"main\">\r\n <router-outlet></router-outlet>\r\n </mat-sidenav-content>\r\n</mat-sidenav-container>\r\n<button mat-fab [attr.aria-label]=\"'Compose'| translate\" [@fabFull]=\"composeState\" *ngIf=\"composeEnabled\" color=\"accent\" (click)=\"compose()\" data-help=\"compose\"><mat-icon>add</mat-icon></button>\r\n", styles: ["#logo{padding-left:12px;padding-right:12px;vertical-align:middle;width:120px;filter:invert(1)}:host ::ng-deep .mat-sidenav-container{height:calc(100% - 58px)}:host ::ng-deep .mat-sidenav-container .home-content{padding:unset}::ng-deep .mat-drawer-inner-container{height:auto}router-outlet~*{position:absolute;height:100%;width:100%}::ng-deep [dir=rtl] .mat-fab{left:30px;right:unset}.mat-fab{z-index:1;position:absolute;bottom:30px;right:30px}:host ::ng-deep .mat-expansion-panel-header{padding:0 18px}:host ::ng-deep .mat-expansion-panel-header .mat-expansion-panel-header-title .mat-icon{padding:0 3px}\n"] }]
|
@@ -20200,11 +20264,12 @@ const EXCEL_ICON = '<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 64 64">
|
|
20200
20264
|
class BrokenPage {
|
20201
20265
|
}
|
20202
20266
|
BrokenPage.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.1", ngImport: i0, type: BrokenPage, deps: [], target: i0.ɵɵFactoryTarget.Component });
|
20203
|
-
BrokenPage.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.3.1", type: BrokenPage, selector: "ng-component", ngImport: i0, template: '', isInline: true });
|
20267
|
+
BrokenPage.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.3.1", type: BrokenPage, selector: "ng-component", host: { classAttribute: "mat-app-background" }, ngImport: i0, template: '', isInline: true });
|
20204
20268
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.1", ngImport: i0, type: BrokenPage, decorators: [{
|
20205
20269
|
type: Component,
|
20206
20270
|
args: [{
|
20207
|
-
template: ''
|
20271
|
+
template: '',
|
20272
|
+
host: { class: 'mat-app-background' }
|
20208
20273
|
}]
|
20209
20274
|
}] });
|
20210
20275
|
class BizDocApp {
|
@@ -23278,7 +23343,7 @@ class CubeDocumentsGridComponent {
|
|
23278
23343
|
}
|
23279
23344
|
}
|
23280
23345
|
CubeDocumentsGridComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.1", ngImport: i0, type: CubeDocumentsGridComponent, deps: [{ token: ReportRef }, { token: DocumentInfo }, { token: SessionService }, { token: AccountService }, { token: CubeService }], target: i0.ɵɵFactoryTarget.Component });
|
23281
|
-
CubeDocumentsGridComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.3.1", type: CubeDocumentsGridComponent, selector: "ng-component", viewQueries: [{ propertyName: "grid", first: true, predicate: GridComponent, descendants: true }], ngImport: i0, template: "<ejs-grid [dataSource]=\"dataSource\" (rowSelected)=\"rowSelected($event)\" [pageSettings]=\"pageSettings\"\r\n [allowPaging]=false\r\n [allowExcelExport]=\"true\"\r\n [height]=\"height\"\r\n [allowGrouping]=true\r\n [allowSorting]=true\r\n [groupSettings]=\"groupSettings\">\r\n <e-columns>\r\n <e-column field=\"number\" [headerText]=\"'Number'|translate\"></e-column>\r\n <e-column field=\"subject\" [headerText]=\"'Subject'|translate\"></e-column>\r\n <e-column field=\"stateId\" [headerText]=\"'Status'|translate\">\r\n <ng-template #template let-data>{{data.stateId | state}}</ng-template>\r\n </e-column>\r\n <e-column field=\"date\" [headerText]=\"'Date'|translate\">\r\n <ng-template #template let-data>{{data.date | amDateFormat: 'lll'}}</ng-template>\r\n </e-column>\r\n <e-column field=\"formId\" [headerText]=\"'Form'|translate\">\r\n <ng-template #template let-data>{{data.formId | form}}</ng-template>\r\n </e-column>\r\n <e-column field=\"userName\" [headerText]=\"'Name'|translate\">\r\n </e-column>\r\n <e-column field=\"total\" [headerText]=\"'Value'|translate\" textAlign=\"Right\" [format]=\"valueFormat\">\r\n </e-column>\r\n </e-columns>\r\n</ejs-grid>\r\n", components: [{ type: i6$
|
23346
|
+
CubeDocumentsGridComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.3.1", type: CubeDocumentsGridComponent, selector: "ng-component", viewQueries: [{ propertyName: "grid", first: true, predicate: GridComponent, descendants: true }], ngImport: i0, template: "<ejs-grid [dataSource]=\"dataSource\" (rowSelected)=\"rowSelected($event)\" [pageSettings]=\"pageSettings\"\r\n [allowPaging]=false\r\n [allowExcelExport]=\"true\"\r\n [height]=\"height\"\r\n [allowGrouping]=true\r\n [allowSorting]=true\r\n [groupSettings]=\"groupSettings\">\r\n <e-columns>\r\n <e-column field=\"number\" [headerText]=\"'Number'|translate\"></e-column>\r\n <e-column field=\"subject\" [headerText]=\"'Subject'|translate\"></e-column>\r\n <e-column field=\"stateId\" [headerText]=\"'Status'|translate\">\r\n <ng-template #template let-data>{{data.stateId | state}}</ng-template>\r\n </e-column>\r\n <e-column field=\"date\" [headerText]=\"'Date'|translate\">\r\n <ng-template #template let-data>{{data.date | amDateFormat: 'lll'}}</ng-template>\r\n </e-column>\r\n <e-column field=\"formId\" [headerText]=\"'Form'|translate\">\r\n <ng-template #template let-data>{{data.formId | form}}</ng-template>\r\n </e-column>\r\n <e-column field=\"userName\" [headerText]=\"'Name'|translate\">\r\n </e-column>\r\n <e-column field=\"total\" [headerText]=\"'Value'|translate\" textAlign=\"Right\" [format]=\"valueFormat\">\r\n </e-column>\r\n </e-columns>\r\n</ejs-grid>\r\n", components: [{ type: i6$3.GridComponent, selector: "ejs-grid", inputs: ["aggregates", "allowExcelExport", "allowFiltering", "allowGrouping", "allowKeyboard", "allowMultiSorting", "allowPaging", "allowPdfExport", "allowReordering", "allowResizing", "allowRowDragAndDrop", "allowSelection", "allowSorting", "allowTextWrap", "childGrid", "clipMode", "columnChooserSettings", "columnMenuItems", "columnQueryMode", "columns", "contextMenuItems", "currencyCode", "currentAction", "dataSource", "detailTemplate", "editSettings", "ej2StatePersistenceVersion", "enableAdaptiveUI", "enableAltRow", "enableAutoFill", "enableColumnVirtualization", "enableHeaderFocus", "enableHover", "enableImmutableMode", "enableInfiniteScrolling", "enablePersistence", "enableRtl", "enableStickyHeader", "enableVirtualization", "filterSettings", "frozenColumns", "frozenRows", "gridLines", "groupSettings", "height", "hierarchyPrintMode", "infiniteScrollSettings", "locale", "pageSettings", "pagerTemplate", "parentDetails", "printMode", "query", "queryString", "resizeSettings", "rowDropSettings", "rowHeight", "rowRenderingMode", "rowTemplate", "searchSettings", "selectedRowIndex", "selectionSettings", "showColumnChooser", "showColumnMenu", "sortSettings", "textWrapSettings", "toolbar", "toolbarTemplate", "width"], outputs: ["actionBegin", "actionComplete", "actionFailure", "batchAdd", "batchCancel", "batchDelete", "beforeAutoFill", "beforeBatchAdd", "beforeBatchDelete", "beforeBatchSave", "beforeCopy", "beforeDataBound", "beforeExcelExport", "beforeOpenAdaptiveDialog", "beforeOpenColumnChooser", "beforePaste", "beforePdfExport", "beforePrint", "beginEdit", "cellDeselected", "cellDeselecting", "cellEdit", "cellSave", "cellSaved", "cellSelected", "cellSelecting", "checkBoxChange", "columnDataStateChange", "columnDeselected", "columnDeselecting", "columnDrag", "columnDragStart", "columnDrop", "columnMenuClick", "columnMenuOpen", "columnSelected", "columnSelecting", "commandClick", "contextMenuClick", "contextMenuOpen", "created", "dataBound", "dataSourceChanged", "dataStateChange", "destroyed", "detailDataBound", "excelAggregateQueryCellInfo", "excelExportComplete", "excelHeaderQueryCellInfo", "excelQueryCellInfo", "exportDetailDataBound", "exportGroupCaption", "headerCellInfo", "keyPressed", "lazyLoadGroupCollapse", "lazyLoadGroupExpand", "load", "pdfAggregateQueryCellInfo", "pdfExportComplete", "pdfHeaderQueryCellInfo", "pdfQueryCellInfo", "printComplete", "queryCellInfo", "recordClick", "recordDoubleClick", "resizeStart", "resizeStop", "resizing", "rowDataBound", "rowDeselected", "rowDeselecting", "rowDrag", "rowDragStart", "rowDragStartHelper", "rowDrop", "rowSelected", "rowSelecting", "toolbarClick", "dataSourceChange"] }], directives: [{ type: i7$5.ColumnsDirective, selector: "ejs-gantt>e-columns" }, { type: i16.ColumnsDirective, selector: "ejs-chart>e-columns" }, { type: i6$3.ColumnsDirective, selector: "ejs-grid>e-columns" }, { type: i6$3.AggregateColumnsDirective, selector: "ejs-grid>e-aggregates>e-aggregate>e-columns" }, { type: i9$5.ColumnsDirective, selector: "e-sheet>e-columns" }, { type: i10$1.ColumnsDirective, selector: "ejs-kanban>e-columns" }, { type: i7$5.ColumnDirective, selector: "ejs-gantt>e-columns>e-column", inputs: ["allowEditing", "allowFiltering", "allowReordering", "allowResizing", "allowSorting", "clipMode", "customAttributes", "disableHtmlEncode", "displayAsCheckBox", "edit", "editType", "field", "filter", "format", "formatter", "headerTemplate", "headerText", "headerTextAlign", "hideAtMedia", "isPrimaryKey", "maxWidth", "minWidth", "sortComparer", "template", "textAlign", "type", "valueAccessor", "visible", "width"] }, { type: i16.ColumnDirective, selector: "e-columns>e-column", inputs: ["border", "width"] }, { type: i6$3.ColumnDirective, selector: "ejs-grid>e-columns>e-column", inputs: ["allowEditing", "allowFiltering", "allowGrouping", "allowReordering", "allowResizing", "allowSearching", "allowSorting", "autoFit", "clipMode", "columns", "commands", "customAttributes", "dataSource", "defaultValue", "disableHtmlEncode", "displayAsCheckBox", "edit", "editTemplate", "editType", "enableGroupByFormat", "field", "filter", "filterBarTemplate", "filterTemplate", "foreignKeyField", "foreignKeyValue", "format", "formatter", "freeze", "headerTemplate", "headerText", "headerTextAlign", "headerValueAccessor", "hideAtMedia", "index", "isFrozen", "isIdentity", "isPrimaryKey", "lockColumn", "maxWidth", "minWidth", "showColumnMenu", "showInColumnChooser", "sortComparer", "template", "textAlign", "type", "uid", "validationRules", "valueAccessor", "visible", "width"] }, { type: i6$3.AggregateColumnDirective, selector: "ejs-grid>e-aggregates>e-aggregate>e-columns>e-column", inputs: ["columnName", "customAggregate", "field", "footerTemplate", "format", "groupCaptionTemplate", "groupFooterTemplate", "type"] }, { type: i9$5.ColumnDirective, selector: "e-columns>e-column", inputs: ["customWidth", "format", "hidden", "index", "isLocked", "validation", "width"] }, { type: i10$1.ColumnDirective, selector: "e-columns>e-column", inputs: ["allowDrag", "allowDrop", "allowToggle", "headerText", "isExpanded", "keyField", "maxCount", "minCount", "showAddButton", "showItemCount", "template", "transitionColumns"] }], pipes: { "translate": TranslatePipe, "state": StatePipe, "amDateFormat": DateFormatPipe, "form": FormPipe } });
|
23282
23347
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.1", ngImport: i0, type: CubeDocumentsGridComponent, decorators: [{
|
23283
23348
|
type: Component,
|
23284
23349
|
args: [{ template: "<ejs-grid [dataSource]=\"dataSource\" (rowSelected)=\"rowSelected($event)\" [pageSettings]=\"pageSettings\"\r\n [allowPaging]=false\r\n [allowExcelExport]=\"true\"\r\n [height]=\"height\"\r\n [allowGrouping]=true\r\n [allowSorting]=true\r\n [groupSettings]=\"groupSettings\">\r\n <e-columns>\r\n <e-column field=\"number\" [headerText]=\"'Number'|translate\"></e-column>\r\n <e-column field=\"subject\" [headerText]=\"'Subject'|translate\"></e-column>\r\n <e-column field=\"stateId\" [headerText]=\"'Status'|translate\">\r\n <ng-template #template let-data>{{data.stateId | state}}</ng-template>\r\n </e-column>\r\n <e-column field=\"date\" [headerText]=\"'Date'|translate\">\r\n <ng-template #template let-data>{{data.date | amDateFormat: 'lll'}}</ng-template>\r\n </e-column>\r\n <e-column field=\"formId\" [headerText]=\"'Form'|translate\">\r\n <ng-template #template let-data>{{data.formId | form}}</ng-template>\r\n </e-column>\r\n <e-column field=\"userName\" [headerText]=\"'Name'|translate\">\r\n </e-column>\r\n <e-column field=\"total\" [headerText]=\"'Value'|translate\" textAlign=\"Right\" [format]=\"valueFormat\">\r\n </e-column>\r\n </e-columns>\r\n</ejs-grid>\r\n" }]
|
@@ -27518,6 +27583,55 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.1", ngImpor
|
|
27518
27583
|
args: ['nameInput', { static: true, read: ElementRef }]
|
27519
27584
|
}] } });
|
27520
27585
|
|
27586
|
+
/** */
|
27587
|
+
class HelpTipComponent {
|
27588
|
+
constructor(_guide) {
|
27589
|
+
this._guide = _guide;
|
27590
|
+
}
|
27591
|
+
ngOnInit() {
|
27592
|
+
this.showTip = localStorage.getItem(this.name + '-tip') !== '1';
|
27593
|
+
const guide = this._guide.guides.find(g => g.name === this.name);
|
27594
|
+
this._message = guide.title;
|
27595
|
+
}
|
27596
|
+
open(evt) {
|
27597
|
+
this._guide.start(this.name);
|
27598
|
+
}
|
27599
|
+
dismiss() {
|
27600
|
+
localStorage.setItem(this.name + 'tip', '1');
|
27601
|
+
this.showTip = false;
|
27602
|
+
}
|
27603
|
+
}
|
27604
|
+
HelpTipComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.1", ngImport: i0, type: HelpTipComponent, deps: [{ token: GuideService }], target: i0.ɵɵFactoryTarget.Component });
|
27605
|
+
HelpTipComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.3.1", type: HelpTipComponent, selector: "bizdoc-help-tip", inputs: { name: "name" }, ngImport: i0, template: `
|
27606
|
+
<p fxLayout="row" class="form-help-tip" *ngIf="showTip">
|
27607
|
+
<mat-icon>help_outline</mat-icon> <span (click)="open($event)" [innerHTML]="'HelpTip'|translate: _message" class="mat-body-1"></span>
|
27608
|
+
<button mat-icon-button (click)="dismiss()" [bizdocTooltip]="'Dismiss'|translate"><mat-icon inline>close</mat-icon></button>
|
27609
|
+
</p>
|
27610
|
+
`, isInline: true, styles: [".form-help-tip{align-items:center;border:1px rgb(0 0 0 / 38%) solid;margin:10px;border-radius:3px;padding:0 8px}\n"], components: [{ 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: 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: TooltipDirective, selector: "[bizdocTooltip]", inputs: ["bizdocTooltip", "bizdocTooltipTemplate", "bizdocTooltipContext", "bizdocTooltipPosition", "bizdocTooltipDuration", "bizdocTooltipDisabled"] }], pipes: { "translate": TranslatePipe } });
|
27611
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.1", ngImport: i0, type: HelpTipComponent, decorators: [{
|
27612
|
+
type: Component,
|
27613
|
+
args: [{
|
27614
|
+
template: `
|
27615
|
+
<p fxLayout="row" class="form-help-tip" *ngIf="showTip">
|
27616
|
+
<mat-icon>help_outline</mat-icon> <span (click)="open($event)" [innerHTML]="'HelpTip'|translate: _message" class="mat-body-1"></span>
|
27617
|
+
<button mat-icon-button (click)="dismiss()" [bizdocTooltip]="'Dismiss'|translate"><mat-icon inline>close</mat-icon></button>
|
27618
|
+
</p>
|
27619
|
+
`,
|
27620
|
+
styles: [`
|
27621
|
+
.form-help-tip {
|
27622
|
+
align-items: center;
|
27623
|
+
border: 1px rgb(0 0 0 / 38%) solid;
|
27624
|
+
margin: 10px;
|
27625
|
+
border-radius: 3px 3px;
|
27626
|
+
padding: 0 8px;
|
27627
|
+
}
|
27628
|
+
`],
|
27629
|
+
selector: 'bizdoc-help-tip'
|
27630
|
+
}]
|
27631
|
+
}], ctorParameters: function () { return [{ type: GuideService }]; }, propDecorators: { name: [{
|
27632
|
+
type: Input
|
27633
|
+
}] } });
|
27634
|
+
|
27521
27635
|
/** configuration componenets */
|
27522
27636
|
const CORE_COMPONENTS = [CubeCompareWidget, CubeParallelViewComponent, CubeExploreViewComponent, CubeChartViewComponent, CubeDocumentSumComponent, CubeDocumentMatrixComponent, CubeDocumentViewComponent, CubePivotViewComponent, TimelineViewComponent,
|
27523
27637
|
SubstitutionComponent, MoveToActionComponent, AssignActionComponent, ReturnActionComponent, ExploreDocumentComponent,
|
@@ -27554,7 +27668,7 @@ class SharedModule {
|
|
27554
27668
|
}
|
27555
27669
|
}
|
27556
27670
|
SharedModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.1", ngImport: i0, type: SharedModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
|
27557
|
-
SharedModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "12.0.0", version: "13.3.1", ngImport: i0, type: SharedModule, declarations: [CubeCompareWidget, CubeUsageComponent, CubeDocumentsComponent, FileInput, DateFormatPipe, CalendarPipe, DifferencePipe, DurationPipe, TimeAgoPipe,
|
27671
|
+
SharedModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "12.0.0", version: "13.3.1", ngImport: i0, type: SharedModule, declarations: [HelpTipComponent, CubeCompareWidget, CubeUsageComponent, CubeDocumentsComponent, FileInput, DateFormatPipe, CalendarPipe, DifferencePipe, DurationPipe, TimeAgoPipe,
|
27558
27672
|
CheckboxComponent, CubeParallelComponent, CubeSumComponent, CubeParallelViewComponent, CubeChartViewComponent, CubeExploreViewComponent, CubeDocumentSumComponent, ExploreItemImplComponent, DocumentInfoComponent, DocumentViewsComponent, ViewItemComponent, CubeDocumentMatrixComponent, CubeDocumentViewComponent, CubePivotViewComponent, ActionPicker, HtmlSimplePipe, QuickCommentComponent,
|
27559
27673
|
DurationFormatPipe, CombinationPicker, CombinationPickerBody, CombinationPool, TimelineViewComponent,
|
27560
27674
|
MatIconAnimate, DateRangePipe, AgoPipe, ColorPicker, StateDirective, BrokenPage,
|
@@ -27696,7 +27810,7 @@ SharedModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "
|
|
27696
27810
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.1", ngImport: i0, type: SharedModule, decorators: [{
|
27697
27811
|
type: NgModule,
|
27698
27812
|
args: [{
|
27699
|
-
declarations: [CubeCompareWidget, CubeUsageComponent, CubeDocumentsComponent, FileInput, DateFormatPipe, CalendarPipe, DifferencePipe, DurationPipe, TimeAgoPipe,
|
27813
|
+
declarations: [HelpTipComponent, CubeCompareWidget, CubeUsageComponent, CubeDocumentsComponent, FileInput, DateFormatPipe, CalendarPipe, DifferencePipe, DurationPipe, TimeAgoPipe,
|
27700
27814
|
CheckboxComponent, CubeParallelComponent, CubeSumComponent, CubeParallelViewComponent, CubeChartViewComponent, CubeExploreViewComponent, CubeDocumentSumComponent, ExploreItemImplComponent, DocumentInfoComponent, DocumentViewsComponent, ViewItemComponent, CubeDocumentMatrixComponent, CubeDocumentViewComponent, CubePivotViewComponent, ActionPicker, HtmlSimplePipe, QuickCommentComponent,
|
27701
27815
|
DurationFormatPipe, CombinationPicker, CombinationPickerBody, CombinationPool, TimelineViewComponent,
|
27702
27816
|
MatIconAnimate, DateRangePipe, AgoPipe, ColorPicker, StateDirective, BrokenPage,
|
@@ -29003,7 +29117,7 @@ let DocumentTraceComponent = class DocumentTraceComponent {
|
|
29003
29117
|
const { documentId } = p;
|
29004
29118
|
documentId && this._open(documentId.decodeId());
|
29005
29119
|
});
|
29006
|
-
this._pane.
|
29120
|
+
this._pane.resized.pipe(takeUntil(this._destroy)).subscribe(() => { var _a; return (_a = this.diagram) === null || _a === void 0 ? void 0 : _a.refresh(); });
|
29007
29121
|
}
|
29008
29122
|
openFilter(evt) {
|
29009
29123
|
this._popup.open(this.filterArgs, evt.target).opened.subscribe(() => this.searchInput.focus());
|
@@ -30188,7 +30302,7 @@ let ProfilerComponent = class ProfilerComponent {
|
|
30188
30302
|
const { userId } = p;
|
30189
30303
|
userId && this._open(userId);
|
30190
30304
|
});
|
30191
|
-
this._pane.
|
30305
|
+
this._pane.resized.pipe(takeUntil(this._destroy)).subscribe(() => { var _a; return (_a = this.chart) === null || _a === void 0 ? void 0 : _a.chartResize(); });
|
30192
30306
|
this.users$ = this.search.valueChanges.pipe(takeUntil(this._destroy), debounceTime(250), filter(v => !isObject(v)), switchMap(v => this._accounts.findAll(v)));
|
30193
30307
|
}
|
30194
30308
|
guide(evt) {
|
@@ -30272,11 +30386,6 @@ let ProfilerComponent = class ProfilerComponent {
|
|
30272
30386
|
const action = this._session.profile.actions.find(a => a.name === name);
|
30273
30387
|
return action ? action.past || action.title : name;
|
30274
30388
|
}
|
30275
|
-
resize() {
|
30276
|
-
// const { width, height } = getComputedStyle(this.chartElement.nativeElement.parentElement);
|
30277
|
-
// this.chart.width = width;
|
30278
|
-
// this.chart.height = height;
|
30279
|
-
}
|
30280
30389
|
pointClick(evt) {
|
30281
30390
|
const { id } = evt.series.dataSource[evt.pointIndex];
|
30282
30391
|
this._documentInfo.open(id);
|
@@ -30335,7 +30444,7 @@ let ProfilerComponent = class ProfilerComponent {
|
|
30335
30444
|
}
|
30336
30445
|
};
|
30337
30446
|
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 });
|
30338
|
-
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 } });
|
30447
|
+
ProfilerComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.3.1", type: ProfilerComponent, selector: "ng-component", host: { listeners: { "window:keydown.f1": "guide($event)" }, 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 } });
|
30339
30448
|
ProfilerComponent = __decorate([
|
30340
30449
|
BizDoc({ selector: 'bizdoc-user-profiler' })
|
30341
30450
|
/** component*/
|
@@ -30357,9 +30466,6 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.1", ngImpor
|
|
30357
30466
|
}], guide: [{
|
30358
30467
|
type: HostListener,
|
30359
30468
|
args: ['window:keydown.f1', ['$event']]
|
30360
|
-
}], resize: [{
|
30361
|
-
type: HostListener,
|
30362
|
-
args: ['window:resize']
|
30363
30469
|
}] } });
|
30364
30470
|
|
30365
30471
|
const SYSTEM_COMPONENTS = [RoleNodeComponent, ManageCubeIndexUtility, PermissionsUtility, PositionsComponent, ProfilerComponent,
|
@@ -30628,5 +30734,5 @@ function withRoute(routes) {
|
|
30628
30734
|
* Generated bundle index. Do not edit.
|
30629
30735
|
*/
|
30630
30736
|
|
30631
|
-
export { AccountService, AceInput, ActionDialog, ActionPicker, ActionPipe, ActionRef, ActionsWidget, AddressInput, AgoPipe, ArraySortPipe, AssignActionComponent, AttachmentInfo, AttachmentPreview, AuthenticationImpl, AvatarComponent, BIZDOC_CONFIG, BizDoc, BizDocApp, BizDocModule, BrokenPage, BrowseFilterComponent, BrowseItemsComponent, CalendarPipe, ChatInfo, CheckboxComponent, ColorPicker, CombinationPicker, CombinationPickerBody, CombinationPool, CommentsComponent, CompareContextDirective, CompareGroupDirective, CompareGroupsWidget, CompareNameDirective, ComposeFormComponent, ContactsComponent, ConversationComponent, CubeAccumAnalysisWidget, CubeAccumulationChartComponent, CubeAnalysisWidget, CubeChartAnalysisWidget, CubeChartComponent, CubeCompareWidget, CubeDocumentsGridComponent, CubeDocumentsTableComponent, CubeDocumentsWidget, CubeFilterComponent, CubeGridComponent, CubeInfo, CubeMatrixComponent, CubeParallelComponent, CubePivotComponent, CubeService, CubeSpreadsheetComponent, CubeSumComponent, CubeViewComponent, CubeWidgetFilterComponent, DEFAULT_POLICY, DRAFT, DashboardComponent, DatasourceService, DateFormatPipe, DateRangePipe, DifferencePipe, DocumentInfo, DocumentInfoComponent, DocumentResolveService, DocumentViewRef, DocumentViewsComponent, DurationFormatPipe, DurationPipe, EnterExitLeft, EnterExitRight, EnterExitTop, ExploreDocumentComponent, ExploreItemImplComponent, ExploreItemsComponent, FadeSlideInOut, FieldType, FileInput, FilterPipe, FilterTagsComponent, FlowViewComponent, FormPipe, FormRef, GuideRef, GuideService, INBOX, IdentityName, ItemResolveService, JoinPipe, LottieAnimation, MailboxService, MapInfo, MatIconAnimate, MaterialModule, NavigationEnd,
|
30737
|
+
export { AccountService, AceInput, ActionDialog, ActionPicker, ActionPipe, ActionRef, ActionsWidget, AddressInput, AgoPipe, ArraySortPipe, AssignActionComponent, AttachmentInfo, AttachmentPreview, AuthenticationImpl, AvatarComponent, BIZDOC_CONFIG, BackNavigation, BizDoc, BizDocApp, BizDocModule, BrokenPage, BrowseFilterComponent, BrowseItemsComponent, CalendarPipe, ChatInfo, CheckboxComponent, CollapseNavigation, ColorPicker, CombinationPicker, CombinationPickerBody, CombinationPool, CommentsComponent, CompareContextDirective, CompareGroupDirective, CompareGroupsWidget, CompareNameDirective, ComposeFormComponent, ContactsComponent, ConversationComponent, CubeAccumAnalysisWidget, CubeAccumulationChartComponent, CubeAnalysisWidget, CubeChartAnalysisWidget, CubeChartComponent, CubeCompareWidget, CubeDocumentsGridComponent, CubeDocumentsTableComponent, CubeDocumentsWidget, CubeFilterComponent, CubeGridComponent, CubeInfo, CubeMatrixComponent, CubeParallelComponent, CubePivotComponent, CubeService, CubeSpreadsheetComponent, CubeSumComponent, CubeViewComponent, CubeWidgetFilterComponent, DEFAULT_POLICY, DRAFT, DashboardComponent, DatasourceService, DateFormatPipe, DateRangePipe, DifferencePipe, DocumentInfo, DocumentInfoComponent, DocumentResolveService, DocumentViewRef, DocumentViewsComponent, DurationFormatPipe, DurationPipe, EnterExitLeft, EnterExitRight, EnterExitTop, ExploreDocumentComponent, ExploreItemImplComponent, ExploreItemsComponent, FadeSlideInOut, FieldType, FileInput, FilterPipe, FilterTagsComponent, FlowViewComponent, FormPipe, FormRef, GuideRef, GuideService, INBOX, IdentityName, ItemResolveService, JoinPipe, LottieAnimation, MailboxService, MapInfo, MatIconAnimate, MaterialModule, NavigationClose, NavigationEnd, NavigationExpand, NavigationFocus, NavigationMode, NavigationResize, NavigationStart, NgxComponentOutlet, NotificationsTableComponent, OpenPolicy, POPUP_DATA, PaneRef, PanesRouter, ParamNavigation, PeersPerformanceWidget, PendingResultsWidget, PersonalActivityWidget, PersonalScoreWidget, Popup, PopupRef, PrivilegeDisabledDirective, PrivilegeHiddenDirective, PulseAnimation, QueryParamNavigation, QuickCommentComponent, RecentsWidget, RecipientResolveService, ReportArgumentsComponent, ReportRef, ReportViewerComponent, ReturnActionComponent, RolePipe, RouterImpl, SanitizeHtmlPipe, SaveChangesDialog, ScheduleViewComponent, SearchInput, SessionService, ShakeAnimation, SharedModule, SlotRouterDirective, StateDirective, StatePipe, SubstitutionComponent, SwapAnimation, TagsComponent, TasksComponent, TimeAgoPipe, TimePicker, TimespanInput, TooltipDirective, TraceViewComponent, TranslatePipe, TranslateService, TypeAutocomplete, TypeSelect, TypeValuePipe, UsageChartComponent, UsagePivotComponent, UsageReportArgs, UserNamePipe, UtilityRef, VersionCompareComponent, WidgetItemComponent, WidgetRef, isArray, isBoolean, isDate, isFunction, isImage, isMobile, isObject, isPrimitive, isPromise, isString, modelize, registerComponents };
|
30632
30738
|
//# sourceMappingURL=bizdoc-core.mjs.map
|