@gamepark/rules-api 6.24.3 → 6.26.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 (43) hide show
  1. package/dist/RandomMove.d.ts +3 -2
  2. package/dist/material/HiddenMaterialRules.d.ts +1 -1
  3. package/dist/material/HiddenMaterialRules.js +10 -13
  4. package/dist/material/HiddenMaterialRules.js.map +1 -1
  5. package/dist/material/MaterialGameSetup.js +1 -4
  6. package/dist/material/MaterialGameSetup.js.map +1 -1
  7. package/dist/material/MaterialRules.d.ts +8 -1
  8. package/dist/material/MaterialRules.js +14 -4
  9. package/dist/material/MaterialRules.js.map +1 -1
  10. package/dist/material/items/Material.d.ts +13 -6
  11. package/dist/material/items/Material.js +18 -6
  12. package/dist/material/items/Material.js.map +1 -1
  13. package/dist/material/items/MaterialDeck.d.ts +1 -1
  14. package/dist/material/items/MaterialDeck.js +2 -2
  15. package/dist/material/items/MaterialDeck.js.map +1 -1
  16. package/dist/material/items/MaterialMoney.d.ts +81 -0
  17. package/dist/material/items/MaterialMoney.js +288 -0
  18. package/dist/material/items/MaterialMoney.js.map +1 -0
  19. package/dist/material/items/MaterialMutator.js +3 -3
  20. package/dist/material/items/MaterialMutator.js.map +1 -1
  21. package/dist/material/items/index.d.ts +2 -1
  22. package/dist/material/items/index.js +3 -1
  23. package/dist/material/items/index.js.map +1 -1
  24. package/dist/material/rules/MaterialRulesPart.js +1 -2
  25. package/dist/material/rules/MaterialRulesPart.js.map +1 -1
  26. package/dist/utils/action-view.util.js +1 -1
  27. package/dist/utils/action-view.util.js.map +1 -1
  28. package/dist/utils/action.util.js +1 -1
  29. package/dist/utils/action.util.js.map +1 -1
  30. package/dist/utils/grid.hex.util.d.ts +115 -0
  31. package/dist/utils/grid.hex.util.js +197 -0
  32. package/dist/utils/grid.hex.util.js.map +1 -0
  33. package/dist/utils/grid.util.d.ts +9 -0
  34. package/dist/utils/index.d.ts +1 -0
  35. package/dist/utils/index.js +1 -0
  36. package/dist/utils/index.js.map +1 -1
  37. package/dist/utils/money.util.d.ts +1 -0
  38. package/dist/utils/money.util.js +1 -0
  39. package/dist/utils/money.util.js.map +1 -1
  40. package/dist/utils/random.util.d.ts +1 -8
  41. package/dist/utils/random.util.js +1 -16
  42. package/dist/utils/random.util.js.map +1 -1
  43. package/package.json +1 -1
@@ -5,13 +5,14 @@
5
5
  * Therefore, the move must be played and validated without the random output, then the random output must be processed and added to the move.
6
6
  * This interface must be implemented in order to add the random output to the moves that requires it.
7
7
  */
8
- export interface RandomMove<Move = any, RandomizedMove = any> {
8
+ export interface RandomMove<Move = any, RandomizedMove = any, PlayerId = any> {
9
9
  /**
10
10
  * Add the random output to a move when necessary
11
11
  * @param move A move just played that might need to be randomized
12
+ * @param playerId Id of the player that played the action
12
13
  * @returns the move with the random output (or unchanged move if it is not a random move)
13
14
  */
14
- randomize(move: Move): Move & RandomizedMove;
15
+ randomize(move: Move, playerId?: PlayerId): Move & RandomizedMove;
15
16
  /**
16
17
  * The signature of {@link Rules.play} changes a little bit: the moves are always randomized before they are played
17
18
  * @param move The move to execute, always randomized first
@@ -22,7 +22,7 @@ export declare abstract class HiddenMaterialRules<P extends number = number, M e
22
22
  * See {@link HidingStrategy}
23
23
  */
24
24
  abstract readonly hidingStrategies: Partial<Record<M, Partial<Record<L, HidingStrategy<P, L>>>>>;
25
- randomize(move: MaterialMove<P, M, L>): MaterialMove<P, M, L> & MaterialMoveRandomized<P, M, L>;
25
+ randomize(move: MaterialMove<P, M, L>, player?: P): MaterialMove<P, M, L> & MaterialMoveRandomized<P, M, L>;
26
26
  private isRevealingItemMove;
27
27
  /**
28
28
  * Items that can be hidden cannot merge by default, to prevent hidden items to merge only because they have no id.
@@ -62,9 +62,9 @@ var HiddenMaterialRules = /** @class */ (function (_super) {
62
62
  _this.client = client;
63
63
  return _this;
64
64
  }
65
- HiddenMaterialRules.prototype.randomize = function (move) {
66
- if (this.isRevealingItemMove(move)) {
67
- // We need to know if a MoveItem has revealed something to prevent the undo in that case.
65
+ HiddenMaterialRules.prototype.randomize = function (move, player) {
66
+ if (player !== undefined && this.isRevealingItemMove(move, player)) {
67
+ // We need to know if a MoveItem has revealed something to the player to prevent the undo in that case.
68
68
  // To know that, we need the position of the item before the move.
69
69
  // To prevent having to recalculate the game state before the move, we flag the move in the database with "reveal: {}".
70
70
  // This flag indicate that something was revealed to someone.
@@ -73,10 +73,9 @@ var HiddenMaterialRules = /** @class */ (function (_super) {
73
73
  }
74
74
  return _super.prototype.randomize.call(this, move);
75
75
  };
76
- HiddenMaterialRules.prototype.isRevealingItemMove = function (move) {
77
- var _this = this;
78
- return ((0, moves_1.isMoveItem)(move) && this.game.players.some(function (player) { return _this.moveItemWillRevealSomething(move, player); })) ||
79
- ((0, moves_1.isMoveItemsAtOnce)(move) && this.game.players.some(function (player) { return _this.moveAtOnceWillRevealSomething(move, player); }));
76
+ HiddenMaterialRules.prototype.isRevealingItemMove = function (move, player) {
77
+ return ((0, moves_1.isMoveItem)(move) && this.moveItemWillRevealSomething(move, player))
78
+ || ((0, moves_1.isMoveItemsAtOnce)(move) && this.moveAtOnceWillRevealSomething(move, player));
80
79
  };
81
80
  /**
82
81
  * Items that can be hidden cannot merge by default, to prevent hidden items to merge only because they have no id.
@@ -186,8 +185,6 @@ var HiddenMaterialRules = /** @class */ (function (_super) {
186
185
  return move;
187
186
  };
188
187
  HiddenMaterialRules.prototype.getMoveItemView = function (move, player) {
189
- if (!move.reveal)
190
- return move;
191
188
  var revealedPaths = this.getMoveItemRevealedPath(move, player);
192
189
  if (!revealedPaths.length)
193
190
  return move;
@@ -200,16 +197,16 @@ var HiddenMaterialRules = /** @class */ (function (_super) {
200
197
  return moveView;
201
198
  };
202
199
  HiddenMaterialRules.prototype.getMoveAtOnceView = function (move, player) {
203
- if (!move.reveal)
204
- return move;
205
- var moveView = __assign(__assign({}, move), { reveal: {} });
200
+ var moveView = __assign({}, move);
206
201
  for (var _i = 0, _a = move.indexes; _i < _a.length; _i++) {
207
202
  var index = _a[_i];
208
203
  var revealedPaths = this.getMoveAtOnceRevealedPath(move, index, player);
209
204
  if (!revealedPaths.length)
210
205
  continue;
211
- var item = this.material(move.itemType).getItem(index);
206
+ if (!moveView.reveal)
207
+ moveView.reveal = {};
212
208
  moveView.reveal[index] = {};
209
+ var item = this.material(move.itemType).getItem(index);
213
210
  for (var _b = 0, revealedPaths_2 = revealedPaths; _b < revealedPaths_2.length; _b++) {
214
211
  var path = revealedPaths_2[_b];
215
212
  (0, set_1.default)(moveView.reveal[index], path, (0, get_1.default)(item, path));
@@ -1 +1 @@
1
- {"version":3,"file":"HiddenMaterialRules.js","sourceRoot":"","sources":["../../src/material/HiddenMaterialRules.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"HiddenMaterialRules.js","sourceRoot":"","sources":["../../src/material/HiddenMaterialRules.ts"],"names":[],"mappings":"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"}
@@ -78,10 +78,7 @@ var MaterialGameSetup = /** @class */ (function () {
78
78
  */
79
79
  MaterialGameSetup.prototype.material = function (type) {
80
80
  var _this = this;
81
- if (!this.game.items[type])
82
- this.game.items[type] = [];
83
- var items = this.game.items[type];
84
- return new items_1.Material(type, Array.from(items.entries()).filter(function (entry) { return entry[1].quantity !== 0; }), function (move) { return _this.playMove(move); });
81
+ return new items_1.Material(type, this.game.items[type], function (move) { return _this.playMove(move); });
85
82
  };
86
83
  /**
87
84
  * Utility function to access the memory tool for the game or on player.
@@ -1 +1 @@
1
- {"version":3,"file":"MaterialGameSetup.js","sourceRoot":"","sources":["../../src/material/MaterialGameSetup.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"MaterialGameSetup.js","sourceRoot":"","sources":["../../src/material/MaterialGameSetup.ts"],"names":[],"mappings":"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"}
@@ -1,6 +1,7 @@
1
1
  import { Action } from '../Action';
2
2
  import { RandomMove } from '../RandomMove';
3
3
  import { PlayMoveContext, Rules } from '../Rules';
4
+ import { TimeLimit } from '../TimeLimit';
4
5
  import { Undo } from '../Undo';
5
6
  import { UnpredictableMoves } from '../UnpredictableMove';
6
7
  import { Material, MaterialMutator } from './items';
@@ -20,7 +21,7 @@ import { MaterialRulesPart, MaterialRulesPartCreator } from './rules';
20
21
  * @typeparam MaterialType - Numeric enum of the types of material manipulated in the game
21
22
  * @typeparam LocationType - Numeric enum of the types of location in the game where the material can be located
22
23
  */
23
- export declare abstract class MaterialRules<Player extends number = number, MaterialType extends number = number, LocationType extends number = number> extends Rules<MaterialGame<Player, MaterialType, LocationType>, MaterialMove<Player, MaterialType, LocationType>, Player> implements RandomMove<MaterialMove<Player, MaterialType, LocationType>, MaterialMoveRandomized<Player, MaterialType, LocationType>>, Undo<MaterialMove<Player, MaterialType, LocationType>, Player>, UnpredictableMoves<MaterialMove<Player, MaterialType, LocationType>> {
24
+ export declare abstract class MaterialRules<Player extends number = number, MaterialType extends number = number, LocationType extends number = number> extends Rules<MaterialGame<Player, MaterialType, LocationType>, MaterialMove<Player, MaterialType, LocationType>, Player> implements RandomMove<MaterialMove<Player, MaterialType, LocationType>, MaterialMoveRandomized<Player, MaterialType, LocationType>, Player>, Undo<MaterialMove<Player, MaterialType, LocationType>, Player>, UnpredictableMoves<MaterialMove<Player, MaterialType, LocationType>>, TimeLimit<MaterialGame<Player, MaterialType, LocationType>, MaterialMove<Player, MaterialType, LocationType>, Player> {
24
25
  /**
25
26
  * When you implement a game using the "material" approach, you are also strongly advised to split the rules of the game into many small parts.
26
27
  * You should usually create a numeric enum class "RuleId" that will list all those small parts.
@@ -154,6 +155,12 @@ export declare abstract class MaterialRules<Player extends number = number, Mate
154
155
  * @returns true if game is over
155
156
  */
156
157
  isOver(): boolean;
158
+ /**
159
+ * Amount of time given to a player everytime it is their turn to play.
160
+ * @param playerId Id of the player, if you want to give different time depending on the id for asymmetric games.
161
+ * @return number of seconds to add to the player's clock
162
+ */
163
+ giveTime(playerId: Player): number;
157
164
  }
158
165
  /**
159
166
  * Signature interface of the constructor of a class that implements MaterialRules
@@ -33,6 +33,7 @@ exports.MaterialRules = void 0;
33
33
  var random_1 = __importDefault(require("lodash/random"));
34
34
  var shuffle_1 = __importDefault(require("lodash/shuffle"));
35
35
  var Rules_1 = require("../Rules");
36
+ var TimeLimit_1 = require("../TimeLimit");
36
37
  var items_1 = require("./items");
37
38
  var memory_1 = require("./memory");
38
39
  var moves_1 = require("./moves");
@@ -68,8 +69,7 @@ var MaterialRules = /** @class */ (function (_super) {
68
69
  * @returns a Material instance to manipulate all the material of that type in current game state.
69
70
  */
70
71
  MaterialRules.prototype.material = function (type) {
71
- var _a;
72
- return new items_1.Material(type, Array.from(((_a = this.game.items[type]) !== null && _a !== void 0 ? _a : []).entries()).filter(function (entry) { return entry[1].quantity !== 0; }));
72
+ return new items_1.Material(type, this.game.items[type]);
73
73
  };
74
74
  Object.defineProperty(MaterialRules.prototype, "players", {
75
75
  /**
@@ -131,8 +131,9 @@ var MaterialRules = /** @class */ (function (_super) {
131
131
  * @returns a MaterialMutator to change the state of the items
132
132
  */
133
133
  MaterialRules.prototype.mutator = function (type) {
134
- var _a;
135
- return new items_1.MaterialMutator(type, (_a = this.game.items[type]) !== null && _a !== void 0 ? _a : [], this.locationsStrategies[type], this.itemsCanMerge(type));
134
+ if (!this.game.items[type])
135
+ this.game.items[type] = [];
136
+ return new items_1.MaterialMutator(type, this.game.items[type], this.locationsStrategies[type], this.itemsCanMerge(type));
136
137
  };
137
138
  /**
138
139
  * Items can sometime be stored with a quantity (for example, coins).
@@ -344,6 +345,15 @@ var MaterialRules = /** @class */ (function (_super) {
344
345
  MaterialRules.prototype.isOver = function () {
345
346
  return !this.game.rule;
346
347
  };
348
+ /**
349
+ * Amount of time given to a player everytime it is their turn to play.
350
+ * @param playerId Id of the player, if you want to give different time depending on the id for asymmetric games.
351
+ * @return number of seconds to add to the player's clock
352
+ */
353
+ MaterialRules.prototype.giveTime = function (playerId) {
354
+ var rule = this.rulesStep;
355
+ return rule && (0, TimeLimit_1.hasTimeLimit)(rule) ? rule.giveTime(playerId) : 60;
356
+ };
347
357
  return MaterialRules;
348
358
  }(Rules_1.Rules));
349
359
  exports.MaterialRules = MaterialRules;
@@ -1 +1 @@
1
- {"version":3,"file":"MaterialRules.js","sourceRoot":"","sources":["../../src/material/MaterialRules.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"MaterialRules.js","sourceRoot":"","sources":["../../src/material/MaterialRules.ts"],"names":[],"mappings":"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"}
@@ -1,8 +1,8 @@
1
1
  import { Location } from '../location';
2
2
  import { CreateItem, CreateItemsAtOnce, DeleteItem, DeleteItemsAtOnce, ItemMove, MoveItem, MoveItemsAtOnce, RollItem, SelectItem, Shuffle } from '../moves';
3
- import { MaterialDeck } from './MaterialDeck';
3
+ import { MaterialDeck, MaterialMoney } from './index';
4
4
  import { MaterialItem } from './MaterialItem';
5
- type ItemEntry<P extends number = number, L extends number = number> = [number, MaterialItem<P, L>];
5
+ export type ItemEntry<P extends number = number, L extends number = number> = [number, MaterialItem<P, L>];
6
6
  /**
7
7
  * The Material class is the core helper class that help manipulate the game items in a simple way.
8
8
  * It includes two kind of functions: functions to filter items, and functions to build {@link ItemMove} objects.
@@ -14,15 +14,17 @@ type ItemEntry<P extends number = number, L extends number = number> = [number,
14
14
  */
15
15
  export declare class Material<P extends number = number, M extends number = number, L extends number = number> {
16
16
  readonly type: M;
17
- readonly entries: ItemEntry<P, L>[];
17
+ protected items: MaterialItem<P, L>[];
18
18
  protected readonly processMove?: ((move: ItemMove<P, M, L>) => void) | undefined;
19
+ entries: ItemEntry<P, L>[];
19
20
  /**
20
21
  * Construct a new Material helper instance
21
22
  * @param {number} type Type of items this instance will work on
22
- * @param {ItemEntry[]} entries The list of items to work on. Each entry consists of an array with the index of the item, and the item
23
+ * @param {MaterialItem[]} items The complete list of items of this type in current game state.
23
24
  * @param {function} processMove if provided, this function will be executed on every move created with this instance
25
+ * @param {ItemEntry[]} entries The list of items to work on. Each entry consists of an array with the index of the item, and the item
24
26
  */
25
- constructor(type: M, entries: ItemEntry<P, L>[], processMove?: ((move: ItemMove<P, M, L>) => void) | undefined);
27
+ constructor(type: M, items?: MaterialItem<P, L>[], processMove?: ((move: ItemMove<P, M, L>) => void) | undefined, entries?: ItemEntry<P, L>[]);
26
28
  /**
27
29
  * Helper function to return a new instance of the same class (works also for children class)
28
30
  * @param {ItemEntry[]} entries Filtered entries for the new class
@@ -303,5 +305,10 @@ export declare class Material<P extends number = number, M extends number = numb
303
305
  * @param selector The sort to apply on the deck. See {@link sort}. Defaults to -item.location.x
304
306
  */
305
307
  deck(selector?: (item: MaterialItem<P, L>) => number): MaterialDeck<P, M, L>;
308
+ /**
309
+ * Return a new {@link MaterialMoney} helper class, to deal with moving money units easily.
310
+ *
311
+ * @param units The different units that exists in stock to count this money
312
+ */
313
+ money<Unit extends number>(units: Unit[]): MaterialMoney<P, M, L, Unit>;
306
314
  }
307
- export {};
@@ -32,7 +32,7 @@ var minBy_1 = __importDefault(require("lodash/minBy"));
32
32
  var orderBy_1 = __importDefault(require("lodash/orderBy"));
33
33
  var sumBy_1 = __importDefault(require("lodash/sumBy"));
34
34
  var moves_1 = require("../moves");
35
- var MaterialDeck_1 = require("./MaterialDeck");
35
+ var index_1 = require("./index");
36
36
  /**
37
37
  * The Material class is the core helper class that help manipulate the game items in a simple way.
38
38
  * It includes two kind of functions: functions to filter items, and functions to build {@link ItemMove} objects.
@@ -46,13 +46,17 @@ var Material = /** @class */ (function () {
46
46
  /**
47
47
  * Construct a new Material helper instance
48
48
  * @param {number} type Type of items this instance will work on
49
- * @param {ItemEntry[]} entries The list of items to work on. Each entry consists of an array with the index of the item, and the item
49
+ * @param {MaterialItem[]} items The complete list of items of this type in current game state.
50
50
  * @param {function} processMove if provided, this function will be executed on every move created with this instance
51
+ * @param {ItemEntry[]} entries The list of items to work on. Each entry consists of an array with the index of the item, and the item
51
52
  */
52
- function Material(type, entries, processMove) {
53
+ function Material(type, items, processMove, entries) {
54
+ if (items === void 0) { items = []; }
55
+ if (entries === void 0) { entries = Array.from(items.entries()).filter(function (entry) { return entry[1].quantity !== 0; }); }
53
56
  this.type = type;
54
- this.entries = entries;
57
+ this.items = items;
55
58
  this.processMove = processMove;
59
+ this.entries = entries;
56
60
  }
57
61
  /**
58
62
  * Helper function to return a new instance of the same class (works also for children class)
@@ -62,7 +66,7 @@ var Material = /** @class */ (function () {
62
66
  */
63
67
  Material.prototype.new = function (entries) {
64
68
  var Class = this.constructor;
65
- return new Class(this.type, entries, this.processMove);
69
+ return new Class(this.type, this.items, this.processMove, entries);
66
70
  };
67
71
  /**
68
72
  * Use this function to collect all the items in the current Material instance.
@@ -619,7 +623,15 @@ var Material = /** @class */ (function () {
619
623
  */
620
624
  Material.prototype.deck = function (selector) {
621
625
  if (selector === void 0) { selector = function (item) { return -item.location.x; }; }
622
- return new MaterialDeck_1.MaterialDeck(this.type, this.entries, this.processMove).sort(selector);
626
+ return new index_1.MaterialDeck(this.type, this.items, this.processMove, this.entries).sort(selector);
627
+ };
628
+ /**
629
+ * Return a new {@link MaterialMoney} helper class, to deal with moving money units easily.
630
+ *
631
+ * @param units The different units that exists in stock to count this money
632
+ */
633
+ Material.prototype.money = function (units) {
634
+ return new index_1.MaterialMoney(this.type, units, this.items, this.processMove, this.entries);
623
635
  };
624
636
  return Material;
625
637
  }());
@@ -1 +1 @@
1
- {"version":3,"file":"Material.js","sourceRoot":"","sources":["../../../src/material/items/Material.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,2DAAoC;AACpC,uDAAgC;AAChC,uDAAgC;AAChC,2DAAoC;AACpC,uDAAgC;AAEhC,kCAaiB;AACjB,+CAA6C;AAK7C;;;;;;;;GAQG;AACH;IAEE;;;;;OAKG;IACH,kBACW,IAAO,EACP,OAA0B,EAChB,WAA+C;QAFzD,SAAI,GAAJ,IAAI,CAAG;QACP,YAAO,GAAP,OAAO,CAAmB;QAChB,gBAAW,GAAX,WAAW,CAAoC;IACpE,CAAC;IAED;;;;;OAKG;IACO,sBAAG,GAAb,UAAc,OAA0B;QACtC,IAAM,KAAK,GAAG,IAAI,CAAC,WAAiH,CAAA;QACpI,OAAO,IAAI,KAAK,CAAC,IAAI,CAAC,IAAI,EAAE,OAAO,EAAE,IAAI,CAAC,WAAW,CAAC,CAAA;IACxD,CAAC;IAED;;;;;;;OAOG;IACH,2BAAQ,GAAR,UAAmB,SAAqD;QACtE,IAAM,KAAK,GAAG,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,UAAA,KAAK,IAAI,OAAA,KAAK,CAAC,CAAC,CAAC,EAAR,CAAQ,CAAC,CAAA;QACjD,OAAO,SAAS,CAAC,CAAC,CAAC,KAAK,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,KAAK,CAAA;IACpD,CAAC;IAmBD;;;;;;OAMG;IACH,0BAAO,GAAP,UAAkB,GAA0D;QAC1E,IAAI,OAAO,GAAG,KAAK,QAAQ,EAAE,CAAC;YAC5B,IAAM,KAAK,GAAG,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,UAAA,KAAK,IAAI,OAAA,KAAK,CAAC,CAAC,CAAC,KAAK,GAAG,EAAhB,CAAgB,CAAC,CAAA;YAC1D,IAAI,CAAC,KAAK;gBAAE,MAAM,IAAI,KAAK,CAAC,6CAAsC,GAAG,CAAE,CAAC,CAAA;YACxE,OAAO,KAAK,CAAC,CAAC,CAAC,CAAA;QACjB,CAAC;aAAM,IAAI,OAAO,GAAG,KAAK,UAAU,EAAE,CAAC;YACrC,IAAM,OAAO,GAAG,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,UAAC,EAAQ;oBAAL,IAAI,QAAA;gBAAM,OAAA,GAAG,CAAC,IAAI,CAAC;YAAT,CAAS,CAAC,CAAA;YAC5D,OAAO,OAAO,CAAC,MAAM,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,SAAS,CAAA;QACnD,CAAC;aAAM,CAAC;YACN,OAAO,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,SAAS,CAAA;QAC7D,CAAC;IACH,CAAC;IAED;;OAEG;IACH,2BAAQ,GAAR;;QACE,OAAO,MAAA,MAAA,IAAI,CAAC,OAAO,CAAC,CAAC,CAAC,0CAAG,CAAC,CAAC,mCAAI,CAAC,CAAC,CAAA;IACnC,CAAC;IAED;;OAEG;IACH,6BAAU,GAAV;QACE,OAAO,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,UAAA,KAAK,IAAI,OAAA,KAAK,CAAC,CAAC,CAAC,EAAR,CAAQ,CAAC,CAAA;IAC5C,CAAC;IAED;;;OAGG;IACH,wBAAK,GAAL,UAAM,GAAsD;QAC1D,QAAQ,OAAO,GAAG,EAAE,CAAC;YACnB,KAAK,UAAU;gBACb,OAAO,IAAI,CAAC,MAAM,CAAC,UAAC,CAAC,EAAE,KAAK,IAAK,OAAA,GAAG,CAAC,KAAK,CAAC,EAAV,CAAU,CAAC,CAAA;YAC9C,KAAK,QAAQ;gBACX,IAAM,IAAI,GAAG,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,UAAC,EAAO;wBAAN,KAAK,QAAA;oBAAM,OAAA,KAAK,KAAK,GAAG;gBAAb,CAAa,CAAC,CAAA;gBAC1D,OAAO,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAA;YACrC,KAAK,WAAW;gBACd,OAAO,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,CAAA;YACrB;gBACE,IAAM,KAAK,GAAG,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,UAAC,EAAG;wBAAF,CAAC,QAAA;oBAAM,OAAA,GAAG,CAAC,QAAQ,CAAC,CAAC,CAAC;gBAAf,CAAe,CAAC,CAAA;gBAC3D,OAAO,IAAI,CAAC,GAAG,CAAC,KAAK,CAAC,CAAA;QAC1B,CAAC;IACH,CAAC;IAED;;OAEG;IACH,0BAAO,GAAP,UAAQ,OAAiB;QACvB,IAAM,KAAK,GAAG,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,UAAC,EAAG;gBAAF,CAAC,QAAA;YAAM,OAAA,OAAO,CAAC,QAAQ,CAAC,CAAC,CAAC;QAAnB,CAAmB,CAAC,CAAA;QAC/D,OAAO,IAAI,CAAC,GAAG,CAAC,KAAK,CAAC,CAAA;IACxB,CAAC;IAKD,sBAAI,4BAAM;QAHV;;WAEG;aACH;YACE,OAAO,IAAI,CAAC,OAAO,CAAC,MAAM,CAAA;QAC5B,CAAC;;;OAAA;IAED;;OAEG;IACH,8BAAW,GAAX;QACE,OAAO,IAAA,eAAK,EAAC,IAAI,CAAC,OAAO,EAAE,UAAC,EAAQ;;gBAAL,IAAI,QAAA;YAAM,OAAA,MAAA,IAAI,CAAC,QAAQ,mCAAI,CAAC,CAAA;SAAA,CAAC,CAAA;IAC9D,CAAC;IAED;;;;;;;OAOG;IACH,yBAAM,GAAN,UAAO,SAA+D;QACpE,OAAO,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,UAAC,EAAa;gBAAZ,KAAK,QAAA,EAAE,IAAI,QAAA;YAAM,OAAA,SAAS,CAAC,IAAI,EAAE,KAAK,CAAC;QAAtB,CAAsB,CAAC,CAAC,CAAA;IACjF,CAAC;IAED;;;;;OAKG;IACH,qBAAE,GAAF,UAAiE,GAAgC;QAC/F,OAAO,IAAI,CAAC,MAAM,CAAC,UAAC,EAAM;gBAAJ,EAAE,QAAA;YAAO,OAAA,OAAO,GAAG,KAAK,UAAU,CAAC,CAAC,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,IAAA,iBAAO,EAAC,EAAE,EAAE,GAAG,CAAC;QAAtD,CAAsD,CAAC,CAAA;IACxF,CAAC;IAED;;;;;OAKG;IACH,2BAAQ,GAAR,UAAS,GAAgD;QACvD,OAAO,IAAI,CAAC,MAAM,CAAC,UAAC,EAAY;gBAAV,QAAQ,cAAA;YAAO,OAAA,OAAO,GAAG,KAAK,UAAU,CAAC,CAAC,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,IAAI,KAAK,GAAG;QAAjE,CAAiE,CAAC,CAAA;IACzG,CAAC;IAED;;;;;OAKG;IACH,2BAAQ,GAAR,UAAgF,GAAoC;QAClH,OAAO,IAAI,CAAC,QAAQ,CAAC,UAAC,EAAY;gBAAV,QAAQ,cAAA;YAAO,OAAA,OAAO,GAAG,KAAK,UAAU,CAAC,CAAC,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,IAAA,iBAAO,EAAC,QAAQ,EAAE,GAAG,CAAC;QAAlE,CAAkE,CAAC,CAAA;IAC5G,CAAC;IAED;;;;;OAKG;IACH,yBAAM,GAAN,UAAO,GAAmC;QACxC,OAAO,IAAI,CAAC,QAAQ,CAAC,UAAC,EAAU;gBAAR,MAAM,YAAA;YAAO,OAAA,OAAO,GAAG,KAAK,UAAU,CAAC,CAAC,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,MAAM,KAAK,GAAG;QAAxD,CAAwD,CAAC,CAAA;IAChG,CAAC;IAED;;;;;OAKG;IACH,6BAAU,GAAV,UAAmF,GAA+B;QAChH,OAAO,IAAI,CAAC,QAAQ,CAAC,UAAC,EAAM;gBAAJ,EAAE,QAAA;YAAO,OAAA,OAAO,GAAG,KAAK,UAAU,CAAC,CAAC,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,IAAA,iBAAO,EAAC,EAAE,EAAE,GAAG,CAAC;QAAtD,CAAsD,CAAC,CAAA;IAC1F,CAAC;IAED;;;;;OAKG;IACH,yBAAM,GAAN,UAAO,GAA6C;QAClD,OAAO,IAAI,CAAC,QAAQ,CAAC,UAAC,EAAU;gBAAR,MAAM,YAAA;YAAO,OAAA,OAAO,GAAG,KAAK,UAAU,CAAC,CAAC,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,IAAA,iBAAO,EAAC,MAAM,EAAE,GAAG,CAAC;QAA9D,CAA8D,CAAC,CAAA;IACtG,CAAC;IAED;;;;;OAKG;IACH,2BAAQ,GAAR,UAAS,QAAiC;QAAjC,yBAAA,EAAA,eAAiC;QACxC,OAAO,IAAI,CAAC,MAAM,CAAC,UAAA,IAAI,YAAI,OAAA,CAAC,MAAA,IAAI,CAAC,QAAQ,mCAAI,KAAK,CAAC,KAAK,QAAQ,CAAA,EAAA,CAAC,CAAA;IACnE,CAAC;IAED;;;;;;OAMG;IACH,wBAAK,GAAL,UAAM,QAA8C;QAClD,IAAM,GAAG,GAAG,IAAA,eAAK,EAAC,IAAI,CAAC,OAAO,EAAE,UAAA,KAAK,IAAI,OAAA,QAAQ,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,EAAlB,CAAkB,CAAC,CAAA;QAC5D,OAAO,IAAI,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAA;IACnC,CAAC;IAED;;;;;;OAMG;IACH,wBAAK,GAAL,UAAM,QAA8C;QAClD,IAAM,GAAG,GAAG,IAAA,eAAK,EAAC,IAAI,CAAC,OAAO,EAAE,UAAA,KAAK,IAAI,OAAA,QAAQ,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,EAAlB,CAAkB,CAAC,CAAA;QAC5D,OAAO,IAAI,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAA;IACnC,CAAC;IAED;;;;;;OAMG;IACH,uBAAI,GAAJ;QAAK,mBAAsD;aAAtD,UAAsD,EAAtD,qBAAsD,EAAtD,IAAsD;YAAtD,8BAAsD;;QACzD,IAAI,YAAY,GAAG,IAAA,iBAAO,EAAC,IAAI,CAAC,OAAO,EAAE,SAAS,CAAC,GAAG,CAAC,UAAC,CAAC,IAAK,OAAA,UAAC,KAAK,IAAK,OAAA,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,EAAX,CAAW,EAAtB,CAAsB,CAAC,CAAC,CAAA;QACtF,OAAO,IAAI,CAAC,GAAG,CAAC,YAAY,CAAC,CAAA;IAC/B,CAAC;IAED;;;;;;;OAOG;IACH,wBAAK,GAAL,UAAM,KAAa;QACjB,OAAO,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,EAAE,KAAK,CAAC,CAAC,CAAA;IAC/C,CAAC;IAEO,0BAAO,GAAf,UAA6C,KAAU;QACrD,IAAI,IAAI,CAAC,WAAW,EAAE,CAAC;YACrB,KAAmB,UAAK,EAAL,eAAK,EAAL,mBAAK,EAAL,IAAK,EAAE,CAAC;gBAAtB,IAAM,IAAI,cAAA;gBACb,IAAI,CAAC,WAAW,CAAC,IAAI,CAAC,CAAA;YACxB,CAAC;QACH,CAAC;QACD,OAAO,KAAK,CAAA;IACd,CAAC;IAED;;;;OAIG;IACH,6BAAU,GAAV,UAAW,IAAwB;QACjC,OAAO,IAAI,CAAC,WAAW,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC,CAAA;IACpC,CAAC;IAED;;;;OAIG;IACH,8BAAW,GAAX,UAAY,KAA2B;QAAvC,iBAOC;QANC,OAAO,IAAI,CAAC,OAAO,CAAC,KAAK,CAAC,GAAG,CAAC,UAAA,IAAI,IAAI,OAAA,CAAC;YACrC,IAAI,EAAE,gBAAQ,CAAC,QAAQ;YACvB,IAAI,EAAE,oBAAY,CAAC,MAAM;YACzB,QAAQ,EAAE,KAAI,CAAC,IAAI;YACnB,IAAI,MAAA;SACL,CAAC,EALoC,CAKpC,CAAC,CAAC,CAAA;IACN,CAAC;IAED;;;;OAIG;IACH,oCAAiB,GAAjB,UAAkB,KAA2B;QAC3C,IAAM,IAAI,GAA+B,EAAE,IAAI,EAAE,gBAAQ,CAAC,QAAQ,EAAE,IAAI,EAAE,oBAAY,CAAC,YAAY,EAAE,QAAQ,EAAE,IAAI,CAAC,IAAI,EAAE,KAAK,OAAA,EAAE,CAAA;QACjI,OAAO,IAAI,CAAC,OAAO,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC,CAAA;IAChC,CAAC;IAED;;;;;OAKG;IACH,6BAAU,GAAV,UAAW,QAAiB;QAC1B,QAAQ,IAAI,CAAC,MAAM,EAAE,CAAC;YACpB,KAAK,CAAC;gBACJ,MAAM,IAAI,KAAK,CAAC,uDAAuD,CAAC,CAAA;YAC1E,KAAK,CAAC;gBACJ,OAAO,IAAI,CAAC,WAAW,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAA;YACtC;gBACE,OAAO,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,WAAW,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAA;QACjD,CAAC;IACH,CAAC;IAED;;;;;OAKG;IACH,8BAAW,GAAX,UAAY,QAAiB;QAA7B,iBAWC;QAVC,OAAO,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,UAAA,KAAK;YACxC,IAAM,IAAI,GAAkB;gBAC1B,IAAI,EAAE,gBAAQ,CAAC,QAAQ;gBACvB,IAAI,EAAE,oBAAY,CAAC,MAAM;gBACzB,QAAQ,EAAE,KAAI,CAAC,IAAI;gBACnB,SAAS,EAAE,KAAK,CAAC,CAAC,CAAC;aACpB,CAAA;YACD,IAAI,QAAQ;gBAAE,IAAI,CAAC,QAAQ,GAAG,QAAQ,CAAA;YACtC,OAAO,IAAI,CAAA;QACb,CAAC,CAAC,CAAC,CAAA;IACL,CAAC;IAED;;;;OAIG;IACH,oCAAiB,GAAjB;QACE,IAAM,KAAK,GAAyB,EAAE,IAAI,EAAE,gBAAQ,CAAC,QAAQ,EAAE,IAAI,EAAE,oBAAY,CAAC,YAAY,EAAE,QAAQ,EAAE,IAAI,CAAC,IAAI,EAAE,OAAO,EAAE,IAAI,CAAC,UAAU,EAAE,EAAE,CAAA;QACjJ,OAAO,IAAI,CAAC,OAAO,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,CAAA;IACjC,CAAC;IAED;;;;;;OAMG;IACH,2BAAQ,GAAR,UAAS,QAAyE,EAAE,QAAiB;QACnG,QAAQ,IAAI,CAAC,MAAM,EAAE,CAAC;YACpB,KAAK,CAAC;gBACJ,MAAM,IAAI,KAAK,CAAC,qDAAqD,CAAC,CAAA;YACxE,KAAK,CAAC;gBACJ,OAAO,IAAI,CAAC,SAAS,CAAC,QAAQ,EAAE,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAA;YAC9C;gBACE,OAAO,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC,QAAQ,EAAE,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAA;QACzD,CAAC;IACH,CAAC;IAED;;;;;;OAMG;IACH,4BAAS,GAAT,UAAU,QAA0G,EAAE,QAAiB;QAAvI,iBAcC;QAbC,IAAM,WAAW,GAAG,OAAO,QAAQ,KAAK,UAAU,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,cAAM,OAAA,QAAQ,EAAR,CAAQ,CAAA;QAC9E,OAAO,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,UAAA,KAAK;YACxC,IAAM,QAAQ,GAAG,WAAW,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,KAAK,CAAC,CAAC,CAAC,CAAC,CAAA;YAChD,IAAM,IAAI,GAAsB;gBAC9B,IAAI,EAAE,gBAAQ,CAAC,QAAQ;gBACvB,IAAI,EAAE,oBAAY,CAAC,IAAI;gBACvB,QAAQ,EAAE,KAAI,CAAC,IAAI;gBACnB,SAAS,EAAE,KAAK,CAAC,CAAC,CAAC;gBACnB,QAAQ,UAAA;aACT,CAAA;YACD,IAAI,QAAQ;gBAAE,IAAI,CAAC,QAAQ,GAAG,QAAQ,CAAA;YACtC,OAAO,IAAI,CAAA;QACb,CAAC,CAAC,CAAC,CAAA;IACL,CAAC;IAED;;;;;OAKG;IACH,kCAAe,GAAf,UAAgB,QAAiC;QAC/C,IAAM,IAAI,GAA6B;YACrC,IAAI,EAAE,gBAAQ,CAAC,QAAQ;YACvB,IAAI,EAAE,oBAAY,CAAC,UAAU;YAC7B,QAAQ,EAAE,IAAI,CAAC,IAAI;YACnB,OAAO,EAAE,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,UAAC,EAAO;oBAAN,KAAK,QAAA;gBAAM,OAAA,KAAK;YAAL,CAAK,CAAC;YAC7C,QAAQ,UAAA;SACT,CAAA;QAED,OAAO,IAAI,CAAC,OAAO,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC,CAAA;IAChC,CAAC;IAED;;;;;OAKG;IACH,6BAAU,GAAV,UAAW,QAAiB;QAC1B,QAAQ,IAAI,CAAC,MAAM,EAAE,CAAC;YACpB,KAAK,CAAC;gBACJ,MAAM,IAAI,KAAK,CAAC,uDAAuD,CAAC,CAAA;YAC1E,KAAK,CAAC;gBACJ,OAAO,IAAI,CAAC,WAAW,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAA;YACtC;gBACE,OAAO,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,WAAW,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAA;QACjD,CAAC;IACH,CAAC;IAED;;;;;OAKG;IACH,8BAAW,GAAX,UAAY,QAAiB;QAA7B,iBAWC;QAVC,OAAO,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,UAAA,KAAK;YACxC,IAAM,IAAI,GAAkB;gBAC1B,IAAI,EAAE,gBAAQ,CAAC,QAAQ;gBACvB,IAAI,EAAE,oBAAY,CAAC,MAAM;gBACzB,QAAQ,EAAE,KAAI,CAAC,IAAI;gBACnB,SAAS,EAAE,KAAK,CAAC,CAAC,CAAC;aACpB,CAAA;YACD,IAAI,QAAQ;gBAAE,IAAI,CAAC,QAAQ,GAAG,QAAQ,CAAA;YACtC,OAAO,IAAI,CAAA;QACb,CAAC,CAAC,CAAC,CAAA;IACL,CAAC;IAED;;;;;OAKG;IACH,+BAAY,GAAZ,UAAa,QAAiB;QAC5B,QAAQ,IAAI,CAAC,MAAM,EAAE,CAAC;YACpB,KAAK,CAAC;gBACJ,MAAM,IAAI,KAAK,CAAC,uDAAuD,CAAC,CAAA;YAC1E,KAAK,CAAC;gBACJ,OAAO,IAAI,CAAC,aAAa,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAA;YACxC;gBACE,OAAO,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,aAAa,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAA;QACnD,CAAC;IACH,CAAC;IAED;;;;;OAKG;IACH,gCAAa,GAAb,UAAc,QAAiB;QAA/B,iBAYC;QAXC,OAAO,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,UAAA,KAAK;YACxC,IAAM,IAAI,GAAkB;gBAC1B,IAAI,EAAE,gBAAQ,CAAC,QAAQ;gBACvB,IAAI,EAAE,oBAAY,CAAC,MAAM;gBACzB,QAAQ,EAAE,KAAI,CAAC,IAAI;gBACnB,SAAS,EAAE,KAAK,CAAC,CAAC,CAAC;gBACnB,QAAQ,EAAE,KAAK;aAChB,CAAA;YACD,IAAI,QAAQ;gBAAE,IAAI,CAAC,QAAQ,GAAG,QAAQ,CAAA;YACtC,OAAO,IAAI,CAAA;QACb,CAAC,CAAC,CAAC,CAAA;IACL,CAAC;IAED;;;;;;;OAOG;IACH,6BAAU,GAAV,UACE,GAA2C;QAE3C,QAAQ,IAAI,CAAC,MAAM,EAAE,CAAC;YACpB,KAAK,CAAC;gBACJ,MAAM,IAAI,KAAK,CAAC,uDAAuD,CAAC,CAAA;YAC1E,KAAK,CAAC;gBACJ,OAAO,IAAI,CAAC,WAAW,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAA;YACjC;gBACE,OAAO,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,WAAW,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAA;QAC5C,CAAC;IACH,CAAC;IAED;;;;;;;OAOG;IACH,8BAAW,GAAX,UACE,GAAuD;QAEvD,OAAO,IAAI,CAAC,SAAS,CAAC,UAAA,IAAI;YACxB,IAAM,QAAQ,GAAG,OAAO,GAAG,KAAK,UAAU,CAAC,CAAC,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,GAAG,CAAA;YAC5D,IAAM,KAAyC,IAAI,CAAC,QAAQ,EAA1C,WAAW,cAAA,EAAK,QAAQ,cAApC,YAAsC,CAAgB,CAAA;YAC5D,OAAO,QAAQ,KAAK,SAAS,CAAC,CAAC,CAAC,uBAAM,QAAQ,KAAE,QAAQ,UAAA,IAAG,CAAC,CAAC,CAAC,QAAQ,CAAA;QACxE,CAAC,CAAC,CAAA;IACJ,CAAC;IAED;;;OAGG;IACH,0BAAO,GAAP;QACE,OAAO,IAAI,CAAC,OAAO,CAAC,CAAC;gBACnB,IAAI,EAAE,gBAAQ,CAAC,QAAQ;gBACvB,IAAI,EAAE,oBAAY,CAAC,OAAO;gBAC1B,QAAQ,EAAE,IAAI,CAAC,IAAI;gBACnB,OAAO,EAAE,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,UAAA,KAAK,IAAI,OAAA,KAAK,CAAC,CAAC,CAAC,EAAR,CAAQ,CAAC;aAC7C,CAAC,CAAC,CAAC,CAAC,CAAC,CAAA;IACR,CAAC;IAED;;;;;OAKG;IACH,2BAAQ,GAAR,UAAS,QAA0E;QACjF,QAAQ,IAAI,CAAC,MAAM,EAAE,CAAC;YACpB,KAAK,CAAC;gBACJ,MAAM,IAAI,KAAK,CAAC,qDAAqD,CAAC,CAAA;YACxE,KAAK,CAAC;gBACJ,OAAO,IAAI,CAAC,SAAS,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAA;YACpC;gBACE,OAAO,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAA;QAC/C,CAAC;IACH,CAAC;IAED;;;;;OAKG;IACH,4BAAS,GAAT,UAAU,QAAuH;QAAjI,iBAYC;QAZS,yBAAA,EAAA,qBAA6E,IAAwB,IAAK,OAAA,IAAI,CAAC,QAAQ,EAAb,CAAa;QAC/H,IAAM,WAAW,GAAG,OAAO,QAAQ,KAAK,UAAU,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,cAAM,OAAA,QAAQ,EAAR,CAAQ,CAAA;QAC9E,OAAO,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,UAAA,KAAK;YACxC,IAAM,QAAQ,GAAG,WAAW,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAA;YACtC,OAAO,CAAC;gBACN,IAAI,EAAE,gBAAQ,CAAC,QAAQ;gBACvB,IAAI,EAAE,oBAAY,CAAC,IAAI;gBACvB,QAAQ,EAAE,KAAI,CAAC,IAAI;gBACnB,SAAS,EAAE,KAAK,CAAC,CAAC,CAAC;gBACnB,QAAQ,UAAA;aACT,CAAC,CAAA;QACJ,CAAC,CAAC,CAAC,CAAA;IACL,CAAC;IAED;;;;OAIG;IACH,uBAAI,GAAJ,UAAK,QAA0E;QAA1E,yBAAA,EAAA,qBAAiD,IAAI,IAAI,OAAA,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAE,EAAjB,CAAiB;QAC7E,OAAO,IAAI,2BAAY,CAAC,IAAI,CAAC,IAAI,EAAE,IAAI,CAAC,OAAO,EAAE,IAAI,CAAC,WAAW,CAAC,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAA;IACnF,CAAC;IACH,eAAC;AAAD,CAAC,AAjkBD,IAikBC;AAjkBY,4BAAQ"}
1
+ {"version":3,"file":"Material.js","sourceRoot":"","sources":["../../../src/material/items/Material.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,2DAAoC;AACpC,uDAAgC;AAChC,uDAAgC;AAChC,2DAAoC;AACpC,uDAAgC;AAEhC,kCAaiB;AACjB,iCAAqD;AAKrD;;;;;;;;GAQG;AACH;IAEE;;;;;;OAMG;IACH,kBACW,IAAO,EACN,KAAgC,EACvB,WAA+C,EAC3D,OAAiG;QAF9F,sBAAA,EAAA,UAAgC;QAEnC,wBAAA,EAAA,UAA6B,KAAK,CAAC,IAAI,CAAC,KAAK,CAAC,OAAO,EAAE,CAAC,CAAC,MAAM,CAAC,UAAA,KAAK,IAAI,OAAA,KAAK,CAAC,CAAC,CAAC,CAAC,QAAQ,KAAK,CAAC,EAAvB,CAAuB,CAAC;QAH/F,SAAI,GAAJ,IAAI,CAAG;QACN,UAAK,GAAL,KAAK,CAA2B;QACvB,gBAAW,GAAX,WAAW,CAAoC;QAC3D,YAAO,GAAP,OAAO,CAA0F;IAC1G,CAAC;IAED;;;;;OAKG;IACO,sBAAG,GAAb,UAAc,OAA0B;QACtC,IAAM,KAAK,GAAG,IAAI,CAAC,WAA+I,CAAA;QAClK,OAAO,IAAI,KAAK,CAAC,IAAI,CAAC,IAAI,EAAE,IAAI,CAAC,KAAK,EAAE,IAAI,CAAC,WAAW,EAAE,OAAO,CAAC,CAAA;IACpE,CAAC;IAED;;;;;;;OAOG;IACH,2BAAQ,GAAR,UAAmB,SAAqD;QACtE,IAAM,KAAK,GAAG,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,UAAA,KAAK,IAAI,OAAA,KAAK,CAAC,CAAC,CAAC,EAAR,CAAQ,CAAC,CAAA;QACjD,OAAO,SAAS,CAAC,CAAC,CAAC,KAAK,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,KAAK,CAAA;IACpD,CAAC;IAmBD;;;;;;OAMG;IACH,0BAAO,GAAP,UAAkB,GAA0D;QAC1E,IAAI,OAAO,GAAG,KAAK,QAAQ,EAAE,CAAC;YAC5B,IAAM,KAAK,GAAG,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,UAAA,KAAK,IAAI,OAAA,KAAK,CAAC,CAAC,CAAC,KAAK,GAAG,EAAhB,CAAgB,CAAC,CAAA;YAC1D,IAAI,CAAC,KAAK;gBAAE,MAAM,IAAI,KAAK,CAAC,6CAAsC,GAAG,CAAE,CAAC,CAAA;YACxE,OAAO,KAAK,CAAC,CAAC,CAAC,CAAA;QACjB,CAAC;aAAM,IAAI,OAAO,GAAG,KAAK,UAAU,EAAE,CAAC;YACrC,IAAM,OAAO,GAAG,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,UAAC,EAAQ;oBAAL,IAAI,QAAA;gBAAM,OAAA,GAAG,CAAC,IAAI,CAAC;YAAT,CAAS,CAAC,CAAA;YAC5D,OAAO,OAAO,CAAC,MAAM,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,SAAS,CAAA;QACnD,CAAC;aAAM,CAAC;YACN,OAAO,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,SAAS,CAAA;QAC7D,CAAC;IACH,CAAC;IAED;;OAEG;IACH,2BAAQ,GAAR;;QACE,OAAO,MAAA,MAAA,IAAI,CAAC,OAAO,CAAC,CAAC,CAAC,0CAAG,CAAC,CAAC,mCAAI,CAAC,CAAC,CAAA;IACnC,CAAC;IAED;;OAEG;IACH,6BAAU,GAAV;QACE,OAAO,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,UAAA,KAAK,IAAI,OAAA,KAAK,CAAC,CAAC,CAAC,EAAR,CAAQ,CAAC,CAAA;IAC5C,CAAC;IAED;;;OAGG;IACH,wBAAK,GAAL,UAAM,GAAsD;QAC1D,QAAQ,OAAO,GAAG,EAAE,CAAC;YACnB,KAAK,UAAU;gBACb,OAAO,IAAI,CAAC,MAAM,CAAC,UAAC,CAAC,EAAE,KAAK,IAAK,OAAA,GAAG,CAAC,KAAK,CAAC,EAAV,CAAU,CAAC,CAAA;YAC9C,KAAK,QAAQ;gBACX,IAAM,IAAI,GAAG,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,UAAC,EAAO;wBAAN,KAAK,QAAA;oBAAM,OAAA,KAAK,KAAK,GAAG;gBAAb,CAAa,CAAC,CAAA;gBAC1D,OAAO,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAA;YACrC,KAAK,WAAW;gBACd,OAAO,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,CAAA;YACrB;gBACE,IAAM,KAAK,GAAG,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,UAAC,EAAG;wBAAF,CAAC,QAAA;oBAAM,OAAA,GAAG,CAAC,QAAQ,CAAC,CAAC,CAAC;gBAAf,CAAe,CAAC,CAAA;gBAC3D,OAAO,IAAI,CAAC,GAAG,CAAC,KAAK,CAAC,CAAA;QAC1B,CAAC;IACH,CAAC;IAED;;OAEG;IACH,0BAAO,GAAP,UAAQ,OAAiB;QACvB,IAAM,KAAK,GAAG,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,UAAC,EAAG;gBAAF,CAAC,QAAA;YAAM,OAAA,OAAO,CAAC,QAAQ,CAAC,CAAC,CAAC;QAAnB,CAAmB,CAAC,CAAA;QAC/D,OAAO,IAAI,CAAC,GAAG,CAAC,KAAK,CAAC,CAAA;IACxB,CAAC;IAKD,sBAAI,4BAAM;QAHV;;WAEG;aACH;YACE,OAAO,IAAI,CAAC,OAAO,CAAC,MAAM,CAAA;QAC5B,CAAC;;;OAAA;IAED;;OAEG;IACH,8BAAW,GAAX;QACE,OAAO,IAAA,eAAK,EAAC,IAAI,CAAC,OAAO,EAAE,UAAC,EAAQ;;gBAAL,IAAI,QAAA;YAAM,OAAA,MAAA,IAAI,CAAC,QAAQ,mCAAI,CAAC,CAAA;SAAA,CAAC,CAAA;IAC9D,CAAC;IAED;;;;;;;OAOG;IACH,yBAAM,GAAN,UAAO,SAA+D;QACpE,OAAO,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,UAAC,EAAa;gBAAZ,KAAK,QAAA,EAAE,IAAI,QAAA;YAAM,OAAA,SAAS,CAAC,IAAI,EAAE,KAAK,CAAC;QAAtB,CAAsB,CAAC,CAAC,CAAA;IACjF,CAAC;IAED;;;;;OAKG;IACH,qBAAE,GAAF,UAAiE,GAAgC;QAC/F,OAAO,IAAI,CAAC,MAAM,CAAC,UAAC,EAAM;gBAAJ,EAAE,QAAA;YAAO,OAAA,OAAO,GAAG,KAAK,UAAU,CAAC,CAAC,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,IAAA,iBAAO,EAAC,EAAE,EAAE,GAAG,CAAC;QAAtD,CAAsD,CAAC,CAAA;IACxF,CAAC;IAED;;;;;OAKG;IACH,2BAAQ,GAAR,UAAS,GAAgD;QACvD,OAAO,IAAI,CAAC,MAAM,CAAC,UAAC,EAAY;gBAAV,QAAQ,cAAA;YAAO,OAAA,OAAO,GAAG,KAAK,UAAU,CAAC,CAAC,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,IAAI,KAAK,GAAG;QAAjE,CAAiE,CAAC,CAAA;IACzG,CAAC;IAED;;;;;OAKG;IACH,2BAAQ,GAAR,UAAgF,GAAoC;QAClH,OAAO,IAAI,CAAC,QAAQ,CAAC,UAAC,EAAY;gBAAV,QAAQ,cAAA;YAAO,OAAA,OAAO,GAAG,KAAK,UAAU,CAAC,CAAC,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,IAAA,iBAAO,EAAC,QAAQ,EAAE,GAAG,CAAC;QAAlE,CAAkE,CAAC,CAAA;IAC5G,CAAC;IAED;;;;;OAKG;IACH,yBAAM,GAAN,UAAO,GAAmC;QACxC,OAAO,IAAI,CAAC,QAAQ,CAAC,UAAC,EAAU;gBAAR,MAAM,YAAA;YAAO,OAAA,OAAO,GAAG,KAAK,UAAU,CAAC,CAAC,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,MAAM,KAAK,GAAG;QAAxD,CAAwD,CAAC,CAAA;IAChG,CAAC;IAED;;;;;OAKG;IACH,6BAAU,GAAV,UAAmF,GAA+B;QAChH,OAAO,IAAI,CAAC,QAAQ,CAAC,UAAC,EAAM;gBAAJ,EAAE,QAAA;YAAO,OAAA,OAAO,GAAG,KAAK,UAAU,CAAC,CAAC,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,IAAA,iBAAO,EAAC,EAAE,EAAE,GAAG,CAAC;QAAtD,CAAsD,CAAC,CAAA;IAC1F,CAAC;IAED;;;;;OAKG;IACH,yBAAM,GAAN,UAAO,GAA6C;QAClD,OAAO,IAAI,CAAC,QAAQ,CAAC,UAAC,EAAU;gBAAR,MAAM,YAAA;YAAO,OAAA,OAAO,GAAG,KAAK,UAAU,CAAC,CAAC,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,IAAA,iBAAO,EAAC,MAAM,EAAE,GAAG,CAAC;QAA9D,CAA8D,CAAC,CAAA;IACtG,CAAC;IAED;;;;;OAKG;IACH,2BAAQ,GAAR,UAAS,QAAiC;QAAjC,yBAAA,EAAA,eAAiC;QACxC,OAAO,IAAI,CAAC,MAAM,CAAC,UAAA,IAAI,YAAI,OAAA,CAAC,MAAA,IAAI,CAAC,QAAQ,mCAAI,KAAK,CAAC,KAAK,QAAQ,CAAA,EAAA,CAAC,CAAA;IACnE,CAAC;IAED;;;;;;OAMG;IACH,wBAAK,GAAL,UAAM,QAA8C;QAClD,IAAM,GAAG,GAAG,IAAA,eAAK,EAAC,IAAI,CAAC,OAAO,EAAE,UAAA,KAAK,IAAI,OAAA,QAAQ,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,EAAlB,CAAkB,CAAC,CAAA;QAC5D,OAAO,IAAI,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAA;IACnC,CAAC;IAED;;;;;;OAMG;IACH,wBAAK,GAAL,UAAM,QAA8C;QAClD,IAAM,GAAG,GAAG,IAAA,eAAK,EAAC,IAAI,CAAC,OAAO,EAAE,UAAA,KAAK,IAAI,OAAA,QAAQ,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,EAAlB,CAAkB,CAAC,CAAA;QAC5D,OAAO,IAAI,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAA;IACnC,CAAC;IAED;;;;;;OAMG;IACH,uBAAI,GAAJ;QAAK,mBAAsD;aAAtD,UAAsD,EAAtD,qBAAsD,EAAtD,IAAsD;YAAtD,8BAAsD;;QACzD,IAAI,YAAY,GAAG,IAAA,iBAAO,EAAC,IAAI,CAAC,OAAO,EAAE,SAAS,CAAC,GAAG,CAAC,UAAC,CAAC,IAAK,OAAA,UAAC,KAAK,IAAK,OAAA,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,EAAX,CAAW,EAAtB,CAAsB,CAAC,CAAC,CAAA;QACtF,OAAO,IAAI,CAAC,GAAG,CAAC,YAAY,CAAC,CAAA;IAC/B,CAAC;IAED;;;;;;;OAOG;IACH,wBAAK,GAAL,UAAM,KAAa;QACjB,OAAO,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,EAAE,KAAK,CAAC,CAAC,CAAA;IAC/C,CAAC;IAEO,0BAAO,GAAf,UAA6C,KAAU;QACrD,IAAI,IAAI,CAAC,WAAW,EAAE,CAAC;YACrB,KAAmB,UAAK,EAAL,eAAK,EAAL,mBAAK,EAAL,IAAK,EAAE,CAAC;gBAAtB,IAAM,IAAI,cAAA;gBACb,IAAI,CAAC,WAAW,CAAC,IAAI,CAAC,CAAA;YACxB,CAAC;QACH,CAAC;QACD,OAAO,KAAK,CAAA;IACd,CAAC;IAED;;;;OAIG;IACH,6BAAU,GAAV,UAAW,IAAwB;QACjC,OAAO,IAAI,CAAC,WAAW,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC,CAAA;IACpC,CAAC;IAED;;;;OAIG;IACH,8BAAW,GAAX,UAAY,KAA2B;QAAvC,iBAOC;QANC,OAAO,IAAI,CAAC,OAAO,CAAC,KAAK,CAAC,GAAG,CAAC,UAAA,IAAI,IAAI,OAAA,CAAC;YACrC,IAAI,EAAE,gBAAQ,CAAC,QAAQ;YACvB,IAAI,EAAE,oBAAY,CAAC,MAAM;YACzB,QAAQ,EAAE,KAAI,CAAC,IAAI;YACnB,IAAI,MAAA;SACL,CAAC,EALoC,CAKpC,CAAC,CAAC,CAAA;IACN,CAAC;IAED;;;;OAIG;IACH,oCAAiB,GAAjB,UAAkB,KAA2B;QAC3C,IAAM,IAAI,GAA+B,EAAE,IAAI,EAAE,gBAAQ,CAAC,QAAQ,EAAE,IAAI,EAAE,oBAAY,CAAC,YAAY,EAAE,QAAQ,EAAE,IAAI,CAAC,IAAI,EAAE,KAAK,OAAA,EAAE,CAAA;QACjI,OAAO,IAAI,CAAC,OAAO,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC,CAAA;IAChC,CAAC;IAED;;;;;OAKG;IACH,6BAAU,GAAV,UAAW,QAAiB;QAC1B,QAAQ,IAAI,CAAC,MAAM,EAAE,CAAC;YACpB,KAAK,CAAC;gBACJ,MAAM,IAAI,KAAK,CAAC,uDAAuD,CAAC,CAAA;YAC1E,KAAK,CAAC;gBACJ,OAAO,IAAI,CAAC,WAAW,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAA;YACtC;gBACE,OAAO,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,WAAW,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAA;QACjD,CAAC;IACH,CAAC;IAED;;;;;OAKG;IACH,8BAAW,GAAX,UAAY,QAAiB;QAA7B,iBAWC;QAVC,OAAO,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,UAAA,KAAK;YACxC,IAAM,IAAI,GAAkB;gBAC1B,IAAI,EAAE,gBAAQ,CAAC,QAAQ;gBACvB,IAAI,EAAE,oBAAY,CAAC,MAAM;gBACzB,QAAQ,EAAE,KAAI,CAAC,IAAI;gBACnB,SAAS,EAAE,KAAK,CAAC,CAAC,CAAC;aACpB,CAAA;YACD,IAAI,QAAQ;gBAAE,IAAI,CAAC,QAAQ,GAAG,QAAQ,CAAA;YACtC,OAAO,IAAI,CAAA;QACb,CAAC,CAAC,CAAC,CAAA;IACL,CAAC;IAED;;;;OAIG;IACH,oCAAiB,GAAjB;QACE,IAAM,KAAK,GAAyB,EAAE,IAAI,EAAE,gBAAQ,CAAC,QAAQ,EAAE,IAAI,EAAE,oBAAY,CAAC,YAAY,EAAE,QAAQ,EAAE,IAAI,CAAC,IAAI,EAAE,OAAO,EAAE,IAAI,CAAC,UAAU,EAAE,EAAE,CAAA;QACjJ,OAAO,IAAI,CAAC,OAAO,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,CAAA;IACjC,CAAC;IAED;;;;;;OAMG;IACH,2BAAQ,GAAR,UAAS,QAAyE,EAAE,QAAiB;QACnG,QAAQ,IAAI,CAAC,MAAM,EAAE,CAAC;YACpB,KAAK,CAAC;gBACJ,MAAM,IAAI,KAAK,CAAC,qDAAqD,CAAC,CAAA;YACxE,KAAK,CAAC;gBACJ,OAAO,IAAI,CAAC,SAAS,CAAC,QAAQ,EAAE,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAA;YAC9C;gBACE,OAAO,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC,QAAQ,EAAE,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAA;QACzD,CAAC;IACH,CAAC;IAED;;;;;;OAMG;IACH,4BAAS,GAAT,UAAU,QAA0G,EAAE,QAAiB;QAAvI,iBAcC;QAbC,IAAM,WAAW,GAAG,OAAO,QAAQ,KAAK,UAAU,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,cAAM,OAAA,QAAQ,EAAR,CAAQ,CAAA;QAC9E,OAAO,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,UAAA,KAAK;YACxC,IAAM,QAAQ,GAAG,WAAW,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,KAAK,CAAC,CAAC,CAAC,CAAC,CAAA;YAChD,IAAM,IAAI,GAAsB;gBAC9B,IAAI,EAAE,gBAAQ,CAAC,QAAQ;gBACvB,IAAI,EAAE,oBAAY,CAAC,IAAI;gBACvB,QAAQ,EAAE,KAAI,CAAC,IAAI;gBACnB,SAAS,EAAE,KAAK,CAAC,CAAC,CAAC;gBACnB,QAAQ,UAAA;aACT,CAAA;YACD,IAAI,QAAQ;gBAAE,IAAI,CAAC,QAAQ,GAAG,QAAQ,CAAA;YACtC,OAAO,IAAI,CAAA;QACb,CAAC,CAAC,CAAC,CAAA;IACL,CAAC;IAED;;;;;OAKG;IACH,kCAAe,GAAf,UAAgB,QAAiC;QAC/C,IAAM,IAAI,GAA6B;YACrC,IAAI,EAAE,gBAAQ,CAAC,QAAQ;YACvB,IAAI,EAAE,oBAAY,CAAC,UAAU;YAC7B,QAAQ,EAAE,IAAI,CAAC,IAAI;YACnB,OAAO,EAAE,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,UAAC,EAAO;oBAAN,KAAK,QAAA;gBAAM,OAAA,KAAK;YAAL,CAAK,CAAC;YAC7C,QAAQ,UAAA;SACT,CAAA;QAED,OAAO,IAAI,CAAC,OAAO,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC,CAAA;IAChC,CAAC;IAED;;;;;OAKG;IACH,6BAAU,GAAV,UAAW,QAAiB;QAC1B,QAAQ,IAAI,CAAC,MAAM,EAAE,CAAC;YACpB,KAAK,CAAC;gBACJ,MAAM,IAAI,KAAK,CAAC,uDAAuD,CAAC,CAAA;YAC1E,KAAK,CAAC;gBACJ,OAAO,IAAI,CAAC,WAAW,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAA;YACtC;gBACE,OAAO,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,WAAW,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAA;QACjD,CAAC;IACH,CAAC;IAED;;;;;OAKG;IACH,8BAAW,GAAX,UAAY,QAAiB;QAA7B,iBAWC;QAVC,OAAO,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,UAAA,KAAK;YACxC,IAAM,IAAI,GAAkB;gBAC1B,IAAI,EAAE,gBAAQ,CAAC,QAAQ;gBACvB,IAAI,EAAE,oBAAY,CAAC,MAAM;gBACzB,QAAQ,EAAE,KAAI,CAAC,IAAI;gBACnB,SAAS,EAAE,KAAK,CAAC,CAAC,CAAC;aACpB,CAAA;YACD,IAAI,QAAQ;gBAAE,IAAI,CAAC,QAAQ,GAAG,QAAQ,CAAA;YACtC,OAAO,IAAI,CAAA;QACb,CAAC,CAAC,CAAC,CAAA;IACL,CAAC;IAED;;;;;OAKG;IACH,+BAAY,GAAZ,UAAa,QAAiB;QAC5B,QAAQ,IAAI,CAAC,MAAM,EAAE,CAAC;YACpB,KAAK,CAAC;gBACJ,MAAM,IAAI,KAAK,CAAC,uDAAuD,CAAC,CAAA;YAC1E,KAAK,CAAC;gBACJ,OAAO,IAAI,CAAC,aAAa,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAA;YACxC;gBACE,OAAO,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,aAAa,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAA;QACnD,CAAC;IACH,CAAC;IAED;;;;;OAKG;IACH,gCAAa,GAAb,UAAc,QAAiB;QAA/B,iBAYC;QAXC,OAAO,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,UAAA,KAAK;YACxC,IAAM,IAAI,GAAkB;gBAC1B,IAAI,EAAE,gBAAQ,CAAC,QAAQ;gBACvB,IAAI,EAAE,oBAAY,CAAC,MAAM;gBACzB,QAAQ,EAAE,KAAI,CAAC,IAAI;gBACnB,SAAS,EAAE,KAAK,CAAC,CAAC,CAAC;gBACnB,QAAQ,EAAE,KAAK;aAChB,CAAA;YACD,IAAI,QAAQ;gBAAE,IAAI,CAAC,QAAQ,GAAG,QAAQ,CAAA;YACtC,OAAO,IAAI,CAAA;QACb,CAAC,CAAC,CAAC,CAAA;IACL,CAAC;IAED;;;;;;;OAOG;IACH,6BAAU,GAAV,UACE,GAA2C;QAE3C,QAAQ,IAAI,CAAC,MAAM,EAAE,CAAC;YACpB,KAAK,CAAC;gBACJ,MAAM,IAAI,KAAK,CAAC,uDAAuD,CAAC,CAAA;YAC1E,KAAK,CAAC;gBACJ,OAAO,IAAI,CAAC,WAAW,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAA;YACjC;gBACE,OAAO,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,WAAW,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAA;QAC5C,CAAC;IACH,CAAC;IAED;;;;;;;OAOG;IACH,8BAAW,GAAX,UACE,GAAuD;QAEvD,OAAO,IAAI,CAAC,SAAS,CAAC,UAAA,IAAI;YACxB,IAAM,QAAQ,GAAG,OAAO,GAAG,KAAK,UAAU,CAAC,CAAC,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,GAAG,CAAA;YAC5D,IAAM,KAAyC,IAAI,CAAC,QAAQ,EAA1C,WAAW,cAAA,EAAK,QAAQ,cAApC,YAAsC,CAAgB,CAAA;YAC5D,OAAO,QAAQ,KAAK,SAAS,CAAC,CAAC,CAAC,uBAAM,QAAQ,KAAE,QAAQ,UAAA,IAAG,CAAC,CAAC,CAAC,QAAQ,CAAA;QACxE,CAAC,CAAC,CAAA;IACJ,CAAC;IAED;;;OAGG;IACH,0BAAO,GAAP;QACE,OAAO,IAAI,CAAC,OAAO,CAAC,CAAC;gBACnB,IAAI,EAAE,gBAAQ,CAAC,QAAQ;gBACvB,IAAI,EAAE,oBAAY,CAAC,OAAO;gBAC1B,QAAQ,EAAE,IAAI,CAAC,IAAI;gBACnB,OAAO,EAAE,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,UAAA,KAAK,IAAI,OAAA,KAAK,CAAC,CAAC,CAAC,EAAR,CAAQ,CAAC;aAC7C,CAAC,CAAC,CAAC,CAAC,CAAC,CAAA;IACR,CAAC;IAED;;;;;OAKG;IACH,2BAAQ,GAAR,UAAS,QAA0E;QACjF,QAAQ,IAAI,CAAC,MAAM,EAAE,CAAC;YACpB,KAAK,CAAC;gBACJ,MAAM,IAAI,KAAK,CAAC,qDAAqD,CAAC,CAAA;YACxE,KAAK,CAAC;gBACJ,OAAO,IAAI,CAAC,SAAS,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAA;YACpC;gBACE,OAAO,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAA;QAC/C,CAAC;IACH,CAAC;IAED;;;;;OAKG;IACH,4BAAS,GAAT,UAAU,QAAuH;QAAjI,iBAYC;QAZS,yBAAA,EAAA,qBAA6E,IAAwB,IAAK,OAAA,IAAI,CAAC,QAAQ,EAAb,CAAa;QAC/H,IAAM,WAAW,GAAG,OAAO,QAAQ,KAAK,UAAU,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,cAAM,OAAA,QAAQ,EAAR,CAAQ,CAAA;QAC9E,OAAO,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,UAAA,KAAK;YACxC,IAAM,QAAQ,GAAG,WAAW,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAA;YACtC,OAAO,CAAC;gBACN,IAAI,EAAE,gBAAQ,CAAC,QAAQ;gBACvB,IAAI,EAAE,oBAAY,CAAC,IAAI;gBACvB,QAAQ,EAAE,KAAI,CAAC,IAAI;gBACnB,SAAS,EAAE,KAAK,CAAC,CAAC,CAAC;gBACnB,QAAQ,UAAA;aACT,CAAC,CAAA;QACJ,CAAC,CAAC,CAAC,CAAA;IACL,CAAC;IAED;;;;OAIG;IACH,uBAAI,GAAJ,UAAK,QAA0E;QAA1E,yBAAA,EAAA,qBAAiD,IAAI,IAAI,OAAA,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAE,EAAjB,CAAiB;QAC7E,OAAO,IAAI,oBAAY,CAAC,IAAI,CAAC,IAAI,EAAE,IAAI,CAAC,KAAK,EAAE,IAAI,CAAC,WAAW,EAAE,IAAI,CAAC,OAAO,CAAC,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAA;IAC/F,CAAC;IAED;;;;OAIG;IACH,wBAAK,GAAL,UAA2B,KAAa;QACtC,OAAO,IAAI,qBAAa,CAAC,IAAI,CAAC,IAAI,EAAE,KAAK,EAAE,IAAI,CAAC,KAAK,EAAE,IAAI,CAAC,WAAW,EAAE,IAAI,CAAC,OAAO,CAAC,CAAA;IACxF,CAAC;IACH,eAAC;AAAD,CAAC,AA5kBD,IA4kBC;AA5kBY,4BAAQ"}
@@ -1,6 +1,6 @@
1
1
  import { Location } from '../location';
2
2
  import { MoveItem } from '../moves';
3
- import { Material } from './Material';
3
+ import { Material } from './index';
4
4
  import { MaterialItem } from './MaterialItem';
5
5
  /**
6
6
  * This subclass of {@link Material} is design to solve one major issue: when creating moves, the material items remains unchanged (Material is immutable),
@@ -16,7 +16,7 @@ var __extends = (this && this.__extends) || (function () {
16
16
  })();
17
17
  Object.defineProperty(exports, "__esModule", { value: true });
18
18
  exports.MaterialDeck = void 0;
19
- var Material_1 = require("./Material");
19
+ var index_1 = require("./index");
20
20
  /**
21
21
  * This subclass of {@link Material} is design to solve one major issue: when creating moves, the material items remains unchanged (Material is immutable),
22
22
  * so you cannot easily deal cards to multiple players at once: you will deal the first X cards all the time if you try to move items multiple time one
@@ -71,6 +71,6 @@ var MaterialDeck = /** @class */ (function (_super) {
71
71
  return this.new(this.entries.splice(0, quantity)).moveItemsAtOnce(arg);
72
72
  };
73
73
  return MaterialDeck;
74
- }(Material_1.Material));
74
+ }(index_1.Material));
75
75
  exports.MaterialDeck = MaterialDeck;
76
76
  //# sourceMappingURL=MaterialDeck.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"MaterialDeck.js","sourceRoot":"","sources":["../../../src/material/items/MaterialDeck.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;AAEA,uCAAqC;AAGrC;;;;;;;;;;;;;;;;;;;GAmBG;AACH;IAAmH,gCAAiB;IAApI;;IA6BA,CAAC;IA5BC;;;;;;OAMG;IACH,2BAAI,GAAJ,UAAK,GAAoE,EAAE,QAAoB;QAApB,yBAAA,EAAA,YAAoB;QAC7F,OAAO,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC,EAAE,QAAQ,CAAC,CAAC,CAAC,SAAS,CAAC,GAAG,CAAC,CAAA;IAClE,CAAC;IAED;;;;;OAKG;IACH,8BAAO,GAAP,UAAQ,GAAoE;QAC1E,IAAM,IAAI,GAAG,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,CAAA;QAC3B,IAAI,IAAI,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;YACtB,MAAM,IAAI,KAAK,CAAC,oDAAoD,CAAC,CAAA;QACvE,CAAC;QACD,OAAO,IAAI,CAAC,CAAC,CAAC,CAAA;IAChB,CAAC;IAED,iCAAU,GAAV,UAAW,GAAmB,EAAE,QAAoB;QAApB,yBAAA,EAAA,YAAoB;QAClD,OAAO,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC,EAAE,QAAQ,CAAC,CAAC,CAAC,eAAe,CAAC,GAAG,CAAC,CAAA;IACxE,CAAC;IACH,mBAAC;AAAD,CAAC,AA7BD,CAAmH,mBAAQ,GA6B1H;AA7BY,oCAAY"}
1
+ {"version":3,"file":"MaterialDeck.js","sourceRoot":"","sources":["../../../src/material/items/MaterialDeck.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;AAEA,iCAAkC;AAGlC;;;;;;;;;;;;;;;;;;;GAmBG;AACH;IAAmH,gCAAiB;IAApI;;IA6BA,CAAC;IA5BC;;;;;;OAMG;IACH,2BAAI,GAAJ,UAAK,GAAoE,EAAE,QAAoB;QAApB,yBAAA,EAAA,YAAoB;QAC7F,OAAO,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC,EAAE,QAAQ,CAAC,CAAC,CAAC,SAAS,CAAC,GAAG,CAAC,CAAA;IAClE,CAAC;IAED;;;;;OAKG;IACH,8BAAO,GAAP,UAAQ,GAAoE;QAC1E,IAAM,IAAI,GAAG,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,CAAA;QAC3B,IAAI,IAAI,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;YACtB,MAAM,IAAI,KAAK,CAAC,oDAAoD,CAAC,CAAA;QACvE,CAAC;QACD,OAAO,IAAI,CAAC,CAAC,CAAC,CAAA;IAChB,CAAC;IAED,iCAAU,GAAV,UAAW,GAAmB,EAAE,QAAoB;QAApB,yBAAA,EAAA,YAAoB;QAClD,OAAO,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC,EAAE,QAAQ,CAAC,CAAC,CAAC,eAAe,CAAC,GAAG,CAAC,CAAA;IACxE,CAAC;IACH,mBAAC;AAAD,CAAC,AA7BD,CAAmH,gBAAQ,GA6B1H;AA7BY,oCAAY"}
@@ -0,0 +1,81 @@
1
+ import { Location } from '../location';
2
+ import { ItemMove } from '../moves';
3
+ import { ItemEntry, Material } from './index';
4
+ import { MaterialItem } from './MaterialItem';
5
+ /**
6
+ * This subclass of {@link Material} is design to handle counting and moving Money with different units: coins of 5 and 1 for instance.
7
+ * It also keeps track of how much money is left after spending moves are create so that it is easy to spend money multiple time at once,
8
+ * without risking spending the same coins twice because the moves are no immediately executed.
9
+ */
10
+ export declare class MaterialMoney<P extends number = number, M extends number = number, L extends number = number, Unit extends number = number> extends Material<P, M, L> {
11
+ readonly type: M;
12
+ units: Unit[];
13
+ protected items: MaterialItem<P, L>[];
14
+ protected readonly processMove?: ((move: ItemMove<P, M, L>) => void) | undefined;
15
+ entries: ItemEntry<P, L>[];
16
+ private pendingMoves;
17
+ /**
18
+ * Construct a new Material Money helper instance
19
+ * @param {number} type Type of items this instance will work on
20
+ * @param {MaterialItem[]} items The complete list of items of this type in current game state.
21
+ * @param {number[]} units The different units that exists in stock to count this money
22
+ * @param {ItemEntry[]} entries The list of items to work on. Each entry consists of an array with the index of the item, and the item
23
+ * @param {function} processMove if provided, this function will be executed on every move created with this instance
24
+ */
25
+ constructor(type: M, units: Unit[], items?: MaterialItem<P, L>[], processMove?: ((move: ItemMove<P, M, L>) => void) | undefined, entries?: ItemEntry<P, L>[]);
26
+ /**
27
+ * Helper function to return a new instance of the same class (works also for children class)
28
+ * @param {ItemEntry[]} entries Filtered entries for the new class
29
+ * @returns {this} the new Material instance
30
+ * @protected
31
+ */
32
+ protected new(entries: ItemEntry<P, L>[]): this;
33
+ /**
34
+ * We need to apply the pending moves before any filtering is done to get the right count for instance.
35
+ */
36
+ filter(predicate: (item: MaterialItem<P, L>, index: number) => boolean): this;
37
+ /**
38
+ * Count the total value of a material instance
39
+ * @returns the sum of each item id multiplied by its quantity
40
+ */
41
+ get count(): number;
42
+ /**
43
+ * Create an amount of Money and put it in given location
44
+ * @param amount Amount to gain
45
+ * @param location The location to filter material onto, and to create new items in
46
+ * @returns the moves that need to be played to perform the operation
47
+ */
48
+ addMoney(amount: number, location: Location<P, L>): ItemMove<P, M, L>[];
49
+ /**
50
+ * Remove an amount of Money from given location
51
+ * @param amount Amount to spend
52
+ * @param location The location to filter material onto, and to create new items in
53
+ * @returns the moves that need to be played to perform the operation
54
+ */
55
+ removeMoney(amount: number, location: Location<P, L>): ItemMove<P, M, L>[];
56
+ /**
57
+ * Move an amount of money from a place to another place. It searches after the easiest way to do it, making money with the bank only if necessary.
58
+ * @param origin Location to remove money from
59
+ * @param target Location to move money to
60
+ * @param amount Amount of money to transfer
61
+ * @returns the moves that need to be played to perform the operation
62
+ */
63
+ moveMoney(origin: Location<P, L>, target: Location<P, L>, amount: number): ItemMove<P, M, L>[];
64
+ /**
65
+ * Return the best way to gain an amount, prioritizing the highest unit values
66
+ * @param amount Amount to gain, default 1
67
+ * @returns the record of coins to earn (only positive values)
68
+ */
69
+ private getGainMap;
70
+ /**
71
+ * Return the best way to spend an amount of owned units, prioritizing the smallest unit values
72
+ * @param amount Amount to gain, default 1
73
+ * @returns the record of coins to give away and eventually take (positive and negative values)
74
+ */
75
+ private getSpendMap;
76
+ /**
77
+ * Mutate the entries to get the state after
78
+ * @private
79
+ */
80
+ private applyPendingMoves;
81
+ }