deere-sdk 1.0.8 → 1.0.10
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.
- package/CHANGELOG.md +14 -0
- package/README.md +68 -0
- package/dist/client.d.ts +38 -0
- package/dist/client.d.ts.map +1 -1
- package/dist/client.js +142 -2
- package/dist/client.js.map +1 -1
- package/dist/hateoas-map.d.ts +16 -0
- package/dist/hateoas-map.d.ts.map +1 -0
- package/dist/hateoas-map.js +129 -0
- package/dist/hateoas-map.js.map +1 -0
- package/dist/index.d.ts +1 -1
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +1 -1
- package/dist/index.js.map +1 -1
- package/dist/types/generated/index.d.ts +1 -1
- package/dist/types/generated/index.js +1 -1
- package/package.json +2 -2
package/CHANGELOG.md
CHANGED
|
@@ -5,6 +5,20 @@ All notable changes to this project will be documented in this file.
|
|
|
5
5
|
The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/),
|
|
6
6
|
and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html).
|
|
7
7
|
|
|
8
|
+
## [1.0.10] - 2026-03-26
|
|
9
|
+
|
|
10
|
+
### Added
|
|
11
|
+
- **HATEOAS mode** — `hateoas: true` enables HAL link traversal for John Deere production certification
|
|
12
|
+
- Generated route map with 41 path-to-parent+rel entries from OpenAPI specs
|
|
13
|
+
- `HateoasError` class thrown on resolution failure (strict mode)
|
|
14
|
+
- `hateoasDebug` option for logging link resolution details
|
|
15
|
+
- `clearLinkCache()` and `warmLinkCache()` methods on `DeereClient`
|
|
16
|
+
|
|
17
|
+
## [1.0.9] - 2026-03-25
|
|
18
|
+
|
|
19
|
+
### Changed
|
|
20
|
+
- Synced with latest John Deere API specifications
|
|
21
|
+
|
|
8
22
|
## [1.0.8] - 2026-03-25
|
|
9
23
|
|
|
10
24
|
### Changed
|
package/README.md
CHANGED
|
@@ -472,6 +472,74 @@ for await (const items of client.paginate('/large/collection')) {
|
|
|
472
472
|
|
|
473
473
|
---
|
|
474
474
|
|
|
475
|
+
## HATEOAS Mode
|
|
476
|
+
|
|
477
|
+
John Deere requires applications to demonstrate [HATEOAS](https://en.wikipedia.org/wiki/HATEOAS) compliance before granting production API access. When enabled, the SDK automatically follows HAL links from parent resources instead of constructing URLs directly — producing the exact traffic pattern John Deere's certification requires.
|
|
478
|
+
|
|
479
|
+
```typescript
|
|
480
|
+
const deere = new Deere({
|
|
481
|
+
accessToken: 'your-token',
|
|
482
|
+
environment: 'sandbox',
|
|
483
|
+
hateoas: true, // Enable HATEOAS link traversal
|
|
484
|
+
hateoasDebug: true, // Optional: log resolution details
|
|
485
|
+
});
|
|
486
|
+
|
|
487
|
+
// Same API — HATEOAS resolution is transparent
|
|
488
|
+
const orgs = await deere.organizations.listAll();
|
|
489
|
+
const fields = await deere.fields.listAll(orgs[0].id);
|
|
490
|
+
```
|
|
491
|
+
|
|
492
|
+
When `hateoas: true`, the SDK fetches parent resources and follows their HAL links before accessing child resources. For example, `deere.fields.list('org-123')` first fetches `/organizations/org-123`, finds the `fields` link in its response, and uses that discovered URL. Link responses are cached per-session, so subsequent calls incur no extra latency.
|
|
493
|
+
|
|
494
|
+
### Certification Walkthrough
|
|
495
|
+
|
|
496
|
+
```typescript
|
|
497
|
+
import {Deere} from 'deere-sdk';
|
|
498
|
+
|
|
499
|
+
// 1. Create client with HATEOAS enabled
|
|
500
|
+
const deere = new Deere({
|
|
501
|
+
accessToken: 'your-oauth-token',
|
|
502
|
+
environment: 'sandbox',
|
|
503
|
+
hateoas: true,
|
|
504
|
+
hateoasDebug: true, // See link resolution in console
|
|
505
|
+
});
|
|
506
|
+
|
|
507
|
+
// 2. Warm the cache (optional — reduces cold-start latency)
|
|
508
|
+
await deere.client.warmLinkCache(['/organizations']);
|
|
509
|
+
|
|
510
|
+
// 3. Use the SDK normally — HATEOAS happens transparently
|
|
511
|
+
const orgs = await deere.organizations.listAll();
|
|
512
|
+
const org = await deere.organizations.get(orgs[0].id);
|
|
513
|
+
const fields = await deere.fields.listAll(org.id);
|
|
514
|
+
const boundaries = await deere.boundaries.listBoundaries(org.id, fields[0].id);
|
|
515
|
+
|
|
516
|
+
// Console output (with hateoasDebug: true):
|
|
517
|
+
// [HATEOAS] /organizations/org-123/fields → parent: /organizations/org-123, rel: fields → https://...
|
|
518
|
+
// [HATEOAS] /organizations/org-123/fields/f-456/boundaries → parent: /organizations/org-123/fields/f-456, rel: boundaries → https://...
|
|
519
|
+
|
|
520
|
+
// 4. After certification, disable HATEOAS for production speed
|
|
521
|
+
// hateoas: false (or omit — it's the default)
|
|
522
|
+
```
|
|
523
|
+
|
|
524
|
+
### Strict Mode
|
|
525
|
+
|
|
526
|
+
HATEOAS mode is strict: if link resolution fails (parent returns no matching link, parent fetch errors), a `HateoasError` is thrown immediately. This ensures certification compliance issues surface during development, not at John Deere's certification gate.
|
|
527
|
+
|
|
528
|
+
```typescript
|
|
529
|
+
import {HateoasError} from 'deere-sdk';
|
|
530
|
+
|
|
531
|
+
try {
|
|
532
|
+
await deere.fields.listAll('org-123');
|
|
533
|
+
} catch (error) {
|
|
534
|
+
if (error instanceof HateoasError) {
|
|
535
|
+
console.log(`Link resolution failed: ${error.message}`);
|
|
536
|
+
console.log(`Path: ${error.path}`);
|
|
537
|
+
}
|
|
538
|
+
}
|
|
539
|
+
```
|
|
540
|
+
|
|
541
|
+
---
|
|
542
|
+
|
|
475
543
|
## Error Handling
|
|
476
544
|
|
|
477
545
|
### Automatic Retries
|
package/dist/client.d.ts
CHANGED
|
@@ -20,6 +20,15 @@ export interface DeereClientConfig {
|
|
|
20
20
|
timeout?: number;
|
|
21
21
|
/** Maximum number of retry attempts for failed requests. Defaults to 3. Set to 0 to disable retries. */
|
|
22
22
|
maxRetries?: number;
|
|
23
|
+
/**
|
|
24
|
+
* Enable HATEOAS link traversal. When true, the client fetches parent resources
|
|
25
|
+
* and follows HAL links instead of constructing URLs directly.
|
|
26
|
+
* Required for John Deere production API certification.
|
|
27
|
+
* @default false
|
|
28
|
+
*/
|
|
29
|
+
hateoas?: boolean;
|
|
30
|
+
/** Log HATEOAS resolution details to console for debugging. @default false */
|
|
31
|
+
hateoasDebug?: boolean;
|
|
23
32
|
}
|
|
24
33
|
export interface RetryConfig {
|
|
25
34
|
/** Maximum number of retry attempts */
|
|
@@ -60,6 +69,11 @@ export declare class RateLimitError extends DeereError {
|
|
|
60
69
|
export declare class AuthError extends DeereError {
|
|
61
70
|
constructor(message: string, status: number, statusText: string, body?: unknown);
|
|
62
71
|
}
|
|
72
|
+
export declare class HateoasError extends Error {
|
|
73
|
+
readonly path: string;
|
|
74
|
+
readonly cause?: Error | undefined;
|
|
75
|
+
constructor(message: string, path: string, cause?: Error | undefined);
|
|
76
|
+
}
|
|
63
77
|
/**
|
|
64
78
|
* John Deere API Client
|
|
65
79
|
*
|
|
@@ -87,6 +101,9 @@ export declare class DeereClient {
|
|
|
87
101
|
private readonly defaultHeaders;
|
|
88
102
|
private readonly timeout;
|
|
89
103
|
private readonly retryConfig;
|
|
104
|
+
private readonly hateoas;
|
|
105
|
+
private readonly hateoasDebug;
|
|
106
|
+
private readonly linkCache;
|
|
90
107
|
constructor(config: DeereClientConfig);
|
|
91
108
|
/**
|
|
92
109
|
* Make a GET request to the John Deere API
|
|
@@ -122,6 +139,27 @@ export declare class DeereClient {
|
|
|
122
139
|
getAll<T>(path: string, options?: RequestOptions): Promise<T[]>;
|
|
123
140
|
private request;
|
|
124
141
|
private requestUrl;
|
|
142
|
+
/**
|
|
143
|
+
* Clear the HATEOAS link cache. Useful for long-lived clients or testing.
|
|
144
|
+
*/
|
|
145
|
+
clearLinkCache(): void;
|
|
146
|
+
/**
|
|
147
|
+
* Pre-fetch parent resources to warm the HATEOAS link cache.
|
|
148
|
+
* Reduces latency for subsequent HATEOAS-resolved requests.
|
|
149
|
+
* @param paths - Parent resource paths to pre-fetch (defaults to common roots)
|
|
150
|
+
*/
|
|
151
|
+
warmLinkCache(paths?: string[]): Promise<void>;
|
|
152
|
+
/**
|
|
153
|
+
* Match a concrete path against the HATEOAS route map.
|
|
154
|
+
* Returns the concrete parent path and rel name, or null if no match.
|
|
155
|
+
*/
|
|
156
|
+
private matchHateoasPattern;
|
|
157
|
+
/**
|
|
158
|
+
* Resolve a path via HATEOAS link traversal.
|
|
159
|
+
* Fetches the parent resource, finds the matching link rel, and returns the discovered URL.
|
|
160
|
+
* Throws HateoasError if resolution fails (strict mode).
|
|
161
|
+
*/
|
|
162
|
+
private resolveHateoasUrl;
|
|
125
163
|
/**
|
|
126
164
|
* Check if an error/status code is retryable
|
|
127
165
|
*/
|
package/dist/client.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"client.d.ts","sourceRoot":"","sources":["../src/client.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,MAAM,MAAM,WAAW,GAAG,YAAY,GAAG,SAAS,GAAG,SAAS,GAAG,MAAM,GAAG,IAAI,CAAC;AAE/E,MAAM,WAAW,iBAAiB;IAChC,yBAAyB;IACzB,WAAW,EAAE,MAAM,CAAC;IACpB,6CAA6C;IAC7C,WAAW,CAAC,EAAE,WAAW,CAAC;IAC1B,8CAA8C;IAC9C,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,kCAAkC;IAClC,KAAK,CAAC,EAAE,OAAO,KAAK,CAAC;IACrB,iDAAiD;IACjD,cAAc,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IACxC,iDAAiD;IACjD,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,wGAAwG;IACxG,UAAU,CAAC,EAAE,MAAM,CAAC;
|
|
1
|
+
{"version":3,"file":"client.d.ts","sourceRoot":"","sources":["../src/client.ts"],"names":[],"mappings":"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"}
|
package/dist/client.js
CHANGED
|
@@ -30,6 +30,16 @@ export class AuthError extends DeereError {
|
|
|
30
30
|
this.name = 'AuthError';
|
|
31
31
|
}
|
|
32
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
|
+
}
|
|
33
43
|
const ENVIRONMENT_URLS = {
|
|
34
44
|
production: 'https://api.deere.com/platform',
|
|
35
45
|
sandbox: 'https://sandboxapi.deere.com/platform',
|
|
@@ -40,6 +50,25 @@ const ENVIRONMENT_URLS = {
|
|
|
40
50
|
const DEERE_ACCEPT_HEADER = 'application/vnd.deere.axiom.v3+json';
|
|
41
51
|
/** HTTP status codes that are safe to retry */
|
|
42
52
|
const RETRYABLE_STATUS_CODES = new Set([429, 500, 502, 503, 504]);
|
|
53
|
+
import { HATEOAS_MAP } from './hateoas-map.js';
|
|
54
|
+
class LinkCache {
|
|
55
|
+
cache = new Map();
|
|
56
|
+
set(parentPath, links) {
|
|
57
|
+
this.cache.set(parentPath, links);
|
|
58
|
+
}
|
|
59
|
+
findRel(parentPath, rel) {
|
|
60
|
+
const links = this.cache.get(parentPath);
|
|
61
|
+
if (!links)
|
|
62
|
+
return undefined;
|
|
63
|
+
return links.find((l) => l.rel === rel)?.uri;
|
|
64
|
+
}
|
|
65
|
+
has(parentPath) {
|
|
66
|
+
return this.cache.has(parentPath);
|
|
67
|
+
}
|
|
68
|
+
clear() {
|
|
69
|
+
this.cache.clear();
|
|
70
|
+
}
|
|
71
|
+
}
|
|
43
72
|
/**
|
|
44
73
|
* John Deere API Client
|
|
45
74
|
*
|
|
@@ -67,11 +96,16 @@ export class DeereClient {
|
|
|
67
96
|
defaultHeaders;
|
|
68
97
|
timeout;
|
|
69
98
|
retryConfig;
|
|
99
|
+
hateoas;
|
|
100
|
+
hateoasDebug;
|
|
101
|
+
linkCache = new LinkCache();
|
|
70
102
|
constructor(config) {
|
|
71
103
|
this.accessToken = config.accessToken;
|
|
72
104
|
this.baseUrl = config.baseUrl ?? ENVIRONMENT_URLS[config.environment ?? 'sandbox'];
|
|
73
105
|
this.fetchFn = config.fetch ?? fetch;
|
|
74
106
|
this.timeout = config.timeout ?? 30000;
|
|
107
|
+
this.hateoas = config.hateoas ?? false;
|
|
108
|
+
this.hateoasDebug = config.hateoasDebug ?? false;
|
|
75
109
|
this.defaultHeaders = {
|
|
76
110
|
Accept: DEERE_ACCEPT_HEADER,
|
|
77
111
|
'Content-Type': DEERE_ACCEPT_HEADER,
|
|
@@ -126,7 +160,9 @@ export class DeereClient {
|
|
|
126
160
|
* Paginate through all results following nextPage links
|
|
127
161
|
*/
|
|
128
162
|
async *paginate(path, options) {
|
|
129
|
-
let url =
|
|
163
|
+
let url = this.hateoas
|
|
164
|
+
? await this.resolveHateoasUrl(path)
|
|
165
|
+
: `${this.baseUrl}${path}`;
|
|
130
166
|
while (url) {
|
|
131
167
|
const response = await this.requestUrl('GET', url, undefined, options);
|
|
132
168
|
if (response.values && response.values.length > 0) {
|
|
@@ -148,7 +184,16 @@ export class DeereClient {
|
|
|
148
184
|
return items;
|
|
149
185
|
}
|
|
150
186
|
async request(method, path, body, options) {
|
|
151
|
-
|
|
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
|
+
}
|
|
152
197
|
return this.requestUrl(method, url, body, options);
|
|
153
198
|
}
|
|
154
199
|
async requestUrl(method, url, body, options) {
|
|
@@ -236,6 +281,101 @@ export class DeereClient {
|
|
|
236
281
|
// Should not reach here, but just in case
|
|
237
282
|
throw lastError ?? new DeereError('Request failed after retries', 0, 'RetryExhausted');
|
|
238
283
|
}
|
|
284
|
+
/**
|
|
285
|
+
* Clear the HATEOAS link cache. Useful for long-lived clients or testing.
|
|
286
|
+
*/
|
|
287
|
+
clearLinkCache() {
|
|
288
|
+
this.linkCache.clear();
|
|
289
|
+
}
|
|
290
|
+
/**
|
|
291
|
+
* Pre-fetch parent resources to warm the HATEOAS link cache.
|
|
292
|
+
* Reduces latency for subsequent HATEOAS-resolved requests.
|
|
293
|
+
* @param paths - Parent resource paths to pre-fetch (defaults to common roots)
|
|
294
|
+
*/
|
|
295
|
+
async warmLinkCache(paths = ['/organizations']) {
|
|
296
|
+
for (const path of paths) {
|
|
297
|
+
try {
|
|
298
|
+
const url = `${this.baseUrl}${path}`;
|
|
299
|
+
const response = await this.requestUrl('GET', url);
|
|
300
|
+
if (response?.links) {
|
|
301
|
+
this.linkCache.set(path, response.links);
|
|
302
|
+
}
|
|
303
|
+
}
|
|
304
|
+
catch {
|
|
305
|
+
// Best-effort — skip paths that fail
|
|
306
|
+
}
|
|
307
|
+
}
|
|
308
|
+
}
|
|
309
|
+
/**
|
|
310
|
+
* Match a concrete path against the HATEOAS route map.
|
|
311
|
+
* Returns the concrete parent path and rel name, or null if no match.
|
|
312
|
+
*/
|
|
313
|
+
matchHateoasPattern(concretePath) {
|
|
314
|
+
const concreteSegments = concretePath.split('/').filter(Boolean);
|
|
315
|
+
for (const [pattern, route] of Object.entries(HATEOAS_MAP)) {
|
|
316
|
+
const patternSegments = pattern.split('/').filter(Boolean);
|
|
317
|
+
if (concreteSegments.length !== patternSegments.length)
|
|
318
|
+
continue;
|
|
319
|
+
let matches = true;
|
|
320
|
+
for (let i = 0; i < patternSegments.length; i++) {
|
|
321
|
+
if (patternSegments[i].startsWith('{'))
|
|
322
|
+
continue; // wildcard
|
|
323
|
+
if (patternSegments[i] !== concreteSegments[i]) {
|
|
324
|
+
matches = false;
|
|
325
|
+
break;
|
|
326
|
+
}
|
|
327
|
+
}
|
|
328
|
+
if (matches) {
|
|
329
|
+
// Build the concrete parent path by substituting actual values
|
|
330
|
+
const parentSegments = route.parentPath.split('/').filter(Boolean);
|
|
331
|
+
const concreteParentParts = parentSegments.map((seg, i) => seg.startsWith('{') ? concreteSegments[i] : seg);
|
|
332
|
+
const concreteParentPath = `/${concreteParentParts.join('/')}`;
|
|
333
|
+
return { concreteParentPath, rel: route.rel };
|
|
334
|
+
}
|
|
335
|
+
}
|
|
336
|
+
return null;
|
|
337
|
+
}
|
|
338
|
+
/**
|
|
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).
|
|
342
|
+
*/
|
|
343
|
+
async resolveHateoasUrl(path) {
|
|
344
|
+
// Strip query params for matching, reattach after
|
|
345
|
+
const [basePath, queryString] = path.split('?', 2);
|
|
346
|
+
const match = this.matchHateoasPattern(basePath);
|
|
347
|
+
if (!match) {
|
|
348
|
+
// No map entry — path is a root collection or item, use direct URL
|
|
349
|
+
return `${this.baseUrl}${path}`;
|
|
350
|
+
}
|
|
351
|
+
const { concreteParentPath, rel } = match;
|
|
352
|
+
// Check cache
|
|
353
|
+
let discoveredUrl = this.linkCache.findRel(concreteParentPath, rel);
|
|
354
|
+
if (!discoveredUrl) {
|
|
355
|
+
// Cache miss — fetch parent resource
|
|
356
|
+
try {
|
|
357
|
+
const parentUrl = `${this.baseUrl}${concreteParentPath}`;
|
|
358
|
+
const parentResponse = await this.requestUrl('GET', parentUrl);
|
|
359
|
+
if (parentResponse?.links) {
|
|
360
|
+
this.linkCache.set(concreteParentPath, parentResponse.links);
|
|
361
|
+
discoveredUrl = this.linkCache.findRel(concreteParentPath, rel);
|
|
362
|
+
}
|
|
363
|
+
}
|
|
364
|
+
catch (error) {
|
|
365
|
+
throw new HateoasError(`HATEOAS resolution failed: could not fetch parent resource "${concreteParentPath}"`, path, error instanceof Error ? error : undefined);
|
|
366
|
+
}
|
|
367
|
+
}
|
|
368
|
+
if (!discoveredUrl) {
|
|
369
|
+
const cachedLinks = this.linkCache.has(concreteParentPath);
|
|
370
|
+
throw new HateoasError(`HATEOAS resolution failed: parent "${concreteParentPath}" has no link with rel "${rel}"${cachedLinks ? '' : ' (parent returned no links)'}`, path);
|
|
371
|
+
}
|
|
372
|
+
// Reattach query params
|
|
373
|
+
const resolvedUrl = queryString ? `${discoveredUrl}?${queryString}` : discoveredUrl;
|
|
374
|
+
if (this.hateoasDebug) {
|
|
375
|
+
console.log(`[HATEOAS] ${path} → parent: ${concreteParentPath}, rel: ${rel} → ${resolvedUrl}`);
|
|
376
|
+
}
|
|
377
|
+
return resolvedUrl;
|
|
378
|
+
}
|
|
239
379
|
/**
|
|
240
380
|
* Check if an error/status code is retryable
|
|
241
381
|
*/
|
package/dist/client.js.map
CHANGED
|
@@ -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":"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"}
|
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* HATEOAS Route Map
|
|
3
|
+
*
|
|
4
|
+
* Maps API path patterns to their parent resource and link relation name.
|
|
5
|
+
* Used by DeereClient to resolve URLs via HAL link traversal when hateoas mode is enabled.
|
|
6
|
+
*
|
|
7
|
+
* @generated by generate-sdk.ts — do not edit manually
|
|
8
|
+
*/
|
|
9
|
+
export interface HateoasRoute {
|
|
10
|
+
/** Path pattern of the parent resource (with parameter placeholders) */
|
|
11
|
+
parentPath: string;
|
|
12
|
+
/** HAL link relation name to follow from the parent response */
|
|
13
|
+
rel: string;
|
|
14
|
+
}
|
|
15
|
+
export declare const HATEOAS_MAP: Record<string, HateoasRoute>;
|
|
16
|
+
//# sourceMappingURL=hateoas-map.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"hateoas-map.d.ts","sourceRoot":"","sources":["../src/hateoas-map.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAEH,MAAM,WAAW,YAAY;IAC3B,wEAAwE;IACxE,UAAU,EAAE,MAAM,CAAC;IACnB,gEAAgE;IAChE,GAAG,EAAE,MAAM,CAAC;CACb;AAED,eAAO,MAAM,WAAW,EAAE,MAAM,CAAC,MAAM,EAAE,YAAY,CAuHpD,CAAC"}
|
|
@@ -0,0 +1,129 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* HATEOAS Route Map
|
|
3
|
+
*
|
|
4
|
+
* Maps API path patterns to their parent resource and link relation name.
|
|
5
|
+
* Used by DeereClient to resolve URLs via HAL link traversal when hateoas mode is enabled.
|
|
6
|
+
*
|
|
7
|
+
* @generated by generate-sdk.ts — do not edit manually
|
|
8
|
+
*/
|
|
9
|
+
export const HATEOAS_MAP = {
|
|
10
|
+
'/assets/{assetId}/locations': { parentPath: '/assets/{assetId}', rel: 'locations' },
|
|
11
|
+
'/equipmentMakes/{equipmentMakeId}/equipmentISGTypes': {
|
|
12
|
+
parentPath: '/equipmentMakes/{equipmentMakeId}',
|
|
13
|
+
rel: 'equipmentISGTypes',
|
|
14
|
+
},
|
|
15
|
+
'/equipmentMakes/{equipmentMakeId}/equipmentISGTypes/{equipmentISGTypeId}/equipmentModels': {
|
|
16
|
+
parentPath: '/equipmentMakes/{equipmentMakeId}/equipmentISGTypes/{equipmentISGTypeId}',
|
|
17
|
+
rel: 'equipmentModels',
|
|
18
|
+
},
|
|
19
|
+
'/equipmentMakes/{equipmentMakeId}/equipmentTypes': {
|
|
20
|
+
parentPath: '/equipmentMakes/{equipmentMakeId}',
|
|
21
|
+
rel: 'equipmentTypes',
|
|
22
|
+
},
|
|
23
|
+
'/fieldOperations/{operationId}/boundary': {
|
|
24
|
+
parentPath: '/fieldOperations/{operationId}',
|
|
25
|
+
rel: 'boundary',
|
|
26
|
+
},
|
|
27
|
+
'/machines/{principalId}/alerts': { parentPath: '/machines/{principalId}', rel: 'alerts' },
|
|
28
|
+
'/machines/{principalId}/deviceStateReports': {
|
|
29
|
+
parentPath: '/machines/{principalId}',
|
|
30
|
+
rel: 'deviceStateReports',
|
|
31
|
+
},
|
|
32
|
+
'/machines/{principalId}/engineHours': {
|
|
33
|
+
parentPath: '/machines/{principalId}',
|
|
34
|
+
rel: 'engineHours',
|
|
35
|
+
},
|
|
36
|
+
'/machines/{principalId}/hoursOfOperation': {
|
|
37
|
+
parentPath: '/machines/{principalId}',
|
|
38
|
+
rel: 'hoursOfOperation',
|
|
39
|
+
},
|
|
40
|
+
'/machines/{principalId}/locationHistory': {
|
|
41
|
+
parentPath: '/machines/{principalId}',
|
|
42
|
+
rel: 'locationHistory',
|
|
43
|
+
},
|
|
44
|
+
'/organizations/{organizationId}/cropTypes': {
|
|
45
|
+
parentPath: '/organizations/{organizationId}',
|
|
46
|
+
rel: 'cropTypes',
|
|
47
|
+
},
|
|
48
|
+
'/organizations/{organizationId}/equipment': {
|
|
49
|
+
parentPath: '/organizations/{organizationId}',
|
|
50
|
+
rel: 'equipment',
|
|
51
|
+
},
|
|
52
|
+
'/organizations/{organizationId}/equipment/{principalId}/measurements': {
|
|
53
|
+
parentPath: '/organizations/{organizationId}/equipment/{principalId}',
|
|
54
|
+
rel: 'measurements',
|
|
55
|
+
},
|
|
56
|
+
'/organizations/{organizationId}/varieties': {
|
|
57
|
+
parentPath: '/organizations/{organizationId}',
|
|
58
|
+
rel: 'varieties',
|
|
59
|
+
},
|
|
60
|
+
'/organizations/{orgId}/assets': { parentPath: '/organizations/{orgId}', rel: 'assets' },
|
|
61
|
+
'/organizations/{orgId}/boundaries': { parentPath: '/organizations/{orgId}', rel: 'boundaries' },
|
|
62
|
+
'/organizations/{orgId}/clients': { parentPath: '/organizations/{orgId}', rel: 'clients' },
|
|
63
|
+
'/organizations/{orgId}/clients/{id}/farms': {
|
|
64
|
+
parentPath: '/organizations/{orgId}/clients/{id}',
|
|
65
|
+
rel: 'farms',
|
|
66
|
+
},
|
|
67
|
+
'/organizations/{orgID}/clients/{id}/fields': {
|
|
68
|
+
parentPath: '/organizations/{orgID}/clients/{id}',
|
|
69
|
+
rel: 'fields',
|
|
70
|
+
},
|
|
71
|
+
'/organizations/{orgId}/connections': {
|
|
72
|
+
parentPath: '/organizations/{orgId}',
|
|
73
|
+
rel: 'connections',
|
|
74
|
+
},
|
|
75
|
+
'/organizations/{orgId}/farms': { parentPath: '/organizations/{orgId}', rel: 'farms' },
|
|
76
|
+
'/organizations/{orgId}/farms/{farmId}/clients': {
|
|
77
|
+
parentPath: '/organizations/{orgId}/farms/{farmId}',
|
|
78
|
+
rel: 'clients',
|
|
79
|
+
},
|
|
80
|
+
'/organizations/{orgID}/farms/{id}/fields': {
|
|
81
|
+
parentPath: '/organizations/{orgID}/farms/{id}',
|
|
82
|
+
rel: 'fields',
|
|
83
|
+
},
|
|
84
|
+
'/organizations/{orgId}/fields': { parentPath: '/organizations/{orgId}', rel: 'fields' },
|
|
85
|
+
'/organizations/{orgId}/fields/{fieldId}/boundaries': {
|
|
86
|
+
parentPath: '/organizations/{orgId}/fields/{fieldId}',
|
|
87
|
+
rel: 'boundaries',
|
|
88
|
+
},
|
|
89
|
+
'/organizations/{orgId}/fields/{fieldId}/farms': {
|
|
90
|
+
parentPath: '/organizations/{orgId}/fields/{fieldId}',
|
|
91
|
+
rel: 'farms',
|
|
92
|
+
},
|
|
93
|
+
'/organizations/{orgId}/fields/{fieldId}/fieldOperations': {
|
|
94
|
+
parentPath: '/organizations/{orgId}/fields/{fieldId}',
|
|
95
|
+
rel: 'fieldOperations',
|
|
96
|
+
},
|
|
97
|
+
'/organizations/{orgId}/fields/{fieldId}/flags': {
|
|
98
|
+
parentPath: '/organizations/{orgId}/fields/{fieldId}',
|
|
99
|
+
rel: 'flags',
|
|
100
|
+
},
|
|
101
|
+
'/organizations/{orgId}/fields/{fieldId}/guidanceLines': {
|
|
102
|
+
parentPath: '/organizations/{orgId}/fields/{fieldId}',
|
|
103
|
+
rel: 'guidanceLines',
|
|
104
|
+
},
|
|
105
|
+
'/organizations/{orgID}/fields/{id}/clients': {
|
|
106
|
+
parentPath: '/organizations/{orgID}/fields/{id}',
|
|
107
|
+
rel: 'clients',
|
|
108
|
+
},
|
|
109
|
+
'/organizations/{orgId}/fields/{id}/mapLayerSummaries': {
|
|
110
|
+
parentPath: '/organizations/{orgId}/fields/{id}',
|
|
111
|
+
rel: 'mapLayerSummaries',
|
|
112
|
+
},
|
|
113
|
+
'/organizations/{orgId}/files': { parentPath: '/organizations/{orgId}', rel: 'files' },
|
|
114
|
+
'/organizations/{orgId}/flags': { parentPath: '/organizations/{orgId}', rel: 'flags' },
|
|
115
|
+
'/organizations/{orgId}/harvestIdentificationModules': {
|
|
116
|
+
parentPath: '/organizations/{orgId}',
|
|
117
|
+
rel: 'harvestIdentificationModules',
|
|
118
|
+
},
|
|
119
|
+
'/organizations/{orgId}/notifications/events': {
|
|
120
|
+
parentPath: '/organizations/{orgId}/notifications',
|
|
121
|
+
rel: 'events',
|
|
122
|
+
},
|
|
123
|
+
'/organizations/{orgId}/operators': { parentPath: '/organizations/{orgId}', rel: 'operators' },
|
|
124
|
+
'/organizations/{orgId}/users': { parentPath: '/organizations/{orgId}', rel: 'users' },
|
|
125
|
+
'/partnerships/{token}/permissions': { parentPath: '/partnerships/{token}', rel: 'permissions' },
|
|
126
|
+
'/users/{userName}/organizations': { parentPath: '/users/{userName}', rel: 'organizations' },
|
|
127
|
+
'/varieties/{erid}/documents': { parentPath: '/varieties/{erid}', rel: 'documents' },
|
|
128
|
+
};
|
|
129
|
+
//# sourceMappingURL=hateoas-map.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"hateoas-map.js","sourceRoot":"","sources":["../src/hateoas-map.ts"],"names":[],"mappings":"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"}
|
package/dist/index.d.ts
CHANGED
|
@@ -30,7 +30,7 @@
|
|
|
30
30
|
*/
|
|
31
31
|
export * from './api/index.js';
|
|
32
32
|
export type { DeereClientConfig, Environment, Link, PaginatedResponse, RequestOptions, } from './client.js';
|
|
33
|
-
export { AuthError, createClient, DeereClient, DeereError, RateLimitError, } from './client.js';
|
|
33
|
+
export { AuthError, createClient, DeereClient, DeereError, HateoasError, RateLimitError, } from './client.js';
|
|
34
34
|
export { createDeere, Deere } from './deere.js';
|
|
35
35
|
export * as Types from './types/index.js';
|
|
36
36
|
//# sourceMappingURL=index.d.ts.map
|
package/dist/index.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA6BG;AAGH,cAAc,gBAAgB,CAAC;AAC/B,YAAY,EACV,iBAAiB,EACjB,WAAW,EACX,IAAI,EACJ,iBAAiB,EACjB,cAAc,GACf,MAAM,aAAa,CAAC;AAErB,OAAO,EACL,SAAS,EACT,YAAY,EACZ,WAAW,EACX,UAAU,EACV,cAAc,GACf,MAAM,aAAa,CAAC;AAErB,OAAO,EAAE,WAAW,EAAE,KAAK,EAAE,MAAM,YAAY,CAAC;AAGhD,OAAO,KAAK,KAAK,MAAM,kBAAkB,CAAC"}
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA6BG;AAGH,cAAc,gBAAgB,CAAC;AAC/B,YAAY,EACV,iBAAiB,EACjB,WAAW,EACX,IAAI,EACJ,iBAAiB,EACjB,cAAc,GACf,MAAM,aAAa,CAAC;AAErB,OAAO,EACL,SAAS,EACT,YAAY,EACZ,WAAW,EACX,UAAU,EACV,YAAY,EACZ,cAAc,GACf,MAAM,aAAa,CAAC;AAErB,OAAO,EAAE,WAAW,EAAE,KAAK,EAAE,MAAM,YAAY,CAAC;AAGhD,OAAO,KAAK,KAAK,MAAM,kBAAkB,CAAC"}
|
package/dist/index.js
CHANGED
|
@@ -31,7 +31,7 @@
|
|
|
31
31
|
// API modules
|
|
32
32
|
export * from './api/index.js';
|
|
33
33
|
// Low-level client
|
|
34
|
-
export { AuthError, createClient, DeereClient, DeereError, RateLimitError, } from './client.js';
|
|
34
|
+
export { AuthError, createClient, DeereClient, DeereError, HateoasError, RateLimitError, } from './client.js';
|
|
35
35
|
// Main SDK class
|
|
36
36
|
export { createDeere, Deere } from './deere.js';
|
|
37
37
|
// OpenAPI Types (for advanced usage)
|
package/dist/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA6BG;AAEH,cAAc;AACd,cAAc,gBAAgB,CAAC;AAQ/B,mBAAmB;AACnB,OAAO,EACL,SAAS,EACT,YAAY,EACZ,WAAW,EACX,UAAU,EACV,cAAc,GACf,MAAM,aAAa,CAAC;AACrB,iBAAiB;AACjB,OAAO,EAAE,WAAW,EAAE,KAAK,EAAE,MAAM,YAAY,CAAC;AAEhD,qCAAqC;AACrC,OAAO,KAAK,KAAK,MAAM,kBAAkB,CAAC"}
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA6BG;AAEH,cAAc;AACd,cAAc,gBAAgB,CAAC;AAQ/B,mBAAmB;AACnB,OAAO,EACL,SAAS,EACT,YAAY,EACZ,WAAW,EACX,UAAU,EACV,YAAY,EACZ,cAAc,GACf,MAAM,aAAa,CAAC;AACrB,iBAAiB;AACjB,OAAO,EAAE,WAAW,EAAE,KAAK,EAAE,MAAM,YAAY,CAAC;AAEhD,qCAAqC;AACrC,OAAO,KAAK,KAAK,MAAM,kBAAkB,CAAC"}
|
|
@@ -2,7 +2,7 @@
|
|
|
2
2
|
* John Deere API TypeScript Types
|
|
3
3
|
* Auto-generated from OpenAPI specifications
|
|
4
4
|
*
|
|
5
|
-
* @generated 2026-03-
|
|
5
|
+
* @generated 2026-03-25T14:41:31.926Z
|
|
6
6
|
*/
|
|
7
7
|
export type { components as AempComponents, paths as AempPaths } from './aemp.js';
|
|
8
8
|
export * as Aemp from './aemp.js';
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "deere-sdk",
|
|
3
|
-
"version": "1.0.
|
|
3
|
+
"version": "1.0.10",
|
|
4
4
|
"description": "Unofficial TypeScript SDK for John Deere Operations Center API",
|
|
5
5
|
"author": "ProductOfAmerica",
|
|
6
6
|
"license": "MIT",
|
|
@@ -54,7 +54,7 @@
|
|
|
54
54
|
"openapi-typescript": "^7.0.0",
|
|
55
55
|
"rimraf": "^5.0.0",
|
|
56
56
|
"tsx": "^4.7.0",
|
|
57
|
-
"typescript": "^
|
|
57
|
+
"typescript": "^6.0.2",
|
|
58
58
|
"yaml": "^2.3.0"
|
|
59
59
|
},
|
|
60
60
|
"sideEffects": false,
|