@navikt/ds-react 1.3.21 → 1.3.22

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/_docs.json CHANGED
@@ -8673,6 +8673,25 @@
8673
8673
  "name": "boolean"
8674
8674
  }
8675
8675
  },
8676
+ "onDateChange": {
8677
+ "defaultValue": null,
8678
+ "description": "Callback for changed state",
8679
+ "name": "onDateChange",
8680
+ "parent": {
8681
+ "fileName": "src/date/hooks/useDatepicker.tsx",
8682
+ "name": "UseDatepickerOptions"
8683
+ },
8684
+ "declarations": [
8685
+ {
8686
+ "fileName": "src/date/hooks/useDatepicker.tsx",
8687
+ "name": "UseDatepickerOptions"
8688
+ }
8689
+ ],
8690
+ "required": false,
8691
+ "type": {
8692
+ "name": "((val?: Date) => void)"
8693
+ }
8694
+ },
8676
8695
  "locale": {
8677
8696
  "defaultValue": {
8678
8697
  "value": "\"nb\" (norsk bokmål)"
@@ -8797,6 +8816,25 @@
8797
8816
  "name": "boolean"
8798
8817
  }
8799
8818
  },
8819
+ "onMonthChange": {
8820
+ "defaultValue": null,
8821
+ "description": "Callback for month-change",
8822
+ "name": "onMonthChange",
8823
+ "parent": {
8824
+ "fileName": "src/date/hooks/useMonthPicker.tsx",
8825
+ "name": "UseMonthPickerOptions"
8826
+ },
8827
+ "declarations": [
8828
+ {
8829
+ "fileName": "src/date/hooks/useMonthPicker.tsx",
8830
+ "name": "UseMonthPickerOptions"
8831
+ }
8832
+ ],
8833
+ "required": false,
8834
+ "type": {
8835
+ "name": "((date?: Date) => void)"
8836
+ }
8837
+ },
8800
8838
  "locale": {
8801
8839
  "defaultValue": {
8802
8840
  "value": "\"nb\" (norsk bokmål)"
@@ -8919,6 +8957,25 @@
8919
8957
  "name": "DateRange"
8920
8958
  }
8921
8959
  },
8960
+ "onRangeChange": {
8961
+ "defaultValue": null,
8962
+ "description": "Callback for changed state",
8963
+ "name": "onRangeChange",
8964
+ "parent": {
8965
+ "fileName": "src/date/hooks/useRangeDatepicker.tsx",
8966
+ "name": "UseRangeDatepickerOptions"
8967
+ },
8968
+ "declarations": [
8969
+ {
8970
+ "fileName": "src/date/hooks/useRangeDatepicker.tsx",
8971
+ "name": "UseRangeDatepickerOptions"
8972
+ }
8973
+ ],
8974
+ "required": false,
8975
+ "type": {
8976
+ "name": "((val?: DateRange) => void)"
8977
+ }
8978
+ },
8922
8979
  "locale": {
8923
8980
  "defaultValue": {
8924
8981
  "value": "\"nb\" (norsk bokmål)"
@@ -62,6 +62,7 @@ exports.Button = (0, react_1.forwardRef)((_a, ref) => {
62
62
  return (react_1.default.createElement(Component, Object.assign({}, rest, { ref: mergedRef, className: (0, clsx_1.default)(className, "navds-button", `navds-button--${variant}`, `navds-button--${size}`, {
63
63
  "navds-button--loading": widthOverride,
64
64
  "navds-button--icon-only": !!icon && !children,
65
+ "navds-button--disabled": disabled !== null && disabled !== void 0 ? disabled : widthOverride,
65
66
  }), style: Object.assign(Object.assign({}, style), { width: widthOverride }), disabled: (disabled !== null && disabled !== void 0 ? disabled : widthOverride) ? true : undefined }), widthOverride ? (react_1.default.createElement(__1.Loader, { size: size })) : (react_1.default.createElement(react_1.default.Fragment, null,
66
67
  icon && iconPosition === "left" && (react_1.default.createElement("span", { className: "navds-button__icon" }, icon)),
67
68
  children && (react_1.default.createElement(__1.Label, { as: "span", size: size === "medium" ? "medium" : "small", "aria-live": "polite" }, children)),
@@ -10,10 +10,11 @@ const react_1 = require("react");
10
10
  const react_day_picker_1 = require("react-day-picker");
11
11
  const utils_1 = require("../utils");
12
12
  const useDatepicker = (opt = {}) => {
13
- const { locale: _locale = "nb", required, defaultSelected, today = new Date(), fromDate, toDate, disabled, disableWeekends, } = opt;
13
+ const { locale: _locale = "nb", required, defaultSelected: _defaultSelected, today = new Date(), fromDate, toDate, disabled, disableWeekends, onDateChange, } = opt;
14
14
  const locale = (0, utils_1.getLocaleFromString)(_locale);
15
15
  const inputRef = (0, react_1.useRef)(null);
16
16
  const daypickerRef = (0, react_1.useRef)(null);
17
+ const [defaultSelected, setDefaultSelected] = (0, react_1.useState)(_defaultSelected);
17
18
  // Initialize states
18
19
  const [month, setMonth] = (0, react_1.useState)(defaultSelected !== null && defaultSelected !== void 0 ? defaultSelected : today);
19
20
  const [selectedDay, setSelectedDay] = (0, react_1.useState)(defaultSelected);
@@ -22,6 +23,10 @@ const useDatepicker = (opt = {}) => {
22
23
  ? (0, utils_1.formatDateForInput)(defaultSelected, locale, "date")
23
24
  : "";
24
25
  const [inputValue, setInputValue] = (0, react_1.useState)(defaultInputValue);
26
+ const getSelectedDate = (date) => {
27
+ onDateChange === null || onDateChange === void 0 ? void 0 : onDateChange(date);
28
+ return date;
29
+ };
25
30
  const handleFocusIn = (0, react_1.useCallback)((e) => {
26
31
  var _a;
27
32
  ![
@@ -42,21 +47,18 @@ const useDatepicker = (opt = {}) => {
42
47
  };
43
48
  }, [handleFocusIn]);
44
49
  const reset = () => {
45
- setSelectedDay(defaultSelected);
50
+ setSelectedDay(getSelectedDate(defaultSelected));
46
51
  setMonth(defaultSelected !== null && defaultSelected !== void 0 ? defaultSelected : today);
47
52
  setInputValue(defaultInputValue !== null && defaultInputValue !== void 0 ? defaultInputValue : "");
53
+ setDefaultSelected(_defaultSelected);
48
54
  };
49
55
  const setSelected = (date) => {
50
- setSelectedDay(date);
56
+ setSelectedDay(getSelectedDate(date));
51
57
  setMonth(date !== null && date !== void 0 ? date : today);
52
58
  setInputValue(date ? (0, utils_1.formatDateForInput)(date, locale, "date") : "");
53
59
  };
54
60
  const handleFocus = (e) => {
55
61
  !open && setOpen(true);
56
- if (!e.target.value) {
57
- reset();
58
- return;
59
- }
60
62
  let day = (0, utils_1.parseDate)(e.target.value, today, locale, "date");
61
63
  if ((0, utils_1.isValidDate)(day)) {
62
64
  setMonth(day);
@@ -74,11 +76,11 @@ const useDatepicker = (opt = {}) => {
74
76
  inputRef.current && inputRef.current.focus();
75
77
  }
76
78
  if (!required && selected) {
77
- setSelectedDay(undefined);
79
+ setSelectedDay(getSelectedDate(undefined));
78
80
  setInputValue("");
79
81
  return;
80
82
  }
81
- setSelectedDay(day);
83
+ setSelectedDay(getSelectedDate(day));
82
84
  setMonth(day);
83
85
  setInputValue(day ? (0, utils_1.formatDateForInput)(day, locale, "date") : "");
84
86
  };
@@ -91,16 +93,16 @@ const useDatepicker = (opt = {}) => {
91
93
  if (!(0, utils_1.isValidDate)(day) ||
92
94
  (disabled &&
93
95
  ((disableWeekends && (0, isWeekend_1.default)(day)) || (0, react_day_picker_1.isMatch)(day, disabled)))) {
94
- setSelectedDay(undefined);
96
+ setSelectedDay(getSelectedDate(undefined));
95
97
  return;
96
98
  }
97
99
  const isBefore = fromDate && (0, differenceInCalendarDays_1.default)(fromDate, day) > 0;
98
100
  const isAfter = toDate && (0, differenceInCalendarDays_1.default)(day, toDate) > 0;
99
101
  if (isBefore || isAfter) {
100
- setSelectedDay(undefined);
102
+ setSelectedDay(getSelectedDate(undefined));
101
103
  return;
102
104
  }
103
- setSelectedDay(day);
105
+ setSelectedDay(getSelectedDate(day));
104
106
  setMonth(day);
105
107
  };
106
108
  const handleClose = (0, react_1.useCallback)(() => {
@@ -4,7 +4,8 @@ exports.useMonthpicker = void 0;
4
4
  const react_1 = require("react");
5
5
  const utils_1 = require("../utils");
6
6
  const useMonthpicker = (opt = {}) => {
7
- const { locale: _locale = "nb", defaultSelected, fromDate, toDate, disabled, required, } = opt;
7
+ const { locale: _locale = "nb", defaultSelected: _defaultSelected, fromDate, toDate, disabled, required, onMonthChange, } = opt;
8
+ const [defaultSelected, setDefaultSelected] = (0, react_1.useState)(_defaultSelected);
8
9
  const today = new Date();
9
10
  const locale = (0, utils_1.getLocaleFromString)(_locale);
10
11
  const inputRef = (0, react_1.useRef)(null);
@@ -17,6 +18,10 @@ const useMonthpicker = (opt = {}) => {
17
18
  ? (0, utils_1.formatDateForInput)(defaultSelected, locale, "month")
18
19
  : "";
19
20
  const [inputValue, setInputValue] = (0, react_1.useState)(defaultInputValue);
21
+ const getMonth = (date) => {
22
+ onMonthChange === null || onMonthChange === void 0 ? void 0 : onMonthChange(date);
23
+ return date;
24
+ };
20
25
  const handleFocusIn = (0, react_1.useCallback)((e) => {
21
26
  var _a;
22
27
  return ![
@@ -37,21 +42,18 @@ const useMonthpicker = (opt = {}) => {
37
42
  };
38
43
  }, [handleFocusIn]);
39
44
  const reset = () => {
40
- setSelectedMonth(defaultSelected);
45
+ setSelectedMonth(getMonth(defaultSelected));
41
46
  setYear(defaultSelected !== null && defaultSelected !== void 0 ? defaultSelected : today);
42
47
  setInputValue(defaultInputValue !== null && defaultInputValue !== void 0 ? defaultInputValue : "");
48
+ setDefaultSelected(_defaultSelected);
43
49
  };
44
50
  const setSelected = (date) => {
45
- setSelectedMonth(date);
51
+ setSelectedMonth(getMonth(date));
46
52
  setYear(date !== null && date !== void 0 ? date : today);
47
53
  setInputValue(date ? (0, utils_1.formatDateForInput)(date, locale, "month") : "");
48
54
  };
49
55
  const handleFocus = (e) => {
50
56
  !open && setOpen(true);
51
- if (!e.target.value) {
52
- reset();
53
- return;
54
- }
55
57
  let day = (0, utils_1.parseDate)(e.target.value, today, locale, "month");
56
58
  if ((0, utils_1.isValidDate)(day)) {
57
59
  setYear(day);
@@ -69,11 +71,11 @@ const useMonthpicker = (opt = {}) => {
69
71
  inputRef.current && inputRef.current.focus();
70
72
  }
71
73
  if (!required && !month) {
72
- setSelectedMonth(undefined);
74
+ setSelectedMonth(getMonth(undefined));
73
75
  setInputValue("");
74
76
  return;
75
77
  }
76
- setSelectedMonth(month);
78
+ setSelectedMonth(getMonth(month));
77
79
  setInputValue(month ? (0, utils_1.formatDateForInput)(month, locale, "month") : "");
78
80
  };
79
81
  // When changing the input field, save its value in state and check if the
@@ -83,7 +85,7 @@ const useMonthpicker = (opt = {}) => {
83
85
  setInputValue(e.target.value);
84
86
  const month = (0, utils_1.parseDate)(e.target.value, today, locale, "month");
85
87
  if (!(0, utils_1.isValidDate)(month) || (disabled && (0, utils_1.isMatch)(month, disabled))) {
86
- setSelectedMonth(undefined);
88
+ setSelectedMonth(getMonth(undefined));
87
89
  return;
88
90
  }
89
91
  const isBefore = fromDate &&
@@ -97,10 +99,10 @@ const useMonthpicker = (opt = {}) => {
97
99
  if (isAfter ||
98
100
  isBefore ||
99
101
  (fromDate && toDate && !(0, utils_1.isMatch)(month, [{ from: fromDate, to: toDate }]))) {
100
- setSelectedMonth(undefined);
102
+ setSelectedMonth(getMonth(undefined));
101
103
  return;
102
104
  }
103
- setSelectedMonth(month);
105
+ setSelectedMonth(getMonth(month));
104
106
  setYear(month);
105
107
  };
106
108
  const handleClose = (0, react_1.useCallback)(() => {
@@ -14,14 +14,15 @@ const RANGE = {
14
14
  TO: "TO",
15
15
  };
16
16
  const useRangeDatepicker = (opt = {}) => {
17
- const { locale: _locale = "nb", defaultSelected, today = new Date(), fromDate, toDate, disabled, disableWeekends, } = opt;
17
+ const { locale: _locale = "nb", defaultSelected: _defaultSelected, today = new Date(), fromDate, toDate, disabled, disableWeekends, onRangeChange, } = opt;
18
18
  const locale = (0, utils_1.getLocaleFromString)(_locale);
19
19
  const inputRefTo = (0, react_1.useRef)(null);
20
20
  const inputRefFrom = (0, react_1.useRef)(null);
21
21
  const datePickerRef = (0, react_1.useRef)(null);
22
+ const [defaultSelected, setDefaultSelected] = (0, react_1.useState)(_defaultSelected);
22
23
  // Initialize states
23
- const [month, setMonth] = (0, react_1.useState)(defaultSelected ? defaultSelected.from : today);
24
- const [selectedRange, setSelectedRange] = (0, react_1.useState)(defaultSelected);
24
+ const [month, setMonth] = (0, react_1.useState)(defaultSelected ? defaultSelected === null || defaultSelected === void 0 ? void 0 : defaultSelected.from : today);
25
+ const [selectedRange, setSelectedRange] = (0, react_1.useState)(defaultSelected !== null && defaultSelected !== void 0 ? defaultSelected : { from: undefined, to: undefined });
25
26
  const [fromInputValue, setFromInputValue] = (0, react_1.useState)((defaultSelected === null || defaultSelected === void 0 ? void 0 : defaultSelected.from)
26
27
  ? (0, utils_1.formatDateForInput)(defaultSelected.from, locale, "date")
27
28
  : "");
@@ -29,6 +30,10 @@ const useRangeDatepicker = (opt = {}) => {
29
30
  ? (0, utils_1.formatDateForInput)(defaultSelected.to, locale, "date")
30
31
  : "");
31
32
  const [open, setOpen] = (0, react_1.useState)(false);
33
+ const getSelectedRange = (range) => {
34
+ onRangeChange === null || onRangeChange === void 0 ? void 0 : onRangeChange(range);
35
+ return range;
36
+ };
32
37
  const handleFocusIn = (0, react_1.useCallback)((e) => {
33
38
  var _a, _b;
34
39
  return ![
@@ -51,17 +56,18 @@ const useRangeDatepicker = (opt = {}) => {
51
56
  };
52
57
  }, [handleFocusIn]);
53
58
  const reset = () => {
54
- setSelectedRange(defaultSelected);
55
- setMonth(defaultSelected ? defaultSelected.from : today);
59
+ setSelectedRange(getSelectedRange(defaultSelected !== null && defaultSelected !== void 0 ? defaultSelected : { from: undefined, to: undefined }));
60
+ setMonth(defaultSelected ? defaultSelected === null || defaultSelected === void 0 ? void 0 : defaultSelected.from : today);
56
61
  setFromInputValue((defaultSelected === null || defaultSelected === void 0 ? void 0 : defaultSelected.from)
57
62
  ? (0, utils_1.formatDateForInput)(defaultSelected.from, locale, "date")
58
63
  : "");
59
64
  setToInputValue((defaultSelected === null || defaultSelected === void 0 ? void 0 : defaultSelected.to)
60
65
  ? (0, utils_1.formatDateForInput)(defaultSelected.to, locale, "date")
61
66
  : "");
67
+ setDefaultSelected(_defaultSelected);
62
68
  };
63
69
  const setSelected = (range) => {
64
- setSelectedRange(range);
70
+ setSelectedRange(getSelectedRange(range));
65
71
  setFromInputValue((range === null || range === void 0 ? void 0 : range.from) ? (0, utils_1.formatDateForInput)(range.from, locale, "date") : "");
66
72
  setToInputValue((range === null || range === void 0 ? void 0 : range.to) ? (0, utils_1.formatDateForInput)(range === null || range === void 0 ? void 0 : range.to, locale, "date") : "");
67
73
  };
@@ -107,7 +113,7 @@ const useRangeDatepicker = (opt = {}) => {
107
113
  handleInputs(day, src);
108
114
  };
109
115
  const handleSelect = (range) => {
110
- if (range.from && range.to) {
116
+ if ((range === null || range === void 0 ? void 0 : range.from) && (range === null || range === void 0 ? void 0 : range.to)) {
111
117
  setOpen(false);
112
118
  }
113
119
  const prevToRange = !(selectedRange === null || selectedRange === void 0 ? void 0 : selectedRange.from) && (selectedRange === null || selectedRange === void 0 ? void 0 : selectedRange.to) ? selectedRange === null || selectedRange === void 0 ? void 0 : selectedRange.to : range === null || range === void 0 ? void 0 : range.to;
@@ -117,7 +123,7 @@ const useRangeDatepicker = (opt = {}) => {
117
123
  prevToRange
118
124
  ? setToInputValue((0, utils_1.formatDateForInput)(prevToRange, locale, "date"))
119
125
  : setToInputValue("");
120
- setSelectedRange({ from: range === null || range === void 0 ? void 0 : range.from, to: prevToRange });
126
+ setSelectedRange(getSelectedRange({ from: range === null || range === void 0 ? void 0 : range.from, to: prevToRange }));
121
127
  };
122
128
  /* live-update datepicker based on changes in inputfields */
123
129
  const handleChange = (e, src) => {
@@ -128,23 +134,23 @@ const useRangeDatepicker = (opt = {}) => {
128
134
  if (!(0, utils_1.isValidDate)(day) ||
129
135
  (disabled &&
130
136
  ((disableWeekends && (0, isWeekend_1.default)(day)) || (0, react_day_picker_1.isMatch)(day, disabled)))) {
131
- setSelectedRange((x) => src === RANGE.FROM
132
- ? Object.assign(Object.assign({}, x), { from: undefined }) : { from: x === null || x === void 0 ? void 0 : x.from, to: undefined });
137
+ setSelectedRange((x) => getSelectedRange(src === RANGE.FROM
138
+ ? Object.assign(Object.assign({}, x), { from: undefined }) : { from: x === null || x === void 0 ? void 0 : x.from, to: undefined }));
133
139
  return;
134
140
  }
135
141
  const isBefore = fromDate && (0, differenceInCalendarDays_1.default)(fromDate, day) > 0;
136
142
  const isAfter = toDate && (0, differenceInCalendarDays_1.default)(day, toDate) > 0;
137
143
  if (isBefore || isAfter) {
138
144
  src === RANGE.FROM
139
- ? setSelectedRange((x) => (Object.assign(Object.assign({}, x), { from: undefined })))
140
- : setSelectedRange((x) => ({ from: x === null || x === void 0 ? void 0 : x.from, to: undefined }));
145
+ ? setSelectedRange((x) => getSelectedRange(Object.assign(Object.assign({}, x), { from: undefined })))
146
+ : setSelectedRange((x) => getSelectedRange({ from: x === null || x === void 0 ? void 0 : x.from, to: undefined }));
141
147
  return;
142
148
  }
143
149
  /* If to-value < from-value, switch places in state */
144
150
  if (src === RANGE.TO &&
145
151
  (selectedRange === null || selectedRange === void 0 ? void 0 : selectedRange.from) &&
146
152
  (0, differenceInCalendarDays_1.default)(selectedRange === null || selectedRange === void 0 ? void 0 : selectedRange.from, day) >= 0) {
147
- setSelectedRange({ from: day, to: selectedRange === null || selectedRange === void 0 ? void 0 : selectedRange.from });
153
+ setSelectedRange(getSelectedRange({ from: day, to: selectedRange === null || selectedRange === void 0 ? void 0 : selectedRange.from }));
148
154
  setMonth(day);
149
155
  return;
150
156
  }
@@ -152,12 +158,14 @@ const useRangeDatepicker = (opt = {}) => {
152
158
  if (src === RANGE.FROM &&
153
159
  (selectedRange === null || selectedRange === void 0 ? void 0 : selectedRange.to) &&
154
160
  (0, differenceInCalendarDays_1.default)(day, selectedRange === null || selectedRange === void 0 ? void 0 : selectedRange.to) >= 0) {
155
- setSelectedRange({ to: day, from: selectedRange === null || selectedRange === void 0 ? void 0 : selectedRange.to });
161
+ setSelectedRange(getSelectedRange({ to: day, from: selectedRange === null || selectedRange === void 0 ? void 0 : selectedRange.to }));
156
162
  setMonth(day);
157
163
  return;
158
164
  }
159
- src === RANGE.FROM && setSelectedRange((x) => (Object.assign(Object.assign({}, x), { from: day })));
160
- src === RANGE.TO && setSelectedRange((x) => ({ from: x === null || x === void 0 ? void 0 : x.from, to: day }));
165
+ src === RANGE.FROM &&
166
+ setSelectedRange((x) => getSelectedRange(Object.assign(Object.assign({}, x), { from: day })));
167
+ src === RANGE.TO &&
168
+ setSelectedRange((x) => getSelectedRange({ from: x === null || x === void 0 ? void 0 : x.from, to: day }));
161
169
  setMonth(day);
162
170
  };
163
171
  const handleClose = (0, react_1.useCallback)(() => {
@@ -33,6 +33,7 @@ export const Button = forwardRef((_a, ref) => {
33
33
  return (React.createElement(Component, Object.assign({}, rest, { ref: mergedRef, className: cl(className, "navds-button", `navds-button--${variant}`, `navds-button--${size}`, {
34
34
  "navds-button--loading": widthOverride,
35
35
  "navds-button--icon-only": !!icon && !children,
36
+ "navds-button--disabled": disabled !== null && disabled !== void 0 ? disabled : widthOverride,
36
37
  }), style: Object.assign(Object.assign({}, style), { width: widthOverride }), disabled: (disabled !== null && disabled !== void 0 ? disabled : widthOverride) ? true : undefined }), widthOverride ? (React.createElement(Loader, { size: size })) : (React.createElement(React.Fragment, null,
37
38
  icon && iconPosition === "left" && (React.createElement("span", { className: "navds-button__icon" }, icon)),
38
39
  children && (React.createElement(Label, { as: "span", size: size === "medium" ? "medium" : "small", "aria-live": "polite" }, children)),
@@ -1 +1 @@
1
- {"version":3,"file":"Button.js","sourceRoot":"","sources":["../../src/button/Button.tsx"],"names":[],"mappings":";;;;;;;;;;;AAAA,OAAO,KAAK,EAAE,EAAE,MAAM,EAAE,QAAQ,EAAE,UAAU,EAAE,OAAO,EAAE,MAAM,OAAO,CAAC;AACrE,OAAO,EAAE,MAAM,MAAM,CAAC;AACtB,OAAO,EAAwB,MAAM,EAAE,SAAS,EAAE,KAAK,EAAE,MAAM,KAAK,CAAC;AACrE,OAAO,EAAE,qBAAqB,EAAE,MAAM,SAAS,CAAC;AAuChD,MAAM,CAAC,MAAM,MAAM,GACjB,UAAU,CACR,CACE,EAYC,EACD,GAAG,EACH,EAAE;QAdF,EACE,EAAE,EAAE,SAAS,GAAG,QAAQ,EACxB,OAAO,GAAG,SAAS,EACnB,SAAS,EACT,QAAQ,EACR,IAAI,GAAG,QAAQ,EACf,OAAO,GAAG,KAAK,EACf,QAAQ,EACR,KAAK,EACL,IAAI,EACJ,YAAY,GAAG,MAAM,OAEtB,EADI,IAAI,cAXT,0GAYC,CADQ;IAIT,MAAM,SAAS,GAAG,MAAM,CAA2B,IAAI,CAAC,CAAC;IACzD,MAAM,CAAC,aAAa,EAAE,gBAAgB,CAAC,GAAG,QAAQ,EAAU,CAAC;IAE7D,MAAM,SAAS,GAAG,OAAO,CAAC,GAAG,EAAE,CAAC,SAAS,CAAC,CAAC,SAAS,EAAE,GAAG,CAAC,CAAC,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC;IAEpE,qBAAqB,CAAC,GAAG,EAAE;QACzB,IAAI,OAAO,EAAE;YACX,MAAM,SAAS,GAAG,MAAM,CAAC,qBAAqB,CAAC,GAAG,EAAE;;gBAClD,gBAAgB,CACd,MAAA,MAAA,SAAS,aAAT,SAAS,uBAAT,SAAS,CAAE,OAAO,0CAAE,qBAAqB,EAAE,0CAAE,KAAK,CACnD,CAAC;YACJ,CAAC,CAAC,CAAC;YACH,OAAO,GAAG,EAAE;gBACV,gBAAgB,CAAC,SAAS,CAAC,CAAC;gBAC5B,oBAAoB,CAAC,SAAS,CAAC,CAAC;YAClC,CAAC,CAAC;SACH;IACH,CAAC,EAAE,CAAC,OAAO,EAAE,QAAQ,CAAC,CAAC,CAAC;IAExB,OAAO,CACL,oBAAC,SAAS,oBACJ,IAAI,IACR,GAAG,EAAE,SAAS,EACd,SAAS,EAAE,EAAE,CACX,SAAS,EACT,cAAc,EACd,iBAAiB,OAAO,EAAE,EAC1B,iBAAiB,IAAI,EAAE,EACvB;YACE,uBAAuB,EAAE,aAAa;YACtC,yBAAyB,EAAE,CAAC,CAAC,IAAI,IAAI,CAAC,QAAQ;SAC/C,CACF,EACD,KAAK,kCACA,KAAK,KACR,KAAK,EAAE,aAAa,KAEtB,QAAQ,EAAE,CAAA,QAAQ,aAAR,QAAQ,cAAR,QAAQ,GAAI,aAAa,EAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,SAAS,KAErD,aAAa,CAAC,CAAC,CAAC,CACf,oBAAC,MAAM,IAAC,IAAI,EAAE,IAAI,GAAI,CACvB,CAAC,CAAC,CAAC,CACF;QACG,IAAI,IAAI,YAAY,KAAK,MAAM,IAAI,CAClC,8BAAM,SAAS,EAAC,oBAAoB,IAAE,IAAI,CAAQ,CACnD;QACA,QAAQ,IAAI,CACX,oBAAC,KAAK,IACJ,EAAE,EAAC,MAAM,EACT,IAAI,EAAE,IAAI,KAAK,QAAQ,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,OAAO,eAClC,QAAQ,IAEjB,QAAQ,CACH,CACT;QACA,IAAI,IAAI,YAAY,KAAK,OAAO,IAAI,CACnC,8BAAM,SAAS,EAAC,oBAAoB,IAAE,IAAI,CAAQ,CACnD,CACA,CACJ,CACS,CACb,CAAC;AACJ,CAAC,CACF,CAAC;AAEJ,eAAe,MAAM,CAAC"}
1
+ {"version":3,"file":"Button.js","sourceRoot":"","sources":["../../src/button/Button.tsx"],"names":[],"mappings":"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"}
@@ -9,6 +9,10 @@ export interface UseDatepickerOptions extends Pick<DatePickerProps, "locale" | "
9
9
  * Make selection of Date required
10
10
  */
11
11
  required?: boolean;
12
+ /**
13
+ * Callback for changed state
14
+ */
15
+ onDateChange?: (val?: Date) => void;
12
16
  }
13
17
  interface UseDatepickerValue {
14
18
  /**
@@ -4,10 +4,11 @@ import { useCallback, useEffect, useRef, useState } from "react";
4
4
  import { isMatch } from "react-day-picker";
5
5
  import { formatDateForInput, getLocaleFromString, isValidDate, parseDate, } from "../utils";
6
6
  export const useDatepicker = (opt = {}) => {
7
- const { locale: _locale = "nb", required, defaultSelected, today = new Date(), fromDate, toDate, disabled, disableWeekends, } = opt;
7
+ const { locale: _locale = "nb", required, defaultSelected: _defaultSelected, today = new Date(), fromDate, toDate, disabled, disableWeekends, onDateChange, } = opt;
8
8
  const locale = getLocaleFromString(_locale);
9
9
  const inputRef = useRef(null);
10
10
  const daypickerRef = useRef(null);
11
+ const [defaultSelected, setDefaultSelected] = useState(_defaultSelected);
11
12
  // Initialize states
12
13
  const [month, setMonth] = useState(defaultSelected !== null && defaultSelected !== void 0 ? defaultSelected : today);
13
14
  const [selectedDay, setSelectedDay] = useState(defaultSelected);
@@ -16,6 +17,10 @@ export const useDatepicker = (opt = {}) => {
16
17
  ? formatDateForInput(defaultSelected, locale, "date")
17
18
  : "";
18
19
  const [inputValue, setInputValue] = useState(defaultInputValue);
20
+ const getSelectedDate = (date) => {
21
+ onDateChange === null || onDateChange === void 0 ? void 0 : onDateChange(date);
22
+ return date;
23
+ };
19
24
  const handleFocusIn = useCallback((e) => {
20
25
  var _a;
21
26
  ![
@@ -36,21 +41,18 @@ export const useDatepicker = (opt = {}) => {
36
41
  };
37
42
  }, [handleFocusIn]);
38
43
  const reset = () => {
39
- setSelectedDay(defaultSelected);
44
+ setSelectedDay(getSelectedDate(defaultSelected));
40
45
  setMonth(defaultSelected !== null && defaultSelected !== void 0 ? defaultSelected : today);
41
46
  setInputValue(defaultInputValue !== null && defaultInputValue !== void 0 ? defaultInputValue : "");
47
+ setDefaultSelected(_defaultSelected);
42
48
  };
43
49
  const setSelected = (date) => {
44
- setSelectedDay(date);
50
+ setSelectedDay(getSelectedDate(date));
45
51
  setMonth(date !== null && date !== void 0 ? date : today);
46
52
  setInputValue(date ? formatDateForInput(date, locale, "date") : "");
47
53
  };
48
54
  const handleFocus = (e) => {
49
55
  !open && setOpen(true);
50
- if (!e.target.value) {
51
- reset();
52
- return;
53
- }
54
56
  let day = parseDate(e.target.value, today, locale, "date");
55
57
  if (isValidDate(day)) {
56
58
  setMonth(day);
@@ -68,11 +70,11 @@ export const useDatepicker = (opt = {}) => {
68
70
  inputRef.current && inputRef.current.focus();
69
71
  }
70
72
  if (!required && selected) {
71
- setSelectedDay(undefined);
73
+ setSelectedDay(getSelectedDate(undefined));
72
74
  setInputValue("");
73
75
  return;
74
76
  }
75
- setSelectedDay(day);
77
+ setSelectedDay(getSelectedDate(day));
76
78
  setMonth(day);
77
79
  setInputValue(day ? formatDateForInput(day, locale, "date") : "");
78
80
  };
@@ -85,16 +87,16 @@ export const useDatepicker = (opt = {}) => {
85
87
  if (!isValidDate(day) ||
86
88
  (disabled &&
87
89
  ((disableWeekends && isWeekend(day)) || isMatch(day, disabled)))) {
88
- setSelectedDay(undefined);
90
+ setSelectedDay(getSelectedDate(undefined));
89
91
  return;
90
92
  }
91
93
  const isBefore = fromDate && differenceInCalendarDays(fromDate, day) > 0;
92
94
  const isAfter = toDate && differenceInCalendarDays(day, toDate) > 0;
93
95
  if (isBefore || isAfter) {
94
- setSelectedDay(undefined);
96
+ setSelectedDay(getSelectedDate(undefined));
95
97
  return;
96
98
  }
97
- setSelectedDay(day);
99
+ setSelectedDay(getSelectedDate(day));
98
100
  setMonth(day);
99
101
  };
100
102
  const handleClose = useCallback(() => {
@@ -1 +1 @@
1
- {"version":3,"file":"useDatepicker.js","sourceRoot":"","sources":["../../../src/date/hooks/useDatepicker.tsx"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"useDatepicker.js","sourceRoot":"","sources":["../../../src/date/hooks/useDatepicker.tsx"],"names":[],"mappings":"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"}
@@ -5,6 +5,10 @@ export interface UseMonthPickerOptions extends Pick<MonthPickerProps, "locale" |
5
5
  * Make Date-selection required
6
6
  */
7
7
  required?: boolean;
8
+ /**
9
+ * Callback for month-change
10
+ */
11
+ onMonthChange?: (date?: Date) => void;
8
12
  }
9
13
  interface UseMonthPickerValue {
10
14
  /**
@@ -1,7 +1,8 @@
1
1
  import { useCallback, useEffect, useRef, useState } from "react";
2
2
  import { formatDateForInput, getLocaleFromString, isMatch, isValidDate, parseDate, } from "../utils";
3
3
  export const useMonthpicker = (opt = {}) => {
4
- const { locale: _locale = "nb", defaultSelected, fromDate, toDate, disabled, required, } = opt;
4
+ const { locale: _locale = "nb", defaultSelected: _defaultSelected, fromDate, toDate, disabled, required, onMonthChange, } = opt;
5
+ const [defaultSelected, setDefaultSelected] = useState(_defaultSelected);
5
6
  const today = new Date();
6
7
  const locale = getLocaleFromString(_locale);
7
8
  const inputRef = useRef(null);
@@ -14,6 +15,10 @@ export const useMonthpicker = (opt = {}) => {
14
15
  ? formatDateForInput(defaultSelected, locale, "month")
15
16
  : "";
16
17
  const [inputValue, setInputValue] = useState(defaultInputValue);
18
+ const getMonth = (date) => {
19
+ onMonthChange === null || onMonthChange === void 0 ? void 0 : onMonthChange(date);
20
+ return date;
21
+ };
17
22
  const handleFocusIn = useCallback((e) => {
18
23
  var _a;
19
24
  return ![
@@ -34,21 +39,18 @@ export const useMonthpicker = (opt = {}) => {
34
39
  };
35
40
  }, [handleFocusIn]);
36
41
  const reset = () => {
37
- setSelectedMonth(defaultSelected);
42
+ setSelectedMonth(getMonth(defaultSelected));
38
43
  setYear(defaultSelected !== null && defaultSelected !== void 0 ? defaultSelected : today);
39
44
  setInputValue(defaultInputValue !== null && defaultInputValue !== void 0 ? defaultInputValue : "");
45
+ setDefaultSelected(_defaultSelected);
40
46
  };
41
47
  const setSelected = (date) => {
42
- setSelectedMonth(date);
48
+ setSelectedMonth(getMonth(date));
43
49
  setYear(date !== null && date !== void 0 ? date : today);
44
50
  setInputValue(date ? formatDateForInput(date, locale, "month") : "");
45
51
  };
46
52
  const handleFocus = (e) => {
47
53
  !open && setOpen(true);
48
- if (!e.target.value) {
49
- reset();
50
- return;
51
- }
52
54
  let day = parseDate(e.target.value, today, locale, "month");
53
55
  if (isValidDate(day)) {
54
56
  setYear(day);
@@ -66,11 +68,11 @@ export const useMonthpicker = (opt = {}) => {
66
68
  inputRef.current && inputRef.current.focus();
67
69
  }
68
70
  if (!required && !month) {
69
- setSelectedMonth(undefined);
71
+ setSelectedMonth(getMonth(undefined));
70
72
  setInputValue("");
71
73
  return;
72
74
  }
73
- setSelectedMonth(month);
75
+ setSelectedMonth(getMonth(month));
74
76
  setInputValue(month ? formatDateForInput(month, locale, "month") : "");
75
77
  };
76
78
  // When changing the input field, save its value in state and check if the
@@ -80,7 +82,7 @@ export const useMonthpicker = (opt = {}) => {
80
82
  setInputValue(e.target.value);
81
83
  const month = parseDate(e.target.value, today, locale, "month");
82
84
  if (!isValidDate(month) || (disabled && isMatch(month, disabled))) {
83
- setSelectedMonth(undefined);
85
+ setSelectedMonth(getMonth(undefined));
84
86
  return;
85
87
  }
86
88
  const isBefore = fromDate &&
@@ -94,10 +96,10 @@ export const useMonthpicker = (opt = {}) => {
94
96
  if (isAfter ||
95
97
  isBefore ||
96
98
  (fromDate && toDate && !isMatch(month, [{ from: fromDate, to: toDate }]))) {
97
- setSelectedMonth(undefined);
99
+ setSelectedMonth(getMonth(undefined));
98
100
  return;
99
101
  }
100
- setSelectedMonth(month);
102
+ setSelectedMonth(getMonth(month));
101
103
  setYear(month);
102
104
  };
103
105
  const handleClose = useCallback(() => {
@@ -1 +1 @@
1
- {"version":3,"file":"useMonthPicker.js","sourceRoot":"","sources":["../../../src/date/hooks/useMonthPicker.tsx"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"useMonthPicker.js","sourceRoot":"","sources":["../../../src/date/hooks/useMonthPicker.tsx"],"names":[],"mappings":"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"}