@messaia/cdk-cms 19.0.1 → 20.0.0-RC.1
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/README.md +49 -10
- package/fesm2022/messaia-cdk-cms.mjs +265 -277
- package/fesm2022/messaia-cdk-cms.mjs.map +1 -1
- package/index.d.ts +1164 -3
- package/package.json +6 -7
- package/lib/cms-routing.module.d.ts +0 -7
- package/lib/cms.module.d.ts +0 -46
- package/lib/comnponents/content-form/content-form.component.d.ts +0 -110
- package/lib/comnponents/document-dialog/document-dialog.component.d.ts +0 -26
- package/lib/comnponents/document-form-base/document-form-base.component.d.ts +0 -48
- package/lib/comnponents/template-form/template-form.component.d.ts +0 -73
- package/lib/comnponents/template-preview-dialog/template-preview-dialog.component.d.ts +0 -80
- package/lib/enums/content-type.d.ts +0 -4
- package/lib/enums/faq-scope.d.ts +0 -4
- package/lib/enums/template-type.d.ts +0 -4
- package/lib/enums/wrap-tag.d.ts +0 -7
- package/lib/models/cms-settings.d.ts +0 -30
- package/lib/models/content-client.d.ts +0 -26
- package/lib/models/content-department.d.ts +0 -26
- package/lib/models/content-variable-client.d.ts +0 -26
- package/lib/models/content-variable-department.d.ts +0 -26
- package/lib/models/content-variable.d.ts +0 -29
- package/lib/models/content.d.ts +0 -103
- package/lib/models/document.d.ts +0 -20
- package/lib/models/faq-client.d.ts +0 -26
- package/lib/models/faq-department.d.ts +0 -26
- package/lib/models/faq.d.ts +0 -38
- package/lib/models/slider.d.ts +0 -39
- package/lib/models/template-client.d.ts +0 -26
- package/lib/models/template-department.d.ts +0 -26
- package/lib/models/template-preview.d.ts +0 -44
- package/lib/models/template.d.ts +0 -59
- package/lib/public-api.d.ts +0 -31
- package/lib/resolvers/document-list-projection.resolve.d.ts +0 -20
- package/lib/resolvers/excluded-columns.resolve.d.ts +0 -13
- package/lib/resolvers/excluded-fields.resolve.d.ts +0 -13
- package/lib/resolvers/form-includes.resolve.d.ts +0 -20
- package/lib/resolvers/form-validation.resolve.d.ts +0 -13
- package/lib/resolvers/list-projection.resolve.d.ts +0 -20
- package/lib/resolvers/settings.resolve.d.ts +0 -15
- package/lib/services/content-variable.service.d.ts +0 -17
- package/lib/services/content.service.d.ts +0 -23
- package/lib/services/document.generic-service.d.ts +0 -9
- package/lib/services/document.service`.d.ts +0 -17
- package/lib/services/faq.service.d.ts +0 -11
- package/lib/services/slider.service.d.ts +0 -11
- package/lib/services/template-doc.service.d.ts +0 -11
- package/lib/services/template-preview.service.d.ts +0 -11
- package/lib/services/template.service.d.ts +0 -11
- package/lib/templates/document-form.template.d.ts +0 -2
- package/public_api.d.ts +0 -1
|
@@ -1,53 +1,45 @@
|
|
|
1
|
-
import * as i5 from '@angular/common';
|
|
2
|
-
import { CommonModule } from '@angular/common';
|
|
3
1
|
import * as i0 from '@angular/core';
|
|
4
|
-
import { Injectable,
|
|
5
|
-
import { MatAutocompleteModule } from '@angular/material/autocomplete';
|
|
6
|
-
import * as i8 from '@angular/material/button';
|
|
7
|
-
import { MatButtonModule } from '@angular/material/button';
|
|
8
|
-
import * as i7$1 from '@angular/material/card';
|
|
9
|
-
import { MatCardModule } from '@angular/material/card';
|
|
10
|
-
import { MatCheckboxModule } from '@angular/material/checkbox';
|
|
11
|
-
import { MatChipsModule } from '@angular/material/chips';
|
|
12
|
-
import * as i4 from '@angular/material/dialog';
|
|
13
|
-
import { MAT_DIALOG_DATA, MatDialogModule } from '@angular/material/dialog';
|
|
14
|
-
import * as i13 from '@angular/material/divider';
|
|
15
|
-
import { MatDividerModule } from '@angular/material/divider';
|
|
16
|
-
import * as i7 from '@angular/material/expansion';
|
|
17
|
-
import { MatExpansionModule } from '@angular/material/expansion';
|
|
18
|
-
import * as i9$1 from '@angular/material/icon';
|
|
19
|
-
import { MatIconModule } from '@angular/material/icon';
|
|
20
|
-
import * as i11$1 from '@angular/material/input';
|
|
21
|
-
import { MatInputModule } from '@angular/material/input';
|
|
22
|
-
import * as i12 from '@angular/material/progress-bar';
|
|
23
|
-
import { MatProgressBarModule } from '@angular/material/progress-bar';
|
|
24
|
-
import { MatSelectModule } from '@angular/material/select';
|
|
25
|
-
import * as i7$2 from '@ctrl/ngx-codemirror';
|
|
26
|
-
import { CodemirrorModule } from '@ctrl/ngx-codemirror';
|
|
27
|
-
import * as i2 from '@messaia/cdk';
|
|
28
|
-
import { prop, required, AuditEntity, Column, FormField, Display, Grid, FormFieldType, Utils, Api, Table, GenericService, GenericReactiveFormComponent, EnumService, AuthHelper, SaveAction, BaseComponent, ServiceLocator, GlobalRoles, VdCommonModule, VdLayoutModule, VdMediaModule, VdSelectModule, VdChipsModule, VdFileModule } from '@messaia/cdk';
|
|
29
|
-
import * as i11 from '@messaia/cdk-base';
|
|
30
|
-
import { DocumentBase, VdDynamicListComponent, VdDynamicFormComponent, DocumentType, VdCdkBaseModule } from '@messaia/cdk-base';
|
|
31
|
-
import * as i10 from '@tinymce/tinymce-angular';
|
|
32
|
-
import { EditorModule } from '@tinymce/tinymce-angular';
|
|
33
|
-
import * as i14 from 'ng2-pdf-viewer';
|
|
34
|
-
import { PdfViewerModule } from 'ng2-pdf-viewer';
|
|
2
|
+
import { Injectable, inject, ViewChild, Component, Directive, Inject, ViewEncapsulation, NgModule } from '@angular/core';
|
|
35
3
|
import * as i3$1 from '@angular/router';
|
|
36
4
|
import { RouterModule } from '@angular/router';
|
|
5
|
+
import * as i2 from '@messaia/cdk';
|
|
6
|
+
import { prop, required, AuditEntity, Column, FormField, Display, Grid, FormFieldType, Utils, Api, Table, GenericService, GenericReactiveFormComponent, EnumService, RxReactiveFormsModule, MatFormFieldEditorDirective, VdLayoutNavComponent, VdLayoutCardOverComponent, VdGenericFormComponent, VdEditorDirective, AuthHelper, SaveAction, VdFileInputComponent, BaseComponent, VdChipsComponent, GlobalRoles } from '@messaia/cdk';
|
|
7
|
+
import { VdAuditComponent, DocumentBase, VdDynamicListComponent, VdDynamicFormComponent, DocumentType } from '@messaia/cdk-base';
|
|
37
8
|
import { ENTER, COMMA } from '@angular/cdk/keycodes';
|
|
9
|
+
import * as i5 from '@angular/common';
|
|
10
|
+
import { CommonModule } from '@angular/common';
|
|
38
11
|
import * as i3 from '@angular/common/http';
|
|
39
12
|
import { HttpEventType, HttpResponse } from '@angular/common/http';
|
|
13
|
+
import * as i6 from '@angular/forms';
|
|
14
|
+
import { ReactiveFormsModule, FormsModule } from '@angular/forms';
|
|
15
|
+
import * as i10 from '@angular/material/button';
|
|
16
|
+
import { MatButtonModule } from '@angular/material/button';
|
|
17
|
+
import * as i8 from '@angular/material/expansion';
|
|
18
|
+
import { MatExpansionModule } from '@angular/material/expansion';
|
|
19
|
+
import * as i9 from '@angular/material/form-field';
|
|
20
|
+
import { MatFormFieldModule } from '@angular/material/form-field';
|
|
21
|
+
import * as i7 from '@tinymce/tinymce-angular';
|
|
22
|
+
import { EditorModule } from '@tinymce/tinymce-angular';
|
|
40
23
|
import { of, map as map$1 } from 'rxjs';
|
|
41
24
|
import { __decorate, __metadata } from 'tslib';
|
|
42
25
|
import { map } from 'rxjs/operators';
|
|
43
|
-
import * as
|
|
44
|
-
import
|
|
26
|
+
import * as i4 from '@angular/material/dialog';
|
|
27
|
+
import { MAT_DIALOG_DATA, MatDialogModule } from '@angular/material/dialog';
|
|
28
|
+
import * as i9$1 from '@ctrl/ngx-codemirror';
|
|
29
|
+
import { CodemirrorModule } from '@ctrl/ngx-codemirror';
|
|
45
30
|
import 'codemirror/addon/edit/closetag';
|
|
46
31
|
import 'codemirror/addon/edit/matchbrackets';
|
|
47
32
|
import 'codemirror/addon/selection/active-line';
|
|
48
33
|
import 'codemirror/mode/htmlmixed/htmlmixed';
|
|
49
34
|
import 'codemirror/mode/javascript/javascript';
|
|
50
35
|
import { saveAs } from 'file-saver';
|
|
36
|
+
import { MatCard } from '@angular/material/card';
|
|
37
|
+
import { MatDivider } from '@angular/material/divider';
|
|
38
|
+
import { MatIcon } from '@angular/material/icon';
|
|
39
|
+
import * as i6$1 from '@angular/material/progress-bar';
|
|
40
|
+
import { MatProgressBarModule } from '@angular/material/progress-bar';
|
|
41
|
+
import * as i8$1 from 'ng2-pdf-viewer';
|
|
42
|
+
import { PdfViewerModule } from 'ng2-pdf-viewer';
|
|
51
43
|
import * as i1 from 'angular-auth-oidc-client';
|
|
52
44
|
|
|
53
45
|
var ContentType;
|
|
@@ -93,12 +85,7 @@ class CmsSettings {
|
|
|
93
85
|
constructor(init) {
|
|
94
86
|
Object.assign(this, init);
|
|
95
87
|
}
|
|
96
|
-
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.0.5", ngImport: i0, type: CmsSettings, deps: "invalid", target: i0.ɵɵFactoryTarget.Injectable });
|
|
97
|
-
static ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "19.0.5", ngImport: i0, type: CmsSettings });
|
|
98
88
|
}
|
|
99
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.0.5", ngImport: i0, type: CmsSettings, decorators: [{
|
|
100
|
-
type: Injectable
|
|
101
|
-
}], ctorParameters: () => [{ type: undefined }] });
|
|
102
89
|
|
|
103
90
|
/**
|
|
104
91
|
* @class
|
|
@@ -383,7 +370,7 @@ __decorate([
|
|
|
383
370
|
content: (x) => x ? Utils.joinArray(x?.clientJoins?.map(y => y.client?.displayName ?? '') ?? []) : undefined,
|
|
384
371
|
display: Grid.Lg,
|
|
385
372
|
maxWidth: 200,
|
|
386
|
-
hide: (_, __, ctx) => !ctx.
|
|
373
|
+
hide: (_, __, ctx) => !ctx.isAdmin || (!ctx.settings?.multitenantable && !ctx.settings?.multiClients),
|
|
387
374
|
}),
|
|
388
375
|
FormField({
|
|
389
376
|
row: 1,
|
|
@@ -458,17 +445,10 @@ class ContentService extends GenericService {
|
|
|
458
445
|
isAliasAvailable(item) {
|
|
459
446
|
return this.create(item, '/isAliasAvailable').pipe(map((x) => x.value));
|
|
460
447
|
}
|
|
461
|
-
|
|
462
|
-
|
|
463
|
-
* @param id
|
|
464
|
-
*/
|
|
465
|
-
duplicate(id) {
|
|
466
|
-
return this.create(null, `/duplicate/${id}`);
|
|
467
|
-
}
|
|
468
|
-
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.0.5", ngImport: i0, type: ContentService, deps: [], target: i0.ɵɵFactoryTarget.Injectable });
|
|
469
|
-
static ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "19.0.5", ngImport: i0, type: ContentService, providedIn: 'root' });
|
|
448
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.0.3", ngImport: i0, type: ContentService, deps: [], target: i0.ɵɵFactoryTarget.Injectable });
|
|
449
|
+
static ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "20.0.3", ngImport: i0, type: ContentService, providedIn: 'root' });
|
|
470
450
|
}
|
|
471
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "
|
|
451
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.0.3", ngImport: i0, type: ContentService, decorators: [{
|
|
472
452
|
type: Injectable,
|
|
473
453
|
args: [{ providedIn: 'root' }]
|
|
474
454
|
}], ctorParameters: () => [] });
|
|
@@ -479,6 +459,12 @@ class ContentFormComponent extends GenericReactiveFormComponent {
|
|
|
479
459
|
httpClient;
|
|
480
460
|
route;
|
|
481
461
|
changeDetectorRef;
|
|
462
|
+
/**
|
|
463
|
+
* Injects the CmsSettings service using Angular's `inject()` function.
|
|
464
|
+
* This allows access to the CmsSettings instance outside of constructor-based dependency injection,
|
|
465
|
+
* commonly used in standalone components or functional-style Angular APIs.
|
|
466
|
+
*/
|
|
467
|
+
settings = inject(CmsSettings);
|
|
482
468
|
/**
|
|
483
469
|
* Router Subscription
|
|
484
470
|
*/
|
|
@@ -499,14 +485,10 @@ class ContentFormComponent extends GenericReactiveFormComponent {
|
|
|
499
485
|
* Separator keys codes
|
|
500
486
|
*/
|
|
501
487
|
separatorKeysCodes = [ENTER, COMMA];
|
|
502
|
-
/**
|
|
503
|
-
* settings: CmsSettings
|
|
504
|
-
*/
|
|
505
|
-
settings = new CmsSettings();
|
|
506
488
|
/**
|
|
507
489
|
* Gets the aliases control
|
|
508
490
|
*/
|
|
509
|
-
get aliasesControl() { return this.form.controls
|
|
491
|
+
get aliasesControl() { return this.form.controls['aliases']; }
|
|
510
492
|
/**
|
|
511
493
|
* A ref to form html element
|
|
512
494
|
*/
|
|
@@ -525,7 +507,6 @@ class ContentFormComponent extends GenericReactiveFormComponent {
|
|
|
525
507
|
this.httpClient = httpClient;
|
|
526
508
|
this.route = route;
|
|
527
509
|
this.changeDetectorRef = changeDetectorRef;
|
|
528
|
-
this.settings = this.getService(CmsSettings);
|
|
529
510
|
if (this.settings?.multitenantable || this.settings?.multiClients) {
|
|
530
511
|
this.include('ClientJoins', true);
|
|
531
512
|
}
|
|
@@ -546,7 +527,6 @@ class ContentFormComponent extends GenericReactiveFormComponent {
|
|
|
546
527
|
this.route.data.subscribe((data) => {
|
|
547
528
|
this.formValidation = data.formValidation;
|
|
548
529
|
});
|
|
549
|
-
console.log('ngOnInit');
|
|
550
530
|
super.ngOnInit();
|
|
551
531
|
}
|
|
552
532
|
/**
|
|
@@ -561,7 +541,7 @@ class ContentFormComponent extends GenericReactiveFormComponent {
|
|
|
561
541
|
*/
|
|
562
542
|
isAliasAvailable() {
|
|
563
543
|
this.service.isAliasAvailable(this.item).subscribe((x) => {
|
|
564
|
-
this.formElement?.
|
|
544
|
+
this.formElement['form']?.controls['alias'].setErrors(x ? null : { 'inUse': true });
|
|
565
545
|
});
|
|
566
546
|
}
|
|
567
547
|
/**
|
|
@@ -715,16 +695,40 @@ class ContentFormComponent extends GenericReactiveFormComponent {
|
|
|
715
695
|
* Cleanup subscriptions when this component is destroyed.
|
|
716
696
|
*/
|
|
717
697
|
ngOnDestroy() {
|
|
698
|
+
super.ngOnDestroy();
|
|
718
699
|
if (this.routeSubscription) {
|
|
719
700
|
this.routeSubscription.unsubscribe();
|
|
720
701
|
}
|
|
721
702
|
}
|
|
722
|
-
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "
|
|
723
|
-
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "
|
|
703
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.0.3", ngImport: i0, type: ContentFormComponent, deps: [{ token: ContentService }, { token: i2.FileService }, { token: i3.HttpClient }, { token: i3$1.ActivatedRoute }, { token: i0.ChangeDetectorRef }], target: i0.ɵɵFactoryTarget.Component });
|
|
704
|
+
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "20.0.3", type: ContentFormComponent, isStandalone: true, selector: "app-content-form", viewQueries: [{ propertyName: "formElement", first: true, predicate: ["form"], descendants: true }, { propertyName: "editorComponent", first: true, predicate: ["editor"], descendants: true }], usesInheritance: true, ngImport: i0, template: "<vd-layout-nav color=\"primary\" [backNavigationRoute]=\"listRoute\" toolbarTitle=\"Content\" i18n-toolbarTitle=\"@@content\" [editMode]=\"isEditMode\" [actions]=\"toolbarActions\" [data]=\"item\" [context]=\"this\">\r\n\t<form *ngIf=\"form\" [formGroup]=\"form\" novalidate (ngSubmit)=\"save()\">\r\n\t\t<vd-layout-card-over class=\"accordion\" cardWidth=\"70\" color=\"primary\" flex>\r\n\t\t\t<mat-accordion [multi]=\"!isEditMode\">\r\n\t\t\t\t<!-- #region Details -->\r\n\t\t\t\t<mat-expansion-panel expanded=\"true\" id=\"details\">\r\n\t\t\t\t\t<mat-expansion-panel-header>\r\n\t\t\t\t\t\t<mat-panel-title i18n=\"@@details\">Details</mat-panel-title>\r\n\t\t\t\t\t</mat-expansion-panel-header>\r\n\t\t\t\t\t<ng-template matExpansionPanelContent>\r\n\t\t\t\t\t\t<vd-generic-form [formGroup]=\"form\" [fieldGroups]=\"fieldGroups\" [context]=\"this\">\r\n\t\t\t\t\t\t\t<ng-template vd-editor let-field=\"field\" let-formGroup=\"formGroup\">\r\n\t\t\t\t\t\t\t\t<mat-form-field [attr.flex]=\"field.flex||0\" layout-margin appearance=\"outline\" flex>\r\n\t\t\t\t\t\t\t\t\t<mat-label>{{field.label}}</mat-label>\r\n\t\t\t\t\t\t\t\t\t<editor [formControlName]=\"field.name\" [init]=\"editorConfig\" tinyMatFormControl flex></editor>\r\n\t\t\t\t\t\t\t\t\t<mat-hint *ngIf=\"field.hint\">{{field.hint}}</mat-hint>\r\n\t\t\t\t\t\t\t\t\t<mat-error *ngFor=\"let errorMessage of formGroup.controls[field.name]['errorMessages']\">{{errorMessage}}</mat-error>\r\n\t\t\t\t\t\t\t\t</mat-form-field>\r\n\t\t\t\t\t\t\t</ng-template>\r\n\t\t\t\t\t\t</vd-generic-form>\r\n\t\t\t\t\t</ng-template>\r\n\t\t\t\t\t<mat-action-row>\r\n\t\t\t\t\t\t<button type=\"submit\" mat-flat-button color=\"primary\" [disabled]=\"isSaving\" i18n=\"@@save\">Save</button>\r\n\t\t\t\t\t\t<button type=\"button\" mat-button *ngIf=\"isEditMode || true\" (click)=\"apply()\" [disabled]=\"isSaving\" i18n=\"@@apply\">Apply</button>\r\n\t\t\t\t\t\t<button type=\"button\" mat-button (click)=\"back()\" i18n=\"@@cancel\">Cancel</button>\r\n\t\t\t\t\t\t<span flex></span>\r\n\t\t\t\t\t</mat-action-row>\r\n\t\t\t\t</mat-expansion-panel>\r\n\t\t\t\t<!-- #endregion -->\r\n\r\n\t\t\t\t<!-- #region Audit -->\r\n\t\t\t\t<mat-expansion-panel id=\"audit\" *ngIf=\"isEditMode\">\r\n\t\t\t\t\t<mat-expansion-panel-header>\r\n\t\t\t\t\t\t<mat-panel-title>\r\n\t\t\t\t\t\t\t<span i18n=\"@@audit\">Audit</span>\r\n\t\t\t\t\t\t</mat-panel-title>\r\n\t\t\t\t\t</mat-expansion-panel-header>\r\n\t\t\t\t\t<ng-template matExpansionPanelContent>\r\n\t\t\t\t\t\t<vd-audit [entity]=\"item\"> </vd-audit>\r\n\t\t\t\t\t</ng-template>\r\n\t\t\t\t\t<mat-action-row>\r\n\t\t\t\t\t\t<button type=\"button\" mat-flat-button color=\"accent\" (click)=\"back()\" i18n=\"@@close\">Close</button>\r\n\t\t\t\t\t\t<span flex></span>\r\n\t\t\t\t\t</mat-action-row>\r\n\t\t\t\t</mat-expansion-panel>\r\n\t\t\t\t<!-- #endregion -->\r\n\t\t\t</mat-accordion>\r\n\t\t</vd-layout-card-over>\r\n\t</form>\r\n</vd-layout-nav>", dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i5.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i5.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "ngmodule", type:
|
|
705
|
+
//-----------------------
|
|
706
|
+
ReactiveFormsModule }, { kind: "directive", type: i6.ɵNgNoValidate, selector: "form:not([ngNoForm]):not([ngNativeValidate])" }, { kind: "directive", type: i6.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i6.NgControlStatusGroup, selector: "[formGroupName],[formArrayName],[ngModelGroup],[formGroup],form:not([ngNoForm]),[ngForm]" }, { kind: "directive", type: i6.FormGroupDirective, selector: "[formGroup]", inputs: ["formGroup"], outputs: ["ngSubmit"], exportAs: ["ngForm"] }, { kind: "directive", type: i6.FormControlName, selector: "[formControlName]", inputs: ["formControlName", "disabled", "ngModel"], outputs: ["ngModelChange"] }, { kind: "ngmodule", type: RxReactiveFormsModule }, { kind: "directive", type: i2.AsyncValidationDirective, selector: "[ngModel],[formControlName],[formControl]", inputs: ["async"] }, { kind: "directive", type: i2.RxwebFormDirective, selector: "[formGroup],[rxwebForm]", inputs: ["formGroup", "rxwebForm"] }, { kind: "directive", type: i2.RxFormControlDirective, selector: "[ngModel],[formControlName],[formControl]", inputs: ["rxalpha", "rxalphaNumeric", "rxascii", "rxcompare", "rxcompose", "rxcontains", "rxcreditCard", "rxdataUri", "rxdifferent", "rxdigit", "rxemail", "rxendsWith", "rxeven", "rxextension", "rxfactor", "rxfileSize", "rxgreaterThanEqualTo", "rxgreaterThan", "rxhexColor", "rxjson", "rxlatitude", "rxlatLong", "rxleapYear", "rxlessThan", "rxlessThanEqualTo", "rxlongitude", "rxlowerCase", "rxmac", "rxmaxDate", "rxmaxLength", "rxmaxNumber", "rxminDate", "rxminLength", "rxminNumber", "rxnumeric", "rxodd", "rxpassword", "rxport", "rxprimeNumber", "rxrequired", "rxrange", "rxrule", "rxstartsWith", "rxtime", "rxupperCase", "rxurl", "rxunique", "rxnotEmpty", "rxcusip", "rxgrid", "rxdate"] }, { kind: "ngmodule", type: EditorModule }, { kind: "component", type: i7.EditorComponent, selector: "editor", inputs: ["cloudChannel", "apiKey", "licenseKey", "init", "id", "initialValue", "outputFormat", "inline", "tagName", "plugins", "toolbar", "modelEvents", "allowedEvents", "ignoreEvents", "disabled"] }, { kind: "ngmodule", type:
|
|
707
|
+
//-----------------------
|
|
708
|
+
MatExpansionModule }, { kind: "directive", type: i8.MatAccordion, selector: "mat-accordion", inputs: ["hideToggle", "displayMode", "togglePosition"], exportAs: ["matAccordion"] }, { kind: "component", type: i8.MatExpansionPanel, selector: "mat-expansion-panel", inputs: ["hideToggle", "togglePosition"], outputs: ["afterExpand", "afterCollapse"], exportAs: ["matExpansionPanel"] }, { kind: "directive", type: i8.MatExpansionPanelActionRow, selector: "mat-action-row" }, { kind: "component", type: i8.MatExpansionPanelHeader, selector: "mat-expansion-panel-header", inputs: ["expandedHeight", "collapsedHeight", "tabIndex"] }, { kind: "directive", type: i8.MatExpansionPanelTitle, selector: "mat-panel-title" }, { kind: "directive", type: i8.MatExpansionPanelContent, selector: "ng-template[matExpansionPanelContent]" }, { kind: "ngmodule", type: MatFormFieldModule }, { kind: "component", type: i9.MatFormField, selector: "mat-form-field", inputs: ["hideRequiredMarker", "color", "floatLabel", "appearance", "subscriptSizing", "hintLabel"], exportAs: ["matFormField"] }, { kind: "directive", type: i9.MatLabel, selector: "mat-label" }, { kind: "directive", type: i9.MatHint, selector: "mat-hint", inputs: ["align", "id"] }, { kind: "directive", type: i9.MatError, selector: "mat-error, [matError]", inputs: ["id"] }, { kind: "ngmodule", type: MatButtonModule }, { kind: "component", type: i10.MatButton, selector: " button[matButton], a[matButton], button[mat-button], button[mat-raised-button], button[mat-flat-button], button[mat-stroked-button], a[mat-button], a[mat-raised-button], a[mat-flat-button], a[mat-stroked-button] ", inputs: ["matButton"], exportAs: ["matButton", "matAnchor"] }, { kind: "directive", type: MatFormFieldEditorDirective, selector: "[tinyMatFormControl]", inputs: ["errorStateMatcher", "disabled", "id", "placeholder", "required", "value"], outputs: ["editorChange"] }, { kind: "component", type:
|
|
709
|
+
//-----------------------
|
|
710
|
+
VdLayoutNavComponent, selector: "vd-layout-nav", inputs: ["toolbarTitle", "editMode", "actions", "data", "context", "hideToolbar", "icon", "logo", "color", "hideToggle", "backNavigationRoute", "navigationRoute"], outputs: ["reload"] }, { kind: "component", type: VdLayoutCardOverComponent, selector: "vd-layout-card-over", inputs: ["cardTitle", "cardSubtitle", "cardWidth", "color"] }, { kind: "component", type: VdGenericFormComponent, selector: "vd-generic-form", inputs: ["formGroup", "classType", "formDefinition", "fieldGroups", "groupName", "fieldSets", "context", "debugValue", "readonly", "separatorKeysCodes"] }, { kind: "directive", type: VdEditorDirective, selector: "[vd-editor]ng-template" }, { kind: "component", type: VdAuditComponent, selector: "vd-audit", inputs: ["entity"] }] });
|
|
724
711
|
}
|
|
725
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "
|
|
712
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.0.3", ngImport: i0, type: ContentFormComponent, decorators: [{
|
|
726
713
|
type: Component,
|
|
727
|
-
args: [{ selector: 'app-content-form',
|
|
714
|
+
args: [{ selector: 'app-content-form', imports: [
|
|
715
|
+
CommonModule,
|
|
716
|
+
//-----------------------
|
|
717
|
+
ReactiveFormsModule,
|
|
718
|
+
RxReactiveFormsModule,
|
|
719
|
+
EditorModule,
|
|
720
|
+
//-----------------------
|
|
721
|
+
MatExpansionModule,
|
|
722
|
+
MatFormFieldModule,
|
|
723
|
+
MatButtonModule,
|
|
724
|
+
MatFormFieldEditorDirective,
|
|
725
|
+
//-----------------------
|
|
726
|
+
VdLayoutNavComponent,
|
|
727
|
+
VdLayoutCardOverComponent,
|
|
728
|
+
VdGenericFormComponent,
|
|
729
|
+
VdEditorDirective,
|
|
730
|
+
VdAuditComponent
|
|
731
|
+
], template: "<vd-layout-nav color=\"primary\" [backNavigationRoute]=\"listRoute\" toolbarTitle=\"Content\" i18n-toolbarTitle=\"@@content\" [editMode]=\"isEditMode\" [actions]=\"toolbarActions\" [data]=\"item\" [context]=\"this\">\r\n\t<form *ngIf=\"form\" [formGroup]=\"form\" novalidate (ngSubmit)=\"save()\">\r\n\t\t<vd-layout-card-over class=\"accordion\" cardWidth=\"70\" color=\"primary\" flex>\r\n\t\t\t<mat-accordion [multi]=\"!isEditMode\">\r\n\t\t\t\t<!-- #region Details -->\r\n\t\t\t\t<mat-expansion-panel expanded=\"true\" id=\"details\">\r\n\t\t\t\t\t<mat-expansion-panel-header>\r\n\t\t\t\t\t\t<mat-panel-title i18n=\"@@details\">Details</mat-panel-title>\r\n\t\t\t\t\t</mat-expansion-panel-header>\r\n\t\t\t\t\t<ng-template matExpansionPanelContent>\r\n\t\t\t\t\t\t<vd-generic-form [formGroup]=\"form\" [fieldGroups]=\"fieldGroups\" [context]=\"this\">\r\n\t\t\t\t\t\t\t<ng-template vd-editor let-field=\"field\" let-formGroup=\"formGroup\">\r\n\t\t\t\t\t\t\t\t<mat-form-field [attr.flex]=\"field.flex||0\" layout-margin appearance=\"outline\" flex>\r\n\t\t\t\t\t\t\t\t\t<mat-label>{{field.label}}</mat-label>\r\n\t\t\t\t\t\t\t\t\t<editor [formControlName]=\"field.name\" [init]=\"editorConfig\" tinyMatFormControl flex></editor>\r\n\t\t\t\t\t\t\t\t\t<mat-hint *ngIf=\"field.hint\">{{field.hint}}</mat-hint>\r\n\t\t\t\t\t\t\t\t\t<mat-error *ngFor=\"let errorMessage of formGroup.controls[field.name]['errorMessages']\">{{errorMessage}}</mat-error>\r\n\t\t\t\t\t\t\t\t</mat-form-field>\r\n\t\t\t\t\t\t\t</ng-template>\r\n\t\t\t\t\t\t</vd-generic-form>\r\n\t\t\t\t\t</ng-template>\r\n\t\t\t\t\t<mat-action-row>\r\n\t\t\t\t\t\t<button type=\"submit\" mat-flat-button color=\"primary\" [disabled]=\"isSaving\" i18n=\"@@save\">Save</button>\r\n\t\t\t\t\t\t<button type=\"button\" mat-button *ngIf=\"isEditMode || true\" (click)=\"apply()\" [disabled]=\"isSaving\" i18n=\"@@apply\">Apply</button>\r\n\t\t\t\t\t\t<button type=\"button\" mat-button (click)=\"back()\" i18n=\"@@cancel\">Cancel</button>\r\n\t\t\t\t\t\t<span flex></span>\r\n\t\t\t\t\t</mat-action-row>\r\n\t\t\t\t</mat-expansion-panel>\r\n\t\t\t\t<!-- #endregion -->\r\n\r\n\t\t\t\t<!-- #region Audit -->\r\n\t\t\t\t<mat-expansion-panel id=\"audit\" *ngIf=\"isEditMode\">\r\n\t\t\t\t\t<mat-expansion-panel-header>\r\n\t\t\t\t\t\t<mat-panel-title>\r\n\t\t\t\t\t\t\t<span i18n=\"@@audit\">Audit</span>\r\n\t\t\t\t\t\t</mat-panel-title>\r\n\t\t\t\t\t</mat-expansion-panel-header>\r\n\t\t\t\t\t<ng-template matExpansionPanelContent>\r\n\t\t\t\t\t\t<vd-audit [entity]=\"item\"> </vd-audit>\r\n\t\t\t\t\t</ng-template>\r\n\t\t\t\t\t<mat-action-row>\r\n\t\t\t\t\t\t<button type=\"button\" mat-flat-button color=\"accent\" (click)=\"back()\" i18n=\"@@close\">Close</button>\r\n\t\t\t\t\t\t<span flex></span>\r\n\t\t\t\t\t</mat-action-row>\r\n\t\t\t\t</mat-expansion-panel>\r\n\t\t\t\t<!-- #endregion -->\r\n\t\t\t</mat-accordion>\r\n\t\t</vd-layout-card-over>\r\n\t</form>\r\n</vd-layout-nav>" }]
|
|
728
732
|
}], ctorParameters: () => [{ type: ContentService }, { type: i2.FileService }, { type: i3.HttpClient }, { type: i3$1.ActivatedRoute }, { type: i0.ChangeDetectorRef }], propDecorators: { formElement: [{
|
|
729
733
|
type: ViewChild,
|
|
730
734
|
args: ['form', { static: false }]
|
|
@@ -836,10 +840,10 @@ class DocumentService extends DocumentGenericService {
|
|
|
836
840
|
sendMail(id) {
|
|
837
841
|
return this.update(`sendMail/${id}`, null);
|
|
838
842
|
}
|
|
839
|
-
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "
|
|
840
|
-
static ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "
|
|
843
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.0.3", ngImport: i0, type: DocumentService, deps: [], target: i0.ɵɵFactoryTarget.Injectable });
|
|
844
|
+
static ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "20.0.3", ngImport: i0, type: DocumentService, providedIn: 'root' });
|
|
841
845
|
}
|
|
842
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "
|
|
846
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.0.3", ngImport: i0, type: DocumentService, decorators: [{
|
|
843
847
|
type: Injectable,
|
|
844
848
|
args: [{ providedIn: 'root' }]
|
|
845
849
|
}], ctorParameters: () => [] });
|
|
@@ -940,10 +944,10 @@ class DocumentFormBaseComponent extends GenericReactiveFormComponent {
|
|
|
940
944
|
departmentId: this.currentUser?.departmentId
|
|
941
945
|
}), this.data || {}));
|
|
942
946
|
}
|
|
943
|
-
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "
|
|
944
|
-
static ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "
|
|
947
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.0.3", ngImport: i0, type: DocumentFormBaseComponent, deps: "invalid", target: i0.ɵɵFactoryTarget.Directive });
|
|
948
|
+
static ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "20.0.3", type: DocumentFormBaseComponent, isStandalone: true, usesInheritance: true, ngImport: i0 });
|
|
945
949
|
}
|
|
946
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "
|
|
950
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.0.3", ngImport: i0, type: DocumentFormBaseComponent, decorators: [{
|
|
947
951
|
type: Directive
|
|
948
952
|
}], ctorParameters: () => [{ type: i0.Type }, { type: undefined }, { type: i2.FileService }, { type: i4.MatDialogRef }, { type: i3$1.ActivatedRoute }, { type: i0.ChangeDetectorRef }, { type: undefined }] });
|
|
949
953
|
|
|
@@ -972,15 +976,22 @@ class DocumentDialogComponent extends DocumentFormBaseComponent {
|
|
|
972
976
|
onBeforeFormBuild() {
|
|
973
977
|
this.item.isPublic = true;
|
|
974
978
|
}
|
|
975
|
-
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "
|
|
976
|
-
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "
|
|
979
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.0.3", ngImport: i0, type: DocumentDialogComponent, deps: [{ token: DocumentService }, { token: i2.FileService }, { token: i3$1.ActivatedRoute }, { token: i0.ChangeDetectorRef }, { token: i4.MatDialogRef }, { token: MAT_DIALOG_DATA }], target: i0.ɵɵFactoryTarget.Component });
|
|
980
|
+
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "20.0.3", type: DocumentDialogComponent, isStandalone: true, selector: "document-dialog", usesInheritance: true, ngImport: i0, template: "\n <div mat-dialog-title class=\"mat-headline-6\" i18n=\"@@newDocument\">New document</div>\n <form *ngIf=\"form\" [formGroup]=\"form\" (ngSubmit)=\"save()\">\n <vd-generic-form [formGroup]=\"form\" [fieldGroups]=\"fieldGroups\" [context]=\"this\">\n <ng-template vd-file let-field=\"field\" let-formGroup=\"formGroup\">\n <mat-form-field [attr.flex]=\"field.flex||0\" layout-margin appearance=\"outline\">\n <mat-label>{{field.header}}</mat-label>\n <div vd-file-input [formControlName]=\"field.name\" (select)=\"upload($event)\" [accept]=\"field.fileExtensions\"></div>\n </mat-form-field>\n </ng-template>\n </vd-generic-form>\n <div mat-dialog-actions class=\"pad-top\">\n <button type=\"submit\" mat-flat-button [disabled]=\"isSaving\" color=\"primary\" i18n=\"@@save\">Save</button>\n <button type=\"button\" mat-button (click)=\"cancel()\" i18n=\"@@cancel\">Cancel</button>\n </div>\n </form>", isInline: true, dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i5.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "ngmodule", type: ReactiveFormsModule }, { kind: "directive", type: i6.ɵNgNoValidate, selector: "form:not([ngNoForm]):not([ngNativeValidate])" }, { kind: "directive", type: i6.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i6.NgControlStatusGroup, selector: "[formGroupName],[formArrayName],[ngModelGroup],[formGroup],form:not([ngNoForm]),[ngForm]" }, { kind: "directive", type: i6.FormGroupDirective, selector: "[formGroup]", inputs: ["formGroup"], outputs: ["ngSubmit"], exportAs: ["ngForm"] }, { kind: "directive", type: i6.FormControlName, selector: "[formControlName]", inputs: ["formControlName", "disabled", "ngModel"], outputs: ["ngModelChange"] }, { kind: "ngmodule", type: MatDialogModule }, { kind: "directive", type: i4.MatDialogTitle, selector: "[mat-dialog-title], [matDialogTitle]", inputs: ["id"], exportAs: ["matDialogTitle"] }, { kind: "directive", type: i4.MatDialogActions, selector: "[mat-dialog-actions], mat-dialog-actions, [matDialogActions]", inputs: ["align"] }, { kind: "ngmodule", type: MatFormFieldModule }, { kind: "component", type: i9.MatFormField, selector: "mat-form-field", inputs: ["hideRequiredMarker", "color", "floatLabel", "appearance", "subscriptSizing", "hintLabel"], exportAs: ["matFormField"] }, { kind: "directive", type: i9.MatLabel, selector: "mat-label" }, { kind: "component", type: VdGenericFormComponent, selector: "vd-generic-form", inputs: ["formGroup", "classType", "formDefinition", "fieldGroups", "groupName", "fieldSets", "context", "debugValue", "readonly", "separatorKeysCodes"] }, { kind: "component", type: VdFileInputComponent, selector: "[vd-file-input]", inputs: ["accept", "placeholder", "required", "multiple", "disabled", "errorState"], outputs: ["select", "clear"] }] });
|
|
977
981
|
}
|
|
978
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "
|
|
982
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.0.3", ngImport: i0, type: DocumentDialogComponent, decorators: [{
|
|
979
983
|
type: Component,
|
|
980
984
|
args: [{
|
|
981
985
|
selector: 'document-dialog',
|
|
982
986
|
template: DocumentFormTemplate,
|
|
983
|
-
|
|
987
|
+
imports: [
|
|
988
|
+
CommonModule,
|
|
989
|
+
ReactiveFormsModule,
|
|
990
|
+
MatDialogModule,
|
|
991
|
+
MatFormFieldModule,
|
|
992
|
+
VdGenericFormComponent,
|
|
993
|
+
VdFileInputComponent
|
|
994
|
+
]
|
|
984
995
|
}]
|
|
985
996
|
}], ctorParameters: () => [{ type: DocumentService }, { type: i2.FileService }, { type: i3$1.ActivatedRoute }, { type: i0.ChangeDetectorRef }, { type: i4.MatDialogRef }, { type: Document, decorators: [{
|
|
986
997
|
type: Inject,
|
|
@@ -1332,32 +1343,32 @@ class TemplatePreview {
|
|
|
1332
1343
|
}
|
|
1333
1344
|
}
|
|
1334
1345
|
|
|
1335
|
-
class
|
|
1346
|
+
class TemplateService extends GenericService {
|
|
1336
1347
|
/**
|
|
1337
1348
|
* Constructor
|
|
1338
1349
|
*/
|
|
1339
1350
|
constructor() {
|
|
1340
|
-
super('
|
|
1351
|
+
super('template');
|
|
1341
1352
|
}
|
|
1342
|
-
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "
|
|
1343
|
-
static ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "
|
|
1353
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.0.3", ngImport: i0, type: TemplateService, deps: [], target: i0.ɵɵFactoryTarget.Injectable });
|
|
1354
|
+
static ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "20.0.3", ngImport: i0, type: TemplateService, providedIn: 'root' });
|
|
1344
1355
|
}
|
|
1345
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "
|
|
1356
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.0.3", ngImport: i0, type: TemplateService, decorators: [{
|
|
1346
1357
|
type: Injectable,
|
|
1347
1358
|
args: [{ providedIn: 'root' }]
|
|
1348
1359
|
}], ctorParameters: () => [] });
|
|
1349
1360
|
|
|
1350
|
-
class
|
|
1361
|
+
class TemplateDocService extends GenericService {
|
|
1351
1362
|
/**
|
|
1352
1363
|
* Constructor
|
|
1353
1364
|
*/
|
|
1354
1365
|
constructor() {
|
|
1355
|
-
super('
|
|
1366
|
+
super('templateDoc');
|
|
1356
1367
|
}
|
|
1357
|
-
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "
|
|
1358
|
-
static ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "
|
|
1368
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.0.3", ngImport: i0, type: TemplateDocService, deps: [], target: i0.ɵɵFactoryTarget.Injectable });
|
|
1369
|
+
static ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "20.0.3", ngImport: i0, type: TemplateDocService, providedIn: 'root' });
|
|
1359
1370
|
}
|
|
1360
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "
|
|
1371
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.0.3", ngImport: i0, type: TemplateDocService, decorators: [{
|
|
1361
1372
|
type: Injectable,
|
|
1362
1373
|
args: [{ providedIn: 'root' }]
|
|
1363
1374
|
}], ctorParameters: () => [] });
|
|
@@ -1369,10 +1380,10 @@ class TemplatePreviewService extends GenericService {
|
|
|
1369
1380
|
constructor() {
|
|
1370
1381
|
super('templatePreview');
|
|
1371
1382
|
}
|
|
1372
|
-
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "
|
|
1373
|
-
static ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "
|
|
1383
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.0.3", ngImport: i0, type: TemplatePreviewService, deps: [], target: i0.ɵɵFactoryTarget.Injectable });
|
|
1384
|
+
static ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "20.0.3", ngImport: i0, type: TemplatePreviewService, providedIn: 'root' });
|
|
1374
1385
|
}
|
|
1375
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "
|
|
1386
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.0.3", ngImport: i0, type: TemplatePreviewService, decorators: [{
|
|
1376
1387
|
type: Injectable,
|
|
1377
1388
|
args: [{ providedIn: 'root' }]
|
|
1378
1389
|
}], ctorParameters: () => [] });
|
|
@@ -1536,12 +1547,22 @@ class TemplatePreviewDialogComponent extends BaseComponent {
|
|
|
1536
1547
|
this.dialogRef.removePanelClass('full-screen');
|
|
1537
1548
|
}
|
|
1538
1549
|
}
|
|
1539
|
-
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "
|
|
1540
|
-
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "19.0.5", type: TemplatePreviewDialogComponent, isStandalone: false, selector: "app-template-preview", viewQueries: [{ propertyName: "iframeRef", first: true, predicate: ["iframeRef"], descendants: true }, { propertyName: "emailModel", first: true, predicate: ["email"], descendants: true }], usesInheritance: true, ngImport: i0, template: "<div mat-dialog-title>\r\n <span i18n=\"@@templatePreview\">Template preview</span>\r\n <span flex></span>\r\n <div *ngIf=\"data.type == TemplateType.Pdf && pdfSrc ||true\">\r\n <a mat-icon-button (click)=\"download()\">\r\n <mat-icon fontSet=\"material-symbols-outlined\">download</mat-icon>\r\n </a>\r\n <a mat-icon-button (click)=\"zoomIn()\">\r\n <mat-icon fontSet=\"material-symbols-outlined\">zoom_in</mat-icon>\r\n </a>\r\n <a mat-icon-button (click)=\"zoomOut()\">\r\n <mat-icon fontSet=\"material-symbols-outlined\">zoom_out</mat-icon>\r\n </a>\r\n <a mat-icon-button (click)=\"toggleMaximize()\" class=\"maximize-button\">\r\n <mat-icon>{{ isMaximized ? 'fullscreen_exit' : 'fullscreen' }}</mat-icon>\r\n </a>\r\n </div>\r\n</div>\r\n<form #form=\"ngForm\" novalidate layout=\"column\" flex>\r\n <!-- #region Entity -->\r\n <div layout=\"row\" flex *ngIf=\"data.endpoint\">\r\n <mat-form-field flex layout-margin>\r\n <mat-label>{{data.entityName}}</mat-label>\r\n <vd-chips [(ngModel)]=\"data.entityId\" [endpoint]=\"data.endpoint\" [params]=\"{sortBy: 'id'}\" text=\"displayName\" name=\"entityId\" #entityId=\"ngModel\" [placeholder]=\"data.entityName??''\" required flex>\r\n <ng-template vd-chip let-entity=\"chip\">\r\n <span>{{entity[data.displayName??'']}}</span>\r\n </ng-template>\r\n <ng-template vd-autocomplete-option let-entity=\"option\">\r\n <span>{{entity[data.displayName??'']}}</span>\r\n </ng-template>\r\n </vd-chips>\r\n <mat-error *ngIf=\"entityId.errors?.required\"><span>{{data.entityName}}</span><span i18n=\"@@isRequired\"> is required</span></mat-error>\r\n </mat-form-field>\r\n </div>\r\n <!-- #endregion -->\r\n\r\n <div layout=\"column\" layout-gt-sm=\"row\" class=\"push-bottom\" flex *ngIf=\"isLoading\">\r\n <div flex layout-margin>\r\n <div class=\"push-bottom-sm\" i18n=\"@@pleaseWait\">Please Wait...</div>\r\n <mat-progress-bar mode=\"indeterminate\"></mat-progress-bar>\r\n </div>\r\n </div>\r\n\r\n <!-- #region PDF Content -->\r\n <mat-card *ngIf=\"data.type == TemplateType.Pdf\" flex>\r\n <pdf-viewer [src]=\"pdfSrc\" *ngIf=\"data.type == TemplateType.Pdf && pdfSrc\" [render-text]=\"true\" [zoom]=\"zoom\" [zoom-scale]=\"zoomScale\" [show-borders]=\"true\" [original-size]=\"false\" [autoresize]=\"true\"></pdf-viewer>\r\n </mat-card>\r\n <!-- #region Content -->\r\n\r\n <div *ngIf=\"data.type != TemplateType.Pdf\" layout=\"column\" class=\"pad-top-none\" layout-padding margin-layout flex>\r\n <!-- #region Content -->\r\n <div class=\"pad-top-none\" layout-padding margin-layout flex>\r\n <iframe #iframeRef frameborder=\"0\"></iframe>\r\n </div>\r\n <!-- #endregion -->\r\n\r\n <!-- #region Email-->\r\n <div layout-gt-sm=\"row\" layout=\"column\" class=\"pad-top\">\r\n <mat-form-field flex layout-margin>\r\n <mat-label i18n=\"@@email\">Email</mat-label>\r\n <input matInput type=\"email\" name=\"email\" [(ngModel)]=\"data.email\" #email=\"ngModel\" email placeholder=\"Email\" i18n-placeholder=\"@@email\">\r\n <mat-error *ngIf=\"email.errors?.required\"><span i18n=\"@@email\">Email</span><span i18n=\"@@isRequired\"> is required</span></mat-error>\r\n <mat-error *ngIf=\"!email.errors?.required && email.errors?.email\"><span i18n=\"@@email\">Email</span><span i18n=\"@@isInvalid\"> is invalid</span></mat-error>\r\n </mat-form-field>\r\n </div>\r\n <!-- #endregion -->\r\n </div>\r\n <mat-divider></mat-divider>\r\n <div mat-dialog-actions class=\"pad-left\">\r\n <button type=\"button\" mat-flat-button color=\"primary\" (click)=\"cancel()\" [autofocus]=\"true\" i18n=\"@@close\">Close</button>\r\n <button type=\"button\" mat-flat-button (click)=\"sendMail()\" [disabled]=\"data.email == undefined || !emailModel?.valid\" i18n=\"@@sendMail\">Send mail</button>\r\n </div>\r\n</form>", styles: [".content{overflow:scroll;min-height:200px;max-height:500px;border:1px solid #e5e5e5;border-radius:4px;padding:8px}iframe{width:100%;height:100%;min-height:200px;border:1px solid #e5e5e5;border-radius:4px}pdf-viewer{display:block;margin-left:-16px;width:calc(100% + 32px);height:calc(100vh - 170px);background:#dbdbdb}.mat-mdc-dialog-title{display:flex;padding:8px 12px;align-items:center}.dialog-content{width:100%;height:100%;box-sizing:border-box}\n"], dependencies: [{ kind: "directive", type: i5.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i6.ɵNgNoValidate, selector: "form:not([ngNoForm]):not([ngNativeValidate])" }, { kind: "directive", type: i6.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: i6.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i6.NgControlStatusGroup, selector: "[formGroupName],[formArrayName],[ngModelGroup],[formGroup],form:not([ngNoForm]),[ngForm]" }, { kind: "directive", type: i6.RequiredValidator, selector: ":not([type=checkbox])[required][formControlName],:not([type=checkbox])[required][formControl],:not([type=checkbox])[required][ngModel]", inputs: ["required"] }, { kind: "directive", type: i6.EmailValidator, selector: "[email][formControlName],[email][formControl],[email][ngModel]", inputs: ["email"] }, { kind: "directive", type: i6.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { kind: "directive", type: i6.NgForm, selector: "form:not([ngNoForm]):not([formGroup]),ng-form,[ngForm]", inputs: ["ngFormOptions"], outputs: ["ngSubmit"], exportAs: ["ngForm"] }, { kind: "directive", type: i2.AsyncValidationDirective, selector: "[ngModel],[formControlName],[formControl]", inputs: ["async"] }, { kind: "directive", type: i2.RxFormControlDirective, selector: "[ngModel],[formControlName],[formControl]", inputs: ["rxalpha", "rxalphaNumeric", "rxascii", "rxcompare", "rxcompose", "rxcontains", "rxcreditCard", "rxdataUri", "rxdifferent", "rxdigit", "rxemail", "rxendsWith", "rxeven", "rxextension", "rxfactor", "rxfileSize", "rxgreaterThanEqualTo", "rxgreaterThan", "rxhexColor", "rxjson", "rxlatitude", "rxlatLong", "rxleapYear", "rxlessThan", "rxlessThanEqualTo", "rxlongitude", "rxlowerCase", "rxmac", "rxmaxDate", "rxmaxLength", "rxmaxNumber", "rxminDate", "rxminLength", "rxminNumber", "rxnumeric", "rxodd", "rxpassword", "rxport", "rxprimeNumber", "rxrequired", "rxrange", "rxrule", "rxstartsWith", "rxtime", "rxupperCase", "rxurl", "rxunique", "rxnotEmpty", "rxcusip", "rxgrid", "rxdate"] }, { kind: "component", type: i7$1.MatCard, selector: "mat-card", inputs: ["appearance"], exportAs: ["matCard"] }, { 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.MatIconAnchor, selector: "a[mat-icon-button]", exportAs: ["matButton", "matAnchor"] }, { kind: "component", type: i9$1.MatIcon, selector: "mat-icon", inputs: ["color", "inline", "svgIcon", "fontSet", "fontIcon"], exportAs: ["matIcon"] }, { kind: "component", type: i9.MatFormField, selector: "mat-form-field", inputs: ["hideRequiredMarker", "color", "floatLabel", "appearance", "subscriptSizing", "hintLabel"], exportAs: ["matFormField"] }, { kind: "directive", type: i9.MatLabel, selector: "mat-label" }, { kind: "directive", type: i9.MatError, selector: "mat-error, [matError]", inputs: ["id"] }, { kind: "directive", type: i11$1.MatInput, selector: "input[matInput], textarea[matInput], select[matNativeControl], input[matNativeControl], textarea[matNativeControl]", inputs: ["disabled", "id", "placeholder", "name", "required", "type", "errorStateMatcher", "aria-describedby", "value", "readonly", "disabledInteractive"], exportAs: ["matInput"] }, { kind: "directive", type: i2.EmptyStringResetDirective, selector: "[ngModel],[formControlName],[formControl]" }, { kind: "directive", type: i2.MatFormFieldReadonlyDirective, selector: "mat-form-field" }, { kind: "directive", type: i2.NativeElementInjectorDirective, selector: "[ngModel], [formControl], [formControlName]" }, { kind: "component", type: i2.VdChipsComponent, selector: "vd-chips", inputs: ["classType", "chips", "endpoint", "params", "projection", "paginated", "customValue", "context", "key", "searchField", "searchFields", "filters", "removable", "selectFirst", "debounce", "autocompleteCssClass", "suffixButtons"], outputs: ["initSelect", "selected", "cleared", "launch", "chipFocus"] }, { kind: "directive", type: i2.VdAutocompleteOptionDirective, selector: "[vd-autocomplete-option]ng-template" }, { kind: "directive", type: i2.VdChipDirective, selector: "[vd-chip]ng-template" }, { kind: "directive", type: i4.MatDialogTitle, selector: "[mat-dialog-title], [matDialogTitle]", inputs: ["id"], exportAs: ["matDialogTitle"] }, { kind: "directive", type: i4.MatDialogActions, selector: "[mat-dialog-actions], mat-dialog-actions, [matDialogActions]", inputs: ["align"] }, { kind: "component", type: i12.MatProgressBar, selector: "mat-progress-bar", inputs: ["color", "value", "bufferValue", "mode"], outputs: ["animationEnd"], exportAs: ["matProgressBar"] }, { kind: "component", type: i13.MatDivider, selector: "mat-divider", inputs: ["vertical", "inset"] }, { kind: "component", type: i14.PdfViewerComponent, selector: "pdf-viewer", inputs: ["src", "c-maps-url", "page", "render-text", "render-text-mode", "original-size", "show-all", "stick-to-page", "zoom", "zoom-scale", "rotation", "external-link-target", "autoresize", "fit-to-page", "show-borders"], outputs: ["after-load-complete", "page-rendered", "pages-initialized", "text-layer-rendered", "error", "on-progress", "pageChange"] }] });
|
|
1550
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.0.3", ngImport: i0, type: TemplatePreviewDialogComponent, deps: [{ token: TemplatePreviewService }, { token: i4.MatDialogRef }, { token: MAT_DIALOG_DATA }, { token: i3$1.ActivatedRoute }, { token: i0.ChangeDetectorRef }], target: i0.ɵɵFactoryTarget.Component });
|
|
1551
|
+
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "20.0.3", type: TemplatePreviewDialogComponent, isStandalone: true, selector: "app-template-preview", viewQueries: [{ propertyName: "iframeRef", first: true, predicate: ["iframeRef"], descendants: true }, { propertyName: "emailModel", first: true, predicate: ["email"], descendants: true }], usesInheritance: true, ngImport: i0, template: "<div mat-dialog-title>\r\n <span i18n=\"@@templatePreview\">Template preview</span>\r\n <span flex></span>\r\n <div *ngIf=\"data.type == TemplateType.Pdf && pdfSrc ||true\">\r\n <a mat-icon-button (click)=\"download()\">\r\n <mat-icon fontSet=\"material-symbols-outlined\">download</mat-icon>\r\n </a>\r\n <a mat-icon-button (click)=\"zoomIn()\">\r\n <mat-icon fontSet=\"material-symbols-outlined\">zoom_in</mat-icon>\r\n </a>\r\n <a mat-icon-button (click)=\"zoomOut()\">\r\n <mat-icon fontSet=\"material-symbols-outlined\">zoom_out</mat-icon>\r\n </a>\r\n <a mat-icon-button (click)=\"toggleMaximize()\" class=\"maximize-button\">\r\n <mat-icon>{{ isMaximized ? 'fullscreen_exit' : 'fullscreen' }}</mat-icon>\r\n </a>\r\n </div>\r\n</div>\r\n<form #form=\"ngForm\" novalidate layout=\"column\" flex>\r\n <!-- #region Entity -->\r\n <div layout=\"row\" flex *ngIf=\"data.endpoint\">\r\n <mat-form-field flex layout-margin>\r\n <mat-label>{{data.entityName}}</mat-label>\r\n <vd-chips [(ngModel)]=\"data.entityId\" [endpoint]=\"data.endpoint\" [params]=\"{sortBy: 'id'}\" text=\"displayName\" name=\"entityId\" #entityId=\"ngModel\" [placeholder]=\"data.entityName??''\" required flex>\r\n <ng-template vd-chip let-entity=\"chip\">\r\n <span>{{entity[data.displayName??'']}}</span>\r\n </ng-template>\r\n <ng-template vd-autocomplete-option let-entity=\"option\">\r\n <span>{{entity[data.displayName??'']}}</span>\r\n </ng-template>\r\n </vd-chips>\r\n <mat-error *ngIf=\"entityId.errors!['required']\"><span>{{data.entityName}}</span><span i18n=\"@@isRequired\"> is required</span></mat-error>\r\n </mat-form-field>\r\n </div>\r\n <!-- #endregion -->\r\n\r\n <div layout=\"column\" layout-gt-sm=\"row\" class=\"push-bottom\" flex *ngIf=\"isLoading\">\r\n <div flex layout-margin>\r\n <div class=\"push-bottom-sm\" i18n=\"@@pleaseWait\">Please Wait...</div>\r\n <mat-progress-bar mode=\"indeterminate\"></mat-progress-bar>\r\n </div>\r\n </div>\r\n\r\n <!-- #region PDF Content -->\r\n <mat-card *ngIf=\"data.type == TemplateType.Pdf\" flex>\r\n <pdf-viewer [src]=\"pdfSrc\" *ngIf=\"data.type == TemplateType.Pdf && pdfSrc\" [render-text]=\"true\" [zoom]=\"zoom\" [zoom-scale]=\"zoomScale\" [show-borders]=\"true\" [original-size]=\"false\" [autoresize]=\"true\"></pdf-viewer>\r\n </mat-card>\r\n <!-- #region Content -->\r\n\r\n <div *ngIf=\"data.type != TemplateType.Pdf\" layout=\"column\" class=\"pad-top-none\" layout-padding margin-layout flex>\r\n <!-- #region Content -->\r\n <div class=\"pad-top-none\" layout-padding margin-layout flex>\r\n <iframe #iframeRef frameborder=\"0\"></iframe>\r\n </div>\r\n <!-- #endregion -->\r\n\r\n <!-- #region Email-->\r\n <div layout-gt-sm=\"row\" layout=\"column\" class=\"pad-top\">\r\n <mat-form-field flex layout-margin>\r\n <mat-label i18n=\"@@email\">Email</mat-label>\r\n <input matInput type=\"email\" name=\"email\" [(ngModel)]=\"data.email\" #email=\"ngModel\" email placeholder=\"Email\" i18n-placeholder=\"@@email\">\r\n <mat-error *ngIf=\"email.errors && email.errors!['required']\"><span i18n=\"@@email\">Email</span><span i18n=\"@@isRequired\"> is required</span></mat-error>\r\n <mat-error *ngIf=\"!email.errors!['required'] && email.errors!['email']\"><span i18n=\"@@email\">Email</span><span i18n=\"@@isInvalid\"> is invalid</span></mat-error>\r\n </mat-form-field>\r\n </div>\r\n <!-- #endregion -->\r\n </div>\r\n <mat-divider></mat-divider>\r\n <div mat-dialog-actions class=\"pad-left\">\r\n <button type=\"button\" mat-flat-button color=\"primary\" (click)=\"cancel()\" [autofocus]=\"true\" i18n=\"@@close\">Close</button>\r\n <button type=\"button\" mat-flat-button (click)=\"sendMail()\" [disabled]=\"data.email == undefined || !emailModel?.valid\" i18n=\"@@sendMail\">Send mail</button>\r\n </div>\r\n</form>", styles: [".content{overflow:scroll;min-height:200px;max-height:500px;border:1px solid #e5e5e5;border-radius:4px;padding:8px}iframe{width:100%;height:100%;min-height:200px;border:1px solid #e5e5e5;border-radius:4px}pdf-viewer{display:block;margin-left:-16px;width:calc(100% + 32px);height:calc(100vh - 170px);background:#dbdbdb}.mat-mdc-dialog-title{display:flex;padding:8px 12px;align-items:center}.dialog-content{width:100%;height:100%;box-sizing:border-box}\n"], dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i5.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: MatIcon, selector: "mat-icon", inputs: ["color", "inline", "svgIcon", "fontSet", "fontIcon"], exportAs: ["matIcon"] }, { kind: "ngmodule", type: MatFormFieldModule }, { kind: "component", type: i9.MatFormField, selector: "mat-form-field", inputs: ["hideRequiredMarker", "color", "floatLabel", "appearance", "subscriptSizing", "hintLabel"], exportAs: ["matFormField"] }, { kind: "directive", type: i9.MatLabel, selector: "mat-label" }, { kind: "directive", type: i9.MatError, selector: "mat-error, [matError]", inputs: ["id"] }, { kind: "ngmodule", type: MatProgressBarModule }, { kind: "component", type: i6$1.MatProgressBar, selector: "mat-progress-bar", inputs: ["color", "value", "bufferValue", "mode"], outputs: ["animationEnd"], exportAs: ["matProgressBar"] }, { kind: "component", type: MatDivider, selector: "mat-divider", inputs: ["vertical", "inset"] }, { kind: "component", type: MatCard, selector: "mat-card", inputs: ["appearance"], exportAs: ["matCard"] }, { kind: "component", type: VdChipsComponent, selector: "vd-chips", inputs: ["classType", "chips", "endpoint", "params", "projection", "paginated", "customValue", "context", "key", "searchField", "searchFields", "filters", "removable", "selectFirst", "debounce", "autocompleteCssClass", "suffixButtons"], outputs: ["initSelect", "selected", "cleared", "launch", "chipFocus"] }, { kind: "ngmodule", type: FormsModule }, { kind: "directive", type: i6.ɵNgNoValidate, selector: "form:not([ngNoForm]):not([ngNativeValidate])" }, { kind: "directive", type: i6.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: i6.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i6.NgControlStatusGroup, selector: "[formGroupName],[formArrayName],[ngModelGroup],[formGroup],form:not([ngNoForm]),[ngForm]" }, { kind: "directive", type: i6.RequiredValidator, selector: ":not([type=checkbox])[required][formControlName],:not([type=checkbox])[required][formControl],:not([type=checkbox])[required][ngModel]", inputs: ["required"] }, { kind: "directive", type: i6.EmailValidator, selector: "[email][formControlName],[email][formControl],[email][ngModel]", inputs: ["email"] }, { kind: "directive", type: i6.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { kind: "directive", type: i6.NgForm, selector: "form:not([ngNoForm]):not([formGroup]),ng-form,[ngForm]", inputs: ["ngFormOptions"], outputs: ["ngSubmit"], exportAs: ["ngForm"] }, { kind: "ngmodule", type: PdfViewerModule }, { kind: "component", type: i8$1.PdfViewerComponent, selector: "pdf-viewer", inputs: ["src", "c-maps-url", "page", "render-text", "render-text-mode", "original-size", "show-all", "stick-to-page", "zoom", "zoom-scale", "rotation", "external-link-target", "autoresize", "fit-to-page", "show-borders"], outputs: ["after-load-complete", "page-rendered", "pages-initialized", "text-layer-rendered", "error", "on-progress", "pageChange"] }] });
|
|
1541
1552
|
}
|
|
1542
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "
|
|
1553
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.0.3", ngImport: i0, type: TemplatePreviewDialogComponent, decorators: [{
|
|
1543
1554
|
type: Component,
|
|
1544
|
-
args: [{ selector: 'app-template-preview',
|
|
1555
|
+
args: [{ selector: 'app-template-preview', imports: [
|
|
1556
|
+
CommonModule,
|
|
1557
|
+
MatIcon,
|
|
1558
|
+
MatFormFieldModule,
|
|
1559
|
+
MatProgressBarModule,
|
|
1560
|
+
MatDivider,
|
|
1561
|
+
MatCard,
|
|
1562
|
+
VdChipsComponent,
|
|
1563
|
+
FormsModule,
|
|
1564
|
+
PdfViewerModule
|
|
1565
|
+
], template: "<div mat-dialog-title>\r\n <span i18n=\"@@templatePreview\">Template preview</span>\r\n <span flex></span>\r\n <div *ngIf=\"data.type == TemplateType.Pdf && pdfSrc ||true\">\r\n <a mat-icon-button (click)=\"download()\">\r\n <mat-icon fontSet=\"material-symbols-outlined\">download</mat-icon>\r\n </a>\r\n <a mat-icon-button (click)=\"zoomIn()\">\r\n <mat-icon fontSet=\"material-symbols-outlined\">zoom_in</mat-icon>\r\n </a>\r\n <a mat-icon-button (click)=\"zoomOut()\">\r\n <mat-icon fontSet=\"material-symbols-outlined\">zoom_out</mat-icon>\r\n </a>\r\n <a mat-icon-button (click)=\"toggleMaximize()\" class=\"maximize-button\">\r\n <mat-icon>{{ isMaximized ? 'fullscreen_exit' : 'fullscreen' }}</mat-icon>\r\n </a>\r\n </div>\r\n</div>\r\n<form #form=\"ngForm\" novalidate layout=\"column\" flex>\r\n <!-- #region Entity -->\r\n <div layout=\"row\" flex *ngIf=\"data.endpoint\">\r\n <mat-form-field flex layout-margin>\r\n <mat-label>{{data.entityName}}</mat-label>\r\n <vd-chips [(ngModel)]=\"data.entityId\" [endpoint]=\"data.endpoint\" [params]=\"{sortBy: 'id'}\" text=\"displayName\" name=\"entityId\" #entityId=\"ngModel\" [placeholder]=\"data.entityName??''\" required flex>\r\n <ng-template vd-chip let-entity=\"chip\">\r\n <span>{{entity[data.displayName??'']}}</span>\r\n </ng-template>\r\n <ng-template vd-autocomplete-option let-entity=\"option\">\r\n <span>{{entity[data.displayName??'']}}</span>\r\n </ng-template>\r\n </vd-chips>\r\n <mat-error *ngIf=\"entityId.errors!['required']\"><span>{{data.entityName}}</span><span i18n=\"@@isRequired\"> is required</span></mat-error>\r\n </mat-form-field>\r\n </div>\r\n <!-- #endregion -->\r\n\r\n <div layout=\"column\" layout-gt-sm=\"row\" class=\"push-bottom\" flex *ngIf=\"isLoading\">\r\n <div flex layout-margin>\r\n <div class=\"push-bottom-sm\" i18n=\"@@pleaseWait\">Please Wait...</div>\r\n <mat-progress-bar mode=\"indeterminate\"></mat-progress-bar>\r\n </div>\r\n </div>\r\n\r\n <!-- #region PDF Content -->\r\n <mat-card *ngIf=\"data.type == TemplateType.Pdf\" flex>\r\n <pdf-viewer [src]=\"pdfSrc\" *ngIf=\"data.type == TemplateType.Pdf && pdfSrc\" [render-text]=\"true\" [zoom]=\"zoom\" [zoom-scale]=\"zoomScale\" [show-borders]=\"true\" [original-size]=\"false\" [autoresize]=\"true\"></pdf-viewer>\r\n </mat-card>\r\n <!-- #region Content -->\r\n\r\n <div *ngIf=\"data.type != TemplateType.Pdf\" layout=\"column\" class=\"pad-top-none\" layout-padding margin-layout flex>\r\n <!-- #region Content -->\r\n <div class=\"pad-top-none\" layout-padding margin-layout flex>\r\n <iframe #iframeRef frameborder=\"0\"></iframe>\r\n </div>\r\n <!-- #endregion -->\r\n\r\n <!-- #region Email-->\r\n <div layout-gt-sm=\"row\" layout=\"column\" class=\"pad-top\">\r\n <mat-form-field flex layout-margin>\r\n <mat-label i18n=\"@@email\">Email</mat-label>\r\n <input matInput type=\"email\" name=\"email\" [(ngModel)]=\"data.email\" #email=\"ngModel\" email placeholder=\"Email\" i18n-placeholder=\"@@email\">\r\n <mat-error *ngIf=\"email.errors && email.errors!['required']\"><span i18n=\"@@email\">Email</span><span i18n=\"@@isRequired\"> is required</span></mat-error>\r\n <mat-error *ngIf=\"!email.errors!['required'] && email.errors!['email']\"><span i18n=\"@@email\">Email</span><span i18n=\"@@isInvalid\"> is invalid</span></mat-error>\r\n </mat-form-field>\r\n </div>\r\n <!-- #endregion -->\r\n </div>\r\n <mat-divider></mat-divider>\r\n <div mat-dialog-actions class=\"pad-left\">\r\n <button type=\"button\" mat-flat-button color=\"primary\" (click)=\"cancel()\" [autofocus]=\"true\" i18n=\"@@close\">Close</button>\r\n <button type=\"button\" mat-flat-button (click)=\"sendMail()\" [disabled]=\"data.email == undefined || !emailModel?.valid\" i18n=\"@@sendMail\">Send mail</button>\r\n </div>\r\n</form>", styles: [".content{overflow:scroll;min-height:200px;max-height:500px;border:1px solid #e5e5e5;border-radius:4px;padding:8px}iframe{width:100%;height:100%;min-height:200px;border:1px solid #e5e5e5;border-radius:4px}pdf-viewer{display:block;margin-left:-16px;width:calc(100% + 32px);height:calc(100vh - 170px);background:#dbdbdb}.mat-mdc-dialog-title{display:flex;padding:8px 12px;align-items:center}.dialog-content{width:100%;height:100%;box-sizing:border-box}\n"] }]
|
|
1545
1566
|
}], ctorParameters: () => [{ type: TemplatePreviewService }, { type: i4.MatDialogRef }, { type: TemplatePreview, decorators: [{
|
|
1546
1567
|
type: Inject,
|
|
1547
1568
|
args: [MAT_DIALOG_DATA]
|
|
@@ -1561,17 +1582,19 @@ class TemplateFormComponent extends GenericReactiveFormComponent {
|
|
|
1561
1582
|
route;
|
|
1562
1583
|
changeDetectorRef;
|
|
1563
1584
|
/**
|
|
1564
|
-
*
|
|
1585
|
+
* Injects the CmsSettings service using Angular's `inject()` function.
|
|
1586
|
+
* This allows access to the CmsSettings instance outside of constructor-based dependency injection,
|
|
1587
|
+
* commonly used in standalone components or functional-style Angular APIs.
|
|
1565
1588
|
*/
|
|
1566
|
-
|
|
1589
|
+
settings = inject(CmsSettings);
|
|
1567
1590
|
/**
|
|
1568
|
-
*
|
|
1591
|
+
* Represents the available template types.
|
|
1569
1592
|
*/
|
|
1570
|
-
|
|
1593
|
+
TemplateType = TemplateType;
|
|
1571
1594
|
/**
|
|
1572
1595
|
* Retrieves the attachments form control.
|
|
1573
1596
|
*/
|
|
1574
|
-
get attachmentsControl() { return this.form.controls
|
|
1597
|
+
get attachmentsControl() { return this.form.controls['attachments']; }
|
|
1575
1598
|
/**
|
|
1576
1599
|
* Configuration options for the HTML editor.
|
|
1577
1600
|
*/
|
|
@@ -1612,7 +1635,6 @@ class TemplateFormComponent extends GenericReactiveFormComponent {
|
|
|
1612
1635
|
this.dialog = dialog;
|
|
1613
1636
|
this.route = route;
|
|
1614
1637
|
this.changeDetectorRef = changeDetectorRef;
|
|
1615
|
-
this.settings = this.getService(CmsSettings);
|
|
1616
1638
|
if (this.settings?.multitenantable || this.settings?.multiClients) {
|
|
1617
1639
|
this.include('ClientJoins', true);
|
|
1618
1640
|
}
|
|
@@ -1701,12 +1723,21 @@ class TemplateFormComponent extends GenericReactiveFormComponent {
|
|
|
1701
1723
|
this.form.markAllAsTouched();
|
|
1702
1724
|
});
|
|
1703
1725
|
}
|
|
1704
|
-
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "
|
|
1705
|
-
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "
|
|
1726
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.0.3", ngImport: i0, type: TemplateFormComponent, deps: [{ token: TemplateService }, { token: TemplateDocService }, { token: i2.FileService }, { token: i4.MatDialog }, { token: i3$1.ActivatedRoute }, { token: i0.ChangeDetectorRef }], target: i0.ɵɵFactoryTarget.Component });
|
|
1727
|
+
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "20.0.3", type: TemplateFormComponent, isStandalone: true, selector: "app-template-form", usesInheritance: true, ngImport: i0, template: "<vd-layout-nav color=\"primary\" [backNavigationRoute]=\"listRoute\" toolbarTitle=\"Template\" i18n-toolbarTitle=\"@@template\" [editMode]=\"isEditMode\" [actions]=\"toolbarActions\" [data]=\"item\" [context]=\"this\">\r\n\t<form *ngIf=\"form\" [formGroup]=\"form\" novalidate (ngSubmit)=\"save()\">\r\n\t\t<vd-layout-card-over class=\"accordion\" cardWidth=\"70\" color=\"primary\" flex>\r\n\t\t\t<mat-accordion [multi]=\"!isEditMode\">\r\n\t\t\t\t<!-- #region Details -->\r\n\t\t\t\t<mat-expansion-panel expanded=\"true\" id=\"details\">\r\n\t\t\t\t\t<mat-expansion-panel-header>\r\n\t\t\t\t\t\t<mat-panel-title i18n=\"@@details\">Details</mat-panel-title>\r\n\t\t\t\t\t</mat-expansion-panel-header>\r\n\t\t\t\t\t<ng-template matExpansionPanelContent>\r\n\t\t\t\t\t\t<vd-generic-form [formGroup]=\"form\" [fieldGroups]=\"fieldGroups\" [fieldSets]=\"['details']\" [context]=\"this\"></vd-generic-form>\r\n\t\t\t\t\t</ng-template>\r\n\t\t\t\t\t<mat-action-row>\r\n\t\t\t\t\t\t<button type=\"submit\" mat-flat-button color=\"primary\" [disabled]=\"isSaving\" i18n=\"@@save\">Save</button>\r\n\t\t\t\t\t\t<button type=\"button\" mat-button (click)=\"apply()\" *ngIf=\"isEditMode\" [disabled]=\"isSaving\" i18n=\"@@apply\">Apply</button>\r\n\t\t\t\t\t\t<button type=\"button\" mat-button (click)=\"back()\" i18n=\"@@cancel\">Cancel</button>\r\n\t\t\t\t\t\t<span flex></span>\r\n\t\t\t\t\t</mat-action-row>\r\n\t\t\t\t</mat-expansion-panel>\r\n\t\t\t\t<!-- #endregion -->\r\n\r\n\t\t\t\t<!-- #region Content -->\r\n\t\t\t\t<mat-expansion-panel id=\"content\">\r\n\t\t\t\t\t<mat-expansion-panel-header>\r\n\t\t\t\t\t\t<mat-panel-title>\r\n\t\t\t\t\t\t\t<span i18n=\"@@content\">Content</span>\r\n\t\t\t\t\t\t</mat-panel-title>\r\n\t\t\t\t\t</mat-expansion-panel-header>\r\n\t\t\t\t\t<ng-template matExpansionPanelContent>\r\n\t\t\t\t\t\t<div layout-margin>\r\n\t\t\t\t\t\t\t<ngx-codemirror formControlName=\"content\" rows=\"160\" [options]=\"editorOptions\"></ngx-codemirror>\r\n\t\t\t\t\t\t</div>\r\n\t\t\t\t\t</ng-template>\r\n\t\t\t\t\t<mat-action-row>\r\n\t\t\t\t\t\t<button type=\"submit\" mat-flat-button color=\"primary\" [disabled]=\"isSaving\" i18n=\"@@save\">Save</button>\r\n\t\t\t\t\t\t<button type=\"button\" mat-button (click)=\"apply()\" *ngIf=\"isEditMode\" [disabled]=\"isSaving\" i18n=\"@@apply\">Apply</button>\r\n\t\t\t\t\t\t<button type=\"button\" mat-button (click)=\"showPreview()\" *ngIf=\"isEditMode\" [disabled]=\"isSaving || !form.pristine\" i18n=\"@@preview\">Preview</button>\r\n\t\t\t\t\t\t<button type=\"button\" mat-button (click)=\"back()\" i18n=\"@@cancel\">Cancel</button>\r\n\t\t\t\t\t\t<span flex></span>\r\n\t\t\t\t\t</mat-action-row>\r\n\t\t\t\t</mat-expansion-panel>\r\n\t\t\t\t<!-- #endregion -->\r\n\r\n\t\t\t\t<!-- #region Content -->\r\n\t\t\t\t<mat-expansion-panel id=\"testData\">\r\n\t\t\t\t\t<mat-expansion-panel-header>\r\n\t\t\t\t\t\t<mat-panel-title>\r\n\t\t\t\t\t\t\t<span i18n=\"@@testData\">Test Data</span>\r\n\t\t\t\t\t\t</mat-panel-title>\r\n\t\t\t\t\t</mat-expansion-panel-header>\r\n\t\t\t\t\t<ng-template matExpansionPanelContent>\r\n\t\t\t\t\t\t<div layout-margin>\r\n\t\t\t\t\t\t\t<ngx-codemirror formControlName=\"dummyData\" rows=\"120\" [options]=\"jsonEditorOptions\"></ngx-codemirror>\r\n\t\t\t\t\t\t</div>\r\n\t\t\t\t\t</ng-template>\r\n\t\t\t\t\t<mat-action-row>\r\n\t\t\t\t\t\t<button type=\"submit\" mat-flat-button color=\"primary\" [disabled]=\"isSaving\" i18n=\"@@save\">Save</button>\r\n\t\t\t\t\t\t<button type=\"button\" mat-button (click)=\"apply()\" *ngIf=\"isEditMode\" [disabled]=\"isSaving\" i18n=\"@@apply\">Apply</button>\r\n\t\t\t\t\t\t<button type=\"button\" mat-button (click)=\"showPreview()\" *ngIf=\"isEditMode\" [disabled]=\"isSaving || !form.pristine\" i18n=\"@@preview\">Preview</button>\r\n\t\t\t\t\t\t<button type=\"button\" mat-button (click)=\"back()\" i18n=\"@@cancel\">Cancel</button>\r\n\t\t\t\t\t\t<span flex></span>\r\n\t\t\t\t\t</mat-action-row>\r\n\t\t\t\t</mat-expansion-panel>\r\n\t\t\t\t<!-- #endregion -->\r\n\r\n\t\t\t\t<!-- #region Audit -->\r\n\t\t\t\t<mat-expansion-panel id=\"audit\" *ngIf=\"isEditMode\">\r\n\t\t\t\t\t<mat-expansion-panel-header>\r\n\t\t\t\t\t\t<mat-panel-title>\r\n\t\t\t\t\t\t\t<span i18n=\"@@audit\">Audit</span>\r\n\t\t\t\t\t\t</mat-panel-title>\r\n\t\t\t\t\t</mat-expansion-panel-header>\r\n\t\t\t\t\t<ng-template matExpansionPanelContent>\r\n\t\t\t\t\t\t<vd-audit [entity]=\"item\"> </vd-audit>\r\n\t\t\t\t\t</ng-template>\r\n\t\t\t\t\t<mat-action-row>\r\n\t\t\t\t\t\t<button type=\"button\" mat-flat-button color=\"accent\" (click)=\"back()\" i18n=\"@@close\">Close</button>\r\n\t\t\t\t\t\t<span flex></span>\r\n\t\t\t\t\t</mat-action-row>\r\n\t\t\t\t</mat-expansion-panel>\r\n\t\t\t\t<!-- #endregion -->\r\n\t\t\t</mat-accordion>\r\n\t\t</vd-layout-card-over>\r\n\t</form>\r\n</vd-layout-nav>", styles: ["codemirror{width:100%}.CodeMirror{height:500px}\n"], dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i5.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "ngmodule", type: MatExpansionModule }, { kind: "directive", type: i8.MatAccordion, selector: "mat-accordion", inputs: ["hideToggle", "displayMode", "togglePosition"], exportAs: ["matAccordion"] }, { kind: "component", type: i8.MatExpansionPanel, selector: "mat-expansion-panel", inputs: ["hideToggle", "togglePosition"], outputs: ["afterExpand", "afterCollapse"], exportAs: ["matExpansionPanel"] }, { kind: "directive", type: i8.MatExpansionPanelActionRow, selector: "mat-action-row" }, { kind: "component", type: i8.MatExpansionPanelHeader, selector: "mat-expansion-panel-header", inputs: ["expandedHeight", "collapsedHeight", "tabIndex"] }, { kind: "directive", type: i8.MatExpansionPanelTitle, selector: "mat-panel-title" }, { kind: "directive", type: i8.MatExpansionPanelContent, selector: "ng-template[matExpansionPanelContent]" }, { kind: "ngmodule", type: ReactiveFormsModule }, { kind: "directive", type: i6.ɵNgNoValidate, selector: "form:not([ngNoForm]):not([ngNativeValidate])" }, { kind: "directive", type: i6.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i6.NgControlStatusGroup, selector: "[formGroupName],[formArrayName],[ngModelGroup],[formGroup],form:not([ngNoForm]),[ngForm]" }, { kind: "directive", type: i6.FormGroupDirective, selector: "[formGroup]", inputs: ["formGroup"], outputs: ["ngSubmit"], exportAs: ["ngForm"] }, { kind: "directive", type: i6.FormControlName, selector: "[formControlName]", inputs: ["formControlName", "disabled", "ngModel"], outputs: ["ngModelChange"] }, { kind: "component", type: VdLayoutNavComponent, selector: "vd-layout-nav", inputs: ["toolbarTitle", "editMode", "actions", "data", "context", "hideToolbar", "icon", "logo", "color", "hideToggle", "backNavigationRoute", "navigationRoute"], outputs: ["reload"] }, { kind: "component", type: VdLayoutCardOverComponent, selector: "vd-layout-card-over", inputs: ["cardTitle", "cardSubtitle", "cardWidth", "color"] }, { kind: "component", type: VdGenericFormComponent, selector: "vd-generic-form", inputs: ["formGroup", "classType", "formDefinition", "fieldGroups", "groupName", "fieldSets", "context", "debugValue", "readonly", "separatorKeysCodes"] }, { kind: "ngmodule", type: CodemirrorModule }, { kind: "component", type: i9$1.CodemirrorComponent, selector: "ngx-codemirror", inputs: ["className", "name", "autoFocus", "options", "preserveScrollPosition"], outputs: ["cursorActivity", "focusChange", "scroll", "drop", "codeMirrorLoaded"] }, { kind: "component", type: VdAuditComponent, selector: "vd-audit", inputs: ["entity"] }], encapsulation: i0.ViewEncapsulation.None });
|
|
1706
1728
|
}
|
|
1707
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "
|
|
1729
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.0.3", ngImport: i0, type: TemplateFormComponent, decorators: [{
|
|
1708
1730
|
type: Component,
|
|
1709
|
-
args: [{ selector: 'app-template-form', encapsulation: ViewEncapsulation.None,
|
|
1731
|
+
args: [{ selector: 'app-template-form', encapsulation: ViewEncapsulation.None, imports: [
|
|
1732
|
+
CommonModule,
|
|
1733
|
+
MatExpansionModule,
|
|
1734
|
+
ReactiveFormsModule,
|
|
1735
|
+
VdLayoutNavComponent,
|
|
1736
|
+
VdLayoutCardOverComponent,
|
|
1737
|
+
VdGenericFormComponent,
|
|
1738
|
+
CodemirrorModule,
|
|
1739
|
+
VdAuditComponent
|
|
1740
|
+
], template: "<vd-layout-nav color=\"primary\" [backNavigationRoute]=\"listRoute\" toolbarTitle=\"Template\" i18n-toolbarTitle=\"@@template\" [editMode]=\"isEditMode\" [actions]=\"toolbarActions\" [data]=\"item\" [context]=\"this\">\r\n\t<form *ngIf=\"form\" [formGroup]=\"form\" novalidate (ngSubmit)=\"save()\">\r\n\t\t<vd-layout-card-over class=\"accordion\" cardWidth=\"70\" color=\"primary\" flex>\r\n\t\t\t<mat-accordion [multi]=\"!isEditMode\">\r\n\t\t\t\t<!-- #region Details -->\r\n\t\t\t\t<mat-expansion-panel expanded=\"true\" id=\"details\">\r\n\t\t\t\t\t<mat-expansion-panel-header>\r\n\t\t\t\t\t\t<mat-panel-title i18n=\"@@details\">Details</mat-panel-title>\r\n\t\t\t\t\t</mat-expansion-panel-header>\r\n\t\t\t\t\t<ng-template matExpansionPanelContent>\r\n\t\t\t\t\t\t<vd-generic-form [formGroup]=\"form\" [fieldGroups]=\"fieldGroups\" [fieldSets]=\"['details']\" [context]=\"this\"></vd-generic-form>\r\n\t\t\t\t\t</ng-template>\r\n\t\t\t\t\t<mat-action-row>\r\n\t\t\t\t\t\t<button type=\"submit\" mat-flat-button color=\"primary\" [disabled]=\"isSaving\" i18n=\"@@save\">Save</button>\r\n\t\t\t\t\t\t<button type=\"button\" mat-button (click)=\"apply()\" *ngIf=\"isEditMode\" [disabled]=\"isSaving\" i18n=\"@@apply\">Apply</button>\r\n\t\t\t\t\t\t<button type=\"button\" mat-button (click)=\"back()\" i18n=\"@@cancel\">Cancel</button>\r\n\t\t\t\t\t\t<span flex></span>\r\n\t\t\t\t\t</mat-action-row>\r\n\t\t\t\t</mat-expansion-panel>\r\n\t\t\t\t<!-- #endregion -->\r\n\r\n\t\t\t\t<!-- #region Content -->\r\n\t\t\t\t<mat-expansion-panel id=\"content\">\r\n\t\t\t\t\t<mat-expansion-panel-header>\r\n\t\t\t\t\t\t<mat-panel-title>\r\n\t\t\t\t\t\t\t<span i18n=\"@@content\">Content</span>\r\n\t\t\t\t\t\t</mat-panel-title>\r\n\t\t\t\t\t</mat-expansion-panel-header>\r\n\t\t\t\t\t<ng-template matExpansionPanelContent>\r\n\t\t\t\t\t\t<div layout-margin>\r\n\t\t\t\t\t\t\t<ngx-codemirror formControlName=\"content\" rows=\"160\" [options]=\"editorOptions\"></ngx-codemirror>\r\n\t\t\t\t\t\t</div>\r\n\t\t\t\t\t</ng-template>\r\n\t\t\t\t\t<mat-action-row>\r\n\t\t\t\t\t\t<button type=\"submit\" mat-flat-button color=\"primary\" [disabled]=\"isSaving\" i18n=\"@@save\">Save</button>\r\n\t\t\t\t\t\t<button type=\"button\" mat-button (click)=\"apply()\" *ngIf=\"isEditMode\" [disabled]=\"isSaving\" i18n=\"@@apply\">Apply</button>\r\n\t\t\t\t\t\t<button type=\"button\" mat-button (click)=\"showPreview()\" *ngIf=\"isEditMode\" [disabled]=\"isSaving || !form.pristine\" i18n=\"@@preview\">Preview</button>\r\n\t\t\t\t\t\t<button type=\"button\" mat-button (click)=\"back()\" i18n=\"@@cancel\">Cancel</button>\r\n\t\t\t\t\t\t<span flex></span>\r\n\t\t\t\t\t</mat-action-row>\r\n\t\t\t\t</mat-expansion-panel>\r\n\t\t\t\t<!-- #endregion -->\r\n\r\n\t\t\t\t<!-- #region Content -->\r\n\t\t\t\t<mat-expansion-panel id=\"testData\">\r\n\t\t\t\t\t<mat-expansion-panel-header>\r\n\t\t\t\t\t\t<mat-panel-title>\r\n\t\t\t\t\t\t\t<span i18n=\"@@testData\">Test Data</span>\r\n\t\t\t\t\t\t</mat-panel-title>\r\n\t\t\t\t\t</mat-expansion-panel-header>\r\n\t\t\t\t\t<ng-template matExpansionPanelContent>\r\n\t\t\t\t\t\t<div layout-margin>\r\n\t\t\t\t\t\t\t<ngx-codemirror formControlName=\"dummyData\" rows=\"120\" [options]=\"jsonEditorOptions\"></ngx-codemirror>\r\n\t\t\t\t\t\t</div>\r\n\t\t\t\t\t</ng-template>\r\n\t\t\t\t\t<mat-action-row>\r\n\t\t\t\t\t\t<button type=\"submit\" mat-flat-button color=\"primary\" [disabled]=\"isSaving\" i18n=\"@@save\">Save</button>\r\n\t\t\t\t\t\t<button type=\"button\" mat-button (click)=\"apply()\" *ngIf=\"isEditMode\" [disabled]=\"isSaving\" i18n=\"@@apply\">Apply</button>\r\n\t\t\t\t\t\t<button type=\"button\" mat-button (click)=\"showPreview()\" *ngIf=\"isEditMode\" [disabled]=\"isSaving || !form.pristine\" i18n=\"@@preview\">Preview</button>\r\n\t\t\t\t\t\t<button type=\"button\" mat-button (click)=\"back()\" i18n=\"@@cancel\">Cancel</button>\r\n\t\t\t\t\t\t<span flex></span>\r\n\t\t\t\t\t</mat-action-row>\r\n\t\t\t\t</mat-expansion-panel>\r\n\t\t\t\t<!-- #endregion -->\r\n\r\n\t\t\t\t<!-- #region Audit -->\r\n\t\t\t\t<mat-expansion-panel id=\"audit\" *ngIf=\"isEditMode\">\r\n\t\t\t\t\t<mat-expansion-panel-header>\r\n\t\t\t\t\t\t<mat-panel-title>\r\n\t\t\t\t\t\t\t<span i18n=\"@@audit\">Audit</span>\r\n\t\t\t\t\t\t</mat-panel-title>\r\n\t\t\t\t\t</mat-expansion-panel-header>\r\n\t\t\t\t\t<ng-template matExpansionPanelContent>\r\n\t\t\t\t\t\t<vd-audit [entity]=\"item\"> </vd-audit>\r\n\t\t\t\t\t</ng-template>\r\n\t\t\t\t\t<mat-action-row>\r\n\t\t\t\t\t\t<button type=\"button\" mat-flat-button color=\"accent\" (click)=\"back()\" i18n=\"@@close\">Close</button>\r\n\t\t\t\t\t\t<span flex></span>\r\n\t\t\t\t\t</mat-action-row>\r\n\t\t\t\t</mat-expansion-panel>\r\n\t\t\t\t<!-- #endregion -->\r\n\t\t\t</mat-accordion>\r\n\t\t</vd-layout-card-over>\r\n\t</form>\r\n</vd-layout-nav>", styles: ["codemirror{width:100%}.CodeMirror{height:500px}\n"] }]
|
|
1710
1741
|
}], ctorParameters: () => [{ type: TemplateService }, { type: TemplateDocService }, { type: i2.FileService }, { type: i4.MatDialog }, { type: i3$1.ActivatedRoute }, { type: i0.ChangeDetectorRef }] });
|
|
1711
1742
|
|
|
1712
1743
|
/**
|
|
@@ -2142,20 +2173,32 @@ Faq = __decorate([
|
|
|
2142
2173
|
|
|
2143
2174
|
let Slider = class Slider extends AuditEntity {
|
|
2144
2175
|
/**
|
|
2145
|
-
* @property
|
|
2176
|
+
* @property Slider name.
|
|
2177
|
+
* @description The title or identifier for the slider.
|
|
2178
|
+
* @type {string | undefined}
|
|
2146
2179
|
*/
|
|
2147
2180
|
name;
|
|
2148
2181
|
/**
|
|
2149
|
-
* @property
|
|
2182
|
+
* @property Slider group.
|
|
2183
|
+
* @description A group identifier used to categorize sliders.
|
|
2184
|
+
* @type {string | undefined}
|
|
2150
2185
|
*/
|
|
2151
2186
|
group;
|
|
2152
2187
|
/**
|
|
2153
|
-
* @property
|
|
2188
|
+
* @property Slider content.
|
|
2189
|
+
* @description HTML or rich text content displayed within the slider.
|
|
2190
|
+
* @type {string | undefined}
|
|
2154
2191
|
*/
|
|
2155
2192
|
content;
|
|
2156
2193
|
/**
|
|
2157
|
-
* @property
|
|
2158
|
-
* @description
|
|
2194
|
+
* @property Embedded style.
|
|
2195
|
+
* @description Optional CSS styling specific to this content.
|
|
2196
|
+
* @type {string}
|
|
2197
|
+
*/
|
|
2198
|
+
styleInline;
|
|
2199
|
+
/**
|
|
2200
|
+
* @property Slider image path.
|
|
2201
|
+
* @description File path to the slider image, typically used internally.
|
|
2159
2202
|
* @type {string | undefined}
|
|
2160
2203
|
*/
|
|
2161
2204
|
imagePath;
|
|
@@ -2166,15 +2209,27 @@ let Slider = class Slider extends AuditEntity {
|
|
|
2166
2209
|
*/
|
|
2167
2210
|
image;
|
|
2168
2211
|
/**
|
|
2169
|
-
* @property
|
|
2212
|
+
* @property CSS class.
|
|
2213
|
+
* @description Custom CSS class applied to the slider, useful for styling purposes.
|
|
2214
|
+
* @type {string | undefined}
|
|
2215
|
+
*/
|
|
2216
|
+
cssClass;
|
|
2217
|
+
/**
|
|
2218
|
+
* @property Client ID.
|
|
2219
|
+
* @description Reference to the associated client or project.
|
|
2220
|
+
* @type {number | undefined}
|
|
2170
2221
|
*/
|
|
2171
2222
|
clientId;
|
|
2172
2223
|
/**
|
|
2173
|
-
* @property
|
|
2224
|
+
* @property Ordering index.
|
|
2225
|
+
* @description Position of the slider in a sorted list.
|
|
2226
|
+
* @type {number | undefined}
|
|
2174
2227
|
*/
|
|
2175
2228
|
ordering;
|
|
2176
2229
|
/**
|
|
2177
|
-
* @property
|
|
2230
|
+
* @property Enabled flag.
|
|
2231
|
+
* @description Indicates whether the slider is active or visible.
|
|
2232
|
+
* @type {boolean | undefined}
|
|
2178
2233
|
*/
|
|
2179
2234
|
enabled;
|
|
2180
2235
|
};
|
|
@@ -2198,6 +2253,15 @@ __decorate([
|
|
|
2198
2253
|
Display($localize `:@@content:Content`),
|
|
2199
2254
|
__metadata("design:type", String)
|
|
2200
2255
|
], Slider.prototype, "content", void 0);
|
|
2256
|
+
__decorate([
|
|
2257
|
+
prop(),
|
|
2258
|
+
FormField({
|
|
2259
|
+
row: 60,
|
|
2260
|
+
type: FormFieldType.TextArea
|
|
2261
|
+
}),
|
|
2262
|
+
Display($localize `:@@style:Style`),
|
|
2263
|
+
__metadata("design:type", String)
|
|
2264
|
+
], Slider.prototype, "styleInline", void 0);
|
|
2201
2265
|
__decorate([
|
|
2202
2266
|
prop(),
|
|
2203
2267
|
__metadata("design:type", String)
|
|
@@ -2214,6 +2278,12 @@ __decorate([
|
|
|
2214
2278
|
prop(),
|
|
2215
2279
|
__metadata("design:type", String)
|
|
2216
2280
|
], Slider.prototype, "image", void 0);
|
|
2281
|
+
__decorate([
|
|
2282
|
+
prop(),
|
|
2283
|
+
FormField({ row: 40 }),
|
|
2284
|
+
Display($localize `:@@cssClass:CSS Class`),
|
|
2285
|
+
__metadata("design:type", String)
|
|
2286
|
+
], Slider.prototype, "cssClass", void 0);
|
|
2217
2287
|
__decorate([
|
|
2218
2288
|
FormField({
|
|
2219
2289
|
row: 1,
|
|
@@ -2253,6 +2323,12 @@ Slider = __decorate([
|
|
|
2253
2323
|
*/
|
|
2254
2324
|
class DocumentListProjectionResolve {
|
|
2255
2325
|
oidcSecurityService;
|
|
2326
|
+
/*
|
|
2327
|
+
* Injects the CmsSettings service using Angular's `inject()` function.
|
|
2328
|
+
* This allows access to the CmsSettings instance outside of constructor-based dependency injection,
|
|
2329
|
+
* commonly used in standalone components or functional-style Angular APIs.
|
|
2330
|
+
*/
|
|
2331
|
+
settings = inject(CmsSettings);
|
|
2256
2332
|
/**
|
|
2257
2333
|
* Constructor
|
|
2258
2334
|
* @param oidcSecurityService
|
|
@@ -2272,21 +2348,20 @@ class DocumentListProjectionResolve {
|
|
|
2272
2348
|
id: x.userData.sub,
|
|
2273
2349
|
isAuthenticated: x.isAuthenticated
|
|
2274
2350
|
});
|
|
2275
|
-
|
|
2276
|
-
if (AuthHelper.hasRole(GlobalRoles.Administrator) && (settings?.multitenantable || settings?.multiClients)) {
|
|
2351
|
+
if (AuthHelper.hasRole(GlobalRoles.Administrator) && (this.settings?.multitenantable || this.settings?.multiClients)) {
|
|
2277
2352
|
projection.push('client(displayName)');
|
|
2278
2353
|
}
|
|
2279
|
-
if ((AuthHelper.hasRole(GlobalRoles.Administrator) || AuthHelper.hasRole(GlobalRoles.ClientAdministrator)) && (settings?.multitenantable || settings?.multiDepartments)) {
|
|
2354
|
+
if ((AuthHelper.hasRole(GlobalRoles.Administrator) || AuthHelper.hasRole(GlobalRoles.ClientAdministrator)) && (this.settings?.multitenantable || this.settings?.multiDepartments)) {
|
|
2280
2355
|
projection.push('department(displayName)');
|
|
2281
2356
|
}
|
|
2282
2357
|
}
|
|
2283
2358
|
return projection;
|
|
2284
2359
|
}));
|
|
2285
2360
|
}
|
|
2286
|
-
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "
|
|
2287
|
-
static ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "
|
|
2361
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.0.3", ngImport: i0, type: DocumentListProjectionResolve, deps: [{ token: i1.OidcSecurityService }], target: i0.ɵɵFactoryTarget.Injectable });
|
|
2362
|
+
static ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "20.0.3", ngImport: i0, type: DocumentListProjectionResolve });
|
|
2288
2363
|
}
|
|
2289
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "
|
|
2364
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.0.3", ngImport: i0, type: DocumentListProjectionResolve, decorators: [{
|
|
2290
2365
|
type: Injectable
|
|
2291
2366
|
}], ctorParameters: () => [{ type: i1.OidcSecurityService }] });
|
|
2292
2367
|
|
|
@@ -2294,16 +2369,22 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.0.5", ngImpor
|
|
|
2294
2369
|
* Excluded columns resolve service
|
|
2295
2370
|
*/
|
|
2296
2371
|
class ExcludedColumnsResolve {
|
|
2372
|
+
/**
|
|
2373
|
+
* Injects the CmsSettings service using Angular's `inject()` function.
|
|
2374
|
+
* This allows access to the CmsSettings instance outside of constructor-based dependency injection,
|
|
2375
|
+
* commonly used in standalone components or functional-style Angular APIs.
|
|
2376
|
+
*/
|
|
2377
|
+
settings = inject(CmsSettings);
|
|
2297
2378
|
/**
|
|
2298
2379
|
* Resolves excluded columns
|
|
2299
2380
|
*/
|
|
2300
2381
|
resolve() {
|
|
2301
|
-
return of(
|
|
2382
|
+
return of(this.settings?.multitenantable ? [] : ['client.displayName']);
|
|
2302
2383
|
}
|
|
2303
|
-
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "
|
|
2304
|
-
static ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "
|
|
2384
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.0.3", ngImport: i0, type: ExcludedColumnsResolve, deps: [], target: i0.ɵɵFactoryTarget.Injectable });
|
|
2385
|
+
static ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "20.0.3", ngImport: i0, type: ExcludedColumnsResolve });
|
|
2305
2386
|
}
|
|
2306
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "
|
|
2387
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.0.3", ngImport: i0, type: ExcludedColumnsResolve, decorators: [{
|
|
2307
2388
|
type: Injectable
|
|
2308
2389
|
}] });
|
|
2309
2390
|
|
|
@@ -2311,16 +2392,22 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.0.5", ngImpor
|
|
|
2311
2392
|
* Excluded fields resolve service
|
|
2312
2393
|
*/
|
|
2313
2394
|
class ExcludedFieldsResolve {
|
|
2395
|
+
/**
|
|
2396
|
+
* Injects the CmsSettings service using Angular's `inject()` function.
|
|
2397
|
+
* This allows access to the CmsSettings instance outside of constructor-based dependency injection,
|
|
2398
|
+
* commonly used in standalone components or functional-style Angular APIs.
|
|
2399
|
+
*/
|
|
2400
|
+
settings = inject(CmsSettings);
|
|
2314
2401
|
/**
|
|
2315
2402
|
* Resolves excluded fields
|
|
2316
2403
|
*/
|
|
2317
2404
|
resolve() {
|
|
2318
|
-
return of(
|
|
2405
|
+
return of(this.settings?.multitenantable ? [] : ['clientId']);
|
|
2319
2406
|
}
|
|
2320
|
-
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "
|
|
2321
|
-
static ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "
|
|
2407
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.0.3", ngImport: i0, type: ExcludedFieldsResolve, deps: [], target: i0.ɵɵFactoryTarget.Injectable });
|
|
2408
|
+
static ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "20.0.3", ngImport: i0, type: ExcludedFieldsResolve });
|
|
2322
2409
|
}
|
|
2323
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "
|
|
2410
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.0.3", ngImport: i0, type: ExcludedFieldsResolve, decorators: [{
|
|
2324
2411
|
type: Injectable
|
|
2325
2412
|
}] });
|
|
2326
2413
|
|
|
@@ -2329,6 +2416,12 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.0.5", ngImpor
|
|
|
2329
2416
|
*/
|
|
2330
2417
|
class FormIncludesResolve {
|
|
2331
2418
|
oidcSecurityService;
|
|
2419
|
+
/**
|
|
2420
|
+
* Injects the CmsSettings service using Angular's `inject()` function.
|
|
2421
|
+
* This allows access to the CmsSettings instance outside of constructor-based dependency injection,
|
|
2422
|
+
* commonly used in standalone components or functional-style Angular APIs.
|
|
2423
|
+
*/
|
|
2424
|
+
settings = inject(CmsSettings);
|
|
2332
2425
|
/**
|
|
2333
2426
|
* Constructor
|
|
2334
2427
|
* @param oidcSecurityService
|
|
@@ -2348,21 +2441,20 @@ class FormIncludesResolve {
|
|
|
2348
2441
|
id: x.userData.sub,
|
|
2349
2442
|
isAuthenticated: x.isAuthenticated
|
|
2350
2443
|
});
|
|
2351
|
-
|
|
2352
|
-
if (settings?.multitenantable || settings?.multiClients) {
|
|
2444
|
+
if (this.settings?.multitenantable || this.settings?.multiClients) {
|
|
2353
2445
|
includes.push('ClientJoins');
|
|
2354
2446
|
}
|
|
2355
|
-
if (settings?.multitenantable || settings?.multiDepartments) {
|
|
2447
|
+
if (this.settings?.multitenantable || this.settings?.multiDepartments) {
|
|
2356
2448
|
includes.push('DepartmentJoins');
|
|
2357
2449
|
}
|
|
2358
2450
|
}
|
|
2359
2451
|
return includes;
|
|
2360
2452
|
}));
|
|
2361
2453
|
}
|
|
2362
|
-
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "
|
|
2363
|
-
static ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "
|
|
2454
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.0.3", ngImport: i0, type: FormIncludesResolve, deps: [{ token: i1.OidcSecurityService }], target: i0.ɵɵFactoryTarget.Injectable });
|
|
2455
|
+
static ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "20.0.3", ngImport: i0, type: FormIncludesResolve });
|
|
2364
2456
|
}
|
|
2365
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "
|
|
2457
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.0.3", ngImport: i0, type: FormIncludesResolve, decorators: [{
|
|
2366
2458
|
type: Injectable
|
|
2367
2459
|
}], ctorParameters: () => [{ type: i1.OidcSecurityService }] });
|
|
2368
2460
|
|
|
@@ -2370,16 +2462,22 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.0.5", ngImpor
|
|
|
2370
2462
|
* Form validation resolve service
|
|
2371
2463
|
*/
|
|
2372
2464
|
class FormValidationResolve {
|
|
2465
|
+
/**
|
|
2466
|
+
* Injects the CmsSettings service using Angular's `inject()` function.
|
|
2467
|
+
* This allows access to the CmsSettings instance outside of constructor-based dependency injection,
|
|
2468
|
+
* commonly used in standalone components or functional-style Angular APIs.
|
|
2469
|
+
*/
|
|
2470
|
+
settings = inject(CmsSettings);
|
|
2373
2471
|
/**
|
|
2374
2472
|
* Resolves Form validation
|
|
2375
2473
|
*/
|
|
2376
2474
|
resolve() {
|
|
2377
|
-
return of(
|
|
2475
|
+
return of(this.settings?.multitenantable ? { clientId: { required: true } } : {});
|
|
2378
2476
|
}
|
|
2379
|
-
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "
|
|
2380
|
-
static ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "
|
|
2477
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.0.3", ngImport: i0, type: FormValidationResolve, deps: [], target: i0.ɵɵFactoryTarget.Injectable });
|
|
2478
|
+
static ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "20.0.3", ngImport: i0, type: FormValidationResolve });
|
|
2381
2479
|
}
|
|
2382
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "
|
|
2480
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.0.3", ngImport: i0, type: FormValidationResolve, decorators: [{
|
|
2383
2481
|
type: Injectable
|
|
2384
2482
|
}] });
|
|
2385
2483
|
|
|
@@ -2388,6 +2486,12 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.0.5", ngImpor
|
|
|
2388
2486
|
*/
|
|
2389
2487
|
class ListProjectionResolve {
|
|
2390
2488
|
oidcSecurityService;
|
|
2489
|
+
/**
|
|
2490
|
+
* Injects the CmsSettings service using Angular's `inject()` function.
|
|
2491
|
+
* This allows access to the CmsSettings instance outside of constructor-based dependency injection,
|
|
2492
|
+
* commonly used in standalone components or functional-style Angular APIs.
|
|
2493
|
+
*/
|
|
2494
|
+
settings = inject(CmsSettings);
|
|
2391
2495
|
/**
|
|
2392
2496
|
* Constructor
|
|
2393
2497
|
* @param oidcSecurityService
|
|
@@ -2407,21 +2511,20 @@ class ListProjectionResolve {
|
|
|
2407
2511
|
id: x.userData.sub,
|
|
2408
2512
|
isAuthenticated: x.isAuthenticated
|
|
2409
2513
|
});
|
|
2410
|
-
|
|
2411
|
-
if (AuthHelper.hasRole(GlobalRoles.Administrator) && (settings?.multitenantable || settings?.multiClients)) {
|
|
2514
|
+
if (AuthHelper.hasRole(GlobalRoles.Administrator) && (this.settings?.multitenantable || this.settings?.multiClients)) {
|
|
2412
2515
|
projection.push('clientJoins(client(displayName))');
|
|
2413
2516
|
}
|
|
2414
|
-
if ((AuthHelper.hasRole(GlobalRoles.Administrator) || AuthHelper.hasRole(GlobalRoles.ClientAdministrator)) && (settings?.multitenantable || settings?.multiDepartments)) {
|
|
2517
|
+
if ((AuthHelper.hasRole(GlobalRoles.Administrator) || AuthHelper.hasRole(GlobalRoles.ClientAdministrator)) && (this.settings?.multitenantable || this.settings?.multiDepartments)) {
|
|
2415
2518
|
projection.push('departmentJoins(department(displayName))');
|
|
2416
2519
|
}
|
|
2417
2520
|
}
|
|
2418
2521
|
return projection;
|
|
2419
2522
|
}));
|
|
2420
2523
|
}
|
|
2421
|
-
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "
|
|
2422
|
-
static ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "
|
|
2524
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.0.3", ngImport: i0, type: ListProjectionResolve, deps: [{ token: i1.OidcSecurityService }], target: i0.ɵɵFactoryTarget.Injectable });
|
|
2525
|
+
static ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "20.0.3", ngImport: i0, type: ListProjectionResolve });
|
|
2423
2526
|
}
|
|
2424
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "
|
|
2527
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.0.3", ngImport: i0, type: ListProjectionResolve, decorators: [{
|
|
2425
2528
|
type: Injectable
|
|
2426
2529
|
}], ctorParameters: () => [{ type: i1.OidcSecurityService }] });
|
|
2427
2530
|
|
|
@@ -2433,14 +2536,13 @@ class SettingsResolve {
|
|
|
2433
2536
|
* Resolves settings
|
|
2434
2537
|
*/
|
|
2435
2538
|
resolve(route) {
|
|
2436
|
-
let settings = route.parent?.data
|
|
2437
|
-
ServiceLocator.create([{ provide: CmsSettings, useValue: settings }]);
|
|
2539
|
+
let settings = route.parent?.data['settings'];
|
|
2438
2540
|
return of(settings);
|
|
2439
2541
|
}
|
|
2440
|
-
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "
|
|
2441
|
-
static ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "
|
|
2542
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.0.3", ngImport: i0, type: SettingsResolve, deps: [], target: i0.ɵɵFactoryTarget.Injectable });
|
|
2543
|
+
static ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "20.0.3", ngImport: i0, type: SettingsResolve });
|
|
2442
2544
|
}
|
|
2443
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "
|
|
2545
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.0.3", ngImport: i0, type: SettingsResolve, decorators: [{
|
|
2444
2546
|
type: Injectable
|
|
2445
2547
|
}] });
|
|
2446
2548
|
|
|
@@ -2466,7 +2568,6 @@ const routes = [
|
|
|
2466
2568
|
{ path: 'contents/block', component: VdDynamicListComponent, data: { classType: Content, query: { type: ContentType.Block } }, resolve: ListResolve },
|
|
2467
2569
|
{ path: 'contents/:type/add', component: ContentFormComponent, resolve: FormResolve },
|
|
2468
2570
|
{ path: 'contents/:type/edit/:id', component: ContentFormComponent, resolve: FormResolve },
|
|
2469
|
-
//
|
|
2470
2571
|
{ path: 'variables', component: VdDynamicListComponent, data: { classType: ContentVariable }, resolve: ListResolve },
|
|
2471
2572
|
{ path: 'variables/edit/:id', component: VdDynamicFormComponent, data: { classType: ContentVariable, subtitle: $localize `:@@variables:Variables` }, resolve: FormResolve },
|
|
2472
2573
|
{ path: 'variables/add', component: VdDynamicFormComponent, data: { classType: ContentVariable, subtitle: $localize `:@@variables:Variables` }, resolve: FormResolve },
|
|
@@ -2482,9 +2583,9 @@ const routes = [
|
|
|
2482
2583
|
{ path: 'documents', component: VdDynamicListComponent, data: { classType: Document, addDialogType: DocumentDialogComponent, query: { type: DocumentType.Document } }, resolve: DocsListResolve },
|
|
2483
2584
|
];
|
|
2484
2585
|
class VdCmsRoutingModule {
|
|
2485
|
-
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "
|
|
2486
|
-
static ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "
|
|
2487
|
-
static ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "
|
|
2586
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.0.3", ngImport: i0, type: VdCmsRoutingModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
|
|
2587
|
+
static ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "20.0.3", ngImport: i0, type: VdCmsRoutingModule, imports: [i3$1.RouterModule], exports: [RouterModule] });
|
|
2588
|
+
static ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "20.0.3", ngImport: i0, type: VdCmsRoutingModule, providers: [
|
|
2488
2589
|
SettingsResolve,
|
|
2489
2590
|
ListProjectionResolve,
|
|
2490
2591
|
DocumentListProjectionResolve,
|
|
@@ -2494,7 +2595,7 @@ class VdCmsRoutingModule {
|
|
|
2494
2595
|
FormValidationResolve
|
|
2495
2596
|
], imports: [RouterModule.forChild(routes), RouterModule] });
|
|
2496
2597
|
}
|
|
2497
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "
|
|
2598
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.0.3", ngImport: i0, type: VdCmsRoutingModule, decorators: [{
|
|
2498
2599
|
type: NgModule,
|
|
2499
2600
|
args: [{
|
|
2500
2601
|
imports: [RouterModule.forChild(routes)],
|
|
@@ -2511,130 +2612,16 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.0.5", ngImpor
|
|
|
2511
2612
|
}]
|
|
2512
2613
|
}] });
|
|
2513
2614
|
|
|
2514
|
-
class MaterialModule {
|
|
2515
|
-
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.0.5", ngImport: i0, type: MaterialModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
|
|
2516
|
-
static ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "19.0.5", ngImport: i0, type: MaterialModule, exports: [MatCardModule,
|
|
2517
|
-
MatExpansionModule,
|
|
2518
|
-
MatButtonModule,
|
|
2519
|
-
MatIconModule,
|
|
2520
|
-
MatChipsModule,
|
|
2521
|
-
MatAutocompleteModule,
|
|
2522
|
-
MatCheckboxModule,
|
|
2523
|
-
MatDialogModule,
|
|
2524
|
-
MatInputModule,
|
|
2525
|
-
MatSelectModule,
|
|
2526
|
-
MatProgressBarModule,
|
|
2527
|
-
MatDividerModule] });
|
|
2528
|
-
static ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "19.0.5", ngImport: i0, type: MaterialModule, imports: [MatCardModule,
|
|
2529
|
-
MatExpansionModule,
|
|
2530
|
-
MatButtonModule,
|
|
2531
|
-
MatIconModule,
|
|
2532
|
-
MatChipsModule,
|
|
2533
|
-
MatAutocompleteModule,
|
|
2534
|
-
MatCheckboxModule,
|
|
2535
|
-
MatDialogModule,
|
|
2536
|
-
MatInputModule,
|
|
2537
|
-
MatSelectModule,
|
|
2538
|
-
MatProgressBarModule,
|
|
2539
|
-
MatDividerModule] });
|
|
2540
|
-
}
|
|
2541
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.0.5", ngImport: i0, type: MaterialModule, decorators: [{
|
|
2542
|
-
type: NgModule,
|
|
2543
|
-
args: [{
|
|
2544
|
-
exports: [
|
|
2545
|
-
MatCardModule,
|
|
2546
|
-
MatExpansionModule,
|
|
2547
|
-
MatButtonModule,
|
|
2548
|
-
MatIconModule,
|
|
2549
|
-
MatChipsModule,
|
|
2550
|
-
MatAutocompleteModule,
|
|
2551
|
-
MatCheckboxModule,
|
|
2552
|
-
MatDialogModule,
|
|
2553
|
-
MatInputModule,
|
|
2554
|
-
MatSelectModule,
|
|
2555
|
-
MatProgressBarModule,
|
|
2556
|
-
MatDividerModule
|
|
2557
|
-
]
|
|
2558
|
-
}]
|
|
2559
|
-
}] });
|
|
2560
|
-
class VdModule {
|
|
2561
|
-
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.0.5", ngImport: i0, type: VdModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
|
|
2562
|
-
static ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "19.0.5", ngImport: i0, type: VdModule, exports: [VdCommonModule,
|
|
2563
|
-
VdLayoutModule,
|
|
2564
|
-
VdMediaModule,
|
|
2565
|
-
VdSelectModule,
|
|
2566
|
-
VdChipsModule,
|
|
2567
|
-
VdFileModule] });
|
|
2568
|
-
static ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "19.0.5", ngImport: i0, type: VdModule, imports: [VdCommonModule,
|
|
2569
|
-
VdLayoutModule,
|
|
2570
|
-
VdMediaModule,
|
|
2571
|
-
VdSelectModule,
|
|
2572
|
-
VdChipsModule,
|
|
2573
|
-
VdFileModule] });
|
|
2574
|
-
}
|
|
2575
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.0.5", ngImport: i0, type: VdModule, decorators: [{
|
|
2576
|
-
type: NgModule,
|
|
2577
|
-
args: [{
|
|
2578
|
-
exports: [
|
|
2579
|
-
VdCommonModule,
|
|
2580
|
-
VdLayoutModule,
|
|
2581
|
-
VdMediaModule,
|
|
2582
|
-
VdSelectModule,
|
|
2583
|
-
VdChipsModule,
|
|
2584
|
-
VdFileModule
|
|
2585
|
-
]
|
|
2586
|
-
}]
|
|
2587
|
-
}] });
|
|
2588
|
-
const DECLARATION = [
|
|
2589
|
-
ContentFormComponent,
|
|
2590
|
-
TemplateFormComponent,
|
|
2591
|
-
TemplatePreviewDialogComponent,
|
|
2592
|
-
DocumentDialogComponent
|
|
2593
|
-
];
|
|
2594
2615
|
class VdCmsModule {
|
|
2595
|
-
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "
|
|
2596
|
-
static ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "
|
|
2597
|
-
|
|
2598
|
-
TemplatePreviewDialogComponent,
|
|
2599
|
-
DocumentDialogComponent], imports: [CommonModule,
|
|
2600
|
-
CodemirrorModule,
|
|
2601
|
-
VdCdkBaseModule, VdModule, MaterialModule, VdCmsRoutingModule,
|
|
2602
|
-
EditorModule,
|
|
2603
|
-
PdfViewerModule], exports: [VdModule, MaterialModule, EditorModule,
|
|
2604
|
-
PdfViewerModule, ContentFormComponent,
|
|
2605
|
-
TemplateFormComponent,
|
|
2606
|
-
TemplatePreviewDialogComponent,
|
|
2607
|
-
DocumentDialogComponent] });
|
|
2608
|
-
static ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "19.0.5", ngImport: i0, type: VdCmsModule, imports: [CommonModule,
|
|
2609
|
-
CodemirrorModule,
|
|
2610
|
-
VdCdkBaseModule,
|
|
2611
|
-
VdModule,
|
|
2612
|
-
MaterialModule,
|
|
2613
|
-
VdCmsRoutingModule,
|
|
2614
|
-
EditorModule,
|
|
2615
|
-
PdfViewerModule, VdModule, MaterialModule, EditorModule,
|
|
2616
|
-
PdfViewerModule] });
|
|
2616
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.0.3", ngImport: i0, type: VdCmsModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
|
|
2617
|
+
static ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "20.0.3", ngImport: i0, type: VdCmsModule, imports: [VdCmsRoutingModule] });
|
|
2618
|
+
static ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "20.0.3", ngImport: i0, type: VdCmsModule, imports: [VdCmsRoutingModule] });
|
|
2617
2619
|
}
|
|
2618
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "
|
|
2620
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.0.3", ngImport: i0, type: VdCmsModule, decorators: [{
|
|
2619
2621
|
type: NgModule,
|
|
2620
2622
|
args: [{
|
|
2621
2623
|
imports: [
|
|
2622
|
-
|
|
2623
|
-
CodemirrorModule,
|
|
2624
|
-
VdCdkBaseModule,
|
|
2625
|
-
VdModule,
|
|
2626
|
-
MaterialModule,
|
|
2627
|
-
VdCmsRoutingModule,
|
|
2628
|
-
EditorModule,
|
|
2629
|
-
PdfViewerModule
|
|
2630
|
-
],
|
|
2631
|
-
declarations: [DECLARATION],
|
|
2632
|
-
exports: [
|
|
2633
|
-
VdModule,
|
|
2634
|
-
MaterialModule,
|
|
2635
|
-
EditorModule,
|
|
2636
|
-
PdfViewerModule,
|
|
2637
|
-
DECLARATION
|
|
2624
|
+
VdCmsRoutingModule
|
|
2638
2625
|
]
|
|
2639
2626
|
}]
|
|
2640
2627
|
}] });
|
|
@@ -2660,10 +2647,10 @@ class ContentVariableService extends GenericService {
|
|
|
2660
2647
|
isNameAvailable(item) {
|
|
2661
2648
|
return this.create(item, '/isNameAvailable').pipe(map((x) => x.value));
|
|
2662
2649
|
}
|
|
2663
|
-
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "
|
|
2664
|
-
static ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "
|
|
2650
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.0.3", ngImport: i0, type: ContentVariableService, deps: [], target: i0.ɵɵFactoryTarget.Injectable });
|
|
2651
|
+
static ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "20.0.3", ngImport: i0, type: ContentVariableService, providedIn: 'root' });
|
|
2665
2652
|
}
|
|
2666
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "
|
|
2653
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.0.3", ngImport: i0, type: ContentVariableService, decorators: [{
|
|
2667
2654
|
type: Injectable,
|
|
2668
2655
|
args: [{ providedIn: 'root' }]
|
|
2669
2656
|
}], ctorParameters: () => [] });
|
|
@@ -2675,10 +2662,10 @@ class FaqService extends GenericService {
|
|
|
2675
2662
|
constructor() {
|
|
2676
2663
|
super('faq');
|
|
2677
2664
|
}
|
|
2678
|
-
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "
|
|
2679
|
-
static ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "
|
|
2665
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.0.3", ngImport: i0, type: FaqService, deps: [], target: i0.ɵɵFactoryTarget.Injectable });
|
|
2666
|
+
static ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "20.0.3", ngImport: i0, type: FaqService, providedIn: 'root' });
|
|
2680
2667
|
}
|
|
2681
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "
|
|
2668
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.0.3", ngImport: i0, type: FaqService, decorators: [{
|
|
2682
2669
|
type: Injectable,
|
|
2683
2670
|
args: [{ providedIn: 'root' }]
|
|
2684
2671
|
}], ctorParameters: () => [] });
|
|
@@ -2690,14 +2677,15 @@ class SliderService extends GenericService {
|
|
|
2690
2677
|
constructor() {
|
|
2691
2678
|
super('slider');
|
|
2692
2679
|
}
|
|
2693
|
-
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "
|
|
2694
|
-
static ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "
|
|
2680
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.0.3", ngImport: i0, type: SliderService, deps: [], target: i0.ɵɵFactoryTarget.Injectable });
|
|
2681
|
+
static ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "20.0.3", ngImport: i0, type: SliderService, providedIn: 'root' });
|
|
2695
2682
|
}
|
|
2696
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "
|
|
2683
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.0.3", ngImport: i0, type: SliderService, decorators: [{
|
|
2697
2684
|
type: Injectable,
|
|
2698
2685
|
args: [{ providedIn: 'root' }]
|
|
2699
2686
|
}], ctorParameters: () => [] });
|
|
2700
2687
|
|
|
2688
|
+
/// <reference types="@angular/localize" />
|
|
2701
2689
|
/*
|
|
2702
2690
|
* Public API Surface of cdk-base
|
|
2703
2691
|
*/
|
|
@@ -2710,5 +2698,5 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.0.5", ngImpor
|
|
|
2710
2698
|
* Generated bundle index. Do not edit.
|
|
2711
2699
|
*/
|
|
2712
2700
|
|
|
2713
|
-
export { CmsSettings, Content, ContentClient, ContentDepartment, ContentFormComponent, ContentService, ContentType, ContentVariable, ContentVariableClient, ContentVariableDepartment, ContentVariableService, Document, DocumentDialogComponent, DocumentFormBaseComponent, DocumentFormTemplate, DocumentGenericService, DocumentService, Faq, FaqClient, FaqDepartment, FaqScope, FaqService, FormIncludesResolve, ListProjectionResolve,
|
|
2701
|
+
export { CmsSettings, Content, ContentClient, ContentDepartment, ContentFormComponent, ContentService, ContentType, ContentVariable, ContentVariableClient, ContentVariableDepartment, ContentVariableService, Document, DocumentDialogComponent, DocumentFormBaseComponent, DocumentFormTemplate, DocumentGenericService, DocumentListProjectionResolve, DocumentService, ExcludedColumnsResolve, ExcludedFieldsResolve, Faq, FaqClient, FaqDepartment, FaqScope, FaqService, FormIncludesResolve, FormValidationResolve, ListProjectionResolve, SettingsResolve, Slider, SliderService, Template, TemplateClient, TemplateDepartment, TemplateDocService, TemplateFormComponent, TemplatePreview, TemplatePreviewDialogComponent, TemplatePreviewService, TemplateService, TemplateType, VdCmsModule, VdCmsRoutingModule, WrapTag };
|
|
2714
2702
|
//# sourceMappingURL=messaia-cdk-cms.mjs.map
|