@smartbit4all/ng-client 1.1.34 → 1.1.35
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/esm2020/lib/smart-client/smart-component-api-client.mjs +9 -1
- package/esm2020/lib/smart-client/smart-component-layout/smart-component-layout.component.mjs +74 -0
- package/esm2020/lib/smart-client/smart-component-layout/smart-component-layout.model.mjs +13 -0
- package/esm2020/lib/smart-ng-client.module.mjs +20 -6
- package/esm2020/projects.mjs +3 -1
- package/fesm2015/smartbit4all-ng-client.mjs +115 -11
- package/fesm2015/smartbit4all-ng-client.mjs.map +1 -1
- package/fesm2020/smartbit4all-ng-client.mjs +111 -11
- package/fesm2020/smartbit4all-ng-client.mjs.map +1 -1
- package/lib/smart-client/smart-component-api-client.d.ts +4 -0
- package/lib/smart-client/smart-component-layout/smart-component-layout.component.d.ts +21 -0
- package/lib/smart-client/smart-component-layout/smart-component-layout.model.d.ts +30 -0
- package/lib/smart-ng-client.module.d.ts +8 -6
- package/package.json +1 -1
- package/projects.d.ts +2 -0
- package/smartbit4all-ng-client-1.1.35.tgz +0 -0
- package/smartbit4all-ng-client-1.1.34.tgz +0 -0
|
@@ -25,10 +25,11 @@ import { catchError as catchError$1, switchMap } from 'rxjs/operators';
|
|
|
25
25
|
import * as i4$4 from '@angular/material/snack-bar';
|
|
26
26
|
import { MAT_SNACK_BAR_DATA, MatSnackBarModule } from '@angular/material/snack-bar';
|
|
27
27
|
import { Validators } from '@angular/forms';
|
|
28
|
-
import * as
|
|
28
|
+
import * as i1$2 from '@smartbit4all/form';
|
|
29
29
|
import { SmartFormWidgetType, SmartValidatorName, SmartFormWidgetDirection, SmartformModule } from '@smartbit4all/form';
|
|
30
|
+
import * as i2$2 from '@smartbit4all/grid';
|
|
31
|
+
import { SmartLayoutDef, GridUiActionType, SmartGridModule, SmartGridComponent } from '@smartbit4all/grid';
|
|
30
32
|
import { __decorate, __param } from 'tslib';
|
|
31
|
-
import { SmartGridComponent } from '@smartbit4all/grid';
|
|
32
33
|
import { SmarttreeGenericService } from '@smartbit4all/tree';
|
|
33
34
|
|
|
34
35
|
/**
|
|
@@ -3910,7 +3911,7 @@ class UiActionInputDialogComponent {
|
|
|
3910
3911
|
}
|
|
3911
3912
|
}
|
|
3912
3913
|
UiActionInputDialogComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.12", ngImport: i0, type: UiActionInputDialogComponent, deps: [{ token: UiActionInputDialogService }, { token: UiActionDescriptorService }], target: i0.ɵɵFactoryTarget.Component });
|
|
3913
|
-
UiActionInputDialogComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.3.12", type: UiActionInputDialogComponent, selector: "smart-ui-action-input-dialog", viewQueries: [{ propertyName: "folderFormChild", first: true, predicate: ["form"], descendants: true }], ngImport: i0, template: "<div class=\"folderNameDialogContainer\">\n\t<div class=\"headerContainer\">\n\t\t<h3 class=\"color-accent-700\">\n\t\t\t{{ getTitle() }}\n\t\t</h3>\n\t\t<button mat-icon-button title=\"close\" (click)=\"cancel()\">\n\t\t\t<smart-icon [color]=\"'primary'\" [icon]=\"'X'\"></smart-icon>\n\t\t</button>\n\t</div>\n\t<p>\n\t\t{{ getText() }}\n\t</p>\n\t<smartform #form [smartForm]=\"folderForm\"></smartform>\n\t<div class=\"folderNameDialogButtonsContainer\">\n\t\t<button mat-button color=\"accent\" [color]=\"getCancelButtonColor()\" (click)=\"cancel()\">\n\t\t\t{{ getCancelButtonLabel() }}\n\t\t</button>\n\t\t<button mat-raised-button [color]=\"getActionButtonColor()\" (click)=\"save()\">\n\t\t\t{{ getActionButtonLabel() }}\n\t\t</button>\n\t</div>\n</div>\n", styles: [".folderNameDialogContainer{width:25rem;display:flex;flex-direction:column;gap:1rem}.headerContainer{display:flex;flex-direction:row;justify-content:space-between}.headerContainer h3{margin:0}.folderNameDialogButtonsContainer{display:flex;flex-direction:row;justify-content:flex-end;gap:.5rem}\n"], components: [{ type: i2.MatButton, selector: "button[mat-button], button[mat-raised-button], button[mat-icon-button], button[mat-fab], button[mat-mini-fab], button[mat-stroked-button], button[mat-flat-button]", inputs: ["disabled", "disableRipple", "color"], exportAs: ["matButton"] }, { type: i4$2.SmartIconComponent, selector: "smart-icon", inputs: ["icon", "color"] }, { type:
|
|
3914
|
+
UiActionInputDialogComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.3.12", type: UiActionInputDialogComponent, selector: "smart-ui-action-input-dialog", viewQueries: [{ propertyName: "folderFormChild", first: true, predicate: ["form"], descendants: true }], ngImport: i0, template: "<div class=\"folderNameDialogContainer\">\n\t<div class=\"headerContainer\">\n\t\t<h3 class=\"color-accent-700\">\n\t\t\t{{ getTitle() }}\n\t\t</h3>\n\t\t<button mat-icon-button title=\"close\" (click)=\"cancel()\">\n\t\t\t<smart-icon [color]=\"'primary'\" [icon]=\"'X'\"></smart-icon>\n\t\t</button>\n\t</div>\n\t<p>\n\t\t{{ getText() }}\n\t</p>\n\t<smartform #form [smartForm]=\"folderForm\"></smartform>\n\t<div class=\"folderNameDialogButtonsContainer\">\n\t\t<button mat-button color=\"accent\" [color]=\"getCancelButtonColor()\" (click)=\"cancel()\">\n\t\t\t{{ getCancelButtonLabel() }}\n\t\t</button>\n\t\t<button mat-raised-button [color]=\"getActionButtonColor()\" (click)=\"save()\">\n\t\t\t{{ getActionButtonLabel() }}\n\t\t</button>\n\t</div>\n</div>\n", styles: [".folderNameDialogContainer{width:25rem;display:flex;flex-direction:column;gap:1rem}.headerContainer{display:flex;flex-direction:row;justify-content:space-between}.headerContainer h3{margin:0}.folderNameDialogButtonsContainer{display:flex;flex-direction:row;justify-content:flex-end;gap:.5rem}\n"], components: [{ type: i2.MatButton, selector: "button[mat-button], button[mat-raised-button], button[mat-icon-button], button[mat-fab], button[mat-mini-fab], button[mat-stroked-button], button[mat-flat-button]", inputs: ["disabled", "disableRipple", "color"], exportAs: ["matButton"] }, { type: i4$2.SmartIconComponent, selector: "smart-icon", inputs: ["icon", "color"] }, { type: i1$2.SmartformComponent, selector: "smartform", inputs: ["smartForm"] }] });
|
|
3914
3915
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.12", ngImport: i0, type: UiActionInputDialogComponent, decorators: [{
|
|
3915
3916
|
type: Component,
|
|
3916
3917
|
args: [{ selector: 'smart-ui-action-input-dialog', template: "<div class=\"folderNameDialogContainer\">\n\t<div class=\"headerContainer\">\n\t\t<h3 class=\"color-accent-700\">\n\t\t\t{{ getTitle() }}\n\t\t</h3>\n\t\t<button mat-icon-button title=\"close\" (click)=\"cancel()\">\n\t\t\t<smart-icon [color]=\"'primary'\" [icon]=\"'X'\"></smart-icon>\n\t\t</button>\n\t</div>\n\t<p>\n\t\t{{ getText() }}\n\t</p>\n\t<smartform #form [smartForm]=\"folderForm\"></smartform>\n\t<div class=\"folderNameDialogButtonsContainer\">\n\t\t<button mat-button color=\"accent\" [color]=\"getCancelButtonColor()\" (click)=\"cancel()\">\n\t\t\t{{ getCancelButtonLabel() }}\n\t\t</button>\n\t\t<button mat-raised-button [color]=\"getActionButtonColor()\" (click)=\"save()\">\n\t\t\t{{ getActionButtonLabel() }}\n\t\t</button>\n\t</div>\n</div>\n", styles: [".folderNameDialogContainer{width:25rem;display:flex;flex-direction:column;gap:1rem}.headerContainer{display:flex;flex-direction:row;justify-content:space-between}.headerContainer h3{margin:0}.folderNameDialogButtonsContainer{display:flex;flex-direction:row;justify-content:flex-end;gap:.5rem}\n"] }]
|
|
@@ -4018,7 +4019,7 @@ class UiActionFileUploadDialogComponent {
|
|
|
4018
4019
|
}
|
|
4019
4020
|
}
|
|
4020
4021
|
UiActionFileUploadDialogComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.12", ngImport: i0, type: UiActionFileUploadDialogComponent, deps: [{ token: UiActionFileUploadDialogService }, { token: UiActionDescriptorService }], target: i0.ɵɵFactoryTarget.Component });
|
|
4021
|
-
UiActionFileUploadDialogComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.3.12", type: UiActionFileUploadDialogComponent, selector: "lib-ui-action-file-upload-dialog", ngImport: i0, template: "<div class=\"folderNameDialogContainer\">\n <div class=\"headerContainer\">\n <h3 class=\"color-accent-700\">\n {{ getTitle() }}\n </h3>\n <button mat-icon-button title=\"close\" (click)=\"cancel()\">\n <smart-icon [color]=\"'primary'\" [icon]=\"'X'\"></smart-icon>\n </button>\n </div>\n <p>\n {{ getText() }}\n </p>\n <smartfileuploader\n [i18n]=\"i18n\"\n [fileFormats]=\"fileFormats\"\n [maxSizeMb]=\"maxSizeMb\"\n [uploadCallback]=\"upload.bind(this)\"\n [isMultiple]=\"isMultiple\"\n ></smartfileuploader>\n <div class=\"folderNameDialogButtonsContainer\">\n <button mat-button color=\"accent\" [color]=\"getCancelButtonColor()\" (click)=\"cancel()\">\n {{ getCancelButtonLabel() }}\n </button>\n <!-- <button mat-raised-button [color]=\"getActionButtonColor()\" (click)=\"upload()\">\n {{ getActionButtonLabel() }}\n </button> -->\n </div>\n</div>\n", styles: [".folderNameDialogContainer{width:25rem;display:flex;flex-direction:column;gap:1rem}.headerContainer{display:flex;flex-direction:row;justify-content:space-between}.headerContainer h3{margin:0}.folderNameDialogButtonsContainer{display:flex;flex-direction:row;justify-content:flex-end;gap:.5rem}\n"], components: [{ type: i2.MatButton, selector: "button[mat-button], button[mat-raised-button], button[mat-icon-button], button[mat-fab], button[mat-mini-fab], button[mat-stroked-button], button[mat-flat-button]", inputs: ["disabled", "disableRipple", "color"], exportAs: ["matButton"] }, { type: i4$2.SmartIconComponent, selector: "smart-icon", inputs: ["icon", "color"] }, { type:
|
|
4022
|
+
UiActionFileUploadDialogComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.3.12", type: UiActionFileUploadDialogComponent, selector: "lib-ui-action-file-upload-dialog", ngImport: i0, template: "<div class=\"folderNameDialogContainer\">\n <div class=\"headerContainer\">\n <h3 class=\"color-accent-700\">\n {{ getTitle() }}\n </h3>\n <button mat-icon-button title=\"close\" (click)=\"cancel()\">\n <smart-icon [color]=\"'primary'\" [icon]=\"'X'\"></smart-icon>\n </button>\n </div>\n <p>\n {{ getText() }}\n </p>\n <smartfileuploader\n [i18n]=\"i18n\"\n [fileFormats]=\"fileFormats\"\n [maxSizeMb]=\"maxSizeMb\"\n [uploadCallback]=\"upload.bind(this)\"\n [isMultiple]=\"isMultiple\"\n ></smartfileuploader>\n <div class=\"folderNameDialogButtonsContainer\">\n <button mat-button color=\"accent\" [color]=\"getCancelButtonColor()\" (click)=\"cancel()\">\n {{ getCancelButtonLabel() }}\n </button>\n <!-- <button mat-raised-button [color]=\"getActionButtonColor()\" (click)=\"upload()\">\n {{ getActionButtonLabel() }}\n </button> -->\n </div>\n</div>\n", styles: [".folderNameDialogContainer{width:25rem;display:flex;flex-direction:column;gap:1rem}.headerContainer{display:flex;flex-direction:row;justify-content:space-between}.headerContainer h3{margin:0}.folderNameDialogButtonsContainer{display:flex;flex-direction:row;justify-content:flex-end;gap:.5rem}\n"], components: [{ type: i2.MatButton, selector: "button[mat-button], button[mat-raised-button], button[mat-icon-button], button[mat-fab], button[mat-mini-fab], button[mat-stroked-button], button[mat-flat-button]", inputs: ["disabled", "disableRipple", "color"], exportAs: ["matButton"] }, { type: i4$2.SmartIconComponent, selector: "smart-icon", inputs: ["icon", "color"] }, { type: i1$2.SmartfileuploaderComponent, selector: "smartfileuploader", inputs: ["uploadCallback", "fileFormats", "maxSizeMb", "i18n", "useIconButton", "isMultiple"] }] });
|
|
4022
4023
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.12", ngImport: i0, type: UiActionFileUploadDialogComponent, decorators: [{
|
|
4023
4024
|
type: Component,
|
|
4024
4025
|
args: [{ selector: 'lib-ui-action-file-upload-dialog', template: "<div class=\"folderNameDialogContainer\">\n <div class=\"headerContainer\">\n <h3 class=\"color-accent-700\">\n {{ getTitle() }}\n </h3>\n <button mat-icon-button title=\"close\" (click)=\"cancel()\">\n <smart-icon [color]=\"'primary'\" [icon]=\"'X'\"></smart-icon>\n </button>\n </div>\n <p>\n {{ getText() }}\n </p>\n <smartfileuploader\n [i18n]=\"i18n\"\n [fileFormats]=\"fileFormats\"\n [maxSizeMb]=\"maxSizeMb\"\n [uploadCallback]=\"upload.bind(this)\"\n [isMultiple]=\"isMultiple\"\n ></smartfileuploader>\n <div class=\"folderNameDialogButtonsContainer\">\n <button mat-button color=\"accent\" [color]=\"getCancelButtonColor()\" (click)=\"cancel()\">\n {{ getCancelButtonLabel() }}\n </button>\n <!-- <button mat-raised-button [color]=\"getActionButtonColor()\" (click)=\"upload()\">\n {{ getActionButtonLabel() }}\n </button> -->\n </div>\n</div>\n", styles: [".folderNameDialogContainer{width:25rem;display:flex;flex-direction:column;gap:1rem}.headerContainer{display:flex;flex-direction:row;justify-content:space-between}.headerContainer h3{margin:0}.folderNameDialogButtonsContainer{display:flex;flex-direction:row;justify-content:flex-end;gap:.5rem}\n"] }]
|
|
@@ -4457,7 +4458,7 @@ class SmartFileUploaderComponent {
|
|
|
4457
4458
|
}
|
|
4458
4459
|
}
|
|
4459
4460
|
SmartFileUploaderComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.12", ngImport: i0, type: SmartFileUploaderComponent, deps: [{ token: UiActionService }, { token: UiActionDescriptorService }], target: i0.ɵɵFactoryTarget.Component });
|
|
4460
|
-
SmartFileUploaderComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.3.12", type: SmartFileUploaderComponent, selector: "smart-file-uploader4sc", inputs: { config: "config" }, usesOnChanges: true, ngImport: i0, template: "<smartfileuploader\n *ngIf=\"i18n\"\n [i18n]=\"i18n\"\n [fileFormats]=\"config?.fileFormats\"\n [isMultiple]=\"config?.isMultiple\"\n [maxSizeMb]=\"config?.maxSizeMb\"\n [uploadCallback]=\"executeUpload.bind(this)\"\n></smartfileuploader>\n", styles: [""], components: [{ type:
|
|
4461
|
+
SmartFileUploaderComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.3.12", type: SmartFileUploaderComponent, selector: "smart-file-uploader4sc", inputs: { config: "config" }, usesOnChanges: true, ngImport: i0, template: "<smartfileuploader\n *ngIf=\"i18n\"\n [i18n]=\"i18n\"\n [fileFormats]=\"config?.fileFormats\"\n [isMultiple]=\"config?.isMultiple\"\n [maxSizeMb]=\"config?.maxSizeMb\"\n [uploadCallback]=\"executeUpload.bind(this)\"\n></smartfileuploader>\n", styles: [""], components: [{ type: i1$2.SmartfileuploaderComponent, selector: "smartfileuploader", inputs: ["uploadCallback", "fileFormats", "maxSizeMb", "i18n", "useIconButton", "isMultiple"] }], directives: [{ type: i4.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }] });
|
|
4461
4462
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.12", ngImport: i0, type: SmartFileUploaderComponent, decorators: [{
|
|
4462
4463
|
type: Component,
|
|
4463
4464
|
args: [{ selector: 'smart-file-uploader4sc', template: "<smartfileuploader\n *ngIf=\"i18n\"\n [i18n]=\"i18n\"\n [fileFormats]=\"config?.fileFormats\"\n [isMultiple]=\"config?.isMultiple\"\n [maxSizeMb]=\"config?.maxSizeMb\"\n [uploadCallback]=\"executeUpload.bind(this)\"\n></smartfileuploader>\n", styles: [""] }]
|
|
@@ -4465,33 +4466,124 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.12", ngImpo
|
|
|
4465
4466
|
type: Input
|
|
4466
4467
|
}] } });
|
|
4467
4468
|
|
|
4469
|
+
const LayoutDirection = {
|
|
4470
|
+
Horizontal: 'horizontal',
|
|
4471
|
+
Vertical: 'vertical',
|
|
4472
|
+
};
|
|
4473
|
+
const ComponentType = {
|
|
4474
|
+
Container: 'container',
|
|
4475
|
+
Form: 'form',
|
|
4476
|
+
Widget: 'widget',
|
|
4477
|
+
};
|
|
4478
|
+
const ComponentWidgetType = {
|
|
4479
|
+
Grid: 'grid',
|
|
4480
|
+
};
|
|
4481
|
+
|
|
4482
|
+
class SmartComponentLayoutComponent {
|
|
4483
|
+
constructor(layoutService) {
|
|
4484
|
+
this.layoutService = layoutService;
|
|
4485
|
+
}
|
|
4486
|
+
ngOnChanges(changes) {
|
|
4487
|
+
this.smartComponentLayout = changes['smartComponentLayout'].currentValue;
|
|
4488
|
+
if (this.smartComponentLayout?.type === ComponentType.Form) {
|
|
4489
|
+
this.constructForm();
|
|
4490
|
+
}
|
|
4491
|
+
}
|
|
4492
|
+
type() {
|
|
4493
|
+
return ComponentType;
|
|
4494
|
+
}
|
|
4495
|
+
constructForm() {
|
|
4496
|
+
const widgets = this.layoutService.render({
|
|
4497
|
+
layoutDefinitions: this.smartComponentLayout?.form,
|
|
4498
|
+
});
|
|
4499
|
+
this.smartForm = {
|
|
4500
|
+
direction: SmartFormWidgetDirection.COL,
|
|
4501
|
+
model: this.smartComponentLayout?.parentComponent.model,
|
|
4502
|
+
constraints: this.smartComponentLayout?.parentComponent.model?.constraints,
|
|
4503
|
+
widgets,
|
|
4504
|
+
};
|
|
4505
|
+
this.smartComponentLayout?.parentComponent.addForm(
|
|
4506
|
+
// unique identifier for the form
|
|
4507
|
+
`form_${this.makeid(5)}`, this.smartForm, this.formChild);
|
|
4508
|
+
}
|
|
4509
|
+
makeid(length) {
|
|
4510
|
+
let result = '';
|
|
4511
|
+
const characters = 'ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789';
|
|
4512
|
+
const charactersLength = characters.length;
|
|
4513
|
+
let counter = 0;
|
|
4514
|
+
while (counter < length) {
|
|
4515
|
+
result += characters.charAt(Math.floor(Math.random() * charactersLength));
|
|
4516
|
+
counter += 1;
|
|
4517
|
+
}
|
|
4518
|
+
return result;
|
|
4519
|
+
}
|
|
4520
|
+
constructGrid() {
|
|
4521
|
+
this.smartGrid = {
|
|
4522
|
+
gridIdentifier: this.smartComponentLayout?.widget?.gridIdentifier,
|
|
4523
|
+
gridModel: {
|
|
4524
|
+
page: {},
|
|
4525
|
+
},
|
|
4526
|
+
layoutDef: SmartLayoutDef.TABLE,
|
|
4527
|
+
};
|
|
4528
|
+
this.smartGrid = this.smartComponentLayout?.parentComponent.addGrid(this.smartGrid, {
|
|
4529
|
+
rowUiActionType: GridUiActionType.POPUP_MENU,
|
|
4530
|
+
}, false, this.gridChild);
|
|
4531
|
+
}
|
|
4532
|
+
}
|
|
4533
|
+
SmartComponentLayoutComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.12", ngImport: i0, type: SmartComponentLayoutComponent, deps: [{ token: i1$2.SmartformLayoutDefinitionService }], target: i0.ɵɵFactoryTarget.Component });
|
|
4534
|
+
SmartComponentLayoutComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.3.12", type: SmartComponentLayoutComponent, selector: "smart-component-layout", inputs: { smartComponentLayout: "smartComponentLayout" }, viewQueries: [{ propertyName: "formChild", first: true, predicate: ["form"], descendants: true }, { propertyName: "gridChild", first: true, predicate: ["grid"], descendants: true }], usesOnChanges: true, ngImport: i0, template: "<div\n *ngIf=\"smartComponentLayout?.type === type().Container\"\n [ngClass]=\"smartComponentLayout?.direction ?? 'vertical'\"\n>\n <smart-component-layout\n [smartComponentLayout]=\"layout\"\n *ngFor=\"let layout of smartComponentLayout?.components\"\n ></smart-component-layout>\n</div>\n<smartform #form [smartForm]=\"smartForm\"></smartform>\n<smart-grid\n #grid\n [smartGrid]=\"smartGrid\"\n [uuid]=\"smartComponentLayout?.parentComponent?.uuid!\"\n></smart-grid>\n", styles: [".horizontal{display:flex;flex-direction:row}.vertical{display:flex;flex-direction:column}\n"], components: [{ type: SmartComponentLayoutComponent, selector: "smart-component-layout", inputs: ["smartComponentLayout"] }, { type: i1$2.SmartformComponent, selector: "smartform", inputs: ["smartForm"] }, { type: i2$2.SmartGridComponent, selector: "smart-grid", inputs: ["smartGrid", "uuid", "dev"] }], directives: [{ type: i4.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { type: i4.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { type: i4.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }] });
|
|
4535
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.12", ngImport: i0, type: SmartComponentLayoutComponent, decorators: [{
|
|
4536
|
+
type: Component,
|
|
4537
|
+
args: [{ selector: 'smart-component-layout', template: "<div\n *ngIf=\"smartComponentLayout?.type === type().Container\"\n [ngClass]=\"smartComponentLayout?.direction ?? 'vertical'\"\n>\n <smart-component-layout\n [smartComponentLayout]=\"layout\"\n *ngFor=\"let layout of smartComponentLayout?.components\"\n ></smart-component-layout>\n</div>\n<smartform #form [smartForm]=\"smartForm\"></smartform>\n<smart-grid\n #grid\n [smartGrid]=\"smartGrid\"\n [uuid]=\"smartComponentLayout?.parentComponent?.uuid!\"\n></smart-grid>\n", styles: [".horizontal{display:flex;flex-direction:row}.vertical{display:flex;flex-direction:column}\n"] }]
|
|
4538
|
+
}], ctorParameters: function () { return [{ type: i1$2.SmartformLayoutDefinitionService }]; }, propDecorators: { smartComponentLayout: [{
|
|
4539
|
+
type: Input
|
|
4540
|
+
}], formChild: [{
|
|
4541
|
+
type: ViewChild,
|
|
4542
|
+
args: ['form']
|
|
4543
|
+
}], gridChild: [{
|
|
4544
|
+
type: ViewChild,
|
|
4545
|
+
args: ['grid']
|
|
4546
|
+
}] } });
|
|
4547
|
+
|
|
4468
4548
|
class SmartNgClientModule {
|
|
4469
4549
|
}
|
|
4470
4550
|
SmartNgClientModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.12", ngImport: i0, type: SmartNgClientModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
|
|
4471
|
-
SmartNgClientModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "12.0.0", version: "13.3.12", ngImport: i0, type: SmartNgClientModule, declarations: [SmartFileUploaderComponent], imports: [BrowserModule,
|
|
4551
|
+
SmartNgClientModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "12.0.0", version: "13.3.12", ngImport: i0, type: SmartNgClientModule, declarations: [SmartFileUploaderComponent, SmartComponentLayoutComponent], imports: [BrowserModule,
|
|
4472
4552
|
MatCommonModule,
|
|
4473
4553
|
SmartSessionModule,
|
|
4474
4554
|
SmartViewContextModule,
|
|
4475
|
-
SmartformModule
|
|
4555
|
+
SmartformModule,
|
|
4556
|
+
SmartGridModule], exports: [SmartSessionModule,
|
|
4557
|
+
SmartViewContextModule,
|
|
4558
|
+
SmartFileUploaderComponent,
|
|
4559
|
+
SmartComponentLayoutComponent] });
|
|
4476
4560
|
SmartNgClientModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "13.3.12", ngImport: i0, type: SmartNgClientModule, providers: [SmartNgClientService], imports: [[
|
|
4477
4561
|
BrowserModule,
|
|
4478
4562
|
MatCommonModule,
|
|
4479
4563
|
SmartSessionModule,
|
|
4480
4564
|
SmartViewContextModule,
|
|
4481
4565
|
SmartformModule,
|
|
4482
|
-
|
|
4566
|
+
SmartGridModule,
|
|
4567
|
+
], SmartSessionModule,
|
|
4568
|
+
SmartViewContextModule] });
|
|
4483
4569
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.12", ngImport: i0, type: SmartNgClientModule, decorators: [{
|
|
4484
4570
|
type: NgModule,
|
|
4485
4571
|
args: [{
|
|
4486
|
-
declarations: [SmartFileUploaderComponent],
|
|
4572
|
+
declarations: [SmartFileUploaderComponent, SmartComponentLayoutComponent],
|
|
4487
4573
|
imports: [
|
|
4488
4574
|
BrowserModule,
|
|
4489
4575
|
MatCommonModule,
|
|
4490
4576
|
SmartSessionModule,
|
|
4491
4577
|
SmartViewContextModule,
|
|
4492
4578
|
SmartformModule,
|
|
4579
|
+
SmartGridModule,
|
|
4580
|
+
],
|
|
4581
|
+
exports: [
|
|
4582
|
+
SmartSessionModule,
|
|
4583
|
+
SmartViewContextModule,
|
|
4584
|
+
SmartFileUploaderComponent,
|
|
4585
|
+
SmartComponentLayoutComponent,
|
|
4493
4586
|
],
|
|
4494
|
-
exports: [SmartSessionModule, SmartViewContextModule, SmartFileUploaderComponent],
|
|
4495
4587
|
providers: [SmartNgClientService],
|
|
4496
4588
|
}]
|
|
4497
4589
|
}] });
|
|
@@ -4658,6 +4750,14 @@ let SmartComponentApiClient = class SmartComponentApiClient {
|
|
|
4658
4750
|
throw new Error('handleSpecificDemandsAsynchronously method not implemented.');
|
|
4659
4751
|
}
|
|
4660
4752
|
//#endregion
|
|
4753
|
+
addSmartLayout(layout) {
|
|
4754
|
+
this.smartComponentLayoutDefinition = this.setParentComponent(layout);
|
|
4755
|
+
}
|
|
4756
|
+
setParentComponent(layout) {
|
|
4757
|
+
layout.parentComponent = this;
|
|
4758
|
+
layout.components = layout.components?.map((l) => this.setParentComponent(l));
|
|
4759
|
+
return layout;
|
|
4760
|
+
}
|
|
4661
4761
|
addGrid(smartGrid, options, useAsDefaultGrid, componentReference) {
|
|
4662
4762
|
smartGrid.options = options;
|
|
4663
4763
|
smartGrid.uiActionService = this.uiActionService;
|
|
@@ -4904,5 +5004,5 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.12", ngImpo
|
|
|
4904
5004
|
* Generated bundle index. Do not edit.
|
|
4905
5005
|
*/
|
|
4906
5006
|
|
|
4907
|
-
export { APIS, ApiModule, ApiQueueService, BASE_PATH, COLLECTION_FORMATS, CloseResult, Configuration, DataChangeKind, IS_ASYNC_PARAM_NAME, MessageOptionType, MessageType, SessionAPIS, SessionErrorBehaviour, SessionService, SmartAuthService, SmartComponent, SmartComponentApiClient, SmartDevToolDatePipe, SmartDevToolFloatingButtonComponent, SmartDevToolService, SmartFileUploaderComponent, SmartLinkChannelVariableInPath, SmartLinkUuidVariableInPath, SmartNgClientModule, SmartNgClientService, SmartService, SmartSessionModule, SmartSessionService, SmartSessionTimerComponent, SmartSessionTimerService, SmartViewContextErrorDialogButtonLabel, SmartViewContextErrorDialogMessage, SmartViewContextErrorDialogTitle, SmartViewContextModule, SmartViewContextService, SmartViewRedirect, UiActionButtonIconPos, UiActionButtonType, UiActionConfirmDialogComponent, UiActionConfirmDialogService, UiActionDescriptorService, UiActionDialogType, UiActionFeedbackType, UiActionInputDialogComponent, UiActionInputDialogService, UiActionInputType, UiActionService, UiActionToolbarComponent, ViewEventHandler, ViewService, ViewState, ViewType, WidgetMap };
|
|
5007
|
+
export { APIS, ApiModule, ApiQueueService, BASE_PATH, COLLECTION_FORMATS, CloseResult, ComponentType, ComponentWidgetType, Configuration, DataChangeKind, IS_ASYNC_PARAM_NAME, LayoutDirection, MessageOptionType, MessageType, SessionAPIS, SessionErrorBehaviour, SessionService, SmartAuthService, SmartComponent, SmartComponentApiClient, SmartComponentLayoutComponent, SmartDevToolDatePipe, SmartDevToolFloatingButtonComponent, SmartDevToolService, SmartFileUploaderComponent, SmartLinkChannelVariableInPath, SmartLinkUuidVariableInPath, SmartNgClientModule, SmartNgClientService, SmartService, SmartSessionModule, SmartSessionService, SmartSessionTimerComponent, SmartSessionTimerService, SmartViewContextErrorDialogButtonLabel, SmartViewContextErrorDialogMessage, SmartViewContextErrorDialogTitle, SmartViewContextModule, SmartViewContextService, SmartViewRedirect, UiActionButtonIconPos, UiActionButtonType, UiActionConfirmDialogComponent, UiActionConfirmDialogService, UiActionDescriptorService, UiActionDialogType, UiActionFeedbackType, UiActionInputDialogComponent, UiActionInputDialogService, UiActionInputType, UiActionService, UiActionToolbarComponent, ViewEventHandler, ViewService, ViewState, ViewType, WidgetMap };
|
|
4908
5008
|
//# sourceMappingURL=smartbit4all-ng-client.mjs.map
|