@remnawave/xtls-sdk
Version:
A Typescript SDK for XRAY (XTLS) Core GRPC Api
403 lines (402 loc) • 14.3 kB
JavaScript
;
// Code generated by protoc-gen-ts_proto. DO NOT EDIT.
// versions:
// protoc-gen-ts_proto v2.2.7
// protoc v5.28.3
// source: proxy/socks/config.proto
Object.defineProperty(exports, "__esModule", { value: true });
exports.ClientConfig = exports.ServerConfig_AccountsEntry = exports.ServerConfig = exports.Account = exports.AuthType = exports.protobufPackage = void 0;
exports.authTypeFromJSON = authTypeFromJSON;
exports.authTypeToJSON = authTypeToJSON;
/* eslint-disable */
const wire_1 = require("@bufbuild/protobuf/wire");
const address_1 = require("../../common/net/address");
const server_spec_1 = require("../../common/protocol/server_spec");
const typeRegistry_1 = require("../../typeRegistry");
exports.protobufPackage = "xray.proxy.socks";
/** AuthType is the authentication type of Socks proxy. */
var AuthType;
(function (AuthType) {
/** NO_AUTH - NO_AUTH is for anonymous authentication. */
AuthType[AuthType["NO_AUTH"] = 0] = "NO_AUTH";
/** PASSWORD - PASSWORD is for username/password authentication. */
AuthType[AuthType["PASSWORD"] = 1] = "PASSWORD";
AuthType[AuthType["UNRECOGNIZED"] = -1] = "UNRECOGNIZED";
})(AuthType || (exports.AuthType = AuthType = {}));
function authTypeFromJSON(object) {
switch (object) {
case 0:
case "NO_AUTH":
return AuthType.NO_AUTH;
case 1:
case "PASSWORD":
return AuthType.PASSWORD;
case -1:
case "UNRECOGNIZED":
default:
return AuthType.UNRECOGNIZED;
}
}
function authTypeToJSON(object) {
switch (object) {
case AuthType.NO_AUTH:
return "NO_AUTH";
case AuthType.PASSWORD:
return "PASSWORD";
case AuthType.UNRECOGNIZED:
default:
return "UNRECOGNIZED";
}
}
function createBaseAccount() {
return { $type: "xray.proxy.socks.Account", username: "", password: "" };
}
exports.Account = {
$type: "xray.proxy.socks.Account",
encode(message, writer = new wire_1.BinaryWriter()) {
if (message.username !== "") {
writer.uint32(10).string(message.username);
}
if (message.password !== "") {
writer.uint32(18).string(message.password);
}
return writer;
},
decode(input, length) {
const reader = input instanceof wire_1.BinaryReader ? input : new wire_1.BinaryReader(input);
let end = length === undefined ? reader.len : reader.pos + length;
const message = createBaseAccount();
while (reader.pos < end) {
const tag = reader.uint32();
switch (tag >>> 3) {
case 1: {
if (tag !== 10) {
break;
}
message.username = reader.string();
continue;
}
case 2: {
if (tag !== 18) {
break;
}
message.password = reader.string();
continue;
}
}
if ((tag & 7) === 4 || tag === 0) {
break;
}
reader.skip(tag & 7);
}
return message;
},
fromJSON(object) {
return {
$type: exports.Account.$type,
username: isSet(object.username) ? globalThis.String(object.username) : "",
password: isSet(object.password) ? globalThis.String(object.password) : "",
};
},
toJSON(message) {
const obj = {};
if (message.username !== "") {
obj.username = message.username;
}
if (message.password !== "") {
obj.password = message.password;
}
return obj;
},
create(base) {
return exports.Account.fromPartial(base ?? {});
},
fromPartial(object) {
const message = createBaseAccount();
message.username = object.username ?? "";
message.password = object.password ?? "";
return message;
},
};
typeRegistry_1.messageTypeRegistry.set(exports.Account.$type, exports.Account);
function createBaseServerConfig() {
return {
$type: "xray.proxy.socks.ServerConfig",
authType: 0,
accounts: {},
address: undefined,
udpEnabled: false,
userLevel: 0,
};
}
exports.ServerConfig = {
$type: "xray.proxy.socks.ServerConfig",
encode(message, writer = new wire_1.BinaryWriter()) {
if (message.authType !== 0) {
writer.uint32(8).int32(message.authType);
}
Object.entries(message.accounts).forEach(([key, value]) => {
exports.ServerConfig_AccountsEntry.encode({
$type: "xray.proxy.socks.ServerConfig.AccountsEntry",
key: key,
value,
}, writer.uint32(18).fork()).join();
});
if (message.address !== undefined) {
address_1.IPOrDomain.encode(message.address, writer.uint32(26).fork()).join();
}
if (message.udpEnabled !== false) {
writer.uint32(32).bool(message.udpEnabled);
}
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);
let end = length === undefined ? reader.len : reader.pos + length;
const message = createBaseServerConfig();
while (reader.pos < end) {
const tag = reader.uint32();
switch (tag >>> 3) {
case 1: {
if (tag !== 8) {
break;
}
message.authType = reader.int32();
continue;
}
case 2: {
if (tag !== 18) {
break;
}
const entry2 = exports.ServerConfig_AccountsEntry.decode(reader, reader.uint32());
if (entry2.value !== undefined) {
message.accounts[entry2.key] = entry2.value;
}
continue;
}
case 3: {
if (tag !== 26) {
break;
}
message.address = address_1.IPOrDomain.decode(reader, reader.uint32());
continue;
}
case 4: {
if (tag !== 32) {
break;
}
message.udpEnabled = 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.ServerConfig.$type,
authType: isSet(object.authType) ? authTypeFromJSON(object.authType) : 0,
accounts: isObject(object.accounts)
? Object.entries(object.accounts).reduce((acc, [key, value]) => {
acc[key] = String(value);
return acc;
}, {})
: {},
address: isSet(object.address) ? address_1.IPOrDomain.fromJSON(object.address) : undefined,
udpEnabled: isSet(object.udpEnabled) ? globalThis.Boolean(object.udpEnabled) : false,
userLevel: isSet(object.userLevel) ? globalThis.Number(object.userLevel) : 0,
};
},
toJSON(message) {
const obj = {};
if (message.authType !== 0) {
obj.authType = authTypeToJSON(message.authType);
}
if (message.accounts) {
const entries = Object.entries(message.accounts);
if (entries.length > 0) {
obj.accounts = {};
entries.forEach(([k, v]) => {
obj.accounts[k] = v;
});
}
}
if (message.address !== undefined) {
obj.address = address_1.IPOrDomain.toJSON(message.address);
}
if (message.udpEnabled !== false) {
obj.udpEnabled = message.udpEnabled;
}
if (message.userLevel !== 0) {
obj.userLevel = Math.round(message.userLevel);
}
return obj;
},
create(base) {
return exports.ServerConfig.fromPartial(base ?? {});
},
fromPartial(object) {
const message = createBaseServerConfig();
message.authType = object.authType ?? 0;
message.accounts = Object.entries(object.accounts ?? {}).reduce((acc, [key, value]) => {
if (value !== undefined) {
acc[key] = globalThis.String(value);
}
return acc;
}, {});
message.address = (object.address !== undefined && object.address !== null)
? address_1.IPOrDomain.fromPartial(object.address)
: undefined;
message.udpEnabled = object.udpEnabled ?? false;
message.userLevel = object.userLevel ?? 0;
return message;
},
};
typeRegistry_1.messageTypeRegistry.set(exports.ServerConfig.$type, exports.ServerConfig);
function createBaseServerConfig_AccountsEntry() {
return { $type: "xray.proxy.socks.ServerConfig.AccountsEntry", key: "", value: "" };
}
exports.ServerConfig_AccountsEntry = {
$type: "xray.proxy.socks.ServerConfig.AccountsEntry",
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);
let end = length === undefined ? reader.len : reader.pos + length;
const message = createBaseServerConfig_AccountsEntry();
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.ServerConfig_AccountsEntry.$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.ServerConfig_AccountsEntry.fromPartial(base ?? {});
},
fromPartial(object) {
const message = createBaseServerConfig_AccountsEntry();
message.key = object.key ?? "";
message.value = object.value ?? "";
return message;
},
};
typeRegistry_1.messageTypeRegistry.set(exports.ServerConfig_AccountsEntry.$type, exports.ServerConfig_AccountsEntry);
function createBaseClientConfig() {
return { $type: "xray.proxy.socks.ClientConfig", server: [] };
}
exports.ClientConfig = {
$type: "xray.proxy.socks.ClientConfig",
encode(message, writer = new wire_1.BinaryWriter()) {
for (const v of message.server) {
server_spec_1.ServerEndpoint.encode(v, writer.uint32(10).fork()).join();
}
return writer;
},
decode(input, length) {
const reader = input instanceof wire_1.BinaryReader ? input : new wire_1.BinaryReader(input);
let end = length === undefined ? reader.len : reader.pos + length;
const message = createBaseClientConfig();
while (reader.pos < end) {
const tag = reader.uint32();
switch (tag >>> 3) {
case 1: {
if (tag !== 10) {
break;
}
message.server.push(server_spec_1.ServerEndpoint.decode(reader, reader.uint32()));
continue;
}
}
if ((tag & 7) === 4 || tag === 0) {
break;
}
reader.skip(tag & 7);
}
return message;
},
fromJSON(object) {
return {
$type: exports.ClientConfig.$type,
server: globalThis.Array.isArray(object?.server) ? object.server.map((e) => server_spec_1.ServerEndpoint.fromJSON(e)) : [],
};
},
toJSON(message) {
const obj = {};
if (message.server?.length) {
obj.server = message.server.map((e) => server_spec_1.ServerEndpoint.toJSON(e));
}
return obj;
},
create(base) {
return exports.ClientConfig.fromPartial(base ?? {});
},
fromPartial(object) {
const message = createBaseClientConfig();
message.server = object.server?.map((e) => server_spec_1.ServerEndpoint.fromPartial(e)) || [];
return message;
},
};
typeRegistry_1.messageTypeRegistry.set(exports.ClientConfig.$type, exports.ClientConfig);
function isObject(value) {
return typeof value === "object" && value !== null;
}
function isSet(value) {
return value !== null && value !== undefined;
}