@ikalogic/at1000 0.1.1 → 0.1.3

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 (125) hide show
  1. package/build/{at1000-KorKps6J.d.cts → at1000--0fsMQ83.d.cts} +9 -8
  2. package/build/at1000--0fsMQ83.d.cts.map +1 -0
  3. package/build/{at1000-fxUBicyN.d.mts → at1000-BowpRIxV.d.mts} +9 -8
  4. package/build/at1000-BowpRIxV.d.mts.map +1 -0
  5. package/build/at1000-CYNSd3Yp.cjs +2 -0
  6. package/build/at1000-CYNSd3Yp.cjs.map +1 -0
  7. package/build/at1000-Dm22ae18.mjs +2 -0
  8. package/build/at1000-Dm22ae18.mjs.map +1 -0
  9. package/build/browser.cjs +2 -1
  10. package/build/browser.cjs.map +1 -0
  11. package/build/browser.d.cts +14 -8
  12. package/build/browser.d.cts.map +1 -0
  13. package/build/browser.d.mts +14 -8
  14. package/build/browser.d.mts.map +1 -0
  15. package/build/browser.mjs +2 -1
  16. package/build/browser.mjs.map +1 -0
  17. package/build/{com-BdsqVRMC.mjs → com-9odKA1Fj.mjs} +1 -1
  18. package/build/com-9odKA1Fj.mjs.map +1 -0
  19. package/build/{com-BHaGVMz5.cjs → com-B1QZqhWz.cjs} +1 -1
  20. package/build/com-B1QZqhWz.cjs.map +1 -0
  21. package/build/{com-BApPn-WG.d.cts → com-BNsFbKeD.d.mts} +32 -25
  22. package/build/com-BNsFbKeD.d.mts.map +1 -0
  23. package/build/{com-CtleS0NR.d.mts → com-qCDie6XG.d.cts} +32 -25
  24. package/build/com-qCDie6XG.d.cts.map +1 -0
  25. package/build/com.cjs +1 -1
  26. package/build/com.d.cts +1 -1
  27. package/build/com.d.mts +1 -1
  28. package/build/com.mjs +1 -1
  29. package/build/{gpio-DSTG-dmv.cjs → gpio-BRimmVQo.cjs} +1 -1
  30. package/build/gpio-BRimmVQo.cjs.map +1 -0
  31. package/build/{gpio-PpKtXM-7.d.cts → gpio-BVsd0CYe.d.cts} +14 -11
  32. package/build/{gpio-BRfdLqG9.d.mts.map → gpio-BVsd0CYe.d.cts.map} +1 -1
  33. package/build/{gpio-CxHnpe7Y.mjs → gpio-nD6e5nNZ.mjs} +1 -1
  34. package/build/gpio-nD6e5nNZ.mjs.map +1 -0
  35. package/build/{gpio-BRfdLqG9.d.mts → gpio-xOzaMp-y.d.mts} +14 -11
  36. package/build/{gpio-PpKtXM-7.d.cts.map → gpio-xOzaMp-y.d.mts.map} +1 -1
  37. package/build/gpio.cjs +1 -1
  38. package/build/gpio.d.cts +2 -2
  39. package/build/gpio.d.mts +2 -2
  40. package/build/gpio.mjs +1 -1
  41. package/build/{hmi-BMM-GMeM.d.mts → hmi-BY5MO6bQ.d.cts} +40 -18
  42. package/build/hmi-BY5MO6bQ.d.cts.map +1 -0
  43. package/build/{hmi-Cx7xLvkd.d.cts → hmi-CdttEybP.d.mts} +40 -18
  44. package/build/hmi-CdttEybP.d.mts.map +1 -0
  45. package/build/hmi-DVUFmRMo.cjs +2 -0
  46. package/build/hmi-DVUFmRMo.cjs.map +1 -0
  47. package/build/hmi-dJ8Y4DVD.mjs +2 -0
  48. package/build/hmi-dJ8Y4DVD.mjs.map +1 -0
  49. package/build/hmi.cjs +1 -1
  50. package/build/hmi.d.cts +1 -1
  51. package/build/hmi.d.mts +1 -1
  52. package/build/hmi.mjs +1 -1
  53. package/build/{management-BRYyWntE.mjs → management-CGmaS4-D.mjs} +1 -1
  54. package/build/management-CGmaS4-D.mjs.map +1 -0
  55. package/build/{management-DYOPvugC.d.mts → management-COw5z8sl.d.cts} +2 -1
  56. package/build/management-COw5z8sl.d.cts.map +1 -0
  57. package/build/{management-CecISx9d.d.cts → management-CinGOMF_.d.mts} +2 -1
  58. package/build/management-CinGOMF_.d.mts.map +1 -0
  59. package/build/{management-B758IJfF.cjs → management-PEkkZaQ3.cjs} +1 -1
  60. package/build/management-PEkkZaQ3.cjs.map +1 -0
  61. package/build/management.cjs +1 -1
  62. package/build/management.d.cts +1 -1
  63. package/build/management.d.mts +1 -1
  64. package/build/management.mjs +1 -1
  65. package/build/node.cjs +1 -1
  66. package/build/node.cjs.map +1 -1
  67. package/build/node.d.cts +10 -8
  68. package/build/node.d.cts.map +1 -1
  69. package/build/node.d.mts +9 -8
  70. package/build/node.d.mts.map +1 -1
  71. package/build/node.mjs +1 -1
  72. package/build/node.mjs.map +1 -1
  73. package/build/{power-kf9bMNDS.mjs → power-B1rs9Bqf.mjs} +1 -1
  74. package/build/power-B1rs9Bqf.mjs.map +1 -0
  75. package/build/{power-DtLWOEQI.cjs → power-BpI1_Yav.cjs} +1 -1
  76. package/build/power-BpI1_Yav.cjs.map +1 -0
  77. package/build/{power-y0xN9rLp.d.mts → power-Cjtv2FqK.d.mts} +33 -29
  78. package/build/{power-CGIUvfID.d.cts.map → power-Cjtv2FqK.d.mts.map} +1 -1
  79. package/build/{power-CGIUvfID.d.cts → power-DmpPdg12.d.cts} +33 -29
  80. package/build/{power-y0xN9rLp.d.mts.map → power-DmpPdg12.d.cts.map} +1 -1
  81. package/build/power.cjs +1 -1
  82. package/build/power.d.cts +2 -2
  83. package/build/power.d.mts +2 -2
  84. package/build/power.mjs +1 -1
  85. package/build/{relays-CGntlBiE.d.mts → relays-BR6408vm.d.mts} +3 -1
  86. package/build/relays-BR6408vm.d.mts.map +1 -0
  87. package/build/{relays-Dn_EI0HH.d.cts → relays-CoF1h8ZQ.d.cts} +3 -1
  88. package/build/relays-CoF1h8ZQ.d.cts.map +1 -0
  89. package/build/{relays-8a3YZaV7.cjs → relays-D_kWwwIR.cjs} +1 -1
  90. package/build/relays-D_kWwwIR.cjs.map +1 -0
  91. package/build/{relays-Cwtrx0B-.mjs → relays-I7rKvd13.mjs} +1 -1
  92. package/build/relays-I7rKvd13.mjs.map +1 -0
  93. package/build/relays.cjs +1 -1
  94. package/build/relays.d.cts +1 -1
  95. package/build/relays.d.mts +1 -1
  96. package/build/relays.mjs +1 -1
  97. package/package.json +15 -7
  98. package/build/at1000-BmNysoWw.cjs +0 -2
  99. package/build/at1000-BmNysoWw.cjs.map +0 -1
  100. package/build/at1000-HCN4vsKS.mjs +0 -2
  101. package/build/at1000-HCN4vsKS.mjs.map +0 -1
  102. package/build/at1000-KorKps6J.d.cts.map +0 -1
  103. package/build/at1000-fxUBicyN.d.mts.map +0 -1
  104. package/build/com-BApPn-WG.d.cts.map +0 -1
  105. package/build/com-BHaGVMz5.cjs.map +0 -1
  106. package/build/com-BdsqVRMC.mjs.map +0 -1
  107. package/build/com-CtleS0NR.d.mts.map +0 -1
  108. package/build/gpio-CxHnpe7Y.mjs.map +0 -1
  109. package/build/gpio-DSTG-dmv.cjs.map +0 -1
  110. package/build/hmi-B04X0czX.mjs +0 -2
  111. package/build/hmi-B04X0czX.mjs.map +0 -1
  112. package/build/hmi-BMM-GMeM.d.mts.map +0 -1
  113. package/build/hmi-Cx7xLvkd.d.cts.map +0 -1
  114. package/build/hmi-DSFhbR-Y.cjs +0 -2
  115. package/build/hmi-DSFhbR-Y.cjs.map +0 -1
  116. package/build/management-B758IJfF.cjs.map +0 -1
  117. package/build/management-BRYyWntE.mjs.map +0 -1
  118. package/build/management-CecISx9d.d.cts.map +0 -1
  119. package/build/management-DYOPvugC.d.mts.map +0 -1
  120. package/build/power-DtLWOEQI.cjs.map +0 -1
  121. package/build/power-kf9bMNDS.mjs.map +0 -1
  122. package/build/relays-8a3YZaV7.cjs.map +0 -1
  123. package/build/relays-CGntlBiE.d.mts.map +0 -1
  124. package/build/relays-Cwtrx0B-.mjs.map +0 -1
  125. package/build/relays-Dn_EI0HH.d.cts.map +0 -1
@@ -1,5 +1,5 @@
1
1
  import { t as AnalogOutputLevel } from "./common-ClinPNdn.mjs";
2
- import { n as Device } from "./management-DYOPvugC.mjs";
2
+ import { n as Device } from "./management-CinGOMF_.mjs";
3
3
  import { UpFetch } from "up-fetch";
4
4
  import * as v from "valibot";
5
5
 
@@ -36,7 +36,7 @@ declare const partialAnalogOutputConfiguration: Omit<v.ObjectSchema<{
36
36
  readonly mode: v.LiteralSchema<"analog", undefined>;
37
37
  readonly direction: v.LiteralSchema<"output", undefined>;
38
38
  readonly value: v.OptionalSchema<v.SchemaWithPipe<readonly [v.NumberSchema<undefined>, v.MinValueAction<number, 0, undefined>, v.MaxValueAction<number, 24, undefined>]>, undefined>;
39
- }, undefined>, "~standard" | "~run" | "~types" | "entries"> & {
39
+ }, undefined>, "~standard" | "~types" | "~run" | "entries"> & {
40
40
  readonly entries: Omit<{
41
41
  readonly mode: v.LiteralSchema<"analog", undefined>;
42
42
  readonly direction: v.LiteralSchema<"output", undefined>;
@@ -49,7 +49,7 @@ declare const partialAnalogOutputConfiguration: Omit<v.ObjectSchema<{
49
49
  }>;
50
50
  readonly '~run': (dataset: v.UnknownDataset, config: v.Config<v.BaseIssue<unknown>>) => v.OutputDataset<{
51
51
  value?: number | undefined;
52
- }, v.NumberIssue | v.ObjectIssue | v.MaxValueIssue<number, 24> | v.MinValueIssue<number, 0>>;
52
+ }, v.NumberIssue | v.MaxValueIssue<number, 24> | v.ObjectIssue | v.MinValueIssue<number, 0>>;
53
53
  readonly '~types'?: {
54
54
  readonly input: {
55
55
  value?: number | undefined;
@@ -57,7 +57,7 @@ declare const partialAnalogOutputConfiguration: Omit<v.ObjectSchema<{
57
57
  readonly output: {
58
58
  value?: number | undefined;
59
59
  };
60
- readonly issue: v.NumberIssue | v.ObjectIssue | v.MaxValueIssue<number, 24> | v.MinValueIssue<number, 0>;
60
+ readonly issue: v.NumberIssue | v.MaxValueIssue<number, 24> | v.ObjectIssue | v.MinValueIssue<number, 0>;
61
61
  } | undefined;
62
62
  };
63
63
  type PartialAnalogOutputConfiguration = v.InferOutput<typeof partialAnalogOutputConfiguration>;
@@ -66,7 +66,7 @@ declare const partialDigitalInputConfiguration: Omit<v.ObjectSchema<{
66
66
  readonly direction: v.LiteralSchema<"input", undefined>;
67
67
  readonly vil: v.SchemaWithPipe<readonly [v.NumberSchema<undefined>, v.MinValueAction<number, -24, undefined>, v.MaxValueAction<number, 24, undefined>]>;
68
68
  readonly vih: v.SchemaWithPipe<readonly [v.NumberSchema<undefined>, v.MinValueAction<number, -24, undefined>, v.MaxValueAction<number, 24, undefined>]>;
69
- }, undefined>, "~standard" | "~run" | "~types" | "entries"> & {
69
+ }, undefined>, "~standard" | "~types" | "~run" | "entries"> & {
70
70
  readonly entries: Omit<{
71
71
  readonly mode: v.LiteralSchema<"digital", undefined>;
72
72
  readonly direction: v.LiteralSchema<"input", undefined>;
@@ -83,7 +83,7 @@ declare const partialDigitalInputConfiguration: Omit<v.ObjectSchema<{
83
83
  readonly '~run': (dataset: v.UnknownDataset, config: v.Config<v.BaseIssue<unknown>>) => v.OutputDataset<{
84
84
  vil: number;
85
85
  vih: number;
86
- }, v.NumberIssue | v.ObjectIssue | v.MinValueIssue<number, -24> | v.MaxValueIssue<number, 24>>;
86
+ }, v.NumberIssue | v.MinValueIssue<number, -24> | v.MaxValueIssue<number, 24> | v.ObjectIssue>;
87
87
  readonly '~types'?: {
88
88
  readonly input: {
89
89
  vil: number;
@@ -93,7 +93,7 @@ declare const partialDigitalInputConfiguration: Omit<v.ObjectSchema<{
93
93
  vil: number;
94
94
  vih: number;
95
95
  };
96
- readonly issue: v.NumberIssue | v.ObjectIssue | v.MinValueIssue<number, -24> | v.MaxValueIssue<number, 24>;
96
+ readonly issue: v.NumberIssue | v.MinValueIssue<number, -24> | v.MaxValueIssue<number, 24> | v.ObjectIssue;
97
97
  } | undefined;
98
98
  };
99
99
  type PartialDigitalInputConfiguration = v.InferOutput<typeof partialDigitalInputConfiguration>;
@@ -105,7 +105,7 @@ declare const partialDigitalOutputConfiguration: Omit<v.ObjectSchema<{
105
105
  readonly voh: v.SchemaWithPipe<readonly [v.NumberSchema<undefined>, v.MinValueAction<number, 0, undefined>, v.MaxValueAction<number, 24, undefined>]>;
106
106
  readonly vil: v.SchemaWithPipe<readonly [v.NumberSchema<undefined>, v.MinValueAction<number, -24, undefined>, v.MaxValueAction<number, 24, undefined>]>;
107
107
  readonly vih: v.SchemaWithPipe<readonly [v.NumberSchema<undefined>, v.MinValueAction<number, -24, undefined>, v.MaxValueAction<number, 24, undefined>]>;
108
- }, undefined>, "~standard" | "~run" | "~types" | "entries"> & {
108
+ }, undefined>, "~standard" | "~types" | "~run" | "entries"> & {
109
109
  readonly entries: Omit<{
110
110
  readonly mode: v.LiteralSchema<"digital", undefined>;
111
111
  readonly direction: v.LiteralSchema<"output", undefined>;
@@ -134,7 +134,7 @@ declare const partialDigitalOutputConfiguration: Omit<v.ObjectSchema<{
134
134
  vih: number;
135
135
  vol: number;
136
136
  voh: number;
137
- }, v.NumberIssue | v.BooleanIssue | v.ObjectIssue | v.MinValueIssue<number, -24> | v.MaxValueIssue<number, 24> | v.MinValueIssue<number, 0>>;
137
+ }, v.BooleanIssue | v.NumberIssue | v.MinValueIssue<number, -24> | v.MaxValueIssue<number, 24> | v.ObjectIssue | v.MinValueIssue<number, 0>>;
138
138
  readonly '~types'?: {
139
139
  readonly input: {
140
140
  value: boolean;
@@ -150,7 +150,7 @@ declare const partialDigitalOutputConfiguration: Omit<v.ObjectSchema<{
150
150
  vol: number;
151
151
  voh: number;
152
152
  };
153
- readonly issue: v.NumberIssue | v.BooleanIssue | v.ObjectIssue | v.MinValueIssue<number, -24> | v.MaxValueIssue<number, 24> | v.MinValueIssue<number, 0>;
153
+ readonly issue: v.BooleanIssue | v.NumberIssue | v.MinValueIssue<number, -24> | v.MaxValueIssue<number, 24> | v.ObjectIssue | v.MinValueIssue<number, 0>;
154
154
  } | undefined;
155
155
  };
156
156
  type PartialDigitalOutputConfiguration = v.InferOutput<typeof partialDigitalOutputConfiguration>;
@@ -158,6 +158,7 @@ declare const syncConfiguration: v.ObjectSchema<{
158
158
  readonly action: v.PicklistSchema<["release", "hold"], "Invalid sync action">;
159
159
  }, undefined>;
160
160
  type SyncConfiguration = v.InferOutput<typeof syncConfiguration>;
161
+ /** @hideconstructor */
161
162
  declare class GpioApi {
162
163
  private readonly fetch;
163
164
  private count;
@@ -192,6 +193,7 @@ declare class GpioApi {
192
193
  */
193
194
  release(): Promise<SyncConfiguration>;
194
195
  }
196
+ /** @hideconstructor */
195
197
  declare class DigitalIO {
196
198
  private readonly fetch;
197
199
  readonly id: number;
@@ -220,6 +222,7 @@ declare class DigitalIO {
220
222
  */
221
223
  write(value: boolean): Promise<boolean>;
222
224
  }
225
+ /** @hideconstructor */
223
226
  declare class AnalogIO {
224
227
  private readonly fetch;
225
228
  readonly id: number;
@@ -250,4 +253,4 @@ declare class AnalogIO {
250
253
  }
251
254
  //#endregion
252
255
  export { DigitalInputConfiguration as a, PartialAnalogOutputConfiguration as c, SyncConfiguration as d, DigitalIO as i, PartialDigitalInputConfiguration as l, AnalogInputConfiguration as n, DigitalOutputConfiguration as o, AnalogOutputConfiguration as r, GpioApi as s, AnalogIO as t, PartialDigitalOutputConfiguration as u };
253
- //# sourceMappingURL=gpio-BRfdLqG9.d.mts.map
256
+ //# sourceMappingURL=gpio-xOzaMp-y.d.mts.map
@@ -1 +1 @@
1
- {"version":3,"file":"gpio-PpKtXM-7.d.cts","names":[],"sources":["../src/api/gpio.ts"],"sourcesContent":[],"mappings":"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"}
1
+ {"version":3,"file":"gpio-xOzaMp-y.d.mts","names":[],"sources":["../src/api/gpio.ts"],"sourcesContent":[],"mappings":"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"}
package/build/gpio.cjs CHANGED
@@ -1 +1 @@
1
- require(`./common-ix04NEFn.cjs`);const e=require(`./gpio-DSTG-dmv.cjs`);exports.AnalogIO=e.t,exports.DigitalIO=e.n,exports.GpioApi=e.r;
1
+ require(`./common-ix04NEFn.cjs`);const e=require(`./gpio-BRimmVQo.cjs`);exports.AnalogIO=e.t,exports.DigitalIO=e.n,exports.GpioApi=e.r;
package/build/gpio.d.cts CHANGED
@@ -1,4 +1,4 @@
1
1
  import { t as AnalogOutputLevel } from "./common-CsBdb633.cjs";
2
- import "./management-CecISx9d.cjs";
3
- import { a as DigitalInputConfiguration, c as PartialAnalogOutputConfiguration, d as SyncConfiguration, i as DigitalIO, l as PartialDigitalInputConfiguration, n as AnalogInputConfiguration, o as DigitalOutputConfiguration, r as AnalogOutputConfiguration, s as GpioApi, t as AnalogIO, u as PartialDigitalOutputConfiguration } from "./gpio-PpKtXM-7.cjs";
2
+ import "./management-COw5z8sl.cjs";
3
+ import { a as DigitalInputConfiguration, c as PartialAnalogOutputConfiguration, d as SyncConfiguration, i as DigitalIO, l as PartialDigitalInputConfiguration, n as AnalogInputConfiguration, o as DigitalOutputConfiguration, r as AnalogOutputConfiguration, s as GpioApi, t as AnalogIO, u as PartialDigitalOutputConfiguration } from "./gpio-BVsd0CYe.cjs";
4
4
  export { AnalogIO, AnalogInputConfiguration, AnalogOutputConfiguration, AnalogOutputLevel, DigitalIO, DigitalInputConfiguration, DigitalOutputConfiguration, GpioApi, PartialAnalogOutputConfiguration, PartialDigitalInputConfiguration, PartialDigitalOutputConfiguration, SyncConfiguration };
package/build/gpio.d.mts CHANGED
@@ -1,4 +1,4 @@
1
1
  import { t as AnalogOutputLevel } from "./common-ClinPNdn.mjs";
2
- import "./management-DYOPvugC.mjs";
3
- import { a as DigitalInputConfiguration, c as PartialAnalogOutputConfiguration, d as SyncConfiguration, i as DigitalIO, l as PartialDigitalInputConfiguration, n as AnalogInputConfiguration, o as DigitalOutputConfiguration, r as AnalogOutputConfiguration, s as GpioApi, t as AnalogIO, u as PartialDigitalOutputConfiguration } from "./gpio-BRfdLqG9.mjs";
2
+ import "./management-CinGOMF_.mjs";
3
+ import { a as DigitalInputConfiguration, c as PartialAnalogOutputConfiguration, d as SyncConfiguration, i as DigitalIO, l as PartialDigitalInputConfiguration, n as AnalogInputConfiguration, o as DigitalOutputConfiguration, r as AnalogOutputConfiguration, s as GpioApi, t as AnalogIO, u as PartialDigitalOutputConfiguration } from "./gpio-xOzaMp-y.mjs";
4
4
  export { AnalogIO, AnalogInputConfiguration, AnalogOutputConfiguration, AnalogOutputLevel, DigitalIO, DigitalInputConfiguration, DigitalOutputConfiguration, GpioApi, PartialAnalogOutputConfiguration, PartialDigitalInputConfiguration, PartialDigitalOutputConfiguration, SyncConfiguration };
package/build/gpio.mjs CHANGED
@@ -1 +1 @@
1
- import"./common-DSzy5K03.mjs";import{n as e,r as t,t as n}from"./gpio-CxHnpe7Y.mjs";export{n as AnalogIO,e as DigitalIO,t as GpioApi};
1
+ import"./common-DSzy5K03.mjs";import{n as e,r as t,t as n}from"./gpio-nD6e5nNZ.mjs";export{n as AnalogIO,e as DigitalIO,t as GpioApi};
@@ -21,14 +21,41 @@ declare const playbackConfiguration: v.ObjectSchema<{
21
21
  readonly volume: v.SchemaWithPipe<readonly [v.NumberSchema<undefined>, v.MinValueAction<number, 0, undefined>, v.MaxValueAction<number, 100, undefined>]>;
22
22
  }, undefined>;
23
23
  type PlaybackConfiguration = v.InferOutput<typeof playbackConfiguration>;
24
- declare const knobEvent: v.ObjectSchema<{
25
- readonly type: v.PicklistSchema<["rotation", "button"], undefined>;
26
- readonly state: v.ObjectSchema<{
27
- readonly rotation: v.NumberSchema<undefined>;
28
- readonly button_pushed: v.BooleanSchema<undefined>;
29
- }, undefined>;
30
- }, undefined>;
24
+ declare const knobEvent: Omit<v.ObjectSchema<{
25
+ readonly button_pressed: v.BooleanSchema<undefined>;
26
+ readonly button_held: v.BooleanSchema<undefined>;
27
+ readonly rotation_delta: v.NumberSchema<undefined>;
28
+ }, undefined>, "~standard" | "~types" | "~run" | "entries"> & {
29
+ readonly entries: Omit<{
30
+ readonly button_pressed: v.BooleanSchema<undefined>;
31
+ readonly button_held: v.BooleanSchema<undefined>;
32
+ readonly rotation_delta: v.NumberSchema<undefined>;
33
+ }, "button_held">;
34
+ readonly '~standard': v.StandardProps<{
35
+ button_pressed: boolean;
36
+ rotation_delta: number;
37
+ }, {
38
+ button_pressed: boolean;
39
+ rotation_delta: number;
40
+ }>;
41
+ readonly '~run': (dataset: v.UnknownDataset, config: v.Config<v.BaseIssue<unknown>>) => v.OutputDataset<{
42
+ button_pressed: boolean;
43
+ rotation_delta: number;
44
+ }, v.BooleanIssue | v.NumberIssue | v.ObjectIssue>;
45
+ readonly '~types'?: {
46
+ readonly input: {
47
+ button_pressed: boolean;
48
+ rotation_delta: number;
49
+ };
50
+ readonly output: {
51
+ button_pressed: boolean;
52
+ rotation_delta: number;
53
+ };
54
+ readonly issue: v.BooleanIssue | v.NumberIssue | v.ObjectIssue;
55
+ } | undefined;
56
+ };
31
57
  type KnobEvent = v.InferOutput<typeof knobEvent>;
58
+ /** @hideconstructor */
32
59
  declare class HmiApi {
33
60
  private readonly fetch;
34
61
  constructor(fetch: UpFetch);
@@ -52,6 +79,7 @@ declare class HmiApi {
52
79
  */
53
80
  knob(): Knob;
54
81
  }
82
+ /** @hideconstructor */
55
83
  declare class Screen {
56
84
  private readonly fetch;
57
85
  constructor(fetch: UpFetch);
@@ -78,6 +106,7 @@ declare class Screen {
78
106
  */
79
107
  clear(): Promise<void>;
80
108
  }
109
+ /** @hideconstructor */
81
110
  declare class Audio {
82
111
  private readonly fetch;
83
112
  constructor(fetch: UpFetch);
@@ -88,19 +117,12 @@ declare class Audio {
88
117
  */
89
118
  play(config: PlaybackConfiguration): Promise<PlaybackConfiguration>;
90
119
  }
120
+ /** @hideconstructor */
91
121
  declare class Knob {
92
122
  private readonly fetch;
93
123
  constructor(fetch: UpFetch);
94
- /**
95
- * Gets the current rotation of the knob in increments.
96
- * @returns The current number of increments.
97
- */
98
- rotation(): Promise<number>;
99
- /**
100
- * Returns whether the button is currently pushed.
101
- * @returns True if the button is pushed, false otherwise.
102
- */
103
- button_pushed(): Promise<boolean>;
124
+ private get_knob_event;
125
+ is_button_pressed: () => Promise<boolean>;
104
126
  /**
105
127
  * Waits for a knob event and returns it.
106
128
  * @param timeout_ms The timeout in milliseconds.
@@ -110,4 +132,4 @@ declare class Knob {
110
132
  }
111
133
  //#endregion
112
134
  export { KnobEvent as a, ProgressValue as c, Knob as i, Screen as l, Color as n, PlaybackConfiguration as o, HmiApi as r, Progress as s, Audio as t, ScreenText as u };
113
- //# sourceMappingURL=hmi-BMM-GMeM.d.mts.map
135
+ //# sourceMappingURL=hmi-BY5MO6bQ.d.cts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"hmi-BY5MO6bQ.d.cts","names":[],"sources":["../src/api/hmi.ts"],"sourcesContent":[],"mappings":";;;;cAGM,YAAU,CAAA,CAAA,yBAAA,CAAA,CAAA,yBAAA,CAAA,CAAA;KACJ,UAAA,GAAa,CAAA,CAAE,mBAAmB;AAHjB,cASvB,KAPkD,EAO7C,CAAA,CAAA,YAP6C,CAAA;EAAxC,SAAA,IAAA,kBAAA,iBAAA,CAAA,SAAA,eAAA,CAAA,SAAA,CAAA,gBAAA,CAAA,MAAA,EAAA,CAAA,EAAA,SAAA,CAAA,kBAAA,CAAA,MAAA,EAAA,SAAA,CAAA,CAAA,CAAA,EAAA,SAAA,CAAA;EAAA,SAAA,QAAA,kBAAA,iBAAA,CAAA,SAAA,eAAA,CAAA,SAAA,CAAA,gBAAA,CAAA,MAAA,EAAA,CAAA,EAAA,SAAA,CAAA,kBAAA,CAAA,MAAA,EAAA,SAAA,CAAA,CAAA,CAAA,EAAA,SAAA,CAAA;EAAA,SAAA,UAAA,kBAAA,iBAAA,CAAA,SAAA,eAAA,CAAA,SAAA,CAAA,gBAAA,CAAA,MAAA,EAAA,CAAA,EAAA,SAAA,CAAA,kBAAA,CAAA,MAAA,EAAA,SAAA,CAAA,CAAA,CAAA,EAAA,SAAA,CAAA;CAAA,EAAA,SAAA,CAAA;AACJ,KAWA,KAAA,GAAQ,CAAA,CAAE,WAXwB,CAAA,OAWL,KAXd,CAAA;AAA+B,cAapD,aAHJ,EAGiB,CAAA,CAAA,cAHjB,CAAA,SAAA,CAGiB,CAAA,CAAA,YAHjB,CAAA,SAAA,CAAA,EAGiB,CAAA,CAAA,cAHjB,CAAA,MAAA,EAAA,CAAA,EAAA,SAAA,CAAA,EAGiB,CAAA,CAAA,cAHjB,CAAA,MAAA,EAAA,GAAA,EAAA,SAAA,CAAA,CAAA,CAAA;KAIU,aAAA,GAAgB,CAAA,CAAE,mBAAmB;cAC3C,UAAQ,CAAA,CAAA;;;KACF,QAAA,GAAW,CAAA,CAAE,mBAAmB;cAEtC,uBAAqB,CAAA,CAAA;;;;KAIf,qBAAA,GAAwB,CAAA,CAAE,mBAAmB;cAOnD,WAAS,KAAA,CAAA,CAAA;;;;;EAvBJ,SAAA,OAAA,MAAA,CAAA;IAAA,SAAA,cAAA,iBAAA,CAAA,SAAA,CAAA;IAKC,SAAK,WAAwB,iBAAR,CAAA,SAAA,CAAA;IAE3B,SAAA,cAAkE,gBAAA,CAAA,SAAA,CAAA;EAArD,CAAA,EAAA,aAAA,CAAA;EAAA,SAAA,WAAA,iBAAA,CAAA;IAAA,cAAA,EAAA,OAAA;IAAA,cAAA,EAAA,MAAA;EAAA,CAAA,EAAA;IACP,cAAa,EAAA,OAAA;IACnB,cAAgD,EAAA,MAAA;;;;;EAAxC,CAAA,gBAAA,gBAAA,gBAAA,CAAA;EAAA,SAAA,QAAA,CAAA,EAAA;IACF,SAAQ,KAAA,EAAA;MAEd,cAAA,EAGJ,OAAA;;;;;;IAHyB,CAAA;IAAA,SAAA,KAAA,gBAAA,gBAAA,gBAAA;EAIf,CAAA,GAAA,SAAA;AAAoE,CAAA;KAQpE,SAAA,GAAY,CAAA,CAAE,mBAAmB;;cAGhC,MAAA;EAJE,iBAAA,KAAA;EAAA,WAAA,CAAA,KAAA,EAKuB,OALvB;;;;WAUJ;;;;;YAQC;;;;;WAQD;;;AAzBX;AAGA;EACsC,IAAA,CAAA,CAAA,EA6B5B,IA7B4B;;;AAqB3B,cAcE,MAAA,CAdF;EAQD,iBAAA,KAAA;EAAI,WAAA,CAAA,KAAA,EAOwB,OAPxB;EAMD;;;;;EAsBoB,KAAA,CAAA,IAAA,EAdb,UAca,CAAA,EAdA,OAcA,CAAA,MAAA,CAAA;EAAR;;;;;EA+BP,MAAA,CAAA,MAAA,EA/BD,KA+BC,CAAA,EA/BO,OA+BP,CA/Be,KA+Bf,CAAA;EAML;;;;;EAQuC,QAAA,CAAA,IAAA,EAhC7B,aAgC6B,CAAA,EAhCb,OAgCa,CAhCL,QAgCK,CAAA;EAUvC;;;EAamC,KAAA,CAAA,CAAA,EArCrC,OAqCqC,CAAA,IAAA,CAAA;;;cA/BnC,KAAA;;qBACyB;;;;;;eAOjB,wBAAwB,QAAQ;;;cAUxC,IAAA;;qBACyB;;2BAKnB;;;;;;kCAOqB,QAAQ"}
@@ -21,14 +21,41 @@ declare const playbackConfiguration: v.ObjectSchema<{
21
21
  readonly volume: v.SchemaWithPipe<readonly [v.NumberSchema<undefined>, v.MinValueAction<number, 0, undefined>, v.MaxValueAction<number, 100, undefined>]>;
22
22
  }, undefined>;
23
23
  type PlaybackConfiguration = v.InferOutput<typeof playbackConfiguration>;
24
- declare const knobEvent: v.ObjectSchema<{
25
- readonly type: v.PicklistSchema<["rotation", "button"], undefined>;
26
- readonly state: v.ObjectSchema<{
27
- readonly rotation: v.NumberSchema<undefined>;
28
- readonly button_pushed: v.BooleanSchema<undefined>;
29
- }, undefined>;
30
- }, undefined>;
24
+ declare const knobEvent: Omit<v.ObjectSchema<{
25
+ readonly button_pressed: v.BooleanSchema<undefined>;
26
+ readonly button_held: v.BooleanSchema<undefined>;
27
+ readonly rotation_delta: v.NumberSchema<undefined>;
28
+ }, undefined>, "~standard" | "~types" | "~run" | "entries"> & {
29
+ readonly entries: Omit<{
30
+ readonly button_pressed: v.BooleanSchema<undefined>;
31
+ readonly button_held: v.BooleanSchema<undefined>;
32
+ readonly rotation_delta: v.NumberSchema<undefined>;
33
+ }, "button_held">;
34
+ readonly '~standard': v.StandardProps<{
35
+ button_pressed: boolean;
36
+ rotation_delta: number;
37
+ }, {
38
+ button_pressed: boolean;
39
+ rotation_delta: number;
40
+ }>;
41
+ readonly '~run': (dataset: v.UnknownDataset, config: v.Config<v.BaseIssue<unknown>>) => v.OutputDataset<{
42
+ button_pressed: boolean;
43
+ rotation_delta: number;
44
+ }, v.BooleanIssue | v.NumberIssue | v.ObjectIssue>;
45
+ readonly '~types'?: {
46
+ readonly input: {
47
+ button_pressed: boolean;
48
+ rotation_delta: number;
49
+ };
50
+ readonly output: {
51
+ button_pressed: boolean;
52
+ rotation_delta: number;
53
+ };
54
+ readonly issue: v.BooleanIssue | v.NumberIssue | v.ObjectIssue;
55
+ } | undefined;
56
+ };
31
57
  type KnobEvent = v.InferOutput<typeof knobEvent>;
58
+ /** @hideconstructor */
32
59
  declare class HmiApi {
33
60
  private readonly fetch;
34
61
  constructor(fetch: UpFetch);
@@ -52,6 +79,7 @@ declare class HmiApi {
52
79
  */
53
80
  knob(): Knob;
54
81
  }
82
+ /** @hideconstructor */
55
83
  declare class Screen {
56
84
  private readonly fetch;
57
85
  constructor(fetch: UpFetch);
@@ -78,6 +106,7 @@ declare class Screen {
78
106
  */
79
107
  clear(): Promise<void>;
80
108
  }
109
+ /** @hideconstructor */
81
110
  declare class Audio {
82
111
  private readonly fetch;
83
112
  constructor(fetch: UpFetch);
@@ -88,19 +117,12 @@ declare class Audio {
88
117
  */
89
118
  play(config: PlaybackConfiguration): Promise<PlaybackConfiguration>;
90
119
  }
120
+ /** @hideconstructor */
91
121
  declare class Knob {
92
122
  private readonly fetch;
93
123
  constructor(fetch: UpFetch);
94
- /**
95
- * Gets the current rotation of the knob in increments.
96
- * @returns The current number of increments.
97
- */
98
- rotation(): Promise<number>;
99
- /**
100
- * Returns whether the button is currently pushed.
101
- * @returns True if the button is pushed, false otherwise.
102
- */
103
- button_pushed(): Promise<boolean>;
124
+ private get_knob_event;
125
+ is_button_pressed: () => Promise<boolean>;
104
126
  /**
105
127
  * Waits for a knob event and returns it.
106
128
  * @param timeout_ms The timeout in milliseconds.
@@ -110,4 +132,4 @@ declare class Knob {
110
132
  }
111
133
  //#endregion
112
134
  export { KnobEvent as a, ProgressValue as c, Knob as i, Screen as l, Color as n, PlaybackConfiguration as o, HmiApi as r, Progress as s, Audio as t, ScreenText as u };
113
- //# sourceMappingURL=hmi-Cx7xLvkd.d.cts.map
135
+ //# sourceMappingURL=hmi-CdttEybP.d.mts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"hmi-CdttEybP.d.mts","names":[],"sources":["../src/api/hmi.ts"],"sourcesContent":[],"mappings":"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"}
@@ -0,0 +1,2 @@
1
+ const e=require(`./chunk-DjWAcSYV.cjs`);let t=require(`valibot`);t=e.t(t);const n=t.pipe(t.string(),t.maxLength(1024)),r=t.object({text:n}),i=t.optional(t.pipe(t.string(),t.length(7),t.hexColor())),a=t.object({text:i,progress:i,background:i}),o=t.pipe(t.number(),t.minValue(0),t.maxValue(100)),s=t.object({progress:o}),c=t.object({sound_id:t.picklist([`sound1`,`sound2`,`sound3`]),volume:t.pipe(t.number(),t.minValue(0),t.maxValue(100))}),l=t.object({button_pressed:t.boolean(),button_held:t.boolean(),rotation_delta:t.number()});t.omit(l,[`button_held`]);var u=class{constructor(e){this.fetch=e}reset(){return this.fetch(`/hmi/reset`,{method:`POST`,parseResponse:()=>{}})}screen(){return new d(this.fetch)}audio(){return new f(this.fetch)}knob(){return new p(this.fetch)}},d=class{constructor(e){this.fetch=e}async print(e){return(await this.fetch(`/hmi/screen/text`,{method:`POST`,body:t.parse(r,{text:e}),schema:r})).text}colors(e){return this.fetch(`/hmi/screen/colors`,{method:`PATCH`,body:t.parse(a,e),schema:a})}async progress(e){return e==0?await this.fetch(`/hmi/screen/progress`,{method:`DELETE`,parseResponse:()=>({progress:0})}):this.fetch(`/hmi/screen/progress`,{method:`PUT`,body:t.parse(s,{progress:e}),schema:s})}clear(){return this.fetch(`/hmi/screen/clear`,{method:`POST`,parseResponse:()=>{}})}},f=class{constructor(e){this.fetch=e}async play(e){return this.fetch(`/hmi/speaker/play`,{method:`POST`,body:t.parse(c,e),schema:c})}},p=class{constructor(e){this.fetch=e}get_knob_event=()=>this.fetch(`/hmi/knob/get_knob_event`,{method:`POST`,schema:l});is_button_pressed=async()=>(await this.get_knob_event()).button_held;async wait_event(e){await this.get_knob_event();let t=Math.min(50,e/10),n=Date.now();for(;Date.now()-n<e;){let e=await this.get_knob_event();if(e.button_pressed||e.rotation_delta!==0)return{button_pressed:e.button_pressed,rotation_delta:e.rotation_delta};await new Promise(e=>setTimeout(e,t))}return null}};Object.defineProperty(exports,`i`,{enumerable:!0,get:function(){return d}}),Object.defineProperty(exports,`n`,{enumerable:!0,get:function(){return u}}),Object.defineProperty(exports,`r`,{enumerable:!0,get:function(){return p}}),Object.defineProperty(exports,`t`,{enumerable:!0,get:function(){return f}});
2
+ //# sourceMappingURL=hmi-DVUFmRMo.cjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"hmi-DVUFmRMo.cjs","names":["v","fetch: UpFetch"],"sources":["../src/api/hmi.ts"],"sourcesContent":["import type { UpFetch } from 'up-fetch';\nimport * as v from 'valibot';\n\nconst screenText = v.pipe(v.string(), v.maxLength(1024));\nexport type ScreenText = v.InferOutput<typeof screenText>;\n\nconst text = v.object({ text: screenText });\ntype Text = v.InferOutput<typeof text>;\n\nconst optionalHexColor = v.optional(v.pipe(v.string(), v.length(7), v.hexColor()));\nconst color = v.object({\n text: optionalHexColor,\n progress: optionalHexColor,\n background: optionalHexColor,\n});\nexport type Color = v.InferOutput<typeof color>;\n\nconst progressValue = v.pipe(v.number(), v.minValue(0), v.maxValue(100));\nexport type ProgressValue = v.InferOutput<typeof progressValue>;\nconst progress = v.object({ progress: progressValue });\nexport type Progress = v.InferOutput<typeof progress>;\n\nconst playbackConfiguration = v.object({\n sound_id: v.picklist(['sound1', 'sound2', 'sound3']),\n volume: v.pipe(v.number(), v.minValue(0), v.maxValue(100)),\n});\nexport type PlaybackConfiguration = v.InferOutput<typeof playbackConfiguration>;\n\nconst internalKnobEvent = v.object({\n button_pressed: v.boolean(),\n button_held: v.boolean(),\n rotation_delta: v.number(),\n});\nconst knobEvent = v.omit(internalKnobEvent, ['button_held']);\nexport type KnobEvent = v.InferOutput<typeof knobEvent>;\n\n/** @hideconstructor */\nexport class HmiApi {\n constructor(private readonly fetch: UpFetch) {}\n\n /**\n * Resets the HMI.\n */\n reset(): Promise<void> {\n return this.fetch('/hmi/reset', { method: 'POST', parseResponse: () => {} });\n }\n\n /**\n * Access the screen API.\n * @returns The screen instance.\n */\n screen(): Screen {\n return new Screen(this.fetch);\n }\n\n /**\n * Access the audio API.\n * @returns The audio instance.\n */\n audio(): Audio {\n return new Audio(this.fetch);\n }\n\n /**\n * Access the knob API.\n * @returns The knob instance.\n */\n knob(): Knob {\n return new Knob(this.fetch);\n }\n}\n\n/** @hideconstructor */\nexport class Screen {\n constructor(private readonly fetch: UpFetch) {}\n\n /**\n * Prints text to the screen.\n * @param data The text to print.\n * @returns The printed text.\n */\n async print(data: ScreenText): Promise<string> {\n return (await this.fetch('/hmi/screen/text', {\n method: 'POST',\n body: v.parse(text, { text: data } satisfies Text),\n schema: text,\n }))\n .text;\n }\n\n /**\n * Sets the screen colors.\n * @param colors The colors to set.\n * @returns The updated colors.\n */\n colors(colors: Color): Promise<Color> {\n return this.fetch('/hmi/screen/colors', {\n method: 'PATCH',\n body: v.parse(color, colors satisfies Color),\n schema: color,\n });\n }\n\n /**\n * Sets the screen progress.\n * @param data The progress value to set.\n * @returns The updated progress.\n */\n async progress(data: ProgressValue): Promise<Progress> {\n if (data == 0) {\n return await this.fetch('/hmi/screen/progress', {\n method: 'DELETE',\n parseResponse: () => ({ progress: 0 }),\n });\n }\n\n return this.fetch('/hmi/screen/progress', {\n method: 'PUT',\n body: v.parse(progress, { progress: data } satisfies Progress),\n schema: progress,\n });\n }\n\n /**\n * Clears the screen.\n */\n clear(): Promise<void> {\n return this.fetch('/hmi/screen/clear', { method: 'POST', parseResponse: () => {} });\n }\n}\n\n/** @hideconstructor */\nexport class Audio {\n constructor(private readonly fetch: UpFetch) {}\n\n /**\n * Plays a sound.\n * @param config The configuration (sound_id, volume).\n * @returns The play configuration.\n */\n async play(config: PlaybackConfiguration): Promise<PlaybackConfiguration> {\n return this.fetch('/hmi/speaker/play', {\n method: 'POST',\n body: v.parse(playbackConfiguration, config satisfies PlaybackConfiguration),\n schema: playbackConfiguration,\n });\n }\n}\n\n/** @hideconstructor */\nexport class Knob {\n constructor(private readonly fetch: UpFetch) {}\n\n private get_knob_event = () =>\n this.fetch('/hmi/knob/get_knob_event', { method: 'POST', schema: internalKnobEvent });\n\n is_button_pressed = async () => (await this.get_knob_event()).button_held;\n\n /**\n * Waits for a knob event and returns it.\n * @param timeout_ms The timeout in milliseconds.\n * @returns The knob event or null if the timeout was reached.\n */\n async wait_event(timeout_ms: number): Promise<KnobEvent | null> {\n await this.get_knob_event(); // Discard any previous events\n\n const interval = Math.min(50, timeout_ms / 10);\n\n const startTime = Date.now();\n while (Date.now() - startTime < timeout_ms) {\n const knobEvent = await this.get_knob_event();\n if (knobEvent.button_pressed || knobEvent.rotation_delta !== 0) {\n return {\n button_pressed: knobEvent.button_pressed,\n rotation_delta: knobEvent.rotation_delta,\n };\n }\n await new Promise((resolve) => setTimeout(resolve, interval));\n }\n\n return null;\n }\n}\n"],"mappings":"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"}
@@ -0,0 +1,2 @@
1
+ import*as e from"valibot";const t=e.pipe(e.string(),e.maxLength(1024)),n=e.object({text:t}),r=e.optional(e.pipe(e.string(),e.length(7),e.hexColor())),i=e.object({text:r,progress:r,background:r}),a=e.pipe(e.number(),e.minValue(0),e.maxValue(100)),o=e.object({progress:a}),s=e.object({sound_id:e.picklist([`sound1`,`sound2`,`sound3`]),volume:e.pipe(e.number(),e.minValue(0),e.maxValue(100))}),c=e.object({button_pressed:e.boolean(),button_held:e.boolean(),rotation_delta:e.number()});e.omit(c,[`button_held`]);var l=class{constructor(e){this.fetch=e}reset(){return this.fetch(`/hmi/reset`,{method:`POST`,parseResponse:()=>{}})}screen(){return new u(this.fetch)}audio(){return new d(this.fetch)}knob(){return new f(this.fetch)}},u=class{constructor(e){this.fetch=e}async print(t){return(await this.fetch(`/hmi/screen/text`,{method:`POST`,body:e.parse(n,{text:t}),schema:n})).text}colors(t){return this.fetch(`/hmi/screen/colors`,{method:`PATCH`,body:e.parse(i,t),schema:i})}async progress(t){return t==0?await this.fetch(`/hmi/screen/progress`,{method:`DELETE`,parseResponse:()=>({progress:0})}):this.fetch(`/hmi/screen/progress`,{method:`PUT`,body:e.parse(o,{progress:t}),schema:o})}clear(){return this.fetch(`/hmi/screen/clear`,{method:`POST`,parseResponse:()=>{}})}},d=class{constructor(e){this.fetch=e}async play(t){return this.fetch(`/hmi/speaker/play`,{method:`POST`,body:e.parse(s,t),schema:s})}},f=class{constructor(e){this.fetch=e}get_knob_event=()=>this.fetch(`/hmi/knob/get_knob_event`,{method:`POST`,schema:c});is_button_pressed=async()=>(await this.get_knob_event()).button_held;async wait_event(e){await this.get_knob_event();let t=Math.min(50,e/10),n=Date.now();for(;Date.now()-n<e;){let e=await this.get_knob_event();if(e.button_pressed||e.rotation_delta!==0)return{button_pressed:e.button_pressed,rotation_delta:e.rotation_delta};await new Promise(e=>setTimeout(e,t))}return null}};export{u as i,l as n,f as r,d as t};
2
+ //# sourceMappingURL=hmi-dJ8Y4DVD.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"hmi-dJ8Y4DVD.mjs","names":["fetch: UpFetch"],"sources":["../src/api/hmi.ts"],"sourcesContent":["import type { UpFetch } from 'up-fetch';\nimport * as v from 'valibot';\n\nconst screenText = v.pipe(v.string(), v.maxLength(1024));\nexport type ScreenText = v.InferOutput<typeof screenText>;\n\nconst text = v.object({ text: screenText });\ntype Text = v.InferOutput<typeof text>;\n\nconst optionalHexColor = v.optional(v.pipe(v.string(), v.length(7), v.hexColor()));\nconst color = v.object({\n text: optionalHexColor,\n progress: optionalHexColor,\n background: optionalHexColor,\n});\nexport type Color = v.InferOutput<typeof color>;\n\nconst progressValue = v.pipe(v.number(), v.minValue(0), v.maxValue(100));\nexport type ProgressValue = v.InferOutput<typeof progressValue>;\nconst progress = v.object({ progress: progressValue });\nexport type Progress = v.InferOutput<typeof progress>;\n\nconst playbackConfiguration = v.object({\n sound_id: v.picklist(['sound1', 'sound2', 'sound3']),\n volume: v.pipe(v.number(), v.minValue(0), v.maxValue(100)),\n});\nexport type PlaybackConfiguration = v.InferOutput<typeof playbackConfiguration>;\n\nconst internalKnobEvent = v.object({\n button_pressed: v.boolean(),\n button_held: v.boolean(),\n rotation_delta: v.number(),\n});\nconst knobEvent = v.omit(internalKnobEvent, ['button_held']);\nexport type KnobEvent = v.InferOutput<typeof knobEvent>;\n\n/** @hideconstructor */\nexport class HmiApi {\n constructor(private readonly fetch: UpFetch) {}\n\n /**\n * Resets the HMI.\n */\n reset(): Promise<void> {\n return this.fetch('/hmi/reset', { method: 'POST', parseResponse: () => {} });\n }\n\n /**\n * Access the screen API.\n * @returns The screen instance.\n */\n screen(): Screen {\n return new Screen(this.fetch);\n }\n\n /**\n * Access the audio API.\n * @returns The audio instance.\n */\n audio(): Audio {\n return new Audio(this.fetch);\n }\n\n /**\n * Access the knob API.\n * @returns The knob instance.\n */\n knob(): Knob {\n return new Knob(this.fetch);\n }\n}\n\n/** @hideconstructor */\nexport class Screen {\n constructor(private readonly fetch: UpFetch) {}\n\n /**\n * Prints text to the screen.\n * @param data The text to print.\n * @returns The printed text.\n */\n async print(data: ScreenText): Promise<string> {\n return (await this.fetch('/hmi/screen/text', {\n method: 'POST',\n body: v.parse(text, { text: data } satisfies Text),\n schema: text,\n }))\n .text;\n }\n\n /**\n * Sets the screen colors.\n * @param colors The colors to set.\n * @returns The updated colors.\n */\n colors(colors: Color): Promise<Color> {\n return this.fetch('/hmi/screen/colors', {\n method: 'PATCH',\n body: v.parse(color, colors satisfies Color),\n schema: color,\n });\n }\n\n /**\n * Sets the screen progress.\n * @param data The progress value to set.\n * @returns The updated progress.\n */\n async progress(data: ProgressValue): Promise<Progress> {\n if (data == 0) {\n return await this.fetch('/hmi/screen/progress', {\n method: 'DELETE',\n parseResponse: () => ({ progress: 0 }),\n });\n }\n\n return this.fetch('/hmi/screen/progress', {\n method: 'PUT',\n body: v.parse(progress, { progress: data } satisfies Progress),\n schema: progress,\n });\n }\n\n /**\n * Clears the screen.\n */\n clear(): Promise<void> {\n return this.fetch('/hmi/screen/clear', { method: 'POST', parseResponse: () => {} });\n }\n}\n\n/** @hideconstructor */\nexport class Audio {\n constructor(private readonly fetch: UpFetch) {}\n\n /**\n * Plays a sound.\n * @param config The configuration (sound_id, volume).\n * @returns The play configuration.\n */\n async play(config: PlaybackConfiguration): Promise<PlaybackConfiguration> {\n return this.fetch('/hmi/speaker/play', {\n method: 'POST',\n body: v.parse(playbackConfiguration, config satisfies PlaybackConfiguration),\n schema: playbackConfiguration,\n });\n }\n}\n\n/** @hideconstructor */\nexport class Knob {\n constructor(private readonly fetch: UpFetch) {}\n\n private get_knob_event = () =>\n this.fetch('/hmi/knob/get_knob_event', { method: 'POST', schema: internalKnobEvent });\n\n is_button_pressed = async () => (await this.get_knob_event()).button_held;\n\n /**\n * Waits for a knob event and returns it.\n * @param timeout_ms The timeout in milliseconds.\n * @returns The knob event or null if the timeout was reached.\n */\n async wait_event(timeout_ms: number): Promise<KnobEvent | null> {\n await this.get_knob_event(); // Discard any previous events\n\n const interval = Math.min(50, timeout_ms / 10);\n\n const startTime = Date.now();\n while (Date.now() - startTime < timeout_ms) {\n const knobEvent = await this.get_knob_event();\n if (knobEvent.button_pressed || knobEvent.rotation_delta !== 0) {\n return {\n button_pressed: knobEvent.button_pressed,\n rotation_delta: knobEvent.rotation_delta,\n };\n }\n await new Promise((resolve) => setTimeout(resolve, interval));\n }\n\n return null;\n }\n}\n"],"mappings":"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"}
package/build/hmi.cjs CHANGED
@@ -1 +1 @@
1
- const e=require(`./hmi-DSFhbR-Y.cjs`);exports.Audio=e.t,exports.HmiApi=e.n,exports.Knob=e.r,exports.Screen=e.i;
1
+ const e=require(`./hmi-DVUFmRMo.cjs`);exports.Audio=e.t,exports.HmiApi=e.n,exports.Knob=e.r,exports.Screen=e.i;
package/build/hmi.d.cts CHANGED
@@ -1,2 +1,2 @@
1
- import { a as KnobEvent, c as ProgressValue, i as Knob, l as Screen, n as Color, o as PlaybackConfiguration, r as HmiApi, s as Progress, t as Audio, u as ScreenText } from "./hmi-Cx7xLvkd.cjs";
1
+ import { a as KnobEvent, c as ProgressValue, i as Knob, l as Screen, n as Color, o as PlaybackConfiguration, r as HmiApi, s as Progress, t as Audio, u as ScreenText } from "./hmi-BY5MO6bQ.cjs";
2
2
  export { Audio, Color, HmiApi, Knob, KnobEvent, PlaybackConfiguration, Progress, ProgressValue, Screen, ScreenText };
package/build/hmi.d.mts CHANGED
@@ -1,2 +1,2 @@
1
- import { a as KnobEvent, c as ProgressValue, i as Knob, l as Screen, n as Color, o as PlaybackConfiguration, r as HmiApi, s as Progress, t as Audio, u as ScreenText } from "./hmi-BMM-GMeM.mjs";
1
+ import { a as KnobEvent, c as ProgressValue, i as Knob, l as Screen, n as Color, o as PlaybackConfiguration, r as HmiApi, s as Progress, t as Audio, u as ScreenText } from "./hmi-CdttEybP.mjs";
2
2
  export { Audio, Color, HmiApi, Knob, KnobEvent, PlaybackConfiguration, Progress, ProgressValue, Screen, ScreenText };
package/build/hmi.mjs CHANGED
@@ -1 +1 @@
1
- import{i as e,n as t,r as n,t as r}from"./hmi-B04X0czX.mjs";export{r as Audio,t as HmiApi,n as Knob,e as Screen};
1
+ import{i as e,n as t,r as n,t as r}from"./hmi-dJ8Y4DVD.mjs";export{r as Audio,t as HmiApi,n as Knob,e as Screen};
@@ -1,2 +1,2 @@
1
1
  import"up-fetch";import*as e from"valibot";let t=function(e){return e.Can=`can`,e.Rs232=`rs232`,e.Rs485=`rs485`,e.I2c=`i2c`,e.Spi=`spi`,e.Uart=`uart`,e}({});const n=e.enum(t),r=e.object({min:e.pipe(e.number(),e.minValue(-24),e.maxValue(24)),max:e.pipe(e.number(),e.minValue(-24),e.maxValue(24))}),i=e.object({max:e.number()}),a=e.object({count:e.pipe(e.number(),e.minValue(1)),input_voltage:r,output_voltage:r}),o=e.object({count:e.pipe(e.number(),e.minValue(0)),max_current:e.number(),max_voltage:e.number(),on_resistance:e.pipe(e.number(),e.minValue(0))}),s=e.object({type:e.picklist([`3.0`,`2.0`]),count:e.pipe(e.number(),e.minValue(1))}),c=e.object({type:e.picklist([`1000BASE-T`,`100BASE-T`,`10BASE-T`]),count:e.pipe(e.number(),e.minValue(1))}),l=e.object({type:n,count:e.pipe(e.number(),e.minValue(1))}),u=e.object({count:e.pipe(e.number(),e.minValue(1)),output_voltage:r,current:i}),d=e.object({type:e.picklist([`low_precision`,`high_precision`]),source:e.string(),resolution:e.pipe(e.number(),e.minValue(0))}),f=e.object({width:e.pipe(e.number(),e.minValue(1)),height:e.pipe(e.number(),e.minValue(1))}),p=e.object({type:e.string(),size:f}),m=e.object({count:e.pipe(e.number(),e.minValue(0)),type:e.string()}),h=e.object({count:e.pipe(e.number(),e.minValue(0)),type:e.string()}),g=e.object({display:p,input:m,speaker:h}),_=e.object({name:e.string(),serial_number:e.string(),io:a,relays:o,usb_ports:e.array(s),ethernet:e.array(c),communication:e.array(l),power_supply:u,current_measurement:e.array(d),hmi:g}),v=e.object({model:e.string(),serial_number:e.string(),firmware_version:e.string(),firmware_commit:e.string(),disk_used:e.number(),disk_total:e.number(),docker_used:e.number(),capabilities:_}),y=e.object({name:e.string(),path:e.string(),container_id:e.string(),image:e.string()});e.object({name:e.string(),image:e.string()});var b=class{constructor(e){this.fetch=e}device(){return this.fetch(`/management/device`,{schema:v})}async datetime(){let t=await this.fetch(`/management/time`,{schema:e.object({epoch_seconds:e.number()})});return new Date(t.epoch_seconds*1e3)}setDatetime(e){return this.fetch(`/management/time`,{method:`POST`,body:{epoch_seconds:Math.floor(e.getTime()/1e3)},parseResponse:()=>{}})}getProjects(){return this.fetch(`/management/projects`,{schema:e.array(y)})}createProject(e){return this.fetch(`/management/projects`,{method:`POST`,body:e,schema:y})}updateProject(e,t){return this.fetch(`/management/projects/${e}`,{method:`PATCH`,body:t,schema:y})}runProject(e){return this.fetch(`/management/projects/${e}/run`,{method:`POST`})}stopProject(e){return this.fetch(`/management/projects/${e}/stop`,{method:`POST`})}deleteProject(e){return this.fetch(`/management/projects/${e}`,{method:`DELETE`})}};export{b as n,t};
2
- //# sourceMappingURL=management-BRYyWntE.mjs.map
2
+ //# sourceMappingURL=management-CGmaS4-D.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"management-CGmaS4-D.mjs","names":["fetch: UpFetch"],"sources":["../src/api/management.ts"],"sourcesContent":["import { type UpFetch } from 'up-fetch';\nimport * as v from 'valibot';\n\nexport enum CommunicationInterfaceType {\n Can = 'can',\n Rs232 = 'rs232',\n Rs485 = 'rs485',\n I2c = 'i2c',\n Spi = 'spi',\n Uart = 'uart',\n}\nconst communicationInterface = v.enum(CommunicationInterfaceType);\n\nconst voltageRange = v.object({\n min: v.pipe(v.number(), v.minValue(-24), v.maxValue(24)),\n max: v.pipe(v.number(), v.minValue(-24), v.maxValue(24)),\n});\n\nconst currentRange = v.object({ max: v.number() });\n\nconst ioCapabilities = v.object({\n count: v.pipe(v.number(), v.minValue(1)),\n input_voltage: voltageRange,\n output_voltage: voltageRange,\n});\n\nconst relaysCapabilities = v.object({\n count: v.pipe(v.number(), v.minValue(0)),\n max_current: v.number(),\n max_voltage: v.number(),\n on_resistance: v.pipe(v.number(), v.minValue(0)),\n});\n\nconst usbCapability = v.object({\n type: v.picklist(['3.0', '2.0']),\n count: v.pipe(v.number(), v.minValue(1)),\n});\n\nconst ethernetCapability = v.object({\n type: v.picklist(['1000BASE-T', '100BASE-T', '10BASE-T']),\n count: v.pipe(v.number(), v.minValue(1)),\n});\n\nconst communicationCapability = v.object({\n type: communicationInterface,\n count: v.pipe(v.number(), v.minValue(1)),\n});\n\nconst powerSupplyCapabilities = v.object({\n count: v.pipe(v.number(), v.minValue(1)),\n output_voltage: voltageRange,\n current: currentRange,\n});\n\nconst currentMeasurementCapabilities = v.object({\n type: v.picklist(['low_precision', 'high_precision']),\n source: v.string(),\n resolution: v.pipe(v.number(), v.minValue(0)),\n});\n\nconst screenSize = v.object({\n width: v.pipe(v.number(), v.minValue(1)),\n height: v.pipe(v.number(), v.minValue(1)),\n});\n\nconst displayCapabilities = v.object({ type: v.string(), size: screenSize });\n\nconst inputCapabilities = v.object({ count: v.pipe(v.number(), v.minValue(0)), type: v.string() });\n\nconst audioCapabilities = v.object({ count: v.pipe(v.number(), v.minValue(0)), type: v.string() });\n\nconst hmiCapabilities = v.object({\n display: displayCapabilities,\n input: inputCapabilities,\n speaker: audioCapabilities,\n});\n\nconst capabilities = v.object({\n name: v.string(),\n serial_number: v.string(),\n io: ioCapabilities,\n relays: relaysCapabilities,\n usb_ports: v.array(usbCapability),\n ethernet: v.array(ethernetCapability),\n communication: v.array(communicationCapability),\n power_supply: powerSupplyCapabilities,\n current_measurement: v.array(currentMeasurementCapabilities),\n hmi: hmiCapabilities,\n});\n\nconst device = v.object({\n model: v.string(),\n serial_number: v.string(),\n firmware_version: v.string(),\n firmware_commit: v.string(),\n disk_used: v.number(),\n disk_total: v.number(),\n docker_used: v.number(),\n capabilities: capabilities,\n});\nexport type Device = v.InferOutput<typeof device>;\n\nconst project = v.object({\n name: v.string(),\n path: v.string(),\n container_id: v.string(),\n image: v.string(),\n});\ntype Project = v.InferOutput<typeof project>;\n\nconst createProject = v.object({ name: v.string(), image: v.string() });\ntype CreateProject = v.InferOutput<typeof createProject>;\n\n/** @hideconstructor */\nexport class ManagementApi {\n constructor(private readonly fetch: UpFetch) {}\n\n /**\n * Gets device information and capabilities.\n * @returns The device information.\n */\n device() {\n return this.fetch('/management/device', { schema: device });\n }\n\n /**\n * Gets the current date and time of the device.\n * @returns The current date and time.\n */\n async datetime(): Promise<Date> {\n const time = await this.fetch('/management/time', {\n schema: v.object({ epoch_seconds: v.number() }),\n });\n return new Date(time.epoch_seconds * 1000);\n }\n\n /**\n * Sets the date and time of the device.\n *\n * This will only work if the device is not connected to the internet.\n *\n * @param datetime The date and time to set.\n */\n setDatetime(datetime: Date): Promise<void> {\n return this.fetch('/management/time', {\n method: 'POST',\n body: { epoch_seconds: Math.floor(datetime.getTime() / 1000) },\n parseResponse: () => {},\n });\n }\n\n /**\n * Gets a list of all projects.\n * @returns An array of projects.\n */\n getProjects() {\n return this.fetch('/management/projects', { schema: v.array(project) });\n }\n\n /**\n * Creates a new project.\n * @param data The project creation data.\n */\n createProject(newProject: CreateProject) {\n return this.fetch('/management/projects', {\n method: 'POST',\n body: newProject,\n schema: project,\n });\n }\n\n /**\n * Patches an existing project.\n * @param projectId The ID or name of the project to patch.\n * @param data The data to patch the project with.\n */\n updateProject(projectId: string, data: Project) {\n return this.fetch(`/management/projects/${projectId}`, {\n method: 'PATCH',\n body: data,\n schema: project,\n });\n }\n\n /**\n * Runs a project.\n * @param projectId The ID or name of the project to run.\n */\n runProject(projectId: string) {\n return this.fetch(`/management/projects/${projectId}/run`, { method: 'POST' });\n }\n\n /**\n * Stops a running project.\n * @param projectId The ID or name of the project to stop.\n */\n stopProject(projectId: string) {\n return this.fetch(`/management/projects/${projectId}/stop`, { method: 'POST' });\n }\n\n /**\n * Deletes a project.\n * @param projectId The ID or name of the project to delete.\n */\n deleteProject(projectId: string) {\n return this.fetch(`/management/projects/${projectId}`, { method: 'DELETE' });\n }\n\n /**\n * Imports a project. The data should be FormData containing the project file.\n * @param\n */\n /*\n async importProject(: data): Promise<void> {\n return this.client.requestVoid(\"POST\", \"/management/projects/import\", data);\n }\n */\n\n /**\n * Exports a project.\n * @param projectId The ID or name of the project to export.\n * @returns An ArrayBuffer containing the project export data.\n */\n /*\n async exportProject(projectId: string): Promise<ArrayBuffer> {\n return this.client.request<ArrayBuffer>(\"GET\", `/management/projects/${projectId}/export`, undefined, { responseType: 'arraybuffer' });\n }\n */\n}\n"],"mappings":"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"}
@@ -97,6 +97,7 @@ declare const createProject: v.ObjectSchema<{
97
97
  readonly image: v.StringSchema<undefined>;
98
98
  }, undefined>;
99
99
  type CreateProject = v.InferOutput<typeof createProject>;
100
+ /** @hideconstructor */
100
101
  declare class ManagementApi {
101
102
  private readonly fetch;
102
103
  constructor(fetch: UpFetch);
@@ -240,4 +241,4 @@ declare class ManagementApi {
240
241
  }
241
242
  //#endregion
242
243
  export { Device as n, ManagementApi as r, CommunicationInterfaceType as t };
243
- //# sourceMappingURL=management-DYOPvugC.d.mts.map
244
+ //# sourceMappingURL=management-COw5z8sl.d.cts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"management-COw5z8sl.d.cts","names":[],"sources":["../src/api/management.ts"],"sourcesContent":[],"mappings":";;;;aAGY,0BAAA;;EAAA,KAAA,GAAA,OAAA;EAuFN,KAAA,GAAA,OASJ;;;;;cATI,QAAM,CAAA,CAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;KAUA,MAAA,GAAS,CAAA,CAAE,mBAAmB;cAEpC,SAAO,CAAA,CAAA;;;;;;KAMR,OAAA,GAAU,CAAA,CAAE,mBAAmB;cAE9B,eAAa,CAAA,CAAA;;;;KACd,aAAA,GAAgB,CAAA,CAAE,mBAAmB;;cAG7B,aAAA;;qBACyB;;;;;YAM9B;;;IA/BI,gBAAA,EAAA,MAAA;IAAA,eAAA,EAAA,MAAA;IAUA,SAAM,EAAA,MAAwB;IAEpC,UAKJ,EAAA,MAAA;;;;;MALW,EAAA,EAAA;QAAA,KAAA,EAAA,MAAA;QAMD,aAAwB,EAAA;UAEmC,GAAA,EAAA,MAAA;;;QAApD,cAAA,EAAA;UAAA,GAAA,EAAA,MAAA;UACD,GAAA,EAAA,MAAA;QAGL,CAAA;MACyB,CAAA;;QAM9B,KAAA,EAAA,MAAA;QAQoB,WAAA,EAAA,MAAA;QAAR,WAAA,EAAA,MAAA;QAcI,aAAA,EAAA,MAAA;MAAO,CAAA;MAYlB,SAAA,EAAA;QAQe,IAAA,EAAA,KAAA,GAAA,KAAA;QAAa,KAAA,EAAA,MAAA;MAaA,CAAA,EAAA;MAAO,QAAA,EAAA;QAYlB,IAAA,EAAA,YAAA,GAAA,WAAA,GAAA,UAAA;QAQC,KAAA,EAAA,MAAA;MAQE,CAAA,EAAA;MAAA,aAAA,EAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;cA3Eb,QAAQ;;;;;;;;wBAcJ,OAAO;;;;;iBAYlB;;;;;;;;;;4BAQe,gBAAa;;;;;;;;;;;yCAaA,UAAO;;;;;;;;;;iCAYlB;;;;;kCAQC;;;;;oCAQE"}
@@ -97,6 +97,7 @@ declare const createProject: v.ObjectSchema<{
97
97
  readonly image: v.StringSchema<undefined>;
98
98
  }, undefined>;
99
99
  type CreateProject = v.InferOutput<typeof createProject>;
100
+ /** @hideconstructor */
100
101
  declare class ManagementApi {
101
102
  private readonly fetch;
102
103
  constructor(fetch: UpFetch);
@@ -240,4 +241,4 @@ declare class ManagementApi {
240
241
  }
241
242
  //#endregion
242
243
  export { Device as n, ManagementApi as r, CommunicationInterfaceType as t };
243
- //# sourceMappingURL=management-CecISx9d.d.cts.map
244
+ //# sourceMappingURL=management-CinGOMF_.d.mts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"management-CinGOMF_.d.mts","names":[],"sources":["../src/api/management.ts"],"sourcesContent":[],"mappings":";;;;aAGY,0BAAA;;EAAA,KAAA,GAAA,OAAA;EAuFN,KAAA,GAAA,OASJ;;;;;cATI,QAAM,CAAA,CAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;KAUA,MAAA,GAAS,CAAA,CAAE,mBAAmB;cAEpC,SAAO,CAAA,CAAA;;;;;;KAMR,OAAA,GAAU,CAAA,CAAE,mBAAmB;cAE9B,eAAa,CAAA,CAAA;;;;KACd,aAAA,GAAgB,CAAA,CAAE,mBAAmB;;cAG7B,aAAA;;qBACyB;;;;;YAM9B;;;IA/BI,gBAAA,EAAA,MAAA;IAAA,eAAA,EAAA,MAAA;IAUA,SAAM,EAAA,MAAwB;IAEpC,UAKJ,EAAA,MAAA;;;;;MALW,EAAA,EAAA;QAAA,KAAA,EAAA,MAAA;QAMD,aAAwB,EAAA;UAEmC,GAAA,EAAA,MAAA;;;QAApD,cAAA,EAAA;UAAA,GAAA,EAAA,MAAA;UACD,GAAA,EAAA,MAAA;QAGL,CAAA;MACyB,CAAA;;QAM9B,KAAA,EAAA,MAAA;QAQoB,WAAA,EAAA,MAAA;QAAR,WAAA,EAAA,MAAA;QAcI,aAAA,EAAA,MAAA;MAAO,CAAA;MAYlB,SAAA,EAAA;QAQe,IAAA,EAAA,KAAA,GAAA,KAAA;QAAa,KAAA,EAAA,MAAA;MAaA,CAAA,EAAA;MAAO,QAAA,EAAA;QAYlB,IAAA,EAAA,YAAA,GAAA,WAAA,GAAA,UAAA;QAQC,KAAA,EAAA,MAAA;MAQE,CAAA,EAAA;MAAA,aAAA,EAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;cA3Eb,QAAQ;;;;;;;;wBAcJ,OAAO;;;;;iBAYlB;;;;;;;;;;4BAQe,gBAAa;;;;;;;;;;;yCAaA,UAAO;;;;;;;;;;iCAYlB;;;;;kCAQC;;;;;oCAQE"}
@@ -1,2 +1,2 @@
1
1
  const e=require(`./chunk-DjWAcSYV.cjs`);let t=require(`up-fetch`);t=e.t(t);let n=require(`valibot`);n=e.t(n);let r=function(e){return e.Can=`can`,e.Rs232=`rs232`,e.Rs485=`rs485`,e.I2c=`i2c`,e.Spi=`spi`,e.Uart=`uart`,e}({});const i=n.enum(r),a=n.object({min:n.pipe(n.number(),n.minValue(-24),n.maxValue(24)),max:n.pipe(n.number(),n.minValue(-24),n.maxValue(24))}),o=n.object({max:n.number()}),s=n.object({count:n.pipe(n.number(),n.minValue(1)),input_voltage:a,output_voltage:a}),c=n.object({count:n.pipe(n.number(),n.minValue(0)),max_current:n.number(),max_voltage:n.number(),on_resistance:n.pipe(n.number(),n.minValue(0))}),l=n.object({type:n.picklist([`3.0`,`2.0`]),count:n.pipe(n.number(),n.minValue(1))}),u=n.object({type:n.picklist([`1000BASE-T`,`100BASE-T`,`10BASE-T`]),count:n.pipe(n.number(),n.minValue(1))}),d=n.object({type:i,count:n.pipe(n.number(),n.minValue(1))}),f=n.object({count:n.pipe(n.number(),n.minValue(1)),output_voltage:a,current:o}),p=n.object({type:n.picklist([`low_precision`,`high_precision`]),source:n.string(),resolution:n.pipe(n.number(),n.minValue(0))}),m=n.object({width:n.pipe(n.number(),n.minValue(1)),height:n.pipe(n.number(),n.minValue(1))}),h=n.object({type:n.string(),size:m}),g=n.object({count:n.pipe(n.number(),n.minValue(0)),type:n.string()}),_=n.object({count:n.pipe(n.number(),n.minValue(0)),type:n.string()}),v=n.object({display:h,input:g,speaker:_}),y=n.object({name:n.string(),serial_number:n.string(),io:s,relays:c,usb_ports:n.array(l),ethernet:n.array(u),communication:n.array(d),power_supply:f,current_measurement:n.array(p),hmi:v}),b=n.object({model:n.string(),serial_number:n.string(),firmware_version:n.string(),firmware_commit:n.string(),disk_used:n.number(),disk_total:n.number(),docker_used:n.number(),capabilities:y}),x=n.object({name:n.string(),path:n.string(),container_id:n.string(),image:n.string()});n.object({name:n.string(),image:n.string()});var S=class{constructor(e){this.fetch=e}device(){return this.fetch(`/management/device`,{schema:b})}async datetime(){let e=await this.fetch(`/management/time`,{schema:n.object({epoch_seconds:n.number()})});return new Date(e.epoch_seconds*1e3)}setDatetime(e){return this.fetch(`/management/time`,{method:`POST`,body:{epoch_seconds:Math.floor(e.getTime()/1e3)},parseResponse:()=>{}})}getProjects(){return this.fetch(`/management/projects`,{schema:n.array(x)})}createProject(e){return this.fetch(`/management/projects`,{method:`POST`,body:e,schema:x})}updateProject(e,t){return this.fetch(`/management/projects/${e}`,{method:`PATCH`,body:t,schema:x})}runProject(e){return this.fetch(`/management/projects/${e}/run`,{method:`POST`})}stopProject(e){return this.fetch(`/management/projects/${e}/stop`,{method:`POST`})}deleteProject(e){return this.fetch(`/management/projects/${e}`,{method:`DELETE`})}};Object.defineProperty(exports,`n`,{enumerable:!0,get:function(){return S}}),Object.defineProperty(exports,`t`,{enumerable:!0,get:function(){return r}});
2
- //# sourceMappingURL=management-B758IJfF.cjs.map
2
+ //# sourceMappingURL=management-PEkkZaQ3.cjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"management-PEkkZaQ3.cjs","names":["v","fetch: UpFetch"],"sources":["../src/api/management.ts"],"sourcesContent":["import { type UpFetch } from 'up-fetch';\nimport * as v from 'valibot';\n\nexport enum CommunicationInterfaceType {\n Can = 'can',\n Rs232 = 'rs232',\n Rs485 = 'rs485',\n I2c = 'i2c',\n Spi = 'spi',\n Uart = 'uart',\n}\nconst communicationInterface = v.enum(CommunicationInterfaceType);\n\nconst voltageRange = v.object({\n min: v.pipe(v.number(), v.minValue(-24), v.maxValue(24)),\n max: v.pipe(v.number(), v.minValue(-24), v.maxValue(24)),\n});\n\nconst currentRange = v.object({ max: v.number() });\n\nconst ioCapabilities = v.object({\n count: v.pipe(v.number(), v.minValue(1)),\n input_voltage: voltageRange,\n output_voltage: voltageRange,\n});\n\nconst relaysCapabilities = v.object({\n count: v.pipe(v.number(), v.minValue(0)),\n max_current: v.number(),\n max_voltage: v.number(),\n on_resistance: v.pipe(v.number(), v.minValue(0)),\n});\n\nconst usbCapability = v.object({\n type: v.picklist(['3.0', '2.0']),\n count: v.pipe(v.number(), v.minValue(1)),\n});\n\nconst ethernetCapability = v.object({\n type: v.picklist(['1000BASE-T', '100BASE-T', '10BASE-T']),\n count: v.pipe(v.number(), v.minValue(1)),\n});\n\nconst communicationCapability = v.object({\n type: communicationInterface,\n count: v.pipe(v.number(), v.minValue(1)),\n});\n\nconst powerSupplyCapabilities = v.object({\n count: v.pipe(v.number(), v.minValue(1)),\n output_voltage: voltageRange,\n current: currentRange,\n});\n\nconst currentMeasurementCapabilities = v.object({\n type: v.picklist(['low_precision', 'high_precision']),\n source: v.string(),\n resolution: v.pipe(v.number(), v.minValue(0)),\n});\n\nconst screenSize = v.object({\n width: v.pipe(v.number(), v.minValue(1)),\n height: v.pipe(v.number(), v.minValue(1)),\n});\n\nconst displayCapabilities = v.object({ type: v.string(), size: screenSize });\n\nconst inputCapabilities = v.object({ count: v.pipe(v.number(), v.minValue(0)), type: v.string() });\n\nconst audioCapabilities = v.object({ count: v.pipe(v.number(), v.minValue(0)), type: v.string() });\n\nconst hmiCapabilities = v.object({\n display: displayCapabilities,\n input: inputCapabilities,\n speaker: audioCapabilities,\n});\n\nconst capabilities = v.object({\n name: v.string(),\n serial_number: v.string(),\n io: ioCapabilities,\n relays: relaysCapabilities,\n usb_ports: v.array(usbCapability),\n ethernet: v.array(ethernetCapability),\n communication: v.array(communicationCapability),\n power_supply: powerSupplyCapabilities,\n current_measurement: v.array(currentMeasurementCapabilities),\n hmi: hmiCapabilities,\n});\n\nconst device = v.object({\n model: v.string(),\n serial_number: v.string(),\n firmware_version: v.string(),\n firmware_commit: v.string(),\n disk_used: v.number(),\n disk_total: v.number(),\n docker_used: v.number(),\n capabilities: capabilities,\n});\nexport type Device = v.InferOutput<typeof device>;\n\nconst project = v.object({\n name: v.string(),\n path: v.string(),\n container_id: v.string(),\n image: v.string(),\n});\ntype Project = v.InferOutput<typeof project>;\n\nconst createProject = v.object({ name: v.string(), image: v.string() });\ntype CreateProject = v.InferOutput<typeof createProject>;\n\n/** @hideconstructor */\nexport class ManagementApi {\n constructor(private readonly fetch: UpFetch) {}\n\n /**\n * Gets device information and capabilities.\n * @returns The device information.\n */\n device() {\n return this.fetch('/management/device', { schema: device });\n }\n\n /**\n * Gets the current date and time of the device.\n * @returns The current date and time.\n */\n async datetime(): Promise<Date> {\n const time = await this.fetch('/management/time', {\n schema: v.object({ epoch_seconds: v.number() }),\n });\n return new Date(time.epoch_seconds * 1000);\n }\n\n /**\n * Sets the date and time of the device.\n *\n * This will only work if the device is not connected to the internet.\n *\n * @param datetime The date and time to set.\n */\n setDatetime(datetime: Date): Promise<void> {\n return this.fetch('/management/time', {\n method: 'POST',\n body: { epoch_seconds: Math.floor(datetime.getTime() / 1000) },\n parseResponse: () => {},\n });\n }\n\n /**\n * Gets a list of all projects.\n * @returns An array of projects.\n */\n getProjects() {\n return this.fetch('/management/projects', { schema: v.array(project) });\n }\n\n /**\n * Creates a new project.\n * @param data The project creation data.\n */\n createProject(newProject: CreateProject) {\n return this.fetch('/management/projects', {\n method: 'POST',\n body: newProject,\n schema: project,\n });\n }\n\n /**\n * Patches an existing project.\n * @param projectId The ID or name of the project to patch.\n * @param data The data to patch the project with.\n */\n updateProject(projectId: string, data: Project) {\n return this.fetch(`/management/projects/${projectId}`, {\n method: 'PATCH',\n body: data,\n schema: project,\n });\n }\n\n /**\n * Runs a project.\n * @param projectId The ID or name of the project to run.\n */\n runProject(projectId: string) {\n return this.fetch(`/management/projects/${projectId}/run`, { method: 'POST' });\n }\n\n /**\n * Stops a running project.\n * @param projectId The ID or name of the project to stop.\n */\n stopProject(projectId: string) {\n return this.fetch(`/management/projects/${projectId}/stop`, { method: 'POST' });\n }\n\n /**\n * Deletes a project.\n * @param projectId The ID or name of the project to delete.\n */\n deleteProject(projectId: string) {\n return this.fetch(`/management/projects/${projectId}`, { method: 'DELETE' });\n }\n\n /**\n * Imports a project. The data should be FormData containing the project file.\n * @param\n */\n /*\n async importProject(: data): Promise<void> {\n return this.client.requestVoid(\"POST\", \"/management/projects/import\", data);\n }\n */\n\n /**\n * Exports a project.\n * @param projectId The ID or name of the project to export.\n * @returns An ArrayBuffer containing the project export data.\n */\n /*\n async exportProject(projectId: string): Promise<ArrayBuffer> {\n return this.client.request<ArrayBuffer>(\"GET\", `/management/projects/${projectId}/export`, undefined, { responseType: 'arraybuffer' });\n }\n */\n}\n"],"mappings":"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"}
@@ -1 +1 @@
1
- const e=require(`./management-B758IJfF.cjs`);exports.CommunicationInterfaceType=e.t,exports.ManagementApi=e.n;
1
+ const e=require(`./management-PEkkZaQ3.cjs`);exports.CommunicationInterfaceType=e.t,exports.ManagementApi=e.n;
@@ -1,2 +1,2 @@
1
- import { n as Device, r as ManagementApi, t as CommunicationInterfaceType } from "./management-CecISx9d.cjs";
1
+ import { n as Device, r as ManagementApi, t as CommunicationInterfaceType } from "./management-COw5z8sl.cjs";
2
2
  export { CommunicationInterfaceType, Device, ManagementApi };
@@ -1,2 +1,2 @@
1
- import { n as Device, r as ManagementApi, t as CommunicationInterfaceType } from "./management-DYOPvugC.mjs";
1
+ import { n as Device, r as ManagementApi, t as CommunicationInterfaceType } from "./management-CinGOMF_.mjs";
2
2
  export { CommunicationInterfaceType, Device, ManagementApi };
@@ -1 +1 @@
1
- import{n as e,t}from"./management-BRYyWntE.mjs";export{t as CommunicationInterfaceType,e as ManagementApi};
1
+ import{n as e,t}from"./management-CGmaS4-D.mjs";export{t as CommunicationInterfaceType,e as ManagementApi};