@geoapify/angular-geocoder-autocomplete
Version:
Angular component for the Geoapify Geocoder Autocomplete library
1 lines • 23 kB
Source Map (JSON)
{"version":3,"file":"geoapify-angular-geocoder-autocomplete.mjs","sources":["../../../projects/angular-geocoder-autocomplete/src/lib/geoapify-config.ts","../../../projects/angular-geocoder-autocomplete/src/lib/geocoder-autocomplete.component.ts","../../../projects/angular-geocoder-autocomplete/src/lib/geocoder-autocomplete.module.ts","../../../projects/angular-geocoder-autocomplete/src/public-api.ts","../../../projects/angular-geocoder-autocomplete/src/geoapify-angular-geocoder-autocomplete.ts"],"sourcesContent":["import { InjectionToken } from '@angular/core';\n\nexport const GEOAPIFY_CONFIG = new InjectionToken<GeoapifyConfig>('geoapify.config');\nexport interface GeoapifyConfig {\n apiKey: string;\n}\n","import {\n Component,\n OnInit,\n ViewChild,\n ElementRef,\n AfterViewInit,\n SimpleChanges,\n Input,\n OnChanges,\n Output,\n EventEmitter,\n OnDestroy,\n Inject\n} from '@angular/core';\nimport {\n GeocoderAutocomplete,\n LocationType,\n SupportedLanguage,\n CountyCode,\n GeoPosition,\n GeocoderAutocompleteOptions,\n ByCountryCodeOptions,\n ByCircleOptions,\n ByRectOptions,\n ByProximityOptions\n} from '@geoapify/geocoder-autocomplete';\nimport { GeoapifyConfig, GEOAPIFY_CONFIG } from './geoapify-config';\n\n\n@Component({\n selector: 'geoapify-geocoder-autocomplete',\n template: '<div class=\"geocoder-container\" #container></div>',\n styles: [\n '.geocoder-container {position: relative}'\n ],\n standalone: false\n})\nexport class GeocoderAutocompleteComponent implements OnInit, AfterViewInit, OnChanges, OnDestroy {\n\n autocomplete: GeocoderAutocomplete;\n\n @ViewChild('container')\n container: ElementRef;\n\n @Input()\n value: string;\n\n @Input()\n placeholder: string;\n\n @Input()\n type: LocationType;\n\n @Input()\n skipIcons: boolean;\n\n @Input()\n addDetails: boolean;\n\n @Input()\n lang: SupportedLanguage;\n\n @Input()\n filterByCountryCode: ByCountryCodeOptions;\n\n @Input()\n filterByCircle: ByCircleOptions;\n\n @Input()\n filterByRect: ByRectOptions;\n\n @Input()\n biasByCountryCode: ByCountryCodeOptions;\n\n @Input()\n biasByCircle: ByCircleOptions;\n\n @Input()\n biasByRect: ByRectOptions;\n\n @Input()\n biasByProximity: ByProximityOptions;\n\n @Input()\n countryCodes: CountyCode[]; // deprecated\n\n @Input()\n position: GeoPosition; // deprecated\n\n @Input()\n limit: number;\n\n @Input()\n debounceDelay: number;\n\n @Input()\n allowNonVerifiedHouseNumber: boolean;\n\n @Input()\n allowNonVerifiedStreet: boolean;\n\n @Input()\n skipSelectionOnArrowKey: boolean;\n\n @Input()\n preprocessingHook: (value: string) => string;\n\n @Input()\n postprocessingHook: (feature: any) => string;\n\n @Input()\n suggestionsFilter: (suggestions: any[]) => any[];\n\n @Input()\n sendGeocoderRequestFunc: (value: string, geocoderAutocomplete: GeocoderAutocomplete) => Promise<any>;\n\n @Input()\n sendPlaceDetailsRequestFunc: (feature: any, geocoderAutocomplete: GeocoderAutocomplete) => Promise<any>;\n\n @Output()\n placeSelect: EventEmitter<any> = new EventEmitter<any>();\n\n @Output()\n suggestionsChange: EventEmitter<any> = new EventEmitter<any>();\n\n @Output()\n userInput: EventEmitter<string> = new EventEmitter<string>();\n\n @Output()\n open: EventEmitter<boolean> = new EventEmitter<boolean>();\n\n @Output()\n close: EventEmitter<boolean> = new EventEmitter<boolean>();\n\n @Output()\n requestStart: EventEmitter<any> = new EventEmitter<any>();\n\n @Output()\n requestEnd: EventEmitter<any> = new EventEmitter<any>();\n\n private onSelectEventFunction: any;\n private onSuggestionsEventFunction: any;\n private onUserInputEventFunction: any;\n private onOpenEventFunction: any;\n private onCloseEventFunction: any;\n\n constructor(@Inject(GEOAPIFY_CONFIG) private config: GeoapifyConfig) { }\n\n ngOnInit(): void {\n\n }\n\n ngAfterViewInit() {\n const options: GeocoderAutocompleteOptions = {};\n\n if (this.placeholder) {\n options.placeholder = this.placeholder;\n }\n\n if (this.type) {\n options.type = this.type;\n }\n\n if (this.lang) {\n options.lang = this.lang;\n }\n\n if (this.limit) {\n options.limit = this.limit;\n }\n\n if (this.debounceDelay) {\n options.debounceDelay = this.debounceDelay;\n }\n\n if (this.skipIcons) {\n options.skipIcons = this.skipIcons;\n }\n\n if (this.addDetails) {\n options.addDetails = this.addDetails;\n }\n\n if (this.allowNonVerifiedHouseNumber !== undefined) {\n options.allowNonVerifiedHouseNumber = this.allowNonVerifiedHouseNumber;\n }\n\n if (this.allowNonVerifiedStreet !== undefined) {\n options.allowNonVerifiedStreet = this.allowNonVerifiedStreet;\n }\n\n if (this.skipSelectionOnArrowKey !== undefined) {\n options.skipSelectionOnArrowKey = this.skipSelectionOnArrowKey;\n }\n\n this.autocomplete = new GeocoderAutocomplete(this.container.nativeElement, this.config.apiKey, options);\n\n if (this.value) {\n this.autocomplete.setValue(this.value);\n }\n\n if (this.countryCodes) {\n console.warn(\"WARNING! Obsolete function called. The 'countryCodes' input has been deprecated, please use the new 'filterByCountryCode' input instead!\");\n this.autocomplete.addFilterByCountry(this.countryCodes);\n }\n\n if (this.position) {\n console.warn(\"WARNING! Obsolete function called. The 'position' input has been deprecated, please use the new 'biasByLocation' input instead!\");\n this.autocomplete.addBiasByProximity(this.position);\n }\n\n if (this.filterByCircle) {\n this.autocomplete.addFilterByCircle(this.filterByCircle);\n }\n\n if (this.filterByCountryCode) {\n this.autocomplete.addFilterByCountry(this.filterByCountryCode);\n }\n\n if (this.filterByRect) {\n this.autocomplete.addFilterByRect(this.filterByRect);\n }\n\n if (this.biasByCircle) {\n this.autocomplete.addBiasByCircle(this.biasByCircle);\n }\n\n if (this.biasByRect) {\n this.autocomplete.addBiasByRect(this.biasByRect);\n }\n\n if (this.biasByProximity) {\n this.autocomplete.addBiasByProximity(this.biasByProximity);\n }\n\n if (this.biasByCountryCode) {\n this.autocomplete.addBiasByCountry(this.biasByCountryCode);\n }\n\n if (this.preprocessingHook) {\n this.autocomplete.setPreprocessHook(this.preprocessingHook);\n }\n\n if (this.postprocessingHook) {\n this.autocomplete.setPostprocessHook(this.postprocessingHook);\n }\n\n if (this.suggestionsFilter) {\n this.autocomplete.setSuggestionsFilter(this.suggestionsFilter);\n }\n\n if (this.sendGeocoderRequestFunc) {\n this.autocomplete.setSendGeocoderRequestFunc(this.sendGeocoderRequestFunc);\n }\n\n if (this.sendPlaceDetailsRequestFunc) {\n this.autocomplete.setSendPlaceDetailsRequestFunc(this.sendPlaceDetailsRequestFunc);\n }\n\n this.autocomplete.on('select', this.onSelect.bind(this));\n this.autocomplete.on('suggestions', this.onSuggestions.bind(this));\n this.autocomplete.on('input', this.onInput.bind(this));\n this.autocomplete.on('open', this.onOpen.bind(this));\n this.autocomplete.on('close', this.onClose.bind(this));\n this.autocomplete.on('request_start', this.onRequestStart.bind(this));\n this.autocomplete.on('request_end', this.onRequestEnd.bind(this));\n }\n\n onSelect(value: any) {\n this.placeSelect.emit(value);\n }\n\n onSuggestions(value: any) {\n this.suggestionsChange.emit(value);\n }\n\n onInput(value: string) {\n this.userInput.emit(value);\n }\n\n onOpen(opened: boolean) {\n this.open.emit(opened);\n }\n\n onClose(opened: boolean) {\n this.close.emit(opened);\n }\n\n onRequestStart(value: any) {\n this.requestStart.emit(value);\n }\n\n onRequestEnd(value: any) {\n this.requestEnd.emit(value);\n }\n\n ngOnChanges(changes: SimpleChanges) {\n\n if (!this.autocomplete) {\n return;\n }\n\n if (changes['value'] &&\n !changes['value'].isFirstChange()) {\n this.autocomplete.setValue(changes['value'].currentValue);\n }\n\n if (changes['type'] &&\n !changes['type'].isFirstChange()) {\n this.autocomplete.setType(changes['type'].currentValue);\n }\n\n if (changes['lang'] &&\n !changes['lang'].isFirstChange()) {\n this.autocomplete.setLang(changes['lang'].currentValue);\n }\n\n if (changes['filterByCircle'] &&\n !changes['filterByCircle'].isFirstChange()) {\n this.autocomplete.addFilterByCircle(changes['filterByCircle'].currentValue);\n }\n\n if (changes['filterByCountryCode'] &&\n !changes['filterByCountryCode'].isFirstChange()) {\n this.autocomplete.addFilterByCountry(changes['filterByCountryCode'].currentValue);\n }\n\n if (changes['filterByRect'] &&\n !changes['filterByRect'].isFirstChange()) {\n this.autocomplete.addFilterByRect(changes['filterByRect'].currentValue);\n }\n\n if (changes['biasByCircle'] &&\n !changes['biasByCircle'].isFirstChange()) {\n this.autocomplete.addBiasByCircle(changes['biasByCircle'].currentValue);\n }\n\n if (changes['biasByRect'] &&\n !changes['biasByRect'].isFirstChange()) {\n this.autocomplete.addBiasByRect(changes['biasByRect'].currentValue);\n }\n\n if (changes['biasByProximity'] &&\n !changes['biasByProximity'].isFirstChange()) {\n this.autocomplete.addBiasByProximity(changes['biasByProximity'].currentValue);\n }\n\n if (changes['biasByCountryCode'] &&\n !changes['biasByCountryCode'].isFirstChange()) {\n this.autocomplete.addBiasByCountry(changes['biasByCountryCode'].currentValue);\n }\n\n if (changes['countryCodes'] &&\n !changes['countryCodes'].isFirstChange()) {\n console.warn(\"WARNING! Obsolete function called. The 'countryCodes' input has been deprecated, please use the new 'filterByCountryCode' input instead!\");\n this.autocomplete.addFilterByCountry(changes['countryCodes'].currentValue);\n }\n\n if (changes['position'] &&\n !changes['position'].isFirstChange()) {\n console.warn(\"WARNING! Obsolete function called. The 'position' input has been deprecated, please use the new 'biasByLocation' input instead!\");\n this.autocomplete.addBiasByProximity(changes['position'].currentValue);\n }\n\n if (changes['limit'] &&\n !changes['limit'].isFirstChange()) {\n this.autocomplete.setLimit(changes['limit'].currentValue);\n }\n\n if (changes['preprocessingHook'] &&\n !changes['preprocessingHook'].isFirstChange()) {\n this.autocomplete.setPreprocessHook(changes['preprocessingHook'].currentValue);\n }\n\n if (changes['postprocessingHook'] &&\n !changes['postprocessingHook'].isFirstChange()) {\n this.autocomplete.setPostprocessHook(changes['postprocessingHook'].currentValue);\n }\n\n if (changes['suggestionsFilter'] &&\n !changes['suggestionsFilter'].isFirstChange()) {\n this.autocomplete.setSuggestionsFilter(changes['suggestionsFilter'].currentValue);\n }\n\n if (changes['allowNonVerifiedHouseNumber'] &&\n !changes['allowNonVerifiedHouseNumber'].isFirstChange()) {\n this.autocomplete.setAllowNonVerifiedHouseNumber(changes['allowNonVerifiedHouseNumber'].currentValue);\n }\n\n if (changes['allowNonVerifiedStreet'] &&\n !changes['allowNonVerifiedStreet'].isFirstChange()) {\n this.autocomplete.setAllowNonVerifiedStreet(changes['allowNonVerifiedStreet'].currentValue);\n }\n }\n\n ngOnDestroy() {\n this.autocomplete.off('select');\n this.autocomplete.off('suggestions');\n this.autocomplete.off('input');\n this.autocomplete.off('open');\n this.autocomplete.off('close');\n this.autocomplete.off('request_start');\n this.autocomplete.off('request_end');\n }\n}\n","import { NgModule, ModuleWithProviders } from '@angular/core';\nimport { GeocoderAutocompleteComponent } from './geocoder-autocomplete.component';\nimport { GEOAPIFY_CONFIG } from './geoapify-config';\n\n@NgModule({\n declarations: [GeocoderAutocompleteComponent],\n imports: [\n ],\n exports: [GeocoderAutocompleteComponent]\n})\nexport class GeoapifyGeocoderAutocompleteModule {\n static withConfig( apiKey: string ): ModuleWithProviders<GeoapifyGeocoderAutocompleteModule> {\n return {\n ngModule: GeoapifyGeocoderAutocompleteModule,\n providers: [\n { provide: GEOAPIFY_CONFIG, useValue: { apiKey: apiKey }}\n ]\n };\n }\n}\n","/*\n * Public API Surface of angular-geocoder-autocomplete\n */\n\nexport * from './lib/geocoder-autocomplete.component';\nexport * from './lib/geocoder-autocomplete.module';\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public-api';\n"],"names":[],"mappings":"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"}