@mantine-vue/schedule 2.3.0 → 2.4.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/cjs/index.cjs +29 -15
- package/cjs/index.cjs.map +1 -1
- package/esm/index.mjs +29 -15
- package/esm/index.mjs.map +1 -1
- package/lib/components/ScheduleHeader/ScheduleHeaderBase.d.ts +5 -2
- package/lib/utils/clamp-interval-minutes/clamp-interval-minutes.d.ts +8 -1
- package/package.json +4 -4
- package/styles.css +52 -37
- package/styles.layer.css +52 -37
package/cjs/index.cjs
CHANGED
|
@@ -171,11 +171,18 @@ function getMonthsByQuarter(year) {
|
|
|
171
171
|
}
|
|
172
172
|
//#endregion
|
|
173
173
|
//#region src/utils/clamp-interval-minutes/clamp-interval-minutes.ts
|
|
174
|
-
/**
|
|
174
|
+
/**
|
|
175
|
+
* Clamps interval minutes to a value that keeps the time grid consistent:
|
|
176
|
+
*
|
|
177
|
+
* - Values of 60 or less must divide evenly into an hour.
|
|
178
|
+
* - Values above an hour must be a whole number of hours.
|
|
179
|
+
*
|
|
180
|
+
* Invalid values fall back to 60 and the result is capped to one day.
|
|
181
|
+
*/
|
|
175
182
|
function clampIntervalMinutes(intervalMinutes) {
|
|
176
|
-
|
|
177
|
-
|
|
178
|
-
return
|
|
183
|
+
const rounded = Math.round(Math.max(1, Math.min(1440, intervalMinutes)));
|
|
184
|
+
if (rounded <= 60) return 60 % rounded === 0 ? rounded : 60;
|
|
185
|
+
return rounded % 60 === 0 ? rounded : 60;
|
|
179
186
|
}
|
|
180
187
|
//#endregion
|
|
181
188
|
//#region src/utils/parse-time-string/parse-time-string.ts
|
|
@@ -939,9 +946,9 @@ var CurrentTimeIndicator = (0, vue.defineComponent)({
|
|
|
939
946
|
}
|
|
940
947
|
});
|
|
941
948
|
var ScheduleEvent_module_default = {
|
|
942
|
-
event: "
|
|
943
|
-
eventInner: "
|
|
944
|
-
eventResizeHandle: "
|
|
949
|
+
event: "_event_19lsr_1",
|
|
950
|
+
eventInner: "_eventInner_19lsr_14",
|
|
951
|
+
eventResizeHandle: "_eventResizeHandle_19lsr_186"
|
|
945
952
|
};
|
|
946
953
|
//#endregion
|
|
947
954
|
//#region src/components/ScheduleEvent/ScheduleEvent.ts
|
|
@@ -1725,6 +1732,7 @@ var ScheduleHeader = Object.assign(ScheduleHeaderBaseComponent, {
|
|
|
1725
1732
|
//#region src/components/ScheduleHeader/ScheduleHeaderBase.ts
|
|
1726
1733
|
var ScheduleHeaderBase = (0, vue.defineComponent)({
|
|
1727
1734
|
name: "ScheduleHeaderBase",
|
|
1735
|
+
slots: Object,
|
|
1728
1736
|
props: {
|
|
1729
1737
|
view: {
|
|
1730
1738
|
type: String,
|
|
@@ -1746,7 +1754,7 @@ var ScheduleHeaderBase = (0, vue.defineComponent)({
|
|
|
1746
1754
|
todayControlProps: Object,
|
|
1747
1755
|
viewSelectProps: Object
|
|
1748
1756
|
},
|
|
1749
|
-
setup(props) {
|
|
1757
|
+
setup(props, { slots }) {
|
|
1750
1758
|
return () => {
|
|
1751
1759
|
const views = props.viewSelectProps?.views || [
|
|
1752
1760
|
"day",
|
|
@@ -1763,7 +1771,7 @@ var ScheduleHeaderBase = (0, vue.defineComponent)({
|
|
|
1763
1771
|
props.control.monthYearSelect ? (0, vue.h)(ScheduleHeader.MonthYearSelect, {
|
|
1764
1772
|
...props.control.monthYearSelect,
|
|
1765
1773
|
labels: props.labels
|
|
1766
|
-
}) : (0, vue.h)(ScheduleHeader.Control, { interactive: false }, () => props.control.title),
|
|
1774
|
+
}) : (0, vue.h)(ScheduleHeader.Control, { interactive: false }, () => props.control.title !== void 0 ? props.control.title : slots.title?.()),
|
|
1767
1775
|
(0, vue.h)(ScheduleHeader.Next, {
|
|
1768
1776
|
...props.nextControlProps,
|
|
1769
1777
|
onClick: () => props.onDateChange?.(props.navigationHandlers.next())
|
|
@@ -2197,7 +2205,8 @@ var DayView = (0, vue.defineComponent)({
|
|
|
2197
2205
|
class: DayView_module_default.dayViewBackgroundEvent,
|
|
2198
2206
|
style: {
|
|
2199
2207
|
top: `${event.position.top}%`,
|
|
2200
|
-
|
|
2208
|
+
bottom: `${100 - event.position.top - event.position.height}%`,
|
|
2209
|
+
minHeight: "1px"
|
|
2201
2210
|
}
|
|
2202
2211
|
})),
|
|
2203
2212
|
...regularEvents.map((event) => {
|
|
@@ -2209,7 +2218,8 @@ var DayView = (0, vue.defineComponent)({
|
|
|
2209
2218
|
style: {
|
|
2210
2219
|
position: "absolute",
|
|
2211
2220
|
top: `${resizePosition?.top ?? event.position.top}%`,
|
|
2212
|
-
|
|
2221
|
+
bottom: `${100 - (resizePosition?.top ?? event.position.top) - (resizePosition?.height ?? event.position.height)}%`,
|
|
2222
|
+
minHeight: "1px",
|
|
2213
2223
|
width: `${event.position.width}%`,
|
|
2214
2224
|
insetInlineStart: `${event.position.offset}%`
|
|
2215
2225
|
},
|
|
@@ -3794,7 +3804,8 @@ var WeekView = (0, vue.defineComponent)({
|
|
|
3794
3804
|
class: WeekView_module_default.weekViewBackgroundEvent,
|
|
3795
3805
|
style: {
|
|
3796
3806
|
top: `${event.position.top}%`,
|
|
3797
|
-
|
|
3807
|
+
bottom: `${100 - event.position.top - event.position.height}%`,
|
|
3808
|
+
minHeight: "1px",
|
|
3798
3809
|
width: "100%"
|
|
3799
3810
|
}
|
|
3800
3811
|
})),
|
|
@@ -3807,7 +3818,8 @@ var WeekView = (0, vue.defineComponent)({
|
|
|
3807
3818
|
style: {
|
|
3808
3819
|
position: "absolute",
|
|
3809
3820
|
top: `${resizePosition?.top ?? event.position.top}%`,
|
|
3810
|
-
|
|
3821
|
+
bottom: `${100 - (resizePosition?.top ?? event.position.top) - (resizePosition?.height ?? event.position.height)}%`,
|
|
3822
|
+
minHeight: "1px",
|
|
3811
3823
|
width: `${event.position.width}%`,
|
|
3812
3824
|
insetInlineStart: `${event.position.offset}%`
|
|
3813
3825
|
},
|
|
@@ -4693,7 +4705,8 @@ var ResourcesDayView = (0, vue.defineComponent)({
|
|
|
4693
4705
|
class: ResourcesDayView_module_default.resourcesDayViewBackgroundEvent,
|
|
4694
4706
|
style: {
|
|
4695
4707
|
left: `${event.position.top}%`,
|
|
4696
|
-
|
|
4708
|
+
right: `${100 - event.position.top - event.position.height}%`,
|
|
4709
|
+
minWidth: "1px",
|
|
4697
4710
|
top: 0,
|
|
4698
4711
|
height: "100%",
|
|
4699
4712
|
"--bg-event-bg": colors.background,
|
|
@@ -5412,7 +5425,8 @@ var ResourcesWeekView = (0, vue.defineComponent)({
|
|
|
5412
5425
|
class: ResourcesWeekView_module_default.resourcesWeekViewBackgroundEvent,
|
|
5413
5426
|
style: {
|
|
5414
5427
|
left: `${dayOffset + event.position.top / 100 * dayWidth}%`,
|
|
5415
|
-
|
|
5428
|
+
right: `${100 - dayOffset - (event.position.top + event.position.height) / 100 * dayWidth}%`,
|
|
5429
|
+
minWidth: "1px",
|
|
5416
5430
|
top: 0,
|
|
5417
5431
|
height: "100%",
|
|
5418
5432
|
"--bg-event-bg": colors.background,
|