@deephaven/jsapi-utils 0.37.1-beta.0 → 0.37.1-logout.15

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.
@@ -1,14 +1,39 @@
1
1
  export declare const LOGIN_OPTIONS_REQUEST = "io.deephaven.message.LoginOptions.request";
2
2
  export declare const SESSION_DETAILS_REQUEST = "io.deephaven.message.SessionDetails.request";
3
+ /**
4
+ * Use a BroadcastChannel for sending messages between tabs, such as when the user logs out.
5
+ * Something that isn't clear from the docs - for inter-browser communication, you must use `postMessage` and `onmessage`.
6
+ * `BroadcastChannel` is an `EventTarget`, and does support `addEventListener`/`dispatchEvent` etc... but that's only within the same instance of that object!
7
+ * https://developer.mozilla.org/en-US/docs/Web/API/Broadcast_Channel_API
8
+ */
9
+ export declare const BROADCAST_CHANNEL_NAME = "io.deephaven.broadcast";
10
+ /**
11
+ * Event emitted when the user has logged in successfully
12
+ */
13
+ export declare const BROADCAST_LOGIN_MESSAGE = "io.deephaven.broadcast.Login";
14
+ /**
15
+ * Event emitted when the user has logged out
16
+ */
17
+ export declare const BROADCAST_LOGOUT_MESSAGE = "io.deephaven.broadcast.Logout";
3
18
  export interface Message<T> {
19
+ id: string;
4
20
  message: string;
5
21
  payload?: T;
6
- id: string;
22
+ }
23
+ export interface BroadcastLoginMessage extends Message<void> {
24
+ message: typeof BROADCAST_LOGIN_MESSAGE;
25
+ }
26
+ export interface BroadcastLogoutMessage extends Message<void> {
27
+ message: typeof BROADCAST_LOGOUT_MESSAGE;
7
28
  }
8
29
  export interface Response<T> {
9
30
  id: string;
10
31
  payload: T;
11
32
  }
33
+ export declare function isMessage<T>(obj: unknown): obj is Message<T>;
34
+ export declare function isBroadcastLoginMessage(obj: unknown): obj is BroadcastLoginMessage;
35
+ export declare function isBroadcastLogoutMessage(obj: unknown): obj is BroadcastLogoutMessage;
36
+ export declare function isResponse<T>(obj: unknown): obj is Response<T>;
12
37
  /**
13
38
  * Make message object with optional payload
14
39
  * @param message Message string
@@ -1 +1 @@
1
- {"version":3,"file":"MessageUtils.d.ts","sourceRoot":"","sources":["../src/MessageUtils.ts"],"names":[],"mappings":"AAMA,eAAO,MAAM,qBAAqB,8CACW,CAAC;AAE9C,eAAO,MAAM,uBAAuB,gDACW,CAAC;AAEhD,MAAM,WAAW,OAAO,CAAC,CAAC;IACxB,OAAO,EAAE,MAAM,CAAC;IAChB,OAAO,CAAC,EAAE,CAAC,CAAC;IACZ,EAAE,EAAE,MAAM,CAAC;CACZ;AAED,MAAM,WAAW,QAAQ,CAAC,CAAC;IACzB,EAAE,EAAE,MAAM,CAAC;IACX,OAAO,EAAE,CAAC,CAAC;CACZ;AAED;;;;;;GAMG;AACH,wBAAgB,WAAW,CAAC,CAAC,EAC3B,OAAO,EAAE,MAAM,EACf,EAAE,SAAY,EACd,OAAO,CAAC,EAAE,CAAC,GACV,OAAO,CAAC,CAAC,CAAC,CAEZ;AAED;;;;;GAKG;AACH,wBAAgB,YAAY,CAAC,CAAC,EAAE,SAAS,EAAE,MAAM,EAAE,OAAO,EAAE,CAAC,GAAG,QAAQ,CAAC,CAAC,CAAC,CAE1E;AAED;;;;;GAKG;AACH,wBAAsB,qBAAqB,CAAC,CAAC,EAC3C,OAAO,EAAE,MAAM,EACf,OAAO,SAAQ,GACd,OAAO,CAAC,CAAC,CAAC,CAyBZ"}
1
+ {"version":3,"file":"MessageUtils.d.ts","sourceRoot":"","sources":["../src/MessageUtils.ts"],"names":[],"mappings":"AAMA,eAAO,MAAM,qBAAqB,8CACW,CAAC;AAE9C,eAAO,MAAM,uBAAuB,gDACW,CAAC;AAEhD;;;;;GAKG;AACH,eAAO,MAAM,sBAAsB,2BAA2B,CAAC;AAE/D;;GAEG;AACH,eAAO,MAAM,uBAAuB,iCAAiC,CAAC;AAEtE;;GAEG;AACH,eAAO,MAAM,wBAAwB,kCAAkC,CAAC;AAExE,MAAM,WAAW,OAAO,CAAC,CAAC;IACxB,EAAE,EAAE,MAAM,CAAC;IACX,OAAO,EAAE,MAAM,CAAC;IAChB,OAAO,CAAC,EAAE,CAAC,CAAC;CACb;AAED,MAAM,WAAW,qBAAsB,SAAQ,OAAO,CAAC,IAAI,CAAC;IAC1D,OAAO,EAAE,OAAO,uBAAuB,CAAC;CACzC;AAED,MAAM,WAAW,sBAAuB,SAAQ,OAAO,CAAC,IAAI,CAAC;IAC3D,OAAO,EAAE,OAAO,wBAAwB,CAAC;CAC1C;AAED,MAAM,WAAW,QAAQ,CAAC,CAAC;IACzB,EAAE,EAAE,MAAM,CAAC;IACX,OAAO,EAAE,CAAC,CAAC;CACZ;AAED,wBAAgB,SAAS,CAAC,CAAC,EAAE,GAAG,EAAE,OAAO,GAAG,GAAG,IAAI,OAAO,CAAC,CAAC,CAAC,CAO5D;AAED,wBAAgB,uBAAuB,CACrC,GAAG,EAAE,OAAO,GACX,GAAG,IAAI,qBAAqB,CAE9B;AAED,wBAAgB,wBAAwB,CACtC,GAAG,EAAE,OAAO,GACX,GAAG,IAAI,sBAAsB,CAE/B;AAED,wBAAgB,UAAU,CAAC,CAAC,EAAE,GAAG,EAAE,OAAO,GAAG,GAAG,IAAI,QAAQ,CAAC,CAAC,CAAC,CAG9D;AAED;;;;;;GAMG;AACH,wBAAgB,WAAW,CAAC,CAAC,EAC3B,OAAO,EAAE,MAAM,EACf,EAAE,SAAY,EACd,OAAO,CAAC,EAAE,CAAC,GACV,OAAO,CAAC,CAAC,CAAC,CAEZ;AAED;;;;;GAKG;AACH,wBAAgB,YAAY,CAAC,CAAC,EAAE,SAAS,EAAE,MAAM,EAAE,OAAO,EAAE,CAAC,GAAG,QAAQ,CAAC,CAAC,CAAC,CAE1E;AAED;;;;;GAKG;AACH,wBAAsB,qBAAqB,CAAC,CAAC,EAC3C,OAAO,EAAE,MAAM,EACf,OAAO,SAAQ,GACd,OAAO,CAAC,CAAC,CAAC,CA6BZ"}
@@ -6,6 +6,39 @@ import { TimeoutError } from '@deephaven/utils';
6
6
  var log = Log.module('MessageUtils');
7
7
  export var LOGIN_OPTIONS_REQUEST = 'io.deephaven.message.LoginOptions.request';
8
8
  export var SESSION_DETAILS_REQUEST = 'io.deephaven.message.SessionDetails.request';
9
+
10
+ /**
11
+ * Use a BroadcastChannel for sending messages between tabs, such as when the user logs out.
12
+ * Something that isn't clear from the docs - for inter-browser communication, you must use `postMessage` and `onmessage`.
13
+ * `BroadcastChannel` is an `EventTarget`, and does support `addEventListener`/`dispatchEvent` etc... but that's only within the same instance of that object!
14
+ * https://developer.mozilla.org/en-US/docs/Web/API/Broadcast_Channel_API
15
+ */
16
+ export var BROADCAST_CHANNEL_NAME = 'io.deephaven.broadcast';
17
+
18
+ /**
19
+ * Event emitted when the user has logged in successfully
20
+ */
21
+ export var BROADCAST_LOGIN_MESSAGE = 'io.deephaven.broadcast.Login';
22
+
23
+ /**
24
+ * Event emitted when the user has logged out
25
+ */
26
+ export var BROADCAST_LOGOUT_MESSAGE = 'io.deephaven.broadcast.Logout';
27
+ export function isMessage(obj) {
28
+ var message = obj;
29
+ return message != null && typeof message.id === 'string' && typeof message.message === 'string';
30
+ }
31
+ export function isBroadcastLoginMessage(obj) {
32
+ return isMessage(obj) && obj.message === BROADCAST_LOGIN_MESSAGE;
33
+ }
34
+ export function isBroadcastLogoutMessage(obj) {
35
+ return isMessage(obj) && obj.message === BROADCAST_LOGOUT_MESSAGE;
36
+ }
37
+ export function isResponse(obj) {
38
+ var response = obj;
39
+ return response != null && typeof response.id === 'string';
40
+ }
41
+
9
42
  /**
10
43
  * Make message object with optional payload
11
44
  * @param message Message string
@@ -58,6 +91,10 @@ function _requestParentResponse() {
58
91
  var {
59
92
  data
60
93
  } = event;
94
+ if (!isResponse(data)) {
95
+ log.debug('Ignoring non-deephaven response', data);
96
+ return;
97
+ }
61
98
  log.debug('Received message', data);
62
99
  if ((data === null || data === void 0 ? void 0 : data.id) !== id) {
63
100
  log.debug("Ignore message, id doesn't match", data);
@@ -1 +1 @@
1
- {"version":3,"file":"MessageUtils.js","names":["shortid","Log","TimeoutError","log","module","LOGIN_OPTIONS_REQUEST","SESSION_DETAILS_REQUEST","makeMessage","message","id","payload","makeResponse","messageId","requestParentResponse","request","timeout","window","opener","Error","Promise","resolve","reject","timeoutId","listener","event","data","debug","clearTimeout","removeEventListener","addEventListener","setTimeout","postMessage"],"sources":["../src/MessageUtils.ts"],"sourcesContent":["import shortid from 'shortid';\nimport Log from '@deephaven/log';\nimport { TimeoutError } from '@deephaven/utils';\n\nconst log = Log.module('MessageUtils');\n\nexport const LOGIN_OPTIONS_REQUEST =\n 'io.deephaven.message.LoginOptions.request';\n\nexport const SESSION_DETAILS_REQUEST =\n 'io.deephaven.message.SessionDetails.request';\n\nexport interface Message<T> {\n message: string;\n payload?: T;\n id: string;\n}\n\nexport interface Response<T> {\n id: string;\n payload: T;\n}\n\n/**\n * Make message object with optional payload\n * @param message Message string\n * @param id Unique message id\n * @param payload Payload to send\n * @returns Message\n */\nexport function makeMessage<T>(\n message: string,\n id = shortid(),\n payload?: T\n): Message<T> {\n return { message, id, payload };\n}\n\n/**\n * Make response object for given message id\n * @param messageId Id of the request message to respond to\n * @param payload Payload to respond with\n * @returns Response\n */\nexport function makeResponse<T>(messageId: string, payload: T): Response<T> {\n return { id: messageId, payload };\n}\n\n/**\n * Request data from the parent window and wait for response\n * @param request Request message to send to the parent window\n * @param timeout Timeout in ms\n * @returns Payload of the given type, or undefined\n */\nexport async function requestParentResponse<T>(\n request: string,\n timeout = 30000\n): Promise<T> {\n if (window.opener == null) {\n throw new Error('window.opener is null, unable to send request.');\n }\n return new Promise((resolve, reject) => {\n let timeoutId: number;\n const id = shortid();\n const listener = (event: MessageEvent<Response<T>>) => {\n const { data } = event;\n log.debug('Received message', data);\n if (data?.id !== id) {\n log.debug(\"Ignore message, id doesn't match\", data);\n return;\n }\n window.clearTimeout(timeoutId);\n window.removeEventListener('message', listener);\n resolve(data.payload);\n };\n window.addEventListener('message', listener);\n timeoutId = window.setTimeout(() => {\n window.removeEventListener('message', listener);\n reject(new TimeoutError('Request timed out'));\n }, timeout);\n window.opener.postMessage(makeMessage(request, id), '*');\n });\n}\n"],"mappings":";;AAAA,OAAOA,OAAO,MAAM,SAAS;AAC7B,OAAOC,GAAG,MAAM,gBAAgB;AAChC,SAASC,YAAY,QAAQ,kBAAkB;AAE/C,IAAMC,GAAG,GAAGF,GAAG,CAACG,MAAM,CAAC,cAAc,CAAC;AAEtC,OAAO,IAAMC,qBAAqB,GAChC,2CAA2C;AAE7C,OAAO,IAAMC,uBAAuB,GAClC,6CAA6C;AAa/C;AACA;AACA;AACA;AACA;AACA;AACA;AACA,OAAO,SAASC,WAAW,CACzBC,OAAe,EAGH;EAAA,IAFZC,EAAE,uEAAGT,OAAO,EAAE;EAAA,IACdU,OAAW;EAEX,OAAO;IAAEF,OAAO;IAAEC,EAAE;IAAEC;EAAQ,CAAC;AACjC;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA,OAAO,SAASC,YAAY,CAAIC,SAAiB,EAAEF,OAAU,EAAe;EAC1E,OAAO;IAAED,EAAE,EAAEG,SAAS;IAAEF;EAAQ,CAAC;AACnC;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA,gBAAsBG,qBAAqB;EAAA;AAAA;AA4B1C;EAAA,2CA5BM,WACLC,OAAe,EAEH;IAAA,IADZC,OAAO,uEAAG,KAAK;IAEf,IAAIC,MAAM,CAACC,MAAM,IAAI,IAAI,EAAE;MACzB,MAAM,IAAIC,KAAK,CAAC,gDAAgD,CAAC;IACnE;IACA,OAAO,IAAIC,OAAO,CAAC,CAACC,OAAO,EAAEC,MAAM,KAAK;MACtC,IAAIC,SAAiB;MACrB,IAAMb,EAAE,GAAGT,OAAO,EAAE;MACpB,IAAMuB,QAAQ,GAAIC,KAAgC,IAAK;QACrD,IAAM;UAAEC;QAAK,CAAC,GAAGD,KAAK;QACtBrB,GAAG,CAACuB,KAAK,CAAC,kBAAkB,EAAED,IAAI,CAAC;QACnC,IAAI,CAAAA,IAAI,aAAJA,IAAI,uBAAJA,IAAI,CAAEhB,EAAE,MAAKA,EAAE,EAAE;UACnBN,GAAG,CAACuB,KAAK,CAAC,kCAAkC,EAAED,IAAI,CAAC;UACnD;QACF;QACAT,MAAM,CAACW,YAAY,CAACL,SAAS,CAAC;QAC9BN,MAAM,CAACY,mBAAmB,CAAC,SAAS,EAAEL,QAAQ,CAAC;QAC/CH,OAAO,CAACK,IAAI,CAACf,OAAO,CAAC;MACvB,CAAC;MACDM,MAAM,CAACa,gBAAgB,CAAC,SAAS,EAAEN,QAAQ,CAAC;MAC5CD,SAAS,GAAGN,MAAM,CAACc,UAAU,CAAC,MAAM;QAClCd,MAAM,CAACY,mBAAmB,CAAC,SAAS,EAAEL,QAAQ,CAAC;QAC/CF,MAAM,CAAC,IAAInB,YAAY,CAAC,mBAAmB,CAAC,CAAC;MAC/C,CAAC,EAAEa,OAAO,CAAC;MACXC,MAAM,CAACC,MAAM,CAACc,WAAW,CAACxB,WAAW,CAACO,OAAO,EAAEL,EAAE,CAAC,EAAE,GAAG,CAAC;IAC1D,CAAC,CAAC;EACJ,CAAC;EAAA;AAAA"}
1
+ {"version":3,"file":"MessageUtils.js","names":["shortid","Log","TimeoutError","log","module","LOGIN_OPTIONS_REQUEST","SESSION_DETAILS_REQUEST","BROADCAST_CHANNEL_NAME","BROADCAST_LOGIN_MESSAGE","BROADCAST_LOGOUT_MESSAGE","isMessage","obj","message","id","isBroadcastLoginMessage","isBroadcastLogoutMessage","isResponse","response","makeMessage","payload","makeResponse","messageId","requestParentResponse","request","timeout","window","opener","Error","Promise","resolve","reject","timeoutId","listener","event","data","debug","clearTimeout","removeEventListener","addEventListener","setTimeout","postMessage"],"sources":["../src/MessageUtils.ts"],"sourcesContent":["import shortid from 'shortid';\nimport Log from '@deephaven/log';\nimport { TimeoutError } from '@deephaven/utils';\n\nconst log = Log.module('MessageUtils');\n\nexport const LOGIN_OPTIONS_REQUEST =\n 'io.deephaven.message.LoginOptions.request';\n\nexport const SESSION_DETAILS_REQUEST =\n 'io.deephaven.message.SessionDetails.request';\n\n/**\n * Use a BroadcastChannel for sending messages between tabs, such as when the user logs out.\n * Something that isn't clear from the docs - for inter-browser communication, you must use `postMessage` and `onmessage`.\n * `BroadcastChannel` is an `EventTarget`, and does support `addEventListener`/`dispatchEvent` etc... but that's only within the same instance of that object!\n * https://developer.mozilla.org/en-US/docs/Web/API/Broadcast_Channel_API\n */\nexport const BROADCAST_CHANNEL_NAME = 'io.deephaven.broadcast';\n\n/**\n * Event emitted when the user has logged in successfully\n */\nexport const BROADCAST_LOGIN_MESSAGE = 'io.deephaven.broadcast.Login';\n\n/**\n * Event emitted when the user has logged out\n */\nexport const BROADCAST_LOGOUT_MESSAGE = 'io.deephaven.broadcast.Logout';\n\nexport interface Message<T> {\n id: string;\n message: string;\n payload?: T;\n}\n\nexport interface BroadcastLoginMessage extends Message<void> {\n message: typeof BROADCAST_LOGIN_MESSAGE;\n}\n\nexport interface BroadcastLogoutMessage extends Message<void> {\n message: typeof BROADCAST_LOGOUT_MESSAGE;\n}\n\nexport interface Response<T> {\n id: string;\n payload: T;\n}\n\nexport function isMessage<T>(obj: unknown): obj is Message<T> {\n const message = obj as Message<T>;\n return (\n message != null &&\n typeof message.id === 'string' &&\n typeof message.message === 'string'\n );\n}\n\nexport function isBroadcastLoginMessage(\n obj: unknown\n): obj is BroadcastLoginMessage {\n return isMessage(obj) && obj.message === BROADCAST_LOGIN_MESSAGE;\n}\n\nexport function isBroadcastLogoutMessage(\n obj: unknown\n): obj is BroadcastLogoutMessage {\n return isMessage(obj) && obj.message === BROADCAST_LOGOUT_MESSAGE;\n}\n\nexport function isResponse<T>(obj: unknown): obj is Response<T> {\n const response = obj as Response<T>;\n return response != null && typeof response.id === 'string';\n}\n\n/**\n * Make message object with optional payload\n * @param message Message string\n * @param id Unique message id\n * @param payload Payload to send\n * @returns Message\n */\nexport function makeMessage<T>(\n message: string,\n id = shortid(),\n payload?: T\n): Message<T> {\n return { message, id, payload };\n}\n\n/**\n * Make response object for given message id\n * @param messageId Id of the request message to respond to\n * @param payload Payload to respond with\n * @returns Response\n */\nexport function makeResponse<T>(messageId: string, payload: T): Response<T> {\n return { id: messageId, payload };\n}\n\n/**\n * Request data from the parent window and wait for response\n * @param request Request message to send to the parent window\n * @param timeout Timeout in ms\n * @returns Payload of the given type, or undefined\n */\nexport async function requestParentResponse<T>(\n request: string,\n timeout = 30000\n): Promise<T> {\n if (window.opener == null) {\n throw new Error('window.opener is null, unable to send request.');\n }\n return new Promise((resolve, reject) => {\n let timeoutId: number;\n const id = shortid();\n const listener = (event: MessageEvent) => {\n const { data } = event;\n if (!isResponse<T>(data)) {\n log.debug('Ignoring non-deephaven response', data);\n return;\n }\n log.debug('Received message', data);\n if (data?.id !== id) {\n log.debug(\"Ignore message, id doesn't match\", data);\n return;\n }\n window.clearTimeout(timeoutId);\n window.removeEventListener('message', listener);\n resolve(data.payload);\n };\n window.addEventListener('message', listener);\n timeoutId = window.setTimeout(() => {\n window.removeEventListener('message', listener);\n reject(new TimeoutError('Request timed out'));\n }, timeout);\n window.opener.postMessage(makeMessage(request, id), '*');\n });\n}\n"],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@deephaven/jsapi-utils",
3
- "version": "0.37.1-beta.0+de7a110e",
3
+ "version": "0.37.1-logout.15+df14a9d3",
4
4
  "description": "Deephaven JSAPI Utils",
5
5
  "author": "Deephaven Data Labs LLC",
6
6
  "license": "Apache-2.0",
@@ -21,17 +21,17 @@
21
21
  "build:babel": "babel ./src --out-dir ./dist --extensions \".ts,.tsx,.js,.jsx\" --source-maps --root-mode upward"
22
22
  },
23
23
  "dependencies": {
24
- "@deephaven/filters": "^0.37.1-beta.0+de7a110e",
25
- "@deephaven/jsapi-shim": "^0.37.1-beta.0+de7a110e",
26
- "@deephaven/jsapi-types": "^0.37.1-beta.0+de7a110e",
27
- "@deephaven/log": "^0.37.1-beta.0+de7a110e",
28
- "@deephaven/utils": "^0.37.1-beta.0+de7a110e",
24
+ "@deephaven/filters": "^0.37.1-logout.15+df14a9d3",
25
+ "@deephaven/jsapi-shim": "^0.37.1-logout.15+df14a9d3",
26
+ "@deephaven/jsapi-types": "^0.37.1-logout.15+df14a9d3",
27
+ "@deephaven/log": "^0.37.1-logout.15+df14a9d3",
28
+ "@deephaven/utils": "^0.37.1-logout.15+df14a9d3",
29
29
  "@react-stately/data": "^3.9.1",
30
30
  "lodash.clamp": "^4.0.3",
31
31
  "shortid": "^2.2.16"
32
32
  },
33
33
  "devDependencies": {
34
- "@deephaven/tsconfig": "^0.37.1-beta.0+de7a110e"
34
+ "@deephaven/tsconfig": "^0.37.1-logout.15+df14a9d3"
35
35
  },
36
36
  "files": [
37
37
  "dist"
@@ -40,5 +40,5 @@
40
40
  "publishConfig": {
41
41
  "access": "public"
42
42
  },
43
- "gitHead": "de7a110ea64f279ec37087bcbda9cf85d8c523f8"
43
+ "gitHead": "df14a9d3dc09337b4996df635d1ba83151a60b6e"
44
44
  }