@taiga-ui/kit
Version:
Taiga UI Angular main components kit
41 lines (36 loc) • 1.48 kB
JavaScript
import * as i0 from '@angular/core';
import { InjectionToken, inject, Pipe } from '@angular/core';
const TUI_EMAIL_PIPE_OPTIONS = new InjectionToken(ngDevMode ? 'TUI_EMAIL_PIPE_OPTIONS' : '', {
factory: () => [
'gmail.com',
'outlook.com',
'icloud.com',
'me.com',
'yahoo.com',
'mail.com',
'proton.me',
],
});
class TuiEmailsPipe {
constructor() {
this.options = inject(TUI_EMAIL_PIPE_OPTIONS);
}
transform(query, suggestions = this.options) {
return query.includes('@')
? suggestions
.map((item) => `${query.slice(0, Math.max(0, query.indexOf('@') + 1))}${item}`)
.filter((item) => item.startsWith(query))
: [];
}
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.21", ngImport: i0, type: TuiEmailsPipe, deps: [], target: i0.ɵɵFactoryTarget.Pipe }); }
static { this.ɵpipe = i0.ɵɵngDeclarePipe({ minVersion: "14.0.0", version: "19.2.21", ngImport: i0, type: TuiEmailsPipe, isStandalone: true, name: "tuiEmails" }); }
}
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.21", ngImport: i0, type: TuiEmailsPipe, decorators: [{
type: Pipe,
args: [{ name: 'tuiEmails' }]
}] });
/**
* Generated bundle index. Do not edit.
*/
export { TUI_EMAIL_PIPE_OPTIONS, TuiEmailsPipe };
//# sourceMappingURL=taiga-ui-kit-pipes-emails.mjs.map