@navikt/ds-react 6.7.0 → 6.7.1

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 (211) hide show
  1. package/cjs/chat/Chat.d.ts +2 -1
  2. package/cjs/chat/Chat.js +2 -1
  3. package/cjs/chat/Chat.js.map +1 -1
  4. package/cjs/date/datepicker/parts/DropdownCaption.js +1 -1
  5. package/cjs/date/datepicker/parts/DropdownCaption.js.map +1 -1
  6. package/cjs/date/monthpicker/MonthCaption.js +1 -1
  7. package/cjs/date/utils/labels.d.ts +2 -2
  8. package/cjs/form/ReadOnlyIcon.d.ts +2 -2
  9. package/cjs/form/combobox/Combobox.js +7 -22
  10. package/cjs/form/combobox/Combobox.js.map +1 -1
  11. package/cjs/form/combobox/ComboboxProvider.js +2 -2
  12. package/cjs/form/combobox/ComboboxProvider.js.map +1 -1
  13. package/cjs/form/combobox/ComboboxWrapper.d.ts +1 -2
  14. package/cjs/form/combobox/ComboboxWrapper.js +4 -2
  15. package/cjs/form/combobox/ComboboxWrapper.js.map +1 -1
  16. package/cjs/form/combobox/FilteredOptions/FilteredOptions.js +4 -4
  17. package/cjs/form/combobox/FilteredOptions/FilteredOptions.js.map +1 -1
  18. package/cjs/form/combobox/FilteredOptions/filteredOptionsContext.d.ts +4 -4
  19. package/cjs/form/combobox/FilteredOptions/filteredOptionsContext.js +13 -15
  20. package/cjs/form/combobox/FilteredOptions/filteredOptionsContext.js.map +1 -1
  21. package/cjs/form/combobox/Input/{inputContext.d.ts → Input.context.d.ts} +7 -5
  22. package/cjs/form/combobox/Input/{inputContext.js → Input.context.js} +22 -22
  23. package/cjs/form/combobox/Input/Input.context.js.map +1 -0
  24. package/cjs/form/combobox/Input/Input.js +2 -2
  25. package/cjs/form/combobox/Input/Input.js.map +1 -1
  26. package/cjs/form/combobox/Input/InputController.d.ts +3 -0
  27. package/cjs/form/combobox/Input/InputController.js +70 -0
  28. package/cjs/form/combobox/Input/InputController.js.map +1 -0
  29. package/cjs/form/combobox/{ToggleListButton.js → Input/ToggleListButton.js} +1 -1
  30. package/cjs/form/combobox/Input/ToggleListButton.js.map +1 -0
  31. package/cjs/form/combobox/SelectedOptions/SelectedOptions.js +2 -2
  32. package/cjs/form/combobox/SelectedOptions/SelectedOptions.js.map +1 -1
  33. package/cjs/form/combobox/SelectedOptions/selectedOptionsContext.d.ts +4 -4
  34. package/cjs/form/combobox/SelectedOptions/selectedOptionsContext.js +7 -13
  35. package/cjs/form/combobox/SelectedOptions/selectedOptionsContext.js.map +1 -1
  36. package/cjs/form/combobox/customOptionsContext.d.ts +4 -4
  37. package/cjs/form/combobox/customOptionsContext.js +10 -13
  38. package/cjs/form/combobox/customOptionsContext.js.map +1 -1
  39. package/cjs/form/combobox/types.d.ts +1 -1
  40. package/cjs/help-text/HelpTextIcon.d.ts +1 -1
  41. package/cjs/overlay/dismiss/DismissableLayer.d.ts +70 -0
  42. package/cjs/overlay/dismiss/DismissableLayer.js +253 -0
  43. package/cjs/overlay/dismiss/DismissableLayer.js.map +1 -0
  44. package/cjs/overlay/dismiss/util/dispatchCustomEvent.d.ts +50 -0
  45. package/cjs/overlay/dismiss/util/dispatchCustomEvent.js +65 -0
  46. package/cjs/overlay/dismiss/util/dispatchCustomEvent.js.map +1 -0
  47. package/cjs/overlay/dismiss/util/useEscapeKeydown.d.ts +1 -0
  48. package/cjs/overlay/dismiss/util/useEscapeKeydown.js +19 -0
  49. package/cjs/overlay/dismiss/util/useEscapeKeydown.js.map +1 -0
  50. package/cjs/overlay/dismiss/util/useFocusOutside.d.ts +8 -0
  51. package/cjs/overlay/dismiss/util/useFocusOutside.js +42 -0
  52. package/cjs/overlay/dismiss/util/useFocusOutside.js.map +1 -0
  53. package/cjs/overlay/dismiss/util/usePointerDownOutside.d.ts +10 -0
  54. package/cjs/overlay/dismiss/util/usePointerDownOutside.js +84 -0
  55. package/cjs/overlay/dismiss/util/usePointerDownOutside.js.map +1 -0
  56. package/cjs/overlays/floating/Floating.d.ts +53 -0
  57. package/cjs/overlays/floating/Floating.js +215 -0
  58. package/cjs/overlays/floating/Floating.js.map +1 -0
  59. package/cjs/overlays/floating/Floating.utils.d.ts +18 -0
  60. package/cjs/overlays/floating/Floating.utils.js +52 -0
  61. package/cjs/overlays/floating/Floating.utils.js.map +1 -0
  62. package/cjs/popover/Popover.js +13 -28
  63. package/cjs/popover/Popover.js.map +1 -1
  64. package/cjs/progress-bar/ProgressBar.d.ts +20 -8
  65. package/cjs/progress-bar/ProgressBar.js +19 -9
  66. package/cjs/progress-bar/ProgressBar.js.map +1 -1
  67. package/cjs/tabs/Tabs.context.d.ts +7 -3
  68. package/cjs/tabs/Tabs.context.js +1 -0
  69. package/cjs/tabs/Tabs.context.js.map +1 -1
  70. package/cjs/timeline/AxisLabels.d.ts +1 -1
  71. package/cjs/toggle-group/ToggleGroup.context.d.ts +7 -3
  72. package/cjs/toggle-group/ToggleGroup.context.js +1 -0
  73. package/cjs/toggle-group/ToggleGroup.context.js.map +1 -1
  74. package/cjs/util/hooks/descendants/useDescendant.d.ts +2 -2
  75. package/cjs/util/hooks/descendants/useDescendant.js +49 -52
  76. package/cjs/util/hooks/descendants/useDescendant.js.map +1 -1
  77. package/cjs/util/types/AsChild.d.ts +14 -0
  78. package/cjs/util/types/AsChild.js +3 -0
  79. package/cjs/util/types/AsChild.js.map +1 -0
  80. package/esm/chat/Chat.d.ts +2 -1
  81. package/esm/chat/Chat.js +1 -0
  82. package/esm/chat/Chat.js.map +1 -1
  83. package/esm/date/datepicker/parts/DropdownCaption.js +1 -1
  84. package/esm/date/datepicker/parts/DropdownCaption.js.map +1 -1
  85. package/esm/date/monthpicker/MonthCaption.js +1 -1
  86. package/esm/date/utils/labels.d.ts +2 -2
  87. package/esm/form/ReadOnlyIcon.d.ts +2 -2
  88. package/esm/form/combobox/Combobox.js +8 -23
  89. package/esm/form/combobox/Combobox.js.map +1 -1
  90. package/esm/form/combobox/ComboboxProvider.js +1 -1
  91. package/esm/form/combobox/ComboboxProvider.js.map +1 -1
  92. package/esm/form/combobox/ComboboxWrapper.d.ts +1 -2
  93. package/esm/form/combobox/ComboboxWrapper.js +4 -2
  94. package/esm/form/combobox/ComboboxWrapper.js.map +1 -1
  95. package/esm/form/combobox/FilteredOptions/FilteredOptions.js +3 -3
  96. package/esm/form/combobox/FilteredOptions/FilteredOptions.js.map +1 -1
  97. package/esm/form/combobox/FilteredOptions/filteredOptionsContext.d.ts +4 -4
  98. package/esm/form/combobox/FilteredOptions/filteredOptionsContext.js +15 -16
  99. package/esm/form/combobox/FilteredOptions/filteredOptionsContext.js.map +1 -1
  100. package/esm/form/combobox/Input/{inputContext.d.ts → Input.context.d.ts} +7 -5
  101. package/esm/form/combobox/Input/{inputContext.js → Input.context.js} +22 -21
  102. package/esm/form/combobox/Input/Input.context.js.map +1 -0
  103. package/esm/form/combobox/Input/Input.js +1 -1
  104. package/esm/form/combobox/Input/Input.js.map +1 -1
  105. package/esm/form/combobox/Input/InputController.d.ts +3 -0
  106. package/esm/form/combobox/Input/InputController.js +41 -0
  107. package/esm/form/combobox/Input/InputController.js.map +1 -0
  108. package/esm/form/combobox/{ToggleListButton.js → Input/ToggleListButton.js} +1 -1
  109. package/esm/form/combobox/Input/ToggleListButton.js.map +1 -0
  110. package/esm/form/combobox/SelectedOptions/SelectedOptions.js +1 -1
  111. package/esm/form/combobox/SelectedOptions/SelectedOptions.js.map +1 -1
  112. package/esm/form/combobox/SelectedOptions/selectedOptionsContext.d.ts +4 -4
  113. package/esm/form/combobox/SelectedOptions/selectedOptionsContext.js +9 -14
  114. package/esm/form/combobox/SelectedOptions/selectedOptionsContext.js.map +1 -1
  115. package/esm/form/combobox/customOptionsContext.d.ts +4 -4
  116. package/esm/form/combobox/customOptionsContext.js +10 -12
  117. package/esm/form/combobox/customOptionsContext.js.map +1 -1
  118. package/esm/form/combobox/types.d.ts +1 -1
  119. package/esm/help-text/HelpTextIcon.d.ts +1 -1
  120. package/esm/overlay/dismiss/DismissableLayer.d.ts +70 -0
  121. package/esm/overlay/dismiss/DismissableLayer.js +226 -0
  122. package/esm/overlay/dismiss/DismissableLayer.js.map +1 -0
  123. package/esm/overlay/dismiss/util/dispatchCustomEvent.d.ts +50 -0
  124. package/esm/overlay/dismiss/util/dispatchCustomEvent.js +58 -0
  125. package/esm/overlay/dismiss/util/dispatchCustomEvent.js.map +1 -0
  126. package/esm/overlay/dismiss/util/useEscapeKeydown.d.ts +1 -0
  127. package/esm/overlay/dismiss/util/useEscapeKeydown.js +15 -0
  128. package/esm/overlay/dismiss/util/useEscapeKeydown.js.map +1 -0
  129. package/esm/overlay/dismiss/util/useFocusOutside.d.ts +8 -0
  130. package/esm/overlay/dismiss/util/useFocusOutside.js +38 -0
  131. package/esm/overlay/dismiss/util/useFocusOutside.js.map +1 -0
  132. package/esm/overlay/dismiss/util/usePointerDownOutside.d.ts +10 -0
  133. package/esm/overlay/dismiss/util/usePointerDownOutside.js +80 -0
  134. package/esm/overlay/dismiss/util/usePointerDownOutside.js.map +1 -0
  135. package/esm/overlays/floating/Floating.d.ts +53 -0
  136. package/esm/overlays/floating/Floating.js +188 -0
  137. package/esm/overlays/floating/Floating.js.map +1 -0
  138. package/esm/overlays/floating/Floating.utils.d.ts +18 -0
  139. package/esm/overlays/floating/Floating.utils.js +48 -0
  140. package/esm/overlays/floating/Floating.utils.js.map +1 -0
  141. package/esm/popover/Popover.js +16 -31
  142. package/esm/popover/Popover.js.map +1 -1
  143. package/esm/progress-bar/ProgressBar.d.ts +20 -8
  144. package/esm/progress-bar/ProgressBar.js +20 -10
  145. package/esm/progress-bar/ProgressBar.js.map +1 -1
  146. package/esm/tabs/Tabs.context.d.ts +7 -3
  147. package/esm/tabs/Tabs.context.js +1 -0
  148. package/esm/tabs/Tabs.context.js.map +1 -1
  149. package/esm/timeline/AxisLabels.d.ts +1 -1
  150. package/esm/toggle-group/ToggleGroup.context.d.ts +7 -3
  151. package/esm/toggle-group/ToggleGroup.context.js +1 -0
  152. package/esm/toggle-group/ToggleGroup.context.js.map +1 -1
  153. package/esm/util/hooks/descendants/useDescendant.d.ts +2 -2
  154. package/esm/util/hooks/descendants/useDescendant.js +49 -52
  155. package/esm/util/hooks/descendants/useDescendant.js.map +1 -1
  156. package/esm/util/types/AsChild.d.ts +14 -0
  157. package/esm/util/types/AsChild.js +2 -0
  158. package/esm/util/types/AsChild.js.map +1 -0
  159. package/package.json +6 -5
  160. package/src/chat/Chat.tsx +2 -1
  161. package/src/date/datepicker/parts/DropdownCaption.tsx +5 -1
  162. package/src/date/monthpicker/MonthCaption.tsx +1 -1
  163. package/src/form/combobox/Combobox.tsx +6 -76
  164. package/src/form/combobox/ComboboxProvider.tsx +1 -1
  165. package/src/form/combobox/ComboboxWrapper.tsx +4 -3
  166. package/src/form/combobox/FilteredOptions/FilteredOptions.tsx +3 -3
  167. package/src/form/combobox/FilteredOptions/filteredOptionsContext.tsx +19 -29
  168. package/src/form/combobox/Input/{inputContext.tsx → Input.context.tsx} +30 -33
  169. package/src/form/combobox/Input/Input.tsx +1 -1
  170. package/src/form/combobox/Input/InputController.tsx +102 -0
  171. package/src/form/combobox/{ToggleListButton.tsx → Input/ToggleListButton.tsx} +1 -1
  172. package/src/form/combobox/SelectedOptions/SelectedOptions.tsx +1 -1
  173. package/src/form/combobox/SelectedOptions/selectedOptionsContext.tsx +12 -26
  174. package/src/form/combobox/{combobox-utils.test.ts → __tests__/combobox-utils.test.ts} +1 -1
  175. package/src/form/combobox/{combobox.test.tsx → __tests__/combobox.test.tsx} +2 -3
  176. package/src/form/combobox/customOptionsContext.tsx +14 -18
  177. package/src/form/combobox/types.ts +3 -1
  178. package/src/overlay/README.md +5 -0
  179. package/src/overlay/dismiss/DismissableLayer.tsx +368 -0
  180. package/src/overlay/dismiss/util/dispatchCustomEvent.ts +77 -0
  181. package/src/overlay/dismiss/util/useEscapeKeydown.ts +21 -0
  182. package/src/overlay/dismiss/util/useFocusOutside.ts +52 -0
  183. package/src/overlay/dismiss/util/usePointerDownOutside.ts +95 -0
  184. package/src/overlays/floating/Floating.tsx +399 -0
  185. package/src/overlays/floating/Floating.utils.ts +63 -0
  186. package/src/popover/Popover.tsx +38 -70
  187. package/src/progress-bar/ProgressBar.tsx +45 -20
  188. package/src/tabs/Tabs.context.ts +2 -0
  189. package/src/toggle-group/ToggleGroup.context.ts +1 -0
  190. package/src/util/hooks/descendants/useDescendant.tsx +55 -68
  191. package/src/util/types/AsChild.ts +15 -0
  192. package/cjs/form/combobox/ClearButton.d.ts +0 -7
  193. package/cjs/form/combobox/ClearButton.js +0 -28
  194. package/cjs/form/combobox/ClearButton.js.map +0 -1
  195. package/cjs/form/combobox/FilteredOptions/CheckIcon.d.ts +0 -3
  196. package/cjs/form/combobox/FilteredOptions/CheckIcon.js +0 -12
  197. package/cjs/form/combobox/FilteredOptions/CheckIcon.js.map +0 -1
  198. package/cjs/form/combobox/Input/inputContext.js.map +0 -1
  199. package/cjs/form/combobox/ToggleListButton.js.map +0 -1
  200. package/esm/form/combobox/ClearButton.d.ts +0 -7
  201. package/esm/form/combobox/ClearButton.js +0 -21
  202. package/esm/form/combobox/ClearButton.js.map +0 -1
  203. package/esm/form/combobox/FilteredOptions/CheckIcon.d.ts +0 -3
  204. package/esm/form/combobox/FilteredOptions/CheckIcon.js +0 -7
  205. package/esm/form/combobox/FilteredOptions/CheckIcon.js.map +0 -1
  206. package/esm/form/combobox/Input/inputContext.js.map +0 -1
  207. package/esm/form/combobox/ToggleListButton.js.map +0 -1
  208. package/src/form/combobox/ClearButton.tsx +0 -29
  209. package/src/form/combobox/FilteredOptions/CheckIcon.tsx +0 -23
  210. /package/cjs/form/combobox/{ToggleListButton.d.ts → Input/ToggleListButton.d.ts} +0 -0
  211. /package/esm/form/combobox/{ToggleListButton.d.ts → Input/ToggleListButton.d.ts} +0 -0
@@ -0,0 +1,52 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.transformOrigin = exports.getSideAndAlignFromPlacement = void 0;
4
+ const SIDE_OPTIONS = ["top", "right", "bottom", "left"];
5
+ const ALIGN_OPTIONS = ["start", "center", "end"];
6
+ /**
7
+ * `transformOrigin` is a custom middleware for floating-ui that calculates the transform origin of the floating-element.
8
+ */
9
+ function transformOrigin(options) {
10
+ return {
11
+ name: "transformOrigin",
12
+ options,
13
+ fn(data) {
14
+ var _a, _b, _c, _d, _e;
15
+ const { placement, rects, middlewareData } = data;
16
+ const cannotCenterArrow = ((_a = middlewareData.arrow) === null || _a === void 0 ? void 0 : _a.centerOffset) !== 0;
17
+ const isArrowHidden = cannotCenterArrow;
18
+ const arrowWidth = isArrowHidden ? 0 : options.arrowWidth;
19
+ const arrowHeight = isArrowHidden ? 0 : options.arrowHeight;
20
+ const [placedSide, placedAlign] = getSideAndAlignFromPlacement(placement);
21
+ const noArrowAlign = { start: "0%", center: "50%", end: "100%" }[placedAlign];
22
+ const arrowXCenter = ((_c = (_b = middlewareData.arrow) === null || _b === void 0 ? void 0 : _b.x) !== null && _c !== void 0 ? _c : 0) + arrowWidth / 2;
23
+ const arrowYCenter = ((_e = (_d = middlewareData.arrow) === null || _d === void 0 ? void 0 : _d.y) !== null && _e !== void 0 ? _e : 0) + arrowHeight / 2;
24
+ let x = "";
25
+ let y = "";
26
+ if (placedSide === "bottom") {
27
+ x = isArrowHidden ? noArrowAlign : `${arrowXCenter}px`;
28
+ y = `${-arrowHeight}px`;
29
+ }
30
+ else if (placedSide === "top") {
31
+ x = isArrowHidden ? noArrowAlign : `${arrowXCenter}px`;
32
+ y = `${rects.floating.height + arrowHeight}px`;
33
+ }
34
+ else if (placedSide === "right") {
35
+ x = `${-arrowHeight}px`;
36
+ y = isArrowHidden ? noArrowAlign : `${arrowYCenter}px`;
37
+ }
38
+ else if (placedSide === "left") {
39
+ x = `${rects.floating.width + arrowHeight}px`;
40
+ y = isArrowHidden ? noArrowAlign : `${arrowYCenter}px`;
41
+ }
42
+ return { data: { x, y } };
43
+ },
44
+ };
45
+ }
46
+ exports.transformOrigin = transformOrigin;
47
+ function getSideAndAlignFromPlacement(placement) {
48
+ const [side, align = "center"] = placement.split("-");
49
+ return [side, align];
50
+ }
51
+ exports.getSideAndAlignFromPlacement = getSideAndAlignFromPlacement;
52
+ //# sourceMappingURL=Floating.utils.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Floating.utils.js","sourceRoot":"","sources":["../../../src/overlays/floating/Floating.utils.ts"],"names":[],"mappings":"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"}
@@ -43,6 +43,7 @@ const clsx_1 = __importDefault(require("clsx"));
43
43
  const react_2 = __importStar(require("react"));
44
44
  const context_1 = require("../date/context");
45
45
  const Modal_context_1 = require("../modal/Modal.context");
46
+ const DismissableLayer_1 = require("../overlay/dismiss/DismissableLayer");
46
47
  const hooks_1 = require("../util/hooks");
47
48
  const useMergeRefs_1 = require("../util/hooks/useMergeRefs");
48
49
  const PopoverContent_1 = __importDefault(require("./PopoverContent"));
@@ -73,11 +74,10 @@ exports.Popover = (0, react_2.forwardRef)((_a, ref) => {
73
74
  const isInDatepicker = (0, react_2.useContext)(context_1.DateContext) !== null;
74
75
  const chosenStrategy = userStrategy !== null && userStrategy !== void 0 ? userStrategy : (isInModal ? "fixed" : "absolute");
75
76
  const chosenFlip = isInDatepicker ? false : _flip;
76
- const { x, y, strategy, context, update, refs, placement: flPlacement, middlewareData: { arrow: { x: arrowX, y: arrowY } = {} }, } = (0, react_1.useFloating)({
77
+ const { update, refs, placement: flPlacement, middlewareData: { arrow: { x: arrowX, y: arrowY } = {} }, floatingStyles, } = (0, react_1.useFloating)({
77
78
  strategy: chosenStrategy,
78
79
  placement,
79
80
  open,
80
- onOpenChange: () => onClose(),
81
81
  middleware: [
82
82
  (0, react_1.offset)(offset !== null && offset !== void 0 ? offset : (arrow ? 16 : 4)),
83
83
  chosenFlip &&
@@ -86,10 +86,6 @@ exports.Popover = (0, react_2.forwardRef)((_a, ref) => {
86
86
  (0, react_1.arrow)({ element: arrowRef, padding: 8 }),
87
87
  ],
88
88
  });
89
- const { getFloatingProps } = (0, react_1.useInteractions)([
90
- (0, react_1.useClick)(context),
91
- (0, react_1.useDismiss)(context),
92
- ]);
93
89
  (0, hooks_1.useClientLayoutEffect)(() => {
94
90
  refs.setReference(anchorEl);
95
91
  }, [anchorEl]);
@@ -100,34 +96,23 @@ exports.Popover = (0, react_2.forwardRef)((_a, ref) => {
100
96
  const cleanup = (0, react_1.autoUpdate)(refs.reference.current, refs.floating.current, update);
101
97
  return () => cleanup();
102
98
  }, [refs.floating, refs.reference, update, open, anchorEl]);
103
- (0, hooks_1.useEventListener)("focusin", (0, react_2.useCallback)((e) => {
104
- if (e.target instanceof HTMLElement &&
105
- ![anchorEl, refs.floating.current].some((element) => element === null || element === void 0 ? void 0 : element.contains(e.target)) &&
106
- !e.target.contains(refs.floating.current)) {
107
- open && onClose();
108
- }
109
- }, [anchorEl, refs, open, onClose]));
110
99
  const staticSide = {
111
100
  top: "bottom",
112
101
  right: "left",
113
102
  bottom: "top",
114
103
  left: "right",
115
104
  }[flPlacement.split("-")[0]];
116
- return (react_2.default.createElement("div", Object.assign({ className: (0, clsx_1.default)("navds-popover", className, {
117
- "navds-popover--hidden": !open || !anchorEl,
118
- }), "data-placement": flPlacement, "aria-hidden": !open || !anchorEl }, getFloatingProps({
119
- ref: floatingRef,
120
- style: {
121
- position: strategy,
122
- top: y !== null && y !== void 0 ? y : 0,
123
- left: x !== null && x !== void 0 ? x : 0,
124
- },
125
- tabIndex: undefined,
126
- }), rest),
127
- children,
128
- arrow && (react_2.default.createElement("div", { ref: (node) => {
129
- arrowRef.current = node;
130
- }, style: Object.assign(Object.assign(Object.assign({}, (arrowX != null ? { left: arrowX } : {})), (arrowY != null ? { top: arrowY } : {})), (staticSide ? { [staticSide]: "-0.5rem" } : {})), className: "navds-popover__arrow" }))));
105
+ return (react_2.default.createElement(DismissableLayer_1.DismissableLayer, { asChild: true, safeZone: {
106
+ anchor: anchorEl,
107
+ dismissable: refs.floating.current,
108
+ }, onDismiss: () => open && (onClose === null || onClose === void 0 ? void 0 : onClose()), enabled: open },
109
+ react_2.default.createElement("div", Object.assign({ ref: floatingRef }, rest, { className: (0, clsx_1.default)("navds-popover", className, {
110
+ "navds-popover--hidden": !open || !anchorEl,
111
+ }), style: Object.assign(Object.assign({}, rest.style), floatingStyles), "data-placement": flPlacement, "aria-hidden": !open || !anchorEl }),
112
+ children,
113
+ arrow && (react_2.default.createElement("div", { ref: (node) => {
114
+ arrowRef.current = node;
115
+ }, style: Object.assign(Object.assign(Object.assign({}, (arrowX != null ? { left: arrowX } : {})), (arrowY != null ? { top: arrowY } : {})), (staticSide ? { [staticSide]: "-0.5rem" } : {})), className: "navds-popover__arrow" })))));
131
116
  });
132
117
  exports.Popover.Content = PopoverContent_1.default;
133
118
  exports.default = exports.Popover;
@@ -1 +1 @@
1
- {"version":3,"file":"Popover.js","sourceRoot":"","sources":["../../src/popover/Popover.tsx"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"Popover.js","sourceRoot":"","sources":["../../src/popover/Popover.tsx"],"names":[],"mappings":"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"}
@@ -6,7 +6,7 @@ interface ProgressBarPropsBase extends Omit<HTMLAttributes<HTMLDivElement>, "rol
6
6
  */
7
7
  size?: "large" | "medium" | "small";
8
8
  /**
9
- * Current progress. When duration is set, value is ignored.
9
+ * Current progress. If set, the `simulated` prop overrides `value`.
10
10
  */
11
11
  value?: number;
12
12
  /**
@@ -15,12 +15,20 @@ interface ProgressBarPropsBase extends Omit<HTMLAttributes<HTMLDivElement>, "rol
15
15
  */
16
16
  valueMax?: number;
17
17
  /**
18
- * Expected task duration in seconds.
19
- * ProgressBar grows with a preset animation for {duration} seconds.
20
- * After a 4 sec delay, it then shows an indeterminate animation.
21
- * A duration of 0 will show an indeterminate animation immediately.
22
- * Temporary removed to avoid conflicts when updating API
18
+ * Visually simulates loading.
19
+ * ProgressBar grows with a preset animation for set number of seconds,
20
+ * then shows an indeterminate animation on timeout.
23
21
  */
22
+ simulated?: {
23
+ /**
24
+ * Duration in seconds.
25
+ */
26
+ seconds: number;
27
+ /**
28
+ * Callback function when progress is indeterminate.
29
+ */
30
+ onTimeout: () => void;
31
+ };
24
32
  /**
25
33
  * String ID of the element that labels the progress bar.
26
34
  * Not needed if `aria-label` is used.
@@ -33,7 +41,7 @@ interface ProgressBarPropsBase extends Omit<HTMLAttributes<HTMLDivElement>, "rol
33
41
  "aria-label"?: string;
34
42
  }
35
43
  export type ProgressBarProps = ProgressBarPropsBase & ({
36
- "aria-hidden": string;
44
+ "aria-hidden": true;
37
45
  } | {
38
46
  "aria-labelledby": string;
39
47
  "aria-label"?: never;
@@ -50,7 +58,11 @@ export type ProgressBarProps = ProgressBarPropsBase & ({
50
58
  *
51
59
  * @example
52
60
  * // For loading content with an approximate duration in sec.
53
- * <ProgressBar duration={30} />
61
+ * <ProgressBar simulated={{
62
+ * seconds: 30,
63
+ * onTimeout: () => console.log("Oops, this is taking more time than expected!")
64
+ * }}
65
+ * />
54
66
  *
55
67
  * @example
56
68
  * // As a step indicator for forms, questionnaires, etc.
@@ -49,26 +49,36 @@ const react_1 = __importStar(require("react"));
49
49
  *
50
50
  * @example
51
51
  * // For loading content with an approximate duration in sec.
52
- * <ProgressBar duration={30} />
52
+ * <ProgressBar simulated={{
53
+ * seconds: 30,
54
+ * onTimeout: () => console.log("Oops, this is taking more time than expected!")
55
+ * }}
56
+ * />
53
57
  *
54
58
  * @example
55
59
  * // As a step indicator for forms, questionnaires, etc.
56
60
  * <ProgressBar value={2} valueMax={7} />
57
61
  */
58
62
  exports.ProgressBar = (0, react_1.forwardRef)((_a, ref) => {
59
- var { size = "medium", value = 0, valueMax = 100, "aria-labelledby": ariaLabelledBy, "aria-label": ariaLabel, className } = _a, rest = __rest(_a, ["size", "value", "valueMax", "aria-labelledby", "aria-label", "className"]);
63
+ var { size = "medium", value = 0, valueMax = 100, "aria-labelledby": ariaLabelledBy, "aria-label": ariaLabel, className, simulated } = _a, rest = __rest(_a, ["size", "value", "valueMax", "aria-labelledby", "aria-label", "className", "simulated"]);
60
64
  const translate = 100 - (Math.round(value) / valueMax) * 100;
61
- const duration = undefined;
62
- return (react_1.default.createElement("div", Object.assign({ ref: ref, className: (0, clsx_1.default)("navds-progress-bar", `navds-progress-bar--${size}`, className), "aria-valuemax": duration ? 0 : Math.round(valueMax), "aria-valuenow": duration ? 0 : Math.round(value), "aria-valuetext": duration
63
- ? "Fremdrift kan ikke beregnes"
65
+ const onTimeoutRef = (0, react_1.useRef)();
66
+ onTimeoutRef.current = simulated === null || simulated === void 0 ? void 0 : simulated.onTimeout;
67
+ react_1.default.useEffect(() => {
68
+ if ((simulated === null || simulated === void 0 ? void 0 : simulated.seconds) && onTimeoutRef.current) {
69
+ const timeout = setTimeout(onTimeoutRef.current, simulated.seconds * 1000);
70
+ return () => clearTimeout(timeout);
71
+ }
72
+ }, [simulated === null || simulated === void 0 ? void 0 : simulated.seconds]);
73
+ return (react_1.default.createElement("div", Object.assign({ ref: ref, className: (0, clsx_1.default)("navds-progress-bar", `navds-progress-bar--${size}`, className), "aria-valuemax": (simulated === null || simulated === void 0 ? void 0 : simulated.seconds) ? 0 : Math.round(valueMax), "aria-valuenow": (simulated === null || simulated === void 0 ? void 0 : simulated.seconds) ? 0 : Math.round(value), "aria-valuetext": (simulated === null || simulated === void 0 ? void 0 : simulated.seconds)
74
+ ? `Fremdrift kan ikke beregnes, antatt tid er: ${simulated === null || simulated === void 0 ? void 0 : simulated.seconds} sekunder`
64
75
  : `${Math.round(value)} av ${Math.round(valueMax)}`, role: "progressbar", "aria-labelledby": ariaLabelledBy, "aria-label": ariaLabel }, rest),
65
76
  react_1.default.createElement("div", { className: (0, clsx_1.default)("navds-progress-bar__foreground", {
66
- "navds-progress-bar__foreground--indeterminate": Number.isInteger(duration),
77
+ "navds-progress-bar__foreground--indeterminate": Number.isInteger(simulated === null || simulated === void 0 ? void 0 : simulated.seconds),
67
78
  }), style: {
68
- "--__ac-progress-bar-duration": Number.isInteger(duration)
69
- ? `${duration}s`
79
+ "--__ac-progress-bar-simulated": Number.isInteger(simulated === null || simulated === void 0 ? void 0 : simulated.seconds)
80
+ ? `${simulated === null || simulated === void 0 ? void 0 : simulated.seconds}s`
70
81
  : undefined,
71
- "--__ac-progress-bar-delay": `${duration === 0 ? 0 : 4}s`,
72
82
  "--__ac-progress-bar-translate": `-${translate}%`,
73
83
  } })));
74
84
  });
@@ -1 +1 @@
1
- {"version":3,"file":"ProgressBar.js","sourceRoot":"","sources":["../../src/progress-bar/ProgressBar.tsx"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,gDAAsB;AACtB,+CAA0D;AAqD1D;;;;;;;;;;;;;;GAcG;AACU,QAAA,WAAW,GAAG,IAAA,kBAAU,EACnC,CACE,EAQC,EACD,GAAG,EACH,EAAE;QAVF,EACE,IAAI,GAAG,QAAQ,EACf,KAAK,GAAG,CAAC,EACT,QAAQ,GAAG,GAAG,EACd,iBAAiB,EAAE,cAAc,EACjC,YAAY,EAAE,SAAS,EACvB,SAAS,OAEV,EADI,IAAI,cAPT,2EAQC,CADQ;IAIT,MAAM,SAAS,GAAG,GAAG,GAAG,CAAC,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,GAAG,QAAQ,CAAC,GAAG,GAAG,CAAC;IAC7D,MAAM,QAAQ,GAAG,SAAS,CAAC;IAE3B,OAAO,CACL,qDACE,GAAG,EAAE,GAAG,EACR,SAAS,EAAE,IAAA,cAAE,EACX,oBAAoB,EACpB,uBAAuB,IAAI,EAAE,EAC7B,SAAS,CACV,mBACc,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,QAAQ,CAAC,mBACnC,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,oBAE7C,QAAQ;YACN,CAAC,CAAC,6BAA6B;YAC/B,CAAC,CAAC,GAAG,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,OAAO,IAAI,CAAC,KAAK,CAAC,QAAQ,CAAC,EAAE,EAEvD,IAAI,EAAC,aAAa,qBACD,cAAc,gBACnB,SAAS,IACjB,IAAI;QAER,uCACE,SAAS,EAAE,IAAA,cAAE,EAAC,gCAAgC,EAAE;gBAC9C,+CAA+C,EAC7C,MAAM,CAAC,SAAS,CAAC,QAAQ,CAAC;aAC7B,CAAC,EACF,KAAK,EAAE;gBACL,8BAA8B,EAAE,MAAM,CAAC,SAAS,CAAC,QAAQ,CAAC;oBACxD,CAAC,CAAC,GAAG,QAAQ,GAAG;oBAChB,CAAC,CAAC,SAAS;gBACb,2BAA2B,EAAE,GAAG,QAAQ,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG;gBACzD,+BAA+B,EAAE,IAAI,SAAS,GAAG;aAClD,GACD,CACE,CACP,CAAC;AACJ,CAAC,CACF,CAAC;AAEF,kBAAe,mBAAW,CAAC"}
1
+ {"version":3,"file":"ProgressBar.js","sourceRoot":"","sources":["../../src/progress-bar/ProgressBar.tsx"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,gDAAsB;AACtB,+CAAkE;AA4DlE;;;;;;;;;;;;;;;;;;GAkBG;AACU,QAAA,WAAW,GAAG,IAAA,kBAAU,EACnC,CACE,EASC,EACD,GAAG,EACH,EAAE;QAXF,EACE,IAAI,GAAG,QAAQ,EACf,KAAK,GAAG,CAAC,EACT,QAAQ,GAAG,GAAG,EACd,iBAAiB,EAAE,cAAc,EACjC,YAAY,EAAE,SAAS,EACvB,SAAS,EACT,SAAS,OAEV,EADI,IAAI,cART,wFASC,CADQ;IAIT,MAAM,SAAS,GAAG,GAAG,GAAG,CAAC,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,GAAG,QAAQ,CAAC,GAAG,GAAG,CAAC;IAC7D,MAAM,YAAY,GAAG,IAAA,cAAM,GAAc,CAAC;IAC1C,YAAY,CAAC,OAAO,GAAG,SAAS,aAAT,SAAS,uBAAT,SAAS,CAAE,SAAS,CAAC;IAE5C,eAAK,CAAC,SAAS,CAAC,GAAG,EAAE;QACnB,IAAI,CAAA,SAAS,aAAT,SAAS,uBAAT,SAAS,CAAE,OAAO,KAAI,YAAY,CAAC,OAAO,EAAE,CAAC;YAC/C,MAAM,OAAO,GAAG,UAAU,CACxB,YAAY,CAAC,OAAO,EACpB,SAAS,CAAC,OAAO,GAAG,IAAI,CACzB,CAAC;YACF,OAAO,GAAG,EAAE,CAAC,YAAY,CAAC,OAAO,CAAC,CAAC;QACrC,CAAC;IACH,CAAC,EAAE,CAAC,SAAS,aAAT,SAAS,uBAAT,SAAS,CAAE,OAAO,CAAC,CAAC,CAAC;IAEzB,OAAO,CACL,qDACE,GAAG,EAAE,GAAG,EACR,SAAS,EAAE,IAAA,cAAE,EACX,oBAAoB,EACpB,uBAAuB,IAAI,EAAE,EAC7B,SAAS,CACV,mBACc,CAAA,SAAS,aAAT,SAAS,uBAAT,SAAS,CAAE,OAAO,EAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,QAAQ,CAAC,mBAC7C,CAAA,SAAS,aAAT,SAAS,uBAAT,SAAS,CAAE,OAAO,EAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,oBAEvD,CAAA,SAAS,aAAT,SAAS,uBAAT,SAAS,CAAE,OAAO;YAChB,CAAC,CAAC,+CAA+C,SAAS,aAAT,SAAS,uBAAT,SAAS,CAAE,OAAO,WAAW;YAC9E,CAAC,CAAC,GAAG,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,OAAO,IAAI,CAAC,KAAK,CAAC,QAAQ,CAAC,EAAE,EAEvD,IAAI,EAAC,aAAa,qBACD,cAAc,gBACnB,SAAS,IACjB,IAAI;QAER,uCACE,SAAS,EAAE,IAAA,cAAE,EAAC,gCAAgC,EAAE;gBAC9C,+CAA+C,EAAE,MAAM,CAAC,SAAS,CAC/D,SAAS,aAAT,SAAS,uBAAT,SAAS,CAAE,OAAO,CACnB;aACF,CAAC,EACF,KAAK,EAAE;gBACL,+BAA+B,EAAE,MAAM,CAAC,SAAS,CAC/C,SAAS,aAAT,SAAS,uBAAT,SAAS,CAAE,OAAO,CACnB;oBACC,CAAC,CAAC,GAAG,SAAS,aAAT,SAAS,uBAAT,SAAS,CAAE,OAAO,GAAG;oBAC1B,CAAC,CAAC,SAAS;gBACb,+BAA+B,EAAE,IAAI,SAAS,GAAG;aAClD,GACD,CACE,CACP,CAAC;AACJ,CAAC,CACF,CAAC;AAEF,kBAAe,mBAAW,CAAC"}
@@ -3,14 +3,18 @@ import { TabsProps } from "./Tabs.types";
3
3
  import { useTabs } from "./useTabs";
4
4
  export declare const TabsDescendantsProvider: import("react").Provider<import("../util/hooks/descendants/descendant").DescendantsManager<HTMLButtonElement, {
5
5
  value: string;
6
- }>>, useTabsDescendantsContext: () => import("../util/hooks/descendants/descendant").DescendantsManager<HTMLButtonElement, {
6
+ }>>, useTabsDescendantsContext: <S extends boolean = true>(strict?: S) => S extends true ? import("../util/hooks/descendants/descendant").DescendantsManager<HTMLButtonElement, {
7
7
  value: string;
8
- }>, useTabsDescendants: () => import("../util/hooks/descendants/descendant").DescendantsManager<HTMLButtonElement, {
8
+ }> : import("../util/hooks/descendants/descendant").DescendantsManager<HTMLButtonElement, {
9
+ value: string;
10
+ }> | undefined, useTabsDescendants: () => import("../util/hooks/descendants/descendant").DescendantsManager<HTMLButtonElement, {
9
11
  value: string;
10
12
  }>, useTabsDescendant: (options?: import("../util/hooks/descendants/descendant").DescendantOptions<{
11
13
  value: string;
12
14
  }> | undefined) => {
13
- descendants: import("../util/hooks/descendants/descendant").DescendantsManager<HTMLElement, Record<string, any>>;
15
+ descendants: import("../util/hooks/descendants/descendant").DescendantsManager<HTMLButtonElement, {
16
+ value: string;
17
+ }>;
14
18
  index: number;
15
19
  enabledIndex: number;
16
20
  register: (instance: HTMLButtonElement | null) => void;
@@ -10,5 +10,6 @@ _b = (0, create_context_1.createContext)({
10
10
  name: "TabsContext",
11
11
  hookName: "useTabsContext",
12
12
  providerName: "TabsProvider",
13
+ errorMessage: "Tabs.List, Tabs.Tag and Tabs.Panel needs to be wrapped within <Tabs>",
13
14
  }), exports.TabsProvider = _b[0], exports.useTabsContext = _b[1];
14
15
  //# sourceMappingURL=Tabs.context.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"Tabs.context.js","sourceRoot":"","sources":["../../src/tabs/Tabs.context.ts"],"names":[],"mappings":";;;;AAAA,2DAAuD;AACvD,2EAAkF;AAIrE,KAKT,IAAA,uCAAuB,GAAwC,EAJjE,+BAAuB,UACvB,iCAAyB,UACzB,0BAAkB,UAClB,yBAAiB,SACiD;AAQpE,mBAAmB;AACN,KAAiC,IAAA,8BAAa,EAAoB;IAC7E,IAAI,EAAE,aAAa;IACnB,QAAQ,EAAE,gBAAgB;IAC1B,YAAY,EAAE,cAAc;CAC7B,CAAC,EAJY,oBAAY,UAAE,sBAAc,SAIvC"}
1
+ {"version":3,"file":"Tabs.context.js","sourceRoot":"","sources":["../../src/tabs/Tabs.context.ts"],"names":[],"mappings":";;;;AAAA,2DAAuD;AACvD,2EAAkF;AAIrE,KAKT,IAAA,uCAAuB,GAAwC,EAJjE,+BAAuB,UACvB,iCAAyB,UACzB,0BAAkB,UAClB,yBAAiB,SACiD;AAQpE,mBAAmB;AACN,KAAiC,IAAA,8BAAa,EAAoB;IAC7E,IAAI,EAAE,aAAa;IACnB,QAAQ,EAAE,gBAAgB;IAC1B,YAAY,EAAE,cAAc;IAC5B,YAAY,EACV,sEAAsE;CACzE,CAAC,EANY,oBAAY,UAAE,sBAAc,SAMvC"}
@@ -4,5 +4,5 @@ export declare const dayLabels: (start: Date, end: Date, totalDays: number, dire
4
4
  export declare const monthLabels: (start: Date, end: Date, direction: "left" | "right", template?: string) => AxisLabel[];
5
5
  export declare const yearLabels: (start: Date, end: Date, direction: "left" | "right", template?: string) => AxisLabel[];
6
6
  export declare const AxisLabels: ({ templates, }: {
7
- templates?: AxisLabelTemplates | undefined;
7
+ templates?: AxisLabelTemplates;
8
8
  }) => React.JSX.Element;
@@ -7,14 +7,18 @@ interface ToggleContextProps {
7
7
  export declare const ToggleGroupContext: import("react").Context<ToggleContextProps | null>;
8
8
  export declare const ToggleGroupDescendantsProvider: import("react").Provider<import("../util/hooks/descendants/descendant").DescendantsManager<HTMLButtonElement, {
9
9
  value: string;
10
- }>>, useToggleGroupDescendantsContext: () => import("../util/hooks/descendants/descendant").DescendantsManager<HTMLButtonElement, {
10
+ }>>, useToggleGroupDescendantsContext: <S extends boolean = true>(strict?: S) => S extends true ? import("../util/hooks/descendants/descendant").DescendantsManager<HTMLButtonElement, {
11
11
  value: string;
12
- }>, useToggleGroupDescendants: () => import("../util/hooks/descendants/descendant").DescendantsManager<HTMLButtonElement, {
12
+ }> : import("../util/hooks/descendants/descendant").DescendantsManager<HTMLButtonElement, {
13
+ value: string;
14
+ }> | undefined, useToggleGroupDescendants: () => import("../util/hooks/descendants/descendant").DescendantsManager<HTMLButtonElement, {
13
15
  value: string;
14
16
  }>, useToggleGroupDescendant: (options?: import("../util/hooks/descendants/descendant").DescendantOptions<{
15
17
  value: string;
16
18
  }> | undefined) => {
17
- descendants: import("../util/hooks/descendants/descendant").DescendantsManager<HTMLElement, Record<string, any>>;
19
+ descendants: import("../util/hooks/descendants/descendant").DescendantsManager<HTMLButtonElement, {
20
+ value: string;
21
+ }>;
18
22
  index: number;
19
23
  enabledIndex: number;
20
24
  register: (instance: HTMLButtonElement | null) => void;
@@ -12,5 +12,6 @@ _b = (0, create_context_1.createContext)({
12
12
  name: "ToggleGroupContext",
13
13
  hookName: "useToggleGroupContext",
14
14
  providerName: "ToggleGroupProvider",
15
+ errorMessage: "<ToggleGroup.Item> needs to be wrapped within <ToggleGroup>",
15
16
  }), exports.ToggleGroupProvider = _b[0], exports.useToggleGroupContext = _b[1];
16
17
  //# sourceMappingURL=ToggleGroup.context.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"ToggleGroup.context.js","sourceRoot":"","sources":["../../src/toggle-group/ToggleGroup.context.ts"],"names":[],"mappings":";;;;AAAA,iCAA4D;AAC5D,2DAAuD;AACvD,2EAAkF;AAQrE,QAAA,kBAAkB,GAAG,IAAA,qBAAkB,EAClD,IAAI,CACL,CAAC;AAEW,KAKT,IAAA,uCAAuB,GAAwC,EAJjE,sCAA8B,UAC9B,wCAAgC,UAChC,iCAAyB,UACzB,gCAAwB,SAC0C;AAKpE,mBAAmB;AACN,KACX,IAAA,8BAAa,EAA2B;IACtC,IAAI,EAAE,oBAAoB;IAC1B,QAAQ,EAAE,uBAAuB;IACjC,YAAY,EAAE,qBAAqB;CACpC,CAAC,EALU,2BAAmB,UAAE,6BAAqB,SAKnD"}
1
+ {"version":3,"file":"ToggleGroup.context.js","sourceRoot":"","sources":["../../src/toggle-group/ToggleGroup.context.ts"],"names":[],"mappings":";;;;AAAA,iCAA4D;AAC5D,2DAAuD;AACvD,2EAAkF;AAQrE,QAAA,kBAAkB,GAAG,IAAA,qBAAkB,EAClD,IAAI,CACL,CAAC;AAEW,KAKT,IAAA,uCAAuB,GAAwC,EAJjE,sCAA8B,UAC9B,wCAAgC,UAChC,iCAAyB,UACzB,gCAAwB,SAC0C;AAKpE,mBAAmB;AACN,KACX,IAAA,8BAAa,EAA2B;IACtC,IAAI,EAAE,oBAAoB;IAC1B,QAAQ,EAAE,uBAAuB;IACjC,YAAY,EAAE,qBAAqB;IACnC,YAAY,EAAE,6DAA6D;CAC5E,CAAC,EANU,2BAAmB,UAAE,6BAAqB,SAMnD"}
@@ -6,8 +6,8 @@ import { DescendantOptions, DescendantsManager } from "./descendant";
6
6
  /**
7
7
  * Provides strongly typed versions of the context provider and hooks above.
8
8
  */
9
- export declare function createDescendantContext<T extends HTMLElement = HTMLElement, K extends Record<string, any> = object>(): readonly [React.Provider<DescendantsManager<T, K>>, () => DescendantsManager<T, K>, () => DescendantsManager<T, K>, (options?: DescendantOptions<K>) => {
10
- descendants: DescendantsManager<HTMLElement, Record<string, any>>;
9
+ export declare function createDescendantContext<T extends HTMLElement = HTMLElement, K extends Record<string, any> = object>(): readonly [React.Provider<DescendantsManager<T, K>>, <S extends boolean = true>(strict?: S) => S extends true ? DescendantsManager<T, K> : DescendantsManager<T, K> | undefined, () => DescendantsManager<T, K>, (options?: DescendantOptions<K>) => {
10
+ descendants: DescendantsManager<T, K>;
11
11
  index: number;
12
12
  enabledIndex: number;
13
13
  register: (instance: T | null) => void;
@@ -33,67 +33,64 @@ const useClientLayoutEffect_1 = require("../useClientLayoutEffect");
33
33
  const useMergeRefs_1 = require("../useMergeRefs");
34
34
  const descendant_1 = require("./descendant");
35
35
  const utils_1 = require("./utils");
36
- /**
37
- * @internal
38
- * Initializing DescendantsManager
39
- */
40
- function useDescendants() {
41
- const descendants = (0, react_1.useRef)(new descendant_1.DescendantsManager()).current;
42
- return descendants;
43
- }
44
- const [DescendantsContextProvider, useDescendantsContext] = (0, create_context_1.createContext)({
45
- name: "DescendantsProvider",
46
- errorMessage: "useDescendantsContext must be used within DescendantsProvider",
47
- });
48
- /**
49
- * @internal
50
- * This hook provides information to descendant component:
51
- * - Index compared to other descendants
52
- * - ref callback to register the descendant
53
- * - Its enabled index compared to other enabled descendants
54
- */
55
- function useDescendant(options) {
56
- const descendants = useDescendantsContext();
57
- const [index, setIndex] = (0, react_1.useState)(-1);
58
- const ref = (0, react_1.useRef)(null);
59
- (0, useClientLayoutEffect_1.useClientLayoutEffect)(() => {
60
- return () => {
61
- if (!ref.current)
62
- return;
63
- descendants.unregister(ref.current);
64
- };
65
- }, []);
66
- (0, useClientLayoutEffect_1.useClientLayoutEffect)(() => {
67
- if (!ref.current)
68
- return;
69
- const dataIndex = Number(ref.current.dataset["index"]);
70
- if (index != dataIndex && !Number.isNaN(dataIndex)) {
71
- setIndex(dataIndex);
72
- }
73
- });
74
- const refCallback = options
75
- ? (0, utils_1.cast)(descendants.register(options))
76
- : (0, utils_1.cast)(descendants.register);
77
- return {
78
- descendants,
79
- index,
80
- enabledIndex: descendants.enabledIndexOf(ref.current),
81
- register: (0, useMergeRefs_1.mergeRefs)([refCallback, ref]),
82
- };
83
- }
84
36
  /**
85
37
  * Provides strongly typed versions of the context provider and hooks above.
86
38
  */
87
39
  function createDescendantContext() {
40
+ const [DescendantsContextProvider, useDescendantsContext] = (0, create_context_1.createContext)({
41
+ name: "DescendantsProvider",
42
+ errorMessage: "useDescendantsContext must be used within DescendantsProvider",
43
+ });
88
44
  const ContextProvider = (0, utils_1.cast)((props) => (react_1.default.createElement(DescendantsContextProvider, Object.assign({}, props.value), props.children)));
89
- const _useDescendantsContext = () => (0, utils_1.cast)(useDescendantsContext());
90
- const _useDescendant = (options) => useDescendant(options);
91
- const _useDescendants = () => useDescendants();
45
+ /**
46
+ * @internal
47
+ * This hook provides information to descendant component:
48
+ * - Index compared to other descendants
49
+ * - ref callback to register the descendant
50
+ * - Its enabled index compared to other enabled descendants
51
+ */
52
+ function _useDescendant(options) {
53
+ const descendants = useDescendantsContext();
54
+ const [index, setIndex] = (0, react_1.useState)(-1);
55
+ const ref = (0, react_1.useRef)(null);
56
+ (0, useClientLayoutEffect_1.useClientLayoutEffect)(() => {
57
+ return () => {
58
+ if (!ref.current)
59
+ return;
60
+ descendants.unregister(ref.current);
61
+ };
62
+ }, []);
63
+ (0, useClientLayoutEffect_1.useClientLayoutEffect)(() => {
64
+ if (!ref.current)
65
+ return;
66
+ const dataIndex = Number(ref.current.dataset["index"]);
67
+ if (index != dataIndex && !Number.isNaN(dataIndex)) {
68
+ setIndex(dataIndex);
69
+ }
70
+ });
71
+ const refCallback = options
72
+ ? (0, utils_1.cast)(descendants.register(options))
73
+ : (0, utils_1.cast)(descendants.register);
74
+ return {
75
+ descendants,
76
+ index,
77
+ enabledIndex: descendants.enabledIndexOf(ref.current),
78
+ register: (0, useMergeRefs_1.mergeRefs)([refCallback, ref]),
79
+ };
80
+ }
81
+ /**
82
+ * @internal
83
+ * Initializing DescendantsManager
84
+ */
85
+ function _useDescendants() {
86
+ const descendants = (0, react_1.useRef)(new descendant_1.DescendantsManager()).current;
87
+ return descendants;
88
+ }
92
89
  return [
93
90
  // context provider
94
91
  ContextProvider,
95
92
  // call this when you need to read from context
96
- _useDescendantsContext,
93
+ useDescendantsContext,
97
94
  // descendants state information, to be called and passed to `ContextProvider`
98
95
  _useDescendants,
99
96
  // descendant index information
@@ -1 +1 @@
1
- {"version":3,"file":"useDescendant.js","sourceRoot":"","sources":["../../../../src/util/hooks/descendants/useDescendant.tsx"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;AAAA;;GAEG;AACH,+CAAgD;AAChD,yDAAqD;AACrD,oEAAiE;AACjE,kDAA4C;AAC5C,6CAAqE;AACrE,mCAA+B;AAE/B;;;GAGG;AACH,SAAS,cAAc;IAIrB,MAAM,WAAW,GAAG,IAAA,cAAM,EAAC,IAAI,+BAAkB,EAAQ,CAAC,CAAC,OAAO,CAAC;IAEnE,OAAO,WAAW,CAAC;AACrB,CAAC;AAED,MAAM,CAAC,0BAA0B,EAAE,qBAAqB,CAAC,GAAG,IAAA,8BAAa,EAEvE;IACA,IAAI,EAAE,qBAAqB;IAC3B,YAAY,EAAE,+DAA+D;CAC9E,CAAC,CAAC;AAEH;;;;;;GAMG;AACH,SAAS,aAAa,CAGpB,OAA8B;IAC9B,MAAM,WAAW,GAAG,qBAAqB,EAAE,CAAC;IAC5C,MAAM,CAAC,KAAK,EAAE,QAAQ,CAAC,GAAG,IAAA,gBAAQ,EAAC,CAAC,CAAC,CAAC,CAAC;IACvC,MAAM,GAAG,GAAG,IAAA,cAAM,EAAI,IAAI,CAAC,CAAC;IAE5B,IAAA,6CAAqB,EAAC,GAAG,EAAE;QACzB,OAAO,GAAG,EAAE;YACV,IAAI,CAAC,GAAG,CAAC,OAAO;gBAAE,OAAO;YACzB,WAAW,CAAC,UAAU,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC;QACtC,CAAC,CAAC;IACJ,CAAC,EAAE,EAAE,CAAC,CAAC;IAEP,IAAA,6CAAqB,EAAC,GAAG,EAAE;QACzB,IAAI,CAAC,GAAG,CAAC,OAAO;YAAE,OAAO;QACzB,MAAM,SAAS,GAAG,MAAM,CAAC,GAAG,CAAC,OAAO,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC,CAAC;QACvD,IAAI,KAAK,IAAI,SAAS,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,SAAS,CAAC,EAAE,CAAC;YACnD,QAAQ,CAAC,SAAS,CAAC,CAAC;QACtB,CAAC;IACH,CAAC,CAAC,CAAC;IAEH,MAAM,WAAW,GAAG,OAAO;QACzB,CAAC,CAAC,IAAA,YAAI,EAAuB,WAAW,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC;QAC3D,CAAC,CAAC,IAAA,YAAI,EAAuB,WAAW,CAAC,QAAQ,CAAC,CAAC;IAErD,OAAO;QACL,WAAW;QACX,KAAK;QACL,YAAY,EAAE,WAAW,CAAC,cAAc,CAAC,GAAG,CAAC,OAAO,CAAC;QACrD,QAAQ,EAAE,IAAA,wBAAS,EAAC,CAAC,WAAW,EAAE,GAAG,CAAC,CAAC;KACxC,CAAC;AACJ,CAAC;AAED;;GAEG;AACH,SAAgB,uBAAuB;IAIrC,MAAM,eAAe,GAAG,IAAA,YAAI,EAC1B,CAAC,KAAK,EAAE,EAAE,CAAC,CACT,8BAAC,0BAA0B,oBAAK,KAAK,CAAC,KAAK,GACxC,KAAK,CAAC,QAAQ,CACY,CAC9B,CACF,CAAC;IAEF,MAAM,sBAAsB,GAAG,GAAG,EAAE,CAClC,IAAA,YAAI,EAA2B,qBAAqB,EAAE,CAAC,CAAC;IAE1D,MAAM,cAAc,GAAG,CAAC,OAA8B,EAAE,EAAE,CACxD,aAAa,CAAO,OAAO,CAAC,CAAC;IAE/B,MAAM,eAAe,GAAG,GAAG,EAAE,CAAC,cAAc,EAAQ,CAAC;IAErD,OAAO;QACL,mBAAmB;QACnB,eAAe;QACf,+CAA+C;QAC/C,sBAAsB;QACtB,8EAA8E;QAC9E,eAAe;QACf,+BAA+B;QAC/B,cAAc;KACN,CAAC;AACb,CAAC;AA9BD,0DA8BC"}
1
+ {"version":3,"file":"useDescendant.js","sourceRoot":"","sources":["../../../../src/util/hooks/descendants/useDescendant.tsx"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;AAAA;;GAEG;AACH,+CAAgD;AAChD,yDAAqD;AACrD,oEAAiE;AACjE,kDAA4C;AAC5C,6CAAqE;AACrE,mCAA+B;AAE/B;;GAEG;AACH,SAAgB,uBAAuB;IAIrC,MAAM,CAAC,0BAA0B,EAAE,qBAAqB,CAAC,GAAG,IAAA,8BAAa,EAEvE;QACA,IAAI,EAAE,qBAAqB;QAC3B,YAAY,EACV,+DAA+D;KAClE,CAAC,CAAC;IAEH,MAAM,eAAe,GAAG,IAAA,YAAI,EAC1B,CAAC,KAAK,EAAE,EAAE,CAAC,CACT,8BAAC,0BAA0B,oBAAK,KAAK,CAAC,KAAK,GACxC,KAAK,CAAC,QAAQ,CACY,CAC9B,CACF,CAAC;IAEF;;;;;;OAMG;IACH,SAAS,cAAc,CAAC,OAA8B;QACpD,MAAM,WAAW,GAAG,qBAAqB,EAAE,CAAC;QAC5C,MAAM,CAAC,KAAK,EAAE,QAAQ,CAAC,GAAG,IAAA,gBAAQ,EAAC,CAAC,CAAC,CAAC,CAAC;QACvC,MAAM,GAAG,GAAG,IAAA,cAAM,EAAI,IAAI,CAAC,CAAC;QAE5B,IAAA,6CAAqB,EAAC,GAAG,EAAE;YACzB,OAAO,GAAG,EAAE;gBACV,IAAI,CAAC,GAAG,CAAC,OAAO;oBAAE,OAAO;gBACzB,WAAW,CAAC,UAAU,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC;YACtC,CAAC,CAAC;QACJ,CAAC,EAAE,EAAE,CAAC,CAAC;QAEP,IAAA,6CAAqB,EAAC,GAAG,EAAE;YACzB,IAAI,CAAC,GAAG,CAAC,OAAO;gBAAE,OAAO;YACzB,MAAM,SAAS,GAAG,MAAM,CAAC,GAAG,CAAC,OAAO,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC,CAAC;YACvD,IAAI,KAAK,IAAI,SAAS,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,SAAS,CAAC,EAAE,CAAC;gBACnD,QAAQ,CAAC,SAAS,CAAC,CAAC;YACtB,CAAC;QACH,CAAC,CAAC,CAAC;QAEH,MAAM,WAAW,GAAG,OAAO;YACzB,CAAC,CAAC,IAAA,YAAI,EAAuB,WAAW,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC;YAC3D,CAAC,CAAC,IAAA,YAAI,EAAuB,WAAW,CAAC,QAAQ,CAAC,CAAC;QAErD,OAAO;YACL,WAAW;YACX,KAAK;YACL,YAAY,EAAE,WAAW,CAAC,cAAc,CAAC,GAAG,CAAC,OAAO,CAAC;YACrD,QAAQ,EAAE,IAAA,wBAAS,EAAC,CAAC,WAAW,EAAE,GAAG,CAAC,CAAC;SACxC,CAAC;IACJ,CAAC;IAED;;;OAGG;IACH,SAAS,eAAe;QACtB,MAAM,WAAW,GAAG,IAAA,cAAM,EAAC,IAAI,+BAAkB,EAAQ,CAAC,CAAC,OAAO,CAAC;QAEnE,OAAO,WAAW,CAAC;IACrB,CAAC;IAED,OAAO;QACL,mBAAmB;QACnB,eAAe;QACf,+CAA+C;QAC/C,qBAAqB;QACrB,8EAA8E;QAC9E,eAAe;QACf,+BAA+B;QAC/B,cAAc;KACN,CAAC;AACb,CAAC;AA/ED,0DA+EC"}
@@ -0,0 +1,14 @@
1
+ /// <reference types="react" />
2
+ export type AsChild = {
3
+ children: React.ReactElement;
4
+ /**
5
+ * Renders the children as a child of the component. Merges the props of the component with the props of the child.
6
+ */
7
+ asChild: true;
8
+ } | {
9
+ children: React.ReactNode;
10
+ /**
11
+ * Renders the children as a child of the component. Merges the props of the component with the props of the child.
12
+ */
13
+ asChild?: false;
14
+ };
@@ -0,0 +1,3 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ //# sourceMappingURL=AsChild.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"AsChild.js","sourceRoot":"","sources":["../../../src/util/types/AsChild.ts"],"names":[],"mappings":""}
@@ -1,5 +1,6 @@
1
1
  import React, { HTMLAttributes } from "react";
2
2
  import Bubble from "./Bubble.js";
3
+ export declare const VARIANTS: readonly ["subtle", "info", "neutral"];
3
4
  export declare const POSITIONS: readonly ["left", "right"];
4
5
  export declare const SIZES: readonly ["medium", "small"];
5
6
  export interface ChatProps extends HTMLAttributes<HTMLDivElement> {
@@ -24,7 +25,7 @@ export interface ChatProps extends HTMLAttributes<HTMLDivElement> {
24
25
  * Avoid using the same background as the surface behind Chat.
25
26
  * @default "neutral"
26
27
  */
27
- variant?: "subtle" | "info" | "neutral";
28
+ variant?: (typeof VARIANTS)[number];
28
29
  /**
29
30
  * Positions avatar and bubbles.
30
31
  * @default "left"
package/esm/chat/Chat.js CHANGED
@@ -13,6 +13,7 @@ import cl from "clsx";
13
13
  import React, { forwardRef } from "react";
14
14
  import { BodyLong } from "../typography/index.js";
15
15
  import Bubble from "./Bubble.js";
16
+ export const VARIANTS = ["subtle", "info", "neutral"];
16
17
  export const POSITIONS = ["left", "right"];
17
18
  export const SIZES = ["medium", "small"];
18
19
  /**
@@ -1 +1 @@
1
- {"version":3,"file":"Chat.js","sourceRoot":"","sources":["../../src/chat/Chat.tsx"],"names":[],"mappings":";;;;;;;;;;;AAAA,OAAO,EAAE,MAAM,MAAM,CAAC;AACtB,OAAO,KAAK,EAAE,EAAkB,UAAU,EAAE,MAAM,OAAO,CAAC;AAC1D,OAAO,EAAE,QAAQ,EAAE,MAAM,eAAe,CAAC;AACzC,OAAO,MAAM,MAAM,UAAU,CAAC;AAE9B,MAAM,CAAC,MAAM,SAAS,GAAG,CAAC,MAAM,EAAE,OAAO,CAAU,CAAC;AACpD,MAAM,CAAC,MAAM,KAAK,GAAG,CAAC,QAAQ,EAAE,OAAO,CAAU,CAAC;AAoDlD;;;;;;;;;;;;;;;;GAgBG;AACH,MAAM,CAAC,MAAM,IAAI,GAAG,UAAU,CAC5B,CACE,EAWY,EACZ,GAAG,EACH,EAAE;QAbF,EACE,QAAQ,EACR,SAAS,EACT,IAAI,EACJ,SAAS,EACT,MAAM,EACN,QAAQ,GAAG,MAAM,EACjB,OAAO,GAAG,SAAS,EACnB,eAAe,EACf,IAAI,GAAG,QAAQ,OAEL,EADP,IAAI,cAVT,0GAWC,CADQ;IAGN,OAAA,CACH,2CACE,GAAG,EAAE,GAAG,EACR,SAAS,EAAE,EAAE,CACX,YAAY,EACZ,SAAS,EACT,eAAe,QAAQ,EAAE,EACzB,wBAAwB,eAAe,aAAf,eAAe,cAAf,eAAe,GAAI,QAAQ,EAAE,EACrD,eAAe,IAAI,EAAE,EACrB,eAAe,OAAO,EAAE,CACzB,IACG,IAAI;QAEP,MAAM,IAAI,CACT,6BAAK,SAAS,EAAC,oBAAoB,yBAChC,MAAM,CACH,CACP;QACD,4BAAI,SAAS,EAAC,4BAA4B,IACvC,KAAK,CAAC,QAAQ,CAAC,GAAG,CAAC,QAAQ,EAAE,CAAC,KAAK,EAAE,CAAC,EAAE,EAAE;YACzC,IAAI,KAAK,CAAC,cAAc,CAAC,KAAK,CAAC,EAAE,CAAC;gBAChC,OAAO,CACL,oBAAC,QAAQ,IAAC,EAAE,EAAC,IAAI,EAAC,IAAI,EAAE,IAAI,IACzB,KAAK,CAAC,YAAY,CAAC,KAAK,kBACvB,IAAI,EAAE,IAAI,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,SAAS,EACxC,SAAS,EAAE,SAAS,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,SAAS,IACpD,KAAK,CAAC,KAAK,EACd,CACO,CACZ,CAAC;YACJ,CAAC;QACH,CAAC,CAAC,CACC,CACD,CACP,CAAA;CAAA,CACe,CAAC;AAEnB,IAAI,CAAC,MAAM,GAAG,MAAM,CAAC;AAErB,eAAe,IAAI,CAAC"}
1
+ {"version":3,"file":"Chat.js","sourceRoot":"","sources":["../../src/chat/Chat.tsx"],"names":[],"mappings":";;;;;;;;;;;AAAA,OAAO,EAAE,MAAM,MAAM,CAAC;AACtB,OAAO,KAAK,EAAE,EAAkB,UAAU,EAAE,MAAM,OAAO,CAAC;AAC1D,OAAO,EAAE,QAAQ,EAAE,MAAM,eAAe,CAAC;AACzC,OAAO,MAAM,MAAM,UAAU,CAAC;AAE9B,MAAM,CAAC,MAAM,QAAQ,GAAG,CAAC,QAAQ,EAAE,MAAM,EAAE,SAAS,CAAU,CAAC;AAC/D,MAAM,CAAC,MAAM,SAAS,GAAG,CAAC,MAAM,EAAE,OAAO,CAAU,CAAC;AACpD,MAAM,CAAC,MAAM,KAAK,GAAG,CAAC,QAAQ,EAAE,OAAO,CAAU,CAAC;AAoDlD;;;;;;;;;;;;;;;;GAgBG;AACH,MAAM,CAAC,MAAM,IAAI,GAAG,UAAU,CAC5B,CACE,EAWY,EACZ,GAAG,EACH,EAAE;QAbF,EACE,QAAQ,EACR,SAAS,EACT,IAAI,EACJ,SAAS,EACT,MAAM,EACN,QAAQ,GAAG,MAAM,EACjB,OAAO,GAAG,SAAS,EACnB,eAAe,EACf,IAAI,GAAG,QAAQ,OAEL,EADP,IAAI,cAVT,0GAWC,CADQ;IAGN,OAAA,CACH,2CACE,GAAG,EAAE,GAAG,EACR,SAAS,EAAE,EAAE,CACX,YAAY,EACZ,SAAS,EACT,eAAe,QAAQ,EAAE,EACzB,wBAAwB,eAAe,aAAf,eAAe,cAAf,eAAe,GAAI,QAAQ,EAAE,EACrD,eAAe,IAAI,EAAE,EACrB,eAAe,OAAO,EAAE,CACzB,IACG,IAAI;QAEP,MAAM,IAAI,CACT,6BAAK,SAAS,EAAC,oBAAoB,yBAChC,MAAM,CACH,CACP;QACD,4BAAI,SAAS,EAAC,4BAA4B,IACvC,KAAK,CAAC,QAAQ,CAAC,GAAG,CAAC,QAAQ,EAAE,CAAC,KAAK,EAAE,CAAC,EAAE,EAAE;YACzC,IAAI,KAAK,CAAC,cAAc,CAAC,KAAK,CAAC,EAAE,CAAC;gBAChC,OAAO,CACL,oBAAC,QAAQ,IAAC,EAAE,EAAC,IAAI,EAAC,IAAI,EAAE,IAAI,IACzB,KAAK,CAAC,YAAY,CAAC,KAAK,kBACvB,IAAI,EAAE,IAAI,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,SAAS,EACxC,SAAS,EAAE,SAAS,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,SAAS,IACpD,KAAK,CAAC,KAAK,EACd,CACO,CACZ,CAAC;YACJ,CAAC;QACH,CAAC,CAAC,CACC,CACD,CACP,CAAA;CAAA,CACe,CAAC;AAEnB,IAAI,CAAC,MAAM,GAAG,MAAM,CAAC;AAErB,eAAe,IAAI,CAAC"}
@@ -22,7 +22,7 @@ export const DropdownCaption = ({ displayMonth, id }) => {
22
22
  goToMonth(startOfMonth(min([max([newMonth, fromDate]), toDate])));
23
23
  };
24
24
  const handleMonthChange = (e) => goToMonth(setMonth(startOfMonth(displayMonth), Number(e.target.value)));
25
- const years = getYears(fromDate, toDate, displayMonth.getFullYear());
25
+ const years = getYears(fromDate, toDate, displayMonth.getFullYear()).reverse();
26
26
  const months = getMonths(fromDate, toDate, displayMonth);
27
27
  const previousLabel = labelPrevious(previousMonth, { locale });
28
28
  const nextLabel = labelNext(nextMonth, { locale });
@@ -1 +1 @@
1
- {"version":3,"file":"DropdownCaption.js","sourceRoot":"","sources":["../../../../src/date/datepicker/parts/DropdownCaption.tsx"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"DropdownCaption.js","sourceRoot":"","sources":["../../../../src/date/datepicker/parts/DropdownCaption.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAE,GAAG,EAAE,GAAG,EAAE,QAAQ,EAAE,OAAO,EAAE,YAAY,EAAE,MAAM,UAAU,CAAC;AACrE,OAAO,KAAK,MAAM,OAAO,CAAC;AAC1B,OAAO,EAAgB,YAAY,EAAE,aAAa,EAAE,MAAM,kBAAkB,CAAC;AAC7E,OAAO,EAAE,aAAa,EAAE,cAAc,EAAE,MAAM,qBAAqB,CAAC;AACpE,OAAO,EAAE,MAAM,EAAE,MAAM,iBAAiB,CAAC;AACzC,OAAO,EAAE,MAAM,EAAE,MAAM,sBAAsB,CAAC;AAC9C,OAAO,EAAE,SAAS,EAAE,QAAQ,EAAE,MAAM,uBAAuB,CAAC;AAC5D,OAAO,EAAE,kBAAkB,EAAE,iBAAiB,EAAE,MAAM,oBAAoB,CAAC;AAC3E,OAAO,OAAO,MAAM,WAAW,CAAC;AAEhC;;GAEG;AACH,MAAM,CAAC,MAAM,eAAe,GAAG,CAAC,EAAE,YAAY,EAAE,EAAE,EAAgB,EAAE,EAAE;IACpE,MAAM,EAAE,SAAS,EAAE,SAAS,EAAE,aAAa,EAAE,GAAG,aAAa,EAAE,CAAC;IAChE,MAAM,EACJ,QAAQ,EACR,MAAM,EACN,UAAU,EAAE,EAAE,iBAAiB,EAAE,kBAAkB,EAAE,aAAa,EAAE,EACpE,MAAM,EAAE,EAAE,aAAa,EAAE,SAAS,EAAE,EACpC,MAAM,GACP,GAAG,YAAY,EAAE,CAAC;IAEnB,IAAI,CAAC,QAAQ,IAAI,CAAC,MAAM,EAAE,CAAC;QACzB,OAAO,CAAC,IAAI,CAAC,oDAAoD,CAAC,CAAC;QACnE,OAAO,IAAI,CAAC;IACd,CAAC;IAED,MAAM,gBAAgB,GAAgD,CAAC,CAAC,EAAE,EAAE;QAC1E,MAAM,QAAQ,GAAG,OAAO,CACtB,YAAY,CAAC,YAAY,CAAC,EAC1B,MAAM,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CACvB,CAAC;QACF,SAAS,CAAC,YAAY,CAAC,GAAG,CAAC,CAAC,GAAG,CAAC,CAAC,QAAQ,EAAE,QAAQ,CAAC,CAAC,EAAE,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC;IACpE,CAAC,CAAC;IAEF,MAAM,iBAAiB,GAAgD,CAAC,CAAC,EAAE,EAAE,CAC3E,SAAS,CAAC,QAAQ,CAAC,YAAY,CAAC,YAAY,CAAC,EAAE,MAAM,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;IAE1E,MAAM,KAAK,GAAG,QAAQ,CACpB,QAAQ,EACR,MAAM,EACN,YAAY,CAAC,WAAW,EAAE,CAC3B,CAAC,OAAO,EAAE,CAAC;IACZ,MAAM,MAAM,GAAG,SAAS,CAAC,QAAQ,EAAE,MAAM,EAAE,YAAY,CAAC,CAAC;IAEzD,MAAM,aAAa,GAAG,aAAa,CAAC,aAAa,EAAE,EAAE,MAAM,EAAE,CAAC,CAAC;IAC/D,MAAM,SAAS,GAAG,SAAS,CAAC,SAAS,EAAE,EAAE,MAAM,EAAE,CAAC,CAAC;IACnD,MAAM,iBAAiB,GAAG,iBAAiB,CAAC,MAAM,CAAC,CAAC;IACpD,MAAM,kBAAkB,GAAG,kBAAkB,CAAC,MAAM,CAAC,CAAC;IAEtD,OAAO,CACL;QACE,6BAAK,SAAS,EAAC,qBAAqB;YAClC,2CACY,QAAQ,iBACN,MAAM,EAClB,EAAE,EAAE,EAAE,EACN,SAAS,EAAC,eAAe,IAExB,aAAa,CAAC,YAAY,EAAE,EAAE,MAAM,EAAE,CAAC,CACnC;YACP,oBAAC,MAAM,IACL,OAAO,EAAC,UAAU,EAClB,QAAQ,EAAE,CAAC,aAAa,EACxB,OAAO,EAAE,GAAG,EAAE,CAAC,aAAa,IAAI,SAAS,CAAC,aAAa,CAAC,EACxD,IAAI,EAAE,oBAAC,aAAa,IAAC,KAAK,EAAE,aAAa,GAAI,EAC7C,SAAS,EAAC,4BAA4B,EACtC,IAAI,EAAC,QAAQ,GACb;YAEF,6BAAK,SAAS,EAAC,qBAAqB;gBAClC,oBAAC,MAAM,IACL,KAAK,EAAE,kBAAkB,EACzB,SAAS,QACT,SAAS,EAAC,4BAA4B,EACtC,KAAK,EAAE,YAAY,CAAC,QAAQ,EAAE,EAC9B,QAAQ,EAAE,iBAAiB,IAE1B,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CACjB,gCAAQ,GAAG,EAAE,CAAC,CAAC,QAAQ,EAAE,EAAE,KAAK,EAAE,CAAC,CAAC,QAAQ,EAAE,IAC3C,kBAAkB,CAAC,CAAC,EAAE,EAAE,MAAM,EAAE,CAAC,CAC3B,CACV,CAAC,CACK;gBACT,oBAAC,MAAM,IACL,KAAK,EAAE,iBAAiB,EACxB,SAAS,QACT,KAAK,EAAE,YAAY,CAAC,WAAW,EAAE,EACjC,QAAQ,EAAE,gBAAgB,EAC1B,SAAS,EAAC,2BAA2B,IAEpC,KAAK,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,CACnB,gCAAQ,GAAG,EAAE,IAAI,CAAC,WAAW,EAAE,EAAE,KAAK,EAAE,IAAI,CAAC,WAAW,EAAE,IACvD,iBAAiB,CAAC,IAAI,EAAE,EAAE,MAAM,EAAE,CAAC,CAC7B,CACV,CAAC,CACK,CACL;YAEN,oBAAC,MAAM,IACL,IAAI,EAAE,oBAAC,cAAc,IAAC,KAAK,EAAE,SAAS,GAAI,EAC1C,OAAO,EAAE,GAAG,EAAE,CAAC,SAAS,IAAI,SAAS,CAAC,SAAS,CAAC,EAChD,QAAQ,EAAE,CAAC,SAAS,EACpB,OAAO,EAAC,UAAU,EAClB,SAAS,EAAC,4BAA4B,EACtC,IAAI,EAAC,QAAQ,GACb,CACE;QACN,oBAAC,OAAO,IAAC,YAAY,EAAE,YAAY,GAAI,CACtC,CACJ,CAAC;AACJ,CAAC,CAAC;AAEF,eAAe,eAAe,CAAC"}
@@ -19,7 +19,7 @@ export const MonthCaption = () => {
19
19
  if (!years.map((x) => x.getFullYear()).includes(year.getFullYear())) {
20
20
  years.push(setYear(startOfYear(new Date()), year.getFullYear()));
21
21
  }
22
- years.sort((a, b) => a.getFullYear() - b.getFullYear());
22
+ years.sort((a, b) => b.getFullYear() - a.getFullYear());
23
23
  }
24
24
  const handleYearChange = (e) => toYear(setYear(startOfMonth(new Date()), Number(e.target.value)));
25
25
  const handleButtonClick = (val) => {