googlemaps-kit 0.4.0 → 0.6.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.
Files changed (661) hide show
  1. package/README.md +228 -27
  2. package/dist/advanced/http.d.ts +4 -4
  3. package/dist/advanced/http.d.ts.map +1 -1
  4. package/dist/advanced/http.js +4 -4
  5. package/dist/advanced/http.js.map +1 -1
  6. package/dist/advanced/parsers.d.ts +9 -4
  7. package/dist/advanced/parsers.d.ts.map +1 -1
  8. package/dist/advanced/parsers.js +6 -3
  9. package/dist/advanced/parsers.js.map +1 -1
  10. package/dist/advanced/rpc.d.ts +12 -12
  11. package/dist/advanced/rpc.d.ts.map +1 -1
  12. package/dist/advanced/rpc.js +10 -10
  13. package/dist/advanced/rpc.js.map +1 -1
  14. package/dist/advanced/services.d.ts +18 -7
  15. package/dist/advanced/services.d.ts.map +1 -1
  16. package/dist/advanced/services.js +18 -7
  17. package/dist/advanced/services.js.map +1 -1
  18. package/dist/advanced/utils.d.ts +3 -3
  19. package/dist/advanced/utils.d.ts.map +1 -1
  20. package/dist/advanced/utils.js +3 -3
  21. package/dist/advanced/utils.js.map +1 -1
  22. package/dist/advanced.d.ts +47 -10
  23. package/dist/advanced.d.ts.map +1 -1
  24. package/dist/advanced.js +13 -6
  25. package/dist/advanced.js.map +1 -1
  26. package/dist/auth/auth-status.js +2 -2
  27. package/dist/auth/auth-status.js.map +1 -1
  28. package/dist/auth/maps-tokens.js +1 -1
  29. package/dist/auth/session.d.ts.map +1 -1
  30. package/dist/auth/session.js +17 -2
  31. package/dist/auth/session.js.map +1 -1
  32. package/dist/cli/args.d.ts +1 -0
  33. package/dist/cli/args.d.ts.map +1 -1
  34. package/dist/cli/args.js +24 -0
  35. package/dist/cli/args.js.map +1 -1
  36. package/dist/cli/format.d.ts.map +1 -1
  37. package/dist/cli/format.js +18 -27
  38. package/dist/cli/format.js.map +1 -1
  39. package/dist/cli/output.d.ts +19 -0
  40. package/dist/cli/output.d.ts.map +1 -0
  41. package/dist/cli/output.js +82 -0
  42. package/dist/cli/output.js.map +1 -0
  43. package/dist/cli/run.d.ts +55 -3
  44. package/dist/cli/run.d.ts.map +1 -1
  45. package/dist/cli/run.js +239 -18
  46. package/dist/cli/run.js.map +1 -1
  47. package/dist/cli/tui/app.d.ts +7 -2
  48. package/dist/cli/tui/app.d.ts.map +1 -1
  49. package/dist/cli/tui/app.js +116 -31
  50. package/dist/cli/tui/app.js.map +1 -1
  51. package/dist/cli/tui/styles.d.ts.map +1 -1
  52. package/dist/cli/tui/styles.js +13 -10
  53. package/dist/cli/tui/styles.js.map +1 -1
  54. package/dist/cli.d.ts +1 -10
  55. package/dist/cli.d.ts.map +1 -1
  56. package/dist/cli.js +122 -36
  57. package/dist/cli.js.map +1 -1
  58. package/dist/client/gmaps-client.d.ts +14 -31
  59. package/dist/client/gmaps-client.d.ts.map +1 -1
  60. package/dist/client/gmaps-client.js +52 -130
  61. package/dist/client/gmaps-client.js.map +1 -1
  62. package/dist/client/http-client.d.ts.map +1 -1
  63. package/dist/client/http-client.js +11 -9
  64. package/dist/client/http-client.js.map +1 -1
  65. package/dist/client/intent.d.ts +2 -12
  66. package/dist/client/intent.d.ts.map +1 -1
  67. package/dist/client/intent.js +39 -18
  68. package/dist/client/intent.js.map +1 -1
  69. package/dist/client/maps-tools.d.ts +19 -3
  70. package/dist/client/maps-tools.d.ts.map +1 -1
  71. package/dist/client/maps-tools.js +57 -4
  72. package/dist/client/maps-tools.js.map +1 -1
  73. package/dist/client/namespaces.d.ts +125 -16
  74. package/dist/client/namespaces.d.ts.map +1 -1
  75. package/dist/client/namespaces.js +189 -23
  76. package/dist/client/namespaces.js.map +1 -1
  77. package/dist/client/place-enrichment.js +1 -1
  78. package/dist/client/place-enrichment.js.map +1 -1
  79. package/dist/client/place-workflows.d.ts +7 -0
  80. package/dist/client/place-workflows.d.ts.map +1 -0
  81. package/dist/client/place-workflows.js +113 -0
  82. package/dist/client/place-workflows.js.map +1 -0
  83. package/dist/index.d.ts +54 -19
  84. package/dist/index.d.ts.map +1 -1
  85. package/dist/index.js +8 -4
  86. package/dist/index.js.map +1 -1
  87. package/dist/known-surfaces.d.ts +173 -5
  88. package/dist/known-surfaces.d.ts.map +1 -1
  89. package/dist/known-surfaces.js +173 -5
  90. package/dist/known-surfaces.js.map +1 -1
  91. package/dist/parsers/batch-url.d.ts +10 -1
  92. package/dist/parsers/batch-url.d.ts.map +1 -1
  93. package/dist/parsers/batch-url.js +30 -2
  94. package/dist/parsers/batch-url.js.map +1 -1
  95. package/dist/parsers/boq-reviews.d.ts +8 -1
  96. package/dist/parsers/boq-reviews.d.ts.map +1 -1
  97. package/dist/parsers/boq-reviews.js +50 -8
  98. package/dist/parsers/boq-reviews.js.map +1 -1
  99. package/dist/parsers/categories.d.ts.map +1 -1
  100. package/dist/parsers/categories.js +13 -10
  101. package/dist/parsers/categories.js.map +1 -1
  102. package/dist/parsers/directions.d.ts +18 -2
  103. package/dist/parsers/directions.d.ts.map +1 -1
  104. package/dist/parsers/directions.js +232 -18
  105. package/dist/parsers/directions.js.map +1 -1
  106. package/dist/parsers/geocode.d.ts +20 -2
  107. package/dist/parsers/geocode.d.ts.map +1 -1
  108. package/dist/parsers/geocode.js +139 -6
  109. package/dist/parsers/geocode.js.map +1 -1
  110. package/dist/parsers/knowledge.js +1 -1
  111. package/dist/parsers/knowledge.js.map +1 -1
  112. package/dist/parsers/lists.d.ts.map +1 -1
  113. package/dist/parsers/lists.js +29 -12
  114. package/dist/parsers/lists.js.map +1 -1
  115. package/dist/parsers/local-posts.d.ts.map +1 -1
  116. package/dist/parsers/local-posts.js +97 -12
  117. package/dist/parsers/local-posts.js.map +1 -1
  118. package/dist/parsers/mobility.d.ts +42 -0
  119. package/dist/parsers/mobility.d.ts.map +1 -0
  120. package/dist/parsers/mobility.js +130 -0
  121. package/dist/parsers/mobility.js.map +1 -0
  122. package/dist/parsers/panorama.d.ts +0 -1
  123. package/dist/parsers/panorama.d.ts.map +1 -1
  124. package/dist/parsers/panorama.js +117 -14
  125. package/dist/parsers/panorama.js.map +1 -1
  126. package/dist/parsers/photos.d.ts.map +1 -1
  127. package/dist/parsers/photos.js +15 -8
  128. package/dist/parsers/photos.js.map +1 -1
  129. package/dist/parsers/place-attributes.d.ts +12 -3
  130. package/dist/parsers/place-attributes.d.ts.map +1 -1
  131. package/dist/parsers/place-attributes.js +48 -2
  132. package/dist/parsers/place-attributes.js.map +1 -1
  133. package/dist/parsers/place-extended.d.ts +163 -0
  134. package/dist/parsers/place-extended.d.ts.map +1 -0
  135. package/dist/parsers/place-extended.js +741 -0
  136. package/dist/parsers/place-extended.js.map +1 -0
  137. package/dist/parsers/place.d.ts +15 -1
  138. package/dist/parsers/place.d.ts.map +1 -1
  139. package/dist/parsers/place.js +16 -5
  140. package/dist/parsers/place.js.map +1 -1
  141. package/dist/parsers/popular-times.d.ts +35 -0
  142. package/dist/parsers/popular-times.d.ts.map +1 -0
  143. package/dist/parsers/popular-times.js +149 -0
  144. package/dist/parsers/popular-times.js.map +1 -0
  145. package/dist/parsers/reveal.d.ts +1 -1
  146. package/dist/parsers/reveal.d.ts.map +1 -1
  147. package/dist/parsers/reveal.js +3 -2
  148. package/dist/parsers/reveal.js.map +1 -1
  149. package/dist/parsers/reviews.d.ts +24 -2
  150. package/dist/parsers/reviews.d.ts.map +1 -1
  151. package/dist/parsers/reviews.js +110 -1
  152. package/dist/parsers/reviews.js.map +1 -1
  153. package/dist/parsers/search.d.ts +17 -2
  154. package/dist/parsers/search.d.ts.map +1 -1
  155. package/dist/parsers/search.js +125 -7
  156. package/dist/parsers/search.js.map +1 -1
  157. package/dist/parsers/shared.d.ts +4 -0
  158. package/dist/parsers/shared.d.ts.map +1 -1
  159. package/dist/parsers/shared.js +10 -2
  160. package/dist/parsers/shared.js.map +1 -1
  161. package/dist/parsers/suggest.d.ts.map +1 -1
  162. package/dist/parsers/suggest.js +45 -6
  163. package/dist/parsers/suggest.js.map +1 -1
  164. package/dist/parsers/tiles.d.ts +13 -0
  165. package/dist/parsers/tiles.d.ts.map +1 -1
  166. package/dist/parsers/tiles.js +64 -0
  167. package/dist/parsers/tiles.js.map +1 -1
  168. package/dist/parsers/traffic.d.ts +9 -1
  169. package/dist/parsers/traffic.d.ts.map +1 -1
  170. package/dist/parsers/traffic.js +129 -2
  171. package/dist/parsers/traffic.js.map +1 -1
  172. package/dist/parsers/transit.d.ts +4 -2
  173. package/dist/parsers/transit.d.ts.map +1 -1
  174. package/dist/parsers/transit.js +385 -3
  175. package/dist/parsers/transit.js.map +1 -1
  176. package/dist/parsers/viewport.d.ts +20 -0
  177. package/dist/parsers/viewport.d.ts.map +1 -0
  178. package/dist/parsers/viewport.js +139 -0
  179. package/dist/parsers/viewport.js.map +1 -0
  180. package/dist/platform/catalog.d.ts +18 -0
  181. package/dist/platform/catalog.d.ts.map +1 -0
  182. package/dist/platform/catalog.js +329 -0
  183. package/dist/platform/catalog.js.map +1 -0
  184. package/dist/platform/parity.d.ts +12 -0
  185. package/dist/platform/parity.d.ts.map +1 -0
  186. package/dist/platform/parity.js +25 -0
  187. package/dist/platform/parity.js.map +1 -0
  188. package/dist/rpc/batch-execute.js +3 -3
  189. package/dist/rpc/batch-execute.js.map +1 -1
  190. package/dist/rpc/batch-request-builders.d.ts +12 -14
  191. package/dist/rpc/batch-request-builders.d.ts.map +1 -1
  192. package/dist/rpc/batch-request-builders.js +49 -17
  193. package/dist/rpc/batch-request-builders.js.map +1 -1
  194. package/dist/rpc/batch-rpc.js +1 -1
  195. package/dist/rpc/batch-services.d.ts +2 -0
  196. package/dist/rpc/batch-services.d.ts.map +1 -1
  197. package/dist/rpc/batch-services.js +4 -0
  198. package/dist/rpc/batch-services.js.map +1 -1
  199. package/dist/rpc/{descriptor-registry.d.ts → descriptors.d.ts} +29 -4
  200. package/dist/rpc/descriptors.d.ts.map +1 -0
  201. package/dist/rpc/{app-options.js → descriptors.js} +89 -5
  202. package/dist/rpc/descriptors.js.map +1 -0
  203. package/dist/rpc/earth-rocktree.d.ts +174 -0
  204. package/dist/rpc/earth-rocktree.d.ts.map +1 -0
  205. package/dist/rpc/earth-rocktree.js +468 -0
  206. package/dist/rpc/earth-rocktree.js.map +1 -0
  207. package/dist/rpc/feature-pb.d.ts +86 -0
  208. package/dist/rpc/feature-pb.d.ts.map +1 -0
  209. package/dist/rpc/feature-pb.js +112 -0
  210. package/dist/rpc/feature-pb.js.map +1 -0
  211. package/dist/rpc/feature-rpc.d.ts +15 -0
  212. package/dist/rpc/feature-rpc.d.ts.map +1 -1
  213. package/dist/rpc/feature-rpc.js +44 -0
  214. package/dist/rpc/feature-rpc.js.map +1 -1
  215. package/dist/rpc/maps-runtime.js +1 -1
  216. package/dist/rpc/panorama-pb.d.ts +3 -0
  217. package/dist/rpc/panorama-pb.d.ts.map +1 -1
  218. package/dist/rpc/panorama-pb.js +35 -3
  219. package/dist/rpc/panorama-pb.js.map +1 -1
  220. package/dist/rpc/pb-builders.d.ts +21 -1
  221. package/dist/rpc/pb-builders.d.ts.map +1 -1
  222. package/dist/rpc/pb-builders.js +62 -4
  223. package/dist/rpc/pb-builders.js.map +1 -1
  224. package/dist/rpc/photos-pb.d.ts +28 -1
  225. package/dist/rpc/photos-pb.d.ts.map +1 -1
  226. package/dist/rpc/photos-pb.js +96 -0
  227. package/dist/rpc/photos-pb.js.map +1 -1
  228. package/dist/rpc/rpc-methods.d.ts +0 -2
  229. package/dist/rpc/rpc-methods.d.ts.map +1 -1
  230. package/dist/rpc/rpc-methods.js +0 -38
  231. package/dist/rpc/rpc-methods.js.map +1 -1
  232. package/dist/rpc/search-filters.d.ts +0 -12
  233. package/dist/rpc/search-filters.d.ts.map +1 -1
  234. package/dist/rpc/search-filters.js +1 -11
  235. package/dist/rpc/search-filters.js.map +1 -1
  236. package/dist/rpc/tile-builders.d.ts +136 -0
  237. package/dist/rpc/tile-builders.d.ts.map +1 -0
  238. package/dist/rpc/tile-builders.js +172 -0
  239. package/dist/rpc/tile-builders.js.map +1 -0
  240. package/dist/rpc/xsrf-bootstrap.d.ts +0 -2
  241. package/dist/rpc/xsrf-bootstrap.d.ts.map +1 -1
  242. package/dist/rpc/xsrf-bootstrap.js +2 -2
  243. package/dist/rpc/xsrf-bootstrap.js.map +1 -1
  244. package/dist/services/aerial-view.d.ts +22 -0
  245. package/dist/services/aerial-view.d.ts.map +1 -0
  246. package/dist/services/aerial-view.js +107 -0
  247. package/dist/services/aerial-view.js.map +1 -0
  248. package/dist/services/ask-maps.d.ts +45 -5
  249. package/dist/services/ask-maps.d.ts.map +1 -1
  250. package/dist/services/ask-maps.js +148 -21
  251. package/dist/services/ask-maps.js.map +1 -1
  252. package/dist/services/directions.d.ts +17 -1
  253. package/dist/services/directions.d.ts.map +1 -1
  254. package/dist/services/directions.js +32 -0
  255. package/dist/services/directions.js.map +1 -1
  256. package/dist/services/distance-matrix.d.ts +1 -1
  257. package/dist/services/distance-matrix.d.ts.map +1 -1
  258. package/dist/services/distance-matrix.js +1 -1
  259. package/dist/services/distance-matrix.js.map +1 -1
  260. package/dist/services/elevation.d.ts +7 -5
  261. package/dist/services/elevation.d.ts.map +1 -1
  262. package/dist/services/elevation.js +42 -6
  263. package/dist/services/elevation.js.map +1 -1
  264. package/dist/services/environment/air-quality.d.ts +39 -0
  265. package/dist/services/environment/air-quality.d.ts.map +1 -0
  266. package/dist/services/environment/air-quality.js +86 -0
  267. package/dist/services/environment/air-quality.js.map +1 -0
  268. package/dist/services/environment/weather.d.ts +39 -0
  269. package/dist/services/environment/weather.d.ts.map +1 -0
  270. package/dist/services/environment/weather.js +54 -0
  271. package/dist/services/environment/weather.js.map +1 -0
  272. package/dist/services/geocode.d.ts +21 -1
  273. package/dist/services/geocode.d.ts.map +1 -1
  274. package/dist/services/geocode.js +103 -0
  275. package/dist/services/geocode.js.map +1 -1
  276. package/dist/services/keyed.d.ts +80 -0
  277. package/dist/services/keyed.d.ts.map +1 -0
  278. package/dist/services/keyed.js +152 -0
  279. package/dist/services/keyed.js.map +1 -0
  280. package/dist/services/knowledge.d.ts +6 -2
  281. package/dist/services/knowledge.d.ts.map +1 -1
  282. package/dist/services/knowledge.js +30 -5
  283. package/dist/services/knowledge.js.map +1 -1
  284. package/dist/services/lists.d.ts +7 -1
  285. package/dist/services/lists.d.ts.map +1 -1
  286. package/dist/services/lists.js +45 -1
  287. package/dist/services/lists.js.map +1 -1
  288. package/dist/services/map-3d.d.ts +66 -0
  289. package/dist/services/map-3d.d.ts.map +1 -0
  290. package/dist/services/map-3d.js +658 -0
  291. package/dist/services/map-3d.js.map +1 -0
  292. package/dist/services/map-layers.d.ts +33 -0
  293. package/dist/services/map-layers.d.ts.map +1 -0
  294. package/dist/services/map-layers.js +207 -0
  295. package/dist/services/map-layers.js.map +1 -0
  296. package/dist/services/meta.d.ts +71 -0
  297. package/dist/services/meta.d.ts.map +1 -0
  298. package/dist/services/meta.js +132 -0
  299. package/dist/services/meta.js.map +1 -0
  300. package/dist/services/mobility.d.ts +79 -0
  301. package/dist/services/mobility.d.ts.map +1 -0
  302. package/dist/services/mobility.js +307 -0
  303. package/dist/services/mobility.js.map +1 -0
  304. package/dist/services/nearby-search.d.ts +32 -0
  305. package/dist/services/nearby-search.d.ts.map +1 -0
  306. package/dist/services/nearby-search.js +85 -0
  307. package/dist/services/nearby-search.js.map +1 -0
  308. package/dist/services/panorama.d.ts +19 -1
  309. package/dist/services/panorama.d.ts.map +1 -1
  310. package/dist/services/panorama.js +111 -3
  311. package/dist/services/panorama.js.map +1 -1
  312. package/dist/services/photos.d.ts.map +1 -1
  313. package/dist/services/photos.js +12 -6
  314. package/dist/services/photos.js.map +1 -1
  315. package/dist/services/place-attributes.d.ts +31 -0
  316. package/dist/services/place-attributes.d.ts.map +1 -0
  317. package/dist/services/place-attributes.js +48 -0
  318. package/dist/services/place-attributes.js.map +1 -0
  319. package/dist/services/places.d.ts +13 -0
  320. package/dist/services/places.d.ts.map +1 -1
  321. package/dist/services/places.js +7 -4
  322. package/dist/services/places.js.map +1 -1
  323. package/dist/services/reviews.d.ts +11 -1
  324. package/dist/services/reviews.d.ts.map +1 -1
  325. package/dist/services/reviews.js +36 -12
  326. package/dist/services/reviews.js.map +1 -1
  327. package/dist/services/search-along-route.d.ts +33 -0
  328. package/dist/services/search-along-route.d.ts.map +1 -0
  329. package/dist/services/search-along-route.js +200 -0
  330. package/dist/services/search-along-route.js.map +1 -0
  331. package/dist/services/search.d.ts +29 -2
  332. package/dist/services/search.d.ts.map +1 -1
  333. package/dist/services/search.js +169 -6
  334. package/dist/services/search.js.map +1 -1
  335. package/dist/services/static-map.js +1 -1
  336. package/dist/services/static-map.js.map +1 -1
  337. package/dist/services/tiles.d.ts +39 -2
  338. package/dist/services/tiles.d.ts.map +1 -1
  339. package/dist/services/tiles.js +172 -13
  340. package/dist/services/tiles.js.map +1 -1
  341. package/dist/services/traffic.d.ts +12 -1
  342. package/dist/services/traffic.d.ts.map +1 -1
  343. package/dist/services/traffic.js +25 -2
  344. package/dist/services/traffic.js.map +1 -1
  345. package/dist/services/transit.d.ts +20 -3
  346. package/dist/services/transit.d.ts.map +1 -1
  347. package/dist/services/transit.js +69 -1
  348. package/dist/services/transit.js.map +1 -1
  349. package/dist/services/viewport.d.ts +76 -0
  350. package/dist/services/viewport.d.ts.map +1 -0
  351. package/dist/services/viewport.js +180 -0
  352. package/dist/services/viewport.js.map +1 -0
  353. package/dist/services/waypoint-optimizer.d.ts +31 -0
  354. package/dist/services/waypoint-optimizer.d.ts.map +1 -0
  355. package/dist/services/waypoint-optimizer.js +235 -0
  356. package/dist/services/waypoint-optimizer.js.map +1 -0
  357. package/dist/types/aerial-view.d.ts +39 -0
  358. package/dist/types/aerial-view.d.ts.map +1 -0
  359. package/dist/types/aerial-view.js +2 -0
  360. package/dist/types/aerial-view.js.map +1 -0
  361. package/dist/types/batch-url.d.ts +31 -0
  362. package/dist/types/batch-url.d.ts.map +1 -1
  363. package/dist/types/categories.d.ts +20 -4
  364. package/dist/types/categories.d.ts.map +1 -1
  365. package/dist/types/common.d.ts +192 -24
  366. package/dist/types/common.d.ts.map +1 -1
  367. package/dist/types/common.js +1 -1
  368. package/dist/types/common.js.map +1 -1
  369. package/dist/types/directions.d.ts +217 -3
  370. package/dist/types/directions.d.ts.map +1 -1
  371. package/dist/types/dx.d.ts +69 -11
  372. package/dist/types/dx.d.ts.map +1 -1
  373. package/dist/types/geocode.d.ts +61 -3
  374. package/dist/types/geocode.d.ts.map +1 -1
  375. package/dist/types/grid-search.d.ts +66 -0
  376. package/dist/types/grid-search.d.ts.map +1 -0
  377. package/dist/types/grid-search.js +2 -0
  378. package/dist/types/grid-search.js.map +1 -0
  379. package/dist/types/hooks.d.ts +3 -3
  380. package/dist/types/hooks.d.ts.map +1 -1
  381. package/dist/types/links.d.ts +3 -6
  382. package/dist/types/links.d.ts.map +1 -1
  383. package/dist/types/lists.d.ts +68 -3
  384. package/dist/types/lists.d.ts.map +1 -1
  385. package/dist/types/map-3d.d.ts +126 -0
  386. package/dist/types/map-3d.d.ts.map +1 -0
  387. package/dist/types/map-3d.js +2 -0
  388. package/dist/types/map-3d.js.map +1 -0
  389. package/dist/types/map-earth.d.ts +34 -0
  390. package/dist/types/map-earth.d.ts.map +1 -0
  391. package/dist/types/map-earth.js +2 -0
  392. package/dist/types/map-earth.js.map +1 -0
  393. package/dist/types/map-layers.d.ts +63 -0
  394. package/dist/types/map-layers.d.ts.map +1 -0
  395. package/dist/types/map-layers.js +2 -0
  396. package/dist/types/map-layers.js.map +1 -0
  397. package/dist/types/mobility.d.ts +121 -0
  398. package/dist/types/mobility.d.ts.map +1 -0
  399. package/dist/types/mobility.js +3 -0
  400. package/dist/types/mobility.js.map +1 -0
  401. package/dist/types/panorama.d.ts +123 -0
  402. package/dist/types/panorama.d.ts.map +1 -1
  403. package/dist/types/photos.d.ts +12 -0
  404. package/dist/types/photos.d.ts.map +1 -1
  405. package/dist/types/photos.js +2 -1
  406. package/dist/types/photos.js.map +1 -1
  407. package/dist/types/place-attributes.d.ts +15 -0
  408. package/dist/types/place-attributes.d.ts.map +1 -0
  409. package/dist/types/place-attributes.js +2 -0
  410. package/dist/types/place-attributes.js.map +1 -0
  411. package/dist/types/place-extended.d.ts +406 -0
  412. package/dist/types/place-extended.d.ts.map +1 -0
  413. package/dist/types/place-extended.js +18 -0
  414. package/dist/types/place-extended.js.map +1 -0
  415. package/dist/types/protobuf.d.ts +1 -1
  416. package/dist/types/protobuf.js +1 -1
  417. package/dist/types/reviews.d.ts +28 -1
  418. package/dist/types/reviews.d.ts.map +1 -1
  419. package/dist/types/reviews.js.map +1 -1
  420. package/dist/types/route-optimization.d.ts +56 -0
  421. package/dist/types/route-optimization.d.ts.map +1 -0
  422. package/dist/types/route-optimization.js +2 -0
  423. package/dist/types/route-optimization.js.map +1 -0
  424. package/dist/types/search-along-route.d.ts +49 -0
  425. package/dist/types/search-along-route.d.ts.map +1 -0
  426. package/dist/types/search-along-route.js +2 -0
  427. package/dist/types/search-along-route.js.map +1 -0
  428. package/dist/types/search-filters.d.ts +1 -1
  429. package/dist/types/search-filters.js +1 -1
  430. package/dist/types/suggest.d.ts +23 -2
  431. package/dist/types/suggest.d.ts.map +1 -1
  432. package/dist/types/tiles.d.ts +40 -0
  433. package/dist/types/tiles.d.ts.map +1 -1
  434. package/dist/types/traffic.d.ts +58 -1
  435. package/dist/types/traffic.d.ts.map +1 -1
  436. package/dist/types/transit.d.ts +160 -1
  437. package/dist/types/transit.d.ts.map +1 -1
  438. package/dist/types/transit.js +0 -1
  439. package/dist/types/transit.js.map +1 -1
  440. package/dist/types/viewport.d.ts +159 -0
  441. package/dist/types/viewport.d.ts.map +1 -0
  442. package/dist/types/viewport.js +3 -0
  443. package/dist/types/viewport.js.map +1 -0
  444. package/dist/utils/async.d.ts +44 -0
  445. package/dist/utils/async.d.ts.map +1 -0
  446. package/dist/utils/async.js +132 -0
  447. package/dist/utils/async.js.map +1 -0
  448. package/dist/utils/encoded-polyline.d.ts +43 -0
  449. package/dist/utils/encoded-polyline.d.ts.map +1 -1
  450. package/dist/utils/encoded-polyline.js +71 -0
  451. package/dist/utils/encoded-polyline.js.map +1 -1
  452. package/dist/utils/env.d.ts +6 -0
  453. package/dist/utils/env.d.ts.map +1 -0
  454. package/dist/utils/{load-env.js → env.js} +32 -7
  455. package/dist/utils/env.js.map +1 -0
  456. package/dist/utils/geo.d.ts +12 -0
  457. package/dist/utils/geo.d.ts.map +1 -1
  458. package/dist/utils/geo.js +20 -0
  459. package/dist/utils/geo.js.map +1 -1
  460. package/dist/utils/hooks.d.ts +2 -3
  461. package/dist/utils/hooks.d.ts.map +1 -1
  462. package/dist/utils/hooks.js +1 -1
  463. package/dist/utils/hooks.js.map +1 -1
  464. package/dist/utils/ids.d.ts +1 -0
  465. package/dist/utils/ids.d.ts.map +1 -1
  466. package/dist/utils/ids.js +10 -0
  467. package/dist/utils/ids.js.map +1 -1
  468. package/dist/utils/net.d.ts +46 -0
  469. package/dist/utils/net.d.ts.map +1 -0
  470. package/dist/utils/net.js +150 -0
  471. package/dist/utils/net.js.map +1 -0
  472. package/dist/utils/payload.d.ts +22 -0
  473. package/dist/utils/payload.d.ts.map +1 -0
  474. package/dist/utils/{chunked-decoder.js → payload.js} +80 -2
  475. package/dist/utils/payload.js.map +1 -0
  476. package/dist/utils/place-ref.d.ts +40 -3
  477. package/dist/utils/place-ref.d.ts.map +1 -1
  478. package/dist/utils/place-ref.js +94 -2
  479. package/dist/utils/place-ref.js.map +1 -1
  480. package/package.json +8 -5
  481. package/dist/client/product-namespaces.d.ts +0 -30
  482. package/dist/client/product-namespaces.d.ts.map +0 -1
  483. package/dist/client/product-namespaces.js +0 -47
  484. package/dist/client/product-namespaces.js.map +0 -1
  485. package/dist/parsers/elevation-directions.d.ts +0 -18
  486. package/dist/parsers/elevation-directions.d.ts.map +0 -1
  487. package/dist/parsers/elevation-directions.js +0 -102
  488. package/dist/parsers/elevation-directions.js.map +0 -1
  489. package/dist/parsers/passiveassist.d.ts +0 -10
  490. package/dist/parsers/passiveassist.d.ts.map +0 -1
  491. package/dist/parsers/passiveassist.js +0 -61
  492. package/dist/parsers/passiveassist.js.map +0 -1
  493. package/dist/parsers/review-aggregates.d.ts +0 -7
  494. package/dist/parsers/review-aggregates.d.ts.map +0 -1
  495. package/dist/parsers/review-aggregates.js +0 -18
  496. package/dist/parsers/review-aggregates.js.map +0 -1
  497. package/dist/parsers/review-client-filters.d.ts +0 -8
  498. package/dist/parsers/review-client-filters.d.ts.map +0 -1
  499. package/dist/parsers/review-client-filters.js +0 -28
  500. package/dist/parsers/review-client-filters.js.map +0 -1
  501. package/dist/parsers/search-client-filters.d.ts +0 -7
  502. package/dist/parsers/search-client-filters.d.ts.map +0 -1
  503. package/dist/parsers/search-client-filters.js +0 -44
  504. package/dist/parsers/search-client-filters.js.map +0 -1
  505. package/dist/parsers/search-pagination.d.ts +0 -12
  506. package/dist/parsers/search-pagination.d.ts.map +0 -1
  507. package/dist/parsers/search-pagination.js +0 -34
  508. package/dist/parsers/search-pagination.js.map +0 -1
  509. package/dist/parsers/timezone-geocode.d.ts +0 -20
  510. package/dist/parsers/timezone-geocode.d.ts.map +0 -1
  511. package/dist/parsers/timezone-geocode.js +0 -96
  512. package/dist/parsers/timezone-geocode.js.map +0 -1
  513. package/dist/parsers/ugc-aggregates.d.ts +0 -9
  514. package/dist/parsers/ugc-aggregates.d.ts.map +0 -1
  515. package/dist/parsers/ugc-aggregates.js +0 -23
  516. package/dist/parsers/ugc-aggregates.js.map +0 -1
  517. package/dist/rpc/app-options.d.ts +0 -25
  518. package/dist/rpc/app-options.d.ts.map +0 -1
  519. package/dist/rpc/app-options.js.map +0 -1
  520. package/dist/rpc/batchexecute-args.d.ts +0 -30
  521. package/dist/rpc/batchexecute-args.d.ts.map +0 -1
  522. package/dist/rpc/batchexecute-args.js +0 -35
  523. package/dist/rpc/batchexecute-args.js.map +0 -1
  524. package/dist/rpc/boq-reviews.d.ts +0 -16
  525. package/dist/rpc/boq-reviews.d.ts.map +0 -1
  526. package/dist/rpc/boq-reviews.js +0 -45
  527. package/dist/rpc/boq-reviews.js.map +0 -1
  528. package/dist/rpc/descriptor-registry.d.ts.map +0 -1
  529. package/dist/rpc/descriptor-registry.js +0 -47
  530. package/dist/rpc/descriptor-registry.js.map +0 -1
  531. package/dist/rpc/lists-pb.d.ts +0 -20
  532. package/dist/rpc/lists-pb.d.ts.map +0 -1
  533. package/dist/rpc/lists-pb.js +0 -20
  534. package/dist/rpc/lists-pb.js.map +0 -1
  535. package/dist/rpc/nxa.d.ts +0 -13
  536. package/dist/rpc/nxa.d.ts.map +0 -1
  537. package/dist/rpc/nxa.js +0 -44
  538. package/dist/rpc/nxa.js.map +0 -1
  539. package/dist/rpc/passiveassist-pb.d.ts +0 -21
  540. package/dist/rpc/passiveassist-pb.d.ts.map +0 -1
  541. package/dist/rpc/passiveassist-pb.js +0 -24
  542. package/dist/rpc/passiveassist-pb.js.map +0 -1
  543. package/dist/rpc/photo-category-tokens.d.ts +0 -29
  544. package/dist/rpc/photo-category-tokens.d.ts.map +0 -1
  545. package/dist/rpc/photo-category-tokens.js +0 -97
  546. package/dist/rpc/photo-category-tokens.js.map +0 -1
  547. package/dist/rpc/reveal-pb.d.ts +0 -26
  548. package/dist/rpc/reveal-pb.d.ts.map +0 -1
  549. package/dist/rpc/reveal-pb.js +0 -32
  550. package/dist/rpc/reveal-pb.js.map +0 -1
  551. package/dist/rpc/suggest-pb.d.ts +0 -34
  552. package/dist/rpc/suggest-pb.d.ts.map +0 -1
  553. package/dist/rpc/suggest-pb.js +0 -42
  554. package/dist/rpc/suggest-pb.js.map +0 -1
  555. package/dist/rpc/tiles-pb.d.ts +0 -45
  556. package/dist/rpc/tiles-pb.d.ts.map +0 -1
  557. package/dist/rpc/tiles-pb.js +0 -71
  558. package/dist/rpc/tiles-pb.js.map +0 -1
  559. package/dist/services/batch-url.d.ts +0 -18
  560. package/dist/services/batch-url.d.ts.map +0 -1
  561. package/dist/services/batch-url.js +0 -30
  562. package/dist/services/batch-url.js.map +0 -1
  563. package/dist/services/categories.d.ts +0 -21
  564. package/dist/services/categories.d.ts.map +0 -1
  565. package/dist/services/categories.js +0 -43
  566. package/dist/services/categories.js.map +0 -1
  567. package/dist/services/passiveassist.d.ts +0 -21
  568. package/dist/services/passiveassist.d.ts.map +0 -1
  569. package/dist/services/passiveassist.js +0 -70
  570. package/dist/services/passiveassist.js.map +0 -1
  571. package/dist/services/reveal.d.ts +0 -15
  572. package/dist/services/reveal.d.ts.map +0 -1
  573. package/dist/services/reveal.js +0 -41
  574. package/dist/services/reveal.js.map +0 -1
  575. package/dist/services/suggest.d.ts +0 -12
  576. package/dist/services/suggest.d.ts.map +0 -1
  577. package/dist/services/suggest.js +0 -36
  578. package/dist/services/suggest.js.map +0 -1
  579. package/dist/services/timezone.d.ts +0 -19
  580. package/dist/services/timezone.d.ts.map +0 -1
  581. package/dist/services/timezone.js +0 -91
  582. package/dist/services/timezone.js.map +0 -1
  583. package/dist/services/ugc-aggregates.d.ts +0 -17
  584. package/dist/services/ugc-aggregates.d.ts.map +0 -1
  585. package/dist/services/ugc-aggregates.js +0 -30
  586. package/dist/services/ugc-aggregates.js.map +0 -1
  587. package/dist/types/distance-matrix.d.ts +0 -40
  588. package/dist/types/distance-matrix.d.ts.map +0 -1
  589. package/dist/types/distance-matrix.js +0 -2
  590. package/dist/types/distance-matrix.js.map +0 -1
  591. package/dist/types/elevation.d.ts +0 -59
  592. package/dist/types/elevation.d.ts.map +0 -1
  593. package/dist/types/elevation.js +0 -2
  594. package/dist/types/elevation.js.map +0 -1
  595. package/dist/types/passiveassist.d.ts +0 -50
  596. package/dist/types/passiveassist.d.ts.map +0 -1
  597. package/dist/types/passiveassist.js +0 -2
  598. package/dist/types/passiveassist.js.map +0 -1
  599. package/dist/types/reveal.d.ts +0 -46
  600. package/dist/types/reveal.d.ts.map +0 -1
  601. package/dist/types/reveal.js +0 -2
  602. package/dist/types/reveal.js.map +0 -1
  603. package/dist/types/timezone.d.ts +0 -36
  604. package/dist/types/timezone.d.ts.map +0 -1
  605. package/dist/types/timezone.js +0 -2
  606. package/dist/types/timezone.js.map +0 -1
  607. package/dist/types/ugc-aggregates.d.ts +0 -14
  608. package/dist/types/ugc-aggregates.d.ts.map +0 -1
  609. package/dist/types/ugc-aggregates.js +0 -2
  610. package/dist/types/ugc-aggregates.js.map +0 -1
  611. package/dist/utils/abort.d.ts +0 -7
  612. package/dist/utils/abort.d.ts.map +0 -1
  613. package/dist/utils/abort.js +0 -43
  614. package/dist/utils/abort.js.map +0 -1
  615. package/dist/utils/chunked-decoder.d.ts +0 -9
  616. package/dist/utils/chunked-decoder.d.ts.map +0 -1
  617. package/dist/utils/chunked-decoder.js.map +0 -1
  618. package/dist/utils/coords.d.ts +0 -24
  619. package/dist/utils/coords.d.ts.map +0 -1
  620. package/dist/utils/coords.js +0 -37
  621. package/dist/utils/coords.js.map +0 -1
  622. package/dist/utils/feature-id.d.ts +0 -2
  623. package/dist/utils/feature-id.d.ts.map +0 -1
  624. package/dist/utils/feature-id.js +0 -11
  625. package/dist/utils/feature-id.js.map +0 -1
  626. package/dist/utils/load-env.d.ts +0 -7
  627. package/dist/utils/load-env.d.ts.map +0 -1
  628. package/dist/utils/load-env.js.map +0 -1
  629. package/dist/utils/pooled.d.ts +0 -8
  630. package/dist/utils/pooled.d.ts.map +0 -1
  631. package/dist/utils/pooled.js +0 -27
  632. package/dist/utils/pooled.js.map +0 -1
  633. package/dist/utils/request-context.d.ts +0 -9
  634. package/dist/utils/request-context.d.ts.map +0 -1
  635. package/dist/utils/request-context.js +0 -12
  636. package/dist/utils/request-context.js.map +0 -1
  637. package/dist/utils/request-scheduler.d.ts +0 -28
  638. package/dist/utils/request-scheduler.d.ts.map +0 -1
  639. package/dist/utils/request-scheduler.js +0 -58
  640. package/dist/utils/request-scheduler.js.map +0 -1
  641. package/dist/utils/response-parser.d.ts +0 -7
  642. package/dist/utils/response-parser.d.ts.map +0 -1
  643. package/dist/utils/response-parser.js +0 -50
  644. package/dist/utils/response-parser.js.map +0 -1
  645. package/dist/utils/retry-backoff.d.ts +0 -5
  646. package/dist/utils/retry-backoff.d.ts.map +0 -1
  647. package/dist/utils/retry-backoff.js +0 -23
  648. package/dist/utils/retry-backoff.js.map +0 -1
  649. package/dist/utils/safe-get.d.ts +0 -6
  650. package/dist/utils/safe-get.d.ts.map +0 -1
  651. package/dist/utils/safe-get.js +0 -29
  652. package/dist/utils/safe-get.js.map +0 -1
  653. package/dist/utils/throttle-detection.d.ts +0 -17
  654. package/dist/utils/throttle-detection.d.ts.map +0 -1
  655. package/dist/utils/throttle-detection.js +0 -71
  656. package/dist/utils/throttle-detection.js.map +0 -1
  657. package/dist/utils/ttl-cache.d.ts +0 -17
  658. package/dist/utils/ttl-cache.d.ts.map +0 -1
  659. package/dist/utils/ttl-cache.js +0 -43
  660. package/dist/utils/ttl-cache.js.map +0 -1
  661. /package/{assets → .github/assets}/banner.png +0 -0
package/dist/cli.js CHANGED
@@ -1,20 +1,12 @@
1
1
  #!/usr/bin/env node
2
2
  /**
3
- * googlemaps-kit CLI + TUI
4
- *
5
- * Interactive (Bubble Tea):
6
- * npx googlemaps-kit
7
- * npx googlemaps-kit tui
8
- *
9
- * Scripted:
10
- * npx googlemaps-kit discover "cafes" --near 12.98,77.64
11
- * npx googlemaps-kit resolve --query "Cubbon Park Bangalore"
12
- * …
3
+ * googlemaps-kit CLI + TUI. Run with --help for the command reference.
13
4
  */
14
5
  import { sdk } from './client/gmaps-client.js';
15
- import { flag, has, positional, resolveFormat } from './cli/args.js';
16
- import { emit, runCapabilities, runDiscover, runMedia, runOpinions, runPipeline, runProfile, runResolve, runRoute, } from './cli/run.js';
6
+ import { flag, has, numberFlag, positional, resolveFormat } from './cli/args.js';
7
+ import { emit, parseBounds, runCapabilities, runDiscover, runGeocode, runGrid, runMedia, runOpinions, runPipeline, runProfile, runResolve, runRoute, runStreetView, runSurfaces, runTerrain, } from './cli/run.js';
17
8
  import { runTui } from './cli/tui/app.js';
9
+ import { getPackageVersion } from './utils/env.js';
18
10
  function usage(exit = 1) {
19
11
  console.error(`googlemaps-kit — Intent CLI + TUI
20
12
 
@@ -23,35 +15,57 @@ Interactive:
23
15
  googlemaps-kit tui launch TUI
24
16
 
25
17
  Commands:
26
- googlemaps-kit discover <query> --near <lat,lng> [options]
27
- googlemaps-kit resolve --query <text> [--near <lat,lng>] | --url <maps-url>
28
- googlemaps-kit profile <hexId> | --query <text> --near <lat,lng> [--depth card|full|complete]
29
- googlemaps-kit route --from <address|lat,lng> --to <address|lat,lng> [--mode driving|walking|…]
30
- googlemaps-kit opinions <hexId> | --query <text> --near <lat,lng> [--pages N] [--limit N]
31
- googlemaps-kit media <hexId> | --query <text> [--near <lat,lng>] [--limit N]
32
- googlemaps-kit pipeline <query> --near <lat,lng> [--max N] [--profile card|full|false] [--opinions]
18
+ googlemaps-kit discover <query> --near <lat,lng|place> [--mode fast|full] [--limit N]
19
+ googlemaps-kit grid <query> (--bounds <N,S,E,W> | --near <lat,lng|place> [--span km]) [options]
20
+ googlemaps-kit resolve (--query <text> | --url <maps-url>) [--near <lat,lng|place>]
21
+ googlemaps-kit profile (<hexId> | --query <text> --near <lat,lng|place>) [--name <text>] [--depth card|full|complete]
22
+ googlemaps-kit route --from <address|lat,lng> --to <address|lat,lng> [--mode driving|walking|bicycling|transit]
23
+ googlemaps-kit opinions (<hexId> | --query <text> --near <lat,lng|place>) [--pages N] [--limit N] [--aggregates]
24
+ googlemaps-kit media (<hexId> | --query <text> [--near <lat,lng|place>]) [--limit N]
25
+ googlemaps-kit geocode <address> | geocode --reverse <lat,lng>
26
+ googlemaps-kit streetview (--at <lat,lng|place> | "<place name>") [--radius-meters M]
27
+ googlemaps-kit terrain|map3d --bounds <N,S,E,W> [--planet earth|mars|moon] [--resolution low|medium|high] [--detail low|medium|high|max] [--out file.obj]
28
+ googlemaps-kit surfaces [--status working|auth-required|blocked|…]
29
+ googlemaps-kit pipeline <query> --near <lat,lng|place> [--max N] [--profile card|full|complete|false] [--opinions]
33
30
  googlemaps-kit capabilities
31
+ googlemaps-kit version print the installed version
32
+
33
+ grid options:
34
+ --cell-zoom 10..18 grid density: 14 districts · 15 ~2km cells · 17 blocks (default 15)
35
+ --max-results N stop once N unique results are collected
36
+ --max-cells N safety cap on cells searched
37
+ --pages-per-cell N paginate within each cell (default 1)
34
38
 
35
39
  Global:
36
40
  --format table|pretty|json|csv|geojson (default: table/pretty on TTY, json when piped)
37
41
  --json shorthand for --format json
42
+ --no-anim disable TUI animations (auto-off with NO_COLOR / TERM=dumb)
38
43
  --hl <lang> --gl <region> locale (or GMAPS_HL / GMAPS_GL)
44
+ -h, --help show this help
45
+ -v, --version print the installed version
46
+
47
+ --near accepts coordinates (12.98,77.64) or a place/address (Indiranagar, Bengaluru).
48
+ Place names geocode to a pin; grid --span is still a square around that pin.
39
49
 
50
+ Piping sends JSON by default — safe to feed straight into jq or an agent.
40
51
  TUI built with Bubble Tea (charmbracelet) via @oakoliver/bubbletea.
41
52
  `);
42
53
  process.exit(exit);
43
54
  }
44
55
  async function main() {
45
56
  const argv = process.argv.slice(2);
57
+ if (has(argv, '-v') || has(argv, '--version') || argv[0] === 'version') {
58
+ console.log(getPackageVersion());
59
+ return;
60
+ }
46
61
  if (has(argv, '-h') || has(argv, '--help'))
47
62
  usage(0);
48
- // Bare invocation or explicit tui → interactive
49
63
  if (argv.length === 0 || argv[0] === 'tui' || argv[0] === 'ui') {
50
64
  if (!process.stdin.isTTY || !process.stdout.isTTY) {
51
65
  console.error('TUI requires an interactive terminal. Use a subcommand or --help.');
52
66
  process.exit(1);
53
67
  }
54
- await runTui();
68
+ await runTui(undefined, { anim: !has(argv, '--no-anim') });
55
69
  return;
56
70
  }
57
71
  const cmd = argv[0];
@@ -70,7 +84,7 @@ async function main() {
70
84
  usage();
71
85
  const near = flag(rest, '--near');
72
86
  if (!near) {
73
- console.error('discover requires --near lat,lng');
87
+ console.error('discover requires --near <lat,lng|place>');
74
88
  usage();
75
89
  }
76
90
  const format = resolveFormat(rest, 'rows', tty);
@@ -78,10 +92,10 @@ async function main() {
78
92
  query,
79
93
  near,
80
94
  mode: flag(rest, '--mode') ?? 'fast',
81
- limit: flag(rest, '--limit') ? Number(flag(rest, '--limit')) : undefined,
95
+ limit: numberFlag(rest, '--limit'),
82
96
  format,
83
97
  });
84
- emit(text, format);
98
+ emit(text);
85
99
  return;
86
100
  }
87
101
  if (cmd === 'resolve') {
@@ -96,7 +110,7 @@ async function main() {
96
110
  near: flag(rest, '--near'),
97
111
  format,
98
112
  });
99
- emit(text, format);
113
+ emit(text);
100
114
  return;
101
115
  }
102
116
  if (cmd === 'profile') {
@@ -113,7 +127,7 @@ async function main() {
113
127
  depth,
114
128
  format,
115
129
  });
116
- emit(text, format);
130
+ emit(text);
117
131
  return;
118
132
  }
119
133
  if (cmd === 'route') {
@@ -128,7 +142,7 @@ async function main() {
128
142
  mode: flag(rest, '--mode'),
129
143
  format,
130
144
  });
131
- emit(text, format);
145
+ emit(text);
132
146
  return;
133
147
  }
134
148
  if (cmd === 'opinions') {
@@ -139,12 +153,12 @@ async function main() {
139
153
  hexId: query ? undefined : hexId,
140
154
  query,
141
155
  near: flag(rest, '--near'),
142
- pages: flag(rest, '--pages') ? Number(flag(rest, '--pages')) : 1,
143
- limit: flag(rest, '--limit') ? Number(flag(rest, '--limit')) : 5,
156
+ pages: numberFlag(rest, '--pages') ?? 1,
157
+ limit: numberFlag(rest, '--limit') ?? 5,
144
158
  aggregates: has(rest, '--aggregates'),
145
159
  format,
146
160
  });
147
- emit(text, format);
161
+ emit(text);
148
162
  return;
149
163
  }
150
164
  if (cmd === 'media') {
@@ -155,10 +169,10 @@ async function main() {
155
169
  hexId: query ? undefined : hexId,
156
170
  query,
157
171
  near: flag(rest, '--near'),
158
- limit: flag(rest, '--limit') ? Number(flag(rest, '--limit')) : 8,
172
+ limit: numberFlag(rest, '--limit') ?? 8,
159
173
  format,
160
174
  });
161
- emit(text, format);
175
+ emit(text);
162
176
  return;
163
177
  }
164
178
  if (cmd === 'pipeline') {
@@ -167,7 +181,7 @@ async function main() {
167
181
  usage();
168
182
  const near = flag(rest, '--near');
169
183
  if (!near) {
170
- console.error('pipeline requires --near lat,lng');
184
+ console.error('pipeline requires --near <lat,lng|place>');
171
185
  usage();
172
186
  }
173
187
  const profileFlag = flag(rest, '--profile') ?? 'card';
@@ -175,18 +189,90 @@ async function main() {
175
189
  const text = await runPipeline(maps, {
176
190
  query,
177
191
  near,
178
- max: flag(rest, '--max') ? Number(flag(rest, '--max')) : 3,
192
+ max: numberFlag(rest, '--max') ?? 3,
179
193
  profile: profileFlag === 'false' ? false : profileFlag,
180
194
  opinions: has(rest, '--opinions'),
181
195
  format,
182
196
  });
183
- emit(text, format);
197
+ emit(text);
184
198
  return;
185
199
  }
186
200
  if (cmd === 'capabilities') {
187
201
  const format = resolveFormat(rest, 'card', tty);
188
202
  const text = await runCapabilities(maps, { format });
189
- emit(text, format);
203
+ emit(text);
204
+ return;
205
+ }
206
+ if (cmd === 'grid') {
207
+ const query = positional(rest);
208
+ if (!query)
209
+ usage();
210
+ const near = flag(rest, '--near');
211
+ const boundsRaw = flag(rest, '--bounds');
212
+ if (!near && !boundsRaw) {
213
+ console.error('grid requires --bounds "N,S,E,W" or --near <lat,lng|place>');
214
+ usage();
215
+ }
216
+ const format = resolveFormat(rest, 'rows', tty);
217
+ const text = await runGrid(maps, {
218
+ query,
219
+ near: near ?? undefined,
220
+ spanKm: numberFlag(rest, '--span'),
221
+ bounds: parseBounds(boundsRaw),
222
+ cellZoom: numberFlag(rest, '--cell-zoom'),
223
+ maxResults: numberFlag(rest, '--max-results'),
224
+ maxCells: numberFlag(rest, '--max-cells'),
225
+ pagesPerCell: numberFlag(rest, '--pages-per-cell'),
226
+ format,
227
+ });
228
+ emit(text);
229
+ return;
230
+ }
231
+ if (cmd === 'geocode') {
232
+ const query = positional(rest);
233
+ const reverse = flag(rest, '--reverse');
234
+ if (!query && !reverse)
235
+ usage();
236
+ const format = resolveFormat(rest, 'card', tty);
237
+ const text = await runGeocode(maps, { query, reverse, format });
238
+ emit(text);
239
+ return;
240
+ }
241
+ if (cmd === 'streetview') {
242
+ const at = flag(rest, '--at');
243
+ const place = positional(rest);
244
+ if (!at && !place)
245
+ usage();
246
+ const format = resolveFormat(rest, 'card', tty);
247
+ const text = await runStreetView(maps, {
248
+ at: at ?? undefined,
249
+ query: at ? undefined : place,
250
+ radiusMeters: numberFlag(rest, '--radius-meters'),
251
+ format,
252
+ });
253
+ emit(text);
254
+ return;
255
+ }
256
+ if (cmd === 'terrain' || cmd === 'map3d') {
257
+ const boundsRaw = flag(rest, '--bounds');
258
+ if (!boundsRaw)
259
+ usage();
260
+ const format = resolveFormat(rest, 'card', tty);
261
+ const text = await runTerrain(maps, {
262
+ bounds: parseBounds(boundsRaw),
263
+ planet: flag(rest, '--planet'),
264
+ resolution: flag(rest, '--resolution'),
265
+ detail: flag(rest, '--detail'),
266
+ out: flag(rest, '--out'),
267
+ format,
268
+ });
269
+ emit(text);
270
+ return;
271
+ }
272
+ if (cmd === 'surfaces') {
273
+ const format = resolveFormat(rest, 'rows', tty);
274
+ const text = await runSurfaces(maps, { status: flag(rest, '--status'), format });
275
+ emit(text);
190
276
  return;
191
277
  }
192
278
  usage();
package/dist/cli.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"cli.js","sourceRoot":"","sources":["../src/cli.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"cli.js","sourceRoot":"","sources":["../src/cli.ts"],"names":[],"mappings":"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"}
@@ -1,31 +1,15 @@
1
1
  import { GMapsRpcClient } from '../rpc/rpc-client.js';
2
- import { AgentNamespace, LocationNamespace, MapNamespace, MetaNamespace, PlacesNamespace, TravelNamespace } from './namespaces.js';
3
- import { AuthNamespace, SurfacesNamespace } from './product-namespaces.js';
4
- import type { DirectionsOptions, DirectionsResult, EnrichedSearchResult, GetPlaceCompleteOptions, GetPlaceFullOptions, GMapsConfig, PlaceCompleteResult, PlaceFullResult, SearchOptions } from '../types/common.js';
5
- import type { ClientCapabilities, DiscoverOptions, DiscoverPagesOptions, DiscoverResult, MediaManyOptions, MediaOptions, MediaResult, OpinionsOptions, OpinionsPagesOptions, OpinionsResult, PipelineOptions, PipelineResult, PlaceProfile, PlaceRef, ProfileManyOptions, ProfileOptions, ResolveOptions, ResolvedPlace, RouteOptions, RouteResult } from '../types/dx.js';
2
+ import { AgentNamespace, AuthNamespace, EnvironmentNamespace, LocationNamespace, MapNamespace, MetaNamespace, PlacesNamespace, SurfacesNamespace, TravelNamespace } from './namespaces.js';
3
+ import type { GMapsConfig } from '../types/common.js';
4
+ import type { ClientCapabilities, DiscoverOptions, DiscoverPagesOptions, DiscoverResult, MediaManyOptions, MediaOptions, MediaResult, OpinionsOptions, OpinionsPagesOptions, OpinionsResult, PipelineOptions, GridOptions, GridResult, PipelineResult, PlaceProfile, PlaceRef, ProfileManyOptions, ProfileOptions, ResolveOptions, ResolvedPlace, RouteOptions, RouteResult } from '../types/dx.js';
6
5
  import { type CreateMapsToolsOptions, type MapsTools } from './maps-tools.js';
7
- export interface EnrichSearchOptions extends SearchOptions {
8
- /**
9
- * Prefer search-row fields only (Places Text Search Enterprise parity in 1 RPC).
10
- * When true, skips place-preview round-trips unless includeReviews is also set.
11
- */
12
- fromSearchOnly?: boolean;
13
- /** Fetch full place details for each result (gallery-scale photos, stub-retry). */
14
- includeDetails?: boolean;
15
- /** Fetch reviews for each result */
16
- includeReviews?: boolean;
17
- /** Max Boq review pages per place when includeReviews is true */
18
- maxReviewPages?: number;
19
- /** Max parallel enrichment requests (default 10) */
20
- concurrency?: number;
21
- }
22
6
  /**
23
7
  * Main Google Maps SDK client.
24
8
  *
25
9
  * Create with `sdk()` or `GMaps.create()`.
26
10
  *
27
- * **Intent:** `discover`, `resolve`, `profile`, `route`, `opinions`, `media`
28
- * **Namespaces:** `places`, `location`, `travel`, `map`, `meta`, `agent`, `auth`, `surfaces`
11
+ * **Intent (app flows):** `discover`, `resolve`, `profile`, `route`, `opinions`, `media`, `grid`
12
+ * **Namespaces (full control):** `places`, `location`, `travel`, `map`, `environment`, `meta`, `agent`, `auth`, `surfaces`
29
13
  */
30
14
  export declare class GMapsClient {
31
15
  /** POI discovery & details namespace. */
@@ -36,13 +20,15 @@ export declare class GMapsClient {
36
20
  readonly travel: TravelNamespace;
37
21
  /** Tiles, static map, Street View. */
38
22
  readonly map: MapNamespace;
23
+ /** Air quality, weather, solar, pollen. */
24
+ readonly environment: EnvironmentNamespace;
39
25
  /** Categories, lists, links, aggregates. */
40
26
  readonly meta: MetaNamespace;
41
27
  /** Signed-in Ask Maps. */
42
28
  readonly agent: AgentNamespace;
43
29
  /** Session status (cookie presence / live probe — no secrets). */
44
30
  readonly auth: AuthNamespace;
45
- /** Catalog of Maps surfaces this kit supports. */
31
+ /** Catalog of Maps surfaces and platform products this kit supports. */
46
32
  readonly surfaces: SurfacesNamespace;
47
33
  private http;
48
34
  private config;
@@ -88,6 +74,12 @@ export declare class GMapsClient {
88
74
  mediaMany(refs: PlaceRef[], options?: MediaManyOptions): Promise<MediaResult[]>;
89
75
  /** Discover → profile → optional opinions pipeline. */
90
76
  pipeline(options: PipelineOptions): Promise<PipelineResult>;
77
+ /**
78
+ * Area-coverage search: split a bounding box into zoom cells and merge the
79
+ * per-cell results, deduped. Beats single-query pagination caps in dense
80
+ * cities — pass `bounds`, or `near` + `spanKm` (default 3 km square).
81
+ */
82
+ grid(options: GridOptions): Promise<GridResult>;
91
83
  /** Ready-made Intent tools for agents. */
92
84
  tools(options?: CreateMapsToolsOptions): MapsTools;
93
85
  /** Clear Intent TTL cache (no-op when cache disabled). */
@@ -98,19 +90,10 @@ export declare class GMapsClient {
98
90
  rpc(): Promise<GMapsRpcClient>;
99
91
  features(): Promise<import('../rpc/feature-rpc.js').FeatureRpcService>;
100
92
  runtime(): Promise<import('../rpc/maps-runtime.js').MapsRuntime>;
101
- getPlaceFull(options: GetPlaceFullOptions): Promise<PlaceFullResult>;
102
- /**
103
- * Fetch maximum available place data: rich preview, paginated Boq reviews,
104
- * local posts, and knowledge entity (when available).
105
- */
106
- getPlaceComplete(options: GetPlaceCompleteOptions): Promise<PlaceCompleteResult>;
107
- getDirections(options: DirectionsOptions): Promise<DirectionsResult>;
108
93
  /** Wait until the client is ready for requests. */
109
94
  ready(): Promise<void>;
110
95
  /** Request/session counters for harness scripts (no secrets). */
111
96
  getHttpStats(): import("./http-client.js").HttpClientStats;
112
- searchEnriched(options: EnrichSearchOptions): Promise<EnrichedSearchResult[]>;
113
- private enrichSingle;
114
97
  }
115
98
  /**
116
99
  * Create a Maps SDK client.
@@ -1 +1 @@
1
- {"version":3,"file":"gmaps-client.d.ts","sourceRoot":"","sources":["../../src/client/gmaps-client.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,cAAc,EAAE,MAAM,sBAAsB,CAAC;AAEtD,OAAO,EACL,cAAc,EAEd,iBAAiB,EACjB,YAAY,EACZ,aAAa,EACb,eAAe,EACf,eAAe,EAEhB,MAAM,iBAAiB,CAAC;AACzB,OAAO,EAAE,aAAa,EAAE,iBAAiB,EAAE,MAAM,yBAAyB,CAAC;AAE3E,OAAO,KAAK,EACV,iBAAiB,EACjB,gBAAgB,EAChB,oBAAoB,EACpB,uBAAuB,EACvB,mBAAmB,EACnB,WAAW,EAEX,mBAAmB,EACnB,eAAe,EACf,aAAa,EAEd,MAAM,oBAAoB,CAAC;AAE5B,OAAO,KAAK,EACV,kBAAkB,EAClB,eAAe,EACf,oBAAoB,EACpB,cAAc,EACd,gBAAgB,EAChB,YAAY,EACZ,WAAW,EACX,eAAe,EACf,oBAAoB,EACpB,cAAc,EACd,eAAe,EACf,cAAc,EACd,YAAY,EACZ,QAAQ,EACR,kBAAkB,EAClB,cAAc,EACd,cAAc,EACd,aAAa,EACb,YAAY,EACZ,WAAW,EAEZ,MAAM,gBAAgB,CAAC;AAExB,OAAO,EAAmB,KAAK,sBAAsB,EAAE,KAAK,SAAS,EAAE,MAAM,iBAAiB,CAAC;AAI/F,MAAM,WAAW,mBAAoB,SAAQ,aAAa;IACxD;;;OAGG;IACH,cAAc,CAAC,EAAE,OAAO,CAAC;IACzB,mFAAmF;IACnF,cAAc,CAAC,EAAE,OAAO,CAAC;IACzB,oCAAoC;IACpC,cAAc,CAAC,EAAE,OAAO,CAAC;IACzB,iEAAiE;IACjE,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,oDAAoD;IACpD,WAAW,CAAC,EAAE,MAAM,CAAC;CACtB;AAgDD;;;;;;;GAOG;AACH,qBAAa,WAAW;IACtB,yCAAyC;IACzC,QAAQ,CAAC,MAAM,EAAE,eAAe,CAAC;IACjC,mCAAmC;IACnC,QAAQ,CAAC,QAAQ,EAAE,iBAAiB,CAAC;IACrC,yBAAyB;IACzB,QAAQ,CAAC,MAAM,EAAE,eAAe,CAAC;IACjC,sCAAsC;IACtC,QAAQ,CAAC,GAAG,EAAE,YAAY,CAAC;IAC3B,4CAA4C;IAC5C,QAAQ,CAAC,IAAI,EAAE,aAAa,CAAC;IAC7B,0BAA0B;IAC1B,QAAQ,CAAC,KAAK,EAAE,cAAc,CAAC;IAC/B,kEAAkE;IAClE,QAAQ,CAAC,IAAI,EAAE,aAAa,CAAC;IAC7B,kDAAkD;IAClD,QAAQ,CAAC,QAAQ,EAAE,iBAAiB,CAAC;IAErC,OAAO,CAAC,IAAI,CAAa;IACzB,OAAO,CAAC,MAAM,CAAc;IAC5B,OAAO,CAAC,QAAQ,CAAgB;IAChC,OAAO,CAAC,MAAM,CAAY;IAC1B,OAAO,CAAC,cAAc,CAAsE;IAC5F,OAAO,CAAC,WAAW,CAAC,CAAoB;gBAE5B,MAAM,GAAE,WAAgB;IAkCpC;;;OAGG;IACH,QAAQ,CAAC,OAAO,EAAE,eAAe,GAAG,OAAO,CAAC,cAAc,CAAC;IAI3D,uCAAuC;IACvC,aAAa,CAAC,OAAO,EAAE,oBAAoB,GAAG,cAAc,CAAC,cAAc,CAAC;IAI5E;;;OAGG;IACH,OAAO,CAAC,OAAO,EAAE,cAAc,GAAG,OAAO,CAAC,aAAa,CAAC;IAIxD;;;OAGG;IACH,OAAO,CAAC,GAAG,EAAE,QAAQ,EAAE,OAAO,CAAC,EAAE,cAAc,GAAG,OAAO,CAAC,YAAY,CAAC;IAIvE,oDAAoD;IACpD,WAAW,CAAC,IAAI,EAAE,QAAQ,EAAE,EAAE,OAAO,CAAC,EAAE,kBAAkB,GAAG,OAAO,CAAC,YAAY,EAAE,CAAC;IAIpF;;OAEG;IACH,KAAK,CAAC,OAAO,EAAE,YAAY,GAAG,OAAO,CAAC,WAAW,CAAC;IAIlD;;OAEG;IACH,QAAQ,CAAC,GAAG,EAAE,QAAQ,EAAE,OAAO,CAAC,EAAE,eAAe,GAAG,OAAO,CAAC,cAAc,CAAC;IAI3E,2BAA2B;IAC3B,aAAa,CACX,GAAG,EAAE,QAAQ,EACb,OAAO,CAAC,EAAE,oBAAoB,GAC7B,cAAc,CAAC,cAAc,CAAC;IAIjC;;OAEG;IACH,KAAK,CAAC,GAAG,EAAE,QAAQ,EAAE,OAAO,CAAC,EAAE,YAAY,GAAG,OAAO,CAAC,WAAW,CAAC;IAIlE,sDAAsD;IACtD,SAAS,CAAC,IAAI,EAAE,QAAQ,EAAE,EAAE,OAAO,CAAC,EAAE,gBAAgB,GAAG,OAAO,CAAC,WAAW,EAAE,CAAC;IAI/E,uDAAuD;IACvD,QAAQ,CAAC,OAAO,EAAE,eAAe,GAAG,OAAO,CAAC,cAAc,CAAC;IAI3D,0CAA0C;IAC1C,KAAK,CAAC,OAAO,CAAC,EAAE,sBAAsB,GAAG,SAAS;IAIlD,0DAA0D;IAC1D,UAAU,IAAI,IAAI;IAIlB,4DAA4D;IACtD,YAAY,IAAI,OAAO,CAAC,kBAAkB,CAAC;IAmBjD,OAAO,CAAC,UAAU;IAMZ,GAAG,IAAI,OAAO,CAAC,cAAc,CAAC;IAI9B,QAAQ,IAAI,OAAO,CAAC,OAAO,uBAAuB,EAAE,iBAAiB,CAAC;IAKtE,OAAO,IAAI,OAAO,CAAC,OAAO,wBAAwB,EAAE,WAAW,CAAC;IAQhE,YAAY,CAAC,OAAO,EAAE,mBAAmB,GAAG,OAAO,CAAC,eAAe,CAAC;IAI1E;;;OAGG;IACG,gBAAgB,CAAC,OAAO,EAAE,uBAAuB,GAAG,OAAO,CAAC,mBAAmB,CAAC;IA6BhF,aAAa,CAAC,OAAO,EAAE,iBAAiB,GAAG,OAAO,CAAC,gBAAgB,CAAC;IAI1E,mDAAmD;IACnD,KAAK,IAAI,OAAO,CAAC,IAAI,CAAC;IAItB,iEAAiE;IACjE,YAAY;IAIN,cAAc,CAAC,OAAO,EAAE,mBAAmB,GAAG,OAAO,CAAC,oBAAoB,EAAE,CAAC;YAsBrE,YAAY;CA8E3B;AAED;;;;;;;GAOG;AACH,wBAAgB,GAAG,CAAC,MAAM,CAAC,EAAE,WAAW,GAAG,WAAW,CAErD;AAED,sEAAsE;AACtE,eAAO,MAAM,KAAK;;;CAGR,CAAC;AAEX,OAAO,EAAE,eAAe,EAAE,MAAM,iBAAiB,CAAC;AAClD,YAAY,EAAE,sBAAsB,EAAE,kBAAkB,EAAE,SAAS,EAAE,MAAM,iBAAiB,CAAC"}
1
+ {"version":3,"file":"gmaps-client.d.ts","sourceRoot":"","sources":["../../src/client/gmaps-client.ts"],"names":[],"mappings":"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"}
@@ -1,11 +1,10 @@
1
1
  import { HttpClient } from './http-client.js';
2
- import { loadProjectEnv } from '../utils/load-env.js';
2
+ import { loadProjectEnv } from '../utils/env.js';
3
3
  import { IntentApi } from './intent.js';
4
- import { AgentNamespace, createServiceBundle, LocationNamespace, MapNamespace, MetaNamespace, PlacesNamespace, TravelNamespace, } from './namespaces.js';
5
- import { AuthNamespace, SurfacesNamespace } from './product-namespaces.js';
6
- import { searchResultToPlaceDetails } from '../services/search.js';
7
- import { GMapsAuthError } from '../types/common.js';
8
- import { TtlCache } from '../utils/ttl-cache.js';
4
+ import { AgentNamespace, AuthNamespace, createServiceBundle, EnvironmentNamespace, LocationNamespace, MapNamespace, MetaNamespace, PlacesNamespace, SurfacesNamespace, TravelNamespace, } from './namespaces.js';
5
+ import { GMapsAuthError, GMapsError } from '../types/common.js';
6
+ import { TtlCache } from '../utils/async.js';
7
+ import { boundsAround } from '../utils/geo.js';
9
8
  import { createMapsTools } from './maps-tools.js';
10
9
  loadProjectEnv();
11
10
  function normalizeConfig(config = {}) {
@@ -51,8 +50,8 @@ function jarHasSapisid(jar) {
51
50
  *
52
51
  * Create with `sdk()` or `GMaps.create()`.
53
52
  *
54
- * **Intent:** `discover`, `resolve`, `profile`, `route`, `opinions`, `media`
55
- * **Namespaces:** `places`, `location`, `travel`, `map`, `meta`, `agent`, `auth`, `surfaces`
53
+ * **Intent (app flows):** `discover`, `resolve`, `profile`, `route`, `opinions`, `media`, `grid`
54
+ * **Namespaces (full control):** `places`, `location`, `travel`, `map`, `environment`, `meta`, `agent`, `auth`, `surfaces`
56
55
  */
57
56
  export class GMapsClient {
58
57
  /** POI discovery & details namespace. */
@@ -63,13 +62,15 @@ export class GMapsClient {
63
62
  travel;
64
63
  /** Tiles, static map, Street View. */
65
64
  map;
65
+ /** Air quality, weather, solar, pollen. */
66
+ environment;
66
67
  /** Categories, lists, links, aggregates. */
67
68
  meta;
68
69
  /** Signed-in Ask Maps. */
69
70
  agent;
70
71
  /** Session status (cookie presence / live probe — no secrets). */
71
72
  auth;
72
- /** Catalog of Maps surfaces this kit supports. */
73
+ /** Catalog of Maps surfaces and platform products this kit supports. */
73
74
  surfaces;
74
75
  http;
75
76
  config;
@@ -88,15 +89,16 @@ export class GMapsClient {
88
89
  }
89
90
  this.services = createServiceBundle(this.http, this.config);
90
91
  const signedIn = () => this.isSignedIn();
91
- this.places = new PlacesNamespace(this.services);
92
+ this.places = new PlacesNamespace(this.services, this.config);
92
93
  this.location = new LocationNamespace(this.services);
93
94
  this.travel = new TravelNamespace(this.services);
94
95
  this.map = new MapNamespace(this.services);
96
+ this.environment = new EnvironmentNamespace(this.services);
95
97
  this.meta = new MetaNamespace(this.services);
96
98
  this.agent = new AgentNamespace(this.services, signedIn);
97
99
  this.auth = new AuthNamespace(this.http, this.config);
98
100
  this.surfaces = new SurfacesNamespace();
99
- this.intent = new IntentApi(this.services, this.config, signedIn, (opts) => this.getPlaceComplete(opts), this.intentCache);
101
+ this.intent = new IntentApi(this.services, this.config, signedIn, this.intentCache);
100
102
  }
101
103
  // ——— Intent API ———
102
104
  /**
@@ -158,6 +160,44 @@ export class GMapsClient {
158
160
  pipeline(options) {
159
161
  return this.intent.pipeline(options);
160
162
  }
163
+ /**
164
+ * Area-coverage search: split a bounding box into zoom cells and merge the
165
+ * per-cell results, deduped. Beats single-query pagination caps in dense
166
+ * cities — pass `bounds`, or `near` + `spanKm` (default 3 km square).
167
+ */
168
+ async grid(options) {
169
+ const start = performance.now();
170
+ let bounds = options.bounds;
171
+ if (!bounds && options.near) {
172
+ const pin = await this.location.geocode.resolveBias(options.near);
173
+ bounds = boundsAround(pin.lat, pin.lng, options.spanKm ?? 3);
174
+ }
175
+ if (!bounds) {
176
+ throw new GMapsError('grid() requires bounds or near (+ optional spanKm)');
177
+ }
178
+ const { onProgress } = options;
179
+ const result = await this.services.search.grid({
180
+ ...options,
181
+ bounds,
182
+ onProgress: onProgress
183
+ ? (p) => onProgress({
184
+ type: 'grid',
185
+ index: p.cell,
186
+ total: p.totalCells,
187
+ loaded: p.uniqueResults,
188
+ key: `${p.x}/${p.y}`,
189
+ })
190
+ : undefined,
191
+ });
192
+ return {
193
+ places: result.results,
194
+ cellsSearched: result.cellsSearched,
195
+ cellsTotal: result.cellsTotal,
196
+ requestsMade: result.requestsMade,
197
+ cellZoom: result.cellZoom,
198
+ timingMs: performance.now() - start,
199
+ };
200
+ }
161
201
  /** Ready-made Intent tools for agents. */
162
202
  tools(options) {
163
203
  return createMapsTools(this, options);
@@ -183,6 +223,7 @@ export class GMapsClient {
183
223
  askMapsHistory: signedIn,
184
224
  privateLists: signedIn,
185
225
  legacyRpc: signedIn,
226
+ userPrefs: signedIn,
186
227
  };
187
228
  }
188
229
  isSignedIn() {
@@ -206,41 +247,6 @@ export class GMapsClient {
206
247
  }
207
248
  return this.runtimePromise;
208
249
  }
209
- async getPlaceFull(options) {
210
- return this.places.getFull(options);
211
- }
212
- /**
213
- * Fetch maximum available place data: rich preview, paginated Boq reviews,
214
- * local posts, and knowledge entity (when available).
215
- */
216
- async getPlaceComplete(options) {
217
- const includeKnowledge = options.includeKnowledge !== false;
218
- const maxReviewPages = options.maxReviewPages ?? 3;
219
- const full = await this.getPlaceFull({
220
- ...options,
221
- maxReviewPages,
222
- richPreview: options.richPreview === true,
223
- includeLocalPosts: options.includeLocalPosts !== false,
224
- });
225
- let knowledge;
226
- if (includeKnowledge) {
227
- const start = performance.now();
228
- const entity = await this.places.knowledge.get({
229
- hexId: options.hexId,
230
- ftid: options.ftid,
231
- placeId: full.details.placeId,
232
- fallbackDetails: full.details,
233
- });
234
- full.meta.timingMs = full.meta.timingMs ?? {};
235
- full.meta.timingMs.knowledge = performance.now() - start;
236
- full.meta.sources.knowledge = entity != null;
237
- knowledge = entity ?? undefined;
238
- }
239
- return { ...full, knowledge };
240
- }
241
- async getDirections(options) {
242
- return this.travel.directions.get(options);
243
- }
244
250
  /** Wait until the client is ready for requests. */
245
251
  ready() {
246
252
  return this.http.warmSession();
@@ -249,90 +255,6 @@ export class GMapsClient {
249
255
  getHttpStats() {
250
256
  return this.http.getStats();
251
257
  }
252
- async searchEnriched(options) {
253
- const results = await this.places.search.search(options);
254
- if (options.fromSearchOnly || (!options.includeDetails && !options.includeReviews)) {
255
- return results.map((result) => ({
256
- ...result,
257
- details: searchResultToPlaceDetails(result),
258
- }));
259
- }
260
- const concurrency = options.concurrency ?? this.config.concurrency ?? 10;
261
- const enriched = [];
262
- for (let i = 0; i < results.length; i += concurrency) {
263
- const chunk = results.slice(i, i + concurrency);
264
- const batch = await Promise.all(chunk.map((result) => this.enrichSingle(result, options)));
265
- enriched.push(...batch);
266
- }
267
- return enriched;
268
- }
269
- async enrichSingle(result, options) {
270
- const enriched = {
271
- ...result,
272
- details: searchResultToPlaceDetails(result),
273
- };
274
- if (!result.hexId || !result.name) {
275
- return enriched;
276
- }
277
- const lat = result.lat ?? result.latitude ?? options.location?.lat ?? options.near?.lat;
278
- const lng = result.lng ?? result.longitude ?? options.location?.lng ?? options.near?.lng;
279
- if (options.includeDetails && options.includeReviews) {
280
- const full = await this.getPlaceFull({
281
- hexId: result.hexId,
282
- name: result.name,
283
- lat,
284
- lng,
285
- ftid: result.ftid,
286
- maxReviewPages: options.maxReviewPages ?? 1,
287
- });
288
- enriched.details = {
289
- ...enriched.details,
290
- ...full.details,
291
- photos: full.details.photos && full.details.photos.length > 0
292
- ? full.details.photos
293
- : enriched.details?.photos,
294
- reviewCount: full.details.reviewCount ?? enriched.details?.reviewCount,
295
- phone: full.details.phone ?? enriched.details?.phone,
296
- openStatus: full.details.openStatus ?? enriched.details?.openStatus,
297
- openingSchedule: full.details.openingSchedule ?? enriched.details?.openingSchedule,
298
- };
299
- enriched.reviews = full.reviews;
300
- enriched.localPosts = full.localPosts;
301
- return enriched;
302
- }
303
- if (options.includeDetails) {
304
- const preview = await this.places.get({
305
- hexId: result.hexId,
306
- name: result.name,
307
- lat,
308
- lng,
309
- ftid: result.ftid,
310
- mode: 'live',
311
- });
312
- enriched.details = {
313
- ...enriched.details,
314
- ...preview,
315
- photos: preview.photos && preview.photos.length > 0
316
- ? preview.photos
317
- : enriched.details?.photos,
318
- reviewCount: preview.reviewCount ?? enriched.details?.reviewCount,
319
- phone: preview.phone ?? enriched.details?.phone,
320
- openStatus: preview.openStatus ?? enriched.details?.openStatus,
321
- openingSchedule: preview.openingSchedule ?? enriched.details?.openingSchedule,
322
- };
323
- }
324
- if (options.includeReviews) {
325
- enriched.reviews = await this.places.reviews.list({
326
- hexId: result.hexId,
327
- name: result.name,
328
- lat,
329
- lng,
330
- ftid: result.ftid,
331
- limit: 10,
332
- });
333
- }
334
- return enriched;
335
- }
336
258
  }
337
259
  /**
338
260
  * Create a Maps SDK client.