@dereekb/dbx-form 13.7.0 → 13.8.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (45) hide show
  1. package/fesm2022/dereekb-dbx-form-array.field.component-1wYSd4d3.mjs +169 -0
  2. package/fesm2022/dereekb-dbx-form-array.field.component-1wYSd4d3.mjs.map +1 -0
  3. package/fesm2022/dereekb-dbx-form-calendar.mjs +433 -144
  4. package/fesm2022/dereekb-dbx-form-calendar.mjs.map +1 -1
  5. package/fesm2022/dereekb-dbx-form-expand.field.component-Bp5_uO1A.mjs +56 -0
  6. package/fesm2022/dereekb-dbx-form-expand.field.component-Bp5_uO1A.mjs.map +1 -0
  7. package/fesm2022/dereekb-dbx-form-formfield.field.component-BQyujXe3.mjs +70 -0
  8. package/fesm2022/dereekb-dbx-form-formfield.field.component-BQyujXe3.mjs.map +1 -0
  9. package/fesm2022/dereekb-dbx-form-info.field.component-B0cFprvc.mjs +50 -0
  10. package/fesm2022/dereekb-dbx-form-info.field.component-B0cFprvc.mjs.map +1 -0
  11. package/fesm2022/dereekb-dbx-form-info.wrapper.field.component-Crm4wVr5.mjs +35 -0
  12. package/fesm2022/dereekb-dbx-form-info.wrapper.field.component-Crm4wVr5.mjs.map +1 -0
  13. package/fesm2022/dereekb-dbx-form-mapbox.mjs +629 -32
  14. package/fesm2022/dereekb-dbx-form-mapbox.mjs.map +1 -1
  15. package/fesm2022/dereekb-dbx-form-quiz.mjs +46 -55
  16. package/fesm2022/dereekb-dbx-form-quiz.mjs.map +1 -1
  17. package/fesm2022/dereekb-dbx-form-section.field.component-DliafLqL.mjs +63 -0
  18. package/fesm2022/dereekb-dbx-form-section.field.component-DliafLqL.mjs.map +1 -0
  19. package/fesm2022/dereekb-dbx-form-style.field.component-C3ZNiotx.mjs +71 -0
  20. package/fesm2022/dereekb-dbx-form-style.field.component-C3ZNiotx.mjs.map +1 -0
  21. package/fesm2022/dereekb-dbx-form-working.field.component-CO8vK2bH.mjs +53 -0
  22. package/fesm2022/dereekb-dbx-form-working.field.component-CO8vK2bH.mjs.map +1 -0
  23. package/fesm2022/dereekb-dbx-form-working.wrapper.field.component-BtD7_5i5.mjs +54 -0
  24. package/fesm2022/dereekb-dbx-form-working.wrapper.field.component-BtD7_5i5.mjs.map +1 -0
  25. package/fesm2022/dereekb-dbx-form-wrapper.content.component-Cy4ND_se.mjs +87 -0
  26. package/fesm2022/dereekb-dbx-form-wrapper.content.component-Cy4ND_se.mjs.map +1 -0
  27. package/fesm2022/dereekb-dbx-form.mjs +11789 -4869
  28. package/fesm2022/dereekb-dbx-form.mjs.map +1 -1
  29. package/lib/forge/field/_field.scss +14 -0
  30. package/lib/forge/field/selection/_selection.scss +15 -0
  31. package/lib/forge/field/selection/pickable/_pickable.scss +11 -0
  32. package/lib/forge/field/selection/searchable/_searchable.scss +34 -0
  33. package/lib/forge/field/selection/sourceselect/_sourceselect.scss +46 -0
  34. package/lib/forge/field/wrapper/_wrapper.scss +62 -0
  35. package/lib/forge/style/_shared.scss +26 -0
  36. package/lib/form/_form.scss +95 -0
  37. package/lib/formly/field/texteditor/_texteditor.scss +8 -0
  38. package/lib/formly/field/value/array/_array.scss +6 -0
  39. package/lib/formly/field/value/phone/_phone.scss +4 -1
  40. package/lib/style/_all-core.scss +2 -0
  41. package/lib/style/_all-theme.scss +2 -0
  42. package/package.json +16 -14
  43. package/types/dereekb-dbx-form-calendar.d.ts +313 -96
  44. package/types/dereekb-dbx-form-mapbox.d.ts +297 -4
  45. package/types/dereekb-dbx-form.d.ts +8009 -2498
@@ -2,8 +2,8 @@ import { LabeledFieldConfig, DescriptionFieldConfig, FieldConfig } from '@dereek
2
2
  import * as i2 from '@ngx-formly/core';
3
3
  import { FormlyFieldProps, FieldTypeConfig, FormlyFieldConfig } from '@ngx-formly/core';
4
4
  import * as i0 from '@angular/core';
5
- import { OnInit, OnDestroy, Injector } from '@angular/core';
6
- import { AbstractControl, FormGroup } from '@angular/forms';
5
+ import { OnInit, OnDestroy, Injector, InputSignal, Signal } from '@angular/core';
6
+ import { AbstractControl, FormGroup, FormControl } from '@angular/forms';
7
7
  import { CompactContextStore } from '@dereekb/dbx-web';
8
8
  import { FieldType } from '@ngx-formly/material';
9
9
  import { Observable, BehaviorSubject } from 'rxjs';
@@ -11,6 +11,8 @@ import { ObservableFactoryWithRequiredInput } from '@dereekb/rxjs';
11
11
  import { Milliseconds, LatLngPointFunctionConfig, Maybe, LatLngPoint, ZoomLevel } from '@dereekb/util';
12
12
  import { Marker } from 'mapbox-gl';
13
13
  import { DbxMapboxMarkerDisplayConfig, MapboxZoomLevel, DbxMapboxInjectionStore, DbxMapboxMapStore, DbxMapboxMarker, DbxMapboxService } from '@dereekb/dbx-web/mapbox';
14
+ import { DynamicText, FieldMeta, ValidationMessages, BaseValueField, FieldTypeDefinition } from '@ng-forge/dynamic-forms';
15
+ import { FieldTree } from '@angular/forms/signals';
14
16
 
15
17
  declare const DEFAULT_DBX_FORM_MAPBOX_LAT_LNG_FIELD_INJECTION_KEY = "DbxFormMapboxLatLngFieldComponent";
16
18
  declare const DEFAULT_DBX_FORM_MAPBOX_LAT_LNG_MARKER_CONFIG: DbxMapboxMarkerDisplayConfig;
@@ -65,6 +67,9 @@ interface DbxFormMapboxLatLngComponentFieldProps extends FormlyFieldProps {
65
67
  */
66
68
  readonly markerConfig?: false | ObservableFactoryWithRequiredInput<DbxMapboxMarkerDisplayConfig | false, DbxFormMapboxLatLngFieldComponent>;
67
69
  }
70
+ /**
71
+ * @deprecated Use DbxForgeMapboxLatLngFieldComponent instead.
72
+ */
68
73
  declare class DbxFormMapboxLatLngFieldComponent<T extends DbxFormMapboxLatLngComponentFieldProps = DbxFormMapboxLatLngComponentFieldProps> extends FieldType<FieldTypeConfig<T>> implements OnInit, OnDestroy {
69
74
  private readonly _geolocationService;
70
75
  readonly compact: CompactContextStore | null;
@@ -118,11 +123,15 @@ declare class DbxFormMapboxLatLngFieldComponent<T extends DbxFormMapboxLatLngCom
118
123
  static ɵcmp: i0.ɵɵComponentDeclaration<DbxFormMapboxLatLngFieldComponent<any>, "ng-component", never, {}, {}, never, never, true, never>;
119
124
  }
120
125
 
126
+ /**
127
+ * @deprecated Use DbxForgeMapboxLatLngFieldConfig instead.
128
+ */
121
129
  interface MapboxLatLngFieldConfig extends Omit<LabeledFieldConfig, 'key'>, DescriptionFieldConfig, Partial<FieldConfig>, Pick<DbxFormMapboxLatLngComponentFieldProps, 'showMap' | 'zoom' | 'latLngConfig' | 'recenterTime' | 'setCenterOnLocationSet' | 'showCenterButton' | 'selectLocationOnMapDrag' | 'selectLocationOnMapClick' | 'markerConfig'> {
122
130
  }
123
131
  /**
124
132
  * Creates a Formly field configuration for a Mapbox-powered latitude/longitude picker with optional map display.
125
133
  *
134
+ * @deprecated Use forgeMapboxLatLngField() from the forge API instead.
126
135
  * @param config - Optional field configuration overrides
127
136
  * @returns A validated Formly field configuration for the Mapbox lat/lng picker
128
137
  */
@@ -136,12 +145,160 @@ declare class DbxFormMapboxLatLngFieldMarkerComponent {
136
145
  static ɵcmp: i0.ɵɵComponentDeclaration<DbxFormMapboxLatLngFieldMarkerComponent, "ng-component", never, {}, {}, never, never, true, never>;
137
146
  }
138
147
 
148
+ /**
149
+ * @deprecated Use provideDbxForgeMapboxFieldDeclarations() instead.
150
+ */
139
151
  declare class DbxFormMapboxLatLngModule {
140
152
  static ɵfac: i0.ɵɵFactoryDeclaration<DbxFormMapboxLatLngModule, never>;
141
153
  static ɵmod: i0.ɵɵNgModuleDeclaration<DbxFormMapboxLatLngModule, never, [typeof DbxFormMapboxLatLngFieldComponent, typeof i2.FormlyModule], [typeof DbxFormMapboxLatLngFieldComponent]>;
142
154
  static ɵinj: i0.ɵɵInjectorDeclaration<DbxFormMapboxLatLngModule>;
143
155
  }
144
156
 
157
+ declare const DEFAULT_DBX_FORGE_MAPBOX_LAT_LNG_FIELD_INJECTION_KEY = "DbxForgeMapboxLatLngFieldComponent";
158
+ declare const DEFAULT_DBX_FORGE_MAPBOX_LAT_LNG_MARKER_CONFIG: DbxMapboxMarkerDisplayConfig;
159
+ /**
160
+ * Custom props for the forge mapbox lat/lng field.
161
+ */
162
+ interface DbxForgeMapboxLatLngFieldComponentProps {
163
+ readonly label?: string;
164
+ readonly description?: string;
165
+ readonly placeholder?: string;
166
+ readonly pattern?: RegExp;
167
+ readonly patternMessage?: string;
168
+ readonly showMap?: boolean;
169
+ readonly showCenterButton?: boolean;
170
+ readonly setCenterOnLocationSet?: boolean;
171
+ readonly selectLocationOnMapDrag?: boolean;
172
+ readonly selectLocationOnMapClick?: boolean;
173
+ readonly zoom?: MapboxZoomLevel;
174
+ readonly recenterTime?: Milliseconds;
175
+ readonly latLngConfig?: LatLngPointFunctionConfig;
176
+ readonly mapInjectionKey?: Maybe<string | false>;
177
+ readonly markerConfig?: false | ObservableFactoryWithRequiredInput<DbxMapboxMarkerDisplayConfig | false, DbxForgeMapboxLatLngFieldComponent>;
178
+ }
179
+ /**
180
+ * Forge custom field component for Mapbox latitude/longitude picking.
181
+ *
182
+ * This is the forge equivalent of {@link DbxFormMapboxLatLngFieldComponent}.
183
+ * It bridges ng-forge Signal Forms with the Mapbox map store.
184
+ *
185
+ * Registered as ng-forge type 'dbx-forge-mapbox-latlng'.
186
+ */
187
+ declare class DbxForgeMapboxLatLngFieldComponent implements OnDestroy {
188
+ private readonly _geolocationService;
189
+ readonly compact: CompactContextStore | null;
190
+ readonly dbxMapboxInjectionStore: DbxMapboxInjectionStore | null;
191
+ readonly dbxMapboxMapStore: DbxMapboxMapStore;
192
+ readonly field: InputSignal<FieldTree<unknown>>;
193
+ readonly key: InputSignal<string>;
194
+ readonly label: InputSignal<DynamicText | undefined>;
195
+ readonly placeholder: InputSignal<DynamicText | undefined>;
196
+ readonly className: InputSignal<string>;
197
+ readonly tabIndex: InputSignal<number | undefined>;
198
+ readonly props: InputSignal<DbxForgeMapboxLatLngFieldComponentProps | undefined>;
199
+ readonly meta: InputSignal<FieldMeta | undefined>;
200
+ readonly validationMessages: InputSignal<ValidationMessages | undefined>;
201
+ readonly defaultValidationMessages: InputSignal<ValidationMessages | undefined>;
202
+ readonly textCtrl: FormControl<string | null>;
203
+ private readonly _sub;
204
+ private readonly _geoSub;
205
+ private readonly _centerSub;
206
+ private readonly _flyToCenterSub;
207
+ private readonly _clickSub;
208
+ private readonly _zoom;
209
+ private readonly _markerConfig;
210
+ private _latLngStringFunction;
211
+ private _latLngPointFunction;
212
+ readonly compactClass$: Observable<string>;
213
+ private readonly _useCurrentLocationDisabled;
214
+ readonly useCurrentLocationDisabled$: Observable<boolean>;
215
+ readonly fieldValue: Signal<unknown>;
216
+ readonly isDisabled: Signal<boolean>;
217
+ readonly isReadonlyOrDisabledSignal: Signal<any>;
218
+ readonly showMapSignal: Signal<boolean>;
219
+ readonly selectLocationOnMapDragSignal: Signal<boolean>;
220
+ readonly selectLocationOnMapClickSignal: Signal<boolean>;
221
+ readonly setCenterOnLocationSetSignal: Signal<boolean>;
222
+ readonly showCenterButtonSignal: Signal<boolean>;
223
+ readonly recenterTimeSignal: Signal<number>;
224
+ readonly placeholderTextSignal: Signal<string | undefined>;
225
+ readonly fieldValue$: Observable<unknown>;
226
+ readonly latLng$: Observable<LatLngPoint>;
227
+ readonly nonZeroLatLng$: Observable<LatLngPoint>;
228
+ readonly zoom$: Observable<number>;
229
+ readonly markerConfig$: Observable<false | DbxMapboxMarkerDisplayConfig>;
230
+ readonly useCurrentLocationDisabledSignal: Signal<boolean>;
231
+ readonly compactClassSignal: Signal<string>;
232
+ readonly latLngSignal: Signal<LatLngPoint>;
233
+ private _syncing;
234
+ private _setFieldValue;
235
+ constructor();
236
+ ngOnDestroy(): void;
237
+ flyToMarker(): void;
238
+ useCurrentLocation(): void;
239
+ onMarkerDragEnd(marker: Marker): void;
240
+ setValue(latLng?: Maybe<LatLngPoint>): void;
241
+ static ɵfac: i0.ɵɵFactoryDeclaration<DbxForgeMapboxLatLngFieldComponent, never>;
242
+ static ɵcmp: i0.ɵɵComponentDeclaration<DbxForgeMapboxLatLngFieldComponent, "dbx-forge-mapbox-latlng-field", never, { "field": { "alias": "field"; "required": true; "isSignal": true; }; "key": { "alias": "key"; "required": true; "isSignal": true; }; "label": { "alias": "label"; "required": false; "isSignal": true; }; "placeholder": { "alias": "placeholder"; "required": false; "isSignal": true; }; "className": { "alias": "className"; "required": false; "isSignal": true; }; "tabIndex": { "alias": "tabIndex"; "required": false; "isSignal": true; }; "props": { "alias": "props"; "required": false; "isSignal": true; }; "meta": { "alias": "meta"; "required": false; "isSignal": true; }; "validationMessages": { "alias": "validationMessages"; "required": false; "isSignal": true; }; "defaultValidationMessages": { "alias": "defaultValidationMessages"; "required": false; "isSignal": true; }; }, {}, never, never, true, never>;
243
+ }
244
+ /**
245
+ * Custom mapper for the forge mapbox lat/lng field.
246
+ *
247
+ * @param fieldDef - Field definition configuration
248
+ * @param fieldDef.key - Form model key for the field
249
+ * @returns Signal containing a Record of input names to values for ngComponentOutlet
250
+ */
251
+ declare function mapboxLatLngFieldMapper(fieldDef: {
252
+ key: string;
253
+ }): Signal<Record<string, unknown>>;
254
+
255
+ /**
256
+ * The custom forge field type name for the mapbox lat/lng field.
257
+ */
258
+ declare const FORGE_MAPBOX_LATLNG_FIELD_TYPE: "dbx-forge-mapbox-latlng";
259
+ /**
260
+ * Field definition type for a forge mapbox lat/lng picker field.
261
+ */
262
+ type DbxForgeMapboxLatLngFieldDef = BaseValueField<DbxForgeMapboxLatLngFieldComponentProps, unknown> & {
263
+ readonly type: typeof FORGE_MAPBOX_LATLNG_FIELD_TYPE;
264
+ };
265
+ /**
266
+ * Configuration for a forge mapbox lat/lng picker field.
267
+ */
268
+ interface DbxForgeMapboxLatLngFieldConfig {
269
+ readonly key?: string;
270
+ readonly label?: string;
271
+ readonly description?: string;
272
+ readonly required?: boolean;
273
+ readonly readonly?: boolean;
274
+ readonly showMap?: boolean;
275
+ readonly showCenterButton?: boolean;
276
+ readonly setCenterOnLocationSet?: boolean;
277
+ readonly selectLocationOnMapDrag?: boolean;
278
+ readonly selectLocationOnMapClick?: boolean;
279
+ readonly zoom?: number;
280
+ readonly recenterTime?: number;
281
+ readonly latLngConfig?: LatLngPointFunctionConfig;
282
+ readonly markerConfig?: DbxForgeMapboxLatLngFieldComponentProps['markerConfig'];
283
+ }
284
+ /**
285
+ * Creates a forge field definition for a Mapbox-powered latitude/longitude picker.
286
+ *
287
+ * This is the forge equivalent of {@link mapboxLatLngField}.
288
+ *
289
+ * @param config - Optional field configuration overrides
290
+ * @returns A validated forge field definition for the Mapbox lat/lng picker
291
+ */
292
+ declare function forgeMapboxLatLngField(config?: DbxForgeMapboxLatLngFieldConfig): DbxForgeMapboxLatLngFieldDef;
293
+
294
+ declare class DbxForgeMapboxLatLngFieldMarkerComponent {
295
+ readonly fieldComponent: DbxForgeMapboxLatLngFieldComponent;
296
+ readonly marker$: Observable<Maybe<DbxMapboxMarker>>;
297
+ readonly markerSignal: i0.Signal<Maybe<DbxMapboxMarker>>;
298
+ static ɵfac: i0.ɵɵFactoryDeclaration<DbxForgeMapboxLatLngFieldMarkerComponent, never>;
299
+ static ɵcmp: i0.ɵɵComponentDeclaration<DbxForgeMapboxLatLngFieldMarkerComponent, "ng-component", never, {}, {}, never, never, true, never>;
300
+ }
301
+
145
302
  interface DbxFormMapboxZoomComponentFieldProps extends Omit<FormlyFieldProps, 'min' | 'max'> {
146
303
  /**
147
304
  * (Optional) Whether or not the show the map. Cases where this would be set false is if another map is being used.
@@ -170,6 +327,9 @@ interface DbxFormMapboxZoomComponentFieldProps extends Omit<FormlyFieldProps, 'm
170
327
  */
171
328
  readonly zoomStep?: number;
172
329
  }
330
+ /**
331
+ * @deprecated Use DbxForgeMapboxZoomFieldComponent instead.
332
+ */
173
333
  declare class DbxFormMapboxZoomFieldComponent<T extends DbxFormMapboxZoomComponentFieldProps = DbxFormMapboxZoomComponentFieldProps> extends FieldType<FieldTypeConfig<T>> implements OnInit, OnDestroy {
174
334
  readonly compact: CompactContextStore | null;
175
335
  readonly dbxMapboxService: DbxMapboxService;
@@ -202,27 +362,160 @@ declare class DbxFormMapboxZoomFieldComponent<T extends DbxFormMapboxZoomCompone
202
362
  static ɵcmp: i0.ɵɵComponentDeclaration<DbxFormMapboxZoomFieldComponent<any>, "ng-component", never, {}, {}, never, never, true, never>;
203
363
  }
204
364
 
365
+ /**
366
+ * @deprecated Use DbxForgeMapboxZoomFieldConfig instead.
367
+ */
205
368
  interface MapboxZoomFieldConfig extends Omit<LabeledFieldConfig, 'key'>, DescriptionFieldConfig, Partial<FieldConfig>, Pick<DbxFormMapboxZoomComponentFieldProps, 'showMap' | 'center' | 'minZoom' | 'maxZoom' | 'zoomStep'> {
206
369
  }
207
370
  /**
208
371
  * Creates a Formly field configuration for a Mapbox-powered zoom level picker with optional map preview.
209
372
  *
373
+ * @deprecated Use forgeMapboxZoomField() from the forge API instead.
210
374
  * @param config - Optional field configuration overrides
211
375
  * @returns A validated Formly field configuration for the Mapbox zoom picker
212
376
  */
213
377
  declare function mapboxZoomField(config?: MapboxZoomFieldConfig): FormlyFieldConfig;
214
378
 
379
+ /**
380
+ * @deprecated Use provideDbxForgeMapboxFieldDeclarations() instead.
381
+ */
215
382
  declare class DbxFormMapboxZoomModule {
216
383
  static ɵfac: i0.ɵɵFactoryDeclaration<DbxFormMapboxZoomModule, never>;
217
384
  static ɵmod: i0.ɵɵNgModuleDeclaration<DbxFormMapboxZoomModule, never, [typeof DbxFormMapboxZoomFieldComponent, typeof i2.FormlyModule], [typeof DbxFormMapboxZoomFieldComponent]>;
218
385
  static ɵinj: i0.ɵɵInjectorDeclaration<DbxFormMapboxZoomModule>;
219
386
  }
220
387
 
388
+ /**
389
+ * Custom props for the forge mapbox zoom field.
390
+ */
391
+ interface DbxForgeMapboxZoomFieldComponentProps {
392
+ readonly label?: string;
393
+ readonly description?: string;
394
+ readonly showMap?: boolean;
395
+ readonly center?: LatLngPoint;
396
+ readonly lockMapToZoomLevels?: boolean;
397
+ readonly minZoom?: MapboxZoomLevel;
398
+ readonly maxZoom?: MapboxZoomLevel;
399
+ readonly zoomStep?: number;
400
+ }
401
+ /**
402
+ * Forge custom field component for Mapbox zoom level picking.
403
+ *
404
+ * This is the forge equivalent of {@link DbxFormMapboxZoomFieldComponent}.
405
+ * It bridges ng-forge Signal Forms with the Mapbox map store.
406
+ *
407
+ * Registered as ng-forge type 'dbx-forge-mapbox-zoom'.
408
+ */
409
+ declare class DbxForgeMapboxZoomFieldComponent implements OnDestroy {
410
+ readonly compact: CompactContextStore | null;
411
+ readonly dbxMapboxService: DbxMapboxService;
412
+ readonly dbxMapboxMapStore: DbxMapboxMapStore;
413
+ readonly field: InputSignal<FieldTree<unknown>>;
414
+ readonly key: InputSignal<string>;
415
+ readonly label: InputSignal<DynamicText | undefined>;
416
+ readonly placeholder: InputSignal<DynamicText | undefined>;
417
+ readonly className: InputSignal<string>;
418
+ readonly tabIndex: InputSignal<number | undefined>;
419
+ readonly props: InputSignal<DbxForgeMapboxZoomFieldComponentProps | undefined>;
420
+ readonly meta: InputSignal<FieldMeta | undefined>;
421
+ readonly validationMessages: InputSignal<ValidationMessages | undefined>;
422
+ readonly defaultValidationMessages: InputSignal<ValidationMessages | undefined>;
423
+ readonly numberCtrl: FormControl<number | null>;
424
+ readonly placeholderText = "";
425
+ private _undoZoomLimit;
426
+ readonly compactClass$: Observable<string>;
427
+ readonly compactClassSignal: Signal<string>;
428
+ private readonly _sub;
429
+ private readonly _center;
430
+ readonly fieldValue: Signal<unknown>;
431
+ readonly isDisabled: Signal<boolean>;
432
+ readonly isReadonlyOrDisabledSignal: Signal<any>;
433
+ readonly showMapSignal: Signal<boolean>;
434
+ readonly lockMapToZoomLevelsSignal: Signal<boolean>;
435
+ readonly minZoomSignal: Signal<number>;
436
+ readonly maxZoomSignal: Signal<number>;
437
+ readonly zoomStepSignal: Signal<number>;
438
+ readonly fieldValue$: Observable<unknown>;
439
+ readonly zoom$: Observable<MapboxZoomLevel>;
440
+ readonly center$: Observable<LatLngPoint>;
441
+ private _syncing;
442
+ private _setFieldValue;
443
+ constructor();
444
+ ngOnDestroy(): void;
445
+ setZoomValue(zoom?: Maybe<ZoomLevel>): void;
446
+ static ɵfac: i0.ɵɵFactoryDeclaration<DbxForgeMapboxZoomFieldComponent, never>;
447
+ static ɵcmp: i0.ɵɵComponentDeclaration<DbxForgeMapboxZoomFieldComponent, "dbx-forge-mapbox-zoom-field", never, { "field": { "alias": "field"; "required": true; "isSignal": true; }; "key": { "alias": "key"; "required": true; "isSignal": true; }; "label": { "alias": "label"; "required": false; "isSignal": true; }; "placeholder": { "alias": "placeholder"; "required": false; "isSignal": true; }; "className": { "alias": "className"; "required": false; "isSignal": true; }; "tabIndex": { "alias": "tabIndex"; "required": false; "isSignal": true; }; "props": { "alias": "props"; "required": false; "isSignal": true; }; "meta": { "alias": "meta"; "required": false; "isSignal": true; }; "validationMessages": { "alias": "validationMessages"; "required": false; "isSignal": true; }; "defaultValidationMessages": { "alias": "defaultValidationMessages"; "required": false; "isSignal": true; }; }, {}, never, never, true, never>;
448
+ }
449
+ /**
450
+ * Custom mapper for the forge mapbox zoom field.
451
+ *
452
+ * @param fieldDef - Field definition configuration
453
+ * @param fieldDef.key - Form model key for the field
454
+ * @returns Signal containing a Record of input names to values for ngComponentOutlet
455
+ */
456
+ declare function mapboxZoomFieldMapper(fieldDef: {
457
+ key: string;
458
+ }): Signal<Record<string, unknown>>;
459
+
460
+ /**
461
+ * The custom forge field type name for the mapbox zoom field.
462
+ */
463
+ declare const FORGE_MAPBOX_ZOOM_FIELD_TYPE: "dbx-forge-mapbox-zoom";
464
+ /**
465
+ * Field definition type for a forge mapbox zoom picker field.
466
+ */
467
+ type DbxForgeMapboxZoomFieldDef = BaseValueField<DbxForgeMapboxZoomFieldComponentProps, unknown> & {
468
+ readonly type: typeof FORGE_MAPBOX_ZOOM_FIELD_TYPE;
469
+ };
470
+ /**
471
+ * Configuration for a forge mapbox zoom picker field.
472
+ */
473
+ interface DbxForgeMapboxZoomFieldConfig {
474
+ readonly key?: string;
475
+ readonly label?: string;
476
+ readonly description?: string;
477
+ readonly required?: boolean;
478
+ readonly readonly?: boolean;
479
+ readonly showMap?: boolean;
480
+ readonly center?: LatLngPoint;
481
+ readonly minZoom?: MapboxZoomLevel;
482
+ readonly maxZoom?: MapboxZoomLevel;
483
+ readonly zoomStep?: number;
484
+ }
485
+ /**
486
+ * Creates a forge field definition for a Mapbox-powered zoom level picker.
487
+ *
488
+ * This is the forge equivalent of {@link mapboxZoomField}.
489
+ *
490
+ * @param config - Optional field configuration overrides
491
+ * @returns A validated forge field definition for the Mapbox zoom picker
492
+ */
493
+ declare function forgeMapboxZoomField(config?: DbxForgeMapboxZoomFieldConfig): DbxForgeMapboxZoomFieldDef;
494
+
495
+ /**
496
+ * @deprecated Use provideDbxForgeMapboxFieldDeclarations() instead.
497
+ */
221
498
  declare class DbxFormMapboxModule {
222
499
  static ɵfac: i0.ɵɵFactoryDeclaration<DbxFormMapboxModule, never>;
223
500
  static ɵmod: i0.ɵɵNgModuleDeclaration<DbxFormMapboxModule, never, never, [typeof DbxFormMapboxLatLngModule, typeof DbxFormMapboxZoomModule]>;
224
501
  static ɵinj: i0.ɵɵInjectorDeclaration<DbxFormMapboxModule>;
225
502
  }
226
503
 
227
- export { DEFAULT_DBX_FORM_MAPBOX_LAT_LNG_FIELD_INJECTION_KEY, DEFAULT_DBX_FORM_MAPBOX_LAT_LNG_MARKER_CONFIG, DbxFormMapboxLatLngFieldComponent, DbxFormMapboxLatLngFieldMarkerComponent, DbxFormMapboxLatLngModule, DbxFormMapboxModule, DbxFormMapboxZoomFieldComponent, DbxFormMapboxZoomModule, mapboxLatLngField, mapboxZoomField };
228
- export type { DbxFormMapboxLatLngComponentFieldProps, DbxFormMapboxZoomComponentFieldProps, MapboxLatLngFieldConfig, MapboxZoomFieldConfig };
504
+ /**
505
+ * All custom dbx-form/mapbox forge field type definitions.
506
+ */
507
+ declare const DBX_FORGE_MAPBOX_FIELD_TYPES: FieldTypeDefinition[];
508
+ /**
509
+ * Registers ng-forge dynamic form field declarations for the mapbox package.
510
+ *
511
+ * Add this to your app's providers alongside provideDbxForgeFormFieldDeclarations().
512
+ *
513
+ * @returns An array of providers that register the mapbox forge field types with ng-forge
514
+ */
515
+ declare function provideDbxForgeMapboxFieldDeclarations(): i0.EnvironmentProviders & {
516
+ __fieldDefs?: any;
517
+ __formValue?: unknown;
518
+ };
519
+
520
+ export { DBX_FORGE_MAPBOX_FIELD_TYPES, DEFAULT_DBX_FORGE_MAPBOX_LAT_LNG_FIELD_INJECTION_KEY, DEFAULT_DBX_FORGE_MAPBOX_LAT_LNG_MARKER_CONFIG, DEFAULT_DBX_FORM_MAPBOX_LAT_LNG_FIELD_INJECTION_KEY, DEFAULT_DBX_FORM_MAPBOX_LAT_LNG_MARKER_CONFIG, DbxForgeMapboxLatLngFieldComponent, DbxForgeMapboxLatLngFieldMarkerComponent, DbxForgeMapboxZoomFieldComponent, DbxFormMapboxLatLngFieldComponent, DbxFormMapboxLatLngFieldMarkerComponent, DbxFormMapboxLatLngModule, DbxFormMapboxModule, DbxFormMapboxZoomFieldComponent, DbxFormMapboxZoomModule, FORGE_MAPBOX_LATLNG_FIELD_TYPE, FORGE_MAPBOX_ZOOM_FIELD_TYPE, forgeMapboxLatLngField, forgeMapboxZoomField, mapboxLatLngField, mapboxLatLngFieldMapper, mapboxZoomField, mapboxZoomFieldMapper, provideDbxForgeMapboxFieldDeclarations };
521
+ export type { DbxForgeMapboxLatLngFieldComponentProps, DbxForgeMapboxLatLngFieldConfig, DbxForgeMapboxLatLngFieldDef, DbxForgeMapboxZoomFieldComponentProps, DbxForgeMapboxZoomFieldConfig, DbxForgeMapboxZoomFieldDef, DbxFormMapboxLatLngComponentFieldProps, DbxFormMapboxZoomComponentFieldProps, MapboxLatLngFieldConfig, MapboxZoomFieldConfig };