@ajsf/material 18.3.0 → 19.0.0-rc.0

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.
Files changed (29) hide show
  1. package/fesm2022/ajsf-material.mjs +103 -98
  2. package/fesm2022/ajsf-material.mjs.map +1 -1
  3. package/lib/material-design-framework.module.d.ts +2 -2
  4. package/package.json +7 -9
  5. package/esm2022/ajsf-material.mjs +0 -5
  6. package/esm2022/lib/material-design-framework.component.mjs +0 -101
  7. package/esm2022/lib/material-design-framework.module.mjs +0 -111
  8. package/esm2022/lib/material-design.framework.mjs +0 -57
  9. package/esm2022/lib/widgets/flex-layout-root.component.mjs +0 -98
  10. package/esm2022/lib/widgets/flex-layout-section.component.mjs +0 -357
  11. package/esm2022/lib/widgets/material-add-reference.component.mjs +0 -66
  12. package/esm2022/lib/widgets/material-button-group.component.mjs +0 -90
  13. package/esm2022/lib/widgets/material-button.component.mjs +0 -76
  14. package/esm2022/lib/widgets/material-checkbox.component.mjs +0 -166
  15. package/esm2022/lib/widgets/material-checkboxes.component.mjs +0 -129
  16. package/esm2022/lib/widgets/material-chip-list.component.mjs +0 -35
  17. package/esm2022/lib/widgets/material-datepicker.component.mjs +0 -141
  18. package/esm2022/lib/widgets/material-file.component.mjs +0 -35
  19. package/esm2022/lib/widgets/material-input.component.mjs +0 -149
  20. package/esm2022/lib/widgets/material-number.component.mjs +0 -145
  21. package/esm2022/lib/widgets/material-one-of.component.mjs +0 -35
  22. package/esm2022/lib/widgets/material-radios.component.mjs +0 -122
  23. package/esm2022/lib/widgets/material-select.component.mjs +0 -186
  24. package/esm2022/lib/widgets/material-slider.component.mjs +0 -77
  25. package/esm2022/lib/widgets/material-stepper.component.mjs +0 -35
  26. package/esm2022/lib/widgets/material-tabs.component.mjs +0 -96
  27. package/esm2022/lib/widgets/material-textarea.component.mjs +0 -134
  28. package/esm2022/lib/widgets/public_api.mjs +0 -52
  29. package/esm2022/public_api.mjs +0 -8
@@ -1,4 +1,4 @@
1
- import { MatNativeDateModule } from '@angular/material/core';
1
+ import { MatFormFieldModule } from '@angular/material/form-field';
2
2
  import * as i0 from "@angular/core";
3
3
  import * as i1 from "./widgets/flex-layout-root.component";
4
4
  import * as i2 from "./widgets/flex-layout-section.component";
@@ -51,7 +51,7 @@ import * as i44 from "@ajsf/core";
51
51
  * MatSidenavModule, MatSnackBarModule, MatSortModule, MatTableModule,
52
52
  * ,
53
53
  */
54
- export declare const ANGULAR_MATERIAL_MODULES: (typeof MatNativeDateModule)[];
54
+ export declare const ANGULAR_MATERIAL_MODULES: (typeof MatFormFieldModule)[];
55
55
  export declare class MaterialDesignFrameworkModule {
56
56
  static ɵfac: i0.ɵɵFactoryDeclaration<MaterialDesignFrameworkModule, never>;
57
57
  static ɵmod: i0.ɵɵNgModuleDeclaration<MaterialDesignFrameworkModule, [typeof i1.FlexLayoutRootComponent, typeof i2.FlexLayoutSectionComponent, typeof i3.MaterialAddReferenceComponent, typeof i4.MaterialOneOfComponent, typeof i5.MaterialButtonComponent, typeof i6.MaterialButtonGroupComponent, typeof i7.MaterialCheckboxComponent, typeof i8.MaterialCheckboxesComponent, typeof i9.MaterialChipListComponent, typeof i10.MaterialDatepickerComponent, typeof i11.MaterialFileComponent, typeof i12.MaterialInputComponent, typeof i13.MaterialNumberComponent, typeof i14.MaterialRadiosComponent, typeof i15.MaterialSelectComponent, typeof i16.MaterialSliderComponent, typeof i17.MaterialStepperComponent, typeof i18.MaterialTabsComponent, typeof i19.MaterialTextareaComponent, typeof i20.MaterialDesignFrameworkComponent], [typeof i21.CommonModule, typeof i22.FormsModule, typeof i22.ReactiveFormsModule, typeof i23.MatAutocompleteModule, typeof i24.MatButtonModule, typeof i25.MatButtonToggleModule, typeof i26.MatCardModule, typeof i27.MatCheckboxModule, typeof i28.MatChipsModule, typeof i29.MatDatepickerModule, typeof i30.MatExpansionModule, typeof i31.MatFormFieldModule, typeof i32.MatIconModule, typeof i33.MatInputModule, typeof i34.MatNativeDateModule, typeof i35.MatRadioModule, typeof i36.MatSelectModule, typeof i37.MatSliderModule, typeof i38.MatSlideToggleModule, typeof i39.MatStepperModule, typeof i40.MatTabsModule, typeof i41.MatTooltipModule, typeof i42.MatToolbarModule, typeof i43.MatMenuModule, typeof i42.MatToolbarModule, typeof i44.WidgetLibraryModule, typeof i44.JsonSchemaFormModule], [typeof i44.JsonSchemaFormModule, typeof i1.FlexLayoutRootComponent, typeof i2.FlexLayoutSectionComponent, typeof i3.MaterialAddReferenceComponent, typeof i4.MaterialOneOfComponent, typeof i5.MaterialButtonComponent, typeof i6.MaterialButtonGroupComponent, typeof i7.MaterialCheckboxComponent, typeof i8.MaterialCheckboxesComponent, typeof i9.MaterialChipListComponent, typeof i10.MaterialDatepickerComponent, typeof i11.MaterialFileComponent, typeof i12.MaterialInputComponent, typeof i13.MaterialNumberComponent, typeof i14.MaterialRadiosComponent, typeof i15.MaterialSelectComponent, typeof i16.MaterialSliderComponent, typeof i17.MaterialStepperComponent, typeof i18.MaterialTabsComponent, typeof i19.MaterialTextareaComponent, typeof i20.MaterialDesignFrameworkComponent]>;
package/package.json CHANGED
@@ -1,14 +1,14 @@
1
1
  {
2
2
  "name": "@ajsf/material",
3
- "version": "18.3.0",
3
+ "version": "19.0.0-rc.0",
4
4
  "description": "Angular JSON Schema Form builder using Angular Material UI",
5
5
  "author": "https://github.com/hamzahamidi/ajsf/graphs/contributors",
6
6
  "keywords": [
7
7
  "Angular",
8
8
  "ng",
9
- "Angular18",
10
- "Angular 18",
11
- "ng18",
9
+ "Angular19",
10
+ "Angular 19",
11
+ "ng19",
12
12
  "JSON Schema",
13
13
  "form",
14
14
  "forms",
@@ -29,12 +29,12 @@
29
29
  "funding": "https://github.com/sponsors/hamzahamidi",
30
30
  "private": false,
31
31
  "dependencies": {
32
- "@ajsf/core": "^18.3.0",
32
+ "@ajsf/core": "19.0.0-rc.0",
33
33
  "tslib": "^2.0.0"
34
34
  },
35
35
  "peerDependencies": {
36
- "@angular/material": "^18.0.0",
37
- "@angular/cdk": "^18.0.0"
36
+ "@angular/material": "^19.0.0",
37
+ "@angular/cdk": "^19.0.0"
38
38
  },
39
39
  "module": "fesm2022/ajsf-material.mjs",
40
40
  "typings": "index.d.ts",
@@ -44,8 +44,6 @@
44
44
  },
45
45
  ".": {
46
46
  "types": "./index.d.ts",
47
- "esm2022": "./esm2022/ajsf-material.mjs",
48
- "esm": "./esm2022/ajsf-material.mjs",
49
47
  "default": "./fesm2022/ajsf-material.mjs"
50
48
  }
51
49
  },
@@ -1,5 +0,0 @@
1
- /**
2
- * Generated bundle index. Do not edit.
3
- */
4
- export * from './public_api';
5
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYWpzZi1tYXRlcmlhbC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3Byb2plY3RzL2Fqc2YtbWF0ZXJpYWwvc3JjL2Fqc2YtbWF0ZXJpYWwudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUE7O0dBRUc7QUFFSCxjQUFjLGNBQWMsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbIi8qKlxuICogR2VuZXJhdGVkIGJ1bmRsZSBpbmRleC4gRG8gbm90IGVkaXQuXG4gKi9cblxuZXhwb3J0ICogZnJvbSAnLi9wdWJsaWNfYXBpJztcbiJdfQ==
@@ -1,101 +0,0 @@
1
- import { Component, Input } from '@angular/core';
2
- import { cloneDeep, isDefined } from '@ajsf/core';
3
- import * as i0 from "@angular/core";
4
- import * as i1 from "@ajsf/core";
5
- import * as i2 from "@angular/common";
6
- export class MaterialDesignFrameworkComponent {
7
- constructor(changeDetector, jsf) {
8
- this.changeDetector = changeDetector;
9
- this.jsf = jsf;
10
- this.frameworkInitialized = false;
11
- this.formControl = null;
12
- this.parentArray = null;
13
- this.isOrderable = false;
14
- this.dynamicTitle = null;
15
- }
16
- get showRemoveButton() {
17
- if (!this.layoutNode || !this.widgetOptions.removable ||
18
- this.widgetOptions.readonly || this.layoutNode.type === '$ref') {
19
- return false;
20
- }
21
- if (this.layoutNode.recursiveReference) {
22
- return true;
23
- }
24
- if (!this.layoutNode.arrayItem || !this.parentArray) {
25
- return false;
26
- }
27
- // If array length <= minItems, don't allow removing any items
28
- return this.parentArray.items.length - 1 <= this.parentArray.options.minItems ? false :
29
- // For removable list items, allow removing any item
30
- this.layoutNode.arrayItemType === 'list' ? true :
31
- // For removable tuple items, only allow removing last item in list
32
- this.layoutIndex[this.layoutIndex.length - 1] === this.parentArray.items.length - 2;
33
- }
34
- ngOnInit() {
35
- this.initializeFramework();
36
- }
37
- ngOnChanges() {
38
- if (!this.frameworkInitialized) {
39
- this.initializeFramework();
40
- }
41
- if (this.dynamicTitle) {
42
- this.updateTitle();
43
- }
44
- }
45
- initializeFramework() {
46
- if (this.layoutNode) {
47
- this.options = cloneDeep(this.layoutNode.options || {});
48
- this.widgetLayoutNode = {
49
- ...this.layoutNode,
50
- options: cloneDeep(this.layoutNode.options || {})
51
- };
52
- this.widgetOptions = this.widgetLayoutNode.options;
53
- this.formControl = this.jsf.getFormControl(this);
54
- if (isDefined(this.widgetOptions.minimum) &&
55
- isDefined(this.widgetOptions.maximum) &&
56
- this.widgetOptions.multipleOf >= 1) {
57
- this.layoutNode.type = 'range';
58
- }
59
- if (!['$ref', 'advancedfieldset', 'authfieldset', 'button', 'card',
60
- 'checkbox', 'expansion-panel', 'help', 'message', 'msg', 'section',
61
- 'submit', 'tabarray', 'tabs'].includes(this.layoutNode.type) &&
62
- /{{.+?}}/.test(this.widgetOptions.title || '')) {
63
- this.dynamicTitle = this.widgetOptions.title;
64
- this.updateTitle();
65
- }
66
- if (this.layoutNode.arrayItem && this.layoutNode.type !== '$ref') {
67
- this.parentArray = this.jsf.getParentNode(this);
68
- if (this.parentArray) {
69
- this.isOrderable =
70
- this.parentArray.type.slice(0, 3) !== 'tab' &&
71
- this.layoutNode.arrayItemType === 'list' &&
72
- !this.widgetOptions.readonly &&
73
- this.parentArray.options.orderable;
74
- }
75
- }
76
- this.frameworkInitialized = true;
77
- }
78
- else {
79
- this.options = {};
80
- }
81
- }
82
- updateTitle() {
83
- this.widgetLayoutNode.options.title = this.jsf.parseText(this.dynamicTitle, this.jsf.getFormControlValue(this), this.jsf.getFormControlGroup(this).value, this.dataIndex[this.dataIndex.length - 1]);
84
- }
85
- removeItem() {
86
- this.jsf.removeItem(this);
87
- }
88
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: MaterialDesignFrameworkComponent, deps: [{ token: i0.ChangeDetectorRef }, { token: i1.JsonSchemaFormService }], target: i0.ɵɵFactoryTarget.Component }); }
89
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.14", type: MaterialDesignFrameworkComponent, selector: "material-design-framework", inputs: { layoutNode: "layoutNode", layoutIndex: "layoutIndex", dataIndex: "dataIndex" }, usesOnChanges: true, ngImport: i0, template: "<div\n [class.array-item]=\"widgetLayoutNode?.arrayItem && widgetLayoutNode?.type !== '$ref'\"\n [orderable]=\"isOrderable\"\n [dataIndex]=\"dataIndex\"\n [layoutIndex]=\"layoutIndex\"\n [layoutNode]=\"widgetLayoutNode\">\n <svg *ngIf=\"showRemoveButton\"\n xmlns=\"http://www.w3.org/2000/svg\"\n height=\"18\" width=\"18\" viewBox=\"0 0 24 24\"\n class=\"close-button\"\n (click)=\"removeItem()\">\n <path\n d=\"M19 6.41L17.59 5 12 10.59 6.41 5 5 6.41 10.59 12 5 17.59 6.41 19 12 13.41 17.59 19 19 17.59 13.41 12 19 6.41z\"/>\n </svg>\n <select-widget-widget\n [dataIndex]=\"dataIndex\"\n [layoutIndex]=\"layoutIndex\"\n [layoutNode]=\"widgetLayoutNode\"></select-widget-widget>\n</div>\n<div class=\"spacer\" *ngIf=\"widgetLayoutNode?.arrayItem && widgetLayoutNode?.type !== '$ref'\"></div>\n", styles: [".array-item{border-radius:2px;box-shadow:0 3px 1px -2px #0003,0 2px 2px #00000024,0 1px 5px #0000001f;padding:6px;position:relative;transition:all .28s cubic-bezier(.4,0,.2,1)}.close-button{cursor:pointer;position:absolute;top:6px;right:6px;fill:#0006;visibility:hidden;z-index:500}.close-button:hover{fill:#000c}.array-item:hover>.close-button{visibility:visible}.spacer{margin:6px 0}[draggable=true]:hover{box-shadow:0 5px 5px -3px #0003,0 8px 10px 1px #00000024,0 3px 14px 2px #0000001f;cursor:move;z-index:10}[draggable=true].drag-target-top{box-shadow:0 -2px #000;position:relative;z-index:20}[draggable=true].drag-target-bottom{box-shadow:0 2px #000;position:relative;z-index:20}\n"], dependencies: [{ kind: "directive", type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: i1.SelectWidgetComponent, selector: "select-widget-widget", inputs: ["layoutNode", "layoutIndex", "dataIndex"] }, { kind: "directive", type: i1.OrderableDirective, selector: "[orderable]", inputs: ["orderable", "layoutNode", "layoutIndex", "dataIndex"] }] }); }
90
- }
91
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: MaterialDesignFrameworkComponent, decorators: [{
92
- type: Component,
93
- args: [{ selector: 'material-design-framework', template: "<div\n [class.array-item]=\"widgetLayoutNode?.arrayItem && widgetLayoutNode?.type !== '$ref'\"\n [orderable]=\"isOrderable\"\n [dataIndex]=\"dataIndex\"\n [layoutIndex]=\"layoutIndex\"\n [layoutNode]=\"widgetLayoutNode\">\n <svg *ngIf=\"showRemoveButton\"\n xmlns=\"http://www.w3.org/2000/svg\"\n height=\"18\" width=\"18\" viewBox=\"0 0 24 24\"\n class=\"close-button\"\n (click)=\"removeItem()\">\n <path\n d=\"M19 6.41L17.59 5 12 10.59 6.41 5 5 6.41 10.59 12 5 17.59 6.41 19 12 13.41 17.59 19 19 17.59 13.41 12 19 6.41z\"/>\n </svg>\n <select-widget-widget\n [dataIndex]=\"dataIndex\"\n [layoutIndex]=\"layoutIndex\"\n [layoutNode]=\"widgetLayoutNode\"></select-widget-widget>\n</div>\n<div class=\"spacer\" *ngIf=\"widgetLayoutNode?.arrayItem && widgetLayoutNode?.type !== '$ref'\"></div>\n", styles: [".array-item{border-radius:2px;box-shadow:0 3px 1px -2px #0003,0 2px 2px #00000024,0 1px 5px #0000001f;padding:6px;position:relative;transition:all .28s cubic-bezier(.4,0,.2,1)}.close-button{cursor:pointer;position:absolute;top:6px;right:6px;fill:#0006;visibility:hidden;z-index:500}.close-button:hover{fill:#000c}.array-item:hover>.close-button{visibility:visible}.spacer{margin:6px 0}[draggable=true]:hover{box-shadow:0 5px 5px -3px #0003,0 8px 10px 1px #00000024,0 3px 14px 2px #0000001f;cursor:move;z-index:10}[draggable=true].drag-target-top{box-shadow:0 -2px #000;position:relative;z-index:20}[draggable=true].drag-target-bottom{box-shadow:0 2px #000;position:relative;z-index:20}\n"] }]
94
- }], ctorParameters: () => [{ type: i0.ChangeDetectorRef }, { type: i1.JsonSchemaFormService }], propDecorators: { layoutNode: [{
95
- type: Input
96
- }], layoutIndex: [{
97
- type: Input
98
- }], dataIndex: [{
99
- type: Input
100
- }] } });
101
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibWF0ZXJpYWwtZGVzaWduLWZyYW1ld29yay5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9hanNmLW1hdGVyaWFsL3NyYy9saWIvbWF0ZXJpYWwtZGVzaWduLWZyYW1ld29yay5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9hanNmLW1hdGVyaWFsL3NyYy9saWIvbWF0ZXJpYWwtZGVzaWduLWZyYW1ld29yay5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQW9CLFNBQVMsRUFBRSxLQUFLLEVBQW9CLE1BQU0sZUFBZSxDQUFDO0FBQ3JGLE9BQU8sRUFBQyxTQUFTLEVBQUUsU0FBUyxFQUF3QixNQUFNLFlBQVksQ0FBQzs7OztBQVF2RSxNQUFNLE9BQU8sZ0NBQWdDO0lBYzNDLFlBQ1UsY0FBaUMsRUFDakMsR0FBMEI7UUFEMUIsbUJBQWMsR0FBZCxjQUFjLENBQW1CO1FBQ2pDLFFBQUcsR0FBSCxHQUFHLENBQXVCO1FBZnBDLHlCQUFvQixHQUFHLEtBQUssQ0FBQztRQUs3QixnQkFBVyxHQUFRLElBQUksQ0FBQztRQUN4QixnQkFBVyxHQUFRLElBQUksQ0FBQztRQUN4QixnQkFBVyxHQUFHLEtBQUssQ0FBQztRQUNwQixpQkFBWSxHQUFXLElBQUksQ0FBQztJQVM1QixDQUFDO0lBRUQsSUFBSSxnQkFBZ0I7UUFDbEIsSUFBSSxDQUFDLElBQUksQ0FBQyxVQUFVLElBQUksQ0FBQyxJQUFJLENBQUMsYUFBYSxDQUFDLFNBQVM7WUFDbkQsSUFBSSxDQUFDLGFBQWEsQ0FBQyxRQUFRLElBQUksSUFBSSxDQUFDLFVBQVUsQ0FBQyxJQUFJLEtBQUssTUFBTSxFQUM5RCxDQUFDO1lBQ0QsT0FBTyxLQUFLLENBQUM7UUFDZixDQUFDO1FBQ0QsSUFBSSxJQUFJLENBQUMsVUFBVSxDQUFDLGtCQUFrQixFQUFFLENBQUM7WUFDdkMsT0FB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QkFONUMsU0FBUzsrQkFFRSwyQkFBMkI7MEhBYzVCLFVBQVU7c0JBQWxCLEtBQUs7Z0JBQ0csV0FBVztzQkFBbkIsS0FBSztnQkFDRyxTQUFTO3NCQUFqQixLQUFLIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtDaGFuZ2VEZXRlY3RvclJlZiwgQ29tcG9uZW50LCBJbnB1dCwgT25DaGFuZ2VzLCBPbkluaXR9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHtjbG9uZURlZXAsIGlzRGVmaW5lZCwgSnNvblNjaGVtYUZvcm1TZXJ2aWNlfSBmcm9tICdAYWpzZi9jb3JlJztcblxuQENvbXBvbmVudCh7XG4gIC8vIHRzbGludDpkaXNhYmxlLW5leHQtbGluZTpjb21wb25lbnQtc2VsZWN0b3JcbiAgc2VsZWN0b3I6ICdtYXRlcmlhbC1kZXNpZ24tZnJhbWV3b3JrJyxcbiAgdGVtcGxhdGVVcmw6ICcuL21hdGVyaWFsLWRlc2lnbi1mcmFtZXdvcmsuY29tcG9uZW50Lmh0bWwnLFxuICBzdHlsZVVybHM6IFsnLi9tYXRlcmlhbC1kZXNpZ24tZnJhbWV3b3JrLmNvbXBvbmVudC5zY3NzJ10sXG59KVxuZXhwb3J0IGNsYXNzIE1hdGVyaWFsRGVzaWduRnJhbWV3b3JrQ29tcG9uZW50IGltcGxlbWVudHMgT25Jbml0LCBPbkNoYW5nZXMge1xuICBmcmFtZXdvcmtJbml0aWFsaXplZCA9IGZhbHNlO1xuICBpbnB1dFR5cGU6IHN0cmluZztcbiAgb3B0aW9uczogYW55OyAvLyBPcHRpb25zIHVzZWQgaW4gdGhpcyBmcmFtZXdvcmtcbiAgd2lkZ2V0TGF5b3V0Tm9kZTogYW55OyAvLyBsYXlvdXROb2RlIHBhc3NlZCB0byBjaGlsZCB3aWRnZXRcbiAgd2lkZ2V0T3B0aW9uczogYW55OyAvLyBPcHRpb25zIHBhc3NlZCB0byBjaGlsZCB3aWRnZXRcbiAgZm9ybUNvbnRyb2w6IGFueSA9IG51bGw7XG4gIHBhcmVudEFycmF5OiBhbnkgPSBudWxsO1xuICBpc09yZGVyYWJsZSA9IGZhbHNlO1xuICBkeW5hbWljVGl0bGU6IHN0cmluZyA9IG51bGw7XG4gIEBJbnB1dCgpIGxheW91dE5vZGU6IGFueTtcbiAgQElucHV0KCkgbGF5b3V0SW5kZXg6IG51bWJlcltdO1xuICBASW5wdXQoKSBkYXRhSW5kZXg6IG51bWJlcltdO1xuXG4gIGNvbnN0cnVjdG9yKFxuICAgIHByaXZhdGUgY2hhbmdlRGV0ZWN0b3I6IENoYW5nZURldGVjdG9yUmVmLFxuICAgIHByaXZhdGUganNmOiBKc29uU2NoZW1hRm9ybVNlcnZpY2VcbiAgKSB7XG4gIH1cblxuICBnZXQgc2hvd1JlbW92ZUJ1dHRvbigpOiBib29sZWFuIHtcbiAgICBpZiAoIXRoaXMubGF5b3V0Tm9kZSB8fCAhdGhpcy53aWRnZXRPcHRpb25zLnJlbW92YWJsZSB8fFxuICAgICAgdGhpcy53aWRnZXRPcHRpb25zLnJlYWRvbmx5IHx8IHRoaXMubGF5b3V0Tm9kZS50eXBlID09PSAnJHJlZidcbiAgICApIHtcbiAgICAgIHJldHVybiBmYWxzZTtcbiAgICB9XG4gICAgaWYgKHRoaXMubGF5b3V0Tm9kZS5yZWN1cnNpdmVSZWZlcmVuY2UpIHtcbiAgICAgIHJldHVybiB0cnVlO1xuICAgIH1cbiAgICBpZiAoIXRoaXMubGF5b3V0Tm9kZS5hcnJheUl0ZW0gfHwgIXRoaXMucGFyZW50QXJyYXkpIHtcbiAgICAgIHJldHVybiBmYWxzZTtcbiAgICB9XG4gICAgLy8gSWYgYXJyYXkgbGVuZ3RoIDw9IG1pbkl0ZW1zLCBkb24ndCBhbGxvdyByZW1vdmluZyBhbnkgaXRlbXNcbiAgICByZXR1cm4gdGhpcy5wYXJlbnRBcnJheS5pdGVtcy5sZW5ndGggLSAxIDw9IHRoaXMucGFyZW50QXJyYXkub3B0aW9ucy5taW5JdGVtcyA/IGZhbHNlIDpcbiAgICAgIC8vIEZvciByZW1vdmFibGUgbGlzdCBpdGVtcywgYWxsb3cgcmVtb3ZpbmcgYW55IGl0ZW1cbiAgICAgIHRoaXMubGF5b3V0Tm9kZS5hcnJheUl0ZW1UeXBlID09PSAnbGlzdCcgPyB0cnVlIDpcbiAgICAgICAgLy8gRm9yIHJlbW92YWJsZSB0dXBsZSBpdGVtcywgb25seSBhbGxvdyByZW1vdmluZyBsYXN0IGl0ZW0gaW4gbGlzdFxuICAgICAgICB0aGlzLmxheW91dEluZGV4W3RoaXMubGF5b3V0SW5kZXgubGVuZ3RoIC0gMV0gPT09IHRoaXMucGFyZW50QXJyYXkuaXRlbXMubGVuZ3RoIC0gMjtcbiAgfVxuXG4gIG5nT25Jbml0KCkge1xuICAgIHRoaXMuaW5pdGlhbGl6ZUZyYW1ld29yaygpO1xuICB9XG5cbiAgbmdPbkNoYW5nZXMoKSB7XG4gICAgaWYgKCF0aGlzLmZyYW1ld29ya0luaXRpYWxpemVkKSB7XG4gICAgICB0aGlzLmluaXRpYWxpemVGcmFtZXdvcmsoKTtcbiAgICB9XG4gICAgaWYgKHRoaXMuZHluYW1pY1RpdGxlKSB7XG4gICAgICB0aGlzLnVwZGF0ZVRpdGxlKCk7XG4gICAgfVxuICB9XG5cbiAgaW5pdGlhbGl6ZUZyYW1ld29yaygpIHtcbiAgICBpZiAodGhpcy5sYXlvdXROb2RlKSB7XG4gICAgICB0aGlzLm9wdGlvbnMgPSBjbG9uZURlZXAodGhpcy5sYXlvdXROb2RlLm9wdGlvbnMgfHwge30pO1xuICAgICAgdGhpcy53aWRnZXRMYXlvdXROb2RlID0ge1xuICAgICAgICAuLi50aGlzLmxheW91dE5vZGUsXG4gICAgICAgIG9wdGlvbnM6IGNsb25lRGVlcCh0aGlzLmxheW91dE5vZGUub3B0aW9ucyB8fCB7fSlcbiAgICAgIH07XG4gICAgICB0aGlzLndpZGdldE9wdGlvbnMgPSB0aGlzLndpZGdldExheW91dE5vZGUub3B0aW9ucztcbiAgICAgIHRoaXMuZm9ybUNvbnRyb2wgPSB0aGlzLmpzZi5nZXRGb3JtQ29udHJvbCh0aGlzKTtcblxuICAgICAgaWYgKFxuICAgICAgICBpc0RlZmluZWQodGhpcy53aWRnZXRPcHRpb25zLm1pbmltdW0pICYmXG4gICAgICAgIGlzRGVmaW5lZCh0aGlzLndpZGdldE9wdGlvbnMubWF4aW11bSkgJiZcbiAgICAgICAgdGhpcy53aWRnZXRPcHRpb25zLm11bHRpcGxlT2YgPj0gMVxuICAgICAgKSB7XG4gICAgICAgIHRoaXMubGF5b3V0Tm9kZS50eXBlID0gJ3JhbmdlJztcbiAgICAgIH1cblxuICAgICAgaWYgKFxuICAgICAgICAhWyckcmVmJywgJ2FkdmFuY2VkZmllbGRzZXQnLCAnYXV0aGZpZWxkc2V0JywgJ2J1dHRvbicsICdjYXJkJyxcbiAgICAgICAgICAnY2hlY2tib3gnLCAnZXhwYW5zaW9uLXBhbmVsJywgJ2hlbHAnLCAnbWVzc2FnZScsICdtc2cnLCAnc2VjdGlvbicsXG4gICAgICAgICAgJ3N1Ym1pdCcsICd0YWJhcnJheScsICd0YWJzJ10uaW5jbHVkZXModGhpcy5sYXlvdXROb2RlLnR5cGUpICYmXG4gICAgICAgIC97ey4rP319Ly50ZXN0KHRoaXMud2lkZ2V0T3B0aW9ucy50aXRsZSB8fCAnJylcbiAgICAgICkge1xuICAgICAgICB0aGlzLmR5bmFtaWNUaXRsZSA9IHRoaXMud2lkZ2V0T3B0aW9ucy50aXRsZTtcbiAgICAgICAgdGhpcy51cGRhdGVUaXRsZSgpO1xuICAgICAgfVxuXG4gICAgICBpZiAodGhpcy5sYXlvdXROb2RlLmFycmF5SXRlbSAmJiB0aGlzLmxheW91dE5vZGUudHlwZSAhPT0gJyRyZWYnKSB7XG4gICAgICAgIHRoaXMucGFyZW50QXJyYXkgPSB0aGlzLmpzZi5nZXRQYXJlbnROb2RlKHRoaXMpO1xuICAgICAgICBpZiAodGhpcy5wYXJlbnRBcnJheSkge1xuICAgICAgICAgIHRoaXMuaXNPcmRlcmFibGUgPVxuICAgICAgICAgICAgdGhpcy5wYXJlbnRBcnJheS50eXBlLnNsaWNlKDAsIDMpICE9PSAndGFiJyAmJlxuICAgICAgICAgICAgdGhpcy5sYXlvdXROb2RlLmFycmF5SXRlbVR5cGUgPT09ICdsaXN0JyAmJlxuICAgICAgICAgICAgIXRoaXMud2lkZ2V0T3B0aW9ucy5yZWFkb25seSAmJlxuICAgICAgICAgICAgdGhpcy5wYXJlbnRBcnJheS5vcHRpb25zLm9yZGVyYWJsZTtcbiAgICAgICAgfVxuICAgICAgfVxuXG4gICAgICB0aGlzLmZyYW1ld29ya0luaXRpYWxpemVkID0gdHJ1ZTtcbiAgICB9IGVsc2Uge1xuICAgICAgdGhpcy5vcHRpb25zID0ge307XG4gICAgfVxuICB9XG5cbiAgdXBkYXRlVGl0bGUoKSB7XG4gICAgdGhpcy53aWRnZXRMYXlvdXROb2RlLm9wdGlvbnMudGl0bGUgPSB0aGlzLmpzZi5wYXJzZVRleHQoXG4gICAgICB0aGlzLmR5bmFtaWNUaXRsZSxcbiAgICAgIHRoaXMuanNmLmdldEZvcm1Db250cm9sVmFsdWUodGhpcyksXG4gICAgICB0aGlzLmpzZi5nZXRGb3JtQ29udHJvbEdyb3VwKHRoaXMpLnZhbHVlLFxuICAgICAgdGhpcy5kYXRhSW5kZXhbdGhpcy5kYXRhSW5kZXgubGVuZ3RoIC0gMV1cbiAgICApO1xuICB9XG5cbiAgcmVtb3ZlSXRlbSgpIHtcbiAgICB0aGlzLmpzZi5yZW1vdmVJdGVtKHRoaXMpO1xuICB9XG59XG4iLCI8ZGl2XG4gIFtjbGFzcy5hcnJheS1pdGVtXT1cIndpZGdldExheW91dE5vZGU/LmFycmF5SXRlbSAmJiB3aWRnZXRMYXlvdXROb2RlPy50eXBlICE9PSAnJHJlZidcIlxuICBbb3JkZXJhYmxlXT1cImlzT3JkZXJhYmxlXCJcbiAgW2RhdGFJbmRleF09XCJkYXRhSW5kZXhcIlxuICBbbGF5b3V0SW5kZXhdPVwibGF5b3V0SW5kZXhcIlxuICBbbGF5b3V0Tm9kZV09XCJ3aWRnZXRMYXlvdXROb2RlXCI+XG4gIDxzdmcgKm5nSWY9XCJzaG93UmVtb3ZlQnV0dG9uXCJcbiAgICAgICB4bWxucz1cImh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnXCJcbiAgICAgICBoZWlnaHQ9XCIxOFwiIHdpZHRoPVwiMThcIiB2aWV3Qm94PVwiMCAwIDI0IDI0XCJcbiAgICAgICBjbGFzcz1cImNsb3NlLWJ1dHRvblwiXG4gICAgICAgKGNsaWNrKT1cInJlbW92ZUl0ZW0oKVwiPlxuICAgIDxwYXRoXG4gICAgICBkPVwiTTE5IDYuNDFMMTcuNTkgNSAxMiAxMC41OSA2LjQxIDUgNSA2LjQxIDEwLjU5IDEyIDUgMTcuNTkgNi40MSAxOSAxMiAxMy40MSAxNy41OSAxOSAxOSAxNy41OSAxMy40MSAxMiAxOSA2LjQxelwiLz5cbiAgPC9zdmc+XG4gIDxzZWxlY3Qtd2lkZ2V0LXdpZGdldFxuICAgIFtkYXRhSW5kZXhdPVwiZGF0YUluZGV4XCJcbiAgICBbbGF5b3V0SW5kZXhdPVwibGF5b3V0SW5kZXhcIlxuICAgIFtsYXlvdXROb2RlXT1cIndpZGdldExheW91dE5vZGVcIj48L3NlbGVjdC13aWRnZXQtd2lkZ2V0PlxuPC9kaXY+XG48ZGl2IGNsYXNzPVwic3BhY2VyXCIgKm5nSWY9XCJ3aWRnZXRMYXlvdXROb2RlPy5hcnJheUl0ZW0gJiYgd2lkZ2V0TGF5b3V0Tm9kZT8udHlwZSAhPT0gJyRyZWYnXCI+PC9kaXY+XG4iXX0=
@@ -1,111 +0,0 @@
1
- import { Framework, FrameworkLibraryService, JsonSchemaFormModule, JsonSchemaFormService, WidgetLibraryModule, WidgetLibraryService } from '@ajsf/core';
2
- import { NgModule } from '@angular/core';
3
- import { CommonModule } from '@angular/common';
4
- import { FormsModule, ReactiveFormsModule } from '@angular/forms';
5
- import { MatAutocompleteModule } from '@angular/material/autocomplete';
6
- import { MatButtonModule } from '@angular/material/button';
7
- import { MatButtonToggleModule } from '@angular/material/button-toggle';
8
- import { MatCardModule } from '@angular/material/card';
9
- import { MatCheckboxModule } from '@angular/material/checkbox';
10
- import { MatChipsModule } from '@angular/material/chips';
11
- import { MatNativeDateModule } from '@angular/material/core';
12
- import { MatDatepickerModule } from '@angular/material/datepicker';
13
- import { MatExpansionModule } from '@angular/material/expansion';
14
- import { MatFormFieldModule } from '@angular/material/form-field';
15
- import { MatIconModule } from '@angular/material/icon';
16
- import { MatInputModule } from '@angular/material/input';
17
- import { MatRadioModule } from '@angular/material/radio';
18
- import { MatSelectModule } from '@angular/material/select';
19
- import { MatSlideToggleModule } from '@angular/material/slide-toggle';
20
- import { MatSliderModule } from '@angular/material/slider';
21
- import { MatStepperModule } from '@angular/material/stepper';
22
- import { MatTabsModule } from '@angular/material/tabs';
23
- import { MatTooltipModule } from '@angular/material/tooltip';
24
- import { MatMenuModule } from '@angular/material/menu';
25
- import { MatToolbarModule } from '@angular/material/toolbar';
26
- import { MaterialDesignFramework } from './material-design.framework';
27
- import { MATERIAL_FRAMEWORK_COMPONENTS } from './widgets/public_api';
28
- import * as i0 from "@angular/core";
29
- import * as i1 from "./widgets/flex-layout-root.component";
30
- import * as i2 from "./widgets/flex-layout-section.component";
31
- import * as i3 from "./widgets/material-add-reference.component";
32
- import * as i4 from "./widgets/material-one-of.component";
33
- import * as i5 from "./widgets/material-button.component";
34
- import * as i6 from "./widgets/material-button-group.component";
35
- import * as i7 from "./widgets/material-checkbox.component";
36
- import * as i8 from "./widgets/material-checkboxes.component";
37
- import * as i9 from "./widgets/material-chip-list.component";
38
- import * as i10 from "./widgets/material-datepicker.component";
39
- import * as i11 from "./widgets/material-file.component";
40
- import * as i12 from "./widgets/material-input.component";
41
- import * as i13 from "./widgets/material-number.component";
42
- import * as i14 from "./widgets/material-radios.component";
43
- import * as i15 from "./widgets/material-select.component";
44
- import * as i16 from "./widgets/material-slider.component";
45
- import * as i17 from "./widgets/material-stepper.component";
46
- import * as i18 from "./widgets/material-tabs.component";
47
- import * as i19 from "./widgets/material-textarea.component";
48
- import * as i20 from "./material-design-framework.component";
49
- /**
50
- * unused @angular/material modules:
51
- * MatDialogModule, MatGridListModule, MatListModule, MatMenuModule,
52
- * MatPaginatorModule, MatProgressBarModule, MatProgressSpinnerModule,
53
- * MatSidenavModule, MatSnackBarModule, MatSortModule, MatTableModule,
54
- * ,
55
- */
56
- export const ANGULAR_MATERIAL_MODULES = [
57
- MatAutocompleteModule, MatButtonModule, MatButtonToggleModule, MatCardModule,
58
- MatCheckboxModule, MatChipsModule, MatDatepickerModule, MatExpansionModule,
59
- MatFormFieldModule, MatIconModule, MatInputModule, MatNativeDateModule,
60
- MatRadioModule, MatSelectModule, MatSliderModule, MatSlideToggleModule,
61
- MatStepperModule, MatTabsModule, MatTooltipModule,
62
- MatToolbarModule, MatMenuModule, MatToolbarModule,
63
- ];
64
- export class MaterialDesignFrameworkModule {
65
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: MaterialDesignFrameworkModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
66
- static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "18.2.14", ngImport: i0, type: MaterialDesignFrameworkModule, declarations: [i1.FlexLayoutRootComponent, i2.FlexLayoutSectionComponent, i3.MaterialAddReferenceComponent, i4.MaterialOneOfComponent, i5.MaterialButtonComponent, i6.MaterialButtonGroupComponent, i7.MaterialCheckboxComponent, i8.MaterialCheckboxesComponent, i9.MaterialChipListComponent, i10.MaterialDatepickerComponent, i11.MaterialFileComponent, i12.MaterialInputComponent, i13.MaterialNumberComponent, i14.MaterialRadiosComponent, i15.MaterialSelectComponent, i16.MaterialSliderComponent, i17.MaterialStepperComponent, i18.MaterialTabsComponent, i19.MaterialTextareaComponent, i20.MaterialDesignFrameworkComponent], imports: [CommonModule,
67
- FormsModule,
68
- ReactiveFormsModule, MatAutocompleteModule, MatButtonModule, MatButtonToggleModule, MatCardModule,
69
- MatCheckboxModule, MatChipsModule, MatDatepickerModule, MatExpansionModule,
70
- MatFormFieldModule, MatIconModule, MatInputModule, MatNativeDateModule,
71
- MatRadioModule, MatSelectModule, MatSliderModule, MatSlideToggleModule,
72
- MatStepperModule, MatTabsModule, MatTooltipModule,
73
- MatToolbarModule, MatMenuModule, MatToolbarModule, WidgetLibraryModule,
74
- JsonSchemaFormModule], exports: [JsonSchemaFormModule, i1.FlexLayoutRootComponent, i2.FlexLayoutSectionComponent, i3.MaterialAddReferenceComponent, i4.MaterialOneOfComponent, i5.MaterialButtonComponent, i6.MaterialButtonGroupComponent, i7.MaterialCheckboxComponent, i8.MaterialCheckboxesComponent, i9.MaterialChipListComponent, i10.MaterialDatepickerComponent, i11.MaterialFileComponent, i12.MaterialInputComponent, i13.MaterialNumberComponent, i14.MaterialRadiosComponent, i15.MaterialSelectComponent, i16.MaterialSliderComponent, i17.MaterialStepperComponent, i18.MaterialTabsComponent, i19.MaterialTextareaComponent, i20.MaterialDesignFrameworkComponent] }); }
75
- static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: MaterialDesignFrameworkModule, providers: [
76
- JsonSchemaFormService,
77
- FrameworkLibraryService,
78
- WidgetLibraryService,
79
- { provide: Framework, useClass: MaterialDesignFramework, multi: true },
80
- ], imports: [CommonModule,
81
- FormsModule,
82
- ReactiveFormsModule, ANGULAR_MATERIAL_MODULES, WidgetLibraryModule,
83
- JsonSchemaFormModule, JsonSchemaFormModule] }); }
84
- }
85
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: MaterialDesignFrameworkModule, decorators: [{
86
- type: NgModule,
87
- args: [{
88
- imports: [
89
- CommonModule,
90
- FormsModule,
91
- ReactiveFormsModule,
92
- ...ANGULAR_MATERIAL_MODULES,
93
- WidgetLibraryModule,
94
- JsonSchemaFormModule,
95
- ],
96
- declarations: [
97
- ...MATERIAL_FRAMEWORK_COMPONENTS,
98
- ],
99
- exports: [
100
- JsonSchemaFormModule,
101
- ...MATERIAL_FRAMEWORK_COMPONENTS,
102
- ],
103
- providers: [
104
- JsonSchemaFormService,
105
- FrameworkLibraryService,
106
- WidgetLibraryService,
107
- { provide: Framework, useClass: MaterialDesignFramework, multi: true },
108
- ]
109
- }]
110
- }] });
111
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibWF0ZXJpYWwtZGVzaWduLWZyYW1ld29yay5tb2R1bGUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9hanNmLW1hdGVyaWFsL3NyYy9saWIvbWF0ZXJpYWwtZGVzaWduLWZyYW1ld29yay5tb2R1bGUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUNMLFNBQVMsRUFDVCx1QkFBdUIsRUFDdkIsb0JBQW9CLEVBQ3BCLHFCQUFxQixFQUNyQixtQkFBbUIsRUFBRSxvQkFBb0IsRUFDMUMsTUFBTSxZQUFZLENBQUM7QUFDcEIsT0FBTyxFQUFDLFFBQVEsRUFBQyxNQUFNLGVBQWUsQ0FBQztBQUN2QyxPQUFPLEVBQUMsWUFBWSxFQUFDLE1BQU0saUJBQWlCLENBQUM7QUFDN0MsT0FBTyxFQUFDLFdBQVcsRUFBRSxtQkFBbUIsRUFBQyxNQUFNLGdCQUFnQixDQUFDO0FBQ2hFLE9BQU8sRUFBQyxxQkFBcUIsRUFBQyxNQUFNLGdDQUFnQyxDQUFDO0FBQ3JFLE9BQU8sRUFBQyxlQUFlLEVBQUMsTUFBTSwwQkFBMEIsQ0FBQztBQUN6RCxPQUFPLEVBQUMscUJBQXFCLEVBQUMsTUFBTSxpQ0FBaUMsQ0FBQztBQUN0RSxPQUFPLEVBQUMsYUFBYSxFQUFDLE1BQU0sd0JBQXdCLENBQUM7QUFDckQsT0FBTyxFQUFDLGlCQUFpQixFQUFDLE1BQU0sNEJBQTRCLENBQUM7QUFDN0QsT0FBTyxFQUFDLGNBQWMsRUFBQyxNQUFNLHlCQUF5QixDQUFDO0FBQ3ZELE9BQU8sRUFBQyxtQkFBbUIsRUFBQyxNQUFNLHdCQUF3QixDQUFDO0FBQzNELE9BQU8sRUFBQyxtQkFBbUIsRUFBQyxNQUFNLDhCQUE4QixDQUFDO0FBQ2pFLE9BQU8sRUFBQyxrQkFBa0IsRUFBQyxNQUFNLDZCQUE2QixDQUFDO0FBQy9ELE9BQU8sRUFBQyxrQkFBa0IsRUFBQyxNQUFNLDhCQUE4QixDQUFDO0FBQ2hFLE9BQU8sRUFBQyxhQUFh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LFFBQVEsRUFBRSx1QkFBdUIsRUFBRSxLQUFLLEVBQUUsSUFBSSxFQUFFO3FCQUN6RTtpQkFDSiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7XG4gIEZyYW1ld29yayxcbiAgRnJhbWV3b3JrTGlicmFyeVNlcnZpY2UsXG4gIEpzb25TY2hlbWFGb3JtTW9kdWxlLFxuICBKc29uU2NoZW1hRm9ybVNlcnZpY2UsXG4gIFdpZGdldExpYnJhcnlNb2R1bGUsIFdpZGdldExpYnJhcnlTZXJ2aWNlXG59IGZyb20gJ0BhanNmL2NvcmUnO1xuaW1wb3J0IHtOZ01vZHVsZX0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQge0NvbW1vbk1vZHVsZX0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uJztcbmltcG9ydCB7Rm9ybXNNb2R1bGUsIFJlYWN0aXZlRm9ybXNNb2R1bGV9IGZyb20gJ0Bhbmd1bGFyL2Zvcm1zJztcbmltcG9ydCB7TWF0QXV0b2NvbXBsZXRlTW9kdWxlfSBmcm9tICdAYW5ndWxhci9tYXRlcmlhbC9hdXRvY29tcGxldGUnO1xuaW1wb3J0IHtNYXRCdXR0b25Nb2R1bGV9IGZyb20gJ0Bhbmd1bGFyL21hdGVyaWFsL2J1dHRvbic7XG5pbXBvcnQge01hdEJ1dHRvblRvZ2dsZU1vZHVsZX0gZnJvbSAnQGFuZ3VsYXIvbWF0ZXJpYWwvYnV0dG9uLXRvZ2dsZSc7XG5pbXBvcnQge01hdENhcmRNb2R1bGV9IGZyb20gJ0Bhbmd1bGFyL21hdGVyaWFsL2NhcmQnO1xuaW1wb3J0IHtNYXRDaGVja2JveE1vZHVsZX0gZnJvbSAnQGFuZ3VsYXIvbWF0ZXJpYWwvY2hlY2tib3gnO1xuaW1wb3J0IHtNYXRDaGlwc01vZHVsZX0gZnJvbSAnQGFuZ3VsYXIvbWF0ZXJpYWwvY2hpcHMnO1xuaW1wb3J0IHtNYXROYXRpdmVEYXRlTW9kdWxlfSBmcm9tICdAYW5ndWxhci9tYXRlcmlhbC9jb3JlJztcbmltcG9ydCB7TWF0RGF0ZXBpY2tlck1vZHVsZX0gZnJvbSAnQGFuZ3VsYXIvbWF0ZXJpYWwvZGF0ZXBpY2tlcic7XG5pbXBvcnQge01hdEV4cGFuc2lvbk1vZHVsZX0gZnJvbSAnQGFuZ3VsYXIvbWF0ZXJpYWwvZXhwYW5zaW9uJztcbmltcG9ydCB7TWF0Rm9ybUZpZWxkTW9kdWxlfSBmcm9tICdAYW5ndWxhci9tYXRlcmlhbC9mb3JtLWZpZWxkJztcbmltcG9ydCB7TWF0SWNvbk1vZHVsZX0gZnJvbSAnQGFuZ3VsYXIvbWF0ZXJpYWwvaWNvbic7XG5pbXBvcnQge01hdElucHV0TW9kdWxlfSBmcm9tICdAYW5ndWxhci9tYXRlcmlhbC9pbnB1dCc7XG5pbXBvcnQge01hdFJhZGlvTW9kdWxlfSBmcm9tICdAYW5ndWxhci9tYXRlcmlhbC9yYWRpbyc7XG5pbXBvcnQge01hdFNlbGVjdE1vZHVsZX0gZnJvbSAnQGFuZ3VsYXIvbWF0ZXJpYWwvc2VsZWN0JztcbmltcG9ydCB7TWF0U2xpZGVUb2dnbGVNb2R1bGV9IGZyb20gJ0Bhbmd1bGFyL21hdGVyaWFsL3NsaWRlLXRvZ2dsZSc7XG5pbXBvcnQge01hdFNsaWRlck1vZHVsZX0gZnJvbSAnQGFuZ3VsYXIvbWF0ZXJpYWwvc2xpZGVyJztcbmltcG9ydCB7TWF0U3RlcHBlck1vZHVsZX0gZnJvbSAnQGFuZ3VsYXIvbWF0ZXJpYWwvc3RlcHBlcic7XG5pbXBvcnQge01hdFRhYnNNb2R1bGV9IGZyb20gJ0Bhbmd1bGFyL21hdGVyaWFsL3RhYnMnO1xuaW1wb3J0IHtNYXRUb29sdGlwTW9kdWxlfSBmcm9tICdAYW5ndWxhci9tYXRlcmlhbC90b29sdGlwJztcbmltcG9ydCB7TWF0TWVudU1vZHVsZX0gZnJvbSAnQGFuZ3VsYXIvbWF0ZXJpYWwvbWVudSc7XG5pbXBvcnQge01hdFRvb2xiYXJNb2R1bGV9IGZyb20gJ0Bhbmd1bGFyL21hdGVyaWFsL3Rvb2xiYXInO1xuaW1wb3J0IHtNYXRlcmlhbERlc2lnbkZyYW1ld29ya30gZnJvbSAnLi9tYXRlcmlhbC1kZXNpZ24uZnJhbWV3b3JrJztcbmltcG9ydCB7TUFURVJJQUxfRlJBTUVXT1JLX0NPTVBPTkVOVFN9IGZyb20gJy4vd2lkZ2V0cy9wdWJsaWNfYXBpJztcblxuLyoqXG4gKiB1bnVzZWQgQGFuZ3VsYXIvbWF0ZXJpYWwgbW9kdWxlczpcbiAqIE1hdERpYWxvZ01vZHVsZSwgTWF0R3JpZExpc3RNb2R1bGUsIE1hdExpc3RNb2R1bGUsIE1hdE1lbnVNb2R1bGUsXG4gKiBNYXRQYWdpbmF0b3JNb2R1bGUsIE1hdFByb2dyZXNzQmFyTW9kdWxlLCBNYXRQcm9ncmVzc1NwaW5uZXJNb2R1bGUsXG4gKiBNYXRTaWRlbmF2TW9kdWxlLCBNYXRTbmFja0Jhck1vZHVsZSwgTWF0U29ydE1vZHVsZSwgTWF0VGFibGVNb2R1bGUsXG4gKiAsXG4gKi9cbmV4cG9ydCBjb25zdCBBTkdVTEFSX01BVEVSSUFMX01PRFVMRVMgPSBbXG4gIE1hdEF1dG9jb21wbGV0ZU1vZHVsZSwgTWF0QnV0dG9uTW9kdWxlLCBNYXRCdXR0b25Ub2dnbGVNb2R1bGUsIE1hdENhcmRNb2R1bGUsXG4gIE1hdENoZWNrYm94TW9kdWxlLCBNYXRDaGlwc01vZHVsZSwgTWF0RGF0ZXBpY2tlck1vZHVsZSwgTWF0RXhwYW5zaW9uTW9kdWxlLFxuICBNYXRGb3JtRmllbGRNb2R1bGUsIE1hdEljb25Nb2R1bGUsIE1hdElucHV0TW9kdWxlLCBNYXROYXRpdmVEYXRlTW9kdWxlLFxuICBNYXRSYWRpb01vZHVsZSwgTWF0U2VsZWN0TW9kdWxlLCBNYXRTbGlkZXJNb2R1bGUsIE1hdFNsaWRlVG9nZ2xlTW9kdWxlLFxuICBNYXRTdGVwcGVyTW9kdWxlLCBNYXRUYWJzTW9kdWxlLCBNYXRUb29sdGlwTW9kdWxlLFxuICBNYXRUb29sYmFyTW9kdWxlLCBNYXRNZW51TW9kdWxlLCBNYXRUb29sYmFyTW9kdWxlLFxuXTtcblxuQE5nTW9kdWxlKHtcbiAgICBpbXBvcnRzOiBbXG4gICAgICAgIENvbW1vbk1vZHVsZSxcbiAgICAgICAgRm9ybXNNb2R1bGUsXG4gICAgICAgIFJlYWN0aXZlRm9ybXNNb2R1bGUsXG4gICAgICAgIC4uLkFOR1VMQVJfTUFURVJJQUxfTU9EVUxFUyxcbiAgICAgICAgV2lkZ2V0TGlicmFyeU1vZHVsZSxcbiAgICAgICAgSnNvblNjaGVtYUZvcm1Nb2R1bGUsXG4gICAgXSxcbiAgICBkZWNsYXJhdGlvbnM6IFtcbiAgICAgICAgLi4uTUFURVJJQUxfRlJBTUVXT1JLX0NPTVBPTkVOVFMsXG4gICAgXSxcbiAgICBleHBvcnRzOiBbXG4gICAgICAgIEpzb25TY2hlbWFGb3JtTW9kdWxlLFxuICAgICAgICAuLi5NQVRFUklBTF9GUkFNRVdPUktfQ09NUE9ORU5UUyxcbiAgICBdLFxuICAgIHByb3ZpZGVyczogW1xuICAgICAgICBKc29uU2NoZW1hRm9ybVNlcnZpY2UsXG4gICAgICAgIEZyYW1ld29ya0xpYnJhcnlTZXJ2aWNlLFxuICAgICAgICBXaWRnZXRMaWJyYXJ5U2VydmljZSxcbiAgICAgICAgeyBwcm92aWRlOiBGcmFtZXdvcmssIHVzZUNsYXNzOiBNYXRlcmlhbERlc2lnbkZyYW1ld29yaywgbXVsdGk6IHRydWUgfSxcbiAgICBdXG59KVxuZXhwb3J0IGNsYXNzIE1hdGVyaWFsRGVzaWduRnJhbWV3b3JrTW9kdWxlIHsgfVxuIl19
@@ -1,57 +0,0 @@
1
- import { Injectable } from '@angular/core';
2
- import { Framework } from '@ajsf/core';
3
- import { FlexLayoutRootComponent, FlexLayoutSectionComponent, MaterialAddReferenceComponent, MaterialButtonComponent, MaterialButtonGroupComponent, MaterialCheckboxComponent, MaterialCheckboxesComponent, MaterialChipListComponent, MaterialDatepickerComponent, MaterialDesignFrameworkComponent, MaterialFileComponent, MaterialInputComponent, MaterialNumberComponent, MaterialOneOfComponent, MaterialRadiosComponent, MaterialSelectComponent, MaterialSliderComponent, MaterialStepperComponent, MaterialTabsComponent, MaterialTextareaComponent } from './widgets/public_api';
4
- import * as i0 from "@angular/core";
5
- // Material Design Framework
6
- // https://github.com/angular/material2
7
- export class MaterialDesignFramework extends Framework {
8
- constructor() {
9
- super(...arguments);
10
- this.name = 'material-design';
11
- this.framework = MaterialDesignFrameworkComponent;
12
- this.stylesheets = [
13
- '//fonts.googleapis.com/icon?family=Material+Icons',
14
- '//fonts.googleapis.com/css?family=Roboto:300,400,500,700',
15
- ];
16
- this.widgets = {
17
- 'root': FlexLayoutRootComponent,
18
- 'section': FlexLayoutSectionComponent,
19
- '$ref': MaterialAddReferenceComponent,
20
- 'button': MaterialButtonComponent,
21
- 'button-group': MaterialButtonGroupComponent,
22
- 'checkbox': MaterialCheckboxComponent,
23
- 'checkboxes': MaterialCheckboxesComponent,
24
- 'chip-list': MaterialChipListComponent,
25
- 'date': MaterialDatepickerComponent,
26
- 'file': MaterialFileComponent,
27
- 'number': MaterialNumberComponent,
28
- 'one-of': MaterialOneOfComponent,
29
- 'radios': MaterialRadiosComponent,
30
- 'select': MaterialSelectComponent,
31
- 'slider': MaterialSliderComponent,
32
- 'stepper': MaterialStepperComponent,
33
- 'tabs': MaterialTabsComponent,
34
- 'text': MaterialInputComponent,
35
- 'textarea': MaterialTextareaComponent,
36
- 'alt-date': 'date',
37
- 'any-of': 'one-of',
38
- 'card': 'section',
39
- 'color': 'text',
40
- 'expansion-panel': 'section',
41
- 'hidden': 'none',
42
- 'image': 'none',
43
- 'integer': 'number',
44
- 'radiobuttons': 'button-group',
45
- 'range': 'slider',
46
- 'submit': 'button',
47
- 'tagsinput': 'chip-list',
48
- 'wizard': 'stepper',
49
- };
50
- }
51
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: MaterialDesignFramework, deps: null, target: i0.ɵɵFactoryTarget.Injectable }); }
52
- static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: MaterialDesignFramework }); }
53
- }
54
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: MaterialDesignFramework, decorators: [{
55
- type: Injectable
56
- }] });
57
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibWF0ZXJpYWwtZGVzaWduLmZyYW1ld29yay5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2Fqc2YtbWF0ZXJpYWwvc3JjL2xpYi9tYXRlcmlhbC1kZXNpZ24uZnJhbWV3b3JrLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBQyxVQUFVLEVBQUMsTUFBTSxlQUFlLENBQUM7QUFDekMsT0FBTyxFQUFDLFNBQVMsRUFBQyxNQUFNLFlBQVksQ0FBQztBQUNyQyxPQUFPLEVBQ0wsdUJBQXVCLEVBQ3ZCLDBCQUEwQixFQUMxQiw2QkFBNkIsRUFDN0IsdUJBQXVCLEVBQ3ZCLDRCQUE0QixFQUM1Qix5QkFBeUIsRUFDekIsMkJBQTJCLEVBQzNCLHlCQUF5QixFQUN6QiwyQkFBMkIsRUFDM0IsZ0NBQWdDLEVBQ2hDLHFCQUFxQixFQUNyQixzQkFBc0IsRUFDdEIsdUJBQXVCLEVBQ3ZCLHNCQUFzQixFQUN0Qix1QkFBdUIsRUFDdkIsdUJBQXVCLEVBQ3ZCLHVCQUF1QixFQUN2Qix3QkFBd0IsRUFDeEIscUJBQXFCLEVBQ3JCLHlCQUF5QixFQUMxQixNQUFNLHNCQUFzQixDQUFDOztBQUc5Qiw0QkFBNEI7QUFDNUIsdUNBQXVDO0FBR3ZDLE1BQU0sT0FBTyx1QkFBd0IsU0FBUSxTQUFTO0lBRHREOztRQUVFLFNBQUksR0FBRyxpQkFBaUIsQ0FBQztRQUV6QixjQUFTLEdBQUcsZ0NBQWdDLENBQUM7UUFFN0MsZ0JBQVcsR0FBRztZQUNaLG1EQUFtRDtZQUNuRCwwREFBMEQ7U0FDM0QsQ0FBQztRQUVGLFlBQU8sR0FBRztZQUNSLE1BQU0sRUFBRSx1QkFBdUI7WUFDL0IsU0FBUyxFQUFFLDBCQUEwQjtZQUNyQyxNQUFNLEVBQUUsNkJBQTZCO1lBQ3JDLFFBQVEsRUFBRSx1QkFBdUI7WUFDakMsY0FBYyxFQUFFLDRCQUE0QjtZQUM1QyxVQUFVLEVBQUUseUJBQXlCO1lBQ3JDLFlBQVksRUFBRSwyQkFBMkI7WUFDekMsV0FBVyxFQUFFLHlCQUF5QjtZQUN0QyxNQUFNLEVBQUUsMkJBQTJCO1lBQ25DLE1BQU0sRUFBRSxxQkFBcUI7WUFDN0IsUUFBUSxFQUFFLHVCQUF1QjtZQUNqQyxRQUFRLEVBQUUsc0JBQXNCO1lBQ2hDLFFBQVEsRUFBRSx1QkFBdUI7WUFDakMsUUFBUSxFQUFFLHVCQUF1QjtZQUNqQyxRQUFRLEVBQUUsdUJBQXVCO1lBQ2pDLFNBQVMsRUFBRSx3QkFBd0I7WUFDbkMsTUFBTSxFQUFFLHFCQUFxQjtZQUM3QixNQUFNLEVBQUUsc0JBQXNCO1lBQzlCLFVBQVUsRUFBRSx5QkFBeUI7WUFDckMsVUFBVSxFQUFFLE1BQU07WUFDbEIsUUFBUSxFQUFFLFFBQVE7WUFDbEIsTUFBTSxFQUFFLFNBQVM7WUFDakIsT0FBTyxFQUFFLE1BQU07WUFDZixpQkFBaUIsRUFBRSxTQUFTO1lBQzVCLFFBQVEsRUFBRSxNQUFNO1lBQ2hCLE9BQU8sRUFBRSxNQUFNO1lBQ2YsU0FBUyxFQUFFLFFBQVE7WUFDbkIsY0FBYyxFQUFFLGNBQWM7WUFDOUIsT0FBTyxFQUFFLFFBQVE7WUFDakIsUUFBUSxFQUFFLFFBQVE7WUFDbEIsV0FBVyxFQUFFLFdBQVc7WUFDeEIsUUFBUSxFQUFFLFNBQVM7U0FDcEIsQ0FBQztLQUNIOytHQTVDWSx1QkFBdUI7bUhBQXZCLHVCQUF1Qjs7NEZBQXZCLHVCQUF1QjtrQkFEbkMsVUFBVSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7SW5qZWN0YWJsZX0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQge0ZyYW1ld29ya30gZnJvbSAnQGFqc2YvY29yZSc7XG5pbXBvcnQge1xuICBGbGV4TGF5b3V0Um9vdENvbXBvbmVudCxcbiAgRmxleExheW91dFNlY3Rpb25Db21wb25lbnQsXG4gIE1hdGVyaWFsQWRkUmVmZXJlbmNlQ29tcG9uZW50LFxuICBNYXRlcmlhbEJ1dHRvbkNvbXBvbmVudCxcbiAgTWF0ZXJpYWxCdXR0b25Hcm91cENvbXBvbmVudCxcbiAgTWF0ZXJpYWxDaGVja2JveENvbXBvbmVudCxcbiAgTWF0ZXJpYWxDaGVja2JveGVzQ29tcG9uZW50LFxuICBNYXRlcmlhbENoaXBMaXN0Q29tcG9uZW50LFxuICBNYXRlcmlhbERhdGVwaWNrZXJDb21wb25lbnQsXG4gIE1hdGVyaWFsRGVzaWduRnJhbWV3b3JrQ29tcG9uZW50LFxuICBNYXRlcmlhbEZpbGVDb21wb25lbnQsXG4gIE1hdGVyaWFsSW5wdXRDb21wb25lbnQsXG4gIE1hdGVyaWFsTnVtYmVyQ29tcG9uZW50LFxuICBNYXRlcmlhbE9uZU9mQ29tcG9uZW50LFxuICBNYXRlcmlhbFJhZGlvc0NvbXBvbmVudCxcbiAgTWF0ZXJpYWxTZWxlY3RDb21wb25lbnQsXG4gIE1hdGVyaWFsU2xpZGVyQ29tcG9uZW50LFxuICBNYXRlcmlhbFN0ZXBwZXJDb21wb25lbnQsXG4gIE1hdGVyaWFsVGFic0NvbXBvbmVudCxcbiAgTWF0ZXJpYWxUZXh0YXJlYUNvbXBvbmVudFxufSBmcm9tICcuL3dpZGdldHMvcHVibGljX2FwaSc7XG5cblxuLy8gTWF0ZXJpYWwgRGVzaWduIEZyYW1ld29ya1xuLy8gaHR0cHM6Ly9naXRodWIuY29tL2FuZ3VsYXIvbWF0ZXJpYWwyXG5cbkBJbmplY3RhYmxlKClcbmV4cG9ydCBjbGFzcyBNYXRlcmlhbERlc2lnbkZyYW1ld29yayBleHRlbmRzIEZyYW1ld29yayB7XG4gIG5hbWUgPSAnbWF0ZXJpYWwtZGVzaWduJztcblxuICBmcmFtZXdvcmsgPSBNYXRlcmlhbERlc2lnbkZyYW1ld29ya0NvbXBvbmVudDtcblxuICBzdHlsZXNoZWV0cyA9IFtcbiAgICAnLy9mb250cy5nb29nbGVhcGlzLmNvbS9pY29uP2ZhbWlseT1NYXRlcmlhbCtJY29ucycsXG4gICAgJy8vZm9udHMuZ29vZ2xlYXBpcy5jb20vY3NzP2ZhbWlseT1Sb2JvdG86MzAwLDQwMCw1MDAsNzAwJyxcbiAgXTtcblxuICB3aWRnZXRzID0ge1xuICAgICdyb290JzogRmxleExheW91dFJvb3RDb21wb25lbnQsXG4gICAgJ3NlY3Rpb24nOiBGbGV4TGF5b3V0U2VjdGlvbkNvbXBvbmVudCxcbiAgICAnJHJlZic6IE1hdGVyaWFsQWRkUmVmZXJlbmNlQ29tcG9uZW50LFxuICAgICdidXR0b24nOiBNYXRlcmlhbEJ1dHRvbkNvbXBvbmVudCxcbiAgICAnYnV0dG9uLWdyb3VwJzogTWF0ZXJpYWxCdXR0b25Hcm91cENvbXBvbmVudCxcbiAgICAnY2hlY2tib3gnOiBNYXRlcmlhbENoZWNrYm94Q29tcG9uZW50LFxuICAgICdjaGVja2JveGVzJzogTWF0ZXJpYWxDaGVja2JveGVzQ29tcG9uZW50LFxuICAgICdjaGlwLWxpc3QnOiBNYXRlcmlhbENoaXBMaXN0Q29tcG9uZW50LFxuICAgICdkYXRlJzogTWF0ZXJpYWxEYXRlcGlja2VyQ29tcG9uZW50LFxuICAgICdmaWxlJzogTWF0ZXJpYWxGaWxlQ29tcG9uZW50LFxuICAgICdudW1iZXInOiBNYXRlcmlhbE51bWJlckNvbXBvbmVudCxcbiAgICAnb25lLW9mJzogTWF0ZXJpYWxPbmVPZkNvbXBvbmVudCxcbiAgICAncmFkaW9zJzogTWF0ZXJpYWxSYWRpb3NDb21wb25lbnQsXG4gICAgJ3NlbGVjdCc6IE1hdGVyaWFsU2VsZWN0Q29tcG9uZW50LFxuICAgICdzbGlkZXInOiBNYXRlcmlhbFNsaWRlckNvbXBvbmVudCxcbiAgICAnc3RlcHBlcic6IE1hdGVyaWFsU3RlcHBlckNvbXBvbmVudCxcbiAgICAndGFicyc6IE1hdGVyaWFsVGFic0NvbXBvbmVudCxcbiAgICAndGV4dCc6IE1hdGVyaWFsSW5wdXRDb21wb25lbnQsXG4gICAgJ3RleHRhcmVhJzogTWF0ZXJpYWxUZXh0YXJlYUNvbXBvbmVudCxcbiAgICAnYWx0LWRhdGUnOiAnZGF0ZScsXG4gICAgJ2FueS1vZic6ICdvbmUtb2YnLFxuICAgICdjYXJkJzogJ3NlY3Rpb24nLFxuICAgICdjb2xvcic6ICd0ZXh0JyxcbiAgICAnZXhwYW5zaW9uLXBhbmVsJzogJ3NlY3Rpb24nLFxuICAgICdoaWRkZW4nOiAnbm9uZScsXG4gICAgJ2ltYWdlJzogJ25vbmUnLFxuICAgICdpbnRlZ2VyJzogJ251bWJlcicsXG4gICAgJ3JhZGlvYnV0dG9ucyc6ICdidXR0b24tZ3JvdXAnLFxuICAgICdyYW5nZSc6ICdzbGlkZXInLFxuICAgICdzdWJtaXQnOiAnYnV0dG9uJyxcbiAgICAndGFnc2lucHV0JzogJ2NoaXAtbGlzdCcsXG4gICAgJ3dpemFyZCc6ICdzdGVwcGVyJyxcbiAgfTtcbn1cbiJdfQ==
@@ -1,98 +0,0 @@
1
- import { ChangeDetectionStrategy, Component, Input } from '@angular/core';
2
- import * as i0 from "@angular/core";
3
- import * as i1 from "@ajsf/core";
4
- import * as i2 from "@angular/common";
5
- export class FlexLayoutRootComponent {
6
- constructor(jsf) {
7
- this.jsf = jsf;
8
- this.isFlexItem = false;
9
- }
10
- removeItem(item) {
11
- this.jsf.removeItem(item);
12
- }
13
- // fxFlex="30%" and friends used to come from @angular/flex-layout, which is
14
- // deprecated and has no Angular 16+ release. These translate the same option
15
- // values to the CSS the directives were compiling to, so schemas that set
16
- // fxFlex, fxFlexOrder, fxFlexOffset or fxFlexAlign keep working unchanged.
17
- static { this.SELF_ALIGN = {
18
- start: 'flex-start', end: 'flex-end', center: 'center',
19
- baseline: 'baseline', stretch: 'stretch',
20
- }; }
21
- getFlexBasis(node) {
22
- return (node?.options || {}).fxFlex || this.getFlexAttribute(node, 'flex-basis');
23
- }
24
- getMaxWidth(node) {
25
- const fxFlex = (node?.options || {}).fxFlex;
26
- return fxFlex && `${fxFlex}`.trim().endsWith('%') ? fxFlex : null;
27
- }
28
- getAlignSelf(node) {
29
- const options = node?.options || {};
30
- return options['align-self'] ||
31
- FlexLayoutRootComponent.SELF_ALIGN[options.fxFlexAlign] || null;
32
- }
33
- getOrder(node) {
34
- const options = node?.options || {};
35
- return options.order || options.fxFlexOrder || null;
36
- }
37
- getOffset(node) {
38
- return (node?.options || {}).fxFlexOffset || null;
39
- }
40
- // Set attributes for flexbox child
41
- // (container attributes are set in flex-layout-section.component)
42
- getFlexAttribute(node, attribute) {
43
- const index = ['flex-grow', 'flex-shrink', 'flex-basis'].indexOf(attribute);
44
- return ((node.options || {}).flex || '').split(/\s+/)[index] ||
45
- (node.options || {})[attribute] || ['1', '1', 'auto'][index];
46
- }
47
- showWidget(layoutNode) {
48
- return this.jsf.evaluateCondition(layoutNode, this.dataIndex);
49
- }
50
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: FlexLayoutRootComponent, deps: [{ token: i1.JsonSchemaFormService }], target: i0.ɵɵFactoryTarget.Component }); }
51
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.14", type: FlexLayoutRootComponent, selector: "flex-layout-root-widget", inputs: { dataIndex: "dataIndex", layoutIndex: "layoutIndex", layout: "layout", isFlexItem: "isFlexItem" }, ngImport: i0, template: `
52
- <div *ngFor="let layoutNode of layout; let i = index"
53
- [class.form-flex-item]="isFlexItem"
54
- [style.flex-grow]="getFlexAttribute(layoutNode, 'flex-grow')"
55
- [style.flex-shrink]="getFlexAttribute(layoutNode, 'flex-shrink')"
56
- [style.flex-basis]="getFlexBasis(layoutNode)"
57
- [style.align-self]="getAlignSelf(layoutNode)"
58
- [style.order]="getOrder(layoutNode)"
59
- [style.max-width]="getMaxWidth(layoutNode)"
60
- [style.margin-left]="getOffset(layoutNode)">
61
- <select-framework-widget *ngIf="showWidget(layoutNode)"
62
- [dataIndex]="layoutNode?.arrayItem ? (dataIndex || []).concat(i) : (dataIndex || [])"
63
- [layoutIndex]="(layoutIndex || []).concat(i)"
64
- [layoutNode]="layoutNode"></select-framework-widget>
65
- </div>`, isInline: true, dependencies: [{ kind: "directive", type: i2.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: i1.SelectFrameworkComponent, selector: "select-framework-widget", inputs: ["layoutNode", "layoutIndex", "dataIndex"] }], changeDetection: i0.ChangeDetectionStrategy.Default }); }
66
- }
67
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: FlexLayoutRootComponent, decorators: [{
68
- type: Component,
69
- args: [{
70
- // tslint:disable-next-line:component-selector
71
- selector: 'flex-layout-root-widget',
72
- template: `
73
- <div *ngFor="let layoutNode of layout; let i = index"
74
- [class.form-flex-item]="isFlexItem"
75
- [style.flex-grow]="getFlexAttribute(layoutNode, 'flex-grow')"
76
- [style.flex-shrink]="getFlexAttribute(layoutNode, 'flex-shrink')"
77
- [style.flex-basis]="getFlexBasis(layoutNode)"
78
- [style.align-self]="getAlignSelf(layoutNode)"
79
- [style.order]="getOrder(layoutNode)"
80
- [style.max-width]="getMaxWidth(layoutNode)"
81
- [style.margin-left]="getOffset(layoutNode)">
82
- <select-framework-widget *ngIf="showWidget(layoutNode)"
83
- [dataIndex]="layoutNode?.arrayItem ? (dataIndex || []).concat(i) : (dataIndex || [])"
84
- [layoutIndex]="(layoutIndex || []).concat(i)"
85
- [layoutNode]="layoutNode"></select-framework-widget>
86
- </div>`,
87
- changeDetection: ChangeDetectionStrategy.Default,
88
- }]
89
- }], ctorParameters: () => [{ type: i1.JsonSchemaFormService }], propDecorators: { dataIndex: [{
90
- type: Input
91
- }], layoutIndex: [{
92
- type: Input
93
- }], layout: [{
94
- type: Input
95
- }], isFlexItem: [{
96
- type: Input
97
- }] } });
98
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZmxleC1sYXlvdXQtcm9vdC5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9hanNmLW1hdGVyaWFsL3NyYy9saWIvd2lkZ2V0cy9mbGV4LWxheW91dC1yb290LmNvbXBvbmVudC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsdUJBQXVCLEVBQUUsU0FBUyxFQUFFLEtBQUssRUFBRSxNQUFNLGVBQWUsQ0FBQzs7OztBQXdCMUUsTUFBTSxPQUFPLHVCQUF1QjtJQU1sQyxZQUNVLEdBQTBCO1FBQTFCLFFBQUcsR0FBSCxHQUFHLENBQXVCO1FBSDNCLGVBQVUsR0FBRyxLQUFLLENBQUM7SUFJeEIsQ0FBQztJQUVMLFVBQVUsQ0FBQyxJQUFJO1FBQ2IsSUFBSSxDQUFDLEdBQUcsQ0FBQyxVQUFVLENBQUMsSUFBSSxDQUFDLENBQUM7SUFDNUIsQ0FBQztJQUVELDRFQUE0RTtJQUM1RSw2RUFBNkU7SUFDN0UsMEVBQTBFO0lBQzFFLDJFQUEyRTthQUNuRCxlQUFVLEdBQUc7UUFDbkMsS0FBSyxFQUFFLFlBQVksRUFBRSxHQUFHLEVBQUUsVUFBVSxFQUFFLE1BQU0sRUFBRSxRQUFRO1FBQ3RELFFBQVEsRUFBRSxVQUFVLEVBQUUsT0FBTyxFQUFFLFNBQVM7S0FDekMsQUFIaUMsQ0FHaEM7SUFFRixZQUFZLENBQUMsSUFBUztRQUNwQixPQUFPLENBQUMsSUFBSSxFQUFFLE9BQU8sSUFBSSxFQUFFLENBQUMsQ0FBQyxNQUFNLElBQUksSUFBSSxDQUFDLGdCQUFnQixDQUFDLElBQUksRUFBRSxZQUFZLENBQUMsQ0FBQztJQUNuRixDQUFDO0lBRUQsV0FBVyxDQUFDLElBQVM7UUFDbkIsTUFBTSxNQUFNLEdBQUcsQ0FBQyxJQUFJLEVBQUUsT0FBTyxJQUFJLEVBQUUsQ0FBQyxDQUFDLE1BQU0sQ0FBQztRQUM1QyxPQUFPLE1BQU0sSUFBSSxHQUFHLE1BQU0sRUFBRSxDQUFDLElBQUksRUFBRSxDQUFDLFFBQVEsQ0FBQyxHQUFHLENBQUMsQ0FBQyxDQUFDLENBQUMsTUFBTSxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUM7SUFDcEUsQ0FBQztJQUVELFlBQVksQ0FBQyxJQUFTO1FBQ3BCLE1BQU0sT0FBTyxHQUFHLElBQUksRUFBRSxPQUFPLElBQUksRUFBRSxDQUFDO1FBQ3BDLE9BQU8sT0FBTyxDQUFDLFlBQVksQ0FBQztZQUMxQix1QkFBdUIsQ0FBQyxVQUFVLENBQUMsT0FBTyxDQUFDLFdBQVcsQ0FBQyxJQUFJLElBQUksQ0FBQztJQUNwRSxDQUFDO0lBRUQsUUFBUSxDQUFDLElBQVM7UUFDaEIsTUFBTSxPQUFPLEdBQUcsSUFBSSxFQUFFLE9BQU8sSUFBSSxFQUFFLENBQUM7UUFDcEMsT0FBTyxPQUFPLENBQUMsS0FBSyxJQUFJLE9BQU8sQ0FBQyxXQUFXLElBQUksSUFBSSxDQUFDO0lBQ3RELENBQUM7SUFFRCxTQUFTLENBQUMsSUFBUztRQUNqQixPQUFPLENBQUMsSUFBSSxFQUFFLE9BQU8sSUFBSSxFQUFFLENBQUMsQ0FBQyxZQUFZLElBQUksSUFBSSxDQUFDO0lBQ3BELENBQUM7SUFFRCxtQ0FBbUM7SUFDbkMsa0VBQWtFO0lBQ2xFLGdCQUFnQixDQUFDLElBQVMsRUFBRSxTQUFpQjtRQUMzQyxNQUFNLEtBQUssR0FBRyxDQUFDLFdBQVcsRUFBRSxhQUFhLEVBQUUsWUFBWSxDQUFDLENBQUMsT0FBTyxDQUFDLFNBQVMsQ0FBQyxDQUFDO1FBQzVFLE9BQU8sQ0FBQyxDQUFDLElBQUksQ0FBQyxPQUFPLElBQUksRUFBRSxDQUFDLENBQUMsSUFBSSxJQUFJLEVBQUUsQ0FBQyxDQUFDLEtBQUssQ0FBQyxLQUFLLENBQUMsQ0FBQyxLQUFLLENBQUM7WUFDMUQsQ0FBQyxJQUFJLENBQUMsT0FBTyxJQUFJLEVBQUUsQ0FBQyxDQUFDLFNBQVMsQ0FBQyxJQUFJLENBQUMsR0FBRyxFQUFFLEdBQUcsRUFBRSxNQUFNLENBQUMsQ0FBQyxLQUFLLENBQUMsQ0FBQztJQUNqRSxDQUFDO0lBRUQsVUFBVSxDQUFDLFVBQWU7UUFDeEIsT0FBTyxJQUFJLENBQUMsR0FBRyxDQUFDLGlCQUFpQixDQUFDLFVBQVUsRUFBRSxJQUFJLENBQUMsU0FBUyxDQUFDLENBQUM7SUFDaEUsQ0FBQzsrR0F6RFUsdUJBQXVCO21HQUF2Qix1QkFBdUIsMktBakJ4Qjs7Ozs7Ozs7Ozs7Ozs7V0FjRDs7NEZBR0UsdUJBQXVCO2tCQXBCbkMsU0FBUzttQkFBQztvQkFDVCw4Q0FBOEM7b0JBQzlDLFFBQVEsRUFBRSx5QkFBeUI7b0JBQ25DLFFBQVEsRUFBRTs7Ozs7Ozs7Ozs7Ozs7V0FjRDtvQkFDVCxlQUFlLEVBQUUsdUJBQXVCLENBQUMsT0FBTztpQkFDakQ7MEZBRVUsU0FBUztzQkFBakIsS0FBSztnQkFDRyxXQUFXO3NCQUFuQixLQUFLO2dCQUNHLE1BQU07c0JBQWQsS0FBSztnQkFDRyxVQUFVO3NCQUFsQixLQUFLIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3ksIENvbXBvbmVudCwgSW5wdXQgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IEpzb25TY2hlbWFGb3JtU2VydmljZSB9IGZyb20gJ0BhanNmL2NvcmUnO1xuXG5cbkBDb21wb25lbnQoe1xuICAvLyB0c2xpbnQ6ZGlzYWJsZS1uZXh0LWxpbmU6Y29tcG9uZW50LXNlbGVjdG9yXG4gIHNlbGVjdG9yOiAnZmxleC1sYXlvdXQtcm9vdC13aWRnZXQnLFxuICB0ZW1wbGF0ZTogYFxuICAgIDxkaXYgKm5nRm9yPVwibGV0IGxheW91dE5vZGUgb2YgbGF5b3V0OyBsZXQgaSA9IGluZGV4XCJcbiAgICAgIFtjbGFzcy5mb3JtLWZsZXgtaXRlbV09XCJpc0ZsZXhJdGVtXCJcbiAgICAgIFtzdHlsZS5mbGV4LWdyb3ddPVwiZ2V0RmxleEF0dHJpYnV0ZShsYXlvdXROb2RlLCAnZmxleC1ncm93JylcIlxuICAgICAgW3N0eWxlLmZsZXgtc2hyaW5rXT1cImdldEZsZXhBdHRyaWJ1dGUobGF5b3V0Tm9kZSwgJ2ZsZXgtc2hyaW5rJylcIlxuICAgICAgW3N0eWxlLmZsZXgtYmFzaXNdPVwiZ2V0RmxleEJhc2lzKGxheW91dE5vZGUpXCJcbiAgICAgIFtzdHlsZS5hbGlnbi1zZWxmXT1cImdldEFsaWduU2VsZihsYXlvdXROb2RlKVwiXG4gICAgICBbc3R5bGUub3JkZXJdPVwiZ2V0T3JkZXIobGF5b3V0Tm9kZSlcIlxuICAgICAgW3N0eWxlLm1heC13aWR0aF09XCJnZXRNYXhXaWR0aChsYXlvdXROb2RlKVwiXG4gICAgICBbc3R5bGUubWFyZ2luLWxlZnRdPVwiZ2V0T2Zmc2V0KGxheW91dE5vZGUpXCI+XG4gICAgICA8c2VsZWN0LWZyYW1ld29yay13aWRnZXQgKm5nSWY9XCJzaG93V2lkZ2V0KGxheW91dE5vZGUpXCJcbiAgICAgICAgW2RhdGFJbmRleF09XCJsYXlvdXROb2RlPy5hcnJheUl0ZW0gPyAoZGF0YUluZGV4IHx8IFtdKS5jb25jYXQoaSkgOiAoZGF0YUluZGV4IHx8IFtdKVwiXG4gICAgICAgIFtsYXlvdXRJbmRleF09XCIobGF5b3V0SW5kZXggfHwgW10pLmNvbmNhdChpKVwiXG4gICAgICAgIFtsYXlvdXROb2RlXT1cImxheW91dE5vZGVcIj48L3NlbGVjdC1mcmFtZXdvcmstd2lkZ2V0PlxuICAgIDwvZGl2PmAsXG4gIGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuRGVmYXVsdCxcbn0pXG5leHBvcnQgY2xhc3MgRmxleExheW91dFJvb3RDb21wb25lbnQge1xuICBASW5wdXQoKSBkYXRhSW5kZXg6IG51bWJlcltdO1xuICBASW5wdXQoKSBsYXlvdXRJbmRleDogbnVtYmVyW107XG4gIEBJbnB1dCgpIGxheW91dDogYW55W107XG4gIEBJbnB1dCgpIGlzRmxleEl0ZW0gPSBmYWxzZTtcblxuICBjb25zdHJ1Y3RvcihcbiAgICBwcml2YXRlIGpzZjogSnNvblNjaGVtYUZvcm1TZXJ2aWNlXG4gICkgeyB9XG5cbiAgcmVtb3ZlSXRlbShpdGVtKSB7XG4gICAgdGhpcy5qc2YucmVtb3ZlSXRlbShpdGVtKTtcbiAgfVxuXG4gIC8vIGZ4RmxleD1cIjMwJVwiIGFuZCBmcmllbmRzIHVzZWQgdG8gY29tZSBmcm9tIEBhbmd1bGFyL2ZsZXgtbGF5b3V0LCB3aGljaCBpc1xuICAvLyBkZXByZWNhdGVkIGFuZCBoYXMgbm8gQW5ndWxhciAxNisgcmVsZWFzZS4gVGhlc2UgdHJhbnNsYXRlIHRoZSBzYW1lIG9wdGlvblxuICAvLyB2YWx1ZXMgdG8gdGhlIENTUyB0aGUgZGlyZWN0aXZlcyB3ZXJlIGNvbXBpbGluZyB0bywgc28gc2NoZW1hcyB0aGF0IHNldFxuICAvLyBmeEZsZXgsIGZ4RmxleE9yZGVyLCBmeEZsZXhPZmZzZXQgb3IgZnhGbGV4QWxpZ24ga2VlcCB3b3JraW5nIHVuY2hhbmdlZC5cbiAgcHJpdmF0ZSBzdGF0aWMgcmVhZG9ubHkgU0VMRl9BTElHTiA9IHtcbiAgICBzdGFydDogJ2ZsZXgtc3RhcnQnLCBlbmQ6ICdmbGV4LWVuZCcsIGNlbnRlcjogJ2NlbnRlcicsXG4gICAgYmFzZWxpbmU6ICdiYXNlbGluZScsIHN0cmV0Y2g6ICdzdHJldGNoJyxcbiAgfTtcblxuICBnZXRGbGV4QmFzaXMobm9kZTogYW55KTogc3RyaW5nIHtcbiAgICByZXR1cm4gKG5vZGU/Lm9wdGlvbnMgfHwge30pLmZ4RmxleCB8fCB0aGlzLmdldEZsZXhBdHRyaWJ1dGUobm9kZSwgJ2ZsZXgtYmFzaXMnKTtcbiAgfVxuXG4gIGdldE1heFdpZHRoKG5vZGU6IGFueSk6IHN0cmluZyB7XG4gICAgY29uc3QgZnhGbGV4ID0gKG5vZGU/Lm9wdGlvbnMgfHwge30pLmZ4RmxleDtcbiAgICByZXR1cm4gZnhGbGV4ICYmIGAke2Z4RmxleH1gLnRyaW0oKS5lbmRzV2l0aCgnJScpID8gZnhGbGV4IDogbnVsbDtcbiAgfVxuXG4gIGdldEFsaWduU2VsZihub2RlOiBhbnkpOiBzdHJpbmcge1xuICAgIGNvbnN0IG9wdGlvbnMgPSBub2RlPy5vcHRpb25zIHx8IHt9O1xuICAgIHJldHVybiBvcHRpb25zWydhbGlnbi1zZWxmJ10gfHxcbiAgICAgIEZsZXhMYXlvdXRSb290Q29tcG9uZW50LlNFTEZfQUxJR05bb3B0aW9ucy5meEZsZXhBbGlnbl0gfHwgbnVsbDtcbiAgfVxuXG4gIGdldE9yZGVyKG5vZGU6IGFueSk6IHN0cmluZyB7XG4gICAgY29uc3Qgb3B0aW9ucyA9IG5vZGU/Lm9wdGlvbnMgfHwge307XG4gICAgcmV0dXJuIG9wdGlvbnMub3JkZXIgfHwgb3B0aW9ucy5meEZsZXhPcmRlciB8fCBudWxsO1xuICB9XG5cbiAgZ2V0T2Zmc2V0KG5vZGU6IGFueSk6IHN0cmluZyB7XG4gICAgcmV0dXJuIChub2RlPy5vcHRpb25zIHx8IHt9KS5meEZsZXhPZmZzZXQgfHwgbnVsbDtcbiAgfVxuXG4gIC8vIFNldCBhdHRyaWJ1dGVzIGZvciBmbGV4Ym94IGNoaWxkXG4gIC8vIChjb250YWluZXIgYXR0cmlidXRlcyBhcmUgc2V0IGluIGZsZXgtbGF5b3V0LXNlY3Rpb24uY29tcG9uZW50KVxuICBnZXRGbGV4QXR0cmlidXRlKG5vZGU6IGFueSwgYXR0cmlidXRlOiBzdHJpbmcpIHtcbiAgICBjb25zdCBpbmRleCA9IFsnZmxleC1ncm93JywgJ2ZsZXgtc2hyaW5rJywgJ2ZsZXgtYmFzaXMnXS5pbmRleE9mKGF0dHJpYnV0ZSk7XG4gICAgcmV0dXJuICgobm9kZS5vcHRpb25zIHx8IHt9KS5mbGV4IHx8ICcnKS5zcGxpdCgvXFxzKy8pW2luZGV4XSB8fFxuICAgICAgKG5vZGUub3B0aW9ucyB8fCB7fSlbYXR0cmlidXRlXSB8fCBbJzEnLCAnMScsICdhdXRvJ11baW5kZXhdO1xuICB9XG5cbiAgc2hvd1dpZGdldChsYXlvdXROb2RlOiBhbnkpOiBib29sZWFuIHtcbiAgICByZXR1cm4gdGhpcy5qc2YuZXZhbHVhdGVDb25kaXRpb24obGF5b3V0Tm9kZSwgdGhpcy5kYXRhSW5kZXgpO1xuICB9XG59XG4iXX0=