UNPKG

consortium

Version:

Remote control and session sharing CLI for AI coding agents

148 lines (138 loc) • 6.01 kB
'use strict'; 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;