@daytonaio/sdk 0.26.0-alpha.0 → 0.26.0-alpha.2
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/package.json +2 -2
- package/src/Process.js +20 -3
- package/src/Process.js.map +1 -1
- package/src/utils/Stream.js +91 -30
- package/src/utils/Stream.js.map +1 -1
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@daytonaio/sdk",
|
|
3
|
-
"version": "0.26.0-alpha.
|
|
3
|
+
"version": "0.26.0-alpha.2",
|
|
4
4
|
"description": "TypeScript SDK for Daytona",
|
|
5
5
|
"main": "./src/index.js",
|
|
6
6
|
"types": "./src/index.d.ts",
|
|
@@ -34,7 +34,7 @@
|
|
|
34
34
|
"pathe": "^2.0.3",
|
|
35
35
|
"shell-quote": "^1.8.2",
|
|
36
36
|
"tar": "^6.2.0",
|
|
37
|
-
"@daytonaio/api-client": "0.
|
|
37
|
+
"@daytonaio/api-client": "0.26.0-alpha.2"
|
|
38
38
|
},
|
|
39
39
|
"packageManager": "yarn@4.6.0",
|
|
40
40
|
"type": "commonjs"
|
package/src/Process.js
CHANGED
|
@@ -259,13 +259,30 @@ class Process {
|
|
|
259
259
|
return response.data;
|
|
260
260
|
}
|
|
261
261
|
const previewLink = await this.getPreviewLink(2280);
|
|
262
|
-
const
|
|
262
|
+
const baseUrl = `${previewLink.url.replace('http', 'ws')}/process/session/${sessionId}/command/${commandId}/logs?follow=true`;
|
|
263
263
|
let ws;
|
|
264
264
|
if (Runtime_1.RUNTIME === Runtime_1.Runtime.BROWSER) {
|
|
265
|
-
|
|
265
|
+
// For browser environment, append the auth token as a query parameter
|
|
266
|
+
const separator = baseUrl.includes('?') ? '&' : '?';
|
|
267
|
+
const url = `${baseUrl}${separator}DAYTONA_SANDBOX_AUTH_KEY=${encodeURIComponent(previewLink.token)}`;
|
|
268
|
+
ws = new isomorphic_ws_1.default(url);
|
|
269
|
+
// Add connection timeout for browser environment
|
|
270
|
+
const connectionTimeout = setTimeout(() => {
|
|
271
|
+
if (ws.readyState === 0) {
|
|
272
|
+
// CONNECTING
|
|
273
|
+
ws.close();
|
|
274
|
+
}
|
|
275
|
+
}, 100000); // 100 second timeout
|
|
276
|
+
ws.addEventListener('open', () => {
|
|
277
|
+
clearTimeout(connectionTimeout);
|
|
278
|
+
});
|
|
279
|
+
ws.addEventListener('error', () => {
|
|
280
|
+
clearTimeout(connectionTimeout);
|
|
281
|
+
});
|
|
266
282
|
}
|
|
267
283
|
else {
|
|
268
|
-
|
|
284
|
+
// For Node.js environment, use the headers option
|
|
285
|
+
ws = new isomorphic_ws_1.default(baseUrl, {
|
|
269
286
|
headers: {
|
|
270
287
|
...this.clientConfig.baseOptions.headers,
|
|
271
288
|
'x-daytona-preview-token': previewLink.token,
|
package/src/Process.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Process.js","sourceRoot":"","sources":["../../../../libs/sdk-typescript/src/Process.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"Process.js","sourceRoot":"","sources":["../../../../libs/sdk-typescript/src/Process.ts"],"names":[],"mappings":"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"}
|
package/src/utils/Stream.js
CHANGED
|
@@ -68,8 +68,9 @@ async function processStreamingResponse(getStream, onChunk, shouldTerminate, chu
|
|
|
68
68
|
}
|
|
69
69
|
}
|
|
70
70
|
function stdDemuxStream(socket, onStdout, onStderr) {
|
|
71
|
-
//
|
|
71
|
+
// Set binary type to arraybuffer for consistent handling across environments
|
|
72
72
|
if ('binaryType' in socket) {
|
|
73
|
+
;
|
|
73
74
|
socket.binaryType = 'arraybuffer';
|
|
74
75
|
}
|
|
75
76
|
const decoder = new TextDecoder('utf-8', { fatal: false });
|
|
@@ -80,21 +81,23 @@ function stdDemuxStream(socket, onStdout, onStderr) {
|
|
|
80
81
|
if (cleanedUp)
|
|
81
82
|
return;
|
|
82
83
|
cleanedUp = true;
|
|
83
|
-
//
|
|
84
|
+
// Remove event listeners based on environment
|
|
84
85
|
if (typeof socket.off === 'function') {
|
|
86
|
+
// Node.js style (ws library)
|
|
87
|
+
;
|
|
85
88
|
socket.off('message', unifiedHandler);
|
|
86
89
|
socket.off('close', onClose);
|
|
87
90
|
socket.off('error', onError);
|
|
88
91
|
}
|
|
89
92
|
else {
|
|
90
|
-
//
|
|
93
|
+
// Browser style (native WebSocket)
|
|
91
94
|
socket.removeEventListener('message', unifiedHandler);
|
|
92
95
|
socket.removeEventListener('close', onClose);
|
|
93
96
|
socket.removeEventListener('error', onError);
|
|
94
97
|
}
|
|
95
98
|
}
|
|
96
99
|
function process(buf) {
|
|
97
|
-
if (buf.length
|
|
100
|
+
if (!buf.length)
|
|
98
101
|
return;
|
|
99
102
|
const prefix = buf[0];
|
|
100
103
|
const msg = decoder.decode(buf.subarray(1));
|
|
@@ -105,47 +108,105 @@ function stdDemuxStream(socket, onStdout, onStderr) {
|
|
|
105
108
|
cleanup();
|
|
106
109
|
reject(new Error(`Unknown data prefix ${prefix}`));
|
|
107
110
|
}
|
|
108
|
-
/**
|
|
109
|
-
* A single handler that accepts either:
|
|
110
|
-
* - raw ws data (Buffer, ArrayBuffer, string, Buffer[])
|
|
111
|
-
* - or a DOM MessageEvent with `.data`
|
|
112
|
-
*/
|
|
113
111
|
function unifiedHandler(raw) {
|
|
114
|
-
|
|
115
|
-
|
|
116
|
-
|
|
112
|
+
try {
|
|
113
|
+
const data = raw instanceof MessageEvent ? raw.data : raw;
|
|
114
|
+
if (typeof data === 'string') {
|
|
115
|
+
process(encoder.encode(data));
|
|
116
|
+
}
|
|
117
|
+
else if (data instanceof ArrayBuffer) {
|
|
118
|
+
process(new Uint8Array(data));
|
|
119
|
+
}
|
|
120
|
+
else if (Array.isArray(data)) {
|
|
121
|
+
// Handle Node.js Buffer array case
|
|
122
|
+
if (typeof Buffer !== 'undefined' && Buffer.concat) {
|
|
123
|
+
process(new Uint8Array(Buffer.concat(data)));
|
|
124
|
+
}
|
|
125
|
+
else {
|
|
126
|
+
// Fallback for browser environment
|
|
127
|
+
const totalLength = data.reduce((acc, buf) => acc + buf.byteLength, 0);
|
|
128
|
+
const combined = new Uint8Array(totalLength);
|
|
129
|
+
let offset = 0;
|
|
130
|
+
for (const buf of data) {
|
|
131
|
+
combined.set(new Uint8Array(buf), offset);
|
|
132
|
+
offset += buf.byteLength;
|
|
133
|
+
}
|
|
134
|
+
process(combined);
|
|
135
|
+
}
|
|
136
|
+
}
|
|
137
|
+
else if (ArrayBuffer.isView(data)) {
|
|
138
|
+
const v = data;
|
|
139
|
+
process(new Uint8Array(v.buffer, v.byteOffset, v.byteLength));
|
|
140
|
+
}
|
|
141
|
+
else if (data instanceof Blob) {
|
|
142
|
+
data
|
|
143
|
+
.arrayBuffer()
|
|
144
|
+
.then((ab) => process(new Uint8Array(ab)))
|
|
145
|
+
.catch((err) => {
|
|
146
|
+
cleanup();
|
|
147
|
+
reject(err);
|
|
148
|
+
});
|
|
149
|
+
}
|
|
150
|
+
else {
|
|
151
|
+
cleanup();
|
|
152
|
+
reject(new Error(`Unknown data type: ${typeof data}`));
|
|
153
|
+
}
|
|
117
154
|
}
|
|
118
|
-
|
|
119
|
-
|
|
155
|
+
catch (error) {
|
|
156
|
+
cleanup();
|
|
157
|
+
reject(error);
|
|
120
158
|
}
|
|
121
|
-
|
|
122
|
-
|
|
123
|
-
|
|
159
|
+
}
|
|
160
|
+
const onClose = (event) => {
|
|
161
|
+
cleanup();
|
|
162
|
+
// Only resolve if it's a normal closure or no event (clean close)
|
|
163
|
+
if (!event || event.code === 1000 || event.code === 1001) {
|
|
164
|
+
resolve();
|
|
124
165
|
}
|
|
125
|
-
else
|
|
126
|
-
|
|
127
|
-
process(new Uint8Array(view.buffer, view.byteOffset, view.byteLength));
|
|
166
|
+
else {
|
|
167
|
+
reject(new Error(`WebSocket closed with code: ${event?.code || 'unknown'}`));
|
|
128
168
|
}
|
|
129
|
-
|
|
130
|
-
|
|
131
|
-
|
|
132
|
-
|
|
133
|
-
|
|
169
|
+
};
|
|
170
|
+
const onError = (err) => {
|
|
171
|
+
cleanup();
|
|
172
|
+
// Handle different error types
|
|
173
|
+
if (err instanceof Event) {
|
|
174
|
+
// Browser WebSocket error event - try to get more details
|
|
175
|
+
let errorMessage = `WebSocket connection error: ${err.type}`;
|
|
176
|
+
// Try to get more specific error information
|
|
177
|
+
if (err.target && err.target.readyState !== undefined) {
|
|
178
|
+
const readyState = err.target.readyState;
|
|
179
|
+
const readyStateNames = ['CONNECTING', 'OPEN', 'CLOSING', 'CLOSED'];
|
|
180
|
+
errorMessage += ` (readyState: ${readyStateNames[readyState] || readyState})`;
|
|
181
|
+
}
|
|
182
|
+
reject(new Error(errorMessage));
|
|
183
|
+
}
|
|
184
|
+
else if (err instanceof Error) {
|
|
185
|
+
// Node.js error object
|
|
186
|
+
reject(err);
|
|
134
187
|
}
|
|
135
188
|
else {
|
|
136
|
-
|
|
137
|
-
reject(new Error(`
|
|
189
|
+
// Unknown error type
|
|
190
|
+
reject(new Error(`WebSocket error: ${String(err)}`));
|
|
138
191
|
}
|
|
192
|
+
};
|
|
193
|
+
// Check if WebSocket is already in a bad state
|
|
194
|
+
const CLOSED = 3;
|
|
195
|
+
const CLOSING = 2;
|
|
196
|
+
if (socket.readyState === CLOSED || socket.readyState === CLOSING) {
|
|
197
|
+
reject(new Error('WebSocket is already closed or closing'));
|
|
198
|
+
return;
|
|
139
199
|
}
|
|
140
|
-
|
|
141
|
-
const onError = (err) => { cleanup(); reject(err); };
|
|
142
|
-
// Register listeners via whichever API is available:
|
|
200
|
+
// Register event listeners based on environment
|
|
143
201
|
if (typeof socket.on === 'function') {
|
|
202
|
+
// Node.js style (ws library)
|
|
203
|
+
;
|
|
144
204
|
socket.on('message', unifiedHandler);
|
|
145
205
|
socket.on('close', onClose);
|
|
146
206
|
socket.on('error', onError);
|
|
147
207
|
}
|
|
148
208
|
else {
|
|
209
|
+
// Browser style (native WebSocket)
|
|
149
210
|
socket.addEventListener('message', unifiedHandler);
|
|
150
211
|
socket.addEventListener('close', onClose);
|
|
151
212
|
socket.addEventListener('error', onError);
|
package/src/utils/Stream.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Stream.js","sourceRoot":"","sources":["../../../../../libs/sdk-typescript/src/utils/Stream.ts"],"names":[],"mappings":";AAAA;;;GAGG;;;AAiBH,4DAqDC;AAED,
|
|
1
|
+
{"version":3,"file":"Stream.js","sourceRoot":"","sources":["../../../../../libs/sdk-typescript/src/utils/Stream.ts"],"names":[],"mappings":"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"}
|