@stenajs-webui/calendar 15.0.0-alpha.3 → 15.0.0-alpha.7

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 (37) hide show
  1. package/dist/components/calendar/CalendarMonth.d.ts +3 -3
  2. package/dist/components/calendar/CalendarWeek.d.ts +3 -3
  3. package/dist/components/calendar/DisabledDayWrapper.d.ts +7 -0
  4. package/dist/components/calendar-types/date-range-calendar/DateRangeCalendar.d.ts +4 -12
  5. package/dist/components/calendar-types/date-range-calendar/DateRangeCalendar.stories.d.ts +1 -0
  6. package/dist/components/calendar-types/date-range-calendar/hooks/UseDateRangeSelection.d.ts +1 -1
  7. package/dist/components/calendar-types/date-range-exclusion-calendar/DateRangeExclusionCalendar.d.ts +2 -3
  8. package/dist/components/calendar-types/date-range-exclusion-calendar/UseDateRangeExclusionSelection.d.ts +1 -1
  9. package/dist/components/input-types/date-input/DateInput.d.ts +2 -1
  10. package/dist/components/input-types/date-input/DateInput.stories.d.ts +2 -0
  11. package/dist/components/input-types/date-range-dual-text-input/DateRangeDualTextInput.d.ts +4 -3
  12. package/dist/components/input-types/date-range-dual-text-input/DateRangeDualTextInput.stories.d.ts +2 -1
  13. package/dist/components/input-types/date-range-input/DateRangeInput.d.ts +6 -7
  14. package/dist/components/input-types/date-range-input/DateRangeInput.stories.d.ts +2 -1
  15. package/dist/components/input-types/date-range-input/hooks/UseDateRangeInput.d.ts +3 -2
  16. package/dist/components/input-types/date-text-input/DateTextInput.d.ts +2 -1
  17. package/dist/components/input-types/date-time-input/DateTimeInput.d.ts +2 -1
  18. package/dist/components/input-types/date-time-input/DateTimeInput.stories.d.ts +1 -0
  19. package/dist/config/DefaultMaxDate.d.ts +1 -0
  20. package/dist/features/date-range/hooks/UseDateRangeOnClickDayHandler.d.ts +2 -5
  21. package/dist/features/dual-text-input/DualTextInput.d.ts +4 -0
  22. package/dist/index.d.ts +3 -1
  23. package/dist/index.es.js +148 -153
  24. package/dist/index.es.js.map +1 -1
  25. package/dist/index.js +152 -154
  26. package/dist/index.js.map +1 -1
  27. package/dist/types/CalendarTypes.d.ts +21 -1
  28. package/dist/types/DateRange.d.ts +16 -0
  29. package/dist/util/calendar/StateModifier.d.ts +1 -0
  30. package/dist/util/date/DateMinMaxValidator.d.ts +1 -0
  31. package/dist/util/date/__tests__/DateMinMaxValidator.test.d.ts +1 -0
  32. package/dist/util/date-range/DateRangeTransformer.d.ts +3 -0
  33. package/dist/util/date-range/DateRangeValidator.d.ts +4 -0
  34. package/dist/util/date-range/__tests__/DateRangeValidator.test.d.ts +1 -0
  35. package/package.json +8 -8
  36. package/dist/components/calendar-types/date-range-calendar/util/IntervalSwitcher.d.ts +0 -4
  37. package/dist/util/calendar/CalendarIntervalValidator.d.ts +0 -11
@@ -34,7 +34,7 @@ export interface Renderers {
34
34
  /** Render function for week day names over the days in the month. */
35
35
  renderWeekDay?: RenderWeekDay;
36
36
  }
37
- export interface CalendarProps<T> extends CalendarHeaderContentProps, CalendarOnClicks<T>, Renderers {
37
+ export interface CalendarProps<T> extends CalendarHeaderContentProps, CalendarOnClicks<T>, Renderers, OptionalMinMaxDatesAsString {
38
38
  /** The year to show. If used, must also provide month. Overrides prop date. */
39
39
  year?: number;
40
40
  /** The month to show. If used, must also provide year. Overrides prop date. */
@@ -87,6 +87,26 @@ export declare type DayStateHighlight = "selected" | "singleSelected" | "selecte
87
87
  export interface HighlightsState {
88
88
  highlights?: Array<DayStateHighlight>;
89
89
  }
90
+ export interface OptionalMinMaxDates {
91
+ /**
92
+ * Earliest date that can be interacted with. Earlier dates will be disabled.
93
+ */
94
+ minDate?: Date;
95
+ /**
96
+ * Latest date that can be interacted with. Later dates will be disabled.
97
+ */
98
+ maxDate?: Date;
99
+ }
100
+ export interface OptionalMinMaxDatesAsString {
101
+ /**
102
+ * Earliest date that can be interacted with. Earlier dates will be disabled.
103
+ */
104
+ minDate?: string;
105
+ /**
106
+ * Latest date that can be interacted with. Later dates will be disabled.
107
+ */
108
+ maxDate?: string;
109
+ }
90
110
  export declare type DayState = HighlightsState;
91
111
  export declare type OnClickDay<T> = (day: DayData, data: T | undefined, ev: React.MouseEvent<HTMLButtonElement>) => void;
92
112
  export declare type OnClickWeekDay = (weekDay: number, ev: React.MouseEvent<HTMLButtonElement>) => void;
@@ -0,0 +1,16 @@
1
+ export interface DateRange {
2
+ startDate?: Date;
3
+ endDate?: Date;
4
+ }
5
+ export interface DateStringRange {
6
+ /**
7
+ * Format: yyyy-MM-dd
8
+ * Example: 2021-02-21
9
+ */
10
+ startDate?: string;
11
+ /**
12
+ * Format: yyyy-MM-dd
13
+ * Example: 2021-02-21
14
+ */
15
+ endDate?: string;
16
+ }
@@ -6,5 +6,6 @@ export declare const buildDayStateForRange: (statePerMonth: CalendarUserData<imp
6
6
  export declare const setDayStateValue: (state: CalendarUserData<DayState> | undefined, date: Date, values: Partial<DayState>) => CalendarUserData<DayState>;
7
7
  export declare const setDayStateValueFunction: (state: CalendarUserData<DayState> | undefined, date: Date, setter: (dayState: DayState | undefined) => Partial<DayState>) => CalendarUserData<DayState>;
8
8
  export declare const addDayStateHighlights: (calendarState: CalendarState | undefined, date: Date, highlights: Array<DayStateHighlight>) => CalendarUserData<DayState>;
9
+ export declare const addDayStateHighlightsOnSingleDay: (dayState: DayState | undefined, highlights: Array<DayStateHighlight>) => DayState;
9
10
  export declare const addWeekStateHighlights: (calendarState: CalendarState | undefined, week: WeekData, highlights: Array<DayStateHighlight>) => CalendarUserData<DayState>;
10
11
  export declare const addWeekRangeHighlights: (calendarState: CalendarState | undefined, week: WeekData) => CalendarUserData<DayState>;
@@ -0,0 +1 @@
1
+ export declare const isDateInMinMaxRange: (date: Date, min: Date | undefined, max: Date | undefined) => boolean;
@@ -0,0 +1,3 @@
1
+ import { DateRange, DateStringRange } from "../../types/DateRange";
2
+ export declare const dateRangeToStrings: (dateRange: DateRange) => DateStringRange;
3
+ export declare const stringsToDateRange: ({ startDate, endDate, }: DateStringRange) => DateRange;
@@ -0,0 +1,4 @@
1
+ import { DateRange, DateStringRange } from "../../types/DateRange";
2
+ export declare const isDateRangeInvalid: ({ startDate, endDate, }: DateRange) => boolean;
3
+ export declare const toggleDatesIfEndIsEarlierThanStart: (dateRange: DateRange) => DateRange;
4
+ export declare const toggleDateStringsIfEndIsEarlierThanStart: (dateRange: DateStringRange) => DateStringRange;
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@stenajs-webui/calendar",
3
- "version": "15.0.0-alpha.3",
3
+ "version": "15.0.0-alpha.7",
4
4
  "description": "",
5
5
  "author": "mattias800",
6
6
  "license": "MIT",
@@ -27,12 +27,12 @@
27
27
  "deploy": "gh-pages -d example/build"
28
28
  },
29
29
  "dependencies": {
30
- "@stenajs-webui/core": "15.0.0-alpha.3",
31
- "@stenajs-webui/elements": "15.0.0-alpha.3",
32
- "@stenajs-webui/forms": "15.0.0-alpha.3",
33
- "@stenajs-webui/theme": "15.0.0-alpha.3",
34
- "@stenajs-webui/tooltip": "15.0.0-alpha.3",
35
- "date-fns": "2.16.1"
30
+ "@stenajs-webui/core": "15.0.0-alpha.7",
31
+ "@stenajs-webui/elements": "15.0.0-alpha.7",
32
+ "@stenajs-webui/forms": "15.0.0-alpha.7",
33
+ "@stenajs-webui/theme": "15.0.0-alpha.7",
34
+ "@stenajs-webui/tooltip": "15.0.0-alpha.7",
35
+ "date-fns": "2.26.0"
36
36
  },
37
37
  "peerDependencies": {
38
38
  "@emotion/react": ">=11.1.5",
@@ -71,5 +71,5 @@
71
71
  "files": [
72
72
  "dist"
73
73
  ],
74
- "gitHead": "2227ddfa28e11eb8b41680250cc2659a5b5afbdc"
74
+ "gitHead": "038d1be416c4b88d2b7ec727d92417cd09e07ab8"
75
75
  }
@@ -1,4 +0,0 @@
1
- export declare const toggleDatesIfEndIsEarlierThanStart: (startDate: Date | undefined, endDate: Date | undefined) => {
2
- startDate: Date | undefined;
3
- endDate: Date | undefined;
4
- };
@@ -1,11 +0,0 @@
1
- export interface DateInterval {
2
- startDate?: Date;
3
- endDate?: Date;
4
- }
5
- export interface DateStringInterval {
6
- startDate?: string;
7
- endDate?: string;
8
- }
9
- export declare const transformDateIntervalToDateStringInterval: (interval: DateInterval) => DateStringInterval;
10
- export declare const transformDateStringIntervalToDateInterval: (interval: DateStringInterval) => DateInterval;
11
- export declare const ensureStartIsFirst: (interval: DateInterval) => DateInterval;