fix: production readiness bugfix batch

- Security: JWT fallback removed, auth checks on unprotected endpoints
- Build: tsconfig excludes tests, ESLint flat config fixed
- Money: Cashout deducts balance in transaction, UI refreshes
- Core Chat: Nur page wired to send/receive messages
- Profile: Replaced hardcoded data with useAuth()
- Forum: Fixed thread detail query, premium check on posts
- Misc: /dua→/prayer, forum thread API handles ?id= param

QA gate: pending
This commit is contained in:
FalahMobile
2026-07-06 20:20:31 +08:00
parent 9f33038c37
commit d7b2d19359
13 changed files with 382 additions and 53 deletions
+19 -12
View File
@@ -1,13 +1,20 @@
import { dirname } from "path";
import { fileURLToPath } from "url";
import { FlatCompat } from "@eslint/eslintrc";
// ESLint flat config for FalahMobile
// Uses @eslint/js directly to avoid eslintrc circular dependency
import js from '@eslint/js'
import nextPlugin from '@next/eslint-plugin-next'
const __filename = fileURLToPath(import.meta.url);
const __dirname = dirname(__filename);
const compat = new FlatCompat({
baseDirectory: __dirname,
});
const eslintConfig = [...compat.extends("next/core-web-vitals")];
export default eslintConfig;
export default [
js.configs.recommended,
{
plugins: {
'@next/next': nextPlugin,
},
rules: {
...nextPlugin.configs.recommended.rules,
...nextPlugin.configs['core-web-vitals'].rules,
},
},
{
ignores: ['**/node_modules/**', '.next/**', '**/*.js', '**/*.mjs'],
},
]