vibetunnel
Version:
Terminal sharing server with web interface - supports macOS, Linux, and headless environments
41 lines • 5.67 kB
JavaScript
;
/**
* Unified control socket protocol definitions
*/
Object.defineProperty(exports, "__esModule", { value: true });
exports.createControlMessage = createControlMessage;
exports.createControlResponse = createControlResponse;
exports.createControlEvent = createControlEvent;
// Helper to create control messages
function createControlMessage(category, action, payload, sessionId) {
return {
id: crypto.randomUUID(),
type: 'request',
category,
action,
payload,
sessionId,
};
}
function createControlResponse(request, payload, error) {
return {
id: request.id,
type: 'response',
category: request.category,
action: request.action,
payload,
sessionId: request.sessionId,
error,
};
}
function createControlEvent(category, action, payload, sessionId) {
return {
id: crypto.randomUUID(),
type: 'event',
category,
action,
payload,
sessionId,
};
}
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29udHJvbC1wcm90b2NvbC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy9zZXJ2ZXIvd2Vic29ja2V0L2NvbnRyb2wtcHJvdG9jb2wudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IjtBQUFBOztHQUVHOztBQThFSCxvREFjQztBQUVELHNEQWNDO0FBRUQsZ0RBY0M7QUEvQ0Qsb0NBQW9DO0FBQ3BDLFNBQWdCLG9CQUFvQixDQUNsQyxRQUF5QixFQUN6QixNQUFjLEVBQ2QsT0FBaUIsRUFDakIsU0FBa0I7SUFFbEIsT0FBTztRQUNMLEVBQUUsRUFBRSxNQUFNLENBQUMsVUFBVSxFQUFFO1FBQ3ZCLElBQUksRUFBRSxTQUFTO1FBQ2YsUUFBUTtRQUNSLE1BQU07UUFDTixPQUFPO1FBQ1AsU0FBUztLQUNWLENBQUM7QUFDSixDQUFDO0FBRUQsU0FBZ0IscUJBQXFCLENBQ25DLE9BQXVCLEVBQ3ZCLE9BQWlCLEVBQ2pCLEtBQWM7SUFFZCxPQUFPO1FBQ0wsRUFBRSxFQUFFLE9BQU8sQ0FBQyxFQUFFO1FBQ2QsSUFBSSxFQUFFLFVBQVU7UUFDaEIsUUFBUSxFQUFFLE9BQU8sQ0FBQyxRQUFRO1FBQzFCLE1BQU0sRUFBRSxPQUFPLENBQUMsTUFBTTtRQUN0QixPQUFPO1FBQ1AsU0FBUyxFQUFFLE9BQU8sQ0FBQyxTQUFTO1FBQzVCLEtBQUs7S0FDTixDQUFDO0FBQ0osQ0FBQztBQUVELFNBQWdCLGtCQUFrQixDQUNoQyxRQUF5QixFQUN6QixNQUFjLEVBQ2QsT0FBaUIsRUFDakIsU0FBa0I7SUFFbEIsT0FBTztRQUNMLEVBQUUsRUFBRSxNQUFNLENBQUMsVUFBVSxFQUFFO1FBQ3ZCLElBQUksRUFBRSxPQUFPO1FBQ2IsUUFBUTtRQUNSLE1BQU07UUFDTixPQUFPO1FBQ1AsU0FBUztLQUNWLENBQUM7QUFDSixDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiLyoqXG4gKiBVbmlmaWVkIGNvbnRyb2wgc29ja2V0IHByb3RvY29sIGRlZmluaXRpb25zXG4gKi9cblxuZXhwb3J0IHR5cGUgQ29udHJvbE1lc3NhZ2VUeXBlID0gJ3JlcXVlc3QnIHwgJ3Jlc3BvbnNlJyB8ICdldmVudCc7XG5leHBvcnQgdHlwZSBDb250cm9sQ2F0ZWdvcnkgPSAndGVybWluYWwnIHwgJ2dpdCcgfCAnc3lzdGVtJyB8ICdub3RpZmljYXRpb24nO1xuXG5leHBvcnQgaW50ZXJmYWNlIENvbnRyb2xNZXNzYWdlIHtcbiAgaWQ6IHN0cmluZztcbiAgdHlwZTogQ29udHJvbE1lc3NhZ2VUeXBlO1xuICBjYXRlZ29yeTogQ29udHJvbENhdGVnb3J5O1xuICBhY3Rpb246IHN0cmluZztcbiAgcGF5bG9hZD86IHVua25vd247XG4gIHNlc3Npb25JZD86IHN0cmluZztcbiAgdXNlcklkPzogc3RyaW5nO1xuICBlcnJvcj86IHN0cmluZztcbn1cblxuLy8gVGVybWluYWwgY29udHJvbCBhY3Rpb25zXG5leHBvcnQgaW50ZXJmYWNlIFRlcm1pbmFsU3Bhd25SZXF1ZXN0IHtcbiAgc2Vzc2lvbklkOiBzdHJpbmc7XG4gIHdvcmtpbmdEaXJlY3Rvcnk/OiBzdHJpbmc7XG4gIGNvbW1hbmQ/OiBzdHJpbmc7XG4gIHRlcm1pbmFsUHJlZmVyZW5jZT86IHN0cmluZztcbiAgZ2l0UmVwb1BhdGg/OiBzdHJpbmc7XG4gIGdpdEJyYW5jaD86IHN0cmluZztcbiAgZ2l0QWhlYWRDb3VudD86IG51bWJlcjtcbiAgZ2l0QmVoaW5kQ291bnQ/OiBudW1iZXI7XG4gIGdpdEhhc0NoYW5nZXM/OiBib29sZWFuO1xuICBnaXRJc1dvcmt0cmVlPzogYm9vbGVhbjtcbiAgZ2l0TWFpblJlcG9QYXRoPzogc3RyaW5nO1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIFRlcm1pbmFsU3Bhd25SZXNwb25zZSB7XG4gIHN1Y2Nlc3M6IGJvb2xlYW47XG4gIHBpZD86IG51bWJlcjtcbiAgZXJyb3I/OiBzdHJpbmc7XG59XG5cbi8vIFN5c3RlbSBjb250cm9sIHBheWxvYWRzXG5leHBvcnQgaW50ZXJmYWNlIFN5c3RlbVJlYWR5RXZlbnQge1xuICB0aW1lc3RhbXA6IG51bWJlcjtcbiAgdmVyc2lvbj86IHN0cmluZztcbn1cblxuZXhwb3J0IGludGVyZmFjZSBTeXN0ZW1QaW5nUmVxdWVzdCB7XG4gIHRpbWVzdGFtcDogbnVtYmVyO1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIFN5c3RlbVBpbmdSZXNwb25zZSB7XG4gIHN0YXR1czogc3RyaW5nO1xuICB0aW1lc3RhbXA6IG51bWJlcjtcbn1cblxuLy8gU2Vzc2lvbiBtb25pdG9yIGV2ZW50IHR5cGVzXG5leHBvcnQgdHlwZSBTZXNzaW9uTW9uaXRvckFjdGlvbiA9XG4gIHwgJ3Nlc3Npb24tc3RhcnQnXG4gIHwgJ3Nlc3Npb24tZXhpdCdcbiAgfCAnY29tbWFuZC1maW5pc2hlZCdcbiAgfCAnY29tbWFuZC1lcnJvcidcbiAgfCAnYmVsbCdcbiAgfCAnY2xhdWRlLXR1cm4nO1xuXG5leHBvcnQgaW50ZXJmYWNlIFNlc3Npb25Nb25pdG9yRXZlbnQge1xuICB0eXBlOiBTZXNzaW9uTW9uaXRvckFjdGlvbjtcbiAgc2Vzc2lvbklkOiBzdHJpbmc7XG4gIHNlc3Npb25OYW1lOiBzdHJpbmc7XG4gIHRpbWVzdGFtcDogc3RyaW5nO1xuXG4gIC8vIEV2ZW50LXNwZWNpZmljIGZpZWxkc1xuICBleGl0Q29kZT86IG51bWJlcjtcbiAgY29tbWFuZD86IHN0cmluZztcbiAgZHVyYXRpb24/OiBudW1iZXI7XG4gIGFjdGl2aXR5U3RhdHVzPzoge1xuICAgIGlzQWN0aXZlOiBib29sZWFuO1xuICAgIGFwcD86IHN0cmluZztcbiAgfTtcbn1cblxuLy8gSGVscGVyIHRvIGNyZWF0ZSBjb250cm9sIG1lc3NhZ2VzXG5leHBvcnQgZnVuY3Rpb24gY3JlYXRlQ29udHJvbE1lc3NhZ2UoXG4gIGNhdGVnb3J5OiBDb250cm9sQ2F0ZWdvcnksXG4gIGFjdGlvbjogc3RyaW5nLFxuICBwYXlsb2FkPzogdW5rbm93bixcbiAgc2Vzc2lvbklkPzogc3RyaW5nXG4pOiBDb250cm9sTWVzc2FnZSB7XG4gIHJldHVybiB7XG4gICAgaWQ6IGNyeXB0by5yYW5kb21VVUlEKCksXG4gICAgdHlwZTogJ3JlcXVlc3QnLFxuICAgIGNhdGVnb3J5LFxuICAgIGFjdGlvbixcbiAgICBwYXlsb2FkLFxuICAgIHNlc3Npb25JZCxcbiAgfTtcbn1cblxuZXhwb3J0IGZ1bmN0aW9uIGNyZWF0ZUNvbnRyb2xSZXNwb25zZShcbiAgcmVxdWVzdDogQ29udHJvbE1lc3NhZ2UsXG4gIHBheWxvYWQ/OiB1bmtub3duLFxuICBlcnJvcj86IHN0cmluZ1xuKTogQ29udHJvbE1lc3NhZ2Uge1xuICByZXR1cm4ge1xuICAgIGlkOiByZXF1ZXN0LmlkLFxuICAgIHR5cGU6ICdyZXNwb25zZScsXG4gICAgY2F0ZWdvcnk6IHJlcXVlc3QuY2F0ZWdvcnksXG4gICAgYWN0aW9uOiByZXF1ZXN0LmFjdGlvbixcbiAgICBwYXlsb2FkLFxuICAgIHNlc3Npb25JZDogcmVxdWVzdC5zZXNzaW9uSWQsXG4gICAgZXJyb3IsXG4gIH07XG59XG5cbmV4cG9ydCBmdW5jdGlvbiBjcmVhdGVDb250cm9sRXZlbnQoXG4gIGNhdGVnb3J5OiBDb250cm9sQ2F0ZWdvcnksXG4gIGFjdGlvbjogc3RyaW5nLFxuICBwYXlsb2FkPzogdW5rbm93bixcbiAgc2Vzc2lvbklkPzogc3RyaW5nXG4pOiBDb250cm9sTWVzc2FnZSB7XG4gIHJldHVybiB7XG4gICAgaWQ6IGNyeXB0by5yYW5kb21VVUlEKCksXG4gICAgdHlwZTogJ2V2ZW50JyxcbiAgICBjYXRlZ29yeSxcbiAgICBhY3Rpb24sXG4gICAgcGF5bG9hZCxcbiAgICBzZXNzaW9uSWQsXG4gIH07XG59XG4iXX0=