googlemaps-kit 0.1.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/LICENSE +21 -0
- package/README.md +249 -0
- package/dist/auth/auth-status.d.ts +30 -0
- package/dist/auth/auth-status.d.ts.map +1 -0
- package/dist/auth/auth-status.js +169 -0
- package/dist/auth/auth-status.js.map +1 -0
- package/dist/auth/google-auth.d.ts +9 -0
- package/dist/auth/google-auth.d.ts.map +1 -0
- package/dist/auth/google-auth.js +40 -0
- package/dist/auth/google-auth.js.map +1 -0
- package/dist/auth/maps-tokens.d.ts +6 -0
- package/dist/auth/maps-tokens.d.ts.map +1 -0
- package/dist/auth/maps-tokens.js +18 -0
- package/dist/auth/maps-tokens.js.map +1 -0
- package/dist/auth/session.d.ts +28 -0
- package/dist/auth/session.d.ts.map +1 -0
- package/dist/auth/session.js +104 -0
- package/dist/auth/session.js.map +1 -0
- package/dist/client/gmaps-client.d.ts +92 -0
- package/dist/client/gmaps-client.d.ts.map +1 -0
- package/dist/client/gmaps-client.js +254 -0
- package/dist/client/gmaps-client.js.map +1 -0
- package/dist/client/http-client.d.ts +91 -0
- package/dist/client/http-client.d.ts.map +1 -0
- package/dist/client/http-client.js +393 -0
- package/dist/client/http-client.js.map +1 -0
- package/dist/index.d.ts +64 -0
- package/dist/index.d.ts.map +1 -0
- package/dist/index.js +36 -0
- package/dist/index.js.map +1 -0
- package/dist/internal.d.ts +140 -0
- package/dist/internal.d.ts.map +1 -0
- package/dist/internal.js +97 -0
- package/dist/internal.js.map +1 -0
- package/dist/known-surfaces.d.ts +280 -0
- package/dist/known-surfaces.d.ts.map +1 -0
- package/dist/known-surfaces.js +276 -0
- package/dist/known-surfaces.js.map +1 -0
- package/dist/parsers/batch-url.d.ts +13 -0
- package/dist/parsers/batch-url.d.ts.map +1 -0
- package/dist/parsers/batch-url.js +42 -0
- package/dist/parsers/batch-url.js.map +1 -0
- package/dist/parsers/boq-reviews.d.ts +8 -0
- package/dist/parsers/boq-reviews.d.ts.map +1 -0
- package/dist/parsers/boq-reviews.js +254 -0
- package/dist/parsers/boq-reviews.js.map +1 -0
- package/dist/parsers/categories.d.ts +14 -0
- package/dist/parsers/categories.d.ts.map +1 -0
- package/dist/parsers/categories.js +128 -0
- package/dist/parsers/categories.js.map +1 -0
- package/dist/parsers/directions.d.ts +6 -0
- package/dist/parsers/directions.d.ts.map +1 -0
- package/dist/parsers/directions.js +388 -0
- package/dist/parsers/directions.js.map +1 -0
- package/dist/parsers/elevation-directions.d.ts +18 -0
- package/dist/parsers/elevation-directions.d.ts.map +1 -0
- package/dist/parsers/elevation-directions.js +102 -0
- package/dist/parsers/elevation-directions.js.map +1 -0
- package/dist/parsers/geocode.d.ts +11 -0
- package/dist/parsers/geocode.d.ts.map +1 -0
- package/dist/parsers/geocode.js +104 -0
- package/dist/parsers/geocode.js.map +1 -0
- package/dist/parsers/knowledge.d.ts +13 -0
- package/dist/parsers/knowledge.d.ts.map +1 -0
- package/dist/parsers/knowledge.js +93 -0
- package/dist/parsers/knowledge.js.map +1 -0
- package/dist/parsers/lists.d.ts +23 -0
- package/dist/parsers/lists.d.ts.map +1 -0
- package/dist/parsers/lists.js +219 -0
- package/dist/parsers/lists.js.map +1 -0
- package/dist/parsers/local-posts.d.ts +12 -0
- package/dist/parsers/local-posts.d.ts.map +1 -0
- package/dist/parsers/local-posts.js +112 -0
- package/dist/parsers/local-posts.js.map +1 -0
- package/dist/parsers/maps-url.d.ts +15 -0
- package/dist/parsers/maps-url.d.ts.map +1 -0
- package/dist/parsers/maps-url.js +326 -0
- package/dist/parsers/maps-url.js.map +1 -0
- package/dist/parsers/panorama.d.ts +24 -0
- package/dist/parsers/panorama.d.ts.map +1 -0
- package/dist/parsers/panorama.js +161 -0
- package/dist/parsers/panorama.js.map +1 -0
- package/dist/parsers/passiveassist.d.ts +10 -0
- package/dist/parsers/passiveassist.d.ts.map +1 -0
- package/dist/parsers/passiveassist.js +61 -0
- package/dist/parsers/passiveassist.js.map +1 -0
- package/dist/parsers/photos.d.ts +21 -0
- package/dist/parsers/photos.d.ts.map +1 -0
- package/dist/parsers/photos.js +287 -0
- package/dist/parsers/photos.js.map +1 -0
- package/dist/parsers/place-attributes.d.ts +25 -0
- package/dist/parsers/place-attributes.d.ts.map +1 -0
- package/dist/parsers/place-attributes.js +266 -0
- package/dist/parsers/place-attributes.js.map +1 -0
- package/dist/parsers/place.d.ts +9 -0
- package/dist/parsers/place.d.ts.map +1 -0
- package/dist/parsers/place.js +291 -0
- package/dist/parsers/place.js.map +1 -0
- package/dist/parsers/reveal.d.ts +5 -0
- package/dist/parsers/reveal.d.ts.map +1 -0
- package/dist/parsers/reveal.js +99 -0
- package/dist/parsers/reveal.js.map +1 -0
- package/dist/parsers/review-aggregates.d.ts +7 -0
- package/dist/parsers/review-aggregates.d.ts.map +1 -0
- package/dist/parsers/review-aggregates.js +18 -0
- package/dist/parsers/review-aggregates.js.map +1 -0
- package/dist/parsers/review-client-filters.d.ts +8 -0
- package/dist/parsers/review-client-filters.d.ts.map +1 -0
- package/dist/parsers/review-client-filters.js +28 -0
- package/dist/parsers/review-client-filters.js.map +1 -0
- package/dist/parsers/reviews.d.ts +8 -0
- package/dist/parsers/reviews.d.ts.map +1 -0
- package/dist/parsers/reviews.js +55 -0
- package/dist/parsers/reviews.js.map +1 -0
- package/dist/parsers/search-client-filters.d.ts +7 -0
- package/dist/parsers/search-client-filters.d.ts.map +1 -0
- package/dist/parsers/search-client-filters.js +44 -0
- package/dist/parsers/search-client-filters.js.map +1 -0
- package/dist/parsers/search-pagination.d.ts +12 -0
- package/dist/parsers/search-pagination.d.ts.map +1 -0
- package/dist/parsers/search-pagination.js +34 -0
- package/dist/parsers/search-pagination.js.map +1 -0
- package/dist/parsers/search.d.ts +5 -0
- package/dist/parsers/search.d.ts.map +1 -0
- package/dist/parsers/search.js +187 -0
- package/dist/parsers/search.js.map +1 -0
- package/dist/parsers/shared.d.ts +24 -0
- package/dist/parsers/shared.d.ts.map +1 -0
- package/dist/parsers/shared.js +147 -0
- package/dist/parsers/shared.js.map +1 -0
- package/dist/parsers/suggest.d.ts +10 -0
- package/dist/parsers/suggest.d.ts.map +1 -0
- package/dist/parsers/suggest.js +153 -0
- package/dist/parsers/suggest.js.map +1 -0
- package/dist/parsers/tiles.d.ts +22 -0
- package/dist/parsers/tiles.d.ts.map +1 -0
- package/dist/parsers/tiles.js +70 -0
- package/dist/parsers/tiles.js.map +1 -0
- package/dist/parsers/timezone-geocode.d.ts +20 -0
- package/dist/parsers/timezone-geocode.d.ts.map +1 -0
- package/dist/parsers/timezone-geocode.js +96 -0
- package/dist/parsers/timezone-geocode.js.map +1 -0
- package/dist/parsers/traffic.d.ts +10 -0
- package/dist/parsers/traffic.d.ts.map +1 -0
- package/dist/parsers/traffic.js +38 -0
- package/dist/parsers/traffic.js.map +1 -0
- package/dist/parsers/transit.d.ts +12 -0
- package/dist/parsers/transit.d.ts.map +1 -0
- package/dist/parsers/transit.js +77 -0
- package/dist/parsers/transit.js.map +1 -0
- package/dist/parsers/ugc-aggregates.d.ts +9 -0
- package/dist/parsers/ugc-aggregates.d.ts.map +1 -0
- package/dist/parsers/ugc-aggregates.js +23 -0
- package/dist/parsers/ugc-aggregates.js.map +1 -0
- package/dist/rpc/app-options.d.ts +25 -0
- package/dist/rpc/app-options.d.ts.map +1 -0
- package/dist/rpc/app-options.js +147 -0
- package/dist/rpc/app-options.js.map +1 -0
- package/dist/rpc/batch-execute.d.ts +30 -0
- package/dist/rpc/batch-execute.d.ts.map +1 -0
- package/dist/rpc/batch-execute.js +217 -0
- package/dist/rpc/batch-execute.js.map +1 -0
- package/dist/rpc/batch-request-builders.d.ts +65 -0
- package/dist/rpc/batch-request-builders.d.ts.map +1 -0
- package/dist/rpc/batch-request-builders.js +174 -0
- package/dist/rpc/batch-request-builders.js.map +1 -0
- package/dist/rpc/batch-rpc.d.ts +34 -0
- package/dist/rpc/batch-rpc.d.ts.map +1 -0
- package/dist/rpc/batch-rpc.js +70 -0
- package/dist/rpc/batch-rpc.js.map +1 -0
- package/dist/rpc/batch-services.d.ts +38 -0
- package/dist/rpc/batch-services.d.ts.map +1 -0
- package/dist/rpc/batch-services.js +69 -0
- package/dist/rpc/batch-services.js.map +1 -0
- package/dist/rpc/batchexecute-args.d.ts +30 -0
- package/dist/rpc/batchexecute-args.d.ts.map +1 -0
- package/dist/rpc/batchexecute-args.js +35 -0
- package/dist/rpc/batchexecute-args.js.map +1 -0
- package/dist/rpc/boq-reviews.d.ts +16 -0
- package/dist/rpc/boq-reviews.d.ts.map +1 -0
- package/dist/rpc/boq-reviews.js +45 -0
- package/dist/rpc/boq-reviews.js.map +1 -0
- package/dist/rpc/descriptor-registry.d.ts +61 -0
- package/dist/rpc/descriptor-registry.d.ts.map +1 -0
- package/dist/rpc/descriptor-registry.js +47 -0
- package/dist/rpc/descriptor-registry.js.map +1 -0
- package/dist/rpc/feature-rpc.d.ts +27 -0
- package/dist/rpc/feature-rpc.d.ts.map +1 -0
- package/dist/rpc/feature-rpc.js +44 -0
- package/dist/rpc/feature-rpc.js.map +1 -0
- package/dist/rpc/lists-pb.d.ts +20 -0
- package/dist/rpc/lists-pb.d.ts.map +1 -0
- package/dist/rpc/lists-pb.js +20 -0
- package/dist/rpc/lists-pb.js.map +1 -0
- package/dist/rpc/maps-endpoint-registry.json +185 -0
- package/dist/rpc/maps-runtime.d.ts +42 -0
- package/dist/rpc/maps-runtime.d.ts.map +1 -0
- package/dist/rpc/maps-runtime.js +140 -0
- package/dist/rpc/maps-runtime.js.map +1 -0
- package/dist/rpc/maps-url-builders.d.ts +35 -0
- package/dist/rpc/maps-url-builders.d.ts.map +1 -0
- package/dist/rpc/maps-url-builders.js +266 -0
- package/dist/rpc/maps-url-builders.js.map +1 -0
- package/dist/rpc/nxa.d.ts +13 -0
- package/dist/rpc/nxa.d.ts.map +1 -0
- package/dist/rpc/nxa.js +44 -0
- package/dist/rpc/nxa.js.map +1 -0
- package/dist/rpc/panorama-pb.d.ts +60 -0
- package/dist/rpc/panorama-pb.d.ts.map +1 -0
- package/dist/rpc/panorama-pb.js +71 -0
- package/dist/rpc/panorama-pb.js.map +1 -0
- package/dist/rpc/passiveassist-pb.d.ts +21 -0
- package/dist/rpc/passiveassist-pb.d.ts.map +1 -0
- package/dist/rpc/passiveassist-pb.js +24 -0
- package/dist/rpc/passiveassist-pb.js.map +1 -0
- package/dist/rpc/pb-builders.d.ts +136 -0
- package/dist/rpc/pb-builders.d.ts.map +1 -0
- package/dist/rpc/pb-builders.js +290 -0
- package/dist/rpc/pb-builders.js.map +1 -0
- package/dist/rpc/photo-category-tokens.d.ts +29 -0
- package/dist/rpc/photo-category-tokens.d.ts.map +1 -0
- package/dist/rpc/photo-category-tokens.js +97 -0
- package/dist/rpc/photo-category-tokens.js.map +1 -0
- package/dist/rpc/photos-pb.d.ts +29 -0
- package/dist/rpc/photos-pb.d.ts.map +1 -0
- package/dist/rpc/photos-pb.js +73 -0
- package/dist/rpc/photos-pb.js.map +1 -0
- package/dist/rpc/reveal-pb.d.ts +26 -0
- package/dist/rpc/reveal-pb.d.ts.map +1 -0
- package/dist/rpc/reveal-pb.js +32 -0
- package/dist/rpc/reveal-pb.js.map +1 -0
- package/dist/rpc/rpc-client.d.ts +50 -0
- package/dist/rpc/rpc-client.d.ts.map +1 -0
- package/dist/rpc/rpc-client.js +136 -0
- package/dist/rpc/rpc-client.js.map +1 -0
- package/dist/rpc/rpc-descriptor-registry.json +776 -0
- package/dist/rpc/rpc-methods.d.ts +75 -0
- package/dist/rpc/rpc-methods.d.ts.map +1 -0
- package/dist/rpc/rpc-methods.js +130 -0
- package/dist/rpc/rpc-methods.js.map +1 -0
- package/dist/rpc/search-filters.d.ts +43 -0
- package/dist/rpc/search-filters.d.ts.map +1 -0
- package/dist/rpc/search-filters.js +92 -0
- package/dist/rpc/search-filters.js.map +1 -0
- package/dist/rpc/suggest-pb.d.ts +34 -0
- package/dist/rpc/suggest-pb.d.ts.map +1 -0
- package/dist/rpc/suggest-pb.js +42 -0
- package/dist/rpc/suggest-pb.js.map +1 -0
- package/dist/rpc/tiles-pb.d.ts +45 -0
- package/dist/rpc/tiles-pb.d.ts.map +1 -0
- package/dist/rpc/tiles-pb.js +71 -0
- package/dist/rpc/tiles-pb.js.map +1 -0
- package/dist/rpc/xsrf-bootstrap.d.ts +24 -0
- package/dist/rpc/xsrf-bootstrap.d.ts.map +1 -0
- package/dist/rpc/xsrf-bootstrap.js +63 -0
- package/dist/rpc/xsrf-bootstrap.js.map +1 -0
- package/dist/server/api-server.d.ts +9 -0
- package/dist/server/api-server.d.ts.map +1 -0
- package/dist/server/api-server.js +293 -0
- package/dist/server/api-server.js.map +1 -0
- package/dist/services/ask-maps.d.ts +91 -0
- package/dist/services/ask-maps.d.ts.map +1 -0
- package/dist/services/ask-maps.js +221 -0
- package/dist/services/ask-maps.js.map +1 -0
- package/dist/services/batch-url.d.ts +18 -0
- package/dist/services/batch-url.d.ts.map +1 -0
- package/dist/services/batch-url.js +30 -0
- package/dist/services/batch-url.js.map +1 -0
- package/dist/services/categories.d.ts +21 -0
- package/dist/services/categories.d.ts.map +1 -0
- package/dist/services/categories.js +43 -0
- package/dist/services/categories.js.map +1 -0
- package/dist/services/directions.d.ts +26 -0
- package/dist/services/directions.d.ts.map +1 -0
- package/dist/services/directions.js +104 -0
- package/dist/services/directions.js.map +1 -0
- package/dist/services/distance-matrix.d.ts +17 -0
- package/dist/services/distance-matrix.d.ts.map +1 -0
- package/dist/services/distance-matrix.js +144 -0
- package/dist/services/distance-matrix.js.map +1 -0
- package/dist/services/elevation.d.ts +30 -0
- package/dist/services/elevation.d.ts.map +1 -0
- package/dist/services/elevation.js +149 -0
- package/dist/services/elevation.js.map +1 -0
- package/dist/services/geocode.d.ts +20 -0
- package/dist/services/geocode.d.ts.map +1 -0
- package/dist/services/geocode.js +63 -0
- package/dist/services/geocode.js.map +1 -0
- package/dist/services/knowledge.d.ts +25 -0
- package/dist/services/knowledge.d.ts.map +1 -0
- package/dist/services/knowledge.js +58 -0
- package/dist/services/knowledge.js.map +1 -0
- package/dist/services/links.d.ts +22 -0
- package/dist/services/links.d.ts.map +1 -0
- package/dist/services/links.js +145 -0
- package/dist/services/links.js.map +1 -0
- package/dist/services/lists.d.ts +20 -0
- package/dist/services/lists.d.ts.map +1 -0
- package/dist/services/lists.js +74 -0
- package/dist/services/lists.js.map +1 -0
- package/dist/services/local-posts.d.ts +14 -0
- package/dist/services/local-posts.d.ts.map +1 -0
- package/dist/services/local-posts.js +32 -0
- package/dist/services/local-posts.js.map +1 -0
- package/dist/services/panorama.d.ts +39 -0
- package/dist/services/panorama.d.ts.map +1 -0
- package/dist/services/panorama.js +175 -0
- package/dist/services/panorama.js.map +1 -0
- package/dist/services/passiveassist.d.ts +21 -0
- package/dist/services/passiveassist.d.ts.map +1 -0
- package/dist/services/passiveassist.js +70 -0
- package/dist/services/passiveassist.js.map +1 -0
- package/dist/services/photos.d.ts +46 -0
- package/dist/services/photos.d.ts.map +1 -0
- package/dist/services/photos.js +341 -0
- package/dist/services/photos.js.map +1 -0
- package/dist/services/places.d.ts +58 -0
- package/dist/services/places.d.ts.map +1 -0
- package/dist/services/places.js +240 -0
- package/dist/services/places.js.map +1 -0
- package/dist/services/reveal.d.ts +15 -0
- package/dist/services/reveal.d.ts.map +1 -0
- package/dist/services/reveal.js +41 -0
- package/dist/services/reveal.js.map +1 -0
- package/dist/services/reviews.d.ts +70 -0
- package/dist/services/reviews.d.ts.map +1 -0
- package/dist/services/reviews.js +245 -0
- package/dist/services/reviews.js.map +1 -0
- package/dist/services/search.d.ts +25 -0
- package/dist/services/search.d.ts.map +1 -0
- package/dist/services/search.js +130 -0
- package/dist/services/search.js.map +1 -0
- package/dist/services/static-map.d.ts +14 -0
- package/dist/services/static-map.d.ts.map +1 -0
- package/dist/services/static-map.js +182 -0
- package/dist/services/static-map.js.map +1 -0
- package/dist/services/suggest.d.ts +12 -0
- package/dist/services/suggest.d.ts.map +1 -0
- package/dist/services/suggest.js +36 -0
- package/dist/services/suggest.js.map +1 -0
- package/dist/services/tiles.d.ts +19 -0
- package/dist/services/tiles.d.ts.map +1 -0
- package/dist/services/tiles.js +77 -0
- package/dist/services/tiles.js.map +1 -0
- package/dist/services/timezone.d.ts +19 -0
- package/dist/services/timezone.d.ts.map +1 -0
- package/dist/services/timezone.js +91 -0
- package/dist/services/timezone.js.map +1 -0
- package/dist/services/traffic.d.ts +12 -0
- package/dist/services/traffic.d.ts.map +1 -0
- package/dist/services/traffic.js +40 -0
- package/dist/services/traffic.js.map +1 -0
- package/dist/services/transit.d.ts +22 -0
- package/dist/services/transit.d.ts.map +1 -0
- package/dist/services/transit.js +62 -0
- package/dist/services/transit.js.map +1 -0
- package/dist/services/ugc-aggregates.d.ts +17 -0
- package/dist/services/ugc-aggregates.d.ts.map +1 -0
- package/dist/services/ugc-aggregates.js +46 -0
- package/dist/services/ugc-aggregates.js.map +1 -0
- package/dist/types/batch-url.d.ts +21 -0
- package/dist/types/batch-url.d.ts.map +1 -0
- package/dist/types/batch-url.js +2 -0
- package/dist/types/batch-url.js.map +1 -0
- package/dist/types/categories.d.ts +43 -0
- package/dist/types/categories.d.ts.map +1 -0
- package/dist/types/categories.js +2 -0
- package/dist/types/categories.js.map +1 -0
- package/dist/types/common.d.ts +538 -0
- package/dist/types/common.d.ts.map +1 -0
- package/dist/types/common.js +77 -0
- package/dist/types/common.js.map +1 -0
- package/dist/types/directions.d.ts +88 -0
- package/dist/types/directions.d.ts.map +1 -0
- package/dist/types/directions.js +2 -0
- package/dist/types/directions.js.map +1 -0
- package/dist/types/distance-matrix.d.ts +40 -0
- package/dist/types/distance-matrix.d.ts.map +1 -0
- package/dist/types/distance-matrix.js +2 -0
- package/dist/types/distance-matrix.js.map +1 -0
- package/dist/types/elevation.d.ts +59 -0
- package/dist/types/elevation.d.ts.map +1 -0
- package/dist/types/elevation.js +2 -0
- package/dist/types/elevation.js.map +1 -0
- package/dist/types/geocode.d.ts +60 -0
- package/dist/types/geocode.d.ts.map +1 -0
- package/dist/types/geocode.js +2 -0
- package/dist/types/geocode.js.map +1 -0
- package/dist/types/links.d.ts +74 -0
- package/dist/types/links.d.ts.map +1 -0
- package/dist/types/links.js +2 -0
- package/dist/types/links.js.map +1 -0
- package/dist/types/lists.d.ts +41 -0
- package/dist/types/lists.d.ts.map +1 -0
- package/dist/types/lists.js +2 -0
- package/dist/types/lists.js.map +1 -0
- package/dist/types/maps-urls.d.ts +78 -0
- package/dist/types/maps-urls.d.ts.map +1 -0
- package/dist/types/maps-urls.js +2 -0
- package/dist/types/maps-urls.js.map +1 -0
- package/dist/types/panorama.d.ts +74 -0
- package/dist/types/panorama.d.ts.map +1 -0
- package/dist/types/panorama.js +2 -0
- package/dist/types/panorama.js.map +1 -0
- package/dist/types/passiveassist.d.ts +50 -0
- package/dist/types/passiveassist.d.ts.map +1 -0
- package/dist/types/passiveassist.js +2 -0
- package/dist/types/passiveassist.js.map +1 -0
- package/dist/types/photos.d.ts +101 -0
- package/dist/types/photos.d.ts.map +1 -0
- package/dist/types/photos.js +75 -0
- package/dist/types/photos.js.map +1 -0
- package/dist/types/protobuf.d.ts +33 -0
- package/dist/types/protobuf.d.ts.map +1 -0
- package/dist/types/protobuf.js +25 -0
- package/dist/types/protobuf.js.map +1 -0
- package/dist/types/reveal.d.ts +46 -0
- package/dist/types/reveal.d.ts.map +1 -0
- package/dist/types/reveal.js +2 -0
- package/dist/types/reveal.js.map +1 -0
- package/dist/types/reviews.d.ts +79 -0
- package/dist/types/reviews.d.ts.map +1 -0
- package/dist/types/reviews.js +5 -0
- package/dist/types/reviews.js.map +1 -0
- package/dist/types/search-filters.d.ts +59 -0
- package/dist/types/search-filters.d.ts.map +1 -0
- package/dist/types/search-filters.js +35 -0
- package/dist/types/search-filters.js.map +1 -0
- package/dist/types/static-map.d.ts +61 -0
- package/dist/types/static-map.d.ts.map +1 -0
- package/dist/types/static-map.js +2 -0
- package/dist/types/static-map.js.map +1 -0
- package/dist/types/suggest.d.ts +57 -0
- package/dist/types/suggest.d.ts.map +1 -0
- package/dist/types/suggest.js +2 -0
- package/dist/types/suggest.js.map +1 -0
- package/dist/types/tiles.d.ts +65 -0
- package/dist/types/tiles.d.ts.map +1 -0
- package/dist/types/tiles.js +2 -0
- package/dist/types/tiles.js.map +1 -0
- package/dist/types/timezone.d.ts +36 -0
- package/dist/types/timezone.d.ts.map +1 -0
- package/dist/types/timezone.js +2 -0
- package/dist/types/timezone.js.map +1 -0
- package/dist/types/traffic.d.ts +22 -0
- package/dist/types/traffic.d.ts.map +1 -0
- package/dist/types/traffic.js +2 -0
- package/dist/types/traffic.js.map +1 -0
- package/dist/types/transit.d.ts +46 -0
- package/dist/types/transit.d.ts.map +1 -0
- package/dist/types/transit.js +3 -0
- package/dist/types/transit.js.map +1 -0
- package/dist/types/ugc-aggregates.d.ts +14 -0
- package/dist/types/ugc-aggregates.d.ts.map +1 -0
- package/dist/types/ugc-aggregates.js +2 -0
- package/dist/types/ugc-aggregates.js.map +1 -0
- package/dist/utils/chunked-decoder.d.ts +9 -0
- package/dist/utils/chunked-decoder.d.ts.map +1 -0
- package/dist/utils/chunked-decoder.js +175 -0
- package/dist/utils/chunked-decoder.js.map +1 -0
- package/dist/utils/directions-metrics.d.ts +5 -0
- package/dist/utils/directions-metrics.d.ts.map +1 -0
- package/dist/utils/directions-metrics.js +62 -0
- package/dist/utils/directions-metrics.js.map +1 -0
- package/dist/utils/encoded-polyline.d.ts +9 -0
- package/dist/utils/encoded-polyline.d.ts.map +1 -0
- package/dist/utils/encoded-polyline.js +67 -0
- package/dist/utils/encoded-polyline.js.map +1 -0
- package/dist/utils/feature-id.d.ts +2 -0
- package/dist/utils/feature-id.d.ts.map +1 -0
- package/dist/utils/feature-id.js +11 -0
- package/dist/utils/feature-id.js.map +1 -0
- package/dist/utils/geo.d.ts +18 -0
- package/dist/utils/geo.d.ts.map +1 -0
- package/dist/utils/geo.js +40 -0
- package/dist/utils/geo.js.map +1 -0
- package/dist/utils/ids.d.ts +23 -0
- package/dist/utils/ids.d.ts.map +1 -0
- package/dist/utils/ids.js +81 -0
- package/dist/utils/ids.js.map +1 -0
- package/dist/utils/load-env.d.ts +7 -0
- package/dist/utils/load-env.d.ts.map +1 -0
- package/dist/utils/load-env.js +49 -0
- package/dist/utils/load-env.js.map +1 -0
- package/dist/utils/photo-url.d.ts +4 -0
- package/dist/utils/photo-url.d.ts.map +1 -0
- package/dist/utils/photo-url.js +35 -0
- package/dist/utils/photo-url.js.map +1 -0
- package/dist/utils/plus-code.d.ts +11 -0
- package/dist/utils/plus-code.d.ts.map +1 -0
- package/dist/utils/plus-code.js +83 -0
- package/dist/utils/plus-code.js.map +1 -0
- package/dist/utils/png.d.ts +25 -0
- package/dist/utils/png.d.ts.map +1 -0
- package/dist/utils/png.js +314 -0
- package/dist/utils/png.js.map +1 -0
- package/dist/utils/pooled.d.ts +6 -0
- package/dist/utils/pooled.d.ts.map +1 -0
- package/dist/utils/pooled.js +19 -0
- package/dist/utils/pooled.js.map +1 -0
- package/dist/utils/request-scheduler.d.ts +28 -0
- package/dist/utils/request-scheduler.d.ts.map +1 -0
- package/dist/utils/request-scheduler.js +58 -0
- package/dist/utils/request-scheduler.js.map +1 -0
- package/dist/utils/response-parser.d.ts +7 -0
- package/dist/utils/response-parser.d.ts.map +1 -0
- package/dist/utils/response-parser.js +50 -0
- package/dist/utils/response-parser.js.map +1 -0
- package/dist/utils/retry-backoff.d.ts +5 -0
- package/dist/utils/retry-backoff.d.ts.map +1 -0
- package/dist/utils/retry-backoff.js +23 -0
- package/dist/utils/retry-backoff.js.map +1 -0
- package/dist/utils/safe-get.d.ts +6 -0
- package/dist/utils/safe-get.d.ts.map +1 -0
- package/dist/utils/safe-get.js +29 -0
- package/dist/utils/safe-get.js.map +1 -0
- package/dist/utils/static-map-grid.d.ts +71 -0
- package/dist/utils/static-map-grid.d.ts.map +1 -0
- package/dist/utils/static-map-grid.js +103 -0
- package/dist/utils/static-map-grid.js.map +1 -0
- package/dist/utils/throttle-detection.d.ts +17 -0
- package/dist/utils/throttle-detection.d.ts.map +1 -0
- package/dist/utils/throttle-detection.js +71 -0
- package/dist/utils/throttle-detection.js.map +1 -0
- package/package.json +85 -0
|
@@ -0,0 +1,75 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Google Maps internal RPC method identifiers and HTTP surfaces.
|
|
3
|
+
* Reverse-engineered from APP_OPTIONS, JS bundles (_ModuleManager_initialize), and probes.
|
|
4
|
+
*/
|
|
5
|
+
export declare const MAPS_WIZ_UI_APP = "MapsWizUi";
|
|
6
|
+
export declare const MAPS_WIZ_UI_PATH = "/maps/_/MapsWizUi/";
|
|
7
|
+
export declare const BATCH_EXECUTE_PATH = "/maps/_/MapsWizUi/data/batchexecute";
|
|
8
|
+
/** @deprecated Use MAPS_WIZ_UI_PATH — Maps uses WizUi, not legacy MapsUi */
|
|
9
|
+
export declare const MAPS_UI_APP = "MapsUi";
|
|
10
|
+
/**
|
|
11
|
+
* batchexecute rpcids use Google's Nxa encoder over protobuf field numbers.
|
|
12
|
+
* Use encodeRpcId(field) from ./nxa.js — NOT _.Sc module IDs or Jd service names.
|
|
13
|
+
*/
|
|
14
|
+
export declare const RPC_INFRA: {
|
|
15
|
+
readonly XSRF: "AvYl1c";
|
|
16
|
+
readonly BATCH_ENVELOPE: "eEpPyd";
|
|
17
|
+
};
|
|
18
|
+
/** Layer feature batchexecute RPCs (verified from _.Gc + field numbers in EOCWjc.js). */
|
|
19
|
+
export declare const FEATURE_RPC: {
|
|
20
|
+
readonly CRISIS_WILDFIRES: "v2iAld";
|
|
21
|
+
readonly AIR_QUALITY: "GivvBd";
|
|
22
|
+
readonly AIR_QUALITY_HEATMAP: "FQvEwd";
|
|
23
|
+
readonly DIRECTIONS: "yGjtvd";
|
|
24
|
+
readonly MAP_ACTIONS: "Ai4NDd";
|
|
25
|
+
readonly DESTINATIONS: "zi4NDd";
|
|
26
|
+
readonly PLACE_DATA: "PpHItd";
|
|
27
|
+
readonly CATEGORICAL_SEARCH: "Zrzurd";
|
|
28
|
+
};
|
|
29
|
+
/** MapsAiAgentService batchexecute RPCs (field 25000002–25000056 range). */
|
|
30
|
+
export declare const MAPS_AI_AGENT_RPC: {
|
|
31
|
+
readonly AGENT_02: "MrFsZc";
|
|
32
|
+
readonly AGENT_03: "NrFsZc";
|
|
33
|
+
readonly AGENT_04: "OrFsZc";
|
|
34
|
+
readonly AGENT_05: "PrFsZc";
|
|
35
|
+
readonly AGENT_06: "QrFsZc";
|
|
36
|
+
readonly AGENT_07: "RrFsZc";
|
|
37
|
+
readonly AGENT_08: "SrFsZc";
|
|
38
|
+
readonly AGENT_09: "TrFsZc";
|
|
39
|
+
readonly AGENT_10: "UrFsZc";
|
|
40
|
+
};
|
|
41
|
+
/** @deprecated Use FEATURE_RPC / descriptor registry */
|
|
42
|
+
export declare const RPC_CANDIDATES: {
|
|
43
|
+
readonly REVIEW_UI: "DJRUGc";
|
|
44
|
+
readonly PROTO_KPF_DKF: "KpfDkf";
|
|
45
|
+
};
|
|
46
|
+
export declare const RPC_LIST_UGC_POSTS = "listugcposts";
|
|
47
|
+
export declare const PREVIEW: {
|
|
48
|
+
readonly PLACE: "/maps/preview/place";
|
|
49
|
+
readonly DIRECTIONS: "/maps/preview/directions";
|
|
50
|
+
readonly LOCAL_POSTS: "/maps/preview/localposts";
|
|
51
|
+
readonly LP: "/maps/preview/lp";
|
|
52
|
+
readonly LOG204: "/maps/preview/log204";
|
|
53
|
+
readonly REVEAL: "/maps/preview/reveal";
|
|
54
|
+
readonly PEGMAN: "/maps/preview/pegman";
|
|
55
|
+
readonly PASSIVE_ASSIST: "/maps/preview/passiveassist";
|
|
56
|
+
readonly SEND_TO_DEVICE: "/maps/preview/sendtodevice";
|
|
57
|
+
readonly PLACE_UPDATE: "/maps/preview/placeupdate";
|
|
58
|
+
};
|
|
59
|
+
export declare const RPC_HTTP: {
|
|
60
|
+
readonly GET_KNOWLEDGE_ENTITY: "/maps/rpc/getknowledgeentity";
|
|
61
|
+
readonly LIST_UGC_POSTS: "/maps/rpc/listugcposts";
|
|
62
|
+
};
|
|
63
|
+
export declare const SERVICE_GET_LOCAL_BOQ_PROXY = "PrivateLocalSearchUiDataService/GetLocalBoqProxy";
|
|
64
|
+
export declare const BOQ_PROXY_MSC = "gwsrpc";
|
|
65
|
+
export declare const REVIEW_SORT: {
|
|
66
|
+
readonly MOST_RELEVANT: 1;
|
|
67
|
+
readonly NEWEST: 2;
|
|
68
|
+
readonly HIGHEST_RATING: 3;
|
|
69
|
+
readonly LOWEST_RATING: 4;
|
|
70
|
+
};
|
|
71
|
+
/** Protobuf Jd service IDs found in dEsJDd.js bundle */
|
|
72
|
+
export declare const PROTO_SERVICE_IDS: readonly ["C1qV3", "CEnkte", "CNWU5e", "DzddFf", "GkHlod", "KpfDkf", "MgyuKd", "N3FmZb", "R6fnef", "TyFfQb", "WTNmv", "We9Kzc", "WwTQs", "aRnFrf", "cCHt5d", "dhHkVc", "fOkEif", "hZJcjf", "jCvsMd", "mgzXhd", "moasRd", "nvNove", "pUMjxc", "rTCZff", "uRsS0c", "v3Bbmc", "zNdXX"];
|
|
73
|
+
/** Initial JS modules loaded on Maps bootstrap (m= param) */
|
|
74
|
+
export declare const INITIAL_MODULES: readonly ["GfLzUe", "tNOPW", "cZ2KIb", "Rq2f7d", "omhq0", "MJcXSb", "WEtKm", "B863O", "bEpRLd", "ItB2Fd", "pwd", "dw", "dEsJDd", "iDMycd"];
|
|
75
|
+
//# sourceMappingURL=rpc-methods.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"rpc-methods.d.ts","sourceRoot":"","sources":["../../src/rpc/rpc-methods.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAMH,eAAO,MAAM,eAAe,cAAc,CAAC;AAC3C,eAAO,MAAM,gBAAgB,uBAAuB,CAAC;AACrD,eAAO,MAAM,kBAAkB,wCAAwC,CAAC;AAExE,4EAA4E;AAC5E,eAAO,MAAM,WAAW,WAAW,CAAC;AAEpC;;;GAGG;AACH,eAAO,MAAM,SAAS;;;CAGZ,CAAC;AAEX,yFAAyF;AACzF,eAAO,MAAM,WAAW;;;;;;;;;CASd,CAAC;AAEX,4EAA4E;AAC5E,eAAO,MAAM,iBAAiB;;;;;;;;;;CAUpB,CAAC;AAEX,wDAAwD;AACxD,eAAO,MAAM,cAAc;;;CAGjB,CAAC;AAMX,eAAO,MAAM,kBAAkB,iBAAiB,CAAC;AAMjD,eAAO,MAAM,OAAO;;;;;;;;;;;CAWV,CAAC;AAEX,eAAO,MAAM,QAAQ;;;CAGX,CAAC;AAMX,eAAO,MAAM,2BAA2B,qDAAqD,CAAC;AAC9F,eAAO,MAAM,aAAa,WAAW,CAAC;AAEtC,eAAO,MAAM,WAAW;;;;;CAKd,CAAC;AAEX,wDAAwD;AACxD,eAAO,MAAM,iBAAiB,qRA4BpB,CAAC;AAEX,6DAA6D;AAC7D,eAAO,MAAM,eAAe,4IAelB,CAAC"}
|
|
@@ -0,0 +1,130 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Google Maps internal RPC method identifiers and HTTP surfaces.
|
|
3
|
+
* Reverse-engineered from APP_OPTIONS, JS bundles (_ModuleManager_initialize), and probes.
|
|
4
|
+
*/
|
|
5
|
+
// ============================================================================
|
|
6
|
+
// batchexecute (WIZ eptZe → /maps/_/MapsWizUi/data/batchexecute)
|
|
7
|
+
// ============================================================================
|
|
8
|
+
export const MAPS_WIZ_UI_APP = 'MapsWizUi';
|
|
9
|
+
export const MAPS_WIZ_UI_PATH = '/maps/_/MapsWizUi/';
|
|
10
|
+
export const BATCH_EXECUTE_PATH = '/maps/_/MapsWizUi/data/batchexecute';
|
|
11
|
+
/** @deprecated Use MAPS_WIZ_UI_PATH — Maps uses WizUi, not legacy MapsUi */
|
|
12
|
+
export const MAPS_UI_APP = 'MapsUi';
|
|
13
|
+
/**
|
|
14
|
+
* batchexecute rpcids use Google's Nxa encoder over protobuf field numbers.
|
|
15
|
+
* Use encodeRpcId(field) from ./nxa.js — NOT _.Sc module IDs or Jd service names.
|
|
16
|
+
*/
|
|
17
|
+
export const RPC_INFRA = {
|
|
18
|
+
XSRF: 'AvYl1c',
|
|
19
|
+
BATCH_ENVELOPE: 'eEpPyd',
|
|
20
|
+
};
|
|
21
|
+
/** Layer feature batchexecute RPCs (verified from _.Gc + field numbers in EOCWjc.js). */
|
|
22
|
+
export const FEATURE_RPC = {
|
|
23
|
+
CRISIS_WILDFIRES: 'v2iAld',
|
|
24
|
+
AIR_QUALITY: 'GivvBd',
|
|
25
|
+
AIR_QUALITY_HEATMAP: 'FQvEwd',
|
|
26
|
+
DIRECTIONS: 'yGjtvd',
|
|
27
|
+
MAP_ACTIONS: 'Ai4NDd',
|
|
28
|
+
DESTINATIONS: 'zi4NDd',
|
|
29
|
+
PLACE_DATA: 'PpHItd',
|
|
30
|
+
CATEGORICAL_SEARCH: 'Zrzurd',
|
|
31
|
+
};
|
|
32
|
+
/** MapsAiAgentService batchexecute RPCs (field 25000002–25000056 range). */
|
|
33
|
+
export const MAPS_AI_AGENT_RPC = {
|
|
34
|
+
AGENT_02: 'MrFsZc',
|
|
35
|
+
AGENT_03: 'NrFsZc',
|
|
36
|
+
AGENT_04: 'OrFsZc',
|
|
37
|
+
AGENT_05: 'PrFsZc',
|
|
38
|
+
AGENT_06: 'QrFsZc',
|
|
39
|
+
AGENT_07: 'RrFsZc',
|
|
40
|
+
AGENT_08: 'SrFsZc',
|
|
41
|
+
AGENT_09: 'TrFsZc',
|
|
42
|
+
AGENT_10: 'UrFsZc',
|
|
43
|
+
};
|
|
44
|
+
/** @deprecated Use FEATURE_RPC / descriptor registry */
|
|
45
|
+
export const RPC_CANDIDATES = {
|
|
46
|
+
REVIEW_UI: 'DJRUGc',
|
|
47
|
+
PROTO_KPF_DKF: 'KpfDkf',
|
|
48
|
+
};
|
|
49
|
+
// ============================================================================
|
|
50
|
+
// GET /maps/rpc/* (pb query param — not in APP_OPTIONS but confirmed working)
|
|
51
|
+
// ============================================================================
|
|
52
|
+
export const RPC_LIST_UGC_POSTS = 'listugcposts';
|
|
53
|
+
// ============================================================================
|
|
54
|
+
// GET /maps/preview/* (from APP_OPTIONS)
|
|
55
|
+
// ============================================================================
|
|
56
|
+
export const PREVIEW = {
|
|
57
|
+
PLACE: '/maps/preview/place',
|
|
58
|
+
DIRECTIONS: '/maps/preview/directions',
|
|
59
|
+
LOCAL_POSTS: '/maps/preview/localposts',
|
|
60
|
+
LP: '/maps/preview/lp',
|
|
61
|
+
LOG204: '/maps/preview/log204',
|
|
62
|
+
REVEAL: '/maps/preview/reveal',
|
|
63
|
+
PEGMAN: '/maps/preview/pegman',
|
|
64
|
+
PASSIVE_ASSIST: '/maps/preview/passiveassist',
|
|
65
|
+
SEND_TO_DEVICE: '/maps/preview/sendtodevice',
|
|
66
|
+
PLACE_UPDATE: '/maps/preview/placeupdate',
|
|
67
|
+
};
|
|
68
|
+
export const RPC_HTTP = {
|
|
69
|
+
GET_KNOWLEDGE_ENTITY: '/maps/rpc/getknowledgeentity',
|
|
70
|
+
LIST_UGC_POSTS: '/maps/rpc/listugcposts',
|
|
71
|
+
};
|
|
72
|
+
// ============================================================================
|
|
73
|
+
// httpservice/web/* (JSON reqpld — not batchexecute)
|
|
74
|
+
// ============================================================================
|
|
75
|
+
export const SERVICE_GET_LOCAL_BOQ_PROXY = 'PrivateLocalSearchUiDataService/GetLocalBoqProxy';
|
|
76
|
+
export const BOQ_PROXY_MSC = 'gwsrpc';
|
|
77
|
+
export const REVIEW_SORT = {
|
|
78
|
+
MOST_RELEVANT: 1,
|
|
79
|
+
NEWEST: 2,
|
|
80
|
+
HIGHEST_RATING: 3,
|
|
81
|
+
LOWEST_RATING: 4,
|
|
82
|
+
};
|
|
83
|
+
/** Protobuf Jd service IDs found in dEsJDd.js bundle */
|
|
84
|
+
export const PROTO_SERVICE_IDS = [
|
|
85
|
+
'C1qV3',
|
|
86
|
+
'CEnkte',
|
|
87
|
+
'CNWU5e',
|
|
88
|
+
'DzddFf',
|
|
89
|
+
'GkHlod',
|
|
90
|
+
'KpfDkf',
|
|
91
|
+
'MgyuKd',
|
|
92
|
+
'N3FmZb',
|
|
93
|
+
'R6fnef',
|
|
94
|
+
'TyFfQb',
|
|
95
|
+
'WTNmv',
|
|
96
|
+
'We9Kzc',
|
|
97
|
+
'WwTQs',
|
|
98
|
+
'aRnFrf',
|
|
99
|
+
'cCHt5d',
|
|
100
|
+
'dhHkVc',
|
|
101
|
+
'fOkEif',
|
|
102
|
+
'hZJcjf',
|
|
103
|
+
'jCvsMd',
|
|
104
|
+
'mgzXhd',
|
|
105
|
+
'moasRd',
|
|
106
|
+
'nvNove',
|
|
107
|
+
'pUMjxc',
|
|
108
|
+
'rTCZff',
|
|
109
|
+
'uRsS0c',
|
|
110
|
+
'v3Bbmc',
|
|
111
|
+
'zNdXX',
|
|
112
|
+
];
|
|
113
|
+
/** Initial JS modules loaded on Maps bootstrap (m= param) */
|
|
114
|
+
export const INITIAL_MODULES = [
|
|
115
|
+
'GfLzUe',
|
|
116
|
+
'tNOPW',
|
|
117
|
+
'cZ2KIb',
|
|
118
|
+
'Rq2f7d',
|
|
119
|
+
'omhq0',
|
|
120
|
+
'MJcXSb',
|
|
121
|
+
'WEtKm',
|
|
122
|
+
'B863O',
|
|
123
|
+
'bEpRLd',
|
|
124
|
+
'ItB2Fd',
|
|
125
|
+
'pwd',
|
|
126
|
+
'dw',
|
|
127
|
+
'dEsJDd',
|
|
128
|
+
'iDMycd',
|
|
129
|
+
];
|
|
130
|
+
//# sourceMappingURL=rpc-methods.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"rpc-methods.js","sourceRoot":"","sources":["../../src/rpc/rpc-methods.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,43 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Hypothesized pb suffix encodings for Maps search filters (field-50 xB slot map).
|
|
3
|
+
*
|
|
4
|
+
* NOT EFFECTIVE for anonymous HTTP — the server ignores every variant on GET search.
|
|
5
|
+
* These builders exist so unit tests document the mined JS format; they are not wired
|
|
6
|
+
* into SearchService. See known-surfaces.ts `searchFilters` (status: blocked).
|
|
7
|
+
*/
|
|
8
|
+
import type { SearchFilters, SearchOpenHoursFilter, SearchPriceLevel, SearchRatingFilter } from '../types/search-filters.js';
|
|
9
|
+
/** One xB map entry: slot number + gE payload fragment. */
|
|
10
|
+
export interface FilterPbEntry {
|
|
11
|
+
slot: number;
|
|
12
|
+
/** pb fragment for the gE value (without the slot wrapper). */
|
|
13
|
+
payload: string;
|
|
14
|
+
label: string;
|
|
15
|
+
}
|
|
16
|
+
/** Slot 3 — open now / 24h (Q2b → VP(f, 3, …), A2b sets Gn field 1). */
|
|
17
|
+
export declare function encodeOpenHoursFilter(value: SearchOpenHoursFilter): FilterPbEntry;
|
|
18
|
+
/** Slot 2 — minimum rating (yM → UXb field 2 XAa code). */
|
|
19
|
+
export declare function encodeRatingFilter(minRating: SearchRatingFilter): FilterPbEntry;
|
|
20
|
+
/** Slot 1 — price range bitmask (A6b → PXb/SXb on gAa field 4). */
|
|
21
|
+
export declare function encodePriceFilter(levels: SearchPriceLevel[]): FilterPbEntry;
|
|
22
|
+
/** Slot 14 — hotel check-in/out (kAb → rwb/nwb date protos). */
|
|
23
|
+
export declare function encodeHotelDatesFilter(checkIn: string, checkOut: string): FilterPbEntry;
|
|
24
|
+
/** Wrap slot entries into a hypothesized field-50 xB block. */
|
|
25
|
+
export declare function wrapFilterEntries(entries: FilterPbEntry[]): string;
|
|
26
|
+
/** Build all pb entries implied by {@link SearchFilters}. */
|
|
27
|
+
export declare function buildFilterPbEntries(filters: SearchFilters): FilterPbEntry[];
|
|
28
|
+
/**
|
|
29
|
+
* Append hypothesized filter block to a search pb. Returns the input unchanged when
|
|
30
|
+
* no filters are set so default search requests stay byte-identical.
|
|
31
|
+
*/
|
|
32
|
+
export declare function appendSearchFilterPb(basePb: string, filters?: SearchFilters): string;
|
|
33
|
+
/** SerpAPI-style tbs tokens — probed; server ignores on search?tbm=map. */
|
|
34
|
+
export declare const PROBED_TBS_TOKENS: {
|
|
35
|
+
readonly openNow: "lf_od:1";
|
|
36
|
+
readonly openNowWithLf: "lf:1,lf_od:1";
|
|
37
|
+
readonly priceLevel1: "mr:1,price:1";
|
|
38
|
+
readonly priceLevel2: "mr:1,price:2";
|
|
39
|
+
readonly minRating4: "mr:1,avg:4";
|
|
40
|
+
readonly minRating45: "mr:1,avg:4.5";
|
|
41
|
+
readonly hotelDates: "hc:2026-08-01,2026-08-03";
|
|
42
|
+
};
|
|
43
|
+
//# sourceMappingURL=search-filters.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"search-filters.d.ts","sourceRoot":"","sources":["../../src/rpc/search-filters.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAEH,OAAO,KAAK,EACV,aAAa,EACb,qBAAqB,EACrB,gBAAgB,EAChB,kBAAkB,EACnB,MAAM,4BAA4B,CAAC;AAOpC,2DAA2D;AAC3D,MAAM,WAAW,aAAa;IAC5B,IAAI,EAAE,MAAM,CAAC;IACb,+DAA+D;IAC/D,OAAO,EAAE,MAAM,CAAC;IAChB,KAAK,EAAE,MAAM,CAAC;CACf;AAMD,wEAAwE;AACxE,wBAAgB,qBAAqB,CAAC,KAAK,EAAE,qBAAqB,GAAG,aAAa,CAOjF;AAED,2DAA2D;AAC3D,wBAAgB,kBAAkB,CAAC,SAAS,EAAE,kBAAkB,GAAG,aAAa,CAO/E;AAED,mEAAmE;AACnE,wBAAgB,iBAAiB,CAAC,MAAM,EAAE,gBAAgB,EAAE,GAAG,aAAa,CAO3E;AAED,gEAAgE;AAChE,wBAAgB,sBAAsB,CAAC,OAAO,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,GAAG,aAAa,CAMvF;AAED,+DAA+D;AAC/D,wBAAgB,iBAAiB,CAAC,OAAO,EAAE,aAAa,EAAE,GAAG,MAAM,CAMlE;AAED,6DAA6D;AAC7D,wBAAgB,oBAAoB,CAAC,OAAO,EAAE,aAAa,GAAG,aAAa,EAAE,CAW5E;AAED;;;GAGG;AACH,wBAAgB,oBAAoB,CAAC,MAAM,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,aAAa,GAAG,MAAM,CAKpF;AAED,2EAA2E;AAC3E,eAAO,MAAM,iBAAiB;;;;;;;;CAQpB,CAAC"}
|
|
@@ -0,0 +1,92 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Hypothesized pb suffix encodings for Maps search filters (field-50 xB slot map).
|
|
3
|
+
*
|
|
4
|
+
* NOT EFFECTIVE for anonymous HTTP — the server ignores every variant on GET search.
|
|
5
|
+
* These builders exist so unit tests document the mined JS format; they are not wired
|
|
6
|
+
* into SearchService. See known-surfaces.ts `searchFilters` (status: blocked).
|
|
7
|
+
*/
|
|
8
|
+
import { OPEN_HOURS_CHIP_VALUE, RATING_FILTER_CODE, SEARCH_FILTER_SLOT, } from '../types/search-filters.js';
|
|
9
|
+
function priceBitmask(levels) {
|
|
10
|
+
return levels.reduce((mask, level) => mask | level, 0);
|
|
11
|
+
}
|
|
12
|
+
/** Slot 3 — open now / 24h (Q2b → VP(f, 3, …), A2b sets Gn field 1). */
|
|
13
|
+
export function encodeOpenHoursFilter(value) {
|
|
14
|
+
const chip = OPEN_HOURS_CHIP_VALUE[value];
|
|
15
|
+
return {
|
|
16
|
+
slot: SEARCH_FILTER_SLOT.openHours,
|
|
17
|
+
payload: `!2m1!1i${chip}`,
|
|
18
|
+
label: `openHours:${value}`,
|
|
19
|
+
};
|
|
20
|
+
}
|
|
21
|
+
/** Slot 2 — minimum rating (yM → UXb field 2 XAa code). */
|
|
22
|
+
export function encodeRatingFilter(minRating) {
|
|
23
|
+
const code = RATING_FILTER_CODE[minRating];
|
|
24
|
+
return {
|
|
25
|
+
slot: SEARCH_FILTER_SLOT.rating,
|
|
26
|
+
payload: `!2m1!1i${code}`,
|
|
27
|
+
label: `minRating:${minRating}`,
|
|
28
|
+
};
|
|
29
|
+
}
|
|
30
|
+
/** Slot 1 — price range bitmask (A6b → PXb/SXb on gAa field 4). */
|
|
31
|
+
export function encodePriceFilter(levels) {
|
|
32
|
+
const mask = priceBitmask(levels);
|
|
33
|
+
return {
|
|
34
|
+
slot: SEARCH_FILTER_SLOT.priceRange,
|
|
35
|
+
payload: `!2m1!1i${mask}`,
|
|
36
|
+
label: `priceLevels:0x${mask.toString(16)}`,
|
|
37
|
+
};
|
|
38
|
+
}
|
|
39
|
+
/** Slot 14 — hotel check-in/out (kAb → rwb/nwb date protos). */
|
|
40
|
+
export function encodeHotelDatesFilter(checkIn, checkOut) {
|
|
41
|
+
return {
|
|
42
|
+
slot: SEARCH_FILTER_SLOT.hotelDates,
|
|
43
|
+
payload: `!2m2!1s${checkIn}!2s${checkOut}`,
|
|
44
|
+
label: `hotelDates:${checkIn}/${checkOut}`,
|
|
45
|
+
};
|
|
46
|
+
}
|
|
47
|
+
/** Wrap slot entries into a hypothesized field-50 xB block. */
|
|
48
|
+
export function wrapFilterEntries(entries) {
|
|
49
|
+
if (entries.length === 0)
|
|
50
|
+
return '';
|
|
51
|
+
const inner = entries
|
|
52
|
+
.map((e) => `!1m1!1i${e.slot}${e.payload}`)
|
|
53
|
+
.join('');
|
|
54
|
+
return `!50m${entries.length}${inner}`;
|
|
55
|
+
}
|
|
56
|
+
/** Build all pb entries implied by {@link SearchFilters}. */
|
|
57
|
+
export function buildFilterPbEntries(filters) {
|
|
58
|
+
const entries = [];
|
|
59
|
+
if (filters.openHours)
|
|
60
|
+
entries.push(encodeOpenHoursFilter(filters.openHours));
|
|
61
|
+
if (filters.minRating != null)
|
|
62
|
+
entries.push(encodeRatingFilter(filters.minRating));
|
|
63
|
+
if (filters.priceLevels?.length)
|
|
64
|
+
entries.push(encodePriceFilter(filters.priceLevels));
|
|
65
|
+
if (filters.hotelDates) {
|
|
66
|
+
entries.push(encodeHotelDatesFilter(filters.hotelDates.checkIn, filters.hotelDates.checkOut));
|
|
67
|
+
}
|
|
68
|
+
return entries;
|
|
69
|
+
}
|
|
70
|
+
/**
|
|
71
|
+
* Append hypothesized filter block to a search pb. Returns the input unchanged when
|
|
72
|
+
* no filters are set so default search requests stay byte-identical.
|
|
73
|
+
*/
|
|
74
|
+
export function appendSearchFilterPb(basePb, filters) {
|
|
75
|
+
if (!filters)
|
|
76
|
+
return basePb;
|
|
77
|
+
const entries = buildFilterPbEntries(filters);
|
|
78
|
+
if (entries.length === 0)
|
|
79
|
+
return basePb;
|
|
80
|
+
return basePb + wrapFilterEntries(entries);
|
|
81
|
+
}
|
|
82
|
+
/** SerpAPI-style tbs tokens — probed; server ignores on search?tbm=map. */
|
|
83
|
+
export const PROBED_TBS_TOKENS = {
|
|
84
|
+
openNow: 'lf_od:1',
|
|
85
|
+
openNowWithLf: 'lf:1,lf_od:1',
|
|
86
|
+
priceLevel1: 'mr:1,price:1',
|
|
87
|
+
priceLevel2: 'mr:1,price:2',
|
|
88
|
+
minRating4: 'mr:1,avg:4',
|
|
89
|
+
minRating45: 'mr:1,avg:4.5',
|
|
90
|
+
hotelDates: 'hc:2026-08-01,2026-08-03',
|
|
91
|
+
};
|
|
92
|
+
//# sourceMappingURL=search-filters.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"search-filters.js","sourceRoot":"","sources":["../../src/rpc/search-filters.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,34 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Protobuf URL builders for Maps omnibox autocomplete (`/s?suggest=p`).
|
|
3
|
+
*
|
|
4
|
+
* The endpoint rejects requests without a camera viewport pb (HTTP 500).
|
|
5
|
+
*/
|
|
6
|
+
/** Default Bangalore viewport used during reverse-engineering. */
|
|
7
|
+
export declare const DEFAULT_SUGGEST_LAT = 12.9168;
|
|
8
|
+
export declare const DEFAULT_SUGGEST_LNG = 77.645;
|
|
9
|
+
/**
|
|
10
|
+
* Build the camera viewport pb that scopes autocomplete to a map area.
|
|
11
|
+
*
|
|
12
|
+
* Format verified by ablation: only `q` and this `pb` are required on the endpoint.
|
|
13
|
+
*/
|
|
14
|
+
export declare function buildSuggestCameraPb(params: {
|
|
15
|
+
lat: number;
|
|
16
|
+
lng: number;
|
|
17
|
+
altitude: number;
|
|
18
|
+
screenWidth: number;
|
|
19
|
+
screenHeight: number;
|
|
20
|
+
}): string;
|
|
21
|
+
/** Assemble the full suggest URL with query, locale, and camera pb. */
|
|
22
|
+
export declare function buildSuggestUrl(params: {
|
|
23
|
+
query: string;
|
|
24
|
+
lat: number;
|
|
25
|
+
lng: number;
|
|
26
|
+
altitude?: number;
|
|
27
|
+
zoom?: number;
|
|
28
|
+
screenWidth?: number;
|
|
29
|
+
screenHeight?: number;
|
|
30
|
+
hl: string;
|
|
31
|
+
gl: string;
|
|
32
|
+
sessionToken?: string;
|
|
33
|
+
}): string;
|
|
34
|
+
//# sourceMappingURL=suggest-pb.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"suggest-pb.d.ts","sourceRoot":"","sources":["../../src/rpc/suggest-pb.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAOH,kEAAkE;AAClE,eAAO,MAAM,mBAAmB,UAAU,CAAC;AAC3C,eAAO,MAAM,mBAAmB,SAAS,CAAC;AAE1C;;;;GAIG;AACH,wBAAgB,oBAAoB,CAAC,MAAM,EAAE;IAC3C,GAAG,EAAE,MAAM,CAAC;IACZ,GAAG,EAAE,MAAM,CAAC;IACZ,QAAQ,EAAE,MAAM,CAAC;IACjB,WAAW,EAAE,MAAM,CAAC;IACpB,YAAY,EAAE,MAAM,CAAC;CACtB,GAAG,MAAM,CAKT;AAED,uEAAuE;AACvE,wBAAgB,eAAe,CAAC,MAAM,EAAE;IACtC,KAAK,EAAE,MAAM,CAAC;IACd,GAAG,EAAE,MAAM,CAAC;IACZ,GAAG,EAAE,MAAM,CAAC;IACZ,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,EAAE,EAAE,MAAM,CAAC;IACX,EAAE,EAAE,MAAM,CAAC;IACX,YAAY,CAAC,EAAE,MAAM,CAAC;CACvB,GAAG,MAAM,CAyBT"}
|
|
@@ -0,0 +1,42 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Protobuf URL builders for Maps omnibox autocomplete (`/s?suggest=p`).
|
|
3
|
+
*
|
|
4
|
+
* The endpoint rejects requests without a camera viewport pb (HTTP 500).
|
|
5
|
+
*/
|
|
6
|
+
import { altitudeFromZoom } from '../utils/geo.js';
|
|
7
|
+
const SUGGEST_BASE = 'https://www.google.com/s?tbm=map&gs_ri=maps&suggest=p&authuser=0';
|
|
8
|
+
/** Default Bangalore viewport used during reverse-engineering. */
|
|
9
|
+
export const DEFAULT_SUGGEST_LAT = 12.9168;
|
|
10
|
+
export const DEFAULT_SUGGEST_LNG = 77.645;
|
|
11
|
+
/**
|
|
12
|
+
* Build the camera viewport pb that scopes autocomplete to a map area.
|
|
13
|
+
*
|
|
14
|
+
* Format verified by ablation: only `q` and this `pb` are required on the endpoint.
|
|
15
|
+
*/
|
|
16
|
+
export function buildSuggestCameraPb(params) {
|
|
17
|
+
return (`!4m12!1m3!1d${params.altitude}!2d${params.lng}!3d${params.lat}` +
|
|
18
|
+
`!2m3!1f0!2f0!3f0!3m2!1i${params.screenWidth}!2i${params.screenHeight}!4f13.1`);
|
|
19
|
+
}
|
|
20
|
+
/** Assemble the full suggest URL with query, locale, and camera pb. */
|
|
21
|
+
export function buildSuggestUrl(params) {
|
|
22
|
+
const lat = params.lat;
|
|
23
|
+
const lng = params.lng;
|
|
24
|
+
const altitude = params.altitude ??
|
|
25
|
+
(params.zoom != null ? altitudeFromZoom(params.zoom, lat) : 10_000);
|
|
26
|
+
const screenWidth = params.screenWidth ?? 1440;
|
|
27
|
+
const screenHeight = params.screenHeight ?? 757;
|
|
28
|
+
const pb = buildSuggestCameraPb({
|
|
29
|
+
lat,
|
|
30
|
+
lng,
|
|
31
|
+
altitude,
|
|
32
|
+
screenWidth,
|
|
33
|
+
screenHeight,
|
|
34
|
+
});
|
|
35
|
+
const q = encodeURIComponent(params.query);
|
|
36
|
+
let url = `${SUGGEST_BASE}&hl=${params.hl}&gl=${params.gl}&q=${q}&pb=${encodeURIComponent(pb)}`;
|
|
37
|
+
if (params.sessionToken) {
|
|
38
|
+
url += `&psi=${encodeURIComponent(params.sessionToken)}`;
|
|
39
|
+
}
|
|
40
|
+
return url;
|
|
41
|
+
}
|
|
42
|
+
//# sourceMappingURL=suggest-pb.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"suggest-pb.js","sourceRoot":"","sources":["../../src/rpc/suggest-pb.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,EAAE,gBAAgB,EAAE,MAAM,iBAAiB,CAAC;AAEnD,MAAM,YAAY,GAChB,kEAAkE,CAAC;AAErE,kEAAkE;AAClE,MAAM,CAAC,MAAM,mBAAmB,GAAG,OAAO,CAAC;AAC3C,MAAM,CAAC,MAAM,mBAAmB,GAAG,MAAM,CAAC;AAE1C;;;;GAIG;AACH,MAAM,UAAU,oBAAoB,CAAC,MAMpC;IACC,OAAO,CACL,eAAe,MAAM,CAAC,QAAQ,MAAM,MAAM,CAAC,GAAG,MAAM,MAAM,CAAC,GAAG,EAAE;QAChE,0BAA0B,MAAM,CAAC,WAAW,MAAM,MAAM,CAAC,YAAY,SAAS,CAC/E,CAAC;AACJ,CAAC;AAED,uEAAuE;AACvE,MAAM,UAAU,eAAe,CAAC,MAW/B;IACC,MAAM,GAAG,GAAG,MAAM,CAAC,GAAG,CAAC;IACvB,MAAM,GAAG,GAAG,MAAM,CAAC,GAAG,CAAC;IACvB,MAAM,QAAQ,GACZ,MAAM,CAAC,QAAQ;QACf,CAAC,MAAM,CAAC,IAAI,IAAI,IAAI,CAAC,CAAC,CAAC,gBAAgB,CAAC,MAAM,CAAC,IAAI,EAAE,GAAG,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC;IACtE,MAAM,WAAW,GAAG,MAAM,CAAC,WAAW,IAAI,IAAI,CAAC;IAC/C,MAAM,YAAY,GAAG,MAAM,CAAC,YAAY,IAAI,GAAG,CAAC;IAEhD,MAAM,EAAE,GAAG,oBAAoB,CAAC;QAC9B,GAAG;QACH,GAAG;QACH,QAAQ;QACR,WAAW;QACX,YAAY;KACb,CAAC,CAAC;IAEH,MAAM,CAAC,GAAG,kBAAkB,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;IAC3C,IAAI,GAAG,GAAG,GAAG,YAAY,OAAO,MAAM,CAAC,EAAE,OAAO,MAAM,CAAC,EAAE,MAAM,CAAC,OAAO,kBAAkB,CAAC,EAAE,CAAC,EAAE,CAAC;IAEhG,IAAI,MAAM,CAAC,YAAY,EAAE,CAAC;QACxB,GAAG,IAAI,QAAQ,kBAAkB,CAAC,MAAM,CAAC,YAAY,CAAC,EAAE,CAAC;IAC3D,CAAC;IAED,OAAO,GAAG,CAAC;AACb,CAAC"}
|
|
@@ -0,0 +1,45 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Protobuf URL builders for Google Maps vector-tile endpoints.
|
|
3
|
+
*
|
|
4
|
+
* Pb slot semantics (reverse-engineered from live probes + Maps JS vt module):
|
|
5
|
+
*
|
|
6
|
+
* ```
|
|
7
|
+
* !1m5!1m4!1i{z}!2i{x}!3i{y}!4i{size}!2m3!1e{layerEnum}!2s{style}!3i{version}
|
|
8
|
+
* ```
|
|
9
|
+
*
|
|
10
|
+
* | Slot | Example | Meaning |
|
|
11
|
+
* |------|---------|---------|
|
|
12
|
+
* | `!1m5!1m4` | — | Outer tile-index wrapper (5-field group containing a 4-field coord block) |
|
|
13
|
+
* | `!1i{z}` | `!1i14` | Zoom level (Web Mercator pyramid) |
|
|
14
|
+
* | `!2i{x}` | `!2i9362` | Tile column (X index, increases eastward) |
|
|
15
|
+
* | `!3i{y}` | `!3i7623` | Tile row (Y index, increases southward) |
|
|
16
|
+
* | `!4i{size}` | `!4i256` | Requested tile edge length in pixels (512 returns HTTP 400) |
|
|
17
|
+
* | `!2m3` | — | Layer/style sub-message (3 fields) |
|
|
18
|
+
* | `!1e{layerEnum}` | `!1e0` | Layer type enum — `0` is the default basemap roadmap layer |
|
|
19
|
+
* | `!2s{style}` | `!2sm` | Style marker string — `m` is the default roadmap style in Maps JS |
|
|
20
|
+
* | `!3i{version}` | `!3i707476520` | Tileset version epoch; static in Maps JS, may drift on deploys |
|
|
21
|
+
*
|
|
22
|
+
* Adding a locale suffix (`!3m8!2s{hl}!3s{gl}!…`) after the version slot causes HTTP 400.
|
|
23
|
+
*/
|
|
24
|
+
import type { MapTileFetchOptions, MapTileLayer, MapTileSize } from '../types/tiles.js';
|
|
25
|
+
/** Default tileset version epoch observed in Maps JS (Jul 2026). */
|
|
26
|
+
export declare const DEFAULT_MAP_TILE_VERSION = 707476520;
|
|
27
|
+
/** Default POI pin icon from Maps JS (`RFjZgc.js` asset registry). */
|
|
28
|
+
export declare const DEFAULT_POI_ICON = "assets/icons/poi/tactile/pinlet-2-medium.png";
|
|
29
|
+
/** Build the pb string for a basemap tile request. */
|
|
30
|
+
export declare function buildMapTilePb(params: {
|
|
31
|
+
z: number;
|
|
32
|
+
x: number;
|
|
33
|
+
y: number;
|
|
34
|
+
size?: MapTileSize;
|
|
35
|
+
layer?: MapTileLayer;
|
|
36
|
+
version?: number;
|
|
37
|
+
}): string;
|
|
38
|
+
/** Full URL for a basemap tile (no network I/O). */
|
|
39
|
+
export declare function buildMapTileUrl(options: MapTileFetchOptions): string;
|
|
40
|
+
/** Full URL for a POI icon asset (no network I/O). */
|
|
41
|
+
export declare function buildIconUrl(params: {
|
|
42
|
+
name: string;
|
|
43
|
+
scale?: number;
|
|
44
|
+
}): string;
|
|
45
|
+
//# sourceMappingURL=tiles-pb.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"tiles-pb.d.ts","sourceRoot":"","sources":["../../src/rpc/tiles-pb.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;GAsBG;AAEH,OAAO,KAAK,EAAmB,mBAAmB,EAAE,YAAY,EAAE,WAAW,EAAE,MAAM,mBAAmB,CAAC;AAEzG,oEAAoE;AACpE,eAAO,MAAM,wBAAwB,YAAc,CAAC;AAIpD,sEAAsE;AACtE,eAAO,MAAM,gBAAgB,iDACmB,CAAC;AAkBjD,sDAAsD;AACtD,wBAAgB,cAAc,CAAC,MAAM,EAAE;IACrC,CAAC,EAAE,MAAM,CAAC;IACV,CAAC,EAAE,MAAM,CAAC;IACV,CAAC,EAAE,MAAM,CAAC;IACV,IAAI,CAAC,EAAE,WAAW,CAAC;IACnB,KAAK,CAAC,EAAE,YAAY,CAAC;IACrB,OAAO,CAAC,EAAE,MAAM,CAAC;CAClB,GAAG,MAAM,CAUT;AAeD,oDAAoD;AACpD,wBAAgB,eAAe,CAAC,OAAO,EAAE,mBAAmB,GAAG,MAAM,CAIpE;AAED,sDAAsD;AACtD,wBAAgB,YAAY,CAAC,MAAM,EAAE;IACnC,IAAI,EAAE,MAAM,CAAC;IACb,KAAK,CAAC,EAAE,MAAM,CAAC;CAChB,GAAG,MAAM,CAGT"}
|
|
@@ -0,0 +1,71 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Protobuf URL builders for Google Maps vector-tile endpoints.
|
|
3
|
+
*
|
|
4
|
+
* Pb slot semantics (reverse-engineered from live probes + Maps JS vt module):
|
|
5
|
+
*
|
|
6
|
+
* ```
|
|
7
|
+
* !1m5!1m4!1i{z}!2i{x}!3i{y}!4i{size}!2m3!1e{layerEnum}!2s{style}!3i{version}
|
|
8
|
+
* ```
|
|
9
|
+
*
|
|
10
|
+
* | Slot | Example | Meaning |
|
|
11
|
+
* |------|---------|---------|
|
|
12
|
+
* | `!1m5!1m4` | — | Outer tile-index wrapper (5-field group containing a 4-field coord block) |
|
|
13
|
+
* | `!1i{z}` | `!1i14` | Zoom level (Web Mercator pyramid) |
|
|
14
|
+
* | `!2i{x}` | `!2i9362` | Tile column (X index, increases eastward) |
|
|
15
|
+
* | `!3i{y}` | `!3i7623` | Tile row (Y index, increases southward) |
|
|
16
|
+
* | `!4i{size}` | `!4i256` | Requested tile edge length in pixels (512 returns HTTP 400) |
|
|
17
|
+
* | `!2m3` | — | Layer/style sub-message (3 fields) |
|
|
18
|
+
* | `!1e{layerEnum}` | `!1e0` | Layer type enum — `0` is the default basemap roadmap layer |
|
|
19
|
+
* | `!2s{style}` | `!2sm` | Style marker string — `m` is the default roadmap style in Maps JS |
|
|
20
|
+
* | `!3i{version}` | `!3i707476520` | Tileset version epoch; static in Maps JS, may drift on deploys |
|
|
21
|
+
*
|
|
22
|
+
* Adding a locale suffix (`!3m8!2s{hl}!3s{gl}!…`) after the version slot causes HTTP 400.
|
|
23
|
+
*/
|
|
24
|
+
/** Default tileset version epoch observed in Maps JS (Jul 2026). */
|
|
25
|
+
export const DEFAULT_MAP_TILE_VERSION = 707_476_520;
|
|
26
|
+
const VT_BASE = 'https://www.google.com/maps/vt';
|
|
27
|
+
/** Default POI pin icon from Maps JS (`RFjZgc.js` asset registry). */
|
|
28
|
+
export const DEFAULT_POI_ICON = 'assets/icons/poi/tactile/pinlet-2-medium.png';
|
|
29
|
+
function layerPbParts(layer) {
|
|
30
|
+
switch (layer) {
|
|
31
|
+
case 'roadmap':
|
|
32
|
+
return { layerEnum: 0, styleMarker: 'm' };
|
|
33
|
+
default: {
|
|
34
|
+
const exhaustive = layer;
|
|
35
|
+
throw new Error(`Unhandled map tile layer: ${String(exhaustive)}`);
|
|
36
|
+
}
|
|
37
|
+
}
|
|
38
|
+
}
|
|
39
|
+
/** Build the pb string for a basemap tile request. */
|
|
40
|
+
export function buildMapTilePb(params) {
|
|
41
|
+
const size = params.size ?? 256;
|
|
42
|
+
const layer = params.layer ?? 'roadmap';
|
|
43
|
+
const version = params.version ?? DEFAULT_MAP_TILE_VERSION;
|
|
44
|
+
const { layerEnum, styleMarker } = layerPbParts(layer);
|
|
45
|
+
return (`!1m5!1m4!1i${params.z}!2i${params.x}!3i${params.y}!4i${size}` +
|
|
46
|
+
`!2m3!1e${layerEnum}!2s${styleMarker}!3i${version}`);
|
|
47
|
+
}
|
|
48
|
+
function vtPath(endpoint) {
|
|
49
|
+
switch (endpoint) {
|
|
50
|
+
case 'proto':
|
|
51
|
+
return '/proto';
|
|
52
|
+
case 'stream':
|
|
53
|
+
return '/stream';
|
|
54
|
+
default: {
|
|
55
|
+
const exhaustive = endpoint;
|
|
56
|
+
throw new Error(`Unhandled map tile endpoint: ${String(exhaustive)}`);
|
|
57
|
+
}
|
|
58
|
+
}
|
|
59
|
+
}
|
|
60
|
+
/** Full URL for a basemap tile (no network I/O). */
|
|
61
|
+
export function buildMapTileUrl(options) {
|
|
62
|
+
const endpoint = options.endpoint ?? 'proto';
|
|
63
|
+
const pb = buildMapTilePb(options);
|
|
64
|
+
return `${VT_BASE}${vtPath(endpoint)}?pb=${encodeURIComponent(pb)}`;
|
|
65
|
+
}
|
|
66
|
+
/** Full URL for a POI icon asset (no network I/O). */
|
|
67
|
+
export function buildIconUrl(params) {
|
|
68
|
+
const scale = params.scale ?? 2;
|
|
69
|
+
return `${VT_BASE}/icon/name=${params.name}?scale=${scale}`;
|
|
70
|
+
}
|
|
71
|
+
//# sourceMappingURL=tiles-pb.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"tiles-pb.js","sourceRoot":"","sources":["../../src/rpc/tiles-pb.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;GAsBG;AAIH,oEAAoE;AACpE,MAAM,CAAC,MAAM,wBAAwB,GAAG,WAAW,CAAC;AAEpD,MAAM,OAAO,GAAG,gCAAgC,CAAC;AAEjD,sEAAsE;AACtE,MAAM,CAAC,MAAM,gBAAgB,GAC3B,8CAA8C,CAAC;AAOjD,SAAS,YAAY,CAAC,KAAmB;IACvC,QAAQ,KAAK,EAAE,CAAC;QACd,KAAK,SAAS;YACZ,OAAO,EAAE,SAAS,EAAE,CAAC,EAAE,WAAW,EAAE,GAAG,EAAE,CAAC;QAC5C,OAAO,CAAC,CAAC,CAAC;YACR,MAAM,UAAU,GAAU,KAAK,CAAC;YAChC,MAAM,IAAI,KAAK,CAAC,6BAA6B,MAAM,CAAC,UAAU,CAAC,EAAE,CAAC,CAAC;QACrE,CAAC;IACH,CAAC;AACH,CAAC;AAED,sDAAsD;AACtD,MAAM,UAAU,cAAc,CAAC,MAO9B;IACC,MAAM,IAAI,GAAG,MAAM,CAAC,IAAI,IAAI,GAAG,CAAC;IAChC,MAAM,KAAK,GAAG,MAAM,CAAC,KAAK,IAAI,SAAS,CAAC;IACxC,MAAM,OAAO,GAAG,MAAM,CAAC,OAAO,IAAI,wBAAwB,CAAC;IAC3D,MAAM,EAAE,SAAS,EAAE,WAAW,EAAE,GAAG,YAAY,CAAC,KAAK,CAAC,CAAC;IAEvD,OAAO,CACL,cAAc,MAAM,CAAC,CAAC,MAAM,MAAM,CAAC,CAAC,MAAM,MAAM,CAAC,CAAC,MAAM,IAAI,EAAE;QAC9D,UAAU,SAAS,MAAM,WAAW,MAAM,OAAO,EAAE,CACpD,CAAC;AACJ,CAAC;AAED,SAAS,MAAM,CAAC,QAAyB;IACvC,QAAQ,QAAQ,EAAE,CAAC;QACjB,KAAK,OAAO;YACV,OAAO,QAAQ,CAAC;QAClB,KAAK,QAAQ;YACX,OAAO,SAAS,CAAC;QACnB,OAAO,CAAC,CAAC,CAAC;YACR,MAAM,UAAU,GAAU,QAAQ,CAAC;YACnC,MAAM,IAAI,KAAK,CAAC,gCAAgC,MAAM,CAAC,UAAU,CAAC,EAAE,CAAC,CAAC;QACxE,CAAC;IACH,CAAC;AACH,CAAC;AAED,oDAAoD;AACpD,MAAM,UAAU,eAAe,CAAC,OAA4B;IAC1D,MAAM,QAAQ,GAAG,OAAO,CAAC,QAAQ,IAAI,OAAO,CAAC;IAC7C,MAAM,EAAE,GAAG,cAAc,CAAC,OAAO,CAAC,CAAC;IACnC,OAAO,GAAG,OAAO,GAAG,MAAM,CAAC,QAAQ,CAAC,OAAO,kBAAkB,CAAC,EAAE,CAAC,EAAE,CAAC;AACtE,CAAC;AAED,sDAAsD;AACtD,MAAM,UAAU,YAAY,CAAC,MAG5B;IACC,MAAM,KAAK,GAAG,MAAM,CAAC,KAAK,IAAI,CAAC,CAAC;IAChC,OAAO,GAAG,OAAO,cAAc,MAAM,CAAC,IAAI,UAAU,KAAK,EAAE,CAAC;AAC9D,CAAC"}
|
|
@@ -0,0 +1,24 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Bootstrap batchexecute auth via the xsrf RPC (AvYl1c / field 48448350).
|
|
3
|
+
*
|
|
4
|
+
* Maps anonymous HTML often has empty SNlM0e — xsrf is the first batchexecute call
|
|
5
|
+
* the browser makes to obtain a session token when one is returned.
|
|
6
|
+
*/
|
|
7
|
+
import type { BatchExecuteConfig } from '../types/common.js';
|
|
8
|
+
export interface XsrfBootstrapResult {
|
|
9
|
+
authToken?: string;
|
|
10
|
+
sessionId?: string;
|
|
11
|
+
raw: unknown;
|
|
12
|
+
}
|
|
13
|
+
/** Parse xsrf batchexecute response body (even when HTTP status is 400). */
|
|
14
|
+
export declare function parseXsrfResponse(body: string): XsrfBootstrapResult;
|
|
15
|
+
/** Build default batchexecute URL query params for Maps WizUi. */
|
|
16
|
+
export declare function defaultBatchexecuteUrlParams(options: {
|
|
17
|
+
hl?: string;
|
|
18
|
+
gl?: string;
|
|
19
|
+
buildLabel?: string;
|
|
20
|
+
sessionId?: string;
|
|
21
|
+
sourcePath?: string;
|
|
22
|
+
}): Record<string, string>;
|
|
23
|
+
export type { BatchExecuteConfig };
|
|
24
|
+
//# sourceMappingURL=xsrf-bootstrap.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"xsrf-bootstrap.d.ts","sourceRoot":"","sources":["../../src/rpc/xsrf-bootstrap.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAIH,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,oBAAoB,CAAC;AAG7D,MAAM,WAAW,mBAAmB;IAClC,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,GAAG,EAAE,OAAO,CAAC;CACd;AAyBD,4EAA4E;AAC5E,wBAAgB,iBAAiB,CAAC,IAAI,EAAE,MAAM,GAAG,mBAAmB,CAgBnE;AAED,kEAAkE;AAClE,wBAAgB,4BAA4B,CAAC,OAAO,EAAE;IACpD,EAAE,CAAC,EAAE,MAAM,CAAC;IACZ,EAAE,CAAC,EAAE,MAAM,CAAC;IACZ,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,UAAU,CAAC,EAAE,MAAM,CAAC;CACrB,GAAG,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CASzB;AAED,YAAY,EAAE,kBAAkB,EAAE,CAAC"}
|