7eb06ed905
Native browser prompt() is unreliable on mobile browsers and PWAs, often requiring multiple clicks to close. Replace all prompt() calls with custom promptModal() and selectModal() functions that use the existing modal system with proper focus management and animations. Affected pages: shopping (create/rename list), tasks (add subtask), meals (choose shopping list). Fixes #12
44 lines
1.8 KiB
JSON
44 lines
1.8 KiB
JSON
{
|
|
"name": "oikos",
|
|
"version": "0.8.1",
|
|
"description": "Self-hosted family planner - calendar, tasks, shopping, meal planning, budget and more. Private, open-source, no subscription.",
|
|
"main": "server/index.js",
|
|
"type": "module",
|
|
"engines": {
|
|
"node": ">=22.0.0"
|
|
},
|
|
"scripts": {
|
|
"start": "node --import dotenv/config server/index.js",
|
|
"dev": "node --import dotenv/config --watch server/index.js",
|
|
"setup": "node --import dotenv/config setup.js",
|
|
"test:db": "node --experimental-sqlite test-db.js",
|
|
"test:dashboard": "node --experimental-sqlite test-dashboard.js",
|
|
"test:tasks": "node --experimental-sqlite test-tasks.js",
|
|
"test:shopping": "node --experimental-sqlite test-shopping.js",
|
|
"test:meals": "node --experimental-sqlite test-meals.js",
|
|
"test:calendar": "node --experimental-sqlite test-calendar.js",
|
|
"test:ncb": "node --experimental-sqlite test-notes-contacts-budget.js",
|
|
"test:ux-utils": "node test-ux-utils.js",
|
|
"test:modal-utils": "node --loader ./test-browser-loader.mjs test-modal-utils.js",
|
|
"test": "node --experimental-sqlite test-db.js && node --experimental-sqlite test-dashboard.js && node --experimental-sqlite test-tasks.js && node --experimental-sqlite test-shopping.js && node --experimental-sqlite test-meals.js && node --experimental-sqlite test-calendar.js && node --experimental-sqlite test-notes-contacts-budget.js && npm run test:ux-utils && npm run test:modal-utils"
|
|
},
|
|
"dependencies": {
|
|
"bcrypt": "^6.0.0",
|
|
"better-sqlite3": "^9.6.0",
|
|
"dotenv": "^16.4.7",
|
|
"express": "^4.21.2",
|
|
"express-rate-limit": "^7.5.0",
|
|
"express-session": "^1.18.1",
|
|
"helmet": "^8.0.0",
|
|
"node-fetch": "^3.3.2"
|
|
},
|
|
"optionalDependencies": {
|
|
"googleapis": "^144.0.0",
|
|
"tsdav": "^2.0.10"
|
|
},
|
|
"license": "MIT",
|
|
"devDependencies": {
|
|
"sharp": "^0.34.5"
|
|
}
|
|
}
|