M .github/workflows/lint-css.yml => .github/workflows/lint-css.yml +1 -1
@@ 48,4 48,4 @@ jobs:
- run: echo "::add-matcher::.github/stylelint-matcher.json"
- name: Stylelint
- run: yarn test:lint:sass
+ run: yarn lint:sass
M .github/workflows/lint-js.yml => .github/workflows/lint-js.yml +2 -2
@@ 48,7 48,7 @@ jobs:
run: yarn --frozen-lockfile
- name: ESLint
- run: yarn test:lint:js --max-warnings 0
+ run: yarn lint:js --max-warnings 0
- name: Typecheck
- run: yarn test:typecheck
+ run: yarn typecheck
M .github/workflows/lint-json.yml => .github/workflows/lint-json.yml +1 -1
@@ 40,4 40,4 @@ jobs:
run: yarn --frozen-lockfile
- name: Prettier
- run: yarn prettier --check "**/*.json"
+ run: yarn lint:json
M .github/workflows/lint-md.yml => .github/workflows/lint-md.yml +4 -1
@@ 5,6 5,7 @@ on:
- 'dependabot/**'
paths:
- '.github/workflows/lint-md.yml'
+ - '.nvmrc'
- '.prettier*'
- '**/*.md'
- '!AUTHORS.md'
@@ 14,6 15,7 @@ on:
pull_request:
paths:
- '.github/workflows/lint-md.yml'
+ - '.nvmrc'
- '.prettier*'
- '**/*.md'
- '!AUTHORS.md'
@@ 32,9 34,10 @@ jobs:
uses: actions/setup-node@v3
with:
cache: yarn
+ node-version-file: '.nvmrc'
- name: Install all yarn packages
run: yarn --frozen-lockfile
- name: Prettier
- run: yarn prettier --check "**/*.md"
+ run: yarn lint:md
M .github/workflows/lint-yml.yml => .github/workflows/lint-yml.yml +1 -1
@@ 42,4 42,4 @@ jobs:
run: yarn --frozen-lockfile
- name: Prettier
- run: yarn prettier --check "**/*.{yml,yaml}"
+ run: yarn lint:yml
M .github/workflows/test-js.yml => .github/workflows/test-js.yml +1 -1
@@ 44,4 44,4 @@ jobs:
run: yarn --frozen-lockfile
- name: Jest testing
- run: yarn test:jest --reporters github-actions summary
+ run: yarn jest --reporters github-actions summary
M package.json => package.json +18 -11
@@ 5,21 5,28 @@
"node": ">=16"
},
"scripts": {
- "postversion": "git push --tags",
"build:development": "cross-env RAILS_ENV=development NODE_ENV=development ./bin/webpack",
"build:production": "cross-env RAILS_ENV=production NODE_ENV=production ./bin/webpack",
- "manage:translations": "node ./config/webpack/translationRunner.js",
+ "fix:js": "yarn lint:js --fix",
+ "fix:json": "prettier --write \"**/*.json\"",
+ "fix:md": "prettier --write \"**/*.md\"",
+ "fix:sass": "stylelint --fix \"**/*.{css,scss}\" && prettier --write \"**/*.{css,scss}\"",
+ "fix:yml": "prettier --write \"**/*.{yaml,yml}\"",
+ "fix": "yarn fix:js && yarn fix:json && yarn fix:sass && yarn fix:yml",
"i18n:extract": "formatjs extract 'app/javascript/**/*.{js,jsx,ts,tsx}' '--ignore=**/*.d.ts' --out-file app/javascript/mastodon/locales/en.json --format config/formatjs-formatter.js",
+ "jest": "cross-env NODE_ENV=test jest",
+ "lint:js": "eslint . --ext=.js,.jsx,.ts,.tsx --cache --report-unused-disable-directives",
+ "lint:json": "prettier --check \"**/*.json\"",
+ "lint:md": "prettier --check \"**/*.md\"",
+ "lint:sass": "stylelint \"**/*.{css,scss}\" && prettier --check \"**/*.{css,scss}\"",
+ "lint:yml": "prettier --check \"**/*.{yaml,yml}\"",
+ "lint": "yarn lint:js && yarn lint:json && yarn lint:sass && yarn lint:yml",
+ "manage:translations": "node ./config/webpack/translationRunner.js",
+ "postversion": "git push --tags",
+ "prepare": "husky install",
"start": "node ./streaming/index.js",
- "test": "${npm_execpath} run test:lint:js && ${npm_execpath} run test:typecheck && ${npm_execpath} run test:jest",
- "test:lint": "${npm_execpath} run test:lint:js && ${npm_execpath} run test:lint:sass",
- "test:lint:js": "eslint --ext=.js,.jsx,.ts,.tsx . --cache --report-unused-disable-directives",
- "test:lint:sass": "stylelint \"**/*.{css,scss}\" && prettier --check \"**/*.{css,scss}\"",
- "test:typecheck": "tsc --noEmit",
- "test:jest": "cross-env NODE_ENV=test jest",
- "format": "prettier --write .",
- "format-check": "prettier --check .",
- "prepare": "husky install"
+ "test": "yarn lint && yarn run typecheck && yarn jest",
+ "typecheck": "tsc --noEmit"
},
"repository": {
"type": "git",