Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
23 commits
Select commit Hold shift + click to select a range
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
13 changes: 12 additions & 1 deletion .github/workflows/node.yml
Original file line number Diff line number Diff line change
Expand Up @@ -4,7 +4,6 @@ on:
push:
branches: [main]
pull_request:
branches: [main]

jobs:
test:
Expand All @@ -13,6 +12,13 @@ jobs:
matrix:
os: [ubuntu-latest, windows-latest, macos-latest]
node-version: [18.x, 20.x, 22.x, 24.x]
exclude:
# Node 18 is EOL, but we test it on linux because we still run nodejs-mobile v18
# Node 18 on Windows was causing issues in our tests, and we don't run node 18 on windows anywhere
- os: macos-latest
node-version: 18.x
- os: windows-latest
node-version: 18.x

runs-on: ${{ matrix.os }}

Expand All @@ -30,3 +36,8 @@ jobs:

- name: Run tests
run: npm test

- name: Upload coverage reports to Codecov
uses: codecov/codecov-action@v5
with:
token: ${{ secrets.CODECOV_TOKEN }}
9 changes: 5 additions & 4 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -534,10 +534,11 @@ All error responses follow this format:

### Map Errors

| Code | Status | Description |
| ------------------ | ------ | ----------------------------------------- |
| `MAP_NOT_FOUND` | 404 | The requested map does not exist |
| `INVALID_MAP_FILE` | 400 | The uploaded file is not a valid SMP file |
| Code | Status | Description |
| -------------------- | ------ | ------------------------------------------------------------------------ |
| `MAP_NOT_FOUND` | 404 | The requested map does not exist |
| `RESOURCE_NOT_FOUND` | 404 | The map exists but the requested resource (tile, sprite, glyph) does not |
| `INVALID_MAP_FILE` | 400 | The uploaded file is not a valid SMP file |

### Map Share Errors (Sender-side)

Expand Down
28 changes: 21 additions & 7 deletions eslint.config.mjs
Original file line number Diff line number Diff line change
@@ -1,9 +1,23 @@
import js from "@eslint/js";
import globals from "globals";
import { defineConfig } from "eslint/config";

import js from '@eslint/js'
import { defineConfig } from 'eslint/config'
import globals from 'globals'
import tseslint from 'typescript-eslint'

export default defineConfig([
{ files: ["**/*.{js,mjs,cjs}"], plugins: { js }, extends: ["js/recommended"] },
{ files: ["**/*.{js,mjs,cjs}"], languageOptions: { globals: globals.node } },
]);
{ ignores: ['dist/', 'coverage/'] },
js.configs.recommended,
tseslint.configs.recommended,
{
languageOptions: { globals: globals.node },
rules: {
'@typescript-eslint/no-explicit-any': 'off',
'@typescript-eslint/no-empty-object-type': 'off',
// The non-null assertion operator is useful in some cases, e.g., when working with Maps.
'@typescript-eslint/no-non-null-assertion': 'off',
// The void type is useful for a variable that will be assigned the result of a function that returns void.
'@typescript-eslint/no-invalid-void-type': 'off',
// This one's just annoying
'@typescript-eslint/ban-ts-comment': 'off',
},
},
])
Loading