scrabble-solver
Version:
Scrabble Solver 2 - Free, open-source, cross-platform, multi-language analysis tool for Scrabble, Scrabble Duel, Super Scrabble, Letter League, Crossplay, Literaki, and Kelimelik. Quickly find the top-scoring words using the given board and tiles.
16 lines (12 loc) • 661 B
text/typescript
import { type Board, type Config, type Pattern, VerticalPattern } from '@scrabble-solver/types';
import { generatePattern } from './generatePattern';
import { generateVectors } from './generateVectors';
export const generateVerticalPatterns = (config: Config, board: Board): Pattern[] => {
const getNthVector = (index: number) => board.getColumn(index);
const vectorsCount = config.boardWidth;
const verticalVectors = generateVectors({ getNthVector, vectorsCount });
const verticalPatterns = verticalVectors.flatMap((cells) => {
return generatePattern({ board, config, PatternModel: VerticalPattern, cells });
});
return verticalPatterns;
};