Files
freecodecamp-sudoku-solver/routes/api.js
T

32 lines
835 B
JavaScript
Raw Normal View History

2022-05-20 16:21:08 -05:00
'use strict';
2022-05-26 21:37:25 -05:00
const SudokuSolver = require('../controllers/sudoku-solver');
2022-05-20 16:21:08 -05:00
module.exports = function (app) {
let solver = new SudokuSolver();
app.route('/api/check')
.post((req, res) => {
});
app.route('/api/solve')
.post((req, res) => {
2022-05-26 20:24:35 -05:00
const puzzleString = req.body.puzzle;
2022-05-26 21:37:25 -05:00
if (puzzleString == undefined) return res.status(200).json({error: 'Required field missing' });
const validate = solver.validate(puzzleString);
if (validate != true) return res.status(200).json({error: validate});
const solution = solver.solve(puzzleString);
2022-05-26 20:24:35 -05:00
2022-05-26 21:37:25 -05:00
if (solution == false) return res.status(200).json({error: 'Puzzle cannot be solved'});
return res.status(200).json({solution: solution});
2022-05-26 20:24:35 -05:00
2022-05-20 16:21:08 -05:00
});
};