mirror of
https://github.com/j2masamitu/obsidian-goboard-viewer.git
synced 2026-07-22 06:42:06 +00:00
Add ESLint configuration and scripts
Add ESLint to the project with TypeScript support and update npm scripts to include linting in the build process. 🤖 Generated with [Claude Code](https://claude.com/claude-code) Co-Authored-By: Claude <noreply@anthropic.com>
This commit is contained in:
parent
cc496d0fd7
commit
b2437d4673
2 changed files with 67 additions and 4 deletions
57
eslint.config.mjs
Normal file
57
eslint.config.mjs
Normal file
|
|
@ -0,0 +1,57 @@
|
|||
import tseslint from "typescript-eslint";
|
||||
import obsidianmd from "eslint-plugin-obsidianmd";
|
||||
|
||||
export default tseslint.config(
|
||||
{
|
||||
files: ["**/*.ts"],
|
||||
plugins: {
|
||||
obsidianmd,
|
||||
},
|
||||
languageOptions: {
|
||||
parser: tseslint.parser,
|
||||
parserOptions: {
|
||||
project: true,
|
||||
tsconfigRootDir: import.meta.dirname,
|
||||
},
|
||||
},
|
||||
rules: {
|
||||
// Obsidian plugin rules only (what the bot actually checks)
|
||||
"obsidianmd/commands/no-command-in-command-id": "error",
|
||||
"obsidianmd/commands/no-command-in-command-name": "error",
|
||||
"obsidianmd/commands/no-default-hotkeys": "error",
|
||||
"obsidianmd/commands/no-plugin-id-in-command-id": "error",
|
||||
"obsidianmd/commands/no-plugin-name-in-command-name": "error",
|
||||
"obsidianmd/settings-tab/no-manual-html-headings": "error",
|
||||
"obsidianmd/settings-tab/no-problematic-settings-headings": "error",
|
||||
"obsidianmd/vault/iterate": "error",
|
||||
"obsidianmd/detach-leaves": "error",
|
||||
"obsidianmd/hardcoded-config-path": "error",
|
||||
"obsidianmd/no-forbidden-elements": "error",
|
||||
"obsidianmd/no-plugin-as-component": "error",
|
||||
"obsidianmd/no-sample-code": "error",
|
||||
"obsidianmd/no-tfile-tfolder-cast": "error",
|
||||
"obsidianmd/no-view-references-in-plugin": "error",
|
||||
"obsidianmd/no-static-styles-assignment": "error",
|
||||
"obsidianmd/object-assign": "error",
|
||||
"obsidianmd/platform": "error",
|
||||
"obsidianmd/prefer-file-manager-trash-file": "warn",
|
||||
"obsidianmd/prefer-abstract-input-suggest": "error",
|
||||
"obsidianmd/regex-lookbehind": "error",
|
||||
"obsidianmd/sample-names": "error",
|
||||
"obsidianmd/validate-manifest": "error",
|
||||
"obsidianmd/validate-license": "error",
|
||||
"obsidianmd/ui/sentence-case": ["error", { enforceCamelCaseLower: true }],
|
||||
},
|
||||
},
|
||||
{
|
||||
ignores: [
|
||||
"main.js",
|
||||
"node_modules/**",
|
||||
".obsidian/**",
|
||||
"*.config.mjs",
|
||||
"*.config.js",
|
||||
"**/*.min.js",
|
||||
"goboard-publisher/**",
|
||||
],
|
||||
}
|
||||
);
|
||||
14
package.json
14
package.json
|
|
@ -5,8 +5,11 @@
|
|||
"main": "main.js",
|
||||
"scripts": {
|
||||
"dev": "node esbuild.config.mjs",
|
||||
"build": "tsc -noEmit -skipLibCheck && node esbuild.config.mjs production",
|
||||
"version": "node version-bump.mjs && git add manifest.json versions.json"
|
||||
"build": "npm run lint && tsc -noEmit -skipLibCheck && node esbuild.config.mjs production",
|
||||
"version": "node version-bump.mjs && git add manifest.json versions.json",
|
||||
"lint": "eslint .",
|
||||
"lint:fix": "eslint . --fix",
|
||||
"precommit": "npm run lint"
|
||||
},
|
||||
"keywords": [
|
||||
"obsidian",
|
||||
|
|
@ -37,13 +40,16 @@
|
|||
"@typescript-eslint/parser": "^5.29.0",
|
||||
"builtin-modules": "^3.3.0",
|
||||
"esbuild": "0.17.3",
|
||||
"eslint": "^9.39.1",
|
||||
"obsidian": "latest",
|
||||
"tslib": "2.4.0",
|
||||
"typescript": "4.7.4"
|
||||
"typescript": "4.7.4",
|
||||
"typescript-eslint": "^8.46.4"
|
||||
},
|
||||
"dependencies": {
|
||||
"@sabaki/shudan": "^1.7.1",
|
||||
"@sabaki/sgf": "^3.4.5",
|
||||
"@sabaki/shudan": "^1.7.1",
|
||||
"eslint-plugin-obsidianmd": "file:../../../../private/tmp/eslint-plugin-obsidianmd",
|
||||
"preact": "^10.19.3"
|
||||
}
|
||||
}
|
||||
|
|
|
|||
Loading…
Reference in a new issue