@taiga-ui/kit
Version:
Taiga UI Angular main components kit
37 lines (31 loc) • 1.28 kB
JavaScript
import { HOURS_IN_DAY, TuiTime } from '@taiga-ui/cdk/date-time';
import { inject } from '@angular/core';
import { toSignal } from '@angular/core/rxjs-interop';
import { NgControl } from '@angular/forms';
import { tuiControlValue } from '@taiga-ui/cdk/observables';
import { TuiTextfieldComponent } from '@taiga-ui/core/components/textfield';
import { MaskitoDirective } from '@maskito/angular';
import { tuiDirectiveBinding } from '@taiga-ui/cdk/utils/di';
function tuiCreateTimePeriods(minHour = 0, maxHour = HOURS_IN_DAY, minutes = [0, 30]) {
const timeArray = [];
for (let i = minHour; i < maxHour; i++) {
minutes.forEach((minute) => {
const time = new TuiTime(i, minute);
timeArray.push(time);
});
}
return timeArray;
}
function tuiInjectValue() {
const control = inject(TuiTextfieldComponent, { optional: true })?.control() ||
inject(NgControl, { optional: true });
return toSignal(tuiControlValue(control), { requireSync: true });
}
function tuiMaskito(options) {
return tuiDirectiveBinding(MaskitoDirective, 'options', options);
}
/**
* Generated bundle index. Do not edit.
*/
export { tuiCreateTimePeriods, tuiInjectValue, tuiMaskito };
//# sourceMappingURL=taiga-ui-kit-utils.mjs.map