@prismicio/simulator 0.1.4 → 0.2.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/README.md +7 -18
- package/dist/SimulatorAPI.cjs +38 -46
- package/dist/SimulatorAPI.cjs.map +1 -1
- package/dist/SimulatorAPI.d.cts +18 -0
- package/dist/SimulatorAPI.d.ts +16 -10
- package/dist/SimulatorAPI.js +37 -46
- package/dist/SimulatorAPI.js.map +1 -1
- package/dist/SimulatorClient.cjs +41 -51
- package/dist/SimulatorClient.cjs.map +1 -1
- package/dist/SimulatorClient.d.cts +16 -0
- package/dist/SimulatorClient.d.ts +15 -9
- package/dist/SimulatorClient.js +40 -51
- package/dist/SimulatorClient.js.map +1 -1
- package/dist/channel/ChannelEmitter.cjs +112 -143
- package/dist/channel/ChannelEmitter.cjs.map +1 -1
- package/dist/channel/ChannelEmitter.d.cts +38 -0
- package/dist/channel/ChannelEmitter.d.ts +36 -36
- package/dist/channel/ChannelEmitter.js +110 -141
- package/dist/channel/ChannelEmitter.js.map +1 -1
- package/dist/channel/ChannelNetwork.cjs +81 -109
- package/dist/channel/ChannelNetwork.cjs.map +1 -1
- package/dist/channel/ChannelNetwork.d.cts +28 -0
- package/dist/channel/ChannelNetwork.d.ts +25 -21
- package/dist/channel/ChannelNetwork.js +81 -109
- package/dist/channel/ChannelNetwork.js.map +1 -1
- package/dist/channel/ChannelReceiver.cjs +69 -92
- package/dist/channel/ChannelReceiver.cjs.map +1 -1
- package/dist/channel/ChannelReceiver.d.cts +20 -0
- package/dist/channel/ChannelReceiver.d.ts +18 -18
- package/dist/channel/ChannelReceiver.js +67 -90
- package/dist/channel/ChannelReceiver.js.map +1 -1
- package/dist/channel/errors.cjs +41 -46
- package/dist/channel/errors.cjs.map +1 -1
- package/dist/channel/errors.d.cts +28 -0
- package/dist/channel/errors.d.ts +22 -19
- package/dist/channel/errors.js +40 -52
- package/dist/channel/errors.js.map +1 -1
- package/dist/channel/messages.cjs +48 -43
- package/dist/channel/messages.cjs.map +1 -1
- package/dist/channel/messages.d.cts +12 -0
- package/dist/channel/messages.d.ts +12 -10
- package/dist/channel/messages.js +50 -53
- package/dist/channel/messages.js.map +1 -1
- package/dist/channel/types.cjs +15 -11
- package/dist/channel/types.cjs.map +1 -1
- package/dist/channel/types.d.cts +53 -0
- package/dist/channel/types.d.ts +42 -50
- package/dist/channel/types.js +13 -13
- package/dist/channel/types.js.map +1 -1
- package/dist/globalExtensions.d.cts +15 -0
- package/dist/globalExtensions.d.ts +13 -10
- package/dist/index.cjs +24 -33
- package/dist/index.d.cts +10 -0
- package/dist/index.d.ts +10 -8
- package/dist/index.js +5 -25
- package/dist/kit/SimulatorManager.cjs +106 -137
- package/dist/kit/SimulatorManager.cjs.map +1 -1
- package/dist/kit/SimulatorManager.d.cts +19 -0
- package/dist/kit/SimulatorManager.d.ts +16 -12
- package/dist/kit/SimulatorManager.js +103 -134
- package/dist/kit/SimulatorManager.js.map +1 -1
- package/dist/kit/State.cjs +82 -80
- package/dist/kit/State.cjs.map +1 -1
- package/dist/kit/State.d.cts +29 -0
- package/dist/kit/State.d.ts +26 -22
- package/dist/kit/State.js +80 -78
- package/dist/kit/State.js.map +1 -1
- package/dist/kit/domHelpers.cjs +25 -37
- package/dist/kit/domHelpers.cjs.map +1 -1
- package/dist/kit/domHelpers.d.cts +11 -0
- package/dist/kit/domHelpers.d.ts +10 -8
- package/dist/kit/domHelpers.js +25 -43
- package/dist/kit/domHelpers.js.map +1 -1
- package/dist/kit/eventHandlers.cjs +11 -9
- package/dist/kit/eventHandlers.cjs.map +1 -1
- package/dist/kit/eventHandlers.d.cts +8 -0
- package/dist/kit/eventHandlers.d.ts +7 -3
- package/dist/kit/eventHandlers.js +11 -11
- package/dist/kit/eventHandlers.js.map +1 -1
- package/dist/kit/getDefault.cjs +9 -7
- package/dist/kit/getDefault.cjs.map +1 -1
- package/dist/kit/getDefault.d.cts +10 -0
- package/dist/kit/getDefault.d.ts +10 -8
- package/dist/kit/getDefault.js +9 -10
- package/dist/kit/getDefault.js.map +1 -1
- package/dist/kit/messages.cjs +8 -22
- package/dist/kit/messages.cjs.map +1 -1
- package/dist/kit/messages.d.cts +5 -0
- package/dist/kit/messages.d.ts +5 -1
- package/dist/kit/messages.js +8 -23
- package/dist/kit/messages.js.map +1 -1
- package/dist/kit/types.cjs +12 -9
- package/dist/kit/types.cjs.map +1 -1
- package/dist/kit/types.d.cts +28 -0
- package/dist/kit/types.d.ts +24 -19
- package/dist/kit/types.js +11 -10
- package/dist/kit/types.js.map +1 -1
- package/dist/kit.cjs +21 -26
- package/dist/kit.d.cts +8 -0
- package/dist/kit.d.ts +8 -0
- package/dist/kit.js +7 -21
- package/dist/lib/EventEmitter.cjs +16 -25
- package/dist/lib/EventEmitter.cjs.map +1 -1
- package/dist/lib/EventEmitter.d.cts +12 -0
- package/dist/lib/EventEmitter.d.ts +11 -9
- package/dist/lib/EventEmitter.js +16 -26
- package/dist/lib/EventEmitter.js.map +1 -1
- package/dist/lib/throttle.cjs +21 -21
- package/dist/lib/throttle.cjs.map +1 -1
- package/dist/lib/throttle.js +21 -22
- package/dist/lib/throttle.js.map +1 -1
- package/dist/types.cjs +18 -14
- package/dist/types.cjs.map +1 -1
- package/dist/types.d.cts +39 -0
- package/dist/types.d.ts +32 -27
- package/dist/types.js +16 -16
- package/dist/types.js.map +1 -1
- package/package.json +27 -68
- package/src/SimulatorAPI.ts +24 -22
- package/src/SimulatorClient.ts +24 -25
- package/src/channel/ChannelEmitter.ts +71 -74
- package/src/channel/ChannelNetwork.ts +53 -55
- package/src/channel/ChannelReceiver.ts +46 -48
- package/src/channel/errors.ts +14 -14
- package/src/channel/index.ts +10 -10
- package/src/channel/messages.ts +39 -31
- package/src/channel/types.ts +40 -40
- package/src/globalExtensions.ts +6 -6
- package/src/index.ts +8 -8
- package/src/kit/SimulatorManager.ts +64 -63
- package/src/kit/State.ts +45 -44
- package/src/kit/domHelpers.ts +24 -24
- package/src/kit/eventHandlers.ts +6 -6
- package/src/kit/getDefault.ts +8 -8
- package/src/kit/index.ts +8 -8
- package/src/kit/messages.ts +5 -5
- package/src/kit/types.ts +13 -13
- package/src/lib/EventEmitter.ts +8 -8
- package/src/lib/__PRODUCTION__.ts +2 -2
- package/src/lib/throttle.ts +12 -12
- package/src/types.ts +20 -20
- package/dist/channel/index.d.ts +0 -10
- package/dist/index.cjs.map +0 -1
- package/dist/index.js.map +0 -1
- package/dist/kit/index.d.ts +0 -8
- package/dist/kit.cjs.map +0 -1
- package/dist/kit.js.map +0 -1
- package/dist/lib/__PRODUCTION__.d.ts +0 -7
- package/dist/lib/throttle.d.ts +0 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"messages.cjs","sources":["
|
|
1
|
+
{"version":3,"file":"messages.cjs","names":[],"sources":["../../src/channel/messages.ts"],"sourcesContent":["import type {\n\tErrorResponseMessage,\n\tRequestMessage,\n\tSuccessResponseMessage,\n\tUnknownErrorResponseMessage,\n\tUnknownMessage,\n\tUnknownRequestMessage,\n\tUnknownResponseMessage,\n\tUnknownSuccessResponseMessage,\n} from \"./types\"\n\n// Adapted from https://github.com/jshttp/statuses/blob/770a97d931c1bb40ebbfefdbb77f0419601890b5/codes.json\nconst statuses = {\n\t200: \"ok\",\n\t201: \"created\",\n\n\t400: \"bad request\",\n\t500: \"internal server error\",\n\t501: \"not implemented\",\n}\n\nlet requestID = 0\n\nexport const createRequestMessage = <\n\tTType extends string = string,\n\tTData = undefined,\n>(\n\ttype: TType,\n\tdata: TData,\n\tprefix = \"\",\n): RequestMessage<TType, TData> => {\n\treturn {\n\t\trequestID: `${prefix}${requestID++}`,\n\t\ttype,\n\t\tdata,\n\t}\n}\n\nexport const createSuccessResponseMessage = <TData = undefined>(\n\trequestID: string,\n\tdata: TData,\n\tstatus: keyof typeof statuses = 200,\n): SuccessResponseMessage<TData> => {\n\tif (status >= 400) {\n\t\tthrow new TypeError(\n\t\t\t`Invalid success status code, expected status to be within \\`[100;400[\\`, got \\`${status}\\``,\n\t\t)\n\t}\n\n\treturn {\n\t\trequestID,\n\t\tstatus,\n\t\tmsg: statuses[status] ?? \"\",\n\t\tdata,\n\t}\n}\n\nexport const createErrorResponseMessage = <TError = undefined>(\n\trequestID: string,\n\terror: TError,\n\tstatus: keyof typeof statuses = 400,\n): ErrorResponseMessage<TError> => {\n\tif (status < 400) {\n\t\tthrow new TypeError(\n\t\t\t`Invalid error status code, expected status to be within \\`[400;600[\\`, got \\`${status}\\``,\n\t\t)\n\t}\n\n\treturn {\n\t\trequestID,\n\t\tstatus,\n\t\tmsg: statuses[status] ?? \"\",\n\t\terror,\n\t}\n}\n\nexport const validateMessage = (message: unknown): UnknownMessage => {\n\tif (typeof message !== \"object\" || message === null) {\n\t\tthrow new TypeError(\n\t\t\t`Invalid message received, expected message to be of type \\`object\\`, got \\`${typeof message}\\``,\n\t\t)\n\t} else if (\n\t\t!Object.keys(message).every((key) =>\n\t\t\t[\"requestID\", \"type\", \"data\", \"status\", \"msg\", \"error\"].includes(key),\n\t\t)\n\t) {\n\t\tthrow new TypeError(`Invalid message received: ${JSON.stringify(message)}`)\n\t} else if (\n\t\ttypeof (message as Record<string, unknown>).requestID !== \"string\"\n\t) {\n\t\tthrow new TypeError(\n\t\t\t`Invalid message received, expected \\`message.requestID\\` to be of type \\`string\\`, got \\`${typeof (\n\t\t\t\tmessage as Record<string, unknown>\n\t\t\t).id}\\``,\n\t\t)\n\t}\n\n\treturn message as UnknownMessage\n}\n\nexport const isRequestMessage = (\n\tmessage: UnknownMessage,\n): message is UnknownRequestMessage => {\n\treturn \"type\" in message\n}\n\nexport const isResponseMessage = (\n\tmessage: UnknownMessage,\n): message is UnknownResponseMessage => {\n\treturn !(\"type\" in message)\n}\n\nexport const isSuccessResponseMessage = (\n\tmessage: UnknownMessage,\n): message is UnknownSuccessResponseMessage => {\n\treturn isResponseMessage(message) && !(\"error\" in message)\n}\n\nexport const isErrorResponseMessage = (\n\tmessage: UnknownMessage,\n): message is UnknownErrorResponseMessage => {\n\treturn isResponseMessage(message) && !(\"data\" in message)\n}\n"],"mappings":";;AAYA,MAAM,WAAW;CAChB,KAAK;CACL,KAAK;CAEL,KAAK;CACL,KAAK;CACL,KAAK;CACL;AAED,IAAI,YAAY;AAEhB,MAAa,wBAIZ,MACA,MACA,SAAS,OACyB;AAClC,QAAO;EACN,WAAW,GAAG,SAAS;EACvB;EACA;EACA;;AAGF,MAAa,gCACZ,aACA,MACA,SAAgC,QACG;AACnC,KAAI,UAAU,IACb,OAAM,IAAI,UACT,kFAAkF,OAAO,IACzF;AAGF,QAAO;EACN;EACA;EACA,KAAK,SAAS,WAAW;EACzB;EACA;;AAGF,MAAa,8BACZ,aACA,OACA,SAAgC,QACE;AAClC,KAAI,SAAS,IACZ,OAAM,IAAI,UACT,gFAAgF,OAAO,IACvF;AAGF,QAAO;EACN;EACA;EACA,KAAK,SAAS,WAAW;EACzB;EACA;;AAGF,MAAa,mBAAmB,YAAqC;AACpE,KAAI,OAAO,YAAY,YAAY,YAAY,KAC9C,OAAM,IAAI,UACT,8EAA8E,OAAO,QAAQ,IAC7F;UAED,CAAC,OAAO,KAAK,QAAQ,CAAC,OAAO,QAC5B;EAAC;EAAa;EAAQ;EAAQ;EAAU;EAAO;EAAQ,CAAC,SAAS,IAAI,CACrE,CAED,OAAM,IAAI,UAAU,6BAA6B,KAAK,UAAU,QAAQ,GAAG;UAE3E,OAAQ,QAAoC,cAAc,SAE1D,OAAM,IAAI,UACT,4FAA4F,OAC3F,QACC,GAAG,IACL;AAGF,QAAO;;AAGR,MAAa,oBACZ,YACsC;AACtC,QAAO,UAAU;;AAGlB,MAAa,qBACZ,YACuC;AACvC,QAAO,EAAE,UAAU;;AAGpB,MAAa,4BACZ,YAC8C;AAC9C,QAAO,kBAAkB,QAAQ,IAAI,EAAE,WAAW;;AAGnD,MAAa,0BACZ,YAC4C;AAC5C,QAAO,kBAAkB,QAAQ,IAAI,EAAE,UAAU"}
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
import { UnknownErrorResponseMessage, UnknownMessage, UnknownRequestMessage, UnknownResponseMessage, UnknownSuccessResponseMessage } from "./types.cjs";
|
|
2
|
+
|
|
3
|
+
//#region src/channel/messages.d.ts
|
|
4
|
+
|
|
5
|
+
declare const validateMessage: (message: unknown) => UnknownMessage;
|
|
6
|
+
declare const isRequestMessage: (message: UnknownMessage) => message is UnknownRequestMessage;
|
|
7
|
+
declare const isResponseMessage: (message: UnknownMessage) => message is UnknownResponseMessage;
|
|
8
|
+
declare const isSuccessResponseMessage: (message: UnknownMessage) => message is UnknownSuccessResponseMessage;
|
|
9
|
+
declare const isErrorResponseMessage: (message: UnknownMessage) => message is UnknownErrorResponseMessage;
|
|
10
|
+
//#endregion
|
|
11
|
+
export { isErrorResponseMessage, isRequestMessage, isResponseMessage, isSuccessResponseMessage, validateMessage };
|
|
12
|
+
//# sourceMappingURL=messages.d.cts.map
|
|
@@ -1,10 +1,12 @@
|
|
|
1
|
-
import
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
1
|
+
import { UnknownErrorResponseMessage, UnknownMessage, UnknownRequestMessage, UnknownResponseMessage, UnknownSuccessResponseMessage } from "./types.js";
|
|
2
|
+
|
|
3
|
+
//#region src/channel/messages.d.ts
|
|
4
|
+
|
|
5
|
+
declare const validateMessage: (message: unknown) => UnknownMessage;
|
|
6
|
+
declare const isRequestMessage: (message: UnknownMessage) => message is UnknownRequestMessage;
|
|
7
|
+
declare const isResponseMessage: (message: UnknownMessage) => message is UnknownResponseMessage;
|
|
8
|
+
declare const isSuccessResponseMessage: (message: UnknownMessage) => message is UnknownSuccessResponseMessage;
|
|
9
|
+
declare const isErrorResponseMessage: (message: UnknownMessage) => message is UnknownErrorResponseMessage;
|
|
10
|
+
//#endregion
|
|
11
|
+
export { isErrorResponseMessage, isRequestMessage, isResponseMessage, isSuccessResponseMessage, validateMessage };
|
|
12
|
+
//# sourceMappingURL=messages.d.ts.map
|
package/dist/channel/messages.js
CHANGED
|
@@ -1,66 +1,63 @@
|
|
|
1
|
-
|
|
1
|
+
//#region src/channel/messages.ts
|
|
2
|
+
const statuses = {
|
|
3
|
+
200: "ok",
|
|
4
|
+
201: "created",
|
|
5
|
+
400: "bad request",
|
|
6
|
+
500: "internal server error",
|
|
7
|
+
501: "not implemented"
|
|
8
|
+
};
|
|
2
9
|
let requestID = 0;
|
|
3
10
|
const createRequestMessage = (type, data, prefix = "") => {
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
};
|
|
10
|
-
const createSuccessResponseMessage = (
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
return {
|
|
28
|
-
requestID: requestID2,
|
|
29
|
-
status,
|
|
30
|
-
msg: ((_a = statuses.message[status]) == null ? void 0 : _a.replace(/\.$/, "").toLowerCase()) ?? "",
|
|
31
|
-
error
|
|
32
|
-
};
|
|
11
|
+
return {
|
|
12
|
+
requestID: `${prefix}${requestID++}`,
|
|
13
|
+
type,
|
|
14
|
+
data
|
|
15
|
+
};
|
|
16
|
+
};
|
|
17
|
+
const createSuccessResponseMessage = (requestID$1, data, status = 200) => {
|
|
18
|
+
if (status >= 400) throw new TypeError(`Invalid success status code, expected status to be within \`[100;400[\`, got \`${status}\``);
|
|
19
|
+
return {
|
|
20
|
+
requestID: requestID$1,
|
|
21
|
+
status,
|
|
22
|
+
msg: statuses[status] ?? "",
|
|
23
|
+
data
|
|
24
|
+
};
|
|
25
|
+
};
|
|
26
|
+
const createErrorResponseMessage = (requestID$1, error, status = 400) => {
|
|
27
|
+
if (status < 400) throw new TypeError(`Invalid error status code, expected status to be within \`[400;600[\`, got \`${status}\``);
|
|
28
|
+
return {
|
|
29
|
+
requestID: requestID$1,
|
|
30
|
+
status,
|
|
31
|
+
msg: statuses[status] ?? "",
|
|
32
|
+
error
|
|
33
|
+
};
|
|
33
34
|
};
|
|
34
35
|
const validateMessage = (message) => {
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
36
|
+
if (typeof message !== "object" || message === null) throw new TypeError(`Invalid message received, expected message to be of type \`object\`, got \`${typeof message}\``);
|
|
37
|
+
else if (!Object.keys(message).every((key) => [
|
|
38
|
+
"requestID",
|
|
39
|
+
"type",
|
|
40
|
+
"data",
|
|
41
|
+
"status",
|
|
42
|
+
"msg",
|
|
43
|
+
"error"
|
|
44
|
+
].includes(key))) throw new TypeError(`Invalid message received: ${JSON.stringify(message)}`);
|
|
45
|
+
else if (typeof message.requestID !== "string") throw new TypeError(`Invalid message received, expected \`message.requestID\` to be of type \`string\`, got \`${typeof message.id}\``);
|
|
46
|
+
return message;
|
|
43
47
|
};
|
|
44
48
|
const isRequestMessage = (message) => {
|
|
45
|
-
|
|
49
|
+
return "type" in message;
|
|
46
50
|
};
|
|
47
51
|
const isResponseMessage = (message) => {
|
|
48
|
-
|
|
52
|
+
return !("type" in message);
|
|
49
53
|
};
|
|
50
54
|
const isSuccessResponseMessage = (message) => {
|
|
51
|
-
|
|
55
|
+
return isResponseMessage(message) && !("error" in message);
|
|
52
56
|
};
|
|
53
57
|
const isErrorResponseMessage = (message) => {
|
|
54
|
-
|
|
55
|
-
};
|
|
56
|
-
export {
|
|
57
|
-
createErrorResponseMessage,
|
|
58
|
-
createRequestMessage,
|
|
59
|
-
createSuccessResponseMessage,
|
|
60
|
-
isErrorResponseMessage,
|
|
61
|
-
isRequestMessage,
|
|
62
|
-
isResponseMessage,
|
|
63
|
-
isSuccessResponseMessage,
|
|
64
|
-
validateMessage
|
|
58
|
+
return isResponseMessage(message) && !("data" in message);
|
|
65
59
|
};
|
|
66
|
-
|
|
60
|
+
|
|
61
|
+
//#endregion
|
|
62
|
+
export { createErrorResponseMessage, createRequestMessage, createSuccessResponseMessage, isErrorResponseMessage, isRequestMessage, isResponseMessage, isSuccessResponseMessage, validateMessage };
|
|
63
|
+
//# sourceMappingURL=messages.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"messages.js","sources":["
|
|
1
|
+
{"version":3,"file":"messages.js","names":[],"sources":["../../src/channel/messages.ts"],"sourcesContent":["import type {\n\tErrorResponseMessage,\n\tRequestMessage,\n\tSuccessResponseMessage,\n\tUnknownErrorResponseMessage,\n\tUnknownMessage,\n\tUnknownRequestMessage,\n\tUnknownResponseMessage,\n\tUnknownSuccessResponseMessage,\n} from \"./types\"\n\n// Adapted from https://github.com/jshttp/statuses/blob/770a97d931c1bb40ebbfefdbb77f0419601890b5/codes.json\nconst statuses = {\n\t200: \"ok\",\n\t201: \"created\",\n\n\t400: \"bad request\",\n\t500: \"internal server error\",\n\t501: \"not implemented\",\n}\n\nlet requestID = 0\n\nexport const createRequestMessage = <\n\tTType extends string = string,\n\tTData = undefined,\n>(\n\ttype: TType,\n\tdata: TData,\n\tprefix = \"\",\n): RequestMessage<TType, TData> => {\n\treturn {\n\t\trequestID: `${prefix}${requestID++}`,\n\t\ttype,\n\t\tdata,\n\t}\n}\n\nexport const createSuccessResponseMessage = <TData = undefined>(\n\trequestID: string,\n\tdata: TData,\n\tstatus: keyof typeof statuses = 200,\n): SuccessResponseMessage<TData> => {\n\tif (status >= 400) {\n\t\tthrow new TypeError(\n\t\t\t`Invalid success status code, expected status to be within \\`[100;400[\\`, got \\`${status}\\``,\n\t\t)\n\t}\n\n\treturn {\n\t\trequestID,\n\t\tstatus,\n\t\tmsg: statuses[status] ?? \"\",\n\t\tdata,\n\t}\n}\n\nexport const createErrorResponseMessage = <TError = undefined>(\n\trequestID: string,\n\terror: TError,\n\tstatus: keyof typeof statuses = 400,\n): ErrorResponseMessage<TError> => {\n\tif (status < 400) {\n\t\tthrow new TypeError(\n\t\t\t`Invalid error status code, expected status to be within \\`[400;600[\\`, got \\`${status}\\``,\n\t\t)\n\t}\n\n\treturn {\n\t\trequestID,\n\t\tstatus,\n\t\tmsg: statuses[status] ?? \"\",\n\t\terror,\n\t}\n}\n\nexport const validateMessage = (message: unknown): UnknownMessage => {\n\tif (typeof message !== \"object\" || message === null) {\n\t\tthrow new TypeError(\n\t\t\t`Invalid message received, expected message to be of type \\`object\\`, got \\`${typeof message}\\``,\n\t\t)\n\t} else if (\n\t\t!Object.keys(message).every((key) =>\n\t\t\t[\"requestID\", \"type\", \"data\", \"status\", \"msg\", \"error\"].includes(key),\n\t\t)\n\t) {\n\t\tthrow new TypeError(`Invalid message received: ${JSON.stringify(message)}`)\n\t} else if (\n\t\ttypeof (message as Record<string, unknown>).requestID !== \"string\"\n\t) {\n\t\tthrow new TypeError(\n\t\t\t`Invalid message received, expected \\`message.requestID\\` to be of type \\`string\\`, got \\`${typeof (\n\t\t\t\tmessage as Record<string, unknown>\n\t\t\t).id}\\``,\n\t\t)\n\t}\n\n\treturn message as UnknownMessage\n}\n\nexport const isRequestMessage = (\n\tmessage: UnknownMessage,\n): message is UnknownRequestMessage => {\n\treturn \"type\" in message\n}\n\nexport const isResponseMessage = (\n\tmessage: UnknownMessage,\n): message is UnknownResponseMessage => {\n\treturn !(\"type\" in message)\n}\n\nexport const isSuccessResponseMessage = (\n\tmessage: UnknownMessage,\n): message is UnknownSuccessResponseMessage => {\n\treturn isResponseMessage(message) && !(\"error\" in message)\n}\n\nexport const isErrorResponseMessage = (\n\tmessage: UnknownMessage,\n): message is UnknownErrorResponseMessage => {\n\treturn isResponseMessage(message) && !(\"data\" in message)\n}\n"],"mappings":";AAYA,MAAM,WAAW;CAChB,KAAK;CACL,KAAK;CAEL,KAAK;CACL,KAAK;CACL,KAAK;CACL;AAED,IAAI,YAAY;AAEhB,MAAa,wBAIZ,MACA,MACA,SAAS,OACyB;AAClC,QAAO;EACN,WAAW,GAAG,SAAS;EACvB;EACA;EACA;;AAGF,MAAa,gCACZ,aACA,MACA,SAAgC,QACG;AACnC,KAAI,UAAU,IACb,OAAM,IAAI,UACT,kFAAkF,OAAO,IACzF;AAGF,QAAO;EACN;EACA;EACA,KAAK,SAAS,WAAW;EACzB;EACA;;AAGF,MAAa,8BACZ,aACA,OACA,SAAgC,QACE;AAClC,KAAI,SAAS,IACZ,OAAM,IAAI,UACT,gFAAgF,OAAO,IACvF;AAGF,QAAO;EACN;EACA;EACA,KAAK,SAAS,WAAW;EACzB;EACA;;AAGF,MAAa,mBAAmB,YAAqC;AACpE,KAAI,OAAO,YAAY,YAAY,YAAY,KAC9C,OAAM,IAAI,UACT,8EAA8E,OAAO,QAAQ,IAC7F;UAED,CAAC,OAAO,KAAK,QAAQ,CAAC,OAAO,QAC5B;EAAC;EAAa;EAAQ;EAAQ;EAAU;EAAO;EAAQ,CAAC,SAAS,IAAI,CACrE,CAED,OAAM,IAAI,UAAU,6BAA6B,KAAK,UAAU,QAAQ,GAAG;UAE3E,OAAQ,QAAoC,cAAc,SAE1D,OAAM,IAAI,UACT,4FAA4F,OAC3F,QACC,GAAG,IACL;AAGF,QAAO;;AAGR,MAAa,oBACZ,YACsC;AACtC,QAAO,UAAU;;AAGlB,MAAa,qBACZ,YACuC;AACvC,QAAO,EAAE,UAAU;;AAGpB,MAAa,4BACZ,YAC8C;AAC9C,QAAO,kBAAkB,QAAQ,IAAI,EAAE,WAAW;;AAGnD,MAAa,0BACZ,YAC4C;AAC5C,QAAO,kBAAkB,QAAQ,IAAI,EAAE,UAAU"}
|
package/dist/channel/types.cjs
CHANGED
|
@@ -1,11 +1,15 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
}
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
}
|
|
11
|
-
|
|
1
|
+
|
|
2
|
+
//#region src/channel/types.ts
|
|
3
|
+
let InternalEmitterRequestType = /* @__PURE__ */ function(InternalEmitterRequestType$1) {
|
|
4
|
+
InternalEmitterRequestType$1["Connect"] = "connect";
|
|
5
|
+
return InternalEmitterRequestType$1;
|
|
6
|
+
}({});
|
|
7
|
+
let InternalReceiverRequestType = /* @__PURE__ */ function(InternalReceiverRequestType$1) {
|
|
8
|
+
InternalReceiverRequestType$1["Ready"] = "ready";
|
|
9
|
+
return InternalReceiverRequestType$1;
|
|
10
|
+
}({});
|
|
11
|
+
|
|
12
|
+
//#endregion
|
|
13
|
+
exports.InternalEmitterRequestType = InternalEmitterRequestType;
|
|
14
|
+
exports.InternalReceiverRequestType = InternalReceiverRequestType;
|
|
15
|
+
//# sourceMappingURL=types.cjs.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"types.cjs","sources":["
|
|
1
|
+
{"version":3,"file":"types.cjs","names":[],"sources":["../../src/channel/types.ts"],"sourcesContent":["// Messages\nexport type MessageBase = {\n\trequestID: string\n}\n\nexport type RequestMessage<TType extends string = string, TData = void> = {\n\ttype: TType\n\tdata: TData\n} & MessageBase\n\nexport type ResponseMessageBase = {\n\tstatus: number\n\tmsg: string\n} & MessageBase\n\nexport type SuccessResponseMessage<TData = void> = {\n\tdata: TData\n\terror?: never\n} & ResponseMessageBase\n\nexport type ErrorResponseMessage<TError = unknown> = {\n\tdata?: never\n\terror: unknown | TError\n} & ResponseMessageBase\n\nexport type ResponseMessage<TData = void, TError = unknown> =\n\t| SuccessResponseMessage<TData>\n\t| ErrorResponseMessage<TError>\n\nexport type ExtractSuccessResponseMessage<\n\tTResponse extends UnknownResponseMessage,\n> = Extract<TResponse, { error?: never }>\n\nexport type ExtractErrorResponseMessage<\n\tTResponse extends UnknownResponseMessage,\n> = Extract<TResponse, { data?: never }>\n\n// Unknown messages\nexport type UnknownRequestMessage = RequestMessage<string, unknown>\n\nexport type UnknownSuccessResponseMessage = SuccessResponseMessage<unknown>\n\nexport type UnknownErrorResponseMessage = ErrorResponseMessage<unknown>\n\nexport type UnknownResponseMessage =\n\t| UnknownSuccessResponseMessage\n\t| UnknownErrorResponseMessage\n\nexport type UnknownMessage = UnknownRequestMessage | UnknownResponseMessage\n\n// Transactions\nexport type Transaction<\n\tTRequest extends UnknownRequestMessage,\n\tTResponse extends UnknownResponseMessage = ResponseMessage<void>,\n> = {\n\trequest: TRequest\n\tresponse: TResponse\n}\n\nexport type TransactionMethod<\n\tTTransaction extends Transaction<\n\t\tUnknownRequestMessage,\n\t\tUnknownResponseMessage\n\t>,\n> = (\n\tdata: TTransaction[\"request\"][\"data\"],\n) => Promise<ExtractSuccessResponseMessage<TTransaction[\"response\"]>>\n\nexport type TransactionHandler<\n\tTTransaction extends Transaction<\n\t\tUnknownRequestMessage,\n\t\tUnknownResponseMessage\n\t>,\n> = (\n\trequest: TTransaction[\"request\"],\n\tresponse: {\n\t\tsuccess: (\n\t\t\tdata: ExtractSuccessResponseMessage<TTransaction[\"response\"]>[\"data\"],\n\t\t\tstatus?: number,\n\t\t) => ExtractSuccessResponseMessage<TTransaction[\"response\"]>\n\t\terror: (\n\t\t\terror: ExtractErrorResponseMessage<TTransaction[\"response\"]>[\"error\"],\n\t\t\tstatus?: number,\n\t\t) => ExtractErrorResponseMessage<TTransaction[\"response\"]>\n\t},\n) => Promise<TTransaction[\"response\"]> | TTransaction[\"response\"]\n\nexport type TransactionsMethods<\n\tTTransactions extends Record<string, UnknownTransaction>,\n> = {\n\t[Key in keyof TTransactions]: TransactionMethod<TTransactions[Key]>\n}\n\nexport type TransactionsHandlers<\n\tTTransactions extends Record<string, UnknownTransaction>,\n> = {\n\t[Key in keyof TTransactions]: TransactionHandler<TTransactions[Key]>\n}\n\n// Unknown transactions\nexport type UnknownTransaction = Transaction<\n\tUnknownRequestMessage,\n\tUnknownResponseMessage\n>\n\nexport type UnknownTransactionMethod = TransactionMethod<UnknownTransaction>\n\nexport type UnknownTransactionHandler = TransactionHandler<UnknownTransaction>\n\n// Emitter\nexport enum InternalEmitterRequestType {\n\tConnect = \"connect\",\n}\n\nexport type InternalEmitterTransactions<\n\tTReceiverOptions extends Record<string, unknown> = Record<string, unknown>,\n> = {\n\t[InternalEmitterRequestType.Connect]: Transaction<\n\t\tRequestMessage<\n\t\t\tInternalEmitterRequestType.Connect,\n\t\t\t| Partial<\n\t\t\t\t\tOmit<TReceiverOptions, \"debug\" | \"requestIDPrefix\" | \"readyTimeout\">\n\t\t\t >\n\t\t\t| undefined\n\t\t>\n\t>\n}\n\n// Receiver\nexport enum InternalReceiverRequestType {\n\tReady = \"ready\",\n}\n\nexport type InternalReceiverTransactions = {\n\t[InternalReceiverRequestType.Ready]: Transaction<\n\t\tRequestMessage<InternalReceiverRequestType.Ready>\n\t>\n}\n"],"mappings":";;AA8GA,IAAY,oFAAL;AACN;;;AAkBD,IAAY,sFAAL;AACN"}
|
|
@@ -0,0 +1,53 @@
|
|
|
1
|
+
//#region src/channel/types.d.ts
|
|
2
|
+
type MessageBase = {
|
|
3
|
+
requestID: string;
|
|
4
|
+
};
|
|
5
|
+
type RequestMessage<TType extends string = string, TData = void> = {
|
|
6
|
+
type: TType;
|
|
7
|
+
data: TData;
|
|
8
|
+
} & MessageBase;
|
|
9
|
+
type ResponseMessageBase = {
|
|
10
|
+
status: number;
|
|
11
|
+
msg: string;
|
|
12
|
+
} & MessageBase;
|
|
13
|
+
type SuccessResponseMessage<TData = void> = {
|
|
14
|
+
data: TData;
|
|
15
|
+
error?: never;
|
|
16
|
+
} & ResponseMessageBase;
|
|
17
|
+
type ErrorResponseMessage<TError = unknown> = {
|
|
18
|
+
data?: never;
|
|
19
|
+
error: unknown | TError;
|
|
20
|
+
} & ResponseMessageBase;
|
|
21
|
+
type ResponseMessage<TData = void, TError = unknown> = SuccessResponseMessage<TData> | ErrorResponseMessage<TError>;
|
|
22
|
+
type ExtractSuccessResponseMessage<TResponse extends UnknownResponseMessage> = Extract<TResponse, {
|
|
23
|
+
error?: never;
|
|
24
|
+
}>;
|
|
25
|
+
type ExtractErrorResponseMessage<TResponse extends UnknownResponseMessage> = Extract<TResponse, {
|
|
26
|
+
data?: never;
|
|
27
|
+
}>;
|
|
28
|
+
type UnknownRequestMessage = RequestMessage<string, unknown>;
|
|
29
|
+
type UnknownSuccessResponseMessage = SuccessResponseMessage<unknown>;
|
|
30
|
+
type UnknownErrorResponseMessage = ErrorResponseMessage<unknown>;
|
|
31
|
+
type UnknownResponseMessage = UnknownSuccessResponseMessage | UnknownErrorResponseMessage;
|
|
32
|
+
type UnknownMessage = UnknownRequestMessage | UnknownResponseMessage;
|
|
33
|
+
type Transaction<TRequest extends UnknownRequestMessage, TResponse extends UnknownResponseMessage = ResponseMessage<void>> = {
|
|
34
|
+
request: TRequest;
|
|
35
|
+
response: TResponse;
|
|
36
|
+
};
|
|
37
|
+
type TransactionMethod<TTransaction extends Transaction<UnknownRequestMessage, UnknownResponseMessage>> = (data: TTransaction["request"]["data"]) => Promise<ExtractSuccessResponseMessage<TTransaction["response"]>>;
|
|
38
|
+
type TransactionHandler<TTransaction extends Transaction<UnknownRequestMessage, UnknownResponseMessage>> = (request: TTransaction["request"], response: {
|
|
39
|
+
success: (data: ExtractSuccessResponseMessage<TTransaction["response"]>["data"], status?: number) => ExtractSuccessResponseMessage<TTransaction["response"]>;
|
|
40
|
+
error: (error: ExtractErrorResponseMessage<TTransaction["response"]>["error"], status?: number) => ExtractErrorResponseMessage<TTransaction["response"]>;
|
|
41
|
+
}) => Promise<TTransaction["response"]> | TTransaction["response"];
|
|
42
|
+
type TransactionsMethods<TTransactions extends Record<string, UnknownTransaction>> = { [Key in keyof TTransactions]: TransactionMethod<TTransactions[Key]> };
|
|
43
|
+
type TransactionsHandlers<TTransactions extends Record<string, UnknownTransaction>> = { [Key in keyof TTransactions]: TransactionHandler<TTransactions[Key]> };
|
|
44
|
+
type UnknownTransaction = Transaction<UnknownRequestMessage, UnknownResponseMessage>;
|
|
45
|
+
declare enum InternalEmitterRequestType {
|
|
46
|
+
Connect = "connect",
|
|
47
|
+
}
|
|
48
|
+
type InternalEmitterTransactions<TReceiverOptions extends Record<string, unknown> = Record<string, unknown>> = {
|
|
49
|
+
[InternalEmitterRequestType.Connect]: Transaction<RequestMessage<InternalEmitterRequestType.Connect, Partial<Omit<TReceiverOptions, "debug" | "requestIDPrefix" | "readyTimeout">> | undefined>>;
|
|
50
|
+
};
|
|
51
|
+
//#endregion
|
|
52
|
+
export { ErrorResponseMessage, ExtractSuccessResponseMessage, InternalEmitterTransactions, RequestMessage, ResponseMessage, SuccessResponseMessage, Transaction, TransactionMethod, TransactionsHandlers, TransactionsMethods, UnknownErrorResponseMessage, UnknownMessage, UnknownRequestMessage, UnknownResponseMessage, UnknownSuccessResponseMessage, UnknownTransaction };
|
|
53
|
+
//# sourceMappingURL=types.d.cts.map
|
package/dist/channel/types.d.ts
CHANGED
|
@@ -1,61 +1,53 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
1
|
+
//#region src/channel/types.d.ts
|
|
2
|
+
type MessageBase = {
|
|
3
|
+
requestID: string;
|
|
3
4
|
};
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
5
|
+
type RequestMessage<TType extends string = string, TData = void> = {
|
|
6
|
+
type: TType;
|
|
7
|
+
data: TData;
|
|
7
8
|
} & MessageBase;
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
9
|
+
type ResponseMessageBase = {
|
|
10
|
+
status: number;
|
|
11
|
+
msg: string;
|
|
11
12
|
} & MessageBase;
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
13
|
+
type SuccessResponseMessage<TData = void> = {
|
|
14
|
+
data: TData;
|
|
15
|
+
error?: never;
|
|
15
16
|
} & ResponseMessageBase;
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
17
|
+
type ErrorResponseMessage<TError = unknown> = {
|
|
18
|
+
data?: never;
|
|
19
|
+
error: unknown | TError;
|
|
19
20
|
} & ResponseMessageBase;
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
21
|
+
type ResponseMessage<TData = void, TError = unknown> = SuccessResponseMessage<TData> | ErrorResponseMessage<TError>;
|
|
22
|
+
type ExtractSuccessResponseMessage<TResponse extends UnknownResponseMessage> = Extract<TResponse, {
|
|
23
|
+
error?: never;
|
|
23
24
|
}>;
|
|
24
|
-
|
|
25
|
-
|
|
25
|
+
type ExtractErrorResponseMessage<TResponse extends UnknownResponseMessage> = Extract<TResponse, {
|
|
26
|
+
data?: never;
|
|
26
27
|
}>;
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
28
|
+
type UnknownRequestMessage = RequestMessage<string, unknown>;
|
|
29
|
+
type UnknownSuccessResponseMessage = SuccessResponseMessage<unknown>;
|
|
30
|
+
type UnknownErrorResponseMessage = ErrorResponseMessage<unknown>;
|
|
31
|
+
type UnknownResponseMessage = UnknownSuccessResponseMessage | UnknownErrorResponseMessage;
|
|
32
|
+
type UnknownMessage = UnknownRequestMessage | UnknownResponseMessage;
|
|
33
|
+
type Transaction<TRequest extends UnknownRequestMessage, TResponse extends UnknownResponseMessage = ResponseMessage<void>> = {
|
|
34
|
+
request: TRequest;
|
|
35
|
+
response: TResponse;
|
|
35
36
|
};
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
37
|
+
type TransactionMethod<TTransaction extends Transaction<UnknownRequestMessage, UnknownResponseMessage>> = (data: TTransaction["request"]["data"]) => Promise<ExtractSuccessResponseMessage<TTransaction["response"]>>;
|
|
38
|
+
type TransactionHandler<TTransaction extends Transaction<UnknownRequestMessage, UnknownResponseMessage>> = (request: TTransaction["request"], response: {
|
|
39
|
+
success: (data: ExtractSuccessResponseMessage<TTransaction["response"]>["data"], status?: number) => ExtractSuccessResponseMessage<TTransaction["response"]>;
|
|
40
|
+
error: (error: ExtractErrorResponseMessage<TTransaction["response"]>["error"], status?: number) => ExtractErrorResponseMessage<TTransaction["response"]>;
|
|
40
41
|
}) => Promise<TTransaction["response"]> | TTransaction["response"];
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
};
|
|
47
|
-
export type UnknownTransaction = Transaction<UnknownRequestMessage, UnknownResponseMessage>;
|
|
48
|
-
export type UnknownTransactionMethod = TransactionMethod<UnknownTransaction>;
|
|
49
|
-
export type UnknownTransactionHandler = TransactionHandler<UnknownTransaction>;
|
|
50
|
-
export declare enum InternalEmitterRequestType {
|
|
51
|
-
Connect = "connect"
|
|
52
|
-
}
|
|
53
|
-
export type InternalEmitterTransactions<TReceiverOptions extends Record<string, unknown> = Record<string, unknown>> = {
|
|
54
|
-
[InternalEmitterRequestType.Connect]: Transaction<RequestMessage<InternalEmitterRequestType.Connect, Partial<Omit<TReceiverOptions, "debug" | "requestIDPrefix" | "readyTimeout">> | undefined>>;
|
|
55
|
-
};
|
|
56
|
-
export declare enum InternalReceiverRequestType {
|
|
57
|
-
Ready = "ready"
|
|
42
|
+
type TransactionsMethods<TTransactions extends Record<string, UnknownTransaction>> = { [Key in keyof TTransactions]: TransactionMethod<TTransactions[Key]> };
|
|
43
|
+
type TransactionsHandlers<TTransactions extends Record<string, UnknownTransaction>> = { [Key in keyof TTransactions]: TransactionHandler<TTransactions[Key]> };
|
|
44
|
+
type UnknownTransaction = Transaction<UnknownRequestMessage, UnknownResponseMessage>;
|
|
45
|
+
declare enum InternalEmitterRequestType {
|
|
46
|
+
Connect = "connect",
|
|
58
47
|
}
|
|
59
|
-
|
|
60
|
-
|
|
48
|
+
type InternalEmitterTransactions<TReceiverOptions extends Record<string, unknown> = Record<string, unknown>> = {
|
|
49
|
+
[InternalEmitterRequestType.Connect]: Transaction<RequestMessage<InternalEmitterRequestType.Connect, Partial<Omit<TReceiverOptions, "debug" | "requestIDPrefix" | "readyTimeout">> | undefined>>;
|
|
61
50
|
};
|
|
51
|
+
//#endregion
|
|
52
|
+
export { ErrorResponseMessage, ExtractSuccessResponseMessage, InternalEmitterTransactions, RequestMessage, ResponseMessage, SuccessResponseMessage, Transaction, TransactionMethod, TransactionsHandlers, TransactionsMethods, UnknownErrorResponseMessage, UnknownMessage, UnknownRequestMessage, UnknownResponseMessage, UnknownSuccessResponseMessage, UnknownTransaction };
|
|
53
|
+
//# sourceMappingURL=types.d.ts.map
|
package/dist/channel/types.js
CHANGED
|
@@ -1,13 +1,13 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
};
|
|
13
|
-
//# sourceMappingURL=types.js.map
|
|
1
|
+
//#region src/channel/types.ts
|
|
2
|
+
let InternalEmitterRequestType = /* @__PURE__ */ function(InternalEmitterRequestType$1) {
|
|
3
|
+
InternalEmitterRequestType$1["Connect"] = "connect";
|
|
4
|
+
return InternalEmitterRequestType$1;
|
|
5
|
+
}({});
|
|
6
|
+
let InternalReceiverRequestType = /* @__PURE__ */ function(InternalReceiverRequestType$1) {
|
|
7
|
+
InternalReceiverRequestType$1["Ready"] = "ready";
|
|
8
|
+
return InternalReceiverRequestType$1;
|
|
9
|
+
}({});
|
|
10
|
+
|
|
11
|
+
//#endregion
|
|
12
|
+
export { InternalEmitterRequestType, InternalReceiverRequestType };
|
|
13
|
+
//# sourceMappingURL=types.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"types.js","sources":["
|
|
1
|
+
{"version":3,"file":"types.js","names":[],"sources":["../../src/channel/types.ts"],"sourcesContent":["// Messages\nexport type MessageBase = {\n\trequestID: string\n}\n\nexport type RequestMessage<TType extends string = string, TData = void> = {\n\ttype: TType\n\tdata: TData\n} & MessageBase\n\nexport type ResponseMessageBase = {\n\tstatus: number\n\tmsg: string\n} & MessageBase\n\nexport type SuccessResponseMessage<TData = void> = {\n\tdata: TData\n\terror?: never\n} & ResponseMessageBase\n\nexport type ErrorResponseMessage<TError = unknown> = {\n\tdata?: never\n\terror: unknown | TError\n} & ResponseMessageBase\n\nexport type ResponseMessage<TData = void, TError = unknown> =\n\t| SuccessResponseMessage<TData>\n\t| ErrorResponseMessage<TError>\n\nexport type ExtractSuccessResponseMessage<\n\tTResponse extends UnknownResponseMessage,\n> = Extract<TResponse, { error?: never }>\n\nexport type ExtractErrorResponseMessage<\n\tTResponse extends UnknownResponseMessage,\n> = Extract<TResponse, { data?: never }>\n\n// Unknown messages\nexport type UnknownRequestMessage = RequestMessage<string, unknown>\n\nexport type UnknownSuccessResponseMessage = SuccessResponseMessage<unknown>\n\nexport type UnknownErrorResponseMessage = ErrorResponseMessage<unknown>\n\nexport type UnknownResponseMessage =\n\t| UnknownSuccessResponseMessage\n\t| UnknownErrorResponseMessage\n\nexport type UnknownMessage = UnknownRequestMessage | UnknownResponseMessage\n\n// Transactions\nexport type Transaction<\n\tTRequest extends UnknownRequestMessage,\n\tTResponse extends UnknownResponseMessage = ResponseMessage<void>,\n> = {\n\trequest: TRequest\n\tresponse: TResponse\n}\n\nexport type TransactionMethod<\n\tTTransaction extends Transaction<\n\t\tUnknownRequestMessage,\n\t\tUnknownResponseMessage\n\t>,\n> = (\n\tdata: TTransaction[\"request\"][\"data\"],\n) => Promise<ExtractSuccessResponseMessage<TTransaction[\"response\"]>>\n\nexport type TransactionHandler<\n\tTTransaction extends Transaction<\n\t\tUnknownRequestMessage,\n\t\tUnknownResponseMessage\n\t>,\n> = (\n\trequest: TTransaction[\"request\"],\n\tresponse: {\n\t\tsuccess: (\n\t\t\tdata: ExtractSuccessResponseMessage<TTransaction[\"response\"]>[\"data\"],\n\t\t\tstatus?: number,\n\t\t) => ExtractSuccessResponseMessage<TTransaction[\"response\"]>\n\t\terror: (\n\t\t\terror: ExtractErrorResponseMessage<TTransaction[\"response\"]>[\"error\"],\n\t\t\tstatus?: number,\n\t\t) => ExtractErrorResponseMessage<TTransaction[\"response\"]>\n\t},\n) => Promise<TTransaction[\"response\"]> | TTransaction[\"response\"]\n\nexport type TransactionsMethods<\n\tTTransactions extends Record<string, UnknownTransaction>,\n> = {\n\t[Key in keyof TTransactions]: TransactionMethod<TTransactions[Key]>\n}\n\nexport type TransactionsHandlers<\n\tTTransactions extends Record<string, UnknownTransaction>,\n> = {\n\t[Key in keyof TTransactions]: TransactionHandler<TTransactions[Key]>\n}\n\n// Unknown transactions\nexport type UnknownTransaction = Transaction<\n\tUnknownRequestMessage,\n\tUnknownResponseMessage\n>\n\nexport type UnknownTransactionMethod = TransactionMethod<UnknownTransaction>\n\nexport type UnknownTransactionHandler = TransactionHandler<UnknownTransaction>\n\n// Emitter\nexport enum InternalEmitterRequestType {\n\tConnect = \"connect\",\n}\n\nexport type InternalEmitterTransactions<\n\tTReceiverOptions extends Record<string, unknown> = Record<string, unknown>,\n> = {\n\t[InternalEmitterRequestType.Connect]: Transaction<\n\t\tRequestMessage<\n\t\t\tInternalEmitterRequestType.Connect,\n\t\t\t| Partial<\n\t\t\t\t\tOmit<TReceiverOptions, \"debug\" | \"requestIDPrefix\" | \"readyTimeout\">\n\t\t\t >\n\t\t\t| undefined\n\t\t>\n\t>\n}\n\n// Receiver\nexport enum InternalReceiverRequestType {\n\tReady = \"ready\",\n}\n\nexport type InternalReceiverTransactions = {\n\t[InternalReceiverRequestType.Ready]: Transaction<\n\t\tRequestMessage<InternalReceiverRequestType.Ready>\n\t>\n}\n"],"mappings":";AA8GA,IAAY,oFAAL;AACN;;;AAkBD,IAAY,sFAAL;AACN"}
|
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
import { SimulatorAPI } from "./SimulatorAPI.cjs";
|
|
2
|
+
import { SimulatorClient } from "./SimulatorClient.cjs";
|
|
3
|
+
|
|
4
|
+
//#region src/globalExtensions.d.ts
|
|
5
|
+
declare global {
|
|
6
|
+
interface Window {
|
|
7
|
+
prismic?: {
|
|
8
|
+
sliceSimulator?: {
|
|
9
|
+
api?: SimulatorAPI[];
|
|
10
|
+
client?: SimulatorClient[];
|
|
11
|
+
};
|
|
12
|
+
};
|
|
13
|
+
}
|
|
14
|
+
}
|
|
15
|
+
//# sourceMappingURL=globalExtensions.d.cts.map
|
|
@@ -1,12 +1,15 @@
|
|
|
1
|
-
import { SimulatorAPI } from "./SimulatorAPI";
|
|
2
|
-
import { SimulatorClient } from "./SimulatorClient";
|
|
1
|
+
import { SimulatorAPI } from "./SimulatorAPI.js";
|
|
2
|
+
import { SimulatorClient } from "./SimulatorClient.js";
|
|
3
|
+
|
|
4
|
+
//#region src/globalExtensions.d.ts
|
|
3
5
|
declare global {
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
6
|
+
interface Window {
|
|
7
|
+
prismic?: {
|
|
8
|
+
sliceSimulator?: {
|
|
9
|
+
api?: SimulatorAPI[];
|
|
10
|
+
client?: SimulatorClient[];
|
|
11
|
+
};
|
|
12
|
+
};
|
|
13
|
+
}
|
|
12
14
|
}
|
|
15
|
+
//# sourceMappingURL=globalExtensions.d.ts.map
|
package/dist/index.cjs
CHANGED
|
@@ -1,33 +1,24 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
const
|
|
4
|
-
const
|
|
5
|
-
const
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
exports.
|
|
10
|
-
exports.
|
|
11
|
-
exports.
|
|
12
|
-
exports.
|
|
13
|
-
exports.
|
|
14
|
-
exports.
|
|
15
|
-
exports.
|
|
16
|
-
exports.
|
|
17
|
-
exports.
|
|
18
|
-
exports.
|
|
19
|
-
exports.
|
|
20
|
-
exports.
|
|
21
|
-
exports.
|
|
22
|
-
exports.
|
|
23
|
-
exports.
|
|
24
|
-
exports.validateMessage =
|
|
25
|
-
Object.defineProperty(exports, "APIRequestType", {
|
|
26
|
-
enumerable: true,
|
|
27
|
-
get: () => types.APIRequestType
|
|
28
|
-
});
|
|
29
|
-
Object.defineProperty(exports, "ClientRequestType", {
|
|
30
|
-
enumerable: true,
|
|
31
|
-
get: () => types.ClientRequestType
|
|
32
|
-
});
|
|
33
|
-
//# sourceMappingURL=index.cjs.map
|
|
1
|
+
const require_types = require('./types.cjs');
|
|
2
|
+
const require_errors = require('./channel/errors.cjs');
|
|
3
|
+
const require_messages = require('./channel/messages.cjs');
|
|
4
|
+
const require_SimulatorClient = require('./SimulatorClient.cjs');
|
|
5
|
+
const require_SimulatorAPI = require('./SimulatorAPI.cjs');
|
|
6
|
+
|
|
7
|
+
exports.APIRequestType = require_types.APIRequestType;
|
|
8
|
+
exports.ChannelNotSetError = require_errors.ChannelNotSetError;
|
|
9
|
+
exports.ClientRequestType = require_types.ClientRequestType;
|
|
10
|
+
exports.ConnectionTimeoutError = require_errors.ConnectionTimeoutError;
|
|
11
|
+
exports.NotReadyError = require_errors.NotReadyError;
|
|
12
|
+
exports.PortNotSetError = require_errors.PortNotSetError;
|
|
13
|
+
exports.RequestTimeoutError = require_errors.RequestTimeoutError;
|
|
14
|
+
exports.ResponseError = require_errors.ResponseError;
|
|
15
|
+
exports.SimulatorAPI = require_SimulatorAPI.SimulatorAPI;
|
|
16
|
+
exports.SimulatorClient = require_SimulatorClient.SimulatorClient;
|
|
17
|
+
exports.TooManyConcurrentRequestsError = require_errors.TooManyConcurrentRequestsError;
|
|
18
|
+
exports.isErrorResponseMessage = require_messages.isErrorResponseMessage;
|
|
19
|
+
exports.isRequestMessage = require_messages.isRequestMessage;
|
|
20
|
+
exports.isResponseMessage = require_messages.isResponseMessage;
|
|
21
|
+
exports.isSuccessResponseMessage = require_messages.isSuccessResponseMessage;
|
|
22
|
+
exports.simulatorAPIDefaultOptions = require_SimulatorAPI.simulatorAPIDefaultOptions;
|
|
23
|
+
exports.simulatorClientDefaultOptions = require_SimulatorClient.simulatorClientDefaultOptions;
|
|
24
|
+
exports.validateMessage = require_messages.validateMessage;
|
package/dist/index.d.cts
ADDED
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
import { ErrorResponseMessage, RequestMessage, ResponseMessage, SuccessResponseMessage } from "./channel/types.cjs";
|
|
2
|
+
import { AllChannelReceiverOptions } from "./channel/ChannelReceiver.cjs";
|
|
3
|
+
import { AllChannelEmitterOptions } from "./channel/ChannelEmitter.cjs";
|
|
4
|
+
import { isErrorResponseMessage, isRequestMessage, isResponseMessage, isSuccessResponseMessage, validateMessage } from "./channel/messages.cjs";
|
|
5
|
+
import { ChannelNotSetError, ConnectionTimeoutError, NotReadyError, PortNotSetError, RequestTimeoutError, ResponseError, TooManyConcurrentRequestsError } from "./channel/errors.cjs";
|
|
6
|
+
import { APIRequestType, APITransactions, ActiveSlice, ClientRequestType, ClientTransactions, SliceZoneSize } from "./types.cjs";
|
|
7
|
+
import { SimulatorAPI, SimulatorAPIOptions, simulatorAPIDefaultOptions } from "./SimulatorAPI.cjs";
|
|
8
|
+
import { SimulatorClient, simulatorClientDefaultOptions } from "./SimulatorClient.cjs";
|
|
9
|
+
import "./globalExtensions.cjs";
|
|
10
|
+
export { APIRequestType, type APITransactions, type ActiveSlice, type AllChannelEmitterOptions, type AllChannelReceiverOptions, ChannelNotSetError, ClientRequestType, type ClientTransactions, ConnectionTimeoutError, type ErrorResponseMessage, NotReadyError, PortNotSetError, type RequestMessage, RequestTimeoutError, ResponseError, type ResponseMessage, SimulatorAPI, type SimulatorAPIOptions, SimulatorClient, type SliceZoneSize, type SuccessResponseMessage, TooManyConcurrentRequestsError, isErrorResponseMessage, isRequestMessage, isResponseMessage, isSuccessResponseMessage, simulatorAPIDefaultOptions, simulatorClientDefaultOptions, validateMessage };
|