UNPKG

@scrabble-solver/solver

Version:
23 lines (22 loc) 997 B
"use strict"; var __importDefault = (this && this.__importDefault) || function (mod) { return (mod && mod.__esModule) ? mod : { "default": mod }; }; Object.defineProperty(exports, "__esModule", { value: true }); const generateEndIndices_1 = __importDefault(require("./generateEndIndices")); const generateStartIndices_1 = __importDefault(require("./generateStartIndices")); const generatePattern = ({ board, cells, config, PatternModel, }) => { const startIndices = (0, generateStartIndices_1.default)(cells); return startIndices.flatMap((startIndex) => { const endIndices = (0, generateEndIndices_1.default)(cells, startIndex); const patterns = []; for (const endIndex of endIndices) { const pattern = new PatternModel(board, cells.slice(startIndex, endIndex + 1)); if (pattern.canBePlaced(config)) { patterns.push(pattern); } } return patterns; }); }; exports.default = generatePattern;