@taiga-ui/kit
Version:
Taiga UI Angular main components kit
12 lines • 3.43 kB
JavaScript
import { TuiDayRange } from '@taiga-ui/cdk/date-time';
export const calculateDisabledItemHandler = (disabledItemHandler, value, minLength) => (item) => {
if (!value || value instanceof TuiDayRange || !minLength) {
return disabledItemHandler(item);
}
const negativeMinLength = Object.fromEntries(Object.entries(minLength).map(([key, value]) => [key, -value]));
const disabledBefore = value.append(negativeMinLength).append({ day: 1 });
const disabledAfter = value.append(minLength).append({ day: -1 });
const inDisabledRange = disabledBefore.dayBefore(item) && disabledAfter.dayAfter(item);
return inDisabledRange || disabledItemHandler(item);
};
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2FsY3VsYXRlLWRpc2FibGVkLWl0ZW0taGFuZGxlci5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2tpdC9jb21wb25lbnRzL2NhbGVuZGFyLXJhbmdlL2NhbGN1bGF0ZS1kaXNhYmxlZC1pdGVtLWhhbmRsZXIudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQ0EsT0FBTyxFQUFDLFdBQVcsRUFBQyxNQUFNLHlCQUF5QixDQUFDO0FBR3BELE1BQU0sQ0FBQyxNQUFNLDRCQUE0QixHQUlSLENBQUMsbUJBQW1CLEVBQUUsS0FBSyxFQUFFLFNBQVMsRUFBRSxFQUFFLENBQUMsQ0FBQyxJQUFJLEVBQUUsRUFBRTtJQUNqRixJQUFJLENBQUMsS0FBSyxJQUFJLEtBQUssWUFBWSxXQUFXLElBQUksQ0FBQyxTQUFTLEVBQUU7UUFDdEQsT0FBTyxtQkFBbUIsQ0FBQyxJQUFJLENBQUMsQ0FBQztLQUNwQztJQUVELE1BQU0saUJBQWlCLEdBQUcsTUFBTSxDQUFDLFdBQVcsQ0FDeEMsTUFBTSxDQUFDLE9BQU8sQ0FBQyxTQUFTLENBQUMsQ0FBQyxHQUFHLENBQUMsQ0FBQyxDQUFDLEdBQUcsRUFBRSxLQUFLLENBQUMsRUFBRSxFQUFFLENBQUMsQ0FBQyxHQUFHLEVBQUUsQ0FBQyxLQUFLLENBQUMsQ0FBQyxDQUNqRSxDQUFDO0lBQ0YsTUFBTSxjQUFjLEdBQUcsS0FBSyxDQUFDLE1BQU0sQ0FBQyxpQkFBaUIsQ0FBQyxDQUFDLE1BQU0sQ0FBQyxFQUFDLEdBQUcsRUFBRSxDQUFDLEVBQUMsQ0FBQyxDQUFDO0lBQ3hFLE1BQU0sYUFBYSxHQUFHLEtBQUssQ0FBQyxNQUFNLENBQUMsU0FBUyxDQUFDLENBQUMsTUFBTSxDQUFDLEVBQUMsR0FBRyxFQUFFLENBQUMsQ0FBQyxFQUFDLENBQUMsQ0FBQztJQUNoRSxNQUFNLGVBQWUsR0FDakIsY0FBYyxDQUFDLFNBQVMsQ0FBQyxJQUFJLENBQUMsSUFBSSxhQUFhLENBQUMsUUFBUSxDQUFDLElBQUksQ0FBQyxDQUFDO0lBRW5FLE9BQU8sZUFBZSxJQUFJLG1CQUFtQixDQUFDLElBQUksQ0FBQyxDQUFDO0FBQ3hELENBQUMsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB0eXBlIHtUdWlEYXksIFR1aURheUxpa2V9IGZyb20gJ0B0YWlnYS11aS9jZGsvZGF0ZS10aW1lJztcbmltcG9ydCB7VHVpRGF5UmFuZ2V9IGZyb20gJ0B0YWlnYS11aS9jZGsvZGF0ZS10aW1lJztcbmltcG9ydCB0eXBlIHtUdWlCb29sZWFuSGFuZGxlcn0gZnJvbSAnQHRhaWdhLXVpL2Nkay90eXBlcyc7XG5cbmV4cG9ydCBjb25zdCBjYWxjdWxhdGVEaXNhYmxlZEl0ZW1IYW5kbGVyOiAoXG4gICAgZGlzYWJsZWRJdGVtSGFuZGxlcjogVHVpQm9vbGVhbkhhbmRsZXI8VHVpRGF5PixcbiAgICB2YWx1ZTogVHVpRGF5IHwgVHVpRGF5UmFuZ2UgfCBudWxsLFxuICAgIG1pbkxlbmd0aDogVHVpRGF5TGlrZSB8IG51bGwsXG4pID0+IFR1aUJvb2xlYW5IYW5kbGVyPFR1aURheT4gPSAoZGlzYWJsZWRJdGVtSGFuZGxlciwgdmFsdWUsIG1pbkxlbmd0aCkgPT4gKGl0ZW0pID0+IHtcbiAgICBpZiAoIXZhbHVlIHx8IHZhbHVlIGluc3RhbmNlb2YgVHVpRGF5UmFuZ2UgfHwgIW1pbkxlbmd0aCkge1xuICAgICAgICByZXR1cm4gZGlzYWJsZWRJdGVtSGFuZGxlcihpdGVtKTtcbiAgICB9XG5cbiAgICBjb25zdCBuZWdhdGl2ZU1pbkxlbmd0aCA9IE9iamVjdC5mcm9tRW50cmllcyhcbiAgICAgICAgT2JqZWN0LmVudHJpZXMobWluTGVuZ3RoKS5tYXAoKFtrZXksIHZhbHVlXSkgPT4gW2tleSwgLXZhbHVlXSksXG4gICAgKTtcbiAgICBjb25zdCBkaXNhYmxlZEJlZm9yZSA9IHZhbHVlLmFwcGVuZChuZWdhdGl2ZU1pbkxlbmd0aCkuYXBwZW5kKHtkYXk6IDF9KTtcbiAgICBjb25zdCBkaXNhYmxlZEFmdGVyID0gdmFsdWUuYXBwZW5kKG1pbkxlbmd0aCkuYXBwZW5kKHtkYXk6IC0xfSk7XG4gICAgY29uc3QgaW5EaXNhYmxlZFJhbmdlID1cbiAgICAgICAgZGlzYWJsZWRCZWZvcmUuZGF5QmVmb3JlKGl0ZW0pICYmIGRpc2FibGVkQWZ0ZXIuZGF5QWZ0ZXIoaXRlbSk7XG5cbiAgICByZXR1cm4gaW5EaXNhYmxlZFJhbmdlIHx8IGRpc2FibGVkSXRlbUhhbmRsZXIoaXRlbSk7XG59O1xuIl19