{"version":3,"file":"placeme-ngx-geo-api-gouv-address.mjs","sources":["../../../projects/ngx-geo-api-gouv-address/src/lib/geo-api-gouv-address.tokens.ts","../../../projects/ngx-geo-api-gouv-address/src/lib/geo-api-gouv-address.service.ts","../../../projects/ngx-geo-api-gouv-address/src/lib/geo-api-gouv-address.module.ts","../../../projects/ngx-geo-api-gouv-address/src/lib/geo-api-gouv-address.providers.ts","../../../projects/ngx-geo-api-gouv-address/src/public-api.ts","../../../projects/ngx-geo-api-gouv-address/src/placeme-ngx-geo-api-gouv-address.ts"],"sourcesContent":["import { InjectionToken } from '@angular/core';\n\nexport const DEFAULT_GEO_API_URL = 'https://data.geopf.fr/geocodage';\n\nexport const GEO_GOUV_API_URL = new InjectionToken<string>('GEO_GOUV_API_URL', {\n  providedIn: 'root',\n  factory: (): string => DEFAULT_GEO_API_URL\n});\n","import { HttpClient } from '@angular/common/http';\nimport { inject, Injectable } from '@angular/core';\n\nimport { Observable } from 'rxjs';\n\nimport { GeoApiGouvAddressResponse, GeoApiGouvAddressType } from './geo-api-gouv-address.interface';\nimport { GEO_GOUV_API_URL } from './geo-api-gouv-address.tokens';\n\ninterface QueryRequestParams {\n  q: string;\n  limit?: number;\n  autocomplete?: number;\n  lat?: number;\n  lon?: number;\n  type?: GeoApiGouvAddressType;\n  postcode?: string;\n  citycode?: string;\n}\n\ninterface ReverseRequestParams {\n  lat: number;\n  lon: number;\n  type?: GeoApiGouvAddressType;\n}\n\n@Injectable()\nexport class GeoApiGouvAddressService {\n  private readonly apiUrl: string = inject(GEO_GOUV_API_URL);\n  private httpClient = inject(HttpClient);\n\n  query(params: QueryRequestParams): Observable<GeoApiGouvAddressResponse> {\n    return this.httpClient.get<GeoApiGouvAddressResponse>(`${this.apiUrl}/search/`, { params: params as any });\n  }\n\n  reverse(params: ReverseRequestParams): Observable<GeoApiGouvAddressResponse> {\n    return this.httpClient.get<GeoApiGouvAddressResponse>(`${this.apiUrl}/reverse/`, { params: params as any });\n  }\n}\n","import { ModuleWithProviders, NgModule, Optional, SkipSelf } from '@angular/core';\n\nimport { GeoApiGouvAddressService } from './geo-api-gouv-address.service';\nimport { GEO_GOUV_API_URL } from './geo-api-gouv-address.tokens';\n\n@NgModule({\n  declarations: [],\n  imports: [],\n  exports: [],\n  providers: []\n})\nexport class GeoApiGouvAddressModule {\n  constructor(@Optional() @SkipSelf() parentModule?: GeoApiGouvAddressModule) {\n    if (parentModule) {\n      throw new Error('GeoApiGouvAddressModule is already loaded. Import it in the AppModule only');\n    }\n  }\n  static forRoot(apiUrl?: string): ModuleWithProviders<GeoApiGouvAddressModule> {\n    return {\n      ngModule: GeoApiGouvAddressModule,\n      providers: [GeoApiGouvAddressService, ...(apiUrl ? [{ provide: GEO_GOUV_API_URL, useValue: apiUrl }] : [])]\n    };\n  }\n}\n","import { EnvironmentProviders, makeEnvironmentProviders } from '@angular/core';\n\nimport { GeoApiGouvAddressService } from './geo-api-gouv-address.service';\nimport { GEO_GOUV_API_URL } from './geo-api-gouv-address.tokens';\n\nexport function provideGeoApiGouv(apiUrl?: string): EnvironmentProviders {\n  return makeEnvironmentProviders([GeoApiGouvAddressService, ...(apiUrl ? [{ provide: GEO_GOUV_API_URL, useValue: apiUrl }] : [])]);\n}\n","/*\n * Public API Surface of ngx-geo-api-gouv-address\n */\n\nexport * from './lib';\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public-api';\n"],"names":[],"mappings":";;;;AAEO,MAAM,mBAAmB,GAAG;MAEtB,gBAAgB,GAAG,IAAI,cAAc,CAAS,kBAAkB,EAAE;AAC7E,IAAA,UAAU,EAAE,MAAM;AAClB,IAAA,OAAO,EAAE,MAAc;AACxB,CAAA;;MCmBY,wBAAwB,CAAA;AADrC,IAAA,WAAA,GAAA;AAEmB,QAAA,IAAA,CAAA,MAAM,GAAW,MAAM,CAAC,gBAAgB,CAAC;AAClD,QAAA,IAAA,CAAA,UAAU,GAAG,MAAM,CAAC,UAAU,CAAC;AASxC,IAAA;AAPC,IAAA,KAAK,CAAC,MAA0B,EAAA;AAC9B,QAAA,OAAO,IAAI,CAAC,UAAU,CAAC,GAAG,CAA4B,GAAG,IAAI,CAAC,MAAM,CAAA,QAAA,CAAU,EAAE,EAAE,MAAM,EAAE,MAAa,EAAE,CAAC;IAC5G;AAEA,IAAA,OAAO,CAAC,MAA4B,EAAA;AAClC,QAAA,OAAO,IAAI,CAAC,UAAU,CAAC,GAAG,CAA4B,GAAG,IAAI,CAAC,MAAM,CAAA,SAAA,CAAW,EAAE,EAAE,MAAM,EAAE,MAAa,EAAE,CAAC;IAC7G;8GAVW,wBAAwB,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,UAAA,EAAA,CAAA,CAAA;kHAAxB,wBAAwB,EAAA,CAAA,CAAA;;2FAAxB,wBAAwB,EAAA,UAAA,EAAA,CAAA;kBADpC;;;MCdY,uBAAuB,CAAA;AAClC,IAAA,WAAA,CAAoC,YAAsC,EAAA;QACxE,IAAI,YAAY,EAAE;AAChB,YAAA,MAAM,IAAI,KAAK,CAAC,4EAA4E,CAAC;QAC/F;IACF;IACA,OAAO,OAAO,CAAC,MAAe,EAAA;QAC5B,OAAO;AACL,YAAA,QAAQ,EAAE,uBAAuB;YACjC,SAAS,EAAE,CAAC,wBAAwB,EAAE,IAAI,MAAM,GAAG,CAAC,EAAE,OAAO,EAAE,gBAAgB,EAAE,QAAQ,EAAE,MAAM,EAAE,CAAC,GAAG,EAAE,CAAC;SAC3G;IACH;8GAXW,uBAAuB,EAAA,IAAA,EAAA,CAAA,EAAA,KAAA,EAAA,uBAAA,EAAA,QAAA,EAAA,IAAA,EAAA,QAAA,EAAA,IAAA,EAAA,CAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,QAAA,EAAA,CAAA,CAAA;+GAAvB,uBAAuB,EAAA,CAAA,CAAA;+GAAvB,uBAAuB,EAAA,CAAA,CAAA;;2FAAvB,uBAAuB,EAAA,UAAA,EAAA,CAAA;kBANnC,QAAQ;AAAC,YAAA,IAAA,EAAA,CAAA;AACR,oBAAA,YAAY,EAAE,EAAE;AAChB,oBAAA,OAAO,EAAE,EAAE;AACX,oBAAA,OAAO,EAAE,EAAE;AACX,oBAAA,SAAS,EAAE;AACZ,iBAAA;;0BAEc;;0BAAY;;;ACPrB,SAAU,iBAAiB,CAAC,MAAe,EAAA;AAC/C,IAAA,OAAO,wBAAwB,CAAC,CAAC,wBAAwB,EAAE,IAAI,MAAM,GAAG,CAAC,EAAE,OAAO,EAAE,gBAAgB,EAAE,QAAQ,EAAE,MAAM,EAAE,CAAC,GAAG,EAAE,CAAC,CAAC,CAAC;AACnI;;ACPA;;AAEG;;ACFH;;AAEG;;;;"}