@vaitosoi/minejs 0.2.0 → 0.2.2

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 (90) hide show
  1. package/dist/base/aabb.d.ts +197 -0
  2. package/dist/base/aabb.d.ts.map +1 -0
  3. package/dist/base/aabb.js +576 -0
  4. package/dist/base/aabb.js.map +1 -0
  5. package/dist/base/bitset.d.ts +9 -0
  6. package/dist/base/bitset.d.ts.map +1 -0
  7. package/dist/base/bitset.js +46 -0
  8. package/dist/base/bitset.js.map +1 -0
  9. package/dist/base/block.d.ts +86 -0
  10. package/dist/base/block.d.ts.map +1 -0
  11. package/dist/base/block.js +232 -0
  12. package/dist/base/block.js.map +1 -0
  13. package/dist/base/direction.d.ts +153 -0
  14. package/dist/base/direction.d.ts.map +1 -0
  15. package/dist/base/direction.js +288 -0
  16. package/dist/base/direction.js.map +1 -0
  17. package/dist/base/entity.d.ts +43 -0
  18. package/dist/base/entity.d.ts.map +1 -0
  19. package/dist/base/entity.js +97 -0
  20. package/dist/base/entity.js.map +1 -0
  21. package/dist/base/error.d.ts +76 -0
  22. package/dist/base/error.d.ts.map +1 -0
  23. package/dist/base/error.js +141 -0
  24. package/dist/base/error.js.map +1 -0
  25. package/dist/base/event.d.ts +7 -0
  26. package/dist/base/event.d.ts.map +1 -0
  27. package/dist/base/event.js +3 -0
  28. package/dist/base/event.js.map +1 -0
  29. package/dist/base/math.d.ts +25 -0
  30. package/dist/base/math.d.ts.map +1 -0
  31. package/dist/base/math.js +69 -0
  32. package/dist/base/math.js.map +1 -0
  33. package/dist/base/player.d.ts +107 -0
  34. package/dist/base/player.d.ts.map +1 -0
  35. package/dist/base/player.js +543 -0
  36. package/dist/base/player.js.map +1 -0
  37. package/dist/base/registry.d.ts +50 -0
  38. package/dist/base/registry.d.ts.map +1 -0
  39. package/dist/base/registry.js +89 -0
  40. package/dist/base/registry.js.map +1 -0
  41. package/dist/base/tick.d.ts +19 -0
  42. package/dist/base/tick.d.ts.map +1 -0
  43. package/dist/base/tick.js +49 -0
  44. package/dist/base/tick.js.map +1 -0
  45. package/dist/base/typing.d.ts +3 -0
  46. package/dist/base/typing.d.ts.map +1 -0
  47. package/dist/base/typing.js +3 -0
  48. package/dist/base/typing.js.map +1 -0
  49. package/dist/client/auth.d.ts +39 -0
  50. package/dist/client/auth.d.ts.map +1 -0
  51. package/dist/client/auth.js +307 -0
  52. package/dist/client/auth.js.map +1 -0
  53. package/dist/client/client.d.ts +62 -0
  54. package/dist/client/client.d.ts.map +1 -0
  55. package/dist/client/client.js +98 -0
  56. package/dist/client/client.js.map +1 -0
  57. package/dist/client/static.d.ts +28 -0
  58. package/dist/client/static.d.ts.map +1 -0
  59. package/dist/client/static.js +43 -0
  60. package/dist/client/static.js.map +1 -0
  61. package/dist/client/tcp.d.ts +269 -0
  62. package/dist/client/tcp.d.ts.map +1 -0
  63. package/dist/client/tcp.js +838 -0
  64. package/dist/client/tcp.js.map +1 -0
  65. package/dist/index.d.ts +21 -0
  66. package/dist/index.d.ts.map +1 -0
  67. package/dist/index.js.map +1 -0
  68. package/dist/translator/decoder.d.ts +293 -0
  69. package/dist/translator/decoder.d.ts.map +1 -0
  70. package/dist/translator/decoder.js +668 -0
  71. package/dist/translator/decoder.js.map +1 -0
  72. package/dist/translator/encoder.d.ts +162 -0
  73. package/dist/translator/encoder.d.ts.map +1 -0
  74. package/dist/translator/encoder.js +430 -0
  75. package/dist/translator/encoder.js.map +1 -0
  76. package/dist/translator/static.d.ts +33 -0
  77. package/dist/translator/static.d.ts.map +1 -0
  78. package/dist/translator/static.js +42 -0
  79. package/dist/translator/static.js.map +1 -0
  80. package/package.json +10 -10
  81. package/src/base/aabb.ts +2 -0
  82. package/src/base/block.ts +4 -0
  83. package/src/base/direction.ts +5 -0
  84. package/src/base/error.ts +16 -0
  85. package/src/base/event.ts +1 -1
  86. package/src/base/math.ts +10 -0
  87. package/src/base/typing.ts +1 -0
  88. package/src/client/static.ts +4 -0
  89. package/src/translator/encoder.ts +2 -2
  90. package/src/translator/static.ts +9 -0
@@ -0,0 +1,288 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.Direction = exports.AxisCycle = exports.Axis = exports.BaseAxis = exports.Vec3 = void 0;
4
+ class Vec3 {
5
+ static Zero = new Vec3(0, 0, 0);
6
+ static XAxis = new Vec3(1, 0, 0);
7
+ static YAxis = new Vec3(0, 1, 0);
8
+ static ZAxis = new Vec3(0, 0, 1);
9
+ /**
10
+ * Helper function for loading vec3 args
11
+ */
12
+ static loadArgs(a, b, c) {
13
+ let x = 1, y = 1, z = 1;
14
+ if (typeof a === "object" && "x" in a) {
15
+ x = a.x;
16
+ y = a.y;
17
+ z = a.z;
18
+ }
19
+ else if (a !== undefined && b !== undefined && c !== undefined) {
20
+ x = a;
21
+ y = b;
22
+ z = c;
23
+ }
24
+ return { x, y, z };
25
+ }
26
+ x;
27
+ y;
28
+ z;
29
+ constructor(a, b, c) {
30
+ const { x, y, z } = Vec3.loadArgs(a, b, c);
31
+ this.x = x;
32
+ this.y = y;
33
+ this.z = z;
34
+ }
35
+ /**
36
+ * Copy this object
37
+ */
38
+ copy() {
39
+ return new Vec3(this.copyBase());
40
+ }
41
+ /**
42
+ * Copy but just return the base value, not the whole instance
43
+ */
44
+ copyBase() {
45
+ return {
46
+ x: this.x,
47
+ y: this.y,
48
+ z: this.z,
49
+ };
50
+ }
51
+ normalize() {
52
+ const d = Math.sqrt(this.x * this.x + this.y * this.y + this.z * this.z);
53
+ return d < 1.0e-5 ? Vec3.Zero : new Vec3(this.x / d, this.y / d, this.z / d);
54
+ }
55
+ dot(a, b, c) {
56
+ const vec = Vec3.loadArgs(a, b, c);
57
+ return this.x * vec.x +
58
+ this.y * vec.y +
59
+ this.z * vec.z;
60
+ }
61
+ cross(a, b, c) {
62
+ const vec = Vec3.loadArgs(a, b, c);
63
+ return new Vec3(this.y * vec.z - this.z * vec.y, this.z * vec.x - this.x * vec.z, this.x * vec.y - this.y * vec.x);
64
+ }
65
+ add(a, b, c) {
66
+ const vec = Vec3.loadArgs(a, b, c);
67
+ const x = this.x + vec.x, y = this.y + vec.y, z = this.z + vec.z;
68
+ return new Vec3(x, y, z);
69
+ }
70
+ subtract(a, b, c) {
71
+ const vec = Vec3.loadArgs(a, b, c);
72
+ const x = this.x - vec.x, y = this.y - vec.y, z = this.z - vec.z;
73
+ return new Vec3(x, y, z);
74
+ }
75
+ multiply(a, b, c) {
76
+ let vec;
77
+ if ((a && b && c) || (typeof a === "object" && "x" in a))
78
+ vec = Vec3.loadArgs(a, b, c);
79
+ else
80
+ vec = { x: a, y: a, z: a };
81
+ const x = this.x * vec.x;
82
+ const y = this.y * vec.y;
83
+ const z = this.z * vec.z;
84
+ return new Vec3(x, y, z);
85
+ }
86
+ distanceTo(a, b, c) {
87
+ const vec = Vec3.loadArgs(a, b, c);
88
+ const d = vec.x - this.x;
89
+ const e = vec.y - this.y;
90
+ const f = vec.z - this.z;
91
+ return Math.sqrt(d * d + e * e + f * f);
92
+ }
93
+ distanceToSqr(a, b, c) {
94
+ const vec = Vec3.loadArgs(a, b, c);
95
+ const d = vec.x - this.x;
96
+ const e = vec.y - this.y;
97
+ const f = vec.z - this.z;
98
+ return d * d + e * e + f * f;
99
+ }
100
+ length() {
101
+ return Math.sqrt(this.x * this.x + this.y * this.y + this.z * this.z);
102
+ }
103
+ lengthSqr() {
104
+ return this.x * this.x + this.y * this.y + this.z * this.z;
105
+ }
106
+ equal(a, b, c) {
107
+ const vec = Vec3.loadArgs(a, b, c);
108
+ return this.x === vec.x &&
109
+ this.y === vec.y &&
110
+ this.z === vec.z;
111
+ }
112
+ /**
113
+ * Create new Vec3 with one updated value, keep the rest.
114
+ * @param axis
115
+ * @param value
116
+ */
117
+ with(axis, value) {
118
+ const x = axis === BaseAxis.X ? value : this.x;
119
+ const y = axis === BaseAxis.Y ? value : this.y;
120
+ const z = axis === BaseAxis.Z ? value : this.z;
121
+ return new Vec3(x, y, z);
122
+ }
123
+ /**
124
+ * Get value of an axis
125
+ * @param axis
126
+ * @returns
127
+ */
128
+ get(axis) {
129
+ return Axis.choose(axis, this.x, this.y, this.z);
130
+ }
131
+ horizontalDistance() {
132
+ return Math.sqrt((this.x * this.x) + (this.z * this.z));
133
+ }
134
+ horizontalDistanceSqr() {
135
+ return (this.x * this.x) + (this.z * this.z);
136
+ }
137
+ scale(val) {
138
+ return this.multiply(val);
139
+ }
140
+ isFinite() {
141
+ return isFinite(this.x) && isFinite(this.y) && isFinite(this.z);
142
+ }
143
+ }
144
+ exports.Vec3 = Vec3;
145
+ var BaseAxis;
146
+ (function (BaseAxis) {
147
+ BaseAxis[BaseAxis["X"] = 0] = "X";
148
+ BaseAxis[BaseAxis["Y"] = 1] = "Y";
149
+ BaseAxis[BaseAxis["Z"] = 2] = "Z";
150
+ })(BaseAxis || (exports.BaseAxis = BaseAxis = {}));
151
+ /** @hidden */
152
+ class Axis {
153
+ /**
154
+ * Helper function to return value corresponding to given axis
155
+ */
156
+ static choose(axis, x, y, z) {
157
+ switch (axis) {
158
+ case BaseAxis.X: return x;
159
+ case BaseAxis.Y: return y;
160
+ case BaseAxis.Z: return z;
161
+ }
162
+ }
163
+ /**
164
+ * Collision math
165
+ */
166
+ static stepOrder(x, z) {
167
+ if (Math.abs(x) < Math.abs(z))
168
+ return [BaseAxis.Y, BaseAxis.Z, BaseAxis.X];
169
+ return [BaseAxis.Y, BaseAxis.X, BaseAxis.Z];
170
+ }
171
+ }
172
+ exports.Axis = Axis;
173
+ /**
174
+ * For collision math.
175
+ *
176
+ * This is for "rotating" the Axis
177
+ *
178
+ * @hidden
179
+ */
180
+ class AxisCycle {
181
+ /**
182
+ * Don't rotate the Axis
183
+ */
184
+ static NONE = new class extends AxisCycle {
185
+ cycle(axis) {
186
+ return axis;
187
+ }
188
+ cycleCoords(x, y, z, axis) {
189
+ return Axis.choose(axis, x, y, z);
190
+ }
191
+ inverse() {
192
+ return this;
193
+ }
194
+ };
195
+ /**
196
+ * Move forward 1 unit
197
+ */
198
+ static FORWARD = new class extends AxisCycle {
199
+ cycle(axis) {
200
+ return AxisCycle.Axises[(axis + 1) % 3];
201
+ }
202
+ cycleCoords(x, y, z, axis) {
203
+ return Axis.choose(axis, z, x, y);
204
+ }
205
+ inverse() {
206
+ return AxisCycle.BACKWARD;
207
+ }
208
+ };
209
+ /**
210
+ * Move forward 2 units, or backward 1 unit
211
+ *
212
+ * For the name explaination, in a cyclic three-value array, move forward 2 steps equals step backward 1 step.
213
+ *
214
+ * Example:
215
+ * ```
216
+ * You are here
217
+ * v
218
+ * [0, 1, 2]
219
+ * ```
220
+ * Now move two:
221
+ * ```
222
+ * Now you are here
223
+ * v
224
+ * [0, 1, 2]
225
+ * ```
226
+ * Thats equal to, step one backward:
227
+ * ```
228
+ * you still here
229
+ * v
230
+ * [0, 1, 2]
231
+ * ```
232
+ */
233
+ static BACKWARD = new class extends AxisCycle {
234
+ cycle(axis) {
235
+ return AxisCycle.Axises[(axis - 1 + 3) % 3];
236
+ }
237
+ cycleCoords(x, y, z, axis) {
238
+ return Axis.choose(axis, y, z, x);
239
+ }
240
+ inverse() {
241
+ return AxisCycle.FORWARD;
242
+ }
243
+ };
244
+ static Values = [this.NONE, this.FORWARD, this.BACKWARD];
245
+ static Axises = [BaseAxis.X, BaseAxis.Y, BaseAxis.Z];
246
+ static between(from, to) {
247
+ return this.Values[(to - from + 3) % 3];
248
+ }
249
+ static isAxis = true;
250
+ }
251
+ exports.AxisCycle = AxisCycle;
252
+ /**
253
+ * For clipping math
254
+ *
255
+ * @hidden
256
+ */
257
+ class Direction {
258
+ index3D;
259
+ axis;
260
+ normal;
261
+ static DOWN = new Direction(0, BaseAxis.Y, new Vec3(0, -1, 0));
262
+ static UP = new Direction(1, BaseAxis.Y, new Vec3(0, 1, 0));
263
+ static NORTH = new Direction(2, BaseAxis.Z, new Vec3(0, 0, -1));
264
+ static SOUTH = new Direction(3, BaseAxis.Z, new Vec3(0, 0, 1));
265
+ static WEST = new Direction(4, BaseAxis.X, new Vec3(-1, 0, 0));
266
+ static EAST = new Direction(5, BaseAxis.X, new Vec3(1, 0, 0));
267
+ static Values = [this.DOWN, this.UP, this.NORTH, this.SOUTH, this.WEST, this.EAST];
268
+ constructor(index3D, axis, normal) {
269
+ this.index3D = index3D;
270
+ this.axis = axis;
271
+ this.normal = normal;
272
+ }
273
+ static getApproximateNearest(a, b, c) {
274
+ const { x: dx, y: dy, z: dz } = Vec3.loadArgs(a, b, c);
275
+ let result = this.NORTH;
276
+ let highestDot = Number.MIN_VALUE;
277
+ for (const direction of this.Values) {
278
+ const dot = (dx * direction.normal.x) + (dy * direction.normal.y) + (dz * direction.normal.z);
279
+ if (dot > highestDot) {
280
+ highestDot = dot;
281
+ result = direction;
282
+ }
283
+ }
284
+ return result;
285
+ }
286
+ }
287
+ exports.Direction = Direction;
288
+ //# sourceMappingURL=direction.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"direction.js","sourceRoot":"","sources":["../../src/base/direction.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,43 @@
1
+ import { TCPClient } from "../client/tcp";
2
+ import { AABB } from "./aabb";
3
+ export declare class EntitiesManager {
4
+ private tcp;
5
+ /**
6
+ * Split chunks into 16x16x16 sections, so each chunk sections will contain a set of entities
7
+ *
8
+ * A key is `{chunkSectionX}:{chunkSectionY}:{chunkSectionZ}`
9
+ */
10
+ sections: Map<string, Set<number>>;
11
+ /**
12
+ * A map mapping entity ID to section key.
13
+ */
14
+ entityToSection: Map<number, string>;
15
+ constructor(tcp: TCPClient);
16
+ /**
17
+ * Clear data
18
+ */
19
+ wipe(): void;
20
+ /**
21
+ * Convert real-world position into section key
22
+ */
23
+ static getSectionKey(x: number, y: number, z: number): string;
24
+ /**
25
+ * Add an entity (represented by ID)
26
+ */
27
+ add(entityId: number, x: number, y: number, z: number): void;
28
+ /**
29
+ * Remove entity
30
+ */
31
+ remove(entityId: number): void;
32
+ /**
33
+ * Update entity position
34
+ */
35
+ update(entityId: number, x: number, y: number, z: number): void;
36
+ /**
37
+ * Query the entity in the section that intersec with BB
38
+ * @param queryBB The querying bounding box
39
+ * @returns
40
+ */
41
+ queryAABB(queryBB: AABB, exclude?: number[]): AABB[];
42
+ }
43
+ //# sourceMappingURL=entity.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"entity.d.ts","sourceRoot":"","sources":["../../src/base/entity.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,eAAe,CAAC;AAC1C,OAAO,EAAE,IAAI,EAAE,MAAM,QAAQ,CAAC;AAE9B,qBAAa,eAAe;IAYZ,OAAO,CAAC,GAAG;IAXvB;;;;OAIG;IACI,QAAQ,EAAE,GAAG,CAAC,MAAM,EAAE,GAAG,CAAC,MAAM,CAAC,CAAC,CAAa;IACtD;;OAEG;IACI,eAAe,EAAE,GAAG,CAAC,MAAM,EAAE,MAAM,CAAC,CAAa;IAExD,YAAoB,GAAG,EAAE,SAAS,EAAK;IAEvC;;OAEG;IACI,IAAI,SAGV;IAED;;OAEG;IACH,OAAc,aAAa,CAAC,CAAC,EAAE,MAAM,EAAE,CAAC,EAAE,MAAM,EAAE,CAAC,EAAE,MAAM,UAI1D;IAED;;OAEG;IACI,GAAG,CAAC,QAAQ,EAAE,MAAM,EAAE,CAAC,EAAE,MAAM,EAAE,CAAC,EAAE,MAAM,EAAE,CAAC,EAAE,MAAM,QAK3D;IAED;;OAEG;IACI,MAAM,CAAC,QAAQ,EAAE,MAAM,QAM7B;IAED;;OAEG;IACI,MAAM,CAAC,QAAQ,EAAE,MAAM,EAAE,CAAC,EAAE,MAAM,EAAE,CAAC,EAAE,MAAM,EAAE,CAAC,EAAE,MAAM,QAM9D;IAED;;;;OAIG;IACI,SAAS,CAAC,OAAO,EAAE,IAAI,EAAE,OAAO,GAAE,MAAM,EAAO,UAyBrD;CACJ"}
@@ -0,0 +1,97 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.EntitiesManager = void 0;
4
+ const aabb_1 = require("./aabb");
5
+ class EntitiesManager {
6
+ tcp;
7
+ /**
8
+ * Split chunks into 16x16x16 sections, so each chunk sections will contain a set of entities
9
+ *
10
+ * A key is `{chunkSectionX}:{chunkSectionY}:{chunkSectionZ}`
11
+ */
12
+ sections = new Map();
13
+ /**
14
+ * A map mapping entity ID to section key.
15
+ */
16
+ entityToSection = new Map();
17
+ constructor(tcp) {
18
+ this.tcp = tcp;
19
+ }
20
+ /**
21
+ * Clear data
22
+ */
23
+ wipe() {
24
+ this.sections = new Map();
25
+ this.entityToSection = new Map();
26
+ }
27
+ /**
28
+ * Convert real-world position into section key
29
+ */
30
+ static getSectionKey(x, y, z) {
31
+ // Divide 2^4 = 16
32
+ const sx = x >> 4, sy = y >> 4, sz = z >> 4;
33
+ return `${sx}:${sy}:${sz}`;
34
+ }
35
+ /**
36
+ * Add an entity (represented by ID)
37
+ */
38
+ add(entityId, x, y, z) {
39
+ const key = EntitiesManager.getSectionKey(x, y, z);
40
+ if (!this.sections.has(key))
41
+ this.sections.set(key, new Set());
42
+ this.sections.get(key).add(entityId);
43
+ this.entityToSection.set(entityId, key);
44
+ }
45
+ /**
46
+ * Remove entity
47
+ */
48
+ remove(entityId) {
49
+ const key = this.entityToSection.get(entityId);
50
+ if (key) {
51
+ this.sections.get(key)?.delete(entityId);
52
+ this.entityToSection.delete(entityId);
53
+ }
54
+ }
55
+ /**
56
+ * Update entity position
57
+ */
58
+ update(entityId, x, y, z) {
59
+ const newKey = EntitiesManager.getSectionKey(x, y, z);
60
+ if (this.entityToSection.get(entityId) !== newKey) {
61
+ this.remove(entityId);
62
+ this.add(entityId, x, y, z);
63
+ }
64
+ }
65
+ /**
66
+ * Query the entity in the section that intersec with BB
67
+ * @param queryBB The querying bounding box
68
+ * @returns
69
+ */
70
+ queryAABB(queryBB, exclude = []) {
71
+ this.tcp.checkReady();
72
+ const { minX, minY, minZ, maxX, maxY, maxZ } = queryBB;
73
+ const results = [];
74
+ const sx0 = minX >> 4, sx1 = maxX >> 4;
75
+ const sy0 = minY >> 4, sy1 = maxY >> 4;
76
+ const sz0 = minZ >> 4, sz1 = maxZ >> 4;
77
+ for (let sx = sx0; sx <= sx1; sx++) {
78
+ for (let sy = sy0; sy <= sy1; sy++) {
79
+ for (let sz = sz0; sz <= sz1; sz++) {
80
+ const bucket = this.sections.get(`${sx},${sy},${sz}`);
81
+ if (bucket)
82
+ for (const id of bucket) {
83
+ if (exclude.includes(id))
84
+ continue;
85
+ const entity = this.tcp.world.entities[id];
86
+ const entityBB = aabb_1.AABB.fromEntityType(entity.type);
87
+ if (queryBB.isIntersect(entityBB))
88
+ results.push(entityBB);
89
+ }
90
+ }
91
+ }
92
+ }
93
+ return results;
94
+ }
95
+ }
96
+ exports.EntitiesManager = EntitiesManager;
97
+ //# sourceMappingURL=entity.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"entity.js","sourceRoot":"","sources":["../../src/base/entity.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,76 @@
1
+ /** @hidden */
2
+ export declare class UnexpectedValue extends Error {
3
+ type: string;
4
+ got: string;
5
+ expect?: string | undefined;
6
+ constructor(type: string, got: string, expect?: string | undefined);
7
+ }
8
+ /** @hidden */
9
+ export declare class NumberTooBig extends Error {
10
+ number: number | bigint;
11
+ constructor(number: number | bigint);
12
+ }
13
+ /** @hidden */
14
+ export declare class StringSizeExceedLimit extends Error {
15
+ constructor();
16
+ }
17
+ /** @hidden */
18
+ export declare class InvalidValue extends Error {
19
+ type: string;
20
+ got: string;
21
+ constructor(type: string, got: string);
22
+ }
23
+ /** @hidden */
24
+ export declare class SockerIsNotWritable extends Error {
25
+ constructor();
26
+ }
27
+ /** @hidden */
28
+ export declare class CantGetMsAuthToken extends Error {
29
+ constructor();
30
+ }
31
+ /** @hidden */
32
+ export declare class CantGetMsAccessToken extends Error {
33
+ constructor();
34
+ }
35
+ /** @hidden */
36
+ export declare class AuthError extends Error {
37
+ error: string;
38
+ constructor(error: string);
39
+ }
40
+ /** @hidden */
41
+ export declare class XboxError extends Error {
42
+ code: string;
43
+ constructor(code: string);
44
+ }
45
+ /** @hidden */
46
+ export declare class ProfileNotFound extends Error {
47
+ constructor();
48
+ }
49
+ /** @hidden */
50
+ export declare class ProfileError extends Error {
51
+ code: string;
52
+ message: string;
53
+ constructor(code: string, message: string);
54
+ }
55
+ /** @hidden */
56
+ export declare class AuthDenied extends Error {
57
+ constructor();
58
+ }
59
+ /** @hidden */
60
+ export declare class AuthTokenExpired extends Error {
61
+ constructor();
62
+ }
63
+ /** @hidden */
64
+ export declare class MissingAuthOption extends Error {
65
+ constructor();
66
+ }
67
+ /** @hidden */
68
+ export declare class RegistryItemNotFound extends Error {
69
+ item: string;
70
+ constructor(item: string);
71
+ }
72
+ /** @hidden */
73
+ export declare class ClientNotReady extends Error {
74
+ constructor();
75
+ }
76
+ //# sourceMappingURL=error.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"error.d.ts","sourceRoot":"","sources":["../../src/base/error.ts"],"names":[],"mappings":"AAAA,cAAc;AACd,qBAAa,eAAgB,SAAQ,KAAK;IAE3B,IAAI,EAAE,MAAM;IACZ,GAAG,EAAE,MAAM;IACX,MAAM,CAAC,EAAE,MAAM;IAH1B,YACW,IAAI,EAAE,MAAM,EACZ,GAAG,EAAE,MAAM,EACX,MAAM,CAAC,EAAE,MAAM,YAAA,EAMzB;CACJ;AAED,cAAc;AACd,qBAAa,YAAa,SAAQ,KAAK;IAChB,MAAM,EAAE,MAAM,GAAG,MAAM;IAA1C,YAAmB,MAAM,EAAE,MAAM,GAAG,MAAM,EAEzC;CACJ;AAED,cAAc;AACd,qBAAa,qBAAsB,SAAQ,KAAK;IAC5C,cAEC;CACJ;AAED,cAAc;AACd,qBAAa,YAAa,SAAQ,KAAK;IAChB,IAAI,EAAE,MAAM;IAAS,GAAG,EAAE,MAAM;IAAnD,YAAmB,IAAI,EAAE,MAAM,EAAS,GAAG,EAAE,MAAM,EAElD;CACJ;AAED,cAAc;AACd,qBAAa,mBAAoB,SAAQ,KAAK;IAC1C,cAEC;CACJ;AAED,cAAc;AACd,qBAAa,kBAAmB,SAAQ,KAAK;IACzC,cAEC;CACJ;AAED,cAAc;AACd,qBAAa,oBAAqB,SAAQ,KAAK;IAC3C,cAEC;CACJ;AAED,cAAc;AACd,qBAAa,SAAU,SAAQ,KAAK;IACb,KAAK,EAAE,MAAM;IAAhC,YAAmB,KAAK,EAAE,MAAM,EAE/B;CACJ;AAED,cAAc;AACd,qBAAa,SAAU,SAAQ,KAAK;IACb,IAAI,EAAE,MAAM;IAA/B,YAAmB,IAAI,EAAE,MAAM,EAE9B;CACJ;AAED,cAAc;AACd,qBAAa,eAAgB,SAAQ,KAAK;IACtC,cAEC;CACJ;AAED,cAAc;AACd,qBAAa,YAAa,SAAQ,KAAK;IAChB,IAAI,EAAE,MAAM;IAAS,OAAO,EAAE,MAAM;IAAvD,YAAmB,IAAI,EAAE,MAAM,EAAS,OAAO,EAAE,MAAM,EAEtD;CACJ;AAED,cAAc;AACd,qBAAa,UAAW,SAAQ,KAAK;IACjC,cAEC;CACJ;AAED,cAAc;AACd,qBAAa,gBAAiB,SAAQ,KAAK;IACvC,cAEC;CACJ;AAED,cAAc;AACd,qBAAa,iBAAkB,SAAQ,KAAK;IACxC,cAEC;CACJ;AAED,cAAc;AACd,qBAAa,oBAAqB,SAAQ,KAAK;IACxB,IAAI,EAAE,MAAM;IAA/B,YAAmB,IAAI,EAAE,MAAM,EAE9B;CACJ;AAED,cAAc;AACd,qBAAa,cAAe,SAAQ,KAAK;IACrC,cAEC;CACJ"}
@@ -0,0 +1,141 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.ClientNotReady = exports.RegistryItemNotFound = exports.MissingAuthOption = exports.AuthTokenExpired = exports.AuthDenied = exports.ProfileError = exports.ProfileNotFound = exports.XboxError = exports.AuthError = exports.CantGetMsAccessToken = exports.CantGetMsAuthToken = exports.SockerIsNotWritable = exports.InvalidValue = exports.StringSizeExceedLimit = exports.NumberTooBig = exports.UnexpectedValue = void 0;
4
+ /** @hidden */
5
+ class UnexpectedValue extends Error {
6
+ type;
7
+ got;
8
+ expect;
9
+ constructor(type, got, expect) {
10
+ this.type = type;
11
+ this.got = got;
12
+ this.expect = expect;
13
+ if (expect)
14
+ super(`unexpected value of ${type}, expect ${expect}, got ${got}`);
15
+ else
16
+ super(`unexpected value of ${type}: ${got}`);
17
+ }
18
+ }
19
+ exports.UnexpectedValue = UnexpectedValue;
20
+ /** @hidden */
21
+ class NumberTooBig extends Error {
22
+ number;
23
+ constructor(number) {
24
+ super("provided number is exceeded system limit (64 bits or 8 byte), got " + number.toString());
25
+ this.number = number;
26
+ }
27
+ }
28
+ exports.NumberTooBig = NumberTooBig;
29
+ /** @hidden */
30
+ class StringSizeExceedLimit extends Error {
31
+ constructor() {
32
+ super("read string size is exceed buffer limit");
33
+ }
34
+ }
35
+ exports.StringSizeExceedLimit = StringSizeExceedLimit;
36
+ /** @hidden */
37
+ class InvalidValue extends Error {
38
+ type;
39
+ got;
40
+ constructor(type, got) {
41
+ super(`got invalid value for ${type}: ${got}`);
42
+ this.type = type;
43
+ this.got = got;
44
+ }
45
+ }
46
+ exports.InvalidValue = InvalidValue;
47
+ /** @hidden */
48
+ class SockerIsNotWritable extends Error {
49
+ constructor() {
50
+ super("socket is not writable, do you connect it before?");
51
+ }
52
+ }
53
+ exports.SockerIsNotWritable = SockerIsNotWritable;
54
+ /** @hidden */
55
+ class CantGetMsAuthToken extends Error {
56
+ constructor() {
57
+ super("can't get microsoft auth token, maybe the responding request is invalid");
58
+ }
59
+ }
60
+ exports.CantGetMsAuthToken = CantGetMsAuthToken;
61
+ /** @hidden */
62
+ class CantGetMsAccessToken extends Error {
63
+ constructor() {
64
+ super("can't get microsoft access token");
65
+ }
66
+ }
67
+ exports.CantGetMsAccessToken = CantGetMsAccessToken;
68
+ /** @hidden */
69
+ class AuthError extends Error {
70
+ error;
71
+ constructor(error) {
72
+ super(`got oauth error: ${error}, for more info: https://datatracker.ietf.org/doc/html/rfc6749#section-5.2`);
73
+ this.error = error;
74
+ }
75
+ }
76
+ exports.AuthError = AuthError;
77
+ /** @hidden */
78
+ class XboxError extends Error {
79
+ code;
80
+ constructor(code) {
81
+ super(`xbox error code: ${code}`);
82
+ this.code = code;
83
+ }
84
+ }
85
+ exports.XboxError = XboxError;
86
+ /** @hidden */
87
+ class ProfileNotFound extends Error {
88
+ constructor() {
89
+ super("cant find your minecraft profile, do you own minecraft or set up the profile?");
90
+ }
91
+ }
92
+ exports.ProfileNotFound = ProfileNotFound;
93
+ /** @hidden */
94
+ class ProfileError extends Error {
95
+ code;
96
+ message;
97
+ constructor(code, message) {
98
+ super(`profile error: ${code}: ${message}`);
99
+ this.code = code;
100
+ this.message = message;
101
+ }
102
+ }
103
+ exports.ProfileError = ProfileError;
104
+ /** @hidden */
105
+ class AuthDenied extends Error {
106
+ constructor() {
107
+ super("the authorization request was denied");
108
+ }
109
+ }
110
+ exports.AuthDenied = AuthDenied;
111
+ /** @hidden */
112
+ class AuthTokenExpired extends Error {
113
+ constructor() {
114
+ super("device token is expired, please try again");
115
+ }
116
+ }
117
+ exports.AuthTokenExpired = AuthTokenExpired;
118
+ /** @hidden */
119
+ class MissingAuthOption extends Error {
120
+ constructor() {
121
+ super("you need to provide auth option to be able to play in premium server");
122
+ }
123
+ }
124
+ exports.MissingAuthOption = MissingAuthOption;
125
+ /** @hidden */
126
+ class RegistryItemNotFound extends Error {
127
+ item;
128
+ constructor(item) {
129
+ super(`cant find registry item: ${item}`);
130
+ this.item = item;
131
+ }
132
+ }
133
+ exports.RegistryItemNotFound = RegistryItemNotFound;
134
+ /** @hidden */
135
+ class ClientNotReady extends Error {
136
+ constructor() {
137
+ super(`client is not ready`);
138
+ }
139
+ }
140
+ exports.ClientNotReady = ClientNotReady;
141
+ //# sourceMappingURL=error.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"error.js","sourceRoot":"","sources":["../../src/base/error.ts"],"names":[],"mappings":";;;AAAA,cAAc;AACd,qBAA6B,SAAQ,KAAK;IAE3B,IAAI;IACJ,GAAG;IACH,MAAM;IAHjB,YACW,IAAY,EACZ,GAAW,EACX,MAAe;oBAFf,IAAI;mBACJ,GAAG;sBACH,MAAM;QAEb,IAAI,MAAM;YACN,KAAK,CAAC,uBAAuB,IAAI,YAAY,MAAM,SAAS,GAAG,EAAE,CAAC,CAAC;;YAEnE,KAAK,CAAC,uBAAuB,IAAI,KAAK,GAAG,EAAE,CAAC,CAAC;IACrD,CAAC;CACJ;;AAED,cAAc;AACd,kBAA0B,SAAQ,KAAK;IAChB,MAAM;IAAzB,YAAmB,MAAuB;QACtC,KAAK,CAAC,oEAAoE,GAAG,MAAM,CAAC,QAAQ,EAAE,CAAC,CAAC;sBADjF,MAAM;IAEzB,CAAC;CACJ;;AAED,cAAc;AACd,2BAAmC,SAAQ,KAAK;IAC5C;QACI,KAAK,CAAC,yCAAyC,CAAC,CAAC;IACrD,CAAC;CACJ;;AAED,cAAc;AACd,kBAA0B,SAAQ,KAAK;IAChB,IAAI;IAAiB,GAAG;IAA3C,YAAmB,IAAY,EAAS,GAAW;QAC/C,KAAK,CAAC,yBAAyB,IAAI,KAAK,GAAG,EAAE,CAAC,CAAC;oBADhC,IAAI;mBAAiB,GAAG;IAE3C,CAAC;CACJ;;AAED,cAAc;AACd,yBAAiC,SAAQ,KAAK;IAC1C;QACI,KAAK,CAAC,mDAAmD,CAAC,CAAC;IAC/D,CAAC;CACJ;;AAED,cAAc;AACd,wBAAgC,SAAQ,KAAK;IACzC;QACI,KAAK,CAAC,yEAAyE,CAAC,CAAC;IACrF,CAAC;CACJ;;AAED,cAAc;AACd,0BAAkC,SAAQ,KAAK;IAC3C;QACI,KAAK,CAAC,kCAAkC,CAAC,CAAC;IAC9C,CAAC;CACJ;;AAED,cAAc;AACd,eAAuB,SAAQ,KAAK;IACb,KAAK;IAAxB,YAAmB,KAAa;QAC5B,KAAK,CAAC,oBAAoB,KAAK,4EAA4E,CAAC,CAAC;qBAD9F,KAAK;IAExB,CAAC;CACJ;;AAED,cAAc;AACd,eAAuB,SAAQ,KAAK;IACb,IAAI;IAAvB,YAAmB,IAAY;QAC3B,KAAK,CAAC,oBAAoB,IAAI,EAAE,CAAC,CAAC;oBADnB,IAAI;IAEvB,CAAC;CACJ;;AAED,cAAc;AACd,qBAA6B,SAAQ,KAAK;IACtC;QACI,KAAK,CAAC,+EAA+E,CAAC,CAAC;IAC3F,CAAC;CACJ;;AAED,cAAc;AACd,kBAA0B,SAAQ,KAAK;IAChB,IAAI;IAAiB,OAAO;IAA/C,YAAmB,IAAY,EAAS,OAAe;QACnD,KAAK,CAAC,kBAAkB,IAAI,KAAK,OAAO,EAAE,CAAC,CAAC;oBAD7B,IAAI;uBAAiB,OAAO;IAE/C,CAAC;CACJ;;AAED,cAAc;AACd,gBAAwB,SAAQ,KAAK;IACjC;QACI,KAAK,CAAC,sCAAsC,CAAC,CAAC;IAClD,CAAC;CACJ;;AAED,cAAc;AACd,sBAA8B,SAAQ,KAAK;IACvC;QACI,KAAK,CAAC,2CAA2C,CAAC,CAAC;IACvD,CAAC;CACJ;;AAED,cAAc;AACd,uBAA+B,SAAQ,KAAK;IACxC;QACI,KAAK,CAAC,sEAAsE,CAAC,CAAC;IAClF,CAAC;CACJ;;AAED,cAAc;AACd,0BAAkC,SAAQ,KAAK;IACxB,IAAI;IAAvB,YAAmB,IAAY;QAC3B,KAAK,CAAC,4BAA4B,IAAI,EAAE,CAAC,CAAC;oBAD3B,IAAI;IAEvB,CAAC;CACJ;;AAED,cAAc;AACd,oBAA4B,SAAQ,KAAK;IACrC;QACI,KAAK,CAAC,qBAAqB,CAAC,CAAC;IACjC,CAAC;CACJ"}