bc-minecraft-bedrock-types 1.3.13 → 1.4.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 (41) hide show
  1. package/lib/src/Minecraft/Json/Compact.d.ts +93 -0
  2. package/lib/src/Minecraft/Json/Compact.js +174 -0
  3. package/lib/src/Minecraft/Json/Compact.js.map +1 -0
  4. package/lib/src/Minecraft/Json/Grammar.d.ts +14 -0
  5. package/lib/src/Minecraft/Json/Grammar.js +75 -0
  6. package/lib/src/Minecraft/Json/Grammar.js.map +1 -0
  7. package/lib/src/Minecraft/Json/Reader.d.ts +41 -0
  8. package/lib/src/Minecraft/Json/Reader.js +98 -0
  9. package/lib/src/Minecraft/Json/Reader.js.map +1 -0
  10. package/lib/src/Minecraft/Json/index.d.ts +3 -0
  11. package/lib/src/Minecraft/Json/index.js +21 -0
  12. package/lib/src/Minecraft/Json/index.js.map +1 -0
  13. package/lib/src/Minecraft/Selector/Selector.d.ts +25 -82
  14. package/lib/src/Minecraft/Selector/Selector.js +34 -195
  15. package/lib/src/Minecraft/Selector/Selector.js.map +1 -1
  16. package/lib/src/Minecraft/Selector/SelectorTypes.d.ts +4 -0
  17. package/lib/src/Minecraft/Selector/SelectorTypes.js +3 -0
  18. package/lib/src/Minecraft/Selector/SelectorTypes.js.map +1 -0
  19. package/lib/src/Minecraft/Selector/index.d.ts +1 -3
  20. package/lib/src/Minecraft/Selector/index.js +1 -3
  21. package/lib/src/Minecraft/Selector/index.js.map +1 -1
  22. package/lib/src/Minecraft/Xp.js +1 -1
  23. package/lib/src/Minecraft/Xp.js.map +1 -1
  24. package/lib/src/Minecraft/index.d.ts +1 -0
  25. package/lib/src/Minecraft/index.js +2 -1
  26. package/lib/src/Minecraft/index.js.map +1 -1
  27. package/lib/src/Modes/ModeCollection.js +5 -5
  28. package/lib/src/Modes/ModeCollection.js.map +1 -1
  29. package/lib/src/Types/OffsetWord.d.ts +5 -5
  30. package/lib/src/Types/OffsetWord.js +7 -6
  31. package/lib/src/Types/OffsetWord.js.map +1 -1
  32. package/package.json +4 -4
  33. package/lib/src/Minecraft/Selector/ItemAttribute.d.ts +0 -34
  34. package/lib/src/Minecraft/Selector/ItemAttribute.js +0 -76
  35. package/lib/src/Minecraft/Selector/ItemAttribute.js.map +0 -1
  36. package/lib/src/Minecraft/Selector/ScoreAttribute.d.ts +0 -32
  37. package/lib/src/Minecraft/Selector/ScoreAttribute.js +0 -69
  38. package/lib/src/Minecraft/Selector/ScoreAttribute.js.map +0 -1
  39. package/lib/src/Minecraft/Selector/ValueAttribute.d.ts +0 -45
  40. package/lib/src/Minecraft/Selector/ValueAttribute.js +0 -75
  41. package/lib/src/Minecraft/Selector/ValueAttribute.js.map +0 -1
@@ -1,220 +1,59 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.SelectorAttribute = exports.Selector = void 0;
3
+ exports.Selector = void 0;
4
4
  const Modes_1 = require("../../Modes/Modes");
5
- const ItemAttribute_1 = require("./ItemAttribute");
6
- const ScoreAttribute_1 = require("./ScoreAttribute");
7
- const ValueAttribute_1 = require("./ValueAttribute");
8
- /**An object that represents a selector*/
9
- class Selector {
10
- /**Creates a new instance of a selector
11
- * @param type The type of the selector such as @a | @e
12
- * @param offset The offset the selector starts in the document*/
13
- constructor(type, offset = 0) {
14
- this.type = type;
15
- this.offset = offset;
16
- this.attributes = [];
17
- }
18
- /**TODO add documentation
19
- *
20
- * @returns
21
- */
22
- toString() {
23
- if (this.attributes.length === 0) {
24
- return this.type;
25
- }
26
- return `${this.type}[${this.attributes.map((attribute) => attribute.toString()).join(",")}]`;
27
- }
28
- /**TODO add documentation
29
- *
30
- * @param parameter
31
- * @returns
32
- */
33
- contains(parameter) {
34
- return this.attributes.findIndex((attribute) => attribute.name === parameter) !== -1;
35
- }
36
- /**TODO add documentation
37
- *
38
- * @param parameter
39
- * @returns
40
- */
41
- count(parameter) {
42
- return this.get(parameter).length;
5
+ const Compact_1 = require("../Json/Compact");
6
+ const Reader_1 = require("../Json/Reader");
7
+ /**
8
+ * The class that represents a selector.
9
+ */
10
+ class Selector extends Reader_1.CompactJsonReader {
11
+ constructor(type, offset, data) {
12
+ super(data || Compact_1.CompactJson.empty());
13
+ this._type = type || "@a";
14
+ this._offset = offset || 0;
43
15
  }
44
- /**TODO add documentation
45
- *
46
- * @param parameter
47
- * @returns
48
- */
49
- get(parameter) {
50
- return this.attributes.filter((attribute) => attribute.name === parameter);
16
+ get selectorType() {
17
+ return this._type;
51
18
  }
52
- /**
53
- *
54
- * @param cursor
55
- * @returns
56
- */
57
- getParameterCursorIn(cursor) {
58
- return this.attributes.find((attribute) => attribute.isCursorHere(cursor));
19
+ get selectorOffset() {
20
+ return this._offset;
59
21
  }
60
22
  }
61
23
  exports.Selector = Selector;
62
- /**TODO add documentation
63
- *
24
+ /**
25
+ * The namespace for the `Selector` class.
64
26
  */
65
27
  (function (Selector) {
66
- /**TODO add documentation
67
- *
28
+ /**
29
+ * Returns
68
30
  * @param type
69
31
  * @returns
70
32
  */
71
33
  function isValidType(type) {
72
34
  if (typeof type !== "string") {
73
- type = type.type;
35
+ type = type.selectorType;
74
36
  }
75
37
  return Modes_1.Modes.SelectorType.isValue(type);
76
38
  }
77
39
  Selector.isValidType = isValidType;
78
- /**TODO add documentation
79
- *
80
- * @param text
81
- * @returns
82
- */
83
- function getType(text) {
84
- let index = text.indexOf("[");
85
- if (index < 0)
86
- index = text.length;
87
- return text.substring(0, index);
88
- }
89
- Selector.getType = getType;
90
- /**TODO add documentation
91
- *
92
- * @param text
93
- * @param offset
94
- * @returns
95
- */
96
- function parse(text, offset = 0) {
97
- const type = getType(text);
98
- const Out = new Selector(type, offset);
99
- //remove prefix
100
- if (type.length >= text.length)
101
- return Out;
102
- const data = text.substring(type.length, text.length);
103
- offset += type.length;
104
- if (data.startsWith("[") && data.endsWith("]")) {
105
- SelectorAttribute.parseParameters(data.substring(1, data.length - 1), offset + 1, Out.attributes);
40
+ function parse(text, offset) {
41
+ if (typeof text !== "string") {
42
+ offset = text.offset;
43
+ text = text.text;
106
44
  }
107
- return Out;
108
- }
109
- Selector.parse = parse;
110
- function isSelector(value, wildcard = false, allowFakePlayers = false) {
111
- if (value.startsWith("@"))
112
- return true;
113
- if (wildcard === true) {
114
- if (value === "*")
115
- return true;
45
+ offset = offset || 0;
46
+ const index = text.indexOf("[");
47
+ if (index === -1) {
48
+ return new Selector(text);
116
49
  }
117
- if (allowFakePlayers === true) {
118
- if (value.startsWith('"') && value.endsWith('"'))
119
- return true;
120
- if (value.includes(" ")) {
121
- return false;
122
- }
123
- return true;
50
+ const type = text.slice(0, index);
51
+ const data = Compact_1.CompactJson.parse(text.slice(index), offset + index);
52
+ if (Compact_1.CompactJson.isArray(data)) {
53
+ return new Selector(type, offset, data);
124
54
  }
125
- return false;
55
+ return undefined;
126
56
  }
127
- Selector.isSelector = isSelector;
128
- function getAttribute(attribute, selector) {
129
- const regex = new RegExp(`${attribute}=([^\,\]]+)`, "gim");
130
- const matches = regex.exec(selector);
131
- if (matches) {
132
- return matches;
133
- }
134
- return [];
135
- }
136
- Selector.getAttribute = getAttribute;
57
+ Selector.parse = parse;
137
58
  })(Selector = exports.Selector || (exports.Selector = {}));
138
- /**TODO add documentation
139
- *
140
- */
141
- var SelectorAttribute;
142
- (function (SelectorAttribute) {
143
- /**TODO add documentation
144
- *
145
- * @param text
146
- * @param offset
147
- * @param selector
148
- * @param receiver
149
- */
150
- function parseParameters(text, offset, receiver) {
151
- let start = 0;
152
- let level = 0;
153
- for (let index = 0; index < text.length; index++) {
154
- const char = text[index];
155
- switch (char) {
156
- case "{":
157
- case "[":
158
- level++;
159
- break;
160
- case "}":
161
- case "]":
162
- level--;
163
- break;
164
- case ",":
165
- if (level == 0) {
166
- const p = text.substring(start, index);
167
- SelectorAttribute.parse(p, offset + start, receiver);
168
- start = index + 1;
169
- }
170
- default:
171
- continue;
172
- }
173
- }
174
- if (start < text.length) {
175
- const p = text.substring(start, text.length);
176
- SelectorAttribute.parse(p, offset + start, receiver);
177
- }
178
- }
179
- SelectorAttribute.parseParameters = parseParameters;
180
- /**TODO add documentation
181
- * @param text
182
- * @param offset
183
- * @param selector
184
- * @param receiver
185
- */
186
- function parse(text, offset, receiver) {
187
- let Index = text.indexOf("=");
188
- if (Index < 0)
189
- throw new Error("index cannot be lower then 0");
190
- const name = text.substring(0, Index).trim();
191
- switch (name) {
192
- case "scores":
193
- receiver.push(ScoreAttribute_1.SelectorScoreAttribute.parse(text, offset));
194
- break;
195
- case "hasitem":
196
- receiver.push(ItemAttribute_1.SelectorItemAttribute.parse(text, offset));
197
- break;
198
- default:
199
- Index = Index + 1;
200
- const value = text.substring(Index, text.length);
201
- receiver.push(new ValueAttribute_1.SelectorValueAttribute(name, value, offset));
202
- break;
203
- }
204
- }
205
- SelectorAttribute.parse = parse;
206
- function is(value) {
207
- if (typeof value === "object") {
208
- if (typeof value.offset !== "number")
209
- return false;
210
- if (typeof value.name !== "string")
211
- return false;
212
- if (typeof value.value !== "string")
213
- return false;
214
- return true;
215
- }
216
- return false;
217
- }
218
- SelectorAttribute.is = is;
219
- })(SelectorAttribute = exports.SelectorAttribute || (exports.SelectorAttribute = {}));
220
59
  //# sourceMappingURL=Selector.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"Selector.js","sourceRoot":"","sources":["../../../../src/Minecraft/Selector/Selector.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"Selector.js","sourceRoot":"","sources":["../../../../src/Minecraft/Selector/Selector.ts"],"names":[],"mappings":";;;AACA,6CAA0C;AAE1C,6CAA8C;AAC9C,2CAAmD;AAGnD;;GAEG;AACH,MAAa,QAAS,SAAQ,0BAAiB;IAO7C,YAAY,IAAmB,EAAE,MAAe,EAAE,IAAyB;QACzE,KAAK,CAAC,IAAI,IAAI,qBAAW,CAAC,KAAK,EAAE,CAAC,CAAC;QACnC,IAAI,CAAC,KAAK,GAAG,IAAI,IAAI,IAAI,CAAC;QAC1B,IAAI,CAAC,OAAO,GAAG,MAAM,IAAI,CAAC,CAAC;IAC7B,CAAC;IAED,IAAI,YAAY;QACd,OAAO,IAAI,CAAC,KAAK,CAAC;IACpB,CAAC;IAED,IAAI,cAAc;QAChB,OAAO,IAAI,CAAC,OAAO,CAAC;IACtB,CAAC;CACF;AApBD,4BAoBC;AAED;;GAEG;AACH,WAAiB,QAAQ;IACvB;;;;OAIG;IACH,SAAgB,WAAW,CAAC,IAAuB;QACjD,IAAI,OAAO,IAAI,KAAK,QAAQ,EAAE;YAC5B,IAAI,GAAG,IAAI,CAAC,YAAY,CAAC;SAC1B;QAED,OAAO,aAAK,CAAC,YAAY,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC;IAC1C,CAAC;IANe,oBAAW,cAM1B,CAAA;IAWD,SAAgB,KAAK,CAAC,IAAyB,EAAE,MAAe;QAC9D,IAAI,OAAO,IAAI,KAAK,QAAQ,EAAE;YAC5B,MAAM,GAAG,IAAI,CAAC,MAAM,CAAC;YACrB,IAAI,GAAG,IAAI,CAAC,IAAI,CAAC;SAClB;QACD,MAAM,GAAG,MAAM,IAAI,CAAC,CAAC;QAErB,MAAM,KAAK,GAAG,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC;QAEhC,IAAI,KAAK,KAAK,CAAC,CAAC,EAAE;YAChB,OAAO,IAAI,QAAQ,CAAC,IAAoB,CAAC,CAAC;SAC3C;QAED,MAAM,IAAI,GAAG,IAAI,CAAC,KAAK,CAAC,CAAC,EAAE,KAAK,CAAiB,CAAC;QAClD,MAAM,IAAI,GAAG,qBAAW,CAAC,KAAK,CAAC,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,EAAE,MAAM,GAAG,KAAK,CAAC,CAAC;QAElE,IAAI,qBAAW,CAAC,OAAO,CAAC,IAAI,CAAC,EAAE;YAC7B,OAAO,IAAI,QAAQ,CAAC,IAAI,EAAE,MAAM,EAAE,IAAI,CAAC,CAAC;SACzC;QAED,OAAO,SAAS,CAAC;IACnB,CAAC;IArBe,cAAK,QAqBpB,CAAA;AACH,CAAC,EA7CgB,QAAQ,GAAR,gBAAQ,KAAR,gBAAQ,QA6CxB"}
@@ -0,0 +1,4 @@
1
+ /**
2
+ *
3
+ */
4
+ export declare type SelectorType = "@a" | "@e" | "@p" | "@r" | "@s" | "@v" | "@initiator";
@@ -0,0 +1,3 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ //# sourceMappingURL=SelectorTypes.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"SelectorTypes.js","sourceRoot":"","sources":["../../../../src/Minecraft/Selector/SelectorTypes.ts"],"names":[],"mappings":""}
@@ -1,4 +1,2 @@
1
- export * from "./ItemAttribute";
2
- export * from "./ScoreAttribute";
3
1
  export * from "./Selector";
4
- export * from "./ValueAttribute";
2
+ export * from "./SelectorTypes";
@@ -15,8 +15,6 @@ var __exportStar = (this && this.__exportStar) || function(m, exports) {
15
15
  for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
16
16
  };
17
17
  Object.defineProperty(exports, "__esModule", { value: true });
18
- __exportStar(require("./ItemAttribute"), exports);
19
- __exportStar(require("./ScoreAttribute"), exports);
20
18
  __exportStar(require("./Selector"), exports);
21
- __exportStar(require("./ValueAttribute"), exports);
19
+ __exportStar(require("./SelectorTypes"), exports);
22
20
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/Minecraft/Selector/index.ts"],"names":[],"mappings":";AAAA,oBAAoB;;;;;;;;;;;;;;;;AAEpB,kDAAgC;AAChC,mDAAiC;AACjC,6CAA2B;AAC3B,mDAAiC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/Minecraft/Selector/index.ts"],"names":[],"mappings":";AAAA,oBAAoB;;;;;;;;;;;;;;;;AAEpB,6CAA2B;AAC3B,kDAAgC"}
@@ -24,7 +24,7 @@ var XP;
24
24
  * @param text The text to convert*/
25
25
  function parse(text) {
26
26
  if (isLevel(text)) {
27
- text = text.substring(0, text.length - 1);
27
+ text = text.slice(0, text.length - 1);
28
28
  }
29
29
  return Number.parseInt(text);
30
30
  }
@@ -1 +1 @@
1
- {"version":3,"file":"Xp.js","sourceRoot":"","sources":["../../../src/Minecraft/Xp.ts"],"names":[],"mappings":";;;AAAA,MAAM;AACN,IAAiB,EAAE,CA2BlB;AA3BD,WAAiB,EAAE;IACjB,+CAA+C;IAClC,UAAO,GAAW,yBAAyB,CAAC;IAEzD;;kEAE8D;IAC9D,SAAgB,EAAE,CAAC,IAAY;QAC7B,OAAO,GAAA,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;IAC5B,CAAC;IAFe,KAAE,KAEjB,CAAA;IAED;;6DAEyD;IACzD,SAAgB,OAAO,CAAC,IAAY;QAClC,OAAO,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,IAAI,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC;IAClD,CAAC;IAFe,UAAO,UAEtB,CAAA;IAED;wCACoC;IACpC,SAAgB,KAAK,CAAC,IAAY;QAChC,IAAI,OAAO,CAAC,IAAI,CAAC,EAAE;YACjB,IAAI,GAAG,IAAI,CAAC,SAAS,CAAC,CAAC,EAAE,IAAI,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC;SAC3C;QAED,OAAO,MAAM,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC;IAC/B,CAAC;IANe,QAAK,QAMpB,CAAA;AACH,CAAC,EA3BgB,EAAE,GAAF,UAAE,KAAF,UAAE,QA2BlB"}
1
+ {"version":3,"file":"Xp.js","sourceRoot":"","sources":["../../../src/Minecraft/Xp.ts"],"names":[],"mappings":";;;AAAA,MAAM;AACN,IAAiB,EAAE,CA2BlB;AA3BD,WAAiB,EAAE;IACjB,+CAA+C;IAClC,UAAO,GAAW,yBAAyB,CAAC;IAEzD;;kEAE8D;IAC9D,SAAgB,EAAE,CAAC,IAAY;QAC7B,OAAO,GAAA,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;IAC5B,CAAC;IAFe,KAAE,KAEjB,CAAA;IAED;;6DAEyD;IACzD,SAAgB,OAAO,CAAC,IAAY;QAClC,OAAO,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,IAAI,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC;IAClD,CAAC;IAFe,UAAO,UAEtB,CAAA;IAED;wCACoC;IACpC,SAAgB,KAAK,CAAC,IAAY;QAChC,IAAI,OAAO,CAAC,IAAI,CAAC,EAAE;YACjB,IAAI,GAAG,IAAI,CAAC,KAAK,CAAC,CAAC,EAAE,IAAI,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC;SACvC;QAED,OAAO,MAAM,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC;IAC/B,CAAC;IANe,QAAK,QAMpB,CAAA;AACH,CAAC,EA3BgB,EAAE,GAAF,UAAE,KAAF,UAAE,QA2BlB"}
@@ -1,4 +1,5 @@
1
1
  export * as Filter from "./Filter/index";
2
+ export * as Json from "./Json/index";
2
3
  export * as Selector from "./Selector/index";
3
4
  export * from "./Block";
4
5
  export * from "./Coordinate";
@@ -14,9 +14,10 @@ var __exportStar = (this && this.__exportStar) || function(m, exports) {
14
14
  for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
15
15
  };
16
16
  Object.defineProperty(exports, "__esModule", { value: true });
17
- exports.Selector = exports.Filter = void 0;
17
+ exports.Selector = exports.Json = exports.Filter = void 0;
18
18
  /* Auto generated */
19
19
  exports.Filter = require("./Filter/index");
20
+ exports.Json = require("./Json/index");
20
21
  exports.Selector = require("./Selector/index");
21
22
  __exportStar(require("./Block"), exports);
22
23
  __exportStar(require("./Coordinate"), exports);
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/Minecraft/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;AAAA,oBAAoB;AACpB,2CAAyC;AACzC,+CAA6C;AAC7C,0CAAwB;AACxB,+CAA6B;AAC7B,uCAAqB"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/Minecraft/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;AAAA,oBAAoB;AACpB,2CAAyC;AACzC,uCAAqC;AACrC,+CAA6C;AAC7C,0CAAwB;AACxB,+CAA6B;AAC7B,uCAAqB"}
@@ -23,8 +23,8 @@ var ModeCollection;
23
23
  function isValue(Collection, value) {
24
24
  const M = Collection.modes;
25
25
  for (var I = 0; I < M.length; I++) {
26
- const elemt = M[I];
27
- if (elemt.name === value)
26
+ const elem = M[I];
27
+ if (elem.name === value)
28
28
  return true;
29
29
  }
30
30
  return false;
@@ -40,9 +40,9 @@ var ModeCollection;
40
40
  if (typeof index === "string") {
41
41
  const M = Collection.modes;
42
42
  for (var I = 0; I < M.length; I++) {
43
- const elemt = M[I];
44
- if (elemt.name === index)
45
- return elemt;
43
+ const elem = M[I];
44
+ if (elem.name === index)
45
+ return elem;
46
46
  }
47
47
  }
48
48
  else {
@@ -1 +1 @@
1
- {"version":3,"file":"ModeCollection.js","sourceRoot":"","sources":["../../../src/Modes/ModeCollection.ts"],"names":[],"mappings":";;;AAkBA,MAAM;AACN,IAAiB,cAAc,CAmD9B;AAnDD,WAAiB,cAAc;IAC7B;;;OAGG;IACH,SAAgB,EAAE,CAAC,KAAU;QAC3B,IAAI,KAAK,EAAE;YACT,MAAM,IAAI,GAAG,KAAuB,CAAC;YAErC,IAAI,IAAI,CAAC,IAAI,IAAI,IAAI,CAAC,KAAK,IAAI,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,KAAK,CAAC;gBAAE,OAAO,IAAI,CAAC;SACxE;QAED,OAAO,KAAK,CAAC;IACf,CAAC;IARe,iBAAE,KAQjB,CAAA;IAED;;OAEG;IACH,SAAgB,OAAO,CAAC,UAA0B,EAAE,KAAa;QAC/D,MAAM,CAAC,GAAG,UAAU,CAAC,KAAK,CAAC;QAE3B,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,CAAC,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE;YACjC,MAAM,KAAK,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC;YAEnB,IAAI,KAAK,CAAC,IAAI,KAAK,KAAK;gBAAE,OAAO,IAAI,CAAC;SACvC;QAED,OAAO,KAAK,CAAC;IACf,CAAC;IAVe,sBAAO,UAUtB,CAAA;IAED;;;;;OAKG;IACH,SAAgB,GAAG,CAAC,UAA0B,EAAE,KAAsB;QACpE,IAAI,OAAO,KAAK,KAAK,QAAQ,EAAE;YAC7B,MAAM,CAAC,GAAG,UAAU,CAAC,KAAK,CAAC;YAE3B,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,CAAC,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE;gBACjC,MAAM,KAAK,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC;gBAEnB,IAAI,KAAK,CAAC,IAAI,KAAK,KAAK;oBAAE,OAAO,KAAK,CAAC;aACxC;SACF;aAAM;YACL,OAAO,UAAU,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;SAChC;QAED,OAAO,SAAS,CAAC;IACnB,CAAC;IAde,kBAAG,MAclB,CAAA;AACH,CAAC,EAnDgB,cAAc,GAAd,sBAAc,KAAd,sBAAc,QAmD9B;AAED,MAAM;AACN,IAAiB,IAAI,CAapB;AAbD,WAAiB,IAAI;IACnB;;;;OAIG;IACH,SAAgB,EAAE,CAAC,KAAU;QAC3B,IAAI,OAAO,KAAK,KAAK,QAAQ,IAAI,OAAO,KAAK,CAAC,IAAI,KAAK,QAAQ,IAAI,OAAO,KAAK,CAAC,aAAa,KAAK,QAAQ,EAAE;YAC1G,OAAO,IAAI,CAAC;SACb;QAED,OAAO,KAAK,CAAC;IACf,CAAC;IANe,OAAE,KAMjB,CAAA;AACH,CAAC,EAbgB,IAAI,GAAJ,YAAI,KAAJ,YAAI,QAapB"}
1
+ {"version":3,"file":"ModeCollection.js","sourceRoot":"","sources":["../../../src/Modes/ModeCollection.ts"],"names":[],"mappings":";;;AAkBA,MAAM;AACN,IAAiB,cAAc,CAmD9B;AAnDD,WAAiB,cAAc;IAC7B;;;OAGG;IACH,SAAgB,EAAE,CAAC,KAAU;QAC3B,IAAI,KAAK,EAAE;YACT,MAAM,IAAI,GAAG,KAAuB,CAAC;YAErC,IAAI,IAAI,CAAC,IAAI,IAAI,IAAI,CAAC,KAAK,IAAI,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,KAAK,CAAC;gBAAE,OAAO,IAAI,CAAC;SACxE;QAED,OAAO,KAAK,CAAC;IACf,CAAC;IARe,iBAAE,KAQjB,CAAA;IAED;;OAEG;IACH,SAAgB,OAAO,CAAC,UAA0B,EAAE,KAAa;QAC/D,MAAM,CAAC,GAAG,UAAU,CAAC,KAAK,CAAC;QAE3B,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,CAAC,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE;YACjC,MAAM,IAAI,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC;YAElB,IAAI,IAAI,CAAC,IAAI,KAAK,KAAK;gBAAE,OAAO,IAAI,CAAC;SACtC;QAED,OAAO,KAAK,CAAC;IACf,CAAC;IAVe,sBAAO,UAUtB,CAAA;IAED;;;;;OAKG;IACH,SAAgB,GAAG,CAAC,UAA0B,EAAE,KAAsB;QACpE,IAAI,OAAO,KAAK,KAAK,QAAQ,EAAE;YAC7B,MAAM,CAAC,GAAG,UAAU,CAAC,KAAK,CAAC;YAE3B,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,CAAC,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE;gBACjC,MAAM,IAAI,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC;gBAElB,IAAI,IAAI,CAAC,IAAI,KAAK,KAAK;oBAAE,OAAO,IAAI,CAAC;aACtC;SACF;aAAM;YACL,OAAO,UAAU,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;SAChC;QAED,OAAO,SAAS,CAAC;IACnB,CAAC;IAde,kBAAG,MAclB,CAAA;AACH,CAAC,EAnDgB,cAAc,GAAd,sBAAc,KAAd,sBAAc,QAmD9B;AAED,MAAM;AACN,IAAiB,IAAI,CAapB;AAbD,WAAiB,IAAI;IACnB;;;;OAIG;IACH,SAAgB,EAAE,CAAC,KAAU;QAC3B,IAAI,OAAO,KAAK,KAAK,QAAQ,IAAI,OAAO,KAAK,CAAC,IAAI,KAAK,QAAQ,IAAI,OAAO,KAAK,CAAC,aAAa,KAAK,QAAQ,EAAE;YAC1G,OAAO,IAAI,CAAC;SACb;QAED,OAAO,KAAK,CAAC;IACf,CAAC;IANe,OAAE,KAMjB,CAAA;AACH,CAAC,EAbgB,IAAI,GAAJ,YAAI,KAAJ,YAAI,QAapB"}
@@ -10,12 +10,12 @@ export interface OffsetWord {
10
10
  */
11
11
  export declare namespace OffsetWord {
12
12
  /**
13
- *
14
- * @param text
15
- * @param number
16
- * @returns
13
+ * Creates a new OffsetWord
14
+ * @param text The text to use
15
+ * @param number The offset to use
16
+ * @returns A new OffsetWord
17
17
  */
18
- function create(text: string, number?: number): OffsetWord;
18
+ function create(text: string, offset?: number): OffsetWord;
19
19
  /**
20
20
  *
21
21
  * @param value
@@ -7,13 +7,14 @@ exports.OffsetWord = void 0;
7
7
  var OffsetWord;
8
8
  (function (OffsetWord) {
9
9
  /**
10
- *
11
- * @param text
12
- * @param number
13
- * @returns
10
+ * Creates a new OffsetWord
11
+ * @param text The text to use
12
+ * @param number The offset to use
13
+ * @returns A new OffsetWord
14
14
  */
15
- function create(text, number = 0) {
16
- return { text: text, offset: number };
15
+ function create(text, offset) {
16
+ offset = offset || 0;
17
+ return { text, offset };
17
18
  }
18
19
  OffsetWord.create = create;
19
20
  /**
@@ -1 +1 @@
1
- {"version":3,"file":"OffsetWord.js","sourceRoot":"","sources":["../../../src/Types/OffsetWord.ts"],"names":[],"mappings":";;;AAQA;;GAEG;AACH,IAAiB,UAAU,CAqB1B;AArBD,WAAiB,UAAU;IACzB;;;;;OAKG;IACH,SAAgB,MAAM,CAAC,IAAY,EAAE,SAAiB,CAAC;QACrD,OAAO,EAAE,IAAI,EAAE,IAAI,EAAE,MAAM,EAAE,MAAM,EAAE,CAAC;IACxC,CAAC;IAFe,iBAAM,SAErB,CAAA;IAED;;;;OAIG;IACH,SAAgB,EAAE,CAAC,KAAU;QAC3B,IAAI,OAAO,KAAK,KAAK,QAAQ,IAAI,OAAO,KAAK,CAAC,IAAI,KAAK,QAAQ,IAAI,OAAO,KAAK,CAAC,MAAM,KAAK,QAAQ;YAAE,OAAO,IAAI,CAAC;QAEjH,OAAO,KAAK,CAAC;IACf,CAAC;IAJe,aAAE,KAIjB,CAAA;AACH,CAAC,EArBgB,UAAU,GAAV,kBAAU,KAAV,kBAAU,QAqB1B"}
1
+ {"version":3,"file":"OffsetWord.js","sourceRoot":"","sources":["../../../src/Types/OffsetWord.ts"],"names":[],"mappings":";;;AAQA;;GAEG;AACH,IAAiB,UAAU,CAsB1B;AAtBD,WAAiB,UAAU;IACzB;;;;;OAKG;IACH,SAAgB,MAAM,CAAC,IAAY,EAAE,MAAe;QAClD,MAAM,GAAG,MAAM,IAAI,CAAC,CAAC;QACrB,OAAO,EAAE,IAAI,EAAE,MAAM,EAAE,CAAC;IAC1B,CAAC;IAHe,iBAAM,SAGrB,CAAA;IAED;;;;OAIG;IACH,SAAgB,EAAE,CAAC,KAAU;QAC3B,IAAI,OAAO,KAAK,KAAK,QAAQ,IAAI,OAAO,KAAK,CAAC,IAAI,KAAK,QAAQ,IAAI,OAAO,KAAK,CAAC,MAAM,KAAK,QAAQ;YAAE,OAAO,IAAI,CAAC;QAEjH,OAAO,KAAK,CAAC;IACf,CAAC;IAJe,aAAE,KAIjB,CAAA;AACH,CAAC,EAtBgB,UAAU,GAAV,kBAAU,KAAV,kBAAU,QAsB1B"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "bc-minecraft-bedrock-types",
3
- "version": "1.3.13",
3
+ "version": "1.4.0",
4
4
  "description": "The typescript library that provides default types for minecraft bedrock",
5
5
  "main": "./lib/src/main.js",
6
6
  "types": "./lib/src/main.d.ts",
@@ -8,14 +8,14 @@
8
8
  "compile": "tsc -b",
9
9
  "build": "npm run clean && npm run compile",
10
10
  "format": "prettier --write \"src/**/*.ts\" \"src/**/*.js\"",
11
- "test": "mocha --debug-brk",
12
- "clean": "rimraf lib",
11
+ "test": "mocha -r ts-node/register 'test/**/*.ts'",
12
+ "clean": "tsc -b --clean",
13
13
  "pretest": "npm run compile",
14
14
  "prepublishOnly": "npm test && npm run compile",
15
15
  "preversion": "",
16
16
  "postversion": "git push && git push --tags",
17
17
  "version": "git add -A src",
18
- "watch": "tsc -w -p ./src"
18
+ "watch": "tsc -w"
19
19
  },
20
20
  "files": [
21
21
  "lib/src/**/*.js",
@@ -1,34 +0,0 @@
1
- import { OffsetWord } from "../../Types/OffsetWord";
2
- import { SelectorValueAttribute } from "./ValueAttribute";
3
- export declare class SelectorItemAttribute {
4
- /** */
5
- offset: number;
6
- /** */
7
- name: "hasitem";
8
- /** */
9
- values: SelectorValueAttribute[];
10
- /**TODO add documentation
11
- * @param name
12
- * @param value
13
- * @param offset
14
- */
15
- constructor(values: SelectorValueAttribute[], offset?: number);
16
- getName(): OffsetWord;
17
- /**
18
- *
19
- * @returns
20
- */
21
- getValueOffset(): number;
22
- isCursorHere(cursor: number): boolean;
23
- toString(): string;
24
- }
25
- export declare namespace SelectorItemAttribute {
26
- /**
27
- *
28
- * @param text
29
- * @param offset
30
- * @returns
31
- */
32
- function parse(text: string, offset?: number): SelectorItemAttribute;
33
- function is(value: any): value is SelectorItemAttribute;
34
- }
@@ -1,76 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.SelectorItemAttribute = void 0;
4
- const ValueAttribute_1 = require("./ValueAttribute");
5
- class SelectorItemAttribute {
6
- /**TODO add documentation
7
- * @param name
8
- * @param value
9
- * @param offset
10
- */
11
- constructor(values, offset = 0) {
12
- this.name = "hasitem";
13
- this.offset = offset;
14
- this.values = values;
15
- }
16
- getName() {
17
- return { text: this.name, offset: this.offset };
18
- }
19
- /**
20
- *
21
- * @returns
22
- */
23
- getValueOffset() {
24
- return this.offset + this.offset + 1;
25
- }
26
- isCursorHere(cursor) {
27
- if (cursor >= this.offset && cursor <= this.offset + this.name.length + 1)
28
- return true;
29
- for (let i = 0; i < this.values.length; i++) {
30
- if (this.values[i].isCursorHere(cursor))
31
- return true;
32
- }
33
- return false;
34
- }
35
- toString() {
36
- return `${this.name}=${this.values.map((v) => v.toString()).join(",")}`;
37
- }
38
- }
39
- exports.SelectorItemAttribute = SelectorItemAttribute;
40
- (function (SelectorItemAttribute) {
41
- /**
42
- *
43
- * @param text
44
- * @param offset
45
- * @returns
46
- */
47
- function parse(text, offset = 0) {
48
- const index = text.indexOf("=");
49
- const valuetext = text.substring(index + 1, text.length);
50
- let matches = valuetext.match(/([a-z]+=[^\,\}\]]+)/gim);
51
- let values = [];
52
- if (matches) {
53
- for (let i = 0; i < matches.length; i++) {
54
- const m = matches[i];
55
- const item = ValueAttribute_1.SelectorValueAttribute.parse(m, text.indexOf(m) + offset);
56
- values.push(item);
57
- }
58
- }
59
- return new SelectorItemAttribute(values, offset);
60
- }
61
- SelectorItemAttribute.parse = parse;
62
- function is(value) {
63
- if (typeof value === "object") {
64
- if (typeof value.offset !== "number")
65
- return false;
66
- if (value.name !== "hasitem")
67
- return false;
68
- if (!Array.isArray(value.values))
69
- return false;
70
- return true;
71
- }
72
- return false;
73
- }
74
- SelectorItemAttribute.is = is;
75
- })(SelectorItemAttribute = exports.SelectorItemAttribute || (exports.SelectorItemAttribute = {}));
76
- //# sourceMappingURL=ItemAttribute.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"ItemAttribute.js","sourceRoot":"","sources":["../../../../src/Minecraft/Selector/ItemAttribute.ts"],"names":[],"mappings":"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"}
@@ -1,32 +0,0 @@
1
- import { OffsetWord } from "../../Types";
2
- import { SelectorValueAttribute } from "./ValueAttribute";
3
- export declare class SelectorScoreAttribute {
4
- /** */
5
- offset: number;
6
- /** */
7
- name: "scores";
8
- /** */
9
- values: SelectorValueAttribute[];
10
- /**TODO add documentation
11
- * @param value
12
- * @param offset
13
- */
14
- constructor(value: SelectorValueAttribute[], offset?: number);
15
- /**
16
- *
17
- * @returns
18
- */
19
- getName(): OffsetWord;
20
- /**
21
- *
22
- * @returns
23
- */
24
- getValueOffset(): number;
25
- isCursorHere(cursor: number): boolean;
26
- toString(): string;
27
- }
28
- export declare namespace SelectorScoreAttribute {
29
- /** */
30
- function parse(text: string, offset?: number): SelectorScoreAttribute;
31
- function is(value: any): value is SelectorScoreAttribute;
32
- }