@ng-forge/dynamic-forms-ionic 1.2.0-next.1 → 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-ionic-ionic-field-errors-wrapper.component-CN0CagvT.mjs +26 -0
- package/fesm2022/ng-forge-dynamic-forms-ionic-ionic-field-errors-wrapper.component-CN0CagvT.mjs.map +1 -0
- package/fesm2022/ng-forge-dynamic-forms-ionic-lazy-addon-button.mjs +75 -0
- package/fesm2022/ng-forge-dynamic-forms-ionic-lazy-addon-button.mjs.map +1 -0
- package/fesm2022/ng-forge-dynamic-forms-ionic-lazy-addon-icon.mjs +36 -0
- package/fesm2022/ng-forge-dynamic-forms-ionic-lazy-addon-icon.mjs.map +1 -0
- package/fesm2022/ng-forge-dynamic-forms-ionic-lazy-button.mjs +70 -0
- package/fesm2022/ng-forge-dynamic-forms-ionic-lazy-button.mjs.map +1 -0
- package/fesm2022/ng-forge-dynamic-forms-ionic-lazy-checkbox.mjs +67 -0
- package/fesm2022/ng-forge-dynamic-forms-ionic-lazy-checkbox.mjs.map +1 -0
- package/fesm2022/ng-forge-dynamic-forms-ionic-lazy-datepicker.mjs +195 -0
- package/fesm2022/ng-forge-dynamic-forms-ionic-lazy-datepicker.mjs.map +1 -0
- package/fesm2022/ng-forge-dynamic-forms-ionic-lazy-input.mjs +211 -0
- package/fesm2022/ng-forge-dynamic-forms-ionic-lazy-input.mjs.map +1 -0
- package/fesm2022/ng-forge-dynamic-forms-ionic-lazy-multi-checkbox.mjs +139 -0
- package/fesm2022/ng-forge-dynamic-forms-ionic-lazy-multi-checkbox.mjs.map +1 -0
- package/fesm2022/ng-forge-dynamic-forms-ionic-lazy-radio.mjs +98 -0
- package/fesm2022/ng-forge-dynamic-forms-ionic-lazy-radio.mjs.map +1 -0
- package/fesm2022/ng-forge-dynamic-forms-ionic-lazy-select.mjs +92 -0
- package/fesm2022/ng-forge-dynamic-forms-ionic-lazy-select.mjs.map +1 -0
- package/fesm2022/ng-forge-dynamic-forms-ionic-lazy-slider.mjs +76 -0
- package/fesm2022/ng-forge-dynamic-forms-ionic-lazy-slider.mjs.map +1 -0
- package/fesm2022/ng-forge-dynamic-forms-ionic-lazy-textarea.mjs +96 -0
- package/fesm2022/ng-forge-dynamic-forms-ionic-lazy-textarea.mjs.map +1 -0
- package/fesm2022/ng-forge-dynamic-forms-ionic-lazy-toggle.mjs +146 -0
- package/fesm2022/ng-forge-dynamic-forms-ionic-lazy-toggle.mjs.map +1 -0
- package/fesm2022/ng-forge-dynamic-forms-ionic-shared.mjs +83 -0
- package/fesm2022/ng-forge-dynamic-forms-ionic-shared.mjs.map +1 -0
- package/fesm2022/ng-forge-dynamic-forms-ionic.mjs +82 -197
- package/fesm2022/ng-forge-dynamic-forms-ionic.mjs.map +1 -1
- package/package.json +57 -5
- package/types/ng-forge-dynamic-forms-ionic-lazy-addon-button.d.ts +29 -0
- package/types/ng-forge-dynamic-forms-ionic-lazy-addon-icon.d.ts +18 -0
- package/types/ng-forge-dynamic-forms-ionic-lazy-button.d.ts +119 -0
- package/types/ng-forge-dynamic-forms-ionic-lazy-checkbox.d.ts +23 -0
- package/types/ng-forge-dynamic-forms-ionic-lazy-datepicker.d.ts +39 -0
- package/types/ng-forge-dynamic-forms-ionic-lazy-input.d.ts +70 -0
- package/types/ng-forge-dynamic-forms-ionic-lazy-multi-checkbox.d.ts +28 -0
- package/types/ng-forge-dynamic-forms-ionic-lazy-radio.d.ts +25 -0
- package/types/ng-forge-dynamic-forms-ionic-lazy-select.d.ts +31 -0
- package/types/ng-forge-dynamic-forms-ionic-lazy-slider.d.ts +43 -0
- package/types/ng-forge-dynamic-forms-ionic-lazy-textarea.d.ts +28 -0
- package/types/ng-forge-dynamic-forms-ionic-lazy-toggle.d.ts +66 -0
- package/types/ng-forge-dynamic-forms-ionic-shared.d.ts +116 -0
- package/types/ng-forge-dynamic-forms-ionic.d.ts +10 -164
|
@@ -1,13 +1,15 @@
|
|
|
1
1
|
import * as i0 from '@angular/core';
|
|
2
|
-
import { input, computed, ChangeDetectionStrategy, Component, signal, inject,
|
|
3
|
-
import { IonButton, IonCheckbox, IonNote, IonInput, IonModal, IonDatetime, IonButtons, IonHeader, IonContent, IonToolbar, IonTitle,
|
|
2
|
+
import { input, computed, ChangeDetectionStrategy, Component, signal, inject, ElementRef, DestroyRef, forwardRef, linkedSignal, model, isSignal } from '@angular/core';
|
|
3
|
+
import { IonButton, IonCheckbox, IonNote, IonInput, IonModal, IonDatetime, IonButtons, IonHeader, IonContent, IonToolbar, IonTitle, IonItem, IonRadioGroup, IonRadio, IonSelect, IonSelectOption, IonRange, IonTextarea, IonToggle, IonIcon, IonSpinner } from '@ionic/angular/standalone';
|
|
4
4
|
import { AsyncPipe } from '@angular/common';
|
|
5
5
|
import * as i1 from '@ng-forge/dynamic-forms/integration';
|
|
6
|
-
import { injectNgForgeAction, DynamicTextPipe, NgForgeActionHost, injectNgForgeField, NgForgeControl, NgForgeFieldHost,
|
|
6
|
+
import { injectNgForgeAction, DynamicTextPipe, NgForgeActionHost, injectNgForgeField, NgForgeControl, NgForgeFieldHost, injectNgForgeAddons, DfAddonSlot, ADDON_PRESET_HANDLER, FIELD_SIGNAL_CONTEXT, NgForgeAddons, isEqual, NgForgeHostControl, 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';
|
|
7
7
|
import { FormField } from '@angular/forms/signals';
|
|
8
8
|
import { format } from 'date-fns';
|
|
9
9
|
import { DynamicFormLogger, DynamicFormError } from '@ng-forge/dynamic-forms';
|
|
10
10
|
import { explicitEffect } from 'ngxtension/explicit-effect';
|
|
11
|
+
import { IONIC_CONFIG, IONIC_INPUT_TYPE_OVERRIDE, IonicInlineButtonAddonComponent, runIonicPresetAction } from '@ng-forge/dynamic-forms-ionic/shared';
|
|
12
|
+
export { IONIC_CONFIG, IONIC_INPUT_TYPE_OVERRIDE } from '@ng-forge/dynamic-forms-ionic/shared';
|
|
11
13
|
|
|
12
14
|
class IonicButtonFieldComponent {
|
|
13
15
|
action = injectNgForgeAction();
|
|
@@ -22,8 +24,8 @@ class IonicButtonFieldComponent {
|
|
|
22
24
|
return;
|
|
23
25
|
this.action.dispatch();
|
|
24
26
|
}
|
|
25
|
-
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "22.
|
|
26
|
-
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.1.0", version: "22.
|
|
27
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "22.1.5", ngImport: i0, type: IonicButtonFieldComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
|
|
28
|
+
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.1.0", version: "22.1.5", type: IonicButtonFieldComponent, isStandalone: true, selector: "df-ion-button", inputs: { props: { classPropertyName: "props", publicName: "props", isSignal: true, isRequired: false, transformFunction: null } }, hostDirectives: [{ directive: i1.NgForgeActionHost }], ngImport: i0, template: `
|
|
27
29
|
@let buttonId = action.key() + '-button';
|
|
28
30
|
|
|
29
31
|
<ion-button
|
|
@@ -44,7 +46,7 @@ class IonicButtonFieldComponent {
|
|
|
44
46
|
</ion-button>
|
|
45
47
|
`, isInline: true, styles: [":host([hidden]){display:none!important}\n"], dependencies: [{ kind: "component", type: IonButton, selector: "ion-button", inputs: ["buttonType", "color", "disabled", "download", "expand", "fill", "form", "href", "mode", "rel", "routerAnimation", "routerDirection", "shape", "size", "strong", "target", "type"] }, { kind: "pipe", type: DynamicTextPipe, name: "dynamicText" }, { kind: "pipe", type: AsyncPipe, name: "async" }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
|
|
46
48
|
}
|
|
47
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "22.
|
|
49
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "22.1.5", ngImport: i0, type: IonicButtonFieldComponent, decorators: [{
|
|
48
50
|
type: Component,
|
|
49
51
|
args: [{ selector: 'df-ion-button', imports: [IonButton, DynamicTextPipe, AsyncPipe], hostDirectives: [NgForgeActionHost], template: `
|
|
50
52
|
@let buttonId = action.key() + '-button';
|
|
@@ -68,18 +70,13 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "22.0.1", ngImpor
|
|
|
68
70
|
`, changeDetection: ChangeDetectionStrategy.OnPush, styles: [":host([hidden]){display:none!important}\n"] }]
|
|
69
71
|
}], propDecorators: { props: [{ type: i0.Input, args: [{ isSignal: true, alias: "props", required: false }] }] } });
|
|
70
72
|
|
|
71
|
-
var ionicButton_component = /*#__PURE__*/Object.freeze({
|
|
72
|
-
__proto__: null,
|
|
73
|
-
default: IonicButtonFieldComponent
|
|
74
|
-
});
|
|
75
|
-
|
|
76
73
|
|
|
77
74
|
class IonicCheckboxFieldComponent {
|
|
78
75
|
ngf = injectNgForgeField();
|
|
79
76
|
props = input(/* @ts-ignore */
|
|
80
77
|
...(ngDevMode ? [undefined, { debugName: "props" }] : /* istanbul ignore next */ []));
|
|
81
|
-
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "22.
|
|
82
|
-
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "22.
|
|
78
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "22.1.5", ngImport: i0, type: IonicCheckboxFieldComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
|
|
79
|
+
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "22.1.5", type: IonicCheckboxFieldComponent, isStandalone: true, selector: "df-ion-checkbox", inputs: { props: { classPropertyName: "props", publicName: "props", isSignal: true, isRequired: false, transformFunction: null } }, hostDirectives: [{ directive: i1.NgForgeFieldHost }], ngImport: i0, template: `
|
|
83
80
|
@let f = ngf.field();
|
|
84
81
|
@let checkboxId = ngf.key() + '-checkbox';
|
|
85
82
|
|
|
@@ -103,7 +100,7 @@ class IonicCheckboxFieldComponent {
|
|
|
103
100
|
}
|
|
104
101
|
`, isInline: true, styles: [".df-ion-field{display:flex;flex-direction:column;gap:var(--df-field-gap, .5rem);width:100%}.df-ion-label{font-weight:var(--df-label-font-weight, 500);color:var(--df-label-color, inherit)}.df-ion-hint{display:block;color:var(--df-hint-color, var(--ion-color-medium, #92949c));font-size:var(--df-hint-font-size, .875rem)}.df-ion-error{display:block;color:var(--df-error-color, var(--ion-color-danger, #eb445a));font-size:var(--df-error-font-size, .875rem)}:host([hidden]){display:none!important}\n", ":host{display:block}:host([hidden]){display:none!important}\n"], dependencies: [{ kind: "component", type: IonCheckbox, selector: "ion-checkbox", inputs: ["checked", "color", "disabled", "errorText", "helperText", "indeterminate", "justify", "labelPlacement", "mode", "name", "value"] }, { kind: "component", type: IonNote, selector: "ion-note", inputs: ["color", "mode"] }, { 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 });
|
|
105
102
|
}
|
|
106
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "22.
|
|
103
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "22.1.5", ngImport: i0, type: IonicCheckboxFieldComponent, decorators: [{
|
|
107
104
|
type: Component,
|
|
108
105
|
args: [{ selector: 'df-ion-checkbox', imports: [IonCheckbox, IonNote, FormField, DynamicTextPipe, AsyncPipe, NgForgeControl], hostDirectives: [NgForgeFieldHost], template: `
|
|
109
106
|
@let f = ngf.field();
|
|
@@ -130,11 +127,6 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "22.0.1", ngImpor
|
|
|
130
127
|
`, changeDetection: ChangeDetectionStrategy.OnPush, styles: [".df-ion-field{display:flex;flex-direction:column;gap:var(--df-field-gap, .5rem);width:100%}.df-ion-label{font-weight:var(--df-label-font-weight, 500);color:var(--df-label-color, inherit)}.df-ion-hint{display:block;color:var(--df-hint-color, var(--ion-color-medium, #92949c));font-size:var(--df-hint-font-size, .875rem)}.df-ion-error{display:block;color:var(--df-error-color, var(--ion-color-danger, #eb445a));font-size:var(--df-error-font-size, .875rem)}:host([hidden]){display:none!important}\n", ":host{display:block}:host([hidden]){display:none!important}\n"] }]
|
|
131
128
|
}], propDecorators: { props: [{ type: i0.Input, args: [{ isSignal: true, alias: "props", required: false }] }] } });
|
|
132
129
|
|
|
133
|
-
var ionicCheckbox_component = /*#__PURE__*/Object.freeze({
|
|
134
|
-
__proto__: null,
|
|
135
|
-
default: IonicCheckboxFieldComponent
|
|
136
|
-
});
|
|
137
|
-
|
|
138
130
|
class IonicDatepickerFieldComponent {
|
|
139
131
|
ngf = injectNgForgeField();
|
|
140
132
|
minDate = input(null, /* @ts-ignore */
|
|
@@ -191,8 +183,8 @@ class IonicDatepickerFieldComponent {
|
|
|
191
183
|
return format(date, 'MMM d, yyyy');
|
|
192
184
|
}
|
|
193
185
|
}
|
|
194
|
-
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "22.
|
|
195
|
-
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "22.
|
|
186
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "22.1.5", ngImport: i0, type: IonicDatepickerFieldComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
|
|
187
|
+
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "22.1.5", type: IonicDatepickerFieldComponent, isStandalone: true, selector: "df-ion-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: `
|
|
196
188
|
@let f = ngf.field();
|
|
197
189
|
@let dateValue = f().value();
|
|
198
190
|
@let inputId = ngf.key() + '-input';
|
|
@@ -247,7 +239,7 @@ class IonicDatepickerFieldComponent {
|
|
|
247
239
|
</ion-modal>
|
|
248
240
|
`, isInline: true, styles: [".df-ion-field{display:flex;flex-direction:column;gap:var(--df-field-gap, .5rem);width:100%}.df-ion-label{font-weight:var(--df-label-font-weight, 500);color:var(--df-label-color, inherit)}.df-ion-hint{display:block;color:var(--df-hint-color, var(--ion-color-medium, #92949c));font-size:var(--df-hint-font-size, .875rem)}.df-ion-error{display:block;color:var(--df-error-color, var(--ion-color-danger, #eb445a));font-size:var(--df-error-font-size, .875rem)}:host([hidden]){display:none!important}\n", "ion-input{cursor:pointer}:host([hidden]){display:none!important}\n"], dependencies: [{ kind: "component", type: IonInput, selector: "ion-input", inputs: ["accept", "autocapitalize", "autocomplete", "autocorrect", "autofocus", "clearInput", "clearOnEdit", "color", "counter", "counterFormatter", "debounce", "disabled", "enterkeyhint", "errorText", "fill", "helperText", "inputmode", "label", "labelPlacement", "max", "maxlength", "min", "minlength", "mode", "multiple", "name", "pattern", "placeholder", "readonly", "required", "shape", "size", "spellcheck", "step", "type", "value"] }, { kind: "component", type: IonModal, selector: "ion-modal" }, { kind: "component", type: IonDatetime, selector: "ion-datetime", inputs: ["cancelText", "clearText", "color", "dayValues", "disabled", "doneText", "firstDayOfWeek", "formatOptions", "highlightedDates", "hourCycle", "hourValues", "isDateEnabled", "locale", "max", "min", "minuteValues", "mode", "monthValues", "multiple", "name", "preferWheel", "presentation", "readonly", "showAdjacentDays", "showClearButton", "showDefaultButtons", "showDefaultTimeLabel", "showDefaultTitle", "size", "titleSelectedDatesFormatter", "value", "yearValues"] }, { kind: "component", type: IonNote, selector: "ion-note", inputs: ["color", "mode"] }, { kind: "component", type: IonButtons, selector: "ion-buttons", inputs: ["collapse"] }, { kind: "component", type: IonHeader, selector: "ion-header", inputs: ["collapse", "mode", "translucent"] }, { kind: "component", type: IonContent, selector: "ion-content", inputs: ["color", "fixedSlotPlacement", "forceOverscroll", "fullscreen", "scrollEvents", "scrollX", "scrollY"] }, { kind: "component", type: IonToolbar, selector: "ion-toolbar", inputs: ["color", "mode"] }, { kind: "component", type: IonTitle, selector: "ion-title", inputs: ["color", "size"] }, { kind: "component", type: IonButton, selector: "ion-button", inputs: ["buttonType", "color", "disabled", "download", "expand", "fill", "form", "href", "mode", "rel", "routerAnimation", "routerDirection", "shape", "size", "strong", "target", "type"] }, { kind: "directive", type: NgForgeControl, selector: "[ngForgeControl]", inputs: ["ngForgeControl"] }, { kind: "pipe", type: DynamicTextPipe, name: "dynamicText" }, { kind: "pipe", type: AsyncPipe, name: "async" }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
|
|
249
241
|
}
|
|
250
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "22.
|
|
242
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "22.1.5", ngImport: i0, type: IonicDatepickerFieldComponent, decorators: [{
|
|
251
243
|
type: Component,
|
|
252
244
|
args: [{ selector: 'df-ion-datepicker', imports: [
|
|
253
245
|
IonInput,
|
|
@@ -319,83 +311,6 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "22.0.1", ngImpor
|
|
|
319
311
|
`, changeDetection: ChangeDetectionStrategy.OnPush, styles: [".df-ion-field{display:flex;flex-direction:column;gap:var(--df-field-gap, .5rem);width:100%}.df-ion-label{font-weight:var(--df-label-font-weight, 500);color:var(--df-label-color, inherit)}.df-ion-hint{display:block;color:var(--df-hint-color, var(--ion-color-medium, #92949c));font-size:var(--df-hint-font-size, .875rem)}.df-ion-error{display:block;color:var(--df-error-color, var(--ion-color-danger, #eb445a));font-size:var(--df-error-font-size, .875rem)}:host([hidden]){display:none!important}\n", "ion-input{cursor:pointer}:host([hidden]){display:none!important}\n"] }]
|
|
320
312
|
}], 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 }] }] } });
|
|
321
313
|
|
|
322
|
-
var ionicDatepicker_component = /*#__PURE__*/Object.freeze({
|
|
323
|
-
__proto__: null,
|
|
324
|
-
default: IonicDatepickerFieldComponent
|
|
325
|
-
});
|
|
326
|
-
|
|
327
|
-
function runIonicPresetAction(preset, ctx, collaborators) {
|
|
328
|
-
return runPresetAction(preset, ctx, collaborators, 'Ionic', 'ion-input');
|
|
329
|
-
}
|
|
330
|
-
|
|
331
|
-
class IonicInlineButtonAddonComponent {
|
|
332
|
-
injector = inject(Injector);
|
|
333
|
-
action = injectNgForgeAddonAction();
|
|
334
|
-
addon = this.action.addon;
|
|
335
|
-
label = computed(() => this.addon().label, /* @ts-ignore */
|
|
336
|
-
...(ngDevMode ? [{ debugName: "label" }] : /* istanbul ignore next */ []));
|
|
337
|
-
ariaLabel = computed(() => this.addon().ariaLabel, /* @ts-ignore */
|
|
338
|
-
...(ngDevMode ? [{ debugName: "ariaLabel" }] : /* istanbul ignore next */ []));
|
|
339
|
-
icon = computed(() => this.addon().icon, /* @ts-ignore */
|
|
340
|
-
...(ngDevMode ? [{ debugName: "icon" }] : /* istanbul ignore next */ []));
|
|
341
|
-
color = computed(() => this.addon().color, /* @ts-ignore */
|
|
342
|
-
...(ngDevMode ? [{ debugName: "color" }] : /* istanbul ignore next */ []));
|
|
343
|
-
fill = computed(() => this.addon().fill ?? 'clear', /* @ts-ignore */
|
|
344
|
-
...(ngDevMode ? [{ debugName: "fill" }] : /* istanbul ignore next */ []));
|
|
345
|
-
iconOnly = computed(() => !!this.icon() && !this.label(), /* @ts-ignore */
|
|
346
|
-
...(ngDevMode ? [{ debugName: "iconOnly" }] : /* istanbul ignore next */ []));
|
|
347
|
-
_ariaLabelSignal = signal(undefined, /* @ts-ignore */
|
|
348
|
-
...(ngDevMode ? [{ debugName: "_ariaLabelSignal" }] : /* istanbul ignore next */ []));
|
|
349
|
-
resolvedAriaLabel = computed(() => this._ariaLabelSignal()?.() ?? undefined, /* @ts-ignore */
|
|
350
|
-
...(ngDevMode ? [{ debugName: "resolvedAriaLabel" }] : /* istanbul ignore next */ []));
|
|
351
|
-
constructor() {
|
|
352
|
-
explicitEffect([this.ariaLabel], ([raw]) => {
|
|
353
|
-
if (raw === undefined) {
|
|
354
|
-
this._ariaLabelSignal.set(undefined);
|
|
355
|
-
return;
|
|
356
|
-
}
|
|
357
|
-
this._ariaLabelSignal.set(resolveDynamicValue(raw, undefined, this.injector));
|
|
358
|
-
});
|
|
359
|
-
}
|
|
360
|
-
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "22.0.1", ngImport: i0, type: IonicInlineButtonAddonComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
|
|
361
|
-
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "22.0.1", type: IonicInlineButtonAddonComponent, isStandalone: true, selector: "ion-button[df-ion-button-addon]", host: { listeners: { "click": "action.dispatch()" }, properties: { "attr.color": "color() ?? null", "attr.fill": "fill()", "attr.disabled": "action.disabled() || action.loading() ? \"true\" : null", "attr.aria-label": "resolvedAriaLabel() ?? null", "attr.aria-busy": "action.loading() || null" } }, hostDirectives: [{ directive: i1.NgForgeAddonAction }], ngImport: i0, template: `
|
|
362
|
-
@if (action.loading()) {
|
|
363
|
-
<ion-spinner [slot]="iconOnly() ? 'icon-only' : 'start'" name="dots"></ion-spinner>
|
|
364
|
-
<span class="df-ion-sr-only" role="status">Loading…</span>
|
|
365
|
-
} @else if (icon(); as ic) {
|
|
366
|
-
<ion-icon [name]="ic" [slot]="iconOnly() ? 'icon-only' : 'start'"></ion-icon>
|
|
367
|
-
}
|
|
368
|
-
@if (label(); as lbl) {
|
|
369
|
-
{{ lbl | dynamicText | async }}
|
|
370
|
-
}
|
|
371
|
-
`, isInline: true, styles: [".df-ion-sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}\n"], dependencies: [{ kind: "component", type: IonIcon, selector: "ion-icon", inputs: ["color", "flipRtl", "icon", "ios", "lazy", "md", "mode", "name", "sanitize", "size", "src"] }, { kind: "component", type: IonSpinner, selector: "ion-spinner", inputs: ["color", "duration", "name", "paused"] }, { kind: "pipe", type: DynamicTextPipe, name: "dynamicText" }, { kind: "pipe", type: AsyncPipe, name: "async" }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
|
|
372
|
-
}
|
|
373
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "22.0.1", ngImport: i0, type: IonicInlineButtonAddonComponent, decorators: [{
|
|
374
|
-
type: Component,
|
|
375
|
-
args: [{ selector: 'ion-button[df-ion-button-addon]', imports: [IonIcon, IonSpinner, DynamicTextPipe, AsyncPipe], hostDirectives: [NgForgeAddonAction], template: `
|
|
376
|
-
@if (action.loading()) {
|
|
377
|
-
<ion-spinner [slot]="iconOnly() ? 'icon-only' : 'start'" name="dots"></ion-spinner>
|
|
378
|
-
<span class="df-ion-sr-only" role="status">Loading…</span>
|
|
379
|
-
} @else if (icon(); as ic) {
|
|
380
|
-
<ion-icon [name]="ic" [slot]="iconOnly() ? 'icon-only' : 'start'"></ion-icon>
|
|
381
|
-
}
|
|
382
|
-
@if (label(); as lbl) {
|
|
383
|
-
{{ lbl | dynamicText | async }}
|
|
384
|
-
}
|
|
385
|
-
`, host: {
|
|
386
|
-
'[attr.color]': 'color() ?? null',
|
|
387
|
-
'[attr.fill]': 'fill()',
|
|
388
|
-
'[attr.disabled]': 'action.disabled() || action.loading() ? "true" : null',
|
|
389
|
-
'[attr.aria-label]': 'resolvedAriaLabel() ?? null',
|
|
390
|
-
'[attr.aria-busy]': 'action.loading() || null',
|
|
391
|
-
'(click)': 'action.dispatch()',
|
|
392
|
-
}, changeDetection: ChangeDetectionStrategy.OnPush, styles: [".df-ion-sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}\n"] }]
|
|
393
|
-
}], ctorParameters: () => [] });
|
|
394
|
-
|
|
395
|
-
const IONIC_CONFIG = new InjectionToken('IONIC_CONFIG');
|
|
396
|
-
|
|
397
|
-
const IONIC_INPUT_TYPE_OVERRIDE = new InjectionToken('IONIC_INPUT_TYPE_OVERRIDE');
|
|
398
|
-
|
|
399
314
|
class IonicInputFieldComponent {
|
|
400
315
|
elementRef = inject((ElementRef));
|
|
401
316
|
ionicConfig = inject(IONIC_CONFIG, { optional: true });
|
|
@@ -447,8 +362,8 @@ class IonicInputFieldComponent {
|
|
|
447
362
|
});
|
|
448
363
|
});
|
|
449
364
|
}
|
|
450
|
-
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "22.
|
|
451
|
-
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "22.
|
|
365
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "22.1.5", ngImport: i0, type: IonicInputFieldComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
|
|
366
|
+
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "22.1.5", type: IonicInputFieldComponent, isStandalone: true, selector: "df-ion-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: [
|
|
452
367
|
{
|
|
453
368
|
provide: IONIC_INPUT_TYPE_OVERRIDE,
|
|
454
369
|
useFactory: () => signal(undefined),
|
|
@@ -519,7 +434,7 @@ class IonicInputFieldComponent {
|
|
|
519
434
|
}
|
|
520
435
|
`, isInline: true, styles: [".df-ion-field{display:flex;flex-direction:column;gap:var(--df-field-gap, .5rem);width:100%}.df-ion-label{font-weight:var(--df-label-font-weight, 500);color:var(--df-label-color, inherit)}.df-ion-hint{display:block;color:var(--df-hint-color, var(--ion-color-medium, #92949c));font-size:var(--df-hint-font-size, .875rem)}.df-ion-error{display:block;color:var(--df-error-color, var(--ion-color-danger, #eb445a));font-size:var(--df-error-font-size, .875rem)}:host([hidden]){display:none!important}\n", ":host([hidden]){display:none!important}:host{--df-ion-addon-prefix-outer-padding: 0;--df-ion-addon-prefix-inner-padding: .5rem;--df-ion-addon-suffix-inner-padding: .5rem;--df-ion-addon-suffix-outer-padding: 0}:host ::ng-deep ion-input [slot=start],:host ::ng-deep ion-input [slot=end]{display:inline-flex;align-items:center;align-self:center;line-height:1}:host ::ng-deep ion-input [slot=start] df-addon-slot,:host ::ng-deep ion-input [slot=end] df-addon-slot,:host ::ng-deep ion-input [slot=start] df-ion-icon-addon,:host ::ng-deep ion-input [slot=end] df-ion-icon-addon{display:inline-flex;align-items:center;line-height:1}:host ::ng-deep ion-input [slot=start]{padding-inline-start:var(--df-ion-addon-prefix-outer-padding);padding-inline-end:var(--df-ion-addon-prefix-inner-padding)}:host ::ng-deep ion-input [slot=end]{padding-inline-start:var(--df-ion-addon-suffix-inner-padding);padding-inline-end:var(--df-ion-addon-suffix-outer-padding)}:host ::ng-deep ion-input ion-icon{color:inherit}\n"], dependencies: [{ kind: "component", type: IonInput, selector: "ion-input", inputs: ["accept", "autocapitalize", "autocomplete", "autocorrect", "autofocus", "clearInput", "clearOnEdit", "color", "counter", "counterFormatter", "debounce", "disabled", "enterkeyhint", "errorText", "fill", "helperText", "inputmode", "label", "labelPlacement", "max", "maxlength", "min", "minlength", "mode", "multiple", "name", "pattern", "placeholder", "readonly", "required", "shape", "size", "spellcheck", "step", "type", "value"] }, { kind: "component", type: IonNote, selector: "ion-note", inputs: ["color", "mode"] }, { 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: "component", type: IonicInlineButtonAddonComponent, selector: "ion-button[df-ion-button-addon]" }, { kind: "pipe", type: DynamicTextPipe, name: "dynamicText" }, { kind: "pipe", type: AsyncPipe, name: "async" }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
|
|
521
436
|
}
|
|
522
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "22.
|
|
437
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "22.1.5", ngImport: i0, type: IonicInputFieldComponent, decorators: [{
|
|
523
438
|
type: Component,
|
|
524
439
|
args: [{ selector: 'df-ion-input', imports: [IonInput, IonNote, FormField, DynamicTextPipe, AsyncPipe, NgForgeControl, DfAddonSlot, IonicInlineButtonAddonComponent], hostDirectives: [NgForgeFieldHost, NgForgeAddons], template: `
|
|
525
440
|
@let f = ngf.field();
|
|
@@ -593,11 +508,6 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "22.0.1", ngImpor
|
|
|
593
508
|
], styles: [".df-ion-field{display:flex;flex-direction:column;gap:var(--df-field-gap, .5rem);width:100%}.df-ion-label{font-weight:var(--df-label-font-weight, 500);color:var(--df-label-color, inherit)}.df-ion-hint{display:block;color:var(--df-hint-color, var(--ion-color-medium, #92949c));font-size:var(--df-hint-font-size, .875rem)}.df-ion-error{display:block;color:var(--df-error-color, var(--ion-color-danger, #eb445a));font-size:var(--df-error-font-size, .875rem)}:host([hidden]){display:none!important}\n", ":host([hidden]){display:none!important}:host{--df-ion-addon-prefix-outer-padding: 0;--df-ion-addon-prefix-inner-padding: .5rem;--df-ion-addon-suffix-inner-padding: .5rem;--df-ion-addon-suffix-outer-padding: 0}:host ::ng-deep ion-input [slot=start],:host ::ng-deep ion-input [slot=end]{display:inline-flex;align-items:center;align-self:center;line-height:1}:host ::ng-deep ion-input [slot=start] df-addon-slot,:host ::ng-deep ion-input [slot=end] df-addon-slot,:host ::ng-deep ion-input [slot=start] df-ion-icon-addon,:host ::ng-deep ion-input [slot=end] df-ion-icon-addon{display:inline-flex;align-items:center;line-height:1}:host ::ng-deep ion-input [slot=start]{padding-inline-start:var(--df-ion-addon-prefix-outer-padding);padding-inline-end:var(--df-ion-addon-prefix-inner-padding)}:host ::ng-deep ion-input [slot=end]{padding-inline-start:var(--df-ion-addon-suffix-inner-padding);padding-inline-end:var(--df-ion-addon-suffix-outer-padding)}:host ::ng-deep ion-input ion-icon{color:inherit}\n"] }]
|
|
594
509
|
}], ctorParameters: () => [], propDecorators: { props: [{ type: i0.Input, args: [{ isSignal: true, alias: "props", required: false }] }], fieldInputs: [{ type: i0.Input, args: [{ isSignal: true, alias: "fieldInputs", required: false }] }] } });
|
|
595
510
|
|
|
596
|
-
var ionicInput_component = /*#__PURE__*/Object.freeze({
|
|
597
|
-
__proto__: null,
|
|
598
|
-
default: IonicInputFieldComponent
|
|
599
|
-
});
|
|
600
|
-
|
|
601
511
|
class IonicMultiCheckboxFieldComponent {
|
|
602
512
|
ngf = injectNgForgeField();
|
|
603
513
|
options = input([], /* @ts-ignore */
|
|
@@ -642,8 +552,8 @@ class IonicMultiCheckboxFieldComponent {
|
|
|
642
552
|
}
|
|
643
553
|
});
|
|
644
554
|
}
|
|
645
|
-
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "22.
|
|
646
|
-
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "22.
|
|
555
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "22.1.5", ngImport: i0, type: IonicMultiCheckboxFieldComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
|
|
556
|
+
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "22.1.5", type: IonicMultiCheckboxFieldComponent, isStandalone: true, selector: "df-ion-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: `
|
|
647
557
|
@let f = ngf.field();
|
|
648
558
|
@let checked = checkedValuesMap();
|
|
649
559
|
@if (ngf.label(); as label) {
|
|
@@ -683,7 +593,7 @@ class IonicMultiCheckboxFieldComponent {
|
|
|
683
593
|
}
|
|
684
594
|
`, isInline: true, styles: [".df-ion-field{display:flex;flex-direction:column;gap:var(--df-field-gap, .5rem);width:100%}.df-ion-label{font-weight:var(--df-label-font-weight, 500);color:var(--df-label-color, inherit)}.df-ion-hint{display:block;color:var(--df-hint-color, var(--ion-color-medium, #92949c));font-size:var(--df-hint-font-size, .875rem)}.df-ion-error{display:block;color:var(--df-error-color, var(--ion-color-danger, #eb445a));font-size:var(--df-error-font-size, .875rem)}:host([hidden]){display:none!important}\n", ":host{display:block}:host([hidden]){display:none!important}.checkbox-group-label{margin-bottom:8px;font-weight:500}.checkbox-group{display:flex;flex-direction:column;gap:4px}ion-item{--padding-start: 0;--inner-padding-end: 0}\n"], dependencies: [{ kind: "component", type: IonCheckbox, selector: "ion-checkbox", inputs: ["checked", "color", "disabled", "errorText", "helperText", "indeterminate", "justify", "labelPlacement", "mode", "name", "value"] }, { kind: "component", type: IonItem, selector: "ion-item", inputs: ["button", "color", "detail", "detailIcon", "disabled", "download", "href", "lines", "mode", "rel", "routerAnimation", "routerDirection", "target", "type"] }, { kind: "component", type: IonNote, selector: "ion-note", inputs: ["color", "mode"] }, { kind: "directive", type: NgForgeControl, selector: "[ngForgeControl]", inputs: ["ngForgeControl"] }, { kind: "pipe", type: DynamicTextPipe, name: "dynamicText" }, { kind: "pipe", type: AsyncPipe, name: "async" }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
|
|
685
595
|
}
|
|
686
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "22.
|
|
596
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "22.1.5", ngImport: i0, type: IonicMultiCheckboxFieldComponent, decorators: [{
|
|
687
597
|
type: Component,
|
|
688
598
|
args: [{ selector: 'df-ion-multi-checkbox', imports: [IonCheckbox, IonItem, IonNote, DynamicTextPipe, AsyncPipe, NgForgeControl], hostDirectives: [NgForgeFieldHost], template: `
|
|
689
599
|
@let f = ngf.field();
|
|
@@ -726,11 +636,6 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "22.0.1", ngImpor
|
|
|
726
636
|
`, changeDetection: ChangeDetectionStrategy.OnPush, styles: [".df-ion-field{display:flex;flex-direction:column;gap:var(--df-field-gap, .5rem);width:100%}.df-ion-label{font-weight:var(--df-label-font-weight, 500);color:var(--df-label-color, inherit)}.df-ion-hint{display:block;color:var(--df-hint-color, var(--ion-color-medium, #92949c));font-size:var(--df-hint-font-size, .875rem)}.df-ion-error{display:block;color:var(--df-error-color, var(--ion-color-danger, #eb445a));font-size:var(--df-error-font-size, .875rem)}:host([hidden]){display:none!important}\n", ":host{display:block}:host([hidden]){display:none!important}.checkbox-group-label{margin-bottom:8px;font-weight:500}.checkbox-group{display:flex;flex-direction:column;gap:4px}ion-item{--padding-start: 0;--inner-padding-end: 0}\n"] }]
|
|
727
637
|
}], ctorParameters: () => [], propDecorators: { options: [{ type: i0.Input, args: [{ isSignal: true, alias: "options", required: false }] }], props: [{ type: i0.Input, args: [{ isSignal: true, alias: "props", required: false }] }] } });
|
|
728
638
|
|
|
729
|
-
var ionicMultiCheckbox_component = /*#__PURE__*/Object.freeze({
|
|
730
|
-
__proto__: null,
|
|
731
|
-
default: IonicMultiCheckboxFieldComponent
|
|
732
|
-
});
|
|
733
|
-
|
|
734
639
|
class IonicRadioFieldComponent {
|
|
735
640
|
ngf = injectNgForgeField();
|
|
736
641
|
options = input([], /* @ts-ignore */
|
|
@@ -738,8 +643,8 @@ class IonicRadioFieldComponent {
|
|
|
738
643
|
props = input(/* @ts-ignore */
|
|
739
644
|
...(ngDevMode ? [undefined, { debugName: "props" }] : /* istanbul ignore next */ []));
|
|
740
645
|
defaultCompare = Object.is;
|
|
741
|
-
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "22.
|
|
742
|
-
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "22.
|
|
646
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "22.1.5", ngImport: i0, type: IonicRadioFieldComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
|
|
647
|
+
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "22.1.5", type: IonicRadioFieldComponent, isStandalone: true, selector: "df-ion-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: `
|
|
743
648
|
@let f = ngf.field();
|
|
744
649
|
@let radioGroupId = ngf.key() + '-radio-group';
|
|
745
650
|
@if (ngf.label(); as label) {
|
|
@@ -777,7 +682,7 @@ class IonicRadioFieldComponent {
|
|
|
777
682
|
}
|
|
778
683
|
`, isInline: true, styles: [".df-ion-field{display:flex;flex-direction:column;gap:var(--df-field-gap, .5rem);width:100%}.df-ion-label{font-weight:var(--df-label-font-weight, 500);color:var(--df-label-color, inherit)}.df-ion-hint{display:block;color:var(--df-hint-color, var(--ion-color-medium, #92949c));font-size:var(--df-hint-font-size, .875rem)}.df-ion-error{display:block;color:var(--df-error-color, var(--ion-color-danger, #eb445a));font-size:var(--df-error-font-size, .875rem)}:host([hidden]){display:none!important}\n", ":host{display:block}:host([hidden]){display:none!important}.radio-label{font-size:.875rem;font-weight:500;margin-bottom:.5rem;color:var(--ion-text-color)}\n"], dependencies: [{ kind: "component", type: IonRadioGroup, selector: "ion-radio-group", inputs: ["allowEmptySelection", "compareWith", "errorText", "helperText", "name", "value"] }, { kind: "component", type: IonRadio, selector: "ion-radio", inputs: ["alignment", "color", "disabled", "justify", "labelPlacement", "mode", "name", "value"] }, { kind: "component", type: IonItem, selector: "ion-item", inputs: ["button", "color", "detail", "detailIcon", "disabled", "download", "href", "lines", "mode", "rel", "routerAnimation", "routerDirection", "target", "type"] }, { kind: "component", type: IonNote, selector: "ion-note", inputs: ["color", "mode"] }, { 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 });
|
|
779
684
|
}
|
|
780
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "22.
|
|
685
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "22.1.5", ngImport: i0, type: IonicRadioFieldComponent, decorators: [{
|
|
781
686
|
type: Component,
|
|
782
687
|
args: [{ selector: 'df-ion-radio', imports: [IonRadioGroup, IonRadio, IonItem, IonNote, FormField, DynamicTextPipe, AsyncPipe, NgForgeControl], hostDirectives: [NgForgeFieldHost], template: `
|
|
783
688
|
@let f = ngf.field();
|
|
@@ -818,11 +723,6 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "22.0.1", ngImpor
|
|
|
818
723
|
`, changeDetection: ChangeDetectionStrategy.OnPush, styles: [".df-ion-field{display:flex;flex-direction:column;gap:var(--df-field-gap, .5rem);width:100%}.df-ion-label{font-weight:var(--df-label-font-weight, 500);color:var(--df-label-color, inherit)}.df-ion-hint{display:block;color:var(--df-hint-color, var(--ion-color-medium, #92949c));font-size:var(--df-hint-font-size, .875rem)}.df-ion-error{display:block;color:var(--df-error-color, var(--ion-color-danger, #eb445a));font-size:var(--df-error-font-size, .875rem)}:host([hidden]){display:none!important}\n", ":host{display:block}:host([hidden]){display:none!important}.radio-label{font-size:.875rem;font-weight:500;margin-bottom:.5rem;color:var(--ion-text-color)}\n"] }]
|
|
819
724
|
}], propDecorators: { options: [{ type: i0.Input, args: [{ isSignal: true, alias: "options", required: false }] }], props: [{ type: i0.Input, args: [{ isSignal: true, alias: "props", required: false }] }] } });
|
|
820
725
|
|
|
821
|
-
var ionicRadio_component = /*#__PURE__*/Object.freeze({
|
|
822
|
-
__proto__: null,
|
|
823
|
-
default: IonicRadioFieldComponent
|
|
824
|
-
});
|
|
825
|
-
|
|
826
726
|
class IonicSelectFieldComponent {
|
|
827
727
|
ngf = injectNgForgeField();
|
|
828
728
|
options = input([], /* @ts-ignore */
|
|
@@ -830,8 +730,8 @@ class IonicSelectFieldComponent {
|
|
|
830
730
|
props = input(/* @ts-ignore */
|
|
831
731
|
...(ngDevMode ? [undefined, { debugName: "props" }] : /* istanbul ignore next */ []));
|
|
832
732
|
defaultCompare = Object.is;
|
|
833
|
-
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "22.
|
|
834
|
-
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "22.
|
|
733
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "22.1.5", ngImport: i0, type: IonicSelectFieldComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
|
|
734
|
+
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "22.1.5", type: IonicSelectFieldComponent, isStandalone: true, selector: "df-ion-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: `
|
|
835
735
|
@let f = ngf.field();
|
|
836
736
|
@let selectId = ngf.key() + '-select';
|
|
837
737
|
|
|
@@ -866,7 +766,7 @@ class IonicSelectFieldComponent {
|
|
|
866
766
|
}
|
|
867
767
|
`, isInline: true, styles: [".df-ion-field{display:flex;flex-direction:column;gap:var(--df-field-gap, .5rem);width:100%}.df-ion-label{font-weight:var(--df-label-font-weight, 500);color:var(--df-label-color, inherit)}.df-ion-hint{display:block;color:var(--df-hint-color, var(--ion-color-medium, #92949c));font-size:var(--df-hint-font-size, .875rem)}.df-ion-error{display:block;color:var(--df-error-color, var(--ion-color-danger, #eb445a));font-size:var(--df-error-font-size, .875rem)}:host([hidden]){display:none!important}\n", ":host([hidden]){display:none!important}\n"], dependencies: [{ kind: "component", type: IonSelect, selector: "ion-select", inputs: ["cancelText", "color", "compareWith", "disabled", "errorText", "expandedIcon", "fill", "helperText", "interface", "interfaceOptions", "justify", "label", "labelPlacement", "mode", "multiple", "name", "okText", "placeholder", "selectedText", "shape", "toggleIcon", "value"] }, { kind: "component", type: IonSelectOption, selector: "ion-select-option", inputs: ["disabled", "value"] }, { kind: "component", type: IonNote, selector: "ion-note", inputs: ["color", "mode"] }, { 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 });
|
|
868
768
|
}
|
|
869
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "22.
|
|
769
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "22.1.5", ngImport: i0, type: IonicSelectFieldComponent, decorators: [{
|
|
870
770
|
type: Component,
|
|
871
771
|
args: [{ selector: 'df-ion-select', imports: [IonSelect, IonSelectOption, IonNote, FormField, DynamicTextPipe, AsyncPipe, NgForgeControl], hostDirectives: [NgForgeFieldHost], template: `
|
|
872
772
|
@let f = ngf.field();
|
|
@@ -904,11 +804,6 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "22.0.1", ngImpor
|
|
|
904
804
|
`, changeDetection: ChangeDetectionStrategy.OnPush, styles: [".df-ion-field{display:flex;flex-direction:column;gap:var(--df-field-gap, .5rem);width:100%}.df-ion-label{font-weight:var(--df-label-font-weight, 500);color:var(--df-label-color, inherit)}.df-ion-hint{display:block;color:var(--df-hint-color, var(--ion-color-medium, #92949c));font-size:var(--df-hint-font-size, .875rem)}.df-ion-error{display:block;color:var(--df-error-color, var(--ion-color-danger, #eb445a));font-size:var(--df-error-font-size, .875rem)}:host([hidden]){display:none!important}\n", ":host([hidden]){display:none!important}\n"] }]
|
|
905
805
|
}], propDecorators: { options: [{ type: i0.Input, args: [{ isSignal: true, alias: "options", required: false }] }], props: [{ type: i0.Input, args: [{ isSignal: true, alias: "props", required: false }] }] } });
|
|
906
806
|
|
|
907
|
-
var ionicSelect_component = /*#__PURE__*/Object.freeze({
|
|
908
|
-
__proto__: null,
|
|
909
|
-
default: IonicSelectFieldComponent
|
|
910
|
-
});
|
|
911
|
-
|
|
912
807
|
class IonicSliderFieldComponent {
|
|
913
808
|
ngf = injectNgForgeField();
|
|
914
809
|
step = input(/* @ts-ignore */
|
|
@@ -916,8 +811,8 @@ class IonicSliderFieldComponent {
|
|
|
916
811
|
props = input(/* @ts-ignore */
|
|
917
812
|
...(ngDevMode ? [undefined, { debugName: "props" }] : /* istanbul ignore next */ []));
|
|
918
813
|
defaultPinFormatter = (value) => String(value);
|
|
919
|
-
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "22.
|
|
920
|
-
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "22.
|
|
814
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "22.1.5", ngImport: i0, type: IonicSliderFieldComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
|
|
815
|
+
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "22.1.5", type: IonicSliderFieldComponent, isStandalone: true, selector: "df-ion-slider", inputs: { 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 }, { directive: i1.NgForgeHostControl }], ngImport: i0, template: `
|
|
921
816
|
@let f = ngf.field();
|
|
922
817
|
@let inputId = ngf.key() + '-input';
|
|
923
818
|
|
|
@@ -944,7 +839,7 @@ class IonicSliderFieldComponent {
|
|
|
944
839
|
}
|
|
945
840
|
`, isInline: true, styles: [".df-ion-field{display:flex;flex-direction:column;gap:var(--df-field-gap, .5rem);width:100%}.df-ion-label{font-weight:var(--df-label-font-weight, 500);color:var(--df-label-color, inherit)}.df-ion-hint{display:block;color:var(--df-hint-color, var(--ion-color-medium, #92949c));font-size:var(--df-hint-font-size, .875rem)}.df-ion-error{display:block;color:var(--df-error-color, var(--ion-color-danger, #eb445a));font-size:var(--df-error-font-size, .875rem)}:host([hidden]){display:none!important}\n", ":host{display:block}:host([hidden]){display:none!important}\n"], dependencies: [{ kind: "component", type: IonRange, selector: "ion-range", inputs: ["activeBarStart", "color", "debounce", "disabled", "dualKnobs", "label", "labelPlacement", "max", "min", "mode", "name", "pin", "pinFormatter", "snaps", "step", "ticks", "value"] }, { kind: "component", type: IonNote, selector: "ion-note", inputs: ["color", "mode"] }, { 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 });
|
|
946
841
|
}
|
|
947
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "22.
|
|
842
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "22.1.5", ngImport: i0, type: IonicSliderFieldComponent, decorators: [{
|
|
948
843
|
type: Component,
|
|
949
844
|
args: [{ selector: 'df-ion-slider', imports: [IonRange, IonNote, FormField, DynamicTextPipe, AsyncPipe], hostDirectives: [NgForgeFieldHost, NgForgeHostControl], template: `
|
|
950
845
|
@let f = ngf.field();
|
|
@@ -974,11 +869,6 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "22.0.1", ngImpor
|
|
|
974
869
|
`, changeDetection: ChangeDetectionStrategy.OnPush, styles: [".df-ion-field{display:flex;flex-direction:column;gap:var(--df-field-gap, .5rem);width:100%}.df-ion-label{font-weight:var(--df-label-font-weight, 500);color:var(--df-label-color, inherit)}.df-ion-hint{display:block;color:var(--df-hint-color, var(--ion-color-medium, #92949c));font-size:var(--df-hint-font-size, .875rem)}.df-ion-error{display:block;color:var(--df-error-color, var(--ion-color-danger, #eb445a));font-size:var(--df-error-font-size, .875rem)}:host([hidden]){display:none!important}\n", ":host{display:block}:host([hidden]){display:none!important}\n"] }]
|
|
975
870
|
}], propDecorators: { step: [{ type: i0.Input, args: [{ isSignal: true, alias: "step", required: false }] }], props: [{ type: i0.Input, args: [{ isSignal: true, alias: "props", required: false }] }] } });
|
|
976
871
|
|
|
977
|
-
var ionicSlider_component = /*#__PURE__*/Object.freeze({
|
|
978
|
-
__proto__: null,
|
|
979
|
-
default: IonicSliderFieldComponent
|
|
980
|
-
});
|
|
981
|
-
|
|
982
872
|
class IonicTextareaFieldComponent {
|
|
983
873
|
elementRef = inject((ElementRef));
|
|
984
874
|
ngf = injectNgForgeField();
|
|
@@ -1003,8 +893,8 @@ class IonicTextareaFieldComponent {
|
|
|
1003
893
|
});
|
|
1004
894
|
});
|
|
1005
895
|
}
|
|
1006
|
-
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "22.
|
|
1007
|
-
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "22.
|
|
896
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "22.1.5", ngImport: i0, type: IonicTextareaFieldComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
|
|
897
|
+
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "22.1.5", type: IonicTextareaFieldComponent, isStandalone: true, selector: "df-ion-textarea", inputs: { props: { classPropertyName: "props", publicName: "props", isSignal: true, isRequired: false, transformFunction: null } }, hostDirectives: [{ directive: i1.NgForgeFieldHost }], ngImport: i0, template: `
|
|
1008
898
|
@let f = ngf.field();
|
|
1009
899
|
@let textareaId = ngf.key() + '-textarea';
|
|
1010
900
|
|
|
@@ -1032,7 +922,7 @@ class IonicTextareaFieldComponent {
|
|
|
1032
922
|
}
|
|
1033
923
|
`, isInline: true, styles: [".df-ion-field{display:flex;flex-direction:column;gap:var(--df-field-gap, .5rem);width:100%}.df-ion-label{font-weight:var(--df-label-font-weight, 500);color:var(--df-label-color, inherit)}.df-ion-hint{display:block;color:var(--df-hint-color, var(--ion-color-medium, #92949c));font-size:var(--df-hint-font-size, .875rem)}.df-ion-error{display:block;color:var(--df-error-color, var(--ion-color-danger, #eb445a));font-size:var(--df-error-font-size, .875rem)}:host([hidden]){display:none!important}\n", ":host([hidden]){display:none!important}\n"], dependencies: [{ kind: "component", type: IonTextarea, selector: "ion-textarea", inputs: ["autoGrow", "autocapitalize", "autofocus", "clearOnEdit", "color", "cols", "counter", "counterFormatter", "debounce", "disabled", "enterkeyhint", "errorText", "fill", "helperText", "inputmode", "label", "labelPlacement", "maxlength", "minlength", "mode", "name", "placeholder", "readonly", "required", "rows", "shape", "spellcheck", "value", "wrap"] }, { kind: "component", type: IonNote, selector: "ion-note", inputs: ["color", "mode"] }, { 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 });
|
|
1034
924
|
}
|
|
1035
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "22.
|
|
925
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "22.1.5", ngImport: i0, type: IonicTextareaFieldComponent, decorators: [{
|
|
1036
926
|
type: Component,
|
|
1037
927
|
args: [{ selector: 'df-ion-textarea', imports: [IonTextarea, IonNote, FormField, DynamicTextPipe, AsyncPipe, NgForgeControl], hostDirectives: [NgForgeFieldHost], template: `
|
|
1038
928
|
@let f = ngf.field();
|
|
@@ -1063,11 +953,6 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "22.0.1", ngImpor
|
|
|
1063
953
|
`, changeDetection: ChangeDetectionStrategy.OnPush, styles: [".df-ion-field{display:flex;flex-direction:column;gap:var(--df-field-gap, .5rem);width:100%}.df-ion-label{font-weight:var(--df-label-font-weight, 500);color:var(--df-label-color, inherit)}.df-ion-hint{display:block;color:var(--df-hint-color, var(--ion-color-medium, #92949c));font-size:var(--df-hint-font-size, .875rem)}.df-ion-error{display:block;color:var(--df-error-color, var(--ion-color-danger, #eb445a));font-size:var(--df-error-font-size, .875rem)}:host([hidden]){display:none!important}\n", ":host([hidden]){display:none!important}\n"] }]
|
|
1064
954
|
}], ctorParameters: () => [], propDecorators: { props: [{ type: i0.Input, args: [{ isSignal: true, alias: "props", required: false }] }] } });
|
|
1065
955
|
|
|
1066
|
-
var ionicTextarea_component = /*#__PURE__*/Object.freeze({
|
|
1067
|
-
__proto__: null,
|
|
1068
|
-
default: IonicTextareaFieldComponent
|
|
1069
|
-
});
|
|
1070
|
-
|
|
1071
956
|
class IonicToggleControlComponent {
|
|
1072
957
|
checked = model(false, /* @ts-ignore */
|
|
1073
958
|
...(ngDevMode ? [{ debugName: "checked" }] : /* istanbul ignore next */ []));
|
|
@@ -1107,8 +992,8 @@ class IonicToggleControlComponent {
|
|
|
1107
992
|
onBlur() {
|
|
1108
993
|
this.touched.set(true);
|
|
1109
994
|
}
|
|
1110
|
-
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "22.
|
|
1111
|
-
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.1.0", version: "22.
|
|
995
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "22.1.5", ngImport: i0, type: IonicToggleControlComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
|
|
996
|
+
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.1.0", version: "22.1.5", type: IonicToggleControlComponent, isStandalone: true, selector: "df-ion-toggle-control", inputs: { checked: { classPropertyName: "checked", publicName: "checked", isSignal: true, isRequired: false, transformFunction: null }, touched: { classPropertyName: "touched", publicName: "touched", 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 }, invalid: { classPropertyName: "invalid", publicName: "invalid", isSignal: true, isRequired: false, transformFunction: null }, required: { classPropertyName: "required", publicName: "required", isSignal: true, isRequired: false, transformFunction: null }, labelPlacement: { classPropertyName: "labelPlacement", publicName: "labelPlacement", isSignal: true, isRequired: false, transformFunction: null }, justify: { classPropertyName: "justify", publicName: "justify", isSignal: true, isRequired: false, transformFunction: null }, color: { classPropertyName: "color", publicName: "color", isSignal: true, isRequired: false, transformFunction: null }, enableOnOffLabels: { classPropertyName: "enableOnOffLabels", publicName: "enableOnOffLabels", isSignal: true, isRequired: false, transformFunction: null }, tabIndex: { classPropertyName: "tabIndex", publicName: "tabIndex", isSignal: true, isRequired: false, transformFunction: null } }, outputs: { checked: "checkedChange", touched: "touchedChange" }, host: { styleAttribute: "display: block" }, ngImport: i0, template: `
|
|
1112
997
|
<ion-toggle
|
|
1113
998
|
ngForgeControl
|
|
1114
999
|
[checked]="isChecked()"
|
|
@@ -1126,7 +1011,7 @@ class IonicToggleControlComponent {
|
|
|
1126
1011
|
</ion-toggle>
|
|
1127
1012
|
`, isInline: true, styles: [".df-ion-field{display:flex;flex-direction:column;gap:var(--df-field-gap, .5rem);width:100%}.df-ion-label{font-weight:var(--df-label-font-weight, 500);color:var(--df-label-color, inherit)}.df-ion-hint{display:block;color:var(--df-hint-color, var(--ion-color-medium, #92949c));font-size:var(--df-hint-font-size, .875rem)}.df-ion-error{display:block;color:var(--df-error-color, var(--ion-color-danger, #eb445a));font-size:var(--df-error-font-size, .875rem)}:host([hidden]){display:none!important}\n"], dependencies: [{ kind: "component", type: IonToggle, selector: "ion-toggle", inputs: ["checked", "color", "disabled", "enableOnOffLabels", "errorText", "helperText", "justify", "labelPlacement", "mode", "name", "value"] }, { kind: "directive", type: NgForgeControl, selector: "[ngForgeControl]", inputs: ["ngForgeControl"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
|
|
1128
1013
|
}
|
|
1129
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "22.
|
|
1014
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "22.1.5", ngImport: i0, type: IonicToggleControlComponent, decorators: [{
|
|
1130
1015
|
type: Component,
|
|
1131
1016
|
args: [{ selector: 'df-ion-toggle-control', imports: [IonToggle, NgForgeControl], template: `
|
|
1132
1017
|
<ion-toggle
|
|
@@ -1153,8 +1038,8 @@ class IonicToggleFieldComponent {
|
|
|
1153
1038
|
ngf = injectNgForgeField();
|
|
1154
1039
|
props = input(/* @ts-ignore */
|
|
1155
1040
|
...(ngDevMode ? [undefined, { debugName: "props" }] : /* istanbul ignore next */ []));
|
|
1156
|
-
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "22.
|
|
1157
|
-
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "22.
|
|
1041
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "22.1.5", ngImport: i0, type: IonicToggleFieldComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
|
|
1042
|
+
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "22.1.5", type: IonicToggleFieldComponent, isStandalone: true, selector: "df-ion-toggle", inputs: { props: { classPropertyName: "props", publicName: "props", isSignal: true, isRequired: false, transformFunction: null } }, hostDirectives: [{ directive: i1.NgForgeFieldHost }], ngImport: i0, template: `
|
|
1158
1043
|
@let f = ngf.field();
|
|
1159
1044
|
@let toggleId = ngf.key() + '-toggle';
|
|
1160
1045
|
|
|
@@ -1177,7 +1062,7 @@ class IonicToggleFieldComponent {
|
|
|
1177
1062
|
}
|
|
1178
1063
|
`, isInline: true, styles: [".df-ion-field{display:flex;flex-direction:column;gap:var(--df-field-gap, .5rem);width:100%}.df-ion-label{font-weight:var(--df-label-font-weight, 500);color:var(--df-label-color, inherit)}.df-ion-hint{display:block;color:var(--df-hint-color, var(--ion-color-medium, #92949c));font-size:var(--df-hint-font-size, .875rem)}.df-ion-error{display:block;color:var(--df-error-color, var(--ion-color-danger, #eb445a));font-size:var(--df-error-font-size, .875rem)}:host([hidden]){display:none!important}\n", ":host{display:block}:host([hidden]){display:none!important}\n"], dependencies: [{ kind: "component", type: IonicToggleControlComponent, selector: "df-ion-toggle-control", inputs: ["checked", "touched", "disabled", "readonly", "invalid", "required", "labelPlacement", "justify", "color", "enableOnOffLabels", "tabIndex"], outputs: ["checkedChange", "touchedChange"] }, { kind: "component", type: IonNote, selector: "ion-note", inputs: ["color", "mode"] }, { 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 });
|
|
1179
1064
|
}
|
|
1180
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "22.
|
|
1065
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "22.1.5", ngImport: i0, type: IonicToggleFieldComponent, decorators: [{
|
|
1181
1066
|
type: Component,
|
|
1182
1067
|
args: [{ selector: 'df-ion-toggle', imports: [IonicToggleControlComponent, IonNote, FormField, DynamicTextPipe, AsyncPipe], hostDirectives: [NgForgeFieldHost], template: `
|
|
1183
1068
|
@let f = ngf.field();
|
|
@@ -1203,11 +1088,6 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "22.0.1", ngImpor
|
|
|
1203
1088
|
`, changeDetection: ChangeDetectionStrategy.OnPush, styles: [".df-ion-field{display:flex;flex-direction:column;gap:var(--df-field-gap, .5rem);width:100%}.df-ion-label{font-weight:var(--df-label-font-weight, 500);color:var(--df-label-color, inherit)}.df-ion-hint{display:block;color:var(--df-hint-color, var(--ion-color-medium, #92949c));font-size:var(--df-hint-font-size, .875rem)}.df-ion-error{display:block;color:var(--df-error-color, var(--ion-color-danger, #eb445a));font-size:var(--df-error-font-size, .875rem)}:host([hidden]){display:none!important}\n", ":host{display:block}:host([hidden]){display:none!important}\n"] }]
|
|
1204
1089
|
}], propDecorators: { props: [{ type: i0.Input, args: [{ isSignal: true, alias: "props", required: false }] }] } });
|
|
1205
1090
|
|
|
1206
|
-
var ionicToggle_component = /*#__PURE__*/Object.freeze({
|
|
1207
|
-
__proto__: null,
|
|
1208
|
-
default: IonicToggleFieldComponent
|
|
1209
|
-
});
|
|
1210
|
-
|
|
1211
1091
|
|
|
1212
1092
|
const IonicField = {
|
|
1213
1093
|
Input: 'input',
|
|
@@ -1276,10 +1156,20 @@ const BUTTON_FIELD_TYPES_BASE = {
|
|
|
1276
1156
|
renderReadyWhen: [],
|
|
1277
1157
|
valueHandling: 'exclude',
|
|
1278
1158
|
};
|
|
1159
|
+
const loadInputComponent = () => import('@ng-forge/dynamic-forms-ionic/lazy/input').then(({ IonicInputFieldComponent }) => IonicInputFieldComponent);
|
|
1160
|
+
const loadSelectComponent = () => import('@ng-forge/dynamic-forms-ionic/lazy/select').then(({ IonicSelectFieldComponent }) => IonicSelectFieldComponent);
|
|
1161
|
+
const loadCheckboxComponent = () => import('@ng-forge/dynamic-forms-ionic/lazy/checkbox').then(({ IonicCheckboxFieldComponent }) => IonicCheckboxFieldComponent);
|
|
1162
|
+
const loadButtonComponent = () => import('@ng-forge/dynamic-forms-ionic/lazy/button').then(({ IonicButtonFieldComponent }) => IonicButtonFieldComponent);
|
|
1163
|
+
const loadTextareaComponent = () => import('@ng-forge/dynamic-forms-ionic/lazy/textarea').then(({ IonicTextareaFieldComponent }) => IonicTextareaFieldComponent);
|
|
1164
|
+
const loadRadioComponent = () => import('@ng-forge/dynamic-forms-ionic/lazy/radio').then(({ IonicRadioFieldComponent }) => IonicRadioFieldComponent);
|
|
1165
|
+
const loadMultiCheckboxComponent = () => import('@ng-forge/dynamic-forms-ionic/lazy/multi-checkbox').then(({ IonicMultiCheckboxFieldComponent }) => IonicMultiCheckboxFieldComponent);
|
|
1166
|
+
const loadDatepickerComponent = () => import('@ng-forge/dynamic-forms-ionic/lazy/datepicker').then(({ IonicDatepickerFieldComponent }) => IonicDatepickerFieldComponent);
|
|
1167
|
+
const loadSliderComponent = () => import('@ng-forge/dynamic-forms-ionic/lazy/slider').then(({ IonicSliderFieldComponent }) => IonicSliderFieldComponent);
|
|
1168
|
+
const loadToggleComponent = () => import('@ng-forge/dynamic-forms-ionic/lazy/toggle').then(({ IonicToggleFieldComponent }) => IonicToggleFieldComponent);
|
|
1279
1169
|
const IONIC_FIELD_TYPES = [
|
|
1280
1170
|
{
|
|
1281
1171
|
name: IonicField.Input,
|
|
1282
|
-
loadComponent:
|
|
1172
|
+
loadComponent: loadInputComponent,
|
|
1283
1173
|
mapper: valueFieldMapper,
|
|
1284
1174
|
propsToMeta: ['type'],
|
|
1285
1175
|
scope: ['text-input', 'numeric'],
|
|
@@ -1290,81 +1180,81 @@ const IONIC_FIELD_TYPES = [
|
|
|
1290
1180
|
},
|
|
1291
1181
|
{
|
|
1292
1182
|
name: IonicField.Select,
|
|
1293
|
-
loadComponent:
|
|
1183
|
+
loadComponent: loadSelectComponent,
|
|
1294
1184
|
mapper: optionsFieldMapper,
|
|
1295
1185
|
scope: 'single-select',
|
|
1296
1186
|
...VALUE_FIELD_TYPES_BASE,
|
|
1297
1187
|
},
|
|
1298
1188
|
{
|
|
1299
1189
|
name: IonicField.Checkbox,
|
|
1300
|
-
loadComponent:
|
|
1190
|
+
loadComponent: loadCheckboxComponent,
|
|
1301
1191
|
mapper: checkboxFieldMapper,
|
|
1302
1192
|
scope: 'boolean',
|
|
1303
1193
|
...VALUE_FIELD_TYPES_BASE,
|
|
1304
1194
|
},
|
|
1305
1195
|
{
|
|
1306
1196
|
name: IonicField.Button,
|
|
1307
|
-
loadComponent:
|
|
1197
|
+
loadComponent: loadButtonComponent,
|
|
1308
1198
|
mapper: buttonFieldMapper,
|
|
1309
1199
|
...BUTTON_FIELD_TYPES_BASE,
|
|
1310
1200
|
},
|
|
1311
1201
|
{
|
|
1312
1202
|
name: IonicField.Submit,
|
|
1313
|
-
loadComponent:
|
|
1203
|
+
loadComponent: loadButtonComponent,
|
|
1314
1204
|
mapper: submitButtonFieldMapper,
|
|
1315
1205
|
...BUTTON_FIELD_TYPES_BASE,
|
|
1316
1206
|
},
|
|
1317
1207
|
{
|
|
1318
1208
|
name: IonicField.Next,
|
|
1319
|
-
loadComponent:
|
|
1209
|
+
loadComponent: loadButtonComponent,
|
|
1320
1210
|
mapper: nextButtonFieldMapper,
|
|
1321
1211
|
...BUTTON_FIELD_TYPES_BASE,
|
|
1322
1212
|
},
|
|
1323
1213
|
{
|
|
1324
1214
|
name: IonicField.Previous,
|
|
1325
|
-
loadComponent:
|
|
1215
|
+
loadComponent: loadButtonComponent,
|
|
1326
1216
|
mapper: previousButtonFieldMapper,
|
|
1327
1217
|
...BUTTON_FIELD_TYPES_BASE,
|
|
1328
1218
|
},
|
|
1329
1219
|
{
|
|
1330
1220
|
name: IonicField.AddArrayItem,
|
|
1331
|
-
loadComponent:
|
|
1221
|
+
loadComponent: loadButtonComponent,
|
|
1332
1222
|
mapper: addArrayItemButtonMapper,
|
|
1333
1223
|
...BUTTON_FIELD_TYPES_BASE,
|
|
1334
1224
|
},
|
|
1335
1225
|
{
|
|
1336
1226
|
name: IonicField.PrependArrayItem,
|
|
1337
|
-
loadComponent:
|
|
1227
|
+
loadComponent: loadButtonComponent,
|
|
1338
1228
|
mapper: prependArrayItemButtonMapper,
|
|
1339
1229
|
...BUTTON_FIELD_TYPES_BASE,
|
|
1340
1230
|
},
|
|
1341
1231
|
{
|
|
1342
1232
|
name: IonicField.InsertArrayItem,
|
|
1343
|
-
loadComponent:
|
|
1233
|
+
loadComponent: loadButtonComponent,
|
|
1344
1234
|
mapper: insertArrayItemButtonMapper,
|
|
1345
1235
|
...BUTTON_FIELD_TYPES_BASE,
|
|
1346
1236
|
},
|
|
1347
1237
|
{
|
|
1348
1238
|
name: IonicField.RemoveArrayItem,
|
|
1349
|
-
loadComponent:
|
|
1239
|
+
loadComponent: loadButtonComponent,
|
|
1350
1240
|
mapper: removeArrayItemButtonMapper,
|
|
1351
1241
|
...BUTTON_FIELD_TYPES_BASE,
|
|
1352
1242
|
},
|
|
1353
1243
|
{
|
|
1354
1244
|
name: IonicField.PopArrayItem,
|
|
1355
|
-
loadComponent:
|
|
1245
|
+
loadComponent: loadButtonComponent,
|
|
1356
1246
|
mapper: popArrayItemButtonMapper,
|
|
1357
1247
|
...BUTTON_FIELD_TYPES_BASE,
|
|
1358
1248
|
},
|
|
1359
1249
|
{
|
|
1360
1250
|
name: IonicField.ShiftArrayItem,
|
|
1361
|
-
loadComponent:
|
|
1251
|
+
loadComponent: loadButtonComponent,
|
|
1362
1252
|
mapper: shiftArrayItemButtonMapper,
|
|
1363
1253
|
...BUTTON_FIELD_TYPES_BASE,
|
|
1364
1254
|
},
|
|
1365
1255
|
{
|
|
1366
1256
|
name: IonicField.Textarea,
|
|
1367
|
-
loadComponent:
|
|
1257
|
+
loadComponent: loadTextareaComponent,
|
|
1368
1258
|
mapper: valueFieldMapper,
|
|
1369
1259
|
propsToMeta: ['rows'],
|
|
1370
1260
|
scope: 'text-input',
|
|
@@ -1372,35 +1262,35 @@ const IONIC_FIELD_TYPES = [
|
|
|
1372
1262
|
},
|
|
1373
1263
|
{
|
|
1374
1264
|
name: IonicField.Radio,
|
|
1375
|
-
loadComponent:
|
|
1265
|
+
loadComponent: loadRadioComponent,
|
|
1376
1266
|
mapper: optionsFieldMapper,
|
|
1377
1267
|
scope: 'single-select',
|
|
1378
1268
|
...VALUE_FIELD_TYPES_BASE,
|
|
1379
1269
|
},
|
|
1380
1270
|
{
|
|
1381
1271
|
name: IonicField.MultiCheckbox,
|
|
1382
|
-
loadComponent:
|
|
1272
|
+
loadComponent: loadMultiCheckboxComponent,
|
|
1383
1273
|
mapper: optionsFieldMapper,
|
|
1384
1274
|
scope: 'multi-select',
|
|
1385
1275
|
...VALUE_FIELD_TYPES_BASE,
|
|
1386
1276
|
},
|
|
1387
1277
|
{
|
|
1388
1278
|
name: IonicField.Datepicker,
|
|
1389
|
-
loadComponent:
|
|
1279
|
+
loadComponent: loadDatepickerComponent,
|
|
1390
1280
|
mapper: datepickerFieldMapper,
|
|
1391
1281
|
scope: 'date',
|
|
1392
1282
|
...VALUE_FIELD_TYPES_BASE,
|
|
1393
1283
|
},
|
|
1394
1284
|
{
|
|
1395
1285
|
name: IonicField.Slider,
|
|
1396
|
-
loadComponent:
|
|
1286
|
+
loadComponent: loadSliderComponent,
|
|
1397
1287
|
mapper: valueFieldMapper,
|
|
1398
1288
|
scope: 'numeric',
|
|
1399
1289
|
...VALUE_FIELD_TYPES_BASE,
|
|
1400
1290
|
},
|
|
1401
1291
|
{
|
|
1402
1292
|
name: IonicField.Toggle,
|
|
1403
|
-
loadComponent:
|
|
1293
|
+
loadComponent: loadToggleComponent,
|
|
1404
1294
|
mapper: checkboxFieldMapper,
|
|
1405
1295
|
scope: 'boolean',
|
|
1406
1296
|
...VALUE_FIELD_TYPES_BASE,
|
|
@@ -1408,8 +1298,13 @@ const IONIC_FIELD_TYPES = [
|
|
|
1408
1298
|
];
|
|
1409
1299
|
|
|
1410
1300
|
|
|
1301
|
+
const IONIC_FIELD_ERRORS_WRAPPER = {
|
|
1302
|
+
wrapperName: 'field-errors',
|
|
1303
|
+
loadComponent: () => import('./ng-forge-dynamic-forms-ionic-ionic-field-errors-wrapper.component-CN0CagvT.mjs'),
|
|
1304
|
+
rendersFieldErrors: true,
|
|
1305
|
+
};
|
|
1411
1306
|
function withIonicFields(config) {
|
|
1412
|
-
const base = [...IONIC_FIELD_TYPES, withIonicAddons()];
|
|
1307
|
+
const base = [...IONIC_FIELD_TYPES, withIonicAddons(), IONIC_FIELD_ERRORS_WRAPPER];
|
|
1413
1308
|
if (config) {
|
|
1414
1309
|
base.push({
|
|
1415
1310
|
ɵkind: 'ionic-config',
|
|
@@ -1422,7 +1317,7 @@ function withIonicFields(config) {
|
|
|
1422
1317
|
/* -- Ionic addon types ------------------------------------------------- */
|
|
1423
1318
|
const ION_ICON_KIND = {
|
|
1424
1319
|
type: 'ion-icon',
|
|
1425
|
-
loadComponent: () =>
|
|
1320
|
+
loadComponent: () => import('@ng-forge/dynamic-forms-ionic/lazy/addon-icon').then((m) => m.IonicIconAddonComponent),
|
|
1426
1321
|
validate: (addon, fieldKey) => {
|
|
1427
1322
|
if (typeof addon.icon !== 'string' || addon.icon.length === 0) {
|
|
1428
1323
|
throw new DynamicFormError(`Addon type 'ion-icon' requires a non-empty 'icon' string (field: '${fieldKey}').`);
|
|
@@ -1431,7 +1326,7 @@ const ION_ICON_KIND = {
|
|
|
1431
1326
|
};
|
|
1432
1327
|
const ION_BUTTON_KIND = {
|
|
1433
1328
|
type: 'ion-button',
|
|
1434
|
-
loadComponent: () =>
|
|
1329
|
+
loadComponent: () => import('@ng-forge/dynamic-forms-ionic/lazy/addon-button').then((m) => m.IonicButtonAddonComponent),
|
|
1435
1330
|
validate: (addon, fieldKey) => {
|
|
1436
1331
|
const set = [addon.preset, addon.actionRef, addon.action].filter((v) => v !== undefined);
|
|
1437
1332
|
if (set.length > 1) {
|
|
@@ -1467,8 +1362,8 @@ class IonicButtonAddonComponent {
|
|
|
1467
1362
|
...(ngDevMode ? [{ debugName: "fill" }] : /* istanbul ignore next */ []));
|
|
1468
1363
|
iconOnly = computed(() => !!this.icon() && !this.label(), /* @ts-ignore */
|
|
1469
1364
|
...(ngDevMode ? [{ debugName: "iconOnly" }] : /* istanbul ignore next */ []));
|
|
1470
|
-
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "22.
|
|
1471
|
-
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "22.
|
|
1365
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "22.1.5", ngImport: i0, type: IonicButtonAddonComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
|
|
1366
|
+
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "22.1.5", type: IonicButtonAddonComponent, isStandalone: true, selector: "df-ion-button-addon", hostDirectives: [{ directive: i1.NgForgeAddonAction }], ngImport: i0, template: `
|
|
1472
1367
|
<ion-button
|
|
1473
1368
|
[attr.color]="color() ?? null"
|
|
1474
1369
|
[fill]="fill()"
|
|
@@ -1491,7 +1386,7 @@ class IonicButtonAddonComponent {
|
|
|
1491
1386
|
}
|
|
1492
1387
|
`, isInline: true, styles: [".df-ion-sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}\n"], dependencies: [{ kind: "component", type: IonButton, selector: "ion-button", inputs: ["buttonType", "color", "disabled", "download", "expand", "fill", "form", "href", "mode", "rel", "routerAnimation", "routerDirection", "shape", "size", "strong", "target", "type"] }, { kind: "component", type: IonIcon, selector: "ion-icon", inputs: ["color", "flipRtl", "icon", "ios", "lazy", "md", "mode", "name", "sanitize", "size", "src"] }, { kind: "component", type: IonSpinner, selector: "ion-spinner", inputs: ["color", "duration", "name", "paused"] }, { kind: "pipe", type: DynamicTextPipe, name: "dynamicText" }, { kind: "pipe", type: AsyncPipe, name: "async" }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
|
|
1493
1388
|
}
|
|
1494
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "22.
|
|
1389
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "22.1.5", ngImport: i0, type: IonicButtonAddonComponent, decorators: [{
|
|
1495
1390
|
type: Component,
|
|
1496
1391
|
args: [{ selector: 'df-ion-button-addon', imports: [IonButton, IonIcon, IonSpinner, DynamicTextPipe, AsyncPipe], hostDirectives: [NgForgeAddonAction], template: `
|
|
1497
1392
|
<ion-button
|
|
@@ -1517,11 +1412,6 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "22.0.1", ngImpor
|
|
|
1517
1412
|
`, changeDetection: ChangeDetectionStrategy.OnPush, styles: [".df-ion-sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}\n"] }]
|
|
1518
1413
|
}] });
|
|
1519
1414
|
|
|
1520
|
-
var ionButtonAddon_component = /*#__PURE__*/Object.freeze({
|
|
1521
|
-
__proto__: null,
|
|
1522
|
-
IonicButtonAddonComponent: IonicButtonAddonComponent
|
|
1523
|
-
});
|
|
1524
|
-
|
|
1525
1415
|
class IonicIconAddonComponent {
|
|
1526
1416
|
addon = input.required(/* @ts-ignore */
|
|
1527
1417
|
...(ngDevMode ? [{ debugName: "addon" }] : /* istanbul ignore next */ []));
|
|
@@ -1533,10 +1423,10 @@ class IonicIconAddonComponent {
|
|
|
1533
1423
|
...(ngDevMode ? [{ debugName: "ariaLabel" }] : /* istanbul ignore next */ []));
|
|
1534
1424
|
hasAriaLabel = computed(() => this.addon().ariaLabel !== undefined, /* @ts-ignore */
|
|
1535
1425
|
...(ngDevMode ? [{ debugName: "hasAriaLabel" }] : /* istanbul ignore next */ []));
|
|
1536
|
-
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "22.
|
|
1537
|
-
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.1.0", version: "22.
|
|
1426
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "22.1.5", ngImport: i0, type: IonicIconAddonComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
|
|
1427
|
+
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.1.0", version: "22.1.5", type: IonicIconAddonComponent, isStandalone: true, selector: "df-ion-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: `<ion-icon [name]="iconName()" [attr.aria-label]="(ariaLabel() | dynamicText | async) ?? null"></ion-icon>`, isInline: true, dependencies: [{ kind: "component", type: IonIcon, selector: "ion-icon", inputs: ["color", "flipRtl", "icon", "ios", "lazy", "md", "mode", "name", "sanitize", "size", "src"] }, { kind: "pipe", type: AsyncPipe, name: "async" }, { kind: "pipe", type: DynamicTextPipe, name: "dynamicText" }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
|
|
1538
1428
|
}
|
|
1539
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "22.
|
|
1429
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "22.1.5", ngImport: i0, type: IonicIconAddonComponent, decorators: [{
|
|
1540
1430
|
type: Component,
|
|
1541
1431
|
args: [{
|
|
1542
1432
|
selector: 'df-ion-icon-addon',
|
|
@@ -1549,12 +1439,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "22.0.1", ngImpor
|
|
|
1549
1439
|
}]
|
|
1550
1440
|
}], propDecorators: { addon: [{ type: i0.Input, args: [{ isSignal: true, alias: "addon", required: true }] }], fieldInputs: [{ type: i0.Input, args: [{ isSignal: true, alias: "fieldInputs", required: false }] }] } });
|
|
1551
1441
|
|
|
1552
|
-
var ionIconAddon_component = /*#__PURE__*/Object.freeze({
|
|
1553
|
-
__proto__: null,
|
|
1554
|
-
IonicIconAddonComponent: IonicIconAddonComponent
|
|
1555
|
-
});
|
|
1556
|
-
|
|
1557
1442
|
|
|
1558
1443
|
|
|
1559
|
-
export {
|
|
1444
|
+
export { IONIC_FIELD_TYPES, IonicButtonAddonComponent, IonicButtonFieldComponent, IonicCheckboxFieldComponent, IonicDatepickerFieldComponent, IonicField, IonicIconAddonComponent, IonicInputFieldComponent, IonicMultiCheckboxFieldComponent, IonicRadioFieldComponent, IonicSelectFieldComponent, IonicSliderFieldComponent, IonicTextareaFieldComponent, IonicToggleFieldComponent, withIonicAddons, withIonicFields };
|
|
1560
1445
|
//# sourceMappingURL=ng-forge-dynamic-forms-ionic.mjs.map
|