@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 CHANGED
@@ -3,7 +3,7 @@
3
3
 
4
4
  # blip-sdk
5
5
 
6
- A simple blip API wrapper
6
+ A simple blip API wrapper and LIME protocol implementation in TypeScript.
7
7
 
8
8
  ## API Usage
9
9
 
@@ -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
- token;
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
- this.token = HttpSender.createToken(options.node, options.authentication.key);
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.token = options.authentication.token;
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 token authentication');
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
- Authorization: `Key ${this.token}`,
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":"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"}
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
- token;
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
- this.token = HttpSender.createToken(options.node, options.authentication.key);
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.token = options.authentication.token;
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 token authentication');
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
- Authorization: `Key ${this.token}`,
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":"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"}
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 { Command, CommandMethods, Message, MessageTypes } from '../../types/index.ts';
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 token;
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,EAAE,OAAO,EAAE,cAAc,EAAE,OAAO,EAAE,YAAY,EAA0B,MAAM,sBAAsB,CAAA;AAGlH,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,KAAK,CAAQ;IAC9B,OAAO,CAAC,QAAQ,CAAC,SAAS,CAA0B;gBAExC,OAAO,EAAE,qBAAqB,CAAC,2BAA2B,CAAC,CAAC,CAAC,CAAC;IAenE,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"}
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,6 +1,6 @@
1
1
  {
2
2
  "name": "@whitewall/blip-sdk",
3
- "version": "0.0.175",
3
+ "version": "0.0.176",
4
4
  "description": "Blip API wrapper",
5
5
  "exports": {
6
6
  "types": "./dist/types/index.d.ts",
@@ -1,4 +1,11 @@
1
- import type { Command, CommandMethods, Message, MessageTypes, UnknownCommandResponse } from '../../types/index.ts'
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 token: string
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
- this.token = HttpSender.createToken(options.node, options.authentication.key)
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.token = options.authentication.token
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 token authentication')
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
- Authorization: `Key ${this.token}`,
79
+ ...this.authHeaders,
66
80
  },
67
81
  body,
68
82
  })