@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.
Files changed (140) hide show
  1. package/.turbo/turbo-build.log +7 -7
  2. package/README.md +36 -10
  3. package/api/client.api.md +3121 -0
  4. package/api-extractor.json +7 -0
  5. package/dist/access/client.d.ts +0 -1
  6. package/dist/access/payload.d.ts +0 -1
  7. package/dist/auth/auth.d.ts +0 -1
  8. package/dist/channel/client.d.ts +6 -2
  9. package/dist/channel/client.d.ts.map +1 -1
  10. package/dist/channel/creator.d.ts +0 -1
  11. package/dist/channel/payload.d.ts +4 -1
  12. package/dist/channel/payload.d.ts.map +1 -1
  13. package/dist/channel/retriever.d.ts +0 -1
  14. package/dist/channel/writer.d.ts +0 -1
  15. package/dist/client.cjs +23 -19
  16. package/dist/client.d.ts +10 -7
  17. package/dist/client.d.ts.map +1 -1
  18. package/dist/client.js +2326 -1904
  19. package/dist/connection/checker.d.ts +21 -2
  20. package/dist/connection/checker.d.ts.map +1 -1
  21. package/dist/control/client.d.ts +0 -1
  22. package/dist/control/client.d.ts.map +1 -1
  23. package/dist/control/state.d.ts +0 -1
  24. package/dist/errors.d.ts +0 -1
  25. package/dist/framer/adapter.d.ts +0 -1
  26. package/dist/framer/client.d.ts +0 -1
  27. package/dist/framer/client.d.ts.map +1 -1
  28. package/dist/framer/deleter.d.ts +0 -1
  29. package/dist/framer/frame.d.ts +11 -12
  30. package/dist/framer/iterator.d.ts +0 -1
  31. package/dist/framer/streamProxy.d.ts +0 -1
  32. package/dist/framer/streamer.d.ts +0 -1
  33. package/dist/framer/writer.d.ts +0 -1
  34. package/dist/framer/writer.d.ts.map +1 -1
  35. package/dist/hardware/client.d.ts +0 -1
  36. package/dist/hardware/device/client.d.ts +0 -1
  37. package/dist/hardware/device/payload.d.ts +0 -1
  38. package/dist/hardware/device/payload.d.ts.map +1 -1
  39. package/dist/hardware/rack/client.d.ts +0 -1
  40. package/dist/hardware/rack/payload.d.ts +0 -1
  41. package/dist/hardware/rack/payload.d.ts.map +1 -1
  42. package/dist/hardware/task/client.d.ts +12 -3
  43. package/dist/hardware/task/client.d.ts.map +1 -1
  44. package/dist/hardware/task/ni/types.d.ts +14495 -0
  45. package/dist/hardware/task/ni/types.d.ts.map +1 -0
  46. package/dist/hardware/task/payload.d.ts +6 -1
  47. package/dist/hardware/task/payload.d.ts.map +1 -1
  48. package/dist/label/client.d.ts +8 -6
  49. package/dist/label/client.d.ts.map +1 -1
  50. package/dist/label/payload.d.ts +0 -1
  51. package/dist/label/retriever.d.ts +0 -1
  52. package/dist/label/retriever.d.ts.map +1 -1
  53. package/dist/label/writer.d.ts +32 -2
  54. package/dist/label/writer.d.ts.map +1 -1
  55. package/dist/ontology/client.d.ts +136 -12
  56. package/dist/ontology/client.d.ts.map +1 -1
  57. package/dist/ontology/group/client.d.ts +0 -1
  58. package/dist/ontology/group/group.d.ts +0 -1
  59. package/dist/ontology/group/payload.d.ts +0 -1
  60. package/dist/ontology/group/writer.d.ts +0 -1
  61. package/dist/ontology/group/writer.d.ts.map +1 -1
  62. package/dist/ontology/payload.d.ts +6 -3
  63. package/dist/ontology/payload.d.ts.map +1 -1
  64. package/dist/ontology/writer.d.ts +4 -5
  65. package/dist/ontology/writer.d.ts.map +1 -1
  66. package/dist/ranger/alias.d.ts +0 -1
  67. package/dist/ranger/client.d.ts +57 -14
  68. package/dist/ranger/client.d.ts.map +1 -1
  69. package/dist/ranger/external.d.ts +1 -1
  70. package/dist/ranger/external.d.ts.map +1 -1
  71. package/dist/ranger/kv.d.ts +42 -5
  72. package/dist/ranger/kv.d.ts.map +1 -1
  73. package/dist/ranger/payload.d.ts +5 -2
  74. package/dist/ranger/payload.d.ts.map +1 -1
  75. package/dist/ranger/writer.d.ts +107 -2
  76. package/dist/ranger/writer.d.ts.map +1 -1
  77. package/dist/setupspecs.d.ts +0 -1
  78. package/dist/signals/observable.d.ts +0 -1
  79. package/dist/transport.d.ts +0 -1
  80. package/dist/user/client.d.ts +0 -1
  81. package/dist/user/payload.d.ts +0 -1
  82. package/dist/util/retrieve.d.ts +0 -1
  83. package/dist/util/telem.d.ts +0 -1
  84. package/dist/util/zod.d.ts +0 -1
  85. package/dist/workspace/client.d.ts +0 -1
  86. package/dist/workspace/lineplot/client.d.ts +0 -1
  87. package/dist/workspace/lineplot/payload.d.ts +0 -1
  88. package/dist/workspace/lineplot/retriever.d.ts +0 -1
  89. package/dist/workspace/lineplot/writer.d.ts +0 -1
  90. package/dist/workspace/payload.d.ts +0 -1
  91. package/dist/workspace/retriever.d.ts +0 -1
  92. package/dist/workspace/schematic/client.d.ts +0 -1
  93. package/dist/workspace/schematic/payload.d.ts +0 -1
  94. package/dist/workspace/schematic/retriever.d.ts +0 -1
  95. package/dist/workspace/schematic/writer.d.ts +0 -1
  96. package/dist/workspace/writer.d.ts +0 -1
  97. package/package.json +14 -12
  98. package/src/access/access.spec.ts +11 -11
  99. package/src/channel/batchRetriever.spec.ts +2 -0
  100. package/src/channel/channel.spec.ts +51 -31
  101. package/src/channel/client.ts +7 -0
  102. package/src/channel/payload.ts +1 -0
  103. package/src/client.ts +17 -8
  104. package/src/connection/checker.ts +58 -1
  105. package/src/connection/connection.spec.ts +43 -3
  106. package/src/control/client.ts +9 -0
  107. package/src/errors.spec.ts +9 -0
  108. package/src/framer/client.ts +0 -1
  109. package/src/framer/frame.spec.ts +2 -2
  110. package/src/framer/frame.ts +22 -22
  111. package/src/framer/writer.ts +2 -1
  112. package/src/hardware/device/payload.ts +9 -0
  113. package/src/hardware/rack/payload.ts +9 -0
  114. package/src/hardware/task/client.ts +82 -6
  115. package/src/hardware/task/ni/types.ts +1716 -0
  116. package/src/hardware/task/payload.ts +10 -0
  117. package/src/hardware/task/task.spec.ts +45 -30
  118. package/src/label/client.ts +49 -19
  119. package/src/label/label.spec.ts +9 -0
  120. package/src/label/retriever.ts +2 -1
  121. package/src/label/writer.ts +11 -3
  122. package/src/ontology/client.ts +227 -14
  123. package/src/ontology/group/writer.ts +10 -12
  124. package/src/ontology/ontology.spec.ts +3 -5
  125. package/src/ontology/payload.ts +5 -1
  126. package/src/ontology/writer.ts +26 -12
  127. package/src/ranger/client.ts +223 -41
  128. package/src/ranger/external.ts +1 -1
  129. package/src/ranger/kv.ts +50 -11
  130. package/src/ranger/payload.ts +9 -5
  131. package/src/ranger/ranger.spec.ts +114 -49
  132. package/src/ranger/writer.ts +7 -2
  133. package/src/vite-env.d.ts +1 -1
  134. package/vite.config.ts +6 -1
  135. package/dist/ranger/active.d.ts +0 -11
  136. package/dist/ranger/active.d.ts.map +0 -1
  137. package/dist/ranger/range.d.ts +0 -32
  138. package/dist/ranger/range.d.ts.map +0 -1
  139. package/src/ranger/active.ts +0 -74
  140. package/src/ranger/range.ts +0 -98
@@ -1,15 +1,50 @@
1
1
  import { UnaryClient } from '@synnaxlabs/freighter';
2
- import { CrudeTimeRange, TimeRange } from '@synnaxlabs/x';
2
+ import { CrudeTimeRange, observe, TimeRange } from '@synnaxlabs/x';
3
3
  import { AsyncTermSearcher } from '@synnaxlabs/x/search';
4
+ import { Series } from '@synnaxlabs/x/telem';
4
5
  import { z } from 'zod';
6
+ import { Key as ChannelKey } from '../channel/payload';
5
7
  import { Retriever as ChannelRetriever } from '../channel/retriever';
6
8
  import { framer } from '../framer';
7
9
  import { label } from '../label';
8
- import { Key, Keys, Name, Names, NewPayload } from './payload';
9
- import { Range } from './range';
10
- import { Writer } from './writer';
10
+ import { Label } from '../label/payload';
11
+ import { ontology } from '../ontology';
12
+ import { Resource } from '../ontology/payload';
13
+ import { Alias, Aliaser } from './alias';
14
+ import { KV } from './kv';
15
+ import { Key, Keys, Name, Names, NewPayload, Params, Payload } from './payload';
16
+ import { CreateOptions, Writer } from './writer';
11
17
  import { signals } from '../signals';
12
-
18
+ export declare class Range {
19
+ key: string;
20
+ name: string;
21
+ readonly kv: KV;
22
+ readonly timeRange: TimeRange;
23
+ readonly color: string | undefined;
24
+ readonly channels: ChannelRetriever;
25
+ private readonly aliaser;
26
+ private readonly frameClient;
27
+ private readonly labelClient;
28
+ private readonly ontologyClient;
29
+ private readonly rangeClient;
30
+ constructor(name: string, timeRange: TimeRange | undefined, key: string, color: string | undefined, _frameClient: framer.Client, _kv: KV, _aliaser: Aliaser, _channels: ChannelRetriever, _labelClient: label.Client, _ontologyClient: ontology.Client, _rangeClient: Client);
31
+ get ontologyID(): ontology.ID;
32
+ get payload(): Payload;
33
+ setAlias(channel: ChannelKey | Name, alias: string): Promise<void>;
34
+ deleteAlias(...channels: ChannelKey[]): Promise<void>;
35
+ listAliases(): Promise<Record<ChannelKey, string>>;
36
+ resolveAlias(alias: string): Promise<ChannelKey>;
37
+ openAliasTracker(): Promise<signals.Observable<string, Alias>>;
38
+ retrieveParent(): Promise<Range | null>;
39
+ retrieveChildren(): Promise<Range[]>;
40
+ read(channel: Key | Name): Promise<Series>;
41
+ read(channels: Params): Promise<framer.Frame>;
42
+ labels(): Promise<Label[]>;
43
+ addLabel(...labels: label.Key[]): Promise<void>;
44
+ removeLabel(...labels: label.Key[]): Promise<void>;
45
+ openChildRangeTracker(): Promise<observe.ObservableAsyncCloseable<Range[]>>;
46
+ openParentRangeTracker(): Promise<observe.ObservableAsyncCloseable<Range> | null>;
47
+ }
13
48
  declare const retrieveReqZ: z.ZodObject<{
14
49
  keys: z.ZodOptional<z.ZodArray<z.ZodString, "many">>;
15
50
  names: z.ZodOptional<z.ZodArray<z.ZodString, "many">>;
@@ -51,14 +86,20 @@ declare const retrieveReqZ: z.ZodObject<{
51
86
  value: bigint;
52
87
  };
53
88
  }>, z.ZodType<TimeRange, z.ZodTypeDef, TimeRange>]>>;
89
+ limit: z.ZodOptional<z.ZodNumber>;
90
+ offset: z.ZodOptional<z.ZodNumber>;
54
91
  }, "strip", z.ZodTypeAny, {
55
92
  keys?: string[] | undefined;
56
93
  names?: string[] | undefined;
94
+ limit?: number | undefined;
95
+ offset?: number | undefined;
57
96
  term?: string | undefined;
58
97
  overlapsWith?: TimeRange | undefined;
59
98
  }, {
60
99
  keys?: string[] | undefined;
61
100
  names?: string[] | undefined;
101
+ limit?: number | undefined;
102
+ offset?: number | undefined;
62
103
  term?: string | undefined;
63
104
  overlapsWith?: TimeRange | {
64
105
  start: string | number | Number | import('@synnaxlabs/x').TimeStamp | {
@@ -76,24 +117,26 @@ export declare class Client implements AsyncTermSearcher<string, Key, Range> {
76
117
  private readonly writer;
77
118
  private readonly unaryClient;
78
119
  private readonly channels;
79
- private readonly active;
80
120
  private readonly labelClient;
81
- constructor(frameClient: framer.Client, writer: Writer, unary: UnaryClient, channels: ChannelRetriever, labelClient: label.Client);
82
- create(range: NewPayload): Promise<Range>;
83
- create(ranges: NewPayload[]): Promise<Range[]>;
121
+ private readonly ontologyClient;
122
+ constructor(frameClient: framer.Client, writer: Writer, unary: UnaryClient, channels: ChannelRetriever, labelClient: label.Client, ontologyClient: ontology.Client);
123
+ create(range: NewPayload, options?: CreateOptions): Promise<Range>;
124
+ create(ranges: NewPayload[], options?: CreateOptions): Promise<Range[]>;
84
125
  rename(key: Key, name: Name): Promise<void>;
85
126
  delete(key: Key | Keys): Promise<void>;
86
127
  search(term: string): Promise<Range[]>;
87
- page(): Promise<Range[]>;
128
+ page(offset: number, limit: number): Promise<Range[]>;
88
129
  retrieve(range: CrudeTimeRange): Promise<Range[]>;
89
130
  retrieve(range: Key | Name): Promise<Range>;
90
131
  retrieve(range: Keys | Names): Promise<Range[]>;
132
+ getKV(range: Key): KV;
91
133
  private execRetrieve;
92
- setActive(range: Key): Promise<void>;
93
- retrieveActive(): Promise<Range | null>;
94
- clearActive(range: Key): Promise<void>;
95
- private sugar;
134
+ retrieveParent(range: Key): Promise<Range | null>;
135
+ sugarOne(payload: Payload): Range;
136
+ sugarMany(payloads: Payload[]): Range[];
96
137
  openTracker(): Promise<signals.Observable<string, Range>>;
138
+ resourcesToRanges(resources: Resource[]): Range[];
139
+ resourceToRange(resource: Resource): Range;
97
140
  }
98
141
  export {};
99
142
  //# sourceMappingURL=client.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"client.d.ts","sourceRoot":"","sources":["../../src/ranger/client.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"client.d.ts","sourceRoot":"","sources":["../../src/ranger/client.ts"],"names":[],"mappings":"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"}
@@ -1,6 +1,6 @@
1
1
  export type { Alias, AliasChange } from './alias';
2
2
  export * from './client';
3
+ export * from './kv';
3
4
  export * from './payload';
4
- export * from './range';
5
5
  export * from './writer';
6
6
  //# sourceMappingURL=external.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"external.d.ts","sourceRoot":"","sources":["../../src/ranger/external.ts"],"names":[],"mappings":"AASA,YAAY,EAAE,KAAK,EAAE,WAAW,EAAE,MAAM,gBAAgB,CAAC;AACzD,cAAc,iBAAiB,CAAC;AAChC,cAAc,kBAAkB,CAAC;AACjC,cAAc,gBAAgB,CAAC;AAC/B,cAAc,iBAAiB,CAAC"}
1
+ {"version":3,"file":"external.d.ts","sourceRoot":"","sources":["../../src/ranger/external.ts"],"names":[],"mappings":"AASA,YAAY,EAAE,KAAK,EAAE,WAAW,EAAE,MAAM,gBAAgB,CAAC;AACzD,cAAc,iBAAiB,CAAC;AAChC,cAAc,aAAa,CAAC;AAC5B,cAAc,kBAAkB,CAAC;AACjC,cAAc,iBAAiB,CAAC"}
@@ -1,7 +1,8 @@
1
1
  import { UnaryClient } from '@synnaxlabs/freighter';
2
2
  import { z } from 'zod';
3
+ import { framer } from '../framer';
3
4
  import { Key } from './payload';
4
-
5
+ import { signals } from '../signals';
5
6
  declare const getReqZ: z.ZodObject<{
6
7
  range: z.ZodString;
7
8
  keys: z.ZodArray<z.ZodString, "many">;
@@ -12,16 +13,49 @@ declare const getReqZ: z.ZodObject<{
12
13
  keys: string[];
13
14
  range: string;
14
15
  }>;
16
+ declare const kvPairZ: z.ZodObject<{
17
+ range: z.ZodString;
18
+ key: z.ZodString;
19
+ value: z.ZodString;
20
+ }, "strip", z.ZodTypeAny, {
21
+ value: string;
22
+ key: string;
23
+ range: string;
24
+ }, {
25
+ value: string;
26
+ key: string;
27
+ range: string;
28
+ }>;
15
29
  export type GetRequest = z.infer<typeof getReqZ>;
16
30
  declare const setReqZ: z.ZodObject<{
17
31
  range: z.ZodString;
18
- pairs: z.ZodRecord<z.ZodString, z.ZodString>;
32
+ pairs: z.ZodArray<z.ZodObject<{
33
+ range: z.ZodString;
34
+ key: z.ZodString;
35
+ value: z.ZodString;
36
+ }, "strip", z.ZodTypeAny, {
37
+ value: string;
38
+ key: string;
39
+ range: string;
40
+ }, {
41
+ value: string;
42
+ key: string;
43
+ range: string;
44
+ }>, "many">;
19
45
  }, "strip", z.ZodTypeAny, {
20
46
  range: string;
21
- pairs: Record<string, string>;
47
+ pairs: {
48
+ value: string;
49
+ key: string;
50
+ range: string;
51
+ }[];
22
52
  }, {
23
53
  range: string;
24
- pairs: Record<string, string>;
54
+ pairs: {
55
+ value: string;
56
+ key: string;
57
+ range: string;
58
+ }[];
25
59
  }>;
26
60
  export type SetRequest = z.infer<typeof setReqZ>;
27
61
  declare const deleteReqZ: z.ZodObject<{
@@ -35,19 +69,22 @@ declare const deleteReqZ: z.ZodObject<{
35
69
  range: string;
36
70
  }>;
37
71
  export type DeleteRequest = z.infer<typeof deleteReqZ>;
72
+ export type KVPair = z.infer<typeof kvPairZ>;
38
73
  export declare class KV {
39
74
  private static readonly GET_ENDPOINT;
40
75
  private static readonly SET_ENDPOINT;
41
76
  private static readonly DELETE_ENDPOINT;
42
77
  private readonly rangeKey;
43
78
  private readonly client;
44
- constructor(rng: Key, client: UnaryClient);
79
+ private readonly frameClient;
80
+ constructor(rng: Key, client: UnaryClient, frameClient: framer.Client);
45
81
  get(key: string): Promise<string>;
46
82
  get(keys: string[]): Promise<Record<string, string>>;
47
83
  list(): Promise<Record<string, string>>;
48
84
  set(key: string, value: string): Promise<void>;
49
85
  set(kv: Record<string, string>): Promise<void>;
50
86
  delete(key: string | string[]): Promise<void>;
87
+ openTracker(): Promise<signals.Observable<string, KVPair>>;
51
88
  }
52
89
  export {};
53
90
  //# sourceMappingURL=kv.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"kv.d.ts","sourceRoot":"","sources":["../../src/ranger/kv.ts"],"names":[],"mappings":"AASA,OAAO,EAAe,KAAK,WAAW,EAAE,MAAM,uBAAuB,CAAC;AAGtE,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAExB,OAAO,EAAE,KAAK,GAAG,EAAQ,MAAM,kBAAkB,CAAC;AAElD,QAAA,MAAM,OAAO;;;;;;;;;EAGX,CAAC;AAMH,MAAM,MAAM,UAAU,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,OAAO,CAAC,CAAC;AAEjD,QAAA,MAAM,OAAO;;;;;;;;;EAGX,CAAC;AAEH,MAAM,MAAM,UAAU,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,OAAO,CAAC,CAAC;AAEjD,QAAA,MAAM,UAAU;;;;;;;;;EAGd,CAAC;AAEH,MAAM,MAAM,aAAa,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,UAAU,CAAC,CAAC;AAEvD,qBAAa,EAAE;IACb,OAAO,CAAC,MAAM,CAAC,QAAQ,CAAC,YAAY,CAAmB;IACvD,OAAO,CAAC,MAAM,CAAC,QAAQ,CAAC,YAAY,CAAmB;IACvD,OAAO,CAAC,MAAM,CAAC,QAAQ,CAAC,eAAe,CAAsB;IAC7D,OAAO,CAAC,QAAQ,CAAC,QAAQ,CAAM;IAC/B,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAc;gBAEzB,GAAG,EAAE,GAAG,EAAE,MAAM,EAAE,WAAW;IAKnC,GAAG,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC;IAEjC,GAAG,CAAC,IAAI,EAAE,MAAM,EAAE,GAAG,OAAO,CAAC,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IAapD,IAAI,IAAI,OAAO,CAAC,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IAIvC,GAAG,CAAC,GAAG,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAE9C,GAAG,CAAC,EAAE,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,GAAG,OAAO,CAAC,IAAI,CAAC;IAe9C,MAAM,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM,EAAE,GAAG,OAAO,CAAC,IAAI,CAAC;CASpD"}
1
+ {"version":3,"file":"kv.d.ts","sourceRoot":"","sources":["../../src/ranger/kv.ts"],"names":[],"mappings":"AASA,OAAO,EAAgB,KAAK,WAAW,EAAE,MAAM,uBAAuB,CAAC;AAGvE,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAExB,OAAO,EAAE,MAAM,EAAE,MAAM,UAAU,CAAC;AAClC,OAAO,EAAE,KAAK,GAAG,EAAQ,MAAM,kBAAkB,CAAC;AAClD,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AAGpC,QAAA,MAAM,OAAO;;;;;;;;;EAGX,CAAC;AAEH,QAAA,MAAM,OAAO;;;;;;;;;;;;EAIX,CAAC;AAMH,MAAM,MAAM,UAAU,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,OAAO,CAAC,CAAC;AAEjD,QAAA,MAAM,OAAO;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAGX,CAAC;AAEH,MAAM,MAAM,UAAU,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,OAAO,CAAC,CAAC;AAEjD,QAAA,MAAM,UAAU;;;;;;;;;EAGd,CAAC;AAEH,MAAM,MAAM,aAAa,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,UAAU,CAAC,CAAC;AAEvD,MAAM,MAAM,MAAM,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,OAAO,CAAC,CAAC;AAE7C,qBAAa,EAAE;IACb,OAAO,CAAC,MAAM,CAAC,QAAQ,CAAC,YAAY,CAAmB;IACvD,OAAO,CAAC,MAAM,CAAC,QAAQ,CAAC,YAAY,CAAmB;IACvD,OAAO,CAAC,MAAM,CAAC,QAAQ,CAAC,eAAe,CAAsB;IAC7D,OAAO,CAAC,QAAQ,CAAC,QAAQ,CAAM;IAC/B,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAc;IACrC,OAAO,CAAC,QAAQ,CAAC,WAAW,CAAgB;gBAEhC,GAAG,EAAE,GAAG,EAAE,MAAM,EAAE,WAAW,EAAE,WAAW,EAAE,MAAM,CAAC,MAAM;IAM/D,GAAG,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC;IAEjC,GAAG,CAAC,IAAI,EAAE,MAAM,EAAE,GAAG,OAAO,CAAC,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IAcpD,IAAI,IAAI,OAAO,CAAC,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IAIvC,GAAG,CAAC,GAAG,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAE9C,GAAG,CAAC,EAAE,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,GAAG,OAAO,CAAC,IAAI,CAAC;IAoB9C,MAAM,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM,EAAE,GAAG,OAAO,CAAC,IAAI,CAAC;IAU7C,WAAW,IAAI,OAAO,CAAC,OAAO,CAAC,UAAU,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;CAmBjE"}
@@ -1,7 +1,6 @@
1
1
  import { TimeRange } from '@synnaxlabs/x/telem';
2
2
  import { z } from 'zod';
3
3
  import { ontology } from '../ontology';
4
-
5
4
  export declare const keyZ: z.ZodString;
6
5
  export type Key = z.infer<typeof keyZ>;
7
6
  export type Name = string;
@@ -129,27 +128,31 @@ export declare const newPayloadZ: z.ZodObject<z.objectUtil.extendShape<{
129
128
  key?: string | undefined;
130
129
  color?: string | undefined;
131
130
  }>;
132
- export type NewPayload = z.infer<typeof newPayloadZ>;
131
+ export type NewPayload = z.input<typeof newPayloadZ>;
133
132
  export type ParamAnalysisResult = {
134
133
  single: true;
135
134
  variant: "keys";
136
135
  normalized: Keys;
137
136
  actual: Key;
137
+ empty: never;
138
138
  } | {
139
139
  single: true;
140
140
  variant: "names";
141
141
  normalized: Names;
142
142
  actual: Name;
143
+ empty: never;
143
144
  } | {
144
145
  single: false;
145
146
  variant: "keys";
146
147
  normalized: Keys;
147
148
  actual: Keys;
149
+ empty: boolean;
148
150
  } | {
149
151
  single: false;
150
152
  variant: "names";
151
153
  normalized: Names;
152
154
  actual: Names;
155
+ empty: boolean;
153
156
  };
154
157
  export declare const analyzeParams: (params: Params) => ParamAnalysisResult;
155
158
  export declare const RangeOntologyType: ontology.ResourceType;
@@ -1 +1 @@
1
- {"version":3,"file":"payload.d.ts","sourceRoot":"","sources":["../../src/ranger/payload.ts"],"names":[],"mappings":"AASA,OAAO,EAAE,SAAS,EAAE,MAAM,qBAAqB,CAAC;AAEhD,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAExB,OAAO,EAAE,QAAQ,EAAE,MAAM,YAAY,CAAC;AAEtC,eAAO,MAAM,IAAI,aAAoB,CAAC;AACtC,MAAM,MAAM,GAAG,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,IAAI,CAAC,CAAC;AACvC,MAAM,MAAM,IAAI,GAAG,MAAM,CAAC;AAC1B,MAAM,MAAM,IAAI,GAAG,GAAG,EAAE,CAAC;AACzB,MAAM,MAAM,KAAK,GAAG,IAAI,EAAE,CAAC;AAC3B,MAAM,MAAM,MAAM,GAAG,GAAG,GAAG,IAAI,GAAG,IAAI,GAAG,KAAK,CAAC;AAE/C,eAAO,MAAM,QAAQ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAKnB,CAAC;AACH,MAAM,MAAM,OAAO,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,QAAQ,CAAC,CAAC;AAE/C,eAAO,MAAM,WAAW;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAEtB,CAAC;AACH,MAAM,MAAM,UAAU,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,WAAW,CAAC,CAAC;AAErD,MAAM,MAAM,mBAAmB,GAC3B;IACE,MAAM,EAAE,IAAI,CAAC;IACb,OAAO,EAAE,MAAM,CAAC;IAChB,UAAU,EAAE,IAAI,CAAC;IACjB,MAAM,EAAE,GAAG,CAAC;CACb,GACD;IACE,MAAM,EAAE,IAAI,CAAC;IACb,OAAO,EAAE,OAAO,CAAC;IACjB,UAAU,EAAE,KAAK,CAAC;IAClB,MAAM,EAAE,IAAI,CAAC;CACd,GACD;IACE,MAAM,EAAE,KAAK,CAAC;IACd,OAAO,EAAE,MAAM,CAAC;IAChB,UAAU,EAAE,IAAI,CAAC;IACjB,MAAM,EAAE,IAAI,CAAC;CACd,GACD;IACE,MAAM,EAAE,KAAK,CAAC;IACd,OAAO,EAAE,OAAO,CAAC;IACjB,UAAU,EAAE,KAAK,CAAC;IAClB,MAAM,EAAE,KAAK,CAAC;CACf,CAAC;AAEN,eAAO,MAAM,aAAa,WAAY,MAAM,KAAG,mBAY9C,CAAC;AAEF,eAAO,MAAM,iBAAiB,EAAc,QAAQ,CAAC,YAAY,CAAC;AAClE,eAAO,MAAM,sBAAsB,EAAoB,QAAQ,CAAC,YAAY,CAAC;AAE7E,eAAO,MAAM,eAAe,QAAS,GAAG,KAAG,QAAQ,CAAC,EACI,CAAC;AAEzD,eAAO,MAAM,oBAAoB,QAAS,GAAG,KAAG,QAAQ,CAAC,EACI,CAAC"}
1
+ {"version":3,"file":"payload.d.ts","sourceRoot":"","sources":["../../src/ranger/payload.ts"],"names":[],"mappings":"AASA,OAAO,EAAE,SAAS,EAAE,MAAM,qBAAqB,CAAC;AAEhD,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAExB,OAAO,EAAE,QAAQ,EAAE,MAAM,YAAY,CAAC;AAEtC,eAAO,MAAM,IAAI,aAAoB,CAAC;AACtC,MAAM,MAAM,GAAG,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,IAAI,CAAC,CAAC;AACvC,MAAM,MAAM,IAAI,GAAG,MAAM,CAAC;AAC1B,MAAM,MAAM,IAAI,GAAG,GAAG,EAAE,CAAC;AACzB,MAAM,MAAM,KAAK,GAAG,IAAI,EAAE,CAAC;AAC3B,MAAM,MAAM,MAAM,GAAG,GAAG,GAAG,IAAI,GAAG,IAAI,GAAG,KAAK,CAAC;AAE/C,eAAO,MAAM,QAAQ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAKnB,CAAC;AACH,MAAM,MAAM,OAAO,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,QAAQ,CAAC,CAAC;AAE/C,eAAO,MAAM,WAAW;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAEtB,CAAC;AACH,MAAM,MAAM,UAAU,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,WAAW,CAAC,CAAC;AAErD,MAAM,MAAM,mBAAmB,GAC3B;IACE,MAAM,EAAE,IAAI,CAAC;IACb,OAAO,EAAE,MAAM,CAAC;IAChB,UAAU,EAAE,IAAI,CAAC;IACjB,MAAM,EAAE,GAAG,CAAC;IACZ,KAAK,EAAE,KAAK,CAAC;CACd,GACD;IACE,MAAM,EAAE,IAAI,CAAC;IACb,OAAO,EAAE,OAAO,CAAC;IACjB,UAAU,EAAE,KAAK,CAAC;IAClB,MAAM,EAAE,IAAI,CAAC;IACb,KAAK,EAAE,KAAK,CAAC;CACd,GACD;IACE,MAAM,EAAE,KAAK,CAAC;IACd,OAAO,EAAE,MAAM,CAAC;IAChB,UAAU,EAAE,IAAI,CAAC;IACjB,MAAM,EAAE,IAAI,CAAC;IACb,KAAK,EAAE,OAAO,CAAC;CAChB,GACD;IACE,MAAM,EAAE,KAAK,CAAC;IACd,OAAO,EAAE,OAAO,CAAC;IACjB,UAAU,EAAE,KAAK,CAAC;IAClB,MAAM,EAAE,KAAK,CAAC;IACd,KAAK,EAAE,OAAO,CAAC;CAChB,CAAC;AAEN,eAAO,MAAM,aAAa,WAAY,MAAM,KAAG,mBAY9C,CAAC;AAEF,eAAO,MAAM,iBAAiB,EAAc,QAAQ,CAAC,YAAY,CAAC;AAClE,eAAO,MAAM,sBAAsB,EAAoB,QAAQ,CAAC,YAAY,CAAC;AAE7E,eAAO,MAAM,eAAe,QAAS,GAAG,KAAG,QAAQ,CAAC,EACI,CAAC;AAEzD,eAAO,MAAM,oBAAoB,QAAS,GAAG,KAAG,QAAQ,CAAC,EACI,CAAC"}
@@ -1,11 +1,116 @@
1
1
  import { UnaryClient } from '@synnaxlabs/freighter';
2
+ import { z } from 'zod';
2
3
  import { NewPayload, Payload } from './payload';
3
-
4
+ declare const createReqZ: z.ZodObject<{
5
+ parent: z.ZodOptional<z.ZodObject<{
6
+ type: z.ZodUnion<[z.ZodLiteral<"label">, z.ZodLiteral<"builtin">, z.ZodLiteral<"cluster">, z.ZodLiteral<"channel">, z.ZodLiteral<"node">, z.ZodLiteral<"group">, z.ZodLiteral<"range">, z.ZodLiteral<"range-alias">, z.ZodLiteral<"user">, z.ZodLiteral<"workspace">, z.ZodLiteral<"schematic">, z.ZodLiteral<"lineplot">, z.ZodLiteral<"rack">, z.ZodLiteral<"device">, z.ZodLiteral<"task">, z.ZodLiteral<"policy">]>;
7
+ key: z.ZodString;
8
+ }, "strip", z.ZodTypeAny, {
9
+ type: "label" | "builtin" | "cluster" | "channel" | "node" | "group" | "range" | "range-alias" | "user" | "workspace" | "schematic" | "lineplot" | "rack" | "device" | "task" | "policy";
10
+ key: string;
11
+ }, {
12
+ type: "label" | "builtin" | "cluster" | "channel" | "node" | "group" | "range" | "range-alias" | "user" | "workspace" | "schematic" | "lineplot" | "rack" | "device" | "task" | "policy";
13
+ key: string;
14
+ }>>;
15
+ ranges: z.ZodArray<z.ZodObject<z.objectUtil.extendShape<{
16
+ key: z.ZodString;
17
+ name: z.ZodString;
18
+ timeRange: z.ZodUnion<[z.ZodEffects<z.ZodObject<{
19
+ start: z.ZodUnion<[z.ZodEffects<z.ZodObject<{
20
+ value: z.ZodBigInt;
21
+ }, "strip", z.ZodTypeAny, {
22
+ value: bigint;
23
+ }, {
24
+ value: bigint;
25
+ }>, import('@synnaxlabs/x').TimeStamp, {
26
+ value: bigint;
27
+ }>, z.ZodEffects<z.ZodString, import('@synnaxlabs/x').TimeStamp, string>, z.ZodEffects<z.ZodType<Number, z.ZodTypeDef, Number>, import('@synnaxlabs/x').TimeStamp, Number>, z.ZodEffects<z.ZodNumber, import('@synnaxlabs/x').TimeStamp, number>, z.ZodType<import('@synnaxlabs/x').TimeStamp, z.ZodTypeDef, import('@synnaxlabs/x').TimeStamp>]>;
28
+ end: z.ZodUnion<[z.ZodEffects<z.ZodObject<{
29
+ value: z.ZodBigInt;
30
+ }, "strip", z.ZodTypeAny, {
31
+ value: bigint;
32
+ }, {
33
+ value: bigint;
34
+ }>, import('@synnaxlabs/x').TimeStamp, {
35
+ value: bigint;
36
+ }>, z.ZodEffects<z.ZodString, import('@synnaxlabs/x').TimeStamp, string>, z.ZodEffects<z.ZodType<Number, z.ZodTypeDef, Number>, import('@synnaxlabs/x').TimeStamp, Number>, z.ZodEffects<z.ZodNumber, import('@synnaxlabs/x').TimeStamp, number>, z.ZodType<import('@synnaxlabs/x').TimeStamp, z.ZodTypeDef, import('@synnaxlabs/x').TimeStamp>]>;
37
+ }, "strip", z.ZodTypeAny, {
38
+ start: import('@synnaxlabs/x').TimeStamp;
39
+ end: import('@synnaxlabs/x').TimeStamp;
40
+ }, {
41
+ start: string | number | Number | import('@synnaxlabs/x').TimeStamp | {
42
+ value: bigint;
43
+ };
44
+ end: string | number | Number | import('@synnaxlabs/x').TimeStamp | {
45
+ value: bigint;
46
+ };
47
+ }>, import('@synnaxlabs/x').TimeRange, {
48
+ start: string | number | Number | import('@synnaxlabs/x').TimeStamp | {
49
+ value: bigint;
50
+ };
51
+ end: string | number | Number | import('@synnaxlabs/x').TimeStamp | {
52
+ value: bigint;
53
+ };
54
+ }>, z.ZodType<import('@synnaxlabs/x').TimeRange, z.ZodTypeDef, import('@synnaxlabs/x').TimeRange>]>;
55
+ color: z.ZodOptional<z.ZodString>;
56
+ }, {
57
+ key: z.ZodOptional<z.ZodString>;
58
+ }>, "strip", z.ZodTypeAny, {
59
+ name: string;
60
+ timeRange: import('@synnaxlabs/x').TimeRange;
61
+ key?: string | undefined;
62
+ color?: string | undefined;
63
+ }, {
64
+ name: string;
65
+ timeRange: import('@synnaxlabs/x').TimeRange | {
66
+ start: string | number | Number | import('@synnaxlabs/x').TimeStamp | {
67
+ value: bigint;
68
+ };
69
+ end: string | number | Number | import('@synnaxlabs/x').TimeStamp | {
70
+ value: bigint;
71
+ };
72
+ };
73
+ key?: string | undefined;
74
+ color?: string | undefined;
75
+ }>, "many">;
76
+ }, "strip", z.ZodTypeAny, {
77
+ ranges: {
78
+ name: string;
79
+ timeRange: import('@synnaxlabs/x').TimeRange;
80
+ key?: string | undefined;
81
+ color?: string | undefined;
82
+ }[];
83
+ parent?: {
84
+ type: "label" | "builtin" | "cluster" | "channel" | "node" | "group" | "range" | "range-alias" | "user" | "workspace" | "schematic" | "lineplot" | "rack" | "device" | "task" | "policy";
85
+ key: string;
86
+ } | undefined;
87
+ }, {
88
+ ranges: {
89
+ name: string;
90
+ timeRange: import('@synnaxlabs/x').TimeRange | {
91
+ start: string | number | Number | import('@synnaxlabs/x').TimeStamp | {
92
+ value: bigint;
93
+ };
94
+ end: string | number | Number | import('@synnaxlabs/x').TimeStamp | {
95
+ value: bigint;
96
+ };
97
+ };
98
+ key?: string | undefined;
99
+ color?: string | undefined;
100
+ }[];
101
+ parent?: {
102
+ type: "label" | "builtin" | "cluster" | "channel" | "node" | "group" | "range" | "range-alias" | "user" | "workspace" | "schematic" | "lineplot" | "rack" | "device" | "task" | "policy";
103
+ key: string;
104
+ } | undefined;
105
+ }>;
106
+ type CreateRequest = z.infer<typeof createReqZ>;
107
+ export type CreateOptions = Pick<CreateRequest, "parent">;
4
108
  export declare class Writer {
5
109
  client: UnaryClient;
6
110
  constructor(client: UnaryClient);
7
111
  rename(key: string, name: string): Promise<void>;
8
- create(ranges: NewPayload[]): Promise<Payload[]>;
112
+ create(ranges: NewPayload[], options?: CreateOptions): Promise<Payload[]>;
9
113
  delete(keys: string[]): Promise<void>;
10
114
  }
115
+ export {};
11
116
  //# sourceMappingURL=writer.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"writer.d.ts","sourceRoot":"","sources":["../../src/ranger/writer.ts"],"names":[],"mappings":"AASA,OAAO,EAAgB,KAAK,WAAW,EAAE,MAAM,uBAAuB,CAAC;AAGvE,OAAO,EAEL,KAAK,UAAU,EAEf,KAAK,OAAO,EAEb,MAAM,kBAAkB,CAAC;AA2B1B,qBAAa,MAAM;IACjB,MAAM,EAAE,WAAW,CAAC;gBAER,MAAM,EAAE,WAAW;IAIzB,MAAM,CAAC,GAAG,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAUhD,MAAM,CAAC,MAAM,EAAE,UAAU,EAAE,GAAG,OAAO,CAAC,OAAO,EAAE,CAAC;IAWhD,MAAM,CAAC,IAAI,EAAE,MAAM,EAAE,GAAG,OAAO,CAAC,IAAI,CAAC;CAS5C"}
1
+ {"version":3,"file":"writer.d.ts","sourceRoot":"","sources":["../../src/ranger/writer.ts"],"names":[],"mappings":"AASA,OAAO,EAAgB,KAAK,WAAW,EAAE,MAAM,uBAAuB,CAAC;AACvE,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAGxB,OAAO,EAEL,KAAK,UAAU,EAEf,KAAK,OAAO,EAEb,MAAM,kBAAkB,CAAC;AAM1B,QAAA,MAAM,UAAU;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAGd,CAAC;AAEH,KAAK,aAAa,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,UAAU,CAAC,CAAC;AAChD,MAAM,MAAM,aAAa,GAAG,IAAI,CAAC,aAAa,EAAE,QAAQ,CAAC,CAAC;AAmB1D,qBAAa,MAAM;IACjB,MAAM,EAAE,WAAW,CAAC;gBAER,MAAM,EAAE,WAAW;IAIzB,MAAM,CAAC,GAAG,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAUhD,MAAM,CAAC,MAAM,EAAE,UAAU,EAAE,EAAE,OAAO,CAAC,EAAE,aAAa,GAAG,OAAO,CAAC,OAAO,EAAE,CAAC;IAWzE,MAAM,CAAC,IAAI,EAAE,MAAM,EAAE,GAAG,OAAO,CAAC,IAAI,CAAC;CAS5C"}
@@ -1,5 +1,4 @@
1
1
  import { default as Synnax, SynnaxProps } from './client';
2
-
3
2
  export declare const HOST = "localhost";
4
3
  export declare const PORT = 9090;
5
4
  export declare const newClient: (...props: SynnaxProps[]) => Synnax;
@@ -3,7 +3,6 @@ import { observe } from '@synnaxlabs/x/observe';
3
3
  import { Series } from '@synnaxlabs/x/telem';
4
4
  import { channel } from '../channel';
5
5
  import { framer } from '../framer';
6
-
7
6
  export type Decoder<K, V> = (variant: change.Variant, data: Series) => Array<change.Change<K, V>>;
8
7
  export interface Observable<K, V> extends observe.ObservableAsyncCloseable<Array<change.Change<K, V>>> {
9
8
  }
@@ -1,6 +1,5 @@
1
1
  import { Middleware, StreamClient, UnaryClient } from '@synnaxlabs/freighter';
2
2
  import { URL } from '@synnaxlabs/x/url';
3
-
4
3
  export declare class Transport {
5
4
  readonly url: URL;
6
5
  readonly unary: UnaryClient;
@@ -1,6 +1,5 @@
1
1
  import { UnaryClient } from '@synnaxlabs/freighter';
2
2
  import { Payload } from './payload';
3
-
4
3
  export declare class Client {
5
4
  private readonly client;
6
5
  constructor(client: UnaryClient);
@@ -1,6 +1,5 @@
1
1
  import { z } from 'zod';
2
2
  import { ontology } from '../ontology';
3
-
4
3
  export declare const keyZ: z.ZodString;
5
4
  export type Key = z.infer<typeof keyZ>;
6
5
  export declare const payloadZ: z.ZodObject<{
@@ -1,5 +1,4 @@
1
1
  import { Primitive } from '@synnaxlabs/x';
2
-
3
2
  export type SingleParamAnalysisResult<T extends Primitive, K extends PartialTypeNameRecord<T>> = T extends any ? {
4
3
  single: true;
5
4
  variant: K[keyof K];
@@ -1,4 +1,3 @@
1
1
  import { DataType, TypedArray } from '@synnaxlabs/x/telem';
2
-
3
2
  export declare const randomSeries: (length: number, dataType: DataType) => TypedArray;
4
3
  //# sourceMappingURL=telem.d.ts.map
@@ -1,4 +1,3 @@
1
1
  import { z } from 'zod';
2
-
3
2
  export declare const nullableArrayZ: <Z extends z.ZodTypeAny>(item: Z) => z.ZodUnion<[z.ZodEffects<z.ZodNull, z.output<Z>[], null>, z.ZodArray<Z, "many">]>;
4
3
  //# sourceMappingURL=zod.d.ts.map
@@ -5,7 +5,6 @@ import { linePlot } from './lineplot';
5
5
  import { Key, Workspace } from './payload';
6
6
  import { schematic } from './schematic';
7
7
  import { NewWorkspace } from './writer';
8
-
9
8
  export declare class Client implements AsyncTermSearcher<string, Key, Workspace> {
10
9
  readonly type = "workspace";
11
10
  readonly schematic: schematic.Client;
@@ -2,7 +2,6 @@ import { UnaryClient } from '@synnaxlabs/freighter';
2
2
  import { UnknownRecord } from '@synnaxlabs/x/record';
3
3
  import { Key, LinePlot, Params } from './payload';
4
4
  import { NewLinePlot } from './writer';
5
-
6
5
  export declare class Client {
7
6
  private readonly writer;
8
7
  private readonly retriever;
@@ -1,7 +1,6 @@
1
1
  import { UnknownRecord } from '@synnaxlabs/x/record';
2
2
  import { z } from 'zod';
3
3
  import { ontology } from '../../ontology';
4
-
5
4
  export declare const keyZ: z.ZodString;
6
5
  export type Key = z.infer<typeof keyZ>;
7
6
  export type Params = Key | Key[];
@@ -1,6 +1,5 @@
1
1
  import { UnaryClient } from '@synnaxlabs/freighter';
2
2
  import { LinePlot, Params } from './payload';
3
-
4
3
  export declare class Retriever {
5
4
  private readonly ENDPOINT;
6
5
  private readonly client;
@@ -2,7 +2,6 @@ import { UnaryClient } from '@synnaxlabs/freighter';
2
2
  import { UnknownRecord } from '@synnaxlabs/x/record';
3
3
  import { z } from 'zod';
4
4
  import { Key, LinePlot, Params } from './payload';
5
-
6
5
  export declare const newLinePlotZ: z.ZodEffects<z.ZodObject<{
7
6
  name: z.ZodString;
8
7
  key: z.ZodOptional<z.ZodString>;
@@ -1,7 +1,6 @@
1
1
  import { UnknownRecord } from '@synnaxlabs/x/record';
2
2
  import { z } from 'zod';
3
3
  import { ontology } from '../ontology';
4
-
5
4
  export declare const keyZ: z.ZodString;
6
5
  export type Key = z.infer<typeof keyZ>;
7
6
  export type Params = Key | Key[];
@@ -1,6 +1,5 @@
1
1
  import { UnaryClient } from '@synnaxlabs/freighter';
2
2
  import { Params, Workspace } from './payload';
3
-
4
3
  export declare class Retriever {
5
4
  private static readonly ENDPOINT;
6
5
  private readonly client;
@@ -2,7 +2,6 @@ import { UnaryClient } from '@synnaxlabs/freighter';
2
2
  import { UnknownRecord } from '@synnaxlabs/x/record';
3
3
  import { Key, Params, Schematic } from './payload';
4
4
  import { NewSchematic } from './writer';
5
-
6
5
  export declare class Client {
7
6
  private readonly writer;
8
7
  private readonly retriever;
@@ -1,7 +1,6 @@
1
1
  import { UnknownRecord } from '@synnaxlabs/x/record';
2
2
  import { z } from 'zod';
3
3
  import { ontology } from '../../ontology';
4
-
5
4
  export declare const keyZ: z.ZodString;
6
5
  export type Key = z.infer<typeof keyZ>;
7
6
  export type Params = Key | Key[];
@@ -1,6 +1,5 @@
1
1
  import { UnaryClient } from '@synnaxlabs/freighter';
2
2
  import { Params, Schematic } from './payload';
3
-
4
3
  export declare class Retriever {
5
4
  private readonly ENDPOINT;
6
5
  private readonly client;
@@ -2,7 +2,6 @@ import { UnaryClient } from '@synnaxlabs/freighter';
2
2
  import { UnknownRecord } from '@synnaxlabs/x/record';
3
3
  import { z } from 'zod';
4
4
  import { Key, Params, Schematic } from './payload';
5
-
6
5
  export declare const newSchematicZ: z.ZodEffects<z.ZodObject<{
7
6
  name: z.ZodString;
8
7
  key: z.ZodOptional<z.ZodString>;
@@ -2,7 +2,6 @@ import { UnaryClient } from '@synnaxlabs/freighter';
2
2
  import { UnknownRecord } from '@synnaxlabs/x/record';
3
3
  import { z } from 'zod';
4
4
  import { Workspace } from './payload';
5
-
6
5
  declare const newWorkspaceZ: z.ZodEffects<z.ZodObject<{
7
6
  name: z.ZodString;
8
7
  key: z.ZodOptional<z.ZodString>;
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "@synnaxlabs/client",
3
3
  "private": false,
4
- "version": "0.26.7",
4
+ "version": "0.28.0",
5
5
  "type": "module",
6
6
  "description": "The Client Library for Synnax",
7
7
  "repository": "https://github.com/synnaxlabs/synnax/tree/main/client/ts",
@@ -18,19 +18,19 @@
18
18
  "dependencies": {
19
19
  "async-mutex": "^0.5.0",
20
20
  "zod": "3.23.8",
21
- "@synnaxlabs/freighter": "0.26.7",
22
- "@synnaxlabs/x": "0.26.7"
21
+ "@synnaxlabs/freighter": "0.28.0",
22
+ "@synnaxlabs/x": "0.28.0"
23
23
  },
24
24
  "devDependencies": {
25
- "@types/node": "^20.14.9",
26
- "@vitest/coverage-v8": "^1.6.0",
27
- "eslint": "^9.6.0",
28
- "typescript": "^5.5.3",
29
- "vite": "5.3.3",
30
- "vitest": "^1.6.0",
31
- "@synnaxlabs/tsconfig": "0.0.2",
25
+ "@types/node": "^22.2.0",
26
+ "@vitest/coverage-v8": "^2.0.5",
27
+ "eslint": "^9.9.0",
28
+ "typescript": "^5.5.4",
29
+ "vite": "5.4.0",
30
+ "vitest": "^2.0.5",
31
+ "@synnaxlabs/vite-plugin": "0.0.1",
32
32
  "eslint-config-synnaxlabs": "0.0.1",
33
- "@synnaxlabs/vite-plugin": "0.0.1"
33
+ "@synnaxlabs/tsconfig": "0.0.2"
34
34
  },
35
35
  "peerDependencies": {
36
36
  "zod": "^3.23.8"
@@ -44,6 +44,8 @@
44
44
  "test": "vitest",
45
45
  "cov": "vitest --coverage",
46
46
  "lint": "eslint \"src/**/*.ts*\"",
47
- "fix": "eslint \"src/**/*.ts*\" --fix"
47
+ "fix": "eslint \"src/**/*.ts*\" --fix",
48
+ "genApi": "tsc --noEmit && vite build && npx api-extractor run --local",
49
+ "checkApi": "tsc --noEmit && vite build && npx api-extractor run"
48
50
  }
49
51
  }