@bridgething/client 0.8.0 → 0.9.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/dist/index.d.ts CHANGED
@@ -27,25 +27,12 @@ export declare class ClientError extends Error {
27
27
  constructor(message: string, kind: 'not-running' | 'already-running' | 'request-timed-out' | 'shutdown' | 'send-failed' | 'not-connected', err?: unknown);
28
28
  }
29
29
  export type ClientOptions = {
30
- /** WebSocket URL. Defaults to `ws://127.0.0.1:8891/` (the on-device daemon). */
31
30
  url?: string;
32
31
  logLevel?: LogVerbosity;
33
- /** Auto-connect on construct. Defaults to `true`. */
34
32
  autoConnect?: boolean;
35
- /** Auto-reconnect on close with exponential backoff. Defaults to `true`. */
36
33
  reconnect?: boolean;
37
- /** Constructor for the underlying WebSocket. Defaults to the global `WebSocket` (browser/runtime). */
38
34
  websocket?: typeof WebSocket;
39
35
  };
40
- /**
41
- * Typed webapp-side facade over the on-device daemon's local WebSocket.
42
- *
43
- * Single-peer (the daemon); every method addresses it implicitly. Holds one `WebSocket`
44
- * with auto-reconnect, JSON-encodes outbound `ClientToBridgeMsg`, decodes inbound
45
- * `BridgeToClientMsg`, and tracks in-flight requests so callers can `await` a reply by id.
46
- *
47
- * Surface methods are code-generated and applied to the prototype at module-load via `applyDispatch()`.
48
- */
49
36
  export interface BridgethingClient extends ClientSurfaces {
50
37
  }
51
38
  export declare class BridgethingClient {
@@ -65,29 +52,9 @@ export declare class BridgethingClient {
65
52
  get connectionState(): ConnectionState;
66
53
  on(listener: ClientListener): () => void;
67
54
  off(listener: ClientListener): void;
68
- /**
69
- * Open the WebSocket if it is not already open. Idempotent when
70
- * already connecting or open.
71
- */
72
55
  connect(): void;
73
- /**
74
- * Close the WebSocket and cancel any reconnect timer. Pending requests
75
- * are rejected with `'shutdown'`. After `close()`, `connect()` reopens.
76
- */
77
56
  close(): void;
78
- /**
79
- * Encode and ship a fully-formed message. Caller picks `meta` (`command`, `event`, etc.).
80
- * For request/response, prefer `request` or a typed surface query method.
81
- *
82
- * Sends before the socket opens are queued and flushed on `open`.
83
- * After `close()`, queued sends reject with `'shutdown'`.
84
- */
85
57
  send(message: ClientToBridgeMsg): Promise<void>;
86
- /**
87
- * Send a request and await the matching response by id. The wire id
88
- * is generated here and matched against `BridgeToClientMsg.meta.data.requestId`
89
- * on the way back.
90
- */
91
58
  request(data: ClientToBridgeMsgData, timeoutMs?: number): Promise<BridgeToClientMsg>;
92
59
  private openSocket;
93
60
  private scheduleReconnect;
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
package/dist/index.js CHANGED
@@ -51,20 +51,12 @@ export class BridgethingClient {
51
51
  off(listener) {
52
52
  this.listeners.delete(listener);
53
53
  }
54
- /**
55
- * Open the WebSocket if it is not already open. Idempotent when
56
- * already connecting or open.
57
- */
58
54
  connect() {
59
55
  if (this.state === 'open' || this.state === 'connecting')
60
56
  return;
61
57
  this.intentionalClose = false;
62
58
  this.openSocket();
63
59
  }
64
- /**
65
- * Close the WebSocket and cancel any reconnect timer. Pending requests
66
- * are rejected with `'shutdown'`. After `close()`, `connect()` reopens.
67
- */
68
60
  close() {
69
61
  this.intentionalClose = true;
70
62
  if (this.reconnectTimer) {
@@ -84,17 +76,8 @@ export class BridgethingClient {
84
76
  while (this.sendQueue.length > 0)
85
77
  this.sendQueue.shift().reject(shutdown);
86
78
  }
87
- /**
88
- * Encode and ship a fully-formed message. Caller picks `meta` (`command`, `event`, etc.).
89
- * For request/response, prefer `request` or a typed surface query method.
90
- *
91
- * Sends before the socket opens are queued and flushed on `open`.
92
- * After `close()`, queued sends reject with `'shutdown'`.
93
- */
94
79
  async send(message) {
95
80
  this.logger.trace('send', message);
96
- // msgpack encode returns a view into its own scratch buffer; copy it so a
97
- // queued frame cannot be clobbered before it flushes
98
81
  const frame = new Uint8Array(msgpackEncode(walkUuidFields(message, 'encode')));
99
82
  if (this.socket && this.state === 'open') {
100
83
  try {
@@ -112,11 +95,6 @@ export class BridgethingClient {
112
95
  this.sendQueue.push({ frame, resolve, reject });
113
96
  });
114
97
  }
115
- /**
116
- * Send a request and await the matching response by id. The wire id
117
- * is generated here and matched against `BridgeToClientMsg.meta.data.requestId`
118
- * on the way back.
119
- */
120
98
  request(data, timeoutMs = DEFAULT_REQUEST_TIMEOUT_MS) {
121
99
  const id = newUuid();
122
100
  const message = { id, meta: { kind: 'request' }, data };
@@ -180,13 +158,9 @@ export class BridgethingClient {
180
158
  let msg;
181
159
  try {
182
160
  if (raw instanceof ArrayBuffer) {
183
- // uuids cross msgpack as 16-byte bin, so they need the same walk the
184
- // gateway transport does or nothing correlates to its request
185
161
  msg = walkUuidFields(msgpackDecode(new Uint8Array(raw)), 'decode');
186
162
  }
187
163
  else if (typeof raw === 'string') {
188
- // the daemon answers in the encoding it was last spoken to, so a text
189
- // frame can still arrive before our first request lands
190
164
  msg = JSON.parse(raw);
191
165
  }
192
166
  else {
package/dist/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
@@ -1,18 +1,15 @@
1
1
  import type { ConfigEntry, ConfigField, DocEntry } from '@bridgething/lib';
2
2
  export type { ConfigEntry, ConfigField, DocEntry } from '@bridgething/lib';
3
- /** Identity of the webapp whose settings page is being rendered. */
4
3
  export type SettingsContext = {
5
4
  webappId: string;
6
5
  name: string;
7
6
  version: string;
8
7
  deviceId: string;
9
8
  };
10
- /** A config or doc key/value after a write; `value` is null when reset to no value. */
11
9
  export type KeyValue = {
12
10
  key: string;
13
11
  value: string | null;
14
12
  };
15
- /** Callback for unsolicited doc changes pushed by the host. */
16
13
  export type DocChangedListener = (key: string, value: string | null) => void;
17
14
  declare global {
18
15
  interface Window {
@@ -22,46 +19,24 @@ declare global {
22
19
  __bridgethingSettingsDeliver?: (json: string) => void;
23
20
  }
24
21
  }
25
- /**
26
- * Bridge a webapp settings page to its host inside the bridgething companion
27
- * app. Speaks the React-Native WebView `postMessage` protocol, not a
28
- * WebSocket; the host delivers replies through a global installed at import.
29
- *
30
- * Network caveat: the page runs on the phone with real internet, but from a
31
- * `file://` origin, so the webview enforces CORS on fetch/XHR (requests carry
32
- * `Origin: null`). Websocket APIs are not CORS-gated and work out of the box;
33
- * prefer them. For a CORS-strict HTTP-only service, fetch from the on-device
34
- * webapp via `client.net` (phone-tunneled, not origin-restricted) instead.
35
- */
36
22
  export declare const settings: {
37
- /** Identity of the webapp and device this settings page is scoped to. */
38
23
  context(): Promise<SettingsContext>;
39
24
  config: {
40
- /** The config schema the webapp declared in its manifest. */
41
25
  fields(): Promise<ConfigField[]>;
42
- /** Current config values (declared defaults plus user overrides). */
43
26
  list(): Promise<ConfigEntry[]>;
44
- /** Set a config value; resolves with the stored key/value. */
45
27
  set(key: string, value: string): Promise<KeyValue>;
46
- /** Clear a config override; resolves with the restored default or null. */
47
28
  delete(key: string): Promise<KeyValue>;
48
29
  };
49
30
  doc: {
50
- /** Read one doc value; resolves with null when unset. */
51
31
  get(key: string): Promise<KeyValue>;
52
- /** List every doc key/value in the webapp's namespace. */
53
32
  list(): Promise<DocEntry[]>;
54
- /** Write one doc value, readable by both the webapp and companion. */
55
33
  set(key: string, value: string): Promise<KeyValue>;
56
- /** Delete one doc value; resolves with a null value. */
57
34
  delete(key: string): Promise<{
58
35
  key: string;
59
36
  value: null;
60
37
  }>;
61
38
  };
62
- /** Subscribe to host-pushed doc changes; returns an unsubscribe function. */
63
39
  onDocChanged(listener: DocChangedListener): () => void;
64
- /** Signal the host to close the settings webview. Fire-and-forget. */
65
40
  done(): void;
66
41
  };
67
42
  //# sourceMappingURL=settings.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"settings.d.ts","sourceRoot":"","sources":["../src/settings.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,WAAW,EAAE,WAAW,EAAE,QAAQ,EAAE,MAAM,kBAAkB,CAAC;AAE3E,YAAY,EAAE,WAAW,EAAE,WAAW,EAAE,QAAQ,EAAE,MAAM,kBAAkB,CAAC;AAK3E,oEAAoE;AACpE,MAAM,MAAM,eAAe,GAAG;IAAE,QAAQ,EAAE,MAAM,CAAC;IAAC,IAAI,EAAE,MAAM,CAAC;IAAC,OAAO,EAAE,MAAM,CAAC;IAAC,QAAQ,EAAE,MAAM,CAAA;CAAE,CAAC;AAEpG,uFAAuF;AACvF,MAAM,MAAM,QAAQ,GAAG;IAAE,GAAG,EAAE,MAAM,CAAC;IAAC,KAAK,EAAE,MAAM,GAAG,IAAI,CAAA;CAAE,CAAC;AAE7D,+DAA+D;AAC/D,MAAM,MAAM,kBAAkB,GAAG,CAAC,GAAG,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,GAAG,IAAI,KAAK,IAAI,CAAC;AAW7E,OAAO,CAAC,MAAM,CAAC;IACb,UAAU,MAAM;QACd,kBAAkB,CAAC,EAAE;YAAE,WAAW,EAAE,CAAC,IAAI,EAAE,MAAM,KAAK,IAAI,CAAA;SAAE,CAAC;QAC7D,4BAA4B,CAAC,EAAE,CAAC,IAAI,EAAE,MAAM,KAAK,IAAI,CAAC;KACvD;CACF;AAmDD;;;;;;;;;;GAUG;AACH,eAAO,MAAM,QAAQ;IACnB,yEAAyE;eAC9D,OAAO,CAAC,eAAe,CAAC;;QAIjC,6DAA6D;kBACnD,OAAO,CAAC,WAAW,EAAE,CAAC;QAGhC,qEAAqE;gBAC7D,OAAO,CAAC,WAAW,EAAE,CAAC;QAG9B,8DAA8D;iBACrD,MAAM,SAAS,MAAM,GAAG,OAAO,CAAC,QAAQ,CAAC;QAGlD,2EAA2E;oBAC/D,MAAM,GAAG,OAAO,CAAC,QAAQ,CAAC;;;QAKtC,yDAAyD;iBAChD,MAAM,GAAG,OAAO,CAAC,QAAQ,CAAC;QAGnC,0DAA0D;gBAClD,OAAO,CAAC,QAAQ,EAAE,CAAC;QAG3B,sEAAsE;iBAC7D,MAAM,SAAS,MAAM,GAAG,OAAO,CAAC,QAAQ,CAAC;QAGlD,wDAAwD;oBAC5C,MAAM,GAAG,OAAO,CAAC;YAAE,GAAG,EAAE,MAAM,CAAC;YAAC,KAAK,EAAE,IAAI,CAAA;SAAE,CAAC;;IAI5D,6EAA6E;2BACtD,kBAAkB,GAAG,MAAM,IAAI;IAItD,sEAAsE;YAC9D,IAAI;CAKb,CAAC"}
1
+ {"version":3,"file":"settings.d.ts","sourceRoot":"","sources":["../src/settings.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,WAAW,EAAE,WAAW,EAAE,QAAQ,EAAE,MAAM,kBAAkB,CAAC;AAE3E,YAAY,EAAE,WAAW,EAAE,WAAW,EAAE,QAAQ,EAAE,MAAM,kBAAkB,CAAC;AAK3E,MAAM,MAAM,eAAe,GAAG;IAAE,QAAQ,EAAE,MAAM,CAAC;IAAC,IAAI,EAAE,MAAM,CAAC;IAAC,OAAO,EAAE,MAAM,CAAC;IAAC,QAAQ,EAAE,MAAM,CAAA;CAAE,CAAC;AACpG,MAAM,MAAM,QAAQ,GAAG;IAAE,GAAG,EAAE,MAAM,CAAC;IAAC,KAAK,EAAE,MAAM,GAAG,IAAI,CAAA;CAAE,CAAC;AAC7D,MAAM,MAAM,kBAAkB,GAAG,CAAC,GAAG,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,GAAG,IAAI,KAAK,IAAI,CAAC;AAW7E,OAAO,CAAC,MAAM,CAAC;IACb,UAAU,MAAM;QACd,kBAAkB,CAAC,EAAE;YAAE,WAAW,EAAE,CAAC,IAAI,EAAE,MAAM,KAAK,IAAI,CAAA;SAAE,CAAC;QAC7D,4BAA4B,CAAC,EAAE,CAAC,IAAI,EAAE,MAAM,KAAK,IAAI,CAAC;KACvD;CACF;AAuED,eAAO,MAAM,QAAQ;eACR,OAAO,CAAC,eAAe,CAAC;;kBAIvB,OAAO,CAAC,WAAW,EAAE,CAAC;gBAGxB,OAAO,CAAC,WAAW,EAAE,CAAC;iBAGrB,MAAM,SAAS,MAAM,GAAG,OAAO,CAAC,QAAQ,CAAC;oBAGtC,MAAM,GAAG,OAAO,CAAC,QAAQ,CAAC;;;iBAK7B,MAAM,GAAG,OAAO,CAAC,QAAQ,CAAC;gBAG3B,OAAO,CAAC,QAAQ,EAAE,CAAC;iBAGlB,MAAM,SAAS,MAAM,GAAG,OAAO,CAAC,QAAQ,CAAC;oBAGtC,MAAM,GAAG,OAAO,CAAC;YAAE,GAAG,EAAE,MAAM,CAAC;YAAC,KAAK,EAAE,IAAI,CAAA;SAAE,CAAC;;2BAIrC,kBAAkB,GAAG,MAAM,IAAI;YAI9C,IAAI;CAGb,CAAC"}
package/dist/settings.js CHANGED
@@ -1,5 +1,5 @@
1
1
  const CALL_TIMEOUT_MS = 15_000;
2
- const HOST_MISSING = 'not running inside the bridgething companion settings host (window.ReactNativeWebView is absent)';
2
+ const HOST_MISSING = 'not running inside a bridgething settings host (no companion webview, no host frame)';
3
3
  let nextId = 1;
4
4
  const pending = new Map();
5
5
  const docListeners = new Set();
@@ -27,12 +27,30 @@ function deliver(json) {
27
27
  else
28
28
  entry.reject(new Error(reply.error));
29
29
  }
30
- if (typeof window !== 'undefined')
30
+ function send(json) {
31
+ if (typeof window === 'undefined')
32
+ return false;
33
+ const webview = window.ReactNativeWebView;
34
+ if (webview) {
35
+ webview.postMessage(json);
36
+ return true;
37
+ }
38
+ if (window.parent !== window) {
39
+ window.parent.postMessage(json, '*');
40
+ return true;
41
+ }
42
+ return false;
43
+ }
44
+ if (typeof window !== 'undefined') {
31
45
  window.__bridgethingSettingsDeliver = deliver;
46
+ window.addEventListener('message', event => {
47
+ if (event.source !== window.parent || event.source === window)
48
+ return;
49
+ if (typeof event.data === 'string')
50
+ deliver(event.data);
51
+ });
52
+ }
32
53
  function call(verb, payload) {
33
- const host = typeof window !== 'undefined' ? window.ReactNativeWebView : undefined;
34
- if (!host)
35
- return Promise.reject(new Error(HOST_MISSING));
36
54
  const id = nextId++;
37
55
  return new Promise((resolve, reject) => {
38
56
  const timer = setTimeout(() => {
@@ -41,7 +59,8 @@ function call(verb, payload) {
41
59
  }, CALL_TIMEOUT_MS);
42
60
  pending.set(id, { resolve: resolve, reject, timer });
43
61
  try {
44
- host.postMessage(JSON.stringify({ id, verb, payload }));
62
+ if (!send(JSON.stringify({ id, verb, payload })))
63
+ throw new Error(HOST_MISSING);
45
64
  }
46
65
  catch (err) {
47
66
  pending.delete(id);
@@ -50,69 +69,45 @@ function call(verb, payload) {
50
69
  }
51
70
  });
52
71
  }
53
- /**
54
- * Bridge a webapp settings page to its host inside the bridgething companion
55
- * app. Speaks the React-Native WebView `postMessage` protocol, not a
56
- * WebSocket; the host delivers replies through a global installed at import.
57
- *
58
- * Network caveat: the page runs on the phone with real internet, but from a
59
- * `file://` origin, so the webview enforces CORS on fetch/XHR (requests carry
60
- * `Origin: null`). Websocket APIs are not CORS-gated and work out of the box;
61
- * prefer them. For a CORS-strict HTTP-only service, fetch from the on-device
62
- * webapp via `client.net` (phone-tunneled, not origin-restricted) instead.
63
- */
64
72
  export const settings = {
65
- /** Identity of the webapp and device this settings page is scoped to. */
66
73
  context() {
67
74
  return call('context');
68
75
  },
69
76
  config: {
70
- /** The config schema the webapp declared in its manifest. */
71
77
  fields() {
72
78
  return call('config.fields');
73
79
  },
74
- /** Current config values (declared defaults plus user overrides). */
75
80
  list() {
76
81
  return call('config.list');
77
82
  },
78
- /** Set a config value; resolves with the stored key/value. */
79
83
  set(key, value) {
80
84
  return call('config.set', { key, value });
81
85
  },
82
- /** Clear a config override; resolves with the restored default or null. */
83
86
  delete(key) {
84
87
  return call('config.delete', { key });
85
88
  },
86
89
  },
87
90
  doc: {
88
- /** Read one doc value; resolves with null when unset. */
89
91
  get(key) {
90
92
  return call('doc.get', { key });
91
93
  },
92
- /** List every doc key/value in the webapp's namespace. */
93
94
  list() {
94
95
  return call('doc.list');
95
96
  },
96
- /** Write one doc value, readable by both the webapp and companion. */
97
97
  set(key, value) {
98
98
  return call('doc.set', { key, value });
99
99
  },
100
- /** Delete one doc value; resolves with a null value. */
101
100
  delete(key) {
102
101
  return call('doc.delete', { key });
103
102
  },
104
103
  },
105
- /** Subscribe to host-pushed doc changes; returns an unsubscribe function. */
106
104
  onDocChanged(listener) {
107
105
  docListeners.add(listener);
108
106
  return () => docListeners.delete(listener);
109
107
  },
110
- /** Signal the host to close the settings webview. Fire-and-forget. */
111
108
  done() {
112
- const host = typeof window !== 'undefined' ? window.ReactNativeWebView : undefined;
113
- if (!host)
109
+ if (!send(JSON.stringify({ id: nextId++, verb: 'done' })))
114
110
  throw new Error(HOST_MISSING);
115
- host.postMessage(JSON.stringify({ id: nextId++, verb: 'done' }));
116
111
  },
117
112
  };
118
113
  //# sourceMappingURL=settings.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"settings.js","sourceRoot":"","sources":["../src/settings.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"settings.js","sourceRoot":"","sources":["../src/settings.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@bridgething/client",
3
- "version": "0.8.0",
3
+ "version": "0.9.0",
4
4
  "description": "Typed client SDK a bridgething webapp uses to talk to the on-device daemon on a Spotify Car Thing.",
5
5
  "license": "MIT",
6
6
  "author": "Joey Eamigh <55670930+JoeyEamigh@users.noreply.github.com> (https://github.com/JoeyEamigh)",
@@ -39,7 +39,7 @@
39
39
  "lint": "eslint ."
40
40
  },
41
41
  "dependencies": {
42
- "@bridgething/lib": "0.8.0",
42
+ "@bridgething/lib": "0.9.0",
43
43
  "@msgpack/msgpack": "^3.1.3"
44
44
  },
45
45
  "peerDependencies": {