@bizdoc/core 1.13.24 → 1.13.27
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 +15 -10
- package/assets/i18n/cldr-data/main/ar/ca-buddhist.json +530 -530
- package/assets/i18n/cldr-data/main/ar/ca-chinese.json +1254 -1254
- package/assets/i18n/cldr-data/main/ar/ca-coptic.json +539 -539
- package/assets/i18n/cldr-data/main/ar/ca-dangi.json +1254 -1254
- package/assets/i18n/cldr-data/main/ar/ca-ethiopic-amete-alem.json +536 -536
- package/assets/i18n/cldr-data/main/ar/ca-ethiopic.json +539 -539
- package/assets/i18n/cldr-data/main/ar/ca-generic.json +533 -533
- package/assets/i18n/cldr-data/main/ar/ca-gregorian.json +557 -557
- package/assets/i18n/cldr-data/main/ar/ca-hebrew.json +542 -542
- package/assets/i18n/cldr-data/main/ar/ca-indian.json +530 -530
- package/assets/i18n/cldr-data/main/ar/ca-islamic-civil.json +530 -530
- package/assets/i18n/cldr-data/main/ar/ca-islamic-rgsa.json +530 -530
- package/assets/i18n/cldr-data/main/ar/ca-islamic-tbla.json +530 -530
- package/assets/i18n/cldr-data/main/ar/ca-islamic-umalqura.json +530 -530
- package/assets/i18n/cldr-data/main/ar/ca-islamic.json +530 -530
- package/assets/i18n/cldr-data/main/ar/ca-japanese.json +1238 -1238
- package/assets/i18n/cldr-data/main/ar/ca-persian.json +530 -530
- package/assets/i18n/cldr-data/main/ar/ca-roc.json +533 -533
- package/assets/i18n/cldr-data/main/ar/characters.json +52 -52
- package/assets/i18n/cldr-data/main/ar/currencies.json +2306 -2306
- package/assets/i18n/cldr-data/main/ar/dateFields.json +1039 -1039
- package/assets/i18n/cldr-data/main/ar/delimiters.json +18 -18
- package/assets/i18n/cldr-data/main/ar/languages.json +556 -556
- package/assets/i18n/cldr-data/main/ar/layout.json +18 -18
- package/assets/i18n/cldr-data/main/ar/listPatterns.json +68 -68
- package/assets/i18n/cldr-data/main/ar/localeDisplayNames.json +230 -230
- package/assets/i18n/cldr-data/main/ar/measurementSystemNames.json +19 -19
- package/assets/i18n/cldr-data/main/ar/numbers.json +511 -511
- package/assets/i18n/cldr-data/main/ar/posix.json +18 -18
- package/assets/i18n/cldr-data/main/ar/scripts.json +202 -202
- package/assets/i18n/cldr-data/main/ar/territories.json +324 -324
- package/assets/i18n/cldr-data/main/ar/timeZoneNames.json +2268 -2268
- package/assets/i18n/cldr-data/main/ar/units.json +4587 -4587
- package/assets/i18n/cldr-data/main/ar/variants.json +119 -119
- package/assets/i18n/cldr-data/main/de/ca-buddhist.json +530 -530
- package/assets/i18n/cldr-data/main/de/ca-chinese.json +1254 -1254
- package/assets/i18n/cldr-data/main/de/ca-coptic.json +539 -539
- package/assets/i18n/cldr-data/main/de/ca-dangi.json +1254 -1254
- package/assets/i18n/cldr-data/main/de/ca-ethiopic-amete-alem.json +536 -536
- package/assets/i18n/cldr-data/main/de/ca-ethiopic.json +539 -539
- package/assets/i18n/cldr-data/main/de/ca-generic.json +533 -533
- package/assets/i18n/cldr-data/main/de/ca-gregorian.json +551 -551
- package/assets/i18n/cldr-data/main/de/ca-hebrew.json +542 -542
- package/assets/i18n/cldr-data/main/de/ca-indian.json +530 -530
- package/assets/i18n/cldr-data/main/de/ca-islamic-civil.json +530 -530
- package/assets/i18n/cldr-data/main/de/ca-islamic-rgsa.json +530 -530
- package/assets/i18n/cldr-data/main/de/ca-islamic-tbla.json +530 -530
- package/assets/i18n/cldr-data/main/de/ca-islamic-umalqura.json +530 -530
- package/assets/i18n/cldr-data/main/de/ca-islamic.json +530 -530
- package/assets/i18n/cldr-data/main/de/ca-japanese.json +1238 -1238
- package/assets/i18n/cldr-data/main/de/ca-persian.json +530 -530
- package/assets/i18n/cldr-data/main/de/ca-roc.json +533 -533
- package/assets/i18n/cldr-data/main/de/characters.json +52 -52
- package/assets/i18n/cldr-data/main/de/contextTransforms.json +18 -18
- package/assets/i18n/cldr-data/main/de/currencies.json +1932 -1932
- package/assets/i18n/cldr-data/main/de/dateFields.json +679 -679
- package/assets/i18n/cldr-data/main/de/delimiters.json +18 -18
- package/assets/i18n/cldr-data/main/de/languages.json +640 -640
- package/assets/i18n/cldr-data/main/de/layout.json +18 -18
- package/assets/i18n/cldr-data/main/de/listPatterns.json +68 -68
- package/assets/i18n/cldr-data/main/de/localeDisplayNames.json +230 -230
- package/assets/i18n/cldr-data/main/de/measurementSystemNames.json +19 -19
- package/assets/i18n/cldr-data/main/de/numbers.json +155 -155
- package/assets/i18n/cldr-data/main/de/posix.json +18 -18
- package/assets/i18n/cldr-data/main/de/scripts.json +209 -209
- package/assets/i18n/cldr-data/main/de/territories.json +324 -324
- package/assets/i18n/cldr-data/main/de/timeZoneNames.json +2332 -2332
- package/assets/i18n/cldr-data/main/de/units.json +2546 -2546
- package/assets/i18n/cldr-data/main/de/variants.json +119 -119
- package/assets/i18n/cldr-data/main/ru/ca-buddhist.json +524 -524
- package/assets/i18n/cldr-data/main/ru/ca-chinese.json +1248 -1248
- package/assets/i18n/cldr-data/main/ru/ca-coptic.json +533 -533
- package/assets/i18n/cldr-data/main/ru/ca-dangi.json +1248 -1248
- package/assets/i18n/cldr-data/main/ru/ca-ethiopic-amete-alem.json +530 -530
- package/assets/i18n/cldr-data/main/ru/ca-ethiopic.json +533 -533
- package/assets/i18n/cldr-data/main/ru/ca-generic.json +527 -527
- package/assets/i18n/cldr-data/main/ru/ca-gregorian.json +546 -546
- package/assets/i18n/cldr-data/main/ru/ca-hebrew.json +536 -536
- package/assets/i18n/cldr-data/main/ru/ca-indian.json +524 -524
- package/assets/i18n/cldr-data/main/ru/ca-islamic-civil.json +524 -524
- package/assets/i18n/cldr-data/main/ru/ca-islamic-rgsa.json +524 -524
- package/assets/i18n/cldr-data/main/ru/ca-islamic-tbla.json +524 -524
- package/assets/i18n/cldr-data/main/ru/ca-islamic-umalqura.json +524 -524
- package/assets/i18n/cldr-data/main/ru/ca-islamic.json +524 -524
- package/assets/i18n/cldr-data/main/ru/ca-japanese.json +1232 -1232
- package/assets/i18n/cldr-data/main/ru/ca-persian.json +524 -524
- package/assets/i18n/cldr-data/main/ru/ca-roc.json +527 -527
- package/assets/i18n/cldr-data/main/ru/characters.json +52 -52
- package/assets/i18n/cldr-data/main/ru/contextTransforms.json +62 -62
- package/assets/i18n/cldr-data/main/ru/currencies.json +2001 -2001
- package/assets/i18n/cldr-data/main/ru/dateFields.json +859 -859
- package/assets/i18n/cldr-data/main/ru/delimiters.json +18 -18
- package/assets/i18n/cldr-data/main/ru/languages.json +557 -557
- package/assets/i18n/cldr-data/main/ru/layout.json +18 -18
- package/assets/i18n/cldr-data/main/ru/listPatterns.json +68 -68
- package/assets/i18n/cldr-data/main/ru/localeDisplayNames.json +230 -230
- package/assets/i18n/cldr-data/main/ru/measurementSystemNames.json +19 -19
- package/assets/i18n/cldr-data/main/ru/numbers.json +231 -231
- package/assets/i18n/cldr-data/main/ru/posix.json +18 -18
- package/assets/i18n/cldr-data/main/ru/scripts.json +209 -209
- package/assets/i18n/cldr-data/main/ru/territories.json +324 -324
- package/assets/i18n/cldr-data/main/ru/timeZoneNames.json +2317 -2317
- package/assets/i18n/cldr-data/main/ru/units.json +3647 -3647
- package/assets/i18n/cldr-data/main/ru/variants.json +119 -119
- package/esm2020/lib/compose/attachments/preview/attachment-preview.component.mjs +6 -6
- package/esm2020/lib/compose/trace/flow.component.mjs +10 -13
- package/esm2020/lib/compose/version-compare/version.pane.component.mjs +2 -2
- package/esm2020/lib/core/controls/file.input.mjs +3 -3
- package/esm2020/lib/core/http.interceptor.mjs +3 -3
- package/esm2020/lib/core/info/attachment-info.service.mjs +1 -1
- package/esm2020/lib/core/mailbox.service.mjs +3 -3
- package/esm2020/lib/core/translate.service.mjs +24 -7
- package/esm2020/lib/core/translations.mjs +8 -4
- package/esm2020/lib/cube/accum/accum.component.mjs +3 -3
- package/esm2020/lib/cube/chart/chart.component.mjs +3 -3
- package/esm2020/lib/cube/cube.service.mjs +12 -1
- package/esm2020/lib/cube/grid/grid.component.mjs +3 -2
- package/esm2020/lib/cube/grid/spreadsheet.component.mjs +10 -7
- package/esm2020/lib/cube/matrix/table.component.mjs +3 -2
- package/esm2020/lib/cube/parallel/parallel.component.mjs +3 -3
- package/esm2020/lib/cube/pivot/pivot.component.mjs +3 -3
- package/esm2020/lib/cube/sum/sum.component.mjs +21 -21
- package/esm2020/lib/shared.module.mjs +3 -1
- package/esm2020/lib/views/cube/matrix.component.mjs +1 -1
- package/fesm2015/bizdoc-core.mjs +89 -58
- package/fesm2015/bizdoc-core.mjs.map +1 -1
- package/fesm2020/bizdoc-core.mjs +89 -58
- package/fesm2020/bizdoc-core.mjs.map +1 -1
- package/lib/core/controls/address.input.d.ts +1 -1
- package/lib/core/mailbox.service.d.ts +1 -1
- package/lib/core/translations.d.ts +4 -0
- package/lib/cube/cube.service.d.ts +2 -1
- package/lib/cube/grid/spreadsheet.component.d.ts +0 -1
- package/lib/cube/sum/sum.component.d.ts +4 -1
- package/package.json +13 -13
package/fesm2020/bizdoc-core.mjs
CHANGED
@@ -146,6 +146,7 @@ import player from 'lottie-web/build/player/lottie';
|
|
146
146
|
import relativeTime from 'dayjs/plugin/relativeTime';
|
147
147
|
import duration from 'dayjs/plugin/duration';
|
148
148
|
import calendar from 'dayjs/plugin/calendar';
|
149
|
+
import updateLocale from 'dayjs/plugin/updateLocale';
|
149
150
|
|
150
151
|
const expandListItemAnimation = trigger('detailExpand', [
|
151
152
|
state('collapsed', style({ height: '0px', minHeight: '0', display: '' })),
|
@@ -1253,9 +1254,9 @@ class MailboxService {
|
|
1253
1254
|
folder.count++;
|
1254
1255
|
});
|
1255
1256
|
}
|
1256
|
-
formatDownloadUrl(documentId, fileId) {
|
1257
|
+
formatDownloadUrl(documentId, fileId, inline) {
|
1257
1258
|
const token = this._auth.getAccessToken();
|
1258
|
-
return `/api/attachments/${documentId}/${fileId}?access_token=${token}`;
|
1259
|
+
return `/api/attachments/${documentId}/${fileId}?access_token=${token}&inline=${inline ? true : false}`;
|
1259
1260
|
}
|
1260
1261
|
download(documentId, fileId) {
|
1261
1262
|
//new Observable<any>(observe => {
|
@@ -1935,6 +1936,8 @@ const STRINGS = {
|
|
1935
1936
|
'ar': {},
|
1936
1937
|
'ru': {},
|
1937
1938
|
'en': {
|
1939
|
+
TodayAt: 'Today at',
|
1940
|
+
Tomorrow: 'Tomorrow',
|
1938
1941
|
Editing: '{0} editing...',
|
1939
1942
|
CheckOut: 'Check out',
|
1940
1943
|
CheckIn: 'Check in',
|
@@ -2118,8 +2121,8 @@ const STRINGS = {
|
|
2118
2121
|
ChangeLanguage: 'Language',
|
2119
2122
|
NewMail: 'New {0} #{1} {2}',
|
2120
2123
|
OpenNew: 'Open',
|
2121
|
-
SendErr: '
|
2122
|
-
SubmitErr: '
|
2124
|
+
SendErr: 'Something went wrong -:(',
|
2125
|
+
SubmitErr: 'Something went wrong -:(',
|
2123
2126
|
SaveErr: 'Unable to save. Please make sure you filled the form correctly.',
|
2124
2127
|
VersionBy: 'By:',
|
2125
2128
|
VersionDate: 'Date:',
|
@@ -2258,7 +2261,7 @@ const STRINGS = {
|
|
2258
2261
|
Mute: 'Mute',
|
2259
2262
|
Unmute: 'Unmute',
|
2260
2263
|
NoNotifications: 'No notifications',
|
2261
|
-
Err: '
|
2264
|
+
Err: 'Something went wrong -:(',
|
2262
2265
|
SendSelected: 'Send {0} item(s)',
|
2263
2266
|
SaveChanges: 'Save changes',
|
2264
2267
|
SaveChangesAsk: 'Are you sure you want to exit without saving?',
|
@@ -2395,6 +2398,8 @@ const STRINGS = {
|
|
2395
2398
|
Working: 'Working on it...'
|
2396
2399
|
},
|
2397
2400
|
'he': {
|
2401
|
+
TodayAt: 'היום ב-',
|
2402
|
+
Tomorrow: 'מחר',
|
2398
2403
|
Editing: '{0} עורך/ת...',
|
2399
2404
|
EditingMale: '{0} עורך...',
|
2400
2405
|
EditingFemale: '{0} עורכת...',
|
@@ -2971,19 +2976,36 @@ class TranslateService {
|
|
2971
2976
|
this._session = _session;
|
2972
2977
|
this._http = _http;
|
2973
2978
|
TranslateService.resource = STRINGS['en'];
|
2979
|
+
const culture = _session.language.split('-')[0];
|
2974
2980
|
if ('en' !== _session.language) {
|
2975
2981
|
Object.assign(TranslateService.resource, STRINGS[_session.language]);
|
2976
|
-
const culture = _session.language.split('-')[0];
|
2977
2982
|
dayjs.locale(culture);
|
2978
2983
|
// syncfusion
|
2979
2984
|
L10n.load(L18N_STRINGS);
|
2980
2985
|
setCulture(culture);
|
2981
|
-
|
2982
|
-
|
2983
|
-
|
2984
|
-
|
2986
|
+
switch (culture) {
|
2987
|
+
case 'he':
|
2988
|
+
registerLocaleData(localeHe, 'he');
|
2989
|
+
break;
|
2990
|
+
case 'ru':
|
2991
|
+
registerLocaleData(localeRu, 'ru');
|
2992
|
+
break;
|
2993
|
+
case 'ar':
|
2994
|
+
registerLocaleData(localeAr, 'ar');
|
2995
|
+
break;
|
2996
|
+
case 'de':
|
2997
|
+
registerLocaleData(localeDe, 'de');
|
2998
|
+
break;
|
2999
|
+
}
|
2985
3000
|
}
|
2986
|
-
|
3001
|
+
dayjs.updateLocale(culture, {
|
3002
|
+
//sameDay: `[${this.get('TodayAt')}] h:mm A`,
|
3003
|
+
//nextDay: `[${this.get('Tomorrow')}] h:mm A`,
|
3004
|
+
//nextWeek: 'dddd',
|
3005
|
+
//lastDay: `[${this.get('Yesterday')}] h:mm A`,
|
3006
|
+
//lastWeek: '[Last] dddd LT',
|
3007
|
+
sameElse: 'LLL'
|
3008
|
+
});
|
2987
3009
|
_session.loaded.subscribe(() => this._gender = this._session.gender);
|
2988
3010
|
}
|
2989
3011
|
static set(resources) {
|
@@ -4687,7 +4709,7 @@ class AttachmentPreview {
|
|
4687
4709
|
this._afterClosed = new Subject();
|
4688
4710
|
this.dir = _directionality.value;
|
4689
4711
|
this.isImage = isImage(this.data.file.contentType);
|
4690
|
-
this.objectData = sanitizer.bypassSecurityTrustResourceUrl(this._url());
|
4712
|
+
this.objectData = sanitizer.bypassSecurityTrustResourceUrl(this._url(true));
|
4691
4713
|
this.beforeClose().subscribe(() => this.slideDown = 'leave');
|
4692
4714
|
}
|
4693
4715
|
resize() {
|
@@ -4705,8 +4727,8 @@ class AttachmentPreview {
|
|
4705
4727
|
download() {
|
4706
4728
|
location.assign(this._url());
|
4707
4729
|
}
|
4708
|
-
_url() {
|
4709
|
-
return this._service.formatDownloadUrl(this.data.documentId, this.data.file.id);
|
4730
|
+
_url(inline) {
|
4731
|
+
return this._service.formatDownloadUrl(this.data.documentId, this.data.file.id, inline);
|
4710
4732
|
}
|
4711
4733
|
rotate() {
|
4712
4734
|
const elem = (this.isImage ? this.img : this.obj).nativeElement;
|
@@ -4749,7 +4771,7 @@ class AttachmentPreview {
|
|
4749
4771
|
}
|
4750
4772
|
}
|
4751
4773
|
AttachmentPreview.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.2.3", ngImport: i0, type: AttachmentPreview, deps: [{ token: i7$2.Directionality }, { token: i0.Renderer2 }, { token: FILE_PREVIEW_DIALOG_DATA }, { token: i1$5.DomSanitizer }, { token: MailboxService }, { token: i1$4.OverlayRef }], target: i0.ɵɵFactoryTarget.Component });
|
4752
|
-
AttachmentPreview.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.2.3", type: AttachmentPreview, selector: "bizdoc-attachment-preview", host: { listeners: { "document:resize": "resize()", "document:keydown.escape": "close()" } }, viewQueries: [{ propertyName: "obj", first: true, predicate: ["obj"], descendants: true }, { propertyName: "img", first: true, predicate: ["img"], descendants: true, static: true }], ngImport: i0, template: "<div class=\"overlay-content\" [@slideContent]=\"animationState\" (@slideContent.start)=\"onAnimationStart($event)\"\r\n
|
4774
|
+
AttachmentPreview.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.2.3", type: AttachmentPreview, selector: "bizdoc-attachment-preview", host: { listeners: { "document:resize": "resize()", "document:keydown.escape": "close()" } }, viewQueries: [{ propertyName: "obj", first: true, predicate: ["obj"], descendants: true }, { propertyName: "img", first: true, predicate: ["img"], descendants: true, static: true }], ngImport: i0, template: "<div class=\"overlay-content\" [@slideContent]=\"animationState\" (@slideContent.start)=\"onAnimationStart($event)\"\r\n [dir]=\"dir\" (@slideContent.done)=\"onAnimationDone($event)\">\r\n <div class=\"toolbar-wrapper\" fxLayout=\"row\" [@slideDown]=\"slideDown\" *ngIf=\"!loading\">\r\n <button mat-icon-button (click)=\"close()\" bizdocTooltip=\"{{'Back' | translate}}\"><mat-icon class=\"mat-icon-rtl-mirror\">keyboard_arrow_left</mat-icon></button>\r\n <span class=\"mat-body-1\">{{data.file.fileName}}</span>\r\n <span class=\"divider\"></span>\r\n <button mat-icon-button (click)=\"rotate()\" bizdocTooltip=\"{{'Rotate' | translate }}\"><mat-icon>screen_rotation</mat-icon></button>\r\n <button mat-icon-button (click)=\"download()\" bizdocTooltip=\"{{'Download' | translate}}\"><mat-icon>save_alt</mat-icon></button>\r\n </div>\r\n <div class=\"spinner-wrapper\" *ngIf=\"loading\">\r\n <mat-spinner></mat-spinner>\r\n </div>\r\n <object (load)=\"onLoad($event)\" [data]=\"objectData\" [type]=\"data.file.contentType\" *ngIf=\"!isImage\" #obj width=\"250\"\r\n height=\"200\">\r\n </object>\r\n <img *ngIf=\"isImage\" (load)=\"onLoad($event)\" [style.opacity]=\"loading ? 0 : 1\" [@fade]=\"loading ? 'fadeOut' : 'fadeIn'\" [src]=\"objectData\" #img>\r\n</div>\r\n", styles: [":host{display:flex;flex-direction:column;align-items:center}.spinner-wrapper{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);z-index:-1}img{width:100%;max-width:500px;height:auto}.overlay-content{padding:1em}.overlay-content .toolbar-wrapper{align-items:center;color:#f5f5f5}.divider{flex:1 1 auto}\n"], components: [{ type: i7$1.MatButton, selector: "button[mat-button], button[mat-raised-button], button[mat-icon-button], button[mat-fab], button[mat-mini-fab], button[mat-stroked-button], button[mat-flat-button]", inputs: ["disabled", "disableRipple", "color"], exportAs: ["matButton"] }, { type: i8.MatIcon, selector: "mat-icon", inputs: ["color", "inline", "svgIcon", "fontSet", "fontIcon"], exportAs: ["matIcon"] }, { type: i8$1.MatSpinner, selector: "mat-spinner", inputs: ["color"] }], directives: [{ type: i7$2.Dir, selector: "[dir]", inputs: ["dir"], outputs: ["dirChange"], exportAs: ["dir"] }, { type: i10.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { type: i6$1.DefaultLayoutDirective, selector: " [fxLayout], [fxLayout.xs], [fxLayout.sm], [fxLayout.md], [fxLayout.lg], [fxLayout.xl], [fxLayout.lt-sm], [fxLayout.lt-md], [fxLayout.lt-lg], [fxLayout.lt-xl], [fxLayout.gt-xs], [fxLayout.gt-sm], [fxLayout.gt-md], [fxLayout.gt-lg]", inputs: ["fxLayout", "fxLayout.xs", "fxLayout.sm", "fxLayout.md", "fxLayout.lg", "fxLayout.xl", "fxLayout.lt-sm", "fxLayout.lt-md", "fxLayout.lt-lg", "fxLayout.lt-xl", "fxLayout.gt-xs", "fxLayout.gt-sm", "fxLayout.gt-md", "fxLayout.gt-lg"] }, { type: TooltipDirective, selector: "[bizdocTooltip]", inputs: ["bizdocTooltip", "bizdocTooltipTemplate", "bizdocTooltipContext", "bizdocTooltipPosition", "bizdocTooltipDuration", "bizdocTooltipDisabled"] }], pipes: { "translate": TranslatePipe }, animations: [
|
4753
4775
|
trigger('fade', [
|
4754
4776
|
state('fadeOut', style({ opacity: 0 })),
|
4755
4777
|
state('fadeIn', style({ opacity: 1 })),
|
@@ -4788,7 +4810,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.2.3", ngImpor
|
|
4788
4810
|
state('leave', style({ transform: 'translate3d(0, 25%, 0)', opacity: 0 })),
|
4789
4811
|
transition('* => *', animate(ANIMATION_TIMINGS)),
|
4790
4812
|
])
|
4791
|
-
], template: "<div class=\"overlay-content\" [@slideContent]=\"animationState\" (@slideContent.start)=\"onAnimationStart($event)\"\r\n
|
4813
|
+
], template: "<div class=\"overlay-content\" [@slideContent]=\"animationState\" (@slideContent.start)=\"onAnimationStart($event)\"\r\n [dir]=\"dir\" (@slideContent.done)=\"onAnimationDone($event)\">\r\n <div class=\"toolbar-wrapper\" fxLayout=\"row\" [@slideDown]=\"slideDown\" *ngIf=\"!loading\">\r\n <button mat-icon-button (click)=\"close()\" bizdocTooltip=\"{{'Back' | translate}}\"><mat-icon class=\"mat-icon-rtl-mirror\">keyboard_arrow_left</mat-icon></button>\r\n <span class=\"mat-body-1\">{{data.file.fileName}}</span>\r\n <span class=\"divider\"></span>\r\n <button mat-icon-button (click)=\"rotate()\" bizdocTooltip=\"{{'Rotate' | translate }}\"><mat-icon>screen_rotation</mat-icon></button>\r\n <button mat-icon-button (click)=\"download()\" bizdocTooltip=\"{{'Download' | translate}}\"><mat-icon>save_alt</mat-icon></button>\r\n </div>\r\n <div class=\"spinner-wrapper\" *ngIf=\"loading\">\r\n <mat-spinner></mat-spinner>\r\n </div>\r\n <object (load)=\"onLoad($event)\" [data]=\"objectData\" [type]=\"data.file.contentType\" *ngIf=\"!isImage\" #obj width=\"250\"\r\n height=\"200\">\r\n </object>\r\n <img *ngIf=\"isImage\" (load)=\"onLoad($event)\" [style.opacity]=\"loading ? 0 : 1\" [@fade]=\"loading ? 'fadeOut' : 'fadeIn'\" [src]=\"objectData\" #img>\r\n</div>\r\n", styles: [":host{display:flex;flex-direction:column;align-items:center}.spinner-wrapper{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);z-index:-1}img{width:100%;max-width:500px;height:auto}.overlay-content{padding:1em}.overlay-content .toolbar-wrapper{align-items:center;color:#f5f5f5}.divider{flex:1 1 auto}\n"] }]
|
4792
4814
|
}], ctorParameters: function () { return [{ type: i7$2.Directionality }, { type: i0.Renderer2 }, { type: undefined, decorators: [{
|
4793
4815
|
type: Inject,
|
4794
4816
|
args: [FILE_PREVIEW_DIALOG_DATA]
|
@@ -5371,10 +5393,10 @@ class FileInput {
|
|
5371
5393
|
}
|
5372
5394
|
FileInput.nextId = 0;
|
5373
5395
|
FileInput.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.2.3", ngImport: i0, type: FileInput, deps: [{ token: i0.ElementRef }, { token: MailboxService }, { token: i1$5.DomSanitizer }, { token: AttachmentInfo }, { token: TranslateService }, { token: SessionService }, { token: PromptService }, { token: i1$2.NgControl, optional: true, self: true }, { token: DOCUMENT_MODEL }], target: i0.ɵɵFactoryTarget.Component });
|
5374
|
-
FileInput.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.2.3", type: FileInput, selector: "bizdoc-file-upload", inputs: { multiple: "multiple", accept: "accept", icon: "icon", value: "value", placeholder: "placeholder", required: "required", disabled: "disabled" }, host: { listeners: { "document:drop": "handleDocumentDrop($event)", "drop": "handleDrop($event)", "dragenter": "handleEnter($event)", "dragleave": "handleLeave($event)", "dragover": "handleOver($event)" }, properties: { "id": "this.id", "attr.aria-describedby": "this.describedBy" }, classAttribute: "file-dropable" }, viewQueries: [{ propertyName: "_input", first: true, predicate: ["input"], descendants: true }], ngImport: i0, template: "<button mat-button *ngIf=\"!items; else preview\" (click)=\"prompt()\">\r\n <mat-icon class=\"filled\">{{icon}}</mat-icon>\r\n <span class=\"mat-h3\">{{placeholder}}</span>\r\n</button>\r\n<input type=\"file\" #input\r\n [accept]=accept [multiple]=multiple (change)='_change($event)' style=\"display: none\" />\r\n<ng-template #preview>\r\n <div *ngFor='let a of items' class=\"attachment-item\"\r\n [class.deleted]=\"a.deleted\" [class.failed]=\"a.failed\"\r\n [progressIndicator]=\"a.progress\">\r\n <img *ngIf=\"a.isImage\" [src]=\"a.url\" (click)=\"openPreview(a)\" height=\"80\" class=\"file-preview\">\r\n <div *ngIf=\"a.hasPreview && !a.isImage\" fxLayout=\"column\" class=\"file-preview\">\r\n <button mat-icon-button (click)=\"openPreview(a)\" [bizdocTooltip]=\"'Preview'|translate\"><mat-icon class=\"mat-icon-rtl-mirror\">find_in_page</mat-icon></button>\r\n <span>.{{a.fileExt}}</span>\r\n </div>\r\n <mat-icon *ngIf=\"a.icon\" [svgIcon]=\"a.icon\" [inline]=\"true\"></mat-icon>\r\n <div class=\"file-overlay row\">\r\n <span class=\"filename\">{{a.fileName}}</span>\r\n <span class=\"divider\"></span>\r\n <button mat-icon-button class=\"options\" [matMenuTriggerFor]=\"menu\" [bizdocTooltip]=\"'Options' | translate\">\r\n <mat-icon>more_vert</mat-icon>\r\n </button>\r\n </div>\r\n <mat-menu #menu>\r\n <ng-container *ngIf=\"!a.failed\">\r\n <ng-container *ngIf=\"canEdit(a) && !a.failed\">\r\n <ng-container *ngIf=\"!a.checkedOut\">\r\n <button mat-menu-item (click)=\"checkOut(a)\">{{\"CheckOut\" | translate}}</button>\r\n <button mat-menu-item (click)=\"prompt()\">{{\"Add\" | translate}}</button>\r\n </ng-container>\r\n <button mat-menu-item (click)=\"checkIn(a)\" *ngIf=\"a.checkedOut\">{{\"CheckIn\" | translate}}</button>\r\n </ng-container>\r\n <mat-divider></mat-divider>\r\n <button mat-menu-item (click)=\"download(a)\">{{\"Download\" | translate}}</button>\r\n <button mat-menu-item *ngIf=\"canPreview(a)\" (click)=\"openPreview(a)\"><mat-icon>landscape</mat-icon> {{\"Preview\" | translate}}</button>\r\n <ng-container *ngIf=\"hasVersion(a)\">\r\n <mat-divider></mat-divider>\r\n <button mat-menu-item *ngFor=\"let v of getVersions(a)\" (click)=\"previewOrDownload(v)\">{{v.time | amCalendar}}</button>\r\n </ng-container>\r\n <ng-container *ngIf=\"canEdit(a)\">\r\n <mat-divider></mat-divider>\r\n <button mat-menu-item (click)=\"discard(a)\">{{\"Discard\" | translate}}</button>\r\n </ng-container>\r\n </ng-container>\r\n <button mat-menu-item (click)=\"cancel(a)\" *ngIf=\"a.failed\">{{\"Cancel\" | translate}}</button>\r\n </mat-menu>\r\n </div>\r\n</ng-template>\r\n", styles: [":host{display:flex}.attachment-item{height:80px;position:relative}.attachment-item img{cursor:zoom-in}.attachment-item .file-preview{position:absolute}.attachment-item .file-overlay{position:relative;height:inherit}.attachment-item .file-overlay .filename{font-size:x-small;cursor:pointer;background:rgba(255,255,255,.4);align-self:flex-end}.attachment-item .file-overlay:hover .filename{background:white;opacity:.5}\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: i9.MatMenu, selector: "mat-menu", exportAs: ["matMenu"] }, { type: i9.MatMenuItem, selector: "[mat-menu-item]", inputs: ["disabled", "disableRipple", "role"], exportAs: ["matMenuItem"] }, { type: i12$2.MatDivider, selector: "mat-divider", inputs: ["vertical", "inset"] }], directives: [{ type: i10.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { type: i10.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { type: ProgressDirective, selector: "[progressIndicator]", inputs: ["progressIndicator"] }, { type: i6$1.DefaultLayoutDirective, selector: " [fxLayout], [fxLayout.xs], [fxLayout.sm], [fxLayout.md], [fxLayout.lg], [fxLayout.xl], [fxLayout.lt-sm], [fxLayout.lt-md], [fxLayout.lt-lg], [fxLayout.lt-xl], [fxLayout.gt-xs], [fxLayout.gt-sm], [fxLayout.gt-md], [fxLayout.gt-lg]", inputs: ["fxLayout", "fxLayout.xs", "fxLayout.sm", "fxLayout.md", "fxLayout.lg", "fxLayout.xl", "fxLayout.lt-sm", "fxLayout.lt-md", "fxLayout.lt-lg", "fxLayout.lt-xl", "fxLayout.gt-xs", "fxLayout.gt-sm", "fxLayout.gt-md", "fxLayout.gt-lg"] }, { type: TooltipDirective, selector: "[bizdocTooltip]", inputs: ["bizdocTooltip", "bizdocTooltipTemplate", "bizdocTooltipContext", "bizdocTooltipPosition", "bizdocTooltipDuration", "bizdocTooltipDisabled"] }, { type: i9.MatMenuTrigger, selector: "[mat-menu-trigger-for], [matMenuTriggerFor]", exportAs: ["matMenuTrigger"] }], pipes: { "translate": TranslatePipe, "amCalendar": CalendarPipe } });
|
5396
|
+
FileInput.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.2.3", type: FileInput, selector: "bizdoc-file-upload", inputs: { multiple: "multiple", accept: "accept", icon: "icon", value: "value", placeholder: "placeholder", required: "required", disabled: "disabled" }, host: { listeners: { "document:drop": "handleDocumentDrop($event)", "drop": "handleDrop($event)", "dragenter": "handleEnter($event)", "dragleave": "handleLeave($event)", "dragover": "handleOver($event)" }, properties: { "id": "this.id", "attr.aria-describedby": "this.describedBy" }, classAttribute: "file-dropable" }, viewQueries: [{ propertyName: "_input", first: true, predicate: ["input"], descendants: true }], ngImport: i0, template: "<button mat-button *ngIf=\"!items; else preview\" (click)=\"prompt()\">\r\n <mat-icon class=\"filled\">{{icon}}</mat-icon>\r\n <span class=\"mat-h3\">{{placeholder}}</span>\r\n</button>\r\n<input type=\"file\" #input\r\n [accept]=accept [multiple]=multiple (change)='_change($event)' style=\"display: none\" />\r\n<ng-template #preview>\r\n <div *ngFor='let a of items' class=\"attachment-item\"\r\n [class.deleted]=\"a.deleted\" [class.failed]=\"a.failed\"\r\n [progressIndicator]=\"a.progress\">\r\n <img *ngIf=\"a.isImage\" [src]=\"a.url\" (click)=\"openPreview(a)\" height=\"80\" class=\"file-preview\">\r\n <div *ngIf=\"a.hasPreview && !a.isImage\" fxLayout=\"column\" class=\"file-preview\">\r\n <button mat-icon-button (click)=\"openPreview(a)\" [bizdocTooltip]=\"'Preview'|translate\"><mat-icon class=\"mat-icon-rtl-mirror\">find_in_page</mat-icon></button>\r\n <span>.{{a.fileExt}}</span>\r\n </div>\r\n <mat-icon *ngIf=\"a.icon\" [svgIcon]=\"a.icon\" [inline]=\"true\"></mat-icon>\r\n <div class=\"file-overlay row\">\r\n <span class=\"filename\">{{a.fileName}}</span>\r\n <span class=\"divider\"></span>\r\n <button mat-icon-button class=\"options\" [matMenuTriggerFor]=\"menu\" [bizdocTooltip]=\"'Options' | translate\">\r\n <mat-icon>more_vert</mat-icon>\r\n </button>\r\n </div>\r\n <mat-menu #menu>\r\n <ng-container *ngIf=\"!a.failed\">\r\n <ng-container *ngIf=\"canEdit(a) && !a.failed\">\r\n <ng-container *ngIf=\"!a.checkedOut\">\r\n <button mat-menu-item (click)=\"checkOut(a)\">{{\"CheckOut\" | translate}}</button>\r\n <button mat-menu-item (click)=\"prompt()\" *ngIf=\"multiple\">{{\"Add\" | translate}}</button>\r\n </ng-container>\r\n <button mat-menu-item (click)=\"checkIn(a)\" *ngIf=\"a.checkedOut\">{{\"CheckIn\" | translate}}</button>\r\n </ng-container>\r\n <mat-divider></mat-divider>\r\n <button mat-menu-item (click)=\"download(a)\">{{\"Download\" | translate}}</button>\r\n <button mat-menu-item *ngIf=\"canPreview(a)\" (click)=\"openPreview(a)\"><mat-icon>landscape</mat-icon> {{\"Preview\" | translate}}</button>\r\n <ng-container *ngIf=\"hasVersion(a)\">\r\n <mat-divider></mat-divider>\r\n <button mat-menu-item *ngFor=\"let v of getVersions(a)\" (click)=\"previewOrDownload(v)\">{{v.time | amCalendar}}</button>\r\n </ng-container>\r\n <ng-container *ngIf=\"canEdit(a)\">\r\n <mat-divider></mat-divider>\r\n <button mat-menu-item (click)=\"discard(a)\">{{\"Discard\" | translate}}</button>\r\n </ng-container>\r\n </ng-container>\r\n <button mat-menu-item (click)=\"cancel(a)\" *ngIf=\"a.failed\">{{\"Cancel\" | translate}}</button>\r\n </mat-menu>\r\n </div>\r\n</ng-template>\r\n", styles: [":host{display:flex}.attachment-item{height:80px;position:relative}.attachment-item img{cursor:zoom-in}.attachment-item .file-preview{position:absolute}.attachment-item .file-overlay{position:relative;height:inherit}.attachment-item .file-overlay .filename{font-size:x-small;cursor:pointer;background:rgba(255,255,255,.4);align-self:flex-end}.attachment-item .file-overlay:hover .filename{background:white;opacity:.5}\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: i9.MatMenu, selector: "mat-menu", exportAs: ["matMenu"] }, { type: i9.MatMenuItem, selector: "[mat-menu-item]", inputs: ["disabled", "disableRipple", "role"], exportAs: ["matMenuItem"] }, { type: i12$2.MatDivider, selector: "mat-divider", inputs: ["vertical", "inset"] }], directives: [{ type: i10.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { type: i10.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { type: ProgressDirective, selector: "[progressIndicator]", inputs: ["progressIndicator"] }, { type: i6$1.DefaultLayoutDirective, selector: " [fxLayout], [fxLayout.xs], [fxLayout.sm], [fxLayout.md], [fxLayout.lg], [fxLayout.xl], [fxLayout.lt-sm], [fxLayout.lt-md], [fxLayout.lt-lg], [fxLayout.lt-xl], [fxLayout.gt-xs], [fxLayout.gt-sm], [fxLayout.gt-md], [fxLayout.gt-lg]", inputs: ["fxLayout", "fxLayout.xs", "fxLayout.sm", "fxLayout.md", "fxLayout.lg", "fxLayout.xl", "fxLayout.lt-sm", "fxLayout.lt-md", "fxLayout.lt-lg", "fxLayout.lt-xl", "fxLayout.gt-xs", "fxLayout.gt-sm", "fxLayout.gt-md", "fxLayout.gt-lg"] }, { type: TooltipDirective, selector: "[bizdocTooltip]", inputs: ["bizdocTooltip", "bizdocTooltipTemplate", "bizdocTooltipContext", "bizdocTooltipPosition", "bizdocTooltipDuration", "bizdocTooltipDisabled"] }, { type: i9.MatMenuTrigger, selector: "[mat-menu-trigger-for], [matMenuTriggerFor]", exportAs: ["matMenuTrigger"] }], pipes: { "translate": TranslatePipe, "amCalendar": CalendarPipe } });
|
5375
5397
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.2.3", ngImport: i0, type: FileInput, decorators: [{
|
5376
5398
|
type: Component,
|
5377
|
-
args: [{ host: { class: 'file-dropable' }, selector: 'bizdoc-file-upload', template: "<button mat-button *ngIf=\"!items; else preview\" (click)=\"prompt()\">\r\n <mat-icon class=\"filled\">{{icon}}</mat-icon>\r\n <span class=\"mat-h3\">{{placeholder}}</span>\r\n</button>\r\n<input type=\"file\" #input\r\n [accept]=accept [multiple]=multiple (change)='_change($event)' style=\"display: none\" />\r\n<ng-template #preview>\r\n <div *ngFor='let a of items' class=\"attachment-item\"\r\n [class.deleted]=\"a.deleted\" [class.failed]=\"a.failed\"\r\n [progressIndicator]=\"a.progress\">\r\n <img *ngIf=\"a.isImage\" [src]=\"a.url\" (click)=\"openPreview(a)\" height=\"80\" class=\"file-preview\">\r\n <div *ngIf=\"a.hasPreview && !a.isImage\" fxLayout=\"column\" class=\"file-preview\">\r\n <button mat-icon-button (click)=\"openPreview(a)\" [bizdocTooltip]=\"'Preview'|translate\"><mat-icon class=\"mat-icon-rtl-mirror\">find_in_page</mat-icon></button>\r\n <span>.{{a.fileExt}}</span>\r\n </div>\r\n <mat-icon *ngIf=\"a.icon\" [svgIcon]=\"a.icon\" [inline]=\"true\"></mat-icon>\r\n <div class=\"file-overlay row\">\r\n <span class=\"filename\">{{a.fileName}}</span>\r\n <span class=\"divider\"></span>\r\n <button mat-icon-button class=\"options\" [matMenuTriggerFor]=\"menu\" [bizdocTooltip]=\"'Options' | translate\">\r\n <mat-icon>more_vert</mat-icon>\r\n </button>\r\n </div>\r\n <mat-menu #menu>\r\n <ng-container *ngIf=\"!a.failed\">\r\n <ng-container *ngIf=\"canEdit(a) && !a.failed\">\r\n <ng-container *ngIf=\"!a.checkedOut\">\r\n <button mat-menu-item (click)=\"checkOut(a)\">{{\"CheckOut\" | translate}}</button>\r\n <button mat-menu-item (click)=\"prompt()\">{{\"Add\" | translate}}</button>\r\n </ng-container>\r\n <button mat-menu-item (click)=\"checkIn(a)\" *ngIf=\"a.checkedOut\">{{\"CheckIn\" | translate}}</button>\r\n </ng-container>\r\n <mat-divider></mat-divider>\r\n <button mat-menu-item (click)=\"download(a)\">{{\"Download\" | translate}}</button>\r\n <button mat-menu-item *ngIf=\"canPreview(a)\" (click)=\"openPreview(a)\"><mat-icon>landscape</mat-icon> {{\"Preview\" | translate}}</button>\r\n <ng-container *ngIf=\"hasVersion(a)\">\r\n <mat-divider></mat-divider>\r\n <button mat-menu-item *ngFor=\"let v of getVersions(a)\" (click)=\"previewOrDownload(v)\">{{v.time | amCalendar}}</button>\r\n </ng-container>\r\n <ng-container *ngIf=\"canEdit(a)\">\r\n <mat-divider></mat-divider>\r\n <button mat-menu-item (click)=\"discard(a)\">{{\"Discard\" | translate}}</button>\r\n </ng-container>\r\n </ng-container>\r\n <button mat-menu-item (click)=\"cancel(a)\" *ngIf=\"a.failed\">{{\"Cancel\" | translate}}</button>\r\n </mat-menu>\r\n </div>\r\n</ng-template>\r\n", styles: [":host{display:flex}.attachment-item{height:80px;position:relative}.attachment-item img{cursor:zoom-in}.attachment-item .file-preview{position:absolute}.attachment-item .file-overlay{position:relative;height:inherit}.attachment-item .file-overlay .filename{font-size:x-small;cursor:pointer;background:rgba(255,255,255,.4);align-self:flex-end}.attachment-item .file-overlay:hover .filename{background:white;opacity:.5}\n"] }]
|
5399
|
+
args: [{ host: { class: 'file-dropable' }, selector: 'bizdoc-file-upload', template: "<button mat-button *ngIf=\"!items; else preview\" (click)=\"prompt()\">\r\n <mat-icon class=\"filled\">{{icon}}</mat-icon>\r\n <span class=\"mat-h3\">{{placeholder}}</span>\r\n</button>\r\n<input type=\"file\" #input\r\n [accept]=accept [multiple]=multiple (change)='_change($event)' style=\"display: none\" />\r\n<ng-template #preview>\r\n <div *ngFor='let a of items' class=\"attachment-item\"\r\n [class.deleted]=\"a.deleted\" [class.failed]=\"a.failed\"\r\n [progressIndicator]=\"a.progress\">\r\n <img *ngIf=\"a.isImage\" [src]=\"a.url\" (click)=\"openPreview(a)\" height=\"80\" class=\"file-preview\">\r\n <div *ngIf=\"a.hasPreview && !a.isImage\" fxLayout=\"column\" class=\"file-preview\">\r\n <button mat-icon-button (click)=\"openPreview(a)\" [bizdocTooltip]=\"'Preview'|translate\"><mat-icon class=\"mat-icon-rtl-mirror\">find_in_page</mat-icon></button>\r\n <span>.{{a.fileExt}}</span>\r\n </div>\r\n <mat-icon *ngIf=\"a.icon\" [svgIcon]=\"a.icon\" [inline]=\"true\"></mat-icon>\r\n <div class=\"file-overlay row\">\r\n <span class=\"filename\">{{a.fileName}}</span>\r\n <span class=\"divider\"></span>\r\n <button mat-icon-button class=\"options\" [matMenuTriggerFor]=\"menu\" [bizdocTooltip]=\"'Options' | translate\">\r\n <mat-icon>more_vert</mat-icon>\r\n </button>\r\n </div>\r\n <mat-menu #menu>\r\n <ng-container *ngIf=\"!a.failed\">\r\n <ng-container *ngIf=\"canEdit(a) && !a.failed\">\r\n <ng-container *ngIf=\"!a.checkedOut\">\r\n <button mat-menu-item (click)=\"checkOut(a)\">{{\"CheckOut\" | translate}}</button>\r\n <button mat-menu-item (click)=\"prompt()\" *ngIf=\"multiple\">{{\"Add\" | translate}}</button>\r\n </ng-container>\r\n <button mat-menu-item (click)=\"checkIn(a)\" *ngIf=\"a.checkedOut\">{{\"CheckIn\" | translate}}</button>\r\n </ng-container>\r\n <mat-divider></mat-divider>\r\n <button mat-menu-item (click)=\"download(a)\">{{\"Download\" | translate}}</button>\r\n <button mat-menu-item *ngIf=\"canPreview(a)\" (click)=\"openPreview(a)\"><mat-icon>landscape</mat-icon> {{\"Preview\" | translate}}</button>\r\n <ng-container *ngIf=\"hasVersion(a)\">\r\n <mat-divider></mat-divider>\r\n <button mat-menu-item *ngFor=\"let v of getVersions(a)\" (click)=\"previewOrDownload(v)\">{{v.time | amCalendar}}</button>\r\n </ng-container>\r\n <ng-container *ngIf=\"canEdit(a)\">\r\n <mat-divider></mat-divider>\r\n <button mat-menu-item (click)=\"discard(a)\">{{\"Discard\" | translate}}</button>\r\n </ng-container>\r\n </ng-container>\r\n <button mat-menu-item (click)=\"cancel(a)\" *ngIf=\"a.failed\">{{\"Cancel\" | translate}}</button>\r\n </mat-menu>\r\n </div>\r\n</ng-template>\r\n", styles: [":host{display:flex}.attachment-item{height:80px;position:relative}.attachment-item img{cursor:zoom-in}.attachment-item .file-preview{position:absolute}.attachment-item .file-overlay{position:relative;height:inherit}.attachment-item .file-overlay .filename{font-size:x-small;cursor:pointer;background:rgba(255,255,255,.4);align-self:flex-end}.attachment-item .file-overlay:hover .filename{background:white;opacity:.5}\n"] }]
|
5378
5400
|
}], ctorParameters: function () { return [{ type: i0.ElementRef }, { type: MailboxService }, { type: i1$5.DomSanitizer }, { type: AttachmentInfo }, { type: TranslateService }, { type: SessionService }, { type: PromptService }, { type: i1$2.NgControl, decorators: [{
|
5379
5401
|
type: Optional
|
5380
5402
|
}, {
|
@@ -6601,6 +6623,17 @@ function modelize() {
|
|
6601
6623
|
});
|
6602
6624
|
return data;
|
6603
6625
|
}));
|
6626
|
+
}
|
6627
|
+
function errResource(error) {
|
6628
|
+
switch (error.status) {
|
6629
|
+
case 401:
|
6630
|
+
return 'Unauthorized';
|
6631
|
+
case 426:
|
6632
|
+
return 'LicenseErr';
|
6633
|
+
case 406:
|
6634
|
+
return 'Unauthorized';
|
6635
|
+
}
|
6636
|
+
return null;
|
6604
6637
|
}
|
6605
6638
|
|
6606
6639
|
class ArraySortPipe {
|
@@ -9480,7 +9513,7 @@ class CubeAccumulationChartComponent {
|
|
9480
9513
|
this._draw();
|
9481
9514
|
this.loadingChange.emit(false);
|
9482
9515
|
}, (e) => {
|
9483
|
-
this._sb.error(e
|
9516
|
+
this._sb.error(errResource(e));
|
9484
9517
|
this.loadingChange.emit(false);
|
9485
9518
|
});
|
9486
9519
|
}
|
@@ -9734,7 +9767,7 @@ class CubeChartComponent {
|
|
9734
9767
|
this._draw();
|
9735
9768
|
this.loadingChange.emit(false);
|
9736
9769
|
}, (e) => {
|
9737
|
-
this._sb.error(e
|
9770
|
+
this._sb.error(errResource(e));
|
9738
9771
|
this.loadingChange.emit(false);
|
9739
9772
|
});
|
9740
9773
|
}
|
@@ -10025,7 +10058,7 @@ class CubeGridComponent {
|
|
10025
10058
|
this.loadingChange.emit(false);
|
10026
10059
|
});
|
10027
10060
|
}, (e) => {
|
10028
|
-
this._sb.error(e
|
10061
|
+
this._sb.error(errResource(e));
|
10029
10062
|
this.loadingChange.emit(false);
|
10030
10063
|
});
|
10031
10064
|
}
|
@@ -10331,7 +10364,7 @@ class CubePivotComponent {
|
|
10331
10364
|
this._draw();
|
10332
10365
|
this.loadingChange.emit(false);
|
10333
10366
|
}, (e) => {
|
10334
|
-
this._sb.error(e
|
10367
|
+
this._sb.error(errResource(e));
|
10335
10368
|
this.loadingChange.emit(false);
|
10336
10369
|
});
|
10337
10370
|
}
|
@@ -10710,18 +10743,20 @@ class CubeSpreadsheetComponent {
|
|
10710
10743
|
this._draw();
|
10711
10744
|
this.loadingChange.emit(false);
|
10712
10745
|
});
|
10713
|
-
}, e =>
|
10746
|
+
}, e => {
|
10747
|
+
this._sb.error(errResource(e));
|
10748
|
+
this.loadingChange.emit(false);
|
10749
|
+
});
|
10714
10750
|
else
|
10715
10751
|
this._service.table(this._cube.name, this._xAxis, { filters: this.filters, indices: this._indices }).
|
10716
10752
|
subscribe(data => {
|
10717
10753
|
this._datatable(data);
|
10718
10754
|
this._draw();
|
10719
10755
|
this.loadingChange.emit(false);
|
10720
|
-
}, e =>
|
10721
|
-
|
10722
|
-
|
10723
|
-
|
10724
|
-
this.loadingChange.emit(false);
|
10756
|
+
}, e => {
|
10757
|
+
this._sb.error(errResource(e));
|
10758
|
+
this.loadingChange.emit(false);
|
10759
|
+
});
|
10725
10760
|
}
|
10726
10761
|
_datatable(data) {
|
10727
10762
|
const cells = [], style = { fontWeight: 'bold', textAlign: 'center' };
|
@@ -14073,20 +14108,17 @@ class FlowViewComponent extends TraceBase {
|
|
14073
14108
|
}
|
14074
14109
|
for (let connector of dconnectors) {
|
14075
14110
|
let sources = nodes.filter(n => n.addInfo.node.id === connector.sourceId), targets = nodes.filter(n => n.addInfo.node.id === connector.targetId);
|
14076
|
-
for (let source of sources)
|
14111
|
+
for (let source of sources)
|
14077
14112
|
for (let target of targets) {
|
14078
|
-
|
14079
|
-
|
14080
|
-
|
14081
|
-
|
14082
|
-
|
14083
|
-
|
14084
|
-
|
14085
|
-
|
14086
|
-
}
|
14087
|
-
});
|
14113
|
+
connectors.push({
|
14114
|
+
sourceID: source.id,
|
14115
|
+
targetID: target.id,
|
14116
|
+
addInfo: {
|
14117
|
+
estimate: connector.estimate,
|
14118
|
+
time: connector.time
|
14119
|
+
}
|
14120
|
+
});
|
14088
14121
|
}
|
14089
|
-
}
|
14090
14122
|
}
|
14091
14123
|
return { connectors, nodes, indicators };
|
14092
14124
|
}
|
@@ -14821,7 +14853,7 @@ class VersionPaneComponent {
|
|
14821
14853
|
lastDay: `[${this._translate.get('Yesterday')}] HH:mm`,
|
14822
14854
|
lastWeek: 'dddd HH:mm',
|
14823
14855
|
sameDay: `[${this._translate.get('Today')}] HH:mm`,
|
14824
|
-
sameElse: 'MMM
|
14856
|
+
sameElse: 'MMM D HH:mm'
|
14825
14857
|
};
|
14826
14858
|
_pane.title = _translate.get('Version');
|
14827
14859
|
}
|
@@ -15345,7 +15377,7 @@ class CubeMatrixComponent {
|
|
15345
15377
|
clearTimeout(progressTask);
|
15346
15378
|
this.loadingChange.next(this.loading = false);
|
15347
15379
|
}, (e) => {
|
15348
|
-
this._sb.error(e
|
15380
|
+
this._sb.error(errResource(e));
|
15349
15381
|
clearTimeout(progressTask);
|
15350
15382
|
this.loadingChange.next(this.loading = false);
|
15351
15383
|
this.loadingChange.error(e);
|
@@ -17715,10 +17747,10 @@ class AppHttpInterceptor {
|
|
17715
17747
|
if (this._authenticating)
|
17716
17748
|
return this._authenticating;
|
17717
17749
|
else if (e.status === 401) {
|
17718
|
-
this._session.ok && this._router.navigate(['broken']);
|
17750
|
+
//this._session.ok && this._router.navigate(['broken']);
|
17719
17751
|
this._authenticating = this._auth.authorize().pipe(switchMap$1(() => {
|
17720
17752
|
this._authenticating = null;
|
17721
|
-
this._session.ok && history.back();
|
17753
|
+
//this._session.ok && history.back();
|
17722
17754
|
return forward();
|
17723
17755
|
}));
|
17724
17756
|
return this._authenticating;
|
@@ -25731,9 +25763,10 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.2.3", ngImpor
|
|
25731
25763
|
}], ctorParameters: function () { return [{ type: SessionService }, { type: DocumentViewRef }, { type: CubeService }, { type: RouterImpl }]; } });
|
25732
25764
|
|
25733
25765
|
class CubeSumComponent {
|
25734
|
-
constructor(_ds, _service, _session) {
|
25766
|
+
constructor(_ds, _service, _sb, _session) {
|
25735
25767
|
this._ds = _ds;
|
25736
25768
|
this._service = _service;
|
25769
|
+
this._sb = _sb;
|
25737
25770
|
this._session = _session;
|
25738
25771
|
this.onExplore = new EventEmitter();
|
25739
25772
|
this.back = true;
|
@@ -25773,13 +25806,7 @@ class CubeSumComponent {
|
|
25773
25806
|
indices: this.indices,
|
25774
25807
|
scope: this.scope,
|
25775
25808
|
filters
|
25776
|
-
}).toPromise();
|
25777
|
-
function fill(serie, point) {
|
25778
|
-
if (serie.index)
|
25779
|
-
this.current.indices.push({ name: serie.index, title: serie.title, value: point.y });
|
25780
|
-
else
|
25781
|
-
this.current = { axis: point.x, name: axis, value: point.y, indices: [] };
|
25782
|
-
}
|
25809
|
+
}).toPromise().catch(this._handleErr.bind(this));
|
25783
25810
|
for (var i = 0; i < results.length; i++) {
|
25784
25811
|
const { index, title, points } = results[i];
|
25785
25812
|
for (var j = 0; j < points.length; j++) {
|
@@ -25821,7 +25848,7 @@ class CubeSumComponent {
|
|
25821
25848
|
indices: this.indices,
|
25822
25849
|
scope: this.scope,
|
25823
25850
|
filters
|
25824
|
-
}).toPromise();
|
25851
|
+
}).toPromise().catch(this._handleErr.bind(this));
|
25825
25852
|
const level = { axis, indices: [], scope };
|
25826
25853
|
for (var i = 0; i < results.length; i++) {
|
25827
25854
|
const { index, title, points } = results[i];
|
@@ -25840,6 +25867,9 @@ class CubeSumComponent {
|
|
25840
25867
|
else if (keyIndex === keys.length - 1)
|
25841
25868
|
this.next = await parallel(1);
|
25842
25869
|
}
|
25870
|
+
_handleErr(response) {
|
25871
|
+
this._sb.error(errResource(response));
|
25872
|
+
}
|
25843
25873
|
async _fish(axis) {
|
25844
25874
|
this.loading = true;
|
25845
25875
|
try {
|
@@ -25849,7 +25879,7 @@ class CubeSumComponent {
|
|
25849
25879
|
indices: this.indices, filters,
|
25850
25880
|
scope: this.scope
|
25851
25881
|
}).
|
25852
|
-
toPromise();
|
25882
|
+
toPromise().catch(this._handleErr.bind(this));
|
25853
25883
|
this.current = {
|
25854
25884
|
axis,
|
25855
25885
|
value: 0,
|
@@ -26038,7 +26068,7 @@ class CubeSumComponent {
|
|
26038
26068
|
const results = this._scoperesults = await this._service.series(this._cube.name, this.xAxis, {
|
26039
26069
|
indices: this.indices, filters,
|
26040
26070
|
scope: this.scope
|
26041
|
-
}).toPromise();
|
26071
|
+
}).toPromise().catch(this._handleErr.bind(this));
|
26042
26072
|
this._scope = scope;
|
26043
26073
|
if (!results.some(s => s.points.length))
|
26044
26074
|
return;
|
@@ -26091,7 +26121,7 @@ class CubeSumComponent {
|
|
26091
26121
|
this.onExplore.emit({ axes, index });
|
26092
26122
|
}
|
26093
26123
|
}
|
26094
|
-
CubeSumComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.2.3", ngImport: i0, type: CubeSumComponent, deps: [{ token: DatasourceService }, { token: CubeService }, { token: SessionService }], target: i0.ɵɵFactoryTarget.Component });
|
26124
|
+
CubeSumComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.2.3", ngImport: i0, type: CubeSumComponent, deps: [{ token: DatasourceService }, { token: CubeService }, { token: PromptService }, { token: SessionService }], target: i0.ɵɵFactoryTarget.Component });
|
26095
26125
|
CubeSumComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.2.3", type: CubeSumComponent, selector: "bizdoc-cube-sum", inputs: { xAxis: "xAxis", periodPolicy: "periodPolicy", parentAxis: "parentAxis", filters: "filters", cube: "cube", indices: "indices", scope: "scope" }, outputs: { onExplore: "explore" }, usesOnChanges: true, ngImport: i0, template: " <!-- levels -->\r\n<div class=\"row\">\r\n <div *ngIf=\"prev\" class=\"level prev-level\">\r\n <div class=\"level-header row\">\r\n <mat-icon class=\"cliclable mat-icon-rtl-mirror\" [inline]=true (click)=\"goprev()\" *ngIf=\"back\">keyboard_arrow_left</mat-icon>\r\n <div div class=\"mat-h1 title\">\r\n {{'PrevLevel'| translate}}\r\n </div>\r\n <span class=\"divider\"></span>\r\n <mat-icon *ngIf=\"forward\" class=\"cliclable mat-icon-rtl-mirror\" [inline]=true (click)=\"gonext()\">keyboard_arrow_right</mat-icon>\r\n </div>\r\n <ng-container *ngTemplateOutlet=\"level; context: {use: prev}\"></ng-container>\r\n </div>\r\n <div *ngIf=\"current\" class=\"level current-level\">\r\n <div class=\"level-header row\">\r\n <div div class=\"mat-h1 title\">\r\n {{'CurrentLevel'| translate : primaryAxis.title}}\r\n </div>\r\n <span class=\"divider\"></span>\r\n <mat-icon [bizdocTooltip]=\"help\" *ngIf=\"help\" [inline]=\"true\">help_outline</mat-icon>\r\n </div>\r\n <ng-container *ngTemplateOutlet=\"level; context: {use: current}\"></ng-container>\r\n </div>\r\n <div *ngIf=\"next\" class=\"level next-level\">\r\n <div class=\"level-header\">\r\n <div div class=\"mat-h1 title\">\r\n {{'NextLevel'| translate}}\r\n </div>\r\n </div>\r\n <ng-container *ngTemplateOutlet=\"level; context: {use: next}\"></ng-container>\r\n </div>\r\n</div>\r\n<!-- level -->\r\n<ng-template #level let-use=\"use\" let-help=\"help\">\r\n <div>\r\n <h2 class=\"mat-h1\" [class.cliclable]=\"use.value !== 0\" (click)=\"explore(use)\">{{use.title}}</h2>\r\n <div class=\"row\">\r\n <h3 class=\"mat-h1\" [class.cliclable]=\"use.value !== 0\" (click)=\"explore(use)\">{{use.value | currency : currencyCode : 'symbol' : digitsInfo}}</h3>\r\n <span class=\"divider\"></span>\r\n <div *ngIf=\"use.chain && use.value !== use.chain.value\">\r\n <span *ngIf=\"use.value !== 0 && use.chain.value !== 0\">{{Math.round(use.value / use.chain.value * 100) }}%</span>\r\n <mat-icon>{{use.value > use.chain.value ? 'trending_up':'trending_down' }}</mat-icon>\r\n </div>\r\n </div>\r\n </div>\r\n <!-- -->\r\n <div class=\"row\">\r\n <div *ngFor=\"let i of use.indices\" class=\"index\">\r\n <h4 class=\"mat-h3 title\">{{i.title}}</h4>\r\n <h5 class=\"mat-h3\" [class.cliclable]=\"i.value !== 0\" (click)=\"explore(use, i.name)\">{{i.value | currency : currencyCode : 'symbol' : digitsInfo}}</h5>\r\n </div>\r\n </div>\r\n <div class=\"bar\" *ngIf=\"use.indices.length\" [class.available]=\"use.percent < 100\">\r\n <div class=\"value\" [style.flexBasis]=\"Math.round(use.percent < 100 ?\r\n 100 - use.percent :\r\n 100 / use.percent * 100) + '%'\"\r\n [@bar]=\"use.animation\"></div>\r\n <div class=\"overflow\" *ngIf=\"use.percent > 0\"></div>\r\n </div>\r\n</ng-template>\r\n", styles: [":host{padding:0 8px}.level{border-width:thin;border-radius:3px;padding:8px;margin:3px;flex:1 1 0;border-style:solid}.level .cliclable{cursor:pointer}.level.next-level{border-style:dashed}.level .level-header{align-items:center}.level .level-header .title{margin:0;line-height:22px;font-size:inherit;font-feature-settings:\"pcap\",\"c2pc\";font-variant-caps:all-petite-caps}.level h3{margin:0;font-size:x-large}.level h2{font-weight:400;font-size:larger;margin:0}.level .percent{display:flex;align-items:center}.level .index{padding:0 4px}.level .index h5,.level .index h4{margin:0}.level .bar{display:flex}.level .bar .value,.level .bar .overflow{height:12px}.level .bar .value{flex:0 0 0%}.level .bar .overflow{flex:1 1 0%;box-sizing:border-box}.level .bar.available .overflow{border-width:1px;border-style:dashed}\n"], components: [{ type: i8.MatIcon, selector: "mat-icon", inputs: ["color", "inline", "svgIcon", "fontSet", "fontIcon"], exportAs: ["matIcon"] }], directives: [{ type: i10.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { type: i10.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet"] }, { type: TooltipDirective, selector: "[bizdocTooltip]", inputs: ["bizdocTooltip", "bizdocTooltipTemplate", "bizdocTooltipContext", "bizdocTooltipPosition", "bizdocTooltipDuration", "bizdocTooltipDisabled"] }, { type: i10.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }], pipes: { "translate": TranslatePipe, "currency": i10.CurrencyPipe }, animations: [trigger('bar', [
|
26096
26126
|
transition('*<=>*', [style({
|
26097
26127
|
flexBasis: '{{startWidth}}%'
|
@@ -26104,7 +26134,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.2.3", ngImpor
|
|
26104
26134
|
flexBasis: '{{startWidth}}%'
|
26105
26135
|
}), animate('500ms ease')], { params: { startWidth: 100 } }),
|
26106
26136
|
])], template: " <!-- levels -->\r\n<div class=\"row\">\r\n <div *ngIf=\"prev\" class=\"level prev-level\">\r\n <div class=\"level-header row\">\r\n <mat-icon class=\"cliclable mat-icon-rtl-mirror\" [inline]=true (click)=\"goprev()\" *ngIf=\"back\">keyboard_arrow_left</mat-icon>\r\n <div div class=\"mat-h1 title\">\r\n {{'PrevLevel'| translate}}\r\n </div>\r\n <span class=\"divider\"></span>\r\n <mat-icon *ngIf=\"forward\" class=\"cliclable mat-icon-rtl-mirror\" [inline]=true (click)=\"gonext()\">keyboard_arrow_right</mat-icon>\r\n </div>\r\n <ng-container *ngTemplateOutlet=\"level; context: {use: prev}\"></ng-container>\r\n </div>\r\n <div *ngIf=\"current\" class=\"level current-level\">\r\n <div class=\"level-header row\">\r\n <div div class=\"mat-h1 title\">\r\n {{'CurrentLevel'| translate : primaryAxis.title}}\r\n </div>\r\n <span class=\"divider\"></span>\r\n <mat-icon [bizdocTooltip]=\"help\" *ngIf=\"help\" [inline]=\"true\">help_outline</mat-icon>\r\n </div>\r\n <ng-container *ngTemplateOutlet=\"level; context: {use: current}\"></ng-container>\r\n </div>\r\n <div *ngIf=\"next\" class=\"level next-level\">\r\n <div class=\"level-header\">\r\n <div div class=\"mat-h1 title\">\r\n {{'NextLevel'| translate}}\r\n </div>\r\n </div>\r\n <ng-container *ngTemplateOutlet=\"level; context: {use: next}\"></ng-container>\r\n </div>\r\n</div>\r\n<!-- level -->\r\n<ng-template #level let-use=\"use\" let-help=\"help\">\r\n <div>\r\n <h2 class=\"mat-h1\" [class.cliclable]=\"use.value !== 0\" (click)=\"explore(use)\">{{use.title}}</h2>\r\n <div class=\"row\">\r\n <h3 class=\"mat-h1\" [class.cliclable]=\"use.value !== 0\" (click)=\"explore(use)\">{{use.value | currency : currencyCode : 'symbol' : digitsInfo}}</h3>\r\n <span class=\"divider\"></span>\r\n <div *ngIf=\"use.chain && use.value !== use.chain.value\">\r\n <span *ngIf=\"use.value !== 0 && use.chain.value !== 0\">{{Math.round(use.value / use.chain.value * 100) }}%</span>\r\n <mat-icon>{{use.value > use.chain.value ? 'trending_up':'trending_down' }}</mat-icon>\r\n </div>\r\n </div>\r\n </div>\r\n <!-- -->\r\n <div class=\"row\">\r\n <div *ngFor=\"let i of use.indices\" class=\"index\">\r\n <h4 class=\"mat-h3 title\">{{i.title}}</h4>\r\n <h5 class=\"mat-h3\" [class.cliclable]=\"i.value !== 0\" (click)=\"explore(use, i.name)\">{{i.value | currency : currencyCode : 'symbol' : digitsInfo}}</h5>\r\n </div>\r\n </div>\r\n <div class=\"bar\" *ngIf=\"use.indices.length\" [class.available]=\"use.percent < 100\">\r\n <div class=\"value\" [style.flexBasis]=\"Math.round(use.percent < 100 ?\r\n 100 - use.percent :\r\n 100 / use.percent * 100) + '%'\"\r\n [@bar]=\"use.animation\"></div>\r\n <div class=\"overflow\" *ngIf=\"use.percent > 0\"></div>\r\n </div>\r\n</ng-template>\r\n", styles: [":host{padding:0 8px}.level{border-width:thin;border-radius:3px;padding:8px;margin:3px;flex:1 1 0;border-style:solid}.level .cliclable{cursor:pointer}.level.next-level{border-style:dashed}.level .level-header{align-items:center}.level .level-header .title{margin:0;line-height:22px;font-size:inherit;font-feature-settings:\"pcap\",\"c2pc\";font-variant-caps:all-petite-caps}.level h3{margin:0;font-size:x-large}.level h2{font-weight:400;font-size:larger;margin:0}.level .percent{display:flex;align-items:center}.level .index{padding:0 4px}.level .index h5,.level .index h4{margin:0}.level .bar{display:flex}.level .bar .value,.level .bar .overflow{height:12px}.level .bar .value{flex:0 0 0%}.level .bar .overflow{flex:1 1 0%;box-sizing:border-box}.level .bar.available .overflow{border-width:1px;border-style:dashed}\n"] }]
|
26107
|
-
}], ctorParameters: function () { return [{ type: DatasourceService }, { type: CubeService }, { type: SessionService }]; }, propDecorators: { xAxis: [{
|
26137
|
+
}], ctorParameters: function () { return [{ type: DatasourceService }, { type: CubeService }, { type: PromptService }, { type: SessionService }]; }, propDecorators: { xAxis: [{
|
26108
26138
|
type: Input
|
26109
26139
|
}], periodPolicy: [{
|
26110
26140
|
type: Input
|
@@ -26390,7 +26420,7 @@ class CubeParallelComponent {
|
|
26390
26420
|
this.width = Math.max(Math.round(this.size / this.items.length), 150) + 'px';
|
26391
26421
|
this._loading.next(false);
|
26392
26422
|
}, (e) => {
|
26393
|
-
this._sb.error(e
|
26423
|
+
this._sb.error(errResource(e));
|
26394
26424
|
this._loading.next(false);
|
26395
26425
|
});
|
26396
26426
|
}
|
@@ -26906,6 +26936,7 @@ dayjs.extend(relativeTime, {
|
|
26906
26936
|
});
|
26907
26937
|
dayjs.extend(duration);
|
26908
26938
|
dayjs.extend(calendar);
|
26939
|
+
dayjs.extend(updateLocale);
|
26909
26940
|
const CORE_COMPONENTS = [CubeCompareWidget, CubeParallelViewComponent, CubeExploreViewComponent, CubeChartViewComponent, CubeDocumentSumComponent, CubeDocumentMatrixComponent, CubeDocumentViewComponent, CubePivotViewComponent, TimelineViewComponent,
|
26910
26941
|
SubstitutionComponent, MoveToActionComponent, AssignActionComponent, ReturnActionComponent, ExploreDocumentComponent,
|
26911
26942
|
ActionsWidget, CubeAnalysisWidget, CubeDocumentsWidget, RecentsWidget, PersonalActivityWidget,
|