@kelvininc/ui-components
Version:
Kelvin UI Components
112 lines (108 loc) • 4.89 kB
JavaScript
;
var date_helper = require('./date.helper-DwNTBYV0.js');
var absoluteTimePicker_config = require('./absolute-time-picker.config-BF9QIy90.js');
require('./components-D2lyDQ_a.js');
require('./lib-config-QLtHwxiM.js');
require('./action-button.types-BYOe6st0.js');
var absoluteTimePickerDropdown_types = require('./absolute-time-picker-dropdown.types-mPwO9zQk.js');
require('./icon.types-B8lvUrX_.js');
require('./summary-card.types-W26sTdH1.js');
require('./toaster.types-DlSCye8T.js');
require('./tree-item.types-C2yRoORC.js');
require('./tag-alarm.types-BeZw-7PT.js');
require('./wizard.types-DTbE-B6d.js');
const buildSelectedDatesEventPayload = (dateA, dateB) => {
if (!dateA && !dateB) {
return [];
}
if (!dateB) {
return [dateA.format(absoluteTimePicker_config.CALENDAR_DATE_TIME_MASK)];
}
return [dateA.format(absoluteTimePicker_config.CALENDAR_DATE_TIME_MASK), dateB.format(absoluteTimePicker_config.CALENDAR_DATE_TIME_MASK)];
};
const isEndDateAtStartOfDay = (date) => {
return date.isValid() && date.hour() === 0 && date.minute() === 0 && date.second() === 0;
};
const getFirstCalendarInitialDate = (displayedMonth) => {
const initialDate = displayedMonth;
return initialDate.isValid() ? initialDate.format(absoluteTimePicker_config.CALENDAR_MASK) : '';
};
const getSecondCalendarInitialDate = (displayedMonth) => {
const initialDate = displayedMonth;
return initialDate.isValid() ? initialDate.add(1, 'month').format(absoluteTimePicker_config.CALENDAR_MASK) : '';
};
const getMinimumDateFromDayClick = (clickedDate, minimumDate) => {
const parsedMinDate = date_helper.dayjs(minimumDate, absoluteTimePicker_config.DATETIME_INPUT_MASK);
if (clickedDate.startOf('day').isBefore(parsedMinDate)) {
return parsedMinDate;
}
return clickedDate.startOf('day');
};
const getMaximumDateFromDayClick = (clickedDate, maximumDate) => {
const parsedMaxDate = date_helper.dayjs(maximumDate, absoluteTimePicker_config.DATETIME_INPUT_MASK);
if (clickedDate.endOf('day').isAfter(parsedMaxDate)) {
return parsedMaxDate;
}
return clickedDate.endOf('day');
};
const getFromDateInputState = (error, { minDate }) => {
if (!error) {
return;
}
if (error === absoluteTimePickerDropdown_types.EAbsoluteTimeError.StartDateBeforeMinimumDate && minDate) {
const min = date_helper.dayjs(minDate).format(absoluteTimePicker_config.DATETIME_INPUT_MASK);
return {
state: absoluteTimePickerDropdown_types.EValidationState.Invalid,
helpText: `The 'FROM' date must be after ${min}`
};
}
return;
};
const getToDateTimeInputState = (error, { maxDate }) => {
if (!error) {
return;
}
if (error === absoluteTimePickerDropdown_types.EAbsoluteTimeError.EndDateAfterMaximumDate && maxDate) {
const max = date_helper.dayjs(maxDate).format(absoluteTimePicker_config.DATETIME_INPUT_MASK);
return {
state: absoluteTimePickerDropdown_types.EValidationState.Invalid,
helpText: `The 'TO' date must be before ${max}`
};
}
if (error === absoluteTimePickerDropdown_types.EAbsoluteTimeError.EndDateBeforeStartDate) {
return {
state: absoluteTimePickerDropdown_types.EValidationState.Invalid,
helpText: `The 'TO' date must be after 'FROM' date`
};
}
return;
};
const getSingleDateTimeInputState = (error, { minDate, maxDate }) => {
if (!error) {
return;
}
if (error === absoluteTimePickerDropdown_types.EAbsoluteTimeError.StartDateBeforeMinimumDate && minDate) {
const min = date_helper.dayjs(minDate).format(absoluteTimePicker_config.DATETIME_INPUT_MASK);
return {
state: absoluteTimePickerDropdown_types.EValidationState.Invalid,
helpText: `The date must be after ${min}`
};
}
if (error === absoluteTimePickerDropdown_types.EAbsoluteTimeError.EndDateAfterMaximumDate && maxDate) {
const max = date_helper.dayjs(maxDate).format(absoluteTimePicker_config.DATETIME_INPUT_MASK);
return {
state: absoluteTimePickerDropdown_types.EValidationState.Invalid,
helpText: `The date must be before ${max}`
};
}
return;
};
exports.buildSelectedDatesEventPayload = buildSelectedDatesEventPayload;
exports.getFirstCalendarInitialDate = getFirstCalendarInitialDate;
exports.getFromDateInputState = getFromDateInputState;
exports.getMaximumDateFromDayClick = getMaximumDateFromDayClick;
exports.getMinimumDateFromDayClick = getMinimumDateFromDayClick;
exports.getSecondCalendarInitialDate = getSecondCalendarInitialDate;
exports.getSingleDateTimeInputState = getSingleDateTimeInputState;
exports.getToDateTimeInputState = getToDateTimeInputState;
exports.isEndDateAtStartOfDay = isEndDateAtStartOfDay;