@ngstarter-ui/components 21.0.46 → 21.0.48
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/ai/component-registry.json +14 -4
- package/fesm2022/ngstarter-ui-components-card.mjs +2 -2
- package/fesm2022/ngstarter-ui-components-form-builder.mjs +1013 -320
- package/fesm2022/ngstarter-ui-components-form-builder.mjs.map +1 -1
- package/package.json +1 -1
- package/styles/_common.scss +1 -0
- package/types/ngstarter-ui-components-form-builder.d.ts +43 -20
package/package.json
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@ngstarter-ui/components",
|
|
3
3
|
"description": "NgStarter - AI-friendly Enterprise Angular UI Components and Admin Panel",
|
|
4
|
-
"version": "21.0.
|
|
4
|
+
"version": "21.0.48",
|
|
5
5
|
"repository": {
|
|
6
6
|
"type": "git",
|
|
7
7
|
"url": "https://github.com/elementarlabsdev/ngstarter.git"
|
package/styles/_common.scss
CHANGED
|
@@ -1,15 +1,15 @@
|
|
|
1
1
|
import * as _angular_forms from '@angular/forms';
|
|
2
|
-
import { ValidatorFn, FormControl, FormGroup } from '@angular/forms';
|
|
2
|
+
import { ValidatorFn, FormControl, FormGroup, FormArray } from '@angular/forms';
|
|
3
3
|
import * as _angular_core from '@angular/core';
|
|
4
|
-
import { Type, InjectionToken, EnvironmentProviders, TemplateRef } from '@angular/core';
|
|
4
|
+
import { Type, InjectionToken, EnvironmentProviders, Provider, TemplateRef } from '@angular/core';
|
|
5
5
|
import { TreeNodeDropPosition, Tree, TreeNodeDrop } from '@ngstarter-ui/components/tree';
|
|
6
6
|
import { DateRangeInput } from '@ngstarter-ui/components/datepicker';
|
|
7
7
|
import { RadioGroupOrientation } from '@ngstarter-ui/components/radio';
|
|
8
8
|
import { UploadFileSelectedEvent } from '@ngstarter-ui/components/upload';
|
|
9
|
-
import * as _ngstarter_ui_components_form_builder from '@ngstarter-ui/components/form-builder';
|
|
10
9
|
|
|
11
10
|
type FormBuilderFieldWidth = 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12;
|
|
12
11
|
type FormBuilderItemKind = 'field' | 'layout' | 'static';
|
|
12
|
+
type FormBuilderSettingsInheritance = 'field' | 'input-field' | 'layout' | 'layout-container' | 'static' | 'none';
|
|
13
13
|
interface FormBuilderOption {
|
|
14
14
|
label: string;
|
|
15
15
|
value: any;
|
|
@@ -20,12 +20,6 @@ interface FormBuilderValidationRule {
|
|
|
20
20
|
value?: any;
|
|
21
21
|
message?: string;
|
|
22
22
|
}
|
|
23
|
-
interface FormBuilderVisibility {
|
|
24
|
-
form?: boolean;
|
|
25
|
-
email?: boolean;
|
|
26
|
-
pdf?: boolean;
|
|
27
|
-
condition?: string;
|
|
28
|
-
}
|
|
29
23
|
interface FormBuilderField {
|
|
30
24
|
id: string;
|
|
31
25
|
name: string;
|
|
@@ -43,7 +37,6 @@ interface FormBuilderField {
|
|
|
43
37
|
width?: FormBuilderFieldWidth;
|
|
44
38
|
options?: FormBuilderOption[];
|
|
45
39
|
validation?: FormBuilderValidationRule[];
|
|
46
|
-
visibility?: FormBuilderVisibility;
|
|
47
40
|
settings?: Record<string, any>;
|
|
48
41
|
children?: FormBuilderField[];
|
|
49
42
|
}
|
|
@@ -78,12 +71,12 @@ interface FormBuilderUploadContext {
|
|
|
78
71
|
multiple: boolean;
|
|
79
72
|
}
|
|
80
73
|
type FormBuilderUploadCallback = (context: FormBuilderUploadContext) => any | Promise<any>;
|
|
74
|
+
type FormBuilderComponentImporter<T = any> = () => Promise<Type<T>>;
|
|
81
75
|
interface FormBuilderSettingsContext {
|
|
82
76
|
field: FormBuilderField;
|
|
83
77
|
schema: FormBuilderSchema;
|
|
84
78
|
update: (changes: Partial<FormBuilderField>) => void;
|
|
85
79
|
}
|
|
86
|
-
type FormBuilderComponentImporter<T = any> = () => Promise<Type<T>>;
|
|
87
80
|
interface FormBuilderFieldSettingsContext {
|
|
88
81
|
item: FormBuilderField;
|
|
89
82
|
field: FormBuilderField;
|
|
@@ -100,6 +93,11 @@ interface FormBuilderSectionSettingsContext {
|
|
|
100
93
|
update: (changes: Partial<FormBuilderSection>) => void;
|
|
101
94
|
updateSection: (changes: Partial<FormBuilderSection>) => void;
|
|
102
95
|
}
|
|
96
|
+
type FormBuilderSettingsSchemaFactory = (context: FormBuilderFieldSettingsContext | FormBuilderSectionSettingsContext) => FormBuilderSchema;
|
|
97
|
+
interface FormBuilderSettingsConfig {
|
|
98
|
+
extends?: FormBuilderSettingsInheritance;
|
|
99
|
+
schema?: FormBuilderSchema | FormBuilderSettingsSchemaFactory;
|
|
100
|
+
}
|
|
103
101
|
interface FormBuilderItemDefinition {
|
|
104
102
|
type: string;
|
|
105
103
|
label: string;
|
|
@@ -109,7 +107,7 @@ interface FormBuilderItemDefinition {
|
|
|
109
107
|
description?: string;
|
|
110
108
|
defaults?: Partial<FormBuilderField>;
|
|
111
109
|
renderer?: FormBuilderComponentImporter;
|
|
112
|
-
settings?: FormBuilderComponentImporter;
|
|
110
|
+
settings?: FormBuilderComponentImporter | FormBuilderSettingsConfig;
|
|
113
111
|
acceptsChildren?: boolean;
|
|
114
112
|
}
|
|
115
113
|
interface FormBuilderFieldDefinition extends FormBuilderItemDefinition {
|
|
@@ -135,12 +133,20 @@ declare const FORM_BUILDER_UPLOAD_CALLBACK: InjectionToken<FormBuilderUploadCall
|
|
|
135
133
|
declare function formBuilderField(definition: FormBuilderFieldDefinition): FormBuilderFieldDefinition;
|
|
136
134
|
declare function formBuilderItem(definition: FormBuilderItemDefinition): FormBuilderItemDefinition;
|
|
137
135
|
declare function formBuilderSettings(definition: FormBuilderSettingsDefinition): FormBuilderSettingsDefinition;
|
|
136
|
+
declare function provideFormBuilderField(definition: FormBuilderFieldDefinition): Provider;
|
|
137
|
+
declare function provideFormBuilderFields(definitions: FormBuilderFieldDefinition[]): Provider[];
|
|
138
138
|
declare function provideFormBuilder(config?: {
|
|
139
139
|
items?: FormBuilderItemDefinition[];
|
|
140
140
|
fields?: FormBuilderFieldDefinition[];
|
|
141
141
|
settings?: FormBuilderSettingsDefinition[];
|
|
142
142
|
uploadCallback?: FormBuilderUploadCallback;
|
|
143
143
|
}): EnvironmentProviders;
|
|
144
|
+
declare const FORM_BUILDER_FIELD_BASE_SETTINGS_SCHEMA: FormBuilderSchema;
|
|
145
|
+
declare const FORM_BUILDER_INPUT_FIELD_BASE_SETTINGS_SCHEMA: FormBuilderSchema;
|
|
146
|
+
declare const FORM_BUILDER_LAYOUT_BASE_SETTINGS_SCHEMA: FormBuilderSchema;
|
|
147
|
+
declare const FORM_BUILDER_LAYOUT_CONTAINER_BASE_SETTINGS_SCHEMA: FormBuilderSchema;
|
|
148
|
+
declare const FORM_BUILDER_STATIC_BASE_SETTINGS_SCHEMA: FormBuilderSchema;
|
|
149
|
+
declare const FORM_BUILDER_SECTION_BASE_SETTINGS_SCHEMA: FormBuilderSchema;
|
|
144
150
|
declare const DEFAULT_FORM_BUILDER_FIELDS: FormBuilderFieldDefinition[];
|
|
145
151
|
declare const DEFAULT_FORM_BUILDER_ITEMS: FormBuilderItemDefinition[];
|
|
146
152
|
declare function validatorsFromRules(rules?: FormBuilderValidationRule[], field?: FormBuilderField): _angular_forms.ValidatorFn[];
|
|
@@ -330,13 +336,23 @@ declare class FormBuilderRenderer {
|
|
|
330
336
|
protected readonly visibleCanvasItems: _angular_core.Signal<FormBuilderRendererCanvasItem[]>;
|
|
331
337
|
protected readonly formGroup: _angular_core.Signal<FormGroup<any>>;
|
|
332
338
|
constructor();
|
|
333
|
-
protected getControl(field: FormBuilderField): FormControl;
|
|
339
|
+
protected getControl(field: FormBuilderField, formGroup?: FormGroup<any>): FormControl;
|
|
334
340
|
protected isContainerField(field: FormBuilderField): boolean;
|
|
335
341
|
protected visibleChildren(field: FormBuilderField): FormBuilderField[];
|
|
342
|
+
protected isRepeaterField(field: FormBuilderField): boolean;
|
|
343
|
+
protected repeaterArray(field: FormBuilderField, formGroup?: FormGroup<any>): FormArray<FormGroup>;
|
|
344
|
+
protected repeaterGroups(field: FormBuilderField, formGroup?: FormGroup<any>): FormGroup[];
|
|
345
|
+
protected repeaterEmptyText(field: FormBuilderField): string;
|
|
346
|
+
protected addRepeaterItem(field: FormBuilderField, formGroup?: FormGroup<any>): void;
|
|
347
|
+
protected removeRepeaterItem(field: FormBuilderField, index: number, formGroup?: FormGroup<any>): void;
|
|
348
|
+
protected canRemoveRepeaterItem(field: FormBuilderField, formGroup?: FormGroup<any>): boolean;
|
|
336
349
|
protected submit(): void;
|
|
337
350
|
private createFormGroup;
|
|
338
|
-
private
|
|
351
|
+
private addFieldsToControls;
|
|
352
|
+
private createRepeaterArray;
|
|
353
|
+
private createRepeaterGroup;
|
|
339
354
|
private fieldInitialValue;
|
|
355
|
+
private allowsNullValue;
|
|
340
356
|
private resolveCanvasItems;
|
|
341
357
|
static ɵfac: _angular_core.ɵɵFactoryDeclaration<FormBuilderRenderer, never>;
|
|
342
358
|
static ɵcmp: _angular_core.ɵɵComponentDeclaration<FormBuilderRenderer, "ngs-form-renderer", ["ngsFormRenderer"], { "schema": { "alias": "schema"; "required": true; "isSignal": true; }; "readonly": { "alias": "readonly"; "required": false; "isSignal": true; }; "showSubmit": { "alias": "showSubmit"; "required": false; "isSignal": true; }; "submitLabel": { "alias": "submitLabel"; "required": false; "isSignal": true; }; "uploadCallback": { "alias": "uploadCallback"; "required": false; "isSignal": true; }; "value": { "alias": "value"; "required": false; "isSignal": true; }; }, { "value": "valueChange"; "formSubmit": "formSubmit"; "formReady": "formReady"; }, never, never, true, never>;
|
|
@@ -379,12 +395,19 @@ declare class FormBuilderSettingsHost {
|
|
|
379
395
|
readonly update: _angular_core.InputSignal<((changes: Partial<FormBuilderField>) => void) | undefined>;
|
|
380
396
|
readonly updateSection: _angular_core.InputSignal<((changes: Partial<FormBuilderSection>) => void) | undefined>;
|
|
381
397
|
protected readonly itemDefinition: _angular_core.Signal<FormBuilderFieldDefinition | undefined>;
|
|
382
|
-
protected readonly
|
|
383
|
-
protected readonly
|
|
384
|
-
protected readonly
|
|
385
|
-
protected readonly customLoaded: _angular_core.WritableSignal<boolean>;
|
|
398
|
+
protected readonly settingsSchema: _angular_core.Signal<FormBuilderSchema | null>;
|
|
399
|
+
protected readonly settingsValue: _angular_core.Signal<Record<string, any>>;
|
|
400
|
+
protected readonly legacyLoaded: _angular_core.WritableSignal<boolean>;
|
|
386
401
|
private readonly anchor;
|
|
387
402
|
constructor();
|
|
403
|
+
protected applySettingsValue(value: Record<string, any>): void;
|
|
404
|
+
private createSettingsPatch;
|
|
405
|
+
private readSettingValue;
|
|
406
|
+
private settingsConfig;
|
|
407
|
+
private legacySettingsImporter;
|
|
408
|
+
private resolveOwnSettingsSchema;
|
|
409
|
+
private inferSettingsInheritance;
|
|
410
|
+
private baseSettingsSchema;
|
|
388
411
|
static ɵfac: _angular_core.ɵɵFactoryDeclaration<FormBuilderSettingsHost, never>;
|
|
389
412
|
static ɵcmp: _angular_core.ɵɵComponentDeclaration<FormBuilderSettingsHost, "ngs-form-builder-settings-host", ["ngsFormBuilderSettingsHost"], { "field": { "alias": "field"; "required": false; "isSignal": true; }; "section": { "alias": "section"; "required": false; "isSignal": true; }; "schema": { "alias": "schema"; "required": true; "isSignal": true; }; "definitions": { "alias": "definitions"; "required": false; "isSignal": true; }; "settingsDefinitions": { "alias": "settingsDefinitions"; "required": false; "isSignal": true; }; "update": { "alias": "update"; "required": false; "isSignal": true; }; "updateSection": { "alias": "updateSection"; "required": false; "isSignal": true; }; }, {}, never, never, true, never>;
|
|
390
413
|
}
|
|
@@ -444,5 +467,5 @@ declare class BasicFormBuilderSectionSettings {
|
|
|
444
467
|
static ɵcmp: _angular_core.ɵɵComponentDeclaration<BasicFormBuilderSectionSettings, "ngs-basic-form-builder-section-settings", ["ngsBasicFormBuilderSectionSettings"], { "section": { "alias": "section"; "required": true; "isSignal": true; }; "update": { "alias": "update"; "required": true; "isSignal": true; }; }, {}, never, never, true, never>;
|
|
445
468
|
}
|
|
446
469
|
|
|
447
|
-
export { BasicFormBuilderFieldSettings, BasicFormBuilderLayoutSettings, BasicFormBuilderSectionSettings, DEFAULT_FORM_BUILDER_FIELDS, DEFAULT_FORM_BUILDER_ITEMS, FORM_BUILDER_FIELDS, FORM_BUILDER_ITEMS, FORM_BUILDER_SETTINGS, FORM_BUILDER_UPLOAD_CALLBACK, FormBuilder, FormBuilderFieldHost, FormBuilderRenderer, FormBuilderSettingsHost, createDefaultFormBuilderSchema, formBuilderField, formBuilderItem, formBuilderSettings, provideFormBuilder, validatorsFromRules };
|
|
448
|
-
export type { FormBuilderComponentImporter, FormBuilderField, FormBuilderFieldChange, FormBuilderFieldDefinition, FormBuilderFieldRenderContext, FormBuilderFieldSettingsContext, FormBuilderFieldWidth, FormBuilderItemDefinition, FormBuilderItemKind, FormBuilderLayoutItem, FormBuilderOption, FormBuilderSchema, FormBuilderSection, FormBuilderSectionSettingsContext, FormBuilderSettingsContext, FormBuilderSettingsDefinition, FormBuilderUploadCallback, FormBuilderUploadContext, FormBuilderValidationRule
|
|
470
|
+
export { BasicFormBuilderFieldSettings, BasicFormBuilderLayoutSettings, BasicFormBuilderSectionSettings, DEFAULT_FORM_BUILDER_FIELDS, DEFAULT_FORM_BUILDER_ITEMS, FORM_BUILDER_FIELDS, FORM_BUILDER_FIELD_BASE_SETTINGS_SCHEMA, FORM_BUILDER_INPUT_FIELD_BASE_SETTINGS_SCHEMA, FORM_BUILDER_ITEMS, FORM_BUILDER_LAYOUT_BASE_SETTINGS_SCHEMA, FORM_BUILDER_LAYOUT_CONTAINER_BASE_SETTINGS_SCHEMA, FORM_BUILDER_SECTION_BASE_SETTINGS_SCHEMA, FORM_BUILDER_SETTINGS, FORM_BUILDER_STATIC_BASE_SETTINGS_SCHEMA, FORM_BUILDER_UPLOAD_CALLBACK, FormBuilder, FormBuilderFieldHost, FormBuilderRenderer, FormBuilderSettingsHost, createDefaultFormBuilderSchema, formBuilderField, formBuilderItem, formBuilderSettings, provideFormBuilder, provideFormBuilderField, provideFormBuilderFields, validatorsFromRules };
|
|
471
|
+
export type { FormBuilderComponentImporter, FormBuilderField, FormBuilderFieldChange, FormBuilderFieldDefinition, FormBuilderFieldRenderContext, FormBuilderFieldSettingsContext, FormBuilderFieldWidth, FormBuilderItemDefinition, FormBuilderItemKind, FormBuilderLayoutItem, FormBuilderOption, FormBuilderSchema, FormBuilderSection, FormBuilderSectionSettingsContext, FormBuilderSettingsConfig, FormBuilderSettingsContext, FormBuilderSettingsDefinition, FormBuilderSettingsInheritance, FormBuilderSettingsSchemaFactory, FormBuilderUploadCallback, FormBuilderUploadContext, FormBuilderValidationRule };
|