consortium
Version:
Remote control and session sharing CLI for AI coding agents
148 lines (138 loc) • 6.01 kB
JavaScript
;
var structDeserialize = require('./struct-deserialize-BJQW83nw.cjs');
// @__NO_SIDE_EFFECTS__
function extend(base, fields, options) {
return structDeserialize.struct(Object.assign({}, base.fields, fields), {
littleEndian: options?.littleEndian ?? base.littleEndian,
extra: base.extra,
postDeserialize: options?.postDeserialize
});
}
// @__NO_SIDE_EFFECTS__
function getUint16(buffer, offset, littleEndian) {
return littleEndian ? buffer[offset] | buffer[offset + 1] << 8 : buffer[offset + 1] | buffer[offset] << 8;
}
function setUint16(buffer, offset, value, littleEndian) {
if (littleEndian) {
buffer[offset] = value;
buffer[offset + 1] = value >> 8;
} else {
buffer[offset] = value >> 8;
buffer[offset + 1] = value;
}
}
// @__NO_SIDE_EFFECTS__
function getUint32LittleEndian(buffer, offset) {
return (buffer[offset] | buffer[offset + 1] << 8 | buffer[offset + 2] << 16 | buffer[offset + 3] << 24) >>> 0;
}
// @__NO_SIDE_EFFECTS__
function getUint32BigEndian(buffer, offset) {
return (buffer[offset] << 24 | buffer[offset + 1] << 16 | buffer[offset + 2] << 8 | buffer[offset + 3]) >>> 0;
}
// @__NO_SIDE_EFFECTS__
function getUint32(buffer, offset, littleEndian) {
return littleEndian ? (buffer[offset] | buffer[offset + 1] << 8 | buffer[offset + 2] << 16 | buffer[offset + 3] << 24) >>> 0 : (buffer[offset] << 24 | buffer[offset + 1] << 16 | buffer[offset + 2] << 8 | buffer[offset + 3]) >>> 0;
}
function setUint32(buffer, offset, value, littleEndian) {
if (littleEndian) {
buffer[offset] = value;
buffer[offset + 1] = value >> 8;
buffer[offset + 2] = value >> 16;
buffer[offset + 3] = value >> 24;
} else {
buffer[offset] = value >> 24;
buffer[offset + 1] = value >> 16;
buffer[offset + 2] = value >> 8;
buffer[offset + 3] = value;
}
}
function getUint64LittleEndian(buffer, offset) {
return BigInt(buffer[offset]) | BigInt(buffer[offset + 1]) << 8n | BigInt(buffer[offset + 2]) << 16n | BigInt(buffer[offset + 3]) << 24n | BigInt(buffer[offset + 4]) << 32n | BigInt(buffer[offset + 5]) << 40n | BigInt(buffer[offset + 6]) << 48n | BigInt(buffer[offset + 7]) << 56n;
}
function getUint64(buffer, offset, littleEndian) {
return littleEndian ? BigInt(buffer[offset]) | BigInt(buffer[offset + 1]) << 8n | BigInt(buffer[offset + 2]) << 16n | BigInt(buffer[offset + 3]) << 24n | BigInt(buffer[offset + 4]) << 32n | BigInt(buffer[offset + 5]) << 40n | BigInt(buffer[offset + 6]) << 48n | BigInt(buffer[offset + 7]) << 56n : BigInt(buffer[offset]) << 56n | BigInt(buffer[offset + 1]) << 48n | BigInt(buffer[offset + 2]) << 40n | BigInt(buffer[offset + 3]) << 32n | BigInt(buffer[offset + 4]) << 24n | BigInt(buffer[offset + 5]) << 16n | BigInt(buffer[offset + 6]) << 8n | BigInt(buffer[offset + 7]);
}
function setUint64(buffer, offset, value, littleEndian) {
if (littleEndian) {
buffer[offset] = Number(value & 0xffn);
buffer[offset + 1] = Number(value >> 8n & 0xffn);
buffer[offset + 2] = Number(value >> 16n & 0xffn);
buffer[offset + 3] = Number(value >> 24n & 0xffn);
buffer[offset + 4] = Number(value >> 32n & 0xffn);
buffer[offset + 5] = Number(value >> 40n & 0xffn);
buffer[offset + 6] = Number(value >> 48n & 0xffn);
buffer[offset + 7] = Number(value >> 56n & 0xffn);
} else {
buffer[offset] = Number(value >> 56n & 0xffn);
buffer[offset + 1] = Number(value >> 48n & 0xffn);
buffer[offset + 2] = Number(value >> 40n & 0xffn);
buffer[offset + 3] = Number(value >> 32n & 0xffn);
buffer[offset + 4] = Number(value >> 24n & 0xffn);
buffer[offset + 5] = Number(value >> 16n & 0xffn);
buffer[offset + 6] = Number(value >> 8n & 0xffn);
buffer[offset + 7] = Number(value & 0xffn);
}
}
// @__NO_SIDE_EFFECTS__
function number(size, serialize, deserialize) {
const fn = (() => fn);
Object.assign(fn, structDeserialize.field(size, "byob", serialize, deserialize));
return fn;
}
const u8 = /* @__PURE__ */ number(1, (value, { buffer, index }) => {
buffer[index] = value;
}, function* (then, reader) {
const data = yield* then(reader.readExactly(1));
return data[0];
});
const u16 = /* @__PURE__ */ number(2, (value, { buffer, index, littleEndian }) => {
setUint16(buffer, index, value, littleEndian);
}, function* (then, reader, { littleEndian }) {
const data = yield* then(reader.readExactly(2));
return getUint16(data, 0, littleEndian);
});
const u32 = /* @__PURE__ */ number(4, (value, { buffer, index, littleEndian }) => {
setUint32(buffer, index, value, littleEndian);
}, function* (then, reader, { littleEndian }) {
const data = yield* then(reader.readExactly(4));
return getUint32(data, 0, littleEndian);
});
const u64 = /* @__PURE__ */ number(8, (value, { buffer, index, littleEndian }) => {
setUint64(buffer, index, value, littleEndian);
}, function* (then, reader, { littleEndian }) {
const data = yield* then(reader.readExactly(8));
return getUint64(data, 0, littleEndian);
});
const { TextEncoder, TextDecoder } = globalThis;
const SharedEncoder = /* @__PURE__ */ new TextEncoder();
const SharedDecoder = /* @__PURE__ */ new TextDecoder();
// @__NO_SIDE_EFFECTS__
function encodeUtf8(input) {
return SharedEncoder.encode(input);
}
// @__NO_SIDE_EFFECTS__
function decodeUtf8(buffer) {
return SharedDecoder.decode(buffer);
}
const string = (/* @__NO_SIDE_EFFECTS__ */ (lengthOrField) => {
const field = structDeserialize.buffer(lengthOrField, {
convert: decodeUtf8,
back: encodeUtf8
});
field.as = () => field;
return field;
});
exports.TextDecoder = TextDecoder;
exports.decodeUtf8 = decodeUtf8;
exports.encodeUtf8 = encodeUtf8;
exports.extend = extend;
exports.getUint16 = getUint16;
exports.getUint32BigEndian = getUint32BigEndian;
exports.getUint32LittleEndian = getUint32LittleEndian;
exports.getUint64LittleEndian = getUint64LittleEndian;
exports.setUint16 = setUint16;
exports.string = string;
exports.u16 = u16;
exports.u32 = u32;
exports.u64 = u64;
exports.u8 = u8;