From 2d8e4f2ef778ad8fea0223278eee721c32768ee2 Mon Sep 17 00:00:00 2001 From: lukasss88 Date: Wed, 29 Oct 2025 10:15:45 +0100 Subject: [PATCH] feat: answer: 9 added wrap function pipe --- .../9-wrap-function-pipe/src/app/app.component.ts | 6 ++++-- .../9-wrap-function-pipe/src/app/wrap-fn.pipe.ts | 15 +++++++++++++++ 2 files changed, 19 insertions(+), 2 deletions(-) create mode 100644 apps/angular/9-wrap-function-pipe/src/app/wrap-fn.pipe.ts diff --git a/apps/angular/9-wrap-function-pipe/src/app/app.component.ts b/apps/angular/9-wrap-function-pipe/src/app/app.component.ts index af8b6ff73..75b9ace6d 100644 --- a/apps/angular/9-wrap-function-pipe/src/app/app.component.ts +++ b/apps/angular/9-wrap-function-pipe/src/app/app.component.ts @@ -1,11 +1,13 @@ import { Component } from '@angular/core'; +import { WrapFunctionPipe } from './wrap-fn.pipe'; @Component({ selector: 'app-root', + imports: [WrapFunctionPipe], template: ` @for (person of persons; track person.name) { - {{ showName(person.name, $index) }} - {{ isAllowed(person.age, $first) }} + {{ showName | wrapFn: person.name : $index }} + {{ isAllowed | wrapFn: person.age : $first }} } `, }) diff --git a/apps/angular/9-wrap-function-pipe/src/app/wrap-fn.pipe.ts b/apps/angular/9-wrap-function-pipe/src/app/wrap-fn.pipe.ts new file mode 100644 index 000000000..47315a984 --- /dev/null +++ b/apps/angular/9-wrap-function-pipe/src/app/wrap-fn.pipe.ts @@ -0,0 +1,15 @@ +import { Pipe } from '@angular/core'; + +@Pipe({ + name: 'wrapFn', + standalone: true, + pure: true, +}) +export class WrapFunctionPipe { + transform any>( + fn: T, + ...args: Parameters + ): ReturnType { + return fn(...args); + } +}