@smartbit4all/ng-client 1.1.33 → 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-client/smart-file-uploader/smart-file-uploader.component.mjs +4 -1
- package/esm2020/lib/smart-ng-client.module.mjs +20 -6
- package/esm2020/projects.mjs +3 -1
- package/fesm2015/smartbit4all-ng-client.mjs +118 -11
- package/fesm2015/smartbit4all-ng-client.mjs.map +1 -1
- package/fesm2020/smartbit4all-ng-client.mjs +114 -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.33.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"] }]
|
|
@@ -4427,6 +4428,9 @@ class SmartFileUploaderComponent {
|
|
|
4427
4428
|
}
|
|
4428
4429
|
ngOnChanges(changes) {
|
|
4429
4430
|
this.config = changes['config'].currentValue;
|
|
4431
|
+
if (this.config) {
|
|
4432
|
+
this.setUp();
|
|
4433
|
+
}
|
|
4430
4434
|
}
|
|
4431
4435
|
async setUp() {
|
|
4432
4436
|
this.uiActionModel = this.config?.smartComponent.uiActionModels.find((uiActionModel) => uiActionModel.uiAction.code === this.config?.uiActionCode);
|
|
@@ -4454,7 +4458,7 @@ class SmartFileUploaderComponent {
|
|
|
4454
4458
|
}
|
|
4455
4459
|
}
|
|
4456
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 });
|
|
4457
|
-
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"] }] });
|
|
4458
4462
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.12", ngImport: i0, type: SmartFileUploaderComponent, decorators: [{
|
|
4459
4463
|
type: Component,
|
|
4460
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: [""] }]
|
|
@@ -4462,33 +4466,124 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.12", ngImpo
|
|
|
4462
4466
|
type: Input
|
|
4463
4467
|
}] } });
|
|
4464
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
|
+
|
|
4465
4548
|
class SmartNgClientModule {
|
|
4466
4549
|
}
|
|
4467
4550
|
SmartNgClientModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.12", ngImport: i0, type: SmartNgClientModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
|
|
4468
|
-
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,
|
|
4469
4552
|
MatCommonModule,
|
|
4470
4553
|
SmartSessionModule,
|
|
4471
4554
|
SmartViewContextModule,
|
|
4472
|
-
SmartformModule
|
|
4555
|
+
SmartformModule,
|
|
4556
|
+
SmartGridModule], exports: [SmartSessionModule,
|
|
4557
|
+
SmartViewContextModule,
|
|
4558
|
+
SmartFileUploaderComponent,
|
|
4559
|
+
SmartComponentLayoutComponent] });
|
|
4473
4560
|
SmartNgClientModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "13.3.12", ngImport: i0, type: SmartNgClientModule, providers: [SmartNgClientService], imports: [[
|
|
4474
4561
|
BrowserModule,
|
|
4475
4562
|
MatCommonModule,
|
|
4476
4563
|
SmartSessionModule,
|
|
4477
4564
|
SmartViewContextModule,
|
|
4478
4565
|
SmartformModule,
|
|
4479
|
-
|
|
4566
|
+
SmartGridModule,
|
|
4567
|
+
], SmartSessionModule,
|
|
4568
|
+
SmartViewContextModule] });
|
|
4480
4569
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.12", ngImport: i0, type: SmartNgClientModule, decorators: [{
|
|
4481
4570
|
type: NgModule,
|
|
4482
4571
|
args: [{
|
|
4483
|
-
declarations: [SmartFileUploaderComponent],
|
|
4572
|
+
declarations: [SmartFileUploaderComponent, SmartComponentLayoutComponent],
|
|
4484
4573
|
imports: [
|
|
4485
4574
|
BrowserModule,
|
|
4486
4575
|
MatCommonModule,
|
|
4487
4576
|
SmartSessionModule,
|
|
4488
4577
|
SmartViewContextModule,
|
|
4489
4578
|
SmartformModule,
|
|
4579
|
+
SmartGridModule,
|
|
4580
|
+
],
|
|
4581
|
+
exports: [
|
|
4582
|
+
SmartSessionModule,
|
|
4583
|
+
SmartViewContextModule,
|
|
4584
|
+
SmartFileUploaderComponent,
|
|
4585
|
+
SmartComponentLayoutComponent,
|
|
4490
4586
|
],
|
|
4491
|
-
exports: [SmartSessionModule, SmartViewContextModule, SmartFileUploaderComponent],
|
|
4492
4587
|
providers: [SmartNgClientService],
|
|
4493
4588
|
}]
|
|
4494
4589
|
}] });
|
|
@@ -4655,6 +4750,14 @@ let SmartComponentApiClient = class SmartComponentApiClient {
|
|
|
4655
4750
|
throw new Error('handleSpecificDemandsAsynchronously method not implemented.');
|
|
4656
4751
|
}
|
|
4657
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
|
+
}
|
|
4658
4761
|
addGrid(smartGrid, options, useAsDefaultGrid, componentReference) {
|
|
4659
4762
|
smartGrid.options = options;
|
|
4660
4763
|
smartGrid.uiActionService = this.uiActionService;
|
|
@@ -4901,5 +5004,5 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.12", ngImpo
|
|
|
4901
5004
|
* Generated bundle index. Do not edit.
|
|
4902
5005
|
*/
|
|
4903
5006
|
|
|
4904
|
-
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 };
|
|
4905
5008
|
//# sourceMappingURL=smartbit4all-ng-client.mjs.map
|