diff --git a/.eslintrc b/.eslintrc deleted file mode 100644 index d36d46a..0000000 --- a/.eslintrc +++ /dev/null @@ -1,20 +0,0 @@ -{ - "extends": "@wowserhq/eslint-config", - "env": { - "browser": true, - "es6": true, - "node": true - }, - "rules": { - "camelcase": "off", - "import/order": ["error"], - "no-console": "off", - "no-unused-vars": ["error", { - "argsIgnorePattern": "^_", - "varsIgnorePattern": "^_" - }], - "quotes": ["error", "single", { - "avoidEscape": true - }] - } -} diff --git a/.eslintrc.cjs b/.eslintrc.cjs new file mode 100644 index 0000000..2b7b004 --- /dev/null +++ b/.eslintrc.cjs @@ -0,0 +1,25 @@ +// TODO: Expand @wowserhq/eslint-config with TypeScript variant +module.exports = { + extends: [ + 'eslint:recommended', + 'plugin:@typescript-eslint/recommended', + 'plugin:import/recommended', + 'plugin:import/typescript', + ], + parser: '@typescript-eslint/parser', + plugins: ['@typescript-eslint'], + root: true, + env: { browser: true, node: true }, + rules: { + 'camelcase': 'off', + 'no-console': 'off', + 'no-unused-vars': ['error', { + 'argsIgnorePattern': '^_', + 'varsIgnorePattern': '^_' + }], + 'quotes': ['error', 'single', { + 'avoidEscape': true + }], + 'semi': ['warn'], + }, +}; diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index ef8a159..57b55fc 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -9,7 +9,7 @@ jobs: runs-on: ubuntu-latest strategy: matrix: - node-version: [10.x, 12.x, 14.x] + node-version: [18.x, 20.x] steps: - uses: actions/checkout@v2 - uses: actions/setup-node@v1 @@ -22,24 +22,24 @@ jobs: CI: true test-coverage: - name: test coverage (12.x) + name: test coverage (20.x) runs-on: ubuntu-latest steps: - uses: actions/checkout@v2 - uses: actions/setup-node@v1 with: - node-version: 12 + node-version: 20 - run: npm install - run: npm run test:coverage - uses: codecov/codecov-action@v1 build: - name: build (12.x) + name: build (20.x) runs-on: ubuntu-latest steps: - uses: actions/checkout@v2 - uses: actions/setup-node@v1 with: - node-version: 12 + node-version: 20 - run: npm install - run: npm run build diff --git a/.github/workflows/pull-request.yml b/.github/workflows/pull-request.yml index 2834f73..e3e727a 100644 --- a/.github/workflows/pull-request.yml +++ b/.github/workflows/pull-request.yml @@ -6,7 +6,7 @@ jobs: runs-on: ubuntu-latest strategy: matrix: - node-version: [10.x, 12.x, 14.x] + node-version: [18.x, 20.x] steps: - uses: actions/checkout@v2 - uses: actions/setup-node@v1 @@ -19,24 +19,24 @@ jobs: CI: true test-coverage: - name: test coverage (12.x) + name: test coverage (20.x) runs-on: ubuntu-latest steps: - uses: actions/checkout@v2 - uses: actions/setup-node@v1 with: - node-version: 12 + node-version: 20 - run: npm install - run: npm run test:coverage - uses: codecov/codecov-action@v1 build: - name: build (12.x) + name: build (20.x) runs-on: ubuntu-latest steps: - uses: actions/checkout@v2 - uses: actions/setup-node@v1 with: - node-version: 12 + node-version: 20 - run: npm install - run: npm run build diff --git a/README.md b/README.md index 8a1d230..0f5e743 100644 --- a/README.md +++ b/README.md @@ -29,8 +29,7 @@ the official client is required. ## Development -Wowser is written in [ES2015+], modularized using [ECMAScript modules] and -developed with [webpack]. +Wowser is written in [TypeScript] and developed with [vite]. 1. Clone the repository: @@ -38,7 +37,7 @@ developed with [webpack]. git clone git://github.com/wowserhq/wowser.git ``` -2. Download and install [Node.js] 12+ for your platform. +2. Download and install [Node.js] 20+ for your platform. 3. Install dependencies: @@ -79,9 +78,9 @@ When contributing, please: [BLPConverter]: https://github.com/wowserhq/blizzardry#blp [ECMAScript modules]: https://developer.mozilla.org/en-US/docs/Web/JavaScript/Guide/Modules -[ES2015+]: https://babeljs.io/docs/learn-es2015/ [Node.js]: http://nodejs.org/#download [StormLib]: https://github.com/wowserhq/blizzardry#mpq +[TypeScript]: https://www.typescriptlang.org/ [Wowser]: https://github.com/wowserhq/wowser [soon™]: http://www.wowwiki.com/Soon -[webpack]: http://webpack.github.io/ +[vite]: https://vitejs.dev/ diff --git a/commitlint.config.js b/commitlint.config.cjs similarity index 100% rename from commitlint.config.js rename to commitlint.config.cjs diff --git a/husky.config.js b/husky.config.cjs similarity index 100% rename from husky.config.js rename to husky.config.cjs diff --git a/src/index.html b/index.html similarity index 86% rename from src/index.html rename to index.html index adeb48d..f432d3c 100644 --- a/src/index.html +++ b/index.html @@ -1,7 +1,9 @@ + Wowser +