@bizdoc/core 1.14.0-next.6 → 1.14.0-next.9
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/assets/themes/brown.min.css +17 -17
- package/assets/themes/dark.min.css +1 -78
- package/assets/themes/deep-purple-light-blue.min.css +20 -20
- package/assets/themes/deep-purple-teal.min.css +20 -20
- package/assets/themes/default.min.css +20 -20
- package/assets/themes/green.min.css +17 -17
- package/assets/themes/indigo.min.css +17 -17
- package/esm2020/lib/bizdoc.module.mjs +3 -1
- package/esm2020/lib/core/configuration.mjs +2 -1
- package/esm2020/lib/core/session.service.mjs +17 -6
- package/esm2020/lib/core/slots/pane-ref.mjs +4 -1
- package/esm2020/lib/core/slots/slots.component.mjs +56 -27
- package/esm2020/lib/cube/view.pane.component.mjs +5 -1
- package/esm2020/lib/dashboard/score/personal-score.widget.mjs +15 -11
- package/esm2020/lib/routes.desktop.mjs +2 -2
- package/esm2020/lib/shared.module.mjs +4 -2
- package/esm2020/lib/views/view-item.component.mjs +7 -11
- package/fesm2015/bizdoc-core.mjs +98 -51
- package/fesm2015/bizdoc-core.mjs.map +1 -1
- package/fesm2020/bizdoc-core.mjs +101 -49
- package/fesm2020/bizdoc-core.mjs.map +1 -1
- package/lib/core/configuration.d.ts +2 -1
- package/lib/core/session.service.d.ts +3 -1
- package/lib/core/slots/pane-ref.d.ts +3 -0
- package/lib/core/slots/slots.component.d.ts +15 -4
- package/lib/views/view-item.component.d.ts +2 -4
- package/package.json +14 -14
package/fesm2020/bizdoc-core.mjs
CHANGED
@@ -25,7 +25,7 @@ import * as i1$3 from '@angular/material/slide-toggle';
|
|
25
25
|
import { MatSlideToggle, MatSlideToggleModule } from '@angular/material/slide-toggle';
|
26
26
|
import * as i2$1 from '@angular/cdk/a11y';
|
27
27
|
import { ActiveDescendantKeyManager } from '@angular/cdk/a11y';
|
28
|
-
import { L10n, setCulture, loadCldr, setCurrencyCode, Internationalization, enableRtl } from '@syncfusion/ej2-base';
|
28
|
+
import { L10n, setCulture, loadCldr, setCurrencyCode, Internationalization, enableRtl, registerLicense } from '@syncfusion/ej2-base';
|
29
29
|
import 'dayjs/locale/he';
|
30
30
|
import 'dayjs/locale/de';
|
31
31
|
import 'dayjs/locale/ru';
|
@@ -842,6 +842,7 @@ var OpenPolicy;
|
|
842
842
|
OpenPolicy[OpenPolicy["Dialog"] = 112] = "Dialog";
|
843
843
|
OpenPolicy[OpenPolicy["Dismissable"] = 128] = "Dismissable";
|
844
844
|
OpenPolicy[OpenPolicy["Toggle"] = 256] = "Toggle";
|
845
|
+
OpenPolicy[OpenPolicy["Stretch"] = 256] = "Stretch";
|
845
846
|
})(OpenPolicy || (OpenPolicy = {}));
|
846
847
|
const DEFAULT_POLICY = OpenPolicy.Pane;
|
847
848
|
|
@@ -1007,6 +1008,9 @@ const THEMES = [
|
|
1007
1008
|
{ name: 'brown', primary: 'brown', color: '#795548', accent: 'grey' }
|
1008
1009
|
];
|
1009
1010
|
const SUPPORTED_LANGUAGES = ['en', 'he', 'de', 'ar', 'ru'], RTL_LANGUALGES = ['he', 'ar'];
|
1011
|
+
function SessionProviderFactory(provider) {
|
1012
|
+
return () => provider.prepare();
|
1013
|
+
}
|
1010
1014
|
class SessionService {
|
1011
1015
|
constructor(_config, _http, _cookies, _hub) {
|
1012
1016
|
this._config = _config;
|
@@ -1020,7 +1024,12 @@ class SessionService {
|
|
1020
1024
|
this.themeChange = this._themeChange.asObservable();
|
1021
1025
|
this._firebase = new FirebaseService(this._config ? this._config.firebase : null, this);
|
1022
1026
|
('serviceWorker' in navigator) && this._loadSw();
|
1023
|
-
|
1027
|
+
}
|
1028
|
+
prepare() {
|
1029
|
+
const promisses = [];
|
1030
|
+
if (this._config.maps)
|
1031
|
+
promisses.push(this._googleMaps());
|
1032
|
+
return Promise.all(promisses);
|
1024
1033
|
}
|
1025
1034
|
get profile() { return this._profile; }
|
1026
1035
|
get gender() { return this.profile.byId ? this._profile.byGender : this._profile.gender; }
|
@@ -1215,11 +1224,14 @@ class SessionService {
|
|
1215
1224
|
}, null);
|
1216
1225
|
});
|
1217
1226
|
}
|
1218
|
-
|
1227
|
+
_googleMaps() {
|
1219
1228
|
const apiKey = this._config.maps.apiKey;
|
1220
|
-
|
1221
|
-
|
1222
|
-
|
1229
|
+
return new Promise((resolve, reject) => {
|
1230
|
+
const script = document.createElement('script');
|
1231
|
+
script.src = `https://maps.googleapis.com/maps/api/js?key=${apiKey}&libraries=places&language=${this.language}`;
|
1232
|
+
script.addEventListener('load', resolve, {});
|
1233
|
+
document.head.append(script);
|
1234
|
+
});
|
1223
1235
|
}
|
1224
1236
|
}
|
1225
1237
|
SessionService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.1", ngImport: i0, type: SessionService, deps: [{ token: BIZDOC_CONFIG }, { token: i1.HttpClient }, { token: i2.CookieService }, { token: HubService }], target: i0.ɵɵFactoryTarget.Injectable });
|
@@ -6257,6 +6269,9 @@ class PaneRef {
|
|
6257
6269
|
;
|
6258
6270
|
get parent() { return this._options.parent; }
|
6259
6271
|
;
|
6272
|
+
get stretch() { return this._options.stretch; }
|
6273
|
+
;
|
6274
|
+
set stretch(val) { this._options.stretch = val; }
|
6260
6275
|
get dialog() { return this._options.dialog; }
|
6261
6276
|
;
|
6262
6277
|
get dismissable() { return this._options.dismissable; }
|
@@ -11392,6 +11407,10 @@ class CubeViewPaneComponent extends ViewBase {
|
|
11392
11407
|
this._pane.group = this.cube.title;
|
11393
11408
|
this._pane.title = this.view.title;
|
11394
11409
|
this._pane.icon = this.view.icon || this.cube.icon;
|
11410
|
+
if (this.view.type === 'Spreadsheet' ||
|
11411
|
+
this.view.type === 'Grid' ||
|
11412
|
+
(this.view.type === 'Pivot' && !this.view.chartType))
|
11413
|
+
this._pane.stretch = true;
|
11395
11414
|
});
|
11396
11415
|
this._pane.queryParamsChange.subscribe(p => this.originalAxes = p);
|
11397
11416
|
this._pane.resize.subscribe(() => this.viewPane.resize());
|
@@ -17301,8 +17320,7 @@ class DocumentViewRef {
|
|
17301
17320
|
}
|
17302
17321
|
|
17303
17322
|
class ViewItemComponent {
|
17304
|
-
constructor(
|
17305
|
-
this._pane = _pane;
|
17323
|
+
constructor(_http, _vc, _injector, _cf) {
|
17306
17324
|
this._http = _http;
|
17307
17325
|
this._vc = _vc;
|
17308
17326
|
this._injector = _injector;
|
@@ -17341,7 +17359,7 @@ class ViewItemComponent {
|
|
17341
17359
|
this._destroy.complete();
|
17342
17360
|
}
|
17343
17361
|
}
|
17344
|
-
ViewItemComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.1", ngImport: i0, type: ViewItemComponent, deps: [{ token:
|
17362
|
+
ViewItemComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.1", ngImport: i0, type: ViewItemComponent, deps: [{ token: i1.HttpClient }, { token: i0.ViewContainerRef }, { token: i0.Injector }, { token: BizDocComponentFactoryResolver }], target: i0.ɵɵFactoryTarget.Component });
|
17345
17363
|
ViewItemComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.3.1", type: ViewItemComponent, selector: "bizdoc-document-view-item", inputs: { model: "model", view: "view" }, host: { listeners: { "window:resize": "resize()" } }, ngImport: i0, template: '', isInline: true });
|
17346
17364
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.1", ngImport: i0, type: ViewItemComponent, decorators: [{
|
17347
17365
|
type: Component,
|
@@ -17350,9 +17368,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.1", ngImpor
|
|
17350
17368
|
template: '',
|
17351
17369
|
//host: { class: 'bz-view' }
|
17352
17370
|
}]
|
17353
|
-
}], ctorParameters: function () { return [{ type:
|
17354
|
-
type: Optional
|
17355
|
-
}] }, { type: i1.HttpClient }, { type: i0.ViewContainerRef }, { type: i0.Injector }, { type: BizDocComponentFactoryResolver }]; }, propDecorators: { model: [{
|
17371
|
+
}], ctorParameters: function () { return [{ type: i1.HttpClient }, { type: i0.ViewContainerRef }, { type: i0.Injector }, { type: BizDocComponentFactoryResolver }]; }, propDecorators: { model: [{
|
17356
17372
|
type: Input
|
17357
17373
|
}], view: [{
|
17358
17374
|
type: Input
|
@@ -18498,6 +18514,7 @@ class SlotsComponent {
|
|
18498
18514
|
this.panes = [];
|
18499
18515
|
this.tabs = [];
|
18500
18516
|
this._selectedTabIndex = -1;
|
18517
|
+
this.dialog = false;
|
18501
18518
|
this.selectedIndex = -1;
|
18502
18519
|
this.dragging = false;
|
18503
18520
|
this.ripple = {
|
@@ -18527,6 +18544,7 @@ class SlotsComponent {
|
|
18527
18544
|
}
|
18528
18545
|
set selectedTabIndex(value) {
|
18529
18546
|
this._selectedTabIndex = value;
|
18547
|
+
this.dialog = this._selectedTabIndex > -1 && this.tabs.at(this._selectedTabIndex).dialog;
|
18530
18548
|
this._setTabAnimation();
|
18531
18549
|
}
|
18532
18550
|
_setTabAnimation() {
|
@@ -18609,7 +18627,7 @@ class SlotsComponent {
|
|
18609
18627
|
this.group = tab.group;
|
18610
18628
|
this.selectedTabIndex = i;
|
18611
18629
|
this._cd.detectChanges();
|
18612
|
-
this.
|
18630
|
+
this._sync();
|
18613
18631
|
return;
|
18614
18632
|
}
|
18615
18633
|
}
|
@@ -18617,7 +18635,7 @@ class SlotsComponent {
|
|
18617
18635
|
await this._navParams(path, tab, params, queryParams, state);
|
18618
18636
|
this.group = tab.group;
|
18619
18637
|
this.selectedTabIndex = i;
|
18620
|
-
this.
|
18638
|
+
this._sync();
|
18621
18639
|
return;
|
18622
18640
|
}
|
18623
18641
|
i++;
|
@@ -18639,13 +18657,13 @@ class SlotsComponent {
|
|
18639
18657
|
else {
|
18640
18658
|
this._navQueryParams(pane, queryParams, state);
|
18641
18659
|
this.scrollTo(i);
|
18642
|
-
this.
|
18660
|
+
this._sync();
|
18643
18661
|
return;
|
18644
18662
|
}
|
18645
18663
|
}
|
18646
18664
|
else if (pane.route === route) {
|
18647
18665
|
await this._navParams(path, pane, params, queryParams, state);
|
18648
|
-
this.
|
18666
|
+
this._sync();
|
18649
18667
|
return;
|
18650
18668
|
}
|
18651
18669
|
i++;
|
@@ -18686,13 +18704,13 @@ class SlotsComponent {
|
|
18686
18704
|
pane._fullscreen$.next(this.panes.length === 1);
|
18687
18705
|
}
|
18688
18706
|
route &&
|
18689
|
-
this.
|
18707
|
+
this._sync();
|
18690
18708
|
}
|
18691
18709
|
else {
|
18692
18710
|
const pane = (policy & OpenPolicy.Tab) == OpenPolicy.Tab ?
|
18693
18711
|
this.tabs[this.selectedTabIndex] : this.panes[this.selectedIndex];
|
18694
18712
|
this._navQueryParams(pane, queryParams, state);
|
18695
|
-
this.
|
18713
|
+
this._sync();
|
18696
18714
|
if ((policy & OpenPolicy.Tab) != OpenPolicy.Tab)
|
18697
18715
|
this.select(this.selectedIndex);
|
18698
18716
|
}
|
@@ -18952,7 +18970,7 @@ class SlotsComponent {
|
|
18952
18970
|
this._cd.detectChanges();
|
18953
18971
|
}
|
18954
18972
|
/** */
|
18955
|
-
|
18973
|
+
_sync() {
|
18956
18974
|
this._navigating = true;
|
18957
18975
|
this._history('push');
|
18958
18976
|
setTimeout(() => this._navigating = false, 200);
|
@@ -18965,7 +18983,7 @@ class SlotsComponent {
|
|
18965
18983
|
let path = this.panes.filter(p => p.route).map(s => s.fullPath).join(PATH_CHAR);
|
18966
18984
|
if (this.tabs.length)
|
18967
18985
|
path += PANE_CHAR + this.tabs.filter(p => p.route).map(s => s.fullPath).join(PATH_CHAR);
|
18968
|
-
|
18986
|
+
const state = {
|
18969
18987
|
bizdoc: true,
|
18970
18988
|
step: history.state && history.state.bizdoc ? history.state.step + 1 : 1,
|
18971
18989
|
selectedTabIndex: this.selectedTabIndex,
|
@@ -18975,13 +18993,17 @@ class SlotsComponent {
|
|
18975
18993
|
group: this.group,
|
18976
18994
|
swapTab: this.swapTab,
|
18977
18995
|
prevGroup: this.prevGroup
|
18978
|
-
}
|
18996
|
+
};
|
18997
|
+
if (mode === 'push')
|
18998
|
+
history.pushState(state, '', '/' + path);
|
18999
|
+
else
|
19000
|
+
history.replaceState(state, '');
|
18979
19001
|
}
|
18980
19002
|
drop(evt) {
|
18981
19003
|
const pane = this.panes[evt.previousIndex];
|
18982
19004
|
this.panes.splice(evt.previousIndex, 1);
|
18983
19005
|
this.panes.splice(evt.currentIndex, 0, pane);
|
18984
|
-
this.
|
19006
|
+
this._sync();
|
18985
19007
|
}
|
18986
19008
|
togglePinned(pane) {
|
18987
19009
|
pane.pinned = !pane.pinned;
|
@@ -19114,8 +19136,11 @@ class SlotsComponent {
|
|
19114
19136
|
return pane;
|
19115
19137
|
}
|
19116
19138
|
_insertPane(component, options, position) {
|
19117
|
-
|
19118
|
-
const pane = this._constract(component, 'pane',
|
19139
|
+
const stretch = (options.policy & OpenPolicy.Stretch) == OpenPolicy.Stretch;
|
19140
|
+
const pane = this._constract(component, 'pane', {
|
19141
|
+
stretch,
|
19142
|
+
...options
|
19143
|
+
});
|
19119
19144
|
if (position === undefined)
|
19120
19145
|
position = this.panes.length;
|
19121
19146
|
this.panes.push(pane);
|
@@ -19145,6 +19170,11 @@ class SlotsComponent {
|
|
19145
19170
|
pane._comm$.subscribe(e => this._action(e, pane));
|
19146
19171
|
return pane;
|
19147
19172
|
}
|
19173
|
+
/**
|
19174
|
+
*
|
19175
|
+
* @param component
|
19176
|
+
* @param options
|
19177
|
+
*/
|
19148
19178
|
_insertTab(component, options) {
|
19149
19179
|
const { policy } = options, dialog = (policy & OpenPolicy.Dialog) == OpenPolicy.Dialog, dismissable = (policy & OpenPolicy.Dismissable) == OpenPolicy.Dismissable;
|
19150
19180
|
const tab = this._constract(component, 'tab', {
|
@@ -19153,7 +19183,6 @@ class SlotsComponent {
|
|
19153
19183
|
dismissable
|
19154
19184
|
});
|
19155
19185
|
this.tabs.push(tab);
|
19156
|
-
this.dialog = dialog;
|
19157
19186
|
this._router._events$.next(new NavigationStart(tab));
|
19158
19187
|
this._cd.detectChanges();
|
19159
19188
|
if (tab.group && this.group !== tab.group && options.swap !== false) {
|
@@ -19196,6 +19225,11 @@ class SlotsComponent {
|
|
19196
19225
|
this._back(this.swapTab);
|
19197
19226
|
this.swapTab = null;
|
19198
19227
|
}
|
19228
|
+
/**
|
19229
|
+
*
|
19230
|
+
* @param e
|
19231
|
+
* @param pane
|
19232
|
+
*/
|
19199
19233
|
_action(e, pane) {
|
19200
19234
|
switch (e) {
|
19201
19235
|
case 'focus':
|
@@ -19243,19 +19277,30 @@ class SlotsComponent {
|
|
19243
19277
|
this.tabs.splice(0, this.tabs.length);
|
19244
19278
|
this.selectedTabIndex = -1;
|
19245
19279
|
this.swapTab = null;
|
19246
|
-
this.
|
19247
|
-
this._replaceUrl();
|
19280
|
+
this._sync();
|
19248
19281
|
this._router._events$.next(new CollapseNavigation());
|
19249
19282
|
}
|
19283
|
+
onResize() {
|
19284
|
+
if (this.panes.length && !this.panes[this.panes.length - 1].stretch) {
|
19285
|
+
const el = this._panesContainerRef.element.nativeElement, child = el.lastElementChild;
|
19286
|
+
child.style.minWidth =
|
19287
|
+
(el.parentElement.parentElement.clientWidth - child.offsetLeft - 2) + 'px';
|
19288
|
+
}
|
19289
|
+
}
|
19250
19290
|
_resize() {
|
19291
|
+
//this.tabs.concat(this.panes).forEach(t => t._resize$.next({
|
19292
|
+
//} as any));
|
19251
19293
|
window.dispatchEvent(new Event('resize'));
|
19252
19294
|
}
|
19295
|
+
dismiss() {
|
19296
|
+
this.closeTab(this.selectedTabIndex);
|
19297
|
+
}
|
19253
19298
|
closeTab(position) {
|
19254
19299
|
const tab = this.tabs[position];
|
19255
19300
|
this.tabs.splice(position, 1);
|
19256
19301
|
this._destroyPane(tab);
|
19257
19302
|
this.selectedTabIndex = this.tabs.length ? position > 0 ? position - 1 : 0 : -1;
|
19258
|
-
this.
|
19303
|
+
this._sync();
|
19259
19304
|
}
|
19260
19305
|
expandPane() {
|
19261
19306
|
const pane = this.panes[this.selectedIndex];
|
@@ -19270,7 +19315,7 @@ class SlotsComponent {
|
|
19270
19315
|
i++;
|
19271
19316
|
} while (i < this.panes.length);
|
19272
19317
|
this.selectedIndex = 0;
|
19273
|
-
this.
|
19318
|
+
this._sync();
|
19274
19319
|
pane._fullscreen$.next(true);
|
19275
19320
|
}
|
19276
19321
|
_getHistoryStep() {
|
@@ -19286,7 +19331,7 @@ class SlotsComponent {
|
|
19286
19331
|
tab._mode$.next('pane');
|
19287
19332
|
tab._fullscreen$.next(true);
|
19288
19333
|
this.selectedTabIndex = this.tabs.length ? 0 : -1;
|
19289
|
-
this.
|
19334
|
+
this._sync();
|
19290
19335
|
}
|
19291
19336
|
select(position) {
|
19292
19337
|
if (this.selectedIndex === position)
|
@@ -19309,7 +19354,7 @@ class SlotsComponent {
|
|
19309
19354
|
this._discardPane(pane);
|
19310
19355
|
if (position >= this.selectedIndex)
|
19311
19356
|
this.select(-1);
|
19312
|
-
this.
|
19357
|
+
this._sync();
|
19313
19358
|
}
|
19314
19359
|
/**
|
19315
19360
|
*
|
@@ -19399,7 +19444,7 @@ class SlotsComponent {
|
|
19399
19444
|
const el = this._children.item(index);
|
19400
19445
|
el.focus();
|
19401
19446
|
}
|
19402
|
-
|
19447
|
+
onPaneResize(pane, event) {
|
19403
19448
|
const el = event.srcElement.previousElementSibling;
|
19404
19449
|
const // remember mouse down info
|
19405
19450
|
width = el.clientWidth, d = this._rtl ? -1 : 1;
|
@@ -19439,9 +19484,6 @@ class SlotsComponent {
|
|
19439
19484
|
const delta = Math.max((e.clientX - event.clientX) * d, -width);
|
19440
19485
|
el.style.width = el.style.minWidth = (width + delta) + 'px';
|
19441
19486
|
localStorage.setItem('tabs', el.style.width);
|
19442
|
-
// this.tabs[this.selectedTabIndex]._resize$.next({
|
19443
|
-
// height: el.clientHeight, width: width + delta
|
19444
|
-
// });
|
19445
19487
|
}
|
19446
19488
|
}
|
19447
19489
|
_destroyPane(pane) {
|
@@ -19454,7 +19496,7 @@ class SlotsComponent {
|
|
19454
19496
|
}
|
19455
19497
|
}
|
19456
19498
|
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 });
|
19457
|
-
SlotsComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.3.1", type: SlotsComponent, selector: "bizdoc-panes", host: { listeners: { "document:keydown.escape": "collapse()" } }, viewQueries: [{ propertyName: "_panesContainerRef", first: true, predicate: ["
|
19499
|
+
SlotsComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.3.1", type: SlotsComponent, selector: "bizdoc-panes", 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)=\"navigationArrows($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)=\"dismiss()\"></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 <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 p of tabs; let i = index\" class=\"mat-tab-link\"\r\n (click)=\"selectedTabIndex = i\"\r\n [active]=\"selectedTabIndex === i\">\r\n <mat-icon [matBadge]=\"p.badge\" [matBadgeHidden]=\"!p.badge\" matBadgeSize=\"small\" matBadgeColor=\"accent\">{{p.icon}}</mat-icon> \r\n {{p.title}}\r\n <mat-icon *ngIf=\"p.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,
|
19458
19500
|
panesTitleAnimation,
|
19459
19501
|
paneAnimation,
|
19460
19502
|
paramAnimation,
|
@@ -19471,13 +19513,13 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.1", ngImpor
|
|
19471
19513
|
queryAnimation,
|
19472
19514
|
tabsAnimation,
|
19473
19515
|
tabAnimation
|
19474
|
-
], template: "<div class=\"panes\">\r\n <div class=\"
|
19516
|
+
], 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)=\"navigationArrows($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)=\"dismiss()\"></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 <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 p of tabs; let i = index\" class=\"mat-tab-link\"\r\n (click)=\"selectedTabIndex = i\"\r\n [active]=\"selectedTabIndex === i\">\r\n <mat-icon [matBadge]=\"p.badge\" [matBadgeHidden]=\"!p.badge\" matBadgeSize=\"small\" matBadgeColor=\"accent\">{{p.icon}}</mat-icon> \r\n {{p.title}}\r\n <mat-icon *ngIf=\"p.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"] }]
|
19475
19517
|
}], ctorParameters: function () { return [{ type: undefined, decorators: [{
|
19476
19518
|
type: Inject,
|
19477
19519
|
args: [PANES_DATA]
|
19478
19520
|
}] }, { type: SessionService }, { type: i0.ChangeDetectorRef }, { type: PanesRouter }, { type: WindowTitleService }, { type: GuideService }, { type: i0.Injector }]; }, propDecorators: { _panesContainerRef: [{
|
19479
19521
|
type: ViewChild,
|
19480
|
-
args: ['
|
19522
|
+
args: ['panning', { read: ViewContainerRef, static: true }]
|
19481
19523
|
}], _tabsElement: [{
|
19482
19524
|
type: ViewChild,
|
19483
19525
|
args: ['tabing']
|
@@ -19487,6 +19529,9 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.1", ngImpor
|
|
19487
19529
|
}], collapse: [{
|
19488
19530
|
type: HostListener,
|
19489
19531
|
args: ['document:keydown.escape']
|
19532
|
+
}], onResize: [{
|
19533
|
+
type: HostListener,
|
19534
|
+
args: ['window:resize']
|
19490
19535
|
}] } });
|
19491
19536
|
const PANE_PARAMS_REGEX = /(:[\w\-]+)/g;
|
19492
19537
|
function prepareRoutes(routes, treePath) {
|
@@ -20044,7 +20089,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.1", ngImpor
|
|
20044
20089
|
const PANES_CONFIG = [{
|
20045
20090
|
path: 'dashboard',
|
20046
20091
|
component: DashboardPaneComponent,
|
20047
|
-
policy: OpenPolicy.Clear,
|
20092
|
+
policy: OpenPolicy.Clear | OpenPolicy.Stretch,
|
20048
20093
|
},
|
20049
20094
|
{ component: BrokenPage, path: 'broken' },
|
20050
20095
|
{
|
@@ -22759,7 +22804,10 @@ let PersonalScoreWidget = class PersonalScoreWidget {
|
|
22759
22804
|
width: 0, position: 'Outside'
|
22760
22805
|
};
|
22761
22806
|
this.legendSettings = {
|
22762
|
-
visible: true, position: 'Top', shape: 'Diamond', alignment: 'Center',
|
22807
|
+
visible: true, position: 'Top', shape: 'Diamond', alignment: 'Center',
|
22808
|
+
padding: 0, margin: { top: 0 },
|
22809
|
+
location: { y: 0 },
|
22810
|
+
textStyle: {
|
22763
22811
|
fontFamily: FONT_FAMILY
|
22764
22812
|
}
|
22765
22813
|
};
|
@@ -22868,6 +22916,15 @@ let PersonalScoreWidget = class PersonalScoreWidget {
|
|
22868
22916
|
}
|
22869
22917
|
_draw() {
|
22870
22918
|
this.gauge && this.gauge.destroy();
|
22919
|
+
const axes = [{
|
22920
|
+
radius: '90%', maximum: this.max,
|
22921
|
+
startAngle: 270,
|
22922
|
+
endAngle: 90,
|
22923
|
+
majorTicks: this.majorTicks, direction: this.direction,
|
22924
|
+
labelStyle: this.labelStyle, lineStyle: this.lineStyle, minorTicks: this.minorTicks,
|
22925
|
+
ranges: this.ranges,
|
22926
|
+
pointers: this.pointers
|
22927
|
+
}];
|
22871
22928
|
this.gauge = new CircularGauge({
|
22872
22929
|
tooltip: this.tooltip,
|
22873
22930
|
centerY: '50%',
|
@@ -22881,15 +22938,7 @@ let PersonalScoreWidget = class PersonalScoreWidget {
|
|
22881
22938
|
legendSettings: this.legendSettings,
|
22882
22939
|
tooltipRender: this.tooltipRender.bind(this),
|
22883
22940
|
enableRtl: this._session.inverse,
|
22884
|
-
axes
|
22885
|
-
radius: '90%', maximum: this.max,
|
22886
|
-
startAngle: 270,
|
22887
|
-
endAngle: 90,
|
22888
|
-
majorTicks: this.majorTicks, direction: this.direction,
|
22889
|
-
labelStyle: this.labelStyle, lineStyle: this.lineStyle, minorTicks: this.minorTicks,
|
22890
|
-
ranges: this.ranges,
|
22891
|
-
pointers: this.pointers
|
22892
|
-
}]
|
22941
|
+
axes
|
22893
22942
|
}, this._elementRef.nativeElement);
|
22894
22943
|
}
|
22895
22944
|
_refresh() {
|
@@ -27326,6 +27375,7 @@ SharedModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "
|
|
27326
27375
|
//{ provide: LOCALE_ID, useClass: SessionService.getLocale() },
|
27327
27376
|
{ provide: HTTP_INTERCEPTORS, useClass: AppHttpInterceptor, multi: true },
|
27328
27377
|
{ provide: APP_INITIALIZER, useFactory: TranslateProviderFactory, deps: [TranslateService], multi: true },
|
27378
|
+
{ provide: APP_INITIALIZER, useFactory: SessionProviderFactory, deps: [SessionService], multi: true },
|
27329
27379
|
], imports: [[
|
27330
27380
|
DayJsModule,
|
27331
27381
|
CommonModule,
|
@@ -27444,6 +27494,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.1", ngImpor
|
|
27444
27494
|
//{ provide: LOCALE_ID, useClass: SessionService.getLocale() },
|
27445
27495
|
{ provide: HTTP_INTERCEPTORS, useClass: AppHttpInterceptor, multi: true },
|
27446
27496
|
{ provide: APP_INITIALIZER, useFactory: TranslateProviderFactory, deps: [TranslateService], multi: true },
|
27497
|
+
{ provide: APP_INITIALIZER, useFactory: SessionProviderFactory, deps: [SessionService], multi: true },
|
27447
27498
|
],
|
27448
27499
|
exports: [FileInput, FilterTagsComponent,
|
27449
27500
|
DateFormatPipe, CalendarPipe, DifferencePipe, DurationPipe, TimeAgoPipe,
|
@@ -29944,6 +29995,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.1", ngImpor
|
|
29944
29995
|
}]
|
29945
29996
|
}] });
|
29946
29997
|
|
29998
|
+
registerLicense('ORg4AjUWIQA/Gnt2VVhhQlFaclhJXGFWfVJpTGpQdk5xdV9DaVZUTWY/P1ZhSXxRdkFjXX5ecnBUQ2lfVUI=');
|
29947
29999
|
class BizDocModule {
|
29948
30000
|
static forChild(config) {
|
29949
30001
|
const { components } = config;
|