@mapbox/mcp-server 0.5.4 → 0.5.5

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 (229) hide show
  1. package/dist/commonjs/config/toolConfig.d.ts.map +1 -1
  2. package/dist/commonjs/config/toolConfig.js +2 -0
  3. package/dist/commonjs/config/toolConfig.js.map +1 -1
  4. package/dist/commonjs/index.d.ts.map +1 -1
  5. package/dist/commonjs/index.js +2 -0
  6. package/dist/commonjs/index.js.map +1 -1
  7. package/dist/commonjs/schemas/shared.d.ts +36 -0
  8. package/dist/commonjs/schemas/shared.d.ts.map +1 -0
  9. package/dist/commonjs/schemas/shared.js +35 -0
  10. package/dist/commonjs/schemas/shared.js.map +1 -0
  11. package/dist/commonjs/tools/BaseTool.d.ts +1 -1
  12. package/dist/commonjs/tools/BaseTool.d.ts.map +1 -1
  13. package/dist/commonjs/tools/BaseTool.js +2 -0
  14. package/dist/commonjs/tools/BaseTool.js.map +1 -1
  15. package/dist/commonjs/tools/MapboxApiBasedTool.d.ts +2 -47
  16. package/dist/commonjs/tools/MapboxApiBasedTool.d.ts.map +1 -1
  17. package/dist/commonjs/tools/MapboxApiBasedTool.js +3 -16
  18. package/dist/commonjs/tools/MapboxApiBasedTool.js.map +1 -1
  19. package/dist/commonjs/tools/MapboxApiBasedTool.schema.d.ts +47 -0
  20. package/dist/commonjs/tools/MapboxApiBasedTool.schema.d.ts.map +1 -0
  21. package/dist/commonjs/tools/MapboxApiBasedTool.schema.js +21 -0
  22. package/dist/commonjs/tools/MapboxApiBasedTool.schema.js.map +1 -0
  23. package/dist/commonjs/tools/category-list-tool/CategoryListTool.d.ts +3 -17
  24. package/dist/commonjs/tools/category-list-tool/CategoryListTool.d.ts.map +1 -1
  25. package/dist/commonjs/tools/category-list-tool/CategoryListTool.js +4 -20
  26. package/dist/commonjs/tools/category-list-tool/CategoryListTool.js.map +1 -1
  27. package/dist/commonjs/tools/category-list-tool/CategoryListTool.schema.d.ts +16 -0
  28. package/dist/commonjs/tools/category-list-tool/CategoryListTool.schema.d.ts.map +1 -0
  29. package/dist/commonjs/tools/category-list-tool/CategoryListTool.schema.js +23 -0
  30. package/dist/commonjs/tools/category-list-tool/CategoryListTool.schema.js.map +1 -0
  31. package/dist/commonjs/tools/category-search-tool/CategorySearchTool.d.ts +2 -76
  32. package/dist/commonjs/tools/category-search-tool/CategorySearchTool.d.ts.map +1 -1
  33. package/dist/commonjs/tools/category-search-tool/CategorySearchTool.js +4 -86
  34. package/dist/commonjs/tools/category-search-tool/CategorySearchTool.js.map +1 -1
  35. package/dist/commonjs/tools/category-search-tool/CategorySearchTool.schema.d.ts +76 -0
  36. package/dist/commonjs/tools/category-search-tool/CategorySearchTool.schema.d.ts.map +1 -0
  37. package/dist/commonjs/tools/category-search-tool/CategorySearchTool.schema.js +83 -0
  38. package/dist/commonjs/tools/category-search-tool/CategorySearchTool.schema.js.map +1 -0
  39. package/dist/commonjs/tools/directions-tool/DirectionsTool.d.ts +3 -51
  40. package/dist/commonjs/tools/directions-tool/DirectionsTool.d.ts.map +1 -1
  41. package/dist/commonjs/tools/directions-tool/DirectionsTool.js +8 -249
  42. package/dist/commonjs/tools/directions-tool/DirectionsTool.js.map +1 -1
  43. package/dist/commonjs/tools/directions-tool/DirectionsTool.schema.d.ts +51 -0
  44. package/dist/commonjs/tools/directions-tool/DirectionsTool.schema.d.ts.map +1 -0
  45. package/dist/commonjs/tools/directions-tool/DirectionsTool.schema.js +242 -0
  46. package/dist/commonjs/tools/directions-tool/DirectionsTool.schema.js.map +1 -0
  47. package/dist/commonjs/tools/directions-tool/cleanResponseData.d.ts +1 -1
  48. package/dist/commonjs/tools/directions-tool/cleanResponseData.d.ts.map +1 -1
  49. package/dist/commonjs/tools/directions-tool/cleanResponseData.js +2 -0
  50. package/dist/commonjs/tools/directions-tool/cleanResponseData.js.map +1 -1
  51. package/dist/commonjs/tools/isochrone-tool/IsochroneTool.d.ts +3 -52
  52. package/dist/commonjs/tools/isochrone-tool/IsochroneTool.d.ts.map +1 -1
  53. package/dist/commonjs/tools/isochrone-tool/IsochroneTool.js +4 -61
  54. package/dist/commonjs/tools/isochrone-tool/IsochroneTool.js.map +1 -1
  55. package/dist/commonjs/tools/isochrone-tool/IsochroneTool.schema.d.ts +51 -0
  56. package/dist/commonjs/tools/isochrone-tool/IsochroneTool.schema.d.ts.map +1 -0
  57. package/dist/commonjs/tools/isochrone-tool/IsochroneTool.schema.js +66 -0
  58. package/dist/commonjs/tools/isochrone-tool/IsochroneTool.schema.js.map +1 -0
  59. package/dist/commonjs/tools/matrix-tool/MatrixTool.d.ts +3 -43
  60. package/dist/commonjs/tools/matrix-tool/MatrixTool.d.ts.map +1 -1
  61. package/dist/commonjs/tools/matrix-tool/MatrixTool.js +4 -59
  62. package/dist/commonjs/tools/matrix-tool/MatrixTool.js.map +1 -1
  63. package/dist/commonjs/tools/matrix-tool/MatrixTool.schema.d.ts +42 -0
  64. package/dist/commonjs/tools/matrix-tool/MatrixTool.schema.d.ts.map +1 -0
  65. package/dist/commonjs/tools/matrix-tool/MatrixTool.schema.js +56 -0
  66. package/dist/commonjs/tools/matrix-tool/MatrixTool.schema.js.map +1 -0
  67. package/dist/commonjs/tools/reverse-geocode-tool/ReverseGeocodeTool.d.ts +2 -33
  68. package/dist/commonjs/tools/reverse-geocode-tool/ReverseGeocodeTool.d.ts.map +1 -1
  69. package/dist/commonjs/tools/reverse-geocode-tool/ReverseGeocodeTool.js +4 -57
  70. package/dist/commonjs/tools/reverse-geocode-tool/ReverseGeocodeTool.js.map +1 -1
  71. package/dist/commonjs/tools/reverse-geocode-tool/ReverseGeocodeTool.schema.d.ts +33 -0
  72. package/dist/commonjs/tools/reverse-geocode-tool/ReverseGeocodeTool.schema.d.ts.map +1 -0
  73. package/dist/commonjs/tools/reverse-geocode-tool/ReverseGeocodeTool.schema.js +49 -0
  74. package/dist/commonjs/tools/reverse-geocode-tool/ReverseGeocodeTool.schema.js.map +1 -0
  75. package/dist/commonjs/tools/search-and-geocode-tool/SearchAndGeocodeTool.d.ts +2 -94
  76. package/dist/commonjs/tools/search-and-geocode-tool/SearchAndGeocodeTool.d.ts.map +1 -1
  77. package/dist/commonjs/tools/search-and-geocode-tool/SearchAndGeocodeTool.js +4 -82
  78. package/dist/commonjs/tools/search-and-geocode-tool/SearchAndGeocodeTool.js.map +1 -1
  79. package/dist/commonjs/tools/search-and-geocode-tool/SearchAndGeocodeTool.schema.d.ts +94 -0
  80. package/dist/commonjs/tools/search-and-geocode-tool/SearchAndGeocodeTool.schema.d.ts.map +1 -0
  81. package/dist/commonjs/tools/search-and-geocode-tool/SearchAndGeocodeTool.schema.js +81 -0
  82. package/dist/commonjs/tools/search-and-geocode-tool/SearchAndGeocodeTool.schema.js.map +1 -0
  83. package/dist/commonjs/tools/static-map-image-tool/StaticMapImageTool.d.ts +3 -170
  84. package/dist/commonjs/tools/static-map-image-tool/StaticMapImageTool.d.ts.map +1 -1
  85. package/dist/commonjs/tools/static-map-image-tool/StaticMapImageTool.js +4 -333
  86. package/dist/commonjs/tools/static-map-image-tool/StaticMapImageTool.js.map +1 -1
  87. package/dist/commonjs/tools/static-map-image-tool/StaticMapImageTool.schema.d.ts +312 -0
  88. package/dist/commonjs/tools/static-map-image-tool/StaticMapImageTool.schema.d.ts.map +1 -0
  89. package/dist/commonjs/tools/static-map-image-tool/StaticMapImageTool.schema.js +338 -0
  90. package/dist/commonjs/tools/static-map-image-tool/StaticMapImageTool.schema.js.map +1 -0
  91. package/dist/commonjs/tools/toolRegistry.d.ts.map +1 -1
  92. package/dist/commonjs/tools/toolRegistry.js +2 -0
  93. package/dist/commonjs/tools/toolRegistry.js.map +1 -1
  94. package/dist/commonjs/tools/version-tool/VersionTool.d.ts +2 -4
  95. package/dist/commonjs/tools/version-tool/VersionTool.d.ts.map +1 -1
  96. package/dist/commonjs/tools/version-tool/VersionTool.js +4 -3
  97. package/dist/commonjs/tools/version-tool/VersionTool.js.map +1 -1
  98. package/dist/commonjs/tools/version-tool/VersionTool.schema.d.ts +3 -0
  99. package/dist/commonjs/tools/version-tool/VersionTool.schema.d.ts.map +1 -0
  100. package/dist/commonjs/tools/version-tool/VersionTool.schema.js +8 -0
  101. package/dist/commonjs/tools/version-tool/VersionTool.schema.js.map +1 -0
  102. package/dist/commonjs/{tools/directions-tool/formatIsoDateTime.d.ts → utils/dateUtils.d.ts} +1 -1
  103. package/dist/commonjs/utils/dateUtils.d.ts.map +1 -0
  104. package/dist/commonjs/{tools/directions-tool/formatIsoDateTime.js → utils/dateUtils.js} +3 -1
  105. package/dist/commonjs/utils/dateUtils.js.map +1 -0
  106. package/dist/commonjs/utils/fetchRequest.d.ts.map +1 -1
  107. package/dist/commonjs/utils/fetchRequest.js +2 -0
  108. package/dist/commonjs/utils/fetchRequest.js.map +1 -1
  109. package/dist/commonjs/utils/versionUtils-cjs.cjs.map +1 -1
  110. package/dist/commonjs/utils/versionUtils-cjs.d.cts.map +1 -1
  111. package/dist/commonjs/utils/versionUtils.js +2 -0
  112. package/dist/commonjs/version.json +3 -3
  113. package/dist/esm/config/toolConfig.d.ts.map +1 -1
  114. package/dist/esm/config/toolConfig.js +2 -0
  115. package/dist/esm/config/toolConfig.js.map +1 -1
  116. package/dist/esm/index.d.ts.map +1 -1
  117. package/dist/esm/index.js +2 -0
  118. package/dist/esm/index.js.map +1 -1
  119. package/dist/esm/schemas/shared.d.ts +36 -0
  120. package/dist/esm/schemas/shared.d.ts.map +1 -0
  121. package/dist/esm/schemas/shared.js +32 -0
  122. package/dist/esm/schemas/shared.js.map +1 -0
  123. package/dist/esm/tools/BaseTool.d.ts +1 -1
  124. package/dist/esm/tools/BaseTool.d.ts.map +1 -1
  125. package/dist/esm/tools/BaseTool.js +2 -0
  126. package/dist/esm/tools/BaseTool.js.map +1 -1
  127. package/dist/esm/tools/MapboxApiBasedTool.d.ts +2 -47
  128. package/dist/esm/tools/MapboxApiBasedTool.d.ts.map +1 -1
  129. package/dist/esm/tools/MapboxApiBasedTool.js +2 -15
  130. package/dist/esm/tools/MapboxApiBasedTool.js.map +1 -1
  131. package/dist/esm/tools/MapboxApiBasedTool.schema.d.ts +47 -0
  132. package/dist/esm/tools/MapboxApiBasedTool.schema.d.ts.map +1 -0
  133. package/dist/esm/tools/MapboxApiBasedTool.schema.js +18 -0
  134. package/dist/esm/tools/MapboxApiBasedTool.schema.js.map +1 -0
  135. package/dist/esm/tools/category-list-tool/CategoryListTool.d.ts +3 -17
  136. package/dist/esm/tools/category-list-tool/CategoryListTool.d.ts.map +1 -1
  137. package/dist/esm/tools/category-list-tool/CategoryListTool.js +3 -19
  138. package/dist/esm/tools/category-list-tool/CategoryListTool.js.map +1 -1
  139. package/dist/esm/tools/category-list-tool/CategoryListTool.schema.d.ts +16 -0
  140. package/dist/esm/tools/category-list-tool/CategoryListTool.schema.d.ts.map +1 -0
  141. package/dist/esm/tools/category-list-tool/CategoryListTool.schema.js +20 -0
  142. package/dist/esm/tools/category-list-tool/CategoryListTool.schema.js.map +1 -0
  143. package/dist/esm/tools/category-search-tool/CategorySearchTool.d.ts +2 -76
  144. package/dist/esm/tools/category-search-tool/CategorySearchTool.d.ts.map +1 -1
  145. package/dist/esm/tools/category-search-tool/CategorySearchTool.js +3 -85
  146. package/dist/esm/tools/category-search-tool/CategorySearchTool.js.map +1 -1
  147. package/dist/esm/tools/category-search-tool/CategorySearchTool.schema.d.ts +76 -0
  148. package/dist/esm/tools/category-search-tool/CategorySearchTool.schema.d.ts.map +1 -0
  149. package/dist/esm/tools/category-search-tool/CategorySearchTool.schema.js +80 -0
  150. package/dist/esm/tools/category-search-tool/CategorySearchTool.schema.js.map +1 -0
  151. package/dist/esm/tools/directions-tool/DirectionsTool.d.ts +3 -51
  152. package/dist/esm/tools/directions-tool/DirectionsTool.d.ts.map +1 -1
  153. package/dist/esm/tools/directions-tool/DirectionsTool.js +4 -245
  154. package/dist/esm/tools/directions-tool/DirectionsTool.js.map +1 -1
  155. package/dist/esm/tools/directions-tool/DirectionsTool.schema.d.ts +51 -0
  156. package/dist/esm/tools/directions-tool/DirectionsTool.schema.d.ts.map +1 -0
  157. package/dist/esm/tools/directions-tool/DirectionsTool.schema.js +239 -0
  158. package/dist/esm/tools/directions-tool/DirectionsTool.schema.js.map +1 -0
  159. package/dist/esm/tools/directions-tool/cleanResponseData.d.ts +1 -1
  160. package/dist/esm/tools/directions-tool/cleanResponseData.d.ts.map +1 -1
  161. package/dist/esm/tools/directions-tool/cleanResponseData.js +2 -0
  162. package/dist/esm/tools/directions-tool/cleanResponseData.js.map +1 -1
  163. package/dist/esm/tools/isochrone-tool/IsochroneTool.d.ts +3 -52
  164. package/dist/esm/tools/isochrone-tool/IsochroneTool.d.ts.map +1 -1
  165. package/dist/esm/tools/isochrone-tool/IsochroneTool.js +3 -60
  166. package/dist/esm/tools/isochrone-tool/IsochroneTool.js.map +1 -1
  167. package/dist/esm/tools/isochrone-tool/IsochroneTool.schema.d.ts +51 -0
  168. package/dist/esm/tools/isochrone-tool/IsochroneTool.schema.d.ts.map +1 -0
  169. package/dist/esm/tools/isochrone-tool/IsochroneTool.schema.js +63 -0
  170. package/dist/esm/tools/isochrone-tool/IsochroneTool.schema.js.map +1 -0
  171. package/dist/esm/tools/matrix-tool/MatrixTool.d.ts +3 -43
  172. package/dist/esm/tools/matrix-tool/MatrixTool.d.ts.map +1 -1
  173. package/dist/esm/tools/matrix-tool/MatrixTool.js +3 -58
  174. package/dist/esm/tools/matrix-tool/MatrixTool.js.map +1 -1
  175. package/dist/esm/tools/matrix-tool/MatrixTool.schema.d.ts +42 -0
  176. package/dist/esm/tools/matrix-tool/MatrixTool.schema.d.ts.map +1 -0
  177. package/dist/esm/tools/matrix-tool/MatrixTool.schema.js +53 -0
  178. package/dist/esm/tools/matrix-tool/MatrixTool.schema.js.map +1 -0
  179. package/dist/esm/tools/reverse-geocode-tool/ReverseGeocodeTool.d.ts +2 -33
  180. package/dist/esm/tools/reverse-geocode-tool/ReverseGeocodeTool.d.ts.map +1 -1
  181. package/dist/esm/tools/reverse-geocode-tool/ReverseGeocodeTool.js +3 -56
  182. package/dist/esm/tools/reverse-geocode-tool/ReverseGeocodeTool.js.map +1 -1
  183. package/dist/esm/tools/reverse-geocode-tool/ReverseGeocodeTool.schema.d.ts +33 -0
  184. package/dist/esm/tools/reverse-geocode-tool/ReverseGeocodeTool.schema.d.ts.map +1 -0
  185. package/dist/esm/tools/reverse-geocode-tool/ReverseGeocodeTool.schema.js +46 -0
  186. package/dist/esm/tools/reverse-geocode-tool/ReverseGeocodeTool.schema.js.map +1 -0
  187. package/dist/esm/tools/search-and-geocode-tool/SearchAndGeocodeTool.d.ts +2 -94
  188. package/dist/esm/tools/search-and-geocode-tool/SearchAndGeocodeTool.d.ts.map +1 -1
  189. package/dist/esm/tools/search-and-geocode-tool/SearchAndGeocodeTool.js +3 -81
  190. package/dist/esm/tools/search-and-geocode-tool/SearchAndGeocodeTool.js.map +1 -1
  191. package/dist/esm/tools/search-and-geocode-tool/SearchAndGeocodeTool.schema.d.ts +94 -0
  192. package/dist/esm/tools/search-and-geocode-tool/SearchAndGeocodeTool.schema.d.ts.map +1 -0
  193. package/dist/esm/tools/search-and-geocode-tool/SearchAndGeocodeTool.schema.js +78 -0
  194. package/dist/esm/tools/search-and-geocode-tool/SearchAndGeocodeTool.schema.js.map +1 -0
  195. package/dist/esm/tools/static-map-image-tool/StaticMapImageTool.d.ts +3 -170
  196. package/dist/esm/tools/static-map-image-tool/StaticMapImageTool.d.ts.map +1 -1
  197. package/dist/esm/tools/static-map-image-tool/StaticMapImageTool.js +3 -332
  198. package/dist/esm/tools/static-map-image-tool/StaticMapImageTool.js.map +1 -1
  199. package/dist/esm/tools/static-map-image-tool/StaticMapImageTool.schema.d.ts +312 -0
  200. package/dist/esm/tools/static-map-image-tool/StaticMapImageTool.schema.d.ts.map +1 -0
  201. package/dist/esm/tools/static-map-image-tool/StaticMapImageTool.schema.js +335 -0
  202. package/dist/esm/tools/static-map-image-tool/StaticMapImageTool.schema.js.map +1 -0
  203. package/dist/esm/tools/toolRegistry.d.ts.map +1 -1
  204. package/dist/esm/tools/toolRegistry.js +2 -0
  205. package/dist/esm/tools/toolRegistry.js.map +1 -1
  206. package/dist/esm/tools/version-tool/VersionTool.d.ts +2 -4
  207. package/dist/esm/tools/version-tool/VersionTool.d.ts.map +1 -1
  208. package/dist/esm/tools/version-tool/VersionTool.js +4 -3
  209. package/dist/esm/tools/version-tool/VersionTool.js.map +1 -1
  210. package/dist/esm/tools/version-tool/VersionTool.schema.d.ts +3 -0
  211. package/dist/esm/tools/version-tool/VersionTool.schema.d.ts.map +1 -0
  212. package/dist/esm/tools/version-tool/VersionTool.schema.js +5 -0
  213. package/dist/esm/tools/version-tool/VersionTool.schema.js.map +1 -0
  214. package/dist/esm/{tools/directions-tool/formatIsoDateTime.d.ts → utils/dateUtils.d.ts} +1 -1
  215. package/dist/esm/utils/dateUtils.d.ts.map +1 -0
  216. package/dist/esm/{tools/directions-tool/formatIsoDateTime.js → utils/dateUtils.js} +3 -1
  217. package/dist/esm/utils/dateUtils.js.map +1 -0
  218. package/dist/esm/utils/fetchRequest.d.ts.map +1 -1
  219. package/dist/esm/utils/fetchRequest.js +2 -0
  220. package/dist/esm/utils/fetchRequest.js.map +1 -1
  221. package/dist/esm/utils/versionUtils.d.ts.map +1 -1
  222. package/dist/esm/utils/versionUtils.js +2 -0
  223. package/dist/esm/utils/versionUtils.js.map +1 -1
  224. package/dist/esm/version.json +3 -3
  225. package/package.json +3 -2
  226. package/dist/commonjs/tools/directions-tool/formatIsoDateTime.d.ts.map +0 -1
  227. package/dist/commonjs/tools/directions-tool/formatIsoDateTime.js.map +0 -1
  228. package/dist/esm/tools/directions-tool/formatIsoDateTime.d.ts.map +0 -1
  229. package/dist/esm/tools/directions-tool/formatIsoDateTime.js.map +0 -1
@@ -0,0 +1,239 @@
1
+ // Copyright (c) Mapbox, Inc.
2
+ // Licensed under the MIT License.
3
+ import { z } from 'zod';
4
+ import { coordinateSchema } from '../../schemas/shared.js';
5
+ /**
6
+ * Validates ISO 8601 date-time formats used by Mapbox Directions API
7
+ * for both depart_at and arrive_by parameters
8
+ */
9
+ const validateIsoDateTime = (val, ctx) => {
10
+ if (!val)
11
+ return; // Optional, so empty is fine
12
+ // ISO 8601 regex patterns for the valid formats mentioned in the docs
13
+ // 1. YYYY-MM-DDThh:mm:ssZ (exactly one Z at the end)
14
+ // 2. YYYY-MM-DDThh:mm:ss±hh:mm (timezone offset with colon)
15
+ // 3. YYYY-MM-DDThh:mm (no seconds, no timezone)
16
+ // 4. YYYY-MM-DDThh:mm:ss (with seconds but no timezone) - will be converted to format 3
17
+ const iso8601Pattern = /^(\d{4}-\d{2}-\d{2}T\d{2}:\d{2}:\d{2}Z$)|(\d{4}-\d{2}-\d{2}T\d{2}:\d{2}:\d{2}[+-]\d{2}:\d{2}$)|(\d{4}-\d{2}-\d{2}T\d{2}:\d{2}$)|(\d{4}-\d{2}-\d{2}T\d{2}:\d{2}:\d{2}$)/;
18
+ if (!iso8601Pattern.test(val)) {
19
+ ctx.addIssue({
20
+ code: z.ZodIssueCode.custom,
21
+ message: 'Invalid date-time format. Must be in ISO 8601 format: YYYY-MM-DDThh:mm:ssZ, YYYY-MM-DDThh:mmss±hh:mm, YYYY-MM-DDThh:mm, or YYYY-MM-DDThh:mm:ss',
22
+ path: []
23
+ });
24
+ return; // Stop further validation if format is invalid
25
+ }
26
+ // Parse the date-time components to validate ranges
27
+ try {
28
+ // Extract date and time components
29
+ let dateTimeComponents;
30
+ if (val.includes('Z')) {
31
+ // Format 1: YYYY-MM-DDThh:mm:ssZ
32
+ dateTimeComponents = val.substring(0, val.indexOf('Z')).split('T');
33
+ }
34
+ else if (val.includes('+') || val.includes('-', 10)) {
35
+ // Check for timezone offset (skip the date's hyphens)
36
+ // Format 2: YYYY-MM-DDThh:mmss±hh:mm
37
+ const timezoneSeparatorIndex = Math.max(val.lastIndexOf('+'), val.lastIndexOf('-'));
38
+ dateTimeComponents = val.substring(0, timezoneSeparatorIndex).split('T');
39
+ }
40
+ else {
41
+ // Format 3: YYYY-MM-DDThh:mm
42
+ dateTimeComponents = val.split('T');
43
+ }
44
+ const [datePart, timePart] = dateTimeComponents;
45
+ const [, month, day] = datePart.split('-').map(Number);
46
+ let hours = 0, minutes = 0, seconds = 0;
47
+ if (timePart.includes(':')) {
48
+ const timeParts = timePart.split(':').map(Number);
49
+ hours = timeParts[0];
50
+ minutes = timeParts[1];
51
+ if (timeParts.length > 2)
52
+ seconds = timeParts[2];
53
+ }
54
+ // Validate ranges
55
+ if (month < 1 || month > 12) {
56
+ ctx.addIssue({
57
+ code: z.ZodIssueCode.custom,
58
+ message: `Invalid month: ${month}. Must be between 1 and 12.`,
59
+ path: []
60
+ });
61
+ }
62
+ // Check days in month (simplified - doesn't account for leap years)
63
+ const daysInMonth = [0, 31, 29, 31, 30, 31, 30, 31, 31, 30, 31, 30, 31];
64
+ if (day < 1 || day > daysInMonth[month]) {
65
+ ctx.addIssue({
66
+ code: z.ZodIssueCode.custom,
67
+ message: `Invalid day: ${day}. Must be between 1 and ${daysInMonth[month]} for month ${month}.`,
68
+ path: []
69
+ });
70
+ }
71
+ if (hours < 0 || hours > 23) {
72
+ ctx.addIssue({
73
+ code: z.ZodIssueCode.custom,
74
+ message: `Invalid hours: ${hours}. Must be between 0 and 23.`,
75
+ path: []
76
+ });
77
+ }
78
+ if (minutes < 0 || minutes > 59) {
79
+ ctx.addIssue({
80
+ code: z.ZodIssueCode.custom,
81
+ message: `Invalid minutes: ${minutes}. Must be between 0 and 59.`,
82
+ path: []
83
+ });
84
+ }
85
+ if (seconds < 0 || seconds > 59) {
86
+ ctx.addIssue({
87
+ code: z.ZodIssueCode.custom,
88
+ message: `Invalid seconds: ${seconds}. Must be between 0 and 59.`,
89
+ path: []
90
+ });
91
+ }
92
+ }
93
+ catch (error) {
94
+ ctx.addIssue({
95
+ code: z.ZodIssueCode.custom,
96
+ message: `Error parsing date-time components: ${error}`,
97
+ path: []
98
+ });
99
+ }
100
+ };
101
+ export const DirectionsInputSchema = z.object({
102
+ coordinates: z
103
+ .array(coordinateSchema)
104
+ .min(2, 'At least two coordinate pairs are required.')
105
+ .max(25, 'Up to 25 coordinate pairs are supported.')
106
+ .describe('Array of coordinate objects with longitude and latitude properties to visit in order. ' +
107
+ 'Must include at least 2 coordinate pairs (starting and ending points). ' +
108
+ 'Up to 25 coordinates total are supported.'),
109
+ routing_profile: z
110
+ .enum(['driving-traffic', 'driving', 'walking', 'cycling'])
111
+ .optional()
112
+ .default('driving-traffic')
113
+ .describe('Routing profile for different modes of transport. Options: \n' +
114
+ '- driving-traffic (default): automotive with current traffic conditions\n' +
115
+ '- driving: automotive based on typical traffic\n' +
116
+ '- walking: pedestrian/hiking\n' +
117
+ '- cycling: bicycle'),
118
+ geometries: z
119
+ .enum(['none', 'geojson'])
120
+ .optional()
121
+ .default('none')
122
+ .describe('The format of the returned geometry. Options: \n' +
123
+ '- none (default): no geometry object is returned at all, use this if you do not need all of the intermediate coordinates.\n' +
124
+ '- geojson: as GeoJSON LineString (might be very long as there could be a lot of points)'),
125
+ max_height: z
126
+ .number()
127
+ .min(0, 'Vehicle height must be between 0 and 10 meters')
128
+ .max(10, 'Vehicle height must be between 0 and 10 meters')
129
+ .optional()
130
+ .describe('The max vehicle height, in meters. The Directions API will compute a route that includes only roads ' +
131
+ 'with a height limit greater than or equal to the max vehicle height. ' +
132
+ 'Must be between 0 and 10 meters. The default value is 1.6 meters. ' +
133
+ 'Only available for driving and driving-traffic profiles.'),
134
+ max_width: z
135
+ .number()
136
+ .min(0, 'Vehicle width must be between 0 and 10 meters')
137
+ .max(10, 'Vehicle width must be between 0 and 10 meters')
138
+ .optional()
139
+ .describe('The max vehicle width, in meters. The Directions API will compute a route that includes only roads ' +
140
+ 'with a width limit greater than or equal to the max vehicle width. ' +
141
+ 'Must be between 0 and 10 meters. The default value is 1.9 meters. ' +
142
+ 'Only available for driving and driving-traffic profiles.'),
143
+ max_weight: z
144
+ .number()
145
+ .min(0, 'Vehicle weight must be between 0 and 100 metric tons')
146
+ .max(100, 'Vehicle weight must be between 0 and 100 metric tons')
147
+ .optional()
148
+ .describe('The max vehicle weight, in metric tons (1000 kg). The Directions API will compute a route that includes only roads ' +
149
+ 'with a weight limit greater than or equal to the max vehicle weight. ' +
150
+ 'Must be between 0 and 100 metric tons. The default value is 2.5 metric tons. ' +
151
+ 'Only available for driving and driving-traffic profiles.'),
152
+ alternatives: z
153
+ .boolean()
154
+ .optional()
155
+ .default(false)
156
+ .describe('Whether to try to return alternative routes (true) or not (false, default). ' +
157
+ 'Up to two alternatives may be returned.'),
158
+ depart_at: z
159
+ .string()
160
+ .optional()
161
+ .superRefine(validateIsoDateTime)
162
+ .describe('The departure time in ISO 8601 format (YYYY-MM-DDThh:mm:ssZ, YYYY-MM-DDThh:mmss±hh:mm, or YYYY-MM-DDThh:mm). ' +
163
+ 'This parameter is only available for the driving and driving-traffic profiles. ' +
164
+ 'The travel time will be calculated based on historical and real-time traffic data.'),
165
+ arrive_by: z
166
+ .string()
167
+ .optional()
168
+ .superRefine(validateIsoDateTime)
169
+ .describe('The desired arrival time in ISO 8601 format (YYYY-MM-DDThh:mm:ssZ, YYYY-MM-DDThh:mmss±hh:mm, or YYYY-MM-DDThh:mm). ' +
170
+ 'This parameter is only available for the driving profile and is not supported by other profiles, not even driving-traffic. ' +
171
+ 'The travel time will be calculated based on historical and real-time traffic data.'),
172
+ exclude: z
173
+ .string()
174
+ .optional()
175
+ .superRefine((val, ctx) => {
176
+ if (!val)
177
+ return; // Optional, so empty is fine
178
+ const items = val.split(',').map((item) => item.trim());
179
+ for (const item of items) {
180
+ // Check if it's a point exclusion
181
+ if (item.startsWith('point(') && item.endsWith(')')) {
182
+ const coordStr = item.substring(6, item.length - 1).trim();
183
+ const [lngStr, latStr] = coordStr.split(' ');
184
+ // Validate both parts exist
185
+ if (!lngStr || !latStr) {
186
+ ctx.addIssue({
187
+ code: z.ZodIssueCode.custom,
188
+ message: `Invalid point format in exclude parameter: '${item}'. Format should be point(<lng> <lat>)`,
189
+ path: []
190
+ });
191
+ continue;
192
+ }
193
+ // Parse and validate longitude
194
+ const lng = Number(lngStr);
195
+ if (isNaN(lng) || lng < -180 || lng > 180) {
196
+ ctx.addIssue({
197
+ code: z.ZodIssueCode.custom,
198
+ message: `Invalid longitude in exclude parameter: '${lngStr}'. Must be a number between -180 and 180`,
199
+ path: []
200
+ });
201
+ }
202
+ // Parse and validate latitude
203
+ const lat = Number(latStr);
204
+ if (isNaN(lat) || lat < -90 || lat > 90) {
205
+ ctx.addIssue({
206
+ code: z.ZodIssueCode.custom,
207
+ message: `Invalid latitude in exclude parameter: '${latStr}'. Must be a number between -90 and 90`,
208
+ path: []
209
+ });
210
+ }
211
+ }
212
+ // Check if it's one of the enum values
213
+ else if (![
214
+ 'toll',
215
+ 'cash_only_tolls',
216
+ 'motorway',
217
+ 'ferry',
218
+ 'unpaved',
219
+ 'tunnel',
220
+ 'country_border',
221
+ 'state_border'
222
+ ].includes(item)) {
223
+ ctx.addIssue({
224
+ code: z.ZodIssueCode.custom,
225
+ message: `Invalid exclude option: '${item}'. Available options are: toll, motorway, ferry, unpaved, tunnel, country_border, state_border, or point(<lng> <lat>)`,
226
+ path: []
227
+ });
228
+ }
229
+ }
230
+ })
231
+ .describe('Whether to exclude certain road types and custom locations from routing. ' +
232
+ 'Multiple values can be specified as a comma-separated list. ' +
233
+ 'Available options:\n' +
234
+ '- All profiles: ferry, cash_only_tolls\n' +
235
+ '- Driving/Driving-traffic profiles only: motorway, toll, unpaved, tunnel, country_border, state_border or point(<lng> <lat>)\n' +
236
+ 'For custom locations you can use Point exclusions (note lng and lat are space separated and at most 50 points are allowed)\n' +
237
+ 'Note: country_border excludes all controlled country borders; borders within the Schengen Area are not excluded.')
238
+ });
239
+ //# sourceMappingURL=DirectionsTool.schema.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"DirectionsTool.schema.js","sourceRoot":"","sources":["../../../../src/tools/directions-tool/DirectionsTool.schema.ts"],"names":[],"mappings":"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"}
@@ -1,5 +1,5 @@
1
1
  import type { z } from 'zod';
2
- import type { DirectionsInputSchema } from './DirectionsTool.js';
2
+ import type { DirectionsInputSchema } from './DirectionsTool.schema.js';
3
3
  /**
4
4
  * Cleans up the API response to reduce token count while preserving useful data.
5
5
  *
@@ -1 +1 @@
1
- {"version":3,"file":"cleanResponseData.d.ts","sourceRoot":"","sources":["../../../../src/tools/directions-tool/cleanResponseData.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAC7B,OAAO,KAAK,EAAE,qBAAqB,EAAE,MAAM,qBAAqB,CAAC;AAEjE;;;;;;GAMG;AACH,wBAAgB,iBAAiB,CAC/B,KAAK,EAAE,CAAC,CAAC,KAAK,CAAC,OAAO,qBAAqB,CAAC,EAC5C,IAAI,EAAE,GAAG,GACR,GAAG,CA4ML"}
1
+ {"version":3,"file":"cleanResponseData.d.ts","sourceRoot":"","sources":["../../../../src/tools/directions-tool/cleanResponseData.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAC7B,OAAO,KAAK,EAAE,qBAAqB,EAAE,MAAM,4BAA4B,CAAC;AAExE;;;;;;GAMG;AACH,wBAAgB,iBAAiB,CAC/B,KAAK,EAAE,CAAC,CAAC,KAAK,CAAC,OAAO,qBAAqB,CAAC,EAC5C,IAAI,EAAE,GAAG,GACR,GAAG,CA4ML"}
@@ -1,3 +1,5 @@
1
+ // Copyright (c) Mapbox, Inc.
2
+ // Licensed under the MIT License.
1
3
  /**
2
4
  * Cleans up the API response to reduce token count while preserving useful data.
3
5
  *
@@ -1 +1 @@
1
- {"version":3,"file":"cleanResponseData.js","sourceRoot":"","sources":["../../../../src/tools/directions-tool/cleanResponseData.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"cleanResponseData.js","sourceRoot":"","sources":["../../../../src/tools/directions-tool/cleanResponseData.ts"],"names":[],"mappings":"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"}
@@ -1,54 +1,6 @@
1
- import { z } from 'zod';
1
+ import type { z } from 'zod';
2
2
  import { MapboxApiBasedTool } from '../MapboxApiBasedTool.js';
3
- declare const IsochroneInputSchema: z.ZodObject<{
4
- profile: z.ZodDefault<z.ZodEnum<["mapbox/driving-traffic", "mapbox/driving", "mapbox/cycling", "mapbox/walking"]>>;
5
- coordinates: z.ZodObject<{
6
- longitude: z.ZodNumber;
7
- latitude: z.ZodNumber;
8
- }, "strip", z.ZodTypeAny, {
9
- longitude: number;
10
- latitude: number;
11
- }, {
12
- longitude: number;
13
- latitude: number;
14
- }>;
15
- contours_minutes: z.ZodOptional<z.ZodArray<z.ZodNumber, "many">>;
16
- contours_meters: z.ZodOptional<z.ZodArray<z.ZodNumber, "many">>;
17
- contours_colors: z.ZodOptional<z.ZodArray<z.ZodString, "many">>;
18
- polygons: z.ZodOptional<z.ZodDefault<z.ZodBoolean>>;
19
- denoise: z.ZodOptional<z.ZodDefault<z.ZodNumber>>;
20
- generalize: z.ZodNumber;
21
- exclude: z.ZodOptional<z.ZodArray<z.ZodEnum<["motorway", "toll", "ferry", "unpaved", "cash_only_tolls"]>, "many">>;
22
- depart_at: z.ZodOptional<z.ZodString>;
23
- }, "strip", z.ZodTypeAny, {
24
- coordinates: {
25
- longitude: number;
26
- latitude: number;
27
- };
28
- profile: "mapbox/driving-traffic" | "mapbox/driving" | "mapbox/cycling" | "mapbox/walking";
29
- generalize: number;
30
- depart_at?: string | undefined;
31
- exclude?: ("ferry" | "cash_only_tolls" | "toll" | "motorway" | "unpaved")[] | undefined;
32
- contours_minutes?: number[] | undefined;
33
- contours_meters?: number[] | undefined;
34
- contours_colors?: string[] | undefined;
35
- polygons?: boolean | undefined;
36
- denoise?: number | undefined;
37
- }, {
38
- coordinates: {
39
- longitude: number;
40
- latitude: number;
41
- };
42
- generalize: number;
43
- depart_at?: string | undefined;
44
- exclude?: ("ferry" | "cash_only_tolls" | "toll" | "motorway" | "unpaved")[] | undefined;
45
- profile?: "mapbox/driving-traffic" | "mapbox/driving" | "mapbox/cycling" | "mapbox/walking" | undefined;
46
- contours_minutes?: number[] | undefined;
47
- contours_meters?: number[] | undefined;
48
- contours_colors?: string[] | undefined;
49
- polygons?: boolean | undefined;
50
- denoise?: number | undefined;
51
- }>;
3
+ import { IsochroneInputSchema } from './IsochroneTool.schema.js';
52
4
  export declare class IsochroneTool extends MapboxApiBasedTool<typeof IsochroneInputSchema> {
53
5
  name: string;
54
6
  description: string;
@@ -61,7 +13,6 @@ export declare class IsochroneTool extends MapboxApiBasedTool<typeof IsochroneIn
61
13
  };
62
14
  private fetch;
63
15
  constructor(fetch?: typeof globalThis.fetch);
64
- protected execute(input: z.infer<typeof IsochroneInputSchema>, accessToken: string): Promise<any>;
16
+ protected execute(input: z.infer<typeof IsochroneInputSchema>, accessToken: string): Promise<unknown>;
65
17
  }
66
- export {};
67
18
  //# sourceMappingURL=IsochroneTool.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"IsochroneTool.d.ts","sourceRoot":"","sources":["../../../../src/tools/isochrone-tool/IsochroneTool.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AACxB,OAAO,EAAE,kBAAkB,EAAE,MAAM,0BAA0B,CAAC;AAG9D,QAAA,MAAM,oBAAoB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAgFxB,CAAC;AAEH,qBAAa,aAAc,SAAQ,kBAAkB,CACnD,OAAO,oBAAoB,CAC5B;IACC,IAAI,SAAoB;IACxB,WAAW,SAIuD;IAClE,WAAW;;;;;;MAMT;IAEF,OAAO,CAAC,KAAK,CAA0B;gBAE3B,KAAK,GAAE,OAAO,UAAU,CAAC,KAAmB;cAKxC,OAAO,CACrB,KAAK,EAAE,CAAC,CAAC,KAAK,CAAC,OAAO,oBAAoB,CAAC,EAC3C,WAAW,EAAE,MAAM,GAClB,OAAO,CAAC,GAAG,CAAC;CA0DhB"}
1
+ {"version":3,"file":"IsochroneTool.d.ts","sourceRoot":"","sources":["../../../../src/tools/isochrone-tool/IsochroneTool.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAC7B,OAAO,EAAE,kBAAkB,EAAE,MAAM,0BAA0B,CAAC;AAE9D,OAAO,EAAE,oBAAoB,EAAE,MAAM,2BAA2B,CAAC;AAEjE,qBAAa,aAAc,SAAQ,kBAAkB,CACnD,OAAO,oBAAoB,CAC5B;IACC,IAAI,SAAoB;IACxB,WAAW,SAIuD;IAClE,WAAW;;;;;;MAMT;IAEF,OAAO,CAAC,KAAK,CAA0B;gBAE3B,KAAK,GAAE,OAAO,UAAU,CAAC,KAAmB;cAKxC,OAAO,CACrB,KAAK,EAAE,CAAC,CAAC,KAAK,CAAC,OAAO,oBAAoB,CAAC,EAC3C,WAAW,EAAE,MAAM,GAClB,OAAO,CAAC,OAAO,CAAC;CA0DpB"}
@@ -1,65 +1,8 @@
1
- import { z } from 'zod';
1
+ // Copyright (c) Mapbox, Inc.
2
+ // Licensed under the MIT License.
2
3
  import { MapboxApiBasedTool } from '../MapboxApiBasedTool.js';
3
4
  import { fetchClient } from '../../utils/fetchRequest.js';
4
- const IsochroneInputSchema = z.object({
5
- profile: z
6
- .enum([
7
- 'mapbox/driving-traffic',
8
- 'mapbox/driving',
9
- 'mapbox/cycling',
10
- 'mapbox/walking'
11
- ])
12
- .default('mapbox/driving-traffic')
13
- .describe('Mode of travel.'),
14
- coordinates: z
15
- .object({
16
- longitude: z.number().min(-180).max(180),
17
- latitude: z.number().min(-90).max(90)
18
- })
19
- .describe('A coordinate object with longitude and latitude properties around which to center the isochrone lines. Longitude: -180 to 180, Latitude: -85.0511 to 85.0511'),
20
- contours_minutes: z
21
- .array(z.number().int().min(1).max(60))
22
- .max(4)
23
- .optional()
24
- .describe('Contour times in minutes. Times must be in increasing order. Must be specified either contours_minutes or contours_meters.'),
25
- contours_meters: z
26
- .array(z.number().int().min(1).max(100000))
27
- .max(4)
28
- .optional()
29
- .describe('Distances in meters. Distances must be in increasing order. Must be specified either contours_minutes or contours_meters.'),
30
- contours_colors: z
31
- .array(z.string().regex(/^[0-9a-fA-F]{6}$/))
32
- .max(4)
33
- .optional()
34
- .describe('Contour colors as hex strings without starting # (for example ff0000 for red. must match contours_minutes or contours_meters length if provided).'),
35
- polygons: z
36
- .boolean()
37
- .default(false)
38
- .optional()
39
- .describe('Whether to return Polygons (true) or LineStrings (false).'),
40
- denoise: z
41
- .number()
42
- .min(0)
43
- .max(1)
44
- .default(1)
45
- .optional()
46
- .describe('A floating point value that can be used to remove smaller contours. A value of 1.0 will only return the largest contour for a given value.'),
47
- generalize: z
48
- .number()
49
- .min(0)
50
- .describe(`Positive number in meters that is used to simplify geometries.
51
- - Walking: use 0-500. Prefer 50-200 for short contours (minutes < 10 or meters < 5000), 300-500 as they grow.
52
- - Driving: use 1000-5000. Start at 2000, use 3000 if minutes > 10 or meters > 20000. Use 4000-5000 if near 60 minutes or 100000 meters.
53
- `.trim()),
54
- exclude: z
55
- .array(z.enum(['motorway', 'toll', 'ferry', 'unpaved', 'cash_only_tolls']))
56
- .optional()
57
- .describe('Exclude certain road types and custom locations from routing.'),
58
- depart_at: z
59
- .string()
60
- .optional()
61
- .describe('An ISO 8601 date-time string representing the time to depart (format string: YYYY-MM-DDThh:mmss±hh:mm).')
62
- });
5
+ import { IsochroneInputSchema } from './IsochroneTool.schema.js';
63
6
  export class IsochroneTool extends MapboxApiBasedTool {
64
7
  name = 'isochrone_tool';
65
8
  description = `Computes areas that are reachable within a specified amount of time from a location, and returns the reachable regions as contours of Polygons or LineStrings in GeoJSON format that you can display on a map.
@@ -1 +1 @@
1
- {"version":3,"file":"IsochroneTool.js","sourceRoot":"","sources":["../../../../src/tools/isochrone-tool/IsochroneTool.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"IsochroneTool.js","sourceRoot":"","sources":["../../../../src/tools/isochrone-tool/IsochroneTool.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,51 @@
1
+ import { z } from 'zod';
2
+ export declare const IsochroneInputSchema: z.ZodObject<{
3
+ profile: z.ZodDefault<z.ZodEnum<["mapbox/driving-traffic", "mapbox/driving", "mapbox/cycling", "mapbox/walking"]>>;
4
+ coordinates: z.ZodObject<{
5
+ longitude: z.ZodNumber;
6
+ latitude: z.ZodNumber;
7
+ }, "strip", z.ZodTypeAny, {
8
+ longitude: number;
9
+ latitude: number;
10
+ }, {
11
+ longitude: number;
12
+ latitude: number;
13
+ }>;
14
+ contours_minutes: z.ZodOptional<z.ZodArray<z.ZodNumber, "many">>;
15
+ contours_meters: z.ZodOptional<z.ZodArray<z.ZodNumber, "many">>;
16
+ contours_colors: z.ZodOptional<z.ZodArray<z.ZodString, "many">>;
17
+ polygons: z.ZodOptional<z.ZodDefault<z.ZodBoolean>>;
18
+ denoise: z.ZodOptional<z.ZodDefault<z.ZodNumber>>;
19
+ generalize: z.ZodNumber;
20
+ exclude: z.ZodOptional<z.ZodArray<z.ZodEnum<["motorway", "toll", "ferry", "unpaved", "cash_only_tolls"]>, "many">>;
21
+ depart_at: z.ZodOptional<z.ZodString>;
22
+ }, "strip", z.ZodTypeAny, {
23
+ coordinates: {
24
+ longitude: number;
25
+ latitude: number;
26
+ };
27
+ profile: "mapbox/driving-traffic" | "mapbox/driving" | "mapbox/cycling" | "mapbox/walking";
28
+ generalize: number;
29
+ depart_at?: string | undefined;
30
+ exclude?: ("toll" | "cash_only_tolls" | "motorway" | "ferry" | "unpaved")[] | undefined;
31
+ contours_minutes?: number[] | undefined;
32
+ contours_meters?: number[] | undefined;
33
+ contours_colors?: string[] | undefined;
34
+ polygons?: boolean | undefined;
35
+ denoise?: number | undefined;
36
+ }, {
37
+ coordinates: {
38
+ longitude: number;
39
+ latitude: number;
40
+ };
41
+ generalize: number;
42
+ depart_at?: string | undefined;
43
+ exclude?: ("toll" | "cash_only_tolls" | "motorway" | "ferry" | "unpaved")[] | undefined;
44
+ profile?: "mapbox/driving-traffic" | "mapbox/driving" | "mapbox/cycling" | "mapbox/walking" | undefined;
45
+ contours_minutes?: number[] | undefined;
46
+ contours_meters?: number[] | undefined;
47
+ contours_colors?: string[] | undefined;
48
+ polygons?: boolean | undefined;
49
+ denoise?: number | undefined;
50
+ }>;
51
+ //# sourceMappingURL=IsochroneTool.schema.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"IsochroneTool.schema.d.ts","sourceRoot":"","sources":["../../../../src/tools/isochrone-tool/IsochroneTool.schema.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAExB,eAAO,MAAM,oBAAoB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAgF/B,CAAC"}
@@ -0,0 +1,63 @@
1
+ // Copyright (c) Mapbox, Inc.
2
+ // Licensed under the MIT License.
3
+ import { z } from 'zod';
4
+ export const IsochroneInputSchema = z.object({
5
+ profile: z
6
+ .enum([
7
+ 'mapbox/driving-traffic',
8
+ 'mapbox/driving',
9
+ 'mapbox/cycling',
10
+ 'mapbox/walking'
11
+ ])
12
+ .default('mapbox/driving-traffic')
13
+ .describe('Mode of travel.'),
14
+ coordinates: z
15
+ .object({
16
+ longitude: z.number().min(-180).max(180),
17
+ latitude: z.number().min(-90).max(90)
18
+ })
19
+ .describe('A coordinate object with longitude and latitude properties around which to center the isochrone lines. Longitude: -180 to 180, Latitude: -85.0511 to 85.0511'),
20
+ contours_minutes: z
21
+ .array(z.number().int().min(1).max(60))
22
+ .max(4)
23
+ .optional()
24
+ .describe('Contour times in minutes. Times must be in increasing order. Must be specified either contours_minutes or contours_meters.'),
25
+ contours_meters: z
26
+ .array(z.number().int().min(1).max(100000))
27
+ .max(4)
28
+ .optional()
29
+ .describe('Distances in meters. Distances must be in increasing order. Must be specified either contours_minutes or contours_meters.'),
30
+ contours_colors: z
31
+ .array(z.string().regex(/^[0-9a-fA-F]{6}$/))
32
+ .max(4)
33
+ .optional()
34
+ .describe('Contour colors as hex strings without starting # (for example ff0000 for red. must match contours_minutes or contours_meters length if provided).'),
35
+ polygons: z
36
+ .boolean()
37
+ .default(false)
38
+ .optional()
39
+ .describe('Whether to return Polygons (true) or LineStrings (false).'),
40
+ denoise: z
41
+ .number()
42
+ .min(0)
43
+ .max(1)
44
+ .default(1)
45
+ .optional()
46
+ .describe('A floating point value that can be used to remove smaller contours. A value of 1.0 will only return the largest contour for a given value.'),
47
+ generalize: z
48
+ .number()
49
+ .min(0)
50
+ .describe(`Positive number in meters that is used to simplify geometries.
51
+ - Walking: use 0-500. Prefer 50-200 for short contours (minutes < 10 or meters < 5000), 300-500 as they grow.
52
+ - Driving: use 1000-5000. Start at 2000, use 3000 if minutes > 10 or meters > 20000. Use 4000-5000 if near 60 minutes or 100000 meters.
53
+ `.trim()),
54
+ exclude: z
55
+ .array(z.enum(['motorway', 'toll', 'ferry', 'unpaved', 'cash_only_tolls']))
56
+ .optional()
57
+ .describe('Exclude certain road types and custom locations from routing.'),
58
+ depart_at: z
59
+ .string()
60
+ .optional()
61
+ .describe('An ISO 8601 date-time string representing the time to depart (format string: YYYY-MM-DDThh:mmss±hh:mm).')
62
+ });
63
+ //# sourceMappingURL=IsochroneTool.schema.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"IsochroneTool.schema.js","sourceRoot":"","sources":["../../../../src/tools/isochrone-tool/IsochroneTool.schema.ts"],"names":[],"mappings":"AAAA,6BAA6B;AAC7B,kCAAkC;AAElC,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAExB,MAAM,CAAC,MAAM,oBAAoB,GAAG,CAAC,CAAC,MAAM,CAAC;IAC3C,OAAO,EAAE,CAAC;SACP,IAAI,CAAC;QACJ,wBAAwB;QACxB,gBAAgB;QAChB,gBAAgB;QAChB,gBAAgB;KACjB,CAAC;SACD,OAAO,CAAC,wBAAwB,CAAC;SACjC,QAAQ,CAAC,iBAAiB,CAAC;IAC9B,WAAW,EAAE,CAAC;SACX,MAAM,CAAC;QACN,SAAS,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,CAAC,GAAG,CAAC,CAAC,GAAG,CAAC,GAAG,CAAC;QACxC,QAAQ,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,CAAC,EAAE,CAAC,CAAC,GAAG,CAAC,EAAE,CAAC;KACtC,CAAC;SACD,QAAQ,CACP,8JAA8J,CAC/J;IAEH,gBAAgB,EAAE,CAAC;SAChB,KAAK,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;SACtC,GAAG,CAAC,CAAC,CAAC;SACN,QAAQ,EAAE;SACV,QAAQ,CACP,4HAA4H,CAC7H;IAEH,eAAe,EAAE,CAAC;SACf,KAAK,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC;SAC1C,GAAG,CAAC,CAAC,CAAC;SACN,QAAQ,EAAE;SACV,QAAQ,CACP,2HAA2H,CAC5H;IAEH,eAAe,EAAE,CAAC;SACf,KAAK,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,KAAK,CAAC,kBAAkB,CAAC,CAAC;SAC3C,GAAG,CAAC,CAAC,CAAC;SACN,QAAQ,EAAE;SACV,QAAQ,CACP,mJAAmJ,CACpJ;IAEH,QAAQ,EAAE,CAAC;SACR,OAAO,EAAE;SACT,OAAO,CAAC,KAAK,CAAC;SACd,QAAQ,EAAE;SACV,QAAQ,CAAC,2DAA2D,CAAC;IAExE,OAAO,EAAE,CAAC;SACP,MAAM,EAAE;SACR,GAAG,CAAC,CAAC,CAAC;SACN,GAAG,CAAC,CAAC,CAAC;SACN,OAAO,CAAC,CAAC,CAAC;SACV,QAAQ,EAAE;SACV,QAAQ,CACP,4IAA4I,CAC7I;IAEH,UAAU,EAAE,CAAC;SACV,MAAM,EAAE;SACR,GAAG,CAAC,CAAC,CAAC;SACN,QAAQ,CACP;;;OAGC,CAAC,IAAI,EAAE,CACT;IAEH,OAAO,EAAE,CAAC;SACP,KAAK,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,UAAU,EAAE,MAAM,EAAE,OAAO,EAAE,SAAS,EAAE,iBAAiB,CAAC,CAAC,CAAC;SAC1E,QAAQ,EAAE;SACV,QAAQ,CAAC,+DAA+D,CAAC;IAE5E,SAAS,EAAE,CAAC;SACT,MAAM,EAAE;SACR,QAAQ,EAAE;SACV,QAAQ,CACP,yGAAyG,CAC1G;CACJ,CAAC,CAAC"}