mirror of
https://github.com/Ocelot-Social-Community/Ocelot-Social.git
synced 2025-12-13 07:46:06 +00:00
refactor(backend): put fetch into context
It's a best practice to add HTTP API clients to the `context`. Standard Apollo GraphQL tutorial has an example: https://www.apollographql.com/docs/apollo-server/data/context#resolvers Also database drivers, loggers, message queues or process environment defined configuration should go into the `context`, just like HTTP-clients.
This commit is contained in:
parent
83b7c3eceb
commit
cca7d78d25
19
backend/src/context/fetch.ts
Normal file
19
backend/src/context/fetch.ts
Normal file
@ -0,0 +1,19 @@
|
||||
import request from 'request'
|
||||
|
||||
export const fetch = (url: string) => {
|
||||
// eslint-disable-next-line promise/avoid-new
|
||||
return new Promise((resolve, reject) => {
|
||||
// eslint-disable-next-line promise/prefer-await-to-callbacks
|
||||
request(url, function (error, response, body) {
|
||||
if (error) {
|
||||
reject(error)
|
||||
} else {
|
||||
const response = JSON.parse(body) // eslint-disable-line @typescript-eslint/no-unsafe-assignment,@typescript-eslint/no-unsafe-argument
|
||||
// console.log(url)
|
||||
// console.log(JSON.stringify(response, null, 2))
|
||||
resolve(response)
|
||||
}
|
||||
})
|
||||
})
|
||||
}
|
||||
export type Fetch = typeof fetch
|
||||
@ -1,6 +1,8 @@
|
||||
/* eslint-disable @typescript-eslint/no-unsafe-return */
|
||||
|
||||
import databaseContext from '@context/database'
|
||||
import type { Fetch } from '@context/fetch'
|
||||
import { fetch as defaultFetch } from '@context/fetch'
|
||||
import pubsubContext from '@context/pubsub'
|
||||
import CONFIG from '@src/config'
|
||||
import type { DecodedUser } from '@src/jwt/decode'
|
||||
@ -17,6 +19,7 @@ export const getContext =
|
||||
pubsub?: ReturnType<typeof pubsubContext>
|
||||
authenticatedUser: DecodedUser | null | undefined
|
||||
config: typeof CONFIG
|
||||
fetch: Fetch
|
||||
}) =>
|
||||
async (req: { headers: { authorization?: string } }) => {
|
||||
const {
|
||||
@ -24,6 +27,7 @@ export const getContext =
|
||||
database = serverDatabase,
|
||||
pubsub = serverPubsub,
|
||||
config = CONFIG,
|
||||
fetch = defaultFetch,
|
||||
} = opts ?? {}
|
||||
const { driver } = database
|
||||
const user =
|
||||
@ -41,6 +45,7 @@ export const getContext =
|
||||
currentUserId: user ? user.id : null,
|
||||
},
|
||||
config,
|
||||
fetch,
|
||||
}
|
||||
return result
|
||||
}
|
||||
|
||||
@ -16,6 +16,7 @@ import { createPostMutation } from '@graphql/queries/createPostMutation'
|
||||
import { createRoomMutation } from '@graphql/queries/createRoomMutation'
|
||||
import { joinGroupMutation } from '@graphql/queries/joinGroupMutation'
|
||||
import { createApolloTestSetup } from '@root/test/helpers'
|
||||
import { fetch as actualFetch } from '@src/context/fetch'
|
||||
|
||||
import Factory from './factories'
|
||||
import { trophies, verification } from './seed/badges'
|
||||
@ -38,6 +39,7 @@ const languages = ['de', 'en', 'es', 'fr', 'it', 'pt', 'pl']
|
||||
const context = () => ({
|
||||
authenticatedUser,
|
||||
config: CONFIG,
|
||||
fetch: actualFetch,
|
||||
})
|
||||
const apolloSetup = createApolloTestSetup({ context })
|
||||
const { mutate, server, database } = apolloSetup
|
||||
|
||||
@ -15,7 +15,6 @@ import { updateGroupMutation } from '@graphql/queries/updateGroupMutation'
|
||||
import type { ApolloTestSetup } from '@root/test/helpers'
|
||||
import { createApolloTestSetup } from '@root/test/helpers'
|
||||
import type { Context } from '@src/context'
|
||||
// import CONFIG from '@src/config'
|
||||
|
||||
let user
|
||||
let noMemberUser
|
||||
|
||||
@ -40,6 +40,11 @@ beforeAll(async () => {
|
||||
|
||||
beforeEach(async () => {
|
||||
await cleanDatabase()
|
||||
const apolloSetup = createApolloTestSetup({ context })
|
||||
mutate = apolloSetup.mutate
|
||||
query = apolloSetup.query
|
||||
database = apolloSetup.database
|
||||
server = apolloSetup.server
|
||||
})
|
||||
|
||||
afterAll(async () => {
|
||||
|
||||
@ -14,7 +14,6 @@ import type { ApolloTestSetup } from '@root/test/helpers'
|
||||
import { createApolloTestSetup } from '@root/test/helpers'
|
||||
import type { Context } from '@src/context'
|
||||
import type { DecodedUser } from '@src/jwt/decode'
|
||||
// import CONFIG from '@src/config'
|
||||
|
||||
const categoryIds = ['cat9']
|
||||
let user
|
||||
|
||||
@ -8,15 +8,15 @@ import type { ApolloTestSetup } from '@root/test/helpers'
|
||||
import { createApolloTestSetup } from '@root/test/helpers'
|
||||
import type { Context } from '@src/context'
|
||||
|
||||
let mutate: ApolloTestSetup['mutate']
|
||||
let query: any // eslint-disable-line @typescript-eslint/no-explicit-any
|
||||
let database: ApolloTestSetup['database']
|
||||
let server: ApolloTestSetup['server']
|
||||
let variables
|
||||
let authenticatedUser: Context['user']
|
||||
const context = () => ({
|
||||
authenticatedUser,
|
||||
})
|
||||
let mutate: ApolloTestSetup['mutate']
|
||||
let query: any // eslint-disable-line @typescript-eslint/no-explicit-any
|
||||
let database: ApolloTestSetup['database']
|
||||
let server: ApolloTestSetup['server']
|
||||
|
||||
const updateUserMutation = gql`
|
||||
mutation ($id: ID!, $name: String!, $locationName: String) {
|
||||
|
||||
@ -6,25 +6,11 @@
|
||||
/* eslint-disable @typescript-eslint/no-unsafe-assignment */
|
||||
/* eslint-disable @typescript-eslint/no-unsafe-return */
|
||||
/* eslint-disable @typescript-eslint/no-explicit-any */
|
||||
/* eslint-disable promise/avoid-new */
|
||||
/* eslint-disable promise/prefer-await-to-callbacks */
|
||||
|
||||
import { UserInputError } from 'apollo-server'
|
||||
import request from 'request'
|
||||
|
||||
import type { Context } from '@src/context'
|
||||
|
||||
const fetch = (url) => {
|
||||
return new Promise((resolve, reject) => {
|
||||
request(url, function (error, response, body) {
|
||||
if (error) {
|
||||
reject(error)
|
||||
} else {
|
||||
resolve(JSON.parse(body))
|
||||
}
|
||||
})
|
||||
})
|
||||
}
|
||||
|
||||
const locales = ['en', 'de', 'fr', 'nl', 'it', 'es', 'pt', 'pl', 'ru']
|
||||
|
||||
const createLocation = async (session, mapboxData) => {
|
||||
@ -85,13 +71,12 @@ export const createOrUpdateLocations = async (
|
||||
let locationId
|
||||
|
||||
if (locationName !== null) {
|
||||
const res: any = await fetch(
|
||||
`https://api.mapbox.com/geocoding/v5/mapbox.places/${encodeURIComponent(
|
||||
locationName,
|
||||
)}.json?access_token=${
|
||||
context.config.MAPBOX_TOKEN
|
||||
}&types=region,place,country,address&language=${locales.join(',')}`,
|
||||
)
|
||||
const url = `https://api.mapbox.com/geocoding/v5/mapbox.places/${encodeURIComponent(
|
||||
locationName,
|
||||
)}.json?access_token=${
|
||||
context.config.MAPBOX_TOKEN
|
||||
}&types=region,place,country,address&language=${locales.join(',')}`
|
||||
const res: any = await context.fetch(url)
|
||||
|
||||
if (!res?.features?.[0]) {
|
||||
throw new UserInputError('locationName is invalid')
|
||||
@ -166,9 +151,8 @@ export const createOrUpdateLocations = async (
|
||||
}
|
||||
|
||||
export const queryLocations = async ({ place, lang }, context: Context) => {
|
||||
const res: any = await fetch(
|
||||
`https://api.mapbox.com/geocoding/v5/mapbox.places/${place}.json?access_token=${context.config.MAPBOX_TOKEN}&types=region,place,country&language=${lang}`,
|
||||
)
|
||||
const url = `https://api.mapbox.com/geocoding/v5/mapbox.places/${place}.json?access_token=${context.config.MAPBOX_TOKEN}&types=region,place,country&language=${lang}`
|
||||
const res: any = await context.fetch(url)
|
||||
// Return empty array if no location found or error occurred
|
||||
if (!res?.features) {
|
||||
return []
|
||||
|
||||
255
backend/test/fetchMock/berlinDe.ts
Normal file
255
backend/test/fetchMock/berlinDe.ts
Normal file
@ -0,0 +1,255 @@
|
||||
export const berlinDe = {
|
||||
type: 'FeatureCollection',
|
||||
query: ['berlin'],
|
||||
features: [
|
||||
{
|
||||
id: 'place.115770',
|
||||
type: 'Feature',
|
||||
place_type: ['region', 'place'],
|
||||
relevance: 1,
|
||||
properties: {
|
||||
mapbox_id: 'dXJuOm1ieHBsYzpBY1E2',
|
||||
wikidata: 'Q64',
|
||||
short_code: 'DE-BE',
|
||||
},
|
||||
text_de: 'Berlin',
|
||||
language_de: 'de',
|
||||
place_name_de: 'Berlin, Deutschland',
|
||||
text: 'Berlin',
|
||||
language: 'de',
|
||||
place_name: 'Berlin, Deutschland',
|
||||
bbox: [13.08836, 52.338261, 13.760906, 52.675502],
|
||||
center: [13.38886, 52.517037],
|
||||
geometry: {
|
||||
type: 'Point',
|
||||
coordinates: [13.38886, 52.517037],
|
||||
},
|
||||
context: [
|
||||
{
|
||||
id: 'country.8762',
|
||||
mapbox_id: 'dXJuOm1ieHBsYzpJam8',
|
||||
wikidata: 'Q183',
|
||||
short_code: 'de',
|
||||
text_de: 'Deutschland',
|
||||
language_de: 'de',
|
||||
text: 'Deutschland',
|
||||
language: 'de',
|
||||
},
|
||||
],
|
||||
},
|
||||
{
|
||||
id: 'place.25995500',
|
||||
type: 'Feature',
|
||||
place_type: ['place'],
|
||||
relevance: 1,
|
||||
properties: {
|
||||
mapbox_id: 'dXJuOm1ieHBsYzpBWXlvN0E',
|
||||
wikidata: 'Q614184',
|
||||
},
|
||||
text_de: 'Berlin',
|
||||
language_de: 'de',
|
||||
place_name_de: 'Berlin, Maryland, Vereinigte Staaten',
|
||||
text: 'Berlin',
|
||||
language: 'de',
|
||||
place_name: 'Berlin, Maryland, Vereinigte Staaten',
|
||||
bbox: [-75.364989, 38.141747, -75.087625, 38.4078],
|
||||
center: [-75.219004, 38.324728],
|
||||
geometry: {
|
||||
type: 'Point',
|
||||
coordinates: [-75.219004, 38.324728],
|
||||
},
|
||||
context: [
|
||||
{
|
||||
id: 'district.25396972',
|
||||
mapbox_id: 'dXJuOm1ieHBsYzpBWU9HN0E',
|
||||
wikidata: 'Q494072',
|
||||
text_de: 'Worcester County',
|
||||
language_de: 'de',
|
||||
text: 'Worcester County',
|
||||
language: 'de',
|
||||
},
|
||||
{
|
||||
id: 'region.124140',
|
||||
mapbox_id: 'dXJuOm1ieHBsYzpBZVRz',
|
||||
wikidata: 'Q1391',
|
||||
short_code: 'US-MD',
|
||||
text_de: 'Maryland',
|
||||
language_de: 'de',
|
||||
text: 'Maryland',
|
||||
language: 'de',
|
||||
},
|
||||
{
|
||||
id: 'country.8940',
|
||||
mapbox_id: 'dXJuOm1ieHBsYzpJdXc',
|
||||
wikidata: 'Q30',
|
||||
short_code: 'us',
|
||||
text_de: 'Vereinigte Staaten',
|
||||
language_de: 'de',
|
||||
text: 'Vereinigte Staaten',
|
||||
language: 'de',
|
||||
},
|
||||
],
|
||||
},
|
||||
{
|
||||
id: 'place.25970924',
|
||||
type: 'Feature',
|
||||
place_type: ['place'],
|
||||
relevance: 1,
|
||||
properties: {
|
||||
mapbox_id: 'dXJuOm1ieHBsYzpBWXhJN0E',
|
||||
wikidata: 'Q1086827',
|
||||
},
|
||||
text_de: 'Berlin',
|
||||
language_de: 'de',
|
||||
place_name_de: 'Berlin, New Jersey, Vereinigte Staaten',
|
||||
text: 'Berlin',
|
||||
language: 'de',
|
||||
place_name: 'Berlin, New Jersey, Vereinigte Staaten',
|
||||
bbox: [-74.974491, 39.70904, -74.878605, 39.809363],
|
||||
center: [-74.929456, 39.791432],
|
||||
geometry: {
|
||||
type: 'Point',
|
||||
coordinates: [-74.929456, 39.791432],
|
||||
},
|
||||
context: [
|
||||
{
|
||||
id: 'district.3016428',
|
||||
mapbox_id: 'dXJuOm1ieHBsYzpMZ2Jz',
|
||||
wikidata: 'Q497810',
|
||||
text_de: 'Camden County',
|
||||
language_de: 'de',
|
||||
text: 'Camden County',
|
||||
language: 'de',
|
||||
},
|
||||
{
|
||||
id: 'region.156908',
|
||||
mapbox_id: 'dXJuOm1ieHBsYzpBbVRz',
|
||||
wikidata: 'Q1408',
|
||||
short_code: 'US-NJ',
|
||||
text_de: 'New Jersey',
|
||||
language_de: 'de',
|
||||
text: 'New Jersey',
|
||||
language: 'de',
|
||||
},
|
||||
{
|
||||
id: 'country.8940',
|
||||
mapbox_id: 'dXJuOm1ieHBsYzpJdXc',
|
||||
wikidata: 'Q30',
|
||||
short_code: 'us',
|
||||
text_de: 'Vereinigte Staaten',
|
||||
language_de: 'de',
|
||||
text: 'Vereinigte Staaten',
|
||||
language: 'de',
|
||||
},
|
||||
],
|
||||
},
|
||||
{
|
||||
id: 'place.26118380',
|
||||
type: 'Feature',
|
||||
place_type: ['place'],
|
||||
relevance: 1,
|
||||
properties: {
|
||||
mapbox_id: 'dXJuOm1ieHBsYzpBWTZJN0E',
|
||||
wikidata: 'Q2219095',
|
||||
},
|
||||
text_de: 'Berlin Heights',
|
||||
language_de: 'de',
|
||||
place_name_de: 'Berlin Heights, Ohio, Vereinigte Staaten',
|
||||
text: 'Berlin Heights',
|
||||
language: 'de',
|
||||
place_name: 'Berlin Heights, Ohio, Vereinigte Staaten',
|
||||
bbox: [-82.54353, 41.285345, -82.382139, 41.364821],
|
||||
center: [-82.493433, 41.325154],
|
||||
geometry: {
|
||||
type: 'Point',
|
||||
coordinates: [-82.493433, 41.325154],
|
||||
},
|
||||
context: [
|
||||
{
|
||||
id: 'district.7235308',
|
||||
mapbox_id: 'dXJuOm1ieHBsYzpibWJz',
|
||||
wikidata: 'Q111310',
|
||||
text_de: 'Erie County',
|
||||
language_de: 'de',
|
||||
text: 'Erie County',
|
||||
language: 'de',
|
||||
},
|
||||
{
|
||||
id: 'region.140524',
|
||||
mapbox_id: 'dXJuOm1ieHBsYzpBaVRz',
|
||||
wikidata: 'Q1397',
|
||||
short_code: 'US-OH',
|
||||
text_de: 'Ohio',
|
||||
language_de: 'de',
|
||||
text: 'Ohio',
|
||||
language: 'de',
|
||||
},
|
||||
{
|
||||
id: 'country.8940',
|
||||
mapbox_id: 'dXJuOm1ieHBsYzpJdXc',
|
||||
wikidata: 'Q30',
|
||||
short_code: 'us',
|
||||
text_de: 'Vereinigte Staaten',
|
||||
language_de: 'de',
|
||||
text: 'Vereinigte Staaten',
|
||||
language: 'de',
|
||||
},
|
||||
],
|
||||
},
|
||||
{
|
||||
id: 'place.26044652',
|
||||
type: 'Feature',
|
||||
place_type: ['place'],
|
||||
relevance: 1,
|
||||
properties: {
|
||||
mapbox_id: 'dXJuOm1ieHBsYzpBWTFvN0E',
|
||||
wikidata: 'Q524646',
|
||||
},
|
||||
text_de: 'Berlin',
|
||||
language_de: 'de',
|
||||
place_name_de: 'Berlin, Massachusetts, Vereinigte Staaten',
|
||||
text: 'Berlin',
|
||||
language: 'de',
|
||||
place_name: 'Berlin, Massachusetts, Vereinigte Staaten',
|
||||
bbox: [-71.678766, 42.350413, -71.58015, 42.418232],
|
||||
center: [-71.638302, 42.381333],
|
||||
geometry: {
|
||||
type: 'Point',
|
||||
coordinates: [-71.638302, 42.381333],
|
||||
},
|
||||
context: [
|
||||
{
|
||||
id: 'district.25405164',
|
||||
mapbox_id: 'dXJuOm1ieHBsYzpBWU9tN0E',
|
||||
wikidata: 'Q54093',
|
||||
text_de: 'Worcester County',
|
||||
language_de: 'de',
|
||||
text: 'Worcester County',
|
||||
language: 'de',
|
||||
},
|
||||
{
|
||||
id: 'region.353516',
|
||||
mapbox_id: 'dXJuOm1ieHBsYzpCV1Rz',
|
||||
wikidata: 'Q771',
|
||||
short_code: 'US-MA',
|
||||
text_de: 'Massachusetts',
|
||||
language_de: 'de',
|
||||
text: 'Massachusetts',
|
||||
language: 'de',
|
||||
},
|
||||
{
|
||||
id: 'country.8940',
|
||||
mapbox_id: 'dXJuOm1ieHBsYzpJdXc',
|
||||
wikidata: 'Q30',
|
||||
short_code: 'us',
|
||||
text_de: 'Vereinigte Staaten',
|
||||
language_de: 'de',
|
||||
text: 'Vereinigte Staaten',
|
||||
language: 'de',
|
||||
},
|
||||
],
|
||||
},
|
||||
],
|
||||
attribution:
|
||||
'NOTICE: © 2025 Mapbox and its suppliers. All rights reserved. Use of this data is subject to the Mapbox Terms of Service (https://www.mapbox.com/about/maps/). This response and the information it contains may not be retained.',
|
||||
}
|
||||
254
backend/test/fetchMock/berlinEn.ts
Normal file
254
backend/test/fetchMock/berlinEn.ts
Normal file
@ -0,0 +1,254 @@
|
||||
export const berlinEn = {
|
||||
type: 'FeatureCollection',
|
||||
query: ['berlin'],
|
||||
features: [
|
||||
{
|
||||
id: 'place.115770',
|
||||
type: 'Feature',
|
||||
place_type: ['region', 'place'],
|
||||
relevance: 1,
|
||||
properties: {
|
||||
mapbox_id: 'dXJuOm1ieHBsYzpBY1E2',
|
||||
wikidata: 'Q64',
|
||||
short_code: 'DE-BE',
|
||||
},
|
||||
text_en: 'Berlin',
|
||||
language_en: 'en',
|
||||
place_name_en: 'Berlin, Germany',
|
||||
text: 'Berlin',
|
||||
language: 'en',
|
||||
place_name: 'Berlin, Germany',
|
||||
bbox: [13.08836, 52.338261, 13.760906, 52.675502],
|
||||
center: [13.38886, 52.517037],
|
||||
geometry: {
|
||||
type: 'Point',
|
||||
coordinates: [13.38886, 52.517037],
|
||||
},
|
||||
context: [
|
||||
{
|
||||
id: 'country.8762',
|
||||
mapbox_id: 'dXJuOm1ieHBsYzpJam8',
|
||||
wikidata: 'Q183',
|
||||
short_code: 'de',
|
||||
text_en: 'Germany',
|
||||
language_en: 'en',
|
||||
text: 'Germany',
|
||||
language: 'en',
|
||||
},
|
||||
],
|
||||
},
|
||||
{
|
||||
id: 'place.25995500',
|
||||
type: 'Feature',
|
||||
place_type: ['place'],
|
||||
relevance: 1,
|
||||
properties: {
|
||||
mapbox_id: 'dXJuOm1ieHBsYzpBWXlvN0E',
|
||||
wikidata: 'Q614184',
|
||||
},
|
||||
text_en: 'Berlin',
|
||||
language_en: 'en',
|
||||
place_name_en: 'Berlin, Maryland, United States',
|
||||
text: 'Berlin',
|
||||
language: 'en',
|
||||
place_name: 'Berlin, Maryland, United States',
|
||||
bbox: [-75.364989, 38.141747, -75.087625, 38.4078],
|
||||
center: [-75.219004, 38.324728],
|
||||
geometry: {
|
||||
type: 'Point',
|
||||
coordinates: [-75.219004, 38.324728],
|
||||
},
|
||||
context: [
|
||||
{
|
||||
id: 'district.25396972',
|
||||
mapbox_id: 'dXJuOm1ieHBsYzpBWU9HN0E',
|
||||
wikidata: 'Q494072',
|
||||
text_en: 'Worcester County',
|
||||
language_en: 'en',
|
||||
text: 'Worcester County',
|
||||
language: 'en',
|
||||
},
|
||||
{
|
||||
id: 'region.124140',
|
||||
mapbox_id: 'dXJuOm1ieHBsYzpBZVRz',
|
||||
wikidata: 'Q1391',
|
||||
short_code: 'US-MD',
|
||||
text_en: 'Maryland',
|
||||
language_en: 'en',
|
||||
text: 'Maryland',
|
||||
language: 'en',
|
||||
},
|
||||
{
|
||||
id: 'country.8940',
|
||||
mapbox_id: 'dXJuOm1ieHBsYzpJdXc',
|
||||
wikidata: 'Q30',
|
||||
short_code: 'us',
|
||||
text_en: 'United States',
|
||||
language_en: 'en',
|
||||
text: 'United States',
|
||||
language: 'en',
|
||||
},
|
||||
],
|
||||
},
|
||||
{
|
||||
id: 'place.25970924',
|
||||
type: 'Feature',
|
||||
place_type: ['place'],
|
||||
relevance: 1,
|
||||
properties: {
|
||||
mapbox_id: 'dXJuOm1ieHBsYzpBWXhJN0E',
|
||||
wikidata: 'Q1086827',
|
||||
},
|
||||
text_en: 'Berlin',
|
||||
language_en: 'en',
|
||||
place_name_en: 'Berlin, New Jersey, United States',
|
||||
text: 'Berlin',
|
||||
language: 'en',
|
||||
place_name: 'Berlin, New Jersey, United States',
|
||||
bbox: [-74.974491, 39.70904, -74.878605, 39.809363],
|
||||
center: [-74.929456, 39.791432],
|
||||
geometry: {
|
||||
type: 'Point',
|
||||
coordinates: [-74.929456, 39.791432],
|
||||
},
|
||||
context: [
|
||||
{
|
||||
id: 'district.3016428',
|
||||
mapbox_id: 'dXJuOm1ieHBsYzpMZ2Jz',
|
||||
wikidata: 'Q497810',
|
||||
text_en: 'Camden County',
|
||||
language_en: 'en',
|
||||
text: 'Camden County',
|
||||
language: 'en',
|
||||
},
|
||||
{
|
||||
id: 'region.156908',
|
||||
mapbox_id: 'dXJuOm1ieHBsYzpBbVRz',
|
||||
wikidata: 'Q1408',
|
||||
short_code: 'US-NJ',
|
||||
text_en: 'New Jersey',
|
||||
language_en: 'en',
|
||||
text: 'New Jersey',
|
||||
language: 'en',
|
||||
},
|
||||
{
|
||||
id: 'country.8940',
|
||||
mapbox_id: 'dXJuOm1ieHBsYzpJdXc',
|
||||
wikidata: 'Q30',
|
||||
short_code: 'us',
|
||||
text_en: 'United States',
|
||||
language_en: 'en',
|
||||
text: 'United States',
|
||||
language: 'en',
|
||||
},
|
||||
],
|
||||
},
|
||||
{
|
||||
id: 'place.26036460',
|
||||
type: 'Feature',
|
||||
place_type: ['place'],
|
||||
relevance: 1,
|
||||
properties: {
|
||||
mapbox_id: 'dXJuOm1ieHBsYzpBWTFJN0E',
|
||||
},
|
||||
text_en: 'Berlin',
|
||||
language_en: 'en',
|
||||
place_name_en: 'Berlin, Connecticut, United States',
|
||||
text: 'Berlin',
|
||||
language: 'en',
|
||||
place_name: 'Berlin, Connecticut, United States',
|
||||
bbox: [-72.840244, 41.554195, -72.712381, 41.652706],
|
||||
center: [-72.73954, 41.628325],
|
||||
geometry: {
|
||||
type: 'Point',
|
||||
coordinates: [-72.73954, 41.628325],
|
||||
},
|
||||
context: [
|
||||
{
|
||||
id: 'district.10020588',
|
||||
mapbox_id: 'dXJuOm1ieHBsYzptT2Jz',
|
||||
wikidata: 'Q54236',
|
||||
text_en: 'Hartford County',
|
||||
language_en: 'en',
|
||||
text: 'Hartford County',
|
||||
language: 'en',
|
||||
},
|
||||
{
|
||||
id: 'region.361708',
|
||||
mapbox_id: 'dXJuOm1ieHBsYzpCWVRz',
|
||||
wikidata: 'Q779',
|
||||
short_code: 'US-CT',
|
||||
text_en: 'Connecticut',
|
||||
language_en: 'en',
|
||||
text: 'Connecticut',
|
||||
language: 'en',
|
||||
},
|
||||
{
|
||||
id: 'country.8940',
|
||||
mapbox_id: 'dXJuOm1ieHBsYzpJdXc',
|
||||
wikidata: 'Q30',
|
||||
short_code: 'us',
|
||||
text_en: 'United States',
|
||||
language_en: 'en',
|
||||
text: 'United States',
|
||||
language: 'en',
|
||||
},
|
||||
],
|
||||
},
|
||||
{
|
||||
id: 'place.26118380',
|
||||
type: 'Feature',
|
||||
place_type: ['place'],
|
||||
relevance: 1,
|
||||
properties: {
|
||||
mapbox_id: 'dXJuOm1ieHBsYzpBWTZJN0E',
|
||||
wikidata: 'Q2219095',
|
||||
},
|
||||
text_en: 'Berlin Heights',
|
||||
language_en: 'en',
|
||||
place_name_en: 'Berlin Heights, Ohio, United States',
|
||||
text: 'Berlin Heights',
|
||||
language: 'en',
|
||||
place_name: 'Berlin Heights, Ohio, United States',
|
||||
bbox: [-82.54353, 41.285345, -82.382139, 41.364821],
|
||||
center: [-82.493433, 41.325154],
|
||||
geometry: {
|
||||
type: 'Point',
|
||||
coordinates: [-82.493433, 41.325154],
|
||||
},
|
||||
context: [
|
||||
{
|
||||
id: 'district.7235308',
|
||||
mapbox_id: 'dXJuOm1ieHBsYzpibWJz',
|
||||
wikidata: 'Q111310',
|
||||
text_en: 'Erie County',
|
||||
language_en: 'en',
|
||||
text: 'Erie County',
|
||||
language: 'en',
|
||||
},
|
||||
{
|
||||
id: 'region.140524',
|
||||
mapbox_id: 'dXJuOm1ieHBsYzpBaVRz',
|
||||
wikidata: 'Q1397',
|
||||
short_code: 'US-OH',
|
||||
text_en: 'Ohio',
|
||||
language_en: 'en',
|
||||
text: 'Ohio',
|
||||
language: 'en',
|
||||
},
|
||||
{
|
||||
id: 'country.8940',
|
||||
mapbox_id: 'dXJuOm1ieHBsYzpJdXc',
|
||||
wikidata: 'Q30',
|
||||
short_code: 'us',
|
||||
text_en: 'United States',
|
||||
language_en: 'en',
|
||||
text: 'United States',
|
||||
language: 'en',
|
||||
},
|
||||
],
|
||||
},
|
||||
],
|
||||
attribution:
|
||||
'NOTICE: © 2025 Mapbox and its suppliers. All rights reserved. Use of this data is subject to the Mapbox Terms of Service (https://www.mapbox.com/about/maps/). This response and the information it contains may not be retained.',
|
||||
}
|
||||
742
backend/test/fetchMock/berlinGermany.ts
Normal file
742
backend/test/fetchMock/berlinGermany.ts
Normal file
@ -0,0 +1,742 @@
|
||||
export const berlinGermany = {
|
||||
type: 'FeatureCollection',
|
||||
query: ['berlin', 'germany'],
|
||||
features: [
|
||||
{
|
||||
id: 'place.115770',
|
||||
type: 'Feature',
|
||||
place_type: ['region', 'place'],
|
||||
relevance: 1,
|
||||
properties: {
|
||||
mapbox_id: 'dXJuOm1ieHBsYzpBY1E2',
|
||||
wikidata: 'Q64',
|
||||
short_code: 'DE-BE',
|
||||
},
|
||||
text_en: 'Berlin',
|
||||
language_en: 'en',
|
||||
place_name_en: 'Berlin, Germany',
|
||||
text: 'Berlin',
|
||||
language: 'en',
|
||||
place_name: 'Berlin, Germany',
|
||||
text_de: 'Berlin',
|
||||
language_de: 'de',
|
||||
place_name_de: 'Berlin, Deutschland',
|
||||
text_fr: 'Berlin',
|
||||
language_fr: 'fr',
|
||||
place_name_fr: 'Berlin, Allemagne',
|
||||
text_nl: 'Berlijn',
|
||||
language_nl: 'nl',
|
||||
place_name_nl: 'Berlijn, Duitsland',
|
||||
text_it: 'Berlino',
|
||||
language_it: 'it',
|
||||
place_name_it: 'Berlino, Germania',
|
||||
text_es: 'Berlín',
|
||||
language_es: 'es',
|
||||
place_name_es: 'Berlín, Alemania',
|
||||
text_pt: 'Berlim',
|
||||
language_pt: 'pt',
|
||||
place_name_pt: 'Berlim, Alemanha',
|
||||
text_pl: 'Berlin',
|
||||
language_pl: 'pl',
|
||||
place_name_pl: 'Berlin, Niemcy',
|
||||
text_ru: 'Берлин',
|
||||
language_ru: 'ru',
|
||||
place_name_ru: 'Берлин, Германия',
|
||||
bbox: [13.08836, 52.338261, 13.760906, 52.675502],
|
||||
center: [13.38886, 52.517037],
|
||||
geometry: {
|
||||
type: 'Point',
|
||||
coordinates: [13.38886, 52.517037],
|
||||
},
|
||||
context: [
|
||||
{
|
||||
id: 'country.8762',
|
||||
mapbox_id: 'dXJuOm1ieHBsYzpJam8',
|
||||
wikidata: 'Q183',
|
||||
short_code: 'de',
|
||||
text_en: 'Germany',
|
||||
language_en: 'en',
|
||||
text: 'Germany',
|
||||
language: 'en',
|
||||
text_de: 'Deutschland',
|
||||
language_de: 'de',
|
||||
text_fr: 'Allemagne',
|
||||
language_fr: 'fr',
|
||||
text_nl: 'Duitsland',
|
||||
language_nl: 'nl',
|
||||
text_it: 'Germania',
|
||||
language_it: 'it',
|
||||
text_es: 'Alemania',
|
||||
language_es: 'es',
|
||||
text_pt: 'Alemanha',
|
||||
language_pt: 'pt',
|
||||
text_pl: 'Niemcy',
|
||||
language_pl: 'pl',
|
||||
text_ru: 'Германия',
|
||||
language_ru: 'ru',
|
||||
},
|
||||
],
|
||||
},
|
||||
{
|
||||
id: 'address.1882189389165686',
|
||||
type: 'Feature',
|
||||
place_type: ['address'],
|
||||
relevance: 1,
|
||||
properties: {
|
||||
accuracy: 'street',
|
||||
mapbox_id: 'dXJuOm1ieGFkci1zdHI6Y2EyZjMxNmMtZjBhMy00ZmYwLWEwODgtZDYxMzg4ZmUwNTVh',
|
||||
},
|
||||
text_en: 'Berlin',
|
||||
place_name_en: 'Berlin, 24848 Klein Bennebek, Germany',
|
||||
text: 'Berlin',
|
||||
place_name: 'Berlin, 24848 Klein Bennebek, Germany',
|
||||
text_de: 'Berlin',
|
||||
place_name_de: 'Berlin, 24848 Klein Bennebek, Deutschland',
|
||||
text_fr: 'Berlin',
|
||||
place_name_fr: 'Berlin, 24848 Klein Bennebek, Allemagne',
|
||||
text_nl: 'Berlin',
|
||||
place_name_nl: 'Berlin, 24848 Klein Bennebek, Duitsland',
|
||||
text_it: 'Berlin',
|
||||
place_name_it: 'Berlin, 24848 Klein Bennebek, Germania',
|
||||
text_es: 'Berlin',
|
||||
place_name_es: 'Berlin, 24848 Klein Bennebek, Alemania',
|
||||
text_pt: 'Berlin',
|
||||
place_name_pt: 'Berlin, 24848 Klein Bennebek, Alemanha',
|
||||
text_pl: 'Berlin',
|
||||
place_name_pl: 'Berlin, 24848 Klein Bennebek, Niemcy',
|
||||
text_ru: 'Berlin',
|
||||
place_name_ru: 'Berlin, 24848 Клайн-Беннебек, Германия',
|
||||
center: [9.422626, 54.404248],
|
||||
geometry: {
|
||||
type: 'Point',
|
||||
coordinates: [9.422626, 54.404248],
|
||||
},
|
||||
context: [
|
||||
{
|
||||
id: 'postcode.13266490',
|
||||
mapbox_id: 'dXJuOm1ieHBsYzp5bTQ2',
|
||||
text_en: '24848',
|
||||
text: '24848',
|
||||
text_de: '24848',
|
||||
text_fr: '24848',
|
||||
text_nl: '24848',
|
||||
text_it: '24848',
|
||||
text_es: '24848',
|
||||
text_pt: '24848',
|
||||
text_pl: '24848',
|
||||
text_ru: '24848',
|
||||
},
|
||||
{
|
||||
id: 'place.40798266',
|
||||
mapbox_id: 'dXJuOm1ieHBsYzpBbTZJT2c',
|
||||
wikidata: 'Q556639',
|
||||
text_en: 'Klein Bennebek',
|
||||
language_en: 'en',
|
||||
text: 'Klein Bennebek',
|
||||
language: 'en',
|
||||
text_de: 'Klein Bennebek',
|
||||
language_de: 'de',
|
||||
text_fr: 'Klein Bennebek',
|
||||
language_fr: 'fr',
|
||||
text_nl: 'Klein Bennebek',
|
||||
language_nl: 'nl',
|
||||
text_it: 'Klein Bennebek',
|
||||
language_it: 'it',
|
||||
text_es: 'Klein Bennebek',
|
||||
language_es: 'es',
|
||||
text_pt: 'Klein Bennebek',
|
||||
language_pt: 'pt',
|
||||
text_pl: 'Klein Bennebek',
|
||||
language_pl: 'pl',
|
||||
text_ru: 'Клайн-Беннебек',
|
||||
language_ru: 'ru',
|
||||
},
|
||||
{
|
||||
id: 'district.1885754',
|
||||
mapbox_id: 'dXJuOm1ieHBsYzpITVk2',
|
||||
wikidata: 'Q2941',
|
||||
text_en: 'Distrito de Schleswig-Flensburg',
|
||||
language_en: 'es',
|
||||
text: 'Distrito de Schleswig-Flensburg',
|
||||
language: 'es',
|
||||
text_de: 'Kreis Schleswig-Flensburg',
|
||||
language_de: 'de',
|
||||
text_fr: 'Kreis Schleswig-Flensburg',
|
||||
text_nl: 'Kreis Schleswig-Flensburg',
|
||||
text_it: 'Kreis Schleswig-Flensburg',
|
||||
text_es: 'Distrito de Schleswig-Flensburg',
|
||||
language_es: 'es',
|
||||
text_pt: 'Distrito de Schleswig-Flensburg',
|
||||
language_pt: 'es',
|
||||
text_pl: 'Powiat Schleswig-Flensburg',
|
||||
language_pl: 'pl',
|
||||
text_ru: 'Шлезвиг-Фленсбург',
|
||||
language_ru: 'ru',
|
||||
},
|
||||
{
|
||||
id: 'region.17466',
|
||||
mapbox_id: 'dXJuOm1ieHBsYzpSRG8',
|
||||
wikidata: 'Q1194',
|
||||
short_code: 'DE-SH',
|
||||
text_en: 'Schleswig-Holstein',
|
||||
language_en: 'en',
|
||||
text: 'Schleswig-Holstein',
|
||||
language: 'en',
|
||||
text_de: 'Schleswig-Holstein',
|
||||
language_de: 'de',
|
||||
text_fr: 'Schleswig-Holstein',
|
||||
language_fr: 'fr',
|
||||
text_nl: 'Sleeswijk-Holstein',
|
||||
language_nl: 'nl',
|
||||
text_it: 'Schleswig-Holstein',
|
||||
language_it: 'it',
|
||||
text_es: 'Schleswig-Holstein',
|
||||
language_es: 'es',
|
||||
text_pt: 'Schleswig-Holstein',
|
||||
language_pt: 'pt',
|
||||
text_pl: 'Szlezwik-Holsztyn',
|
||||
language_pl: 'pl',
|
||||
text_ru: 'Шлезвиг-Гольштейн',
|
||||
language_ru: 'ru',
|
||||
},
|
||||
{
|
||||
id: 'country.8762',
|
||||
mapbox_id: 'dXJuOm1ieHBsYzpJam8',
|
||||
wikidata: 'Q183',
|
||||
short_code: 'de',
|
||||
text_en: 'Germany',
|
||||
language_en: 'en',
|
||||
text: 'Germany',
|
||||
language: 'en',
|
||||
text_de: 'Deutschland',
|
||||
language_de: 'de',
|
||||
text_fr: 'Allemagne',
|
||||
language_fr: 'fr',
|
||||
text_nl: 'Duitsland',
|
||||
language_nl: 'nl',
|
||||
text_it: 'Germania',
|
||||
language_it: 'it',
|
||||
text_es: 'Alemania',
|
||||
language_es: 'es',
|
||||
text_pt: 'Alemanha',
|
||||
language_pt: 'pt',
|
||||
text_pl: 'Niemcy',
|
||||
language_pl: 'pl',
|
||||
text_ru: 'Германия',
|
||||
language_ru: 'ru',
|
||||
},
|
||||
],
|
||||
},
|
||||
{
|
||||
id: 'address.7517935193989996',
|
||||
type: 'Feature',
|
||||
place_type: ['address'],
|
||||
relevance: 0.958333,
|
||||
properties: {
|
||||
accuracy: 'street',
|
||||
mapbox_id: 'dXJuOm1ieGFkci1zdHI6ZTY0MTBlYTgtNzBhZS00MmViLTk0ZWItNThlM2U4YmUzNDcz',
|
||||
},
|
||||
text_en: 'Barlin',
|
||||
place_name_en: 'Barlin, 17159 Dargun, Germany',
|
||||
text: 'Barlin',
|
||||
place_name: 'Barlin, 17159 Dargun, Germany',
|
||||
text_de: 'Barlin',
|
||||
place_name_de: 'Barlin, 17159 Dargun, Deutschland',
|
||||
text_fr: 'Barlin',
|
||||
place_name_fr: 'Barlin, 17159 Dargun, Allemagne',
|
||||
text_nl: 'Barlin',
|
||||
place_name_nl: 'Barlin, 17159 Dargun, Duitsland',
|
||||
text_it: 'Barlin',
|
||||
place_name_it: 'Barlin, 17159 Dargun, Germania',
|
||||
text_es: 'Barlin',
|
||||
place_name_es: 'Barlin, 17159 Dargun, Alemania',
|
||||
text_pt: 'Barlin',
|
||||
place_name_pt: 'Barlin, 17159 Dargun, Alemanha',
|
||||
text_pl: 'Barlin',
|
||||
place_name_pl: 'Barlin, 17159 Dargun, Niemcy',
|
||||
text_ru: 'Barlin',
|
||||
place_name_ru: 'Barlin, 17159 Даргун, Германия',
|
||||
center: [12.883232, 53.922631],
|
||||
geometry: {
|
||||
type: 'Point',
|
||||
coordinates: [12.883232, 53.922631],
|
||||
},
|
||||
context: [
|
||||
{
|
||||
id: 'postcode.8072762',
|
||||
mapbox_id: 'dXJuOm1ieHBsYzpleTQ2',
|
||||
text_en: '17159',
|
||||
text: '17159',
|
||||
text_de: '17159',
|
||||
text_fr: '17159',
|
||||
text_nl: '17159',
|
||||
text_it: '17159',
|
||||
text_es: '17159',
|
||||
text_pt: '17159',
|
||||
text_pl: '17159',
|
||||
text_ru: '17159',
|
||||
},
|
||||
{
|
||||
id: 'locality.19302970',
|
||||
mapbox_id: 'dXJuOm1ieHBsYzpBU2FLT2c',
|
||||
text_en: 'Barlin',
|
||||
language_en: 'de',
|
||||
text: 'Barlin',
|
||||
language: 'de',
|
||||
text_de: 'Barlin',
|
||||
language_de: 'de',
|
||||
text_fr: 'Barlin',
|
||||
text_nl: 'Barlin',
|
||||
text_it: 'Barlin',
|
||||
text_es: 'Barlin',
|
||||
text_pt: 'Barlin',
|
||||
text_pl: 'Barlin',
|
||||
text_ru: 'Barlin',
|
||||
},
|
||||
{
|
||||
id: 'place.14256186',
|
||||
mapbox_id: 'dXJuOm1ieHBsYzoyWWc2',
|
||||
wikidata: 'Q50959',
|
||||
text_en: 'Dargun',
|
||||
language_en: 'en',
|
||||
text: 'Dargun',
|
||||
language: 'en',
|
||||
text_de: 'Dargun',
|
||||
language_de: 'de',
|
||||
text_fr: 'Dargun',
|
||||
language_fr: 'fr',
|
||||
text_nl: 'Dargun',
|
||||
language_nl: 'nl',
|
||||
text_it: 'Dargun',
|
||||
language_it: 'it',
|
||||
text_es: 'Dargun',
|
||||
language_es: 'es',
|
||||
text_pt: 'Dargun',
|
||||
language_pt: 'pt',
|
||||
text_pl: 'Dargun',
|
||||
language_pl: 'pl',
|
||||
text_ru: 'Даргун',
|
||||
language_ru: 'ru',
|
||||
},
|
||||
{
|
||||
id: 'district.1214010',
|
||||
mapbox_id: 'dXJuOm1ieHBsYzpFb1k2',
|
||||
wikidata: 'Q2902',
|
||||
text_en: 'Mecklenburgische Seenplatte District',
|
||||
language_en: 'en',
|
||||
text: 'Mecklenburgische Seenplatte District',
|
||||
language: 'en',
|
||||
text_de: 'Kreis Mecklenburgische Seenplatte',
|
||||
language_de: 'de',
|
||||
text_fr: 'Plateau des lacs mecklembourgeois',
|
||||
language_fr: 'fr',
|
||||
text_nl: 'Landkreis Mecklenburgische Seenplatte',
|
||||
language_nl: 'nl',
|
||||
text_it: 'circondario della Terra dei Laghi del Meclemburgo',
|
||||
language_it: 'it',
|
||||
text_es: 'Lagos de Mecklemburgo',
|
||||
language_es: 'es',
|
||||
text_pt: 'Lagos de Mecklemburgo',
|
||||
language_pt: 'es',
|
||||
text_pl: 'Landkreis Mecklenburgische Seenplatte',
|
||||
language_pl: 'pl',
|
||||
text_ru: 'Мекленбург-Зеенплате',
|
||||
language_ru: 'ru',
|
||||
},
|
||||
{
|
||||
id: 'region.25658',
|
||||
mapbox_id: 'dXJuOm1ieHBsYzpaRG8',
|
||||
wikidata: 'Q1196',
|
||||
short_code: 'DE-MV',
|
||||
text_en: 'Mecklenburg-Western Pomerania',
|
||||
language_en: 'en',
|
||||
text: 'Mecklenburg-Western Pomerania',
|
||||
language: 'en',
|
||||
text_de: 'Mecklenburg-Vorpommern',
|
||||
language_de: 'de',
|
||||
text_fr: 'Mecklembourg-Poméranie-Occidentale',
|
||||
language_fr: 'fr',
|
||||
text_nl: 'Mecklenburg-Voor-Pommeren',
|
||||
language_nl: 'nl',
|
||||
text_it: 'Meclemburgo-Pomerania Anteriore',
|
||||
language_it: 'it',
|
||||
text_es: 'Mecklemburgo-Pomerania Occidental',
|
||||
language_es: 'es',
|
||||
text_pt: 'Mecklemburgo-Pomerânia Ocidental',
|
||||
language_pt: 'pt',
|
||||
text_pl: 'Meklemburgia-Pomorze Przednie',
|
||||
language_pl: 'pl',
|
||||
text_ru: 'Мекленбург — Передняя Померания',
|
||||
language_ru: 'ru',
|
||||
},
|
||||
{
|
||||
id: 'country.8762',
|
||||
mapbox_id: 'dXJuOm1ieHBsYzpJam8',
|
||||
wikidata: 'Q183',
|
||||
short_code: 'de',
|
||||
text_en: 'Germany',
|
||||
language_en: 'en',
|
||||
text: 'Germany',
|
||||
language: 'en',
|
||||
text_de: 'Deutschland',
|
||||
language_de: 'de',
|
||||
text_fr: 'Allemagne',
|
||||
language_fr: 'fr',
|
||||
text_nl: 'Duitsland',
|
||||
language_nl: 'nl',
|
||||
text_it: 'Germania',
|
||||
language_it: 'it',
|
||||
text_es: 'Alemania',
|
||||
language_es: 'es',
|
||||
text_pt: 'Alemanha',
|
||||
language_pt: 'pt',
|
||||
text_pl: 'Niemcy',
|
||||
language_pl: 'pl',
|
||||
text_ru: 'Германия',
|
||||
language_ru: 'ru',
|
||||
},
|
||||
],
|
||||
},
|
||||
{
|
||||
id: 'address.4752874377841546',
|
||||
type: 'Feature',
|
||||
place_type: ['address'],
|
||||
relevance: 0.958333,
|
||||
properties: {
|
||||
accuracy: 'street',
|
||||
mapbox_id: 'dXJuOm1ieGFkci1zdHI6ODljMjJmMWItNTUyMy00ODIwLWFiNDYtNjU0YTRiZTc4NzJm',
|
||||
},
|
||||
text_en: 'Ferliner Straße',
|
||||
place_name_en: 'Ferliner Straße, 84332 Hebertsfelden, Germany',
|
||||
text: 'Ferliner Straße',
|
||||
place_name: 'Ferliner Straße, 84332 Hebertsfelden, Germany',
|
||||
text_de: 'Ferliner Straße',
|
||||
place_name_de: 'Ferliner Straße, 84332 Hebertsfelden, Deutschland',
|
||||
text_fr: 'Ferliner Straße',
|
||||
place_name_fr: 'Ferliner Straße, 84332 Hebertsfelden, Allemagne',
|
||||
text_nl: 'Ferliner Straße',
|
||||
place_name_nl: 'Ferliner Straße, 84332 Hebertsfelden, Duitsland',
|
||||
text_it: 'Ferliner Straße',
|
||||
place_name_it: 'Ferliner Straße, 84332 Hebertsfelden, Germania',
|
||||
text_es: 'Ferliner Straße',
|
||||
place_name_es: 'Ferliner Straße, 84332 Hebertsfelden, Alemania',
|
||||
text_pt: 'Ferliner Straße',
|
||||
place_name_pt: 'Ferliner Straße, 84332 Hebertsfelden, Alemanha',
|
||||
text_pl: 'Ferliner Straße',
|
||||
place_name_pl: 'Ferliner Straße, 84332 Hebertsfelden, Niemcy',
|
||||
text_ru: 'Ferliner Straße',
|
||||
place_name_ru: 'Ferliner Straße, 84332 Хебертсфельден, Германия',
|
||||
center: [12.81704, 48.43586],
|
||||
geometry: {
|
||||
type: 'Point',
|
||||
coordinates: [12.81704, 48.43586],
|
||||
},
|
||||
context: [
|
||||
{
|
||||
id: 'postcode.51138106',
|
||||
mapbox_id: 'dXJuOm1ieHBsYzpBd3hPT2c',
|
||||
text_en: '84332',
|
||||
text: '84332',
|
||||
text_de: '84332',
|
||||
text_fr: '84332',
|
||||
text_nl: '84332',
|
||||
text_it: '84332',
|
||||
text_es: '84332',
|
||||
text_pt: '84332',
|
||||
text_pl: '84332',
|
||||
text_ru: '84332',
|
||||
},
|
||||
{
|
||||
id: 'locality.267905594',
|
||||
mapbox_id: 'dXJuOm1ieHBsYzpEL2ZxT2c',
|
||||
text_en: 'Prienbach',
|
||||
language_en: 'de',
|
||||
text: 'Prienbach',
|
||||
language: 'de',
|
||||
text_de: 'Prienbach',
|
||||
language_de: 'de',
|
||||
text_fr: 'Prienbach',
|
||||
text_nl: 'Prienbach',
|
||||
text_it: 'Prienbach',
|
||||
text_es: 'Prienbach',
|
||||
text_pt: 'Prienbach',
|
||||
text_pl: 'Prienbach',
|
||||
text_ru: 'Prienbach',
|
||||
},
|
||||
{
|
||||
id: 'place.31664186',
|
||||
mapbox_id: 'dXJuOm1ieHBsYzpBZU1vT2c',
|
||||
wikidata: 'Q553780',
|
||||
text_en: 'Hebertsfelden',
|
||||
language_en: 'en',
|
||||
text: 'Hebertsfelden',
|
||||
language: 'en',
|
||||
text_de: 'Hebertsfelden',
|
||||
language_de: 'de',
|
||||
text_fr: 'Hebertsfelden',
|
||||
language_fr: 'fr',
|
||||
text_nl: 'Hebertsfelden',
|
||||
language_nl: 'nl',
|
||||
text_it: 'Hebertsfelden',
|
||||
language_it: 'it',
|
||||
text_es: 'Hebertsfelden',
|
||||
language_es: 'es',
|
||||
text_pt: 'Hebertsfelden',
|
||||
language_pt: 'pt',
|
||||
text_pl: 'Hebertsfelden',
|
||||
language_pl: 'pl',
|
||||
text_ru: 'Хебертсфельден',
|
||||
language_ru: 'ru',
|
||||
},
|
||||
{
|
||||
id: 'district.1795642',
|
||||
mapbox_id: 'dXJuOm1ieHBsYzpHMlk2',
|
||||
wikidata: 'Q10477',
|
||||
text_en: 'arrondissement de Rottal-Inn',
|
||||
language_en: 'fr',
|
||||
text: 'arrondissement de Rottal-Inn',
|
||||
language: 'fr',
|
||||
text_de: 'Kreis Rottal-Inn',
|
||||
language_de: 'de',
|
||||
text_fr: 'arrondissement de Rottal-Inn',
|
||||
language_fr: 'fr',
|
||||
text_nl: 'arrondissement de Rottal-Inn',
|
||||
language_nl: 'fr',
|
||||
text_it: 'Districtul Rottal-Inn',
|
||||
language_it: 'ro',
|
||||
text_es: 'arrondissement de Rottal-Inn',
|
||||
language_es: 'fr',
|
||||
text_pt: 'Kreis Rottal-Inn',
|
||||
text_pl: 'Powiat Rottal-Inn',
|
||||
language_pl: 'pl',
|
||||
text_ru: 'Ротталь-Инн',
|
||||
language_ru: 'ru',
|
||||
},
|
||||
{
|
||||
id: 'region.123962',
|
||||
mapbox_id: 'dXJuOm1ieHBsYzpBZVE2',
|
||||
wikidata: 'Q980',
|
||||
short_code: 'DE-BY',
|
||||
text_en: 'Bavaria',
|
||||
language_en: 'en',
|
||||
text: 'Bavaria',
|
||||
language: 'en',
|
||||
text_de: 'Bayern',
|
||||
language_de: 'de',
|
||||
text_fr: 'Bavière',
|
||||
language_fr: 'fr',
|
||||
text_nl: 'Beieren',
|
||||
language_nl: 'nl',
|
||||
text_it: 'Baviera',
|
||||
language_it: 'it',
|
||||
text_es: 'Baviera',
|
||||
language_es: 'es',
|
||||
text_pt: 'Baviera',
|
||||
language_pt: 'pt',
|
||||
text_pl: 'Bawaria',
|
||||
language_pl: 'pl',
|
||||
text_ru: 'Бавария',
|
||||
language_ru: 'ru',
|
||||
},
|
||||
{
|
||||
id: 'country.8762',
|
||||
mapbox_id: 'dXJuOm1ieHBsYzpJam8',
|
||||
wikidata: 'Q183',
|
||||
short_code: 'de',
|
||||
text_en: 'Germany',
|
||||
language_en: 'en',
|
||||
text: 'Germany',
|
||||
language: 'en',
|
||||
text_de: 'Deutschland',
|
||||
language_de: 'de',
|
||||
text_fr: 'Allemagne',
|
||||
language_fr: 'fr',
|
||||
text_nl: 'Duitsland',
|
||||
language_nl: 'nl',
|
||||
text_it: 'Germania',
|
||||
language_it: 'it',
|
||||
text_es: 'Alemania',
|
||||
language_es: 'es',
|
||||
text_pt: 'Alemanha',
|
||||
language_pt: 'pt',
|
||||
text_pl: 'Niemcy',
|
||||
language_pl: 'pl',
|
||||
text_ru: 'Германия',
|
||||
language_ru: 'ru',
|
||||
},
|
||||
],
|
||||
},
|
||||
{
|
||||
id: 'address.7246440478456020',
|
||||
type: 'Feature',
|
||||
place_type: ['address'],
|
||||
relevance: 0.958333,
|
||||
properties: {
|
||||
accuracy: 'street',
|
||||
mapbox_id: 'dXJuOm1ieGFkci1zdHI6MTUyNjZlZjItOTIxZC00OTc0LWIyZmMtOWM2NTQyOWE3MDEx',
|
||||
},
|
||||
text_en: 'Erlin',
|
||||
place_name_en: 'Erlin, 74545 Michelfeld, Germany',
|
||||
text: 'Erlin',
|
||||
place_name: 'Erlin, 74545 Michelfeld, Germany',
|
||||
text_de: 'Erlin',
|
||||
place_name_de: 'Erlin, 74545 Michelfeld, Deutschland',
|
||||
text_fr: 'Erlin',
|
||||
place_name_fr: 'Erlin, 74545 Michelfeld, Allemagne',
|
||||
text_nl: 'Erlin',
|
||||
place_name_nl: 'Erlin, 74545 Michelfeld, Duitsland',
|
||||
text_it: 'Erlin',
|
||||
place_name_it: 'Erlin, 74545 Michelfeld, Germania',
|
||||
text_es: 'Erlin',
|
||||
place_name_es: 'Erlin, 74545 Michelfeld, Alemania',
|
||||
text_pt: 'Erlin',
|
||||
place_name_pt: 'Erlin, 74545 Michelfeld, Alemanha',
|
||||
text_pl: 'Erlin',
|
||||
place_name_pl: 'Erlin, 74545 Michelfeld, Niemcy',
|
||||
text_ru: 'Erlin',
|
||||
place_name_ru: 'Erlin, 74545 Михельфельд, Германия',
|
||||
center: [9.658099, 49.105636],
|
||||
geometry: {
|
||||
type: 'Point',
|
||||
coordinates: [9.658099, 49.105636],
|
||||
},
|
||||
context: [
|
||||
{
|
||||
id: 'postcode.43716154',
|
||||
mapbox_id: 'dXJuOm1ieHBsYzpBcHNPT2c',
|
||||
text_en: '74545',
|
||||
text: '74545',
|
||||
text_de: '74545',
|
||||
text_fr: '74545',
|
||||
text_nl: '74545',
|
||||
text_it: '74545',
|
||||
text_es: '74545',
|
||||
text_pt: '74545',
|
||||
text_pl: '74545',
|
||||
text_ru: '74545',
|
||||
},
|
||||
{
|
||||
id: 'locality.166046266',
|
||||
mapbox_id: 'dXJuOm1ieHBsYzpDZVdxT2c',
|
||||
text_en: 'Kiesberg',
|
||||
language_en: 'de',
|
||||
text: 'Kiesberg',
|
||||
language: 'de',
|
||||
text_de: 'Kiesberg',
|
||||
language_de: 'de',
|
||||
text_fr: 'Kiesberg',
|
||||
text_nl: 'Kiesberg',
|
||||
text_it: 'Kiesberg',
|
||||
text_es: 'Kiesberg',
|
||||
text_pt: 'Kiesberg',
|
||||
text_pl: 'Kiesberg',
|
||||
text_ru: 'Kiesberg',
|
||||
},
|
||||
{
|
||||
id: 'place.50980922',
|
||||
mapbox_id: 'dXJuOm1ieHBsYzpBd25vT2c',
|
||||
wikidata: 'Q81048',
|
||||
text_en: 'Michelfeld',
|
||||
language_en: 'en',
|
||||
text: 'Michelfeld',
|
||||
language: 'en',
|
||||
text_de: 'Michelfeld',
|
||||
language_de: 'de',
|
||||
text_fr: 'Michelfeld',
|
||||
language_fr: 'fr',
|
||||
text_nl: 'Michelfeld',
|
||||
language_nl: 'nl',
|
||||
text_it: 'Michelfeld',
|
||||
language_it: 'it',
|
||||
text_es: 'Michelfeld',
|
||||
language_es: 'es',
|
||||
text_pt: 'Michelfeld',
|
||||
language_pt: 'pt',
|
||||
text_pl: 'Michelfeld',
|
||||
language_pl: 'pl',
|
||||
text_ru: 'Михельфельд',
|
||||
language_ru: 'ru',
|
||||
},
|
||||
{
|
||||
id: 'district.1902138',
|
||||
mapbox_id: 'dXJuOm1ieHBsYzpIUVk2',
|
||||
wikidata: 'Q8520',
|
||||
text_en: 'Landkreis Schwäbisch Hall',
|
||||
language_en: 'en',
|
||||
text: 'Landkreis Schwäbisch Hall',
|
||||
language: 'en',
|
||||
text_de: 'Kreis Schwäbisch Hall',
|
||||
language_de: 'de',
|
||||
text_fr: 'arrondissement de Schwäbisch Hall',
|
||||
language_fr: 'fr',
|
||||
text_nl: 'arrondissement de Schwäbisch Hall',
|
||||
language_nl: 'fr',
|
||||
text_it: 'circondario di Schwäbisch Hall',
|
||||
language_it: 'it',
|
||||
text_es: 'arrondissement de Schwäbisch Hall',
|
||||
language_es: 'fr',
|
||||
text_pt: 'circondario di Schwäbisch Hall',
|
||||
language_pt: 'it',
|
||||
text_pl: 'Districtul Schwäbisch Hall',
|
||||
language_pl: 'ro',
|
||||
text_ru: 'Швебиш-Халль',
|
||||
language_ru: 'ru',
|
||||
},
|
||||
{
|
||||
id: 'region.132154',
|
||||
mapbox_id: 'dXJuOm1ieHBsYzpBZ1E2',
|
||||
wikidata: 'Q985',
|
||||
short_code: 'DE-BW',
|
||||
text_en: 'Baden-Württemberg',
|
||||
language_en: 'en',
|
||||
text: 'Baden-Württemberg',
|
||||
language: 'en',
|
||||
text_de: 'Baden-Württemberg',
|
||||
language_de: 'de',
|
||||
text_fr: 'Bade-Wurtemberg',
|
||||
language_fr: 'fr',
|
||||
text_nl: 'Baden-Württemberg',
|
||||
language_nl: 'nl',
|
||||
text_it: 'Baden-Württemberg',
|
||||
language_it: 'it',
|
||||
text_es: 'Baden-Wurtemberg',
|
||||
language_es: 'es',
|
||||
text_pt: 'Baden-Württemberg',
|
||||
language_pt: 'pt',
|
||||
text_pl: 'Badenia-Wirtembergia',
|
||||
language_pl: 'pl',
|
||||
text_ru: 'Баден-Вюртемберг',
|
||||
language_ru: 'ru',
|
||||
},
|
||||
{
|
||||
id: 'country.8762',
|
||||
mapbox_id: 'dXJuOm1ieHBsYzpJam8',
|
||||
wikidata: 'Q183',
|
||||
short_code: 'de',
|
||||
text_en: 'Germany',
|
||||
language_en: 'en',
|
||||
text: 'Germany',
|
||||
language: 'en',
|
||||
text_de: 'Deutschland',
|
||||
language_de: 'de',
|
||||
text_fr: 'Allemagne',
|
||||
language_fr: 'fr',
|
||||
text_nl: 'Duitsland',
|
||||
language_nl: 'nl',
|
||||
text_it: 'Germania',
|
||||
language_it: 'it',
|
||||
text_es: 'Alemania',
|
||||
language_es: 'es',
|
||||
text_pt: 'Alemanha',
|
||||
language_pt: 'pt',
|
||||
text_pl: 'Niemcy',
|
||||
language_pl: 'pl',
|
||||
text_ru: 'Германия',
|
||||
language_ru: 'ru',
|
||||
},
|
||||
],
|
||||
},
|
||||
],
|
||||
attribution:
|
||||
'NOTICE: © 2025 Mapbox and its suppliers. All rights reserved. Use of this data is subject to the Mapbox Terms of Service (https://www.mapbox.com/about/maps/). This response and the information it contains may not be retained.',
|
||||
}
|
||||
7
backend/test/fetchMock/empty.ts
Normal file
7
backend/test/fetchMock/empty.ts
Normal file
@ -0,0 +1,7 @@
|
||||
export const empty = {
|
||||
type: 'FeatureCollection',
|
||||
query: ['gbhtsd4sdha'],
|
||||
features: [],
|
||||
attribution:
|
||||
'NOTICE: © 2025 Mapbox and its suppliers. All rights reserved. Use of this data is subject to the Mapbox Terms of Service (https://www.mapbox.com/about/maps/). This response and the information it contains may not be retained.',
|
||||
}
|
||||
661
backend/test/fetchMock/hamburg.ts
Normal file
661
backend/test/fetchMock/hamburg.ts
Normal file
@ -0,0 +1,661 @@
|
||||
export const hamburg = {
|
||||
type: 'FeatureCollection',
|
||||
query: ['hamburg', 'germany'],
|
||||
features: [
|
||||
{
|
||||
id: 'place.9274',
|
||||
type: 'Feature',
|
||||
place_type: ['region', 'place'],
|
||||
relevance: 1,
|
||||
properties: {
|
||||
mapbox_id: 'dXJuOm1ieHBsYzpKRG8',
|
||||
wikidata: 'Q1055',
|
||||
short_code: 'DE-HH',
|
||||
},
|
||||
text_en: 'Hamburg',
|
||||
language_en: 'en',
|
||||
place_name_en: 'Hamburg, Germany',
|
||||
text: 'Hamburg',
|
||||
language: 'en',
|
||||
place_name: 'Hamburg, Germany',
|
||||
text_de: 'Hamburg',
|
||||
language_de: 'de',
|
||||
place_name_de: 'Hamburg, Deutschland',
|
||||
text_fr: 'Hambourg',
|
||||
language_fr: 'fr',
|
||||
place_name_fr: 'Hambourg, Allemagne',
|
||||
text_nl: 'Hamburg',
|
||||
language_nl: 'nl',
|
||||
place_name_nl: 'Hamburg, Duitsland',
|
||||
text_it: 'Amburgo',
|
||||
language_it: 'it',
|
||||
place_name_it: 'Amburgo, Germania',
|
||||
text_es: 'Hamburgo',
|
||||
language_es: 'es',
|
||||
place_name_es: 'Hamburgo, Alemania',
|
||||
text_pt: 'Hamburgo',
|
||||
language_pt: 'pt',
|
||||
place_name_pt: 'Hamburgo, Alemanha',
|
||||
text_pl: 'Hamburg',
|
||||
language_pl: 'pl',
|
||||
place_name_pl: 'Hamburg, Niemcy',
|
||||
text_ru: 'Гамбург',
|
||||
language_ru: 'ru',
|
||||
place_name_ru: 'Гамбург, Германия',
|
||||
bbox: [8.345049, 53.395085, 10.325247, 54.010088],
|
||||
center: [10.000654, 53.550341],
|
||||
geometry: {
|
||||
type: 'Point',
|
||||
coordinates: [10.000654, 53.550341],
|
||||
},
|
||||
context: [
|
||||
{
|
||||
id: 'country.8762',
|
||||
mapbox_id: 'dXJuOm1ieHBsYzpJam8',
|
||||
wikidata: 'Q183',
|
||||
short_code: 'de',
|
||||
text_en: 'Germany',
|
||||
language_en: 'en',
|
||||
text: 'Germany',
|
||||
language: 'en',
|
||||
text_de: 'Deutschland',
|
||||
language_de: 'de',
|
||||
text_fr: 'Allemagne',
|
||||
language_fr: 'fr',
|
||||
text_nl: 'Duitsland',
|
||||
language_nl: 'nl',
|
||||
text_it: 'Germania',
|
||||
language_it: 'it',
|
||||
text_es: 'Alemania',
|
||||
language_es: 'es',
|
||||
text_pt: 'Alemanha',
|
||||
language_pt: 'pt',
|
||||
text_pl: 'Niemcy',
|
||||
language_pl: 'pl',
|
||||
text_ru: 'Германия',
|
||||
language_ru: 'ru',
|
||||
},
|
||||
],
|
||||
},
|
||||
{
|
||||
id: 'address.2262168808051568',
|
||||
type: 'Feature',
|
||||
place_type: ['address'],
|
||||
relevance: 1,
|
||||
properties: {
|
||||
accuracy: 'street',
|
||||
mapbox_id: 'dXJuOm1ieGFkci1zdHI6MGM5NzRmMmYtNTA0Yi00MDk1LWJjNGItNTA3NmRhY2Y4YzQ5',
|
||||
},
|
||||
text_en: 'Hamburg',
|
||||
place_name_en: 'Hamburg, 38889 Oberharz am Brocken, Germany',
|
||||
text: 'Hamburg',
|
||||
place_name: 'Hamburg, 38889 Oberharz am Brocken, Germany',
|
||||
text_de: 'Hamburg',
|
||||
place_name_de: 'Hamburg, 38889 Oberharz am Brocken, Deutschland',
|
||||
text_fr: 'Hamburg',
|
||||
place_name_fr: 'Hamburg, 38889 Oberharz am Brocken, Allemagne',
|
||||
text_nl: 'Hamburg',
|
||||
place_name_nl: 'Hamburg, 38889 Oberharz am Brocken, Duitsland',
|
||||
text_it: 'Hamburg',
|
||||
place_name_it: 'Hamburg, 38889 Oberharz am Brocken, Germania',
|
||||
text_es: 'Hamburg',
|
||||
place_name_es: 'Hamburg, 38889 Oberharz am Brocken, Alemania',
|
||||
text_pt: 'Hamburg',
|
||||
place_name_pt: 'Hamburg, 38889 Oberharz am Brocken, Alemanha',
|
||||
text_pl: 'Hamburg',
|
||||
place_name_pl: 'Hamburg, 38889 Oberharz am Brocken, Niemcy',
|
||||
text_ru: 'Hamburg',
|
||||
place_name_ru: 'Hamburg, 38889 Оберхарц-ам-Броккен, Германия',
|
||||
center: [10.872935, 51.752737],
|
||||
geometry: {
|
||||
type: 'Point',
|
||||
coordinates: [10.872935, 51.752737],
|
||||
},
|
||||
context: [
|
||||
{
|
||||
id: 'postcode.23424570',
|
||||
mapbox_id: 'dXJuOm1ieHBsYzpBV1Z1T2c',
|
||||
text_en: '38889',
|
||||
text: '38889',
|
||||
text_de: '38889',
|
||||
text_fr: '38889',
|
||||
text_nl: '38889',
|
||||
text_it: '38889',
|
||||
text_es: '38889',
|
||||
text_pt: '38889',
|
||||
text_pl: '38889',
|
||||
text_ru: '38889',
|
||||
},
|
||||
{
|
||||
id: 'locality.232909370',
|
||||
mapbox_id: 'dXJuOm1ieHBsYzpEZUhxT2c',
|
||||
wikidata: 'Q1982027',
|
||||
text_en: 'Neuwerk',
|
||||
language_en: 'en',
|
||||
text: 'Neuwerk',
|
||||
language: 'en',
|
||||
text_de: 'Neuwerk',
|
||||
language_de: 'de',
|
||||
text_fr: 'Neuwerk',
|
||||
language_fr: 'fr',
|
||||
text_nl: 'Neuwerk',
|
||||
language_nl: 'nl',
|
||||
text_it: 'Neuwerk',
|
||||
language_it: 'it',
|
||||
text_es: 'Neuwerk',
|
||||
language_es: 'es',
|
||||
text_pt: 'Neuwerk',
|
||||
language_pt: 'pt',
|
||||
text_pl: 'Neuwerk',
|
||||
language_pl: 'pl',
|
||||
text_ru: 'Neuwerk',
|
||||
},
|
||||
{
|
||||
id: 'place.57780282',
|
||||
mapbox_id: 'dXJuOm1ieHBsYzpBM0dvT2c',
|
||||
wikidata: 'Q703001',
|
||||
text_en: 'Oberharz am Brocken',
|
||||
language_en: 'en',
|
||||
text: 'Oberharz am Brocken',
|
||||
language: 'en',
|
||||
text_de: 'Oberharz am Brocken',
|
||||
language_de: 'de',
|
||||
text_fr: 'Oberharz am Brocken',
|
||||
language_fr: 'fr',
|
||||
text_nl: 'Oberharz am Brocken',
|
||||
language_nl: 'nl',
|
||||
text_it: 'Oberharz am Brocken',
|
||||
language_it: 'it',
|
||||
text_es: 'Oberharz am Brocken',
|
||||
language_es: 'es',
|
||||
text_pt: 'Oberharz am Brocken',
|
||||
language_pt: 'pt',
|
||||
text_pl: 'Oberharz am Brocken',
|
||||
language_pl: 'pl',
|
||||
text_ru: 'Оберхарц-ам-Броккен',
|
||||
language_ru: 'ru',
|
||||
},
|
||||
{
|
||||
id: 'district.755258',
|
||||
mapbox_id: 'dXJuOm1ieHBsYzpDNFk2',
|
||||
wikidata: 'Q6087',
|
||||
text_en: 'Harz District',
|
||||
language_en: 'en',
|
||||
text: 'Harz District',
|
||||
language: 'en',
|
||||
text_de: 'Kreis Harz',
|
||||
language_de: 'de',
|
||||
text_fr: 'Arrondissement de Harz',
|
||||
language_fr: 'fr',
|
||||
text_nl: 'Landkreis Harz',
|
||||
language_nl: 'nl',
|
||||
text_it: 'circondario dello Harz',
|
||||
language_it: 'it',
|
||||
text_es: 'Distrito de Harz',
|
||||
language_es: 'es',
|
||||
text_pt: 'Distrito de Harz',
|
||||
language_pt: 'es',
|
||||
text_pl: 'Landkreis Harz',
|
||||
language_pl: 'pl',
|
||||
text_ru: 'Гарц',
|
||||
language_ru: 'ru',
|
||||
},
|
||||
{
|
||||
id: 'region.91194',
|
||||
mapbox_id: 'dXJuOm1ieHBsYzpBV1E2',
|
||||
wikidata: 'Q1206',
|
||||
short_code: 'DE-ST',
|
||||
text_en: 'Saxony-Anhalt',
|
||||
language_en: 'en',
|
||||
text: 'Saxony-Anhalt',
|
||||
language: 'en',
|
||||
text_de: 'Sachsen-Anhalt',
|
||||
language_de: 'de',
|
||||
text_fr: 'Saxe-Anhalt',
|
||||
language_fr: 'fr',
|
||||
text_nl: 'Saksen-Anhalt',
|
||||
language_nl: 'nl',
|
||||
text_it: 'Sassonia-Anhalt',
|
||||
language_it: 'it',
|
||||
text_es: 'Sajonia-Anhalt',
|
||||
language_es: 'es',
|
||||
text_pt: 'Saxónia-Anhalt',
|
||||
language_pt: 'pt',
|
||||
text_pl: 'Saksonia-Anhalt',
|
||||
language_pl: 'pl',
|
||||
text_ru: 'Саксония-Анхальт',
|
||||
language_ru: 'ru',
|
||||
},
|
||||
{
|
||||
id: 'country.8762',
|
||||
mapbox_id: 'dXJuOm1ieHBsYzpJam8',
|
||||
wikidata: 'Q183',
|
||||
short_code: 'de',
|
||||
text_en: 'Germany',
|
||||
language_en: 'en',
|
||||
text: 'Germany',
|
||||
language: 'en',
|
||||
text_de: 'Deutschland',
|
||||
language_de: 'de',
|
||||
text_fr: 'Allemagne',
|
||||
language_fr: 'fr',
|
||||
text_nl: 'Duitsland',
|
||||
language_nl: 'nl',
|
||||
text_it: 'Germania',
|
||||
language_it: 'it',
|
||||
text_es: 'Alemania',
|
||||
language_es: 'es',
|
||||
text_pt: 'Alemanha',
|
||||
language_pt: 'pt',
|
||||
text_pl: 'Niemcy',
|
||||
language_pl: 'pl',
|
||||
text_ru: 'Германия',
|
||||
language_ru: 'ru',
|
||||
},
|
||||
],
|
||||
},
|
||||
{
|
||||
id: 'address.8952604554248206',
|
||||
type: 'Feature',
|
||||
place_type: ['address'],
|
||||
relevance: 1,
|
||||
properties: {
|
||||
accuracy: 'street',
|
||||
mapbox_id: 'dXJuOm1ieGFkci1zdHI6NGNmMGExNGUtMjExMy00Yzk1LTllYjQtYTllOTRmNDIxZmEz',
|
||||
},
|
||||
text_en: 'Hamburg',
|
||||
place_name_en: 'Hamburg, 54608 Bleialf, Germany',
|
||||
text: 'Hamburg',
|
||||
place_name: 'Hamburg, 54608 Bleialf, Germany',
|
||||
text_de: 'Hamburg',
|
||||
place_name_de: 'Hamburg, 54608 Bleialf, Deutschland',
|
||||
text_fr: 'Hamburg',
|
||||
place_name_fr: 'Hamburg, 54608 Bleialf, Allemagne',
|
||||
text_nl: 'Hamburg',
|
||||
place_name_nl: 'Hamburg, 54608 Bleialf, Duitsland',
|
||||
text_it: 'Hamburg',
|
||||
place_name_it: 'Hamburg, 54608 Bleialf, Germania',
|
||||
text_es: 'Hamburg',
|
||||
place_name_es: 'Hamburg, 54608 Bleialf, Alemania',
|
||||
text_pt: 'Hamburg',
|
||||
place_name_pt: 'Hamburg, 54608 Bleialf, Alemanha',
|
||||
text_pl: 'Hamburg',
|
||||
place_name_pl: 'Hamburg, 54608 Bleialf, Niemcy',
|
||||
text_ru: 'Hamburg',
|
||||
place_name_ru: 'Hamburg, 54608 Блайальф, Германия',
|
||||
center: [6.286919, 50.231471],
|
||||
geometry: {
|
||||
type: 'Point',
|
||||
coordinates: [6.286919, 50.231471],
|
||||
},
|
||||
context: [
|
||||
{
|
||||
id: 'postcode.30887482',
|
||||
mapbox_id: 'dXJuOm1ieHBsYzpBZGRPT2c',
|
||||
text_en: '54608',
|
||||
text: '54608',
|
||||
text_de: '54608',
|
||||
text_fr: '54608',
|
||||
text_nl: '54608',
|
||||
text_it: '54608',
|
||||
text_es: '54608',
|
||||
text_pt: '54608',
|
||||
text_pl: '54608',
|
||||
text_ru: '54608',
|
||||
},
|
||||
{
|
||||
id: 'place.8742970',
|
||||
mapbox_id: 'dXJuOm1ieHBsYzpoV2c2',
|
||||
wikidata: 'Q553361',
|
||||
text_en: 'Bleialf',
|
||||
language_en: 'en',
|
||||
text: 'Bleialf',
|
||||
language: 'en',
|
||||
text_de: 'Bleialf',
|
||||
language_de: 'de',
|
||||
text_fr: 'Bleialf',
|
||||
language_fr: 'fr',
|
||||
text_nl: 'Bleialf',
|
||||
language_nl: 'nl',
|
||||
text_it: 'Bleialf',
|
||||
language_it: 'it',
|
||||
text_es: 'Bleialf',
|
||||
language_es: 'es',
|
||||
text_pt: 'Bleialf',
|
||||
language_pt: 'pt',
|
||||
text_pl: 'Bleialf',
|
||||
language_pl: 'pl',
|
||||
text_ru: 'Блайальф',
|
||||
language_ru: 'ru',
|
||||
},
|
||||
{
|
||||
id: 'district.2434618',
|
||||
mapbox_id: 'dXJuOm1ieHBsYzpKU1k2',
|
||||
wikidata: 'Q8580',
|
||||
text_en: 'Eifelkreis Bitburg-Prüm',
|
||||
language_en: 'en',
|
||||
text: 'Eifelkreis Bitburg-Prüm',
|
||||
language: 'en',
|
||||
text_de: 'Eifelkreis Bitburg-Prüm',
|
||||
language_de: 'de',
|
||||
text_fr: 'Eifel-Bitburg-Prüm',
|
||||
language_fr: 'fr',
|
||||
text_nl: 'Eifelkreis Bitburg-Prüm',
|
||||
language_nl: 'nl',
|
||||
text_it: 'Eifelkreis Bitburg-Prüm',
|
||||
language_it: 'it',
|
||||
text_es: 'Eifel-Bitburg-Prüm',
|
||||
language_es: 'es',
|
||||
text_pt: 'Bitburg-Prüm',
|
||||
language_pt: 'pt',
|
||||
text_pl: 'Eifelkreis Bitburg-Prüm',
|
||||
language_pl: 'pl',
|
||||
text_ru: 'Айфель-Битбург-Прюм',
|
||||
language_ru: 'ru',
|
||||
},
|
||||
{
|
||||
id: 'region.58426',
|
||||
mapbox_id: 'dXJuOm1ieHBsYzo1RG8',
|
||||
wikidata: 'Q1200',
|
||||
short_code: 'DE-RP',
|
||||
text_en: 'Rhineland-Palatinate',
|
||||
language_en: 'en',
|
||||
text: 'Rhineland-Palatinate',
|
||||
language: 'en',
|
||||
text_de: 'Rheinland-Pfalz',
|
||||
language_de: 'de',
|
||||
text_fr: 'Rhénanie-Palatinat',
|
||||
language_fr: 'fr',
|
||||
text_nl: 'Rijnland-Palts',
|
||||
language_nl: 'nl',
|
||||
text_it: 'Renania-Palatinato',
|
||||
language_it: 'it',
|
||||
text_es: 'Renania-Palatinado',
|
||||
language_es: 'es',
|
||||
text_pt: 'Renânia-Palatinado',
|
||||
language_pt: 'pt',
|
||||
text_pl: 'Nadrenia-Palatynat',
|
||||
language_pl: 'pl',
|
||||
text_ru: 'Рейнланд-Пфальц',
|
||||
language_ru: 'ru',
|
||||
},
|
||||
{
|
||||
id: 'country.8762',
|
||||
mapbox_id: 'dXJuOm1ieHBsYzpJam8',
|
||||
wikidata: 'Q183',
|
||||
short_code: 'de',
|
||||
text_en: 'Germany',
|
||||
language_en: 'en',
|
||||
text: 'Germany',
|
||||
language: 'en',
|
||||
text_de: 'Deutschland',
|
||||
language_de: 'de',
|
||||
text_fr: 'Allemagne',
|
||||
language_fr: 'fr',
|
||||
text_nl: 'Duitsland',
|
||||
language_nl: 'nl',
|
||||
text_it: 'Germania',
|
||||
language_it: 'it',
|
||||
text_es: 'Alemania',
|
||||
language_es: 'es',
|
||||
text_pt: 'Alemanha',
|
||||
language_pt: 'pt',
|
||||
text_pl: 'Niemcy',
|
||||
language_pl: 'pl',
|
||||
text_ru: 'Германия',
|
||||
language_ru: 'ru',
|
||||
},
|
||||
],
|
||||
},
|
||||
{
|
||||
id: 'place.35727418',
|
||||
type: 'Feature',
|
||||
place_type: ['place'],
|
||||
relevance: 0.964286,
|
||||
properties: {
|
||||
mapbox_id: 'dXJuOm1ieHBsYzpBaUVvT2c',
|
||||
wikidata: 'Q7040',
|
||||
},
|
||||
text_en: 'Homburg',
|
||||
language_en: 'en',
|
||||
place_name_en: 'Homburg, Saarpfalz-Kreis, Saarland, Germany',
|
||||
text: 'Homburg',
|
||||
language: 'en',
|
||||
place_name: 'Homburg, Saarpfalz-Kreis, Saarland, Germany',
|
||||
text_de: 'Homburg',
|
||||
language_de: 'de',
|
||||
place_name_de: 'Homburg, Saarpfalz-Kreis, Saarland, Deutschland',
|
||||
text_fr: 'Hombourg',
|
||||
language_fr: 'fr',
|
||||
place_name_fr: 'Hombourg, circondario del Saarpfalz, Sarre, Allemagne',
|
||||
text_nl: 'Homburg',
|
||||
language_nl: 'nl',
|
||||
place_name_nl: 'Homburg, Saarpfalz-Kreis, Saarland, Duitsland',
|
||||
text_it: 'Homburg',
|
||||
language_it: 'it',
|
||||
place_name_it: 'Homburg, circondario del Saarpfalz, Saarland, Germania',
|
||||
text_es: 'Homburg',
|
||||
language_es: 'es',
|
||||
place_name_es: 'Homburg, Saarpfalz-Kreis, Sarre, Alemania',
|
||||
text_pt: 'Homburg',
|
||||
language_pt: 'pt',
|
||||
place_name_pt: 'Homburg, circondario del Saarpfalz, Sarre, Alemanha',
|
||||
text_pl: 'Homburg',
|
||||
language_pl: 'pl',
|
||||
place_name_pl: 'Homburg, Powiat Saarpfalz, Saara, Niemcy',
|
||||
text_ru: 'Хомбург',
|
||||
language_ru: 'ru',
|
||||
place_name_ru: 'Хомбург, Саарпфальц, Саар, Германия',
|
||||
bbox: [7.274109, 49.247602, 7.404584, 49.386381],
|
||||
center: [7.340504, 49.321426],
|
||||
geometry: {
|
||||
type: 'Point',
|
||||
coordinates: [7.340504, 49.321426],
|
||||
},
|
||||
context: [
|
||||
{
|
||||
id: 'district.2704954',
|
||||
mapbox_id: 'dXJuOm1ieHBsYzpLVVk2',
|
||||
wikidata: 'Q6793',
|
||||
text_en: 'Saarpfalz-Kreis',
|
||||
language_en: 'de',
|
||||
text: 'Saarpfalz-Kreis',
|
||||
language: 'de',
|
||||
text_de: 'Saarpfalz-Kreis',
|
||||
language_de: 'de',
|
||||
text_fr: 'circondario del Saarpfalz',
|
||||
language_fr: 'it',
|
||||
text_nl: 'Saarpfalz-Kreis',
|
||||
text_it: 'circondario del Saarpfalz',
|
||||
language_it: 'it',
|
||||
text_es: 'Saarpfalz-Kreis',
|
||||
text_pt: 'circondario del Saarpfalz',
|
||||
language_pt: 'it',
|
||||
text_pl: 'Powiat Saarpfalz',
|
||||
language_pl: 'pl',
|
||||
text_ru: 'Саарпфальц',
|
||||
language_ru: 'ru',
|
||||
},
|
||||
{
|
||||
id: 'region.66618',
|
||||
mapbox_id: 'dXJuOm1ieHBsYzpBUVE2',
|
||||
wikidata: 'Q1201',
|
||||
short_code: 'DE-SL',
|
||||
text_en: 'Saarland',
|
||||
language_en: 'en',
|
||||
text: 'Saarland',
|
||||
language: 'en',
|
||||
text_de: 'Saarland',
|
||||
language_de: 'de',
|
||||
text_fr: 'Sarre',
|
||||
language_fr: 'fr',
|
||||
text_nl: 'Saarland',
|
||||
language_nl: 'nl',
|
||||
text_it: 'Saarland',
|
||||
language_it: 'it',
|
||||
text_es: 'Sarre',
|
||||
language_es: 'es',
|
||||
text_pt: 'Sarre',
|
||||
language_pt: 'pt',
|
||||
text_pl: 'Saara',
|
||||
language_pl: 'pl',
|
||||
text_ru: 'Саар',
|
||||
language_ru: 'ru',
|
||||
},
|
||||
{
|
||||
id: 'country.8762',
|
||||
mapbox_id: 'dXJuOm1ieHBsYzpJam8',
|
||||
wikidata: 'Q183',
|
||||
short_code: 'de',
|
||||
text_en: 'Germany',
|
||||
language_en: 'en',
|
||||
text: 'Germany',
|
||||
language: 'en',
|
||||
text_de: 'Deutschland',
|
||||
language_de: 'de',
|
||||
text_fr: 'Allemagne',
|
||||
language_fr: 'fr',
|
||||
text_nl: 'Duitsland',
|
||||
language_nl: 'nl',
|
||||
text_it: 'Germania',
|
||||
language_it: 'it',
|
||||
text_es: 'Alemania',
|
||||
language_es: 'es',
|
||||
text_pt: 'Alemanha',
|
||||
language_pt: 'pt',
|
||||
text_pl: 'Niemcy',
|
||||
language_pl: 'pl',
|
||||
text_ru: 'Германия',
|
||||
language_ru: 'ru',
|
||||
},
|
||||
],
|
||||
},
|
||||
{
|
||||
id: 'place.30623802',
|
||||
type: 'Feature',
|
||||
place_type: ['place'],
|
||||
relevance: 0.964286,
|
||||
properties: {
|
||||
mapbox_id: 'dXJuOm1ieHBsYzpBZE5JT2c',
|
||||
wikidata: 'Q503226',
|
||||
},
|
||||
text_en: 'Harburg',
|
||||
language_en: 'en',
|
||||
place_name_en: 'Harburg, arrondissement de Danube-Ries, Bavaria, Germany',
|
||||
text: 'Harburg',
|
||||
language: 'en',
|
||||
place_name: 'Harburg, arrondissement de Danube-Ries, Bavaria, Germany',
|
||||
text_de: 'Harburg',
|
||||
language_de: 'de',
|
||||
place_name_de: 'Harburg, Kreis Donau-Ries, Bayern, Deutschland',
|
||||
text_fr: 'Harbourg',
|
||||
language_fr: 'fr',
|
||||
place_name_fr: 'Harbourg, arrondissement de Danube-Ries, Bavière, Allemagne',
|
||||
text_nl: 'Harburg',
|
||||
language_nl: 'nl',
|
||||
place_name_nl: 'Harburg, arrondissement de Danube-Ries, Beieren, Duitsland',
|
||||
text_it: 'Harburg',
|
||||
language_it: 'it',
|
||||
place_name_it: 'Harburg, Circondario del Danubio-Ries, Baviera, Germania',
|
||||
text_es: 'Harburg',
|
||||
language_es: 'es',
|
||||
place_name_es: 'Harburg, arrondissement de Danube-Ries, Baviera, Alemania',
|
||||
text_pt: 'Harburg',
|
||||
language_pt: 'pt',
|
||||
place_name_pt: 'Harburg, Circondario del Danubio-Ries, Baviera, Alemanha',
|
||||
text_pl: 'Harburg',
|
||||
language_pl: 'pl',
|
||||
place_name_pl: 'Harburg, Landkreis Donau-Ries, Bawaria, Niemcy',
|
||||
text_ru: 'Харбург',
|
||||
language_ru: 'ru',
|
||||
place_name_ru: 'Харбург, Донау-Рис, Бавария, Германия',
|
||||
bbox: [10.617754, 48.726549, 10.770464, 48.83036],
|
||||
center: [10.688789, 48.787212],
|
||||
geometry: {
|
||||
type: 'Point',
|
||||
coordinates: [10.688789, 48.787212],
|
||||
},
|
||||
context: [
|
||||
{
|
||||
id: 'district.419386',
|
||||
mapbox_id: 'dXJuOm1ieHBsYzpCbVk2',
|
||||
wikidata: 'Q10418',
|
||||
text_en: 'arrondissement de Danube-Ries',
|
||||
language_en: 'fr',
|
||||
text: 'arrondissement de Danube-Ries',
|
||||
language: 'fr',
|
||||
text_de: 'Kreis Donau-Ries',
|
||||
language_de: 'de',
|
||||
text_fr: 'arrondissement de Danube-Ries',
|
||||
language_fr: 'fr',
|
||||
text_nl: 'arrondissement de Danube-Ries',
|
||||
language_nl: 'fr',
|
||||
text_it: 'Circondario del Danubio-Ries',
|
||||
language_it: 'it',
|
||||
text_es: 'arrondissement de Danube-Ries',
|
||||
language_es: 'fr',
|
||||
text_pt: 'Circondario del Danubio-Ries',
|
||||
language_pt: 'it',
|
||||
text_pl: 'Landkreis Donau-Ries',
|
||||
language_pl: 'pl',
|
||||
text_ru: 'Донау-Рис',
|
||||
language_ru: 'ru',
|
||||
},
|
||||
{
|
||||
id: 'region.123962',
|
||||
mapbox_id: 'dXJuOm1ieHBsYzpBZVE2',
|
||||
wikidata: 'Q980',
|
||||
short_code: 'DE-BY',
|
||||
text_en: 'Bavaria',
|
||||
language_en: 'en',
|
||||
text: 'Bavaria',
|
||||
language: 'en',
|
||||
text_de: 'Bayern',
|
||||
language_de: 'de',
|
||||
text_fr: 'Bavière',
|
||||
language_fr: 'fr',
|
||||
text_nl: 'Beieren',
|
||||
language_nl: 'nl',
|
||||
text_it: 'Baviera',
|
||||
language_it: 'it',
|
||||
text_es: 'Baviera',
|
||||
language_es: 'es',
|
||||
text_pt: 'Baviera',
|
||||
language_pt: 'pt',
|
||||
text_pl: 'Bawaria',
|
||||
language_pl: 'pl',
|
||||
text_ru: 'Бавария',
|
||||
language_ru: 'ru',
|
||||
},
|
||||
{
|
||||
id: 'country.8762',
|
||||
mapbox_id: 'dXJuOm1ieHBsYzpJam8',
|
||||
wikidata: 'Q183',
|
||||
short_code: 'de',
|
||||
text_en: 'Germany',
|
||||
language_en: 'en',
|
||||
text: 'Germany',
|
||||
language: 'en',
|
||||
text_de: 'Deutschland',
|
||||
language_de: 'de',
|
||||
text_fr: 'Allemagne',
|
||||
language_fr: 'fr',
|
||||
text_nl: 'Duitsland',
|
||||
language_nl: 'nl',
|
||||
text_it: 'Germania',
|
||||
language_it: 'it',
|
||||
text_es: 'Alemania',
|
||||
language_es: 'es',
|
||||
text_pt: 'Alemanha',
|
||||
language_pt: 'pt',
|
||||
text_pl: 'Niemcy',
|
||||
language_pl: 'pl',
|
||||
text_ru: 'Германия',
|
||||
language_ru: 'ru',
|
||||
},
|
||||
],
|
||||
},
|
||||
],
|
||||
attribution:
|
||||
'NOTICE: © 2025 Mapbox and its suppliers. All rights reserved. Use of this data is subject to the Mapbox Terms of Service (https://www.mapbox.com/about/maps/). This response and the information it contains may not be retained.',
|
||||
}
|
||||
813
backend/test/fetchMock/hamburgNY.ts
Normal file
813
backend/test/fetchMock/hamburgNY.ts
Normal file
@ -0,0 +1,813 @@
|
||||
export const hamburgNY = {
|
||||
type: 'FeatureCollection',
|
||||
query: ['hamburg', 'new', 'jersey'],
|
||||
features: [
|
||||
{
|
||||
id: 'place.138242284',
|
||||
type: 'Feature',
|
||||
place_type: ['place'],
|
||||
relevance: 1,
|
||||
properties: {
|
||||
mapbox_id: 'dXJuOm1ieHBsYzpDRDFvN0E',
|
||||
wikidata: 'Q1082931',
|
||||
},
|
||||
text_en: 'Hamburg',
|
||||
language_en: 'en',
|
||||
place_name_en: 'Hamburg, New Jersey, United States',
|
||||
text: 'Hamburg',
|
||||
language: 'en',
|
||||
place_name: 'Hamburg, New Jersey, United States',
|
||||
text_de: 'Hamburg',
|
||||
language_de: 'de',
|
||||
place_name_de: 'Hamburg, New Jersey, Vereinigte Staaten',
|
||||
text_fr: 'Hamburg',
|
||||
language_fr: 'fr',
|
||||
place_name_fr: 'Hamburg, New Jersey, États-Unis',
|
||||
text_nl: 'Hamburg',
|
||||
language_nl: 'nl',
|
||||
place_name_nl: 'Hamburg, New Jersey, Verenigde Staten van Amerika',
|
||||
text_it: 'Hamburg',
|
||||
language_it: 'it',
|
||||
place_name_it: "Hamburg, New Jersey, Stati Uniti d'America",
|
||||
text_es: 'Hamburg',
|
||||
language_es: 'es',
|
||||
place_name_es: 'Hamburg, Nueva Jersey, Estados Unidos',
|
||||
text_pt: 'Hamburg',
|
||||
language_pt: 'pt',
|
||||
place_name_pt: 'Hamburg, Nova Jérsia, Estados Unidos',
|
||||
text_pl: 'Hamburg',
|
||||
language_pl: 'nl',
|
||||
place_name_pl: 'Hamburg, New Jersey, Stany Zjednoczone',
|
||||
text_ru: 'Хамбург',
|
||||
language_ru: 'kk',
|
||||
place_name_ru: 'Хамбург, Нью-Джерси, США',
|
||||
bbox: [-74.632296, 41.101134, -74.510997, 41.194008],
|
||||
center: [-74.576227, 41.153431],
|
||||
geometry: {
|
||||
type: 'Point',
|
||||
coordinates: [-74.576227, 41.153431],
|
||||
},
|
||||
context: [
|
||||
{
|
||||
id: 'district.22456044',
|
||||
mapbox_id: 'dXJuOm1ieHBsYzpBVmFtN0E',
|
||||
wikidata: 'Q495998',
|
||||
text_en: 'Sussex County',
|
||||
language_en: 'en',
|
||||
text: 'Sussex County',
|
||||
language: 'en',
|
||||
text_de: 'Sussex County',
|
||||
language_de: 'de',
|
||||
text_fr: 'comté de Sussex',
|
||||
language_fr: 'fr',
|
||||
text_nl: 'Sussex County',
|
||||
language_nl: 'nl',
|
||||
text_it: 'contea di Sussex',
|
||||
language_it: 'it',
|
||||
text_es: 'Condado de Sussex',
|
||||
language_es: 'es',
|
||||
text_pt: 'Condado de Sussex',
|
||||
language_pt: 'pt',
|
||||
text_pl: 'Hrabstwo Sussex',
|
||||
language_pl: 'pl',
|
||||
text_ru: 'Сассекс',
|
||||
language_ru: 'ru',
|
||||
},
|
||||
{
|
||||
id: 'region.156908',
|
||||
mapbox_id: 'dXJuOm1ieHBsYzpBbVRz',
|
||||
wikidata: 'Q1408',
|
||||
short_code: 'US-NJ',
|
||||
text_en: 'New Jersey',
|
||||
language_en: 'en',
|
||||
text: 'New Jersey',
|
||||
language: 'en',
|
||||
text_de: 'New Jersey',
|
||||
language_de: 'de',
|
||||
text_fr: 'New Jersey',
|
||||
language_fr: 'fr',
|
||||
text_nl: 'New Jersey',
|
||||
language_nl: 'nl',
|
||||
text_it: 'New Jersey',
|
||||
language_it: 'it',
|
||||
text_es: 'Nueva Jersey',
|
||||
language_es: 'es',
|
||||
text_pt: 'Nova Jérsia',
|
||||
language_pt: 'pt',
|
||||
text_pl: 'New Jersey',
|
||||
language_pl: 'pl',
|
||||
text_ru: 'Нью-Джерси',
|
||||
language_ru: 'ru',
|
||||
},
|
||||
{
|
||||
id: 'country.8940',
|
||||
mapbox_id: 'dXJuOm1ieHBsYzpJdXc',
|
||||
wikidata: 'Q30',
|
||||
short_code: 'us',
|
||||
text_en: 'United States',
|
||||
language_en: 'en',
|
||||
text: 'United States',
|
||||
language: 'en',
|
||||
text_de: 'Vereinigte Staaten',
|
||||
language_de: 'de',
|
||||
text_fr: 'États-Unis',
|
||||
language_fr: 'fr',
|
||||
text_nl: 'Verenigde Staten van Amerika',
|
||||
language_nl: 'nl',
|
||||
text_it: "Stati Uniti d'America",
|
||||
language_it: 'it',
|
||||
text_es: 'Estados Unidos',
|
||||
language_es: 'es',
|
||||
text_pt: 'Estados Unidos',
|
||||
language_pt: 'pt',
|
||||
text_pl: 'Stany Zjednoczone',
|
||||
language_pl: 'pl',
|
||||
text_ru: 'США',
|
||||
language_ru: 'ru',
|
||||
},
|
||||
],
|
||||
},
|
||||
{
|
||||
id: 'address.4892302912777302',
|
||||
type: 'Feature',
|
||||
place_type: ['address'],
|
||||
relevance: 1,
|
||||
properties: {
|
||||
accuracy: 'street',
|
||||
'override:postcode': '',
|
||||
mapbox_id: 'dXJuOm1ieGFkci1zdHI6YTVmNjA1ZDItOGJhYS00MWRlLWE0MmUtYzYzYThjY2JlYzE2',
|
||||
},
|
||||
text_en: 'Hamburg Turnpike',
|
||||
place_name_en: 'Hamburg Turnpike, Stockholm, New Jersey 07460, United States',
|
||||
text: 'Hamburg Turnpike',
|
||||
place_name: 'Hamburg Turnpike, Stockholm, New Jersey 07460, United States',
|
||||
text_de: 'Hamburg Turnpike',
|
||||
place_name_de: 'Hamburg Turnpike, Stockholm, New Jersey 07460, Vereinigte Staaten',
|
||||
text_fr: 'Hamburg Turnpike',
|
||||
place_name_fr: 'Hamburg Turnpike, Stockholm, New Jersey 07460, États-Unis',
|
||||
text_nl: 'Hamburg Turnpike',
|
||||
place_name_nl: 'Hamburg Turnpike, Stockholm, New Jersey 07460, Verenigde Staten van Amerika',
|
||||
text_it: 'Hamburg Turnpike',
|
||||
place_name_it: "Hamburg Turnpike, Stockholm, New Jersey 07460, Stati Uniti d'America",
|
||||
text_es: 'Hamburg Turnpike',
|
||||
place_name_es: 'Hamburg Turnpike, Stockholm, Nueva Jersey 07460, Estados Unidos',
|
||||
text_pt: 'Hamburg Turnpike',
|
||||
place_name_pt: 'Hamburg Turnpike, Stockholm, Nova Jérsia 07460, Estados Unidos',
|
||||
text_pl: 'Hamburg Turnpike',
|
||||
place_name_pl: 'Hamburg Turnpike, Stockholm, New Jersey 07460, Stany Zjednoczone',
|
||||
text_ru: 'Hamburg Turnpike',
|
||||
place_name_ru: 'Hamburg Turnpike, Stockholm, Нью-Джерси 07460, США',
|
||||
center: [-74.52295, 41.11971],
|
||||
geometry: {
|
||||
type: 'Point',
|
||||
coordinates: [-74.52295, 41.11971],
|
||||
},
|
||||
context: [
|
||||
{
|
||||
id: 'postcode.20008684',
|
||||
mapbox_id: 'dXJuOm1ieHBsYzpBVEZPN0E',
|
||||
text_en: '07460',
|
||||
text: '07460',
|
||||
text_de: '07460',
|
||||
text_fr: '07460',
|
||||
text_nl: '07460',
|
||||
text_it: '07460',
|
||||
text_es: '07460',
|
||||
text_pt: '07460',
|
||||
text_pl: '07460',
|
||||
text_ru: '07460',
|
||||
},
|
||||
{
|
||||
id: 'locality.237284076',
|
||||
mapbox_id: 'dXJuOm1ieHBsYzpEaVNxN0E',
|
||||
text_en: 'Hardyston Township',
|
||||
language_en: 'en',
|
||||
text: 'Hardyston Township',
|
||||
language: 'en',
|
||||
text_de: 'Hardyston Township',
|
||||
language_de: 'en',
|
||||
text_fr: 'Hardyston Township',
|
||||
language_fr: 'en',
|
||||
text_nl: 'Hardyston Township',
|
||||
language_nl: 'en',
|
||||
text_it: 'Hardyston Township',
|
||||
language_it: 'en',
|
||||
text_es: 'Hardyston Township',
|
||||
language_es: 'en',
|
||||
text_pt: 'Hardyston Township',
|
||||
text_pl: 'Hardyston Township',
|
||||
language_pl: 'en',
|
||||
text_ru: 'Hardyston Township',
|
||||
},
|
||||
{
|
||||
id: 'place.315435244',
|
||||
mapbox_id: 'dXJuOm1ieHBsYzpFczBvN0E',
|
||||
wikidata: 'Q7617988',
|
||||
text_en: 'Stockholm',
|
||||
language_en: 'en',
|
||||
text: 'Stockholm',
|
||||
language: 'en',
|
||||
text_de: 'Stockholm',
|
||||
language_de: 'en',
|
||||
text_fr: 'Stockholm',
|
||||
language_fr: 'fr',
|
||||
text_nl: 'Stockholm',
|
||||
language_nl: 'fr',
|
||||
text_it: 'Stockholm',
|
||||
language_it: 'fr',
|
||||
text_es: 'Stockholm',
|
||||
language_es: 'fr',
|
||||
text_pt: 'Stockholm',
|
||||
text_pl: 'Stockholm',
|
||||
language_pl: 'en',
|
||||
text_ru: 'Stockholm',
|
||||
},
|
||||
{
|
||||
id: 'district.22456044',
|
||||
mapbox_id: 'dXJuOm1ieHBsYzpBVmFtN0E',
|
||||
wikidata: 'Q495998',
|
||||
text_en: 'Sussex County',
|
||||
language_en: 'en',
|
||||
text: 'Sussex County',
|
||||
language: 'en',
|
||||
text_de: 'Sussex County',
|
||||
language_de: 'de',
|
||||
text_fr: 'comté de Sussex',
|
||||
language_fr: 'fr',
|
||||
text_nl: 'Sussex County',
|
||||
language_nl: 'nl',
|
||||
text_it: 'contea di Sussex',
|
||||
language_it: 'it',
|
||||
text_es: 'Condado de Sussex',
|
||||
language_es: 'es',
|
||||
text_pt: 'Condado de Sussex',
|
||||
language_pt: 'pt',
|
||||
text_pl: 'Hrabstwo Sussex',
|
||||
language_pl: 'pl',
|
||||
text_ru: 'Сассекс',
|
||||
language_ru: 'ru',
|
||||
},
|
||||
{
|
||||
id: 'region.156908',
|
||||
mapbox_id: 'dXJuOm1ieHBsYzpBbVRz',
|
||||
wikidata: 'Q1408',
|
||||
short_code: 'US-NJ',
|
||||
text_en: 'New Jersey',
|
||||
language_en: 'en',
|
||||
text: 'New Jersey',
|
||||
language: 'en',
|
||||
text_de: 'New Jersey',
|
||||
language_de: 'de',
|
||||
text_fr: 'New Jersey',
|
||||
language_fr: 'fr',
|
||||
text_nl: 'New Jersey',
|
||||
language_nl: 'nl',
|
||||
text_it: 'New Jersey',
|
||||
language_it: 'it',
|
||||
text_es: 'Nueva Jersey',
|
||||
language_es: 'es',
|
||||
text_pt: 'Nova Jérsia',
|
||||
language_pt: 'pt',
|
||||
text_pl: 'New Jersey',
|
||||
language_pl: 'pl',
|
||||
text_ru: 'Нью-Джерси',
|
||||
language_ru: 'ru',
|
||||
},
|
||||
{
|
||||
id: 'country.8940',
|
||||
mapbox_id: 'dXJuOm1ieHBsYzpJdXc',
|
||||
wikidata: 'Q30',
|
||||
short_code: 'us',
|
||||
text_en: 'United States',
|
||||
language_en: 'en',
|
||||
text: 'United States',
|
||||
language: 'en',
|
||||
text_de: 'Vereinigte Staaten',
|
||||
language_de: 'de',
|
||||
text_fr: 'États-Unis',
|
||||
language_fr: 'fr',
|
||||
text_nl: 'Verenigde Staten van Amerika',
|
||||
language_nl: 'nl',
|
||||
text_it: "Stati Uniti d'America",
|
||||
language_it: 'it',
|
||||
text_es: 'Estados Unidos',
|
||||
language_es: 'es',
|
||||
text_pt: 'Estados Unidos',
|
||||
language_pt: 'pt',
|
||||
text_pl: 'Stany Zjednoczone',
|
||||
language_pl: 'pl',
|
||||
text_ru: 'США',
|
||||
language_ru: 'ru',
|
||||
},
|
||||
],
|
||||
},
|
||||
{
|
||||
id: 'address.5578007523305814',
|
||||
type: 'Feature',
|
||||
place_type: ['address'],
|
||||
relevance: 1,
|
||||
properties: {
|
||||
accuracy: 'street',
|
||||
mapbox_id: 'dXJuOm1ieGFkci1zdHI6YTY5NzVmZjAtMWI1MC00ZTZlLTlkNTctZTIzYWQ3N2Y5NGU5',
|
||||
},
|
||||
text_en: 'Hamburg Pike',
|
||||
place_name_en: 'Hamburg Pike, Hamburg, New Jersey 07419, United States',
|
||||
text: 'Hamburg Pike',
|
||||
place_name: 'Hamburg Pike, Hamburg, New Jersey 07419, United States',
|
||||
text_de: 'Hamburg Pike',
|
||||
place_name_de: 'Hamburg Pike, Hamburg, New Jersey 07419, Vereinigte Staaten',
|
||||
text_fr: 'Hamburg Pike',
|
||||
place_name_fr: 'Hamburg Pike, Hamburg, New Jersey 07419, États-Unis',
|
||||
text_nl: 'Hamburg Pike',
|
||||
place_name_nl: 'Hamburg Pike, Hamburg, New Jersey 07419, Verenigde Staten van Amerika',
|
||||
text_it: 'Hamburg Pike',
|
||||
place_name_it: "Hamburg Pike, Hamburg, New Jersey 07419, Stati Uniti d'America",
|
||||
text_es: 'Hamburg Pike',
|
||||
place_name_es: 'Hamburg Pike, Hamburg, Nueva Jersey 07419, Estados Unidos',
|
||||
text_pt: 'Hamburg Pike',
|
||||
place_name_pt: 'Hamburg Pike, Hamburg, Nova Jérsia 07419, Estados Unidos',
|
||||
text_pl: 'Hamburg Pike',
|
||||
place_name_pl: 'Hamburg Pike, Hamburg, New Jersey 07419, Stany Zjednoczone',
|
||||
text_ru: 'Hamburg Pike',
|
||||
place_name_ru: 'Hamburg Pike, Хамбург, Нью-Джерси 07419, США',
|
||||
center: [-74.541928, 41.125463],
|
||||
geometry: {
|
||||
type: 'Point',
|
||||
coordinates: [-74.541928, 41.125463],
|
||||
},
|
||||
context: [
|
||||
{
|
||||
id: 'postcode.19820268',
|
||||
mapbox_id: 'dXJuOm1ieHBsYzpBUzV1N0E',
|
||||
text_en: '07419',
|
||||
text: '07419',
|
||||
text_de: '07419',
|
||||
text_fr: '07419',
|
||||
text_nl: '07419',
|
||||
text_it: '07419',
|
||||
text_es: '07419',
|
||||
text_pt: '07419',
|
||||
text_pl: '07419',
|
||||
text_ru: '07419',
|
||||
},
|
||||
{
|
||||
id: 'locality.237284076',
|
||||
mapbox_id: 'dXJuOm1ieHBsYzpEaVNxN0E',
|
||||
text_en: 'Hardyston Township',
|
||||
language_en: 'en',
|
||||
text: 'Hardyston Township',
|
||||
language: 'en',
|
||||
text_de: 'Hardyston Township',
|
||||
language_de: 'en',
|
||||
text_fr: 'Hardyston Township',
|
||||
language_fr: 'en',
|
||||
text_nl: 'Hardyston Township',
|
||||
language_nl: 'en',
|
||||
text_it: 'Hardyston Township',
|
||||
language_it: 'en',
|
||||
text_es: 'Hardyston Township',
|
||||
language_es: 'en',
|
||||
text_pt: 'Hardyston Township',
|
||||
text_pl: 'Hardyston Township',
|
||||
language_pl: 'en',
|
||||
text_ru: 'Hardyston Township',
|
||||
},
|
||||
{
|
||||
id: 'place.138242284',
|
||||
mapbox_id: 'dXJuOm1ieHBsYzpDRDFvN0E',
|
||||
wikidata: 'Q1082931',
|
||||
text_en: 'Hamburg',
|
||||
language_en: 'en',
|
||||
text: 'Hamburg',
|
||||
language: 'en',
|
||||
text_de: 'Hamburg',
|
||||
language_de: 'de',
|
||||
text_fr: 'Hamburg',
|
||||
language_fr: 'fr',
|
||||
text_nl: 'Hamburg',
|
||||
language_nl: 'nl',
|
||||
text_it: 'Hamburg',
|
||||
language_it: 'it',
|
||||
text_es: 'Hamburg',
|
||||
language_es: 'es',
|
||||
text_pt: 'Hamburg',
|
||||
language_pt: 'pt',
|
||||
text_pl: 'Hamburg',
|
||||
language_pl: 'nl',
|
||||
text_ru: 'Хамбург',
|
||||
language_ru: 'kk',
|
||||
},
|
||||
{
|
||||
id: 'district.22456044',
|
||||
mapbox_id: 'dXJuOm1ieHBsYzpBVmFtN0E',
|
||||
wikidata: 'Q495998',
|
||||
text_en: 'Sussex County',
|
||||
language_en: 'en',
|
||||
text: 'Sussex County',
|
||||
language: 'en',
|
||||
text_de: 'Sussex County',
|
||||
language_de: 'de',
|
||||
text_fr: 'comté de Sussex',
|
||||
language_fr: 'fr',
|
||||
text_nl: 'Sussex County',
|
||||
language_nl: 'nl',
|
||||
text_it: 'contea di Sussex',
|
||||
language_it: 'it',
|
||||
text_es: 'Condado de Sussex',
|
||||
language_es: 'es',
|
||||
text_pt: 'Condado de Sussex',
|
||||
language_pt: 'pt',
|
||||
text_pl: 'Hrabstwo Sussex',
|
||||
language_pl: 'pl',
|
||||
text_ru: 'Сассекс',
|
||||
language_ru: 'ru',
|
||||
},
|
||||
{
|
||||
id: 'region.156908',
|
||||
mapbox_id: 'dXJuOm1ieHBsYzpBbVRz',
|
||||
wikidata: 'Q1408',
|
||||
short_code: 'US-NJ',
|
||||
text_en: 'New Jersey',
|
||||
language_en: 'en',
|
||||
text: 'New Jersey',
|
||||
language: 'en',
|
||||
text_de: 'New Jersey',
|
||||
language_de: 'de',
|
||||
text_fr: 'New Jersey',
|
||||
language_fr: 'fr',
|
||||
text_nl: 'New Jersey',
|
||||
language_nl: 'nl',
|
||||
text_it: 'New Jersey',
|
||||
language_it: 'it',
|
||||
text_es: 'Nueva Jersey',
|
||||
language_es: 'es',
|
||||
text_pt: 'Nova Jérsia',
|
||||
language_pt: 'pt',
|
||||
text_pl: 'New Jersey',
|
||||
language_pl: 'pl',
|
||||
text_ru: 'Нью-Джерси',
|
||||
language_ru: 'ru',
|
||||
},
|
||||
{
|
||||
id: 'country.8940',
|
||||
mapbox_id: 'dXJuOm1ieHBsYzpJdXc',
|
||||
wikidata: 'Q30',
|
||||
short_code: 'us',
|
||||
text_en: 'United States',
|
||||
language_en: 'en',
|
||||
text: 'United States',
|
||||
language: 'en',
|
||||
text_de: 'Vereinigte Staaten',
|
||||
language_de: 'de',
|
||||
text_fr: 'États-Unis',
|
||||
language_fr: 'fr',
|
||||
text_nl: 'Verenigde Staten van Amerika',
|
||||
language_nl: 'nl',
|
||||
text_it: "Stati Uniti d'America",
|
||||
language_it: 'it',
|
||||
text_es: 'Estados Unidos',
|
||||
language_es: 'es',
|
||||
text_pt: 'Estados Unidos',
|
||||
language_pt: 'pt',
|
||||
text_pl: 'Stany Zjednoczone',
|
||||
language_pl: 'pl',
|
||||
text_ru: 'США',
|
||||
language_ru: 'ru',
|
||||
},
|
||||
],
|
||||
},
|
||||
{
|
||||
id: 'address.4994460186306076',
|
||||
type: 'Feature',
|
||||
place_type: ['address'],
|
||||
relevance: 0.914815,
|
||||
properties: {
|
||||
accuracy: 'street',
|
||||
mapbox_id: 'dXJuOm1ieGFkci1zdHI6MzIyNTIzODItMTM4My00YjAyLThiNTUtOTAwMGFiMDNiYmQy',
|
||||
},
|
||||
text_en: 'Hamburg Road',
|
||||
place_name_en: 'Hamburg Road, Parsippany, New Jersey 07054, United States',
|
||||
text: 'Hamburg Road',
|
||||
place_name: 'Hamburg Road, Parsippany, New Jersey 07054, United States',
|
||||
text_de: 'Hamburg Road',
|
||||
place_name_de:
|
||||
'Hamburg Road, Parsippany-Troy Hills Township, New Jersey 07054, Vereinigte Staaten',
|
||||
text_fr: 'Hamburg Road',
|
||||
place_name_fr: 'Hamburg Road, Parsippany-Troy Hills, New Jersey 07054, États-Unis',
|
||||
text_nl: 'Hamburg Road',
|
||||
place_name_nl:
|
||||
'Hamburg Road, Parsippany-Troy Hills, New Jersey 07054, Verenigde Staten van Amerika',
|
||||
text_it: 'Hamburg Road',
|
||||
place_name_it: "Hamburg Road, Parsippany-Troy Hills, New Jersey 07054, Stati Uniti d'America",
|
||||
text_es: 'Hamburg Road',
|
||||
place_name_es: 'Hamburg Road, Parsippany-Troy Hills, Nueva Jersey 07054, Estados Unidos',
|
||||
text_pt: 'Hamburg Road',
|
||||
place_name_pt: 'Hamburg Road, Parsippany-Troy Hills, Nova Jérsia 07054, Estados Unidos',
|
||||
text_pl: 'Hamburg Road',
|
||||
place_name_pl: 'Hamburg Road, Parsippany-Troy Hills, New Jersey 07054, Stany Zjednoczone',
|
||||
text_ru: 'Hamburg Road',
|
||||
place_name_ru: 'Hamburg Road, Парсиппани-Трой-Хилс, Нью-Джерси 07054, США',
|
||||
center: [-74.436622, 40.859052],
|
||||
geometry: {
|
||||
type: 'Point',
|
||||
coordinates: [-74.436622, 40.859052],
|
||||
},
|
||||
context: [
|
||||
{
|
||||
id: 'postcode.19074796',
|
||||
mapbox_id: 'dXJuOm1ieHBsYzpBU01PN0E',
|
||||
text_en: '07054',
|
||||
text: '07054',
|
||||
text_de: '07054',
|
||||
text_fr: '07054',
|
||||
text_nl: '07054',
|
||||
text_it: '07054',
|
||||
text_es: '07054',
|
||||
text_pt: '07054',
|
||||
text_pl: '07054',
|
||||
text_ru: '07054',
|
||||
},
|
||||
{
|
||||
id: 'place.252618988',
|
||||
mapbox_id: 'dXJuOm1ieHBsYzpEdzZvN0E',
|
||||
wikidata: 'Q532344',
|
||||
text_en: 'Parsippany',
|
||||
language_en: 'en',
|
||||
text: 'Parsippany',
|
||||
language: 'en',
|
||||
text_de: 'Parsippany-Troy Hills Township',
|
||||
language_de: 'de',
|
||||
text_fr: 'Parsippany-Troy Hills',
|
||||
language_fr: 'fr',
|
||||
text_nl: 'Parsippany-Troy Hills',
|
||||
language_nl: 'nl',
|
||||
text_it: 'Parsippany-Troy Hills',
|
||||
language_it: 'it',
|
||||
text_es: 'Parsippany-Troy Hills',
|
||||
language_es: 'es',
|
||||
text_pt: 'Parsippany-Troy Hills',
|
||||
language_pt: 'es',
|
||||
text_pl: 'Parsippany-Troy Hills',
|
||||
language_pl: 'nl',
|
||||
text_ru: 'Парсиппани-Трой-Хилс',
|
||||
language_ru: 'ru',
|
||||
},
|
||||
{
|
||||
id: 'district.16525036',
|
||||
mapbox_id: 'dXJuOm1ieHBsYzovQ2Jz',
|
||||
wikidata: 'Q498163',
|
||||
text_en: 'Morris County',
|
||||
language_en: 'en',
|
||||
text: 'Morris County',
|
||||
language: 'en',
|
||||
text_de: 'Morris County',
|
||||
language_de: 'de',
|
||||
text_fr: 'comté de Morris',
|
||||
language_fr: 'fr',
|
||||
text_nl: 'Morris County',
|
||||
language_nl: 'nl',
|
||||
text_it: 'contea di Morris',
|
||||
language_it: 'it',
|
||||
text_es: 'Condado de Morris',
|
||||
language_es: 'es',
|
||||
text_pt: 'Condado de Morris',
|
||||
language_pt: 'pt',
|
||||
text_pl: 'Hrabstwo Morris',
|
||||
language_pl: 'pl',
|
||||
text_ru: 'Моррис',
|
||||
language_ru: 'ru',
|
||||
},
|
||||
{
|
||||
id: 'region.156908',
|
||||
mapbox_id: 'dXJuOm1ieHBsYzpBbVRz',
|
||||
wikidata: 'Q1408',
|
||||
short_code: 'US-NJ',
|
||||
text_en: 'New Jersey',
|
||||
language_en: 'en',
|
||||
text: 'New Jersey',
|
||||
language: 'en',
|
||||
text_de: 'New Jersey',
|
||||
language_de: 'de',
|
||||
text_fr: 'New Jersey',
|
||||
language_fr: 'fr',
|
||||
text_nl: 'New Jersey',
|
||||
language_nl: 'nl',
|
||||
text_it: 'New Jersey',
|
||||
language_it: 'it',
|
||||
text_es: 'Nueva Jersey',
|
||||
language_es: 'es',
|
||||
text_pt: 'Nova Jérsia',
|
||||
language_pt: 'pt',
|
||||
text_pl: 'New Jersey',
|
||||
language_pl: 'pl',
|
||||
text_ru: 'Нью-Джерси',
|
||||
language_ru: 'ru',
|
||||
},
|
||||
{
|
||||
id: 'country.8940',
|
||||
mapbox_id: 'dXJuOm1ieHBsYzpJdXc',
|
||||
wikidata: 'Q30',
|
||||
short_code: 'us',
|
||||
text_en: 'United States',
|
||||
language_en: 'en',
|
||||
text: 'United States',
|
||||
language: 'en',
|
||||
text_de: 'Vereinigte Staaten',
|
||||
language_de: 'de',
|
||||
text_fr: 'États-Unis',
|
||||
language_fr: 'fr',
|
||||
text_nl: 'Verenigde Staten van Amerika',
|
||||
language_nl: 'nl',
|
||||
text_it: "Stati Uniti d'America",
|
||||
language_it: 'it',
|
||||
text_es: 'Estados Unidos',
|
||||
language_es: 'es',
|
||||
text_pt: 'Estados Unidos',
|
||||
language_pt: 'pt',
|
||||
text_pl: 'Stany Zjednoczone',
|
||||
language_pl: 'pl',
|
||||
text_ru: 'США',
|
||||
language_ru: 'ru',
|
||||
},
|
||||
],
|
||||
},
|
||||
{
|
||||
id: 'address.7206046822993882',
|
||||
type: 'Feature',
|
||||
place_type: ['address'],
|
||||
relevance: 0.914815,
|
||||
properties: {
|
||||
accuracy: 'street',
|
||||
mapbox_id: 'dXJuOm1ieGFkci1zdHI6OGNiMjYzOWMtZDAxYS00OWY3LThmNTEtZTllMmJjMDY4MWU2',
|
||||
},
|
||||
text_en: 'Hamburg Avenue',
|
||||
place_name_en: 'Hamburg Avenue, Egg Harbor City, New Jersey 08215, United States',
|
||||
text: 'Hamburg Avenue',
|
||||
place_name: 'Hamburg Avenue, Egg Harbor City, New Jersey 08215, United States',
|
||||
text_de: 'Hamburg Avenue',
|
||||
place_name_de: 'Hamburg Avenue, Egg Harbor City, New Jersey 08215, Vereinigte Staaten',
|
||||
text_fr: 'Hamburg Avenue',
|
||||
place_name_fr: 'Hamburg Avenue, Egg Harbor City, New Jersey 08215, États-Unis',
|
||||
text_nl: 'Hamburg Avenue',
|
||||
place_name_nl:
|
||||
'Hamburg Avenue, Egg Harbor City, New Jersey 08215, Verenigde Staten van Amerika',
|
||||
text_it: 'Hamburg Avenue',
|
||||
place_name_it: "Hamburg Avenue, Egg Harbor City, New Jersey 08215, Stati Uniti d'America",
|
||||
text_es: 'Hamburg Avenue',
|
||||
place_name_es: 'Hamburg Avenue, Egg Harbor City, Nueva Jersey 08215, Estados Unidos',
|
||||
text_pt: 'Hamburg Avenue',
|
||||
place_name_pt: 'Hamburg Avenue, Egg Harbor City, Nova Jérsia 08215, Estados Unidos',
|
||||
text_pl: 'Hamburg Avenue',
|
||||
place_name_pl: 'Hamburg Avenue, Egg Harbor City, New Jersey 08215, Stany Zjednoczone',
|
||||
text_ru: 'Hamburg Avenue',
|
||||
place_name_ru: 'Hamburg Avenue, Эгг Харбор Сити, Нью-Джерси 08215, США',
|
||||
center: [-74.634456, 39.551661],
|
||||
geometry: {
|
||||
type: 'Point',
|
||||
coordinates: [-74.634456, 39.551661],
|
||||
},
|
||||
context: [
|
||||
{
|
||||
id: 'postcode.22638316',
|
||||
mapbox_id: 'dXJuOm1ieHBsYzpBVmx1N0E',
|
||||
text_en: '08215',
|
||||
text: '08215',
|
||||
text_de: '08215',
|
||||
text_fr: '08215',
|
||||
text_nl: '08215',
|
||||
text_it: '08215',
|
||||
text_es: '08215',
|
||||
text_pt: '08215',
|
||||
text_pl: '08215',
|
||||
text_ru: '08215',
|
||||
},
|
||||
{
|
||||
id: 'locality.378645228',
|
||||
mapbox_id: 'dXJuOm1ieHBsYzpGcEdxN0E',
|
||||
text_en: 'Mullica Township',
|
||||
language_en: 'en',
|
||||
text: 'Mullica Township',
|
||||
language: 'en',
|
||||
text_de: 'Mullica Township',
|
||||
language_de: 'en',
|
||||
text_fr: 'Mullica Township',
|
||||
language_fr: 'en',
|
||||
text_nl: 'Mullica Township',
|
||||
language_nl: 'en',
|
||||
text_it: 'Mullica Township',
|
||||
language_it: 'en',
|
||||
text_es: 'Mullica Township',
|
||||
language_es: 'en',
|
||||
text_pt: 'Mullica Township',
|
||||
text_pl: 'Mullica Township',
|
||||
language_pl: 'en',
|
||||
text_ru: 'Mullica Township',
|
||||
},
|
||||
{
|
||||
id: 'place.97724652',
|
||||
mapbox_id: 'dXJuOm1ieHBsYzpCZE1vN0E',
|
||||
wikidata: 'Q1082961',
|
||||
text_en: 'Egg Harbor City',
|
||||
language_en: 'en',
|
||||
text: 'Egg Harbor City',
|
||||
language: 'en',
|
||||
text_de: 'Egg Harbor City',
|
||||
language_de: 'de',
|
||||
text_fr: 'Egg Harbor City',
|
||||
language_fr: 'fr',
|
||||
text_nl: 'Egg Harbor City',
|
||||
language_nl: 'nl',
|
||||
text_it: 'Egg Harbor City',
|
||||
language_it: 'it',
|
||||
text_es: 'Egg Harbor City',
|
||||
language_es: 'es',
|
||||
text_pt: 'Egg Harbor City',
|
||||
language_pt: 'pt',
|
||||
text_pl: 'Egg Harbor City',
|
||||
language_pl: 'pl',
|
||||
text_ru: 'Эгг Харбор Сити',
|
||||
language_ru: 'kk',
|
||||
},
|
||||
{
|
||||
id: 'district.837356',
|
||||
mapbox_id: 'dXJuOm1ieHBsYzpETWJz',
|
||||
wikidata: 'Q497928',
|
||||
text_en: 'Atlantic County',
|
||||
language_en: 'en',
|
||||
text: 'Atlantic County',
|
||||
language: 'en',
|
||||
text_de: 'Atlantic County',
|
||||
language_de: 'de',
|
||||
text_fr: "comté d'Atlantic",
|
||||
language_fr: 'fr',
|
||||
text_nl: 'Atlantic County',
|
||||
language_nl: 'nl',
|
||||
text_it: 'contea di Atlantic',
|
||||
language_it: 'it',
|
||||
text_es: 'Condado de Atlantic',
|
||||
language_es: 'es',
|
||||
text_pt: 'Condado de Atlantic',
|
||||
language_pt: 'pt',
|
||||
text_pl: 'Hrabstwo Atlantic',
|
||||
language_pl: 'pl',
|
||||
text_ru: 'Атлантик',
|
||||
language_ru: 'ru',
|
||||
},
|
||||
{
|
||||
id: 'region.156908',
|
||||
mapbox_id: 'dXJuOm1ieHBsYzpBbVRz',
|
||||
wikidata: 'Q1408',
|
||||
short_code: 'US-NJ',
|
||||
text_en: 'New Jersey',
|
||||
language_en: 'en',
|
||||
text: 'New Jersey',
|
||||
language: 'en',
|
||||
text_de: 'New Jersey',
|
||||
language_de: 'de',
|
||||
text_fr: 'New Jersey',
|
||||
language_fr: 'fr',
|
||||
text_nl: 'New Jersey',
|
||||
language_nl: 'nl',
|
||||
text_it: 'New Jersey',
|
||||
language_it: 'it',
|
||||
text_es: 'Nueva Jersey',
|
||||
language_es: 'es',
|
||||
text_pt: 'Nova Jérsia',
|
||||
language_pt: 'pt',
|
||||
text_pl: 'New Jersey',
|
||||
language_pl: 'pl',
|
||||
text_ru: 'Нью-Джерси',
|
||||
language_ru: 'ru',
|
||||
},
|
||||
{
|
||||
id: 'country.8940',
|
||||
mapbox_id: 'dXJuOm1ieHBsYzpJdXc',
|
||||
wikidata: 'Q30',
|
||||
short_code: 'us',
|
||||
text_en: 'United States',
|
||||
language_en: 'en',
|
||||
text: 'United States',
|
||||
language: 'en',
|
||||
text_de: 'Vereinigte Staaten',
|
||||
language_de: 'de',
|
||||
text_fr: 'États-Unis',
|
||||
language_fr: 'fr',
|
||||
text_nl: 'Verenigde Staten van Amerika',
|
||||
language_nl: 'nl',
|
||||
text_it: "Stati Uniti d'America",
|
||||
language_it: 'it',
|
||||
text_es: 'Estados Unidos',
|
||||
language_es: 'es',
|
||||
text_pt: 'Estados Unidos',
|
||||
language_pt: 'pt',
|
||||
text_pl: 'Stany Zjednoczone',
|
||||
language_pl: 'pl',
|
||||
text_ru: 'США',
|
||||
language_ru: 'ru',
|
||||
},
|
||||
],
|
||||
},
|
||||
],
|
||||
attribution:
|
||||
'NOTICE: © 2025 Mapbox and its suppliers. All rights reserved. Use of this data is subject to the Mapbox Terms of Service (https://www.mapbox.com/about/maps/). This response and the information it contains may not be retained.',
|
||||
}
|
||||
11
backend/test/fetchMock/index.ts
Normal file
11
backend/test/fetchMock/index.ts
Normal file
@ -0,0 +1,11 @@
|
||||
import type { Context } from '@src/context'
|
||||
|
||||
import { mapboxResponses } from './mapboxResponses'
|
||||
|
||||
export const fetchMock: Context['fetch'] = (url) => {
|
||||
const response: unknown = mapboxResponses[url] // eslint-disable-line security/detect-object-injection
|
||||
if (!response) {
|
||||
throw new Error(`Missing response for url: ${url}`)
|
||||
}
|
||||
return Promise.resolve(response)
|
||||
}
|
||||
653
backend/test/fetchMock/leipzig.ts
Normal file
653
backend/test/fetchMock/leipzig.ts
Normal file
@ -0,0 +1,653 @@
|
||||
export const leipzig = {
|
||||
type: 'FeatureCollection',
|
||||
query: ['leipzig'],
|
||||
features: [
|
||||
{
|
||||
id: 'place.45697082',
|
||||
type: 'Feature',
|
||||
place_type: ['place'],
|
||||
relevance: 1,
|
||||
properties: {
|
||||
mapbox_id: 'dXJuOm1ieHBsYzpBcmxJT2c',
|
||||
wikidata: 'Q2079',
|
||||
},
|
||||
text_en: 'Leipzig',
|
||||
language_en: 'en',
|
||||
place_name_en: 'Leipzig, Saxony, Germany',
|
||||
text: 'Leipzig',
|
||||
language: 'en',
|
||||
place_name: 'Leipzig, Saxony, Germany',
|
||||
text_de: 'Leipzig',
|
||||
language_de: 'de',
|
||||
place_name_de: 'Leipzig, Sachsen, Deutschland',
|
||||
text_fr: 'Leipzig',
|
||||
language_fr: 'fr',
|
||||
place_name_fr: 'Leipzig, Saxe, Allemagne',
|
||||
text_nl: 'Leipzig',
|
||||
language_nl: 'nl',
|
||||
place_name_nl: 'Leipzig, Saksen, Duitsland',
|
||||
text_it: 'Lipsia',
|
||||
language_it: 'it',
|
||||
place_name_it: 'Lipsia, Sassonia, Germania',
|
||||
text_es: 'Leipzig',
|
||||
language_es: 'es',
|
||||
place_name_es: 'Leipzig, Sajonia, Alemania',
|
||||
text_pt: 'Leipzig',
|
||||
language_pt: 'pt',
|
||||
place_name_pt: 'Leipzig, Saxónia, Alemanha',
|
||||
text_pl: 'Lipsk',
|
||||
language_pl: 'pl',
|
||||
place_name_pl: 'Lipsk, Saksonia, Niemcy',
|
||||
text_ru: 'Лейпциг',
|
||||
language_ru: 'ru',
|
||||
place_name_ru: 'Лейпциг, Саксония, Германия',
|
||||
bbox: [12.236476, 51.23808, 12.542577, 51.447065],
|
||||
center: [12.375101, 51.34083],
|
||||
geometry: {
|
||||
type: 'Point',
|
||||
coordinates: [12.375101, 51.34083],
|
||||
},
|
||||
context: [
|
||||
{
|
||||
id: 'region.74810',
|
||||
mapbox_id: 'dXJuOm1ieHBsYzpBU1E2',
|
||||
wikidata: 'Q1202',
|
||||
short_code: 'DE-SN',
|
||||
text_en: 'Saxony',
|
||||
language_en: 'en',
|
||||
text: 'Saxony',
|
||||
language: 'en',
|
||||
text_de: 'Sachsen',
|
||||
language_de: 'de',
|
||||
text_fr: 'Saxe',
|
||||
language_fr: 'fr',
|
||||
text_nl: 'Saksen',
|
||||
language_nl: 'nl',
|
||||
text_it: 'Sassonia',
|
||||
language_it: 'it',
|
||||
text_es: 'Sajonia',
|
||||
language_es: 'es',
|
||||
text_pt: 'Saxónia',
|
||||
language_pt: 'pt',
|
||||
text_pl: 'Saksonia',
|
||||
language_pl: 'pl',
|
||||
text_ru: 'Саксония',
|
||||
language_ru: 'ru',
|
||||
},
|
||||
{
|
||||
id: 'country.8762',
|
||||
mapbox_id: 'dXJuOm1ieHBsYzpJam8',
|
||||
wikidata: 'Q183',
|
||||
short_code: 'de',
|
||||
text_en: 'Germany',
|
||||
language_en: 'en',
|
||||
text: 'Germany',
|
||||
language: 'en',
|
||||
text_de: 'Deutschland',
|
||||
language_de: 'de',
|
||||
text_fr: 'Allemagne',
|
||||
language_fr: 'fr',
|
||||
text_nl: 'Duitsland',
|
||||
language_nl: 'nl',
|
||||
text_it: 'Germania',
|
||||
language_it: 'it',
|
||||
text_es: 'Alemania',
|
||||
language_es: 'es',
|
||||
text_pt: 'Alemanha',
|
||||
language_pt: 'pt',
|
||||
text_pl: 'Niemcy',
|
||||
language_pl: 'pl',
|
||||
text_ru: 'Германия',
|
||||
language_ru: 'ru',
|
||||
},
|
||||
],
|
||||
},
|
||||
{
|
||||
id: 'place.18655359',
|
||||
type: 'Feature',
|
||||
place_type: ['place'],
|
||||
relevance: 1,
|
||||
properties: {
|
||||
mapbox_id: 'dXJuOm1ieHBsYzpBUnlvZnc',
|
||||
wikidata: 'Q4257515',
|
||||
},
|
||||
text_en: 'Leipzig',
|
||||
language_en: 'de',
|
||||
place_name_en: 'Leipzig, Varnensky District, Chelyabinsk, Russia',
|
||||
text: 'Leipzig',
|
||||
language: 'de',
|
||||
place_name: 'Leipzig, Varnensky District, Chelyabinsk, Russia',
|
||||
text_de: 'Leipzig',
|
||||
language_de: 'de',
|
||||
place_name_de: 'Leipzig, Warnenski rajon, Oblast Tscheljabinsk, Russland',
|
||||
text_fr: 'Leipzig',
|
||||
language_fr: 'nl',
|
||||
place_name_fr: 'Leipzig, Raïon de Varna, oblast de Tcheliabinsk, Russie',
|
||||
text_nl: 'Leipzig',
|
||||
language_nl: 'nl',
|
||||
place_name_nl: 'Leipzig, Varnenskiy rayon, Oblast Tsjeljabinsk, Rusland',
|
||||
text_it: 'Лейпциг',
|
||||
place_name_it: "Лейпциг, Varnenskij rajon, oblast' di Čeljabinsk, Russia",
|
||||
text_es: 'Leipzig',
|
||||
language_es: 'nl',
|
||||
place_name_es: 'Leipzig, Raïon de Varna, Cheliábinsk, Rusia',
|
||||
text_pt: 'Лейпциг',
|
||||
place_name_pt: 'Лейпциг, Varnenskij rajon, Oblast de Cheliabinsk, Rússia',
|
||||
text_pl: 'Leipzig',
|
||||
language_pl: 'nl',
|
||||
place_name_pl: 'Leipzig, Varnenskiy rayon, Obwód czelabiński, Rosja',
|
||||
text_ru: 'Лейпциг',
|
||||
language_ru: 'ru',
|
||||
place_name_ru: 'Лейпциг, Варненский район, Челябинская область, Россия',
|
||||
center: [61.049587, 53.568829],
|
||||
geometry: {
|
||||
type: 'Point',
|
||||
coordinates: [61.049587, 53.568829],
|
||||
},
|
||||
context: [
|
||||
{
|
||||
id: 'district.1967810',
|
||||
mapbox_id: 'dXJuOm1ieHBsYzpIZ2JD',
|
||||
wikidata: 'Q1658354',
|
||||
text_en: 'Varnensky District',
|
||||
language_en: 'en',
|
||||
text: 'Varnensky District',
|
||||
language: 'en',
|
||||
text_de: 'Warnenski rajon',
|
||||
language_de: 'de',
|
||||
text_fr: 'Raïon de Varna',
|
||||
language_fr: 'fr',
|
||||
text_nl: 'Varnenskiy rayon',
|
||||
language_nl: 'nl',
|
||||
text_it: 'Varnenskij rajon',
|
||||
language_it: 'it',
|
||||
text_es: 'Raïon de Varna',
|
||||
language_es: 'fr',
|
||||
text_pt: 'Varnenskij rajon',
|
||||
language_pt: 'it',
|
||||
text_pl: 'Varnenskiy rayon',
|
||||
language_pl: 'nl',
|
||||
text_ru: 'Варненский район',
|
||||
language_ru: 'ru',
|
||||
},
|
||||
{
|
||||
id: 'region.468162',
|
||||
mapbox_id: 'dXJuOm1ieHBsYzpCeVRD',
|
||||
wikidata: 'Q5714',
|
||||
short_code: 'RU-CHE',
|
||||
text_en: 'Chelyabinsk',
|
||||
language_en: 'en',
|
||||
text: 'Chelyabinsk',
|
||||
language: 'en',
|
||||
text_de: 'Oblast Tscheljabinsk',
|
||||
language_de: 'de',
|
||||
text_fr: 'oblast de Tcheliabinsk',
|
||||
language_fr: 'fr',
|
||||
text_nl: 'Oblast Tsjeljabinsk',
|
||||
language_nl: 'nl',
|
||||
text_it: "oblast' di Čeljabinsk",
|
||||
language_it: 'it',
|
||||
text_es: 'Cheliábinsk',
|
||||
language_es: 'es',
|
||||
text_pt: 'Oblast de Cheliabinsk',
|
||||
language_pt: 'pt',
|
||||
text_pl: 'Obwód czelabiński',
|
||||
language_pl: 'pl',
|
||||
text_ru: 'Челябинская область',
|
||||
language_ru: 'ru',
|
||||
},
|
||||
{
|
||||
id: 'country.8898',
|
||||
mapbox_id: 'dXJuOm1ieHBsYzpJc0k',
|
||||
wikidata: 'Q159',
|
||||
short_code: 'ru',
|
||||
text_en: 'Russia',
|
||||
language_en: 'en',
|
||||
text: 'Russia',
|
||||
language: 'en',
|
||||
text_de: 'Russland',
|
||||
language_de: 'de',
|
||||
text_fr: 'Russie',
|
||||
language_fr: 'fr',
|
||||
text_nl: 'Rusland',
|
||||
language_nl: 'nl',
|
||||
text_it: 'Russia',
|
||||
language_it: 'it',
|
||||
text_es: 'Rusia',
|
||||
language_es: 'es',
|
||||
text_pt: 'Rússia',
|
||||
language_pt: 'pt',
|
||||
text_pl: 'Rosja',
|
||||
language_pl: 'pl',
|
||||
text_ru: 'Россия',
|
||||
language_ru: 'ru',
|
||||
},
|
||||
],
|
||||
},
|
||||
{
|
||||
id: 'address.7058830234246124',
|
||||
type: 'Feature',
|
||||
place_type: ['address'],
|
||||
relevance: 1,
|
||||
properties: {
|
||||
accuracy: 'street',
|
||||
mapbox_id: 'dXJuOm1ieGFkci1zdHI6OGQ4MmQ0YmYtNWViYy00OTY2LWE1MTMtNDlkYzNiNDBhZjhm',
|
||||
},
|
||||
text_en: 'Leipzig Way',
|
||||
place_name_en: 'Leipzig Way, Greenwith South Australia 5125, Australia',
|
||||
text: 'Leipzig Way',
|
||||
place_name: 'Leipzig Way, Greenwith South Australia 5125, Australia',
|
||||
text_de: 'Leipzig Way',
|
||||
place_name_de: 'Leipzig Way, Greenwith South Australia 5125, Australien',
|
||||
text_fr: 'Leipzig Way',
|
||||
place_name_fr: 'Leipzig Way, Greenwith Australie-Méridionale 5125, Australie',
|
||||
text_nl: 'Leipzig Way',
|
||||
place_name_nl: 'Leipzig Way, Greenwith Zuid-Australië 5125, Australië',
|
||||
text_it: 'Leipzig Way',
|
||||
place_name_it: 'Leipzig Way, Greenwith Australia Meridionale 5125, Australia',
|
||||
text_es: 'Leipzig Way',
|
||||
place_name_es: 'Leipzig Way, Greenwith Australia Meridional 5125, Australia',
|
||||
text_pt: 'Leipzig Way',
|
||||
place_name_pt: 'Leipzig Way, Greenwith Austrália Meridional 5125, Austrália',
|
||||
text_pl: 'Leipzig Way',
|
||||
place_name_pl: 'Leipzig Way, Greenwith Australia Południowa 5125, Australia',
|
||||
text_ru: 'Leipzig Way',
|
||||
place_name_ru: 'Leipzig Way, Greenwith Южная Австралия 5125, Австралия',
|
||||
center: [138.709402, -34.765821],
|
||||
geometry: {
|
||||
type: 'Point',
|
||||
coordinates: [138.709402, -34.765821],
|
||||
},
|
||||
context: [
|
||||
{
|
||||
id: 'postcode.15560206',
|
||||
mapbox_id: 'dXJuOm1ieHBsYzo3VzRP',
|
||||
text_en: '5125',
|
||||
text: '5125',
|
||||
text_de: '5125',
|
||||
text_fr: '5125',
|
||||
text_nl: '5125',
|
||||
text_it: '5125',
|
||||
text_es: '5125',
|
||||
text_pt: '5125',
|
||||
text_pl: '5125',
|
||||
text_ru: '5125',
|
||||
},
|
||||
{
|
||||
id: 'locality.265447950',
|
||||
mapbox_id: 'dXJuOm1ieHBsYzpEOUpxRGc',
|
||||
wikidata: 'Q5604921',
|
||||
text_en: 'Greenwith',
|
||||
language_en: 'en',
|
||||
text: 'Greenwith',
|
||||
language: 'en',
|
||||
text_de: 'Greenwith',
|
||||
language_de: 'en',
|
||||
text_fr: 'Greenwith',
|
||||
language_fr: 'fr',
|
||||
text_nl: 'Greenwith',
|
||||
language_nl: 'fr',
|
||||
text_it: 'Greenwith',
|
||||
language_it: 'fr',
|
||||
text_es: 'Greenwith',
|
||||
language_es: 'fr',
|
||||
text_pt: 'Greenwith',
|
||||
text_pl: 'Greenwith',
|
||||
language_pl: 'en',
|
||||
text_ru: 'Greenwith',
|
||||
},
|
||||
{
|
||||
id: 'place.51214',
|
||||
mapbox_id: 'dXJuOm1ieHBsYzp5QTQ',
|
||||
wikidata: 'Q5112',
|
||||
text_en: 'Adelaide',
|
||||
language_en: 'en',
|
||||
text: 'Adelaide',
|
||||
language: 'en',
|
||||
text_de: 'Adelaide',
|
||||
language_de: 'de',
|
||||
text_fr: 'Adélaïde',
|
||||
language_fr: 'fr',
|
||||
text_nl: 'Adelaide',
|
||||
language_nl: 'nl',
|
||||
text_it: 'Adelaide',
|
||||
language_it: 'it',
|
||||
text_es: 'Adelaida',
|
||||
language_es: 'es',
|
||||
text_pt: 'Adelaide',
|
||||
language_pt: 'pt',
|
||||
text_pl: 'Adelaide',
|
||||
language_pl: 'pl',
|
||||
text_ru: 'Аделаида',
|
||||
language_ru: 'ru',
|
||||
},
|
||||
{
|
||||
id: 'region.66574',
|
||||
mapbox_id: 'dXJuOm1ieHBsYzpBUVFP',
|
||||
wikidata: 'Q35715',
|
||||
short_code: 'AU-SA',
|
||||
text_en: 'South Australia',
|
||||
language_en: 'en',
|
||||
text: 'South Australia',
|
||||
language: 'en',
|
||||
text_de: 'South Australia',
|
||||
language_de: 'de',
|
||||
text_fr: 'Australie-Méridionale',
|
||||
language_fr: 'fr',
|
||||
text_nl: 'Zuid-Australië',
|
||||
language_nl: 'nl',
|
||||
text_it: 'Australia Meridionale',
|
||||
language_it: 'it',
|
||||
text_es: 'Australia Meridional',
|
||||
language_es: 'es',
|
||||
text_pt: 'Austrália Meridional',
|
||||
language_pt: 'pt',
|
||||
text_pl: 'Australia Południowa',
|
||||
language_pl: 'pl',
|
||||
text_ru: 'Южная Австралия',
|
||||
language_ru: 'ru',
|
||||
},
|
||||
{
|
||||
id: 'country.8718',
|
||||
mapbox_id: 'dXJuOm1ieHBsYzpJZzQ',
|
||||
wikidata: 'Q408',
|
||||
short_code: 'au',
|
||||
text_en: 'Australia',
|
||||
language_en: 'en',
|
||||
text: 'Australia',
|
||||
language: 'en',
|
||||
text_de: 'Australien',
|
||||
language_de: 'de',
|
||||
text_fr: 'Australie',
|
||||
language_fr: 'fr',
|
||||
text_nl: 'Australië',
|
||||
language_nl: 'nl',
|
||||
text_it: 'Australia',
|
||||
language_it: 'it',
|
||||
text_es: 'Australia',
|
||||
language_es: 'es',
|
||||
text_pt: 'Austrália',
|
||||
language_pt: 'pt',
|
||||
text_pl: 'Australia',
|
||||
language_pl: 'pl',
|
||||
text_ru: 'Австралия',
|
||||
language_ru: 'ru',
|
||||
},
|
||||
],
|
||||
},
|
||||
{
|
||||
id: 'address.3203988662803706',
|
||||
type: 'Feature',
|
||||
place_type: ['address'],
|
||||
relevance: 1,
|
||||
properties: {
|
||||
accuracy: 'street',
|
||||
mapbox_id: 'dXJuOm1ieGFkci1zdHI6NGUzNzNkZjItNmI4Ny00ODdkLWI3MzQtZjVkMGJlMjI1NjA5',
|
||||
},
|
||||
text_en: 'Leipzig',
|
||||
place_name_en: 'Leipzig, Osorno, Los Lagos 5290000, Chile',
|
||||
text: 'Leipzig',
|
||||
place_name: 'Leipzig, Osorno, Los Lagos 5290000, Chile',
|
||||
text_de: 'Leipzig',
|
||||
place_name_de: 'Leipzig, Osorno, Región de Los Lagos 5290000, Chile',
|
||||
text_fr: 'Leipzig',
|
||||
place_name_fr: 'Leipzig, Osorno, Région des Lacs 5290000, Chili',
|
||||
text_nl: 'Leipzig',
|
||||
place_name_nl: 'Leipzig, Osorno, Los Lagos 5290000, Chili',
|
||||
text_it: 'Leipzig',
|
||||
place_name_it: 'Leipzig, Osorno, regione di Los Lagos 5290000, Cile',
|
||||
text_es: 'Leipzig',
|
||||
place_name_es: 'Leipzig, Osorno, Región de Los Lagos 5290000, Chile',
|
||||
text_pt: 'Leipzig',
|
||||
place_name_pt: 'Leipzig, Osorno, Região de Los Lagos 5290000, Chile',
|
||||
text_pl: 'Leipzig',
|
||||
place_name_pl: 'Leipzig, Osorno, Los Lagos 5290000, Chile',
|
||||
text_ru: 'Leipzig',
|
||||
place_name_ru: 'Leipzig, Осорно, Лос-Лагос 5290000, Чили',
|
||||
center: [-73.1087, -40.570176],
|
||||
geometry: {
|
||||
type: 'Point',
|
||||
coordinates: [-73.1087, -40.570176],
|
||||
},
|
||||
context: [
|
||||
{
|
||||
id: 'postcode.2002479',
|
||||
mapbox_id: 'dXJuOm1ieHBsYzpIbzR2',
|
||||
text_en: '5290000',
|
||||
text: '5290000',
|
||||
text_de: '5290000',
|
||||
text_fr: '5290000',
|
||||
text_nl: '5290000',
|
||||
text_it: '5290000',
|
||||
text_es: '5290000',
|
||||
text_pt: '5290000',
|
||||
text_pl: '5290000',
|
||||
text_ru: '5290000',
|
||||
},
|
||||
{
|
||||
id: 'locality.2656815',
|
||||
mapbox_id: 'dXJuOm1ieHBsYzpLSW92',
|
||||
text_en: 'Cementerio Municipal',
|
||||
text: 'Cementerio Municipal',
|
||||
text_de: 'Cementerio Municipal',
|
||||
text_fr: 'Cementerio Municipal',
|
||||
text_nl: 'Cementerio Municipal',
|
||||
text_it: 'Cementerio Municipal',
|
||||
text_es: 'Cementerio Municipal',
|
||||
text_pt: 'Cementerio Municipal',
|
||||
text_pl: 'Cementerio Municipal',
|
||||
text_ru: 'Cementerio Municipal',
|
||||
},
|
||||
{
|
||||
id: 'place.1574959',
|
||||
mapbox_id: 'dXJuOm1ieHBsYzpHQWd2',
|
||||
wikidata: 'Q51059',
|
||||
text_en: 'Osorno',
|
||||
language_en: 'en',
|
||||
text: 'Osorno',
|
||||
language: 'en',
|
||||
text_de: 'Osorno',
|
||||
language_de: 'de',
|
||||
text_fr: 'Osorno',
|
||||
language_fr: 'fr',
|
||||
text_nl: 'Osorno',
|
||||
language_nl: 'nl',
|
||||
text_it: 'Osorno',
|
||||
language_it: 'it',
|
||||
text_es: 'Osorno',
|
||||
language_es: 'es',
|
||||
text_pt: 'Osorno',
|
||||
language_pt: 'pt',
|
||||
text_pl: 'Osorno',
|
||||
language_pl: 'pl',
|
||||
text_ru: 'Осорно',
|
||||
language_ru: 'ru',
|
||||
},
|
||||
{
|
||||
id: 'region.99375',
|
||||
mapbox_id: 'dXJuOm1ieHBsYzpBWVF2',
|
||||
wikidata: 'Q2178',
|
||||
short_code: 'CL-LL',
|
||||
text_en: 'Los Lagos',
|
||||
language_en: 'en',
|
||||
text: 'Los Lagos',
|
||||
language: 'en',
|
||||
text_de: 'Región de Los Lagos',
|
||||
language_de: 'de',
|
||||
text_fr: 'Région des Lacs',
|
||||
language_fr: 'fr',
|
||||
text_nl: 'Los Lagos',
|
||||
language_nl: 'nl',
|
||||
text_it: 'regione di Los Lagos',
|
||||
language_it: 'it',
|
||||
text_es: 'Región de Los Lagos',
|
||||
language_es: 'es',
|
||||
text_pt: 'Região de Los Lagos',
|
||||
language_pt: 'pt',
|
||||
text_pl: 'Los Lagos',
|
||||
language_pl: 'pl',
|
||||
text_ru: 'Лос-Лагос',
|
||||
language_ru: 'ru',
|
||||
},
|
||||
{
|
||||
id: 'country.8751',
|
||||
mapbox_id: 'dXJuOm1ieHBsYzpJaTg',
|
||||
wikidata: 'Q298',
|
||||
short_code: 'cl',
|
||||
text_en: 'Chile',
|
||||
language_en: 'en',
|
||||
text: 'Chile',
|
||||
language: 'en',
|
||||
text_de: 'Chile',
|
||||
language_de: 'de',
|
||||
text_fr: 'Chili',
|
||||
language_fr: 'fr',
|
||||
text_nl: 'Chili',
|
||||
language_nl: 'nl',
|
||||
text_it: 'Cile',
|
||||
language_it: 'it',
|
||||
text_es: 'Chile',
|
||||
language_es: 'es',
|
||||
text_pt: 'Chile',
|
||||
language_pt: 'pt',
|
||||
text_pl: 'Chile',
|
||||
language_pl: 'pl',
|
||||
text_ru: 'Чили',
|
||||
language_ru: 'ru',
|
||||
},
|
||||
],
|
||||
},
|
||||
{
|
||||
id: 'address.7521078080010634',
|
||||
type: 'Feature',
|
||||
place_type: ['address'],
|
||||
relevance: 1,
|
||||
properties: {
|
||||
accuracy: 'street',
|
||||
mapbox_id: 'dXJuOm1ieGFkci1zdHI6OTFkZjliYjctNWJiZC00YTk3LTk1ZjktOTZjMGVkNzU3MjY3',
|
||||
},
|
||||
text_en: 'Leipziger Straße',
|
||||
language_en: 'de',
|
||||
place_name_en: 'Leipziger Straße, 43003 Chomutov, Ústí nad Labem, Czech Republic',
|
||||
text: 'Leipziger Straße',
|
||||
language: 'de',
|
||||
place_name: 'Leipziger Straße, 43003 Chomutov, Ústí nad Labem, Czech Republic',
|
||||
text_de: 'Leipziger Straße',
|
||||
language_de: 'de',
|
||||
place_name_de: 'Leipziger Straße, 43003 Chomutov, Ústecký kraj, Tschechien',
|
||||
text_fr: 'Lipská',
|
||||
place_name_fr: "Lipská, 43003 Chomutov, région d'Ústí nad Labem, Tchéquie",
|
||||
text_nl: 'Lipská',
|
||||
place_name_nl: 'Lipská, 43003 Chomutov, Ústí nad Labem, Tsjechië',
|
||||
text_it: 'Lipská',
|
||||
place_name_it: 'Lipská, 43003 Chomutov, regione di Ústí nad Labem, Repubblica Ceca',
|
||||
text_es: 'Lipská',
|
||||
place_name_es: 'Lipská, 43003 Chomutov, Región de Ústí nad Labem, República Checa',
|
||||
text_pt: 'Lipská',
|
||||
place_name_pt: 'Lipská, 43003 Chomutov, Ústí nad Labem, Chéquia',
|
||||
text_pl: 'Lipská',
|
||||
place_name_pl: 'Lipská, 43003 Chomutov, Kraj ustecki, Czechy',
|
||||
text_ru: 'Lipská',
|
||||
place_name_ru: 'Lipská, 43003 Хомутов, Устецкий край, Чехия',
|
||||
center: [13.385229, 50.472246],
|
||||
geometry: {
|
||||
type: 'Point',
|
||||
coordinates: [13.385229, 50.472246],
|
||||
},
|
||||
context: [
|
||||
{
|
||||
id: 'postcode.7521078080010634',
|
||||
text_en: '43003',
|
||||
text: '43003',
|
||||
text_de: '43003',
|
||||
text_fr: '43003',
|
||||
text_nl: '43003',
|
||||
text_it: '43003',
|
||||
text_es: '43003',
|
||||
text_pt: '43003',
|
||||
text_pl: '43003',
|
||||
text_ru: '43003',
|
||||
},
|
||||
{
|
||||
id: 'place.6162489',
|
||||
mapbox_id: 'dXJuOm1ieHBsYzpYZ2c1',
|
||||
wikidata: 'Q146356',
|
||||
text_en: 'Chomutov',
|
||||
language_en: 'en',
|
||||
text: 'Chomutov',
|
||||
language: 'en',
|
||||
text_de: 'Chomutov',
|
||||
language_de: 'de',
|
||||
text_fr: 'Chomutov',
|
||||
language_fr: 'fr',
|
||||
text_nl: 'Chomutov',
|
||||
language_nl: 'nl',
|
||||
text_it: 'Chomutov',
|
||||
language_it: 'it',
|
||||
text_es: 'Chomutov',
|
||||
language_es: 'es',
|
||||
text_pt: 'Chomutov',
|
||||
language_pt: 'pt',
|
||||
text_pl: 'Chomutov',
|
||||
language_pl: 'pl',
|
||||
text_ru: 'Хомутов',
|
||||
language_ru: 'ru',
|
||||
},
|
||||
{
|
||||
id: 'region.74809',
|
||||
mapbox_id: 'dXJuOm1ieHBsYzpBU1E1',
|
||||
wikidata: 'Q192702',
|
||||
short_code: 'CZ-42',
|
||||
text_en: 'Ústí nad Labem',
|
||||
language_en: 'en',
|
||||
text: 'Ústí nad Labem',
|
||||
language: 'en',
|
||||
text_de: 'Ústecký kraj',
|
||||
language_de: 'de',
|
||||
text_fr: "région d'Ústí nad Labem",
|
||||
language_fr: 'fr',
|
||||
text_nl: 'Ústí nad Labem',
|
||||
language_nl: 'nl',
|
||||
text_it: 'regione di Ústí nad Labem',
|
||||
language_it: 'it',
|
||||
text_es: 'Región de Ústí nad Labem',
|
||||
language_es: 'es',
|
||||
text_pt: 'Ústí nad Labem',
|
||||
language_pt: 'pt',
|
||||
text_pl: 'Kraj ustecki',
|
||||
language_pl: 'pl',
|
||||
text_ru: 'Устецкий край',
|
||||
language_ru: 'ru',
|
||||
},
|
||||
{
|
||||
id: 'country.8761',
|
||||
mapbox_id: 'dXJuOm1ieHBsYzpJams',
|
||||
wikidata: 'Q213',
|
||||
short_code: 'cz',
|
||||
text_en: 'Czech Republic',
|
||||
language_en: 'en',
|
||||
text: 'Czech Republic',
|
||||
language: 'en',
|
||||
text_de: 'Tschechien',
|
||||
language_de: 'de',
|
||||
text_fr: 'Tchéquie',
|
||||
language_fr: 'fr',
|
||||
text_nl: 'Tsjechië',
|
||||
language_nl: 'nl',
|
||||
text_it: 'Repubblica Ceca',
|
||||
language_it: 'it',
|
||||
text_es: 'República Checa',
|
||||
language_es: 'es',
|
||||
text_pt: 'Chéquia',
|
||||
language_pt: 'pt',
|
||||
text_pl: 'Czechy',
|
||||
language_pl: 'pl',
|
||||
text_ru: 'Чехия',
|
||||
language_ru: 'ru',
|
||||
},
|
||||
],
|
||||
},
|
||||
],
|
||||
attribution:
|
||||
'NOTICE: © 2025 Mapbox and its suppliers. All rights reserved. Use of this data is subject to the Mapbox Terms of Service (https://www.mapbox.com/about/maps/). This response and the information it contains may not be retained.',
|
||||
}
|
||||
32
backend/test/fetchMock/mapboxResponses.ts
Normal file
32
backend/test/fetchMock/mapboxResponses.ts
Normal file
@ -0,0 +1,32 @@
|
||||
import { berlinDe } from './berlinDe'
|
||||
import { berlinEn } from './berlinEn'
|
||||
import { berlinGermany } from './berlinGermany'
|
||||
import { empty } from './empty'
|
||||
import { hamburg } from './hamburg'
|
||||
import { hamburgNY } from './hamburgNY'
|
||||
import { leipzig } from './leipzig'
|
||||
import { paris } from './paris'
|
||||
import { welzheim } from './welzheim'
|
||||
|
||||
export const mapboxResponses = {
|
||||
'https://api.mapbox.com/geocoding/v5/mapbox.places/Berlin.json?access_token=MAPBOX_TOKEN&types=region,place,country&language=en':
|
||||
berlinEn,
|
||||
'https://api.mapbox.com/geocoding/v5/mapbox.places/Berlin.json?access_token=MAPBOX_TOKEN&types=region,place,country&language=de':
|
||||
berlinDe,
|
||||
'https://api.mapbox.com/geocoding/v5/mapbox.places/Berlin%2C%20Germany.json?access_token=MAPBOX_TOKEN&types=region,place,country,address&language=en,de,fr,nl,it,es,pt,pl,ru':
|
||||
berlinGermany,
|
||||
'https://api.mapbox.com/geocoding/v5/mapbox.places/GbHtsd4sdHa.json?access_token=MAPBOX_TOKEN&types=region,place,country&language=en':
|
||||
empty,
|
||||
'https://api.mapbox.com/geocoding/v5/mapbox.places/.json?access_token=MAPBOX_TOKEN&types=region,place,country&language=en':
|
||||
empty,
|
||||
'https://api.mapbox.com/geocoding/v5/mapbox.places/Welzheim%2C%20Baden-W%C3%BCrttemberg%2C%20Germany.json?access_token=MAPBOX_TOKEN&types=region,place,country,address&language=en,de,fr,nl,it,es,pt,pl,ru':
|
||||
welzheim,
|
||||
'https://api.mapbox.com/geocoding/v5/mapbox.places/Hamburg%2C%20Germany.json?access_token=MAPBOX_TOKEN&types=region,place,country,address&language=en,de,fr,nl,it,es,pt,pl,ru':
|
||||
hamburg,
|
||||
'https://api.mapbox.com/geocoding/v5/mapbox.places/Hamburg%2C%20New%20Jersey%2C%20United%20States.json?access_token=MAPBOX_TOKEN&types=region,place,country,address&language=en,de,fr,nl,it,es,pt,pl,ru':
|
||||
hamburgNY,
|
||||
'https://api.mapbox.com/geocoding/v5/mapbox.places/Leipzig.json?access_token=MAPBOX_TOKEN&types=region,place,country,address&language=en,de,fr,nl,it,es,pt,pl,ru':
|
||||
leipzig,
|
||||
'https://api.mapbox.com/geocoding/v5/mapbox.places/Paris%2C%20France.json?access_token=MAPBOX_TOKEN&types=region,place,country,address&language=en,de,fr,nl,it,es,pt,pl,ru':
|
||||
paris,
|
||||
} as const
|
||||
615
backend/test/fetchMock/paris.ts
Normal file
615
backend/test/fetchMock/paris.ts
Normal file
@ -0,0 +1,615 @@
|
||||
export const paris = {
|
||||
type: 'FeatureCollection',
|
||||
query: ['paris', 'france'],
|
||||
features: [
|
||||
{
|
||||
id: 'place.894029',
|
||||
type: 'Feature',
|
||||
place_type: ['region', 'place'],
|
||||
relevance: 1,
|
||||
properties: {
|
||||
mapbox_id: 'dXJuOm1ieHBsYzpEYVJO',
|
||||
wikidata: 'Q90',
|
||||
short_code: 'FR-75',
|
||||
},
|
||||
text_en: 'Paris',
|
||||
language_en: 'en',
|
||||
place_name_en: 'Paris, France',
|
||||
text: 'Paris',
|
||||
language: 'en',
|
||||
place_name: 'Paris, France',
|
||||
text_de: 'Paris',
|
||||
language_de: 'de',
|
||||
place_name_de: 'Paris, Frankreich',
|
||||
text_fr: 'Paris',
|
||||
language_fr: 'fr',
|
||||
place_name_fr: 'Paris, France',
|
||||
text_nl: 'Parijs',
|
||||
language_nl: 'nl',
|
||||
place_name_nl: 'Parijs, Frankrijk',
|
||||
text_it: 'Parigi',
|
||||
language_it: 'it',
|
||||
place_name_it: 'Parigi, Francia',
|
||||
text_es: 'París',
|
||||
language_es: 'es',
|
||||
place_name_es: 'París, Francia',
|
||||
text_pt: 'Paris',
|
||||
language_pt: 'pt',
|
||||
place_name_pt: 'Paris, França',
|
||||
text_pl: 'Paryż',
|
||||
language_pl: 'pl',
|
||||
place_name_pl: 'Paryż, Francja',
|
||||
text_ru: 'Париж',
|
||||
language_ru: 'ru',
|
||||
place_name_ru: 'Париж, Франция',
|
||||
bbox: [2.224229, 48.815562, 2.469851, 48.902148],
|
||||
center: [2.348392, 48.853495],
|
||||
geometry: {
|
||||
type: 'Point',
|
||||
coordinates: [2.348392, 48.853495],
|
||||
},
|
||||
context: [
|
||||
{
|
||||
id: 'country.8781',
|
||||
mapbox_id: 'dXJuOm1ieHBsYzpJazA',
|
||||
wikidata: 'Q142',
|
||||
short_code: 'fr',
|
||||
text_en: 'France',
|
||||
language_en: 'en',
|
||||
text: 'France',
|
||||
language: 'en',
|
||||
text_de: 'Frankreich',
|
||||
language_de: 'de',
|
||||
text_fr: 'France',
|
||||
language_fr: 'fr',
|
||||
text_nl: 'Frankrijk',
|
||||
language_nl: 'nl',
|
||||
text_it: 'Francia',
|
||||
language_it: 'it',
|
||||
text_es: 'Francia',
|
||||
language_es: 'es',
|
||||
text_pt: 'França',
|
||||
language_pt: 'pt',
|
||||
text_pl: 'Francja',
|
||||
language_pl: 'pl',
|
||||
text_ru: 'Франция',
|
||||
language_ru: 'ru',
|
||||
},
|
||||
],
|
||||
},
|
||||
{
|
||||
id: 'address.7942827143743488',
|
||||
type: 'Feature',
|
||||
place_type: ['address'],
|
||||
relevance: 1,
|
||||
properties: {
|
||||
accuracy: 'street',
|
||||
mapbox_id: 'dXJuOm1ieGFkci1zdHI6ZGUyMmI5NjYtODFjMi00YjA4LWJkODgtMGIxNWE2YWE0Y2I2',
|
||||
},
|
||||
text_en: 'Paris',
|
||||
place_name_en: 'Paris, 83170 Brignoles, France',
|
||||
text: 'Paris',
|
||||
place_name: 'Paris, 83170 Brignoles, France',
|
||||
text_de: 'Paris',
|
||||
place_name_de: 'Paris, 83170 Brignoles, Frankreich',
|
||||
text_fr: 'Paris',
|
||||
place_name_fr: 'Paris, 83170 Brignoles, France',
|
||||
text_nl: 'Paris',
|
||||
place_name_nl: 'Paris, 83170 Brignoles, Frankrijk',
|
||||
text_it: 'Paris',
|
||||
place_name_it: 'Paris, 83170 Brignoles, Francia',
|
||||
text_es: 'Paris',
|
||||
place_name_es: 'Paris, 83170 Brignoles, Francia',
|
||||
text_pt: 'Paris',
|
||||
place_name_pt: 'Paris, 83170 Brignoles, França',
|
||||
text_pl: 'Paris',
|
||||
place_name_pl: 'Paris, 83170 Brignoles, Francja',
|
||||
text_ru: 'Paris',
|
||||
place_name_ru: 'Paris, 83170 Бриньоль, Франция',
|
||||
center: [6.069561, 43.415211],
|
||||
geometry: {
|
||||
type: 'Point',
|
||||
coordinates: [6.069561, 43.415211],
|
||||
},
|
||||
context: [
|
||||
{
|
||||
id: 'neighborhood.23768141',
|
||||
mapbox_id: 'dXJuOm1ieHBsYzpBV3FzVFE',
|
||||
text_en: 'Extension Annees 80-',
|
||||
language_en: 'fr',
|
||||
text: 'Extension Annees 80-',
|
||||
language: 'fr',
|
||||
text_de: 'Extension Annees 80-',
|
||||
text_fr: 'Extension Annees 80-',
|
||||
language_fr: 'fr',
|
||||
text_nl: 'Extension Annees 80-',
|
||||
language_nl: 'fr',
|
||||
text_it: 'Extension Annees 80-',
|
||||
language_it: 'fr',
|
||||
text_es: 'Extension Annees 80-',
|
||||
language_es: 'fr',
|
||||
text_pt: 'Extension Annees 80-',
|
||||
text_pl: 'Extension Annees 80-',
|
||||
text_ru: 'Extension Annees 80-',
|
||||
},
|
||||
{
|
||||
id: 'postcode.43822669',
|
||||
mapbox_id: 'dXJuOm1ieHBsYzpBcHl1VFE',
|
||||
text_en: '83170',
|
||||
text: '83170',
|
||||
text_de: '83170',
|
||||
text_fr: '83170',
|
||||
text_nl: '83170',
|
||||
text_it: '83170',
|
||||
text_es: '83170',
|
||||
text_pt: '83170',
|
||||
text_pl: '83170',
|
||||
text_ru: '83170',
|
||||
},
|
||||
{
|
||||
id: 'place.37988429',
|
||||
mapbox_id: 'dXJuOm1ieHBsYzpBa09vVFE',
|
||||
wikidata: 'Q207584',
|
||||
text_en: 'Brignoles',
|
||||
language_en: 'en',
|
||||
text: 'Brignoles',
|
||||
language: 'en',
|
||||
text_de: 'Brignoles',
|
||||
language_de: 'de',
|
||||
text_fr: 'Brignoles',
|
||||
language_fr: 'fr',
|
||||
text_nl: 'Brignoles',
|
||||
language_nl: 'nl',
|
||||
text_it: 'Brignoles',
|
||||
language_it: 'it',
|
||||
text_es: 'Brignoles',
|
||||
language_es: 'es',
|
||||
text_pt: 'Brignoles',
|
||||
language_pt: 'pt',
|
||||
text_pl: 'Brignoles',
|
||||
language_pl: 'pl',
|
||||
text_ru: 'Бриньоль',
|
||||
language_ru: 'ru',
|
||||
},
|
||||
{
|
||||
id: 'region.451661',
|
||||
mapbox_id: 'dXJuOm1ieHBsYzpCdVJO',
|
||||
wikidata: 'Q12789',
|
||||
short_code: 'FR-83',
|
||||
text_en: 'Var',
|
||||
language_en: 'en',
|
||||
text: 'Var',
|
||||
language: 'en',
|
||||
text_de: 'Département Var',
|
||||
language_de: 'de',
|
||||
text_fr: 'Var',
|
||||
language_fr: 'fr',
|
||||
text_nl: 'Var',
|
||||
language_nl: 'nl',
|
||||
text_it: 'Varo',
|
||||
language_it: 'it',
|
||||
text_es: 'Var',
|
||||
language_es: 'es',
|
||||
text_pt: 'Var',
|
||||
language_pt: 'pt',
|
||||
text_pl: 'Var',
|
||||
language_pl: 'pl',
|
||||
text_ru: 'Вар',
|
||||
language_ru: 'ru',
|
||||
},
|
||||
{
|
||||
id: 'country.8781',
|
||||
mapbox_id: 'dXJuOm1ieHBsYzpJazA',
|
||||
wikidata: 'Q142',
|
||||
short_code: 'fr',
|
||||
text_en: 'France',
|
||||
language_en: 'en',
|
||||
text: 'France',
|
||||
language: 'en',
|
||||
text_de: 'Frankreich',
|
||||
language_de: 'de',
|
||||
text_fr: 'France',
|
||||
language_fr: 'fr',
|
||||
text_nl: 'Frankrijk',
|
||||
language_nl: 'nl',
|
||||
text_it: 'Francia',
|
||||
language_it: 'it',
|
||||
text_es: 'Francia',
|
||||
language_es: 'es',
|
||||
text_pt: 'França',
|
||||
language_pt: 'pt',
|
||||
text_pl: 'Francja',
|
||||
language_pl: 'pl',
|
||||
text_ru: 'Франция',
|
||||
language_ru: 'ru',
|
||||
},
|
||||
],
|
||||
},
|
||||
{
|
||||
id: 'address.1606141678135750',
|
||||
type: 'Feature',
|
||||
place_type: ['address'],
|
||||
relevance: 1,
|
||||
properties: {
|
||||
accuracy: 'street',
|
||||
mapbox_id: 'dXJuOm1ieGFkci1zdHI6YTI3YjI5ODYtNGI1ZS00MTBiLThkOTEtOWJjOGUzZmE4NjA0',
|
||||
},
|
||||
text_en: 'Paris',
|
||||
place_name_en: "Paris, 11230 Sainte-Colombe-sur-l'Hers, France",
|
||||
text: 'Paris',
|
||||
place_name: "Paris, 11230 Sainte-Colombe-sur-l'Hers, France",
|
||||
text_de: 'Paris',
|
||||
place_name_de: "Paris, 11230 Sainte-Colombe-sur-l'Hers, Frankreich",
|
||||
text_fr: 'Paris',
|
||||
place_name_fr: "Paris, 11230 Sainte-Colombe-sur-l'Hers, France",
|
||||
text_nl: 'Paris',
|
||||
place_name_nl: "Paris, 11230 Sainte-Colombe-sur-l'Hers, Frankrijk",
|
||||
text_it: 'Paris',
|
||||
place_name_it: "Paris, 11230 Sainte-Colombe-sur-l'Hers, Francia",
|
||||
text_es: 'Paris',
|
||||
place_name_es: "Paris, 11230 Sainte-Colombe-sur-l'Hers, Francia",
|
||||
text_pt: 'Paris',
|
||||
place_name_pt: "Paris, 11230 Sainte-Colombe-sur-l'Hers, França",
|
||||
text_pl: 'Paris',
|
||||
place_name_pl: "Paris, 11230 Sainte-Colombe-sur-l'Hers, Francja",
|
||||
text_ru: 'Paris',
|
||||
place_name_ru: 'Paris, 11230 Сент-Коломб-сюр-л’Эр, Франция',
|
||||
center: [1.957948, 42.947813],
|
||||
geometry: {
|
||||
type: 'Point',
|
||||
coordinates: [1.957948, 42.947813],
|
||||
},
|
||||
context: [
|
||||
{
|
||||
id: 'postcode.3993165',
|
||||
mapbox_id: 'dXJuOm1ieHBsYzpQTzVO',
|
||||
text_en: '11230',
|
||||
text: '11230',
|
||||
text_de: '11230',
|
||||
text_fr: '11230',
|
||||
text_nl: '11230',
|
||||
text_it: '11230',
|
||||
text_es: '11230',
|
||||
text_pt: '11230',
|
||||
text_pl: '11230',
|
||||
text_ru: '11230',
|
||||
},
|
||||
{
|
||||
id: 'place.218073165',
|
||||
mapbox_id: 'dXJuOm1ieHBsYzpEUCtJVFE',
|
||||
wikidata: 'Q1081836',
|
||||
text_en: "Sainte-Colombe-sur-l'Hers",
|
||||
language_en: 'en',
|
||||
text: "Sainte-Colombe-sur-l'Hers",
|
||||
language: 'en',
|
||||
text_de: "Sainte-Colombe-sur-l'Hers",
|
||||
language_de: 'de',
|
||||
text_fr: "Sainte-Colombe-sur-l'Hers",
|
||||
language_fr: 'fr',
|
||||
text_nl: "Sainte-Colombe-sur-l'Hers",
|
||||
language_nl: 'nl',
|
||||
text_it: "Sainte-Colombe-sur-l'Hers",
|
||||
language_it: 'it',
|
||||
text_es: "Sainte-Colombe-sur-l'Hers",
|
||||
language_es: 'es',
|
||||
text_pt: "Sainte-Colombe-sur-l'Hers",
|
||||
language_pt: 'pt',
|
||||
text_pl: "Sainte-Colombe-sur-l'Hers",
|
||||
language_pl: 'pl',
|
||||
text_ru: 'Сент-Коломб-сюр-л’Эр',
|
||||
language_ru: 'ru',
|
||||
},
|
||||
{
|
||||
id: 'region.713805',
|
||||
mapbox_id: 'dXJuOm1ieHBsYzpDdVJO',
|
||||
wikidata: 'Q3207',
|
||||
short_code: 'FR-11',
|
||||
text_en: 'Aude',
|
||||
language_en: 'en',
|
||||
text: 'Aude',
|
||||
language: 'en',
|
||||
text_de: 'Département Aude',
|
||||
language_de: 'de',
|
||||
text_fr: 'Aude',
|
||||
language_fr: 'fr',
|
||||
text_nl: 'Aude',
|
||||
language_nl: 'nl',
|
||||
text_it: 'Aude',
|
||||
language_it: 'it',
|
||||
text_es: 'Aude',
|
||||
language_es: 'es',
|
||||
text_pt: 'Aude',
|
||||
language_pt: 'pt',
|
||||
text_pl: 'Aude',
|
||||
language_pl: 'pl',
|
||||
text_ru: 'Од',
|
||||
language_ru: 'ru',
|
||||
},
|
||||
{
|
||||
id: 'country.8781',
|
||||
mapbox_id: 'dXJuOm1ieHBsYzpJazA',
|
||||
wikidata: 'Q142',
|
||||
short_code: 'fr',
|
||||
text_en: 'France',
|
||||
language_en: 'en',
|
||||
text: 'France',
|
||||
language: 'en',
|
||||
text_de: 'Frankreich',
|
||||
language_de: 'de',
|
||||
text_fr: 'France',
|
||||
language_fr: 'fr',
|
||||
text_nl: 'Frankrijk',
|
||||
language_nl: 'nl',
|
||||
text_it: 'Francia',
|
||||
language_it: 'it',
|
||||
text_es: 'Francia',
|
||||
language_es: 'es',
|
||||
text_pt: 'França',
|
||||
language_pt: 'pt',
|
||||
text_pl: 'Francja',
|
||||
language_pl: 'pl',
|
||||
text_ru: 'Франция',
|
||||
language_ru: 'ru',
|
||||
},
|
||||
],
|
||||
},
|
||||
{
|
||||
id: 'address.8644476532166668',
|
||||
type: 'Feature',
|
||||
place_type: ['address'],
|
||||
relevance: 1,
|
||||
properties: {
|
||||
accuracy: 'street',
|
||||
mapbox_id: 'dXJuOm1ieGFkci1zdHI6MTY1YmU5ZTAtMWZiMS00MjhhLThlZmQtN2NkMDVhZjZkNzE3',
|
||||
},
|
||||
text_en: 'Paris',
|
||||
place_name_en: 'Paris, 36120 Jeu-les-Bois, France',
|
||||
text: 'Paris',
|
||||
place_name: 'Paris, 36120 Jeu-les-Bois, France',
|
||||
text_de: 'Paris',
|
||||
place_name_de: 'Paris, 36120 Jeu-les-Bois, Frankreich',
|
||||
text_fr: 'Paris',
|
||||
place_name_fr: 'Paris, 36120 Jeu-les-Bois, France',
|
||||
text_nl: 'Paris',
|
||||
place_name_nl: 'Paris, 36120 Jeu-les-Bois, Frankrijk',
|
||||
text_it: 'Paris',
|
||||
place_name_it: 'Paris, 36120 Jeu-les-Bois, Francia',
|
||||
text_es: 'Paris',
|
||||
place_name_es: 'Paris, 36120 Jeu-les-Bois, Francia',
|
||||
text_pt: 'Paris',
|
||||
place_name_pt: 'Paris, 36120 Jeu-les-Bois, França',
|
||||
text_pl: 'Paris',
|
||||
place_name_pl: 'Paris, 36120 Jeu-les-Bois, Francja',
|
||||
text_ru: 'Paris',
|
||||
place_name_ru: 'Paris, 36120 Же-ле-Буа, Франция',
|
||||
center: [1.811749, 46.694191],
|
||||
geometry: {
|
||||
type: 'Point',
|
||||
coordinates: [1.811749, 46.694191],
|
||||
},
|
||||
context: [
|
||||
{
|
||||
id: 'postcode.17755725',
|
||||
mapbox_id: 'dXJuOm1ieHBsYzpBUTd1VFE',
|
||||
text_en: '36120',
|
||||
text: '36120',
|
||||
text_de: '36120',
|
||||
text_fr: '36120',
|
||||
text_nl: '36120',
|
||||
text_it: '36120',
|
||||
text_es: '36120',
|
||||
text_pt: '36120',
|
||||
text_pl: '36120',
|
||||
text_ru: '36120',
|
||||
},
|
||||
{
|
||||
id: 'place.111659085',
|
||||
mapbox_id: 'dXJuOm1ieHBsYzpCcWZJVFE',
|
||||
wikidata: 'Q596397',
|
||||
text_en: 'Jeu-les-Bois',
|
||||
language_en: 'en',
|
||||
text: 'Jeu-les-Bois',
|
||||
language: 'en',
|
||||
text_de: 'Jeu-les-Bois',
|
||||
language_de: 'de',
|
||||
text_fr: 'Jeu-les-Bois',
|
||||
language_fr: 'fr',
|
||||
text_nl: 'Jeu-les-Bois',
|
||||
language_nl: 'nl',
|
||||
text_it: 'Jeu-les-Bois',
|
||||
language_it: 'it',
|
||||
text_es: 'Jeu-les-Bois',
|
||||
language_es: 'es',
|
||||
text_pt: 'Jeu-les-Bois',
|
||||
language_pt: 'pt',
|
||||
text_pl: 'Jeu-les-Bois',
|
||||
language_pl: 'pl',
|
||||
text_ru: 'Же-ле-Буа',
|
||||
language_ru: 'ru',
|
||||
},
|
||||
{
|
||||
id: 'region.74829',
|
||||
mapbox_id: 'dXJuOm1ieHBsYzpBU1JO',
|
||||
wikidata: 'Q12553',
|
||||
short_code: 'FR-36',
|
||||
text_en: 'Indre',
|
||||
language_en: 'en',
|
||||
text: 'Indre',
|
||||
language: 'en',
|
||||
text_de: 'Département Indre',
|
||||
language_de: 'de',
|
||||
text_fr: 'Indre',
|
||||
language_fr: 'fr',
|
||||
text_nl: 'Indre',
|
||||
language_nl: 'nl',
|
||||
text_it: 'Indre',
|
||||
language_it: 'it',
|
||||
text_es: 'Indre',
|
||||
language_es: 'es',
|
||||
text_pt: 'Indre',
|
||||
language_pt: 'pt',
|
||||
text_pl: 'Indre',
|
||||
language_pl: 'pl',
|
||||
text_ru: 'Эндр',
|
||||
language_ru: 'ru',
|
||||
},
|
||||
{
|
||||
id: 'country.8781',
|
||||
mapbox_id: 'dXJuOm1ieHBsYzpJazA',
|
||||
wikidata: 'Q142',
|
||||
short_code: 'fr',
|
||||
text_en: 'France',
|
||||
language_en: 'en',
|
||||
text: 'France',
|
||||
language: 'en',
|
||||
text_de: 'Frankreich',
|
||||
language_de: 'de',
|
||||
text_fr: 'France',
|
||||
language_fr: 'fr',
|
||||
text_nl: 'Frankrijk',
|
||||
language_nl: 'nl',
|
||||
text_it: 'Francia',
|
||||
language_it: 'it',
|
||||
text_es: 'Francia',
|
||||
language_es: 'es',
|
||||
text_pt: 'França',
|
||||
language_pt: 'pt',
|
||||
text_pl: 'Francja',
|
||||
language_pl: 'pl',
|
||||
text_ru: 'Франция',
|
||||
language_ru: 'ru',
|
||||
},
|
||||
],
|
||||
},
|
||||
{
|
||||
id: 'address.8865196537941870',
|
||||
type: 'Feature',
|
||||
place_type: ['address'],
|
||||
relevance: 1,
|
||||
properties: {
|
||||
accuracy: 'street',
|
||||
mapbox_id: 'dXJuOm1ieGFkci1zdHI6NjU2N2E5ODgtN2I4Yi00ZjU2LWEzZWUtYjk4Y2YwMjQzY2Ey',
|
||||
},
|
||||
text_en: 'Paris',
|
||||
place_name_en: 'Paris, 31560 Saint-Léon, France',
|
||||
text: 'Paris',
|
||||
place_name: 'Paris, 31560 Saint-Léon, France',
|
||||
text_de: 'Paris',
|
||||
place_name_de: 'Paris, 31560 Saint-Léon, Frankreich',
|
||||
text_fr: 'Paris',
|
||||
place_name_fr: 'Paris, 31560 Saint-Léon, France',
|
||||
text_nl: 'Paris',
|
||||
place_name_nl: 'Paris, 31560 Saint-Léon, Frankrijk',
|
||||
text_it: 'Paris',
|
||||
place_name_it: 'Paris, 31560 Saint-Léon, Francia',
|
||||
text_es: 'Paris',
|
||||
place_name_es: 'Paris, 31560 Saint-Léon, Francia',
|
||||
text_pt: 'Paris',
|
||||
place_name_pt: 'Paris, 31560 Saint-Léon, França',
|
||||
text_pl: 'Paris',
|
||||
place_name_pl: 'Paris, 31560 Saint-Léon, Francja',
|
||||
text_ru: 'Paris',
|
||||
place_name_ru: 'Paris, 31560 Сен-Леон, Франция',
|
||||
center: [1.549305, 43.419569],
|
||||
geometry: {
|
||||
type: 'Point',
|
||||
coordinates: [1.549305, 43.419569],
|
||||
},
|
||||
context: [
|
||||
{
|
||||
id: 'postcode.15044173',
|
||||
mapbox_id: 'dXJuOm1ieHBsYzo1WTVO',
|
||||
text_en: '31560',
|
||||
text: '31560',
|
||||
text_de: '31560',
|
||||
text_fr: '31560',
|
||||
text_nl: '31560',
|
||||
text_it: '31560',
|
||||
text_es: '31560',
|
||||
text_pt: '31560',
|
||||
text_pl: '31560',
|
||||
text_ru: '31560',
|
||||
},
|
||||
{
|
||||
id: 'place.229107789',
|
||||
mapbox_id: 'dXJuOm1ieHBsYzpEYWZvVFE',
|
||||
wikidata: 'Q1362198',
|
||||
text_en: 'Saint-Léon',
|
||||
language_en: 'en',
|
||||
text: 'Saint-Léon',
|
||||
language: 'en',
|
||||
text_de: 'Saint-Léon',
|
||||
language_de: 'de',
|
||||
text_fr: 'Saint-Léon',
|
||||
language_fr: 'fr',
|
||||
text_nl: 'Saint-Léon',
|
||||
language_nl: 'nl',
|
||||
text_it: 'Saint-Léon',
|
||||
language_it: 'it',
|
||||
text_es: 'Saint-Léon',
|
||||
language_es: 'es',
|
||||
text_pt: 'Saint-Léon',
|
||||
language_pt: 'pt',
|
||||
text_pl: 'Saint-Léon',
|
||||
language_pl: 'pl',
|
||||
text_ru: 'Сен-Леон',
|
||||
language_ru: 'ru',
|
||||
},
|
||||
{
|
||||
id: 'region.42061',
|
||||
mapbox_id: 'dXJuOm1ieHBsYzpwRTA',
|
||||
wikidata: 'Q12538',
|
||||
short_code: 'FR-31',
|
||||
text_en: 'Haute-Garonne',
|
||||
language_en: 'en',
|
||||
text: 'Haute-Garonne',
|
||||
language: 'en',
|
||||
text_de: 'Haute-Garonne',
|
||||
language_de: 'de',
|
||||
text_fr: 'Haute-Garonne',
|
||||
language_fr: 'fr',
|
||||
text_nl: 'Haute-Garonne',
|
||||
language_nl: 'nl',
|
||||
text_it: 'Alta Garonna',
|
||||
language_it: 'it',
|
||||
text_es: 'Alto Garona',
|
||||
language_es: 'es',
|
||||
text_pt: 'Alta Garona',
|
||||
language_pt: 'pt',
|
||||
text_pl: 'Górna Garonna',
|
||||
language_pl: 'pl',
|
||||
text_ru: 'Верхняя Гаронна',
|
||||
language_ru: 'ru',
|
||||
},
|
||||
{
|
||||
id: 'country.8781',
|
||||
mapbox_id: 'dXJuOm1ieHBsYzpJazA',
|
||||
wikidata: 'Q142',
|
||||
short_code: 'fr',
|
||||
text_en: 'France',
|
||||
language_en: 'en',
|
||||
text: 'France',
|
||||
language: 'en',
|
||||
text_de: 'Frankreich',
|
||||
language_de: 'de',
|
||||
text_fr: 'France',
|
||||
language_fr: 'fr',
|
||||
text_nl: 'Frankrijk',
|
||||
language_nl: 'nl',
|
||||
text_it: 'Francia',
|
||||
language_it: 'it',
|
||||
text_es: 'Francia',
|
||||
language_es: 'es',
|
||||
text_pt: 'França',
|
||||
language_pt: 'pt',
|
||||
text_pl: 'Francja',
|
||||
language_pl: 'pl',
|
||||
text_ru: 'Франция',
|
||||
language_ru: 'ru',
|
||||
},
|
||||
],
|
||||
},
|
||||
],
|
||||
attribution:
|
||||
'NOTICE: © 2025 Mapbox and its suppliers. All rights reserved. Use of this data is subject to the Mapbox Terms of Service (https://www.mapbox.com/about/maps/). This response and the information it contains may not be retained.',
|
||||
}
|
||||
686
backend/test/fetchMock/welzheim.ts
Normal file
686
backend/test/fetchMock/welzheim.ts
Normal file
@ -0,0 +1,686 @@
|
||||
export const welzheim = {
|
||||
type: 'FeatureCollection',
|
||||
query: ['welzheim', 'baden', 'württemberg', 'germany'],
|
||||
features: [
|
||||
{
|
||||
id: 'place.85084218',
|
||||
type: 'Feature',
|
||||
place_type: ['place'],
|
||||
relevance: 1,
|
||||
properties: {
|
||||
mapbox_id: 'dXJuOm1ieHBsYzpCUkpJT2c',
|
||||
wikidata: 'Q82421',
|
||||
},
|
||||
text_en: 'Welzheim',
|
||||
language_en: 'en',
|
||||
place_name_en: 'Welzheim, arrondissement de Rems-Murr, Baden-Württemberg, Germany',
|
||||
text: 'Welzheim',
|
||||
language: 'en',
|
||||
place_name: 'Welzheim, arrondissement de Rems-Murr, Baden-Württemberg, Germany',
|
||||
text_de: 'Welzheim',
|
||||
language_de: 'de',
|
||||
place_name_de: 'Welzheim, Rems-Murr-Kreis, Baden-Württemberg, Deutschland',
|
||||
text_fr: 'Welzheim',
|
||||
language_fr: 'fr',
|
||||
place_name_fr: 'Welzheim, arrondissement de Rems-Murr, Bade-Wurtemberg, Allemagne',
|
||||
text_nl: 'Welzheim',
|
||||
language_nl: 'nl',
|
||||
place_name_nl: 'Welzheim, arrondissement de Rems-Murr, Baden-Württemberg, Duitsland',
|
||||
text_it: 'Welzheim',
|
||||
language_it: 'it',
|
||||
place_name_it: 'Welzheim, circondario del Rems-Murr, Baden-Württemberg, Germania',
|
||||
text_es: 'Welzheim',
|
||||
language_es: 'es',
|
||||
place_name_es: 'Welzheim, arrondissement de Rems-Murr, Baden-Wurtemberg, Alemania',
|
||||
text_pt: 'Welzheim',
|
||||
language_pt: 'pt',
|
||||
place_name_pt: 'Welzheim, circondario del Rems-Murr, Baden-Württemberg, Alemanha',
|
||||
text_pl: 'Welzheim',
|
||||
language_pl: 'pl',
|
||||
place_name_pl: 'Welzheim, Powiat Rems-Murr, Badenia-Wirtembergia, Niemcy',
|
||||
text_ru: 'Вельцхайм',
|
||||
language_ru: 'ru',
|
||||
place_name_ru: 'Вельцхайм, Ремс-Мур, Баден-Вюртемберг, Германия',
|
||||
bbox: [9.555711, 48.840845, 9.69537, 48.923906],
|
||||
center: [9.634301, 48.874393],
|
||||
geometry: {
|
||||
type: 'Point',
|
||||
coordinates: [9.634301, 48.874393],
|
||||
},
|
||||
context: [
|
||||
{
|
||||
id: 'district.2598458',
|
||||
mapbox_id: 'dXJuOm1ieHBsYzpKNlk2',
|
||||
wikidata: 'Q8528',
|
||||
text_en: 'arrondissement de Rems-Murr',
|
||||
language_en: 'fr',
|
||||
text: 'arrondissement de Rems-Murr',
|
||||
language: 'fr',
|
||||
text_de: 'Rems-Murr-Kreis',
|
||||
language_de: 'de',
|
||||
text_fr: 'arrondissement de Rems-Murr',
|
||||
language_fr: 'fr',
|
||||
text_nl: 'arrondissement de Rems-Murr',
|
||||
language_nl: 'fr',
|
||||
text_it: 'circondario del Rems-Murr',
|
||||
language_it: 'it',
|
||||
text_es: 'arrondissement de Rems-Murr',
|
||||
language_es: 'fr',
|
||||
text_pt: 'circondario del Rems-Murr',
|
||||
language_pt: 'it',
|
||||
text_pl: 'Powiat Rems-Murr',
|
||||
language_pl: 'pl',
|
||||
text_ru: 'Ремс-Мур',
|
||||
language_ru: 'ru',
|
||||
},
|
||||
{
|
||||
id: 'region.132154',
|
||||
mapbox_id: 'dXJuOm1ieHBsYzpBZ1E2',
|
||||
wikidata: 'Q985',
|
||||
short_code: 'DE-BW',
|
||||
text_en: 'Baden-Württemberg',
|
||||
language_en: 'en',
|
||||
text: 'Baden-Württemberg',
|
||||
language: 'en',
|
||||
text_de: 'Baden-Württemberg',
|
||||
language_de: 'de',
|
||||
text_fr: 'Bade-Wurtemberg',
|
||||
language_fr: 'fr',
|
||||
text_nl: 'Baden-Württemberg',
|
||||
language_nl: 'nl',
|
||||
text_it: 'Baden-Württemberg',
|
||||
language_it: 'it',
|
||||
text_es: 'Baden-Wurtemberg',
|
||||
language_es: 'es',
|
||||
text_pt: 'Baden-Württemberg',
|
||||
language_pt: 'pt',
|
||||
text_pl: 'Badenia-Wirtembergia',
|
||||
language_pl: 'pl',
|
||||
text_ru: 'Баден-Вюртемберг',
|
||||
language_ru: 'ru',
|
||||
},
|
||||
{
|
||||
id: 'country.8762',
|
||||
mapbox_id: 'dXJuOm1ieHBsYzpJam8',
|
||||
wikidata: 'Q183',
|
||||
short_code: 'de',
|
||||
text_en: 'Germany',
|
||||
language_en: 'en',
|
||||
text: 'Germany',
|
||||
language: 'en',
|
||||
text_de: 'Deutschland',
|
||||
language_de: 'de',
|
||||
text_fr: 'Allemagne',
|
||||
language_fr: 'fr',
|
||||
text_nl: 'Duitsland',
|
||||
language_nl: 'nl',
|
||||
text_it: 'Germania',
|
||||
language_it: 'it',
|
||||
text_es: 'Alemania',
|
||||
language_es: 'es',
|
||||
text_pt: 'Alemanha',
|
||||
language_pt: 'pt',
|
||||
text_pl: 'Niemcy',
|
||||
language_pl: 'pl',
|
||||
text_ru: 'Германия',
|
||||
language_ru: 'ru',
|
||||
},
|
||||
],
|
||||
},
|
||||
{
|
||||
id: 'region.132154',
|
||||
type: 'Feature',
|
||||
place_type: ['region'],
|
||||
relevance: 0.703704,
|
||||
properties: {
|
||||
mapbox_id: 'dXJuOm1ieHBsYzpBZ1E2',
|
||||
wikidata: 'Q985',
|
||||
short_code: 'DE-BW',
|
||||
},
|
||||
text_en: 'Baden-Württemberg',
|
||||
language_en: 'en',
|
||||
place_name_en: 'Baden-Württemberg, Germany',
|
||||
text: 'Baden-Württemberg',
|
||||
language: 'en',
|
||||
place_name: 'Baden-Württemberg, Germany',
|
||||
text_de: 'Baden-Württemberg',
|
||||
language_de: 'de',
|
||||
place_name_de: 'Baden-Württemberg, Deutschland',
|
||||
text_fr: 'Bade-Wurtemberg',
|
||||
language_fr: 'fr',
|
||||
place_name_fr: 'Bade-Wurtemberg, Allemagne',
|
||||
text_nl: 'Baden-Württemberg',
|
||||
language_nl: 'nl',
|
||||
place_name_nl: 'Baden-Württemberg, Duitsland',
|
||||
text_it: 'Baden-Württemberg',
|
||||
language_it: 'it',
|
||||
place_name_it: 'Baden-Württemberg, Germania',
|
||||
text_es: 'Baden-Wurtemberg',
|
||||
language_es: 'es',
|
||||
place_name_es: 'Baden-Wurtemberg, Alemania',
|
||||
text_pt: 'Baden-Württemberg',
|
||||
language_pt: 'pt',
|
||||
place_name_pt: 'Baden-Württemberg, Alemanha',
|
||||
text_pl: 'Badenia-Wirtembergia',
|
||||
language_pl: 'pl',
|
||||
place_name_pl: 'Badenia-Wirtembergia, Niemcy',
|
||||
text_ru: 'Баден-Вюртемберг',
|
||||
language_ru: 'ru',
|
||||
place_name_ru: 'Баден-Вюртемберг, Германия',
|
||||
bbox: [7.511749, 47.532404, 10.495575, 49.791327],
|
||||
center: [9.180013, 48.778449],
|
||||
geometry: {
|
||||
type: 'Point',
|
||||
coordinates: [9.180013, 48.778449],
|
||||
},
|
||||
context: [
|
||||
{
|
||||
id: 'country.8762',
|
||||
mapbox_id: 'dXJuOm1ieHBsYzpJam8',
|
||||
wikidata: 'Q183',
|
||||
short_code: 'de',
|
||||
text_en: 'Germany',
|
||||
language_en: 'en',
|
||||
text: 'Germany',
|
||||
language: 'en',
|
||||
text_de: 'Deutschland',
|
||||
language_de: 'de',
|
||||
text_fr: 'Allemagne',
|
||||
language_fr: 'fr',
|
||||
text_nl: 'Duitsland',
|
||||
language_nl: 'nl',
|
||||
text_it: 'Germania',
|
||||
language_it: 'it',
|
||||
text_es: 'Alemania',
|
||||
language_es: 'es',
|
||||
text_pt: 'Alemanha',
|
||||
language_pt: 'pt',
|
||||
text_pl: 'Niemcy',
|
||||
language_pl: 'pl',
|
||||
text_ru: 'Германия',
|
||||
language_ru: 'ru',
|
||||
},
|
||||
],
|
||||
},
|
||||
{
|
||||
id: 'address.7757118904863240',
|
||||
type: 'Feature',
|
||||
place_type: ['address'],
|
||||
relevance: 0.67254,
|
||||
properties: {
|
||||
accuracy: 'street',
|
||||
mapbox_id: 'dXJuOm1ieGFkci1zdHI6YTZkMmM2YTYtZDY3ZC00MjE1LWIyZmYtOTUwODQ4MTk3MmIz',
|
||||
},
|
||||
text_en: 'German-Götz-Straße',
|
||||
place_name_en: 'German-Götz-Straße, 72469 Meßstetten, Germany',
|
||||
text: 'German-Götz-Straße',
|
||||
place_name: 'German-Götz-Straße, 72469 Meßstetten, Germany',
|
||||
text_de: 'German-Götz-Straße',
|
||||
place_name_de: 'German-Götz-Straße, 72469 Meßstetten, Deutschland',
|
||||
text_fr: 'German-Götz-Straße',
|
||||
place_name_fr: 'German-Götz-Straße, 72469 Meßstetten, Allemagne',
|
||||
text_nl: 'German-Götz-Straße',
|
||||
place_name_nl: 'German-Götz-Straße, 72469 Meßstetten, Duitsland',
|
||||
text_it: 'German-Götz-Straße',
|
||||
place_name_it: 'German-Götz-Straße, 72469 Meßstetten, Germania',
|
||||
text_es: 'German-Götz-Straße',
|
||||
place_name_es: 'German-Götz-Straße, 72469 Meßstetten, Alemania',
|
||||
text_pt: 'German-Götz-Straße',
|
||||
place_name_pt: 'German-Götz-Straße, 72469 Meßstetten, Alemanha',
|
||||
text_pl: 'German-Götz-Straße',
|
||||
place_name_pl: 'German-Götz-Straße, 72469 Meßstetten, Niemcy',
|
||||
text_ru: 'German-Götz-Straße',
|
||||
place_name_ru: 'German-Götz-Straße, 72469 Месштеттен, Германия',
|
||||
center: [8.920287, 48.189669],
|
||||
geometry: {
|
||||
type: 'Point',
|
||||
coordinates: [8.920287, 48.189669],
|
||||
},
|
||||
context: [
|
||||
{
|
||||
id: 'postcode.41586234',
|
||||
mapbox_id: 'dXJuOm1ieHBsYzpBbnFPT2c',
|
||||
text_en: '72469',
|
||||
text: '72469',
|
||||
text_de: '72469',
|
||||
text_fr: '72469',
|
||||
text_nl: '72469',
|
||||
text_it: '72469',
|
||||
text_es: '72469',
|
||||
text_pt: '72469',
|
||||
text_pl: '72469',
|
||||
text_ru: '72469',
|
||||
},
|
||||
{
|
||||
id: 'locality.150301242',
|
||||
mapbox_id: 'dXJuOm1ieHBsYzpDUFZxT2c',
|
||||
wikidata: 'Q18337859',
|
||||
text_en: 'Hossingen',
|
||||
language_en: 'en',
|
||||
text: 'Hossingen',
|
||||
language: 'en',
|
||||
text_de: 'Hossingen',
|
||||
language_de: 'de',
|
||||
text_fr: 'Hossingen',
|
||||
language_fr: 'fr',
|
||||
text_nl: 'Hossingen',
|
||||
language_nl: 'nl',
|
||||
text_it: 'Hossingen',
|
||||
language_it: 'fr',
|
||||
text_es: 'Hossingen',
|
||||
language_es: 'fr',
|
||||
text_pt: 'Hossingen',
|
||||
text_pl: 'Hossingen',
|
||||
language_pl: 'nl',
|
||||
text_ru: 'Hossingen',
|
||||
},
|
||||
{
|
||||
id: 'place.50759738',
|
||||
mapbox_id: 'dXJuOm1ieHBsYzpBd2FJT2c',
|
||||
wikidata: 'Q515661',
|
||||
text_en: 'Meßstetten',
|
||||
language_en: 'en',
|
||||
text: 'Meßstetten',
|
||||
language: 'en',
|
||||
text_de: 'Meßstetten',
|
||||
language_de: 'de',
|
||||
text_fr: 'Meßstetten',
|
||||
language_fr: 'fr',
|
||||
text_nl: 'Meßstetten',
|
||||
language_nl: 'nl',
|
||||
text_it: 'Meßstetten',
|
||||
language_it: 'it',
|
||||
text_es: 'Meßstetten',
|
||||
language_es: 'es',
|
||||
text_pt: 'Meßstetten',
|
||||
language_pt: 'pt',
|
||||
text_pl: 'Meßstetten',
|
||||
language_pl: 'pl',
|
||||
text_ru: 'Месштеттен',
|
||||
language_ru: 'ru',
|
||||
},
|
||||
{
|
||||
id: 'district.2795066',
|
||||
mapbox_id: 'dXJuOm1ieHBsYzpLcVk2',
|
||||
wikidata: 'Q8233',
|
||||
text_en: 'arrondissement de Zollernalb',
|
||||
language_en: 'fr',
|
||||
text: 'arrondissement de Zollernalb',
|
||||
language: 'fr',
|
||||
text_de: 'Zollernalbkreis',
|
||||
language_de: 'de',
|
||||
text_fr: 'arrondissement de Zollernalb',
|
||||
language_fr: 'fr',
|
||||
text_nl: 'arrondissement de Zollernalb',
|
||||
language_nl: 'fr',
|
||||
text_it: 'circondario dello Zollernalb',
|
||||
language_it: 'it',
|
||||
text_es: 'arrondissement de Zollernalb',
|
||||
language_es: 'fr',
|
||||
text_pt: 'circondario dello Zollernalb',
|
||||
language_pt: 'it',
|
||||
text_pl: 'Powiat Zollernalb',
|
||||
language_pl: 'pl',
|
||||
text_ru: 'Цоллернальб',
|
||||
language_ru: 'ru',
|
||||
},
|
||||
{
|
||||
id: 'region.132154',
|
||||
mapbox_id: 'dXJuOm1ieHBsYzpBZ1E2',
|
||||
wikidata: 'Q985',
|
||||
short_code: 'DE-BW',
|
||||
text_en: 'Baden-Württemberg',
|
||||
language_en: 'en',
|
||||
text: 'Baden-Württemberg',
|
||||
language: 'en',
|
||||
text_de: 'Baden-Württemberg',
|
||||
language_de: 'de',
|
||||
text_fr: 'Bade-Wurtemberg',
|
||||
language_fr: 'fr',
|
||||
text_nl: 'Baden-Württemberg',
|
||||
language_nl: 'nl',
|
||||
text_it: 'Baden-Württemberg',
|
||||
language_it: 'it',
|
||||
text_es: 'Baden-Wurtemberg',
|
||||
language_es: 'es',
|
||||
text_pt: 'Baden-Württemberg',
|
||||
language_pt: 'pt',
|
||||
text_pl: 'Badenia-Wirtembergia',
|
||||
language_pl: 'pl',
|
||||
text_ru: 'Баден-Вюртемберг',
|
||||
language_ru: 'ru',
|
||||
},
|
||||
{
|
||||
id: 'country.8762',
|
||||
mapbox_id: 'dXJuOm1ieHBsYzpJam8',
|
||||
wikidata: 'Q183',
|
||||
short_code: 'de',
|
||||
text_en: 'Germany',
|
||||
language_en: 'en',
|
||||
text: 'Germany',
|
||||
language: 'en',
|
||||
text_de: 'Deutschland',
|
||||
language_de: 'de',
|
||||
text_fr: 'Allemagne',
|
||||
language_fr: 'fr',
|
||||
text_nl: 'Duitsland',
|
||||
language_nl: 'nl',
|
||||
text_it: 'Germania',
|
||||
language_it: 'it',
|
||||
text_es: 'Alemania',
|
||||
language_es: 'es',
|
||||
text_pt: 'Alemanha',
|
||||
language_pt: 'pt',
|
||||
text_pl: 'Niemcy',
|
||||
language_pl: 'pl',
|
||||
text_ru: 'Германия',
|
||||
language_ru: 'ru',
|
||||
},
|
||||
],
|
||||
},
|
||||
{
|
||||
id: 'address.7729037509260214',
|
||||
type: 'Feature',
|
||||
place_type: ['address'],
|
||||
relevance: 0.67254,
|
||||
properties: {
|
||||
accuracy: 'street',
|
||||
mapbox_id: 'dXJuOm1ieGFkci1zdHI6ZTFhMjYyZTEtN2I4Ny00YTYxLThlYmMtNTQxYzQyYzljMzQ2',
|
||||
},
|
||||
text_en: 'Germanstraße',
|
||||
place_name_en: 'Germanstraße, 78048 Villingen-Schwenningen, Germany',
|
||||
text: 'Germanstraße',
|
||||
place_name: 'Germanstraße, 78048 Villingen-Schwenningen, Germany',
|
||||
text_de: 'Germanstraße',
|
||||
place_name_de: 'Germanstraße, 78048 Villingen-Schwenningen, Deutschland',
|
||||
text_fr: 'Germanstraße',
|
||||
place_name_fr: 'Germanstraße, 78048 Villingen-Schwenningen, Allemagne',
|
||||
text_nl: 'Germanstraße',
|
||||
place_name_nl: 'Germanstraße, 78048 Villingen-Schwenningen, Duitsland',
|
||||
text_it: 'Germanstraße',
|
||||
place_name_it: 'Germanstraße, 78048 Villingen-Schwenningen, Germania',
|
||||
text_es: 'Germanstraße',
|
||||
place_name_es: 'Germanstraße, 78048 Villingen-Schwenningen, Alemania',
|
||||
text_pt: 'Germanstraße',
|
||||
place_name_pt: 'Germanstraße, 78048 Villingen-Schwenningen, Alemanha',
|
||||
text_pl: 'Germanstraße',
|
||||
place_name_pl: 'Germanstraße, 78048 Villingen-Schwenningen, Niemcy',
|
||||
text_ru: 'Germanstraße',
|
||||
place_name_ru: 'Germanstraße, 78048 Филлинген-Швеннинген, Германия',
|
||||
center: [8.430963, 48.073201],
|
||||
geometry: {
|
||||
type: 'Point',
|
||||
coordinates: [8.430963, 48.073201],
|
||||
},
|
||||
context: [
|
||||
{
|
||||
id: 'postcode.45977146',
|
||||
mapbox_id: 'dXJuOm1ieHBsYzpBcjJPT2c',
|
||||
text_en: '78048',
|
||||
text: '78048',
|
||||
text_de: '78048',
|
||||
text_fr: '78048',
|
||||
text_nl: '78048',
|
||||
text_it: '78048',
|
||||
text_es: '78048',
|
||||
text_pt: '78048',
|
||||
text_pl: '78048',
|
||||
text_ru: '78048',
|
||||
},
|
||||
{
|
||||
id: 'locality.351808058',
|
||||
mapbox_id: 'dXJuOm1ieHBsYzpGUGdxT2c',
|
||||
wikidata: 'Q47501154',
|
||||
text_en: 'Villingen',
|
||||
language_en: 'en',
|
||||
text: 'Villingen',
|
||||
language: 'en',
|
||||
text_de: 'Villingen',
|
||||
language_de: 'de',
|
||||
text_fr: 'Villingen',
|
||||
language_fr: 'nl',
|
||||
text_nl: 'Villingen',
|
||||
language_nl: 'nl',
|
||||
text_it: 'Villingen',
|
||||
language_it: 'it',
|
||||
text_es: 'Villingen',
|
||||
language_es: 'nl',
|
||||
text_pt: 'Villingen',
|
||||
language_pt: 'it',
|
||||
text_pl: 'Villingen',
|
||||
language_pl: 'nl',
|
||||
text_ru: 'Villingen',
|
||||
},
|
||||
{
|
||||
id: 'place.81537082',
|
||||
mapbox_id: 'dXJuOm1ieHBsYzpCTndvT2c',
|
||||
wikidata: 'Q3865',
|
||||
text_en: 'Villingen-Schwenningen',
|
||||
language_en: 'en',
|
||||
text: 'Villingen-Schwenningen',
|
||||
language: 'en',
|
||||
text_de: 'Villingen-Schwenningen',
|
||||
language_de: 'de',
|
||||
text_fr: 'Villingen-Schwenningen',
|
||||
language_fr: 'fr',
|
||||
text_nl: 'Villingen-Schwenningen',
|
||||
language_nl: 'nl',
|
||||
text_it: 'Villingen-Schwenningen',
|
||||
language_it: 'it',
|
||||
text_es: 'Villingen-Schwenningen',
|
||||
language_es: 'es',
|
||||
text_pt: 'Villingen-Schwenningen',
|
||||
language_pt: 'pt',
|
||||
text_pl: 'Villingen-Schwenningen',
|
||||
language_pl: 'pl',
|
||||
text_ru: 'Филлинген-Швеннинген',
|
||||
language_ru: 'ru',
|
||||
},
|
||||
{
|
||||
id: 'district.2729530',
|
||||
mapbox_id: 'dXJuOm1ieHBsYzpLYVk2',
|
||||
wikidata: 'Q8203',
|
||||
text_en: 'Schwarzwald-Baar district',
|
||||
language_en: 'en',
|
||||
text: 'Schwarzwald-Baar district',
|
||||
language: 'en',
|
||||
text_de: 'Schwarzwald-Baar-Kreis',
|
||||
language_de: 'de',
|
||||
text_fr: 'arrondissement de Forêt-Noire-Baar',
|
||||
language_fr: 'fr',
|
||||
text_nl: 'arrondissement de Forêt-Noire-Baar',
|
||||
language_nl: 'fr',
|
||||
text_it: 'circondario della Foresta Nera-Baar',
|
||||
language_it: 'it',
|
||||
text_es: 'arrondissement de Forêt-Noire-Baar',
|
||||
language_es: 'fr',
|
||||
text_pt: 'circondario della Foresta Nera-Baar',
|
||||
language_pt: 'it',
|
||||
text_pl: 'Powiat Schwarzwald-Baar',
|
||||
language_pl: 'pl',
|
||||
text_ru: 'Шварцвальд-Бар',
|
||||
language_ru: 'ru',
|
||||
},
|
||||
{
|
||||
id: 'region.132154',
|
||||
mapbox_id: 'dXJuOm1ieHBsYzpBZ1E2',
|
||||
wikidata: 'Q985',
|
||||
short_code: 'DE-BW',
|
||||
text_en: 'Baden-Württemberg',
|
||||
language_en: 'en',
|
||||
text: 'Baden-Württemberg',
|
||||
language: 'en',
|
||||
text_de: 'Baden-Württemberg',
|
||||
language_de: 'de',
|
||||
text_fr: 'Bade-Wurtemberg',
|
||||
language_fr: 'fr',
|
||||
text_nl: 'Baden-Württemberg',
|
||||
language_nl: 'nl',
|
||||
text_it: 'Baden-Württemberg',
|
||||
language_it: 'it',
|
||||
text_es: 'Baden-Wurtemberg',
|
||||
language_es: 'es',
|
||||
text_pt: 'Baden-Württemberg',
|
||||
language_pt: 'pt',
|
||||
text_pl: 'Badenia-Wirtembergia',
|
||||
language_pl: 'pl',
|
||||
text_ru: 'Баден-Вюртемберг',
|
||||
language_ru: 'ru',
|
||||
},
|
||||
{
|
||||
id: 'country.8762',
|
||||
mapbox_id: 'dXJuOm1ieHBsYzpJam8',
|
||||
wikidata: 'Q183',
|
||||
short_code: 'de',
|
||||
text_en: 'Germany',
|
||||
language_en: 'en',
|
||||
text: 'Germany',
|
||||
language: 'en',
|
||||
text_de: 'Deutschland',
|
||||
language_de: 'de',
|
||||
text_fr: 'Allemagne',
|
||||
language_fr: 'fr',
|
||||
text_nl: 'Duitsland',
|
||||
language_nl: 'nl',
|
||||
text_it: 'Germania',
|
||||
language_it: 'it',
|
||||
text_es: 'Alemania',
|
||||
language_es: 'es',
|
||||
text_pt: 'Alemanha',
|
||||
language_pt: 'pt',
|
||||
text_pl: 'Niemcy',
|
||||
language_pl: 'pl',
|
||||
text_ru: 'Германия',
|
||||
language_ru: 'ru',
|
||||
},
|
||||
],
|
||||
},
|
||||
{
|
||||
id: 'place.85002298',
|
||||
type: 'Feature',
|
||||
place_type: ['place'],
|
||||
relevance: 0.574074,
|
||||
properties: {
|
||||
mapbox_id: 'dXJuOm1ieHBsYzpCUkVJT2c',
|
||||
wikidata: 'Q509998',
|
||||
},
|
||||
text_en: 'Wellheim',
|
||||
language_en: 'en',
|
||||
place_name_en: "Wellheim, arrondissement d'Eichstätt, Bavaria, Germany",
|
||||
text: 'Wellheim',
|
||||
language: 'en',
|
||||
place_name: "Wellheim, arrondissement d'Eichstätt, Bavaria, Germany",
|
||||
text_de: 'Wellheim',
|
||||
language_de: 'de',
|
||||
place_name_de: 'Wellheim, Kreis Eichstätt, Bayern, Deutschland',
|
||||
text_fr: 'Wellheim',
|
||||
language_fr: 'fr',
|
||||
place_name_fr: "Wellheim, arrondissement d'Eichstätt, Bavière, Allemagne",
|
||||
text_nl: 'Wellheim',
|
||||
language_nl: 'nl',
|
||||
place_name_nl: 'Wellheim, Landkreis Eichstätt, Beieren, Duitsland',
|
||||
text_it: 'Wellheim',
|
||||
language_it: 'it',
|
||||
place_name_it: 'Wellheim, circondario di Eichstätt, Baviera, Germania',
|
||||
text_es: 'Wellheim',
|
||||
language_es: 'es',
|
||||
place_name_es: "Wellheim, arrondissement d'Eichstätt, Baviera, Alemania",
|
||||
text_pt: 'Wellheim',
|
||||
language_pt: 'pt',
|
||||
place_name_pt: 'Wellheim, circondario di Eichstätt, Baviera, Alemanha',
|
||||
text_pl: 'Wellheim',
|
||||
language_pl: 'pl',
|
||||
place_name_pl: 'Wellheim, Powiat Eichstätt, Bawaria, Niemcy',
|
||||
text_ru: 'Велльхайм',
|
||||
language_ru: 'ru',
|
||||
place_name_ru: 'Велльхайм, Айхштет, Бавария, Германия',
|
||||
bbox: [11.032347, 48.79008, 11.173361, 48.846386],
|
||||
center: [11.080854, 48.817787],
|
||||
geometry: {
|
||||
type: 'Point',
|
||||
coordinates: [11.080854, 48.817787],
|
||||
},
|
||||
context: [
|
||||
{
|
||||
id: 'district.460346',
|
||||
mapbox_id: 'dXJuOm1ieHBsYzpCd1k2',
|
||||
wikidata: 'Q10491',
|
||||
text_en: "arrondissement d'Eichstätt",
|
||||
language_en: 'fr',
|
||||
text: "arrondissement d'Eichstätt",
|
||||
language: 'fr',
|
||||
text_de: 'Kreis Eichstätt',
|
||||
language_de: 'de',
|
||||
text_fr: "arrondissement d'Eichstätt",
|
||||
language_fr: 'fr',
|
||||
text_nl: 'Landkreis Eichstätt',
|
||||
language_nl: 'nl',
|
||||
text_it: 'circondario di Eichstätt',
|
||||
language_it: 'it',
|
||||
text_es: "arrondissement d'Eichstätt",
|
||||
language_es: 'fr',
|
||||
text_pt: 'circondario di Eichstätt',
|
||||
language_pt: 'it',
|
||||
text_pl: 'Powiat Eichstätt',
|
||||
language_pl: 'pl',
|
||||
text_ru: 'Айхштет',
|
||||
language_ru: 'ru',
|
||||
},
|
||||
{
|
||||
id: 'region.123962',
|
||||
mapbox_id: 'dXJuOm1ieHBsYzpBZVE2',
|
||||
wikidata: 'Q980',
|
||||
short_code: 'DE-BY',
|
||||
text_en: 'Bavaria',
|
||||
language_en: 'en',
|
||||
text: 'Bavaria',
|
||||
language: 'en',
|
||||
text_de: 'Bayern',
|
||||
language_de: 'de',
|
||||
text_fr: 'Bavière',
|
||||
language_fr: 'fr',
|
||||
text_nl: 'Beieren',
|
||||
language_nl: 'nl',
|
||||
text_it: 'Baviera',
|
||||
language_it: 'it',
|
||||
text_es: 'Baviera',
|
||||
language_es: 'es',
|
||||
text_pt: 'Baviera',
|
||||
language_pt: 'pt',
|
||||
text_pl: 'Bawaria',
|
||||
language_pl: 'pl',
|
||||
text_ru: 'Бавария',
|
||||
language_ru: 'ru',
|
||||
},
|
||||
{
|
||||
id: 'country.8762',
|
||||
mapbox_id: 'dXJuOm1ieHBsYzpJam8',
|
||||
wikidata: 'Q183',
|
||||
short_code: 'de',
|
||||
text_en: 'Germany',
|
||||
language_en: 'en',
|
||||
text: 'Germany',
|
||||
language: 'en',
|
||||
text_de: 'Deutschland',
|
||||
language_de: 'de',
|
||||
text_fr: 'Allemagne',
|
||||
language_fr: 'fr',
|
||||
text_nl: 'Duitsland',
|
||||
language_nl: 'nl',
|
||||
text_it: 'Germania',
|
||||
language_it: 'it',
|
||||
text_es: 'Alemania',
|
||||
language_es: 'es',
|
||||
text_pt: 'Alemanha',
|
||||
language_pt: 'pt',
|
||||
text_pl: 'Niemcy',
|
||||
language_pl: 'pl',
|
||||
text_ru: 'Германия',
|
||||
language_ru: 'ru',
|
||||
},
|
||||
],
|
||||
},
|
||||
],
|
||||
attribution:
|
||||
'NOTICE: © 2025 Mapbox and its suppliers. All rights reserved. Use of this data is subject to the Mapbox Terms of Service (https://www.mapbox.com/about/maps/). This response and the information it contains may not be retained.',
|
||||
}
|
||||
@ -19,8 +19,7 @@ export const TEST_CONFIG = {
|
||||
GRAPHQL_URI: 'http://localhost:4000',
|
||||
JWT_EXPIRES: '2y',
|
||||
|
||||
MAPBOX_TOKEN:
|
||||
'pk.eyJ1IjoiYnVzZmFrdG9yIiwiYSI6ImNraDNiM3JxcDBhaWQydG1uczhpZWtpOW4ifQ.7TNRTO-o9aK1Y6MyW_Nd4g',
|
||||
MAPBOX_TOKEN: 'MAPBOX_TOKEN',
|
||||
JWT_SECRET: 'JWT_SECRET',
|
||||
PRIVATE_KEY_PASSPHRASE: 'PRIVATE_KEY_PASSPHRASE',
|
||||
|
||||
@ -61,22 +60,28 @@ interface OverwritableContextParams {
|
||||
authenticatedUser?: Context['user']
|
||||
config?: Partial<typeof CONFIG>
|
||||
pubsub?: Context['pubsub']
|
||||
fetch?: Context['fetch']
|
||||
}
|
||||
interface CreateTestServerOptions {
|
||||
context: () => OverwritableContextParams | Promise<OverwritableContextParams>
|
||||
}
|
||||
|
||||
const crash = () => {
|
||||
throw new Error('Mock me in your test!')
|
||||
}
|
||||
|
||||
export const createApolloTestSetup = (opts?: CreateTestServerOptions) => {
|
||||
const defaultOpts: CreateTestServerOptions = { context: () => ({ authenticatedUser: null }) }
|
||||
const { context: testContext } = opts ?? defaultOpts
|
||||
const database = databaseContext()
|
||||
const context = async (req: { headers: { authorization?: string } }) => {
|
||||
const { authenticatedUser, config = {}, pubsub } = await testContext()
|
||||
const { authenticatedUser, config = {}, pubsub, fetch = crash } = await testContext()
|
||||
return getContext({
|
||||
authenticatedUser,
|
||||
database,
|
||||
pubsub,
|
||||
config: { ...TEST_CONFIG, ...config },
|
||||
fetch,
|
||||
})(req)
|
||||
}
|
||||
|
||||
|
||||
Loading…
x
Reference in New Issue
Block a user