@synnaxlabs/client 0.47.0 → 0.48.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/.turbo/turbo-build.log +7 -7
- package/dist/client.cjs +35 -35
- package/dist/client.js +4567 -4479
- package/dist/eslint.config.d.ts +3 -2
- package/dist/eslint.config.d.ts.map +1 -1
- package/dist/src/channel/payload.d.ts +1 -0
- package/dist/src/channel/payload.d.ts.map +1 -1
- package/dist/src/client.d.ts +9 -5
- package/dist/src/client.d.ts.map +1 -1
- package/dist/src/connection/checker.d.ts +2 -3
- package/dist/src/connection/checker.d.ts.map +1 -1
- package/dist/src/connection.spec.d.ts +2 -0
- package/dist/src/connection.spec.d.ts.map +1 -0
- package/dist/src/framer/adapter.d.ts +2 -2
- package/dist/src/framer/adapter.d.ts.map +1 -1
- package/dist/src/framer/frame.d.ts +1 -0
- package/dist/src/framer/frame.d.ts.map +1 -1
- package/dist/src/framer/streamer.d.ts.map +1 -1
- package/dist/src/index.d.ts +2 -2
- package/dist/src/index.d.ts.map +1 -1
- package/dist/src/testutil/client.d.ts +3 -3
- package/dist/src/testutil/client.d.ts.map +1 -1
- package/eslint.config.ts +3 -1
- package/package.json +8 -8
- package/src/auth/auth.spec.ts +13 -13
- package/src/channel/payload.ts +2 -1
- package/src/client.ts +24 -10
- package/src/connection/checker.ts +10 -10
- package/src/connection/connection.spec.ts +13 -13
- package/src/connection.spec.ts +145 -0
- package/src/framer/adapter.spec.ts +339 -1
- package/src/framer/adapter.ts +23 -13
- package/src/framer/frame.spec.ts +296 -0
- package/src/framer/frame.ts +20 -1
- package/src/framer/iterator.ts +1 -1
- package/src/framer/streamer.spec.ts +57 -0
- package/src/framer/streamer.ts +6 -3
- package/src/index.ts +9 -2
- package/src/testutil/client.ts +4 -4
package/dist/eslint.config.d.ts
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"eslint.config.d.ts","sourceRoot":"","sources":["../eslint.config.ts"],"names":[],"mappings":";
|
|
1
|
+
{"version":3,"file":"eslint.config.d.ts","sourceRoot":"","sources":["../eslint.config.ts"],"names":[],"mappings":"AASA,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,QAAQ,CAAC;AAGrC,QAAA,MAAM,GAAG,EAAE,MAAM,CAAC,MAAM,EAAiD,CAAC;AAC1E,eAAe,GAAG,CAAC"}
|
|
@@ -98,6 +98,7 @@ export declare const newZ: z.ZodObject<{
|
|
|
98
98
|
value: bigint;
|
|
99
99
|
}>>, z.ZodPipe<z.ZodString, z.ZodTransform<TimeSpan, string>>, z.ZodPipe<z.ZodNumber, z.ZodTransform<TimeSpan, number>>, z.ZodPipe<z.ZodBigInt, z.ZodTransform<TimeSpan, bigint>>, z.ZodCustom<TimeSpan, TimeSpan>, z.ZodPipe<z.ZodCustom<import('@synnaxlabs/x').TimeStamp, import('@synnaxlabs/x').TimeStamp>, z.ZodTransform<TimeSpan, import('@synnaxlabs/x').TimeStamp>>, z.ZodPipe<z.ZodCustom<import('@synnaxlabs/x').Rate, import('@synnaxlabs/x').Rate>, z.ZodTransform<TimeSpan, import('@synnaxlabs/x').Rate>>]>>;
|
|
100
100
|
}, z.core.$strip>>]>>;
|
|
101
|
+
requires: z.ZodOptional<z.ZodUnion<readonly [z.ZodPipe<z.ZodUnion<readonly [z.ZodNull, z.ZodUndefined]>, z.ZodTransform<number[], null | undefined>>, z.ZodArray<z.ZodUnion<[z.ZodUInt32, z.ZodPipe<z.ZodString, z.ZodTransform<number, string>>]>>]>>;
|
|
101
102
|
}, z.core.$strip>;
|
|
102
103
|
export interface New extends Omit<z.input<typeof newZ>, "dataType" | "status" | "internal"> {
|
|
103
104
|
dataType: CrudeDataType;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"payload.d.ts","sourceRoot":"","sources":["../../../src/channel/payload.ts"],"names":[],"mappings":"AASA,OAAO,EAEL,KAAK,aAAa,EAClB,QAAQ,EAER,MAAM,EACN,QAAQ,EAET,MAAM,eAAe,CAAC;AACvB,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAGxB,eAAO,MAAM,IAAI,mFAMhB,CAAC;AACF,MAAM,MAAM,GAAG,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,IAAI,CAAC,CAAC;AACvC,MAAM,MAAM,IAAI,GAAG,GAAG,EAAE,CAAC;AACzB,eAAO,MAAM,KAAK,aAAa,CAAC;AAChC,MAAM,MAAM,IAAI,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,KAAK,CAAC,CAAC;AACzC,MAAM,MAAM,KAAK,GAAG,IAAI,EAAE,CAAC;AAC3B,MAAM,MAAM,SAAS,GAAG,GAAG,GAAG,IAAI,CAAC;AACnC,MAAM,MAAM,WAAW,GAAG,IAAI,GAAG,KAAK,CAAC;AACvC,MAAM,MAAM,eAAe,GAAG,GAAG,GAAG,IAAI,GAAG,IAAI,GAAG,KAAK,CAAC;AAExD,eAAO,MAAM,eAAe,wCAAyC,CAAC;AACtE,eAAO,MAAM,aAAa;;;;;EAA0B,CAAC;AACrD,MAAM,MAAM,aAAa,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,aAAa,CAAC,CAAC;AAE1D,eAAO,MAAM,UAAU;;;;;;;;;;;;;iBAIrB,CAAC;AAEH,MAAM,MAAM,SAAS,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,UAAU,CAAC,CAAC;AAEnD,eAAO,MAAM,OAAO,oCAAmB,CAAC;AACxC,MAAM,MAAM,MAAM,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,OAAO,CAAC,CAAC;AAC7C,eAAO,MAAM,QAAQ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;iBAcnB,CAAC;AACH,MAAM,WAAW,OAAQ,SAAQ,CAAC,CAAC,KAAK,CAAC,OAAO,QAAQ,CAAC;CAAG;AAE5D,eAAO,MAAM,IAAI
|
|
1
|
+
{"version":3,"file":"payload.d.ts","sourceRoot":"","sources":["../../../src/channel/payload.ts"],"names":[],"mappings":"AASA,OAAO,EAEL,KAAK,aAAa,EAClB,QAAQ,EAER,MAAM,EACN,QAAQ,EAET,MAAM,eAAe,CAAC;AACvB,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAGxB,eAAO,MAAM,IAAI,mFAMhB,CAAC;AACF,MAAM,MAAM,GAAG,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,IAAI,CAAC,CAAC;AACvC,MAAM,MAAM,IAAI,GAAG,GAAG,EAAE,CAAC;AACzB,eAAO,MAAM,KAAK,aAAa,CAAC;AAChC,MAAM,MAAM,IAAI,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,KAAK,CAAC,CAAC;AACzC,MAAM,MAAM,KAAK,GAAG,IAAI,EAAE,CAAC;AAC3B,MAAM,MAAM,SAAS,GAAG,GAAG,GAAG,IAAI,CAAC;AACnC,MAAM,MAAM,WAAW,GAAG,IAAI,GAAG,KAAK,CAAC;AACvC,MAAM,MAAM,eAAe,GAAG,GAAG,GAAG,IAAI,GAAG,IAAI,GAAG,KAAK,CAAC;AAExD,eAAO,MAAM,eAAe,wCAAyC,CAAC;AACtE,eAAO,MAAM,aAAa;;;;;EAA0B,CAAC;AACrD,MAAM,MAAM,aAAa,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,aAAa,CAAC,CAAC;AAE1D,eAAO,MAAM,UAAU;;;;;;;;;;;;;iBAIrB,CAAC;AAEH,MAAM,MAAM,SAAS,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,UAAU,CAAC,CAAC;AAEnD,eAAO,MAAM,OAAO,oCAAmB,CAAC;AACxC,MAAM,MAAM,MAAM,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,OAAO,CAAC,CAAC;AAC7C,eAAO,MAAM,QAAQ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;iBAcnB,CAAC;AACH,MAAM,WAAW,OAAQ,SAAQ,CAAC,CAAC,KAAK,CAAC,OAAO,QAAQ,CAAC;CAAG;AAE5D,eAAO,MAAM,IAAI;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;iBAUf,CAAC;AAEH,MAAM,WAAW,GACf,SAAQ,IAAI,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,IAAI,CAAC,EAAE,UAAU,GAAG,QAAQ,GAAG,UAAU,CAAC;IACtE,QAAQ,EAAE,aAAa,CAAC;CACzB;AAED,eAAO,MAAM,OAAO;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;OAIlB,CAAC;AACH,MAAM,MAAM,MAAM,GAAG,GAAG,GAAG,IAAI,GAAG,IAAI,GAAG,KAAK,GAAG,OAAO,GAAG,OAAO,EAAE,CAAC"}
|
package/dist/src/client.d.ts
CHANGED
|
@@ -14,7 +14,7 @@ import { ranger } from './ranger';
|
|
|
14
14
|
import { status } from './status';
|
|
15
15
|
import { user } from './user';
|
|
16
16
|
import { workspace } from './workspace';
|
|
17
|
-
export declare const
|
|
17
|
+
export declare const synnaxParamsZ: z.ZodObject<{
|
|
18
18
|
host: z.ZodString;
|
|
19
19
|
port: z.ZodUnion<[z.ZodNumber, z.ZodString]>;
|
|
20
20
|
username: z.ZodString;
|
|
@@ -36,9 +36,9 @@ export declare const synnaxPropsZ: z.ZodObject<{
|
|
|
36
36
|
scale: z.ZodOptional<z.ZodNumber>;
|
|
37
37
|
}, z.core.$strip>>;
|
|
38
38
|
}, z.core.$strip>;
|
|
39
|
-
export interface
|
|
39
|
+
export interface SynnaxParams extends z.input<typeof synnaxParamsZ> {
|
|
40
40
|
}
|
|
41
|
-
export interface
|
|
41
|
+
export interface ParsedSynnaxParams extends z.infer<typeof synnaxParamsZ> {
|
|
42
42
|
}
|
|
43
43
|
/**
|
|
44
44
|
* Client to perform operations against a Synnax cluster.
|
|
@@ -50,7 +50,7 @@ export interface ParsedSynnaxProps extends z.infer<typeof synnaxPropsZ> {
|
|
|
50
50
|
*/
|
|
51
51
|
export default class Synnax extends framer.Client {
|
|
52
52
|
readonly createdAt: TimeStamp;
|
|
53
|
-
readonly
|
|
53
|
+
readonly params: ParsedSynnaxParams;
|
|
54
54
|
readonly ranges: ranger.Client;
|
|
55
55
|
readonly channels: channel.Client;
|
|
56
56
|
readonly auth: auth.Client | undefined;
|
|
@@ -85,8 +85,12 @@ export default class Synnax extends framer.Client {
|
|
|
85
85
|
* A Synnax client must be closed when it is no longer needed. This will stop
|
|
86
86
|
* the client from polling the cluster for connectivity information.
|
|
87
87
|
*/
|
|
88
|
-
constructor(
|
|
88
|
+
constructor(params: SynnaxParams);
|
|
89
89
|
get key(): string;
|
|
90
90
|
close(): void;
|
|
91
91
|
}
|
|
92
|
+
export interface CheckConnectionParams extends Pick<SynnaxParams, "host" | "port" | "secure" | "retry" | "name"> {
|
|
93
|
+
}
|
|
94
|
+
export declare const checkConnection: (params: CheckConnectionParams) => Promise<connection.State>;
|
|
95
|
+
export declare const newConnectionChecker: (params: CheckConnectionParams) => connection.Checker;
|
|
92
96
|
//# sourceMappingURL=client.d.ts.map
|
package/dist/src/client.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"client.d.ts","sourceRoot":"","sources":["../../src/client.ts"],"names":[],"mappings":"AASA,OAAO,EAAW,QAAQ,EAAE,SAAS,EAAO,MAAM,eAAe,CAAC;AAClE,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAExB,OAAO,EAAE,MAAM,EAAE,MAAM,UAAU,CAAC;AAClC,OAAO,EAAE,GAAG,EAAE,MAAM,OAAO,CAAC;AAC5B,OAAO,EAAE,IAAI,EAAE,MAAM,QAAQ,CAAC;AAC9B,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AACpC,OAAO,EAAE,UAAU,EAAE,MAAM,cAAc,CAAC;AAC1C,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AAEpC,OAAO,EAAE,MAAM,EAAE,MAAM,UAAU,CAAC;AAClC,OAAO,EAAE,QAAQ,EAAE,MAAM,YAAY,CAAC;AAItC,OAAO,EAAE,KAAK,EAAE,MAAM,SAAS,CAAC;AAChC,OAAO,EAAE,QAAQ,EAAE,MAAM,YAAY,CAAC;AACtC,OAAO,EAAE,MAAM,EAAE,MAAM,UAAU,CAAC;AAClC,OAAO,EAAE,MAAM,EAAE,MAAM,UAAU,CAAC;AAElC,OAAO,EAAE,IAAI,EAAE,MAAM,QAAQ,CAAC;AAC9B,OAAO,EAAE,SAAS,EAAE,MAAM,aAAa,CAAC;AAExC,eAAO,MAAM,
|
|
1
|
+
{"version":3,"file":"client.d.ts","sourceRoot":"","sources":["../../src/client.ts"],"names":[],"mappings":"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"}
|
|
@@ -26,7 +26,6 @@ export interface State extends z.infer<typeof stateZ> {
|
|
|
26
26
|
}
|
|
27
27
|
/** Polls a synnax cluster for connectivity information. */
|
|
28
28
|
export declare class Checker {
|
|
29
|
-
private static readonly ENDPOINT;
|
|
30
29
|
static readonly DEFAULT: State;
|
|
31
30
|
private readonly _state;
|
|
32
31
|
private readonly pollFrequency;
|
|
@@ -57,7 +56,7 @@ export declare class Checker {
|
|
|
57
56
|
*/
|
|
58
57
|
constructor(client: UnaryClient, pollFreq: TimeSpan | undefined, clientVersion: string, name?: string);
|
|
59
58
|
/** Stops the connectivity client from polling the cluster for connectivity */
|
|
60
|
-
|
|
59
|
+
stop(): void;
|
|
61
60
|
/**
|
|
62
61
|
* Executes a connectivity check and updates the client status and error, as
|
|
63
62
|
* well as calling any registered change handlers.
|
|
@@ -67,6 +66,6 @@ export declare class Checker {
|
|
|
67
66
|
get state(): State;
|
|
68
67
|
/** @param callback - The function to call when the client status changes. */
|
|
69
68
|
onChange(callback: (state: State) => void): void;
|
|
70
|
-
private
|
|
69
|
+
private start;
|
|
71
70
|
}
|
|
72
71
|
//# sourceMappingURL=checker.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"checker.d.ts","sourceRoot":"","sources":["../../../src/connection/checker.ts"],"names":[],"mappings":"AASA,OAAO,KAAK,
|
|
1
|
+
{"version":3,"file":"checker.d.ts","sourceRoot":"","sources":["../../../src/connection/checker.ts"],"names":[],"mappings":"AASA,OAAO,EAAgB,KAAK,WAAW,EAAE,MAAM,uBAAuB,CAAC;AACvE,OAAO,EAAW,QAAQ,EAAE,MAAM,eAAe,CAAC;AAClD,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAExB,eAAO,MAAM,OAAO;;;;;EAAgE,CAAC;AACrF,MAAM,MAAM,MAAM,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,OAAO,CAAC,CAAC;AAE7C,eAAO,MAAM,MAAM;;;;;;;;;;;;;iBAQjB,CAAC;AACH,MAAM,WAAW,KAAM,SAAQ,CAAC,CAAC,KAAK,CAAC,OAAO,MAAM,CAAC;CAAG;AA4BxD,2DAA2D;AAC3D,qBAAa,OAAO;IAClB,MAAM,CAAC,QAAQ,CAAC,OAAO,EAAE,KAAK,CAAW;IACzC,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAQ;IAC/B,OAAO,CAAC,QAAQ,CAAC,aAAa,CAAwB;IACtD,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAc;IACrC,OAAO,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAS;IAC/B,OAAO,CAAC,QAAQ,CAAC,CAAiB;IAClC,OAAO,CAAC,QAAQ,CAAC,aAAa,CAAS;IACvC,OAAO,CAAC,QAAQ,CAAC,gBAAgB,CAAqC;IACtE,MAAM,CAAC,QAAQ,CAAC,gBAAgB;;;;;;;;;;;;;sBAAU;IAC1C,OAAO,CAAC,aAAa,CAAS;IAE9B;;;;OAIG;gBAED,MAAM,EAAE,WAAW,EACnB,QAAQ,EAAE,QAAQ,YAAuB,EACzC,aAAa,EAAE,MAAM,EACrB,IAAI,CAAC,EAAE,MAAM;IAWf,8EAA8E;IAC9E,IAAI,IAAI,IAAI;IAIZ;;;OAGG;IACG,KAAK,IAAI,OAAO,CAAC,KAAK,CAAC;IAqD7B,mDAAmD;IACnD,IAAI,KAAK,IAAI,KAAK,CAEjB;IAED,6EAA6E;IAC7E,QAAQ,CAAC,QAAQ,EAAE,CAAC,KAAK,EAAE,KAAK,KAAK,IAAI,GAAG,IAAI;IAIhD,OAAO,CAAC,KAAK;CAKd"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"connection.spec.d.ts","sourceRoot":"","sources":["../../src/connection.spec.ts"],"names":[],"mappings":""}
|
|
@@ -5,12 +5,12 @@ import { CrudeFrame, Frame } from './frame';
|
|
|
5
5
|
export declare class ReadAdapter {
|
|
6
6
|
private adapter;
|
|
7
7
|
retriever: channel.Retriever;
|
|
8
|
-
keys: channel.Key
|
|
8
|
+
keys: Set<channel.Key>;
|
|
9
9
|
codec: Codec;
|
|
10
10
|
private constructor();
|
|
11
11
|
static open(retriever: channel.Retriever, channels: channel.Params): Promise<ReadAdapter>;
|
|
12
12
|
update(channels: channel.Params): Promise<boolean>;
|
|
13
|
-
adapt(
|
|
13
|
+
adapt(frm: Frame): Frame;
|
|
14
14
|
}
|
|
15
15
|
export declare class WriteAdapter {
|
|
16
16
|
private adapter;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"adapter.d.ts","sourceRoot":"","sources":["../../../src/framer/adapter.ts"],"names":[],"mappings":"AASA,OAAO,EAAW,KAAK,WAAW,EAAU,MAAM,eAAe,CAAC;AAElE,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AAEpC,OAAO,EAAE,KAAK,EAAE,MAAM,gBAAgB,CAAC;AACvC,OAAO,EAAE,KAAK,UAAU,EAAE,KAAK,EAAE,MAAM,gBAAgB,CAAC;AAExD,qBAAa,WAAW;IACtB,OAAO,CAAC,OAAO,CAAwC;IACvD,SAAS,EAAE,OAAO,CAAC,SAAS,CAAC;IAC7B,IAAI,EAAE,OAAO,CAAC,GAAG,
|
|
1
|
+
{"version":3,"file":"adapter.d.ts","sourceRoot":"","sources":["../../../src/framer/adapter.ts"],"names":[],"mappings":"AASA,OAAO,EAAW,KAAK,WAAW,EAAU,MAAM,eAAe,CAAC;AAElE,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AAEpC,OAAO,EAAE,KAAK,EAAE,MAAM,gBAAgB,CAAC;AACvC,OAAO,EAAE,KAAK,UAAU,EAAE,KAAK,EAAE,MAAM,gBAAgB,CAAC;AAExD,qBAAa,WAAW;IACtB,OAAO,CAAC,OAAO,CAAwC;IACvD,SAAS,EAAE,OAAO,CAAC,SAAS,CAAC;IAC7B,IAAI,EAAE,GAAG,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC;IACvB,KAAK,EAAE,KAAK,CAAC;IAEb,OAAO;WAOM,IAAI,CACf,SAAS,EAAE,OAAO,CAAC,SAAS,EAC5B,QAAQ,EAAE,OAAO,CAAC,MAAM,GACvB,OAAO,CAAC,WAAW,CAAC;IAMjB,MAAM,CAAC,QAAQ,EAAE,OAAO,CAAC,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC;IA6BxD,KAAK,CAAC,GAAG,EAAE,KAAK,GAAG,KAAK;CAmBzB;AAED,qBAAa,YAAY;IACvB,OAAO,CAAC,OAAO,CAAwC;IACvD,SAAS,EAAE,OAAO,CAAC,SAAS,CAAC;IAC7B,IAAI,EAAE,OAAO,CAAC,GAAG,EAAE,CAAC;IACpB,KAAK,EAAE,KAAK,CAAC;IAEb,OAAO;WAOM,IAAI,CACf,SAAS,EAAE,OAAO,CAAC,SAAS,EAC5B,QAAQ,EAAE,OAAO,CAAC,MAAM,GACvB,OAAO,CAAC,YAAY,CAAC;IAMlB,WAAW,CAAC,IAAI,EAAE,OAAO,CAAC,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC,IAAI,CAAC;IAQxD,MAAM,CAAC,QAAQ,EAAE,OAAO,CAAC,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC;YAoB1C,YAAY;YAQZ,UAAU;IAMxB,MAAM,CAAC,KAAK,EAAE,KAAK,GAAG,UAAU;IAI1B,KAAK,CACT,aAAa,EAAE,OAAO,CAAC,MAAM,GAAG,MAAM,CAAC,OAAO,CAAC,SAAS,EAAE,WAAW,CAAC,GAAG,UAAU,EACnF,MAAM,CAAC,EAAE,WAAW,GAAG,WAAW,EAAE,GACnC,OAAO,CAAC,KAAK,CAAC;CA0ElB"}
|
|
@@ -141,6 +141,7 @@ export declare class Frame {
|
|
|
141
141
|
* boolean.
|
|
142
142
|
*/
|
|
143
143
|
map(fn: (k: channel.KeyOrName, arr: Series, i: number) => [channel.KeyOrName, Series]): Frame;
|
|
144
|
+
mapFilter(fn: (k: channel.KeyOrName, arr: Series, i: number) => [channel.KeyOrName, Series, boolean]): Frame;
|
|
144
145
|
/**
|
|
145
146
|
* Iterates over all series in the current frame.
|
|
146
147
|
*
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"frame.d.ts","sourceRoot":"","sources":["../../../src/framer/frame.ts"],"names":[],"mappings":"AASA,OAAO,EAEL,WAAW,EACX,MAAM,EACN,KAAK,YAAY,EACjB,KAAK,aAAa,EAClB,IAAI,EACJ,KAAK,UAAU,EACf,SAAS,EACT,SAAS,EAEV,MAAM,eAAe,CAAC;AACvB,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAExB,OAAO,EAAE,KAAK,OAAO,EAAE,MAAM,WAAW,CAAC;AAGzC,KAAK,UAAU,GAAG,KAAK,GAAG,MAAM,GAAG,IAAI,CAAC;AAExC,MAAM,WAAW,MAAO,SAAQ,MAAM,CAAC,OAAO,CAAC,SAAS,EAAE,YAAY,EAAE,CAAC;CAAG;AA2B5E,MAAM,MAAM,UAAU,GAClB,KAAK,GACL,YAAY,GACZ,GAAG,CAAC,OAAO,CAAC,SAAS,EAAE,MAAM,EAAE,GAAG,MAAM,CAAC,GACzC,MAAM,CAAC,OAAO,CAAC,SAAS,EAAE,MAAM,EAAE,GAAG,MAAM,CAAC,CAAC;AAEjD;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAkCG;AACH,qBAAa,KAAK;IAChB,QAAQ,CAAC,OAAO,EAAE,OAAO,CAAC,IAAI,GAAG,OAAO,CAAC,KAAK,CAAM;IACpD,QAAQ,CAAC,MAAM,EAAE,MAAM,EAAE,CAAM;gBAG7B,aAAa,GAAE,OAAO,CAAC,eAAe,GAAG,UAAe,EACxD,MAAM,GAAE,MAAM,GAAG,MAAM,EAAO;IAqDhC;;;OAGG;IACH,IAAI,OAAO,IAAI,UAAU,CAIxB;IAED;;;OAGG;IACH,IAAI,IAAI,IAAI,OAAO,CAAC,IAAI,CAGvB;IAED;;;OAGG;IACH,IAAI,UAAU,IAAI,OAAO,CAAC,IAAI,CAE7B;IAED;;;OAGG;IACH,IAAI,KAAK,IAAI,OAAO,CAAC,KAAK,CAGzB;IAED;;;OAGG;IACH,IAAI,WAAW,IAAI,OAAO,CAAC,KAAK,CAE/B;IAED;;OAEG;IACH,IAAI,aAAa,IAAI,OAAO,CAAC,IAAI,GAAG,OAAO,CAAC,KAAK,CAEhD;IAED,SAAS,IAAI,OAAO;IAOpB;;;;OAIG;IACH,IAAI,UAAU,IAAI,OAAO,CAExB;IAED;;;;;OAKG;IACH,IAAI,YAAY,IAAI,OAAO,CAE1B;IAED;;;OAGG;IACH,IAAI,QAAQ,IAAI,OAAO,CAEtB;IAED;;;;;OAKG;IACH,IAAI,eAAe,IAAI,OAAO,CAI7B;IAED,SAAS,CAAC,GAAG,CAAC,EAAE,OAAO,CAAC,SAAS,GAAG,SAAS;IAY7C,MAAM,IAAI,MAAM,CAAC,MAAM,EAAE,UAAU,GAAG,SAAS,CAAC;IAIhD,IAAI,UAAU,IAAI,SAAS,EAAE,CAE5B;IAED;;;OAGG;IACH,GAAG,CAAC,GAAG,EAAE,OAAO,CAAC,SAAS,GAAG,WAAW;IAExC;;;OAGG;IACH,GAAG,CAAC,IAAI,EAAE,OAAO,CAAC,IAAI,GAAG,OAAO,CAAC,KAAK,GAAG,KAAK;IAQ9C;;;;;OAKG;IACH,IAAI,CAAC,GAAG,EAAE,OAAO,CAAC,SAAS,EAAE,GAAG,CAAC,EAAE,MAAM,EAAE,GAAG,IAAI;IAElD;;;;OAIG;IACH,IAAI,CAAC,KAAK,EAAE,KAAK,GAAG,IAAI;
|
|
1
|
+
{"version":3,"file":"frame.d.ts","sourceRoot":"","sources":["../../../src/framer/frame.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"streamer.d.ts","sourceRoot":"","sources":["../../../src/framer/streamer.ts"],"names":[],"mappings":"AASA,OAAO,EAAoB,KAAK,eAAe,EAAE,MAAM,uBAAuB,CAAC;AAC/E,OAAO,EAAE,OAAO,EAAE,OAAO,EAAE,QAAQ,EAAE,MAAM,eAAe,CAAC;AAC3D,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAExB,OAAO,EAAE,KAAK,OAAO,EAAE,MAAM,WAAW,CAAC;AAIzC,OAAO,EAAE,KAAK,EAAU,MAAM,gBAAgB,CAAC;AAG/C,QAAA,MAAM,IAAI;;;iBAAuE,CAAC;AAElF;;;GAGG;AACH,MAAM,WAAW,eAAgB,SAAQ,CAAC,CAAC,KAAK,CAAC,OAAO,IAAI,CAAC;CAAG;AAEhE,QAAA,MAAM,IAAI;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;iBAA8B,CAAC;AAEzC;;;GAGG;AACH,MAAM,WAAW,gBAAiB,SAAQ,CAAC,CAAC,KAAK,CAAC,OAAO,IAAI,CAAC;CAAG;AAYjE,eAAO,MAAM,eAAe;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;0BAE3B,CAAC;AAEF,MAAM,MAAM,cAAc,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,eAAe,CAAC,CAAC;AAG7D;;;;;;;;;;;;;;;;;;GAkBG;AACH,MAAM,WAAW,QAAS,SAAQ,aAAa,CAAC,KAAK,CAAC,EAAE,aAAa,CAAC,KAAK,CAAC;IAC1E,8DAA8D;IAC9D,IAAI,EAAE,OAAO,CAAC,GAAG,EAAE,CAAC;IACpB;;;OAGG;IACH,MAAM,EAAE,CAAC,QAAQ,EAAE,OAAO,CAAC,MAAM,KAAK,OAAO,CAAC,IAAI,CAAC,CAAC;IACpD,4DAA4D;IAC5D,KAAK,EAAE,MAAM,IAAI,CAAC;IAClB,wCAAwC;IACxC,IAAI,EAAE,MAAM,OAAO,CAAC,KAAK,CAAC,CAAC;CAC5B;AAED;;GAEG;AACH,MAAM,WAAW,YAAY;IAC3B,CAAC,MAAM,EAAE,cAAc,GAAG,OAAO,CAAC,QAAQ,CAAC,CAAC;CAC7C;AAED;;;;;GAKG;AACH,eAAO,MAAM,kBAAkB,GAC5B,WAAW,OAAO,CAAC,SAAS,EAAE,QAAQ,eAAe,KAAG,
|
|
1
|
+
{"version":3,"file":"streamer.d.ts","sourceRoot":"","sources":["../../../src/framer/streamer.ts"],"names":[],"mappings":"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"}
|
package/dist/src/index.d.ts
CHANGED
|
@@ -3,7 +3,7 @@ export { policy } from './access/policy';
|
|
|
3
3
|
export { arc } from './arc';
|
|
4
4
|
export { channel } from './channel';
|
|
5
5
|
export { Channel, isCalculated } from './channel/client';
|
|
6
|
-
export { default as Synnax, type
|
|
6
|
+
export { checkConnection, type CheckConnectionParams, newConnectionChecker, default as Synnax, type SynnaxParams, synnaxParamsZ, } from './client';
|
|
7
7
|
export * from './connection';
|
|
8
8
|
export { control } from './control';
|
|
9
9
|
export { AuthError, ContiguityError, DisconnectedError, MultipleFoundError, NotFoundError, QueryError, RouteError, UnexpectedError, ValidationError, } from './errors';
|
|
@@ -18,7 +18,7 @@ export { ontology } from './ontology';
|
|
|
18
18
|
export { group } from './ontology/group';
|
|
19
19
|
export { ranger } from './ranger';
|
|
20
20
|
export { status } from './status';
|
|
21
|
-
export { createTestClient,
|
|
21
|
+
export { createTestClient, TEST_CLIENT_PARAMS } from './testutil/client';
|
|
22
22
|
export { user } from './user';
|
|
23
23
|
export { workspace } from './workspace';
|
|
24
24
|
export { lineplot } from './workspace/lineplot';
|
package/dist/src/index.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"AASA,OAAO,EAAE,MAAM,EAAE,MAAM,UAAU,CAAC;AAClC,OAAO,EAAE,MAAM,EAAE,MAAM,iBAAiB,CAAC;AACzC,OAAO,EAAE,GAAG,EAAE,MAAM,OAAO,CAAC;AAC5B,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AACpC,OAAO,EAAE,OAAO,EAAE,YAAY,EAAE,MAAM,kBAAkB,CAAC;AACzD,OAAO,
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"AASA,OAAO,EAAE,MAAM,EAAE,MAAM,UAAU,CAAC;AAClC,OAAO,EAAE,MAAM,EAAE,MAAM,iBAAiB,CAAC;AACzC,OAAO,EAAE,GAAG,EAAE,MAAM,OAAO,CAAC;AAC5B,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AACpC,OAAO,EAAE,OAAO,EAAE,YAAY,EAAE,MAAM,kBAAkB,CAAC;AACzD,OAAO,EACL,eAAe,EACf,KAAK,qBAAqB,EAC1B,oBAAoB,EACpB,OAAO,IAAI,MAAM,EACjB,KAAK,YAAY,EACjB,aAAa,GACd,MAAM,UAAU,CAAC;AAClB,cAAc,cAAc,CAAC;AAC7B,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AACpC,OAAO,EACL,SAAS,EACT,eAAe,EACf,iBAAiB,EACjB,kBAAkB,EAClB,aAAa,EACb,UAAU,EACV,UAAU,EACV,eAAe,EACf,eAAe,GAChB,MAAM,UAAU,CAAC;AAClB,OAAO,EAAE,MAAM,EAAE,MAAM,UAAU,CAAC;AAClC,OAAO,EAAE,KAAK,EAAE,MAAM,gBAAgB,CAAC;AACvC,OAAO,EAAE,QAAQ,EAAE,MAAM,YAAY,CAAC;AACtC,OAAO,EAAE,MAAM,EAAE,MAAM,mBAAmB,CAAC;AAC3C,OAAO,EAAE,IAAI,EAAE,MAAM,iBAAiB,CAAC;AACvC,OAAO,EAAE,IAAI,EAAE,MAAM,iBAAiB,CAAC;AACvC,OAAO,EAAE,KAAK,EAAE,MAAM,SAAS,CAAC;AAChC,OAAO,EAAE,QAAQ,EAAE,MAAM,YAAY,CAAC;AACtC,OAAO,EAAE,KAAK,EAAE,MAAM,kBAAkB,CAAC;AACzC,OAAO,EAAE,MAAM,EAAE,MAAM,UAAU,CAAC;AAClC,OAAO,EAAE,MAAM,EAAE,MAAM,UAAU,CAAC;AAClC,OAAO,EAAE,gBAAgB,EAAE,kBAAkB,EAAE,MAAM,mBAAmB,CAAC;AACzE,OAAO,EAAE,IAAI,EAAE,MAAM,QAAQ,CAAC;AAC9B,OAAO,EAAE,SAAS,EAAE,MAAM,aAAa,CAAC;AACxC,OAAO,EAAE,QAAQ,EAAE,MAAM,sBAAsB,CAAC;AAChD,OAAO,EAAE,GAAG,EAAE,MAAM,iBAAiB,CAAC;AACtC,OAAO,EAAE,SAAS,EAAE,MAAM,uBAAuB,CAAC;AAClD,OAAO,EAAE,KAAK,EAAE,MAAM,mBAAmB,CAAC;AAC1C,OAAO,EACL,KAAK,aAAa,EAClB,KAAK,YAAY,EACjB,KAAK,SAAS,EACd,KAAK,SAAS,EACd,KAAK,aAAa,EAClB,KAAK,cAAc,EACnB,QAAQ,EACR,OAAO,EACP,WAAW,EACX,IAAI,EACJ,MAAM,EACN,KAAK,UAAU,EACf,SAAS,EACT,QAAQ,EACR,SAAS,EACT,KAAK,qBAAqB,EAC1B,KAAK,UAAU,EACf,KAAK,MAAM,GACZ,MAAM,eAAe,CAAC"}
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { default as Synnax,
|
|
2
|
-
export declare const
|
|
3
|
-
export declare const createTestClient: (
|
|
1
|
+
import { default as Synnax, SynnaxParams } from '../client';
|
|
2
|
+
export declare const TEST_CLIENT_PARAMS: SynnaxParams;
|
|
3
|
+
export declare const createTestClient: (params?: Partial<SynnaxParams>) => Synnax;
|
|
4
4
|
//# sourceMappingURL=client.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"client.d.ts","sourceRoot":"","sources":["../../../src/testutil/client.ts"],"names":[],"mappings":"AAWA,OAAO,MAAM,EAAE,EAAE,KAAK,
|
|
1
|
+
{"version":3,"file":"client.d.ts","sourceRoot":"","sources":["../../../src/testutil/client.ts"],"names":[],"mappings":"AAWA,OAAO,MAAM,EAAE,EAAE,KAAK,YAAY,EAAE,MAAM,UAAU,CAAC;AAErD,eAAO,MAAM,kBAAkB,EAAE,YAUhC,CAAC;AAEF,eAAO,MAAM,gBAAgB,GAAI,SAAS,OAAO,CAAC,YAAY,CAAC,KAAG,MAChB,CAAC"}
|
package/eslint.config.ts
CHANGED
|
@@ -7,6 +7,8 @@
|
|
|
7
7
|
// License, use of this software will be governed by the Apache License, Version 2.0,
|
|
8
8
|
// included in the file licenses/APL.txt.
|
|
9
9
|
|
|
10
|
+
import type { Linter } from "eslint";
|
|
10
11
|
import synnaxConfig from "eslint-config-synnaxlabs";
|
|
11
12
|
|
|
12
|
-
|
|
13
|
+
const cfg: Linter.Config[] = [...synnaxConfig, { ignores: ["examples"] }];
|
|
14
|
+
export default cfg;
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@synnaxlabs/client",
|
|
3
|
-
"version": "0.
|
|
3
|
+
"version": "0.48.0",
|
|
4
4
|
"description": "The Synnax Client Library",
|
|
5
5
|
"keywords": [
|
|
6
6
|
"synnax",
|
|
@@ -25,17 +25,17 @@
|
|
|
25
25
|
},
|
|
26
26
|
"dependencies": {
|
|
27
27
|
"async-mutex": "^0.5.0",
|
|
28
|
-
"zod": "^4.1.
|
|
29
|
-
"@synnaxlabs/freighter": "^0.
|
|
30
|
-
"@synnaxlabs/x": "^0.
|
|
28
|
+
"zod": "^4.1.12",
|
|
29
|
+
"@synnaxlabs/freighter": "^0.48.0",
|
|
30
|
+
"@synnaxlabs/x": "^0.48.0"
|
|
31
31
|
},
|
|
32
32
|
"devDependencies": {
|
|
33
33
|
"@vitest/coverage-v8": "^3.2.4",
|
|
34
|
-
"@types/node": "^24.
|
|
35
|
-
"eslint": "^9.
|
|
34
|
+
"@types/node": "^24.10.0",
|
|
35
|
+
"eslint": "^9.39.1",
|
|
36
36
|
"madge": "^8.0.0",
|
|
37
|
-
"typescript": "^5.9.
|
|
38
|
-
"vite": "^7.1.
|
|
37
|
+
"typescript": "^5.9.3",
|
|
38
|
+
"vite": "^7.1.12",
|
|
39
39
|
"vitest": "^3.2.4",
|
|
40
40
|
"@synnaxlabs/tsconfig": "^0.43.0",
|
|
41
41
|
"@synnaxlabs/vite-plugin": "^0.43.0",
|
package/src/auth/auth.spec.ts
CHANGED
|
@@ -13,7 +13,7 @@ import { describe, expect, it, test } from "vitest";
|
|
|
13
13
|
|
|
14
14
|
import { auth } from "@/auth";
|
|
15
15
|
import { AuthError, ExpiredTokenError, InvalidTokenError } from "@/errors";
|
|
16
|
-
import {
|
|
16
|
+
import { TEST_CLIENT_PARAMS } from "@/testutil/client";
|
|
17
17
|
import { Transport } from "@/transport";
|
|
18
18
|
|
|
19
19
|
const DUMMY_CTX: Context = {
|
|
@@ -27,11 +27,11 @@ describe("auth", () => {
|
|
|
27
27
|
test("valid credentials", async () => {
|
|
28
28
|
const transport = new Transport(
|
|
29
29
|
new URL({
|
|
30
|
-
host:
|
|
31
|
-
port: Number(
|
|
30
|
+
host: TEST_CLIENT_PARAMS.host,
|
|
31
|
+
port: Number(TEST_CLIENT_PARAMS.port),
|
|
32
32
|
}),
|
|
33
33
|
);
|
|
34
|
-
const client = new auth.Client(transport.unary,
|
|
34
|
+
const client = new auth.Client(transport.unary, TEST_CLIENT_PARAMS);
|
|
35
35
|
const mw = client.middleware();
|
|
36
36
|
const res = await mw(DUMMY_CTX, async () => [DUMMY_CTX, null]);
|
|
37
37
|
expect(res).toEqual([DUMMY_CTX, null]);
|
|
@@ -40,12 +40,12 @@ describe("auth", () => {
|
|
|
40
40
|
test("invalid credentials", async () => {
|
|
41
41
|
const transport = new Transport(
|
|
42
42
|
new URL({
|
|
43
|
-
host:
|
|
44
|
-
port: Number(
|
|
43
|
+
host: TEST_CLIENT_PARAMS.host,
|
|
44
|
+
port: Number(TEST_CLIENT_PARAMS.port),
|
|
45
45
|
}),
|
|
46
46
|
);
|
|
47
47
|
const client = new auth.Client(transport.unary, {
|
|
48
|
-
...
|
|
48
|
+
...TEST_CLIENT_PARAMS,
|
|
49
49
|
password: "wrong",
|
|
50
50
|
});
|
|
51
51
|
const mw = client.middleware();
|
|
@@ -59,11 +59,11 @@ describe("auth", () => {
|
|
|
59
59
|
it(`should re-authenticate and retry the request for ${ErrorType.name}`, async () => {
|
|
60
60
|
const transport = new Transport(
|
|
61
61
|
new URL({
|
|
62
|
-
host:
|
|
63
|
-
port: Number(
|
|
62
|
+
host: TEST_CLIENT_PARAMS.host,
|
|
63
|
+
port: Number(TEST_CLIENT_PARAMS.port),
|
|
64
64
|
}),
|
|
65
65
|
);
|
|
66
|
-
const client = new auth.Client(transport.unary,
|
|
66
|
+
const client = new auth.Client(transport.unary, TEST_CLIENT_PARAMS);
|
|
67
67
|
const mw = client.middleware();
|
|
68
68
|
let isFirst = true;
|
|
69
69
|
let tkOne: string | undefined;
|
|
@@ -86,11 +86,11 @@ describe("auth", () => {
|
|
|
86
86
|
it("should fail after MAX_RETRIES", async () => {
|
|
87
87
|
const transport = new Transport(
|
|
88
88
|
new URL({
|
|
89
|
-
host:
|
|
90
|
-
port: Number(
|
|
89
|
+
host: TEST_CLIENT_PARAMS.host,
|
|
90
|
+
port: Number(TEST_CLIENT_PARAMS.port),
|
|
91
91
|
}),
|
|
92
92
|
);
|
|
93
|
-
const client = new auth.Client(transport.unary,
|
|
93
|
+
const client = new auth.Client(transport.unary, TEST_CLIENT_PARAMS);
|
|
94
94
|
const mw = client.middleware();
|
|
95
95
|
const [, err] = await mw(DUMMY_CTX, async () => [
|
|
96
96
|
DUMMY_CTX,
|
package/src/channel/payload.ts
CHANGED
|
@@ -66,7 +66,7 @@ export const payloadZ = z.object({
|
|
|
66
66
|
});
|
|
67
67
|
export interface Payload extends z.infer<typeof payloadZ> {}
|
|
68
68
|
|
|
69
|
-
export const newZ = payloadZ.
|
|
69
|
+
export const newZ = payloadZ.extend({
|
|
70
70
|
key: keyZ.optional(),
|
|
71
71
|
leaseholder: z.number().optional(),
|
|
72
72
|
index: keyZ.optional(),
|
|
@@ -75,6 +75,7 @@ export const newZ = payloadZ.omit({ requires: true }).extend({
|
|
|
75
75
|
virtual: z.boolean().optional().default(false),
|
|
76
76
|
expression: z.string().optional().default(""),
|
|
77
77
|
operations: array.nullableZ(operationZ).optional(),
|
|
78
|
+
requires: array.nullableZ(keyZ).optional(),
|
|
78
79
|
});
|
|
79
80
|
|
|
80
81
|
export interface New
|
package/src/client.ts
CHANGED
|
@@ -30,7 +30,7 @@ import { Transport } from "@/transport";
|
|
|
30
30
|
import { user } from "@/user";
|
|
31
31
|
import { workspace } from "@/workspace";
|
|
32
32
|
|
|
33
|
-
export const
|
|
33
|
+
export const synnaxParamsZ = z.object({
|
|
34
34
|
host: z.string({ error: "Host is required" }).min(1, "Host is required"),
|
|
35
35
|
port: z
|
|
36
36
|
.number({ error: "Port is required" })
|
|
@@ -43,8 +43,8 @@ export const synnaxPropsZ = z.object({
|
|
|
43
43
|
retry: breaker.breakerConfigZ.optional(),
|
|
44
44
|
});
|
|
45
45
|
|
|
46
|
-
export interface
|
|
47
|
-
export interface
|
|
46
|
+
export interface SynnaxParams extends z.input<typeof synnaxParamsZ> {}
|
|
47
|
+
export interface ParsedSynnaxParams extends z.infer<typeof synnaxParamsZ> {}
|
|
48
48
|
|
|
49
49
|
/**
|
|
50
50
|
* Client to perform operations against a Synnax cluster.
|
|
@@ -56,7 +56,7 @@ export interface ParsedSynnaxProps extends z.infer<typeof synnaxPropsZ> {}
|
|
|
56
56
|
*/
|
|
57
57
|
export default class Synnax extends framer.Client {
|
|
58
58
|
readonly createdAt: TimeStamp;
|
|
59
|
-
readonly
|
|
59
|
+
readonly params: ParsedSynnaxParams;
|
|
60
60
|
readonly ranges: ranger.Client;
|
|
61
61
|
readonly channels: channel.Client;
|
|
62
62
|
readonly auth: auth.Client | undefined;
|
|
@@ -93,8 +93,8 @@ export default class Synnax extends framer.Client {
|
|
|
93
93
|
* A Synnax client must be closed when it is no longer needed. This will stop
|
|
94
94
|
* the client from polling the cluster for connectivity information.
|
|
95
95
|
*/
|
|
96
|
-
constructor(
|
|
97
|
-
const
|
|
96
|
+
constructor(params: SynnaxParams) {
|
|
97
|
+
const parsedParams = synnaxParamsZ.parse(params);
|
|
98
98
|
const {
|
|
99
99
|
host,
|
|
100
100
|
port,
|
|
@@ -103,7 +103,7 @@ export default class Synnax extends framer.Client {
|
|
|
103
103
|
connectivityPollFrequency,
|
|
104
104
|
secure,
|
|
105
105
|
retry: breaker,
|
|
106
|
-
} =
|
|
106
|
+
} = parsedParams;
|
|
107
107
|
const transport = new Transport(
|
|
108
108
|
new URL({ host, port: Number(port) }),
|
|
109
109
|
breaker,
|
|
@@ -121,7 +121,7 @@ export default class Synnax extends framer.Client {
|
|
|
121
121
|
const chCreator = new channel.Writer(transport.unary, chRetriever);
|
|
122
122
|
super(transport.stream, transport.unary, chRetriever);
|
|
123
123
|
this.createdAt = TimeStamp.now();
|
|
124
|
-
this.
|
|
124
|
+
this.params = parsedParams;
|
|
125
125
|
this.auth = auth_;
|
|
126
126
|
this.transport = transport;
|
|
127
127
|
this.channels = new channel.Client(this, chRetriever, transport.unary, chCreator);
|
|
@@ -129,7 +129,7 @@ export default class Synnax extends framer.Client {
|
|
|
129
129
|
transport.unary,
|
|
130
130
|
connectivityPollFrequency,
|
|
131
131
|
this.clientVersion,
|
|
132
|
-
|
|
132
|
+
parsedParams.name,
|
|
133
133
|
);
|
|
134
134
|
this.control = new control.Client(this);
|
|
135
135
|
this.ontology = new ontology.Client(transport.unary, this);
|
|
@@ -164,6 +164,20 @@ export default class Synnax extends framer.Client {
|
|
|
164
164
|
}
|
|
165
165
|
|
|
166
166
|
close(): void {
|
|
167
|
-
this.connectivity.
|
|
167
|
+
this.connectivity.stop();
|
|
168
168
|
}
|
|
169
169
|
}
|
|
170
|
+
|
|
171
|
+
export interface CheckConnectionParams
|
|
172
|
+
extends Pick<SynnaxParams, "host" | "port" | "secure" | "retry" | "name"> {}
|
|
173
|
+
|
|
174
|
+
export const checkConnection = async (params: CheckConnectionParams) =>
|
|
175
|
+
await newConnectionChecker(params).check();
|
|
176
|
+
|
|
177
|
+
export const newConnectionChecker = (params: CheckConnectionParams) => {
|
|
178
|
+
const { host, port, secure, name, retry } = params;
|
|
179
|
+
const retryConfig = breaker.breakerConfigZ.optional().parse(retry);
|
|
180
|
+
const url = new URL({ host, port: Number(port) });
|
|
181
|
+
const transport = new Transport(url, retryConfig, secure);
|
|
182
|
+
return new connection.Checker(transport.unary, undefined, __VERSION__, name);
|
|
183
|
+
};
|
|
@@ -7,7 +7,7 @@
|
|
|
7
7
|
// License, use of this software will be governed by the Apache License, Version 2.0,
|
|
8
8
|
// included in the file licenses/APL.txt.
|
|
9
9
|
|
|
10
|
-
import type
|
|
10
|
+
import { sendRequired, type UnaryClient } from "@synnaxlabs/freighter";
|
|
11
11
|
import { migrate, TimeSpan } from "@synnaxlabs/x";
|
|
12
12
|
import { z } from "zod";
|
|
13
13
|
|
|
@@ -29,6 +29,7 @@ const responseZ = z.object({
|
|
|
29
29
|
clusterKey: z.string(),
|
|
30
30
|
nodeVersion: z.string().optional(),
|
|
31
31
|
});
|
|
32
|
+
const requestZ = z.void();
|
|
32
33
|
|
|
33
34
|
const DEFAULT: State = {
|
|
34
35
|
clusterKey: "",
|
|
@@ -52,7 +53,6 @@ const createWarning = (
|
|
|
52
53
|
|
|
53
54
|
/** Polls a synnax cluster for connectivity information. */
|
|
54
55
|
export class Checker {
|
|
55
|
-
private static readonly ENDPOINT = "/connectivity/check";
|
|
56
56
|
static readonly DEFAULT: State = DEFAULT;
|
|
57
57
|
private readonly _state: State;
|
|
58
58
|
private readonly pollFrequency = TimeSpan.seconds(30);
|
|
@@ -81,11 +81,11 @@ export class Checker {
|
|
|
81
81
|
this.clientVersion = clientVersion;
|
|
82
82
|
this.name = name;
|
|
83
83
|
void this.check();
|
|
84
|
-
this.
|
|
84
|
+
this.start();
|
|
85
85
|
}
|
|
86
86
|
|
|
87
87
|
/** Stops the connectivity client from polling the cluster for connectivity */
|
|
88
|
-
|
|
88
|
+
stop(): void {
|
|
89
89
|
if (this.interval != null) clearInterval(this.interval);
|
|
90
90
|
}
|
|
91
91
|
|
|
@@ -96,13 +96,13 @@ export class Checker {
|
|
|
96
96
|
async check(): Promise<State> {
|
|
97
97
|
const prevStatus = this._state.status;
|
|
98
98
|
try {
|
|
99
|
-
const
|
|
100
|
-
|
|
101
|
-
|
|
102
|
-
|
|
99
|
+
const res = await sendRequired(
|
|
100
|
+
this.client,
|
|
101
|
+
"/connectivity/check",
|
|
102
|
+
undefined,
|
|
103
|
+
requestZ,
|
|
103
104
|
responseZ,
|
|
104
105
|
);
|
|
105
|
-
if (err != null) throw err;
|
|
106
106
|
const nodeVersion = res.nodeVersion;
|
|
107
107
|
const clientVersion = this.clientVersion;
|
|
108
108
|
const warned = this.versionWarned;
|
|
@@ -156,7 +156,7 @@ export class Checker {
|
|
|
156
156
|
this.onChangeHandlers.push(callback);
|
|
157
157
|
}
|
|
158
158
|
|
|
159
|
-
private
|
|
159
|
+
private start(): void {
|
|
160
160
|
this.interval = setInterval(() => {
|
|
161
161
|
void this.check();
|
|
162
162
|
}, this.pollFrequency.milliseconds);
|
|
@@ -13,18 +13,18 @@ import { z } from "zod";
|
|
|
13
13
|
|
|
14
14
|
import { auth } from "@/auth";
|
|
15
15
|
import { connection } from "@/connection";
|
|
16
|
-
import {
|
|
16
|
+
import { TEST_CLIENT_PARAMS } from "@/testutil/client";
|
|
17
17
|
import { Transport } from "@/transport";
|
|
18
18
|
|
|
19
19
|
describe("connectivity", () => {
|
|
20
20
|
it("should connect to the server", async () => {
|
|
21
21
|
const transport = new Transport(
|
|
22
22
|
new URL({
|
|
23
|
-
host:
|
|
24
|
-
port: Number(
|
|
23
|
+
host: TEST_CLIENT_PARAMS.host,
|
|
24
|
+
port: Number(TEST_CLIENT_PARAMS.port),
|
|
25
25
|
}),
|
|
26
26
|
);
|
|
27
|
-
const client = new auth.Client(transport.unary,
|
|
27
|
+
const client = new auth.Client(transport.unary, TEST_CLIENT_PARAMS);
|
|
28
28
|
transport.use(client.middleware());
|
|
29
29
|
const connectivity = new connection.Checker(
|
|
30
30
|
transport.unary,
|
|
@@ -39,11 +39,11 @@ describe("connectivity", () => {
|
|
|
39
39
|
it("should pull the server and client versions", async () => {
|
|
40
40
|
const transport = new Transport(
|
|
41
41
|
new URL({
|
|
42
|
-
host:
|
|
43
|
-
port: Number(
|
|
42
|
+
host: TEST_CLIENT_PARAMS.host,
|
|
43
|
+
port: Number(TEST_CLIENT_PARAMS.port),
|
|
44
44
|
}),
|
|
45
45
|
);
|
|
46
|
-
const client = new auth.Client(transport.unary,
|
|
46
|
+
const client = new auth.Client(transport.unary, TEST_CLIENT_PARAMS);
|
|
47
47
|
transport.use(client.middleware());
|
|
48
48
|
const connectivity = new connection.Checker(
|
|
49
49
|
transport.unary,
|
|
@@ -57,11 +57,11 @@ describe("connectivity", () => {
|
|
|
57
57
|
it("should adjust state if the server is too old", async () => {
|
|
58
58
|
const transport = new Transport(
|
|
59
59
|
new URL({
|
|
60
|
-
host:
|
|
61
|
-
port: Number(
|
|
60
|
+
host: TEST_CLIENT_PARAMS.host,
|
|
61
|
+
port: Number(TEST_CLIENT_PARAMS.port),
|
|
62
62
|
}),
|
|
63
63
|
);
|
|
64
|
-
const client = new auth.Client(transport.unary,
|
|
64
|
+
const client = new auth.Client(transport.unary, TEST_CLIENT_PARAMS);
|
|
65
65
|
transport.use(client.middleware());
|
|
66
66
|
const connectivity = new connection.Checker(
|
|
67
67
|
transport.unary,
|
|
@@ -75,11 +75,11 @@ describe("connectivity", () => {
|
|
|
75
75
|
it("should adjust state if the server is too new", async () => {
|
|
76
76
|
const transport = new Transport(
|
|
77
77
|
new URL({
|
|
78
|
-
host:
|
|
79
|
-
port: Number(
|
|
78
|
+
host: TEST_CLIENT_PARAMS.host,
|
|
79
|
+
port: Number(TEST_CLIENT_PARAMS.port),
|
|
80
80
|
}),
|
|
81
81
|
);
|
|
82
|
-
const client = new auth.Client(transport.unary,
|
|
82
|
+
const client = new auth.Client(transport.unary, TEST_CLIENT_PARAMS);
|
|
83
83
|
transport.use(client.middleware());
|
|
84
84
|
const connectivity = new connection.Checker(transport.unary, undefined, "0.0.0");
|
|
85
85
|
const state = await connectivity.check();
|