Commit bd960f9
committed
fix(compiler): handle @Inject(TOKEN) on pipe constructor params
The extract_param_dependency function in pipe/decorator.rs was missing
the "Inject" arm in its decorator match, causing @Inject(TOKEN) to be
silently ignored. The injection token was then extracted from the TypeScript
type annotation instead — which is undefined at runtime when the type is
an interface.
The same fix already exists in directive/decorator.rs and
injectable/decorator.rs. This brings pipe/decorator.rs in line.
Surfaced by Angular 20 which added an assertDefined(token) guard in the
DI runtime that throws immediately on an undefined token, whereas Angular
19 would silently pass through.1 parent 568c2d3 commit bd960f9
1 file changed
Lines changed: 15 additions & 3 deletions
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
14 | 14 | | |
15 | 15 | | |
16 | 16 | | |
| 17 | + | |
17 | 18 | | |
18 | 19 | | |
19 | 20 | | |
| |||
264 | 265 | | |
265 | 266 | | |
266 | 267 | | |
267 | | - | |
| 268 | + | |
268 | 269 | | |
269 | 270 | | |
270 | 271 | | |
271 | 272 | | |
| 273 | + | |
272 | 274 | | |
273 | 275 | | |
274 | 276 | | |
275 | 277 | | |
276 | 278 | | |
| 279 | + | |
| 280 | + | |
| 281 | + | |
| 282 | + | |
| 283 | + | |
| 284 | + | |
| 285 | + | |
| 286 | + | |
| 287 | + | |
277 | 288 | | |
278 | 289 | | |
279 | 290 | | |
| |||
291 | 302 | | |
292 | 303 | | |
293 | 304 | | |
294 | | - | |
295 | | - | |
| 305 | + | |
| 306 | + | |
| 307 | + | |
296 | 308 | | |
297 | 309 | | |
298 | 310 | | |
| |||
0 commit comments