ketting 7.4.2 → 7.5.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/browser/ketting.min.js +1 -1
- package/browser/ketting.min.js.map +1 -1
- package/dist/http/oauth2.d.ts +1 -1
- package/dist/resource.d.ts +7 -1
- package/dist/resource.js +37 -13
- package/dist/resource.js.map +1 -1
- package/dist/src/http/oauth2.d.ts +1 -1
- package/dist/src/resource.d.ts +7 -1
- package/dist/state/hal.js +10 -1
- package/dist/state/hal.js.map +1 -1
- package/dist/test/integration/resource.d.ts +1 -0
- package/package.json +2 -2
- package/src/resource.ts +41 -16
- package/src/state/hal.ts +10 -1
package/dist/http/oauth2.d.ts
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
1
|
import { FetchMiddleware } from './fetcher';
|
|
2
2
|
import { OAuth2Options, OAuth2Token } from 'fetch-mw-oauth2';
|
|
3
|
-
declare const _default: (oauth2Options: OAuth2Options & Partial<OAuth2Token>, token?: OAuth2Token
|
|
3
|
+
declare const _default: (oauth2Options: OAuth2Options & Partial<OAuth2Token>, token?: OAuth2Token) => FetchMiddleware;
|
|
4
4
|
export default _default;
|
package/dist/resource.d.ts
CHANGED
|
@@ -20,7 +20,13 @@ export declare class Resource<T = any> extends EventEmitter {
|
|
|
20
20
|
* Reference to the Client that created the resource
|
|
21
21
|
*/
|
|
22
22
|
client: Client;
|
|
23
|
-
|
|
23
|
+
/**
|
|
24
|
+
* This object tracks all in-flight requests.
|
|
25
|
+
*
|
|
26
|
+
* When 2 identical requests are made in quick succession, this object is
|
|
27
|
+
* used to de-duplicate the requests.
|
|
28
|
+
*/
|
|
29
|
+
private readonly activeRefresh;
|
|
24
30
|
/**
|
|
25
31
|
* Create the resource.
|
|
26
32
|
*
|
package/dist/resource.js
CHANGED
|
@@ -21,9 +21,15 @@ class Resource extends events_1.EventEmitter {
|
|
|
21
21
|
*/
|
|
22
22
|
constructor(client, uri) {
|
|
23
23
|
super();
|
|
24
|
+
/**
|
|
25
|
+
* This object tracks all in-flight requests.
|
|
26
|
+
*
|
|
27
|
+
* When 2 identical requests are made in quick succession, this object is
|
|
28
|
+
* used to de-duplicate the requests.
|
|
29
|
+
*/
|
|
30
|
+
this.activeRefresh = new Map();
|
|
24
31
|
this.client = client;
|
|
25
32
|
this.uri = uri;
|
|
26
|
-
this.activeRefresh = null;
|
|
27
33
|
this.setMaxListeners(500);
|
|
28
34
|
}
|
|
29
35
|
/**
|
|
@@ -37,20 +43,22 @@ class Resource extends events_1.EventEmitter {
|
|
|
37
43
|
return Promise.resolve(state);
|
|
38
44
|
}
|
|
39
45
|
const params = optionsToRequestInit('GET', getOptions);
|
|
40
|
-
|
|
41
|
-
|
|
46
|
+
const uri = this.uri;
|
|
47
|
+
const hash = requestHash(this.uri, getOptions);
|
|
48
|
+
if (!this.activeRefresh.has(hash)) {
|
|
49
|
+
this.activeRefresh.set(hash, (async () => {
|
|
42
50
|
try {
|
|
43
51
|
const response = await this.fetchOrThrow(params);
|
|
44
|
-
const state = await this.client.getStateForResponse(
|
|
52
|
+
const state = await this.client.getStateForResponse(uri, response);
|
|
45
53
|
this.updateCache(state);
|
|
46
54
|
return state;
|
|
47
55
|
}
|
|
48
56
|
finally {
|
|
49
|
-
this.activeRefresh
|
|
57
|
+
this.activeRefresh.delete(hash);
|
|
50
58
|
}
|
|
51
|
-
})();
|
|
59
|
+
})());
|
|
52
60
|
}
|
|
53
|
-
return this.activeRefresh;
|
|
61
|
+
return this.activeRefresh.get(hash);
|
|
54
62
|
}
|
|
55
63
|
/**
|
|
56
64
|
* Does a HEAD request and returns a HeadState object.
|
|
@@ -76,20 +84,22 @@ class Resource extends events_1.EventEmitter {
|
|
|
76
84
|
refresh(getOptions) {
|
|
77
85
|
const params = optionsToRequestInit('GET', getOptions);
|
|
78
86
|
params.cache = 'no-cache';
|
|
79
|
-
|
|
80
|
-
|
|
87
|
+
const uri = this.uri;
|
|
88
|
+
const hash = requestHash(this.uri, getOptions);
|
|
89
|
+
if (!this.activeRefresh.has(hash)) {
|
|
90
|
+
this.activeRefresh.set(hash, (async () => {
|
|
81
91
|
try {
|
|
82
92
|
const response = await this.fetchOrThrow(params);
|
|
83
|
-
const state = await this.client.getStateForResponse(
|
|
93
|
+
const state = await this.client.getStateForResponse(uri, response);
|
|
84
94
|
this.updateCache(state);
|
|
85
95
|
return state;
|
|
86
96
|
}
|
|
87
97
|
finally {
|
|
88
|
-
this.activeRefresh
|
|
98
|
+
this.activeRefresh.delete(hash);
|
|
89
99
|
}
|
|
90
|
-
})();
|
|
100
|
+
})());
|
|
91
101
|
}
|
|
92
|
-
return this.activeRefresh;
|
|
102
|
+
return this.activeRefresh.get(hash);
|
|
93
103
|
}
|
|
94
104
|
/**
|
|
95
105
|
* Updates the server state with a PUT request
|
|
@@ -323,4 +333,18 @@ function optionsToRequestInit(method, options) {
|
|
|
323
333
|
headers,
|
|
324
334
|
};
|
|
325
335
|
}
|
|
336
|
+
function requestHash(uri, options) {
|
|
337
|
+
var _a;
|
|
338
|
+
const headers = {};
|
|
339
|
+
if (options) {
|
|
340
|
+
new Headers(((_a = options.getContentHeaders) === null || _a === void 0 ? void 0 : _a.call(options)) || options.headers)
|
|
341
|
+
.forEach((value, key) => {
|
|
342
|
+
headers[key] = value;
|
|
343
|
+
});
|
|
344
|
+
}
|
|
345
|
+
const headerStr = Object.entries(headers).map(([name, value]) => {
|
|
346
|
+
return name.toLowerCase() + ':' + value;
|
|
347
|
+
}).join(',');
|
|
348
|
+
return uri + '|' + headerStr;
|
|
349
|
+
}
|
|
326
350
|
//# sourceMappingURL=resource.js.map
|
package/dist/resource.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"resource.js","sourceRoot":"","sources":["../src/resource.ts"],"names":[],"mappings":";;;AACA,mCAAsE;AACtE,oCAAqC;AACrC,qDAAuE;AACvE,iCAA2D;AAC3D,mCAAsC;AAEtC,gEAA8D;AAE9D;;;;;GAKG;AACH,MAAa,QAAkB,SAAQ,qBAAY;
|
|
1
|
+
{"version":3,"file":"resource.js","sourceRoot":"","sources":["../src/resource.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,4 +1,4 @@
|
|
|
1
1
|
import { FetchMiddleware } from './fetcher';
|
|
2
2
|
import { OAuth2Options, OAuth2Token } from 'fetch-mw-oauth2';
|
|
3
|
-
declare const _default: (oauth2Options: OAuth2Options & Partial<OAuth2Token>, token?: OAuth2Token
|
|
3
|
+
declare const _default: (oauth2Options: OAuth2Options & Partial<OAuth2Token>, token?: OAuth2Token) => FetchMiddleware;
|
|
4
4
|
export default _default;
|
package/dist/src/resource.d.ts
CHANGED
|
@@ -20,7 +20,13 @@ export declare class Resource<T = any> extends EventEmitter {
|
|
|
20
20
|
* Reference to the Client that created the resource
|
|
21
21
|
*/
|
|
22
22
|
client: Client;
|
|
23
|
-
|
|
23
|
+
/**
|
|
24
|
+
* This object tracks all in-flight requests.
|
|
25
|
+
*
|
|
26
|
+
* When 2 identical requests are made in quick succession, this object is
|
|
27
|
+
* used to de-duplicate the requests.
|
|
28
|
+
*/
|
|
29
|
+
private readonly activeRefresh;
|
|
24
30
|
/**
|
|
25
31
|
* Create the resource.
|
|
26
32
|
*
|
package/dist/state/hal.js
CHANGED
|
@@ -339,15 +339,24 @@ function parseHalField(halField) {
|
|
|
339
339
|
max: halField.max,
|
|
340
340
|
step: halField.step,
|
|
341
341
|
};
|
|
342
|
+
case 'color':
|
|
343
|
+
return {
|
|
344
|
+
name: halField.name,
|
|
345
|
+
type: halField.type,
|
|
346
|
+
required: halField.required || false,
|
|
347
|
+
readOnly: halField.readOnly || false,
|
|
348
|
+
label: halField.prompt,
|
|
349
|
+
value: halField.value,
|
|
350
|
+
};
|
|
342
351
|
case 'radio':
|
|
343
352
|
case 'checkbox':
|
|
344
|
-
case 'color':
|
|
345
353
|
return {
|
|
346
354
|
name: halField.name,
|
|
347
355
|
type: halField.type,
|
|
348
356
|
required: halField.required || false,
|
|
349
357
|
readOnly: halField.readOnly || false,
|
|
350
358
|
label: halField.prompt,
|
|
359
|
+
value: !!halField.value,
|
|
351
360
|
};
|
|
352
361
|
}
|
|
353
362
|
}
|
package/dist/state/hal.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"hal.js","sourceRoot":"","sources":["../../src/state/hal.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"hal.js","sourceRoot":"","sources":["../../src/state/hal.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export {};
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "ketting",
|
|
3
|
-
"version": "7.
|
|
3
|
+
"version": "7.5.0",
|
|
4
4
|
"description": "Opiniated HATEAOS / Rest client.",
|
|
5
5
|
"main": "dist/index.js",
|
|
6
6
|
"browser": "browser/ketting.min.js",
|
|
@@ -66,7 +66,7 @@
|
|
|
66
66
|
"koa-logger": "^3.2.1",
|
|
67
67
|
"koa-path-match": "^3.0.0",
|
|
68
68
|
"koa-static": "^5.0.0",
|
|
69
|
-
"mocha": "^
|
|
69
|
+
"mocha": "^10.0.0",
|
|
70
70
|
"nyc": "^15.1.0",
|
|
71
71
|
"ts-loader": "^9.1.1",
|
|
72
72
|
"ts-node": "^10.0.0",
|
package/src/resource.ts
CHANGED
|
@@ -25,7 +25,13 @@ export class Resource<T = any> extends EventEmitter {
|
|
|
25
25
|
*/
|
|
26
26
|
client: Client;
|
|
27
27
|
|
|
28
|
-
|
|
28
|
+
/**
|
|
29
|
+
* This object tracks all in-flight requests.
|
|
30
|
+
*
|
|
31
|
+
* When 2 identical requests are made in quick succession, this object is
|
|
32
|
+
* used to de-duplicate the requests.
|
|
33
|
+
*/
|
|
34
|
+
private readonly activeRefresh: Map<string, Promise<State<T>>> = new Map<string, Promise<State<T>>>();
|
|
29
35
|
|
|
30
36
|
/**
|
|
31
37
|
* Create the resource.
|
|
@@ -36,7 +42,6 @@ export class Resource<T = any> extends EventEmitter {
|
|
|
36
42
|
super();
|
|
37
43
|
this.client = client;
|
|
38
44
|
this.uri = uri;
|
|
39
|
-
this.activeRefresh = null;
|
|
40
45
|
this.setMaxListeners(500);
|
|
41
46
|
|
|
42
47
|
}
|
|
@@ -54,22 +59,24 @@ export class Resource<T = any> extends EventEmitter {
|
|
|
54
59
|
}
|
|
55
60
|
|
|
56
61
|
const params = optionsToRequestInit('GET', getOptions);
|
|
62
|
+
const uri = this.uri;
|
|
57
63
|
|
|
58
|
-
|
|
59
|
-
|
|
64
|
+
const hash = requestHash(this.uri, getOptions);
|
|
65
|
+
|
|
66
|
+
if (!this.activeRefresh.has(hash)) {
|
|
67
|
+
this.activeRefresh.set(hash, (async (): Promise<State<T>> => {
|
|
60
68
|
try {
|
|
61
69
|
const response = await this.fetchOrThrow(params);
|
|
62
|
-
const state = await this.client.getStateForResponse(
|
|
70
|
+
const state = await this.client.getStateForResponse(uri, response);
|
|
63
71
|
this.updateCache(state);
|
|
64
72
|
return state;
|
|
65
73
|
} finally {
|
|
66
|
-
this.activeRefresh
|
|
74
|
+
this.activeRefresh.delete(hash);
|
|
67
75
|
}
|
|
68
|
-
})();
|
|
76
|
+
})());
|
|
69
77
|
}
|
|
70
78
|
|
|
71
|
-
return this.activeRefresh
|
|
72
|
-
|
|
79
|
+
return this.activeRefresh.get(hash)!;
|
|
73
80
|
}
|
|
74
81
|
|
|
75
82
|
/**
|
|
@@ -105,22 +112,24 @@ export class Resource<T = any> extends EventEmitter {
|
|
|
105
112
|
|
|
106
113
|
const params = optionsToRequestInit('GET', getOptions);
|
|
107
114
|
params.cache = 'no-cache';
|
|
115
|
+
const uri = this.uri;
|
|
116
|
+
|
|
117
|
+
const hash = requestHash(this.uri, getOptions);
|
|
108
118
|
|
|
109
|
-
if (!this.activeRefresh) {
|
|
110
|
-
this.activeRefresh
|
|
119
|
+
if (!this.activeRefresh.has(hash)) {
|
|
120
|
+
this.activeRefresh.set(hash, (async (): Promise<State<T>> => {
|
|
111
121
|
try {
|
|
112
122
|
const response = await this.fetchOrThrow(params);
|
|
113
|
-
const state = await this.client.getStateForResponse(
|
|
123
|
+
const state = await this.client.getStateForResponse(uri, response);
|
|
114
124
|
this.updateCache(state);
|
|
115
125
|
return state;
|
|
116
126
|
} finally {
|
|
117
|
-
this.activeRefresh
|
|
127
|
+
this.activeRefresh.delete(hash);
|
|
118
128
|
}
|
|
119
|
-
})();
|
|
129
|
+
})());
|
|
120
130
|
}
|
|
121
131
|
|
|
122
|
-
return this.activeRefresh
|
|
123
|
-
|
|
132
|
+
return this.activeRefresh.get(hash)!;
|
|
124
133
|
}
|
|
125
134
|
|
|
126
135
|
/**
|
|
@@ -512,3 +521,19 @@ function optionsToRequestInit(method: string, options?: GetRequestOptions | Post
|
|
|
512
521
|
|
|
513
522
|
}
|
|
514
523
|
|
|
524
|
+
function requestHash(uri: string, options: GetRequestOptions | undefined): string {
|
|
525
|
+
|
|
526
|
+
const headers: Record<string, string> = {};
|
|
527
|
+
if (options) {
|
|
528
|
+
new Headers(options.getContentHeaders?.() || options.headers)
|
|
529
|
+
.forEach((value, key) => {
|
|
530
|
+
headers[key] = value;
|
|
531
|
+
});
|
|
532
|
+
}
|
|
533
|
+
|
|
534
|
+
const headerStr = Object.entries(headers).map( ([name, value]) => {
|
|
535
|
+
return name.toLowerCase() + ':' + value;
|
|
536
|
+
}).join(',');
|
|
537
|
+
|
|
538
|
+
return uri + '|' + headerStr;
|
|
539
|
+
}
|
package/src/state/hal.ts
CHANGED
|
@@ -414,15 +414,24 @@ function parseHalField(halField: hal.HalFormsProperty): Field {
|
|
|
414
414
|
max: halField.max,
|
|
415
415
|
step: halField.step,
|
|
416
416
|
};
|
|
417
|
+
case 'color' :
|
|
418
|
+
return {
|
|
419
|
+
name: halField.name,
|
|
420
|
+
type: halField.type,
|
|
421
|
+
required: halField.required || false,
|
|
422
|
+
readOnly: halField.readOnly || false,
|
|
423
|
+
label: halField.prompt,
|
|
424
|
+
value: halField.value,
|
|
425
|
+
};
|
|
417
426
|
case 'radio' :
|
|
418
427
|
case 'checkbox' :
|
|
419
|
-
case 'color' :
|
|
420
428
|
return {
|
|
421
429
|
name: halField.name,
|
|
422
430
|
type: halField.type,
|
|
423
431
|
required: halField.required || false,
|
|
424
432
|
readOnly: halField.readOnly || false,
|
|
425
433
|
label: halField.prompt,
|
|
434
|
+
value: !!halField.value,
|
|
426
435
|
};
|
|
427
436
|
|
|
428
437
|
}
|