googlemaps-kit 0.5.0 → 0.7.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +56 -3
- package/dist/advanced/parsers.d.ts +1 -1
- package/dist/advanced/parsers.d.ts.map +1 -1
- package/dist/advanced/parsers.js +1 -1
- package/dist/advanced/parsers.js.map +1 -1
- package/dist/advanced.d.ts +2 -2
- package/dist/advanced.d.ts.map +1 -1
- package/dist/advanced.js.map +1 -1
- package/dist/books.d.ts +30 -0
- package/dist/books.d.ts.map +1 -0
- package/dist/books.js +77 -0
- package/dist/books.js.map +1 -0
- package/dist/cli/run.d.ts.map +1 -1
- package/dist/cli/run.js +9 -11
- package/dist/cli/run.js.map +1 -1
- package/dist/cli/tui/app.d.ts.map +1 -1
- package/dist/cli/tui/app.js +7 -7
- package/dist/cli/tui/app.js.map +1 -1
- package/dist/cli.js +14 -11
- package/dist/cli.js.map +1 -1
- package/dist/client/gmaps-client.d.ts +7 -29
- package/dist/client/gmaps-client.d.ts.map +1 -1
- package/dist/client/gmaps-client.js +15 -131
- package/dist/client/gmaps-client.js.map +1 -1
- package/dist/client/http-client.d.ts +3 -1
- package/dist/client/http-client.d.ts.map +1 -1
- package/dist/client/http-client.js +14 -3
- package/dist/client/http-client.js.map +1 -1
- package/dist/client/intent.d.ts +1 -11
- package/dist/client/intent.d.ts.map +1 -1
- package/dist/client/intent.js +17 -13
- package/dist/client/intent.js.map +1 -1
- package/dist/client/maps-tools.d.ts +8 -4
- package/dist/client/maps-tools.d.ts.map +1 -1
- package/dist/client/maps-tools.js +20 -11
- package/dist/client/maps-tools.js.map +1 -1
- package/dist/client/namespaces.d.ts +51 -19
- package/dist/client/namespaces.d.ts.map +1 -1
- package/dist/client/namespaces.js +82 -28
- package/dist/client/namespaces.js.map +1 -1
- package/dist/client/place-workflows.d.ts +7 -0
- package/dist/client/place-workflows.d.ts.map +1 -0
- package/dist/client/place-workflows.js +113 -0
- package/dist/client/place-workflows.js.map +1 -0
- package/dist/finance/client.d.ts +19 -0
- package/dist/finance/client.d.ts.map +1 -0
- package/dist/finance/client.js +75 -0
- package/dist/finance/client.js.map +1 -0
- package/dist/finance/parsers.d.ts +13 -0
- package/dist/finance/parsers.d.ts.map +1 -0
- package/dist/finance/parsers.js +146 -0
- package/dist/finance/parsers.js.map +1 -0
- package/dist/finance/types.d.ts +76 -0
- package/dist/finance/types.d.ts.map +1 -0
- package/dist/finance/types.js +2 -0
- package/dist/finance/types.js.map +1 -0
- package/dist/finance.d.ts +5 -0
- package/dist/finance.d.ts.map +1 -0
- package/dist/finance.js +4 -0
- package/dist/finance.js.map +1 -0
- package/dist/flights/client.d.ts +9 -0
- package/dist/flights/client.d.ts.map +1 -0
- package/dist/flights/client.js +14 -0
- package/dist/flights/client.js.map +1 -0
- package/dist/flights/parsers.d.ts +11 -0
- package/dist/flights/parsers.d.ts.map +1 -0
- package/dist/flights/parsers.js +64 -0
- package/dist/flights/parsers.js.map +1 -0
- package/dist/flights/types.d.ts +52 -0
- package/dist/flights/types.d.ts.map +1 -0
- package/dist/flights/types.js +2 -0
- package/dist/flights/types.js.map +1 -0
- package/dist/flights.d.ts +5 -0
- package/dist/flights.d.ts.map +1 -0
- package/dist/flights.js +4 -0
- package/dist/flights.js.map +1 -0
- package/dist/gemini-web/client.d.ts +16 -0
- package/dist/gemini-web/client.d.ts.map +1 -0
- package/dist/gemini-web/client.js +110 -0
- package/dist/gemini-web/client.js.map +1 -0
- package/dist/gemini-web/parsers.d.ts +5 -0
- package/dist/gemini-web/parsers.d.ts.map +1 -0
- package/dist/gemini-web/parsers.js +62 -0
- package/dist/gemini-web/parsers.js.map +1 -0
- package/dist/gemini-web/types.d.ts +47 -0
- package/dist/gemini-web/types.d.ts.map +1 -0
- package/dist/gemini-web/types.js +2 -0
- package/dist/gemini-web/types.js.map +1 -0
- package/dist/gemini-web.d.ts +5 -0
- package/dist/gemini-web.d.ts.map +1 -0
- package/dist/gemini-web.js +4 -0
- package/dist/gemini-web.js.map +1 -0
- package/dist/google-search/client.d.ts +16 -0
- package/dist/google-search/client.d.ts.map +1 -0
- package/dist/google-search/client.js +117 -0
- package/dist/google-search/client.js.map +1 -0
- package/dist/google-search/errors.d.ts +8 -0
- package/dist/google-search/errors.d.ts.map +1 -0
- package/dist/google-search/errors.js +13 -0
- package/dist/google-search/errors.js.map +1 -0
- package/dist/google-search/html.d.ts +12 -0
- package/dist/google-search/html.d.ts.map +1 -0
- package/dist/google-search/html.js +135 -0
- package/dist/google-search/html.js.map +1 -0
- package/dist/google-search/parsers.d.ts +6 -0
- package/dist/google-search/parsers.d.ts.map +1 -0
- package/dist/google-search/parsers.js +177 -0
- package/dist/google-search/parsers.js.map +1 -0
- package/dist/google-search/types.d.ts +66 -0
- package/dist/google-search/types.d.ts.map +1 -0
- package/dist/google-search/types.js +2 -0
- package/dist/google-search/types.js.map +1 -0
- package/dist/google-search.d.ts +6 -0
- package/dist/google-search.d.ts.map +1 -0
- package/dist/google-search.js +4 -0
- package/dist/google-search.js.map +1 -0
- package/dist/hotels/client.d.ts +9 -0
- package/dist/hotels/client.d.ts.map +1 -0
- package/dist/hotels/client.js +14 -0
- package/dist/hotels/client.js.map +1 -0
- package/dist/hotels/parsers.d.ts +7 -0
- package/dist/hotels/parsers.d.ts.map +1 -0
- package/dist/hotels/parsers.js +74 -0
- package/dist/hotels/parsers.js.map +1 -0
- package/dist/hotels/types.d.ts +55 -0
- package/dist/hotels/types.d.ts.map +1 -0
- package/dist/hotels/types.js +2 -0
- package/dist/hotels/types.js.map +1 -0
- package/dist/hotels.d.ts +4 -0
- package/dist/hotels.d.ts.map +1 -0
- package/dist/hotels.js +3 -0
- package/dist/hotels.js.map +1 -0
- package/dist/index.d.ts +9 -5
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +3 -1
- package/dist/index.js.map +1 -1
- package/dist/known-surfaces.d.ts +35 -5
- package/dist/known-surfaces.d.ts.map +1 -1
- package/dist/known-surfaces.js +35 -5
- package/dist/known-surfaces.js.map +1 -1
- package/dist/lens/client.d.ts +14 -0
- package/dist/lens/client.d.ts.map +1 -0
- package/dist/lens/client.js +116 -0
- package/dist/lens/client.js.map +1 -0
- package/dist/lens/errors.d.ts +8 -0
- package/dist/lens/errors.d.ts.map +1 -0
- package/dist/lens/errors.js +13 -0
- package/dist/lens/errors.js.map +1 -0
- package/dist/lens/types.d.ts +27 -0
- package/dist/lens/types.d.ts.map +1 -0
- package/dist/lens/types.js +2 -0
- package/dist/lens/types.js.map +1 -0
- package/dist/lens.d.ts +8 -0
- package/dist/lens.d.ts.map +1 -0
- package/dist/lens.js +5 -0
- package/dist/lens.js.map +1 -0
- package/dist/news.d.ts +46 -0
- package/dist/news.d.ts.map +1 -0
- package/dist/news.js +202 -0
- package/dist/news.js.map +1 -0
- package/dist/pagespeed/client.d.ts +28 -0
- package/dist/pagespeed/client.d.ts.map +1 -0
- package/dist/pagespeed/client.js +222 -0
- package/dist/pagespeed/client.js.map +1 -0
- package/dist/pagespeed/errors.d.ts +9 -0
- package/dist/pagespeed/errors.d.ts.map +1 -0
- package/dist/pagespeed/errors.js +15 -0
- package/dist/pagespeed/errors.js.map +1 -0
- package/dist/pagespeed/parsers.d.ts +7 -0
- package/dist/pagespeed/parsers.d.ts.map +1 -0
- package/dist/pagespeed/parsers.js +236 -0
- package/dist/pagespeed/parsers.js.map +1 -0
- package/dist/pagespeed/types.d.ts +156 -0
- package/dist/pagespeed/types.d.ts.map +1 -0
- package/dist/pagespeed/types.js +2 -0
- package/dist/pagespeed/types.js.map +1 -0
- package/dist/pagespeed/wire.d.ts +10 -0
- package/dist/pagespeed/wire.d.ts.map +1 -0
- package/dist/pagespeed/wire.js +96 -0
- package/dist/pagespeed/wire.js.map +1 -0
- package/dist/pagespeed.d.ts +6 -0
- package/dist/pagespeed.d.ts.map +1 -0
- package/dist/pagespeed.js +4 -0
- package/dist/pagespeed.js.map +1 -0
- package/dist/parsers/geocode.d.ts.map +1 -1
- package/dist/parsers/geocode.js +30 -1
- package/dist/parsers/geocode.js.map +1 -1
- package/dist/parsers/reviews.d.ts +8 -1
- package/dist/parsers/reviews.d.ts.map +1 -1
- package/dist/parsers/reviews.js +46 -9
- package/dist/parsers/reviews.js.map +1 -1
- package/dist/platform/catalog.d.ts +18 -0
- package/dist/platform/catalog.d.ts.map +1 -0
- package/dist/platform/catalog.js +320 -0
- package/dist/platform/catalog.js.map +1 -0
- package/dist/platform/parity.d.ts +12 -0
- package/dist/platform/parity.d.ts.map +1 -0
- package/dist/platform/parity.js +25 -0
- package/dist/platform/parity.js.map +1 -0
- package/dist/services/elevation.d.ts +6 -4
- package/dist/services/elevation.d.ts.map +1 -1
- package/dist/services/elevation.js +39 -4
- package/dist/services/elevation.js.map +1 -1
- package/dist/services/environment/air-quality.d.ts +39 -0
- package/dist/services/environment/air-quality.d.ts.map +1 -0
- package/dist/services/environment/air-quality.js +82 -0
- package/dist/services/environment/air-quality.js.map +1 -0
- package/dist/services/environment/weather.d.ts +42 -0
- package/dist/services/environment/weather.d.ts.map +1 -0
- package/dist/services/environment/weather.js +63 -0
- package/dist/services/environment/weather.js.map +1 -0
- package/dist/services/geocode.d.ts +5 -1
- package/dist/services/geocode.d.ts.map +1 -1
- package/dist/services/geocode.js +13 -0
- package/dist/services/geocode.js.map +1 -1
- package/dist/services/keyed.d.ts +80 -0
- package/dist/services/keyed.d.ts.map +1 -0
- package/dist/services/keyed.js +152 -0
- package/dist/services/keyed.js.map +1 -0
- package/dist/services/knowledge.d.ts +6 -2
- package/dist/services/knowledge.d.ts.map +1 -1
- package/dist/services/knowledge.js +30 -5
- package/dist/services/knowledge.js.map +1 -1
- package/dist/services/mobility.d.ts.map +1 -1
- package/dist/services/mobility.js +13 -2
- package/dist/services/mobility.js.map +1 -1
- package/dist/services/nearby-search.d.ts +32 -0
- package/dist/services/nearby-search.d.ts.map +1 -0
- package/dist/services/nearby-search.js +85 -0
- package/dist/services/nearby-search.js.map +1 -0
- package/dist/services/panorama.d.ts +8 -1
- package/dist/services/panorama.d.ts.map +1 -1
- package/dist/services/panorama.js +48 -0
- package/dist/services/panorama.js.map +1 -1
- package/dist/services/photos.d.ts.map +1 -1
- package/dist/services/photos.js +9 -2
- package/dist/services/photos.js.map +1 -1
- package/dist/services/places.d.ts.map +1 -1
- package/dist/services/places.js +1 -0
- package/dist/services/places.js.map +1 -1
- package/dist/services/reviews.d.ts.map +1 -1
- package/dist/services/reviews.js +4 -1
- package/dist/services/reviews.js.map +1 -1
- package/dist/services/search.d.ts +8 -3
- package/dist/services/search.d.ts.map +1 -1
- package/dist/services/search.js +28 -9
- package/dist/services/search.js.map +1 -1
- package/dist/translate.d.ts +75 -0
- package/dist/translate.d.ts.map +1 -0
- package/dist/translate.js +126 -0
- package/dist/translate.js.map +1 -0
- package/dist/travel-google/common.d.ts +24 -0
- package/dist/travel-google/common.d.ts.map +1 -0
- package/dist/travel-google/common.js +72 -0
- package/dist/travel-google/common.js.map +1 -0
- package/dist/trends/client.d.ts +17 -0
- package/dist/trends/client.d.ts.map +1 -0
- package/dist/trends/client.js +86 -0
- package/dist/trends/client.js.map +1 -0
- package/dist/trends/errors.d.ts +8 -0
- package/dist/trends/errors.d.ts.map +1 -0
- package/dist/trends/errors.js +13 -0
- package/dist/trends/errors.js.map +1 -0
- package/dist/trends/links.d.ts +8 -0
- package/dist/trends/links.d.ts.map +1 -0
- package/dist/trends/links.js +71 -0
- package/dist/trends/links.js.map +1 -0
- package/dist/trends/parsers.d.ts +5 -0
- package/dist/trends/parsers.d.ts.map +1 -0
- package/dist/trends/parsers.js +126 -0
- package/dist/trends/parsers.js.map +1 -0
- package/dist/trends/types.d.ts +71 -0
- package/dist/trends/types.d.ts.map +1 -0
- package/dist/trends/types.js +2 -0
- package/dist/trends/types.js.map +1 -0
- package/dist/trends.d.ts +9 -0
- package/dist/trends.d.ts.map +1 -0
- package/dist/trends.js +8 -0
- package/dist/trends.js.map +1 -0
- package/dist/types/common.d.ts +28 -2
- package/dist/types/common.d.ts.map +1 -1
- package/dist/types/common.js.map +1 -1
- package/dist/types/directions.d.ts +1 -1
- package/dist/types/directions.d.ts.map +1 -1
- package/dist/types/dx.d.ts +23 -10
- package/dist/types/dx.d.ts.map +1 -1
- package/dist/types/panorama.d.ts +19 -0
- package/dist/types/panorama.d.ts.map +1 -1
- package/dist/types/reviews.d.ts +3 -4
- package/dist/types/reviews.d.ts.map +1 -1
- package/dist/types/suggest.d.ts +4 -6
- package/dist/types/suggest.d.ts.map +1 -1
- package/dist/utils/google-web.d.ts +24 -0
- package/dist/utils/google-web.d.ts.map +1 -0
- package/dist/utils/google-web.js +150 -0
- package/dist/utils/google-web.js.map +1 -0
- package/dist/utils/place-ref.d.ts +14 -4
- package/dist/utils/place-ref.d.ts.map +1 -1
- package/dist/utils/place-ref.js +49 -1
- package/dist/utils/place-ref.js.map +1 -1
- package/dist/youtube/client.d.ts +19 -0
- package/dist/youtube/client.d.ts.map +1 -0
- package/dist/youtube/client.js +115 -0
- package/dist/youtube/client.js.map +1 -0
- package/dist/youtube/errors.d.ts +8 -0
- package/dist/youtube/errors.d.ts.map +1 -0
- package/dist/youtube/errors.js +13 -0
- package/dist/youtube/errors.js.map +1 -0
- package/dist/youtube/parsers.d.ts +9 -0
- package/dist/youtube/parsers.d.ts.map +1 -0
- package/dist/youtube/parsers.js +213 -0
- package/dist/youtube/parsers.js.map +1 -0
- package/dist/youtube/types.d.ts +90 -0
- package/dist/youtube/types.d.ts.map +1 -0
- package/dist/youtube/types.js +2 -0
- package/dist/youtube/types.js.map +1 -0
- package/dist/youtube.d.ts +9 -0
- package/dist/youtube.d.ts.map +1 -0
- package/dist/youtube.js +6 -0
- package/dist/youtube.js.map +1 -0
- package/docs/books.md +18 -0
- package/docs/environment-research.md +65 -0
- package/docs/finance-research.md +153 -0
- package/docs/finance.md +43 -0
- package/docs/gemini-web.md +36 -0
- package/docs/google-ai-books-research.md +53 -0
- package/docs/google-media-research.md +105 -0
- package/docs/google-search-research.md +36 -0
- package/docs/google-search.md +53 -0
- package/docs/google-services-research.md +135 -0
- package/docs/google-travel-research.md +86 -0
- package/docs/internal/reverse-engineering.md +85 -0
- package/docs/lens.md +54 -0
- package/docs/maps-revalidation.md +31 -0
- package/docs/news.md +35 -0
- package/docs/pagespeed-research.md +153 -0
- package/docs/pagespeed.md +135 -0
- package/docs/reviews-research.md +33 -0
- package/docs/translate.md +78 -0
- package/docs/trends-research.md +82 -0
- package/docs/trends.md +75 -0
- package/docs/youtube.md +72 -0
- package/package.json +77 -2
|
@@ -0,0 +1,152 @@
|
|
|
1
|
+
import { GMapsError } from '../types/common.js';
|
|
2
|
+
function resolveApiKey(override, configKey, envKey, label) {
|
|
3
|
+
const key = override ?? configKey ?? envKey;
|
|
4
|
+
if (!key) {
|
|
5
|
+
throw new GMapsError(`${label ?? 'Service'} requires apiKey, client config, or environment variable`);
|
|
6
|
+
}
|
|
7
|
+
return key;
|
|
8
|
+
}
|
|
9
|
+
/** Roads — snapToRoads / nearestRoads (requires apiKey). */
|
|
10
|
+
export class RoadsService {
|
|
11
|
+
http;
|
|
12
|
+
apiKey;
|
|
13
|
+
constructor(http, config = {}) {
|
|
14
|
+
this.http = http;
|
|
15
|
+
this.apiKey = config.roadsApiKey ?? process.env.GMAPS_ROADS_API_KEY;
|
|
16
|
+
}
|
|
17
|
+
async snapToRoads(options) {
|
|
18
|
+
const key = resolveApiKey(options.apiKey, this.apiKey, undefined, 'Roads');
|
|
19
|
+
const path = options.path.map((p) => `${p.lat},${p.lng}`).join('|');
|
|
20
|
+
const params = new URLSearchParams({ path, interpolate: String(options.interpolate ?? false) });
|
|
21
|
+
const url = `https://roads.googleapis.com/v1/snapToRoads?${params.toString()}`;
|
|
22
|
+
const body = await this.http.get(url, {
|
|
23
|
+
extraHeaders: { 'X-Goog-Api-Key': key },
|
|
24
|
+
raw: true,
|
|
25
|
+
noRetry: true,
|
|
26
|
+
});
|
|
27
|
+
return JSON.parse(body);
|
|
28
|
+
}
|
|
29
|
+
async nearestRoads(options) {
|
|
30
|
+
const key = resolveApiKey(options.apiKey, this.apiKey, undefined, 'Roads');
|
|
31
|
+
const points = options.points.map((p) => `${p.lat},${p.lng}`).join('|');
|
|
32
|
+
const params = new URLSearchParams({ points });
|
|
33
|
+
const url = `https://roads.googleapis.com/v1/nearestRoads?${params.toString()}`;
|
|
34
|
+
const body = await this.http.get(url, {
|
|
35
|
+
extraHeaders: { 'X-Goog-Api-Key': key },
|
|
36
|
+
raw: true,
|
|
37
|
+
noRetry: true,
|
|
38
|
+
});
|
|
39
|
+
return JSON.parse(body);
|
|
40
|
+
}
|
|
41
|
+
}
|
|
42
|
+
/** Solar building insights (requires apiKey). */
|
|
43
|
+
export class SolarService {
|
|
44
|
+
http;
|
|
45
|
+
apiKey;
|
|
46
|
+
constructor(http, config = {}) {
|
|
47
|
+
this.http = http;
|
|
48
|
+
this.apiKey = config.solarApiKey ?? process.env.GMAPS_SOLAR_API_KEY;
|
|
49
|
+
}
|
|
50
|
+
async findClosestBuildingInsights(options) {
|
|
51
|
+
const key = resolveApiKey(options.apiKey, this.apiKey, undefined, 'Solar');
|
|
52
|
+
const params = new URLSearchParams({
|
|
53
|
+
'location.latitude': String(options.lat),
|
|
54
|
+
'location.longitude': String(options.lng),
|
|
55
|
+
});
|
|
56
|
+
const url = `https://solar.googleapis.com/v1/buildingInsights:findClosest?${params.toString()}`;
|
|
57
|
+
const body = await this.http.get(url, {
|
|
58
|
+
extraHeaders: { 'X-Goog-Api-Key': key },
|
|
59
|
+
raw: true,
|
|
60
|
+
noRetry: true,
|
|
61
|
+
});
|
|
62
|
+
return JSON.parse(body);
|
|
63
|
+
}
|
|
64
|
+
}
|
|
65
|
+
/** Pollen forecast (requires apiKey). */
|
|
66
|
+
export class PollenService {
|
|
67
|
+
http;
|
|
68
|
+
apiKey;
|
|
69
|
+
constructor(http, config = {}) {
|
|
70
|
+
this.http = http;
|
|
71
|
+
this.apiKey = config.pollenApiKey ?? process.env.GMAPS_POLLEN_API_KEY;
|
|
72
|
+
}
|
|
73
|
+
async lookupForecast(options) {
|
|
74
|
+
const key = resolveApiKey(options.apiKey, this.apiKey, undefined, 'Pollen');
|
|
75
|
+
const params = new URLSearchParams({
|
|
76
|
+
'location.latitude': String(options.lat),
|
|
77
|
+
'location.longitude': String(options.lng),
|
|
78
|
+
days: String(options.days ?? 1),
|
|
79
|
+
});
|
|
80
|
+
const url = `https://pollen.googleapis.com/v1/forecast:lookup?${params.toString()}`;
|
|
81
|
+
const body = await this.http.get(url, {
|
|
82
|
+
extraHeaders: { 'X-Goog-Api-Key': key },
|
|
83
|
+
raw: true,
|
|
84
|
+
noRetry: true,
|
|
85
|
+
});
|
|
86
|
+
return JSON.parse(body);
|
|
87
|
+
}
|
|
88
|
+
}
|
|
89
|
+
/** Address validation (requires apiKey). */
|
|
90
|
+
export class AddressValidationService {
|
|
91
|
+
http;
|
|
92
|
+
apiKey;
|
|
93
|
+
constructor(http, config = {}) {
|
|
94
|
+
this.http = http;
|
|
95
|
+
this.apiKey = config.addressValidationApiKey ?? process.env.GMAPS_ADDRESS_VALIDATION_API_KEY;
|
|
96
|
+
}
|
|
97
|
+
async validateAddress(options) {
|
|
98
|
+
const key = resolveApiKey(options.apiKey, this.apiKey, undefined, 'Address Validation');
|
|
99
|
+
const url = 'https://addressvalidation.googleapis.com/v1:validateAddress';
|
|
100
|
+
const payload = {
|
|
101
|
+
address: {
|
|
102
|
+
addressLines: options.addressLines,
|
|
103
|
+
regionCode: options.regionCode,
|
|
104
|
+
},
|
|
105
|
+
};
|
|
106
|
+
const body = await this.httpPostJson(url, payload, key);
|
|
107
|
+
return JSON.parse(body);
|
|
108
|
+
}
|
|
109
|
+
async httpPostJson(url, payload, apiKey) {
|
|
110
|
+
const response = await fetch(url, {
|
|
111
|
+
method: 'POST',
|
|
112
|
+
headers: {
|
|
113
|
+
'Content-Type': 'application/json',
|
|
114
|
+
'X-Goog-Api-Key': apiKey,
|
|
115
|
+
},
|
|
116
|
+
body: JSON.stringify(payload),
|
|
117
|
+
});
|
|
118
|
+
if (!response.ok) {
|
|
119
|
+
throw new GMapsError(`HTTP ${response.status}: ${response.statusText}`);
|
|
120
|
+
}
|
|
121
|
+
return response.text();
|
|
122
|
+
}
|
|
123
|
+
}
|
|
124
|
+
/** WiFi/cell geolocation (requires apiKey). */
|
|
125
|
+
export class GeolocationService {
|
|
126
|
+
apiKey;
|
|
127
|
+
constructor(_http, config = {}) {
|
|
128
|
+
this.apiKey = config.geolocationApiKey ?? process.env.GMAPS_GEOLOCATION_API_KEY;
|
|
129
|
+
}
|
|
130
|
+
async geolocate(options) {
|
|
131
|
+
const key = resolveApiKey(options.apiKey, this.apiKey, undefined, 'Geolocation');
|
|
132
|
+
const url = `https://www.googleapis.com/geolocation/v1/geolocate?key=${encodeURIComponent(key)}`;
|
|
133
|
+
const body = await this.httpPostJson(url, {
|
|
134
|
+
considerIp: options.considerIp,
|
|
135
|
+
wifiAccessPoints: options.wifiAccessPoints,
|
|
136
|
+
cellTowers: options.cellTowers,
|
|
137
|
+
});
|
|
138
|
+
return JSON.parse(body);
|
|
139
|
+
}
|
|
140
|
+
async httpPostJson(url, payload) {
|
|
141
|
+
const response = await fetch(url, {
|
|
142
|
+
method: 'POST',
|
|
143
|
+
headers: { 'Content-Type': 'application/json' },
|
|
144
|
+
body: JSON.stringify(payload),
|
|
145
|
+
});
|
|
146
|
+
if (!response.ok) {
|
|
147
|
+
throw new GMapsError(`HTTP ${response.status}: ${response.statusText}`);
|
|
148
|
+
}
|
|
149
|
+
return response.text();
|
|
150
|
+
}
|
|
151
|
+
}
|
|
152
|
+
//# sourceMappingURL=keyed.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"keyed.js","sourceRoot":"","sources":["../../src/services/keyed.ts"],"names":[],"mappings":"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"}
|
|
@@ -2,6 +2,9 @@ import { HttpClient } from '../client/http-client.js';
|
|
|
2
2
|
import type { GMapsConfig, KnowledgeEntity, PlaceDetails } from '../types/common.js';
|
|
3
3
|
export interface GetKnowledgeOptions {
|
|
4
4
|
hexId: string;
|
|
5
|
+
name?: string;
|
|
6
|
+
lat?: number;
|
|
7
|
+
lng?: number;
|
|
5
8
|
ftid?: string;
|
|
6
9
|
placeId?: string;
|
|
7
10
|
/** Use place preview fields when the RPC surface is unavailable. */
|
|
@@ -16,10 +19,11 @@ export declare class KnowledgeService {
|
|
|
16
19
|
constructor(http: HttpClient, config: GMapsConfig);
|
|
17
20
|
/**
|
|
18
21
|
* Fetch knowledge entity data for a place.
|
|
19
|
-
*
|
|
20
|
-
*
|
|
22
|
+
* When `fallbackDetails` is omitted, fetches a live place preview and derives facts from
|
|
23
|
+
* categories and amenities — getknowledgeentity returns HTTP 400 for every pb variant.
|
|
21
24
|
*/
|
|
22
25
|
get(options: GetKnowledgeOptions): Promise<KnowledgeEntity | null>;
|
|
26
|
+
private fetchPreviewDetails;
|
|
23
27
|
private fromPlaceDetails;
|
|
24
28
|
}
|
|
25
29
|
//# sourceMappingURL=knowledge.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"knowledge.d.ts","sourceRoot":"","sources":["../../src/services/knowledge.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,0BAA0B,CAAC;
|
|
1
|
+
{"version":3,"file":"knowledge.d.ts","sourceRoot":"","sources":["../../src/services/knowledge.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,0BAA0B,CAAC;AAOtD,OAAO,KAAK,EAAE,WAAW,EAAE,eAAe,EAAE,YAAY,EAAE,MAAM,oBAAoB,CAAC;AAIrF,MAAM,WAAW,mBAAmB;IAClC,KAAK,EAAE,MAAM,CAAC;IACd,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,GAAG,CAAC,EAAE,MAAM,CAAC;IACb,GAAG,CAAC,EAAE,MAAM,CAAC;IACb,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,oEAAoE;IACpE,eAAe,CAAC,EAAE,YAAY,CAAC;IAC/B,mFAAmF;IACnF,MAAM,CAAC,EAAE,OAAO,CAAC;CAClB;AAED,qBAAa,gBAAgB;IAC3B,OAAO,CAAC,IAAI,CAAa;IACzB,OAAO,CAAC,EAAE,CAAS;IACnB,OAAO,CAAC,EAAE,CAAS;gBAEP,IAAI,EAAE,UAAU,EAAE,MAAM,EAAE,WAAW;IAMjD;;;;OAIG;IACG,GAAG,CAAC,OAAO,EAAE,mBAAmB,GAAG,OAAO,CAAC,eAAe,GAAG,IAAI,CAAC;YAsC1D,mBAAmB;IAwBjC,OAAO,CAAC,gBAAgB;CAOzB"}
|
|
@@ -1,5 +1,7 @@
|
|
|
1
|
+
import { extractPlaceDetails } from '../parsers/place.js';
|
|
1
2
|
import { extractKnowledgeEntity, extractKnowledgeFromPlaceDetails, } from '../parsers/knowledge.js';
|
|
2
|
-
import { buildKnowledgeUrl } from '../rpc/pb-builders.js';
|
|
3
|
+
import { buildKnowledgeUrl, buildPlaceUrl } from '../rpc/pb-builders.js';
|
|
4
|
+
import { buildPlaceReferer } from '../utils/place-ref.js';
|
|
3
5
|
export class KnowledgeService {
|
|
4
6
|
http;
|
|
5
7
|
hl;
|
|
@@ -11,8 +13,8 @@ export class KnowledgeService {
|
|
|
11
13
|
}
|
|
12
14
|
/**
|
|
13
15
|
* Fetch knowledge entity data for a place.
|
|
14
|
-
*
|
|
15
|
-
*
|
|
16
|
+
* When `fallbackDetails` is omitted, fetches a live place preview and derives facts from
|
|
17
|
+
* categories and amenities — getknowledgeentity returns HTTP 400 for every pb variant.
|
|
16
18
|
*/
|
|
17
19
|
async get(options) {
|
|
18
20
|
if (options.fallbackDetails && options.tryRpc !== true) {
|
|
@@ -42,11 +44,34 @@ export class KnowledgeService {
|
|
|
42
44
|
// RPC unavailable — use fallback below
|
|
43
45
|
}
|
|
44
46
|
}
|
|
45
|
-
|
|
46
|
-
|
|
47
|
+
const fallback = options.fallbackDetails ?? (await this.fetchPreviewDetails(options));
|
|
48
|
+
if (fallback) {
|
|
49
|
+
return this.fromPlaceDetails(fallback);
|
|
47
50
|
}
|
|
48
51
|
return null;
|
|
49
52
|
}
|
|
53
|
+
async fetchPreviewDetails(options) {
|
|
54
|
+
try {
|
|
55
|
+
const url = buildPlaceUrl({
|
|
56
|
+
hexId: options.hexId,
|
|
57
|
+
ftid: options.ftid,
|
|
58
|
+
name: options.name,
|
|
59
|
+
lat: options.lat,
|
|
60
|
+
lng: options.lng,
|
|
61
|
+
hl: this.hl,
|
|
62
|
+
gl: this.gl,
|
|
63
|
+
mode: 'live',
|
|
64
|
+
});
|
|
65
|
+
const data = await this.http.get(url, {
|
|
66
|
+
referer: buildPlaceReferer(options.name),
|
|
67
|
+
includeOrigin: true,
|
|
68
|
+
});
|
|
69
|
+
return extractPlaceDetails(data);
|
|
70
|
+
}
|
|
71
|
+
catch {
|
|
72
|
+
return null;
|
|
73
|
+
}
|
|
74
|
+
}
|
|
50
75
|
fromPlaceDetails(details) {
|
|
51
76
|
const entity = extractKnowledgeFromPlaceDetails(details);
|
|
52
77
|
if (entity.name || entity.description || entity.facts?.length) {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"knowledge.js","sourceRoot":"","sources":["../../src/services/knowledge.ts"],"names":[],"mappings":"AACA,OAAO,EACL,sBAAsB,EACtB,gCAAgC,GACjC,MAAM,yBAAyB,CAAC;AACjC,OAAO,EAAE,iBAAiB,EAAE,MAAM,uBAAuB,CAAC;
|
|
1
|
+
{"version":3,"file":"knowledge.js","sourceRoot":"","sources":["../../src/services/knowledge.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"mobility.d.ts","sourceRoot":"","sources":["../../src/services/mobility.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,0BAA0B,CAAC;AAKtD,OAAO,EAAc,WAAW,EAAqB,MAAM,oBAAoB,CAAC;AAChF,OAAO,KAAK,EAAE,qBAAqB,EAA8D,uBAAuB,EAAE,iBAAiB,EAAE,0BAA0B,EAAE,OAAO,EAAE,mBAAmB,EAAE,YAAY,EAAE,oBAAoB,EAAe,MAAM,sBAAsB,CAAC;AAgCrR,qBAAa,cAAc;IACzB,OAAO,CAAC,OAAO,CAAgB;IAC/B,OAAO,CAAC,MAAM,CAAgB;gBAElB,IAAI,EAAE,UAAU,EAAE,MAAM,EAAE,WAAW;IAKjD;;;;;OAKG;IACG,MAAM,CAAC,OAAO,EAAE,oBAAoB,GAAG,OAAO,CAAC,OAAO,EAAE,CAAC;IAsD/D;;;;;OAKG;IACG,eAAe,CAAC,SAAS,EAAE,MAAM,GAAG,OAAO,CAAC,mBAAmB,CAAC;IAWtE;;;;OAIG;IACG,UAAU,CAAC,SAAS,EAAE,MAAM,GAAG,OAAO,CAAC,YAAY,CAAC;CAQ3D;AAkBD,qBAAa,iBAAiB;IAC5B,OAAO,CAAC,OAAO,CAAgB;IAC/B,OAAO,CAAC,MAAM,CAAgB;gBAElB,IAAI,EAAE,UAAU,EAAE,MAAM,EAAE,WAAW;IAKjD;;;;;;OAMG;IACG,YAAY,CAAC,OAAO,EAAE,uBAAuB,GAAG,OAAO,CAAC,iBAAiB,EAAE,CAAC;
|
|
1
|
+
{"version":3,"file":"mobility.d.ts","sourceRoot":"","sources":["../../src/services/mobility.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,0BAA0B,CAAC;AAKtD,OAAO,EAAc,WAAW,EAAqB,MAAM,oBAAoB,CAAC;AAChF,OAAO,KAAK,EAAE,qBAAqB,EAA8D,uBAAuB,EAAE,iBAAiB,EAAE,0BAA0B,EAAE,OAAO,EAAE,mBAAmB,EAAE,YAAY,EAAE,oBAAoB,EAAe,MAAM,sBAAsB,CAAC;AAgCrR,qBAAa,cAAc;IACzB,OAAO,CAAC,OAAO,CAAgB;IAC/B,OAAO,CAAC,MAAM,CAAgB;gBAElB,IAAI,EAAE,UAAU,EAAE,MAAM,EAAE,WAAW;IAKjD;;;;;OAKG;IACG,MAAM,CAAC,OAAO,EAAE,oBAAoB,GAAG,OAAO,CAAC,OAAO,EAAE,CAAC;IAsD/D;;;;;OAKG;IACG,eAAe,CAAC,SAAS,EAAE,MAAM,GAAG,OAAO,CAAC,mBAAmB,CAAC;IAWtE;;;;OAIG;IACG,UAAU,CAAC,SAAS,EAAE,MAAM,GAAG,OAAO,CAAC,YAAY,CAAC;CAQ3D;AAkBD,qBAAa,iBAAiB;IAC5B,OAAO,CAAC,OAAO,CAAgB;IAC/B,OAAO,CAAC,MAAM,CAAgB;gBAElB,IAAI,EAAE,UAAU,EAAE,MAAM,EAAE,WAAW;IAKjD;;;;;;OAMG;IACG,YAAY,CAAC,OAAO,EAAE,uBAAuB,GAAG,OAAO,CAAC,iBAAiB,EAAE,CAAC;IAyFlF;;;;;;;;OAQG;IACG,SAAS,CAAC,SAAS,EAAE,MAAM,GAAG,OAAO,CAAC,KAAK,CAAC;IAOlD;;;;;;;OAOG;IACG,UAAU,CAAC,SAAS,EAAE,MAAM,GAAG,OAAO,CAAC,KAAK,CAAC;CAKpD;AAMD;;;;;;GAMG;AAEH,qBAAa,gBAAgB;IAC3B,OAAO,CAAC,MAAM,CAAgB;gBAElB,IAAI,EAAE,UAAU,EAAE,MAAM,GAAE,WAAgB;IAItD;;;OAGG;IACG,eAAe,CAAC,OAAO,EAAE,0BAA0B,GAAG,OAAO,CAAC,qBAAqB,CAAC;IAiB1F,+DAA+D;IACzD,mBAAmB,CACvB,QAAQ,EAAE,0BAA0B,EAAE,EACtC,WAAW,SAAI,GACd,OAAO,CAAC,KAAK,CAAC,qBAAqB,GAAG,IAAI,CAAC,CAAC;CAgBhD"}
|
|
@@ -187,14 +187,25 @@ export class EvChargingService {
|
|
|
187
187
|
}
|
|
188
188
|
const enriched = await pooledMap(candidates, ENRICH_CONCURRENCY, async (station) => {
|
|
189
189
|
try {
|
|
190
|
-
const
|
|
190
|
+
const preview = await this.places.fetchPreview({
|
|
191
191
|
hexId: station.id,
|
|
192
192
|
name: station.name,
|
|
193
193
|
lat: station.lat,
|
|
194
194
|
lng: station.lng,
|
|
195
195
|
mode: 'live',
|
|
196
196
|
});
|
|
197
|
-
|
|
197
|
+
let chargers = extractEvChargers(preview.data, station.id);
|
|
198
|
+
if (chargers.length === 0) {
|
|
199
|
+
const rich = await this.places.fetchPreview({
|
|
200
|
+
hexId: station.id,
|
|
201
|
+
name: station.name,
|
|
202
|
+
lat: station.lat,
|
|
203
|
+
lng: station.lng,
|
|
204
|
+
mode: 'rich',
|
|
205
|
+
});
|
|
206
|
+
chargers = extractEvChargers(rich.data, station.id);
|
|
207
|
+
}
|
|
208
|
+
return { ...station, chargers };
|
|
198
209
|
}
|
|
199
210
|
catch {
|
|
200
211
|
// A preview failure costs connector detail, not the station itself.
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"mobility.js","sourceRoot":"","sources":["../../src/services/mobility.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"mobility.js","sourceRoot":"","sources":["../../src/services/mobility.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,32 @@
|
|
|
1
|
+
import type { GMapsConfig, LocationRef, SearchResult } from '../types/common.js';
|
|
2
|
+
import { HttpClient } from '../client/http-client.js';
|
|
3
|
+
export interface NearbySearchOptions {
|
|
4
|
+
/** Places API (New) includedTypes — at least one required. */
|
|
5
|
+
includedTypes: string[];
|
|
6
|
+
location: LocationRef;
|
|
7
|
+
/** Search radius in metres (client-side filter after search). */
|
|
8
|
+
radiusMeters?: number;
|
|
9
|
+
maxResultCount?: number;
|
|
10
|
+
hl?: string;
|
|
11
|
+
gl?: string;
|
|
12
|
+
rankPreference?: 'DISTANCE' | 'POPULARITY';
|
|
13
|
+
}
|
|
14
|
+
export interface NearbySearchResult {
|
|
15
|
+
places: SearchResult[];
|
|
16
|
+
/** Mirrors Places API (New) — offset token when more pages exist. */
|
|
17
|
+
nextPageToken?: string;
|
|
18
|
+
}
|
|
19
|
+
export declare class NearbySearchService {
|
|
20
|
+
private search;
|
|
21
|
+
private hl;
|
|
22
|
+
private gl;
|
|
23
|
+
constructor(http: HttpClient, config: GMapsConfig);
|
|
24
|
+
/**
|
|
25
|
+
* Nearby Search — categorical place search biased to a point.
|
|
26
|
+
*
|
|
27
|
+
* Consumer Maps has no type-only RPC; this mirrors the UI by running one
|
|
28
|
+
* text search per included type and merging/deduping by place id.
|
|
29
|
+
*/
|
|
30
|
+
searchNearby(options: NearbySearchOptions): Promise<NearbySearchResult>;
|
|
31
|
+
}
|
|
32
|
+
//# sourceMappingURL=nearby-search.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"nearby-search.d.ts","sourceRoot":"","sources":["../../src/services/nearby-search.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,WAAW,EAAE,WAAW,EAAE,YAAY,EAAE,MAAM,oBAAoB,CAAC;AACjF,OAAO,EAAE,UAAU,EAAE,MAAM,0BAA0B,CAAC;AAgCtD,MAAM,WAAW,mBAAmB;IAClC,8DAA8D;IAC9D,aAAa,EAAE,MAAM,EAAE,CAAC;IACxB,QAAQ,EAAE,WAAW,CAAC;IACtB,iEAAiE;IACjE,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,EAAE,CAAC,EAAE,MAAM,CAAC;IACZ,EAAE,CAAC,EAAE,MAAM,CAAC;IACZ,cAAc,CAAC,EAAE,UAAU,GAAG,YAAY,CAAC;CAC5C;AAED,MAAM,WAAW,kBAAkB;IACjC,MAAM,EAAE,YAAY,EAAE,CAAC;IACvB,qEAAqE;IACrE,aAAa,CAAC,EAAE,MAAM,CAAC;CACxB;AAED,qBAAa,mBAAmB;IAC9B,OAAO,CAAC,MAAM,CAAgB;IAC9B,OAAO,CAAC,EAAE,CAAS;IACnB,OAAO,CAAC,EAAE,CAAS;gBAEP,IAAI,EAAE,UAAU,EAAE,MAAM,EAAE,WAAW;IAMjD;;;;;OAKG;IACG,YAAY,CAAC,OAAO,EAAE,mBAAmB,GAAG,OAAO,CAAC,kBAAkB,CAAC;CAsD9E"}
|
|
@@ -0,0 +1,85 @@
|
|
|
1
|
+
import { SearchService } from './search.js';
|
|
2
|
+
import { haversineMeters } from '../utils/geo.js';
|
|
3
|
+
/** Maps includedTypes values to categorical search queries the consumer uses. */
|
|
4
|
+
const TYPE_QUERY_MAP = {
|
|
5
|
+
restaurant: 'restaurant',
|
|
6
|
+
cafe: 'cafe',
|
|
7
|
+
bar: 'bar',
|
|
8
|
+
bakery: 'bakery',
|
|
9
|
+
hotel: 'hotel',
|
|
10
|
+
gas_station: 'gas station',
|
|
11
|
+
parking: 'parking',
|
|
12
|
+
hospital: 'hospital',
|
|
13
|
+
pharmacy: 'pharmacy',
|
|
14
|
+
school: 'school',
|
|
15
|
+
university: 'university',
|
|
16
|
+
bank: 'bank',
|
|
17
|
+
atm: 'atm',
|
|
18
|
+
supermarket: 'supermarket',
|
|
19
|
+
grocery_store: 'grocery store',
|
|
20
|
+
shopping_mall: 'shopping mall',
|
|
21
|
+
ev_charging_station: 'EV charging station',
|
|
22
|
+
train_station: 'train station',
|
|
23
|
+
bus_station: 'bus station',
|
|
24
|
+
airport: 'airport',
|
|
25
|
+
museum: 'museum',
|
|
26
|
+
park: 'park',
|
|
27
|
+
gym: 'gym',
|
|
28
|
+
dentist: 'dentist',
|
|
29
|
+
doctor: 'doctor',
|
|
30
|
+
};
|
|
31
|
+
export class NearbySearchService {
|
|
32
|
+
search;
|
|
33
|
+
hl;
|
|
34
|
+
gl;
|
|
35
|
+
constructor(http, config) {
|
|
36
|
+
this.search = new SearchService(http, config);
|
|
37
|
+
this.hl = config.hl ?? 'en';
|
|
38
|
+
this.gl = config.gl ?? 'us';
|
|
39
|
+
}
|
|
40
|
+
/**
|
|
41
|
+
* Nearby Search — categorical place search biased to a point.
|
|
42
|
+
*
|
|
43
|
+
* Consumer Maps has no type-only RPC; this mirrors the UI by running one
|
|
44
|
+
* text search per included type and merging/deduping by place id.
|
|
45
|
+
*/
|
|
46
|
+
async searchNearby(options) {
|
|
47
|
+
if (options.includedTypes.length === 0) {
|
|
48
|
+
return { places: [] };
|
|
49
|
+
}
|
|
50
|
+
const origin = await this.search.resolveBias(options.location);
|
|
51
|
+
const radius = options.radiusMeters ?? 5_000;
|
|
52
|
+
const limit = options.maxResultCount ?? 20;
|
|
53
|
+
const queries = options.includedTypes.map((type) => TYPE_QUERY_MAP[type] ?? type.replace(/_/g, ' '));
|
|
54
|
+
const batches = await Promise.all(queries.map((query) => this.search.searchText({
|
|
55
|
+
query,
|
|
56
|
+
location: origin,
|
|
57
|
+
limit,
|
|
58
|
+
fieldMask: 'enterprise',
|
|
59
|
+
})));
|
|
60
|
+
const seen = new Set();
|
|
61
|
+
const scored = [];
|
|
62
|
+
for (const batch of batches) {
|
|
63
|
+
for (const row of batch.places) {
|
|
64
|
+
const id = row.hexId ?? row.placeId;
|
|
65
|
+
const lat = row.lat ?? row.latitude;
|
|
66
|
+
const lng = row.lng ?? row.longitude;
|
|
67
|
+
if (!id || lat == null || lng == null || seen.has(id))
|
|
68
|
+
continue;
|
|
69
|
+
const distance = haversineMeters(origin.lat, origin.lng, lat, lng);
|
|
70
|
+
if (distance > radius)
|
|
71
|
+
continue;
|
|
72
|
+
seen.add(id);
|
|
73
|
+
scored.push({ place: row, distance });
|
|
74
|
+
}
|
|
75
|
+
}
|
|
76
|
+
if (options.rankPreference === 'POPULARITY') {
|
|
77
|
+
scored.sort((a, b) => (b.place.reviewCount ?? 0) - (a.place.reviewCount ?? 0));
|
|
78
|
+
}
|
|
79
|
+
else {
|
|
80
|
+
scored.sort((a, b) => a.distance - b.distance);
|
|
81
|
+
}
|
|
82
|
+
return { places: scored.slice(0, limit).map((entry) => entry.place) };
|
|
83
|
+
}
|
|
84
|
+
}
|
|
85
|
+
//# sourceMappingURL=nearby-search.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"nearby-search.js","sourceRoot":"","sources":["../../src/services/nearby-search.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { HttpClient } from '../client/http-client.js';
|
|
2
2
|
import type { GMapsConfig } from '../types/common.js';
|
|
3
|
-
import type { PanoramaGetOptions, PanoramaImageOptions, PanoramaLocationOptions, PanoramaMetadata, PanoramaRef, PanoramaSearchOptions, PanoramaTileGrid } from '../types/panorama.js';
|
|
3
|
+
import type { PanoramaGetOptions, PanoramaImageOptions, PanoramaLocationOptions, PanoramaMetadata, PanoramaRef, PanoramaSearchOptions, PanoramaStaticImageLocationOptions, PanoramaStaticImageOptions, PanoramaStaticImageResult, PanoramaTileGrid } from '../types/panorama.js';
|
|
4
4
|
export declare class PanoramaService {
|
|
5
5
|
private http;
|
|
6
6
|
private hl;
|
|
@@ -46,5 +46,12 @@ export declare class PanoramaService {
|
|
|
46
46
|
buildThumbnailUrl(options: PanoramaImageOptions): string;
|
|
47
47
|
/** Build a Street View tile URL (no network I/O). */
|
|
48
48
|
buildTileUrl(options: PanoramaImageOptions): string;
|
|
49
|
+
/**
|
|
50
|
+
* Fetch a static Street View JPEG (Maps Platform "Static Street View").
|
|
51
|
+
* Uses streetviewpixels /thumbnail — not /maps/api/streetview.
|
|
52
|
+
*/
|
|
53
|
+
fetchStaticImage(options: PanoramaStaticImageOptions): Promise<PanoramaStaticImageResult>;
|
|
54
|
+
/** Resolve the nearest panorama, then fetch its static thumbnail JPEG. */
|
|
55
|
+
fetchStaticImageByLocation(lat: number, lng: number, options?: PanoramaStaticImageLocationOptions): Promise<PanoramaStaticImageResult | null>;
|
|
49
56
|
}
|
|
50
57
|
//# sourceMappingURL=panorama.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"panorama.d.ts","sourceRoot":"","sources":["../../src/services/panorama.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,0BAA0B,CAAC;AAatD,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,oBAAoB,CAAC;AAEtD,OAAO,KAAK,EACV,kBAAkB,EAClB,oBAAoB,EACpB,uBAAuB,EACvB,gBAAgB,EAChB,WAAW,EACX,qBAAqB,EACrB,gBAAgB,EACjB,MAAM,sBAAsB,CAAC;AAyB9B,qBAAa,eAAe;IAC1B,OAAO,CAAC,IAAI,CAAa;IACzB,OAAO,CAAC,EAAE,CAAS;IACnB,OAAO,CAAC,EAAE,CAAS;gBAEP,IAAI,EAAE,UAAU,EAAE,MAAM,EAAE,WAAW;IAMjD;;;;;;;OAOG;IACG,UAAU,CAAC,OAAO,EAAE,qBAAqB,GAAG,OAAO,CAAC,WAAW,EAAE,CAAC;IAWxE,sFAAsF;YACxE,eAAe;IAgD7B,iEAAiE;YACnD,mBAAmB;IAgCjC;;;;;;OAMG;IACH,OAAO,CAAC,cAAc;IAoBtB,yFAAyF;IACnF,GAAG,CACP,MAAM,EAAE,MAAM,EACd,OAAO,CAAC,EAAE,kBAAkB,GAC3B,OAAO,CAAC,gBAAgB,GAAG,IAAI,CAAC;YAqBrB,mBAAmB;IASjC,+EAA+E;IACzE,aAAa,CACjB,GAAG,EAAE,MAAM,EACX,GAAG,EAAE,MAAM,EACX,OAAO,CAAC,EAAE,uBAAuB,GAChC,OAAO,CAAC,gBAAgB,GAAG,IAAI,CAAC;IAuBnC;;;;;;;;OAQG;IACG,WAAW,CAAC,MAAM,EAAE,MAAM,EAAE,QAAQ,CAAC,EAAE,gBAAgB,GAAG,IAAI,GAAG,OAAO,CAAC,gBAAgB,CAAC;IA2ChG,0DAA0D;IAC1D,iBAAiB,CAAC,OAAO,EAAE,oBAAoB,GAAG,MAAM;IAUxD,qDAAqD;IACrD,YAAY,CAAC,OAAO,EAAE,oBAAoB,GAAG,MAAM;
|
|
1
|
+
{"version":3,"file":"panorama.d.ts","sourceRoot":"","sources":["../../src/services/panorama.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,0BAA0B,CAAC;AAatD,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,oBAAoB,CAAC;AAEtD,OAAO,KAAK,EACV,kBAAkB,EAClB,oBAAoB,EACpB,uBAAuB,EACvB,gBAAgB,EAChB,WAAW,EACX,qBAAqB,EACrB,kCAAkC,EAClC,0BAA0B,EAC1B,yBAAyB,EACzB,gBAAgB,EACjB,MAAM,sBAAsB,CAAC;AAyB9B,qBAAa,eAAe;IAC1B,OAAO,CAAC,IAAI,CAAa;IACzB,OAAO,CAAC,EAAE,CAAS;IACnB,OAAO,CAAC,EAAE,CAAS;gBAEP,IAAI,EAAE,UAAU,EAAE,MAAM,EAAE,WAAW;IAMjD;;;;;;;OAOG;IACG,UAAU,CAAC,OAAO,EAAE,qBAAqB,GAAG,OAAO,CAAC,WAAW,EAAE,CAAC;IAWxE,sFAAsF;YACxE,eAAe;IAgD7B,iEAAiE;YACnD,mBAAmB;IAgCjC;;;;;;OAMG;IACH,OAAO,CAAC,cAAc;IAoBtB,yFAAyF;IACnF,GAAG,CACP,MAAM,EAAE,MAAM,EACd,OAAO,CAAC,EAAE,kBAAkB,GAC3B,OAAO,CAAC,gBAAgB,GAAG,IAAI,CAAC;YAqBrB,mBAAmB;IASjC,+EAA+E;IACzE,aAAa,CACjB,GAAG,EAAE,MAAM,EACX,GAAG,EAAE,MAAM,EACX,OAAO,CAAC,EAAE,uBAAuB,GAChC,OAAO,CAAC,gBAAgB,GAAG,IAAI,CAAC;IAuBnC;;;;;;;;OAQG;IACG,WAAW,CAAC,MAAM,EAAE,MAAM,EAAE,QAAQ,CAAC,EAAE,gBAAgB,GAAG,IAAI,GAAG,OAAO,CAAC,gBAAgB,CAAC;IA2ChG,0DAA0D;IAC1D,iBAAiB,CAAC,OAAO,EAAE,oBAAoB,GAAG,MAAM;IAUxD,qDAAqD;IACrD,YAAY,CAAC,OAAO,EAAE,oBAAoB,GAAG,MAAM;IASnD;;;OAGG;IACG,gBAAgB,CACpB,OAAO,EAAE,0BAA0B,GAClC,OAAO,CAAC,yBAAyB,CAAC;IA2BrC,0EAA0E;IACpE,0BAA0B,CAC9B,GAAG,EAAE,MAAM,EACX,GAAG,EAAE,MAAM,EACX,OAAO,CAAC,EAAE,kCAAkC,GAC3C,OAAO,CAAC,yBAAyB,GAAG,IAAI,CAAC;CAmB7C"}
|
|
@@ -231,5 +231,53 @@ export class PanoramaService {
|
|
|
231
231
|
zoom: options.zoom,
|
|
232
232
|
});
|
|
233
233
|
}
|
|
234
|
+
/**
|
|
235
|
+
* Fetch a static Street View JPEG (Maps Platform "Static Street View").
|
|
236
|
+
* Uses streetviewpixels /thumbnail — not /maps/api/streetview.
|
|
237
|
+
*/
|
|
238
|
+
async fetchStaticImage(options) {
|
|
239
|
+
const width = options.width ?? 640;
|
|
240
|
+
const height = options.height ?? 480;
|
|
241
|
+
const url = buildThumbnailUrl({
|
|
242
|
+
panoId: options.panoId,
|
|
243
|
+
width,
|
|
244
|
+
height,
|
|
245
|
+
pitch: options.pitch,
|
|
246
|
+
yaw: options.yaw,
|
|
247
|
+
});
|
|
248
|
+
const { bytes, contentType } = await this.http.getBytes(url, {
|
|
249
|
+
referer: 'https://www.google.com/maps/',
|
|
250
|
+
includeOrigin: true,
|
|
251
|
+
minBytes: 100,
|
|
252
|
+
});
|
|
253
|
+
return {
|
|
254
|
+
bytes,
|
|
255
|
+
contentType,
|
|
256
|
+
width,
|
|
257
|
+
height,
|
|
258
|
+
panoId: options.panoId,
|
|
259
|
+
url,
|
|
260
|
+
};
|
|
261
|
+
}
|
|
262
|
+
/** Resolve the nearest panorama, then fetch its static thumbnail JPEG. */
|
|
263
|
+
async fetchStaticImageByLocation(lat, lng, options) {
|
|
264
|
+
const nearby = await this.findNearby({
|
|
265
|
+
lat,
|
|
266
|
+
lng,
|
|
267
|
+
radiusMeters: options?.radiusMeters,
|
|
268
|
+
hl: options?.hl,
|
|
269
|
+
gl: options?.gl,
|
|
270
|
+
});
|
|
271
|
+
const ref = nearby.find((entry) => isLikelyStreetViewPanoId(entry.panoId));
|
|
272
|
+
if (!ref)
|
|
273
|
+
return null;
|
|
274
|
+
return this.fetchStaticImage({
|
|
275
|
+
panoId: ref.panoId,
|
|
276
|
+
width: options?.width,
|
|
277
|
+
height: options?.height,
|
|
278
|
+
pitch: options?.pitch ?? ref.pitch,
|
|
279
|
+
yaw: options?.yaw ?? ref.heading,
|
|
280
|
+
});
|
|
281
|
+
}
|
|
234
282
|
}
|
|
235
283
|
//# sourceMappingURL=panorama.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"panorama.js","sourceRoot":"","sources":["../../src/services/panorama.ts"],"names":[],"mappings":"AACA,OAAO,EACL,wBAAwB,EACxB,sBAAsB,EACtB,uBAAuB,GACxB,MAAM,wBAAwB,CAAC;AAChC,OAAO,EACL,oBAAoB,EACpB,wBAAwB,EACxB,iBAAiB,EACjB,iBAAiB,EACjB,YAAY,GACb,MAAM,uBAAuB,CAAC;AAE/B,OAAO,EAAE,iBAAiB,EAAE,uBAAuB,EAAE,MAAM,oBAAoB,CAAC;
|
|
1
|
+
{"version":3,"file":"panorama.js","sourceRoot":"","sources":["../../src/services/panorama.ts"],"names":[],"mappings":"AACA,OAAO,EACL,wBAAwB,EACxB,sBAAsB,EACtB,uBAAuB,GACxB,MAAM,wBAAwB,CAAC;AAChC,OAAO,EACL,oBAAoB,EACpB,wBAAwB,EACxB,iBAAiB,EACjB,iBAAiB,EACjB,YAAY,GACb,MAAM,uBAAuB,CAAC;AAE/B,OAAO,EAAE,iBAAiB,EAAE,uBAAuB,EAAE,MAAM,oBAAoB,CAAC;AAahF,OAAO,EAAE,eAAe,EAAE,eAAe,EAAE,MAAM,iBAAiB,CAAC;AACnE,OAAO,EAAE,mBAAmB,EAAE,MAAM,qBAAqB,CAAC;AAE1D,MAAM,qBAAqB,GAAG,GAAG,CAAC;AAElC,wEAAwE;AACxE,MAAM,aAAa,GAAG,EAAE,CAAC;AAEzB,mFAAmF;AACnF,MAAM,mBAAmB,GAAG,CAAC,CAAC;AAC9B,MAAM,sBAAsB,GAAG,IAAI,CAAC;AACpC,MAAM,uBAAuB,GAAG,IAAI,CAAC;AACrC,MAAM,iBAAiB,GAAG,GAAG,CAAC;AAE9B,wFAAwF;AACxF,MAAM,yBAAyB,GAAG,GAAG,CAAC;AAEtC,kGAAkG;AAClG,SAAS,wBAAwB,CAAC,MAAc;IAC9C,IAAI,MAAM,CAAC,UAAU,CAAC,QAAQ,CAAC;QAAE,OAAO,KAAK,CAAC;IAC9C,IAAI,OAAO,CAAC,IAAI,CAAC,MAAM,CAAC;QAAE,OAAO,KAAK,CAAC;IACvC,OAAO,wBAAwB,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;AAC/C,CAAC;AAED,MAAM,OAAO,eAAe;IAClB,IAAI,CAAa;IACjB,EAAE,CAAS;IACX,EAAE,CAAS;IAEnB,YAAY,IAAgB,EAAE,MAAmB;QAC/C,IAAI,CAAC,IAAI,GAAG,IAAI,CAAC;QACjB,IAAI,CAAC,EAAE,GAAG,MAAM,CAAC,EAAE,IAAI,IAAI,CAAC;QAC5B,IAAI,CAAC,EAAE,GAAG,MAAM,CAAC,EAAE,IAAI,IAAI,CAAC;IAC9B,CAAC;IAED;;;;;;;OAOG;IACH,KAAK,CAAC,UAAU,CAAC,OAA8B;QAC7C,MAAM,EAAE,GAAG,OAAO,CAAC,EAAE,IAAI,IAAI,CAAC,EAAE,CAAC;QACjC,MAAM,EAAE,GAAG,OAAO,CAAC,EAAE,IAAI,IAAI,CAAC,EAAE,CAAC;QACjC,MAAM,YAAY,GAAG,OAAO,CAAC,YAAY,IAAI,qBAAqB,CAAC;QAEnE,MAAM,YAAY,GAAG,MAAM,IAAI,CAAC,eAAe,CAAC,OAAO,CAAC,GAAG,EAAE,OAAO,CAAC,GAAG,EAAE,YAAY,EAAE,EAAE,EAAE,EAAE,CAAC,CAAC;QAChG,IAAI,YAAY,CAAC,MAAM,GAAG,CAAC;YAAE,OAAO,YAAY,CAAC;QAEjD,OAAO,IAAI,CAAC,mBAAmB,CAAC,OAAO,CAAC,GAAG,EAAE,OAAO,CAAC,GAAG,EAAE,YAAY,EAAE,EAAE,EAAE,EAAE,CAAC,CAAC;IAClF,CAAC;IAED,sFAAsF;IAC9E,KAAK,CAAC,eAAe,CAC3B,GAAW,EACX,GAAW,EACX,YAAoB,EACpB,EAAU,EACV,EAAU;QAEV,MAAM,MAAM,GAAG,eAAe,CAAC,GAAG,EAAE,GAAG,EAAE,aAAa,CAAC,CAAC;QACxD,MAAM,OAAO,GACX,YAAY,GAAG,yBAAyB,GAAG,CAAC;YAC1C,CAAC,CAAC;gBACE,CAAC,CAAC,EAAE,CAAC,CAAC;gBACN,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC;gBACP,CAAC,CAAC,EAAE,CAAC,CAAC;gBACN,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;gBACP,CAAC,CAAC,EAAE,CAAC,CAAC;gBACN,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;gBACR,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC;gBACP,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;gBACP,CAAC,CAAC,EAAE,CAAC,CAAC;aACP;YACH,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC;QAEf,MAAM,IAAI,GAAG,IAAI,GAAG,EAAU,CAAC;QAC/B,MAAM,SAAS,GAAkB,EAAE,CAAC;QAEpC,KAAK,MAAM,CAAC,EAAE,EAAE,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC;YAC/B,IAAI,IAAmB,CAAC;YACxB,IAAI,CAAC;gBACH,MAAM,IAAI,GAAG,MAAM,IAAI,CAAC,IAAI,CAAC,GAAG,CAC9B,oBAAoB,CAAC,EAAE,KAAK,EAAE,MAAM,CAAC,CAAC,GAAG,EAAE,EAAE,KAAK,EAAE,MAAM,CAAC,CAAC,GAAG,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC,EAC5E,EAAE,OAAO,EAAE,8BAA8B,EAAE,aAAa,EAAE,IAAI,EAAE,cAAc,EAAE,IAAI,EAAE,CACvF,CAAC;gBACF,IAAI,GAAG,wBAAwB,CAAC,IAAI,CAAC,CAAC;YACxC,CAAC;YAAC,MAAM,CAAC;gBACP,SAAS;YACX,CAAC;YAED,KAAK,MAAM,GAAG,IAAI,IAAI,EAAE,CAAC;gBACvB,IAAI,IAAI,CAAC,GAAG,CAAC,GAAG,CAAC,MAAM,CAAC;oBAAE,SAAS;gBACnC,IAAI,CAAC,GAAG,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC;gBACrB,SAAS,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;YACtB,CAAC;QACH,CAAC;QAED,OAAO,IAAI,CAAC,cAAc,CAAC,SAAS,EAAE,GAAG,EAAE,GAAG,EAAE,YAAY,CAAC,CAAC;IAChE,CAAC;IAED,iEAAiE;IACzD,KAAK,CAAC,mBAAmB,CAC/B,GAAW,EACX,GAAW,EACX,YAAoB,EACpB,EAAU,EACV,EAAU;QAEV,MAAM,GAAG,GAAG,wBAAwB,CAAC,EAAE,GAAG,EAAE,GAAG,EAAE,YAAY,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC,CAAC;QACzE,MAAM,WAAW,GAAG;YAClB,OAAO,EAAE,8BAA8B;YACvC,aAAa,EAAE,IAAI;YACnB,OAAO,EAAE,IAAI;SACL,CAAC;QAEX,IAAI,IAAa,CAAC;QAClB,IAAI,CAAC;YACH,IAAI,GAAG,MAAM,IAAI,CAAC,IAAI,CAAC,GAAG,CAAU,GAAG,EAAE,WAAW,CAAC,CAAC;QACxD,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,IAAI,KAAK,YAAY,uBAAuB;gBAAE,MAAM,KAAK,CAAC;YAC1D,IAAI,KAAK,YAAY,iBAAiB,IAAI,KAAK,CAAC,OAAO,CAAC,QAAQ,CAAC,KAAK,CAAC,EAAE,CAAC;gBACxE,MAAM,IAAI,uBAAuB,CAAC,SAAS,EAAE,KAAK,CAAC,OAAO,CAAC,CAAC;YAC9D,CAAC;YACD,MAAM,KAAK,CAAC;QACd,CAAC;QAED,MAAM,IAAI,GAAG,sBAAsB,CAAC,IAAI,CAAC,CAAC,MAAM,CAAC,CAAC,GAAG,EAAE,EAAE,CACvD,wBAAwB,CAAC,GAAG,CAAC,MAAM,CAAC,CACrC,CAAC;QAEF,OAAO,IAAI,CAAC,cAAc,CAAC,IAAI,EAAE,GAAG,EAAE,GAAG,EAAE,YAAY,CAAC,CAAC;IAC3D,CAAC;IAED;;;;;;OAMG;IACK,cAAc,CACpB,IAAmB,EACnB,GAAW,EACX,GAAW,EACX,YAAoB;QAEpB,MAAM,MAAM,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,CAAC;YAChC,GAAG;YACH,QAAQ,EACN,GAAG,CAAC,GAAG,IAAI,IAAI,IAAI,GAAG,CAAC,GAAG,IAAI,IAAI;gBAChC,CAAC,CAAC,eAAe,CAAC,GAAG,EAAE,GAAG,EAAE,GAAG,CAAC,GAAG,EAAE,GAAG,CAAC,GAAG,CAAC;gBAC7C,CAAC,CAAC,MAAM,CAAC,iBAAiB;SAC/B,CAAC,CAAC,CAAC;QAEJ,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,QAAQ,GAAG,CAAC,CAAC,QAAQ,CAAC,CAAC;QAE/C,MAAM,YAAY,GAAG,MAAM,CAAC,MAAM,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,KAAK,CAAC,QAAQ,IAAI,YAAY,CAAC,CAAC;QAC9E,OAAO,CAAC,YAAY,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,YAAY,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,GAAG,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;IACrF,CAAC;IAED,yFAAyF;IACzF,KAAK,CAAC,GAAG,CACP,MAAc,EACd,OAA4B;QAE5B,MAAM,EAAE,GAAG,OAAO,EAAE,EAAE,IAAI,IAAI,CAAC,EAAE,CAAC;QAClC,MAAM,EAAE,GAAG,OAAO,EAAE,EAAE,IAAI,IAAI,CAAC,EAAE,CAAC;QAElC,MAAM,YAAY,GAAG,OAAO,EAAE,YAAY,IAAI,KAAK,CAAC;QACpD,MAAM,GAAG,GAAG,iBAAiB,CAAC,EAAE,MAAM,EAAE,EAAE,EAAE,EAAE,EAAE,YAAY,EAAE,CAAC,CAAC;QAEhE,4EAA4E;QAC5E,4EAA4E;QAC5E,iCAAiC;QACjC,MAAM,IAAI,GAAG,YAAY;YACvB,CAAC,CAAC,MAAM,IAAI,CAAC,mBAAmB,CAAC,GAAG,CAAC;YACrC,CAAC,CAAC,MAAM,IAAI,CAAC,IAAI,CAAC,GAAG,CAAU,GAAG,EAAE;gBAChC,OAAO,EAAE,8BAA8B;gBACvC,aAAa,EAAE,IAAI;gBACnB,cAAc,EAAE,IAAI;aACrB,CAAC,CAAC;QAEP,OAAO,uBAAuB,CAAC,IAAI,EAAE,EAAE,GAAG,EAAE,OAAO,EAAE,GAAG,EAAE,CAAC,CAAC;IAC9D,CAAC;IAEO,KAAK,CAAC,mBAAmB,CAAC,GAAW;QAC3C,MAAM,EAAE,KAAK,EAAE,GAAG,MAAM,IAAI,CAAC,IAAI,CAAC,QAAQ,CAAC,GAAG,EAAE;YAC9C,OAAO,EAAE,8BAA8B;YACvC,aAAa,EAAE,IAAI;YACnB,cAAc,EAAE,IAAI;SACrB,CAAC,CAAC;QACH,OAAO,mBAAmB,CAAC,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,QAAQ,CAAC,QAAQ,CAAC,CAAC,CAAC;IACpE,CAAC;IAED,+EAA+E;IAC/E,KAAK,CAAC,aAAa,CACjB,GAAW,EACX,GAAW,EACX,OAAiC;QAEjC,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,UAAU,CAAC;YACnC,GAAG;YACH,GAAG;YACH,YAAY,EAAE,OAAO,EAAE,YAAY;YACnC,EAAE,EAAE,OAAO,EAAE,EAAE;YACf,EAAE,EAAE,OAAO,EAAE,EAAE;SAChB,CAAC,CAAC;QAEH,MAAM,UAAU,GAAG,MAAM,CAAC,MAAM,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,wBAAwB,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC,CAAC;QAEhF,KAAK,MAAM,GAAG,IAAI,UAAU,CAAC,KAAK,CAAC,CAAC,EAAE,EAAE,CAAC,EAAE,CAAC;YAC1C,IAAI,CAAC;gBACH,MAAM,IAAI,GAAG,MAAM,IAAI,CAAC,GAAG,CAAC,GAAG,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;gBACjD,IAAI,IAAI;oBAAE,OAAO,IAAI,CAAC;YACxB,CAAC;YAAC,MAAM,CAAC;gBACP,wEAAwE;YAC1E,CAAC;QACH,CAAC;QAED,OAAO,IAAI,CAAC;IACd,CAAC;IAED;;;;;;;;OAQG;IACH,KAAK,CAAC,WAAW,CAAC,MAAc,EAAE,QAAkC;QAClE,MAAM,UAAU,GAAG,QAAQ,EAAE,SAAS,EAAE,MAAM,IAAI,mBAAmB,CAAC;QACtE,MAAM,CAAC,QAAQ,EAAE,SAAS,CAAC,GAAG,QAAQ,EAAE,iBAAiB,IAAI;YAC3D,sBAAsB;YACtB,uBAAuB;SACxB,CAAC;QACF,MAAM,CAAC,SAAS,EAAE,UAAU,CAAC,GAAG,QAAQ,EAAE,YAAY,IAAI;YACxD,iBAAiB;YACjB,iBAAiB;SAClB,CAAC;QAEF,MAAM,MAAM,GAAG,EAAwD,CAAC;QACxE,MAAM,IAAI,GAAiB,EAAE,CAAC;QAE9B,KAAK,IAAI,IAAI,GAAG,CAAC,EAAE,IAAI,GAAG,UAAU,EAAE,IAAI,EAAE,EAAE,CAAC;YAC7C,MAAM,OAAO,GAAG,CAAC,IAAI,CAAC,UAAU,GAAG,CAAC,GAAG,IAAI,CAAC,CAAC;YAC7C,MAAM,KAAK,GAAG,IAAI,CAAC,GAAG,CACpB,QAAQ,EACR,IAAI,CAAC,GAAG,CAAC,SAAS,EAAE,IAAI,CAAC,IAAI,CAAC,QAAQ,GAAG,OAAO,CAAC,CAAC,CACnD,CAAC;YACF,MAAM,MAAM,GAAG,IAAI,CAAC,GAAG,CACrB,SAAS,EACT,IAAI,CAAC,GAAG,CAAC,UAAU,EAAE,IAAI,CAAC,IAAI,CAAC,SAAS,GAAG,OAAO,CAAC,CAAC,CACrD,CAAC;YACF,MAAM,IAAI,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,IAAI,CAAC,IAAI,CAAC,KAAK,GAAG,SAAS,CAAC,CAAC,CAAC;YACvD,MAAM,IAAI,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,IAAI,CAAC,IAAI,CAAC,MAAM,GAAG,UAAU,CAAC,CAAC,CAAC;YAEzD,MAAM,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,KAAK,EAAE,MAAM,EAAE,CAAC,CAAC;YAEjD,MAAM,QAAQ,GAAe,EAAE,CAAC;YAChC,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,IAAI,EAAE,CAAC,EAAE,EAAE,CAAC;gBAC9B,MAAM,GAAG,GAAa,EAAE,CAAC;gBACzB,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,IAAI,EAAE,CAAC,EAAE,EAAE,CAAC;oBAC9B,GAAG,CAAC,IAAI,CAAC,YAAY,CAAC,EAAE,MAAM,EAAE,CAAC,EAAE,CAAC,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC;gBACjD,CAAC;gBACD,QAAQ,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;YACrB,CAAC;YACD,IAAI,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;QACtB,CAAC;QAED,OAAO,EAAE,MAAM,EAAE,MAAM,EAAE,IAAI,EAAE,CAAC;IAClC,CAAC;IAED,0DAA0D;IAC1D,iBAAiB,CAAC,OAA6B;QAC7C,OAAO,iBAAiB,CAAC;YACvB,MAAM,EAAE,OAAO,CAAC,MAAM;YACtB,KAAK,EAAE,OAAO,CAAC,KAAK;YACpB,MAAM,EAAE,OAAO,CAAC,MAAM;YACtB,KAAK,EAAE,OAAO,CAAC,KAAK;YACpB,GAAG,EAAE,OAAO,CAAC,GAAG;SACjB,CAAC,CAAC;IACL,CAAC;IAED,qDAAqD;IACrD,YAAY,CAAC,OAA6B;QACxC,OAAO,YAAY,CAAC;YAClB,MAAM,EAAE,OAAO,CAAC,MAAM;YACtB,CAAC,EAAE,OAAO,CAAC,CAAC;YACZ,CAAC,EAAE,OAAO,CAAC,CAAC;YACZ,IAAI,EAAE,OAAO,CAAC,IAAI;SACnB,CAAC,CAAC;IACL,CAAC;IAED;;;OAGG;IACH,KAAK,CAAC,gBAAgB,CACpB,OAAmC;QAEnC,MAAM,KAAK,GAAG,OAAO,CAAC,KAAK,IAAI,GAAG,CAAC;QACnC,MAAM,MAAM,GAAG,OAAO,CAAC,MAAM,IAAI,GAAG,CAAC;QACrC,MAAM,GAAG,GAAG,iBAAiB,CAAC;YAC5B,MAAM,EAAE,OAAO,CAAC,MAAM;YACtB,KAAK;YACL,MAAM;YACN,KAAK,EAAE,OAAO,CAAC,KAAK;YACpB,GAAG,EAAE,OAAO,CAAC,GAAG;SACjB,CAAC,CAAC;QAEH,MAAM,EAAE,KAAK,EAAE,WAAW,EAAE,GAAG,MAAM,IAAI,CAAC,IAAI,CAAC,QAAQ,CAAC,GAAG,EAAE;YAC3D,OAAO,EAAE,8BAA8B;YACvC,aAAa,EAAE,IAAI;YACnB,QAAQ,EAAE,GAAG;SACd,CAAC,CAAC;QAEH,OAAO;YACL,KAAK;YACL,WAAW;YACX,KAAK;YACL,MAAM;YACN,MAAM,EAAE,OAAO,CAAC,MAAM;YACtB,GAAG;SACJ,CAAC;IACJ,CAAC;IAED,0EAA0E;IAC1E,KAAK,CAAC,0BAA0B,CAC9B,GAAW,EACX,GAAW,EACX,OAA4C;QAE5C,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,UAAU,CAAC;YACnC,GAAG;YACH,GAAG;YACH,YAAY,EAAE,OAAO,EAAE,YAAY;YACnC,EAAE,EAAE,OAAO,EAAE,EAAE;YACf,EAAE,EAAE,OAAO,EAAE,EAAE;SAChB,CAAC,CAAC;QACH,MAAM,GAAG,GAAG,MAAM,CAAC,IAAI,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,wBAAwB,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC,CAAC;QAC3E,IAAI,CAAC,GAAG;YAAE,OAAO,IAAI,CAAC;QAEtB,OAAO,IAAI,CAAC,gBAAgB,CAAC;YAC3B,MAAM,EAAE,GAAG,CAAC,MAAM;YAClB,KAAK,EAAE,OAAO,EAAE,KAAK;YACrB,MAAM,EAAE,OAAO,EAAE,MAAM;YACvB,KAAK,EAAE,OAAO,EAAE,KAAK,IAAI,GAAG,CAAC,KAAK;YAClC,GAAG,EAAE,OAAO,EAAE,GAAG,IAAI,GAAG,CAAC,OAAO;SACjC,CAAC,CAAC;IACL,CAAC;CACF"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"photos.d.ts","sourceRoot":"","sources":["../../src/services/photos.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,0BAA0B,CAAC;AAStD,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,oBAAoB,CAAC;AACtD,OAAO,KAAK,EACV,yBAAyB,EACzB,sBAAsB,EACtB,gBAAgB,EAGjB,MAAM,oBAAoB,CAAC;AA0B5B,qBAAa,aAAa;IACxB,OAAO,CAAC,IAAI,CAAa;IACzB,OAAO,CAAC,EAAE,CAAS;IACnB,OAAO,CAAC,EAAE,CAAS;gBAEP,IAAI,EAAE,UAAU,EAAE,MAAM,EAAE,WAAW;IAMjD;;;;;;;OAOG;IACG,IAAI,CAAC,OAAO,EAAE,sBAAsB,GAAG,OAAO,CAAC,gBAAgB,CAAC;
|
|
1
|
+
{"version":3,"file":"photos.d.ts","sourceRoot":"","sources":["../../src/services/photos.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,0BAA0B,CAAC;AAStD,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,oBAAoB,CAAC;AACtD,OAAO,KAAK,EACV,yBAAyB,EACzB,sBAAsB,EACtB,gBAAgB,EAGjB,MAAM,oBAAoB,CAAC;AA0B5B,qBAAa,aAAa;IACxB,OAAO,CAAC,IAAI,CAAa;IACzB,OAAO,CAAC,EAAE,CAAS;IACnB,OAAO,CAAC,EAAE,CAAS;gBAEP,IAAI,EAAE,UAAU,EAAE,MAAM,EAAE,WAAW;IAMjD;;;;;;;OAOG;IACG,IAAI,CAAC,OAAO,EAAE,sBAAsB,GAAG,OAAO,CAAC,gBAAgB,CAAC;IAwBtE;;;;;;;OAOG;YACW,eAAe;IA8B7B,2FAA2F;IACrF,OAAO,CAAC,OAAO,EAAE,yBAAyB,GAAG,OAAO,CAAC,gBAAgB,CAAC;IAgF5E,mEAAmE;IACnE,UAAU,CAAC,IAAI,EAAE,MAAM,EAAE,EAAE,GAAG,SAAM,GAAG,MAAM,EAAE;YAIjC,mBAAmB;YAgCnB,mBAAmB;IA2BjC;;;;;;;OAOG;IACG,QAAQ,CAAC,QAAQ,EAAE,sBAAsB,EAAE,GAAG,OAAO,CAAC,gBAAgB,EAAE,CAAC;YA8CjE,wBAAwB;YAoExB,eAAe;IAI7B,OAAO,CAAC,KAAK;CAGd"}
|