@daytonaio/sdk 0.170.0 → 0.171.0-alpha.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.
- package/LICENSE +190 -0
- package/cjs/CodeInterpreter.d.ts +95 -0
- package/cjs/CodeInterpreter.d.ts.map +1 -0
- package/cjs/CodeInterpreter.js +297 -0
- package/cjs/CodeInterpreter.js.map +1 -0
- package/cjs/ComputerUse.d.ts +539 -0
- package/cjs/ComputerUse.d.ts.map +1 -0
- package/cjs/ComputerUse.js +808 -0
- package/cjs/ComputerUse.js.map +1 -0
- package/cjs/Daytona.d.ts +355 -0
- package/cjs/Daytona.d.ts.map +1 -0
- package/cjs/Daytona.js +527 -0
- package/cjs/Daytona.js.map +1 -0
- package/cjs/FileSystem.d.ts +371 -0
- package/cjs/FileSystem.d.ts.map +1 -0
- package/cjs/FileSystem.js +489 -0
- package/cjs/FileSystem.js.map +1 -0
- package/cjs/Git.d.ts +203 -0
- package/cjs/Git.d.ts.map +1 -0
- package/cjs/Git.js +326 -0
- package/cjs/Git.js.map +1 -0
- package/cjs/Image.d.ts +265 -0
- package/cjs/Image.d.ts.map +1 -0
- package/cjs/Image.js +586 -0
- package/cjs/Image.js.map +1 -0
- package/cjs/LspServer.d.ts +172 -0
- package/cjs/LspServer.d.ts.map +1 -0
- package/cjs/LspServer.js +259 -0
- package/cjs/LspServer.js.map +1 -0
- package/cjs/ObjectStorage.d.ts +79 -0
- package/cjs/ObjectStorage.d.ts.map +1 -0
- package/cjs/ObjectStorage.js +199 -0
- package/cjs/ObjectStorage.js.map +1 -0
- package/cjs/Process.d.ts +490 -0
- package/cjs/Process.d.ts.map +1 -0
- package/cjs/Process.js +647 -0
- package/cjs/Process.js.map +1 -0
- package/cjs/PtyHandle.d.ts +155 -0
- package/cjs/PtyHandle.d.ts.map +1 -0
- package/cjs/PtyHandle.js +416 -0
- package/cjs/PtyHandle.js.map +1 -0
- package/cjs/README.md +180 -0
- package/cjs/Sandbox.d.ts +476 -0
- package/cjs/Sandbox.d.ts.map +1 -0
- package/cjs/Sandbox.js +905 -0
- package/cjs/Sandbox.js.map +1 -0
- package/cjs/Snapshot.d.ts +140 -0
- package/cjs/Snapshot.d.ts.map +1 -0
- package/cjs/Snapshot.js +248 -0
- package/cjs/Snapshot.js.map +1 -0
- package/cjs/Volume.d.ts +84 -0
- package/cjs/Volume.d.ts.map +1 -0
- package/cjs/Volume.js +119 -0
- package/cjs/Volume.js.map +1 -0
- package/cjs/__tests__/helpers.d.ts +6 -0
- package/cjs/__tests__/helpers.d.ts.map +1 -0
- package/cjs/__tests__/helpers.js +26 -0
- package/cjs/__tests__/helpers.js.map +1 -0
- package/cjs/errors/DaytonaError.d.ts +171 -0
- package/cjs/errors/DaytonaError.d.ts.map +1 -0
- package/cjs/errors/DaytonaError.js +258 -0
- package/cjs/errors/DaytonaError.js.map +1 -0
- package/cjs/index.d.ts +22 -0
- package/cjs/index.d.ts.map +1 -0
- package/cjs/index.js +49 -0
- package/cjs/index.js.map +1 -0
- package/cjs/package.json +3 -0
- package/cjs/types/Charts.d.ts +38 -0
- package/cjs/types/Charts.d.ts.map +1 -0
- package/cjs/types/Charts.js +37 -0
- package/cjs/types/Charts.js.map +1 -0
- package/cjs/types/CodeInterpreter.d.ts +77 -0
- package/cjs/types/CodeInterpreter.d.ts.map +1 -0
- package/cjs/types/CodeInterpreter.js +7 -0
- package/cjs/types/CodeInterpreter.js.map +1 -0
- package/cjs/types/ExecuteResponse.d.ts +26 -0
- package/cjs/types/ExecuteResponse.d.ts.map +1 -0
- package/cjs/types/ExecuteResponse.js +7 -0
- package/cjs/types/ExecuteResponse.js.map +1 -0
- package/cjs/types/Pty.d.ts +48 -0
- package/cjs/types/Pty.d.ts.map +1 -0
- package/cjs/types/Pty.js +7 -0
- package/cjs/types/Pty.js.map +1 -0
- package/cjs/utils/Binary.d.ts +39 -0
- package/cjs/utils/Binary.d.ts.map +1 -0
- package/cjs/utils/Binary.js +168 -0
- package/cjs/utils/Binary.js.map +1 -0
- package/cjs/utils/FileTransfer.d.ts +15 -0
- package/cjs/utils/FileTransfer.d.ts.map +1 -0
- package/cjs/utils/FileTransfer.js +261 -0
- package/cjs/utils/FileTransfer.js.map +1 -0
- package/cjs/utils/Import.d.ts +125 -0
- package/cjs/utils/Import.d.ts.map +1 -0
- package/cjs/utils/Import.js +112 -0
- package/cjs/utils/Import.js.map +1 -0
- package/cjs/utils/Multipart.d.ts +29 -0
- package/cjs/utils/Multipart.d.ts.map +1 -0
- package/cjs/utils/Multipart.js +115 -0
- package/cjs/utils/Multipart.js.map +1 -0
- package/cjs/utils/Runtime.d.ts +44 -0
- package/cjs/utils/Runtime.d.ts.map +1 -0
- package/cjs/utils/Runtime.js +95 -0
- package/cjs/utils/Runtime.js.map +1 -0
- package/cjs/utils/Stream.d.ts +20 -0
- package/cjs/utils/Stream.d.ts.map +1 -0
- package/cjs/utils/Stream.js +364 -0
- package/cjs/utils/Stream.js.map +1 -0
- package/cjs/utils/WebSocket.d.ts +10 -0
- package/cjs/utils/WebSocket.d.ts.map +1 -0
- package/cjs/utils/WebSocket.js +26 -0
- package/cjs/utils/WebSocket.js.map +1 -0
- package/cjs/utils/otel.decorator.d.ts +83 -0
- package/cjs/utils/otel.decorator.d.ts.map +1 -0
- package/cjs/utils/otel.decorator.js +141 -0
- package/cjs/utils/otel.decorator.js.map +1 -0
- package/esm/CodeInterpreter.d.ts +95 -0
- package/esm/CodeInterpreter.d.ts.map +1 -0
- package/esm/CodeInterpreter.js +292 -0
- package/esm/CodeInterpreter.js.map +1 -0
- package/esm/ComputerUse.d.ts +539 -0
- package/esm/ComputerUse.d.ts.map +1 -0
- package/esm/ComputerUse.js +799 -0
- package/esm/ComputerUse.js.map +1 -0
- package/esm/Daytona.d.ts +355 -0
- package/esm/Daytona.d.ts.map +1 -0
- package/esm/Daytona.js +523 -0
- package/esm/Daytona.js.map +1 -0
- package/esm/FileSystem.d.ts +371 -0
- package/esm/FileSystem.d.ts.map +1 -0
- package/esm/FileSystem.js +485 -0
- package/esm/FileSystem.js.map +1 -0
- package/esm/Git.d.ts +203 -0
- package/esm/Git.d.ts.map +1 -0
- package/esm/Git.js +322 -0
- package/esm/Git.js.map +1 -0
- package/esm/Image.d.ts +265 -0
- package/esm/Image.d.ts.map +1 -0
- package/esm/Image.js +581 -0
- package/esm/Image.js.map +1 -0
- package/esm/LspServer.d.ts +172 -0
- package/esm/LspServer.d.ts.map +1 -0
- package/esm/LspServer.js +255 -0
- package/esm/LspServer.js.map +1 -0
- package/esm/ObjectStorage.d.ts +79 -0
- package/esm/ObjectStorage.d.ts.map +1 -0
- package/esm/ObjectStorage.js +195 -0
- package/esm/ObjectStorage.js.map +1 -0
- package/esm/Process.d.ts +490 -0
- package/esm/Process.d.ts.map +1 -0
- package/esm/Process.js +642 -0
- package/esm/Process.js.map +1 -0
- package/esm/PtyHandle.d.ts +155 -0
- package/esm/PtyHandle.d.ts.map +1 -0
- package/esm/PtyHandle.js +412 -0
- package/esm/PtyHandle.js.map +1 -0
- package/esm/README.md +180 -0
- package/esm/Sandbox.d.ts +476 -0
- package/esm/Sandbox.d.ts.map +1 -0
- package/esm/Sandbox.js +901 -0
- package/esm/Sandbox.js.map +1 -0
- package/esm/Snapshot.d.ts +140 -0
- package/esm/Snapshot.d.ts.map +1 -0
- package/esm/Snapshot.js +244 -0
- package/esm/Snapshot.js.map +1 -0
- package/esm/Volume.d.ts +84 -0
- package/esm/Volume.d.ts.map +1 -0
- package/esm/Volume.js +115 -0
- package/esm/Volume.js.map +1 -0
- package/esm/__tests__/helpers.d.ts +6 -0
- package/esm/__tests__/helpers.d.ts.map +1 -0
- package/esm/__tests__/helpers.js +20 -0
- package/esm/__tests__/helpers.js.map +1 -0
- package/esm/errors/DaytonaError.d.ts +171 -0
- package/esm/errors/DaytonaError.d.ts.map +1 -0
- package/esm/errors/DaytonaError.js +243 -0
- package/esm/errors/DaytonaError.js.map +1 -0
- package/esm/index.d.ts +22 -0
- package/esm/index.d.ts.map +1 -0
- package/esm/index.js +21 -0
- package/esm/index.js.map +1 -0
- package/esm/package.json +3 -0
- package/esm/types/Charts.d.ts +38 -0
- package/esm/types/Charts.d.ts.map +1 -0
- package/esm/types/Charts.js +33 -0
- package/esm/types/Charts.js.map +1 -0
- package/esm/types/CodeInterpreter.d.ts +77 -0
- package/esm/types/CodeInterpreter.d.ts.map +1 -0
- package/esm/types/CodeInterpreter.js +6 -0
- package/esm/types/CodeInterpreter.js.map +1 -0
- package/esm/types/ExecuteResponse.d.ts +26 -0
- package/esm/types/ExecuteResponse.d.ts.map +1 -0
- package/esm/types/ExecuteResponse.js +6 -0
- package/esm/types/ExecuteResponse.js.map +1 -0
- package/esm/types/Pty.d.ts +48 -0
- package/esm/types/Pty.d.ts.map +1 -0
- package/esm/types/Pty.js +6 -0
- package/esm/types/Pty.js.map +1 -0
- package/esm/utils/Binary.d.ts +39 -0
- package/esm/utils/Binary.d.ts.map +1 -0
- package/esm/utils/Binary.js +157 -0
- package/esm/utils/Binary.js.map +1 -0
- package/esm/utils/FileTransfer.d.ts +15 -0
- package/esm/utils/FileTransfer.d.ts.map +1 -0
- package/esm/utils/FileTransfer.js +254 -0
- package/esm/utils/FileTransfer.js.map +1 -0
- package/esm/utils/Import.d.ts +95 -0
- package/esm/utils/Import.d.ts.map +1 -0
- package/esm/utils/Import.js +77 -0
- package/esm/utils/Import.js.map +1 -0
- package/esm/utils/Multipart.d.ts +29 -0
- package/esm/utils/Multipart.d.ts.map +1 -0
- package/esm/utils/Multipart.js +109 -0
- package/esm/utils/Multipart.js.map +1 -0
- package/esm/utils/Runtime.d.ts +44 -0
- package/esm/utils/Runtime.d.ts.map +1 -0
- package/esm/utils/Runtime.js +89 -0
- package/esm/utils/Runtime.js.map +1 -0
- package/esm/utils/Stream.d.ts +20 -0
- package/esm/utils/Stream.d.ts.map +1 -0
- package/esm/utils/Stream.js +360 -0
- package/esm/utils/Stream.js.map +1 -0
- package/esm/utils/WebSocket.d.ts +10 -0
- package/esm/utils/WebSocket.d.ts.map +1 -0
- package/esm/utils/WebSocket.js +22 -0
- package/esm/utils/WebSocket.js.map +1 -0
- package/esm/utils/otel.decorator.d.ts +83 -0
- package/esm/utils/otel.decorator.d.ts.map +1 -0
- package/esm/utils/otel.decorator.js +136 -0
- package/esm/utils/otel.decorator.js.map +1 -0
- package/package.json +20 -8
- package/src/ComputerUse.d.ts +4 -4
- package/src/ComputerUse.js +4 -4
- package/src/Sandbox.d.ts +1 -18
- package/src/Sandbox.js +0 -29
- package/src/Sandbox.js.map +1 -1
- package/src/__tests__/helpers.js +0 -2
- package/src/__tests__/helpers.js.map +1 -1
|
@@ -0,0 +1,20 @@
|
|
|
1
|
+
// Copyright Daytona Platforms Inc.
|
|
2
|
+
// SPDX-License-Identifier: Apache-2.0
|
|
3
|
+
export const createApiResponse = (data) => ({ data });
|
|
4
|
+
export const flushPromises = async () => {
|
|
5
|
+
await Promise.resolve();
|
|
6
|
+
};
|
|
7
|
+
export const toMuxedOutput = (stdout, stderr) => {
|
|
8
|
+
const stdoutPrefix = new Uint8Array([0x01, 0x01, 0x01]);
|
|
9
|
+
const stderrPrefix = new Uint8Array([0x02, 0x02, 0x02]);
|
|
10
|
+
const encoder = new TextEncoder();
|
|
11
|
+
const out = encoder.encode(stdout);
|
|
12
|
+
const err = encoder.encode(stderr);
|
|
13
|
+
const bytes = new Uint8Array(stdoutPrefix.length + out.length + stderrPrefix.length + err.length);
|
|
14
|
+
bytes.set(stdoutPrefix, 0);
|
|
15
|
+
bytes.set(out, stdoutPrefix.length);
|
|
16
|
+
bytes.set(stderrPrefix, stdoutPrefix.length + out.length);
|
|
17
|
+
bytes.set(err, stdoutPrefix.length + out.length + stderrPrefix.length);
|
|
18
|
+
return new TextDecoder().decode(bytes);
|
|
19
|
+
};
|
|
20
|
+
//# sourceMappingURL=helpers.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"helpers.js","sourceRoot":"","sources":["../../../../../../libs/sdk-typescript/src/__tests__/helpers.ts"],"names":[],"mappings":"AAAA,mCAAmC;AACnC,sCAAsC;AAEtC,MAAM,CAAC,MAAM,iBAAiB,GAAG,CAAI,IAAO,EAAe,EAAE,CAAC,CAAC,EAAE,IAAI,EAAE,CAAC,CAAA;AAExE,MAAM,CAAC,MAAM,aAAa,GAAG,KAAK,IAAmB,EAAE;IACrD,MAAM,OAAO,CAAC,OAAO,EAAE,CAAA;AACzB,CAAC,CAAA;AAED,MAAM,CAAC,MAAM,aAAa,GAAG,CAAC,MAAc,EAAE,MAAc,EAAU,EAAE;IACtE,MAAM,YAAY,GAAG,IAAI,UAAU,CAAC,CAAC,IAAI,EAAE,IAAI,EAAE,IAAI,CAAC,CAAC,CAAA;IACvD,MAAM,YAAY,GAAG,IAAI,UAAU,CAAC,CAAC,IAAI,EAAE,IAAI,EAAE,IAAI,CAAC,CAAC,CAAA;IACvD,MAAM,OAAO,GAAG,IAAI,WAAW,EAAE,CAAA;IAEjC,MAAM,GAAG,GAAG,OAAO,CAAC,MAAM,CAAC,MAAM,CAAC,CAAA;IAClC,MAAM,GAAG,GAAG,OAAO,CAAC,MAAM,CAAC,MAAM,CAAC,CAAA;IAElC,MAAM,KAAK,GAAG,IAAI,UAAU,CAAC,YAAY,CAAC,MAAM,GAAG,GAAG,CAAC,MAAM,GAAG,YAAY,CAAC,MAAM,GAAG,GAAG,CAAC,MAAM,CAAC,CAAA;IACjG,KAAK,CAAC,GAAG,CAAC,YAAY,EAAE,CAAC,CAAC,CAAA;IAC1B,KAAK,CAAC,GAAG,CAAC,GAAG,EAAE,YAAY,CAAC,MAAM,CAAC,CAAA;IACnC,KAAK,CAAC,GAAG,CAAC,YAAY,EAAE,YAAY,CAAC,MAAM,GAAG,GAAG,CAAC,MAAM,CAAC,CAAA;IACzD,KAAK,CAAC,GAAG,CAAC,GAAG,EAAE,YAAY,CAAC,MAAM,GAAG,GAAG,CAAC,MAAM,GAAG,YAAY,CAAC,MAAM,CAAC,CAAA;IAEtE,OAAO,IAAI,WAAW,EAAE,CAAC,MAAM,CAAC,KAAK,CAAC,CAAA;AACxC,CAAC,CAAA"}
|
|
@@ -0,0 +1,171 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* @module Errors
|
|
3
|
+
*/
|
|
4
|
+
import { AxiosError, AxiosHeaders } from 'axios';
|
|
5
|
+
export type ResponseHeaders = InstanceType<typeof AxiosHeaders>;
|
|
6
|
+
/**
|
|
7
|
+
* Base error for Daytona SDK.
|
|
8
|
+
*
|
|
9
|
+
* @example
|
|
10
|
+
* ```ts
|
|
11
|
+
* try {
|
|
12
|
+
* await daytona.get('missing-sandbox')
|
|
13
|
+
* } catch (error) {
|
|
14
|
+
* if (error instanceof DaytonaError) {
|
|
15
|
+
* console.log(error.statusCode)
|
|
16
|
+
* console.log(error.errorCode)
|
|
17
|
+
* console.log(error.message)
|
|
18
|
+
* }
|
|
19
|
+
* }
|
|
20
|
+
* ```
|
|
21
|
+
*/
|
|
22
|
+
export declare class DaytonaError extends Error {
|
|
23
|
+
/** HTTP status code if available */
|
|
24
|
+
statusCode?: number;
|
|
25
|
+
/** Machine-readable error code if available */
|
|
26
|
+
errorCode?: string;
|
|
27
|
+
/** Response headers if available */
|
|
28
|
+
headers?: ResponseHeaders;
|
|
29
|
+
constructor(message: string, statusCode?: number, headers?: ResponseHeaders, errorCode?: string);
|
|
30
|
+
}
|
|
31
|
+
/**
|
|
32
|
+
* Error thrown when a resource is not found (HTTP 404).
|
|
33
|
+
*
|
|
34
|
+
* @example
|
|
35
|
+
* ```ts
|
|
36
|
+
* try {
|
|
37
|
+
* await sandbox.fs.downloadFile('/workspace/missing.txt')
|
|
38
|
+
* } catch (error) {
|
|
39
|
+
* if (error instanceof DaytonaNotFoundError) {
|
|
40
|
+
* console.log(error.statusCode)
|
|
41
|
+
* }
|
|
42
|
+
* }
|
|
43
|
+
* ```
|
|
44
|
+
*/
|
|
45
|
+
export declare class DaytonaNotFoundError extends DaytonaError {
|
|
46
|
+
}
|
|
47
|
+
/**
|
|
48
|
+
* Error thrown when rate limit is exceeded.
|
|
49
|
+
*
|
|
50
|
+
* @example
|
|
51
|
+
* ```ts
|
|
52
|
+
* try {
|
|
53
|
+
* await daytona.list()
|
|
54
|
+
* } catch (error) {
|
|
55
|
+
* if (error instanceof DaytonaRateLimitError) {
|
|
56
|
+
* console.log(error.errorCode)
|
|
57
|
+
* }
|
|
58
|
+
* }
|
|
59
|
+
* ```
|
|
60
|
+
*/
|
|
61
|
+
export declare class DaytonaRateLimitError extends DaytonaError {
|
|
62
|
+
}
|
|
63
|
+
/**
|
|
64
|
+
* Error thrown when authentication fails (HTTP 401).
|
|
65
|
+
*
|
|
66
|
+
* @example
|
|
67
|
+
* ```ts
|
|
68
|
+
* try {
|
|
69
|
+
* await daytona.list()
|
|
70
|
+
* } catch (error) {
|
|
71
|
+
* if (error instanceof DaytonaAuthenticationError) {
|
|
72
|
+
* console.log(error.statusCode)
|
|
73
|
+
* }
|
|
74
|
+
* }
|
|
75
|
+
* ```
|
|
76
|
+
*/
|
|
77
|
+
export declare class DaytonaAuthenticationError extends DaytonaError {
|
|
78
|
+
}
|
|
79
|
+
/**
|
|
80
|
+
* Error thrown when the request is forbidden (HTTP 403).
|
|
81
|
+
*
|
|
82
|
+
* @example
|
|
83
|
+
* ```ts
|
|
84
|
+
* try {
|
|
85
|
+
* await daytona.get('sandbox-without-access')
|
|
86
|
+
* } catch (error) {
|
|
87
|
+
* if (error instanceof DaytonaAuthorizationError) {
|
|
88
|
+
* console.log(error.message)
|
|
89
|
+
* }
|
|
90
|
+
* }
|
|
91
|
+
* ```
|
|
92
|
+
*/
|
|
93
|
+
export declare class DaytonaAuthorizationError extends DaytonaError {
|
|
94
|
+
}
|
|
95
|
+
/**
|
|
96
|
+
* Error thrown when a resource conflict occurs (HTTP 409).
|
|
97
|
+
*
|
|
98
|
+
* @example
|
|
99
|
+
* ```ts
|
|
100
|
+
* try {
|
|
101
|
+
* await daytona.create({ name: 'existing-sandbox' })
|
|
102
|
+
* } catch (error) {
|
|
103
|
+
* if (error instanceof DaytonaConflictError) {
|
|
104
|
+
* console.log(error.errorCode)
|
|
105
|
+
* }
|
|
106
|
+
* }
|
|
107
|
+
* ```
|
|
108
|
+
*/
|
|
109
|
+
export declare class DaytonaConflictError extends DaytonaError {
|
|
110
|
+
}
|
|
111
|
+
/**
|
|
112
|
+
* Error thrown when input validation fails (HTTP 400 or client-side validation).
|
|
113
|
+
*
|
|
114
|
+
* @example
|
|
115
|
+
* ```ts
|
|
116
|
+
* try {
|
|
117
|
+
* Image.debianSlim('3.8' as never)
|
|
118
|
+
* } catch (error) {
|
|
119
|
+
* if (error instanceof DaytonaValidationError) {
|
|
120
|
+
* console.log(error.message)
|
|
121
|
+
* }
|
|
122
|
+
* }
|
|
123
|
+
* ```
|
|
124
|
+
*/
|
|
125
|
+
export declare class DaytonaValidationError extends DaytonaError {
|
|
126
|
+
}
|
|
127
|
+
/**
|
|
128
|
+
* Error thrown when a timeout occurs.
|
|
129
|
+
*
|
|
130
|
+
* @example
|
|
131
|
+
* ```ts
|
|
132
|
+
* try {
|
|
133
|
+
* await sandbox.waitUntilStarted(1)
|
|
134
|
+
* } catch (error) {
|
|
135
|
+
* if (error instanceof DaytonaTimeoutError) {
|
|
136
|
+
* console.log(error.message)
|
|
137
|
+
* }
|
|
138
|
+
* }
|
|
139
|
+
* ```
|
|
140
|
+
*/
|
|
141
|
+
export declare class DaytonaTimeoutError extends DaytonaError {
|
|
142
|
+
}
|
|
143
|
+
/**
|
|
144
|
+
* Error thrown when a network connection fails.
|
|
145
|
+
*
|
|
146
|
+
* @example
|
|
147
|
+
* ```ts
|
|
148
|
+
* try {
|
|
149
|
+
* await ptyHandle.waitForConnection()
|
|
150
|
+
* } catch (error) {
|
|
151
|
+
* if (error instanceof DaytonaConnectionError) {
|
|
152
|
+
* console.log(error.message)
|
|
153
|
+
* }
|
|
154
|
+
* }
|
|
155
|
+
* ```
|
|
156
|
+
*/
|
|
157
|
+
export declare class DaytonaConnectionError extends DaytonaError {
|
|
158
|
+
}
|
|
159
|
+
/**
|
|
160
|
+
* Maps an HTTP status code to the corresponding Daytona error class.
|
|
161
|
+
*/
|
|
162
|
+
export declare function errorClassFromStatusCode(statusCode?: number): typeof DaytonaError;
|
|
163
|
+
/**
|
|
164
|
+
* Creates the appropriate Daytona error subclass from structured error metadata.
|
|
165
|
+
*/
|
|
166
|
+
export declare function createDaytonaError(message: string, statusCode?: number, headers?: ResponseHeaders, errorCode?: string): DaytonaError;
|
|
167
|
+
/**
|
|
168
|
+
* Creates the appropriate Daytona error subclass from an Axios error.
|
|
169
|
+
*/
|
|
170
|
+
export declare function createAxiosDaytonaError(error: AxiosError): DaytonaError;
|
|
171
|
+
//# sourceMappingURL=DaytonaError.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"DaytonaError.d.ts","sourceRoot":"","sources":["../../../../../../libs/sdk-typescript/src/errors/DaytonaError.ts"],"names":[],"mappings":"AAKA;;GAEG;AAEH,OAAO,EAAE,UAAU,EAAE,YAAY,EAAE,MAAM,OAAO,CAAA;AAEhD,MAAM,MAAM,eAAe,GAAG,YAAY,CAAC,OAAO,YAAY,CAAC,CAAA;AAE/D;;;;;;;;;;;;;;;GAeG;AACH,qBAAa,YAAa,SAAQ,KAAK;IACrC,oCAAoC;IAC7B,UAAU,CAAC,EAAE,MAAM,CAAA;IAC1B,+CAA+C;IACxC,SAAS,CAAC,EAAE,MAAM,CAAA;IACzB,oCAAoC;IAC7B,OAAO,CAAC,EAAE,eAAe,CAAA;gBAEpB,OAAO,EAAE,MAAM,EAAE,UAAU,CAAC,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,eAAe,EAAE,SAAS,CAAC,EAAE,MAAM;CAOhG;AAED;;;;;;;;;;;;;GAaG;AACH,qBAAa,oBAAqB,SAAQ,YAAY;CACrD;AAED;;;;;;;;;;;;;GAaG;AACH,qBAAa,qBAAsB,SAAQ,YAAY;CACtD;AAED;;;;;;;;;;;;;GAaG;AACH,qBAAa,0BAA2B,SAAQ,YAAY;CAC3D;AAED;;;;;;;;;;;;;GAaG;AACH,qBAAa,yBAA0B,SAAQ,YAAY;CAC1D;AAED;;;;;;;;;;;;;GAaG;AACH,qBAAa,oBAAqB,SAAQ,YAAY;CACrD;AAED;;;;;;;;;;;;;GAaG;AACH,qBAAa,sBAAuB,SAAQ,YAAY;CACvD;AAED;;;;;;;;;;;;;GAaG;AACH,qBAAa,mBAAoB,SAAQ,YAAY;CACpD;AAED;;;;;;;;;;;;;GAaG;AACH,qBAAa,sBAAuB,SAAQ,YAAY;CACvD;AAWD;;GAEG;AACH,wBAAgB,wBAAwB,CAAC,UAAU,CAAC,EAAE,MAAM,GAAG,OAAO,YAAY,CAMjF;AAED;;GAEG;AACH,wBAAgB,kBAAkB,CAChC,OAAO,EAAE,MAAM,EACf,UAAU,CAAC,EAAE,MAAM,EACnB,OAAO,CAAC,EAAE,eAAe,EACzB,SAAS,CAAC,EAAE,MAAM,GACjB,YAAY,CAGd;AAkDD;;GAEG;AACH,wBAAgB,uBAAuB,CAAC,KAAK,EAAE,UAAU,GAAG,YAAY,CAgBvE"}
|
|
@@ -0,0 +1,243 @@
|
|
|
1
|
+
/*
|
|
2
|
+
* Copyright 2025 Daytona Platforms Inc.
|
|
3
|
+
* SPDX-License-Identifier: Apache-2.0
|
|
4
|
+
*/
|
|
5
|
+
/**
|
|
6
|
+
* Base error for Daytona SDK.
|
|
7
|
+
*
|
|
8
|
+
* @example
|
|
9
|
+
* ```ts
|
|
10
|
+
* try {
|
|
11
|
+
* await daytona.get('missing-sandbox')
|
|
12
|
+
* } catch (error) {
|
|
13
|
+
* if (error instanceof DaytonaError) {
|
|
14
|
+
* console.log(error.statusCode)
|
|
15
|
+
* console.log(error.errorCode)
|
|
16
|
+
* console.log(error.message)
|
|
17
|
+
* }
|
|
18
|
+
* }
|
|
19
|
+
* ```
|
|
20
|
+
*/
|
|
21
|
+
export class DaytonaError extends Error {
|
|
22
|
+
/** HTTP status code if available */
|
|
23
|
+
statusCode;
|
|
24
|
+
/** Machine-readable error code if available */
|
|
25
|
+
errorCode;
|
|
26
|
+
/** Response headers if available */
|
|
27
|
+
headers;
|
|
28
|
+
constructor(message, statusCode, headers, errorCode) {
|
|
29
|
+
super(message);
|
|
30
|
+
this.name = new.target.name;
|
|
31
|
+
this.statusCode = statusCode;
|
|
32
|
+
this.headers = headers;
|
|
33
|
+
this.errorCode = errorCode;
|
|
34
|
+
}
|
|
35
|
+
}
|
|
36
|
+
/**
|
|
37
|
+
* Error thrown when a resource is not found (HTTP 404).
|
|
38
|
+
*
|
|
39
|
+
* @example
|
|
40
|
+
* ```ts
|
|
41
|
+
* try {
|
|
42
|
+
* await sandbox.fs.downloadFile('/workspace/missing.txt')
|
|
43
|
+
* } catch (error) {
|
|
44
|
+
* if (error instanceof DaytonaNotFoundError) {
|
|
45
|
+
* console.log(error.statusCode)
|
|
46
|
+
* }
|
|
47
|
+
* }
|
|
48
|
+
* ```
|
|
49
|
+
*/
|
|
50
|
+
export class DaytonaNotFoundError extends DaytonaError {
|
|
51
|
+
}
|
|
52
|
+
/**
|
|
53
|
+
* Error thrown when rate limit is exceeded.
|
|
54
|
+
*
|
|
55
|
+
* @example
|
|
56
|
+
* ```ts
|
|
57
|
+
* try {
|
|
58
|
+
* await daytona.list()
|
|
59
|
+
* } catch (error) {
|
|
60
|
+
* if (error instanceof DaytonaRateLimitError) {
|
|
61
|
+
* console.log(error.errorCode)
|
|
62
|
+
* }
|
|
63
|
+
* }
|
|
64
|
+
* ```
|
|
65
|
+
*/
|
|
66
|
+
export class DaytonaRateLimitError extends DaytonaError {
|
|
67
|
+
}
|
|
68
|
+
/**
|
|
69
|
+
* Error thrown when authentication fails (HTTP 401).
|
|
70
|
+
*
|
|
71
|
+
* @example
|
|
72
|
+
* ```ts
|
|
73
|
+
* try {
|
|
74
|
+
* await daytona.list()
|
|
75
|
+
* } catch (error) {
|
|
76
|
+
* if (error instanceof DaytonaAuthenticationError) {
|
|
77
|
+
* console.log(error.statusCode)
|
|
78
|
+
* }
|
|
79
|
+
* }
|
|
80
|
+
* ```
|
|
81
|
+
*/
|
|
82
|
+
export class DaytonaAuthenticationError extends DaytonaError {
|
|
83
|
+
}
|
|
84
|
+
/**
|
|
85
|
+
* Error thrown when the request is forbidden (HTTP 403).
|
|
86
|
+
*
|
|
87
|
+
* @example
|
|
88
|
+
* ```ts
|
|
89
|
+
* try {
|
|
90
|
+
* await daytona.get('sandbox-without-access')
|
|
91
|
+
* } catch (error) {
|
|
92
|
+
* if (error instanceof DaytonaAuthorizationError) {
|
|
93
|
+
* console.log(error.message)
|
|
94
|
+
* }
|
|
95
|
+
* }
|
|
96
|
+
* ```
|
|
97
|
+
*/
|
|
98
|
+
export class DaytonaAuthorizationError extends DaytonaError {
|
|
99
|
+
}
|
|
100
|
+
/**
|
|
101
|
+
* Error thrown when a resource conflict occurs (HTTP 409).
|
|
102
|
+
*
|
|
103
|
+
* @example
|
|
104
|
+
* ```ts
|
|
105
|
+
* try {
|
|
106
|
+
* await daytona.create({ name: 'existing-sandbox' })
|
|
107
|
+
* } catch (error) {
|
|
108
|
+
* if (error instanceof DaytonaConflictError) {
|
|
109
|
+
* console.log(error.errorCode)
|
|
110
|
+
* }
|
|
111
|
+
* }
|
|
112
|
+
* ```
|
|
113
|
+
*/
|
|
114
|
+
export class DaytonaConflictError extends DaytonaError {
|
|
115
|
+
}
|
|
116
|
+
/**
|
|
117
|
+
* Error thrown when input validation fails (HTTP 400 or client-side validation).
|
|
118
|
+
*
|
|
119
|
+
* @example
|
|
120
|
+
* ```ts
|
|
121
|
+
* try {
|
|
122
|
+
* Image.debianSlim('3.8' as never)
|
|
123
|
+
* } catch (error) {
|
|
124
|
+
* if (error instanceof DaytonaValidationError) {
|
|
125
|
+
* console.log(error.message)
|
|
126
|
+
* }
|
|
127
|
+
* }
|
|
128
|
+
* ```
|
|
129
|
+
*/
|
|
130
|
+
export class DaytonaValidationError extends DaytonaError {
|
|
131
|
+
}
|
|
132
|
+
/**
|
|
133
|
+
* Error thrown when a timeout occurs.
|
|
134
|
+
*
|
|
135
|
+
* @example
|
|
136
|
+
* ```ts
|
|
137
|
+
* try {
|
|
138
|
+
* await sandbox.waitUntilStarted(1)
|
|
139
|
+
* } catch (error) {
|
|
140
|
+
* if (error instanceof DaytonaTimeoutError) {
|
|
141
|
+
* console.log(error.message)
|
|
142
|
+
* }
|
|
143
|
+
* }
|
|
144
|
+
* ```
|
|
145
|
+
*/
|
|
146
|
+
export class DaytonaTimeoutError extends DaytonaError {
|
|
147
|
+
}
|
|
148
|
+
/**
|
|
149
|
+
* Error thrown when a network connection fails.
|
|
150
|
+
*
|
|
151
|
+
* @example
|
|
152
|
+
* ```ts
|
|
153
|
+
* try {
|
|
154
|
+
* await ptyHandle.waitForConnection()
|
|
155
|
+
* } catch (error) {
|
|
156
|
+
* if (error instanceof DaytonaConnectionError) {
|
|
157
|
+
* console.log(error.message)
|
|
158
|
+
* }
|
|
159
|
+
* }
|
|
160
|
+
* ```
|
|
161
|
+
*/
|
|
162
|
+
export class DaytonaConnectionError extends DaytonaError {
|
|
163
|
+
}
|
|
164
|
+
const STATUS_CODE_TO_ERROR = {
|
|
165
|
+
400: DaytonaValidationError,
|
|
166
|
+
401: DaytonaAuthenticationError,
|
|
167
|
+
403: DaytonaAuthorizationError,
|
|
168
|
+
404: DaytonaNotFoundError,
|
|
169
|
+
409: DaytonaConflictError,
|
|
170
|
+
429: DaytonaRateLimitError,
|
|
171
|
+
};
|
|
172
|
+
/**
|
|
173
|
+
* Maps an HTTP status code to the corresponding Daytona error class.
|
|
174
|
+
*/
|
|
175
|
+
export function errorClassFromStatusCode(statusCode) {
|
|
176
|
+
if (statusCode === undefined) {
|
|
177
|
+
return DaytonaError;
|
|
178
|
+
}
|
|
179
|
+
return STATUS_CODE_TO_ERROR[statusCode] || DaytonaError;
|
|
180
|
+
}
|
|
181
|
+
/**
|
|
182
|
+
* Creates the appropriate Daytona error subclass from structured error metadata.
|
|
183
|
+
*/
|
|
184
|
+
export function createDaytonaError(message, statusCode, headers, errorCode) {
|
|
185
|
+
const ErrorClass = errorClassFromStatusCode(statusCode);
|
|
186
|
+
return new ErrorClass(message, statusCode, headers, errorCode);
|
|
187
|
+
}
|
|
188
|
+
function isAxiosTimeoutError(error) {
|
|
189
|
+
return error.code === 'ECONNABORTED' || error.code === 'ETIMEDOUT' || error.message.includes('timeout of');
|
|
190
|
+
}
|
|
191
|
+
function getAxiosResponseDataObject(error) {
|
|
192
|
+
if (!error.response?.data || typeof error.response.data !== 'object') {
|
|
193
|
+
return undefined;
|
|
194
|
+
}
|
|
195
|
+
return error.response.data;
|
|
196
|
+
}
|
|
197
|
+
function extractAxiosErrorCode(responseData) {
|
|
198
|
+
if (typeof responseData?.code === 'string') {
|
|
199
|
+
return responseData.code;
|
|
200
|
+
}
|
|
201
|
+
if (typeof responseData?.error_code === 'string') {
|
|
202
|
+
return responseData.error_code;
|
|
203
|
+
}
|
|
204
|
+
if (typeof responseData?.error === 'string') {
|
|
205
|
+
return responseData.error;
|
|
206
|
+
}
|
|
207
|
+
return undefined;
|
|
208
|
+
}
|
|
209
|
+
function extractAxiosErrorMessage(error) {
|
|
210
|
+
if (isAxiosTimeoutError(error)) {
|
|
211
|
+
return 'Operation timed out';
|
|
212
|
+
}
|
|
213
|
+
const responseData = getAxiosResponseDataObject(error);
|
|
214
|
+
const responseMessage = responseData?.message || error.response?.data;
|
|
215
|
+
const message = responseMessage || error.message || String(error);
|
|
216
|
+
if (typeof message === 'object') {
|
|
217
|
+
try {
|
|
218
|
+
return JSON.stringify(message);
|
|
219
|
+
}
|
|
220
|
+
catch {
|
|
221
|
+
return String(message);
|
|
222
|
+
}
|
|
223
|
+
}
|
|
224
|
+
return String(message);
|
|
225
|
+
}
|
|
226
|
+
/**
|
|
227
|
+
* Creates the appropriate Daytona error subclass from an Axios error.
|
|
228
|
+
*/
|
|
229
|
+
export function createAxiosDaytonaError(error) {
|
|
230
|
+
const message = extractAxiosErrorMessage(error);
|
|
231
|
+
const statusCode = error.response?.status;
|
|
232
|
+
const headers = error.response?.headers;
|
|
233
|
+
const responseData = getAxiosResponseDataObject(error);
|
|
234
|
+
const errorCode = extractAxiosErrorCode(responseData);
|
|
235
|
+
if (isAxiosTimeoutError(error)) {
|
|
236
|
+
return new DaytonaTimeoutError(message, statusCode, headers, errorCode);
|
|
237
|
+
}
|
|
238
|
+
if (!error.response && (error.request || error.code)) {
|
|
239
|
+
return new DaytonaConnectionError(message, statusCode, headers, errorCode);
|
|
240
|
+
}
|
|
241
|
+
return createDaytonaError(message, statusCode, headers, errorCode);
|
|
242
|
+
}
|
|
243
|
+
//# sourceMappingURL=DaytonaError.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"DaytonaError.js","sourceRoot":"","sources":["../../../../../../libs/sdk-typescript/src/errors/DaytonaError.ts"],"names":[],"mappings":"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"}
|
package/esm/index.d.ts
ADDED
|
@@ -0,0 +1,22 @@
|
|
|
1
|
+
export { CodeLanguage, Daytona } from './Daytona.js';
|
|
2
|
+
export type { CreateSandboxBaseParams, CreateSandboxFromImageParams, CreateSandboxFromSnapshotParams, DaytonaConfig, Resources, VolumeMount, } from './Daytona.js';
|
|
3
|
+
export { FileSystem } from './FileSystem.js';
|
|
4
|
+
export type { DownloadMetadata, FileDownloadErrorDetails, FileDownloadRequest, FileDownloadResponse, FilePermissionsParams, FileUpload, } from './FileSystem.js';
|
|
5
|
+
export { Git } from './Git.js';
|
|
6
|
+
export { LspLanguageId } from './LspServer.js';
|
|
7
|
+
export { Process } from './Process.js';
|
|
8
|
+
export { DaytonaAuthenticationError, DaytonaAuthorizationError, DaytonaConflictError, DaytonaConnectionError, DaytonaError, DaytonaNotFoundError, DaytonaRateLimitError, DaytonaTimeoutError, DaytonaValidationError, } from './errors/DaytonaError.js';
|
|
9
|
+
export { Image } from './Image.js';
|
|
10
|
+
export { Sandbox } from './Sandbox.js';
|
|
11
|
+
export type { CreateSnapshotParams } from './Snapshot.js';
|
|
12
|
+
export { ComputerUse, Mouse, Keyboard, Screenshot, Display } from './ComputerUse.js';
|
|
13
|
+
export type { BarChart, BarData, BoxAndWhiskerChart, BoxAndWhiskerData, Chart, Chart2D, ChartElement, CompositeChart, LineChart, PieChart, PieData, PointChart, PointData, ScatterChart, } from './types/Charts.js';
|
|
14
|
+
export { ChartType } from './types/Charts.js';
|
|
15
|
+
export type { ExecutionError, ExecutionResult, OutputMessage, RunCodeOptions } from './types/CodeInterpreter.js';
|
|
16
|
+
export { SandboxState } from '@daytona/api-client';
|
|
17
|
+
export type { FileInfo, GitStatus, ListBranchResponse, Match, ReplaceResult, SearchFilesResponse, } from '@daytona/toolbox-api-client';
|
|
18
|
+
export type { ScreenshotRegion, ScreenshotOptions } from './ComputerUse.js';
|
|
19
|
+
export * from './Process.js';
|
|
20
|
+
export * from './PtyHandle.js';
|
|
21
|
+
export * from './types/Pty.js';
|
|
22
|
+
//# sourceMappingURL=index.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../libs/sdk-typescript/src/index.ts"],"names":[],"mappings":"AAKA,OAAO,EAAE,YAAY,EAAE,OAAO,EAAE,MAAM,WAAW,CAAA;AACjD,YAAY,EACV,uBAAuB,EACvB,4BAA4B,EAC5B,+BAA+B,EAC/B,aAAa,EACb,SAAS,EACT,WAAW,GACZ,MAAM,WAAW,CAAA;AAClB,OAAO,EAAE,UAAU,EAAE,MAAM,cAAc,CAAA;AACzC,YAAY,EACV,gBAAgB,EAChB,wBAAwB,EACxB,mBAAmB,EACnB,oBAAoB,EACpB,qBAAqB,EACrB,UAAU,GACX,MAAM,cAAc,CAAA;AACrB,OAAO,EAAE,GAAG,EAAE,MAAM,OAAO,CAAA;AAC3B,OAAO,EAAE,aAAa,EAAE,MAAM,aAAa,CAAA;AAC3C,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAA;AAGnC,OAAO,EACL,0BAA0B,EAC1B,yBAAyB,EACzB,oBAAoB,EACpB,sBAAsB,EACtB,YAAY,EACZ,oBAAoB,EACpB,qBAAqB,EACrB,mBAAmB,EACnB,sBAAsB,GACvB,MAAM,uBAAuB,CAAA;AAC9B,OAAO,EAAE,KAAK,EAAE,MAAM,SAAS,CAAA;AAC/B,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAA;AACnC,YAAY,EAAE,oBAAoB,EAAE,MAAM,YAAY,CAAA;AACtD,OAAO,EAAE,WAAW,EAAE,KAAK,EAAE,QAAQ,EAAE,UAAU,EAAE,OAAO,EAAE,MAAM,eAAe,CAAA;AACjF,YAAY,EACV,QAAQ,EACR,OAAO,EACP,kBAAkB,EAClB,iBAAiB,EACjB,KAAK,EACL,OAAO,EACP,YAAY,EACZ,cAAc,EACd,SAAS,EACT,QAAQ,EACR,OAAO,EACP,UAAU,EACV,SAAS,EACT,YAAY,GACb,MAAM,gBAAgB,CAAA;AACvB,OAAO,EAAE,SAAS,EAAE,MAAM,gBAAgB,CAAA;AAC1C,YAAY,EAAE,cAAc,EAAE,eAAe,EAAE,aAAa,EAAE,cAAc,EAAE,MAAM,yBAAyB,CAAA;AAE7G,OAAO,EAAE,YAAY,EAAE,MAAM,qBAAqB,CAAA;AAClD,YAAY,EACV,QAAQ,EACR,SAAS,EACT,kBAAkB,EAClB,KAAK,EACL,aAAa,EACb,mBAAmB,GACpB,MAAM,6BAA6B,CAAA;AAEpC,YAAY,EAAE,gBAAgB,EAAE,iBAAiB,EAAE,MAAM,eAAe,CAAA;AAExE,cAAc,WAAW,CAAA;AACzB,cAAc,aAAa,CAAA;AAC3B,cAAc,aAAa,CAAA"}
|
package/esm/index.js
ADDED
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
/*
|
|
2
|
+
* Copyright 2025 Daytona Platforms Inc.
|
|
3
|
+
* SPDX-License-Identifier: Apache-2.0
|
|
4
|
+
*/
|
|
5
|
+
export { CodeLanguage, Daytona } from './Daytona.js';
|
|
6
|
+
export { FileSystem } from './FileSystem.js';
|
|
7
|
+
export { Git } from './Git.js';
|
|
8
|
+
export { LspLanguageId } from './LspServer.js';
|
|
9
|
+
export { Process } from './Process.js';
|
|
10
|
+
// export { LspServer } from './LspServer'
|
|
11
|
+
// export type { LspLanguageId, Position } from './LspServer'
|
|
12
|
+
export { DaytonaAuthenticationError, DaytonaAuthorizationError, DaytonaConflictError, DaytonaConnectionError, DaytonaError, DaytonaNotFoundError, DaytonaRateLimitError, DaytonaTimeoutError, DaytonaValidationError, } from './errors/DaytonaError.js';
|
|
13
|
+
export { Image } from './Image.js';
|
|
14
|
+
export { Sandbox } from './Sandbox.js';
|
|
15
|
+
export { ComputerUse, Mouse, Keyboard, Screenshot, Display } from './ComputerUse.js';
|
|
16
|
+
export { ChartType } from './types/Charts.js';
|
|
17
|
+
export { SandboxState } from '@daytona/api-client';
|
|
18
|
+
export * from './Process.js';
|
|
19
|
+
export * from './PtyHandle.js';
|
|
20
|
+
export * from './types/Pty.js';
|
|
21
|
+
//# sourceMappingURL=index.js.map
|
package/esm/index.js.map
ADDED
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../../libs/sdk-typescript/src/index.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,EAAE,YAAY,EAAE,OAAO,EAAE,MAAM,WAAW,CAAA;AASjD,OAAO,EAAE,UAAU,EAAE,MAAM,cAAc,CAAA;AASzC,OAAO,EAAE,GAAG,EAAE,MAAM,OAAO,CAAA;AAC3B,OAAO,EAAE,aAAa,EAAE,MAAM,aAAa,CAAA;AAC3C,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAA;AACnC,0CAA0C;AAC1C,6DAA6D;AAC7D,OAAO,EACL,0BAA0B,EAC1B,yBAAyB,EACzB,oBAAoB,EACpB,sBAAsB,EACtB,YAAY,EACZ,oBAAoB,EACpB,qBAAqB,EACrB,mBAAmB,EACnB,sBAAsB,GACvB,MAAM,uBAAuB,CAAA;AAC9B,OAAO,EAAE,KAAK,EAAE,MAAM,SAAS,CAAA;AAC/B,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAA;AAEnC,OAAO,EAAE,WAAW,EAAE,KAAK,EAAE,QAAQ,EAAE,UAAU,EAAE,OAAO,EAAE,MAAM,eAAe,CAAA;AAiBjF,OAAO,EAAE,SAAS,EAAE,MAAM,gBAAgB,CAAA;AAG1C,OAAO,EAAE,YAAY,EAAE,MAAM,qBAAqB,CAAA;AAYlD,cAAc,WAAW,CAAA;AACzB,cAAc,aAAa,CAAA;AAC3B,cAAc,aAAa,CAAA"}
|
package/esm/package.json
ADDED
|
@@ -0,0 +1,38 @@
|
|
|
1
|
+
import type { Chart as GeneratedChart, ChartElement as GeneratedChartElement } from '@daytona/toolbox-api-client';
|
|
2
|
+
export declare enum ChartType {
|
|
3
|
+
LINE = "line",
|
|
4
|
+
SCATTER = "scatter",
|
|
5
|
+
BAR = "bar",
|
|
6
|
+
PIE = "pie",
|
|
7
|
+
BOX_AND_WHISKER = "box_and_whisker",
|
|
8
|
+
COMPOSITE_CHART = "composite_chart",
|
|
9
|
+
UNKNOWN = "unknown"
|
|
10
|
+
}
|
|
11
|
+
export type Chart = GeneratedChart;
|
|
12
|
+
export type ChartElement = GeneratedChartElement;
|
|
13
|
+
export type Chart2D = Pick<GeneratedChart, 'type' | 'title' | 'png' | 'x_label' | 'y_label' | 'elements'>;
|
|
14
|
+
export type PointChart = Pick<GeneratedChart, 'type' | 'title' | 'png' | 'x_label' | 'y_label' | 'x_ticks' | 'y_ticks' | 'x_tick_labels' | 'y_tick_labels' | 'x_scale' | 'y_scale' | 'elements'>;
|
|
15
|
+
export type LineChart = PointChart & {
|
|
16
|
+
type: 'line';
|
|
17
|
+
};
|
|
18
|
+
export type ScatterChart = PointChart & {
|
|
19
|
+
type: 'scatter';
|
|
20
|
+
};
|
|
21
|
+
export type BarChart = Chart2D & {
|
|
22
|
+
type: 'bar';
|
|
23
|
+
};
|
|
24
|
+
export type PieChart = Pick<GeneratedChart, 'type' | 'title' | 'png' | 'elements'> & {
|
|
25
|
+
type: 'pie';
|
|
26
|
+
};
|
|
27
|
+
export type BoxAndWhiskerChart = Chart2D & {
|
|
28
|
+
type: 'box_and_whisker';
|
|
29
|
+
};
|
|
30
|
+
export type CompositeChart = Pick<GeneratedChart, 'type' | 'title' | 'png' | 'elements'> & {
|
|
31
|
+
type: 'composite_chart';
|
|
32
|
+
};
|
|
33
|
+
export type PointData = Pick<GeneratedChartElement, 'label' | 'points'>;
|
|
34
|
+
export type BarData = Pick<GeneratedChartElement, 'group' | 'label' | 'value'>;
|
|
35
|
+
export type PieData = Pick<GeneratedChartElement, 'angle' | 'label' | 'radius'>;
|
|
36
|
+
export type BoxAndWhiskerData = Pick<GeneratedChartElement, 'first_quartile' | 'label' | 'max' | 'median' | 'min' | 'outliers'>;
|
|
37
|
+
export declare function parseChart(chart: GeneratedChart): Chart;
|
|
38
|
+
//# sourceMappingURL=Charts.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"Charts.d.ts","sourceRoot":"","sources":["../../../../../../libs/sdk-typescript/src/types/Charts.ts"],"names":[],"mappings":"AAKA,OAAO,KAAK,EAAE,KAAK,IAAI,cAAc,EAAE,YAAY,IAAI,qBAAqB,EAAE,MAAM,6BAA6B,CAAA;AAEjH,oBAAY,SAAS;IACnB,IAAI,SAAS;IACb,OAAO,YAAY;IACnB,GAAG,QAAQ;IACX,GAAG,QAAQ;IACX,eAAe,oBAAoB;IACnC,eAAe,oBAAoB;IACnC,OAAO,YAAY;CACpB;AAED,MAAM,MAAM,KAAK,GAAG,cAAc,CAAA;AAClC,MAAM,MAAM,YAAY,GAAG,qBAAqB,CAAA;AAEhD,MAAM,MAAM,OAAO,GAAG,IAAI,CAAC,cAAc,EAAE,MAAM,GAAG,OAAO,GAAG,KAAK,GAAG,SAAS,GAAG,SAAS,GAAG,UAAU,CAAC,CAAA;AACzG,MAAM,MAAM,UAAU,GAAG,IAAI,CAC3B,cAAc,EACZ,MAAM,GACN,OAAO,GACP,KAAK,GACL,SAAS,GACT,SAAS,GACT,SAAS,GACT,SAAS,GACT,eAAe,GACf,eAAe,GACf,SAAS,GACT,SAAS,GACT,UAAU,CACb,CAAA;AACD,MAAM,MAAM,SAAS,GAAG,UAAU,GAAG;IAAE,IAAI,EAAE,MAAM,CAAA;CAAE,CAAA;AACrD,MAAM,MAAM,YAAY,GAAG,UAAU,GAAG;IAAE,IAAI,EAAE,SAAS,CAAA;CAAE,CAAA;AAC3D,MAAM,MAAM,QAAQ,GAAG,OAAO,GAAG;IAAE,IAAI,EAAE,KAAK,CAAA;CAAE,CAAA;AAChD,MAAM,MAAM,QAAQ,GAAG,IAAI,CAAC,cAAc,EAAE,MAAM,GAAG,OAAO,GAAG,KAAK,GAAG,UAAU,CAAC,GAAG;IAAE,IAAI,EAAE,KAAK,CAAA;CAAE,CAAA;AACpG,MAAM,MAAM,kBAAkB,GAAG,OAAO,GAAG;IAAE,IAAI,EAAE,iBAAiB,CAAA;CAAE,CAAA;AACtE,MAAM,MAAM,cAAc,GAAG,IAAI,CAAC,cAAc,EAAE,MAAM,GAAG,OAAO,GAAG,KAAK,GAAG,UAAU,CAAC,GAAG;IAAE,IAAI,EAAE,iBAAiB,CAAA;CAAE,CAAA;AAEtH,MAAM,MAAM,SAAS,GAAG,IAAI,CAAC,qBAAqB,EAAE,OAAO,GAAG,QAAQ,CAAC,CAAA;AACvE,MAAM,MAAM,OAAO,GAAG,IAAI,CAAC,qBAAqB,EAAE,OAAO,GAAG,OAAO,GAAG,OAAO,CAAC,CAAA;AAC9E,MAAM,MAAM,OAAO,GAAG,IAAI,CAAC,qBAAqB,EAAE,OAAO,GAAG,OAAO,GAAG,QAAQ,CAAC,CAAA;AAC/E,MAAM,MAAM,iBAAiB,GAAG,IAAI,CAClC,qBAAqB,EACrB,gBAAgB,GAAG,OAAO,GAAG,KAAK,GAAG,QAAQ,GAAG,KAAK,GAAG,UAAU,CACnE,CAAA;AAED,wBAAgB,UAAU,CAAC,KAAK,EAAE,cAAc,GAAG,KAAK,CAiBvD"}
|
|
@@ -0,0 +1,33 @@
|
|
|
1
|
+
/*
|
|
2
|
+
* Copyright 2025 Daytona Platforms Inc.
|
|
3
|
+
* SPDX-License-Identifier: Apache-2.0
|
|
4
|
+
*/
|
|
5
|
+
export var ChartType;
|
|
6
|
+
(function (ChartType) {
|
|
7
|
+
ChartType["LINE"] = "line";
|
|
8
|
+
ChartType["SCATTER"] = "scatter";
|
|
9
|
+
ChartType["BAR"] = "bar";
|
|
10
|
+
ChartType["PIE"] = "pie";
|
|
11
|
+
ChartType["BOX_AND_WHISKER"] = "box_and_whisker";
|
|
12
|
+
ChartType["COMPOSITE_CHART"] = "composite_chart";
|
|
13
|
+
ChartType["UNKNOWN"] = "unknown";
|
|
14
|
+
})(ChartType || (ChartType = {}));
|
|
15
|
+
export function parseChart(chart) {
|
|
16
|
+
switch (chart.type) {
|
|
17
|
+
case ChartType.LINE:
|
|
18
|
+
return chart;
|
|
19
|
+
case ChartType.SCATTER:
|
|
20
|
+
return chart;
|
|
21
|
+
case ChartType.BAR:
|
|
22
|
+
return chart;
|
|
23
|
+
case ChartType.PIE:
|
|
24
|
+
return chart;
|
|
25
|
+
case ChartType.BOX_AND_WHISKER:
|
|
26
|
+
return chart;
|
|
27
|
+
case ChartType.COMPOSITE_CHART:
|
|
28
|
+
return chart;
|
|
29
|
+
default:
|
|
30
|
+
return chart;
|
|
31
|
+
}
|
|
32
|
+
}
|
|
33
|
+
//# sourceMappingURL=Charts.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"Charts.js","sourceRoot":"","sources":["../../../../../../libs/sdk-typescript/src/types/Charts.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAIH,MAAM,CAAN,IAAY,SAQX;AARD,WAAY,SAAS;IACnB,0BAAa,CAAA;IACb,gCAAmB,CAAA;IACnB,wBAAW,CAAA;IACX,wBAAW,CAAA;IACX,gDAAmC,CAAA;IACnC,gDAAmC,CAAA;IACnC,gCAAmB,CAAA;AACrB,CAAC,EARW,SAAS,KAAT,SAAS,QAQpB;AAoCD,MAAM,UAAU,UAAU,CAAC,KAAqB;IAC9C,QAAQ,KAAK,CAAC,IAAI,EAAE,CAAC;QACnB,KAAK,SAAS,CAAC,IAAI;YACjB,OAAO,KAAkB,CAAA;QAC3B,KAAK,SAAS,CAAC,OAAO;YACpB,OAAO,KAAqB,CAAA;QAC9B,KAAK,SAAS,CAAC,GAAG;YAChB,OAAO,KAAiB,CAAA;QAC1B,KAAK,SAAS,CAAC,GAAG;YAChB,OAAO,KAAiB,CAAA;QAC1B,KAAK,SAAS,CAAC,eAAe;YAC5B,OAAO,KAA2B,CAAA;QACpC,KAAK,SAAS,CAAC,eAAe;YAC5B,OAAO,KAAuB,CAAA;QAChC;YACE,OAAO,KAAK,CAAA;IAChB,CAAC;AACH,CAAC"}
|
|
@@ -0,0 +1,77 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* @module code-interpreter
|
|
3
|
+
*/
|
|
4
|
+
import { InterpreterContext } from '@daytona/toolbox-api-client';
|
|
5
|
+
/**
|
|
6
|
+
* Represents stdout or stderr output from code execution.
|
|
7
|
+
*/
|
|
8
|
+
export interface OutputMessage {
|
|
9
|
+
/**
|
|
10
|
+
* Output content.
|
|
11
|
+
*/
|
|
12
|
+
output: string;
|
|
13
|
+
}
|
|
14
|
+
/**
|
|
15
|
+
* Represents an error that occurred during code execution.
|
|
16
|
+
*/
|
|
17
|
+
export interface ExecutionError {
|
|
18
|
+
/**
|
|
19
|
+
* Error type/class name (e.g., "ValueError", "SyntaxError").
|
|
20
|
+
*/
|
|
21
|
+
name: string;
|
|
22
|
+
/**
|
|
23
|
+
* Error value/message.
|
|
24
|
+
*/
|
|
25
|
+
value: string;
|
|
26
|
+
/**
|
|
27
|
+
* Full traceback for the error, if available.
|
|
28
|
+
*/
|
|
29
|
+
traceback?: string;
|
|
30
|
+
}
|
|
31
|
+
/**
|
|
32
|
+
* Result of code execution.
|
|
33
|
+
*/
|
|
34
|
+
export interface ExecutionResult {
|
|
35
|
+
/**
|
|
36
|
+
* Standard output captured during execution.
|
|
37
|
+
*/
|
|
38
|
+
stdout: string;
|
|
39
|
+
/**
|
|
40
|
+
* Standard error captured during execution.
|
|
41
|
+
*/
|
|
42
|
+
stderr: string;
|
|
43
|
+
/**
|
|
44
|
+
* Details about an execution error, if one occurred.
|
|
45
|
+
*/
|
|
46
|
+
error?: ExecutionError;
|
|
47
|
+
}
|
|
48
|
+
/**
|
|
49
|
+
* Options for executing code in the interpreter.
|
|
50
|
+
*/
|
|
51
|
+
export interface RunCodeOptions {
|
|
52
|
+
/**
|
|
53
|
+
* Interpreter context to run code in.
|
|
54
|
+
*/
|
|
55
|
+
context?: InterpreterContext;
|
|
56
|
+
/**
|
|
57
|
+
* Environment variables for this execution.
|
|
58
|
+
*/
|
|
59
|
+
envs?: Record<string, string>;
|
|
60
|
+
/**
|
|
61
|
+
* Timeout in seconds. Set to 0 for no timeout. Default is 10 minutes.
|
|
62
|
+
*/
|
|
63
|
+
timeout?: number;
|
|
64
|
+
/**
|
|
65
|
+
* Callback for stdout messages.
|
|
66
|
+
*/
|
|
67
|
+
onStdout?: (message: OutputMessage) => any | Promise<any>;
|
|
68
|
+
/**
|
|
69
|
+
* Callback for stderr messages.
|
|
70
|
+
*/
|
|
71
|
+
onStderr?: (message: OutputMessage) => any | Promise<any>;
|
|
72
|
+
/**
|
|
73
|
+
* Callback for execution errors (e.g., runtime exceptions).
|
|
74
|
+
*/
|
|
75
|
+
onError?: (error: ExecutionError) => any | Promise<any>;
|
|
76
|
+
}
|
|
77
|
+
//# sourceMappingURL=CodeInterpreter.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"CodeInterpreter.d.ts","sourceRoot":"","sources":["../../../../../../libs/sdk-typescript/src/types/CodeInterpreter.ts"],"names":[],"mappings":"AAKA;;GAEG;AAEH,OAAO,EAAE,kBAAkB,EAAE,MAAM,6BAA6B,CAAA;AAEhE;;GAEG;AACH,MAAM,WAAW,aAAa;IAC5B;;OAEG;IACH,MAAM,EAAE,MAAM,CAAA;CACf;AAED;;GAEG;AACH,MAAM,WAAW,cAAc;IAC7B;;OAEG;IACH,IAAI,EAAE,MAAM,CAAA;IACZ;;OAEG;IACH,KAAK,EAAE,MAAM,CAAA;IACb;;OAEG;IACH,SAAS,CAAC,EAAE,MAAM,CAAA;CACnB;AAED;;GAEG;AACH,MAAM,WAAW,eAAe;IAC9B;;OAEG;IACH,MAAM,EAAE,MAAM,CAAA;IACd;;OAEG;IACH,MAAM,EAAE,MAAM,CAAA;IACd;;OAEG;IACH,KAAK,CAAC,EAAE,cAAc,CAAA;CACvB;AAED;;GAEG;AACH,MAAM,WAAW,cAAc;IAC7B;;OAEG;IACH,OAAO,CAAC,EAAE,kBAAkB,CAAA;IAC5B;;OAEG;IACH,IAAI,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAA;IAC7B;;OAEG;IACH,OAAO,CAAC,EAAE,MAAM,CAAA;IAChB;;OAEG;IACH,QAAQ,CAAC,EAAE,CAAC,OAAO,EAAE,aAAa,KAAK,GAAG,GAAG,OAAO,CAAC,GAAG,CAAC,CAAA;IACzD;;OAEG;IACH,QAAQ,CAAC,EAAE,CAAC,OAAO,EAAE,aAAa,KAAK,GAAG,GAAG,OAAO,CAAC,GAAG,CAAC,CAAA;IACzD;;OAEG;IACH,OAAO,CAAC,EAAE,CAAC,KAAK,EAAE,cAAc,KAAK,GAAG,GAAG,OAAO,CAAC,GAAG,CAAC,CAAA;CACxD"}
|