@navikt/ds-react 5.7.6 → 5.9.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.
Files changed (164) hide show
  1. package/_docs.json +1824 -1758
  2. package/cjs/accordion/AccordionHeader.js +2 -2
  3. package/cjs/date/context/useDateInputContext.js +1 -5
  4. package/cjs/date/datepicker/DatePicker.js +26 -25
  5. package/cjs/date/hooks/useDatepicker.js +9 -17
  6. package/cjs/date/hooks/useMonthPicker.js +9 -17
  7. package/cjs/date/hooks/useRangeDatepicker.js +9 -20
  8. package/cjs/date/monthpicker/MonthPicker.js +11 -6
  9. package/cjs/date/{DateInput.js → parts/DateInput.js} +14 -10
  10. package/cjs/date/parts/DateWrapper.js +55 -0
  11. package/cjs/date/utils/labels.js +77 -1
  12. package/cjs/form/combobox/Combobox.js +2 -2
  13. package/cjs/form/combobox/ComboboxProvider.js +1 -2
  14. package/cjs/form/combobox/FilteredOptions/FilteredOptions.js +15 -14
  15. package/cjs/form/combobox/FilteredOptions/filtered-options-util.js +24 -0
  16. package/cjs/form/combobox/FilteredOptions/filteredOptionsContext.js +24 -108
  17. package/cjs/form/combobox/FilteredOptions/useVirtualFocus.js +55 -0
  18. package/cjs/form/combobox/Input/Input.js +33 -16
  19. package/cjs/form/combobox/customOptionsContext.js +2 -3
  20. package/cjs/layout/sidemal-test/Sidebar.js +1 -1
  21. package/cjs/loader/Loader.js +1 -1
  22. package/cjs/modal/Modal.js +39 -15
  23. package/cjs/popover/Popover.js +5 -7
  24. package/cjs/tooltip/Tooltip.js +14 -3
  25. package/cjs/util/useMedia.js +30 -0
  26. package/esm/accordion/AccordionHeader.js +2 -2
  27. package/esm/accordion/AccordionHeader.js.map +1 -1
  28. package/esm/date/context/useDateInputContext.d.ts +6 -2
  29. package/esm/date/context/useDateInputContext.js +1 -5
  30. package/esm/date/context/useDateInputContext.js.map +1 -1
  31. package/esm/date/datepicker/DatePicker.d.ts +1 -1
  32. package/esm/date/datepicker/DatePicker.js +28 -27
  33. package/esm/date/datepicker/DatePicker.js.map +1 -1
  34. package/esm/date/datepicker/types.d.ts +0 -5
  35. package/esm/date/hooks/useDatepicker.d.ts +8 -5
  36. package/esm/date/hooks/useDatepicker.js +10 -18
  37. package/esm/date/hooks/useDatepicker.js.map +1 -1
  38. package/esm/date/hooks/useMonthPicker.d.ts +7 -4
  39. package/esm/date/hooks/useMonthPicker.js +10 -18
  40. package/esm/date/hooks/useMonthPicker.js.map +1 -1
  41. package/esm/date/hooks/useRangeDatepicker.d.ts +9 -3
  42. package/esm/date/hooks/useRangeDatepicker.js +10 -21
  43. package/esm/date/hooks/useRangeDatepicker.js.map +1 -1
  44. package/esm/date/index.d.ts +1 -1
  45. package/esm/date/index.js.map +1 -1
  46. package/esm/date/monthpicker/MonthPicker.d.ts +1 -1
  47. package/esm/date/monthpicker/MonthPicker.js +13 -8
  48. package/esm/date/monthpicker/MonthPicker.js.map +1 -1
  49. package/esm/date/monthpicker/types.d.ts +0 -5
  50. package/esm/date/{DateInput.d.ts → parts/DateInput.d.ts} +5 -1
  51. package/esm/date/{DateInput.js → parts/DateInput.js} +15 -11
  52. package/esm/date/parts/DateInput.js.map +1 -0
  53. package/esm/date/parts/DateWrapper.d.ts +15 -0
  54. package/esm/date/parts/DateWrapper.js +26 -0
  55. package/esm/date/parts/DateWrapper.js.map +1 -0
  56. package/esm/date/utils/labels.d.ts +2 -0
  57. package/esm/date/utils/labels.js +74 -0
  58. package/esm/date/utils/labels.js.map +1 -1
  59. package/esm/form/combobox/Combobox.js +2 -2
  60. package/esm/form/combobox/Combobox.js.map +1 -1
  61. package/esm/form/combobox/ComboboxProvider.js +1 -2
  62. package/esm/form/combobox/ComboboxProvider.js.map +1 -1
  63. package/esm/form/combobox/FilteredOptions/FilteredOptions.js +15 -14
  64. package/esm/form/combobox/FilteredOptions/FilteredOptions.js.map +1 -1
  65. package/esm/form/combobox/FilteredOptions/filtered-options-util.d.ts +12 -0
  66. package/esm/form/combobox/FilteredOptions/filtered-options-util.js +23 -0
  67. package/esm/form/combobox/FilteredOptions/filtered-options-util.js.map +1 -0
  68. package/esm/form/combobox/FilteredOptions/filteredOptionsContext.d.ts +10 -13
  69. package/esm/form/combobox/FilteredOptions/filteredOptionsContext.js +25 -109
  70. package/esm/form/combobox/FilteredOptions/filteredOptionsContext.js.map +1 -1
  71. package/esm/form/combobox/FilteredOptions/useVirtualFocus.d.ts +15 -0
  72. package/esm/form/combobox/FilteredOptions/useVirtualFocus.js +54 -0
  73. package/esm/form/combobox/FilteredOptions/useVirtualFocus.js.map +1 -0
  74. package/esm/form/combobox/Input/Input.js +33 -16
  75. package/esm/form/combobox/Input/Input.js.map +1 -1
  76. package/esm/form/combobox/customOptionsContext.d.ts +4 -1
  77. package/esm/form/combobox/customOptionsContext.js +2 -3
  78. package/esm/form/combobox/customOptionsContext.js.map +1 -1
  79. package/esm/layout/bleed/Bleed.d.ts +1 -1
  80. package/esm/layout/bleed/Bleed.js +1 -1
  81. package/esm/layout/bleed/Bleed.js.map +1 -1
  82. package/esm/layout/box/Box.d.ts +1 -2
  83. package/esm/layout/box/Box.js +1 -1
  84. package/esm/layout/box/Box.js.map +1 -1
  85. package/esm/layout/grid/HGrid.d.ts +1 -1
  86. package/esm/layout/grid/HGrid.js +1 -1
  87. package/esm/layout/grid/HGrid.js.map +1 -1
  88. package/esm/layout/responsive/Responsive.d.ts +1 -1
  89. package/esm/layout/sidemal-test/Sidebar.js +1 -1
  90. package/esm/layout/sidemal-test/Sidebar.js.map +1 -1
  91. package/esm/layout/stack/Stack.d.ts +1 -1
  92. package/esm/layout/stack/Stack.js +1 -1
  93. package/esm/layout/stack/Stack.js.map +1 -1
  94. package/esm/layout/utilities/css.d.ts +1 -8
  95. package/esm/layout/utilities/css.js.map +1 -1
  96. package/esm/layout/utilities/types.d.ts +9 -0
  97. package/esm/loader/Loader.d.ts +1 -1
  98. package/esm/loader/Loader.js +1 -1
  99. package/esm/modal/Modal.js +39 -15
  100. package/esm/modal/Modal.js.map +1 -1
  101. package/esm/modal/ModalContext.d.ts +1 -0
  102. package/esm/modal/ModalContext.js.map +1 -1
  103. package/esm/modal/types.d.ts +7 -0
  104. package/esm/popover/Popover.d.ts +0 -5
  105. package/esm/popover/Popover.js +5 -7
  106. package/esm/popover/Popover.js.map +1 -1
  107. package/esm/tooltip/Tooltip.js +16 -5
  108. package/esm/tooltip/Tooltip.js.map +1 -1
  109. package/esm/util/useMedia.d.ts +8 -0
  110. package/esm/util/useMedia.js +27 -0
  111. package/esm/util/useMedia.js.map +1 -0
  112. package/package.json +3 -3
  113. package/src/accordion/AccordionHeader.tsx +3 -3
  114. package/src/date/context/useDateInputContext.tsx +5 -5
  115. package/src/date/datepicker/DatePicker.tsx +58 -65
  116. package/src/date/datepicker/datepicker.stories.tsx +37 -46
  117. package/src/date/datepicker/types.ts +0 -5
  118. package/src/date/hooks/useDatepicker.tsx +20 -25
  119. package/src/date/hooks/useMonthPicker.tsx +18 -24
  120. package/src/date/hooks/useRangeDatepicker.tsx +27 -30
  121. package/src/date/index.ts +1 -1
  122. package/src/date/monthpicker/MonthPicker.tsx +39 -43
  123. package/src/date/monthpicker/types.ts +0 -5
  124. package/src/date/{DateInput.tsx → parts/DateInput.tsx} +23 -12
  125. package/src/date/parts/DateWrapper.tsx +80 -0
  126. package/src/date/utils/labels.ts +83 -0
  127. package/src/form/combobox/Combobox.tsx +2 -2
  128. package/src/form/combobox/ComboboxProvider.tsx +1 -2
  129. package/src/form/combobox/FilteredOptions/FilteredOptions.tsx +28 -16
  130. package/src/form/combobox/FilteredOptions/filtered-options-util.ts +38 -0
  131. package/src/form/combobox/FilteredOptions/filteredOptionsContext.tsx +71 -142
  132. package/src/form/combobox/FilteredOptions/useVirtualFocus.ts +87 -0
  133. package/src/form/combobox/Input/Input.tsx +40 -21
  134. package/src/form/combobox/combobox.stories.tsx +44 -0
  135. package/src/form/combobox/customOptionsContext.tsx +10 -5
  136. package/src/guide-panel/guidepanel.stories.tsx +2 -2
  137. package/src/layout/bleed/Bleed.tsx +2 -5
  138. package/src/layout/box/Box.tsx +1 -3
  139. package/src/layout/grid/HGrid.tsx +2 -6
  140. package/src/layout/responsive/Responsive.tsx +1 -1
  141. package/src/layout/sidemal-test/Sidebar.tsx +1 -1
  142. package/src/layout/stack/Stack.tsx +2 -6
  143. package/src/layout/utilities/css.ts +1 -36
  144. package/src/layout/utilities/types.ts +16 -0
  145. package/src/loader/Loader.tsx +1 -1
  146. package/src/modal/Modal.tsx +54 -21
  147. package/src/modal/ModalContext.ts +1 -0
  148. package/src/modal/modal.stories.tsx +30 -2
  149. package/src/modal/types.ts +7 -0
  150. package/src/popover/Popover.tsx +4 -12
  151. package/src/tooltip/Tooltip.tsx +18 -6
  152. package/src/util/__tests__/useMedia.test.tsx +19 -0
  153. package/src/util/useMedia.ts +38 -0
  154. package/cjs/date/hooks/useEscape.js +0 -23
  155. package/cjs/date/hooks/useOutsideClickHandler.js +0 -26
  156. package/esm/date/DateInput.js.map +0 -1
  157. package/esm/date/hooks/useEscape.d.ts +0 -2
  158. package/esm/date/hooks/useEscape.js +0 -20
  159. package/esm/date/hooks/useEscape.js.map +0 -1
  160. package/esm/date/hooks/useOutsideClickHandler.d.ts +0 -1
  161. package/esm/date/hooks/useOutsideClickHandler.js +0 -23
  162. package/esm/date/hooks/useOutsideClickHandler.js.map +0 -1
  163. package/src/date/hooks/useEscape.tsx +0 -30
  164. package/src/date/hooks/useOutsideClickHandler.tsx +0 -34
@@ -41,9 +41,10 @@ exports.Tooltip = void 0;
41
41
  const react_1 = require("@floating-ui/react");
42
42
  const clsx_1 = __importDefault(require("clsx"));
43
43
  const react_2 = __importStar(require("react"));
44
+ const ModalContext_1 = require("../modal/ModalContext");
45
+ const provider_1 = require("../provider");
44
46
  const typography_1 = require("../typography");
45
47
  const util_1 = require("../util");
46
- const provider_1 = require("../provider");
47
48
  /**
48
49
  * A component that displays a tooltip when the user hovers over its child element.
49
50
  *
@@ -62,7 +63,11 @@ exports.Tooltip = (0, react_2.forwardRef)((_a, ref) => {
62
63
  var { children, className, arrow: _arrow = true, placement: _placement = "top", open: userOpen, defaultOpen = false, offset: _offset, content, delay = 150, id, keys, maxChar = 80 } = _a, rest = __rest(_a, ["children", "className", "arrow", "placement", "open", "defaultOpen", "offset", "content", "delay", "id", "keys", "maxChar"]);
63
64
  const [open, setOpen] = (0, react_2.useState)(defaultOpen);
64
65
  const arrowRef = (0, react_2.useRef)(null);
65
- const rootElement = (_b = (0, provider_1.useProvider)()) === null || _b === void 0 ? void 0 : _b.rootElement;
66
+ const modalContext = (0, react_2.useContext)(ModalContext_1.ModalContext);
67
+ const providerRootElement = (_b = (0, provider_1.useProvider)()) === null || _b === void 0 ? void 0 : _b.rootElement;
68
+ const rootElement = modalContext
69
+ ? modalContext.ref.current
70
+ : providerRootElement;
66
71
  const { x, y, strategy, context, placement, middlewareData: { arrow: { x: arrowX, y: arrowY } = {}, hide: { referenceHidden } = {}, }, refs, } = (0, react_1.useFloating)({
67
72
  placement: _placement,
68
73
  open: userOpen !== null && userOpen !== void 0 ? userOpen : open,
@@ -73,7 +78,13 @@ exports.Tooltip = (0, react_2.forwardRef)((_a, ref) => {
73
78
  (0, react_1.flip)({ padding: 5, fallbackPlacements: ["bottom", "top"] }),
74
79
  (0, react_1.arrow)({ element: arrowRef, padding: 5 }),
75
80
  ],
76
- whileElementsMounted: react_1.autoUpdate,
81
+ whileElementsMounted: modalContext
82
+ ? (reference, floating, update) =>
83
+ // Reduces jumping in Chrome when used in a Modal and it's the first focusable element.
84
+ // Can be removed when autofocus starts working on <dialog> in Chrome. See also Modal.tsx
85
+ (0, react_1.autoUpdate)(reference, floating, update, { animationFrame: true })
86
+ : react_1.autoUpdate,
87
+ strategy: modalContext ? "fixed" : undefined,
77
88
  });
78
89
  const { getReferenceProps, getFloatingProps } = (0, react_1.useInteractions)([
79
90
  (0, react_1.useHover)(context, { handleClose: (0, react_1.safePolygon)(), restMs: delay }),
@@ -0,0 +1,30 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.useMedia = exports.noMatchMedia = void 0;
4
+ const react_1 = require("react");
5
+ exports.noMatchMedia = typeof window !== "undefined" && window.matchMedia === undefined;
6
+ /**
7
+ * @example useMedia("screen and (min-width: 1024px)")
8
+ * @param media string
9
+ * @param fallback boolean
10
+ * @returns boolean | undefined
11
+ */
12
+ const useMedia = (media, fallback) => {
13
+ const [matches, setMatches] = (0, react_1.useState)(fallback);
14
+ (0, react_1.useEffect)(() => {
15
+ if (exports.noMatchMedia) {
16
+ return;
17
+ }
18
+ const mediaQueryList = window.matchMedia(media);
19
+ setMatches(mediaQueryList.matches);
20
+ const listener = (evt) => {
21
+ setMatches(evt.matches);
22
+ };
23
+ mediaQueryList.addEventListener("change", listener);
24
+ return () => {
25
+ mediaQueryList.removeEventListener("change", listener);
26
+ };
27
+ }, [media]);
28
+ return matches;
29
+ };
30
+ exports.useMedia = useMedia;
@@ -9,12 +9,12 @@ var __rest = (this && this.__rest) || function (s, e) {
9
9
  }
10
10
  return t;
11
11
  };
12
+ import { ChevronDownIcon } from "@navikt/aksel-icons";
12
13
  import cl from "clsx";
13
14
  import React, { forwardRef, useContext } from "react";
14
15
  import { Heading } from "../typography";
15
16
  import { AccordionContext } from "./AccordionContext";
16
17
  import { AccordionItemContext } from "./AccordionItem";
17
- import { ChevronDownIcon } from "@navikt/aksel-icons";
18
18
  const AccordionHeader = forwardRef((_a, ref) => {
19
19
  var _b;
20
20
  var { children, className, onClick } = _a, rest = __rest(_a, ["children", "className", "onClick"]);
@@ -28,7 +28,7 @@ const AccordionHeader = forwardRef((_a, ref) => {
28
28
  itemContext.toggleOpen();
29
29
  onClick && onClick(e);
30
30
  }, "aria-expanded": itemContext.open, type: "button" }),
31
- React.createElement("div", { className: "navds-accordion__icon-wrapper" },
31
+ React.createElement("span", { className: "navds-accordion__icon-wrapper" },
32
32
  React.createElement(ChevronDownIcon, { className: "navds-accordion__header-chevron", title: "Vis mer", "aria-hidden": true })),
33
33
  React.createElement(Heading, { size: (_b = accordionContext === null || accordionContext === void 0 ? void 0 : accordionContext.headingSize) !== null && _b !== void 0 ? _b : "small", as: "span", className: "navds-accordion__header-content" }, children)));
34
34
  });
@@ -1 +1 @@
1
- {"version":3,"file":"AccordionHeader.js","sourceRoot":"","sources":["../../src/accordion/AccordionHeader.tsx"],"names":[],"mappings":";;;;;;;;;;;AAAA,OAAO,EAAE,MAAM,MAAM,CAAC;AACtB,OAAO,KAAK,EAAE,EAAE,UAAU,EAAE,UAAU,EAAE,MAAM,OAAO,CAAC;AACtD,OAAO,EAAE,OAAO,EAAE,MAAM,eAAe,CAAC;AACxC,OAAO,EAAE,gBAAgB,EAAE,MAAM,oBAAoB,CAAC;AACtD,OAAO,EAAE,oBAAoB,EAAE,MAAM,iBAAiB,CAAC;AACvD,OAAO,EAAE,eAAe,EAAE,MAAM,qBAAqB,CAAC;AAUtD,MAAM,eAAe,GAAG,UAAU,CAChC,CAAC,EAAyC,EAAE,GAAG,EAAE,EAAE;;QAAlD,EAAE,QAAQ,EAAE,SAAS,EAAE,OAAO,OAAW,EAAN,IAAI,cAAvC,oCAAyC,CAAF;IACtC,MAAM,WAAW,GAAG,UAAU,CAAC,oBAAoB,CAAC,CAAC;IACrD,MAAM,gBAAgB,GAAG,UAAU,CAAC,gBAAgB,CAAC,CAAC;IAEtD,IAAI,WAAW,KAAK,IAAI,EAAE;QACxB,OAAO,CAAC,KAAK,CACX,2GAA2G,CAC5G,CAAC;QACF,OAAO,IAAI,CAAC;KACb;IAED,OAAO,CACL,8CACE,GAAG,EAAE,GAAG,IACJ,IAAI,IACR,SAAS,EAAE,EAAE,CAAC,yBAAyB,EAAE,SAAS,CAAC,EACnD,OAAO,EAAE,CAAC,CAAkD,EAAE,EAAE;YAC9D,WAAW,CAAC,UAAU,EAAE,CAAC;YACzB,OAAO,IAAI,OAAO,CAAC,CAAC,CAAC,CAAC;QACxB,CAAC,mBACc,WAAW,CAAC,IAAI,EAC/B,IAAI,EAAC,QAAQ;QAEb,6BAAK,SAAS,EAAC,+BAA+B;YAC5C,oBAAC,eAAe,IACd,SAAS,EAAC,iCAAiC,EAC3C,KAAK,EAAC,SAAS,wBAEf,CACE;QACN,oBAAC,OAAO,IACN,IAAI,EAAE,MAAA,gBAAgB,aAAhB,gBAAgB,uBAAhB,gBAAgB,CAAE,WAAW,mCAAI,OAAO,EAC9C,EAAE,EAAC,MAAM,EACT,SAAS,EAAC,iCAAiC,IAE1C,QAAQ,CACD,CACH,CACV,CAAC;AACJ,CAAC,CACF,CAAC;AAEF,eAAe,eAAe,CAAC"}
1
+ {"version":3,"file":"AccordionHeader.js","sourceRoot":"","sources":["../../src/accordion/AccordionHeader.tsx"],"names":[],"mappings":";;;;;;;;;;;AAAA,OAAO,EAAE,eAAe,EAAE,MAAM,qBAAqB,CAAC;AACtD,OAAO,EAAE,MAAM,MAAM,CAAC;AACtB,OAAO,KAAK,EAAE,EAAE,UAAU,EAAE,UAAU,EAAE,MAAM,OAAO,CAAC;AACtD,OAAO,EAAE,OAAO,EAAE,MAAM,eAAe,CAAC;AACxC,OAAO,EAAE,gBAAgB,EAAE,MAAM,oBAAoB,CAAC;AACtD,OAAO,EAAE,oBAAoB,EAAE,MAAM,iBAAiB,CAAC;AAUvD,MAAM,eAAe,GAAG,UAAU,CAChC,CAAC,EAAyC,EAAE,GAAG,EAAE,EAAE;;QAAlD,EAAE,QAAQ,EAAE,SAAS,EAAE,OAAO,OAAW,EAAN,IAAI,cAAvC,oCAAyC,CAAF;IACtC,MAAM,WAAW,GAAG,UAAU,CAAC,oBAAoB,CAAC,CAAC;IACrD,MAAM,gBAAgB,GAAG,UAAU,CAAC,gBAAgB,CAAC,CAAC;IAEtD,IAAI,WAAW,KAAK,IAAI,EAAE;QACxB,OAAO,CAAC,KAAK,CACX,2GAA2G,CAC5G,CAAC;QACF,OAAO,IAAI,CAAC;KACb;IAED,OAAO,CACL,8CACE,GAAG,EAAE,GAAG,IACJ,IAAI,IACR,SAAS,EAAE,EAAE,CAAC,yBAAyB,EAAE,SAAS,CAAC,EACnD,OAAO,EAAE,CAAC,CAAkD,EAAE,EAAE;YAC9D,WAAW,CAAC,UAAU,EAAE,CAAC;YACzB,OAAO,IAAI,OAAO,CAAC,CAAC,CAAC,CAAC;QACxB,CAAC,mBACc,WAAW,CAAC,IAAI,EAC/B,IAAI,EAAC,QAAQ;QAEb,8BAAM,SAAS,EAAC,+BAA+B;YAC7C,oBAAC,eAAe,IACd,SAAS,EAAC,iCAAiC,EAC3C,KAAK,EAAC,SAAS,wBAEf,CACG;QACP,oBAAC,OAAO,IACN,IAAI,EAAE,MAAA,gBAAgB,aAAhB,gBAAgB,uBAAhB,gBAAgB,CAAE,WAAW,mCAAI,OAAO,EAC9C,EAAE,EAAC,MAAM,EACT,SAAS,EAAC,iCAAiC,IAE1C,QAAQ,CACD,CACH,CACV,CAAC;AACJ,CAAC,CACF,CAAC;AAEF,eAAe,eAAe,CAAC"}
@@ -12,7 +12,11 @@ interface DateContextContextProps {
12
12
  * Aria-connected ID
13
13
  */
14
14
  ariaId?: string;
15
+ /**
16
+ * Flag for enabled-check
17
+ */
18
+ defined: boolean;
15
19
  }
16
- export declare const DateContext: import("react").Context<DateContextContextProps>;
17
- export declare const useDateInputContext: () => DateContextContextProps;
20
+ export declare const DateContext: import("react").Context<DateContextContextProps | null>;
21
+ export declare const useDateInputContext: () => DateContextContextProps | null;
18
22
  export {};
@@ -1,9 +1,5 @@
1
1
  import { createContext, useContext } from "react";
2
- export const DateContext = createContext({
3
- open: false,
4
- onOpen: () => null,
5
- ariaId: undefined,
6
- });
2
+ export const DateContext = createContext(null);
7
3
  export const useDateInputContext = () => {
8
4
  const context = useContext(DateContext);
9
5
  if (!context) {
@@ -1 +1 @@
1
- {"version":3,"file":"useDateInputContext.js","sourceRoot":"","sources":["../../../src/date/context/useDateInputContext.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAAE,UAAU,EAAE,MAAM,OAAO,CAAC;AAiBlD,MAAM,CAAC,MAAM,WAAW,GAAG,aAAa,CAA0B;IAChE,IAAI,EAAE,KAAK;IACX,MAAM,EAAE,GAAG,EAAE,CAAC,IAAI;IAClB,MAAM,EAAE,SAAS;CAClB,CAAC,CAAC;AAEH,MAAM,CAAC,MAAM,mBAAmB,GAAG,GAAG,EAAE;IACtC,MAAM,OAAO,GAAG,UAAU,CAAC,WAAW,CAAC,CAAC;IAExC,IAAI,CAAC,OAAO,EAAE;QACZ,OAAO,CAAC,IAAI,CAAC,mDAAmD,CAAC,CAAC;KACnE;IAED,OAAO,OAAO,CAAC;AACjB,CAAC,CAAC"}
1
+ {"version":3,"file":"useDateInputContext.js","sourceRoot":"","sources":["../../../src/date/context/useDateInputContext.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAAE,UAAU,EAAE,MAAM,OAAO,CAAC;AAqBlD,MAAM,CAAC,MAAM,WAAW,GAAG,aAAa,CAAiC,IAAI,CAAC,CAAC;AAE/E,MAAM,CAAC,MAAM,mBAAmB,GAAG,GAAG,EAAE;IACtC,MAAM,OAAO,GAAG,UAAU,CAAC,WAAW,CAAC,CAAC;IAExC,IAAI,CAAC,OAAO,EAAE;QACZ,OAAO,CAAC,IAAI,CAAC,mDAAmD,CAAC,CAAC;KACnE;IAED,OAAO,OAAO,CAAC;AACjB,CAAC,CAAC"}
@@ -1,5 +1,5 @@
1
1
  import React from "react";
2
- import { DatePickerInput } from "../DateInput";
2
+ import { DatePickerInput } from "../parts/DateInput";
3
3
  import DatePickerStandalone from "./DatePickerStandalone";
4
4
  import { ConditionalModeProps, DatePickerDefaultProps } from "./types";
5
5
  export type DatePickerProps = DatePickerDefaultProps & ConditionalModeProps;
@@ -11,12 +11,12 @@ var __rest = (this && this.__rest) || function (s, e) {
11
11
  };
12
12
  import cl from "clsx";
13
13
  import isWeekend from "date-fns/isWeekend";
14
- import React, { forwardRef, useRef, useState } from "react";
14
+ import React, { forwardRef, useMemo, useRef, useState } from "react";
15
15
  import { DayPicker, isMatch } from "react-day-picker";
16
- import { Popover } from "../../popover";
17
- import { omit, useId } from "../../util";
18
- import { DatePickerInput } from "../DateInput";
16
+ import { mergeRefs, omit, useId } from "../../util";
19
17
  import { DateContext } from "../context";
18
+ import { DatePickerInput } from "../parts/DateInput";
19
+ import { DateWrapper } from "../parts/DateWrapper";
20
20
  import { getLocaleFromString, labels } from "../utils";
21
21
  import DatePickerStandalone from "./DatePickerStandalone";
22
22
  import Caption from "./parts/Caption";
@@ -50,10 +50,11 @@ import WeekNumber from "./parts/WeekNumber";
50
50
  */
51
51
  export const DatePicker = forwardRef((_a, ref) => {
52
52
  var _b;
53
- var { children, locale = "nb", dropdownCaption, disabled = [], disableWeekends = false, showWeekNumber = false, selected, id, defaultSelected, className, wrapperClassName, open: _open, onClose, onOpenToggle, strategy, bubbleEscape = false, onWeekNumberClick } = _a, rest = __rest(_a, ["children", "locale", "dropdownCaption", "disabled", "disableWeekends", "showWeekNumber", "selected", "id", "defaultSelected", "className", "wrapperClassName", "open", "onClose", "onOpenToggle", "strategy", "bubbleEscape", "onWeekNumberClick"]);
53
+ var { children, locale = "nb", dropdownCaption, disabled = [], disableWeekends = false, showWeekNumber = false, selected, id, defaultSelected, className, wrapperClassName, open: _open, onClose, onOpenToggle, strategy, onWeekNumberClick } = _a, rest = __rest(_a, ["children", "locale", "dropdownCaption", "disabled", "disableWeekends", "showWeekNumber", "selected", "id", "defaultSelected", "className", "wrapperClassName", "open", "onClose", "onOpenToggle", "strategy", "onWeekNumberClick"]);
54
54
  const ariaId = useId(id);
55
55
  const [open, setOpen] = useState(_open !== null && _open !== void 0 ? _open : false);
56
56
  const wrapperRef = useRef(null);
57
+ const mergedRef = useMemo(() => mergeRefs([wrapperRef, ref]), [ref]);
57
58
  const [selectedDates, setSelectedDates] = React.useState(defaultSelected);
58
59
  const mode = (_b = rest.mode) !== null && _b !== void 0 ? _b : "single";
59
60
  /**
@@ -70,6 +71,22 @@ export const DatePicker = forwardRef((_a, ref) => {
70
71
  }
71
72
  (_c = rest === null || rest === void 0 ? void 0 : rest.onSelect) === null || _c === void 0 ? void 0 : _c.call(rest, newSelected);
72
73
  };
74
+ const DatePickerComponent = (React.createElement(DayPicker, Object.assign({ locale: getLocaleFromString(locale), mode: mode, onSelect: handleSelect, selected: selected !== null && selected !== void 0 ? selected : selectedDates, components: {
75
+ Caption: dropdownCaption ? DropdownCaption : Caption,
76
+ Head: TableHead,
77
+ HeadRow,
78
+ WeekNumber,
79
+ Row,
80
+ Day: DayButton,
81
+ }, className: cl("navds-date", className), classNames: {
82
+ vhidden: "navds-sr-only",
83
+ }, disabled: (day) => {
84
+ return (disableWeekends && isWeekend(day)) || isMatch(day, disabled);
85
+ }, weekStartsOn: 1, initialFocus: false, labels: labels, modifiers: {
86
+ weekend: (day) => disableWeekends && isWeekend(day),
87
+ }, modifiersClassNames: {
88
+ weekend: "rdp-day__weekend",
89
+ }, showWeekNumber: showWeekNumber, onWeekNumberClick: mode === "multiple" ? onWeekNumberClick : undefined, fixedWeeks: true, showOutsideDays: true }, omit(rest, ["onSelect"]))));
73
90
  return (React.createElement(DateContext.Provider, { value: {
74
91
  open: _open !== null && _open !== void 0 ? _open : open,
75
92
  onOpen: () => {
@@ -77,30 +94,14 @@ export const DatePicker = forwardRef((_a, ref) => {
77
94
  onOpenToggle === null || onOpenToggle === void 0 ? void 0 : onOpenToggle();
78
95
  },
79
96
  ariaId,
97
+ defined: true,
80
98
  } },
81
- React.createElement("div", { ref: wrapperRef, className: cl("navds-date__wrapper", wrapperClassName) },
99
+ React.createElement("div", { ref: mergedRef, className: cl("navds-date__wrapper", wrapperClassName) },
82
100
  children,
83
- (_open !== null && _open !== void 0 ? _open : open) && (React.createElement(Popover, { arrow: false, anchorEl: wrapperRef.current, open: _open !== null && _open !== void 0 ? _open : open, onClose: () => {
84
- var _a;
85
- (_a = onClose === null || onClose === void 0 ? void 0 : onClose()) !== null && _a !== void 0 ? _a : setOpen(false);
86
- }, placement: "bottom-start", id: ariaId, role: "dialog", ref: ref, strategy: strategy, className: "navds-date__popover", bubbleEscape: bubbleEscape, flip: false },
87
- React.createElement(DayPicker, Object.assign({ locale: getLocaleFromString(locale), mode: mode, onSelect: handleSelect, selected: selected !== null && selected !== void 0 ? selected : selectedDates, components: {
88
- Caption: dropdownCaption ? DropdownCaption : Caption,
89
- Head: TableHead,
90
- HeadRow,
91
- WeekNumber,
92
- Row,
93
- Day: DayButton,
94
- }, className: cl("navds-date", className), classNames: {
95
- vhidden: "navds-sr-only",
96
- }, disabled: (day) => {
97
- return ((disableWeekends && isWeekend(day)) ||
98
- isMatch(day, disabled));
99
- }, weekStartsOn: 1, initialFocus: false, labels: labels, modifiers: {
100
- weekend: (day) => disableWeekends && isWeekend(day),
101
- }, modifiersClassNames: {
102
- weekend: "rdp-day__weekend",
103
- }, showWeekNumber: showWeekNumber, onWeekNumberClick: mode === "multiple" ? onWeekNumberClick : undefined, fixedWeeks: true, showOutsideDays: true }, omit(rest, ["onSelect"]))))))));
101
+ React.createElement(DateWrapper, { open: _open !== null && _open !== void 0 ? _open : open, anchor: wrapperRef.current, onClose: () => { var _a; return (_a = onClose === null || onClose === void 0 ? void 0 : onClose()) !== null && _a !== void 0 ? _a : setOpen(false); }, locale: locale, variant: mode, popoverProps: {
102
+ id: ariaId,
103
+ strategy,
104
+ } }, DatePickerComponent))));
104
105
  });
105
106
  DatePicker.Standalone = DatePickerStandalone;
106
107
  DatePicker.Input = DatePickerInput;
@@ -1 +1 @@
1
- {"version":3,"file":"DatePicker.js","sourceRoot":"","sources":["../../../src/date/datepicker/DatePicker.tsx"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"DatePicker.js","sourceRoot":"","sources":["../../../src/date/datepicker/DatePicker.tsx"],"names":[],"mappings":"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"}
@@ -94,9 +94,4 @@ export interface DatePickerDefaultProps extends Omit<React.HTMLAttributes<HTMLDi
94
94
  * @default See Popover
95
95
  */
96
96
  strategy?: "absolute" | "fixed";
97
- /**
98
- * Bubbles Escape keydown-event up trough DOM-tree. This is set to false by default to prevent closing components like Modal on Escape
99
- * @default false
100
- */
101
- bubbleEscape?: boolean;
102
97
  }
@@ -1,6 +1,6 @@
1
1
  import React from "react";
2
- import { DateInputProps } from "../DateInput";
3
2
  import { DatePickerProps } from "../datepicker/DatePicker";
3
+ import { DateInputProps } from "../parts/DateInput";
4
4
  export interface UseDatepickerOptions extends Pick<DatePickerProps, "locale" | "fromDate" | "toDate" | "today" | "toDate" | "fromDate" | "toDate" | "disabled" | "disableWeekends"> {
5
5
  /**
6
6
  * The initially selected Date
@@ -35,10 +35,10 @@ export interface UseDatepickerOptions extends Pick<DatePickerProps, "locale" | "
35
35
  */
36
36
  allowTwoDigitYear?: boolean;
37
37
  /**
38
- * Opens datepicker on input-focus
39
- * @default true
38
+ * Will be removed in a future major-version
39
+ * @deprecated
40
40
  */
41
- openOnFocus?: boolean;
41
+ openOnFocus?: false;
42
42
  }
43
43
  interface UseDatepickerValue {
44
44
  /**
@@ -49,7 +49,10 @@ interface UseDatepickerValue {
49
49
  * Use: <DatePicker.Input {...inputProps}/>
50
50
  */
51
51
  inputProps: Pick<DateInputProps, "onChange" | "onFocus" | "onBlur" | "value"> & {
52
- ref: React.RefObject<HTMLInputElement>;
52
+ /**
53
+ * @private
54
+ */
55
+ setAnchorRef: React.Dispatch<React.SetStateAction<HTMLButtonElement | null>>;
53
56
  };
54
57
  /**
55
58
  * Resets all states (callback)
@@ -1,10 +1,8 @@
1
1
  import differenceInCalendarDays from "date-fns/differenceInCalendarDays";
2
2
  import isWeekend from "date-fns/isWeekend";
3
- import { useCallback, useRef, useState } from "react";
3
+ import { useCallback, useState } from "react";
4
4
  import { isMatch } from "react-day-picker";
5
5
  import { formatDateForInput, getLocaleFromString, isValidDate, parseDate, } from "../utils";
6
- import { useEscape } from "./useEscape";
7
- import { useOutsideClickHandler } from "./useOutsideClickHandler";
8
6
  const getValidationMessage = (val = {}) => (Object.assign({ isDisabled: false, isWeekend: false, isEmpty: false, isInvalid: false, isBefore: false, isAfter: false, isValidDate: true }, val));
9
7
  /**
10
8
  *
@@ -20,11 +18,10 @@ const getValidationMessage = (val = {}) => (Object.assign({ isDisabled: false, i
20
18
  * });
21
19
  */
22
20
  export const useDatepicker = (opt = {}) => {
23
- var _a, _b;
24
- const { locale: _locale = "nb", required, defaultSelected: _defaultSelected, today = new Date(), fromDate, toDate, disabled, disableWeekends, onDateChange, inputFormat, onValidate, defaultMonth, allowTwoDigitYear = true, openOnFocus = true, } = opt;
21
+ var _a;
22
+ const { locale: _locale = "nb", required, defaultSelected: _defaultSelected, today = new Date(), fromDate, toDate, disabled, disableWeekends, onDateChange, inputFormat, onValidate, defaultMonth, allowTwoDigitYear = true, } = opt;
23
+ const [anchorRef, setAnchorRef] = useState(null);
25
24
  const locale = getLocaleFromString(_locale);
26
- const inputRef = useRef(null);
27
- const [daypickerRef, setDaypickerRef] = useState();
28
25
  const [defaultSelected, setDefaultSelected] = useState(_defaultSelected);
29
26
  // Initialize states
30
27
  const [month, setMonth] = useState((_a = defaultSelected !== null && defaultSelected !== void 0 ? defaultSelected : defaultMonth) !== null && _a !== void 0 ? _a : today);
@@ -40,12 +37,6 @@ export const useDatepicker = (opt = {}) => {
40
37
  newOpen &&
41
38
  setMonth((_b = (_a = selectedDay !== null && selectedDay !== void 0 ? selectedDay : defaultSelected) !== null && _a !== void 0 ? _a : defaultMonth) !== null && _b !== void 0 ? _b : today);
42
39
  }, [defaultMonth, defaultSelected, selectedDay, today]);
43
- useOutsideClickHandler(open, handleOpen, [
44
- daypickerRef,
45
- inputRef.current,
46
- (_b = inputRef.current) === null || _b === void 0 ? void 0 : _b.nextSibling,
47
- ]);
48
- useEscape(open, handleOpen, inputRef);
49
40
  const updateDate = (date) => {
50
41
  onDateChange === null || onDateChange === void 0 ? void 0 : onDateChange(date);
51
42
  setSelectedDay(date);
@@ -68,7 +59,6 @@ export const useDatepicker = (opt = {}) => {
68
59
  if (e.target.readOnly) {
69
60
  return;
70
61
  }
71
- !open && openOnFocus && handleOpen(true);
72
62
  const day = parseDate(e.target.value, today, locale, "date", allowTwoDigitYear);
73
63
  if (isValidDate(day)) {
74
64
  setInputValue(formatDateForInput(day, locale, "date", inputFormat));
@@ -86,7 +76,7 @@ export const useDatepicker = (opt = {}) => {
86
76
  const handleDayClick = (day, { selected }) => {
87
77
  if (day && !selected) {
88
78
  handleOpen(false);
89
- inputRef.current && inputRef.current.focus();
79
+ anchorRef === null || anchorRef === void 0 ? void 0 : anchorRef.focus();
90
80
  }
91
81
  if (!required && selected) {
92
82
  updateDate(undefined);
@@ -145,18 +135,20 @@ export const useDatepicker = (opt = {}) => {
145
135
  toDate,
146
136
  today,
147
137
  open,
138
+ onClose: () => {
139
+ handleOpen(false);
140
+ anchorRef === null || anchorRef === void 0 ? void 0 : anchorRef.focus();
141
+ },
148
142
  onOpenToggle: () => handleOpen(!open),
149
143
  disabled,
150
144
  disableWeekends,
151
- bubbleEscape: true,
152
- ref: setDaypickerRef,
153
145
  };
154
146
  const inputProps = {
155
147
  onChange: handleChange,
156
148
  onFocus: handleFocus,
157
149
  onBlur: handleBlur,
158
150
  value: inputValue,
159
- ref: inputRef,
151
+ setAnchorRef,
160
152
  };
161
153
  return { datepickerProps, inputProps, reset, selectedDay, setSelected };
162
154
  };
@@ -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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"}
@@ -1,6 +1,6 @@
1
1
  import React from "react";
2
- import { DateInputProps } from "../DateInput";
3
2
  import { MonthPickerProps } from "../monthpicker/types";
3
+ import { DateInputProps } from "../parts/DateInput";
4
4
  export interface UseMonthPickerOptions extends Pick<MonthPickerProps, "locale" | "fromDate" | "toDate" | "disabled" | "defaultSelected"> {
5
5
  /**
6
6
  * Make Date-selection required
@@ -31,8 +31,8 @@ export interface UseMonthPickerOptions extends Pick<MonthPickerProps, "locale" |
31
31
  */
32
32
  allowTwoDigitYear?: boolean;
33
33
  /**
34
- * Opens datepicker on input-focus
35
- * @default true
34
+ * Will be removed in a future major-version
35
+ * @deprecated
36
36
  */
37
37
  openOnFocus?: boolean;
38
38
  }
@@ -45,7 +45,10 @@ interface UseMonthPickerValue {
45
45
  * Use: <MonthPicker.Input {...inputProps} />
46
46
  */
47
47
  inputProps: Pick<DateInputProps, "onChange" | "onFocus" | "value"> & {
48
- ref: React.RefObject<HTMLInputElement>;
48
+ /**
49
+ * @private
50
+ */
51
+ setAnchorRef: React.Dispatch<React.SetStateAction<HTMLButtonElement | null>>;
49
52
  };
50
53
  /**
51
54
  * Currently selected Date
@@ -1,7 +1,5 @@
1
- import { useCallback, useMemo, useRef, useState } from "react";
1
+ import { useCallback, useMemo, useState } from "react";
2
2
  import { formatDateForInput, getLocaleFromString, isMatch, isValidDate, parseDate, } from "../utils";
3
- import { useEscape } from "./useEscape";
4
- import { useOutsideClickHandler } from "./useOutsideClickHandler";
5
3
  const getValidationMessage = (val = {}) => (Object.assign({ isDisabled: false, isEmpty: false, isInvalid: false, isBefore: false, isAfter: false, isValidMonth: true }, val));
6
4
  const getIsBefore = (opt) => opt.fromDate &&
7
5
  opt.date &&
@@ -27,13 +25,12 @@ const getIsAfter = (opt) => opt.toDate &&
27
25
  * });
28
26
  */
29
27
  export const useMonthpicker = (opt = {}) => {
30
- var _a, _b;
31
- const { locale: _locale = "nb", defaultSelected: _defaultSelected, fromDate, toDate, disabled, required, onMonthChange, inputFormat, onValidate, defaultYear, allowTwoDigitYear = true, openOnFocus = true, } = opt;
28
+ var _a;
29
+ const { locale: _locale = "nb", defaultSelected: _defaultSelected, fromDate, toDate, disabled, required, onMonthChange, inputFormat, onValidate, defaultYear, allowTwoDigitYear = true, } = opt;
30
+ const [anchorRef, setAnchorRef] = useState(null);
32
31
  const [defaultSelected, setDefaultSelected] = useState(_defaultSelected);
33
32
  const today = useMemo(() => new Date(), []);
34
33
  const locale = getLocaleFromString(_locale);
35
- const inputRef = useRef(null);
36
- const [monthpickerRef, setMonthpickerRef] = useState();
37
34
  // Initialize states
38
35
  const [year, setYear] = useState((_a = defaultSelected !== null && defaultSelected !== void 0 ? defaultSelected : defaultYear) !== null && _a !== void 0 ? _a : today);
39
36
  const [selectedMonth, setSelectedMonth] = useState(defaultSelected);
@@ -48,12 +45,6 @@ export const useMonthpicker = (opt = {}) => {
48
45
  newOpen &&
49
46
  setYear((_b = (_a = selectedMonth !== null && selectedMonth !== void 0 ? selectedMonth : defaultSelected) !== null && _a !== void 0 ? _a : defaultYear) !== null && _b !== void 0 ? _b : today);
50
47
  }, [defaultSelected, defaultYear, selectedMonth, today]);
51
- useOutsideClickHandler(open, handleOpen, [
52
- monthpickerRef,
53
- inputRef.current,
54
- (_b = inputRef.current) === null || _b === void 0 ? void 0 : _b.nextSibling,
55
- ]);
56
- useEscape(open, handleOpen, inputRef);
57
48
  const updateMonth = (date) => {
58
49
  onMonthChange === null || onMonthChange === void 0 ? void 0 : onMonthChange(date);
59
50
  setSelectedMonth(date);
@@ -77,7 +68,6 @@ export const useMonthpicker = (opt = {}) => {
77
68
  if (e.target.readOnly) {
78
69
  return;
79
70
  }
80
- !open && openOnFocus && handleOpen(true);
81
71
  const day = parseDate(e.target.value, today, locale, "month", allowTwoDigitYear);
82
72
  const isBefore = getIsBefore({ fromDate, date: day });
83
73
  const isAfter = getIsAfter({ toDate, date: day });
@@ -98,8 +88,8 @@ export const useMonthpicker = (opt = {}) => {
98
88
  const handleMonthClick = (month) => {
99
89
  if (month) {
100
90
  handleOpen(false);
101
- inputRef.current && inputRef.current.focus();
102
91
  setYear(month);
92
+ anchorRef === null || anchorRef === void 0 ? void 0 : anchorRef.focus();
103
93
  }
104
94
  if (!required && !month) {
105
95
  updateMonth(undefined);
@@ -157,16 +147,18 @@ export const useMonthpicker = (opt = {}) => {
157
147
  toDate,
158
148
  open,
159
149
  onOpenToggle: () => handleOpen(!open),
150
+ onClose: () => {
151
+ handleOpen(false);
152
+ anchorRef === null || anchorRef === void 0 ? void 0 : anchorRef.focus();
153
+ },
160
154
  disabled,
161
- bubbleEscape: true,
162
- ref: setMonthpickerRef,
163
155
  };
164
156
  const inputProps = {
165
157
  onChange: handleChange,
166
158
  onFocus: handleFocus,
167
159
  onBlur: handleBlur,
168
160
  value: inputValue,
169
- ref: inputRef,
161
+ setAnchorRef,
170
162
  };
171
163
  return { monthpickerProps, inputProps, reset, selectedMonth, setSelected };
172
164
  };
@@ -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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"}
@@ -1,7 +1,7 @@
1
1
  import React from "react";
2
2
  import { DateRange } from "react-day-picker";
3
- import { DateInputProps } from "../DateInput";
4
3
  import { DatePickerProps } from "../datepicker/DatePicker";
4
+ import { DateInputProps } from "../parts/DateInput";
5
5
  import { DateValidationT, UseDatepickerOptions } from "./useDatepicker";
6
6
  export type RangeValidationT = {
7
7
  from: DateValidationT;
@@ -32,13 +32,19 @@ interface UseRangeDatepickerValue {
32
32
  * Use: <DatePicker.Input label="from" {...fromInputProps}/>
33
33
  */
34
34
  fromInputProps: Pick<DateInputProps, "onChange" | "onFocus" | "onBlur" | "value"> & {
35
- ref: React.RefObject<HTMLInputElement>;
35
+ /**
36
+ * @private
37
+ */
38
+ setAnchorRef: React.Dispatch<React.SetStateAction<HTMLButtonElement | null>>;
36
39
  };
37
40
  /**
38
41
  * Use: <DatePicker.Input label="to" {...toInputProps}/>
39
42
  */
40
43
  toInputProps: Pick<DateInputProps, "onChange" | "onFocus" | "onBlur" | "value"> & {
41
- ref: React.RefObject<HTMLInputElement>;
44
+ /**
45
+ * @private
46
+ */
47
+ setAnchorRef?: React.Dispatch<React.SetStateAction<HTMLButtonElement | null>>;
42
48
  };
43
49
  /**
44
50
  * Resets all states (callback)