@gamepark/rules-api 6.0.2-alpha.0 → 6.0.4-alpha.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 (71) hide show
  1. package/dist/Rules.d.ts +1 -1
  2. package/dist/UnpredictableMove.d.ts +2 -1
  3. package/dist/UnpredictableMove.js +3 -2
  4. package/dist/UnpredictableMove.js.map +1 -1
  5. package/dist/material/HiddenMaterialRules.d.ts +15 -13
  6. package/dist/material/HiddenMaterialRules.js +60 -50
  7. package/dist/material/HiddenMaterialRules.js.map +1 -1
  8. package/dist/material/MaterialRules.d.ts +12 -11
  9. package/dist/material/MaterialRules.js +15 -19
  10. package/dist/material/MaterialRules.js.map +1 -1
  11. package/dist/material/SecretMaterialRules.d.ts +5 -5
  12. package/dist/material/SecretMaterialRules.js +1 -17
  13. package/dist/material/SecretMaterialRules.js.map +1 -1
  14. package/dist/material/items/Material.d.ts +3 -4
  15. package/dist/material/items/Material.js +13 -13
  16. package/dist/material/items/Material.js.map +1 -1
  17. package/dist/material/items/MaterialMutator.js +9 -5
  18. package/dist/material/items/MaterialMutator.js.map +1 -1
  19. package/dist/material/moves/CustomMove.d.ts +2 -0
  20. package/dist/material/moves/CustomMove.js +6 -0
  21. package/dist/material/moves/CustomMove.js.map +1 -1
  22. package/dist/material/moves/MaterialMove.d.ts +6 -11
  23. package/dist/material/moves/MoveItem.d.ts +3 -0
  24. package/dist/material/moves/MoveItem.js +5 -1
  25. package/dist/material/moves/MoveItem.js.map +1 -1
  26. package/dist/material/moves/MoveKind.d.ts +1 -1
  27. package/dist/material/moves/MoveKind.js +1 -1
  28. package/dist/material/moves/MoveKind.js.map +1 -1
  29. package/dist/material/moves/index.d.ts +1 -6
  30. package/dist/material/moves/index.js +1 -6
  31. package/dist/material/moves/index.js.map +1 -1
  32. package/dist/material/moves/items/CreateItem.d.ts +9 -0
  33. package/dist/material/moves/items/CreateItem.js +10 -0
  34. package/dist/material/moves/items/CreateItem.js.map +1 -0
  35. package/dist/material/moves/items/DeleteItem.d.ts +9 -0
  36. package/dist/material/moves/items/DeleteItem.js +10 -0
  37. package/dist/material/moves/items/DeleteItem.js.map +1 -0
  38. package/dist/material/moves/items/ItemMove.d.ts +11 -0
  39. package/dist/material/moves/{MaterialRulesMove.js → items/ItemMove.js} +1 -1
  40. package/dist/material/moves/items/ItemMove.js.map +1 -0
  41. package/dist/material/moves/items/ItemMoveType.d.ts +6 -0
  42. package/dist/material/moves/items/ItemMoveType.js +11 -0
  43. package/dist/material/moves/items/ItemMoveType.js.map +1 -0
  44. package/dist/material/moves/items/ItemMovesBuilder.d.ts +8 -0
  45. package/dist/material/moves/items/ItemMovesBuilder.js +34 -0
  46. package/dist/material/moves/items/ItemMovesBuilder.js.map +1 -0
  47. package/dist/material/moves/items/MoveItem.d.ts +16 -0
  48. package/dist/material/moves/items/MoveItem.js +14 -0
  49. package/dist/material/moves/items/MoveItem.js.map +1 -0
  50. package/dist/material/moves/items/Shuffle.d.ts +11 -0
  51. package/dist/material/moves/items/Shuffle.js +10 -0
  52. package/dist/material/moves/items/Shuffle.js.map +1 -0
  53. package/dist/material/moves/items/index.d.ts +7 -0
  54. package/dist/material/moves/items/index.js +24 -0
  55. package/dist/material/moves/items/index.js.map +1 -0
  56. package/dist/material/moves/rules/EndGame.d.ts +2 -0
  57. package/dist/material/moves/rules/EndGame.js +7 -0
  58. package/dist/material/moves/rules/EndGame.js.map +1 -1
  59. package/dist/material/moves/rules/StartPlayerTurn.d.ts +2 -0
  60. package/dist/material/moves/rules/StartPlayerTurn.js +7 -0
  61. package/dist/material/moves/rules/StartPlayerTurn.js.map +1 -1
  62. package/dist/material/moves/rules/StartRule.d.ts +2 -0
  63. package/dist/material/moves/rules/StartRule.js +7 -0
  64. package/dist/material/moves/rules/StartRule.js.map +1 -1
  65. package/dist/material/rules/MaterialStepRules.d.ts +10 -9
  66. package/dist/material/rules/MaterialStepRules.js +6 -9
  67. package/dist/material/rules/MaterialStepRules.js.map +1 -1
  68. package/dist/material/rules/PlayerTurnRule.d.ts +4 -4
  69. package/package.json +2 -2
  70. package/dist/material/moves/MaterialRulesMove.d.ts +0 -6
  71. package/dist/material/moves/MaterialRulesMove.js.map +0 -1
@@ -1 +1 @@
1
- {"version":3,"file":"Material.js","sourceRoot":"","sources":["../../../src/material/items/Material.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"Material.js","sourceRoot":"","sources":["../../../src/material/items/Material.ts"],"names":[],"mappings":"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"}
@@ -29,6 +29,7 @@ exports.MaterialMutator = void 0;
29
29
  var index_1 = require("./index");
30
30
  var fast_deep_equal_1 = __importDefault(require("fast-deep-equal"));
31
31
  var moves_1 = require("../moves");
32
+ var merge_1 = __importDefault(require("lodash/merge"));
32
33
  var MaterialMutator = /** @class */ (function () {
33
34
  function MaterialMutator(type, items, locationsStrategies) {
34
35
  if (locationsStrategies === void 0) { locationsStrategies = {}; }
@@ -38,16 +39,16 @@ var MaterialMutator = /** @class */ (function () {
38
39
  }
39
40
  MaterialMutator.prototype.applyMove = function (move) {
40
41
  switch (move.type) {
41
- case moves_1.MaterialMoveType.Create:
42
+ case moves_1.ItemMoveType.Create:
42
43
  this.create(move);
43
44
  break;
44
- case moves_1.MaterialMoveType.Move:
45
+ case moves_1.ItemMoveType.Move:
45
46
  this.move(move);
46
47
  break;
47
- case moves_1.MaterialMoveType.Delete:
48
+ case moves_1.ItemMoveType.Delete:
48
49
  this.delete(move);
49
50
  break;
50
- case moves_1.MaterialMoveType.Shuffle:
51
+ case moves_1.ItemMoveType.Shuffle:
51
52
  this.shuffle(move);
52
53
  break;
53
54
  }
@@ -129,7 +130,10 @@ var MaterialMutator = /** @class */ (function () {
129
130
  };
130
131
  MaterialMutator.prototype.getItemAfterMove = function (move) {
131
132
  var _a = this.items[move.itemIndex], quantity = _a.quantity, rotation = _a.rotation, itemData = __rest(_a, ["quantity", "rotation"]);
132
- var item = __assign(__assign(__assign({}, itemData), move.position), move.reveal);
133
+ var item = __assign(__assign({}, itemData), move.position);
134
+ if (typeof move.reveal === 'object') {
135
+ (0, merge_1.default)(item, move.reveal);
136
+ }
133
137
  if (move.quantity)
134
138
  item.quantity = move.quantity;
135
139
  return item;
@@ -1 +1 @@
1
- {"version":3,"file":"MaterialMutator.js","sourceRoot":"","sources":["../../../src/material/items/MaterialMutator.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"MaterialMutator.js","sourceRoot":"","sources":["../../../src/material/items/MaterialMutator.ts"],"names":[],"mappings":"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"}
@@ -1,6 +1,8 @@
1
1
  import { MoveKind } from './MoveKind';
2
+ import { MaterialMove } from './MaterialMove';
2
3
  export declare type CustomMove<Type extends number = number> = {
3
4
  kind: typeof MoveKind.CustomMove;
4
5
  type: Type;
5
6
  data?: any;
6
7
  };
8
+ export declare function isCustomMove<T extends number = number, P extends number = number, M extends number = number, L extends number = number>(move: MaterialMove<P, M, L>, type?: number): move is CustomMove<T>;
@@ -1,3 +1,9 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.isCustomMove = void 0;
4
+ var MoveKind_1 = require("./MoveKind");
5
+ function isCustomMove(move, type) {
6
+ return move.kind === MoveKind_1.MoveKind.CustomMove && (type === undefined || move.type === type);
7
+ }
8
+ exports.isCustomMove = isCustomMove;
3
9
  //# sourceMappingURL=CustomMove.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"CustomMove.js","sourceRoot":"","sources":["../../../src/material/moves/CustomMove.ts"],"names":[],"mappings":""}
1
+ {"version":3,"file":"CustomMove.js","sourceRoot":"","sources":["../../../src/material/moves/CustomMove.ts"],"names":[],"mappings":";;;AAAA,uCAAqC;AASrC,SAAgB,YAAY,CAC1B,IAA2B,EAAE,IAAa;IAE1C,OAAO,IAAI,CAAC,IAAI,KAAK,mBAAQ,CAAC,UAAU,IAAI,CAAC,IAAI,KAAK,SAAS,IAAI,IAAI,CAAC,IAAI,KAAK,IAAI,CAAC,CAAA;AACxF,CAAC;AAJD,oCAIC"}
@@ -1,11 +1,6 @@
1
- import { MoveKind } from './MoveKind';
2
- import { MoveItem } from './MoveItem';
3
- import { Shuffle, ShuffleRandomized } from './Shuffle';
4
- import { CreateItem } from './CreateItem';
5
- import { DeleteItem } from './DeleteItem';
6
- export declare type MaterialMove<Player extends number = number, MaterialType extends number = number, LocationType extends number = number> = CreateItem<Player, MaterialType, LocationType> | DeleteItem<MaterialType> | MoveItem<Player, MaterialType, LocationType> | Shuffle<MaterialType>;
7
- export declare type MaterialMoveCommon<MaterialType extends number = number> = {
8
- kind: typeof MoveKind.MaterialMove;
9
- itemType: MaterialType;
10
- };
11
- export declare type MaterialMoveRandomized<Player extends number = number, MaterialType extends number = number, LocationType extends number = number> = Exclude<MaterialMove<Player, MaterialType, LocationType>, Shuffle<MaterialType>> | ShuffleRandomized<MaterialType>;
1
+ import { RuleMove } from './rules';
2
+ import { CustomMove } from './CustomMove';
3
+ import { ItemMove, MaterialMoveRandomized } from './items';
4
+ import { LocalMove } from './local';
5
+ export declare type MaterialMove<Player extends number = number, MaterialType extends number = number, LocationType extends number = number> = ItemMove<Player, MaterialType, LocationType> | RuleMove<Player> | CustomMove | LocalMove<Player, MaterialType, LocationType>;
6
+ export declare type MaterialRulesMoveRandomized<Player extends number = number, MaterialType extends number = number, LocationType extends number = number> = MaterialMoveRandomized<Player, MaterialType, LocationType> | RuleMove<Player> | CustomMove | LocalMove<Player, MaterialType, LocationType>;
@@ -14,3 +14,6 @@ export declare type MoveItemLocation<P extends number, M extends number, L exten
14
14
  };
15
15
  export declare function isMoveItem<P extends number, M extends number, L extends number>(move: MaterialRulesMove<P, M, L>): move is MoveItem<P, M, L>;
16
16
  export declare function isMoveItemLocation<P extends number, M extends number, L extends number>(move: MaterialRulesMove<P, M, L>): move is MoveItemLocation<P, M, L>;
17
+ export declare function isMoveItemType<P extends number, M extends number, L extends number>(move: MaterialRulesMove<P, M, L>, type: M): move is MoveItem<P, M, L> & {
18
+ itemType: M;
19
+ };
@@ -1,6 +1,6 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.isMoveItemLocation = exports.isMoveItem = void 0;
3
+ exports.isMoveItemType = exports.isMoveItemLocation = exports.isMoveItem = void 0;
4
4
  var MaterialMoveType_1 = require("./MaterialMoveType");
5
5
  var MoveKind_1 = require("./MoveKind");
6
6
  function isMoveItem(move) {
@@ -11,4 +11,8 @@ function isMoveItemLocation(move) {
11
11
  return isMoveItem(move) && move.position.location !== undefined;
12
12
  }
13
13
  exports.isMoveItemLocation = isMoveItemLocation;
14
+ function isMoveItemType(move, type) {
15
+ return isMoveItem(move) && move.itemType === type;
16
+ }
17
+ exports.isMoveItemType = isMoveItemType;
14
18
  //# sourceMappingURL=MoveItem.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"MoveItem.js","sourceRoot":"","sources":["../../../src/material/moves/MoveItem.ts"],"names":[],"mappings":";;;AAAA,uDAAqD;AAErD,uCAAqC;AAiBrC,SAAgB,UAAU,CAAuD,IAAgC;IAC/G,OAAO,IAAI,CAAC,IAAI,KAAK,mBAAQ,CAAC,YAAY,IAAI,IAAI,CAAC,IAAI,KAAK,mCAAgB,CAAC,IAAI,CAAA;AACnF,CAAC;AAFD,gCAEC;AAED,SAAgB,kBAAkB,CAAuD,IAAgC;IACvH,OAAO,UAAU,CAAC,IAAI,CAAC,IAAI,IAAI,CAAC,QAAQ,CAAC,QAAQ,KAAK,SAAS,CAAA;AACjE,CAAC;AAFD,gDAEC"}
1
+ {"version":3,"file":"MoveItem.js","sourceRoot":"","sources":["../../../src/material/moves/MoveItem.ts"],"names":[],"mappings":";;;AAAA,uDAAqD;AAErD,uCAAqC;AAiBrC,SAAgB,UAAU,CAAuD,IAAgC;IAC/G,OAAO,IAAI,CAAC,IAAI,KAAK,mBAAQ,CAAC,YAAY,IAAI,IAAI,CAAC,IAAI,KAAK,mCAAgB,CAAC,IAAI,CAAA;AACnF,CAAC;AAFD,gCAEC;AAED,SAAgB,kBAAkB,CAAuD,IAAgC;IACvH,OAAO,UAAU,CAAC,IAAI,CAAC,IAAI,IAAI,CAAC,QAAQ,CAAC,QAAQ,KAAK,SAAS,CAAA;AACjE,CAAC;AAFD,gDAEC;AAED,SAAgB,cAAc,CAC5B,IAAgC,EAAE,IAAO;IAEzC,OAAO,UAAU,CAAC,IAAI,CAAC,IAAI,IAAI,CAAC,QAAQ,KAAK,IAAI,CAAA;AACnD,CAAC;AAJD,wCAIC"}
@@ -1,5 +1,5 @@
1
1
  export declare enum MoveKind {
2
- MaterialMove = 1,
2
+ ItemMove = 1,
3
3
  RulesMove = 2,
4
4
  CustomMove = 3,
5
5
  LocalMove = 4
@@ -3,7 +3,7 @@ Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.MoveKind = void 0;
4
4
  var MoveKind;
5
5
  (function (MoveKind) {
6
- MoveKind[MoveKind["MaterialMove"] = 1] = "MaterialMove";
6
+ MoveKind[MoveKind["ItemMove"] = 1] = "ItemMove";
7
7
  MoveKind[MoveKind["RulesMove"] = 2] = "RulesMove";
8
8
  MoveKind[MoveKind["CustomMove"] = 3] = "CustomMove";
9
9
  MoveKind[MoveKind["LocalMove"] = 4] = "LocalMove";
@@ -1 +1 @@
1
- {"version":3,"file":"MoveKind.js","sourceRoot":"","sources":["../../../src/material/moves/MoveKind.ts"],"names":[],"mappings":";;;AAAA,IAAY,QAEX;AAFD,WAAY,QAAQ;IAClB,uDAAgB,CAAA;IAAE,iDAAa,CAAA;IAAE,mDAAc,CAAA;IAAE,iDAAa,CAAA;AAChE,CAAC,EAFW,QAAQ,GAAR,gBAAQ,KAAR,gBAAQ,QAEnB"}
1
+ {"version":3,"file":"MoveKind.js","sourceRoot":"","sources":["../../../src/material/moves/MoveKind.ts"],"names":[],"mappings":";;;AAAA,IAAY,QAEX;AAFD,WAAY,QAAQ;IAClB,+CAAY,CAAA;IAAE,iDAAa,CAAA;IAAE,mDAAc,CAAA;IAAE,iDAAa,CAAA;AAC5D,CAAC,EAFW,QAAQ,GAAR,gBAAQ,KAAR,gBAAQ,QAEnB"}
@@ -1,11 +1,6 @@
1
+ export * from './items';
1
2
  export * from './local';
2
3
  export * from './rules';
3
- export * from './CreateItem';
4
4
  export * from './CustomMove';
5
5
  export * from './MaterialMove';
6
- export * from './MaterialMoveType';
7
- export * from './MaterialMovesBuilder';
8
- export * from './MaterialRulesMove';
9
- export * from './MoveItem';
10
6
  export * from './MoveKind';
11
- export * from './Shuffle';
@@ -14,15 +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
+ __exportStar(require("./items"), exports);
17
18
  __exportStar(require("./local"), exports);
18
19
  __exportStar(require("./rules"), exports);
19
- __exportStar(require("./CreateItem"), exports);
20
20
  __exportStar(require("./CustomMove"), exports);
21
21
  __exportStar(require("./MaterialMove"), exports);
22
- __exportStar(require("./MaterialMoveType"), exports);
23
- __exportStar(require("./MaterialMovesBuilder"), exports);
24
- __exportStar(require("./MaterialRulesMove"), exports);
25
- __exportStar(require("./MoveItem"), exports);
26
22
  __exportStar(require("./MoveKind"), exports);
27
- __exportStar(require("./Shuffle"), exports);
28
23
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/material/moves/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,0CAAuB;AACvB,0CAAuB;AACvB,+CAA4B;AAC5B,+CAA4B;AAC5B,iDAA8B;AAC9B,qDAAkC;AAClC,yDAAsC;AACtC,sDAAmC;AACnC,6CAA0B;AAC1B,6CAA0B;AAC1B,4CAAyB"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/material/moves/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,0CAAuB;AACvB,0CAAuB;AACvB,0CAAuB;AACvB,+CAA4B;AAC5B,iDAA8B;AAC9B,6CAA0B"}
@@ -0,0 +1,9 @@
1
+ import { MaterialItem } from '../../items';
2
+ import { ItemMoveType } from './ItemMoveType';
3
+ import { MaterialMoveCommon } from './ItemMove';
4
+ import { MaterialMove } from '../MaterialMove';
5
+ export declare type CreateItem<P extends number = number, M extends number = number, L extends number = number> = MaterialMoveCommon<M> & {
6
+ type: typeof ItemMoveType.Create;
7
+ item: MaterialItem<P, L>;
8
+ };
9
+ export declare function isCreateItem<P extends number, M extends number, L extends number>(move: MaterialMove<P, M, L>, itemType?: M): move is CreateItem<P, M, L>;
@@ -0,0 +1,10 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.isCreateItem = void 0;
4
+ var ItemMoveType_1 = require("./ItemMoveType");
5
+ var MoveKind_1 = require("../MoveKind");
6
+ function isCreateItem(move, itemType) {
7
+ return move.kind === MoveKind_1.MoveKind.ItemMove && move.type === ItemMoveType_1.ItemMoveType.Create && (itemType === undefined || move.itemType === itemType);
8
+ }
9
+ exports.isCreateItem = isCreateItem;
10
+ //# sourceMappingURL=CreateItem.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"CreateItem.js","sourceRoot":"","sources":["../../../../src/material/moves/items/CreateItem.ts"],"names":[],"mappings":";;;AACA,+CAA6C;AAG7C,wCAAsC;AAOtC,SAAgB,YAAY,CAC1B,IAA2B,EAAE,QAAY;IAEzC,OAAO,IAAI,CAAC,IAAI,KAAK,mBAAQ,CAAC,QAAQ,IAAI,IAAI,CAAC,IAAI,KAAK,2BAAY,CAAC,MAAM,IAAI,CAAC,QAAQ,KAAK,SAAS,IAAI,IAAI,CAAC,QAAQ,KAAK,QAAQ,CAAC,CAAA;AACvI,CAAC;AAJD,oCAIC"}
@@ -0,0 +1,9 @@
1
+ import { ItemMoveType } from './ItemMoveType';
2
+ import { MaterialMoveCommon } from './ItemMove';
3
+ import { MaterialMove } from '../MaterialMove';
4
+ export declare type DeleteItem<MaterialType extends number = number> = MaterialMoveCommon<MaterialType> & {
5
+ type: typeof ItemMoveType.Delete;
6
+ itemIndex: number;
7
+ quantity?: number;
8
+ };
9
+ export declare function isDeleteItem<P extends number, M extends number, L extends number>(move: MaterialMove<P, M, L>, itemType?: M): move is DeleteItem<M>;
@@ -0,0 +1,10 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.isDeleteItem = void 0;
4
+ var ItemMoveType_1 = require("./ItemMoveType");
5
+ var MoveKind_1 = require("../MoveKind");
6
+ function isDeleteItem(move, itemType) {
7
+ return move.kind === MoveKind_1.MoveKind.ItemMove && move.type === ItemMoveType_1.ItemMoveType.Delete && (itemType === undefined || move.itemType === itemType);
8
+ }
9
+ exports.isDeleteItem = isDeleteItem;
10
+ //# sourceMappingURL=DeleteItem.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"DeleteItem.js","sourceRoot":"","sources":["../../../../src/material/moves/items/DeleteItem.ts"],"names":[],"mappings":";;;AAAA,+CAA6C;AAG7C,wCAAsC;AAQtC,SAAgB,YAAY,CAC1B,IAA2B,EAAE,QAAY;IAEzC,OAAO,IAAI,CAAC,IAAI,KAAK,mBAAQ,CAAC,QAAQ,IAAI,IAAI,CAAC,IAAI,KAAK,2BAAY,CAAC,MAAM,IAAI,CAAC,QAAQ,KAAK,SAAS,IAAI,IAAI,CAAC,QAAQ,KAAK,QAAQ,CAAC,CAAA;AACvI,CAAC;AAJD,oCAIC"}
@@ -0,0 +1,11 @@
1
+ import { MoveKind } from '../MoveKind';
2
+ import { MoveItem } from './MoveItem';
3
+ import { Shuffle, ShuffleRandomized } from './Shuffle';
4
+ import { CreateItem } from './CreateItem';
5
+ import { DeleteItem } from './DeleteItem';
6
+ export declare type ItemMove<Player extends number = number, MaterialType extends number = number, LocationType extends number = number> = CreateItem<Player, MaterialType, LocationType> | DeleteItem<MaterialType> | MoveItem<Player, MaterialType, LocationType> | Shuffle<MaterialType>;
7
+ export declare type MaterialMoveCommon<MaterialType extends number = number> = {
8
+ kind: typeof MoveKind.ItemMove;
9
+ itemType: MaterialType;
10
+ };
11
+ export declare type MaterialMoveRandomized<Player extends number = number, MaterialType extends number = number, LocationType extends number = number> = Exclude<ItemMove<Player, MaterialType, LocationType>, Shuffle<MaterialType>> | ShuffleRandomized<MaterialType>;
@@ -1,3 +1,3 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
- //# sourceMappingURL=MaterialRulesMove.js.map
3
+ //# sourceMappingURL=ItemMove.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ItemMove.js","sourceRoot":"","sources":["../../../../src/material/moves/items/ItemMove.ts"],"names":[],"mappings":""}
@@ -0,0 +1,6 @@
1
+ export declare enum ItemMoveType {
2
+ Create = 0,
3
+ Move = 1,
4
+ Shuffle = 2,
5
+ Delete = 3
6
+ }
@@ -0,0 +1,11 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.ItemMoveType = void 0;
4
+ var ItemMoveType;
5
+ (function (ItemMoveType) {
6
+ ItemMoveType[ItemMoveType["Create"] = 0] = "Create";
7
+ ItemMoveType[ItemMoveType["Move"] = 1] = "Move";
8
+ ItemMoveType[ItemMoveType["Shuffle"] = 2] = "Shuffle";
9
+ ItemMoveType[ItemMoveType["Delete"] = 3] = "Delete";
10
+ })(ItemMoveType = exports.ItemMoveType || (exports.ItemMoveType = {}));
11
+ //# sourceMappingURL=ItemMoveType.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ItemMoveType.js","sourceRoot":"","sources":["../../../../src/material/moves/items/ItemMoveType.ts"],"names":[],"mappings":";;;AAAA,IAAY,YAEX;AAFD,WAAY,YAAY;IACtB,mDAAM,CAAA;IAAE,+CAAI,CAAA;IAAE,qDAAO,CAAA;IAAE,mDAAM,CAAA;AAC/B,CAAC,EAFW,YAAY,GAAZ,oBAAY,KAAZ,oBAAY,QAEvB"}
@@ -0,0 +1,8 @@
1
+ import { MaterialMove } from '../MaterialMove';
2
+ import { MaterialItem } from '../../items';
3
+ export declare class ItemMovesBuilder<Player extends number = number, MaterialType extends number = number, LocationType extends number = number> {
4
+ items: Partial<Record<MaterialType, MaterialItem<Player, LocationType>[]>>;
5
+ moves: MaterialMove<Player, MaterialType, LocationType>[];
6
+ constructor(items: Partial<Record<MaterialType, MaterialItem<Player, LocationType>[]>>);
7
+ shuffle(itemsType: MaterialType, predicate?: (item: MaterialItem<Player, LocationType>) => boolean): this;
8
+ }
@@ -0,0 +1,34 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.ItemMovesBuilder = void 0;
4
+ var MoveKind_1 = require("../MoveKind");
5
+ var ItemMoveType_1 = require("./ItemMoveType");
6
+ var ItemMovesBuilder = /** @class */ (function () {
7
+ function ItemMovesBuilder(items) {
8
+ this.moves = [];
9
+ this.items = items;
10
+ }
11
+ ItemMovesBuilder.prototype.shuffle = function (itemsType, predicate) {
12
+ if (predicate === void 0) { predicate = function () {
13
+ return true;
14
+ }; }
15
+ var items = this.items[itemsType];
16
+ if (!items)
17
+ throw new Error('You cannot shuffle a type of items that does not exists');
18
+ var move = {
19
+ kind: MoveKind_1.MoveKind.ItemMove,
20
+ itemType: itemsType,
21
+ type: ItemMoveType_1.ItemMoveType.Shuffle,
22
+ indexes: []
23
+ };
24
+ for (var index = 0; index < items.length; index++) {
25
+ if (predicate(items[index]))
26
+ move.indexes.push(index);
27
+ }
28
+ this.moves.push(move);
29
+ return this;
30
+ };
31
+ return ItemMovesBuilder;
32
+ }());
33
+ exports.ItemMovesBuilder = ItemMovesBuilder;
34
+ //# sourceMappingURL=ItemMovesBuilder.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ItemMovesBuilder.js","sourceRoot":"","sources":["../../../../src/material/moves/items/ItemMovesBuilder.ts"],"names":[],"mappings":";;;AAEA,wCAAsC;AAGtC,+CAA6C;AAE7C;IAIE,0BACE,KAA0E;QAH5E,UAAK,GAAuD,EAAE,CAAA;QAK5D,IAAI,CAAC,KAAK,GAAG,KAAK,CAAA;IACpB,CAAC;IAED,kCAAO,GAAP,UACE,SAAuB,EACvB,SACM;QADN,0BAAA,EAAA;YACE,OAAA,IAAI;QAAJ,CAAI;QAEN,IAAM,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC,SAAS,CAAC,CAAA;QACnC,IAAI,CAAC,KAAK;YACR,MAAM,IAAI,KAAK,CACb,yDAAyD,CAC1D,CAAA;QACH,IAAM,IAAI,GAA2D;YACnE,IAAI,EAAE,mBAAQ,CAAC,QAAQ;YACvB,QAAQ,EAAE,SAAS;YACnB,IAAI,EAAE,2BAAY,CAAC,OAAO;YAC1B,OAAO,EAAE,EAAE;SACZ,CAAA;QACD,KAAK,IAAI,KAAK,GAAG,CAAC,EAAE,KAAK,GAAG,KAAK,CAAC,MAAM,EAAE,KAAK,EAAE,EAAE;YACjD,IAAI,SAAS,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;gBAAE,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,KAAK,CAAC,CAAA;SACtD;QACD,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,CAAA;QACrB,OAAO,IAAI,CAAA;IACb,CAAC;IACH,uBAAC;AAAD,CAAC,AAhCD,IAgCC;AAhCY,4CAAgB"}
@@ -0,0 +1,16 @@
1
+ import { ItemMoveType } from './ItemMoveType';
2
+ import { MaterialMove } from '../MaterialMove';
3
+ import { MaterialMoveCommon } from './ItemMove';
4
+ import { ItemPosition, MaterialItem } from '../../items';
5
+ export declare type MoveItem<Player extends number = number, MaterialType extends number = number, LocationType extends number = number> = MaterialMoveCommon<MaterialType> & {
6
+ type: typeof ItemMoveType.Move;
7
+ itemIndex: number;
8
+ position: Partial<ItemPosition<Player, LocationType>>;
9
+ quantity?: number;
10
+ reveal?: boolean | Partial<Omit<MaterialItem<Player, LocationType>, 'quantity' | 'location' | 'rotation'>>;
11
+ };
12
+ export declare type MoveItemLocation<P extends number, M extends number, L extends number> = MoveItem<P, M, L> & {
13
+ position: ItemPosition<P, L>;
14
+ };
15
+ export declare function isMoveItem<P extends number, M extends number, L extends number>(move: MaterialMove<P, M, L>, itemType?: M): move is MoveItem<P, M, L>;
16
+ export declare function isMoveItemLocation<P extends number, M extends number, L extends number>(move: MaterialMove<P, M, L>, itemType?: M): move is MoveItemLocation<P, M, L>;
@@ -0,0 +1,14 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.isMoveItemLocation = exports.isMoveItem = void 0;
4
+ var ItemMoveType_1 = require("./ItemMoveType");
5
+ var MoveKind_1 = require("../MoveKind");
6
+ function isMoveItem(move, itemType) {
7
+ return move.kind === MoveKind_1.MoveKind.ItemMove && move.type === ItemMoveType_1.ItemMoveType.Move && (itemType === undefined || move.itemType === itemType);
8
+ }
9
+ exports.isMoveItem = isMoveItem;
10
+ function isMoveItemLocation(move, itemType) {
11
+ return isMoveItem(move, itemType) && move.position.location !== undefined;
12
+ }
13
+ exports.isMoveItemLocation = isMoveItemLocation;
14
+ //# sourceMappingURL=MoveItem.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"MoveItem.js","sourceRoot":"","sources":["../../../../src/material/moves/items/MoveItem.ts"],"names":[],"mappings":";;;AAAA,+CAA6C;AAE7C,wCAAsC;AAiBtC,SAAgB,UAAU,CACxB,IAA2B,EAAE,QAAY;IAEzC,OAAO,IAAI,CAAC,IAAI,KAAK,mBAAQ,CAAC,QAAQ,IAAI,IAAI,CAAC,IAAI,KAAK,2BAAY,CAAC,IAAI,IAAI,CAAC,QAAQ,KAAK,SAAS,IAAI,IAAI,CAAC,QAAQ,KAAK,QAAQ,CAAC,CAAA;AACrI,CAAC;AAJD,gCAIC;AAED,SAAgB,kBAAkB,CAChC,IAA2B,EAAE,QAAY;IAEzC,OAAO,UAAU,CAAC,IAAI,EAAE,QAAQ,CAAC,IAAI,IAAI,CAAC,QAAQ,CAAC,QAAQ,KAAK,SAAS,CAAA;AAC3E,CAAC;AAJD,gDAIC"}
@@ -0,0 +1,11 @@
1
+ import { ItemMoveType } from './ItemMoveType';
2
+ import { MaterialMoveCommon } from './ItemMove';
3
+ import { MaterialMove } from '../MaterialMove';
4
+ export declare type Shuffle<MaterialType extends number = number> = MaterialMoveCommon<MaterialType> & {
5
+ type: typeof ItemMoveType.Shuffle;
6
+ indexes: number[];
7
+ };
8
+ export declare type ShuffleRandomized<MaterialType extends number = number> = Shuffle<MaterialType> & {
9
+ newIndexes: number[];
10
+ };
11
+ export declare function isShuffle<P extends number, M extends number, L extends number>(move: MaterialMove<P, M, L>, itemType?: M): move is Shuffle<M>;
@@ -0,0 +1,10 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.isShuffle = void 0;
4
+ var ItemMoveType_1 = require("./ItemMoveType");
5
+ var MoveKind_1 = require("../MoveKind");
6
+ function isShuffle(move, itemType) {
7
+ return move.kind === MoveKind_1.MoveKind.ItemMove && move.type === ItemMoveType_1.ItemMoveType.Shuffle && (itemType === undefined || move.itemType === itemType);
8
+ }
9
+ exports.isShuffle = isShuffle;
10
+ //# sourceMappingURL=Shuffle.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Shuffle.js","sourceRoot":"","sources":["../../../../src/material/moves/items/Shuffle.ts"],"names":[],"mappings":";;;AAAA,+CAA6C;AAG7C,wCAAsC;AAWtC,SAAgB,SAAS,CACvB,IAA2B,EAAE,QAAY;IAEzC,OAAO,IAAI,CAAC,IAAI,KAAK,mBAAQ,CAAC,QAAQ,IAAI,IAAI,CAAC,IAAI,KAAK,2BAAY,CAAC,OAAO,IAAI,CAAC,QAAQ,KAAK,SAAS,IAAI,IAAI,CAAC,QAAQ,KAAK,QAAQ,CAAC,CAAA;AACxI,CAAC;AAJD,8BAIC"}
@@ -0,0 +1,7 @@
1
+ export * from './CreateItem';
2
+ export * from './DeleteItem';
3
+ export * from './ItemMove';
4
+ export * from './ItemMovesBuilder';
5
+ export * from './ItemMoveType';
6
+ export * from './MoveItem';
7
+ export * from './Shuffle';
@@ -0,0 +1,24 @@
1
+ "use strict";
2
+ var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
+ if (k2 === undefined) k2 = k;
4
+ var desc = Object.getOwnPropertyDescriptor(m, k);
5
+ if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
6
+ desc = { enumerable: true, get: function() { return m[k]; } };
7
+ }
8
+ Object.defineProperty(o, k2, desc);
9
+ }) : (function(o, m, k, k2) {
10
+ if (k2 === undefined) k2 = k;
11
+ o[k2] = m[k];
12
+ }));
13
+ var __exportStar = (this && this.__exportStar) || function(m, exports) {
14
+ for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
15
+ };
16
+ Object.defineProperty(exports, "__esModule", { value: true });
17
+ __exportStar(require("./CreateItem"), exports);
18
+ __exportStar(require("./DeleteItem"), exports);
19
+ __exportStar(require("./ItemMove"), exports);
20
+ __exportStar(require("./ItemMovesBuilder"), exports);
21
+ __exportStar(require("./ItemMoveType"), exports);
22
+ __exportStar(require("./MoveItem"), exports);
23
+ __exportStar(require("./Shuffle"), exports);
24
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/material/moves/items/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,+CAA4B;AAC5B,+CAA4B;AAC5B,6CAA0B;AAC1B,qDAAkC;AAClC,iDAA8B;AAC9B,6CAA0B;AAC1B,4CAAyB"}
@@ -1,4 +1,6 @@
1
1
  import { RuleMoveCommon, RuleMoveType } from './RuleMove';
2
+ import { MaterialMove } from '../MaterialMove';
2
3
  export declare type EndGame = RuleMoveCommon & {
3
4
  type: typeof RuleMoveType.EndGame;
4
5
  };
6
+ export declare function isEndGame<P extends number, M extends number, L extends number>(move: MaterialMove<P, M, L>): move is EndGame;
@@ -1,3 +1,10 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.isEndGame = void 0;
4
+ var RuleMove_1 = require("./RuleMove");
5
+ var MoveKind_1 = require("../MoveKind");
6
+ function isEndGame(move) {
7
+ return move.kind === MoveKind_1.MoveKind.RulesMove && move.type === RuleMove_1.RuleMoveType.EndGame;
8
+ }
9
+ exports.isEndGame = isEndGame;
3
10
  //# sourceMappingURL=EndGame.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"EndGame.js","sourceRoot":"","sources":["../../../../src/material/moves/rules/EndGame.ts"],"names":[],"mappings":""}
1
+ {"version":3,"file":"EndGame.js","sourceRoot":"","sources":["../../../../src/material/moves/rules/EndGame.ts"],"names":[],"mappings":";;;AAAA,uCAAyD;AAEzD,wCAAsC;AAMtC,SAAgB,SAAS,CAAuD,IAA2B;IACzG,OAAO,IAAI,CAAC,IAAI,KAAK,mBAAQ,CAAC,SAAS,IAAI,IAAI,CAAC,IAAI,KAAK,uBAAY,CAAC,OAAO,CAAA;AAC/E,CAAC;AAFD,8BAEC"}
@@ -1,7 +1,9 @@
1
1
  import { RuleMoveCommon, RuleMoveType } from './RuleMove';
2
+ import { MaterialMove } from '../MaterialMove';
2
3
  export declare type StartPlayerTurn<Player extends number = number, RuleId extends number = number> = RuleMoveCommon & {
3
4
  type: typeof RuleMoveType.StartPlayerTurn;
4
5
  id: RuleId;
5
6
  player?: Player;
6
7
  memory?: Record<string, any>;
7
8
  };
9
+ export declare function isStartPlayerTurn<P extends number, M extends number, L extends number>(move: MaterialMove<P, M, L>): move is StartPlayerTurn<P>;
@@ -1,3 +1,10 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.isStartPlayerTurn = void 0;
4
+ var RuleMove_1 = require("./RuleMove");
5
+ var MoveKind_1 = require("../MoveKind");
6
+ function isStartPlayerTurn(move) {
7
+ return move.kind === MoveKind_1.MoveKind.RulesMove && move.type === RuleMove_1.RuleMoveType.StartPlayerTurn;
8
+ }
9
+ exports.isStartPlayerTurn = isStartPlayerTurn;
3
10
  //# sourceMappingURL=StartPlayerTurn.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"StartPlayerTurn.js","sourceRoot":"","sources":["../../../../src/material/moves/rules/StartPlayerTurn.ts"],"names":[],"mappings":""}
1
+ {"version":3,"file":"StartPlayerTurn.js","sourceRoot":"","sources":["../../../../src/material/moves/rules/StartPlayerTurn.ts"],"names":[],"mappings":";;;AAAA,uCAAyD;AAEzD,wCAAsC;AAStC,SAAgB,iBAAiB,CAAuD,IAA2B;IACjH,OAAO,IAAI,CAAC,IAAI,KAAK,mBAAQ,CAAC,SAAS,IAAI,IAAI,CAAC,IAAI,KAAK,uBAAY,CAAC,eAAe,CAAA;AACvF,CAAC;AAFD,8CAEC"}
@@ -1,7 +1,9 @@
1
1
  import { RuleMoveCommon, RuleMoveType } from './RuleMove';
2
+ import { MaterialMove } from '../MaterialMove';
2
3
  export declare type StartRule<Player extends number = number, RuleId extends number = number> = RuleMoveCommon & {
3
4
  type: typeof RuleMoveType.StartRule;
4
5
  id: RuleId;
5
6
  player?: Player;
6
7
  memory?: Record<string, any>;
7
8
  };
9
+ export declare function isStartRule<P extends number, M extends number, L extends number>(move: MaterialMove<P, M, L>): move is StartRule<P>;
@@ -1,3 +1,10 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.isStartRule = void 0;
4
+ var RuleMove_1 = require("./RuleMove");
5
+ var MoveKind_1 = require("../MoveKind");
6
+ function isStartRule(move) {
7
+ return move.kind === MoveKind_1.MoveKind.RulesMove && move.type === RuleMove_1.RuleMoveType.StartRule;
8
+ }
9
+ exports.isStartRule = isStartRule;
3
10
  //# sourceMappingURL=StartRule.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"StartRule.js","sourceRoot":"","sources":["../../../../src/material/moves/rules/StartRule.ts"],"names":[],"mappings":""}
1
+ {"version":3,"file":"StartRule.js","sourceRoot":"","sources":["../../../../src/material/moves/rules/StartRule.ts"],"names":[],"mappings":";;;AAAA,uCAAyD;AAEzD,wCAAsC;AAStC,SAAgB,WAAW,CAAuD,IAA2B;IAC3G,OAAO,IAAI,CAAC,IAAI,KAAK,mBAAQ,CAAC,SAAS,IAAI,IAAI,CAAC,IAAI,KAAK,uBAAY,CAAC,SAAS,CAAA;AACjF,CAAC;AAFD,kCAEC"}