@mantine/dates
Version:
Calendars, date and time pickers based on Mantine components
63 lines (62 loc) • 2.22 kB
JavaScript
"use client";
const require_TimePicker_context = require("../TimePicker.context.cjs");
const require_is_same_time = require("../utils/is-same-time/is-same-time.cjs");
const require_TimePresetControl = require("./TimePresetControl.cjs");
const require_TimePresetGroup = require("./TimePresetGroup.cjs");
let react_jsx_runtime = require("react/jsx-runtime");
let _mantine_core = require("@mantine/core");
//#region packages/@mantine/dates/src/components/TimePicker/TimePresets/TimePresets.tsx
function TimePresets({ presets, format, amPmLabels, withSeconds, value, onChange }) {
const ctx = require_TimePicker_context.useTimePickerContext();
if (presets.length === 0) return null;
if (typeof presets[0] === "string") {
const items = presets.map((item) => /* @__PURE__ */ (0, react_jsx_runtime.jsx)(require_TimePresetControl.TimePresetControl, {
value: item,
format,
amPmLabels,
withSeconds,
active: require_is_same_time.isSameTime({
time: item,
compare: value,
withSeconds
}),
onChange
}, item));
return /* @__PURE__ */ (0, react_jsx_runtime.jsx)(_mantine_core.ScrollArea.Autosize, {
mah: ctx.maxDropdownContentHeight,
type: "never",
...ctx.getStyles("scrollarea"),
...ctx.scrollAreaProps,
children: /* @__PURE__ */ (0, react_jsx_runtime.jsx)("div", {
...ctx.getStyles("presetsRoot"),
children: /* @__PURE__ */ (0, react_jsx_runtime.jsx)(_mantine_core.SimpleGrid, {
cols: withSeconds ? 2 : 3,
spacing: 4,
children: items
})
})
});
}
const groups = presets.map((group, index) => /* @__PURE__ */ (0, react_jsx_runtime.jsx)(require_TimePresetGroup.TimePresetGroup, {
data: group,
value,
format,
amPmLabels,
withSeconds,
onChange
}, index));
return /* @__PURE__ */ (0, react_jsx_runtime.jsx)(_mantine_core.ScrollArea.Autosize, {
mah: ctx.maxDropdownContentHeight,
type: "never",
...ctx.getStyles("scrollarea"),
...ctx.scrollAreaProps,
children: /* @__PURE__ */ (0, react_jsx_runtime.jsx)("div", {
...ctx.getStyles("presetsRoot"),
children: groups
})
});
}
TimePresets.displayName = "@mantine/dates/TimePresets";
//#endregion
exports.TimePresets = TimePresets;
//# sourceMappingURL=TimePresets.cjs.map