@synnaxlabs/client 0.26.7 → 0.28.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/README.md +36 -10
- package/api/client.api.md +3121 -0
- package/api-extractor.json +7 -0
- package/dist/access/client.d.ts +0 -1
- package/dist/access/payload.d.ts +0 -1
- package/dist/auth/auth.d.ts +0 -1
- package/dist/channel/client.d.ts +6 -2
- package/dist/channel/client.d.ts.map +1 -1
- package/dist/channel/creator.d.ts +0 -1
- package/dist/channel/payload.d.ts +4 -1
- package/dist/channel/payload.d.ts.map +1 -1
- package/dist/channel/retriever.d.ts +0 -1
- package/dist/channel/writer.d.ts +0 -1
- package/dist/client.cjs +23 -19
- package/dist/client.d.ts +10 -7
- package/dist/client.d.ts.map +1 -1
- package/dist/client.js +2326 -1904
- package/dist/connection/checker.d.ts +21 -2
- package/dist/connection/checker.d.ts.map +1 -1
- package/dist/control/client.d.ts +0 -1
- package/dist/control/client.d.ts.map +1 -1
- package/dist/control/state.d.ts +0 -1
- package/dist/errors.d.ts +0 -1
- package/dist/framer/adapter.d.ts +0 -1
- package/dist/framer/client.d.ts +0 -1
- package/dist/framer/client.d.ts.map +1 -1
- package/dist/framer/deleter.d.ts +0 -1
- package/dist/framer/frame.d.ts +11 -12
- package/dist/framer/iterator.d.ts +0 -1
- package/dist/framer/streamProxy.d.ts +0 -1
- package/dist/framer/streamer.d.ts +0 -1
- package/dist/framer/writer.d.ts +0 -1
- package/dist/framer/writer.d.ts.map +1 -1
- package/dist/hardware/client.d.ts +0 -1
- package/dist/hardware/device/client.d.ts +0 -1
- package/dist/hardware/device/payload.d.ts +0 -1
- package/dist/hardware/device/payload.d.ts.map +1 -1
- package/dist/hardware/rack/client.d.ts +0 -1
- package/dist/hardware/rack/payload.d.ts +0 -1
- package/dist/hardware/rack/payload.d.ts.map +1 -1
- package/dist/hardware/task/client.d.ts +12 -3
- package/dist/hardware/task/client.d.ts.map +1 -1
- package/dist/hardware/task/ni/types.d.ts +14495 -0
- package/dist/hardware/task/ni/types.d.ts.map +1 -0
- package/dist/hardware/task/payload.d.ts +6 -1
- package/dist/hardware/task/payload.d.ts.map +1 -1
- package/dist/label/client.d.ts +8 -6
- package/dist/label/client.d.ts.map +1 -1
- package/dist/label/payload.d.ts +0 -1
- package/dist/label/retriever.d.ts +0 -1
- package/dist/label/retriever.d.ts.map +1 -1
- package/dist/label/writer.d.ts +32 -2
- package/dist/label/writer.d.ts.map +1 -1
- package/dist/ontology/client.d.ts +136 -12
- package/dist/ontology/client.d.ts.map +1 -1
- package/dist/ontology/group/client.d.ts +0 -1
- package/dist/ontology/group/group.d.ts +0 -1
- package/dist/ontology/group/payload.d.ts +0 -1
- package/dist/ontology/group/writer.d.ts +0 -1
- package/dist/ontology/group/writer.d.ts.map +1 -1
- package/dist/ontology/payload.d.ts +6 -3
- package/dist/ontology/payload.d.ts.map +1 -1
- package/dist/ontology/writer.d.ts +4 -5
- package/dist/ontology/writer.d.ts.map +1 -1
- package/dist/ranger/alias.d.ts +0 -1
- package/dist/ranger/client.d.ts +57 -14
- package/dist/ranger/client.d.ts.map +1 -1
- package/dist/ranger/external.d.ts +1 -1
- package/dist/ranger/external.d.ts.map +1 -1
- package/dist/ranger/kv.d.ts +42 -5
- package/dist/ranger/kv.d.ts.map +1 -1
- package/dist/ranger/payload.d.ts +5 -2
- package/dist/ranger/payload.d.ts.map +1 -1
- package/dist/ranger/writer.d.ts +107 -2
- package/dist/ranger/writer.d.ts.map +1 -1
- package/dist/setupspecs.d.ts +0 -1
- package/dist/signals/observable.d.ts +0 -1
- package/dist/transport.d.ts +0 -1
- package/dist/user/client.d.ts +0 -1
- package/dist/user/payload.d.ts +0 -1
- package/dist/util/retrieve.d.ts +0 -1
- package/dist/util/telem.d.ts +0 -1
- package/dist/util/zod.d.ts +0 -1
- package/dist/workspace/client.d.ts +0 -1
- package/dist/workspace/lineplot/client.d.ts +0 -1
- package/dist/workspace/lineplot/payload.d.ts +0 -1
- package/dist/workspace/lineplot/retriever.d.ts +0 -1
- package/dist/workspace/lineplot/writer.d.ts +0 -1
- package/dist/workspace/payload.d.ts +0 -1
- package/dist/workspace/retriever.d.ts +0 -1
- package/dist/workspace/schematic/client.d.ts +0 -1
- package/dist/workspace/schematic/payload.d.ts +0 -1
- package/dist/workspace/schematic/retriever.d.ts +0 -1
- package/dist/workspace/schematic/writer.d.ts +0 -1
- package/dist/workspace/writer.d.ts +0 -1
- package/package.json +14 -12
- package/src/access/access.spec.ts +11 -11
- package/src/channel/batchRetriever.spec.ts +2 -0
- package/src/channel/channel.spec.ts +51 -31
- package/src/channel/client.ts +7 -0
- package/src/channel/payload.ts +1 -0
- package/src/client.ts +17 -8
- package/src/connection/checker.ts +58 -1
- package/src/connection/connection.spec.ts +43 -3
- package/src/control/client.ts +9 -0
- package/src/errors.spec.ts +9 -0
- package/src/framer/client.ts +0 -1
- package/src/framer/frame.spec.ts +2 -2
- package/src/framer/frame.ts +22 -22
- package/src/framer/writer.ts +2 -1
- package/src/hardware/device/payload.ts +9 -0
- package/src/hardware/rack/payload.ts +9 -0
- package/src/hardware/task/client.ts +82 -6
- package/src/hardware/task/ni/types.ts +1716 -0
- package/src/hardware/task/payload.ts +10 -0
- package/src/hardware/task/task.spec.ts +45 -30
- package/src/label/client.ts +49 -19
- package/src/label/label.spec.ts +9 -0
- package/src/label/retriever.ts +2 -1
- package/src/label/writer.ts +11 -3
- package/src/ontology/client.ts +227 -14
- package/src/ontology/group/writer.ts +10 -12
- package/src/ontology/ontology.spec.ts +3 -5
- package/src/ontology/payload.ts +5 -1
- package/src/ontology/writer.ts +26 -12
- package/src/ranger/client.ts +223 -41
- package/src/ranger/external.ts +1 -1
- package/src/ranger/kv.ts +50 -11
- package/src/ranger/payload.ts +9 -5
- package/src/ranger/ranger.spec.ts +114 -49
- package/src/ranger/writer.ts +7 -2
- package/src/vite-env.d.ts +1 -1
- package/vite.config.ts +6 -1
- package/dist/ranger/active.d.ts +0 -11
- package/dist/ranger/active.d.ts.map +0 -1
- package/dist/ranger/range.d.ts +0 -32
- package/dist/ranger/range.d.ts.map +0 -1
- package/src/ranger/active.ts +0 -74
- package/src/ranger/range.ts +0 -98
|
@@ -1,7 +1,6 @@
|
|
|
1
1
|
import { UnaryClient } from '@synnaxlabs/freighter';
|
|
2
2
|
import { TimeSpan } from '@synnaxlabs/x/telem';
|
|
3
3
|
import { z } from 'zod';
|
|
4
|
-
|
|
5
4
|
export declare const status: z.ZodEnum<["disconnected", "connecting", "connected", "failed"]>;
|
|
6
5
|
export type Status = z.infer<typeof status>;
|
|
7
6
|
export declare const state: z.ZodObject<{
|
|
@@ -9,16 +8,25 @@ export declare const state: z.ZodObject<{
|
|
|
9
8
|
error: z.ZodOptional<z.ZodType<Error, z.ZodTypeDef, Error>>;
|
|
10
9
|
message: z.ZodOptional<z.ZodString>;
|
|
11
10
|
clusterKey: z.ZodString;
|
|
11
|
+
clientVersion: z.ZodString;
|
|
12
|
+
clientServerCompatible: z.ZodBoolean;
|
|
13
|
+
nodeVersion: z.ZodOptional<z.ZodString>;
|
|
12
14
|
}, "strip", z.ZodTypeAny, {
|
|
13
15
|
status: "disconnected" | "connecting" | "connected" | "failed";
|
|
14
16
|
clusterKey: string;
|
|
17
|
+
clientVersion: string;
|
|
18
|
+
clientServerCompatible: boolean;
|
|
15
19
|
message?: string | undefined;
|
|
16
20
|
error?: Error | undefined;
|
|
21
|
+
nodeVersion?: string | undefined;
|
|
17
22
|
}, {
|
|
18
23
|
status: "disconnected" | "connecting" | "connected" | "failed";
|
|
19
24
|
clusterKey: string;
|
|
25
|
+
clientVersion: string;
|
|
26
|
+
clientServerCompatible: boolean;
|
|
20
27
|
message?: string | undefined;
|
|
21
28
|
error?: Error | undefined;
|
|
29
|
+
nodeVersion?: string | undefined;
|
|
22
30
|
}>;
|
|
23
31
|
export type State = z.infer<typeof state>;
|
|
24
32
|
/** Polls a synnax cluster for connectivity information. */
|
|
@@ -30,29 +38,40 @@ export declare class Checker {
|
|
|
30
38
|
private readonly client;
|
|
31
39
|
private readonly name?;
|
|
32
40
|
private interval?;
|
|
41
|
+
private readonly clientVersion;
|
|
33
42
|
private readonly onChangeHandlers;
|
|
34
43
|
static readonly connectionStateZ: z.ZodObject<{
|
|
35
44
|
status: z.ZodEnum<["disconnected", "connecting", "connected", "failed"]>;
|
|
36
45
|
error: z.ZodOptional<z.ZodType<Error, z.ZodTypeDef, Error>>;
|
|
37
46
|
message: z.ZodOptional<z.ZodString>;
|
|
38
47
|
clusterKey: z.ZodString;
|
|
48
|
+
clientVersion: z.ZodString;
|
|
49
|
+
clientServerCompatible: z.ZodBoolean;
|
|
50
|
+
nodeVersion: z.ZodOptional<z.ZodString>;
|
|
39
51
|
}, "strip", z.ZodTypeAny, {
|
|
40
52
|
status: "disconnected" | "connecting" | "connected" | "failed";
|
|
41
53
|
clusterKey: string;
|
|
54
|
+
clientVersion: string;
|
|
55
|
+
clientServerCompatible: boolean;
|
|
42
56
|
message?: string | undefined;
|
|
43
57
|
error?: Error | undefined;
|
|
58
|
+
nodeVersion?: string | undefined;
|
|
44
59
|
}, {
|
|
45
60
|
status: "disconnected" | "connecting" | "connected" | "failed";
|
|
46
61
|
clusterKey: string;
|
|
62
|
+
clientVersion: string;
|
|
63
|
+
clientServerCompatible: boolean;
|
|
47
64
|
message?: string | undefined;
|
|
48
65
|
error?: Error | undefined;
|
|
66
|
+
nodeVersion?: string | undefined;
|
|
49
67
|
}>;
|
|
68
|
+
private versionWarned;
|
|
50
69
|
/**
|
|
51
70
|
* @param client - The transport client to use for connectivity checks.
|
|
52
71
|
* @param pollFreq - The frequency at which to poll the cluster for
|
|
53
72
|
* connectivity information.
|
|
54
73
|
*/
|
|
55
|
-
constructor(client: UnaryClient, pollFreq
|
|
74
|
+
constructor(client: UnaryClient, pollFreq: TimeSpan | undefined, clientVersion: string, name?: string);
|
|
56
75
|
/** Stops the connectivity client from polling the cluster for connectivity */
|
|
57
76
|
stopChecking(): void;
|
|
58
77
|
/**
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"checker.d.ts","sourceRoot":"","sources":["../../src/connection/checker.ts"],"names":[],"mappings":"AASA,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,uBAAuB,CAAC;
|
|
1
|
+
{"version":3,"file":"checker.d.ts","sourceRoot":"","sources":["../../src/connection/checker.ts"],"names":[],"mappings":"AASA,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,uBAAuB,CAAC;AAEzD,OAAO,EAAE,QAAQ,EAAE,MAAM,qBAAqB,CAAC;AAC/C,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAGxB,eAAO,MAAM,MAAM,kEAAmB,CAAC;AACvC,MAAM,MAAM,MAAM,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,MAAM,CAAC,CAAC;AAE5C,eAAO,MAAM,KAAK;;;;;;;;;;;;;;;;;;;;;;;;EAQhB,CAAC;AAEH,MAAM,MAAM,KAAK,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,KAAK,CAAC,CAAC;AA2B1C,2DAA2D;AAC3D,qBAAa,OAAO;IAClB,OAAO,CAAC,MAAM,CAAC,QAAQ,CAAC,QAAQ,CAAyB;IACzD,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;;;;;;;;;;;;;;;;;;;;;;;;OAAS;IACzC,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,YAAY,IAAI,IAAI;IAIpB;;;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,aAAa;CAKtB"}
|
package/dist/control/client.d.ts
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"client.d.ts","sourceRoot":"","sources":["../../src/control/client.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"client.d.ts","sourceRoot":"","sources":["../../src/control/client.ts"],"names":[],"mappings":"AASA,OAAO,EAAE,YAAY,EAAE,MAAM,iBAAiB,CAAC;AAC/C,OAAO,EAAE,MAAM,EAAE,MAAM,UAAU,CAAC;AAIlC,qBAAa,MAAM;IACjB,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAgB;gBAE3B,MAAM,EAAE,MAAM,CAAC,MAAM;IAI3B,gBAAgB,IAAI,OAAO,CAAC,YAAY,CAAC;CAIhD"}
|
package/dist/control/state.d.ts
CHANGED
|
@@ -4,7 +4,6 @@ import { z } from 'zod';
|
|
|
4
4
|
import { Key as ChannelKey } from '../channel/payload';
|
|
5
5
|
import { framer } from '../framer';
|
|
6
6
|
import { Streamer as FrameStreamer } from '../framer/streamer';
|
|
7
|
-
|
|
8
7
|
export type Authority = control.Authority;
|
|
9
8
|
export declare const Authority: typeof control.Authority;
|
|
10
9
|
export type Transfer = control.Transfer<ChannelKey>;
|
package/dist/errors.d.ts
CHANGED
package/dist/framer/adapter.d.ts
CHANGED
|
@@ -2,7 +2,6 @@ import { CrudeSeries } from '@synnaxlabs/x/telem';
|
|
|
2
2
|
import { Key, KeyOrName, Params } from '../channel/payload';
|
|
3
3
|
import { Retriever } from '../channel/retriever';
|
|
4
4
|
import { CrudeFrame, Frame } from './frame';
|
|
5
|
-
|
|
6
5
|
export declare class ReadFrameAdapter {
|
|
7
6
|
private adapter;
|
|
8
7
|
retriever: Retriever;
|
package/dist/framer/client.d.ts
CHANGED
|
@@ -6,7 +6,6 @@ import { Frame } from './frame';
|
|
|
6
6
|
import { Iterator, IteratorConfig } from './iterator';
|
|
7
7
|
import { Streamer, StreamerConfig } from './streamer';
|
|
8
8
|
import { Writer, WriterConfig } from './writer';
|
|
9
|
-
|
|
10
9
|
export declare class Client {
|
|
11
10
|
private readonly streamClient;
|
|
12
11
|
private readonly retriever;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"client.d.ts","sourceRoot":"","sources":["../../src/framer/client.ts"],"names":[],"mappings":"AASA,OAAO,EAAE,KAAK,YAAY,EAAE,WAAW,EAAE,MAAM,uBAAuB,CAAC;AACvE,OAAO,EACL,KAAK,WAAW,EAChB,KAAK,cAAc,EACnB,KAAK,cAAc,EACnB,KAAK,WAAW,EAChB,SAAS,
|
|
1
|
+
{"version":3,"file":"client.d.ts","sourceRoot":"","sources":["../../src/framer/client.ts"],"names":[],"mappings":"AASA,OAAO,EAAE,KAAK,YAAY,EAAE,WAAW,EAAE,MAAM,uBAAuB,CAAC;AACvE,OAAO,EACL,KAAK,WAAW,EAChB,KAAK,cAAc,EACnB,KAAK,cAAc,EACnB,KAAK,WAAW,EAChB,SAAS,EAEV,MAAM,eAAe,CAAC;AAEvB,OAAO,EAAY,KAAK,SAAS,EAAE,WAAW,EAAE,KAAK,MAAM,EAAE,MAAM,mBAAmB,CAAC;AACvF,OAAO,EAAwB,KAAK,SAAS,EAAE,MAAM,qBAAqB,CAAC;AAE3E,OAAO,EAAE,KAAK,EAAE,MAAM,gBAAgB,CAAC;AACvC,OAAO,EAAE,QAAQ,EAAE,cAAc,EAAE,MAAM,mBAAmB,CAAC;AAC7D,OAAO,EAAE,QAAQ,EAAE,KAAK,cAAc,EAAE,MAAM,mBAAmB,CAAC;AAClE,OAAO,EAAE,MAAM,EAAE,KAAK,YAAY,EAAc,MAAM,iBAAiB,CAAC;AAExE,qBAAa,MAAM;IACjB,OAAO,CAAC,QAAQ,CAAC,YAAY,CAAe;IAE5C,OAAO,CAAC,QAAQ,CAAC,SAAS,CAAY;IACtC,OAAO,CAAC,QAAQ,CAAC,OAAO,CAAU;gBAEtB,MAAM,EAAE,YAAY,EAAE,KAAK,EAAE,WAAW,EAAE,SAAS,EAAE,SAAS;IAO1E;;;;;;;OAOG;IACG,YAAY,CAChB,EAAE,EAAE,cAAc,EAClB,QAAQ,EAAE,MAAM,EAChB,IAAI,CAAC,EAAE,cAAc,GACpB,OAAO,CAAC,QAAQ,CAAC;IAIpB;;;;;;OAMG;IACG,UAAU,CAAC,MAAM,EAAE,YAAY,GAAG,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC;IAMhE;;;;;;;;OAQG;IACG,YAAY,CAAC,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC,QAAQ,CAAC;IAEvD;;;;;;;;;;OAUG;IACG,YAAY,CAAC,MAAM,EAAE,cAAc,GAAG,MAAM,GAAG,OAAO,CAAC,QAAQ,CAAC;IAQhE,KAAK,CACT,KAAK,EAAE,cAAc,EACrB,OAAO,EAAE,SAAS,EAClB,IAAI,EAAE,WAAW,GAChB,OAAO,CAAC,IAAI,CAAC;IAEV,KAAK,CACT,KAAK,EAAE,cAAc,EACrB,QAAQ,EAAE,WAAW,EACrB,IAAI,EAAE,WAAW,EAAE,GAClB,OAAO,CAAC,IAAI,CAAC;IAEV,KAAK,CACT,KAAK,EAAE,cAAc,EACrB,IAAI,EAAE,MAAM,CAAC,SAAS,EAAE,WAAW,CAAC,GACnC,OAAO,CAAC,IAAI,CAAC;IA8CV,IAAI,CAAC,EAAE,EAAE,cAAc,EAAE,OAAO,EAAE,SAAS,GAAG,OAAO,CAAC,WAAW,CAAC;IAElE,IAAI,CAAC,EAAE,EAAE,cAAc,EAAE,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC,KAAK,CAAC;YASlD,SAAS;IAWjB,MAAM,CAAC,QAAQ,EAAE,MAAM,EAAE,SAAS,EAAE,SAAS,GAAG,OAAO,CAAC,IAAI,CAAC;CAYpE"}
|
package/dist/framer/deleter.d.ts
CHANGED
package/dist/framer/frame.d.ts
CHANGED
|
@@ -1,7 +1,6 @@
|
|
|
1
1
|
import { DataType, MultiSeries, Series, Size, TelemValue, TimeRange, TimeStamp } from '@synnaxlabs/x/telem';
|
|
2
2
|
import { z } from 'zod';
|
|
3
3
|
import { KeyOrName, Keys, Names, Params } from '../channel/payload';
|
|
4
|
-
|
|
5
4
|
type ColumnType = "key" | "name" | null;
|
|
6
5
|
export type CrudeFrame = Frame | FramePayload | Map<KeyOrName, Series[] | Series> | Record<KeyOrName, Series[] | Series>;
|
|
7
6
|
/**
|
|
@@ -10,15 +9,15 @@ export type CrudeFrame = Frame | FramePayload | Map<KeyOrName, Series[] | Series
|
|
|
10
9
|
*
|
|
11
10
|
* Frames have two important characteristics: alignment and orientation.
|
|
12
11
|
*
|
|
13
|
-
* A frame's alignment defines how correlated the
|
|
12
|
+
* A frame's alignment defines how correlated the series for different channels in the
|
|
14
13
|
* frame are:
|
|
15
14
|
*
|
|
16
|
-
* - A frame is weakly aligned if
|
|
15
|
+
* - A frame is weakly aligned if the time range occupied by all series of a
|
|
17
16
|
* particular channel is the same for all channels in the frame. This means that the
|
|
18
|
-
*
|
|
17
|
+
* series for a particular channel can have gaps between them.
|
|
19
18
|
*
|
|
20
19
|
* - A strongly aligned frame means that all channels share the same rate/index and
|
|
21
|
-
* there are no gaps in time between
|
|
20
|
+
* there are no gaps in time between series. Strongly aligned frames are natural
|
|
22
21
|
* to interpret, as the values in a particular 'row' of the frame share the same
|
|
23
22
|
* timestamp. All frames written to Synnax must be strongly aligned.
|
|
24
23
|
*
|
|
@@ -30,7 +29,7 @@ export type CrudeFrame = Frame | FramePayload | Map<KeyOrName, Series[] | Series
|
|
|
30
29
|
*
|
|
31
30
|
* - Horizontal frames have a single channel, and are strongly aligned by default.
|
|
32
31
|
* A horizontal frame typically has a single array (in which case, it's also 'square'),
|
|
33
|
-
* although it can have multiple
|
|
32
|
+
* although it can have multiple series if all the series are continuous in time.
|
|
34
33
|
*
|
|
35
34
|
* - Vertical frames are strongly aligned and have on or more channels, but ONLY a single
|
|
36
35
|
* array per channel. Synnax requires that all frames written to the database are
|
|
@@ -42,7 +41,7 @@ export type CrudeFrame = Frame | FramePayload | Map<KeyOrName, Series[] | Series
|
|
|
42
41
|
export declare class Frame {
|
|
43
42
|
readonly columns: Keys | Names;
|
|
44
43
|
readonly series: Series[];
|
|
45
|
-
constructor(columnsOrData?: Params | CrudeFrame,
|
|
44
|
+
constructor(columnsOrData?: Params | CrudeFrame, series?: Series | Series[]);
|
|
46
45
|
/**
|
|
47
46
|
* @returns "key" if the frame columns are channel keys, "name" if the columns are
|
|
48
47
|
* channel names, and null if the frame has no columns.
|
|
@@ -82,8 +81,8 @@ export declare class Frame {
|
|
|
82
81
|
/**
|
|
83
82
|
* @returns true if the frame is horizontal. Horizontal frames have a single channel,
|
|
84
83
|
* and are strongly aligned by default.A horizontal frame typically has a single array
|
|
85
|
-
* (in which case, it's also 'square'), although it can have multiple
|
|
86
|
-
* the
|
|
84
|
+
* (in which case, it's also 'square'), although it can have multiple series if all
|
|
85
|
+
* the series are continuous in time.
|
|
87
86
|
*/
|
|
88
87
|
get isHorizontal(): boolean;
|
|
89
88
|
/**
|
|
@@ -93,8 +92,8 @@ export declare class Frame {
|
|
|
93
92
|
get isSquare(): boolean;
|
|
94
93
|
/**
|
|
95
94
|
* @returns true if the frame is weakly aligned. A frame is weakly aligned if it meets
|
|
96
|
-
* the time range occupied by all
|
|
97
|
-
* channels in the frame. This means that the
|
|
95
|
+
* the time range occupied by all series of a particular channel is the same for all
|
|
96
|
+
* channels in the frame. This means that the series for a particular channel can have
|
|
98
97
|
* gaps between them.
|
|
99
98
|
*/
|
|
100
99
|
get isWeaklyAligned(): boolean;
|
|
@@ -102,7 +101,7 @@ export declare class Frame {
|
|
|
102
101
|
latest(): Record<string, TelemValue | undefined>;
|
|
103
102
|
get timeRanges(): TimeRange[];
|
|
104
103
|
/**
|
|
105
|
-
* @returns lazy
|
|
104
|
+
* @returns lazy series matching the given channel key or name.
|
|
106
105
|
* @param key the channel key or name.
|
|
107
106
|
*/
|
|
108
107
|
get(key: KeyOrName): MultiSeries;
|
|
@@ -3,7 +3,6 @@ import { CrudeTimeRange, CrudeTimeSpan, CrudeTimeStamp, TimeSpan } from '@synnax
|
|
|
3
3
|
import { Params } from '../channel/payload';
|
|
4
4
|
import { Retriever } from '../channel/retriever';
|
|
5
5
|
import { Frame } from './frame';
|
|
6
|
-
|
|
7
6
|
export declare const AUTO_SPAN: TimeSpan;
|
|
8
7
|
export interface IteratorConfig {
|
|
9
8
|
/** chunkSize is the maximum number of samples contained per channel in the frame
|
|
@@ -4,7 +4,6 @@ import { CrudeTimeStamp } from '@synnaxlabs/x/telem';
|
|
|
4
4
|
import { Key, Params } from '../channel/payload';
|
|
5
5
|
import { Retriever } from '../channel/retriever';
|
|
6
6
|
import { Frame } from './frame';
|
|
7
|
-
|
|
8
7
|
export interface StreamerConfig {
|
|
9
8
|
channels: Params;
|
|
10
9
|
from?: CrudeTimeStamp;
|
package/dist/framer/writer.d.ts
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"writer.d.ts","sourceRoot":"","sources":["../../src/framer/writer.ts"],"names":[],"mappings":"AASA,OAAO,EAIL,KAAK,YAAY,EAClB,MAAM,uBAAuB,CAAC;AAC/B,OAAO,EAAE,OAAO,EAAE,MAAM,eAAe,CAAC;AACxC,OAAO,EACL,KAAK,WAAW,EAChB,KAAK,cAAc,EACnB,QAAQ,EACR,SAAS,EACV,MAAM,qBAAqB,CAAC;AAE7B,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAExB,OAAO,EAAE,KAAK,SAAS,EAAE,KAAK,WAAW,EAAE,KAAK,MAAM,EAAE,MAAM,mBAAmB,CAAC;AAClF,OAAO,EAAE,KAAK,SAAS,EAAE,MAAM,qBAAqB,CAAC;AAErD,OAAO,EAAE,KAAK,UAAU,EAAU,MAAM,gBAAgB,CAAC;AAGzD,aAAK,OAAO;IACV,IAAI,IAAI;IACR,KAAK,IAAI;IACT,MAAM,IAAI;IACV,KAAK,IAAI;IACT,YAAY,IAAI;CACjB;AAED,oBAAY,UAAU;IACpB,aAAa,IAAI;IACjB,OAAO,IAAI;IACX,MAAM,IAAI;CACX;AAED,MAAM,MAAM,eAAe,GAAG,SAAS,GAAG,QAAQ,GAAG,eAAe,GAAG,UAAU,CAAC;
|
|
1
|
+
{"version":3,"file":"writer.d.ts","sourceRoot":"","sources":["../../src/framer/writer.ts"],"names":[],"mappings":"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"}
|
|
@@ -5,7 +5,6 @@ import { z } from 'zod';
|
|
|
5
5
|
import { framer } from '../../framer';
|
|
6
6
|
import { Device, DeviceKey, NewDevice } from './payload';
|
|
7
7
|
import { signals } from '../../signals';
|
|
8
|
-
|
|
9
8
|
declare const retrieveReqZ: z.ZodObject<{
|
|
10
9
|
search: z.ZodOptional<z.ZodString>;
|
|
11
10
|
limit: z.ZodOptional<z.ZodNumber>;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"payload.d.ts","sourceRoot":"","sources":["../../../src/hardware/device/payload.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"payload.d.ts","sourceRoot":"","sources":["../../../src/hardware/device/payload.ts"],"names":[],"mappings":"AASA,OAAO,EAAU,aAAa,EAAE,MAAM,eAAe,CAAC;AACtD,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAGxB,OAAO,EAAE,QAAQ,EAAE,MAAM,YAAY,CAAC;AAEtC,eAAO,MAAM,UAAU,aAAa,CAAC;AAErC,eAAO,MAAM,OAAO;;;;;;;;gBAab,CAAC,CAAC,OAAO,CAAC,aAAa,CAAC;;;;;;;;;;;;;;;;;;;EAC7B,CAAC;AAEH,MAAM,MAAM,MAAM,CAAC,CAAC,SAAS,aAAa,GAAG,aAAa,IAAI,IAAI,CAChE,CAAC,CAAC,MAAM,CAAC,OAAO,OAAO,CAAC,EACxB,YAAY,CACb,GAAG;IAAE,UAAU,EAAE,CAAC,CAAA;CAAE,CAAC;AAEtB,MAAM,MAAM,SAAS,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,UAAU,CAAC,CAAC;AAEnD,eAAO,MAAM,UAAU;;;;;;;;gBAVhB,CAAC,CAAC,OAAO,CAAC,aAAa,CAAC;;;;;;;;;;;;;;;;;;;;;EAY7B,CAAC;AAEH,MAAM,MAAM,SAAS,CAAC,CAAC,SAAS,aAAa,GAAG,aAAa,IAAI,IAAI,CACnE,CAAC,CAAC,KAAK,CAAC,OAAO,UAAU,CAAC,EAC1B,YAAY,CACb,GAAG;IAAE,UAAU,EAAE,CAAC,CAAA;CAAE,CAAC;AAEtB,eAAO,MAAM,kBAAkB,EAAe,QAAQ,CAAC,YAAY,CAAC;AAEpE,eAAO,MAAM,UAAU,QAAS,SAAS,KAAG,QAAQ,CAAC,EACe,CAAC"}
|
|
@@ -4,7 +4,6 @@ import { AsyncTermSearcher } from '@synnaxlabs/x/search';
|
|
|
4
4
|
import { framer } from '../../framer';
|
|
5
5
|
import { NewRack, RackKey, rackKeyZ } from './payload';
|
|
6
6
|
import { task } from '../task';
|
|
7
|
-
|
|
8
7
|
export declare class Client implements AsyncTermSearcher<string, RackKey, Rack> {
|
|
9
8
|
readonly type: string;
|
|
10
9
|
private readonly client;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"payload.d.ts","sourceRoot":"","sources":["../../../src/hardware/rack/payload.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"payload.d.ts","sourceRoot":"","sources":["../../../src/hardware/rack/payload.ts"],"names":[],"mappings":"AASA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAExB,OAAO,EAAE,QAAQ,EAAE,MAAM,YAAY,CAAC;AAEtC,eAAO,MAAM,QAAQ,aAAa,CAAC;AAEnC,MAAM,MAAM,OAAO,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,QAAQ,CAAC,CAAC;AAE/C,eAAO,MAAM,KAAK;;;;;;;;;EAGhB,CAAC;AAEH,MAAM,MAAM,WAAW,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,KAAK,CAAC,CAAC;AAEhD,eAAO,MAAM,QAAQ;;;;;;;;;EAA+B,CAAC;AAErD,MAAM,MAAM,OAAO,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,QAAQ,CAAC,CAAC;AAE/C,eAAO,MAAM,gBAAgB,EAAa,QAAQ,CAAC,YAAY,CAAC;AAEhE,eAAO,MAAM,UAAU,QAAS,OAAO,KAAG,QAAQ,CAAC,EACe,CAAC"}
|
|
@@ -5,21 +5,27 @@ import { CrudeTimeSpan } from '@synnaxlabs/x/telem';
|
|
|
5
5
|
import { z } from 'zod';
|
|
6
6
|
import { framer } from '../../framer';
|
|
7
7
|
import { NewTask, Payload, State, StateObservable, TaskKey } from './payload';
|
|
8
|
+
import { ontology } from '../../ontology';
|
|
9
|
+
import { ranger } from '../../ranger';
|
|
8
10
|
import { signals } from '../../signals';
|
|
9
|
-
|
|
10
11
|
export declare class Task<C extends UnknownRecord = UnknownRecord, D extends {} = UnknownRecord, T extends string = string> {
|
|
11
12
|
readonly key: TaskKey;
|
|
12
13
|
readonly name: string;
|
|
13
14
|
readonly internal: boolean;
|
|
14
15
|
readonly type: T;
|
|
15
16
|
readonly config: C;
|
|
17
|
+
readonly snapshot: boolean;
|
|
16
18
|
state?: State<D>;
|
|
17
19
|
private readonly frameClient;
|
|
18
|
-
|
|
20
|
+
private readonly ontologyClient;
|
|
21
|
+
private readonly rangeClient;
|
|
22
|
+
constructor(key: TaskKey, name: string, type: T, config: C, internal?: boolean, snapshot?: boolean, state?: State<D> | null, frameClient?: framer.Client | null, ontologyClient?: ontology.Client | null, rangeClient?: ranger.Client | null);
|
|
19
23
|
get payload(): Payload<C, D>;
|
|
24
|
+
get ontologyID(): ontology.ID;
|
|
20
25
|
executeCommand(type: string, args?: UnknownRecord): Promise<string>;
|
|
21
26
|
executeCommandSync<D extends UnknownRecord = UnknownRecord>(type: string, args: UnknownRecord, timeout: CrudeTimeSpan): Promise<State<D>>;
|
|
22
27
|
openStateObserver<D extends UnknownRecord = UnknownRecord>(): Promise<StateObservable<D>>;
|
|
28
|
+
snapshottedTo(): Promise<ontology.Resource | null>;
|
|
23
29
|
}
|
|
24
30
|
declare const retrieveReqZ: z.ZodObject<{
|
|
25
31
|
rack: z.ZodOptional<z.ZodNumber>;
|
|
@@ -49,7 +55,9 @@ export declare class Client implements AsyncTermSearcher<string, TaskKey, Payloa
|
|
|
49
55
|
readonly type: string;
|
|
50
56
|
private readonly client;
|
|
51
57
|
private readonly frameClient;
|
|
52
|
-
|
|
58
|
+
private readonly ontologyClient;
|
|
59
|
+
private readonly rangeClient;
|
|
60
|
+
constructor(client: UnaryClient, frameClient: framer.Client, ontologyClient: ontology.Client, rangeClient: ranger.Client);
|
|
53
61
|
create<C extends UnknownRecord = UnknownRecord, D extends {} = UnknownRecord, T extends string = string>(task: NewTask<C, T>): Promise<Task<C, D, T>>;
|
|
54
62
|
create<C extends UnknownRecord = UnknownRecord, D extends {} = UnknownRecord, T extends string = string>(tasks: NewTask<C, T>[]): Promise<Task<C, D, T>[]>;
|
|
55
63
|
delete(keys: bigint | bigint[]): Promise<void>;
|
|
@@ -59,6 +67,7 @@ export declare class Client implements AsyncTermSearcher<string, TaskKey, Payloa
|
|
|
59
67
|
retrieve<C extends UnknownRecord = UnknownRecord, D extends {} = UnknownRecord, T extends string = string>(rack: number, options?: RetrieveOptions): Promise<Task<C, D, T>[]>;
|
|
60
68
|
retrieve<C extends UnknownRecord = UnknownRecord, D extends {} = UnknownRecord, T extends string = string>(keys: string[], options?: RetrieveOptions): Promise<Task<C, D, T>[]>;
|
|
61
69
|
retrieve<C extends UnknownRecord = UnknownRecord, D extends {} = UnknownRecord, T extends string = string>(key: string, options?: RetrieveOptions): Promise<Task<C, D, T>>;
|
|
70
|
+
copy(key: string, name: string, snapshot: boolean): Promise<Task>;
|
|
62
71
|
retrieveByName(name: string, rack?: number): Promise<Task>;
|
|
63
72
|
private execRetrieve;
|
|
64
73
|
private sugar;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"client.d.ts","sourceRoot":"","sources":["../../../src/hardware/task/client.ts"],"names":[],"mappings":"AASA,OAAO,EAAgB,KAAK,WAAW,EAAE,MAAM,uBAAuB,CAAC;AAEvE,OAAO,EAAE,KAAK,aAAa,EAAE,MAAM,sBAAsB,CAAC;AAC1D,OAAO,EAAE,KAAK,iBAAiB,EAAE,MAAM,sBAAsB,CAAC;AAC9D,OAAO,EAAE,KAAK,aAAa,EAAY,MAAM,qBAAqB,CAAC;AAEnE,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAExB,OAAO,EAAE,MAAM,EAAE,MAAM,UAAU,CAAC;AAGlC,OAAO,
|
|
1
|
+
{"version":3,"file":"client.d.ts","sourceRoot":"","sources":["../../../src/hardware/task/client.ts"],"names":[],"mappings":"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"}
|