@esri/arcgis-rest-places 1.0.0 → 1.0.2

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 (37) hide show
  1. package/README.md +8 -12
  2. package/dist/bundled/places.esm.js +14 -18
  3. package/dist/bundled/places.esm.js.map +1 -1
  4. package/dist/bundled/places.esm.min.js +4 -4
  5. package/dist/bundled/places.esm.min.js.map +1 -1
  6. package/dist/bundled/places.umd.js +14 -18
  7. package/dist/bundled/places.umd.js.map +1 -1
  8. package/dist/bundled/places.umd.min.js +4 -4
  9. package/dist/bundled/places.umd.min.js.map +1 -1
  10. package/dist/cjs/findPlacesNearPoint.js +3 -5
  11. package/dist/cjs/findPlacesNearPoint.js.map +1 -1
  12. package/dist/cjs/findPlacesWithinExtent.js +4 -6
  13. package/dist/cjs/findPlacesWithinExtent.js.map +1 -1
  14. package/dist/cjs/getCategory.js +1 -1
  15. package/dist/cjs/getCategory.js.map +1 -1
  16. package/dist/cjs/getPlaceDetails.js +1 -1
  17. package/dist/cjs/getPlaceDetails.js.map +1 -1
  18. package/dist/cjs/openapi-types.js.map +1 -1
  19. package/dist/cjs/utils.js +2 -2
  20. package/dist/cjs/utils.js.map +1 -1
  21. package/dist/esm/findPlacesNearPoint.d.ts +3 -5
  22. package/dist/esm/findPlacesNearPoint.js +3 -5
  23. package/dist/esm/findPlacesNearPoint.js.map +1 -1
  24. package/dist/esm/findPlacesWithinExtent.d.ts +4 -6
  25. package/dist/esm/findPlacesWithinExtent.js +4 -6
  26. package/dist/esm/findPlacesWithinExtent.js.map +1 -1
  27. package/dist/esm/getCategory.d.ts +1 -1
  28. package/dist/esm/getCategory.js +1 -1
  29. package/dist/esm/getCategory.js.map +1 -1
  30. package/dist/esm/getPlaceDetails.d.ts +1 -1
  31. package/dist/esm/getPlaceDetails.js +1 -1
  32. package/dist/esm/getPlaceDetails.js.map +1 -1
  33. package/dist/esm/openapi-types.d.ts +341 -164
  34. package/dist/esm/openapi-types.js.map +1 -1
  35. package/dist/esm/utils.js +2 -2
  36. package/dist/esm/utils.js.map +1 -1
  37. package/package.json +1 -1
@@ -21,11 +21,9 @@ const utils_js_1 = require("./utils.js");
21
21
  * - A partial name filter with `name` option
22
22
  *
23
23
  * As this request can return many results, pagination is supported.
24
- * Regardless of paging, the maximum number of places that can be returned
25
- * by a single query is `200`. When a query results in more than `200`
26
- * places, the response will contain the property
27
- * `"maxResultsExceeded":true` in addition to place results. If `maxResultsExceeded`
28
- * is true an additional method `response.nextPage()` can be used to get the next page of results.
24
+ * When a query results in more than [pageSize] places, the response will contain the property
25
+ * `pagination` in addition to place results. If `pagination` exists, an additional method
26
+ * `response.nextPage()` can be used to get the next page of results.
29
27
  *
30
28
  * ```js
31
29
  * import { findPlacesNearPoint } from "@esri/arcgis-rest-places";
@@ -1 +1 @@
1
- {"version":3,"file":"findPlacesNearPoint.js","sourceRoot":"","sources":["../../src/findPlacesNearPoint.ts"],"names":[],"mappings":";;;AAAA,mEAImC;AAGnC,yCAAqE;AA2BrE;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAqCG;AACH,SAAgB,mBAAmB,CACjC,cAA2C;IAE3C,MAAM,OAAO,GAAG,IAAA,wCAAkB,EAChC,cAAc,EACd,CAAC,GAAG,EAAE,GAAG,EAAE,QAAQ,EAAE,aAAa,EAAE,UAAU,EAAE,QAAQ,EAAE,YAAY,CAAC,oBAElE,cAAc,EAEpB,CAAC;IAEF,OACE,IAAA,6BAAO,EAAC,GAAG,kBAAO,oBAAoB,kCACjC,OAAO,KACV,UAAU,EAAE,KAAK,IAEpB,CAAC,IAAI,CAAC,CAAC,QAAQ,EAAE,EAAE;QAClB,MAAM,CAAC,qBACF,QAAQ,CACZ,CAAC;QAEF,IAAI,IAAA,sBAAW,EAAC,QAAQ,CAAC,EAAE;YACzB,CAAC,CAAC,QAAQ,GAAG,GAAG,EAAE;gBAChB,MAAM,WAAW,mCACZ,cAAc,GACd,IAAA,4BAAiB,EAAC,cAAc,CAAC,MAAM,EAAE,cAAc,CAAC,QAAQ,CAAC,CACrE,CAAC;gBACF,OAAO,mBAAmB,CAAC,WAAW,CAAC,CAAC;YAC1C,CAAC,CAAC;SACH;QAED,OAAO,CAAC,CAAC;IACX,CAAC,CAAC,CAAC;AACL,CAAC;AAjCD,kDAiCC","sourcesContent":["import {\n request,\n appendCustomParams,\n IRequestOptions\n} from \"@esri/arcgis-rest-request\";\n\nimport { operations } from \"./openapi-types.js\";\nimport { baseUrl, hasNextPage, getNextPageParams } from \"./utils.js\";\n\n// determine the list of allowed params we want to allow as options\n// this should match the array given to appendCustomParams below\ntype queryParams = Pick<\n operations[\"nearPointGet\"][\"parameters\"][\"query\"],\n \"x\" | \"y\" | \"radius\" | \"categoryIds\" | \"pageSize\" | \"offset\" | \"searchText\"\n>;\n\n// get the correct type of the response format\ntype successResponse =\n operations[\"nearPointGet\"][\"responses\"][\"200\"][\"content\"][\"application/json\"];\n\n/**\n * The response format for {@linkcode findPlacesNearPoint};\n */\nexport interface IFindPlacesNearPointResponse extends successResponse {\n nextPage?: () => Promise<IFindPlacesNearPointResponse>;\n}\n\n/**\n * Options for {@linkcode findPlacesNearPoint}.\n */\nexport interface IFindPlacesNearPointOptions\n extends Omit<IRequestOptions, \"httpMethod\" | \"f\">,\n queryParams {}\n\n/**\n * Searches places that are within a given radius of a geographic point.\n * You must supply the `x` and `y` coordinates of the point that you wish\n * to search from. You can either specify a search radius, or use the\n * default (500 meters). You could use this method to search for places\n * around a user's GPS position, or a location clicked on a map.\n *\n * The returned places contain basic data such as name, category and\n * location. You can use the {@linkcode getPlace} method to get additional\n * details for a given place.\n *\n * You can refine the results by supplying additional search parameters,\n * including:\n *\n * - A list of category Ids, see {@linkcode searchCategories} or {@linkcode getCategories}.\n * - A partial name filter with `name` option\n *\n * As this request can return many results, pagination is supported.\n * Regardless of paging, the maximum number of places that can be returned\n * by a single query is `200`. When a query results in more than `200`\n * places, the response will contain the property\n * `\"maxResultsExceeded\":true` in addition to place results. If `maxResultsExceeded`\n * is true an additional method `response.nextPage()` can be used to get the next page of results.\n *\n * ```js\n * import { findPlacesNearPoint } from \"@esri/arcgis-rest-places\";\n * import { ApiKeyManager } from \"@esri/arcgis-rest-request\";\n *\n * const response = await findPlacesNearPoint({\n * x: -3.1883,\n * y: 55.9533,\n * radius: 100,\n * authentication: ApiKeyManager.fromKey(\"YOUR_API_KEY\");\n * });\n *\n * console.log(response);\n * ```\n */\nexport function findPlacesNearPoint(\n requestOptions: IFindPlacesNearPointOptions\n): Promise<IFindPlacesNearPointResponse> {\n const options = appendCustomParams<IFindPlacesNearPointOptions>(\n requestOptions,\n [\"x\", \"y\", \"radius\", \"categoryIds\", \"pageSize\", \"offset\", \"searchText\"],\n {\n ...requestOptions\n }\n );\n\n return (\n request(`${baseUrl}/places/near-point`, {\n ...options,\n httpMethod: \"GET\"\n }) as Promise<successResponse>\n ).then((response) => {\n const r: IFindPlacesNearPointResponse = {\n ...response\n };\n\n if (hasNextPage(response)) {\n r.nextPage = () => {\n const nextOptions = {\n ...requestOptions,\n ...getNextPageParams(requestOptions.offset, requestOptions.pageSize)\n };\n return findPlacesNearPoint(nextOptions);\n };\n }\n\n return r;\n });\n}\n"]}
1
+ {"version":3,"file":"findPlacesNearPoint.js","sourceRoot":"","sources":["../../src/findPlacesNearPoint.ts"],"names":[],"mappings":";;;AAAA,mEAImC;AAGnC,yCAAqE;AA2BrE;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAmCG;AACH,SAAgB,mBAAmB,CACjC,cAA2C;IAE3C,MAAM,OAAO,GAAG,IAAA,wCAAkB,EAChC,cAAc,EACd,CAAC,GAAG,EAAE,GAAG,EAAE,QAAQ,EAAE,aAAa,EAAE,UAAU,EAAE,QAAQ,EAAE,YAAY,CAAC,oBAElE,cAAc,EAEpB,CAAC;IAEF,OACE,IAAA,6BAAO,EAAC,GAAG,kBAAO,oBAAoB,kCACjC,OAAO,KACV,UAAU,EAAE,KAAK,IAEpB,CAAC,IAAI,CAAC,CAAC,QAAQ,EAAE,EAAE;QAClB,MAAM,CAAC,qBACF,QAAQ,CACZ,CAAC;QAEF,IAAI,IAAA,sBAAW,EAAC,QAAQ,CAAC,EAAE;YACzB,CAAC,CAAC,QAAQ,GAAG,GAAG,EAAE;gBAChB,MAAM,WAAW,mCACZ,cAAc,GACd,IAAA,4BAAiB,EAAC,cAAc,CAAC,MAAM,EAAE,cAAc,CAAC,QAAQ,CAAC,CACrE,CAAC;gBACF,OAAO,mBAAmB,CAAC,WAAW,CAAC,CAAC;YAC1C,CAAC,CAAC;SACH;QAED,OAAO,CAAC,CAAC;IACX,CAAC,CAAC,CAAC;AACL,CAAC;AAjCD,kDAiCC","sourcesContent":["import {\n request,\n appendCustomParams,\n IRequestOptions\n} from \"@esri/arcgis-rest-request\";\n\nimport { operations } from \"./openapi-types.js\";\nimport { baseUrl, hasNextPage, getNextPageParams } from \"./utils.js\";\n\n// determine the list of allowed params we want to allow as options\n// this should match the array given to appendCustomParams below\ntype queryParams = Pick<\n operations[\"nearPointGet\"][\"parameters\"][\"query\"],\n \"x\" | \"y\" | \"radius\" | \"categoryIds\" | \"pageSize\" | \"offset\" | \"searchText\"\n>;\n\n// get the correct type of the response format\ntype successResponse =\n operations[\"nearPointGet\"][\"responses\"][\"200\"][\"content\"][\"application/json\"];\n\n/**\n * The response format for {@linkcode findPlacesNearPoint};\n */\nexport interface IFindPlacesNearPointResponse extends successResponse {\n nextPage?: () => Promise<IFindPlacesNearPointResponse>;\n}\n\n/**\n * Options for {@linkcode findPlacesNearPoint}.\n */\nexport interface IFindPlacesNearPointOptions\n extends Omit<IRequestOptions, \"httpMethod\" | \"f\">,\n queryParams {}\n\n/**\n * Searches places that are within a given radius of a geographic point.\n * You must supply the `x` and `y` coordinates of the point that you wish\n * to search from. You can either specify a search radius, or use the\n * default (500 meters). You could use this method to search for places\n * around a user's GPS position, or a location clicked on a map.\n *\n * The returned places contain basic data such as name, category and\n * location. You can use the {@linkcode getPlace} method to get additional\n * details for a given place.\n *\n * You can refine the results by supplying additional search parameters,\n * including:\n *\n * - A list of category Ids, see {@linkcode searchCategories} or {@linkcode getCategories}.\n * - A partial name filter with `name` option\n *\n * As this request can return many results, pagination is supported.\n * When a query results in more than [pageSize] places, the response will contain the property\n * `pagination` in addition to place results. If `pagination` exists, an additional method\n * `response.nextPage()` can be used to get the next page of results.\n *\n * ```js\n * import { findPlacesNearPoint } from \"@esri/arcgis-rest-places\";\n * import { ApiKeyManager } from \"@esri/arcgis-rest-request\";\n *\n * const response = await findPlacesNearPoint({\n * x: -3.1883,\n * y: 55.9533,\n * radius: 100,\n * authentication: ApiKeyManager.fromKey(\"YOUR_API_KEY\");\n * });\n *\n * console.log(response);\n * ```\n */\nexport function findPlacesNearPoint(\n requestOptions: IFindPlacesNearPointOptions\n): Promise<IFindPlacesNearPointResponse> {\n const options = appendCustomParams<IFindPlacesNearPointOptions>(\n requestOptions,\n [\"x\", \"y\", \"radius\", \"categoryIds\", \"pageSize\", \"offset\", \"searchText\"],\n {\n ...requestOptions\n }\n );\n\n return (\n request(`${baseUrl}/places/near-point`, {\n ...options,\n httpMethod: \"GET\"\n }) as Promise<successResponse>\n ).then((response) => {\n const r: IFindPlacesNearPointResponse = {\n ...response\n };\n\n if (hasNextPage(response)) {\n r.nextPage = () => {\n const nextOptions = {\n ...requestOptions,\n ...getNextPageParams(requestOptions.offset, requestOptions.pageSize)\n };\n return findPlacesNearPoint(nextOptions);\n };\n }\n\n return r;\n });\n}\n"]}
@@ -20,11 +20,9 @@ const utils_js_1 = require("./utils.js");
20
20
  * - A partial name filter with `name` option
21
21
  *
22
22
  * As this request can return many results, pagination is supported.
23
- * Regardless of paging, the maximum number of places that can be returned
24
- * by a single query is `200`. When a query results in more than `200`
25
- * places, the response will contain the property
26
- * `"maxResultsExceeded":true` in addition to place results. If `maxResultsExceeded`
27
- * is true an additional method `response.nextPage()` can be used to get the next page of results.
23
+ * When a query results in more than [pageSize] places, the response will contain the property
24
+ * `pagination` in addition to place results. If `pagination` exists, an additional method
25
+ * `response.nextPage()` can be used to get the next page of results.
28
26
  *
29
27
  * ```
30
28
  * import { findPlacesWithinExtent } from "@esri/arcgis-rest-places";
@@ -36,7 +34,7 @@ const utils_js_1 = require("./utils.js");
36
34
  * xmax: -117.795753,
37
35
  * ymax: 33.873337,
38
36
  * categoryIds: ["13002"],
39
- * authentication: ApiKeyManager.fromKey("YOUR_API_KEY");
37
+ * authentication: ApiKeyManager.fromKey("YOUR_API_KEY")
40
38
  * });
41
39
  *
42
40
  * console.log(results)
@@ -1 +1 @@
1
- {"version":3,"file":"findPlacesWithinExtent.js","sourceRoot":"","sources":["../../src/findPlacesWithinExtent.ts"],"names":[],"mappings":";;;AAAA,mEAImC;AAGnC,yCAAqE;AAkCrE;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAsCG;AACH,SAAgB,sBAAsB,CACpC,cAA6C;IAE7C,MAAM,OAAO,GAAG,IAAA,wCAAkB,EAChC,cAAc,EACd;QACE,MAAM;QACN,MAAM;QACN,MAAM;QACN,MAAM;QACN,aAAa;QACb,UAAU;QACV,QAAQ;QACR,YAAY;KACb,oBAEI,cAAc,EAEpB,CAAC;IAEF,OACE,IAAA,6BAAO,EAAC,GAAG,kBAAO,uBAAuB,kCACpC,OAAO,KACV,UAAU,EAAE,KAAK,IAEpB,CAAC,IAAI,CAAC,CAAC,QAAQ,EAAE,EAAE;QAClB,MAAM,CAAC,qBACF,QAAQ,CACZ,CAAC;QAEF,IAAI,IAAA,sBAAW,EAAC,QAAQ,CAAC,EAAE;YACzB,CAAC,CAAC,QAAQ,GAAG,GAAG,EAAE;gBAChB,MAAM,WAAW,mCACZ,cAAc,GACd,IAAA,4BAAiB,EAAC,cAAc,CAAC,MAAM,EAAE,cAAc,CAAC,QAAQ,CAAC,CACrE,CAAC;gBACF,OAAO,sBAAsB,CAAC,WAAW,CAAC,CAAC;YAC7C,CAAC,CAAC;SACH;QACD,OAAO,CAAC,CAAC;IACX,CAAC,CAAC,CAAC;AACL,CAAC;AAzCD,wDAyCC","sourcesContent":["import {\n request,\n appendCustomParams,\n IRequestOptions\n} from \"@esri/arcgis-rest-request\";\n\nimport { operations } from \"./openapi-types.js\";\nimport { baseUrl, hasNextPage, getNextPageParams } from \"./utils.js\";\n\n// determine the list of allowed params we want to allow as options\n// this should match the array given to appendCustomParams below\ntype queryParams = Pick<\n operations[\"withinExtentGet\"][\"parameters\"][\"query\"],\n | \"xmin\"\n | \"ymin\"\n | \"xmax\"\n | \"ymax\"\n | \"categoryIds\"\n | \"pageSize\"\n | \"offset\"\n | \"searchText\"\n>;\n\n// get the correct type of the response format\ntype successResponse =\n operations[\"withinExtentGet\"][\"responses\"][\"200\"][\"content\"][\"application/json\"];\n\n/**\n * The response format for {@linkcode findPlacesWithinExtent};\n */\nexport interface IFindPlacesWithinExtentResponse extends successResponse {\n nextPage?: () => Promise<IFindPlacesWithinExtentResponse>;\n}\n\n/**\n * Options for {@linkcode findPlacesNearPoint}.\n */\nexport interface IFindPlaceWithinExtentOptions\n extends Omit<IRequestOptions, \"httpMethod\" | \"f\">,\n queryParams {}\n\n/**\n * Searches the world-wide set of places for those that are within an\n * extent, or bounding box. You must supply the `xmin`, `ymin`, `xmax` and\n * `ymax` coordinates of the extent. You could use this endpoint to search\n * for places in the visible extent of a user's screen.\n *\n * The returned places contain basic data such as name, category and\n * location. You can use the {@linkcode getPlace} method to get additional\n * details for a given place.\n *\n * You can also refine the results by supplying additional search parameters,\n * including:\n *\n * - A list of category Ids, see {@linkcode searchCategories} or {@linkcode getCategories}.\n * - A partial name filter with `name` option\n *\n * As this request can return many results, pagination is supported.\n * Regardless of paging, the maximum number of places that can be returned\n * by a single query is `200`. When a query results in more than `200`\n * places, the response will contain the property\n * `\"maxResultsExceeded\":true` in addition to place results. If `maxResultsExceeded`\n * is true an additional method `response.nextPage()` can be used to get the next page of results.\n *\n * ```\n * import { findPlacesWithinExtent } from \"@esri/arcgis-rest-places\";\n * import { ApiKeyManager } from \"@esri/arcgis-rest-request\";\n *\n * const results = await findPlacesWithinExtent({\n * xmin: -118.013334,\n * ymin: 33.78193,\n * xmax: -117.795753,\n * ymax: 33.873337,\n * categoryIds: [\"13002\"],\n * authentication: ApiKeyManager.fromKey(\"YOUR_API_KEY\");\n * });\n *\n * console.log(results)\n * ```\n */\nexport function findPlacesWithinExtent(\n requestOptions: IFindPlaceWithinExtentOptions\n): Promise<IFindPlacesWithinExtentResponse> {\n const options = appendCustomParams<IFindPlaceWithinExtentOptions>(\n requestOptions,\n [\n \"xmin\",\n \"ymin\",\n \"xmax\",\n \"ymax\",\n \"categoryIds\",\n \"pageSize\",\n \"offset\",\n \"searchText\"\n ],\n {\n ...requestOptions\n }\n );\n\n return (\n request(`${baseUrl}/places/within-extent`, {\n ...options,\n httpMethod: \"GET\"\n }) as Promise<successResponse>\n ).then((response) => {\n const r: IFindPlacesWithinExtentResponse = {\n ...response\n };\n\n if (hasNextPage(response)) {\n r.nextPage = () => {\n const nextOptions = {\n ...requestOptions,\n ...getNextPageParams(requestOptions.offset, requestOptions.pageSize)\n };\n return findPlacesWithinExtent(nextOptions);\n };\n }\n return r;\n });\n}\n"]}
1
+ {"version":3,"file":"findPlacesWithinExtent.js","sourceRoot":"","sources":["../../src/findPlacesWithinExtent.ts"],"names":[],"mappings":";;;AAAA,mEAImC;AAGnC,yCAAqE;AAkCrE;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAoCG;AACH,SAAgB,sBAAsB,CACpC,cAA6C;IAE7C,MAAM,OAAO,GAAG,IAAA,wCAAkB,EAChC,cAAc,EACd;QACE,MAAM;QACN,MAAM;QACN,MAAM;QACN,MAAM;QACN,aAAa;QACb,UAAU;QACV,QAAQ;QACR,YAAY;KACb,oBAEI,cAAc,EAEpB,CAAC;IAEF,OACE,IAAA,6BAAO,EAAC,GAAG,kBAAO,uBAAuB,kCACpC,OAAO,KACV,UAAU,EAAE,KAAK,IAEpB,CAAC,IAAI,CAAC,CAAC,QAAQ,EAAE,EAAE;QAClB,MAAM,CAAC,qBACF,QAAQ,CACZ,CAAC;QAEF,IAAI,IAAA,sBAAW,EAAC,QAAQ,CAAC,EAAE;YACzB,CAAC,CAAC,QAAQ,GAAG,GAAG,EAAE;gBAChB,MAAM,WAAW,mCACZ,cAAc,GACd,IAAA,4BAAiB,EAAC,cAAc,CAAC,MAAM,EAAE,cAAc,CAAC,QAAQ,CAAC,CACrE,CAAC;gBACF,OAAO,sBAAsB,CAAC,WAAW,CAAC,CAAC;YAC7C,CAAC,CAAC;SACH;QACD,OAAO,CAAC,CAAC;IACX,CAAC,CAAC,CAAC;AACL,CAAC;AAzCD,wDAyCC","sourcesContent":["import {\n request,\n appendCustomParams,\n IRequestOptions\n} from \"@esri/arcgis-rest-request\";\n\nimport { operations } from \"./openapi-types.js\";\nimport { baseUrl, hasNextPage, getNextPageParams } from \"./utils.js\";\n\n// determine the list of allowed params we want to allow as options\n// this should match the array given to appendCustomParams below\ntype queryParams = Pick<\n operations[\"withinExtentGet\"][\"parameters\"][\"query\"],\n | \"xmin\"\n | \"ymin\"\n | \"xmax\"\n | \"ymax\"\n | \"categoryIds\"\n | \"pageSize\"\n | \"offset\"\n | \"searchText\"\n>;\n\n// get the correct type of the response format\ntype successResponse =\n operations[\"withinExtentGet\"][\"responses\"][\"200\"][\"content\"][\"application/json\"];\n\n/**\n * The response format for {@linkcode findPlacesWithinExtent};\n */\nexport interface IFindPlacesWithinExtentResponse extends successResponse {\n nextPage?: () => Promise<IFindPlacesWithinExtentResponse>;\n}\n\n/**\n * Options for {@linkcode findPlacesNearPoint}.\n */\nexport interface IFindPlaceWithinExtentOptions\n extends Omit<IRequestOptions, \"httpMethod\" | \"f\">,\n queryParams {}\n\n/**\n * Searches the world-wide set of places for those that are within an\n * extent, or bounding box. You must supply the `xmin`, `ymin`, `xmax` and\n * `ymax` coordinates of the extent. You could use this endpoint to search\n * for places in the visible extent of a user's screen.\n *\n * The returned places contain basic data such as name, category and\n * location. You can use the {@linkcode getPlace} method to get additional\n * details for a given place.\n *\n * You can also refine the results by supplying additional search parameters,\n * including:\n *\n * - A list of category Ids, see {@linkcode searchCategories} or {@linkcode getCategories}.\n * - A partial name filter with `name` option\n *\n * As this request can return many results, pagination is supported.\n * When a query results in more than [pageSize] places, the response will contain the property\n * `pagination` in addition to place results. If `pagination` exists, an additional method\n * `response.nextPage()` can be used to get the next page of results.\n *\n * ```\n * import { findPlacesWithinExtent } from \"@esri/arcgis-rest-places\";\n * import { ApiKeyManager } from \"@esri/arcgis-rest-request\";\n *\n * const results = await findPlacesWithinExtent({\n * xmin: -118.013334,\n * ymin: 33.78193,\n * xmax: -117.795753,\n * ymax: 33.873337,\n * categoryIds: [\"13002\"],\n * authentication: ApiKeyManager.fromKey(\"YOUR_API_KEY\")\n * });\n *\n * console.log(results)\n * ```\n */\nexport function findPlacesWithinExtent(\n requestOptions: IFindPlaceWithinExtentOptions\n): Promise<IFindPlacesWithinExtentResponse> {\n const options = appendCustomParams<IFindPlaceWithinExtentOptions>(\n requestOptions,\n [\n \"xmin\",\n \"ymin\",\n \"xmax\",\n \"ymax\",\n \"categoryIds\",\n \"pageSize\",\n \"offset\",\n \"searchText\"\n ],\n {\n ...requestOptions\n }\n );\n\n return (\n request(`${baseUrl}/places/within-extent`, {\n ...options,\n httpMethod: \"GET\"\n }) as Promise<successResponse>\n ).then((response) => {\n const r: IFindPlacesWithinExtentResponse = {\n ...response\n };\n\n if (hasNextPage(response)) {\n r.nextPage = () => {\n const nextOptions = {\n ...requestOptions,\n ...getNextPageParams(requestOptions.offset, requestOptions.pageSize)\n };\n return findPlacesWithinExtent(nextOptions);\n };\n }\n return r;\n });\n}\n"]}
@@ -12,7 +12,7 @@ const utils_js_1 = require("./utils.js");
12
12
  *
13
13
  * const response = getCategory({
14
14
  * categoryId: "10000",
15
- * authentication: ApiKeyManager.fromKey("YOUR_API_KEY");
15
+ * authentication: ApiKeyManager.fromKey("YOUR_API_KEY")
16
16
  * });
17
17
  *
18
18
  * console.log(response);
@@ -1 +1 @@
1
- {"version":3,"file":"getCategory.js","sourceRoot":"","sources":["../../src/getCategory.ts"],"names":[],"mappings":";;;AAAA,mEAImC;AAGnC,yCAAqC;AAwBrC;;;;;;;;;;;;;;IAcI;AACJ,SAAgB,WAAW,CACzB,cAAmC;IAEnC,MAAM,EAAE,UAAU,EAAE,GAAG,cAAc,CAAC;IAEtC,MAAM,OAAO,GAAG,IAAA,wCAAkB,EAAsB,cAAc,EAAE,EAAE,oBACrE,cAAc,EACjB,CAAC;IAEH,OAAO,IAAA,6BAAO,EAAC,GAAG,kBAAO,eAAe,UAAU,EAAE,kCAC/C,OAAO,KACV,UAAU,EAAE,KAAK,IACjB,CAAC;AACL,CAAC;AAbD,kCAaC","sourcesContent":["import {\n request,\n appendCustomParams,\n IRequestOptions\n} from \"@esri/arcgis-rest-request\";\n\nimport { operations } from \"./openapi-types.js\";\nimport { baseUrl } from \"./utils.js\";\n\n// determine the list of allowed params we want to allow as options\n// this should match the array given to appendCustomParams below\ntype queryParams = operations[\"categoriesCategoryIdGet\"][\"parameters\"][\"query\"];\n\n// get the correct type of the response format\ntype successResponse =\n operations[\"categoriesCategoryIdGet\"][\"responses\"][\"200\"][\"content\"][\"application/json\"];\n\n/**\n * The response format for {@linkcode getCategory};\n */\nexport interface IGetCategoryResponse extends successResponse {}\n\n/**\n * Options for {@linkcode getCategory}.\n */\nexport interface IGetCategoryOptions\n extends Omit<IRequestOptions, \"httpMethod\">,\n queryParams {\n categoryId: string;\n}\n\n/**\n * Returns details about a single category by Id.\n *\n * ```js\n * import { getCategories } from \"@esri/arcgis-rest-places\";\n * import { ApiKeyManager } from \"@esri/arcgis-rest-request\";\n *\n * const response = getCategory({\n * categoryId: \"10000\",\n * authentication: ApiKeyManager.fromKey(\"YOUR_API_KEY\");\n * });\n *\n * console.log(response);\n * ```\n **/\nexport function getCategory(\n requestOptions: IGetCategoryOptions\n): Promise<IGetCategoryResponse> {\n const { categoryId } = requestOptions;\n\n const options = appendCustomParams<IGetCategoryOptions>(requestOptions, [], {\n ...requestOptions\n });\n\n return request(`${baseUrl}/categories/${categoryId}`, {\n ...options,\n httpMethod: \"GET\"\n });\n}\n"]}
1
+ {"version":3,"file":"getCategory.js","sourceRoot":"","sources":["../../src/getCategory.ts"],"names":[],"mappings":";;;AAAA,mEAImC;AAGnC,yCAAqC;AAwBrC;;;;;;;;;;;;;;IAcI;AACJ,SAAgB,WAAW,CACzB,cAAmC;IAEnC,MAAM,EAAE,UAAU,EAAE,GAAG,cAAc,CAAC;IAEtC,MAAM,OAAO,GAAG,IAAA,wCAAkB,EAAsB,cAAc,EAAE,EAAE,oBACrE,cAAc,EACjB,CAAC;IAEH,OAAO,IAAA,6BAAO,EAAC,GAAG,kBAAO,eAAe,UAAU,EAAE,kCAC/C,OAAO,KACV,UAAU,EAAE,KAAK,IACjB,CAAC;AACL,CAAC;AAbD,kCAaC","sourcesContent":["import {\n request,\n appendCustomParams,\n IRequestOptions\n} from \"@esri/arcgis-rest-request\";\n\nimport { operations } from \"./openapi-types.js\";\nimport { baseUrl } from \"./utils.js\";\n\n// determine the list of allowed params we want to allow as options\n// this should match the array given to appendCustomParams below\ntype queryParams = operations[\"categoriesCategoryIdGet\"][\"parameters\"][\"query\"];\n\n// get the correct type of the response format\ntype successResponse =\n operations[\"categoriesCategoryIdGet\"][\"responses\"][\"200\"][\"content\"][\"application/json\"];\n\n/**\n * The response format for {@linkcode getCategory};\n */\nexport interface IGetCategoryResponse extends successResponse {}\n\n/**\n * Options for {@linkcode getCategory}.\n */\nexport interface IGetCategoryOptions\n extends Omit<IRequestOptions, \"httpMethod\">,\n queryParams {\n categoryId: string;\n}\n\n/**\n * Returns details about a single category by Id.\n *\n * ```js\n * import { getCategories } from \"@esri/arcgis-rest-places\";\n * import { ApiKeyManager } from \"@esri/arcgis-rest-request\";\n *\n * const response = getCategory({\n * categoryId: \"10000\",\n * authentication: ApiKeyManager.fromKey(\"YOUR_API_KEY\")\n * });\n *\n * console.log(response);\n * ```\n **/\nexport function getCategory(\n requestOptions: IGetCategoryOptions\n): Promise<IGetCategoryResponse> {\n const { categoryId } = requestOptions;\n\n const options = appendCustomParams<IGetCategoryOptions>(requestOptions, [], {\n ...requestOptions\n });\n\n return request(`${baseUrl}/categories/${categoryId}`, {\n ...options,\n httpMethod: \"GET\"\n });\n}\n"]}
@@ -25,7 +25,7 @@ const utils_js_1 = require("./utils.js");
25
25
  *
26
26
  * const place = getPlaceDetails({
27
27
  * placeId: "e78051acc722c55ab11ba930d8dd7772",
28
- * authentication: ApiKeyManager.fromKey("YOUR_API_KEY");
28
+ * authentication: ApiKeyManager.fromKey("YOUR_API_KEY")
29
29
  * });
30
30
  *
31
31
  * console.log(place);
@@ -1 +1 @@
1
- {"version":3,"file":"getPlaceDetails.js","sourceRoot":"","sources":["../../src/getPlaceDetails.ts"],"names":[],"mappings":";;;AAAA,mEAImC;AAGnC,yCAAqC;AA2BrC;;;;;;;;;;;;;;;;;;;;;;;;;;;GA2BG;AACH,SAAgB,eAAe,CAC7B,cAAgC;IAEhC,MAAM,EAAE,OAAO,EAAE,GAAG,cAAc,CAAC;IAEnC,MAAM,OAAO,GAAG,IAAA,wCAAkB,EAChC,cAAc,EACd,CAAC,iBAAiB,CAAC,oBAEd,cAAc,EAEpB,CAAC;IAEF,OAAO,IAAA,6BAAO,EAAC,GAAG,kBAAO,WAAW,OAAO,EAAE,kCACxC,OAAO,KACV,UAAU,EAAE,KAAK,IACjB,CAAC;AACL,CAAC;AAjBD,0CAiBC","sourcesContent":["import {\n request,\n appendCustomParams,\n IRequestOptions\n} from \"@esri/arcgis-rest-request\";\n\nimport { operations } from \"./openapi-types.js\";\nimport { baseUrl } from \"./utils.js\";\n\n// determine the list of allowed params we want to allow as options\n// this should match the array given to appendCustomParams below\ntype queryParams = Pick<\n operations[\"placeIdGet\"][\"parameters\"][\"query\"],\n \"requestedFields\"\n>;\n\n// get the correct type of the response format\ntype successResponse =\n operations[\"placeIdGet\"][\"responses\"][\"200\"][\"content\"][\"application/json\"];\n\n/**\n * The response format for {@linkcode getPlace};\n */\nexport interface IGetPlaceResponse extends successResponse {}\n\n/**\n * Options for {@linkcode getPlace}.\n */\nexport interface IGetPlaceOptions\n extends Omit<IRequestOptions, \"httpMethod\">,\n queryParams {\n placeId: string;\n}\n\n/**\n * Returns a single place, including additional details, such as:\n *\n * - contact details\n * - address\n * - price information\n * - user rating\n * - opening hours\n *\n * This endpoint can be used to fetch additional details for a specific\n * place, returned from a places search request.\n *\n * Note that some fields, such as opening hours, are not available for\n * every place. Where a field is not available it will be omitted from the\n * response and you will not be charged for this data.\n *\n * ```js\n * import { getPlaceDetails } from \"@esri/arcgis-rest-places\";\n * import { ApiKeyManager } from \"@esri/arcgis-rest-request\";\n *\n * const place = getPlaceDetails({\n * placeId: \"e78051acc722c55ab11ba930d8dd7772\",\n * authentication: ApiKeyManager.fromKey(\"YOUR_API_KEY\");\n * });\n *\n * console.log(place);\n * ```\n */\nexport function getPlaceDetails(\n requestOptions: IGetPlaceOptions\n): Promise<IGetPlaceResponse> {\n const { placeId } = requestOptions;\n\n const options = appendCustomParams<IGetPlaceOptions>(\n requestOptions,\n [\"requestedFields\"],\n {\n ...requestOptions\n }\n );\n\n return request(`${baseUrl}/places/${placeId}`, {\n ...options,\n httpMethod: \"GET\"\n });\n}\n"]}
1
+ {"version":3,"file":"getPlaceDetails.js","sourceRoot":"","sources":["../../src/getPlaceDetails.ts"],"names":[],"mappings":";;;AAAA,mEAImC;AAGnC,yCAAqC;AA2BrC;;;;;;;;;;;;;;;;;;;;;;;;;;;GA2BG;AACH,SAAgB,eAAe,CAC7B,cAAgC;IAEhC,MAAM,EAAE,OAAO,EAAE,GAAG,cAAc,CAAC;IAEnC,MAAM,OAAO,GAAG,IAAA,wCAAkB,EAChC,cAAc,EACd,CAAC,iBAAiB,CAAC,oBAEd,cAAc,EAEpB,CAAC;IAEF,OAAO,IAAA,6BAAO,EAAC,GAAG,kBAAO,WAAW,OAAO,EAAE,kCACxC,OAAO,KACV,UAAU,EAAE,KAAK,IACjB,CAAC;AACL,CAAC;AAjBD,0CAiBC","sourcesContent":["import {\n request,\n appendCustomParams,\n IRequestOptions\n} from \"@esri/arcgis-rest-request\";\n\nimport { operations } from \"./openapi-types.js\";\nimport { baseUrl } from \"./utils.js\";\n\n// determine the list of allowed params we want to allow as options\n// this should match the array given to appendCustomParams below\ntype queryParams = Pick<\n operations[\"placeIdGet\"][\"parameters\"][\"query\"],\n \"requestedFields\"\n>;\n\n// get the correct type of the response format\ntype successResponse =\n operations[\"placeIdGet\"][\"responses\"][\"200\"][\"content\"][\"application/json\"];\n\n/**\n * The response format for {@linkcode getPlace};\n */\nexport interface IGetPlaceResponse extends successResponse {}\n\n/**\n * Options for {@linkcode getPlace}.\n */\nexport interface IGetPlaceOptions\n extends Omit<IRequestOptions, \"httpMethod\">,\n queryParams {\n placeId: string;\n}\n\n/**\n * Returns a single place, including additional details, such as:\n *\n * - contact details\n * - address\n * - price information\n * - user rating\n * - opening hours\n *\n * This endpoint can be used to fetch additional details for a specific\n * place, returned from a places search request.\n *\n * Note that some fields, such as opening hours, are not available for\n * every place. Where a field is not available it will be omitted from the\n * response and you will not be charged for this data.\n *\n * ```js\n * import { getPlaceDetails } from \"@esri/arcgis-rest-places\";\n * import { ApiKeyManager } from \"@esri/arcgis-rest-request\";\n *\n * const place = getPlaceDetails({\n * placeId: \"e78051acc722c55ab11ba930d8dd7772\",\n * authentication: ApiKeyManager.fromKey(\"YOUR_API_KEY\")\n * });\n *\n * console.log(place);\n * ```\n */\nexport function getPlaceDetails(\n requestOptions: IGetPlaceOptions\n): Promise<IGetPlaceResponse> {\n const { placeId } = requestOptions;\n\n const options = appendCustomParams<IGetPlaceOptions>(\n requestOptions,\n [\"requestedFields\"],\n {\n ...requestOptions\n }\n );\n\n return request(`${baseUrl}/places/${placeId}`, {\n ...options,\n httpMethod: \"GET\"\n });\n}\n"]}
@@ -1 +1 @@
1
- {"version":3,"file":"openapi-types.js","sourceRoot":"","sources":["../../src/openapi-types.ts"],"names":[],"mappings":";AAAA;;;GAGG","sourcesContent":["/**\n * This file was auto-generated by openapi-typescript.\n * Do not make direct changes to the file.\n */\n\nexport interface paths {\n \"/categories\": {\n /**\n * A category describes a type of place, such as \"movie theater\" or \"zoo\".\n * The places service has over 1,000 categories (or types) of place. The\n * categories fall into ten general groups: Arts and Entertainment, Business\n * and Professional Services, Community and Government, Dining and Drinking,\n * Events, Health and Medicine, Landmarks and Outdoors, Retail, Sports and\n * Recreation, and Travel and Transportation.\n *\n * There are up to four levels of categories. For example: \"Travel and\n * Transportation\" (Level 1), \"Transport Hub\" (Level 2), \"Airport\"\n * (Level 3) and \"Airport Terminal\" (Level 4).\n *\n * The table below shows the top-level of categories, along with a\n * selection of level two categories.\n *\n * The `/categories` endpoint fetches the latest set of place categories.\n * The request returns all categories including their label and\n * `categoryId`. You should use this endpoint to fetch the latest set of\n * categories when your app starts up. Each category contains an unique ID\n * that you can use to perform a `near-point` or `within-extent` search.\n *\n * You can also reduce the list to a subset of categories using the\n * `filter` parameter. For example, searching for \"coffee\" would return\n * categories including:\n *\n * - \"Coffee Shop\"\n *\n * - \"Coffee Roaster\"\n *\n * - \"Turkish Coffeehouse\"\n *\n * |Category Label | Category ID | Level 2|\n * |--- | --- | ---|\n * |Arts and Entertainment | 10000 | Amusement Park (10001), Art Gallery (10004), Casino (10008), Exhibit (10016), Movie Theater (10024), Museum (10027), Stadium (10051), Water Park (10055), Zoo (10056), ...|\n * |Business and Professional Services | 11000 | Construction (11028), Convention Center (11029), Food and Beverage Service (11056), Health and Beauty Service (11061), Industrial Estate (11106), Office (11124), ...|\n * |Community and Government | 12000 | Education (12009), Organization (12082), Government Building (12064), Community Center (12004), Library (12080), Utility Company (12115), ...|\n * |Dining and Drinking | 13000 | Bakery (13002), Bar (13003), Cafes, Coffee, and Tea House (13032), Restaurant (13065, ...|\n * |Event | 14000 | Conference (14001), Convention (14002), Entertainment Event (14003), Marketplace (14009), ...|\n * |Health and Medicine | 15000 | Dentist (15007), Emergency Service (15008), Hospital (15014), Medical Center (15016), Optometrist (15024), Physician (15027), Veterinarian (15054), ...|\n * |Landmarks and Outdoors | 16000 | Beach (16003), Building / Structure (16007), Campground (16008), Harbor / Marina (16018), Historic and Protected Site (16020), Monument (16026), Nature Preserve (16028), Park (16032), ...|\n * |Retail | 17000 | Arts and Crafts Store (17003), Bookstore (17018), Convenience Store (17029), Department Store (17033)|\n * |Sports and Recreation | 18000 | Athletic Field (18001), Baseball (18002), Basketball (18006), Football (18013), Golf (18016), Gym and Studio (18021), ...|\n * |Travel and Transportation | 19000 | Bike Rental (19002), Cruise (19005), Electric Vehicle Charging Station (19006), Fuel Station (19007), Lodging (19009), Transport Hub (19030), ...|\n *\n * **Note**: Category details are subject to change as new types of places\n * are introduced.\n */\n get: operations[\"categoriesGet\"];\n };\n \"/categories/{categoryId}\": {\n /** The `/categories/{categoryId}` operation returns all the groups to which the category belongs. You must supply a `category ID` to use this operation. */\n get: operations[\"categoriesCategoryIdGet\"];\n };\n \"/places/near-point\": {\n /**\n * The `/places/near-point` operation finds places that are within a given\n * radius of a specified location. The returned places contain basic data\n * such as name, category and location.\n *\n * To perform the request, you must supply the `x` and `y` coordinates of\n * the point from which to search. Optionally, you can also specify the:\n *\n * - Search radius (up to 10,000 meters)\n * - Category IDs\n * - Search text\n *\n * If the `maxResultsExceeded` property in the response is `true`, then you\n * can page through the results to return more places. The maximum number\n * of places that cane be paged to is 200.\n *\n * **Note**: You cannot permanently store places. Please see the [Terms of\n * use](https://developers.arcgis.com/documentation/mapping-apis-and-services/deployment/terms-of-use/).\n */\n get: operations[\"nearPointGet\"];\n };\n \"/places/within-extent\": {\n /**\n * The `/places/within-extent` operation searches for places within an extent (bounding box).\n *\n * You must supply the `xmin`,\n * `ymin`, `xmax` and `ymax` coordinates to define the extent. The maximum width\n * and height of an extent that can be used in a search is 20,000 meters.\n *\n * You can also provide multiple categories or search text to find specific types of places within the extent.\n *\n * The default number of places returned (`pageSize`) is 10. The maximum `pageSize` value is 20.\n *\n * If the `maxResultsExceeded` property in the response is `true`, then you\n * can page through the results to return more places. The maximum number\n * of places that cane be paged to is 200.\n *\n * **Note**: You cannot permanently store places. Please see the [Terms of\n * use](https://developers.arcgis.com/documentation/mapping-apis-and-services/deployment/terms-of-use/).\n */\n get: operations[\"withinExtentGet\"];\n };\n \"/places/{placeId}\": {\n /**\n * The `/places/{placeId}` operation returns details for a place.\n *\n * To request details, you use the `requestedFields` parameter to specify\n * the fields and the attributes you want from the **Place**,\n * **Address**, and/or **Details** price groups.\n *\n * It is always recommended to specify the fields you want, however, you\n * can also use `requestedFields=all` to return all of the attributes\n * available. By default, The `placeId` attribute is always returned in addition\n * to the other attributes you requested.\n *\n * The attributes available for places may vary. For example, opening hours\n * may not be available (or applicable) for geographic places or landmarks.\n *\n * You will only be charged for attributes that contain valid values for\n * the requested fields. If no data is available for the requested field,\n * `null` or an empty collection is returned and you are not charged. You are only charged once if\n * one or more attributes with valid values are returned from a price\n * group. To learn more, go to\n * [Pricing](https://places-service-preview.sites.afd.arcgis.com/rest/places/#pricing).\n *\n * Field | Price group\n * --- | ---\n * name | Place\n * categoryId | Place\n * address:country | Address\n * address:adminRegion | Address\n * address:region | Address\n * address:streetAddress | Address\n * address:extended | Address\n * address:poBox | Address\n * address:postcode | Address\n * address:postTown | Address\n * address:locality | Address\n * address:neighborhood | Address\n * address:censusBlockId | Address\n * address:designatedMarketArea | Address\n * contactInfo:telephone | Details\n * contactInfo:website | Details\n * contactInfo:fax | Details\n * contactInfo:email | Details\n * socialMedia:facebookId | Details\n * socialMedia:instagram | Details\n * socialMedia:twitter | Details\n * chains | Details\n * description | Details\n * rating:user | Details\n * rating:price | Details\n * hours:opening | Details\n * hours:popular | Details\n * hours:openingText | Details\n *\n * **Note**: You cannot permanently store places. Please see the [Terms of\n * use](https://developers.arcgis.com/documentation/mapping-apis-and-services/deployment/terms-of-use/).\n */\n get: operations[\"placeIdGet\"];\n };\n}\n\nexport interface components {\n schemas: {\n /** @example 722d8e1ba4db8ec5ef256b09cf060782 */\n PlaceId: string;\n /**\n * @description Property indicating whether the query resulted in more than `200` places.\n *\n * The maximum number of places that can be returned in total is `200`. If\n * a request reaches this limit without returning all of the available\n * places, this response property will be set to `true`.\n *\n * You can refine your query to reduce the number of places returned. For\n * example, you could:\n *\n * - Search a smaller geographic area.\n *\n * - Use category Ids to specify the type of place you are looking for.\n *\n * - Supply a search text string.\n *\n * @example true\n */\n MaxResultsExceeded: boolean;\n /**\n * @description A result of searching for places using a `places/near-point` request.\n *\n * The result object includes a single place that satisfied the search and\n * the distance from the search point, in meters.\n */\n NearPointResult: {\n /**\n * @description The unique Id of this place.\n *\n * This place Id can be passed to the `places/{placeId}` endpoint to\n * retrieve additional details.\n *\n * @example 722d8e1ba4db8ec5ef256b09cf060782\n */\n placeId: components[\"schemas\"][\"PlaceId\"];\n /**\n * @description The location of this place as a WGS84 point.\n *\n * @example {\n * \"x\": -117.194769,\n * \"y\": 34.057289\n * }\n */\n location: components[\"schemas\"][\"Point\"];\n /**\n * @description A list of category objects for a place.\n *\n * Categories are uniquely identified by a `categoryId`. For example,\n * `17119` identifies a \"Bicycle Store\" and `10051` identifies a\n * \"Stadium\". Note that a single place can belong to multiple\n * categories (for example, a petrol station could also have a\n * super-market).\n *\n * @example [\n * {\n * \"categoryId\": 17119,\n * \"label\": \"Bicycle Store\"\n * }\n * ]\n */\n categories: components[\"schemas\"][\"Category\"][];\n /**\n * @description The name of the place, or point of interest.\n * You can search for places by name using the `searchText` property in\n * a `places/near-point` or `places/within-extent` request.\n *\n * @example Esri International\n */\n name: string;\n /**\n * @description The distance, in meters, from the place to the search point of a 'places/near-point` query.\n *\n * @example 50\n */\n distance: number;\n };\n /**\n * @description A result of searching for places using a `places/within-extent` request.\n *\n * The result object includes a single place that satisfied the search.\n */\n WithinExtentResult: {\n /**\n * @description The unique Id of this place.\n *\n * This place Id can be passed to the `places/{placeId}` endpoint to\n * retrieve additional details.\n *\n * @example 722d8e1ba4db8ec5ef256b09cf060782\n */\n placeId: components[\"schemas\"][\"PlaceId\"];\n /**\n * @description The location of this place as a WGS84 point.\n *\n * @example {\n * \"x\": -117.194769,\n * \"y\": 34.057289\n * }\n */\n location: components[\"schemas\"][\"Point\"];\n /**\n * @description A list of category objects for a place.\n *\n * Categories are uniquely identified by a `categoryId`. For example,\n * `17119` identifies a \"Bicycle Store\" and `10051` identifies a\n * \"Stadium\". Note that a single place can belong to multiple\n * categories (for example, a petrol station could also have a\n * super-market).\n *\n * @example [\n * {\n * \"categoryId\": 17119,\n * \"label\": \"Bicycle Store\"\n * }\n * ]\n */\n categories: components[\"schemas\"][\"Category\"][];\n /**\n * @description The name of the place, or point of interest.\n * You can search for places by name using the `searchText` property in\n * a `places/near-point` or `places/within-extent` request.\n *\n * @example Esri International\n */\n name: string;\n };\n /**\n * @description The additional details for a `Place`, including address, contact details, opening hours, and rating.\n *\n * You can request additional details for a place by using the `placeId` in\n * a `places/{placeId}` request. Use the `requestedFields` query parameter\n * to choose the fields or attributes that are included in the response.\n */\n PlaceDetails: {\n /**\n * @description The unique Id of this place.\n *\n * @example 722d8e1ba4db8ec5ef256b09cf060782\n */\n placeId: components[\"schemas\"][\"PlaceId\"];\n /**\n * @description A list of category objects for a place.\n *\n * Categories are uniquely identified by a `categoryId`. For example,\n * `17119` identifies a \"Bicycle Store\" and `10051` identifies a\n * \"Stadium\". Note that a single place can belong to multiple\n * categories (for example, a petrol station could also have a\n * super-market).\n *\n * This property is part of the \"Place\" attribute group.\n *\n * @example [\n * {\n * \"categoryId\": 17119,\n * \"label\": \"Bicycle Store\"\n * }\n * ]\n */\n categories?: components[\"schemas\"][\"Category\"][];\n /**\n * @description The name of the place, or point of interest.\n *\n * This property is part of the \"Place\" attribute group.\n *\n * @example Esri International\n */\n name?: string;\n /**\n * @description A text description of the place.\n *\n * This property is part of the \"Details\" attribute group.\n *\n * @example Esri is the global market leader in geographic information system\n * (GIS) technology, location intelligence, mapping software, and\n * spatial analytics. Esri software is deployed in more than 350,000\n * organizations and 75 percent of Fortune 500 companies.\n */\n description?: string | null;\n /**\n * @description The address of the place or point of interest (POI).\n *\n * This object and child properties are part of the \"Address\" attribute\n * group.\n */\n address?: components[\"schemas\"][\"Address\"];\n /**\n * @description Contact information for the place, such as the telephone number or email address.\n *\n * This object and child properties are part of the \"Details\" attribute\n * group.\n */\n contactInfo?: components[\"schemas\"][\"ContactInfo\"];\n /**\n * @description Social media information associated with the place.\n *\n * This object and child properties are part of the \"Details\" attribute\n * group.\n */\n socialMedia?: components[\"schemas\"][\"SocialMedia\"];\n /**\n * @description The operating hours for the place, including hours of opening and popular times.\n *\n * This object and child properties are part of the \"Details\" attribute\n * group.\n */\n hours?: components[\"schemas\"][\"Hours\"];\n /**\n * @description Rating information supplied by users of the place.\n *\n * This object and child properties are part of the \"Details\" attribute\n * group.\n */\n rating?: components[\"schemas\"][\"Rating\"];\n /**\n * @description Information about all the chains the place belongs to.\n *\n * This object and child properties are part of the \"Details\" attribute\n * group.\n *\n * @example [\n * {\n * \"name\": \"Starbucks\"\n * }\n * ]\n */\n chains?: components[\"schemas\"][\"ChainInfo\"][];\n };\n /** @example 17119 */\n CategoryId: string;\n /**\n * @description Represents the category of a place.\n *\n * You can get more information on categories from the `places/categories`\n * endpoint.\n */\n Category: {\n /**\n * @description The category Id uniquely identifies this category or type of place.\n *\n * The name of the category can be looked up using the\n * `places/categories` endpoint. For example, 17119 is the id for a\n * \"Bicycle Store\".\n *\n * @example 17119\n */\n categoryId: components[\"schemas\"][\"CategoryId\"];\n /**\n * @description The label that describes the category.\n *\n * @example Bicycle Store\n */\n label: string;\n };\n /**\n * @description Provides details about a category or type of place.\n *\n * Categories are hierarchical so that you can filter places based on\n * specific categories such as \"Provençal Restaurant\", or with more generic\n * types such as \"Restaurant\". A category such as \"Provençal Restaurant\"\n * includes the details of its more generic parent, such as \"French\n * Restaurant\".\n */\n CategoryDetails: {\n /**\n * @description A unique identifying string for a category.\n *\n * This matches the `categoryId` of a place's `category` property.\n *\n * @example 17119\n */\n categoryId: components[\"schemas\"][\"CategoryId\"];\n /** @description The full list of labels that describe the category, including its more generic parent categories. */\n fullLabel: string[];\n /** @description The list of parent category Ids for this category. */\n parents?: string[];\n };\n /**\n * Format: double\n * @description An x-coordinate, or longitude, in WGS84 decimal degrees.\n * @example -117.194769\n */\n XCoord: number;\n /**\n * Format: double\n * @description A y-coordinate, or latitude, in WGS84 decimal degrees.\n * @example 34.057289\n */\n YCoord: number;\n /**\n * Format: float\n * @description A search distance in meters.\n *\n * @default 1000\n * @example 50\n */\n SearchDistance: number;\n /**\n * @description A point defined in WGS84 decimal degrees.\n *\n * @example {\n * \"x\": -117.194769,\n * \"y\": 34.057289\n * }\n */\n Point: {\n /** @description The x, or longitude, of this location in WGS84 decimal degrees. */\n x: components[\"schemas\"][\"XCoord\"];\n /** @description The y, or latitude, of this location in WGS84 decimal degrees. */\n y: components[\"schemas\"][\"YCoord\"];\n };\n /**\n * @description A point defined in WGS84 decimal degrees.\n *\n * @example {\n * \"x\": -117.194769,\n * \"y\": 34.057289\n * }\n */\n NullablePoint: {\n /** @description The x, or longitude, of this location in WGS84 decimal degrees. */\n x: components[\"schemas\"][\"XCoord\"];\n /** @description The y, or latitude, of this location in WGS84 decimal degrees. */\n y: components[\"schemas\"][\"YCoord\"];\n } | null;\n /**\n * @description A pair of times defining the start and end of a time period.\n *\n * For example, this could define opening hours or popular hours. Hours are\n * shown in 24-hour time in the local timezone of the place or POI.\n *\n * Where a time range is 24-hours (for example a venue that is open 24-hours),\n * the `from` property will be 00:00 and the `to` property will be 23:59.\n *\n * @example {\n * \"from\": \"10:00\",\n * \"to\": \"13:00\"\n * }\n */\n TimeRange: {\n /**\n * @description The start of a time range in the format \"HH:MM\".\n * @example 09:00\n */\n from: string;\n /**\n * @description The end of a time range in the format \"HH:MM\".\n * @example 15:30\n */\n to: string;\n };\n /**\n * @description The opening or popular hours for a place.\n *\n * Opening hours are shown by day of the week. Each day can have several\n * pairs of from and to times. For example, if a coffee shop is open from\n * 9:00 until 12:00 and then again from 13:00 until 17:00, it would contain\n * two pairs of opening/closing times: 9:00 paired with 12:00 and 13:00\n * with 17:00. Hours are shown in 24-hour time in the local timezone of the\n * place or POI.\n */\n HoursByDay: {\n /**\n * @example [\n * {\n * \"from\": \"09:00\",\n * \"to\": \"17:00\"\n * }\n * ]\n */\n monday?: components[\"schemas\"][\"TimeRange\"][];\n /**\n * @example [\n * {\n * \"from\": \"09:00\",\n * \"to\": \"17:00\"\n * }\n * ]\n */\n tuesday?: components[\"schemas\"][\"TimeRange\"][];\n /**\n * @example [\n * {\n * \"from\": \"09:00\",\n * \"to\": \"12:00\"\n * },\n * {\n * \"from\": \"13:00\",\n * \"to\": \"17:00\"\n * }\n * ]\n */\n wednesday?: components[\"schemas\"][\"TimeRange\"][];\n /**\n * @example [\n * {\n * \"from\": \"09:00\",\n * \"to\": \"17:00\"\n * }\n * ]\n */\n thursday?: components[\"schemas\"][\"TimeRange\"][];\n /**\n * @example [\n * {\n * \"from\": \"09:00\",\n * \"to\": \"17:00\"\n * }\n * ]\n */\n friday?: components[\"schemas\"][\"TimeRange\"][];\n /**\n * @example [\n * {\n * \"from\": \"10:00\",\n * \"to\": \"17:00\"\n * }\n * ]\n */\n saturday?: components[\"schemas\"][\"TimeRange\"][];\n /**\n * @example [\n * {\n * \"from\": \"11:00\",\n * \"to\": \"12:00\"\n * }\n * ]\n */\n sunday?: components[\"schemas\"][\"TimeRange\"][];\n } | null;\n /**\n * @description Lists the opening hours of this place or POI along with the popular or busy hours.\n *\n * A string is also provided that can be used for display.\n */\n Hours: {\n /**\n * @description The opening hours for a place.\n *\n * Opening hours are shown by day of the week. Each day can have\n * several pairs of from and to times. For example, if a coffee shop is\n * open from 9:00 until 12:00 and then again from 13:00 until 17:00, it\n * would contain two pairs of from/to times: 09:00 paired with 12:00\n * and 13:00 with 17:00. Opening hours are shown in 24-hour time in the\n * local timezone of the place or POI.\n *\n * @example {\n * \"monday\": [\n * {\n * \"from\": \"09:00\",\n * \"to\": \"17:00\"\n * }\n * ],\n * \"tuesday\": [\n * {\n * \"from\": \"09:00\",\n * \"to\": \"17:00\"\n * }\n * ],\n * \"wednesday\": [\n * {\n * \"from\": \"09:00\",\n * \"to\": \"12:00\"\n * },\n * {\n * \"from\": \"13:00\",\n * \"to\": \"17:00\"\n * }\n * ],\n * \"thursday\": [\n * {\n * \"from\": \"09:00\",\n * \"to\": \"17:00\"\n * }\n * ],\n * \"friday\": [\n * {\n * \"from\": \"09:00\",\n * \"to\": \"17:30\"\n * }\n * ],\n * \"saturday\": [\n * {\n * \"from\": \"10:00\",\n * \"to\": \"17:00\"\n * }\n * ],\n * \"sunday\": [\n * {\n * \"from\": \"11:00\",\n * \"to\": \"12:00\"\n * }\n * ]\n * }\n */\n opening?: components[\"schemas\"][\"HoursByDay\"];\n /**\n * @description The popular or busy hours for a place.\n *\n * Popular hours are shown by day of the week. Each day can have\n * several pairs of from and to times. For example, if a coffee shop is\n * popular from 9:00 until 10:00 and then again from 14:00 until 15:00,\n * it would contain two pairs of from/to times: 09:00 paired with 10:00\n * and 14:00 with 15:00. Popular hours are shown in 24-hour time in the\n * local timezone of the place or POI.\n *\n * @example {\n * \"monday\": [\n * {\n * \"from\": \"10:00\",\n * \"to\": \"12:00\"\n * },\n * {\n * \"from\": \"14:00\",\n * \"to\": \"15:00\"\n * }\n * ],\n * \"tuesday\": [\n * {\n * \"from\": \"14:00\",\n * \"to\": \"15:00\"\n * }\n * ],\n * \"wednesday\": [\n * {\n * \"from\": \"10:00\",\n * \"to\": \"12:00\"\n * },\n * {\n * \"from\": \"14:00\",\n * \"to\": \"15:00\"\n * }\n * ],\n * \"thursday\": [\n * {\n * \"from\": \"14:00\",\n * \"to\": \"15:00\"\n * }\n * ],\n * \"friday\": [\n * {\n * \"from\": \"15:00\",\n * \"to\": \"17:00\"\n * }\n * ],\n * \"saturday\": [\n * {\n * \"from\": \"10:00\",\n * \"to\": \"12:00\"\n * }\n * ],\n * \"sunday\": [\n * {\n * \"from\": \"11:00\",\n * \"to\": \"12:00\"\n * }\n * ]\n * }\n */\n popular?: components[\"schemas\"][\"HoursByDay\"];\n /**\n * @description The opening hours for this place, formatted for display.\n *\n * @example Mon-Thu 12:00 PM-11:00 PM; Fri-Sat 12:00 PM-11:30 PM; Sun 12:00 PM-10:30 PM\n */\n openingText?: string | null;\n };\n /** @description Rating information about the price and user rating of the place. */\n Rating: {\n /**\n * @description An indication of the overall price of a place based on user reviews.\n *\n * @example cheap\n * @enum {string|null}\n */\n price?: (\"cheap\" | \"moderate\" | \"expensive\" | \"veryExpensive\") | null;\n /**\n * Format: float\n * @description A rating for the place based on user-reviews from 0 to 5, where 5 is the best rating.\n *\n * @example 4.5\n */\n user?: number | null;\n };\n /** @description The address of a place, or point of interest (POI). */\n Address: {\n /**\n * @description The street address for a place, for example the street name and number.\n *\n * @example 380 New York St\n */\n streetAddress?: string | null;\n /**\n * @description Additional address information, including suite or apartment numbers.\n *\n * @example Unit 32\n */\n extended?: string | null;\n /**\n * @description The city, town, or equivalent.\n * @example Redlands\n */\n locality?: string | null;\n /**\n * @description As defined by Nielsen, signifies a region where the population can receive similar TV and radio offerings (US only).\n *\n * @example Los Angeles\n */\n designatedMarketArea?: string | null;\n /**\n * @description The state, province, territory or equivalent.\n *\n * @example CA\n */\n region?: string | null;\n /**\n * @description Postal code or equivalent (zip code in the US).\n *\n * Format will be localized based on country.\n *\n * @example 92373\n */\n postcode?: string | null;\n /** @description Post-office box. */\n poBox?: string | null;\n /**\n * @description Two letter ISO country code\n * @example US\n */\n country?: string | null;\n /**\n * @description Additional sub-division.\n *\n * Usually, but not always, a country sub-division (e.g., Scotland).\n *\n * @example Scotland\n */\n adminRegion?: string | null;\n /**\n * @description Town/place employed in postal addressing.\n *\n * @example Edinburgh\n */\n postTown?: string | null;\n /**\n * @description The neighborhoods of the place.\n *\n * @example [\n * \"Downtown\"\n * ]\n */\n neighborhood?: string[];\n /**\n * @description The census block Id of the place (US only).\n *\n * @example 60710081003002\n */\n censusBlockId?: string | null;\n };\n /** @description The social media details for a place. */\n SocialMedia: {\n /**\n * @description The facebook Id of the place.\n * @example 211211155280\n */\n facebookId?: string | null;\n /**\n * @description The twitter handle of the place.\n * @example esri\n */\n twitter?: string | null;\n /** @description The instagram ID of the place. */\n instagram?: string | null;\n };\n /** @description The contact information for a place. */\n ContactInfo: {\n /**\n * @description The telephone number of the place.\n * @example (909) 793-2853\n */\n telephone?: string | null;\n /**\n * Format: url\n * @description The website address of the place.\n * @example https://www.esri.com/en-us/home\n */\n website?: string | null;\n /**\n * @description Fax number.\n * @example 0800 169 2008\n */\n fax?: string | null;\n /**\n * @description Email address.\n * @example support@esri.com\n */\n email?: string | null;\n };\n /** @description Information about a chain that a place belongs to. */\n ChainInfo: {\n /**\n * @description The name of the chain.\n *\n * @example Starbucks\n */\n name?: string | null;\n };\n /** @description Provides links for accessing more results for the current request. */\n Links: {\n /**\n * Format: url\n * @description The base url for making a query to fetch more results.\n *\n * Combine this with the `previous` or `next` parameters to make a full\n * request url.\n *\n * @example https://places-api.arcgis.com/\n */\n base?: string;\n /**\n * @description A url fragment that can be appended to the `base` property to make a request url to fetch the previous page of results.\n *\n * If this property is omitted there are no previous pages of results.\n * You must also supply authentication details, such as a `token`, to\n * make a previous request.\n *\n * @example /arcgis/rest/services/places-service/v1/places/near-point?x=-117.194769&y=34.057289&radius=50.0&offset=0&pageSize=10\n */\n previous?: string;\n /**\n * @description A url fragment that can be appended to the `base` property to make a request url to fetch the next page of results.\n *\n * If this property is omitted there are no more pages of results. You\n * must also supply authentication details, such as a `token`, to make\n * a next request.\n *\n * @example /arcgis/rest/services/places-service/v1/places/near-point?x=-117.194769&y=34.057289&radius=50.0&offset=20&pageSize=10\n */\n next?: string;\n };\n Error: {\n /** @description Error information */\n error: {\n /**\n * @description A code identifying the type of error.\n *\n * This can be an HTTP status code, `498` (invalid or expired\n * token), or `499` (missing token).\n *\n * @example 400\n * @enum {integer}\n */\n code: 400 | 401 | 403 | 404 | 498 | 499 | 500;\n /**\n * @description A message describing the error.\n * @example Parameter invalid.\n */\n message: string;\n /** @description List of details about the error. */\n details?: string[];\n /**\n * Format: url\n * @description A link to general information about the service, such as the owning system and token service URL.\n *\n * This property is only\n * present for errors relating to tokens.\n *\n * @example https://places-api.arcgis.com/arcgis/rest/info\n */\n restInfoUrl?: string;\n };\n };\n };\n responses: {\n /** Authentication Error. The API key or token is missing, invalid or expired. */\n UnauthorizedErrorResponse: {\n content: {\n \"application/json\": components[\"schemas\"][\"Error\"];\n };\n };\n /** An error occurred on the server. */\n ServerErrorResponse: {\n content: {\n \"application/json\": components[\"schemas\"][\"Error\"];\n };\n };\n /** Invalid query parameters. */\n InvalidQueryErrorResponse: {\n content: {\n \"application/json\": components[\"schemas\"][\"Error\"];\n };\n };\n /** A resource with the supplied Id was not found. */\n IdNotFoundErrorResponse: {\n content: {\n \"application/json\": components[\"schemas\"][\"Error\"];\n };\n };\n /** The required parameter 'token' is valid but does not have permission to access the service. */\n PermissionMissingErrorResponse: {\n content: {\n \"application/json\": components[\"schemas\"][\"Error\"];\n };\n };\n /** A successful request to return details for a single category. */\n CategoryDetailsResponse: {\n content: {\n \"application/json\": components[\"schemas\"][\"CategoryDetails\"];\n };\n };\n /** Details of categories that a `Place` can belong to. */\n CategoriesDetailsResponse: {\n content: {\n \"application/json\": {\n categories: components[\"schemas\"][\"CategoryDetails\"][];\n };\n };\n };\n /** A successful response for a `places/near-point` request. */\n NearPointResponse: {\n content: {\n \"application/json\": {\n results: components[\"schemas\"][\"NearPointResult\"][];\n maxResultsExceeded?: components[\"schemas\"][\"MaxResultsExceeded\"];\n links?: components[\"schemas\"][\"Links\"];\n };\n };\n };\n /** A successful response for a `places/within-extent` request. */\n WithinExtentResponse: {\n content: {\n \"application/json\": {\n results: components[\"schemas\"][\"WithinExtentResult\"][];\n maxResultsExceeded?: components[\"schemas\"][\"MaxResultsExceeded\"];\n links?: components[\"schemas\"][\"Links\"];\n };\n };\n };\n /** A successful response for a `places/{placeId}` request. */\n PlaceDetailsResponse: {\n content: {\n \"application/json\": {\n placeDetails: components[\"schemas\"][\"PlaceDetails\"];\n };\n };\n };\n };\n parameters: {\n /**\n * @description The radius in meters to search for places - measured from the supplied `x` and `y` coordinate.\n *\n * A radius of 100 meters will result in a circular search area that is 200\n * meters in diameter. If omitted, the default search radius will be 1,000\n * meters.\n */\n RadiusParam: components[\"schemas\"][\"SearchDistance\"];\n /**\n * @description The minimum x coordinate, or longitude, of the search extent.\n *\n * This is the furthest _west_ that will be searched.\n */\n XMinParam: components[\"schemas\"][\"XCoord\"];\n /**\n * @description The minimum y coordinate, or latitude, of the search extent.\n *\n * This is the furthest _south_ that will be searched.\n */\n YMinParam: components[\"schemas\"][\"YCoord\"];\n /**\n * @description The maximum x coordinate, or longitude, of the search extent.\n *\n * This is the furthest _east_ that will be searched.\n */\n XMaxParam: components[\"schemas\"][\"XCoord\"];\n /**\n * @description The maximum y coordinate, or latitude, of the search extent.\n *\n * This is the furthest _north_ that will be searched.\n */\n YMaxParam: components[\"schemas\"][\"YCoord\"];\n /**\n * @description Filters places to those that match the category Ids.\n *\n * Places will be returned if they match _any_ of the category Ids. If this\n * property is not set, places will be returned regardless of their\n * category.\n *\n * You can obtain information on category Ids from the\n * `places/categories` endpoint. For example, to filter for places\n * where the category is \"Bicycle Store\", include the categoryId\n * `17117` in this property.\n */\n CategoryIdsParam: components[\"schemas\"][\"CategoryId\"][];\n /** @description Free search text for places against names, categories etc. */\n SearchTextParam: string;\n /**\n * @description The number of places that should be sent in the response for a single request.\n *\n * You can set this to any value up to `20` when you need to control the\n * size of responses that your app downloads.\n *\n * If the query results in more than this page size, then the response object\n * will contain a `next` url fragment. This fragment can be used to form a\n * request url to fetch the next page of results.\n *\n * The maximum number of places that can be returned in total is `200`. If\n * a request reaches this limit without returning all of the available\n * places, the response will contain the property\n * `\"maxResultsExceeded\":true` in addition to place results.\n */\n PageSizeParam: number;\n /**\n * @description Request results starting from the given offset.\n *\n * This parameter works with the `pageSize` parameter to fetch results from\n * subsequent pages. For example, with a page size of 2, setting the\n * `offset` to `2` would return the 3rd and 4th results.\n *\n * Regardless of paging, the maximum number of places that can be returned\n * by a single query is `200`. When a query results in more than `200`\n * places, the response will contain the property\n * `\"maxResultsExceeded\":true` in addition to place results.\n */\n OffsetParam: number;\n /**\n * @description The requested response format - either `json` or `pjson` (pretty json).\n *\n * @example pjson\n */\n FormatParam: \"json\" | \"pjson\";\n /** @description The ID of the category that you want to fetch details for. */\n CategoryIdParam: components[\"schemas\"][\"CategoryId\"];\n /**\n * @description A text filter that will be used for searching categories.\n *\n * The text must be at least three characters and will be applied as a\n * partial match. For example, using the filter \"off\" would return\n * categories using the word \"Office\" as well as those using the word\n * \"Coffee\".\n */\n CategoriesFilterParam: string;\n /**\n * @description The array of fields that define the attributes to return for a place.\n *\n * Use this parameter to define the attributes you would like returned,\n * for example `[\"name\", \"address:streetAddress\"]`. However, you can also\n * set this value to `[\"all\"]` to return all of the attributes available\n * for a place.\n *\n * The `placeId` attribute is always returned in addition to the other\n * attributes you requested. If a valid attribute value is not available,\n * `null`, or an empty collection, is returned and you are not charged for it. To see the fields and\n * pricing groups they belong to, go to the table above.\n */\n RequestedFieldsParam: (\n | \"all\"\n | \"address\"\n | \"address:adminRegion\"\n | \"address:censusBlockId\"\n | \"address:country\"\n | \"address:designatedMarketArea\"\n | \"address:extended\"\n | \"address:locality\"\n | \"address:neighborhood\"\n | \"address:poBox\"\n | \"address:postcode\"\n | \"address:postTown\"\n | \"address:region\"\n | \"address:streetAddress\"\n | \"categories\"\n | \"contactInfo\"\n | \"contactInfo:email\"\n | \"contactInfo:fax\"\n | \"contactInfo:telephone\"\n | \"contactInfo:website\"\n | \"chains\"\n | \"description\"\n | \"hours\"\n | \"hours:opening\"\n | \"hours:openingText\"\n | \"hours:popular\"\n | \"name\"\n | \"rating\"\n | \"rating:price\"\n | \"rating:user\"\n | \"socialMedia\"\n | \"socialMedia:facebookId\"\n | \"socialMedia:instagram\"\n | \"socialMedia:twitter\"\n )[];\n };\n}\n\nexport interface operations {\n /**\n * A category describes a type of place, such as \"movie theater\" or \"zoo\".\n * The places service has over 1,000 categories (or types) of place. The\n * categories fall into ten general groups: Arts and Entertainment, Business\n * and Professional Services, Community and Government, Dining and Drinking,\n * Events, Health and Medicine, Landmarks and Outdoors, Retail, Sports and\n * Recreation, and Travel and Transportation.\n *\n * There are up to four levels of categories. For example: \"Travel and\n * Transportation\" (Level 1), \"Transport Hub\" (Level 2), \"Airport\"\n * (Level 3) and \"Airport Terminal\" (Level 4).\n *\n * The table below shows the top-level of categories, along with a\n * selection of level two categories.\n *\n * The `/categories` endpoint fetches the latest set of place categories.\n * The request returns all categories including their label and\n * `categoryId`. You should use this endpoint to fetch the latest set of\n * categories when your app starts up. Each category contains an unique ID\n * that you can use to perform a `near-point` or `within-extent` search.\n *\n * You can also reduce the list to a subset of categories using the\n * `filter` parameter. For example, searching for \"coffee\" would return\n * categories including:\n *\n * - \"Coffee Shop\"\n *\n * - \"Coffee Roaster\"\n *\n * - \"Turkish Coffeehouse\"\n *\n * |Category Label | Category ID | Level 2|\n * |--- | --- | ---|\n * |Arts and Entertainment | 10000 | Amusement Park (10001), Art Gallery (10004), Casino (10008), Exhibit (10016), Movie Theater (10024), Museum (10027), Stadium (10051), Water Park (10055), Zoo (10056), ...|\n * |Business and Professional Services | 11000 | Construction (11028), Convention Center (11029), Food and Beverage Service (11056), Health and Beauty Service (11061), Industrial Estate (11106), Office (11124), ...|\n * |Community and Government | 12000 | Education (12009), Organization (12082), Government Building (12064), Community Center (12004), Library (12080), Utility Company (12115), ...|\n * |Dining and Drinking | 13000 | Bakery (13002), Bar (13003), Cafes, Coffee, and Tea House (13032), Restaurant (13065, ...|\n * |Event | 14000 | Conference (14001), Convention (14002), Entertainment Event (14003), Marketplace (14009), ...|\n * |Health and Medicine | 15000 | Dentist (15007), Emergency Service (15008), Hospital (15014), Medical Center (15016), Optometrist (15024), Physician (15027), Veterinarian (15054), ...|\n * |Landmarks and Outdoors | 16000 | Beach (16003), Building / Structure (16007), Campground (16008), Harbor / Marina (16018), Historic and Protected Site (16020), Monument (16026), Nature Preserve (16028), Park (16032), ...|\n * |Retail | 17000 | Arts and Crafts Store (17003), Bookstore (17018), Convenience Store (17029), Department Store (17033)|\n * |Sports and Recreation | 18000 | Athletic Field (18001), Baseball (18002), Basketball (18006), Football (18013), Golf (18016), Gym and Studio (18021), ...|\n * |Travel and Transportation | 19000 | Bike Rental (19002), Cruise (19005), Electric Vehicle Charging Station (19006), Fuel Station (19007), Lodging (19009), Transport Hub (19030), ...|\n *\n * **Note**: Category details are subject to change as new types of places\n * are introduced.\n */\n categoriesGet: {\n parameters: {\n query: {\n /**\n * A text filter that will be used for searching categories.\n *\n * The text must be at least three characters and will be applied as a\n * partial match. For example, using the filter \"off\" would return\n * categories using the word \"Office\" as well as those using the word\n * \"Coffee\".\n */\n filter?: components[\"parameters\"][\"CategoriesFilterParam\"];\n /** The requested response format - either `json` or `pjson` (pretty json). */\n f?: components[\"parameters\"][\"FormatParam\"];\n };\n };\n responses: {\n 200: components[\"responses\"][\"CategoriesDetailsResponse\"];\n 400: components[\"responses\"][\"InvalidQueryErrorResponse\"];\n 401: components[\"responses\"][\"UnauthorizedErrorResponse\"];\n 403: components[\"responses\"][\"PermissionMissingErrorResponse\"];\n \"5XX\": components[\"responses\"][\"ServerErrorResponse\"];\n };\n };\n /** The `/categories/{categoryId}` operation returns all the groups to which the category belongs. You must supply a `category ID` to use this operation. */\n categoriesCategoryIdGet: {\n parameters: {\n path: {\n /** The ID of the category that you want to fetch details for. */\n categoryId: components[\"parameters\"][\"CategoryIdParam\"];\n };\n query: {\n /** The requested response format - either `json` or `pjson` (pretty json). */\n f?: components[\"parameters\"][\"FormatParam\"];\n };\n };\n responses: {\n 200: components[\"responses\"][\"CategoryDetailsResponse\"];\n 400: components[\"responses\"][\"InvalidQueryErrorResponse\"];\n 401: components[\"responses\"][\"UnauthorizedErrorResponse\"];\n 403: components[\"responses\"][\"PermissionMissingErrorResponse\"];\n 404: components[\"responses\"][\"IdNotFoundErrorResponse\"];\n \"5XX\": components[\"responses\"][\"ServerErrorResponse\"];\n };\n };\n /**\n * The `/places/near-point` operation finds places that are within a given\n * radius of a specified location. The returned places contain basic data\n * such as name, category and location.\n *\n * To perform the request, you must supply the `x` and `y` coordinates of\n * the point from which to search. Optionally, you can also specify the:\n *\n * - Search radius (up to 10,000 meters)\n * - Category IDs\n * - Search text\n *\n * If the `maxResultsExceeded` property in the response is `true`, then you\n * can page through the results to return more places. The maximum number\n * of places that cane be paged to is 200.\n *\n * **Note**: You cannot permanently store places. Please see the [Terms of\n * use](https://developers.arcgis.com/documentation/mapping-apis-and-services/deployment/terms-of-use/).\n */\n nearPointGet: {\n parameters: {\n query: {\n /** The x coordinate, or longitude, to search from, in WGS84 decimal degrees. */\n x: components[\"schemas\"][\"XCoord\"];\n /** The y coordinate, or latitude, to search from, in WGS84 decimal degrees. */\n y: components[\"schemas\"][\"YCoord\"];\n /**\n * The radius in meters to search for places - measured from the supplied `x` and `y` coordinate.\n *\n * A radius of 100 meters will result in a circular search area that is 200\n * meters in diameter. If omitted, the default search radius will be 1,000\n * meters.\n */\n radius?: components[\"parameters\"][\"RadiusParam\"];\n /**\n * Filters places to those that match the category Ids.\n *\n * Places will be returned if they match _any_ of the category Ids. If this\n * property is not set, places will be returned regardless of their\n * category.\n *\n * You can obtain information on category Ids from the\n * `places/categories` endpoint. For example, to filter for places\n * where the category is \"Bicycle Store\", include the categoryId\n * `17117` in this property.\n */\n categoryIds?: components[\"parameters\"][\"CategoryIdsParam\"];\n /** Free search text for places against names, categories etc. */\n searchText?: components[\"parameters\"][\"SearchTextParam\"];\n /**\n * The number of places that should be sent in the response for a single request.\n *\n * You can set this to any value up to `20` when you need to control the\n * size of responses that your app downloads.\n *\n * If the query results in more than this page size, then the response object\n * will contain a `next` url fragment. This fragment can be used to form a\n * request url to fetch the next page of results.\n *\n * The maximum number of places that can be returned in total is `200`. If\n * a request reaches this limit without returning all of the available\n * places, the response will contain the property\n * `\"maxResultsExceeded\":true` in addition to place results.\n */\n pageSize?: components[\"parameters\"][\"PageSizeParam\"];\n /**\n * Request results starting from the given offset.\n *\n * This parameter works with the `pageSize` parameter to fetch results from\n * subsequent pages. For example, with a page size of 2, setting the\n * `offset` to `2` would return the 3rd and 4th results.\n *\n * Regardless of paging, the maximum number of places that can be returned\n * by a single query is `200`. When a query results in more than `200`\n * places, the response will contain the property\n * `\"maxResultsExceeded\":true` in addition to place results.\n */\n offset?: components[\"parameters\"][\"OffsetParam\"];\n /** The requested response format - either `json` or `pjson` (pretty json). */\n f?: components[\"parameters\"][\"FormatParam\"];\n };\n };\n responses: {\n 200: components[\"responses\"][\"NearPointResponse\"];\n 400: components[\"responses\"][\"InvalidQueryErrorResponse\"];\n 401: components[\"responses\"][\"UnauthorizedErrorResponse\"];\n 403: components[\"responses\"][\"PermissionMissingErrorResponse\"];\n \"5XX\": components[\"responses\"][\"ServerErrorResponse\"];\n };\n };\n /**\n * The `/places/within-extent` operation searches for places within an extent (bounding box).\n *\n * You must supply the `xmin`,\n * `ymin`, `xmax` and `ymax` coordinates to define the extent. The maximum width\n * and height of an extent that can be used in a search is 20,000 meters.\n *\n * You can also provide multiple categories or search text to find specific types of places within the extent.\n *\n * The default number of places returned (`pageSize`) is 10. The maximum `pageSize` value is 20.\n *\n * If the `maxResultsExceeded` property in the response is `true`, then you\n * can page through the results to return more places. The maximum number\n * of places that cane be paged to is 200.\n *\n * **Note**: You cannot permanently store places. Please see the [Terms of\n * use](https://developers.arcgis.com/documentation/mapping-apis-and-services/deployment/terms-of-use/).\n */\n withinExtentGet: {\n parameters: {\n query: {\n /**\n * The minimum x coordinate, or longitude, of the search extent.\n *\n * This is the furthest _west_ that will be searched.\n */\n xmin: components[\"parameters\"][\"XMinParam\"];\n /**\n * The minimum y coordinate, or latitude, of the search extent.\n *\n * This is the furthest _south_ that will be searched.\n */\n ymin: components[\"parameters\"][\"YMinParam\"];\n /**\n * The maximum x coordinate, or longitude, of the search extent.\n *\n * This is the furthest _east_ that will be searched.\n */\n xmax: components[\"parameters\"][\"XMaxParam\"];\n /**\n * The maximum y coordinate, or latitude, of the search extent.\n *\n * This is the furthest _north_ that will be searched.\n */\n ymax: components[\"parameters\"][\"YMaxParam\"];\n /**\n * Filters places to those that match the category Ids.\n *\n * Places will be returned if they match _any_ of the category Ids. If this\n * property is not set, places will be returned regardless of their\n * category.\n *\n * You can obtain information on category Ids from the\n * `places/categories` endpoint. For example, to filter for places\n * where the category is \"Bicycle Store\", include the categoryId\n * `17117` in this property.\n */\n categoryIds?: components[\"parameters\"][\"CategoryIdsParam\"];\n /** Free search text for places against names, categories etc. */\n searchText?: components[\"parameters\"][\"SearchTextParam\"];\n /**\n * The number of places that should be sent in the response for a single request.\n *\n * You can set this to any value up to `20` when you need to control the\n * size of responses that your app downloads.\n *\n * If the query results in more than this page size, then the response object\n * will contain a `next` url fragment. This fragment can be used to form a\n * request url to fetch the next page of results.\n *\n * The maximum number of places that can be returned in total is `200`. If\n * a request reaches this limit without returning all of the available\n * places, the response will contain the property\n * `\"maxResultsExceeded\":true` in addition to place results.\n */\n pageSize?: components[\"parameters\"][\"PageSizeParam\"];\n /**\n * Request results starting from the given offset.\n *\n * This parameter works with the `pageSize` parameter to fetch results from\n * subsequent pages. For example, with a page size of 2, setting the\n * `offset` to `2` would return the 3rd and 4th results.\n *\n * Regardless of paging, the maximum number of places that can be returned\n * by a single query is `200`. When a query results in more than `200`\n * places, the response will contain the property\n * `\"maxResultsExceeded\":true` in addition to place results.\n */\n offset?: components[\"parameters\"][\"OffsetParam\"];\n /** The requested response format - either `json` or `pjson` (pretty json). */\n f?: components[\"parameters\"][\"FormatParam\"];\n };\n };\n responses: {\n 200: components[\"responses\"][\"WithinExtentResponse\"];\n 400: components[\"responses\"][\"InvalidQueryErrorResponse\"];\n 401: components[\"responses\"][\"UnauthorizedErrorResponse\"];\n 403: components[\"responses\"][\"PermissionMissingErrorResponse\"];\n \"5XX\": components[\"responses\"][\"ServerErrorResponse\"];\n };\n };\n /**\n * The `/places/{placeId}` operation returns details for a place.\n *\n * To request details, you use the `requestedFields` parameter to specify\n * the fields and the attributes you want from the **Place**,\n * **Address**, and/or **Details** price groups.\n *\n * It is always recommended to specify the fields you want, however, you\n * can also use `requestedFields=all` to return all of the attributes\n * available. By default, The `placeId` attribute is always returned in addition\n * to the other attributes you requested.\n *\n * The attributes available for places may vary. For example, opening hours\n * may not be available (or applicable) for geographic places or landmarks.\n *\n * You will only be charged for attributes that contain valid values for\n * the requested fields. If no data is available for the requested field,\n * `null` or an empty collection is returned and you are not charged. You are only charged once if\n * one or more attributes with valid values are returned from a price\n * group. To learn more, go to\n * [Pricing](https://places-service-preview.sites.afd.arcgis.com/rest/places/#pricing).\n *\n * Field | Price group\n * --- | ---\n * name | Place\n * categoryId | Place\n * address:country | Address\n * address:adminRegion | Address\n * address:region | Address\n * address:streetAddress | Address\n * address:extended | Address\n * address:poBox | Address\n * address:postcode | Address\n * address:postTown | Address\n * address:locality | Address\n * address:neighborhood | Address\n * address:censusBlockId | Address\n * address:designatedMarketArea | Address\n * contactInfo:telephone | Details\n * contactInfo:website | Details\n * contactInfo:fax | Details\n * contactInfo:email | Details\n * socialMedia:facebookId | Details\n * socialMedia:instagram | Details\n * socialMedia:twitter | Details\n * chains | Details\n * description | Details\n * rating:user | Details\n * rating:price | Details\n * hours:opening | Details\n * hours:popular | Details\n * hours:openingText | Details\n *\n * **Note**: You cannot permanently store places. Please see the [Terms of\n * use](https://developers.arcgis.com/documentation/mapping-apis-and-services/deployment/terms-of-use/).\n */\n placeIdGet: {\n parameters: {\n path: {\n /** The Id of the place for which you want to fetch additional details. */\n placeId: components[\"schemas\"][\"PlaceId\"];\n };\n query: {\n /**\n * The array of fields that define the attributes to return for a place.\n *\n * Use this parameter to define the attributes you would like returned,\n * for example `[\"name\", \"address:streetAddress\"]`. However, you can also\n * set this value to `[\"all\"]` to return all of the attributes available\n * for a place.\n *\n * The `placeId` attribute is always returned in addition to the other\n * attributes you requested. If a valid attribute value is not available,\n * `null`, or an empty collection, is returned and you are not charged for it. To see the fields and\n * pricing groups they belong to, go to the table above.\n */\n requestedFields: components[\"parameters\"][\"RequestedFieldsParam\"];\n /** The requested response format - either `json` or `pjson` (pretty json). */\n f?: components[\"parameters\"][\"FormatParam\"];\n };\n };\n responses: {\n 200: components[\"responses\"][\"PlaceDetailsResponse\"];\n 400: components[\"responses\"][\"InvalidQueryErrorResponse\"];\n 401: components[\"responses\"][\"UnauthorizedErrorResponse\"];\n 403: components[\"responses\"][\"PermissionMissingErrorResponse\"];\n 404: components[\"responses\"][\"IdNotFoundErrorResponse\"];\n \"5XX\": components[\"responses\"][\"ServerErrorResponse\"];\n };\n };\n}\n\nexport interface external {}\n"]}
1
+ {"version":3,"file":"openapi-types.js","sourceRoot":"","sources":["../../src/openapi-types.ts"],"names":[],"mappings":";AAAA;;;GAGG","sourcesContent":["/**\n * This file was auto-generated by openapi-typescript.\n * Do not make direct changes to the file.\n */\n\nexport interface paths {\n \"/categories\": {\n /**\n * A category describes a type of place, such as \"movie theater\" or \"zoo\".\n * The places service has over 1,000 categories (or types) of place. The\n * categories fall into ten general groups: Arts and Entertainment, Business\n * and Professional Services, Community and Government, Dining and Drinking,\n * Events, Health and Medicine, Landmarks and Outdoors, Retail, Sports and\n * Recreation, and Travel and Transportation.\n *\n * The categories are organized into a hierarchical system where a general\n * category contains many more detailed variations on the parent category.\n * For example: \"Travel and Transportation\" (Level 1),\n * \"Transport Hub\" (Level 2), \"Airport\" (Level 3) and \"Airport Terminal\"\n * (Level 4). The hierarchy has up to 5 levels of categories.\n *\n * The table below shows the top-level of categories, along with a\n * selection of level two categories.\n *\n * The `/categories` endpoint fetches the latest set of place categories.\n * The request returns all categories including their label and\n * `categoryId`. You should use this endpoint to fetch the latest set of\n * categories when your app starts up. Each category contains an unique ID\n * that you can use to perform a `near-point` or `within-extent` search.\n *\n * You can also reduce the list to a subset of categories using the\n * `filter` parameter. For example, searching for \"coffee\" would return\n * categories including:\n *\n * - \"Coffee Shop\"\n *\n * - \"Coffee Roaster\"\n *\n * - \"Turkish Coffeehouse\"\n *\n * |Category Label | Category ID | Level 2|\n * |--- | --- | ---|\n * |Arts and Entertainment | 10000 | Amusement Park (10001), Art Gallery (10004), Casino (10008), Exhibit (10016), Movie Theater (10024), Museum (10027), Stadium (10051), Water Park (10055), Zoo (10056), ...|\n * |Business and Professional Services | 11000 | Construction (11028), Convention Center (11029), Food and Beverage Service (11056), Health and Beauty Service (11061), Industrial Estate (11106), Office (11124), ...|\n * |Community and Government | 12000 | Education (12009), Organization (12082), Government Building (12064), Community Center (12004), Library (12080), Utility Company (12115), ...|\n * |Dining and Drinking | 13000 | Bakery (13002), Bar (13003), Cafe, Coffee, and Tea House (13032), Restaurant (13065, ...|\n * |Event | 14000 | Conference (14001), Convention (14002), Entertainment Event (14003), Marketplace (14009), ...|\n * |Health and Medicine | 15000 | Dentist (15007), Emergency Service (15008), Hospital (15014), Medical Center (15016), Optometrist (15024), Physician (15027), Veterinarian (15054), ...|\n * |Landmarks and Outdoors | 16000 | Beach (16003), Structure (16007), Campground (16008), Harbor or Marina (16018), Historic and Protected Site (16020), Monument (16026), Nature Preserve (16028), Park (16032), ...|\n * |Retail | 17000 | Arts and Crafts Store (17003), Bookstore (17018), Convenience Store (17029), Department Store (17033)|\n * |Sports and Recreation | 18000 | Athletic Field (18001), Baseball (18002), Basketball (18006), Football (18013), Golf (18016), Gym and Studio (18021), ...|\n * |Travel and Transportation | 19000 | Bike Rental (19002), Cruise (19005), Electric Vehicle Charging Station (19006), Fuel Station (19007), Lodging (19009), Transport Hub (19030), ...|\n *\n * **Note**: Category details are subject to change as new types of places\n * are introduced.\n *\n * **Note**: Query parameters are case-sensitive.\n */\n get: operations[\"categoriesGet\"];\n };\n \"/categories/{categoryId}\": {\n /**\n * The `/categories/{categoryId}` request returns all the groups to which the category belongs. You must supply a `category ID` to use this request.\n *\n * **Note**: Query parameters are case-sensitive.\n */\n get: operations[\"categoriesCategoryIdGet\"];\n };\n \"/places/near-point\": {\n /**\n * The `/places/near-point` request finds places that are within a given\n * radius of a specified location. The returned places contain basic data\n * such as name, category and location.\n *\n * To perform the request, you must supply the `x` and `y` coordinates of\n * the point from which to search. Optionally, you can also specify the:\n *\n * - Search radius (up to 10,000 meters)\n * - Category IDs\n * - Search text\n *\n * If the `pagination.nextUrl` property in the response is populated, then\n * you can page through the results to return more places. The maximum\n * number of places that can be paged to is 200.\n *\n * **Note**: You cannot permanently store places. Please see the [Terms of\n * use](https://developers.arcgis.com/documentation/mapping-apis-and-services/deployment/terms-of-use/).\n *\n * **Note**: Query parameters are case-sensitive.\n */\n get: operations[\"nearPointGet\"];\n };\n \"/places/within-extent\": {\n /**\n * The `/places/within-extent` request searches for places within an extent (bounding box).\n *\n * You must supply the `xmin`,\n * `ymin`, `xmax` and `ymax` coordinates to define the extent. The maximum width\n * and height of an extent that can be used in a search is 20,000 meters.\n *\n * You can also provide multiple categories or search text to find specific types of places within the extent.\n *\n * The default number of places returned (`pageSize`) is 10. The maximum `pageSize` value is 20.\n *\n * If the `pagination.nextUrl` property in the response is populated, then you can\n * page through the results to return more places. The maximum number of\n * places that can be paged to is 200.\n *\n * **Note**: You cannot permanently store places. Please see the [Terms of\n * use](https://developers.arcgis.com/documentation/mapping-apis-and-services/deployment/terms-of-use/).\n *\n * **Note**: Query parameters are case-sensitive.\n */\n get: operations[\"withinExtentGet\"];\n };\n \"/places/{placeId}\": {\n /**\n * The `/places/{placeId}` request returns details for a place.\n *\n * To request details, you use the `requestedFields` parameter to specify\n * the fields and the attributes you want from the **Place**,\n * **Address**, **Details** and/or **Location** price groups.\n *\n * It is always recommended to specify the fields you want, however, you\n * can also use `requestedFields=all` to return all of the attributes\n * available. By default, The `placeId` attribute is always returned in addition\n * to the other attributes you requested.\n *\n * The attributes available for places may vary. For example, opening hours\n * may not be available (or applicable) for geographic places or landmarks.\n *\n * You will only be charged for attributes that contain valid values for\n * the requested fields. If no data is available for the requested field,\n * `null` or an empty collection is returned and you are not charged. You\n * are only charged once if one or more attributes with valid values are\n * returned from a price group. To learn more, go to\n * [Pricing](https://developers.arcgis.com/pricing/).\n *\n * Field | Price group\n * --- | ---\n * additionalLocations:dropOff | Location\n * additionalLocations:frontDoor | Location\n * additionalLocations:road | Location\n * additionalLocations:roof | Location\n * address:adminRegion | Address\n * address:censusBlockId | Address\n * address:country | Address\n * address:designatedMarketArea | Address\n * address:extended | Address\n * address:locality | Address\n * address:neighborhood | Address\n * address:poBox | Address\n * address:postcode | Address\n * address:postTown | Address\n * address:region | Address\n * address:streetAddress | Address\n * categories | Place\n * chains | Details\n * contactInfo:email | Details\n * contactInfo:fax | Details\n * contactInfo:telephone | Details\n * contactInfo:website | Details\n * description | Details\n * hours:opening | Details\n * hours:openingText | Details\n * hours:popular | Details\n * location | Location\n * name | Place\n * rating:price | Details\n * rating:user | Details\n * socialMedia:facebookId | Details\n * socialMedia:instagram | Details\n * socialMedia:twitter | Details\n *\n * **Note**: You cannot permanently store places. Please see the [Terms of\n * use](https://developers.arcgis.com/documentation/mapping-apis-and-services/deployment/terms-of-use/).\n *\n * **Note**: Query parameters are case-sensitive.\n */\n get: operations[\"placeIdGet\"];\n };\n}\n\nexport interface components {\n schemas: {\n /**\n * @description An ID that uniquely identifies a place.\n *\n * A place ID is a 32 character string.\n *\n * @example 722d8e1ba4db8ec5ef256b09cf060782\n */\n PlaceId: string;\n /**\n * @description A result of searching for places using a `places/near-point` request.\n *\n * The result object includes a single place that satisfied the search and\n * the distance from the search point, in meters.\n */\n NearPointResult: {\n /**\n * @description The unique Id of this place.\n *\n * This place Id can be passed to the `places/{placeId}` endpoint to\n * retrieve additional details.\n *\n * @example 722d8e1ba4db8ec5ef256b09cf060782\n */\n placeId: components[\"schemas\"][\"PlaceId\"];\n /**\n * @description The location of this place as a WGS84 point.\n *\n * @example {\n * \"x\": -117.194769,\n * \"y\": 34.057289\n * }\n */\n location: components[\"schemas\"][\"Point\"];\n /**\n * @description A list of category objects for a place.\n *\n * Categories are uniquely identified by a `categoryId`. For example,\n * `17119` identifies a \"Bicycle Store\" and `10051` identifies a\n * \"Stadium\". Note that a single place can belong to multiple\n * categories (for example, a petrol station could also have a\n * super-market).\n *\n * @example [\n * {\n * \"categoryId\": 17119,\n * \"label\": \"Bicycle Store\"\n * }\n * ]\n */\n categories: components[\"schemas\"][\"Category\"][];\n /**\n * @description The name of the place, or point of interest.\n * You can search for places by name using the `searchText` property in\n * a `places/near-point` or `places/within-extent` request.\n *\n * @example Esri International\n */\n name: string;\n /**\n * @description The distance, in meters, from the place to the search point of a 'places/near-point` query.\n *\n * @example 50\n */\n distance: number;\n };\n /**\n * @description A result of searching for places using a `places/within-extent` request.\n *\n * The result object includes a single place that satisfied the search.\n */\n WithinExtentResult: {\n /**\n * @description The unique Id of this place.\n *\n * This place Id can be passed to the `places/{placeId}` endpoint to\n * retrieve additional details.\n *\n * @example 722d8e1ba4db8ec5ef256b09cf060782\n */\n placeId: components[\"schemas\"][\"PlaceId\"];\n /**\n * @description The location of this place as a WGS84 point.\n *\n * @example {\n * \"x\": -117.194769,\n * \"y\": 34.057289\n * }\n */\n location: components[\"schemas\"][\"Point\"];\n /**\n * @description A list of category objects for a place.\n *\n * Categories are uniquely identified by a `categoryId`. For example,\n * `17119` identifies a \"Bicycle Store\" and `10051` identifies a\n * \"Stadium\". Note that a single place can belong to multiple\n * categories (for example, a petrol station could also have a\n * super-market).\n *\n * @example [\n * {\n * \"categoryId\": 17119,\n * \"label\": \"Bicycle Store\"\n * }\n * ]\n */\n categories: components[\"schemas\"][\"Category\"][];\n /**\n * @description The name of the place, or point of interest.\n * You can search for places by name using the `searchText` property in\n * a `places/near-point` or `places/within-extent` request.\n *\n * @example Esri International\n */\n name: string;\n };\n /**\n * @description The additional details for a `Place`, including address, contact details, opening hours, and rating.\n *\n * You can request additional details for a place by using the `placeId` in\n * a `places/{placeId}` request. Use the `requestedFields` query parameter\n * to choose the fields or attributes that are included in the response.\n */\n PlaceDetails: {\n /**\n * @description The unique Id of this place.\n *\n * @example 722d8e1ba4db8ec5ef256b09cf060782\n */\n placeId: components[\"schemas\"][\"PlaceId\"];\n /**\n * @description A list of category objects for a place.\n *\n * Categories are uniquely identified by a `categoryId`. For example,\n * `17119` identifies a \"Bicycle Store\" and `10051` identifies a\n * \"Stadium\". Note that a single place can belong to multiple\n * categories (for example, a petrol station could also have a\n * super-market).\n *\n * This property is part of the \"Place\" attribute group.\n *\n * @example [\n * {\n * \"categoryId\": 17119,\n * \"label\": \"Bicycle Store\"\n * }\n * ]\n */\n categories?: components[\"schemas\"][\"Category\"][];\n /**\n * @description The name of the place, or point of interest.\n *\n * This property is part of the \"Place\" attribute group.\n *\n * @example Esri International\n */\n name?: string;\n /**\n * @description The location of this place as a WGS84 point.\n *\n * This property is part of the \"Location\" attribute group.\n *\n * @example {\n * \"x\": -117.194769,\n * \"y\": 34.057289\n * }\n */\n location?: components[\"schemas\"][\"Point\"];\n /**\n * @description A text description of the place.\n *\n * This property is part of the \"Details\" attribute group.\n *\n * @example Esri is the global market leader in geographic information system\n * (GIS) technology, location intelligence, mapping software, and\n * spatial analytics. Esri software is deployed in more than 350,000\n * organizations and 75 percent of Fortune 500 companies.\n */\n description?: string | null;\n /**\n * @description The address of the place or point of interest (POI).\n *\n * This object and child properties are part of the \"Address\" attribute\n * group.\n */\n address?: components[\"schemas\"][\"Address\"];\n /**\n * @description A set of additional locations that represent the place, for example the location of the front door, or of a drop off point.\n *\n * This object and child properties are part of the \"Location\"\n * attribute group.\n */\n additionalLocations?: components[\"schemas\"][\"AdditionalLocations\"];\n /**\n * @description Contact information for the place, such as the telephone number or email address.\n *\n * This object and child properties are part of the \"Details\" attribute\n * group.\n */\n contactInfo?: components[\"schemas\"][\"ContactInfo\"];\n /**\n * @description Social media information associated with the place.\n *\n * This object and child properties are part of the \"Details\" attribute\n * group.\n */\n socialMedia?: components[\"schemas\"][\"SocialMedia\"];\n /**\n * @description The operating hours for the place, including hours of opening and popular times.\n *\n * This object and child properties are part of the \"Details\" attribute\n * group.\n */\n hours?: components[\"schemas\"][\"Hours\"];\n /**\n * @description Rating information supplied by users of the place.\n *\n * This object and child properties are part of the \"Details\" attribute\n * group.\n */\n rating?: components[\"schemas\"][\"Rating\"];\n /**\n * @description Information about all the chains the place belongs to.\n *\n * This object and child properties are part of the \"Details\" attribute\n * group.\n *\n * @example [\n * {\n * \"name\": \"Starbucks\"\n * }\n * ]\n */\n chains?: components[\"schemas\"][\"ChainInfo\"][];\n };\n /** @example 17119 */\n CategoryId: string;\n /**\n * @description Represents the category of a place.\n *\n * You can get more information on categories from the `places/categories`\n * endpoint.\n */\n Category: {\n /**\n * @description The category Id uniquely identifies this category or type of place.\n *\n * The name of the category can be looked up using the\n * `places/categories` endpoint. For example, 17119 is the id for a\n * \"Bicycle Store\".\n *\n * @example 17119\n */\n categoryId: components[\"schemas\"][\"CategoryId\"];\n /**\n * @description The label that describes the category.\n *\n * @example Bicycle Store\n */\n label: string;\n };\n /**\n * @description Provides details about a category or type of place.\n *\n * Categories are hierarchical so that you can filter places based on\n * specific categories such as \"Provençal Restaurant\", or with more generic\n * types such as \"Restaurant\". A category such as \"Provençal Restaurant\"\n * includes the details of its more generic parent, such as \"French\n * Restaurant\".\n */\n CategoryDetails: {\n /**\n * @description A unique identifying string for a category.\n *\n * This matches the `categoryId` of a place's `category` property.\n *\n * @example 17119\n */\n categoryId: components[\"schemas\"][\"CategoryId\"];\n /** @description The full list of labels that describe the category, including its more generic parent categories. */\n fullLabel: string[];\n /** @description The list of parent category Ids for this category. */\n parents?: string[];\n };\n /**\n * Format: double\n * @description An x-coordinate, or longitude, in WGS84 decimal degrees.\n * @example -117.194769\n */\n XCoord: number;\n /**\n * Format: double\n * @description A y-coordinate, or latitude, in WGS84 decimal degrees.\n * @example 34.057289\n */\n YCoord: number;\n /**\n * Format: float\n * @description A search distance in meters.\n *\n * @default 1000\n * @example 50\n */\n SearchDistance: number;\n /**\n * @description A point defined in WGS84 decimal degrees.\n *\n * @example {\n * \"x\": -117.194769,\n * \"y\": 34.057289\n * }\n */\n Point: {\n /** @description The x, or longitude, of this location in WGS84 decimal degrees. */\n x: components[\"schemas\"][\"XCoord\"];\n /** @description The y, or latitude, of this location in WGS84 decimal degrees. */\n y: components[\"schemas\"][\"YCoord\"];\n };\n /**\n * @description A point defined in WGS84 decimal degrees.\n *\n * @example {\n * \"x\": -117.194769,\n * \"y\": 34.057289\n * }\n */\n NullablePoint: {\n /** @description The x, or longitude, of this location in WGS84 decimal degrees. */\n x: components[\"schemas\"][\"XCoord\"];\n /** @description The y, or latitude, of this location in WGS84 decimal degrees. */\n y: components[\"schemas\"][\"YCoord\"];\n } | null;\n /**\n * @description A pair of times defining the start and end of a time period.\n *\n * For example, this could define opening hours or popular hours. Hours are\n * shown in 24-hour time in the local timezone of the place or POI.\n *\n * Where a time range is 24-hours (for example a venue that is open 24-hours),\n * the `from` property will be 00:00 and the `to` property will be 23:59.\n *\n * @example {\n * \"from\": \"10:00\",\n * \"to\": \"13:00\"\n * }\n */\n TimeRange: {\n /**\n * @description The start of a time range in the format \"HH:MM\".\n * @example 09:00\n */\n from: string;\n /**\n * @description The end of a time range in the format \"HH:MM\".\n * @example 15:30\n */\n to: string;\n };\n /**\n * @description The opening or popular hours for a place.\n *\n * Opening hours are shown by day of the week. Each day can have several\n * pairs of from and to times. For example, if a coffee shop is open from\n * 9:00 until 12:00 and then again from 13:00 until 17:00, it would contain\n * two pairs of opening/closing times: 9:00 paired with 12:00 and 13:00\n * with 17:00. Hours are shown in 24-hour time in the local timezone of the\n * place or POI.\n */\n HoursByDay: {\n /**\n * @example [\n * {\n * \"from\": \"09:00\",\n * \"to\": \"17:00\"\n * }\n * ]\n */\n monday?: components[\"schemas\"][\"TimeRange\"][];\n /**\n * @example [\n * {\n * \"from\": \"09:00\",\n * \"to\": \"17:00\"\n * }\n * ]\n */\n tuesday?: components[\"schemas\"][\"TimeRange\"][];\n /**\n * @example [\n * {\n * \"from\": \"09:00\",\n * \"to\": \"12:00\"\n * },\n * {\n * \"from\": \"13:00\",\n * \"to\": \"17:00\"\n * }\n * ]\n */\n wednesday?: components[\"schemas\"][\"TimeRange\"][];\n /**\n * @example [\n * {\n * \"from\": \"09:00\",\n * \"to\": \"17:00\"\n * }\n * ]\n */\n thursday?: components[\"schemas\"][\"TimeRange\"][];\n /**\n * @example [\n * {\n * \"from\": \"09:00\",\n * \"to\": \"17:00\"\n * }\n * ]\n */\n friday?: components[\"schemas\"][\"TimeRange\"][];\n /**\n * @example [\n * {\n * \"from\": \"10:00\",\n * \"to\": \"17:00\"\n * }\n * ]\n */\n saturday?: components[\"schemas\"][\"TimeRange\"][];\n /**\n * @example [\n * {\n * \"from\": \"11:00\",\n * \"to\": \"12:00\"\n * }\n * ]\n */\n sunday?: components[\"schemas\"][\"TimeRange\"][];\n } | null;\n /**\n * @description Lists the opening hours of this place or POI along with the popular or busy hours.\n *\n * A string is also provided that can be used for display.\n */\n Hours: {\n /**\n * @description The opening hours for a place.\n *\n * Opening hours are shown by day of the week. Each day can have\n * several pairs of from and to times. For example, if a coffee shop is\n * open from 9:00 until 12:00 and then again from 13:00 until 17:00, it\n * would contain two pairs of from/to times: 09:00 paired with 12:00\n * and 13:00 with 17:00. Opening hours are shown in 24-hour time in the\n * local timezone of the place or POI.\n *\n * @example {\n * \"monday\": [\n * {\n * \"from\": \"09:00\",\n * \"to\": \"17:00\"\n * }\n * ],\n * \"tuesday\": [\n * {\n * \"from\": \"09:00\",\n * \"to\": \"17:00\"\n * }\n * ],\n * \"wednesday\": [\n * {\n * \"from\": \"09:00\",\n * \"to\": \"12:00\"\n * },\n * {\n * \"from\": \"13:00\",\n * \"to\": \"17:00\"\n * }\n * ],\n * \"thursday\": [\n * {\n * \"from\": \"09:00\",\n * \"to\": \"17:00\"\n * }\n * ],\n * \"friday\": [\n * {\n * \"from\": \"09:00\",\n * \"to\": \"17:30\"\n * }\n * ],\n * \"saturday\": [\n * {\n * \"from\": \"10:00\",\n * \"to\": \"17:00\"\n * }\n * ],\n * \"sunday\": [\n * {\n * \"from\": \"11:00\",\n * \"to\": \"12:00\"\n * }\n * ]\n * }\n */\n opening?: components[\"schemas\"][\"HoursByDay\"];\n /**\n * @description The popular or busy hours for a place.\n *\n * Popular hours are shown by day of the week. Each day can have\n * several pairs of from and to times. For example, if a coffee shop is\n * popular from 9:00 until 10:00 and then again from 14:00 until 15:00,\n * it would contain two pairs of from/to times: 09:00 paired with 10:00\n * and 14:00 with 15:00. Popular hours are shown in 24-hour time in the\n * local timezone of the place or POI.\n *\n * @example {\n * \"monday\": [\n * {\n * \"from\": \"10:00\",\n * \"to\": \"12:00\"\n * },\n * {\n * \"from\": \"14:00\",\n * \"to\": \"15:00\"\n * }\n * ],\n * \"tuesday\": [\n * {\n * \"from\": \"14:00\",\n * \"to\": \"15:00\"\n * }\n * ],\n * \"wednesday\": [\n * {\n * \"from\": \"10:00\",\n * \"to\": \"12:00\"\n * },\n * {\n * \"from\": \"14:00\",\n * \"to\": \"15:00\"\n * }\n * ],\n * \"thursday\": [\n * {\n * \"from\": \"14:00\",\n * \"to\": \"15:00\"\n * }\n * ],\n * \"friday\": [\n * {\n * \"from\": \"15:00\",\n * \"to\": \"17:00\"\n * }\n * ],\n * \"saturday\": [\n * {\n * \"from\": \"10:00\",\n * \"to\": \"12:00\"\n * }\n * ],\n * \"sunday\": [\n * {\n * \"from\": \"11:00\",\n * \"to\": \"12:00\"\n * }\n * ]\n * }\n */\n popular?: components[\"schemas\"][\"HoursByDay\"];\n /**\n * @description The opening hours for this place, formatted for display.\n *\n * @example Mon-Thu 12:00 PM-11:00 PM; Fri-Sat 12:00 PM-11:30 PM; Sun 12:00 PM-10:30 PM\n */\n openingText?: string | null;\n };\n /** @description Rating information about the price and user rating of the place. */\n Rating: {\n /**\n * @description An indication of the overall price of a place based on user reviews.\n *\n * @example cheap\n * @enum {string|null}\n */\n price?: (\"cheap\" | \"moderate\" | \"expensive\" | \"veryExpensive\") | null;\n /**\n * Format: float\n * @description A rating for the place based on user-reviews from 0 to 5, where 5 is the best rating.\n *\n * @example 4.5\n */\n user?: number | null;\n };\n /**\n * @description A set of additional locations for the place.\n *\n * This list provides alternative locations for accessing a place such as\n * `frontDoor` or `road`.\n */\n AdditionalLocations: {\n /**\n * @description A location for drop-off/pick-up for a place.\n *\n * @example {\n * \"x\": -0.279541,\n * \"y\": 51.556057\n * }\n */\n dropOff?: components[\"schemas\"][\"NullablePoint\"];\n /**\n * @description A location for the front door for a place.\n *\n * @example {\n * \"x\": -0.279541,\n * \"y\": 51.556057\n * }\n */\n frontDoor?: components[\"schemas\"][\"NullablePoint\"];\n /**\n * @description A road-side location for a place.\n *\n * @example {\n * \"x\": -0.279541,\n * \"y\": 51.556057\n * }\n */\n road?: components[\"schemas\"][\"NullablePoint\"];\n /**\n * @description A location in the roof centroid for a place.\n *\n * @example {\n * \"x\": -0.279541,\n * \"y\": 51.556057\n * }\n */\n roof?: components[\"schemas\"][\"NullablePoint\"];\n };\n /** @description The address of a place, or point of interest (POI). */\n Address: {\n /**\n * @description The street address for a place, for example the street name and number.\n *\n * @example 380 New York St\n */\n streetAddress?: string | null;\n /**\n * @description Additional address information, including suite or apartment numbers.\n *\n * @example Unit 32\n */\n extended?: string | null;\n /**\n * @description The city, town, or equivalent.\n * @example Redlands\n */\n locality?: string | null;\n /**\n * @description As defined by Nielsen, signifies a region where the population can receive similar TV and radio offerings (US only).\n *\n * @example Los Angeles\n */\n designatedMarketArea?: string | null;\n /**\n * @description The state, province, territory or equivalent.\n *\n * @example CA\n */\n region?: string | null;\n /**\n * @description Postal code or equivalent (zip code in the US).\n *\n * Format will be localized based on country.\n *\n * @example 92373\n */\n postcode?: string | null;\n /** @description Post-office box. */\n poBox?: string | null;\n /**\n * @description Two letter ISO country code\n * @example US\n */\n country?: string | null;\n /**\n * @description Additional sub-division.\n *\n * Usually, but not always, a country sub-division (e.g., Scotland).\n *\n * @example Scotland\n */\n adminRegion?: string | null;\n /**\n * @description Town/place employed in postal addressing.\n *\n * @example Edinburgh\n */\n postTown?: string | null;\n /**\n * @description The neighborhoods of the place.\n *\n * @example [\n * \"Downtown\"\n * ]\n */\n neighborhood?: string[];\n /**\n * @description The census block Id of the place (US only).\n *\n * @example 60710081003002\n */\n censusBlockId?: string | null;\n };\n /** @description The social media details for a place. */\n SocialMedia: {\n /**\n * @description The facebook Id of the place.\n * @example 211211155280\n */\n facebookId?: string | null;\n /**\n * @description The twitter handle of the place.\n * @example esri\n */\n twitter?: string | null;\n /** @description The instagram ID of the place. */\n instagram?: string | null;\n };\n /** @description The contact information for a place. */\n ContactInfo: {\n /**\n * @description The telephone number of the place.\n * @example (909) 793-2853\n */\n telephone?: string | null;\n /**\n * Format: url\n * @description The website address of the place.\n * @example https://www.esri.com/en-us/home\n */\n website?: string | null;\n /**\n * @description Fax number.\n * @example 0800 169 2008\n */\n fax?: string | null;\n /**\n * @description Email address.\n * @example support@esri.com\n */\n email?: string | null;\n };\n /** @description Information about a chain that a place belongs to. */\n ChainInfo: {\n /**\n * @description The name of the chain.\n *\n * @example Starbucks\n */\n name?: string | null;\n };\n /** @description Provides pagination links for accessing more results for the current request. */\n Pagination: {\n /**\n * Format: url\n * @description A url for fetching the previous page of results.\n *\n * Use this property to request the previous page of results if\n * available. If this property is omitted then there are no previous\n * pages of results. You must also supply authentication details, such\n * as a `token`, to make a previous page request.\n *\n * @example https://places-api.arcgis.com/arcgis/rest/services/places-service/v1/places/near-point?x=-117.194769&y=34.057289&radius=50.0&offset=0&pageSize=10\n */\n previousUrl?: string;\n /**\n * Format: url\n * @description A url for fetching the next page of results.\n *\n * Use this property to request the next page of results if available. If\n * this property is omitted then there are no more pages of results\n * available. You must also supply authentication details, such as a\n * `token`, to make a next page request.\n *\n * @example https://places-api.arcgis.com/arcgis/rest/services/places-service/v1/places/near-point?x=-117.194769&y=34.057289&radius=50.0&offset=20&pageSize=10\n */\n nextUrl?: string;\n };\n Error: {\n /** @description Error information */\n error: {\n /**\n * @description A code identifying the type of error.\n *\n * This can be an HTTP status code, `498` (invalid or expired\n * token), or `499` (missing token).\n *\n * @example 400\n * @enum {integer}\n */\n code: 400 | 401 | 403 | 404 | 498 | 499 | 500;\n /**\n * @description A message describing the error.\n * @example Parameter invalid.\n */\n message: string;\n /** @description List of details about the error. */\n details?: string[];\n /**\n * Format: url\n * @description A link to general information about the service, such as the owning system and token service URL.\n *\n * This property is only\n * present for errors relating to tokens.\n *\n * @example https://places-api.arcgis.com/arcgis/rest/info\n */\n restInfoUrl?: string;\n };\n };\n };\n responses: {\n /** Authentication Error. The API key or token is missing, invalid or expired. */\n UnauthorizedErrorResponse: {\n content: {\n \"application/json\": components[\"schemas\"][\"Error\"];\n };\n };\n /** An error occurred on the server. */\n ServerErrorResponse: {\n content: {\n \"application/json\": components[\"schemas\"][\"Error\"];\n };\n };\n /** Invalid query parameters. */\n InvalidQueryErrorResponse: {\n content: {\n \"application/json\": components[\"schemas\"][\"Error\"];\n };\n };\n /** A resource with the supplied Id was not found. */\n IdNotFoundErrorResponse: {\n content: {\n \"application/json\": components[\"schemas\"][\"Error\"];\n };\n };\n /** The required parameter 'token' is valid but does not have permission to access the service. */\n PermissionMissingErrorResponse: {\n content: {\n \"application/json\": components[\"schemas\"][\"Error\"];\n };\n };\n /** A successful request to return details for a single category. */\n CategoryDetailsResponse: {\n content: {\n \"application/json\": components[\"schemas\"][\"CategoryDetails\"];\n };\n };\n /** Details of categories that a `Place` can belong to. */\n CategoriesDetailsResponse: {\n content: {\n \"application/json\": {\n categories: components[\"schemas\"][\"CategoryDetails\"][];\n };\n };\n };\n /** A successful response for a `places/near-point` request. */\n NearPointResponse: {\n content: {\n \"application/json\": {\n results: components[\"schemas\"][\"NearPointResult\"][];\n pagination?: components[\"schemas\"][\"Pagination\"];\n };\n };\n };\n /** A successful response for a `places/within-extent` request. */\n WithinExtentResponse: {\n content: {\n \"application/json\": {\n results: components[\"schemas\"][\"WithinExtentResult\"][];\n pagination?: components[\"schemas\"][\"Pagination\"];\n };\n };\n };\n /** A successful response for a `places/{placeId}` request. */\n PlaceDetailsResponse: {\n content: {\n \"application/json\": {\n placeDetails: components[\"schemas\"][\"PlaceDetails\"];\n };\n };\n };\n };\n parameters: {\n /**\n * @description The radius in meters to search for places - measured from the supplied `x` and `y` coordinate.\n *\n * A radius of 100 meters will result in a circular search area that is 200\n * meters in diameter. If omitted, the default search radius will be 1,000\n * meters.\n */\n RadiusParam: components[\"schemas\"][\"SearchDistance\"];\n /**\n * @description The minimum x coordinate, or longitude, of the search extent.\n *\n * This is the furthest _west_ that will be searched.\n */\n XMinParam: components[\"schemas\"][\"XCoord\"];\n /**\n * @description The minimum y coordinate, or latitude, of the search extent.\n *\n * This is the furthest _south_ that will be searched.\n */\n YMinParam: components[\"schemas\"][\"YCoord\"];\n /**\n * @description The maximum x coordinate, or longitude, of the search extent.\n *\n * This is the furthest _east_ that will be searched.\n */\n XMaxParam: components[\"schemas\"][\"XCoord\"];\n /**\n * @description The maximum y coordinate, or latitude, of the search extent.\n *\n * This is the furthest _north_ that will be searched.\n */\n YMaxParam: components[\"schemas\"][\"YCoord\"];\n /**\n * @description Filters places to those that match the category Ids.\n *\n * Places will be returned if they match _any_ of the category Ids. If this\n * property is not set, places will be returned regardless of their\n * category.\n *\n * You can obtain information on category Ids from the\n * `places/categories` endpoint. For example, to filter for places\n * where the category is \"Bicycle Store\", include the categoryId\n * `17117` in this property.\n *\n * You can search up to a maximum of `10` category Ids.\n */\n CategoryIdsParam: components[\"schemas\"][\"CategoryId\"][];\n /** @description Free search text for places against names, categories etc. */\n SearchTextParam: string;\n /**\n * @description The number of places that should be sent in the response for a single request.\n *\n * You can set this to any value up to `20` when you need to control the\n * size of responses that your app downloads.\n *\n * If the query results in more than this page size, then the response\n * object will contain a `pagination.nextUrl`. This can be used to request\n * the next page of results.\n *\n * Regardless of paging, the maximum number of places that can be returned\n * in total is `200`.\n *\n * The default `pageSize` is 10.\n */\n PageSizeParam: number;\n /**\n * @description Request results starting from the given offset.\n *\n * This parameter works with the `pageSize` parameter to fetch results from\n * subsequent pages. For example, with a page size of 2, setting the\n * `offset` to `2` would return the 3rd and 4th results.\n *\n * Regardless of paging, the maximum number of places that can be returned\n * in total is `200`.\n */\n OffsetParam: number;\n /** @description The requested response format - either `json` or `pjson` (pretty json). */\n FormatParam: \"json\" | \"pjson\";\n /**\n * @description The ID of the category that you want to fetch details for.\n *\n * For example, using a category ID of `13035` would fetch details about\n * the \"Coffee Shop\" category.\n */\n CategoryIdParam: components[\"schemas\"][\"CategoryId\"];\n /**\n * @description A text filter that will be used for searching categories.\n *\n * The text must be at least three characters and will be applied as a\n * partial match. For example, using the filter \"off\" would return\n * categories using the word \"Office\" as well as those using the word\n * \"Coffee\".\n */\n CategoriesFilterParam: string;\n /**\n * @description The array of fields that define the attributes to return for a place.\n *\n * Use this parameter to define the attributes you would like returned,\n * for example `requestedFields=name,address:streetAddress`. However, you can also\n * set this value to `requestedFields=all` to return all of the attributes available\n * for a place.\n *\n * The `placeId` attribute is always returned in addition to the other\n * attributes you requested. If a valid attribute value is not available,\n * `null`, or an empty collection, is returned and you are not charged for\n * it. To see the fields and pricing groups they belong to, go to the table\n * above.\n */\n RequestedFieldsParam: (\n | \"all\"\n | \"additionalLocations\"\n | \"additionalLocations:dropOff\"\n | \"additionalLocations:frontDoor\"\n | \"additionalLocations:road\"\n | \"additionalLocations:roof\"\n | \"address\"\n | \"address:adminRegion\"\n | \"address:censusBlockId\"\n | \"address:country\"\n | \"address:designatedMarketArea\"\n | \"address:extended\"\n | \"address:locality\"\n | \"address:neighborhood\"\n | \"address:poBox\"\n | \"address:postcode\"\n | \"address:postTown\"\n | \"address:region\"\n | \"address:streetAddress\"\n | \"categories\"\n | \"contactInfo\"\n | \"contactInfo:email\"\n | \"contactInfo:fax\"\n | \"contactInfo:telephone\"\n | \"contactInfo:website\"\n | \"chains\"\n | \"description\"\n | \"hours\"\n | \"hours:opening\"\n | \"hours:openingText\"\n | \"hours:popular\"\n | \"location\"\n | \"name\"\n | \"rating\"\n | \"rating:price\"\n | \"rating:user\"\n | \"socialMedia\"\n | \"socialMedia:facebookId\"\n | \"socialMedia:instagram\"\n | \"socialMedia:twitter\"\n )[];\n /**\n * @description The authentication token with the `premium:user:places` [privilege](https://developers.arcgis.com/rest/users-groups-and-items/privileges.htm), used to access the Places service.\n *\n * The `token` parameter can be either an API Key or short-lived token. See\n * [ArcGIS security\n * documentation](https://developers.arcgis.com/documentation/mapping-apis-and-services/security/)\n * for more information on authenticating with a token or API key.\n *\n * Alternatively, you can supply a token in the request header with one of\n * the following keys using the \"Bearer\" scheme:\n *\n * - `Authorization: Bearer <YOUR_TOKEN>`\n * - `X-Esri-Authorization: Bearer <YOUR_TOKEN>`\n */\n TokenParam: string;\n };\n}\n\nexport interface operations {\n /**\n * A category describes a type of place, such as \"movie theater\" or \"zoo\".\n * The places service has over 1,000 categories (or types) of place. The\n * categories fall into ten general groups: Arts and Entertainment, Business\n * and Professional Services, Community and Government, Dining and Drinking,\n * Events, Health and Medicine, Landmarks and Outdoors, Retail, Sports and\n * Recreation, and Travel and Transportation.\n *\n * The categories are organized into a hierarchical system where a general\n * category contains many more detailed variations on the parent category.\n * For example: \"Travel and Transportation\" (Level 1),\n * \"Transport Hub\" (Level 2), \"Airport\" (Level 3) and \"Airport Terminal\"\n * (Level 4). The hierarchy has up to 5 levels of categories.\n *\n * The table below shows the top-level of categories, along with a\n * selection of level two categories.\n *\n * The `/categories` endpoint fetches the latest set of place categories.\n * The request returns all categories including their label and\n * `categoryId`. You should use this endpoint to fetch the latest set of\n * categories when your app starts up. Each category contains an unique ID\n * that you can use to perform a `near-point` or `within-extent` search.\n *\n * You can also reduce the list to a subset of categories using the\n * `filter` parameter. For example, searching for \"coffee\" would return\n * categories including:\n *\n * - \"Coffee Shop\"\n *\n * - \"Coffee Roaster\"\n *\n * - \"Turkish Coffeehouse\"\n *\n * |Category Label | Category ID | Level 2|\n * |--- | --- | ---|\n * |Arts and Entertainment | 10000 | Amusement Park (10001), Art Gallery (10004), Casino (10008), Exhibit (10016), Movie Theater (10024), Museum (10027), Stadium (10051), Water Park (10055), Zoo (10056), ...|\n * |Business and Professional Services | 11000 | Construction (11028), Convention Center (11029), Food and Beverage Service (11056), Health and Beauty Service (11061), Industrial Estate (11106), Office (11124), ...|\n * |Community and Government | 12000 | Education (12009), Organization (12082), Government Building (12064), Community Center (12004), Library (12080), Utility Company (12115), ...|\n * |Dining and Drinking | 13000 | Bakery (13002), Bar (13003), Cafe, Coffee, and Tea House (13032), Restaurant (13065, ...|\n * |Event | 14000 | Conference (14001), Convention (14002), Entertainment Event (14003), Marketplace (14009), ...|\n * |Health and Medicine | 15000 | Dentist (15007), Emergency Service (15008), Hospital (15014), Medical Center (15016), Optometrist (15024), Physician (15027), Veterinarian (15054), ...|\n * |Landmarks and Outdoors | 16000 | Beach (16003), Structure (16007), Campground (16008), Harbor or Marina (16018), Historic and Protected Site (16020), Monument (16026), Nature Preserve (16028), Park (16032), ...|\n * |Retail | 17000 | Arts and Crafts Store (17003), Bookstore (17018), Convenience Store (17029), Department Store (17033)|\n * |Sports and Recreation | 18000 | Athletic Field (18001), Baseball (18002), Basketball (18006), Football (18013), Golf (18016), Gym and Studio (18021), ...|\n * |Travel and Transportation | 19000 | Bike Rental (19002), Cruise (19005), Electric Vehicle Charging Station (19006), Fuel Station (19007), Lodging (19009), Transport Hub (19030), ...|\n *\n * **Note**: Category details are subject to change as new types of places\n * are introduced.\n *\n * **Note**: Query parameters are case-sensitive.\n */\n categoriesGet: {\n parameters: {\n query: {\n /**\n * A text filter that will be used for searching categories.\n *\n * The text must be at least three characters and will be applied as a\n * partial match. For example, using the filter \"off\" would return\n * categories using the word \"Office\" as well as those using the word\n * \"Coffee\".\n */\n filter?: components[\"parameters\"][\"CategoriesFilterParam\"];\n /** The requested response format - either `json` or `pjson` (pretty json). */\n f?: components[\"parameters\"][\"FormatParam\"];\n /**\n * The authentication token with the `premium:user:places` [privilege](https://developers.arcgis.com/rest/users-groups-and-items/privileges.htm), used to access the Places service.\n *\n * The `token` parameter can be either an API Key or short-lived token. See\n * [ArcGIS security\n * documentation](https://developers.arcgis.com/documentation/mapping-apis-and-services/security/)\n * for more information on authenticating with a token or API key.\n *\n * Alternatively, you can supply a token in the request header with one of\n * the following keys using the \"Bearer\" scheme:\n *\n * - `Authorization: Bearer <YOUR_TOKEN>`\n * - `X-Esri-Authorization: Bearer <YOUR_TOKEN>`\n */\n token?: components[\"parameters\"][\"TokenParam\"];\n };\n };\n responses: {\n 200: components[\"responses\"][\"CategoriesDetailsResponse\"];\n 400: components[\"responses\"][\"InvalidQueryErrorResponse\"];\n 401: components[\"responses\"][\"UnauthorizedErrorResponse\"];\n 403: components[\"responses\"][\"PermissionMissingErrorResponse\"];\n \"5XX\": components[\"responses\"][\"ServerErrorResponse\"];\n };\n };\n /**\n * The `/categories/{categoryId}` request returns all the groups to which the category belongs. You must supply a `category ID` to use this request.\n *\n * **Note**: Query parameters are case-sensitive.\n */\n categoriesCategoryIdGet: {\n parameters: {\n path: {\n /**\n * The ID of the category that you want to fetch details for.\n *\n * For example, using a category ID of `13035` would fetch details about\n * the \"Coffee Shop\" category.\n */\n categoryId: components[\"parameters\"][\"CategoryIdParam\"];\n };\n query: {\n /** The requested response format - either `json` or `pjson` (pretty json). */\n f?: components[\"parameters\"][\"FormatParam\"];\n /**\n * The authentication token with the `premium:user:places` [privilege](https://developers.arcgis.com/rest/users-groups-and-items/privileges.htm), used to access the Places service.\n *\n * The `token` parameter can be either an API Key or short-lived token. See\n * [ArcGIS security\n * documentation](https://developers.arcgis.com/documentation/mapping-apis-and-services/security/)\n * for more information on authenticating with a token or API key.\n *\n * Alternatively, you can supply a token in the request header with one of\n * the following keys using the \"Bearer\" scheme:\n *\n * - `Authorization: Bearer <YOUR_TOKEN>`\n * - `X-Esri-Authorization: Bearer <YOUR_TOKEN>`\n */\n token?: components[\"parameters\"][\"TokenParam\"];\n };\n };\n responses: {\n 200: components[\"responses\"][\"CategoryDetailsResponse\"];\n 400: components[\"responses\"][\"InvalidQueryErrorResponse\"];\n 401: components[\"responses\"][\"UnauthorizedErrorResponse\"];\n 403: components[\"responses\"][\"PermissionMissingErrorResponse\"];\n 404: components[\"responses\"][\"IdNotFoundErrorResponse\"];\n \"5XX\": components[\"responses\"][\"ServerErrorResponse\"];\n };\n };\n /**\n * The `/places/near-point` request finds places that are within a given\n * radius of a specified location. The returned places contain basic data\n * such as name, category and location.\n *\n * To perform the request, you must supply the `x` and `y` coordinates of\n * the point from which to search. Optionally, you can also specify the:\n *\n * - Search radius (up to 10,000 meters)\n * - Category IDs\n * - Search text\n *\n * If the `pagination.nextUrl` property in the response is populated, then\n * you can page through the results to return more places. The maximum\n * number of places that can be paged to is 200.\n *\n * **Note**: You cannot permanently store places. Please see the [Terms of\n * use](https://developers.arcgis.com/documentation/mapping-apis-and-services/deployment/terms-of-use/).\n *\n * **Note**: Query parameters are case-sensitive.\n */\n nearPointGet: {\n parameters: {\n query: {\n /** The x coordinate, or longitude, to search from, in WGS84 decimal degrees. */\n x: components[\"schemas\"][\"XCoord\"];\n /** The y coordinate, or latitude, to search from, in WGS84 decimal degrees. */\n y: components[\"schemas\"][\"YCoord\"];\n /**\n * The radius in meters to search for places - measured from the supplied `x` and `y` coordinate.\n *\n * A radius of 100 meters will result in a circular search area that is 200\n * meters in diameter. If omitted, the default search radius will be 1,000\n * meters.\n */\n radius?: components[\"parameters\"][\"RadiusParam\"];\n /**\n * Filters places to those that match the category Ids.\n *\n * Places will be returned if they match _any_ of the category Ids. If this\n * property is not set, places will be returned regardless of their\n * category.\n *\n * You can obtain information on category Ids from the\n * `places/categories` endpoint. For example, to filter for places\n * where the category is \"Bicycle Store\", include the categoryId\n * `17117` in this property.\n *\n * You can search up to a maximum of `10` category Ids.\n */\n categoryIds?: components[\"parameters\"][\"CategoryIdsParam\"];\n /** Free search text for places against names, categories etc. */\n searchText?: components[\"parameters\"][\"SearchTextParam\"];\n /**\n * The number of places that should be sent in the response for a single request.\n *\n * You can set this to any value up to `20` when you need to control the\n * size of responses that your app downloads.\n *\n * If the query results in more than this page size, then the response\n * object will contain a `pagination.nextUrl`. This can be used to request\n * the next page of results.\n *\n * Regardless of paging, the maximum number of places that can be returned\n * in total is `200`.\n *\n * The default `pageSize` is 10.\n */\n pageSize?: components[\"parameters\"][\"PageSizeParam\"];\n /**\n * Request results starting from the given offset.\n *\n * This parameter works with the `pageSize` parameter to fetch results from\n * subsequent pages. For example, with a page size of 2, setting the\n * `offset` to `2` would return the 3rd and 4th results.\n *\n * Regardless of paging, the maximum number of places that can be returned\n * in total is `200`.\n */\n offset?: components[\"parameters\"][\"OffsetParam\"];\n /** The requested response format - either `json` or `pjson` (pretty json). */\n f?: components[\"parameters\"][\"FormatParam\"];\n /**\n * The authentication token with the `premium:user:places` [privilege](https://developers.arcgis.com/rest/users-groups-and-items/privileges.htm), used to access the Places service.\n *\n * The `token` parameter can be either an API Key or short-lived token. See\n * [ArcGIS security\n * documentation](https://developers.arcgis.com/documentation/mapping-apis-and-services/security/)\n * for more information on authenticating with a token or API key.\n *\n * Alternatively, you can supply a token in the request header with one of\n * the following keys using the \"Bearer\" scheme:\n *\n * - `Authorization: Bearer <YOUR_TOKEN>`\n * - `X-Esri-Authorization: Bearer <YOUR_TOKEN>`\n */\n token?: components[\"parameters\"][\"TokenParam\"];\n };\n };\n responses: {\n 200: components[\"responses\"][\"NearPointResponse\"];\n 400: components[\"responses\"][\"InvalidQueryErrorResponse\"];\n 401: components[\"responses\"][\"UnauthorizedErrorResponse\"];\n 403: components[\"responses\"][\"PermissionMissingErrorResponse\"];\n \"5XX\": components[\"responses\"][\"ServerErrorResponse\"];\n };\n };\n /**\n * The `/places/within-extent` request searches for places within an extent (bounding box).\n *\n * You must supply the `xmin`,\n * `ymin`, `xmax` and `ymax` coordinates to define the extent. The maximum width\n * and height of an extent that can be used in a search is 20,000 meters.\n *\n * You can also provide multiple categories or search text to find specific types of places within the extent.\n *\n * The default number of places returned (`pageSize`) is 10. The maximum `pageSize` value is 20.\n *\n * If the `pagination.nextUrl` property in the response is populated, then you can\n * page through the results to return more places. The maximum number of\n * places that can be paged to is 200.\n *\n * **Note**: You cannot permanently store places. Please see the [Terms of\n * use](https://developers.arcgis.com/documentation/mapping-apis-and-services/deployment/terms-of-use/).\n *\n * **Note**: Query parameters are case-sensitive.\n */\n withinExtentGet: {\n parameters: {\n query: {\n /**\n * The minimum x coordinate, or longitude, of the search extent.\n *\n * This is the furthest _west_ that will be searched.\n */\n xmin: components[\"parameters\"][\"XMinParam\"];\n /**\n * The minimum y coordinate, or latitude, of the search extent.\n *\n * This is the furthest _south_ that will be searched.\n */\n ymin: components[\"parameters\"][\"YMinParam\"];\n /**\n * The maximum x coordinate, or longitude, of the search extent.\n *\n * This is the furthest _east_ that will be searched.\n */\n xmax: components[\"parameters\"][\"XMaxParam\"];\n /**\n * The maximum y coordinate, or latitude, of the search extent.\n *\n * This is the furthest _north_ that will be searched.\n */\n ymax: components[\"parameters\"][\"YMaxParam\"];\n /**\n * Filters places to those that match the category Ids.\n *\n * Places will be returned if they match _any_ of the category Ids. If this\n * property is not set, places will be returned regardless of their\n * category.\n *\n * You can obtain information on category Ids from the\n * `places/categories` endpoint. For example, to filter for places\n * where the category is \"Bicycle Store\", include the categoryId\n * `17117` in this property.\n *\n * You can search up to a maximum of `10` category Ids.\n */\n categoryIds?: components[\"parameters\"][\"CategoryIdsParam\"];\n /** Free search text for places against names, categories etc. */\n searchText?: components[\"parameters\"][\"SearchTextParam\"];\n /**\n * The number of places that should be sent in the response for a single request.\n *\n * You can set this to any value up to `20` when you need to control the\n * size of responses that your app downloads.\n *\n * If the query results in more than this page size, then the response\n * object will contain a `pagination.nextUrl`. This can be used to request\n * the next page of results.\n *\n * Regardless of paging, the maximum number of places that can be returned\n * in total is `200`.\n *\n * The default `pageSize` is 10.\n */\n pageSize?: components[\"parameters\"][\"PageSizeParam\"];\n /**\n * Request results starting from the given offset.\n *\n * This parameter works with the `pageSize` parameter to fetch results from\n * subsequent pages. For example, with a page size of 2, setting the\n * `offset` to `2` would return the 3rd and 4th results.\n *\n * Regardless of paging, the maximum number of places that can be returned\n * in total is `200`.\n */\n offset?: components[\"parameters\"][\"OffsetParam\"];\n /** The requested response format - either `json` or `pjson` (pretty json). */\n f?: components[\"parameters\"][\"FormatParam\"];\n /**\n * The authentication token with the `premium:user:places` [privilege](https://developers.arcgis.com/rest/users-groups-and-items/privileges.htm), used to access the Places service.\n *\n * The `token` parameter can be either an API Key or short-lived token. See\n * [ArcGIS security\n * documentation](https://developers.arcgis.com/documentation/mapping-apis-and-services/security/)\n * for more information on authenticating with a token or API key.\n *\n * Alternatively, you can supply a token in the request header with one of\n * the following keys using the \"Bearer\" scheme:\n *\n * - `Authorization: Bearer <YOUR_TOKEN>`\n * - `X-Esri-Authorization: Bearer <YOUR_TOKEN>`\n */\n token?: components[\"parameters\"][\"TokenParam\"];\n };\n };\n responses: {\n 200: components[\"responses\"][\"WithinExtentResponse\"];\n 400: components[\"responses\"][\"InvalidQueryErrorResponse\"];\n 401: components[\"responses\"][\"UnauthorizedErrorResponse\"];\n 403: components[\"responses\"][\"PermissionMissingErrorResponse\"];\n \"5XX\": components[\"responses\"][\"ServerErrorResponse\"];\n };\n };\n /**\n * The `/places/{placeId}` request returns details for a place.\n *\n * To request details, you use the `requestedFields` parameter to specify\n * the fields and the attributes you want from the **Place**,\n * **Address**, **Details** and/or **Location** price groups.\n *\n * It is always recommended to specify the fields you want, however, you\n * can also use `requestedFields=all` to return all of the attributes\n * available. By default, The `placeId` attribute is always returned in addition\n * to the other attributes you requested.\n *\n * The attributes available for places may vary. For example, opening hours\n * may not be available (or applicable) for geographic places or landmarks.\n *\n * You will only be charged for attributes that contain valid values for\n * the requested fields. If no data is available for the requested field,\n * `null` or an empty collection is returned and you are not charged. You\n * are only charged once if one or more attributes with valid values are\n * returned from a price group. To learn more, go to\n * [Pricing](https://developers.arcgis.com/pricing/).\n *\n * Field | Price group\n * --- | ---\n * additionalLocations:dropOff | Location\n * additionalLocations:frontDoor | Location\n * additionalLocations:road | Location\n * additionalLocations:roof | Location\n * address:adminRegion | Address\n * address:censusBlockId | Address\n * address:country | Address\n * address:designatedMarketArea | Address\n * address:extended | Address\n * address:locality | Address\n * address:neighborhood | Address\n * address:poBox | Address\n * address:postcode | Address\n * address:postTown | Address\n * address:region | Address\n * address:streetAddress | Address\n * categories | Place\n * chains | Details\n * contactInfo:email | Details\n * contactInfo:fax | Details\n * contactInfo:telephone | Details\n * contactInfo:website | Details\n * description | Details\n * hours:opening | Details\n * hours:openingText | Details\n * hours:popular | Details\n * location | Location\n * name | Place\n * rating:price | Details\n * rating:user | Details\n * socialMedia:facebookId | Details\n * socialMedia:instagram | Details\n * socialMedia:twitter | Details\n *\n * **Note**: You cannot permanently store places. Please see the [Terms of\n * use](https://developers.arcgis.com/documentation/mapping-apis-and-services/deployment/terms-of-use/).\n *\n * **Note**: Query parameters are case-sensitive.\n */\n placeIdGet: {\n parameters: {\n path: {\n /** The Id of the place for which you want to fetch additional details. */\n placeId: components[\"schemas\"][\"PlaceId\"];\n };\n query: {\n /**\n * The array of fields that define the attributes to return for a place.\n *\n * Use this parameter to define the attributes you would like returned,\n * for example `requestedFields=name,address:streetAddress`. However, you can also\n * set this value to `requestedFields=all` to return all of the attributes available\n * for a place.\n *\n * The `placeId` attribute is always returned in addition to the other\n * attributes you requested. If a valid attribute value is not available,\n * `null`, or an empty collection, is returned and you are not charged for\n * it. To see the fields and pricing groups they belong to, go to the table\n * above.\n */\n requestedFields: components[\"parameters\"][\"RequestedFieldsParam\"];\n /** The requested response format - either `json` or `pjson` (pretty json). */\n f?: components[\"parameters\"][\"FormatParam\"];\n /**\n * The authentication token with the `premium:user:places` [privilege](https://developers.arcgis.com/rest/users-groups-and-items/privileges.htm), used to access the Places service.\n *\n * The `token` parameter can be either an API Key or short-lived token. See\n * [ArcGIS security\n * documentation](https://developers.arcgis.com/documentation/mapping-apis-and-services/security/)\n * for more information on authenticating with a token or API key.\n *\n * Alternatively, you can supply a token in the request header with one of\n * the following keys using the \"Bearer\" scheme:\n *\n * - `Authorization: Bearer <YOUR_TOKEN>`\n * - `X-Esri-Authorization: Bearer <YOUR_TOKEN>`\n */\n token?: components[\"parameters\"][\"TokenParam\"];\n };\n };\n responses: {\n 200: components[\"responses\"][\"PlaceDetailsResponse\"];\n 400: components[\"responses\"][\"InvalidQueryErrorResponse\"];\n 401: components[\"responses\"][\"UnauthorizedErrorResponse\"];\n 403: components[\"responses\"][\"PermissionMissingErrorResponse\"];\n 404: components[\"responses\"][\"IdNotFoundErrorResponse\"];\n \"5XX\": components[\"responses\"][\"ServerErrorResponse\"];\n };\n };\n}\n\nexport interface external {}\n"]}
package/dist/cjs/utils.js CHANGED
@@ -3,8 +3,8 @@ Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.getNextPageParams = exports.hasNextPage = exports.baseUrl = void 0;
4
4
  exports.baseUrl = "https://places-api.arcgis.com/arcgis/rest/services/places-service/v1";
5
5
  function hasNextPage(response) {
6
- var _a;
7
- return !!((_a = response === null || response === void 0 ? void 0 : response.links) === null || _a === void 0 ? void 0 : _a.next);
6
+ var _a, _b;
7
+ return !!((_a = response === null || response === void 0 ? void 0 : response.links) === null || _a === void 0 ? void 0 : _a.next) || !!((_b = response === null || response === void 0 ? void 0 : response.pagination) === null || _b === void 0 ? void 0 : _b.nextUrl);
8
8
  }
9
9
  exports.hasNextPage = hasNextPage;
10
10
  function getNextPageParams(currentOffset = 0, currentPageSize = 10) {
@@ -1 +1 @@
1
- {"version":3,"file":"utils.js","sourceRoot":"","sources":["../../src/utils.ts"],"names":[],"mappings":";;;AAAa,QAAA,OAAO,GAClB,sEAAsE,CAAC;AAEzE,SAAgB,WAAW,CAAC,QAAa;;IACvC,OAAO,CAAC,CAAC,CAAA,MAAA,QAAQ,aAAR,QAAQ,uBAAR,QAAQ,CAAE,KAAK,0CAAE,IAAI,CAAA,CAAC;AACjC,CAAC;AAFD,kCAEC;AAED,SAAgB,iBAAiB,CAAC,aAAa,GAAG,CAAC,EAAE,eAAe,GAAG,EAAE;IACvE,OAAO;QACL,MAAM,EAAE,aAAa,GAAG,eAAe;QACvC,QAAQ,EAAE,eAAe;KAC1B,CAAC;AACJ,CAAC;AALD,8CAKC","sourcesContent":["export const baseUrl =\n \"https://places-api.arcgis.com/arcgis/rest/services/places-service/v1\";\n\nexport function hasNextPage(response: any) {\n return !!response?.links?.next;\n}\n\nexport function getNextPageParams(currentOffset = 0, currentPageSize = 10) {\n return {\n offset: currentOffset + currentPageSize,\n pageSize: currentPageSize\n };\n}\n"]}
1
+ {"version":3,"file":"utils.js","sourceRoot":"","sources":["../../src/utils.ts"],"names":[],"mappings":";;;AAAa,QAAA,OAAO,GAClB,sEAAsE,CAAC;AAEzE,SAAgB,WAAW,CAAC,QAAa;;IACvC,OAAO,CAAC,CAAC,CAAA,MAAA,QAAQ,aAAR,QAAQ,uBAAR,QAAQ,CAAE,KAAK,0CAAE,IAAI,CAAA,IAAI,CAAC,CAAC,CAAA,MAAA,QAAQ,aAAR,QAAQ,uBAAR,QAAQ,CAAE,UAAU,0CAAE,OAAO,CAAA,CAAC;AACpE,CAAC;AAFD,kCAEC;AAED,SAAgB,iBAAiB,CAAC,aAAa,GAAG,CAAC,EAAE,eAAe,GAAG,EAAE;IACvE,OAAO;QACL,MAAM,EAAE,aAAa,GAAG,eAAe;QACvC,QAAQ,EAAE,eAAe;KAC1B,CAAC;AACJ,CAAC;AALD,8CAKC","sourcesContent":["export const baseUrl =\n \"https://places-api.arcgis.com/arcgis/rest/services/places-service/v1\";\n\nexport function hasNextPage(response: any) {\n return !!response?.links?.next || !!response?.pagination?.nextUrl;\n}\n\nexport function getNextPageParams(currentOffset = 0, currentPageSize = 10) {\n return {\n offset: currentOffset + currentPageSize,\n pageSize: currentPageSize\n };\n}\n"]}
@@ -31,11 +31,9 @@ export interface IFindPlacesNearPointOptions extends Omit<IRequestOptions, "http
31
31
  * - A partial name filter with `name` option
32
32
  *
33
33
  * As this request can return many results, pagination is supported.
34
- * Regardless of paging, the maximum number of places that can be returned
35
- * by a single query is `200`. When a query results in more than `200`
36
- * places, the response will contain the property
37
- * `"maxResultsExceeded":true` in addition to place results. If `maxResultsExceeded`
38
- * is true an additional method `response.nextPage()` can be used to get the next page of results.
34
+ * When a query results in more than [pageSize] places, the response will contain the property
35
+ * `pagination` in addition to place results. If `pagination` exists, an additional method
36
+ * `response.nextPage()` can be used to get the next page of results.
39
37
  *
40
38
  * ```js
41
39
  * import { findPlacesNearPoint } from "@esri/arcgis-rest-places";
@@ -18,11 +18,9 @@ import { baseUrl, hasNextPage, getNextPageParams } from "./utils.js";
18
18
  * - A partial name filter with `name` option
19
19
  *
20
20
  * As this request can return many results, pagination is supported.
21
- * Regardless of paging, the maximum number of places that can be returned
22
- * by a single query is `200`. When a query results in more than `200`
23
- * places, the response will contain the property
24
- * `"maxResultsExceeded":true` in addition to place results. If `maxResultsExceeded`
25
- * is true an additional method `response.nextPage()` can be used to get the next page of results.
21
+ * When a query results in more than [pageSize] places, the response will contain the property
22
+ * `pagination` in addition to place results. If `pagination` exists, an additional method
23
+ * `response.nextPage()` can be used to get the next page of results.
26
24
  *
27
25
  * ```js
28
26
  * import { findPlacesNearPoint } from "@esri/arcgis-rest-places";
@@ -1 +1 @@
1
- {"version":3,"file":"findPlacesNearPoint.js","sourceRoot":"","sources":["../../src/findPlacesNearPoint.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,OAAO,EACP,kBAAkB,EAEnB,MAAM,2BAA2B,CAAC;AAGnC,OAAO,EAAE,OAAO,EAAE,WAAW,EAAE,iBAAiB,EAAE,MAAM,YAAY,CAAC;AA2BrE;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAqCG;AACH,MAAM,UAAU,mBAAmB,CACjC,cAA2C;IAE3C,MAAM,OAAO,GAAG,kBAAkB,CAChC,cAAc,EACd,CAAC,GAAG,EAAE,GAAG,EAAE,QAAQ,EAAE,aAAa,EAAE,UAAU,EAAE,QAAQ,EAAE,YAAY,CAAC,oBAElE,cAAc,EAEpB,CAAC;IAEF,OACE,OAAO,CAAC,GAAG,OAAO,oBAAoB,kCACjC,OAAO,KACV,UAAU,EAAE,KAAK,IAEpB,CAAC,IAAI,CAAC,CAAC,QAAQ,EAAE,EAAE;QAClB,MAAM,CAAC,qBACF,QAAQ,CACZ,CAAC;QAEF,IAAI,WAAW,CAAC,QAAQ,CAAC,EAAE;YACzB,CAAC,CAAC,QAAQ,GAAG,GAAG,EAAE;gBAChB,MAAM,WAAW,mCACZ,cAAc,GACd,iBAAiB,CAAC,cAAc,CAAC,MAAM,EAAE,cAAc,CAAC,QAAQ,CAAC,CACrE,CAAC;gBACF,OAAO,mBAAmB,CAAC,WAAW,CAAC,CAAC;YAC1C,CAAC,CAAC;SACH;QAED,OAAO,CAAC,CAAC;IACX,CAAC,CAAC,CAAC;AACL,CAAC","sourcesContent":["import {\n request,\n appendCustomParams,\n IRequestOptions\n} from \"@esri/arcgis-rest-request\";\n\nimport { operations } from \"./openapi-types.js\";\nimport { baseUrl, hasNextPage, getNextPageParams } from \"./utils.js\";\n\n// determine the list of allowed params we want to allow as options\n// this should match the array given to appendCustomParams below\ntype queryParams = Pick<\n operations[\"nearPointGet\"][\"parameters\"][\"query\"],\n \"x\" | \"y\" | \"radius\" | \"categoryIds\" | \"pageSize\" | \"offset\" | \"searchText\"\n>;\n\n// get the correct type of the response format\ntype successResponse =\n operations[\"nearPointGet\"][\"responses\"][\"200\"][\"content\"][\"application/json\"];\n\n/**\n * The response format for {@linkcode findPlacesNearPoint};\n */\nexport interface IFindPlacesNearPointResponse extends successResponse {\n nextPage?: () => Promise<IFindPlacesNearPointResponse>;\n}\n\n/**\n * Options for {@linkcode findPlacesNearPoint}.\n */\nexport interface IFindPlacesNearPointOptions\n extends Omit<IRequestOptions, \"httpMethod\" | \"f\">,\n queryParams {}\n\n/**\n * Searches places that are within a given radius of a geographic point.\n * You must supply the `x` and `y` coordinates of the point that you wish\n * to search from. You can either specify a search radius, or use the\n * default (500 meters). You could use this method to search for places\n * around a user's GPS position, or a location clicked on a map.\n *\n * The returned places contain basic data such as name, category and\n * location. You can use the {@linkcode getPlace} method to get additional\n * details for a given place.\n *\n * You can refine the results by supplying additional search parameters,\n * including:\n *\n * - A list of category Ids, see {@linkcode searchCategories} or {@linkcode getCategories}.\n * - A partial name filter with `name` option\n *\n * As this request can return many results, pagination is supported.\n * Regardless of paging, the maximum number of places that can be returned\n * by a single query is `200`. When a query results in more than `200`\n * places, the response will contain the property\n * `\"maxResultsExceeded\":true` in addition to place results. If `maxResultsExceeded`\n * is true an additional method `response.nextPage()` can be used to get the next page of results.\n *\n * ```js\n * import { findPlacesNearPoint } from \"@esri/arcgis-rest-places\";\n * import { ApiKeyManager } from \"@esri/arcgis-rest-request\";\n *\n * const response = await findPlacesNearPoint({\n * x: -3.1883,\n * y: 55.9533,\n * radius: 100,\n * authentication: ApiKeyManager.fromKey(\"YOUR_API_KEY\");\n * });\n *\n * console.log(response);\n * ```\n */\nexport function findPlacesNearPoint(\n requestOptions: IFindPlacesNearPointOptions\n): Promise<IFindPlacesNearPointResponse> {\n const options = appendCustomParams<IFindPlacesNearPointOptions>(\n requestOptions,\n [\"x\", \"y\", \"radius\", \"categoryIds\", \"pageSize\", \"offset\", \"searchText\"],\n {\n ...requestOptions\n }\n );\n\n return (\n request(`${baseUrl}/places/near-point`, {\n ...options,\n httpMethod: \"GET\"\n }) as Promise<successResponse>\n ).then((response) => {\n const r: IFindPlacesNearPointResponse = {\n ...response\n };\n\n if (hasNextPage(response)) {\n r.nextPage = () => {\n const nextOptions = {\n ...requestOptions,\n ...getNextPageParams(requestOptions.offset, requestOptions.pageSize)\n };\n return findPlacesNearPoint(nextOptions);\n };\n }\n\n return r;\n });\n}\n"]}
1
+ {"version":3,"file":"findPlacesNearPoint.js","sourceRoot":"","sources":["../../src/findPlacesNearPoint.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,OAAO,EACP,kBAAkB,EAEnB,MAAM,2BAA2B,CAAC;AAGnC,OAAO,EAAE,OAAO,EAAE,WAAW,EAAE,iBAAiB,EAAE,MAAM,YAAY,CAAC;AA2BrE;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAmCG;AACH,MAAM,UAAU,mBAAmB,CACjC,cAA2C;IAE3C,MAAM,OAAO,GAAG,kBAAkB,CAChC,cAAc,EACd,CAAC,GAAG,EAAE,GAAG,EAAE,QAAQ,EAAE,aAAa,EAAE,UAAU,EAAE,QAAQ,EAAE,YAAY,CAAC,oBAElE,cAAc,EAEpB,CAAC;IAEF,OACE,OAAO,CAAC,GAAG,OAAO,oBAAoB,kCACjC,OAAO,KACV,UAAU,EAAE,KAAK,IAEpB,CAAC,IAAI,CAAC,CAAC,QAAQ,EAAE,EAAE;QAClB,MAAM,CAAC,qBACF,QAAQ,CACZ,CAAC;QAEF,IAAI,WAAW,CAAC,QAAQ,CAAC,EAAE;YACzB,CAAC,CAAC,QAAQ,GAAG,GAAG,EAAE;gBAChB,MAAM,WAAW,mCACZ,cAAc,GACd,iBAAiB,CAAC,cAAc,CAAC,MAAM,EAAE,cAAc,CAAC,QAAQ,CAAC,CACrE,CAAC;gBACF,OAAO,mBAAmB,CAAC,WAAW,CAAC,CAAC;YAC1C,CAAC,CAAC;SACH;QAED,OAAO,CAAC,CAAC;IACX,CAAC,CAAC,CAAC;AACL,CAAC","sourcesContent":["import {\n request,\n appendCustomParams,\n IRequestOptions\n} from \"@esri/arcgis-rest-request\";\n\nimport { operations } from \"./openapi-types.js\";\nimport { baseUrl, hasNextPage, getNextPageParams } from \"./utils.js\";\n\n// determine the list of allowed params we want to allow as options\n// this should match the array given to appendCustomParams below\ntype queryParams = Pick<\n operations[\"nearPointGet\"][\"parameters\"][\"query\"],\n \"x\" | \"y\" | \"radius\" | \"categoryIds\" | \"pageSize\" | \"offset\" | \"searchText\"\n>;\n\n// get the correct type of the response format\ntype successResponse =\n operations[\"nearPointGet\"][\"responses\"][\"200\"][\"content\"][\"application/json\"];\n\n/**\n * The response format for {@linkcode findPlacesNearPoint};\n */\nexport interface IFindPlacesNearPointResponse extends successResponse {\n nextPage?: () => Promise<IFindPlacesNearPointResponse>;\n}\n\n/**\n * Options for {@linkcode findPlacesNearPoint}.\n */\nexport interface IFindPlacesNearPointOptions\n extends Omit<IRequestOptions, \"httpMethod\" | \"f\">,\n queryParams {}\n\n/**\n * Searches places that are within a given radius of a geographic point.\n * You must supply the `x` and `y` coordinates of the point that you wish\n * to search from. You can either specify a search radius, or use the\n * default (500 meters). You could use this method to search for places\n * around a user's GPS position, or a location clicked on a map.\n *\n * The returned places contain basic data such as name, category and\n * location. You can use the {@linkcode getPlace} method to get additional\n * details for a given place.\n *\n * You can refine the results by supplying additional search parameters,\n * including:\n *\n * - A list of category Ids, see {@linkcode searchCategories} or {@linkcode getCategories}.\n * - A partial name filter with `name` option\n *\n * As this request can return many results, pagination is supported.\n * When a query results in more than [pageSize] places, the response will contain the property\n * `pagination` in addition to place results. If `pagination` exists, an additional method\n * `response.nextPage()` can be used to get the next page of results.\n *\n * ```js\n * import { findPlacesNearPoint } from \"@esri/arcgis-rest-places\";\n * import { ApiKeyManager } from \"@esri/arcgis-rest-request\";\n *\n * const response = await findPlacesNearPoint({\n * x: -3.1883,\n * y: 55.9533,\n * radius: 100,\n * authentication: ApiKeyManager.fromKey(\"YOUR_API_KEY\");\n * });\n *\n * console.log(response);\n * ```\n */\nexport function findPlacesNearPoint(\n requestOptions: IFindPlacesNearPointOptions\n): Promise<IFindPlacesNearPointResponse> {\n const options = appendCustomParams<IFindPlacesNearPointOptions>(\n requestOptions,\n [\"x\", \"y\", \"radius\", \"categoryIds\", \"pageSize\", \"offset\", \"searchText\"],\n {\n ...requestOptions\n }\n );\n\n return (\n request(`${baseUrl}/places/near-point`, {\n ...options,\n httpMethod: \"GET\"\n }) as Promise<successResponse>\n ).then((response) => {\n const r: IFindPlacesNearPointResponse = {\n ...response\n };\n\n if (hasNextPage(response)) {\n r.nextPage = () => {\n const nextOptions = {\n ...requestOptions,\n ...getNextPageParams(requestOptions.offset, requestOptions.pageSize)\n };\n return findPlacesNearPoint(nextOptions);\n };\n }\n\n return r;\n });\n}\n"]}
@@ -30,11 +30,9 @@ export interface IFindPlaceWithinExtentOptions extends Omit<IRequestOptions, "ht
30
30
  * - A partial name filter with `name` option
31
31
  *
32
32
  * As this request can return many results, pagination is supported.
33
- * Regardless of paging, the maximum number of places that can be returned
34
- * by a single query is `200`. When a query results in more than `200`
35
- * places, the response will contain the property
36
- * `"maxResultsExceeded":true` in addition to place results. If `maxResultsExceeded`
37
- * is true an additional method `response.nextPage()` can be used to get the next page of results.
33
+ * When a query results in more than [pageSize] places, the response will contain the property
34
+ * `pagination` in addition to place results. If `pagination` exists, an additional method
35
+ * `response.nextPage()` can be used to get the next page of results.
38
36
  *
39
37
  * ```
40
38
  * import { findPlacesWithinExtent } from "@esri/arcgis-rest-places";
@@ -46,7 +44,7 @@ export interface IFindPlaceWithinExtentOptions extends Omit<IRequestOptions, "ht
46
44
  * xmax: -117.795753,
47
45
  * ymax: 33.873337,
48
46
  * categoryIds: ["13002"],
49
- * authentication: ApiKeyManager.fromKey("YOUR_API_KEY");
47
+ * authentication: ApiKeyManager.fromKey("YOUR_API_KEY")
50
48
  * });
51
49
  *
52
50
  * console.log(results)