UNPKG

@taiga-ui/kit

Version:

Taiga UI Angular main components kit

20 lines 3.94 kB
import { computed, inject } from '@angular/core'; import { toSignal } from '@angular/core/rxjs-interop'; import { changeDateSeparator, tuiDirectiveBinding, } from '@taiga-ui/cdk/utils/miscellaneous'; import { TuiTextfieldComponent } from '@taiga-ui/core/components/textfield'; import { TUI_DATE_FORMAT, TUI_DEFAULT_DATE_FORMAT } from '@taiga-ui/core/tokens'; import { TUI_DATE_TEXTS } from '@taiga-ui/kit/tokens'; import { identity } from 'rxjs'; export function tuiWithDateFiller(fn = identity) { const texts = toSignal(inject(TUI_DATE_TEXTS)); const format = toSignal(inject(TUI_DATE_FORMAT), { initialValue: TUI_DEFAULT_DATE_FORMAT, }); return tuiDirectiveBinding(TuiTextfieldComponent, 'fillerSetter', computed(() => { const { mode, separator } = format(); const fillersMap = texts() ?? ''; const filler = fillersMap && changeDateSeparator(fillersMap[mode], separator); return fn(filler); }), {}); } //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGF0ZS1maWxsZXIuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9raXQvY29tcG9uZW50cy9pbnB1dC1kYXRlL2RhdGUtZmlsbGVyLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUNBLE9BQU8sRUFBQyxRQUFRLEVBQUUsTUFBTSxFQUFDLE1BQU0sZUFBZSxDQUFDO0FBQy9DLE9BQU8sRUFBQyxRQUFRLEVBQUMsTUFBTSw0QkFBNEIsQ0FBQztBQUNwRCxPQUFPLEVBQ0gsbUJBQW1CLEVBQ25CLG1CQUFtQixHQUN0QixNQUFNLG1DQUFtQyxDQUFDO0FBQzNDLE9BQU8sRUFBQyxxQkFBcUIsRUFBQyxNQUFNLHFDQUFxQyxDQUFDO0FBQzFFLE9BQU8sRUFBQyxlQUFlLEVBQUUsdUJBQXVCLEVBQUMsTUFBTSx1QkFBdUIsQ0FBQztBQUMvRSxPQUFPLEVBQUMsY0FBYyxFQUFDLE1BQU0sc0JBQXNCLENBQUM7QUFDcEQsT0FBTyxFQUFDLFFBQVEsRUFBQyxNQUFNLE1BQU0sQ0FBQztBQUU5QixNQUFNLFVBQVUsaUJBQWlCLENBQzdCLEtBQXFDLFFBQVE7SUFFN0MsTUFBTSxLQUFLLEdBQUcsUUFBUSxDQUFDLE1BQU0sQ0FBQyxjQUFjLENBQUMsQ0FBQyxDQUFDO0lBQy9DLE1BQU0sTUFBTSxHQUFHLFFBQVEsQ0FBQyxNQUFNLENBQUMsZUFBZSxDQUFDLEVBQUU7UUFDN0MsWUFBWSxFQUFFLHVCQUF1QjtLQUN4QyxDQUFDLENBQUM7SUFFSCxPQUFPLG1CQUFtQixDQUN0QixxQkFBcUIsRUFDckIsY0FBYyxFQUNkLFFBQVEsQ0FBQyxHQUFHLEVBQUU7UUFDVixNQUFNLEVBQUMsSUFBSSxFQUFFLFNBQVMsRUFBQyxHQUFHLE1BQU0sRUFBRSxDQUFDO1FBQ25DLE1BQU0sVUFBVSxHQUFHLEtBQUssRUFBRSxJQUFJLEVBQUUsQ0FBQztRQUNqQyxNQUFNLE1BQU0sR0FBRyxVQUFVLElBQUksbUJBQW1CLENBQUMsVUFBVSxDQUFDLElBQUksQ0FBQyxFQUFFLFNBQVMsQ0FBQyxDQUFDO1FBRTlFLE9BQU8sRUFBRSxDQUFDLE1BQU0sQ0FBQyxDQUFDO0lBQ3RCLENBQUMsQ0FBQyxFQUNGLEVBQUUsQ0FDTCxDQUFDO0FBQ04sQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB0eXBlIHtTaWduYWx9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHtjb21wdXRlZCwgaW5qZWN0fSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7dG9TaWduYWx9IGZyb20gJ0Bhbmd1bGFyL2NvcmUvcnhqcy1pbnRlcm9wJztcbmltcG9ydCB7XG4gICAgY2hhbmdlRGF0ZVNlcGFyYXRvcixcbiAgICB0dWlEaXJlY3RpdmVCaW5kaW5nLFxufSBmcm9tICdAdGFpZ2EtdWkvY2RrL3V0aWxzL21pc2NlbGxhbmVvdXMnO1xuaW1wb3J0IHtUdWlUZXh0ZmllbGRDb21wb25lbnR9IGZyb20gJ0B0YWlnYS11aS9jb3JlL2NvbXBvbmVudHMvdGV4dGZpZWxkJztcbmltcG9ydCB7VFVJX0RBVEVfRk9STUFULCBUVUlfREVGQVVMVF9EQVRFX0ZPUk1BVH0gZnJvbSAnQHRhaWdhLXVpL2NvcmUvdG9rZW5zJztcbmltcG9ydCB7VFVJX0RBVEVfVEVYVFN9IGZyb20gJ0B0YWlnYS11aS9raXQvdG9rZW5zJztcbmltcG9ydCB7aWRlbnRpdHl9IGZyb20gJ3J4anMnO1xuXG5leHBvcnQgZnVuY3Rpb24gdHVpV2l0aERhdGVGaWxsZXIoXG4gICAgZm46IChkYXRlRmlsbGVyOiBzdHJpbmcpID0+IHN0cmluZyA9IGlkZW50aXR5LFxuKTogU2lnbmFsPHN0cmluZz4ge1xuICAgIGNvbnN0IHRleHRzID0gdG9TaWduYWwoaW5qZWN0KFRVSV9EQVRFX1RFWFRTKSk7XG4gICAgY29uc3QgZm9ybWF0ID0gdG9TaWduYWwoaW5qZWN0KFRVSV9EQVRFX0ZPUk1BVCksIHtcbiAgICAgICAgaW5pdGlhbFZhbHVlOiBUVUlfREVGQVVMVF9EQVRFX0ZPUk1BVCxcbiAgICB9KTtcblxuICAgIHJldHVybiB0dWlEaXJlY3RpdmVCaW5kaW5nKFxuICAgICAgICBUdWlUZXh0ZmllbGRDb21wb25lbnQsXG4gICAgICAgICdmaWxsZXJTZXR0ZXInLFxuICAgICAgICBjb21wdXRlZCgoKSA9PiB7XG4gICAgICAgICAgICBjb25zdCB7bW9kZSwgc2VwYXJhdG9yfSA9IGZvcm1hdCgpO1xuICAgICAgICAgICAgY29uc3QgZmlsbGVyc01hcCA9IHRleHRzKCkgPz8gJyc7XG4gICAgICAgICAgICBjb25zdCBmaWxsZXIgPSBmaWxsZXJzTWFwICYmIGNoYW5nZURhdGVTZXBhcmF0b3IoZmlsbGVyc01hcFttb2RlXSwgc2VwYXJhdG9yKTtcblxuICAgICAgICAgICAgcmV0dXJuIGZuKGZpbGxlcik7XG4gICAgICAgIH0pLFxuICAgICAgICB7fSxcbiAgICApO1xufVxuIl19