diff --git a/.github/workflows/node-build.yml b/.github/workflows/node-build.yml
deleted file mode 100644
index 14490de..0000000
--- a/.github/workflows/node-build.yml
+++ /dev/null
@@ -1,56 +0,0 @@
-# SPDX-FileCopyrightText: 2023 Nextcloud GmbH and Nextcloud contributors
-# SPDX-License-Identifier: MIT
-
-name: Node Build
-
-on:
- pull_request:
- paths:
- - src/**
- - .eslintrc.js
- - stylelint.config.js
- - webpack.js
- push:
- branches:
- - main
- paths:
- - src/**
- - .eslintrc.js
- - stylelint.config.js
- - webpack.js
-
-env:
- APP_NAME: integration_jira
-
-jobs:
- build:
- name: node-build
- runs-on: ubuntu-latest
-
- steps:
- - name: Checkout
- uses: actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd # v6.0.2
- with:
- path: ${{ env.APP_NAME }}
-
- - name: Read package.json node and npm engines version
- uses: skjnldsv/read-package-engines-version-actions@06d6baf7d8f41934ab630e97d9e6c0bc9c9ac5e4 # v3
- id: versions
- with:
- path: ${{ env.APP_NAME }}
- fallbackNode: "^20"
- fallbackNpm: "^9"
-
- - name: Set up node ${{ steps.versions.outputs.nodeVersion }}
- uses: actions/setup-node@820762786026740c76f36085b0efc47a31fe5020 # v3
- with:
- node-version: ${{ steps.versions.outputs.nodeVersion }}
-
- - name: Set up npm ${{ steps.versions.outputs.npmVersion }}
- run: npm i -g npm@"${{ steps.versions.outputs.npmVersion }}"
-
- - name: Build ${{ env.APP_NAME }}
- run: |
- cd ${{ env.APP_NAME }}
- npm ci
- npm run build
diff --git a/.github/workflows/node.yml b/.github/workflows/node.yml
new file mode 100644
index 0000000..1b9e372
--- /dev/null
+++ b/.github/workflows/node.yml
@@ -0,0 +1,113 @@
+# This workflow is provided via the organization template repository
+#
+# https://github.com/nextcloud/.github
+# https://docs.github.com/en/actions/learn-github-actions/sharing-workflows-with-your-organization
+#
+# SPDX-FileCopyrightText: 2021-2024 Nextcloud GmbH and Nextcloud contributors
+# SPDX-License-Identifier: MIT
+
+name: Build Javascript
+
+on: pull_request
+
+permissions:
+ contents: read
+
+concurrency:
+ group: node-${{ github.head_ref || github.run_id }}
+ cancel-in-progress: true
+
+jobs:
+ changes:
+ runs-on: ubuntu-latest-low
+ permissions:
+ contents: read
+ pull-requests: read
+
+ outputs:
+ src: ${{ steps.changes.outputs.src}}
+
+ steps:
+ - uses: dorny/paths-filter@7b450fff21473bca461d4b92ce414b9d0420d706 # v4.0.2
+ id: changes
+ continue-on-error: true
+ with:
+ filters: |
+ src:
+ - '.github/workflows/**'
+ - 'src/**'
+ - 'appinfo/info.xml'
+ - 'package.json'
+ - 'package-lock.json'
+ - 'tsconfig.json'
+ - '**.js'
+ - '**.ts'
+ - '**.vue'
+
+ build:
+ runs-on: ubuntu-latest
+
+ needs: changes
+ if: needs.changes.outputs.src != 'false'
+
+ name: NPM build
+ steps:
+ - name: Checkout
+ uses: actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1 # v7.0.1
+ with:
+ persist-credentials: false
+
+ - name: Read package.json node and npm engines version
+ uses: skjnldsv/read-package-engines-version-actions@06d6baf7d8f41934ab630e97d9e6c0bc9c9ac5e4 # v3
+ id: versions
+ with:
+ fallbackNode: '^24'
+ fallbackNpm: '^11.3'
+
+ - name: Set up node ${{ steps.versions.outputs.nodeVersion }}
+ uses: actions/setup-node@820762786026740c76f36085b0efc47a31fe5020 # v7.0.0
+ with:
+ node-version: ${{ steps.versions.outputs.nodeVersion }}
+
+ - name: Set up npm ${{ steps.versions.outputs.npmVersion }}
+ run: npm i -g 'npm@${{ steps.versions.outputs.npmVersion }}'
+
+ - name: Validate package-lock.json # See https://github.com/npm/cli/issues/4460
+ run: |
+ npm i -g npm-package-lock-add-resolved@1.1.4
+ npm-package-lock-add-resolved
+ git --no-pager diff --exit-code
+
+ - name: Install dependencies & build
+ env:
+ CYPRESS_INSTALL_BINARY: 0
+ PUPPETEER_SKIP_DOWNLOAD: true
+ run: |
+ npm ci
+ npm run build --if-present
+
+ - name: Check build changes
+ run: |
+ bash -c "[[ ! \"`git status --porcelain `\" ]] || (echo 'Please recompile and commit the assets, see the section \"Show changes on failure\" for details' && exit 1)"
+
+ - name: Show changes on failure
+ if: failure()
+ run: |
+ git status
+ git --no-pager diff
+ exit 1 # make it red to grab attention
+
+ summary:
+ permissions:
+ contents: none
+ runs-on: ubuntu-latest-low
+ needs: [changes, build]
+
+ if: always()
+
+ # This is the summary, we just avoid to rename it so that branch protection rules still match
+ name: node
+
+ steps:
+ - name: Summary status
+ run: if ${{ needs.changes.outputs.src != 'false' && needs.build.result != 'success' }}; then exit 1; fi
diff --git a/CHANGELOG.md b/CHANGELOG.md
index 512585b..e30962a 100644
--- a/CHANGELOG.md
+++ b/CHANGELOG.md
@@ -10,6 +10,15 @@ and this project adheres to [Semantic Versioning](http://semver.org/).
## [Unreleased]
+## 1.4.3
+
+### Changed
+
+- Use the outline style for the home and account icons in the personal settings
+- Update Psalm to 6.16 and nextcloud/coding-standard to 1.5
+- Build the frontend in CI for dependency updates, and lint all style files
+- Update dependencies & translations
+
## 1.4.2 - 2026-05-27
### Fixed
diff --git a/appinfo/info.xml b/appinfo/info.xml
index e99ccaa..8658f81 100644
--- a/appinfo/info.xml
+++ b/appinfo/info.xml
@@ -10,7 +10,7 @@
- 1.4.2
+ 1.4.3
agpl
Julien Veyssier
Jira
diff --git a/package.json b/package.json
index 1141c55..98d0318 100644
--- a/package.json
+++ b/package.json
@@ -12,8 +12,8 @@
"watch": "NODE_ENV=development webpack --progress --watch --config webpack.js",
"lint": "eslint --ext .js,.vue src",
"lint:fix": "eslint --ext .js,.vue src --fix",
- "stylelint": "stylelint src",
- "stylelint:fix": "stylelint src --fix"
+ "stylelint": "stylelint \"src/**/*.vue\" \"src/**/*.scss\" \"src/**/*.css\"",
+ "stylelint:fix": "stylelint \"src/**/*.vue\" \"src/**/*.scss\" \"src/**/*.css\" --fix"
},
"repository": {
"type": "git",