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,266 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Canonical Google Maps share/embed URL builders.
|
|
3
|
+
*
|
|
4
|
+
* Inverse of {@link parseMapsUrl} — produces human-facing `google.com/maps/*` URLs,
|
|
5
|
+
* distinct from the internal RPC pb URLs in `pb-builders.ts`.
|
|
6
|
+
*/
|
|
7
|
+
import { viewportAltitude } from '../utils/static-map-grid.js';
|
|
8
|
+
const BASE = 'https://www.google.com/maps';
|
|
9
|
+
const TRAVEL_MODE_CODE = {
|
|
10
|
+
driving: 0,
|
|
11
|
+
bicycling: 1,
|
|
12
|
+
walking: 2,
|
|
13
|
+
transit: 3,
|
|
14
|
+
};
|
|
15
|
+
function encodePathSegment(value) {
|
|
16
|
+
return encodeURIComponent(value).replace(/%20/g, '+');
|
|
17
|
+
}
|
|
18
|
+
function formatCoord(value) {
|
|
19
|
+
const rounded = Math.round(value * 1e7) / 1e7;
|
|
20
|
+
return Number.isInteger(rounded) ? String(rounded) : String(rounded);
|
|
21
|
+
}
|
|
22
|
+
function viewportSegment(lat, lng, zoom) {
|
|
23
|
+
const z = zoom ?? 15;
|
|
24
|
+
return `@${formatCoord(lat)},${formatCoord(lng)},${z}z`;
|
|
25
|
+
}
|
|
26
|
+
function placeDataBlob(params) {
|
|
27
|
+
const idPart = params.hexId
|
|
28
|
+
? `!1s${params.hexId}`
|
|
29
|
+
: params.placeId
|
|
30
|
+
? `!1s${params.placeId}`
|
|
31
|
+
: '';
|
|
32
|
+
const ftidPart = params.featureId
|
|
33
|
+
? `!16s${encodeURIComponent(params.featureId.startsWith('/') ? params.featureId : `/${params.featureId}`)}`
|
|
34
|
+
: '';
|
|
35
|
+
return (`!3m1!4b1!4m6!3m5${idPart}!8m2!3d${formatCoord(params.lat)}!4d${formatCoord(params.lng)}${ftidPart}`);
|
|
36
|
+
}
|
|
37
|
+
function directionsDataBlob(mode) {
|
|
38
|
+
const modeCode = mode ? TRAVEL_MODE_CODE[mode] : undefined;
|
|
39
|
+
return modeCode != null ? `!4m2!4m1!3e${modeCode}` : '';
|
|
40
|
+
}
|
|
41
|
+
/** Build a place page URL (`/maps/place/...`). */
|
|
42
|
+
export function buildPlaceUrl(options) {
|
|
43
|
+
const namePart = options.name ? encodePathSegment(options.name) : '';
|
|
44
|
+
const viewport = viewportSegment(options.lat, options.lng, options.zoom);
|
|
45
|
+
const data = placeDataBlob({
|
|
46
|
+
hexId: options.hexId,
|
|
47
|
+
placeId: options.placeId,
|
|
48
|
+
lat: options.lat,
|
|
49
|
+
lng: options.lng,
|
|
50
|
+
featureId: options.featureId,
|
|
51
|
+
});
|
|
52
|
+
return `${BASE}/place/${namePart}/${viewport}/data=${data}`;
|
|
53
|
+
}
|
|
54
|
+
/** Build a search results URL (`/maps/search/...`). */
|
|
55
|
+
export function buildSearchUrl(options) {
|
|
56
|
+
const query = encodePathSegment(options.query);
|
|
57
|
+
if (options.lat != null && options.lng != null) {
|
|
58
|
+
const viewport = viewportSegment(options.lat, options.lng, options.zoom);
|
|
59
|
+
return `${BASE}/search/${query}/${viewport}`;
|
|
60
|
+
}
|
|
61
|
+
return `${BASE}/search/${query}`;
|
|
62
|
+
}
|
|
63
|
+
/** Build a directions URL (`/maps/dir/...`). */
|
|
64
|
+
export function buildDirectionsUrl(options) {
|
|
65
|
+
const origin = encodePathSegment(options.origin);
|
|
66
|
+
const destination = encodePathSegment(options.destination);
|
|
67
|
+
const middle = options.waypoints && options.waypoints.length > 0
|
|
68
|
+
? `${options.waypoints.map(encodePathSegment).join('/')}/`
|
|
69
|
+
: '';
|
|
70
|
+
const viewport = options.lat != null && options.lng != null
|
|
71
|
+
? `/${viewportSegment(options.lat, options.lng, options.zoom)}`
|
|
72
|
+
: '';
|
|
73
|
+
const data = directionsDataBlob(options.mode);
|
|
74
|
+
const dataSuffix = data ? `/data=${data}` : '';
|
|
75
|
+
return `${BASE}/dir/${origin}/${middle}${destination}${viewport}${dataSuffix}`;
|
|
76
|
+
}
|
|
77
|
+
/** Build a bare viewport URL (`/maps/@lat,lng,zoom`). */
|
|
78
|
+
export function buildViewportUrl(options) {
|
|
79
|
+
const viewport = viewportSegment(options.lat, options.lng, options.zoom);
|
|
80
|
+
const params = new URLSearchParams();
|
|
81
|
+
if (options.mapAction === 'pano') {
|
|
82
|
+
params.set('map_action', 'pano');
|
|
83
|
+
}
|
|
84
|
+
switch (options.layer) {
|
|
85
|
+
case 'transit':
|
|
86
|
+
params.set('layer', 'transit');
|
|
87
|
+
break;
|
|
88
|
+
case 'traffic':
|
|
89
|
+
params.set('layer', 'traffic');
|
|
90
|
+
break;
|
|
91
|
+
case 'bicycling':
|
|
92
|
+
params.set('layer', 'bicycling');
|
|
93
|
+
break;
|
|
94
|
+
case 'none':
|
|
95
|
+
case undefined:
|
|
96
|
+
break;
|
|
97
|
+
default: {
|
|
98
|
+
const exhaustive = options.layer;
|
|
99
|
+
throw new Error(`Unhandled map layer: ${String(exhaustive)}`);
|
|
100
|
+
}
|
|
101
|
+
}
|
|
102
|
+
const qs = params.toString();
|
|
103
|
+
return qs ? `${BASE}/${viewport}?${qs}` : `${BASE}/${viewport}`;
|
|
104
|
+
}
|
|
105
|
+
/**
|
|
106
|
+
* Build a Street View share URL.
|
|
107
|
+
*
|
|
108
|
+
* Uses the `@?api=1&map_action=pano` form documented by Google. Not parsed by
|
|
109
|
+
* {@link parseMapsUrl} today — verify via live HTTP instead of round-trip.
|
|
110
|
+
*/
|
|
111
|
+
export function buildStreetViewUrl(options) {
|
|
112
|
+
const params = new URLSearchParams();
|
|
113
|
+
params.set('api', '1');
|
|
114
|
+
params.set('map_action', 'pano');
|
|
115
|
+
params.set('viewpoint', `${formatCoord(options.lat)},${formatCoord(options.lng)}`);
|
|
116
|
+
if (options.panoId) {
|
|
117
|
+
params.set('pano', options.panoId);
|
|
118
|
+
}
|
|
119
|
+
if (options.heading != null) {
|
|
120
|
+
params.set('heading', String(options.heading));
|
|
121
|
+
}
|
|
122
|
+
if (options.pitch != null) {
|
|
123
|
+
params.set('pitch', String(options.pitch));
|
|
124
|
+
}
|
|
125
|
+
if (options.fov != null) {
|
|
126
|
+
params.set('fov', String(options.fov));
|
|
127
|
+
}
|
|
128
|
+
return `${BASE}/@?${params.toString()}`;
|
|
129
|
+
}
|
|
130
|
+
function buildKeylessEmbedPb(options) {
|
|
131
|
+
const hl = options.hl ?? 'en';
|
|
132
|
+
const gl = options.gl ?? 'us';
|
|
133
|
+
const ts = Date.now();
|
|
134
|
+
switch (options.kind) {
|
|
135
|
+
case 'place': {
|
|
136
|
+
if (!options.hexId)
|
|
137
|
+
return null;
|
|
138
|
+
const lat = options.lat ?? 0;
|
|
139
|
+
const lng = options.lng ?? 0;
|
|
140
|
+
const alt = viewportAltitude(lat, options.zoom ?? 15);
|
|
141
|
+
const namePart = options.name
|
|
142
|
+
? `!2s${options.name.replace(/ /g, '+')}`
|
|
143
|
+
: '';
|
|
144
|
+
return (`!1m18!1m12!1m3!1d${alt}!2d${formatCoord(lng)}!3d${formatCoord(lat)}` +
|
|
145
|
+
`!2m3!1f0!2f0!3f0!3m2!1i1024!2i768!4f13.1` +
|
|
146
|
+
`!3m3!1m2!1s${options.hexId}${namePart}!5e0` +
|
|
147
|
+
`!3m2!1s${hl}!2s${gl}!4v${ts}!5m2!1s${hl}!2s${gl}`);
|
|
148
|
+
}
|
|
149
|
+
case 'search': {
|
|
150
|
+
if (!options.query)
|
|
151
|
+
return null;
|
|
152
|
+
const lat = options.lat ?? 0;
|
|
153
|
+
const lng = options.lng ?? 0;
|
|
154
|
+
const alt = viewportAltitude(lat, options.zoom ?? 15);
|
|
155
|
+
const q = encodeURIComponent(options.query);
|
|
156
|
+
return (`!1m18!1m12!1m3!1d${alt}!2d${formatCoord(lng)}!3d${formatCoord(lat)}` +
|
|
157
|
+
`!2m3!1f0!2f0!3f0!3m2!1i1024!2i768!4f13.1` +
|
|
158
|
+
`!3m3!1m2!1s0x0:0x0!2z${q}!5e0` +
|
|
159
|
+
`!3m2!1s${hl}!2s${gl}!4v${ts}!5m2!1s${hl}!2s${gl}`);
|
|
160
|
+
}
|
|
161
|
+
case 'directions': {
|
|
162
|
+
if (!options.origin || !options.destination)
|
|
163
|
+
return null;
|
|
164
|
+
const modeCode = options.mode ? TRAVEL_MODE_CODE[options.mode] : 0;
|
|
165
|
+
const origin = encodeURIComponent(options.origin);
|
|
166
|
+
const dest = encodeURIComponent(options.destination);
|
|
167
|
+
const wpCoords = (options.waypoints ?? [])
|
|
168
|
+
.map((wp) => `!4m3!3m2!1d0!2d0!3d0!4m1!3s${encodeURIComponent(wp)}`)
|
|
169
|
+
.join('');
|
|
170
|
+
const wpCount = options.waypoints?.length ?? 0;
|
|
171
|
+
const outerM = 12 + wpCount * 4 + 11;
|
|
172
|
+
const innerM = wpCount * 4 + 1;
|
|
173
|
+
return (`!1m${outerM}!1m12!1m3!1d1!2d0!3d0` +
|
|
174
|
+
`!2m3!1f0!2f0!3f0!3m2!1i1024!2i768!4f13.1` +
|
|
175
|
+
`!4m${innerM}!3e${modeCode}` +
|
|
176
|
+
`!4m5!1s0x0:0x0!2s${origin}!3m2!1d0!2d0` +
|
|
177
|
+
`!4m5!1s0x0:0x0!2s${dest}!3m2!1d0!2d0` +
|
|
178
|
+
wpCoords +
|
|
179
|
+
`!5e0!3m2!1s${hl}!2s${gl}!4v${ts}!5m2!1s${hl}!2s${gl}`);
|
|
180
|
+
}
|
|
181
|
+
case 'view': {
|
|
182
|
+
const lat = options.lat ?? 0;
|
|
183
|
+
const lng = options.lng ?? 0;
|
|
184
|
+
const alt = viewportAltitude(lat, options.zoom ?? 15);
|
|
185
|
+
return (`!1m14!1m12!1m3!1d${alt}!2d${formatCoord(lng)}!3d${formatCoord(lat)}` +
|
|
186
|
+
`!2m3!1f0!2f0!3f0!3m2!1i1024!2i768!4f13.1!5e0` +
|
|
187
|
+
`!3m2!1s${hl}!2s${gl}!4v${ts}!5m2!1s${hl}!2s${gl}`);
|
|
188
|
+
}
|
|
189
|
+
default: {
|
|
190
|
+
const exhaustive = options.kind;
|
|
191
|
+
throw new Error(`Unhandled embed kind: ${String(exhaustive)}`);
|
|
192
|
+
}
|
|
193
|
+
}
|
|
194
|
+
}
|
|
195
|
+
function buildEmbedV1Url(options) {
|
|
196
|
+
const key = options.apiKey;
|
|
197
|
+
const params = new URLSearchParams({ key });
|
|
198
|
+
switch (options.kind) {
|
|
199
|
+
case 'place': {
|
|
200
|
+
const q = options.hexId ??
|
|
201
|
+
options.name ??
|
|
202
|
+
(options.lat != null && options.lng != null
|
|
203
|
+
? `${options.lat},${options.lng}`
|
|
204
|
+
: '');
|
|
205
|
+
params.set('q', q);
|
|
206
|
+
if (options.zoom != null)
|
|
207
|
+
params.set('zoom', String(options.zoom));
|
|
208
|
+
return `${BASE}/embed/v1/place?${params.toString()}`;
|
|
209
|
+
}
|
|
210
|
+
case 'search': {
|
|
211
|
+
params.set('q', options.query ?? '');
|
|
212
|
+
return `${BASE}/embed/v1/search?${params.toString()}`;
|
|
213
|
+
}
|
|
214
|
+
case 'directions': {
|
|
215
|
+
params.set('origin', options.origin ?? '');
|
|
216
|
+
params.set('destination', options.destination ?? '');
|
|
217
|
+
if (options.mode)
|
|
218
|
+
params.set('mode', options.mode);
|
|
219
|
+
if (options.waypoints?.length) {
|
|
220
|
+
params.set('waypoints', options.waypoints.join('|'));
|
|
221
|
+
}
|
|
222
|
+
return `${BASE}/embed/v1/directions?${params.toString()}`;
|
|
223
|
+
}
|
|
224
|
+
case 'view': {
|
|
225
|
+
params.set('center', `${options.lat ?? 0},${options.lng ?? 0}`);
|
|
226
|
+
params.set('zoom', String(options.zoom ?? 15));
|
|
227
|
+
return `${BASE}/embed/v1/view?${params.toString()}`;
|
|
228
|
+
}
|
|
229
|
+
default: {
|
|
230
|
+
const exhaustive = options.kind;
|
|
231
|
+
throw new Error(`Unhandled embed kind: ${String(exhaustive)}`);
|
|
232
|
+
}
|
|
233
|
+
}
|
|
234
|
+
}
|
|
235
|
+
/**
|
|
236
|
+
* Build an embed iframe URL.
|
|
237
|
+
*
|
|
238
|
+
* Prefers the keyless `/maps/embed?pb=` form when a pb can be derived; falls back
|
|
239
|
+
* to `/maps/embed/v1/*` when `apiKey` is supplied or pb construction is impossible.
|
|
240
|
+
*/
|
|
241
|
+
export function buildEmbedUrl(options) {
|
|
242
|
+
if (options.apiKey) {
|
|
243
|
+
return { url: buildEmbedV1Url(options), keyRequired: true };
|
|
244
|
+
}
|
|
245
|
+
const pb = buildKeylessEmbedPb(options);
|
|
246
|
+
if (pb) {
|
|
247
|
+
return {
|
|
248
|
+
url: `${BASE}/embed?pb=${encodeURIComponent(pb)}`,
|
|
249
|
+
keyRequired: false,
|
|
250
|
+
};
|
|
251
|
+
}
|
|
252
|
+
return {
|
|
253
|
+
url: buildEmbedV1Url({ ...options, apiKey: 'YOUR_API_KEY' }),
|
|
254
|
+
keyRequired: true,
|
|
255
|
+
};
|
|
256
|
+
}
|
|
257
|
+
/** Travel mode code used in directions data blobs (!3eN). */
|
|
258
|
+
export function travelModeToCode(mode) {
|
|
259
|
+
return TRAVEL_MODE_CODE[mode];
|
|
260
|
+
}
|
|
261
|
+
/** Travel mode from directions data blob code. */
|
|
262
|
+
export function travelModeFromCode(code) {
|
|
263
|
+
const modes = ['driving', 'bicycling', 'walking', 'transit'];
|
|
264
|
+
return modes[code];
|
|
265
|
+
}
|
|
266
|
+
//# sourceMappingURL=maps-url-builders.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"maps-url-builders.js","sourceRoot":"","sources":["../../src/rpc/maps-url-builders.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Google Nxa rpcid encoder used by Maps batchexecute.
|
|
3
|
+
*
|
|
4
|
+
* Reverse-engineered from Maps JS:
|
|
5
|
+
* Nxa.toString(fieldNumber + 2147483648)
|
|
6
|
+
*/
|
|
7
|
+
/** Encode a protobuf field number to a batchexecute rpcid string. */
|
|
8
|
+
export declare function encodeRpcId(fieldNumber: number): string;
|
|
9
|
+
/** Decode a batchexecute rpcid back to its protobuf field number. */
|
|
10
|
+
export declare function decodeRpcId(rpcid: string): number;
|
|
11
|
+
/** True when string matches Maps Nxa rpcid shape (6-char alphanumeric). */
|
|
12
|
+
export declare function isNxaRpcId(value: string): boolean;
|
|
13
|
+
//# sourceMappingURL=nxa.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"nxa.d.ts","sourceRoot":"","sources":["../../src/rpc/nxa.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAMH,qEAAqE;AACrE,wBAAgB,WAAW,CAAC,WAAW,EAAE,MAAM,GAAG,MAAM,CAWvD;AAED,qEAAqE;AACrE,wBAAgB,WAAW,CAAC,KAAK,EAAE,MAAM,GAAG,MAAM,CAoBjD;AAED,2EAA2E;AAC3E,wBAAgB,UAAU,CAAC,KAAK,EAAE,MAAM,GAAG,OAAO,CAEjD"}
|
package/dist/rpc/nxa.js
ADDED
|
@@ -0,0 +1,44 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Google Nxa rpcid encoder used by Maps batchexecute.
|
|
3
|
+
*
|
|
4
|
+
* Reverse-engineered from Maps JS:
|
|
5
|
+
* Nxa.toString(fieldNumber + 2147483648)
|
|
6
|
+
*/
|
|
7
|
+
const ALPHA = 'abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ';
|
|
8
|
+
const ALNUM = `${ALPHA}0123456789`;
|
|
9
|
+
const NXA_OFFSET = 2_147_483_648;
|
|
10
|
+
/** Encode a protobuf field number to a batchexecute rpcid string. */
|
|
11
|
+
export function encodeRpcId(fieldNumber) {
|
|
12
|
+
let value = fieldNumber + NXA_OFFSET;
|
|
13
|
+
const chars = [ALPHA[value % 52]];
|
|
14
|
+
value = Math.floor(value / 52);
|
|
15
|
+
while (value > 0) {
|
|
16
|
+
chars.push(ALNUM[value % 62]);
|
|
17
|
+
value = Math.floor(value / 62);
|
|
18
|
+
}
|
|
19
|
+
return chars.join('');
|
|
20
|
+
}
|
|
21
|
+
/** Decode a batchexecute rpcid back to its protobuf field number. */
|
|
22
|
+
export function decodeRpcId(rpcid) {
|
|
23
|
+
if (!rpcid) {
|
|
24
|
+
throw new Error('rpcid is required');
|
|
25
|
+
}
|
|
26
|
+
let suffix = 0;
|
|
27
|
+
for (let i = rpcid.length - 1; i > 0; i--) {
|
|
28
|
+
const index = ALNUM.indexOf(rpcid[i]);
|
|
29
|
+
if (index < 0) {
|
|
30
|
+
throw new Error(`Invalid rpcid character: ${rpcid[i]}`);
|
|
31
|
+
}
|
|
32
|
+
suffix = index + 62 * suffix;
|
|
33
|
+
}
|
|
34
|
+
const prefix = ALPHA.indexOf(rpcid[0]);
|
|
35
|
+
if (prefix < 0) {
|
|
36
|
+
throw new Error(`Invalid rpcid prefix: ${rpcid}`);
|
|
37
|
+
}
|
|
38
|
+
return prefix + 52 * suffix - NXA_OFFSET;
|
|
39
|
+
}
|
|
40
|
+
/** True when string matches Maps Nxa rpcid shape (6-char alphanumeric). */
|
|
41
|
+
export function isNxaRpcId(value) {
|
|
42
|
+
return /^[a-zA-Z][a-zA-Z0-9]{5}$/.test(value);
|
|
43
|
+
}
|
|
44
|
+
//# sourceMappingURL=nxa.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"nxa.js","sourceRoot":"","sources":["../../src/rpc/nxa.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,MAAM,KAAK,GAAG,sDAAsD,CAAC;AACrE,MAAM,KAAK,GAAG,GAAG,KAAK,YAAY,CAAC;AACnC,MAAM,UAAU,GAAG,aAAa,CAAC;AAEjC,qEAAqE;AACrE,MAAM,UAAU,WAAW,CAAC,WAAmB;IAC7C,IAAI,KAAK,GAAG,WAAW,GAAG,UAAU,CAAC;IACrC,MAAM,KAAK,GAAa,CAAC,KAAK,CAAC,KAAK,GAAG,EAAE,CAAE,CAAC,CAAC;IAC7C,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC,KAAK,GAAG,EAAE,CAAC,CAAC;IAE/B,OAAO,KAAK,GAAG,CAAC,EAAE,CAAC;QACjB,KAAK,CAAC,IAAI,CAAC,KAAK,CAAC,KAAK,GAAG,EAAE,CAAE,CAAC,CAAC;QAC/B,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC,KAAK,GAAG,EAAE,CAAC,CAAC;IACjC,CAAC;IAED,OAAO,KAAK,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;AACxB,CAAC;AAED,qEAAqE;AACrE,MAAM,UAAU,WAAW,CAAC,KAAa;IACvC,IAAI,CAAC,KAAK,EAAE,CAAC;QACX,MAAM,IAAI,KAAK,CAAC,mBAAmB,CAAC,CAAC;IACvC,CAAC;IAED,IAAI,MAAM,GAAG,CAAC,CAAC;IACf,KAAK,IAAI,CAAC,GAAG,KAAK,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC,GAAG,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC;QAC1C,MAAM,KAAK,GAAG,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,CAAE,CAAC,CAAC;QACvC,IAAI,KAAK,GAAG,CAAC,EAAE,CAAC;YACd,MAAM,IAAI,KAAK,CAAC,4BAA4B,KAAK,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC;QAC1D,CAAC;QACD,MAAM,GAAG,KAAK,GAAG,EAAE,GAAG,MAAM,CAAC;IAC/B,CAAC;IAED,MAAM,MAAM,GAAG,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,CAAE,CAAC,CAAC;IACxC,IAAI,MAAM,GAAG,CAAC,EAAE,CAAC;QACf,MAAM,IAAI,KAAK,CAAC,yBAAyB,KAAK,EAAE,CAAC,CAAC;IACpD,CAAC;IAED,OAAO,MAAM,GAAG,EAAE,GAAG,MAAM,GAAG,UAAU,CAAC;AAC3C,CAAC;AAED,2EAA2E;AAC3E,MAAM,UAAU,UAAU,CAAC,KAAa;IACtC,OAAO,0BAA0B,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;AAChD,CAAC"}
|
|
@@ -0,0 +1,60 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Protobuf URL builders for Google Maps Street View / panorama endpoints.
|
|
3
|
+
*
|
|
4
|
+
* Verified against live probes — all four photometa pb blocks are required;
|
|
5
|
+
* omitting any block returns HTTP 400.
|
|
6
|
+
*/
|
|
7
|
+
/** Pb for `/maps/rpc/photo/listentityphotos` — panoramas near a point. */
|
|
8
|
+
export declare function buildListEntityPhotosPb(params: {
|
|
9
|
+
lat: number;
|
|
10
|
+
lng: number;
|
|
11
|
+
radiusMeters: number;
|
|
12
|
+
}): string;
|
|
13
|
+
/** Pb for `/maps/photometa/v1` — full metadata for a panorama id. */
|
|
14
|
+
export declare function buildPhotometaPb(params: {
|
|
15
|
+
panoId: string;
|
|
16
|
+
hl?: string;
|
|
17
|
+
gl?: string;
|
|
18
|
+
}): string;
|
|
19
|
+
/** Pb for `/maps/photometa/ac/v1` — coverage tile at Web Mercator z17. */
|
|
20
|
+
export declare function buildCoverageTilePb(params: {
|
|
21
|
+
tileX: number;
|
|
22
|
+
tileY: number;
|
|
23
|
+
}): string;
|
|
24
|
+
/** Full URL for nearby panorama search. */
|
|
25
|
+
export declare function buildListEntityPhotosUrl(params: {
|
|
26
|
+
lat: number;
|
|
27
|
+
lng: number;
|
|
28
|
+
radiusMeters: number;
|
|
29
|
+
hl: string;
|
|
30
|
+
gl: string;
|
|
31
|
+
}): string;
|
|
32
|
+
/** Full URL for panorama metadata. */
|
|
33
|
+
export declare function buildPhotometaUrl(params: {
|
|
34
|
+
panoId: string;
|
|
35
|
+
hl: string;
|
|
36
|
+
gl: string;
|
|
37
|
+
}): string;
|
|
38
|
+
/** Full URL for z17 coverage tile lookup. */
|
|
39
|
+
export declare function buildCoverageTileUrl(params: {
|
|
40
|
+
tileX: number;
|
|
41
|
+
tileY: number;
|
|
42
|
+
hl: string;
|
|
43
|
+
gl: string;
|
|
44
|
+
}): string;
|
|
45
|
+
/** Street View thumbnail URL — returns JPEG bytes without auth. */
|
|
46
|
+
export declare function buildThumbnailUrl(params: {
|
|
47
|
+
panoId: string;
|
|
48
|
+
width?: number;
|
|
49
|
+
height?: number;
|
|
50
|
+
pitch?: number;
|
|
51
|
+
yaw?: number;
|
|
52
|
+
}): string;
|
|
53
|
+
/** Street View tile URL — zoom 0..5, x/y are tile indices at that zoom. */
|
|
54
|
+
export declare function buildTileUrl(params: {
|
|
55
|
+
panoId: string;
|
|
56
|
+
x?: number;
|
|
57
|
+
y?: number;
|
|
58
|
+
zoom?: number;
|
|
59
|
+
}): string;
|
|
60
|
+
//# sourceMappingURL=panorama-pb.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"panorama-pb.d.ts","sourceRoot":"","sources":["../../src/rpc/panorama-pb.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAkBH,0EAA0E;AAC1E,wBAAgB,uBAAuB,CAAC,MAAM,EAAE;IAC9C,GAAG,EAAE,MAAM,CAAC;IACZ,GAAG,EAAE,MAAM,CAAC;IACZ,YAAY,EAAE,MAAM,CAAC;CACtB,GAAG,MAAM,CAKT;AAED,qEAAqE;AACrE,wBAAgB,gBAAgB,CAAC,MAAM,EAAE;IACvC,MAAM,EAAE,MAAM,CAAC;IACf,EAAE,CAAC,EAAE,MAAM,CAAC;IACZ,EAAE,CAAC,EAAE,MAAM,CAAC;CACb,GAAG,MAAM,CAKT;AAED,0EAA0E;AAC1E,wBAAgB,mBAAmB,CAAC,MAAM,EAAE;IAC1C,KAAK,EAAE,MAAM,CAAC;IACd,KAAK,EAAE,MAAM,CAAC;CACf,GAAG,MAAM,CAET;AAED,2CAA2C;AAC3C,wBAAgB,wBAAwB,CAAC,MAAM,EAAE;IAC/C,GAAG,EAAE,MAAM,CAAC;IACZ,GAAG,EAAE,MAAM,CAAC;IACZ,YAAY,EAAE,MAAM,CAAC;IACrB,EAAE,EAAE,MAAM,CAAC;IACX,EAAE,EAAE,MAAM,CAAC;CACZ,GAAG,MAAM,CAOT;AAED,sCAAsC;AACtC,wBAAgB,iBAAiB,CAAC,MAAM,EAAE;IACxC,MAAM,EAAE,MAAM,CAAC;IACf,EAAE,EAAE,MAAM,CAAC;IACX,EAAE,EAAE,MAAM,CAAC;CACZ,GAAG,MAAM,CAOT;AAED,6CAA6C;AAC7C,wBAAgB,oBAAoB,CAAC,MAAM,EAAE;IAC3C,KAAK,EAAE,MAAM,CAAC;IACd,KAAK,EAAE,MAAM,CAAC;IACd,EAAE,EAAE,MAAM,CAAC;IACX,EAAE,EAAE,MAAM,CAAC;CACZ,GAAG,MAAM,CAOT;AAED,mEAAmE;AACnE,wBAAgB,iBAAiB,CAAC,MAAM,EAAE;IACxC,MAAM,EAAE,MAAM,CAAC;IACf,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,GAAG,CAAC,EAAE,MAAM,CAAC;CACd,GAAG,MAAM,CAUT;AAED,2EAA2E;AAC3E,wBAAgB,YAAY,CAAC,MAAM,EAAE;IACnC,MAAM,EAAE,MAAM,CAAC;IACf,CAAC,CAAC,EAAE,MAAM,CAAC;IACX,CAAC,CAAC,EAAE,MAAM,CAAC;IACX,IAAI,CAAC,EAAE,MAAM,CAAC;CACf,GAAG,MAAM,CAQT"}
|
|
@@ -0,0 +1,71 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Protobuf URL builders for Google Maps Street View / panorama endpoints.
|
|
3
|
+
*
|
|
4
|
+
* Verified against live probes — all four photometa pb blocks are required;
|
|
5
|
+
* omitting any block returns HTTP 400.
|
|
6
|
+
*/
|
|
7
|
+
const PHOTOMETA_SUFFIX_457 = '!4m57!1e1!1e2!1e3!1e4!1e5!1e6!1e8!1e12!2m1!1e1!4m1!1i48!5m1!1e1!5m1!1e2!6m1!1e1!6m1!1e2';
|
|
8
|
+
const PHOTOMETA_SUFFIX_936 = '!9m36!1m3!1e2!2b1!3e2!1m3!1e2!2b0!3e3!1m3!1e3!2b1!3e2!1m3!1e3!2b0!3e3!1m3!1e8!2b0!3e3!1m3!1e1!2b0!3e3!1m3!1e4!2b0!3e3!1m3!1e10!2b1!3e2!1m3!1e10!2b0!3e3';
|
|
9
|
+
const LIST_ENTITY_PHOTOS_SUFFIX = '!1e3!5m46!2m2!1i203!2i100!3m2!2i40!5b1!7m33!1m3!1e1!2b0!3e3!1m3!1e2!2b1!3e2!1m3!1e2!2b0!3e3!1m3!1e8!2b0!3e3!1m3!1e10!2b0!3e3!1m3!1e10!2b1!3e2!1m3!1e10!2b0!3e4!1m3!1e9!2b1!3e2!2b1!8m2!1m1!1e2!9b0!11m1!4b1';
|
|
10
|
+
const IMAGERY_BASE = 'https://streetviewpixels-pa.googleapis.com/v1';
|
|
11
|
+
const IMAGERY_CLIENT = 'maps_sv.tactile';
|
|
12
|
+
/** Build locale segment embedded in photometa ctx (`!2m2!1s{hl}!2s{gl}`). */
|
|
13
|
+
function buildPhotometaLocale(hl, gl) {
|
|
14
|
+
return `!1m4!1smaps_sv.tactile!11m2!2m1!1b1!2m2!1s${hl}!2s${gl}`;
|
|
15
|
+
}
|
|
16
|
+
/** Pb for `/maps/rpc/photo/listentityphotos` — panoramas near a point. */
|
|
17
|
+
export function buildListEntityPhotosPb(params) {
|
|
18
|
+
return (LIST_ENTITY_PHOTOS_SUFFIX +
|
|
19
|
+
`!9m2!2d${params.lng}!3d${params.lat}!10d${params.radiusMeters}`);
|
|
20
|
+
}
|
|
21
|
+
/** Pb for `/maps/photometa/v1` — full metadata for a panorama id. */
|
|
22
|
+
export function buildPhotometaPb(params) {
|
|
23
|
+
const hl = params.hl ?? 'en';
|
|
24
|
+
const gl = params.gl ?? 'us';
|
|
25
|
+
const ctx = buildPhotometaLocale(hl, gl);
|
|
26
|
+
return `${ctx}!3m3!1m2!1e2!2s${params.panoId}${PHOTOMETA_SUFFIX_457}${PHOTOMETA_SUFFIX_936}`;
|
|
27
|
+
}
|
|
28
|
+
/** Pb for `/maps/photometa/ac/v1` — coverage tile at Web Mercator z17. */
|
|
29
|
+
export function buildCoverageTilePb(params) {
|
|
30
|
+
return `!1m1!1smaps_sv.tactile!6m3!1i${params.tileX}!2i${params.tileY}!3i17!8b1`;
|
|
31
|
+
}
|
|
32
|
+
/** Full URL for nearby panorama search. */
|
|
33
|
+
export function buildListEntityPhotosUrl(params) {
|
|
34
|
+
const pb = buildListEntityPhotosPb(params);
|
|
35
|
+
return (`https://www.google.com/maps/rpc/photo/listentityphotos` +
|
|
36
|
+
`?authuser=0&hl=${params.hl}&gl=${params.gl}` +
|
|
37
|
+
`&pb=${encodeURIComponent(pb)}`);
|
|
38
|
+
}
|
|
39
|
+
/** Full URL for panorama metadata. */
|
|
40
|
+
export function buildPhotometaUrl(params) {
|
|
41
|
+
const pb = buildPhotometaPb({ panoId: params.panoId, hl: params.hl, gl: params.gl });
|
|
42
|
+
return (`https://www.google.com/maps/photometa/v1` +
|
|
43
|
+
`?authuser=0&hl=${params.hl}&gl=${params.gl}` +
|
|
44
|
+
`&pb=${encodeURIComponent(pb)}`);
|
|
45
|
+
}
|
|
46
|
+
/** Full URL for z17 coverage tile lookup. */
|
|
47
|
+
export function buildCoverageTileUrl(params) {
|
|
48
|
+
const pb = buildCoverageTilePb(params);
|
|
49
|
+
return (`https://www.google.com/maps/photometa/ac/v1` +
|
|
50
|
+
`?authuser=0&hl=${params.hl}&gl=${params.gl}` +
|
|
51
|
+
`&pb=${encodeURIComponent(pb)}`);
|
|
52
|
+
}
|
|
53
|
+
/** Street View thumbnail URL — returns JPEG bytes without auth. */
|
|
54
|
+
export function buildThumbnailUrl(params) {
|
|
55
|
+
const w = params.width ?? 640;
|
|
56
|
+
const h = params.height ?? 480;
|
|
57
|
+
const pitch = params.pitch ?? 0;
|
|
58
|
+
const yaw = params.yaw ?? 0;
|
|
59
|
+
return (`${IMAGERY_BASE}/thumbnail` +
|
|
60
|
+
`?w=${w}&h=${h}&pitch=${pitch}&panoid=${params.panoId}&yaw=${yaw}` +
|
|
61
|
+
`&cb_client=${IMAGERY_CLIENT}`);
|
|
62
|
+
}
|
|
63
|
+
/** Street View tile URL — zoom 0..5, x/y are tile indices at that zoom. */
|
|
64
|
+
export function buildTileUrl(params) {
|
|
65
|
+
const x = params.x ?? 0;
|
|
66
|
+
const y = params.y ?? 0;
|
|
67
|
+
const zoom = params.zoom ?? 0;
|
|
68
|
+
return (`${IMAGERY_BASE}/tile` +
|
|
69
|
+
`?cb_client=${IMAGERY_CLIENT}&panoid=${params.panoId}&x=${x}&y=${y}&zoom=${zoom}`);
|
|
70
|
+
}
|
|
71
|
+
//# sourceMappingURL=panorama-pb.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"panorama-pb.js","sourceRoot":"","sources":["../../src/rpc/panorama-pb.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
export interface PassiveAssistPbParams {
|
|
2
|
+
lat: number;
|
|
3
|
+
lng: number;
|
|
4
|
+
zoom?: number;
|
|
5
|
+
psi: string;
|
|
6
|
+
width?: number;
|
|
7
|
+
height?: number;
|
|
8
|
+
chipLimit?: number;
|
|
9
|
+
}
|
|
10
|
+
/**
|
|
11
|
+
* Browser-captured pb shape (2026-07-31 headless live-flows + probe-target-surfaces).
|
|
12
|
+
*
|
|
13
|
+
* Uses the shorter `!1m10!2m9` camera block — the legacy `!1m16!2m15` builder
|
|
14
|
+
* with `!6m2!1f0!2f0` returns the cache-metadata stub for the same psi.
|
|
15
|
+
*/
|
|
16
|
+
export declare function buildPassiveAssistPb(params: PassiveAssistPbParams): string;
|
|
17
|
+
export declare function buildPassiveAssistUrl(params: PassiveAssistPbParams & {
|
|
18
|
+
hl: string;
|
|
19
|
+
gl: string;
|
|
20
|
+
}): string;
|
|
21
|
+
//# sourceMappingURL=passiveassist-pb.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"passiveassist-pb.d.ts","sourceRoot":"","sources":["../../src/rpc/passiveassist-pb.ts"],"names":[],"mappings":"AAGA,MAAM,WAAW,qBAAqB;IACpC,GAAG,EAAE,MAAM,CAAC;IACZ,GAAG,EAAE,MAAM,CAAC;IACZ,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,GAAG,EAAE,MAAM,CAAC;IACZ,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB;AAED;;;;;GAKG;AACH,wBAAgB,oBAAoB,CAAC,MAAM,EAAE,qBAAqB,GAAG,MAAM,CAY1E;AAED,wBAAgB,qBAAqB,CAAC,MAAM,EAAE,qBAAqB,GAAG;IAAE,EAAE,EAAE,MAAM,CAAC;IAAC,EAAE,EAAE,MAAM,CAAA;CAAE,GAAG,MAAM,CAGxG"}
|
|
@@ -0,0 +1,24 @@
|
|
|
1
|
+
import { altitudeFromZoom } from '../utils/geo.js';
|
|
2
|
+
import { PREVIEW } from './rpc-methods.js';
|
|
3
|
+
/**
|
|
4
|
+
* Browser-captured pb shape (2026-07-31 headless live-flows + probe-target-surfaces).
|
|
5
|
+
*
|
|
6
|
+
* Uses the shorter `!1m10!2m9` camera block — the legacy `!1m16!2m15` builder
|
|
7
|
+
* with `!6m2!1f0!2f0` returns the cache-metadata stub for the same psi.
|
|
8
|
+
*/
|
|
9
|
+
export function buildPassiveAssistPb(params) {
|
|
10
|
+
const zoom = params.zoom ?? 14;
|
|
11
|
+
const alt = altitudeFromZoom(zoom, params.lat);
|
|
12
|
+
const w = params.width ?? 1440;
|
|
13
|
+
const h = params.height ?? 900;
|
|
14
|
+
const limit = params.chipLimit ?? 50;
|
|
15
|
+
return (`!1m10!2m9!1m3!1d${alt}!2d${params.lng}!3d${params.lat}` +
|
|
16
|
+
`!2m0!3m2!1i${w}!2i${h}!4f13.1` +
|
|
17
|
+
`!3m3!1s${params.psi}!7e81!15i312935!7m1!58b1` +
|
|
18
|
+
`!35m6!1i${limit}!3m3!3b1!26b1!29b1!44e11`);
|
|
19
|
+
}
|
|
20
|
+
export function buildPassiveAssistUrl(params) {
|
|
21
|
+
const pb = buildPassiveAssistPb(params);
|
|
22
|
+
return `https://www.google.com${PREVIEW.PASSIVE_ASSIST}?authuser=0&hl=${params.hl}&gl=${params.gl}&pb=${encodeURIComponent(pb)}`;
|
|
23
|
+
}
|
|
24
|
+
//# sourceMappingURL=passiveassist-pb.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"passiveassist-pb.js","sourceRoot":"","sources":["../../src/rpc/passiveassist-pb.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,gBAAgB,EAAE,MAAM,iBAAiB,CAAC;AACnD,OAAO,EAAE,OAAO,EAAE,MAAM,kBAAkB,CAAC;AAY3C;;;;;GAKG;AACH,MAAM,UAAU,oBAAoB,CAAC,MAA6B;IAChE,MAAM,IAAI,GAAG,MAAM,CAAC,IAAI,IAAI,EAAE,CAAC;IAC/B,MAAM,GAAG,GAAG,gBAAgB,CAAC,IAAI,EAAE,MAAM,CAAC,GAAG,CAAC,CAAC;IAC/C,MAAM,CAAC,GAAG,MAAM,CAAC,KAAK,IAAI,IAAI,CAAC;IAC/B,MAAM,CAAC,GAAG,MAAM,CAAC,MAAM,IAAI,GAAG,CAAC;IAC/B,MAAM,KAAK,GAAG,MAAM,CAAC,SAAS,IAAI,EAAE,CAAC;IACrC,OAAO,CACL,mBAAmB,GAAG,MAAM,MAAM,CAAC,GAAG,MAAM,MAAM,CAAC,GAAG,EAAE;QACxD,cAAc,CAAC,MAAM,CAAC,SAAS;QAC/B,UAAU,MAAM,CAAC,GAAG,0BAA0B;QAC9C,WAAW,KAAK,0BAA0B,CAC3C,CAAC;AACJ,CAAC;AAED,MAAM,UAAU,qBAAqB,CAAC,MAA0D;IAC9F,MAAM,EAAE,GAAG,oBAAoB,CAAC,MAAM,CAAC,CAAC;IACxC,OAAO,yBAAyB,OAAO,CAAC,cAAc,kBAAkB,MAAM,CAAC,EAAE,OAAO,MAAM,CAAC,EAAE,OAAO,kBAAkB,CAAC,EAAE,CAAC,EAAE,CAAC;AACnI,CAAC"}
|