@xuda.io/xuda-widget-plugin-flatpickr
Version:
Xuda Flatpickr plugin implementation is a library for customizable date and time pickers. It offers features like date range selection, multiple date picking, localization, and accessibility, making it user-friendly, visually appealing, and suitable for m
32 lines (25 loc) • 885 B
JavaScript
import flatpickr from "flatpickr";
import "flatpickr/dist/flatpickr.min.css";
export const _default = async function (fields, e) {
let opt = _.clone(fields); // simplifyObject(properties);
opt.defaultDate = Date.now();
delete opt.outputBindFormat;
delete opt["xu-bind"];
if (!_.isEmpty(fields["xu-bind"])) {
opt.defaultDate = await e.api_utils.get_field_value(fields["xu-bind"]);
}
opt.onChange = async function (selectedDates, dateStr, instance) {
if (!_.isEmpty(fields["xu-bind"])) {
if (fields.outputBindFormat === "date") {
await e.api_utils.set_field_value(fields["xu-bind"], selectedDates);
} else {
await e.api_utils.set_field_value(
fields["xu-bind"],
new Date(selectedDates).valueOf()
);
}
}
};
const $date = $("<input>").appendTo(e.$containerP);
flatpickr($date[0], opt);
};