@remnawave/xtls-sdk 0.12.4 → 0.13.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (36) hide show
  1. package/build/src/router/interfaces/index.d.ts +0 -1
  2. package/build/src/router/interfaces/index.d.ts.map +1 -1
  3. package/build/src/router/interfaces/index.js +0 -1
  4. package/build/src/router/models/index.d.ts +0 -1
  5. package/build/src/router/models/index.d.ts.map +1 -1
  6. package/build/src/router/models/index.js +0 -1
  7. package/build/src/router/router.service.d.ts +2 -12
  8. package/build/src/router/router.service.d.ts.map +1 -1
  9. package/build/src/router/router.service.js +1 -57
  10. package/build/src/stats/stats.service.d.ts.map +1 -1
  11. package/build/src/stats/stats.service.js +10 -8
  12. package/build/src/xray-protos/app/proxyman/config.d.ts +3 -1
  13. package/build/src/xray-protos/app/proxyman/config.d.ts.map +1 -1
  14. package/build/src/xray-protos/app/proxyman/config.js +27 -6
  15. package/build/src/xray-protos/common/geodata/geodat.d.ts +111 -0
  16. package/build/src/xray-protos/common/geodata/geodat.d.ts.map +1 -0
  17. package/build/src/xray-protos/common/geodata/geodat.js +1027 -0
  18. package/build/src/xray-protos/proxy/freedom/config.d.ts +7 -0
  19. package/build/src/xray-protos/proxy/freedom/config.d.ts.map +1 -1
  20. package/build/src/xray-protos/proxy/freedom/config.js +80 -1
  21. package/build/src/xray-protos/proxy/tun/config.d.ts +4 -0
  22. package/build/src/xray-protos/proxy/tun/config.d.ts.map +1 -1
  23. package/build/src/xray-protos/proxy/tun/config.js +80 -3
  24. package/package.json +3 -4
  25. package/build/src/router/interfaces/add-source-ip-rule.interface.d.ts +0 -7
  26. package/build/src/router/interfaces/add-source-ip-rule.interface.d.ts.map +0 -1
  27. package/build/src/router/interfaces/add-source-ip-rule.interface.js +0 -2
  28. package/build/src/router/models/add-source-ip-rule/add-source-ip-rule.response.model.d.ts +0 -5
  29. package/build/src/router/models/add-source-ip-rule/add-source-ip-rule.response.model.d.ts.map +0 -1
  30. package/build/src/router/models/add-source-ip-rule/add-source-ip-rule.response.model.js +0 -9
  31. package/build/src/router/models/add-source-ip-rule/index.d.ts +0 -2
  32. package/build/src/router/models/add-source-ip-rule/index.d.ts.map +0 -1
  33. package/build/src/router/models/add-source-ip-rule/index.js +0 -17
  34. package/build/src/xray-protos/app/router/config.d.ts +0 -193
  35. package/build/src/xray-protos/app/router/config.d.ts.map +0 -1
  36. package/build/src/xray-protos/app/router/config.js +0 -1797
@@ -0,0 +1,1027 @@
1
+ "use strict";
2
+ // Code generated by protoc-gen-ts_proto. DO NOT EDIT.
3
+ // versions:
4
+ // protoc-gen-ts_proto v2.11.2
5
+ // protoc v6.33.4
6
+ // source: common/geodata/geodat.proto
7
+ Object.defineProperty(exports, "__esModule", { value: true });
8
+ exports.IPRule = exports.GeoIPRule = exports.GeoIPList = exports.GeoIP = exports.CIDRRule = exports.CIDR = exports.DomainRule = exports.GeoSiteRule = exports.GeoSiteList = exports.GeoSite = exports.Domain_Attribute = exports.Domain = exports.Domain_Type = exports.protobufPackage = void 0;
9
+ exports.domain_TypeFromJSON = domain_TypeFromJSON;
10
+ exports.domain_TypeToJSON = domain_TypeToJSON;
11
+ /* eslint-disable */
12
+ const wire_1 = require("@bufbuild/protobuf/wire");
13
+ const typeRegistry_1 = require("../../typeRegistry");
14
+ exports.protobufPackage = "xray.common.geodata";
15
+ /** Type of domain value. */
16
+ var Domain_Type;
17
+ (function (Domain_Type) {
18
+ /** Substr - The value is used as a sub string. */
19
+ Domain_Type[Domain_Type["Substr"] = 0] = "Substr";
20
+ /** Regex - The value is used as a regular expression. */
21
+ Domain_Type[Domain_Type["Regex"] = 1] = "Regex";
22
+ /** Domain - The value is a domain. */
23
+ Domain_Type[Domain_Type["Domain"] = 2] = "Domain";
24
+ /** Full - The value is a full domain. */
25
+ Domain_Type[Domain_Type["Full"] = 3] = "Full";
26
+ Domain_Type[Domain_Type["UNRECOGNIZED"] = -1] = "UNRECOGNIZED";
27
+ })(Domain_Type || (exports.Domain_Type = Domain_Type = {}));
28
+ function domain_TypeFromJSON(object) {
29
+ switch (object) {
30
+ case 0:
31
+ case "Substr":
32
+ return Domain_Type.Substr;
33
+ case 1:
34
+ case "Regex":
35
+ return Domain_Type.Regex;
36
+ case 2:
37
+ case "Domain":
38
+ return Domain_Type.Domain;
39
+ case 3:
40
+ case "Full":
41
+ return Domain_Type.Full;
42
+ case -1:
43
+ case "UNRECOGNIZED":
44
+ default:
45
+ return Domain_Type.UNRECOGNIZED;
46
+ }
47
+ }
48
+ function domain_TypeToJSON(object) {
49
+ switch (object) {
50
+ case Domain_Type.Substr:
51
+ return "Substr";
52
+ case Domain_Type.Regex:
53
+ return "Regex";
54
+ case Domain_Type.Domain:
55
+ return "Domain";
56
+ case Domain_Type.Full:
57
+ return "Full";
58
+ case Domain_Type.UNRECOGNIZED:
59
+ default:
60
+ return "UNRECOGNIZED";
61
+ }
62
+ }
63
+ function createBaseDomain() {
64
+ return { $type: "xray.common.geodata.Domain", type: 0, value: "", attribute: [] };
65
+ }
66
+ exports.Domain = {
67
+ $type: "xray.common.geodata.Domain",
68
+ encode(message, writer = new wire_1.BinaryWriter()) {
69
+ if (message.type !== 0) {
70
+ writer.uint32(8).int32(message.type);
71
+ }
72
+ if (message.value !== "") {
73
+ writer.uint32(18).string(message.value);
74
+ }
75
+ for (const v of message.attribute) {
76
+ exports.Domain_Attribute.encode(v, writer.uint32(26).fork()).join();
77
+ }
78
+ return writer;
79
+ },
80
+ decode(input, length) {
81
+ const reader = input instanceof wire_1.BinaryReader ? input : new wire_1.BinaryReader(input);
82
+ const end = length === undefined ? reader.len : reader.pos + length;
83
+ const message = createBaseDomain();
84
+ while (reader.pos < end) {
85
+ const tag = reader.uint32();
86
+ switch (tag >>> 3) {
87
+ case 1: {
88
+ if (tag !== 8) {
89
+ break;
90
+ }
91
+ message.type = reader.int32();
92
+ continue;
93
+ }
94
+ case 2: {
95
+ if (tag !== 18) {
96
+ break;
97
+ }
98
+ message.value = reader.string();
99
+ continue;
100
+ }
101
+ case 3: {
102
+ if (tag !== 26) {
103
+ break;
104
+ }
105
+ message.attribute.push(exports.Domain_Attribute.decode(reader, reader.uint32()));
106
+ continue;
107
+ }
108
+ }
109
+ if ((tag & 7) === 4 || tag === 0) {
110
+ break;
111
+ }
112
+ reader.skip(tag & 7);
113
+ }
114
+ return message;
115
+ },
116
+ fromJSON(object) {
117
+ return {
118
+ $type: exports.Domain.$type,
119
+ type: isSet(object.type) ? domain_TypeFromJSON(object.type) : 0,
120
+ value: isSet(object.value) ? globalThis.String(object.value) : "",
121
+ attribute: globalThis.Array.isArray(object?.attribute)
122
+ ? object.attribute.map((e) => exports.Domain_Attribute.fromJSON(e))
123
+ : [],
124
+ };
125
+ },
126
+ toJSON(message) {
127
+ const obj = {};
128
+ if (message.type !== 0) {
129
+ obj.type = domain_TypeToJSON(message.type);
130
+ }
131
+ if (message.value !== "") {
132
+ obj.value = message.value;
133
+ }
134
+ if (message.attribute?.length) {
135
+ obj.attribute = message.attribute.map((e) => exports.Domain_Attribute.toJSON(e));
136
+ }
137
+ return obj;
138
+ },
139
+ create(base) {
140
+ return exports.Domain.fromPartial(base ?? {});
141
+ },
142
+ fromPartial(object) {
143
+ const message = createBaseDomain();
144
+ message.type = object.type ?? 0;
145
+ message.value = object.value ?? "";
146
+ message.attribute = object.attribute?.map((e) => exports.Domain_Attribute.fromPartial(e)) || [];
147
+ return message;
148
+ },
149
+ };
150
+ typeRegistry_1.messageTypeRegistry.set(exports.Domain.$type, exports.Domain);
151
+ function createBaseDomain_Attribute() {
152
+ return { $type: "xray.common.geodata.Domain.Attribute", key: "", boolValue: undefined, intValue: undefined };
153
+ }
154
+ exports.Domain_Attribute = {
155
+ $type: "xray.common.geodata.Domain.Attribute",
156
+ encode(message, writer = new wire_1.BinaryWriter()) {
157
+ if (message.key !== "") {
158
+ writer.uint32(10).string(message.key);
159
+ }
160
+ if (message.boolValue !== undefined) {
161
+ writer.uint32(16).bool(message.boolValue);
162
+ }
163
+ if (message.intValue !== undefined) {
164
+ writer.uint32(24).int64(message.intValue);
165
+ }
166
+ return writer;
167
+ },
168
+ decode(input, length) {
169
+ const reader = input instanceof wire_1.BinaryReader ? input : new wire_1.BinaryReader(input);
170
+ const end = length === undefined ? reader.len : reader.pos + length;
171
+ const message = createBaseDomain_Attribute();
172
+ while (reader.pos < end) {
173
+ const tag = reader.uint32();
174
+ switch (tag >>> 3) {
175
+ case 1: {
176
+ if (tag !== 10) {
177
+ break;
178
+ }
179
+ message.key = reader.string();
180
+ continue;
181
+ }
182
+ case 2: {
183
+ if (tag !== 16) {
184
+ break;
185
+ }
186
+ message.boolValue = reader.bool();
187
+ continue;
188
+ }
189
+ case 3: {
190
+ if (tag !== 24) {
191
+ break;
192
+ }
193
+ message.intValue = longToNumber(reader.int64());
194
+ continue;
195
+ }
196
+ }
197
+ if ((tag & 7) === 4 || tag === 0) {
198
+ break;
199
+ }
200
+ reader.skip(tag & 7);
201
+ }
202
+ return message;
203
+ },
204
+ fromJSON(object) {
205
+ return {
206
+ $type: exports.Domain_Attribute.$type,
207
+ key: isSet(object.key) ? globalThis.String(object.key) : "",
208
+ boolValue: isSet(object.boolValue)
209
+ ? globalThis.Boolean(object.boolValue)
210
+ : isSet(object.bool_value)
211
+ ? globalThis.Boolean(object.bool_value)
212
+ : undefined,
213
+ intValue: isSet(object.intValue)
214
+ ? globalThis.Number(object.intValue)
215
+ : isSet(object.int_value)
216
+ ? globalThis.Number(object.int_value)
217
+ : undefined,
218
+ };
219
+ },
220
+ toJSON(message) {
221
+ const obj = {};
222
+ if (message.key !== "") {
223
+ obj.key = message.key;
224
+ }
225
+ if (message.boolValue !== undefined) {
226
+ obj.boolValue = message.boolValue;
227
+ }
228
+ if (message.intValue !== undefined) {
229
+ obj.intValue = Math.round(message.intValue);
230
+ }
231
+ return obj;
232
+ },
233
+ create(base) {
234
+ return exports.Domain_Attribute.fromPartial(base ?? {});
235
+ },
236
+ fromPartial(object) {
237
+ const message = createBaseDomain_Attribute();
238
+ message.key = object.key ?? "";
239
+ message.boolValue = object.boolValue ?? undefined;
240
+ message.intValue = object.intValue ?? undefined;
241
+ return message;
242
+ },
243
+ };
244
+ typeRegistry_1.messageTypeRegistry.set(exports.Domain_Attribute.$type, exports.Domain_Attribute);
245
+ function createBaseGeoSite() {
246
+ return { $type: "xray.common.geodata.GeoSite", code: "", domain: [] };
247
+ }
248
+ exports.GeoSite = {
249
+ $type: "xray.common.geodata.GeoSite",
250
+ encode(message, writer = new wire_1.BinaryWriter()) {
251
+ if (message.code !== "") {
252
+ writer.uint32(10).string(message.code);
253
+ }
254
+ for (const v of message.domain) {
255
+ exports.Domain.encode(v, writer.uint32(18).fork()).join();
256
+ }
257
+ return writer;
258
+ },
259
+ decode(input, length) {
260
+ const reader = input instanceof wire_1.BinaryReader ? input : new wire_1.BinaryReader(input);
261
+ const end = length === undefined ? reader.len : reader.pos + length;
262
+ const message = createBaseGeoSite();
263
+ while (reader.pos < end) {
264
+ const tag = reader.uint32();
265
+ switch (tag >>> 3) {
266
+ case 1: {
267
+ if (tag !== 10) {
268
+ break;
269
+ }
270
+ message.code = reader.string();
271
+ continue;
272
+ }
273
+ case 2: {
274
+ if (tag !== 18) {
275
+ break;
276
+ }
277
+ message.domain.push(exports.Domain.decode(reader, reader.uint32()));
278
+ continue;
279
+ }
280
+ }
281
+ if ((tag & 7) === 4 || tag === 0) {
282
+ break;
283
+ }
284
+ reader.skip(tag & 7);
285
+ }
286
+ return message;
287
+ },
288
+ fromJSON(object) {
289
+ return {
290
+ $type: exports.GeoSite.$type,
291
+ code: isSet(object.code) ? globalThis.String(object.code) : "",
292
+ domain: globalThis.Array.isArray(object?.domain) ? object.domain.map((e) => exports.Domain.fromJSON(e)) : [],
293
+ };
294
+ },
295
+ toJSON(message) {
296
+ const obj = {};
297
+ if (message.code !== "") {
298
+ obj.code = message.code;
299
+ }
300
+ if (message.domain?.length) {
301
+ obj.domain = message.domain.map((e) => exports.Domain.toJSON(e));
302
+ }
303
+ return obj;
304
+ },
305
+ create(base) {
306
+ return exports.GeoSite.fromPartial(base ?? {});
307
+ },
308
+ fromPartial(object) {
309
+ const message = createBaseGeoSite();
310
+ message.code = object.code ?? "";
311
+ message.domain = object.domain?.map((e) => exports.Domain.fromPartial(e)) || [];
312
+ return message;
313
+ },
314
+ };
315
+ typeRegistry_1.messageTypeRegistry.set(exports.GeoSite.$type, exports.GeoSite);
316
+ function createBaseGeoSiteList() {
317
+ return { $type: "xray.common.geodata.GeoSiteList", entry: [] };
318
+ }
319
+ exports.GeoSiteList = {
320
+ $type: "xray.common.geodata.GeoSiteList",
321
+ encode(message, writer = new wire_1.BinaryWriter()) {
322
+ for (const v of message.entry) {
323
+ exports.GeoSite.encode(v, writer.uint32(10).fork()).join();
324
+ }
325
+ return writer;
326
+ },
327
+ decode(input, length) {
328
+ const reader = input instanceof wire_1.BinaryReader ? input : new wire_1.BinaryReader(input);
329
+ const end = length === undefined ? reader.len : reader.pos + length;
330
+ const message = createBaseGeoSiteList();
331
+ while (reader.pos < end) {
332
+ const tag = reader.uint32();
333
+ switch (tag >>> 3) {
334
+ case 1: {
335
+ if (tag !== 10) {
336
+ break;
337
+ }
338
+ message.entry.push(exports.GeoSite.decode(reader, reader.uint32()));
339
+ continue;
340
+ }
341
+ }
342
+ if ((tag & 7) === 4 || tag === 0) {
343
+ break;
344
+ }
345
+ reader.skip(tag & 7);
346
+ }
347
+ return message;
348
+ },
349
+ fromJSON(object) {
350
+ return {
351
+ $type: exports.GeoSiteList.$type,
352
+ entry: globalThis.Array.isArray(object?.entry) ? object.entry.map((e) => exports.GeoSite.fromJSON(e)) : [],
353
+ };
354
+ },
355
+ toJSON(message) {
356
+ const obj = {};
357
+ if (message.entry?.length) {
358
+ obj.entry = message.entry.map((e) => exports.GeoSite.toJSON(e));
359
+ }
360
+ return obj;
361
+ },
362
+ create(base) {
363
+ return exports.GeoSiteList.fromPartial(base ?? {});
364
+ },
365
+ fromPartial(object) {
366
+ const message = createBaseGeoSiteList();
367
+ message.entry = object.entry?.map((e) => exports.GeoSite.fromPartial(e)) || [];
368
+ return message;
369
+ },
370
+ };
371
+ typeRegistry_1.messageTypeRegistry.set(exports.GeoSiteList.$type, exports.GeoSiteList);
372
+ function createBaseGeoSiteRule() {
373
+ return { $type: "xray.common.geodata.GeoSiteRule", file: "", code: "", attrs: "" };
374
+ }
375
+ exports.GeoSiteRule = {
376
+ $type: "xray.common.geodata.GeoSiteRule",
377
+ encode(message, writer = new wire_1.BinaryWriter()) {
378
+ if (message.file !== "") {
379
+ writer.uint32(10).string(message.file);
380
+ }
381
+ if (message.code !== "") {
382
+ writer.uint32(18).string(message.code);
383
+ }
384
+ if (message.attrs !== "") {
385
+ writer.uint32(26).string(message.attrs);
386
+ }
387
+ return writer;
388
+ },
389
+ decode(input, length) {
390
+ const reader = input instanceof wire_1.BinaryReader ? input : new wire_1.BinaryReader(input);
391
+ const end = length === undefined ? reader.len : reader.pos + length;
392
+ const message = createBaseGeoSiteRule();
393
+ while (reader.pos < end) {
394
+ const tag = reader.uint32();
395
+ switch (tag >>> 3) {
396
+ case 1: {
397
+ if (tag !== 10) {
398
+ break;
399
+ }
400
+ message.file = reader.string();
401
+ continue;
402
+ }
403
+ case 2: {
404
+ if (tag !== 18) {
405
+ break;
406
+ }
407
+ message.code = reader.string();
408
+ continue;
409
+ }
410
+ case 3: {
411
+ if (tag !== 26) {
412
+ break;
413
+ }
414
+ message.attrs = reader.string();
415
+ continue;
416
+ }
417
+ }
418
+ if ((tag & 7) === 4 || tag === 0) {
419
+ break;
420
+ }
421
+ reader.skip(tag & 7);
422
+ }
423
+ return message;
424
+ },
425
+ fromJSON(object) {
426
+ return {
427
+ $type: exports.GeoSiteRule.$type,
428
+ file: isSet(object.file) ? globalThis.String(object.file) : "",
429
+ code: isSet(object.code) ? globalThis.String(object.code) : "",
430
+ attrs: isSet(object.attrs) ? globalThis.String(object.attrs) : "",
431
+ };
432
+ },
433
+ toJSON(message) {
434
+ const obj = {};
435
+ if (message.file !== "") {
436
+ obj.file = message.file;
437
+ }
438
+ if (message.code !== "") {
439
+ obj.code = message.code;
440
+ }
441
+ if (message.attrs !== "") {
442
+ obj.attrs = message.attrs;
443
+ }
444
+ return obj;
445
+ },
446
+ create(base) {
447
+ return exports.GeoSiteRule.fromPartial(base ?? {});
448
+ },
449
+ fromPartial(object) {
450
+ const message = createBaseGeoSiteRule();
451
+ message.file = object.file ?? "";
452
+ message.code = object.code ?? "";
453
+ message.attrs = object.attrs ?? "";
454
+ return message;
455
+ },
456
+ };
457
+ typeRegistry_1.messageTypeRegistry.set(exports.GeoSiteRule.$type, exports.GeoSiteRule);
458
+ function createBaseDomainRule() {
459
+ return { $type: "xray.common.geodata.DomainRule", geosite: undefined, custom: undefined };
460
+ }
461
+ exports.DomainRule = {
462
+ $type: "xray.common.geodata.DomainRule",
463
+ encode(message, writer = new wire_1.BinaryWriter()) {
464
+ if (message.geosite !== undefined) {
465
+ exports.GeoSiteRule.encode(message.geosite, writer.uint32(10).fork()).join();
466
+ }
467
+ if (message.custom !== undefined) {
468
+ exports.Domain.encode(message.custom, writer.uint32(18).fork()).join();
469
+ }
470
+ return writer;
471
+ },
472
+ decode(input, length) {
473
+ const reader = input instanceof wire_1.BinaryReader ? input : new wire_1.BinaryReader(input);
474
+ const end = length === undefined ? reader.len : reader.pos + length;
475
+ const message = createBaseDomainRule();
476
+ while (reader.pos < end) {
477
+ const tag = reader.uint32();
478
+ switch (tag >>> 3) {
479
+ case 1: {
480
+ if (tag !== 10) {
481
+ break;
482
+ }
483
+ message.geosite = exports.GeoSiteRule.decode(reader, reader.uint32());
484
+ continue;
485
+ }
486
+ case 2: {
487
+ if (tag !== 18) {
488
+ break;
489
+ }
490
+ message.custom = exports.Domain.decode(reader, reader.uint32());
491
+ continue;
492
+ }
493
+ }
494
+ if ((tag & 7) === 4 || tag === 0) {
495
+ break;
496
+ }
497
+ reader.skip(tag & 7);
498
+ }
499
+ return message;
500
+ },
501
+ fromJSON(object) {
502
+ return {
503
+ $type: exports.DomainRule.$type,
504
+ geosite: isSet(object.geosite) ? exports.GeoSiteRule.fromJSON(object.geosite) : undefined,
505
+ custom: isSet(object.custom) ? exports.Domain.fromJSON(object.custom) : undefined,
506
+ };
507
+ },
508
+ toJSON(message) {
509
+ const obj = {};
510
+ if (message.geosite !== undefined) {
511
+ obj.geosite = exports.GeoSiteRule.toJSON(message.geosite);
512
+ }
513
+ if (message.custom !== undefined) {
514
+ obj.custom = exports.Domain.toJSON(message.custom);
515
+ }
516
+ return obj;
517
+ },
518
+ create(base) {
519
+ return exports.DomainRule.fromPartial(base ?? {});
520
+ },
521
+ fromPartial(object) {
522
+ const message = createBaseDomainRule();
523
+ message.geosite = (object.geosite !== undefined && object.geosite !== null)
524
+ ? exports.GeoSiteRule.fromPartial(object.geosite)
525
+ : undefined;
526
+ message.custom = (object.custom !== undefined && object.custom !== null)
527
+ ? exports.Domain.fromPartial(object.custom)
528
+ : undefined;
529
+ return message;
530
+ },
531
+ };
532
+ typeRegistry_1.messageTypeRegistry.set(exports.DomainRule.$type, exports.DomainRule);
533
+ function createBaseCIDR() {
534
+ return { $type: "xray.common.geodata.CIDR", ip: new Uint8Array(0), prefix: 0 };
535
+ }
536
+ exports.CIDR = {
537
+ $type: "xray.common.geodata.CIDR",
538
+ encode(message, writer = new wire_1.BinaryWriter()) {
539
+ if (message.ip.length !== 0) {
540
+ writer.uint32(10).bytes(message.ip);
541
+ }
542
+ if (message.prefix !== 0) {
543
+ writer.uint32(16).uint32(message.prefix);
544
+ }
545
+ return writer;
546
+ },
547
+ decode(input, length) {
548
+ const reader = input instanceof wire_1.BinaryReader ? input : new wire_1.BinaryReader(input);
549
+ const end = length === undefined ? reader.len : reader.pos + length;
550
+ const message = createBaseCIDR();
551
+ while (reader.pos < end) {
552
+ const tag = reader.uint32();
553
+ switch (tag >>> 3) {
554
+ case 1: {
555
+ if (tag !== 10) {
556
+ break;
557
+ }
558
+ message.ip = reader.bytes();
559
+ continue;
560
+ }
561
+ case 2: {
562
+ if (tag !== 16) {
563
+ break;
564
+ }
565
+ message.prefix = reader.uint32();
566
+ continue;
567
+ }
568
+ }
569
+ if ((tag & 7) === 4 || tag === 0) {
570
+ break;
571
+ }
572
+ reader.skip(tag & 7);
573
+ }
574
+ return message;
575
+ },
576
+ fromJSON(object) {
577
+ return {
578
+ $type: exports.CIDR.$type,
579
+ ip: isSet(object.ip) ? bytesFromBase64(object.ip) : new Uint8Array(0),
580
+ prefix: isSet(object.prefix) ? globalThis.Number(object.prefix) : 0,
581
+ };
582
+ },
583
+ toJSON(message) {
584
+ const obj = {};
585
+ if (message.ip.length !== 0) {
586
+ obj.ip = base64FromBytes(message.ip);
587
+ }
588
+ if (message.prefix !== 0) {
589
+ obj.prefix = Math.round(message.prefix);
590
+ }
591
+ return obj;
592
+ },
593
+ create(base) {
594
+ return exports.CIDR.fromPartial(base ?? {});
595
+ },
596
+ fromPartial(object) {
597
+ const message = createBaseCIDR();
598
+ message.ip = object.ip ?? new Uint8Array(0);
599
+ message.prefix = object.prefix ?? 0;
600
+ return message;
601
+ },
602
+ };
603
+ typeRegistry_1.messageTypeRegistry.set(exports.CIDR.$type, exports.CIDR);
604
+ function createBaseCIDRRule() {
605
+ return { $type: "xray.common.geodata.CIDRRule", cidr: undefined, reverseMatch: false };
606
+ }
607
+ exports.CIDRRule = {
608
+ $type: "xray.common.geodata.CIDRRule",
609
+ encode(message, writer = new wire_1.BinaryWriter()) {
610
+ if (message.cidr !== undefined) {
611
+ exports.CIDR.encode(message.cidr, writer.uint32(10).fork()).join();
612
+ }
613
+ if (message.reverseMatch !== false) {
614
+ writer.uint32(16).bool(message.reverseMatch);
615
+ }
616
+ return writer;
617
+ },
618
+ decode(input, length) {
619
+ const reader = input instanceof wire_1.BinaryReader ? input : new wire_1.BinaryReader(input);
620
+ const end = length === undefined ? reader.len : reader.pos + length;
621
+ const message = createBaseCIDRRule();
622
+ while (reader.pos < end) {
623
+ const tag = reader.uint32();
624
+ switch (tag >>> 3) {
625
+ case 1: {
626
+ if (tag !== 10) {
627
+ break;
628
+ }
629
+ message.cidr = exports.CIDR.decode(reader, reader.uint32());
630
+ continue;
631
+ }
632
+ case 2: {
633
+ if (tag !== 16) {
634
+ break;
635
+ }
636
+ message.reverseMatch = reader.bool();
637
+ continue;
638
+ }
639
+ }
640
+ if ((tag & 7) === 4 || tag === 0) {
641
+ break;
642
+ }
643
+ reader.skip(tag & 7);
644
+ }
645
+ return message;
646
+ },
647
+ fromJSON(object) {
648
+ return {
649
+ $type: exports.CIDRRule.$type,
650
+ cidr: isSet(object.cidr) ? exports.CIDR.fromJSON(object.cidr) : undefined,
651
+ reverseMatch: isSet(object.reverseMatch)
652
+ ? globalThis.Boolean(object.reverseMatch)
653
+ : isSet(object.reverse_match)
654
+ ? globalThis.Boolean(object.reverse_match)
655
+ : false,
656
+ };
657
+ },
658
+ toJSON(message) {
659
+ const obj = {};
660
+ if (message.cidr !== undefined) {
661
+ obj.cidr = exports.CIDR.toJSON(message.cidr);
662
+ }
663
+ if (message.reverseMatch !== false) {
664
+ obj.reverseMatch = message.reverseMatch;
665
+ }
666
+ return obj;
667
+ },
668
+ create(base) {
669
+ return exports.CIDRRule.fromPartial(base ?? {});
670
+ },
671
+ fromPartial(object) {
672
+ const message = createBaseCIDRRule();
673
+ message.cidr = (object.cidr !== undefined && object.cidr !== null) ? exports.CIDR.fromPartial(object.cidr) : undefined;
674
+ message.reverseMatch = object.reverseMatch ?? false;
675
+ return message;
676
+ },
677
+ };
678
+ typeRegistry_1.messageTypeRegistry.set(exports.CIDRRule.$type, exports.CIDRRule);
679
+ function createBaseGeoIP() {
680
+ return { $type: "xray.common.geodata.GeoIP", code: "", cidr: [], reverseMatch: false };
681
+ }
682
+ exports.GeoIP = {
683
+ $type: "xray.common.geodata.GeoIP",
684
+ encode(message, writer = new wire_1.BinaryWriter()) {
685
+ if (message.code !== "") {
686
+ writer.uint32(10).string(message.code);
687
+ }
688
+ for (const v of message.cidr) {
689
+ exports.CIDR.encode(v, writer.uint32(18).fork()).join();
690
+ }
691
+ if (message.reverseMatch !== false) {
692
+ writer.uint32(24).bool(message.reverseMatch);
693
+ }
694
+ return writer;
695
+ },
696
+ decode(input, length) {
697
+ const reader = input instanceof wire_1.BinaryReader ? input : new wire_1.BinaryReader(input);
698
+ const end = length === undefined ? reader.len : reader.pos + length;
699
+ const message = createBaseGeoIP();
700
+ while (reader.pos < end) {
701
+ const tag = reader.uint32();
702
+ switch (tag >>> 3) {
703
+ case 1: {
704
+ if (tag !== 10) {
705
+ break;
706
+ }
707
+ message.code = reader.string();
708
+ continue;
709
+ }
710
+ case 2: {
711
+ if (tag !== 18) {
712
+ break;
713
+ }
714
+ message.cidr.push(exports.CIDR.decode(reader, reader.uint32()));
715
+ continue;
716
+ }
717
+ case 3: {
718
+ if (tag !== 24) {
719
+ break;
720
+ }
721
+ message.reverseMatch = reader.bool();
722
+ continue;
723
+ }
724
+ }
725
+ if ((tag & 7) === 4 || tag === 0) {
726
+ break;
727
+ }
728
+ reader.skip(tag & 7);
729
+ }
730
+ return message;
731
+ },
732
+ fromJSON(object) {
733
+ return {
734
+ $type: exports.GeoIP.$type,
735
+ code: isSet(object.code) ? globalThis.String(object.code) : "",
736
+ cidr: globalThis.Array.isArray(object?.cidr) ? object.cidr.map((e) => exports.CIDR.fromJSON(e)) : [],
737
+ reverseMatch: isSet(object.reverseMatch)
738
+ ? globalThis.Boolean(object.reverseMatch)
739
+ : isSet(object.reverse_match)
740
+ ? globalThis.Boolean(object.reverse_match)
741
+ : false,
742
+ };
743
+ },
744
+ toJSON(message) {
745
+ const obj = {};
746
+ if (message.code !== "") {
747
+ obj.code = message.code;
748
+ }
749
+ if (message.cidr?.length) {
750
+ obj.cidr = message.cidr.map((e) => exports.CIDR.toJSON(e));
751
+ }
752
+ if (message.reverseMatch !== false) {
753
+ obj.reverseMatch = message.reverseMatch;
754
+ }
755
+ return obj;
756
+ },
757
+ create(base) {
758
+ return exports.GeoIP.fromPartial(base ?? {});
759
+ },
760
+ fromPartial(object) {
761
+ const message = createBaseGeoIP();
762
+ message.code = object.code ?? "";
763
+ message.cidr = object.cidr?.map((e) => exports.CIDR.fromPartial(e)) || [];
764
+ message.reverseMatch = object.reverseMatch ?? false;
765
+ return message;
766
+ },
767
+ };
768
+ typeRegistry_1.messageTypeRegistry.set(exports.GeoIP.$type, exports.GeoIP);
769
+ function createBaseGeoIPList() {
770
+ return { $type: "xray.common.geodata.GeoIPList", entry: [] };
771
+ }
772
+ exports.GeoIPList = {
773
+ $type: "xray.common.geodata.GeoIPList",
774
+ encode(message, writer = new wire_1.BinaryWriter()) {
775
+ for (const v of message.entry) {
776
+ exports.GeoIP.encode(v, writer.uint32(10).fork()).join();
777
+ }
778
+ return writer;
779
+ },
780
+ decode(input, length) {
781
+ const reader = input instanceof wire_1.BinaryReader ? input : new wire_1.BinaryReader(input);
782
+ const end = length === undefined ? reader.len : reader.pos + length;
783
+ const message = createBaseGeoIPList();
784
+ while (reader.pos < end) {
785
+ const tag = reader.uint32();
786
+ switch (tag >>> 3) {
787
+ case 1: {
788
+ if (tag !== 10) {
789
+ break;
790
+ }
791
+ message.entry.push(exports.GeoIP.decode(reader, reader.uint32()));
792
+ continue;
793
+ }
794
+ }
795
+ if ((tag & 7) === 4 || tag === 0) {
796
+ break;
797
+ }
798
+ reader.skip(tag & 7);
799
+ }
800
+ return message;
801
+ },
802
+ fromJSON(object) {
803
+ return {
804
+ $type: exports.GeoIPList.$type,
805
+ entry: globalThis.Array.isArray(object?.entry) ? object.entry.map((e) => exports.GeoIP.fromJSON(e)) : [],
806
+ };
807
+ },
808
+ toJSON(message) {
809
+ const obj = {};
810
+ if (message.entry?.length) {
811
+ obj.entry = message.entry.map((e) => exports.GeoIP.toJSON(e));
812
+ }
813
+ return obj;
814
+ },
815
+ create(base) {
816
+ return exports.GeoIPList.fromPartial(base ?? {});
817
+ },
818
+ fromPartial(object) {
819
+ const message = createBaseGeoIPList();
820
+ message.entry = object.entry?.map((e) => exports.GeoIP.fromPartial(e)) || [];
821
+ return message;
822
+ },
823
+ };
824
+ typeRegistry_1.messageTypeRegistry.set(exports.GeoIPList.$type, exports.GeoIPList);
825
+ function createBaseGeoIPRule() {
826
+ return { $type: "xray.common.geodata.GeoIPRule", file: "", code: "", reverseMatch: false };
827
+ }
828
+ exports.GeoIPRule = {
829
+ $type: "xray.common.geodata.GeoIPRule",
830
+ encode(message, writer = new wire_1.BinaryWriter()) {
831
+ if (message.file !== "") {
832
+ writer.uint32(10).string(message.file);
833
+ }
834
+ if (message.code !== "") {
835
+ writer.uint32(18).string(message.code);
836
+ }
837
+ if (message.reverseMatch !== false) {
838
+ writer.uint32(24).bool(message.reverseMatch);
839
+ }
840
+ return writer;
841
+ },
842
+ decode(input, length) {
843
+ const reader = input instanceof wire_1.BinaryReader ? input : new wire_1.BinaryReader(input);
844
+ const end = length === undefined ? reader.len : reader.pos + length;
845
+ const message = createBaseGeoIPRule();
846
+ while (reader.pos < end) {
847
+ const tag = reader.uint32();
848
+ switch (tag >>> 3) {
849
+ case 1: {
850
+ if (tag !== 10) {
851
+ break;
852
+ }
853
+ message.file = reader.string();
854
+ continue;
855
+ }
856
+ case 2: {
857
+ if (tag !== 18) {
858
+ break;
859
+ }
860
+ message.code = reader.string();
861
+ continue;
862
+ }
863
+ case 3: {
864
+ if (tag !== 24) {
865
+ break;
866
+ }
867
+ message.reverseMatch = reader.bool();
868
+ continue;
869
+ }
870
+ }
871
+ if ((tag & 7) === 4 || tag === 0) {
872
+ break;
873
+ }
874
+ reader.skip(tag & 7);
875
+ }
876
+ return message;
877
+ },
878
+ fromJSON(object) {
879
+ return {
880
+ $type: exports.GeoIPRule.$type,
881
+ file: isSet(object.file) ? globalThis.String(object.file) : "",
882
+ code: isSet(object.code) ? globalThis.String(object.code) : "",
883
+ reverseMatch: isSet(object.reverseMatch)
884
+ ? globalThis.Boolean(object.reverseMatch)
885
+ : isSet(object.reverse_match)
886
+ ? globalThis.Boolean(object.reverse_match)
887
+ : false,
888
+ };
889
+ },
890
+ toJSON(message) {
891
+ const obj = {};
892
+ if (message.file !== "") {
893
+ obj.file = message.file;
894
+ }
895
+ if (message.code !== "") {
896
+ obj.code = message.code;
897
+ }
898
+ if (message.reverseMatch !== false) {
899
+ obj.reverseMatch = message.reverseMatch;
900
+ }
901
+ return obj;
902
+ },
903
+ create(base) {
904
+ return exports.GeoIPRule.fromPartial(base ?? {});
905
+ },
906
+ fromPartial(object) {
907
+ const message = createBaseGeoIPRule();
908
+ message.file = object.file ?? "";
909
+ message.code = object.code ?? "";
910
+ message.reverseMatch = object.reverseMatch ?? false;
911
+ return message;
912
+ },
913
+ };
914
+ typeRegistry_1.messageTypeRegistry.set(exports.GeoIPRule.$type, exports.GeoIPRule);
915
+ function createBaseIPRule() {
916
+ return { $type: "xray.common.geodata.IPRule", geoip: undefined, custom: undefined };
917
+ }
918
+ exports.IPRule = {
919
+ $type: "xray.common.geodata.IPRule",
920
+ encode(message, writer = new wire_1.BinaryWriter()) {
921
+ if (message.geoip !== undefined) {
922
+ exports.GeoIPRule.encode(message.geoip, writer.uint32(10).fork()).join();
923
+ }
924
+ if (message.custom !== undefined) {
925
+ exports.CIDRRule.encode(message.custom, writer.uint32(18).fork()).join();
926
+ }
927
+ return writer;
928
+ },
929
+ decode(input, length) {
930
+ const reader = input instanceof wire_1.BinaryReader ? input : new wire_1.BinaryReader(input);
931
+ const end = length === undefined ? reader.len : reader.pos + length;
932
+ const message = createBaseIPRule();
933
+ while (reader.pos < end) {
934
+ const tag = reader.uint32();
935
+ switch (tag >>> 3) {
936
+ case 1: {
937
+ if (tag !== 10) {
938
+ break;
939
+ }
940
+ message.geoip = exports.GeoIPRule.decode(reader, reader.uint32());
941
+ continue;
942
+ }
943
+ case 2: {
944
+ if (tag !== 18) {
945
+ break;
946
+ }
947
+ message.custom = exports.CIDRRule.decode(reader, reader.uint32());
948
+ continue;
949
+ }
950
+ }
951
+ if ((tag & 7) === 4 || tag === 0) {
952
+ break;
953
+ }
954
+ reader.skip(tag & 7);
955
+ }
956
+ return message;
957
+ },
958
+ fromJSON(object) {
959
+ return {
960
+ $type: exports.IPRule.$type,
961
+ geoip: isSet(object.geoip) ? exports.GeoIPRule.fromJSON(object.geoip) : undefined,
962
+ custom: isSet(object.custom) ? exports.CIDRRule.fromJSON(object.custom) : undefined,
963
+ };
964
+ },
965
+ toJSON(message) {
966
+ const obj = {};
967
+ if (message.geoip !== undefined) {
968
+ obj.geoip = exports.GeoIPRule.toJSON(message.geoip);
969
+ }
970
+ if (message.custom !== undefined) {
971
+ obj.custom = exports.CIDRRule.toJSON(message.custom);
972
+ }
973
+ return obj;
974
+ },
975
+ create(base) {
976
+ return exports.IPRule.fromPartial(base ?? {});
977
+ },
978
+ fromPartial(object) {
979
+ const message = createBaseIPRule();
980
+ message.geoip = (object.geoip !== undefined && object.geoip !== null)
981
+ ? exports.GeoIPRule.fromPartial(object.geoip)
982
+ : undefined;
983
+ message.custom = (object.custom !== undefined && object.custom !== null)
984
+ ? exports.CIDRRule.fromPartial(object.custom)
985
+ : undefined;
986
+ return message;
987
+ },
988
+ };
989
+ typeRegistry_1.messageTypeRegistry.set(exports.IPRule.$type, exports.IPRule);
990
+ function bytesFromBase64(b64) {
991
+ if (globalThis.Buffer) {
992
+ return Uint8Array.from(globalThis.Buffer.from(b64, "base64"));
993
+ }
994
+ else {
995
+ const bin = globalThis.atob(b64);
996
+ const arr = new Uint8Array(bin.length);
997
+ for (let i = 0; i < bin.length; ++i) {
998
+ arr[i] = bin.charCodeAt(i);
999
+ }
1000
+ return arr;
1001
+ }
1002
+ }
1003
+ function base64FromBytes(arr) {
1004
+ if (globalThis.Buffer) {
1005
+ return globalThis.Buffer.from(arr).toString("base64");
1006
+ }
1007
+ else {
1008
+ const bin = [];
1009
+ arr.forEach((byte) => {
1010
+ bin.push(globalThis.String.fromCharCode(byte));
1011
+ });
1012
+ return globalThis.btoa(bin.join(""));
1013
+ }
1014
+ }
1015
+ function longToNumber(int64) {
1016
+ const num = globalThis.Number(int64.toString());
1017
+ if (num > globalThis.Number.MAX_SAFE_INTEGER) {
1018
+ throw new globalThis.Error("Value is larger than Number.MAX_SAFE_INTEGER");
1019
+ }
1020
+ if (num < globalThis.Number.MIN_SAFE_INTEGER) {
1021
+ throw new globalThis.Error("Value is smaller than Number.MIN_SAFE_INTEGER");
1022
+ }
1023
+ return num;
1024
+ }
1025
+ function isSet(value) {
1026
+ return value !== null && value !== undefined;
1027
+ }