ember-cli-typescript
ember-cli-typescript copied to clipboard
Add type-information for the `cached` decorator
Which package(s) does this enhancement pertain to?
- [ ] @types/ember
- [ ] @types/ember__string
- [ ] @types/ember__polyfills
- [ ] @types/ember__object
- [ ] @types/ember__utils
- [ ] @types/ember__array
- [ ] @types/ember__engine
- [ ] @types/ember__debug
- [ ] @types/ember__runloop
- [ ] @types/ember__error
- [ ] @types/ember__controller
- [ ] @types/ember__component
- [ ] @types/ember__routing
- [ ] @types/ember__application
- [ ] @types/ember__test
- [ ] @types/ember__test-helpers
- [ ] @types/ember__service
- [ ] @types/ember-data
- [ ] @types/rsvp
- [x] Other
- [ ] I don't know
Please write a user story for this feature
import { cached } from '@glimmer/tracking'; leads to Module '"@glimmer/tracking"' has no exported member 'cached'.. As of Ember 4 the cached decorator is available by default.
I currently work-around that issue by adding:
declare module '@glimmer/tracking' {
export const cached: PropertyDecorator;
}
Thanks for writing this up, @boris-petrov. As per the usual flow, we need it documented in Ember itself, and then a PR to DefinitelyTyped will be very welcome and we'll merge it!
It is in the docs since Ember 4.5: https://api.emberjs.com/ember/4.5/functions/@glimmer%2Ftracking/cached
Just a note for posterity here, @glimmer/tracking's types aren't managed in DT—it ships its own declarations, and there's an issue over their noting the missing export: https://github.com/glimmerjs/glimmer.js/issues/408
Thanks, @dfreeman! In that case, I guess this one can be closed! :)