@mantine/dates 7.15.2 → 7.15.3

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.
Files changed (40) hide show
  1. package/cjs/components/DateTimePicker/DateTimePicker.cjs +1 -0
  2. package/cjs/components/DateTimePicker/DateTimePicker.cjs.map +1 -1
  3. package/cjs/components/Day/Day.cjs +1 -1
  4. package/cjs/components/Day/Day.cjs.map +1 -1
  5. package/cjs/components/Month/Month.cjs +1 -2
  6. package/cjs/components/Month/Month.cjs.map +1 -1
  7. package/cjs/components/Month/get-date-in-tab-order/get-date-in-tab-order.cjs +1 -2
  8. package/cjs/components/Month/get-date-in-tab-order/get-date-in-tab-order.cjs.map +1 -1
  9. package/cjs/components/Month/get-end-of-week/get-end-of-week.cjs +10 -4
  10. package/cjs/components/Month/get-end-of-week/get-end-of-week.cjs.map +1 -1
  11. package/cjs/components/Month/get-month-days/get-month-days.cjs +9 -3
  12. package/cjs/components/Month/get-month-days/get-month-days.cjs.map +1 -1
  13. package/cjs/components/Month/get-start-of-week/get-start-of-week.cjs +10 -4
  14. package/cjs/components/Month/get-start-of-week/get-start-of-week.cjs.map +1 -1
  15. package/cjs/index.cjs +0 -2
  16. package/cjs/index.cjs.map +1 -1
  17. package/esm/components/DateTimePicker/DateTimePicker.mjs +1 -0
  18. package/esm/components/DateTimePicker/DateTimePicker.mjs.map +1 -1
  19. package/esm/components/Day/Day.mjs +1 -1
  20. package/esm/components/Day/Day.mjs.map +1 -1
  21. package/esm/components/Month/Month.mjs +1 -2
  22. package/esm/components/Month/Month.mjs.map +1 -1
  23. package/esm/components/Month/get-date-in-tab-order/get-date-in-tab-order.mjs +1 -2
  24. package/esm/components/Month/get-date-in-tab-order/get-date-in-tab-order.mjs.map +1 -1
  25. package/esm/components/Month/get-end-of-week/get-end-of-week.mjs +6 -4
  26. package/esm/components/Month/get-end-of-week/get-end-of-week.mjs.map +1 -1
  27. package/esm/components/Month/get-month-days/get-month-days.mjs +5 -3
  28. package/esm/components/Month/get-month-days/get-month-days.mjs.map +1 -1
  29. package/esm/components/Month/get-start-of-week/get-start-of-week.mjs +6 -4
  30. package/esm/components/Month/get-start-of-week/get-start-of-week.mjs.map +1 -1
  31. package/esm/index.mjs +0 -1
  32. package/esm/index.mjs.map +1 -1
  33. package/lib/components/DateTimePicker/DateTimePicker.d.ts +4 -2
  34. package/lib/components/Month/index.d.ts +0 -1
  35. package/package.json +3 -3
  36. package/cjs/components/Month/is-same-month/is-same-month.cjs +0 -9
  37. package/cjs/components/Month/is-same-month/is-same-month.cjs.map +0 -1
  38. package/esm/components/Month/is-same-month/is-same-month.mjs +0 -7
  39. package/esm/components/Month/is-same-month/is-same-month.mjs.map +0 -1
  40. package/lib/components/Month/is-same-month/is-same-month.d.ts +0 -1
@@ -1 +1 @@
1
- {"version":3,"file":"get-month-days.mjs","sources":["../../../../src/components/Month/get-month-days/get-month-days.ts"],"sourcesContent":["import { DayOfWeek } from '../../../types';\nimport { getEndOfWeek } from '../get-end-of-week/get-end-of-week';\nimport { getStartOfWeek } from '../get-start-of-week/get-start-of-week';\n\ninterface GetMonthDaysInput {\n month: Date;\n firstDayOfWeek: DayOfWeek | undefined;\n consistentWeeks: boolean | undefined;\n}\n\nexport function getMonthDays({\n month,\n firstDayOfWeek = 1,\n consistentWeeks,\n}: GetMonthDaysInput): Date[][] {\n const currentMonth = month.getMonth();\n const startOfMonth = new Date(month.getFullYear(), currentMonth, 1);\n const endOfMonth = new Date(month.getFullYear(), month.getMonth() + 1, 0);\n const endDate = getEndOfWeek(endOfMonth, firstDayOfWeek);\n const date = getStartOfWeek(startOfMonth, firstDayOfWeek);\n const weeks: Date[][] = [];\n\n while (date <= endDate) {\n const days: Date[] = [];\n\n for (let i = 0; i < 7; i += 1) {\n days.push(new Date(date));\n date.setDate(date.getDate() + 1);\n }\n\n weeks.push(days);\n }\n\n if (consistentWeeks && weeks.length < 6) {\n const lastWeek = weeks[weeks.length - 1];\n const lastDay = lastWeek[lastWeek.length - 1];\n const nextDay = new Date(lastDay);\n nextDay.setDate(nextDay.getDate() + 1);\n\n while (weeks.length < 6) {\n const days: Date[] = [];\n\n for (let i = 0; i < 7; i += 1) {\n days.push(new Date(nextDay));\n nextDay.setDate(nextDay.getDate() + 1);\n }\n\n weeks.push(days);\n }\n }\n\n return weeks;\n}\n"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"get-month-days.mjs","sources":["../../../../src/components/Month/get-month-days/get-month-days.ts"],"sourcesContent":["import dayjs from 'dayjs';\nimport { DayOfWeek } from '../../../types';\nimport { getEndOfWeek } from '../get-end-of-week/get-end-of-week';\nimport { getStartOfWeek } from '../get-start-of-week/get-start-of-week';\n\ninterface GetMonthDaysInput {\n month: Date;\n firstDayOfWeek: DayOfWeek | undefined;\n consistentWeeks: boolean | undefined;\n}\n\nexport function getMonthDays({\n month,\n firstDayOfWeek = 1,\n consistentWeeks,\n}: GetMonthDaysInput): Date[][] {\n const day = dayjs(month).subtract(dayjs(month).date() - 1, 'day');\n const start = dayjs(day.format('YYYY-M-D'));\n const startOfMonth = start.toDate();\n const endOfMonth = start.add(+start.daysInMonth() - 1, 'day').toDate();\n const endDate = getEndOfWeek(endOfMonth, firstDayOfWeek);\n const date = getStartOfWeek(startOfMonth, firstDayOfWeek);\n const weeks: Date[][] = [];\n\n while (date <= endDate) {\n const days: Date[] = [];\n\n for (let i = 0; i < 7; i += 1) {\n days.push(new Date(date));\n date.setDate(date.getDate() + 1);\n }\n\n weeks.push(days);\n }\n\n if (consistentWeeks && weeks.length < 6) {\n const lastWeek = weeks[weeks.length - 1];\n const lastDay = lastWeek[lastWeek.length - 1];\n const nextDay = new Date(lastDay);\n nextDay.setDate(nextDay.getDate() + 1);\n\n while (weeks.length < 6) {\n const days: Date[] = [];\n\n for (let i = 0; i < 7; i += 1) {\n days.push(new Date(nextDay));\n nextDay.setDate(nextDay.getDate() + 1);\n }\n\n weeks.push(days);\n }\n }\n\n return weeks;\n}\n"],"names":[],"mappings":"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"}
@@ -1,10 +1,12 @@
1
1
  'use client';
2
+ import dayjs from 'dayjs';
3
+
2
4
  function getStartOfWeek(date, firstDayOfWeek = 1) {
3
- const value = new Date(date);
4
- while (value.getDay() !== firstDayOfWeek) {
5
- value.setDate(value.getDate() - 1);
5
+ let value = dayjs(date);
6
+ while (value.day() !== firstDayOfWeek) {
7
+ value = value.subtract(1, "day");
6
8
  }
7
- return value;
9
+ return value.toDate();
8
10
  }
9
11
 
10
12
  export { getStartOfWeek };
@@ -1 +1 @@
1
- {"version":3,"file":"get-start-of-week.mjs","sources":["../../../../src/components/Month/get-start-of-week/get-start-of-week.ts"],"sourcesContent":["import type { DayOfWeek } from '../../../types';\n\nexport function getStartOfWeek(date: Date, firstDayOfWeek: DayOfWeek = 1) {\n const value = new Date(date);\n\n while (value.getDay() !== firstDayOfWeek) {\n value.setDate(value.getDate() - 1);\n }\n\n return value;\n}\n"],"names":[],"mappings":";AAEgB,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,cAAA,CAAe,CAAA,CAAA,CAAA,CAAY,EAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAA4B,CAAG,CAAA,CAAA,CAAA;AACxE,CAAA,CAAM,MAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAQ,IAAI,CAAA,CAAA,CAAA,CAAA,CAAK,IAAI,CAAA,CAAA;AAE3B,CAAA,CAAO,OAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAM,MAAO,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAM,cAAgB,CAAA,CAAA,CAAA;AACxC,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAM,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAQ,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAM,CAAQ,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAI,CAAA,CAAA,CAAC,CAAA,CAAA;AAAA,CAAA,CAAA,CAAA;AAGnC,CAAA,CAAO,OAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA;AACT,CAAA;;"}
1
+ {"version":3,"file":"get-start-of-week.mjs","sources":["../../../../src/components/Month/get-start-of-week/get-start-of-week.ts"],"sourcesContent":["import dayjs from 'dayjs';\nimport type { DayOfWeek } from '../../../types';\n\nexport function getStartOfWeek(date: Date, firstDayOfWeek: DayOfWeek = 1) {\n let value = dayjs(date);\n while (value.day() !== firstDayOfWeek) {\n value = value.subtract(1, 'day');\n }\n\n return value.toDate();\n}\n"],"names":[],"mappings":";;;AAGgB,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,cAAA,CAAe,CAAA,CAAA,CAAA,CAAY,EAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAA4B,CAAG,CAAA,CAAA,CAAA;AACxE,CAAA,CAAI,IAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAQ,MAAM,IAAI,CAAA,CAAA;AACtB,CAAA,CAAO,OAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAM,GAAI,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAM,cAAgB,CAAA,CAAA,CAAA;AACrC,CAAQ,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,GAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAM,QAAS,CAAA,CAAA,CAAG,CAAA,CAAA,CAAA,CAAA,CAAA,CAAK,CAAA,CAAA;AAAA,CAAA,CAAA,CAAA;AAGjC,CAAA,CAAA,CAAO,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,EAAM,CAAA,CAAA,CAAA,CAAA,CAAA,CAAO,CAAA,CAAA,CAAA;AACtB,CAAA;;"}
package/esm/index.mjs CHANGED
@@ -12,7 +12,6 @@ export { WeekdaysRow } from './components/WeekdaysRow/WeekdaysRow.mjs';
12
12
  export { getEndOfWeek } from './components/Month/get-end-of-week/get-end-of-week.mjs';
13
13
  export { getStartOfWeek } from './components/Month/get-start-of-week/get-start-of-week.mjs';
14
14
  export { getMonthDays } from './components/Month/get-month-days/get-month-days.mjs';
15
- export { isSameMonth } from './components/Month/is-same-month/is-same-month.mjs';
16
15
  export { Month } from './components/Month/Month.mjs';
17
16
  export { PickerControl } from './components/PickerControl/PickerControl.mjs';
18
17
  export { YearsList } from './components/YearsList/YearsList.mjs';
package/esm/index.mjs.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.mjs","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;"}
1
+ {"version":3,"file":"index.mjs","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;"}
@@ -1,10 +1,10 @@
1
1
  import { ActionIconProps, BoxProps, Factory, InputVariant, StylesApiProps } from '@mantine/core';
2
- import { DateValue } from '../../types';
2
+ import { CalendarLevel, DateValue } from '../../types';
3
3
  import { CalendarBaseProps, CalendarSettings, CalendarStylesNames } from '../Calendar';
4
4
  import { DateInputSharedProps, PickerInputBaseStylesNames } from '../PickerInputBase';
5
5
  import { TimeInputProps } from '../TimeInput';
6
6
  export type DateTimePickerStylesNames = 'timeWrapper' | 'timeInput' | 'submitButton' | PickerInputBaseStylesNames | CalendarStylesNames;
7
- export interface DateTimePickerProps extends BoxProps, Omit<DateInputSharedProps, 'classNames' | 'styles' | 'closeOnChange' | 'size' | 'valueFormatter'>, Omit<CalendarBaseProps, 'defaultDate'>, Omit<CalendarSettings, 'onYearMouseEnter' | 'onMonthMouseEnter'>, StylesApiProps<DateTimePickerFactory> {
7
+ export interface DateTimePickerProps extends BoxProps, Omit<DateInputSharedProps, 'classNames' | 'styles' | 'closeOnChange' | 'size' | 'valueFormatter'>, Omit<CalendarBaseProps, 'defaultDate'>, Omit<CalendarSettings, 'onYearMouseEnter' | 'onMonthMouseEnter' | 'hasNextLevel'>, StylesApiProps<DateTimePickerFactory> {
8
8
  /** Dayjs format to display input value, "DD/MM/YYYY HH:mm" by default */
9
9
  valueFormat?: string;
10
10
  /** Controlled component value */
@@ -21,6 +21,8 @@ export interface DateTimePickerProps extends BoxProps, Omit<DateInputSharedProps
21
21
  submitButtonProps?: ActionIconProps & React.ComponentPropsWithoutRef<'button'>;
22
22
  /** Determines whether seconds input should be rendered */
23
23
  withSeconds?: boolean;
24
+ /** Max level that user can go up to (decade, year, month), defaults to decade */
25
+ maxLevel?: CalendarLevel;
24
26
  }
25
27
  export type DateTimePickerFactory = Factory<{
26
28
  props: DateTimePickerProps;
@@ -1,6 +1,5 @@
1
1
  export { getEndOfWeek } from './get-end-of-week/get-end-of-week';
2
2
  export { getStartOfWeek } from './get-start-of-week/get-start-of-week';
3
3
  export { getMonthDays } from './get-month-days/get-month-days';
4
- export { isSameMonth } from './is-same-month/is-same-month';
5
4
  export { Month } from './Month';
6
5
  export type { MonthProps, MonthSettings, MonthStylesNames, MonthFactory } from './Month';
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@mantine/dates",
3
- "version": "7.15.2",
3
+ "version": "7.15.3",
4
4
  "description": "Calendars, date and time pickers based on Mantine components",
5
5
  "homepage": "https://mantine.dev/dates/getting-started/",
6
6
  "license": "MIT",
@@ -45,8 +45,8 @@
45
45
  "directory": "packages/@mantine/dates"
46
46
  },
47
47
  "peerDependencies": {
48
- "@mantine/core": "7.15.2",
49
- "@mantine/hooks": "7.15.2",
48
+ "@mantine/core": "7.15.3",
49
+ "@mantine/hooks": "7.15.3",
50
50
  "dayjs": ">=1.0.0",
51
51
  "react": "^18.x || ^19.x",
52
52
  "react-dom": "^18.x || ^19.x"
@@ -1,9 +0,0 @@
1
- 'use client';
2
- 'use strict';
3
-
4
- function isSameMonth(date, comparison) {
5
- return date.getFullYear() === comparison.getFullYear() && date.getMonth() === comparison.getMonth();
6
- }
7
-
8
- exports.isSameMonth = isSameMonth;
9
- //# sourceMappingURL=is-same-month.cjs.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"is-same-month.cjs","sources":["../../../../src/components/Month/is-same-month/is-same-month.ts"],"sourcesContent":["export function isSameMonth(date: Date, comparison: Date) {\n return (\n date.getFullYear() === comparison.getFullYear() && date.getMonth() === comparison.getMonth()\n );\n}\n"],"names":[],"mappings":";;;AAAgB,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAY,MAAY,UAAkB,CAAA,CAAA,CAAA;AACxD,CAAA,CACE,OAAA,CAAA,CAAA,CAAA,CAAA,CAAK,WAAY,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAM,UAAW,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,GAAiB,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAK,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAe,KAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAW,QAAS,CAAA,CAAA,CAAA;AAE/F,CAAA;;"}
@@ -1,7 +0,0 @@
1
- 'use client';
2
- function isSameMonth(date, comparison) {
3
- return date.getFullYear() === comparison.getFullYear() && date.getMonth() === comparison.getMonth();
4
- }
5
-
6
- export { isSameMonth };
7
- //# sourceMappingURL=is-same-month.mjs.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"is-same-month.mjs","sources":["../../../../src/components/Month/is-same-month/is-same-month.ts"],"sourcesContent":["export function isSameMonth(date: Date, comparison: Date) {\n return (\n date.getFullYear() === comparison.getFullYear() && date.getMonth() === comparison.getMonth()\n );\n}\n"],"names":[],"mappings":";AAAgB,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAY,MAAY,UAAkB,CAAA,CAAA,CAAA;AACxD,CAAA,CACE,OAAA,CAAA,CAAA,CAAA,CAAA,CAAK,WAAY,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAM,UAAW,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,GAAiB,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAK,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAe,KAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAW,QAAS,CAAA,CAAA,CAAA;AAE/F,CAAA;;"}
@@ -1 +0,0 @@
1
- export declare function isSameMonth(date: Date, comparison: Date): boolean;