UNPKG

card-deck.js

Version:
41 lines 1.38 kB
"use strict"; var __spreadArrays = (this && this.__spreadArrays) || function () { for (var s = 0, i = 0, il = arguments.length; i < il; i++) s += arguments[i].length; for (var r = Array(s), k = 0, i = 0; i < il; i++) for (var a = arguments[i], j = 0, jl = a.length; j < jl; j++, k++) r[k] = a[j]; return r; }; Object.defineProperty(exports, "__esModule", { value: true }); var cards_1 = require("./cards"); var CardDeck = /** @class */ (function () { function CardDeck() { this.deck = cards_1.generateNewDeck(); this.shuffle(); } CardDeck.prototype.shuffle = function () { var _a; var a = this.deck; for (var i = a.length - 1; i > 0; i--) { var j = Math.floor(Math.random() * (i + 1)); _a = [a[j], a[i]], a[i] = _a[0], a[j] = _a[1]; } this.deck = __spreadArrays(a); }; CardDeck.prototype.getCards = function (count) { if (count === void 0) { count = 1; } if (this.deck.length && this.deck.length >= count) { var i = 0; var cards = []; while (i < count) { cards.push(this.deck.shift()); i++; } return cards; } return []; }; return CardDeck; }()); exports.CardDeck = CardDeck; //# sourceMappingURL=card-deck.js.map