Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
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
39 changes: 26 additions & 13 deletions .github/workflows/quality.yml
Original file line number Diff line number Diff line change
@@ -1,16 +1,29 @@
name: quality
name: Quality

on: push
on:
pull_request: # Run this workflow for all pull request changes
types:
- opened
- reopened
- synchronize
repository_dispatch: # Run this workflow when base branch updates
types: [base_branch_updated]

jobs:
quality:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
- uses: actions/setup-node@v4
- name: Install npm dependencies
run: npm ci
env:
HUSKY: 0
- name: Run quality checks
run: npm run quality
quality:
runs-on: ubuntu-latest
if: ${{ !contains(github.event.head_commit.message, '[ci-skip]') }}
steps:
- uses: actions/checkout@v6
- uses: actions/setup-node@v6
with:
node-version: 24
registry-url: 'https://registry.npmjs.org'
- name: Update npm
run: npm install -g npm@latest
- name: Install dependencies
run: npm ci
env:
HUSKY: 0 # Disable husky within CI/CD
- name: Run quality checks
run: npm run quality
39 changes: 0 additions & 39 deletions .github/workflows/release-please.yml

This file was deleted.

44 changes: 44 additions & 0 deletions .github/workflows/release.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,44 @@
name: Release

on:
push:
branches:
- main

permissions:
id-token: write # Required for OIDC / NPM Trusted Publishing (https://repos.openssf.org/trusted-publishers-for-all-package-repositories)
issues: write
contents: write
pull-requests: write

jobs:
release:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v6
- uses: actions/setup-node@v6
with:
node-version: 24
registry-url: 'https://registry.npmjs.org'
- name: Update npm
run: npm install -g npm@latest # NPM Trusted Publishing requires npm 11.5.1 or later
- name: Install dependencies
run: npm ci
env:
HUSKY: 0 # Disable husky within CI/CD
- name: Configure git
run: |
git config user.name "GitHub Actions Bot"
git config user.email "github-actions-bot@users.noreply.github.com"
- uses: googleapis/release-please-action@v4
with:
release-type: node
- name: Build project
if: ${{ steps.release.outputs.release_created }}
run: npm run build
- name: Bundle tarball
if: ${{ steps.release.outputs.release_created }}
run: npm run package
- name: Publish to npm
if: ${{ steps.release.outputs.release_created }}
run: npm publish
2 changes: 1 addition & 1 deletion .npmrc
Original file line number Diff line number Diff line change
@@ -1 +1 @@
//registry.npmjs.org/:_authToken=${NPM_TOKEN}
registry=https://registry.npmjs.org/
2 changes: 1 addition & 1 deletion .nvmrc
Original file line number Diff line number Diff line change
@@ -1 +1 @@
v22
v24
9 changes: 5 additions & 4 deletions .prettierrc.json
Original file line number Diff line number Diff line change
@@ -1,6 +1,7 @@
{
"semi": true,
"singleQuote": true,
"trailingComma": "es5",
"useTabs": true
"printWidth": 100,
"singleQuote": true,
"tabWidth": 4,
"arrowParens": "always",
"trailingComma": "none"
}
3 changes: 3 additions & 0 deletions .release-please-manifest.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,3 @@
{
".": "1.0.0"
}
8 changes: 2 additions & 6 deletions babel.config.mjs
Original file line number Diff line number Diff line change
@@ -1,8 +1,4 @@
export default {
presets: [
'@babel/preset-env',
'@babel/preset-react',
'@babel/preset-typescript',
],
plugins: ['@babel/plugin-transform-runtime'],
presets: ['@babel/preset-env', '@babel/preset-react', '@babel/preset-typescript'],
plugins: ['@babel/plugin-transform-runtime']
};
56 changes: 28 additions & 28 deletions eslint.config.mjs
Original file line number Diff line number Diff line change
Expand Up @@ -10,39 +10,39 @@ import { FlatCompat } from '@eslint/eslintrc';
const __filename = fileURLToPath(import.meta.url);
const __dirname = path.dirname(__filename);
const compat = new FlatCompat({
baseDirectory: __dirname,
recommendedConfig: js.configs.recommended,
allConfig: js.configs.all,
baseDirectory: __dirname,
recommendedConfig: js.configs.recommended,
allConfig: js.configs.all
});

export default [
...compat.extends(
'eslint:recommended',
'plugin:react/recommended',
'plugin:@typescript-eslint/recommended'
),
{
plugins: {
react,
'@typescript-eslint': typescriptEslint,
},
...compat.extends(
'eslint:recommended',
'plugin:react/recommended',
'plugin:@typescript-eslint/recommended'
),
{
plugins: {
react,
'@typescript-eslint': typescriptEslint
},

languageOptions: {
globals: {
...globals.browser,
},
languageOptions: {
globals: {
...globals.browser
},

parser: tsParser,
ecmaVersion: 'latest',
sourceType: 'module',
},
parser: tsParser,
ecmaVersion: 'latest',
sourceType: 'module'
},

settings: {
react: {
version: 'detect',
},
},
settings: {
react: {
version: 'detect'
}
},

rules: {},
},
rules: {}
}
];
Loading