Skip to content

Commit f95131c

Browse files
authored
Merge pull request #270 from scheduleonce/pythons/angular-21-upgrade
Pythons/angular 21 upgrade
2 parents 1a38863 + 4569b3a commit f95131c

File tree

12 files changed

+5990
-7174
lines changed

12 files changed

+5990
-7174
lines changed

.eslintrc.json

Lines changed: 0 additions & 82 deletions
This file was deleted.

.github/workflows/ci.yml

Lines changed: 4 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -15,15 +15,16 @@ jobs:
1515

1616
strategy:
1717
matrix:
18-
node-version: [18.x, 20.x]
18+
node-version: ['24.13.0']
1919
# See supported Node.js release schedule at https://nodejs.org/en/about/releases/
2020

2121
steps:
22-
- uses: actions/checkout@v3
22+
- uses: actions/checkout@v6
2323
- name: Use Node.js ${{ matrix.node-version }}
24-
uses: actions/setup-node@v3
24+
uses: actions/setup-node@v6
2525
with:
2626
node-version: ${{ matrix.node-version }}
2727
cache: 'npm'
2828
- run: npm ci
2929
- run: npm test
30+

.github/workflows/npm-publish.yml

Lines changed: 22 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -5,19 +5,30 @@ name: Publish Package to npmjs
55
on:
66
release:
77
types: [published]
8+
workflow_dispatch:
9+
10+
permissions:
11+
id-token: write
12+
contents: read
13+
814
jobs:
915
build:
1016
runs-on: ubuntu-latest
1117
steps:
12-
- uses: actions/checkout@v4
13-
# setup .npmrc file to publish to npm
14-
- uses: actions/setup-node@v3
18+
- uses: actions/checkout@v6
19+
20+
- name: Setup Node.js
21+
uses: actions/setup-node@v6
1522
with:
16-
node-version: '20.x'
17-
registry-url: 'https://registry.npmjs.org'
18-
- run: npm ci
19-
- run: npm run package
20-
# scoped packages are private by default so need to add public flag
21-
- run: npm run publish
22-
env:
23-
NODE_AUTH_TOKEN: ${{ secrets.NPM_TOKEN }}
23+
node-version: '24.13.0'
24+
registry-url: "https://registry.npmjs.org"
25+
26+
- name: Install dependencies
27+
run: npm ci
28+
29+
- name: Build package
30+
run: npm run package
31+
32+
- name: Publish to npm
33+
run: npm run publish
34+

CHANGELOG.md

Lines changed: 13 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -5,6 +5,19 @@ All notable changes to this project will be documented in this file.
55
The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/),
66
and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html).
77

8+
## [6.0.0-beta.0] - 2026-03-11
9+
10+
- [ONCEHUB-112987](https://scheduleonce.atlassian.net/browse/ONCEHUB-112987) Upgrade to Angular 21 and Node 24
11+
- **BREAKING**: Upgraded Angular packages to v21.1.x
12+
- **BREAKING**: Minimum Node.js version is now 24 (updated CI to Node 24.13.0)
13+
- **BREAKING**: Migrated ESLint configuration to flat config format (ESLint v9) with `angular-eslint` v21.3.0, replacing the legacy `.eslintrc`-based setup
14+
- Removed individual `@angular-eslint/*`, `@typescript-eslint/*`, `eslint-plugin-import`, `eslint-plugin-jsdoc`, and `eslint-plugin-prefer-arrow` packages in favour of the unified `angular-eslint` package
15+
- Updated `tslib` to `^2.8.1`
16+
17+
## [5.1.6] - 2026-01-15
18+
19+
- [ONCEHUB-109966](https://scheduleonce.atlassian.net/browse/ONCEHUB-109966) Updated dependencies and fixes
20+
821
## [4.1.4] - 2024-02-01
922

1023
- [ONCEHUB-77374](https://scheduleonce.atlassian.net/browse/ONCEHUB-77374) fixed vulnerability found in package vite

eslint.config.js

Lines changed: 72 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,72 @@
1+
// @ts-check
2+
const tseslint = require('typescript-eslint');
3+
const angular = require('angular-eslint');
4+
5+
module.exports = tseslint.config(
6+
{
7+
ignores: ['projects/**/*'],
8+
},
9+
{
10+
files: ['**/*.ts'],
11+
extends: [
12+
...tseslint.configs.recommended,
13+
...tseslint.configs.recommendedTypeChecked,
14+
...angular.configs.tsRecommended,
15+
],
16+
processor: angular.processInlineTemplates,
17+
languageOptions: {
18+
parserOptions: {
19+
project: ['tsconfig.json'],
20+
},
21+
},
22+
rules: {
23+
'@angular-eslint/component-class-suffix': 'off',
24+
'@angular-eslint/directive-class-suffix': 'off',
25+
'@angular-eslint/prefer-standalone': 'off',
26+
'@angular-eslint/prefer-inject': 'off',
27+
'@angular-eslint/directive-selector': [
28+
'error',
29+
{
30+
type: 'attribute',
31+
prefix: ['knowledge'],
32+
style: 'camelCase',
33+
},
34+
],
35+
'@angular-eslint/component-selector': [
36+
'error',
37+
{
38+
type: 'element',
39+
prefix: ['knowledge'],
40+
style: 'kebab-case',
41+
},
42+
],
43+
'@typescript-eslint/consistent-type-definitions': 'error',
44+
'@typescript-eslint/dot-notation': 'off',
45+
'@typescript-eslint/no-floating-promises': 'off',
46+
'@typescript-eslint/no-unsafe-return': 'off',
47+
'@typescript-eslint/no-unsafe-assignment': 'off',
48+
'@typescript-eslint/no-unsafe-member-access': 'off',
49+
'@typescript-eslint/no-unsafe-call': 'off',
50+
'@typescript-eslint/member-ordering': 'off',
51+
'@typescript-eslint/explicit-member-accessibility': [
52+
'off',
53+
{
54+
accessibility: 'explicit',
55+
},
56+
],
57+
'@typescript-eslint/no-non-null-assertion': 'off',
58+
'@typescript-eslint/no-use-before-define': 'off',
59+
'brace-style': ['error', '1tbs'],
60+
complexity: 'error',
61+
'id-denylist': 'off',
62+
'id-match': 'off',
63+
'no-underscore-dangle': 'off',
64+
'no-useless-escape': 'off',
65+
},
66+
},
67+
{
68+
files: ['**/*.html'],
69+
extends: [...angular.configs.templateRecommended],
70+
rules: {},
71+
}
72+
);

0 commit comments

Comments
 (0)