@tak-ps/node-tak 11.0.0 → 11.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.
- package/CHANGELOG.md +8 -0
- package/dist/lib/auth.js +8 -12
- package/dist/lib/auth.js.map +1 -1
- package/lib/auth.ts +12 -17
- package/package.json +1 -3
package/CHANGELOG.md
CHANGED
|
@@ -10,6 +10,14 @@
|
|
|
10
10
|
|
|
11
11
|
## Version History
|
|
12
12
|
|
|
13
|
+
### v11.1.0
|
|
14
|
+
|
|
15
|
+
- :rocket: TAK Server 5.5 changed the Cookie format so this PR switches to Bearer tokens
|
|
16
|
+
|
|
17
|
+
### v11.0.1
|
|
18
|
+
|
|
19
|
+
- :arrow_up: Update Core Deps
|
|
20
|
+
|
|
13
21
|
### v11.0.0
|
|
14
22
|
|
|
15
23
|
- :rocket: Update `TAK.write` function to use promises
|
package/dist/lib/auth.js
CHANGED
|
@@ -1,7 +1,5 @@
|
|
|
1
1
|
import fetch from './fetch.js';
|
|
2
2
|
import { Type } from '@sinclair/typebox';
|
|
3
|
-
import { CookieJar, Cookie } from 'tough-cookie';
|
|
4
|
-
import { CookieAgent } from 'http-cookie-agent/undici';
|
|
5
3
|
import { Client } from 'undici';
|
|
6
4
|
import stream2buffer from './stream.js';
|
|
7
5
|
/**
|
|
@@ -39,13 +37,12 @@ export class APIAuthPassword extends APIAuth {
|
|
|
39
37
|
this.jwt = token;
|
|
40
38
|
}
|
|
41
39
|
async fetch(api, url, opts) {
|
|
42
|
-
|
|
43
|
-
await jar.setCookie(new Cookie({ key: 'access_token', value: this.jwt }), String(api.url));
|
|
40
|
+
opts.headers = opts.headers || {};
|
|
44
41
|
opts.credentials = 'include';
|
|
45
|
-
if (!opts.
|
|
46
|
-
|
|
47
|
-
opts.dispatcher = agent;
|
|
42
|
+
if (!opts.headers.Authorization && this.jwt) {
|
|
43
|
+
opts.headers.Authorization = `Bearer ${this.jwt}`;
|
|
48
44
|
}
|
|
45
|
+
console.error('OPTIONS', opts);
|
|
49
46
|
return await fetch(url, opts);
|
|
50
47
|
}
|
|
51
48
|
}
|
|
@@ -56,13 +53,12 @@ export class APIAuthToken extends APIAuth {
|
|
|
56
53
|
this.jwt = jwt;
|
|
57
54
|
}
|
|
58
55
|
async fetch(api, url, opts) {
|
|
59
|
-
|
|
60
|
-
await jar.setCookie(new Cookie({ key: 'access_token', value: this.jwt }), String(api.url));
|
|
56
|
+
opts.headers = opts.headers || {};
|
|
61
57
|
opts.credentials = 'include';
|
|
62
|
-
if (!opts.
|
|
63
|
-
|
|
64
|
-
opts.dispatcher = agent;
|
|
58
|
+
if (!opts.headers.Authorization && this.jwt) {
|
|
59
|
+
opts.headers.Authorization = `Bearer ${this.jwt}`;
|
|
65
60
|
}
|
|
61
|
+
console.error('OPTIONS', opts);
|
|
66
62
|
return await fetch(url, opts);
|
|
67
63
|
}
|
|
68
64
|
}
|
package/dist/lib/auth.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"auth.js","sourceRoot":"","sources":["../../lib/auth.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,YAAY,CAAC;AAC/B,OAAO,EAAE,IAAI,EAAE,MAAM,mBAAmB,CAAC;AACzC,OAAO,EAAE,
|
|
1
|
+
{"version":3,"file":"auth.js","sourceRoot":"","sources":["../../lib/auth.ts"],"names":[],"mappings":"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"}
|
package/lib/auth.ts
CHANGED
|
@@ -1,7 +1,5 @@
|
|
|
1
1
|
import fetch from './fetch.js';
|
|
2
2
|
import { Type } from '@sinclair/typebox';
|
|
3
|
-
import { CookieJar, Cookie } from 'tough-cookie';
|
|
4
|
-
import { CookieAgent } from 'http-cookie-agent/undici';
|
|
5
3
|
import { Client } from 'undici';
|
|
6
4
|
import TAKAPI from './api.js';
|
|
7
5
|
import stream2buffer from './stream.js';
|
|
@@ -49,17 +47,16 @@ export class APIAuthPassword extends APIAuth {
|
|
|
49
47
|
}
|
|
50
48
|
|
|
51
49
|
async fetch(api: TAKAPI, url: URL, opts: any): Promise<any> {
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
await jar.setCookie(new Cookie({ key: 'access_token', value: this.jwt }), String(api.url));
|
|
55
|
-
|
|
50
|
+
opts.headers = opts.headers || {}
|
|
56
51
|
opts.credentials = 'include';
|
|
57
52
|
|
|
58
|
-
if (!opts.
|
|
59
|
-
|
|
60
|
-
opts.dispatcher = agent;
|
|
53
|
+
if (!opts.headers.Authorization && this.jwt) {
|
|
54
|
+
opts.headers.Authorization = `Bearer ${this.jwt}`;
|
|
61
55
|
}
|
|
62
56
|
|
|
57
|
+
console.error('OPTIONS', opts);
|
|
58
|
+
|
|
59
|
+
|
|
63
60
|
return await fetch(url, opts);
|
|
64
61
|
}
|
|
65
62
|
}
|
|
@@ -73,17 +70,15 @@ export class APIAuthToken extends APIAuth {
|
|
|
73
70
|
}
|
|
74
71
|
|
|
75
72
|
async fetch(api: TAKAPI, url: URL, opts: any): Promise<any> {
|
|
76
|
-
|
|
77
|
-
|
|
78
|
-
await jar.setCookie(new Cookie({ key: 'access_token', value: this.jwt }), String(api.url));
|
|
79
|
-
|
|
80
|
-
|
|
73
|
+
opts.headers = opts.headers || {}
|
|
81
74
|
opts.credentials = 'include';
|
|
82
|
-
|
|
83
|
-
|
|
84
|
-
opts.
|
|
75
|
+
|
|
76
|
+
if (!opts.headers.Authorization && this.jwt) {
|
|
77
|
+
opts.headers.Authorization = `Bearer ${this.jwt}`;
|
|
85
78
|
}
|
|
86
79
|
|
|
80
|
+
console.error('OPTIONS', opts);
|
|
81
|
+
|
|
87
82
|
return await fetch(url, opts);
|
|
88
83
|
}
|
|
89
84
|
}
|
package/package.json
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@tak-ps/node-tak",
|
|
3
3
|
"type": "module",
|
|
4
|
-
"version": "11.
|
|
4
|
+
"version": "11.1.0",
|
|
5
5
|
"description": "Lightweight JavaScript library for communicating with TAK Server",
|
|
6
6
|
"author": "Nick Ingalls <nick@ingalls.ca>",
|
|
7
7
|
"main": "dist/index.js",
|
|
@@ -27,11 +27,9 @@
|
|
|
27
27
|
"dependencies": {
|
|
28
28
|
"ajv": "^8.12.0",
|
|
29
29
|
"form-data": "^4.0.2",
|
|
30
|
-
"http-cookie-agent": "^7.0.1",
|
|
31
30
|
"mime": "^4.0.7",
|
|
32
31
|
"p12-pem": "^1.0.5",
|
|
33
32
|
"pem": "^1.14.8",
|
|
34
|
-
"tough-cookie": "^5.1.2",
|
|
35
33
|
"undici": "^7.8.0",
|
|
36
34
|
"xml2js": "^0.6.2"
|
|
37
35
|
},
|