diff --git a/.eslintrc.cjs b/.eslintrc.cjs new file mode 100644 index 00000000..e6fc57b1 --- /dev/null +++ b/.eslintrc.cjs @@ -0,0 +1,27 @@ +module.exports = { + root: true, + env: { browser: true, es2020: true }, + extends: [ + 'eslint:recommended', + 'plugin:@typescript-eslint/recommended', + 'plugin:react-hooks/recommended', + ], + ignorePatterns: ['dist', '.eslintrc.cjs'], + parser: '@typescript-eslint/parser', + parserOptions: { + ecmaVersion: 'latest', + sourceType: 'module', + }, + plugins: ['react-refresh'], + rules: { + 'react-refresh/only-export-components': [ + 'warn', + { allowConstantExport: true }, + ], + '@typescript-eslint/no-explicit-any': 'warn', + '@typescript-eslint/no-unused-vars': ['warn', { argsIgnorePattern: '^_' }], + }, + settings: { + react: { version: 'detect' }, + }, +}; diff --git a/.githooks/pre-commit b/.githooks/pre-commit index 681c3ced..32176c3b 100755 --- a/.githooks/pre-commit +++ b/.githooks/pre-commit @@ -1,6 +1,6 @@ #!/bin/bash #============================================================================== -# pre-commit hook (React JavaScript) +# pre-commit hook (React TypeScript) # ESLint 검증 — 실패 시 커밋 차단 #============================================================================== @@ -19,7 +19,7 @@ fi # ESLint 검증 (설정 파일이 있는 경우만) if [ -f ".eslintrc.js" ] || [ -f ".eslintrc.json" ] || [ -f ".eslintrc.cjs" ] || [ -f "eslint.config.js" ] || [ -f "eslint.config.mjs" ]; then echo "pre-commit: ESLint 검증 중..." - npx eslint src/ --ext .js,.jsx --quiet 2>&1 + npx eslint src/ --ext .ts,.tsx --quiet 2>&1 LINT_RESULT=$? if [ $LINT_RESULT -ne 0 ]; then diff --git a/.gitignore b/.gitignore index ba1152d6..60710fe8 100644 --- a/.gitignore +++ b/.gitignore @@ -31,8 +31,5 @@ Desktop.ini .claude/settings.local.json .claude/scripts/ -# TypeScript files (메인 프로젝트 참조용, 빌드/커밋 제외) -**/*.ts -**/*.tsx -# tracking VesselListManager (참조용) -src/tracking/components/VesselListManager/ +# TypeScript config (vite.config.ts 등은 추적) +# tsconfig*.json은 추적 diff --git a/.yarn-offline-cache/@types-json-schema-7.0.15.tgz b/.yarn-offline-cache/@types-json-schema-7.0.15.tgz new file mode 100644 index 00000000..7c621c81 Binary files /dev/null and b/.yarn-offline-cache/@types-json-schema-7.0.15.tgz differ diff --git a/.yarn-offline-cache/@types-node-22.19.11.tgz b/.yarn-offline-cache/@types-node-22.19.11.tgz new file mode 100644 index 00000000..2f7259ac Binary files /dev/null and b/.yarn-offline-cache/@types-node-22.19.11.tgz differ diff --git a/.yarn-offline-cache/@types-prop-types-15.7.15.tgz b/.yarn-offline-cache/@types-prop-types-15.7.15.tgz new file mode 100644 index 00000000..ba94e526 Binary files /dev/null and b/.yarn-offline-cache/@types-prop-types-15.7.15.tgz differ diff --git a/.yarn-offline-cache/@types-react-18.3.28.tgz b/.yarn-offline-cache/@types-react-18.3.28.tgz new file mode 100644 index 00000000..21760b60 Binary files /dev/null and b/.yarn-offline-cache/@types-react-18.3.28.tgz differ diff --git a/.yarn-offline-cache/@types-react-dom-18.3.7.tgz b/.yarn-offline-cache/@types-react-dom-18.3.7.tgz new file mode 100644 index 00000000..fc672676 Binary files /dev/null and b/.yarn-offline-cache/@types-react-dom-18.3.7.tgz differ diff --git a/.yarn-offline-cache/@types-semver-7.7.1.tgz b/.yarn-offline-cache/@types-semver-7.7.1.tgz new file mode 100644 index 00000000..3ca24583 Binary files /dev/null and b/.yarn-offline-cache/@types-semver-7.7.1.tgz differ diff --git a/.yarn-offline-cache/@typescript-eslint-eslint-plugin-6.21.0.tgz b/.yarn-offline-cache/@typescript-eslint-eslint-plugin-6.21.0.tgz new file mode 100644 index 00000000..7b43fb08 Binary files /dev/null and b/.yarn-offline-cache/@typescript-eslint-eslint-plugin-6.21.0.tgz differ diff --git a/.yarn-offline-cache/@typescript-eslint-parser-6.21.0.tgz b/.yarn-offline-cache/@typescript-eslint-parser-6.21.0.tgz new file mode 100644 index 00000000..aee18d8c Binary files /dev/null and b/.yarn-offline-cache/@typescript-eslint-parser-6.21.0.tgz differ diff --git a/.yarn-offline-cache/@typescript-eslint-scope-manager-6.21.0.tgz b/.yarn-offline-cache/@typescript-eslint-scope-manager-6.21.0.tgz new file mode 100644 index 00000000..b69d3557 Binary files /dev/null and b/.yarn-offline-cache/@typescript-eslint-scope-manager-6.21.0.tgz differ diff --git a/.yarn-offline-cache/@typescript-eslint-type-utils-6.21.0.tgz b/.yarn-offline-cache/@typescript-eslint-type-utils-6.21.0.tgz new file mode 100644 index 00000000..ebbc6e4d Binary files /dev/null and b/.yarn-offline-cache/@typescript-eslint-type-utils-6.21.0.tgz differ diff --git a/.yarn-offline-cache/@typescript-eslint-types-6.21.0.tgz b/.yarn-offline-cache/@typescript-eslint-types-6.21.0.tgz new file mode 100644 index 00000000..1dfcec16 Binary files /dev/null and b/.yarn-offline-cache/@typescript-eslint-types-6.21.0.tgz differ diff --git a/.yarn-offline-cache/@typescript-eslint-typescript-estree-6.21.0.tgz b/.yarn-offline-cache/@typescript-eslint-typescript-estree-6.21.0.tgz new file mode 100644 index 00000000..0cbf4047 Binary files /dev/null and b/.yarn-offline-cache/@typescript-eslint-typescript-estree-6.21.0.tgz differ diff --git a/.yarn-offline-cache/@typescript-eslint-utils-6.21.0.tgz b/.yarn-offline-cache/@typescript-eslint-utils-6.21.0.tgz new file mode 100644 index 00000000..4889e119 Binary files /dev/null and b/.yarn-offline-cache/@typescript-eslint-utils-6.21.0.tgz differ diff --git a/.yarn-offline-cache/@typescript-eslint-visitor-keys-6.21.0.tgz b/.yarn-offline-cache/@typescript-eslint-visitor-keys-6.21.0.tgz new file mode 100644 index 00000000..fe6dbda5 Binary files /dev/null and b/.yarn-offline-cache/@typescript-eslint-visitor-keys-6.21.0.tgz differ diff --git a/.yarn-offline-cache/array-union-2.1.0.tgz b/.yarn-offline-cache/array-union-2.1.0.tgz new file mode 100644 index 00000000..449fdaa2 Binary files /dev/null and b/.yarn-offline-cache/array-union-2.1.0.tgz differ diff --git a/.yarn-offline-cache/brace-expansion-2.0.2.tgz b/.yarn-offline-cache/brace-expansion-2.0.2.tgz new file mode 100644 index 00000000..b76e79f0 Binary files /dev/null and b/.yarn-offline-cache/brace-expansion-2.0.2.tgz differ diff --git a/.yarn-offline-cache/braces-3.0.3.tgz b/.yarn-offline-cache/braces-3.0.3.tgz new file mode 100644 index 00000000..7ca6e9b7 Binary files /dev/null and b/.yarn-offline-cache/braces-3.0.3.tgz differ diff --git a/.yarn-offline-cache/csstype-3.2.3.tgz b/.yarn-offline-cache/csstype-3.2.3.tgz new file mode 100644 index 00000000..3c1935ba Binary files /dev/null and b/.yarn-offline-cache/csstype-3.2.3.tgz differ diff --git a/.yarn-offline-cache/dir-glob-3.0.1.tgz b/.yarn-offline-cache/dir-glob-3.0.1.tgz new file mode 100644 index 00000000..2e074f07 Binary files /dev/null and b/.yarn-offline-cache/dir-glob-3.0.1.tgz differ diff --git a/.yarn-offline-cache/fast-glob-3.3.3.tgz b/.yarn-offline-cache/fast-glob-3.3.3.tgz new file mode 100644 index 00000000..b8be9bbe Binary files /dev/null and b/.yarn-offline-cache/fast-glob-3.3.3.tgz differ diff --git a/.yarn-offline-cache/fill-range-7.1.1.tgz b/.yarn-offline-cache/fill-range-7.1.1.tgz new file mode 100644 index 00000000..7224940d Binary files /dev/null and b/.yarn-offline-cache/fill-range-7.1.1.tgz differ diff --git a/.yarn-offline-cache/glob-parent-5.1.2.tgz b/.yarn-offline-cache/glob-parent-5.1.2.tgz new file mode 100644 index 00000000..c0d2bb7d Binary files /dev/null and b/.yarn-offline-cache/glob-parent-5.1.2.tgz differ diff --git a/.yarn-offline-cache/globby-11.1.0.tgz b/.yarn-offline-cache/globby-11.1.0.tgz new file mode 100644 index 00000000..3f3b9e5c Binary files /dev/null and b/.yarn-offline-cache/globby-11.1.0.tgz differ diff --git a/.yarn-offline-cache/is-number-7.0.0.tgz b/.yarn-offline-cache/is-number-7.0.0.tgz new file mode 100644 index 00000000..8b150f2a Binary files /dev/null and b/.yarn-offline-cache/is-number-7.0.0.tgz differ diff --git a/.yarn-offline-cache/merge2-1.4.1.tgz b/.yarn-offline-cache/merge2-1.4.1.tgz new file mode 100644 index 00000000..12ee72c7 Binary files /dev/null and b/.yarn-offline-cache/merge2-1.4.1.tgz differ diff --git a/.yarn-offline-cache/micromatch-4.0.8.tgz b/.yarn-offline-cache/micromatch-4.0.8.tgz new file mode 100644 index 00000000..bff9e390 Binary files /dev/null and b/.yarn-offline-cache/micromatch-4.0.8.tgz differ diff --git a/.yarn-offline-cache/minimatch-9.0.3.tgz b/.yarn-offline-cache/minimatch-9.0.3.tgz new file mode 100644 index 00000000..81dff922 Binary files /dev/null and b/.yarn-offline-cache/minimatch-9.0.3.tgz differ diff --git a/.yarn-offline-cache/path-type-4.0.0.tgz b/.yarn-offline-cache/path-type-4.0.0.tgz new file mode 100644 index 00000000..fa914d00 Binary files /dev/null and b/.yarn-offline-cache/path-type-4.0.0.tgz differ diff --git a/.yarn-offline-cache/picomatch-2.3.1.tgz b/.yarn-offline-cache/picomatch-2.3.1.tgz new file mode 100644 index 00000000..33143b7f Binary files /dev/null and b/.yarn-offline-cache/picomatch-2.3.1.tgz differ diff --git a/.yarn-offline-cache/semver-7.7.4.tgz b/.yarn-offline-cache/semver-7.7.4.tgz new file mode 100644 index 00000000..559ec6b2 Binary files /dev/null and b/.yarn-offline-cache/semver-7.7.4.tgz differ diff --git a/.yarn-offline-cache/slash-3.0.0.tgz b/.yarn-offline-cache/slash-3.0.0.tgz new file mode 100644 index 00000000..aa40ca65 Binary files /dev/null and b/.yarn-offline-cache/slash-3.0.0.tgz differ diff --git a/.yarn-offline-cache/to-regex-range-5.0.1.tgz b/.yarn-offline-cache/to-regex-range-5.0.1.tgz new file mode 100644 index 00000000..b62f27fd Binary files /dev/null and b/.yarn-offline-cache/to-regex-range-5.0.1.tgz differ diff --git a/.yarn-offline-cache/ts-api-utils-1.4.3.tgz b/.yarn-offline-cache/ts-api-utils-1.4.3.tgz new file mode 100644 index 00000000..70d140f8 Binary files /dev/null and b/.yarn-offline-cache/ts-api-utils-1.4.3.tgz differ diff --git a/.yarn-offline-cache/typescript-5.7.3.tgz b/.yarn-offline-cache/typescript-5.7.3.tgz new file mode 100644 index 00000000..86b1ff14 Binary files /dev/null and b/.yarn-offline-cache/typescript-5.7.3.tgz differ diff --git a/.yarn-offline-cache/undici-types-6.21.0.tgz b/.yarn-offline-cache/undici-types-6.21.0.tgz new file mode 100644 index 00000000..2e6a7395 Binary files /dev/null and b/.yarn-offline-cache/undici-types-6.21.0.tgz differ diff --git a/index.html b/index.html index 21e282dd..6d59e12d 100644 --- a/index.html +++ b/index.html @@ -11,6 +11,6 @@
- +