@remnawave/xtls-sdk
Version:
A Typescript SDK for XRAY (XTLS) Core GRPC Api
274 lines (273 loc) • 10.1 kB
JavaScript
;
// Code generated by protoc-gen-ts_proto. DO NOT EDIT.
// versions:
// protoc-gen-ts_proto v2.11.2
// protoc v6.33.4
// source: proxy/dokodemo/config.proto
Object.defineProperty(exports, "__esModule", { value: true });
exports.Config_PortMapEntry = exports.Config = exports.protobufPackage = void 0;
/* eslint-disable */
const wire_1 = require("@bufbuild/protobuf/wire");
const address_1 = require("../../common/net/address");
const network_1 = require("../../common/net/network");
const typeRegistry_1 = require("../../typeRegistry");
exports.protobufPackage = "xray.proxy.dokodemo";
function createBaseConfig() {
return {
$type: "xray.proxy.dokodemo.Config",
address: undefined,
port: 0,
portMap: {},
networks: [],
followRedirect: false,
userLevel: 0,
};
}
exports.Config = {
$type: "xray.proxy.dokodemo.Config",
encode(message, writer = new wire_1.BinaryWriter()) {
if (message.address !== undefined) {
address_1.IPOrDomain.encode(message.address, writer.uint32(10).fork()).join();
}
if (message.port !== 0) {
writer.uint32(16).uint32(message.port);
}
globalThis.Object.entries(message.portMap).forEach(([key, value]) => {
exports.Config_PortMapEntry.encode({ $type: "xray.proxy.dokodemo.Config.PortMapEntry", key: key, value }, writer.uint32(26).fork()).join();
});
writer.uint32(58).fork();
for (const v of message.networks) {
writer.int32(v);
}
writer.join();
if (message.followRedirect !== false) {
writer.uint32(40).bool(message.followRedirect);
}
if (message.userLevel !== 0) {
writer.uint32(48).uint32(message.userLevel);
}
return writer;
},
decode(input, length) {
const reader = input instanceof wire_1.BinaryReader ? input : new wire_1.BinaryReader(input);
const end = length === undefined ? reader.len : reader.pos + length;
const message = createBaseConfig();
while (reader.pos < end) {
const tag = reader.uint32();
switch (tag >>> 3) {
case 1: {
if (tag !== 10) {
break;
}
message.address = address_1.IPOrDomain.decode(reader, reader.uint32());
continue;
}
case 2: {
if (tag !== 16) {
break;
}
message.port = reader.uint32();
continue;
}
case 3: {
if (tag !== 26) {
break;
}
const entry3 = exports.Config_PortMapEntry.decode(reader, reader.uint32());
if (entry3.value !== undefined) {
message.portMap[entry3.key] = entry3.value;
}
continue;
}
case 7: {
if (tag === 56) {
message.networks.push(reader.int32());
continue;
}
if (tag === 58) {
const end2 = reader.uint32() + reader.pos;
while (reader.pos < end2) {
message.networks.push(reader.int32());
}
continue;
}
break;
}
case 5: {
if (tag !== 40) {
break;
}
message.followRedirect = reader.bool();
continue;
}
case 6: {
if (tag !== 48) {
break;
}
message.userLevel = reader.uint32();
continue;
}
}
if ((tag & 7) === 4 || tag === 0) {
break;
}
reader.skip(tag & 7);
}
return message;
},
fromJSON(object) {
return {
$type: exports.Config.$type,
address: isSet(object.address) ? address_1.IPOrDomain.fromJSON(object.address) : undefined,
port: isSet(object.port) ? globalThis.Number(object.port) : 0,
portMap: isObject(object.portMap)
? globalThis.Object.entries(object.portMap).reduce((acc, [key, value]) => {
acc[key] = globalThis.String(value);
return acc;
}, {})
: isObject(object.port_map)
? globalThis.Object.entries(object.port_map).reduce((acc, [key, value]) => {
acc[key] = globalThis.String(value);
return acc;
}, {})
: {},
networks: globalThis.Array.isArray(object?.networks) ? object.networks.map((e) => (0, network_1.networkFromJSON)(e)) : [],
followRedirect: isSet(object.followRedirect)
? globalThis.Boolean(object.followRedirect)
: isSet(object.follow_redirect)
? globalThis.Boolean(object.follow_redirect)
: false,
userLevel: isSet(object.userLevel)
? globalThis.Number(object.userLevel)
: isSet(object.user_level)
? globalThis.Number(object.user_level)
: 0,
};
},
toJSON(message) {
const obj = {};
if (message.address !== undefined) {
obj.address = address_1.IPOrDomain.toJSON(message.address);
}
if (message.port !== 0) {
obj.port = Math.round(message.port);
}
if (message.portMap) {
const entries = globalThis.Object.entries(message.portMap);
if (entries.length > 0) {
obj.portMap = {};
entries.forEach(([k, v]) => {
obj.portMap[k] = v;
});
}
}
if (message.networks?.length) {
obj.networks = message.networks.map((e) => (0, network_1.networkToJSON)(e));
}
if (message.followRedirect !== false) {
obj.followRedirect = message.followRedirect;
}
if (message.userLevel !== 0) {
obj.userLevel = Math.round(message.userLevel);
}
return obj;
},
create(base) {
return exports.Config.fromPartial(base ?? {});
},
fromPartial(object) {
const message = createBaseConfig();
message.address = (object.address !== undefined && object.address !== null)
? address_1.IPOrDomain.fromPartial(object.address)
: undefined;
message.port = object.port ?? 0;
message.portMap = globalThis.Object.entries(object.portMap ?? {}).reduce((acc, [key, value]) => {
if (value !== undefined) {
acc[key] = globalThis.String(value);
}
return acc;
}, {});
message.networks = object.networks?.map((e) => e) || [];
message.followRedirect = object.followRedirect ?? false;
message.userLevel = object.userLevel ?? 0;
return message;
},
};
typeRegistry_1.messageTypeRegistry.set(exports.Config.$type, exports.Config);
function createBaseConfig_PortMapEntry() {
return { $type: "xray.proxy.dokodemo.Config.PortMapEntry", key: "", value: "" };
}
exports.Config_PortMapEntry = {
$type: "xray.proxy.dokodemo.Config.PortMapEntry",
encode(message, writer = new wire_1.BinaryWriter()) {
if (message.key !== "") {
writer.uint32(10).string(message.key);
}
if (message.value !== "") {
writer.uint32(18).string(message.value);
}
return writer;
},
decode(input, length) {
const reader = input instanceof wire_1.BinaryReader ? input : new wire_1.BinaryReader(input);
const end = length === undefined ? reader.len : reader.pos + length;
const message = createBaseConfig_PortMapEntry();
while (reader.pos < end) {
const tag = reader.uint32();
switch (tag >>> 3) {
case 1: {
if (tag !== 10) {
break;
}
message.key = reader.string();
continue;
}
case 2: {
if (tag !== 18) {
break;
}
message.value = reader.string();
continue;
}
}
if ((tag & 7) === 4 || tag === 0) {
break;
}
reader.skip(tag & 7);
}
return message;
},
fromJSON(object) {
return {
$type: exports.Config_PortMapEntry.$type,
key: isSet(object.key) ? globalThis.String(object.key) : "",
value: isSet(object.value) ? globalThis.String(object.value) : "",
};
},
toJSON(message) {
const obj = {};
if (message.key !== "") {
obj.key = message.key;
}
if (message.value !== "") {
obj.value = message.value;
}
return obj;
},
create(base) {
return exports.Config_PortMapEntry.fromPartial(base ?? {});
},
fromPartial(object) {
const message = createBaseConfig_PortMapEntry();
message.key = object.key ?? "";
message.value = object.value ?? "";
return message;
},
};
typeRegistry_1.messageTypeRegistry.set(exports.Config_PortMapEntry.$type, exports.Config_PortMapEntry);
function isObject(value) {
return typeof value === "object" && value !== null;
}
function isSet(value) {
return value !== null && value !== undefined;
}