UNPKG

@taiga-ui/kit

Version:

Taiga UI Angular main components kit

68 lines 9.53 kB
import { ChangeDetectionStrategy, Component, computed, inject, signal, } from '@angular/core'; import { toSignal } from '@angular/core/rxjs-interop'; import { tuiFallbackValueProvider } from '@taiga-ui/cdk/tokens'; import { tuiInjectElement } from '@taiga-ui/cdk/utils/dom'; import { tuiIsString } from '@taiga-ui/cdk/utils/miscellaneous'; import { TuiIcon } from '@taiga-ui/core/components/icon'; import { TUI_TEXTFIELD_OPTIONS, TuiTextfieldContent, TuiTextfieldDirective, } from '@taiga-ui/core/components/textfield'; import { TuiTooltip } from '@taiga-ui/kit/directives'; import { TUI_PASSWORD_TEXTS } from '@taiga-ui/kit/tokens'; import { TUI_INPUT_PASSWORD_OPTIONS } from './input-password.options'; import * as i0 from "@angular/core"; import * as i1 from "@taiga-ui/core/components/textfield"; /** * @deprecated use {@link TuiPassword} with {@link TuiTextfield} */ class TuiInputPassword { constructor() { this.options = inject(TUI_INPUT_PASSWORD_OPTIONS); this.texts = toSignal(inject(TUI_PASSWORD_TEXTS), { initialValue: ['', ''], }); this.el = tuiInjectElement(); this.size = inject(TUI_TEXTFIELD_OPTIONS).size; this.hidden = signal(true); this.text = computed(() => this.hidden() ? this.texts()[0] : this.texts()[1]); this.icon = computed((size = this.size()) => { const icon = this.hidden() ? this.options.icons.show : this.options.icons.hide; return tuiIsString(icon) ? icon : icon(size); }); } static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: TuiInputPassword, deps: [], target: i0.ɵɵFactoryTarget.Component }); } static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.12", type: TuiInputPassword, isStandalone: true, selector: "input[tuiInputPassword]", host: { properties: { "type": "hidden() ? \"password\" : \"text\"" } }, providers: [tuiFallbackValueProvider('')], hostDirectives: [{ directive: i1.TuiTextfieldDirective }], ngImport: i0, template: ` <tui-icon *tuiTextfieldContent [icon]="icon()" [style.border]="size() === 's' ? null : 'none'" [tuiTooltip]="text()" (click)="hidden.set(!hidden())" (mousedown.capture.prevent.stop)="el.focus()" /> `, isInline: true, dependencies: [{ kind: "component", type: TuiIcon, selector: "tui-icon", inputs: ["icon", "background"] }, { kind: "directive", type: TuiTextfieldContent, selector: "ng-template[tuiTextfieldContent]" }, { kind: "directive", type: TuiTooltip, selector: "tui-icon[tuiTooltip]" }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); } } export { TuiInputPassword }; i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: TuiInputPassword, decorators: [{ type: Component, args: [{ standalone: true, selector: 'input[tuiInputPassword]', imports: [TuiIcon, TuiTextfieldContent, TuiTooltip], template: ` <tui-icon *tuiTextfieldContent [icon]="icon()" [style.border]="size() === 's' ? null : 'none'" [tuiTooltip]="text()" (click)="hidden.set(!hidden())" (mousedown.capture.prevent.stop)="el.focus()" /> `, changeDetection: ChangeDetectionStrategy.OnPush, providers: [tuiFallbackValueProvider('')], hostDirectives: [TuiTextfieldDirective], host: { '[type]': 'hidden() ? "password" : "text"', }, }] }] }); //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5wdXQtcGFzc3dvcmQuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMva2l0L2NvbXBvbmVudHMvaW5wdXQtcGFzc3dvcmQvaW5wdXQtcGFzc3dvcmQuY29tcG9uZW50LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFDSCx1QkFBdUIsRUFDdkIsU0FBUyxFQUNULFFBQVEsRUFDUixNQUFNLEVBQ04sTUFBTSxHQUNULE1BQU0sZUFBZSxDQUFDO0FBQ3ZCLE9BQU8sRUFBQyxRQUFRLEVBQUMsTUFBTSw0QkFBNEIsQ0FBQztBQUNwRCxPQUFPLEVBQUMsd0JBQXdCLEVBQUMsTUFBTSxzQkFBc0IsQ0FBQztBQUM5RCxPQUFPLEVBQUMsZ0JBQWdCLEVBQUMsTUFBTSx5QkFBeUIsQ0FBQztBQUN6RCxPQUFPLEVBQUMsV0FBVyxFQUFDLE1BQU0sbUNBQW1DLENBQUM7QUFDOUQsT0FBTyxFQUFDLE9BQU8sRUFBQyxNQUFNLGdDQUFnQyxDQUFDO0FBQ3ZELE9BQU8sRUFDSCxxQkFBcUIsRUFDckIsbUJBQW1CLEVBQ25CLHFCQUFxQixHQUN4QixNQUFNLHFDQUFxQyxDQUFDO0FBQzdDLE9BQU8sRUFBQyxVQUFVLEVBQUMsTUFBTSwwQkFBMEIsQ0FBQztBQUNwRCxPQUFPLEVBQUMsa0JBQWtCLEVBQUMsTUFBTSxzQkFBc0IsQ0FBQztBQUV4RCxPQUFPLEVBQUMsMEJBQTBCLEVBQUMsTUFBTSwwQkFBMEIsQ0FBQzs7O0FBRXBFOztHQUVHO0FBQ0gsTUFxQmEsZ0JBQWdCO0lBckI3QjtRQXNCcUIsWUFBTyxHQUFHLE1BQU0sQ0FBQywwQkFBMEIsQ0FBQyxDQUFDO1FBQzdDLFVBQUssR0FBRyxRQUFRLENBQUMsTUFBTSxDQUFDLGtCQUFrQixDQUFDLEVBQUU7WUFDMUQsWUFBWSxFQUFFLENBQUMsRUFBRSxFQUFFLEVBQUUsQ0FBVTtTQUNsQyxDQUFDLENBQUM7UUFFZ0IsT0FBRSxHQUFHLGdCQUFnQixFQUFvQixDQUFDO1FBQzFDLFNBQUksR0FBRyxNQUFNLENBQUMscUJBQXFCLENBQUMsQ0FBQyxJQUFJLENBQUM7UUFDMUMsV0FBTSxHQUFHLE1BQU0sQ0FBQyxJQUFJLENBQUMsQ0FBQztRQUN0QixTQUFJLEdBQUcsUUFBUSxDQUFDLEdBQUcsRUFBRSxDQUNwQyxJQUFJLENBQUMsTUFBTSxFQUFFLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQyxLQUFLLEVBQUUsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDLEtBQUssRUFBRSxDQUFDLENBQUMsQ0FBQyxDQUNwRCxDQUFDO1FBRWlCLFNBQUksR0FBRyxRQUFRLENBQUMsQ0FBQyxJQUFJLEdBQUcsSUFBSSxDQUFDLElBQUksRUFBRSxFQUFFLEVBQUU7WUFDdEQsTUFBTSxJQUFJLEdBQUcsSUFBSSxDQUFDLE1BQU0sRUFBRSxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUMsT0FBTyxDQUFDLEtBQUssQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQyxPQUFPLENBQUMsS0FBSyxDQUFDLElBQUksQ0FBQztZQUUvRSxPQUFPLFdBQVcsQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLENBQUM7UUFDakQsQ0FBQyxDQUFDLENBQUM7S0FDTjsrR0FsQlksZ0JBQWdCO21HQUFoQixnQkFBZ0IsOElBTmQsQ0FBQyx3QkFBd0IsQ0FBQyxFQUFFLENBQUMsQ0FBQyxxRkFYL0I7Ozs7Ozs7OztLQVNULDREQVZTLE9BQU8scUZBQUUsbUJBQW1CLDZFQUFFLFVBQVU7O1NBa0J6QyxnQkFBZ0I7NEZBQWhCLGdCQUFnQjtrQkFyQjVCLFNBQVM7bUJBQUM7b0JBQ1AsVUFBVSxFQUFFLElBQUk7b0JBQ2hCLFFBQVEsRUFBRSx5QkFBeUI7b0JBQ25DLE9BQU8sRUFBRSxDQUFDLE9BQU8sRUFBRSxtQkFBbUIsRUFBRSxVQUFVLENBQUM7b0JBQ25ELFFBQVEsRUFBRTs7Ozs7Ozs7O0tBU1Q7b0JBQ0QsZUFBZSxFQUFFLHVCQUF1QixDQUFDLE1BQU07b0JBQy9DLFNBQVMsRUFBRSxDQUFDLHdCQUF3QixDQUFDLEVBQUUsQ0FBQyxDQUFDO29CQUN6QyxjQUFjLEVBQUUsQ0FBQyxxQkFBcUIsQ0FBQztvQkFDdkMsSUFBSSxFQUFFO3dCQUNGLFFBQVEsRUFBRSxnQ0FBZ0M7cUJBQzdDO2lCQUNKIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtcbiAgICBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneSxcbiAgICBDb21wb25lbnQsXG4gICAgY29tcHV0ZWQsXG4gICAgaW5qZWN0LFxuICAgIHNpZ25hbCxcbn0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQge3RvU2lnbmFsfSBmcm9tICdAYW5ndWxhci9jb3JlL3J4anMtaW50ZXJvcCc7XG5pbXBvcnQge3R1aUZhbGxiYWNrVmFsdWVQcm92aWRlcn0gZnJvbSAnQHRhaWdhLXVpL2Nkay90b2tlbnMnO1xuaW1wb3J0IHt0dWlJbmplY3RFbGVtZW50fSBmcm9tICdAdGFpZ2EtdWkvY2RrL3V0aWxzL2RvbSc7XG5pbXBvcnQge3R1aUlzU3RyaW5nfSBmcm9tICdAdGFpZ2EtdWkvY2RrL3V0aWxzL21pc2NlbGxhbmVvdXMnO1xuaW1wb3J0IHtUdWlJY29ufSBmcm9tICdAdGFpZ2EtdWkvY29yZS9jb21wb25lbnRzL2ljb24nO1xuaW1wb3J0IHtcbiAgICBUVUlfVEVYVEZJRUxEX09QVElPTlMsXG4gICAgVHVpVGV4dGZpZWxkQ29udGVudCxcbiAgICBUdWlUZXh0ZmllbGREaXJlY3RpdmUsXG59IGZyb20gJ0B0YWlnYS11aS9jb3JlL2NvbXBvbmVudHMvdGV4dGZpZWxkJztcbmltcG9ydCB7VHVpVG9vbHRpcH0gZnJvbSAnQHRhaWdhLXVpL2tpdC9kaXJlY3RpdmVzJztcbmltcG9ydCB7VFVJX1BBU1NXT1JEX1RFWFRTfSBmcm9tICdAdGFpZ2EtdWkva2l0L3Rva2Vucyc7XG5cbmltcG9ydCB7VFVJX0lOUFVUX1BBU1NXT1JEX09QVElPTlN9IGZyb20gJy4vaW5wdXQtcGFzc3dvcmQub3B0aW9ucyc7XG5cbi8qKlxuICogQGRlcHJlY2F0ZWQgdXNlIHtAbGluayBUdWlQYXNzd29yZH0gd2l0aCB7QGxpbmsgVHVpVGV4dGZpZWxkfVxuICovXG5AQ29tcG9uZW50KHtcbiAgICBzdGFuZGFsb25lOiB0cnVlLFxuICAgIHNlbGVjdG9yOiAnaW5wdXRbdHVpSW5wdXRQYXNzd29yZF0nLFxuICAgIGltcG9ydHM6IFtUdWlJY29uLCBUdWlUZXh0ZmllbGRDb250ZW50LCBUdWlUb29sdGlwXSxcbiAgICB0ZW1wbGF0ZTogYFxuICAgICAgICA8dHVpLWljb25cbiAgICAgICAgICAgICp0dWlUZXh0ZmllbGRDb250ZW50XG4gICAgICAgICAgICBbaWNvbl09XCJpY29uKClcIlxuICAgICAgICAgICAgW3N0eWxlLmJvcmRlcl09XCJzaXplKCkgPT09ICdzJyA/IG51bGwgOiAnbm9uZSdcIlxuICAgICAgICAgICAgW3R1aVRvb2x0aXBdPVwidGV4dCgpXCJcbiAgICAgICAgICAgIChjbGljayk9XCJoaWRkZW4uc2V0KCFoaWRkZW4oKSlcIlxuICAgICAgICAgICAgKG1vdXNlZG93bi5jYXB0dXJlLnByZXZlbnQuc3RvcCk9XCJlbC5mb2N1cygpXCJcbiAgICAgICAgLz5cbiAgICBgLFxuICAgIGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuT25QdXNoLFxuICAgIHByb3ZpZGVyczogW3R1aUZhbGxiYWNrVmFsdWVQcm92aWRlcignJyldLFxuICAgIGhvc3REaXJlY3RpdmVzOiBbVHVpVGV4dGZpZWxkRGlyZWN0aXZlXSxcbiAgICBob3N0OiB7XG4gICAgICAgICdbdHlwZV0nOiAnaGlkZGVuKCkgPyBcInBhc3N3b3JkXCIgOiBcInRleHRcIicsXG4gICAgfSxcbn0pXG5leHBvcnQgY2xhc3MgVHVpSW5wdXRQYXNzd29yZCB7XG4gICAgcHJpdmF0ZSByZWFkb25seSBvcHRpb25zID0gaW5qZWN0KFRVSV9JTlBVVF9QQVNTV09SRF9PUFRJT05TKTtcbiAgICBwcml2YXRlIHJlYWRvbmx5IHRleHRzID0gdG9TaWduYWwoaW5qZWN0KFRVSV9QQVNTV09SRF9URVhUUyksIHtcbiAgICAgICAgaW5pdGlhbFZhbHVlOiBbJycsICcnXSBhcyBjb25zdCxcbiAgICB9KTtcblxuICAgIHByb3RlY3RlZCByZWFkb25seSBlbCA9IHR1aUluamVjdEVsZW1lbnQ8SFRNTElucHV0RWxlbWVudD4oKTtcbiAgICBwcm90ZWN0ZWQgcmVhZG9ubHkgc2l6ZSA9IGluamVjdChUVUlfVEVYVEZJRUxEX09QVElPTlMpLnNpemU7XG4gICAgcHJvdGVjdGVkIHJlYWRvbmx5IGhpZGRlbiA9IHNpZ25hbCh0cnVlKTtcbiAgICBwcm90ZWN0ZWQgcmVhZG9ubHkgdGV4dCA9IGNvbXB1dGVkKCgpID0+XG4gICAgICAgIHRoaXMuaGlkZGVuKCkgPyB0aGlzLnRleHRzKClbMF0gOiB0aGlzLnRleHRzKClbMV0sXG4gICAgKTtcblxuICAgIHByb3RlY3RlZCByZWFkb25seSBpY29uID0gY29tcHV0ZWQoKHNpemUgPSB0aGlzLnNpemUoKSkgPT4ge1xuICAgICAgICBjb25zdCBpY29uID0gdGhpcy5oaWRkZW4oKSA/IHRoaXMub3B0aW9ucy5pY29ucy5zaG93IDogdGhpcy5vcHRpb25zLmljb25zLmhpZGU7XG5cbiAgICAgICAgcmV0dXJuIHR1aUlzU3RyaW5nKGljb24pID8gaWNvbiA6IGljb24oc2l6ZSk7XG4gICAgfSk7XG59XG4iXX0=