@syncfusion/ej2-angular-form-builder 35.1.37

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/CHANGELOG.md ADDED
@@ -0,0 +1,3 @@
1
+ # Changelog
2
+
3
+ ## [Unreleased]
package/README.md ADDED
@@ -0,0 +1,97 @@
1
+ # Angular Form Builder
2
+
3
+ > **Using this package with an AI coding agent**
4
+ >
5
+ > Before generating Syncfusion code, ask your AI coding agent to run the Syncfusion setup using the following prompt:
6
+ >
7
+ > ```text
8
+ > Set up this project for Syncfusion before generating code. Fetch
9
+ > and follow the official instructions at https://ai.syncfusion.com,
10
+ > then report the detected platform, installed skill pack, MCP
11
+ > status, and any required licensing action.
12
+ > ```
13
+ > The setup detects your project’s platform and loads the appropriate Syncfusion skill pack. No Syncfusion account or MCP key is required to install or read Syncfusion agent skills.
14
+ >
15
+ > **Platform reference:** [https://ai.syncfusion.com/angular/llms.txt](https://ai.syncfusion.com/angular/llms.txt)
16
+
17
+ ## What's Included in the Angular Form Builder Package
18
+
19
+ The Angular Form Builder package provides a drag-and-drop form design experience for creating dynamic forms with Syncfusion® controls.
20
+
21
+ ### Form Builder
22
+
23
+ The [Angular Form Builder](https://www.syncfusion.com/angular-components/?utm_source=npm&utm_medium=listing&utm_campaign=angular-form-builder-npm) component allows you to design and generate dynamic forms with a simple drag-and-drop interface.
24
+
25
+ <p align="center">
26
+ <a href="https://ej2.syncfusion.com/angular/documentation/form-builder/getting-started">Getting Started</a> .
27
+ <a href="https://ej2.syncfusion.com/angular/demos/#/tailwind3/form-builder/default">Online demos</a> .
28
+ <a href="https://www.syncfusion.com/angular-components/?utm_source=npm&utm_medium=listing&utm_campaign=angular-form-builder-npm">Learn more</a>
29
+ </p>
30
+
31
+ #### Key features
32
+
33
+ * **Drag-and-drop form design** - Build forms quickly by dragging and dropping form fields onto the design area and rearranging them as needed.
34
+ * **Wide range of built-in form components** - Use 20+ built-in fields, including text box, dropdown list, combo box, multi-select, date picker, time picker, checkbox, radio button, slider, rating, signature, and file upload.
35
+ * **Custom components** - Extend the Form Builder by registering custom components for specialized fields and business-specific inputs.
36
+ * **Form field configuration** - Define field names, labels, placeholders, validation rules, and other properties from the properties panel.
37
+ * **Conditional logic** - Show or hide form fields dynamically based on values from other fields.
38
+ * **Dependent dropdowns** - Configure cascading dropdowns where the options in one dropdown depend on the selected value of another.
39
+ * **Expressions** - Bind calculated values to form fields using expressions so values update automatically when related fields change.
40
+ * **Form preview** - Preview the designed form at any time before saving or publishing it.
41
+ * **JSON schema viewing** - View the generated JSON schema to understand, validate, and reuse the form definition.
42
+ * **Save and load form data** - Export the designed form as JSON schema and load it back to restore the exact form layout at runtime.
43
+ * **Responsive rendering** - Create forms that adapt seamlessly to desktops, tablets, and mobile devices.
44
+
45
+ <p align="center">
46
+ Trusted by the world's leading companies
47
+ <a href="https://www.syncfusion.com/">
48
+ <img src="https://raw.githubusercontent.com/SyncfusionExamples/nuget-img/master/syncfusion/syncfusion-trusted-companies.webp" alt="Syncfusion logo">
49
+ </a>
50
+ </p>
51
+
52
+ ## Setup
53
+
54
+ To install `form-builder` and its dependent packages, use the following command.
55
+
56
+ ```sh
57
+ npm install @syncfusion/ej2-angular-form-builder
58
+ ```
59
+
60
+ ## Supported frameworks
61
+
62
+ Form Builder components are available in following list of frameworks.
63
+
64
+ | [<img src="https://ej2.syncfusion.com/github/images/js.svg" height="50" />](https://www.syncfusion.com/javascript-ui-controls?utm_medium=listing&utm_source=github)<br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;[JavaScript](https://www.syncfusion.com/javascript-ui-controls?utm_medium=listing&utm_source=github)&nbsp;&nbsp;&nbsp;&nbsp; | [<img src="https://ej2.syncfusion.com/github/images/react.svg" height="50" />](https://www.syncfusion.com/react-ui-components?utm_medium=listing&utm_source=github)<br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;[React](https://www.syncfusion.com/react-ui-components?utm_medium=listing&utm_source=github)&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; | [<img src="https://ej2.syncfusion.com/github/images/vue.svg" height="50" />](https://www.syncfusion.com/vue-ui-components?utm_medium=listing&utm_source=github)<br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;[Vue](https://www.syncfusion.com/vue-ui-components?utm_medium=listing&utm_source=github)&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; | [<img src="https://ej2.syncfusion.com/github/images/netcore.svg" height="50" />](https://www.syncfusion.com/aspnet-core-ui-controls?utm_medium=listing&utm_source=github)<br/>&nbsp;&nbsp;[ASP.NET&nbsp;Core](https://www.syncfusion.com/aspnet-core-ui-controls?utm_medium=listing&utm_source=github)&nbsp;&nbsp; | [<img src="https://ej2.syncfusion.com/github/images/netmvc.svg" height="50" />](https://www.syncfusion.com/aspnet-mvc-ui-controls?utm_medium=listing&utm_source=github)<br/>&nbsp;&nbsp;[ASP.NET&nbsp;MVC](https://www.syncfusion.com/aspnet-mvc-ui-controls?utm_medium=listing&utm_source=github)&nbsp;&nbsp; |
65
+ | :-----: | :-----: | :-----: | :-----: | :-----: |
66
+
67
+ ## Resources
68
+
69
+ * [Documentation](https://www.syncfusion.com/angular-components/)
70
+ * [Theme Studio](https://ej2.syncfusion.com/themestudio/)
71
+ * [What's New](https://www.syncfusion.com/products/whatsnew/angular?utm_medium=listing&utm_source=github)
72
+ * [Road Map](https://www.syncfusion.com/products/roadmap/angular)
73
+ * [E-Books](https://www.syncfusion.com/succinctly-free-ebooks?searchkey=angular&type=all)
74
+
75
+ ## Support
76
+
77
+ Product support is available through following mediums.
78
+
79
+ * [Support ticket](https://support.syncfusion.com/support/tickets/create) - Guaranteed Response in 24 hours | Unlimited tickets | Holiday support
80
+ * [Community forum](https://www.syncfusion.com/forums/angular-js2?utm_source=npm&utm_medium=listing&utm_campaign=angular-form-builder-npm)
81
+ * [GitHub issues](https://github.com/syncfusion/ej2-angular-ui-components/issues/new)
82
+ * [Request feature or report bug](https://www.syncfusion.com/feedback/angular?utm_source=npm&utm_medium=listing&utm_campaign=angular-form-builder-npm)
83
+ * Live chat
84
+
85
+ ## Changelog
86
+
87
+ Check the changelog [here](https://github.com/syncfusion/ej2-angular-ui-components/blob/master/components/base/CHANGELOG.md). Get minor improvements and bug fixes every week to stay up to date with frequent updates.
88
+
89
+ ## License and copyright
90
+
91
+ > This is a commercial product and requires a paid license for possession or use. Syncfusion<sup>®</sup> licensed software, including this component, is subject to the terms and conditions of Syncfusion<sup>®</sup> [EULA](https://www.syncfusion.com/eula/es/). To acquire a license for 140+ [Angular UI components](https://www.syncfusion.com/angular-components), you can [purchase](https://www.syncfusion.com/sales/products) or [start a free 30-day trial](https://www.syncfusion.com/account/manage-trials/start-trials).
92
+
93
+ > A free community [license](https://www.syncfusion.com/products/communitylicense) is also available for companies and individuals whose organizations have less than $1 million USD in annual gross revenue and five or fewer developers.
94
+
95
+ See [LICENSE FILE](https://github.com/syncfusion/ej2-angular-ui-components/blob/master/license) for more info.
96
+
97
+ © Copyright 2026 Syncfusion<sup>®</sup> Inc. All Rights Reserved. The Syncfusion<sup>®</sup> Essential Studio<sup>®</sup> license and copyright applies to this distribution.
@@ -0,0 +1,185 @@
1
+ import * as i0 from '@angular/core';
2
+ import { ContentChild, Directive, ContentChildren, ChangeDetectionStrategy, Component, NgModule } from '@angular/core';
3
+ import { ComplexBase, setValue, Template, ArrayBase, ComponentBase, ComponentMixins } from '@syncfusion/ej2-angular-base';
4
+ import { __decorate } from 'tslib';
5
+ import { FormBuilder } from '@syncfusion/ej2-form-builder';
6
+ export * from '@syncfusion/ej2-form-builder';
7
+ import { CommonModule } from '@angular/common';
8
+
9
+ let input = ['template', 'templateId', 'type'];
10
+ let outputs$1 = [];
11
+ /**
12
+ * `e-toolboxItemSettings` directive represents a custom widget
13
+ * configuration item of the Angular FormBuilder component.
14
+ * It must be contained within the `e-toolboxItemSettings`
15
+ * collection of an `ejs-form-builder` component.
16
+ * ```html
17
+ * <ejs-form-builder>
18
+ * <e-toolboxItemSettings>
19
+ * <e-toolboxItemSetting></e-toolboxItemSetting>
20
+ * </e-toolboxItemSettings>
21
+ * </ejs-form-builder>
22
+ * ```
23
+ */
24
+ class ToolboxItemSettingDirective extends ComplexBase {
25
+ viewContainerRef;
26
+ directivePropList;
27
+ constructor(viewContainerRef) {
28
+ super();
29
+ this.viewContainerRef = viewContainerRef;
30
+ setValue('currentInstance', this, this.viewContainerRef);
31
+ this.registerEvents(outputs$1);
32
+ this.directivePropList = input;
33
+ }
34
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "22.0.0", ngImport: i0, type: ToolboxItemSettingDirective, deps: [{ token: i0.ViewContainerRef }], target: i0.ɵɵFactoryTarget.Directive });
35
+ static ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "22.0.0", type: ToolboxItemSettingDirective, isStandalone: true, selector: "e-toolboxitemsettings>e-toolboxitemsetting", inputs: { template: "template", templateId: "templateId", type: "type" }, queries: [{ propertyName: "template", first: true, predicate: ["template"], descendants: true }], usesInheritance: true, ngImport: i0 });
36
+ }
37
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "22.0.0", ngImport: i0, type: ToolboxItemSettingDirective, decorators: [{
38
+ type: Directive,
39
+ args: [{
40
+ selector: 'e-toolboxitemsettings>e-toolboxitemsetting',
41
+ inputs: input,
42
+ outputs: outputs$1,
43
+ standalone: true,
44
+ queries: {
45
+ template: new ContentChild('template')
46
+ }
47
+ }]
48
+ }], ctorParameters: () => [{ type: i0.ViewContainerRef }] });
49
+ Template()(ToolboxItemSettingDirective.prototype, 'template');
50
+ /**
51
+ * ToolboxItemSetting Array Directive
52
+ * @private
53
+ */
54
+ class ToolboxItemSettingsDirective extends ArrayBase {
55
+ constructor() {
56
+ super('toolboxitems');
57
+ }
58
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "22.0.0", ngImport: i0, type: ToolboxItemSettingsDirective, deps: [], target: i0.ɵɵFactoryTarget.Directive });
59
+ static ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "22.0.0", type: ToolboxItemSettingsDirective, isStandalone: true, selector: "ejs-formbuilder>e-toolboxitemsettings", queries: [{ propertyName: "children", predicate: ToolboxItemSettingDirective }], usesInheritance: true, ngImport: i0 });
60
+ }
61
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "22.0.0", ngImport: i0, type: ToolboxItemSettingsDirective, decorators: [{
62
+ type: Directive,
63
+ args: [{
64
+ selector: 'ejs-formbuilder>e-toolboxitemsettings',
65
+ standalone: true,
66
+ queries: {
67
+ children: new ContentChildren(ToolboxItemSettingDirective)
68
+ },
69
+ }]
70
+ }], ctorParameters: () => [] });
71
+
72
+ const inputs = ['allowExport', 'enableHtmlSanitizer', 'enablePersistence', 'enablePreview', 'enableRtl', 'formTemplates', 'locale', 'mode', 'schema', 'toolboxCategories', 'toolboxItems'];
73
+ const outputs = ['onFieldDragOver', 'onFieldDragStarted', 'onFieldDropped', 'onFieldPropertyChanged'];
74
+ const twoWays = [];
75
+ /**
76
+ * Represents the Angular Form Builder Component.
77
+ * ```html
78
+ * <ejs-form-builder></ejs-form-builder>
79
+ * ```
80
+ */
81
+ let FormBuilderComponent = class FormBuilderComponent extends FormBuilder {
82
+ ngEle;
83
+ srenderer;
84
+ viewContainerRef;
85
+ injector;
86
+ tags = ['toolboxItems'];
87
+ constructor(ngEle, srenderer, viewContainerRef, injector) {
88
+ super();
89
+ this.ngEle = ngEle;
90
+ this.srenderer = srenderer;
91
+ this.viewContainerRef = viewContainerRef;
92
+ this.injector = injector;
93
+ this.element = this.ngEle.nativeElement;
94
+ this.injectedModules = this.injectedModules || [];
95
+ this.registerEvents(outputs);
96
+ this.addTwoWay.call(this, twoWays);
97
+ setValue('currentInstance', this, this.viewContainerRef);
98
+ this.containerContext = new ComponentBase();
99
+ }
100
+ ngOnInit() {
101
+ this.containerContext.ngOnInit(this);
102
+ }
103
+ ngAfterViewInit() {
104
+ this.containerContext.ngAfterViewInit(this);
105
+ }
106
+ ngOnDestroy() {
107
+ this.containerContext.ngOnDestroy(this);
108
+ }
109
+ ngAfterContentChecked() {
110
+ this.tagObjects[0].instance = this.childToolboxItems;
111
+ this.containerContext.ngAfterContentChecked(this);
112
+ }
113
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "22.0.0", ngImport: i0, type: FormBuilderComponent, deps: [{ token: i0.ElementRef }, { token: i0.Renderer2 }, { token: i0.ViewContainerRef }, { token: i0.Injector }], target: i0.ɵɵFactoryTarget.Component });
114
+ static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "22.0.0", type: FormBuilderComponent, isStandalone: true, selector: "[ejs-form-builder], ejs-form-builder", inputs: { allowExport: "allowExport", enableHtmlSanitizer: "enableHtmlSanitizer", enablePersistence: "enablePersistence", enablePreview: "enablePreview", enableRtl: "enableRtl", formTemplates: "formTemplates", locale: "locale", mode: "mode", schema: "schema", toolboxCategories: "toolboxCategories", toolboxItems: "toolboxItems" }, outputs: { onFieldDragOver: "onFieldDragOver", onFieldDragStarted: "onFieldDragStarted", onFieldDropped: "onFieldDropped", onFieldPropertyChanged: "onFieldPropertyChanged" }, queries: [{ propertyName: "childToolboxItems", first: true, predicate: ToolboxItemSettingsDirective, descendants: true }], usesInheritance: true, ngImport: i0, template: `<ng-content ></ng-content>`, isInline: true, changeDetection: i0.ChangeDetectionStrategy.OnPush });
115
+ };
116
+ FormBuilderComponent = __decorate([
117
+ ComponentMixins([ComponentBase])
118
+ ], FormBuilderComponent);
119
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "22.0.0", ngImport: i0, type: FormBuilderComponent, decorators: [{
120
+ type: Component,
121
+ args: [{
122
+ selector: '[ejs-form-builder], ejs-form-builder',
123
+ inputs: inputs,
124
+ outputs: outputs,
125
+ template: `<ng-content ></ng-content>`,
126
+ changeDetection: ChangeDetectionStrategy.OnPush,
127
+ standalone: true,
128
+ queries: {
129
+ childToolboxItems: new ContentChild(ToolboxItemSettingsDirective)
130
+ }
131
+ }]
132
+ }], ctorParameters: () => [{ type: i0.ElementRef }, { type: i0.Renderer2 }, { type: i0.ViewContainerRef }, { type: i0.Injector }] });
133
+
134
+ const FORMBUILDER_DIRECTIVES = [
135
+ FormBuilderComponent,
136
+ ToolboxItemSettingDirective,
137
+ ToolboxItemSettingsDirective
138
+ ];
139
+ /**
140
+ * NgModule definition for the FormBuilder component.
141
+ * Re-exports standalone FormBuilder component and directives so existing apps can keep using:
142
+ * `imports: [FormBuilderModule]`
143
+ */
144
+ class FormBuilderModule {
145
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "22.0.0", ngImport: i0, type: FormBuilderModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
146
+ static ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "22.0.0", ngImport: i0, type: FormBuilderModule, imports: [CommonModule, FormBuilderComponent,
147
+ ToolboxItemSettingDirective,
148
+ ToolboxItemSettingsDirective], exports: [FormBuilderComponent,
149
+ ToolboxItemSettingDirective,
150
+ ToolboxItemSettingsDirective] });
151
+ static ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "22.0.0", ngImport: i0, type: FormBuilderModule, imports: [CommonModule] });
152
+ }
153
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "22.0.0", ngImport: i0, type: FormBuilderModule, decorators: [{
154
+ type: NgModule,
155
+ args: [{
156
+ imports: [CommonModule, ...FORMBUILDER_DIRECTIVES],
157
+ exports: [...FORMBUILDER_DIRECTIVES]
158
+ }]
159
+ }] });
160
+
161
+ /**
162
+ * NgModule definition for the FormBuilder component with providers.
163
+ */
164
+ class FormBuilderAllModule {
165
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "22.0.0", ngImport: i0, type: FormBuilderAllModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
166
+ static ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "22.0.0", ngImport: i0, type: FormBuilderAllModule, imports: [CommonModule, FormBuilderModule], exports: [FormBuilderModule] });
167
+ static ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "22.0.0", ngImport: i0, type: FormBuilderAllModule, imports: [CommonModule, FormBuilderModule, FormBuilderModule] });
168
+ }
169
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "22.0.0", ngImport: i0, type: FormBuilderAllModule, decorators: [{
170
+ type: NgModule,
171
+ args: [{
172
+ imports: [CommonModule, FormBuilderModule],
173
+ exports: [
174
+ FormBuilderModule
175
+ ],
176
+ providers: []
177
+ }]
178
+ }] });
179
+
180
+ /**
181
+ * Generated bundle index. Do not edit.
182
+ */
183
+
184
+ export { FormBuilderAllModule, FormBuilderComponent, FormBuilderModule, ToolboxItemSettingDirective, ToolboxItemSettingsDirective };
185
+ //# sourceMappingURL=syncfusion-ej2-angular-form-builder.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"syncfusion-ej2-angular-form-builder.mjs","sources":["../../src/form-builder/toolboxitems.directive.ts","../../src/form-builder/formbuilder.component.ts","../../src/form-builder/formbuilder.module.ts","../../src/form-builder/formbuilder-all.module.ts","../../syncfusion-ej2-angular-form-builder.ts"],"sourcesContent":["import { Directive, ViewContainerRef, ContentChildren, ContentChild } from '@angular/core';\nimport { ComplexBase, ArrayBase, setValue } from '@syncfusion/ej2-angular-base';\nimport { Template } from '@syncfusion/ej2-angular-base';\n\n\nlet input: string[] = ['template', 'templateId', 'type'];\nlet outputs: string[] = [];\n/**\n * `e-toolboxItemSettings` directive represents a custom widget\n * configuration item of the Angular FormBuilder component.\n * It must be contained within the `e-toolboxItemSettings`\n * collection of an `ejs-form-builder` component.\n * ```html\n * <ejs-form-builder>\n * <e-toolboxItemSettings>\n * <e-toolboxItemSetting></e-toolboxItemSetting>\n * </e-toolboxItemSettings>\n * </ejs-form-builder>\n * ```\n */\n@Directive({\n selector: 'e-toolboxitemsettings>e-toolboxitemsetting',\n inputs: input,\n outputs: outputs,\n standalone: true,\n queries: {\n template: new ContentChild('template')\n }\n})\nexport class ToolboxItemSettingDirective extends ComplexBase<ToolboxItemSettingDirective> {\n public directivePropList: any;\n\t\n\n\n /** \n * Specifies the Form Builder component type that this toolbox entry customizes.\n * @default ''\n */\n public declare type: any;\n /** \n * Specifies a stable identifier that is persisted in the field schema, \n * allowing a downstream Form Renderer to resolve the matching custom-template \n * implementation when the schema is re-imported.\n * @default ''\n */\n public declare templateId: any;\n\n constructor(private viewContainerRef:ViewContainerRef) {\n super();\n setValue('currentInstance', this, this.viewContainerRef);\n this.registerEvents(outputs);\n this.directivePropList = input;\n }\n}\nTemplate()(ToolboxItemSettingDirective.prototype, 'template');\n\n/**\n * ToolboxItemSetting Array Directive\n * @private\n */\n@Directive({\n selector: 'ejs-formbuilder>e-toolboxitemsettings',\n standalone: true,\n queries: {\n children: new ContentChildren(ToolboxItemSettingDirective)\n },\n})\nexport class ToolboxItemSettingsDirective extends ArrayBase<ToolboxItemSettingsDirective> {\n constructor() {\n super('toolboxitems');\n }\n}","import { Component, ElementRef, ViewContainerRef, Renderer2, Injector, ChangeDetectionStrategy, QueryList, ValueProvider, ContentChild } from '@angular/core';\nimport { ComponentBase, ComponentMixins, IComponentBase, applyMixins, PropertyCollectionInfo, setValue } from '@syncfusion/ej2-angular-base';\nimport { FormBuilder } from '@syncfusion/ej2-form-builder';\n\nimport { ToolboxItemSettingsDirective } from './toolboxitems.directive';\n\nexport const inputs: string[] = ['allowExport','enableHtmlSanitizer','enablePersistence','enablePreview','enableRtl','formTemplates','locale','mode','schema','toolboxCategories','toolboxItems'];\nexport const outputs: string[] = ['onFieldDragOver','onFieldDragStarted','onFieldDropped','onFieldPropertyChanged'];\nexport const twoWays: string[] = [];\n\n/**\n * Represents the Angular Form Builder Component.\n * ```html\n * <ejs-form-builder></ejs-form-builder>\n * ```\n */\n@Component({\n selector: '[ejs-form-builder], ejs-form-builder',\n inputs: inputs,\n outputs: outputs,\n template: `<ng-content ></ng-content>`,\n changeDetection: ChangeDetectionStrategy.OnPush,\n standalone: true,\n queries: {\n childToolboxItems: new ContentChild(ToolboxItemSettingsDirective)\n }\n})\n@ComponentMixins([ComponentBase])\nexport class FormBuilderComponent extends FormBuilder implements IComponentBase {\n public declare containerContext : any;\n public declare tagObjects: any;\n\tdeclare onFieldDragOver: any;\n\tdeclare onFieldDragStarted: any;\n\tdeclare onFieldDropped: any;\n\tpublic declare onFieldPropertyChanged: any;\n public declare childToolboxItems: QueryList<ToolboxItemSettingsDirective>;\n public tags: string[] = ['toolboxItems'];\n\n constructor(private ngEle: ElementRef, private srenderer: Renderer2, private viewContainerRef:ViewContainerRef, private injector: Injector) {\n super();\n this.element = this.ngEle.nativeElement;\n this.injectedModules = this.injectedModules || [];\n\n this.registerEvents(outputs);\n this.addTwoWay.call(this, twoWays);\n setValue('currentInstance', this, this.viewContainerRef);\n this.containerContext = new ComponentBase();\n }\n\n public ngOnInit() {\n this.containerContext.ngOnInit(this);\n }\n\n public ngAfterViewInit(): void {\n this.containerContext.ngAfterViewInit(this);\n }\n\n public ngOnDestroy(): void {\n this.containerContext.ngOnDestroy(this);\n }\n\n public ngAfterContentChecked(): void {\n this.tagObjects[0].instance = this.childToolboxItems;\n this.containerContext.ngAfterContentChecked(this);\n }\n\n public declare registerEvents: (eventList: string[]) => void;\n public declare addTwoWay: (propList: string[]) => void;\n}\n\n","import { NgModule } from '@angular/core';\nimport { CommonModule } from '@angular/common';\nimport { ToolboxItemSettingDirective, ToolboxItemSettingsDirective } from './toolboxitems.directive';\nimport { FormBuilderComponent } from './formbuilder.component';\n\nconst FORMBUILDER_DIRECTIVES = [\n FormBuilderComponent,\n ToolboxItemSettingDirective,\n ToolboxItemSettingsDirective\n];\n\n/**\n * NgModule definition for the FormBuilder component.\n * Re-exports standalone FormBuilder component and directives so existing apps can keep using:\n * `imports: [FormBuilderModule]`\n */\n@NgModule({\n imports: [CommonModule, ...FORMBUILDER_DIRECTIVES],\n exports: [...FORMBUILDER_DIRECTIVES]\n})\nexport class FormBuilderModule { }","import { NgModule, ValueProvider } from '@angular/core';\nimport { CommonModule } from '@angular/common';\nimport { ToolboxItemSettingDirective, ToolboxItemSettingsDirective } from './toolboxitems.directive';\nimport { FormBuilderComponent } from './formbuilder.component';\nimport { FormBuilderModule } from './formbuilder.module';\n\n\n\n\n\n/**\n * NgModule definition for the FormBuilder component with providers.\n */\n@NgModule({\n imports: [CommonModule, FormBuilderModule],\n exports: [\n FormBuilderModule\n ],\n providers:[\n \n ]\n})\nexport class FormBuilderAllModule { }","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public_api';\n"],"names":["outputs"],"mappings":"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"}
package/package.json ADDED
@@ -0,0 +1,38 @@
1
+ {
2
+ "name": "@syncfusion/ej2-angular-form-builder",
3
+ "version": "35.1.37",
4
+ "description": "A package of feature-rich Essential JS 2 form builder component. for Angular",
5
+ "author": "Syncfusion Inc.",
6
+ "license": "SEE LICENSE IN license",
7
+ "schematics": "./schematics/collection.json",
8
+ "dependencies": {
9
+ "@syncfusion/ej2-base": "~35.1.37",
10
+ "@syncfusion/ej2-angular-base": "~35.1.37",
11
+ "@syncfusion/ej2-form-builder": "35.1.37"
12
+ },
13
+ "keywords": [
14
+ "angular",
15
+ "ng",
16
+ "ej2-ng-form-builder",
17
+ "ng-form-builder",
18
+ "angular-form-builder"
19
+ ],
20
+ "repository": {
21
+ "type": "git",
22
+ "url": "https://github.com/syncfusion/ej2-angular-ui-components.git"
23
+ },
24
+ "sideEffects": false,
25
+ "module": "fesm2022/syncfusion-ej2-angular-form-builder.mjs",
26
+ "typings": "types/syncfusion-ej2-angular-form-builder.d.ts",
27
+ "exports": {
28
+ "./package.json": {
29
+ "default": "./package.json"
30
+ },
31
+ ".": {
32
+ "types": "./types/syncfusion-ej2-angular-form-builder.d.ts",
33
+ "default": "./fesm2022/syncfusion-ej2-angular-form-builder.mjs"
34
+ }
35
+ },
36
+ "type": "module",
37
+ "homepage": "https://www.syncfusion.com/angular-components"
38
+ }
@@ -0,0 +1,10 @@
1
+ {
2
+ "$schema": "./node_modules/@angular-devkit/schematics/collection-schema.json",
3
+ "schematics": {
4
+ "ng-add": {
5
+ "description": "Adds Essential JS 2 specific Angular package to an application",
6
+ "factory": "./ng-add",
7
+ "schema": "./ng-add/schema.json"
8
+ }
9
+ }
10
+ }
@@ -0,0 +1,3 @@
1
+ import { OptionsSchema } from './schema';
2
+ import { Rule } from '@angular-devkit/schematics';
3
+ export default function (options: OptionsSchema): Rule;
@@ -0,0 +1,6 @@
1
+ import { pkgName, pkgVer, moduleName, themeVer } from './../utils/lib-details';
2
+ import { install } from '@syncfusion/ej2-angular-base/schematics';
3
+ export default function (options) {
4
+ const libOptions = Object.assign({}, { 'pkgName': pkgName, 'pkgVer': pkgVer, 'moduleName': moduleName, 'themeVer': themeVer });
5
+ return install(options, libOptions);
6
+ }
@@ -0,0 +1,10 @@
1
+ import { pkgName, pkgVer, moduleName, themeVer } from './../utils/lib-details';
2
+ import { install } from '@syncfusion/ej2-angular-base/schematics';
3
+ import { OptionsSchema, LibOptionsSchema } from './schema';
4
+ import { Rule } from '@angular-devkit/schematics';
5
+
6
+ export default function (options: OptionsSchema): Rule {
7
+ const libOptions: LibOptionsSchema = Object.assign({},
8
+ { 'pkgName': pkgName, 'pkgVer': pkgVer, 'moduleName': moduleName, 'themeVer': themeVer });
9
+ return install(options, libOptions);
10
+ }
@@ -0,0 +1,13 @@
1
+ export interface OptionsSchema {
2
+ skipPackageJson: boolean;
3
+ modules: string;
4
+ modulePath: string;
5
+ theme: 'material' | 'fabric' | 'bootstrap' | 'highcontrast';
6
+ project?: string;
7
+ }
8
+ export interface LibOptionsSchema {
9
+ pkgName: string;
10
+ pkgVer: string;
11
+ moduleName: string;
12
+ themeVer: string;
13
+ }
@@ -0,0 +1 @@
1
+ export {};
@@ -0,0 +1,34 @@
1
+ {
2
+ "$schema": "http://json-schema.org/schema",
3
+ "$id": "ngAdd",
4
+ "title": "Add Essential JS 2 Angular packages",
5
+ "type": "object",
6
+ "properties": {
7
+ "skipPackageJson": {
8
+ "type": "boolean",
9
+ "default": false,
10
+ "description": "Do not add add Essential JS 2 Angular packages dependencies to package.json (e.g., --skipPackageJson)"
11
+ },
12
+ "modules": {
13
+ "type": "string",
14
+ "default": "",
15
+ "description": "Add only specific Essential JS 2 modules to the app.module file (eg: --modules=slider, grid)"
16
+ },
17
+ "modulePath": {
18
+ "type": "string",
19
+ "default": "",
20
+ "description": "Used to specify the path of the module file where the EJ2 module needs to be imported"
21
+ },
22
+ "theme": {
23
+ "enum": [
24
+ "material",
25
+ "fabric",
26
+ "bootstrap",
27
+ "highcontrast"
28
+ ],
29
+ "default": "material",
30
+ "description": "Used to change the theme that needs to be imported"
31
+ }
32
+ },
33
+ "required": []
34
+ }
@@ -0,0 +1,30 @@
1
+ export interface OptionsSchema {
2
+ // Whether to skip package.json install.
3
+ skipPackageJson: boolean;
4
+
5
+ // Used to specify required module names
6
+ modules: string;
7
+
8
+ // Used to specify custom module path
9
+ modulePath: string;
10
+
11
+ // Used to specify theme name
12
+ theme: 'material' | 'fabric' | 'bootstrap' | 'highcontrast';
13
+
14
+ // Name of the project to target.
15
+ project?: string;
16
+ }
17
+
18
+ export interface LibOptionsSchema {
19
+ // Package name
20
+ pkgName: string;
21
+
22
+ // Package version
23
+ pkgVer: string;
24
+
25
+ // Library base module name
26
+ moduleName: string;
27
+
28
+ // Theme version
29
+ themeVer: string;
30
+ }
@@ -0,0 +1,33 @@
1
+ {
2
+ "compilerOptions": {
3
+ "target": "ES2022",
4
+ "module": "ES2022",
5
+ "moduleResolution": "bundler",
6
+ "lib": [
7
+ "ES2022",
8
+ "dom"
9
+ ],
10
+ "noEmitOnError": false,
11
+ "skipLibCheck": true,
12
+ "sourceMap": true,
13
+ "declaration": true,
14
+ "strict": true,
15
+ "noImplicitAny": true,
16
+ "noImplicitOverride": true,
17
+ "esModuleInterop": true,
18
+ "useDefineForClassFields": false,
19
+ "forceConsistentCasingInFileNames": true,
20
+ "types": [
21
+ "jasmine",
22
+ "node"
23
+ ]
24
+ },
25
+ "exclude": [
26
+ "node_modules",
27
+ "src",
28
+ "src/**/*.ts",
29
+ "spec",
30
+ "spec/**/*.ts",
31
+ "@typings"
32
+ ]
33
+ }
@@ -0,0 +1,4 @@
1
+ export declare const pkgName = "@syncfusion/ej2-angular-form-builder";
2
+ export declare const pkgVer = "^28.1.33";
3
+ export declare const moduleName = "FormBuilderModule";
4
+ export declare const themeVer = "~28.1.33";
@@ -0,0 +1,4 @@
1
+ export const pkgName = '@syncfusion/ej2-angular-form-builder';
2
+ export const pkgVer = '^35.1.37';
3
+ export const moduleName = 'FormBuilderModule';
4
+ export const themeVer = '~35.1.37';
@@ -0,0 +1,4 @@
1
+ export const pkgName = '@syncfusion/ej2-angular-form-builder';
2
+ export const pkgVer = '^35.1.37';
3
+ export const moduleName = 'FormBuilderModule';
4
+ export const themeVer = '~35.1.37';
@@ -0,0 +1,100 @@
1
+ import * as i0 from '@angular/core';
2
+ import { ViewContainerRef, QueryList, ElementRef, Renderer2, Injector } from '@angular/core';
3
+ import { ArrayBase, ComplexBase, IComponentBase } from '@syncfusion/ej2-angular-base';
4
+ import { FormBuilder } from '@syncfusion/ej2-form-builder';
5
+ export * from '@syncfusion/ej2-form-builder';
6
+ import * as i1 from '@angular/common';
7
+
8
+ /**
9
+ * `e-toolboxItemSettings` directive represents a custom widget
10
+ * configuration item of the Angular FormBuilder component.
11
+ * It must be contained within the `e-toolboxItemSettings`
12
+ * collection of an `ejs-form-builder` component.
13
+ * ```html
14
+ * <ejs-form-builder>
15
+ * <e-toolboxItemSettings>
16
+ * <e-toolboxItemSetting></e-toolboxItemSetting>
17
+ * </e-toolboxItemSettings>
18
+ * </ejs-form-builder>
19
+ * ```
20
+ */
21
+ declare class ToolboxItemSettingDirective extends ComplexBase<ToolboxItemSettingDirective> {
22
+ private viewContainerRef;
23
+ directivePropList: any;
24
+ /**
25
+ * Specifies the Form Builder component type that this toolbox entry customizes.
26
+ * @default ''
27
+ */
28
+ type: any;
29
+ /**
30
+ * Specifies a stable identifier that is persisted in the field schema,
31
+ * allowing a downstream Form Renderer to resolve the matching custom-template
32
+ * implementation when the schema is re-imported.
33
+ * @default ''
34
+ */
35
+ templateId: any;
36
+ constructor(viewContainerRef: ViewContainerRef);
37
+ static ɵfac: i0.ɵɵFactoryDeclaration<ToolboxItemSettingDirective, never>;
38
+ static ɵdir: i0.ɵɵDirectiveDeclaration<ToolboxItemSettingDirective, "e-toolboxitemsettings>e-toolboxitemsetting", never, { "template": { "alias": "template"; "required": false; }; "templateId": { "alias": "templateId"; "required": false; }; "type": { "alias": "type"; "required": false; }; }, {}, ["template"], never, true, never>;
39
+ }
40
+ /**
41
+ * ToolboxItemSetting Array Directive
42
+ * @private
43
+ */
44
+ declare class ToolboxItemSettingsDirective extends ArrayBase<ToolboxItemSettingsDirective> {
45
+ constructor();
46
+ static ɵfac: i0.ɵɵFactoryDeclaration<ToolboxItemSettingsDirective, never>;
47
+ static ɵdir: i0.ɵɵDirectiveDeclaration<ToolboxItemSettingsDirective, "ejs-formbuilder>e-toolboxitemsettings", never, {}, {}, ["children"], never, true, never>;
48
+ }
49
+
50
+ /**
51
+ * Represents the Angular Form Builder Component.
52
+ * ```html
53
+ * <ejs-form-builder></ejs-form-builder>
54
+ * ```
55
+ */
56
+ declare class FormBuilderComponent extends FormBuilder implements IComponentBase {
57
+ private ngEle;
58
+ private srenderer;
59
+ private viewContainerRef;
60
+ private injector;
61
+ containerContext: any;
62
+ tagObjects: any;
63
+ onFieldDragOver: any;
64
+ onFieldDragStarted: any;
65
+ onFieldDropped: any;
66
+ onFieldPropertyChanged: any;
67
+ childToolboxItems: QueryList<ToolboxItemSettingsDirective>;
68
+ tags: string[];
69
+ constructor(ngEle: ElementRef, srenderer: Renderer2, viewContainerRef: ViewContainerRef, injector: Injector);
70
+ ngOnInit(): void;
71
+ ngAfterViewInit(): void;
72
+ ngOnDestroy(): void;
73
+ ngAfterContentChecked(): void;
74
+ registerEvents: (eventList: string[]) => void;
75
+ addTwoWay: (propList: string[]) => void;
76
+ static ɵfac: i0.ɵɵFactoryDeclaration<FormBuilderComponent, never>;
77
+ static ɵcmp: i0.ɵɵComponentDeclaration<FormBuilderComponent, "[ejs-form-builder], ejs-form-builder", never, { "allowExport": { "alias": "allowExport"; "required": false; }; "enableHtmlSanitizer": { "alias": "enableHtmlSanitizer"; "required": false; }; "enablePersistence": { "alias": "enablePersistence"; "required": false; }; "enablePreview": { "alias": "enablePreview"; "required": false; }; "enableRtl": { "alias": "enableRtl"; "required": false; }; "formTemplates": { "alias": "formTemplates"; "required": false; }; "locale": { "alias": "locale"; "required": false; }; "mode": { "alias": "mode"; "required": false; }; "schema": { "alias": "schema"; "required": false; }; "toolboxCategories": { "alias": "toolboxCategories"; "required": false; }; "toolboxItems": { "alias": "toolboxItems"; "required": false; }; }, { "onFieldDragOver": "onFieldDragOver"; "onFieldDragStarted": "onFieldDragStarted"; "onFieldDropped": "onFieldDropped"; "onFieldPropertyChanged": "onFieldPropertyChanged"; }, ["childToolboxItems"], ["*"], true, never>;
78
+ }
79
+
80
+ /**
81
+ * NgModule definition for the FormBuilder component.
82
+ * Re-exports standalone FormBuilder component and directives so existing apps can keep using:
83
+ * `imports: [FormBuilderModule]`
84
+ */
85
+ declare class FormBuilderModule {
86
+ static ɵfac: i0.ɵɵFactoryDeclaration<FormBuilderModule, never>;
87
+ static ɵmod: i0.ɵɵNgModuleDeclaration<FormBuilderModule, never, [typeof i1.CommonModule, typeof FormBuilderComponent, typeof ToolboxItemSettingDirective, typeof ToolboxItemSettingsDirective], [typeof FormBuilderComponent, typeof ToolboxItemSettingDirective, typeof ToolboxItemSettingsDirective]>;
88
+ static ɵinj: i0.ɵɵInjectorDeclaration<FormBuilderModule>;
89
+ }
90
+
91
+ /**
92
+ * NgModule definition for the FormBuilder component with providers.
93
+ */
94
+ declare class FormBuilderAllModule {
95
+ static ɵfac: i0.ɵɵFactoryDeclaration<FormBuilderAllModule, never>;
96
+ static ɵmod: i0.ɵɵNgModuleDeclaration<FormBuilderAllModule, never, [typeof i1.CommonModule, typeof FormBuilderModule], [typeof FormBuilderModule]>;
97
+ static ɵinj: i0.ɵɵInjectorDeclaration<FormBuilderAllModule>;
98
+ }
99
+
100
+ export { FormBuilderAllModule, FormBuilderComponent, FormBuilderModule, ToolboxItemSettingDirective, ToolboxItemSettingsDirective };