mirror of
				https://github.com/blakeblackshear/frigate.git
				synced 2025-10-27 10:52:11 +01:00 
			
		
		
		
	* reload the window on 401 * backend apis for auth * add login page * re-enable web linter * fix login page routing * bypass csrf for internal auth endpoint * disable healthcheck in devcontainer target * include login page in vite build * redirect to login page on 401 * implement config for users and settings * implement JWT actual secret * add brute force protection on login * add support for redirecting from auth failures on api calls * return location for redirect * default cookie name should pass regex test * set hash iterations to current OWASP recommendation * move users to database instead of config * config option to reset admin password on startup * user management UI * check for deleted user on refresh * validate username and fixes * remove password constraint * cleanup * fix user check on refresh * web fixes * implement auth via new external port * use x-forwarded-for to rate limit login attempts by ip * implement logout and profile * fixes * lint fixes * add support for user passthru from upstream proxies * add support for specifying a logout url * add documentation * Update docs/docs/configuration/authentication.md Co-authored-by: Nicolas Mowen <nickmowen213@gmail.com> * Update docs/docs/configuration/authentication.md Co-authored-by: Nicolas Mowen <nickmowen213@gmail.com> --------- Co-authored-by: Nicolas Mowen <nickmowen213@gmail.com>
		
			
				
	
	
		
			75 lines
		
	
	
		
			1.7 KiB
		
	
	
	
		
			JavaScript
		
	
	
	
	
	
			
		
		
	
	
			75 lines
		
	
	
		
			1.7 KiB
		
	
	
	
		
			JavaScript
		
	
	
	
	
	
| module.exports = {
 | |
|   root: true,
 | |
|   extends: [
 | |
|     "eslint:recommended",
 | |
|     "plugin:@typescript-eslint/recommended",
 | |
|     "plugin:react-hooks/recommended",
 | |
|     "plugin:vitest-globals/recommended",
 | |
|     "plugin:prettier/recommended",
 | |
|   ],
 | |
|   env: { browser: true, es2021: true, "vitest-globals/env": true },
 | |
|   ignorePatterns: ["dist", ".eslintrc.cjs"],
 | |
|   parser: "@typescript-eslint/parser",
 | |
|   parserOptions: {
 | |
|     ecmaFeatures: {
 | |
|       jsx: true,
 | |
|     },
 | |
|     ecmaVersion: "latest",
 | |
|     sourceType: "module",
 | |
|   },
 | |
|   settings: {
 | |
|     jest: {
 | |
|       version: 27,
 | |
|     },
 | |
|   },
 | |
|   ignorePatterns: ["*.d.ts", "/src/components/ui/*"],
 | |
|   plugins: ["react-hooks", "react-refresh"],
 | |
|   rules: {
 | |
|     "react-hooks/rules-of-hooks": "error",
 | |
|     "react-hooks/exhaustive-deps": "error",
 | |
|     "react-refresh/only-export-components": [
 | |
|       "warn",
 | |
|       { allowConstantExport: true },
 | |
|     ],
 | |
|     "comma-dangle": [
 | |
|       "error",
 | |
|       {
 | |
|         objects: "always-multiline",
 | |
|         arrays: "always-multiline",
 | |
|         imports: "always-multiline",
 | |
|       },
 | |
|     ],
 | |
|     "no-unused-vars": [
 | |
|       "error",
 | |
|       { argsIgnorePattern: "^_", varsIgnorePattern: "^_" },
 | |
|     ],
 | |
|     "@typescript-eslint/no-unused-vars": [
 | |
|       "error",
 | |
|       {
 | |
|         argsIgnorePattern: "^_",
 | |
|         varsIgnorePattern: "^_",
 | |
|         caughtErrorsIgnorePattern: "^_",
 | |
|       },
 | |
|     ],
 | |
|     "no-console": "error",
 | |
|     "prettier/prettier": [
 | |
|       "warn",
 | |
|       {
 | |
|         plugins: ["prettier-plugin-tailwindcss"],
 | |
|       },
 | |
|     ],
 | |
|   },
 | |
|   overrides: [
 | |
|     {
 | |
|       files: ["**/*.{ts,tsx}"],
 | |
|       parser: "@typescript-eslint/parser",
 | |
|       plugins: ["@typescript-eslint"],
 | |
|       extends: [
 | |
|         "eslint:recommended",
 | |
|         "plugin:@typescript-eslint/recommended",
 | |
|         "prettier",
 | |
|       ],
 | |
|     },
 | |
|   ],
 | |
| };
 |