@xata.io/client 0.0.0-next.vc4b43f48acaca8f0e2d23ace50c0f4683e20d720 → 0.0.0-next.vd7e5c87cf2e817f537accd1ef38495f2fac9b906
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/.turbo/turbo-add-version.log +1 -1
- package/.turbo/turbo-build.log +4 -4
- package/CHANGELOG.md +11 -3
- package/dist/index.cjs +2229 -221
- package/dist/index.cjs.map +1 -1
- package/dist/index.d.ts +4638 -4042
- package/dist/index.mjs +2227 -218
- package/dist/index.mjs.map +1 -1
- package/package.json +1 -1
package/dist/index.mjs
CHANGED
@@ -22,6 +22,1814 @@ const TraceAttributes = {
|
|
22
22
|
CLOUDFLARE_RAY_ID: "cf.ray"
|
23
23
|
};
|
24
24
|
|
25
|
+
const lookup = [];
|
26
|
+
const revLookup = [];
|
27
|
+
const code = "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/";
|
28
|
+
for (let i = 0, len = code.length; i < len; ++i) {
|
29
|
+
lookup[i] = code[i];
|
30
|
+
revLookup[code.charCodeAt(i)] = i;
|
31
|
+
}
|
32
|
+
revLookup["-".charCodeAt(0)] = 62;
|
33
|
+
revLookup["_".charCodeAt(0)] = 63;
|
34
|
+
function getLens(b64) {
|
35
|
+
const len = b64.length;
|
36
|
+
if (len % 4 > 0) {
|
37
|
+
throw new Error("Invalid string. Length must be a multiple of 4");
|
38
|
+
}
|
39
|
+
let validLen = b64.indexOf("=");
|
40
|
+
if (validLen === -1)
|
41
|
+
validLen = len;
|
42
|
+
const placeHoldersLen = validLen === len ? 0 : 4 - validLen % 4;
|
43
|
+
return [validLen, placeHoldersLen];
|
44
|
+
}
|
45
|
+
function _byteLength(_b64, validLen, placeHoldersLen) {
|
46
|
+
return (validLen + placeHoldersLen) * 3 / 4 - placeHoldersLen;
|
47
|
+
}
|
48
|
+
function toByteArray(b64) {
|
49
|
+
let tmp;
|
50
|
+
const lens = getLens(b64);
|
51
|
+
const validLen = lens[0];
|
52
|
+
const placeHoldersLen = lens[1];
|
53
|
+
const arr = new Uint8Array(_byteLength(b64, validLen, placeHoldersLen));
|
54
|
+
let curByte = 0;
|
55
|
+
const len = placeHoldersLen > 0 ? validLen - 4 : validLen;
|
56
|
+
let i;
|
57
|
+
for (i = 0; i < len; i += 4) {
|
58
|
+
tmp = revLookup[b64.charCodeAt(i)] << 18 | revLookup[b64.charCodeAt(i + 1)] << 12 | revLookup[b64.charCodeAt(i + 2)] << 6 | revLookup[b64.charCodeAt(i + 3)];
|
59
|
+
arr[curByte++] = tmp >> 16 & 255;
|
60
|
+
arr[curByte++] = tmp >> 8 & 255;
|
61
|
+
arr[curByte++] = tmp & 255;
|
62
|
+
}
|
63
|
+
if (placeHoldersLen === 2) {
|
64
|
+
tmp = revLookup[b64.charCodeAt(i)] << 2 | revLookup[b64.charCodeAt(i + 1)] >> 4;
|
65
|
+
arr[curByte++] = tmp & 255;
|
66
|
+
}
|
67
|
+
if (placeHoldersLen === 1) {
|
68
|
+
tmp = revLookup[b64.charCodeAt(i)] << 10 | revLookup[b64.charCodeAt(i + 1)] << 4 | revLookup[b64.charCodeAt(i + 2)] >> 2;
|
69
|
+
arr[curByte++] = tmp >> 8 & 255;
|
70
|
+
arr[curByte++] = tmp & 255;
|
71
|
+
}
|
72
|
+
return arr;
|
73
|
+
}
|
74
|
+
function tripletToBase64(num) {
|
75
|
+
return lookup[num >> 18 & 63] + lookup[num >> 12 & 63] + lookup[num >> 6 & 63] + lookup[num & 63];
|
76
|
+
}
|
77
|
+
function encodeChunk(uint8, start, end) {
|
78
|
+
let tmp;
|
79
|
+
const output = [];
|
80
|
+
for (let i = start; i < end; i += 3) {
|
81
|
+
tmp = (uint8[i] << 16 & 16711680) + (uint8[i + 1] << 8 & 65280) + (uint8[i + 2] & 255);
|
82
|
+
output.push(tripletToBase64(tmp));
|
83
|
+
}
|
84
|
+
return output.join("");
|
85
|
+
}
|
86
|
+
function fromByteArray(uint8) {
|
87
|
+
let tmp;
|
88
|
+
const len = uint8.length;
|
89
|
+
const extraBytes = len % 3;
|
90
|
+
const parts = [];
|
91
|
+
const maxChunkLength = 16383;
|
92
|
+
for (let i = 0, len2 = len - extraBytes; i < len2; i += maxChunkLength) {
|
93
|
+
parts.push(encodeChunk(uint8, i, i + maxChunkLength > len2 ? len2 : i + maxChunkLength));
|
94
|
+
}
|
95
|
+
if (extraBytes === 1) {
|
96
|
+
tmp = uint8[len - 1];
|
97
|
+
parts.push(lookup[tmp >> 2] + lookup[tmp << 4 & 63] + "==");
|
98
|
+
} else if (extraBytes === 2) {
|
99
|
+
tmp = (uint8[len - 2] << 8) + uint8[len - 1];
|
100
|
+
parts.push(lookup[tmp >> 10] + lookup[tmp >> 4 & 63] + lookup[tmp << 2 & 63] + "=");
|
101
|
+
}
|
102
|
+
return parts.join("");
|
103
|
+
}
|
104
|
+
|
105
|
+
const K_MAX_LENGTH = 2147483647;
|
106
|
+
const MAX_ARGUMENTS_LENGTH = 4096;
|
107
|
+
class Buffer extends Uint8Array {
|
108
|
+
/**
|
109
|
+
* Constructs a new `Buffer` instance.
|
110
|
+
*
|
111
|
+
* @param value
|
112
|
+
* @param encodingOrOffset
|
113
|
+
* @param length
|
114
|
+
*/
|
115
|
+
constructor(value, encodingOrOffset, length) {
|
116
|
+
if (typeof value === "number") {
|
117
|
+
if (typeof encodingOrOffset === "string") {
|
118
|
+
throw new TypeError("The first argument must be of type string, received type number");
|
119
|
+
}
|
120
|
+
if (value < 0) {
|
121
|
+
throw new RangeError("The buffer size cannot be negative");
|
122
|
+
}
|
123
|
+
super(value < 0 ? 0 : Buffer._checked(value) | 0);
|
124
|
+
} else if (typeof value === "string") {
|
125
|
+
if (typeof encodingOrOffset !== "string") {
|
126
|
+
encodingOrOffset = "utf8";
|
127
|
+
}
|
128
|
+
if (!Buffer.isEncoding(encodingOrOffset)) {
|
129
|
+
throw new TypeError("Unknown encoding: " + encodingOrOffset);
|
130
|
+
}
|
131
|
+
const length2 = Buffer.byteLength(value, encodingOrOffset) | 0;
|
132
|
+
super(length2);
|
133
|
+
const written = this.write(value, 0, this.length, encodingOrOffset);
|
134
|
+
if (written !== length2) {
|
135
|
+
throw new TypeError(
|
136
|
+
"Number of bytes written did not match expected length (wrote " + written + ", expected " + length2 + ")"
|
137
|
+
);
|
138
|
+
}
|
139
|
+
} else if (ArrayBuffer.isView(value)) {
|
140
|
+
if (Buffer._isInstance(value, Uint8Array)) {
|
141
|
+
const copy = new Uint8Array(value);
|
142
|
+
const array = copy.buffer;
|
143
|
+
const byteOffset = copy.byteOffset;
|
144
|
+
const length2 = copy.byteLength;
|
145
|
+
if (byteOffset < 0 || array.byteLength < byteOffset) {
|
146
|
+
throw new RangeError("offset is outside of buffer bounds");
|
147
|
+
}
|
148
|
+
if (array.byteLength < byteOffset + (length2 || 0)) {
|
149
|
+
throw new RangeError("length is outside of buffer bounds");
|
150
|
+
}
|
151
|
+
super(new Uint8Array(array, byteOffset, length2));
|
152
|
+
} else {
|
153
|
+
const array = value;
|
154
|
+
const length2 = array.length < 0 ? 0 : Buffer._checked(array.length) | 0;
|
155
|
+
super(new Uint8Array(length2));
|
156
|
+
for (let i = 0; i < length2; i++) {
|
157
|
+
this[i] = array[i] & 255;
|
158
|
+
}
|
159
|
+
}
|
160
|
+
} else if (value == null) {
|
161
|
+
throw new TypeError(
|
162
|
+
"The first argument must be one of type string, Buffer, ArrayBuffer, Array, or Array-like Object. Received type " + typeof value
|
163
|
+
);
|
164
|
+
} else if (Buffer._isInstance(value, ArrayBuffer) || value && Buffer._isInstance(value.buffer, ArrayBuffer)) {
|
165
|
+
const array = value;
|
166
|
+
const byteOffset = encodingOrOffset;
|
167
|
+
if (byteOffset < 0 || array.byteLength < byteOffset) {
|
168
|
+
throw new RangeError("offset is outside of buffer bounds");
|
169
|
+
}
|
170
|
+
if (array.byteLength < byteOffset + (length || 0)) {
|
171
|
+
throw new RangeError("length is outside of buffer bounds");
|
172
|
+
}
|
173
|
+
super(new Uint8Array(array, byteOffset, length));
|
174
|
+
} else if (Array.isArray(value)) {
|
175
|
+
const array = value;
|
176
|
+
const length2 = array.length < 0 ? 0 : Buffer._checked(array.length) | 0;
|
177
|
+
super(new Uint8Array(length2));
|
178
|
+
for (let i = 0; i < length2; i++) {
|
179
|
+
this[i] = array[i] & 255;
|
180
|
+
}
|
181
|
+
} else {
|
182
|
+
throw new TypeError("Unable to determine the correct way to allocate buffer for type " + typeof value);
|
183
|
+
}
|
184
|
+
}
|
185
|
+
/**
|
186
|
+
* Return JSON representation of the buffer.
|
187
|
+
*/
|
188
|
+
toJSON() {
|
189
|
+
return {
|
190
|
+
type: "Buffer",
|
191
|
+
data: Array.prototype.slice.call(this)
|
192
|
+
};
|
193
|
+
}
|
194
|
+
/**
|
195
|
+
* Writes `string` to the buffer at `offset` according to the character encoding in `encoding`. The `length`
|
196
|
+
* parameter is the number of bytes to write. If the buffer does not contain enough space to fit the entire string,
|
197
|
+
* only part of `string` will be written. However, partially encoded characters will not be written.
|
198
|
+
*
|
199
|
+
* @param string String to write to `buf`.
|
200
|
+
* @param offset Number of bytes to skip before starting to write `string`. Default: `0`.
|
201
|
+
* @param length Maximum number of bytes to write: Default: `buf.length - offset`.
|
202
|
+
* @param encoding The character encoding of `string`. Default: `utf8`.
|
203
|
+
*/
|
204
|
+
write(string, offset, length, encoding) {
|
205
|
+
if (typeof offset === "undefined") {
|
206
|
+
encoding = "utf8";
|
207
|
+
length = this.length;
|
208
|
+
offset = 0;
|
209
|
+
} else if (typeof length === "undefined" && typeof offset === "string") {
|
210
|
+
encoding = offset;
|
211
|
+
length = this.length;
|
212
|
+
offset = 0;
|
213
|
+
} else if (typeof offset === "number" && isFinite(offset)) {
|
214
|
+
offset = offset >>> 0;
|
215
|
+
if (typeof length === "number" && isFinite(length)) {
|
216
|
+
length = length >>> 0;
|
217
|
+
encoding ?? (encoding = "utf8");
|
218
|
+
} else if (typeof length === "string") {
|
219
|
+
encoding = length;
|
220
|
+
length = void 0;
|
221
|
+
}
|
222
|
+
} else {
|
223
|
+
throw new Error("Buffer.write(string, encoding, offset[, length]) is no longer supported");
|
224
|
+
}
|
225
|
+
const remaining = this.length - offset;
|
226
|
+
if (typeof length === "undefined" || length > remaining) {
|
227
|
+
length = remaining;
|
228
|
+
}
|
229
|
+
if (string.length > 0 && (length < 0 || offset < 0) || offset > this.length) {
|
230
|
+
throw new RangeError("Attempt to write outside buffer bounds");
|
231
|
+
}
|
232
|
+
encoding || (encoding = "utf8");
|
233
|
+
switch (Buffer._getEncoding(encoding)) {
|
234
|
+
case "hex":
|
235
|
+
return Buffer._hexWrite(this, string, offset, length);
|
236
|
+
case "utf8":
|
237
|
+
return Buffer._utf8Write(this, string, offset, length);
|
238
|
+
case "ascii":
|
239
|
+
case "latin1":
|
240
|
+
case "binary":
|
241
|
+
return Buffer._asciiWrite(this, string, offset, length);
|
242
|
+
case "ucs2":
|
243
|
+
case "utf16le":
|
244
|
+
return Buffer._ucs2Write(this, string, offset, length);
|
245
|
+
case "base64":
|
246
|
+
return Buffer._base64Write(this, string, offset, length);
|
247
|
+
}
|
248
|
+
}
|
249
|
+
/**
|
250
|
+
* Decodes the buffer to a string according to the specified character encoding.
|
251
|
+
* Passing `start` and `end` will decode only a subset of the buffer.
|
252
|
+
*
|
253
|
+
* Note that if the encoding is `utf8` and a byte sequence in the input is not valid UTF-8, then each invalid byte
|
254
|
+
* will be replaced with `U+FFFD`.
|
255
|
+
*
|
256
|
+
* @param encoding
|
257
|
+
* @param start
|
258
|
+
* @param end
|
259
|
+
*/
|
260
|
+
toString(encoding, start, end) {
|
261
|
+
const length = this.length;
|
262
|
+
if (length === 0) {
|
263
|
+
return "";
|
264
|
+
}
|
265
|
+
if (arguments.length === 0) {
|
266
|
+
return Buffer._utf8Slice(this, 0, length);
|
267
|
+
}
|
268
|
+
if (typeof start === "undefined" || start < 0) {
|
269
|
+
start = 0;
|
270
|
+
}
|
271
|
+
if (start > this.length) {
|
272
|
+
return "";
|
273
|
+
}
|
274
|
+
if (typeof end === "undefined" || end > this.length) {
|
275
|
+
end = this.length;
|
276
|
+
}
|
277
|
+
if (end <= 0) {
|
278
|
+
return "";
|
279
|
+
}
|
280
|
+
end >>>= 0;
|
281
|
+
start >>>= 0;
|
282
|
+
if (end <= start) {
|
283
|
+
return "";
|
284
|
+
}
|
285
|
+
if (!encoding) {
|
286
|
+
encoding = "utf8";
|
287
|
+
}
|
288
|
+
switch (Buffer._getEncoding(encoding)) {
|
289
|
+
case "hex":
|
290
|
+
return Buffer._hexSlice(this, start, end);
|
291
|
+
case "utf8":
|
292
|
+
return Buffer._utf8Slice(this, start, end);
|
293
|
+
case "ascii":
|
294
|
+
return Buffer._asciiSlice(this, start, end);
|
295
|
+
case "latin1":
|
296
|
+
case "binary":
|
297
|
+
return Buffer._latin1Slice(this, start, end);
|
298
|
+
case "ucs2":
|
299
|
+
case "utf16le":
|
300
|
+
return Buffer._utf16leSlice(this, start, end);
|
301
|
+
case "base64":
|
302
|
+
return Buffer._base64Slice(this, start, end);
|
303
|
+
}
|
304
|
+
}
|
305
|
+
/**
|
306
|
+
* Returns true if this buffer's is equal to the provided buffer, meaning they share the same exact data.
|
307
|
+
*
|
308
|
+
* @param otherBuffer
|
309
|
+
*/
|
310
|
+
equals(otherBuffer) {
|
311
|
+
if (!Buffer.isBuffer(otherBuffer)) {
|
312
|
+
throw new TypeError("Argument must be a Buffer");
|
313
|
+
}
|
314
|
+
if (this === otherBuffer) {
|
315
|
+
return true;
|
316
|
+
}
|
317
|
+
return Buffer.compare(this, otherBuffer) === 0;
|
318
|
+
}
|
319
|
+
/**
|
320
|
+
* Compares the buffer with `otherBuffer` and returns a number indicating whether the buffer comes before, after,
|
321
|
+
* or is the same as `otherBuffer` in sort order. Comparison is based on the actual sequence of bytes in each
|
322
|
+
* buffer.
|
323
|
+
*
|
324
|
+
* - `0` is returned if `otherBuffer` is the same as this buffer.
|
325
|
+
* - `1` is returned if `otherBuffer` should come before this buffer when sorted.
|
326
|
+
* - `-1` is returned if `otherBuffer` should come after this buffer when sorted.
|
327
|
+
*
|
328
|
+
* @param otherBuffer The buffer to compare to.
|
329
|
+
* @param targetStart The offset within `otherBuffer` at which to begin comparison.
|
330
|
+
* @param targetEnd The offset within `otherBuffer` at which to end comparison (exclusive).
|
331
|
+
* @param sourceStart The offset within this buffer at which to begin comparison.
|
332
|
+
* @param sourceEnd The offset within this buffer at which to end the comparison (exclusive).
|
333
|
+
*/
|
334
|
+
compare(otherBuffer, targetStart, targetEnd, sourceStart, sourceEnd) {
|
335
|
+
if (Buffer._isInstance(otherBuffer, Uint8Array)) {
|
336
|
+
otherBuffer = Buffer.from(otherBuffer, otherBuffer.byteOffset, otherBuffer.byteLength);
|
337
|
+
}
|
338
|
+
if (!Buffer.isBuffer(otherBuffer)) {
|
339
|
+
throw new TypeError("Argument must be a Buffer or Uint8Array");
|
340
|
+
}
|
341
|
+
targetStart ?? (targetStart = 0);
|
342
|
+
targetEnd ?? (targetEnd = otherBuffer ? otherBuffer.length : 0);
|
343
|
+
sourceStart ?? (sourceStart = 0);
|
344
|
+
sourceEnd ?? (sourceEnd = this.length);
|
345
|
+
if (targetStart < 0 || targetEnd > otherBuffer.length || sourceStart < 0 || sourceEnd > this.length) {
|
346
|
+
throw new RangeError("Out of range index");
|
347
|
+
}
|
348
|
+
if (sourceStart >= sourceEnd && targetStart >= targetEnd) {
|
349
|
+
return 0;
|
350
|
+
}
|
351
|
+
if (sourceStart >= sourceEnd) {
|
352
|
+
return -1;
|
353
|
+
}
|
354
|
+
if (targetStart >= targetEnd) {
|
355
|
+
return 1;
|
356
|
+
}
|
357
|
+
targetStart >>>= 0;
|
358
|
+
targetEnd >>>= 0;
|
359
|
+
sourceStart >>>= 0;
|
360
|
+
sourceEnd >>>= 0;
|
361
|
+
if (this === otherBuffer) {
|
362
|
+
return 0;
|
363
|
+
}
|
364
|
+
let x = sourceEnd - sourceStart;
|
365
|
+
let y = targetEnd - targetStart;
|
366
|
+
const len = Math.min(x, y);
|
367
|
+
const thisCopy = this.slice(sourceStart, sourceEnd);
|
368
|
+
const targetCopy = otherBuffer.slice(targetStart, targetEnd);
|
369
|
+
for (let i = 0; i < len; ++i) {
|
370
|
+
if (thisCopy[i] !== targetCopy[i]) {
|
371
|
+
x = thisCopy[i];
|
372
|
+
y = targetCopy[i];
|
373
|
+
break;
|
374
|
+
}
|
375
|
+
}
|
376
|
+
if (x < y)
|
377
|
+
return -1;
|
378
|
+
if (y < x)
|
379
|
+
return 1;
|
380
|
+
return 0;
|
381
|
+
}
|
382
|
+
/**
|
383
|
+
* Copies data from a region of this buffer to a region in `targetBuffer`, even if the `targetBuffer` memory
|
384
|
+
* region overlaps with this buffer.
|
385
|
+
*
|
386
|
+
* @param targetBuffer The target buffer to copy into.
|
387
|
+
* @param targetStart The offset within `targetBuffer` at which to begin writing.
|
388
|
+
* @param sourceStart The offset within this buffer at which to begin copying.
|
389
|
+
* @param sourceEnd The offset within this buffer at which to end copying (exclusive).
|
390
|
+
*/
|
391
|
+
copy(targetBuffer, targetStart, sourceStart, sourceEnd) {
|
392
|
+
if (!Buffer.isBuffer(targetBuffer))
|
393
|
+
throw new TypeError("argument should be a Buffer");
|
394
|
+
if (!sourceStart)
|
395
|
+
sourceStart = 0;
|
396
|
+
if (!targetStart)
|
397
|
+
targetStart = 0;
|
398
|
+
if (!sourceEnd && sourceEnd !== 0)
|
399
|
+
sourceEnd = this.length;
|
400
|
+
if (targetStart >= targetBuffer.length)
|
401
|
+
targetStart = targetBuffer.length;
|
402
|
+
if (!targetStart)
|
403
|
+
targetStart = 0;
|
404
|
+
if (sourceEnd > 0 && sourceEnd < sourceStart)
|
405
|
+
sourceEnd = sourceStart;
|
406
|
+
if (sourceEnd === sourceStart)
|
407
|
+
return 0;
|
408
|
+
if (targetBuffer.length === 0 || this.length === 0)
|
409
|
+
return 0;
|
410
|
+
if (targetStart < 0) {
|
411
|
+
throw new RangeError("targetStart out of bounds");
|
412
|
+
}
|
413
|
+
if (sourceStart < 0 || sourceStart >= this.length)
|
414
|
+
throw new RangeError("Index out of range");
|
415
|
+
if (sourceEnd < 0)
|
416
|
+
throw new RangeError("sourceEnd out of bounds");
|
417
|
+
if (sourceEnd > this.length)
|
418
|
+
sourceEnd = this.length;
|
419
|
+
if (targetBuffer.length - targetStart < sourceEnd - sourceStart) {
|
420
|
+
sourceEnd = targetBuffer.length - targetStart + sourceStart;
|
421
|
+
}
|
422
|
+
const len = sourceEnd - sourceStart;
|
423
|
+
if (this === targetBuffer && typeof Uint8Array.prototype.copyWithin === "function") {
|
424
|
+
this.copyWithin(targetStart, sourceStart, sourceEnd);
|
425
|
+
} else {
|
426
|
+
Uint8Array.prototype.set.call(targetBuffer, this.subarray(sourceStart, sourceEnd), targetStart);
|
427
|
+
}
|
428
|
+
return len;
|
429
|
+
}
|
430
|
+
/**
|
431
|
+
* Returns a new `Buffer` that references the same memory as the original, but offset and cropped by the `start`
|
432
|
+
* and `end` indices. This is the same behavior as `buf.subarray()`.
|
433
|
+
*
|
434
|
+
* This method is not compatible with the `Uint8Array.prototype.slice()`, which is a superclass of Buffer. To copy
|
435
|
+
* the slice, use `Uint8Array.prototype.slice()`.
|
436
|
+
*
|
437
|
+
* @param start
|
438
|
+
* @param end
|
439
|
+
*/
|
440
|
+
slice(start, end) {
|
441
|
+
if (!start) {
|
442
|
+
start = 0;
|
443
|
+
}
|
444
|
+
const len = this.length;
|
445
|
+
start = ~~start;
|
446
|
+
end = end === void 0 ? len : ~~end;
|
447
|
+
if (start < 0) {
|
448
|
+
start += len;
|
449
|
+
if (start < 0) {
|
450
|
+
start = 0;
|
451
|
+
}
|
452
|
+
} else if (start > len) {
|
453
|
+
start = len;
|
454
|
+
}
|
455
|
+
if (end < 0) {
|
456
|
+
end += len;
|
457
|
+
if (end < 0) {
|
458
|
+
end = 0;
|
459
|
+
}
|
460
|
+
} else if (end > len) {
|
461
|
+
end = len;
|
462
|
+
}
|
463
|
+
if (end < start) {
|
464
|
+
end = start;
|
465
|
+
}
|
466
|
+
const newBuf = this.subarray(start, end);
|
467
|
+
Object.setPrototypeOf(newBuf, Buffer.prototype);
|
468
|
+
return newBuf;
|
469
|
+
}
|
470
|
+
/**
|
471
|
+
* Writes `byteLength` bytes of `value` to `buf` at the specified `offset` as little-endian. Supports up to 48 bits
|
472
|
+
* of accuracy. Behavior is undefined when value is anything other than an unsigned integer.
|
473
|
+
*
|
474
|
+
* @param value Number to write.
|
475
|
+
* @param offset Number of bytes to skip before starting to write.
|
476
|
+
* @param byteLength Number of bytes to write, between 0 and 6.
|
477
|
+
* @param noAssert
|
478
|
+
* @returns `offset` plus the number of bytes written.
|
479
|
+
*/
|
480
|
+
writeUIntLE(value, offset, byteLength, noAssert) {
|
481
|
+
value = +value;
|
482
|
+
offset = offset >>> 0;
|
483
|
+
byteLength = byteLength >>> 0;
|
484
|
+
if (!noAssert) {
|
485
|
+
const maxBytes = Math.pow(2, 8 * byteLength) - 1;
|
486
|
+
Buffer._checkInt(this, value, offset, byteLength, maxBytes, 0);
|
487
|
+
}
|
488
|
+
let mul = 1;
|
489
|
+
let i = 0;
|
490
|
+
this[offset] = value & 255;
|
491
|
+
while (++i < byteLength && (mul *= 256)) {
|
492
|
+
this[offset + i] = value / mul & 255;
|
493
|
+
}
|
494
|
+
return offset + byteLength;
|
495
|
+
}
|
496
|
+
/**
|
497
|
+
* Writes `byteLength` bytes of `value` to `buf` at the specified `offset` as big-endian. Supports up to 48 bits of
|
498
|
+
* accuracy. Behavior is undefined when `value` is anything other than an unsigned integer.
|
499
|
+
*
|
500
|
+
* @param value Number to write.
|
501
|
+
* @param offset Number of bytes to skip before starting to write.
|
502
|
+
* @param byteLength Number of bytes to write, between 0 and 6.
|
503
|
+
* @param noAssert
|
504
|
+
* @returns `offset` plus the number of bytes written.
|
505
|
+
*/
|
506
|
+
writeUIntBE(value, offset, byteLength, noAssert) {
|
507
|
+
value = +value;
|
508
|
+
offset = offset >>> 0;
|
509
|
+
byteLength = byteLength >>> 0;
|
510
|
+
if (!noAssert) {
|
511
|
+
const maxBytes = Math.pow(2, 8 * byteLength) - 1;
|
512
|
+
Buffer._checkInt(this, value, offset, byteLength, maxBytes, 0);
|
513
|
+
}
|
514
|
+
let i = byteLength - 1;
|
515
|
+
let mul = 1;
|
516
|
+
this[offset + i] = value & 255;
|
517
|
+
while (--i >= 0 && (mul *= 256)) {
|
518
|
+
this[offset + i] = value / mul & 255;
|
519
|
+
}
|
520
|
+
return offset + byteLength;
|
521
|
+
}
|
522
|
+
/**
|
523
|
+
* Writes `byteLength` bytes of `value` to `buf` at the specified `offset` as little-endian. Supports up to 48 bits
|
524
|
+
* of accuracy. Behavior is undefined when `value` is anything other than a signed integer.
|
525
|
+
*
|
526
|
+
* @param value Number to write.
|
527
|
+
* @param offset Number of bytes to skip before starting to write.
|
528
|
+
* @param byteLength Number of bytes to write, between 0 and 6.
|
529
|
+
* @param noAssert
|
530
|
+
* @returns `offset` plus the number of bytes written.
|
531
|
+
*/
|
532
|
+
writeIntLE(value, offset, byteLength, noAssert) {
|
533
|
+
value = +value;
|
534
|
+
offset = offset >>> 0;
|
535
|
+
if (!noAssert) {
|
536
|
+
const limit = Math.pow(2, 8 * byteLength - 1);
|
537
|
+
Buffer._checkInt(this, value, offset, byteLength, limit - 1, -limit);
|
538
|
+
}
|
539
|
+
let i = 0;
|
540
|
+
let mul = 1;
|
541
|
+
let sub = 0;
|
542
|
+
this[offset] = value & 255;
|
543
|
+
while (++i < byteLength && (mul *= 256)) {
|
544
|
+
if (value < 0 && sub === 0 && this[offset + i - 1] !== 0) {
|
545
|
+
sub = 1;
|
546
|
+
}
|
547
|
+
this[offset + i] = (value / mul >> 0) - sub & 255;
|
548
|
+
}
|
549
|
+
return offset + byteLength;
|
550
|
+
}
|
551
|
+
/**
|
552
|
+
* Writes `byteLength` bytes of `value` to `buf` at the specified `offset` as big-endian. Supports up to 48 bits
|
553
|
+
* of accuracy. Behavior is undefined when `value` is anything other than a signed integer.
|
554
|
+
*
|
555
|
+
* @param value Number to write.
|
556
|
+
* @param offset Number of bytes to skip before starting to write.
|
557
|
+
* @param byteLength Number of bytes to write, between 0 and 6.
|
558
|
+
* @param noAssert
|
559
|
+
* @returns `offset` plus the number of bytes written.
|
560
|
+
*/
|
561
|
+
writeIntBE(value, offset, byteLength, noAssert) {
|
562
|
+
value = +value;
|
563
|
+
offset = offset >>> 0;
|
564
|
+
if (!noAssert) {
|
565
|
+
const limit = Math.pow(2, 8 * byteLength - 1);
|
566
|
+
Buffer._checkInt(this, value, offset, byteLength, limit - 1, -limit);
|
567
|
+
}
|
568
|
+
let i = byteLength - 1;
|
569
|
+
let mul = 1;
|
570
|
+
let sub = 0;
|
571
|
+
this[offset + i] = value & 255;
|
572
|
+
while (--i >= 0 && (mul *= 256)) {
|
573
|
+
if (value < 0 && sub === 0 && this[offset + i + 1] !== 0) {
|
574
|
+
sub = 1;
|
575
|
+
}
|
576
|
+
this[offset + i] = (value / mul >> 0) - sub & 255;
|
577
|
+
}
|
578
|
+
return offset + byteLength;
|
579
|
+
}
|
580
|
+
/**
|
581
|
+
* Reads `byteLength` number of bytes from `buf` at the specified `offset` and interprets the result as an
|
582
|
+
* unsigned, little-endian integer supporting up to 48 bits of accuracy.
|
583
|
+
*
|
584
|
+
* @param offset Number of bytes to skip before starting to read.
|
585
|
+
* @param byteLength Number of bytes to read, between 0 and 6.
|
586
|
+
* @param noAssert
|
587
|
+
*/
|
588
|
+
readUIntLE(offset, byteLength, noAssert) {
|
589
|
+
offset = offset >>> 0;
|
590
|
+
byteLength = byteLength >>> 0;
|
591
|
+
if (!noAssert) {
|
592
|
+
Buffer._checkOffset(offset, byteLength, this.length);
|
593
|
+
}
|
594
|
+
let val = this[offset];
|
595
|
+
let mul = 1;
|
596
|
+
let i = 0;
|
597
|
+
while (++i < byteLength && (mul *= 256)) {
|
598
|
+
val += this[offset + i] * mul;
|
599
|
+
}
|
600
|
+
return val;
|
601
|
+
}
|
602
|
+
/**
|
603
|
+
* Reads `byteLength` number of bytes from `buf` at the specified `offset` and interprets the result as an
|
604
|
+
* unsigned, big-endian integer supporting up to 48 bits of accuracy.
|
605
|
+
*
|
606
|
+
* @param offset Number of bytes to skip before starting to read.
|
607
|
+
* @param byteLength Number of bytes to read, between 0 and 6.
|
608
|
+
* @param noAssert
|
609
|
+
*/
|
610
|
+
readUIntBE(offset, byteLength, noAssert) {
|
611
|
+
offset = offset >>> 0;
|
612
|
+
byteLength = byteLength >>> 0;
|
613
|
+
if (!noAssert) {
|
614
|
+
Buffer._checkOffset(offset, byteLength, this.length);
|
615
|
+
}
|
616
|
+
let val = this[offset + --byteLength];
|
617
|
+
let mul = 1;
|
618
|
+
while (byteLength > 0 && (mul *= 256)) {
|
619
|
+
val += this[offset + --byteLength] * mul;
|
620
|
+
}
|
621
|
+
return val;
|
622
|
+
}
|
623
|
+
/**
|
624
|
+
* Reads `byteLength` number of bytes from `buf` at the specified `offset` and interprets the result as a
|
625
|
+
* little-endian, two's complement signed value supporting up to 48 bits of accuracy.
|
626
|
+
*
|
627
|
+
* @param offset Number of bytes to skip before starting to read.
|
628
|
+
* @param byteLength Number of bytes to read, between 0 and 6.
|
629
|
+
* @param noAssert
|
630
|
+
*/
|
631
|
+
readIntLE(offset, byteLength, noAssert) {
|
632
|
+
offset = offset >>> 0;
|
633
|
+
byteLength = byteLength >>> 0;
|
634
|
+
if (!noAssert) {
|
635
|
+
Buffer._checkOffset(offset, byteLength, this.length);
|
636
|
+
}
|
637
|
+
let val = this[offset];
|
638
|
+
let mul = 1;
|
639
|
+
let i = 0;
|
640
|
+
while (++i < byteLength && (mul *= 256)) {
|
641
|
+
val += this[offset + i] * mul;
|
642
|
+
}
|
643
|
+
mul *= 128;
|
644
|
+
if (val >= mul) {
|
645
|
+
val -= Math.pow(2, 8 * byteLength);
|
646
|
+
}
|
647
|
+
return val;
|
648
|
+
}
|
649
|
+
/**
|
650
|
+
* Reads `byteLength` number of bytes from `buf` at the specified `offset` and interprets the result as a
|
651
|
+
* big-endian, two's complement signed value supporting up to 48 bits of accuracy.
|
652
|
+
*
|
653
|
+
* @param offset Number of bytes to skip before starting to read.
|
654
|
+
* @param byteLength Number of bytes to read, between 0 and 6.
|
655
|
+
* @param noAssert
|
656
|
+
*/
|
657
|
+
readIntBE(offset, byteLength, noAssert) {
|
658
|
+
offset = offset >>> 0;
|
659
|
+
byteLength = byteLength >>> 0;
|
660
|
+
if (!noAssert) {
|
661
|
+
Buffer._checkOffset(offset, byteLength, this.length);
|
662
|
+
}
|
663
|
+
let i = byteLength;
|
664
|
+
let mul = 1;
|
665
|
+
let val = this[offset + --i];
|
666
|
+
while (i > 0 && (mul *= 256)) {
|
667
|
+
val += this[offset + --i] * mul;
|
668
|
+
}
|
669
|
+
mul *= 128;
|
670
|
+
if (val >= mul) {
|
671
|
+
val -= Math.pow(2, 8 * byteLength);
|
672
|
+
}
|
673
|
+
return val;
|
674
|
+
}
|
675
|
+
/**
|
676
|
+
* Reads an unsigned 8-bit integer from `buf` at the specified `offset`.
|
677
|
+
*
|
678
|
+
* @param offset Number of bytes to skip before starting to read.
|
679
|
+
* @param noAssert
|
680
|
+
*/
|
681
|
+
readUInt8(offset, noAssert) {
|
682
|
+
offset = offset >>> 0;
|
683
|
+
if (!noAssert) {
|
684
|
+
Buffer._checkOffset(offset, 1, this.length);
|
685
|
+
}
|
686
|
+
return this[offset];
|
687
|
+
}
|
688
|
+
/**
|
689
|
+
* Reads an unsigned, little-endian 16-bit integer from `buf` at the specified `offset`.
|
690
|
+
*
|
691
|
+
* @param offset Number of bytes to skip before starting to read.
|
692
|
+
* @param noAssert
|
693
|
+
*/
|
694
|
+
readUInt16LE(offset, noAssert) {
|
695
|
+
offset = offset >>> 0;
|
696
|
+
if (!noAssert) {
|
697
|
+
Buffer._checkOffset(offset, 2, this.length);
|
698
|
+
}
|
699
|
+
return this[offset] | this[offset + 1] << 8;
|
700
|
+
}
|
701
|
+
/**
|
702
|
+
* Reads an unsigned, big-endian 16-bit integer from `buf` at the specified `offset`.
|
703
|
+
*
|
704
|
+
* @param offset Number of bytes to skip before starting to read.
|
705
|
+
* @param noAssert
|
706
|
+
*/
|
707
|
+
readUInt16BE(offset, noAssert) {
|
708
|
+
offset = offset >>> 0;
|
709
|
+
if (!noAssert) {
|
710
|
+
Buffer._checkOffset(offset, 2, this.length);
|
711
|
+
}
|
712
|
+
return this[offset] << 8 | this[offset + 1];
|
713
|
+
}
|
714
|
+
/**
|
715
|
+
* Reads an unsigned, little-endian 32-bit integer from `buf` at the specified `offset`.
|
716
|
+
*
|
717
|
+
* @param offset Number of bytes to skip before starting to read.
|
718
|
+
* @param noAssert
|
719
|
+
*/
|
720
|
+
readUInt32LE(offset, noAssert) {
|
721
|
+
offset = offset >>> 0;
|
722
|
+
if (!noAssert) {
|
723
|
+
Buffer._checkOffset(offset, 4, this.length);
|
724
|
+
}
|
725
|
+
return (this[offset] | this[offset + 1] << 8 | this[offset + 2] << 16) + this[offset + 3] * 16777216;
|
726
|
+
}
|
727
|
+
/**
|
728
|
+
* Reads an unsigned, big-endian 32-bit integer from `buf` at the specified `offset`.
|
729
|
+
*
|
730
|
+
* @param offset Number of bytes to skip before starting to read.
|
731
|
+
* @param noAssert
|
732
|
+
*/
|
733
|
+
readUInt32BE(offset, noAssert) {
|
734
|
+
offset = offset >>> 0;
|
735
|
+
if (!noAssert) {
|
736
|
+
Buffer._checkOffset(offset, 4, this.length);
|
737
|
+
}
|
738
|
+
return this[offset] * 16777216 + (this[offset + 1] << 16 | this[offset + 2] << 8 | this[offset + 3]);
|
739
|
+
}
|
740
|
+
/**
|
741
|
+
* Reads a signed 8-bit integer from `buf` at the specified `offset`. Integers read from a `Buffer` are interpreted
|
742
|
+
* as two's complement signed values.
|
743
|
+
*
|
744
|
+
* @param offset Number of bytes to skip before starting to read.
|
745
|
+
* @param noAssert
|
746
|
+
*/
|
747
|
+
readInt8(offset, noAssert) {
|
748
|
+
offset = offset >>> 0;
|
749
|
+
if (!noAssert) {
|
750
|
+
Buffer._checkOffset(offset, 1, this.length);
|
751
|
+
}
|
752
|
+
if (!(this[offset] & 128)) {
|
753
|
+
return this[offset];
|
754
|
+
}
|
755
|
+
return (255 - this[offset] + 1) * -1;
|
756
|
+
}
|
757
|
+
/**
|
758
|
+
* Reads a signed, little-endian 16-bit integer from `buf` at the specified `offset`. Integers read from a `Buffer`
|
759
|
+
* are interpreted as two's complement signed values.
|
760
|
+
*
|
761
|
+
* @param offset Number of bytes to skip before starting to read.
|
762
|
+
* @param noAssert
|
763
|
+
*/
|
764
|
+
readInt16LE(offset, noAssert) {
|
765
|
+
offset = offset >>> 0;
|
766
|
+
if (!noAssert) {
|
767
|
+
Buffer._checkOffset(offset, 2, this.length);
|
768
|
+
}
|
769
|
+
const val = this[offset] | this[offset + 1] << 8;
|
770
|
+
return val & 32768 ? val | 4294901760 : val;
|
771
|
+
}
|
772
|
+
/**
|
773
|
+
* Reads a signed, big-endian 16-bit integer from `buf` at the specified `offset`. Integers read from a `Buffer`
|
774
|
+
* are interpreted as two's complement signed values.
|
775
|
+
*
|
776
|
+
* @param offset Number of bytes to skip before starting to read.
|
777
|
+
* @param noAssert
|
778
|
+
*/
|
779
|
+
readInt16BE(offset, noAssert) {
|
780
|
+
offset = offset >>> 0;
|
781
|
+
if (!noAssert) {
|
782
|
+
Buffer._checkOffset(offset, 2, this.length);
|
783
|
+
}
|
784
|
+
const val = this[offset + 1] | this[offset] << 8;
|
785
|
+
return val & 32768 ? val | 4294901760 : val;
|
786
|
+
}
|
787
|
+
/**
|
788
|
+
* Reads a signed, little-endian 32-bit integer from `buf` at the specified `offset`. Integers read from a `Buffer`
|
789
|
+
* are interpreted as two's complement signed values.
|
790
|
+
*
|
791
|
+
* @param offset Number of bytes to skip before starting to read.
|
792
|
+
* @param noAssert
|
793
|
+
*/
|
794
|
+
readInt32LE(offset, noAssert) {
|
795
|
+
offset = offset >>> 0;
|
796
|
+
if (!noAssert) {
|
797
|
+
Buffer._checkOffset(offset, 4, this.length);
|
798
|
+
}
|
799
|
+
return this[offset] | this[offset + 1] << 8 | this[offset + 2] << 16 | this[offset + 3] << 24;
|
800
|
+
}
|
801
|
+
/**
|
802
|
+
* Reads a signed, big-endian 32-bit integer from `buf` at the specified `offset`. Integers read from a `Buffer`
|
803
|
+
* are interpreted as two's complement signed values.
|
804
|
+
*
|
805
|
+
* @param offset Number of bytes to skip before starting to read.
|
806
|
+
* @param noAssert
|
807
|
+
*/
|
808
|
+
readInt32BE(offset, noAssert) {
|
809
|
+
offset = offset >>> 0;
|
810
|
+
if (!noAssert) {
|
811
|
+
Buffer._checkOffset(offset, 4, this.length);
|
812
|
+
}
|
813
|
+
return this[offset] << 24 | this[offset + 1] << 16 | this[offset + 2] << 8 | this[offset + 3];
|
814
|
+
}
|
815
|
+
/**
|
816
|
+
* Interprets `buf` as an array of unsigned 16-bit integers and swaps the byte order in-place.
|
817
|
+
* Throws a `RangeError` if `buf.length` is not a multiple of 2.
|
818
|
+
*/
|
819
|
+
swap16() {
|
820
|
+
const len = this.length;
|
821
|
+
if (len % 2 !== 0) {
|
822
|
+
throw new RangeError("Buffer size must be a multiple of 16-bits");
|
823
|
+
}
|
824
|
+
for (let i = 0; i < len; i += 2) {
|
825
|
+
this._swap(this, i, i + 1);
|
826
|
+
}
|
827
|
+
return this;
|
828
|
+
}
|
829
|
+
/**
|
830
|
+
* Interprets `buf` as an array of unsigned 32-bit integers and swaps the byte order in-place.
|
831
|
+
* Throws a `RangeError` if `buf.length` is not a multiple of 4.
|
832
|
+
*/
|
833
|
+
swap32() {
|
834
|
+
const len = this.length;
|
835
|
+
if (len % 4 !== 0) {
|
836
|
+
throw new RangeError("Buffer size must be a multiple of 32-bits");
|
837
|
+
}
|
838
|
+
for (let i = 0; i < len; i += 4) {
|
839
|
+
this._swap(this, i, i + 3);
|
840
|
+
this._swap(this, i + 1, i + 2);
|
841
|
+
}
|
842
|
+
return this;
|
843
|
+
}
|
844
|
+
/**
|
845
|
+
* Interprets `buf` as an array of unsigned 64-bit integers and swaps the byte order in-place.
|
846
|
+
* Throws a `RangeError` if `buf.length` is not a multiple of 8.
|
847
|
+
*/
|
848
|
+
swap64() {
|
849
|
+
const len = this.length;
|
850
|
+
if (len % 8 !== 0) {
|
851
|
+
throw new RangeError("Buffer size must be a multiple of 64-bits");
|
852
|
+
}
|
853
|
+
for (let i = 0; i < len; i += 8) {
|
854
|
+
this._swap(this, i, i + 7);
|
855
|
+
this._swap(this, i + 1, i + 6);
|
856
|
+
this._swap(this, i + 2, i + 5);
|
857
|
+
this._swap(this, i + 3, i + 4);
|
858
|
+
}
|
859
|
+
return this;
|
860
|
+
}
|
861
|
+
/**
|
862
|
+
* Swaps two octets.
|
863
|
+
*
|
864
|
+
* @param b
|
865
|
+
* @param n
|
866
|
+
* @param m
|
867
|
+
*/
|
868
|
+
_swap(b, n, m) {
|
869
|
+
const i = b[n];
|
870
|
+
b[n] = b[m];
|
871
|
+
b[m] = i;
|
872
|
+
}
|
873
|
+
/**
|
874
|
+
* Writes `value` to `buf` at the specified `offset`. The `value` must be a valid unsigned 8-bit integer.
|
875
|
+
* Behavior is undefined when `value` is anything other than an unsigned 8-bit integer.
|
876
|
+
*
|
877
|
+
* @param value Number to write.
|
878
|
+
* @param offset Number of bytes to skip before starting to write.
|
879
|
+
* @param noAssert
|
880
|
+
* @returns `offset` plus the number of bytes written.
|
881
|
+
*/
|
882
|
+
writeUInt8(value, offset, noAssert) {
|
883
|
+
value = +value;
|
884
|
+
offset = offset >>> 0;
|
885
|
+
if (!noAssert) {
|
886
|
+
Buffer._checkInt(this, value, offset, 1, 255, 0);
|
887
|
+
}
|
888
|
+
this[offset] = value & 255;
|
889
|
+
return offset + 1;
|
890
|
+
}
|
891
|
+
/**
|
892
|
+
* Writes `value` to `buf` at the specified `offset` as little-endian. The `value` must be a valid unsigned 16-bit
|
893
|
+
* integer. Behavior is undefined when `value` is anything other than an unsigned 16-bit integer.
|
894
|
+
*
|
895
|
+
* @param value Number to write.
|
896
|
+
* @param offset Number of bytes to skip before starting to write.
|
897
|
+
* @param noAssert
|
898
|
+
* @returns `offset` plus the number of bytes written.
|
899
|
+
*/
|
900
|
+
writeUInt16LE(value, offset, noAssert) {
|
901
|
+
value = +value;
|
902
|
+
offset = offset >>> 0;
|
903
|
+
if (!noAssert) {
|
904
|
+
Buffer._checkInt(this, value, offset, 2, 65535, 0);
|
905
|
+
}
|
906
|
+
this[offset] = value & 255;
|
907
|
+
this[offset + 1] = value >>> 8;
|
908
|
+
return offset + 2;
|
909
|
+
}
|
910
|
+
/**
|
911
|
+
* Writes `value` to `buf` at the specified `offset` as big-endian. The `value` must be a valid unsigned 16-bit
|
912
|
+
* integer. Behavior is undefined when `value` is anything other than an unsigned 16-bit integer.
|
913
|
+
*
|
914
|
+
* @param value Number to write.
|
915
|
+
* @param offset Number of bytes to skip before starting to write.
|
916
|
+
* @param noAssert
|
917
|
+
* @returns `offset` plus the number of bytes written.
|
918
|
+
*/
|
919
|
+
writeUInt16BE(value, offset, noAssert) {
|
920
|
+
value = +value;
|
921
|
+
offset = offset >>> 0;
|
922
|
+
if (!noAssert) {
|
923
|
+
Buffer._checkInt(this, value, offset, 2, 65535, 0);
|
924
|
+
}
|
925
|
+
this[offset] = value >>> 8;
|
926
|
+
this[offset + 1] = value & 255;
|
927
|
+
return offset + 2;
|
928
|
+
}
|
929
|
+
/**
|
930
|
+
* Writes `value` to `buf` at the specified `offset` as little-endian. The `value` must be a valid unsigned 32-bit
|
931
|
+
* integer. Behavior is undefined when `value` is anything other than an unsigned 32-bit integer.
|
932
|
+
*
|
933
|
+
* @param value Number to write.
|
934
|
+
* @param offset Number of bytes to skip before starting to write.
|
935
|
+
* @param noAssert
|
936
|
+
* @returns `offset` plus the number of bytes written.
|
937
|
+
*/
|
938
|
+
writeUInt32LE(value, offset, noAssert) {
|
939
|
+
value = +value;
|
940
|
+
offset = offset >>> 0;
|
941
|
+
if (!noAssert) {
|
942
|
+
Buffer._checkInt(this, value, offset, 4, 4294967295, 0);
|
943
|
+
}
|
944
|
+
this[offset + 3] = value >>> 24;
|
945
|
+
this[offset + 2] = value >>> 16;
|
946
|
+
this[offset + 1] = value >>> 8;
|
947
|
+
this[offset] = value & 255;
|
948
|
+
return offset + 4;
|
949
|
+
}
|
950
|
+
/**
|
951
|
+
* Writes `value` to `buf` at the specified `offset` as big-endian. The `value` must be a valid unsigned 32-bit
|
952
|
+
* integer. Behavior is undefined when `value` is anything other than an unsigned 32-bit integer.
|
953
|
+
*
|
954
|
+
* @param value Number to write.
|
955
|
+
* @param offset Number of bytes to skip before starting to write.
|
956
|
+
* @param noAssert
|
957
|
+
* @returns `offset` plus the number of bytes written.
|
958
|
+
*/
|
959
|
+
writeUInt32BE(value, offset, noAssert) {
|
960
|
+
value = +value;
|
961
|
+
offset = offset >>> 0;
|
962
|
+
if (!noAssert) {
|
963
|
+
Buffer._checkInt(this, value, offset, 4, 4294967295, 0);
|
964
|
+
}
|
965
|
+
this[offset] = value >>> 24;
|
966
|
+
this[offset + 1] = value >>> 16;
|
967
|
+
this[offset + 2] = value >>> 8;
|
968
|
+
this[offset + 3] = value & 255;
|
969
|
+
return offset + 4;
|
970
|
+
}
|
971
|
+
/**
|
972
|
+
* Writes `value` to `buf` at the specified `offset`. The `value` must be a valid signed 8-bit integer.
|
973
|
+
* Behavior is undefined when `value` is anything other than a signed 8-bit integer.
|
974
|
+
*
|
975
|
+
* @param value Number to write.
|
976
|
+
* @param offset Number of bytes to skip before starting to write.
|
977
|
+
* @param noAssert
|
978
|
+
* @returns `offset` plus the number of bytes written.
|
979
|
+
*/
|
980
|
+
writeInt8(value, offset, noAssert) {
|
981
|
+
value = +value;
|
982
|
+
offset = offset >>> 0;
|
983
|
+
if (!noAssert) {
|
984
|
+
Buffer._checkInt(this, value, offset, 1, 127, -128);
|
985
|
+
}
|
986
|
+
if (value < 0) {
|
987
|
+
value = 255 + value + 1;
|
988
|
+
}
|
989
|
+
this[offset] = value & 255;
|
990
|
+
return offset + 1;
|
991
|
+
}
|
992
|
+
/**
|
993
|
+
* Writes `value` to `buf` at the specified `offset` as little-endian. The `value` must be a valid signed 16-bit
|
994
|
+
* integer. Behavior is undefined when `value` is anything other than a signed 16-bit integer.
|
995
|
+
*
|
996
|
+
* @param value Number to write.
|
997
|
+
* @param offset Number of bytes to skip before starting to write.
|
998
|
+
* @param noAssert
|
999
|
+
* @returns `offset` plus the number of bytes written.
|
1000
|
+
*/
|
1001
|
+
writeInt16LE(value, offset, noAssert) {
|
1002
|
+
value = +value;
|
1003
|
+
offset = offset >>> 0;
|
1004
|
+
if (!noAssert) {
|
1005
|
+
Buffer._checkInt(this, value, offset, 2, 32767, -32768);
|
1006
|
+
}
|
1007
|
+
this[offset] = value & 255;
|
1008
|
+
this[offset + 1] = value >>> 8;
|
1009
|
+
return offset + 2;
|
1010
|
+
}
|
1011
|
+
/**
|
1012
|
+
* Writes `value` to `buf` at the specified `offset` as big-endian. The `value` must be a valid signed 16-bit
|
1013
|
+
* integer. Behavior is undefined when `value` is anything other than a signed 16-bit integer.
|
1014
|
+
*
|
1015
|
+
* @param value Number to write.
|
1016
|
+
* @param offset Number of bytes to skip before starting to write.
|
1017
|
+
* @param noAssert
|
1018
|
+
* @returns `offset` plus the number of bytes written.
|
1019
|
+
*/
|
1020
|
+
writeInt16BE(value, offset, noAssert) {
|
1021
|
+
value = +value;
|
1022
|
+
offset = offset >>> 0;
|
1023
|
+
if (!noAssert) {
|
1024
|
+
Buffer._checkInt(this, value, offset, 2, 32767, -32768);
|
1025
|
+
}
|
1026
|
+
this[offset] = value >>> 8;
|
1027
|
+
this[offset + 1] = value & 255;
|
1028
|
+
return offset + 2;
|
1029
|
+
}
|
1030
|
+
/**
|
1031
|
+
* Writes `value` to `buf` at the specified `offset` as little-endian. The `value` must be a valid signed 32-bit
|
1032
|
+
* integer. Behavior is undefined when `value` is anything other than a signed 32-bit integer.
|
1033
|
+
*
|
1034
|
+
* @param value Number to write.
|
1035
|
+
* @param offset Number of bytes to skip before starting to write.
|
1036
|
+
* @param noAssert
|
1037
|
+
* @returns `offset` plus the number of bytes written.
|
1038
|
+
*/
|
1039
|
+
writeInt32LE(value, offset, noAssert) {
|
1040
|
+
value = +value;
|
1041
|
+
offset = offset >>> 0;
|
1042
|
+
if (!noAssert) {
|
1043
|
+
Buffer._checkInt(this, value, offset, 4, 2147483647, -2147483648);
|
1044
|
+
}
|
1045
|
+
this[offset] = value & 255;
|
1046
|
+
this[offset + 1] = value >>> 8;
|
1047
|
+
this[offset + 2] = value >>> 16;
|
1048
|
+
this[offset + 3] = value >>> 24;
|
1049
|
+
return offset + 4;
|
1050
|
+
}
|
1051
|
+
/**
|
1052
|
+
* Writes `value` to `buf` at the specified `offset` as big-endian. The `value` must be a valid signed 32-bit
|
1053
|
+
* integer. Behavior is undefined when `value` is anything other than a signed 32-bit integer.
|
1054
|
+
*
|
1055
|
+
* @param value Number to write.
|
1056
|
+
* @param offset Number of bytes to skip before starting to write.
|
1057
|
+
* @param noAssert
|
1058
|
+
* @returns `offset` plus the number of bytes written.
|
1059
|
+
*/
|
1060
|
+
writeInt32BE(value, offset, noAssert) {
|
1061
|
+
value = +value;
|
1062
|
+
offset = offset >>> 0;
|
1063
|
+
if (!noAssert) {
|
1064
|
+
Buffer._checkInt(this, value, offset, 4, 2147483647, -2147483648);
|
1065
|
+
}
|
1066
|
+
if (value < 0) {
|
1067
|
+
value = 4294967295 + value + 1;
|
1068
|
+
}
|
1069
|
+
this[offset] = value >>> 24;
|
1070
|
+
this[offset + 1] = value >>> 16;
|
1071
|
+
this[offset + 2] = value >>> 8;
|
1072
|
+
this[offset + 3] = value & 255;
|
1073
|
+
return offset + 4;
|
1074
|
+
}
|
1075
|
+
/**
|
1076
|
+
* Fills `buf` with the specified `value`. If the `offset` and `end` are not given, the entire `buf` will be
|
1077
|
+
* filled. The `value` is coerced to a `uint32` value if it is not a string, `Buffer`, or integer. If the resulting
|
1078
|
+
* integer is greater than `255` (decimal), then `buf` will be filled with `value & 255`.
|
1079
|
+
*
|
1080
|
+
* If the final write of a `fill()` operation falls on a multi-byte character, then only the bytes of that
|
1081
|
+
* character that fit into `buf` are written.
|
1082
|
+
*
|
1083
|
+
* If `value` contains invalid characters, it is truncated; if no valid fill data remains, an exception is thrown.
|
1084
|
+
*
|
1085
|
+
* @param value
|
1086
|
+
* @param encoding
|
1087
|
+
*/
|
1088
|
+
fill(value, offset, end, encoding) {
|
1089
|
+
if (typeof value === "string") {
|
1090
|
+
if (typeof offset === "string") {
|
1091
|
+
encoding = offset;
|
1092
|
+
offset = 0;
|
1093
|
+
end = this.length;
|
1094
|
+
} else if (typeof end === "string") {
|
1095
|
+
encoding = end;
|
1096
|
+
end = this.length;
|
1097
|
+
}
|
1098
|
+
if (encoding !== void 0 && typeof encoding !== "string") {
|
1099
|
+
throw new TypeError("encoding must be a string");
|
1100
|
+
}
|
1101
|
+
if (typeof encoding === "string" && !Buffer.isEncoding(encoding)) {
|
1102
|
+
throw new TypeError("Unknown encoding: " + encoding);
|
1103
|
+
}
|
1104
|
+
if (value.length === 1) {
|
1105
|
+
const code = value.charCodeAt(0);
|
1106
|
+
if (encoding === "utf8" && code < 128) {
|
1107
|
+
value = code;
|
1108
|
+
}
|
1109
|
+
}
|
1110
|
+
} else if (typeof value === "number") {
|
1111
|
+
value = value & 255;
|
1112
|
+
} else if (typeof value === "boolean") {
|
1113
|
+
value = Number(value);
|
1114
|
+
}
|
1115
|
+
offset ?? (offset = 0);
|
1116
|
+
end ?? (end = this.length);
|
1117
|
+
if (offset < 0 || this.length < offset || this.length < end) {
|
1118
|
+
throw new RangeError("Out of range index");
|
1119
|
+
}
|
1120
|
+
if (end <= offset) {
|
1121
|
+
return this;
|
1122
|
+
}
|
1123
|
+
offset = offset >>> 0;
|
1124
|
+
end = end === void 0 ? this.length : end >>> 0;
|
1125
|
+
value || (value = 0);
|
1126
|
+
let i;
|
1127
|
+
if (typeof value === "number") {
|
1128
|
+
for (i = offset; i < end; ++i) {
|
1129
|
+
this[i] = value;
|
1130
|
+
}
|
1131
|
+
} else {
|
1132
|
+
const bytes = Buffer.isBuffer(value) ? value : Buffer.from(value, encoding);
|
1133
|
+
const len = bytes.length;
|
1134
|
+
if (len === 0) {
|
1135
|
+
throw new TypeError('The value "' + value + '" is invalid for argument "value"');
|
1136
|
+
}
|
1137
|
+
for (i = 0; i < end - offset; ++i) {
|
1138
|
+
this[i + offset] = bytes[i % len];
|
1139
|
+
}
|
1140
|
+
}
|
1141
|
+
return this;
|
1142
|
+
}
|
1143
|
+
/**
|
1144
|
+
* Returns the index of the specified value.
|
1145
|
+
*
|
1146
|
+
* If `value` is:
|
1147
|
+
* - a string, `value` is interpreted according to the character encoding in `encoding`.
|
1148
|
+
* - a `Buffer` or `Uint8Array`, `value` will be used in its entirety. To compare a partial Buffer, use `slice()`.
|
1149
|
+
* - a number, `value` will be interpreted as an unsigned 8-bit integer value between `0` and `255`.
|
1150
|
+
*
|
1151
|
+
* Any other types will throw a `TypeError`.
|
1152
|
+
*
|
1153
|
+
* @param value What to search for.
|
1154
|
+
* @param byteOffset Where to begin searching in `buf`. If negative, then calculated from the end.
|
1155
|
+
* @param encoding If `value` is a string, this is the encoding used to search.
|
1156
|
+
* @returns The index of the first occurrence of `value` in `buf`, or `-1` if not found.
|
1157
|
+
*/
|
1158
|
+
indexOf(value, byteOffset, encoding) {
|
1159
|
+
return this._bidirectionalIndexOf(this, value, byteOffset, encoding, true);
|
1160
|
+
}
|
1161
|
+
/**
|
1162
|
+
* Gets the last index of the specified value.
|
1163
|
+
*
|
1164
|
+
* @see indexOf()
|
1165
|
+
* @param value
|
1166
|
+
* @param byteOffset
|
1167
|
+
* @param encoding
|
1168
|
+
*/
|
1169
|
+
lastIndexOf(value, byteOffset, encoding) {
|
1170
|
+
return this._bidirectionalIndexOf(this, value, byteOffset, encoding, false);
|
1171
|
+
}
|
1172
|
+
_bidirectionalIndexOf(buffer, val, byteOffset, encoding, dir) {
|
1173
|
+
if (buffer.length === 0) {
|
1174
|
+
return -1;
|
1175
|
+
}
|
1176
|
+
if (typeof byteOffset === "string") {
|
1177
|
+
encoding = byteOffset;
|
1178
|
+
byteOffset = 0;
|
1179
|
+
} else if (typeof byteOffset === "undefined") {
|
1180
|
+
byteOffset = 0;
|
1181
|
+
} else if (byteOffset > 2147483647) {
|
1182
|
+
byteOffset = 2147483647;
|
1183
|
+
} else if (byteOffset < -2147483648) {
|
1184
|
+
byteOffset = -2147483648;
|
1185
|
+
}
|
1186
|
+
byteOffset = +byteOffset;
|
1187
|
+
if (byteOffset !== byteOffset) {
|
1188
|
+
byteOffset = dir ? 0 : buffer.length - 1;
|
1189
|
+
}
|
1190
|
+
if (byteOffset < 0) {
|
1191
|
+
byteOffset = buffer.length + byteOffset;
|
1192
|
+
}
|
1193
|
+
if (byteOffset >= buffer.length) {
|
1194
|
+
if (dir) {
|
1195
|
+
return -1;
|
1196
|
+
} else {
|
1197
|
+
byteOffset = buffer.length - 1;
|
1198
|
+
}
|
1199
|
+
} else if (byteOffset < 0) {
|
1200
|
+
if (dir) {
|
1201
|
+
byteOffset = 0;
|
1202
|
+
} else {
|
1203
|
+
return -1;
|
1204
|
+
}
|
1205
|
+
}
|
1206
|
+
if (typeof val === "string") {
|
1207
|
+
val = Buffer.from(val, encoding);
|
1208
|
+
}
|
1209
|
+
if (Buffer.isBuffer(val)) {
|
1210
|
+
if (val.length === 0) {
|
1211
|
+
return -1;
|
1212
|
+
}
|
1213
|
+
return Buffer._arrayIndexOf(buffer, val, byteOffset, encoding, dir);
|
1214
|
+
} else if (typeof val === "number") {
|
1215
|
+
val = val & 255;
|
1216
|
+
if (typeof Uint8Array.prototype.indexOf === "function") {
|
1217
|
+
if (dir) {
|
1218
|
+
return Uint8Array.prototype.indexOf.call(buffer, val, byteOffset);
|
1219
|
+
} else {
|
1220
|
+
return Uint8Array.prototype.lastIndexOf.call(buffer, val, byteOffset);
|
1221
|
+
}
|
1222
|
+
}
|
1223
|
+
return Buffer._arrayIndexOf(buffer, Buffer.from([val]), byteOffset, encoding, dir);
|
1224
|
+
}
|
1225
|
+
throw new TypeError("val must be string, number or Buffer");
|
1226
|
+
}
|
1227
|
+
/**
|
1228
|
+
* Equivalent to `buf.indexOf() !== -1`.
|
1229
|
+
*
|
1230
|
+
* @param value
|
1231
|
+
* @param byteOffset
|
1232
|
+
* @param encoding
|
1233
|
+
*/
|
1234
|
+
includes(value, byteOffset, encoding) {
|
1235
|
+
return this.indexOf(value, byteOffset, encoding) !== -1;
|
1236
|
+
}
|
1237
|
+
/**
|
1238
|
+
* Creates a new buffer from the given parameters.
|
1239
|
+
*
|
1240
|
+
* @param data
|
1241
|
+
* @param encoding
|
1242
|
+
*/
|
1243
|
+
static from(a, b, c) {
|
1244
|
+
return new Buffer(a, b, c);
|
1245
|
+
}
|
1246
|
+
/**
|
1247
|
+
* Returns true if `obj` is a Buffer.
|
1248
|
+
*
|
1249
|
+
* @param obj
|
1250
|
+
*/
|
1251
|
+
static isBuffer(obj) {
|
1252
|
+
return obj != null && obj !== Buffer.prototype && Buffer._isInstance(obj, Buffer);
|
1253
|
+
}
|
1254
|
+
/**
|
1255
|
+
* Returns true if `encoding` is a supported encoding.
|
1256
|
+
*
|
1257
|
+
* @param encoding
|
1258
|
+
*/
|
1259
|
+
static isEncoding(encoding) {
|
1260
|
+
switch (encoding.toLowerCase()) {
|
1261
|
+
case "hex":
|
1262
|
+
case "utf8":
|
1263
|
+
case "ascii":
|
1264
|
+
case "binary":
|
1265
|
+
case "latin1":
|
1266
|
+
case "ucs2":
|
1267
|
+
case "utf16le":
|
1268
|
+
case "base64":
|
1269
|
+
return true;
|
1270
|
+
default:
|
1271
|
+
return false;
|
1272
|
+
}
|
1273
|
+
}
|
1274
|
+
/**
|
1275
|
+
* Gives the actual byte length of a string for an encoding. This is not the same as `string.length` since that
|
1276
|
+
* returns the number of characters in the string.
|
1277
|
+
*
|
1278
|
+
* @param string The string to test.
|
1279
|
+
* @param encoding The encoding to use for calculation. Defaults is `utf8`.
|
1280
|
+
*/
|
1281
|
+
static byteLength(string, encoding) {
|
1282
|
+
if (Buffer.isBuffer(string)) {
|
1283
|
+
return string.length;
|
1284
|
+
}
|
1285
|
+
if (typeof string !== "string" && (ArrayBuffer.isView(string) || Buffer._isInstance(string, ArrayBuffer))) {
|
1286
|
+
return string.byteLength;
|
1287
|
+
}
|
1288
|
+
if (typeof string !== "string") {
|
1289
|
+
throw new TypeError(
|
1290
|
+
'The "string" argument must be one of type string, Buffer, or ArrayBuffer. Received type ' + typeof string
|
1291
|
+
);
|
1292
|
+
}
|
1293
|
+
const len = string.length;
|
1294
|
+
const mustMatch = arguments.length > 2 && arguments[2] === true;
|
1295
|
+
if (!mustMatch && len === 0) {
|
1296
|
+
return 0;
|
1297
|
+
}
|
1298
|
+
switch (encoding?.toLowerCase()) {
|
1299
|
+
case "ascii":
|
1300
|
+
case "latin1":
|
1301
|
+
case "binary":
|
1302
|
+
return len;
|
1303
|
+
case "utf8":
|
1304
|
+
return Buffer._utf8ToBytes(string).length;
|
1305
|
+
case "hex":
|
1306
|
+
return len >>> 1;
|
1307
|
+
case "ucs2":
|
1308
|
+
case "utf16le":
|
1309
|
+
return len * 2;
|
1310
|
+
case "base64":
|
1311
|
+
return Buffer._base64ToBytes(string).length;
|
1312
|
+
default:
|
1313
|
+
return mustMatch ? -1 : Buffer._utf8ToBytes(string).length;
|
1314
|
+
}
|
1315
|
+
}
|
1316
|
+
/**
|
1317
|
+
* Returns a Buffer which is the result of concatenating all the buffers in the list together.
|
1318
|
+
*
|
1319
|
+
* - If the list has no items, or if the `totalLength` is 0, then it returns a zero-length buffer.
|
1320
|
+
* - If the list has exactly one item, then the first item is returned.
|
1321
|
+
* - If the list has more than one item, then a new buffer is created.
|
1322
|
+
*
|
1323
|
+
* It is faster to provide the `totalLength` if it is known. However, it will be calculated if not provided at
|
1324
|
+
* a small computational expense.
|
1325
|
+
*
|
1326
|
+
* @param list An array of Buffer objects to concatenate.
|
1327
|
+
* @param totalLength Total length of the buffers when concatenated.
|
1328
|
+
*/
|
1329
|
+
static concat(list, totalLength) {
|
1330
|
+
if (!Array.isArray(list)) {
|
1331
|
+
throw new TypeError('"list" argument must be an Array of Buffers');
|
1332
|
+
}
|
1333
|
+
if (list.length === 0) {
|
1334
|
+
return Buffer.alloc(0);
|
1335
|
+
}
|
1336
|
+
let i;
|
1337
|
+
if (totalLength === void 0) {
|
1338
|
+
totalLength = 0;
|
1339
|
+
for (i = 0; i < list.length; ++i) {
|
1340
|
+
totalLength += list[i].length;
|
1341
|
+
}
|
1342
|
+
}
|
1343
|
+
const buffer = Buffer.allocUnsafe(totalLength);
|
1344
|
+
let pos = 0;
|
1345
|
+
for (i = 0; i < list.length; ++i) {
|
1346
|
+
let buf = list[i];
|
1347
|
+
if (Buffer._isInstance(buf, Uint8Array)) {
|
1348
|
+
if (pos + buf.length > buffer.length) {
|
1349
|
+
if (!Buffer.isBuffer(buf)) {
|
1350
|
+
buf = Buffer.from(buf);
|
1351
|
+
}
|
1352
|
+
buf.copy(buffer, pos);
|
1353
|
+
} else {
|
1354
|
+
Uint8Array.prototype.set.call(buffer, buf, pos);
|
1355
|
+
}
|
1356
|
+
} else if (!Buffer.isBuffer(buf)) {
|
1357
|
+
throw new TypeError('"list" argument must be an Array of Buffers');
|
1358
|
+
} else {
|
1359
|
+
buf.copy(buffer, pos);
|
1360
|
+
}
|
1361
|
+
pos += buf.length;
|
1362
|
+
}
|
1363
|
+
return buffer;
|
1364
|
+
}
|
1365
|
+
/**
|
1366
|
+
* The same as `buf1.compare(buf2)`.
|
1367
|
+
*/
|
1368
|
+
static compare(buf1, buf2) {
|
1369
|
+
if (Buffer._isInstance(buf1, Uint8Array)) {
|
1370
|
+
buf1 = Buffer.from(buf1, buf1.byteOffset, buf1.byteLength);
|
1371
|
+
}
|
1372
|
+
if (Buffer._isInstance(buf2, Uint8Array)) {
|
1373
|
+
buf2 = Buffer.from(buf2, buf2.byteOffset, buf2.byteLength);
|
1374
|
+
}
|
1375
|
+
if (!Buffer.isBuffer(buf1) || !Buffer.isBuffer(buf2)) {
|
1376
|
+
throw new TypeError('The "buf1", "buf2" arguments must be one of type Buffer or Uint8Array');
|
1377
|
+
}
|
1378
|
+
if (buf1 === buf2) {
|
1379
|
+
return 0;
|
1380
|
+
}
|
1381
|
+
let x = buf1.length;
|
1382
|
+
let y = buf2.length;
|
1383
|
+
for (let i = 0, len = Math.min(x, y); i < len; ++i) {
|
1384
|
+
if (buf1[i] !== buf2[i]) {
|
1385
|
+
x = buf1[i];
|
1386
|
+
y = buf2[i];
|
1387
|
+
break;
|
1388
|
+
}
|
1389
|
+
}
|
1390
|
+
if (x < y) {
|
1391
|
+
return -1;
|
1392
|
+
}
|
1393
|
+
if (y < x) {
|
1394
|
+
return 1;
|
1395
|
+
}
|
1396
|
+
return 0;
|
1397
|
+
}
|
1398
|
+
/**
|
1399
|
+
* Allocates a new buffer of `size` octets.
|
1400
|
+
*
|
1401
|
+
* @param size The number of octets to allocate.
|
1402
|
+
* @param fill If specified, the buffer will be initialized by calling `buf.fill(fill)`, or with zeroes otherwise.
|
1403
|
+
* @param encoding The encoding used for the call to `buf.fill()` while initializing.
|
1404
|
+
*/
|
1405
|
+
static alloc(size, fill, encoding) {
|
1406
|
+
if (typeof size !== "number") {
|
1407
|
+
throw new TypeError('"size" argument must be of type number');
|
1408
|
+
} else if (size < 0) {
|
1409
|
+
throw new RangeError('The value "' + size + '" is invalid for option "size"');
|
1410
|
+
}
|
1411
|
+
if (size <= 0) {
|
1412
|
+
return new Buffer(size);
|
1413
|
+
}
|
1414
|
+
if (fill !== void 0) {
|
1415
|
+
return typeof encoding === "string" ? new Buffer(size).fill(fill, 0, size, encoding) : new Buffer(size).fill(fill);
|
1416
|
+
}
|
1417
|
+
return new Buffer(size);
|
1418
|
+
}
|
1419
|
+
/**
|
1420
|
+
* Allocates a new buffer of `size` octets without initializing memory. The contents of the buffer are unknown.
|
1421
|
+
*
|
1422
|
+
* @param size
|
1423
|
+
*/
|
1424
|
+
static allocUnsafe(size) {
|
1425
|
+
if (typeof size !== "number") {
|
1426
|
+
throw new TypeError('"size" argument must be of type number');
|
1427
|
+
} else if (size < 0) {
|
1428
|
+
throw new RangeError('The value "' + size + '" is invalid for option "size"');
|
1429
|
+
}
|
1430
|
+
return new Buffer(size < 0 ? 0 : Buffer._checked(size) | 0);
|
1431
|
+
}
|
1432
|
+
/**
|
1433
|
+
* Returns true if the given `obj` is an instance of `type`.
|
1434
|
+
*
|
1435
|
+
* @param obj
|
1436
|
+
* @param type
|
1437
|
+
*/
|
1438
|
+
static _isInstance(obj, type) {
|
1439
|
+
return obj instanceof type || obj != null && obj.constructor != null && obj.constructor.name != null && obj.constructor.name === type.name;
|
1440
|
+
}
|
1441
|
+
static _checked(length) {
|
1442
|
+
if (length >= K_MAX_LENGTH) {
|
1443
|
+
throw new RangeError(
|
1444
|
+
"Attempt to allocate Buffer larger than maximum size: 0x" + K_MAX_LENGTH.toString(16) + " bytes"
|
1445
|
+
);
|
1446
|
+
}
|
1447
|
+
return length | 0;
|
1448
|
+
}
|
1449
|
+
static _blitBuffer(src, dst, offset, length) {
|
1450
|
+
let i;
|
1451
|
+
for (i = 0; i < length; ++i) {
|
1452
|
+
if (i + offset >= dst.length || i >= src.length) {
|
1453
|
+
break;
|
1454
|
+
}
|
1455
|
+
dst[i + offset] = src[i];
|
1456
|
+
}
|
1457
|
+
return i;
|
1458
|
+
}
|
1459
|
+
static _utf8Write(buf, string, offset, length) {
|
1460
|
+
return Buffer._blitBuffer(Buffer._utf8ToBytes(string, buf.length - offset), buf, offset, length);
|
1461
|
+
}
|
1462
|
+
static _asciiWrite(buf, string, offset, length) {
|
1463
|
+
return Buffer._blitBuffer(Buffer._asciiToBytes(string), buf, offset, length);
|
1464
|
+
}
|
1465
|
+
static _base64Write(buf, string, offset, length) {
|
1466
|
+
return Buffer._blitBuffer(Buffer._base64ToBytes(string), buf, offset, length);
|
1467
|
+
}
|
1468
|
+
static _ucs2Write(buf, string, offset, length) {
|
1469
|
+
return Buffer._blitBuffer(Buffer._utf16leToBytes(string, buf.length - offset), buf, offset, length);
|
1470
|
+
}
|
1471
|
+
static _hexWrite(buf, string, offset, length) {
|
1472
|
+
offset = Number(offset) || 0;
|
1473
|
+
const remaining = buf.length - offset;
|
1474
|
+
if (!length) {
|
1475
|
+
length = remaining;
|
1476
|
+
} else {
|
1477
|
+
length = Number(length);
|
1478
|
+
if (length > remaining) {
|
1479
|
+
length = remaining;
|
1480
|
+
}
|
1481
|
+
}
|
1482
|
+
const strLen = string.length;
|
1483
|
+
if (length > strLen / 2) {
|
1484
|
+
length = strLen / 2;
|
1485
|
+
}
|
1486
|
+
let i;
|
1487
|
+
for (i = 0; i < length; ++i) {
|
1488
|
+
const parsed = parseInt(string.substr(i * 2, 2), 16);
|
1489
|
+
if (parsed !== parsed) {
|
1490
|
+
return i;
|
1491
|
+
}
|
1492
|
+
buf[offset + i] = parsed;
|
1493
|
+
}
|
1494
|
+
return i;
|
1495
|
+
}
|
1496
|
+
static _utf8ToBytes(string, units) {
|
1497
|
+
units = units || Infinity;
|
1498
|
+
const length = string.length;
|
1499
|
+
const bytes = [];
|
1500
|
+
let codePoint;
|
1501
|
+
let leadSurrogate = null;
|
1502
|
+
for (let i = 0; i < length; ++i) {
|
1503
|
+
codePoint = string.charCodeAt(i);
|
1504
|
+
if (codePoint > 55295 && codePoint < 57344) {
|
1505
|
+
if (!leadSurrogate) {
|
1506
|
+
if (codePoint > 56319) {
|
1507
|
+
if ((units -= 3) > -1) {
|
1508
|
+
bytes.push(239, 191, 189);
|
1509
|
+
}
|
1510
|
+
continue;
|
1511
|
+
} else if (i + 1 === length) {
|
1512
|
+
if ((units -= 3) > -1) {
|
1513
|
+
bytes.push(239, 191, 189);
|
1514
|
+
}
|
1515
|
+
continue;
|
1516
|
+
}
|
1517
|
+
leadSurrogate = codePoint;
|
1518
|
+
continue;
|
1519
|
+
}
|
1520
|
+
if (codePoint < 56320) {
|
1521
|
+
if ((units -= 3) > -1) {
|
1522
|
+
bytes.push(239, 191, 189);
|
1523
|
+
}
|
1524
|
+
leadSurrogate = codePoint;
|
1525
|
+
continue;
|
1526
|
+
}
|
1527
|
+
codePoint = (leadSurrogate - 55296 << 10 | codePoint - 56320) + 65536;
|
1528
|
+
} else if (leadSurrogate) {
|
1529
|
+
if ((units -= 3) > -1) {
|
1530
|
+
bytes.push(239, 191, 189);
|
1531
|
+
}
|
1532
|
+
}
|
1533
|
+
leadSurrogate = null;
|
1534
|
+
if (codePoint < 128) {
|
1535
|
+
if ((units -= 1) < 0) {
|
1536
|
+
break;
|
1537
|
+
}
|
1538
|
+
bytes.push(codePoint);
|
1539
|
+
} else if (codePoint < 2048) {
|
1540
|
+
if ((units -= 2) < 0) {
|
1541
|
+
break;
|
1542
|
+
}
|
1543
|
+
bytes.push(codePoint >> 6 | 192, codePoint & 63 | 128);
|
1544
|
+
} else if (codePoint < 65536) {
|
1545
|
+
if ((units -= 3) < 0) {
|
1546
|
+
break;
|
1547
|
+
}
|
1548
|
+
bytes.push(codePoint >> 12 | 224, codePoint >> 6 & 63 | 128, codePoint & 63 | 128);
|
1549
|
+
} else if (codePoint < 1114112) {
|
1550
|
+
if ((units -= 4) < 0) {
|
1551
|
+
break;
|
1552
|
+
}
|
1553
|
+
bytes.push(
|
1554
|
+
codePoint >> 18 | 240,
|
1555
|
+
codePoint >> 12 & 63 | 128,
|
1556
|
+
codePoint >> 6 & 63 | 128,
|
1557
|
+
codePoint & 63 | 128
|
1558
|
+
);
|
1559
|
+
} else {
|
1560
|
+
throw new Error("Invalid code point");
|
1561
|
+
}
|
1562
|
+
}
|
1563
|
+
return bytes;
|
1564
|
+
}
|
1565
|
+
static _base64ToBytes(str) {
|
1566
|
+
return toByteArray(base64clean(str));
|
1567
|
+
}
|
1568
|
+
static _asciiToBytes(str) {
|
1569
|
+
const byteArray = [];
|
1570
|
+
for (let i = 0; i < str.length; ++i) {
|
1571
|
+
byteArray.push(str.charCodeAt(i) & 255);
|
1572
|
+
}
|
1573
|
+
return byteArray;
|
1574
|
+
}
|
1575
|
+
static _utf16leToBytes(str, units) {
|
1576
|
+
let c, hi, lo;
|
1577
|
+
const byteArray = [];
|
1578
|
+
for (let i = 0; i < str.length; ++i) {
|
1579
|
+
if ((units -= 2) < 0)
|
1580
|
+
break;
|
1581
|
+
c = str.charCodeAt(i);
|
1582
|
+
hi = c >> 8;
|
1583
|
+
lo = c % 256;
|
1584
|
+
byteArray.push(lo);
|
1585
|
+
byteArray.push(hi);
|
1586
|
+
}
|
1587
|
+
return byteArray;
|
1588
|
+
}
|
1589
|
+
static _hexSlice(buf, start, end) {
|
1590
|
+
const len = buf.length;
|
1591
|
+
if (!start || start < 0) {
|
1592
|
+
start = 0;
|
1593
|
+
}
|
1594
|
+
if (!end || end < 0 || end > len) {
|
1595
|
+
end = len;
|
1596
|
+
}
|
1597
|
+
let out = "";
|
1598
|
+
for (let i = start; i < end; ++i) {
|
1599
|
+
out += hexSliceLookupTable[buf[i]];
|
1600
|
+
}
|
1601
|
+
return out;
|
1602
|
+
}
|
1603
|
+
static _base64Slice(buf, start, end) {
|
1604
|
+
if (start === 0 && end === buf.length) {
|
1605
|
+
return fromByteArray(buf);
|
1606
|
+
} else {
|
1607
|
+
return fromByteArray(buf.slice(start, end));
|
1608
|
+
}
|
1609
|
+
}
|
1610
|
+
static _utf8Slice(buf, start, end) {
|
1611
|
+
end = Math.min(buf.length, end);
|
1612
|
+
const res = [];
|
1613
|
+
let i = start;
|
1614
|
+
while (i < end) {
|
1615
|
+
const firstByte = buf[i];
|
1616
|
+
let codePoint = null;
|
1617
|
+
let bytesPerSequence = firstByte > 239 ? 4 : firstByte > 223 ? 3 : firstByte > 191 ? 2 : 1;
|
1618
|
+
if (i + bytesPerSequence <= end) {
|
1619
|
+
let secondByte, thirdByte, fourthByte, tempCodePoint;
|
1620
|
+
switch (bytesPerSequence) {
|
1621
|
+
case 1:
|
1622
|
+
if (firstByte < 128) {
|
1623
|
+
codePoint = firstByte;
|
1624
|
+
}
|
1625
|
+
break;
|
1626
|
+
case 2:
|
1627
|
+
secondByte = buf[i + 1];
|
1628
|
+
if ((secondByte & 192) === 128) {
|
1629
|
+
tempCodePoint = (firstByte & 31) << 6 | secondByte & 63;
|
1630
|
+
if (tempCodePoint > 127) {
|
1631
|
+
codePoint = tempCodePoint;
|
1632
|
+
}
|
1633
|
+
}
|
1634
|
+
break;
|
1635
|
+
case 3:
|
1636
|
+
secondByte = buf[i + 1];
|
1637
|
+
thirdByte = buf[i + 2];
|
1638
|
+
if ((secondByte & 192) === 128 && (thirdByte & 192) === 128) {
|
1639
|
+
tempCodePoint = (firstByte & 15) << 12 | (secondByte & 63) << 6 | thirdByte & 63;
|
1640
|
+
if (tempCodePoint > 2047 && (tempCodePoint < 55296 || tempCodePoint > 57343)) {
|
1641
|
+
codePoint = tempCodePoint;
|
1642
|
+
}
|
1643
|
+
}
|
1644
|
+
break;
|
1645
|
+
case 4:
|
1646
|
+
secondByte = buf[i + 1];
|
1647
|
+
thirdByte = buf[i + 2];
|
1648
|
+
fourthByte = buf[i + 3];
|
1649
|
+
if ((secondByte & 192) === 128 && (thirdByte & 192) === 128 && (fourthByte & 192) === 128) {
|
1650
|
+
tempCodePoint = (firstByte & 15) << 18 | (secondByte & 63) << 12 | (thirdByte & 63) << 6 | fourthByte & 63;
|
1651
|
+
if (tempCodePoint > 65535 && tempCodePoint < 1114112) {
|
1652
|
+
codePoint = tempCodePoint;
|
1653
|
+
}
|
1654
|
+
}
|
1655
|
+
}
|
1656
|
+
}
|
1657
|
+
if (codePoint === null) {
|
1658
|
+
codePoint = 65533;
|
1659
|
+
bytesPerSequence = 1;
|
1660
|
+
} else if (codePoint > 65535) {
|
1661
|
+
codePoint -= 65536;
|
1662
|
+
res.push(codePoint >>> 10 & 1023 | 55296);
|
1663
|
+
codePoint = 56320 | codePoint & 1023;
|
1664
|
+
}
|
1665
|
+
res.push(codePoint);
|
1666
|
+
i += bytesPerSequence;
|
1667
|
+
}
|
1668
|
+
return Buffer._decodeCodePointsArray(res);
|
1669
|
+
}
|
1670
|
+
static _decodeCodePointsArray(codePoints) {
|
1671
|
+
const len = codePoints.length;
|
1672
|
+
if (len <= MAX_ARGUMENTS_LENGTH) {
|
1673
|
+
return String.fromCharCode.apply(String, codePoints);
|
1674
|
+
}
|
1675
|
+
let res = "";
|
1676
|
+
let i = 0;
|
1677
|
+
while (i < len) {
|
1678
|
+
res += String.fromCharCode.apply(String, codePoints.slice(i, i += MAX_ARGUMENTS_LENGTH));
|
1679
|
+
}
|
1680
|
+
return res;
|
1681
|
+
}
|
1682
|
+
static _asciiSlice(buf, start, end) {
|
1683
|
+
let ret = "";
|
1684
|
+
end = Math.min(buf.length, end);
|
1685
|
+
for (let i = start; i < end; ++i) {
|
1686
|
+
ret += String.fromCharCode(buf[i] & 127);
|
1687
|
+
}
|
1688
|
+
return ret;
|
1689
|
+
}
|
1690
|
+
static _latin1Slice(buf, start, end) {
|
1691
|
+
let ret = "";
|
1692
|
+
end = Math.min(buf.length, end);
|
1693
|
+
for (let i = start; i < end; ++i) {
|
1694
|
+
ret += String.fromCharCode(buf[i]);
|
1695
|
+
}
|
1696
|
+
return ret;
|
1697
|
+
}
|
1698
|
+
static _utf16leSlice(buf, start, end) {
|
1699
|
+
const bytes = buf.slice(start, end);
|
1700
|
+
let res = "";
|
1701
|
+
for (let i = 0; i < bytes.length - 1; i += 2) {
|
1702
|
+
res += String.fromCharCode(bytes[i] + bytes[i + 1] * 256);
|
1703
|
+
}
|
1704
|
+
return res;
|
1705
|
+
}
|
1706
|
+
static _arrayIndexOf(arr, val, byteOffset, encoding, dir) {
|
1707
|
+
let indexSize = 1;
|
1708
|
+
let arrLength = arr.length;
|
1709
|
+
let valLength = val.length;
|
1710
|
+
if (encoding !== void 0) {
|
1711
|
+
encoding = Buffer._getEncoding(encoding);
|
1712
|
+
if (encoding === "ucs2" || encoding === "utf16le") {
|
1713
|
+
if (arr.length < 2 || val.length < 2) {
|
1714
|
+
return -1;
|
1715
|
+
}
|
1716
|
+
indexSize = 2;
|
1717
|
+
arrLength /= 2;
|
1718
|
+
valLength /= 2;
|
1719
|
+
byteOffset /= 2;
|
1720
|
+
}
|
1721
|
+
}
|
1722
|
+
function read(buf, i2) {
|
1723
|
+
if (indexSize === 1) {
|
1724
|
+
return buf[i2];
|
1725
|
+
} else {
|
1726
|
+
return buf.readUInt16BE(i2 * indexSize);
|
1727
|
+
}
|
1728
|
+
}
|
1729
|
+
let i;
|
1730
|
+
if (dir) {
|
1731
|
+
let foundIndex = -1;
|
1732
|
+
for (i = byteOffset; i < arrLength; i++) {
|
1733
|
+
if (read(arr, i) === read(val, foundIndex === -1 ? 0 : i - foundIndex)) {
|
1734
|
+
if (foundIndex === -1)
|
1735
|
+
foundIndex = i;
|
1736
|
+
if (i - foundIndex + 1 === valLength)
|
1737
|
+
return foundIndex * indexSize;
|
1738
|
+
} else {
|
1739
|
+
if (foundIndex !== -1)
|
1740
|
+
i -= i - foundIndex;
|
1741
|
+
foundIndex = -1;
|
1742
|
+
}
|
1743
|
+
}
|
1744
|
+
} else {
|
1745
|
+
if (byteOffset + valLength > arrLength) {
|
1746
|
+
byteOffset = arrLength - valLength;
|
1747
|
+
}
|
1748
|
+
for (i = byteOffset; i >= 0; i--) {
|
1749
|
+
let found = true;
|
1750
|
+
for (let j = 0; j < valLength; j++) {
|
1751
|
+
if (read(arr, i + j) !== read(val, j)) {
|
1752
|
+
found = false;
|
1753
|
+
break;
|
1754
|
+
}
|
1755
|
+
}
|
1756
|
+
if (found) {
|
1757
|
+
return i;
|
1758
|
+
}
|
1759
|
+
}
|
1760
|
+
}
|
1761
|
+
return -1;
|
1762
|
+
}
|
1763
|
+
static _checkOffset(offset, ext, length) {
|
1764
|
+
if (offset % 1 !== 0 || offset < 0)
|
1765
|
+
throw new RangeError("offset is not uint");
|
1766
|
+
if (offset + ext > length)
|
1767
|
+
throw new RangeError("Trying to access beyond buffer length");
|
1768
|
+
}
|
1769
|
+
static _checkInt(buf, value, offset, ext, max, min) {
|
1770
|
+
if (!Buffer.isBuffer(buf))
|
1771
|
+
throw new TypeError('"buffer" argument must be a Buffer instance');
|
1772
|
+
if (value > max || value < min)
|
1773
|
+
throw new RangeError('"value" argument is out of bounds');
|
1774
|
+
if (offset + ext > buf.length)
|
1775
|
+
throw new RangeError("Index out of range");
|
1776
|
+
}
|
1777
|
+
static _getEncoding(encoding) {
|
1778
|
+
let toLowerCase = false;
|
1779
|
+
let originalEncoding = "";
|
1780
|
+
for (; ; ) {
|
1781
|
+
switch (encoding) {
|
1782
|
+
case "hex":
|
1783
|
+
return "hex";
|
1784
|
+
case "utf8":
|
1785
|
+
return "utf8";
|
1786
|
+
case "ascii":
|
1787
|
+
return "ascii";
|
1788
|
+
case "binary":
|
1789
|
+
return "binary";
|
1790
|
+
case "latin1":
|
1791
|
+
return "latin1";
|
1792
|
+
case "ucs2":
|
1793
|
+
return "ucs2";
|
1794
|
+
case "utf16le":
|
1795
|
+
return "utf16le";
|
1796
|
+
case "base64":
|
1797
|
+
return "base64";
|
1798
|
+
default: {
|
1799
|
+
if (toLowerCase) {
|
1800
|
+
throw new TypeError("Unknown or unsupported encoding: " + originalEncoding);
|
1801
|
+
}
|
1802
|
+
toLowerCase = true;
|
1803
|
+
originalEncoding = encoding;
|
1804
|
+
encoding = encoding.toLowerCase();
|
1805
|
+
}
|
1806
|
+
}
|
1807
|
+
}
|
1808
|
+
}
|
1809
|
+
}
|
1810
|
+
const hexSliceLookupTable = function() {
|
1811
|
+
const alphabet = "0123456789abcdef";
|
1812
|
+
const table = new Array(256);
|
1813
|
+
for (let i = 0; i < 16; ++i) {
|
1814
|
+
const i16 = i * 16;
|
1815
|
+
for (let j = 0; j < 16; ++j) {
|
1816
|
+
table[i16 + j] = alphabet[i] + alphabet[j];
|
1817
|
+
}
|
1818
|
+
}
|
1819
|
+
return table;
|
1820
|
+
}();
|
1821
|
+
const INVALID_BASE64_RE = /[^+/0-9A-Za-z-_]/g;
|
1822
|
+
function base64clean(str) {
|
1823
|
+
str = str.split("=")[0];
|
1824
|
+
str = str.trim().replace(INVALID_BASE64_RE, "");
|
1825
|
+
if (str.length < 2)
|
1826
|
+
return "";
|
1827
|
+
while (str.length % 4 !== 0) {
|
1828
|
+
str = str + "=";
|
1829
|
+
}
|
1830
|
+
return str;
|
1831
|
+
}
|
1832
|
+
|
25
1833
|
function notEmpty(value) {
|
26
1834
|
return value !== null && value !== void 0;
|
27
1835
|
}
|
@@ -116,132 +1924,6 @@ function promiseMap(inputValues, mapper) {
|
|
116
1924
|
return inputValues.reduce(reducer, Promise.resolve([]));
|
117
1925
|
}
|
118
1926
|
|
119
|
-
function getEnvironment() {
|
120
|
-
try {
|
121
|
-
if (isDefined(process) && isDefined(process.env)) {
|
122
|
-
return {
|
123
|
-
apiKey: process.env.XATA_API_KEY ?? getGlobalApiKey(),
|
124
|
-
databaseURL: process.env.XATA_DATABASE_URL ?? getGlobalDatabaseURL(),
|
125
|
-
branch: process.env.XATA_BRANCH ?? getGlobalBranch(),
|
126
|
-
deployPreview: process.env.XATA_PREVIEW,
|
127
|
-
deployPreviewBranch: process.env.XATA_PREVIEW_BRANCH,
|
128
|
-
vercelGitCommitRef: process.env.VERCEL_GIT_COMMIT_REF,
|
129
|
-
vercelGitRepoOwner: process.env.VERCEL_GIT_REPO_OWNER
|
130
|
-
};
|
131
|
-
}
|
132
|
-
} catch (err) {
|
133
|
-
}
|
134
|
-
try {
|
135
|
-
if (isObject(Deno) && isObject(Deno.env)) {
|
136
|
-
return {
|
137
|
-
apiKey: Deno.env.get("XATA_API_KEY") ?? getGlobalApiKey(),
|
138
|
-
databaseURL: Deno.env.get("XATA_DATABASE_URL") ?? getGlobalDatabaseURL(),
|
139
|
-
branch: Deno.env.get("XATA_BRANCH") ?? getGlobalBranch(),
|
140
|
-
deployPreview: Deno.env.get("XATA_PREVIEW"),
|
141
|
-
deployPreviewBranch: Deno.env.get("XATA_PREVIEW_BRANCH"),
|
142
|
-
vercelGitCommitRef: Deno.env.get("VERCEL_GIT_COMMIT_REF"),
|
143
|
-
vercelGitRepoOwner: Deno.env.get("VERCEL_GIT_REPO_OWNER")
|
144
|
-
};
|
145
|
-
}
|
146
|
-
} catch (err) {
|
147
|
-
}
|
148
|
-
return {
|
149
|
-
apiKey: getGlobalApiKey(),
|
150
|
-
databaseURL: getGlobalDatabaseURL(),
|
151
|
-
branch: getGlobalBranch(),
|
152
|
-
deployPreview: void 0,
|
153
|
-
deployPreviewBranch: void 0,
|
154
|
-
vercelGitCommitRef: void 0,
|
155
|
-
vercelGitRepoOwner: void 0
|
156
|
-
};
|
157
|
-
}
|
158
|
-
function getEnableBrowserVariable() {
|
159
|
-
try {
|
160
|
-
if (isObject(process) && isObject(process.env) && process.env.XATA_ENABLE_BROWSER !== void 0) {
|
161
|
-
return process.env.XATA_ENABLE_BROWSER === "true";
|
162
|
-
}
|
163
|
-
} catch (err) {
|
164
|
-
}
|
165
|
-
try {
|
166
|
-
if (isObject(Deno) && isObject(Deno.env) && Deno.env.get("XATA_ENABLE_BROWSER") !== void 0) {
|
167
|
-
return Deno.env.get("XATA_ENABLE_BROWSER") === "true";
|
168
|
-
}
|
169
|
-
} catch (err) {
|
170
|
-
}
|
171
|
-
try {
|
172
|
-
return XATA_ENABLE_BROWSER === true || XATA_ENABLE_BROWSER === "true";
|
173
|
-
} catch (err) {
|
174
|
-
return void 0;
|
175
|
-
}
|
176
|
-
}
|
177
|
-
function getGlobalApiKey() {
|
178
|
-
try {
|
179
|
-
return XATA_API_KEY;
|
180
|
-
} catch (err) {
|
181
|
-
return void 0;
|
182
|
-
}
|
183
|
-
}
|
184
|
-
function getGlobalDatabaseURL() {
|
185
|
-
try {
|
186
|
-
return XATA_DATABASE_URL;
|
187
|
-
} catch (err) {
|
188
|
-
return void 0;
|
189
|
-
}
|
190
|
-
}
|
191
|
-
function getGlobalBranch() {
|
192
|
-
try {
|
193
|
-
return XATA_BRANCH;
|
194
|
-
} catch (err) {
|
195
|
-
return void 0;
|
196
|
-
}
|
197
|
-
}
|
198
|
-
function getDatabaseURL() {
|
199
|
-
try {
|
200
|
-
const { databaseURL } = getEnvironment();
|
201
|
-
return databaseURL;
|
202
|
-
} catch (err) {
|
203
|
-
return void 0;
|
204
|
-
}
|
205
|
-
}
|
206
|
-
function getAPIKey() {
|
207
|
-
try {
|
208
|
-
const { apiKey } = getEnvironment();
|
209
|
-
return apiKey;
|
210
|
-
} catch (err) {
|
211
|
-
return void 0;
|
212
|
-
}
|
213
|
-
}
|
214
|
-
function getBranch() {
|
215
|
-
try {
|
216
|
-
const { branch } = getEnvironment();
|
217
|
-
return branch;
|
218
|
-
} catch (err) {
|
219
|
-
return void 0;
|
220
|
-
}
|
221
|
-
}
|
222
|
-
function buildPreviewBranchName({ org, branch }) {
|
223
|
-
return `preview-${org}-${branch}`;
|
224
|
-
}
|
225
|
-
function getPreviewBranch() {
|
226
|
-
try {
|
227
|
-
const { deployPreview, deployPreviewBranch, vercelGitCommitRef, vercelGitRepoOwner } = getEnvironment();
|
228
|
-
if (deployPreviewBranch)
|
229
|
-
return deployPreviewBranch;
|
230
|
-
switch (deployPreview) {
|
231
|
-
case "vercel": {
|
232
|
-
if (!vercelGitCommitRef || !vercelGitRepoOwner) {
|
233
|
-
console.warn("XATA_PREVIEW=vercel but VERCEL_GIT_COMMIT_REF or VERCEL_GIT_REPO_OWNER is not valid");
|
234
|
-
return void 0;
|
235
|
-
}
|
236
|
-
return buildPreviewBranchName({ org: vercelGitRepoOwner, branch: vercelGitCommitRef });
|
237
|
-
}
|
238
|
-
}
|
239
|
-
return void 0;
|
240
|
-
} catch (err) {
|
241
|
-
return void 0;
|
242
|
-
}
|
243
|
-
}
|
244
|
-
|
245
1927
|
var __accessCheck$6 = (obj, member, msg) => {
|
246
1928
|
if (!member.has(obj))
|
247
1929
|
throw TypeError("Cannot " + msg);
|
@@ -257,7 +1939,7 @@ var __privateAdd$6 = (obj, member, value) => {
|
|
257
1939
|
};
|
258
1940
|
var __privateSet$4 = (obj, member, value, setter) => {
|
259
1941
|
__accessCheck$6(obj, member, "write to private field");
|
260
|
-
|
1942
|
+
member.set(obj, value);
|
261
1943
|
return value;
|
262
1944
|
};
|
263
1945
|
var __privateMethod$4 = (obj, member, method) => {
|
@@ -526,7 +2208,7 @@ function defaultOnOpen(response) {
|
|
526
2208
|
}
|
527
2209
|
}
|
528
2210
|
|
529
|
-
const VERSION = "0.29.
|
2211
|
+
const VERSION = "0.29.4";
|
530
2212
|
|
531
2213
|
class ErrorWithCause extends Error {
|
532
2214
|
constructor(message, options) {
|
@@ -622,7 +2304,7 @@ function parseWorkspacesUrlParts(url) {
|
|
622
2304
|
production: url.match(/(?:https:\/\/)?([^.]+)(?:\.([^.]+))\.xata\.sh\/db\/([^:]+):?(.*)?/),
|
623
2305
|
staging: url.match(/(?:https:\/\/)?([^.]+)(?:\.([^.]+))\.staging-xata\.dev\/db\/([^:]+):?(.*)?/),
|
624
2306
|
dev: url.match(/(?:https:\/\/)?([^.]+)(?:\.([^.]+))\.dev-xata\.dev\/db\/([^:]+):?(.*)?/),
|
625
|
-
local: url.match(/(?:https?:\/\/)?([^.]+)(?:\.([^.]+))\.localhost:([^:]+):?(.*)?/)
|
2307
|
+
local: url.match(/(?:https?:\/\/)?([^.]+)(?:\.([^.]+))\.localhost:(?:\d+)\/db\/([^:]+):?(.*)?/)
|
626
2308
|
};
|
627
2309
|
const [host, match] = Object.entries(matches).find(([, match2]) => match2 !== null) ?? [];
|
628
2310
|
if (!isHostProviderAlias(host) || !match)
|
@@ -847,22 +2529,42 @@ function parseUrl(url) {
|
|
847
2529
|
|
848
2530
|
const dataPlaneFetch = async (options) => fetch$1({ ...options, endpoint: "dataPlane" });
|
849
2531
|
|
850
|
-
const applyMigration = (variables, signal) => dataPlaneFetch({
|
2532
|
+
const applyMigration = (variables, signal) => dataPlaneFetch({
|
2533
|
+
url: "/db/{dbBranchName}/migrations/apply",
|
2534
|
+
method: "post",
|
2535
|
+
...variables,
|
2536
|
+
signal
|
2537
|
+
});
|
851
2538
|
const adaptTable = (variables, signal) => dataPlaneFetch({
|
852
2539
|
url: "/db/{dbBranchName}/migrations/adapt/{tableName}",
|
853
2540
|
method: "post",
|
854
2541
|
...variables,
|
855
2542
|
signal
|
856
2543
|
});
|
857
|
-
const adaptAllTables = (variables, signal) => dataPlaneFetch({
|
858
|
-
url: "/db/{dbBranchName}/migrations/adapt",
|
859
|
-
method: "post",
|
2544
|
+
const adaptAllTables = (variables, signal) => dataPlaneFetch({
|
2545
|
+
url: "/db/{dbBranchName}/migrations/adapt",
|
2546
|
+
method: "post",
|
2547
|
+
...variables,
|
2548
|
+
signal
|
2549
|
+
});
|
2550
|
+
const getBranchMigrationJobStatus = (variables, signal) => dataPlaneFetch({
|
2551
|
+
url: "/db/{dbBranchName}/migrations/status",
|
2552
|
+
method: "get",
|
2553
|
+
...variables,
|
2554
|
+
signal
|
2555
|
+
});
|
2556
|
+
const getMigrationJobStatus = (variables, signal) => dataPlaneFetch({
|
2557
|
+
url: "/db/{dbBranchName}/migrations/jobs/{jobId}",
|
2558
|
+
method: "get",
|
2559
|
+
...variables,
|
2560
|
+
signal
|
2561
|
+
});
|
2562
|
+
const getMigrationHistory = (variables, signal) => dataPlaneFetch({
|
2563
|
+
url: "/db/{dbBranchName}/migrations/history",
|
2564
|
+
method: "get",
|
860
2565
|
...variables,
|
861
2566
|
signal
|
862
2567
|
});
|
863
|
-
const getBranchMigrationJobStatus = (variables, signal) => dataPlaneFetch({ url: "/db/{dbBranchName}/migrations/status", method: "get", ...variables, signal });
|
864
|
-
const getMigrationJobStatus = (variables, signal) => dataPlaneFetch({ url: "/db/{dbBranchName}/migrations/jobs/{jobId}", method: "get", ...variables, signal });
|
865
|
-
const getMigrationHistory = (variables, signal) => dataPlaneFetch({ url: "/db/{dbBranchName}/migrations/history", method: "get", ...variables, signal });
|
866
2568
|
const getBranchList = (variables, signal) => dataPlaneFetch({
|
867
2569
|
url: "/dbs/{dbName}",
|
868
2570
|
method: "get",
|
@@ -921,12 +2623,42 @@ const getBranchStats = (variables, signal) => dataPlaneFetch({
|
|
921
2623
|
});
|
922
2624
|
const getGitBranchesMapping = (variables, signal) => dataPlaneFetch({ url: "/dbs/{dbName}/gitBranches", method: "get", ...variables, signal });
|
923
2625
|
const addGitBranchesEntry = (variables, signal) => dataPlaneFetch({ url: "/dbs/{dbName}/gitBranches", method: "post", ...variables, signal });
|
924
|
-
const removeGitBranchesEntry = (variables, signal) => dataPlaneFetch({
|
925
|
-
|
926
|
-
|
927
|
-
|
928
|
-
|
929
|
-
|
2626
|
+
const removeGitBranchesEntry = (variables, signal) => dataPlaneFetch({
|
2627
|
+
url: "/dbs/{dbName}/gitBranches",
|
2628
|
+
method: "delete",
|
2629
|
+
...variables,
|
2630
|
+
signal
|
2631
|
+
});
|
2632
|
+
const resolveBranch = (variables, signal) => dataPlaneFetch({
|
2633
|
+
url: "/dbs/{dbName}/resolveBranch",
|
2634
|
+
method: "get",
|
2635
|
+
...variables,
|
2636
|
+
signal
|
2637
|
+
});
|
2638
|
+
const getBranchMigrationHistory = (variables, signal) => dataPlaneFetch({
|
2639
|
+
url: "/db/{dbBranchName}/migrations",
|
2640
|
+
method: "get",
|
2641
|
+
...variables,
|
2642
|
+
signal
|
2643
|
+
});
|
2644
|
+
const getBranchMigrationPlan = (variables, signal) => dataPlaneFetch({
|
2645
|
+
url: "/db/{dbBranchName}/migrations/plan",
|
2646
|
+
method: "post",
|
2647
|
+
...variables,
|
2648
|
+
signal
|
2649
|
+
});
|
2650
|
+
const executeBranchMigrationPlan = (variables, signal) => dataPlaneFetch({
|
2651
|
+
url: "/db/{dbBranchName}/migrations/execute",
|
2652
|
+
method: "post",
|
2653
|
+
...variables,
|
2654
|
+
signal
|
2655
|
+
});
|
2656
|
+
const queryMigrationRequests = (variables, signal) => dataPlaneFetch({
|
2657
|
+
url: "/dbs/{dbName}/migrations/query",
|
2658
|
+
method: "post",
|
2659
|
+
...variables,
|
2660
|
+
signal
|
2661
|
+
});
|
930
2662
|
const createMigrationRequest = (variables, signal) => dataPlaneFetch({ url: "/dbs/{dbName}/migrations", method: "post", ...variables, signal });
|
931
2663
|
const getMigrationRequest = (variables, signal) => dataPlaneFetch({
|
932
2664
|
url: "/dbs/{dbName}/migrations/{mrNumber}",
|
@@ -934,23 +2666,78 @@ const getMigrationRequest = (variables, signal) => dataPlaneFetch({
|
|
934
2666
|
...variables,
|
935
2667
|
signal
|
936
2668
|
});
|
937
|
-
const updateMigrationRequest = (variables, signal) => dataPlaneFetch({
|
938
|
-
|
939
|
-
|
940
|
-
|
2669
|
+
const updateMigrationRequest = (variables, signal) => dataPlaneFetch({
|
2670
|
+
url: "/dbs/{dbName}/migrations/{mrNumber}",
|
2671
|
+
method: "patch",
|
2672
|
+
...variables,
|
2673
|
+
signal
|
2674
|
+
});
|
2675
|
+
const listMigrationRequestsCommits = (variables, signal) => dataPlaneFetch({
|
2676
|
+
url: "/dbs/{dbName}/migrations/{mrNumber}/commits",
|
2677
|
+
method: "post",
|
2678
|
+
...variables,
|
2679
|
+
signal
|
2680
|
+
});
|
2681
|
+
const compareMigrationRequest = (variables, signal) => dataPlaneFetch({
|
2682
|
+
url: "/dbs/{dbName}/migrations/{mrNumber}/compare",
|
2683
|
+
method: "post",
|
2684
|
+
...variables,
|
2685
|
+
signal
|
2686
|
+
});
|
2687
|
+
const getMigrationRequestIsMerged = (variables, signal) => dataPlaneFetch({
|
2688
|
+
url: "/dbs/{dbName}/migrations/{mrNumber}/merge",
|
2689
|
+
method: "get",
|
2690
|
+
...variables,
|
2691
|
+
signal
|
2692
|
+
});
|
941
2693
|
const mergeMigrationRequest = (variables, signal) => dataPlaneFetch({
|
942
2694
|
url: "/dbs/{dbName}/migrations/{mrNumber}/merge",
|
943
2695
|
method: "post",
|
944
2696
|
...variables,
|
945
2697
|
signal
|
946
2698
|
});
|
947
|
-
const getBranchSchemaHistory = (variables, signal) => dataPlaneFetch({
|
948
|
-
|
949
|
-
|
950
|
-
|
951
|
-
|
952
|
-
|
953
|
-
const
|
2699
|
+
const getBranchSchemaHistory = (variables, signal) => dataPlaneFetch({
|
2700
|
+
url: "/db/{dbBranchName}/schema/history",
|
2701
|
+
method: "post",
|
2702
|
+
...variables,
|
2703
|
+
signal
|
2704
|
+
});
|
2705
|
+
const compareBranchWithUserSchema = (variables, signal) => dataPlaneFetch({
|
2706
|
+
url: "/db/{dbBranchName}/schema/compare",
|
2707
|
+
method: "post",
|
2708
|
+
...variables,
|
2709
|
+
signal
|
2710
|
+
});
|
2711
|
+
const compareBranchSchemas = (variables, signal) => dataPlaneFetch({
|
2712
|
+
url: "/db/{dbBranchName}/schema/compare/{branchName}",
|
2713
|
+
method: "post",
|
2714
|
+
...variables,
|
2715
|
+
signal
|
2716
|
+
});
|
2717
|
+
const updateBranchSchema = (variables, signal) => dataPlaneFetch({
|
2718
|
+
url: "/db/{dbBranchName}/schema/update",
|
2719
|
+
method: "post",
|
2720
|
+
...variables,
|
2721
|
+
signal
|
2722
|
+
});
|
2723
|
+
const previewBranchSchemaEdit = (variables, signal) => dataPlaneFetch({
|
2724
|
+
url: "/db/{dbBranchName}/schema/preview",
|
2725
|
+
method: "post",
|
2726
|
+
...variables,
|
2727
|
+
signal
|
2728
|
+
});
|
2729
|
+
const applyBranchSchemaEdit = (variables, signal) => dataPlaneFetch({
|
2730
|
+
url: "/db/{dbBranchName}/schema/apply",
|
2731
|
+
method: "post",
|
2732
|
+
...variables,
|
2733
|
+
signal
|
2734
|
+
});
|
2735
|
+
const pushBranchMigrations = (variables, signal) => dataPlaneFetch({
|
2736
|
+
url: "/db/{dbBranchName}/schema/push",
|
2737
|
+
method: "post",
|
2738
|
+
...variables,
|
2739
|
+
signal
|
2740
|
+
});
|
954
2741
|
const createTable = (variables, signal) => dataPlaneFetch({
|
955
2742
|
url: "/db/{dbBranchName}/tables/{tableName}",
|
956
2743
|
method: "put",
|
@@ -963,14 +2750,24 @@ const deleteTable = (variables, signal) => dataPlaneFetch({
|
|
963
2750
|
...variables,
|
964
2751
|
signal
|
965
2752
|
});
|
966
|
-
const updateTable = (variables, signal) => dataPlaneFetch({
|
2753
|
+
const updateTable = (variables, signal) => dataPlaneFetch({
|
2754
|
+
url: "/db/{dbBranchName}/tables/{tableName}",
|
2755
|
+
method: "patch",
|
2756
|
+
...variables,
|
2757
|
+
signal
|
2758
|
+
});
|
967
2759
|
const getTableSchema = (variables, signal) => dataPlaneFetch({
|
968
2760
|
url: "/db/{dbBranchName}/tables/{tableName}/schema",
|
969
2761
|
method: "get",
|
970
2762
|
...variables,
|
971
2763
|
signal
|
972
2764
|
});
|
973
|
-
const setTableSchema = (variables, signal) => dataPlaneFetch({
|
2765
|
+
const setTableSchema = (variables, signal) => dataPlaneFetch({
|
2766
|
+
url: "/db/{dbBranchName}/tables/{tableName}/schema",
|
2767
|
+
method: "put",
|
2768
|
+
...variables,
|
2769
|
+
signal
|
2770
|
+
});
|
974
2771
|
const getTableColumns = (variables, signal) => dataPlaneFetch({
|
975
2772
|
url: "/db/{dbBranchName}/tables/{tableName}/columns",
|
976
2773
|
method: "get",
|
@@ -978,7 +2775,12 @@ const getTableColumns = (variables, signal) => dataPlaneFetch({
|
|
978
2775
|
signal
|
979
2776
|
});
|
980
2777
|
const addTableColumn = (variables, signal) => dataPlaneFetch(
|
981
|
-
{
|
2778
|
+
{
|
2779
|
+
url: "/db/{dbBranchName}/tables/{tableName}/columns",
|
2780
|
+
method: "post",
|
2781
|
+
...variables,
|
2782
|
+
signal
|
2783
|
+
}
|
982
2784
|
);
|
983
2785
|
const getColumn = (variables, signal) => dataPlaneFetch({
|
984
2786
|
url: "/db/{dbBranchName}/tables/{tableName}/columns/{columnName}",
|
@@ -986,15 +2788,30 @@ const getColumn = (variables, signal) => dataPlaneFetch({
|
|
986
2788
|
...variables,
|
987
2789
|
signal
|
988
2790
|
});
|
989
|
-
const updateColumn = (variables, signal) => dataPlaneFetch({
|
2791
|
+
const updateColumn = (variables, signal) => dataPlaneFetch({
|
2792
|
+
url: "/db/{dbBranchName}/tables/{tableName}/columns/{columnName}",
|
2793
|
+
method: "patch",
|
2794
|
+
...variables,
|
2795
|
+
signal
|
2796
|
+
});
|
990
2797
|
const deleteColumn = (variables, signal) => dataPlaneFetch({
|
991
2798
|
url: "/db/{dbBranchName}/tables/{tableName}/columns/{columnName}",
|
992
2799
|
method: "delete",
|
993
2800
|
...variables,
|
994
2801
|
signal
|
995
2802
|
});
|
996
|
-
const branchTransaction = (variables, signal) => dataPlaneFetch({
|
997
|
-
|
2803
|
+
const branchTransaction = (variables, signal) => dataPlaneFetch({
|
2804
|
+
url: "/db/{dbBranchName}/transaction",
|
2805
|
+
method: "post",
|
2806
|
+
...variables,
|
2807
|
+
signal
|
2808
|
+
});
|
2809
|
+
const insertRecord = (variables, signal) => dataPlaneFetch({
|
2810
|
+
url: "/db/{dbBranchName}/tables/{tableName}/data",
|
2811
|
+
method: "post",
|
2812
|
+
...variables,
|
2813
|
+
signal
|
2814
|
+
});
|
998
2815
|
const getFileItem = (variables, signal) => dataPlaneFetch({
|
999
2816
|
url: "/db/{dbBranchName}/tables/{tableName}/data/{recordId}/column/{columnName}/file/{fileId}",
|
1000
2817
|
method: "get",
|
@@ -1037,11 +2854,36 @@ const getRecord = (variables, signal) => dataPlaneFetch({
|
|
1037
2854
|
...variables,
|
1038
2855
|
signal
|
1039
2856
|
});
|
1040
|
-
const insertRecordWithID = (variables, signal) => dataPlaneFetch({
|
1041
|
-
|
1042
|
-
|
1043
|
-
|
1044
|
-
|
2857
|
+
const insertRecordWithID = (variables, signal) => dataPlaneFetch({
|
2858
|
+
url: "/db/{dbBranchName}/tables/{tableName}/data/{recordId}",
|
2859
|
+
method: "put",
|
2860
|
+
...variables,
|
2861
|
+
signal
|
2862
|
+
});
|
2863
|
+
const updateRecordWithID = (variables, signal) => dataPlaneFetch({
|
2864
|
+
url: "/db/{dbBranchName}/tables/{tableName}/data/{recordId}",
|
2865
|
+
method: "patch",
|
2866
|
+
...variables,
|
2867
|
+
signal
|
2868
|
+
});
|
2869
|
+
const upsertRecordWithID = (variables, signal) => dataPlaneFetch({
|
2870
|
+
url: "/db/{dbBranchName}/tables/{tableName}/data/{recordId}",
|
2871
|
+
method: "post",
|
2872
|
+
...variables,
|
2873
|
+
signal
|
2874
|
+
});
|
2875
|
+
const deleteRecord = (variables, signal) => dataPlaneFetch({
|
2876
|
+
url: "/db/{dbBranchName}/tables/{tableName}/data/{recordId}",
|
2877
|
+
method: "delete",
|
2878
|
+
...variables,
|
2879
|
+
signal
|
2880
|
+
});
|
2881
|
+
const bulkInsertTableRecords = (variables, signal) => dataPlaneFetch({
|
2882
|
+
url: "/db/{dbBranchName}/tables/{tableName}/bulk",
|
2883
|
+
method: "post",
|
2884
|
+
...variables,
|
2885
|
+
signal
|
2886
|
+
});
|
1045
2887
|
const queryTable = (variables, signal) => dataPlaneFetch({
|
1046
2888
|
url: "/db/{dbBranchName}/tables/{tableName}/query",
|
1047
2889
|
method: "post",
|
@@ -1060,16 +2902,36 @@ const searchTable = (variables, signal) => dataPlaneFetch({
|
|
1060
2902
|
...variables,
|
1061
2903
|
signal
|
1062
2904
|
});
|
1063
|
-
const vectorSearchTable = (variables, signal) => dataPlaneFetch({
|
2905
|
+
const vectorSearchTable = (variables, signal) => dataPlaneFetch({
|
2906
|
+
url: "/db/{dbBranchName}/tables/{tableName}/vectorSearch",
|
2907
|
+
method: "post",
|
2908
|
+
...variables,
|
2909
|
+
signal
|
2910
|
+
});
|
1064
2911
|
const askTable = (variables, signal) => dataPlaneFetch({
|
1065
2912
|
url: "/db/{dbBranchName}/tables/{tableName}/ask",
|
1066
2913
|
method: "post",
|
1067
2914
|
...variables,
|
1068
2915
|
signal
|
1069
2916
|
});
|
1070
|
-
const askTableSession = (variables, signal) => dataPlaneFetch({
|
1071
|
-
|
1072
|
-
|
2917
|
+
const askTableSession = (variables, signal) => dataPlaneFetch({
|
2918
|
+
url: "/db/{dbBranchName}/tables/{tableName}/ask/{sessionId}",
|
2919
|
+
method: "post",
|
2920
|
+
...variables,
|
2921
|
+
signal
|
2922
|
+
});
|
2923
|
+
const summarizeTable = (variables, signal) => dataPlaneFetch({
|
2924
|
+
url: "/db/{dbBranchName}/tables/{tableName}/summarize",
|
2925
|
+
method: "post",
|
2926
|
+
...variables,
|
2927
|
+
signal
|
2928
|
+
});
|
2929
|
+
const aggregateTable = (variables, signal) => dataPlaneFetch({
|
2930
|
+
url: "/db/{dbBranchName}/tables/{tableName}/aggregate",
|
2931
|
+
method: "post",
|
2932
|
+
...variables,
|
2933
|
+
signal
|
2934
|
+
});
|
1073
2935
|
const fileAccess = (variables, signal) => dataPlaneFetch({
|
1074
2936
|
url: "/file/{fileId}",
|
1075
2937
|
method: "get",
|
@@ -1155,7 +3017,16 @@ const operationsByTag$2 = {
|
|
1155
3017
|
deleteRecord,
|
1156
3018
|
bulkInsertTableRecords
|
1157
3019
|
},
|
1158
|
-
files: {
|
3020
|
+
files: {
|
3021
|
+
getFileItem,
|
3022
|
+
putFileItem,
|
3023
|
+
deleteFileItem,
|
3024
|
+
getFile,
|
3025
|
+
putFile,
|
3026
|
+
deleteFile,
|
3027
|
+
fileAccess,
|
3028
|
+
fileUpload
|
3029
|
+
},
|
1159
3030
|
searchAndFilter: {
|
1160
3031
|
queryTable,
|
1161
3032
|
searchBranch,
|
@@ -1233,7 +3104,12 @@ const deleteOAuthAccessToken = (variables, signal) => controlPlaneFetch({
|
|
1233
3104
|
...variables,
|
1234
3105
|
signal
|
1235
3106
|
});
|
1236
|
-
const updateOAuthAccessToken = (variables, signal) => controlPlaneFetch({
|
3107
|
+
const updateOAuthAccessToken = (variables, signal) => controlPlaneFetch({
|
3108
|
+
url: "/user/oauth/tokens/{token}",
|
3109
|
+
method: "patch",
|
3110
|
+
...variables,
|
3111
|
+
signal
|
3112
|
+
});
|
1237
3113
|
const getWorkspacesList = (variables, signal) => controlPlaneFetch({
|
1238
3114
|
url: "/workspaces",
|
1239
3115
|
method: "get",
|
@@ -1264,49 +3140,150 @@ const deleteWorkspace = (variables, signal) => controlPlaneFetch({
|
|
1264
3140
|
...variables,
|
1265
3141
|
signal
|
1266
3142
|
});
|
1267
|
-
const getWorkspaceSettings = (variables, signal) => controlPlaneFetch({
|
1268
|
-
|
1269
|
-
|
1270
|
-
|
3143
|
+
const getWorkspaceSettings = (variables, signal) => controlPlaneFetch({
|
3144
|
+
url: "/workspaces/{workspaceId}/settings",
|
3145
|
+
method: "get",
|
3146
|
+
...variables,
|
3147
|
+
signal
|
3148
|
+
});
|
3149
|
+
const updateWorkspaceSettings = (variables, signal) => controlPlaneFetch({
|
3150
|
+
url: "/workspaces/{workspaceId}/settings",
|
3151
|
+
method: "patch",
|
3152
|
+
...variables,
|
3153
|
+
signal
|
3154
|
+
});
|
3155
|
+
const getWorkspaceMembersList = (variables, signal) => controlPlaneFetch({
|
3156
|
+
url: "/workspaces/{workspaceId}/members",
|
3157
|
+
method: "get",
|
3158
|
+
...variables,
|
3159
|
+
signal
|
3160
|
+
});
|
3161
|
+
const updateWorkspaceMemberRole = (variables, signal) => controlPlaneFetch({
|
3162
|
+
url: "/workspaces/{workspaceId}/members/{userId}",
|
3163
|
+
method: "put",
|
3164
|
+
...variables,
|
3165
|
+
signal
|
3166
|
+
});
|
1271
3167
|
const removeWorkspaceMember = (variables, signal) => controlPlaneFetch({
|
1272
3168
|
url: "/workspaces/{workspaceId}/members/{userId}",
|
1273
3169
|
method: "delete",
|
1274
3170
|
...variables,
|
1275
3171
|
signal
|
1276
3172
|
});
|
1277
|
-
const inviteWorkspaceMember = (variables, signal) => controlPlaneFetch({
|
1278
|
-
|
1279
|
-
|
1280
|
-
|
1281
|
-
|
1282
|
-
|
1283
|
-
const
|
3173
|
+
const inviteWorkspaceMember = (variables, signal) => controlPlaneFetch({
|
3174
|
+
url: "/workspaces/{workspaceId}/invites",
|
3175
|
+
method: "post",
|
3176
|
+
...variables,
|
3177
|
+
signal
|
3178
|
+
});
|
3179
|
+
const updateWorkspaceMemberInvite = (variables, signal) => controlPlaneFetch({
|
3180
|
+
url: "/workspaces/{workspaceId}/invites/{inviteId}",
|
3181
|
+
method: "patch",
|
3182
|
+
...variables,
|
3183
|
+
signal
|
3184
|
+
});
|
3185
|
+
const cancelWorkspaceMemberInvite = (variables, signal) => controlPlaneFetch({
|
3186
|
+
url: "/workspaces/{workspaceId}/invites/{inviteId}",
|
3187
|
+
method: "delete",
|
3188
|
+
...variables,
|
3189
|
+
signal
|
3190
|
+
});
|
3191
|
+
const acceptWorkspaceMemberInvite = (variables, signal) => controlPlaneFetch({
|
3192
|
+
url: "/workspaces/{workspaceId}/invites/{inviteKey}/accept",
|
3193
|
+
method: "post",
|
3194
|
+
...variables,
|
3195
|
+
signal
|
3196
|
+
});
|
3197
|
+
const resendWorkspaceMemberInvite = (variables, signal) => controlPlaneFetch({
|
3198
|
+
url: "/workspaces/{workspaceId}/invites/{inviteId}/resend",
|
3199
|
+
method: "post",
|
3200
|
+
...variables,
|
3201
|
+
signal
|
3202
|
+
});
|
3203
|
+
const listClusters = (variables, signal) => controlPlaneFetch({
|
3204
|
+
url: "/workspaces/{workspaceId}/clusters",
|
3205
|
+
method: "get",
|
3206
|
+
...variables,
|
3207
|
+
signal
|
3208
|
+
});
|
3209
|
+
const createCluster = (variables, signal) => controlPlaneFetch({
|
3210
|
+
url: "/workspaces/{workspaceId}/clusters",
|
3211
|
+
method: "post",
|
3212
|
+
...variables,
|
3213
|
+
signal
|
3214
|
+
});
|
1284
3215
|
const getCluster = (variables, signal) => controlPlaneFetch({
|
1285
3216
|
url: "/workspaces/{workspaceId}/clusters/{clusterId}",
|
1286
3217
|
method: "get",
|
1287
3218
|
...variables,
|
1288
3219
|
signal
|
1289
3220
|
});
|
1290
|
-
const updateCluster = (variables, signal) => controlPlaneFetch({
|
3221
|
+
const updateCluster = (variables, signal) => controlPlaneFetch({
|
3222
|
+
url: "/workspaces/{workspaceId}/clusters/{clusterId}",
|
3223
|
+
method: "patch",
|
3224
|
+
...variables,
|
3225
|
+
signal
|
3226
|
+
});
|
3227
|
+
const deleteCluster = (variables, signal) => controlPlaneFetch({
|
3228
|
+
url: "/workspaces/{workspaceId}/clusters/{clusterId}",
|
3229
|
+
method: "delete",
|
3230
|
+
...variables,
|
3231
|
+
signal
|
3232
|
+
});
|
1291
3233
|
const getDatabaseList = (variables, signal) => controlPlaneFetch({
|
1292
3234
|
url: "/workspaces/{workspaceId}/dbs",
|
1293
3235
|
method: "get",
|
1294
3236
|
...variables,
|
1295
3237
|
signal
|
1296
3238
|
});
|
1297
|
-
const createDatabase = (variables, signal) => controlPlaneFetch({
|
3239
|
+
const createDatabase = (variables, signal) => controlPlaneFetch({
|
3240
|
+
url: "/workspaces/{workspaceId}/dbs/{dbName}",
|
3241
|
+
method: "put",
|
3242
|
+
...variables,
|
3243
|
+
signal
|
3244
|
+
});
|
1298
3245
|
const deleteDatabase = (variables, signal) => controlPlaneFetch({
|
1299
3246
|
url: "/workspaces/{workspaceId}/dbs/{dbName}",
|
1300
3247
|
method: "delete",
|
1301
3248
|
...variables,
|
1302
3249
|
signal
|
1303
3250
|
});
|
1304
|
-
const getDatabaseMetadata = (variables, signal) => controlPlaneFetch({
|
1305
|
-
|
1306
|
-
|
1307
|
-
|
1308
|
-
|
1309
|
-
|
3251
|
+
const getDatabaseMetadata = (variables, signal) => controlPlaneFetch({
|
3252
|
+
url: "/workspaces/{workspaceId}/dbs/{dbName}",
|
3253
|
+
method: "get",
|
3254
|
+
...variables,
|
3255
|
+
signal
|
3256
|
+
});
|
3257
|
+
const updateDatabaseMetadata = (variables, signal) => controlPlaneFetch({
|
3258
|
+
url: "/workspaces/{workspaceId}/dbs/{dbName}",
|
3259
|
+
method: "patch",
|
3260
|
+
...variables,
|
3261
|
+
signal
|
3262
|
+
});
|
3263
|
+
const renameDatabase = (variables, signal) => controlPlaneFetch({
|
3264
|
+
url: "/workspaces/{workspaceId}/dbs/{dbName}/rename",
|
3265
|
+
method: "post",
|
3266
|
+
...variables,
|
3267
|
+
signal
|
3268
|
+
});
|
3269
|
+
const getDatabaseGithubSettings = (variables, signal) => controlPlaneFetch({
|
3270
|
+
url: "/workspaces/{workspaceId}/dbs/{dbName}/github",
|
3271
|
+
method: "get",
|
3272
|
+
...variables,
|
3273
|
+
signal
|
3274
|
+
});
|
3275
|
+
const updateDatabaseGithubSettings = (variables, signal) => controlPlaneFetch({
|
3276
|
+
url: "/workspaces/{workspaceId}/dbs/{dbName}/github",
|
3277
|
+
method: "put",
|
3278
|
+
...variables,
|
3279
|
+
signal
|
3280
|
+
});
|
3281
|
+
const deleteDatabaseGithubSettings = (variables, signal) => controlPlaneFetch({
|
3282
|
+
url: "/workspaces/{workspaceId}/dbs/{dbName}/github",
|
3283
|
+
method: "delete",
|
3284
|
+
...variables,
|
3285
|
+
signal
|
3286
|
+
});
|
1310
3287
|
const listRegions = (variables, signal) => controlPlaneFetch({
|
1311
3288
|
url: "/workspaces/{workspaceId}/regions",
|
1312
3289
|
method: "get",
|
@@ -1344,7 +3321,13 @@ const operationsByTag$1 = {
|
|
1344
3321
|
acceptWorkspaceMemberInvite,
|
1345
3322
|
resendWorkspaceMemberInvite
|
1346
3323
|
},
|
1347
|
-
xbcontrolOther: {
|
3324
|
+
xbcontrolOther: {
|
3325
|
+
listClusters,
|
3326
|
+
createCluster,
|
3327
|
+
getCluster,
|
3328
|
+
updateCluster,
|
3329
|
+
deleteCluster
|
3330
|
+
},
|
1348
3331
|
databases: {
|
1349
3332
|
getDatabaseList,
|
1350
3333
|
createDatabase,
|
@@ -1364,7 +3347,7 @@ const operationsByTag = deepMerge(operationsByTag$2, operationsByTag$1);
|
|
1364
3347
|
const buildApiClient = () => class {
|
1365
3348
|
constructor(options = {}) {
|
1366
3349
|
const provider = options.host ?? "production";
|
1367
|
-
const apiKey = options.apiKey
|
3350
|
+
const apiKey = options.apiKey;
|
1368
3351
|
const trace = options.trace ?? defaultTrace;
|
1369
3352
|
const clientID = generateUUID();
|
1370
3353
|
if (!apiKey) {
|
@@ -1621,7 +3604,7 @@ var __privateAdd$5 = (obj, member, value) => {
|
|
1621
3604
|
};
|
1622
3605
|
var __privateSet$3 = (obj, member, value, setter) => {
|
1623
3606
|
__accessCheck$5(obj, member, "write to private field");
|
1624
|
-
|
3607
|
+
member.set(obj, value);
|
1625
3608
|
return value;
|
1626
3609
|
};
|
1627
3610
|
var _query, _page;
|
@@ -1800,7 +3783,7 @@ var __privateAdd$4 = (obj, member, value) => {
|
|
1800
3783
|
};
|
1801
3784
|
var __privateSet$2 = (obj, member, value, setter) => {
|
1802
3785
|
__accessCheck$4(obj, member, "write to private field");
|
1803
|
-
|
3786
|
+
member.set(obj, value);
|
1804
3787
|
return value;
|
1805
3788
|
};
|
1806
3789
|
var __privateMethod$3 = (obj, member, method) => {
|
@@ -2128,7 +4111,7 @@ var __privateAdd$3 = (obj, member, value) => {
|
|
2128
4111
|
};
|
2129
4112
|
var __privateSet$1 = (obj, member, value, setter) => {
|
2130
4113
|
__accessCheck$3(obj, member, "write to private field");
|
2131
|
-
|
4114
|
+
member.set(obj, value);
|
2132
4115
|
return value;
|
2133
4116
|
};
|
2134
4117
|
var __privateMethod$2 = (obj, member, method) => {
|
@@ -3297,7 +5280,7 @@ var __privateAdd = (obj, member, value) => {
|
|
3297
5280
|
};
|
3298
5281
|
var __privateSet = (obj, member, value, setter) => {
|
3299
5282
|
__accessCheck(obj, member, "write to private field");
|
3300
|
-
|
5283
|
+
member.set(obj, value);
|
3301
5284
|
return value;
|
3302
5285
|
};
|
3303
5286
|
var __privateMethod = (obj, member, method) => {
|
@@ -3342,7 +5325,7 @@ const buildClient = (plugins) => {
|
|
3342
5325
|
return { databaseURL, branch };
|
3343
5326
|
}
|
3344
5327
|
}, _options = new WeakMap(), _parseOptions = new WeakSet(), parseOptions_fn = function(options) {
|
3345
|
-
const enableBrowser = options?.enableBrowser ??
|
5328
|
+
const enableBrowser = options?.enableBrowser ?? false;
|
3346
5329
|
const isBrowser = typeof window !== "undefined" && typeof Deno === "undefined";
|
3347
5330
|
if (isBrowser && !enableBrowser) {
|
3348
5331
|
throw new Error(
|
@@ -3350,8 +5333,9 @@ const buildClient = (plugins) => {
|
|
3350
5333
|
);
|
3351
5334
|
}
|
3352
5335
|
const fetch = getFetchImplementation(options?.fetch);
|
3353
|
-
const databaseURL = options?.databaseURL
|
3354
|
-
const apiKey = options?.apiKey
|
5336
|
+
const databaseURL = options?.databaseURL;
|
5337
|
+
const apiKey = options?.apiKey;
|
5338
|
+
const branch = options?.branch;
|
3355
5339
|
const trace = options?.trace ?? defaultTrace;
|
3356
5340
|
const clientName = options?.clientName;
|
3357
5341
|
const host = options?.host ?? "production";
|
@@ -3362,25 +5346,8 @@ const buildClient = (plugins) => {
|
|
3362
5346
|
if (!databaseURL) {
|
3363
5347
|
throw new Error("Option databaseURL is required");
|
3364
5348
|
}
|
3365
|
-
|
3366
|
-
|
3367
|
-
const branch = options?.branch || previewBranch || envBranch || "main";
|
3368
|
-
if (!!previewBranch && branch !== previewBranch) {
|
3369
|
-
console.warn(
|
3370
|
-
`Ignoring preview branch ${previewBranch} because branch option was passed to the client constructor with value ${branch}`
|
3371
|
-
);
|
3372
|
-
} else if (!!envBranch && branch !== envBranch) {
|
3373
|
-
console.warn(
|
3374
|
-
`Ignoring branch ${envBranch} because branch option was passed to the client constructor with value ${branch}`
|
3375
|
-
);
|
3376
|
-
} else if (!!previewBranch && !!envBranch && previewBranch !== envBranch) {
|
3377
|
-
console.warn(
|
3378
|
-
`Ignoring preview branch ${previewBranch} and branch ${envBranch} because branch option was passed to the client constructor with value ${branch}`
|
3379
|
-
);
|
3380
|
-
} else if (!previewBranch && !envBranch && options?.branch === void 0) {
|
3381
|
-
console.warn(
|
3382
|
-
`No branch was passed to the client constructor. Using default branch ${branch}. You can set the branch with the environment variable XATA_BRANCH or by passing the branch option to the client constructor.`
|
3383
|
-
);
|
5349
|
+
if (!branch) {
|
5350
|
+
throw new Error("Option branch is required");
|
3384
5351
|
}
|
3385
5352
|
return {
|
3386
5353
|
fetch,
|
@@ -3491,6 +5458,48 @@ const deserialize = (json) => {
|
|
3491
5458
|
return defaultSerializer.fromJSON(json);
|
3492
5459
|
};
|
3493
5460
|
|
5461
|
+
function parseEnvironment(environment) {
|
5462
|
+
try {
|
5463
|
+
if (typeof environment === "function") {
|
5464
|
+
return new Proxy(
|
5465
|
+
{},
|
5466
|
+
{
|
5467
|
+
get(target) {
|
5468
|
+
return environment(target);
|
5469
|
+
}
|
5470
|
+
}
|
5471
|
+
);
|
5472
|
+
}
|
5473
|
+
if (isObject(environment)) {
|
5474
|
+
return environment;
|
5475
|
+
}
|
5476
|
+
} catch (error) {
|
5477
|
+
}
|
5478
|
+
return {};
|
5479
|
+
}
|
5480
|
+
function buildPreviewBranchName({ org, branch }) {
|
5481
|
+
return `preview-${org}-${branch}`;
|
5482
|
+
}
|
5483
|
+
function getDeployPreviewBranch(environment) {
|
5484
|
+
try {
|
5485
|
+
const { deployPreview, deployPreviewBranch, vercelGitCommitRef, vercelGitRepoOwner } = parseEnvironment(environment);
|
5486
|
+
if (deployPreviewBranch)
|
5487
|
+
return deployPreviewBranch;
|
5488
|
+
switch (deployPreview) {
|
5489
|
+
case "vercel": {
|
5490
|
+
if (!vercelGitCommitRef || !vercelGitRepoOwner) {
|
5491
|
+
console.warn("XATA_PREVIEW=vercel but VERCEL_GIT_COMMIT_REF or VERCEL_GIT_REPO_OWNER is not valid");
|
5492
|
+
return void 0;
|
5493
|
+
}
|
5494
|
+
return buildPreviewBranchName({ org: vercelGitRepoOwner, branch: vercelGitCommitRef });
|
5495
|
+
}
|
5496
|
+
}
|
5497
|
+
return void 0;
|
5498
|
+
} catch (err) {
|
5499
|
+
return void 0;
|
5500
|
+
}
|
5501
|
+
}
|
5502
|
+
|
3494
5503
|
class XataError extends Error {
|
3495
5504
|
constructor(message, status) {
|
3496
5505
|
super(message);
|
@@ -3498,5 +5507,5 @@ class XataError extends Error {
|
|
3498
5507
|
}
|
3499
5508
|
}
|
3500
5509
|
|
3501
|
-
export { BaseClient, FetcherError, FilesPlugin, operationsByTag as Operations, PAGINATION_DEFAULT_OFFSET, PAGINATION_DEFAULT_SIZE, PAGINATION_MAX_OFFSET, PAGINATION_MAX_SIZE, Page, PageRecordArray, Query, RecordArray, RecordColumnTypes, Repository, RestRepository, SQLPlugin, SchemaPlugin, SearchPlugin, Serializer, TransactionPlugin, XataApiClient, XataApiPlugin, XataError, XataFile, XataPlugin, acceptWorkspaceMemberInvite, adaptAllTables, adaptTable, addGitBranchesEntry, addTableColumn, aggregateTable, applyBranchSchemaEdit, applyMigration, askTable, askTableSession, branchTransaction, buildClient, buildPreviewBranchName, buildProviderString, bulkInsertTableRecords, cancelWorkspaceMemberInvite, compareBranchSchemas, compareBranchWithUserSchema, compareMigrationRequest, contains, copyBranch, createBranch, createCluster, createDatabase, createMigrationRequest, createTable, createUserAPIKey, createWorkspace, deleteBranch, deleteColumn, deleteDatabase, deleteDatabaseGithubSettings, deleteFile, deleteFileItem, deleteOAuthAccessToken, deleteRecord, deleteTable, deleteUser, deleteUserAPIKey, deleteUserOAuthClient, deleteWorkspace, deserialize, endsWith, equals, executeBranchMigrationPlan, exists, fileAccess, fileUpload, ge,
|
5510
|
+
export { BaseClient, Buffer, FetcherError, FilesPlugin, operationsByTag as Operations, PAGINATION_DEFAULT_OFFSET, PAGINATION_DEFAULT_SIZE, PAGINATION_MAX_OFFSET, PAGINATION_MAX_SIZE, Page, PageRecordArray, Query, RecordArray, RecordColumnTypes, Repository, RestRepository, SQLPlugin, SchemaPlugin, SearchPlugin, Serializer, TransactionPlugin, XataApiClient, XataApiPlugin, XataError, XataFile, XataPlugin, acceptWorkspaceMemberInvite, adaptAllTables, adaptTable, addGitBranchesEntry, addTableColumn, aggregateTable, applyBranchSchemaEdit, applyMigration, askTable, askTableSession, branchTransaction, buildClient, buildPreviewBranchName, buildProviderString, bulkInsertTableRecords, cancelWorkspaceMemberInvite, compareBranchSchemas, compareBranchWithUserSchema, compareMigrationRequest, contains, copyBranch, createBranch, createCluster, createDatabase, createMigrationRequest, createTable, createUserAPIKey, createWorkspace, deleteBranch, deleteCluster, deleteColumn, deleteDatabase, deleteDatabaseGithubSettings, deleteFile, deleteFileItem, deleteOAuthAccessToken, deleteRecord, deleteTable, deleteUser, deleteUserAPIKey, deleteUserOAuthClient, deleteWorkspace, deserialize, endsWith, equals, executeBranchMigrationPlan, exists, fileAccess, fileUpload, ge, getAuthorizationCode, getBranchDetails, getBranchList, getBranchMetadata, getBranchMigrationHistory, getBranchMigrationJobStatus, getBranchMigrationPlan, getBranchSchemaHistory, getBranchStats, getCluster, getColumn, getDatabaseGithubSettings, getDatabaseList, getDatabaseMetadata, getDatabaseSettings, getDeployPreviewBranch, getFile, getFileItem, getGitBranchesMapping, getHostUrl, getMigrationHistory, getMigrationJobStatus, getMigrationRequest, getMigrationRequestIsMerged, getRecord, getSchema, getTableColumns, getTableSchema, getUser, getUserAPIKeys, getUserOAuthAccessTokens, getUserOAuthClients, getWorkspace, getWorkspaceMembersList, getWorkspaceSettings, getWorkspacesList, grantAuthorizationCode, greaterEquals, greaterThan, greaterThanEquals, gt, gte, iContains, iPattern, includes, includesAll, includesAny, includesNone, insertRecord, insertRecordWithID, inviteWorkspaceMember, is, isCursorPaginationOptions, isHostProviderAlias, isHostProviderBuilder, isIdentifiable, isNot, isValidExpandedColumn, isValidSelectableColumns, le, lessEquals, lessThan, lessThanEquals, listClusters, listMigrationRequestsCommits, listRegions, lt, lte, mergeMigrationRequest, notExists, operationsByTag, parseProviderString, parseWorkspacesUrlParts, pattern, previewBranchSchemaEdit, pushBranchMigrations, putFile, putFileItem, queryMigrationRequests, queryTable, removeGitBranchesEntry, removeWorkspaceMember, renameDatabase, resendWorkspaceMemberInvite, resolveBranch, searchBranch, searchTable, serialize, setTableSchema, sqlQuery, startsWith, summarizeTable, transformImage, updateBranchMetadata, updateBranchSchema, updateCluster, updateColumn, updateDatabaseGithubSettings, updateDatabaseMetadata, updateDatabaseSettings, updateMigrationRequest, updateOAuthAccessToken, updateRecordWithID, updateTable, updateUser, updateWorkspace, updateWorkspaceMemberInvite, updateWorkspaceMemberRole, updateWorkspaceSettings, upsertRecordWithID, vectorSearchTable };
|
3502
5511
|
//# sourceMappingURL=index.mjs.map
|