@ng-forge/dynamic-forms-bootstrap 1.1.0 → 1.2.0-next.10
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/README.md +5 -5
- package/fesm2022/ng-forge-dynamic-forms-bootstrap-bs-field-errors-wrapper.component-D4qTxFSp.mjs +25 -0
- package/fesm2022/ng-forge-dynamic-forms-bootstrap-bs-field-errors-wrapper.component-D4qTxFSp.mjs.map +1 -0
- package/fesm2022/ng-forge-dynamic-forms-bootstrap-lazy-addon-button.mjs +77 -0
- package/fesm2022/ng-forge-dynamic-forms-bootstrap-lazy-addon-button.mjs.map +1 -0
- package/fesm2022/ng-forge-dynamic-forms-bootstrap-lazy-addon-icon.mjs +35 -0
- package/fesm2022/ng-forge-dynamic-forms-bootstrap-lazy-addon-icon.mjs.map +1 -0
- package/fesm2022/ng-forge-dynamic-forms-bootstrap-lazy-button.mjs +74 -0
- package/fesm2022/ng-forge-dynamic-forms-bootstrap-lazy-button.mjs.map +1 -0
- package/fesm2022/ng-forge-dynamic-forms-bootstrap-lazy-checkbox.mjs +82 -0
- package/fesm2022/ng-forge-dynamic-forms-bootstrap-lazy-checkbox.mjs.map +1 -0
- package/fesm2022/ng-forge-dynamic-forms-bootstrap-lazy-datepicker.mjs +177 -0
- package/fesm2022/ng-forge-dynamic-forms-bootstrap-lazy-datepicker.mjs.map +1 -0
- package/fesm2022/ng-forge-dynamic-forms-bootstrap-lazy-input.mjs +339 -0
- package/fesm2022/ng-forge-dynamic-forms-bootstrap-lazy-input.mjs.map +1 -0
- package/fesm2022/ng-forge-dynamic-forms-bootstrap-lazy-multi-checkbox.mjs +141 -0
- package/fesm2022/ng-forge-dynamic-forms-bootstrap-lazy-multi-checkbox.mjs.map +1 -0
- package/fesm2022/ng-forge-dynamic-forms-bootstrap-lazy-radio.mjs +184 -0
- package/fesm2022/ng-forge-dynamic-forms-bootstrap-lazy-radio.mjs.map +1 -0
- package/fesm2022/ng-forge-dynamic-forms-bootstrap-lazy-select.mjs +102 -0
- package/fesm2022/ng-forge-dynamic-forms-bootstrap-lazy-select.mjs.map +1 -0
- package/fesm2022/ng-forge-dynamic-forms-bootstrap-lazy-slider.mjs +93 -0
- package/fesm2022/ng-forge-dynamic-forms-bootstrap-lazy-slider.mjs.map +1 -0
- package/fesm2022/ng-forge-dynamic-forms-bootstrap-lazy-textarea.mjs +150 -0
- package/fesm2022/ng-forge-dynamic-forms-bootstrap-lazy-textarea.mjs.map +1 -0
- package/fesm2022/ng-forge-dynamic-forms-bootstrap-lazy-toggle.mjs +82 -0
- package/fesm2022/ng-forge-dynamic-forms-bootstrap-lazy-toggle.mjs.map +1 -0
- package/fesm2022/ng-forge-dynamic-forms-bootstrap-shared.mjs +44 -0
- package/fesm2022/ng-forge-dynamic-forms-bootstrap-shared.mjs.map +1 -0
- package/fesm2022/ng-forge-dynamic-forms-bootstrap.mjs +85 -179
- package/fesm2022/ng-forge-dynamic-forms-bootstrap.mjs.map +1 -1
- package/package.json +56 -4
- package/types/ng-forge-dynamic-forms-bootstrap-lazy-addon-button.d.ts +19 -0
- package/types/ng-forge-dynamic-forms-bootstrap-lazy-addon-icon.d.ts +18 -0
- package/types/ng-forge-dynamic-forms-bootstrap-lazy-button.d.ts +121 -0
- package/types/ng-forge-dynamic-forms-bootstrap-lazy-checkbox.d.ts +23 -0
- package/types/ng-forge-dynamic-forms-bootstrap-lazy-datepicker.d.ts +33 -0
- package/types/ng-forge-dynamic-forms-bootstrap-lazy-input.d.ts +51 -0
- package/types/ng-forge-dynamic-forms-bootstrap-lazy-multi-checkbox.d.ts +28 -0
- package/types/ng-forge-dynamic-forms-bootstrap-lazy-radio.d.ts +24 -0
- package/types/ng-forge-dynamic-forms-bootstrap-lazy-select.d.ts +33 -0
- package/types/ng-forge-dynamic-forms-bootstrap-lazy-slider.d.ts +40 -0
- package/types/ng-forge-dynamic-forms-bootstrap-lazy-textarea.d.ts +23 -0
- package/types/ng-forge-dynamic-forms-bootstrap-lazy-toggle.d.ts +22 -0
- package/types/ng-forge-dynamic-forms-bootstrap-shared.d.ts +100 -0
- package/types/ng-forge-dynamic-forms-bootstrap.d.ts +9 -138
|
@@ -1,11 +1,13 @@
|
|
|
1
1
|
import { AsyncPipe } from '@angular/common';
|
|
2
2
|
import * as i0 from '@angular/core';
|
|
3
|
-
import { input, computed, ChangeDetectionStrategy, Component, inject,
|
|
3
|
+
import { input, computed, ChangeDetectionStrategy, Component, inject, signal, forwardRef, linkedSignal, model, isSignal } from '@angular/core';
|
|
4
4
|
import * as i1 from '@ng-forge/dynamic-forms/integration';
|
|
5
|
-
import { injectNgForgeAction, DynamicTextPipe, NgForgeActionHost, injectNgForgeField, NgForgeControl, NgForgeFieldHost,
|
|
5
|
+
import { injectNgForgeAction, DynamicTextPipe, NgForgeActionHost, injectNgForgeField, NgForgeControl, NgForgeFieldHost, injectNgForgeAddons, DfAddonSlot, ADDON_PRESET_HANDLER, FIELD_SIGNAL_CONTEXT, NgForgeAddons, isEqual, NgForgeField, DEFAULT_PROPS, ARRAY_CONTEXT, injectNonFieldLogicResolver, buildBaseInputs, valueFieldMapper, optionsFieldMapper, checkboxFieldMapper, submitButtonFieldMapper, nextButtonFieldMapper, previousButtonFieldMapper, addArrayItemButtonMapper, prependArrayItemButtonMapper, insertArrayItemButtonMapper, removeArrayItemButtonMapper, popArrayItemButtonMapper, shiftArrayItemButtonMapper, datepickerFieldMapper, ADDON_TYPE_DEFINITIONS, injectNgForgeAddonAction, NgForgeAddonAction } from '@ng-forge/dynamic-forms/integration';
|
|
6
6
|
import { FormField } from '@angular/forms/signals';
|
|
7
|
-
import {
|
|
7
|
+
import { InputConstraintsDirective, BOOTSTRAP_CONFIG, BS_INPUT_TYPE_OVERRIDE, runBsPresetAction } from '@ng-forge/dynamic-forms-bootstrap/shared';
|
|
8
|
+
export { BOOTSTRAP_CONFIG, BS_INPUT_TYPE_OVERRIDE } from '@ng-forge/dynamic-forms-bootstrap/shared';
|
|
8
9
|
import { DynamicFormLogger, DynamicFormError } from '@ng-forge/dynamic-forms';
|
|
10
|
+
import { explicitEffect } from 'ngxtension/explicit-effect';
|
|
9
11
|
|
|
10
12
|
class BsButtonFieldComponent {
|
|
11
13
|
action = injectNgForgeAction();
|
|
@@ -37,8 +39,8 @@ class BsButtonFieldComponent {
|
|
|
37
39
|
return;
|
|
38
40
|
this.action.dispatch();
|
|
39
41
|
}
|
|
40
|
-
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "22.
|
|
41
|
-
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.1.0", version: "22.
|
|
42
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "22.1.5", ngImport: i0, type: BsButtonFieldComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
|
|
43
|
+
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.1.0", version: "22.1.5", type: BsButtonFieldComponent, isStandalone: true, selector: "df-bs-button", inputs: { props: { classPropertyName: "props", publicName: "props", isSignal: true, isRequired: false, transformFunction: null } }, hostDirectives: [{ directive: i1.NgForgeActionHost }], ngImport: i0, template: `
|
|
42
44
|
@let buttonId = action.key() + '-button';
|
|
43
45
|
<button
|
|
44
46
|
[id]="buttonId"
|
|
@@ -53,7 +55,7 @@ class BsButtonFieldComponent {
|
|
|
53
55
|
</button>
|
|
54
56
|
`, isInline: true, styles: [".df-bs-field{display:flex;flex-direction:column;gap:var(--df-field-gap, .5rem);width:100%;margin-bottom:var(--df-bs-field-margin-bottom, 1rem)}.df-bs-label{font-weight:var(--df-label-font-weight, 500);color:var(--df-label-color, inherit);margin-bottom:0}.df-bs-hint{color:var(--df-hint-color, var(--bs-secondary-color, #6c757d));font-size:var(--df-hint-font-size, .875rem);margin-top:var(--df-bs-hint-margin-top, .25rem)}.df-bs-field:has(.df-bs-hint){margin-bottom:var(--df-bs-field-with-hint-margin-bottom, .5rem)}:host([hidden]){display:none!important}\n"], dependencies: [{ kind: "pipe", type: DynamicTextPipe, name: "dynamicText" }, { kind: "pipe", type: AsyncPipe, name: "async" }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
|
|
55
57
|
}
|
|
56
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "22.
|
|
58
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "22.1.5", ngImport: i0, type: BsButtonFieldComponent, decorators: [{
|
|
57
59
|
type: Component,
|
|
58
60
|
args: [{ selector: 'df-bs-button', imports: [DynamicTextPipe, AsyncPipe], hostDirectives: [NgForgeActionHost], template: `
|
|
59
61
|
@let buttonId = action.key() + '-button';
|
|
@@ -71,18 +73,13 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "22.0.1", ngImpor
|
|
|
71
73
|
`, changeDetection: ChangeDetectionStrategy.OnPush, styles: [".df-bs-field{display:flex;flex-direction:column;gap:var(--df-field-gap, .5rem);width:100%;margin-bottom:var(--df-bs-field-margin-bottom, 1rem)}.df-bs-label{font-weight:var(--df-label-font-weight, 500);color:var(--df-label-color, inherit);margin-bottom:0}.df-bs-hint{color:var(--df-hint-color, var(--bs-secondary-color, #6c757d));font-size:var(--df-hint-font-size, .875rem);margin-top:var(--df-bs-hint-margin-top, .25rem)}.df-bs-field:has(.df-bs-hint){margin-bottom:var(--df-bs-field-with-hint-margin-bottom, .5rem)}:host([hidden]){display:none!important}\n"] }]
|
|
72
74
|
}], propDecorators: { props: [{ type: i0.Input, args: [{ isSignal: true, alias: "props", required: false }] }] } });
|
|
73
75
|
|
|
74
|
-
var bsButton_component = /*#__PURE__*/Object.freeze({
|
|
75
|
-
__proto__: null,
|
|
76
|
-
default: BsButtonFieldComponent
|
|
77
|
-
});
|
|
78
|
-
|
|
79
76
|
|
|
80
77
|
class BsCheckboxFieldComponent {
|
|
81
78
|
ngf = injectNgForgeField();
|
|
82
79
|
props = input(/* @ts-ignore */
|
|
83
80
|
...(ngDevMode ? [undefined, { debugName: "props" }] : /* istanbul ignore next */ []));
|
|
84
|
-
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "22.
|
|
85
|
-
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "22.
|
|
81
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "22.1.5", ngImport: i0, type: BsCheckboxFieldComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
|
|
82
|
+
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "22.1.5", type: BsCheckboxFieldComponent, isStandalone: true, selector: "df-bs-checkbox", inputs: { props: { classPropertyName: "props", publicName: "props", isSignal: true, isRequired: false, transformFunction: null } }, hostDirectives: [{ directive: i1.NgForgeFieldHost }], ngImport: i0, template: `
|
|
86
83
|
@let f = ngf.field(); @let checkboxId = ngf.key() + '-checkbox';
|
|
87
84
|
|
|
88
85
|
<div
|
|
@@ -114,7 +111,7 @@ class BsCheckboxFieldComponent {
|
|
|
114
111
|
}
|
|
115
112
|
`, isInline: true, styles: [".df-bs-field{display:flex;flex-direction:column;gap:var(--df-field-gap, .5rem);width:100%;margin-bottom:var(--df-bs-field-margin-bottom, 1rem)}.df-bs-label{font-weight:var(--df-label-font-weight, 500);color:var(--df-label-color, inherit);margin-bottom:0}.df-bs-hint{color:var(--df-hint-color, var(--bs-secondary-color, #6c757d));font-size:var(--df-hint-font-size, .875rem);margin-top:var(--df-bs-hint-margin-top, .25rem)}.df-bs-field:has(.df-bs-hint){margin-bottom:var(--df-bs-field-with-hint-margin-bottom, .5rem)}:host([hidden]){display:none!important}\n", ":host{display:block}:host([hidden]){display:none!important}\n"], dependencies: [{ kind: "directive", type: FormField, selector: "[formField]", inputs: ["formField"], exportAs: ["formField"] }, { kind: "directive", type: NgForgeControl, selector: "[ngForgeControl]", inputs: ["ngForgeControl"] }, { kind: "pipe", type: DynamicTextPipe, name: "dynamicText" }, { kind: "pipe", type: AsyncPipe, name: "async" }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
|
|
116
113
|
}
|
|
117
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "22.
|
|
114
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "22.1.5", ngImport: i0, type: BsCheckboxFieldComponent, decorators: [{
|
|
118
115
|
type: Component,
|
|
119
116
|
args: [{ selector: 'df-bs-checkbox', imports: [FormField, DynamicTextPipe, AsyncPipe, NgForgeControl], hostDirectives: [NgForgeFieldHost], template: `
|
|
120
117
|
@let f = ngf.field(); @let checkboxId = ngf.key() + '-checkbox';
|
|
@@ -149,56 +146,6 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "22.0.1", ngImpor
|
|
|
149
146
|
`, changeDetection: ChangeDetectionStrategy.OnPush, styles: [".df-bs-field{display:flex;flex-direction:column;gap:var(--df-field-gap, .5rem);width:100%;margin-bottom:var(--df-bs-field-margin-bottom, 1rem)}.df-bs-label{font-weight:var(--df-label-font-weight, 500);color:var(--df-label-color, inherit);margin-bottom:0}.df-bs-hint{color:var(--df-hint-color, var(--bs-secondary-color, #6c757d));font-size:var(--df-hint-font-size, .875rem);margin-top:var(--df-bs-hint-margin-top, .25rem)}.df-bs-field:has(.df-bs-hint){margin-bottom:var(--df-bs-field-with-hint-margin-bottom, .5rem)}:host([hidden]){display:none!important}\n", ":host{display:block}:host([hidden]){display:none!important}\n"] }]
|
|
150
147
|
}], propDecorators: { props: [{ type: i0.Input, args: [{ isSignal: true, alias: "props", required: false }] }] } });
|
|
151
148
|
|
|
152
|
-
var bsCheckbox_component = /*#__PURE__*/Object.freeze({
|
|
153
|
-
__proto__: null,
|
|
154
|
-
default: BsCheckboxFieldComponent
|
|
155
|
-
});
|
|
156
|
-
|
|
157
|
-
class InputConstraintsDirective {
|
|
158
|
-
dfMin = input(/* @ts-ignore */
|
|
159
|
-
...(ngDevMode ? [undefined, { debugName: "dfMin" }] : /* istanbul ignore next */ []));
|
|
160
|
-
dfMax = input(/* @ts-ignore */
|
|
161
|
-
...(ngDevMode ? [undefined, { debugName: "dfMax" }] : /* istanbul ignore next */ []));
|
|
162
|
-
dfStep = input(/* @ts-ignore */
|
|
163
|
-
...(ngDevMode ? [undefined, { debugName: "dfStep" }] : /* istanbul ignore next */ []));
|
|
164
|
-
el = inject(ElementRef);
|
|
165
|
-
minEffect = explicitEffect([this.dfMin], ([minValue]) => {
|
|
166
|
-
const nativeElement = this.el.nativeElement;
|
|
167
|
-
if (minValue !== null && minValue !== undefined) {
|
|
168
|
-
nativeElement.setAttribute('min', String(minValue));
|
|
169
|
-
}
|
|
170
|
-
else {
|
|
171
|
-
nativeElement.removeAttribute('min');
|
|
172
|
-
}
|
|
173
|
-
});
|
|
174
|
-
maxEffect = explicitEffect([this.dfMax], ([maxValue]) => {
|
|
175
|
-
const nativeElement = this.el.nativeElement;
|
|
176
|
-
if (maxValue !== null && maxValue !== undefined) {
|
|
177
|
-
nativeElement.setAttribute('max', String(maxValue));
|
|
178
|
-
}
|
|
179
|
-
else {
|
|
180
|
-
nativeElement.removeAttribute('max');
|
|
181
|
-
}
|
|
182
|
-
});
|
|
183
|
-
stepEffect = explicitEffect([this.dfStep], ([stepValue]) => {
|
|
184
|
-
const nativeElement = this.el.nativeElement;
|
|
185
|
-
if (stepValue !== null && stepValue !== undefined) {
|
|
186
|
-
nativeElement.setAttribute('step', String(stepValue));
|
|
187
|
-
}
|
|
188
|
-
else {
|
|
189
|
-
nativeElement.removeAttribute('step');
|
|
190
|
-
}
|
|
191
|
-
});
|
|
192
|
-
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "22.0.1", ngImport: i0, type: InputConstraintsDirective, deps: [], target: i0.ɵɵFactoryTarget.Directive });
|
|
193
|
-
static ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "17.1.0", version: "22.0.1", type: InputConstraintsDirective, isStandalone: true, selector: "[dfBsInputConstraints]", inputs: { dfMin: { classPropertyName: "dfMin", publicName: "dfMin", isSignal: true, isRequired: false, transformFunction: null }, dfMax: { classPropertyName: "dfMax", publicName: "dfMax", isSignal: true, isRequired: false, transformFunction: null }, dfStep: { classPropertyName: "dfStep", publicName: "dfStep", isSignal: true, isRequired: false, transformFunction: null } }, ngImport: i0 });
|
|
194
|
-
}
|
|
195
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "22.0.1", ngImport: i0, type: InputConstraintsDirective, decorators: [{
|
|
196
|
-
type: Directive,
|
|
197
|
-
args: [{
|
|
198
|
-
selector: '[dfBsInputConstraints]',
|
|
199
|
-
}]
|
|
200
|
-
}], propDecorators: { dfMin: [{ type: i0.Input, args: [{ isSignal: true, alias: "dfMin", required: false }] }], dfMax: [{ type: i0.Input, args: [{ isSignal: true, alias: "dfMax", required: false }] }], dfStep: [{ type: i0.Input, args: [{ isSignal: true, alias: "dfStep", required: false }] }] } });
|
|
201
|
-
|
|
202
149
|
class BsDatepickerFieldComponent {
|
|
203
150
|
ngf = injectNgForgeField();
|
|
204
151
|
minDate = input(null, /* @ts-ignore */
|
|
@@ -219,8 +166,8 @@ class BsDatepickerFieldComponent {
|
|
|
219
166
|
return max instanceof Date ? max.toISOString().split('T')[0] : max;
|
|
220
167
|
}, /* @ts-ignore */
|
|
221
168
|
...(ngDevMode ? [{ debugName: "maxAsString" }] : /* istanbul ignore next */ []));
|
|
222
|
-
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "22.
|
|
223
|
-
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "22.
|
|
169
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "22.1.5", ngImport: i0, type: BsDatepickerFieldComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
|
|
170
|
+
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "22.1.5", type: BsDatepickerFieldComponent, isStandalone: true, selector: "df-bs-datepicker", inputs: { minDate: { classPropertyName: "minDate", publicName: "minDate", isSignal: true, isRequired: false, transformFunction: null }, maxDate: { classPropertyName: "maxDate", publicName: "maxDate", isSignal: true, isRequired: false, transformFunction: null }, startAt: { classPropertyName: "startAt", publicName: "startAt", isSignal: true, isRequired: false, transformFunction: null }, props: { classPropertyName: "props", publicName: "props", isSignal: true, isRequired: false, transformFunction: null } }, hostDirectives: [{ directive: i1.NgForgeFieldHost }], ngImport: i0, template: `
|
|
224
171
|
@let f = ngf.field(); @let p = props(); @let inputId = ngf.key() + '-input';
|
|
225
172
|
@if (p?.floatingLabel) {
|
|
226
173
|
<!-- Floating label variant -->
|
|
@@ -291,7 +238,7 @@ class BsDatepickerFieldComponent {
|
|
|
291
238
|
}
|
|
292
239
|
`, isInline: true, styles: [".df-bs-field{display:flex;flex-direction:column;gap:var(--df-field-gap, .5rem);width:100%;margin-bottom:var(--df-bs-field-margin-bottom, 1rem)}.df-bs-label{font-weight:var(--df-label-font-weight, 500);color:var(--df-label-color, inherit);margin-bottom:0}.df-bs-hint{color:var(--df-hint-color, var(--bs-secondary-color, #6c757d));font-size:var(--df-hint-font-size, .875rem);margin-top:var(--df-bs-hint-margin-top, .25rem)}.df-bs-field:has(.df-bs-hint){margin-bottom:var(--df-bs-field-with-hint-margin-bottom, .5rem)}:host([hidden]){display:none!important}\n", ":host([hidden]){display:none!important}\n"], dependencies: [{ kind: "directive", type: FormField, selector: "[formField]", inputs: ["formField"], exportAs: ["formField"] }, { kind: "directive", type: InputConstraintsDirective, selector: "[dfBsInputConstraints]", inputs: ["dfMin", "dfMax", "dfStep"] }, { kind: "directive", type: NgForgeControl, selector: "[ngForgeControl]", inputs: ["ngForgeControl"] }, { kind: "pipe", type: DynamicTextPipe, name: "dynamicText" }, { kind: "pipe", type: AsyncPipe, name: "async" }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
|
|
293
240
|
}
|
|
294
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "22.
|
|
241
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "22.1.5", ngImport: i0, type: BsDatepickerFieldComponent, decorators: [{
|
|
295
242
|
type: Component,
|
|
296
243
|
args: [{ selector: 'df-bs-datepicker', imports: [FormField, DynamicTextPipe, AsyncPipe, InputConstraintsDirective, NgForgeControl], hostDirectives: [NgForgeFieldHost], template: `
|
|
297
244
|
@let f = ngf.field(); @let p = props(); @let inputId = ngf.key() + '-input';
|
|
@@ -365,19 +312,6 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "22.0.1", ngImpor
|
|
|
365
312
|
`, changeDetection: ChangeDetectionStrategy.OnPush, styles: [".df-bs-field{display:flex;flex-direction:column;gap:var(--df-field-gap, .5rem);width:100%;margin-bottom:var(--df-bs-field-margin-bottom, 1rem)}.df-bs-label{font-weight:var(--df-label-font-weight, 500);color:var(--df-label-color, inherit);margin-bottom:0}.df-bs-hint{color:var(--df-hint-color, var(--bs-secondary-color, #6c757d));font-size:var(--df-hint-font-size, .875rem);margin-top:var(--df-bs-hint-margin-top, .25rem)}.df-bs-field:has(.df-bs-hint){margin-bottom:var(--df-bs-field-with-hint-margin-bottom, .5rem)}:host([hidden]){display:none!important}\n", ":host([hidden]){display:none!important}\n"] }]
|
|
366
313
|
}], propDecorators: { minDate: [{ type: i0.Input, args: [{ isSignal: true, alias: "minDate", required: false }] }], maxDate: [{ type: i0.Input, args: [{ isSignal: true, alias: "maxDate", required: false }] }], startAt: [{ type: i0.Input, args: [{ isSignal: true, alias: "startAt", required: false }] }], props: [{ type: i0.Input, args: [{ isSignal: true, alias: "props", required: false }] }] } });
|
|
367
314
|
|
|
368
|
-
var bsDatepicker_component = /*#__PURE__*/Object.freeze({
|
|
369
|
-
__proto__: null,
|
|
370
|
-
default: BsDatepickerFieldComponent
|
|
371
|
-
});
|
|
372
|
-
|
|
373
|
-
const BOOTSTRAP_CONFIG = new InjectionToken('BOOTSTRAP_CONFIG');
|
|
374
|
-
|
|
375
|
-
function runBsPresetAction(preset, ctx, collaborators) {
|
|
376
|
-
return runPresetAction(preset, ctx, collaborators, 'Bootstrap', 'bs-input');
|
|
377
|
-
}
|
|
378
|
-
|
|
379
|
-
const BS_INPUT_TYPE_OVERRIDE = new InjectionToken('BS_INPUT_TYPE_OVERRIDE');
|
|
380
|
-
|
|
381
315
|
class BsInputFieldComponent {
|
|
382
316
|
bootstrapConfig = inject(BOOTSTRAP_CONFIG, { optional: true });
|
|
383
317
|
ngf = injectNgForgeField();
|
|
@@ -393,8 +327,8 @@ class BsInputFieldComponent {
|
|
|
393
327
|
...(ngDevMode ? [{ debugName: "floatingLabel" }] : /* istanbul ignore next */ []));
|
|
394
328
|
type = computed(() => this.typeOverride() ?? this.props()?.type ?? 'text', /* @ts-ignore */
|
|
395
329
|
...(ngDevMode ? [{ debugName: "type" }] : /* istanbul ignore next */ []));
|
|
396
|
-
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "22.
|
|
397
|
-
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "22.
|
|
330
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "22.1.5", ngImport: i0, type: BsInputFieldComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
|
|
331
|
+
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "22.1.5", type: BsInputFieldComponent, isStandalone: true, selector: "df-bs-input", inputs: { props: { classPropertyName: "props", publicName: "props", isSignal: true, isRequired: false, transformFunction: null }, fieldInputs: { classPropertyName: "fieldInputs", publicName: "fieldInputs", isSignal: true, isRequired: false, transformFunction: null } }, providers: [
|
|
398
332
|
{
|
|
399
333
|
provide: BS_INPUT_TYPE_OVERRIDE,
|
|
400
334
|
useFactory: () => signal(undefined),
|
|
@@ -548,7 +482,7 @@ class BsInputFieldComponent {
|
|
|
548
482
|
}
|
|
549
483
|
`, isInline: true, styles: [".df-bs-field{display:flex;flex-direction:column;gap:var(--df-field-gap, .5rem);width:100%;margin-bottom:var(--df-bs-field-margin-bottom, 1rem)}.df-bs-label{font-weight:var(--df-label-font-weight, 500);color:var(--df-label-color, inherit);margin-bottom:0}.df-bs-hint{color:var(--df-hint-color, var(--bs-secondary-color, #6c757d));font-size:var(--df-hint-font-size, .875rem);margin-top:var(--df-bs-hint-margin-top, .25rem)}.df-bs-field:has(.df-bs-hint){margin-bottom:var(--df-bs-field-with-hint-margin-bottom, .5rem)}:host([hidden]){display:none!important}\n", ":host([hidden]){display:none!important}:host{--df-bs-addon-prefix-outer-padding: .75rem;--df-bs-addon-prefix-inner-padding: .75rem;--df-bs-addon-suffix-inner-padding: .75rem;--df-bs-addon-suffix-outer-padding: .75rem}:host ::ng-deep .input-group>.input-group-text:first-child{padding-left:var(--df-bs-addon-prefix-outer-padding);padding-right:var(--df-bs-addon-prefix-inner-padding)}:host ::ng-deep .input-group>.input-group-text:last-child{padding-left:var(--df-bs-addon-suffix-inner-padding);padding-right:var(--df-bs-addon-suffix-outer-padding)}:host ::ng-deep .input-group-text df-bs-button-addon .btn{--bs-btn-bg: transparent;--bs-btn-color: var(--bs-body-color);--bs-btn-border-color: transparent;--bs-btn-hover-bg: rgba(127, 127, 127, .12);--bs-btn-hover-color: var(--bs-body-color);--bs-btn-hover-border-color: transparent;--bs-btn-active-bg: rgba(127, 127, 127, .18);--bs-btn-active-border-color: transparent;--bs-btn-focus-shadow-rgb: 0, 0, 0;--bs-btn-padding-x: 0;--bs-btn-padding-y: 0;box-shadow:none}:host ::ng-deep .input-group-text df-bs-button-addon .btn:focus-visible{box-shadow:none;outline:2px solid currentColor;outline-offset:2px}\n"], dependencies: [{ kind: "directive", type: FormField, selector: "[formField]", inputs: ["formField"], exportAs: ["formField"] }, { kind: "directive", type: NgForgeControl, selector: "[ngForgeControl]", inputs: ["ngForgeControl"] }, { kind: "component", type: DfAddonSlot, selector: "df-addon-slot", inputs: ["addon", "fieldInputs", "hidden"] }, { kind: "pipe", type: DynamicTextPipe, name: "dynamicText" }, { kind: "pipe", type: AsyncPipe, name: "async" }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
|
|
550
484
|
}
|
|
551
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "22.
|
|
485
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "22.1.5", ngImport: i0, type: BsInputFieldComponent, decorators: [{
|
|
552
486
|
type: Component,
|
|
553
487
|
args: [{ selector: 'df-bs-input', imports: [FormField, DynamicTextPipe, AsyncPipe, NgForgeControl, DfAddonSlot], hostDirectives: [NgForgeFieldHost, NgForgeAddons], template: `
|
|
554
488
|
@let f = ngf.field(); @let p = props(); @let inputId = ngf.key() + '-input';
|
|
@@ -705,11 +639,6 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "22.0.1", ngImpor
|
|
|
705
639
|
], styles: [".df-bs-field{display:flex;flex-direction:column;gap:var(--df-field-gap, .5rem);width:100%;margin-bottom:var(--df-bs-field-margin-bottom, 1rem)}.df-bs-label{font-weight:var(--df-label-font-weight, 500);color:var(--df-label-color, inherit);margin-bottom:0}.df-bs-hint{color:var(--df-hint-color, var(--bs-secondary-color, #6c757d));font-size:var(--df-hint-font-size, .875rem);margin-top:var(--df-bs-hint-margin-top, .25rem)}.df-bs-field:has(.df-bs-hint){margin-bottom:var(--df-bs-field-with-hint-margin-bottom, .5rem)}:host([hidden]){display:none!important}\n", ":host([hidden]){display:none!important}:host{--df-bs-addon-prefix-outer-padding: .75rem;--df-bs-addon-prefix-inner-padding: .75rem;--df-bs-addon-suffix-inner-padding: .75rem;--df-bs-addon-suffix-outer-padding: .75rem}:host ::ng-deep .input-group>.input-group-text:first-child{padding-left:var(--df-bs-addon-prefix-outer-padding);padding-right:var(--df-bs-addon-prefix-inner-padding)}:host ::ng-deep .input-group>.input-group-text:last-child{padding-left:var(--df-bs-addon-suffix-inner-padding);padding-right:var(--df-bs-addon-suffix-outer-padding)}:host ::ng-deep .input-group-text df-bs-button-addon .btn{--bs-btn-bg: transparent;--bs-btn-color: var(--bs-body-color);--bs-btn-border-color: transparent;--bs-btn-hover-bg: rgba(127, 127, 127, .12);--bs-btn-hover-color: var(--bs-body-color);--bs-btn-hover-border-color: transparent;--bs-btn-active-bg: rgba(127, 127, 127, .18);--bs-btn-active-border-color: transparent;--bs-btn-focus-shadow-rgb: 0, 0, 0;--bs-btn-padding-x: 0;--bs-btn-padding-y: 0;box-shadow:none}:host ::ng-deep .input-group-text df-bs-button-addon .btn:focus-visible{box-shadow:none;outline:2px solid currentColor;outline-offset:2px}\n"] }]
|
|
706
640
|
}], propDecorators: { props: [{ type: i0.Input, args: [{ isSignal: true, alias: "props", required: false }] }], fieldInputs: [{ type: i0.Input, args: [{ isSignal: true, alias: "fieldInputs", required: false }] }] } });
|
|
707
641
|
|
|
708
|
-
var bsInput_component = /*#__PURE__*/Object.freeze({
|
|
709
|
-
__proto__: null,
|
|
710
|
-
default: BsInputFieldComponent
|
|
711
|
-
});
|
|
712
|
-
|
|
713
642
|
class BsMultiCheckboxFieldComponent {
|
|
714
643
|
ngf = injectNgForgeField();
|
|
715
644
|
options = input([], /* @ts-ignore */
|
|
@@ -757,8 +686,8 @@ class BsMultiCheckboxFieldComponent {
|
|
|
757
686
|
}
|
|
758
687
|
});
|
|
759
688
|
}
|
|
760
|
-
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "22.
|
|
761
|
-
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "22.
|
|
689
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "22.1.5", ngImport: i0, type: BsMultiCheckboxFieldComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
|
|
690
|
+
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "22.1.5", type: BsMultiCheckboxFieldComponent, isStandalone: true, selector: "df-bs-multi-checkbox", inputs: { options: { classPropertyName: "options", publicName: "options", isSignal: true, isRequired: false, transformFunction: null }, props: { classPropertyName: "props", publicName: "props", isSignal: true, isRequired: false, transformFunction: null } }, hostDirectives: [{ directive: i1.NgForgeFieldHost }], ngImport: i0, template: `
|
|
762
691
|
@let f = ngf.field();
|
|
763
692
|
@let checked = checkedValuesMap();
|
|
764
693
|
@if (ngf.label(); as label) {
|
|
@@ -798,7 +727,7 @@ class BsMultiCheckboxFieldComponent {
|
|
|
798
727
|
}
|
|
799
728
|
`, isInline: true, styles: [".df-bs-field{display:flex;flex-direction:column;gap:var(--df-field-gap, .5rem);width:100%;margin-bottom:var(--df-bs-field-margin-bottom, 1rem)}.df-bs-label{font-weight:var(--df-label-font-weight, 500);color:var(--df-label-color, inherit);margin-bottom:0}.df-bs-hint{color:var(--df-hint-color, var(--bs-secondary-color, #6c757d));font-size:var(--df-hint-font-size, .875rem);margin-top:var(--df-bs-hint-margin-top, .25rem)}.df-bs-field:has(.df-bs-hint){margin-bottom:var(--df-bs-field-with-hint-margin-bottom, .5rem)}:host([hidden]){display:none!important}\n", ":host{display:block}.checkbox-group{margin-bottom:.5rem}:host([hidden]){display:none!important}\n"], dependencies: [{ kind: "directive", type: NgForgeControl, selector: "[ngForgeControl]", inputs: ["ngForgeControl"] }, { kind: "pipe", type: DynamicTextPipe, name: "dynamicText" }, { kind: "pipe", type: AsyncPipe, name: "async" }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
|
|
800
729
|
}
|
|
801
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "22.
|
|
730
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "22.1.5", ngImport: i0, type: BsMultiCheckboxFieldComponent, decorators: [{
|
|
802
731
|
type: Component,
|
|
803
732
|
args: [{ selector: 'df-bs-multi-checkbox', imports: [DynamicTextPipe, AsyncPipe, NgForgeControl], hostDirectives: [NgForgeFieldHost], template: `
|
|
804
733
|
@let f = ngf.field();
|
|
@@ -841,11 +770,6 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "22.0.1", ngImpor
|
|
|
841
770
|
`, changeDetection: ChangeDetectionStrategy.OnPush, styles: [".df-bs-field{display:flex;flex-direction:column;gap:var(--df-field-gap, .5rem);width:100%;margin-bottom:var(--df-bs-field-margin-bottom, 1rem)}.df-bs-label{font-weight:var(--df-label-font-weight, 500);color:var(--df-label-color, inherit);margin-bottom:0}.df-bs-hint{color:var(--df-hint-color, var(--bs-secondary-color, #6c757d));font-size:var(--df-hint-font-size, .875rem);margin-top:var(--df-bs-hint-margin-top, .25rem)}.df-bs-field:has(.df-bs-hint){margin-bottom:var(--df-bs-field-with-hint-margin-bottom, .5rem)}:host([hidden]){display:none!important}\n", ":host{display:block}.checkbox-group{margin-bottom:.5rem}:host([hidden]){display:none!important}\n"] }]
|
|
842
771
|
}], ctorParameters: () => [], propDecorators: { options: [{ type: i0.Input, args: [{ isSignal: true, alias: "options", required: false }] }], props: [{ type: i0.Input, args: [{ isSignal: true, alias: "props", required: false }] }] } });
|
|
843
772
|
|
|
844
|
-
var bsMultiCheckbox_component = /*#__PURE__*/Object.freeze({
|
|
845
|
-
__proto__: null,
|
|
846
|
-
default: BsMultiCheckboxFieldComponent
|
|
847
|
-
});
|
|
848
|
-
|
|
849
773
|
class BsRadioGroupComponent {
|
|
850
774
|
parentField = inject(NgForgeField, { optional: true });
|
|
851
775
|
value = model(undefined, /* @ts-ignore */
|
|
@@ -867,8 +791,8 @@ class BsRadioGroupComponent {
|
|
|
867
791
|
this.value.set(newValue);
|
|
868
792
|
}
|
|
869
793
|
}
|
|
870
|
-
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "22.
|
|
871
|
-
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "22.
|
|
794
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "22.1.5", ngImport: i0, type: BsRadioGroupComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
|
|
795
|
+
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "22.1.5", type: BsRadioGroupComponent, isStandalone: true, selector: "df-bs-radio-group", inputs: { value: { classPropertyName: "value", publicName: "value", isSignal: true, isRequired: false, transformFunction: null }, disabled: { classPropertyName: "disabled", publicName: "disabled", isSignal: true, isRequired: false, transformFunction: null }, readonly: { classPropertyName: "readonly", publicName: "readonly", isSignal: true, isRequired: false, transformFunction: null }, name: { classPropertyName: "name", publicName: "name", isSignal: true, isRequired: false, transformFunction: null }, label: { classPropertyName: "label", publicName: "label", isSignal: true, isRequired: false, transformFunction: null }, options: { classPropertyName: "options", publicName: "options", isSignal: true, isRequired: true, transformFunction: null }, properties: { classPropertyName: "properties", publicName: "properties", isSignal: true, isRequired: false, transformFunction: null } }, outputs: { value: "valueChange" }, host: { attributes: { "role": "radiogroup" }, properties: { "attr.aria-invalid": "parentField?.ariaInvalid() || null", "attr.aria-required": "parentField?.ariaRequired()", "attr.aria-describedby": "parentField?.ariaDescribedBy()" } }, ngImport: i0, template: `
|
|
872
796
|
@let props = properties();
|
|
873
797
|
@if (props?.buttonGroup) {
|
|
874
798
|
<div class="btn-group" role="group" [attr.aria-label]="label() | dynamicText | async">
|
|
@@ -917,7 +841,7 @@ class BsRadioGroupComponent {
|
|
|
917
841
|
}
|
|
918
842
|
`, isInline: true, styles: [":host{display:block}\n"], dependencies: [{ kind: "directive", type: NgForgeControl, selector: "[ngForgeControl]", inputs: ["ngForgeControl"] }, { kind: "pipe", type: DynamicTextPipe, name: "dynamicText" }, { kind: "pipe", type: AsyncPipe, name: "async" }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
|
|
919
843
|
}
|
|
920
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "22.
|
|
844
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "22.1.5", ngImport: i0, type: BsRadioGroupComponent, decorators: [{
|
|
921
845
|
type: Component,
|
|
922
846
|
args: [{ selector: 'df-bs-radio-group', imports: [DynamicTextPipe, AsyncPipe, NgForgeControl], host: {
|
|
923
847
|
role: 'radiogroup',
|
|
@@ -980,8 +904,8 @@ class BsRadioFieldComponent {
|
|
|
980
904
|
...(ngDevMode ? [{ debugName: "options" }] : /* istanbul ignore next */ []));
|
|
981
905
|
props = input(/* @ts-ignore */
|
|
982
906
|
...(ngDevMode ? [undefined, { debugName: "props" }] : /* istanbul ignore next */ []));
|
|
983
|
-
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "22.
|
|
984
|
-
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "22.
|
|
907
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "22.1.5", ngImport: i0, type: BsRadioFieldComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
|
|
908
|
+
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "22.1.5", type: BsRadioFieldComponent, isStandalone: true, selector: "df-bs-radio", inputs: { options: { classPropertyName: "options", publicName: "options", isSignal: true, isRequired: false, transformFunction: null }, props: { classPropertyName: "props", publicName: "props", isSignal: true, isRequired: false, transformFunction: null } }, hostDirectives: [{ directive: i1.NgForgeFieldHost }], ngImport: i0, template: `
|
|
985
909
|
@let f = ngf.field();
|
|
986
910
|
|
|
987
911
|
<div class="mb-3">
|
|
@@ -999,7 +923,7 @@ class BsRadioFieldComponent {
|
|
|
999
923
|
</div>
|
|
1000
924
|
`, isInline: true, styles: [".df-bs-field{display:flex;flex-direction:column;gap:var(--df-field-gap, .5rem);width:100%;margin-bottom:var(--df-bs-field-margin-bottom, 1rem)}.df-bs-label{font-weight:var(--df-label-font-weight, 500);color:var(--df-label-color, inherit);margin-bottom:0}.df-bs-hint{color:var(--df-hint-color, var(--bs-secondary-color, #6c757d));font-size:var(--df-hint-font-size, .875rem);margin-top:var(--df-bs-hint-margin-top, .25rem)}.df-bs-field:has(.df-bs-hint){margin-bottom:var(--df-bs-field-with-hint-margin-bottom, .5rem)}:host([hidden]){display:none!important}\n", ":host{display:block}:host([hidden]){display:none!important}\n"], dependencies: [{ kind: "component", type: BsRadioGroupComponent, selector: "df-bs-radio-group", inputs: ["value", "disabled", "readonly", "name", "label", "options", "properties"], outputs: ["valueChange"] }, { kind: "directive", type: FormField, selector: "[formField]", inputs: ["formField"], exportAs: ["formField"] }, { kind: "pipe", type: DynamicTextPipe, name: "dynamicText" }, { kind: "pipe", type: AsyncPipe, name: "async" }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
|
|
1001
925
|
}
|
|
1002
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "22.
|
|
926
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "22.1.5", ngImport: i0, type: BsRadioFieldComponent, decorators: [{
|
|
1003
927
|
type: Component,
|
|
1004
928
|
args: [{ selector: 'df-bs-radio', imports: [BsRadioGroupComponent, FormField, DynamicTextPipe, AsyncPipe], hostDirectives: [NgForgeFieldHost], template: `
|
|
1005
929
|
@let f = ngf.field();
|
|
@@ -1020,11 +944,6 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "22.0.1", ngImpor
|
|
|
1020
944
|
`, changeDetection: ChangeDetectionStrategy.OnPush, styles: [".df-bs-field{display:flex;flex-direction:column;gap:var(--df-field-gap, .5rem);width:100%;margin-bottom:var(--df-bs-field-margin-bottom, 1rem)}.df-bs-label{font-weight:var(--df-label-font-weight, 500);color:var(--df-label-color, inherit);margin-bottom:0}.df-bs-hint{color:var(--df-hint-color, var(--bs-secondary-color, #6c757d));font-size:var(--df-hint-font-size, .875rem);margin-top:var(--df-bs-hint-margin-top, .25rem)}.df-bs-field:has(.df-bs-hint){margin-bottom:var(--df-bs-field-with-hint-margin-bottom, .5rem)}:host([hidden]){display:none!important}\n", ":host{display:block}:host([hidden]){display:none!important}\n"] }]
|
|
1021
945
|
}], propDecorators: { options: [{ type: i0.Input, args: [{ isSignal: true, alias: "options", required: false }] }], props: [{ type: i0.Input, args: [{ isSignal: true, alias: "props", required: false }] }] } });
|
|
1022
946
|
|
|
1023
|
-
var bsRadio_component = /*#__PURE__*/Object.freeze({
|
|
1024
|
-
__proto__: null,
|
|
1025
|
-
default: BsRadioFieldComponent
|
|
1026
|
-
});
|
|
1027
|
-
|
|
1028
947
|
class BsSelectFieldComponent {
|
|
1029
948
|
ngf = injectNgForgeField();
|
|
1030
949
|
options = input([], /* @ts-ignore */
|
|
@@ -1039,8 +958,8 @@ class BsSelectFieldComponent {
|
|
|
1039
958
|
}
|
|
1040
959
|
return fieldValue !== null && compareWith(fieldValue, optionValue);
|
|
1041
960
|
}
|
|
1042
|
-
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "22.
|
|
1043
|
-
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "22.
|
|
961
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "22.1.5", ngImport: i0, type: BsSelectFieldComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
|
|
962
|
+
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "22.1.5", type: BsSelectFieldComponent, isStandalone: true, selector: "df-bs-select", inputs: { options: { classPropertyName: "options", publicName: "options", isSignal: true, isRequired: false, transformFunction: null }, props: { classPropertyName: "props", publicName: "props", isSignal: true, isRequired: false, transformFunction: null } }, hostDirectives: [{ directive: i1.NgForgeFieldHost }], ngImport: i0, template: `
|
|
1044
963
|
@let f = ngf.field(); @let selectId = ngf.key() + '-select';
|
|
1045
964
|
|
|
1046
965
|
<div class="mb-3">
|
|
@@ -1077,7 +996,7 @@ class BsSelectFieldComponent {
|
|
|
1077
996
|
</div>
|
|
1078
997
|
`, isInline: true, styles: [".df-bs-field{display:flex;flex-direction:column;gap:var(--df-field-gap, .5rem);width:100%;margin-bottom:var(--df-bs-field-margin-bottom, 1rem)}.df-bs-label{font-weight:var(--df-label-font-weight, 500);color:var(--df-label-color, inherit);margin-bottom:0}.df-bs-hint{color:var(--df-hint-color, var(--bs-secondary-color, #6c757d));font-size:var(--df-hint-font-size, .875rem);margin-top:var(--df-bs-hint-margin-top, .25rem)}.df-bs-field:has(.df-bs-hint){margin-bottom:var(--df-bs-field-with-hint-margin-bottom, .5rem)}:host([hidden]){display:none!important}\n", ":host([hidden]){display:none!important}\n"], dependencies: [{ kind: "directive", type: FormField, selector: "[formField]", inputs: ["formField"], exportAs: ["formField"] }, { kind: "directive", type: NgForgeControl, selector: "[ngForgeControl]", inputs: ["ngForgeControl"] }, { kind: "pipe", type: DynamicTextPipe, name: "dynamicText" }, { kind: "pipe", type: AsyncPipe, name: "async" }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
|
|
1079
998
|
}
|
|
1080
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "22.
|
|
999
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "22.1.5", ngImport: i0, type: BsSelectFieldComponent, decorators: [{
|
|
1081
1000
|
type: Component,
|
|
1082
1001
|
args: [{ selector: 'df-bs-select', imports: [FormField, DynamicTextPipe, AsyncPipe, NgForgeControl], hostDirectives: [NgForgeFieldHost], template: `
|
|
1083
1002
|
@let f = ngf.field(); @let selectId = ngf.key() + '-select';
|
|
@@ -1117,11 +1036,6 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "22.0.1", ngImpor
|
|
|
1117
1036
|
`, changeDetection: ChangeDetectionStrategy.OnPush, styles: [".df-bs-field{display:flex;flex-direction:column;gap:var(--df-field-gap, .5rem);width:100%;margin-bottom:var(--df-bs-field-margin-bottom, 1rem)}.df-bs-label{font-weight:var(--df-label-font-weight, 500);color:var(--df-label-color, inherit);margin-bottom:0}.df-bs-hint{color:var(--df-hint-color, var(--bs-secondary-color, #6c757d));font-size:var(--df-hint-font-size, .875rem);margin-top:var(--df-bs-hint-margin-top, .25rem)}.df-bs-field:has(.df-bs-hint){margin-bottom:var(--df-bs-field-with-hint-margin-bottom, .5rem)}:host([hidden]){display:none!important}\n", ":host([hidden]){display:none!important}\n"] }]
|
|
1118
1037
|
}], propDecorators: { options: [{ type: i0.Input, args: [{ isSignal: true, alias: "options", required: false }] }], props: [{ type: i0.Input, args: [{ isSignal: true, alias: "props", required: false }] }] } });
|
|
1119
1038
|
|
|
1120
|
-
var bsSelect_component = /*#__PURE__*/Object.freeze({
|
|
1121
|
-
__proto__: null,
|
|
1122
|
-
default: BsSelectFieldComponent
|
|
1123
|
-
});
|
|
1124
|
-
|
|
1125
1039
|
class BsSliderFieldComponent {
|
|
1126
1040
|
ngf = injectNgForgeField();
|
|
1127
1041
|
min = input(0, /* @ts-ignore */
|
|
@@ -1132,8 +1046,8 @@ class BsSliderFieldComponent {
|
|
|
1132
1046
|
...(ngDevMode ? [undefined, { debugName: "step" }] : /* istanbul ignore next */ []));
|
|
1133
1047
|
props = input(/* @ts-ignore */
|
|
1134
1048
|
...(ngDevMode ? [undefined, { debugName: "props" }] : /* istanbul ignore next */ []));
|
|
1135
|
-
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "22.
|
|
1136
|
-
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "22.
|
|
1049
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "22.1.5", ngImport: i0, type: BsSliderFieldComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
|
|
1050
|
+
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "22.1.5", type: BsSliderFieldComponent, isStandalone: true, selector: "df-bs-slider", inputs: { min: { classPropertyName: "min", publicName: "min", isSignal: true, isRequired: false, transformFunction: null }, max: { classPropertyName: "max", publicName: "max", isSignal: true, isRequired: false, transformFunction: null }, step: { classPropertyName: "step", publicName: "step", isSignal: true, isRequired: false, transformFunction: null }, props: { classPropertyName: "props", publicName: "props", isSignal: true, isRequired: false, transformFunction: null } }, hostDirectives: [{ directive: i1.NgForgeFieldHost }], ngImport: i0, template: `
|
|
1137
1051
|
@let f = ngf.field(); @let inputId = ngf.key() + '-input';
|
|
1138
1052
|
|
|
1139
1053
|
<div class="mb-3">
|
|
@@ -1167,7 +1081,7 @@ class BsSliderFieldComponent {
|
|
|
1167
1081
|
</div>
|
|
1168
1082
|
`, isInline: true, styles: [".df-bs-field{display:flex;flex-direction:column;gap:var(--df-field-gap, .5rem);width:100%;margin-bottom:var(--df-bs-field-margin-bottom, 1rem)}.df-bs-label{font-weight:var(--df-label-font-weight, 500);color:var(--df-label-color, inherit);margin-bottom:0}.df-bs-hint{color:var(--df-hint-color, var(--bs-secondary-color, #6c757d));font-size:var(--df-hint-font-size, .875rem);margin-top:var(--df-bs-hint-margin-top, .25rem)}.df-bs-field:has(.df-bs-hint){margin-bottom:var(--df-bs-field-with-hint-margin-bottom, .5rem)}:host([hidden]){display:none!important}\n", ":host{display:block}:host([hidden]){display:none!important}\n"], dependencies: [{ kind: "directive", type: FormField, selector: "[formField]", inputs: ["formField"], exportAs: ["formField"] }, { kind: "directive", type: InputConstraintsDirective, selector: "[dfBsInputConstraints]", inputs: ["dfMin", "dfMax", "dfStep"] }, { kind: "directive", type: NgForgeControl, selector: "[ngForgeControl]", inputs: ["ngForgeControl"] }, { kind: "pipe", type: DynamicTextPipe, name: "dynamicText" }, { kind: "pipe", type: AsyncPipe, name: "async" }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
|
|
1169
1083
|
}
|
|
1170
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "22.
|
|
1084
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "22.1.5", ngImport: i0, type: BsSliderFieldComponent, decorators: [{
|
|
1171
1085
|
type: Component,
|
|
1172
1086
|
args: [{ selector: 'df-bs-slider', imports: [FormField, DynamicTextPipe, AsyncPipe, InputConstraintsDirective, NgForgeControl], hostDirectives: [NgForgeFieldHost], template: `
|
|
1173
1087
|
@let f = ngf.field(); @let inputId = ngf.key() + '-input';
|
|
@@ -1204,17 +1118,12 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "22.0.1", ngImpor
|
|
|
1204
1118
|
`, changeDetection: ChangeDetectionStrategy.OnPush, styles: [".df-bs-field{display:flex;flex-direction:column;gap:var(--df-field-gap, .5rem);width:100%;margin-bottom:var(--df-bs-field-margin-bottom, 1rem)}.df-bs-label{font-weight:var(--df-label-font-weight, 500);color:var(--df-label-color, inherit);margin-bottom:0}.df-bs-hint{color:var(--df-hint-color, var(--bs-secondary-color, #6c757d));font-size:var(--df-hint-font-size, .875rem);margin-top:var(--df-bs-hint-margin-top, .25rem)}.df-bs-field:has(.df-bs-hint){margin-bottom:var(--df-bs-field-with-hint-margin-bottom, .5rem)}:host([hidden]){display:none!important}\n", ":host{display:block}:host([hidden]){display:none!important}\n"] }]
|
|
1205
1119
|
}], propDecorators: { min: [{ type: i0.Input, args: [{ isSignal: true, alias: "min", required: false }] }], max: [{ type: i0.Input, args: [{ isSignal: true, alias: "max", required: false }] }], step: [{ type: i0.Input, args: [{ isSignal: true, alias: "step", required: false }] }], props: [{ type: i0.Input, args: [{ isSignal: true, alias: "props", required: false }] }] } });
|
|
1206
1120
|
|
|
1207
|
-
var bsSlider_component = /*#__PURE__*/Object.freeze({
|
|
1208
|
-
__proto__: null,
|
|
1209
|
-
default: BsSliderFieldComponent
|
|
1210
|
-
});
|
|
1211
|
-
|
|
1212
1121
|
class BsTextareaFieldComponent {
|
|
1213
1122
|
ngf = injectNgForgeField();
|
|
1214
1123
|
props = input(/* @ts-ignore */
|
|
1215
1124
|
...(ngDevMode ? [undefined, { debugName: "props" }] : /* istanbul ignore next */ []));
|
|
1216
|
-
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "22.
|
|
1217
|
-
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "22.
|
|
1125
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "22.1.5", ngImport: i0, type: BsTextareaFieldComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
|
|
1126
|
+
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "22.1.5", type: BsTextareaFieldComponent, isStandalone: true, selector: "df-bs-textarea", inputs: { props: { classPropertyName: "props", publicName: "props", isSignal: true, isRequired: false, transformFunction: null } }, hostDirectives: [{ directive: i1.NgForgeFieldHost }], ngImport: i0, template: `
|
|
1218
1127
|
@let f = ngf.field(); @let p = props(); @let textareaId = ngf.key() + '-textarea';
|
|
1219
1128
|
@if (p?.floatingLabel) {
|
|
1220
1129
|
<!-- Floating label variant -->
|
|
@@ -1280,7 +1189,7 @@ class BsTextareaFieldComponent {
|
|
|
1280
1189
|
}
|
|
1281
1190
|
`, isInline: true, styles: [".df-bs-field{display:flex;flex-direction:column;gap:var(--df-field-gap, .5rem);width:100%;margin-bottom:var(--df-bs-field-margin-bottom, 1rem)}.df-bs-label{font-weight:var(--df-label-font-weight, 500);color:var(--df-label-color, inherit);margin-bottom:0}.df-bs-hint{color:var(--df-hint-color, var(--bs-secondary-color, #6c757d));font-size:var(--df-hint-font-size, .875rem);margin-top:var(--df-bs-hint-margin-top, .25rem)}.df-bs-field:has(.df-bs-hint){margin-bottom:var(--df-bs-field-with-hint-margin-bottom, .5rem)}:host([hidden]){display:none!important}\n", ":host([hidden]){display:none!important}\n"], dependencies: [{ kind: "directive", type: FormField, selector: "[formField]", inputs: ["formField"], exportAs: ["formField"] }, { kind: "directive", type: NgForgeControl, selector: "[ngForgeControl]", inputs: ["ngForgeControl"] }, { kind: "pipe", type: DynamicTextPipe, name: "dynamicText" }, { kind: "pipe", type: AsyncPipe, name: "async" }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
|
|
1282
1191
|
}
|
|
1283
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "22.
|
|
1192
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "22.1.5", ngImport: i0, type: BsTextareaFieldComponent, decorators: [{
|
|
1284
1193
|
type: Component,
|
|
1285
1194
|
args: [{ selector: 'df-bs-textarea', imports: [FormField, DynamicTextPipe, AsyncPipe, NgForgeControl], hostDirectives: [NgForgeFieldHost], template: `
|
|
1286
1195
|
@let f = ngf.field(); @let p = props(); @let textareaId = ngf.key() + '-textarea';
|
|
@@ -1349,17 +1258,12 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "22.0.1", ngImpor
|
|
|
1349
1258
|
`, changeDetection: ChangeDetectionStrategy.OnPush, styles: [".df-bs-field{display:flex;flex-direction:column;gap:var(--df-field-gap, .5rem);width:100%;margin-bottom:var(--df-bs-field-margin-bottom, 1rem)}.df-bs-label{font-weight:var(--df-label-font-weight, 500);color:var(--df-label-color, inherit);margin-bottom:0}.df-bs-hint{color:var(--df-hint-color, var(--bs-secondary-color, #6c757d));font-size:var(--df-hint-font-size, .875rem);margin-top:var(--df-bs-hint-margin-top, .25rem)}.df-bs-field:has(.df-bs-hint){margin-bottom:var(--df-bs-field-with-hint-margin-bottom, .5rem)}:host([hidden]){display:none!important}\n", ":host([hidden]){display:none!important}\n"] }]
|
|
1350
1259
|
}], propDecorators: { props: [{ type: i0.Input, args: [{ isSignal: true, alias: "props", required: false }] }] } });
|
|
1351
1260
|
|
|
1352
|
-
var bsTextarea_component = /*#__PURE__*/Object.freeze({
|
|
1353
|
-
__proto__: null,
|
|
1354
|
-
default: BsTextareaFieldComponent
|
|
1355
|
-
});
|
|
1356
|
-
|
|
1357
1261
|
class BsToggleFieldComponent {
|
|
1358
1262
|
ngf = injectNgForgeField();
|
|
1359
1263
|
props = input(/* @ts-ignore */
|
|
1360
1264
|
...(ngDevMode ? [undefined, { debugName: "props" }] : /* istanbul ignore next */ []));
|
|
1361
|
-
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "22.
|
|
1362
|
-
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "22.
|
|
1265
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "22.1.5", ngImport: i0, type: BsToggleFieldComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
|
|
1266
|
+
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "22.1.5", type: BsToggleFieldComponent, isStandalone: true, selector: "df-bs-toggle", inputs: { props: { classPropertyName: "props", publicName: "props", isSignal: true, isRequired: false, transformFunction: null } }, hostDirectives: [{ directive: i1.NgForgeFieldHost }], ngImport: i0, template: `
|
|
1363
1267
|
@let f = ngf.field(); @let inputId = ngf.key() + '-input';
|
|
1364
1268
|
|
|
1365
1269
|
<div
|
|
@@ -1391,7 +1295,7 @@ class BsToggleFieldComponent {
|
|
|
1391
1295
|
}
|
|
1392
1296
|
`, isInline: true, styles: [".df-bs-field{display:flex;flex-direction:column;gap:var(--df-field-gap, .5rem);width:100%;margin-bottom:var(--df-bs-field-margin-bottom, 1rem)}.df-bs-label{font-weight:var(--df-label-font-weight, 500);color:var(--df-label-color, inherit);margin-bottom:0}.df-bs-hint{color:var(--df-hint-color, var(--bs-secondary-color, #6c757d));font-size:var(--df-hint-font-size, .875rem);margin-top:var(--df-bs-hint-margin-top, .25rem)}.df-bs-field:has(.df-bs-hint){margin-bottom:var(--df-bs-field-with-hint-margin-bottom, .5rem)}:host([hidden]){display:none!important}\n", ":host{display:block}:host([hidden]){display:none!important}.form-switch-sm .form-check-input{width:1.75rem;height:1rem;font-size:.875rem}.form-switch-lg .form-check-input{width:3rem;height:1.75rem;font-size:1.125rem}\n"], dependencies: [{ kind: "directive", type: FormField, selector: "[formField]", inputs: ["formField"], exportAs: ["formField"] }, { kind: "directive", type: NgForgeControl, selector: "[ngForgeControl]", inputs: ["ngForgeControl"] }, { kind: "pipe", type: DynamicTextPipe, name: "dynamicText" }, { kind: "pipe", type: AsyncPipe, name: "async" }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
|
|
1393
1297
|
}
|
|
1394
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "22.
|
|
1298
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "22.1.5", ngImport: i0, type: BsToggleFieldComponent, decorators: [{
|
|
1395
1299
|
type: Component,
|
|
1396
1300
|
args: [{ selector: 'df-bs-toggle', imports: [FormField, DynamicTextPipe, AsyncPipe, NgForgeControl], hostDirectives: [NgForgeFieldHost], template: `
|
|
1397
1301
|
@let f = ngf.field(); @let inputId = ngf.key() + '-input';
|
|
@@ -1426,11 +1330,6 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "22.0.1", ngImpor
|
|
|
1426
1330
|
`, changeDetection: ChangeDetectionStrategy.OnPush, styles: [".df-bs-field{display:flex;flex-direction:column;gap:var(--df-field-gap, .5rem);width:100%;margin-bottom:var(--df-bs-field-margin-bottom, 1rem)}.df-bs-label{font-weight:var(--df-label-font-weight, 500);color:var(--df-label-color, inherit);margin-bottom:0}.df-bs-hint{color:var(--df-hint-color, var(--bs-secondary-color, #6c757d));font-size:var(--df-hint-font-size, .875rem);margin-top:var(--df-bs-hint-margin-top, .25rem)}.df-bs-field:has(.df-bs-hint){margin-bottom:var(--df-bs-field-with-hint-margin-bottom, .5rem)}:host([hidden]){display:none!important}\n", ":host{display:block}:host([hidden]){display:none!important}.form-switch-sm .form-check-input{width:1.75rem;height:1rem;font-size:.875rem}.form-switch-lg .form-check-input{width:3rem;height:1.75rem;font-size:1.125rem}\n"] }]
|
|
1427
1331
|
}], propDecorators: { props: [{ type: i0.Input, args: [{ isSignal: true, alias: "props", required: false }] }] } });
|
|
1428
1332
|
|
|
1429
|
-
var bsToggle_component = /*#__PURE__*/Object.freeze({
|
|
1430
|
-
__proto__: null,
|
|
1431
|
-
default: BsToggleFieldComponent
|
|
1432
|
-
});
|
|
1433
|
-
|
|
1434
1333
|
|
|
1435
1334
|
const BsField = {
|
|
1436
1335
|
Input: 'input',
|
|
@@ -1481,7 +1380,9 @@ function buttonFieldMapper(fieldDef) {
|
|
|
1481
1380
|
key: fieldDef.key,
|
|
1482
1381
|
index: getIndex(),
|
|
1483
1382
|
arrayKey: arrayContext?.arrayKey ?? '',
|
|
1484
|
-
|
|
1383
|
+
get formValue() {
|
|
1384
|
+
return arrayContext?.formValue ?? {};
|
|
1385
|
+
},
|
|
1485
1386
|
template,
|
|
1486
1387
|
};
|
|
1487
1388
|
}
|
|
@@ -1497,10 +1398,20 @@ const BUTTON_FIELD_TYPES_BASE = {
|
|
|
1497
1398
|
renderReadyWhen: [],
|
|
1498
1399
|
valueHandling: 'exclude',
|
|
1499
1400
|
};
|
|
1401
|
+
const loadInputComponent = () => import('@ng-forge/dynamic-forms-bootstrap/lazy/input').then(({ BsInputFieldComponent }) => BsInputFieldComponent);
|
|
1402
|
+
const loadSelectComponent = () => import('@ng-forge/dynamic-forms-bootstrap/lazy/select').then(({ BsSelectFieldComponent }) => BsSelectFieldComponent);
|
|
1403
|
+
const loadCheckboxComponent = () => import('@ng-forge/dynamic-forms-bootstrap/lazy/checkbox').then(({ BsCheckboxFieldComponent }) => BsCheckboxFieldComponent);
|
|
1404
|
+
const loadButtonComponent = () => import('@ng-forge/dynamic-forms-bootstrap/lazy/button').then(({ BsButtonFieldComponent }) => BsButtonFieldComponent);
|
|
1405
|
+
const loadTextareaComponent = () => import('@ng-forge/dynamic-forms-bootstrap/lazy/textarea').then(({ BsTextareaFieldComponent }) => BsTextareaFieldComponent);
|
|
1406
|
+
const loadRadioComponent = () => import('@ng-forge/dynamic-forms-bootstrap/lazy/radio').then(({ BsRadioFieldComponent }) => BsRadioFieldComponent);
|
|
1407
|
+
const loadMultiCheckboxComponent = () => import('@ng-forge/dynamic-forms-bootstrap/lazy/multi-checkbox').then(({ BsMultiCheckboxFieldComponent }) => BsMultiCheckboxFieldComponent);
|
|
1408
|
+
const loadDatepickerComponent = () => import('@ng-forge/dynamic-forms-bootstrap/lazy/datepicker').then(({ BsDatepickerFieldComponent }) => BsDatepickerFieldComponent);
|
|
1409
|
+
const loadSliderComponent = () => import('@ng-forge/dynamic-forms-bootstrap/lazy/slider').then(({ BsSliderFieldComponent }) => BsSliderFieldComponent);
|
|
1410
|
+
const loadToggleComponent = () => import('@ng-forge/dynamic-forms-bootstrap/lazy/toggle').then(({ BsToggleFieldComponent }) => BsToggleFieldComponent);
|
|
1500
1411
|
const BOOTSTRAP_FIELD_TYPES = [
|
|
1501
1412
|
{
|
|
1502
1413
|
name: BsField.Input,
|
|
1503
|
-
loadComponent:
|
|
1414
|
+
loadComponent: loadInputComponent,
|
|
1504
1415
|
mapper: valueFieldMapper,
|
|
1505
1416
|
propsToMeta: ['type'],
|
|
1506
1417
|
scope: ['text-input', 'numeric'],
|
|
@@ -1511,81 +1422,81 @@ const BOOTSTRAP_FIELD_TYPES = [
|
|
|
1511
1422
|
},
|
|
1512
1423
|
{
|
|
1513
1424
|
name: BsField.Select,
|
|
1514
|
-
loadComponent:
|
|
1425
|
+
loadComponent: loadSelectComponent,
|
|
1515
1426
|
mapper: optionsFieldMapper,
|
|
1516
1427
|
scope: 'single-select',
|
|
1517
1428
|
...VALUE_FIELD_TYPES_BASE,
|
|
1518
1429
|
},
|
|
1519
1430
|
{
|
|
1520
1431
|
name: BsField.Checkbox,
|
|
1521
|
-
loadComponent:
|
|
1432
|
+
loadComponent: loadCheckboxComponent,
|
|
1522
1433
|
mapper: checkboxFieldMapper,
|
|
1523
1434
|
scope: 'boolean',
|
|
1524
1435
|
...VALUE_FIELD_TYPES_BASE,
|
|
1525
1436
|
},
|
|
1526
1437
|
{
|
|
1527
1438
|
name: BsField.Button,
|
|
1528
|
-
loadComponent:
|
|
1439
|
+
loadComponent: loadButtonComponent,
|
|
1529
1440
|
mapper: buttonFieldMapper,
|
|
1530
1441
|
...BUTTON_FIELD_TYPES_BASE,
|
|
1531
1442
|
},
|
|
1532
1443
|
{
|
|
1533
1444
|
name: BsField.Submit,
|
|
1534
|
-
loadComponent:
|
|
1445
|
+
loadComponent: loadButtonComponent,
|
|
1535
1446
|
mapper: submitButtonFieldMapper,
|
|
1536
1447
|
...BUTTON_FIELD_TYPES_BASE,
|
|
1537
1448
|
},
|
|
1538
1449
|
{
|
|
1539
1450
|
name: BsField.Next,
|
|
1540
|
-
loadComponent:
|
|
1451
|
+
loadComponent: loadButtonComponent,
|
|
1541
1452
|
mapper: nextButtonFieldMapper,
|
|
1542
1453
|
...BUTTON_FIELD_TYPES_BASE,
|
|
1543
1454
|
},
|
|
1544
1455
|
{
|
|
1545
1456
|
name: BsField.Previous,
|
|
1546
|
-
loadComponent:
|
|
1457
|
+
loadComponent: loadButtonComponent,
|
|
1547
1458
|
mapper: previousButtonFieldMapper,
|
|
1548
1459
|
...BUTTON_FIELD_TYPES_BASE,
|
|
1549
1460
|
},
|
|
1550
1461
|
{
|
|
1551
1462
|
name: BsField.AddArrayItem,
|
|
1552
|
-
loadComponent:
|
|
1463
|
+
loadComponent: loadButtonComponent,
|
|
1553
1464
|
mapper: addArrayItemButtonMapper,
|
|
1554
1465
|
...BUTTON_FIELD_TYPES_BASE,
|
|
1555
1466
|
},
|
|
1556
1467
|
{
|
|
1557
1468
|
name: BsField.PrependArrayItem,
|
|
1558
|
-
loadComponent:
|
|
1469
|
+
loadComponent: loadButtonComponent,
|
|
1559
1470
|
mapper: prependArrayItemButtonMapper,
|
|
1560
1471
|
...BUTTON_FIELD_TYPES_BASE,
|
|
1561
1472
|
},
|
|
1562
1473
|
{
|
|
1563
1474
|
name: BsField.InsertArrayItem,
|
|
1564
|
-
loadComponent:
|
|
1475
|
+
loadComponent: loadButtonComponent,
|
|
1565
1476
|
mapper: insertArrayItemButtonMapper,
|
|
1566
1477
|
...BUTTON_FIELD_TYPES_BASE,
|
|
1567
1478
|
},
|
|
1568
1479
|
{
|
|
1569
1480
|
name: BsField.RemoveArrayItem,
|
|
1570
|
-
loadComponent:
|
|
1481
|
+
loadComponent: loadButtonComponent,
|
|
1571
1482
|
mapper: removeArrayItemButtonMapper,
|
|
1572
1483
|
...BUTTON_FIELD_TYPES_BASE,
|
|
1573
1484
|
},
|
|
1574
1485
|
{
|
|
1575
1486
|
name: BsField.PopArrayItem,
|
|
1576
|
-
loadComponent:
|
|
1487
|
+
loadComponent: loadButtonComponent,
|
|
1577
1488
|
mapper: popArrayItemButtonMapper,
|
|
1578
1489
|
...BUTTON_FIELD_TYPES_BASE,
|
|
1579
1490
|
},
|
|
1580
1491
|
{
|
|
1581
1492
|
name: BsField.ShiftArrayItem,
|
|
1582
|
-
loadComponent:
|
|
1493
|
+
loadComponent: loadButtonComponent,
|
|
1583
1494
|
mapper: shiftArrayItemButtonMapper,
|
|
1584
1495
|
...BUTTON_FIELD_TYPES_BASE,
|
|
1585
1496
|
},
|
|
1586
1497
|
{
|
|
1587
1498
|
name: BsField.Textarea,
|
|
1588
|
-
loadComponent:
|
|
1499
|
+
loadComponent: loadTextareaComponent,
|
|
1589
1500
|
mapper: valueFieldMapper,
|
|
1590
1501
|
propsToMeta: ['rows'],
|
|
1591
1502
|
scope: 'text-input',
|
|
@@ -1593,35 +1504,35 @@ const BOOTSTRAP_FIELD_TYPES = [
|
|
|
1593
1504
|
},
|
|
1594
1505
|
{
|
|
1595
1506
|
name: BsField.Radio,
|
|
1596
|
-
loadComponent:
|
|
1507
|
+
loadComponent: loadRadioComponent,
|
|
1597
1508
|
mapper: optionsFieldMapper,
|
|
1598
1509
|
scope: 'single-select',
|
|
1599
1510
|
...VALUE_FIELD_TYPES_BASE,
|
|
1600
1511
|
},
|
|
1601
1512
|
{
|
|
1602
1513
|
name: BsField.MultiCheckbox,
|
|
1603
|
-
loadComponent:
|
|
1514
|
+
loadComponent: loadMultiCheckboxComponent,
|
|
1604
1515
|
mapper: optionsFieldMapper,
|
|
1605
1516
|
scope: 'multi-select',
|
|
1606
1517
|
...VALUE_FIELD_TYPES_BASE,
|
|
1607
1518
|
},
|
|
1608
1519
|
{
|
|
1609
1520
|
name: BsField.Datepicker,
|
|
1610
|
-
loadComponent:
|
|
1521
|
+
loadComponent: loadDatepickerComponent,
|
|
1611
1522
|
mapper: datepickerFieldMapper,
|
|
1612
1523
|
scope: 'date',
|
|
1613
1524
|
...VALUE_FIELD_TYPES_BASE,
|
|
1614
1525
|
},
|
|
1615
1526
|
{
|
|
1616
1527
|
name: BsField.Slider,
|
|
1617
|
-
loadComponent:
|
|
1528
|
+
loadComponent: loadSliderComponent,
|
|
1618
1529
|
mapper: valueFieldMapper,
|
|
1619
1530
|
scope: 'numeric',
|
|
1620
1531
|
...VALUE_FIELD_TYPES_BASE,
|
|
1621
1532
|
},
|
|
1622
1533
|
{
|
|
1623
1534
|
name: BsField.Toggle,
|
|
1624
|
-
loadComponent:
|
|
1535
|
+
loadComponent: loadToggleComponent,
|
|
1625
1536
|
mapper: checkboxFieldMapper,
|
|
1626
1537
|
scope: 'boolean',
|
|
1627
1538
|
...VALUE_FIELD_TYPES_BASE,
|
|
@@ -1629,8 +1540,13 @@ const BOOTSTRAP_FIELD_TYPES = [
|
|
|
1629
1540
|
];
|
|
1630
1541
|
|
|
1631
1542
|
|
|
1543
|
+
const BOOTSTRAP_FIELD_ERRORS_WRAPPER = {
|
|
1544
|
+
wrapperName: 'field-errors',
|
|
1545
|
+
loadComponent: () => import('./ng-forge-dynamic-forms-bootstrap-bs-field-errors-wrapper.component-D4qTxFSp.mjs'),
|
|
1546
|
+
rendersFieldErrors: true,
|
|
1547
|
+
};
|
|
1632
1548
|
function withBootstrapFields(config) {
|
|
1633
|
-
const base = [...BOOTSTRAP_FIELD_TYPES, withBootstrapAddons()];
|
|
1549
|
+
const base = [...BOOTSTRAP_FIELD_TYPES, withBootstrapAddons(), BOOTSTRAP_FIELD_ERRORS_WRAPPER];
|
|
1634
1550
|
if (config) {
|
|
1635
1551
|
base.push({
|
|
1636
1552
|
ɵkind: 'bootstrap-config',
|
|
@@ -1643,7 +1559,7 @@ function withBootstrapFields(config) {
|
|
|
1643
1559
|
/* -- Bootstrap addon types --------------------------------------------- */
|
|
1644
1560
|
const BS_ICON_KIND = {
|
|
1645
1561
|
type: 'bs-icon',
|
|
1646
|
-
loadComponent: () =>
|
|
1562
|
+
loadComponent: () => import('@ng-forge/dynamic-forms-bootstrap/lazy/addon-icon').then((m) => m.BsIconAddonComponent),
|
|
1647
1563
|
validate: (addon, fieldKey) => {
|
|
1648
1564
|
if (typeof addon.icon !== 'string' || addon.icon.length === 0) {
|
|
1649
1565
|
throw new DynamicFormError(`Addon type 'bs-icon' requires a non-empty 'icon' string (field: '${fieldKey}').`);
|
|
@@ -1652,7 +1568,7 @@ const BS_ICON_KIND = {
|
|
|
1652
1568
|
};
|
|
1653
1569
|
const BS_BUTTON_KIND = {
|
|
1654
1570
|
type: 'bs-button',
|
|
1655
|
-
loadComponent: () =>
|
|
1571
|
+
loadComponent: () => import('@ng-forge/dynamic-forms-bootstrap/lazy/addon-button').then((m) => m.BsButtonAddonComponent),
|
|
1656
1572
|
validate: (addon, fieldKey) => {
|
|
1657
1573
|
const set = [addon.preset, addon.actionRef, addon.action].filter((v) => v !== undefined);
|
|
1658
1574
|
if (set.length > 1) {
|
|
@@ -1684,10 +1600,10 @@ class BsIconAddonComponent {
|
|
|
1684
1600
|
...(ngDevMode ? [{ debugName: "ariaLabel" }] : /* istanbul ignore next */ []));
|
|
1685
1601
|
hasAriaLabel = computed(() => this.addon().ariaLabel !== undefined, /* @ts-ignore */
|
|
1686
1602
|
...(ngDevMode ? [{ debugName: "hasAriaLabel" }] : /* istanbul ignore next */ []));
|
|
1687
|
-
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "22.
|
|
1688
|
-
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.1.0", version: "22.
|
|
1603
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "22.1.5", ngImport: i0, type: BsIconAddonComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
|
|
1604
|
+
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.1.0", version: "22.1.5", type: BsIconAddonComponent, isStandalone: true, selector: "df-bs-icon-addon", inputs: { addon: { classPropertyName: "addon", publicName: "addon", isSignal: true, isRequired: true, transformFunction: null }, fieldInputs: { classPropertyName: "fieldInputs", publicName: "fieldInputs", isSignal: true, isRequired: false, transformFunction: null } }, host: { properties: { "attr.aria-hidden": "hasAriaLabel() ? null : \"true\"" } }, ngImport: i0, template: `<i [class]="iconClass()" [attr.aria-label]="(ariaLabel() | dynamicText | async) ?? null"></i>`, isInline: true, dependencies: [{ kind: "pipe", type: AsyncPipe, name: "async" }, { kind: "pipe", type: DynamicTextPipe, name: "dynamicText" }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
|
|
1689
1605
|
}
|
|
1690
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "22.
|
|
1606
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "22.1.5", ngImport: i0, type: BsIconAddonComponent, decorators: [{
|
|
1691
1607
|
type: Component,
|
|
1692
1608
|
args: [{
|
|
1693
1609
|
selector: 'df-bs-icon-addon',
|
|
@@ -1700,11 +1616,6 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "22.0.1", ngImpor
|
|
|
1700
1616
|
}]
|
|
1701
1617
|
}], propDecorators: { addon: [{ type: i0.Input, args: [{ isSignal: true, alias: "addon", required: true }] }], fieldInputs: [{ type: i0.Input, args: [{ isSignal: true, alias: "fieldInputs", required: false }] }] } });
|
|
1702
1618
|
|
|
1703
|
-
var bsIconAddon_component = /*#__PURE__*/Object.freeze({
|
|
1704
|
-
__proto__: null,
|
|
1705
|
-
BsIconAddonComponent: BsIconAddonComponent
|
|
1706
|
-
});
|
|
1707
|
-
|
|
1708
1619
|
class BsButtonAddonComponent {
|
|
1709
1620
|
action = injectNgForgeAddonAction();
|
|
1710
1621
|
addon = this.action.addon;
|
|
@@ -1719,8 +1630,8 @@ class BsButtonAddonComponent {
|
|
|
1719
1630
|
...(ngDevMode ? [{ debugName: "iconClass" }] : /* istanbul ignore next */ []));
|
|
1720
1631
|
buttonClass = computed(() => `btn btn-outline-${this.addon().severity ?? 'secondary'}`, /* @ts-ignore */
|
|
1721
1632
|
...(ngDevMode ? [{ debugName: "buttonClass" }] : /* istanbul ignore next */ []));
|
|
1722
|
-
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "22.
|
|
1723
|
-
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "22.
|
|
1633
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "22.1.5", ngImport: i0, type: BsButtonAddonComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
|
|
1634
|
+
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "22.1.5", type: BsButtonAddonComponent, isStandalone: true, selector: "df-bs-button-addon", hostDirectives: [{ directive: i1.NgForgeAddonAction }], ngImport: i0, template: `
|
|
1724
1635
|
<button
|
|
1725
1636
|
type="button"
|
|
1726
1637
|
[class]="buttonClass()"
|
|
@@ -1742,7 +1653,7 @@ class BsButtonAddonComponent {
|
|
|
1742
1653
|
</button>
|
|
1743
1654
|
`, isInline: true, dependencies: [{ kind: "pipe", type: DynamicTextPipe, name: "dynamicText" }, { kind: "pipe", type: AsyncPipe, name: "async" }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
|
|
1744
1655
|
}
|
|
1745
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "22.
|
|
1656
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "22.1.5", ngImport: i0, type: BsButtonAddonComponent, decorators: [{
|
|
1746
1657
|
type: Component,
|
|
1747
1658
|
args: [{
|
|
1748
1659
|
selector: 'df-bs-button-addon',
|
|
@@ -1773,12 +1684,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "22.0.1", ngImpor
|
|
|
1773
1684
|
}]
|
|
1774
1685
|
}] });
|
|
1775
1686
|
|
|
1776
|
-
var bsButtonAddon_component = /*#__PURE__*/Object.freeze({
|
|
1777
|
-
__proto__: null,
|
|
1778
|
-
BsButtonAddonComponent: BsButtonAddonComponent
|
|
1779
|
-
});
|
|
1780
|
-
|
|
1781
1687
|
|
|
1782
1688
|
|
|
1783
|
-
export {
|
|
1689
|
+
export { BOOTSTRAP_FIELD_TYPES, BsButtonAddonComponent, BsButtonFieldComponent, BsCheckboxFieldComponent, BsDatepickerFieldComponent, BsField, BsIconAddonComponent, BsInputFieldComponent, BsMultiCheckboxFieldComponent, BsRadioFieldComponent, BsSelectFieldComponent, BsSliderFieldComponent, BsTextareaFieldComponent, BsToggleFieldComponent, withBootstrapAddons, withBootstrapFields };
|
|
1784
1690
|
//# sourceMappingURL=ng-forge-dynamic-forms-bootstrap.mjs.map
|