@onkernel/sdk 0.62.0 → 0.64.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CHANGELOG.md +22 -0
- package/client.d.mts +2 -5
- package/client.d.mts.map +1 -1
- package/client.d.ts +2 -5
- package/client.d.ts.map +1 -1
- package/client.js +0 -3
- package/client.js.map +1 -1
- package/client.mjs +0 -3
- package/client.mjs.map +1 -1
- package/internal/qs/formats.d.mts +7 -0
- package/internal/qs/formats.d.mts.map +1 -0
- package/internal/qs/formats.d.ts +7 -0
- package/internal/qs/formats.d.ts.map +1 -0
- package/internal/qs/formats.js +13 -0
- package/internal/qs/formats.js.map +1 -0
- package/internal/qs/formats.mjs +9 -0
- package/internal/qs/formats.mjs.map +1 -0
- package/internal/qs/index.d.mts +10 -0
- package/internal/qs/index.d.mts.map +1 -0
- package/internal/qs/index.d.ts +10 -0
- package/internal/qs/index.d.ts.map +1 -0
- package/internal/qs/index.js +14 -0
- package/internal/qs/index.js.map +1 -0
- package/internal/qs/index.mjs +10 -0
- package/internal/qs/index.mjs.map +1 -0
- package/internal/qs/stringify.d.mts +3 -0
- package/internal/qs/stringify.d.mts.map +1 -0
- package/internal/qs/stringify.d.ts +3 -0
- package/internal/qs/stringify.d.ts.map +1 -0
- package/internal/qs/stringify.js +277 -0
- package/internal/qs/stringify.js.map +1 -0
- package/internal/qs/stringify.mjs +274 -0
- package/internal/qs/stringify.mjs.map +1 -0
- package/internal/qs/types.d.mts +57 -0
- package/internal/qs/types.d.mts.map +1 -0
- package/internal/qs/types.d.ts +57 -0
- package/internal/qs/types.d.ts.map +1 -0
- package/internal/qs/types.js +3 -0
- package/internal/qs/types.js.map +1 -0
- package/internal/qs/types.mjs +2 -0
- package/internal/qs/types.mjs.map +1 -0
- package/internal/qs/utils.d.mts +15 -0
- package/internal/qs/utils.d.mts.map +1 -0
- package/internal/qs/utils.d.ts +15 -0
- package/internal/qs/utils.d.ts.map +1 -0
- package/internal/qs/utils.js +230 -0
- package/internal/qs/utils.js.map +1 -0
- package/internal/qs/utils.mjs +217 -0
- package/internal/qs/utils.mjs.map +1 -0
- package/internal/utils/query.d.mts +0 -3
- package/internal/utils/query.d.mts.map +1 -1
- package/internal/utils/query.d.ts +0 -3
- package/internal/utils/query.d.ts.map +1 -1
- package/internal/utils/query.js +3 -16
- package/internal/utils/query.js.map +1 -1
- package/internal/utils/query.mjs +2 -16
- package/internal/utils/query.mjs.map +1 -1
- package/package.json +1 -1
- package/resources/browser-pools.d.mts +9 -0
- package/resources/browser-pools.d.mts.map +1 -1
- package/resources/browser-pools.d.ts +9 -0
- package/resources/browser-pools.d.ts.map +1 -1
- package/resources/browsers/browsers.d.mts +81 -18
- package/resources/browsers/browsers.d.mts.map +1 -1
- package/resources/browsers/browsers.d.ts +81 -18
- package/resources/browsers/browsers.d.ts.map +1 -1
- package/resources/browsers/browsers.js.map +1 -1
- package/resources/browsers/browsers.mjs.map +1 -1
- package/resources/browsers/index.d.mts +2 -2
- package/resources/browsers/index.d.mts.map +1 -1
- package/resources/browsers/index.d.ts +2 -2
- package/resources/browsers/index.d.ts.map +1 -1
- package/resources/browsers/index.js.map +1 -1
- package/resources/browsers/index.mjs.map +1 -1
- package/resources/browsers/telemetry.d.mts +408 -20
- package/resources/browsers/telemetry.d.mts.map +1 -1
- package/resources/browsers/telemetry.d.ts +408 -20
- package/resources/browsers/telemetry.d.ts.map +1 -1
- package/resources/index.d.mts +1 -1
- package/resources/index.d.mts.map +1 -1
- package/resources/index.d.ts +1 -1
- package/resources/index.d.ts.map +1 -1
- package/resources/index.js.map +1 -1
- package/resources/index.mjs.map +1 -1
- package/resources/invocations.d.mts +9 -0
- package/resources/invocations.d.mts.map +1 -1
- package/resources/invocations.d.ts +9 -0
- package/resources/invocations.d.ts.map +1 -1
- package/src/client.ts +2 -3
- package/src/internal/qs/LICENSE.md +13 -0
- package/src/internal/qs/README.md +3 -0
- package/src/internal/qs/formats.ts +10 -0
- package/src/internal/qs/index.ts +13 -0
- package/src/internal/qs/stringify.ts +385 -0
- package/src/internal/qs/types.ts +71 -0
- package/src/internal/qs/utils.ts +265 -0
- package/src/internal/utils/query.ts +2 -18
- package/src/resources/browser-pools.ts +11 -0
- package/src/resources/browsers/browsers.ts +103 -15
- package/src/resources/browsers/index.ts +9 -0
- package/src/resources/browsers/telemetry.ts +507 -19
- package/src/resources/index.ts +1 -0
- package/src/resources/invocations.ts +11 -0
- package/src/version.ts +1 -1
- package/version.d.mts +1 -1
- package/version.d.ts +1 -1
- package/version.js +1 -1
- package/version.mjs +1 -1
|
@@ -0,0 +1,265 @@
|
|
|
1
|
+
import { RFC1738 } from './formats';
|
|
2
|
+
import type { DefaultEncoder, Format } from './types';
|
|
3
|
+
import { isArray } from '../utils/values';
|
|
4
|
+
|
|
5
|
+
export let has = (obj: object, key: PropertyKey): boolean => (
|
|
6
|
+
(has = (Object as any).hasOwn ?? Function.prototype.call.bind(Object.prototype.hasOwnProperty)),
|
|
7
|
+
has(obj, key)
|
|
8
|
+
);
|
|
9
|
+
|
|
10
|
+
const hex_table = /* @__PURE__ */ (() => {
|
|
11
|
+
const array = [];
|
|
12
|
+
for (let i = 0; i < 256; ++i) {
|
|
13
|
+
array.push('%' + ((i < 16 ? '0' : '') + i.toString(16)).toUpperCase());
|
|
14
|
+
}
|
|
15
|
+
|
|
16
|
+
return array;
|
|
17
|
+
})();
|
|
18
|
+
|
|
19
|
+
function compact_queue<T extends Record<string, any>>(queue: Array<{ obj: T; prop: string }>) {
|
|
20
|
+
while (queue.length > 1) {
|
|
21
|
+
const item = queue.pop();
|
|
22
|
+
if (!item) continue;
|
|
23
|
+
|
|
24
|
+
const obj = item.obj[item.prop];
|
|
25
|
+
|
|
26
|
+
if (isArray(obj)) {
|
|
27
|
+
const compacted: unknown[] = [];
|
|
28
|
+
|
|
29
|
+
for (let j = 0; j < obj.length; ++j) {
|
|
30
|
+
if (typeof obj[j] !== 'undefined') {
|
|
31
|
+
compacted.push(obj[j]);
|
|
32
|
+
}
|
|
33
|
+
}
|
|
34
|
+
|
|
35
|
+
// @ts-ignore
|
|
36
|
+
item.obj[item.prop] = compacted;
|
|
37
|
+
}
|
|
38
|
+
}
|
|
39
|
+
}
|
|
40
|
+
|
|
41
|
+
function array_to_object(source: any[], options: { plainObjects: boolean }) {
|
|
42
|
+
const obj = options && options.plainObjects ? Object.create(null) : {};
|
|
43
|
+
for (let i = 0; i < source.length; ++i) {
|
|
44
|
+
if (typeof source[i] !== 'undefined') {
|
|
45
|
+
obj[i] = source[i];
|
|
46
|
+
}
|
|
47
|
+
}
|
|
48
|
+
|
|
49
|
+
return obj;
|
|
50
|
+
}
|
|
51
|
+
|
|
52
|
+
export function merge(
|
|
53
|
+
target: any,
|
|
54
|
+
source: any,
|
|
55
|
+
options: { plainObjects?: boolean; allowPrototypes?: boolean } = {},
|
|
56
|
+
) {
|
|
57
|
+
if (!source) {
|
|
58
|
+
return target;
|
|
59
|
+
}
|
|
60
|
+
|
|
61
|
+
if (typeof source !== 'object') {
|
|
62
|
+
if (isArray(target)) {
|
|
63
|
+
target.push(source);
|
|
64
|
+
} else if (target && typeof target === 'object') {
|
|
65
|
+
if ((options && (options.plainObjects || options.allowPrototypes)) || !has(Object.prototype, source)) {
|
|
66
|
+
target[source] = true;
|
|
67
|
+
}
|
|
68
|
+
} else {
|
|
69
|
+
return [target, source];
|
|
70
|
+
}
|
|
71
|
+
|
|
72
|
+
return target;
|
|
73
|
+
}
|
|
74
|
+
|
|
75
|
+
if (!target || typeof target !== 'object') {
|
|
76
|
+
return [target].concat(source);
|
|
77
|
+
}
|
|
78
|
+
|
|
79
|
+
let mergeTarget = target;
|
|
80
|
+
if (isArray(target) && !isArray(source)) {
|
|
81
|
+
// @ts-ignore
|
|
82
|
+
mergeTarget = array_to_object(target, options);
|
|
83
|
+
}
|
|
84
|
+
|
|
85
|
+
if (isArray(target) && isArray(source)) {
|
|
86
|
+
source.forEach(function (item, i) {
|
|
87
|
+
if (has(target, i)) {
|
|
88
|
+
const targetItem = target[i];
|
|
89
|
+
if (targetItem && typeof targetItem === 'object' && item && typeof item === 'object') {
|
|
90
|
+
target[i] = merge(targetItem, item, options);
|
|
91
|
+
} else {
|
|
92
|
+
target.push(item);
|
|
93
|
+
}
|
|
94
|
+
} else {
|
|
95
|
+
target[i] = item;
|
|
96
|
+
}
|
|
97
|
+
});
|
|
98
|
+
return target;
|
|
99
|
+
}
|
|
100
|
+
|
|
101
|
+
return Object.keys(source).reduce(function (acc, key) {
|
|
102
|
+
const value = source[key];
|
|
103
|
+
|
|
104
|
+
if (has(acc, key)) {
|
|
105
|
+
acc[key] = merge(acc[key], value, options);
|
|
106
|
+
} else {
|
|
107
|
+
acc[key] = value;
|
|
108
|
+
}
|
|
109
|
+
return acc;
|
|
110
|
+
}, mergeTarget);
|
|
111
|
+
}
|
|
112
|
+
|
|
113
|
+
export function assign_single_source(target: any, source: any) {
|
|
114
|
+
return Object.keys(source).reduce(function (acc, key) {
|
|
115
|
+
acc[key] = source[key];
|
|
116
|
+
return acc;
|
|
117
|
+
}, target);
|
|
118
|
+
}
|
|
119
|
+
|
|
120
|
+
export function decode(str: string, _: any, charset: string) {
|
|
121
|
+
const strWithoutPlus = str.replace(/\+/g, ' ');
|
|
122
|
+
if (charset === 'iso-8859-1') {
|
|
123
|
+
// unescape never throws, no try...catch needed:
|
|
124
|
+
return strWithoutPlus.replace(/%[0-9a-f]{2}/gi, unescape);
|
|
125
|
+
}
|
|
126
|
+
// utf-8
|
|
127
|
+
try {
|
|
128
|
+
return decodeURIComponent(strWithoutPlus);
|
|
129
|
+
} catch (e) {
|
|
130
|
+
return strWithoutPlus;
|
|
131
|
+
}
|
|
132
|
+
}
|
|
133
|
+
|
|
134
|
+
const limit = 1024;
|
|
135
|
+
|
|
136
|
+
export const encode: (
|
|
137
|
+
str: any,
|
|
138
|
+
defaultEncoder: DefaultEncoder,
|
|
139
|
+
charset: string,
|
|
140
|
+
type: 'key' | 'value',
|
|
141
|
+
format: Format,
|
|
142
|
+
) => string = (str, _defaultEncoder, charset, _kind, format: Format) => {
|
|
143
|
+
// This code was originally written by Brian White for the io.js core querystring library.
|
|
144
|
+
// It has been adapted here for stricter adherence to RFC 3986
|
|
145
|
+
if (str.length === 0) {
|
|
146
|
+
return str;
|
|
147
|
+
}
|
|
148
|
+
|
|
149
|
+
let string = str;
|
|
150
|
+
if (typeof str === 'symbol') {
|
|
151
|
+
string = Symbol.prototype.toString.call(str);
|
|
152
|
+
} else if (typeof str !== 'string') {
|
|
153
|
+
string = String(str);
|
|
154
|
+
}
|
|
155
|
+
|
|
156
|
+
if (charset === 'iso-8859-1') {
|
|
157
|
+
return escape(string).replace(/%u[0-9a-f]{4}/gi, function ($0) {
|
|
158
|
+
return '%26%23' + parseInt($0.slice(2), 16) + '%3B';
|
|
159
|
+
});
|
|
160
|
+
}
|
|
161
|
+
|
|
162
|
+
let out = '';
|
|
163
|
+
for (let j = 0; j < string.length; j += limit) {
|
|
164
|
+
const segment = string.length >= limit ? string.slice(j, j + limit) : string;
|
|
165
|
+
const arr = [];
|
|
166
|
+
|
|
167
|
+
for (let i = 0; i < segment.length; ++i) {
|
|
168
|
+
let c = segment.charCodeAt(i);
|
|
169
|
+
if (
|
|
170
|
+
c === 0x2d || // -
|
|
171
|
+
c === 0x2e || // .
|
|
172
|
+
c === 0x5f || // _
|
|
173
|
+
c === 0x7e || // ~
|
|
174
|
+
(c >= 0x30 && c <= 0x39) || // 0-9
|
|
175
|
+
(c >= 0x41 && c <= 0x5a) || // a-z
|
|
176
|
+
(c >= 0x61 && c <= 0x7a) || // A-Z
|
|
177
|
+
(format === RFC1738 && (c === 0x28 || c === 0x29)) // ( )
|
|
178
|
+
) {
|
|
179
|
+
arr[arr.length] = segment.charAt(i);
|
|
180
|
+
continue;
|
|
181
|
+
}
|
|
182
|
+
|
|
183
|
+
if (c < 0x80) {
|
|
184
|
+
arr[arr.length] = hex_table[c];
|
|
185
|
+
continue;
|
|
186
|
+
}
|
|
187
|
+
|
|
188
|
+
if (c < 0x800) {
|
|
189
|
+
arr[arr.length] = hex_table[0xc0 | (c >> 6)]! + hex_table[0x80 | (c & 0x3f)];
|
|
190
|
+
continue;
|
|
191
|
+
}
|
|
192
|
+
|
|
193
|
+
if (c < 0xd800 || c >= 0xe000) {
|
|
194
|
+
arr[arr.length] =
|
|
195
|
+
hex_table[0xe0 | (c >> 12)]! + hex_table[0x80 | ((c >> 6) & 0x3f)] + hex_table[0x80 | (c & 0x3f)];
|
|
196
|
+
continue;
|
|
197
|
+
}
|
|
198
|
+
|
|
199
|
+
i += 1;
|
|
200
|
+
c = 0x10000 + (((c & 0x3ff) << 10) | (segment.charCodeAt(i) & 0x3ff));
|
|
201
|
+
|
|
202
|
+
arr[arr.length] =
|
|
203
|
+
hex_table[0xf0 | (c >> 18)]! +
|
|
204
|
+
hex_table[0x80 | ((c >> 12) & 0x3f)] +
|
|
205
|
+
hex_table[0x80 | ((c >> 6) & 0x3f)] +
|
|
206
|
+
hex_table[0x80 | (c & 0x3f)];
|
|
207
|
+
}
|
|
208
|
+
|
|
209
|
+
out += arr.join('');
|
|
210
|
+
}
|
|
211
|
+
|
|
212
|
+
return out;
|
|
213
|
+
};
|
|
214
|
+
|
|
215
|
+
export function compact(value: any) {
|
|
216
|
+
const queue = [{ obj: { o: value }, prop: 'o' }];
|
|
217
|
+
const refs = [];
|
|
218
|
+
|
|
219
|
+
for (let i = 0; i < queue.length; ++i) {
|
|
220
|
+
const item = queue[i];
|
|
221
|
+
// @ts-ignore
|
|
222
|
+
const obj = item.obj[item.prop];
|
|
223
|
+
|
|
224
|
+
const keys = Object.keys(obj);
|
|
225
|
+
for (let j = 0; j < keys.length; ++j) {
|
|
226
|
+
const key = keys[j]!;
|
|
227
|
+
const val = obj[key];
|
|
228
|
+
if (typeof val === 'object' && val !== null && refs.indexOf(val) === -1) {
|
|
229
|
+
queue.push({ obj: obj, prop: key });
|
|
230
|
+
refs.push(val);
|
|
231
|
+
}
|
|
232
|
+
}
|
|
233
|
+
}
|
|
234
|
+
|
|
235
|
+
compact_queue(queue);
|
|
236
|
+
|
|
237
|
+
return value;
|
|
238
|
+
}
|
|
239
|
+
|
|
240
|
+
export function is_regexp(obj: any) {
|
|
241
|
+
return Object.prototype.toString.call(obj) === '[object RegExp]';
|
|
242
|
+
}
|
|
243
|
+
|
|
244
|
+
export function is_buffer(obj: any) {
|
|
245
|
+
if (!obj || typeof obj !== 'object') {
|
|
246
|
+
return false;
|
|
247
|
+
}
|
|
248
|
+
|
|
249
|
+
return !!(obj.constructor && obj.constructor.isBuffer && obj.constructor.isBuffer(obj));
|
|
250
|
+
}
|
|
251
|
+
|
|
252
|
+
export function combine(a: any, b: any) {
|
|
253
|
+
return [].concat(a, b);
|
|
254
|
+
}
|
|
255
|
+
|
|
256
|
+
export function maybe_map<T>(val: T[], fn: (v: T) => T) {
|
|
257
|
+
if (isArray(val)) {
|
|
258
|
+
const mapped = [];
|
|
259
|
+
for (let i = 0; i < val.length; i += 1) {
|
|
260
|
+
mapped.push(fn(val[i]!));
|
|
261
|
+
}
|
|
262
|
+
return mapped;
|
|
263
|
+
}
|
|
264
|
+
return fn(val);
|
|
265
|
+
}
|
|
@@ -1,23 +1,7 @@
|
|
|
1
1
|
// File generated from our OpenAPI spec by Stainless. See CONTRIBUTING.md for details.
|
|
2
2
|
|
|
3
|
-
import
|
|
3
|
+
import * as qs from '../qs/stringify';
|
|
4
4
|
|
|
5
|
-
/**
|
|
6
|
-
* Basic re-implementation of `qs.stringify` for primitive types.
|
|
7
|
-
*/
|
|
8
5
|
export function stringifyQuery(query: object | Record<string, unknown>) {
|
|
9
|
-
return
|
|
10
|
-
.filter(([_, value]) => typeof value !== 'undefined')
|
|
11
|
-
.map(([key, value]) => {
|
|
12
|
-
if (typeof value === 'string' || typeof value === 'number' || typeof value === 'boolean') {
|
|
13
|
-
return `${encodeURIComponent(key)}=${encodeURIComponent(value)}`;
|
|
14
|
-
}
|
|
15
|
-
if (value === null) {
|
|
16
|
-
return `${encodeURIComponent(key)}=`;
|
|
17
|
-
}
|
|
18
|
-
throw new KernelError(
|
|
19
|
-
`Cannot stringify type ${typeof value}; Expected string, number, boolean, or null. If you need to pass nested query parameters, you can manually encode them, e.g. { query: { 'foo[key1]': value1, 'foo[key2]': value2 } }, and please open a GitHub issue requesting better support for your use case.`,
|
|
20
|
-
);
|
|
21
|
-
})
|
|
22
|
-
.join('&');
|
|
6
|
+
return qs.stringify(query, { arrayFormat: 'comma' });
|
|
23
7
|
}
|
|
@@ -355,6 +355,11 @@ export interface BrowserPoolAcquireResponse {
|
|
|
355
355
|
*/
|
|
356
356
|
kiosk_mode?: boolean;
|
|
357
357
|
|
|
358
|
+
/**
|
|
359
|
+
* Human-readable name of the browser session, if one was set at creation.
|
|
360
|
+
*/
|
|
361
|
+
name?: string;
|
|
362
|
+
|
|
358
363
|
/**
|
|
359
364
|
* Browser pool this session was acquired from, if any.
|
|
360
365
|
*/
|
|
@@ -379,6 +384,12 @@ export interface BrowserPoolAcquireResponse {
|
|
|
379
384
|
*/
|
|
380
385
|
start_url?: string;
|
|
381
386
|
|
|
387
|
+
/**
|
|
388
|
+
* User-defined key-value tags that were set on this browser session, if any.
|
|
389
|
+
* Echoed back when present.
|
|
390
|
+
*/
|
|
391
|
+
tags?: BrowsersAPI.Tags;
|
|
392
|
+
|
|
382
393
|
/**
|
|
383
394
|
* Active telemetry configuration for the session, if any.
|
|
384
395
|
*/
|
|
@@ -53,7 +53,11 @@ import {
|
|
|
53
53
|
} from './replays';
|
|
54
54
|
import * as TelemetryAPI from './telemetry';
|
|
55
55
|
import {
|
|
56
|
+
BrowserAPICallEvent,
|
|
56
57
|
BrowserCallStack,
|
|
58
|
+
BrowserCaptchaSolveResultEvent,
|
|
59
|
+
BrowserCdpConnectEvent,
|
|
60
|
+
BrowserCdpDisconnectEvent,
|
|
57
61
|
BrowserConsoleErrorEvent,
|
|
58
62
|
BrowserConsoleLogEvent,
|
|
59
63
|
BrowserEventContext,
|
|
@@ -62,6 +66,8 @@ import {
|
|
|
62
66
|
BrowserInteractionClickEvent,
|
|
63
67
|
BrowserInteractionKeyEvent,
|
|
64
68
|
BrowserInteractionScrollSettledEvent,
|
|
69
|
+
BrowserLiveViewConnectEvent,
|
|
70
|
+
BrowserLiveViewDisconnectEvent,
|
|
65
71
|
BrowserMonitorDisconnectedEvent,
|
|
66
72
|
BrowserMonitorInitFailedEvent,
|
|
67
73
|
BrowserMonitorReconnectFailedEvent,
|
|
@@ -79,6 +85,8 @@ import {
|
|
|
79
85
|
BrowserPageNavigationEvent,
|
|
80
86
|
BrowserPageNavigationSettledEvent,
|
|
81
87
|
BrowserPageTabOpenedEvent,
|
|
88
|
+
BrowserServiceCrashedEvent,
|
|
89
|
+
BrowserSystemOomKillEvent,
|
|
82
90
|
BrowserTelemetryCategoriesConfig,
|
|
83
91
|
BrowserTelemetryCategoryConfig,
|
|
84
92
|
BrowserTelemetryConfig,
|
|
@@ -319,6 +327,11 @@ export interface Profile {
|
|
|
319
327
|
updated_at?: string;
|
|
320
328
|
}
|
|
321
329
|
|
|
330
|
+
/**
|
|
331
|
+
* User-defined key-value tags.
|
|
332
|
+
*/
|
|
333
|
+
export type Tags = { [key: string]: string };
|
|
334
|
+
|
|
322
335
|
export interface BrowserCreateResponse {
|
|
323
336
|
/**
|
|
324
337
|
* Websocket URL for Chrome DevTools Protocol connections to the browser session
|
|
@@ -389,6 +402,11 @@ export interface BrowserCreateResponse {
|
|
|
389
402
|
*/
|
|
390
403
|
kiosk_mode?: boolean;
|
|
391
404
|
|
|
405
|
+
/**
|
|
406
|
+
* Human-readable name of the browser session, if one was set at creation.
|
|
407
|
+
*/
|
|
408
|
+
name?: string;
|
|
409
|
+
|
|
392
410
|
/**
|
|
393
411
|
* Browser pool this session was acquired from, if any.
|
|
394
412
|
*/
|
|
@@ -413,6 +431,12 @@ export interface BrowserCreateResponse {
|
|
|
413
431
|
*/
|
|
414
432
|
start_url?: string;
|
|
415
433
|
|
|
434
|
+
/**
|
|
435
|
+
* User-defined key-value tags that were set on this browser session, if any.
|
|
436
|
+
* Echoed back when present.
|
|
437
|
+
*/
|
|
438
|
+
tags?: Tags;
|
|
439
|
+
|
|
416
440
|
/**
|
|
417
441
|
* Active telemetry configuration for the session, if any.
|
|
418
442
|
*/
|
|
@@ -510,6 +534,11 @@ export interface BrowserRetrieveResponse {
|
|
|
510
534
|
*/
|
|
511
535
|
kiosk_mode?: boolean;
|
|
512
536
|
|
|
537
|
+
/**
|
|
538
|
+
* Human-readable name of the browser session, if one was set at creation.
|
|
539
|
+
*/
|
|
540
|
+
name?: string;
|
|
541
|
+
|
|
513
542
|
/**
|
|
514
543
|
* Browser pool this session was acquired from, if any.
|
|
515
544
|
*/
|
|
@@ -534,6 +563,12 @@ export interface BrowserRetrieveResponse {
|
|
|
534
563
|
*/
|
|
535
564
|
start_url?: string;
|
|
536
565
|
|
|
566
|
+
/**
|
|
567
|
+
* User-defined key-value tags that were set on this browser session, if any.
|
|
568
|
+
* Echoed back when present.
|
|
569
|
+
*/
|
|
570
|
+
tags?: Tags;
|
|
571
|
+
|
|
537
572
|
/**
|
|
538
573
|
* Active telemetry configuration for the session, if any.
|
|
539
574
|
*/
|
|
@@ -631,6 +666,11 @@ export interface BrowserUpdateResponse {
|
|
|
631
666
|
*/
|
|
632
667
|
kiosk_mode?: boolean;
|
|
633
668
|
|
|
669
|
+
/**
|
|
670
|
+
* Human-readable name of the browser session, if one was set at creation.
|
|
671
|
+
*/
|
|
672
|
+
name?: string;
|
|
673
|
+
|
|
634
674
|
/**
|
|
635
675
|
* Browser pool this session was acquired from, if any.
|
|
636
676
|
*/
|
|
@@ -655,6 +695,12 @@ export interface BrowserUpdateResponse {
|
|
|
655
695
|
*/
|
|
656
696
|
start_url?: string;
|
|
657
697
|
|
|
698
|
+
/**
|
|
699
|
+
* User-defined key-value tags that were set on this browser session, if any.
|
|
700
|
+
* Echoed back when present.
|
|
701
|
+
*/
|
|
702
|
+
tags?: Tags;
|
|
703
|
+
|
|
658
704
|
/**
|
|
659
705
|
* Active telemetry configuration for the session, if any.
|
|
660
706
|
*/
|
|
@@ -752,6 +798,11 @@ export interface BrowserListResponse {
|
|
|
752
798
|
*/
|
|
753
799
|
kiosk_mode?: boolean;
|
|
754
800
|
|
|
801
|
+
/**
|
|
802
|
+
* Human-readable name of the browser session, if one was set at creation.
|
|
803
|
+
*/
|
|
804
|
+
name?: string;
|
|
805
|
+
|
|
755
806
|
/**
|
|
756
807
|
* Browser pool this session was acquired from, if any.
|
|
757
808
|
*/
|
|
@@ -776,6 +827,12 @@ export interface BrowserListResponse {
|
|
|
776
827
|
*/
|
|
777
828
|
start_url?: string;
|
|
778
829
|
|
|
830
|
+
/**
|
|
831
|
+
* User-defined key-value tags that were set on this browser session, if any.
|
|
832
|
+
* Echoed back when present.
|
|
833
|
+
*/
|
|
834
|
+
tags?: Tags;
|
|
835
|
+
|
|
779
836
|
/**
|
|
780
837
|
* Active telemetry configuration for the session, if any.
|
|
781
838
|
*/
|
|
@@ -865,6 +922,13 @@ export interface BrowserCreateParams {
|
|
|
865
922
|
*/
|
|
866
923
|
kiosk_mode?: boolean;
|
|
867
924
|
|
|
925
|
+
/**
|
|
926
|
+
* Optional human-readable name for the browser session, used to find it later in
|
|
927
|
+
* the dashboard. Must be unique among active sessions within the project. Set at
|
|
928
|
+
* creation time only.
|
|
929
|
+
*/
|
|
930
|
+
name?: string;
|
|
931
|
+
|
|
868
932
|
/**
|
|
869
933
|
* Profile selection for the browser session. Provide either id or name. If
|
|
870
934
|
* specified, the matching profile will be loaded into the browser session.
|
|
@@ -891,6 +955,12 @@ export interface BrowserCreateParams {
|
|
|
891
955
|
*/
|
|
892
956
|
stealth?: boolean;
|
|
893
957
|
|
|
958
|
+
/**
|
|
959
|
+
* Optional user-defined key-value tags for the browser session, used to find and
|
|
960
|
+
* group sessions later. Set at creation time only. Up to 50 pairs.
|
|
961
|
+
*/
|
|
962
|
+
tags?: Tags;
|
|
963
|
+
|
|
894
964
|
/**
|
|
895
965
|
* Telemetry configuration for the browser session. Set enabled to true to start
|
|
896
966
|
* capture using VM defaults, or provide browser category settings. If omitted,
|
|
@@ -936,17 +1006,18 @@ export namespace BrowserCreateParams {
|
|
|
936
1006
|
*/
|
|
937
1007
|
export interface Telemetry {
|
|
938
1008
|
/**
|
|
939
|
-
* Per-category
|
|
940
|
-
*
|
|
941
|
-
*
|
|
1009
|
+
* Per-category capture flags. Selection is opt-in: only the categories set to
|
|
1010
|
+
* enabled=true are captured; anything omitted is off. If enabled is true and
|
|
1011
|
+
* browser is omitted or empty, the default category set is used. A browser config
|
|
1012
|
+
* that enables nothing stops capture on update and starts no capture on create.
|
|
942
1013
|
*/
|
|
943
1014
|
browser?: TelemetryAPI.BrowserTelemetryCategoriesConfig;
|
|
944
1015
|
|
|
945
1016
|
/**
|
|
946
|
-
* Request shortcut for browser telemetry capture. True enables capture using
|
|
947
|
-
*
|
|
948
|
-
* update and starts no capture on create. enabled=false cannot be
|
|
949
|
-
* browser category settings.
|
|
1017
|
+
* Request shortcut for browser telemetry capture. True enables capture using the
|
|
1018
|
+
* default category set unless browser category settings are provided. False stops
|
|
1019
|
+
* capture on update and starts no capture on create. enabled=false cannot be
|
|
1020
|
+
* combined with browser category settings.
|
|
950
1021
|
*/
|
|
951
1022
|
enabled?: boolean;
|
|
952
1023
|
}
|
|
@@ -1003,17 +1074,18 @@ export namespace BrowserUpdateParams {
|
|
|
1003
1074
|
*/
|
|
1004
1075
|
export interface Telemetry {
|
|
1005
1076
|
/**
|
|
1006
|
-
* Per-category
|
|
1007
|
-
*
|
|
1008
|
-
*
|
|
1077
|
+
* Per-category capture flags. Selection is opt-in: only the categories set to
|
|
1078
|
+
* enabled=true are captured; anything omitted is off. If enabled is true and
|
|
1079
|
+
* browser is omitted or empty, the default category set is used. A browser config
|
|
1080
|
+
* that enables nothing stops capture on update and starts no capture on create.
|
|
1009
1081
|
*/
|
|
1010
1082
|
browser?: TelemetryAPI.BrowserTelemetryCategoriesConfig;
|
|
1011
1083
|
|
|
1012
1084
|
/**
|
|
1013
|
-
* Request shortcut for browser telemetry capture. True enables capture using
|
|
1014
|
-
*
|
|
1015
|
-
* update and starts no capture on create. enabled=false cannot be
|
|
1016
|
-
* browser category settings.
|
|
1085
|
+
* Request shortcut for browser telemetry capture. True enables capture using the
|
|
1086
|
+
* default category set unless browser category settings are provided. False stops
|
|
1087
|
+
* capture on update and starts no capture on create. enabled=false cannot be
|
|
1088
|
+
* combined with browser category settings.
|
|
1017
1089
|
*/
|
|
1018
1090
|
enabled?: boolean;
|
|
1019
1091
|
}
|
|
@@ -1040,7 +1112,7 @@ export interface BrowserListParams extends OffsetPaginationParams {
|
|
|
1040
1112
|
include_deleted?: boolean;
|
|
1041
1113
|
|
|
1042
1114
|
/**
|
|
1043
|
-
* Search browsers by session ID, profile ID, proxy ID, or pool name.
|
|
1115
|
+
* Search browsers by name, session ID, profile ID, proxy ID, or pool name.
|
|
1044
1116
|
*/
|
|
1045
1117
|
query?: string;
|
|
1046
1118
|
|
|
@@ -1049,6 +1121,13 @@ export interface BrowserListParams extends OffsetPaginationParams {
|
|
|
1049
1121
|
* "deleted" returns only soft-deleted sessions, "all" returns both.
|
|
1050
1122
|
*/
|
|
1051
1123
|
status?: 'active' | 'deleted' | 'all';
|
|
1124
|
+
|
|
1125
|
+
/**
|
|
1126
|
+
* Filter sessions by tag key-value pairs using deepObject style, e.g.
|
|
1127
|
+
* ?tags[team]=backend&tags[env]=staging. Multiple pairs are ANDed: a session must
|
|
1128
|
+
* match every supplied pair exactly.
|
|
1129
|
+
*/
|
|
1130
|
+
tags?: { [key: string]: string };
|
|
1052
1131
|
}
|
|
1053
1132
|
|
|
1054
1133
|
export interface BrowserCurlParams {
|
|
@@ -1118,6 +1197,7 @@ export declare namespace Browsers {
|
|
|
1118
1197
|
type BrowserPoolRef as BrowserPoolRef,
|
|
1119
1198
|
type BrowserUsage as BrowserUsage,
|
|
1120
1199
|
type Profile as Profile,
|
|
1200
|
+
type Tags as Tags,
|
|
1121
1201
|
type BrowserCreateResponse as BrowserCreateResponse,
|
|
1122
1202
|
type BrowserRetrieveResponse as BrowserRetrieveResponse,
|
|
1123
1203
|
type BrowserUpdateResponse as BrowserUpdateResponse,
|
|
@@ -1134,7 +1214,11 @@ export declare namespace Browsers {
|
|
|
1134
1214
|
|
|
1135
1215
|
export {
|
|
1136
1216
|
TelemetryAPITelemetry as Telemetry,
|
|
1217
|
+
type BrowserAPICallEvent as BrowserAPICallEvent,
|
|
1137
1218
|
type BrowserCallStack as BrowserCallStack,
|
|
1219
|
+
type BrowserCaptchaSolveResultEvent as BrowserCaptchaSolveResultEvent,
|
|
1220
|
+
type BrowserCdpConnectEvent as BrowserCdpConnectEvent,
|
|
1221
|
+
type BrowserCdpDisconnectEvent as BrowserCdpDisconnectEvent,
|
|
1138
1222
|
type BrowserConsoleErrorEvent as BrowserConsoleErrorEvent,
|
|
1139
1223
|
type BrowserConsoleLogEvent as BrowserConsoleLogEvent,
|
|
1140
1224
|
type BrowserEventContext as BrowserEventContext,
|
|
@@ -1143,6 +1227,8 @@ export declare namespace Browsers {
|
|
|
1143
1227
|
type BrowserInteractionClickEvent as BrowserInteractionClickEvent,
|
|
1144
1228
|
type BrowserInteractionKeyEvent as BrowserInteractionKeyEvent,
|
|
1145
1229
|
type BrowserInteractionScrollSettledEvent as BrowserInteractionScrollSettledEvent,
|
|
1230
|
+
type BrowserLiveViewConnectEvent as BrowserLiveViewConnectEvent,
|
|
1231
|
+
type BrowserLiveViewDisconnectEvent as BrowserLiveViewDisconnectEvent,
|
|
1146
1232
|
type BrowserMonitorDisconnectedEvent as BrowserMonitorDisconnectedEvent,
|
|
1147
1233
|
type BrowserMonitorInitFailedEvent as BrowserMonitorInitFailedEvent,
|
|
1148
1234
|
type BrowserMonitorReconnectFailedEvent as BrowserMonitorReconnectFailedEvent,
|
|
@@ -1160,6 +1246,8 @@ export declare namespace Browsers {
|
|
|
1160
1246
|
type BrowserPageNavigationEvent as BrowserPageNavigationEvent,
|
|
1161
1247
|
type BrowserPageNavigationSettledEvent as BrowserPageNavigationSettledEvent,
|
|
1162
1248
|
type BrowserPageTabOpenedEvent as BrowserPageTabOpenedEvent,
|
|
1249
|
+
type BrowserServiceCrashedEvent as BrowserServiceCrashedEvent,
|
|
1250
|
+
type BrowserSystemOomKillEvent as BrowserSystemOomKillEvent,
|
|
1163
1251
|
type BrowserTelemetryCategoriesConfig as BrowserTelemetryCategoriesConfig,
|
|
1164
1252
|
type BrowserTelemetryCategoryConfig as BrowserTelemetryCategoryConfig,
|
|
1165
1253
|
type BrowserTelemetryConfig as BrowserTelemetryConfig,
|
|
@@ -5,6 +5,7 @@ export {
|
|
|
5
5
|
type BrowserPoolRef,
|
|
6
6
|
type BrowserUsage,
|
|
7
7
|
type Profile,
|
|
8
|
+
type Tags,
|
|
8
9
|
type BrowserCreateResponse,
|
|
9
10
|
type BrowserRetrieveResponse,
|
|
10
11
|
type BrowserUpdateResponse,
|
|
@@ -81,7 +82,11 @@ export {
|
|
|
81
82
|
} from './replays';
|
|
82
83
|
export {
|
|
83
84
|
Telemetry,
|
|
85
|
+
type BrowserAPICallEvent,
|
|
84
86
|
type BrowserCallStack,
|
|
87
|
+
type BrowserCaptchaSolveResultEvent,
|
|
88
|
+
type BrowserCdpConnectEvent,
|
|
89
|
+
type BrowserCdpDisconnectEvent,
|
|
85
90
|
type BrowserConsoleErrorEvent,
|
|
86
91
|
type BrowserConsoleLogEvent,
|
|
87
92
|
type BrowserEventContext,
|
|
@@ -90,6 +95,8 @@ export {
|
|
|
90
95
|
type BrowserInteractionClickEvent,
|
|
91
96
|
type BrowserInteractionKeyEvent,
|
|
92
97
|
type BrowserInteractionScrollSettledEvent,
|
|
98
|
+
type BrowserLiveViewConnectEvent,
|
|
99
|
+
type BrowserLiveViewDisconnectEvent,
|
|
93
100
|
type BrowserMonitorDisconnectedEvent,
|
|
94
101
|
type BrowserMonitorInitFailedEvent,
|
|
95
102
|
type BrowserMonitorReconnectFailedEvent,
|
|
@@ -107,6 +114,8 @@ export {
|
|
|
107
114
|
type BrowserPageNavigationEvent,
|
|
108
115
|
type BrowserPageNavigationSettledEvent,
|
|
109
116
|
type BrowserPageTabOpenedEvent,
|
|
117
|
+
type BrowserServiceCrashedEvent,
|
|
118
|
+
type BrowserSystemOomKillEvent,
|
|
110
119
|
type BrowserTelemetryCategoriesConfig,
|
|
111
120
|
type BrowserTelemetryCategoryConfig,
|
|
112
121
|
type BrowserTelemetryConfig,
|