@gamepark/rules-api 6.0.5-alpha.0 → 6.0.7-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/DefaultGameSetup.d.ts +7 -0
  2. package/dist/DefaultGameSetup.js +15 -0
  3. package/dist/DefaultGameSetup.js.map +1 -0
  4. package/dist/GameSetup.d.ts +3 -0
  5. package/dist/{material/moves/Shuffle.js → GameSetup.js} +1 -1
  6. package/dist/GameSetup.js.map +1 -0
  7. package/dist/GameSetupCreator.d.ts +4 -0
  8. package/dist/{material/moves/CreateItem.js → GameSetupCreator.js} +1 -1
  9. package/dist/GameSetupCreator.js.map +1 -0
  10. package/dist/index.d.ts +3 -0
  11. package/dist/index.js +3 -0
  12. package/dist/index.js.map +1 -1
  13. package/dist/material/HiddenMaterialRules.d.ts +3 -3
  14. package/dist/material/HiddenMaterialRules.js +2 -2
  15. package/dist/material/HiddenMaterialRules.js.map +1 -1
  16. package/dist/material/MaterialGameSetup.d.ts +13 -0
  17. package/dist/material/MaterialGameSetup.js +35 -0
  18. package/dist/material/MaterialGameSetup.js.map +1 -0
  19. package/dist/material/MaterialRules.d.ts +7 -12
  20. package/dist/material/MaterialRules.js +4 -42
  21. package/dist/material/MaterialRules.js.map +1 -1
  22. package/dist/material/SecretMaterialRules.d.ts +2 -2
  23. package/dist/material/SecretMaterialRules.js.map +1 -1
  24. package/dist/material/index.d.ts +1 -0
  25. package/dist/material/index.js +1 -0
  26. package/dist/material/index.js.map +1 -1
  27. package/dist/material/items/Material.d.ts +2 -2
  28. package/dist/material/items/Material.js.map +1 -1
  29. package/dist/material/items/MaterialMutator.d.ts +3 -2
  30. package/dist/material/items/MaterialMutator.js +9 -0
  31. package/dist/material/items/MaterialMutator.js.map +1 -1
  32. package/dist/material/moves/MaterialMove.d.ts +2 -2
  33. package/dist/material/moves/items/ItemMove.d.ts +1 -1
  34. package/package.json +2 -2
  35. package/dist/material/helper/MaterialMoveBuilder.d.ts +0 -9
  36. package/dist/material/helper/MaterialMoveBuilder.js +0 -28
  37. package/dist/material/helper/MaterialMoveBuilder.js.map +0 -1
  38. package/dist/material/helper/MaterialSearchHelper.d.ts +0 -18
  39. package/dist/material/helper/MaterialSearchHelper.js +0 -62
  40. package/dist/material/helper/MaterialSearchHelper.js.map +0 -1
  41. package/dist/material/helper/index.d.ts +0 -2
  42. package/dist/material/helper/index.js +0 -19
  43. package/dist/material/helper/index.js.map +0 -1
  44. package/dist/material/items/MaterialOperation.d.ts +0 -17
  45. package/dist/material/items/MaterialOperation.js +0 -133
  46. package/dist/material/items/MaterialOperation.js.map +0 -1
  47. package/dist/material/moves/CreateItem.d.ts +0 -7
  48. package/dist/material/moves/CreateItem.js.map +0 -1
  49. package/dist/material/moves/DeleteItem.d.ts +0 -7
  50. package/dist/material/moves/DeleteItem.js +0 -3
  51. package/dist/material/moves/DeleteItem.js.map +0 -1
  52. package/dist/material/moves/MaterialMoveType.d.ts +0 -6
  53. package/dist/material/moves/MaterialMoveType.js +0 -11
  54. package/dist/material/moves/MaterialMoveType.js.map +0 -1
  55. package/dist/material/moves/MaterialMovesBuilder.d.ts +0 -8
  56. package/dist/material/moves/MaterialMovesBuilder.js +0 -34
  57. package/dist/material/moves/MaterialMovesBuilder.js.map +0 -1
  58. package/dist/material/moves/MoveItem.d.ts +0 -19
  59. package/dist/material/moves/MoveItem.js +0 -18
  60. package/dist/material/moves/MoveItem.js.map +0 -1
  61. package/dist/material/moves/Shuffle.d.ts +0 -9
  62. package/dist/material/moves/Shuffle.js.map +0 -1
  63. package/dist/material/moves/local/RulesDisplay.d.ts +0 -32
  64. package/dist/material/moves/local/RulesDisplay.js +0 -26
  65. package/dist/material/moves/local/RulesDisplay.js.map +0 -1
  66. package/dist/material/moves/rules/MaterialMutator.d.ts +0 -17
  67. package/dist/material/moves/rules/MaterialMutator.js +0 -133
  68. package/dist/material/moves/rules/MaterialMutator.js.map +0 -1
  69. package/dist/material/rules/MaterialStepRules.d.ts +0 -23
  70. package/dist/material/rules/MaterialStepRules.js +0 -98
  71. package/dist/material/rules/MaterialStepRules.js.map +0 -1
@@ -1,133 +0,0 @@
1
- "use strict";
2
- var __assign = (this && this.__assign) || function () {
3
- __assign = Object.assign || function(t) {
4
- for (var s, i = 1, n = arguments.length; i < n; i++) {
5
- s = arguments[i];
6
- for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
7
- t[p] = s[p];
8
- }
9
- return t;
10
- };
11
- return __assign.apply(this, arguments);
12
- };
13
- var __rest = (this && this.__rest) || function (s, e) {
14
- var t = {};
15
- for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0)
16
- t[p] = s[p];
17
- if (s != null && typeof Object.getOwnPropertySymbols === "function")
18
- for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {
19
- if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i]))
20
- t[p[i]] = s[p[i]];
21
- }
22
- return t;
23
- };
24
- var __importDefault = (this && this.__importDefault) || function (mod) {
25
- return (mod && mod.__esModule) ? mod : { "default": mod };
26
- };
27
- Object.defineProperty(exports, "__esModule", { value: true });
28
- exports.MaterialMutator = void 0;
29
- var lodash_shuffle_1 = __importDefault(require("lodash.shuffle"));
30
- var items_1 = require("../../items");
31
- var fast_deep_equal_1 = __importDefault(require("fast-deep-equal"));
32
- var MaterialMutator = /** @class */ (function () {
33
- function MaterialMutator(type, items, locationsStrategies) {
34
- if (locationsStrategies === void 0) { locationsStrategies = {}; }
35
- this.type = type;
36
- this.items = items;
37
- this.locationsStrategies = locationsStrategies;
38
- }
39
- MaterialMutator.prototype.create = function (item) {
40
- var _a, _b;
41
- var mergeItem = this.findMergeItem(item);
42
- if (mergeItem) {
43
- mergeItem.quantity = ((_a = mergeItem.quantity) !== null && _a !== void 0 ? _a : 1) + ((_b = item.quantity) !== null && _b !== void 0 ? _b : 1);
44
- }
45
- else {
46
- this.addItem(item);
47
- }
48
- return this;
49
- };
50
- MaterialMutator.prototype.findMergeItem = function (newItem) {
51
- return this.items.find(function (item) {
52
- var itemQuantity = item.quantity, itemWithoutQuantity = __rest(item, ["quantity"]);
53
- var newItemQuantity = newItem.quantity, newItemWithoutQuantity = __rest(newItem, ["quantity"]);
54
- return (0, fast_deep_equal_1.default)(itemWithoutQuantity, newItemWithoutQuantity);
55
- });
56
- };
57
- MaterialMutator.prototype.delete = function (index, quantity) {
58
- if (quantity === void 0) { quantity = 1; }
59
- var item = this.items[index];
60
- return this.removeItem(item, quantity);
61
- };
62
- MaterialMutator.prototype.addItem = function (item) {
63
- this.applyAddItemStrategy(item);
64
- var availableIndex = this.items.findIndex(function (item) { return item.quantity === 0; });
65
- if (availableIndex !== -1) {
66
- this.items[availableIndex] = item;
67
- }
68
- else {
69
- this.items.push(item);
70
- }
71
- };
72
- MaterialMutator.prototype.applyAddItemStrategy = function (item) {
73
- if (item.location.type in this.locationsStrategies) {
74
- var strategy = this.locationsStrategies[item.location.type];
75
- if (strategy.addItem) {
76
- var material = new items_1.Material(this.type, Array.from(this.items.entries()).filter(function (entry) { return entry[1].quantity !== 0; }))
77
- .location(item.location.type).player(item.location.player).locationId(item.location.id).parent(item.location.parent);
78
- strategy.addItem(material, item);
79
- }
80
- }
81
- };
82
- MaterialMutator.prototype.applyRemoveItemStrategy = function (item) {
83
- if (item.location.type in this.locationsStrategies) {
84
- var strategy = this.locationsStrategies[item.location.type];
85
- if (strategy.removeItem) {
86
- var material = new items_1.Material(this.type, Array.from(this.items.entries()).filter(function (entry) { return entry[1].quantity !== 0; }))
87
- .location(item.location.type).player(item.location.player).locationId(item.location.id).parent(item.location.parent);
88
- strategy.removeItem(material, item);
89
- }
90
- }
91
- };
92
- MaterialMutator.prototype.shuffle = function (indexes, newIndexes) {
93
- var _this = this;
94
- indexes = indexes || Array.from(this.items.keys());
95
- newIndexes = newIndexes || (0, lodash_shuffle_1.default)(indexes);
96
- var shuffledItems = indexes.map(function (index) { return _this.items[index]; });
97
- newIndexes.forEach(function (newIndex, i) {
98
- _this.items[newIndex] = __assign(__assign({}, shuffledItems[i]), { location: _this.items[newIndex].location });
99
- });
100
- return this;
101
- };
102
- MaterialMutator.prototype.move = function (index, destination) {
103
- var _a, _b, _c, _d;
104
- var sourceItem = this.items[index];
105
- var quantity = sourceItem.quantity, rotation = sourceItem.rotation, sourceId = __rest(sourceItem, ["quantity", "rotation"]);
106
- var newItem = __assign(__assign({}, sourceId), destination);
107
- var mergeItem = this.findMergeItem(newItem);
108
- if (mergeItem) {
109
- mergeItem.quantity = ((_a = mergeItem.quantity) !== null && _a !== void 0 ? _a : 1) + ((_b = destination.quantity) !== null && _b !== void 0 ? _b : 1);
110
- this.removeItem(sourceItem, destination.quantity);
111
- }
112
- else if (sourceItem.quantity && sourceItem.quantity > ((_c = destination.quantity) !== null && _c !== void 0 ? _c : 1)) {
113
- sourceItem.quantity -= ((_d = destination.quantity) !== null && _d !== void 0 ? _d : 1);
114
- this.addItem(newItem);
115
- }
116
- else {
117
- this.applyAddItemStrategy(newItem);
118
- this.items[index] = newItem;
119
- this.applyRemoveItemStrategy(sourceItem);
120
- }
121
- };
122
- MaterialMutator.prototype.removeItem = function (item, quantity) {
123
- var _a;
124
- if (quantity === void 0) { quantity = 1; }
125
- item.quantity = Math.max(0, ((_a = item.quantity) !== null && _a !== void 0 ? _a : 1) - quantity);
126
- if (item.quantity === 0) {
127
- this.applyRemoveItemStrategy(item);
128
- }
129
- };
130
- return MaterialMutator;
131
- }());
132
- exports.MaterialMutator = MaterialMutator;
133
- //# sourceMappingURL=MaterialMutator.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"MaterialMutator.js","sourceRoot":"","sources":["../../../../src/material/moves/rules/MaterialMutator.ts"],"names":[],"mappings":"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"}
@@ -1,23 +0,0 @@
1
- import { MaterialGame } from '../MaterialGame';
2
- import { Rules } from '../../Rules';
3
- import { CustomMove, ItemMove, MaterialMove, RuleMove } from '../moves';
4
- import { Material } from '../items';
5
- import { MaterialRulesMovesBuilder } from './MaterialRulesMovesBuilder';
6
- import { RuleStep } from './RuleStep';
7
- export declare abstract class MaterialStepRules<Player extends number = number, MaterialType extends number = number, LocationType extends number = number> extends Rules<MaterialGame<Player, MaterialType, LocationType>, MaterialMove<Player, MaterialType, LocationType>, Player> {
8
- readonly material: (type: MaterialType) => Material<Player, MaterialType, LocationType>;
9
- constructor(game: MaterialGame<Player, MaterialType, LocationType>, material: (type: MaterialType) => Material<Player, MaterialType, LocationType>);
10
- beforeItemMove(_move: ItemMove<Player, MaterialType, LocationType>): MaterialMove<Player, MaterialType, LocationType>[];
11
- afterItemMove(_move: ItemMove<Player, MaterialType, LocationType>): MaterialMove<Player, MaterialType, LocationType>[];
12
- onRuleStart<RuleId extends number>(_move: RuleMove<Player, RuleId>, _previousRule?: RuleStep): MaterialMove<Player, MaterialType, LocationType>[];
13
- onRuleEnd<RuleId extends number>(_move: RuleMove<Player, RuleId>): MaterialMove<Player, MaterialType, LocationType>[];
14
- onCustomMove(_move: CustomMove): MaterialMove<Player, MaterialType, LocationType>[];
15
- rules(): MaterialRulesMovesBuilder<Player, MaterialType, LocationType>;
16
- getMemory<T>(player?: Player): T;
17
- memorize<T extends Record<string, any>>(memory?: T, player?: Player): void;
18
- getGameMemory<T>(player?: Player): T;
19
- memorizeOnGame(memory?: Record<string, any>, player?: Player): void;
20
- }
21
- export interface MaterialRulesStepCreator<Player extends number = number, MaterialType extends number = number, LocationType extends number = number> {
22
- new (game: MaterialGame<Player, MaterialType, LocationType>, material: (type: MaterialType) => Material<Player, MaterialType, LocationType>): MaterialStepRules<Player, MaterialType, LocationType>;
23
- }
@@ -1,98 +0,0 @@
1
- "use strict";
2
- var __extends = (this && this.__extends) || (function () {
3
- var extendStatics = function (d, b) {
4
- extendStatics = Object.setPrototypeOf ||
5
- ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) ||
6
- function (d, b) { for (var p in b) if (Object.prototype.hasOwnProperty.call(b, p)) d[p] = b[p]; };
7
- return extendStatics(d, b);
8
- };
9
- return function (d, b) {
10
- if (typeof b !== "function" && b !== null)
11
- throw new TypeError("Class extends value " + String(b) + " is not a constructor or null");
12
- extendStatics(d, b);
13
- function __() { this.constructor = d; }
14
- d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());
15
- };
16
- })();
17
- var __assign = (this && this.__assign) || function () {
18
- __assign = Object.assign || function(t) {
19
- for (var s, i = 1, n = arguments.length; i < n; i++) {
20
- s = arguments[i];
21
- for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
22
- t[p] = s[p];
23
- }
24
- return t;
25
- };
26
- return __assign.apply(this, arguments);
27
- };
28
- Object.defineProperty(exports, "__esModule", { value: true });
29
- exports.MaterialStepRules = void 0;
30
- var Rules_1 = require("../../Rules");
31
- var MaterialRulesMovesBuilder_1 = require("./MaterialRulesMovesBuilder");
32
- var MaterialStepRules = /** @class */ (function (_super) {
33
- __extends(MaterialStepRules, _super);
34
- function MaterialStepRules(game, material) {
35
- var _this = _super.call(this, game) || this;
36
- _this.material = material;
37
- return _this;
38
- }
39
- MaterialStepRules.prototype.beforeItemMove = function (_move) {
40
- return [];
41
- };
42
- MaterialStepRules.prototype.afterItemMove = function (_move) {
43
- return [];
44
- };
45
- MaterialStepRules.prototype.onRuleStart = function (_move, _previousRule) {
46
- return [];
47
- };
48
- MaterialStepRules.prototype.onRuleEnd = function (_move) {
49
- return [];
50
- };
51
- MaterialStepRules.prototype.onCustomMove = function (_move) {
52
- return [];
53
- };
54
- MaterialStepRules.prototype.rules = function () {
55
- return new MaterialRulesMovesBuilder_1.MaterialRulesMovesBuilder(this.game);
56
- };
57
- MaterialStepRules.prototype.getMemory = function (player) {
58
- var _a, _b, _c;
59
- if (player !== undefined) {
60
- return ((_b = (_a = this.game.rule.playersMemory) === null || _a === void 0 ? void 0 : _a[player]) !== null && _b !== void 0 ? _b : {});
61
- }
62
- else {
63
- return ((_c = this.game.rule.memory) !== null && _c !== void 0 ? _c : {});
64
- }
65
- };
66
- MaterialStepRules.prototype.memorize = function (memory, player) {
67
- if (player !== undefined) {
68
- if (!this.game.rule.playersMemory)
69
- this.game.rule.playersMemory = {};
70
- this.game.rule.playersMemory[player] = __assign(__assign({}, this.game.rule.playersMemory[player]), memory);
71
- }
72
- else {
73
- this.game.rule.memory = __assign(__assign({}, this.game.rule.memory), memory);
74
- }
75
- };
76
- MaterialStepRules.prototype.getGameMemory = function (player) {
77
- var _a, _b, _c;
78
- if (player !== undefined) {
79
- return ((_b = (_a = this.game.playersMemory) === null || _a === void 0 ? void 0 : _a[player]) !== null && _b !== void 0 ? _b : {});
80
- }
81
- else {
82
- return ((_c = this.game.memory) !== null && _c !== void 0 ? _c : {});
83
- }
84
- };
85
- MaterialStepRules.prototype.memorizeOnGame = function (memory, player) {
86
- if (player !== undefined) {
87
- if (!this.game.playersMemory)
88
- this.game.playersMemory = {};
89
- this.game.playersMemory[player] = __assign(__assign({}, this.game.playersMemory[player]), memory);
90
- }
91
- else {
92
- this.game.memory = __assign(__assign({}, this.game.memory), memory);
93
- }
94
- };
95
- return MaterialStepRules;
96
- }(Rules_1.Rules));
97
- exports.MaterialStepRules = MaterialStepRules;
98
- //# sourceMappingURL=MaterialStepRules.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"MaterialStepRules.js","sourceRoot":"","sources":["../../../src/material/rules/MaterialStepRules.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;AACA,qCAAmC;AAGnC,yEAAuE;AAGvE;IACU,qCAAiH;IAIzH,2BAAY,IAAsD,EAAE,QAA8E;QAAlJ,YACE,kBAAM,IAAI,CAAC,SAEZ;QADC,KAAI,CAAC,QAAQ,GAAG,QAAQ,CAAA;;IAC1B,CAAC;IAED,0CAAc,GAAd,UAAe,KAAmD;QAChE,OAAO,EAAE,CAAA;IACX,CAAC;IAED,yCAAa,GAAb,UAAc,KAAmD;QAC/D,OAAO,EAAE,CAAA;IACX,CAAC;IAED,uCAAW,GAAX,UAAmC,KAA+B,EAAE,aAAwB;QAC1F,OAAO,EAAE,CAAA;IACX,CAAC;IAED,qCAAS,GAAT,UAAiC,KAA+B;QAC9D,OAAO,EAAE,CAAA;IACX,CAAC;IAED,wCAAY,GAAZ,UAAa,KAAiB;QAC5B,OAAO,EAAE,CAAA;IACX,CAAC;IAED,iCAAK,GAAL;QACE,OAAO,IAAI,qDAAyB,CAAqC,IAAI,CAAC,IAAI,CAAC,CAAA;IACrF,CAAC;IAED,qCAAS,GAAT,UAAa,MAAe;;QAC1B,IAAI,MAAM,KAAK,SAAS,EAAE;YACxB,OAAO,CAAC,MAAA,MAAA,IAAI,CAAC,IAAI,CAAC,IAAK,CAAC,aAAa,0CAAG,MAAM,CAAC,mCAAI,EAAE,CAAM,CAAA;SAC5D;aAAM;YACL,OAAO,CAAC,MAAA,IAAI,CAAC,IAAI,CAAC,IAAK,CAAC,MAAM,mCAAI,EAAE,CAAM,CAAA;SAC3C;IACH,CAAC;IAED,oCAAQ,GAAR,UAAwC,MAAU,EAAE,MAAe;QACjE,IAAI,MAAM,KAAK,SAAS,EAAE;YACxB,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,IAAK,CAAC,aAAa;gBAAE,IAAI,CAAC,IAAI,CAAC,IAAK,CAAC,aAAa,GAAG,EAAE,CAAA;YACtE,IAAI,CAAC,IAAI,CAAC,IAAK,CAAC,aAAa,CAAC,MAAM,CAAC,yBAAQ,IAAI,CAAC,IAAI,CAAC,IAAK,CAAC,aAAa,CAAC,MAAM,CAAC,GAAK,MAAM,CAAE,CAAA;SAChG;aAAM;YACL,IAAI,CAAC,IAAI,CAAC,IAAK,CAAC,MAAM,yBAAQ,IAAI,CAAC,IAAI,CAAC,IAAK,CAAC,MAAM,GAAK,MAAM,CAAE,CAAA;SAClE;IACH,CAAC;IAED,yCAAa,GAAb,UAAiB,MAAe;;QAC9B,IAAI,MAAM,KAAK,SAAS,EAAE;YACxB,OAAO,CAAC,MAAA,MAAA,IAAI,CAAC,IAAI,CAAC,aAAa,0CAAG,MAAM,CAAC,mCAAI,EAAE,CAAM,CAAA;SACtD;aAAM;YACL,OAAO,CAAC,MAAA,IAAI,CAAC,IAAI,CAAC,MAAM,mCAAI,EAAE,CAAM,CAAA;SACrC;IACH,CAAC;IAED,0CAAc,GAAd,UAAe,MAA4B,EAAE,MAAe;QAC1D,IAAI,MAAM,KAAK,SAAS,EAAE;YACxB,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,aAAa;gBAAE,IAAI,CAAC,IAAI,CAAC,aAAa,GAAG,EAAE,CAAA;YAC1D,IAAI,CAAC,IAAI,CAAC,aAAa,CAAC,MAAM,CAAC,yBAAQ,IAAI,CAAC,IAAI,CAAC,aAAa,CAAC,MAAM,CAAC,GAAK,MAAM,CAAE,CAAA;SACpF;aAAM;YACL,IAAI,CAAC,IAAI,CAAC,MAAM,yBAAQ,IAAI,CAAC,IAAI,CAAC,MAAM,GAAK,MAAM,CAAE,CAAA;SACtD;IACH,CAAC;IAEH,wBAAC;AAAD,CAAC,AApED,CACU,aAAK,GAmEd;AApEqB,8CAAiB"}