Compare commits
4 Commits
| Author | SHA1 | Date | |
|---|---|---|---|
|
d8faa308e6
|
|||
|
6bddb24bfe
|
|||
|
1c2be3567a
|
|||
|
|
d62cec415b |
@@ -2,12 +2,12 @@
|
|||||||
|
|
||||||
## Description
|
## Description
|
||||||
|
|
||||||

|
|
||||||
|
|
||||||
Nonograms is a modern, fast, and accessible logic puzzle game (also known as Picross or Griddlers). Solve pixel-art puzzles by marking cells according to numeric clues for rows and columns. The app features:
|
Nonograms is a modern, fast, and accessible logic puzzle game (also known as Picross or Griddlers). Solve pixel-art puzzles by marking cells according to numeric clues for rows and columns. The app features:
|
||||||
- Clean UX with keyboard and touch support
|
- Clean UX with keyboard and touch support
|
||||||
- Multiple languages and PWA support (installable on desktop and mobile)
|
- Multiple languages and PWA support (installable on desktop and mobile)
|
||||||
- Difficulty simulation and guide to learn solving strategies
|
- Difficulty simulation and guide to learn solving strategies
|
||||||
- Shareable puzzles and persistent progress
|
- Shareable puzzles and persistent progress
|
||||||
|
|
||||||
|

|
||||||
|
|
||||||
Play online at https://nonograms.7u.pl or install as a PWA for an app-like experience.
|
Play online at https://nonograms.7u.pl or install as a PWA for an app-like experience.
|
||||||
|
|||||||
@@ -1,37 +0,0 @@
|
|||||||
|
|
||||||
const fs = require('fs');
|
|
||||||
|
|
||||||
const fileContent = fs.readFileSync('src/composables/useI18n.js', 'utf8');
|
|
||||||
|
|
||||||
// Extract the messages object
|
|
||||||
const match = fileContent.match(/const messages = ({[\s\S]*?});/);
|
|
||||||
if (!match) {
|
|
||||||
console.error('Could not find messages object');
|
|
||||||
process.exit(1);
|
|
||||||
}
|
|
||||||
|
|
||||||
// We need to make the string valid JS to eval it.
|
|
||||||
// It seems the content inside `const messages = { ... };` is valid JS object notation.
|
|
||||||
// But we need to be careful about imports or other things if we were to `eval` the whole file.
|
|
||||||
// We'll just `eval` the object part.
|
|
||||||
|
|
||||||
const messagesStr = match[1];
|
|
||||||
const messages = eval(`(${messagesStr})`);
|
|
||||||
|
|
||||||
const enKeys = Object.keys(messages.en);
|
|
||||||
const languages = Object.keys(messages);
|
|
||||||
|
|
||||||
const missing = {};
|
|
||||||
|
|
||||||
languages.forEach(lang => {
|
|
||||||
if (lang === 'en') return;
|
|
||||||
|
|
||||||
const langKeys = Object.keys(messages[lang]);
|
|
||||||
const missingKeys = enKeys.filter(k => !langKeys.includes(k));
|
|
||||||
|
|
||||||
if (missingKeys.length > 0) {
|
|
||||||
missing[lang] = missingKeys;
|
|
||||||
}
|
|
||||||
});
|
|
||||||
|
|
||||||
console.log(JSON.stringify(missing, null, 2));
|
|
||||||
4
package-lock.json
generated
4
package-lock.json
generated
@@ -1,12 +1,12 @@
|
|||||||
{
|
{
|
||||||
"name": "vue-nonograms-solid",
|
"name": "vue-nonograms-solid",
|
||||||
"version": "1.12.3",
|
"version": "1.12.5",
|
||||||
"lockfileVersion": 3,
|
"lockfileVersion": 3,
|
||||||
"requires": true,
|
"requires": true,
|
||||||
"packages": {
|
"packages": {
|
||||||
"": {
|
"": {
|
||||||
"name": "vue-nonograms-solid",
|
"name": "vue-nonograms-solid",
|
||||||
"version": "1.12.3",
|
"version": "1.12.5",
|
||||||
"dependencies": {
|
"dependencies": {
|
||||||
"fireworks-js": "^2.10.8",
|
"fireworks-js": "^2.10.8",
|
||||||
"flag-icons": "^7.5.0",
|
"flag-icons": "^7.5.0",
|
||||||
|
|||||||
@@ -1,6 +1,6 @@
|
|||||||
{
|
{
|
||||||
"name": "vue-nonograms-solid",
|
"name": "vue-nonograms-solid",
|
||||||
"version": "1.12.3",
|
"version": "1.12.5",
|
||||||
"homepage": "https://nonograms.7u.pl/",
|
"homepage": "https://nonograms.7u.pl/",
|
||||||
"type": "module",
|
"type": "module",
|
||||||
"scripts": {
|
"scripts": {
|
||||||
|
|||||||
Reference in New Issue
Block a user