@dynamic-field-kit/angular 1.0.2 → 1.2.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 (31) hide show
  1. package/README.md +118 -60
  2. package/dist/README.md +118 -60
  3. package/dist/components/BaseInput.d.ts +22 -0
  4. package/dist/components/DynamicInput.d.ts +28 -0
  5. package/dist/components/FieldInput.d.ts +14 -0
  6. package/dist/components/MultiFieldInput.d.ts +23 -0
  7. package/dist/esm2020/components/BaseInput.mjs +46 -0
  8. package/dist/esm2020/components/DynamicInput.mjs +146 -0
  9. package/dist/esm2020/components/FieldInput.mjs +66 -0
  10. package/dist/esm2020/components/MultiFieldInput.mjs +79 -0
  11. package/dist/esm2020/dynamic-field-kit-angular.mjs +5 -0
  12. package/dist/esm2020/layout/defaultLayouts.mjs +43 -0
  13. package/dist/esm2020/layout/index.mjs +2 -0
  14. package/dist/esm2020/lib/dynamic-field-kit.module.mjs +20 -0
  15. package/dist/esm2020/public-api.mjs +14 -0
  16. package/dist/esm2020/types/layout.mjs +2 -0
  17. package/dist/fesm2015/dynamic-field-kit-angular.mjs +393 -0
  18. package/dist/fesm2015/dynamic-field-kit-angular.mjs.map +1 -0
  19. package/dist/fesm2020/dynamic-field-kit-angular.mjs +390 -0
  20. package/dist/fesm2020/dynamic-field-kit-angular.mjs.map +1 -0
  21. package/dist/index.d.ts +5 -0
  22. package/dist/layout/defaultLayouts.d.ts +13 -0
  23. package/dist/layout/index.d.ts +1 -0
  24. package/dist/lib/dynamic-field-kit.module.d.ts +11 -0
  25. package/dist/package.json +50 -0
  26. package/dist/public-api.d.ts +9 -0
  27. package/dist/types/layout.d.ts +1 -0
  28. package/package.json +9 -9
  29. package/dist/fesm2022/dynamic-field-kit-angular.mjs +0 -266
  30. package/dist/fesm2022/dynamic-field-kit-angular.mjs.map +0 -1
  31. package/dist/types/dynamic-field-kit-angular.d.ts +0 -70
@@ -0,0 +1,146 @@
1
+ import { CommonModule } from "@angular/common";
2
+ import { Component, Input, Output, EventEmitter, ViewChild, ViewContainerRef, SimpleChange } from "@angular/core";
3
+ import { fieldRegistry } from "@dynamic-field-kit/core";
4
+ import { BaseInputComponent } from "./BaseInput";
5
+ import * as i0 from "@angular/core";
6
+ export class DynamicInput extends BaseInputComponent {
7
+ constructor() {
8
+ super(...arguments);
9
+ this.valueChange = new EventEmitter();
10
+ this.onChange = new EventEmitter(); // backward compat
11
+ }
12
+ ngOnChanges(changes) {
13
+ if (changes["type"] && !changes["type"].firstChange && this.host) {
14
+ this.render();
15
+ return;
16
+ }
17
+ if (this.inputInstance) {
18
+ this.applyKnownProps(this.inputInstance);
19
+ const childChanges = {};
20
+ for (const prop in changes) {
21
+ childChanges[prop] = new SimpleChange(changes[prop].previousValue, changes[prop].currentValue, changes[prop].firstChange);
22
+ }
23
+ this.inputInstance.ngOnChanges?.(childChanges);
24
+ this.compRef?.changeDetectorRef.detectChanges();
25
+ }
26
+ else if (this.host) {
27
+ this.render();
28
+ }
29
+ }
30
+ ngAfterViewInit() {
31
+ this.render();
32
+ }
33
+ render() {
34
+ const Renderer = fieldRegistry.get(this.type);
35
+ this.cleanupRenderedComponent();
36
+ this.host.clear();
37
+ if (!Renderer) {
38
+ const el = document.createElement("div");
39
+ el.textContent = `Unknown field type: ${this.type}`;
40
+ this.host.element.nativeElement.appendChild(el);
41
+ return;
42
+ }
43
+ try {
44
+ const compType = Renderer;
45
+ const compRef = this.host.createComponent(compType);
46
+ const instance = compRef.instance;
47
+ if (!instance)
48
+ throw new Error(`Failed to create instance for ${this.type}`);
49
+ this.applyKnownProps(instance);
50
+ this.bindOutput(instance, "valueChange");
51
+ this.bindOutput(instance, "onValueChange");
52
+ instance.changeDetectorRef?.detectChanges();
53
+ this.compRef = compRef;
54
+ this.inputInstance = instance;
55
+ compRef.changeDetectorRef.detectChanges();
56
+ }
57
+ catch (err) {
58
+ // Fallback to function renderer
59
+ try {
60
+ const props = {
61
+ value: this.value,
62
+ onValueChange: (v) => this.emitValue(v),
63
+ label: this.label,
64
+ placeholder: this.placeholder,
65
+ required: this.required,
66
+ options: this.options,
67
+ className: this.className,
68
+ description: this.description,
69
+ disabled: this.disabled,
70
+ errorMessage: this.errorMessage,
71
+ };
72
+ const out = Renderer(props);
73
+ if (typeof out === 'string') {
74
+ const el = document.createElement('div');
75
+ el.innerHTML = out;
76
+ this.host.element.nativeElement.appendChild(el);
77
+ }
78
+ }
79
+ catch (e) {
80
+ const el = document.createElement('div');
81
+ el.textContent = `Failed to render field: ${this.type}`;
82
+ this.host.element.nativeElement.appendChild(el);
83
+ }
84
+ }
85
+ }
86
+ applyKnownProps(instance) {
87
+ const knownProps = ["value", "label", "placeholder", "required", "disabled", "options", "className", "description", "errorMessage"];
88
+ for (const prop of knownProps) {
89
+ if (prop in this && prop in instance) {
90
+ instance[prop] = this[prop];
91
+ }
92
+ }
93
+ }
94
+ bindOutput(instance, outputName) {
95
+ const output = instance?.[outputName];
96
+ if (!output || typeof output.subscribe !== "function")
97
+ return;
98
+ output.subscribe((value) => {
99
+ this.emitValue(value);
100
+ });
101
+ }
102
+ emitValue(value) {
103
+ this.valueChange.emit(value);
104
+ this.onChange.emit(value);
105
+ }
106
+ cleanupRenderedComponent() {
107
+ this.compRef?.destroy();
108
+ this.compRef = undefined;
109
+ this.inputInstance = undefined;
110
+ }
111
+ }
112
+ DynamicInput.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: DynamicInput, deps: null, target: i0.ɵɵFactoryTarget.Component });
113
+ DynamicInput.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.2.10", type: DynamicInput, isStandalone: true, selector: "dfk-dynamic-input", inputs: { type: "type", value: "value", label: "label", placeholder: "placeholder", required: "required", options: "options", className: "className", description: "description" }, outputs: { valueChange: "valueChange", onChange: "onChange" }, viewQueries: [{ propertyName: "host", first: true, predicate: ["host"], descendants: true, read: ViewContainerRef }], usesInheritance: true, usesOnChanges: true, ngImport: i0, template: `<div #host style="display: contents;"></div>`, isInline: true, dependencies: [{ kind: "ngmodule", type: CommonModule }] });
114
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: DynamicInput, decorators: [{
115
+ type: Component,
116
+ args: [{
117
+ selector: "dfk-dynamic-input",
118
+ standalone: true,
119
+ imports: [CommonModule],
120
+ template: `<div #host style="display: contents;"></div>`,
121
+ }]
122
+ }], propDecorators: { type: [{
123
+ type: Input
124
+ }], value: [{
125
+ type: Input
126
+ }], label: [{
127
+ type: Input
128
+ }], placeholder: [{
129
+ type: Input
130
+ }], required: [{
131
+ type: Input
132
+ }], options: [{
133
+ type: Input
134
+ }], className: [{
135
+ type: Input
136
+ }], description: [{
137
+ type: Input
138
+ }], valueChange: [{
139
+ type: Output
140
+ }], onChange: [{
141
+ type: Output
142
+ }], host: [{
143
+ type: ViewChild,
144
+ args: ["host", { read: ViewContainerRef, static: false }]
145
+ }] } });
146
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiRHluYW1pY0lucHV0LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vc3JjL2NvbXBvbmVudHMvRHluYW1pY0lucHV0LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQTtBQUM5QyxPQUFPLEVBQUUsU0FBUyxFQUFnQixLQUFLLEVBQUUsTUFBTSxFQUFFLFlBQVksRUFBRSxTQUFTLEVBQUUsZ0JBQWdCLEVBQWlELFlBQVksRUFBRSxNQUFNLGVBQWUsQ0FBQTtBQUM5SyxPQUFPLEVBQUUsYUFBYSxFQUFnQixNQUFNLHlCQUF5QixDQUFBO0FBQ3JFLE9BQU8sRUFBRSxrQkFBa0IsRUFBRSxNQUFNLGFBQWEsQ0FBQTs7QUFRaEQsTUFBTSxPQUFPLFlBQWEsU0FBUSxrQkFBa0I7SUFOcEQ7O1FBZXFCLGdCQUFXLEdBQUcsSUFBSSxZQUFZLEVBQU8sQ0FBQTtRQUM5QyxhQUFRLEdBQUcsSUFBSSxZQUFZLEVBQU8sQ0FBQSxDQUFDLGtCQUFrQjtLQXNIaEU7SUFoSEMsV0FBVyxDQUFDLE9BQXNCO1FBQ2hDLElBQUksT0FBTyxDQUFDLE1BQU0sQ0FBQyxJQUFJLENBQUMsT0FBTyxDQUFDLE1BQU0sQ0FBQyxDQUFDLFdBQVcsSUFBSSxJQUFJLENBQUMsSUFBSSxFQUFFO1lBQ2hFLElBQUksQ0FBQyxNQUFNLEVBQUUsQ0FBQTtZQUNiLE9BQU07U0FDUDtRQUVELElBQUksSUFBSSxDQUFDLGFBQWEsRUFBRTtZQUN0QixJQUFJLENBQUMsZUFBZSxDQUFDLElBQUksQ0FBQyxhQUFhLENBQUMsQ0FBQTtZQUV4QyxNQUFNLFlBQVksR0FBa0IsRUFBRSxDQUFBO1lBQ3RDLEtBQUssTUFBTSxJQUFJLElBQUksT0FBTyxFQUFFO2dCQUMxQixZQUFZLENBQUMsSUFBSSxDQUFDLEdBQUcsSUFBSSxZQUFZLENBQ25DLE9BQU8sQ0FBQyxJQUFJLENBQUMsQ0FBQyxhQUFhLEVBQzNCLE9BQU8sQ0FBQyxJQUFJLENBQUMsQ0FBQyxZQUFZLEVBQzFCLE9BQU8sQ0FBQyxJQUFJLENBQUMsQ0FBQyxXQUFXLENBQzFCLENBQUE7YUFDRjtZQUVELElBQUksQ0FBQyxhQUFhLENBQUMsV0FBVyxFQUFFLENBQUMsWUFBWSxDQUFDLENBQUE7WUFDOUMsSUFBSSxDQUFDLE9BQU8sRUFBRSxpQkFBaUIsQ0FBQyxhQUFhLEVBQUUsQ0FBQTtTQUNoRDthQUFNLElBQUksSUFBSSxDQUFDLElBQUksRUFBRTtZQUNwQixJQUFJLENBQUMsTUFBTSxFQUFFLENBQUE7U0FDZDtJQUNILENBQUM7SUFFRCxlQUFlO1FBQ2IsSUFBSSxDQUFDLE1BQU0sRUFBRSxDQUFDO0lBQ2hCLENBQUM7SUFFTyxNQUFNO1FBQ1osTUFBTSxRQUFRLEdBQUcsYUFBYSxDQUFDLEdBQUcsQ0FBQyxJQUFJLENBQUMsSUFBb0IsQ0FBQyxDQUFBO1FBQzdELElBQUksQ0FBQyx3QkFBd0IsRUFBRSxDQUFBO1FBQy9CLElBQUksQ0FBQyxJQUFJLENBQUMsS0FBSyxFQUFFLENBQUE7UUFDakIsSUFBSSxDQUFDLFFBQVEsRUFBRTtZQUNiLE1BQU0sRUFBRSxHQUFHLFFBQVEsQ0FBQyxhQUFhLENBQUMsS0FBSyxDQUFDLENBQUE7WUFDeEMsRUFBRSxDQUFDLFdBQVcsR0FBRyx1QkFBdUIsSUFBSSxDQUFDLElBQUksRUFBRSxDQUFBO1lBQ25ELElBQUksQ0FBQyxJQUFJLENBQUMsT0FBTyxDQUFDLGFBQWEsQ0FBQyxXQUFXLENBQUMsRUFBRSxDQUFDLENBQUE7WUFDL0MsT0FBTTtTQUNQO1FBRUQsSUFBSTtZQUNGLE1BQU0sUUFBUSxHQUFHLFFBQWdDLENBQUE7WUFDakQsTUFBTSxPQUFPLEdBQUcsSUFBSSxDQUFDLElBQUksQ0FBQyxlQUFlLENBQUMsUUFBUSxDQUFDLENBQUE7WUFDbkQsTUFBTSxRQUFRLEdBQUcsT0FBTyxDQUFDLFFBQVEsQ0FBQTtZQUNqQyxJQUFJLENBQUMsUUFBUTtnQkFBRSxNQUFNLElBQUksS0FBSyxDQUFDLGlDQUFpQyxJQUFJLENBQUMsSUFBSSxFQUFFLENBQUMsQ0FBQTtZQUU1RSxJQUFJLENBQUMsZUFBZSxDQUFDLFFBQVEsQ0FBQyxDQUFBO1lBRTlCLElBQUksQ0FBQyxVQUFVLENBQUMsUUFBUSxFQUFFLGFBQWEsQ0FBQyxDQUFBO1lBQ3hDLElBQUksQ0FBQyxVQUFVLENBQUMsUUFBUSxFQUFFLGVBQWUsQ0FBQyxDQUFBO1lBRTFDLFFBQVEsQ0FBQyxpQkFBaUIsRUFBRSxhQUFhLEVBQUUsQ0FBQTtZQUMzQyxJQUFJLENBQUMsT0FBTyxHQUFHLE9BQU8sQ0FBQTtZQUN0QixJQUFJLENBQUMsYUFBYSxHQUFHLFFBQVEsQ0FBQTtZQUM3QixPQUFPLENBQUMsaUJBQWlCLENBQUMsYUFBYSxFQUFFLENBQUE7U0FDMUM7UUFBQyxPQUFPLEdBQUcsRUFBRTtZQUNaLGdDQUFnQztZQUNoQyxJQUFJO2dCQUNGLE1BQU0sS0FBSyxHQUFRO29CQUNqQixLQUFLLEVBQUUsSUFBSSxDQUFDLEtBQUs7b0JBQ2pCLGFBQWEsRUFBRSxDQUFDLENBQU0sRUFBRSxFQUFFLENBQUMsSUFBSSxDQUFDLFNBQVMsQ0FBQyxDQUFDLENBQUM7b0JBQzVDLEtBQUssRUFBRSxJQUFJLENBQUMsS0FBSztvQkFDakIsV0FBVyxFQUFFLElBQUksQ0FBQyxXQUFXO29CQUM3QixRQUFRLEVBQUUsSUFBSSxDQUFDLFFBQVE7b0JBQ3ZCLE9BQU8sRUFBRSxJQUFJLENBQUMsT0FBTztvQkFDckIsU0FBUyxFQUFFLElBQUksQ0FBQyxTQUFTO29CQUN6QixXQUFXLEVBQUUsSUFBSSxDQUFDLFdBQVc7b0JBQzdCLFFBQVEsRUFBRSxJQUFJLENBQUMsUUFBUTtvQkFDdkIsWUFBWSxFQUFFLElBQUksQ0FBQyxZQUFZO2lCQUNoQyxDQUFBO2dCQUNELE1BQU0sR0FBRyxHQUFJLFFBQXFCLENBQUMsS0FBSyxDQUFDLENBQUE7Z0JBQ3pDLElBQUksT0FBTyxHQUFHLEtBQUssUUFBUSxFQUFFO29CQUMzQixNQUFNLEVBQUUsR0FBRyxRQUFRLENBQUMsYUFBYSxDQUFDLEtBQUssQ0FBQyxDQUFBO29CQUN4QyxFQUFFLENBQUMsU0FBUyxHQUFHLEdBQUcsQ0FBQTtvQkFDbEIsSUFBSSxDQUFDLElBQUksQ0FBQyxPQUFPLENBQUMsYUFBYSxDQUFDLFdBQVcsQ0FBQyxFQUFFLENBQUMsQ0FBQTtpQkFDaEQ7YUFDRjtZQUFDLE9BQU8sQ0FBQyxFQUFFO2dCQUNWLE1BQU0sRUFBRSxHQUFHLFFBQVEsQ0FBQyxhQUFhLENBQUMsS0FBSyxDQUFDLENBQUE7Z0JBQ3hDLEVBQUUsQ0FBQyxXQUFXLEdBQUcsMkJBQTJCLElBQUksQ0FBQyxJQUFJLEVBQUUsQ0FBQTtnQkFDdkQsSUFBSSxDQUFDLElBQUksQ0FBQyxPQUFPLENBQUMsYUFBYSxDQUFDLFdBQVcsQ0FBQyxFQUFFLENBQUMsQ0FBQTthQUNoRDtTQUNGO0lBQ0gsQ0FBQztJQUVPLGVBQWUsQ0FBQyxRQUFhO1FBQ25DLE1BQU0sVUFBVSxHQUFHLENBQUMsT0FBTyxFQUFFLE9BQU8sRUFBRSxhQUFhLEVBQUUsVUFBVSxFQUFFLFVBQVUsRUFBRSxTQUFTLEVBQUUsV0FBVyxFQUFFLGFBQWEsRUFBRSxjQUFjLENBQUMsQ0FBQTtRQUNuSSxLQUFLLE1BQU0sSUFBSSxJQUFJLFVBQVUsRUFBRTtZQUM3QixJQUFJLElBQUksSUFBSSxJQUFJLElBQUksSUFBSSxJQUFJLFFBQVEsRUFBRTtnQkFDcEMsUUFBUSxDQUFDLElBQUksQ0FBQyxHQUFJLElBQVksQ0FBQyxJQUFJLENBQUMsQ0FBQTthQUNyQztTQUNGO0lBQ0gsQ0FBQztJQUVPLFVBQVUsQ0FBQyxRQUFhLEVBQUUsVUFBMkM7UUFDM0UsTUFBTSxNQUFNLEdBQUcsUUFBUSxFQUFFLENBQUMsVUFBVSxDQUFDLENBQUE7UUFDckMsSUFBSSxDQUFDLE1BQU0sSUFBSSxPQUFPLE1BQU0sQ0FBQyxTQUFTLEtBQUssVUFBVTtZQUFFLE9BQU87UUFFN0QsTUFBNEIsQ0FBQyxTQUFTLENBQUMsQ0FBQyxLQUFLLEVBQUUsRUFBRTtZQUNoRCxJQUFJLENBQUMsU0FBUyxDQUFDLEtBQUssQ0FBQyxDQUFBO1FBQ3ZCLENBQUMsQ0FBQyxDQUFBO0lBQ0osQ0FBQztJQUVPLFNBQVMsQ0FBQyxLQUFVO1FBQzFCLElBQUksQ0FBQyxXQUFXLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxDQUFBO1FBQzVCLElBQUksQ0FBQyxRQUFRLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxDQUFBO0lBQzNCLENBQUM7SUFFTyx3QkFBd0I7UUFDOUIsSUFBSSxDQUFDLE9BQU8sRUFBRSxPQUFPLEVBQUUsQ0FBQTtRQUN2QixJQUFJLENBQUMsT0FBTyxHQUFHLFNBQVMsQ0FBQTtRQUN4QixJQUFJLENBQUMsYUFBYSxHQUFHLFNBQVMsQ0FBQTtJQUNoQyxDQUFDOzswR0EvSFUsWUFBWTs4RkFBWixZQUFZLHlZQVlJLGdCQUFnQix5RUFkakMsOENBQThDLDJEQUQ5QyxZQUFZOzRGQUdYLFlBQVk7a0JBTnhCLFNBQVM7bUJBQUM7b0JBQ1QsUUFBUSxFQUFFLG1CQUFtQjtvQkFDN0IsVUFBVSxFQUFFLElBQUk7b0JBQ2hCLE9BQU8sRUFBRSxDQUFDLFlBQVksQ0FBQztvQkFDdkIsUUFBUSxFQUFFLDhDQUE4QztpQkFDekQ7OEJBRVUsSUFBSTtzQkFBWixLQUFLO2dCQUNHLEtBQUs7c0JBQWIsS0FBSztnQkFDRyxLQUFLO3NCQUFiLEtBQUs7Z0JBQ0csV0FBVztzQkFBbkIsS0FBSztnQkFDRyxRQUFRO3NCQUFoQixLQUFLO2dCQUNHLE9BQU87c0JBQWYsS0FBSztnQkFDRyxTQUFTO3NCQUFqQixLQUFLO2dCQUNHLFdBQVc7c0JBQW5CLEtBQUs7Z0JBQ2EsV0FBVztzQkFBN0IsTUFBTTtnQkFDRyxRQUFRO3NCQUFqQixNQUFNO2dCQUV1RCxJQUFJO3NCQUFqRSxTQUFTO3VCQUFDLE1BQU0sRUFBRSxFQUFFLElBQUksRUFBRSxnQkFBZ0IsRUFBRSxNQUFNLEVBQUUsS0FBSyxFQUFFIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29tbW9uTW9kdWxlIH0gZnJvbSBcIkBhbmd1bGFyL2NvbW1vblwiXG5pbXBvcnQgeyBDb21wb25lbnQsIENvbXBvbmVudFJlZiwgSW5wdXQsIE91dHB1dCwgRXZlbnRFbWl0dGVyLCBWaWV3Q2hpbGQsIFZpZXdDb250YWluZXJSZWYsIE9uQ2hhbmdlcywgQWZ0ZXJWaWV3SW5pdCwgU2ltcGxlQ2hhbmdlcywgVHlwZSwgU2ltcGxlQ2hhbmdlIH0gZnJvbSBcIkBhbmd1bGFyL2NvcmVcIlxuaW1wb3J0IHsgZmllbGRSZWdpc3RyeSwgRmllbGRUeXBlS2V5IH0gZnJvbSBcIkBkeW5hbWljLWZpZWxkLWtpdC9jb3JlXCJcbmltcG9ydCB7IEJhc2VJbnB1dENvbXBvbmVudCB9IGZyb20gXCIuL0Jhc2VJbnB1dFwiXG5cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogXCJkZmstZHluYW1pYy1pbnB1dFwiLFxuICBzdGFuZGFsb25lOiB0cnVlLFxuICBpbXBvcnRzOiBbQ29tbW9uTW9kdWxlXSxcbiAgdGVtcGxhdGU6IGA8ZGl2ICNob3N0IHN0eWxlPVwiZGlzcGxheTogY29udGVudHM7XCI+PC9kaXY+YCxcbn0pXG5leHBvcnQgY2xhc3MgRHluYW1pY0lucHV0IGV4dGVuZHMgQmFzZUlucHV0Q29tcG9uZW50IGltcGxlbWVudHMgT25DaGFuZ2VzLCBBZnRlclZpZXdJbml0IHtcbiAgQElucHV0KCkgdHlwZSE6IEZpZWxkVHlwZUtleVxuICBASW5wdXQoKSB2YWx1ZT86IGFueVxuICBASW5wdXQoKSBsYWJlbD86IHN0cmluZ1xyXG4gIEBJbnB1dCgpIHBsYWNlaG9sZGVyPzogc3RyaW5nXHJcbiAgQElucHV0KCkgcmVxdWlyZWQ/OiBib29sZWFuXHJcbiAgQElucHV0KCkgb3B0aW9ucz86IGFueVtdXG4gIEBJbnB1dCgpIGNsYXNzTmFtZT86IHN0cmluZ1xuICBASW5wdXQoKSBkZXNjcmlwdGlvbj86IGFueVxuICBAT3V0cHV0KCkgb3ZlcnJpZGUgdmFsdWVDaGFuZ2UgPSBuZXcgRXZlbnRFbWl0dGVyPGFueT4oKVxuICBAT3V0cHV0KCkgb25DaGFuZ2UgPSBuZXcgRXZlbnRFbWl0dGVyPGFueT4oKSAvLyBiYWNrd2FyZCBjb21wYXRcblxuICBAVmlld0NoaWxkKFwiaG9zdFwiLCB7IHJlYWQ6IFZpZXdDb250YWluZXJSZWYsIHN0YXRpYzogZmFsc2UgfSkgaG9zdCE6IFZpZXdDb250YWluZXJSZWZcbiAgcHJpdmF0ZSBjb21wUmVmPzogQ29tcG9uZW50UmVmPGFueT5cbiAgcHJpdmF0ZSBpbnB1dEluc3RhbmNlPzogYW55XG5cclxuICBuZ09uQ2hhbmdlcyhjaGFuZ2VzOiBTaW1wbGVDaGFuZ2VzKSB7XG4gICAgaWYgKGNoYW5nZXNbXCJ0eXBlXCJdICYmICFjaGFuZ2VzW1widHlwZVwiXS5maXJzdENoYW5nZSAmJiB0aGlzLmhvc3QpIHtcbiAgICAgIHRoaXMucmVuZGVyKClcbiAgICAgIHJldHVyblxuICAgIH1cblxuICAgIGlmICh0aGlzLmlucHV0SW5zdGFuY2UpIHtcbiAgICAgIHRoaXMuYXBwbHlLbm93blByb3BzKHRoaXMuaW5wdXRJbnN0YW5jZSlcblxuICAgICAgY29uc3QgY2hpbGRDaGFuZ2VzOiBTaW1wbGVDaGFuZ2VzID0ge31cbiAgICAgIGZvciAoY29uc3QgcHJvcCBpbiBjaGFuZ2VzKSB7XG4gICAgICAgIGNoaWxkQ2hhbmdlc1twcm9wXSA9IG5ldyBTaW1wbGVDaGFuZ2UoXG4gICAgICAgICAgY2hhbmdlc1twcm9wXS5wcmV2aW91c1ZhbHVlLFxuICAgICAgICAgIGNoYW5nZXNbcHJvcF0uY3VycmVudFZhbHVlLFxuICAgICAgICAgIGNoYW5nZXNbcHJvcF0uZmlyc3RDaGFuZ2VcbiAgICAgICAgKVxuICAgICAgfVxuXG4gICAgICB0aGlzLmlucHV0SW5zdGFuY2UubmdPbkNoYW5nZXM/LihjaGlsZENoYW5nZXMpXG4gICAgICB0aGlzLmNvbXBSZWY/LmNoYW5nZURldGVjdG9yUmVmLmRldGVjdENoYW5nZXMoKVxuICAgIH0gZWxzZSBpZiAodGhpcy5ob3N0KSB7XG4gICAgICB0aGlzLnJlbmRlcigpXG4gICAgfVxuICB9XG5cclxuICBuZ0FmdGVyVmlld0luaXQoKSB7XHJcbiAgICB0aGlzLnJlbmRlcigpO1xyXG4gIH1cclxuXHJcbiAgcHJpdmF0ZSByZW5kZXIoKSB7XG4gICAgY29uc3QgUmVuZGVyZXIgPSBmaWVsZFJlZ2lzdHJ5LmdldCh0aGlzLnR5cGUgYXMgRmllbGRUeXBlS2V5KVxuICAgIHRoaXMuY2xlYW51cFJlbmRlcmVkQ29tcG9uZW50KClcbiAgICB0aGlzLmhvc3QuY2xlYXIoKVxuICAgIGlmICghUmVuZGVyZXIpIHtcbiAgICAgIGNvbnN0IGVsID0gZG9jdW1lbnQuY3JlYXRlRWxlbWVudChcImRpdlwiKVxuICAgICAgZWwudGV4dENvbnRlbnQgPSBgVW5rbm93biBmaWVsZCB0eXBlOiAke3RoaXMudHlwZX1gXG4gICAgICB0aGlzLmhvc3QuZWxlbWVudC5uYXRpdmVFbGVtZW50LmFwcGVuZENoaWxkKGVsKVxuICAgICAgcmV0dXJuXG4gICAgfVxuXG4gICAgdHJ5IHtcbiAgICAgIGNvbnN0IGNvbXBUeXBlID0gUmVuZGVyZXIgYXMgdW5rbm93biBhcyBUeXBlPGFueT5cbiAgICAgIGNvbnN0IGNvbXBSZWYgPSB0aGlzLmhvc3QuY3JlYXRlQ29tcG9uZW50KGNvbXBUeXBlKVxuICAgICAgY29uc3QgaW5zdGFuY2UgPSBjb21wUmVmLmluc3RhbmNlXG4gICAgICBpZiAoIWluc3RhbmNlKSB0aHJvdyBuZXcgRXJyb3IoYEZhaWxlZCB0byBjcmVhdGUgaW5zdGFuY2UgZm9yICR7dGhpcy50eXBlfWApXG5cbiAgICAgIHRoaXMuYXBwbHlLbm93blByb3BzKGluc3RhbmNlKVxuXG4gICAgICB0aGlzLmJpbmRPdXRwdXQoaW5zdGFuY2UsIFwidmFsdWVDaGFuZ2VcIilcbiAgICAgIHRoaXMuYmluZE91dHB1dChpbnN0YW5jZSwgXCJvblZhbHVlQ2hhbmdlXCIpXG5cbiAgICAgIGluc3RhbmNlLmNoYW5nZURldGVjdG9yUmVmPy5kZXRlY3RDaGFuZ2VzKClcbiAgICAgIHRoaXMuY29tcFJlZiA9IGNvbXBSZWZcbiAgICAgIHRoaXMuaW5wdXRJbnN0YW5jZSA9IGluc3RhbmNlXG4gICAgICBjb21wUmVmLmNoYW5nZURldGVjdG9yUmVmLmRldGVjdENoYW5nZXMoKVxuICAgIH0gY2F0Y2ggKGVycikge1xuICAgICAgLy8gRmFsbGJhY2sgdG8gZnVuY3Rpb24gcmVuZGVyZXJcbiAgICAgIHRyeSB7XG4gICAgICAgIGNvbnN0IHByb3BzOiBhbnkgPSB7XG4gICAgICAgICAgdmFsdWU6IHRoaXMudmFsdWUsXG4gICAgICAgICAgb25WYWx1ZUNoYW5nZTogKHY6IGFueSkgPT4gdGhpcy5lbWl0VmFsdWUodiksXG4gICAgICAgICAgbGFiZWw6IHRoaXMubGFiZWwsXG4gICAgICAgICAgcGxhY2Vob2xkZXI6IHRoaXMucGxhY2Vob2xkZXIsXG4gICAgICAgICAgcmVxdWlyZWQ6IHRoaXMucmVxdWlyZWQsXG4gICAgICAgICAgb3B0aW9uczogdGhpcy5vcHRpb25zLFxyXG4gICAgICAgICAgY2xhc3NOYW1lOiB0aGlzLmNsYXNzTmFtZSxcclxuICAgICAgICAgIGRlc2NyaXB0aW9uOiB0aGlzLmRlc2NyaXB0aW9uLFxyXG4gICAgICAgICAgZGlzYWJsZWQ6IHRoaXMuZGlzYWJsZWQsXHJcbiAgICAgICAgICBlcnJvck1lc3NhZ2U6IHRoaXMuZXJyb3JNZXNzYWdlLFxyXG4gICAgICAgIH1cbiAgICAgICAgY29uc3Qgb3V0ID0gKFJlbmRlcmVyIGFzIEZ1bmN0aW9uKShwcm9wcylcbiAgICAgICAgaWYgKHR5cGVvZiBvdXQgPT09ICdzdHJpbmcnKSB7XG4gICAgICAgICAgY29uc3QgZWwgPSBkb2N1bWVudC5jcmVhdGVFbGVtZW50KCdkaXYnKVxuICAgICAgICAgIGVsLmlubmVySFRNTCA9IG91dFxuICAgICAgICAgIHRoaXMuaG9zdC5lbGVtZW50Lm5hdGl2ZUVsZW1lbnQuYXBwZW5kQ2hpbGQoZWwpXG4gICAgICAgIH1cbiAgICAgIH0gY2F0Y2ggKGUpIHtcbiAgICAgICAgY29uc3QgZWwgPSBkb2N1bWVudC5jcmVhdGVFbGVtZW50KCdkaXYnKVxuICAgICAgICBlbC50ZXh0Q29udGVudCA9IGBGYWlsZWQgdG8gcmVuZGVyIGZpZWxkOiAke3RoaXMudHlwZX1gXG4gICAgICAgIHRoaXMuaG9zdC5lbGVtZW50Lm5hdGl2ZUVsZW1lbnQuYXBwZW5kQ2hpbGQoZWwpXG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgcHJpdmF0ZSBhcHBseUtub3duUHJvcHMoaW5zdGFuY2U6IGFueSkge1xuICAgIGNvbnN0IGtub3duUHJvcHMgPSBbXCJ2YWx1ZVwiLCBcImxhYmVsXCIsIFwicGxhY2Vob2xkZXJcIiwgXCJyZXF1aXJlZFwiLCBcImRpc2FibGVkXCIsIFwib3B0aW9uc1wiLCBcImNsYXNzTmFtZVwiLCBcImRlc2NyaXB0aW9uXCIsIFwiZXJyb3JNZXNzYWdlXCJdXG4gICAgZm9yIChjb25zdCBwcm9wIG9mIGtub3duUHJvcHMpIHtcbiAgICAgIGlmIChwcm9wIGluIHRoaXMgJiYgcHJvcCBpbiBpbnN0YW5jZSkge1xuICAgICAgICBpbnN0YW5jZVtwcm9wXSA9ICh0aGlzIGFzIGFueSlbcHJvcF1cbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICBwcml2YXRlIGJpbmRPdXRwdXQoaW5zdGFuY2U6IGFueSwgb3V0cHV0TmFtZTogXCJ2YWx1ZUNoYW5nZVwiIHwgXCJvblZhbHVlQ2hhbmdlXCIpIHtcbiAgICBjb25zdCBvdXRwdXQgPSBpbnN0YW5jZT8uW291dHB1dE5hbWVdXG4gICAgaWYgKCFvdXRwdXQgfHwgdHlwZW9mIG91dHB1dC5zdWJzY3JpYmUgIT09IFwiZnVuY3Rpb25cIikgcmV0dXJuO1xuXG4gICAgKG91dHB1dCBhcyBFdmVudEVtaXR0ZXI8YW55Pikuc3Vic2NyaWJlKCh2YWx1ZSkgPT4ge1xuICAgICAgdGhpcy5lbWl0VmFsdWUodmFsdWUpXG4gICAgfSlcbiAgfVxuXG4gIHByaXZhdGUgZW1pdFZhbHVlKHZhbHVlOiBhbnkpIHtcbiAgICB0aGlzLnZhbHVlQ2hhbmdlLmVtaXQodmFsdWUpXG4gICAgdGhpcy5vbkNoYW5nZS5lbWl0KHZhbHVlKVxuICB9XG5cbiAgcHJpdmF0ZSBjbGVhbnVwUmVuZGVyZWRDb21wb25lbnQoKSB7XG4gICAgdGhpcy5jb21wUmVmPy5kZXN0cm95KClcbiAgICB0aGlzLmNvbXBSZWYgPSB1bmRlZmluZWRcbiAgICB0aGlzLmlucHV0SW5zdGFuY2UgPSB1bmRlZmluZWRcbiAgfVxufVxuIl19
@@ -0,0 +1,66 @@
1
+ import { NgIf } from "@angular/common";
2
+ import { Component, Input, Output, EventEmitter } from "@angular/core";
3
+ import { DynamicInput } from './DynamicInput';
4
+ import * as i0 from "@angular/core";
5
+ export class FieldInput {
6
+ constructor() {
7
+ this.onValueChangeField = new EventEmitter();
8
+ }
9
+ getFieldValue() {
10
+ if (!this.fieldDescription || !this.renderInfos)
11
+ return undefined;
12
+ const value = this.renderInfos[this.fieldDescription.name];
13
+ if (value === undefined && this.fieldDescription.type === "text") {
14
+ return "";
15
+ }
16
+ return value;
17
+ }
18
+ }
19
+ FieldInput.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: FieldInput, deps: [], target: i0.ɵɵFactoryTarget.Component });
20
+ FieldInput.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.2.10", type: FieldInput, isStandalone: true, selector: "dfk-field-input", inputs: { fieldDescription: "fieldDescription", renderInfos: "renderInfos" }, outputs: { onValueChangeField: "onValueChangeField" }, ngImport: i0, template: `
21
+ <dfk-dynamic-input
22
+ *ngIf="fieldDescription && renderInfos"
23
+ [type]="fieldDescription!.type"
24
+ [value]="getFieldValue()"
25
+ [label]="fieldDescription!.label"
26
+ [placeholder]="fieldDescription!.placeholder"
27
+ [required]="fieldDescription!.required"
28
+ [description]="fieldDescription!.description"
29
+ [options]="fieldDescription!.options"
30
+ [className]="fieldDescription!.className"
31
+ (valueChange)="onValueChangeField.emit({ value: $event, key: fieldDescription!.name })"
32
+ [disabled]="false"
33
+ [errorMessage]="''"
34
+ ></dfk-dynamic-input>
35
+ `, isInline: true, dependencies: [{ kind: "directive", type: NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: DynamicInput, selector: "dfk-dynamic-input", inputs: ["type", "value", "label", "placeholder", "required", "options", "className", "description"], outputs: ["valueChange", "onChange"] }] });
36
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: FieldInput, decorators: [{
37
+ type: Component,
38
+ args: [{
39
+ selector: "dfk-field-input",
40
+ standalone: true,
41
+ imports: [NgIf, DynamicInput],
42
+ template: `
43
+ <dfk-dynamic-input
44
+ *ngIf="fieldDescription && renderInfos"
45
+ [type]="fieldDescription!.type"
46
+ [value]="getFieldValue()"
47
+ [label]="fieldDescription!.label"
48
+ [placeholder]="fieldDescription!.placeholder"
49
+ [required]="fieldDescription!.required"
50
+ [description]="fieldDescription!.description"
51
+ [options]="fieldDescription!.options"
52
+ [className]="fieldDescription!.className"
53
+ (valueChange)="onValueChangeField.emit({ value: $event, key: fieldDescription!.name })"
54
+ [disabled]="false"
55
+ [errorMessage]="''"
56
+ ></dfk-dynamic-input>
57
+ `,
58
+ }]
59
+ }], propDecorators: { fieldDescription: [{
60
+ type: Input
61
+ }], renderInfos: [{
62
+ type: Input
63
+ }], onValueChangeField: [{
64
+ type: Output
65
+ }] } });
66
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiRmllbGRJbnB1dC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy9jb21wb25lbnRzL0ZpZWxkSW5wdXQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLElBQUksRUFBRSxNQUFNLGlCQUFpQixDQUFBO0FBQ3RDLE9BQU8sRUFBRSxTQUFTLEVBQUUsS0FBSyxFQUFFLE1BQU0sRUFBRSxZQUFZLEVBQUUsTUFBTSxlQUFlLENBQUE7QUFDdEUsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLGdCQUFnQixDQUFBOztBQXdCN0MsTUFBTSxPQUFPLFVBQVU7SUFyQnZCO1FBd0JZLHVCQUFrQixHQUFHLElBQUksWUFBWSxFQUE2QixDQUFBO0tBWTdFO0lBVkMsYUFBYTtRQUNYLElBQUksQ0FBQyxJQUFJLENBQUMsZ0JBQWdCLElBQUksQ0FBQyxJQUFJLENBQUMsV0FBVztZQUFFLE9BQU8sU0FBUyxDQUFBO1FBRWpFLE1BQU0sS0FBSyxHQUFHLElBQUksQ0FBQyxXQUFXLENBQUMsSUFBSSxDQUFDLGdCQUFnQixDQUFDLElBQUksQ0FBQyxDQUFBO1FBQzFELElBQUksS0FBSyxLQUFLLFNBQVMsSUFBSSxJQUFJLENBQUMsZ0JBQWdCLENBQUMsSUFBSSxLQUFLLE1BQU0sRUFBRTtZQUNoRSxPQUFPLEVBQUUsQ0FBQTtTQUNWO1FBRUQsT0FBTyxLQUFLLENBQUE7SUFDZCxDQUFDOzt3R0FkVSxVQUFVOzRGQUFWLFVBQVUsZ05BakJYOzs7Ozs7Ozs7Ozs7Ozs7R0FlVCw0REFoQlMsSUFBSSw2RkFBRSxZQUFZOzRGQWtCakIsVUFBVTtrQkFyQnRCLFNBQVM7bUJBQUM7b0JBQ1QsUUFBUSxFQUFFLGlCQUFpQjtvQkFDM0IsVUFBVSxFQUFFLElBQUk7b0JBQ2hCLE9BQU8sRUFBRSxDQUFDLElBQUksRUFBRSxZQUFZLENBQUM7b0JBQzdCLFFBQVEsRUFBRTs7Ozs7Ozs7Ozs7Ozs7O0dBZVQ7aUJBQ0Y7OEJBRVUsZ0JBQWdCO3NCQUF4QixLQUFLO2dCQUNHLFdBQVc7c0JBQW5CLEtBQUs7Z0JBQ0ksa0JBQWtCO3NCQUEzQixNQUFNIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgTmdJZiB9IGZyb20gXCJAYW5ndWxhci9jb21tb25cIlxuaW1wb3J0IHsgQ29tcG9uZW50LCBJbnB1dCwgT3V0cHV0LCBFdmVudEVtaXR0ZXIgfSBmcm9tIFwiQGFuZ3VsYXIvY29yZVwiXG5pbXBvcnQgeyBEeW5hbWljSW5wdXQgfSBmcm9tICcuL0R5bmFtaWNJbnB1dCdcbmltcG9ydCB7IEZpZWxkRGVzY3JpcHRpb24sIFByb3BlcnRpZXMgfSBmcm9tIFwiQGR5bmFtaWMtZmllbGQta2l0L2NvcmVcIlxuXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6IFwiZGZrLWZpZWxkLWlucHV0XCIsXG4gIHN0YW5kYWxvbmU6IHRydWUsXG4gIGltcG9ydHM6IFtOZ0lmLCBEeW5hbWljSW5wdXRdLFxuICB0ZW1wbGF0ZTogYFxuICAgIDxkZmstZHluYW1pYy1pbnB1dFxuICAgICAgKm5nSWY9XCJmaWVsZERlc2NyaXB0aW9uICYmIHJlbmRlckluZm9zXCJcbiAgICAgIFt0eXBlXT1cImZpZWxkRGVzY3JpcHRpb24hLnR5cGVcIlxuICAgICAgW3ZhbHVlXT1cImdldEZpZWxkVmFsdWUoKVwiXG4gICAgICBbbGFiZWxdPVwiZmllbGREZXNjcmlwdGlvbiEubGFiZWxcIlxuICAgICAgW3BsYWNlaG9sZGVyXT1cImZpZWxkRGVzY3JpcHRpb24hLnBsYWNlaG9sZGVyXCJcbiAgICAgIFtyZXF1aXJlZF09XCJmaWVsZERlc2NyaXB0aW9uIS5yZXF1aXJlZFwiXG4gICAgICBbZGVzY3JpcHRpb25dPVwiZmllbGREZXNjcmlwdGlvbiEuZGVzY3JpcHRpb25cIlxyXG4gICAgICBbb3B0aW9uc109XCJmaWVsZERlc2NyaXB0aW9uIS5vcHRpb25zXCJcclxuICAgICAgW2NsYXNzTmFtZV09XCJmaWVsZERlc2NyaXB0aW9uIS5jbGFzc05hbWVcIlxyXG4gICAgICAodmFsdWVDaGFuZ2UpPVwib25WYWx1ZUNoYW5nZUZpZWxkLmVtaXQoeyB2YWx1ZTogJGV2ZW50LCBrZXk6IGZpZWxkRGVzY3JpcHRpb24hLm5hbWUgfSlcIlxyXG4gICAgICBbZGlzYWJsZWRdPVwiZmFsc2VcIlxyXG4gICAgICBbZXJyb3JNZXNzYWdlXT1cIicnXCJcclxuICAgID48L2Rmay1keW5hbWljLWlucHV0PlxyXG4gIGAsXHJcbn0pXHJcbmV4cG9ydCBjbGFzcyBGaWVsZElucHV0IHtcbiAgQElucHV0KCkgZmllbGREZXNjcmlwdGlvbj86IEZpZWxkRGVzY3JpcHRpb25cbiAgQElucHV0KCkgcmVuZGVySW5mb3M/OiBQcm9wZXJ0aWVzXG4gIEBPdXRwdXQoKSBvblZhbHVlQ2hhbmdlRmllbGQgPSBuZXcgRXZlbnRFbWl0dGVyPHt2YWx1ZTogYW55LCBrZXk6IHN0cmluZ30+KClcblxuICBnZXRGaWVsZFZhbHVlKCkge1xuICAgIGlmICghdGhpcy5maWVsZERlc2NyaXB0aW9uIHx8ICF0aGlzLnJlbmRlckluZm9zKSByZXR1cm4gdW5kZWZpbmVkXG5cbiAgICBjb25zdCB2YWx1ZSA9IHRoaXMucmVuZGVySW5mb3NbdGhpcy5maWVsZERlc2NyaXB0aW9uLm5hbWVdXG4gICAgaWYgKHZhbHVlID09PSB1bmRlZmluZWQgJiYgdGhpcy5maWVsZERlc2NyaXB0aW9uLnR5cGUgPT09IFwidGV4dFwiKSB7XG4gICAgICByZXR1cm4gXCJcIlxuICAgIH1cblxuICAgIHJldHVybiB2YWx1ZVxuICB9XG59XG4iXX0=
@@ -0,0 +1,79 @@
1
+ import { NgClass, NgFor } from "@angular/common";
2
+ import { Component, Input, Output, EventEmitter } from "@angular/core";
3
+ import { FieldInput } from "./FieldInput";
4
+ import * as i0 from "@angular/core";
5
+ export class MultiFieldInput {
6
+ constructor() {
7
+ this.fieldDescriptions = [];
8
+ this.onChange = new EventEmitter();
9
+ this.layout = "column";
10
+ this.data = {};
11
+ this.visibleFields = [];
12
+ }
13
+ trackByFn(index, field) {
14
+ return field.name || index;
15
+ }
16
+ ngOnInit() {
17
+ this.init();
18
+ }
19
+ ngOnChanges(_changes) {
20
+ this.init();
21
+ }
22
+ init() {
23
+ if (this.properties)
24
+ this.data = { ...this.properties };
25
+ this.updateVisibleFields();
26
+ }
27
+ updateVisibleFields() {
28
+ this.visibleFields = this.fieldDescriptions.filter((f) => !f.appearCondition || f.appearCondition(this.data));
29
+ }
30
+ onFieldChange(event) {
31
+ this.data = { ...this.data, [event.key]: event.value };
32
+ this.updateVisibleFields();
33
+ this.onChange.emit(this.data);
34
+ }
35
+ }
36
+ MultiFieldInput.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: MultiFieldInput, deps: [], target: i0.ɵɵFactoryTarget.Component });
37
+ MultiFieldInput.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.2.10", type: MultiFieldInput, isStandalone: true, selector: "dfk-multi-field-input", inputs: { fieldDescriptions: "fieldDescriptions", properties: "properties", layout: "layout" }, outputs: { onChange: "onChange" }, usesOnChanges: true, ngImport: i0, template: `
38
+ <div class="flex flex-col gap-3 p-4 border rounded-lg bg-gray-50" [ngClass]="{
39
+ 'flex-row gap-3': layout === 'row',
40
+ 'grid grid-cols-2 gap-3': layout === 'grid'
41
+ }">
42
+ <dfk-field-input
43
+ *ngFor="let field of visibleFields; trackBy: trackByFn"
44
+ [fieldDescription]="field"
45
+ [renderInfos]="data"
46
+ (onValueChangeField)="onFieldChange($event)"
47
+ ></dfk-field-input>
48
+ </div>
49
+ `, isInline: true, dependencies: [{ kind: "directive", type: NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: NgFor, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "component", type: FieldInput, selector: "dfk-field-input", inputs: ["fieldDescription", "renderInfos"], outputs: ["onValueChangeField"] }] });
50
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: MultiFieldInput, decorators: [{
51
+ type: Component,
52
+ args: [{
53
+ selector: "dfk-multi-field-input",
54
+ standalone: true,
55
+ imports: [NgClass, NgFor, FieldInput],
56
+ template: `
57
+ <div class="flex flex-col gap-3 p-4 border rounded-lg bg-gray-50" [ngClass]="{
58
+ 'flex-row gap-3': layout === 'row',
59
+ 'grid grid-cols-2 gap-3': layout === 'grid'
60
+ }">
61
+ <dfk-field-input
62
+ *ngFor="let field of visibleFields; trackBy: trackByFn"
63
+ [fieldDescription]="field"
64
+ [renderInfos]="data"
65
+ (onValueChangeField)="onFieldChange($event)"
66
+ ></dfk-field-input>
67
+ </div>
68
+ `,
69
+ }]
70
+ }], propDecorators: { fieldDescriptions: [{
71
+ type: Input
72
+ }], properties: [{
73
+ type: Input
74
+ }], onChange: [{
75
+ type: Output
76
+ }], layout: [{
77
+ type: Input
78
+ }] } });
79
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiTXVsdGlGaWVsZElucHV0LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vc3JjL2NvbXBvbmVudHMvTXVsdGlGaWVsZElucHV0LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxPQUFPLEVBQUUsS0FBSyxFQUFFLE1BQU0saUJBQWlCLENBQUE7QUFDaEQsT0FBTyxFQUFFLFNBQVMsRUFBRSxLQUFLLEVBQUUsTUFBTSxFQUFFLFlBQVksRUFBb0MsTUFBTSxlQUFlLENBQUE7QUFFeEcsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLGNBQWMsQ0FBQTs7QUFxQnpDLE1BQU0sT0FBTyxlQUFlO0lBbEI1QjtRQW1CVyxzQkFBaUIsR0FBdUIsRUFBRSxDQUFBO1FBRXpDLGFBQVEsR0FBRyxJQUFJLFlBQVksRUFBYyxDQUFBO1FBQzFDLFdBQU0sR0FBaUIsUUFBUSxDQUFBO1FBRXhDLFNBQUksR0FBZSxFQUFFLENBQUE7UUFDckIsa0JBQWEsR0FBdUIsRUFBRSxDQUFBO0tBOEJ2QztJQTVCQyxTQUFTLENBQUMsS0FBYSxFQUFFLEtBQXVCO1FBQzlDLE9BQU8sS0FBSyxDQUFDLElBQUksSUFBSSxLQUFLLENBQUM7SUFDN0IsQ0FBQztJQUVELFFBQVE7UUFDTixJQUFJLENBQUMsSUFBSSxFQUFFLENBQUE7SUFDYixDQUFDO0lBRUQsV0FBVyxDQUFDLFFBQXVCO1FBQ2pDLElBQUksQ0FBQyxJQUFJLEVBQUUsQ0FBQTtJQUNiLENBQUM7SUFFTyxJQUFJO1FBQ1YsSUFBSSxJQUFJLENBQUMsVUFBVTtZQUFFLElBQUksQ0FBQyxJQUFJLEdBQUcsRUFBRSxHQUFHLElBQUksQ0FBQyxVQUFVLEVBQUUsQ0FBQTtRQUN2RCxJQUFJLENBQUMsbUJBQW1CLEVBQUUsQ0FBQTtJQUM1QixDQUFDO0lBRU8sbUJBQW1CO1FBQ3pCLElBQUksQ0FBQyxhQUFhLEdBQUcsSUFBSSxDQUFDLGlCQUFpQixDQUFDLE1BQU0sQ0FDaEQsQ0FBQyxDQUFDLEVBQUUsRUFBRSxDQUFDLENBQUMsQ0FBQyxDQUFDLGVBQWUsSUFBSSxDQUFDLENBQUMsZUFBZSxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsQ0FDMUQsQ0FBQTtJQUNILENBQUM7SUFFRCxhQUFhLENBQUMsS0FBa0M7UUFDOUMsSUFBSSxDQUFDLElBQUksR0FBRyxFQUFFLEdBQUcsSUFBSSxDQUFDLElBQUksRUFBRSxDQUFDLEtBQUssQ0FBQyxHQUFHLENBQUMsRUFBRSxLQUFLLENBQUMsS0FBSyxFQUFFLENBQUE7UUFDdEQsSUFBSSxDQUFDLG1CQUFtQixFQUFFLENBQUE7UUFDMUIsSUFBSSxDQUFDLFFBQVEsQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxDQUFBO0lBQy9CLENBQUM7OzZHQXBDVSxlQUFlO2lHQUFmLGVBQWUseU9BZGhCOzs7Ozs7Ozs7Ozs7R0FZVCw0REFiUyxPQUFPLG9GQUFFLEtBQUssbUhBQUUsVUFBVTs0RkFlekIsZUFBZTtrQkFsQjNCLFNBQVM7bUJBQUM7b0JBQ1QsUUFBUSxFQUFFLHVCQUF1QjtvQkFDakMsVUFBVSxFQUFFLElBQUk7b0JBQ2hCLE9BQU8sRUFBRSxDQUFDLE9BQU8sRUFBRSxLQUFLLEVBQUUsVUFBVSxDQUFDO29CQUNyQyxRQUFRLEVBQUU7Ozs7Ozs7Ozs7OztHQVlUO2lCQUNGOzhCQUVVLGlCQUFpQjtzQkFBekIsS0FBSztnQkFDRyxVQUFVO3NCQUFsQixLQUFLO2dCQUNJLFFBQVE7c0JBQWpCLE1BQU07Z0JBQ0UsTUFBTTtzQkFBZCxLQUFLIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgTmdDbGFzcywgTmdGb3IgfSBmcm9tIFwiQGFuZ3VsYXIvY29tbW9uXCJcbmltcG9ydCB7IENvbXBvbmVudCwgSW5wdXQsIE91dHB1dCwgRXZlbnRFbWl0dGVyLCBPbkNoYW5nZXMsIE9uSW5pdCwgU2ltcGxlQ2hhbmdlcyB9IGZyb20gXCJAYW5ndWxhci9jb3JlXCJcbmltcG9ydCB7IEZpZWxkRGVzY3JpcHRpb24sIFByb3BlcnRpZXMgfSBmcm9tIFwiQGR5bmFtaWMtZmllbGQta2l0L2NvcmVcIlxuaW1wb3J0IHsgRmllbGRJbnB1dCB9IGZyb20gXCIuL0ZpZWxkSW5wdXRcIlxuaW1wb3J0IHsgTGF5b3V0Q29uZmlnIH0gZnJvbSBcIi4uL3R5cGVzL2xheW91dFwiXG5cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogXCJkZmstbXVsdGktZmllbGQtaW5wdXRcIixcbiAgc3RhbmRhbG9uZTogdHJ1ZSxcbiAgaW1wb3J0czogW05nQ2xhc3MsIE5nRm9yLCBGaWVsZElucHV0XSxcbiAgdGVtcGxhdGU6IGBcbiAgICA8ZGl2IGNsYXNzPVwiZmxleCBmbGV4LWNvbCBnYXAtMyBwLTQgYm9yZGVyIHJvdW5kZWQtbGcgYmctZ3JheS01MFwiIFtuZ0NsYXNzXT1cIntcbiAgICAgICdmbGV4LXJvdyBnYXAtMyc6IGxheW91dCA9PT0gJ3JvdycsXG4gICAgICAnZ3JpZCBncmlkLWNvbHMtMiBnYXAtMyc6IGxheW91dCA9PT0gJ2dyaWQnXG4gICAgfVwiPlxuICAgICAgPGRmay1maWVsZC1pbnB1dFxuICAgICAgICAqbmdGb3I9XCJsZXQgZmllbGQgb2YgdmlzaWJsZUZpZWxkczsgdHJhY2tCeTogdHJhY2tCeUZuXCJcbiAgICAgICAgW2ZpZWxkRGVzY3JpcHRpb25dPVwiZmllbGRcIlxuICAgICAgICBbcmVuZGVySW5mb3NdPVwiZGF0YVwiXG4gICAgICAgIChvblZhbHVlQ2hhbmdlRmllbGQpPVwib25GaWVsZENoYW5nZSgkZXZlbnQpXCJcbiAgICAgID48L2Rmay1maWVsZC1pbnB1dD5cbiAgICA8L2Rpdj5cbiAgYCxcbn0pXG5leHBvcnQgY2xhc3MgTXVsdGlGaWVsZElucHV0IGltcGxlbWVudHMgT25Jbml0LCBPbkNoYW5nZXMge1xuICBASW5wdXQoKSBmaWVsZERlc2NyaXB0aW9uczogRmllbGREZXNjcmlwdGlvbltdID0gW11cbiAgQElucHV0KCkgcHJvcGVydGllcz86IFByb3BlcnRpZXNcbiAgQE91dHB1dCgpIG9uQ2hhbmdlID0gbmV3IEV2ZW50RW1pdHRlcjxQcm9wZXJ0aWVzPigpXG4gIEBJbnB1dCgpIGxheW91dDogTGF5b3V0Q29uZmlnID0gXCJjb2x1bW5cIlxuXG4gIGRhdGE6IFByb3BlcnRpZXMgPSB7fVxuICB2aXNpYmxlRmllbGRzOiBGaWVsZERlc2NyaXB0aW9uW10gPSBbXVxuXG4gIHRyYWNrQnlGbihpbmRleDogbnVtYmVyLCBmaWVsZDogRmllbGREZXNjcmlwdGlvbik6IHN0cmluZyB8IG51bWJlciB7XG4gICAgcmV0dXJuIGZpZWxkLm5hbWUgfHwgaW5kZXg7XG4gIH1cblxuICBuZ09uSW5pdCgpIHtcbiAgICB0aGlzLmluaXQoKVxuICB9XG5cbiAgbmdPbkNoYW5nZXMoX2NoYW5nZXM6IFNpbXBsZUNoYW5nZXMpIHtcbiAgICB0aGlzLmluaXQoKVxuICB9XG5cbiAgcHJpdmF0ZSBpbml0KCkge1xuICAgIGlmICh0aGlzLnByb3BlcnRpZXMpIHRoaXMuZGF0YSA9IHsgLi4udGhpcy5wcm9wZXJ0aWVzIH1cbiAgICB0aGlzLnVwZGF0ZVZpc2libGVGaWVsZHMoKVxuICB9XG5cbiAgcHJpdmF0ZSB1cGRhdGVWaXNpYmxlRmllbGRzKCkge1xuICAgIHRoaXMudmlzaWJsZUZpZWxkcyA9IHRoaXMuZmllbGREZXNjcmlwdGlvbnMuZmlsdGVyKFxuICAgICAgKGYpID0+ICFmLmFwcGVhckNvbmRpdGlvbiB8fCBmLmFwcGVhckNvbmRpdGlvbih0aGlzLmRhdGEpXG4gICAgKVxuICB9XG5cbiAgb25GaWVsZENoYW5nZShldmVudDogeyB2YWx1ZTogYW55OyBrZXk6IHN0cmluZyB9KSB7XG4gICAgdGhpcy5kYXRhID0geyAuLi50aGlzLmRhdGEsIFtldmVudC5rZXldOiBldmVudC52YWx1ZSB9XG4gICAgdGhpcy51cGRhdGVWaXNpYmxlRmllbGRzKClcbiAgICB0aGlzLm9uQ2hhbmdlLmVtaXQodGhpcy5kYXRhKVxuICB9XG59XG4iXX0=
@@ -0,0 +1,5 @@
1
+ /**
2
+ * Generated bundle index. Do not edit.
3
+ */
4
+ export * from './public-api';
5
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZHluYW1pYy1maWVsZC1raXQtYW5ndWxhci5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9keW5hbWljLWZpZWxkLWtpdC1hbmd1bGFyLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBOztHQUVHO0FBRUgsY0FBYyxjQUFjLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyIvKipcbiAqIEdlbmVyYXRlZCBidW5kbGUgaW5kZXguIERvIG5vdCBlZGl0LlxuICovXG5cbmV4cG9ydCAqIGZyb20gJy4vcHVibGljLWFwaSc7XG4iXX0=
@@ -0,0 +1,43 @@
1
+ import { Component } from "@angular/core";
2
+ import { CommonModule } from '@angular/common';
3
+ import * as i0 from "@angular/core";
4
+ export class ColumnLayout {
5
+ }
6
+ ColumnLayout.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: ColumnLayout, deps: [], target: i0.ɵɵFactoryTarget.Component });
7
+ ColumnLayout.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.2.10", type: ColumnLayout, isStandalone: true, selector: "dfk-column-layout", ngImport: i0, template: `<div style="display:flex;flex-direction:column;gap:var(--dfk-gap,12px)"><ng-content></ng-content></div>`, isInline: true, dependencies: [{ kind: "ngmodule", type: CommonModule }] });
8
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: ColumnLayout, decorators: [{
9
+ type: Component,
10
+ args: [{
11
+ selector: "dfk-column-layout",
12
+ standalone: true,
13
+ imports: [CommonModule],
14
+ template: `<div style="display:flex;flex-direction:column;gap:var(--dfk-gap,12px)"><ng-content></ng-content></div>`,
15
+ }]
16
+ }] });
17
+ export class RowLayout {
18
+ }
19
+ RowLayout.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: RowLayout, deps: [], target: i0.ɵɵFactoryTarget.Component });
20
+ RowLayout.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.2.10", type: RowLayout, isStandalone: true, selector: "dfk-row-layout", ngImport: i0, template: `<div style="display:flex;flex-direction:row;gap:var(--dfk-gap,12px)"><ng-content></ng-content></div>`, isInline: true, dependencies: [{ kind: "ngmodule", type: CommonModule }] });
21
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: RowLayout, decorators: [{
22
+ type: Component,
23
+ args: [{
24
+ selector: "dfk-row-layout",
25
+ standalone: true,
26
+ imports: [CommonModule],
27
+ template: `<div style="display:flex;flex-direction:row;gap:var(--dfk-gap,12px)"><ng-content></ng-content></div>`,
28
+ }]
29
+ }] });
30
+ export class GridLayout {
31
+ }
32
+ GridLayout.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: GridLayout, deps: [], target: i0.ɵɵFactoryTarget.Component });
33
+ GridLayout.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.2.10", type: GridLayout, isStandalone: true, selector: "dfk-grid-layout", ngImport: i0, template: `<div style="display:grid;grid-template-columns:repeat(var(--dfk-columns,2),1fr);gap:var(--dfk-gap,12px)"><ng-content></ng-content></div>`, isInline: true, dependencies: [{ kind: "ngmodule", type: CommonModule }] });
34
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: GridLayout, decorators: [{
35
+ type: Component,
36
+ args: [{
37
+ selector: "dfk-grid-layout",
38
+ standalone: true,
39
+ imports: [CommonModule],
40
+ template: `<div style="display:grid;grid-template-columns:repeat(var(--dfk-columns,2),1fr);gap:var(--dfk-gap,12px)"><ng-content></ng-content></div>`,
41
+ }]
42
+ }] });
43
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGVmYXVsdExheW91dHMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi9zcmMvbGF5b3V0L2RlZmF1bHRMYXlvdXRzLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxTQUFTLEVBQUUsTUFBTSxlQUFlLENBQUE7QUFDekMsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLGlCQUFpQixDQUFBOztBQVE5QyxNQUFNLE9BQU8sWUFBWTs7MEdBQVosWUFBWTs4RkFBWixZQUFZLDZFQUZiLHlHQUF5RywyREFEekcsWUFBWTs0RkFHWCxZQUFZO2tCQU54QixTQUFTO21CQUFDO29CQUNULFFBQVEsRUFBRSxtQkFBbUI7b0JBQzdCLFVBQVUsRUFBRSxJQUFJO29CQUNoQixPQUFPLEVBQUUsQ0FBQyxZQUFZLENBQUM7b0JBQ3ZCLFFBQVEsRUFBRSx5R0FBeUc7aUJBQ3BIOztBQVNELE1BQU0sT0FBTyxTQUFTOzt1R0FBVCxTQUFTOzJGQUFULFNBQVMsMEVBRlYsc0dBQXNHLDJEQUR0RyxZQUFZOzRGQUdYLFNBQVM7a0JBTnJCLFNBQVM7bUJBQUM7b0JBQ1QsUUFBUSxFQUFFLGdCQUFnQjtvQkFDMUIsVUFBVSxFQUFFLElBQUk7b0JBQ2hCLE9BQU8sRUFBRSxDQUFDLFlBQVksQ0FBQztvQkFDdkIsUUFBUSxFQUFFLHNHQUFzRztpQkFDakg7O0FBU0QsTUFBTSxPQUFPLFVBQVU7O3dHQUFWLFVBQVU7NEZBQVYsVUFBVSwyRUFGWCwwSUFBMEksMkRBRDFJLFlBQVk7NEZBR1gsVUFBVTtrQkFOdEIsU0FBUzttQkFBQztvQkFDVCxRQUFRLEVBQUUsaUJBQWlCO29CQUMzQixVQUFVLEVBQUUsSUFBSTtvQkFDaEIsT0FBTyxFQUFFLENBQUMsWUFBWSxDQUFDO29CQUN2QixRQUFRLEVBQUUsMElBQTBJO2lCQUNySiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENvbXBvbmVudCB9IGZyb20gXCJAYW5ndWxhci9jb3JlXCJcbmltcG9ydCB7IENvbW1vbk1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbidcblxyXG5AQ29tcG9uZW50KHtcclxuICBzZWxlY3RvcjogXCJkZmstY29sdW1uLWxheW91dFwiLFxyXG4gIHN0YW5kYWxvbmU6IHRydWUsXHJcbiAgaW1wb3J0czogW0NvbW1vbk1vZHVsZV0sXHJcbiAgdGVtcGxhdGU6IGA8ZGl2IHN0eWxlPVwiZGlzcGxheTpmbGV4O2ZsZXgtZGlyZWN0aW9uOmNvbHVtbjtnYXA6dmFyKC0tZGZrLWdhcCwxMnB4KVwiPjxuZy1jb250ZW50PjwvbmctY29udGVudD48L2Rpdj5gLFxyXG59KVxyXG5leHBvcnQgY2xhc3MgQ29sdW1uTGF5b3V0IHt9XHJcblxyXG5AQ29tcG9uZW50KHtcclxuICBzZWxlY3RvcjogXCJkZmstcm93LWxheW91dFwiLFxyXG4gIHN0YW5kYWxvbmU6IHRydWUsXHJcbiAgaW1wb3J0czogW0NvbW1vbk1vZHVsZV0sXHJcbiAgdGVtcGxhdGU6IGA8ZGl2IHN0eWxlPVwiZGlzcGxheTpmbGV4O2ZsZXgtZGlyZWN0aW9uOnJvdztnYXA6dmFyKC0tZGZrLWdhcCwxMnB4KVwiPjxuZy1jb250ZW50PjwvbmctY29udGVudD48L2Rpdj5gLFxyXG59KVxyXG5leHBvcnQgY2xhc3MgUm93TGF5b3V0IHt9XHJcblxyXG5AQ29tcG9uZW50KHtcclxuICBzZWxlY3RvcjogXCJkZmstZ3JpZC1sYXlvdXRcIixcclxuICBzdGFuZGFsb25lOiB0cnVlLFxyXG4gIGltcG9ydHM6IFtDb21tb25Nb2R1bGVdLFxyXG4gIHRlbXBsYXRlOiBgPGRpdiBzdHlsZT1cImRpc3BsYXk6Z3JpZDtncmlkLXRlbXBsYXRlLWNvbHVtbnM6cmVwZWF0KHZhcigtLWRmay1jb2x1bW5zLDIpLDFmcik7Z2FwOnZhcigtLWRmay1nYXAsMTJweClcIj48bmctY29udGVudD48L25nLWNvbnRlbnQ+PC9kaXY+YCxcclxufSlcclxuZXhwb3J0IGNsYXNzIEdyaWRMYXlvdXQge31cbiJdfQ==
@@ -0,0 +1,2 @@
1
+ export * from "./defaultLayouts";
2
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi9zcmMvbGF5b3V0L2luZGV4LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLGNBQWMsa0JBQWtCLENBQUEiLCJzb3VyY2VzQ29udGVudCI6WyJleHBvcnQgKiBmcm9tIFwiLi9kZWZhdWx0TGF5b3V0c1wiXG4iXX0=
@@ -0,0 +1,20 @@
1
+ import { NgModule } from '@angular/core';
2
+ import { CommonModule } from '@angular/common';
3
+ import { DynamicInput } from '../components/DynamicInput';
4
+ import { FieldInput } from '../components/FieldInput';
5
+ import { MultiFieldInput } from '../components/MultiFieldInput';
6
+ import { ColumnLayout, RowLayout, GridLayout } from '../layout/defaultLayouts';
7
+ import * as i0 from "@angular/core";
8
+ export class DynamicFieldKitModule {
9
+ }
10
+ DynamicFieldKitModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: DynamicFieldKitModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
11
+ DynamicFieldKitModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "15.2.10", ngImport: i0, type: DynamicFieldKitModule, imports: [CommonModule, DynamicInput, FieldInput, MultiFieldInput, ColumnLayout, RowLayout, GridLayout], exports: [DynamicInput, FieldInput, MultiFieldInput, ColumnLayout, RowLayout, GridLayout] });
12
+ DynamicFieldKitModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: DynamicFieldKitModule, imports: [CommonModule, DynamicInput, FieldInput, MultiFieldInput, ColumnLayout, RowLayout, GridLayout] });
13
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: DynamicFieldKitModule, decorators: [{
14
+ type: NgModule,
15
+ args: [{
16
+ imports: [CommonModule, DynamicInput, FieldInput, MultiFieldInput, ColumnLayout, RowLayout, GridLayout],
17
+ exports: [DynamicInput, FieldInput, MultiFieldInput, ColumnLayout, RowLayout, GridLayout],
18
+ }]
19
+ }] });
20
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZHluYW1pYy1maWVsZC1raXQubW9kdWxlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vc3JjL2xpYi9keW5hbWljLWZpZWxkLWtpdC5tb2R1bGUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFFBQVEsRUFBRSxNQUFNLGVBQWUsQ0FBQTtBQUN4QyxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0saUJBQWlCLENBQUE7QUFFOUMsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLDRCQUE0QixDQUFBO0FBQ3pELE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSwwQkFBMEIsQ0FBQTtBQUNyRCxPQUFPLEVBQUUsZUFBZSxFQUFFLE1BQU0sK0JBQStCLENBQUE7QUFFL0QsT0FBTyxFQUFFLFlBQVksRUFBRSxTQUFTLEVBQUUsVUFBVSxFQUFFLE1BQU0sMEJBQTBCLENBQUE7O0FBTTlFLE1BQU0sT0FBTyxxQkFBcUI7O21IQUFyQixxQkFBcUI7b0hBQXJCLHFCQUFxQixZQUh0QixZQUFZLEVBQUUsWUFBWSxFQUFFLFVBQVUsRUFBRSxlQUFlLEVBQUUsWUFBWSxFQUFFLFNBQVMsRUFBRSxVQUFVLGFBQzVGLFlBQVksRUFBRSxVQUFVLEVBQUUsZUFBZSxFQUFFLFlBQVksRUFBRSxTQUFTLEVBQUUsVUFBVTtvSEFFN0UscUJBQXFCLFlBSHRCLFlBQVksRUFBRSxZQUFZLEVBQUUsVUFBVSxFQUFFLGVBQWUsRUFBRSxZQUFZLEVBQUUsU0FBUyxFQUFFLFVBQVU7NEZBRzNGLHFCQUFxQjtrQkFKakMsUUFBUTttQkFBQztvQkFDUixPQUFPLEVBQUUsQ0FBQyxZQUFZLEVBQUUsWUFBWSxFQUFFLFVBQVUsRUFBRSxlQUFlLEVBQUUsWUFBWSxFQUFFLFNBQVMsRUFBRSxVQUFVLENBQUM7b0JBQ3ZHLE9BQU8sRUFBRSxDQUFDLFlBQVksRUFBRSxVQUFVLEVBQUUsZUFBZSxFQUFFLFlBQVksRUFBRSxTQUFTLEVBQUUsVUFBVSxDQUFDO2lCQUMxRiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IE5nTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSdcclxuaW1wb3J0IHsgQ29tbW9uTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uJ1xyXG5cclxuaW1wb3J0IHsgRHluYW1pY0lucHV0IH0gZnJvbSAnLi4vY29tcG9uZW50cy9EeW5hbWljSW5wdXQnXHJcbmltcG9ydCB7IEZpZWxkSW5wdXQgfSBmcm9tICcuLi9jb21wb25lbnRzL0ZpZWxkSW5wdXQnXHJcbmltcG9ydCB7IE11bHRpRmllbGRJbnB1dCB9IGZyb20gJy4uL2NvbXBvbmVudHMvTXVsdGlGaWVsZElucHV0J1xyXG5cclxuaW1wb3J0IHsgQ29sdW1uTGF5b3V0LCBSb3dMYXlvdXQsIEdyaWRMYXlvdXQgfSBmcm9tICcuLi9sYXlvdXQvZGVmYXVsdExheW91dHMnXHJcblxyXG5ATmdNb2R1bGUoe1xyXG4gIGltcG9ydHM6IFtDb21tb25Nb2R1bGUsIER5bmFtaWNJbnB1dCwgRmllbGRJbnB1dCwgTXVsdGlGaWVsZElucHV0LCBDb2x1bW5MYXlvdXQsIFJvd0xheW91dCwgR3JpZExheW91dF0sXHJcbiAgZXhwb3J0czogW0R5bmFtaWNJbnB1dCwgRmllbGRJbnB1dCwgTXVsdGlGaWVsZElucHV0LCBDb2x1bW5MYXlvdXQsIFJvd0xheW91dCwgR3JpZExheW91dF0sXHJcbn0pXHJcbmV4cG9ydCBjbGFzcyBEeW5hbWljRmllbGRLaXRNb2R1bGUge31cclxuIl19
@@ -0,0 +1,14 @@
1
+ // public-api.ts
2
+ // Components
3
+ export * from './components/BaseInput';
4
+ export * from './components/DynamicInput';
5
+ export * from './components/FieldInput';
6
+ export * from './components/MultiFieldInput';
7
+ // Layout
8
+ export * from './layout';
9
+ export * from './types/layout';
10
+ // Module
11
+ export * from './lib/dynamic-field-kit.module';
12
+ // Optional: expose registry for advanced use cases, but not required for basic usage
13
+ export { fieldRegistry } from '@dynamic-field-kit/core';
14
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHVibGljLWFwaS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9wdWJsaWMtYXBpLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLGdCQUFnQjtBQUVoQixhQUFhO0FBQ2IsY0FBYyx3QkFBd0IsQ0FBQztBQUN2QyxjQUFjLDJCQUEyQixDQUFDO0FBQzFDLGNBQWMseUJBQXlCLENBQUM7QUFDeEMsY0FBYyw4QkFBOEIsQ0FBQztBQUU3QyxTQUFTO0FBQ1QsY0FBYyxVQUFVLENBQUM7QUFDekIsY0FBYyxnQkFBZ0IsQ0FBQztBQUUvQixTQUFTO0FBQ1QsY0FBYyxnQ0FBZ0MsQ0FBQztBQVMvQyxxRkFBcUY7QUFDckYsT0FBTyxFQUFFLGFBQWEsRUFBRSxNQUFNLHlCQUF5QixDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiLy8gcHVibGljLWFwaS50c1xyXG5cclxuLy8gQ29tcG9uZW50c1xuZXhwb3J0ICogZnJvbSAnLi9jb21wb25lbnRzL0Jhc2VJbnB1dCc7XG5leHBvcnQgKiBmcm9tICcuL2NvbXBvbmVudHMvRHluYW1pY0lucHV0JztcbmV4cG9ydCAqIGZyb20gJy4vY29tcG9uZW50cy9GaWVsZElucHV0JztcbmV4cG9ydCAqIGZyb20gJy4vY29tcG9uZW50cy9NdWx0aUZpZWxkSW5wdXQnO1xuXG4vLyBMYXlvdXRcbmV4cG9ydCAqIGZyb20gJy4vbGF5b3V0JztcbmV4cG9ydCAqIGZyb20gJy4vdHlwZXMvbGF5b3V0JztcblxyXG4vLyBNb2R1bGVcclxuZXhwb3J0ICogZnJvbSAnLi9saWIvZHluYW1pYy1maWVsZC1raXQubW9kdWxlJztcclxuXHJcbi8vIFJlLWV4cG9ydCB0eXBlcyBmcm9tIGNvcmUgKG9ubHkgdHlwZSwgbm90IGV4cG9ydCAqIClcclxuZXhwb3J0IHR5cGUge1xyXG4gIEZpZWxkVHlwZUtleSxcclxuICBGaWVsZERlc2NyaXB0aW9uLFxyXG4gIEZpZWxkUmVuZGVyZXJQcm9wc1xyXG59IGZyb20gJ0BkeW5hbWljLWZpZWxkLWtpdC9jb3JlJztcclxuXHJcbi8vIE9wdGlvbmFsOiBleHBvc2UgcmVnaXN0cnkgZm9yIGFkdmFuY2VkIHVzZSBjYXNlcywgYnV0IG5vdCByZXF1aXJlZCBmb3IgYmFzaWMgdXNhZ2VcbmV4cG9ydCB7IGZpZWxkUmVnaXN0cnkgfSBmcm9tICdAZHluYW1pYy1maWVsZC1raXQvY29yZSc7XG4iXX0=
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibGF5b3V0LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vc3JjL3R5cGVzL2xheW91dC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiIiwic291cmNlc0NvbnRlbnQiOlsiZXhwb3J0IHR5cGUgTGF5b3V0Q29uZmlnID0gXCJjb2x1bW5cIiB8IFwicm93XCIgfCBcImdyaWRcIlxuIl19