@taiga-ui/kit
Version:
Taiga UI Angular main components kit
26 lines • 4.29 kB
JavaScript
import { Optional, Self } from '@angular/core';
import { NgControl } from '@angular/forms';
import { tuiControlValue } from '@taiga-ui/cdk/observables';
import { tuiCreateToken } from '@taiga-ui/cdk/utils/miscellaneous';
import { map, of } from 'rxjs';
/**
* Stream that emits calendar data change
* @deprecated this should be rewritten in v5
*/
export const TUI_CALENDAR_DATE_STREAM = tuiCreateToken();
export function tuiDateStreamWithTransformer(transformer) {
return {
provide: TUI_CALENDAR_DATE_STREAM,
deps: [
[new Optional(), new Self(), NgControl],
[new Optional(), transformer],
],
useFactory: tuiControlValueFactory,
};
}
function tuiControlValueFactory(control, transformer) {
return control
? tuiControlValue(control).pipe(map((value) => transformer ? transformer?.fromControlValue(value) : value))
: of(null);
}
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2FsZW5kYXItZGF0ZS1zdHJlYW0uanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9wcm9qZWN0cy9raXQvdG9rZW5zL2NhbGVuZGFyLWRhdGUtc3RyZWFtLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUNBLE9BQU8sRUFBQyxRQUFRLEVBQUUsSUFBSSxFQUFDLE1BQU0sZUFBZSxDQUFDO0FBQzdDLE9BQU8sRUFBQyxTQUFTLEVBQUMsTUFBTSxnQkFBZ0IsQ0FBQztBQUd6QyxPQUFPLEVBQUMsZUFBZSxFQUFDLE1BQU0sMkJBQTJCLENBQUM7QUFDMUQsT0FBTyxFQUFDLGNBQWMsRUFBQyxNQUFNLG1DQUFtQyxDQUFDO0FBRWpFLE9BQU8sRUFBQyxHQUFHLEVBQUUsRUFBRSxFQUFDLE1BQU0sTUFBTSxDQUFDO0FBRTdCOzs7R0FHRztBQUNILE1BQU0sQ0FBQyxNQUFNLHdCQUF3QixHQUNqQyxjQUFjLEVBQTJDLENBQUM7QUFFOUQsTUFBTSxVQUFVLDRCQUE0QixDQUN4QyxXQUFxRDtJQUVyRCxPQUFPO1FBQ0gsT0FBTyxFQUFFLHdCQUF3QjtRQUNqQyxJQUFJLEVBQUU7WUFDRixDQUFDLElBQUksUUFBUSxFQUFFLEVBQUUsSUFBSSxJQUFJLEVBQUUsRUFBRSxTQUFTLENBQUM7WUFDdkMsQ0FBQyxJQUFJLFFBQVEsRUFBRSxFQUFFLFdBQVcsQ0FBQztTQUNoQztRQUNELFVBQVUsRUFBRSxzQkFBc0I7S0FDckMsQ0FBQztBQUNOLENBQUM7QUFFRCxTQUFTLHNCQUFzQixDQUczQixPQUF5QixFQUN6QixXQUEyQztJQUUzQyxPQUFPLE9BQU87UUFDVixDQUFDLENBQUMsZUFBZSxDQUFDLE9BQU8sQ0FBQyxDQUFDLElBQUksQ0FDekIsR0FBRyxDQUFDLENBQUMsS0FBSyxFQUFFLEVBQUUsQ0FDVixXQUFXLENBQUMsQ0FBQyxDQUFDLFdBQVcsRUFBRSxnQkFBZ0IsQ0FBQyxLQUFLLENBQUMsQ0FBQyxDQUFDLENBQUUsS0FBVyxDQUNwRSxDQUNKO1FBQ0gsQ0FBQyxDQUFDLEVBQUUsQ0FBQyxJQUFJLENBQUMsQ0FBQztBQUNuQixDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHR5cGUge0luamVjdGlvblRva2VuLCBQcm92aWRlcn0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQge09wdGlvbmFsLCBTZWxmfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7TmdDb250cm9sfSBmcm9tICdAYW5ndWxhci9mb3Jtcyc7XG5pbXBvcnQgdHlwZSB7VHVpVmFsdWVUcmFuc2Zvcm1lcn0gZnJvbSAnQHRhaWdhLXVpL2Nkay9jbGFzc2VzJztcbmltcG9ydCB0eXBlIHtUdWlEYXksIFR1aURheVJhbmdlLCBUdWlUaW1lfSBmcm9tICdAdGFpZ2EtdWkvY2RrL2RhdGUtdGltZSc7XG5pbXBvcnQge3R1aUNvbnRyb2xWYWx1ZX0gZnJvbSAnQHRhaWdhLXVpL2Nkay9vYnNlcnZhYmxlcyc7XG5pbXBvcnQge3R1aUNyZWF0ZVRva2VufSBmcm9tICdAdGFpZ2EtdWkvY2RrL3V0aWxzL21pc2NlbGxhbmVvdXMnO1xuaW1wb3J0IHR5cGUge09ic2VydmFibGV9IGZyb20gJ3J4anMnO1xuaW1wb3J0IHttYXAsIG9mfSBmcm9tICdyeGpzJztcblxuLyoqXG4gKiBTdHJlYW0gdGhhdCBlbWl0cyBjYWxlbmRhciBkYXRhIGNoYW5nZVxuICogQGRlcHJlY2F0ZWQgdGhpcyBzaG91bGQgYmUgcmV3cml0dGVuIGluIHY1XG4gKi9cbmV4cG9ydCBjb25zdCBUVUlfQ0FMRU5EQVJfREFURV9TVFJFQU0gPVxuICAgIHR1aUNyZWF0ZVRva2VuPE9ic2VydmFibGU8VHVpRGF5IHwgVHVpRGF5UmFuZ2UgfCBudWxsPj4oKTtcblxuZXhwb3J0IGZ1bmN0aW9uIHR1aURhdGVTdHJlYW1XaXRoVHJhbnNmb3JtZXIoXG4gICAgdHJhbnNmb3JtZXI6IEluamVjdGlvblRva2VuPFR1aVZhbHVlVHJhbnNmb3JtZXI8YW55Pj4sXG4pOiBQcm92aWRlciB7XG4gICAgcmV0dXJuIHtcbiAgICAgICAgcHJvdmlkZTogVFVJX0NBTEVOREFSX0RBVEVfU1RSRUFNLFxuICAgICAgICBkZXBzOiBbXG4gICAgICAgICAgICBbbmV3IE9wdGlvbmFsKCksIG5ldyBTZWxmKCksIE5nQ29udHJvbF0sXG4gICAgICAgICAgICBbbmV3IE9wdGlvbmFsKCksIHRyYW5zZm9ybWVyXSxcbiAgICAgICAgXSxcbiAgICAgICAgdXNlRmFjdG9yeTogdHVpQ29udHJvbFZhbHVlRmFjdG9yeSxcbiAgICB9O1xufVxuXG5mdW5jdGlvbiB0dWlDb250cm9sVmFsdWVGYWN0b3J5PFxuICAgIFQgZXh0ZW5kcyBUdWlEYXkgfCBUdWlEYXlSYW5nZSB8IFtUdWlEYXksIFR1aVRpbWUgfCBudWxsXSxcbj4oXG4gICAgY29udHJvbDogTmdDb250cm9sIHwgbnVsbCxcbiAgICB0cmFuc2Zvcm1lcj86IFR1aVZhbHVlVHJhbnNmb3JtZXI8VD4gfCBudWxsLFxuKTogT2JzZXJ2YWJsZTxUIHwgbnVsbD4gfCBudWxsIHtcbiAgICByZXR1cm4gY29udHJvbFxuICAgICAgICA/IHR1aUNvbnRyb2xWYWx1ZShjb250cm9sKS5waXBlKFxuICAgICAgICAgICAgICBtYXAoKHZhbHVlKSA9PlxuICAgICAgICAgICAgICAgICAgdHJhbnNmb3JtZXIgPyB0cmFuc2Zvcm1lcj8uZnJvbUNvbnRyb2xWYWx1ZSh2YWx1ZSkgOiAodmFsdWUgYXMgVCksXG4gICAgICAgICAgICAgICksXG4gICAgICAgICAgKVxuICAgICAgICA6IG9mKG51bGwpO1xufVxuIl19