deere-sdk 1.0.10 → 2.1.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (159) hide show
  1. package/CHANGELOG.md +223 -0
  2. package/README.md +130 -20
  3. package/dist/api/aemp.d.ts +4 -0
  4. package/dist/api/aemp.d.ts.map +1 -1
  5. package/dist/api/aemp.js +5 -1
  6. package/dist/api/aemp.js.map +1 -1
  7. package/dist/api/assets.d.ts +4 -0
  8. package/dist/api/assets.d.ts.map +1 -1
  9. package/dist/api/assets.js +13 -9
  10. package/dist/api/assets.js.map +1 -1
  11. package/dist/api/boundaries.d.ts +4 -0
  12. package/dist/api/boundaries.d.ts.map +1 -1
  13. package/dist/api/boundaries.js +12 -8
  14. package/dist/api/boundaries.js.map +1 -1
  15. package/dist/api/clients.d.ts +4 -0
  16. package/dist/api/clients.d.ts.map +1 -1
  17. package/dist/api/clients.js +12 -8
  18. package/dist/api/clients.js.map +1 -1
  19. package/dist/api/connection-management.d.ts +4 -0
  20. package/dist/api/connection-management.d.ts.map +1 -1
  21. package/dist/api/connection-management.js +8 -4
  22. package/dist/api/connection-management.js.map +1 -1
  23. package/dist/api/crop-types.d.ts +4 -0
  24. package/dist/api/crop-types.d.ts.map +1 -1
  25. package/dist/api/crop-types.js +9 -5
  26. package/dist/api/crop-types.js.map +1 -1
  27. package/dist/api/equipment-measurement.d.ts +4 -0
  28. package/dist/api/equipment-measurement.d.ts.map +1 -1
  29. package/dist/api/equipment-measurement.js +5 -1
  30. package/dist/api/equipment-measurement.js.map +1 -1
  31. package/dist/api/equipment.d.ts +4 -0
  32. package/dist/api/equipment.d.ts.map +1 -1
  33. package/dist/api/equipment.js +20 -16
  34. package/dist/api/equipment.js.map +1 -1
  35. package/dist/api/farms.d.ts +4 -0
  36. package/dist/api/farms.d.ts.map +1 -1
  37. package/dist/api/farms.js +12 -8
  38. package/dist/api/farms.js.map +1 -1
  39. package/dist/api/field-operations-api.d.ts +4 -0
  40. package/dist/api/field-operations-api.d.ts.map +1 -1
  41. package/dist/api/field-operations-api.js +8 -4
  42. package/dist/api/field-operations-api.js.map +1 -1
  43. package/dist/api/fields.d.ts +4 -0
  44. package/dist/api/fields.d.ts.map +1 -1
  45. package/dist/api/fields.js +12 -8
  46. package/dist/api/fields.js.map +1 -1
  47. package/dist/api/files.d.ts +4 -0
  48. package/dist/api/files.d.ts.map +1 -1
  49. package/dist/api/files.js +10 -6
  50. package/dist/api/files.js.map +1 -1
  51. package/dist/api/flags.d.ts +4 -0
  52. package/dist/api/flags.d.ts.map +1 -1
  53. package/dist/api/flags.js +11 -7
  54. package/dist/api/flags.js.map +1 -1
  55. package/dist/api/guidance-lines.d.ts +4 -0
  56. package/dist/api/guidance-lines.d.ts.map +1 -1
  57. package/dist/api/guidance-lines.js +9 -5
  58. package/dist/api/guidance-lines.js.map +1 -1
  59. package/dist/api/harvest-id.d.ts +4 -0
  60. package/dist/api/harvest-id.d.ts.map +1 -1
  61. package/dist/api/harvest-id.js +7 -3
  62. package/dist/api/harvest-id.js.map +1 -1
  63. package/dist/api/machine-alerts.d.ts +4 -0
  64. package/dist/api/machine-alerts.d.ts.map +1 -1
  65. package/dist/api/machine-alerts.js +6 -2
  66. package/dist/api/machine-alerts.js.map +1 -1
  67. package/dist/api/machine-device-state-reports.d.ts +4 -0
  68. package/dist/api/machine-device-state-reports.d.ts.map +1 -1
  69. package/dist/api/machine-device-state-reports.js +5 -1
  70. package/dist/api/machine-device-state-reports.js.map +1 -1
  71. package/dist/api/machine-engine-hours.d.ts +4 -0
  72. package/dist/api/machine-engine-hours.d.ts.map +1 -1
  73. package/dist/api/machine-engine-hours.js +6 -2
  74. package/dist/api/machine-engine-hours.js.map +1 -1
  75. package/dist/api/machine-hours-of-operation.d.ts +4 -0
  76. package/dist/api/machine-hours-of-operation.d.ts.map +1 -1
  77. package/dist/api/machine-hours-of-operation.js +6 -2
  78. package/dist/api/machine-hours-of-operation.js.map +1 -1
  79. package/dist/api/machine-locations.d.ts +4 -0
  80. package/dist/api/machine-locations.d.ts.map +1 -1
  81. package/dist/api/machine-locations.js +5 -1
  82. package/dist/api/machine-locations.js.map +1 -1
  83. package/dist/api/map-layers.d.ts +4 -0
  84. package/dist/api/map-layers.d.ts.map +1 -1
  85. package/dist/api/map-layers.js +9 -5
  86. package/dist/api/map-layers.js.map +1 -1
  87. package/dist/api/notifications.d.ts +4 -0
  88. package/dist/api/notifications.d.ts.map +1 -1
  89. package/dist/api/notifications.js +9 -5
  90. package/dist/api/notifications.js.map +1 -1
  91. package/dist/api/operators.d.ts +4 -0
  92. package/dist/api/operators.d.ts.map +1 -1
  93. package/dist/api/operators.js +11 -7
  94. package/dist/api/operators.js.map +1 -1
  95. package/dist/api/organizations.d.ts +4 -0
  96. package/dist/api/organizations.d.ts.map +1 -1
  97. package/dist/api/organizations.js +9 -5
  98. package/dist/api/organizations.js.map +1 -1
  99. package/dist/api/partnerships.d.ts +4 -0
  100. package/dist/api/partnerships.d.ts.map +1 -1
  101. package/dist/api/partnerships.js +11 -7
  102. package/dist/api/partnerships.js.map +1 -1
  103. package/dist/api/products.d.ts +4 -0
  104. package/dist/api/products.d.ts.map +1 -1
  105. package/dist/api/products.js +14 -10
  106. package/dist/api/products.js.map +1 -1
  107. package/dist/api/users.d.ts +4 -0
  108. package/dist/api/users.d.ts.map +1 -1
  109. package/dist/api/users.js +5 -1
  110. package/dist/api/users.js.map +1 -1
  111. package/dist/api/webhook.d.ts +4 -0
  112. package/dist/api/webhook.d.ts.map +1 -1
  113. package/dist/api/webhook.js +9 -5
  114. package/dist/api/webhook.js.map +1 -1
  115. package/dist/api-servers.generated.d.ts +72 -0
  116. package/dist/api-servers.generated.d.ts.map +1 -0
  117. package/dist/api-servers.generated.js +344 -0
  118. package/dist/api-servers.generated.js.map +1 -0
  119. package/dist/client.d.ts +95 -47
  120. package/dist/client.d.ts.map +1 -1
  121. package/dist/client.js +196 -105
  122. package/dist/client.js.map +1 -1
  123. package/dist/deere.d.ts +14 -0
  124. package/dist/deere.d.ts.map +1 -1
  125. package/dist/deere.js +20 -0
  126. package/dist/deere.js.map +1 -1
  127. package/dist/environment-resolver.d.ts +40 -0
  128. package/dist/environment-resolver.d.ts.map +1 -0
  129. package/dist/environment-resolver.js +79 -0
  130. package/dist/environment-resolver.js.map +1 -0
  131. package/dist/errors.d.ts +36 -0
  132. package/dist/errors.d.ts.map +1 -0
  133. package/dist/errors.js +54 -0
  134. package/dist/errors.js.map +1 -0
  135. package/dist/hateoas-map.d.ts +9 -0
  136. package/dist/hateoas-map.d.ts.map +1 -1
  137. package/dist/hateoas-map.js +84 -37
  138. package/dist/hateoas-map.js.map +1 -1
  139. package/dist/index.d.ts +1 -0
  140. package/dist/index.d.ts.map +1 -1
  141. package/dist/index.js +3 -0
  142. package/dist/index.js.map +1 -1
  143. package/dist/safe/field-operations.d.ts +73 -0
  144. package/dist/safe/field-operations.d.ts.map +1 -0
  145. package/dist/safe/field-operations.js +74 -0
  146. package/dist/safe/field-operations.js.map +1 -0
  147. package/dist/safe/index.d.ts +41 -0
  148. package/dist/safe/index.d.ts.map +1 -0
  149. package/dist/safe/index.js +47 -0
  150. package/dist/safe/index.js.map +1 -0
  151. package/dist/types/generated/field-operations-api.d.ts +17 -0
  152. package/dist/types/generated/field-operations-api.d.ts.map +1 -1
  153. package/dist/types/generated/index.d.ts +1 -1
  154. package/dist/types/generated/index.js +1 -1
  155. package/package.json +3 -2
  156. package/dist/api/field-operations.d.ts +0 -83
  157. package/dist/api/field-operations.d.ts.map +0 -1
  158. package/dist/api/field-operations.js +0 -134
  159. package/dist/api/field-operations.js.map +0 -1
@@ -1 +1 @@
1
- {"version":3,"file":"client.d.ts","sourceRoot":"","sources":["../src/client.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"client.d.ts","sourceRoot":"","sources":["../src/client.ts"],"names":[],"mappings":"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"}
package/dist/client.js CHANGED
@@ -2,52 +2,64 @@
2
2
  * John Deere API Client
3
3
  *
4
4
  * Unofficial TypeScript SDK for John Deere Operations Center API.
5
- * Provides typed access to all John Deere agricultural APIs.
5
+ *
6
+ * URL resolution flow (v2.0):
7
+ *
8
+ * User code
9
+ * │
10
+ * ▼
11
+ * deere.equipmentMeasurement.post(params)
12
+ * │
13
+ * ▼
14
+ * this.client.post('equipment-measurement', '/orgs/.../measurements', data, options)
15
+ * │
16
+ * ▼
17
+ * DeereClient.post()
18
+ * ├─ resolveRequestUrl(spec, path, this.environment)
19
+ * │ ├─ API_SERVERS[spec] lookup
20
+ * │ ├─ templated → urlTemplate.replace('{environment}', env)
21
+ * │ ├─ static → urlByEnvironment[env] (throws UnsupportedEnvironmentError if missing)
22
+ * │ └─ unavailable → throws NoServerConfigError
23
+ * └─ requestUrl('POST', url, body, options)
24
+ * └─ fetch(url, ...) with retry + timeout
25
+ *
26
+ * Absolute URLs bypass the resolver via fetchUrl() — used for HATEOAS next-page
27
+ * links and power-user escape hatches. fetchUrl attaches the Bearer token ONLY
28
+ * to *.deere.com hosts; third-party URLs get no Authorization header.
29
+ *
30
+ * URL data lives in src/api-servers.generated.ts, built from OpenAPI specs at
31
+ * build time by scripts/generate-api-servers.ts. Never hand-edit that file.
6
32
  */
7
- export class DeereError extends Error {
8
- status;
9
- statusText;
10
- body;
11
- constructor(message, status, statusText, body) {
12
- super(message);
13
- this.status = status;
14
- this.statusText = statusText;
15
- this.body = body;
16
- this.name = 'DeereError';
17
- }
18
- }
19
- export class RateLimitError extends DeereError {
20
- retryAfter;
21
- constructor(message, status, statusText, retryAfter, body) {
22
- super(message, status, statusText, body);
23
- this.retryAfter = retryAfter;
24
- this.name = 'RateLimitError';
25
- }
26
- }
27
- export class AuthError extends DeereError {
28
- constructor(message, status, statusText, body) {
29
- super(message, status, statusText, body);
30
- this.name = 'AuthError';
31
- }
32
- }
33
- export class HateoasError extends Error {
34
- path;
35
- cause;
36
- constructor(message, path, cause) {
37
- super(message);
38
- this.path = path;
39
- this.cause = cause;
40
- this.name = 'HateoasError';
41
- }
42
- }
43
- const ENVIRONMENT_URLS = {
44
- production: 'https://api.deere.com/platform',
45
- sandbox: 'https://sandboxapi.deere.com/platform',
46
- partner: 'https://partnerapi.deere.com/platform',
47
- cert: 'https://apicert.deere.com/platform',
48
- qa: 'https://apiqa.tal.deere.com/platform',
33
+ import { DEFAULT_ENVIRONMENT, KNOWN_ENVIRONMENTS, } from './api-servers.generated.js';
34
+ import { resolveRequestUrl } from './environment-resolver.js';
35
+ /**
36
+ * Legacy v1 environment names (kept for error-message migration hints only).
37
+ * v1 consumers passing 'production'/'sandbox'/etc. get a thrown error at
38
+ * construction time pointing them at the v2 raw subdomain name.
39
+ */
40
+ const V1_LEGACY_ENV_NAMES = {
41
+ production: 'api',
42
+ sandbox: 'sandboxapi',
43
+ partner: 'partnerapi',
44
+ cert: 'apicert',
45
+ qa: 'apiqa.tal',
49
46
  };
47
+ // Error classes live in ./errors.ts to avoid a circular import with
48
+ // environment-resolver.ts. Imported here for internal use (throws, instanceof
49
+ // checks) and re-exported for backward compatibility with any consumer that
50
+ // imports them from 'deere-sdk' main entry.
51
+ import { AuthError, DeereError, HateoasError, RateLimitError } from './errors.js';
52
+ export { AuthError, DeereError, HateoasError, RateLimitError };
50
53
  const DEERE_ACCEPT_HEADER = 'application/vnd.deere.axiom.v3+json';
54
+ /**
55
+ * Hostnames where fetchUrl() will attach the Bearer token. Any URL whose
56
+ * hostname does NOT match this pattern has Authorization suppressed to
57
+ * prevent accidental token leakage to third-party services.
58
+ *
59
+ * Matches: deere.com, api.deere.com, foo.bar.deere.com, etc.
60
+ * Does not match: untrusted.example, deere.com.untrusted.example, localhost.
61
+ */
62
+ const TRUSTED_HOSTS = /^([a-z0-9-]+\.)*deere\.com$/i;
51
63
  /** HTTP status codes that are safe to retry */
52
64
  const RETRYABLE_STATUS_CODES = new Set([429, 500, 502, 503, 504]);
53
65
  import { HATEOAS_MAP } from './hateoas-map.js';
@@ -76,11 +88,12 @@ class LinkCache {
76
88
  * ```typescript
77
89
  * const client = new DeereClient({
78
90
  * accessToken: 'your-token',
79
- * environment: 'sandbox',
91
+ * environment: 'sandboxapi', // v2: raw JD subdomain, not 'sandbox'
80
92
  * maxRetries: 3, // Retries with exponential backoff (default: 3)
81
93
  * });
82
94
  *
83
- * const orgs = await client.get('/organizations');
95
+ * // v2: first arg is the spec name (generated classes do this for you)
96
+ * const orgs = await client.get('organizations', '/organizations');
84
97
  * ```
85
98
  *
86
99
  * @remarks
@@ -90,7 +103,7 @@ class LinkCache {
90
103
  * Set `maxRetries: 0` to disable automatic retries.
91
104
  */
92
105
  export class DeereClient {
93
- baseUrl;
106
+ environment;
94
107
  accessToken;
95
108
  fetchFn;
96
109
  defaultHeaders;
@@ -101,7 +114,7 @@ export class DeereClient {
101
114
  linkCache = new LinkCache();
102
115
  constructor(config) {
103
116
  this.accessToken = config.accessToken;
104
- this.baseUrl = config.baseUrl ?? ENVIRONMENT_URLS[config.environment ?? 'sandbox'];
117
+ this.environment = this.validateEnvironment(config.environment);
105
118
  this.fetchFn = config.fetch ?? fetch;
106
119
  this.timeout = config.timeout ?? 30000;
107
120
  this.hateoas = config.hateoas ?? false;
@@ -118,82 +131,127 @@ export class DeereClient {
118
131
  };
119
132
  }
120
133
  /**
121
- * Make a GET request to the John Deere API
134
+ * Validates the environment string from config. Throws at construction
135
+ * time with a migration hint if the user passed a v1 friendly name or an
136
+ * unknown string — catches errors immediately instead of at first request.
137
+ */
138
+ validateEnvironment(raw) {
139
+ const env = raw ?? DEFAULT_ENVIRONMENT;
140
+ if (KNOWN_ENVIRONMENTS.includes(env)) {
141
+ return env;
142
+ }
143
+ const v2Replacement = V1_LEGACY_ENV_NAMES[env];
144
+ const migrationHint = v2Replacement
145
+ ? `\n\nv2.0 replaced v1 friendly environment names with raw JD subdomains. ` +
146
+ `Use '${v2Replacement}' instead of '${env}'. See CHANGELOG.md for the full table.`
147
+ : '';
148
+ throw new Error(`Invalid environment '${env}'. Valid values: ${KNOWN_ENVIRONMENTS.join(', ')}.` +
149
+ migrationHint);
150
+ }
151
+ /**
152
+ * GET request, spec-aware. Generated API classes call this with their own
153
+ * `spec` as the first argument — consumers don't normally call it directly.
122
154
  */
123
- async get(path, options) {
124
- return this.request('GET', path, undefined, options);
155
+ async get(specName, path, options) {
156
+ return this.request(specName, 'GET', path, undefined, options);
125
157
  }
126
158
  /**
127
- * Make a POST request to the John Deere API
159
+ * POST request, spec-aware.
128
160
  */
129
- async post(path, body, options) {
130
- return this.request('POST', path, body, options);
161
+ async post(specName, path, body, options) {
162
+ return this.request(specName, 'POST', path, body, options);
131
163
  }
132
164
  /**
133
- * Make a PUT request to the John Deere API
165
+ * PUT request, spec-aware.
134
166
  */
135
- async put(path, body, options) {
136
- return this.request('PUT', path, body, options);
167
+ async put(specName, path, body, options) {
168
+ return this.request(specName, 'PUT', path, body, options);
137
169
  }
138
170
  /**
139
- * Make a DELETE request to the John Deere API
171
+ * DELETE request, spec-aware.
140
172
  */
141
- async delete(path, options) {
142
- return this.request('DELETE', path, undefined, options);
173
+ async delete(specName, path, options) {
174
+ return this.request(specName, 'DELETE', path, undefined, options);
143
175
  }
144
176
  /**
145
- * Make a PATCH request to the John Deere API
177
+ * PATCH request, spec-aware.
146
178
  */
147
- async patch(path, body, options) {
148
- return this.request('PATCH', path, body, options);
179
+ async patch(specName, path, body, options) {
180
+ return this.request(specName, 'PATCH', path, body, options);
149
181
  }
150
182
  /**
151
- * Follow a HAL link from a response
183
+ * Fetch an absolute URL directly. Escape hatch for HATEOAS next-page links,
184
+ * HAL link traversal, and power users with pre-resolved URLs.
185
+ *
186
+ * **Security**: Attaches the Bearer token ONLY when the target hostname
187
+ * matches a trusted `*.deere.com` origin. Third-party URLs get NO
188
+ * Authorization header — prevents accidental token leakage to tracking or
189
+ * proxy services. If you need to send auth to a non-JD host, set
190
+ * `Authorization` explicitly via `options.headers`.
191
+ */
192
+ async fetchUrl(method, url, body, options) {
193
+ const { hostname } = new URL(url);
194
+ const isTrusted = TRUSTED_HOSTS.test(hostname);
195
+ if (!isTrusted && this.hateoasDebug) {
196
+ console.warn(`[deere-sdk] fetchUrl: '${hostname}' is not a trusted *.deere.com host. ` +
197
+ `Bearer token suppressed. Set Authorization manually via options.headers ` +
198
+ `if needed.`);
199
+ }
200
+ const internalOpts = {
201
+ ...options,
202
+ _noAuth: !isTrusted,
203
+ };
204
+ return this.requestUrl(method, url, body, internalOpts);
205
+ }
206
+ /**
207
+ * Follow a HAL link from a response. Accepts a Link object or a raw URL
208
+ * string. Delegates to fetchUrl() so the trusted-host check applies.
152
209
  */
153
210
  async followLink(link, options) {
154
211
  const uri = typeof link === 'string' ? link : link.uri;
155
- // If it's a full URL, use it directly; otherwise treat as path
156
- const url = uri.startsWith('http') ? uri : `${this.baseUrl}${uri}`;
157
- return this.requestUrl('GET', url, undefined, options);
212
+ return this.fetchUrl('GET', uri, undefined, options);
158
213
  }
159
214
  /**
160
- * Paginate through all results following nextPage links
215
+ * Paginate through all results following nextPage links. First page is
216
+ * resolved via the spec's URL config; subsequent pages use the absolute
217
+ * URLs returned by the API in `response.links`.
161
218
  */
162
- async *paginate(path, options) {
219
+ async *paginate(specName, path, options) {
220
+ // First page: resolve via the spec (templated or static lookup).
163
221
  let url = this.hateoas
164
- ? await this.resolveHateoasUrl(path)
165
- : `${this.baseUrl}${path}`;
222
+ ? await this.resolveHateoasUrl(specName, path)
223
+ : resolveRequestUrl(specName, path, this.environment);
224
+ let isFirstPage = true;
166
225
  while (url) {
167
- const response = await this.requestUrl('GET', url, undefined, options);
226
+ // First page uses the normal auth path; subsequent nextPage URLs are
227
+ // absolute and routed through fetchUrl which applies the trusted-host
228
+ // check (they're always *.deere.com in practice).
229
+ const response = isFirstPage
230
+ ? await this.requestUrl('GET', url, undefined, options)
231
+ : await this.fetchUrl('GET', url, undefined, options);
168
232
  if (response.values && response.values.length > 0) {
169
233
  yield response.values;
170
234
  }
171
- // Find nextPage link
235
+ // Find nextPage link — always absolute in JD's HAL responses.
172
236
  const nextPageLink = response.links?.find((l) => l.rel === 'nextPage');
173
237
  url = nextPageLink?.uri;
238
+ isFirstPage = false;
174
239
  }
175
240
  }
176
241
  /**
177
- * Get all items from a paginated endpoint
242
+ * Get all items from a paginated endpoint, spec-aware.
178
243
  */
179
- async getAll(path, options) {
244
+ async getAll(specName, path, options) {
180
245
  const items = [];
181
- for await (const page of this.paginate(path, options)) {
246
+ for await (const page of this.paginate(specName, path, options)) {
182
247
  items.push(...page);
183
248
  }
184
249
  return items;
185
250
  }
186
- async request(method, path, body, options) {
187
- let url;
188
- if (path.startsWith('http')) {
189
- url = path;
190
- }
191
- else if (this.hateoas) {
192
- url = await this.resolveHateoasUrl(path);
193
- }
194
- else {
195
- url = `${this.baseUrl}${path}`;
196
- }
251
+ async request(specName, method, path, body, options) {
252
+ const url = this.hateoas
253
+ ? await this.resolveHateoasUrl(specName, path)
254
+ : resolveRequestUrl(specName, path, this.environment);
197
255
  return this.requestUrl(method, url, body, options);
198
256
  }
199
257
  async requestUrl(method, url, body, options) {
@@ -204,13 +262,25 @@ export class DeereClient {
204
262
  const controller = new AbortController();
205
263
  const timeoutId = setTimeout(() => controller.abort(), timeout);
206
264
  try {
265
+ // Build headers: defaultHeaders → auto Bearer → user overrides.
266
+ // The auto-Bearer is attached ONLY when the internal _noAuth flag
267
+ // is unset (fetchUrl suppresses for untrusted hosts) AND when the
268
+ // user hasn't explicitly set Authorization themselves (user opt-in
269
+ // wins over our default).
270
+ const userHeaders = options?.headers ?? {};
271
+ const headers = {
272
+ ...this.defaultHeaders,
273
+ };
274
+ if (!options?._noAuth &&
275
+ userHeaders.Authorization === undefined) {
276
+ headers.Authorization = `Bearer ${this.accessToken}`;
277
+ }
278
+ // Apply user headers LAST so they override both defaultHeaders and
279
+ // the auto-attached Bearer when explicitly set.
280
+ Object.assign(headers, userHeaders);
207
281
  const response = await this.fetchFn(url, {
208
282
  method,
209
- headers: {
210
- ...this.defaultHeaders,
211
- Authorization: `Bearer ${this.accessToken}`,
212
- ...options?.headers,
213
- },
283
+ headers,
214
284
  body: body ? JSON.stringify(body) : undefined,
215
285
  signal: options?.signal ?? controller.signal,
216
286
  });
@@ -290,12 +360,14 @@ export class DeereClient {
290
360
  /**
291
361
  * Pre-fetch parent resources to warm the HATEOAS link cache.
292
362
  * Reduces latency for subsequent HATEOAS-resolved requests.
293
- * @param paths - Parent resource paths to pre-fetch (defaults to common roots)
363
+ *
364
+ * @param specName - Spec that owns the paths (e.g. 'organizations')
365
+ * @param paths - Parent resource paths to pre-fetch (defaults to '/organizations')
294
366
  */
295
- async warmLinkCache(paths = ['/organizations']) {
367
+ async warmLinkCache(specName, paths = ['/organizations']) {
296
368
  for (const path of paths) {
297
369
  try {
298
- const url = `${this.baseUrl}${path}`;
370
+ const url = resolveRequestUrl(specName, path, this.environment);
299
371
  const response = await this.requestUrl('GET', url);
300
372
  if (response?.links) {
301
373
  this.linkCache.set(path, response.links);
@@ -308,7 +380,9 @@ export class DeereClient {
308
380
  }
309
381
  /**
310
382
  * Match a concrete path against the HATEOAS route map.
311
- * Returns the concrete parent path and rel name, or null if no match.
383
+ * Returns the concrete parent path, rel name, and optional parentSpec
384
+ * (which spec owns the parent resource — used for cross-spec HATEOAS).
385
+ * Returns null if no map entry matches.
312
386
  */
313
387
  matchHateoasPattern(concretePath) {
314
388
  const concreteSegments = concretePath.split('/').filter(Boolean);
@@ -330,31 +404,48 @@ export class DeereClient {
330
404
  const parentSegments = route.parentPath.split('/').filter(Boolean);
331
405
  const concreteParentParts = parentSegments.map((seg, i) => seg.startsWith('{') ? concreteSegments[i] : seg);
332
406
  const concreteParentPath = `/${concreteParentParts.join('/')}`;
333
- return { concreteParentPath, rel: route.rel };
407
+ // parentSpec is optional on the route interface to allow gradual
408
+ // rollout — Phase 6 populates it. Falls back to the caller's spec
409
+ // when absent (same-spec HATEOAS, the common case).
410
+ const routeWithParentSpec = route;
411
+ return {
412
+ concreteParentPath,
413
+ rel: route.rel,
414
+ parentSpec: routeWithParentSpec.parentSpec,
415
+ };
334
416
  }
335
417
  }
336
418
  return null;
337
419
  }
338
420
  /**
339
- * Resolve a path via HATEOAS link traversal.
340
- * Fetches the parent resource, finds the matching link rel, and returns the discovered URL.
341
- * Throws HateoasError if resolution fails (strict mode).
421
+ * Resolve a path via HATEOAS link traversal, spec-aware.
422
+ *
423
+ * Fetches the parent resource (via the parent's own spec host, not the
424
+ * child's — critical for cross-spec flows like equipment.yaml's org-scoped
425
+ * endpoints whose parent `/organizations/{orgId}` lives on the platform
426
+ * host, not equipmentapi.deere.com/isg).
427
+ *
428
+ * Throws HateoasError if resolution fails.
342
429
  */
343
- async resolveHateoasUrl(path) {
430
+ async resolveHateoasUrl(specName, path) {
344
431
  // Strip query params for matching, reattach after
345
432
  const [basePath, queryString] = path.split('?', 2);
346
433
  const match = this.matchHateoasPattern(basePath);
347
434
  if (!match) {
348
- // No map entry — path is a root collection or item, use direct URL
349
- return `${this.baseUrl}${path}`;
435
+ // No map entry — resolve directly via the caller's spec.
436
+ return resolveRequestUrl(specName, path, this.environment);
350
437
  }
351
- const { concreteParentPath, rel } = match;
438
+ const { concreteParentPath, rel, parentSpec } = match;
439
+ // parentSpec is optional; fall back to the caller's spec if the HATEOAS
440
+ // map doesn't record which spec owns the parent (Phase 5 compat — Phase 6
441
+ // regenerates hateoas-map.ts with parentSpec populated).
442
+ const effectiveParentSpec = parentSpec ?? specName;
352
443
  // Check cache
353
444
  let discoveredUrl = this.linkCache.findRel(concreteParentPath, rel);
354
445
  if (!discoveredUrl) {
355
- // Cache miss — fetch parent resource
446
+ // Cache miss — fetch parent resource via its OWN spec's host.
356
447
  try {
357
- const parentUrl = `${this.baseUrl}${concreteParentPath}`;
448
+ const parentUrl = resolveRequestUrl(effectiveParentSpec, concreteParentPath, this.environment);
358
449
  const parentResponse = await this.requestUrl('GET', parentUrl);
359
450
  if (parentResponse?.links) {
360
451
  this.linkCache.set(concreteParentPath, parentResponse.links);
@@ -1 +1 @@
1
- {"version":3,"file":"client.js","sourceRoot":"","sources":["../src/client.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"client.js","sourceRoot":"","sources":["../src/client.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA+BG;AAEH,OAAO,EACL,mBAAmB,EAEnB,kBAAkB,GAEnB,MAAM,4BAA4B,CAAC;AACpC,OAAO,EAAE,iBAAiB,EAAE,MAAM,2BAA2B,CAAC;AAK9D;;;;GAIG;AACH,MAAM,mBAAmB,GAAgC;IACvD,UAAU,EAAE,KAAK;IACjB,OAAO,EAAE,YAAY;IACrB,OAAO,EAAE,YAAY;IACrB,IAAI,EAAE,SAAS;IACf,EAAE,EAAE,WAAW;CAChB,CAAC;AA8EF,oEAAoE;AACpE,8EAA8E;AAC9E,4EAA4E;AAC5E,4CAA4C;AAC5C,OAAO,EAAE,SAAS,EAAE,UAAU,EAAE,YAAY,EAAE,cAAc,EAAE,MAAM,aAAa,CAAC;AAElF,OAAO,EAAE,SAAS,EAAE,UAAU,EAAE,YAAY,EAAE,cAAc,EAAE,CAAC;AAE/D,MAAM,mBAAmB,GAAG,qCAAqC,CAAC;AAElE;;;;;;;GAOG;AACH,MAAM,aAAa,GAAG,8BAA8B,CAAC;AAErD,+CAA+C;AAC/C,MAAM,sBAAsB,GAAG,IAAI,GAAG,CAAC,CAAC,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,CAAC,CAAC,CAAC;AAElE,OAAO,EAAE,WAAW,EAAE,MAAM,kBAAkB,CAAC;AAE/C,MAAM,SAAS;IACL,KAAK,GAAG,IAAI,GAAG,EAAkB,CAAC;IAE1C,GAAG,CAAC,UAAkB,EAAE,KAAa;QACnC,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,UAAU,EAAE,KAAK,CAAC,CAAC;IACpC,CAAC;IAED,OAAO,CAAC,UAAkB,EAAE,GAAW;QACrC,MAAM,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,UAAU,CAAC,CAAC;QACzC,IAAI,CAAC,KAAK;YAAE,OAAO,SAAS,CAAC;QAC7B,OAAO,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,GAAG,KAAK,GAAG,CAAC,EAAE,GAAG,CAAC;IAC/C,CAAC;IAED,GAAG,CAAC,UAAkB;QACpB,OAAO,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,UAAU,CAAC,CAAC;IACpC,CAAC;IAED,KAAK;QACH,IAAI,CAAC,KAAK,CAAC,KAAK,EAAE,CAAC;IACrB,CAAC;CACF;AAED;;;;;;;;;;;;;;;;;;;;GAoBG;AACH,MAAM,OAAO,WAAW;IACL,WAAW,CAAc;IACzB,WAAW,CAAS;IACpB,OAAO,CAAe;IACtB,cAAc,CAAyB;IACvC,OAAO,CAAS;IAChB,WAAW,CAAc;IACzB,OAAO,CAAU;IACjB,YAAY,CAAU;IACtB,SAAS,GAAG,IAAI,SAAS,EAAE,CAAC;IAE7C,YAAY,MAAyB;QACnC,IAAI,CAAC,WAAW,GAAG,MAAM,CAAC,WAAW,CAAC;QACtC,IAAI,CAAC,WAAW,GAAG,IAAI,CAAC,mBAAmB,CAAC,MAAM,CAAC,WAAW,CAAC,CAAC;QAChE,IAAI,CAAC,OAAO,GAAG,MAAM,CAAC,KAAK,IAAI,KAAK,CAAC;QACrC,IAAI,CAAC,OAAO,GAAG,MAAM,CAAC,OAAO,IAAI,KAAK,CAAC;QACvC,IAAI,CAAC,OAAO,GAAG,MAAM,CAAC,OAAO,IAAI,KAAK,CAAC;QACvC,IAAI,CAAC,YAAY,GAAG,MAAM,CAAC,YAAY,IAAI,KAAK,CAAC;QACjD,IAAI,CAAC,cAAc,GAAG;YACpB,MAAM,EAAE,mBAAmB;YAC3B,cAAc,EAAE,mBAAmB;YACnC,GAAG,MAAM,CAAC,cAAc;SACzB,CAAC;QACF,IAAI,CAAC,WAAW,GAAG;YACjB,UAAU,EAAE,MAAM,CAAC,UAAU,IAAI,CAAC;YAClC,SAAS,EAAE,IAAI;YACf,QAAQ,EAAE,KAAK;SAChB,CAAC;IACJ,CAAC;IAED;;;;OAIG;IACK,mBAAmB,CAAC,GAAuB;QACjD,MAAM,GAAG,GAAG,GAAG,IAAI,mBAAmB,CAAC;QACvC,IAAI,kBAAkB,CAAC,QAAQ,CAAC,GAAkB,CAAC,EAAE,CAAC;YACpD,OAAO,GAAkB,CAAC;QAC5B,CAAC;QACD,MAAM,aAAa,GAAG,mBAAmB,CAAC,GAAG,CAAC,CAAC;QAC/C,MAAM,aAAa,GAAG,aAAa;YACjC,CAAC,CAAC,0EAA0E;gBAC1E,QAAQ,aAAa,iBAAiB,GAAG,yCAAyC;YACpF,CAAC,CAAC,EAAE,CAAC;QACP,MAAM,IAAI,KAAK,CACb,wBAAwB,GAAG,oBAAoB,kBAAkB,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG;YAC7E,aAAa,CAChB,CAAC;IACJ,CAAC;IAED;;;OAGG;IACH,KAAK,CAAC,GAAG,CAAc,QAAkB,EAAE,IAAY,EAAE,OAAwB;QAC/E,OAAO,IAAI,CAAC,OAAO,CAAI,QAAQ,EAAE,KAAK,EAAE,IAAI,EAAE,SAAS,EAAE,OAAO,CAAC,CAAC;IACpE,CAAC;IAED;;OAEG;IACH,KAAK,CAAC,IAAI,CACR,QAAkB,EAClB,IAAY,EACZ,IAAc,EACd,OAAwB;QAExB,OAAO,IAAI,CAAC,OAAO,CAAI,QAAQ,EAAE,MAAM,EAAE,IAAI,EAAE,IAAI,EAAE,OAAO,CAAC,CAAC;IAChE,CAAC;IAED;;OAEG;IACH,KAAK,CAAC,GAAG,CACP,QAAkB,EAClB,IAAY,EACZ,IAAc,EACd,OAAwB;QAExB,OAAO,IAAI,CAAC,OAAO,CAAI,QAAQ,EAAE,KAAK,EAAE,IAAI,EAAE,IAAI,EAAE,OAAO,CAAC,CAAC;IAC/D,CAAC;IAED;;OAEG;IACH,KAAK,CAAC,MAAM,CACV,QAAkB,EAClB,IAAY,EACZ,OAAwB;QAExB,OAAO,IAAI,CAAC,OAAO,CAAI,QAAQ,EAAE,QAAQ,EAAE,IAAI,EAAE,SAAS,EAAE,OAAO,CAAC,CAAC;IACvE,CAAC;IAED;;OAEG;IACH,KAAK,CAAC,KAAK,CACT,QAAkB,EAClB,IAAY,EACZ,IAAc,EACd,OAAwB;QAExB,OAAO,IAAI,CAAC,OAAO,CAAI,QAAQ,EAAE,OAAO,EAAE,IAAI,EAAE,IAAI,EAAE,OAAO,CAAC,CAAC;IACjE,CAAC;IAED;;;;;;;;;OASG;IACH,KAAK,CAAC,QAAQ,CACZ,MAAc,EACd,GAAW,EACX,IAAc,EACd,OAAwB;QAExB,MAAM,EAAE,QAAQ,EAAE,GAAG,IAAI,GAAG,CAAC,GAAG,CAAC,CAAC;QAClC,MAAM,SAAS,GAAG,aAAa,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;QAC/C,IAAI,CAAC,SAAS,IAAI,IAAI,CAAC,YAAY,EAAE,CAAC;YACpC,OAAO,CAAC,IAAI,CACV,0BAA0B,QAAQ,uCAAuC;gBACvE,0EAA0E;gBAC1E,YAAY,CACf,CAAC;QACJ,CAAC;QACD,MAAM,YAAY,GAA2B;YAC3C,GAAG,OAAO;YACV,OAAO,EAAE,CAAC,SAAS;SACpB,CAAC;QACF,OAAO,IAAI,CAAC,UAAU,CAAI,MAAM,EAAE,GAAG,EAAE,IAAI,EAAE,YAAY,CAAC,CAAC;IAC7D,CAAC;IAED;;;OAGG;IACH,KAAK,CAAC,UAAU,CAAc,IAAmB,EAAE,OAAwB;QACzE,MAAM,GAAG,GAAG,OAAO,IAAI,KAAK,QAAQ,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC;QACvD,OAAO,IAAI,CAAC,QAAQ,CAAI,KAAK,EAAE,GAAG,EAAE,SAAS,EAAE,OAAO,CAAC,CAAC;IAC1D,CAAC;IAED;;;;OAIG;IACH,KAAK,CAAC,CAAC,QAAQ,CACb,QAAkB,EAClB,IAAY,EACZ,OAAwB;QAExB,iEAAiE;QACjE,IAAI,GAAG,GAAuB,IAAI,CAAC,OAAO;YACxC,CAAC,CAAC,MAAM,IAAI,CAAC,iBAAiB,CAAC,QAAQ,EAAE,IAAI,CAAC;YAC9C,CAAC,CAAC,iBAAiB,CAAC,QAAQ,EAAE,IAAI,EAAE,IAAI,CAAC,WAAW,CAAC,CAAC;QACxD,IAAI,WAAW,GAAG,IAAI,CAAC;QAEvB,OAAO,GAAG,EAAE,CAAC;YACX,qEAAqE;YACrE,sEAAsE;YACtE,kDAAkD;YAClD,MAAM,QAAQ,GAAyB,WAAW;gBAChD,CAAC,CAAC,MAAM,IAAI,CAAC,UAAU,CAAuB,KAAK,EAAE,GAAG,EAAE,SAAS,EAAE,OAAO,CAAC;gBAC7E,CAAC,CAAC,MAAM,IAAI,CAAC,QAAQ,CAAuB,KAAK,EAAE,GAAG,EAAE,SAAS,EAAE,OAAO,CAAC,CAAC;YAE9E,IAAI,QAAQ,CAAC,MAAM,IAAI,QAAQ,CAAC,MAAM,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;gBAClD,MAAM,QAAQ,CAAC,MAAM,CAAC;YACxB,CAAC;YAED,8DAA8D;YAC9D,MAAM,YAAY,GAAqB,QAAQ,CAAC,KAAK,EAAE,IAAI,CACzD,CAAC,CAAO,EAAE,EAAE,CAAC,CAAC,CAAC,GAAG,KAAK,UAAU,CAClC,CAAC;YACF,GAAG,GAAG,YAAY,EAAE,GAAG,CAAC;YACxB,WAAW,GAAG,KAAK,CAAC;QACtB,CAAC;IACH,CAAC;IAED;;OAEG;IACH,KAAK,CAAC,MAAM,CAAI,QAAkB,EAAE,IAAY,EAAE,OAAwB;QACxE,MAAM,KAAK,GAAQ,EAAE,CAAC;QACtB,IAAI,KAAK,EAAE,MAAM,IAAI,IAAI,IAAI,CAAC,QAAQ,CAAI,QAAQ,EAAE,IAAI,EAAE,OAAO,CAAC,EAAE,CAAC;YACnE,KAAK,CAAC,IAAI,CAAC,GAAG,IAAI,CAAC,CAAC;QACtB,CAAC;QACD,OAAO,KAAK,CAAC;IACf,CAAC;IAEO,KAAK,CAAC,OAAO,CACnB,QAAkB,EAClB,MAAc,EACd,IAAY,EACZ,IAAc,EACd,OAAwB;QAExB,MAAM,GAAG,GAAG,IAAI,CAAC,OAAO;YACtB,CAAC,CAAC,MAAM,IAAI,CAAC,iBAAiB,CAAC,QAAQ,EAAE,IAAI,CAAC;YAC9C,CAAC,CAAC,iBAAiB,CAAC,QAAQ,EAAE,IAAI,EAAE,IAAI,CAAC,WAAW,CAAC,CAAC;QACxD,OAAO,IAAI,CAAC,UAAU,CAAI,MAAM,EAAE,GAAG,EAAE,IAAI,EAAE,OAAO,CAAC,CAAC;IACxD,CAAC;IAEO,KAAK,CAAC,UAAU,CACtB,MAAc,EACd,GAAW,EACX,IAAc,EACd,OAAwB;QAExB,MAAM,WAAW,GAAG,IAAI,CAAC,WAAW,CAAC,UAAU,GAAG,CAAC,CAAC,CAAC,yBAAyB;QAC9E,IAAI,SAA4B,CAAC;QAEjC,KAAK,IAAI,OAAO,GAAG,CAAC,EAAE,OAAO,GAAG,WAAW,EAAE,OAAO,EAAE,EAAE,CAAC;YACvD,MAAM,OAAO,GAAG,OAAO,EAAE,OAAO,IAAI,IAAI,CAAC,OAAO,CAAC;YACjD,MAAM,UAAU,GAAG,IAAI,eAAe,EAAE,CAAC;YACzC,MAAM,SAAS,GAAG,UAAU,CAAC,GAAG,EAAE,CAAC,UAAU,CAAC,KAAK,EAAE,EAAE,OAAO,CAAC,CAAC;YAEhE,IAAI,CAAC;gBACH,gEAAgE;gBAChE,kEAAkE;gBAClE,kEAAkE;gBAClE,mEAAmE;gBACnE,0BAA0B;gBAC1B,MAAM,WAAW,GAAG,OAAO,EAAE,OAAO,IAAI,EAAE,CAAC;gBAC3C,MAAM,OAAO,GAA2B;oBACtC,GAAG,IAAI,CAAC,cAAc;iBACvB,CAAC;gBACF,IACE,CAAE,OAA8C,EAAE,OAAO;oBACzD,WAAW,CAAC,aAAa,KAAK,SAAS,EACvC,CAAC;oBACD,OAAO,CAAC,aAAa,GAAG,UAAU,IAAI,CAAC,WAAW,EAAE,CAAC;gBACvD,CAAC;gBACD,mEAAmE;gBACnE,gDAAgD;gBAChD,MAAM,CAAC,MAAM,CAAC,OAAO,EAAE,WAAW,CAAC,CAAC;gBACpC,MAAM,QAAQ,GAAG,MAAM,IAAI,CAAC,OAAO,CAAC,GAAG,EAAE;oBACvC,MAAM;oBACN,OAAO;oBACP,IAAI,EAAE,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,SAAS;oBAC7C,MAAM,EAAE,OAAO,EAAE,MAAM,IAAI,UAAU,CAAC,MAAM;iBAC7C,CAAC,CAAC;gBAEH,YAAY,CAAC,SAAS,CAAC,CAAC;gBAExB,IAAI,CAAC,QAAQ,CAAC,EAAE,EAAE,CAAC;oBACjB,2CAA2C;oBAC3C,IAAI,IAAI,CAAC,WAAW,CAAC,QAAQ,CAAC,MAAM,CAAC,IAAI,OAAO,GAAG,WAAW,GAAG,CAAC,EAAE,CAAC;wBACnE,sCAAsC;wBACtC,MAAM,UAAU,GACd,QAAQ,CAAC,MAAM,KAAK,GAAG;4BACrB,CAAC,CAAC,MAAM,CAAC,QAAQ,CAAC,QAAQ,CAAC,OAAO,CAAC,GAAG,CAAC,aAAa,CAAC,IAAI,EAAE,EAAE,EAAE,CAAC;4BAChE,CAAC,CAAC,SAAS,CAAC;wBAEhB,MAAM,KAAK,GAAG,IAAI,CAAC,mBAAmB,CACpC,OAAO,EACP,MAAM,CAAC,KAAK,CAAC,UAAoB,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,UAAU,CAC5D,CAAC;wBACF,MAAM,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;wBACxB,SAAS;oBACX,CAAC;oBAED,oDAAoD;oBACpD,MAAM,IAAI,CAAC,WAAW,CAAC,QAAQ,CAAC,CAAC;gBACnC,CAAC;gBAED,yBAAyB;gBACzB,MAAM,aAAa,GAAG,QAAQ,CAAC,OAAO,CAAC,GAAG,CAAC,gBAAgB,CAAC,CAAC;gBAC7D,IAAI,aAAa,KAAK,GAAG,IAAI,QAAQ,CAAC,MAAM,KAAK,GAAG,EAAE,CAAC;oBACrD,OAAO,SAAc,CAAC;gBACxB,CAAC;gBAED,MAAM,WAAW,GAAG,QAAQ,CAAC,OAAO,CAAC,GAAG,CAAC,cAAc,CAAC,CAAC;gBACzD,IACE,WAAW,EAAE,QAAQ,CAAC,kBAAkB,CAAC;oBACzC,WAAW,EAAE,QAAQ,CAAC,uBAAuB,CAAC,EAC9C,CAAC;oBACD,OAAO,CAAC,MAAM,QAAQ,CAAC,IAAI,EAAE,CAAM,CAAC;gBACtC,CAAC;gBAED,OAAO,CAAC,MAAM,QAAQ,CAAC,IAAI,EAAE,CAAiB,CAAC;YACjD,CAAC;YAAC,OAAO,KAAK,EAAE,CAAC;gBACf,YAAY,CAAC,SAAS,CAAC,CAAC;gBAExB,2DAA2D;gBAC3D,gDAAgD;gBAChD,IAAI,KAAK,YAAY,UAAU,EAAE,CAAC;oBAChC,+BAA+B;oBAC/B,IAAI,KAAK,CAAC,MAAM,KAAK,CAAC,IAAI,KAAK,CAAC,UAAU,KAAK,SAAS,EAAE,CAAC;wBACzD,IAAI,OAAO,GAAG,WAAW,GAAG,CAAC,EAAE,CAAC;4BAC9B,MAAM,KAAK,GAAG,IAAI,CAAC,mBAAmB,CAAC,OAAO,CAAC,CAAC;4BAChD,MAAM,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;4BACxB,SAAS,GAAG,KAAK,CAAC;4BAClB,SAAS;wBACX,CAAC;oBACH,CAAC;oBACD,MAAM,KAAK,CAAC;gBACd,CAAC;gBAED,yBAAyB;gBACzB,IAAI,KAAK,YAAY,KAAK,IAAI,KAAK,CAAC,IAAI,KAAK,YAAY,EAAE,CAAC;oBAC1D,MAAM,YAAY,GAAG,IAAI,UAAU,CAAC,iBAAiB,EAAE,CAAC,EAAE,SAAS,CAAC,CAAC;oBACrE,IAAI,OAAO,GAAG,WAAW,GAAG,CAAC,EAAE,CAAC;wBAC9B,MAAM,KAAK,GAAG,IAAI,CAAC,mBAAmB,CAAC,OAAO,CAAC,CAAC;wBAChD,MAAM,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;wBACxB,SAAS,GAAG,YAAY,CAAC;wBACzB,SAAS;oBACX,CAAC;oBACD,MAAM,YAAY,CAAC;gBACrB,CAAC;gBAED,+BAA+B;gBAC/B,IAAI,IAAI,CAAC,cAAc,CAAC,KAAK,CAAC,IAAI,OAAO,GAAG,WAAW,GAAG,CAAC,EAAE,CAAC;oBAC5D,MAAM,KAAK,GAAG,IAAI,CAAC,mBAAmB,CAAC,OAAO,CAAC,CAAC;oBAChD,MAAM,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;oBACxB,SAAS,GAAG,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,IAAI,KAAK,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC;oBACtE,SAAS;gBACX,CAAC;gBAED,MAAM,KAAK,CAAC;YACd,CAAC;QACH,CAAC;QAED,0CAA0C;QAC1C,MAAM,SAAS,IAAI,IAAI,UAAU,CAAC,8BAA8B,EAAE,CAAC,EAAE,gBAAgB,CAAC,CAAC;IACzF,CAAC;IAED;;OAEG;IACH,cAAc;QACZ,IAAI,CAAC,SAAS,CAAC,KAAK,EAAE,CAAC;IACzB,CAAC;IAED;;;;;;OAMG;IACH,KAAK,CAAC,aAAa,CAAC,QAAkB,EAAE,QAAkB,CAAC,gBAAgB,CAAC;QAC1E,KAAK,MAAM,IAAI,IAAI,KAAK,EAAE,CAAC;YACzB,IAAI,CAAC;gBACH,MAAM,GAAG,GAAG,iBAAiB,CAAC,QAAQ,EAAE,IAAI,EAAE,IAAI,CAAC,WAAW,CAAC,CAAC;gBAChE,MAAM,QAAQ,GAAG,MAAM,IAAI,CAAC,UAAU,CAAqB,KAAK,EAAE,GAAG,CAAC,CAAC;gBACvE,IAAI,QAAQ,EAAE,KAAK,EAAE,CAAC;oBACpB,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,IAAI,EAAE,QAAQ,CAAC,KAAK,CAAC,CAAC;gBAC3C,CAAC;YACH,CAAC;YAAC,MAAM,CAAC;gBACP,qCAAqC;YACvC,CAAC;QACH,CAAC;IACH,CAAC;IAED;;;;;OAKG;IACK,mBAAmB,CACzB,YAAoB;QAEpB,MAAM,gBAAgB,GAAG,YAAY,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC;QAEjE,KAAK,MAAM,CAAC,OAAO,EAAE,KAAK,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,WAAW,CAAC,EAAE,CAAC;YAC3D,MAAM,eAAe,GAAG,OAAO,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC;YAE3D,IAAI,gBAAgB,CAAC,MAAM,KAAK,eAAe,CAAC,MAAM;gBAAE,SAAS;YAEjE,IAAI,OAAO,GAAG,IAAI,CAAC;YACnB,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,eAAe,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE,CAAC;gBAChD,IAAI,eAAe,CAAC,CAAC,CAAC,CAAC,UAAU,CAAC,GAAG,CAAC;oBAAE,SAAS,CAAC,WAAW;gBAC7D,IAAI,eAAe,CAAC,CAAC,CAAC,KAAK,gBAAgB,CAAC,CAAC,CAAC,EAAE,CAAC;oBAC/C,OAAO,GAAG,KAAK,CAAC;oBAChB,MAAM;gBACR,CAAC;YACH,CAAC;YAED,IAAI,OAAO,EAAE,CAAC;gBACZ,+DAA+D;gBAC/D,MAAM,cAAc,GAAG,KAAK,CAAC,UAAU,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC;gBACnE,MAAM,mBAAmB,GAAG,cAAc,CAAC,GAAG,CAAC,CAAC,GAAG,EAAE,CAAC,EAAE,EAAE,CACxD,GAAG,CAAC,UAAU,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,gBAAgB,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,CAChD,CAAC;gBACF,MAAM,kBAAkB,GAAG,IAAI,mBAAmB,CAAC,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC;gBAE/D,iEAAiE;gBACjE,kEAAkE;gBAClE,oDAAoD;gBACpD,MAAM,mBAAmB,GAAG,KAAiD,CAAC;gBAC9E,OAAO;oBACL,kBAAkB;oBAClB,GAAG,EAAE,KAAK,CAAC,GAAG;oBACd,UAAU,EAAE,mBAAmB,CAAC,UAAU;iBAC3C,CAAC;YACJ,CAAC;QACH,CAAC;QAED,OAAO,IAAI,CAAC;IACd,CAAC;IAED;;;;;;;;;OASG;IACK,KAAK,CAAC,iBAAiB,CAAC,QAAkB,EAAE,IAAY;QAC9D,kDAAkD;QAClD,MAAM,CAAC,QAAQ,EAAE,WAAW,CAAC,GAAG,IAAI,CAAC,KAAK,CAAC,GAAG,EAAE,CAAC,CAAC,CAAC;QACnD,MAAM,KAAK,GAAG,IAAI,CAAC,mBAAmB,CAAC,QAAQ,CAAC,CAAC;QAEjD,IAAI,CAAC,KAAK,EAAE,CAAC;YACX,yDAAyD;YACzD,OAAO,iBAAiB,CAAC,QAAQ,EAAE,IAAI,EAAE,IAAI,CAAC,WAAW,CAAC,CAAC;QAC7D,CAAC;QAED,MAAM,EAAE,kBAAkB,EAAE,GAAG,EAAE,UAAU,EAAE,GAAG,KAAK,CAAC;QACtD,wEAAwE;QACxE,0EAA0E;QAC1E,yDAAyD;QACzD,MAAM,mBAAmB,GAAa,UAAU,IAAI,QAAQ,CAAC;QAE7D,cAAc;QACd,IAAI,aAAa,GAAG,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC,kBAAkB,EAAE,GAAG,CAAC,CAAC;QAEpE,IAAI,CAAC,aAAa,EAAE,CAAC;YACnB,8DAA8D;YAC9D,IAAI,CAAC;gBACH,MAAM,SAAS,GAAG,iBAAiB,CACjC,mBAAmB,EACnB,kBAAkB,EAClB,IAAI,CAAC,WAAW,CACjB,CAAC;gBACF,MAAM,cAAc,GAAG,MAAM,IAAI,CAAC,UAAU,CAAqB,KAAK,EAAE,SAAS,CAAC,CAAC;gBAEnF,IAAI,cAAc,EAAE,KAAK,EAAE,CAAC;oBAC1B,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,kBAAkB,EAAE,cAAc,CAAC,KAAK,CAAC,CAAC;oBAC7D,aAAa,GAAG,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC,kBAAkB,EAAE,GAAG,CAAC,CAAC;gBAClE,CAAC;YACH,CAAC;YAAC,OAAO,KAAK,EAAE,CAAC;gBACf,MAAM,IAAI,YAAY,CACpB,+DAA+D,kBAAkB,GAAG,EACpF,IAAI,EACJ,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,SAAS,CAC3C,CAAC;YACJ,CAAC;QACH,CAAC;QAED,IAAI,CAAC,aAAa,EAAE,CAAC;YACnB,MAAM,WAAW,GAAG,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,kBAAkB,CAAC,CAAC;YAC3D,MAAM,IAAI,YAAY,CACpB,sCAAsC,kBAAkB,2BAA2B,GAAG,IAAI,WAAW,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,6BAA6B,EAAE,EAC5I,IAAI,CACL,CAAC;QACJ,CAAC;QAED,wBAAwB;QACxB,MAAM,WAAW,GAAG,WAAW,CAAC,CAAC,CAAC,GAAG,aAAa,IAAI,WAAW,EAAE,CAAC,CAAC,CAAC,aAAa,CAAC;QAEpF,IAAI,IAAI,CAAC,YAAY,EAAE,CAAC;YACtB,OAAO,CAAC,GAAG,CACT,aAAa,IAAI,cAAc,kBAAkB,UAAU,GAAG,MAAM,WAAW,EAAE,CAClF,CAAC;QACJ,CAAC;QAED,OAAO,WAAW,CAAC;IACrB,CAAC;IAED;;OAEG;IACK,WAAW,CAAC,MAAc;QAChC,OAAO,sBAAsB,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC;IAC5C,CAAC;IAED;;OAEG;IACK,cAAc,CAAC,KAAc;QACnC,OAAO,CACL,KAAK,YAAY,SAAS,IAAI,CAAC,KAAK,YAAY,KAAK,IAAI,KAAK,CAAC,OAAO,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC,CAC1F,CAAC;IACJ,CAAC;IAED;;OAEG;IACK,mBAAmB,CAAC,OAAe,EAAE,UAAmB;QAC9D,oEAAoE;QACpE,IAAI,UAAU,KAAK,SAAS,IAAI,UAAU,GAAG,CAAC,EAAE,CAAC;YAC/C,OAAO,IAAI,CAAC,GAAG,CAAC,UAAU,GAAG,IAAI,EAAE,IAAI,CAAC,WAAW,CAAC,QAAQ,CAAC,CAAC;QAChE,CAAC;QAED,6CAA6C;QAC7C,MAAM,gBAAgB,GAAG,IAAI,CAAC,WAAW,CAAC,SAAS,GAAG,CAAC,IAAI,OAAO,CAAC;QACnE,MAAM,WAAW,GAAG,IAAI,CAAC,GAAG,CAAC,gBAAgB,EAAE,IAAI,CAAC,WAAW,CAAC,QAAQ,CAAC,CAAC;QAE1E,2DAA2D;QAC3D,2DAA2D;QAC3D,OAAO,IAAI,CAAC,MAAM,EAAE,GAAG,WAAW,CAAC;IACrC,CAAC;IAED;;OAEG;IACK,KAAK,CAAC,EAAU;QACtB,OAAO,IAAI,OAAO,CAAC,CAAC,OAAO,EAAE,EAAE,CAAC,UAAU,CAAC,OAAO,EAAE,EAAE,CAAC,CAAC,CAAC;IAC3D,CAAC;IAEO,KAAK,CAAC,WAAW,CAAC,QAAkB;QAC1C,IAAI,IAAa,CAAC;QAClB,IAAI,CAAC;YACH,IAAI,GAAG,MAAM,QAAQ,CAAC,IAAI,EAAE,CAAC;QAC/B,CAAC;QAAC,MAAM,CAAC;YACP,IAAI,GAAG,MAAM,QAAQ,CAAC,IAAI,EAAE,CAAC,KAAK,CAAC,GAAG,EAAE,CAAC,SAAS,CAAC,CAAC;QACtD,CAAC;QAED,MAAM,OAAO,GAAG,IAAI,CAAC,mBAAmB,CAAC,IAAI,CAAC,IAAI,QAAQ,CAAC,UAAU,CAAC;QAEtE,IAAI,QAAQ,CAAC,MAAM,KAAK,GAAG,EAAE,CAAC;YAC5B,MAAM,UAAU,GAAG,MAAM,CAAC,QAAQ,CAAC,QAAQ,CAAC,OAAO,CAAC,GAAG,CAAC,aAAa,CAAC,IAAI,EAAE,EAAE,EAAE,CAAC,CAAC;YAClF,MAAM,IAAI,cAAc,CACtB,OAAO,EACP,QAAQ,CAAC,MAAM,EACf,QAAQ,CAAC,UAAU,EACnB,MAAM,CAAC,KAAK,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,UAAU,EACjD,IAAI,CACL,CAAC;QACJ,CAAC;QAED,IAAI,QAAQ,CAAC,MAAM,KAAK,GAAG,IAAI,QAAQ,CAAC,MAAM,KAAK,GAAG,EAAE,CAAC;YACvD,MAAM,IAAI,SAAS,CAAC,OAAO,EAAE,QAAQ,CAAC,MAAM,EAAE,QAAQ,CAAC,UAAU,EAAE,IAAI,CAAC,CAAC;QAC3E,CAAC;QAED,MAAM,IAAI,UAAU,CAAC,OAAO,EAAE,QAAQ,CAAC,MAAM,EAAE,QAAQ,CAAC,UAAU,EAAE,IAAI,CAAC,CAAC;IAC5E,CAAC;IAEO,mBAAmB,CAAC,IAAa;QACvC,IAAI,CAAC,IAAI,IAAI,OAAO,IAAI,KAAK,QAAQ;YAAE,OAAO,SAAS,CAAC;QAExD,MAAM,GAAG,GAAG,IAA+B,CAAC;QAE5C,kCAAkC;QAClC,IAAI,OAAO,GAAG,CAAC,OAAO,KAAK,QAAQ;YAAE,OAAO,GAAG,CAAC,OAAO,CAAC;QACxD,IAAI,OAAO,GAAG,CAAC,KAAK,KAAK,QAAQ;YAAE,OAAO,GAAG,CAAC,KAAK,CAAC;QACpD,IAAI,OAAO,GAAG,CAAC,iBAAiB,KAAK,QAAQ;YAAE,OAAO,GAAG,CAAC,iBAAiB,CAAC;QAE5E,0BAA0B;QAC1B,IAAI,KAAK,CAAC,OAAO,CAAC,GAAG,CAAC,MAAM,CAAC,IAAI,GAAG,CAAC,MAAM,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YACvD,MAAM,KAAK,GAAG,GAAG,CAAC,MAAM,CAAC,CAAC,CAA4B,CAAC;YACvD,IAAI,OAAO,KAAK,CAAC,OAAO,KAAK,QAAQ;gBAAE,OAAO,KAAK,CAAC,OAAO,CAAC;QAC9D,CAAC;QAED,OAAO,SAAS,CAAC;IACnB,CAAC;CACF;AAED;;GAEG;AACH,MAAM,UAAU,YAAY,CAAC,MAAyB;IACpD,OAAO,IAAI,WAAW,CAAC,MAAM,CAAC,CAAC;AACjC,CAAC"}
package/dist/deere.d.ts CHANGED
@@ -6,6 +6,7 @@
6
6
  */
7
7
  import { AempApi, AssetsApi, BoundariesApi, ClientsApi, ConnectionManagementApi, CropTypesApi, EquipmentApi, EquipmentMeasurementApi, FarmsApi, FieldOperationsApi, FieldsApi, FilesApi, FlagsApi, GuidanceLinesApi, HarvestIdApi, MachineAlertsApi, MachineDeviceStateReportsApi, MachineEngineHoursApi, MachineHoursOfOperationApi, MachineLocationsApi, MapLayersApi, NotificationsApi, OperatorsApi, OrganizationsApi, PartnershipsApi, ProductsApi, UsersApi, WebhookApi } from './api/index.js';
8
8
  import { DeereClient, type DeereClientConfig } from './client.js';
9
+ import { SafeFacades } from './safe/index.js';
9
10
  /**
10
11
  * John Deere SDK
11
12
  *
@@ -23,6 +24,14 @@ import { DeereClient, type DeereClientConfig } from './client.js';
23
24
  * const orgs = await deere.organizations.listAll();
24
25
  * const farms = await deere.farms.listAll(orgs[0].id);
25
26
  * const fields = await deere.fields.listAll(orgs[0].id);
27
+ *
28
+ * // Safe facades force query params that JD's API requires for a complete
29
+ * // response but the raw SDK leaves optional. See src/safe/ and
30
+ * // scripts/embed-contracts.yaml for the contract invariants they enforce.
31
+ * const ops = await deere.safe.fieldOperations.listAllWithMeasurements(
32
+ * orgs[0].id,
33
+ * fields[0].id
34
+ * );
26
35
  * ```
27
36
  */
28
37
  export declare class Deere {
@@ -84,6 +93,11 @@ export declare class Deere {
84
93
  readonly users: UsersApi;
85
94
  /** webhook API */
86
95
  readonly webhook: WebhookApi;
96
+ /**
97
+ * Safe facades that force query params the raw API leaves optional (e.g.
98
+ * `embed=measurementTypes`). See src/safe/ and scripts/embed-contracts.yaml.
99
+ */
100
+ readonly safe: SafeFacades;
87
101
  constructor(config: DeereClientConfig);
88
102
  }
89
103
  /**
@@ -1 +1 @@
1
- {"version":3,"file":"deere.d.ts","sourceRoot":"","sources":["../src/deere.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"deere.d.ts","sourceRoot":"","sources":["../src/deere.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,EACL,OAAO,EACP,SAAS,EACT,aAAa,EACb,UAAU,EACV,uBAAuB,EACvB,YAAY,EACZ,YAAY,EACZ,uBAAuB,EACvB,QAAQ,EACR,kBAAkB,EAClB,SAAS,EACT,QAAQ,EACR,QAAQ,EACR,gBAAgB,EAChB,YAAY,EACZ,gBAAgB,EAChB,4BAA4B,EAC5B,qBAAqB,EACrB,0BAA0B,EAC1B,mBAAmB,EACnB,YAAY,EACZ,gBAAgB,EAChB,YAAY,EACZ,gBAAgB,EAChB,eAAe,EACf,WAAW,EACX,QAAQ,EACR,UAAU,EACX,MAAM,gBAAgB,CAAC;AACxB,OAAO,EAAE,WAAW,EAAE,KAAK,iBAAiB,EAAE,MAAM,aAAa,CAAC;AAClE,OAAO,EAAE,WAAW,EAAE,MAAM,iBAAiB,CAAC;AAE9C;;;;;;;;;;;;;;;;;;;;;;;;;;GA0BG;AACH,qBAAa,KAAK;IAChB,0CAA0C;IAC1C,QAAQ,CAAC,MAAM,EAAE,WAAW,CAAC;IAE7B,eAAe;IACf,QAAQ,CAAC,IAAI,EAAE,OAAO,CAAC;IAEvB,iBAAiB;IACjB,QAAQ,CAAC,MAAM,EAAE,SAAS,CAAC;IAE3B,qBAAqB;IACrB,QAAQ,CAAC,UAAU,EAAE,aAAa,CAAC;IAEnC,kBAAkB;IAClB,QAAQ,CAAC,OAAO,EAAE,UAAU,CAAC;IAE7B,gCAAgC;IAChC,QAAQ,CAAC,oBAAoB,EAAE,uBAAuB,CAAC;IAEvD,qBAAqB;IACrB,QAAQ,CAAC,SAAS,EAAE,YAAY,CAAC;IAEjC,gCAAgC;IAChC,QAAQ,CAAC,oBAAoB,EAAE,uBAAuB,CAAC;IAEvD,oBAAoB;IACpB,QAAQ,CAAC,SAAS,EAAE,YAAY,CAAC;IAEjC,gBAAgB;IAChB,QAAQ,CAAC,KAAK,EAAE,QAAQ,CAAC;IAEzB,+BAA+B;IAC/B,QAAQ,CAAC,eAAe,EAAE,kBAAkB,CAAC;IAE7C,iBAAiB;IACjB,QAAQ,CAAC,MAAM,EAAE,SAAS,CAAC;IAE3B,gBAAgB;IAChB,QAAQ,CAAC,KAAK,EAAE,QAAQ,CAAC;IAEzB,gBAAgB;IAChB,QAAQ,CAAC,KAAK,EAAE,QAAQ,CAAC;IAEzB,yBAAyB;IACzB,QAAQ,CAAC,aAAa,EAAE,gBAAgB,CAAC;IAEzC,qBAAqB;IACrB,QAAQ,CAAC,SAAS,EAAE,YAAY,CAAC;IAEjC,yBAAyB;IACzB,QAAQ,CAAC,aAAa,EAAE,gBAAgB,CAAC;IAEzC,uCAAuC;IACvC,QAAQ,CAAC,yBAAyB,EAAE,4BAA4B,CAAC;IAEjE,+BAA+B;IAC/B,QAAQ,CAAC,kBAAkB,EAAE,qBAAqB,CAAC;IAEnD,qCAAqC;IACrC,QAAQ,CAAC,uBAAuB,EAAE,0BAA0B,CAAC;IAE7D,4BAA4B;IAC5B,QAAQ,CAAC,gBAAgB,EAAE,mBAAmB,CAAC;IAE/C,qBAAqB;IACrB,QAAQ,CAAC,SAAS,EAAE,YAAY,CAAC;IAEjC,wBAAwB;IACxB,QAAQ,CAAC,aAAa,EAAE,gBAAgB,CAAC;IAEzC,oBAAoB;IACpB,QAAQ,CAAC,SAAS,EAAE,YAAY,CAAC;IAEjC,wBAAwB;IACxB,QAAQ,CAAC,aAAa,EAAE,gBAAgB,CAAC;IAEzC,uBAAuB;IACvB,QAAQ,CAAC,YAAY,EAAE,eAAe,CAAC;IAEvC,mBAAmB;IACnB,QAAQ,CAAC,QAAQ,EAAE,WAAW,CAAC;IAE/B,gBAAgB;IAChB,QAAQ,CAAC,KAAK,EAAE,QAAQ,CAAC;IAEzB,kBAAkB;IAClB,QAAQ,CAAC,OAAO,EAAE,UAAU,CAAC;IAE7B;;;OAGG;IACH,QAAQ,CAAC,IAAI,EAAE,WAAW,CAAC;gBAEf,MAAM,EAAE,iBAAiB;CAqCtC;AAED;;GAEG;AACH,wBAAgB,WAAW,CAAC,MAAM,EAAE,iBAAiB,GAAG,KAAK,CAE5D"}
package/dist/deere.js CHANGED
@@ -6,6 +6,7 @@
6
6
  */
7
7
  import { AempApi, AssetsApi, BoundariesApi, ClientsApi, ConnectionManagementApi, CropTypesApi, EquipmentApi, EquipmentMeasurementApi, FarmsApi, FieldOperationsApi, FieldsApi, FilesApi, FlagsApi, GuidanceLinesApi, HarvestIdApi, MachineAlertsApi, MachineDeviceStateReportsApi, MachineEngineHoursApi, MachineHoursOfOperationApi, MachineLocationsApi, MapLayersApi, NotificationsApi, OperatorsApi, OrganizationsApi, PartnershipsApi, ProductsApi, UsersApi, WebhookApi, } from './api/index.js';
8
8
  import { DeereClient } from './client.js';
9
+ import { SafeFacades } from './safe/index.js';
9
10
  /**
10
11
  * John Deere SDK
11
12
  *
@@ -23,6 +24,14 @@ import { DeereClient } from './client.js';
23
24
  * const orgs = await deere.organizations.listAll();
24
25
  * const farms = await deere.farms.listAll(orgs[0].id);
25
26
  * const fields = await deere.fields.listAll(orgs[0].id);
27
+ *
28
+ * // Safe facades force query params that JD's API requires for a complete
29
+ * // response but the raw SDK leaves optional. See src/safe/ and
30
+ * // scripts/embed-contracts.yaml for the contract invariants they enforce.
31
+ * const ops = await deere.safe.fieldOperations.listAllWithMeasurements(
32
+ * orgs[0].id,
33
+ * fields[0].id
34
+ * );
26
35
  * ```
27
36
  */
28
37
  export class Deere {
@@ -84,6 +93,11 @@ export class Deere {
84
93
  users;
85
94
  /** webhook API */
86
95
  webhook;
96
+ /**
97
+ * Safe facades that force query params the raw API leaves optional (e.g.
98
+ * `embed=measurementTypes`). See src/safe/ and scripts/embed-contracts.yaml.
99
+ */
100
+ safe;
87
101
  constructor(config) {
88
102
  this.client = new DeereClient(config);
89
103
  this.aemp = new AempApi(this.client);
@@ -114,6 +128,12 @@ export class Deere {
114
128
  this.products = new ProductsApi(this.client);
115
129
  this.users = new UsersApi(this.client);
116
130
  this.webhook = new WebhookApi(this.client);
131
+ // DO NOT REORDER: SafeFacades reads generated API fields (e.g.
132
+ // `this.fieldOperations`), so it MUST run AFTER every API field has
133
+ // been initialized above. The runtime guard in SafeFacades' constructor
134
+ // fires loudly if this line ever moves ahead of the generated field
135
+ // inits. See scripts/generate-sdk.ts generateMainClass() for the source.
136
+ this.safe = new SafeFacades(this);
117
137
  }
118
138
  }
119
139
  /**
package/dist/deere.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"deere.js","sourceRoot":"","sources":["../src/deere.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"deere.js","sourceRoot":"","sources":["../src/deere.ts"],"names":[],"mappings":"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"}