@bizdoc/core 2.3.44 → 2.4.2
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/assets/bizdoc-schema.json +4 -2
- package/assets/themes/brown.min.css +1 -1
- package/assets/themes/dark.min.css +1 -1
- package/assets/themes/deep-purple-light-blue.min.css +12 -8
- package/assets/themes/deep-purple-teal.min.css +1 -1
- package/assets/themes/default.min.css +12 -8
- package/assets/themes/green.min.css +1 -1
- package/assets/themes/indigo.min.css +1 -1
- package/esm2022/lib/admin/architecture/designer-element.component.mjs +7 -2
- package/esm2022/lib/admin/architecture/elements/action.component.mjs +1 -1
- package/esm2022/lib/admin/architecture/elements/attribute.component.mjs +1 -1
- package/esm2022/lib/admin/architecture/elements/control.component.mjs +1 -1
- package/esm2022/lib/admin/architecture/elements/cube.component.mjs +13 -5
- package/esm2022/lib/admin/architecture/elements/folder.component.mjs +1 -1
- package/esm2022/lib/admin/architecture/elements/form.component.mjs +1 -1
- package/esm2022/lib/admin/architecture/elements/guide.component.mjs +1 -1
- package/esm2022/lib/admin/architecture/elements/job.component.mjs +1 -1
- package/esm2022/lib/admin/architecture/elements/node.component.mjs +1 -1
- package/esm2022/lib/admin/architecture/elements/policy.component.mjs +1 -1
- package/esm2022/lib/admin/architecture/elements/report.component.mjs +1 -1
- package/esm2022/lib/admin/architecture/elements/role.component.mjs +1 -1
- package/esm2022/lib/admin/architecture/elements/rule.component.mjs +1 -1
- package/esm2022/lib/admin/architecture/elements/source.component.mjs +1 -1
- package/esm2022/lib/admin/architecture/elements/state.component.mjs +1 -1
- package/esm2022/lib/admin/architecture/elements/type.component.mjs +1 -1
- package/esm2022/lib/admin/architecture/elements/utility.component.mjs +1 -1
- package/esm2022/lib/admin/architecture/elements/view.component.mjs +1 -1
- package/esm2022/lib/admin/architecture/elements/widget.component.mjs +1 -1
- package/esm2022/lib/app.component.mjs +2 -1
- package/esm2022/lib/bizdoc.module.mjs +5 -6
- package/esm2022/lib/compose/attachments/attachments.component.mjs +4 -4
- package/esm2022/lib/compose/attachments/preview/attachment-preview.component.mjs +10 -8
- package/esm2022/lib/compose/new-menu.component.mjs +4 -8
- package/esm2022/lib/core/authentication.mjs +5 -1
- package/esm2022/lib/core/configuration.mjs +1 -1
- package/esm2022/lib/core/functions.mjs +4 -1
- package/esm2022/lib/core/http.interceptor.mjs +38 -31
- package/esm2022/lib/core/hub.service.mjs +3 -3
- package/esm2022/lib/core/info/attachment-info.service.mjs +2 -2
- package/esm2022/lib/core/inputs/file.input.mjs +8 -6
- package/esm2022/lib/core/mailbox.service.mjs +4 -4
- package/esm2022/lib/core/models.mjs +1 -1
- package/esm2022/lib/core/pipes/time-ago.pipe.mjs +2 -63
- package/esm2022/lib/core/pipes/to-now.pipe.mjs +66 -0
- package/esm2022/lib/core/session.service.mjs +7 -1
- package/esm2022/lib/cube/cube-view.component.mjs +3 -1
- package/esm2022/lib/home/sign/sign.component.mjs +6 -14
- package/esm2022/lib/shared.module.mjs +6 -3
- package/esm2022/lib/system.module.mjs +4 -2
- package/esm2022/public-api.mjs +3 -2
- package/fesm2022/bizdoc-core.mjs +142 -115
- package/fesm2022/bizdoc-core.mjs.map +1 -1
- package/lib/admin/architecture/designer-element.component.d.ts +2 -1
- package/lib/admin/architecture/elements/cube.component.d.ts +1 -0
- package/lib/compose/attachments/attachments.component.d.ts +1 -1
- package/lib/compose/attachments/preview/attachment-preview.component.d.ts +3 -3
- package/lib/core/authentication.d.ts +4 -4
- package/lib/core/configuration.d.ts +1 -0
- package/lib/core/functions.d.ts +1 -0
- package/lib/core/http.interceptor.d.ts +1 -1
- package/lib/core/inputs/file.input.d.ts +1 -1
- package/lib/core/mailbox.service.d.ts +1 -1
- package/lib/core/models.d.ts +1 -1
- package/lib/core/pipes/time-ago.pipe.d.ts +0 -13
- package/lib/core/pipes/to-now.pipe.d.ts +17 -0
- package/lib/core/session.service.d.ts +2 -0
- package/lib/shared.module.d.ts +188 -187
- package/package.json +13 -13
- package/public-api.d.ts +2 -1
package/fesm2022/bizdoc-core.mjs
CHANGED
@@ -496,6 +496,9 @@ const MATERIAL_PALETTES = {
|
|
496
496
|
};
|
497
497
|
|
498
498
|
const IMAGE_TYPE = ['image/png', 'image/jpeg', 'image/jpg', 'image/gif'];
|
499
|
+
function eraseCookie(name) {
|
500
|
+
document.cookie = name + '=; Max-Age=-99999999;';
|
501
|
+
}
|
499
502
|
function mapToArray(map) {
|
500
503
|
return Object.keys(map).map(k => ({ key: k, value: map[k] }));
|
501
504
|
}
|
@@ -880,7 +883,11 @@ const paramAnimation = trigger('param', [state('*', style({ backgroundColor: 'un
|
|
880
883
|
const queryAnimation = trigger('query', [state('*', style({})),
|
881
884
|
transition('*<=>*', animate(0, style({})))]);
|
882
885
|
|
886
|
+
const IMPERSONATE_COOKIE_NAME = 'i';
|
883
887
|
class AuthenticationImpl {
|
888
|
+
disconnect() {
|
889
|
+
return Promise.resolve();
|
890
|
+
}
|
884
891
|
}
|
885
892
|
|
886
893
|
/** Listen to hub contracts */
|
@@ -941,8 +948,8 @@ class HubService {
|
|
941
948
|
}
|
942
949
|
this._connection = new HubConnectionBuilder().withUrl('/chub', {
|
943
950
|
// logger: LogLevel.Debug,
|
944
|
-
accessTokenFactory: this._auth.
|
945
|
-
skipNegotiation: true,
|
951
|
+
accessTokenFactory: this._auth.getAuthToken.bind(this),
|
952
|
+
//skipNegotiation: true,
|
946
953
|
}).withAutomaticReconnect().build();
|
947
954
|
this._connection.on('newMail', (data) => this._newMail.next(data));
|
948
955
|
this._connection.on('mailUpdate', (data) => this._updateMail.next(data));
|
@@ -2287,6 +2294,12 @@ class SessionService {
|
|
2287
2294
|
});
|
2288
2295
|
});
|
2289
2296
|
}
|
2297
|
+
getProfileExtra(name) {
|
2298
|
+
return this._http.get(`/api/account/extra/${name}`);
|
2299
|
+
}
|
2300
|
+
setProfileExtra(name, profile) {
|
2301
|
+
return this._http.post(`/api/account/extra/${name}`, profile);
|
2302
|
+
}
|
2290
2303
|
unregisterDevice(type, token) {
|
2291
2304
|
return this._http.post('/api/account/unregisterDevice', { type, token });
|
2292
2305
|
}
|
@@ -6579,9 +6592,9 @@ class MailboxService {
|
|
6579
6592
|
folder.count++;
|
6580
6593
|
});
|
6581
6594
|
}
|
6582
|
-
formatDownloadUrl(
|
6583
|
-
let url = `/api/attachments/${documentId}/${
|
6584
|
-
const token = this._auth.
|
6595
|
+
async formatDownloadUrl(document, file) {
|
6596
|
+
let url = `/api/attachments/${document.documentId}/${file.id}`;
|
6597
|
+
const token = await this._auth.getAuthToken();
|
6585
6598
|
if (token)
|
6586
6599
|
url +=
|
6587
6600
|
`?access_token=${token}`;
|
@@ -8065,9 +8078,10 @@ class AttachmentPreview {
|
|
8065
8078
|
this._afterClosed = new Subject();
|
8066
8079
|
this.dir = _directionality.value;
|
8067
8080
|
this.isImage = isImage(this.data.file.contentType);
|
8068
|
-
|
8069
|
-
|
8070
|
-
|
8081
|
+
this._url().then(url => {
|
8082
|
+
url += (url.indexOf('?') > 0 ? '&' : '?') + 'inline=true';
|
8083
|
+
this.objectData = sanitizer.bypassSecurityTrustResourceUrl(url);
|
8084
|
+
});
|
8071
8085
|
this.beforeClose().subscribe(() => this.slideDown = 'leave');
|
8072
8086
|
}
|
8073
8087
|
resize() {
|
@@ -8082,11 +8096,12 @@ class AttachmentPreview {
|
|
8082
8096
|
ngAfterViewInit() {
|
8083
8097
|
this.resize();
|
8084
8098
|
}
|
8085
|
-
download() {
|
8086
|
-
|
8099
|
+
async download() {
|
8100
|
+
const url = await this._url();
|
8101
|
+
location.assign(url);
|
8087
8102
|
}
|
8088
|
-
_url() {
|
8089
|
-
return this._service.formatDownloadUrl(this.data.
|
8103
|
+
async _url() {
|
8104
|
+
return this._service.formatDownloadUrl(this.data.document, this.data.file);
|
8090
8105
|
}
|
8091
8106
|
rotate() {
|
8092
8107
|
const elem = (this.isImage ? this.img : this.obj).nativeElement;
|
@@ -8209,7 +8224,7 @@ class AttachmentInfo {
|
|
8209
8224
|
{
|
8210
8225
|
provide: FILE_PREVIEW_DIALOG_DATA, useValue: {
|
8211
8226
|
file,
|
8212
|
-
|
8227
|
+
document: item
|
8213
8228
|
}
|
8214
8229
|
},
|
8215
8230
|
{ provide: OverlayRef, useValue: oRef }
|
@@ -8359,7 +8374,7 @@ class AttachmentsComponent {
|
|
8359
8374
|
getVersions(item) {
|
8360
8375
|
return this.model.attachments.filter(a => a.fileName === item.fileName && a != item);
|
8361
8376
|
}
|
8362
|
-
download(item) {
|
8377
|
+
async download(item) {
|
8363
8378
|
//this._mailbox.download(this.model.documentId, item.id).subscribe(data => {
|
8364
8379
|
//const blob = new Blob([data], { type: item.contentType });
|
8365
8380
|
//if (typeof window.navigator.msSaveBlob !== 'undefined') { // IE
|
@@ -8370,7 +8385,7 @@ class AttachmentsComponent {
|
|
8370
8385
|
//if (!pwa || pwa.closed || typeof pwa.closed === 'undefined')
|
8371
8386
|
//}
|
8372
8387
|
//});
|
8373
|
-
location.href = this._mailbox.formatDownloadUrl(this.model
|
8388
|
+
location.href = await this._mailbox.formatDownloadUrl(this.model, item);
|
8374
8389
|
item.viewed = new Date();
|
8375
8390
|
}
|
8376
8391
|
previewOrDownload(item) {
|
@@ -8394,7 +8409,7 @@ class AttachmentsComponent {
|
|
8394
8409
|
});
|
8395
8410
|
const injector = Injector.create({
|
8396
8411
|
providers: [
|
8397
|
-
{ provide: FILE_PREVIEW_DIALOG_DATA, useValue: { file: item,
|
8412
|
+
{ provide: FILE_PREVIEW_DIALOG_DATA, useValue: { file: item, document: this.model } },
|
8398
8413
|
{ provide: OverlayRef, useValue: oRef }
|
8399
8414
|
], parent: this._injector
|
8400
8415
|
});
|
@@ -8501,6 +8516,22 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.2.3", ngImpor
|
|
8501
8516
|
pure: false
|
8502
8517
|
}]
|
8503
8518
|
}], ctorParameters: () => [{ type: i0.ChangeDetectorRef }, { type: i0.NgZone }] });
|
8519
|
+
function getSecondsUntilUpdate(time) {
|
8520
|
+
const howOld = Math.abs(time.diff(new Date(), 'minute'));
|
8521
|
+
if (howOld < 1) {
|
8522
|
+
return 1;
|
8523
|
+
}
|
8524
|
+
else if (howOld < 60) {
|
8525
|
+
return 30;
|
8526
|
+
}
|
8527
|
+
else if (howOld < 180) {
|
8528
|
+
return 300;
|
8529
|
+
}
|
8530
|
+
else {
|
8531
|
+
return 3600;
|
8532
|
+
}
|
8533
|
+
}
|
8534
|
+
|
8504
8535
|
class TimeAgoPipe {
|
8505
8536
|
transform(value, ...args) {
|
8506
8537
|
this.lastTime = dayjs(value);
|
@@ -8547,21 +8578,6 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.2.3", ngImpor
|
|
8547
8578
|
pure: false
|
8548
8579
|
}]
|
8549
8580
|
}], ctorParameters: () => [{ type: i0.ChangeDetectorRef }, { type: i0.NgZone }] });
|
8550
|
-
function getSecondsUntilUpdate(time) {
|
8551
|
-
const howOld = Math.abs(time.diff(new Date(), 'minute'));
|
8552
|
-
if (howOld < 1) {
|
8553
|
-
return 1;
|
8554
|
-
}
|
8555
|
-
else if (howOld < 60) {
|
8556
|
-
return 30;
|
8557
|
-
}
|
8558
|
-
else if (howOld < 180) {
|
8559
|
-
return 300;
|
8560
|
-
}
|
8561
|
-
else {
|
8562
|
-
return 3600;
|
8563
|
-
}
|
8564
|
-
}
|
8565
8581
|
|
8566
8582
|
class StatePipe {
|
8567
8583
|
transform(value, ...args) {
|
@@ -11918,6 +11934,8 @@ class CubeViewComponent {
|
|
11918
11934
|
const dim = this._dim();
|
11919
11935
|
switch (this.view.type) {
|
11920
11936
|
case 'Pivot':
|
11937
|
+
case 'PivotChart':
|
11938
|
+
case 'PivotGrid':
|
11921
11939
|
{
|
11922
11940
|
let comp = this._attach(CubePivotComponent);
|
11923
11941
|
comp.width = `${dim.width - 4}px`;
|
@@ -18596,39 +18614,44 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.2.3", ngImpor
|
|
18596
18614
|
|
18597
18615
|
class AppHttpInterceptor {
|
18598
18616
|
intercept(req, next) {
|
18599
|
-
|
18600
|
-
|
18601
|
-
|
18602
|
-
|
18603
|
-
|
18604
|
-
|
18605
|
-
|
18606
|
-
|
18607
|
-
|
18608
|
-
|
18609
|
-
|
18610
|
-
|
18611
|
-
|
18612
|
-
|
18613
|
-
|
18614
|
-
|
18615
|
-
|
18616
|
-
this._authenticationInProgress$ = null;
|
18617
|
-
return this.intercept(req, next);
|
18617
|
+
return from(this._auth.getAuthToken()).pipe(switchMap$1(token => {
|
18618
|
+
const connectionId = this._messaging.connectionId, headers = {
|
18619
|
+
'accept-language': this._session.language,
|
18620
|
+
};
|
18621
|
+
if (connectionId)
|
18622
|
+
headers['connection-id'] = connectionId;
|
18623
|
+
if (token)
|
18624
|
+
headers['Authorization'] = `Bearer ${token}`;
|
18625
|
+
const request = req.clone({
|
18626
|
+
setHeaders: headers,
|
18627
|
+
});
|
18628
|
+
if (!req.headers.has('no-progress')) {
|
18629
|
+
this._ongoingCounter$.next(1);
|
18630
|
+
return next.handle(request).pipe(tap({
|
18631
|
+
next: event => event instanceof HttpResponse
|
18632
|
+
&& this._ongoingCounter$.next(0),
|
18633
|
+
error: () => this._ongoingCounter$.next(0)
|
18618
18634
|
}));
|
18635
|
+
}
|
18636
|
+
else
|
18637
|
+
return next.handle(request);
|
18638
|
+
}), catchError((e) => {
|
18639
|
+
// there is already ongoing authentication,
|
18640
|
+
if (this._authenticating$)
|
18641
|
+
return this._authenticating$;
|
18642
|
+
else if (e.status === 401) {
|
18643
|
+
eraseCookie(IMPERSONATE_COOKIE_NAME);
|
18644
|
+
this._authenticating$ =
|
18645
|
+
// give AuthenticationImpl to
|
18646
|
+
from(this._auth.authenticate()).
|
18647
|
+
pipe(tap(() => this._authenticating$ = null),
|
18648
|
+
// authorization ok, try
|
18649
|
+
switchMap$1(() => this.intercept(req, next)));
|
18650
|
+
return this._authenticating$;
|
18651
|
+
}
|
18619
18652
|
else
|
18620
18653
|
throw e;
|
18621
18654
|
}));
|
18622
|
-
if (!req.headers.has('no-progress')) {
|
18623
|
-
this._ongoingCounter$.next(1);
|
18624
|
-
return handle.pipe(tap({
|
18625
|
-
next: event => event instanceof HttpResponse
|
18626
|
-
&& this._ongoingCounter$.next(0),
|
18627
|
-
error: () => this._ongoingCounter$.next(0)
|
18628
|
-
}));
|
18629
|
-
}
|
18630
|
-
else
|
18631
|
-
return handle;
|
18632
18655
|
}
|
18633
18656
|
constructor(_session, _auth, _messaging) {
|
18634
18657
|
this._session = _session;
|
@@ -18853,7 +18876,6 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.2.3", ngImpor
|
|
18853
18876
|
args: [{ selector: 'bizdoc-impersonate', template: "<h2 mat-dialog-title>{{'Impersonate' | translate}}</h2>\n<mat-dialog-content>\n <p class=\"mat-body-1\">{{'ImpersonateHelp' | translate}}</p>\n <mat-form-field>\n <input matInput type=\"search\" [matAutocomplete]=\"auto\" [placeholder]=\"'Associate' | translate\" required [formControl]=\"username\" />\n <mat-autocomplete #auto=\"matAutocomplete\" [displayWith]=\"display\"\n (optionSelected)=\"change($event)\">\n @for (u of users$ | async; track u) {\n <mat-option [value]=\"u\">\n <span>{{u.name}}</span>\n </mat-option>\n }\n </mat-autocomplete>\n </mat-form-field>\n</mat-dialog-content>\n<mat-dialog-actions>\n <button mat-raised-button (click)=\"go()\" [disabled]=\"!item || logging\" color=\"primary\">{{'Login' | translate}}</button>\n <button mat-button [mat-dialog-close]>{{'Cancel' | translate }}</button>\n</mat-dialog-actions>\n", styles: [".mat-mdc-form-field{width:100%}\n"] }]
|
18854
18877
|
}], ctorParameters: () => [{ type: PromptService }, { type: SessionService }, { type: i2$2.MatDialogRef }] });
|
18855
18878
|
|
18856
|
-
const IMPERSONATE_COOKIE_NAME = 'i';
|
18857
18879
|
/** sign component*/
|
18858
18880
|
class QuickSignComponent {
|
18859
18881
|
/** options ctor */
|
@@ -18866,18 +18888,12 @@ class QuickSignComponent {
|
|
18866
18888
|
}
|
18867
18889
|
signOut() {
|
18868
18890
|
this._close();
|
18869
|
-
const task = () => {
|
18870
|
-
this._ps.mask('Goodbye');
|
18871
|
-
location.assign('/');
|
18872
|
-
};
|
18873
18891
|
this._ps.ask('SignOutAsk', 'SignOut', { ok: 'Yes', cancel: 'No' }).subscribe(ok => {
|
18874
18892
|
if (ok) {
|
18893
|
+
this._ps.mask('Goodbye');
|
18875
18894
|
eraseCookie(IMPERSONATE_COOKIE_NAME);
|
18876
|
-
|
18877
|
-
|
18878
|
-
then(task);
|
18879
|
-
else
|
18880
|
-
task();
|
18895
|
+
this._auth.disconnect().
|
18896
|
+
then(() => location.assign('/'));
|
18881
18897
|
}
|
18882
18898
|
});
|
18883
18899
|
}
|
@@ -18905,9 +18921,6 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.2.3", ngImpor
|
|
18905
18921
|
}] }, { type: PopupRef, decorators: [{
|
18906
18922
|
type: Optional
|
18907
18923
|
}] }] });
|
18908
|
-
function eraseCookie(name) {
|
18909
|
-
document.cookie = name + '=; Max-Age=-99999999;';
|
18910
|
-
}
|
18911
18924
|
|
18912
18925
|
const DEFAULT_ROUTE = ['dashboard'];
|
18913
18926
|
class SlotsComponent {
|
@@ -20497,13 +20510,9 @@ class ComposeMenuComponent {
|
|
20497
20510
|
create(form) {
|
20498
20511
|
this._working.next(true);
|
20499
20512
|
this._mailbox.create(form).subscribe({
|
20500
|
-
next: i =>
|
20501
|
-
|
20502
|
-
|
20503
|
-
}, error: e => {
|
20504
|
-
this._working.next(false);
|
20505
|
-
this._error(e);
|
20506
|
-
}
|
20513
|
+
next: i => this._nav(i),
|
20514
|
+
error: e => this._error(e),
|
20515
|
+
complete: () => this._working.next(false)
|
20507
20516
|
});
|
20508
20517
|
}
|
20509
20518
|
copy(item) {
|
@@ -21107,6 +21116,7 @@ class BizDocApp {
|
|
21107
21116
|
if (!document.hidden && this._messaging.state === HubConnectionState.Disconnected && this._session.ok)
|
21108
21117
|
this._refresh.next();
|
21109
21118
|
});
|
21119
|
+
//window.addEventListener('offline', () => this._online = false);
|
21110
21120
|
window.addEventListener('online', () => this._refresh.next());
|
21111
21121
|
}
|
21112
21122
|
ngOnInit() {
|
@@ -22847,8 +22857,8 @@ class FileInput {
|
|
22847
22857
|
getVersions(item) {
|
22848
22858
|
return this._model.attachments.filter(a => a.fileName === item.fileName && a.id !== item.id);
|
22849
22859
|
}
|
22850
|
-
download(item) {
|
22851
|
-
location.href = this._mailbox.formatDownloadUrl(this._model
|
22860
|
+
async download(item) {
|
22861
|
+
location.href = await this._mailbox.formatDownloadUrl(this._model, item);
|
22852
22862
|
item.viewed = new Date();
|
22853
22863
|
}
|
22854
22864
|
previewOrDownload(item) {
|
@@ -23057,17 +23067,19 @@ class FileInput {
|
|
23057
23067
|
* @param attachment
|
23058
23068
|
*/
|
23059
23069
|
_createItem(attachment) {
|
23060
|
-
const fileExt = AttachmentInfo.fileExt(attachment.fileName), hasPreview = AttachmentInfo.exists(attachment.contentType), isImage = hasPreview && AttachmentInfo.isImage(attachment.contentType)
|
23061
|
-
|
23070
|
+
const fileExt = AttachmentInfo.fileExt(attachment.fileName), hasPreview = AttachmentInfo.exists(attachment.contentType), isImage = hasPreview && AttachmentInfo.isImage(attachment.contentType);
|
23071
|
+
const newModel = {
|
23062
23072
|
...attachment,
|
23063
23073
|
hasPreview,
|
23064
23074
|
isImage,
|
23065
23075
|
fileExt,
|
23066
|
-
url,
|
23067
23076
|
icon: EXTENTION_ICONS[fileExt],
|
23068
23077
|
checkedOut: attachment.checkedOut &&
|
23069
23078
|
attachment.holdingId === this._session.profile.userId
|
23070
23079
|
};
|
23080
|
+
isImage &&
|
23081
|
+
this._mailbox.formatDownloadUrl(this._model, attachment).then(url => newModel.url = this._sanitizer.bypassSecurityTrustUrl(url));
|
23082
|
+
return newModel;
|
23071
23083
|
}
|
23072
23084
|
/**
|
23073
23085
|
*
|
@@ -30318,7 +30330,8 @@ const CONTROLS_COMPONENTS$1 = [SignatureField, AddressField, ChecklistField, Rad
|
|
30318
30330
|
/** common BizDoc components */
|
30319
30331
|
class SharedModule {
|
30320
30332
|
static forChild(config) {
|
30321
|
-
const { formats, routing } = config || {};
|
30333
|
+
const { formats, routing, routes } = config || {};
|
30334
|
+
routes && PANES_CONFIG.push(...routes);
|
30322
30335
|
registerComponents(CORE_COMPONENTS);
|
30323
30336
|
registerComponents(CONTROLS_COMPONENTS$1);
|
30324
30337
|
const providers = [{
|
@@ -33536,6 +33549,7 @@ class DesignerItemComponent {
|
|
33536
33549
|
this._cfr = _cfr;
|
33537
33550
|
this.SVG = FAMILY_SVG;
|
33538
33551
|
this.onSave = new EventEmitter();
|
33552
|
+
this.onContinue = new EventEmitter();
|
33539
33553
|
this._destroy = new Subject();
|
33540
33554
|
this.mode = _ref.mode;
|
33541
33555
|
this.model = _ref.model;
|
@@ -33637,6 +33651,7 @@ class DesignerItemComponent {
|
|
33637
33651
|
this._elementDesigner?.onContinue &&
|
33638
33652
|
this._elementDesigner.onContinue();
|
33639
33653
|
this.mode = 'edit';
|
33654
|
+
this.onContinue.emit();
|
33640
33655
|
if (this._elementDesigner)
|
33641
33656
|
this._elementDesigner.mode = 'edit';
|
33642
33657
|
this._commonForm();
|
@@ -33685,7 +33700,7 @@ class DesignerItemComponent {
|
|
33685
33700
|
this._destroy?.complete();
|
33686
33701
|
}
|
33687
33702
|
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.2.3", ngImport: i0, type: DesignerItemComponent, deps: [{ token: i0.ElementRef }, { token: i1$2.FormBuilder }, { token: i2$1.DomSanitizer }, { token: DesignerRef }, { token: BizDocComponentFactoryResolver }], target: i0.ɵɵFactoryTarget.Component }); }
|
33688
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "17.2.3", type: DesignerItemComponent, selector: "bizdoc-designer-element", inputs: { privileges: "privileges", icon: "icon", form: "form", context: "context" }, outputs: { onSave: "save" }, queries: [{ propertyName: "editContent", first: true, predicate: EditContentDirective, descendants: true }, { propertyName: "addContent", first: true, predicate: AddContentDirective, descendants: true }, { propertyName: "widgetContent", first: true, predicate: WidgetContentDirective, descendants: true }, { propertyName: "customContents", predicate: CustomContentDirective }], usesOnChanges: true, ngImport: i0, template: "@switch (mode) {\n<!--widget mode -->\n@case ('widget') {\n<!--icon -->\n @if (model.familyKey) {\n @if (SVG[model.familyKey]) {\n<img class=\"logo\" [src]=\"resource(SVG[model.familyKey])\" [bizdocTooltip]=\"model.family\" />\n }\n @else {\n<div>{{model.family}}</div>\n }\n }\n<!--options-->\n<ng-container (attached)=\"optionsAttached($event)\" [cdkPortalOutlet]=\"options\"></ng-container>\n<!--designer widget-->\n<ng-container [ngTemplateOutlet]=\"widgetContent?.templateRef\"></ng-container>\n}\n@case ('edit') {\n<!--edit / custom mode -->\n@if (context?.active) {\n<mat-toolbar class=\"row\">\n @if(context.mode === 'add') {\n <button mat-icon-button (click)=\"closeView(true)\" [disabled]=\"context.form.invalid\"><mat-icon>save</mat-icon></button>\n <span class=\"divider\"></span>\n <button mat-icon-button (click)=\"closeView()\" [bizdocTooltip]=\"'Close'|translate\"><mat-icon class=\"mat-icon-rtl-mirror\">close</mat-icon></button>\n }\n @else {\n <button mat-icon-button (click)=\"closeView(true)\" [bizdocTooltip]=\"'Back'|translate\"><mat-icon class=\"mat-icon-rtl-mirror\">keyboard_backspace</mat-icon></button>\n }\n</mat-toolbar>\n<form autocomplete=\"off\" class=\"column\" (keydown)=\"handleKeyboardEvent($event)\">\n <h2 class=\"mat-h2\">{{context.title|translate}}</h2>\n <ng-container *ngTemplateOutlet=\"customView; context: context\"></ng-container>\n</form>\n}\n@else {\n<!--edit mode -->\n<mat-toolbar bizdoc-sticky>\n <button mat-icon-button (click)=\"save()\" [disabled]=\"form.invalid || !form.dirty\"><mat-icon>save</mat-icon></button>\n</mat-toolbar>\n<form autocomplete=\"off\" class=\"column\" (keydown)=\"handleKeyboardEvent($event)\">\n @if (model.resourceType) {\n <p class=\"message\" (click)=\"unlock($event)\" [innerHTML]=\"'UnlockMultilang'|translate\"></p>\n <br />\n }\n <ng-container [formGroup]=\"form\">\n <div class=\"row gap\">\n <bizdoc-localized-string #title formControlName=\"title\" [placeholder]=\"'Title'|translate\" required class=\"flex column\"></bizdoc-localized-string>\n <mat-form-field class=\"flex\">\n <mat-label>{{'Name'|translate}}</mat-label>\n <input matInput formControlName=\"name\" required />\n @if (form.controls.name.hasError('required')) {\n <mat-error [innerHTML]=\"'RequiredErr'|translate:('Name'|translate)\"></mat-error>\n }\n @if (form.controls.name.hasError('duplicate')) {\n <mat-error [innerHTML]=\"'DuplicateErr'|translate:('Name'|translate)\"></mat-error>\n }\n </mat-form-field>\n </div>\n @if (icon) {\n <bizdoc-icon-picker formControlName=\"icon\" required></bizdoc-icon-picker>\n }\n </ng-container>\n <!--arguments-->\n @if (arguments) {\n <ng-container (attached)=\"argumentsAttached($event)\" [cdkPortalOutlet]=\"arguments\"></ng-container>\n }\n <!--edit template-->\n <ng-container [ngTemplateOutlet]=\"editContent?.templateRef\"></ng-container>\n <!--options-->\n @if (options) {\n <ng-container (attached)=\"optionsAttached($event)\" [cdkPortalOutlet]=\"options\"></ng-container>\n }\n <!--privileges-->\n @if (form.controls.privileges) {\n <bizdoc-designer-privileges [form]=\"form.controls.privileges\"></bizdoc-designer-privileges>\n }\n</form>\n}\n}\n<!--add-->\n@case ('add') {\n<form autocomplete=\"off\" class=\"column\" (keydown)=\"handleKeyboardEvent($event)\">\n <!--arguments-->\n @if (arguments) {\n <ng-container (attached)=\"argumentsAttached($event)\" [cdkPortalOutlet]=\"arguments\"></ng-container>\n }\n <!--add template-->\n <ng-container [ngTemplateOutlet]=\"addContent?.templateRef\"></ng-container>\n @if (options) {\n <!--options-->\n <ng-container (attached)=\"optionsAttached($event)\" [cdkPortalOutlet]=\"options\"></ng-container>\n }\n <!-- continue-->\n <div class=\"row actions\">\n <span class=\"divider\"></span>\n <button mat-stroked-button [disabled]=\"form.invalid\" (click)=\"continue()\" type=\"button\">{{'Continue'|translate}} <mat-icon class=\"mat-icon-rtl-mirror\">double_arrow</mat-icon></button>\n </div>\n</form>\n }\n}\n", styles: ["img.logo{display:block;height:26px}:host{flex:1}form{min-width:280px;padding:8px}p.message{margin:5px}:host ::ng-deep .cdk-drag-handle{cursor:move}\n"], dependencies: [{ kind: "directive", type: i9.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "directive", type: i1$2.ɵNgNoValidate, selector: "form:not([ngNoForm]):not([ngNativeValidate])" }, { kind: "directive", type: i1$2.DefaultValueAccessor, selector: "input:not([type=checkbox])[formControlName],textarea[formControlName],input:not([type=checkbox])[formControl],textarea[formControl],input:not([type=checkbox])[ngModel],textarea[ngModel],[ngDefaultControl]" }, { kind: "directive", type: i1$2.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i1$2.NgControlStatusGroup, selector: "[formGroupName],[formArrayName],[ngModelGroup],[formGroup],form:not([ngNoForm]),[ngForm]" }, { kind: "directive", type: i1$2.RequiredValidator, selector: ":not([type=checkbox])[required][formControlName],:not([type=checkbox])[required][formControl],:not([type=checkbox])[required][ngModel]", inputs: ["required"] }, { kind: "directive", type: i1$2.FormGroupDirective, selector: "[formGroup]", inputs: ["formGroup"], outputs: ["ngSubmit"], exportAs: ["ngForm"] }, { kind: "directive", type: i1$2.FormControlName, selector: "[formControlName]", inputs: ["formControlName", "disabled", "ngModel"], outputs: ["ngModelChange"] }, { kind: "directive", type: i5.CdkPortalOutlet, selector: "[cdkPortalOutlet]", inputs: ["cdkPortalOutlet"], outputs: ["attached"], exportAs: ["cdkPortalOutlet"] }, { kind: "component", type: i8$1.MatToolbar, selector: "mat-toolbar", inputs: ["color"], exportAs: ["matToolbar"] }, { kind: "component", type: i3$1.MatFormField, selector: "mat-form-field", inputs: ["hideRequiredMarker", "color", "floatLabel", "appearance", "subscriptSizing", "hintLabel"], exportAs: ["matFormField"] }, { kind: "directive", type: i3$1.MatLabel, selector: "mat-label" }, { kind: "directive", type: i3$1.MatError, selector: "mat-error, [matError]", inputs: ["id"] }, { kind: "component", type: i8.MatButton, selector: " button[mat-button], button[mat-raised-button], button[mat-flat-button], button[mat-stroked-button] ", exportAs: ["matButton"] }, { kind: "component", type: i8.MatIconButton, selector: "button[mat-icon-button]", exportAs: ["matButton"] }, { kind: "directive", type: i3$3.MatInput, selector: "input[matInput], textarea[matInput], select[matNativeControl], input[matNativeControl], textarea[matNativeControl]", inputs: ["disabled", "id", "placeholder", "name", "required", "type", "errorStateMatcher", "aria-describedby", "value", "readonly"], exportAs: ["matInput"] }, { kind: "component", type: i10.MatIcon, selector: "mat-icon", inputs: ["color", "inline", "svgIcon", "fontSet", "fontIcon"], exportAs: ["matIcon"] }, { kind: "directive", type: TooltipDirective, selector: "[bizdocTooltip]", inputs: ["bizdocTooltip", "bizdocTooltipTemplate", "bizdocTooltipContext", "bizdocTooltipPosition", "bizdocTooltipDuration", "bizdocTooltipDisabled"] }, { kind: "component", type: LocalizedStringComponent, selector: "bizdoc-localized-string", inputs: ["class", "floatLabel", "value", "placeholder", "required", "disabled", "maxlength"] }, { kind: "component", type: DesignerPrivilegesComponent, selector: "bizdoc-designer-privileges", inputs: ["form"] }, { kind: "component", type: IconPickerComponent, selector: "bizdoc-icon-picker", inputs: ["value", "required", "disabled"], outputs: ["valueChanges"] }, { kind: "pipe", type: TranslatePipe, name: "translate" }] }); }
|
33703
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "17.2.3", type: DesignerItemComponent, selector: "bizdoc-designer-element", inputs: { privileges: "privileges", icon: "icon", form: "form", context: "context" }, outputs: { onSave: "save", onContinue: "continue" }, queries: [{ propertyName: "editContent", first: true, predicate: EditContentDirective, descendants: true }, { propertyName: "addContent", first: true, predicate: AddContentDirective, descendants: true }, { propertyName: "widgetContent", first: true, predicate: WidgetContentDirective, descendants: true }, { propertyName: "customContents", predicate: CustomContentDirective }], usesOnChanges: true, ngImport: i0, template: "@switch (mode) {\n<!--widget mode -->\n@case ('widget') {\n<!--icon -->\n @if (model.familyKey) {\n @if (SVG[model.familyKey]) {\n<img class=\"logo\" [src]=\"resource(SVG[model.familyKey])\" [bizdocTooltip]=\"model.family\" />\n }\n @else {\n<div>{{model.family}}</div>\n }\n }\n<!--options-->\n<ng-container (attached)=\"optionsAttached($event)\" [cdkPortalOutlet]=\"options\"></ng-container>\n<!--designer widget-->\n<ng-container [ngTemplateOutlet]=\"widgetContent?.templateRef\"></ng-container>\n}\n@case ('edit') {\n<!--edit / custom mode -->\n@if (context?.active) {\n<mat-toolbar class=\"row\">\n @if(context.mode === 'add') {\n <button mat-icon-button (click)=\"closeView(true)\" [disabled]=\"context.form.invalid\"><mat-icon>save</mat-icon></button>\n <span class=\"divider\"></span>\n <button mat-icon-button (click)=\"closeView()\" [bizdocTooltip]=\"'Close'|translate\"><mat-icon class=\"mat-icon-rtl-mirror\">close</mat-icon></button>\n }\n @else {\n <button mat-icon-button (click)=\"closeView(true)\" [bizdocTooltip]=\"'Back'|translate\"><mat-icon class=\"mat-icon-rtl-mirror\">keyboard_backspace</mat-icon></button>\n }\n</mat-toolbar>\n<form autocomplete=\"off\" class=\"column\" (keydown)=\"handleKeyboardEvent($event)\">\n <h2 class=\"mat-h2\">{{context.title|translate}}</h2>\n <ng-container *ngTemplateOutlet=\"customView; context: context\"></ng-container>\n</form>\n}\n@else {\n<!--edit mode -->\n<mat-toolbar bizdoc-sticky>\n <button mat-icon-button (click)=\"save()\" [disabled]=\"form.invalid || !form.dirty\"><mat-icon>save</mat-icon></button>\n</mat-toolbar>\n<form autocomplete=\"off\" class=\"column\" (keydown)=\"handleKeyboardEvent($event)\">\n @if (model.resourceType) {\n <p class=\"message\" (click)=\"unlock($event)\" [innerHTML]=\"'UnlockMultilang'|translate\"></p>\n <br />\n }\n <ng-container [formGroup]=\"form\">\n <div class=\"row gap\">\n <bizdoc-localized-string #title formControlName=\"title\" [placeholder]=\"'Title'|translate\" required class=\"flex column\"></bizdoc-localized-string>\n <mat-form-field class=\"flex\">\n <mat-label>{{'Name'|translate}}</mat-label>\n <input matInput formControlName=\"name\" required />\n @if (form.controls.name.hasError('required')) {\n <mat-error [innerHTML]=\"'RequiredErr'|translate:('Name'|translate)\"></mat-error>\n }\n @if (form.controls.name.hasError('duplicate')) {\n <mat-error [innerHTML]=\"'DuplicateErr'|translate:('Name'|translate)\"></mat-error>\n }\n </mat-form-field>\n </div>\n @if (icon) {\n <bizdoc-icon-picker formControlName=\"icon\" required></bizdoc-icon-picker>\n }\n </ng-container>\n <!--arguments-->\n @if (arguments) {\n <ng-container (attached)=\"argumentsAttached($event)\" [cdkPortalOutlet]=\"arguments\"></ng-container>\n }\n <!--edit template-->\n <ng-container [ngTemplateOutlet]=\"editContent?.templateRef\"></ng-container>\n <!--options-->\n @if (options) {\n <ng-container (attached)=\"optionsAttached($event)\" [cdkPortalOutlet]=\"options\"></ng-container>\n }\n <!--privileges-->\n @if (form.controls.privileges) {\n <bizdoc-designer-privileges [form]=\"form.controls.privileges\"></bizdoc-designer-privileges>\n }\n</form>\n}\n}\n<!--add-->\n@case ('add') {\n<form autocomplete=\"off\" class=\"column\" (keydown)=\"handleKeyboardEvent($event)\">\n <!--arguments-->\n @if (arguments) {\n <ng-container (attached)=\"argumentsAttached($event)\" [cdkPortalOutlet]=\"arguments\"></ng-container>\n }\n <!--add template-->\n <ng-container [ngTemplateOutlet]=\"addContent?.templateRef\"></ng-container>\n @if (options) {\n <!--options-->\n <ng-container (attached)=\"optionsAttached($event)\" [cdkPortalOutlet]=\"options\"></ng-container>\n }\n <!-- continue-->\n <div class=\"row actions\">\n <span class=\"divider\"></span>\n <button mat-stroked-button [disabled]=\"form.invalid\" (click)=\"continue()\" type=\"button\">{{'Continue'|translate}} <mat-icon class=\"mat-icon-rtl-mirror\">double_arrow</mat-icon></button>\n </div>\n</form>\n }\n}\n", styles: ["img.logo{display:block;height:26px}:host{flex:1}form{min-width:280px;padding:8px}p.message{margin:5px}:host ::ng-deep .cdk-drag-handle{cursor:move}\n"], dependencies: [{ kind: "directive", type: i9.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "directive", type: i1$2.ɵNgNoValidate, selector: "form:not([ngNoForm]):not([ngNativeValidate])" }, { kind: "directive", type: i1$2.DefaultValueAccessor, selector: "input:not([type=checkbox])[formControlName],textarea[formControlName],input:not([type=checkbox])[formControl],textarea[formControl],input:not([type=checkbox])[ngModel],textarea[ngModel],[ngDefaultControl]" }, { kind: "directive", type: i1$2.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i1$2.NgControlStatusGroup, selector: "[formGroupName],[formArrayName],[ngModelGroup],[formGroup],form:not([ngNoForm]),[ngForm]" }, { kind: "directive", type: i1$2.RequiredValidator, selector: ":not([type=checkbox])[required][formControlName],:not([type=checkbox])[required][formControl],:not([type=checkbox])[required][ngModel]", inputs: ["required"] }, { kind: "directive", type: i1$2.FormGroupDirective, selector: "[formGroup]", inputs: ["formGroup"], outputs: ["ngSubmit"], exportAs: ["ngForm"] }, { kind: "directive", type: i1$2.FormControlName, selector: "[formControlName]", inputs: ["formControlName", "disabled", "ngModel"], outputs: ["ngModelChange"] }, { kind: "directive", type: i5.CdkPortalOutlet, selector: "[cdkPortalOutlet]", inputs: ["cdkPortalOutlet"], outputs: ["attached"], exportAs: ["cdkPortalOutlet"] }, { kind: "component", type: i8$1.MatToolbar, selector: "mat-toolbar", inputs: ["color"], exportAs: ["matToolbar"] }, { kind: "component", type: i3$1.MatFormField, selector: "mat-form-field", inputs: ["hideRequiredMarker", "color", "floatLabel", "appearance", "subscriptSizing", "hintLabel"], exportAs: ["matFormField"] }, { kind: "directive", type: i3$1.MatLabel, selector: "mat-label" }, { kind: "directive", type: i3$1.MatError, selector: "mat-error, [matError]", inputs: ["id"] }, { kind: "component", type: i8.MatButton, selector: " button[mat-button], button[mat-raised-button], button[mat-flat-button], button[mat-stroked-button] ", exportAs: ["matButton"] }, { kind: "component", type: i8.MatIconButton, selector: "button[mat-icon-button]", exportAs: ["matButton"] }, { kind: "directive", type: i3$3.MatInput, selector: "input[matInput], textarea[matInput], select[matNativeControl], input[matNativeControl], textarea[matNativeControl]", inputs: ["disabled", "id", "placeholder", "name", "required", "type", "errorStateMatcher", "aria-describedby", "value", "readonly"], exportAs: ["matInput"] }, { kind: "component", type: i10.MatIcon, selector: "mat-icon", inputs: ["color", "inline", "svgIcon", "fontSet", "fontIcon"], exportAs: ["matIcon"] }, { kind: "directive", type: TooltipDirective, selector: "[bizdocTooltip]", inputs: ["bizdocTooltip", "bizdocTooltipTemplate", "bizdocTooltipContext", "bizdocTooltipPosition", "bizdocTooltipDuration", "bizdocTooltipDisabled"] }, { kind: "component", type: LocalizedStringComponent, selector: "bizdoc-localized-string", inputs: ["class", "floatLabel", "value", "placeholder", "required", "disabled", "maxlength"] }, { kind: "component", type: DesignerPrivilegesComponent, selector: "bizdoc-designer-privileges", inputs: ["form"] }, { kind: "component", type: IconPickerComponent, selector: "bizdoc-icon-picker", inputs: ["value", "required", "disabled"], outputs: ["valueChanges"] }, { kind: "pipe", type: TranslatePipe, name: "translate" }] }); }
|
33689
33704
|
}
|
33690
33705
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.2.3", ngImport: i0, type: DesignerItemComponent, decorators: [{
|
33691
33706
|
type: Component,
|
@@ -33704,6 +33719,9 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.2.3", ngImpor
|
|
33704
33719
|
}], onSave: [{
|
33705
33720
|
type: Output,
|
33706
33721
|
args: ['save']
|
33722
|
+
}], onContinue: [{
|
33723
|
+
type: Output,
|
33724
|
+
args: ['continue']
|
33707
33725
|
}], editContent: [{
|
33708
33726
|
type: ContentChild,
|
33709
33727
|
args: [EditContentDirective]
|
@@ -33879,7 +33897,7 @@ class ActionDesignerComponent extends DesignerTypeElementComponent {
|
|
33879
33897
|
super.ngOnInit();
|
33880
33898
|
}
|
33881
33899
|
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.2.3", ngImport: i0, type: ActionDesignerComponent, deps: null, target: i0.ɵɵFactoryTarget.Component }); }
|
33882
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.2.3", type: ActionDesignerComponent, selector: "ng-component", usesInheritance: true, ngImport: i0, template: "<bizdoc-designer-element [form]=\"form\" [privileges]=\"true\">\r\n <ng-template bizdocEditContent>\r\n <ng-container [formGroup]=\"form\">\r\n <div>\r\n <mat-checkbox formControlName=\"multiple\">{{'EnableMultipleSelection'|translate}}</mat-checkbox>\r\n </div>\r\n <h2 class=\"mat-h2\">{{'Labels'|translate}}</h2>\r\n <bizdoc-localized-string formControlName=\"past\" [placeholder]=\"Past\" required class=\"flex column\"></bizdoc-localized-string>\r\n <bizdoc-localized-string formControlName=\"verb\" [placeholder]=\"Verb\" required class=\"flex column\"></bizdoc-localized-string>\r\n <bizdoc-localized-string formControlName=\"adjective\" [placeholder]=\"Adjective\" required class=\"flex column\"></bizdoc-localized-string>\r\n <bizdoc-localized-string formControlName=\"adjectivePlural\" [placeholder]=\"AdjectivePlural\" required class=\"flex column\"></bizdoc-localized-string>\r\n <bizdoc-localized-string formControlName=\"you\" [placeholder]=\"You\" required class=\"flex column\"></bizdoc-localized-string>\r\n <div>\r\n <bizdoc-color-picker formControlName=\"color\" [label]=\"'Color'|translate\" class=\"flex\"></bizdoc-color-picker>\r\n </div>\r\n </ng-container>\r\n </ng-template>\r\n</bizdoc-designer-element>\r\n", dependencies: [{ kind: "directive", type: i1$2.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i1$2.NgControlStatusGroup, selector: "[formGroupName],[formArrayName],[ngModelGroup],[formGroup],form:not([ngNoForm]),[ngForm]" }, { kind: "directive", type: i1$2.RequiredValidator, selector: ":not([type=checkbox])[required][formControlName],:not([type=checkbox])[required][formControl],:not([type=checkbox])[required][ngModel]", inputs: ["required"] }, { kind: "directive", type: i1$2.FormGroupDirective, selector: "[formGroup]", inputs: ["formGroup"], outputs: ["ngSubmit"], exportAs: ["ngForm"] }, { kind: "directive", type: i1$2.FormControlName, selector: "[formControlName]", inputs: ["formControlName", "disabled", "ngModel"], outputs: ["ngModelChange"] }, { kind: "component", type: i2$7.MatCheckbox, selector: "mat-checkbox", inputs: ["aria-label", "aria-labelledby", "aria-describedby", "id", "required", "labelPosition", "name", "value", "disableRipple", "tabIndex", "color", "checked", "disabled", "indeterminate"], outputs: ["change", "indeterminateChange"], exportAs: ["matCheckbox"] }, { kind: "component", type: ColorPicker, selector: "bizdoc-color-picker", inputs: ["label", "value", "required", "disabled"], outputs: ["valueChanges"] }, { kind: "component", type: LocalizedStringComponent, selector: "bizdoc-localized-string", inputs: ["class", "floatLabel", "value", "placeholder", "required", "disabled", "maxlength"] }, { kind: "directive", type: EditContentDirective, selector: "[bizdocEditContent]" }, { kind: "component", type: DesignerItemComponent, selector: "bizdoc-designer-element", inputs: ["privileges", "icon", "form", "context"], outputs: ["save"] }, { kind: "pipe", type: TranslatePipe, name: "translate" }] }); }
|
33900
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.2.3", type: ActionDesignerComponent, selector: "ng-component", usesInheritance: true, ngImport: i0, template: "<bizdoc-designer-element [form]=\"form\" [privileges]=\"true\">\r\n <ng-template bizdocEditContent>\r\n <ng-container [formGroup]=\"form\">\r\n <div>\r\n <mat-checkbox formControlName=\"multiple\">{{'EnableMultipleSelection'|translate}}</mat-checkbox>\r\n </div>\r\n <h2 class=\"mat-h2\">{{'Labels'|translate}}</h2>\r\n <bizdoc-localized-string formControlName=\"past\" [placeholder]=\"Past\" required class=\"flex column\"></bizdoc-localized-string>\r\n <bizdoc-localized-string formControlName=\"verb\" [placeholder]=\"Verb\" required class=\"flex column\"></bizdoc-localized-string>\r\n <bizdoc-localized-string formControlName=\"adjective\" [placeholder]=\"Adjective\" required class=\"flex column\"></bizdoc-localized-string>\r\n <bizdoc-localized-string formControlName=\"adjectivePlural\" [placeholder]=\"AdjectivePlural\" required class=\"flex column\"></bizdoc-localized-string>\r\n <bizdoc-localized-string formControlName=\"you\" [placeholder]=\"You\" required class=\"flex column\"></bizdoc-localized-string>\r\n <div>\r\n <bizdoc-color-picker formControlName=\"color\" [label]=\"'Color'|translate\" class=\"flex\"></bizdoc-color-picker>\r\n </div>\r\n </ng-container>\r\n </ng-template>\r\n</bizdoc-designer-element>\r\n", dependencies: [{ kind: "directive", type: i1$2.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i1$2.NgControlStatusGroup, selector: "[formGroupName],[formArrayName],[ngModelGroup],[formGroup],form:not([ngNoForm]),[ngForm]" }, { kind: "directive", type: i1$2.RequiredValidator, selector: ":not([type=checkbox])[required][formControlName],:not([type=checkbox])[required][formControl],:not([type=checkbox])[required][ngModel]", inputs: ["required"] }, { kind: "directive", type: i1$2.FormGroupDirective, selector: "[formGroup]", inputs: ["formGroup"], outputs: ["ngSubmit"], exportAs: ["ngForm"] }, { kind: "directive", type: i1$2.FormControlName, selector: "[formControlName]", inputs: ["formControlName", "disabled", "ngModel"], outputs: ["ngModelChange"] }, { kind: "component", type: i2$7.MatCheckbox, selector: "mat-checkbox", inputs: ["aria-label", "aria-labelledby", "aria-describedby", "id", "required", "labelPosition", "name", "value", "disableRipple", "tabIndex", "color", "checked", "disabled", "indeterminate"], outputs: ["change", "indeterminateChange"], exportAs: ["matCheckbox"] }, { kind: "component", type: ColorPicker, selector: "bizdoc-color-picker", inputs: ["label", "value", "required", "disabled"], outputs: ["valueChanges"] }, { kind: "component", type: LocalizedStringComponent, selector: "bizdoc-localized-string", inputs: ["class", "floatLabel", "value", "placeholder", "required", "disabled", "maxlength"] }, { kind: "directive", type: EditContentDirective, selector: "[bizdocEditContent]" }, { kind: "component", type: DesignerItemComponent, selector: "bizdoc-designer-element", inputs: ["privileges", "icon", "form", "context"], outputs: ["save", "continue"] }, { kind: "pipe", type: TranslatePipe, name: "translate" }] }); }
|
33883
33901
|
}
|
33884
33902
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.2.3", ngImport: i0, type: ActionDesignerComponent, decorators: [{
|
33885
33903
|
type: Component,
|
@@ -33904,7 +33922,7 @@ class AttributeDesignComponent extends DesignerTypeElementComponent {
|
|
33904
33922
|
this._ref.model.title = dataType.title;
|
33905
33923
|
}
|
33906
33924
|
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.2.3", ngImport: i0, type: AttributeDesignComponent, deps: null, target: i0.ɵɵFactoryTarget.Component }); }
|
33907
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "17.2.3", type: AttributeDesignComponent, selector: "ng-component", usesInheritance: true, ngImport: i0, template: "<bizdoc-designer-element [form]=\"form\">\n <ng-template bizdocEditContent>\n <ng-container [formGroup]=\"form\">\n <mat-form-field>\n <mat-label>{{'DataType'|translate}}</mat-label>\n <mat-select required formControlName=\"dataType\">\n @for (t of datatypes['_'].elements|sort: 'title'; track t) {\n <mat-option [value]=\"t.name\">\n {{t.title}}\n </mat-option>\n }\n @for (g of datatypes|sort: 'title'; track g) {\n <mat-optgroup [label]=\"g.title\">\n @for (t of g.elements|sort: 'title'; track t) {\n <mat-option [value]=\"t.name\">\n {{t.title}}\n </mat-option>\n }\n </mat-optgroup>\n }\n </mat-select>\n </mat-form-field>\n </ng-container>\n </ng-template>\n <ng-template bizdocAddContent>\n <ng-container [formGroup]=\"form\">\n <mat-form-field>\n <mat-label>{{'DataType'|translate}}</mat-label>\n <mat-select required formControlName=\"dataType\">\n @for (t of datatypes['_'].elements|sort: 'title'; track t) {\n <mat-option [value]=\"t.name\">\n {{t.title}}\n </mat-option>\n }\n @for (g of datatypes|sort: 'title'; track g) {\n <mat-optgroup [label]=\"g.title\">\n @for (t of g.elements|sort: 'title'; track t) {\n <mat-option [value]=\"t.name\">\n {{t.title}}\n </mat-option>\n }\n </mat-optgroup>\n }\n </mat-select>\n </mat-form-field>\n </ng-container>\n </ng-template>\n</bizdoc-designer-element>\n", dependencies: [{ kind: "directive", type: i1$2.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i1$2.NgControlStatusGroup, selector: "[formGroupName],[formArrayName],[ngModelGroup],[formGroup],form:not([ngNoForm]),[ngForm]" }, { kind: "directive", type: i1$2.RequiredValidator, selector: ":not([type=checkbox])[required][formControlName],:not([type=checkbox])[required][formControl],:not([type=checkbox])[required][ngModel]", inputs: ["required"] }, { kind: "directive", type: i1$2.FormGroupDirective, selector: "[formGroup]", inputs: ["formGroup"], outputs: ["ngSubmit"], exportAs: ["ngForm"] }, { kind: "directive", type: i1$2.FormControlName, selector: "[formControlName]", inputs: ["formControlName", "disabled", "ngModel"], outputs: ["ngModelChange"] }, { kind: "component", type: i2$5.MatOption, selector: "mat-option", inputs: ["value", "id", "disabled"], outputs: ["onSelectionChange"], exportAs: ["matOption"] }, { kind: "component", type: i2$5.MatOptgroup, selector: "mat-optgroup", inputs: ["label", "disabled"], exportAs: ["matOptgroup"] }, { kind: "component", type: i3$1.MatFormField, selector: "mat-form-field", inputs: ["hideRequiredMarker", "color", "floatLabel", "appearance", "subscriptSizing", "hintLabel"], exportAs: ["matFormField"] }, { kind: "directive", type: i3$1.MatLabel, selector: "mat-label" }, { kind: "component", type: i4$2.MatSelect, selector: "mat-select", inputs: ["aria-describedby", "panelClass", "disabled", "disableRipple", "tabIndex", "hideSingleSelectionIndicator", "placeholder", "required", "multiple", "disableOptionCentering", "compareWith", "value", "aria-label", "aria-labelledby", "errorStateMatcher", "typeaheadDebounceInterval", "sortComparator", "id", "panelWidth"], outputs: ["openedChange", "opened", "closed", "selectionChange", "valueChange"], exportAs: ["matSelect"] }, { kind: "directive", type: AddContentDirective, selector: "[bizdocAddContent]" }, { kind: "directive", type: EditContentDirective, selector: "[bizdocEditContent]" }, { kind: "component", type: DesignerItemComponent, selector: "bizdoc-designer-element", inputs: ["privileges", "icon", "form", "context"], outputs: ["save"] }, { kind: "pipe", type: ArraySortPipe, name: "sort" }, { kind: "pipe", type: TranslatePipe, name: "translate" }] }); }
|
33925
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "17.2.3", type: AttributeDesignComponent, selector: "ng-component", usesInheritance: true, ngImport: i0, template: "<bizdoc-designer-element [form]=\"form\">\n <ng-template bizdocEditContent>\n <ng-container [formGroup]=\"form\">\n <mat-form-field>\n <mat-label>{{'DataType'|translate}}</mat-label>\n <mat-select required formControlName=\"dataType\">\n @for (t of datatypes['_'].elements|sort: 'title'; track t) {\n <mat-option [value]=\"t.name\">\n {{t.title}}\n </mat-option>\n }\n @for (g of datatypes|sort: 'title'; track g) {\n <mat-optgroup [label]=\"g.title\">\n @for (t of g.elements|sort: 'title'; track t) {\n <mat-option [value]=\"t.name\">\n {{t.title}}\n </mat-option>\n }\n </mat-optgroup>\n }\n </mat-select>\n </mat-form-field>\n </ng-container>\n </ng-template>\n <ng-template bizdocAddContent>\n <ng-container [formGroup]=\"form\">\n <mat-form-field>\n <mat-label>{{'DataType'|translate}}</mat-label>\n <mat-select required formControlName=\"dataType\">\n @for (t of datatypes['_'].elements|sort: 'title'; track t) {\n <mat-option [value]=\"t.name\">\n {{t.title}}\n </mat-option>\n }\n @for (g of datatypes|sort: 'title'; track g) {\n <mat-optgroup [label]=\"g.title\">\n @for (t of g.elements|sort: 'title'; track t) {\n <mat-option [value]=\"t.name\">\n {{t.title}}\n </mat-option>\n }\n </mat-optgroup>\n }\n </mat-select>\n </mat-form-field>\n </ng-container>\n </ng-template>\n</bizdoc-designer-element>\n", dependencies: [{ kind: "directive", type: i1$2.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i1$2.NgControlStatusGroup, selector: "[formGroupName],[formArrayName],[ngModelGroup],[formGroup],form:not([ngNoForm]),[ngForm]" }, { kind: "directive", type: i1$2.RequiredValidator, selector: ":not([type=checkbox])[required][formControlName],:not([type=checkbox])[required][formControl],:not([type=checkbox])[required][ngModel]", inputs: ["required"] }, { kind: "directive", type: i1$2.FormGroupDirective, selector: "[formGroup]", inputs: ["formGroup"], outputs: ["ngSubmit"], exportAs: ["ngForm"] }, { kind: "directive", type: i1$2.FormControlName, selector: "[formControlName]", inputs: ["formControlName", "disabled", "ngModel"], outputs: ["ngModelChange"] }, { kind: "component", type: i2$5.MatOption, selector: "mat-option", inputs: ["value", "id", "disabled"], outputs: ["onSelectionChange"], exportAs: ["matOption"] }, { kind: "component", type: i2$5.MatOptgroup, selector: "mat-optgroup", inputs: ["label", "disabled"], exportAs: ["matOptgroup"] }, { kind: "component", type: i3$1.MatFormField, selector: "mat-form-field", inputs: ["hideRequiredMarker", "color", "floatLabel", "appearance", "subscriptSizing", "hintLabel"], exportAs: ["matFormField"] }, { kind: "directive", type: i3$1.MatLabel, selector: "mat-label" }, { kind: "component", type: i4$2.MatSelect, selector: "mat-select", inputs: ["aria-describedby", "panelClass", "disabled", "disableRipple", "tabIndex", "hideSingleSelectionIndicator", "placeholder", "required", "multiple", "disableOptionCentering", "compareWith", "value", "aria-label", "aria-labelledby", "errorStateMatcher", "typeaheadDebounceInterval", "sortComparator", "id", "panelWidth"], outputs: ["openedChange", "opened", "closed", "selectionChange", "valueChange"], exportAs: ["matSelect"] }, { kind: "directive", type: AddContentDirective, selector: "[bizdocAddContent]" }, { kind: "directive", type: EditContentDirective, selector: "[bizdocEditContent]" }, { kind: "component", type: DesignerItemComponent, selector: "bizdoc-designer-element", inputs: ["privileges", "icon", "form", "context"], outputs: ["save", "continue"] }, { kind: "pipe", type: ArraySortPipe, name: "sort" }, { kind: "pipe", type: TranslatePipe, name: "translate" }] }); }
|
33908
33926
|
}
|
33909
33927
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.2.3", ngImport: i0, type: AttributeDesignComponent, decorators: [{
|
33910
33928
|
type: Component,
|
@@ -33922,7 +33940,7 @@ class ControlDesignComponent extends DesignerTypeElementComponent {
|
|
33922
33940
|
super.ngOnInit();
|
33923
33941
|
}
|
33924
33942
|
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.2.3", ngImport: i0, type: ControlDesignComponent, deps: null, target: i0.ɵɵFactoryTarget.Component }); }
|
33925
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.2.3", type: ControlDesignComponent, selector: "ng-component", usesInheritance: true, ngImport: i0, template: "<bizdoc-designer-element [form]=\"form\">\r\n <ng-template bizdocEditContent>\r\n <ng-container [formGroup]=\"form\">\r\n <mat-checkbox formControlName=\"visible\">{{'Visible'}}</mat-checkbox>\r\n </ng-container>\r\n </ng-template>\r\n</bizdoc-designer-element>\r\n", dependencies: [{ kind: "directive", type: i1$2.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i1$2.NgControlStatusGroup, selector: "[formGroupName],[formArrayName],[ngModelGroup],[formGroup],form:not([ngNoForm]),[ngForm]" }, { kind: "directive", type: i1$2.FormGroupDirective, selector: "[formGroup]", inputs: ["formGroup"], outputs: ["ngSubmit"], exportAs: ["ngForm"] }, { kind: "directive", type: i1$2.FormControlName, selector: "[formControlName]", inputs: ["formControlName", "disabled", "ngModel"], outputs: ["ngModelChange"] }, { kind: "component", type: i2$7.MatCheckbox, selector: "mat-checkbox", inputs: ["aria-label", "aria-labelledby", "aria-describedby", "id", "required", "labelPosition", "name", "value", "disableRipple", "tabIndex", "color", "checked", "disabled", "indeterminate"], outputs: ["change", "indeterminateChange"], exportAs: ["matCheckbox"] }, { kind: "directive", type: EditContentDirective, selector: "[bizdocEditContent]" }, { kind: "component", type: DesignerItemComponent, selector: "bizdoc-designer-element", inputs: ["privileges", "icon", "form", "context"], outputs: ["save"] }] }); }
|
33943
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.2.3", type: ControlDesignComponent, selector: "ng-component", usesInheritance: true, ngImport: i0, template: "<bizdoc-designer-element [form]=\"form\">\r\n <ng-template bizdocEditContent>\r\n <ng-container [formGroup]=\"form\">\r\n <mat-checkbox formControlName=\"visible\">{{'Visible'}}</mat-checkbox>\r\n </ng-container>\r\n </ng-template>\r\n</bizdoc-designer-element>\r\n", dependencies: [{ kind: "directive", type: i1$2.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i1$2.NgControlStatusGroup, selector: "[formGroupName],[formArrayName],[ngModelGroup],[formGroup],form:not([ngNoForm]),[ngForm]" }, { kind: "directive", type: i1$2.FormGroupDirective, selector: "[formGroup]", inputs: ["formGroup"], outputs: ["ngSubmit"], exportAs: ["ngForm"] }, { kind: "directive", type: i1$2.FormControlName, selector: "[formControlName]", inputs: ["formControlName", "disabled", "ngModel"], outputs: ["ngModelChange"] }, { kind: "component", type: i2$7.MatCheckbox, selector: "mat-checkbox", inputs: ["aria-label", "aria-labelledby", "aria-describedby", "id", "required", "labelPosition", "name", "value", "disableRipple", "tabIndex", "color", "checked", "disabled", "indeterminate"], outputs: ["change", "indeterminateChange"], exportAs: ["matCheckbox"] }, { kind: "directive", type: EditContentDirective, selector: "[bizdocEditContent]" }, { kind: "component", type: DesignerItemComponent, selector: "bizdoc-designer-element", inputs: ["privileges", "icon", "form", "context"], outputs: ["save", "continue"] }] }); }
|
33926
33944
|
}
|
33927
33945
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.2.3", ngImport: i0, type: ControlDesignComponent, decorators: [{
|
33928
33946
|
type: Component,
|
@@ -33989,6 +34007,9 @@ class CubeDesignComponent extends DesignerTypeElementComponent {
|
|
33989
34007
|
setTimeout(() => {
|
33990
34008
|
}, ms + 600000);
|
33991
34009
|
}
|
34010
|
+
onContinue() {
|
34011
|
+
this._form();
|
34012
|
+
}
|
33992
34013
|
_form() {
|
33993
34014
|
this.typegroups = super._typegroups;
|
33994
34015
|
this.guides = this._ref.designer.guides;
|
@@ -34061,9 +34082,14 @@ class CubeDesignComponent extends DesignerTypeElementComponent {
|
|
34061
34082
|
switch (v) {
|
34062
34083
|
case 'Spreadsheet':
|
34063
34084
|
case 'Grid':
|
34064
|
-
case 'Pivot':
|
34065
|
-
|
34085
|
+
case 'Pivot': // deprecated
|
34086
|
+
case 'PivotGrid':
|
34066
34087
|
chartType.disable({ emitEvent: false });
|
34088
|
+
series.addValidators(Validators.required);
|
34089
|
+
break;
|
34090
|
+
case 'PivotChart':
|
34091
|
+
chartType.enable({ emitEvent: false });
|
34092
|
+
series.addValidators(Validators.required);
|
34067
34093
|
break;
|
34068
34094
|
default:
|
34069
34095
|
series.clearValidators();
|
@@ -34126,11 +34152,11 @@ class CubeDesignComponent extends DesignerTypeElementComponent {
|
|
34126
34152
|
});
|
34127
34153
|
}
|
34128
34154
|
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.2.3", ngImport: i0, type: CubeDesignComponent, deps: [{ token: i1$2.FormBuilder }, { token: SystemService }, { token: PromptService }, { token: i0.ElementRef }, { token: DesignerRef }], target: i0.ɵɵFactoryTarget.Component }); }
|
34129
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "17.2.3", type: CubeDesignComponent, selector: "ng-component", viewQueries: [{ propertyName: "element", first: true, predicate: ["element"], descendants: true }], usesInheritance: true, ngImport: i0, template: "<bizdoc-designer-element [form]=\"form\" [privileges]=\"true\" [context]=\"context\">\n <!-- widget -->\n <ng-template bizdocContent>\n @if (jobInfo) {\n <dl>\n @if (jobInfo.lastExecution) {\n <dt>{{'LastExecution'|translate}}</dt>\n <dd>{{jobInfo.lastExecution|amTimeAgo}}</dd>\n }\n @if (jobInfo.nextExecution) {\n <dt>{{'NextExecution'|translate}}</dt>\n <dd>{{jobInfo.nextExecution|amTimeAgo}}</dd>\n }\n @if (jobInfo.lastJobState) {\n <dt>{{'LastJobState'|translate}}</dt>\n <dd>\n @if (jobInfo.error) {\n <mat-icon [bizdocTooltip]=\"jobInfo.error\">report</mat-icon>\n }\n <span class=\"job-state\">{{jobInfo.lastJobState| translate}}</span>\n </dd>\n }\n </dl>\n }\n <div class=\"row start center\">\n <button mat-stroked-button (click)=\"sync()\" [disabled]=\"model.draft || syncing\">\n <span> {{'Synchronize'|translate}}</span>\n </button>\n \n @if (syncing) {\n <mat-spinner diameter=\"22\"></mat-spinner>\n }\n </div>\n <div class=\"row\">\n @if(model.axes?.length)\n {\n <mat-chip-set>\n @for(axis of model.axes; track axis){\n <mat-chip>{{axis.title}}</mat-chip>\n }\n @for(index of model.indices || []; track index){\n <mat-chip>{{index.title}}</mat-chip>\n }\n </mat-chip-set>\n }\n </div>\n </ng-template>\n <!-- edit -->\n <ng-template bizdocEditContent>\n <ng-container [formGroup]=\"form\">\n <mat-label>{{'SecurityLevel'|translate}}</mat-label>\n <mat-radio-group formControlName=\"scope\">\n <p></p>\n <mat-radio-button color=\"warn\">{{'Global'|translate}}</mat-radio-button>\n <p>{{'SecurityGlobalHelp'|translate}}</p>\n <mat-radio-button value=\"Positions\">{{'Positions'|translate}}</mat-radio-button>\n <p>{{'SecurityPositionsHelp'|translate}}</p>\n <mat-radio-button value=\"Patterns\">{{'Patterns'|translate}}</mat-radio-button>\n <p>{{'SecurityPatternsHelp'|translate}}</p>\n </mat-radio-group>\n <ng-container formGroupName=\"yAxis\">\n <mat-form-field class=\"flex\">\n <mat-label>{{'Type'|translate}}</mat-label>\n <mat-select formControlName=\"type\">\n <mat-option value=\"Currency\">{{'Currency'|translate}}</mat-option>\n <mat-option value=\"Number\">{{'Numeric'|translate}}</mat-option>\n <mat-option value=\"Count\">{{'Accumulative'|translate}}</mat-option>\n </mat-select>\n </mat-form-field>\n </ng-container>\n <mat-form-field>\n <mat-label>{{'Currency'|translate}}</mat-label>\n <mat-select formControlName=\"currencyCode\" [sortComparator]=\"sortComparator\">\n @for (c of currencies; track c) {\n <mat-option [value]=\"c.name\">{{c.title}}</mat-option>\n }\n </mat-select>\n </mat-form-field>\n <!--Axes-->\n <h2 class=\"mat-h2 row\">\n {{'Axes'|translate}}\n <span class=\"divider\"></span>\n <button mat-icon-button (click)=\"add(axes, newAxis(), 'Axis', 'axis')\" [bizdocTooltip]=\"'Add'|translate\" type=\"button\"><mat-icon>add_circle_outline</mat-icon></button>\n </h2>\n <table formArrayName=\"axes\" class=\"mat-mdc-table\" cdkDropList (cdkDropListDropped)=\"drop($event, axes)\">\n @for (a of axes.controls; track a; let index = $index) {\n <tr class=\"mat-mdc-row\" [formGroup]=\"a\" cdkDrag>\n <td class=\"mat-mdc-cell\">\n <mat-icon cdkDragHandle>drag_indicator</mat-icon>\n </td>\n <td class=\"mat-mdc-cell flex\">\n {{a.controls.title.value}}\n </td>\n <td class=\"mat-mdc-cell nowrap\">\n <button mat-icon-button (click)=\"edit(a, 'Axis', 'axis')\" [bizdocTooltip]=\"'Edit'|translate\" type=\"button\"><mat-icon>edit</mat-icon></button>\n <button mat-icon-button (click)=\"axes.removeAt(index)\" [bizdocTooltip]=\"'Remove'|translate\" type=\"button\"><mat-icon>delete</mat-icon></button>\n </td>\n </tr>\n }\n </table>\n <!--Indices-->\n <h2 class=\"mat-h2 row\">\n {{'Indices'|translate}}\n <span class=\"divider\"></span>\n <button mat-icon-button (click)=\"add(indices, newIndex(), 'Index', 'index')\" [bizdocTooltip]=\"'Add'|translate\" type=\"button\"><mat-icon>add_circle_outline</mat-icon></button>\n </h2>\n <table formArrayName=\"indices\" class=\"mat-mdc-table\" cdkDropList (cdkDropListDropped)=\"drop($event, indices)\">\n @for (i of indices.controls; track i; let index = $index) {\n <tr class=\"mat-mdc-row\" [formGroup]=\"i\" cdkDrag>\n <td class=\"mat-mdc-cell\">\n <mat-icon cdkDragHandle>drag_indicator</mat-icon>\n </td>\n <td class=\"mat-mdc-cell flex\">\n {{i.controls.title.value}}\n </td>\n <td class=\"mat-mdc-cell nowrap\">\n <button mat-icon-button (click)=\"edit(i, 'Index', 'index')\" [bizdocTooltip]=\"'Edit'|translate\" type=\"button\"><mat-icon>edit</mat-icon></button>\n <button mat-icon-button (click)=\"indices.removeAt(index)\" [bizdocTooltip]=\"'Remove'|translate\" type=\"button\"><mat-icon>delete</mat-icon></button>\n </td>\n </tr>\n }\n </table>\n @if (indices.controls.length) {\n <mat-form-field>\n <mat-label>{{'AnomalyNotification'|translate}}</mat-label>\n <mat-select formControlName=\"anomaly\">\n <mat-option value=\"None\">{{'None'|translate}}</mat-option>\n <mat-option value=\"Positions\">{{'Positions'|translate}}</mat-option>\n <mat-option value=\"Recipients\">{{'Everyone'|translate}}</mat-option>\n </mat-select>\n </mat-form-field>\n }\n <!--Patterns-->\n <h2 class=\"mat-h2 row\">\n {{'Patterns'|translate}}\n <span class=\"divider\"></span>\n <button mat-icon-button (click)=\"add(patterns, newPattern(), 'Pattern', 'pattern')\" [bizdocTooltip]=\"'Add'|translate\" type=\"button\"><mat-icon>add_circle_outline</mat-icon></button>\n </h2>\n <table formArrayName=\"indices\" class=\"mat-mdc-table\" cdkDropList (cdkDropListDropped)=\"drop($event, patterns)\">\n @for (p of patterns.controls; track p; let index = $index) {\n <tr class=\"mat-mdc-row\" [formGroup]=\"p\" cdkDrag>\n <td class=\"mat-mdc-cell\">\n <mat-icon cdkDragHandle>drag_indicator</mat-icon>\n </td>\n <td class=\"mat-mdc-cell flex\">\n {{p.controls.title.value}}\n </td>\n <td class=\"mat-mdc-cell nowrap\">\n <button mat-icon-button (click)=\"edit(p, 'Pattern', 'pattern')\" [bizdocTooltip]=\"'Edit'|translate\" type=\"button\"><mat-icon>edit</mat-icon></button>\n <button mat-icon-button (click)=\"patterns.removeAt(index)\" [bizdocTooltip]=\"'Remove'|translate\" type=\"button\"><mat-icon>delete</mat-icon></button>\n </td>\n </tr>\n }\n </table>\n <!--Views-->\n <h2 class=\"row mat-h2\">\n {{'CubeViews'|translate}}\n <span class=\"divider\"></span>\n <button mat-icon-button (click)=\"add(views, newView(), 'CubeView', 'view')\" [bizdocTooltip]=\"'Add'|translate\" type=\"button\"><mat-icon>add_circle_outline</mat-icon></button>\n </h2>\n <table formArrayName=\"views\" class=\"mat-mdc-table\" cdkDropList (cdkDropListDropped)=\"drop($event, views)\">\n @for (v of views.controls; track v; let index = $index) {\n <tr class=\"mat-mdc-row\" [formGroup]=\"v\" cdkDrag>\n <td class=\"mat-mdc-cell\">\n <mat-icon cdkDragHandle>drag_indicator</mat-icon>\n </td>\n <td class=\"mat-mdc-cell flex\">\n {{v.controls.title.value}}\n </td>\n <td class=\"mat-mdc-cell nowrap\">\n <button mat-icon-button (click)=\"edit(v, 'View', 'view')\" [bizdocTooltip]=\"'Edit'|translate\" type=\"button\"><mat-icon>edit</mat-icon></button>\n <button mat-icon-button (click)=\"views.removeAt(index)\" [bizdocTooltip]=\"'Remove'|translate\" type=\"button\"><mat-icon>delete</mat-icon></button>\n </td>\n </tr>\n }\n </table>\n <mat-form-field>\n <mat-label>{{'Schedule'|translate}}</mat-label>\n <bizdoc-timespan-input formControlName=\"schedule\"></bizdoc-timespan-input>\n <mat-icon matSuffix>timer</mat-icon>\n <mat-hint></mat-hint>\n </mat-form-field>\n </ng-container>\n </ng-template>\n <!--idx-->\n <ng-template bizdocCustomContent=\"index\" let-form=\"form\">\n <ng-container [formGroup]=\"form\">\n <mat-form-field class=\"flex\">\n <mat-label>{{'Title'|translate}}</mat-label>\n <input matInput formControlName=\"title\" required />\n @if (form.controls.title.hasError('required')) {\n <mat-error [innerHTML]=\"'RequiredErr'|translate:('Title'|translate)\"></mat-error>\n }\n </mat-form-field>\n <mat-form-field class=\"flex\">\n <mat-label>{{'Name'|translate}}</mat-label>\n <input matInput formControlName=\"name\" required />\n @if (form.controls.name.hasError('required')) {\n <mat-error [innerHTML]=\"'RequiredErr'|translate:('Name'|translate)\"></mat-error>\n }\n </mat-form-field>\n </ng-container>\n </ng-template>\n <!-- pattern-->\n <ng-template bizdocCustomContent=\"pattern\" let-form=\"form\">\n <ng-container [formGroup]=\"form\">\n <mat-form-field class=\"flex\">\n <mat-label>{{'Title'|translate}}</mat-label>\n <input matInput formControlName=\"title\" required />\n @if (form.controls.title.hasError('required')) {\n <mat-error [innerHTML]=\"'RequiredErr'|translate:('Title'|translate)\"></mat-error>\n }\n </mat-form-field>\n <bizdoc-designer-cube-filter [cube]=\"model\" [form]=\"form.controls.axes\"></bizdoc-designer-cube-filter>\n <bizdoc-designer-privileges [form]=\"form\"></bizdoc-designer-privileges>\n </ng-container>\n </ng-template>\n <!-- view -->\n <ng-template bizdocCustomContent=\"view\" let-form=\"form\">\n <ng-container [formGroup]=\"form\">\n <mat-form-field class=\"flex\">\n <mat-label>{{'Title'|translate}}</mat-label>\n <input matInput formControlName=\"title\" required />\n @if (form.controls.title.hasError('required')) {\n <mat-error [innerHTML]=\"'RequiredErr'|translate:('Title'|translate)\"></mat-error>\n }\n </mat-form-field>\n <mat-form-field>\n <mat-label>{{'Type'|translate}}</mat-label>\n <mat-select formControlName=\"type\">\n <mat-option value=\"Chart\">{{'Chart'|translate}}</mat-option>\n <mat-option value=\"Pivot\">{{'Pivot'|translate}}</mat-option>\n <mat-option value=\"Grid\">{{'Grid'|translate}}</mat-option>\n <mat-option value=\"Spreadsheet\">{{'Spreadsheet'|translate}}</mat-option>\n </mat-select>\n </mat-form-field>\n <mat-form-field>\n <mat-label>{{'XAxis'|translate}}</mat-label>\n <mat-select formControlName=\"xAxis\" required multiple [sortComparator]=\"sortComparator\">\n @for (a of axes.controls; track a) {\n <mat-option [value]=\"a.controls.name.value\">{{a.controls.title.value || a.controls.name.value}}</mat-option>\n }\n </mat-select>\n @if (form.controls.xAxis.hasError('required')) {\n <mat-error [innerHTML]=\"'RequiredErr'|translate:('XAxis'|translate)\"></mat-error>\n }\n </mat-form-field>\n <mat-form-field>\n <mat-label>{{'Series'|translate}}</mat-label>\n <mat-select formControlName=\"series\" multiple [sortComparator]=\"sortComparator\">\n @for (a of axes.controls; track a) {\n @if (form.controls.xAxis.value?.indexOf(a.controls.name.value) < 0) {\n <mat-option [value]=\"a.controls.name.value\">{{a.controls.title.value|| a.controls.name.value}}</mat-option>\n }\n }\n </mat-select>\n @if (form.controls.series.hasError('required')) {\n <mat-error [innerHTML]=\"'RequiredErr'|translate:('Series'|translate)\"></mat-error>\n }\n </mat-form-field>\n <mat-form-field>\n <mat-label>{{'Indices'|translate}}</mat-label>\n <mat-select formControlName=\"indices\" multiple>\n @for (i of indices.controls; track i) {\n <mat-option [value]=\"i.controls.name.value\">{{i.controls.title.value|| i.controls.name.value}}</mat-option>\n }\n </mat-select>\n </mat-form-field>\n <mat-form-field>\n <mat-label>{{'ChartType'|translate}}</mat-label>\n <mat-select formControlName=\"chartType\">\n @switch (form.controls.type.value) {\n @case ('Chart') {\n <mat-option value=\"Pie\" [disabled]=\"form.controls.series.value?.length>0\">{{'Pie'|translate}}</mat-option>\n <mat-option value=\"Doughnut\" [disabled]=\"form.controls.series.value?.length>0\">{{'Doughnut'|translate}}</mat-option>\n <mat-option value=\"HalfDoughnut\" [disabled]=\"form.controls.series.value?.length>0\">{{'HalfDoughnut'|translate}}</mat-option>\n <mat-option value=\"Funnel\" [disabled]=\"form.controls.series.value?.length>0\">{{'Funnel'|translate}}</mat-option>\n <mat-option value=\"Pyramid\" [disabled]=\"form.controls.series.value?.length>0\">{{'Pyramid'|translate}}</mat-option>\n <mat-option value=\"Column\">{{'Column'|translate}}</mat-option>\n <mat-option value=\"Bar\">{{'Bar'|translate}}</mat-option>\n <mat-option value=\"Bubble\">{{'Bubble'|translate}}</mat-option>\n <mat-option value=\"Line\">{{'Line'|translate}}</mat-option>\n <mat-option value=\"Spline\">{{'Spline'|translate}}</mat-option>\n <mat-option value=\"Area\">{{'Area'|translate}}</mat-option>\n <mat-option value=\"Scatter\">{{'Scatter'|translate}}</mat-option>\n <mat-option value=\"Polar\">{{'Polar'|translate}}</mat-option>\n <mat-option value=\"Radar\">{{'Radar'|translate}}</mat-option>\n <mat-option value=\"StepLine\">{{'StepLine'|translate}}</mat-option>\n <mat-option value=\"StepArea\">{{'StepArea'|translate}}</mat-option>\n <mat-option value=\"SplineArea\">{{'SplineArea'|translate}}</mat-option>\n <mat-option value=\"StackingBar\" [disabled]=\"!form.controls.series.value?.length\">{{'StackingBar'|translate}}</mat-option>\n <mat-option value=\"StackingBar100\" [disabled]=\"!form.controls.series.value?.length\">{{'StackingBar100'|translate}}</mat-option>\n <mat-option value=\"StackingArea\" [disabled]=\"!form.controls.series.value?.length\">{{'StackingArea'|translate}}</mat-option>\n <mat-option value=\"StackingArea100\" [disabled]=\"!form.controls.series.value?.length\">{{'StackingArea100'|translate}}</mat-option>\n <mat-option value=\"StackingColumn\" [disabled]=\"!form.controls.series.value?.length\">{{'StackingColumn'|translate}}</mat-option>\n <mat-option value=\"StackingColumn100\" [disabled]=\"!form.controls.series.value?.length\">{{'StackingColumn100'|translate}}</mat-option>\n <mat-option value=\"StackingStepArea\" [disabled]=\"!form.controls.series.value?.length\">{{'StackingStepArea'|translate}}</mat-option>\n <mat-option value=\"StackingLine\" [disabled]=\"!form.controls.series.value?.length\">{{'StackingLine'|translate}}</mat-option>\n <mat-option value=\"StackingLine100\" [disabled]=\"!form.controls.series.value?.length\">{{'StackingLine100'|translate}}</mat-option>\n }\n @case ('Pivot') {\n <mat-option>{{'None'|translate}}</mat-option>\n <mat-option value=\"Column\">{{'Column'|translate}}</mat-option>\n <mat-option value=\"Bar\">{{'Bar'|translate}}</mat-option>\n <mat-option value=\"Bubble\">{{'Bubble'|translate}}</mat-option>\n <mat-option value=\"Line\">{{'Line'|translate}}</mat-option>\n <mat-option value=\"Spline\">{{'Spline'|translate}}</mat-option>\n <mat-option value=\"SplineArea\">{{'SplineArea'|translate}}</mat-option>\n <mat-option value=\"Area\">{{'Area'|translate}}</mat-option>\n <mat-option value=\"Scatter\">{{'Scatter'|translate}}</mat-option>\n <mat-option value=\"Polar\">{{'Polar'|translate}}</mat-option>\n <mat-option value=\"Radar\">{{'Radar'|translate}}</mat-option>\n <mat-option value=\"StepLine\">{{'StepLine'|translate}}</mat-option>\n <mat-option value=\"StepArea\">{{'StepArea'|translate}}</mat-option>\n <mat-option value=\"StackingBar\" [disabled]=\"!form.controls.series.value?.length\">{{'StackingBar'|translate}}</mat-option>\n <mat-option value=\"StackingBar100\" [disabled]=\"!form.controls.series.value?.length\">{{'StackingBar100'|translate}}</mat-option>\n <mat-option value=\"StackingArea\" [disabled]=\"!form.controls.series.value?.length\">{{'StackingArea'|translate}}</mat-option>\n <mat-option value=\"StackingArea100\" [disabled]=\"!form.controls.series.value?.length\">{{'StackingArea100'|translate}}</mat-option>\n <mat-option value=\"StackingColumn\" [disabled]=\"!form.controls.series.value?.length\">{{'StackingColumn'|translate}}</mat-option>\n <mat-option value=\"StackingColumn100\" [disabled]=\"!form.controls.series.value?.length\">{{'StackingColumn100'|translate}}</mat-option>\n <mat-option value=\"StackingStepArea\" [disabled]=\"!form.controls.series.value?.length\">{{'StackingStepArea'|translate}}</mat-option>\n <mat-option value=\"StackingLine\" [disabled]=\"!form.controls.series.value?.length\">{{'StackingLine'|translate}}</mat-option>\n <mat-option value=\"StackingLine100\" [disabled]=\"!form.controls.series.value?.length\">{{'StackingLine100'|translate}}</mat-option>\n }\n }\n </mat-select>\n </mat-form-field>\n <mat-form-field>\n <mat-label>{{'IndicesChartType'|translate}}</mat-label>\n <mat-select formControlName=\"indicesChartType\">\n @switch (form.controls.type.value) {\n @case ('Chart') {\n <mat-option value=\"Column\">{{'Column'|translate}}</mat-option>\n <mat-option value=\"Bar\">{{'Bar'|translate}}</mat-option>\n <mat-option value=\"Bubble\">{{'Bubble'|translate}}</mat-option>\n <mat-option value=\"Line\">{{'Line'|translate}}</mat-option>\n <mat-option value=\"Spline\">{{'Spline'|translate}}</mat-option>\n <mat-option value=\"SplineArea\">{{'SplineArea'|translate}}</mat-option>\n <mat-option value=\"Area\">{{'Area'|translate}}</mat-option>\n <mat-option value=\"Scatter\">{{'Scatter'|translate}}</mat-option>\n <mat-option value=\"Polar\">{{'Polar'|translate}}</mat-option>\n <mat-option value=\"Radar\">{{'Radar'|translate}}</mat-option>\n <mat-option value=\"StepLine\">{{'StepLine'|translate}}</mat-option>\n <mat-option value=\"StepArea\">{{'StepArea'|translate}}</mat-option>\n <mat-option value=\"StackingColumn\" [disabled]=\"form.controls.indices.value?.length<2\">{{'StackingColumn'|translate}}</mat-option>\n <mat-option value=\"StackingColumn100\" [disabled]=\"form.controls.indices.value?.length<2\">{{'StackingColumn100'|translate}}</mat-option>\n <mat-option value=\"StackingBar\" [disabled]=\"form.controls.indices.value?.length<2\">{{'StackingBar'|translate}}</mat-option>\n <mat-option value=\"StackingBar100\" [disabled]=\"form.controls.indices.value?.length<2\">{{'StackingBar100'|translate}}</mat-option>\n <mat-option value=\"StackingLine\" [disabled]=\"form.controls.indices.value?.length<2\">{{'StackingLine'|translate}}</mat-option>\n <mat-option value=\"StackingLine100\" [disabled]=\"form.controls.indices.value?.length<2\">{{'StackingLine100'|translate}}</mat-option>\n <mat-option value=\"StackingArea\" [disabled]=\"form.controls.indices.value?.length<2\">{{'StackingArea'|translate}}</mat-option>\n <mat-option value=\"StackingArea100\" [disabled]=\"form.controls.indices.value?.length<2\">{{'StackingArea100'|translate}}</mat-option>\n <mat-option value=\"StackingStepArea\" [disabled]=\"form.controls.indices.value?.length<2\">{{'StackingStepArea'|translate}}</mat-option>\n }\n @case ('Pivot') {\n <mat-option>{{'None'|translate}}</mat-option>\n <mat-option value=\"Column\">{{'Column'|translate}}</mat-option>\n <mat-option value=\"Bar\">{{'Bar'|translate}}</mat-option>\n <mat-option value=\"Bubble\">{{'Bubble'|translate}}</mat-option>\n <mat-option value=\"Line\">{{'Line'|translate}}</mat-option>\n <mat-option value=\"Spline\">{{'Spline'|translate}}</mat-option>\n <mat-option value=\"SplineArea\">{{'SplineArea'|translate}}</mat-option>\n <mat-option value=\"Area\">{{'Area'|translate}}</mat-option>\n <mat-option value=\"Scatter\">{{'Scatter'|translate}}</mat-option>\n <mat-option value=\"Polar\">{{'Polar'|translate}}</mat-option>\n <mat-option value=\"Radar\">{{'Radar'|translate}}</mat-option>\n <mat-option value=\"StepLine\">{{'StepLine'|translate}}</mat-option>\n <mat-option value=\"StepArea\">{{'StepArea'|translate}}</mat-option>\n <mat-option value=\"StackingBar\" [disabled]=\"form.controls.series.value?.length<2\">{{'StackingBar'|translate}}</mat-option>\n <mat-option value=\"StackingBar100\" [disabled]=\"form.controls.series.value?.length<2\">{{'StackingBar100'|translate}}</mat-option>\n <mat-option value=\"StackingArea\" [disabled]=\"form.controls.series.value?.length<2\">{{'StackingArea'|translate}}</mat-option>\n <mat-option value=\"StackingArea100\" [disabled]=\"form.controls.series.value?.length<2\">{{'StackingArea100'|translate}}</mat-option>\n <mat-option value=\"StackingColumn\" [disabled]=\"form.controls.series.value?.length<2\">{{'StackingColumn'|translate}}</mat-option>\n <mat-option value=\"StackingColumn100\" [disabled]=\"form.controls.series.value?.length<2\">{{'StackingColumn100'|translate}}</mat-option>\n <mat-option value=\"StackingStepArea\" [disabled]=\"form.controls.series.value?.length<2\">{{'StackingStepArea'|translate}}</mat-option>\n <mat-option value=\"StackingLine\" [disabled]=\"form.controls.series.value?.length<2\">{{'StackingLine'|translate}}</mat-option>\n <mat-option value=\"StackingLine100\" [disabled]=\"form.controls.series.value?.length<2\">{{'StackingLine100'|translate}}</mat-option>\n }\n }\n </mat-select>\n </mat-form-field>\n <mat-form-field>\n <mat-label>{{'Guide'|translate}}</mat-label>\n <mat-select formControlName=\"guide\">\n <mat-option>{{'None'|translate}}</mat-option>\n @for (g of guides; track g) {\n <mat-option [value]=\"g.name\">{{g.title |localizedString}}</mat-option>\n }\n </mat-select>\n </mat-form-field>\n @if (cube) {\n <bizdoc-designer-cube-filter [cube]=\"cube\" [form]=\"form.controls.filters\"></bizdoc-designer-cube-filter>\n }\n </ng-container>\n </ng-template>\n <!-- Axis -->\n <ng-template bizdocCustomContent=\"axis\" let-form=\"form\">\n <ng-container [formGroup]=\"form\">\n <div class=\"row gap\">\n <mat-form-field class=\"flex\">\n <mat-label>{{'Title'|translate}}</mat-label>\n <input matInput formControlName=\"title\" required />\n @if (form.controls.title.hasError('required')) {\n <mat-error [innerHTML]=\"'RequiredErr'|translate:('Title'|translate)\"></mat-error>\n }\n </mat-form-field>\n <mat-form-field class=\"flex\">\n <mat-label>{{'Name'|translate}}</mat-label>\n <input matInput formControlName=\"name\" required />\n @if (form.controls.name.hasError('required')) {\n <mat-error [innerHTML]=\"'RequiredErr'|translate:('Name'|translate)\"></mat-error>\n }\n </mat-form-field>\n </div>\n <mat-form-field>\n <mat-label>{{'DataType'|translate}}</mat-label>\n <mat-select formControlName=\"dataType\" required>\n @for (t of typegroups['_'].elements|sort: 'title'; track t) {\n <mat-option [value]=\"t.name\">\n {{t.title}}\n </mat-option>\n }\n @for (g of typegroups|sort: 'title'; track g) {\n <mat-optgroup [label]=\"g.title\">\n @for (t of g.elements|sort: 'title'; track t) {\n <mat-option [value]=\"t.name\">\n {{t.title}}\n </mat-option>\n }\n </mat-optgroup>\n }\n </mat-select>\n @if (form.controls.title.hasError('required')) {\n <mat-error [innerHTML]=\"'RequiredErr'|translate:('DataType'|translate)\"></mat-error>\n }\n </mat-form-field>\n <div><mat-checkbox formControlName=\"combination\">{{'CombinationAxis'|translate}}</mat-checkbox></div>\n <div><mat-checkbox formControlName=\"sensitive\">{{'SensitiveAxis'|translate}}</mat-checkbox></div>\n <mat-form-field>\n <mat-label>{{'SelectionMode'|translate}}</mat-label>\n <mat-select formControlName=\"selectionMode\">\n <mat-option value=\"None\">{{'None'|translate}}</mat-option>\n <mat-option>{{'OneMode'|translate}}</mat-option>\n <mat-option value=\"Multiple\">{{'Multiple'|translate}}</mat-option>\n <mat-option value=\"Search\">{{'Autocomplete'|translate}}</mat-option>\n <mat-option value=\"Pattern\">{{'Pattern'|translate}}</mat-option>\n </mat-select>\n </mat-form-field>\n <mat-form-field>\n <mat-label>{{'DescendentOf'|translate}}</mat-label>\n <mat-select formControlName=\"descendentOf\">\n @for (a of axes.controls; track a) {\n @if (a!=form) {\n <mat-option [value]=\"a.controls.name.value\">{{a.controls.title.value}}</mat-option>\n }\n }\n </mat-select>\n </mat-form-field>\n <div><mat-checkbox formControlName=\"indexable\">{{'IndexableAxis'|translate}}</mat-checkbox></div>\n </ng-container>\n </ng-template>\n</bizdoc-designer-element>\n", styles: [":host ::ng-deep form{min-width:350px}:host ::ng-deep .mat-mdc-radio-group p{margin-inline-start:8px}.mat-mdc-table{width:100%}.mat-mdc-table .mat-mdc-cell:last-child{width:80px}.flex{flex:1}table tr td:first-child{width:26px}dl{width:100%;overflow:hidden;padding:0;margin:0}dt{padding:0;margin:0;clear:both}dd{float:left;padding:0;margin:0}\n"], dependencies: [{ kind: "directive", type: i1$2.DefaultValueAccessor, selector: "input:not([type=checkbox])[formControlName],textarea[formControlName],input:not([type=checkbox])[formControl],textarea[formControl],input:not([type=checkbox])[ngModel],textarea[ngModel],[ngDefaultControl]" }, { kind: "directive", type: i1$2.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i1$2.NgControlStatusGroup, selector: "[formGroupName],[formArrayName],[ngModelGroup],[formGroup],form:not([ngNoForm]),[ngForm]" }, { kind: "directive", type: i1$2.RequiredValidator, selector: ":not([type=checkbox])[required][formControlName],:not([type=checkbox])[required][formControl],:not([type=checkbox])[required][ngModel]", inputs: ["required"] }, { kind: "directive", type: i1$2.FormGroupDirective, selector: "[formGroup]", inputs: ["formGroup"], outputs: ["ngSubmit"], exportAs: ["ngForm"] }, { kind: "directive", type: i1$2.FormControlName, selector: "[formControlName]", inputs: ["formControlName", "disabled", "ngModel"], outputs: ["ngModelChange"] }, { kind: "directive", type: i1$2.FormGroupName, selector: "[formGroupName]", inputs: ["formGroupName"] }, { kind: "directive", type: i1$2.FormArrayName, selector: "[formArrayName]", inputs: ["formArrayName"] }, { kind: "component", type: i4.MatChip, selector: "mat-basic-chip, [mat-basic-chip], mat-chip, [mat-chip]", inputs: ["role", "id", "aria-label", "aria-description", "value", "color", "removable", "highlighted", "disableRipple", "disabled", "tabIndex"], outputs: ["removed", "destroyed"], exportAs: ["matChip"] }, { kind: "component", type: i4.MatChipSet, selector: "mat-chip-set", inputs: ["disabled", "role", "tabIndex"] }, { kind: "directive", type: i2$6.CdkDropList, selector: "[cdkDropList], cdk-drop-list", inputs: ["cdkDropListConnectedTo", "cdkDropListData", "cdkDropListOrientation", "id", "cdkDropListLockAxis", "cdkDropListDisabled", "cdkDropListSortingDisabled", "cdkDropListEnterPredicate", "cdkDropListSortPredicate", "cdkDropListAutoScrollDisabled", "cdkDropListAutoScrollStep"], outputs: ["cdkDropListDropped", "cdkDropListEntered", "cdkDropListExited", "cdkDropListSorted"], exportAs: ["cdkDropList"] }, { kind: "directive", type: i2$6.CdkDrag, selector: "[cdkDrag]", inputs: ["cdkDragData", "cdkDragLockAxis", "cdkDragRootElement", "cdkDragBoundary", "cdkDragStartDelay", "cdkDragFreeDragPosition", "cdkDragDisabled", "cdkDragConstrainPosition", "cdkDragPreviewClass", "cdkDragPreviewContainer"], outputs: ["cdkDragStarted", "cdkDragReleased", "cdkDragEnded", "cdkDragEntered", "cdkDragExited", "cdkDragDropped", "cdkDragMoved"], exportAs: ["cdkDrag"] }, { kind: "directive", type: i2$6.CdkDragHandle, selector: "[cdkDragHandle]", inputs: ["cdkDragHandleDisabled"] }, { kind: "directive", type: i2$b.MatRadioGroup, selector: "mat-radio-group", inputs: ["color", "name", "labelPosition", "value", "selected", "disabled", "required"], outputs: ["change"], exportAs: ["matRadioGroup"] }, { kind: "component", type: i2$b.MatRadioButton, selector: "mat-radio-button", inputs: ["id", "name", "aria-label", "aria-labelledby", "aria-describedby", "disableRipple", "tabIndex", "checked", "value", "labelPosition", "disabled", "required", "color"], outputs: ["change"], exportAs: ["matRadioButton"] }, { kind: "component", type: i7.MatProgressSpinner, selector: "mat-progress-spinner, mat-spinner", inputs: ["color", "mode", "value", "diameter", "strokeWidth"], exportAs: ["matProgressSpinner"] }, { kind: "component", type: i2$5.MatOption, selector: "mat-option", inputs: ["value", "id", "disabled"], outputs: ["onSelectionChange"], exportAs: ["matOption"] }, { kind: "component", type: i2$5.MatOptgroup, selector: "mat-optgroup", inputs: ["label", "disabled"], exportAs: ["matOptgroup"] }, { kind: "component", type: i3$1.MatFormField, selector: "mat-form-field", inputs: ["hideRequiredMarker", "color", "floatLabel", "appearance", "subscriptSizing", "hintLabel"], exportAs: ["matFormField"] }, { kind: "directive", type: i3$1.MatLabel, selector: "mat-label" }, { kind: "directive", type: i3$1.MatHint, selector: "mat-hint", inputs: ["align", "id"] }, { kind: "directive", type: i3$1.MatError, selector: "mat-error, [matError]", inputs: ["id"] }, { kind: "directive", type: i3$1.MatSuffix, selector: "[matSuffix], [matIconSuffix], [matTextSuffix]", inputs: ["matTextSuffix"] }, { kind: "component", type: i4$2.MatSelect, selector: "mat-select", inputs: ["aria-describedby", "panelClass", "disabled", "disableRipple", "tabIndex", "hideSingleSelectionIndicator", "placeholder", "required", "multiple", "disableOptionCentering", "compareWith", "value", "aria-label", "aria-labelledby", "errorStateMatcher", "typeaheadDebounceInterval", "sortComparator", "id", "panelWidth"], outputs: ["openedChange", "opened", "closed", "selectionChange", "valueChange"], exportAs: ["matSelect"] }, { kind: "component", type: i8.MatButton, selector: " button[mat-button], button[mat-raised-button], button[mat-flat-button], button[mat-stroked-button] ", exportAs: ["matButton"] }, { kind: "component", type: i8.MatIconButton, selector: "button[mat-icon-button]", exportAs: ["matButton"] }, { kind: "component", type: i2$7.MatCheckbox, selector: "mat-checkbox", inputs: ["aria-label", "aria-labelledby", "aria-describedby", "id", "required", "labelPosition", "name", "value", "disableRipple", "tabIndex", "color", "checked", "disabled", "indeterminate"], outputs: ["change", "indeterminateChange"], exportAs: ["matCheckbox"] }, { kind: "directive", type: i3$3.MatInput, selector: "input[matInput], textarea[matInput], select[matNativeControl], input[matNativeControl], textarea[matNativeControl]", inputs: ["disabled", "id", "placeholder", "name", "required", "type", "errorStateMatcher", "aria-describedby", "value", "readonly"], exportAs: ["matInput"] }, { kind: "component", type: i10.MatIcon, selector: "mat-icon", inputs: ["color", "inline", "svgIcon", "fontSet", "fontIcon"], exportAs: ["matIcon"] }, { kind: "directive", type: TooltipDirective, selector: "[bizdocTooltip]", inputs: ["bizdocTooltip", "bizdocTooltipTemplate", "bizdocTooltipContext", "bizdocTooltipPosition", "bizdocTooltipDuration", "bizdocTooltipDisabled"] }, { kind: "component", type: TimespanInput, selector: "bizdoc-timespan-input", inputs: ["placeholder", "required", "disabled", "value"] }, { kind: "component", type: DesignerCubeFilterComponent, selector: "bizdoc-designer-cube-filter", inputs: ["cube", "form"] }, { kind: "component", type: DesignerPrivilegesComponent, selector: "bizdoc-designer-privileges", inputs: ["form"] }, { kind: "directive", type: CustomContentDirective, selector: "[bizdocCustomContent]", inputs: ["bizdocCustomContent"] }, { kind: "directive", type: EditContentDirective, selector: "[bizdocEditContent]" }, { kind: "directive", type: WidgetContentDirective, selector: "[bizdocContent]" }, { kind: "component", type: DesignerItemComponent, selector: "bizdoc-designer-element", inputs: ["privileges", "icon", "form", "context"], outputs: ["save"] }, { kind: "pipe", type: LocalizedStringPipe, name: "localizedString" }, { kind: "pipe", type: TimeAgoPipe, name: "amTimeAgo" }, { kind: "pipe", type: ArraySortPipe, name: "sort" }, { kind: "pipe", type: TranslatePipe, name: "translate" }] }); }
|
34155
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "17.2.3", type: CubeDesignComponent, selector: "ng-component", viewQueries: [{ propertyName: "element", first: true, predicate: ["element"], descendants: true }], usesInheritance: true, ngImport: i0, template: "<bizdoc-designer-element [form]=\"form\" [privileges]=\"true\" [context]=\"context\" (continue)=\"onContinue()\">\n <!-- widget -->\n <ng-template bizdocContent>\n @if (jobInfo) {\n <dl>\n @if (jobInfo.lastExecution) {\n <dt>{{'LastExecution'|translate}}</dt>\n <dd>{{jobInfo.lastExecution|amTimeAgo}}</dd>\n }\n @if (jobInfo.nextExecution) {\n <dt>{{'NextExecution'|translate}}</dt>\n <dd>{{jobInfo.nextExecution|amTimeAgo}}</dd>\n }\n @if (jobInfo.lastJobState) {\n <dt>{{'LastJobState'|translate}}</dt>\n <dd>\n @if (jobInfo.error) {\n <mat-icon [bizdocTooltip]=\"jobInfo.error\">report</mat-icon>\n }\n <span class=\"job-state\">{{jobInfo.lastJobState| translate}}</span>\n </dd>\n }\n </dl>\n }\n <div class=\"row start center\">\n <button mat-stroked-button (click)=\"sync()\" [disabled]=\"model.draft || syncing\">\n <span> {{'Synchronize'|translate}}</span>\n </button>\n \n @if (syncing) {\n <mat-spinner diameter=\"22\"></mat-spinner>\n }\n </div>\n <div class=\"row\">\n @if(model.axes?.length)\n {\n <mat-chip-set>\n @for(axis of model.axes; track axis){\n <mat-chip>{{axis.title}}</mat-chip>\n }\n @for(index of model.indices || []; track index){\n <mat-chip>{{index.title}}</mat-chip>\n }\n </mat-chip-set>\n }\n </div>\n </ng-template>\n <!-- edit -->\n <ng-template bizdocEditContent>\n <ng-container [formGroup]=\"form\">\n <mat-label>{{'SecurityLevel'|translate}}</mat-label>\n <mat-radio-group formControlName=\"scope\">\n <p></p>\n <mat-radio-button color=\"warn\">{{'Global'|translate}}</mat-radio-button>\n <p>{{'SecurityGlobalHelp'|translate}}</p>\n <mat-radio-button value=\"Positions\">{{'Positions'|translate}}</mat-radio-button>\n <p>{{'SecurityPositionsHelp'|translate}}</p>\n <mat-radio-button value=\"Patterns\">{{'Patterns'|translate}}</mat-radio-button>\n <p>{{'SecurityPatternsHelp'|translate}}</p>\n </mat-radio-group>\n <ng-container formGroupName=\"yAxis\">\n <mat-form-field class=\"flex\">\n <mat-label>{{'Type'|translate}}</mat-label>\n <mat-select formControlName=\"type\">\n <mat-option value=\"Currency\">{{'Currency'|translate}}</mat-option>\n <mat-option value=\"Number\">{{'Numeric'|translate}}</mat-option>\n <mat-option value=\"Count\">{{'Accumulative'|translate}}</mat-option>\n </mat-select>\n </mat-form-field>\n </ng-container>\n <mat-form-field>\n <mat-label>{{'Currency'|translate}}</mat-label>\n <mat-select formControlName=\"currencyCode\" [sortComparator]=\"sortComparator\">\n @for (c of currencies; track c) {\n <mat-option [value]=\"c.name\">{{c.title}}</mat-option>\n }\n </mat-select>\n </mat-form-field>\n <!--Axes-->\n <h2 class=\"mat-h2 row\">\n {{'Axes'|translate}}\n <span class=\"divider\"></span>\n <button mat-icon-button (click)=\"add(axes, newAxis(), 'Axis', 'axis')\" [bizdocTooltip]=\"'Add'|translate\" type=\"button\"><mat-icon>add_circle_outline</mat-icon></button>\n </h2>\n <table formArrayName=\"axes\" class=\"mat-mdc-table\" cdkDropList (cdkDropListDropped)=\"drop($event, axes)\">\n @for (a of axes.controls; track a; let index = $index) {\n <tr class=\"mat-mdc-row\" [formGroup]=\"a\" cdkDrag>\n <td class=\"mat-mdc-cell\">\n <mat-icon cdkDragHandle>drag_indicator</mat-icon>\n </td>\n <td class=\"mat-mdc-cell flex\">\n {{a.controls.title.value}}\n </td>\n <td class=\"mat-mdc-cell nowrap\">\n <button mat-icon-button (click)=\"edit(a, 'Axis', 'axis')\" [bizdocTooltip]=\"'Edit'|translate\" type=\"button\"><mat-icon>edit</mat-icon></button>\n <button mat-icon-button (click)=\"axes.removeAt(index)\" [bizdocTooltip]=\"'Remove'|translate\" type=\"button\"><mat-icon>delete</mat-icon></button>\n </td>\n </tr>\n }\n </table>\n <!--Indices-->\n <h2 class=\"mat-h2 row\">\n {{'Indices'|translate}}\n <span class=\"divider\"></span>\n <button mat-icon-button (click)=\"add(indices, newIndex(), 'Index', 'index')\" [bizdocTooltip]=\"'Add'|translate\" type=\"button\"><mat-icon>add_circle_outline</mat-icon></button>\n </h2>\n <table formArrayName=\"indices\" class=\"mat-mdc-table\" cdkDropList (cdkDropListDropped)=\"drop($event, indices)\">\n @for (i of indices.controls; track i; let index = $index) {\n <tr class=\"mat-mdc-row\" [formGroup]=\"i\" cdkDrag>\n <td class=\"mat-mdc-cell\">\n <mat-icon cdkDragHandle>drag_indicator</mat-icon>\n </td>\n <td class=\"mat-mdc-cell flex\">\n {{i.controls.title.value}}\n </td>\n <td class=\"mat-mdc-cell nowrap\">\n <button mat-icon-button (click)=\"edit(i, 'Index', 'index')\" [bizdocTooltip]=\"'Edit'|translate\" type=\"button\"><mat-icon>edit</mat-icon></button>\n <button mat-icon-button (click)=\"indices.removeAt(index)\" [bizdocTooltip]=\"'Remove'|translate\" type=\"button\"><mat-icon>delete</mat-icon></button>\n </td>\n </tr>\n }\n </table>\n @if (indices.controls.length) {\n <mat-form-field>\n <mat-label>{{'AnomalyNotification'|translate}}</mat-label>\n <mat-select formControlName=\"anomaly\">\n <mat-option value=\"None\">{{'None'|translate}}</mat-option>\n <mat-option value=\"Positions\">{{'Positions'|translate}}</mat-option>\n <mat-option value=\"Recipients\">{{'Everyone'|translate}}</mat-option>\n </mat-select>\n </mat-form-field>\n }\n <!--Patterns-->\n <h2 class=\"mat-h2 row\">\n {{'Patterns'|translate}}\n <span class=\"divider\"></span>\n <button mat-icon-button (click)=\"add(patterns, newPattern(), 'Pattern', 'pattern')\" [bizdocTooltip]=\"'Add'|translate\" type=\"button\"><mat-icon>add_circle_outline</mat-icon></button>\n </h2>\n <table formArrayName=\"indices\" class=\"mat-mdc-table\" cdkDropList (cdkDropListDropped)=\"drop($event, patterns)\">\n @for (p of patterns.controls; track p; let index = $index) {\n <tr class=\"mat-mdc-row\" [formGroup]=\"p\" cdkDrag>\n <td class=\"mat-mdc-cell\">\n <mat-icon cdkDragHandle>drag_indicator</mat-icon>\n </td>\n <td class=\"mat-mdc-cell flex\">\n {{p.controls.title.value}}\n </td>\n <td class=\"mat-mdc-cell nowrap\">\n <button mat-icon-button (click)=\"edit(p, 'Pattern', 'pattern')\" [bizdocTooltip]=\"'Edit'|translate\" type=\"button\"><mat-icon>edit</mat-icon></button>\n <button mat-icon-button (click)=\"patterns.removeAt(index)\" [bizdocTooltip]=\"'Remove'|translate\" type=\"button\"><mat-icon>delete</mat-icon></button>\n </td>\n </tr>\n }\n </table>\n <!--Views-->\n <h2 class=\"row mat-h2\">\n {{'CubeViews'|translate}}\n <span class=\"divider\"></span>\n <button mat-icon-button (click)=\"add(views, newView(), 'CubeView', 'view')\" [bizdocTooltip]=\"'Add'|translate\" type=\"button\"><mat-icon>add_circle_outline</mat-icon></button>\n </h2>\n <table formArrayName=\"views\" class=\"mat-mdc-table\" cdkDropList (cdkDropListDropped)=\"drop($event, views)\">\n @for (v of views.controls; track v; let index = $index) {\n <tr class=\"mat-mdc-row\" [formGroup]=\"v\" cdkDrag>\n <td class=\"mat-mdc-cell\">\n <mat-icon cdkDragHandle>drag_indicator</mat-icon>\n </td>\n <td class=\"mat-mdc-cell flex\">\n {{v.controls.title.value}}\n </td>\n <td class=\"mat-mdc-cell nowrap\">\n <button mat-icon-button (click)=\"edit(v, 'View', 'view')\" [bizdocTooltip]=\"'Edit'|translate\" type=\"button\"><mat-icon>edit</mat-icon></button>\n <button mat-icon-button (click)=\"views.removeAt(index)\" [bizdocTooltip]=\"'Remove'|translate\" type=\"button\"><mat-icon>delete</mat-icon></button>\n </td>\n </tr>\n }\n </table>\n <mat-form-field>\n <mat-label>{{'Schedule'|translate}}</mat-label>\n <bizdoc-timespan-input formControlName=\"schedule\"></bizdoc-timespan-input>\n <mat-icon matSuffix>timer</mat-icon>\n <mat-hint></mat-hint>\n </mat-form-field>\n </ng-container>\n </ng-template>\n <!--idx-->\n <ng-template bizdocCustomContent=\"index\" let-form=\"form\">\n <ng-container [formGroup]=\"form\">\n <mat-form-field class=\"flex\">\n <mat-label>{{'Title'|translate}}</mat-label>\n <input matInput formControlName=\"title\" required />\n @if (form.controls.title.hasError('required')) {\n <mat-error [innerHTML]=\"'RequiredErr'|translate:('Title'|translate)\"></mat-error>\n }\n </mat-form-field>\n <mat-form-field class=\"flex\">\n <mat-label>{{'Name'|translate}}</mat-label>\n <input matInput formControlName=\"name\" required />\n @if (form.controls.name.hasError('required')) {\n <mat-error [innerHTML]=\"'RequiredErr'|translate:('Name'|translate)\"></mat-error>\n }\n </mat-form-field>\n </ng-container>\n </ng-template>\n <!-- pattern-->\n <ng-template bizdocCustomContent=\"pattern\" let-form=\"form\">\n <ng-container [formGroup]=\"form\">\n <mat-form-field class=\"flex\">\n <mat-label>{{'Title'|translate}}</mat-label>\n <input matInput formControlName=\"title\" required />\n @if (form.controls.title.hasError('required')) {\n <mat-error [innerHTML]=\"'RequiredErr'|translate:('Title'|translate)\"></mat-error>\n }\n </mat-form-field>\n <bizdoc-designer-cube-filter [cube]=\"model\" [form]=\"form.controls.axes\"></bizdoc-designer-cube-filter>\n <bizdoc-designer-privileges [form]=\"form\"></bizdoc-designer-privileges>\n </ng-container>\n </ng-template>\n <!-- view -->\n <ng-template bizdocCustomContent=\"view\" let-form=\"form\">\n <ng-container [formGroup]=\"form\">\n <mat-form-field class=\"flex\">\n <mat-label>{{'Title'|translate}}</mat-label>\n <input matInput formControlName=\"title\" required />\n @if (form.controls.title.hasError('required')) {\n <mat-error [innerHTML]=\"'RequiredErr'|translate:('Title'|translate)\"></mat-error>\n }\n </mat-form-field>\n <mat-form-field>\n <mat-label>{{'Type'|translate}}</mat-label>\n <mat-select formControlName=\"type\">\n <mat-option value=\"Chart\">{{'Chart'|translate}}</mat-option>\n <mat-option value=\"PivotChart\">{{'PivotChart'|translate}}</mat-option>\n <mat-option value=\"PivotGrid\">{{'PivotGrid'|translate}}</mat-option>\n <mat-option value=\"Grid\">{{'Grid'|translate}}</mat-option>\n <mat-option value=\"Spreadsheet\">{{'Spreadsheet'|translate}}</mat-option>\n </mat-select>\n </mat-form-field>\n <mat-form-field>\n <mat-label>{{'XAxis'|translate}}</mat-label>\n <mat-select formControlName=\"xAxis\" required multiple [sortComparator]=\"sortComparator\">\n @for (a of axes.controls; track a) {\n <mat-option [value]=\"a.controls.name.value\">{{a.controls.title.value || a.controls.name.value}}</mat-option>\n }\n </mat-select>\n @if (form.controls.xAxis.hasError('required')) {\n <mat-error [innerHTML]=\"'RequiredErr'|translate:('XAxis'|translate)\"></mat-error>\n }\n </mat-form-field>\n <mat-form-field>\n <mat-label>{{'Series'|translate}}</mat-label>\n <mat-select formControlName=\"series\" multiple [sortComparator]=\"sortComparator\">\n @for (a of axes.controls; track a) {\n @if (form.controls.xAxis.value?.indexOf(a.controls.name.value) < 0) {\n <mat-option [value]=\"a.controls.name.value\">{{a.controls.title.value|| a.controls.name.value}}</mat-option>\n }\n }\n </mat-select>\n @if (form.controls.series.hasError('required')) {\n <mat-error [innerHTML]=\"'RequiredErr'|translate:('Series'|translate)\"></mat-error>\n }\n </mat-form-field>\n <mat-form-field>\n <mat-label>{{'Indices'|translate}}</mat-label>\n <mat-select formControlName=\"indices\" multiple>\n @for (i of indices.controls; track i) {\n <mat-option [value]=\"i.controls.name.value\">{{i.controls.title.value|| i.controls.name.value}}</mat-option>\n }\n </mat-select>\n </mat-form-field>\n <mat-form-field>\n <mat-label>{{'ChartType'|translate}}</mat-label>\n <mat-select formControlName=\"chartType\">\n @switch (form.controls.type.value) {\n @case ('Chart') {\n <mat-option value=\"Pie\" [disabled]=\"form.controls.series.value?.length>0\">{{'Pie'|translate}}</mat-option>\n <mat-option value=\"Doughnut\" [disabled]=\"form.controls.series.value?.length>0\">{{'Doughnut'|translate}}</mat-option>\n <mat-option value=\"HalfDoughnut\" [disabled]=\"form.controls.series.value?.length>0\">{{'HalfDoughnut'|translate}}</mat-option>\n <mat-option value=\"Funnel\" [disabled]=\"form.controls.series.value?.length>0\">{{'Funnel'|translate}}</mat-option>\n <mat-option value=\"Pyramid\" [disabled]=\"form.controls.series.value?.length>0\">{{'Pyramid'|translate}}</mat-option>\n <mat-option value=\"Column\">{{'Column'|translate}}</mat-option>\n <mat-option value=\"Bar\">{{'Bar'|translate}}</mat-option>\n <mat-option value=\"Bubble\">{{'Bubble'|translate}}</mat-option>\n <mat-option value=\"Line\">{{'Line'|translate}}</mat-option>\n <mat-option value=\"Spline\">{{'Spline'|translate}}</mat-option>\n <mat-option value=\"Area\">{{'Area'|translate}}</mat-option>\n <mat-option value=\"Scatter\">{{'Scatter'|translate}}</mat-option>\n <mat-option value=\"Polar\">{{'Polar'|translate}}</mat-option>\n <mat-option value=\"Radar\">{{'Radar'|translate}}</mat-option>\n <mat-option value=\"StepLine\">{{'StepLine'|translate}}</mat-option>\n <mat-option value=\"StepArea\">{{'StepArea'|translate}}</mat-option>\n <mat-option value=\"SplineArea\">{{'SplineArea'|translate}}</mat-option>\n <mat-option value=\"StackingBar\" [disabled]=\"!form.controls.series.value?.length\">{{'StackingBar'|translate}}</mat-option>\n <mat-option value=\"StackingBar100\" [disabled]=\"!form.controls.series.value?.length\">{{'StackingBar100'|translate}}</mat-option>\n <mat-option value=\"StackingArea\" [disabled]=\"!form.controls.series.value?.length\">{{'StackingArea'|translate}}</mat-option>\n <mat-option value=\"StackingArea100\" [disabled]=\"!form.controls.series.value?.length\">{{'StackingArea100'|translate}}</mat-option>\n <mat-option value=\"StackingColumn\" [disabled]=\"!form.controls.series.value?.length\">{{'StackingColumn'|translate}}</mat-option>\n <mat-option value=\"StackingColumn100\" [disabled]=\"!form.controls.series.value?.length\">{{'StackingColumn100'|translate}}</mat-option>\n <mat-option value=\"StackingStepArea\" [disabled]=\"!form.controls.series.value?.length\">{{'StackingStepArea'|translate}}</mat-option>\n <mat-option value=\"StackingLine\" [disabled]=\"!form.controls.series.value?.length\">{{'StackingLine'|translate}}</mat-option>\n <mat-option value=\"StackingLine100\" [disabled]=\"!form.controls.series.value?.length\">{{'StackingLine100'|translate}}</mat-option>\n }\n @case ('Pivot') {\n <mat-option>{{'None'|translate}}</mat-option>\n <mat-option value=\"Column\">{{'Column'|translate}}</mat-option>\n <mat-option value=\"Bar\">{{'Bar'|translate}}</mat-option>\n <mat-option value=\"Bubble\">{{'Bubble'|translate}}</mat-option>\n <mat-option value=\"Line\">{{'Line'|translate}}</mat-option>\n <mat-option value=\"Spline\">{{'Spline'|translate}}</mat-option>\n <mat-option value=\"SplineArea\">{{'SplineArea'|translate}}</mat-option>\n <mat-option value=\"Area\">{{'Area'|translate}}</mat-option>\n <mat-option value=\"Scatter\">{{'Scatter'|translate}}</mat-option>\n <mat-option value=\"Polar\">{{'Polar'|translate}}</mat-option>\n <mat-option value=\"Radar\">{{'Radar'|translate}}</mat-option>\n <mat-option value=\"StepLine\">{{'StepLine'|translate}}</mat-option>\n <mat-option value=\"StepArea\">{{'StepArea'|translate}}</mat-option>\n <mat-option value=\"StackingBar\" [disabled]=\"!form.controls.series.value?.length\">{{'StackingBar'|translate}}</mat-option>\n <mat-option value=\"StackingBar100\" [disabled]=\"!form.controls.series.value?.length\">{{'StackingBar100'|translate}}</mat-option>\n <mat-option value=\"StackingArea\" [disabled]=\"!form.controls.series.value?.length\">{{'StackingArea'|translate}}</mat-option>\n <mat-option value=\"StackingArea100\" [disabled]=\"!form.controls.series.value?.length\">{{'StackingArea100'|translate}}</mat-option>\n <mat-option value=\"StackingColumn\" [disabled]=\"!form.controls.series.value?.length\">{{'StackingColumn'|translate}}</mat-option>\n <mat-option value=\"StackingColumn100\" [disabled]=\"!form.controls.series.value?.length\">{{'StackingColumn100'|translate}}</mat-option>\n <mat-option value=\"StackingStepArea\" [disabled]=\"!form.controls.series.value?.length\">{{'StackingStepArea'|translate}}</mat-option>\n <mat-option value=\"StackingLine\" [disabled]=\"!form.controls.series.value?.length\">{{'StackingLine'|translate}}</mat-option>\n <mat-option value=\"StackingLine100\" [disabled]=\"!form.controls.series.value?.length\">{{'StackingLine100'|translate}}</mat-option>\n }\n }\n </mat-select>\n </mat-form-field>\n <mat-form-field>\n <mat-label>{{'IndicesChartType'|translate}}</mat-label>\n <mat-select formControlName=\"indicesChartType\">\n @switch (form.controls.type.value) {\n @case ('Chart') {\n <mat-option value=\"Column\">{{'Column'|translate}}</mat-option>\n <mat-option value=\"Bar\">{{'Bar'|translate}}</mat-option>\n <mat-option value=\"Bubble\">{{'Bubble'|translate}}</mat-option>\n <mat-option value=\"Line\">{{'Line'|translate}}</mat-option>\n <mat-option value=\"Spline\">{{'Spline'|translate}}</mat-option>\n <mat-option value=\"SplineArea\">{{'SplineArea'|translate}}</mat-option>\n <mat-option value=\"Area\">{{'Area'|translate}}</mat-option>\n <mat-option value=\"Scatter\">{{'Scatter'|translate}}</mat-option>\n <mat-option value=\"Polar\">{{'Polar'|translate}}</mat-option>\n <mat-option value=\"Radar\">{{'Radar'|translate}}</mat-option>\n <mat-option value=\"StepLine\">{{'StepLine'|translate}}</mat-option>\n <mat-option value=\"StepArea\">{{'StepArea'|translate}}</mat-option>\n <mat-option value=\"StackingColumn\" [disabled]=\"form.controls.indices.value?.length<2\">{{'StackingColumn'|translate}}</mat-option>\n <mat-option value=\"StackingColumn100\" [disabled]=\"form.controls.indices.value?.length<2\">{{'StackingColumn100'|translate}}</mat-option>\n <mat-option value=\"StackingBar\" [disabled]=\"form.controls.indices.value?.length<2\">{{'StackingBar'|translate}}</mat-option>\n <mat-option value=\"StackingBar100\" [disabled]=\"form.controls.indices.value?.length<2\">{{'StackingBar100'|translate}}</mat-option>\n <mat-option value=\"StackingLine\" [disabled]=\"form.controls.indices.value?.length<2\">{{'StackingLine'|translate}}</mat-option>\n <mat-option value=\"StackingLine100\" [disabled]=\"form.controls.indices.value?.length<2\">{{'StackingLine100'|translate}}</mat-option>\n <mat-option value=\"StackingArea\" [disabled]=\"form.controls.indices.value?.length<2\">{{'StackingArea'|translate}}</mat-option>\n <mat-option value=\"StackingArea100\" [disabled]=\"form.controls.indices.value?.length<2\">{{'StackingArea100'|translate}}</mat-option>\n <mat-option value=\"StackingStepArea\" [disabled]=\"form.controls.indices.value?.length<2\">{{'StackingStepArea'|translate}}</mat-option>\n }\n @case ('Pivot') {\n <mat-option>{{'None'|translate}}</mat-option>\n <mat-option value=\"Column\">{{'Column'|translate}}</mat-option>\n <mat-option value=\"Bar\">{{'Bar'|translate}}</mat-option>\n <mat-option value=\"Bubble\">{{'Bubble'|translate}}</mat-option>\n <mat-option value=\"Line\">{{'Line'|translate}}</mat-option>\n <mat-option value=\"Spline\">{{'Spline'|translate}}</mat-option>\n <mat-option value=\"SplineArea\">{{'SplineArea'|translate}}</mat-option>\n <mat-option value=\"Area\">{{'Area'|translate}}</mat-option>\n <mat-option value=\"Scatter\">{{'Scatter'|translate}}</mat-option>\n <mat-option value=\"Polar\">{{'Polar'|translate}}</mat-option>\n <mat-option value=\"Radar\">{{'Radar'|translate}}</mat-option>\n <mat-option value=\"StepLine\">{{'StepLine'|translate}}</mat-option>\n <mat-option value=\"StepArea\">{{'StepArea'|translate}}</mat-option>\n <mat-option value=\"StackingBar\" [disabled]=\"form.controls.series.value?.length<2\">{{'StackingBar'|translate}}</mat-option>\n <mat-option value=\"StackingBar100\" [disabled]=\"form.controls.series.value?.length<2\">{{'StackingBar100'|translate}}</mat-option>\n <mat-option value=\"StackingArea\" [disabled]=\"form.controls.series.value?.length<2\">{{'StackingArea'|translate}}</mat-option>\n <mat-option value=\"StackingArea100\" [disabled]=\"form.controls.series.value?.length<2\">{{'StackingArea100'|translate}}</mat-option>\n <mat-option value=\"StackingColumn\" [disabled]=\"form.controls.series.value?.length<2\">{{'StackingColumn'|translate}}</mat-option>\n <mat-option value=\"StackingColumn100\" [disabled]=\"form.controls.series.value?.length<2\">{{'StackingColumn100'|translate}}</mat-option>\n <mat-option value=\"StackingStepArea\" [disabled]=\"form.controls.series.value?.length<2\">{{'StackingStepArea'|translate}}</mat-option>\n <mat-option value=\"StackingLine\" [disabled]=\"form.controls.series.value?.length<2\">{{'StackingLine'|translate}}</mat-option>\n <mat-option value=\"StackingLine100\" [disabled]=\"form.controls.series.value?.length<2\">{{'StackingLine100'|translate}}</mat-option>\n }\n }\n </mat-select>\n </mat-form-field>\n <mat-form-field>\n <mat-label>{{'Guide'|translate}}</mat-label>\n <mat-select formControlName=\"guide\">\n <mat-option>{{'None'|translate}}</mat-option>\n @for (g of guides; track g) {\n <mat-option [value]=\"g.name\">{{g.title |localizedString}}</mat-option>\n }\n </mat-select>\n </mat-form-field>\n @if (cube) {\n <bizdoc-designer-cube-filter [cube]=\"cube\" [form]=\"form.controls.filters\"></bizdoc-designer-cube-filter>\n }\n </ng-container>\n </ng-template>\n <!-- Axis -->\n <ng-template bizdocCustomContent=\"axis\" let-form=\"form\">\n <ng-container [formGroup]=\"form\">\n <div class=\"row gap\">\n <mat-form-field class=\"flex\">\n <mat-label>{{'Title'|translate}}</mat-label>\n <input matInput formControlName=\"title\" required />\n @if (form.controls.title.hasError('required')) {\n <mat-error [innerHTML]=\"'RequiredErr'|translate:('Title'|translate)\"></mat-error>\n }\n </mat-form-field>\n <mat-form-field class=\"flex\">\n <mat-label>{{'Name'|translate}}</mat-label>\n <input matInput formControlName=\"name\" required />\n @if (form.controls.name.hasError('required')) {\n <mat-error [innerHTML]=\"'RequiredErr'|translate:('Name'|translate)\"></mat-error>\n }\n </mat-form-field>\n </div>\n <mat-form-field>\n <mat-label>{{'DataType'|translate}}</mat-label>\n <mat-select formControlName=\"dataType\" required>\n @for (t of typegroups['_'].elements|sort: 'title'; track t) {\n <mat-option [value]=\"t.name\">\n {{t.title}}\n </mat-option>\n }\n @for (g of typegroups|sort: 'title'; track g) {\n <mat-optgroup [label]=\"g.title\">\n @for (t of g.elements|sort: 'title'; track t) {\n <mat-option [value]=\"t.name\">\n {{t.title}}\n </mat-option>\n }\n </mat-optgroup>\n }\n </mat-select>\n @if (form.controls.title.hasError('required')) {\n <mat-error [innerHTML]=\"'RequiredErr'|translate:('DataType'|translate)\"></mat-error>\n }\n </mat-form-field>\n <div><mat-checkbox formControlName=\"combination\">{{'CombinationAxis'|translate}}</mat-checkbox></div>\n <div><mat-checkbox formControlName=\"sensitive\">{{'SensitiveAxis'|translate}}</mat-checkbox></div>\n <mat-form-field>\n <mat-label>{{'SelectionMode'|translate}}</mat-label>\n <mat-select formControlName=\"selectionMode\">\n <mat-option value=\"None\">{{'None'|translate}}</mat-option>\n <mat-option>{{'OneMode'|translate}}</mat-option>\n <mat-option value=\"Multiple\">{{'Multiple'|translate}}</mat-option>\n <mat-option value=\"Search\">{{'Autocomplete'|translate}}</mat-option>\n <mat-option value=\"Pattern\">{{'Pattern'|translate}}</mat-option>\n </mat-select>\n </mat-form-field>\n <mat-form-field>\n <mat-label>{{'DescendentOf'|translate}}</mat-label>\n <mat-select formControlName=\"descendentOf\">\n @for (a of axes.controls; track a) {\n @if (a!=form) {\n <mat-option [value]=\"a.controls.name.value\">{{a.controls.title.value}}</mat-option>\n }\n }\n </mat-select>\n </mat-form-field>\n <div><mat-checkbox formControlName=\"indexable\">{{'IndexableAxis'|translate}}</mat-checkbox></div>\n </ng-container>\n </ng-template>\n</bizdoc-designer-element>\n", styles: [":host ::ng-deep form{min-width:350px}:host ::ng-deep .mat-mdc-radio-group p{margin-inline-start:8px}.mat-mdc-table{width:100%}.mat-mdc-table .mat-mdc-cell:last-child{width:80px}.flex{flex:1}table tr td:first-child{width:26px}dl{width:100%;overflow:hidden;padding:0;margin:0}dt{padding:0;margin:0;clear:both}dd{float:left;padding:0;margin:0}\n"], dependencies: [{ kind: "directive", type: i1$2.DefaultValueAccessor, selector: "input:not([type=checkbox])[formControlName],textarea[formControlName],input:not([type=checkbox])[formControl],textarea[formControl],input:not([type=checkbox])[ngModel],textarea[ngModel],[ngDefaultControl]" }, { kind: "directive", type: i1$2.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i1$2.NgControlStatusGroup, selector: "[formGroupName],[formArrayName],[ngModelGroup],[formGroup],form:not([ngNoForm]),[ngForm]" }, { kind: "directive", type: i1$2.RequiredValidator, selector: ":not([type=checkbox])[required][formControlName],:not([type=checkbox])[required][formControl],:not([type=checkbox])[required][ngModel]", inputs: ["required"] }, { kind: "directive", type: i1$2.FormGroupDirective, selector: "[formGroup]", inputs: ["formGroup"], outputs: ["ngSubmit"], exportAs: ["ngForm"] }, { kind: "directive", type: i1$2.FormControlName, selector: "[formControlName]", inputs: ["formControlName", "disabled", "ngModel"], outputs: ["ngModelChange"] }, { kind: "directive", type: i1$2.FormGroupName, selector: "[formGroupName]", inputs: ["formGroupName"] }, { kind: "directive", type: i1$2.FormArrayName, selector: "[formArrayName]", inputs: ["formArrayName"] }, { kind: "component", type: i4.MatChip, selector: "mat-basic-chip, [mat-basic-chip], mat-chip, [mat-chip]", inputs: ["role", "id", "aria-label", "aria-description", "value", "color", "removable", "highlighted", "disableRipple", "disabled", "tabIndex"], outputs: ["removed", "destroyed"], exportAs: ["matChip"] }, { kind: "component", type: i4.MatChipSet, selector: "mat-chip-set", inputs: ["disabled", "role", "tabIndex"] }, { kind: "directive", type: i2$6.CdkDropList, selector: "[cdkDropList], cdk-drop-list", inputs: ["cdkDropListConnectedTo", "cdkDropListData", "cdkDropListOrientation", "id", "cdkDropListLockAxis", "cdkDropListDisabled", "cdkDropListSortingDisabled", "cdkDropListEnterPredicate", "cdkDropListSortPredicate", "cdkDropListAutoScrollDisabled", "cdkDropListAutoScrollStep"], outputs: ["cdkDropListDropped", "cdkDropListEntered", "cdkDropListExited", "cdkDropListSorted"], exportAs: ["cdkDropList"] }, { kind: "directive", type: i2$6.CdkDrag, selector: "[cdkDrag]", inputs: ["cdkDragData", "cdkDragLockAxis", "cdkDragRootElement", "cdkDragBoundary", "cdkDragStartDelay", "cdkDragFreeDragPosition", "cdkDragDisabled", "cdkDragConstrainPosition", "cdkDragPreviewClass", "cdkDragPreviewContainer"], outputs: ["cdkDragStarted", "cdkDragReleased", "cdkDragEnded", "cdkDragEntered", "cdkDragExited", "cdkDragDropped", "cdkDragMoved"], exportAs: ["cdkDrag"] }, { kind: "directive", type: i2$6.CdkDragHandle, selector: "[cdkDragHandle]", inputs: ["cdkDragHandleDisabled"] }, { kind: "directive", type: i2$b.MatRadioGroup, selector: "mat-radio-group", inputs: ["color", "name", "labelPosition", "value", "selected", "disabled", "required"], outputs: ["change"], exportAs: ["matRadioGroup"] }, { kind: "component", type: i2$b.MatRadioButton, selector: "mat-radio-button", inputs: ["id", "name", "aria-label", "aria-labelledby", "aria-describedby", "disableRipple", "tabIndex", "checked", "value", "labelPosition", "disabled", "required", "color"], outputs: ["change"], exportAs: ["matRadioButton"] }, { kind: "component", type: i7.MatProgressSpinner, selector: "mat-progress-spinner, mat-spinner", inputs: ["color", "mode", "value", "diameter", "strokeWidth"], exportAs: ["matProgressSpinner"] }, { kind: "component", type: i2$5.MatOption, selector: "mat-option", inputs: ["value", "id", "disabled"], outputs: ["onSelectionChange"], exportAs: ["matOption"] }, { kind: "component", type: i2$5.MatOptgroup, selector: "mat-optgroup", inputs: ["label", "disabled"], exportAs: ["matOptgroup"] }, { kind: "component", type: i3$1.MatFormField, selector: "mat-form-field", inputs: ["hideRequiredMarker", "color", "floatLabel", "appearance", "subscriptSizing", "hintLabel"], exportAs: ["matFormField"] }, { kind: "directive", type: i3$1.MatLabel, selector: "mat-label" }, { kind: "directive", type: i3$1.MatHint, selector: "mat-hint", inputs: ["align", "id"] }, { kind: "directive", type: i3$1.MatError, selector: "mat-error, [matError]", inputs: ["id"] }, { kind: "directive", type: i3$1.MatSuffix, selector: "[matSuffix], [matIconSuffix], [matTextSuffix]", inputs: ["matTextSuffix"] }, { kind: "component", type: i4$2.MatSelect, selector: "mat-select", inputs: ["aria-describedby", "panelClass", "disabled", "disableRipple", "tabIndex", "hideSingleSelectionIndicator", "placeholder", "required", "multiple", "disableOptionCentering", "compareWith", "value", "aria-label", "aria-labelledby", "errorStateMatcher", "typeaheadDebounceInterval", "sortComparator", "id", "panelWidth"], outputs: ["openedChange", "opened", "closed", "selectionChange", "valueChange"], exportAs: ["matSelect"] }, { kind: "component", type: i8.MatButton, selector: " button[mat-button], button[mat-raised-button], button[mat-flat-button], button[mat-stroked-button] ", exportAs: ["matButton"] }, { kind: "component", type: i8.MatIconButton, selector: "button[mat-icon-button]", exportAs: ["matButton"] }, { kind: "component", type: i2$7.MatCheckbox, selector: "mat-checkbox", inputs: ["aria-label", "aria-labelledby", "aria-describedby", "id", "required", "labelPosition", "name", "value", "disableRipple", "tabIndex", "color", "checked", "disabled", "indeterminate"], outputs: ["change", "indeterminateChange"], exportAs: ["matCheckbox"] }, { kind: "directive", type: i3$3.MatInput, selector: "input[matInput], textarea[matInput], select[matNativeControl], input[matNativeControl], textarea[matNativeControl]", inputs: ["disabled", "id", "placeholder", "name", "required", "type", "errorStateMatcher", "aria-describedby", "value", "readonly"], exportAs: ["matInput"] }, { kind: "component", type: i10.MatIcon, selector: "mat-icon", inputs: ["color", "inline", "svgIcon", "fontSet", "fontIcon"], exportAs: ["matIcon"] }, { kind: "directive", type: TooltipDirective, selector: "[bizdocTooltip]", inputs: ["bizdocTooltip", "bizdocTooltipTemplate", "bizdocTooltipContext", "bizdocTooltipPosition", "bizdocTooltipDuration", "bizdocTooltipDisabled"] }, { kind: "component", type: TimespanInput, selector: "bizdoc-timespan-input", inputs: ["placeholder", "required", "disabled", "value"] }, { kind: "component", type: DesignerCubeFilterComponent, selector: "bizdoc-designer-cube-filter", inputs: ["cube", "form"] }, { kind: "component", type: DesignerPrivilegesComponent, selector: "bizdoc-designer-privileges", inputs: ["form"] }, { kind: "directive", type: CustomContentDirective, selector: "[bizdocCustomContent]", inputs: ["bizdocCustomContent"] }, { kind: "directive", type: EditContentDirective, selector: "[bizdocEditContent]" }, { kind: "directive", type: WidgetContentDirective, selector: "[bizdocContent]" }, { kind: "component", type: DesignerItemComponent, selector: "bizdoc-designer-element", inputs: ["privileges", "icon", "form", "context"], outputs: ["save", "continue"] }, { kind: "pipe", type: LocalizedStringPipe, name: "localizedString" }, { kind: "pipe", type: TimeAgoPipe, name: "amTimeAgo" }, { kind: "pipe", type: ArraySortPipe, name: "sort" }, { kind: "pipe", type: TranslatePipe, name: "translate" }] }); }
|
34130
34156
|
}
|
34131
34157
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.2.3", ngImport: i0, type: CubeDesignComponent, decorators: [{
|
34132
34158
|
type: Component,
|
34133
|
-
args: [{ template: "<bizdoc-designer-element [form]=\"form\" [privileges]=\"true\" [context]=\"context\">\n <!-- widget -->\n <ng-template bizdocContent>\n @if (jobInfo) {\n <dl>\n @if (jobInfo.lastExecution) {\n <dt>{{'LastExecution'|translate}}</dt>\n <dd>{{jobInfo.lastExecution|amTimeAgo}}</dd>\n }\n @if (jobInfo.nextExecution) {\n <dt>{{'NextExecution'|translate}}</dt>\n <dd>{{jobInfo.nextExecution|amTimeAgo}}</dd>\n }\n @if (jobInfo.lastJobState) {\n <dt>{{'LastJobState'|translate}}</dt>\n <dd>\n @if (jobInfo.error) {\n <mat-icon [bizdocTooltip]=\"jobInfo.error\">report</mat-icon>\n }\n <span class=\"job-state\">{{jobInfo.lastJobState| translate}}</span>\n </dd>\n }\n </dl>\n }\n <div class=\"row start center\">\n <button mat-stroked-button (click)=\"sync()\" [disabled]=\"model.draft || syncing\">\n <span> {{'Synchronize'|translate}}</span>\n </button>\n \n @if (syncing) {\n <mat-spinner diameter=\"22\"></mat-spinner>\n }\n </div>\n <div class=\"row\">\n @if(model.axes?.length)\n {\n <mat-chip-set>\n @for(axis of model.axes; track axis){\n <mat-chip>{{axis.title}}</mat-chip>\n }\n @for(index of model.indices || []; track index){\n <mat-chip>{{index.title}}</mat-chip>\n }\n </mat-chip-set>\n }\n </div>\n </ng-template>\n <!-- edit -->\n <ng-template bizdocEditContent>\n <ng-container [formGroup]=\"form\">\n <mat-label>{{'SecurityLevel'|translate}}</mat-label>\n <mat-radio-group formControlName=\"scope\">\n <p></p>\n <mat-radio-button color=\"warn\">{{'Global'|translate}}</mat-radio-button>\n <p>{{'SecurityGlobalHelp'|translate}}</p>\n <mat-radio-button value=\"Positions\">{{'Positions'|translate}}</mat-radio-button>\n <p>{{'SecurityPositionsHelp'|translate}}</p>\n <mat-radio-button value=\"Patterns\">{{'Patterns'|translate}}</mat-radio-button>\n <p>{{'SecurityPatternsHelp'|translate}}</p>\n </mat-radio-group>\n <ng-container formGroupName=\"yAxis\">\n <mat-form-field class=\"flex\">\n <mat-label>{{'Type'|translate}}</mat-label>\n <mat-select formControlName=\"type\">\n <mat-option value=\"Currency\">{{'Currency'|translate}}</mat-option>\n <mat-option value=\"Number\">{{'Numeric'|translate}}</mat-option>\n <mat-option value=\"Count\">{{'Accumulative'|translate}}</mat-option>\n </mat-select>\n </mat-form-field>\n </ng-container>\n <mat-form-field>\n <mat-label>{{'Currency'|translate}}</mat-label>\n <mat-select formControlName=\"currencyCode\" [sortComparator]=\"sortComparator\">\n @for (c of currencies; track c) {\n <mat-option [value]=\"c.name\">{{c.title}}</mat-option>\n }\n </mat-select>\n </mat-form-field>\n <!--Axes-->\n <h2 class=\"mat-h2 row\">\n {{'Axes'|translate}}\n <span class=\"divider\"></span>\n <button mat-icon-button (click)=\"add(axes, newAxis(), 'Axis', 'axis')\" [bizdocTooltip]=\"'Add'|translate\" type=\"button\"><mat-icon>add_circle_outline</mat-icon></button>\n </h2>\n <table formArrayName=\"axes\" class=\"mat-mdc-table\" cdkDropList (cdkDropListDropped)=\"drop($event, axes)\">\n @for (a of axes.controls; track a; let index = $index) {\n <tr class=\"mat-mdc-row\" [formGroup]=\"a\" cdkDrag>\n <td class=\"mat-mdc-cell\">\n <mat-icon cdkDragHandle>drag_indicator</mat-icon>\n </td>\n <td class=\"mat-mdc-cell flex\">\n {{a.controls.title.value}}\n </td>\n <td class=\"mat-mdc-cell nowrap\">\n <button mat-icon-button (click)=\"edit(a, 'Axis', 'axis')\" [bizdocTooltip]=\"'Edit'|translate\" type=\"button\"><mat-icon>edit</mat-icon></button>\n <button mat-icon-button (click)=\"axes.removeAt(index)\" [bizdocTooltip]=\"'Remove'|translate\" type=\"button\"><mat-icon>delete</mat-icon></button>\n </td>\n </tr>\n }\n </table>\n <!--Indices-->\n <h2 class=\"mat-h2 row\">\n {{'Indices'|translate}}\n <span class=\"divider\"></span>\n <button mat-icon-button (click)=\"add(indices, newIndex(), 'Index', 'index')\" [bizdocTooltip]=\"'Add'|translate\" type=\"button\"><mat-icon>add_circle_outline</mat-icon></button>\n </h2>\n <table formArrayName=\"indices\" class=\"mat-mdc-table\" cdkDropList (cdkDropListDropped)=\"drop($event, indices)\">\n @for (i of indices.controls; track i; let index = $index) {\n <tr class=\"mat-mdc-row\" [formGroup]=\"i\" cdkDrag>\n <td class=\"mat-mdc-cell\">\n <mat-icon cdkDragHandle>drag_indicator</mat-icon>\n </td>\n <td class=\"mat-mdc-cell flex\">\n {{i.controls.title.value}}\n </td>\n <td class=\"mat-mdc-cell nowrap\">\n <button mat-icon-button (click)=\"edit(i, 'Index', 'index')\" [bizdocTooltip]=\"'Edit'|translate\" type=\"button\"><mat-icon>edit</mat-icon></button>\n <button mat-icon-button (click)=\"indices.removeAt(index)\" [bizdocTooltip]=\"'Remove'|translate\" type=\"button\"><mat-icon>delete</mat-icon></button>\n </td>\n </tr>\n }\n </table>\n @if (indices.controls.length) {\n <mat-form-field>\n <mat-label>{{'AnomalyNotification'|translate}}</mat-label>\n <mat-select formControlName=\"anomaly\">\n <mat-option value=\"None\">{{'None'|translate}}</mat-option>\n <mat-option value=\"Positions\">{{'Positions'|translate}}</mat-option>\n <mat-option value=\"Recipients\">{{'Everyone'|translate}}</mat-option>\n </mat-select>\n </mat-form-field>\n }\n <!--Patterns-->\n <h2 class=\"mat-h2 row\">\n {{'Patterns'|translate}}\n <span class=\"divider\"></span>\n <button mat-icon-button (click)=\"add(patterns, newPattern(), 'Pattern', 'pattern')\" [bizdocTooltip]=\"'Add'|translate\" type=\"button\"><mat-icon>add_circle_outline</mat-icon></button>\n </h2>\n <table formArrayName=\"indices\" class=\"mat-mdc-table\" cdkDropList (cdkDropListDropped)=\"drop($event, patterns)\">\n @for (p of patterns.controls; track p; let index = $index) {\n <tr class=\"mat-mdc-row\" [formGroup]=\"p\" cdkDrag>\n <td class=\"mat-mdc-cell\">\n <mat-icon cdkDragHandle>drag_indicator</mat-icon>\n </td>\n <td class=\"mat-mdc-cell flex\">\n {{p.controls.title.value}}\n </td>\n <td class=\"mat-mdc-cell nowrap\">\n <button mat-icon-button (click)=\"edit(p, 'Pattern', 'pattern')\" [bizdocTooltip]=\"'Edit'|translate\" type=\"button\"><mat-icon>edit</mat-icon></button>\n <button mat-icon-button (click)=\"patterns.removeAt(index)\" [bizdocTooltip]=\"'Remove'|translate\" type=\"button\"><mat-icon>delete</mat-icon></button>\n </td>\n </tr>\n }\n </table>\n <!--Views-->\n <h2 class=\"row mat-h2\">\n {{'CubeViews'|translate}}\n <span class=\"divider\"></span>\n <button mat-icon-button (click)=\"add(views, newView(), 'CubeView', 'view')\" [bizdocTooltip]=\"'Add'|translate\" type=\"button\"><mat-icon>add_circle_outline</mat-icon></button>\n </h2>\n <table formArrayName=\"views\" class=\"mat-mdc-table\" cdkDropList (cdkDropListDropped)=\"drop($event, views)\">\n @for (v of views.controls; track v; let index = $index) {\n <tr class=\"mat-mdc-row\" [formGroup]=\"v\" cdkDrag>\n <td class=\"mat-mdc-cell\">\n <mat-icon cdkDragHandle>drag_indicator</mat-icon>\n </td>\n <td class=\"mat-mdc-cell flex\">\n {{v.controls.title.value}}\n </td>\n <td class=\"mat-mdc-cell nowrap\">\n <button mat-icon-button (click)=\"edit(v, 'View', 'view')\" [bizdocTooltip]=\"'Edit'|translate\" type=\"button\"><mat-icon>edit</mat-icon></button>\n <button mat-icon-button (click)=\"views.removeAt(index)\" [bizdocTooltip]=\"'Remove'|translate\" type=\"button\"><mat-icon>delete</mat-icon></button>\n </td>\n </tr>\n }\n </table>\n <mat-form-field>\n <mat-label>{{'Schedule'|translate}}</mat-label>\n <bizdoc-timespan-input formControlName=\"schedule\"></bizdoc-timespan-input>\n <mat-icon matSuffix>timer</mat-icon>\n <mat-hint></mat-hint>\n </mat-form-field>\n </ng-container>\n </ng-template>\n <!--idx-->\n <ng-template bizdocCustomContent=\"index\" let-form=\"form\">\n <ng-container [formGroup]=\"form\">\n <mat-form-field class=\"flex\">\n <mat-label>{{'Title'|translate}}</mat-label>\n <input matInput formControlName=\"title\" required />\n @if (form.controls.title.hasError('required')) {\n <mat-error [innerHTML]=\"'RequiredErr'|translate:('Title'|translate)\"></mat-error>\n }\n </mat-form-field>\n <mat-form-field class=\"flex\">\n <mat-label>{{'Name'|translate}}</mat-label>\n <input matInput formControlName=\"name\" required />\n @if (form.controls.name.hasError('required')) {\n <mat-error [innerHTML]=\"'RequiredErr'|translate:('Name'|translate)\"></mat-error>\n }\n </mat-form-field>\n </ng-container>\n </ng-template>\n <!-- pattern-->\n <ng-template bizdocCustomContent=\"pattern\" let-form=\"form\">\n <ng-container [formGroup]=\"form\">\n <mat-form-field class=\"flex\">\n <mat-label>{{'Title'|translate}}</mat-label>\n <input matInput formControlName=\"title\" required />\n @if (form.controls.title.hasError('required')) {\n <mat-error [innerHTML]=\"'RequiredErr'|translate:('Title'|translate)\"></mat-error>\n }\n </mat-form-field>\n <bizdoc-designer-cube-filter [cube]=\"model\" [form]=\"form.controls.axes\"></bizdoc-designer-cube-filter>\n <bizdoc-designer-privileges [form]=\"form\"></bizdoc-designer-privileges>\n </ng-container>\n </ng-template>\n <!-- view -->\n <ng-template bizdocCustomContent=\"view\" let-form=\"form\">\n <ng-container [formGroup]=\"form\">\n <mat-form-field class=\"flex\">\n <mat-label>{{'Title'|translate}}</mat-label>\n <input matInput formControlName=\"title\" required />\n @if (form.controls.title.hasError('required')) {\n <mat-error [innerHTML]=\"'RequiredErr'|translate:('Title'|translate)\"></mat-error>\n }\n </mat-form-field>\n <mat-form-field>\n <mat-label>{{'Type'|translate}}</mat-label>\n <mat-select formControlName=\"type\">\n <mat-option value=\"Chart\">{{'Chart'|translate}}</mat-option>\n <mat-option value=\"Pivot\">{{'Pivot'|translate}}</mat-option>\n <mat-option value=\"Grid\">{{'Grid'|translate}}</mat-option>\n <mat-option value=\"Spreadsheet\">{{'Spreadsheet'|translate}}</mat-option>\n </mat-select>\n </mat-form-field>\n <mat-form-field>\n <mat-label>{{'XAxis'|translate}}</mat-label>\n <mat-select formControlName=\"xAxis\" required multiple [sortComparator]=\"sortComparator\">\n @for (a of axes.controls; track a) {\n <mat-option [value]=\"a.controls.name.value\">{{a.controls.title.value || a.controls.name.value}}</mat-option>\n }\n </mat-select>\n @if (form.controls.xAxis.hasError('required')) {\n <mat-error [innerHTML]=\"'RequiredErr'|translate:('XAxis'|translate)\"></mat-error>\n }\n </mat-form-field>\n <mat-form-field>\n <mat-label>{{'Series'|translate}}</mat-label>\n <mat-select formControlName=\"series\" multiple [sortComparator]=\"sortComparator\">\n @for (a of axes.controls; track a) {\n @if (form.controls.xAxis.value?.indexOf(a.controls.name.value) < 0) {\n <mat-option [value]=\"a.controls.name.value\">{{a.controls.title.value|| a.controls.name.value}}</mat-option>\n }\n }\n </mat-select>\n @if (form.controls.series.hasError('required')) {\n <mat-error [innerHTML]=\"'RequiredErr'|translate:('Series'|translate)\"></mat-error>\n }\n </mat-form-field>\n <mat-form-field>\n <mat-label>{{'Indices'|translate}}</mat-label>\n <mat-select formControlName=\"indices\" multiple>\n @for (i of indices.controls; track i) {\n <mat-option [value]=\"i.controls.name.value\">{{i.controls.title.value|| i.controls.name.value}}</mat-option>\n }\n </mat-select>\n </mat-form-field>\n <mat-form-field>\n <mat-label>{{'ChartType'|translate}}</mat-label>\n <mat-select formControlName=\"chartType\">\n @switch (form.controls.type.value) {\n @case ('Chart') {\n <mat-option value=\"Pie\" [disabled]=\"form.controls.series.value?.length>0\">{{'Pie'|translate}}</mat-option>\n <mat-option value=\"Doughnut\" [disabled]=\"form.controls.series.value?.length>0\">{{'Doughnut'|translate}}</mat-option>\n <mat-option value=\"HalfDoughnut\" [disabled]=\"form.controls.series.value?.length>0\">{{'HalfDoughnut'|translate}}</mat-option>\n <mat-option value=\"Funnel\" [disabled]=\"form.controls.series.value?.length>0\">{{'Funnel'|translate}}</mat-option>\n <mat-option value=\"Pyramid\" [disabled]=\"form.controls.series.value?.length>0\">{{'Pyramid'|translate}}</mat-option>\n <mat-option value=\"Column\">{{'Column'|translate}}</mat-option>\n <mat-option value=\"Bar\">{{'Bar'|translate}}</mat-option>\n <mat-option value=\"Bubble\">{{'Bubble'|translate}}</mat-option>\n <mat-option value=\"Line\">{{'Line'|translate}}</mat-option>\n <mat-option value=\"Spline\">{{'Spline'|translate}}</mat-option>\n <mat-option value=\"Area\">{{'Area'|translate}}</mat-option>\n <mat-option value=\"Scatter\">{{'Scatter'|translate}}</mat-option>\n <mat-option value=\"Polar\">{{'Polar'|translate}}</mat-option>\n <mat-option value=\"Radar\">{{'Radar'|translate}}</mat-option>\n <mat-option value=\"StepLine\">{{'StepLine'|translate}}</mat-option>\n <mat-option value=\"StepArea\">{{'StepArea'|translate}}</mat-option>\n <mat-option value=\"SplineArea\">{{'SplineArea'|translate}}</mat-option>\n <mat-option value=\"StackingBar\" [disabled]=\"!form.controls.series.value?.length\">{{'StackingBar'|translate}}</mat-option>\n <mat-option value=\"StackingBar100\" [disabled]=\"!form.controls.series.value?.length\">{{'StackingBar100'|translate}}</mat-option>\n <mat-option value=\"StackingArea\" [disabled]=\"!form.controls.series.value?.length\">{{'StackingArea'|translate}}</mat-option>\n <mat-option value=\"StackingArea100\" [disabled]=\"!form.controls.series.value?.length\">{{'StackingArea100'|translate}}</mat-option>\n <mat-option value=\"StackingColumn\" [disabled]=\"!form.controls.series.value?.length\">{{'StackingColumn'|translate}}</mat-option>\n <mat-option value=\"StackingColumn100\" [disabled]=\"!form.controls.series.value?.length\">{{'StackingColumn100'|translate}}</mat-option>\n <mat-option value=\"StackingStepArea\" [disabled]=\"!form.controls.series.value?.length\">{{'StackingStepArea'|translate}}</mat-option>\n <mat-option value=\"StackingLine\" [disabled]=\"!form.controls.series.value?.length\">{{'StackingLine'|translate}}</mat-option>\n <mat-option value=\"StackingLine100\" [disabled]=\"!form.controls.series.value?.length\">{{'StackingLine100'|translate}}</mat-option>\n }\n @case ('Pivot') {\n <mat-option>{{'None'|translate}}</mat-option>\n <mat-option value=\"Column\">{{'Column'|translate}}</mat-option>\n <mat-option value=\"Bar\">{{'Bar'|translate}}</mat-option>\n <mat-option value=\"Bubble\">{{'Bubble'|translate}}</mat-option>\n <mat-option value=\"Line\">{{'Line'|translate}}</mat-option>\n <mat-option value=\"Spline\">{{'Spline'|translate}}</mat-option>\n <mat-option value=\"SplineArea\">{{'SplineArea'|translate}}</mat-option>\n <mat-option value=\"Area\">{{'Area'|translate}}</mat-option>\n <mat-option value=\"Scatter\">{{'Scatter'|translate}}</mat-option>\n <mat-option value=\"Polar\">{{'Polar'|translate}}</mat-option>\n <mat-option value=\"Radar\">{{'Radar'|translate}}</mat-option>\n <mat-option value=\"StepLine\">{{'StepLine'|translate}}</mat-option>\n <mat-option value=\"StepArea\">{{'StepArea'|translate}}</mat-option>\n <mat-option value=\"StackingBar\" [disabled]=\"!form.controls.series.value?.length\">{{'StackingBar'|translate}}</mat-option>\n <mat-option value=\"StackingBar100\" [disabled]=\"!form.controls.series.value?.length\">{{'StackingBar100'|translate}}</mat-option>\n <mat-option value=\"StackingArea\" [disabled]=\"!form.controls.series.value?.length\">{{'StackingArea'|translate}}</mat-option>\n <mat-option value=\"StackingArea100\" [disabled]=\"!form.controls.series.value?.length\">{{'StackingArea100'|translate}}</mat-option>\n <mat-option value=\"StackingColumn\" [disabled]=\"!form.controls.series.value?.length\">{{'StackingColumn'|translate}}</mat-option>\n <mat-option value=\"StackingColumn100\" [disabled]=\"!form.controls.series.value?.length\">{{'StackingColumn100'|translate}}</mat-option>\n <mat-option value=\"StackingStepArea\" [disabled]=\"!form.controls.series.value?.length\">{{'StackingStepArea'|translate}}</mat-option>\n <mat-option value=\"StackingLine\" [disabled]=\"!form.controls.series.value?.length\">{{'StackingLine'|translate}}</mat-option>\n <mat-option value=\"StackingLine100\" [disabled]=\"!form.controls.series.value?.length\">{{'StackingLine100'|translate}}</mat-option>\n }\n }\n </mat-select>\n </mat-form-field>\n <mat-form-field>\n <mat-label>{{'IndicesChartType'|translate}}</mat-label>\n <mat-select formControlName=\"indicesChartType\">\n @switch (form.controls.type.value) {\n @case ('Chart') {\n <mat-option value=\"Column\">{{'Column'|translate}}</mat-option>\n <mat-option value=\"Bar\">{{'Bar'|translate}}</mat-option>\n <mat-option value=\"Bubble\">{{'Bubble'|translate}}</mat-option>\n <mat-option value=\"Line\">{{'Line'|translate}}</mat-option>\n <mat-option value=\"Spline\">{{'Spline'|translate}}</mat-option>\n <mat-option value=\"SplineArea\">{{'SplineArea'|translate}}</mat-option>\n <mat-option value=\"Area\">{{'Area'|translate}}</mat-option>\n <mat-option value=\"Scatter\">{{'Scatter'|translate}}</mat-option>\n <mat-option value=\"Polar\">{{'Polar'|translate}}</mat-option>\n <mat-option value=\"Radar\">{{'Radar'|translate}}</mat-option>\n <mat-option value=\"StepLine\">{{'StepLine'|translate}}</mat-option>\n <mat-option value=\"StepArea\">{{'StepArea'|translate}}</mat-option>\n <mat-option value=\"StackingColumn\" [disabled]=\"form.controls.indices.value?.length<2\">{{'StackingColumn'|translate}}</mat-option>\n <mat-option value=\"StackingColumn100\" [disabled]=\"form.controls.indices.value?.length<2\">{{'StackingColumn100'|translate}}</mat-option>\n <mat-option value=\"StackingBar\" [disabled]=\"form.controls.indices.value?.length<2\">{{'StackingBar'|translate}}</mat-option>\n <mat-option value=\"StackingBar100\" [disabled]=\"form.controls.indices.value?.length<2\">{{'StackingBar100'|translate}}</mat-option>\n <mat-option value=\"StackingLine\" [disabled]=\"form.controls.indices.value?.length<2\">{{'StackingLine'|translate}}</mat-option>\n <mat-option value=\"StackingLine100\" [disabled]=\"form.controls.indices.value?.length<2\">{{'StackingLine100'|translate}}</mat-option>\n <mat-option value=\"StackingArea\" [disabled]=\"form.controls.indices.value?.length<2\">{{'StackingArea'|translate}}</mat-option>\n <mat-option value=\"StackingArea100\" [disabled]=\"form.controls.indices.value?.length<2\">{{'StackingArea100'|translate}}</mat-option>\n <mat-option value=\"StackingStepArea\" [disabled]=\"form.controls.indices.value?.length<2\">{{'StackingStepArea'|translate}}</mat-option>\n }\n @case ('Pivot') {\n <mat-option>{{'None'|translate}}</mat-option>\n <mat-option value=\"Column\">{{'Column'|translate}}</mat-option>\n <mat-option value=\"Bar\">{{'Bar'|translate}}</mat-option>\n <mat-option value=\"Bubble\">{{'Bubble'|translate}}</mat-option>\n <mat-option value=\"Line\">{{'Line'|translate}}</mat-option>\n <mat-option value=\"Spline\">{{'Spline'|translate}}</mat-option>\n <mat-option value=\"SplineArea\">{{'SplineArea'|translate}}</mat-option>\n <mat-option value=\"Area\">{{'Area'|translate}}</mat-option>\n <mat-option value=\"Scatter\">{{'Scatter'|translate}}</mat-option>\n <mat-option value=\"Polar\">{{'Polar'|translate}}</mat-option>\n <mat-option value=\"Radar\">{{'Radar'|translate}}</mat-option>\n <mat-option value=\"StepLine\">{{'StepLine'|translate}}</mat-option>\n <mat-option value=\"StepArea\">{{'StepArea'|translate}}</mat-option>\n <mat-option value=\"StackingBar\" [disabled]=\"form.controls.series.value?.length<2\">{{'StackingBar'|translate}}</mat-option>\n <mat-option value=\"StackingBar100\" [disabled]=\"form.controls.series.value?.length<2\">{{'StackingBar100'|translate}}</mat-option>\n <mat-option value=\"StackingArea\" [disabled]=\"form.controls.series.value?.length<2\">{{'StackingArea'|translate}}</mat-option>\n <mat-option value=\"StackingArea100\" [disabled]=\"form.controls.series.value?.length<2\">{{'StackingArea100'|translate}}</mat-option>\n <mat-option value=\"StackingColumn\" [disabled]=\"form.controls.series.value?.length<2\">{{'StackingColumn'|translate}}</mat-option>\n <mat-option value=\"StackingColumn100\" [disabled]=\"form.controls.series.value?.length<2\">{{'StackingColumn100'|translate}}</mat-option>\n <mat-option value=\"StackingStepArea\" [disabled]=\"form.controls.series.value?.length<2\">{{'StackingStepArea'|translate}}</mat-option>\n <mat-option value=\"StackingLine\" [disabled]=\"form.controls.series.value?.length<2\">{{'StackingLine'|translate}}</mat-option>\n <mat-option value=\"StackingLine100\" [disabled]=\"form.controls.series.value?.length<2\">{{'StackingLine100'|translate}}</mat-option>\n }\n }\n </mat-select>\n </mat-form-field>\n <mat-form-field>\n <mat-label>{{'Guide'|translate}}</mat-label>\n <mat-select formControlName=\"guide\">\n <mat-option>{{'None'|translate}}</mat-option>\n @for (g of guides; track g) {\n <mat-option [value]=\"g.name\">{{g.title |localizedString}}</mat-option>\n }\n </mat-select>\n </mat-form-field>\n @if (cube) {\n <bizdoc-designer-cube-filter [cube]=\"cube\" [form]=\"form.controls.filters\"></bizdoc-designer-cube-filter>\n }\n </ng-container>\n </ng-template>\n <!-- Axis -->\n <ng-template bizdocCustomContent=\"axis\" let-form=\"form\">\n <ng-container [formGroup]=\"form\">\n <div class=\"row gap\">\n <mat-form-field class=\"flex\">\n <mat-label>{{'Title'|translate}}</mat-label>\n <input matInput formControlName=\"title\" required />\n @if (form.controls.title.hasError('required')) {\n <mat-error [innerHTML]=\"'RequiredErr'|translate:('Title'|translate)\"></mat-error>\n }\n </mat-form-field>\n <mat-form-field class=\"flex\">\n <mat-label>{{'Name'|translate}}</mat-label>\n <input matInput formControlName=\"name\" required />\n @if (form.controls.name.hasError('required')) {\n <mat-error [innerHTML]=\"'RequiredErr'|translate:('Name'|translate)\"></mat-error>\n }\n </mat-form-field>\n </div>\n <mat-form-field>\n <mat-label>{{'DataType'|translate}}</mat-label>\n <mat-select formControlName=\"dataType\" required>\n @for (t of typegroups['_'].elements|sort: 'title'; track t) {\n <mat-option [value]=\"t.name\">\n {{t.title}}\n </mat-option>\n }\n @for (g of typegroups|sort: 'title'; track g) {\n <mat-optgroup [label]=\"g.title\">\n @for (t of g.elements|sort: 'title'; track t) {\n <mat-option [value]=\"t.name\">\n {{t.title}}\n </mat-option>\n }\n </mat-optgroup>\n }\n </mat-select>\n @if (form.controls.title.hasError('required')) {\n <mat-error [innerHTML]=\"'RequiredErr'|translate:('DataType'|translate)\"></mat-error>\n }\n </mat-form-field>\n <div><mat-checkbox formControlName=\"combination\">{{'CombinationAxis'|translate}}</mat-checkbox></div>\n <div><mat-checkbox formControlName=\"sensitive\">{{'SensitiveAxis'|translate}}</mat-checkbox></div>\n <mat-form-field>\n <mat-label>{{'SelectionMode'|translate}}</mat-label>\n <mat-select formControlName=\"selectionMode\">\n <mat-option value=\"None\">{{'None'|translate}}</mat-option>\n <mat-option>{{'OneMode'|translate}}</mat-option>\n <mat-option value=\"Multiple\">{{'Multiple'|translate}}</mat-option>\n <mat-option value=\"Search\">{{'Autocomplete'|translate}}</mat-option>\n <mat-option value=\"Pattern\">{{'Pattern'|translate}}</mat-option>\n </mat-select>\n </mat-form-field>\n <mat-form-field>\n <mat-label>{{'DescendentOf'|translate}}</mat-label>\n <mat-select formControlName=\"descendentOf\">\n @for (a of axes.controls; track a) {\n @if (a!=form) {\n <mat-option [value]=\"a.controls.name.value\">{{a.controls.title.value}}</mat-option>\n }\n }\n </mat-select>\n </mat-form-field>\n <div><mat-checkbox formControlName=\"indexable\">{{'IndexableAxis'|translate}}</mat-checkbox></div>\n </ng-container>\n </ng-template>\n</bizdoc-designer-element>\n", styles: [":host ::ng-deep form{min-width:350px}:host ::ng-deep .mat-mdc-radio-group p{margin-inline-start:8px}.mat-mdc-table{width:100%}.mat-mdc-table .mat-mdc-cell:last-child{width:80px}.flex{flex:1}table tr td:first-child{width:26px}dl{width:100%;overflow:hidden;padding:0;margin:0}dt{padding:0;margin:0;clear:both}dd{float:left;padding:0;margin:0}\n"] }]
|
34159
|
+
args: [{ template: "<bizdoc-designer-element [form]=\"form\" [privileges]=\"true\" [context]=\"context\" (continue)=\"onContinue()\">\n <!-- widget -->\n <ng-template bizdocContent>\n @if (jobInfo) {\n <dl>\n @if (jobInfo.lastExecution) {\n <dt>{{'LastExecution'|translate}}</dt>\n <dd>{{jobInfo.lastExecution|amTimeAgo}}</dd>\n }\n @if (jobInfo.nextExecution) {\n <dt>{{'NextExecution'|translate}}</dt>\n <dd>{{jobInfo.nextExecution|amTimeAgo}}</dd>\n }\n @if (jobInfo.lastJobState) {\n <dt>{{'LastJobState'|translate}}</dt>\n <dd>\n @if (jobInfo.error) {\n <mat-icon [bizdocTooltip]=\"jobInfo.error\">report</mat-icon>\n }\n <span class=\"job-state\">{{jobInfo.lastJobState| translate}}</span>\n </dd>\n }\n </dl>\n }\n <div class=\"row start center\">\n <button mat-stroked-button (click)=\"sync()\" [disabled]=\"model.draft || syncing\">\n <span> {{'Synchronize'|translate}}</span>\n </button>\n \n @if (syncing) {\n <mat-spinner diameter=\"22\"></mat-spinner>\n }\n </div>\n <div class=\"row\">\n @if(model.axes?.length)\n {\n <mat-chip-set>\n @for(axis of model.axes; track axis){\n <mat-chip>{{axis.title}}</mat-chip>\n }\n @for(index of model.indices || []; track index){\n <mat-chip>{{index.title}}</mat-chip>\n }\n </mat-chip-set>\n }\n </div>\n </ng-template>\n <!-- edit -->\n <ng-template bizdocEditContent>\n <ng-container [formGroup]=\"form\">\n <mat-label>{{'SecurityLevel'|translate}}</mat-label>\n <mat-radio-group formControlName=\"scope\">\n <p></p>\n <mat-radio-button color=\"warn\">{{'Global'|translate}}</mat-radio-button>\n <p>{{'SecurityGlobalHelp'|translate}}</p>\n <mat-radio-button value=\"Positions\">{{'Positions'|translate}}</mat-radio-button>\n <p>{{'SecurityPositionsHelp'|translate}}</p>\n <mat-radio-button value=\"Patterns\">{{'Patterns'|translate}}</mat-radio-button>\n <p>{{'SecurityPatternsHelp'|translate}}</p>\n </mat-radio-group>\n <ng-container formGroupName=\"yAxis\">\n <mat-form-field class=\"flex\">\n <mat-label>{{'Type'|translate}}</mat-label>\n <mat-select formControlName=\"type\">\n <mat-option value=\"Currency\">{{'Currency'|translate}}</mat-option>\n <mat-option value=\"Number\">{{'Numeric'|translate}}</mat-option>\n <mat-option value=\"Count\">{{'Accumulative'|translate}}</mat-option>\n </mat-select>\n </mat-form-field>\n </ng-container>\n <mat-form-field>\n <mat-label>{{'Currency'|translate}}</mat-label>\n <mat-select formControlName=\"currencyCode\" [sortComparator]=\"sortComparator\">\n @for (c of currencies; track c) {\n <mat-option [value]=\"c.name\">{{c.title}}</mat-option>\n }\n </mat-select>\n </mat-form-field>\n <!--Axes-->\n <h2 class=\"mat-h2 row\">\n {{'Axes'|translate}}\n <span class=\"divider\"></span>\n <button mat-icon-button (click)=\"add(axes, newAxis(), 'Axis', 'axis')\" [bizdocTooltip]=\"'Add'|translate\" type=\"button\"><mat-icon>add_circle_outline</mat-icon></button>\n </h2>\n <table formArrayName=\"axes\" class=\"mat-mdc-table\" cdkDropList (cdkDropListDropped)=\"drop($event, axes)\">\n @for (a of axes.controls; track a; let index = $index) {\n <tr class=\"mat-mdc-row\" [formGroup]=\"a\" cdkDrag>\n <td class=\"mat-mdc-cell\">\n <mat-icon cdkDragHandle>drag_indicator</mat-icon>\n </td>\n <td class=\"mat-mdc-cell flex\">\n {{a.controls.title.value}}\n </td>\n <td class=\"mat-mdc-cell nowrap\">\n <button mat-icon-button (click)=\"edit(a, 'Axis', 'axis')\" [bizdocTooltip]=\"'Edit'|translate\" type=\"button\"><mat-icon>edit</mat-icon></button>\n <button mat-icon-button (click)=\"axes.removeAt(index)\" [bizdocTooltip]=\"'Remove'|translate\" type=\"button\"><mat-icon>delete</mat-icon></button>\n </td>\n </tr>\n }\n </table>\n <!--Indices-->\n <h2 class=\"mat-h2 row\">\n {{'Indices'|translate}}\n <span class=\"divider\"></span>\n <button mat-icon-button (click)=\"add(indices, newIndex(), 'Index', 'index')\" [bizdocTooltip]=\"'Add'|translate\" type=\"button\"><mat-icon>add_circle_outline</mat-icon></button>\n </h2>\n <table formArrayName=\"indices\" class=\"mat-mdc-table\" cdkDropList (cdkDropListDropped)=\"drop($event, indices)\">\n @for (i of indices.controls; track i; let index = $index) {\n <tr class=\"mat-mdc-row\" [formGroup]=\"i\" cdkDrag>\n <td class=\"mat-mdc-cell\">\n <mat-icon cdkDragHandle>drag_indicator</mat-icon>\n </td>\n <td class=\"mat-mdc-cell flex\">\n {{i.controls.title.value}}\n </td>\n <td class=\"mat-mdc-cell nowrap\">\n <button mat-icon-button (click)=\"edit(i, 'Index', 'index')\" [bizdocTooltip]=\"'Edit'|translate\" type=\"button\"><mat-icon>edit</mat-icon></button>\n <button mat-icon-button (click)=\"indices.removeAt(index)\" [bizdocTooltip]=\"'Remove'|translate\" type=\"button\"><mat-icon>delete</mat-icon></button>\n </td>\n </tr>\n }\n </table>\n @if (indices.controls.length) {\n <mat-form-field>\n <mat-label>{{'AnomalyNotification'|translate}}</mat-label>\n <mat-select formControlName=\"anomaly\">\n <mat-option value=\"None\">{{'None'|translate}}</mat-option>\n <mat-option value=\"Positions\">{{'Positions'|translate}}</mat-option>\n <mat-option value=\"Recipients\">{{'Everyone'|translate}}</mat-option>\n </mat-select>\n </mat-form-field>\n }\n <!--Patterns-->\n <h2 class=\"mat-h2 row\">\n {{'Patterns'|translate}}\n <span class=\"divider\"></span>\n <button mat-icon-button (click)=\"add(patterns, newPattern(), 'Pattern', 'pattern')\" [bizdocTooltip]=\"'Add'|translate\" type=\"button\"><mat-icon>add_circle_outline</mat-icon></button>\n </h2>\n <table formArrayName=\"indices\" class=\"mat-mdc-table\" cdkDropList (cdkDropListDropped)=\"drop($event, patterns)\">\n @for (p of patterns.controls; track p; let index = $index) {\n <tr class=\"mat-mdc-row\" [formGroup]=\"p\" cdkDrag>\n <td class=\"mat-mdc-cell\">\n <mat-icon cdkDragHandle>drag_indicator</mat-icon>\n </td>\n <td class=\"mat-mdc-cell flex\">\n {{p.controls.title.value}}\n </td>\n <td class=\"mat-mdc-cell nowrap\">\n <button mat-icon-button (click)=\"edit(p, 'Pattern', 'pattern')\" [bizdocTooltip]=\"'Edit'|translate\" type=\"button\"><mat-icon>edit</mat-icon></button>\n <button mat-icon-button (click)=\"patterns.removeAt(index)\" [bizdocTooltip]=\"'Remove'|translate\" type=\"button\"><mat-icon>delete</mat-icon></button>\n </td>\n </tr>\n }\n </table>\n <!--Views-->\n <h2 class=\"row mat-h2\">\n {{'CubeViews'|translate}}\n <span class=\"divider\"></span>\n <button mat-icon-button (click)=\"add(views, newView(), 'CubeView', 'view')\" [bizdocTooltip]=\"'Add'|translate\" type=\"button\"><mat-icon>add_circle_outline</mat-icon></button>\n </h2>\n <table formArrayName=\"views\" class=\"mat-mdc-table\" cdkDropList (cdkDropListDropped)=\"drop($event, views)\">\n @for (v of views.controls; track v; let index = $index) {\n <tr class=\"mat-mdc-row\" [formGroup]=\"v\" cdkDrag>\n <td class=\"mat-mdc-cell\">\n <mat-icon cdkDragHandle>drag_indicator</mat-icon>\n </td>\n <td class=\"mat-mdc-cell flex\">\n {{v.controls.title.value}}\n </td>\n <td class=\"mat-mdc-cell nowrap\">\n <button mat-icon-button (click)=\"edit(v, 'View', 'view')\" [bizdocTooltip]=\"'Edit'|translate\" type=\"button\"><mat-icon>edit</mat-icon></button>\n <button mat-icon-button (click)=\"views.removeAt(index)\" [bizdocTooltip]=\"'Remove'|translate\" type=\"button\"><mat-icon>delete</mat-icon></button>\n </td>\n </tr>\n }\n </table>\n <mat-form-field>\n <mat-label>{{'Schedule'|translate}}</mat-label>\n <bizdoc-timespan-input formControlName=\"schedule\"></bizdoc-timespan-input>\n <mat-icon matSuffix>timer</mat-icon>\n <mat-hint></mat-hint>\n </mat-form-field>\n </ng-container>\n </ng-template>\n <!--idx-->\n <ng-template bizdocCustomContent=\"index\" let-form=\"form\">\n <ng-container [formGroup]=\"form\">\n <mat-form-field class=\"flex\">\n <mat-label>{{'Title'|translate}}</mat-label>\n <input matInput formControlName=\"title\" required />\n @if (form.controls.title.hasError('required')) {\n <mat-error [innerHTML]=\"'RequiredErr'|translate:('Title'|translate)\"></mat-error>\n }\n </mat-form-field>\n <mat-form-field class=\"flex\">\n <mat-label>{{'Name'|translate}}</mat-label>\n <input matInput formControlName=\"name\" required />\n @if (form.controls.name.hasError('required')) {\n <mat-error [innerHTML]=\"'RequiredErr'|translate:('Name'|translate)\"></mat-error>\n }\n </mat-form-field>\n </ng-container>\n </ng-template>\n <!-- pattern-->\n <ng-template bizdocCustomContent=\"pattern\" let-form=\"form\">\n <ng-container [formGroup]=\"form\">\n <mat-form-field class=\"flex\">\n <mat-label>{{'Title'|translate}}</mat-label>\n <input matInput formControlName=\"title\" required />\n @if (form.controls.title.hasError('required')) {\n <mat-error [innerHTML]=\"'RequiredErr'|translate:('Title'|translate)\"></mat-error>\n }\n </mat-form-field>\n <bizdoc-designer-cube-filter [cube]=\"model\" [form]=\"form.controls.axes\"></bizdoc-designer-cube-filter>\n <bizdoc-designer-privileges [form]=\"form\"></bizdoc-designer-privileges>\n </ng-container>\n </ng-template>\n <!-- view -->\n <ng-template bizdocCustomContent=\"view\" let-form=\"form\">\n <ng-container [formGroup]=\"form\">\n <mat-form-field class=\"flex\">\n <mat-label>{{'Title'|translate}}</mat-label>\n <input matInput formControlName=\"title\" required />\n @if (form.controls.title.hasError('required')) {\n <mat-error [innerHTML]=\"'RequiredErr'|translate:('Title'|translate)\"></mat-error>\n }\n </mat-form-field>\n <mat-form-field>\n <mat-label>{{'Type'|translate}}</mat-label>\n <mat-select formControlName=\"type\">\n <mat-option value=\"Chart\">{{'Chart'|translate}}</mat-option>\n <mat-option value=\"PivotChart\">{{'PivotChart'|translate}}</mat-option>\n <mat-option value=\"PivotGrid\">{{'PivotGrid'|translate}}</mat-option>\n <mat-option value=\"Grid\">{{'Grid'|translate}}</mat-option>\n <mat-option value=\"Spreadsheet\">{{'Spreadsheet'|translate}}</mat-option>\n </mat-select>\n </mat-form-field>\n <mat-form-field>\n <mat-label>{{'XAxis'|translate}}</mat-label>\n <mat-select formControlName=\"xAxis\" required multiple [sortComparator]=\"sortComparator\">\n @for (a of axes.controls; track a) {\n <mat-option [value]=\"a.controls.name.value\">{{a.controls.title.value || a.controls.name.value}}</mat-option>\n }\n </mat-select>\n @if (form.controls.xAxis.hasError('required')) {\n <mat-error [innerHTML]=\"'RequiredErr'|translate:('XAxis'|translate)\"></mat-error>\n }\n </mat-form-field>\n <mat-form-field>\n <mat-label>{{'Series'|translate}}</mat-label>\n <mat-select formControlName=\"series\" multiple [sortComparator]=\"sortComparator\">\n @for (a of axes.controls; track a) {\n @if (form.controls.xAxis.value?.indexOf(a.controls.name.value) < 0) {\n <mat-option [value]=\"a.controls.name.value\">{{a.controls.title.value|| a.controls.name.value}}</mat-option>\n }\n }\n </mat-select>\n @if (form.controls.series.hasError('required')) {\n <mat-error [innerHTML]=\"'RequiredErr'|translate:('Series'|translate)\"></mat-error>\n }\n </mat-form-field>\n <mat-form-field>\n <mat-label>{{'Indices'|translate}}</mat-label>\n <mat-select formControlName=\"indices\" multiple>\n @for (i of indices.controls; track i) {\n <mat-option [value]=\"i.controls.name.value\">{{i.controls.title.value|| i.controls.name.value}}</mat-option>\n }\n </mat-select>\n </mat-form-field>\n <mat-form-field>\n <mat-label>{{'ChartType'|translate}}</mat-label>\n <mat-select formControlName=\"chartType\">\n @switch (form.controls.type.value) {\n @case ('Chart') {\n <mat-option value=\"Pie\" [disabled]=\"form.controls.series.value?.length>0\">{{'Pie'|translate}}</mat-option>\n <mat-option value=\"Doughnut\" [disabled]=\"form.controls.series.value?.length>0\">{{'Doughnut'|translate}}</mat-option>\n <mat-option value=\"HalfDoughnut\" [disabled]=\"form.controls.series.value?.length>0\">{{'HalfDoughnut'|translate}}</mat-option>\n <mat-option value=\"Funnel\" [disabled]=\"form.controls.series.value?.length>0\">{{'Funnel'|translate}}</mat-option>\n <mat-option value=\"Pyramid\" [disabled]=\"form.controls.series.value?.length>0\">{{'Pyramid'|translate}}</mat-option>\n <mat-option value=\"Column\">{{'Column'|translate}}</mat-option>\n <mat-option value=\"Bar\">{{'Bar'|translate}}</mat-option>\n <mat-option value=\"Bubble\">{{'Bubble'|translate}}</mat-option>\n <mat-option value=\"Line\">{{'Line'|translate}}</mat-option>\n <mat-option value=\"Spline\">{{'Spline'|translate}}</mat-option>\n <mat-option value=\"Area\">{{'Area'|translate}}</mat-option>\n <mat-option value=\"Scatter\">{{'Scatter'|translate}}</mat-option>\n <mat-option value=\"Polar\">{{'Polar'|translate}}</mat-option>\n <mat-option value=\"Radar\">{{'Radar'|translate}}</mat-option>\n <mat-option value=\"StepLine\">{{'StepLine'|translate}}</mat-option>\n <mat-option value=\"StepArea\">{{'StepArea'|translate}}</mat-option>\n <mat-option value=\"SplineArea\">{{'SplineArea'|translate}}</mat-option>\n <mat-option value=\"StackingBar\" [disabled]=\"!form.controls.series.value?.length\">{{'StackingBar'|translate}}</mat-option>\n <mat-option value=\"StackingBar100\" [disabled]=\"!form.controls.series.value?.length\">{{'StackingBar100'|translate}}</mat-option>\n <mat-option value=\"StackingArea\" [disabled]=\"!form.controls.series.value?.length\">{{'StackingArea'|translate}}</mat-option>\n <mat-option value=\"StackingArea100\" [disabled]=\"!form.controls.series.value?.length\">{{'StackingArea100'|translate}}</mat-option>\n <mat-option value=\"StackingColumn\" [disabled]=\"!form.controls.series.value?.length\">{{'StackingColumn'|translate}}</mat-option>\n <mat-option value=\"StackingColumn100\" [disabled]=\"!form.controls.series.value?.length\">{{'StackingColumn100'|translate}}</mat-option>\n <mat-option value=\"StackingStepArea\" [disabled]=\"!form.controls.series.value?.length\">{{'StackingStepArea'|translate}}</mat-option>\n <mat-option value=\"StackingLine\" [disabled]=\"!form.controls.series.value?.length\">{{'StackingLine'|translate}}</mat-option>\n <mat-option value=\"StackingLine100\" [disabled]=\"!form.controls.series.value?.length\">{{'StackingLine100'|translate}}</mat-option>\n }\n @case ('Pivot') {\n <mat-option>{{'None'|translate}}</mat-option>\n <mat-option value=\"Column\">{{'Column'|translate}}</mat-option>\n <mat-option value=\"Bar\">{{'Bar'|translate}}</mat-option>\n <mat-option value=\"Bubble\">{{'Bubble'|translate}}</mat-option>\n <mat-option value=\"Line\">{{'Line'|translate}}</mat-option>\n <mat-option value=\"Spline\">{{'Spline'|translate}}</mat-option>\n <mat-option value=\"SplineArea\">{{'SplineArea'|translate}}</mat-option>\n <mat-option value=\"Area\">{{'Area'|translate}}</mat-option>\n <mat-option value=\"Scatter\">{{'Scatter'|translate}}</mat-option>\n <mat-option value=\"Polar\">{{'Polar'|translate}}</mat-option>\n <mat-option value=\"Radar\">{{'Radar'|translate}}</mat-option>\n <mat-option value=\"StepLine\">{{'StepLine'|translate}}</mat-option>\n <mat-option value=\"StepArea\">{{'StepArea'|translate}}</mat-option>\n <mat-option value=\"StackingBar\" [disabled]=\"!form.controls.series.value?.length\">{{'StackingBar'|translate}}</mat-option>\n <mat-option value=\"StackingBar100\" [disabled]=\"!form.controls.series.value?.length\">{{'StackingBar100'|translate}}</mat-option>\n <mat-option value=\"StackingArea\" [disabled]=\"!form.controls.series.value?.length\">{{'StackingArea'|translate}}</mat-option>\n <mat-option value=\"StackingArea100\" [disabled]=\"!form.controls.series.value?.length\">{{'StackingArea100'|translate}}</mat-option>\n <mat-option value=\"StackingColumn\" [disabled]=\"!form.controls.series.value?.length\">{{'StackingColumn'|translate}}</mat-option>\n <mat-option value=\"StackingColumn100\" [disabled]=\"!form.controls.series.value?.length\">{{'StackingColumn100'|translate}}</mat-option>\n <mat-option value=\"StackingStepArea\" [disabled]=\"!form.controls.series.value?.length\">{{'StackingStepArea'|translate}}</mat-option>\n <mat-option value=\"StackingLine\" [disabled]=\"!form.controls.series.value?.length\">{{'StackingLine'|translate}}</mat-option>\n <mat-option value=\"StackingLine100\" [disabled]=\"!form.controls.series.value?.length\">{{'StackingLine100'|translate}}</mat-option>\n }\n }\n </mat-select>\n </mat-form-field>\n <mat-form-field>\n <mat-label>{{'IndicesChartType'|translate}}</mat-label>\n <mat-select formControlName=\"indicesChartType\">\n @switch (form.controls.type.value) {\n @case ('Chart') {\n <mat-option value=\"Column\">{{'Column'|translate}}</mat-option>\n <mat-option value=\"Bar\">{{'Bar'|translate}}</mat-option>\n <mat-option value=\"Bubble\">{{'Bubble'|translate}}</mat-option>\n <mat-option value=\"Line\">{{'Line'|translate}}</mat-option>\n <mat-option value=\"Spline\">{{'Spline'|translate}}</mat-option>\n <mat-option value=\"SplineArea\">{{'SplineArea'|translate}}</mat-option>\n <mat-option value=\"Area\">{{'Area'|translate}}</mat-option>\n <mat-option value=\"Scatter\">{{'Scatter'|translate}}</mat-option>\n <mat-option value=\"Polar\">{{'Polar'|translate}}</mat-option>\n <mat-option value=\"Radar\">{{'Radar'|translate}}</mat-option>\n <mat-option value=\"StepLine\">{{'StepLine'|translate}}</mat-option>\n <mat-option value=\"StepArea\">{{'StepArea'|translate}}</mat-option>\n <mat-option value=\"StackingColumn\" [disabled]=\"form.controls.indices.value?.length<2\">{{'StackingColumn'|translate}}</mat-option>\n <mat-option value=\"StackingColumn100\" [disabled]=\"form.controls.indices.value?.length<2\">{{'StackingColumn100'|translate}}</mat-option>\n <mat-option value=\"StackingBar\" [disabled]=\"form.controls.indices.value?.length<2\">{{'StackingBar'|translate}}</mat-option>\n <mat-option value=\"StackingBar100\" [disabled]=\"form.controls.indices.value?.length<2\">{{'StackingBar100'|translate}}</mat-option>\n <mat-option value=\"StackingLine\" [disabled]=\"form.controls.indices.value?.length<2\">{{'StackingLine'|translate}}</mat-option>\n <mat-option value=\"StackingLine100\" [disabled]=\"form.controls.indices.value?.length<2\">{{'StackingLine100'|translate}}</mat-option>\n <mat-option value=\"StackingArea\" [disabled]=\"form.controls.indices.value?.length<2\">{{'StackingArea'|translate}}</mat-option>\n <mat-option value=\"StackingArea100\" [disabled]=\"form.controls.indices.value?.length<2\">{{'StackingArea100'|translate}}</mat-option>\n <mat-option value=\"StackingStepArea\" [disabled]=\"form.controls.indices.value?.length<2\">{{'StackingStepArea'|translate}}</mat-option>\n }\n @case ('Pivot') {\n <mat-option>{{'None'|translate}}</mat-option>\n <mat-option value=\"Column\">{{'Column'|translate}}</mat-option>\n <mat-option value=\"Bar\">{{'Bar'|translate}}</mat-option>\n <mat-option value=\"Bubble\">{{'Bubble'|translate}}</mat-option>\n <mat-option value=\"Line\">{{'Line'|translate}}</mat-option>\n <mat-option value=\"Spline\">{{'Spline'|translate}}</mat-option>\n <mat-option value=\"SplineArea\">{{'SplineArea'|translate}}</mat-option>\n <mat-option value=\"Area\">{{'Area'|translate}}</mat-option>\n <mat-option value=\"Scatter\">{{'Scatter'|translate}}</mat-option>\n <mat-option value=\"Polar\">{{'Polar'|translate}}</mat-option>\n <mat-option value=\"Radar\">{{'Radar'|translate}}</mat-option>\n <mat-option value=\"StepLine\">{{'StepLine'|translate}}</mat-option>\n <mat-option value=\"StepArea\">{{'StepArea'|translate}}</mat-option>\n <mat-option value=\"StackingBar\" [disabled]=\"form.controls.series.value?.length<2\">{{'StackingBar'|translate}}</mat-option>\n <mat-option value=\"StackingBar100\" [disabled]=\"form.controls.series.value?.length<2\">{{'StackingBar100'|translate}}</mat-option>\n <mat-option value=\"StackingArea\" [disabled]=\"form.controls.series.value?.length<2\">{{'StackingArea'|translate}}</mat-option>\n <mat-option value=\"StackingArea100\" [disabled]=\"form.controls.series.value?.length<2\">{{'StackingArea100'|translate}}</mat-option>\n <mat-option value=\"StackingColumn\" [disabled]=\"form.controls.series.value?.length<2\">{{'StackingColumn'|translate}}</mat-option>\n <mat-option value=\"StackingColumn100\" [disabled]=\"form.controls.series.value?.length<2\">{{'StackingColumn100'|translate}}</mat-option>\n <mat-option value=\"StackingStepArea\" [disabled]=\"form.controls.series.value?.length<2\">{{'StackingStepArea'|translate}}</mat-option>\n <mat-option value=\"StackingLine\" [disabled]=\"form.controls.series.value?.length<2\">{{'StackingLine'|translate}}</mat-option>\n <mat-option value=\"StackingLine100\" [disabled]=\"form.controls.series.value?.length<2\">{{'StackingLine100'|translate}}</mat-option>\n }\n }\n </mat-select>\n </mat-form-field>\n <mat-form-field>\n <mat-label>{{'Guide'|translate}}</mat-label>\n <mat-select formControlName=\"guide\">\n <mat-option>{{'None'|translate}}</mat-option>\n @for (g of guides; track g) {\n <mat-option [value]=\"g.name\">{{g.title |localizedString}}</mat-option>\n }\n </mat-select>\n </mat-form-field>\n @if (cube) {\n <bizdoc-designer-cube-filter [cube]=\"cube\" [form]=\"form.controls.filters\"></bizdoc-designer-cube-filter>\n }\n </ng-container>\n </ng-template>\n <!-- Axis -->\n <ng-template bizdocCustomContent=\"axis\" let-form=\"form\">\n <ng-container [formGroup]=\"form\">\n <div class=\"row gap\">\n <mat-form-field class=\"flex\">\n <mat-label>{{'Title'|translate}}</mat-label>\n <input matInput formControlName=\"title\" required />\n @if (form.controls.title.hasError('required')) {\n <mat-error [innerHTML]=\"'RequiredErr'|translate:('Title'|translate)\"></mat-error>\n }\n </mat-form-field>\n <mat-form-field class=\"flex\">\n <mat-label>{{'Name'|translate}}</mat-label>\n <input matInput formControlName=\"name\" required />\n @if (form.controls.name.hasError('required')) {\n <mat-error [innerHTML]=\"'RequiredErr'|translate:('Name'|translate)\"></mat-error>\n }\n </mat-form-field>\n </div>\n <mat-form-field>\n <mat-label>{{'DataType'|translate}}</mat-label>\n <mat-select formControlName=\"dataType\" required>\n @for (t of typegroups['_'].elements|sort: 'title'; track t) {\n <mat-option [value]=\"t.name\">\n {{t.title}}\n </mat-option>\n }\n @for (g of typegroups|sort: 'title'; track g) {\n <mat-optgroup [label]=\"g.title\">\n @for (t of g.elements|sort: 'title'; track t) {\n <mat-option [value]=\"t.name\">\n {{t.title}}\n </mat-option>\n }\n </mat-optgroup>\n }\n </mat-select>\n @if (form.controls.title.hasError('required')) {\n <mat-error [innerHTML]=\"'RequiredErr'|translate:('DataType'|translate)\"></mat-error>\n }\n </mat-form-field>\n <div><mat-checkbox formControlName=\"combination\">{{'CombinationAxis'|translate}}</mat-checkbox></div>\n <div><mat-checkbox formControlName=\"sensitive\">{{'SensitiveAxis'|translate}}</mat-checkbox></div>\n <mat-form-field>\n <mat-label>{{'SelectionMode'|translate}}</mat-label>\n <mat-select formControlName=\"selectionMode\">\n <mat-option value=\"None\">{{'None'|translate}}</mat-option>\n <mat-option>{{'OneMode'|translate}}</mat-option>\n <mat-option value=\"Multiple\">{{'Multiple'|translate}}</mat-option>\n <mat-option value=\"Search\">{{'Autocomplete'|translate}}</mat-option>\n <mat-option value=\"Pattern\">{{'Pattern'|translate}}</mat-option>\n </mat-select>\n </mat-form-field>\n <mat-form-field>\n <mat-label>{{'DescendentOf'|translate}}</mat-label>\n <mat-select formControlName=\"descendentOf\">\n @for (a of axes.controls; track a) {\n @if (a!=form) {\n <mat-option [value]=\"a.controls.name.value\">{{a.controls.title.value}}</mat-option>\n }\n }\n </mat-select>\n </mat-form-field>\n <div><mat-checkbox formControlName=\"indexable\">{{'IndexableAxis'|translate}}</mat-checkbox></div>\n </ng-container>\n </ng-template>\n</bizdoc-designer-element>\n", styles: [":host ::ng-deep form{min-width:350px}:host ::ng-deep .mat-mdc-radio-group p{margin-inline-start:8px}.mat-mdc-table{width:100%}.mat-mdc-table .mat-mdc-cell:last-child{width:80px}.flex{flex:1}table tr td:first-child{width:26px}dl{width:100%;overflow:hidden;padding:0;margin:0}dt{padding:0;margin:0;clear:both}dd{float:left;padding:0;margin:0}\n"] }]
|
34134
34160
|
}], ctorParameters: () => [{ type: i1$2.FormBuilder }, { type: SystemService }, { type: PromptService }, { type: i0.ElementRef }, { type: DesignerRef, decorators: [{
|
34135
34161
|
type: Inject,
|
34136
34162
|
args: [DesignerRef]
|
@@ -34172,7 +34198,7 @@ class FolderDesignComponent extends DesignerTypeElementComponent {
|
|
34172
34198
|
this.cube = this.cubes.find(c => c.name === evt.value);
|
34173
34199
|
}
|
34174
34200
|
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.2.3", ngImport: i0, type: FolderDesignComponent, deps: null, target: i0.ɵɵFactoryTarget.Component }); }
|
34175
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "17.2.3", type: FolderDesignComponent, selector: "ng-component", usesInheritance: true, ngImport: i0, template: "<bizdoc-designer-element [form]=\"form\" [privileges]=\"true\" [icon]=\"true\" [context]=\"context\">\n <ng-template bizdocEditContent>\n <ng-container [formGroup]=\"form\">\n @if (cubes.length) {\n <ng-container formGroupName=\"filters\">\n <h2 class=\"mat-h2\">{{'Filters'|translate}}</h2>\n @if (cubes.length>1) {\n <mat-form-field>\n <mat-label>{{'Cube'|translate}}</mat-label>\n <mat-select formControlName=\"cube\" (selectionChange)=\"cubeSelected($event)\">\n <mat-option>{{'None'|translate}}</mat-option>\n @for (c of cubes; track c) {\n <mat-option [value]=\"c.name\">{{c.title|localizedString}}</mat-option>\n }\n </mat-select>\n </mat-form-field>\n }\n <mat-form-field>\n <mat-label>{{'Axes'|translate}}</mat-label>\n <mat-select formControlName=\"axes\" multiple>\n @for (a of cube?.axes; track a) {\n <mat-option [value]=\"a.name\">{{a.title}}</mat-option>\n }\n </mat-select>\n </mat-form-field>\n </ng-container>\n }\n <h2 class=\"mat-h2 row\">\n {{'Columns'|translate}}\n <span class=\"divider\"></span>\n <button mat-icon-button (click)=\"add(columns, newColumn(), 'Column', 'column')\" [bizdocTooltip]=\"'Add'|translate\" type=\"button\"><mat-icon>add_circle_outline</mat-icon></button>\n </h2>\n <table formArrayName=\"columns\" class=\"mat-mdc-table\" cdkDropList (cdkDropListDropped)=\"drop($event, columns)\">\n @for (c of columns.controls; track c; let index = $index) {\n <tr class=\"mat-mdc-row\" [formGroup]=\"c\" cdkDrag>\n <td class=\"mat-mdc-cell\">\n <mat-icon cdkDragHandle>drag_indicator</mat-icon>\n </td>\n <td class=\"mat-mdc-cell flex\" width=\"99%\">\n {{c.controls.title.value}}\n </td>\n <td class=\"mat-mdc-cell\" style=\"white-space: pre;\">\n <button mat-icon-button (click)=\"edit(c, 'Column', 'column')\" [bizdocTooltip]=\"'Edit'|translate\" type=\"button\"><mat-icon>edit</mat-icon></button>\n <button mat-icon-button (click)=\"columns.removeAt(index)\" [bizdocTooltip]=\"'Remove'|translate\" type=\"button\"><mat-icon>delete</mat-icon></button>\n </td>\n </tr>\n }\n </table>\n </ng-container>\n </ng-template>\n <!--column -->\n <ng-template bizdocCustomContent=\"column\" let-form=\"form\">\n <ng-container [formGroup]=\"form\">\n <mat-form-field class=\"flex\">\n <mat-label>{{'Title'|translate}}</mat-label>\n <input matInput formControlName=\"title\" required />\n </mat-form-field>\n <mat-form-field class=\"flex\">\n <mat-label>{{'Name'|translate}}</mat-label>\n <input matInput formControlName=\"name\" required [matAutocomplete]=\"names\" />\n <mat-autocomplete #names=\"matAutocomplete\" (optionSelected)=\"form.controls.title.setValue($event.option.getLabel())\">\n <mat-option value=\"number\">{{'Number'|translate}}</mat-option>\n <mat-option value=\"subject\">{{'Subject'|translate}}</mat-option>\n <mat-option value=\"value\">{{'Value'|translate}}</mat-option>\n <mat-option value=\"owner\">{{'Owner'|translate}}</mat-option>\n <mat-option value=\"sender\">{{'Sender'|translate}}</mat-option>\n <mat-option value=\"received\">{{'Received'|translate}}</mat-option>\n <mat-option value=\"receivedAgo\">{{'ReceivedAgo'|translate}}</mat-option>\n <mat-option value=\"replied\">{{'Replied'|translate}}</mat-option>\n <mat-option value=\"state\">{{'State'|translate}}</mat-option>\n <mat-option value=\"issued\">{{'Issued'|translate}}</mat-option>\n <mat-option value=\"issuedAgo\">{{'IssuedAgo'|translate}}</mat-option>\n </mat-autocomplete>\n </mat-form-field>\n <mat-form-field>\n <mat-label>{{'DataType'|translate}}</mat-label>\n <mat-select formControlName=\"type\">\n @for (c of controls; track c) {\n <mat-option [value]=\"c.name\">{{c.title}}</mat-option>\n }\n </mat-select>\n </mat-form-field>\n </ng-container>\n </ng-template>\n</bizdoc-designer-element>\n", dependencies: [{ kind: "directive", type: i1$2.DefaultValueAccessor, selector: "input:not([type=checkbox])[formControlName],textarea[formControlName],input:not([type=checkbox])[formControl],textarea[formControl],input:not([type=checkbox])[ngModel],textarea[ngModel],[ngDefaultControl]" }, { kind: "directive", type: i1$2.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i1$2.NgControlStatusGroup, selector: "[formGroupName],[formArrayName],[ngModelGroup],[formGroup],form:not([ngNoForm]),[ngForm]" }, { kind: "directive", type: i1$2.RequiredValidator, selector: ":not([type=checkbox])[required][formControlName],:not([type=checkbox])[required][formControl],:not([type=checkbox])[required][ngModel]", inputs: ["required"] }, { kind: "directive", type: i1$2.FormGroupDirective, selector: "[formGroup]", inputs: ["formGroup"], outputs: ["ngSubmit"], exportAs: ["ngForm"] }, { kind: "directive", type: i1$2.FormControlName, selector: "[formControlName]", inputs: ["formControlName", "disabled", "ngModel"], outputs: ["ngModelChange"] }, { kind: "directive", type: i1$2.FormGroupName, selector: "[formGroupName]", inputs: ["formGroupName"] }, { kind: "directive", type: i1$2.FormArrayName, selector: "[formArrayName]", inputs: ["formArrayName"] }, { kind: "directive", type: i2$6.CdkDropList, selector: "[cdkDropList], cdk-drop-list", inputs: ["cdkDropListConnectedTo", "cdkDropListData", "cdkDropListOrientation", "id", "cdkDropListLockAxis", "cdkDropListDisabled", "cdkDropListSortingDisabled", "cdkDropListEnterPredicate", "cdkDropListSortPredicate", "cdkDropListAutoScrollDisabled", "cdkDropListAutoScrollStep"], outputs: ["cdkDropListDropped", "cdkDropListEntered", "cdkDropListExited", "cdkDropListSorted"], exportAs: ["cdkDropList"] }, { kind: "directive", type: i2$6.CdkDrag, selector: "[cdkDrag]", inputs: ["cdkDragData", "cdkDragLockAxis", "cdkDragRootElement", "cdkDragBoundary", "cdkDragStartDelay", "cdkDragFreeDragPosition", "cdkDragDisabled", "cdkDragConstrainPosition", "cdkDragPreviewClass", "cdkDragPreviewContainer"], outputs: ["cdkDragStarted", "cdkDragReleased", "cdkDragEnded", "cdkDragEntered", "cdkDragExited", "cdkDragDropped", "cdkDragMoved"], exportAs: ["cdkDrag"] }, { kind: "directive", type: i2$6.CdkDragHandle, selector: "[cdkDragHandle]", inputs: ["cdkDragHandleDisabled"] }, { kind: "component", type: i4$1.MatAutocomplete, selector: "mat-autocomplete", inputs: ["aria-label", "aria-labelledby", "displayWith", "autoActiveFirstOption", "autoSelectActiveOption", "requireSelection", "panelWidth", "disableRipple", "class", "hideSingleSelectionIndicator"], outputs: ["optionSelected", "opened", "closed", "optionActivated"], exportAs: ["matAutocomplete"] }, { kind: "component", type: i2$5.MatOption, selector: "mat-option", inputs: ["value", "id", "disabled"], outputs: ["onSelectionChange"], exportAs: ["matOption"] }, { kind: "directive", type: i4$1.MatAutocompleteTrigger, selector: "input[matAutocomplete], textarea[matAutocomplete]", inputs: ["matAutocomplete", "matAutocompletePosition", "matAutocompleteConnectedTo", "autocomplete", "matAutocompleteDisabled"], exportAs: ["matAutocompleteTrigger"] }, { kind: "component", type: i3$1.MatFormField, selector: "mat-form-field", inputs: ["hideRequiredMarker", "color", "floatLabel", "appearance", "subscriptSizing", "hintLabel"], exportAs: ["matFormField"] }, { kind: "directive", type: i3$1.MatLabel, selector: "mat-label" }, { kind: "component", type: i4$2.MatSelect, selector: "mat-select", inputs: ["aria-describedby", "panelClass", "disabled", "disableRipple", "tabIndex", "hideSingleSelectionIndicator", "placeholder", "required", "multiple", "disableOptionCentering", "compareWith", "value", "aria-label", "aria-labelledby", "errorStateMatcher", "typeaheadDebounceInterval", "sortComparator", "id", "panelWidth"], outputs: ["openedChange", "opened", "closed", "selectionChange", "valueChange"], exportAs: ["matSelect"] }, { kind: "component", type: i8.MatIconButton, selector: "button[mat-icon-button]", exportAs: ["matButton"] }, { kind: "directive", type: i3$3.MatInput, selector: "input[matInput], textarea[matInput], select[matNativeControl], input[matNativeControl], textarea[matNativeControl]", inputs: ["disabled", "id", "placeholder", "name", "required", "type", "errorStateMatcher", "aria-describedby", "value", "readonly"], exportAs: ["matInput"] }, { kind: "component", type: i10.MatIcon, selector: "mat-icon", inputs: ["color", "inline", "svgIcon", "fontSet", "fontIcon"], exportAs: ["matIcon"] }, { kind: "directive", type: TooltipDirective, selector: "[bizdocTooltip]", inputs: ["bizdocTooltip", "bizdocTooltipTemplate", "bizdocTooltipContext", "bizdocTooltipPosition", "bizdocTooltipDuration", "bizdocTooltipDisabled"] }, { kind: "directive", type: CustomContentDirective, selector: "[bizdocCustomContent]", inputs: ["bizdocCustomContent"] }, { kind: "directive", type: EditContentDirective, selector: "[bizdocEditContent]" }, { kind: "component", type: DesignerItemComponent, selector: "bizdoc-designer-element", inputs: ["privileges", "icon", "form", "context"], outputs: ["save"] }, { kind: "pipe", type: LocalizedStringPipe, name: "localizedString" }, { kind: "pipe", type: TranslatePipe, name: "translate" }] }); }
|
34201
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "17.2.3", type: FolderDesignComponent, selector: "ng-component", usesInheritance: true, ngImport: i0, template: "<bizdoc-designer-element [form]=\"form\" [privileges]=\"true\" [icon]=\"true\" [context]=\"context\">\n <ng-template bizdocEditContent>\n <ng-container [formGroup]=\"form\">\n @if (cubes.length) {\n <ng-container formGroupName=\"filters\">\n <h2 class=\"mat-h2\">{{'Filters'|translate}}</h2>\n @if (cubes.length>1) {\n <mat-form-field>\n <mat-label>{{'Cube'|translate}}</mat-label>\n <mat-select formControlName=\"cube\" (selectionChange)=\"cubeSelected($event)\">\n <mat-option>{{'None'|translate}}</mat-option>\n @for (c of cubes; track c) {\n <mat-option [value]=\"c.name\">{{c.title|localizedString}}</mat-option>\n }\n </mat-select>\n </mat-form-field>\n }\n <mat-form-field>\n <mat-label>{{'Axes'|translate}}</mat-label>\n <mat-select formControlName=\"axes\" multiple>\n @for (a of cube?.axes; track a) {\n <mat-option [value]=\"a.name\">{{a.title}}</mat-option>\n }\n </mat-select>\n </mat-form-field>\n </ng-container>\n }\n <h2 class=\"mat-h2 row\">\n {{'Columns'|translate}}\n <span class=\"divider\"></span>\n <button mat-icon-button (click)=\"add(columns, newColumn(), 'Column', 'column')\" [bizdocTooltip]=\"'Add'|translate\" type=\"button\"><mat-icon>add_circle_outline</mat-icon></button>\n </h2>\n <table formArrayName=\"columns\" class=\"mat-mdc-table\" cdkDropList (cdkDropListDropped)=\"drop($event, columns)\">\n @for (c of columns.controls; track c; let index = $index) {\n <tr class=\"mat-mdc-row\" [formGroup]=\"c\" cdkDrag>\n <td class=\"mat-mdc-cell\">\n <mat-icon cdkDragHandle>drag_indicator</mat-icon>\n </td>\n <td class=\"mat-mdc-cell flex\" width=\"99%\">\n {{c.controls.title.value}}\n </td>\n <td class=\"mat-mdc-cell\" style=\"white-space: pre;\">\n <button mat-icon-button (click)=\"edit(c, 'Column', 'column')\" [bizdocTooltip]=\"'Edit'|translate\" type=\"button\"><mat-icon>edit</mat-icon></button>\n <button mat-icon-button (click)=\"columns.removeAt(index)\" [bizdocTooltip]=\"'Remove'|translate\" type=\"button\"><mat-icon>delete</mat-icon></button>\n </td>\n </tr>\n }\n </table>\n </ng-container>\n </ng-template>\n <!--column -->\n <ng-template bizdocCustomContent=\"column\" let-form=\"form\">\n <ng-container [formGroup]=\"form\">\n <mat-form-field class=\"flex\">\n <mat-label>{{'Title'|translate}}</mat-label>\n <input matInput formControlName=\"title\" required />\n </mat-form-field>\n <mat-form-field class=\"flex\">\n <mat-label>{{'Name'|translate}}</mat-label>\n <input matInput formControlName=\"name\" required [matAutocomplete]=\"names\" />\n <mat-autocomplete #names=\"matAutocomplete\" (optionSelected)=\"form.controls.title.setValue($event.option.getLabel())\">\n <mat-option value=\"number\">{{'Number'|translate}}</mat-option>\n <mat-option value=\"subject\">{{'Subject'|translate}}</mat-option>\n <mat-option value=\"value\">{{'Value'|translate}}</mat-option>\n <mat-option value=\"owner\">{{'Owner'|translate}}</mat-option>\n <mat-option value=\"sender\">{{'Sender'|translate}}</mat-option>\n <mat-option value=\"received\">{{'Received'|translate}}</mat-option>\n <mat-option value=\"receivedAgo\">{{'ReceivedAgo'|translate}}</mat-option>\n <mat-option value=\"replied\">{{'Replied'|translate}}</mat-option>\n <mat-option value=\"state\">{{'State'|translate}}</mat-option>\n <mat-option value=\"issued\">{{'Issued'|translate}}</mat-option>\n <mat-option value=\"issuedAgo\">{{'IssuedAgo'|translate}}</mat-option>\n </mat-autocomplete>\n </mat-form-field>\n <mat-form-field>\n <mat-label>{{'DataType'|translate}}</mat-label>\n <mat-select formControlName=\"type\">\n @for (c of controls; track c) {\n <mat-option [value]=\"c.name\">{{c.title}}</mat-option>\n }\n </mat-select>\n </mat-form-field>\n </ng-container>\n </ng-template>\n</bizdoc-designer-element>\n", dependencies: [{ kind: "directive", type: i1$2.DefaultValueAccessor, selector: "input:not([type=checkbox])[formControlName],textarea[formControlName],input:not([type=checkbox])[formControl],textarea[formControl],input:not([type=checkbox])[ngModel],textarea[ngModel],[ngDefaultControl]" }, { kind: "directive", type: i1$2.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i1$2.NgControlStatusGroup, selector: "[formGroupName],[formArrayName],[ngModelGroup],[formGroup],form:not([ngNoForm]),[ngForm]" }, { kind: "directive", type: i1$2.RequiredValidator, selector: ":not([type=checkbox])[required][formControlName],:not([type=checkbox])[required][formControl],:not([type=checkbox])[required][ngModel]", inputs: ["required"] }, { kind: "directive", type: i1$2.FormGroupDirective, selector: "[formGroup]", inputs: ["formGroup"], outputs: ["ngSubmit"], exportAs: ["ngForm"] }, { kind: "directive", type: i1$2.FormControlName, selector: "[formControlName]", inputs: ["formControlName", "disabled", "ngModel"], outputs: ["ngModelChange"] }, { kind: "directive", type: i1$2.FormGroupName, selector: "[formGroupName]", inputs: ["formGroupName"] }, { kind: "directive", type: i1$2.FormArrayName, selector: "[formArrayName]", inputs: ["formArrayName"] }, { kind: "directive", type: i2$6.CdkDropList, selector: "[cdkDropList], cdk-drop-list", inputs: ["cdkDropListConnectedTo", "cdkDropListData", "cdkDropListOrientation", "id", "cdkDropListLockAxis", "cdkDropListDisabled", "cdkDropListSortingDisabled", "cdkDropListEnterPredicate", "cdkDropListSortPredicate", "cdkDropListAutoScrollDisabled", "cdkDropListAutoScrollStep"], outputs: ["cdkDropListDropped", "cdkDropListEntered", "cdkDropListExited", "cdkDropListSorted"], exportAs: ["cdkDropList"] }, { kind: "directive", type: i2$6.CdkDrag, selector: "[cdkDrag]", inputs: ["cdkDragData", "cdkDragLockAxis", "cdkDragRootElement", "cdkDragBoundary", "cdkDragStartDelay", "cdkDragFreeDragPosition", "cdkDragDisabled", "cdkDragConstrainPosition", "cdkDragPreviewClass", "cdkDragPreviewContainer"], outputs: ["cdkDragStarted", "cdkDragReleased", "cdkDragEnded", "cdkDragEntered", "cdkDragExited", "cdkDragDropped", "cdkDragMoved"], exportAs: ["cdkDrag"] }, { kind: "directive", type: i2$6.CdkDragHandle, selector: "[cdkDragHandle]", inputs: ["cdkDragHandleDisabled"] }, { kind: "component", type: i4$1.MatAutocomplete, selector: "mat-autocomplete", inputs: ["aria-label", "aria-labelledby", "displayWith", "autoActiveFirstOption", "autoSelectActiveOption", "requireSelection", "panelWidth", "disableRipple", "class", "hideSingleSelectionIndicator"], outputs: ["optionSelected", "opened", "closed", "optionActivated"], exportAs: ["matAutocomplete"] }, { kind: "component", type: i2$5.MatOption, selector: "mat-option", inputs: ["value", "id", "disabled"], outputs: ["onSelectionChange"], exportAs: ["matOption"] }, { kind: "directive", type: i4$1.MatAutocompleteTrigger, selector: "input[matAutocomplete], textarea[matAutocomplete]", inputs: ["matAutocomplete", "matAutocompletePosition", "matAutocompleteConnectedTo", "autocomplete", "matAutocompleteDisabled"], exportAs: ["matAutocompleteTrigger"] }, { kind: "component", type: i3$1.MatFormField, selector: "mat-form-field", inputs: ["hideRequiredMarker", "color", "floatLabel", "appearance", "subscriptSizing", "hintLabel"], exportAs: ["matFormField"] }, { kind: "directive", type: i3$1.MatLabel, selector: "mat-label" }, { kind: "component", type: i4$2.MatSelect, selector: "mat-select", inputs: ["aria-describedby", "panelClass", "disabled", "disableRipple", "tabIndex", "hideSingleSelectionIndicator", "placeholder", "required", "multiple", "disableOptionCentering", "compareWith", "value", "aria-label", "aria-labelledby", "errorStateMatcher", "typeaheadDebounceInterval", "sortComparator", "id", "panelWidth"], outputs: ["openedChange", "opened", "closed", "selectionChange", "valueChange"], exportAs: ["matSelect"] }, { kind: "component", type: i8.MatIconButton, selector: "button[mat-icon-button]", exportAs: ["matButton"] }, { kind: "directive", type: i3$3.MatInput, selector: "input[matInput], textarea[matInput], select[matNativeControl], input[matNativeControl], textarea[matNativeControl]", inputs: ["disabled", "id", "placeholder", "name", "required", "type", "errorStateMatcher", "aria-describedby", "value", "readonly"], exportAs: ["matInput"] }, { kind: "component", type: i10.MatIcon, selector: "mat-icon", inputs: ["color", "inline", "svgIcon", "fontSet", "fontIcon"], exportAs: ["matIcon"] }, { kind: "directive", type: TooltipDirective, selector: "[bizdocTooltip]", inputs: ["bizdocTooltip", "bizdocTooltipTemplate", "bizdocTooltipContext", "bizdocTooltipPosition", "bizdocTooltipDuration", "bizdocTooltipDisabled"] }, { kind: "directive", type: CustomContentDirective, selector: "[bizdocCustomContent]", inputs: ["bizdocCustomContent"] }, { kind: "directive", type: EditContentDirective, selector: "[bizdocEditContent]" }, { kind: "component", type: DesignerItemComponent, selector: "bizdoc-designer-element", inputs: ["privileges", "icon", "form", "context"], outputs: ["save", "continue"] }, { kind: "pipe", type: LocalizedStringPipe, name: "localizedString" }, { kind: "pipe", type: TranslatePipe, name: "translate" }] }); }
|
34176
34202
|
}
|
34177
34203
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.2.3", ngImport: i0, type: FolderDesignComponent, decorators: [{
|
34178
34204
|
type: Component,
|
@@ -34400,7 +34426,7 @@ class FormDesignComponent extends DesignerTypeElementComponent {
|
|
34400
34426
|
this._destroy.complete();
|
34401
34427
|
}
|
34402
34428
|
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.2.3", ngImport: i0, type: FormDesignComponent, deps: [{ token: i1$2.FormBuilder }, { token: PanesRouter }, { token: SystemService }, { token: SessionService }, { token: i0.Injector }, { token: TranslateService }, { token: i0.ElementRef }, { token: DesignerRef }], target: i0.ɵɵFactoryTarget.Component }); }
|
34403
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "17.2.3", type: FormDesignComponent, selector: "ng-component", usesInheritance: true, ngImport: i0, template: "<bizdoc-designer-element [form]=\"form\" [privileges]=\"true\" [icon]=\"true\" [context]=\"context\">\n <ng-template bizdocContent>\n @if (usage) {\n <ejs-sparkline width='250px' height='200px'\n type=\"Line\"\n [id]=\"model.name\"\n [fill]=\"primary\"\n [dataSource]=\"usage\"\n xName=\"date\"\n yName=\"count\"\n lineWidth=\"2\"\n valueType=\"DateTime\"\n [locale]=\"locale\"\n [markerSettings]=\"markerSettings\"\n [tooltipSettings]=\"tooltipSettings\"\n (tooltipInitialize)=\"tooltipInitialize($event)\"\n [enableRtl]=\"enableRtl\">\n </ejs-sparkline>\n }\n <div class=\"row\">\n <button mat-icon-button (click)=\"diagram()\" [bizdocTooltip]=\"'Workflow'|translate\" [disabled]=\"model.draft\"><mat-icon>schema</mat-icon></button>\n <span class=\"divider\"></span>\n <button mat-icon-button [matMenuTriggerFor]=\"options\" [disabled]=\"model.draft\"><mat-icon>more_vert</mat-icon></button>\n <mat-menu #options>\n <button mat-menu-item (click)=\"invite()\">{{'Invite'|l18n}}</button>\n </mat-menu>\n </div>\n </ng-template>\n <!--edit-->\n <ng-template bizdocEditContent>\n <ng-container [formGroup]=\"form\">\n <div class=\"row flex\" [formGroup]=\"format\">\n <mat-form-field>\n <mat-label>{{'Prefix'|translate}}</mat-label>\n <input matInput formControlName=\"prefix\" />\n </mat-form-field>\n \n <mat-form-field class=\"flex\">\n <mat-label>{{'Digits'|translate}}</mat-label>\n <input matInput formControlName=\"digits\" maxlength=\"2\" />\n </mat-form-field>\n \n <mat-form-field>\n <mat-label>{{'Suffix'|translate}}</mat-label>\n <input matInput formControlName=\"suffix\" />\n </mat-form-field>\n </div>\n <bizdoc-localized-string formControlName=\"group\" [placeholder]=\"'Group'|translate\"></bizdoc-localized-string>\n <bizdoc-localized-string formControlName=\"description\" [placeholder]=\"'Description'|translate\"></bizdoc-localized-string>\n @if (guides.length) {\n <mat-form-field>\n <mat-label>{{'Guide'|translate}}</mat-label>\n <mat-select formControlName=\"guide\">\n <mat-option>{{'None'|translate}}</mat-option>\n @for (g of guides; track g) {\n <mat-option [value]=\"g.name\">{{g.title |localizedString}}</mat-option>\n }\n </mat-select>\n </mat-form-field>\n }\n @if (cubes.length) {\n <mat-form-field>\n <mat-label>{{'Cube'|translate}}</mat-label>\n <mat-select formControlName=\"cubes\" multiple>\n @for (c of cubes; track c) {\n <mat-option [value]=\"c.name\">{{c.title |localizedString}}</mat-option>\n }\n </mat-select>\n <mat-hint>{{'FormCubeHelp'|translate}}</mat-hint>\n </mat-form-field>\n }\n <!--Rules-->\n <h2 class=\"mat-h2 row\">\n {{'Rules'|translate}}\n <span class=\"divider\"></span>\n <button mat-icon-button (click)=\"add(rules, newRule(), 'Rule', 'rule')\" [bizdocTooltip]=\"'Add'|translate\" type=\"button\"><mat-icon>add_circle_outline</mat-icon></button>\n </h2>\n <table formArrayName=\"rules\" class=\"mat-mdc-table\" cdkDropList (cdkDropListDropped)=\"drop($event, rules)\">\n @for (r of rules.controls; track r; let index = $index) {\n <tr class=\"mat-mdc-row\" [formGroup]=\"r\" cdkDrag>\n <td class=\"mat-mdc-cell\">\n <mat-icon cdkDragHandle>drag_indicator</mat-icon>\n </td>\n <td class=\"mat-mdc-cell flex\" width=\"99%\">\n {{r.controls.title.value}}\n </td>\n <td class=\"mat-mdc-cell\" style=\"white-space: pre;\">\n <button mat-icon-button (click)=\"edit(r, 'Rule', 'rule')\" [bizdocTooltip]=\"'Edit'|translate\" type=\"button\"><mat-icon>edit</mat-icon></button>\n <button mat-icon-button (click)=\"rules.removeAt(index)\" [bizdocTooltip]=\"'Remove'|translate\" type=\"button\"><mat-icon>delete</mat-icon></button>\n </td>\n </tr>\n }\n </table>\n </ng-container>\n </ng-template>\n <ng-template bizdocCustomContent=\"rule\" let-form=\"form\">\n <ng-container [formGroup]=\"form\">\n <div class=\"row\">\n <mat-form-field class=\"flex\">\n <mat-label>{{'Title'|translate}}</mat-label>\n <input matInput formControlName=\"title\" required />\n @if (form.controls.title.hasError('required')) {\n <mat-error [innerHTML]=\"'RequiredErr'|translate:('Title'|translate)\"></mat-error>\n }\n </mat-form-field>\n \n <mat-form-field class=\"flex\">\n <mat-label>{{'Name'|translate}}</mat-label>\n <input matInput formControlName=\"name\" required />\n @if (form.controls.name.hasError('required')) {\n <mat-error [innerHTML]=\"'RequiredErr'|translate:('Name'|translate)\"></mat-error>\n }\n </mat-form-field>\n </div>\n <bizdoc-designer-privileges [form]=\"form\"></bizdoc-designer-privileges>\n </ng-container>\n </ng-template>\n</bizdoc-designer-element>\n", dependencies: [{ kind: "directive", type: i1$2.DefaultValueAccessor, selector: "input:not([type=checkbox])[formControlName],textarea[formControlName],input:not([type=checkbox])[formControl],textarea[formControl],input:not([type=checkbox])[ngModel],textarea[ngModel],[ngDefaultControl]" }, { kind: "directive", type: i1$2.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i1$2.NgControlStatusGroup, selector: "[formGroupName],[formArrayName],[ngModelGroup],[formGroup],form:not([ngNoForm]),[ngForm]" }, { kind: "directive", type: i1$2.RequiredValidator, selector: ":not([type=checkbox])[required][formControlName],:not([type=checkbox])[required][formControl],:not([type=checkbox])[required][ngModel]", inputs: ["required"] }, { kind: "directive", type: i1$2.MaxLengthValidator, selector: "[maxlength][formControlName],[maxlength][formControl],[maxlength][ngModel]", inputs: ["maxlength"] }, { kind: "directive", type: i1$2.FormGroupDirective, selector: "[formGroup]", inputs: ["formGroup"], outputs: ["ngSubmit"], exportAs: ["ngForm"] }, { kind: "directive", type: i1$2.FormControlName, selector: "[formControlName]", inputs: ["formControlName", "disabled", "ngModel"], outputs: ["ngModelChange"] }, { kind: "directive", type: i1$2.FormArrayName, selector: "[formArrayName]", inputs: ["formArrayName"] }, { kind: "component", type: i7$4.SparklineComponent, selector: "ejs-sparkline", inputs: ["axisSettings", "border", "containerArea", "dataLabelSettings", "dataSource", "enablePersistence", "enableRtl", "endPointColor", "fill", "format", "height", "highPointColor", "lineWidth", "locale", "lowPointColor", "markerSettings", "negativePointColor", "opacity", "padding", "palette", "query", "rangeBandSettings", "rangePadding", "startPointColor", "theme", "tiePointColor", "tooltipSettings", "type", "useGroupingSeparator", "valueType", "width", "xName", "yName"], outputs: ["axisRendering", "dataLabelRendering", "load", "loaded", "markerRendering", "pointRegionMouseClick", "pointRegionMouseMove", "pointRendering", "resize", "seriesRendering", "sparklineMouseClick", "sparklineMouseMove", "tooltipInitialize"] }, { kind: "directive", type: i2$6.CdkDropList, selector: "[cdkDropList], cdk-drop-list", inputs: ["cdkDropListConnectedTo", "cdkDropListData", "cdkDropListOrientation", "id", "cdkDropListLockAxis", "cdkDropListDisabled", "cdkDropListSortingDisabled", "cdkDropListEnterPredicate", "cdkDropListSortPredicate", "cdkDropListAutoScrollDisabled", "cdkDropListAutoScrollStep"], outputs: ["cdkDropListDropped", "cdkDropListEntered", "cdkDropListExited", "cdkDropListSorted"], exportAs: ["cdkDropList"] }, { kind: "directive", type: i2$6.CdkDrag, selector: "[cdkDrag]", inputs: ["cdkDragData", "cdkDragLockAxis", "cdkDragRootElement", "cdkDragBoundary", "cdkDragStartDelay", "cdkDragFreeDragPosition", "cdkDragDisabled", "cdkDragConstrainPosition", "cdkDragPreviewClass", "cdkDragPreviewContainer"], outputs: ["cdkDragStarted", "cdkDragReleased", "cdkDragEnded", "cdkDragEntered", "cdkDragExited", "cdkDragDropped", "cdkDragMoved"], exportAs: ["cdkDrag"] }, { kind: "directive", type: i2$6.CdkDragHandle, selector: "[cdkDragHandle]", inputs: ["cdkDragHandleDisabled"] }, { kind: "component", type: i2$5.MatOption, selector: "mat-option", inputs: ["value", "id", "disabled"], outputs: ["onSelectionChange"], exportAs: ["matOption"] }, { kind: "component", type: i3$1.MatFormField, selector: "mat-form-field", inputs: ["hideRequiredMarker", "color", "floatLabel", "appearance", "subscriptSizing", "hintLabel"], exportAs: ["matFormField"] }, { kind: "directive", type: i3$1.MatLabel, selector: "mat-label" }, { kind: "directive", type: i3$1.MatHint, selector: "mat-hint", inputs: ["align", "id"] }, { kind: "directive", type: i3$1.MatError, selector: "mat-error, [matError]", inputs: ["id"] }, { kind: "component", type: i4$2.MatSelect, selector: "mat-select", inputs: ["aria-describedby", "panelClass", "disabled", "disableRipple", "tabIndex", "hideSingleSelectionIndicator", "placeholder", "required", "multiple", "disableOptionCentering", "compareWith", "value", "aria-label", "aria-labelledby", "errorStateMatcher", "typeaheadDebounceInterval", "sortComparator", "id", "panelWidth"], outputs: ["openedChange", "opened", "closed", "selectionChange", "valueChange"], exportAs: ["matSelect"] }, { kind: "component", type: i8.MatIconButton, selector: "button[mat-icon-button]", exportAs: ["matButton"] }, { kind: "directive", type: i3$3.MatInput, selector: "input[matInput], textarea[matInput], select[matNativeControl], input[matNativeControl], textarea[matNativeControl]", inputs: ["disabled", "id", "placeholder", "name", "required", "type", "errorStateMatcher", "aria-describedby", "value", "readonly"], exportAs: ["matInput"] }, { kind: "component", type: i10.MatIcon, selector: "mat-icon", inputs: ["color", "inline", "svgIcon", "fontSet", "fontIcon"], exportAs: ["matIcon"] }, { kind: "component", type: i10$1.MatMenu, selector: "mat-menu", inputs: ["backdropClass", "aria-label", "aria-labelledby", "aria-describedby", "xPosition", "yPosition", "overlapTrigger", "hasBackdrop", "class", "classList"], outputs: ["closed", "close"], exportAs: ["matMenu"] }, { kind: "component", type: i10$1.MatMenuItem, selector: "[mat-menu-item]", inputs: ["role", "disabled", "disableRipple"], exportAs: ["matMenuItem"] }, { kind: "directive", type: i10$1.MatMenuTrigger, selector: "[mat-menu-trigger-for], [matMenuTriggerFor]", inputs: ["mat-menu-trigger-for", "matMenuTriggerFor", "matMenuTriggerData", "matMenuTriggerRestoreFocus"], outputs: ["menuOpened", "onMenuOpen", "menuClosed", "onMenuClose"], exportAs: ["matMenuTrigger"] }, { kind: "directive", type: TooltipDirective, selector: "[bizdocTooltip]", inputs: ["bizdocTooltip", "bizdocTooltipTemplate", "bizdocTooltipContext", "bizdocTooltipPosition", "bizdocTooltipDuration", "bizdocTooltipDisabled"] }, { kind: "component", type: LocalizedStringComponent, selector: "bizdoc-localized-string", inputs: ["class", "floatLabel", "value", "placeholder", "required", "disabled", "maxlength"] }, { kind: "component", type: DesignerPrivilegesComponent, selector: "bizdoc-designer-privileges", inputs: ["form"] }, { kind: "directive", type: CustomContentDirective, selector: "[bizdocCustomContent]", inputs: ["bizdocCustomContent"] }, { kind: "directive", type: EditContentDirective, selector: "[bizdocEditContent]" }, { kind: "directive", type: WidgetContentDirective, selector: "[bizdocContent]" }, { kind: "component", type: DesignerItemComponent, selector: "bizdoc-designer-element", inputs: ["privileges", "icon", "form", "context"], outputs: ["save"] }, { kind: "pipe", type: LocalizedStringPipe, name: "localizedString" }, { kind: "pipe", type: L18nPipe, name: "l18n" }, { kind: "pipe", type: TranslatePipe, name: "translate" }] }); }
|
34429
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "17.2.3", type: FormDesignComponent, selector: "ng-component", usesInheritance: true, ngImport: i0, template: "<bizdoc-designer-element [form]=\"form\" [privileges]=\"true\" [icon]=\"true\" [context]=\"context\">\n <ng-template bizdocContent>\n @if (usage) {\n <ejs-sparkline width='250px' height='200px'\n type=\"Line\"\n [id]=\"model.name\"\n [fill]=\"primary\"\n [dataSource]=\"usage\"\n xName=\"date\"\n yName=\"count\"\n lineWidth=\"2\"\n valueType=\"DateTime\"\n [locale]=\"locale\"\n [markerSettings]=\"markerSettings\"\n [tooltipSettings]=\"tooltipSettings\"\n (tooltipInitialize)=\"tooltipInitialize($event)\"\n [enableRtl]=\"enableRtl\">\n </ejs-sparkline>\n }\n <div class=\"row\">\n <button mat-icon-button (click)=\"diagram()\" [bizdocTooltip]=\"'Workflow'|translate\" [disabled]=\"model.draft\"><mat-icon>schema</mat-icon></button>\n <span class=\"divider\"></span>\n <button mat-icon-button [matMenuTriggerFor]=\"options\" [disabled]=\"model.draft\"><mat-icon>more_vert</mat-icon></button>\n <mat-menu #options>\n <button mat-menu-item (click)=\"invite()\">{{'Invite'|l18n}}</button>\n </mat-menu>\n </div>\n </ng-template>\n <!--edit-->\n <ng-template bizdocEditContent>\n <ng-container [formGroup]=\"form\">\n <div class=\"row flex\" [formGroup]=\"format\">\n <mat-form-field>\n <mat-label>{{'Prefix'|translate}}</mat-label>\n <input matInput formControlName=\"prefix\" />\n </mat-form-field>\n \n <mat-form-field class=\"flex\">\n <mat-label>{{'Digits'|translate}}</mat-label>\n <input matInput formControlName=\"digits\" maxlength=\"2\" />\n </mat-form-field>\n \n <mat-form-field>\n <mat-label>{{'Suffix'|translate}}</mat-label>\n <input matInput formControlName=\"suffix\" />\n </mat-form-field>\n </div>\n <bizdoc-localized-string formControlName=\"group\" [placeholder]=\"'Group'|translate\"></bizdoc-localized-string>\n <bizdoc-localized-string formControlName=\"description\" [placeholder]=\"'Description'|translate\"></bizdoc-localized-string>\n @if (guides.length) {\n <mat-form-field>\n <mat-label>{{'Guide'|translate}}</mat-label>\n <mat-select formControlName=\"guide\">\n <mat-option>{{'None'|translate}}</mat-option>\n @for (g of guides; track g) {\n <mat-option [value]=\"g.name\">{{g.title |localizedString}}</mat-option>\n }\n </mat-select>\n </mat-form-field>\n }\n @if (cubes.length) {\n <mat-form-field>\n <mat-label>{{'Cube'|translate}}</mat-label>\n <mat-select formControlName=\"cubes\" multiple>\n @for (c of cubes; track c) {\n <mat-option [value]=\"c.name\">{{c.title |localizedString}}</mat-option>\n }\n </mat-select>\n <mat-hint>{{'FormCubeHelp'|translate}}</mat-hint>\n </mat-form-field>\n }\n <!--Rules-->\n <h2 class=\"mat-h2 row\">\n {{'Rules'|translate}}\n <span class=\"divider\"></span>\n <button mat-icon-button (click)=\"add(rules, newRule(), 'Rule', 'rule')\" [bizdocTooltip]=\"'Add'|translate\" type=\"button\"><mat-icon>add_circle_outline</mat-icon></button>\n </h2>\n <table formArrayName=\"rules\" class=\"mat-mdc-table\" cdkDropList (cdkDropListDropped)=\"drop($event, rules)\">\n @for (r of rules.controls; track r; let index = $index) {\n <tr class=\"mat-mdc-row\" [formGroup]=\"r\" cdkDrag>\n <td class=\"mat-mdc-cell\">\n <mat-icon cdkDragHandle>drag_indicator</mat-icon>\n </td>\n <td class=\"mat-mdc-cell flex\" width=\"99%\">\n {{r.controls.title.value}}\n </td>\n <td class=\"mat-mdc-cell\" style=\"white-space: pre;\">\n <button mat-icon-button (click)=\"edit(r, 'Rule', 'rule')\" [bizdocTooltip]=\"'Edit'|translate\" type=\"button\"><mat-icon>edit</mat-icon></button>\n <button mat-icon-button (click)=\"rules.removeAt(index)\" [bizdocTooltip]=\"'Remove'|translate\" type=\"button\"><mat-icon>delete</mat-icon></button>\n </td>\n </tr>\n }\n </table>\n </ng-container>\n </ng-template>\n <ng-template bizdocCustomContent=\"rule\" let-form=\"form\">\n <ng-container [formGroup]=\"form\">\n <div class=\"row\">\n <mat-form-field class=\"flex\">\n <mat-label>{{'Title'|translate}}</mat-label>\n <input matInput formControlName=\"title\" required />\n @if (form.controls.title.hasError('required')) {\n <mat-error [innerHTML]=\"'RequiredErr'|translate:('Title'|translate)\"></mat-error>\n }\n </mat-form-field>\n \n <mat-form-field class=\"flex\">\n <mat-label>{{'Name'|translate}}</mat-label>\n <input matInput formControlName=\"name\" required />\n @if (form.controls.name.hasError('required')) {\n <mat-error [innerHTML]=\"'RequiredErr'|translate:('Name'|translate)\"></mat-error>\n }\n </mat-form-field>\n </div>\n <bizdoc-designer-privileges [form]=\"form\"></bizdoc-designer-privileges>\n </ng-container>\n </ng-template>\n</bizdoc-designer-element>\n", dependencies: [{ kind: "directive", type: i1$2.DefaultValueAccessor, selector: "input:not([type=checkbox])[formControlName],textarea[formControlName],input:not([type=checkbox])[formControl],textarea[formControl],input:not([type=checkbox])[ngModel],textarea[ngModel],[ngDefaultControl]" }, { kind: "directive", type: i1$2.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i1$2.NgControlStatusGroup, selector: "[formGroupName],[formArrayName],[ngModelGroup],[formGroup],form:not([ngNoForm]),[ngForm]" }, { kind: "directive", type: i1$2.RequiredValidator, selector: ":not([type=checkbox])[required][formControlName],:not([type=checkbox])[required][formControl],:not([type=checkbox])[required][ngModel]", inputs: ["required"] }, { kind: "directive", type: i1$2.MaxLengthValidator, selector: "[maxlength][formControlName],[maxlength][formControl],[maxlength][ngModel]", inputs: ["maxlength"] }, { kind: "directive", type: i1$2.FormGroupDirective, selector: "[formGroup]", inputs: ["formGroup"], outputs: ["ngSubmit"], exportAs: ["ngForm"] }, { kind: "directive", type: i1$2.FormControlName, selector: "[formControlName]", inputs: ["formControlName", "disabled", "ngModel"], outputs: ["ngModelChange"] }, { kind: "directive", type: i1$2.FormArrayName, selector: "[formArrayName]", inputs: ["formArrayName"] }, { kind: "component", type: i7$4.SparklineComponent, selector: "ejs-sparkline", inputs: ["axisSettings", "border", "containerArea", "dataLabelSettings", "dataSource", "enablePersistence", "enableRtl", "endPointColor", "fill", "format", "height", "highPointColor", "lineWidth", "locale", "lowPointColor", "markerSettings", "negativePointColor", "opacity", "padding", "palette", "query", "rangeBandSettings", "rangePadding", "startPointColor", "theme", "tiePointColor", "tooltipSettings", "type", "useGroupingSeparator", "valueType", "width", "xName", "yName"], outputs: ["axisRendering", "dataLabelRendering", "load", "loaded", "markerRendering", "pointRegionMouseClick", "pointRegionMouseMove", "pointRendering", "resize", "seriesRendering", "sparklineMouseClick", "sparklineMouseMove", "tooltipInitialize"] }, { kind: "directive", type: i2$6.CdkDropList, selector: "[cdkDropList], cdk-drop-list", inputs: ["cdkDropListConnectedTo", "cdkDropListData", "cdkDropListOrientation", "id", "cdkDropListLockAxis", "cdkDropListDisabled", "cdkDropListSortingDisabled", "cdkDropListEnterPredicate", "cdkDropListSortPredicate", "cdkDropListAutoScrollDisabled", "cdkDropListAutoScrollStep"], outputs: ["cdkDropListDropped", "cdkDropListEntered", "cdkDropListExited", "cdkDropListSorted"], exportAs: ["cdkDropList"] }, { kind: "directive", type: i2$6.CdkDrag, selector: "[cdkDrag]", inputs: ["cdkDragData", "cdkDragLockAxis", "cdkDragRootElement", "cdkDragBoundary", "cdkDragStartDelay", "cdkDragFreeDragPosition", "cdkDragDisabled", "cdkDragConstrainPosition", "cdkDragPreviewClass", "cdkDragPreviewContainer"], outputs: ["cdkDragStarted", "cdkDragReleased", "cdkDragEnded", "cdkDragEntered", "cdkDragExited", "cdkDragDropped", "cdkDragMoved"], exportAs: ["cdkDrag"] }, { kind: "directive", type: i2$6.CdkDragHandle, selector: "[cdkDragHandle]", inputs: ["cdkDragHandleDisabled"] }, { kind: "component", type: i2$5.MatOption, selector: "mat-option", inputs: ["value", "id", "disabled"], outputs: ["onSelectionChange"], exportAs: ["matOption"] }, { kind: "component", type: i3$1.MatFormField, selector: "mat-form-field", inputs: ["hideRequiredMarker", "color", "floatLabel", "appearance", "subscriptSizing", "hintLabel"], exportAs: ["matFormField"] }, { kind: "directive", type: i3$1.MatLabel, selector: "mat-label" }, { kind: "directive", type: i3$1.MatHint, selector: "mat-hint", inputs: ["align", "id"] }, { kind: "directive", type: i3$1.MatError, selector: "mat-error, [matError]", inputs: ["id"] }, { kind: "component", type: i4$2.MatSelect, selector: "mat-select", inputs: ["aria-describedby", "panelClass", "disabled", "disableRipple", "tabIndex", "hideSingleSelectionIndicator", "placeholder", "required", "multiple", "disableOptionCentering", "compareWith", "value", "aria-label", "aria-labelledby", "errorStateMatcher", "typeaheadDebounceInterval", "sortComparator", "id", "panelWidth"], outputs: ["openedChange", "opened", "closed", "selectionChange", "valueChange"], exportAs: ["matSelect"] }, { kind: "component", type: i8.MatIconButton, selector: "button[mat-icon-button]", exportAs: ["matButton"] }, { kind: "directive", type: i3$3.MatInput, selector: "input[matInput], textarea[matInput], select[matNativeControl], input[matNativeControl], textarea[matNativeControl]", inputs: ["disabled", "id", "placeholder", "name", "required", "type", "errorStateMatcher", "aria-describedby", "value", "readonly"], exportAs: ["matInput"] }, { kind: "component", type: i10.MatIcon, selector: "mat-icon", inputs: ["color", "inline", "svgIcon", "fontSet", "fontIcon"], exportAs: ["matIcon"] }, { kind: "component", type: i10$1.MatMenu, selector: "mat-menu", inputs: ["backdropClass", "aria-label", "aria-labelledby", "aria-describedby", "xPosition", "yPosition", "overlapTrigger", "hasBackdrop", "class", "classList"], outputs: ["closed", "close"], exportAs: ["matMenu"] }, { kind: "component", type: i10$1.MatMenuItem, selector: "[mat-menu-item]", inputs: ["role", "disabled", "disableRipple"], exportAs: ["matMenuItem"] }, { kind: "directive", type: i10$1.MatMenuTrigger, selector: "[mat-menu-trigger-for], [matMenuTriggerFor]", inputs: ["mat-menu-trigger-for", "matMenuTriggerFor", "matMenuTriggerData", "matMenuTriggerRestoreFocus"], outputs: ["menuOpened", "onMenuOpen", "menuClosed", "onMenuClose"], exportAs: ["matMenuTrigger"] }, { kind: "directive", type: TooltipDirective, selector: "[bizdocTooltip]", inputs: ["bizdocTooltip", "bizdocTooltipTemplate", "bizdocTooltipContext", "bizdocTooltipPosition", "bizdocTooltipDuration", "bizdocTooltipDisabled"] }, { kind: "component", type: LocalizedStringComponent, selector: "bizdoc-localized-string", inputs: ["class", "floatLabel", "value", "placeholder", "required", "disabled", "maxlength"] }, { kind: "component", type: DesignerPrivilegesComponent, selector: "bizdoc-designer-privileges", inputs: ["form"] }, { kind: "directive", type: CustomContentDirective, selector: "[bizdocCustomContent]", inputs: ["bizdocCustomContent"] }, { kind: "directive", type: EditContentDirective, selector: "[bizdocEditContent]" }, { kind: "directive", type: WidgetContentDirective, selector: "[bizdocContent]" }, { kind: "component", type: DesignerItemComponent, selector: "bizdoc-designer-element", inputs: ["privileges", "icon", "form", "context"], outputs: ["save", "continue"] }, { kind: "pipe", type: LocalizedStringPipe, name: "localizedString" }, { kind: "pipe", type: L18nPipe, name: "l18n" }, { kind: "pipe", type: TranslatePipe, name: "translate" }] }); }
|
34404
34430
|
}
|
34405
34431
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.2.3", ngImport: i0, type: FormDesignComponent, decorators: [{
|
34406
34432
|
type: Component,
|
@@ -34441,7 +34467,7 @@ class GuideDesignComponent extends DesignerTypeElementComponent {
|
|
34441
34467
|
});
|
34442
34468
|
}
|
34443
34469
|
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.2.3", ngImport: i0, type: GuideDesignComponent, deps: null, target: i0.ɵɵFactoryTarget.Component }); }
|
34444
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "17.2.3", type: GuideDesignComponent, selector: "ng-component", usesInheritance: true, ngImport: i0, template: "<bizdoc-designer-element [form]=\"form\" [privileges]=\"true\"\n [context]=\"context\">\n <ng-template bizdocEditContent>\n <ng-container [formGroup]=\"form\">\n <h2 class=\"mat-h2 row\">\n {{'Steps'|translate}}\n <span class=\"divider\"></span>\n <button mat-icon-button (click)=\"add(steps, newStep(), 'Step', stepform)\" [bizdocTooltip]=\"'Add'|translate\" type=\"button\"><mat-icon>add_circle_outline</mat-icon></button>\n </h2>\n <table formArrayName=\"steps\" class=\"mat-mdc-table\" cdkDropList (cdkDropListDropped)=\"drop($event, steps)\">\n @for (s of steps.controls; track s; let index = $index) {\n <tr class=\"mat-mdc-row\" [formGroup]=\"s\" cdkDrag>\n <td class=\"mat-mdc-cell\">\n <mat-icon cdkDragHandle>drag_indicator</mat-icon>\n </td>\n <td class=\"mat-mdc-cell\" width=\"99%\">\n {{s.controls.title.value || s.controls.content.value }}\n </td>\n <td class=\"mat-mdc-cell nowrap\">\n <button mat-icon-button (click)=\"edit(s, 'Step', 'step')\" [bizdocTooltip]=\"'Edit'|translate\" type=\"button\"><mat-icon>edit</mat-icon></button>\n <button mat-icon-button (click)=\"steps.removeAt(index)\" [bizdocTooltip]=\"'Remove'|translate\" type=\"button\"><mat-icon>delete</mat-icon></button>\n </td>\n </tr>\n }\n </table>\n </ng-container>\n </ng-template>\n <ng-template bizdocCustomContent=\"step\" let-form=\"form\">\n <ng-container [formGroup]=\"form\">\n <mat-form-field class=\"flex\">\n <mat-label>{{'Title'|translate}}</mat-label>\n <input matInput formControlName=\"title\" />\n </mat-form-field>\n <mat-form-field class=\"flex\">\n <mat-label>{{'Content'|translate}}</mat-label>\n <input matInput formControlName=\"content\" required />\n @if (form.controls.content.hasError('required')) {\n <mat-error [innerHTML]=\"'RequiredErr'|translate:('Content'|translate)\"></mat-error>\n }\n </mat-form-field>\n <mat-form-field class=\"flex\">\n <mat-label>{{'Selector'|translate}}</mat-label>\n <input matInput formControlName=\"selector\" />\n </mat-form-field>\n <mat-form-field class=\"flex\">\n <mat-label>{{'Position'|translate}}</mat-label>\n <mat-select formControlName=\"position\">\n <mat-option value=\"Above\">{{'Above'|translate}}</mat-option>\n <mat-option value=\"Start\">{{'Start'|translate}}</mat-option>\n <mat-option value=\"End\">{{'End'|translate}}</mat-option>\n <mat-option value=\"Below\">{{'Below'|translate}}</mat-option>\n </mat-select>\n </mat-form-field>\n <mat-checkbox formControlName=\"execute\">{{'Execute'|translate}}</mat-checkbox>\n <!--privileges-->\n <bizdoc-designer-privileges [form]=\"form.controls.privileges\"></bizdoc-designer-privileges>\n </ng-container>\n </ng-template>\n</bizdoc-designer-element>\n", dependencies: [{ kind: "directive", type: i1$2.DefaultValueAccessor, selector: "input:not([type=checkbox])[formControlName],textarea[formControlName],input:not([type=checkbox])[formControl],textarea[formControl],input:not([type=checkbox])[ngModel],textarea[ngModel],[ngDefaultControl]" }, { kind: "directive", type: i1$2.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i1$2.NgControlStatusGroup, selector: "[formGroupName],[formArrayName],[ngModelGroup],[formGroup],form:not([ngNoForm]),[ngForm]" }, { kind: "directive", type: i1$2.RequiredValidator, selector: ":not([type=checkbox])[required][formControlName],:not([type=checkbox])[required][formControl],:not([type=checkbox])[required][ngModel]", inputs: ["required"] }, { kind: "directive", type: i1$2.FormGroupDirective, selector: "[formGroup]", inputs: ["formGroup"], outputs: ["ngSubmit"], exportAs: ["ngForm"] }, { kind: "directive", type: i1$2.FormControlName, selector: "[formControlName]", inputs: ["formControlName", "disabled", "ngModel"], outputs: ["ngModelChange"] }, { kind: "directive", type: i1$2.FormArrayName, selector: "[formArrayName]", inputs: ["formArrayName"] }, { kind: "directive", type: i2$6.CdkDropList, selector: "[cdkDropList], cdk-drop-list", inputs: ["cdkDropListConnectedTo", "cdkDropListData", "cdkDropListOrientation", "id", "cdkDropListLockAxis", "cdkDropListDisabled", "cdkDropListSortingDisabled", "cdkDropListEnterPredicate", "cdkDropListSortPredicate", "cdkDropListAutoScrollDisabled", "cdkDropListAutoScrollStep"], outputs: ["cdkDropListDropped", "cdkDropListEntered", "cdkDropListExited", "cdkDropListSorted"], exportAs: ["cdkDropList"] }, { kind: "directive", type: i2$6.CdkDrag, selector: "[cdkDrag]", inputs: ["cdkDragData", "cdkDragLockAxis", "cdkDragRootElement", "cdkDragBoundary", "cdkDragStartDelay", "cdkDragFreeDragPosition", "cdkDragDisabled", "cdkDragConstrainPosition", "cdkDragPreviewClass", "cdkDragPreviewContainer"], outputs: ["cdkDragStarted", "cdkDragReleased", "cdkDragEnded", "cdkDragEntered", "cdkDragExited", "cdkDragDropped", "cdkDragMoved"], exportAs: ["cdkDrag"] }, { kind: "directive", type: i2$6.CdkDragHandle, selector: "[cdkDragHandle]", inputs: ["cdkDragHandleDisabled"] }, { kind: "component", type: i2$5.MatOption, selector: "mat-option", inputs: ["value", "id", "disabled"], outputs: ["onSelectionChange"], exportAs: ["matOption"] }, { kind: "component", type: i3$1.MatFormField, selector: "mat-form-field", inputs: ["hideRequiredMarker", "color", "floatLabel", "appearance", "subscriptSizing", "hintLabel"], exportAs: ["matFormField"] }, { kind: "directive", type: i3$1.MatLabel, selector: "mat-label" }, { kind: "directive", type: i3$1.MatError, selector: "mat-error, [matError]", inputs: ["id"] }, { kind: "component", type: i4$2.MatSelect, selector: "mat-select", inputs: ["aria-describedby", "panelClass", "disabled", "disableRipple", "tabIndex", "hideSingleSelectionIndicator", "placeholder", "required", "multiple", "disableOptionCentering", "compareWith", "value", "aria-label", "aria-labelledby", "errorStateMatcher", "typeaheadDebounceInterval", "sortComparator", "id", "panelWidth"], outputs: ["openedChange", "opened", "closed", "selectionChange", "valueChange"], exportAs: ["matSelect"] }, { kind: "component", type: i8.MatIconButton, selector: "button[mat-icon-button]", exportAs: ["matButton"] }, { kind: "component", type: i2$7.MatCheckbox, selector: "mat-checkbox", inputs: ["aria-label", "aria-labelledby", "aria-describedby", "id", "required", "labelPosition", "name", "value", "disableRipple", "tabIndex", "color", "checked", "disabled", "indeterminate"], outputs: ["change", "indeterminateChange"], exportAs: ["matCheckbox"] }, { kind: "directive", type: i3$3.MatInput, selector: "input[matInput], textarea[matInput], select[matNativeControl], input[matNativeControl], textarea[matNativeControl]", inputs: ["disabled", "id", "placeholder", "name", "required", "type", "errorStateMatcher", "aria-describedby", "value", "readonly"], exportAs: ["matInput"] }, { kind: "component", type: i10.MatIcon, selector: "mat-icon", inputs: ["color", "inline", "svgIcon", "fontSet", "fontIcon"], exportAs: ["matIcon"] }, { kind: "directive", type: TooltipDirective, selector: "[bizdocTooltip]", inputs: ["bizdocTooltip", "bizdocTooltipTemplate", "bizdocTooltipContext", "bizdocTooltipPosition", "bizdocTooltipDuration", "bizdocTooltipDisabled"] }, { kind: "component", type: DesignerPrivilegesComponent, selector: "bizdoc-designer-privileges", inputs: ["form"] }, { kind: "directive", type: CustomContentDirective, selector: "[bizdocCustomContent]", inputs: ["bizdocCustomContent"] }, { kind: "directive", type: EditContentDirective, selector: "[bizdocEditContent]" }, { kind: "component", type: DesignerItemComponent, selector: "bizdoc-designer-element", inputs: ["privileges", "icon", "form", "context"], outputs: ["save"] }, { kind: "pipe", type: TranslatePipe, name: "translate" }] }); }
|
34470
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "17.2.3", type: GuideDesignComponent, selector: "ng-component", usesInheritance: true, ngImport: i0, template: "<bizdoc-designer-element [form]=\"form\" [privileges]=\"true\"\n [context]=\"context\">\n <ng-template bizdocEditContent>\n <ng-container [formGroup]=\"form\">\n <h2 class=\"mat-h2 row\">\n {{'Steps'|translate}}\n <span class=\"divider\"></span>\n <button mat-icon-button (click)=\"add(steps, newStep(), 'Step', stepform)\" [bizdocTooltip]=\"'Add'|translate\" type=\"button\"><mat-icon>add_circle_outline</mat-icon></button>\n </h2>\n <table formArrayName=\"steps\" class=\"mat-mdc-table\" cdkDropList (cdkDropListDropped)=\"drop($event, steps)\">\n @for (s of steps.controls; track s; let index = $index) {\n <tr class=\"mat-mdc-row\" [formGroup]=\"s\" cdkDrag>\n <td class=\"mat-mdc-cell\">\n <mat-icon cdkDragHandle>drag_indicator</mat-icon>\n </td>\n <td class=\"mat-mdc-cell\" width=\"99%\">\n {{s.controls.title.value || s.controls.content.value }}\n </td>\n <td class=\"mat-mdc-cell nowrap\">\n <button mat-icon-button (click)=\"edit(s, 'Step', 'step')\" [bizdocTooltip]=\"'Edit'|translate\" type=\"button\"><mat-icon>edit</mat-icon></button>\n <button mat-icon-button (click)=\"steps.removeAt(index)\" [bizdocTooltip]=\"'Remove'|translate\" type=\"button\"><mat-icon>delete</mat-icon></button>\n </td>\n </tr>\n }\n </table>\n </ng-container>\n </ng-template>\n <ng-template bizdocCustomContent=\"step\" let-form=\"form\">\n <ng-container [formGroup]=\"form\">\n <mat-form-field class=\"flex\">\n <mat-label>{{'Title'|translate}}</mat-label>\n <input matInput formControlName=\"title\" />\n </mat-form-field>\n <mat-form-field class=\"flex\">\n <mat-label>{{'Content'|translate}}</mat-label>\n <input matInput formControlName=\"content\" required />\n @if (form.controls.content.hasError('required')) {\n <mat-error [innerHTML]=\"'RequiredErr'|translate:('Content'|translate)\"></mat-error>\n }\n </mat-form-field>\n <mat-form-field class=\"flex\">\n <mat-label>{{'Selector'|translate}}</mat-label>\n <input matInput formControlName=\"selector\" />\n </mat-form-field>\n <mat-form-field class=\"flex\">\n <mat-label>{{'Position'|translate}}</mat-label>\n <mat-select formControlName=\"position\">\n <mat-option value=\"Above\">{{'Above'|translate}}</mat-option>\n <mat-option value=\"Start\">{{'Start'|translate}}</mat-option>\n <mat-option value=\"End\">{{'End'|translate}}</mat-option>\n <mat-option value=\"Below\">{{'Below'|translate}}</mat-option>\n </mat-select>\n </mat-form-field>\n <mat-checkbox formControlName=\"execute\">{{'Execute'|translate}}</mat-checkbox>\n <!--privileges-->\n <bizdoc-designer-privileges [form]=\"form.controls.privileges\"></bizdoc-designer-privileges>\n </ng-container>\n </ng-template>\n</bizdoc-designer-element>\n", dependencies: [{ kind: "directive", type: i1$2.DefaultValueAccessor, selector: "input:not([type=checkbox])[formControlName],textarea[formControlName],input:not([type=checkbox])[formControl],textarea[formControl],input:not([type=checkbox])[ngModel],textarea[ngModel],[ngDefaultControl]" }, { kind: "directive", type: i1$2.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i1$2.NgControlStatusGroup, selector: "[formGroupName],[formArrayName],[ngModelGroup],[formGroup],form:not([ngNoForm]),[ngForm]" }, { kind: "directive", type: i1$2.RequiredValidator, selector: ":not([type=checkbox])[required][formControlName],:not([type=checkbox])[required][formControl],:not([type=checkbox])[required][ngModel]", inputs: ["required"] }, { kind: "directive", type: i1$2.FormGroupDirective, selector: "[formGroup]", inputs: ["formGroup"], outputs: ["ngSubmit"], exportAs: ["ngForm"] }, { kind: "directive", type: i1$2.FormControlName, selector: "[formControlName]", inputs: ["formControlName", "disabled", "ngModel"], outputs: ["ngModelChange"] }, { kind: "directive", type: i1$2.FormArrayName, selector: "[formArrayName]", inputs: ["formArrayName"] }, { kind: "directive", type: i2$6.CdkDropList, selector: "[cdkDropList], cdk-drop-list", inputs: ["cdkDropListConnectedTo", "cdkDropListData", "cdkDropListOrientation", "id", "cdkDropListLockAxis", "cdkDropListDisabled", "cdkDropListSortingDisabled", "cdkDropListEnterPredicate", "cdkDropListSortPredicate", "cdkDropListAutoScrollDisabled", "cdkDropListAutoScrollStep"], outputs: ["cdkDropListDropped", "cdkDropListEntered", "cdkDropListExited", "cdkDropListSorted"], exportAs: ["cdkDropList"] }, { kind: "directive", type: i2$6.CdkDrag, selector: "[cdkDrag]", inputs: ["cdkDragData", "cdkDragLockAxis", "cdkDragRootElement", "cdkDragBoundary", "cdkDragStartDelay", "cdkDragFreeDragPosition", "cdkDragDisabled", "cdkDragConstrainPosition", "cdkDragPreviewClass", "cdkDragPreviewContainer"], outputs: ["cdkDragStarted", "cdkDragReleased", "cdkDragEnded", "cdkDragEntered", "cdkDragExited", "cdkDragDropped", "cdkDragMoved"], exportAs: ["cdkDrag"] }, { kind: "directive", type: i2$6.CdkDragHandle, selector: "[cdkDragHandle]", inputs: ["cdkDragHandleDisabled"] }, { kind: "component", type: i2$5.MatOption, selector: "mat-option", inputs: ["value", "id", "disabled"], outputs: ["onSelectionChange"], exportAs: ["matOption"] }, { kind: "component", type: i3$1.MatFormField, selector: "mat-form-field", inputs: ["hideRequiredMarker", "color", "floatLabel", "appearance", "subscriptSizing", "hintLabel"], exportAs: ["matFormField"] }, { kind: "directive", type: i3$1.MatLabel, selector: "mat-label" }, { kind: "directive", type: i3$1.MatError, selector: "mat-error, [matError]", inputs: ["id"] }, { kind: "component", type: i4$2.MatSelect, selector: "mat-select", inputs: ["aria-describedby", "panelClass", "disabled", "disableRipple", "tabIndex", "hideSingleSelectionIndicator", "placeholder", "required", "multiple", "disableOptionCentering", "compareWith", "value", "aria-label", "aria-labelledby", "errorStateMatcher", "typeaheadDebounceInterval", "sortComparator", "id", "panelWidth"], outputs: ["openedChange", "opened", "closed", "selectionChange", "valueChange"], exportAs: ["matSelect"] }, { kind: "component", type: i8.MatIconButton, selector: "button[mat-icon-button]", exportAs: ["matButton"] }, { kind: "component", type: i2$7.MatCheckbox, selector: "mat-checkbox", inputs: ["aria-label", "aria-labelledby", "aria-describedby", "id", "required", "labelPosition", "name", "value", "disableRipple", "tabIndex", "color", "checked", "disabled", "indeterminate"], outputs: ["change", "indeterminateChange"], exportAs: ["matCheckbox"] }, { kind: "directive", type: i3$3.MatInput, selector: "input[matInput], textarea[matInput], select[matNativeControl], input[matNativeControl], textarea[matNativeControl]", inputs: ["disabled", "id", "placeholder", "name", "required", "type", "errorStateMatcher", "aria-describedby", "value", "readonly"], exportAs: ["matInput"] }, { kind: "component", type: i10.MatIcon, selector: "mat-icon", inputs: ["color", "inline", "svgIcon", "fontSet", "fontIcon"], exportAs: ["matIcon"] }, { kind: "directive", type: TooltipDirective, selector: "[bizdocTooltip]", inputs: ["bizdocTooltip", "bizdocTooltipTemplate", "bizdocTooltipContext", "bizdocTooltipPosition", "bizdocTooltipDuration", "bizdocTooltipDisabled"] }, { kind: "component", type: DesignerPrivilegesComponent, selector: "bizdoc-designer-privileges", inputs: ["form"] }, { kind: "directive", type: CustomContentDirective, selector: "[bizdocCustomContent]", inputs: ["bizdocCustomContent"] }, { kind: "directive", type: EditContentDirective, selector: "[bizdocEditContent]" }, { kind: "component", type: DesignerItemComponent, selector: "bizdoc-designer-element", inputs: ["privileges", "icon", "form", "context"], outputs: ["save", "continue"] }, { kind: "pipe", type: TranslatePipe, name: "translate" }] }); }
|
34445
34471
|
}
|
34446
34472
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.2.3", ngImport: i0, type: GuideDesignComponent, decorators: [{
|
34447
34473
|
type: Component,
|
@@ -34454,7 +34480,7 @@ class NodeDesignerComponent extends DesignerTypeElementComponent {
|
|
34454
34480
|
this.form = this._fb.group({});
|
34455
34481
|
}
|
34456
34482
|
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.2.3", ngImport: i0, type: NodeDesignerComponent, deps: null, target: i0.ɵɵFactoryTarget.Component }); }
|
34457
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.2.3", type: NodeDesignerComponent, selector: "bizdoc-node-designer", usesInheritance: true, ngImport: i0, template: "<bizdoc-designer-element [form]=\"form\">\r\n <ng-template bizdocEditContent>\r\n <ng-container [formGroup]=\"form\">\r\n </ng-container>\r\n </ng-template>\r\n</bizdoc-designer-element>\r\n", dependencies: [{ kind: "directive", type: i1$2.NgControlStatusGroup, selector: "[formGroupName],[formArrayName],[ngModelGroup],[formGroup],form:not([ngNoForm]),[ngForm]" }, { kind: "directive", type: i1$2.FormGroupDirective, selector: "[formGroup]", inputs: ["formGroup"], outputs: ["ngSubmit"], exportAs: ["ngForm"] }, { kind: "directive", type: EditContentDirective, selector: "[bizdocEditContent]" }, { kind: "component", type: DesignerItemComponent, selector: "bizdoc-designer-element", inputs: ["privileges", "icon", "form", "context"], outputs: ["save"] }] }); }
|
34483
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.2.3", type: NodeDesignerComponent, selector: "bizdoc-node-designer", usesInheritance: true, ngImport: i0, template: "<bizdoc-designer-element [form]=\"form\">\r\n <ng-template bizdocEditContent>\r\n <ng-container [formGroup]=\"form\">\r\n </ng-container>\r\n </ng-template>\r\n</bizdoc-designer-element>\r\n", dependencies: [{ kind: "directive", type: i1$2.NgControlStatusGroup, selector: "[formGroupName],[formArrayName],[ngModelGroup],[formGroup],form:not([ngNoForm]),[ngForm]" }, { kind: "directive", type: i1$2.FormGroupDirective, selector: "[formGroup]", inputs: ["formGroup"], outputs: ["ngSubmit"], exportAs: ["ngForm"] }, { kind: "directive", type: EditContentDirective, selector: "[bizdocEditContent]" }, { kind: "component", type: DesignerItemComponent, selector: "bizdoc-designer-element", inputs: ["privileges", "icon", "form", "context"], outputs: ["save", "continue"] }] }); }
|
34458
34484
|
}
|
34459
34485
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.2.3", ngImport: i0, type: NodeDesignerComponent, decorators: [{
|
34460
34486
|
type: Component,
|
@@ -34467,7 +34493,7 @@ class PolicyDesignComponent extends DesignerTypeElementComponent {
|
|
34467
34493
|
this.form = this._fb.group({});
|
34468
34494
|
}
|
34469
34495
|
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.2.3", ngImport: i0, type: PolicyDesignComponent, deps: null, target: i0.ɵɵFactoryTarget.Component }); }
|
34470
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.2.3", type: PolicyDesignComponent, selector: "bizdoc-policy-designer", usesInheritance: true, ngImport: i0, template: "<bizdoc-designer-element [form]=\"form\">\r\n <ng-template bizdocEditContent>\r\n <ng-container [formGroup]=\"form\">\r\n </ng-container>\r\n </ng-template>\r\n</bizdoc-designer-element>\r\n", dependencies: [{ kind: "directive", type: i1$2.NgControlStatusGroup, selector: "[formGroupName],[formArrayName],[ngModelGroup],[formGroup],form:not([ngNoForm]),[ngForm]" }, { kind: "directive", type: i1$2.FormGroupDirective, selector: "[formGroup]", inputs: ["formGroup"], outputs: ["ngSubmit"], exportAs: ["ngForm"] }, { kind: "directive", type: EditContentDirective, selector: "[bizdocEditContent]" }, { kind: "component", type: DesignerItemComponent, selector: "bizdoc-designer-element", inputs: ["privileges", "icon", "form", "context"], outputs: ["save"] }] }); }
|
34496
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.2.3", type: PolicyDesignComponent, selector: "bizdoc-policy-designer", usesInheritance: true, ngImport: i0, template: "<bizdoc-designer-element [form]=\"form\">\r\n <ng-template bizdocEditContent>\r\n <ng-container [formGroup]=\"form\">\r\n </ng-container>\r\n </ng-template>\r\n</bizdoc-designer-element>\r\n", dependencies: [{ kind: "directive", type: i1$2.NgControlStatusGroup, selector: "[formGroupName],[formArrayName],[ngModelGroup],[formGroup],form:not([ngNoForm]),[ngForm]" }, { kind: "directive", type: i1$2.FormGroupDirective, selector: "[formGroup]", inputs: ["formGroup"], outputs: ["ngSubmit"], exportAs: ["ngForm"] }, { kind: "directive", type: EditContentDirective, selector: "[bizdocEditContent]" }, { kind: "component", type: DesignerItemComponent, selector: "bizdoc-designer-element", inputs: ["privileges", "icon", "form", "context"], outputs: ["save", "continue"] }] }); }
|
34471
34497
|
}
|
34472
34498
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.2.3", ngImport: i0, type: PolicyDesignComponent, decorators: [{
|
34473
34499
|
type: Component,
|
@@ -34487,7 +34513,7 @@ class ReportDesignerComponent extends DesignerTypeElementComponent {
|
|
34487
34513
|
super.ngOnInit();
|
34488
34514
|
}
|
34489
34515
|
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.2.3", ngImport: i0, type: ReportDesignerComponent, deps: null, target: i0.ɵɵFactoryTarget.Component }); }
|
34490
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "17.2.3", type: ReportDesignerComponent, selector: "ng-component", usesInheritance: true, ngImport: i0, template: "<bizdoc-designer-element [form]=\"form\" [privileges]=\"true\" [icon]=\"true\">\n <ng-template bizdocEditContent>\n <ng-container [formGroup]=\"form\">\n <mat-form-field>\n <mat-label>{{'Guide'|translate}}</mat-label>\n <mat-select formControlName=\"guide\">\n <mat-option>{{'None'|translate}}</mat-option>\n @for (g of guides; track g) {\n <mat-option [value]=\"g.name\">{{g.title |localizedString}}</mat-option>\n }\n </mat-select>\n </mat-form-field>\n </ng-container>\n </ng-template>\n</bizdoc-designer-element>\n", dependencies: [{ kind: "directive", type: i1$2.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i1$2.NgControlStatusGroup, selector: "[formGroupName],[formArrayName],[ngModelGroup],[formGroup],form:not([ngNoForm]),[ngForm]" }, { kind: "directive", type: i1$2.FormGroupDirective, selector: "[formGroup]", inputs: ["formGroup"], outputs: ["ngSubmit"], exportAs: ["ngForm"] }, { kind: "directive", type: i1$2.FormControlName, selector: "[formControlName]", inputs: ["formControlName", "disabled", "ngModel"], outputs: ["ngModelChange"] }, { kind: "component", type: i2$5.MatOption, selector: "mat-option", inputs: ["value", "id", "disabled"], outputs: ["onSelectionChange"], exportAs: ["matOption"] }, { kind: "component", type: i3$1.MatFormField, selector: "mat-form-field", inputs: ["hideRequiredMarker", "color", "floatLabel", "appearance", "subscriptSizing", "hintLabel"], exportAs: ["matFormField"] }, { kind: "directive", type: i3$1.MatLabel, selector: "mat-label" }, { kind: "component", type: i4$2.MatSelect, selector: "mat-select", inputs: ["aria-describedby", "panelClass", "disabled", "disableRipple", "tabIndex", "hideSingleSelectionIndicator", "placeholder", "required", "multiple", "disableOptionCentering", "compareWith", "value", "aria-label", "aria-labelledby", "errorStateMatcher", "typeaheadDebounceInterval", "sortComparator", "id", "panelWidth"], outputs: ["openedChange", "opened", "closed", "selectionChange", "valueChange"], exportAs: ["matSelect"] }, { kind: "directive", type: EditContentDirective, selector: "[bizdocEditContent]" }, { kind: "component", type: DesignerItemComponent, selector: "bizdoc-designer-element", inputs: ["privileges", "icon", "form", "context"], outputs: ["save"] }, { kind: "pipe", type: LocalizedStringPipe, name: "localizedString" }, { kind: "pipe", type: TranslatePipe, name: "translate" }] }); }
|
34516
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "17.2.3", type: ReportDesignerComponent, selector: "ng-component", usesInheritance: true, ngImport: i0, template: "<bizdoc-designer-element [form]=\"form\" [privileges]=\"true\" [icon]=\"true\">\n <ng-template bizdocEditContent>\n <ng-container [formGroup]=\"form\">\n <mat-form-field>\n <mat-label>{{'Guide'|translate}}</mat-label>\n <mat-select formControlName=\"guide\">\n <mat-option>{{'None'|translate}}</mat-option>\n @for (g of guides; track g) {\n <mat-option [value]=\"g.name\">{{g.title |localizedString}}</mat-option>\n }\n </mat-select>\n </mat-form-field>\n </ng-container>\n </ng-template>\n</bizdoc-designer-element>\n", dependencies: [{ kind: "directive", type: i1$2.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i1$2.NgControlStatusGroup, selector: "[formGroupName],[formArrayName],[ngModelGroup],[formGroup],form:not([ngNoForm]),[ngForm]" }, { kind: "directive", type: i1$2.FormGroupDirective, selector: "[formGroup]", inputs: ["formGroup"], outputs: ["ngSubmit"], exportAs: ["ngForm"] }, { kind: "directive", type: i1$2.FormControlName, selector: "[formControlName]", inputs: ["formControlName", "disabled", "ngModel"], outputs: ["ngModelChange"] }, { kind: "component", type: i2$5.MatOption, selector: "mat-option", inputs: ["value", "id", "disabled"], outputs: ["onSelectionChange"], exportAs: ["matOption"] }, { kind: "component", type: i3$1.MatFormField, selector: "mat-form-field", inputs: ["hideRequiredMarker", "color", "floatLabel", "appearance", "subscriptSizing", "hintLabel"], exportAs: ["matFormField"] }, { kind: "directive", type: i3$1.MatLabel, selector: "mat-label" }, { kind: "component", type: i4$2.MatSelect, selector: "mat-select", inputs: ["aria-describedby", "panelClass", "disabled", "disableRipple", "tabIndex", "hideSingleSelectionIndicator", "placeholder", "required", "multiple", "disableOptionCentering", "compareWith", "value", "aria-label", "aria-labelledby", "errorStateMatcher", "typeaheadDebounceInterval", "sortComparator", "id", "panelWidth"], outputs: ["openedChange", "opened", "closed", "selectionChange", "valueChange"], exportAs: ["matSelect"] }, { kind: "directive", type: EditContentDirective, selector: "[bizdocEditContent]" }, { kind: "component", type: DesignerItemComponent, selector: "bizdoc-designer-element", inputs: ["privileges", "icon", "form", "context"], outputs: ["save", "continue"] }, { kind: "pipe", type: LocalizedStringPipe, name: "localizedString" }, { kind: "pipe", type: TranslatePipe, name: "translate" }] }); }
|
34491
34517
|
}
|
34492
34518
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.2.3", ngImport: i0, type: ReportDesignerComponent, decorators: [{
|
34493
34519
|
type: Component,
|
@@ -34516,7 +34542,7 @@ class RoleDesignComponent extends DesignerTypeElementComponent {
|
|
34516
34542
|
this.form.controls.dataType.enable({ emitEvent: false });
|
34517
34543
|
}
|
34518
34544
|
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.2.3", ngImport: i0, type: RoleDesignComponent, deps: null, target: i0.ɵɵFactoryTarget.Component }); }
|
34519
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "17.2.3", type: RoleDesignComponent, selector: "ng-component", usesInheritance: true, ngImport: i0, template: "<bizdoc-designer-element [form]=\"form\" [privileges]=\"true\">\n <ng-template bizdocEditContent>\n <ng-container [formGroup]=\"form\">\n <mat-form-field>\n <mat-label>{{'DataType'|translate}}</mat-label>\n <mat-select formControlName=\"dataType\" required>\n @for (t of datatypes['_'].elements|sort: 'title'; track t) {\n <mat-option [value]=\"t.name\">\n {{t.title}}\n </mat-option>\n }\n @for (g of datatypes|sort: 'title'; track g) {\n <mat-optgroup [label]=\"g.title\">\n @for (t of g.elements|sort: 'title'; track t) {\n <mat-option [value]=\"t.name\">\n {{t.title}}\n </mat-option>\n }\n </mat-optgroup>\n }\n </mat-select>\n @if (dataTypeDisabled) {\n <mat-hint><a (click)=\"enableTypeEdit()\">{{'ChangeValue'|translate}}</a></mat-hint>\n }\n </mat-form-field>\n <mat-form-field>\n <mat-label>{{'SequencePolicy'|translate}}</mat-label>\n <mat-select formControlName=\"sequencePolicy\">\n <mat-option value=\"Higher\">{{'Higher'|translate}}</mat-option>\n <mat-option value=\"Earlier\">{{'Earlier'|translate}}</mat-option>\n <mat-option value=\"Strict\">{{'Strict'|translate}}</mat-option>\n </mat-select>\n </mat-form-field>\n <mat-form-field>\n <mat-label>{{'Priority'|translate}}</mat-label>\n <input matInput type=\"number\" formControlName=\"priority\" />\n </mat-form-field>\n </ng-container>\n </ng-template>\n</bizdoc-designer-element>\n", dependencies: [{ kind: "directive", type: i1$2.DefaultValueAccessor, selector: "input:not([type=checkbox])[formControlName],textarea[formControlName],input:not([type=checkbox])[formControl],textarea[formControl],input:not([type=checkbox])[ngModel],textarea[ngModel],[ngDefaultControl]" }, { kind: "directive", type: i1$2.NumberValueAccessor, selector: "input[type=number][formControlName],input[type=number][formControl],input[type=number][ngModel]" }, { kind: "directive", type: i1$2.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i1$2.NgControlStatusGroup, selector: "[formGroupName],[formArrayName],[ngModelGroup],[formGroup],form:not([ngNoForm]),[ngForm]" }, { kind: "directive", type: i1$2.RequiredValidator, selector: ":not([type=checkbox])[required][formControlName],:not([type=checkbox])[required][formControl],:not([type=checkbox])[required][ngModel]", inputs: ["required"] }, { kind: "directive", type: i1$2.FormGroupDirective, selector: "[formGroup]", inputs: ["formGroup"], outputs: ["ngSubmit"], exportAs: ["ngForm"] }, { kind: "directive", type: i1$2.FormControlName, selector: "[formControlName]", inputs: ["formControlName", "disabled", "ngModel"], outputs: ["ngModelChange"] }, { kind: "component", type: i2$5.MatOption, selector: "mat-option", inputs: ["value", "id", "disabled"], outputs: ["onSelectionChange"], exportAs: ["matOption"] }, { kind: "component", type: i2$5.MatOptgroup, selector: "mat-optgroup", inputs: ["label", "disabled"], exportAs: ["matOptgroup"] }, { kind: "component", type: i3$1.MatFormField, selector: "mat-form-field", inputs: ["hideRequiredMarker", "color", "floatLabel", "appearance", "subscriptSizing", "hintLabel"], exportAs: ["matFormField"] }, { kind: "directive", type: i3$1.MatLabel, selector: "mat-label" }, { kind: "directive", type: i3$1.MatHint, selector: "mat-hint", inputs: ["align", "id"] }, { kind: "component", type: i4$2.MatSelect, selector: "mat-select", inputs: ["aria-describedby", "panelClass", "disabled", "disableRipple", "tabIndex", "hideSingleSelectionIndicator", "placeholder", "required", "multiple", "disableOptionCentering", "compareWith", "value", "aria-label", "aria-labelledby", "errorStateMatcher", "typeaheadDebounceInterval", "sortComparator", "id", "panelWidth"], outputs: ["openedChange", "opened", "closed", "selectionChange", "valueChange"], exportAs: ["matSelect"] }, { kind: "directive", type: i3$3.MatInput, selector: "input[matInput], textarea[matInput], select[matNativeControl], input[matNativeControl], textarea[matNativeControl]", inputs: ["disabled", "id", "placeholder", "name", "required", "type", "errorStateMatcher", "aria-describedby", "value", "readonly"], exportAs: ["matInput"] }, { kind: "directive", type: EditContentDirective, selector: "[bizdocEditContent]" }, { kind: "component", type: DesignerItemComponent, selector: "bizdoc-designer-element", inputs: ["privileges", "icon", "form", "context"], outputs: ["save"] }, { kind: "pipe", type: ArraySortPipe, name: "sort" }, { kind: "pipe", type: TranslatePipe, name: "translate" }] }); }
|
34545
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "17.2.3", type: RoleDesignComponent, selector: "ng-component", usesInheritance: true, ngImport: i0, template: "<bizdoc-designer-element [form]=\"form\" [privileges]=\"true\">\n <ng-template bizdocEditContent>\n <ng-container [formGroup]=\"form\">\n <mat-form-field>\n <mat-label>{{'DataType'|translate}}</mat-label>\n <mat-select formControlName=\"dataType\" required>\n @for (t of datatypes['_'].elements|sort: 'title'; track t) {\n <mat-option [value]=\"t.name\">\n {{t.title}}\n </mat-option>\n }\n @for (g of datatypes|sort: 'title'; track g) {\n <mat-optgroup [label]=\"g.title\">\n @for (t of g.elements|sort: 'title'; track t) {\n <mat-option [value]=\"t.name\">\n {{t.title}}\n </mat-option>\n }\n </mat-optgroup>\n }\n </mat-select>\n @if (dataTypeDisabled) {\n <mat-hint><a (click)=\"enableTypeEdit()\">{{'ChangeValue'|translate}}</a></mat-hint>\n }\n </mat-form-field>\n <mat-form-field>\n <mat-label>{{'SequencePolicy'|translate}}</mat-label>\n <mat-select formControlName=\"sequencePolicy\">\n <mat-option value=\"Higher\">{{'Higher'|translate}}</mat-option>\n <mat-option value=\"Earlier\">{{'Earlier'|translate}}</mat-option>\n <mat-option value=\"Strict\">{{'Strict'|translate}}</mat-option>\n </mat-select>\n </mat-form-field>\n <mat-form-field>\n <mat-label>{{'Priority'|translate}}</mat-label>\n <input matInput type=\"number\" formControlName=\"priority\" />\n </mat-form-field>\n </ng-container>\n </ng-template>\n</bizdoc-designer-element>\n", dependencies: [{ kind: "directive", type: i1$2.DefaultValueAccessor, selector: "input:not([type=checkbox])[formControlName],textarea[formControlName],input:not([type=checkbox])[formControl],textarea[formControl],input:not([type=checkbox])[ngModel],textarea[ngModel],[ngDefaultControl]" }, { kind: "directive", type: i1$2.NumberValueAccessor, selector: "input[type=number][formControlName],input[type=number][formControl],input[type=number][ngModel]" }, { kind: "directive", type: i1$2.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i1$2.NgControlStatusGroup, selector: "[formGroupName],[formArrayName],[ngModelGroup],[formGroup],form:not([ngNoForm]),[ngForm]" }, { kind: "directive", type: i1$2.RequiredValidator, selector: ":not([type=checkbox])[required][formControlName],:not([type=checkbox])[required][formControl],:not([type=checkbox])[required][ngModel]", inputs: ["required"] }, { kind: "directive", type: i1$2.FormGroupDirective, selector: "[formGroup]", inputs: ["formGroup"], outputs: ["ngSubmit"], exportAs: ["ngForm"] }, { kind: "directive", type: i1$2.FormControlName, selector: "[formControlName]", inputs: ["formControlName", "disabled", "ngModel"], outputs: ["ngModelChange"] }, { kind: "component", type: i2$5.MatOption, selector: "mat-option", inputs: ["value", "id", "disabled"], outputs: ["onSelectionChange"], exportAs: ["matOption"] }, { kind: "component", type: i2$5.MatOptgroup, selector: "mat-optgroup", inputs: ["label", "disabled"], exportAs: ["matOptgroup"] }, { kind: "component", type: i3$1.MatFormField, selector: "mat-form-field", inputs: ["hideRequiredMarker", "color", "floatLabel", "appearance", "subscriptSizing", "hintLabel"], exportAs: ["matFormField"] }, { kind: "directive", type: i3$1.MatLabel, selector: "mat-label" }, { kind: "directive", type: i3$1.MatHint, selector: "mat-hint", inputs: ["align", "id"] }, { kind: "component", type: i4$2.MatSelect, selector: "mat-select", inputs: ["aria-describedby", "panelClass", "disabled", "disableRipple", "tabIndex", "hideSingleSelectionIndicator", "placeholder", "required", "multiple", "disableOptionCentering", "compareWith", "value", "aria-label", "aria-labelledby", "errorStateMatcher", "typeaheadDebounceInterval", "sortComparator", "id", "panelWidth"], outputs: ["openedChange", "opened", "closed", "selectionChange", "valueChange"], exportAs: ["matSelect"] }, { kind: "directive", type: i3$3.MatInput, selector: "input[matInput], textarea[matInput], select[matNativeControl], input[matNativeControl], textarea[matNativeControl]", inputs: ["disabled", "id", "placeholder", "name", "required", "type", "errorStateMatcher", "aria-describedby", "value", "readonly"], exportAs: ["matInput"] }, { kind: "directive", type: EditContentDirective, selector: "[bizdocEditContent]" }, { kind: "component", type: DesignerItemComponent, selector: "bizdoc-designer-element", inputs: ["privileges", "icon", "form", "context"], outputs: ["save", "continue"] }, { kind: "pipe", type: ArraySortPipe, name: "sort" }, { kind: "pipe", type: TranslatePipe, name: "translate" }] }); }
|
34520
34546
|
}
|
34521
34547
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.2.3", ngImport: i0, type: RoleDesignComponent, decorators: [{
|
34522
34548
|
type: Component,
|
@@ -34529,7 +34555,7 @@ class RuleDesignComponent extends DesignerTypeElementComponent {
|
|
34529
34555
|
this.form = this._fb.group({});
|
34530
34556
|
}
|
34531
34557
|
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.2.3", ngImport: i0, type: RuleDesignComponent, deps: null, target: i0.ɵɵFactoryTarget.Component }); }
|
34532
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.2.3", type: RuleDesignComponent, selector: "bizdoc-rule-designer", usesInheritance: true, ngImport: i0, template: "<bizdoc-designer-element [form]=\"form\">\r\n <ng-template bizdocEditContent>\r\n <ng-container [formGroup]=\"form\">\r\n </ng-container>\r\n </ng-template>\r\n</bizdoc-designer-element>\r\n", dependencies: [{ kind: "directive", type: i1$2.NgControlStatusGroup, selector: "[formGroupName],[formArrayName],[ngModelGroup],[formGroup],form:not([ngNoForm]),[ngForm]" }, { kind: "directive", type: i1$2.FormGroupDirective, selector: "[formGroup]", inputs: ["formGroup"], outputs: ["ngSubmit"], exportAs: ["ngForm"] }, { kind: "directive", type: EditContentDirective, selector: "[bizdocEditContent]" }, { kind: "component", type: DesignerItemComponent, selector: "bizdoc-designer-element", inputs: ["privileges", "icon", "form", "context"], outputs: ["save"] }] }); }
|
34558
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.2.3", type: RuleDesignComponent, selector: "bizdoc-rule-designer", usesInheritance: true, ngImport: i0, template: "<bizdoc-designer-element [form]=\"form\">\r\n <ng-template bizdocEditContent>\r\n <ng-container [formGroup]=\"form\">\r\n </ng-container>\r\n </ng-template>\r\n</bizdoc-designer-element>\r\n", dependencies: [{ kind: "directive", type: i1$2.NgControlStatusGroup, selector: "[formGroupName],[formArrayName],[ngModelGroup],[formGroup],form:not([ngNoForm]),[ngForm]" }, { kind: "directive", type: i1$2.FormGroupDirective, selector: "[formGroup]", inputs: ["formGroup"], outputs: ["ngSubmit"], exportAs: ["ngForm"] }, { kind: "directive", type: EditContentDirective, selector: "[bizdocEditContent]" }, { kind: "component", type: DesignerItemComponent, selector: "bizdoc-designer-element", inputs: ["privileges", "icon", "form", "context"], outputs: ["save", "continue"] }] }); }
|
34533
34559
|
}
|
34534
34560
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.2.3", ngImport: i0, type: RuleDesignComponent, decorators: [{
|
34535
34561
|
type: Component,
|
@@ -34558,7 +34584,7 @@ class StateDesignComponent extends DesignerTypeElementComponent {
|
|
34558
34584
|
super.ngOnInit();
|
34559
34585
|
}
|
34560
34586
|
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.2.3", ngImport: i0, type: StateDesignComponent, deps: [{ token: i1$2.FormBuilder }, { token: i0.ElementRef }, { token: DesignerRef }], target: i0.ɵɵFactoryTarget.Component }); }
|
34561
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "17.2.3", type: StateDesignComponent, selector: "ng-component", usesInheritance: true, ngImport: i0, template: "<bizdoc-designer-element [form]=\"form\">\r\n <ng-template bizdocEditContent>\r\n <ng-container [formGroup]=\"form\">\r\n <div class=\"row\">\r\n <bizdoc-color-picker formControlName=\"color\" [label]=\"'Color'|translate\" class=\"flex\"></bizdoc-color-picker>\r\n <bizdoc-color-picker formControlName=\"backgroundColor\" [label]=\"'BackgroundColor'|translate\" class=\"flex\"></bizdoc-color-picker>\r\n </div>\r\n <bizdoc-localized-string formControlName=\"past\" [placeholder]=\"'Past'|translate\" required class=\"flex column\"></bizdoc-localized-string>\r\n <bizdoc-localized-string formControlName=\"future\" [placeholder]=\"'Future'|translate\" required class=\"flex column\"></bizdoc-localized-string>\r\n @if (variables.length) {\r\n <h2 class=\"mat-h2 row\">\r\n {{'Variables'|translate}}\r\n </h2>\r\n <ng-container formGroupName=\"options\">\r\n @for (a of variables; track a) {\r\n <mat-form-field>\r\n <mat-label>{{a.title | localizedString}}</mat-label>\r\n <bizdoc-select [type]=\"a.dataType\"/>\r\n </mat-form-field>\r\n }\r\n </ng-container>\r\n }\r\n </ng-container>\r\n </ng-template>\r\n</bizdoc-designer-element>\r\n", dependencies: [{ kind: "directive", type: i1$2.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i1$2.NgControlStatusGroup, selector: "[formGroupName],[formArrayName],[ngModelGroup],[formGroup],form:not([ngNoForm]),[ngForm]" }, { kind: "directive", type: i1$2.RequiredValidator, selector: ":not([type=checkbox])[required][formControlName],:not([type=checkbox])[required][formControl],:not([type=checkbox])[required][ngModel]", inputs: ["required"] }, { kind: "directive", type: i1$2.FormGroupDirective, selector: "[formGroup]", inputs: ["formGroup"], outputs: ["ngSubmit"], exportAs: ["ngForm"] }, { kind: "directive", type: i1$2.FormControlName, selector: "[formControlName]", inputs: ["formControlName", "disabled", "ngModel"], outputs: ["ngModelChange"] }, { kind: "directive", type: i1$2.FormGroupName, selector: "[formGroupName]", inputs: ["formGroupName"] }, { kind: "component", type: i3$1.MatFormField, selector: "mat-form-field", inputs: ["hideRequiredMarker", "color", "floatLabel", "appearance", "subscriptSizing", "hintLabel"], exportAs: ["matFormField"] }, { kind: "directive", type: i3$1.MatLabel, selector: "mat-label" }, { kind: "component", type: TypeSelect, selector: "bizdoc-select", inputs: ["type", "scope", "multiple", "placeholder", "required", "disabled", "text", "value"], outputs: ["selectionChange", "textChange"] }, { kind: "component", type: ColorPicker, selector: "bizdoc-color-picker", inputs: ["label", "value", "required", "disabled"], outputs: ["valueChanges"] }, { kind: "component", type: LocalizedStringComponent, selector: "bizdoc-localized-string", inputs: ["class", "floatLabel", "value", "placeholder", "required", "disabled", "maxlength"] }, { kind: "directive", type: EditContentDirective, selector: "[bizdocEditContent]" }, { kind: "component", type: DesignerItemComponent, selector: "bizdoc-designer-element", inputs: ["privileges", "icon", "form", "context"], outputs: ["save"] }, { kind: "pipe", type: LocalizedStringPipe, name: "localizedString" }, { kind: "pipe", type: TranslatePipe, name: "translate" }] }); }
|
34587
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "17.2.3", type: StateDesignComponent, selector: "ng-component", usesInheritance: true, ngImport: i0, template: "<bizdoc-designer-element [form]=\"form\">\r\n <ng-template bizdocEditContent>\r\n <ng-container [formGroup]=\"form\">\r\n <div class=\"row\">\r\n <bizdoc-color-picker formControlName=\"color\" [label]=\"'Color'|translate\" class=\"flex\"></bizdoc-color-picker>\r\n <bizdoc-color-picker formControlName=\"backgroundColor\" [label]=\"'BackgroundColor'|translate\" class=\"flex\"></bizdoc-color-picker>\r\n </div>\r\n <bizdoc-localized-string formControlName=\"past\" [placeholder]=\"'Past'|translate\" required class=\"flex column\"></bizdoc-localized-string>\r\n <bizdoc-localized-string formControlName=\"future\" [placeholder]=\"'Future'|translate\" required class=\"flex column\"></bizdoc-localized-string>\r\n @if (variables.length) {\r\n <h2 class=\"mat-h2 row\">\r\n {{'Variables'|translate}}\r\n </h2>\r\n <ng-container formGroupName=\"options\">\r\n @for (a of variables; track a) {\r\n <mat-form-field>\r\n <mat-label>{{a.title | localizedString}}</mat-label>\r\n <bizdoc-select [type]=\"a.dataType\"/>\r\n </mat-form-field>\r\n }\r\n </ng-container>\r\n }\r\n </ng-container>\r\n </ng-template>\r\n</bizdoc-designer-element>\r\n", dependencies: [{ kind: "directive", type: i1$2.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i1$2.NgControlStatusGroup, selector: "[formGroupName],[formArrayName],[ngModelGroup],[formGroup],form:not([ngNoForm]),[ngForm]" }, { kind: "directive", type: i1$2.RequiredValidator, selector: ":not([type=checkbox])[required][formControlName],:not([type=checkbox])[required][formControl],:not([type=checkbox])[required][ngModel]", inputs: ["required"] }, { kind: "directive", type: i1$2.FormGroupDirective, selector: "[formGroup]", inputs: ["formGroup"], outputs: ["ngSubmit"], exportAs: ["ngForm"] }, { kind: "directive", type: i1$2.FormControlName, selector: "[formControlName]", inputs: ["formControlName", "disabled", "ngModel"], outputs: ["ngModelChange"] }, { kind: "directive", type: i1$2.FormGroupName, selector: "[formGroupName]", inputs: ["formGroupName"] }, { kind: "component", type: i3$1.MatFormField, selector: "mat-form-field", inputs: ["hideRequiredMarker", "color", "floatLabel", "appearance", "subscriptSizing", "hintLabel"], exportAs: ["matFormField"] }, { kind: "directive", type: i3$1.MatLabel, selector: "mat-label" }, { kind: "component", type: TypeSelect, selector: "bizdoc-select", inputs: ["type", "scope", "multiple", "placeholder", "required", "disabled", "text", "value"], outputs: ["selectionChange", "textChange"] }, { kind: "component", type: ColorPicker, selector: "bizdoc-color-picker", inputs: ["label", "value", "required", "disabled"], outputs: ["valueChanges"] }, { kind: "component", type: LocalizedStringComponent, selector: "bizdoc-localized-string", inputs: ["class", "floatLabel", "value", "placeholder", "required", "disabled", "maxlength"] }, { kind: "directive", type: EditContentDirective, selector: "[bizdocEditContent]" }, { kind: "component", type: DesignerItemComponent, selector: "bizdoc-designer-element", inputs: ["privileges", "icon", "form", "context"], outputs: ["save", "continue"] }, { kind: "pipe", type: LocalizedStringPipe, name: "localizedString" }, { kind: "pipe", type: TranslatePipe, name: "translate" }] }); }
|
34562
34588
|
}
|
34563
34589
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.2.3", ngImport: i0, type: StateDesignComponent, decorators: [{
|
34564
34590
|
type: Component,
|
@@ -34619,7 +34645,7 @@ class TypeDesignComponent extends DesignerTypeElementComponent {
|
|
34619
34645
|
});
|
34620
34646
|
}
|
34621
34647
|
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.2.3", ngImport: i0, type: TypeDesignComponent, deps: [{ token: i1$2.FormBuilder }, { token: DatasourceService }, { token: TranslateService }, { token: PromptService }, { token: i0.ElementRef }, { token: DesignerRef }], target: i0.ɵɵFactoryTarget.Component }); }
|
34622
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "17.2.3", type: TypeDesignComponent, selector: "ng-component", usesInheritance: true, ngImport: i0, template: "<bizdoc-designer-element [form]=\"form\" [context]=\"context\">\n <ng-template bizdocContent>\n <div class=\"row\">\n <span class=\"divider\"></span>\n <button mat-icon-button [matMenuTriggerFor]=\"options\" [disabled]=\"model.draft\"><mat-icon>more_vert</mat-icon></button>\n <mat-menu #options>\n <button mat-menu-item (click)=\"test()\" type=\"button\">{{'TestType'|translate}}</button>\n </mat-menu>\n </div>\n </ng-template>\n <ng-template bizdocEditContent>\n <ng-container [formGroup]=\"form\">\n <h2 class=\"mat-h2 row\">\n {{'Groups'|translate}}\n <span class=\"divider\"></span>\n <button mat-icon-button (click)=\"add(groups, newGroup(), 'Group', 'group')\" [bizdocTooltip]=\"'Add'|translate\" type=\"button\"><mat-icon>add_circle_outline</mat-icon></button>\n </h2>\n <table formArrayName=\"groups\" class=\"mat-mdc-table\" cdkDropList (cdkDropListDropped)=\"drop($event, groups)\">\n @for (g of groups.controls; track g; let index = $index) {\n <tr class=\"mat-mdc-row\" [formGroup]=\"g\" cdkDrag>\n <td class=\"mat-mdc-cell\">\n <mat-icon cdkDragHandle>drag_indicator</mat-icon>\n </td>\n <td class=\"mat-mdc-cell\" width=\"99%\">\n {{g.controls.title.value }}\n </td>\n <td class=\"mat-mdc-cell nowrap\">\n <button mat-icon-button (click)=\"edit(g, 'Group', 'group')\" [bizdocTooltip]=\"'Edit'|translate\" type=\"button\"><mat-icon>edit</mat-icon></button>\n <button mat-icon-button (click)=\"groups.removeAt(index)\" [bizdocTooltip]=\"'Remove'|translate\" type=\"button\"><mat-icon>delete</mat-icon></button>\n </td>\n </tr>\n }\n </table>\n <h2 class=\"mat-h2 row\">\n {{'Patterns'|translate}}\n <span class=\"divider\"></span>\n <button mat-icon-button (click)=\"add(patterns, newPattern(), 'Pattern', 'pattern')\" [bizdocTooltip]=\"'Add'|translate\" type=\"button\"><mat-icon>add_circle_outline</mat-icon></button>\n </h2>\n <table formArrayName=\"tpatterns\" class=\"mat-mdc-table\" cdkDropList (cdkDropListDropped)=\"drop($event, patterns)\">\n @for (p of patterns.controls; track p; let index = $index) {\n <tr class=\"mat-mdc-row\" [formGroup]=\"p\" cdkDrag>\n <td class=\"mat-mdc-cell\">\n <mat-icon cdkDragHandle>drag_indicator</mat-icon>\n </td>\n <td class=\"mat-mdc-cell\" width=\"99%\">\n {{p.controls.title.value }}\n </td>\n <td class=\"mat-mdc-cell nowrap\">\n <button mat-icon-button (click)=\"edit(p, 'Pattern', 'pattern')\" [bizdocTooltip]=\"'Edit'|translate\" type=\"button\"><mat-icon>edit</mat-icon></button>\n <button mat-icon-button (click)=\"patterns.removeAt(index)\" [bizdocTooltip]=\"'Remove'|translate\" type=\"button\"><mat-icon>delete</mat-icon></button>\n </td>\n </tr>\n }\n </table>\n <mat-checkbox formControlName=\"assignable\">{{'Assignable'|translate}}</mat-checkbox>\n </ng-container>\n </ng-template>\n <ng-template bizdocAddContent>\n <ng-container [formGroup]=\"form\">\n </ng-container>\n </ng-template>\n <ng-template bizdocCustomContent=\"group\" let-form=\"form\">\n <ng-container [formGroup]=\"form\">\n <mat-form-field class=\"flex\">\n <mat-label>{{'Title'|translate}}</mat-label>\n <input matInput formControlName=\"title\" />\n </mat-form-field>\n <mat-form-field class=\"flex\">\n <mat-label>{{'Name'|translate}}</mat-label>\n <input matInput formControlName=\"name\" required />\n @if (form.controls.name.hasError('required')) {\n <mat-error [innerHTML]=\"'RequiredErr'|translate:('Name'|translate)\"></mat-error>\n }\n </mat-form-field>\n <mat-form-field class=\"flex\">\n <mat-label>{{'Items'|translate}}</mat-label>\n <mat-select [placeholder]=\"'Items'|translate\" multiple formControlName=\"items\" required>\n @for (v of values; track v) {\n <mat-option [value]=\"v.key\">\n <span>{{v.value}}</span>\n </mat-option>\n }\n </mat-select>\n @if (form.controls.items.hasError('required')) {\n <mat-error [innerHTML]=\"'RequiredErr'|translate:('Items'|translate)\"></mat-error>\n }\n </mat-form-field>\n </ng-container>\n </ng-template>\n <ng-template bizdocCustomContent=\"pattern\" let-form=\"form\">\n <ng-container [formGroup]=\"form\">\n <mat-form-field class=\"flex\">\n <mat-label>{{'Title'|translate}}</mat-label>\n <input matInput formControlName=\"title\" />\n </mat-form-field>\n <mat-form-field class=\"flex\">\n <mat-label>{{'Name'|translate}}</mat-label>\n <input matInput formControlName=\"name\" required />\n @if (form.controls.name.hasError('required')) {\n <mat-error [innerHTML]=\"'RequiredErr'|translate:('Name'|translate)\"></mat-error>\n }\n </mat-form-field>\n <mat-form-field class=\"flex\">\n <mat-label>{{'Regex'|translate}}</mat-label>\n <input matInput formControlName=\"expression\" required />\n @if (form.controls.expression.hasError('required')) {\n <mat-error [innerHTML]=\"'RequiredErr'|translate:('Expression'|translate)\"></mat-error>\n }\n <mat-hint><span [innerHTML]=\"'RegexHint' | translate : 'https://regex101.com/'| sanitizeHtml\"></span></mat-hint>\n </mat-form-field>\n </ng-container>\n </ng-template>\n</bizdoc-designer-element>\n", dependencies: [{ kind: "directive", type: i1$2.DefaultValueAccessor, selector: "input:not([type=checkbox])[formControlName],textarea[formControlName],input:not([type=checkbox])[formControl],textarea[formControl],input:not([type=checkbox])[ngModel],textarea[ngModel],[ngDefaultControl]" }, { kind: "directive", type: i1$2.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i1$2.NgControlStatusGroup, selector: "[formGroupName],[formArrayName],[ngModelGroup],[formGroup],form:not([ngNoForm]),[ngForm]" }, { kind: "directive", type: i1$2.RequiredValidator, selector: ":not([type=checkbox])[required][formControlName],:not([type=checkbox])[required][formControl],:not([type=checkbox])[required][ngModel]", inputs: ["required"] }, { kind: "directive", type: i1$2.FormGroupDirective, selector: "[formGroup]", inputs: ["formGroup"], outputs: ["ngSubmit"], exportAs: ["ngForm"] }, { kind: "directive", type: i1$2.FormControlName, selector: "[formControlName]", inputs: ["formControlName", "disabled", "ngModel"], outputs: ["ngModelChange"] }, { kind: "directive", type: i1$2.FormArrayName, selector: "[formArrayName]", inputs: ["formArrayName"] }, { kind: "directive", type: i2$6.CdkDropList, selector: "[cdkDropList], cdk-drop-list", inputs: ["cdkDropListConnectedTo", "cdkDropListData", "cdkDropListOrientation", "id", "cdkDropListLockAxis", "cdkDropListDisabled", "cdkDropListSortingDisabled", "cdkDropListEnterPredicate", "cdkDropListSortPredicate", "cdkDropListAutoScrollDisabled", "cdkDropListAutoScrollStep"], outputs: ["cdkDropListDropped", "cdkDropListEntered", "cdkDropListExited", "cdkDropListSorted"], exportAs: ["cdkDropList"] }, { kind: "directive", type: i2$6.CdkDrag, selector: "[cdkDrag]", inputs: ["cdkDragData", "cdkDragLockAxis", "cdkDragRootElement", "cdkDragBoundary", "cdkDragStartDelay", "cdkDragFreeDragPosition", "cdkDragDisabled", "cdkDragConstrainPosition", "cdkDragPreviewClass", "cdkDragPreviewContainer"], outputs: ["cdkDragStarted", "cdkDragReleased", "cdkDragEnded", "cdkDragEntered", "cdkDragExited", "cdkDragDropped", "cdkDragMoved"], exportAs: ["cdkDrag"] }, { kind: "directive", type: i2$6.CdkDragHandle, selector: "[cdkDragHandle]", inputs: ["cdkDragHandleDisabled"] }, { kind: "component", type: i2$5.MatOption, selector: "mat-option", inputs: ["value", "id", "disabled"], outputs: ["onSelectionChange"], exportAs: ["matOption"] }, { kind: "component", type: i3$1.MatFormField, selector: "mat-form-field", inputs: ["hideRequiredMarker", "color", "floatLabel", "appearance", "subscriptSizing", "hintLabel"], exportAs: ["matFormField"] }, { kind: "directive", type: i3$1.MatLabel, selector: "mat-label" }, { kind: "directive", type: i3$1.MatHint, selector: "mat-hint", inputs: ["align", "id"] }, { kind: "directive", type: i3$1.MatError, selector: "mat-error, [matError]", inputs: ["id"] }, { kind: "component", type: i4$2.MatSelect, selector: "mat-select", inputs: ["aria-describedby", "panelClass", "disabled", "disableRipple", "tabIndex", "hideSingleSelectionIndicator", "placeholder", "required", "multiple", "disableOptionCentering", "compareWith", "value", "aria-label", "aria-labelledby", "errorStateMatcher", "typeaheadDebounceInterval", "sortComparator", "id", "panelWidth"], outputs: ["openedChange", "opened", "closed", "selectionChange", "valueChange"], exportAs: ["matSelect"] }, { kind: "component", type: i8.MatIconButton, selector: "button[mat-icon-button]", exportAs: ["matButton"] }, { kind: "component", type: i2$7.MatCheckbox, selector: "mat-checkbox", inputs: ["aria-label", "aria-labelledby", "aria-describedby", "id", "required", "labelPosition", "name", "value", "disableRipple", "tabIndex", "color", "checked", "disabled", "indeterminate"], outputs: ["change", "indeterminateChange"], exportAs: ["matCheckbox"] }, { kind: "directive", type: i3$3.MatInput, selector: "input[matInput], textarea[matInput], select[matNativeControl], input[matNativeControl], textarea[matNativeControl]", inputs: ["disabled", "id", "placeholder", "name", "required", "type", "errorStateMatcher", "aria-describedby", "value", "readonly"], exportAs: ["matInput"] }, { kind: "component", type: i10.MatIcon, selector: "mat-icon", inputs: ["color", "inline", "svgIcon", "fontSet", "fontIcon"], exportAs: ["matIcon"] }, { kind: "component", type: i10$1.MatMenu, selector: "mat-menu", inputs: ["backdropClass", "aria-label", "aria-labelledby", "aria-describedby", "xPosition", "yPosition", "overlapTrigger", "hasBackdrop", "class", "classList"], outputs: ["closed", "close"], exportAs: ["matMenu"] }, { kind: "component", type: i10$1.MatMenuItem, selector: "[mat-menu-item]", inputs: ["role", "disabled", "disableRipple"], exportAs: ["matMenuItem"] }, { kind: "directive", type: i10$1.MatMenuTrigger, selector: "[mat-menu-trigger-for], [matMenuTriggerFor]", inputs: ["mat-menu-trigger-for", "matMenuTriggerFor", "matMenuTriggerData", "matMenuTriggerRestoreFocus"], outputs: ["menuOpened", "onMenuOpen", "menuClosed", "onMenuClose"], exportAs: ["matMenuTrigger"] }, { kind: "directive", type: TooltipDirective, selector: "[bizdocTooltip]", inputs: ["bizdocTooltip", "bizdocTooltipTemplate", "bizdocTooltipContext", "bizdocTooltipPosition", "bizdocTooltipDuration", "bizdocTooltipDisabled"] }, { kind: "directive", type: AddContentDirective, selector: "[bizdocAddContent]" }, { kind: "directive", type: CustomContentDirective, selector: "[bizdocCustomContent]", inputs: ["bizdocCustomContent"] }, { kind: "directive", type: EditContentDirective, selector: "[bizdocEditContent]" }, { kind: "directive", type: WidgetContentDirective, selector: "[bizdocContent]" }, { kind: "component", type: DesignerItemComponent, selector: "bizdoc-designer-element", inputs: ["privileges", "icon", "form", "context"], outputs: ["save"] }, { kind: "pipe", type: SanitizeHtmlPipe, name: "sanitizeHtml" }, { kind: "pipe", type: TranslatePipe, name: "translate" }] }); }
|
34648
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "17.2.3", type: TypeDesignComponent, selector: "ng-component", usesInheritance: true, ngImport: i0, template: "<bizdoc-designer-element [form]=\"form\" [context]=\"context\">\n <ng-template bizdocContent>\n <div class=\"row\">\n <span class=\"divider\"></span>\n <button mat-icon-button [matMenuTriggerFor]=\"options\" [disabled]=\"model.draft\"><mat-icon>more_vert</mat-icon></button>\n <mat-menu #options>\n <button mat-menu-item (click)=\"test()\" type=\"button\">{{'TestType'|translate}}</button>\n </mat-menu>\n </div>\n </ng-template>\n <ng-template bizdocEditContent>\n <ng-container [formGroup]=\"form\">\n <h2 class=\"mat-h2 row\">\n {{'Groups'|translate}}\n <span class=\"divider\"></span>\n <button mat-icon-button (click)=\"add(groups, newGroup(), 'Group', 'group')\" [bizdocTooltip]=\"'Add'|translate\" type=\"button\"><mat-icon>add_circle_outline</mat-icon></button>\n </h2>\n <table formArrayName=\"groups\" class=\"mat-mdc-table\" cdkDropList (cdkDropListDropped)=\"drop($event, groups)\">\n @for (g of groups.controls; track g; let index = $index) {\n <tr class=\"mat-mdc-row\" [formGroup]=\"g\" cdkDrag>\n <td class=\"mat-mdc-cell\">\n <mat-icon cdkDragHandle>drag_indicator</mat-icon>\n </td>\n <td class=\"mat-mdc-cell\" width=\"99%\">\n {{g.controls.title.value }}\n </td>\n <td class=\"mat-mdc-cell nowrap\">\n <button mat-icon-button (click)=\"edit(g, 'Group', 'group')\" [bizdocTooltip]=\"'Edit'|translate\" type=\"button\"><mat-icon>edit</mat-icon></button>\n <button mat-icon-button (click)=\"groups.removeAt(index)\" [bizdocTooltip]=\"'Remove'|translate\" type=\"button\"><mat-icon>delete</mat-icon></button>\n </td>\n </tr>\n }\n </table>\n <h2 class=\"mat-h2 row\">\n {{'Patterns'|translate}}\n <span class=\"divider\"></span>\n <button mat-icon-button (click)=\"add(patterns, newPattern(), 'Pattern', 'pattern')\" [bizdocTooltip]=\"'Add'|translate\" type=\"button\"><mat-icon>add_circle_outline</mat-icon></button>\n </h2>\n <table formArrayName=\"tpatterns\" class=\"mat-mdc-table\" cdkDropList (cdkDropListDropped)=\"drop($event, patterns)\">\n @for (p of patterns.controls; track p; let index = $index) {\n <tr class=\"mat-mdc-row\" [formGroup]=\"p\" cdkDrag>\n <td class=\"mat-mdc-cell\">\n <mat-icon cdkDragHandle>drag_indicator</mat-icon>\n </td>\n <td class=\"mat-mdc-cell\" width=\"99%\">\n {{p.controls.title.value }}\n </td>\n <td class=\"mat-mdc-cell nowrap\">\n <button mat-icon-button (click)=\"edit(p, 'Pattern', 'pattern')\" [bizdocTooltip]=\"'Edit'|translate\" type=\"button\"><mat-icon>edit</mat-icon></button>\n <button mat-icon-button (click)=\"patterns.removeAt(index)\" [bizdocTooltip]=\"'Remove'|translate\" type=\"button\"><mat-icon>delete</mat-icon></button>\n </td>\n </tr>\n }\n </table>\n <mat-checkbox formControlName=\"assignable\">{{'Assignable'|translate}}</mat-checkbox>\n </ng-container>\n </ng-template>\n <ng-template bizdocAddContent>\n <ng-container [formGroup]=\"form\">\n </ng-container>\n </ng-template>\n <ng-template bizdocCustomContent=\"group\" let-form=\"form\">\n <ng-container [formGroup]=\"form\">\n <mat-form-field class=\"flex\">\n <mat-label>{{'Title'|translate}}</mat-label>\n <input matInput formControlName=\"title\" />\n </mat-form-field>\n <mat-form-field class=\"flex\">\n <mat-label>{{'Name'|translate}}</mat-label>\n <input matInput formControlName=\"name\" required />\n @if (form.controls.name.hasError('required')) {\n <mat-error [innerHTML]=\"'RequiredErr'|translate:('Name'|translate)\"></mat-error>\n }\n </mat-form-field>\n <mat-form-field class=\"flex\">\n <mat-label>{{'Items'|translate}}</mat-label>\n <mat-select [placeholder]=\"'Items'|translate\" multiple formControlName=\"items\" required>\n @for (v of values; track v) {\n <mat-option [value]=\"v.key\">\n <span>{{v.value}}</span>\n </mat-option>\n }\n </mat-select>\n @if (form.controls.items.hasError('required')) {\n <mat-error [innerHTML]=\"'RequiredErr'|translate:('Items'|translate)\"></mat-error>\n }\n </mat-form-field>\n </ng-container>\n </ng-template>\n <ng-template bizdocCustomContent=\"pattern\" let-form=\"form\">\n <ng-container [formGroup]=\"form\">\n <mat-form-field class=\"flex\">\n <mat-label>{{'Title'|translate}}</mat-label>\n <input matInput formControlName=\"title\" />\n </mat-form-field>\n <mat-form-field class=\"flex\">\n <mat-label>{{'Name'|translate}}</mat-label>\n <input matInput formControlName=\"name\" required />\n @if (form.controls.name.hasError('required')) {\n <mat-error [innerHTML]=\"'RequiredErr'|translate:('Name'|translate)\"></mat-error>\n }\n </mat-form-field>\n <mat-form-field class=\"flex\">\n <mat-label>{{'Regex'|translate}}</mat-label>\n <input matInput formControlName=\"expression\" required />\n @if (form.controls.expression.hasError('required')) {\n <mat-error [innerHTML]=\"'RequiredErr'|translate:('Expression'|translate)\"></mat-error>\n }\n <mat-hint><span [innerHTML]=\"'RegexHint' | translate : 'https://regex101.com/'| sanitizeHtml\"></span></mat-hint>\n </mat-form-field>\n </ng-container>\n </ng-template>\n</bizdoc-designer-element>\n", dependencies: [{ kind: "directive", type: i1$2.DefaultValueAccessor, selector: "input:not([type=checkbox])[formControlName],textarea[formControlName],input:not([type=checkbox])[formControl],textarea[formControl],input:not([type=checkbox])[ngModel],textarea[ngModel],[ngDefaultControl]" }, { kind: "directive", type: i1$2.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i1$2.NgControlStatusGroup, selector: "[formGroupName],[formArrayName],[ngModelGroup],[formGroup],form:not([ngNoForm]),[ngForm]" }, { kind: "directive", type: i1$2.RequiredValidator, selector: ":not([type=checkbox])[required][formControlName],:not([type=checkbox])[required][formControl],:not([type=checkbox])[required][ngModel]", inputs: ["required"] }, { kind: "directive", type: i1$2.FormGroupDirective, selector: "[formGroup]", inputs: ["formGroup"], outputs: ["ngSubmit"], exportAs: ["ngForm"] }, { kind: "directive", type: i1$2.FormControlName, selector: "[formControlName]", inputs: ["formControlName", "disabled", "ngModel"], outputs: ["ngModelChange"] }, { kind: "directive", type: i1$2.FormArrayName, selector: "[formArrayName]", inputs: ["formArrayName"] }, { kind: "directive", type: i2$6.CdkDropList, selector: "[cdkDropList], cdk-drop-list", inputs: ["cdkDropListConnectedTo", "cdkDropListData", "cdkDropListOrientation", "id", "cdkDropListLockAxis", "cdkDropListDisabled", "cdkDropListSortingDisabled", "cdkDropListEnterPredicate", "cdkDropListSortPredicate", "cdkDropListAutoScrollDisabled", "cdkDropListAutoScrollStep"], outputs: ["cdkDropListDropped", "cdkDropListEntered", "cdkDropListExited", "cdkDropListSorted"], exportAs: ["cdkDropList"] }, { kind: "directive", type: i2$6.CdkDrag, selector: "[cdkDrag]", inputs: ["cdkDragData", "cdkDragLockAxis", "cdkDragRootElement", "cdkDragBoundary", "cdkDragStartDelay", "cdkDragFreeDragPosition", "cdkDragDisabled", "cdkDragConstrainPosition", "cdkDragPreviewClass", "cdkDragPreviewContainer"], outputs: ["cdkDragStarted", "cdkDragReleased", "cdkDragEnded", "cdkDragEntered", "cdkDragExited", "cdkDragDropped", "cdkDragMoved"], exportAs: ["cdkDrag"] }, { kind: "directive", type: i2$6.CdkDragHandle, selector: "[cdkDragHandle]", inputs: ["cdkDragHandleDisabled"] }, { kind: "component", type: i2$5.MatOption, selector: "mat-option", inputs: ["value", "id", "disabled"], outputs: ["onSelectionChange"], exportAs: ["matOption"] }, { kind: "component", type: i3$1.MatFormField, selector: "mat-form-field", inputs: ["hideRequiredMarker", "color", "floatLabel", "appearance", "subscriptSizing", "hintLabel"], exportAs: ["matFormField"] }, { kind: "directive", type: i3$1.MatLabel, selector: "mat-label" }, { kind: "directive", type: i3$1.MatHint, selector: "mat-hint", inputs: ["align", "id"] }, { kind: "directive", type: i3$1.MatError, selector: "mat-error, [matError]", inputs: ["id"] }, { kind: "component", type: i4$2.MatSelect, selector: "mat-select", inputs: ["aria-describedby", "panelClass", "disabled", "disableRipple", "tabIndex", "hideSingleSelectionIndicator", "placeholder", "required", "multiple", "disableOptionCentering", "compareWith", "value", "aria-label", "aria-labelledby", "errorStateMatcher", "typeaheadDebounceInterval", "sortComparator", "id", "panelWidth"], outputs: ["openedChange", "opened", "closed", "selectionChange", "valueChange"], exportAs: ["matSelect"] }, { kind: "component", type: i8.MatIconButton, selector: "button[mat-icon-button]", exportAs: ["matButton"] }, { kind: "component", type: i2$7.MatCheckbox, selector: "mat-checkbox", inputs: ["aria-label", "aria-labelledby", "aria-describedby", "id", "required", "labelPosition", "name", "value", "disableRipple", "tabIndex", "color", "checked", "disabled", "indeterminate"], outputs: ["change", "indeterminateChange"], exportAs: ["matCheckbox"] }, { kind: "directive", type: i3$3.MatInput, selector: "input[matInput], textarea[matInput], select[matNativeControl], input[matNativeControl], textarea[matNativeControl]", inputs: ["disabled", "id", "placeholder", "name", "required", "type", "errorStateMatcher", "aria-describedby", "value", "readonly"], exportAs: ["matInput"] }, { kind: "component", type: i10.MatIcon, selector: "mat-icon", inputs: ["color", "inline", "svgIcon", "fontSet", "fontIcon"], exportAs: ["matIcon"] }, { kind: "component", type: i10$1.MatMenu, selector: "mat-menu", inputs: ["backdropClass", "aria-label", "aria-labelledby", "aria-describedby", "xPosition", "yPosition", "overlapTrigger", "hasBackdrop", "class", "classList"], outputs: ["closed", "close"], exportAs: ["matMenu"] }, { kind: "component", type: i10$1.MatMenuItem, selector: "[mat-menu-item]", inputs: ["role", "disabled", "disableRipple"], exportAs: ["matMenuItem"] }, { kind: "directive", type: i10$1.MatMenuTrigger, selector: "[mat-menu-trigger-for], [matMenuTriggerFor]", inputs: ["mat-menu-trigger-for", "matMenuTriggerFor", "matMenuTriggerData", "matMenuTriggerRestoreFocus"], outputs: ["menuOpened", "onMenuOpen", "menuClosed", "onMenuClose"], exportAs: ["matMenuTrigger"] }, { kind: "directive", type: TooltipDirective, selector: "[bizdocTooltip]", inputs: ["bizdocTooltip", "bizdocTooltipTemplate", "bizdocTooltipContext", "bizdocTooltipPosition", "bizdocTooltipDuration", "bizdocTooltipDisabled"] }, { kind: "directive", type: AddContentDirective, selector: "[bizdocAddContent]" }, { kind: "directive", type: CustomContentDirective, selector: "[bizdocCustomContent]", inputs: ["bizdocCustomContent"] }, { kind: "directive", type: EditContentDirective, selector: "[bizdocEditContent]" }, { kind: "directive", type: WidgetContentDirective, selector: "[bizdocContent]" }, { kind: "component", type: DesignerItemComponent, selector: "bizdoc-designer-element", inputs: ["privileges", "icon", "form", "context"], outputs: ["save", "continue"] }, { kind: "pipe", type: SanitizeHtmlPipe, name: "sanitizeHtml" }, { kind: "pipe", type: TranslatePipe, name: "translate" }] }); }
|
34623
34649
|
}
|
34624
34650
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.2.3", ngImport: i0, type: TypeDesignComponent, decorators: [{
|
34625
34651
|
type: Component,
|
@@ -34635,7 +34661,7 @@ class UtilityDesignComponent extends DesignerTypeElementComponent {
|
|
34635
34661
|
this.form = this._fb.group({});
|
34636
34662
|
}
|
34637
34663
|
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.2.3", ngImport: i0, type: UtilityDesignComponent, deps: null, target: i0.ɵɵFactoryTarget.Component }); }
|
34638
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.2.3", type: UtilityDesignComponent, selector: "ng-component", usesInheritance: true, ngImport: i0, template: "<bizdoc-designer-element [form]=\"form\" [privileges]=\"true\" [icon]=\"true\">\r\n <ng-template bizdocEditContent>\r\n <ng-container [formGroup]=\"form\">\r\n </ng-container>\r\n </ng-template>\r\n</bizdoc-designer-element>\r\n", dependencies: [{ kind: "directive", type: i1$2.NgControlStatusGroup, selector: "[formGroupName],[formArrayName],[ngModelGroup],[formGroup],form:not([ngNoForm]),[ngForm]" }, { kind: "directive", type: i1$2.FormGroupDirective, selector: "[formGroup]", inputs: ["formGroup"], outputs: ["ngSubmit"], exportAs: ["ngForm"] }, { kind: "directive", type: EditContentDirective, selector: "[bizdocEditContent]" }, { kind: "component", type: DesignerItemComponent, selector: "bizdoc-designer-element", inputs: ["privileges", "icon", "form", "context"], outputs: ["save"] }] }); }
|
34664
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.2.3", type: UtilityDesignComponent, selector: "ng-component", usesInheritance: true, ngImport: i0, template: "<bizdoc-designer-element [form]=\"form\" [privileges]=\"true\" [icon]=\"true\">\r\n <ng-template bizdocEditContent>\r\n <ng-container [formGroup]=\"form\">\r\n </ng-container>\r\n </ng-template>\r\n</bizdoc-designer-element>\r\n", dependencies: [{ kind: "directive", type: i1$2.NgControlStatusGroup, selector: "[formGroupName],[formArrayName],[ngModelGroup],[formGroup],form:not([ngNoForm]),[ngForm]" }, { kind: "directive", type: i1$2.FormGroupDirective, selector: "[formGroup]", inputs: ["formGroup"], outputs: ["ngSubmit"], exportAs: ["ngForm"] }, { kind: "directive", type: EditContentDirective, selector: "[bizdocEditContent]" }, { kind: "component", type: DesignerItemComponent, selector: "bizdoc-designer-element", inputs: ["privileges", "icon", "form", "context"], outputs: ["save", "continue"] }] }); }
|
34639
34665
|
}
|
34640
34666
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.2.3", ngImport: i0, type: UtilityDesignComponent, decorators: [{
|
34641
34667
|
type: Component,
|
@@ -34648,7 +34674,7 @@ class ViewDesignComponent extends DesignerTypeElementComponent {
|
|
34648
34674
|
this.form = this._fb.group({});
|
34649
34675
|
}
|
34650
34676
|
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.2.3", ngImport: i0, type: ViewDesignComponent, deps: null, target: i0.ɵɵFactoryTarget.Component }); }
|
34651
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.2.3", type: ViewDesignComponent, selector: "ng-component", usesInheritance: true, ngImport: i0, template: "<bizdoc-designer-element [form]=\"form\" [privileges]=\"true\">\r\n <ng-template bizdocEditContent>\r\n <ng-container [formGroup]=\"form\">\r\n </ng-container>\r\n </ng-template>\r\n</bizdoc-designer-element>\r\n", dependencies: [{ kind: "directive", type: i1$2.NgControlStatusGroup, selector: "[formGroupName],[formArrayName],[ngModelGroup],[formGroup],form:not([ngNoForm]),[ngForm]" }, { kind: "directive", type: i1$2.FormGroupDirective, selector: "[formGroup]", inputs: ["formGroup"], outputs: ["ngSubmit"], exportAs: ["ngForm"] }, { kind: "directive", type: EditContentDirective, selector: "[bizdocEditContent]" }, { kind: "component", type: DesignerItemComponent, selector: "bizdoc-designer-element", inputs: ["privileges", "icon", "form", "context"], outputs: ["save"] }] }); }
|
34677
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.2.3", type: ViewDesignComponent, selector: "ng-component", usesInheritance: true, ngImport: i0, template: "<bizdoc-designer-element [form]=\"form\" [privileges]=\"true\">\r\n <ng-template bizdocEditContent>\r\n <ng-container [formGroup]=\"form\">\r\n </ng-container>\r\n </ng-template>\r\n</bizdoc-designer-element>\r\n", dependencies: [{ kind: "directive", type: i1$2.NgControlStatusGroup, selector: "[formGroupName],[formArrayName],[ngModelGroup],[formGroup],form:not([ngNoForm]),[ngForm]" }, { kind: "directive", type: i1$2.FormGroupDirective, selector: "[formGroup]", inputs: ["formGroup"], outputs: ["ngSubmit"], exportAs: ["ngForm"] }, { kind: "directive", type: EditContentDirective, selector: "[bizdocEditContent]" }, { kind: "component", type: DesignerItemComponent, selector: "bizdoc-designer-element", inputs: ["privileges", "icon", "form", "context"], outputs: ["save", "continue"] }] }); }
|
34652
34678
|
}
|
34653
34679
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.2.3", ngImport: i0, type: ViewDesignComponent, decorators: [{
|
34654
34680
|
type: Component,
|
@@ -34668,7 +34694,7 @@ class WidgetDesignComponent extends DesignerTypeElementComponent {
|
|
34668
34694
|
super.ngOnInit();
|
34669
34695
|
}
|
34670
34696
|
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.2.3", ngImport: i0, type: WidgetDesignComponent, deps: null, target: i0.ɵɵFactoryTarget.Component }); }
|
34671
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "17.2.3", type: WidgetDesignComponent, selector: "ng-component", usesInheritance: true, ngImport: i0, template: "<bizdoc-designer-element [form]=\"form\" [privileges]=\"true\">\n <ng-template bizdocEditContent>\n <ng-container [formGroup]=\"form\">\n <mat-form-field>\n <mat-label>{{'Guide'|translate}}</mat-label>\n <mat-select formControlName=\"guide\">\n <mat-option>{{'None'|translate}}</mat-option>\n @for (g of guides; track g) {\n <mat-option [value]=\"g.name\">{{g.title |localizedString}}</mat-option>\n }\n </mat-select>\n </mat-form-field>\n </ng-container>\n </ng-template>\n</bizdoc-designer-element>\n", dependencies: [{ kind: "directive", type: i1$2.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i1$2.NgControlStatusGroup, selector: "[formGroupName],[formArrayName],[ngModelGroup],[formGroup],form:not([ngNoForm]),[ngForm]" }, { kind: "directive", type: i1$2.FormGroupDirective, selector: "[formGroup]", inputs: ["formGroup"], outputs: ["ngSubmit"], exportAs: ["ngForm"] }, { kind: "directive", type: i1$2.FormControlName, selector: "[formControlName]", inputs: ["formControlName", "disabled", "ngModel"], outputs: ["ngModelChange"] }, { kind: "component", type: i2$5.MatOption, selector: "mat-option", inputs: ["value", "id", "disabled"], outputs: ["onSelectionChange"], exportAs: ["matOption"] }, { kind: "component", type: i3$1.MatFormField, selector: "mat-form-field", inputs: ["hideRequiredMarker", "color", "floatLabel", "appearance", "subscriptSizing", "hintLabel"], exportAs: ["matFormField"] }, { kind: "directive", type: i3$1.MatLabel, selector: "mat-label" }, { kind: "component", type: i4$2.MatSelect, selector: "mat-select", inputs: ["aria-describedby", "panelClass", "disabled", "disableRipple", "tabIndex", "hideSingleSelectionIndicator", "placeholder", "required", "multiple", "disableOptionCentering", "compareWith", "value", "aria-label", "aria-labelledby", "errorStateMatcher", "typeaheadDebounceInterval", "sortComparator", "id", "panelWidth"], outputs: ["openedChange", "opened", "closed", "selectionChange", "valueChange"], exportAs: ["matSelect"] }, { kind: "directive", type: EditContentDirective, selector: "[bizdocEditContent]" }, { kind: "component", type: DesignerItemComponent, selector: "bizdoc-designer-element", inputs: ["privileges", "icon", "form", "context"], outputs: ["save"] }, { kind: "pipe", type: LocalizedStringPipe, name: "localizedString" }, { kind: "pipe", type: TranslatePipe, name: "translate" }] }); }
|
34697
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "17.2.3", type: WidgetDesignComponent, selector: "ng-component", usesInheritance: true, ngImport: i0, template: "<bizdoc-designer-element [form]=\"form\" [privileges]=\"true\">\n <ng-template bizdocEditContent>\n <ng-container [formGroup]=\"form\">\n <mat-form-field>\n <mat-label>{{'Guide'|translate}}</mat-label>\n <mat-select formControlName=\"guide\">\n <mat-option>{{'None'|translate}}</mat-option>\n @for (g of guides; track g) {\n <mat-option [value]=\"g.name\">{{g.title |localizedString}}</mat-option>\n }\n </mat-select>\n </mat-form-field>\n </ng-container>\n </ng-template>\n</bizdoc-designer-element>\n", dependencies: [{ kind: "directive", type: i1$2.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i1$2.NgControlStatusGroup, selector: "[formGroupName],[formArrayName],[ngModelGroup],[formGroup],form:not([ngNoForm]),[ngForm]" }, { kind: "directive", type: i1$2.FormGroupDirective, selector: "[formGroup]", inputs: ["formGroup"], outputs: ["ngSubmit"], exportAs: ["ngForm"] }, { kind: "directive", type: i1$2.FormControlName, selector: "[formControlName]", inputs: ["formControlName", "disabled", "ngModel"], outputs: ["ngModelChange"] }, { kind: "component", type: i2$5.MatOption, selector: "mat-option", inputs: ["value", "id", "disabled"], outputs: ["onSelectionChange"], exportAs: ["matOption"] }, { kind: "component", type: i3$1.MatFormField, selector: "mat-form-field", inputs: ["hideRequiredMarker", "color", "floatLabel", "appearance", "subscriptSizing", "hintLabel"], exportAs: ["matFormField"] }, { kind: "directive", type: i3$1.MatLabel, selector: "mat-label" }, { kind: "component", type: i4$2.MatSelect, selector: "mat-select", inputs: ["aria-describedby", "panelClass", "disabled", "disableRipple", "tabIndex", "hideSingleSelectionIndicator", "placeholder", "required", "multiple", "disableOptionCentering", "compareWith", "value", "aria-label", "aria-labelledby", "errorStateMatcher", "typeaheadDebounceInterval", "sortComparator", "id", "panelWidth"], outputs: ["openedChange", "opened", "closed", "selectionChange", "valueChange"], exportAs: ["matSelect"] }, { kind: "directive", type: EditContentDirective, selector: "[bizdocEditContent]" }, { kind: "component", type: DesignerItemComponent, selector: "bizdoc-designer-element", inputs: ["privileges", "icon", "form", "context"], outputs: ["save", "continue"] }, { kind: "pipe", type: LocalizedStringPipe, name: "localizedString" }, { kind: "pipe", type: TranslatePipe, name: "translate" }] }); }
|
34672
34698
|
}
|
34673
34699
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.2.3", ngImport: i0, type: WidgetDesignComponent, decorators: [{
|
34674
34700
|
type: Component,
|
@@ -34683,7 +34709,7 @@ class SourceDesignComponent extends DesignerTypeElementComponent {
|
|
34683
34709
|
});
|
34684
34710
|
}
|
34685
34711
|
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.2.3", ngImport: i0, type: SourceDesignComponent, deps: null, target: i0.ɵɵFactoryTarget.Component }); }
|
34686
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.2.3", type: SourceDesignComponent, selector: "ng-component", usesInheritance: true, ngImport: i0, template: "<bizdoc-designer-element [form]=\"form\" [privileges]=\"true\">\r\n <!-- widget -->\r\n <ng-template bizdocContent>\r\n <dl>\r\n <dt></dt>\r\n <dd>{{model.regularExpression}}</dd>\r\n </dl>\r\n </ng-template>\r\n <!-- edit -->\r\n <ng-template bizdocEditContent>\r\n <ng-container [formGroup]=\"form\">\r\n <mat-form-field>\r\n <input matInput formControlName=\"regularExpression\" [placeholder]=\"'Regex'| translate\" required autocomplete=\"off\" />\r\n <mat-hint><span [innerHTML]=\"'RegexHint' | translate : 'https://regex101.com/'| sanitizeHtml\"></span></mat-hint>\r\n </mat-form-field>\r\n </ng-container>\r\n </ng-template>\r\n</bizdoc-designer-element>\r\n", dependencies: [{ kind: "directive", type: i1$2.DefaultValueAccessor, selector: "input:not([type=checkbox])[formControlName],textarea[formControlName],input:not([type=checkbox])[formControl],textarea[formControl],input:not([type=checkbox])[ngModel],textarea[ngModel],[ngDefaultControl]" }, { kind: "directive", type: i1$2.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i1$2.NgControlStatusGroup, selector: "[formGroupName],[formArrayName],[ngModelGroup],[formGroup],form:not([ngNoForm]),[ngForm]" }, { kind: "directive", type: i1$2.RequiredValidator, selector: ":not([type=checkbox])[required][formControlName],:not([type=checkbox])[required][formControl],:not([type=checkbox])[required][ngModel]", inputs: ["required"] }, { kind: "directive", type: i1$2.FormGroupDirective, selector: "[formGroup]", inputs: ["formGroup"], outputs: ["ngSubmit"], exportAs: ["ngForm"] }, { kind: "directive", type: i1$2.FormControlName, selector: "[formControlName]", inputs: ["formControlName", "disabled", "ngModel"], outputs: ["ngModelChange"] }, { kind: "component", type: i3$1.MatFormField, selector: "mat-form-field", inputs: ["hideRequiredMarker", "color", "floatLabel", "appearance", "subscriptSizing", "hintLabel"], exportAs: ["matFormField"] }, { kind: "directive", type: i3$1.MatHint, selector: "mat-hint", inputs: ["align", "id"] }, { kind: "directive", type: i3$3.MatInput, selector: "input[matInput], textarea[matInput], select[matNativeControl], input[matNativeControl], textarea[matNativeControl]", inputs: ["disabled", "id", "placeholder", "name", "required", "type", "errorStateMatcher", "aria-describedby", "value", "readonly"], exportAs: ["matInput"] }, { kind: "directive", type: EditContentDirective, selector: "[bizdocEditContent]" }, { kind: "directive", type: WidgetContentDirective, selector: "[bizdocContent]" }, { kind: "component", type: DesignerItemComponent, selector: "bizdoc-designer-element", inputs: ["privileges", "icon", "form", "context"], outputs: ["save"] }, { kind: "pipe", type: SanitizeHtmlPipe, name: "sanitizeHtml" }, { kind: "pipe", type: TranslatePipe, name: "translate" }] }); }
|
34712
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.2.3", type: SourceDesignComponent, selector: "ng-component", usesInheritance: true, ngImport: i0, template: "<bizdoc-designer-element [form]=\"form\" [privileges]=\"true\">\r\n <!-- widget -->\r\n <ng-template bizdocContent>\r\n <dl>\r\n <dt></dt>\r\n <dd>{{model.regularExpression}}</dd>\r\n </dl>\r\n </ng-template>\r\n <!-- edit -->\r\n <ng-template bizdocEditContent>\r\n <ng-container [formGroup]=\"form\">\r\n <mat-form-field>\r\n <input matInput formControlName=\"regularExpression\" [placeholder]=\"'Regex'| translate\" required autocomplete=\"off\" />\r\n <mat-hint><span [innerHTML]=\"'RegexHint' | translate : 'https://regex101.com/'| sanitizeHtml\"></span></mat-hint>\r\n </mat-form-field>\r\n </ng-container>\r\n </ng-template>\r\n</bizdoc-designer-element>\r\n", dependencies: [{ kind: "directive", type: i1$2.DefaultValueAccessor, selector: "input:not([type=checkbox])[formControlName],textarea[formControlName],input:not([type=checkbox])[formControl],textarea[formControl],input:not([type=checkbox])[ngModel],textarea[ngModel],[ngDefaultControl]" }, { kind: "directive", type: i1$2.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i1$2.NgControlStatusGroup, selector: "[formGroupName],[formArrayName],[ngModelGroup],[formGroup],form:not([ngNoForm]),[ngForm]" }, { kind: "directive", type: i1$2.RequiredValidator, selector: ":not([type=checkbox])[required][formControlName],:not([type=checkbox])[required][formControl],:not([type=checkbox])[required][ngModel]", inputs: ["required"] }, { kind: "directive", type: i1$2.FormGroupDirective, selector: "[formGroup]", inputs: ["formGroup"], outputs: ["ngSubmit"], exportAs: ["ngForm"] }, { kind: "directive", type: i1$2.FormControlName, selector: "[formControlName]", inputs: ["formControlName", "disabled", "ngModel"], outputs: ["ngModelChange"] }, { kind: "component", type: i3$1.MatFormField, selector: "mat-form-field", inputs: ["hideRequiredMarker", "color", "floatLabel", "appearance", "subscriptSizing", "hintLabel"], exportAs: ["matFormField"] }, { kind: "directive", type: i3$1.MatHint, selector: "mat-hint", inputs: ["align", "id"] }, { kind: "directive", type: i3$3.MatInput, selector: "input[matInput], textarea[matInput], select[matNativeControl], input[matNativeControl], textarea[matNativeControl]", inputs: ["disabled", "id", "placeholder", "name", "required", "type", "errorStateMatcher", "aria-describedby", "value", "readonly"], exportAs: ["matInput"] }, { kind: "directive", type: EditContentDirective, selector: "[bizdocEditContent]" }, { kind: "directive", type: WidgetContentDirective, selector: "[bizdocContent]" }, { kind: "component", type: DesignerItemComponent, selector: "bizdoc-designer-element", inputs: ["privileges", "icon", "form", "context"], outputs: ["save", "continue"] }, { kind: "pipe", type: SanitizeHtmlPipe, name: "sanitizeHtml" }, { kind: "pipe", type: TranslatePipe, name: "translate" }] }); }
|
34687
34713
|
}
|
34688
34714
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.2.3", ngImport: i0, type: SourceDesignComponent, decorators: [{
|
34689
34715
|
type: Component,
|
@@ -36152,7 +36178,7 @@ class JobDesignComponent extends DesignerTypeElementComponent {
|
|
36152
36178
|
});
|
36153
36179
|
}
|
36154
36180
|
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.2.3", ngImport: i0, type: JobDesignComponent, deps: [{ token: i1$2.FormBuilder }, { token: SystemService }, { token: PromptService }, { token: i0.ElementRef }, { token: DesignerRef }], target: i0.ɵɵFactoryTarget.Component }); }
|
36155
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "17.2.3", type: JobDesignComponent, selector: "ng-component", usesInheritance: true, ngImport: i0, template: "<bizdoc-designer-element [form]=\"form\" [privileges]=\"true\">\n <!-- widget -->\n <ng-template bizdocContent>\n @if (jobInfo) {\n <dl>\n @if (jobInfo.lastExecution) {\n <dt>{{'LastExecution'|translate}}</dt>\n <dd>{{jobInfo.lastExecution|amTimeAgo}}</dd>\n }\n @if (jobInfo.nextExecution) {\n <dt>{{'NextExecution'|translate}}</dt>\n <dd>{{jobInfo.nextExecution|amTimeAgo}}</dd>\n }\n @if (jobInfo.lastJobState) {\n <dt>{{'LastJobState'|translate}}</dt>\n <dd>\n @if (jobInfo.error) {\n <mat-icon [bizdocTooltip]=\"jobInfo.error\">report</mat-icon>\n }\n <span class=\"job-state\">{{jobInfo.lastJobState| translate}}</span>\n </dd>\n }\n </dl>\n }\n <div class=\"row start center\">\n <button mat-stroked-button (click)=\"execute()\" [disabled]=\"model.draft || working\">\n <span> {{'Execute'|translate}}</span>\n </button>\n \n @if (working) {\n <mat-spinner diameter=\"22\"></mat-spinner>\n }\n </div>\n </ng-template>\n <!-- edit -->\n <ng-template bizdocEditContent>\n <ng-container [formGroup]=\"form\">\n </ng-container>\n </ng-template>\n</bizdoc-designer-element>\n", dependencies: [{ kind: "directive", type: i1$2.NgControlStatusGroup, selector: "[formGroupName],[formArrayName],[ngModelGroup],[formGroup],form:not([ngNoForm]),[ngForm]" }, { kind: "directive", type: i1$2.FormGroupDirective, selector: "[formGroup]", inputs: ["formGroup"], outputs: ["ngSubmit"], exportAs: ["ngForm"] }, { kind: "component", type: i7.MatProgressSpinner, selector: "mat-progress-spinner, mat-spinner", inputs: ["color", "mode", "value", "diameter", "strokeWidth"], exportAs: ["matProgressSpinner"] }, { kind: "component", type: i8.MatButton, selector: " button[mat-button], button[mat-raised-button], button[mat-flat-button], button[mat-stroked-button] ", exportAs: ["matButton"] }, { kind: "component", type: i10.MatIcon, selector: "mat-icon", inputs: ["color", "inline", "svgIcon", "fontSet", "fontIcon"], exportAs: ["matIcon"] }, { kind: "directive", type: TooltipDirective, selector: "[bizdocTooltip]", inputs: ["bizdocTooltip", "bizdocTooltipTemplate", "bizdocTooltipContext", "bizdocTooltipPosition", "bizdocTooltipDuration", "bizdocTooltipDisabled"] }, { kind: "directive", type: EditContentDirective, selector: "[bizdocEditContent]" }, { kind: "directive", type: WidgetContentDirective, selector: "[bizdocContent]" }, { kind: "component", type: DesignerItemComponent, selector: "bizdoc-designer-element", inputs: ["privileges", "icon", "form", "context"], outputs: ["save"] }, { kind: "pipe", type: TimeAgoPipe, name: "amTimeAgo" }, { kind: "pipe", type: TranslatePipe, name: "translate" }] }); }
|
36181
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "17.2.3", type: JobDesignComponent, selector: "ng-component", usesInheritance: true, ngImport: i0, template: "<bizdoc-designer-element [form]=\"form\" [privileges]=\"true\">\n <!-- widget -->\n <ng-template bizdocContent>\n @if (jobInfo) {\n <dl>\n @if (jobInfo.lastExecution) {\n <dt>{{'LastExecution'|translate}}</dt>\n <dd>{{jobInfo.lastExecution|amTimeAgo}}</dd>\n }\n @if (jobInfo.nextExecution) {\n <dt>{{'NextExecution'|translate}}</dt>\n <dd>{{jobInfo.nextExecution|amTimeAgo}}</dd>\n }\n @if (jobInfo.lastJobState) {\n <dt>{{'LastJobState'|translate}}</dt>\n <dd>\n @if (jobInfo.error) {\n <mat-icon [bizdocTooltip]=\"jobInfo.error\">report</mat-icon>\n }\n <span class=\"job-state\">{{jobInfo.lastJobState| translate}}</span>\n </dd>\n }\n </dl>\n }\n <div class=\"row start center\">\n <button mat-stroked-button (click)=\"execute()\" [disabled]=\"model.draft || working\">\n <span> {{'Execute'|translate}}</span>\n </button>\n \n @if (working) {\n <mat-spinner diameter=\"22\"></mat-spinner>\n }\n </div>\n </ng-template>\n <!-- edit -->\n <ng-template bizdocEditContent>\n <ng-container [formGroup]=\"form\">\n </ng-container>\n </ng-template>\n</bizdoc-designer-element>\n", dependencies: [{ kind: "directive", type: i1$2.NgControlStatusGroup, selector: "[formGroupName],[formArrayName],[ngModelGroup],[formGroup],form:not([ngNoForm]),[ngForm]" }, { kind: "directive", type: i1$2.FormGroupDirective, selector: "[formGroup]", inputs: ["formGroup"], outputs: ["ngSubmit"], exportAs: ["ngForm"] }, { kind: "component", type: i7.MatProgressSpinner, selector: "mat-progress-spinner, mat-spinner", inputs: ["color", "mode", "value", "diameter", "strokeWidth"], exportAs: ["matProgressSpinner"] }, { kind: "component", type: i8.MatButton, selector: " button[mat-button], button[mat-raised-button], button[mat-flat-button], button[mat-stroked-button] ", exportAs: ["matButton"] }, { kind: "component", type: i10.MatIcon, selector: "mat-icon", inputs: ["color", "inline", "svgIcon", "fontSet", "fontIcon"], exportAs: ["matIcon"] }, { kind: "directive", type: TooltipDirective, selector: "[bizdocTooltip]", inputs: ["bizdocTooltip", "bizdocTooltipTemplate", "bizdocTooltipContext", "bizdocTooltipPosition", "bizdocTooltipDuration", "bizdocTooltipDisabled"] }, { kind: "directive", type: EditContentDirective, selector: "[bizdocEditContent]" }, { kind: "directive", type: WidgetContentDirective, selector: "[bizdocContent]" }, { kind: "component", type: DesignerItemComponent, selector: "bizdoc-designer-element", inputs: ["privileges", "icon", "form", "context"], outputs: ["save", "continue"] }, { kind: "pipe", type: TimeAgoPipe, name: "amTimeAgo" }, { kind: "pipe", type: TranslatePipe, name: "translate" }] }); }
|
36156
36182
|
}
|
36157
36183
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.2.3", ngImport: i0, type: JobDesignComponent, decorators: [{
|
36158
36184
|
type: Component,
|
@@ -36252,7 +36278,9 @@ class SystemModule {
|
|
36252
36278
|
Indices: 'Indices',
|
36253
36279
|
Spreadsheet: 'Spreadsheet',
|
36254
36280
|
Chart: 'Chart',
|
36255
|
-
|
36281
|
+
PivotGrid: 'Pivot Grid',
|
36282
|
+
PivotChart: 'Pivot Chart',
|
36283
|
+
Grid: 'Grid',
|
36256
36284
|
Pie: 'Pie',
|
36257
36285
|
Line: 'Line',
|
36258
36286
|
Column: 'Column',
|
@@ -36778,18 +36806,20 @@ class BizDocModule {
|
|
36778
36806
|
static forChild(config) {
|
36779
36807
|
const { components, routes } = config;
|
36780
36808
|
registerComponents(components);
|
36809
|
+
routes && PANES_CONFIG.push(...routes);
|
36781
36810
|
return {
|
36782
36811
|
ngModule: BizDocModule,
|
36783
36812
|
providers: [
|
36784
|
-
{ provide: PANES_DATA, useValue:
|
36813
|
+
{ provide: PANES_DATA, useValue: PANES_CONFIG }
|
36785
36814
|
]
|
36786
36815
|
};
|
36787
36816
|
}
|
36788
36817
|
static forRoot(config) {
|
36789
36818
|
const { formats, routes, components } = config;
|
36790
36819
|
registerComponents(components);
|
36820
|
+
routes && PANES_CONFIG.push(...routes);
|
36791
36821
|
const providers = [
|
36792
|
-
{ provide: PANES_DATA, useValue:
|
36822
|
+
{ provide: PANES_DATA, useValue: PANES_CONFIG },
|
36793
36823
|
{
|
36794
36824
|
provide: BIZDOC_CONFIG,
|
36795
36825
|
useValue: config
|
@@ -36850,9 +36880,6 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.2.3", ngImpor
|
|
36850
36880
|
]
|
36851
36881
|
}]
|
36852
36882
|
}] });
|
36853
|
-
function withRoute(routes) {
|
36854
|
-
return !routes ? PANES_CONFIG : PANES_CONFIG.concat(routes);
|
36855
|
-
}
|
36856
36883
|
|
36857
36884
|
/**
|
36858
36885
|
* Generated bundle index. Do not edit.
|