This commit is contained in:
RezHackXYZ 2025-05-03 12:24:32 +05:30
parent 6cae0e6b23
commit 8061185e24
5 changed files with 1230 additions and 1229 deletions

2380
package-lock.json generated

File diff suppressed because it is too large Load diff

View file

@ -1,21 +1,21 @@
{ {
"name": "package", "name": "package",
"private": true, "private": true,
"version": "0.0.0", "version": "0.0.0",
"type": "module", "type": "module",
"scripts": { "scripts": {
"dev": "vite", "dev": "vite",
"build": "vite build", "build": "vite build",
"preview": "vite preview" "preview": "vite preview"
}, },
"devDependencies": { "devDependencies": {
"@sveltejs/vite-plugin-svelte": "^5.0.3", "@sveltejs/vite-plugin-svelte": "^5.0.3",
"@types/estree": "^1.0.6", "@types/estree": "^1.0.6",
"svelte": "^5.20.2", "svelte": "^5.20.2",
"vite": "^6.2.4" "vite": "^6.2.4"
}, },
"dependencies": { "dependencies": {
"common-words": "^0.1.3", "random-words": "^2.0.1",
"wordlist-english": "^1.2.1" "word-exists": "^1.0.0"
} }
} }

View file

@ -25,7 +25,7 @@
border: 2px solid #202020; border: 2px solid #202020;
margin: 20px; margin: 20px;
border-radius: 10px; border-radius: 10px;
overflow-y: scroll; overflow-y: auto;
} }
.word { .word {

View file

@ -46,7 +46,7 @@
background-color: #202020; background-color: #202020;
font-family: "JetBrains Mono", monospace; font-family: "JetBrains Mono", monospace;
color: #808080; color: #808080;
width: 70px; width: 80px;
height: 70px; height: 70px;
display: flex; display: flex;
justify-content: center; justify-content: center;

View file

@ -1,5 +1,9 @@
import commonWords from "common-words"; import wordExists from "word-exists";
import {generate} from "random-words";
export let CorrectWord = generate({ minLength: 5, maxLength: 5 });
export let words = $state([]);
export let CurrentWord = $state({ v: [] });
export let keys = $state([ export let keys = $state([
["Q", "n"], ["Q", "n"],
["W", "n"], ["W", "n"],
@ -20,7 +24,7 @@ export let keys = $state([
["J", "n"], ["J", "n"],
["K", "n"], ["K", "n"],
["L", "n"], ["L", "n"],
["", "o"], ["", "o"],
["Z", "n"], ["Z", "n"],
["X", "n"], ["X", "n"],
["C", "n"], ["C", "n"],
@ -28,34 +32,24 @@ export let keys = $state([
["B", "n"], ["B", "n"],
["N", "n"], ["N", "n"],
["M", "n"], ["M", "n"],
["", "o"], ["", "o"],
]); ]);
export let words = $state([ function SendWord(word) {}
[
["R", "c"],
["A", "d"],
["D", "w"],
["I", "w"],
["O", "w"],
],
]);
export let CurrentWord = $state({v:[]});
export function ButtonPressed(key) { export function ButtonPressed(key) {
if (key === "") { if (key === "⏎") {
if (CurrentWord.v.length === 5) { if (CurrentWord.v.length === 5) {
let word = CurrentWord.v.join(""); let word = CurrentWord.v.join("");
if (commonWords.map((entry) => entry.word).includes(word)) { if (wordExists(word)) {
words.push(CurrentWord.v); SendWord(CurrentWord.v);
CurrentWord.v = []; CurrentWord.v = [];
} else { } else {
alert("Not a valid word"); alert("Not a valid word");
} }
} }
return; return;
} else if (key === "") { } else if (key === "") {
CurrentWord.v.pop(); CurrentWord.v.pop();
return; return;
} }
@ -65,10 +59,3 @@ export function ButtonPressed(key) {
CurrentWord.v.push(key); CurrentWord.v.push(key);
} }
function getRandomWord() {
let fiveLetterWords = commonWords
.map((entry) => entry.word)
.filter((word) => word.length === 5);
return fiveLetterWords[Math.floor(Math.random() * fiveLetterWords.length)];
}