// A support form that checks spelling before sending, and a search box that asks "did you mean".
// spellcheck_sample.txt is a small English list; load a full one (a word and its count per line) for real use.
//
//   quillo run spellcheck.qwe      then open http://localhost:8080/check

use "spellcheck.qwer"

let WORDS = spell_load("en", "spellcheck_sample.txt")?
let OURS = spell_add("en", ["Quillo", "espresso", "barista"])

route GET /check {
    let message = "Hello, I recieved my ordr yesterday but the pakage was opend. Can I get a refnd? Order 1042, me@example.com"
    {
        words: WORDS,
        problems: spell_check("en", message)?,
        corrected: spell_correct("en", message)?,
        suggest: spell_suggest("en", "beleive", 3)?,
        upper: spell_suggest("en", "Quilo", 1)?,
        known: [spell_known("en", "barista")?, spell_known("en", "baristta")?],
    }
}

// /search?q=cofee+delivry: "did you mean coffee delivery?"
route GET /search ? { q: str } {
    let fixed = spell_correct("en", q)?
    { query: q, did_you_mean: fixed == q ? null : fixed }
}
