@gamepark/react-game 6.35.7 → 6.36.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.
@@ -1,13 +1,20 @@
1
- import { HexGridSystem, MaterialItem, XYCoordinates } from '@gamepark/rules-api';
1
+ import { MaterialItem, Polyhex } from '@gamepark/rules-api';
2
2
  import { ItemContext } from '../../../locators';
3
3
  import { ComponentDescription } from '../ComponentDescription';
4
4
  import { FlatMaterialDescription } from './FlatMaterial';
5
- export declare abstract class PolyhexDescription<P extends number = number, M extends number = number, L extends number = number, ItemId = any> extends FlatMaterialDescription<P, M, L, ItemId> {
6
- abstract coordinatesSystem: HexGridSystem;
7
- polyhexShape: {
8
- x: number;
9
- y: number;
10
- }[];
11
- getPolyhexShape(_item: MaterialItem<P, L, ItemId>, _context: ItemContext<P, M, L>): XYCoordinates[];
5
+ export declare abstract class PolyhexDescription<P extends number = number, M extends number = number, L extends number = number, ItemId = any, T = any> extends FlatMaterialDescription<P, M, L, ItemId> {
6
+ /**
7
+ * The shape of the polyhex (use getPolyhexShape if it varies depending on the item)
8
+ * IMPORTANT: all falsy values (0, null...) are considered as blank hex.
9
+ */
10
+ polyhex: Polyhex<T>;
11
+ /**
12
+ * This function must return the shape of the polyhex, as a Matrix.
13
+ * IMPORTANT: all falsy values (0, null...) are considered as blank hex.
14
+ * @param _item Item
15
+ * @param _context Context of the item
16
+ * @returns Matrix representing the polyhex. Falsy values will be considered are blank spots
17
+ */
18
+ getPolyhex(_item: MaterialItem<P, L, ItemId>, _context: ItemContext<P, M, L>): Polyhex<T>;
12
19
  }
13
20
  export declare function isPolyhexDescription<P extends number = number, M extends number = number, L extends number = number, ItemId = any>(description: ComponentDescription<ItemId>): description is PolyhexDescription<P, M, L, ItemId>;
@@ -16,22 +16,34 @@ var __extends = (this && this.__extends) || (function () {
16
16
  })();
17
17
  Object.defineProperty(exports, "__esModule", { value: true });
18
18
  exports.isPolyhexDescription = exports.PolyhexDescription = void 0;
19
+ var rules_api_1 = require("@gamepark/rules-api");
19
20
  var FlatMaterial_1 = require("./FlatMaterial");
20
21
  var PolyhexDescription = /** @class */ (function (_super) {
21
22
  __extends(PolyhexDescription, _super);
22
23
  function PolyhexDescription() {
23
24
  var _this = _super !== null && _super.apply(this, arguments) || this;
24
- _this.polyhexShape = [{ x: 0, y: 0 }];
25
+ /**
26
+ * The shape of the polyhex (use getPolyhexShape if it varies depending on the item)
27
+ * IMPORTANT: all falsy values (0, null...) are considered as blank hex.
28
+ */
29
+ _this.polyhex = new rules_api_1.Polyhex([]);
25
30
  return _this;
26
31
  }
27
- PolyhexDescription.prototype.getPolyhexShape = function (_item, _context) {
28
- return this.polyhexShape;
32
+ /**
33
+ * This function must return the shape of the polyhex, as a Matrix.
34
+ * IMPORTANT: all falsy values (0, null...) are considered as blank hex.
35
+ * @param _item Item
36
+ * @param _context Context of the item
37
+ * @returns Matrix representing the polyhex. Falsy values will be considered are blank spots
38
+ */
39
+ PolyhexDescription.prototype.getPolyhex = function (_item, _context) {
40
+ return this.polyhex;
29
41
  };
30
42
  return PolyhexDescription;
31
43
  }(FlatMaterial_1.FlatMaterialDescription));
32
44
  exports.PolyhexDescription = PolyhexDescription;
33
45
  function isPolyhexDescription(description) {
34
- return typeof description.getPolyhexShape === 'function';
46
+ return typeof description.getPolyhex === 'function';
35
47
  }
36
48
  exports.isPolyhexDescription = isPolyhexDescription;
37
49
  //# sourceMappingURL=PolyhexDescription.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"PolyhexDescription.js","sourceRoot":"","sources":["../../../../src/components/material/FlatMaterial/PolyhexDescription.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;AAGA,+CAAwD;AAExD;IACU,sCAAwC;IADlD;QAAA,qEAUC;QALC,kBAAY,GAAG,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,CAAA;;IAKjC,CAAC;IAHC,4CAAe,GAAf,UAAgB,KAAiC,EAAE,QAA8B;QAC/E,OAAO,IAAI,CAAC,YAAY,CAAA;IAC1B,CAAC;IACH,yBAAC;AAAD,CAAC,AAVD,CACU,sCAAuB,GAShC;AAVqB,gDAAkB;AAYxC,SAAgB,oBAAoB,CAClC,WAAyC;IAEzC,OAAO,OAAQ,WAAkC,CAAC,eAAe,KAAK,UAAU,CAAA;AAClF,CAAC;AAJD,oDAIC"}
1
+ {"version":3,"file":"PolyhexDescription.js","sourceRoot":"","sources":["../../../../src/components/material/FlatMaterial/PolyhexDescription.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;AAAA,iDAA2D;AAG3D,+CAAwD;AAExD;IACU,sCAAwC;IADlD;QAAA,qEAmBC;QAhBC;;;WAGG;QACH,aAAO,GAAe,IAAI,mBAAO,CAAI,EAAE,CAAC,CAAA;;IAY1C,CAAC;IAVC;;;;;;OAMG;IACH,uCAAU,GAAV,UAAW,KAAiC,EAAE,QAA8B;QAC1E,OAAO,IAAI,CAAC,OAAO,CAAA;IACrB,CAAC;IACH,yBAAC;AAAD,CAAC,AAnBD,CACU,sCAAuB,GAkBhC;AAnBqB,gDAAkB;AAqBxC,SAAgB,oBAAoB,CAClC,WAAyC;IAEzC,OAAO,OAAQ,WAAkC,CAAC,UAAU,KAAK,UAAU,CAAA;AAC7E,CAAC;AAJD,oDAIC"}
@@ -1,10 +1,10 @@
1
- import { Coordinates, GridBoundaries, HexGridSystem, Location, MaterialItem, MoveItem, XYCoordinates } from '@gamepark/rules-api';
1
+ import { Coordinates, HexGridSystem, Location, MaterialItem, MoveItem, Polyhex, XYCoordinates } from '@gamepark/rules-api';
2
2
  import { LocationDescription } from '../components';
3
3
  import { ItemContext, Locator, MaterialContext } from './Locator';
4
4
  /**
5
5
  * This locator is responsible for placing locations and items on a hexagonal grid.
6
6
  */
7
- export declare abstract class HexagonalGridLocator<P extends number = number, M extends number = number, L extends number = number> extends Locator<P, M, L> {
7
+ export declare abstract class HexagonalGridLocator<P extends number = number, M extends number = number, L extends number = number, T = any> extends Locator<P, M, L> {
8
8
  /**
9
9
  * The coordinates system used by the location and items to place
10
10
  */
@@ -23,24 +23,16 @@ export declare abstract class HexagonalGridLocator<P extends number = number, M
23
23
  */
24
24
  protected get sizeY(): number;
25
25
  /**
26
- * The min and max X and Y coordinates of the grid, if any.
27
- * Define the boundaries to get the drop area automatically sized and centered.
26
+ * Polyhex of the drop area
28
27
  */
29
- boundaries: Partial<GridBoundaries>;
28
+ dropArea?: Polyhex<T>;
30
29
  /**
31
- * Override if you need dynamic {@link boundaries}.
30
+ * Override if you need a dynamic drop area
32
31
  * @param _location The location to consider
33
32
  * @param _context Context of the game
34
- * @return current grid boundaries
33
+ * @return the current drop area
35
34
  */
36
- getBoundaries(_location: Location<P, L>, _context: MaterialContext<P, M, L>): Partial<GridBoundaries>;
37
- /**
38
- * Based on the coordinates of each hexagon in an area, return the delta coordinates to place the area properly
39
- * @param areaCoordinates Coordinates of each hexagon composing the area
40
- * @param coordinatesSystem System of coordinates to consider
41
- * @return delta x and y to apply to the position of the area
42
- */
43
- getAreaDelta(areaCoordinates: XYCoordinates[], coordinatesSystem?: HexGridSystem): XYCoordinates;
35
+ getDropArea(_location: Location<P, L>, _context: MaterialContext<P, M, L>): Polyhex<T> | undefined;
44
36
  /**
45
37
  * Get the coordinates for the full grid area
46
38
  * @param location Location to place
@@ -86,4 +78,10 @@ export declare abstract class HexagonalGridLocator<P extends number = number, M
86
78
  * Generate automatically a {@link HexGridDropAreaDescription} based on the grid boundaries
87
79
  */
88
80
  getLocationDescription(location: Location<P, L>, context: MaterialContext<P, M, L> | ItemContext<P, M, L>): LocationDescription<P, M, L> | undefined;
81
+ getBoundaries(polyhex: Polyhex<T>): {
82
+ xMin: number;
83
+ xMax: number;
84
+ yMin: number;
85
+ yMax: number;
86
+ };
89
87
  }
@@ -14,6 +14,31 @@ var __extends = (this && this.__extends) || (function () {
14
14
  d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());
15
15
  };
16
16
  })();
17
+ var __read = (this && this.__read) || function (o, n) {
18
+ var m = typeof Symbol === "function" && o[Symbol.iterator];
19
+ if (!m) return o;
20
+ var i = m.call(o), r, ar = [], e;
21
+ try {
22
+ while ((n === void 0 || n-- > 0) && !(r = i.next()).done) ar.push(r.value);
23
+ }
24
+ catch (error) { e = { error: error }; }
25
+ finally {
26
+ try {
27
+ if (r && !r.done && (m = i["return"])) m.call(i);
28
+ }
29
+ finally { if (e) throw e.error; }
30
+ }
31
+ return ar;
32
+ };
33
+ var __spreadArray = (this && this.__spreadArray) || function (to, from, pack) {
34
+ if (pack || arguments.length === 2) for (var i = 0, l = from.length, ar; i < l; i++) {
35
+ if (ar || !(i in from)) {
36
+ if (!ar) ar = Array.prototype.slice.call(from, 0, i);
37
+ ar[i] = from[i];
38
+ }
39
+ }
40
+ return to.concat(ar || Array.prototype.slice.call(from));
41
+ };
17
42
  var __importDefault = (this && this.__importDefault) || function (mod) {
18
43
  return (mod && mod.__esModule) ? mod : { "default": mod };
19
44
  };
@@ -21,10 +46,7 @@ Object.defineProperty(exports, "__esModule", { value: true });
21
46
  exports.HexagonalGridLocator = void 0;
22
47
  var rules_api_1 = require("@gamepark/rules-api");
23
48
  var isEqual_1 = __importDefault(require("lodash/isEqual"));
24
- var maxBy_1 = __importDefault(require("lodash/maxBy"));
25
- var minBy_1 = __importDefault(require("lodash/minBy"));
26
49
  var omit_1 = __importDefault(require("lodash/omit"));
27
- var range_1 = __importDefault(require("lodash/range"));
28
50
  var uniqWith_1 = __importDefault(require("lodash/uniqWith"));
29
51
  var components_1 = require("../components");
30
52
  var Locator_1 = require("./Locator");
@@ -35,11 +57,6 @@ var HexagonalGridLocator = /** @class */ (function (_super) {
35
57
  __extends(HexagonalGridLocator, _super);
36
58
  function HexagonalGridLocator() {
37
59
  var _this = _super !== null && _super.apply(this, arguments) || this;
38
- /**
39
- * The min and max X and Y coordinates of the grid, if any.
40
- * Define the boundaries to get the drop area automatically sized and centered.
41
- */
42
- _this.boundaries = {};
43
60
  _this.dropPreview = true;
44
61
  return _this;
45
62
  }
@@ -64,30 +81,13 @@ var HexagonalGridLocator = /** @class */ (function (_super) {
64
81
  configurable: true
65
82
  });
66
83
  /**
67
- * Override if you need dynamic {@link boundaries}.
84
+ * Override if you need a dynamic drop area
68
85
  * @param _location The location to consider
69
86
  * @param _context Context of the game
70
- * @return current grid boundaries
87
+ * @return the current drop area
71
88
  */
72
- HexagonalGridLocator.prototype.getBoundaries = function (_location, _context) {
73
- return this.boundaries;
74
- };
75
- /**
76
- * Based on the coordinates of each hexagon in an area, return the delta coordinates to place the area properly
77
- * @param areaCoordinates Coordinates of each hexagon composing the area
78
- * @param coordinatesSystem System of coordinates to consider
79
- * @return delta x and y to apply to the position of the area
80
- */
81
- HexagonalGridLocator.prototype.getAreaDelta = function (areaCoordinates, coordinatesSystem) {
82
- var _this = this;
83
- var _a, _b, _c, _d, _e, _f, _g, _h;
84
- if (coordinatesSystem === void 0) { coordinatesSystem = this.coordinatesSystem; }
85
- var areaDeltaCoordinates = areaCoordinates.map(function (coordinates) { return _this.getHexagonPosition(coordinates, coordinatesSystem); });
86
- var xMin = (_b = (_a = (0, minBy_1.default)(areaDeltaCoordinates, 'x')) === null || _a === void 0 ? void 0 : _a.x) !== null && _b !== void 0 ? _b : 0;
87
- var xMax = (_d = (_c = (0, maxBy_1.default)(areaDeltaCoordinates, 'x')) === null || _c === void 0 ? void 0 : _c.x) !== null && _d !== void 0 ? _d : 0;
88
- var yMin = (_f = (_e = (0, minBy_1.default)(areaDeltaCoordinates, 'y')) === null || _e === void 0 ? void 0 : _e.y) !== null && _f !== void 0 ? _f : 0;
89
- var yMax = (_h = (_g = (0, maxBy_1.default)(areaDeltaCoordinates, 'y')) === null || _g === void 0 ? void 0 : _g.y) !== null && _h !== void 0 ? _h : 0;
90
- return { x: (xMin + xMax) / 2, y: (yMin + yMax) / 2 };
89
+ HexagonalGridLocator.prototype.getDropArea = function (_location, _context) {
90
+ return this.dropArea;
91
91
  };
92
92
  /**
93
93
  * Get the coordinates for the full grid area
@@ -97,10 +97,11 @@ var HexagonalGridLocator = /** @class */ (function (_super) {
97
97
  */
98
98
  HexagonalGridLocator.prototype.getAreaCoordinates = function (location, context) {
99
99
  var _a = this.getCoordinates(location, context), _b = _a.x, x = _b === void 0 ? 0 : _b, _c = _a.y, y = _c === void 0 ? 0 : _c, z = _a.z;
100
- var _d = this.getBoundaries(location, context), _e = _d.xMax, xMax = _e === void 0 ? 0 : _e, _f = _d.xMin, xMin = _f === void 0 ? 0 : _f, _g = _d.yMax, yMax = _g === void 0 ? 0 : _g, _h = _d.yMin, yMin = _h === void 0 ? 0 : _h;
101
- var areaCoordinates = (0, range_1.default)(xMin, xMax + 1).flatMap(function (x) { return (0, range_1.default)(yMin, yMax + 1).map(function (y) { return ({ x: x, y: y }); }); });
102
- var _j = this.getAreaDelta(areaCoordinates), deltaX = _j.x, deltaY = _j.y;
103
- return { x: x + deltaX, y: y + deltaY, z: z };
100
+ var dropArea = this.getDropArea(location, context);
101
+ if (!dropArea)
102
+ return { x: x, y: y, z: z };
103
+ var _d = this.getBoundaries(dropArea), xMin = _d.xMin, xMax = _d.xMax, yMin = _d.yMin, yMax = _d.yMax;
104
+ return { x: (xMin + xMax) / 2, y: (yMin + yMax) / 2, z: z };
104
105
  };
105
106
  /**
106
107
  * Get the coordinates of a location on the grid
@@ -167,9 +168,9 @@ var HexagonalGridLocator = /** @class */ (function (_super) {
167
168
  if (!description || !(0, components_1.isPolyhexDescription)(description)) {
168
169
  return { x: x, y: y, z: z };
169
170
  }
170
- var shape = description.getPolyhexShape(item, context);
171
- var areaDelta = this.getAreaDelta(shape, description.coordinatesSystem);
172
- var _d = rotateVector(areaDelta, item.location.rotation * 60), deltaX = _d.x, deltaY = _d.y;
171
+ var polyhex = description.getPolyhex(item, context);
172
+ var _d = this.getBoundaries(polyhex), xMax = _d.xMax, xMin = _d.xMin, yMin = _d.yMin, yMax = _d.yMax;
173
+ var _e = rotateVector({ x: (xMin + xMax) / 2, y: (yMin + yMax) / 2 }, item.location.rotation * 60), deltaX = _e.x, deltaY = _e.y;
173
174
  return { x: x + deltaX, y: y + deltaY, z: z };
174
175
  };
175
176
  /**
@@ -201,19 +202,52 @@ var HexagonalGridLocator = /** @class */ (function (_super) {
201
202
  return this.locationDescription;
202
203
  if (location.x !== undefined || location.y !== undefined)
203
204
  return _super.prototype.getLocationDescription.call(this, location, context);
204
- var _a = this.getBoundaries(location, context), _b = _a.xMin, xMin = _b === void 0 ? 0 : _b, _c = _a.xMax, xMax = _c === void 0 ? 0 : _c, _d = _a.yMin, yMin = _d === void 0 ? 0 : _d, _e = _a.yMax, yMax = _e === void 0 ? 0 : _e;
205
+ var dropArea = this.getDropArea(location, context);
206
+ if (!dropArea)
207
+ return _super.prototype.getLocationDescription.call(this, location, context);
208
+ var _a = this.getBoundaries(dropArea), xMin = _a.xMin, xMax = _a.xMax, yMin = _a.yMin, yMax = _a.yMax;
205
209
  var borderRadius = this.sizeX / 3;
206
- switch (this.coordinatesSystem) {
210
+ return new components_1.HexGridDropAreaDescription({
211
+ width: xMax - xMin,
212
+ height: yMax - yMin,
213
+ borderRadius: borderRadius
214
+ });
215
+ };
216
+ HexagonalGridLocator.prototype.getBoundaries = function (polyhex) {
217
+ var boundaries = { xMin: 0, xMax: 0, yMin: 0, yMax: 0 };
218
+ if (!polyhex) {
219
+ return boundaries;
220
+ }
221
+ switch (polyhex.system) {
207
222
  case rules_api_1.HexGridSystem.Axial: {
208
223
  throw new Error('Axial HexGridSystem is not yet implemented');
209
224
  }
210
225
  case rules_api_1.HexGridSystem.OddQ:
211
- case rules_api_1.HexGridSystem.EvenQ:
212
- return new components_1.HexGridDropAreaDescription({
213
- width: (xMax - xMin + 1) * 3 / 2 * this.sizeX,
214
- height: (yMax - yMin + 1) * Math.sqrt(3) * this.sizeY,
215
- borderRadius: borderRadius
216
- });
226
+ case rules_api_1.HexGridSystem.EvenQ: {
227
+ boundaries.xMin = polyhex.xMin * 3 / 2 * this.sizeX - this.sizeX;
228
+ var xMax = Math.max.apply(Math, __spreadArray([], __read(polyhex.grid.map(function (line) { return line.length; })), false)) - 1;
229
+ boundaries.xMax = (xMax + polyhex.xMin) * 3 / 2 * this.sizeX + this.sizeX;
230
+ var swapSystem_1 = polyhex.xMin % 2 !== 0;
231
+ var yMin = polyhex.yMin - 0.5;
232
+ var firstLine = polyhex.grid[0];
233
+ if (polyhex.system === rules_api_1.HexGridSystem.OddQ && firstLine.every(function (value, y) { return polyhex.isEmpty(value) || (swapSystem_1 ? !(y % 2) : y % 2); })) {
234
+ yMin += 0.5;
235
+ }
236
+ else if (polyhex.system === rules_api_1.HexGridSystem.EvenQ && firstLine.some(function (value, y) { return !polyhex.isEmpty(value) && (swapSystem_1 ? !(y % 2) : y % 2); })) {
237
+ yMin -= 0.5;
238
+ }
239
+ boundaries.yMin = yMin * Math.sqrt(3) * this.sizeY;
240
+ var yMax = polyhex.grid.length + polyhex.yMin - 0.5;
241
+ var lastLine = polyhex.grid[polyhex.grid.length - 1];
242
+ if (polyhex.system === rules_api_1.HexGridSystem.OddQ && lastLine.some(function (value, y) { return !polyhex.isEmpty(value) && (swapSystem_1 ? !(y % 2) : y % 2); })) {
243
+ yMax += 0.5;
244
+ }
245
+ else if (polyhex.system === rules_api_1.HexGridSystem.EvenQ && lastLine.every(function (value, y) { return polyhex.isEmpty(value) || (swapSystem_1 ? !(y % 2) : y % 2); })) {
246
+ yMax -= 0.5;
247
+ }
248
+ boundaries.yMax = yMax * Math.sqrt(3) * this.sizeY;
249
+ break;
250
+ }
217
251
  case rules_api_1.HexGridSystem.OddR: {
218
252
  throw new Error('OddR HexGridSystem is not yet implemented');
219
253
  }
@@ -221,6 +255,7 @@ var HexagonalGridLocator = /** @class */ (function (_super) {
221
255
  throw new Error('EvenR HexGridSystem is not yet implemented');
222
256
  }
223
257
  }
258
+ return boundaries;
224
259
  };
225
260
  return HexagonalGridLocator;
226
261
  }(Locator_1.Locator));
@@ -1 +1 @@
1
- {"version":3,"file":"HexagonalGridLocator.js","sourceRoot":"","sources":["../../src/locators/HexagonalGridLocator.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;AAAA,iDAAiI;AACjI,2DAAoC;AACpC,uDAAgC;AAChC,uDAAgC;AAChC,qDAA8B;AAC9B,uDAAgC;AAChC,6DAAsC;AACtC,4CAAqG;AACrG,qCAAiE;AAEjE;;GAEG;AACH;IAAoI,wCAAgB;IAApJ;QAAA,qEAiMC;QAvKC;;;WAGG;QACH,gBAAU,GAA4B,EAAE,CAAA;QAsIxC,iBAAW,GAAG,IAAI,CAAA;;IA6BpB,CAAC;IAlLC,sBAAc,uCAAK;QAHnB;;WAEG;aACH;YACE,OAAO,OAAO,IAAI,CAAC,IAAI,KAAK,QAAQ,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAA;QAChE,CAAC;;;OAAA;IAKD,sBAAc,uCAAK;QAHnB;;WAEG;aACH;YACE,OAAO,OAAO,IAAI,CAAC,IAAI,KAAK,QAAQ,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAA;QAChE,CAAC;;;OAAA;IAQD;;;;;OAKG;IACH,4CAAa,GAAb,UAAc,SAAyB,EAAE,QAAkC;QACzE,OAAO,IAAI,CAAC,UAAU,CAAA;IACxB,CAAC;IAED;;;;;OAKG;IACH,2CAAY,GAAZ,UAAa,eAAgC,EAAE,iBAA0C;QAAzF,iBAOC;;QAP8C,kCAAA,EAAA,oBAAoB,IAAI,CAAC,iBAAiB;QACvF,IAAM,oBAAoB,GAAG,eAAe,CAAC,GAAG,CAAC,UAAC,WAAW,IAAK,OAAA,KAAI,CAAC,kBAAkB,CAAC,WAAW,EAAE,iBAAiB,CAAC,EAAvD,CAAuD,CAAC,CAAA;QAC1H,IAAM,IAAI,GAAG,MAAA,MAAA,IAAA,eAAK,EAAC,oBAAoB,EAAE,GAAG,CAAC,0CAAE,CAAC,mCAAI,CAAC,CAAA;QACrD,IAAM,IAAI,GAAG,MAAA,MAAA,IAAA,eAAK,EAAC,oBAAoB,EAAE,GAAG,CAAC,0CAAE,CAAC,mCAAI,CAAC,CAAA;QACrD,IAAM,IAAI,GAAG,MAAA,MAAA,IAAA,eAAK,EAAC,oBAAoB,EAAE,GAAG,CAAC,0CAAE,CAAC,mCAAI,CAAC,CAAA;QACrD,IAAM,IAAI,GAAG,MAAA,MAAA,IAAA,eAAK,EAAC,oBAAoB,EAAE,GAAG,CAAC,0CAAE,CAAC,mCAAI,CAAC,CAAA;QACrD,OAAO,EAAE,CAAC,EAAE,CAAC,IAAI,GAAG,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,EAAE,CAAC,IAAI,GAAG,IAAI,CAAC,GAAG,CAAC,EAAE,CAAA;IACvD,CAAC;IAED;;;;;OAKG;IACH,iDAAkB,GAAlB,UAAmB,QAAwB,EAAE,OAAiC;QACtE,IAAA,KAAsB,IAAI,CAAC,cAAc,CAAC,QAAQ,EAAE,OAAO,CAAC,EAA1D,SAAK,EAAL,CAAC,mBAAG,CAAC,KAAA,EAAE,SAAK,EAAL,CAAC,mBAAG,CAAC,KAAA,EAAE,CAAC,OAA2C,CAAA;QAC5D,IAAA,KAA6C,IAAI,CAAC,aAAa,CAAC,QAAQ,EAAE,OAAO,CAAC,EAAhF,YAAQ,EAAR,IAAI,mBAAG,CAAC,KAAA,EAAE,YAAQ,EAAR,IAAI,mBAAG,CAAC,KAAA,EAAE,YAAQ,EAAR,IAAI,mBAAG,CAAC,KAAA,EAAE,YAAQ,EAAR,IAAI,mBAAG,CAAC,KAA0C,CAAA;QACxF,IAAM,eAAe,GAAG,IAAA,eAAK,EAAC,IAAI,EAAE,IAAI,GAAG,CAAC,CAAC,CAAC,OAAO,CAAC,UAAC,CAAC,IAAK,OAAA,IAAA,eAAK,EAAC,IAAI,EAAE,IAAI,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,UAAC,CAAC,IAAK,OAAA,CAAC,EAAE,CAAC,GAAA,EAAE,CAAC,GAAA,EAAE,CAAC,EAAV,CAAU,CAAC,EAA5C,CAA4C,CAAC,CAAA;QACpG,IAAA,KAA2B,IAAI,CAAC,YAAY,CAAC,eAAe,CAAC,EAAxD,MAAM,OAAA,EAAK,MAAM,OAAuC,CAAA;QACnE,OAAO,EAAE,CAAC,EAAE,CAAC,GAAG,MAAM,EAAE,CAAC,EAAE,CAAC,GAAG,MAAM,EAAE,CAAC,GAAA,EAAE,CAAA;IAC5C,CAAC;IAED;;;;;OAKG;IACH,qDAAsB,GAAtB,UAAuB,QAAwB,EAAE,OAAiC;QAChF,IAAI,QAAQ,CAAC,CAAC,KAAK,SAAS,IAAI,QAAQ,CAAC,CAAC,KAAK,SAAS,EAAE;YACxD,OAAO,IAAI,CAAC,kBAAkB,CAAC,QAAQ,EAAE,OAAO,CAAC,CAAA;SAClD;QACK,IAAA,KAA2C,IAAI,CAAC,cAAc,CAAC,QAAQ,EAAE,OAAO,CAAC,EAA/E,SAAY,EAAT,KAAK,mBAAG,CAAC,KAAA,EAAE,SAAY,EAAT,KAAK,mBAAG,CAAC,KAAA,EAAK,KAAK,OAA2C,CAAA;QACjF,IAAA,KAAmB,IAAI,CAAC,kBAAkB,CAAC,QAAQ,CAAC,EAAlD,SAAK,EAAL,CAAC,mBAAG,CAAC,KAAA,EAAE,SAAK,EAAL,CAAC,mBAAG,CAAC,KAAsC,CAAA;QAC1D,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,EAAE,KAAK,EAAE,CAAA;IACjD,CAAC;IAED;;;;;OAKG;IACH,iDAAkB,GAAlB,UAAmB,WAAmC,EAAE,iBAA0C;QAA1C,kCAAA,EAAA,oBAAoB,IAAI,CAAC,iBAAiB;QAC1F,IAAA,KAAiB,WAAW,EAAvB,EAAL,CAAC,mBAAG,CAAC,KAAA,EAAE,KAAU,WAAW,EAAhB,EAAL,CAAC,mBAAG,CAAC,KAAA,CAAgB;QAClC,QAAQ,iBAAiB,EAAE;YACzB,KAAK,yBAAa,CAAC,KAAK,CAAC,CAAC;gBACxB,OAAO;oBACL,CAAC,EAAE,CAAC,CAAC,GAAG,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,GAAG,CAAC,GAAG,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,GAAG,IAAI,CAAC,KAAK;oBACzD,CAAC,EAAE,CAAC,GAAG,CAAC,GAAG,CAAC,GAAG,IAAI,CAAC,KAAK;iBAC1B,CAAA;aACF;YACD,KAAK,yBAAa,CAAC,IAAI,CAAC,CAAC;gBACvB,CAAC,IAAI,CAAC,CAAC,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,GAAG,CAAC,CAAC,GAAG,CAAC,CAAA;gBAC1B,OAAO;oBACL,CAAC,EAAE,CAAC,GAAG,CAAC,GAAG,CAAC,GAAG,IAAI,CAAC,KAAK;oBACzB,CAAC,EAAE,CAAC,GAAG,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,GAAG,IAAI,CAAC,KAAK;iBACjC,CAAA;aACF;YACD,KAAK,yBAAa,CAAC,KAAK,CAAC,CAAC;gBACxB,CAAC,IAAI,CAAC,CAAC,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,GAAG,CAAC,CAAC,GAAG,CAAC,CAAA;gBAC1B,OAAO;oBACL,CAAC,EAAE,CAAC,GAAG,CAAC,GAAG,CAAC,GAAG,IAAI,CAAC,KAAK;oBACzB,CAAC,EAAE,CAAC,GAAG,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,GAAG,IAAI,CAAC,KAAK;iBACjC,CAAA;aACF;YACD,KAAK,yBAAa,CAAC,IAAI,CAAC,CAAC;gBACvB,MAAM,IAAI,KAAK,CAAC,2CAA2C,CAAC,CAAA;aAC7D;YACD,KAAK,yBAAa,CAAC,KAAK,CAAC,CAAC;gBACxB,MAAM,IAAI,KAAK,CAAC,4CAA4C,CAAC,CAAA;aAC9D;SACF;IACH,CAAC;IAED;;;;;;OAMG;IACH,iDAAkB,GAAlB,UAAmB,IAAwB,EAAE,OAA6B;QAClE,IAAA,KAAsB,iBAAM,kBAAkB,YAAC,IAAI,EAAE,OAAO,CAAC,EAA3D,SAAK,EAAL,CAAC,mBAAG,CAAC,KAAA,EAAE,SAAK,EAAL,CAAC,mBAAG,CAAC,KAAA,EAAE,CAAC,OAA4C,CAAA;QACnE,IAAM,WAAW,GAAG,OAAO,CAAC,QAAQ,CAAC,OAAO,CAAC,IAAI,CAAC,CAAA;QAClD,IAAI,CAAC,WAAW,IAAI,CAAC,IAAA,iCAAoB,EAAU,WAAW,CAAC,EAAE;YAC/D,OAAO,EAAE,CAAC,GAAA,EAAE,CAAC,GAAA,EAAE,CAAC,GAAA,EAAE,CAAA;SACnB;QACD,IAAM,KAAK,GAAG,WAAW,CAAC,eAAe,CAAC,IAAI,EAAE,OAAO,CAAC,CAAA;QACxD,IAAM,SAAS,GAAG,IAAI,CAAC,YAAY,CAAC,KAAK,EAAE,WAAW,CAAC,iBAAiB,CAAC,CAAA;QACnE,IAAA,KAA2B,YAAY,CAAC,SAAS,EAAE,IAAI,CAAC,QAAQ,CAAC,QAAQ,GAAG,EAAE,CAAC,EAA1E,MAAM,OAAA,EAAK,MAAM,OAAyD,CAAA;QACrF,OAAO,EAAE,CAAC,EAAE,CAAC,GAAG,MAAM,EAAE,CAAC,EAAE,CAAC,GAAG,MAAM,EAAE,CAAC,GAAA,EAAE,CAAA;IAC5C,CAAC;IAED;;;;;OAKG;IACH,yCAAU,GAAV,UAAW,QAAwB,EAAE,QAAkC;;QACrE,OAAO,CAAC,MAAA,QAAQ,CAAC,QAAQ,mCAAI,CAAC,CAAC,GAAG,EAAE,CAAA;IACtC,CAAC;IAED;;OAEG;IACH,+CAAgB,GAAhB,UAAiB,KAA0B,EAAE,OAA6B;QACxE,IAAI,CAAC,IAAI,CAAC,mBAAmB,IAAI,IAAI,CAAC,mBAAmB,CAAC,iBAAiB,EAAE;YAC3E,OAAO,IAAA,kBAAQ,EAAC,KAAK,CAAC,GAAG,CAAC,UAAA,IAAI,IAAI,OAAC,IAAA,cAAI,EAAC,IAAI,CAAC,QAAQ,EAAE,CAAC,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,UAAU,CAAC,CAAoB,EAApE,CAAoE,CAAC,EAAE,iBAAO,CAAC,CAAA;SAClH;aAAM;YACL,OAAO,iBAAM,gBAAgB,YAAC,KAAK,EAAE,OAAO,CAAC,CAAA;SAC9C;IACH,CAAC;IAID;;OAEG;IACH,qDAAsB,GAAtB,UAAuB,QAAwB,EAAE,OAAwD;QACvG,IAAI,IAAI,CAAC,mBAAmB;YAAE,OAAO,IAAI,CAAC,mBAAmB,CAAA;QAC7D,IAAI,QAAQ,CAAC,CAAC,KAAK,SAAS,IAAI,QAAQ,CAAC,CAAC,KAAK,SAAS;YAAE,OAAO,iBAAM,sBAAsB,YAAC,QAAQ,EAAE,OAAO,CAAC,CAAA;QAC1G,IAAA,KAA6C,IAAI,CAAC,aAAa,CAAC,QAAQ,EAAE,OAAO,CAAC,EAAhF,YAAQ,EAAR,IAAI,mBAAG,CAAC,KAAA,EAAE,YAAQ,EAAR,IAAI,mBAAG,CAAC,KAAA,EAAE,YAAQ,EAAR,IAAI,mBAAG,CAAC,KAAA,EAAE,YAAQ,EAAR,IAAI,mBAAG,CAAC,KAA0C,CAAA;QACxF,IAAM,YAAY,GAAG,IAAI,CAAC,KAAK,GAAG,CAAC,CAAA;QACnC,QAAQ,IAAI,CAAC,iBAAiB,EAAE;YAC9B,KAAK,yBAAa,CAAC,KAAK,CAAC,CAAC;gBACxB,MAAM,IAAI,KAAK,CAAC,4CAA4C,CAAC,CAAA;aAC9D;YACD,KAAK,yBAAa,CAAC,IAAI,CAAC;YACxB,KAAK,yBAAa,CAAC,KAAK;gBACtB,OAAO,IAAI,uCAA0B,CAAC;oBACpC,KAAK,EAAE,CAAC,IAAI,GAAG,IAAI,GAAG,CAAC,CAAC,GAAG,CAAC,GAAG,CAAC,GAAG,IAAI,CAAC,KAAK;oBAC7C,MAAM,EAAE,CAAC,IAAI,GAAG,IAAI,GAAG,CAAC,CAAC,GAAG,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,GAAG,IAAI,CAAC,KAAK;oBACrD,YAAY,cAAA;iBACb,CAAC,CAAA;YACJ,KAAK,yBAAa,CAAC,IAAI,CAAC,CAAC;gBACvB,MAAM,IAAI,KAAK,CAAC,2CAA2C,CAAC,CAAA;aAC7D;YACD,KAAK,yBAAa,CAAC,KAAK,CAAC,CAAC;gBACxB,MAAM,IAAI,KAAK,CAAC,4CAA4C,CAAC,CAAA;aAC9D;SACF;IACH,CAAC;IACH,2BAAC;AAAD,CAAC,AAjMD,CAAoI,iBAAO,GAiM1I;AAjMqB,oDAAoB;AAmM1C,SAAS,YAAY,CAAC,MAAqB,EAAE,OAAe;IAC1D,IAAM,GAAG,GAAG,OAAO,GAAG,CAAC,IAAI,CAAC,EAAE,GAAG,GAAG,CAAC,CAAA;IACrC,IAAM,GAAG,GAAG,IAAI,CAAC,GAAG,CAAC,GAAG,CAAC,CAAA;IACzB,IAAM,GAAG,GAAG,IAAI,CAAC,GAAG,CAAC,GAAG,CAAC,CAAA;IACzB,OAAO;QACL,CAAC,EAAE,IAAI,CAAC,KAAK,CAAC,KAAK,GAAG,CAAC,MAAM,CAAC,CAAC,GAAG,GAAG,GAAG,MAAM,CAAC,CAAC,GAAG,GAAG,CAAC,CAAC,GAAG,KAAK;QAChE,CAAC,EAAE,IAAI,CAAC,KAAK,CAAC,KAAK,GAAG,CAAC,MAAM,CAAC,CAAC,GAAG,GAAG,GAAG,MAAM,CAAC,CAAC,GAAG,GAAG,CAAC,CAAC,GAAG,KAAK;KACjE,CAAA;AACH,CAAC"}
1
+ {"version":3,"file":"HexagonalGridLocator.js","sourceRoot":"","sources":["../../src/locators/HexagonalGridLocator.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@gamepark/react-game",
3
- "version": "6.35.7",
3
+ "version": "6.36.0",
4
4
  "description": "React components & tools to create a Board Game user interface for Game Park",
5
5
  "author": "Romain Fromi <romain@game-park.com> (https://game-park.com/)",
6
6
  "license": "ISC",
@@ -27,8 +27,8 @@
27
27
  "@fortawesome/free-solid-svg-icons": "^6.6.0",
28
28
  "@fortawesome/react-fontawesome": "^0.2.2",
29
29
  "@gamepark/avataaars": "~2.2.0",
30
- "@gamepark/react-client": "~6.35.5",
31
- "@gamepark/rules-api": "~6.35.5",
30
+ "@gamepark/react-client": "~6.36.0",
31
+ "@gamepark/rules-api": "~6.36.0",
32
32
  "dayjs": "^1.11.7",
33
33
  "emotion-normalize": "^11.0.1",
34
34
  "fscreen": "^1.2.0",