Skip to content

Commit edbc0e4

Browse files
authored
Upgrade to Angular 18, and drop support for 17 (#1682)
1 parent 3cff1dd commit edbc0e4

File tree

7 files changed

+2497
-1951
lines changed

7 files changed

+2497
-1951
lines changed

.changeset/perfect-hotels-flow.md

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,5 @@
1+
---
2+
'@sl-design-system/angular': major
3+
---
4+
5+
Upgrade to Angular 18 and drop support for 17

package.json

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -449,7 +449,7 @@
449449
"@storybook/theming": "^8.4.7",
450450
"@storybook/web-components-vite": "^8.4.7",
451451
"@types/chai-as-promised": "^8.0.1",
452-
"@types/mocha": "^10.0.9",
452+
"@types/mocha": "^10.0.10",
453453
"@types/sinon": "^17.0.3",
454454
"@web/dev-server-esbuild": "^1.0.3",
455455
"@web/test-runner": "^0.19.0",

packages/angular/.storybook/main.ts

Lines changed: 1 addition & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -1,20 +1,9 @@
1-
import type { StorybookConfig } from '@storybook/angular';
1+
import { type StorybookConfig } from '@storybook/angular';
22

33
const config: StorybookConfig = {
44
stories: [
55
'../stories/*.stories.ts'
66
],
7-
addons: [
8-
'@storybook/addon-a11y',
9-
'@storybook/addon-actions',
10-
'@storybook/addon-storysource',
11-
{
12-
name: '@storybook/addon-essentials',
13-
options: {
14-
actions: false
15-
}
16-
}
17-
],
187
core: {
198
disableTelemetry: true
209
},

packages/angular/package.json

Lines changed: 15 additions & 18 deletions
Original file line numberDiff line numberDiff line change
@@ -59,18 +59,18 @@
5959
}
6060
},
6161
"devDependencies": {
62-
"@angular-devkit/architect": "^0.1703.11",
63-
"@angular-devkit/build-angular": "^17.3.11",
64-
"@angular-devkit/core": "^17.3.11",
65-
"@angular/animations": "^17.3.12",
66-
"@angular/cli": "~17.3.11",
67-
"@angular/common": "^17.3.12",
68-
"@angular/compiler": "^17.3.12",
69-
"@angular/compiler-cli": "^17.3.12",
70-
"@angular/core": "^17.3.12",
71-
"@angular/forms": "^17.3.12",
72-
"@angular/platform-browser": "^17.3.12",
73-
"@angular/platform-browser-dynamic": "^17.3.12",
62+
"@angular-devkit/architect": "^0.1802.12",
63+
"@angular-devkit/build-angular": "^18.2.12",
64+
"@angular-devkit/core": "^18.2.12",
65+
"@angular/animations": "^18.2.13",
66+
"@angular/cli": "~18.2.12",
67+
"@angular/common": "^18.2.13",
68+
"@angular/compiler": "^18.2.13",
69+
"@angular/compiler-cli": "^18.2.13",
70+
"@angular/core": "^18.2.13",
71+
"@angular/forms": "^18.2.13",
72+
"@angular/platform-browser": "^18.2.13",
73+
"@angular/platform-browser-dynamic": "^18.2.13",
7474
"@sl-design-system/checkbox": "^2.0.0",
7575
"@sl-design-system/form": "^1.0.3",
7676
"@sl-design-system/icon": "^1.0.2",
@@ -80,19 +80,16 @@
8080
"@sl-design-system/switch": "^1.0.2",
8181
"@sl-design-system/text-area": "^1.0.1",
8282
"@sl-design-system/text-field": "^1.3.5",
83-
"@storybook/addon-essentials": "^8.4.7",
84-
"@storybook/addon-links": "^8.4.7",
8583
"@storybook/angular": "^8.4.7",
86-
"@storybook/blocks": "^8.4.7",
8784
"@storybook/theming": "^8.4.7",
88-
"@types/jasmine": "~5.1.4",
89-
"jasmine-core": "~5.1.2",
85+
"@types/jasmine": "~5.1.5",
86+
"jasmine-core": "~5.5.0",
9087
"karma": "~6.4.4",
9188
"karma-chrome-launcher": "~3.2.0",
9289
"karma-coverage": "~2.2.1",
9390
"karma-jasmine": "~5.1.0",
9491
"karma-jasmine-html-reporter": "~2.1.0",
95-
"ng-packagr": "^17.3.0",
92+
"ng-packagr": "^18.2.1",
9693
"rxjs": "~7.8.1",
9794
"storybook": "^8.4.7",
9895
"tslib": "^2.8.1",

packages/angular/src/package.json

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -11,8 +11,8 @@
1111
"directory": "packages/angular"
1212
},
1313
"peerDependencies": {
14-
"@angular/core": "^17.0.0 || ^18.0.0",
15-
"@angular/forms": "^17.0.0 || ^18.0.0",
14+
"@angular/core": "^18.0.0 || ^19.0.0",
15+
"@angular/forms": "^18.0.0 || ^19.0.0",
1616
"@sl-design-system/checkbox": "*",
1717
"@sl-design-system/form": "*",
1818
"@sl-design-system/icon": "*",

scripts/cem-plugin-angular-wrapper.js

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -20,6 +20,7 @@ function getComponentEvents(component, eventMap) {
2020
function generateComponent(imports, component, events) {
2121
return `import { Component, ${events.length ? 'EventEmitter, ' : ''}Input${events.length ? ', Output' : ''} } from '@angular/core';
2222
${imports.join('\n')}
23+
import { ElementRef } from '@angular/core';
2324
import { CePassthrough } from '@sl-design-system/angular';
2425
2526
@Component({
@@ -31,7 +32,7 @@ export class ${component.name}Component extends CePassthrough<${component.name}>
3132
${component.members
3233
?.filter(member => member.kind === 'field' && !member.privacy && !member.static && !member.name.endsWith('Event'))
3334
.map(member => ` @Input() ${member.name}!: ${component.name}['${member.name}'];`).join('\n') ?? ''}
34-
${events.length ? `\n${events.map(event => event.code).join('\n')}\n` : ''}}
35+
${events.length ? `\n${events.map(event => event.code).join('\n')}\n` : ''}\n constructor(elRef: ElementRef<${component.name}>) {\n super(elRef);\n }\n}
3536
`;
3637
};
3738

0 commit comments

Comments
 (0)