@dereekb/dbx-form 9.18.4 → 9.18.6
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/esm2020/lib/formly/field/selection/searchable/searchable.field.directive.mjs +12 -1
- package/esm2020/lib/formly/field/selection/searchable/searchable.text.field.component.mjs +3 -3
- package/esm2020/mapbox/lib/field/latlng/latlng.field.component.mjs +6 -2
- package/esm2020/mapbox/lib/field/zoom/zoom.field.component.mjs +8 -3
- package/fesm2015/dereekb-dbx-form-mapbox.mjs +13 -3
- package/fesm2015/dereekb-dbx-form-mapbox.mjs.map +1 -1
- package/fesm2015/dereekb-dbx-form.mjs +14 -2
- package/fesm2015/dereekb-dbx-form.mjs.map +1 -1
- package/fesm2020/dereekb-dbx-form-mapbox.mjs +12 -3
- package/fesm2020/dereekb-dbx-form-mapbox.mjs.map +1 -1
- package/fesm2020/dereekb-dbx-form.mjs +13 -2
- package/fesm2020/dereekb-dbx-form.mjs.map +1 -1
- package/lib/formly/field/selection/searchable/searchable.field.directive.d.ts +13 -0
- package/mapbox/esm2020/lib/field/latlng/latlng.field.component.mjs +6 -2
- package/mapbox/esm2020/lib/field/zoom/zoom.field.component.mjs +8 -3
- package/mapbox/fesm2015/dereekb-dbx-form-mapbox.mjs +13 -3
- package/mapbox/fesm2015/dereekb-dbx-form-mapbox.mjs.map +1 -1
- package/mapbox/fesm2020/dereekb-dbx-form-mapbox.mjs +12 -3
- package/mapbox/fesm2020/dereekb-dbx-form-mapbox.mjs.map +1 -1
- package/mapbox/lib/field/zoom/zoom.field.component.d.ts +5 -0
- package/mapbox/package.json +4 -4
- package/package.json +4 -4
|
@@ -126,7 +126,9 @@ class DbxFormMapboxLatLngFieldComponent extends FieldType {
|
|
|
126
126
|
this._sub.subscription = this.dbxMapboxMapStore.center$.subscribe((center) => {
|
|
127
127
|
this.dbxMapboxMapStore.centerGivenMargin$.pipe(first()).subscribe(() => {
|
|
128
128
|
if (!this.isReadonlyOrDisabled) {
|
|
129
|
-
this.ngZone.run(() =>
|
|
129
|
+
this.ngZone.run(() => {
|
|
130
|
+
this.setValue(center);
|
|
131
|
+
});
|
|
130
132
|
}
|
|
131
133
|
});
|
|
132
134
|
});
|
|
@@ -156,6 +158,8 @@ class DbxFormMapboxLatLngFieldComponent extends FieldType {
|
|
|
156
158
|
}
|
|
157
159
|
setValue(latLng) {
|
|
158
160
|
this.formControl.setValue(latLng ? this._latLngStringFunction(latLng) : latLng);
|
|
161
|
+
this.formControl.markAsTouched();
|
|
162
|
+
this.formControl.markAsDirty();
|
|
159
163
|
}
|
|
160
164
|
}
|
|
161
165
|
DbxFormMapboxLatLngFieldComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.2.12", ngImport: i0, type: DbxFormMapboxLatLngFieldComponent, deps: [{ token: i1.CompactContextStore, optional: true }, { token: i2.GeolocationService }, { token: i2$1.DbxMapboxMapStore }, { token: i0.NgZone }], target: i0.ɵɵFactoryTarget.Component });
|
|
@@ -307,6 +311,9 @@ class DbxFormMapboxZoomFieldComponent extends FieldType {
|
|
|
307
311
|
get showMap() {
|
|
308
312
|
return this.field.props.showMap ?? true;
|
|
309
313
|
}
|
|
314
|
+
get lockMapToZoomLevels() {
|
|
315
|
+
return this.field.props.lockMapToZoomLevels ?? false;
|
|
316
|
+
}
|
|
310
317
|
get minZoom() {
|
|
311
318
|
return mapboxZoomLevel(this.field.props.minZoom || MAPBOX_MIN_ZOOM_LEVEL);
|
|
312
319
|
}
|
|
@@ -333,8 +340,8 @@ class DbxFormMapboxZoomFieldComponent extends FieldType {
|
|
|
333
340
|
this.dbxMapboxMapStore.setZoomDisabled();
|
|
334
341
|
}
|
|
335
342
|
}
|
|
336
|
-
else {
|
|
337
|
-
// set zoom limits
|
|
343
|
+
else if (this.lockMapToZoomLevels) {
|
|
344
|
+
// set zoom limits on the map
|
|
338
345
|
this.dbxMapboxMapStore.setZoomRange({ min: this.minZoom, max: this.maxZoom });
|
|
339
346
|
// flat to undo them later if not using the same map
|
|
340
347
|
this._undoZoomLimit = !this.showMap;
|
|
@@ -358,6 +365,8 @@ class DbxFormMapboxZoomFieldComponent extends FieldType {
|
|
|
358
365
|
}
|
|
359
366
|
setValue(zoom) {
|
|
360
367
|
this.formControl.setValue(zoom);
|
|
368
|
+
this.formControl.markAsTouched();
|
|
369
|
+
this.formControl.markAsDirty();
|
|
361
370
|
}
|
|
362
371
|
}
|
|
363
372
|
DbxFormMapboxZoomFieldComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.2.12", ngImport: i0, type: DbxFormMapboxZoomFieldComponent, deps: [{ token: i1.CompactContextStore, optional: true }, { token: i2$1.DbxMapboxService }, { token: i2$1.DbxMapboxMapStore }, { token: i0.NgZone }], target: i0.ɵɵFactoryTarget.Component });
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"dereekb-dbx-form-mapbox.mjs","sources":["../../../../packages/dbx-form/mapbox/src/lib/field/latlng/latlng.field.ts","../../../../packages/dbx-form/mapbox/src/lib/field/latlng/latlng.field.component.ts","../../../../packages/dbx-form/mapbox/src/lib/field/latlng/latlng.module.ts","../../../../packages/dbx-form/mapbox/src/lib/field/zoom/zoom.field.ts","../../../../packages/dbx-form/mapbox/src/lib/field/zoom/zoom.field.component.ts","../../../../packages/dbx-form/mapbox/src/lib/field/zoom/zoom.module.ts","../../../../packages/dbx-form/mapbox/src/lib/mapbox.module.ts","../../../../packages/dbx-form/mapbox/src/dereekb-dbx-form-mapbox.ts"],"sourcesContent":["import { DEFAULT_LAT_LNG_TEXT_FIELD_PATTERN_MESSAGE, DEFAULT_LAT_LNG_TEXT_FIELD_PLACEHOLDER, DescriptionFieldConfig, FieldConfig, formlyField, LabeledFieldConfig, propsAndConfigForFieldConfig, styleWrapper, validatorsForFieldConfig } from '@dereekb/dbx-form';\nimport { LAT_LNG_PATTERN } from '@dereekb/util';\nimport { FormlyFieldConfig } from '@ngx-formly/core';\nimport { DbxFormMapboxLatLngComponentFieldProps } from './latlng.field.component';\n\nexport interface MapboxLatLngFieldConfig extends Omit<LabeledFieldConfig, 'key'>, DescriptionFieldConfig, Partial<FieldConfig>, Pick<DbxFormMapboxLatLngComponentFieldProps, 'showMap' | 'zoom' | 'latLngConfig' | 'recenterTime'> {}\n\nexport function mapboxLatLngField(config: MapboxLatLngFieldConfig = {}): FormlyFieldConfig {\n const { key = 'latLng', latLngConfig, showMap, zoom, recenterTime } = config;\n const fieldConfig: FormlyFieldConfig = {\n ...formlyField({\n key,\n type: 'mapbox-latlng-picker',\n ...propsAndConfigForFieldConfig(config, {\n label: config.label ?? 'Location',\n placeholder: DEFAULT_LAT_LNG_TEXT_FIELD_PLACEHOLDER,\n pattern: LAT_LNG_PATTERN,\n autocomplete: false,\n showMap,\n zoom,\n latLngConfig,\n recenterTime\n })\n }),\n ...validatorsForFieldConfig({\n messages: {\n pattern: DEFAULT_LAT_LNG_TEXT_FIELD_PATTERN_MESSAGE\n }\n })\n };\n\n return styleWrapper(fieldConfig, {\n classGetter: 'dbx-mat-form-field-disable-underline'\n });\n}\n","import { AbstractControl, FormGroup } from '@angular/forms';\nimport { CompactContextStore, mapCompactModeObs } from '@dereekb/dbx-web';\nimport { Component, NgZone, OnDestroy, OnInit, Optional } from '@angular/core';\nimport { FieldTypeConfig, FormlyFieldProps } from '@ngx-formly/core';\nimport { FieldType } from '@ngx-formly/material';\nimport { skip, first, BehaviorSubject, filter, shareReplay, startWith, switchMap, map, Observable, throttleTime, skipWhile } from 'rxjs';\nimport { filterMaybe, SubscriptionObject } from '@dereekb/rxjs';\nimport { Maybe, LatLngPoint, LatLngPointFunctionConfig, LatLngStringFunction, latLngStringFunction, Milliseconds, latLngPointFunction, isDefaultLatLngPoint, isValidLatLngPoint } from '@dereekb/util';\nimport { GeolocationService } from '@ng-web-apis/geolocation';\nimport { Marker } from 'mapbox-gl';\nimport { DbxMapboxMapStore, MapboxEaseTo, MapboxZoomLevel, provideMapboxStoreIfParentIsUnavailable } from '@dereekb/dbx-web/mapbox';\n\nexport interface DbxFormMapboxLatLngComponentFieldProps extends FormlyFieldProps {\n /**\n * (Optional) Whether or not the show the map. If the map is not shown, relies on the center of the parent map to determine position.\n *\n * Defaults to true.\n *\n * Cases where this would be set false is if another map is being used.\n */\n showMap?: boolean;\n /**\n * (Optional) Zoom to start the map at. Ignored if the showMap is false.\n */\n zoom?: MapboxZoomLevel;\n /**\n * Time until recentering on the marker. If the time is 0 then the recentering is disabled.\n */\n recenterTime?: Milliseconds;\n latLngConfig?: LatLngPointFunctionConfig;\n}\n\n@Component({\n template: `\n <div class=\"dbx-mapbox-input-field\" [ngClass]=\"(compactClass$ | async) ?? ''\" [formGroup]=\"formGroup\">\n <div *ngIf=\"showMap\" class=\"dbx-mapbox-input-field-map\">\n <mgl-map dbxMapboxMap>\n <mgl-marker [lngLat]=\"(latLng$ | async) || [0, 0]\" [draggable]=\"!isReadonlyOrDisabled\" (markerDragEnd)=\"onMarkerDragEnd($event)\"></mgl-marker>\n </mgl-map>\n </div>\n <div class=\"dbx-mapbox-input-field-input\">\n <button mat-icon-button (click)=\"useCurrentLocation()\" [disabled]=\"isReadonlyOrDisabled\">\n <mat-icon>my_location</mat-icon>\n </button>\n <mat-form-field class=\"dbx-mapbox-input-field-input-field\">\n <mat-label>Coordinates</mat-label>\n <input type=\"text\" matInput [placeholder]=\"placeholder\" [formControl]=\"formControl\" />\n </mat-form-field>\n </div>\n </div>\n `,\n providers: [provideMapboxStoreIfParentIsUnavailable()],\n styleUrls: ['../mapbox.field.component.scss']\n})\nexport class DbxFormMapboxLatLngFieldComponent<T extends DbxFormMapboxLatLngComponentFieldProps = DbxFormMapboxLatLngComponentFieldProps> extends FieldType<FieldTypeConfig<T>> implements OnInit, OnDestroy {\n private _latLngStringFunction!: LatLngStringFunction;\n private _latLngPointFunction = latLngPointFunction({ wrap: false, validate: false });\n\n readonly compactClass$ = mapCompactModeObs(this.compact?.mode$, {\n compact: 'dbx-mapbox-input-field-compact'\n });\n\n private _sub = new SubscriptionObject();\n private _geoSub = new SubscriptionObject();\n private _centerSub = new SubscriptionObject();\n private _zoom = new BehaviorSubject<MapboxZoomLevel>(12);\n\n private _formControlObs = new BehaviorSubject<Maybe<AbstractControl>>(undefined);\n readonly formControl$ = this._formControlObs.pipe(filterMaybe());\n\n readonly value$ = this.formControl$.pipe(\n switchMap((control) => control.valueChanges.pipe(startWith(control.value))),\n shareReplay(1)\n );\n\n readonly latLng$: Observable<LatLngPoint> = this.value$.pipe(\n filterMaybe(),\n map((x) => this._latLngPointFunction(x)),\n shareReplay(1)\n );\n\n readonly center$ = this.latLng$.pipe(\n /**\n * Center observable passed to the store. Do not pass invalid points.\n *\n * Also skip any initial 0,0 values so the center doesn't potentially \"whip\" from 0,0 to a final loaded value.\n */\n skipWhile(isDefaultLatLngPoint),\n filter(isValidLatLngPoint)\n );\n\n readonly zoom$ = this._zoom.asObservable();\n\n constructor(@Optional() readonly compact: CompactContextStore, private readonly geolocation$: GeolocationService, readonly dbxMapboxMapStore: DbxMapboxMapStore, readonly ngZone: NgZone) {\n super();\n }\n\n get zoom(): MapboxZoomLevel {\n return Math.min(this.field.props.zoom || 12, 18);\n }\n\n get formGroupName(): string {\n return this.field.key as string;\n }\n\n get formGroup(): FormGroup {\n return this.form as FormGroup;\n }\n\n get label(): Maybe<string> {\n return this.field.props?.label;\n }\n\n get description(): Maybe<string> {\n return this.props.description;\n }\n\n get isReadonlyOrDisabled() {\n return this.props.readonly || this.disabled;\n }\n\n get showMap(): boolean {\n return this.field.props.showMap ?? true;\n }\n\n get recenterTime(): Milliseconds {\n return this.field.props.recenterTime || 10 * 1000;\n }\n\n ngOnInit(): void {\n this._latLngStringFunction = latLngStringFunction({ ...this.field.props.latLngConfig, wrap: this.field.props.latLngConfig?.wrap || false, validate: this.field.props.latLngConfig?.validate || false });\n this._formControlObs.next(this.formControl);\n this._zoom.next(this.zoom);\n\n this.dbxMapboxMapStore.setCenter(this.center$);\n\n if (this.showMap) {\n // Set zoom only if showMap is true\n this.dbxMapboxMapStore.setZoom(this.zoom$);\n\n // recenter periodically\n if (this.recenterTime > 0) {\n this._centerSub.subscription = this.dbxMapboxMapStore.center$.pipe(skip(1), throttleTime(this.recenterTime, undefined, { leading: false, trailing: true })).subscribe(() => {\n this.dbxMapboxMapStore.easeTo(\n this.center$.pipe(\n first(),\n map((x) => ({ center: x } as MapboxEaseTo))\n )\n );\n });\n }\n } else {\n // use the center of the map to set locations\n this._sub.subscription = this.dbxMapboxMapStore.center$.subscribe((center) => {\n this.dbxMapboxMapStore.centerGivenMargin$.pipe(first()).subscribe(() => {\n if (!this.isReadonlyOrDisabled) {\n this.ngZone.run(() => this.setValue(center));\n }\n });\n });\n }\n\n if (this.props.readonly) {\n this.formControl.disable();\n }\n }\n\n override ngOnDestroy(): void {\n super.ngOnDestroy();\n this._sub.destroy();\n this._geoSub.destroy();\n this._zoom.complete();\n this._formControlObs.complete();\n this._centerSub.destroy();\n }\n\n useCurrentLocation() {\n this._geoSub.subscription = this.geolocation$.pipe(first()).subscribe((position) => {\n if (position) {\n const { latitude: lat, longitude: lng } = position.coords;\n this.setValue({ lat, lng });\n }\n });\n }\n\n onMarkerDragEnd(marker: Marker) {\n this.setValue(marker.getLngLat());\n }\n\n setValue(latLng?: Maybe<LatLngPoint>) {\n this.formControl.setValue(latLng ? this._latLngStringFunction(latLng) : latLng);\n }\n}\n","import { NgModule } from '@angular/core';\nimport { CommonModule } from '@angular/common';\nimport { DbxFormMapboxLatLngFieldComponent } from './latlng.field.component';\nimport { FormlyModule } from '@ngx-formly/core';\nimport { FormsModule, ReactiveFormsModule } from '@angular/forms';\nimport { MatInputModule } from '@angular/material/input';\nimport { DbxTextModule } from '@dereekb/dbx-web';\nimport { NgxMapboxGLModule } from 'ngx-mapbox-gl';\nimport { MatIconModule } from '@angular/material/icon';\nimport { MatButtonModule } from '@angular/material/button';\nimport { DbxMapboxModule } from '@dereekb/dbx-web/mapbox';\n\n@NgModule({\n imports: [\n CommonModule,\n MatIconModule,\n MatButtonModule,\n DbxTextModule,\n DbxMapboxModule,\n FormsModule,\n ReactiveFormsModule,\n MatInputModule,\n FormlyModule.forChild({\n types: [{ name: 'mapbox-latlng-picker', component: DbxFormMapboxLatLngFieldComponent, wrappers: ['style', 'form-field'] }]\n }),\n NgxMapboxGLModule\n ],\n declarations: [DbxFormMapboxLatLngFieldComponent]\n})\nexport class DbxFormMapboxLatLngModule {}\n","import { DescriptionFieldConfig, FieldConfig, formlyField, LabeledFieldConfig, propsAndConfigForFieldConfig, styleWrapper } from '@dereekb/dbx-form';\nimport { FormlyFieldConfig } from '@ngx-formly/core';\nimport { DbxFormMapboxZoomComponentFieldProps } from './zoom.field.component';\n\nexport interface MapboxZoomFieldConfig extends Omit<LabeledFieldConfig, 'key'>, DescriptionFieldConfig, Partial<FieldConfig>, Pick<DbxFormMapboxZoomComponentFieldProps, 'showMap' | 'center' | 'minZoom' | 'maxZoom' | 'zoomStep'> {}\n\nexport function mapboxZoomField(config: MapboxZoomFieldConfig = {}): FormlyFieldConfig {\n const { key = 'zoom', showMap, center, minZoom, maxZoom, zoomStep } = config;\n const fieldConfig: FormlyFieldConfig = {\n ...formlyField({\n key,\n type: 'mapbox-zoom-picker',\n ...propsAndConfigForFieldConfig(config, {\n label: config.label ?? 'Zoom',\n autocomplete: false,\n showMap,\n center,\n minZoom,\n maxZoom,\n zoomStep\n })\n })\n };\n\n return styleWrapper(fieldConfig, {\n classGetter: 'dbx-mat-form-field-disable-underline'\n });\n}\n","import { AbstractControl, FormGroup } from '@angular/forms';\nimport { CompactContextStore, mapCompactModeObs } from '@dereekb/dbx-web';\nimport { Component, NgZone, OnDestroy, OnInit, Optional } from '@angular/core';\nimport { FieldTypeConfig, FormlyFieldProps } from '@ngx-formly/core';\nimport { FieldType } from '@ngx-formly/material';\nimport { BehaviorSubject, shareReplay, startWith, switchMap, Observable } from 'rxjs';\nimport { filterMaybe, SubscriptionObject } from '@dereekb/rxjs';\nimport { ZoomLevel, Maybe, LatLngPoint, latLngPoint } from '@dereekb/util';\nimport { DbxMapboxService, DbxMapboxMapStore, MapboxZoomLevel, provideMapboxStoreIfParentIsUnavailable, mapboxZoomLevel, MAPBOX_MAX_ZOOM_LEVEL, MAPBOX_MIN_ZOOM_LEVEL } from '@dereekb/dbx-web/mapbox';\n\nexport interface DbxFormMapboxZoomComponentFieldProps extends Omit<FormlyFieldProps, 'min' | 'max'> {\n /**\n * (Optional) Whether or not the show the map. Cases where this would be set false is if another map is being used.\n *\n * Defaults to true.\n */\n showMap?: boolean;\n /**\n * Default center\n */\n center?: LatLngPoint;\n /**\n * Min zoom level allowed\n */\n minZoom?: MapboxZoomLevel;\n /**\n * Max zoom level allowed.\n */\n maxZoom?: MapboxZoomLevel;\n /**\n * Step size when using arrow keys.\n */\n zoomStep?: number;\n}\n\n@Component({\n template: `\n <div class=\"dbx-mapbox-input-field\" [ngClass]=\"(compactClass$ | async) ?? ''\" [formGroup]=\"formGroup\">\n <div *ngIf=\"showMap\" class=\"dbx-mapbox-input-field-map\">\n <mgl-map dbxMapboxMap></mgl-map>\n </div>\n <div class=\"dbx-mapbox-input-field-input\">\n <mat-form-field class=\"dbx-mapbox-input-field-input-field\">\n <mat-label>Zoom Level</mat-label>\n <input type=\"number\" matInput [min]=\"minZoom\" [max]=\"maxZoom\" [step]=\"zoomStep\" [placeholder]=\"placeholder\" [formControl]=\"formControl\" />\n </mat-form-field>\n </div>\n </div>\n `,\n providers: [provideMapboxStoreIfParentIsUnavailable()],\n styleUrls: ['../mapbox.field.component.scss']\n})\nexport class DbxFormMapboxZoomFieldComponent<T extends DbxFormMapboxZoomComponentFieldProps = DbxFormMapboxZoomComponentFieldProps> extends FieldType<FieldTypeConfig<T>> implements OnInit, OnDestroy {\n private _undoZoomLimit = false;\n\n readonly compactClass$ = mapCompactModeObs(this.compact?.mode$, {\n compact: 'dbx-mapbox-input-field-compact'\n });\n\n private _sub = new SubscriptionObject();\n private _center = new BehaviorSubject<Maybe<LatLngPoint>>(undefined);\n\n private _formControlObs = new BehaviorSubject<Maybe<AbstractControl>>(undefined);\n readonly formControl$ = this._formControlObs.pipe(filterMaybe());\n\n readonly value$ = this.formControl$.pipe(\n switchMap((control) => control.valueChanges.pipe(startWith(control.value))),\n shareReplay(1)\n );\n\n readonly zoom$: Observable<MapboxZoomLevel> = this.value$.pipe(filterMaybe(), shareReplay(1));\n readonly center$ = this._center.pipe(filterMaybe());\n\n constructor(@Optional() readonly compact: CompactContextStore, readonly dbxMapboxService: DbxMapboxService, readonly dbxMapboxMapStore: DbxMapboxMapStore, readonly ngZone: NgZone) {\n super();\n }\n\n get center(): LatLngPoint {\n return this.field.props.center || latLngPoint(this.dbxMapboxService.defaultCenter);\n }\n\n get formGroupName(): string {\n return this.field.key as string;\n }\n\n get formGroup(): FormGroup {\n return this.form as FormGroup;\n }\n\n get label(): Maybe<string> {\n return this.field.props?.label;\n }\n\n get description(): Maybe<string> {\n return this.props.description;\n }\n\n get isReadonlyOrDisabled() {\n return this.props.readonly || this.disabled;\n }\n\n get showMap(): boolean {\n return this.field.props.showMap ?? true;\n }\n\n get minZoom(): MapboxZoomLevel {\n return mapboxZoomLevel(this.field.props.minZoom || MAPBOX_MIN_ZOOM_LEVEL);\n }\n\n get maxZoom(): MapboxZoomLevel {\n return mapboxZoomLevel(this.field.props.maxZoom || MAPBOX_MAX_ZOOM_LEVEL);\n }\n\n get zoomStep(): number {\n return mapboxZoomLevel(this.field.props.zoomStep || 1);\n }\n\n ngOnInit(): void {\n this._formControlObs.next(this.formControl);\n this._center.next(this.center);\n\n // set/sync props for error messages\n (this.props as FormlyFieldProps).min = this.minZoom;\n (this.props as FormlyFieldProps).max = this.maxZoom;\n\n this.dbxMapboxMapStore.setZoom(this.zoom$);\n\n // Set center only if showMap is false.\n if (this.showMap) {\n this.dbxMapboxMapStore.setCenter(this.center$);\n }\n\n if (this.props.readonly) {\n this.formControl.disable();\n\n if (this.showMap) {\n this.dbxMapboxMapStore.setZoomDisabled();\n }\n } else {\n // set zoom limits\n this.dbxMapboxMapStore.setZoomRange({ min: this.minZoom, max: this.maxZoom });\n\n // flat to undo them later if not using the same map\n this._undoZoomLimit = !this.showMap;\n }\n\n this._sub.subscription = this.dbxMapboxMapStore.zoom$.subscribe((zoom) => {\n if (!this.isReadonlyOrDisabled) {\n this.ngZone.run(() => {\n this.setValue(zoom);\n });\n }\n });\n }\n\n override ngOnDestroy(): void {\n super.ngOnDestroy();\n this._formControlObs.complete();\n this._center.complete();\n this._sub.destroy();\n\n if (!this._undoZoomLimit) {\n this.dbxMapboxMapStore.setZoomRange({});\n }\n }\n\n setValue(zoom?: Maybe<ZoomLevel>) {\n this.formControl.setValue(zoom);\n }\n}\n","import { NgModule } from '@angular/core';\nimport { CommonModule } from '@angular/common';\nimport { DbxFormMapboxZoomFieldComponent } from './zoom.field.component';\nimport { FormlyModule } from '@ngx-formly/core';\nimport { FormsModule, ReactiveFormsModule } from '@angular/forms';\nimport { MatInputModule } from '@angular/material/input';\nimport { DbxTextModule } from '@dereekb/dbx-web';\nimport { NgxMapboxGLModule } from 'ngx-mapbox-gl';\nimport { MatIconModule } from '@angular/material/icon';\nimport { MatButtonModule } from '@angular/material/button';\nimport { DbxMapboxModule } from '@dereekb/dbx-web/mapbox';\n\n@NgModule({\n imports: [\n CommonModule,\n MatIconModule,\n MatButtonModule,\n DbxTextModule,\n DbxMapboxModule,\n FormsModule,\n ReactiveFormsModule,\n MatInputModule,\n FormlyModule.forChild({\n types: [{ name: 'mapbox-zoom-picker', component: DbxFormMapboxZoomFieldComponent, wrappers: ['style', 'form-field'] }]\n }),\n NgxMapboxGLModule\n ],\n declarations: [DbxFormMapboxZoomFieldComponent]\n})\nexport class DbxFormMapboxZoomModule {}\n","import { NgModule } from '@angular/core';\nimport { DbxFormMapboxZoomModule } from './field';\nimport { DbxFormMapboxLatLngModule } from './field/latlng/latlng.module';\n\n@NgModule({\n exports: [DbxFormMapboxLatLngModule, DbxFormMapboxZoomModule]\n})\nexport class DbxFormMapboxModule {}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":["i3","i7","i2","i4","i5","i6"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"dereekb-dbx-form-mapbox.mjs","sources":["../../../../packages/dbx-form/mapbox/src/lib/field/latlng/latlng.field.ts","../../../../packages/dbx-form/mapbox/src/lib/field/latlng/latlng.field.component.ts","../../../../packages/dbx-form/mapbox/src/lib/field/latlng/latlng.module.ts","../../../../packages/dbx-form/mapbox/src/lib/field/zoom/zoom.field.ts","../../../../packages/dbx-form/mapbox/src/lib/field/zoom/zoom.field.component.ts","../../../../packages/dbx-form/mapbox/src/lib/field/zoom/zoom.module.ts","../../../../packages/dbx-form/mapbox/src/lib/mapbox.module.ts","../../../../packages/dbx-form/mapbox/src/dereekb-dbx-form-mapbox.ts"],"sourcesContent":["import { DEFAULT_LAT_LNG_TEXT_FIELD_PATTERN_MESSAGE, DEFAULT_LAT_LNG_TEXT_FIELD_PLACEHOLDER, DescriptionFieldConfig, FieldConfig, formlyField, LabeledFieldConfig, propsAndConfigForFieldConfig, styleWrapper, validatorsForFieldConfig } from '@dereekb/dbx-form';\nimport { LAT_LNG_PATTERN } from '@dereekb/util';\nimport { FormlyFieldConfig } from '@ngx-formly/core';\nimport { DbxFormMapboxLatLngComponentFieldProps } from './latlng.field.component';\n\nexport interface MapboxLatLngFieldConfig extends Omit<LabeledFieldConfig, 'key'>, DescriptionFieldConfig, Partial<FieldConfig>, Pick<DbxFormMapboxLatLngComponentFieldProps, 'showMap' | 'zoom' | 'latLngConfig' | 'recenterTime'> {}\n\nexport function mapboxLatLngField(config: MapboxLatLngFieldConfig = {}): FormlyFieldConfig {\n const { key = 'latLng', latLngConfig, showMap, zoom, recenterTime } = config;\n const fieldConfig: FormlyFieldConfig = {\n ...formlyField({\n key,\n type: 'mapbox-latlng-picker',\n ...propsAndConfigForFieldConfig(config, {\n label: config.label ?? 'Location',\n placeholder: DEFAULT_LAT_LNG_TEXT_FIELD_PLACEHOLDER,\n pattern: LAT_LNG_PATTERN,\n autocomplete: false,\n showMap,\n zoom,\n latLngConfig,\n recenterTime\n })\n }),\n ...validatorsForFieldConfig({\n messages: {\n pattern: DEFAULT_LAT_LNG_TEXT_FIELD_PATTERN_MESSAGE\n }\n })\n };\n\n return styleWrapper(fieldConfig, {\n classGetter: 'dbx-mat-form-field-disable-underline'\n });\n}\n","import { AbstractControl, FormGroup } from '@angular/forms';\nimport { CompactContextStore, mapCompactModeObs } from '@dereekb/dbx-web';\nimport { Component, NgZone, OnDestroy, OnInit, Optional } from '@angular/core';\nimport { FieldTypeConfig, FormlyFieldProps } from '@ngx-formly/core';\nimport { FieldType } from '@ngx-formly/material';\nimport { skip, first, BehaviorSubject, filter, shareReplay, startWith, switchMap, map, Observable, throttleTime, skipWhile } from 'rxjs';\nimport { filterMaybe, SubscriptionObject } from '@dereekb/rxjs';\nimport { Maybe, LatLngPoint, LatLngPointFunctionConfig, LatLngStringFunction, latLngStringFunction, Milliseconds, latLngPointFunction, isDefaultLatLngPoint, isValidLatLngPoint } from '@dereekb/util';\nimport { GeolocationService } from '@ng-web-apis/geolocation';\nimport { Marker } from 'mapbox-gl';\nimport { DbxMapboxMapStore, MapboxEaseTo, MapboxZoomLevel, provideMapboxStoreIfParentIsUnavailable } from '@dereekb/dbx-web/mapbox';\n\nexport interface DbxFormMapboxLatLngComponentFieldProps extends FormlyFieldProps {\n /**\n * (Optional) Whether or not the show the map. If the map is not shown, relies on the center of the parent map to determine position.\n *\n * Defaults to true.\n *\n * Cases where this would be set false is if another map is being used.\n */\n showMap?: boolean;\n /**\n * (Optional) Zoom to start the map at. Ignored if the showMap is false.\n */\n zoom?: MapboxZoomLevel;\n /**\n * Time until recentering on the marker. If the time is 0 then the recentering is disabled.\n */\n recenterTime?: Milliseconds;\n latLngConfig?: LatLngPointFunctionConfig;\n}\n\n@Component({\n template: `\n <div class=\"dbx-mapbox-input-field\" [ngClass]=\"(compactClass$ | async) ?? ''\" [formGroup]=\"formGroup\">\n <div *ngIf=\"showMap\" class=\"dbx-mapbox-input-field-map\">\n <mgl-map dbxMapboxMap>\n <mgl-marker [lngLat]=\"(latLng$ | async) || [0, 0]\" [draggable]=\"!isReadonlyOrDisabled\" (markerDragEnd)=\"onMarkerDragEnd($event)\"></mgl-marker>\n </mgl-map>\n </div>\n <div class=\"dbx-mapbox-input-field-input\">\n <button mat-icon-button (click)=\"useCurrentLocation()\" [disabled]=\"isReadonlyOrDisabled\">\n <mat-icon>my_location</mat-icon>\n </button>\n <mat-form-field class=\"dbx-mapbox-input-field-input-field\">\n <mat-label>Coordinates</mat-label>\n <input type=\"text\" matInput [placeholder]=\"placeholder\" [formControl]=\"formControl\" />\n </mat-form-field>\n </div>\n </div>\n `,\n providers: [provideMapboxStoreIfParentIsUnavailable()],\n styleUrls: ['../mapbox.field.component.scss']\n})\nexport class DbxFormMapboxLatLngFieldComponent<T extends DbxFormMapboxLatLngComponentFieldProps = DbxFormMapboxLatLngComponentFieldProps> extends FieldType<FieldTypeConfig<T>> implements OnInit, OnDestroy {\n private _latLngStringFunction!: LatLngStringFunction;\n private _latLngPointFunction = latLngPointFunction({ wrap: false, validate: false });\n\n readonly compactClass$ = mapCompactModeObs(this.compact?.mode$, {\n compact: 'dbx-mapbox-input-field-compact'\n });\n\n private _sub = new SubscriptionObject();\n private _geoSub = new SubscriptionObject();\n private _centerSub = new SubscriptionObject();\n private _zoom = new BehaviorSubject<MapboxZoomLevel>(12);\n\n private _formControlObs = new BehaviorSubject<Maybe<AbstractControl>>(undefined);\n readonly formControl$ = this._formControlObs.pipe(filterMaybe());\n\n readonly value$ = this.formControl$.pipe(\n switchMap((control) => control.valueChanges.pipe(startWith(control.value))),\n shareReplay(1)\n );\n\n readonly latLng$: Observable<LatLngPoint> = this.value$.pipe(\n filterMaybe(),\n map((x) => this._latLngPointFunction(x)),\n shareReplay(1)\n );\n\n readonly center$ = this.latLng$.pipe(\n /**\n * Center observable passed to the store. Do not pass invalid points.\n *\n * Also skip any initial 0,0 values so the center doesn't potentially \"whip\" from 0,0 to a final loaded value.\n */\n skipWhile(isDefaultLatLngPoint),\n filter(isValidLatLngPoint)\n );\n\n readonly zoom$ = this._zoom.asObservable();\n\n constructor(@Optional() readonly compact: CompactContextStore, private readonly geolocation$: GeolocationService, readonly dbxMapboxMapStore: DbxMapboxMapStore, readonly ngZone: NgZone) {\n super();\n }\n\n get zoom(): MapboxZoomLevel {\n return Math.min(this.field.props.zoom || 12, 18);\n }\n\n get formGroupName(): string {\n return this.field.key as string;\n }\n\n get formGroup(): FormGroup {\n return this.form as FormGroup;\n }\n\n get label(): Maybe<string> {\n return this.field.props?.label;\n }\n\n get description(): Maybe<string> {\n return this.props.description;\n }\n\n get isReadonlyOrDisabled() {\n return this.props.readonly || this.disabled;\n }\n\n get showMap(): boolean {\n return this.field.props.showMap ?? true;\n }\n\n get recenterTime(): Milliseconds {\n return this.field.props.recenterTime || 10 * 1000;\n }\n\n ngOnInit(): void {\n this._latLngStringFunction = latLngStringFunction({ ...this.field.props.latLngConfig, wrap: this.field.props.latLngConfig?.wrap || false, validate: this.field.props.latLngConfig?.validate || false });\n this._formControlObs.next(this.formControl);\n this._zoom.next(this.zoom);\n\n this.dbxMapboxMapStore.setCenter(this.center$);\n\n if (this.showMap) {\n // Set zoom only if showMap is true\n this.dbxMapboxMapStore.setZoom(this.zoom$);\n\n // recenter periodically\n if (this.recenterTime > 0) {\n this._centerSub.subscription = this.dbxMapboxMapStore.center$.pipe(skip(1), throttleTime(this.recenterTime, undefined, { leading: false, trailing: true })).subscribe(() => {\n this.dbxMapboxMapStore.easeTo(\n this.center$.pipe(\n first(),\n map((x) => ({ center: x } as MapboxEaseTo))\n )\n );\n });\n }\n } else {\n // use the center of the map to set locations\n this._sub.subscription = this.dbxMapboxMapStore.center$.subscribe((center) => {\n this.dbxMapboxMapStore.centerGivenMargin$.pipe(first()).subscribe(() => {\n if (!this.isReadonlyOrDisabled) {\n this.ngZone.run(() => {\n this.setValue(center);\n });\n }\n });\n });\n }\n\n if (this.props.readonly) {\n this.formControl.disable();\n }\n }\n\n override ngOnDestroy(): void {\n super.ngOnDestroy();\n this._sub.destroy();\n this._geoSub.destroy();\n this._zoom.complete();\n this._formControlObs.complete();\n this._centerSub.destroy();\n }\n\n useCurrentLocation() {\n this._geoSub.subscription = this.geolocation$.pipe(first()).subscribe((position) => {\n if (position) {\n const { latitude: lat, longitude: lng } = position.coords;\n this.setValue({ lat, lng });\n }\n });\n }\n\n onMarkerDragEnd(marker: Marker) {\n this.setValue(marker.getLngLat());\n }\n\n setValue(latLng?: Maybe<LatLngPoint>) {\n this.formControl.setValue(latLng ? this._latLngStringFunction(latLng) : latLng);\n this.formControl.markAsTouched();\n this.formControl.markAsDirty();\n }\n}\n","import { NgModule } from '@angular/core';\nimport { CommonModule } from '@angular/common';\nimport { DbxFormMapboxLatLngFieldComponent } from './latlng.field.component';\nimport { FormlyModule } from '@ngx-formly/core';\nimport { FormsModule, ReactiveFormsModule } from '@angular/forms';\nimport { MatInputModule } from '@angular/material/input';\nimport { DbxTextModule } from '@dereekb/dbx-web';\nimport { NgxMapboxGLModule } from 'ngx-mapbox-gl';\nimport { MatIconModule } from '@angular/material/icon';\nimport { MatButtonModule } from '@angular/material/button';\nimport { DbxMapboxModule } from '@dereekb/dbx-web/mapbox';\n\n@NgModule({\n imports: [\n CommonModule,\n MatIconModule,\n MatButtonModule,\n DbxTextModule,\n DbxMapboxModule,\n FormsModule,\n ReactiveFormsModule,\n MatInputModule,\n FormlyModule.forChild({\n types: [{ name: 'mapbox-latlng-picker', component: DbxFormMapboxLatLngFieldComponent, wrappers: ['style', 'form-field'] }]\n }),\n NgxMapboxGLModule\n ],\n declarations: [DbxFormMapboxLatLngFieldComponent]\n})\nexport class DbxFormMapboxLatLngModule {}\n","import { DescriptionFieldConfig, FieldConfig, formlyField, LabeledFieldConfig, propsAndConfigForFieldConfig, styleWrapper } from '@dereekb/dbx-form';\nimport { FormlyFieldConfig } from '@ngx-formly/core';\nimport { DbxFormMapboxZoomComponentFieldProps } from './zoom.field.component';\n\nexport interface MapboxZoomFieldConfig extends Omit<LabeledFieldConfig, 'key'>, DescriptionFieldConfig, Partial<FieldConfig>, Pick<DbxFormMapboxZoomComponentFieldProps, 'showMap' | 'center' | 'minZoom' | 'maxZoom' | 'zoomStep'> {}\n\nexport function mapboxZoomField(config: MapboxZoomFieldConfig = {}): FormlyFieldConfig {\n const { key = 'zoom', showMap, center, minZoom, maxZoom, zoomStep } = config;\n const fieldConfig: FormlyFieldConfig = {\n ...formlyField({\n key,\n type: 'mapbox-zoom-picker',\n ...propsAndConfigForFieldConfig(config, {\n label: config.label ?? 'Zoom',\n autocomplete: false,\n showMap,\n center,\n minZoom,\n maxZoom,\n zoomStep\n })\n })\n };\n\n return styleWrapper(fieldConfig, {\n classGetter: 'dbx-mat-form-field-disable-underline'\n });\n}\n","import { AbstractControl, FormGroup } from '@angular/forms';\nimport { CompactContextStore, mapCompactModeObs } from '@dereekb/dbx-web';\nimport { Component, NgZone, OnDestroy, OnInit, Optional } from '@angular/core';\nimport { FieldTypeConfig, FormlyFieldProps } from '@ngx-formly/core';\nimport { FieldType } from '@ngx-formly/material';\nimport { BehaviorSubject, shareReplay, startWith, switchMap, Observable } from 'rxjs';\nimport { filterMaybe, SubscriptionObject } from '@dereekb/rxjs';\nimport { ZoomLevel, Maybe, LatLngPoint, latLngPoint } from '@dereekb/util';\nimport { DbxMapboxService, DbxMapboxMapStore, MapboxZoomLevel, provideMapboxStoreIfParentIsUnavailable, mapboxZoomLevel, MAPBOX_MAX_ZOOM_LEVEL, MAPBOX_MIN_ZOOM_LEVEL } from '@dereekb/dbx-web/mapbox';\n\nexport interface DbxFormMapboxZoomComponentFieldProps extends Omit<FormlyFieldProps, 'min' | 'max'> {\n /**\n * (Optional) Whether or not the show the map. Cases where this would be set false is if another map is being used.\n *\n * Defaults to true.\n */\n showMap?: boolean;\n /**\n * Default center\n */\n center?: LatLngPoint;\n /**\n * Whether or not to lock the map itself to the min and max zoom levels.\n */\n lockMapToZoomLevels?: boolean;\n /**\n * Min zoom level allowed\n */\n minZoom?: MapboxZoomLevel;\n /**\n * Max zoom level allowed.\n */\n maxZoom?: MapboxZoomLevel;\n /**\n * Step size when using arrow keys.\n */\n zoomStep?: number;\n}\n\n@Component({\n template: `\n <div class=\"dbx-mapbox-input-field\" [ngClass]=\"(compactClass$ | async) ?? ''\" [formGroup]=\"formGroup\">\n <div *ngIf=\"showMap\" class=\"dbx-mapbox-input-field-map\">\n <mgl-map dbxMapboxMap></mgl-map>\n </div>\n <div class=\"dbx-mapbox-input-field-input\">\n <mat-form-field class=\"dbx-mapbox-input-field-input-field\">\n <mat-label>Zoom Level</mat-label>\n <input type=\"number\" matInput [min]=\"minZoom\" [max]=\"maxZoom\" [step]=\"zoomStep\" [placeholder]=\"placeholder\" [formControl]=\"formControl\" />\n </mat-form-field>\n </div>\n </div>\n `,\n providers: [provideMapboxStoreIfParentIsUnavailable()],\n styleUrls: ['../mapbox.field.component.scss']\n})\nexport class DbxFormMapboxZoomFieldComponent<T extends DbxFormMapboxZoomComponentFieldProps = DbxFormMapboxZoomComponentFieldProps> extends FieldType<FieldTypeConfig<T>> implements OnInit, OnDestroy {\n private _undoZoomLimit = false;\n\n readonly compactClass$ = mapCompactModeObs(this.compact?.mode$, {\n compact: 'dbx-mapbox-input-field-compact'\n });\n\n private _sub = new SubscriptionObject();\n private _center = new BehaviorSubject<Maybe<LatLngPoint>>(undefined);\n\n private _formControlObs = new BehaviorSubject<Maybe<AbstractControl>>(undefined);\n readonly formControl$ = this._formControlObs.pipe(filterMaybe());\n\n readonly value$ = this.formControl$.pipe(\n switchMap((control) => control.valueChanges.pipe(startWith(control.value))),\n shareReplay(1)\n );\n\n readonly zoom$: Observable<MapboxZoomLevel> = this.value$.pipe(filterMaybe(), shareReplay(1));\n readonly center$ = this._center.pipe(filterMaybe());\n\n constructor(@Optional() readonly compact: CompactContextStore, readonly dbxMapboxService: DbxMapboxService, readonly dbxMapboxMapStore: DbxMapboxMapStore, readonly ngZone: NgZone) {\n super();\n }\n\n get center(): LatLngPoint {\n return this.field.props.center || latLngPoint(this.dbxMapboxService.defaultCenter);\n }\n\n get formGroupName(): string {\n return this.field.key as string;\n }\n\n get formGroup(): FormGroup {\n return this.form as FormGroup;\n }\n\n get label(): Maybe<string> {\n return this.field.props?.label;\n }\n\n get description(): Maybe<string> {\n return this.props.description;\n }\n\n get isReadonlyOrDisabled() {\n return this.props.readonly || this.disabled;\n }\n\n get showMap(): boolean {\n return this.field.props.showMap ?? true;\n }\n\n get lockMapToZoomLevels(): boolean {\n return this.field.props.lockMapToZoomLevels ?? false;\n }\n\n get minZoom(): MapboxZoomLevel {\n return mapboxZoomLevel(this.field.props.minZoom || MAPBOX_MIN_ZOOM_LEVEL);\n }\n\n get maxZoom(): MapboxZoomLevel {\n return mapboxZoomLevel(this.field.props.maxZoom || MAPBOX_MAX_ZOOM_LEVEL);\n }\n\n get zoomStep(): number {\n return mapboxZoomLevel(this.field.props.zoomStep || 1);\n }\n\n ngOnInit(): void {\n this._formControlObs.next(this.formControl);\n this._center.next(this.center);\n\n // set/sync props for error messages\n (this.props as FormlyFieldProps).min = this.minZoom;\n (this.props as FormlyFieldProps).max = this.maxZoom;\n\n this.dbxMapboxMapStore.setZoom(this.zoom$);\n\n // Set center only if showMap is false.\n if (this.showMap) {\n this.dbxMapboxMapStore.setCenter(this.center$);\n }\n\n if (this.props.readonly) {\n this.formControl.disable();\n\n if (this.showMap) {\n this.dbxMapboxMapStore.setZoomDisabled();\n }\n } else if (this.lockMapToZoomLevels) {\n // set zoom limits on the map\n this.dbxMapboxMapStore.setZoomRange({ min: this.minZoom, max: this.maxZoom });\n\n // flat to undo them later if not using the same map\n this._undoZoomLimit = !this.showMap;\n }\n\n this._sub.subscription = this.dbxMapboxMapStore.zoom$.subscribe((zoom) => {\n if (!this.isReadonlyOrDisabled) {\n this.ngZone.run(() => {\n this.setValue(zoom);\n });\n }\n });\n }\n\n override ngOnDestroy(): void {\n super.ngOnDestroy();\n this._formControlObs.complete();\n this._center.complete();\n this._sub.destroy();\n\n if (!this._undoZoomLimit) {\n this.dbxMapboxMapStore.setZoomRange({});\n }\n }\n\n setValue(zoom?: Maybe<ZoomLevel>) {\n this.formControl.setValue(zoom);\n this.formControl.markAsTouched();\n this.formControl.markAsDirty();\n }\n}\n","import { NgModule } from '@angular/core';\nimport { CommonModule } from '@angular/common';\nimport { DbxFormMapboxZoomFieldComponent } from './zoom.field.component';\nimport { FormlyModule } from '@ngx-formly/core';\nimport { FormsModule, ReactiveFormsModule } from '@angular/forms';\nimport { MatInputModule } from '@angular/material/input';\nimport { DbxTextModule } from '@dereekb/dbx-web';\nimport { NgxMapboxGLModule } from 'ngx-mapbox-gl';\nimport { MatIconModule } from '@angular/material/icon';\nimport { MatButtonModule } from '@angular/material/button';\nimport { DbxMapboxModule } from '@dereekb/dbx-web/mapbox';\n\n@NgModule({\n imports: [\n CommonModule,\n MatIconModule,\n MatButtonModule,\n DbxTextModule,\n DbxMapboxModule,\n FormsModule,\n ReactiveFormsModule,\n MatInputModule,\n FormlyModule.forChild({\n types: [{ name: 'mapbox-zoom-picker', component: DbxFormMapboxZoomFieldComponent, wrappers: ['style', 'form-field'] }]\n }),\n NgxMapboxGLModule\n ],\n declarations: [DbxFormMapboxZoomFieldComponent]\n})\nexport class DbxFormMapboxZoomModule {}\n","import { NgModule } from '@angular/core';\nimport { DbxFormMapboxZoomModule } from './field';\nimport { DbxFormMapboxLatLngModule } from './field/latlng/latlng.module';\n\n@NgModule({\n exports: [DbxFormMapboxLatLngModule, DbxFormMapboxZoomModule]\n})\nexport class DbxFormMapboxModule {}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":["i3","i7","i2","i4","i5","i6"],"mappings":"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"}
|
|
@@ -2192,6 +2192,7 @@ class AbstractDbxSearchableValueFieldDirective extends FieldType$1 {
|
|
|
2192
2192
|
this.inputCtrl = new FormControl('');
|
|
2193
2193
|
this._formControlObs = new BehaviorSubject(undefined);
|
|
2194
2194
|
this.formControl$ = this._formControlObs.pipe(filterMaybe());
|
|
2195
|
+
this._clearDisplayHashMapSub = new SubscriptionObject();
|
|
2195
2196
|
this._displayHashMap = new BehaviorSubject(new Map());
|
|
2196
2197
|
this.inputValue$ = this.inputCtrl.valueChanges.pipe(startWith(this.inputCtrl.value), map((x) => x || ''));
|
|
2197
2198
|
this.inputValueString$ = this.inputValue$.pipe(debounceTime(200), distinctUntilChanged());
|
|
@@ -2254,6 +2255,12 @@ class AbstractDbxSearchableValueFieldDirective extends FieldType$1 {
|
|
|
2254
2255
|
get showClearValue() {
|
|
2255
2256
|
return this.searchableField.showClearValue ?? true;
|
|
2256
2257
|
}
|
|
2258
|
+
get searchLabel() {
|
|
2259
|
+
return this.searchableField.searchLabel ?? 'Search';
|
|
2260
|
+
}
|
|
2261
|
+
get refreshDisplayValues$() {
|
|
2262
|
+
return this.searchableField.refreshDisplayValues$;
|
|
2263
|
+
}
|
|
2257
2264
|
loadDisplayValuesForValues(values) {
|
|
2258
2265
|
return this.loadDisplayValuesForFieldValues(values.map((value) => ({ value })));
|
|
2259
2266
|
}
|
|
@@ -2304,6 +2311,9 @@ class AbstractDbxSearchableValueFieldDirective extends FieldType$1 {
|
|
|
2304
2311
|
}
|
|
2305
2312
|
ngOnInit() {
|
|
2306
2313
|
this._formControlObs.next(this.formControl);
|
|
2314
|
+
if (this.refreshDisplayValues$ != null) {
|
|
2315
|
+
this._clearDisplayHashMapSub.subscription = this.refreshDisplayValues$.subscribe(() => this._displayHashMap.next(new Map()));
|
|
2316
|
+
}
|
|
2307
2317
|
if (this.searchableField.textInputValidator) {
|
|
2308
2318
|
this.inputCtrl.setValidators(this.searchableField.textInputValidator);
|
|
2309
2319
|
}
|
|
@@ -2325,6 +2335,7 @@ class AbstractDbxSearchableValueFieldDirective extends FieldType$1 {
|
|
|
2325
2335
|
super.ngOnDestroy();
|
|
2326
2336
|
this._displayHashMap.complete();
|
|
2327
2337
|
this._formControlObs.complete();
|
|
2338
|
+
this._clearDisplayHashMapSub.destroy();
|
|
2328
2339
|
this.searchContext.destroy();
|
|
2329
2340
|
}
|
|
2330
2341
|
/**
|
|
@@ -2564,10 +2575,10 @@ class DbxSearchableTextFieldComponent extends AbstractDbxSearchableValueFieldDir
|
|
|
2564
2575
|
}
|
|
2565
2576
|
}
|
|
2566
2577
|
DbxSearchableTextFieldComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.2.12", ngImport: i0, type: DbxSearchableTextFieldComponent, deps: null, target: i0.ɵɵFactoryTarget.Component });
|
|
2567
|
-
DbxSearchableTextFieldComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.2.12", type: DbxSearchableTextFieldComponent, selector: "ng-component", usesInheritance: true, ngImport: i0, template: "<div class=\"dbx-searchable-text-field\" [ngClass]=\"{ 'dbx-searchable-text-field-has-value': (hasValue$ | async), 'dbx-searchable-text-field-show-value': showSelectedValue }\">\n <!-- Result View -->\n <div class=\"dbx-searchable-text-field-value mat-option mat-option-text\" *ngIf=\"showSelectedDisplayValue$ | async\">\n <dbx-searchable-field-autocomplete-item [displayValue]=\"(selectedDisplayValue$ | async)!\"></dbx-searchable-field-autocomplete-item>\n </div>\n <div class=\"dbx-searchable-text-field-input\">\n <div class=\"dbx-label\">
|
|
2578
|
+
DbxSearchableTextFieldComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.2.12", type: DbxSearchableTextFieldComponent, selector: "ng-component", usesInheritance: true, ngImport: i0, template: "<div class=\"dbx-searchable-text-field\" [ngClass]=\"{ 'dbx-searchable-text-field-has-value': (hasValue$ | async), 'dbx-searchable-text-field-show-value': showSelectedValue }\">\n <!-- Result View -->\n <div class=\"dbx-searchable-text-field-value mat-option mat-option-text\" *ngIf=\"showSelectedDisplayValue$ | async\">\n <dbx-searchable-field-autocomplete-item [displayValue]=\"(selectedDisplayValue$ | async)!\"></dbx-searchable-field-autocomplete-item>\n </div>\n <div class=\"dbx-searchable-text-field-input\">\n <div *ngIf=\"searchLabel\" class=\"dbx-label\">{{ searchLabel }}</div>\n <!-- View -->\n <input type=\"search\" [name]=\"name\" matInput #textInput [placeholder]=\"placeholder\" [formControl]=\"inputCtrl\" [matAutocomplete]=\"auto\" [matAutocompleteDisabled]=\"readonly\" autocomplete=\"{{ autocomplete }}\" />\n <div class=\"searchable-field-form-loading\">\n <dbx-loading [linear]=\"true\" [context]=\"searchContext\"></dbx-loading>\n </div>\n </div>\n</div>\n\n<!-- Autocomplete -->\n<mat-autocomplete class=\"dbx-searchable-text-field-autocomplete\" #auto (optionSelected)=\"selected($event)\">\n <mat-option *ngFor=\"let displayValue of searchResults$ | async\" [value]=\"displayValue\">\n <dbx-searchable-field-autocomplete-item [displayValue]=\"displayValue\"></dbx-searchable-field-autocomplete-item>\n </mat-option>\n <!-- Add/Pick String Value -->\n <mat-option *ngIf=\"allowStringValues && (inputValue$ | async)\" [value]=\"{ value: (inputValue$ | async) }\">\n <p class=\"dbx-clear-hint text-center\">\"{{ inputValue$ | async }}\"</p>\n </mat-option>\n <!-- Show clear value -->\n <mat-option *ngIf=\"showClearValue && (hasValue$ | async)\" value=\"\">\n <p class=\"dbx-clear-hint text-center\">Clear</p>\n </mat-option>\n</mat-autocomplete>\n", dependencies: [{ kind: "directive", type: i1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i1.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: i2$1.DbxLoadingComponent, selector: "dbx-loading", inputs: ["show", "text", "mode", "color", "diameter", "linear", "context", "loading", "error"] }, { kind: "directive", type: i3$1.DefaultValueAccessor, selector: "input:not([type=checkbox])[formControlName],textarea[formControlName],input:not([type=checkbox])[formControl],textarea[formControl],input:not([type=checkbox])[ngModel],textarea[ngModel],[ngDefaultControl]" }, { kind: "directive", type: i3$1.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i4$2.MatInput, selector: "input[matInput], textarea[matInput], select[matNativeControl], input[matNativeControl], textarea[matNativeControl]", inputs: ["disabled", "id", "placeholder", "name", "required", "type", "errorStateMatcher", "aria-describedby", "value", "readonly"], exportAs: ["matInput"] }, { kind: "directive", type: i3$1.FormControlDirective, selector: "[formControl]", inputs: ["formControl", "disabled", "ngModel"], outputs: ["ngModelChange"], exportAs: ["ngForm"] }, { kind: "component", type: i4$3.MatAutocomplete, selector: "mat-autocomplete", inputs: ["disableRipple"], exportAs: ["matAutocomplete"] }, { kind: "directive", type: i4$3.MatAutocompleteTrigger, selector: "input[matAutocomplete], textarea[matAutocomplete]", exportAs: ["matAutocompleteTrigger"] }, { kind: "component", type: i3$2.MatOption, selector: "mat-option", exportAs: ["matOption"] }, { kind: "component", type: DbxSearchableFieldAutocompleteItemComponent, selector: "dbx-searchable-field-autocomplete-item", inputs: ["displayValue"] }, { kind: "pipe", type: i1.AsyncPipe, name: "async" }] });
|
|
2568
2579
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.12", ngImport: i0, type: DbxSearchableTextFieldComponent, decorators: [{
|
|
2569
2580
|
type: Component,
|
|
2570
|
-
args: [{ template: "<div class=\"dbx-searchable-text-field\" [ngClass]=\"{ 'dbx-searchable-text-field-has-value': (hasValue$ | async), 'dbx-searchable-text-field-show-value': showSelectedValue }\">\n <!-- Result View -->\n <div class=\"dbx-searchable-text-field-value mat-option mat-option-text\" *ngIf=\"showSelectedDisplayValue$ | async\">\n <dbx-searchable-field-autocomplete-item [displayValue]=\"(selectedDisplayValue$ | async)!\"></dbx-searchable-field-autocomplete-item>\n </div>\n <div class=\"dbx-searchable-text-field-input\">\n <div class=\"dbx-label\">
|
|
2581
|
+
args: [{ template: "<div class=\"dbx-searchable-text-field\" [ngClass]=\"{ 'dbx-searchable-text-field-has-value': (hasValue$ | async), 'dbx-searchable-text-field-show-value': showSelectedValue }\">\n <!-- Result View -->\n <div class=\"dbx-searchable-text-field-value mat-option mat-option-text\" *ngIf=\"showSelectedDisplayValue$ | async\">\n <dbx-searchable-field-autocomplete-item [displayValue]=\"(selectedDisplayValue$ | async)!\"></dbx-searchable-field-autocomplete-item>\n </div>\n <div class=\"dbx-searchable-text-field-input\">\n <div *ngIf=\"searchLabel\" class=\"dbx-label\">{{ searchLabel }}</div>\n <!-- View -->\n <input type=\"search\" [name]=\"name\" matInput #textInput [placeholder]=\"placeholder\" [formControl]=\"inputCtrl\" [matAutocomplete]=\"auto\" [matAutocompleteDisabled]=\"readonly\" autocomplete=\"{{ autocomplete }}\" />\n <div class=\"searchable-field-form-loading\">\n <dbx-loading [linear]=\"true\" [context]=\"searchContext\"></dbx-loading>\n </div>\n </div>\n</div>\n\n<!-- Autocomplete -->\n<mat-autocomplete class=\"dbx-searchable-text-field-autocomplete\" #auto (optionSelected)=\"selected($event)\">\n <mat-option *ngFor=\"let displayValue of searchResults$ | async\" [value]=\"displayValue\">\n <dbx-searchable-field-autocomplete-item [displayValue]=\"displayValue\"></dbx-searchable-field-autocomplete-item>\n </mat-option>\n <!-- Add/Pick String Value -->\n <mat-option *ngIf=\"allowStringValues && (inputValue$ | async)\" [value]=\"{ value: (inputValue$ | async) }\">\n <p class=\"dbx-clear-hint text-center\">\"{{ inputValue$ | async }}\"</p>\n </mat-option>\n <!-- Show clear value -->\n <mat-option *ngIf=\"showClearValue && (hasValue$ | async)\" value=\"\">\n <p class=\"dbx-clear-hint text-center\">Clear</p>\n </mat-option>\n</mat-autocomplete>\n" }]
|
|
2571
2582
|
}] });
|
|
2572
2583
|
|
|
2573
2584
|
class DbxFormFormlySearchableFieldModule {
|