@decaf-ts/for-angular 0.0.25 → 0.0.26
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/fesm2022/decaf-ts-for-angular.mjs +1465 -1488
- package/fesm2022/decaf-ts-for-angular.mjs.map +1 -1
- package/index.d.ts +7470 -3
- package/package.json +14 -17
- package/components/component-renderer/component-renderer.component.d.ts +0 -278
- package/components/crud-field/crud-field.component.d.ts +0 -611
- package/components/crud-form/constants.d.ts +0 -5
- package/components/crud-form/crud-form.component.d.ts +0 -288
- package/components/crud-form/types.d.ts +0 -17
- package/components/empty-state/empty-state.component.d.ts +0 -300
- package/components/fieldset/fieldset.component.d.ts +0 -555
- package/components/filter/filter.component.d.ts +0 -514
- package/components/for-angular-components.module.d.ts +0 -20
- package/components/index.d.ts +0 -16
- package/components/layout/layout.component.d.ts +0 -110
- package/components/list/list.component.d.ts +0 -848
- package/components/list-item/list-item.component.d.ts +0 -390
- package/components/model-renderer/model-renderer.component.d.ts +0 -97
- package/components/pagination/constants.d.ts +0 -7
- package/components/pagination/pagination.component.d.ts +0 -264
- package/components/searchbar/searchbar.component.d.ts +0 -407
- package/components/stepped-form/stepped-form.component.d.ts +0 -255
- package/directives/collapsable.directive.d.ts +0 -9
- package/directives/index.d.ts +0 -1
- package/engine/DynamicModule.d.ts +0 -17
- package/engine/NgxBaseComponent.d.ts +0 -541
- package/engine/NgxCrudFormField.d.ts +0 -123
- package/engine/NgxFormService.d.ts +0 -601
- package/engine/NgxRenderingEngine.d.ts +0 -282
- package/engine/ValidatorFactory.d.ts +0 -15
- package/engine/constants.d.ts +0 -168
- package/engine/decorators.d.ts +0 -25
- package/engine/index.d.ts +0 -18
- package/engine/interfaces.d.ts +0 -271
- package/engine/types.d.ts +0 -200
- package/esm2022/components/component-renderer/component-renderer.component.mjs +0 -321
- package/esm2022/components/crud-field/crud-field.component.mjs +0 -518
- package/esm2022/components/crud-form/constants.mjs +0 -14
- package/esm2022/components/crud-form/crud-form.component.mjs +0 -259
- package/esm2022/components/crud-form/types.mjs +0 -2
- package/esm2022/components/empty-state/empty-state.component.mjs +0 -345
- package/esm2022/components/fieldset/fieldset.component.mjs +0 -677
- package/esm2022/components/filter/filter.component.mjs +0 -700
- package/esm2022/components/for-angular-components.module.mjs +0 -84
- package/esm2022/components/index.mjs +0 -20
- package/esm2022/components/layout/layout.component.mjs +0 -150
- package/esm2022/components/list/list.component.mjs +0 -1238
- package/esm2022/components/list-item/list-item.component.mjs +0 -405
- package/esm2022/components/model-renderer/model-renderer.component.mjs +0 -144
- package/esm2022/components/pagination/constants.mjs +0 -2
- package/esm2022/components/pagination/pagination.component.mjs +0 -321
- package/esm2022/components/searchbar/searchbar.component.mjs +0 -491
- package/esm2022/components/stepped-form/stepped-form.component.mjs +0 -306
- package/esm2022/decaf-ts-for-angular.mjs +0 -5
- package/esm2022/directives/collapsable.directive.mjs +0 -29
- package/esm2022/directives/index.mjs +0 -2
- package/esm2022/engine/DynamicModule.mjs +0 -18
- package/esm2022/engine/NgxBaseComponent.mjs +0 -541
- package/esm2022/engine/NgxCrudFormField.mjs +0 -137
- package/esm2022/engine/NgxFormService.mjs +0 -917
- package/esm2022/engine/NgxRenderingEngine.mjs +0 -376
- package/esm2022/engine/ValidatorFactory.mjs +0 -106
- package/esm2022/engine/constants.mjs +0 -170
- package/esm2022/engine/decorators.mjs +0 -38
- package/esm2022/engine/index.mjs +0 -19
- package/esm2022/engine/interfaces.mjs +0 -4
- package/esm2022/engine/types.mjs +0 -2
- package/esm2022/for-angular-common.module.mjs +0 -84
- package/esm2022/helpers/index.mjs +0 -13
- package/esm2022/helpers/utils.mjs +0 -436
- package/esm2022/i18n/Loader.mjs +0 -86
- package/esm2022/i18n/data/en.json +0 -85
- package/esm2022/public-apis.mjs +0 -15
- package/for-angular-common.module.d.ts +0 -50
- package/helpers/index.d.ts +0 -12
- package/helpers/utils.d.ts +0 -279
- package/i18n/Loader.d.ts +0 -43
- package/public-apis.d.ts +0 -14
|
@@ -1,611 +0,0 @@
|
|
|
1
|
-
import { AfterViewInit, ElementRef, OnDestroy, OnInit } from '@angular/core';
|
|
2
|
-
import { FormArray, FormControl, FormGroup } from '@angular/forms';
|
|
3
|
-
import { AutocompleteTypes, SelectInterface } from '@ionic/core';
|
|
4
|
-
import { CrudOperations } from '@decaf-ts/db-decorators';
|
|
5
|
-
import { NgxCrudFormField } from '../../engine/NgxCrudFormField';
|
|
6
|
-
import { CrudFieldOption, FieldUpdateMode, PossibleInputTypes, StringOrBoolean } from '../../engine/types';
|
|
7
|
-
import { CrudOperationKeys } from '@decaf-ts/ui-decorators';
|
|
8
|
-
import * as i0 from "@angular/core";
|
|
9
|
-
/**
|
|
10
|
-
* @description A dynamic form field component for CRUD operations.
|
|
11
|
-
* @summary The CrudFieldComponent is a versatile form field component that adapts to different
|
|
12
|
-
* input types and CRUD operations. It extends NgxCrudFormField to inherit form handling capabilities
|
|
13
|
-
* and implements lifecycle hooks to properly initialize, render, and clean up. This component
|
|
14
|
-
* supports various input types (text, number, date, select, etc.), validation rules, and styling
|
|
15
|
-
* options, making it suitable for building dynamic forms for create, read, update, and delete
|
|
16
|
-
* operations.
|
|
17
|
-
*
|
|
18
|
-
* @param {CrudOperations} operation - The CRUD operation being performed (create, read, update, delete)
|
|
19
|
-
* @param {string} name - The field name, used as form control identifier
|
|
20
|
-
* @param {PossibleInputTypes} type - The input type (text, number, date, select, etc.)
|
|
21
|
-
* @param {string|number|Date} value - The initial value of the field
|
|
22
|
-
* @param {boolean} disabled - Whether the field is disabled
|
|
23
|
-
* @param {string} label - The display label for the field
|
|
24
|
-
* @param {string} placeholder - Placeholder text when field is empty
|
|
25
|
-
* @param {string} format - Format pattern for the field value
|
|
26
|
-
* @param {boolean} hidden - Whether the field should be hidden
|
|
27
|
-
* @param {number|Date} max - Maximum allowed value
|
|
28
|
-
* @param {number} maxlength - Maximum allowed length
|
|
29
|
-
* @param {number|Date} min - Minimum allowed value
|
|
30
|
-
* @param {number} minlength - Minimum allowed length
|
|
31
|
-
* @param {string} pattern - Validation pattern
|
|
32
|
-
* @param {boolean} readonly - Whether the field is read-only
|
|
33
|
-
* @param {boolean} required - Whether the field is required
|
|
34
|
-
* @param {number} step - Step value for number inputs
|
|
35
|
-
* @param {FormGroup} formGroup - The parent form group
|
|
36
|
-
* @param {StringOrBoolean} translatable - Whether field labels should be translated
|
|
37
|
-
*
|
|
38
|
-
* @component CrudFieldComponent
|
|
39
|
-
* @example
|
|
40
|
-
* <ngx-decaf-crud-field
|
|
41
|
-
* operation="create"
|
|
42
|
-
* name="firstName"
|
|
43
|
-
* type="text"
|
|
44
|
-
* label="<NAME>"
|
|
45
|
-
* placeholder="<NAME>"
|
|
46
|
-
* [value]="model.firstName"
|
|
47
|
-
* [disabled]="model.readOnly">
|
|
48
|
-
*
|
|
49
|
-
*
|
|
50
|
-
* @memberOf module:for-angular
|
|
51
|
-
*/
|
|
52
|
-
export declare class CrudFieldComponent extends NgxCrudFormField implements OnInit, OnDestroy, AfterViewInit {
|
|
53
|
-
/**
|
|
54
|
-
* @description The CRUD operation being performed.
|
|
55
|
-
* @summary Specifies which CRUD operation (Create, Read, Update, Delete) the field is being used for.
|
|
56
|
-
* This affects how the field behaves and is rendered. For example, fields might be read-only in
|
|
57
|
-
* 'read' mode but editable in 'create' or 'update' modes.
|
|
58
|
-
*
|
|
59
|
-
* @type {CrudOperations}
|
|
60
|
-
* @memberOf CrudFieldComponent
|
|
61
|
-
*/
|
|
62
|
-
operation: CrudOperations;
|
|
63
|
-
/**
|
|
64
|
-
* @summary The flat field name used as the form control identifier in immediate parent FormGroup.
|
|
65
|
-
* @description
|
|
66
|
-
* Specifies the name of the field, which is used as the FormControl identifier in immediate parent FormGroup.
|
|
67
|
-
* This value must be unique within the immediate parent FormGroup context and should not contain dots or nesting.
|
|
68
|
-
*
|
|
69
|
-
* @type {string}
|
|
70
|
-
* @memberOf CrudFieldComponent
|
|
71
|
-
*/
|
|
72
|
-
name: string;
|
|
73
|
-
/**
|
|
74
|
-
* @summary The full field path used for form control resolution.
|
|
75
|
-
* @description Specifies the hierarchical path of the field, used to resolve its location within the parent FormGroup (or nested FormGroups).
|
|
76
|
-
* It is used as the identifier in the rendered HTML, and may include nesting (e.g., 'address.billing.street') and
|
|
77
|
-
* should match the structure of the data model
|
|
78
|
-
*
|
|
79
|
-
* @type {string}
|
|
80
|
-
* @memberOf CrudFieldComponent
|
|
81
|
-
*/
|
|
82
|
-
path: string;
|
|
83
|
-
/**
|
|
84
|
-
* @description The parent field path, if this field is nested.
|
|
85
|
-
* @summary Specifies the full dot-delimited path of the parent field. This is only set when the field is nested.
|
|
86
|
-
*
|
|
87
|
-
* @type {string}
|
|
88
|
-
* @memberOf CrudFieldComponent
|
|
89
|
-
*/
|
|
90
|
-
/**
|
|
91
|
-
* @description The parent field path for nested field structures.
|
|
92
|
-
* @summary Specifies the full dot-delimited path of the parent field when this field
|
|
93
|
-
* is part of a nested structure. This is used for hierarchical form organization
|
|
94
|
-
* and proper form control resolution in complex form structures.
|
|
95
|
-
*
|
|
96
|
-
* @type {string}
|
|
97
|
-
* @default ''
|
|
98
|
-
* @memberOf CrudFieldComponent
|
|
99
|
-
*/
|
|
100
|
-
childOf: string;
|
|
101
|
-
/**
|
|
102
|
-
* @description The input type of the field.
|
|
103
|
-
* @summary Defines the type of input to render, such as text, number, date, select, etc.
|
|
104
|
-
* This determines which Ionic form component will be used to render the field and how
|
|
105
|
-
* the data will be formatted and validated.
|
|
106
|
-
*
|
|
107
|
-
* @type {PossibleInputTypes}
|
|
108
|
-
* @memberOf CrudFieldComponent
|
|
109
|
-
*/
|
|
110
|
-
type: PossibleInputTypes;
|
|
111
|
-
/**
|
|
112
|
-
* @description The initial value of the field.
|
|
113
|
-
* @summary Sets the initial value of the form field. This can be a string, number, or Date
|
|
114
|
-
* depending on the field type. For select fields, this should match one of the option values.
|
|
115
|
-
*
|
|
116
|
-
* @type {string | number | Date}
|
|
117
|
-
* @default ''
|
|
118
|
-
* @memberOf CrudFieldComponent
|
|
119
|
-
*/
|
|
120
|
-
value: string | number | Date;
|
|
121
|
-
/**
|
|
122
|
-
* @description Whether the field is disabled.
|
|
123
|
-
* @summary When true, the field will be rendered in a disabled state, preventing user interaction.
|
|
124
|
-
* Disabled fields are still included in the form model but cannot be edited by the user.
|
|
125
|
-
*
|
|
126
|
-
* @type {boolean}
|
|
127
|
-
* @memberOf CrudFieldComponent
|
|
128
|
-
*/
|
|
129
|
-
disabled?: boolean;
|
|
130
|
-
/**
|
|
131
|
-
* @description The display label for the field.
|
|
132
|
-
* @summary The text label displayed alongside the field to identify it to the user.
|
|
133
|
-
* This label can be translated if the translatable property is set to true.
|
|
134
|
-
*
|
|
135
|
-
* @type {string}
|
|
136
|
-
* @memberOf CrudFieldComponent
|
|
137
|
-
*/
|
|
138
|
-
label: string;
|
|
139
|
-
/**
|
|
140
|
-
* @description Placeholder text when field is empty.
|
|
141
|
-
* @summary Text that appears in the input when it has no value. This provides a hint to the user
|
|
142
|
-
* about what kind of data is expected. The placeholder disappears when the user starts typing.
|
|
143
|
-
*
|
|
144
|
-
* @type {string}
|
|
145
|
-
* @memberOf CrudFieldComponent
|
|
146
|
-
*/
|
|
147
|
-
placeholder: string;
|
|
148
|
-
/**
|
|
149
|
-
* @description Format pattern for the field value.
|
|
150
|
-
* @summary Specifies a format pattern for the field value, which can be used for date formatting,
|
|
151
|
-
* number formatting, or other type-specific formatting requirements.
|
|
152
|
-
*
|
|
153
|
-
* @type {string}
|
|
154
|
-
* @memberOf CrudFieldComponent
|
|
155
|
-
*/
|
|
156
|
-
format?: string;
|
|
157
|
-
/**
|
|
158
|
-
* @description Whether the field should be hidden.
|
|
159
|
-
* @summary When true, the field will not be visible in the UI but will still be part of the form model.
|
|
160
|
-
* This is useful for fields that need to be included in form submission but should not be displayed to the user.
|
|
161
|
-
*
|
|
162
|
-
* @type {boolean}
|
|
163
|
-
* @memberOf CrudFieldComponent
|
|
164
|
-
*/
|
|
165
|
-
hidden: boolean | CrudOperationKeys[];
|
|
166
|
-
/**
|
|
167
|
-
* @description Maximum allowed value for the field.
|
|
168
|
-
* @summary For number inputs, this sets the maximum allowed numeric value.
|
|
169
|
-
* For date inputs, this sets the latest allowed date.
|
|
170
|
-
*
|
|
171
|
-
* @type {number | Date}
|
|
172
|
-
* @memberOf CrudFieldComponent
|
|
173
|
-
*/
|
|
174
|
-
max?: number | Date;
|
|
175
|
-
/**
|
|
176
|
-
* @description Maximum allowed length for text input.
|
|
177
|
-
* @summary For text inputs, this sets the maximum number of characters allowed.
|
|
178
|
-
* This is used for validation and may also be used to limit input in the UI.
|
|
179
|
-
*
|
|
180
|
-
* @type {number}
|
|
181
|
-
* @memberOf CrudFieldComponent
|
|
182
|
-
*/
|
|
183
|
-
maxlength?: number;
|
|
184
|
-
/**
|
|
185
|
-
* @description Minimum allowed value for the field.
|
|
186
|
-
* @summary For number inputs, this sets the minimum allowed numeric value.
|
|
187
|
-
* For date inputs, this sets the earliest allowed date.
|
|
188
|
-
*
|
|
189
|
-
* @type {number | Date}
|
|
190
|
-
* @memberOf CrudFieldComponent
|
|
191
|
-
*/
|
|
192
|
-
min?: number | Date;
|
|
193
|
-
/**
|
|
194
|
-
* @description Minimum allowed length for text input.
|
|
195
|
-
* @summary For text inputs, this sets the minimum number of characters required.
|
|
196
|
-
* This is used for validation to ensure the input meets a minimum length requirement.
|
|
197
|
-
*
|
|
198
|
-
* @type {number}
|
|
199
|
-
* @memberOf CrudFieldComponent
|
|
200
|
-
*/
|
|
201
|
-
minlength?: number;
|
|
202
|
-
/**
|
|
203
|
-
* @description Validation pattern for text input.
|
|
204
|
-
* @summary A regular expression pattern used to validate text input.
|
|
205
|
-
* The input value must match this pattern to be considered valid.
|
|
206
|
-
*
|
|
207
|
-
* @type {string}
|
|
208
|
-
* @memberOf CrudFieldComponent
|
|
209
|
-
*/
|
|
210
|
-
pattern?: string;
|
|
211
|
-
/**
|
|
212
|
-
* @description Whether the field is read-only.
|
|
213
|
-
* @summary When true, the field will be rendered in a read-only state. Unlike disabled fields,
|
|
214
|
-
* read-only fields are still focusable but cannot be modified by the user.
|
|
215
|
-
*
|
|
216
|
-
* @type {boolean}
|
|
217
|
-
* @memberOf CrudFieldComponent
|
|
218
|
-
*/
|
|
219
|
-
readonly?: boolean;
|
|
220
|
-
/**
|
|
221
|
-
* @description Whether the field is required.
|
|
222
|
-
* @summary When true, the field must have a value for the form to be valid.
|
|
223
|
-
* Required fields are typically marked with an indicator in the UI.
|
|
224
|
-
*
|
|
225
|
-
* @type {boolean}
|
|
226
|
-
* @memberOf CrudFieldComponent
|
|
227
|
-
*/
|
|
228
|
-
required?: boolean;
|
|
229
|
-
/**
|
|
230
|
-
* @description Step value for number inputs.
|
|
231
|
-
* @summary For number inputs, this sets the increment/decrement step when using
|
|
232
|
-
* the up/down arrows or when using a range slider.
|
|
233
|
-
*
|
|
234
|
-
* @type {number}
|
|
235
|
-
* @memberOf CrudFieldComponent
|
|
236
|
-
*/
|
|
237
|
-
step?: number;
|
|
238
|
-
/**
|
|
239
|
-
* @description Field name for equality validation comparison.
|
|
240
|
-
* @summary Specifies another field name that this field's value must be equal to for validation.
|
|
241
|
-
* This is commonly used for password confirmation fields or other scenarios where
|
|
242
|
-
* two fields must contain the same value.
|
|
243
|
-
*
|
|
244
|
-
* @type {string | undefined}
|
|
245
|
-
* @memberOf CrudFieldComponent
|
|
246
|
-
*/
|
|
247
|
-
equals?: string;
|
|
248
|
-
/**
|
|
249
|
-
* @description Field name for inequality validation comparison.
|
|
250
|
-
* @summary Specifies another field name that this field's value must be different from for validation.
|
|
251
|
-
* This is used to ensure that two fields do not contain the same value, which might be
|
|
252
|
-
* required for certain business rules or security constraints.
|
|
253
|
-
*
|
|
254
|
-
* @type {string | undefined}
|
|
255
|
-
* @memberOf CrudFieldComponent
|
|
256
|
-
*/
|
|
257
|
-
different?: string;
|
|
258
|
-
/**
|
|
259
|
-
* @description Field name for less-than validation comparison.
|
|
260
|
-
* @summary Specifies another field name that this field's value must be less than for validation.
|
|
261
|
-
* This is commonly used for date ranges, numeric ranges, or other scenarios where
|
|
262
|
-
* one field must have a smaller value than another.
|
|
263
|
-
*
|
|
264
|
-
* @type {string | undefined}
|
|
265
|
-
* @memberOf CrudFieldComponent
|
|
266
|
-
*/
|
|
267
|
-
lessThan?: string;
|
|
268
|
-
/**
|
|
269
|
-
* @description Field name for less-than-or-equal validation comparison.
|
|
270
|
-
* @summary Specifies another field name that this field's value must be less than or equal to
|
|
271
|
-
* for validation. This provides inclusive upper bound validation for numeric or date comparisons.
|
|
272
|
-
*
|
|
273
|
-
* @type {string | undefined}
|
|
274
|
-
* @memberOf CrudFieldComponent
|
|
275
|
-
*/
|
|
276
|
-
lessThanOrEqual?: string;
|
|
277
|
-
/**
|
|
278
|
-
* @description Field name for greater-than validation comparison.
|
|
279
|
-
* @summary Specifies another field name that this field's value must be greater than for validation.
|
|
280
|
-
* This is commonly used for date ranges, numeric ranges, or other scenarios where
|
|
281
|
-
* one field must have a larger value than another.
|
|
282
|
-
*
|
|
283
|
-
* @type {string | undefined}
|
|
284
|
-
* @memberOf CrudFieldComponent
|
|
285
|
-
*/
|
|
286
|
-
greaterThan?: string;
|
|
287
|
-
/**
|
|
288
|
-
* @description Field name for greater-than-or-equal validation comparison.
|
|
289
|
-
* @summary Specifies another field name that this field's value must be greater than or equal to
|
|
290
|
-
* for validation. This provides inclusive lower bound validation for numeric or date comparisons.
|
|
291
|
-
*
|
|
292
|
-
* @type {string | undefined}
|
|
293
|
-
* @memberOf CrudFieldComponent
|
|
294
|
-
*/
|
|
295
|
-
greaterThanOrEqual?: string;
|
|
296
|
-
/**
|
|
297
|
-
* @description Number of columns for textarea inputs.
|
|
298
|
-
* @summary For textarea inputs, this sets the visible width of the text area in average character widths.
|
|
299
|
-
* This is used alongside rows to define the dimensions of the textarea.
|
|
300
|
-
*
|
|
301
|
-
* @type {number}
|
|
302
|
-
* @memberOf CrudFieldComponent
|
|
303
|
-
*/
|
|
304
|
-
cols?: number;
|
|
305
|
-
/**
|
|
306
|
-
* @description Number of rows for textarea inputs.
|
|
307
|
-
* @summary For textarea inputs, this sets the visible height of the text area in lines of text.
|
|
308
|
-
* This is used alongside cols to define the dimensions of the textarea.
|
|
309
|
-
*
|
|
310
|
-
* @type {number}
|
|
311
|
-
* @memberOf CrudFieldComponent
|
|
312
|
-
*/
|
|
313
|
-
rows?: number;
|
|
314
|
-
/**
|
|
315
|
-
* @description Alignment of the field content.
|
|
316
|
-
* @summary Controls the horizontal alignment of the field content.
|
|
317
|
-
* This affects how the content is positioned within the field container.
|
|
318
|
-
*
|
|
319
|
-
* @type {'start' | 'center'}
|
|
320
|
-
* @memberOf CrudFieldComponent
|
|
321
|
-
*/
|
|
322
|
-
alignment?: 'start' | 'center';
|
|
323
|
-
/**
|
|
324
|
-
* @description Initial checked state for checkbox or toggle inputs.
|
|
325
|
-
* @summary For checkbox or toggle inputs, this sets the initial checked state.
|
|
326
|
-
* When true, the checkbox or toggle will be initially checked.
|
|
327
|
-
*
|
|
328
|
-
* @type {boolean}
|
|
329
|
-
* @memberOf CrudFieldComponent
|
|
330
|
-
*/
|
|
331
|
-
checked?: boolean;
|
|
332
|
-
/**
|
|
333
|
-
* @description Justification of items within the field.
|
|
334
|
-
* @summary Controls how items are justified within the field container.
|
|
335
|
-
* This is particularly useful for fields with multiple elements, such as radio groups.
|
|
336
|
-
*
|
|
337
|
-
* @type {'start' | 'end' | 'space-between'}
|
|
338
|
-
* @memberOf CrudFieldComponent
|
|
339
|
-
*/
|
|
340
|
-
justify?: 'start' | 'end' | 'space-between';
|
|
341
|
-
/**
|
|
342
|
-
* @description Text for the cancel button in select inputs.
|
|
343
|
-
* @summary For select inputs with a cancel button, this sets the text displayed on the cancel button.
|
|
344
|
-
* This is typically used in select dialogs to provide a way for users to dismiss the selection without making a change.
|
|
345
|
-
*
|
|
346
|
-
* @type {string}
|
|
347
|
-
* @memberOf CrudFieldComponent
|
|
348
|
-
*/
|
|
349
|
-
cancelText?: string;
|
|
350
|
-
/**
|
|
351
|
-
* @description Interface style for select inputs.
|
|
352
|
-
* @summary Specifies the interface style for select inputs, such as 'alert', 'action-sheet', or 'popover'.
|
|
353
|
-
* This determines how the select options are presented to the user.
|
|
354
|
-
*
|
|
355
|
-
* @type {SelectInterface}
|
|
356
|
-
* @memberOf CrudFieldComponent
|
|
357
|
-
*/
|
|
358
|
-
interface: SelectInterface;
|
|
359
|
-
/**
|
|
360
|
-
* @description Options for select or radio inputs.
|
|
361
|
-
* @summary Provides the list of options for select or radio inputs. Each option can have a value and a label.
|
|
362
|
-
* This is used to populate the dropdown or radio group with choices.
|
|
363
|
-
*
|
|
364
|
-
* @type {CrudFieldOption[]}
|
|
365
|
-
* @memberOf CrudFieldComponent
|
|
366
|
-
*/
|
|
367
|
-
options: CrudFieldOption[];
|
|
368
|
-
/**
|
|
369
|
-
* @description Mode of the field.
|
|
370
|
-
* @summary Specifies the visual mode of the field, such as 'ios' or 'md'.
|
|
371
|
-
* This affects the styling and appearance of the field to match the platform style.
|
|
372
|
-
*
|
|
373
|
-
* @type {'ios' | 'md'}
|
|
374
|
-
* @memberOf CrudFieldComponent
|
|
375
|
-
*/
|
|
376
|
-
mode?: 'ios' | 'md';
|
|
377
|
-
/**
|
|
378
|
-
* @description Spellcheck attribute for text inputs.
|
|
379
|
-
* @summary Enables or disables spellchecking for text inputs.
|
|
380
|
-
* When true, the browser will check the spelling of the input text.
|
|
381
|
-
*
|
|
382
|
-
* @type {boolean}
|
|
383
|
-
* @default false
|
|
384
|
-
* @memberOf CrudFieldComponent
|
|
385
|
-
*/
|
|
386
|
-
spellcheck: boolean;
|
|
387
|
-
/**
|
|
388
|
-
* @description Input mode for text inputs.
|
|
389
|
-
* @summary Hints at the type of data that might be entered by the user while editing the element.
|
|
390
|
-
* This can affect the virtual keyboard layout on mobile devices.
|
|
391
|
-
*
|
|
392
|
-
* @type {'none' | 'text' | 'tel' | 'url' | 'email' | 'numeric' | 'decimal' | 'search'}
|
|
393
|
-
* @default 'none'
|
|
394
|
-
* @memberOf CrudFieldComponent
|
|
395
|
-
*/
|
|
396
|
-
inputmode: 'none' | 'text' | 'tel' | 'url' | 'email' | 'numeric' | 'decimal' | 'search';
|
|
397
|
-
/**
|
|
398
|
-
* @description Autocomplete behavior for the field.
|
|
399
|
-
* @summary Specifies whether and how the browser should automatically complete the input.
|
|
400
|
-
* This can improve user experience by suggesting previously entered values.
|
|
401
|
-
*
|
|
402
|
-
* @type {AutocompleteTypes}
|
|
403
|
-
* @default 'off'
|
|
404
|
-
* @memberOf CrudFieldComponent
|
|
405
|
-
*/
|
|
406
|
-
autocomplete: AutocompleteTypes;
|
|
407
|
-
/**
|
|
408
|
-
* @description Fill style for the field.
|
|
409
|
-
* @summary Determines the fill style of the field, such as 'outline' or 'solid'.
|
|
410
|
-
* This affects the border and background of the field.
|
|
411
|
-
*
|
|
412
|
-
* @type {'outline' | 'solid'}
|
|
413
|
-
* @default 'outline'
|
|
414
|
-
* @memberOf CrudFieldComponent
|
|
415
|
-
*/
|
|
416
|
-
fill: 'outline' | 'solid';
|
|
417
|
-
/**
|
|
418
|
-
* @description Placement of the label relative to the field.
|
|
419
|
-
* @summary Specifies where the label should be placed relative to the field.
|
|
420
|
-
* Options include 'start', 'end', 'floating', 'stacked', and 'fixed'.
|
|
421
|
-
*
|
|
422
|
-
* @type {'start' | 'end' | 'floating' | 'stacked' | 'fixed'}
|
|
423
|
-
* @default 'floating'
|
|
424
|
-
* @memberOf CrudFieldComponent
|
|
425
|
-
*/
|
|
426
|
-
labelPlacement: 'start' | 'end' | 'floating' | 'stacked' | 'fixed';
|
|
427
|
-
/**
|
|
428
|
-
* @description Update mode for the field.
|
|
429
|
-
* @summary Determines when the field value should be updated in the form model.
|
|
430
|
-
* Options include 'change', 'blur', and 'submit'.
|
|
431
|
-
*
|
|
432
|
-
* @type {FieldUpdateMode}
|
|
433
|
-
* @default 'change'
|
|
434
|
-
* @memberOf CrudFieldComponent
|
|
435
|
-
*/
|
|
436
|
-
updateOn: FieldUpdateMode;
|
|
437
|
-
/**
|
|
438
|
-
* @description Reference to the field component.
|
|
439
|
-
* @summary Provides a reference to the field component element, allowing direct access to its properties and methods.
|
|
440
|
-
*
|
|
441
|
-
* @type {ElementRef}
|
|
442
|
-
* @memberOf CrudFieldComponent
|
|
443
|
-
*/
|
|
444
|
-
component: ElementRef;
|
|
445
|
-
/**
|
|
446
|
-
* @description Parent form group.
|
|
447
|
-
* @summary References the parent form group to which this field belongs.
|
|
448
|
-
* This is necessary for integrating the field with Angular's reactive forms.
|
|
449
|
-
*
|
|
450
|
-
* @type {FormGroup}
|
|
451
|
-
* @memberOf CrudFieldComponent
|
|
452
|
-
*/
|
|
453
|
-
formGroup: FormGroup | undefined;
|
|
454
|
-
/**
|
|
455
|
-
* @description Angular FormControl instance for this field.
|
|
456
|
-
* @summary The specific FormControl instance that manages this field's state, validation,
|
|
457
|
-
* and value. This provides direct access to Angular's reactive forms functionality
|
|
458
|
-
* for this individual field within the broader form structure.
|
|
459
|
-
*
|
|
460
|
-
* @type {FormControl}
|
|
461
|
-
* @memberOf CrudFieldComponent
|
|
462
|
-
*/
|
|
463
|
-
formControl: FormControl;
|
|
464
|
-
/**
|
|
465
|
-
* @description Indicates if this field supports multiple values.
|
|
466
|
-
* @summary When true, this field can handle multiple values, typically used in
|
|
467
|
-
* multi-select scenarios or when the field is part of a form array structure
|
|
468
|
-
* that allows multiple entries of the same field type.
|
|
469
|
-
*
|
|
470
|
-
* @type {boolean}
|
|
471
|
-
* @default false
|
|
472
|
-
* @memberOf CrudFieldComponent
|
|
473
|
-
*/
|
|
474
|
-
multiple: boolean;
|
|
475
|
-
/**
|
|
476
|
-
* @description Unique identifier for the current record.
|
|
477
|
-
* @summary A unique identifier for the current record being displayed or manipulated.
|
|
478
|
-
* This is typically used in conjunction with the primary key for operations on specific records.
|
|
479
|
-
*
|
|
480
|
-
* @type {string | number}
|
|
481
|
-
*/
|
|
482
|
-
uid: string;
|
|
483
|
-
page: number;
|
|
484
|
-
/**
|
|
485
|
-
* @description Translatability of field labels.
|
|
486
|
-
* @summary Indicates whether the field labels should be translated based on the current language settings.
|
|
487
|
-
* This is useful for applications supporting multiple languages.
|
|
488
|
-
*
|
|
489
|
-
* @type {StringOrBoolean}
|
|
490
|
-
* @default true
|
|
491
|
-
* @memberOf CrudFieldComponent
|
|
492
|
-
*/
|
|
493
|
-
translatable: StringOrBoolean;
|
|
494
|
-
/**
|
|
495
|
-
* @description Index of the currently active form group in a form array.
|
|
496
|
-
* @summary When working with multiple form groups (form arrays), this indicates
|
|
497
|
-
* which form group is currently active or being edited. This is used to manage
|
|
498
|
-
* focus and data binding in multi-entry scenarios.
|
|
499
|
-
*
|
|
500
|
-
* @type {number}
|
|
501
|
-
* @default 0
|
|
502
|
-
* @memberOf CrudFieldComponent
|
|
503
|
-
*/
|
|
504
|
-
activeFormGroup: number;
|
|
505
|
-
/**
|
|
506
|
-
* @description FormArray containing multiple form groups for this field.
|
|
507
|
-
* @summary When this field is part of a multi-entry structure, this FormArray
|
|
508
|
-
* contains all the form groups. This enables management of multiple instances
|
|
509
|
-
* of the same field structure within a single form.
|
|
510
|
-
*
|
|
511
|
-
* @type {FormArray}
|
|
512
|
-
* @memberOf CrudFieldComponent
|
|
513
|
-
*/
|
|
514
|
-
formGroupArray: FormArray;
|
|
515
|
-
/**
|
|
516
|
-
* @description Primary key field name for uniqueness validation.
|
|
517
|
-
* @summary Specifies the field name that serves as the primary key for uniqueness
|
|
518
|
-
* validation within form arrays. This is used to prevent duplicate entries
|
|
519
|
-
* and ensure data integrity in multi-entry forms.
|
|
520
|
-
*
|
|
521
|
-
* @type {string}
|
|
522
|
-
* @memberOf CrudFieldComponent
|
|
523
|
-
*/
|
|
524
|
-
pk: string;
|
|
525
|
-
/**
|
|
526
|
-
* @description Gets the currently active form group based on context.
|
|
527
|
-
* @summary Returns the appropriate FormGroup based on whether this field supports
|
|
528
|
-
* multiple values. For single-value fields, returns the main form group.
|
|
529
|
-
* For multi-value fields, returns the form group at the active index from the parent FormArray.
|
|
530
|
-
*
|
|
531
|
-
* @returns {FormGroup} The currently active FormGroup for this field
|
|
532
|
-
* @memberOf CrudFieldComponent
|
|
533
|
-
*/
|
|
534
|
-
get getActiveFormGroup(): FormGroup;
|
|
535
|
-
/**
|
|
536
|
-
* Returns a list of options for select or radio inputs, with their `text` property
|
|
537
|
-
* localized if it does not already include the word 'options'. The localization key
|
|
538
|
-
* is generated from the component's label, replacing 'label' with 'options'.
|
|
539
|
-
*
|
|
540
|
-
* @returns {CrudFieldOption[]} The array of parsed and localized options.
|
|
541
|
-
* @memberOf CrudFieldComponent
|
|
542
|
-
*/
|
|
543
|
-
get parsedOptions(): CrudFieldOption[];
|
|
544
|
-
/**
|
|
545
|
-
* @description Component initialization lifecycle method.
|
|
546
|
-
* @summary Initializes the field component based on the operation type and field configuration.
|
|
547
|
-
* For READ and DELETE operations, removes the form group to make fields read-only.
|
|
548
|
-
* For other operations, sets up icons, configures multi-value support if needed,
|
|
549
|
-
* and sets default values for radio buttons if no value is provided.
|
|
550
|
-
*
|
|
551
|
-
* @returns {void}
|
|
552
|
-
* @memberOf CrudFieldComponent
|
|
553
|
-
*/
|
|
554
|
-
ngOnInit(): void;
|
|
555
|
-
/**
|
|
556
|
-
* @description Component after view initialization lifecycle method.
|
|
557
|
-
* @summary Calls the parent afterViewInit method for READ and DELETE operations.
|
|
558
|
-
* This ensures proper initialization of read-only fields that don't require
|
|
559
|
-
* form functionality but still need view setup.
|
|
560
|
-
*
|
|
561
|
-
* @returns {void}
|
|
562
|
-
* @memberOf CrudFieldComponent
|
|
563
|
-
*/
|
|
564
|
-
ngAfterViewInit(): void;
|
|
565
|
-
/**
|
|
566
|
-
* @description Component cleanup lifecycle method.
|
|
567
|
-
* @summary Performs cleanup operations for READ and DELETE operations by calling
|
|
568
|
-
* the parent onDestroy method. This ensures proper resource cleanup for
|
|
569
|
-
* read-only field components.
|
|
570
|
-
*
|
|
571
|
-
* @returns {void}
|
|
572
|
-
* @memberOf CrudFieldComponent
|
|
573
|
-
*/
|
|
574
|
-
ngOnDestroy(): void;
|
|
575
|
-
/**
|
|
576
|
-
* @description Handles fieldset group creation events from parent fieldsets.
|
|
577
|
-
* @summary Processes events triggered when a new group needs to be added to a fieldset.
|
|
578
|
-
* Validates the current form group, checks for uniqueness if applicable, and either
|
|
579
|
-
* creates a new group or provides validation feedback. Updates the active form group
|
|
580
|
-
* and resets the field for new input after successful creation.
|
|
581
|
-
*
|
|
582
|
-
* @param {CustomEvent} event - The fieldset create group event containing group details
|
|
583
|
-
* @returns {void}
|
|
584
|
-
* @memberOf CrudFieldComponent
|
|
585
|
-
*/
|
|
586
|
-
handleFieldsetCreateGroupEvent(event: CustomEvent): void;
|
|
587
|
-
/**
|
|
588
|
-
* @description Handles fieldset group update events from parent fieldsets.
|
|
589
|
-
* @summary Processes events triggered when an existing group needs to be updated.
|
|
590
|
-
* Updates the active form group index and refreshes the form group and form control
|
|
591
|
-
* references to point to the group being edited.
|
|
592
|
-
*
|
|
593
|
-
* @param {CustomEvent} event - The fieldset update group event containing update details
|
|
594
|
-
* @returns {void}
|
|
595
|
-
* @memberOf CrudFieldComponent
|
|
596
|
-
*/
|
|
597
|
-
handleFieldsetUpdateGroupEvent(event: CustomEvent): void;
|
|
598
|
-
/**
|
|
599
|
-
* @description Handles fieldset group removal events from parent fieldsets.
|
|
600
|
-
* @summary Processes events triggered when a group needs to be removed from a fieldset.
|
|
601
|
-
* Removes the specified group from the form array, updates the active form group index,
|
|
602
|
-
* and refreshes the form references. Dispatches a confirmation event back to the component.
|
|
603
|
-
*
|
|
604
|
-
* @param {CustomEvent} event - The fieldset remove group event containing removal details
|
|
605
|
-
* @returns {void}
|
|
606
|
-
* @memberOf CrudFieldComponent
|
|
607
|
-
*/
|
|
608
|
-
handleFieldsetRemoveGroupEvent(event: CustomEvent): void;
|
|
609
|
-
static ɵfac: i0.ɵɵFactoryDeclaration<CrudFieldComponent, never>;
|
|
610
|
-
static ɵcmp: i0.ɵɵComponentDeclaration<CrudFieldComponent, "ngx-decaf-crud-field", never, { "operation": { "alias": "operation"; "required": true; }; "name": { "alias": "name"; "required": true; }; "path": { "alias": "path"; "required": true; }; "childOf": { "alias": "childOf"; "required": false; }; "type": { "alias": "type"; "required": true; }; "value": { "alias": "value"; "required": false; }; "disabled": { "alias": "disabled"; "required": false; }; "label": { "alias": "label"; "required": true; }; "placeholder": { "alias": "placeholder"; "required": false; }; "format": { "alias": "format"; "required": false; }; "hidden": { "alias": "hidden"; "required": false; }; "max": { "alias": "max"; "required": false; }; "maxlength": { "alias": "maxlength"; "required": false; }; "min": { "alias": "min"; "required": false; }; "minlength": { "alias": "minlength"; "required": false; }; "pattern": { "alias": "pattern"; "required": false; }; "readonly": { "alias": "readonly"; "required": false; }; "required": { "alias": "required"; "required": false; }; "step": { "alias": "step"; "required": false; }; "equals": { "alias": "equals"; "required": false; }; "different": { "alias": "different"; "required": false; }; "lessThan": { "alias": "lessThan"; "required": false; }; "lessThanOrEqual": { "alias": "lessThanOrEqual"; "required": false; }; "greaterThan": { "alias": "greaterThan"; "required": false; }; "greaterThanOrEqual": { "alias": "greaterThanOrEqual"; "required": false; }; "cols": { "alias": "cols"; "required": false; }; "rows": { "alias": "rows"; "required": false; }; "alignment": { "alias": "alignment"; "required": false; }; "checked": { "alias": "checked"; "required": false; }; "justify": { "alias": "justify"; "required": false; }; "cancelText": { "alias": "cancelText"; "required": false; }; "interface": { "alias": "interface"; "required": false; }; "options": { "alias": "options"; "required": false; }; "mode": { "alias": "mode"; "required": false; }; "spellcheck": { "alias": "spellcheck"; "required": false; }; "inputmode": { "alias": "inputmode"; "required": false; }; "autocomplete": { "alias": "autocomplete"; "required": false; }; "fill": { "alias": "fill"; "required": false; }; "labelPlacement": { "alias": "labelPlacement"; "required": false; }; "updateOn": { "alias": "updateOn"; "required": false; }; "formGroup": { "alias": "formGroup"; "required": false; }; "formControl": { "alias": "formControl"; "required": false; }; "multiple": { "alias": "multiple"; "required": false; }; "uid": { "alias": "uid"; "required": false; }; "page": { "alias": "page"; "required": false; }; "translatable": { "alias": "translatable"; "required": false; }; "activeFormGroup": { "alias": "activeFormGroup"; "required": false; }; "pk": { "alias": "pk"; "required": false; }; }, {}, never, never, true, never>;
|
|
611
|
-
}
|