googlemaps-kit 0.3.1 → 0.5.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 (622) hide show
  1. package/README.md +231 -26
  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 +46 -9
  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 +21 -0
  33. package/dist/cli/args.d.ts.map +1 -0
  34. package/dist/cli/args.js +97 -0
  35. package/dist/cli/args.js.map +1 -0
  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 +131 -0
  44. package/dist/cli/run.d.ts.map +1 -0
  45. package/dist/cli/run.js +384 -0
  46. package/dist/cli/run.js.map +1 -0
  47. package/dist/cli/tui/app.d.ts +48 -0
  48. package/dist/cli/tui/app.d.ts.map +1 -0
  49. package/dist/cli/tui/app.js +461 -0
  50. package/dist/cli/tui/app.js.map +1 -0
  51. package/dist/cli/tui/styles.d.ts +11 -0
  52. package/dist/cli/tui/styles.d.ts.map +1 -0
  53. package/dist/cli/tui/styles.js +17 -0
  54. package/dist/cli/tui/styles.js.map +1 -0
  55. package/dist/cli.d.ts +1 -10
  56. package/dist/cli.d.ts.map +1 -1
  57. package/dist/cli.js +196 -206
  58. package/dist/cli.js.map +1 -1
  59. package/dist/client/gmaps-client.d.ts +8 -3
  60. package/dist/client/gmaps-client.d.ts.map +1 -1
  61. package/dist/client/gmaps-client.js +43 -5
  62. package/dist/client/gmaps-client.js.map +1 -1
  63. package/dist/client/http-client.d.ts.map +1 -1
  64. package/dist/client/http-client.js +11 -9
  65. package/dist/client/http-client.js.map +1 -1
  66. package/dist/client/intent.d.ts +1 -1
  67. package/dist/client/intent.d.ts.map +1 -1
  68. package/dist/client/intent.js +22 -5
  69. package/dist/client/intent.js.map +1 -1
  70. package/dist/client/maps-tools.d.ts +13 -1
  71. package/dist/client/maps-tools.d.ts.map +1 -1
  72. package/dist/client/maps-tools.js +44 -0
  73. package/dist/client/maps-tools.js.map +1 -1
  74. package/dist/client/namespaces.d.ts +84 -10
  75. package/dist/client/namespaces.d.ts.map +1 -1
  76. package/dist/client/namespaces.js +119 -11
  77. package/dist/client/namespaces.js.map +1 -1
  78. package/dist/client/place-enrichment.js +1 -1
  79. package/dist/client/place-enrichment.js.map +1 -1
  80. package/dist/index.d.ts +46 -16
  81. package/dist/index.d.ts.map +1 -1
  82. package/dist/index.js +5 -3
  83. package/dist/index.js.map +1 -1
  84. package/dist/known-surfaces.d.ts +134 -2
  85. package/dist/known-surfaces.d.ts.map +1 -1
  86. package/dist/known-surfaces.js +134 -2
  87. package/dist/known-surfaces.js.map +1 -1
  88. package/dist/parsers/batch-url.d.ts +10 -1
  89. package/dist/parsers/batch-url.d.ts.map +1 -1
  90. package/dist/parsers/batch-url.js +30 -2
  91. package/dist/parsers/batch-url.js.map +1 -1
  92. package/dist/parsers/boq-reviews.d.ts +8 -1
  93. package/dist/parsers/boq-reviews.d.ts.map +1 -1
  94. package/dist/parsers/boq-reviews.js +50 -8
  95. package/dist/parsers/boq-reviews.js.map +1 -1
  96. package/dist/parsers/categories.d.ts.map +1 -1
  97. package/dist/parsers/categories.js +13 -10
  98. package/dist/parsers/categories.js.map +1 -1
  99. package/dist/parsers/directions.d.ts +18 -2
  100. package/dist/parsers/directions.d.ts.map +1 -1
  101. package/dist/parsers/directions.js +232 -18
  102. package/dist/parsers/directions.js.map +1 -1
  103. package/dist/parsers/geocode.d.ts +20 -2
  104. package/dist/parsers/geocode.d.ts.map +1 -1
  105. package/dist/parsers/geocode.js +110 -6
  106. package/dist/parsers/geocode.js.map +1 -1
  107. package/dist/parsers/knowledge.js +1 -1
  108. package/dist/parsers/knowledge.js.map +1 -1
  109. package/dist/parsers/lists.d.ts.map +1 -1
  110. package/dist/parsers/lists.js +29 -12
  111. package/dist/parsers/lists.js.map +1 -1
  112. package/dist/parsers/local-posts.d.ts.map +1 -1
  113. package/dist/parsers/local-posts.js +97 -12
  114. package/dist/parsers/local-posts.js.map +1 -1
  115. package/dist/parsers/mobility.d.ts +42 -0
  116. package/dist/parsers/mobility.d.ts.map +1 -0
  117. package/dist/parsers/mobility.js +130 -0
  118. package/dist/parsers/mobility.js.map +1 -0
  119. package/dist/parsers/panorama.d.ts +0 -1
  120. package/dist/parsers/panorama.d.ts.map +1 -1
  121. package/dist/parsers/panorama.js +117 -14
  122. package/dist/parsers/panorama.js.map +1 -1
  123. package/dist/parsers/photos.d.ts.map +1 -1
  124. package/dist/parsers/photos.js +15 -8
  125. package/dist/parsers/photos.js.map +1 -1
  126. package/dist/parsers/place-attributes.d.ts +12 -3
  127. package/dist/parsers/place-attributes.d.ts.map +1 -1
  128. package/dist/parsers/place-attributes.js +48 -2
  129. package/dist/parsers/place-attributes.js.map +1 -1
  130. package/dist/parsers/place-extended.d.ts +163 -0
  131. package/dist/parsers/place-extended.d.ts.map +1 -0
  132. package/dist/parsers/place-extended.js +741 -0
  133. package/dist/parsers/place-extended.js.map +1 -0
  134. package/dist/parsers/place.d.ts +15 -1
  135. package/dist/parsers/place.d.ts.map +1 -1
  136. package/dist/parsers/place.js +16 -5
  137. package/dist/parsers/place.js.map +1 -1
  138. package/dist/parsers/popular-times.d.ts +35 -0
  139. package/dist/parsers/popular-times.d.ts.map +1 -0
  140. package/dist/parsers/popular-times.js +149 -0
  141. package/dist/parsers/popular-times.js.map +1 -0
  142. package/dist/parsers/reveal.d.ts +1 -1
  143. package/dist/parsers/reveal.d.ts.map +1 -1
  144. package/dist/parsers/reveal.js +3 -2
  145. package/dist/parsers/reveal.js.map +1 -1
  146. package/dist/parsers/reviews.d.ts +17 -2
  147. package/dist/parsers/reviews.d.ts.map +1 -1
  148. package/dist/parsers/reviews.js +73 -1
  149. package/dist/parsers/reviews.js.map +1 -1
  150. package/dist/parsers/search.d.ts +17 -2
  151. package/dist/parsers/search.d.ts.map +1 -1
  152. package/dist/parsers/search.js +125 -7
  153. package/dist/parsers/search.js.map +1 -1
  154. package/dist/parsers/shared.d.ts +4 -0
  155. package/dist/parsers/shared.d.ts.map +1 -1
  156. package/dist/parsers/shared.js +10 -2
  157. package/dist/parsers/shared.js.map +1 -1
  158. package/dist/parsers/suggest.d.ts.map +1 -1
  159. package/dist/parsers/suggest.js +45 -6
  160. package/dist/parsers/suggest.js.map +1 -1
  161. package/dist/parsers/tiles.d.ts +13 -0
  162. package/dist/parsers/tiles.d.ts.map +1 -1
  163. package/dist/parsers/tiles.js +64 -0
  164. package/dist/parsers/tiles.js.map +1 -1
  165. package/dist/parsers/traffic.d.ts +9 -1
  166. package/dist/parsers/traffic.d.ts.map +1 -1
  167. package/dist/parsers/traffic.js +129 -2
  168. package/dist/parsers/traffic.js.map +1 -1
  169. package/dist/parsers/transit.d.ts +4 -2
  170. package/dist/parsers/transit.d.ts.map +1 -1
  171. package/dist/parsers/transit.js +385 -3
  172. package/dist/parsers/transit.js.map +1 -1
  173. package/dist/parsers/viewport.d.ts +20 -0
  174. package/dist/parsers/viewport.d.ts.map +1 -0
  175. package/dist/parsers/viewport.js +139 -0
  176. package/dist/parsers/viewport.js.map +1 -0
  177. package/dist/rpc/batch-execute.js +3 -3
  178. package/dist/rpc/batch-execute.js.map +1 -1
  179. package/dist/rpc/batch-request-builders.d.ts +12 -14
  180. package/dist/rpc/batch-request-builders.d.ts.map +1 -1
  181. package/dist/rpc/batch-request-builders.js +49 -17
  182. package/dist/rpc/batch-request-builders.js.map +1 -1
  183. package/dist/rpc/batch-rpc.js +1 -1
  184. package/dist/rpc/batch-services.d.ts +2 -0
  185. package/dist/rpc/batch-services.d.ts.map +1 -1
  186. package/dist/rpc/batch-services.js +4 -0
  187. package/dist/rpc/batch-services.js.map +1 -1
  188. package/dist/rpc/{descriptor-registry.d.ts → descriptors.d.ts} +29 -4
  189. package/dist/rpc/descriptors.d.ts.map +1 -0
  190. package/dist/rpc/{app-options.js → descriptors.js} +89 -5
  191. package/dist/rpc/descriptors.js.map +1 -0
  192. package/dist/rpc/earth-rocktree.d.ts +174 -0
  193. package/dist/rpc/earth-rocktree.d.ts.map +1 -0
  194. package/dist/rpc/earth-rocktree.js +468 -0
  195. package/dist/rpc/earth-rocktree.js.map +1 -0
  196. package/dist/rpc/feature-pb.d.ts +86 -0
  197. package/dist/rpc/feature-pb.d.ts.map +1 -0
  198. package/dist/rpc/feature-pb.js +112 -0
  199. package/dist/rpc/feature-pb.js.map +1 -0
  200. package/dist/rpc/feature-rpc.d.ts +15 -0
  201. package/dist/rpc/feature-rpc.d.ts.map +1 -1
  202. package/dist/rpc/feature-rpc.js +44 -0
  203. package/dist/rpc/feature-rpc.js.map +1 -1
  204. package/dist/rpc/maps-runtime.js +1 -1
  205. package/dist/rpc/panorama-pb.d.ts +3 -0
  206. package/dist/rpc/panorama-pb.d.ts.map +1 -1
  207. package/dist/rpc/panorama-pb.js +35 -3
  208. package/dist/rpc/panorama-pb.js.map +1 -1
  209. package/dist/rpc/pb-builders.d.ts +21 -1
  210. package/dist/rpc/pb-builders.d.ts.map +1 -1
  211. package/dist/rpc/pb-builders.js +62 -4
  212. package/dist/rpc/pb-builders.js.map +1 -1
  213. package/dist/rpc/photos-pb.d.ts +28 -1
  214. package/dist/rpc/photos-pb.d.ts.map +1 -1
  215. package/dist/rpc/photos-pb.js +96 -0
  216. package/dist/rpc/photos-pb.js.map +1 -1
  217. package/dist/rpc/rpc-methods.d.ts +0 -2
  218. package/dist/rpc/rpc-methods.d.ts.map +1 -1
  219. package/dist/rpc/rpc-methods.js +0 -38
  220. package/dist/rpc/rpc-methods.js.map +1 -1
  221. package/dist/rpc/search-filters.d.ts +0 -12
  222. package/dist/rpc/search-filters.d.ts.map +1 -1
  223. package/dist/rpc/search-filters.js +1 -11
  224. package/dist/rpc/search-filters.js.map +1 -1
  225. package/dist/rpc/tile-builders.d.ts +136 -0
  226. package/dist/rpc/tile-builders.d.ts.map +1 -0
  227. package/dist/rpc/tile-builders.js +172 -0
  228. package/dist/rpc/tile-builders.js.map +1 -0
  229. package/dist/rpc/xsrf-bootstrap.d.ts +0 -2
  230. package/dist/rpc/xsrf-bootstrap.d.ts.map +1 -1
  231. package/dist/rpc/xsrf-bootstrap.js +2 -2
  232. package/dist/rpc/xsrf-bootstrap.js.map +1 -1
  233. package/dist/services/ask-maps.d.ts +45 -5
  234. package/dist/services/ask-maps.d.ts.map +1 -1
  235. package/dist/services/ask-maps.js +148 -21
  236. package/dist/services/ask-maps.js.map +1 -1
  237. package/dist/services/directions.d.ts +17 -1
  238. package/dist/services/directions.d.ts.map +1 -1
  239. package/dist/services/directions.js +32 -0
  240. package/dist/services/directions.js.map +1 -1
  241. package/dist/services/distance-matrix.d.ts +1 -1
  242. package/dist/services/distance-matrix.d.ts.map +1 -1
  243. package/dist/services/distance-matrix.js +1 -1
  244. package/dist/services/distance-matrix.js.map +1 -1
  245. package/dist/services/elevation.d.ts +1 -1
  246. package/dist/services/elevation.d.ts.map +1 -1
  247. package/dist/services/elevation.js +3 -2
  248. package/dist/services/elevation.js.map +1 -1
  249. package/dist/services/geocode.d.ts +16 -0
  250. package/dist/services/geocode.d.ts.map +1 -1
  251. package/dist/services/geocode.js +90 -0
  252. package/dist/services/geocode.js.map +1 -1
  253. package/dist/services/lists.d.ts +7 -1
  254. package/dist/services/lists.d.ts.map +1 -1
  255. package/dist/services/lists.js +45 -1
  256. package/dist/services/lists.js.map +1 -1
  257. package/dist/services/map-3d.d.ts +66 -0
  258. package/dist/services/map-3d.d.ts.map +1 -0
  259. package/dist/services/map-3d.js +658 -0
  260. package/dist/services/map-3d.js.map +1 -0
  261. package/dist/services/map-layers.d.ts +33 -0
  262. package/dist/services/map-layers.d.ts.map +1 -0
  263. package/dist/services/map-layers.js +207 -0
  264. package/dist/services/map-layers.js.map +1 -0
  265. package/dist/services/meta.d.ts +71 -0
  266. package/dist/services/meta.d.ts.map +1 -0
  267. package/dist/services/meta.js +132 -0
  268. package/dist/services/meta.js.map +1 -0
  269. package/dist/services/mobility.d.ts +79 -0
  270. package/dist/services/mobility.d.ts.map +1 -0
  271. package/dist/services/mobility.js +296 -0
  272. package/dist/services/mobility.js.map +1 -0
  273. package/dist/services/panorama.d.ts +12 -1
  274. package/dist/services/panorama.d.ts.map +1 -1
  275. package/dist/services/panorama.js +63 -3
  276. package/dist/services/panorama.js.map +1 -1
  277. package/dist/services/photos.d.ts.map +1 -1
  278. package/dist/services/photos.js +3 -4
  279. package/dist/services/photos.js.map +1 -1
  280. package/dist/services/place-attributes.d.ts +31 -0
  281. package/dist/services/place-attributes.d.ts.map +1 -0
  282. package/dist/services/place-attributes.js +48 -0
  283. package/dist/services/place-attributes.js.map +1 -0
  284. package/dist/services/places.d.ts +13 -0
  285. package/dist/services/places.d.ts.map +1 -1
  286. package/dist/services/places.js +6 -4
  287. package/dist/services/places.js.map +1 -1
  288. package/dist/services/reviews.d.ts +11 -1
  289. package/dist/services/reviews.d.ts.map +1 -1
  290. package/dist/services/reviews.js +36 -12
  291. package/dist/services/reviews.js.map +1 -1
  292. package/dist/services/search-along-route.d.ts +33 -0
  293. package/dist/services/search-along-route.d.ts.map +1 -0
  294. package/dist/services/search-along-route.js +200 -0
  295. package/dist/services/search-along-route.js.map +1 -0
  296. package/dist/services/search.d.ts +23 -1
  297. package/dist/services/search.d.ts.map +1 -1
  298. package/dist/services/search.js +147 -3
  299. package/dist/services/search.js.map +1 -1
  300. package/dist/services/static-map.js +1 -1
  301. package/dist/services/static-map.js.map +1 -1
  302. package/dist/services/tiles.d.ts +39 -2
  303. package/dist/services/tiles.d.ts.map +1 -1
  304. package/dist/services/tiles.js +172 -13
  305. package/dist/services/tiles.js.map +1 -1
  306. package/dist/services/traffic.d.ts +12 -1
  307. package/dist/services/traffic.d.ts.map +1 -1
  308. package/dist/services/traffic.js +25 -2
  309. package/dist/services/traffic.js.map +1 -1
  310. package/dist/services/transit.d.ts +20 -3
  311. package/dist/services/transit.d.ts.map +1 -1
  312. package/dist/services/transit.js +69 -1
  313. package/dist/services/transit.js.map +1 -1
  314. package/dist/services/viewport.d.ts +76 -0
  315. package/dist/services/viewport.d.ts.map +1 -0
  316. package/dist/services/viewport.js +180 -0
  317. package/dist/services/viewport.js.map +1 -0
  318. package/dist/services/waypoint-optimizer.d.ts +31 -0
  319. package/dist/services/waypoint-optimizer.d.ts.map +1 -0
  320. package/dist/services/waypoint-optimizer.js +235 -0
  321. package/dist/services/waypoint-optimizer.js.map +1 -0
  322. package/dist/types/batch-url.d.ts +31 -0
  323. package/dist/types/batch-url.d.ts.map +1 -1
  324. package/dist/types/categories.d.ts +20 -4
  325. package/dist/types/categories.d.ts.map +1 -1
  326. package/dist/types/common.d.ts +162 -22
  327. package/dist/types/common.d.ts.map +1 -1
  328. package/dist/types/common.js +1 -1
  329. package/dist/types/common.js.map +1 -1
  330. package/dist/types/directions.d.ts +217 -3
  331. package/dist/types/directions.d.ts.map +1 -1
  332. package/dist/types/dx.d.ts +48 -3
  333. package/dist/types/dx.d.ts.map +1 -1
  334. package/dist/types/geocode.d.ts +61 -3
  335. package/dist/types/geocode.d.ts.map +1 -1
  336. package/dist/types/grid-search.d.ts +66 -0
  337. package/dist/types/grid-search.d.ts.map +1 -0
  338. package/dist/types/grid-search.js +2 -0
  339. package/dist/types/grid-search.js.map +1 -0
  340. package/dist/types/hooks.d.ts +3 -3
  341. package/dist/types/hooks.d.ts.map +1 -1
  342. package/dist/types/links.d.ts +3 -6
  343. package/dist/types/links.d.ts.map +1 -1
  344. package/dist/types/lists.d.ts +68 -3
  345. package/dist/types/lists.d.ts.map +1 -1
  346. package/dist/types/map-3d.d.ts +126 -0
  347. package/dist/types/map-3d.d.ts.map +1 -0
  348. package/dist/types/map-3d.js +2 -0
  349. package/dist/types/map-3d.js.map +1 -0
  350. package/dist/types/map-earth.d.ts +34 -0
  351. package/dist/types/map-earth.d.ts.map +1 -0
  352. package/dist/types/map-earth.js +2 -0
  353. package/dist/types/map-earth.js.map +1 -0
  354. package/dist/types/map-layers.d.ts +63 -0
  355. package/dist/types/map-layers.d.ts.map +1 -0
  356. package/dist/types/map-layers.js +2 -0
  357. package/dist/types/map-layers.js.map +1 -0
  358. package/dist/types/mobility.d.ts +121 -0
  359. package/dist/types/mobility.d.ts.map +1 -0
  360. package/dist/types/mobility.js +3 -0
  361. package/dist/types/mobility.js.map +1 -0
  362. package/dist/types/panorama.d.ts +104 -0
  363. package/dist/types/panorama.d.ts.map +1 -1
  364. package/dist/types/photos.d.ts +12 -0
  365. package/dist/types/photos.d.ts.map +1 -1
  366. package/dist/types/photos.js +2 -1
  367. package/dist/types/photos.js.map +1 -1
  368. package/dist/types/place-attributes.d.ts +15 -0
  369. package/dist/types/place-attributes.d.ts.map +1 -0
  370. package/dist/types/place-attributes.js +2 -0
  371. package/dist/types/place-attributes.js.map +1 -0
  372. package/dist/types/place-extended.d.ts +406 -0
  373. package/dist/types/place-extended.d.ts.map +1 -0
  374. package/dist/types/place-extended.js +18 -0
  375. package/dist/types/place-extended.js.map +1 -0
  376. package/dist/types/protobuf.d.ts +1 -1
  377. package/dist/types/protobuf.js +1 -1
  378. package/dist/types/reviews.d.ts +28 -0
  379. package/dist/types/reviews.d.ts.map +1 -1
  380. package/dist/types/reviews.js.map +1 -1
  381. package/dist/types/route-optimization.d.ts +56 -0
  382. package/dist/types/route-optimization.d.ts.map +1 -0
  383. package/dist/types/route-optimization.js +2 -0
  384. package/dist/types/route-optimization.js.map +1 -0
  385. package/dist/types/search-along-route.d.ts +49 -0
  386. package/dist/types/search-along-route.d.ts.map +1 -0
  387. package/dist/types/search-along-route.js +2 -0
  388. package/dist/types/search-along-route.js.map +1 -0
  389. package/dist/types/search-filters.d.ts +1 -1
  390. package/dist/types/search-filters.js +1 -1
  391. package/dist/types/suggest.d.ts +25 -2
  392. package/dist/types/suggest.d.ts.map +1 -1
  393. package/dist/types/tiles.d.ts +40 -0
  394. package/dist/types/tiles.d.ts.map +1 -1
  395. package/dist/types/traffic.d.ts +58 -1
  396. package/dist/types/traffic.d.ts.map +1 -1
  397. package/dist/types/transit.d.ts +160 -1
  398. package/dist/types/transit.d.ts.map +1 -1
  399. package/dist/types/transit.js +0 -1
  400. package/dist/types/transit.js.map +1 -1
  401. package/dist/types/viewport.d.ts +159 -0
  402. package/dist/types/viewport.d.ts.map +1 -0
  403. package/dist/types/viewport.js +3 -0
  404. package/dist/types/viewport.js.map +1 -0
  405. package/dist/utils/async.d.ts +44 -0
  406. package/dist/utils/async.d.ts.map +1 -0
  407. package/dist/utils/async.js +132 -0
  408. package/dist/utils/async.js.map +1 -0
  409. package/dist/utils/encoded-polyline.d.ts +43 -0
  410. package/dist/utils/encoded-polyline.d.ts.map +1 -1
  411. package/dist/utils/encoded-polyline.js +71 -0
  412. package/dist/utils/encoded-polyline.js.map +1 -1
  413. package/dist/utils/env.d.ts +6 -0
  414. package/dist/utils/env.d.ts.map +1 -0
  415. package/dist/utils/{load-env.js → env.js} +32 -7
  416. package/dist/utils/env.js.map +1 -0
  417. package/dist/utils/geo.d.ts +12 -0
  418. package/dist/utils/geo.d.ts.map +1 -1
  419. package/dist/utils/geo.js +20 -0
  420. package/dist/utils/geo.js.map +1 -1
  421. package/dist/utils/hooks.d.ts +2 -3
  422. package/dist/utils/hooks.d.ts.map +1 -1
  423. package/dist/utils/hooks.js +1 -1
  424. package/dist/utils/hooks.js.map +1 -1
  425. package/dist/utils/ids.d.ts +1 -0
  426. package/dist/utils/ids.d.ts.map +1 -1
  427. package/dist/utils/ids.js +10 -0
  428. package/dist/utils/ids.js.map +1 -1
  429. package/dist/utils/net.d.ts +46 -0
  430. package/dist/utils/net.d.ts.map +1 -0
  431. package/dist/utils/net.js +150 -0
  432. package/dist/utils/net.js.map +1 -0
  433. package/dist/utils/payload.d.ts +22 -0
  434. package/dist/utils/payload.d.ts.map +1 -0
  435. package/dist/utils/{chunked-decoder.js → payload.js} +80 -2
  436. package/dist/utils/payload.js.map +1 -0
  437. package/dist/utils/place-ref.d.ts +27 -0
  438. package/dist/utils/place-ref.d.ts.map +1 -1
  439. package/dist/utils/place-ref.js +45 -1
  440. package/dist/utils/place-ref.js.map +1 -1
  441. package/package.json +16 -7
  442. package/dist/client/product-namespaces.d.ts +0 -30
  443. package/dist/client/product-namespaces.d.ts.map +0 -1
  444. package/dist/client/product-namespaces.js +0 -47
  445. package/dist/client/product-namespaces.js.map +0 -1
  446. package/dist/parsers/elevation-directions.d.ts +0 -18
  447. package/dist/parsers/elevation-directions.d.ts.map +0 -1
  448. package/dist/parsers/elevation-directions.js +0 -102
  449. package/dist/parsers/elevation-directions.js.map +0 -1
  450. package/dist/parsers/passiveassist.d.ts +0 -10
  451. package/dist/parsers/passiveassist.d.ts.map +0 -1
  452. package/dist/parsers/passiveassist.js +0 -61
  453. package/dist/parsers/passiveassist.js.map +0 -1
  454. package/dist/parsers/review-aggregates.d.ts +0 -7
  455. package/dist/parsers/review-aggregates.d.ts.map +0 -1
  456. package/dist/parsers/review-aggregates.js +0 -18
  457. package/dist/parsers/review-aggregates.js.map +0 -1
  458. package/dist/parsers/review-client-filters.d.ts +0 -8
  459. package/dist/parsers/review-client-filters.d.ts.map +0 -1
  460. package/dist/parsers/review-client-filters.js +0 -28
  461. package/dist/parsers/review-client-filters.js.map +0 -1
  462. package/dist/parsers/search-client-filters.d.ts +0 -7
  463. package/dist/parsers/search-client-filters.d.ts.map +0 -1
  464. package/dist/parsers/search-client-filters.js +0 -44
  465. package/dist/parsers/search-client-filters.js.map +0 -1
  466. package/dist/parsers/search-pagination.d.ts +0 -12
  467. package/dist/parsers/search-pagination.d.ts.map +0 -1
  468. package/dist/parsers/search-pagination.js +0 -34
  469. package/dist/parsers/search-pagination.js.map +0 -1
  470. package/dist/parsers/timezone-geocode.d.ts +0 -20
  471. package/dist/parsers/timezone-geocode.d.ts.map +0 -1
  472. package/dist/parsers/timezone-geocode.js +0 -96
  473. package/dist/parsers/timezone-geocode.js.map +0 -1
  474. package/dist/parsers/ugc-aggregates.d.ts +0 -9
  475. package/dist/parsers/ugc-aggregates.d.ts.map +0 -1
  476. package/dist/parsers/ugc-aggregates.js +0 -23
  477. package/dist/parsers/ugc-aggregates.js.map +0 -1
  478. package/dist/rpc/app-options.d.ts +0 -25
  479. package/dist/rpc/app-options.d.ts.map +0 -1
  480. package/dist/rpc/app-options.js.map +0 -1
  481. package/dist/rpc/batchexecute-args.d.ts +0 -30
  482. package/dist/rpc/batchexecute-args.d.ts.map +0 -1
  483. package/dist/rpc/batchexecute-args.js +0 -35
  484. package/dist/rpc/batchexecute-args.js.map +0 -1
  485. package/dist/rpc/boq-reviews.d.ts +0 -16
  486. package/dist/rpc/boq-reviews.d.ts.map +0 -1
  487. package/dist/rpc/boq-reviews.js +0 -45
  488. package/dist/rpc/boq-reviews.js.map +0 -1
  489. package/dist/rpc/descriptor-registry.d.ts.map +0 -1
  490. package/dist/rpc/descriptor-registry.js +0 -47
  491. package/dist/rpc/descriptor-registry.js.map +0 -1
  492. package/dist/rpc/lists-pb.d.ts +0 -20
  493. package/dist/rpc/lists-pb.d.ts.map +0 -1
  494. package/dist/rpc/lists-pb.js +0 -20
  495. package/dist/rpc/lists-pb.js.map +0 -1
  496. package/dist/rpc/nxa.d.ts +0 -13
  497. package/dist/rpc/nxa.d.ts.map +0 -1
  498. package/dist/rpc/nxa.js +0 -44
  499. package/dist/rpc/nxa.js.map +0 -1
  500. package/dist/rpc/passiveassist-pb.d.ts +0 -21
  501. package/dist/rpc/passiveassist-pb.d.ts.map +0 -1
  502. package/dist/rpc/passiveassist-pb.js +0 -24
  503. package/dist/rpc/passiveassist-pb.js.map +0 -1
  504. package/dist/rpc/photo-category-tokens.d.ts +0 -29
  505. package/dist/rpc/photo-category-tokens.d.ts.map +0 -1
  506. package/dist/rpc/photo-category-tokens.js +0 -97
  507. package/dist/rpc/photo-category-tokens.js.map +0 -1
  508. package/dist/rpc/reveal-pb.d.ts +0 -26
  509. package/dist/rpc/reveal-pb.d.ts.map +0 -1
  510. package/dist/rpc/reveal-pb.js +0 -32
  511. package/dist/rpc/reveal-pb.js.map +0 -1
  512. package/dist/rpc/suggest-pb.d.ts +0 -34
  513. package/dist/rpc/suggest-pb.d.ts.map +0 -1
  514. package/dist/rpc/suggest-pb.js +0 -42
  515. package/dist/rpc/suggest-pb.js.map +0 -1
  516. package/dist/rpc/tiles-pb.d.ts +0 -45
  517. package/dist/rpc/tiles-pb.d.ts.map +0 -1
  518. package/dist/rpc/tiles-pb.js +0 -71
  519. package/dist/rpc/tiles-pb.js.map +0 -1
  520. package/dist/services/batch-url.d.ts +0 -18
  521. package/dist/services/batch-url.d.ts.map +0 -1
  522. package/dist/services/batch-url.js +0 -30
  523. package/dist/services/batch-url.js.map +0 -1
  524. package/dist/services/categories.d.ts +0 -21
  525. package/dist/services/categories.d.ts.map +0 -1
  526. package/dist/services/categories.js +0 -43
  527. package/dist/services/categories.js.map +0 -1
  528. package/dist/services/passiveassist.d.ts +0 -21
  529. package/dist/services/passiveassist.d.ts.map +0 -1
  530. package/dist/services/passiveassist.js +0 -70
  531. package/dist/services/passiveassist.js.map +0 -1
  532. package/dist/services/reveal.d.ts +0 -15
  533. package/dist/services/reveal.d.ts.map +0 -1
  534. package/dist/services/reveal.js +0 -41
  535. package/dist/services/reveal.js.map +0 -1
  536. package/dist/services/suggest.d.ts +0 -12
  537. package/dist/services/suggest.d.ts.map +0 -1
  538. package/dist/services/suggest.js +0 -36
  539. package/dist/services/suggest.js.map +0 -1
  540. package/dist/services/timezone.d.ts +0 -19
  541. package/dist/services/timezone.d.ts.map +0 -1
  542. package/dist/services/timezone.js +0 -91
  543. package/dist/services/timezone.js.map +0 -1
  544. package/dist/services/ugc-aggregates.d.ts +0 -17
  545. package/dist/services/ugc-aggregates.d.ts.map +0 -1
  546. package/dist/services/ugc-aggregates.js +0 -30
  547. package/dist/services/ugc-aggregates.js.map +0 -1
  548. package/dist/types/distance-matrix.d.ts +0 -40
  549. package/dist/types/distance-matrix.d.ts.map +0 -1
  550. package/dist/types/distance-matrix.js +0 -2
  551. package/dist/types/distance-matrix.js.map +0 -1
  552. package/dist/types/elevation.d.ts +0 -59
  553. package/dist/types/elevation.d.ts.map +0 -1
  554. package/dist/types/elevation.js +0 -2
  555. package/dist/types/elevation.js.map +0 -1
  556. package/dist/types/passiveassist.d.ts +0 -50
  557. package/dist/types/passiveassist.d.ts.map +0 -1
  558. package/dist/types/passiveassist.js +0 -2
  559. package/dist/types/passiveassist.js.map +0 -1
  560. package/dist/types/reveal.d.ts +0 -46
  561. package/dist/types/reveal.d.ts.map +0 -1
  562. package/dist/types/reveal.js +0 -2
  563. package/dist/types/reveal.js.map +0 -1
  564. package/dist/types/timezone.d.ts +0 -36
  565. package/dist/types/timezone.d.ts.map +0 -1
  566. package/dist/types/timezone.js +0 -2
  567. package/dist/types/timezone.js.map +0 -1
  568. package/dist/types/ugc-aggregates.d.ts +0 -14
  569. package/dist/types/ugc-aggregates.d.ts.map +0 -1
  570. package/dist/types/ugc-aggregates.js +0 -2
  571. package/dist/types/ugc-aggregates.js.map +0 -1
  572. package/dist/utils/abort.d.ts +0 -7
  573. package/dist/utils/abort.d.ts.map +0 -1
  574. package/dist/utils/abort.js +0 -43
  575. package/dist/utils/abort.js.map +0 -1
  576. package/dist/utils/chunked-decoder.d.ts +0 -9
  577. package/dist/utils/chunked-decoder.d.ts.map +0 -1
  578. package/dist/utils/chunked-decoder.js.map +0 -1
  579. package/dist/utils/coords.d.ts +0 -24
  580. package/dist/utils/coords.d.ts.map +0 -1
  581. package/dist/utils/coords.js +0 -37
  582. package/dist/utils/coords.js.map +0 -1
  583. package/dist/utils/feature-id.d.ts +0 -2
  584. package/dist/utils/feature-id.d.ts.map +0 -1
  585. package/dist/utils/feature-id.js +0 -11
  586. package/dist/utils/feature-id.js.map +0 -1
  587. package/dist/utils/load-env.d.ts +0 -7
  588. package/dist/utils/load-env.d.ts.map +0 -1
  589. package/dist/utils/load-env.js.map +0 -1
  590. package/dist/utils/pooled.d.ts +0 -8
  591. package/dist/utils/pooled.d.ts.map +0 -1
  592. package/dist/utils/pooled.js +0 -27
  593. package/dist/utils/pooled.js.map +0 -1
  594. package/dist/utils/request-context.d.ts +0 -9
  595. package/dist/utils/request-context.d.ts.map +0 -1
  596. package/dist/utils/request-context.js +0 -12
  597. package/dist/utils/request-context.js.map +0 -1
  598. package/dist/utils/request-scheduler.d.ts +0 -28
  599. package/dist/utils/request-scheduler.d.ts.map +0 -1
  600. package/dist/utils/request-scheduler.js +0 -58
  601. package/dist/utils/request-scheduler.js.map +0 -1
  602. package/dist/utils/response-parser.d.ts +0 -7
  603. package/dist/utils/response-parser.d.ts.map +0 -1
  604. package/dist/utils/response-parser.js +0 -50
  605. package/dist/utils/response-parser.js.map +0 -1
  606. package/dist/utils/retry-backoff.d.ts +0 -5
  607. package/dist/utils/retry-backoff.d.ts.map +0 -1
  608. package/dist/utils/retry-backoff.js +0 -23
  609. package/dist/utils/retry-backoff.js.map +0 -1
  610. package/dist/utils/safe-get.d.ts +0 -6
  611. package/dist/utils/safe-get.d.ts.map +0 -1
  612. package/dist/utils/safe-get.js +0 -29
  613. package/dist/utils/safe-get.js.map +0 -1
  614. package/dist/utils/throttle-detection.d.ts +0 -17
  615. package/dist/utils/throttle-detection.d.ts.map +0 -1
  616. package/dist/utils/throttle-detection.js +0 -71
  617. package/dist/utils/throttle-detection.js.map +0 -1
  618. package/dist/utils/ttl-cache.d.ts +0 -17
  619. package/dist/utils/ttl-cache.d.ts.map +0 -1
  620. package/dist/utils/ttl-cache.js +0 -43
  621. package/dist/utils/ttl-cache.js.map +0 -1
  622. /package/{assets → .github/assets}/banner.png +0 -0
package/dist/cli.js CHANGED
@@ -1,146 +1,70 @@
1
1
  #!/usr/bin/env node
2
2
  /**
3
- * Intent CLI — pretty tables on TTY, JSON when piped.
4
- *
5
- * npx googlemaps-kit discover "cafes" --near 12.98,77.64
6
- * npx googlemaps-kit resolve --query "Cubbon Park Bangalore"
7
- * npx googlemaps-kit profile --query "Third Wave Coffee Indiranagar" --near 12.98,77.64
8
- * npx googlemaps-kit route --from "Cubbon Park, Bangalore" --to "Indiranagar, Bangalore"
9
- * npx googlemaps-kit opinions --query "Third Wave Coffee Indiranagar" --near 12.98,77.64
10
- * npx googlemaps-kit media --query "Cubbon Park Bangalore"
11
- * npx googlemaps-kit pipeline "cafes" --near 12.98,77.64 --max 3
12
- * npx googlemaps-kit capabilities
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 { defaultFormat, printDiscover, printJson, printMedia, printOpinions, printProfile, printResolved, printRoute, } from './cli/format.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';
8
+ import { runTui } from './cli/tui/app.js';
9
+ import { getPackageVersion } from './utils/env.js';
16
10
  function usage(exit = 1) {
17
- console.error(`googlemaps-kit — Intent CLI
11
+ console.error(`googlemaps-kit — Intent CLI + TUI
18
12
 
19
- Usage:
20
- googlemaps-kit discover <query> --near <lat,lng> [options]
21
- googlemaps-kit resolve --query <text> [--near <lat,lng>] | --url <maps-url>
22
- googlemaps-kit profile <hexId> | --query <text> --near <lat,lng> [--depth card|full|complete]
23
- googlemaps-kit route --from <address|lat,lng> --to <address|lat,lng> [--mode driving|walking|…]
24
- googlemaps-kit opinions <hexId> | --query <text> --near <lat,lng> [--pages N] [--limit N]
25
- googlemaps-kit media <hexId> | --query <text> [--near <lat,lng>] [--limit N]
26
- googlemaps-kit pipeline <query> --near <lat,lng> [--max N] [--profile card|full|false] [--opinions]
13
+ Interactive:
14
+ googlemaps-kit launch TUI (TTY)
15
+ googlemaps-kit tui launch TUI
16
+
17
+ Commands:
18
+ googlemaps-kit discover <query> --near <lat,lng> [--mode fast|full] [--limit N]
19
+ googlemaps-kit grid <query> (--bounds <N,S,E,W> | --near <lat,lng> [--span km]) [options]
20
+ googlemaps-kit resolve (--query <text> | --url <maps-url>) [--near <lat,lng>]
21
+ googlemaps-kit profile (<hexId> | --query <text> --near <lat,lng>) [--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>) [--pages N] [--limit N] [--aggregates]
24
+ googlemaps-kit media (<hexId> | --query <text> [--near <lat,lng>]) [--limit N]
25
+ googlemaps-kit geocode <address> | geocode --reverse <lat,lng>
26
+ googlemaps-kit streetview (--at <lat,lng> | "<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> [--max N] [--profile card|full|complete|false] [--opinions]
27
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)
28
38
 
29
39
  Global:
30
40
  --format table|pretty|json|csv|geojson (default: table/pretty on TTY, json when piped)
31
41
  --json shorthand for --format json
42
+ --no-anim disable TUI animations (auto-off with NO_COLOR / TERM=dumb)
32
43
  --hl <lang> --gl <region> locale (or GMAPS_HL / GMAPS_GL)
44
+ -h, --help show this help
45
+ -v, --version print the installed version
33
46
 
34
- Discover:
35
- --mode fast|full --limit N --format csv|geojson
36
-
37
- Route:
38
- --from / --to accept place names ("Cubbon Park, Bangalore") or coordinates
47
+ Piping sends JSON by default — safe to feed straight into jq or an agent.
48
+ TUI built with Bubble Tea (charmbracelet) via @oakoliver/bubbletea.
39
49
  `);
40
50
  process.exit(exit);
41
51
  }
42
- function flag(args, name) {
43
- const i = args.indexOf(name);
44
- if (i < 0)
45
- return undefined;
46
- return args[i + 1];
47
- }
48
- function has(args, name) {
49
- return args.includes(name);
50
- }
51
- const VALUE_FLAGS = new Set([
52
- '--near',
53
- '--from',
54
- '--to',
55
- '--mode',
56
- '--limit',
57
- '--format',
58
- '--depth',
59
- '--query',
60
- '--url',
61
- '--name',
62
- '--pages',
63
- '--max',
64
- '--profile',
65
- '--hl',
66
- '--gl',
67
- ]);
68
- /** First non-flag token that is not a value for a preceding option. */
69
- function positional(args) {
70
- for (let i = 0; i < args.length; i++) {
71
- const a = args[i];
72
- if (a.startsWith('-')) {
73
- if (VALUE_FLAGS.has(a))
74
- i += 1;
75
- continue;
76
- }
77
- return a;
78
- }
79
- return undefined;
80
- }
81
- function parseCoords(value) {
82
- if (!value)
83
- return undefined;
84
- const [a, b] = value.split(',').map((s) => Number(s.trim()));
85
- if (a == null || b == null || Number.isNaN(a) || Number.isNaN(b)) {
86
- throw new Error(`Invalid coordinates: ${value} (expected lat,lng)`);
87
- }
88
- return { lat: a, lng: b };
89
- }
90
- /** Address string or lat,lng — for route endpoints. */
91
- function parseEndpoint(value) {
92
- if (!value)
93
- throw new Error('Missing endpoint');
94
- if (/^-?\d+(\.\d+)?\s*,\s*-?\d+(\.\d+)?$/.test(value.trim())) {
95
- return parseCoords(value);
96
- }
97
- return value.trim();
98
- }
99
- function resolveFormat(args, kind) {
100
- if (has(args, '--json'))
101
- return 'json';
102
- const raw = flag(args, '--format');
103
- if (!raw)
104
- return defaultFormat(kind);
105
- const allowed = ['table', 'pretty', 'json', 'csv', 'geojson'];
106
- if (!allowed.includes(raw)) {
107
- throw new Error(`Invalid --format ${raw} (expected ${allowed.join('|')})`);
108
- }
109
- return raw;
110
- }
111
- async function placeFromArgs(maps, args) {
112
- const hexId = positional(args);
113
- const query = flag(args, '--query');
114
- const name = flag(args, '--name');
115
- const near = parseCoords(flag(args, '--near'));
116
- if (hexId && !hexId.includes(' ') && (hexId.includes('0x') || hexId.startsWith('ChIJ'))) {
117
- return { hexId, name };
118
- }
119
- // Positional hex-like without 0x still allowed (legacy)
120
- if (hexId && !query && /^[0-9a-fx:]+$/i.test(hexId)) {
121
- return { hexId, name };
122
- }
123
- const q = query ?? (hexId && hexId.includes(' ') ? hexId : undefined);
124
- if (!q) {
125
- console.error('Need a place: pass <hexId> or --query "Place name" [--near lat,lng]');
126
- usage();
127
- }
128
- const resolved = await maps.resolve({ query: q, near });
129
- if (!resolved.hexId) {
130
- throw new Error(`Could not resolve a place id for: ${q}`);
131
- }
132
- return {
133
- hexId: resolved.hexId,
134
- name: resolved.name ?? name,
135
- lat: resolved.lat,
136
- lng: resolved.lng,
137
- placeId: resolved.placeId,
138
- };
139
- }
140
52
  async function main() {
141
53
  const argv = process.argv.slice(2);
142
- if (argv.length === 0 || has(argv, '-h') || has(argv, '--help'))
54
+ if (has(argv, '-v') || has(argv, '--version') || argv[0] === 'version') {
55
+ console.log(getPackageVersion());
56
+ return;
57
+ }
58
+ if (has(argv, '-h') || has(argv, '--help'))
143
59
  usage(0);
60
+ if (argv.length === 0 || argv[0] === 'tui' || argv[0] === 'ui') {
61
+ if (!process.stdin.isTTY || !process.stdout.isTTY) {
62
+ console.error('TUI requires an interactive terminal. Use a subcommand or --help.');
63
+ process.exit(1);
64
+ }
65
+ await runTui(undefined, { anim: !has(argv, '--no-anim') });
66
+ return;
67
+ }
144
68
  const cmd = argv[0];
145
69
  const rest = argv.slice(1);
146
70
  const maps = sdk({
@@ -150,39 +74,57 @@ async function main() {
150
74
  gl: flag(rest, '--gl') ?? process.env.GMAPS_GL,
151
75
  },
152
76
  });
77
+ const tty = Boolean(process.stdout.isTTY);
153
78
  if (cmd === 'discover') {
154
79
  const query = positional(rest);
155
80
  if (!query)
156
81
  usage();
157
- const near = parseCoords(flag(rest, '--near'));
82
+ const near = flag(rest, '--near');
158
83
  if (!near) {
159
84
  console.error('discover requires --near lat,lng');
160
85
  usage();
161
86
  }
162
- const mode = flag(rest, '--mode') ?? 'fast';
163
- const limit = flag(rest, '--limit') ? Number(flag(rest, '--limit')) : undefined;
164
- const format = resolveFormat(rest, 'rows');
165
- const result = await maps.discover({ query, near, mode, limit });
166
- printDiscover(result, format);
87
+ const format = resolveFormat(rest, 'rows', tty);
88
+ const text = await runDiscover(maps, {
89
+ query,
90
+ near,
91
+ mode: flag(rest, '--mode') ?? 'fast',
92
+ limit: numberFlag(rest, '--limit'),
93
+ format,
94
+ });
95
+ emit(text);
167
96
  return;
168
97
  }
169
98
  if (cmd === 'resolve') {
170
99
  const query = flag(rest, '--query') ?? positional(rest);
171
100
  const url = flag(rest, '--url');
172
- const near = parseCoords(flag(rest, '--near'));
173
101
  if (!query && !url)
174
102
  usage();
175
- const format = resolveFormat(rest, 'card');
176
- const result = await maps.resolve({ query, url, near });
177
- printResolved(result, format);
103
+ const format = resolveFormat(rest, 'card', tty);
104
+ const text = await runResolve(maps, {
105
+ query,
106
+ url,
107
+ near: flag(rest, '--near'),
108
+ format,
109
+ });
110
+ emit(text);
178
111
  return;
179
112
  }
180
113
  if (cmd === 'profile') {
181
114
  const depth = flag(rest, '--depth') ?? 'card';
182
- const format = resolveFormat(rest, 'card');
183
- const ref = await placeFromArgs(maps, rest);
184
- const result = await maps.profile(ref, { depth });
185
- printProfile(result, format);
115
+ const format = resolveFormat(rest, 'card', tty);
116
+ const hexId = positional(rest);
117
+ const query = flag(rest, '--query') ?? (hexId && hexId.includes(' ') ? hexId : undefined);
118
+ const id = query ? undefined : hexId;
119
+ const text = await runProfile(maps, {
120
+ hexId: id,
121
+ query,
122
+ near: flag(rest, '--near'),
123
+ name: flag(rest, '--name'),
124
+ depth,
125
+ format,
126
+ });
127
+ emit(text);
186
128
  return;
187
129
  }
188
130
  if (cmd === 'route') {
@@ -190,96 +132,144 @@ async function main() {
190
132
  const toRaw = flag(rest, '--to');
191
133
  if (!fromRaw || !toRaw)
192
134
  usage();
193
- const from = parseEndpoint(fromRaw);
194
- const to = parseEndpoint(toRaw);
195
- const mode = flag(rest, '--mode');
196
- const format = resolveFormat(rest, 'card');
197
- const result = await maps.route({ from, to, mode });
198
- const label = typeof from === 'string' && typeof to === 'string' ? `${from} → ${to}` : undefined;
199
- printRoute(result, format, label);
135
+ const format = resolveFormat(rest, 'card', tty);
136
+ const text = await runRoute(maps, {
137
+ from: fromRaw,
138
+ to: toRaw,
139
+ mode: flag(rest, '--mode'),
140
+ format,
141
+ });
142
+ emit(text);
200
143
  return;
201
144
  }
202
145
  if (cmd === 'opinions') {
203
- const pages = flag(rest, '--pages') ? Number(flag(rest, '--pages')) : 1;
204
- const limit = flag(rest, '--limit') ? Number(flag(rest, '--limit')) : 5;
205
- const includeAggregates = has(rest, '--aggregates');
206
- const format = resolveFormat(rest, 'rows');
207
- const ref = await placeFromArgs(maps, rest);
208
- const result = await maps.opinions(ref, { pages, limit, includeAggregates });
209
- printOpinions(result, format);
146
+ const format = resolveFormat(rest, 'rows', tty);
147
+ const hexId = positional(rest);
148
+ const query = flag(rest, '--query') ?? (hexId && hexId.includes(' ') ? hexId : undefined);
149
+ const text = await runOpinions(maps, {
150
+ hexId: query ? undefined : hexId,
151
+ query,
152
+ near: flag(rest, '--near'),
153
+ pages: numberFlag(rest, '--pages') ?? 1,
154
+ limit: numberFlag(rest, '--limit') ?? 5,
155
+ aggregates: has(rest, '--aggregates'),
156
+ format,
157
+ });
158
+ emit(text);
210
159
  return;
211
160
  }
212
161
  if (cmd === 'media') {
213
- const format = resolveFormat(rest, 'card');
214
- const ref = await placeFromArgs(maps, rest);
215
- const pageSize = flag(rest, '--limit') ? Number(flag(rest, '--limit')) : 8;
216
- const result = await maps.media(ref, { pageSize });
217
- printMedia(result, format);
162
+ const format = resolveFormat(rest, 'card', tty);
163
+ const hexId = positional(rest);
164
+ const query = flag(rest, '--query') ?? (hexId && hexId.includes(' ') ? hexId : undefined);
165
+ const text = await runMedia(maps, {
166
+ hexId: query ? undefined : hexId,
167
+ query,
168
+ near: flag(rest, '--near'),
169
+ limit: numberFlag(rest, '--limit') ?? 8,
170
+ format,
171
+ });
172
+ emit(text);
218
173
  return;
219
174
  }
220
175
  if (cmd === 'pipeline') {
221
176
  const query = positional(rest);
222
177
  if (!query)
223
178
  usage();
224
- const near = parseCoords(flag(rest, '--near'));
179
+ const near = flag(rest, '--near');
225
180
  if (!near) {
226
181
  console.error('pipeline requires --near lat,lng');
227
182
  usage();
228
183
  }
229
- const maxPlaces = flag(rest, '--max') ? Number(flag(rest, '--max')) : 3;
230
184
  const profileFlag = flag(rest, '--profile') ?? 'card';
231
- const profile = profileFlag === 'false' ? false : { depth: profileFlag };
232
- const opinions = has(rest, '--opinions') ? { pages: 1, limit: 3 } : false;
233
- const format = resolveFormat(rest, 'rows');
234
- const result = await maps.pipeline({
235
- discover: { query, near, mode: 'fast' },
236
- maxPlaces,
237
- profile,
238
- opinions,
185
+ const format = resolveFormat(rest, 'rows', tty);
186
+ const text = await runPipeline(maps, {
187
+ query,
188
+ near,
189
+ max: numberFlag(rest, '--max') ?? 3,
190
+ profile: profileFlag === 'false' ? false : profileFlag,
191
+ opinions: has(rest, '--opinions'),
192
+ format,
239
193
  });
240
- if (format === 'json') {
241
- printJson(result);
242
- return;
243
- }
244
- // Compact table of pipeline rows
245
- const lines = [`pipeline · ${result.places.length} places · ${Math.round(result.timingMs)}ms`, '─'.repeat(56)];
246
- for (const row of result.places) {
247
- const p = row.profile?.place ?? row.hit;
248
- const rating = p.rating != null ? `★ ${p.rating.toFixed(1)}` : '★ —';
249
- const reviews = p.reviewCount != null ? `(${p.reviewCount})` : '';
250
- lines.push(`${p.name ?? '—'} ${rating} ${reviews}`.trim());
251
- if (p.address)
252
- lines.push(` ${p.address}`);
253
- if (row.opinions?.reviews?.[0]?.textPreview ?? row.opinions?.reviews?.[0]?.text) {
254
- const t = (row.opinions.reviews[0].textPreview ?? row.opinions.reviews[0].text ?? '')
255
- .replace(/\s+/g, ' ')
256
- .trim()
257
- .slice(0, 70);
258
- if (t)
259
- lines.push(` “${t}${t.length >= 70 ? '…' : ''}”`);
260
- }
261
- lines.push('');
262
- }
263
- console.log(lines.join('\n').trimEnd());
194
+ emit(text);
264
195
  return;
265
196
  }
266
197
  if (cmd === 'capabilities') {
267
- const caps = await maps.capabilities();
268
- const format = resolveFormat(rest, 'card');
269
- if (format === 'json') {
270
- printJson(caps);
271
- return;
198
+ const format = resolveFormat(rest, 'card', tty);
199
+ const text = await runCapabilities(maps, { format });
200
+ emit(text);
201
+ return;
202
+ }
203
+ if (cmd === 'grid') {
204
+ const query = positional(rest);
205
+ if (!query)
206
+ usage();
207
+ const near = flag(rest, '--near');
208
+ const boundsRaw = flag(rest, '--bounds');
209
+ if (!near && !boundsRaw) {
210
+ console.error('grid requires --bounds "N,S,E,W" or --near lat,lng');
211
+ usage();
272
212
  }
273
- const lines = [
274
- `session ${caps.session}${caps.signedIn ? ' (signed in)' : ''}`,
275
- `search yes`,
276
- `details yes`,
277
- `reviews boq${caps.reviewsRpc ? ' + rpc' : ''}`,
278
- `photos yes`,
279
- `directions yes`,
280
- `askMaps ${caps.askMaps ? 'yes' : 'no (needs cookies)'}`,
281
- ];
282
- console.log(lines.join('\n'));
213
+ const format = resolveFormat(rest, 'rows', tty);
214
+ const text = await runGrid(maps, {
215
+ query,
216
+ near: near ?? undefined,
217
+ spanKm: numberFlag(rest, '--span'),
218
+ bounds: parseBounds(boundsRaw),
219
+ cellZoom: numberFlag(rest, '--cell-zoom'),
220
+ maxResults: numberFlag(rest, '--max-results'),
221
+ maxCells: numberFlag(rest, '--max-cells'),
222
+ pagesPerCell: numberFlag(rest, '--pages-per-cell'),
223
+ format,
224
+ });
225
+ emit(text);
226
+ return;
227
+ }
228
+ if (cmd === 'geocode') {
229
+ const query = positional(rest);
230
+ const reverse = flag(rest, '--reverse');
231
+ if (!query && !reverse)
232
+ usage();
233
+ const format = resolveFormat(rest, 'card', tty);
234
+ const text = await runGeocode(maps, { query, reverse, format });
235
+ emit(text);
236
+ return;
237
+ }
238
+ if (cmd === 'streetview') {
239
+ const at = flag(rest, '--at');
240
+ const place = positional(rest);
241
+ if (!at && !place)
242
+ usage();
243
+ const format = resolveFormat(rest, 'card', tty);
244
+ const text = await runStreetView(maps, {
245
+ at: at ?? undefined,
246
+ query: at ? undefined : place,
247
+ radiusMeters: numberFlag(rest, '--radius-meters'),
248
+ format,
249
+ });
250
+ emit(text);
251
+ return;
252
+ }
253
+ if (cmd === 'terrain' || cmd === 'map3d') {
254
+ const boundsRaw = flag(rest, '--bounds');
255
+ if (!boundsRaw)
256
+ usage();
257
+ const format = resolveFormat(rest, 'card', tty);
258
+ const text = await runTerrain(maps, {
259
+ bounds: parseBounds(boundsRaw),
260
+ planet: flag(rest, '--planet'),
261
+ resolution: flag(rest, '--resolution'),
262
+ detail: flag(rest, '--detail'),
263
+ out: flag(rest, '--out'),
264
+ format,
265
+ });
266
+ emit(text);
267
+ return;
268
+ }
269
+ if (cmd === 'surfaces') {
270
+ const format = resolveFormat(rest, 'rows', tty);
271
+ const text = await runSurfaces(maps, { status: flag(rest, '--status'), format });
272
+ emit(text);
283
273
  return;
284
274
  }
285
275
  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,8 +1,7 @@
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';
2
+ import { AgentNamespace, AuthNamespace, LocationNamespace, MapNamespace, MetaNamespace, PlacesNamespace, SurfacesNamespace, TravelNamespace } from './namespaces.js';
4
3
  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';
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
6
  export interface EnrichSearchOptions extends SearchOptions {
8
7
  /**
@@ -88,6 +87,12 @@ export declare class GMapsClient {
88
87
  mediaMany(refs: PlaceRef[], options?: MediaManyOptions): Promise<MediaResult[]>;
89
88
  /** Discover → profile → optional opinions pipeline. */
90
89
  pipeline(options: PipelineOptions): Promise<PipelineResult>;
90
+ /**
91
+ * Area-coverage search: split a bounding box into zoom cells and merge the
92
+ * per-cell results, deduped. Beats single-query pagination caps in dense
93
+ * cities — pass `bounds`, or `near` + `spanKm` (default 3 km square).
94
+ */
95
+ grid(options: GridOptions): Promise<GridResult>;
91
96
  /** Ready-made Intent tools for agents. */
92
97
  tools(options?: CreateMapsToolsOptions): MapsTools;
93
98
  /** Clear Intent TTL cache (no-op when cache disabled). */
@@ -1 +1 @@
1
- {"version":3,"file":"gmaps-client.d.ts","sourceRoot":"","sources":["../../src/client/gmaps-client.ts"],"names":[],"mappings":"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"}
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,EACd,aAAa,EAEb,iBAAiB,EACjB,YAAY,EACZ,aAAa,EACb,eAAe,EACf,iBAAiB,EACjB,eAAe,EAEhB,MAAM,iBAAiB,CAAC;AAEzB,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,WAAW,EACX,UAAU,EACV,cAAc,EACd,YAAY,EACZ,QAAQ,EACR,kBAAkB,EAClB,cAAc,EACd,cAAc,EACd,aAAa,EACb,YAAY,EACZ,WAAW,EAEZ,MAAM,gBAAgB,CAAC;AAGxB,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;;;;OAIG;IACG,IAAI,CAAC,OAAO,EAAE,WAAW,GAAG,OAAO,CAAC,UAAU,CAAC;IAmCrD,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;IAoBjD,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,11 +1,11 @@
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';
4
+ import { AgentNamespace, AuthNamespace, createServiceBundle, LocationNamespace, MapNamespace, MetaNamespace, PlacesNamespace, SurfacesNamespace, TravelNamespace, } from './namespaces.js';
6
5
  import { searchResultToPlaceDetails } from '../services/search.js';
7
- import { GMapsAuthError } from '../types/common.js';
8
- import { TtlCache } from '../utils/ttl-cache.js';
6
+ import { GMapsAuthError, GMapsError } from '../types/common.js';
7
+ import { TtlCache } from '../utils/async.js';
8
+ import { boundsAround } from '../utils/geo.js';
9
9
  import { createMapsTools } from './maps-tools.js';
10
10
  loadProjectEnv();
11
11
  function normalizeConfig(config = {}) {
@@ -158,6 +158,43 @@ export class GMapsClient {
158
158
  pipeline(options) {
159
159
  return this.intent.pipeline(options);
160
160
  }
161
+ /**
162
+ * Area-coverage search: split a bounding box into zoom cells and merge the
163
+ * per-cell results, deduped. Beats single-query pagination caps in dense
164
+ * cities — pass `bounds`, or `near` + `spanKm` (default 3 km square).
165
+ */
166
+ async grid(options) {
167
+ const start = performance.now();
168
+ const bounds = options.bounds ??
169
+ (options.near
170
+ ? boundsAround(options.near.lat, options.near.lng, options.spanKm ?? 3)
171
+ : undefined);
172
+ if (!bounds) {
173
+ throw new GMapsError('grid() requires bounds or near (+ optional spanKm)');
174
+ }
175
+ const { onProgress } = options;
176
+ const result = await this.services.search.gridSearch({
177
+ ...options,
178
+ bounds,
179
+ onProgress: onProgress
180
+ ? (p) => onProgress({
181
+ type: 'grid',
182
+ index: p.cell,
183
+ total: p.totalCells,
184
+ loaded: p.uniqueResults,
185
+ key: `${p.x}/${p.y}`,
186
+ })
187
+ : undefined,
188
+ });
189
+ return {
190
+ places: result.results,
191
+ cellsSearched: result.cellsSearched,
192
+ cellsTotal: result.cellsTotal,
193
+ requestsMade: result.requestsMade,
194
+ cellZoom: result.cellZoom,
195
+ timingMs: performance.now() - start,
196
+ };
197
+ }
161
198
  /** Ready-made Intent tools for agents. */
162
199
  tools(options) {
163
200
  return createMapsTools(this, options);
@@ -183,6 +220,7 @@ export class GMapsClient {
183
220
  askMapsHistory: signedIn,
184
221
  privateLists: signedIn,
185
222
  legacyRpc: signedIn,
223
+ userPrefs: signedIn,
186
224
  };
187
225
  }
188
226
  isSignedIn() {