@whitewall/blip-sdk 0.0.175 → 0.0.176
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/README.md +1 -1
- package/dist/cjs/sender/http/httpsender.js +14 -5
- package/dist/cjs/sender/http/httpsender.js.map +1 -1
- package/dist/esm/sender/http/httpsender.js +14 -5
- package/dist/esm/sender/http/httpsender.js.map +1 -1
- package/dist/types/sender/http/httpsender.d.ts +2 -2
- package/dist/types/sender/http/httpsender.d.ts.map +1 -1
- package/package.json +1 -1
- package/src/sender/http/httpsender.ts +20 -6
package/README.md
CHANGED
|
@@ -1,26 +1,35 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
3
|
exports.HttpSender = void 0;
|
|
4
|
+
const index_ts_1 = require("../../types/index.js");
|
|
4
5
|
const bliperror_ts_1 = require("../bliperror.js");
|
|
5
6
|
const retryableerror_ts_1 = require("../retryableerror.js");
|
|
6
7
|
const sender_ts_1 = require("../sender.js");
|
|
7
8
|
const throttler_ts_1 = require("../throttler.js");
|
|
8
9
|
class HttpSender extends sender_ts_1.ConnectionSender {
|
|
9
10
|
baseurl;
|
|
10
|
-
|
|
11
|
+
authHeaders;
|
|
11
12
|
throttler = new throttler_ts_1.EnvelopeThrottler();
|
|
12
13
|
constructor(options) {
|
|
13
14
|
super(options);
|
|
14
15
|
const prefix = options.tenantId ? `${options.tenantId}.` : '';
|
|
15
16
|
this.baseurl = `https://${prefix}http.${this.domain}`;
|
|
16
17
|
if (options.authentication.scheme === 'key') {
|
|
17
|
-
|
|
18
|
+
const token = HttpSender.createToken(options.node, options.authentication.key);
|
|
19
|
+
this.authHeaders = { Authorization: `Key ${token}` };
|
|
18
20
|
}
|
|
19
21
|
else if (options.authentication.scheme === 'token') {
|
|
20
|
-
this.
|
|
22
|
+
this.authHeaders = { Authorization: `Key ${options.authentication.token}` };
|
|
23
|
+
}
|
|
24
|
+
else if (options.authentication.scheme === 'external') {
|
|
25
|
+
this.authHeaders = {
|
|
26
|
+
Authorization: `Bearer ${options.authentication.token}`,
|
|
27
|
+
'http-session-authentication-external-issuer': options.authentication.issuer,
|
|
28
|
+
'http-session-identity': index_ts_1.Node.from(options.node).toIdentity(),
|
|
29
|
+
};
|
|
21
30
|
}
|
|
22
31
|
else {
|
|
23
|
-
throw new Error('HttpSender only supports key or
|
|
32
|
+
throw new Error('HttpSender only supports key, token, or external authentication');
|
|
24
33
|
}
|
|
25
34
|
}
|
|
26
35
|
sendMessage(message) {
|
|
@@ -57,7 +66,7 @@ class HttpSender extends sender_ts_1.ConnectionSender {
|
|
|
57
66
|
method: 'POST',
|
|
58
67
|
headers: {
|
|
59
68
|
'Content-Type': 'application/json',
|
|
60
|
-
|
|
69
|
+
...this.authHeaders,
|
|
61
70
|
},
|
|
62
71
|
body,
|
|
63
72
|
});
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"httpsender.js","sourceRoot":"","sources":["../../../../src/sender/http/httpsender.ts"],"names":[],"mappings":";;;
|
|
1
|
+
{"version":3,"file":"httpsender.js","sourceRoot":"","sources":["../../../../src/sender/http/httpsender.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,23 +1,32 @@
|
|
|
1
|
+
import { Node, } from "../../types/index.js";
|
|
1
2
|
import { BlipError } from "../bliperror.js";
|
|
2
3
|
import { RetryableError } from "../retryableerror.js";
|
|
3
4
|
import { ConnectionSender } from "../sender.js";
|
|
4
5
|
import { EnvelopeThrottler } from "../throttler.js";
|
|
5
6
|
export class HttpSender extends ConnectionSender {
|
|
6
7
|
baseurl;
|
|
7
|
-
|
|
8
|
+
authHeaders;
|
|
8
9
|
throttler = new EnvelopeThrottler();
|
|
9
10
|
constructor(options) {
|
|
10
11
|
super(options);
|
|
11
12
|
const prefix = options.tenantId ? `${options.tenantId}.` : '';
|
|
12
13
|
this.baseurl = `https://${prefix}http.${this.domain}`;
|
|
13
14
|
if (options.authentication.scheme === 'key') {
|
|
14
|
-
|
|
15
|
+
const token = HttpSender.createToken(options.node, options.authentication.key);
|
|
16
|
+
this.authHeaders = { Authorization: `Key ${token}` };
|
|
15
17
|
}
|
|
16
18
|
else if (options.authentication.scheme === 'token') {
|
|
17
|
-
this.
|
|
19
|
+
this.authHeaders = { Authorization: `Key ${options.authentication.token}` };
|
|
20
|
+
}
|
|
21
|
+
else if (options.authentication.scheme === 'external') {
|
|
22
|
+
this.authHeaders = {
|
|
23
|
+
Authorization: `Bearer ${options.authentication.token}`,
|
|
24
|
+
'http-session-authentication-external-issuer': options.authentication.issuer,
|
|
25
|
+
'http-session-identity': Node.from(options.node).toIdentity(),
|
|
26
|
+
};
|
|
18
27
|
}
|
|
19
28
|
else {
|
|
20
|
-
throw new Error('HttpSender only supports key or
|
|
29
|
+
throw new Error('HttpSender only supports key, token, or external authentication');
|
|
21
30
|
}
|
|
22
31
|
}
|
|
23
32
|
sendMessage(message) {
|
|
@@ -54,7 +63,7 @@ export class HttpSender extends ConnectionSender {
|
|
|
54
63
|
method: 'POST',
|
|
55
64
|
headers: {
|
|
56
65
|
'Content-Type': 'application/json',
|
|
57
|
-
|
|
66
|
+
...this.authHeaders,
|
|
58
67
|
},
|
|
59
68
|
body,
|
|
60
69
|
});
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"httpsender.js","sourceRoot":"","sources":["../../../../src/sender/http/httpsender.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"httpsender.js","sourceRoot":"","sources":["../../../../src/sender/http/httpsender.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,8 +1,8 @@
|
|
|
1
|
-
import type
|
|
1
|
+
import { type Command, type CommandMethods, type Message, type MessageTypes } from '../../types/index.ts';
|
|
2
2
|
import { ConnectionSender, type ConnectionSenderConstructor, type Sender } from '../sender.ts';
|
|
3
3
|
export declare class HttpSender extends ConnectionSender implements Sender {
|
|
4
4
|
private readonly baseurl;
|
|
5
|
-
private readonly
|
|
5
|
+
private readonly authHeaders;
|
|
6
6
|
private readonly throttler;
|
|
7
7
|
constructor(options: ConstructorParameters<ConnectionSenderConstructor>[0]);
|
|
8
8
|
sendMessage<Type extends MessageTypes>(message: Message<Type>): Promise<void>;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"httpsender.d.ts","sourceRoot":"","sources":["../../../../src/sender/http/httpsender.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,
|
|
1
|
+
{"version":3,"file":"httpsender.d.ts","sourceRoot":"","sources":["../../../../src/sender/http/httpsender.ts"],"names":[],"mappings":"AAAA,OAAO,EACH,KAAK,OAAO,EACZ,KAAK,cAAc,EACnB,KAAK,OAAO,EACZ,KAAK,YAAY,EAGpB,MAAM,sBAAsB,CAAA;AAG7B,OAAO,EAAE,gBAAgB,EAAE,KAAK,2BAA2B,EAAE,KAAK,MAAM,EAAE,MAAM,cAAc,CAAA;AAG9F,qBAAa,UAAW,SAAQ,gBAAiB,YAAW,MAAM;IAC9D,OAAO,CAAC,QAAQ,CAAC,OAAO,CAAQ;IAChC,OAAO,CAAC,QAAQ,CAAC,WAAW,CAAwB;IACpD,OAAO,CAAC,QAAQ,CAAC,SAAS,CAA0B;gBAExC,OAAO,EAAE,qBAAqB,CAAC,2BAA2B,CAAC,CAAC,CAAC,CAAC;IAsBnE,WAAW,CAAC,IAAI,SAAS,YAAY,EAAE,OAAO,EAAE,OAAO,CAAC,IAAI,CAAC,GAAG,OAAO,CAAC,IAAI,CAAC;IAW7E,WAAW,CAAC,OAAO,EAAE,OAAO,CAAC,cAAc,CAAC,GAAG,OAAO,CAAC,OAAO,CAAC;IAoBtE,OAAc,KAAK;;;MAAqC;YAE1C,KAAK;YAWL,oBAAoB;CAwBrC"}
|
package/package.json
CHANGED
|
@@ -1,4 +1,11 @@
|
|
|
1
|
-
import
|
|
1
|
+
import {
|
|
2
|
+
type Command,
|
|
3
|
+
type CommandMethods,
|
|
4
|
+
type Message,
|
|
5
|
+
type MessageTypes,
|
|
6
|
+
Node,
|
|
7
|
+
type UnknownCommandResponse,
|
|
8
|
+
} from '../../types/index.ts'
|
|
2
9
|
import { BlipError } from '../bliperror.ts'
|
|
3
10
|
import { RetryableError } from '../retryableerror.ts'
|
|
4
11
|
import { ConnectionSender, type ConnectionSenderConstructor, type Sender } from '../sender.ts'
|
|
@@ -6,7 +13,7 @@ import { EnvelopeThrottler } from '../throttler.ts'
|
|
|
6
13
|
|
|
7
14
|
export class HttpSender extends ConnectionSender implements Sender {
|
|
8
15
|
private readonly baseurl: string
|
|
9
|
-
private readonly
|
|
16
|
+
private readonly authHeaders: Record<string, string>
|
|
10
17
|
private readonly throttler = new EnvelopeThrottler()
|
|
11
18
|
|
|
12
19
|
constructor(options: ConstructorParameters<ConnectionSenderConstructor>[0]) {
|
|
@@ -16,11 +23,18 @@ export class HttpSender extends ConnectionSender implements Sender {
|
|
|
16
23
|
this.baseurl = `https://${prefix}http.${this.domain}`
|
|
17
24
|
|
|
18
25
|
if (options.authentication.scheme === 'key') {
|
|
19
|
-
|
|
26
|
+
const token = HttpSender.createToken(options.node, options.authentication.key)
|
|
27
|
+
this.authHeaders = { Authorization: `Key ${token}` }
|
|
20
28
|
} else if (options.authentication.scheme === 'token') {
|
|
21
|
-
this.
|
|
29
|
+
this.authHeaders = { Authorization: `Key ${options.authentication.token}` }
|
|
30
|
+
} else if (options.authentication.scheme === 'external') {
|
|
31
|
+
this.authHeaders = {
|
|
32
|
+
Authorization: `Bearer ${options.authentication.token}`,
|
|
33
|
+
'http-session-authentication-external-issuer': options.authentication.issuer,
|
|
34
|
+
'http-session-identity': Node.from(options.node).toIdentity(),
|
|
35
|
+
}
|
|
22
36
|
} else {
|
|
23
|
-
throw new Error('HttpSender only supports key or
|
|
37
|
+
throw new Error('HttpSender only supports key, token, or external authentication')
|
|
24
38
|
}
|
|
25
39
|
}
|
|
26
40
|
|
|
@@ -62,7 +76,7 @@ export class HttpSender extends ConnectionSender implements Sender {
|
|
|
62
76
|
method: 'POST',
|
|
63
77
|
headers: {
|
|
64
78
|
'Content-Type': 'application/json',
|
|
65
|
-
|
|
79
|
+
...this.authHeaders,
|
|
66
80
|
},
|
|
67
81
|
body,
|
|
68
82
|
})
|