@wandelbots/nova-js 3.9.0-pr.280.2b62f3c → 3.9.0-pr.280.432dc39
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +11 -12
- package/dist/{AutoReconnectingWebsocket-DEs8wlLZ.d.cts → AutoReconnectingWebsocket-DNOF9mpz.d.cts} +2 -1
- package/dist/AutoReconnectingWebsocket-DNOF9mpz.d.cts.map +1 -0
- package/dist/{AutoReconnectingWebsocket-DEs8wlLZ.d.mts → AutoReconnectingWebsocket-DNOF9mpz.d.mts} +2 -1
- package/dist/AutoReconnectingWebsocket-DNOF9mpz.d.mts.map +1 -0
- package/dist/index.cjs +1 -1
- package/dist/index.d.cts +2 -2
- package/dist/index.d.mts +2 -2
- package/dist/index.mjs +1 -1
- package/dist/lib/deprecated/v1/index.cjs +4 -1
- package/dist/lib/deprecated/v1/index.cjs.map +1 -1
- package/dist/lib/deprecated/v1/index.d.cts +7 -2
- package/dist/lib/deprecated/v1/index.d.cts.map +1 -1
- package/dist/lib/deprecated/v1/index.d.mts +7 -2
- package/dist/lib/deprecated/v1/index.d.mts.map +1 -1
- package/dist/lib/deprecated/v1/index.mjs +4 -1
- package/dist/lib/deprecated/v1/index.mjs.map +1 -1
- package/dist/lib/v2/index.cjs +38 -25
- package/dist/lib/v2/index.cjs.map +1 -1
- package/dist/lib/v2/index.d.cts +45 -39
- package/dist/lib/v2/index.d.cts.map +1 -1
- package/dist/lib/v2/index.d.mts +45 -39
- package/dist/lib/v2/index.d.mts.map +1 -1
- package/dist/lib/v2/index.mjs +38 -24
- package/dist/lib/v2/index.mjs.map +1 -1
- package/dist/{wandelscriptUtils-Cz-yQ2eJ.d.mts → wandelscriptUtils-1A9uFPV_.d.cts} +13 -3
- package/dist/wandelscriptUtils-1A9uFPV_.d.cts.map +1 -0
- package/dist/{wandelscriptUtils-CsQAUu_9.mjs → wandelscriptUtils-C7hQePlo.mjs} +12 -5
- package/dist/wandelscriptUtils-C7hQePlo.mjs.map +1 -0
- package/dist/{wandelscriptUtils-BvZ8hcul.cjs → wandelscriptUtils-P0WYSZww.cjs} +12 -6
- package/dist/wandelscriptUtils-P0WYSZww.cjs.map +1 -0
- package/dist/{wandelscriptUtils-_Si3ueEd.d.cts → wandelscriptUtils-pySXnBlX.d.mts} +13 -3
- package/dist/wandelscriptUtils-pySXnBlX.d.mts.map +1 -0
- package/package.json +2 -3
- package/src/lib/deprecated/v1/ConnectedMotionGroup.ts +2 -0
- package/src/lib/deprecated/v1/JoggerConnection.ts +2 -0
- package/src/lib/deprecated/v1/MotionStreamConnection.ts +1 -0
- package/src/lib/deprecated/v1/NovaCellAPIClient.ts +3 -0
- package/src/lib/deprecated/v1/NovaClient.ts +8 -8
- package/src/lib/deprecated/v1/ProgramStateConnection.ts +4 -0
- package/src/lib/deprecated/v1/getLatestTrajectories.ts +1 -0
- package/src/lib/deprecated/v1/mock/MockNovaInstance.ts +1 -0
- package/src/lib/deprecated/v1/motionStateUpdate.ts +2 -0
- package/src/lib/deprecated/v1/wandelscriptUtils.ts +1 -0
- package/src/lib/deprecated/v2/NovaCellAPIClient.ts +3 -0
- package/src/lib/deprecated/v2/NovaClient.ts +9 -9
- package/src/lib/deprecated/v2/wandelscriptUtils.ts +1 -0
- package/src/lib/v2/Nova.ts +10 -9
- package/src/lib/v2/NovaAPIClient.ts +83 -96
- package/src/lib/v2/index.ts +1 -1
- package/dist/AutoReconnectingWebsocket-DEs8wlLZ.d.cts.map +0 -1
- package/dist/AutoReconnectingWebsocket-DEs8wlLZ.d.mts.map +0 -1
- package/dist/wandelscriptUtils-BvZ8hcul.cjs.map +0 -1
- package/dist/wandelscriptUtils-CsQAUu_9.mjs.map +0 -1
- package/dist/wandelscriptUtils-Cz-yQ2eJ.d.mts.map +0 -1
- package/dist/wandelscriptUtils-_Si3ueEd.d.cts.map +0 -1
|
@@ -2,14 +2,15 @@
|
|
|
2
2
|
import type { Configuration as BaseConfiguration } from "@wandelbots/nova-api/v2"
|
|
3
3
|
import type { AxiosRequestConfig } from "axios"
|
|
4
4
|
import axios, { isAxiosError } from "axios"
|
|
5
|
-
import urlJoin from "url-join"
|
|
6
5
|
import { loginWithAuth0 } from "../../../LoginWithAuth0"
|
|
7
6
|
import { AutoReconnectingWebsocket } from "../../AutoReconnectingWebsocket"
|
|
8
7
|
import { availableStorage } from "../../availableStorage"
|
|
9
8
|
import { parseNovaInstanceUrl } from "../../converters"
|
|
9
|
+
|
|
10
10
|
import { MockNovaInstance } from "../../v2/mock/MockNovaInstance"
|
|
11
11
|
import { NovaCellAPIClient } from "./NovaCellAPIClient"
|
|
12
12
|
|
|
13
|
+
/** @deprecated Use `NovaClientConfig` from `Nova` instead. */
|
|
13
14
|
export type NovaClientConfig = {
|
|
14
15
|
/**
|
|
15
16
|
* Url of the deployed Nova instance to connect to
|
|
@@ -44,8 +45,8 @@ export type NovaClientConfig = {
|
|
|
44
45
|
type NovaClientConfigWithDefaults = NovaClientConfig & { cellId: string }
|
|
45
46
|
|
|
46
47
|
/**
|
|
47
|
-
*
|
|
48
48
|
* Client for connecting to a Nova instance and controlling robots.
|
|
49
|
+
* @deprecated Use `Nova` from `@wandelbots/nova-js/v2` instead.
|
|
49
50
|
*/
|
|
50
51
|
export class NovaClient {
|
|
51
52
|
readonly api: NovaCellAPIClient
|
|
@@ -73,7 +74,7 @@ export class NovaClient {
|
|
|
73
74
|
|
|
74
75
|
// Set up Axios instance with interceptor for token fetching
|
|
75
76
|
const axiosInstance = axios.create({
|
|
76
|
-
baseURL:
|
|
77
|
+
baseURL: new URL("/api/v2", this.instanceUrl).href,
|
|
77
78
|
// TODO - backend needs to set proper CORS headers for this
|
|
78
79
|
headers:
|
|
79
80
|
typeof window !== "undefined" &&
|
|
@@ -135,7 +136,7 @@ export class NovaClient {
|
|
|
135
136
|
|
|
136
137
|
this.api = new NovaCellAPIClient(cellId, {
|
|
137
138
|
...config,
|
|
138
|
-
basePath:
|
|
139
|
+
basePath: new URL("/api/v2", this.instanceUrl).href,
|
|
139
140
|
isJsonMime: (mime: string) => {
|
|
140
141
|
return mime === "application/json"
|
|
141
142
|
},
|
|
@@ -183,11 +184,10 @@ export class NovaClient {
|
|
|
183
184
|
|
|
184
185
|
makeWebsocketURL(path: string): string {
|
|
185
186
|
const url = new URL(
|
|
186
|
-
|
|
187
|
-
this.
|
|
188
|
-
|
|
189
|
-
|
|
190
|
-
),
|
|
187
|
+
new URL(
|
|
188
|
+
`/api/v2/cells/${this.config.cellId}/${path.replace(/^\/+/, "")}`,
|
|
189
|
+
this.instanceUrl,
|
|
190
|
+
).href,
|
|
191
191
|
)
|
|
192
192
|
url.protocol = url.protocol.replace("http", "ws")
|
|
193
193
|
url.protocol = url.protocol.replace("https", "wss")
|
|
@@ -3,6 +3,7 @@ import type { Pose } from "@wandelbots/nova-api/v2"
|
|
|
3
3
|
/**
|
|
4
4
|
* Convert a Pose object representing a motion group position
|
|
5
5
|
* into a string which represents that pose in Wandelscript.
|
|
6
|
+
* @deprecated Wandelscript usage is deprecated; switching to Python is recommended.
|
|
6
7
|
*/
|
|
7
8
|
export function poseToWandelscriptString(
|
|
8
9
|
pose: Pick<Pose, "position" | "orientation">,
|
package/src/lib/v2/Nova.ts
CHANGED
|
@@ -1,7 +1,6 @@
|
|
|
1
1
|
import type { Configuration as BaseConfiguration } from "@wandelbots/nova-api/v2"
|
|
2
2
|
import type { AxiosRequestConfig } from "axios"
|
|
3
3
|
import axios, { isAxiosError } from "axios"
|
|
4
|
-
import urlJoin from "url-join"
|
|
5
4
|
import { loginWithAuth0 } from "../../LoginWithAuth0"
|
|
6
5
|
import { AutoReconnectingWebsocket } from "../AutoReconnectingWebsocket"
|
|
7
6
|
import { availableStorage } from "../availableStorage"
|
|
@@ -9,7 +8,7 @@ import { parseNovaInstanceUrl } from "../converters"
|
|
|
9
8
|
import { NovaAPIClient } from "./NovaAPIClient"
|
|
10
9
|
import { MockNovaInstance } from "./mock/MockNovaInstance"
|
|
11
10
|
|
|
12
|
-
export type
|
|
11
|
+
export type NovaConfig = {
|
|
13
12
|
/**
|
|
14
13
|
* Url of the deployed NOVA instance to connect to
|
|
15
14
|
* e.g. https://saeattii.instance.wandelbots.io
|
|
@@ -30,13 +29,13 @@ export type NovaClientConfig = {
|
|
|
30
29
|
*/
|
|
31
30
|
export class Nova {
|
|
32
31
|
readonly api: NovaAPIClient
|
|
33
|
-
readonly config:
|
|
32
|
+
readonly config: NovaConfig
|
|
34
33
|
readonly mock?: MockNovaInstance
|
|
35
34
|
readonly instanceUrl: URL
|
|
36
35
|
authPromise: Promise<string | null> | null = null
|
|
37
36
|
accessToken: string | null = null
|
|
38
37
|
|
|
39
|
-
constructor(config:
|
|
38
|
+
constructor(config: NovaConfig) {
|
|
40
39
|
this.config = config
|
|
41
40
|
this.accessToken =
|
|
42
41
|
config.accessToken ||
|
|
@@ -50,7 +49,7 @@ export class Nova {
|
|
|
50
49
|
|
|
51
50
|
// Set up Axios instance with interceptor for token fetching
|
|
52
51
|
const axiosInstance = axios.create({
|
|
53
|
-
baseURL:
|
|
52
|
+
baseURL: new URL("/api/v2", this.instanceUrl).href,
|
|
54
53
|
// TODO - backend needs to set proper CORS headers for this
|
|
55
54
|
headers:
|
|
56
55
|
typeof window !== "undefined" &&
|
|
@@ -112,7 +111,7 @@ export class Nova {
|
|
|
112
111
|
|
|
113
112
|
this.api = new NovaAPIClient({
|
|
114
113
|
...config,
|
|
115
|
-
basePath:
|
|
114
|
+
basePath: new URL("/api/v2", this.instanceUrl).href,
|
|
116
115
|
isJsonMime: (mime: string) => {
|
|
117
116
|
return mime === "application/json"
|
|
118
117
|
},
|
|
@@ -120,8 +119,10 @@ export class Nova {
|
|
|
120
119
|
...(this.mock
|
|
121
120
|
? ({
|
|
122
121
|
adapter: (config) => {
|
|
123
|
-
|
|
124
|
-
|
|
122
|
+
if (!this.mock) {
|
|
123
|
+
throw new Error("Mock adapter used without a mock instance")
|
|
124
|
+
}
|
|
125
|
+
return this.mock.handleAPIRequest(config)
|
|
125
126
|
},
|
|
126
127
|
} satisfies AxiosRequestConfig)
|
|
127
128
|
: {}),
|
|
@@ -160,7 +161,7 @@ export class Nova {
|
|
|
160
161
|
}
|
|
161
162
|
|
|
162
163
|
makeWebsocketURL(path: string): string {
|
|
163
|
-
const url = new URL(
|
|
164
|
+
const url = new URL(`/api/v2/${path.replace(/^\/+/, "")}`, this.instanceUrl)
|
|
164
165
|
url.protocol = url.protocol.replace("http", "ws")
|
|
165
166
|
url.protocol = url.protocol.replace("https", "wss")
|
|
166
167
|
|
|
@@ -2,11 +2,38 @@ import type {
|
|
|
2
2
|
BaseAPI,
|
|
3
3
|
Configuration as BaseConfiguration,
|
|
4
4
|
} from "@wandelbots/nova-api/v2"
|
|
5
|
-
import
|
|
5
|
+
import {
|
|
6
|
+
ApplicationApi,
|
|
7
|
+
BUSInputsOutputsApi,
|
|
8
|
+
CellApi,
|
|
9
|
+
ControllerApi,
|
|
10
|
+
ControllerInputsOutputsApi,
|
|
11
|
+
JoggingApi,
|
|
12
|
+
KinematicsApi,
|
|
13
|
+
LicenseApi,
|
|
14
|
+
MotionGroupApi,
|
|
15
|
+
MotionGroupModelsApi,
|
|
16
|
+
NOVACloudApi,
|
|
17
|
+
ProgramApi,
|
|
18
|
+
RobotConfigurationsApi,
|
|
19
|
+
SessionApi,
|
|
20
|
+
StoreCollisionComponentsApi,
|
|
21
|
+
StoreCollisionSetupsApi,
|
|
22
|
+
StoreObjectApi,
|
|
23
|
+
SystemApi,
|
|
24
|
+
TrajectoryCachingApi,
|
|
25
|
+
TrajectoryExecutionApi,
|
|
26
|
+
TrajectoryPlanningApi,
|
|
27
|
+
VersionApi,
|
|
28
|
+
VirtualControllerApi,
|
|
29
|
+
VirtualControllerBehaviorApi,
|
|
30
|
+
VirtualControllerInputsOutputsApi,
|
|
31
|
+
} from "@wandelbots/nova-api/v2"
|
|
6
32
|
import type { AxiosInstance } from "axios"
|
|
7
33
|
import axios from "axios"
|
|
8
34
|
|
|
9
|
-
|
|
35
|
+
// biome-ignore lint/suspicious/noExplicitAny: metamagic
|
|
36
|
+
type UnwrapAxiosResponseReturn<T> = T extends (...a: any[]) => any
|
|
10
37
|
? (
|
|
11
38
|
...a: Parameters<T>
|
|
12
39
|
) => Promise<Awaited<ReturnType<T>> extends { data: infer D } ? D : never>
|
|
@@ -16,73 +43,12 @@ type WithUnwrappedAxiosResponse<T> = {
|
|
|
16
43
|
[P in keyof T]: UnwrapAxiosResponseReturn<T[P]>
|
|
17
44
|
}
|
|
18
45
|
|
|
19
|
-
/**
|
|
20
|
-
* Filters nova-api/v2 exports to just the API class constructors,
|
|
21
|
-
* excluding helper factories and param creators.
|
|
22
|
-
*/
|
|
23
|
-
type ApiConstructors = {
|
|
24
|
-
[K in keyof typeof novaApiV2 as K extends `${string}Api`
|
|
25
|
-
? K extends
|
|
26
|
-
| `${string}Factory${string}`
|
|
27
|
-
| `${string}Fp${string}`
|
|
28
|
-
| `${string}ParamCreator${string}`
|
|
29
|
-
? never
|
|
30
|
-
: K
|
|
31
|
-
: never]: (typeof novaApiV2)[K]
|
|
32
|
-
}
|
|
33
|
-
|
|
34
|
-
/**
|
|
35
|
-
* Lowercases leading uppercase characters to produce a camelCase property name.
|
|
36
|
-
* e.g. "BUSInputsOutputs" -> "busInputsOutputs", "NOVACloud" -> "novaCloud",
|
|
37
|
-
* "Application" -> "application"
|
|
38
|
-
*/
|
|
39
|
-
type CamelCase<S extends string> =
|
|
40
|
-
S extends `${Uppercase<infer A>}${Uppercase<infer B>}${infer Rest}`
|
|
41
|
-
? Rest extends `${Lowercase<string>}${string}`
|
|
42
|
-
? `${Lowercase<A>}${CamelCase<`${Uppercase<B>}${Rest}`>}`
|
|
43
|
-
: `${Lowercase<A>}${CamelCase<`${Uppercase<B>}${Rest}`>}`
|
|
44
|
-
: Uncapitalize<S>
|
|
45
|
-
|
|
46
|
-
/**
|
|
47
|
-
* Maps API class names to property names by stripping "Api" and converting
|
|
48
|
-
* the leading acronym to lowercase camelCase.
|
|
49
|
-
*
|
|
50
|
-
* Properties are auto-discovered from the upstream package at runtime,
|
|
51
|
-
* so new API sections are available immediately without code changes.
|
|
52
|
-
*/
|
|
53
|
-
type ApiProperties = {
|
|
54
|
-
readonly [K in keyof ApiConstructors as K extends `${infer P}Api`
|
|
55
|
-
? CamelCase<P>
|
|
56
|
-
: never]: ApiConstructors[K] extends new (
|
|
57
|
-
...args: unknown[]
|
|
58
|
-
) => infer I
|
|
59
|
-
? WithUnwrappedAxiosResponse<I>
|
|
60
|
-
: never
|
|
61
|
-
}
|
|
62
|
-
|
|
63
46
|
type NovaAPIClientOpts = BaseConfiguration & {
|
|
64
47
|
axiosInstance?: AxiosInstance
|
|
65
48
|
mock?: boolean
|
|
66
49
|
}
|
|
67
50
|
|
|
68
|
-
function
|
|
69
|
-
name: string,
|
|
70
|
-
value: unknown,
|
|
71
|
-
): value is new (
|
|
72
|
-
config: BaseConfiguration,
|
|
73
|
-
basePath: string,
|
|
74
|
-
axios: AxiosInstance,
|
|
75
|
-
) => BaseAPI {
|
|
76
|
-
return (
|
|
77
|
-
name.endsWith("Api") &&
|
|
78
|
-
typeof value === "function" &&
|
|
79
|
-
!name.includes("Factory") &&
|
|
80
|
-
!name.includes("Fp") &&
|
|
81
|
-
!name.includes("ParamCreator")
|
|
82
|
-
)
|
|
83
|
-
}
|
|
84
|
-
|
|
85
|
-
function wrapApi<T extends BaseAPI>(
|
|
51
|
+
function unwrap<T extends BaseAPI>(
|
|
86
52
|
ApiConstructor: new (
|
|
87
53
|
config: BaseConfiguration,
|
|
88
54
|
basePath: string,
|
|
@@ -116,43 +82,64 @@ function wrapApi<T extends BaseAPI>(
|
|
|
116
82
|
|
|
117
83
|
/**
|
|
118
84
|
* API client providing type-safe access to all the endpoints of a NOVA
|
|
119
|
-
* instance.
|
|
120
|
-
* at runtime, so new sections added upstream are exposed automatically.
|
|
85
|
+
* instance.
|
|
121
86
|
*/
|
|
122
|
-
export
|
|
87
|
+
export class NovaAPIClient {
|
|
123
88
|
readonly opts: NovaAPIClientOpts
|
|
124
89
|
|
|
90
|
+
readonly application: WithUnwrappedAxiosResponse<ApplicationApi>
|
|
91
|
+
readonly busIOs: WithUnwrappedAxiosResponse<BUSInputsOutputsApi>
|
|
92
|
+
readonly cell: WithUnwrappedAxiosResponse<CellApi>
|
|
93
|
+
readonly controller: WithUnwrappedAxiosResponse<ControllerApi>
|
|
94
|
+
readonly controllerIOs: WithUnwrappedAxiosResponse<ControllerInputsOutputsApi>
|
|
95
|
+
readonly jogging: WithUnwrappedAxiosResponse<JoggingApi>
|
|
96
|
+
readonly kinematics: WithUnwrappedAxiosResponse<KinematicsApi>
|
|
97
|
+
readonly license: WithUnwrappedAxiosResponse<LicenseApi>
|
|
98
|
+
readonly motionGroup: WithUnwrappedAxiosResponse<MotionGroupApi>
|
|
99
|
+
readonly motionGroupModels: WithUnwrappedAxiosResponse<MotionGroupModelsApi>
|
|
100
|
+
readonly novaCloud: WithUnwrappedAxiosResponse<NOVACloudApi>
|
|
101
|
+
readonly program: WithUnwrappedAxiosResponse<ProgramApi>
|
|
102
|
+
readonly robotConfigurations: WithUnwrappedAxiosResponse<RobotConfigurationsApi>
|
|
103
|
+
readonly session: WithUnwrappedAxiosResponse<SessionApi>
|
|
104
|
+
readonly storeCollisionComponents: WithUnwrappedAxiosResponse<StoreCollisionComponentsApi>
|
|
105
|
+
readonly storeCollisionSetups: WithUnwrappedAxiosResponse<StoreCollisionSetupsApi>
|
|
106
|
+
readonly storeObject: WithUnwrappedAxiosResponse<StoreObjectApi>
|
|
107
|
+
readonly system: WithUnwrappedAxiosResponse<SystemApi>
|
|
108
|
+
readonly trajectoryCaching: WithUnwrappedAxiosResponse<TrajectoryCachingApi>
|
|
109
|
+
readonly trajectoryExecution: WithUnwrappedAxiosResponse<TrajectoryExecutionApi>
|
|
110
|
+
readonly trajectoryPlanning: WithUnwrappedAxiosResponse<TrajectoryPlanningApi>
|
|
111
|
+
readonly version: WithUnwrappedAxiosResponse<VersionApi>
|
|
112
|
+
readonly virtualController: WithUnwrappedAxiosResponse<VirtualControllerApi>
|
|
113
|
+
readonly virtualControllerBehavior: WithUnwrappedAxiosResponse<VirtualControllerBehaviorApi>
|
|
114
|
+
readonly virtualControllerIOs: WithUnwrappedAxiosResponse<VirtualControllerInputsOutputsApi>
|
|
115
|
+
|
|
125
116
|
constructor(opts: NovaAPIClientOpts) {
|
|
126
117
|
this.opts = opts
|
|
127
118
|
|
|
128
|
-
|
|
129
|
-
|
|
130
|
-
|
|
131
|
-
|
|
132
|
-
|
|
133
|
-
|
|
134
|
-
|
|
135
|
-
|
|
136
|
-
|
|
137
|
-
|
|
138
|
-
|
|
139
|
-
|
|
140
|
-
|
|
141
|
-
|
|
142
|
-
|
|
143
|
-
|
|
144
|
-
|
|
145
|
-
|
|
146
|
-
|
|
147
|
-
|
|
148
|
-
|
|
149
|
-
|
|
150
|
-
|
|
151
|
-
|
|
152
|
-
|
|
153
|
-
readonly cellId: string
|
|
154
|
-
readonly opts: NovaAPIClientOpts
|
|
119
|
+
this.application = unwrap(ApplicationApi, opts)
|
|
120
|
+
this.busIOs = unwrap(BUSInputsOutputsApi, opts)
|
|
121
|
+
this.cell = unwrap(CellApi, opts)
|
|
122
|
+
this.controller = unwrap(ControllerApi, opts)
|
|
123
|
+
this.controllerIOs = unwrap(ControllerInputsOutputsApi, opts)
|
|
124
|
+
this.jogging = unwrap(JoggingApi, opts)
|
|
125
|
+
this.kinematics = unwrap(KinematicsApi, opts)
|
|
126
|
+
this.license = unwrap(LicenseApi, opts)
|
|
127
|
+
this.motionGroup = unwrap(MotionGroupApi, opts)
|
|
128
|
+
this.motionGroupModels = unwrap(MotionGroupModelsApi, opts)
|
|
129
|
+
this.novaCloud = unwrap(NOVACloudApi, opts)
|
|
130
|
+
this.program = unwrap(ProgramApi, opts)
|
|
131
|
+
this.robotConfigurations = unwrap(RobotConfigurationsApi, opts)
|
|
132
|
+
this.session = unwrap(SessionApi, opts)
|
|
133
|
+
this.storeCollisionComponents = unwrap(StoreCollisionComponentsApi, opts)
|
|
134
|
+
this.storeCollisionSetups = unwrap(StoreCollisionSetupsApi, opts)
|
|
135
|
+
this.storeObject = unwrap(StoreObjectApi, opts)
|
|
136
|
+
this.system = unwrap(SystemApi, opts)
|
|
137
|
+
this.trajectoryCaching = unwrap(TrajectoryCachingApi, opts)
|
|
138
|
+
this.trajectoryExecution = unwrap(TrajectoryExecutionApi, opts)
|
|
139
|
+
this.trajectoryPlanning = unwrap(TrajectoryPlanningApi, opts)
|
|
140
|
+
this.version = unwrap(VersionApi, opts)
|
|
141
|
+
this.virtualController = unwrap(VirtualControllerApi, opts)
|
|
142
|
+
this.virtualControllerBehavior = unwrap(VirtualControllerBehaviorApi, opts)
|
|
143
|
+
this.virtualControllerIOs = unwrap(VirtualControllerInputsOutputsApi, opts)
|
|
155
144
|
}
|
|
156
145
|
}
|
|
157
|
-
|
|
158
|
-
export type NovaAPIClient = InstanceType<typeof NovaAPIClient>
|
package/src/lib/v2/index.ts
CHANGED
|
@@ -3,5 +3,5 @@ export * from "../deprecated/v2/NovaCellAPIClient"
|
|
|
3
3
|
export * from "../deprecated/v2/NovaClient"
|
|
4
4
|
export * from "../deprecated/v2/wandelscriptUtils"
|
|
5
5
|
export { Nova } from "./Nova"
|
|
6
|
-
export type {
|
|
6
|
+
export type { NovaConfig } from "./Nova"
|
|
7
7
|
export { NovaAPIClient } from "./NovaAPIClient"
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"AutoReconnectingWebsocket-DEs8wlLZ.d.cts","names":[],"sources":["../src/lib/deprecated/v1/mock/MockNovaInstance.ts","../src/lib/v2/mock/MockNovaInstance.ts","../src/lib/AutoReconnectingWebsocket.ts"],"mappings":";;;;;;AAeA;cAAa,kBAAA;EAAA,SACF,WAAA,EAAa,yBAAA;EAEhB,gBAAA,CACJ,MAAA,EAAQ,0BAAA,GACP,OAAA,CAAQ,aAAA;EAg8BX,yBAAA,CAA0B,MAAA,EAAQ,yBAAA;EAkOlC,sBAAA,CAAuB,MAAA,EAAQ,yBAAA,EAA2B,OAAA;AAAA;;;;;AAvqC5D;cCAa,gBAAA;EAAA,SACF,WAAA,EAAa,yBAAA;EAEhB,gBAAA,CACJ,MAAA,EAAQ,0BAAA,GACP,OAAA,CAAQ,aAAA;EAyCX,yBAAA,CAA0B,MAAA,EAAQ,yBAAA;EA+BlC,sBAAA,CAAuB,MAAA,EAAQ,yBAAA,EAA2B,OAAA;AAAA;;;cCxF/C,yBAAA,SAAkC,qBAAA;EAAA,SAOlC,IAAA;IACP,IAAA,GAAO,kBAAA,GAAsB,gBAAA;IAC7B,SAAA;EAAA;EARJ,oBAAA,GAAuB,YAAA;EACvB,SAAA;EACA,QAAA;cAGE,SAAA,UACS,IAAA;IACP,IAAA,GAAO,kBAAA,GAAsB,gBAAA;IAC7B,SAAA;EAAA;EA4CJ,SAAA,CAAU,SAAA;EAMV,QAAA,CAAS,IAAA;EF7CH;;;;EEyDN,OAAA,CAAA;EFy4BA;;;EE93BM,MAAA,CAAA,GAAM,OAAA;EFgmCmB;;;EEllCzB,MAAA,CAAA,GAAM,OAAA;EFklC6D;;;;ACvqC3E;ECqGQ,YAAA,CAAA,GAAY,OAAA,CAAA,YAAA;;;;;EA4BZ,WAAA,CAAA,GAAW,OAAA,CAAA,YAAA;AAAA"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"AutoReconnectingWebsocket-DEs8wlLZ.d.mts","names":[],"sources":["../src/lib/deprecated/v1/mock/MockNovaInstance.ts","../src/lib/v2/mock/MockNovaInstance.ts","../src/lib/AutoReconnectingWebsocket.ts"],"mappings":";;;;;;AAeA;cAAa,kBAAA;EAAA,SACF,WAAA,EAAa,yBAAA;EAEhB,gBAAA,CACJ,MAAA,EAAQ,0BAAA,GACP,OAAA,CAAQ,aAAA;EAg8BX,yBAAA,CAA0B,MAAA,EAAQ,yBAAA;EAkOlC,sBAAA,CAAuB,MAAA,EAAQ,yBAAA,EAA2B,OAAA;AAAA;;;;;AAvqC5D;cCAa,gBAAA;EAAA,SACF,WAAA,EAAa,yBAAA;EAEhB,gBAAA,CACJ,MAAA,EAAQ,0BAAA,GACP,OAAA,CAAQ,aAAA;EAyCX,yBAAA,CAA0B,MAAA,EAAQ,yBAAA;EA+BlC,sBAAA,CAAuB,MAAA,EAAQ,yBAAA,EAA2B,OAAA;AAAA;;;cCxF/C,yBAAA,SAAkC,qBAAA;EAAA,SAOlC,IAAA;IACP,IAAA,GAAO,kBAAA,GAAsB,gBAAA;IAC7B,SAAA;EAAA;EARJ,oBAAA,GAAuB,YAAA;EACvB,SAAA;EACA,QAAA;cAGE,SAAA,UACS,IAAA;IACP,IAAA,GAAO,kBAAA,GAAsB,gBAAA;IAC7B,SAAA;EAAA;EA4CJ,SAAA,CAAU,SAAA;EAMV,QAAA,CAAS,IAAA;EF7CH;;;;EEyDN,OAAA,CAAA;EFy4BA;;;EE93BM,MAAA,CAAA,GAAM,OAAA;EFgmCmB;;;EEllCzB,MAAA,CAAA,GAAM,OAAA;EFklC6D;;;;ACvqC3E;ECqGQ,YAAA,CAAA,GAAY,OAAA,CAAA,YAAA;;;;;EA4BZ,WAAA,CAAA,GAAW,OAAA,CAAA,YAAA;AAAA"}
|