UNPKG

fentastic

Version:

Validate and parse Forsyth-Edwards Notation (FEN) used to describe a chess game board position.

31 lines (30 loc) 1.09 kB
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); exports.parseActiveColor = exports.validateActiveColor = void 0; const ParseError_js_1 = require("./ParseError.js"); const fieldName = 'Active color'; const validateActiveColor = (field) => { try { if (field.tokens.length !== 1) { throw new ParseError_js_1.ParseError(fieldName, field.tokens.length, field.tokens[0].index, '1', 'field length to be', 'count'); } if (field.value !== 'w' && field.value !== 'b') { throw new ParseError_js_1.ParseError(fieldName, field.value, field.tokens[0].index, 'w|b'); } } catch (e) { if (e instanceof ParseError_js_1.ParseError) { field.error = e; } else { throw e; } } return field; }; exports.validateActiveColor = validateActiveColor; // TODO: This seems unnecessary. Can't I just use the original w or b? const parseActiveColor = (field) => { return field.value === 'w' ? 'white' : 'black'; }; exports.parseActiveColor = parseActiveColor;