What's Changed
- Add GitHub action to auto-close inactive issues by @santoshyadavdev in #494
- Update README.md by @Artaud in #499
- feat: update to angular 18, standalone app and zoneless by @sheikalthaf in #502
- refactor: use signals everywhere by @sheikalthaf in #503
- fix: update version to v18 rc by @sheikalthaf in #508
- release: update to v18 by @sheikalthaf in #513
- fix: avoid memeory leak in effects by @sheikalthaf in #515
New Contributors
Full Changelog: v9.0.0...18.0.0
Breaking Change
- All the inputs are now signal based so the
[dataSource]
should be a signal based.
@Component({
selector: 'app-root',
template: `
<ngu-carousel #myCarousel [dataSource]="data()">
...
</ngu-carousel>
`,
})
export class AppComponent {
data = signal([1,2,3]);
updateData() {
// always return a new array so that signal notify the changes
this.data.update(d => [...d, 4]);
}
}
- All the public APIs are now signal based
- myCarousel.pointNumbers -> myCarousel.pointNumbers()
- myCarousel.isFirst -> myCarousel.isFirst()
- myCarousel.isLast -> myCarousel.isLast()
- myCarousel.activePoint -> myCarousel.activePoint()
Performance
- Zoneless support is added.
- By using the signal inputs we are now only render the new data when input signal values changes, instead of checking on every change detection via
ngDoCheck
.